Built motion from commit 7e022ab.|2.0.17 2.0.17
authorGiuseppe Careri <giuseppe.careri@xcally.com>
Wed, 21 Jun 2017 17:12:11 +0000 (19:12 +0200)
committerGiuseppe Careri <giuseppe.careri@xcally.com>
Wed, 21 Jun 2017 17:12:11 +0000 (19:12 +0200)
801 files changed:
apidoc/api_project.js
apidoc/api_project.json
package.json
public/favicon.ico
public/index.html
public/scripts/app.9a438daf.js [new file with mode: 0644]
public/scripts/app.c298f8c5.js [deleted file]
public/styles/app.9810f40a.css [moved from public/styles/app.0ef87a6a.css with 98% similarity]
server/api/action/action.attributes.js
server/api/action/action.controller.js
server/api/action/action.model.js
server/api/action/action.rpc.js
server/api/action/index.js
server/api/analyticCustomReport/analyticCustomReport.attributes.js
server/api/analyticCustomReport/analyticCustomReport.controller.js
server/api/analyticCustomReport/analyticCustomReport.model.js
server/api/analyticCustomReport/analyticCustomReport.rpc.js
server/api/analyticCustomReport/index.js
server/api/analyticDefaultReport/analyticDefaultReport.attributes.js
server/api/analyticDefaultReport/analyticDefaultReport.controller.js
server/api/analyticDefaultReport/analyticDefaultReport.model.js
server/api/analyticDefaultReport/analyticDefaultReport.rpc.js
server/api/analyticDefaultReport/index.js
server/api/analyticExtractedReport/analyticExtractedReport.attributes.js
server/api/analyticExtractedReport/analyticExtractedReport.controller.js
server/api/analyticExtractedReport/analyticExtractedReport.model.js
server/api/analyticExtractedReport/analyticExtractedReport.rpc.js
server/api/analyticExtractedReport/index.js
server/api/analyticFieldReport/analyticFieldReport.attributes.js
server/api/analyticFieldReport/analyticFieldReport.controller.js
server/api/analyticFieldReport/analyticFieldReport.model.js
server/api/analyticFieldReport/analyticFieldReport.rpc.js
server/api/analyticFieldReport/index.js
server/api/analyticMetric/analyticMetric.attributes.js
server/api/analyticMetric/analyticMetric.controller.js
server/api/analyticMetric/analyticMetric.model.js
server/api/analyticMetric/analyticMetric.rpc.js
server/api/analyticMetric/index.js
server/api/analyticTreeReport/analyticTreeReport.attributes.js
server/api/analyticTreeReport/analyticTreeReport.controller.js
server/api/analyticTreeReport/analyticTreeReport.model.js
server/api/analyticTreeReport/analyticTreeReport.rpc.js
server/api/analyticTreeReport/index.js
server/api/authGoogle/authGoogle.controller.js
server/api/authGoogle/index.js
server/api/authLocal/authLocal.controller.js
server/api/authLocal/index.js
server/api/automation/automation.attributes.js
server/api/automation/automation.controller.js
server/api/automation/automation.model.js
server/api/automation/automation.rpc.js
server/api/automation/index.js
server/api/campaign/campaign.attributes.js
server/api/campaign/campaign.controller.js
server/api/campaign/campaign.model.js
server/api/campaign/campaign.rpc.js
server/api/campaign/index.js
server/api/cannedAnswer/cannedAnswer.attributes.js
server/api/cannedAnswer/cannedAnswer.controller.js
server/api/cannedAnswer/cannedAnswer.model.js
server/api/cannedAnswer/cannedAnswer.rpc.js
server/api/cannedAnswer/index.js
server/api/cdr/cdr.attributes.js
server/api/cdr/cdr.controller.js
server/api/cdr/cdr.model.js
server/api/cdr/cdr.rpc.js
server/api/cdr/index.js
server/api/chatApplication/chatApplication.attributes.js
server/api/chatApplication/chatApplication.controller.js
server/api/chatApplication/chatApplication.model.js
server/api/chatApplication/chatApplication.rpc.js
server/api/chatApplication/index.js
server/api/chatDisposition/chatDisposition.attributes.js
server/api/chatDisposition/chatDisposition.controller.js
server/api/chatDisposition/chatDisposition.model.js
server/api/chatDisposition/chatDisposition.rpc.js
server/api/chatDisposition/index.js
server/api/chatEnquiry/chatEnquiry.attributes.js
server/api/chatEnquiry/chatEnquiry.controller.js
server/api/chatEnquiry/chatEnquiry.model.js
server/api/chatEnquiry/chatEnquiry.rpc.js
server/api/chatEnquiry/index.js
server/api/chatInteraction/chatInteraction.attributes.js
server/api/chatInteraction/chatInteraction.controller.js
server/api/chatInteraction/chatInteraction.model.js
server/api/chatInteraction/chatInteraction.rpc.js
server/api/chatInteraction/index.js
server/api/chatMessage/chatMessage.attributes.js
server/api/chatMessage/chatMessage.controller.js
server/api/chatMessage/chatMessage.model.js
server/api/chatMessage/chatMessage.rpc.js
server/api/chatMessage/index.js
server/api/chatProactiveAction/chatProactiveAction.attributes.js
server/api/chatProactiveAction/chatProactiveAction.controller.js
server/api/chatProactiveAction/chatProactiveAction.model.js
server/api/chatProactiveAction/chatProactiveAction.rpc.js
server/api/chatProactiveAction/index.js
server/api/chatQueue/chatQueue.attributes.js
server/api/chatQueue/chatQueue.controller.js
server/api/chatQueue/chatQueue.model.js
server/api/chatQueue/chatQueue.rpc.js
server/api/chatQueue/index.js
server/api/chatReport/chatReport.attributes.js
server/api/chatReport/chatReport.controller.js
server/api/chatReport/chatReport.model.js
server/api/chatReport/chatReport.rpc.js
server/api/chatReport/index.js
server/api/chatSessionReport/chatSessionReport.attributes.js
server/api/chatSessionReport/chatSessionReport.controller.js
server/api/chatSessionReport/chatSessionReport.model.js
server/api/chatSessionReport/chatSessionReport.rpc.js
server/api/chatSessionReport/index.js
server/api/chatVisitor/chatVisitor.attributes.js
server/api/chatVisitor/chatVisitor.controller.js
server/api/chatVisitor/chatVisitor.model.js
server/api/chatVisitor/chatVisitor.rpc.js
server/api/chatVisitor/index.js
server/api/chatWebsite/chatWebsite.attributes.js
server/api/chatWebsite/chatWebsite.controller.js
server/api/chatWebsite/chatWebsite.model.js
server/api/chatWebsite/chatWebsite.rpc.js
server/api/chatWebsite/index.js
server/api/chatWebsiteField/chatWebsiteField.attributes.js
server/api/chatWebsiteField/chatWebsiteField.controller.js
server/api/chatWebsiteField/chatWebsiteField.model.js
server/api/chatWebsiteField/chatWebsiteField.rpc.js
server/api/chatWebsiteField/index.js
server/api/cmCompany/cmCompany.attributes.js
server/api/cmCompany/cmCompany.controller.js
server/api/cmCompany/cmCompany.model.js
server/api/cmCompany/cmCompany.rpc.js
server/api/cmCompany/index.js
server/api/cmContact/cmContact.attributes.js
server/api/cmContact/cmContact.controller.js
server/api/cmContact/cmContact.model.js
server/api/cmContact/cmContact.rpc.js
server/api/cmContact/index.js
server/api/cmCustomField/cmCustomField.attributes.js
server/api/cmCustomField/cmCustomField.controller.js
server/api/cmCustomField/cmCustomField.model.js
server/api/cmCustomField/cmCustomField.rpc.js
server/api/cmCustomField/index.js
server/api/cmHopper/cmHopper.attributes.js
server/api/cmHopper/cmHopper.controller.js
server/api/cmHopper/cmHopper.model.js
server/api/cmHopper/cmHopper.rpc.js
server/api/cmHopper/index.js
server/api/cmHopperBlack/cmHopperBlack.attributes.js
server/api/cmHopperBlack/cmHopperBlack.controller.js
server/api/cmHopperBlack/cmHopperBlack.model.js
server/api/cmHopperBlack/cmHopperBlack.rpc.js
server/api/cmHopperBlack/index.js
server/api/cmHopperFinal/cmHopperFinal.attributes.js
server/api/cmHopperFinal/cmHopperFinal.controller.js
server/api/cmHopperFinal/cmHopperFinal.model.js
server/api/cmHopperFinal/cmHopperFinal.rpc.js
server/api/cmHopperFinal/index.js
server/api/cmHopperHistory/cmHopperHistory.attributes.js
server/api/cmHopperHistory/cmHopperHistory.controller.js
server/api/cmHopperHistory/cmHopperHistory.model.js
server/api/cmHopperHistory/cmHopperHistory.rpc.js
server/api/cmHopperHistory/index.js
server/api/cmList/cmList.attributes.js
server/api/cmList/cmList.controller.js
server/api/cmList/cmList.model.js
server/api/cmList/cmList.rpc.js
server/api/cmList/index.js
server/api/condition/condition.attributes.js
server/api/condition/condition.controller.js
server/api/condition/condition.model.js
server/api/condition/condition.rpc.js
server/api/condition/index.js
server/api/dashboard/dashboard.attributes.js
server/api/dashboard/dashboard.controller.js
server/api/dashboard/dashboard.model.js
server/api/dashboard/dashboard.rpc.js
server/api/dashboard/index.js
server/api/dashboardItem/dashboardItem.attributes.js
server/api/dashboardItem/dashboardItem.controller.js
server/api/dashboardItem/dashboardItem.model.js
server/api/dashboardItem/dashboardItem.rpc.js
server/api/dashboardItem/index.js
server/api/faxAccount/faxAccount.attributes.js
server/api/faxAccount/faxAccount.controller.js
server/api/faxAccount/faxAccount.model.js
server/api/faxAccount/faxAccount.rpc.js
server/api/faxAccount/index.js
server/api/faxApplication/faxApplication.attributes.js
server/api/faxApplication/faxApplication.controller.js
server/api/faxApplication/faxApplication.model.js
server/api/faxApplication/faxApplication.rpc.js
server/api/faxApplication/index.js
server/api/faxAttachment/faxAttachment.attributes.js
server/api/faxAttachment/faxAttachment.controller.js
server/api/faxAttachment/faxAttachment.model.js
server/api/faxAttachment/faxAttachment.rpc.js
server/api/faxAttachment/index.js
server/api/faxDisposition/faxDisposition.attributes.js
server/api/faxDisposition/faxDisposition.controller.js
server/api/faxDisposition/faxDisposition.model.js
server/api/faxDisposition/faxDisposition.rpc.js
server/api/faxDisposition/index.js
server/api/faxInteraction/faxInteraction.attributes.js
server/api/faxInteraction/faxInteraction.controller.js
server/api/faxInteraction/faxInteraction.model.js
server/api/faxInteraction/faxInteraction.rpc.js
server/api/faxInteraction/index.js
server/api/faxMessage/faxMessage.attributes.js
server/api/faxMessage/faxMessage.controller.js
server/api/faxMessage/faxMessage.model.js
server/api/faxMessage/faxMessage.rpc.js
server/api/faxMessage/index.js
server/api/faxQueue/faxQueue.attributes.js
server/api/faxQueue/faxQueue.controller.js
server/api/faxQueue/faxQueue.model.js
server/api/faxQueue/faxQueue.rpc.js
server/api/faxQueue/index.js
server/api/faxReport/faxReport.attributes.js
server/api/faxReport/faxReport.controller.js
server/api/faxReport/faxReport.model.js
server/api/faxReport/faxReport.rpc.js
server/api/faxReport/index.js
server/api/faxSessionReport/faxSessionReport.attributes.js
server/api/faxSessionReport/faxSessionReport.controller.js
server/api/faxSessionReport/faxSessionReport.model.js
server/api/faxSessionReport/faxSessionReport.rpc.js
server/api/faxSessionReport/index.js
server/api/intFreshdeskAccount/index.js
server/api/intFreshdeskAccount/intFreshdeskAccount.attributes.js
server/api/intFreshdeskAccount/intFreshdeskAccount.controller.js
server/api/intFreshdeskAccount/intFreshdeskAccount.model.js
server/api/intFreshdeskAccount/intFreshdeskAccount.rpc.js
server/api/intFreshdeskConfiguration/index.js
server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.attributes.js
server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.controller.js
server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.model.js
server/api/intFreshdeskConfiguration/intFreshdeskConfiguration.rpc.js
server/api/intFreshdeskField/index.js
server/api/intFreshdeskField/intFreshdeskField.attributes.js
server/api/intFreshdeskField/intFreshdeskField.controller.js
server/api/intFreshdeskField/intFreshdeskField.model.js
server/api/intFreshdeskField/intFreshdeskField.rpc.js
server/api/intSalesforceAccount/index.js
server/api/intSalesforceAccount/intSalesforceAccount.attributes.js
server/api/intSalesforceAccount/intSalesforceAccount.controller.js
server/api/intSalesforceAccount/intSalesforceAccount.model.js
server/api/intSalesforceAccount/intSalesforceAccount.rpc.js
server/api/intSalesforceConfiguration/index.js
server/api/intSalesforceConfiguration/intSalesforceConfiguration.attributes.js
server/api/intSalesforceConfiguration/intSalesforceConfiguration.controller.js
server/api/intSalesforceConfiguration/intSalesforceConfiguration.model.js
server/api/intSalesforceConfiguration/intSalesforceConfiguration.rpc.js
server/api/intSalesforceField/index.js
server/api/intSalesforceField/intSalesforceField.attributes.js
server/api/intSalesforceField/intSalesforceField.controller.js
server/api/intSalesforceField/intSalesforceField.model.js
server/api/intSalesforceField/intSalesforceField.rpc.js
server/api/intSugarcrmAccount/index.js
server/api/intSugarcrmAccount/intSugarcrmAccount.attributes.js
server/api/intSugarcrmAccount/intSugarcrmAccount.controller.js
server/api/intSugarcrmAccount/intSugarcrmAccount.model.js
server/api/intSugarcrmAccount/intSugarcrmAccount.rpc.js
server/api/intSugarcrmConfiguration/index.js
server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.attributes.js
server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.controller.js
server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.model.js
server/api/intSugarcrmConfiguration/intSugarcrmConfiguration.rpc.js
server/api/intSugarcrmField/index.js
server/api/intSugarcrmField/intSugarcrmField.attributes.js
server/api/intSugarcrmField/intSugarcrmField.controller.js
server/api/intSugarcrmField/intSugarcrmField.model.js
server/api/intSugarcrmField/intSugarcrmField.rpc.js
server/api/intZendeskAccount/index.js
server/api/intZendeskAccount/intZendeskAccount.attributes.js
server/api/intZendeskAccount/intZendeskAccount.controller.js
server/api/intZendeskAccount/intZendeskAccount.model.js
server/api/intZendeskAccount/intZendeskAccount.rpc.js
server/api/intZendeskConfiguration/index.js
server/api/intZendeskConfiguration/intZendeskConfiguration.attributes.js
server/api/intZendeskConfiguration/intZendeskConfiguration.controller.js
server/api/intZendeskConfiguration/intZendeskConfiguration.model.js
server/api/intZendeskConfiguration/intZendeskConfiguration.rpc.js
server/api/intZendeskField/index.js
server/api/intZendeskField/intZendeskField.attributes.js
server/api/intZendeskField/intZendeskField.controller.js
server/api/intZendeskField/intZendeskField.model.js
server/api/intZendeskField/intZendeskField.rpc.js
server/api/integration/index.js
server/api/integration/integration.attributes.js
server/api/integration/integration.controller.js
server/api/integration/integration.model.js
server/api/integration/integration.rpc.js
server/api/integrationReport/index.js
server/api/integrationReport/integrationReport.attributes.js
server/api/integrationReport/integrationReport.controller.js
server/api/integrationReport/integrationReport.model.js
server/api/integrationReport/integrationReport.rpc.js
server/api/interval/index.js
server/api/interval/interval.attributes.js
server/api/interval/interval.controller.js
server/api/interval/interval.model.js
server/api/interval/interval.rpc.js
server/api/jira/index.js
server/api/jira/jira.controller.js
server/api/jscriptyInputReport/index.js
server/api/jscriptyInputReport/jscriptyInputReport.attributes.js
server/api/jscriptyInputReport/jscriptyInputReport.controller.js
server/api/jscriptyInputReport/jscriptyInputReport.model.js
server/api/jscriptyInputReport/jscriptyInputReport.rpc.js
server/api/jscriptyProject/index.js
server/api/jscriptyProject/jscriptyProject.attributes.js
server/api/jscriptyProject/jscriptyProject.controller.js
server/api/jscriptyProject/jscriptyProject.model.js
server/api/jscriptyProject/jscriptyProject.rpc.js
server/api/jscriptyQuestionReport/index.js
server/api/jscriptyQuestionReport/jscriptyQuestionReport.attributes.js
server/api/jscriptyQuestionReport/jscriptyQuestionReport.controller.js
server/api/jscriptyQuestionReport/jscriptyQuestionReport.model.js
server/api/jscriptyQuestionReport/jscriptyQuestionReport.rpc.js
server/api/jscriptySessionReport/index.js
server/api/jscriptySessionReport/jscriptySessionReport.attributes.js
server/api/jscriptySessionReport/jscriptySessionReport.controller.js
server/api/jscriptySessionReport/jscriptySessionReport.model.js
server/api/jscriptySessionReport/jscriptySessionReport.rpc.js
server/api/license/index.js
server/api/license/license.attributes.js
server/api/license/license.controller.js
server/api/license/license.model.js
server/api/license/license.rpc.js
server/api/mailAccount/index.js
server/api/mailAccount/mailAccount.attributes.js
server/api/mailAccount/mailAccount.controller.js
server/api/mailAccount/mailAccount.model.js
server/api/mailAccount/mailAccount.rpc.js
server/api/mailApplication/index.js
server/api/mailApplication/mailApplication.attributes.js
server/api/mailApplication/mailApplication.controller.js
server/api/mailApplication/mailApplication.model.js
server/api/mailApplication/mailApplication.rpc.js
server/api/mailAttachment/index.js
server/api/mailAttachment/mailAttachment.attributes.js
server/api/mailAttachment/mailAttachment.controller.js
server/api/mailAttachment/mailAttachment.model.js
server/api/mailAttachment/mailAttachment.rpc.js
server/api/mailDisposition/index.js
server/api/mailDisposition/mailDisposition.attributes.js
server/api/mailDisposition/mailDisposition.controller.js
server/api/mailDisposition/mailDisposition.model.js
server/api/mailDisposition/mailDisposition.rpc.js
server/api/mailInteraction/index.js
server/api/mailInteraction/mailInteraction.attributes.js
server/api/mailInteraction/mailInteraction.controller.js
server/api/mailInteraction/mailInteraction.model.js
server/api/mailInteraction/mailInteraction.rpc.js
server/api/mailMessage/index.js
server/api/mailMessage/mailMessage.attributes.js
server/api/mailMessage/mailMessage.controller.js
server/api/mailMessage/mailMessage.model.js
server/api/mailMessage/mailMessage.rpc.js
server/api/mailQueue/index.js
server/api/mailQueue/mailQueue.attributes.js
server/api/mailQueue/mailQueue.controller.js
server/api/mailQueue/mailQueue.model.js
server/api/mailQueue/mailQueue.rpc.js
server/api/mailReport/index.js
server/api/mailReport/mailReport.attributes.js
server/api/mailReport/mailReport.controller.js
server/api/mailReport/mailReport.model.js
server/api/mailReport/mailReport.rpc.js
server/api/mailServerIn/index.js
server/api/mailServerIn/mailServerIn.attributes.js
server/api/mailServerIn/mailServerIn.model.js
server/api/mailServerIn/mailServerIn.rpc.js
server/api/mailServerOut/index.js
server/api/mailServerOut/mailServerOut.attributes.js
server/api/mailServerOut/mailServerOut.controller.js
server/api/mailServerOut/mailServerOut.model.js
server/api/mailServerOut/mailServerOut.rpc.js
server/api/mailSessionReport/index.js
server/api/mailSessionReport/mailSessionReport.attributes.js
server/api/mailSessionReport/mailSessionReport.controller.js
server/api/mailSessionReport/mailSessionReport.model.js
server/api/mailSessionReport/mailSessionReport.rpc.js
server/api/memberReport/index.js
server/api/memberReport/memberReport.attributes.js
server/api/memberReport/memberReport.controller.js
server/api/memberReport/memberReport.model.js
server/api/memberReport/memberReport.rpc.js
server/api/network/index.js
server/api/network/network.attributes.js
server/api/network/network.controller.js
server/api/network/network.model.js
server/api/network/network.rpc.js
server/api/openchannelAccount/index.js
server/api/openchannelAccount/openchannelAccount.attributes.js
server/api/openchannelAccount/openchannelAccount.controller.js
server/api/openchannelAccount/openchannelAccount.model.js
server/api/openchannelAccount/openchannelAccount.rpc.js
server/api/openchannelApplication/index.js
server/api/openchannelApplication/openchannelApplication.attributes.js
server/api/openchannelApplication/openchannelApplication.controller.js
server/api/openchannelApplication/openchannelApplication.model.js
server/api/openchannelApplication/openchannelApplication.rpc.js
server/api/openchannelDisposition/index.js
server/api/openchannelDisposition/openchannelDisposition.attributes.js
server/api/openchannelDisposition/openchannelDisposition.controller.js
server/api/openchannelDisposition/openchannelDisposition.model.js
server/api/openchannelDisposition/openchannelDisposition.rpc.js
server/api/openchannelInteraction/index.js
server/api/openchannelInteraction/openchannelInteraction.attributes.js
server/api/openchannelInteraction/openchannelInteraction.controller.js
server/api/openchannelInteraction/openchannelInteraction.model.js
server/api/openchannelInteraction/openchannelInteraction.rpc.js
server/api/openchannelMessage/index.js
server/api/openchannelMessage/openchannelMessage.attributes.js
server/api/openchannelMessage/openchannelMessage.controller.js
server/api/openchannelMessage/openchannelMessage.model.js
server/api/openchannelMessage/openchannelMessage.rpc.js
server/api/openchannelQueue/index.js
server/api/openchannelQueue/openchannelQueue.attributes.js
server/api/openchannelQueue/openchannelQueue.controller.js
server/api/openchannelQueue/openchannelQueue.model.js
server/api/openchannelQueue/openchannelQueue.rpc.js
server/api/openchannelReport/index.js
server/api/openchannelReport/openchannelReport.attributes.js
server/api/openchannelReport/openchannelReport.controller.js
server/api/openchannelReport/openchannelReport.model.js
server/api/openchannelReport/openchannelReport.rpc.js
server/api/openchannelSessionReport/index.js
server/api/openchannelSessionReport/openchannelSessionReport.attributes.js
server/api/openchannelSessionReport/openchannelSessionReport.controller.js
server/api/openchannelSessionReport/openchannelSessionReport.model.js
server/api/openchannelSessionReport/openchannelSessionReport.rpc.js
server/api/pause/index.js
server/api/pause/pause.attributes.js
server/api/pause/pause.controller.js
server/api/pause/pause.model.js
server/api/pause/pause.rpc.js
server/api/pm2/index.js
server/api/pm2/pm2.controller.js
server/api/rpc/index.js
server/api/rpc/rpc.controller.js
server/api/schedule/index.js
server/api/schedule/schedule.attributes.js
server/api/schedule/schedule.controller.js
server/api/schedule/schedule.model.js
server/api/schedule/schedule.rpc.js
server/api/setting/index.js
server/api/setting/setting.attributes.js
server/api/setting/setting.controller.js
server/api/setting/setting.model.js
server/api/setting/setting.rpc.js
server/api/smsAccount/index.js
server/api/smsAccount/smsAccount.attributes.js
server/api/smsAccount/smsAccount.controller.js
server/api/smsAccount/smsAccount.model.js
server/api/smsAccount/smsAccount.rpc.js
server/api/smsApplication/index.js
server/api/smsApplication/smsApplication.attributes.js
server/api/smsApplication/smsApplication.controller.js
server/api/smsApplication/smsApplication.model.js
server/api/smsApplication/smsApplication.rpc.js
server/api/smsDisposition/index.js
server/api/smsDisposition/smsDisposition.attributes.js
server/api/smsDisposition/smsDisposition.controller.js
server/api/smsDisposition/smsDisposition.model.js
server/api/smsDisposition/smsDisposition.rpc.js
server/api/smsInteraction/index.js
server/api/smsInteraction/smsInteraction.attributes.js
server/api/smsInteraction/smsInteraction.controller.js
server/api/smsInteraction/smsInteraction.model.js
server/api/smsInteraction/smsInteraction.rpc.js
server/api/smsMessage/index.js
server/api/smsMessage/smsMessage.attributes.js
server/api/smsMessage/smsMessage.controller.js
server/api/smsMessage/smsMessage.model.js
server/api/smsMessage/smsMessage.rpc.js
server/api/smsQueue/index.js
server/api/smsQueue/smsQueue.attributes.js
server/api/smsQueue/smsQueue.controller.js
server/api/smsQueue/smsQueue.model.js
server/api/smsQueue/smsQueue.rpc.js
server/api/smsReport/index.js
server/api/smsReport/smsReport.attributes.js
server/api/smsReport/smsReport.controller.js
server/api/smsReport/smsReport.model.js
server/api/smsReport/smsReport.rpc.js
server/api/smsSessionReport/index.js
server/api/smsSessionReport/smsSessionReport.attributes.js
server/api/smsSessionReport/smsSessionReport.controller.js
server/api/smsSessionReport/smsSessionReport.model.js
server/api/smsSessionReport/smsSessionReport.rpc.js
server/api/sound/index.js
server/api/sound/sound.attributes.js
server/api/sound/sound.controller.js
server/api/sound/sound.model.js
server/api/sound/sound.rpc.js
server/api/squareOdbc/index.js
server/api/squareOdbc/squareOdbc.attributes.js
server/api/squareOdbc/squareOdbc.controller.js
server/api/squareOdbc/squareOdbc.model.js
server/api/squareOdbc/squareOdbc.rpc.js
server/api/squareProject/index.js
server/api/squareProject/squareProject.attributes.js
server/api/squareProject/squareProject.controller.js
server/api/squareProject/squareProject.model.js
server/api/squareProject/squareProject.rpc.js
server/api/squareRecording/index.js
server/api/squareRecording/squareRecording.attributes.js
server/api/squareRecording/squareRecording.controller.js
server/api/squareRecording/squareRecording.model.js
server/api/squareRecording/squareRecording.rpc.js
server/api/squareReport/index.js
server/api/squareReport/squareReport.attributes.js
server/api/squareReport/squareReport.controller.js
server/api/squareReport/squareReport.model.js
server/api/squareReport/squareReport.rpc.js
server/api/squareReportDetail/index.js
server/api/squareReportDetail/squareReportDetail.attributes.js
server/api/squareReportDetail/squareReportDetail.controller.js
server/api/squareReportDetail/squareReportDetail.model.js
server/api/squareReportDetail/squareReportDetail.rpc.js
server/api/system/index.js
server/api/system/system.controller.js
server/api/tag/index.js
server/api/tag/tag.attributes.js
server/api/tag/tag.controller.js
server/api/tag/tag.model.js
server/api/tag/tag.rpc.js
server/api/team/index.js
server/api/team/team.attributes.js
server/api/team/team.controller.js
server/api/team/team.model.js
server/api/team/team.rpc.js
server/api/template/index.js
server/api/template/template.attributes.js
server/api/template/template.controller.js
server/api/template/template.model.js
server/api/template/template.rpc.js
server/api/trigger/index.js
server/api/trigger/trigger.attributes.js
server/api/trigger/trigger.controller.js
server/api/trigger/trigger.model.js
server/api/trigger/trigger.rpc.js
server/api/trunk/index.js
server/api/trunk/trunk.attributes.js
server/api/trunk/trunk.controller.js
server/api/trunk/trunk.model.js
server/api/trunk/trunk.rpc.js
server/api/user/index.js
server/api/user/user.attributes.js
server/api/user/user.controller.js
server/api/user/user.events.js
server/api/user/user.model.js
server/api/user/user.rpc.js
server/api/user/user.socket.js
server/api/userChatQueue/index.js
server/api/userChatQueue/userChatQueue.attributes.js
server/api/userChatQueue/userChatQueue.model.js
server/api/userChatQueue/userChatQueue.rpc.js
server/api/userFaxQueue/index.js
server/api/userFaxQueue/userFaxQueue.attributes.js
server/api/userFaxQueue/userFaxQueue.model.js
server/api/userFaxQueue/userFaxQueue.rpc.js
server/api/userMailQueue/index.js
server/api/userMailQueue/userMailQueue.attributes.js
server/api/userMailQueue/userMailQueue.model.js
server/api/userMailQueue/userMailQueue.rpc.js
server/api/userOpenchannelQueue/index.js
server/api/userOpenchannelQueue/userOpenchannelQueue.attributes.js
server/api/userOpenchannelQueue/userOpenchannelQueue.model.js
server/api/userOpenchannelQueue/userOpenchannelQueue.rpc.js
server/api/userSmsQueue/index.js
server/api/userSmsQueue/userSmsQueue.attributes.js
server/api/userSmsQueue/userSmsQueue.model.js
server/api/userSmsQueue/userSmsQueue.rpc.js
server/api/userVoiceQueue/index.js
server/api/userVoiceQueue/userVoiceQueue.attributes.js
server/api/userVoiceQueue/userVoiceQueue.model.js
server/api/userVoiceQueue/userVoiceQueue.rpc.js
server/api/userVoiceQueueRt/index.js
server/api/userVoiceQueueRt/userVoiceQueueRt.attributes.js
server/api/userVoiceQueueRt/userVoiceQueueRt.events.js
server/api/userVoiceQueueRt/userVoiceQueueRt.model.js
server/api/userVoiceQueueRt/userVoiceQueueRt.rpc.js
server/api/userVoiceQueueRt/userVoiceQueueRt.socket.js
server/api/variable/index.js
server/api/variable/variable.attributes.js
server/api/variable/variable.controller.js
server/api/variable/variable.model.js
server/api/variable/variable.rpc.js
server/api/version/index.js
server/api/version/version.controller.js
server/api/voiceAgentReport/index.js
server/api/voiceAgentReport/voiceAgentReport.attributes.js
server/api/voiceAgentReport/voiceAgentReport.controller.js
server/api/voiceAgentReport/voiceAgentReport.model.js
server/api/voiceAgentReport/voiceAgentReport.rpc.js
server/api/voiceCallReport/index.js
server/api/voiceCallReport/voiceCallReport.attributes.js
server/api/voiceCallReport/voiceCallReport.controller.js
server/api/voiceCallReport/voiceCallReport.model.js
server/api/voiceCallReport/voiceCallReport.rpc.js
server/api/voiceChanSpy/index.js
server/api/voiceChanSpy/voiceChanSpy.attributes.js
server/api/voiceChanSpy/voiceChanSpy.controller.js
server/api/voiceChanSpy/voiceChanSpy.model.js
server/api/voiceChanSpy/voiceChanSpy.rpc.js
server/api/voiceContext/index.js
server/api/voiceContext/voiceContext.attributes.js
server/api/voiceContext/voiceContext.controller.js
server/api/voiceContext/voiceContext.model.js
server/api/voiceContext/voiceContext.rpc.js
server/api/voiceDialReport/index.js
server/api/voiceDialReport/voiceDialReport.attributes.js
server/api/voiceDialReport/voiceDialReport.controller.js
server/api/voiceDialReport/voiceDialReport.model.js
server/api/voiceDialReport/voiceDialReport.rpc.js
server/api/voiceDisposition/index.js
server/api/voiceDisposition/voiceDisposition.attributes.js
server/api/voiceDisposition/voiceDisposition.controller.js
server/api/voiceDisposition/voiceDisposition.model.js
server/api/voiceDisposition/voiceDisposition.rpc.js
server/api/voiceExtension/index.js
server/api/voiceExtension/voiceExtension.attributes.js
server/api/voiceExtension/voiceExtension.controller.js
server/api/voiceExtension/voiceExtension.model.js
server/api/voiceExtension/voiceExtension.rpc.js
server/api/voiceMail/index.js
server/api/voiceMail/voiceMail.attributes.js
server/api/voiceMail/voiceMail.controller.js
server/api/voiceMail/voiceMail.model.js
server/api/voiceMail/voiceMail.rpc.js
server/api/voiceMailMessage/index.js
server/api/voiceMailMessage/voiceMailMessage.attributes.js
server/api/voiceMailMessage/voiceMailMessage.controller.js
server/api/voiceMailMessage/voiceMailMessage.model.js
server/api/voiceMailMessage/voiceMailMessage.rpc.js
server/api/voiceMusicOnHold/index.js
server/api/voiceMusicOnHold/voiceMusicOnHold.attributes.js
server/api/voiceMusicOnHold/voiceMusicOnHold.controller.js
server/api/voiceMusicOnHold/voiceMusicOnHold.model.js
server/api/voiceMusicOnHold/voiceMusicOnHold.rpc.js
server/api/voiceQueue/index.js
server/api/voiceQueue/voiceQueue.attributes.js
server/api/voiceQueue/voiceQueue.controller.js
server/api/voiceQueue/voiceQueue.model.js
server/api/voiceQueue/voiceQueue.rpc.js
server/api/voiceQueueReport/index.js
server/api/voiceQueueReport/voiceQueueReport.attributes.js
server/api/voiceQueueReport/voiceQueueReport.controller.js
server/api/voiceQueueReport/voiceQueueReport.model.js
server/api/voiceQueueReport/voiceQueueReport.rpc.js
server/api/voiceQueuesLog/index.js
server/api/voiceQueuesLog/voiceQueuesLog.attributes.js
server/api/voiceQueuesLog/voiceQueuesLog.controller.js
server/api/voiceQueuesLog/voiceQueuesLog.model.js
server/api/voiceQueuesLog/voiceQueuesLog.rpc.js
server/api/voiceRecording/index.js
server/api/voiceRecording/voiceRecording.attributes.js
server/api/voiceRecording/voiceRecording.controller.js
server/api/voiceRecording/voiceRecording.model.js
server/api/voiceRecording/voiceRecording.rpc.js
server/api/voiceTransferReport/index.js
server/api/voiceTransferReport/voiceTransferReport.attributes.js
server/api/voiceTransferReport/voiceTransferReport.controller.js
server/api/voiceTransferReport/voiceTransferReport.model.js
server/api/voiceTransferReport/voiceTransferReport.rpc.js
server/app.js
server/components/auth/service.js
server/components/dashboards/run.js
server/components/export/csv.js
server/components/export/pdf.js
server/components/export/xls.js
server/components/extensions/rewrite.js
server/components/integrations/configuration.js
server/components/license/service.js
server/components/parsers/qs.js
server/config/environment/development.js
server/config/environment/index.js
server/config/environment/shared.js
server/config/express.js
server/config/license/hardware.js
server/config/license/index.js
server/config/license/util.js
server/config/local.env.js
server/config/logger.js
server/config/pm2/config.js
server/config/pm2/index.js
server/config/seed.js
server/config/seedContact.js
server/config/seedDB/analyticReports.js
server/config/seedDB/analyticTreeReports.js
server/config/seedDB/chanspy.js
server/config/seedDB/companies.js
server/config/seedDB/contacts.js
server/config/seedDB/index.js
server/config/seedDB/intervals.js
server/config/seedDB/lists.js
server/config/seedDB/mailAccounts.js
server/config/seedDB/pauses.js
server/config/seedDB/report/default.js
server/config/seedDB/report/fields.js
server/config/seedDB/report/index.js
server/config/seedDB/squareOdbc.js
server/config/seedDB/squareProjects.js
server/config/seedDB/tags.js
server/config/seedDB/teams.js
server/config/seedDB/tree/index.js
server/config/seedDB/trunks.js
server/config/seedDB/users.js
server/config/seedDB/variables.js
server/config/seedDB/voiceContexts.js
server/config/seedDB/voiceExtensions.js
server/config/seedDB/voiceMusicOnHold.js
server/config/seedDB/voiceQueues.js
server/config/seedUsers.js
server/config/socketio.js
server/config/utils.js
server/errors/index.js
server/migrations/2.0.12.js
server/migrations/2.0.13.js
server/mysqldb/index.js
server/routes.js
server/rpc/index.js
server/services/agi/channel.js
server/services/agi/error.js
server/services/agi/graph/index.js
server/services/agi/index.js
server/services/agi/reply.js
server/services/agi/rpc/index.js
server/services/agi/scripts/index.js
server/services/agi/server.js
server/services/agi/vertices.js
server/services/ami/acw/index.js
server/services/ami/ami.js
server/services/ami/client.js
server/services/ami/dialer/action.js
server/services/ami/dialer/agentComplete.js
server/services/ami/dialer/final.js
server/services/ami/dialer/hangup.js
server/services/ami/dialer/history.js
server/services/ami/dialer/index.js
server/services/ami/dialer/queueCallerAbandon.js
server/services/ami/index.js
server/services/ami/model/agent.js
server/services/ami/model/campaign.js
server/services/ami/model/channel.js
server/services/ami/model/freshdeskAccount.js
server/services/ami/model/queueReport.js
server/services/ami/model/salesforceAccount.js
server/services/ami/model/sugarcrmAccount.js
server/services/ami/model/telephone.js
server/services/ami/model/template.js
server/services/ami/model/trunk.js
server/services/ami/model/voiceQueue.js
server/services/ami/model/voiceTrigger.js
server/services/ami/model/zendeskAccount.js
server/services/ami/properties.js
server/services/ami/realtime/index.js
server/services/ami/report/index.js
server/services/ami/report/userReport.js
server/services/ami/report/voiceAgentReport.js
server/services/ami/report/voiceCallReport.js
server/services/ami/report/voiceDialReport.js
server/services/ami/report/voiceQueueReport.js
server/services/ami/rpc/campaign.js
server/services/ami/rpc/cmHopper.js
server/services/ami/rpc/cmHopperBlack.js
server/services/ami/rpc/cmHopperFinal.js
server/services/ami/rpc/cmHopperHistory.js
server/services/ami/rpc/integrations/freshdesk.js
server/services/ami/rpc/integrations/salesforce.js
server/services/ami/rpc/integrations/sugarcrm.js
server/services/ami/rpc/integrations/zendesk.js
server/services/ami/rpc/memberReport.js
server/services/ami/rpc/template.js
server/services/ami/rpc/trigger.js
server/services/ami/rpc/trunk.js
server/services/ami/rpc/user.js
server/services/ami/rpc/voiceAgentReport.js
server/services/ami/rpc/voiceCallReport.js
server/services/ami/rpc/voiceDialReport.js
server/services/ami/rpc/voiceQueue.js
server/services/ami/rpc/voiceQueueReport.js
server/services/ami/rpc/voiceQueueRt.js
server/services/ami/rpc/voiceRecording.js
server/services/ami/rpc/voiceTransferReport.js
server/services/ami/server/index.js
server/services/ami/trigger/index.js
server/services/ami/trigger/integration/freshdesk.js
server/services/ami/trigger/integration/index.js
server/services/ami/trigger/integration/salesforce.js
server/services/ami/trigger/integration/sugarcrm.js
server/services/ami/trigger/integration/zendesk.js
server/services/ami/trigger/urlforward/index.js
server/services/email/index.js
server/services/email/lib/email.js
server/services/email/lib/imap.js
server/services/email/lib/smtp.js
server/services/express/index.js

index 9dc8e33..8ba40f0 100644 (file)
@@ -1 +1 @@
-define({\r  "name": "motion",\r  "version": "2.0.16",\r  "description": "xCALLY Motion is the new Realtime asynchronous solution for your multichannel contact center over Asterisk.",\r  "sampleUrl": false,\r  "defaultVersion": "0.0.0",\r  "apidoc": "0.3.0",\r  "generator": {\r    "name": "apidoc",\r    "time": "2017-06-21T12:16:13.601Z",\r    "url": "http://apidocjs.com",\r    "version": "0.17.6"\r  }\r});
+define({\r  "name": "motion",\r  "version": "2.0.17",\r  "description": "xCALLY Motion is the new Realtime asynchronous solution for your multichannel contact center over Asterisk.",\r  "sampleUrl": false,\r  "defaultVersion": "0.0.0",\r  "apidoc": "0.3.0",\r  "generator": {\r    "name": "apidoc",\r    "time": "2017-06-21T17:08:39.921Z",\r    "url": "http://apidocjs.com",\r    "version": "0.17.6"\r  }\r});
index b6f2dca..dca92df 100644 (file)
@@ -1 +1 @@
-{\r  "name": "motion",\r  "version": "2.0.16",\r  "description": "xCALLY Motion is the new Realtime asynchronous solution for your multichannel contact center over Asterisk.",\r  "sampleUrl": false,\r  "defaultVersion": "0.0.0",\r  "apidoc": "0.3.0",\r  "generator": {\r    "name": "apidoc",\r    "time": "2017-06-21T12:16:13.601Z",\r    "url": "http://apidocjs.com",\r    "version": "0.17.6"\r  }\r}
+{\r  "name": "motion",\r  "version": "2.0.17",\r  "description": "xCALLY Motion is the new Realtime asynchronous solution for your multichannel contact center over Asterisk.",\r  "sampleUrl": false,\r  "defaultVersion": "0.0.0",\r  "apidoc": "0.3.0",\r  "generator": {\r    "name": "apidoc",\r    "time": "2017-06-21T17:08:39.921Z",\r    "url": "http://apidocjs.com",\r    "version": "0.17.6"\r  }\r}
index 11f2072..e2da6f8 100644 (file)
@@ -1,6 +1,6 @@
 {
     "name": "motion",
-    "version": "2.0.16",
+    "version": "2.0.17",
     "description": "xCALLY Motion is the new Realtime asynchronous solution for your multichannel contact center over Asterisk.",
     "main": "server/app.js",
     "engines": {
index aebc0dd..43a12a5 100644 (file)
Binary files a/public/favicon.ico and b/public/favicon.ico differ
index b7295af..dbd73e4 100644 (file)
@@ -12,7 +12,7 @@
 
     <link rel="stylesheet" href="styles/vendor.c40c244d.css">
 
-    <link rel="stylesheet" href="styles/app.0ef87a6a.css">
+    <link rel="stylesheet" href="styles/app.9810f40a.css">
 
     <!-- <link href='//fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700italic,700,900,900italic'
               rel='stylesheet' type='text/css'> -->
@@ -58,7 +58,7 @@
 
     <script src="scripts/vendor.a9c32806.js"></script>
 
-    <script src="scripts/app.c298f8c5.js"></script>
+    <script src="scripts/app.9a438daf.js"></script>
 
     <!-- Socket.io -->
     <script type="text/javascript" src="/socket.io/socket.io.js"></script>
diff --git a/public/scripts/app.9a438daf.js b/public/scripts/app.9a438daf.js
new file mode 100644 (file)
index 0000000..b3caab3
--- /dev/null
@@ -0,0 +1 @@
+function mxDictionary(){this.clear()}function mxPoint(e,t){this.x=null!=e?e:0,this.y=null!=t?t:0}function mxRectangle(e,t,n,a){mxPoint.call(this,e,t),this.width=null!=n?n:0,this.height=null!=a?a:0}function mxEventObject(e){this.name=e,this.properties=[];for(var t=1;t<arguments.length;t+=2)null!=arguments[t+1]&&(this.properties[arguments[t]]=arguments[t+1])}function mxMouseEvent(e,t){this.evt=e,this.state=t}function mxEventSource(e){this.setEventSource(e)}function mxXmlRequest(e,t,n,a,i,o){this.url=e,this.params=t,this.method=n||"POST",this.async=null==a||a,this.username=i,this.password=o}function mxWindow(e,t,n,a,i,o,s,r,l,d){null!=t&&(s=null==s||s,this.content=t,this.init(n,a,i,o,d),this.installMaximizeHandler(),this.installMinimizeHandler(),this.installCloseHandler(),this.setMinimizable(s),this.setTitle(e),(null==r||r)&&this.installMoveHandler(),null!=l&&null!=l.parentNode?l.parentNode.replaceChild(this.div,l):document.body.appendChild(this.div))}function mxForm(e){this.table=document.createElement("table"),this.table.className=e,this.body=document.createElement("tbody"),this.table.appendChild(this.body)}function mxImage(e,t,n){this.src=e,this.width=t,this.height=n}function mxDivResizer(e,t){if("div"==e.nodeName.toLowerCase()){null==t&&(t=window),this.div=e;var n=mxUtils.getCurrentStyle(e);null!=n&&(this.resizeWidth="auto"==n.width,this.resizeHeight="auto"==n.height),mxEvent.addListener(t,"resize",mxUtils.bind(this,function(e){this.handlingResize||(this.handlingResize=!0,this.resize(),this.handlingResize=!1)})),this.resize()}}function mxDragSource(e,t){this.element=e,this.dropHandler=t,mxEvent.addGestureListeners(e,mxUtils.bind(this,this.mouseDown))}function mxToolbar(e){this.container=e}function mxSession(e,t,n,a){this.model=e,this.urlInit=t,this.urlPoll=n,this.urlNotify=a,null!=e&&(this.codec=new mxCodec,this.codec.lookup=function(t){return e.getCell(t)}),e.addListener(mxEvent.NOTIFY,mxUtils.bind(this,function(e,t){var n=t.getProperty("edit");(null!=n&&this.debug||this.connected&&!this.suspended)&&this.notify("<edit>"+this.encodeChanges(n.changes,n.undone)+"</edit>")}))}function mxUndoableEdit(e,t){this.source=e,this.changes=[],this.significant=null==t||t}function mxUndoManager(e){this.size=null!=e?e:100,this.clear()}function mxPanningManager(e){this.thread=null,this.active=!1,this.dy=this.dx=this.t0y=this.t0x=this.tdy=this.tdx=0,this.scrollbars=!1,this.scrollTop=this.scrollLeft=0,this.mouseListener={mouseDown:function(e,t){},mouseMove:function(e,t){},mouseUp:mxUtils.bind(this,function(e,t){this.active&&this.stop()})},e.addMouseListener(this.mouseListener),mxEvent.addListener(document,"mouseup",mxUtils.bind(this,function(){this.active&&this.stop()}));var t=mxUtils.bind(this,function(){return this.scrollbars=mxUtils.hasScrollbars(e.container),this.scrollLeft=e.container.scrollLeft,this.scrollTop=e.container.scrollTop,window.setInterval(mxUtils.bind(this,function(){if(this.tdx-=this.dx,this.tdy-=this.dy,this.scrollbars){var t=-e.container.scrollLeft-Math.ceil(this.dx),n=-e.container.scrollTop-Math.ceil(this.dy);e.panGraph(t,n),e.panDx=this.scrollLeft-e.container.scrollLeft,e.panDy=this.scrollTop-e.container.scrollTop,e.fireEvent(new mxEventObject(mxEvent.PAN))}else e.panGraph(this.getDx(),this.getDy())}),this.delay)});this.isActive=function(){return active},this.getDx=function(){return Math.round(this.tdx)},this.getDy=function(){return Math.round(this.tdy)},this.start=function(){this.t0x=e.view.translate.x,this.t0y=e.view.translate.y,this.active=!0},this.panTo=function(n,a,i,o){this.active||this.start(),this.scrollLeft=e.container.scrollLeft,this.scrollTop=e.container.scrollTop,o=null!=o?o:0;var s=e.container;this.dx=n+(null!=i?i:0)-s.scrollLeft-s.clientWidth,0>this.dx&&Math.abs(this.dx)<this.border?this.dx=this.border+this.dx:this.dx=this.handleMouseOut?Math.max(this.dx,0):0,0==this.dx&&(this.dx=n-s.scrollLeft,this.dx=0<this.dx&&this.dx<this.border?this.dx-this.border:this.handleMouseOut?Math.min(0,this.dx):0),this.dy=a+o-s.scrollTop-s.clientHeight,0>this.dy&&Math.abs(this.dy)<this.border?this.dy=this.border+this.dy:this.dy=this.handleMouseOut?Math.max(this.dy,0):0,0==this.dy&&(this.dy=a-s.scrollTop,this.dy=0<this.dy&&this.dy<this.border?this.dy-this.border:this.handleMouseOut?Math.min(0,this.dy):0),0!=this.dx||0!=this.dy?(this.dx*=this.damper,this.dy*=this.damper,null==this.thread&&(this.thread=t())):null!=this.thread&&(window.clearInterval(this.thread),this.thread=null)},this.stop=function(){if(this.active)if(this.active=!1,null!=this.thread&&(window.clearInterval(this.thread),this.thread=null),this.tdy=this.tdx=0,this.scrollbars)e.panDx=0,e.panDy=0,e.fireEvent(new mxEventObject(mxEvent.PAN));else{var t=e.panDx,n=e.panDy;0==t&&0==n||(e.panGraph(0,0),e.view.setTranslate(this.t0x+t/e.view.scale,this.t0y+n/e.view.scale))}},this.destroy=function(){e.removeMouseListener(this.mouseListener)}}function mxPopupMenu(e){this.factoryMethod=e,null!=e&&this.init()}function mxAutoSaveManager(e){this.changeHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.graphModelChanged(t.getProperty("edit").changes)}),this.setGraph(e)}function mxAnimation(e){this.delay=null!=e?e:20}function mxMorphing(e,t,n,a){mxAnimation.call(this,a),this.graph=e,this.steps=null!=t?t:6,this.ease=null!=n?n:1.5}function mxImageBundle(e){this.images=[],this.alt=null!=e&&e}function mxImageExport(){}function mxAbstractCanvas2D(){this.converter=this.createUrlConverter(),this.reset()}function mxXmlCanvas2D(e){mxAbstractCanvas2D.call(this),this.root=e,this.writeDefaults()}function mxSvgCanvas2D(e,t){mxAbstractCanvas2D.call(this),this.root=e,this.gradients=[],this.defs=null,this.styleEnabled=null!=t&&t;var n=null;if(e.ownerDocument!=document)for(n=e;null!=n&&"svg"!=n.nodeName;)n=n.parentNode;null!=n&&(0<n.getElementsByTagName("defs").length&&(this.defs=n.getElementsByTagName("defs")[0]),null==this.defs&&(this.defs=this.createElement("defs"),null!=n.firstChild?n.insertBefore(this.defs,n.firstChild):n.appendChild(this.defs)),this.styleEnabled&&this.defs.appendChild(this.createStyle()))}function mxGuide(e,t){this.graph=e,this.setStates(t)}function mxStencil(e){this.desc=e,this.parseDescription(),this.parseConstraints()}function mxShape(e){this.stencil=e,this.strokewidth=1,this.rotation=0,this.opacity=100,this.flipV=this.flipH=!1}function mxActor(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxCloud(e,t,n,a){mxActor.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxRectangleShape(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxEllipse(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxDoubleEllipse(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxRhombus(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxPolyline(e,t,n){mxShape.call(this),this.points=e,this.stroke=t,this.strokewidth=null!=n?n:1}function mxArrow(e,t,n,a,i,o,s){mxShape.call(this),this.points=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1,this.arrowWidth=null!=i?i:mxConstants.ARROW_WIDTH,this.spacing=null!=o?o:mxConstants.ARROW_SPACING,this.endSize=null!=s?s:mxConstants.ARROW_SIZE}function mxText(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h,v,b,f,E){mxShape.call(this),this.value=e,this.bounds=t,this.color=null!=i?i:"black",this.align=null!=n?n:"",this.valign=null!=a?a:"",this.family=null!=o?o:mxConstants.DEFAULT_FONTFAMILY,this.size=null!=s?s:mxConstants.DEFAULT_FONTSIZE,this.fontStyle=null!=r?r:mxConstants.DEFAULT_FONTSTYLE,this.spacing=parseInt(l||2),this.spacingTop=this.spacing+parseInt(d||0),this.spacingRight=this.spacing+parseInt(c||0),this.spacingBottom=this.spacing+parseInt(m||0),this.spacingLeft=this.spacing+parseInt(u||0),this.horizontal=null==p||p,this.background=g,this.border=h,this.wrap=null!=v&&v,this.clipped=null!=b&&b,this.overflow=null!=f?f:"visible",this.labelPadding=null!=E?E:0,this.rotation=0}function mxTriangle(){mxActor.call(this)}function mxHexagon(){mxActor.call(this)}function mxLine(e,t,n){mxShape.call(this),this.bounds=e,this.stroke=t,this.strokewidth=null!=n?n:1}function mxImageShape(e,t,n,a,i){mxShape.call(this),this.bounds=e,this.image=t,this.fill=n,this.stroke=a,this.strokewidth=null!=i?i:1,this.shadow=!1}function mxLabel(e,t,n,a){mxRectangleShape.call(this,e,t,n,a)}function mxCylinder(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxConnector(e,t,n){mxPolyline.call(this,e,t,n)}function mxSwimlane(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxGraphLayout(e){this.graph=e}function mxStackLayout(e,t,n,a,i,o){mxGraphLayout.call(this,e),this.horizontal=null==t||t,this.spacing=null!=n?n:0,this.x0=null!=a?a:0,this.y0=null!=i?i:0,this.border=null!=o?o:0}function mxPartitionLayout(e,t,n,a){mxGraphLayout.call(this,e),this.horizontal=null==t||t,this.spacing=n||0,this.border=a||0}function mxCompactTreeLayout(e,t,n){mxGraphLayout.call(this,e),this.horizontal=null==t||t,this.invert=null!=n&&n}function WeightedCellSorter(e,t){this.cell=e,this.weightedValue=t}function mxFastOrganicLayout(e){mxGraphLayout.call(this,e)}function mxCircleLayout(e,t){mxGraphLayout.call(this,e),this.radius=null!=t?t:100}function mxParallelEdgeLayout(e){mxGraphLayout.call(this,e)}function mxCompositeLayout(e,t,n){mxGraphLayout.call(this,e),this.layouts=t,this.master=n}function mxEdgeLabelLayout(e,t){mxGraphLayout.call(this,e)}function mxGraphAbstractHierarchyCell(){this.x=[],this.y=[],this.temp=[]}function mxGraphHierarchyNode(e){mxGraphAbstractHierarchyCell.apply(this,arguments),this.cell=e}function mxGraphHierarchyEdge(e){mxGraphAbstractHierarchyCell.apply(this,arguments),this.edges=e}function mxGraphHierarchyModel(e,t,n,a,i){for(e.getGraph(),this.tightenToSource=i,this.roots=n,this.parent=a,this.vertexMapper={},this.edgeMapper={},this.maxRank=0,n=[],null==t&&(t=this.graph.getChildVertices(a)),this.maxRank=this.SOURCESCANSTARTRANK,this.createInternalCells(e,t,n),a=0;a<t.length;a++){i=n[a].connectsAsSource;for(var o=0;o<i.length;o++){var s=i[o];if(null!=(r=s.edges)&&0<r.length){var r=r[0],l=e.getVisibleTerminal(r,!1),l=mxCellPath.create(l),l=this.vertexMapper[l];n[a]==l&&(l=e.getVisibleTerminal(r,!0),l=mxCellPath.create(l),l=this.vertexMapper[l]),null!=l&&n[a]!=l&&(s.target=l,0==l.connectsAsTarget.length&&(l.connectsAsTarget=[]),0>mxUtils.indexOf(l.connectsAsTarget,s)&&l.connectsAsTarget.push(s))}}n[a].temp[0]=1}}function mxHierarchicalLayoutStage(){}function mxMedianHybridCrossingReduction(e){this.layout=e}function MedianCellSorter(){}function mxMinimumCycleRemover(e){this.layout=e}function mxCoordinateAssignment(e,t,n,a,i,o){this.layout=e,this.intraCellSpacing=t,this.interRankCellSpacing=n,this.orientation=a,this.initialX=i,this.parallelEdgeSpacing=o}function WeightedCellSorter(e,t){this.cell=e,this.weightedValue=t}function mxHierarchicalLayout(e,t,n){mxGraphLayout.call(this,e),this.orientation=null!=t?t:mxConstants.DIRECTION_NORTH,this.deterministic=null==n||n}function mxGraphModel(e){this.currentEdit=this.createUndoableEdit(),null!=e?this.setRoot(e):this.clear()}function mxRootChange(e,t){this.model=e,this.previous=this.root=t}function mxChildChange(e,t,n,a){this.model=e,this.previous=this.parent=t,this.child=n,this.previousIndex=this.index=a}function mxTerminalChange(e,t,n,a){this.model=e,this.cell=t,this.previous=this.terminal=n,this.source=a}function mxValueChange(e,t,n){this.model=e,this.cell=t,this.previous=this.value=n}function mxStyleChange(e,t,n){this.model=e,this.cell=t,this.previous=this.style=n}function mxGeometryChange(e,t,n){this.model=e,this.cell=t,this.previous=this.geometry=n}function mxCollapseChange(e,t,n){this.model=e,this.cell=t,this.previous=this.collapsed=n}function mxVisibleChange(e,t,n){this.model=e,this.cell=t,this.previous=this.visible=n}function mxCellAttributeChange(e,t,n){this.cell=e,this.attribute=t,this.previous=this.value=n}function mxCell(e,t,n){this.value=e,this.setGeometry(t),this.setStyle(n),null!=this.onInit&&this.onInit()}function mxGeometry(e,t,n,a){mxRectangle.call(this,e,t,n,a)}function mxPrintPreview(e,t,n,a,i,o,s,r,l){this.graph=e,this.scale=null!=t?t:1/e.pageScale,this.border=null!=a?a:0,this.pageFormat=null!=n?n:e.pageFormat,this.title=null!=r?r:"Printer-friendly version",this.x0=null!=i?i:0,this.y0=null!=o?o:0,this.borderColor=s,this.pageSelector=null==l||l}function mxStylesheet(){this.styles={},this.putDefaultVertexStyle(this.createDefaultVertexStyle()),this.putDefaultEdgeStyle(this.createDefaultEdgeStyle())}function mxCellState(e,t,n){this.view=e,this.cell=t,this.style=n,this.origin=new mxPoint,this.absoluteOffset=new mxPoint}function mxGraphSelectionModel(e){this.graph=e,this.cells=[]}function mxSelectionChange(e,t,n){this.selectionModel=e,this.added=null!=t?t.slice():null,this.removed=null!=n?n.slice():null}function mxCellEditor(e){this.graph=e}function mxCellRenderer(){}function mxGraphView(e){this.graph=e,this.translate=new mxPoint,this.graphBounds=new mxRectangle,this.states=new mxDictionary}function mxCurrentRootChange(e,t){if(this.view=e,this.previous=this.root=t,this.isUp=null==t,!this.isUp)for(var n=this.view.currentRoot,a=this.view.graph.getModel();null!=n;){if(n==t){this.isUp=!0;break}n=a.getParent(n)}}function mxGraph(e,t,n,a){this.mouseListeners=null,this.renderHint=n,this.dialect=mxClient.IS_SVG?mxConstants.DIALECT_SVG:n==mxConstants.RENDERING_HINT_EXACT&&mxClient.IS_VML?mxConstants.DIALECT_VML:n==mxConstants.RENDERING_HINT_FASTEST?mxConstants.DIALECT_STRICTHTML:n==mxConstants.RENDERING_HINT_FASTER?mxConstants.DIALECT_PREFERHTML:mxConstants.DIALECT_MIXEDHTML,this.model=null!=t?t:new mxGraphModel,this.multiplicities=[],this.imageBundles=[],this.cellRenderer=this.createCellRenderer(),this.setSelectionModel(this.createSelectionModel()),this.setStylesheet(null!=a?a:this.createStylesheet()),this.view=this.createGraphView(),this.graphModelChangeListener=mxUtils.bind(this,function(e,t){this.graphModelChanged(t.getProperty("edit").changes)}),this.model.addListener(mxEvent.CHANGE,this.graphModelChangeListener),this.createHandlers(),null!=e&&this.init(e),this.view.revalidate()}function mxCellOverlay(e,t,n,a,i,o){this.image=e,this.tooltip=t,this.align=null!=n?n:this.align,this.verticalAlign=null!=a?a:this.verticalAlign,this.offset=null!=i?i:new mxPoint,this.cursor=null!=o?o:"help"}function mxOutline(e,t){this.source=e,null!=t&&this.init(t)}function mxMultiplicity(e,t,n,a,i,o,s,r,l,d){this.source=e,this.type=t,this.attr=n,this.value=a,this.min=null!=i?i:0,this.max=null!=o?o:"n",this.validNeighbors=s,this.countError=mxResources.get(r)||r,this.typeError=mxResources.get(l)||l,this.validNeighborsAllowed=null==d||d}function mxLayoutManager(e){this.undoHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.beforeUndo(t.getProperty("edit"))}),this.moveHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsMoved(t.getProperty("cells"),t.getProperty("event"))}),this.setGraph(e)}function mxSpaceManager(e,t,n,a){this.resizeHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.foldHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.shiftRightwards=null==t||t,this.shiftDownwards=null==n||n,this.extendParents=null==a||a,this.setGraph(e)}function mxSwimlaneManager(e,t,n,a){this.horizontal=null==t||t,this.addEnabled=null==n||n,this.resizeEnabled=null==a||a,this.addHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.isAddEnabled()&&this.cellsAdded(t.getProperty("cells"))}),this.resizeHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.isResizeEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.setGraph(e)}function mxTemporaryCellStates(e,t,n){if(this.view=e,t=null!=t?t:1,this.oldBounds=e.getGraphBounds(),this.oldStates=e.getStates(),this.oldScale=e.getScale(),e.setStates(new mxDictionary),e.setScale(t),null!=n){t=e.createState(new mxCell);for(i=0;i<n.length;i++)e.validateBounds(t,n[i]);for(var a=null,i=0;i<n.length;i++){var o=e.validatePoints(t,n[i]);null==a?a=o:a.add(o)}null==a&&(a=new mxRectangle),e.setGraphBounds(a)}}function mxCellStatePreview(e){this.graph=e,this.deltas={}}function mxConnectionConstraint(e,t){this.point=e,this.perimeter=null==t||t}function mxGraphHandler(e){this.graph=e,this.graph.addMouseListener(this),this.panHandler=mxUtils.bind(this,function(){this.updatePreviewShape()}),this.graph.addListener(mxEvent.PAN,this.panHandler)}function mxPanningHandler(e,t){null!=e&&(this.graph=e,this.factoryMethod=t,this.graph.addMouseListener(this),this.init())}function mxCellMarker(e,t,n,a){mxEventSource.call(this),null!=e&&(this.graph=e,this.validColor=null!=t?t:mxConstants.DEFAULT_VALID_COLOR,this.invalidColor=null!=t?n:mxConstants.DEFAULT_INVALID_COLOR,this.hotspot=null!=a?a:mxConstants.DEFAULT_HOTSPOT,this.highlight=new mxCellHighlight(e))}function mxSelectionCellsHandler(e){mxEventSource.call(this),this.graph=e,this.handlers=new mxDictionary,this.graph.addMouseListener(this),this.refreshHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.refresh()}),this.graph.getSelectionModel().addListener(mxEvent.CHANGE,this.refreshHandler),this.graph.getModel().addListener(mxEvent.CHANGE,this.refreshHandler),this.graph.getView().addListener(mxEvent.SCALE,this.refreshHandler),this.graph.getView().addListener(mxEvent.TRANSLATE,this.refreshHandler),this.graph.getView().addListener(mxEvent.SCALE_AND_TRANSLATE,this.refreshHandler),this.graph.getView().addListener(mxEvent.DOWN,this.refreshHandler),this.graph.getView().addListener(mxEvent.UP,this.refreshHandler)}function mxConnectionHandler(e,t){mxEventSource.call(this),null!=e&&(this.graph=e,this.factoryMethod=t,this.init())}function mxConstraintHandler(e){this.graph=e}function mxRubberband(e){null!=e&&(this.graph=e,this.graph.addMouseListener(this),this.panHandler=mxUtils.bind(this,function(){this.repaint()}),this.graph.addListener(mxEvent.PAN,this.panHandler),mxClient.IS_IE&&mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()})))}function mxVertexHandler(e){null!=e&&(this.state=e,this.init())}function mxEdgeHandler(e){null!=e&&(this.state=e,this.init())}function mxElbowEdgeHandler(e){mxEdgeHandler.call(this,e)}function mxEdgeSegmentHandler(e){mxEdgeHandler.call(this,e)}function mxKeyHandler(e,t){null!=e&&(this.graph=e,this.target=t||document.documentElement,this.normalKeys=[],this.shiftKeys=[],this.controlKeys=[],this.controlShiftKeys=[],mxEvent.addListener(this.target,"keydown",mxUtils.bind(this,function(e){this.keyDown(e)})),mxClient.IS_IE&&mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()})))}function mxTooltipHandler(e,t){null!=e&&(this.graph=e,this.delay=t||500,this.graph.addMouseListener(this))}function mxCellTracker(e,t,n){mxCellMarker.call(this,e,t),this.graph.addMouseListener(this),null!=n&&(this.getCell=n),mxClient.IS_IE&&mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()}))}function mxCellHighlight(e,t,n,a){null!=e&&(this.graph=e,this.highlightColor=null!=t?t:mxConstants.DEFAULT_VALID_COLOR,this.strokeWidth=null!=n?n:mxConstants.HIGHLIGHT_STROKEWIDTH,this.dashed=null!=a&&a,this.repaintHandler=mxUtils.bind(this,function(){this.repaint()}),this.graph.getView().addListener(mxEvent.SCALE,this.repaintHandler),this.graph.getView().addListener(mxEvent.TRANSLATE,this.repaintHandler),this.graph.getView().addListener(mxEvent.SCALE_AND_TRANSLATE,this.repaintHandler),this.graph.getModel().addListener(mxEvent.CHANGE,this.repaintHandler),this.resetHandler=mxUtils.bind(this,function(){this.hide()}),this.graph.getView().addListener(mxEvent.DOWN,this.resetHandler),this.graph.getView().addListener(mxEvent.UP,this.resetHandler))}function mxDefaultKeyHandler(e){if(null!=e){this.editor=e,this.handler=new mxKeyHandler(e.graph);var t=this.handler.escape;this.handler.escape=function(n){t.apply(this,arguments),e.hideProperties(),e.fireEvent(new mxEventObject(mxEvent.ESCAPE,"event",n))}}}function mxDefaultPopupMenu(e){this.config=e}function mxDefaultToolbar(e,t){this.editor=t,null!=e&&null!=t&&this.init(e)}function mxEditor(e){this.actions=[],this.addActions(),null!=document.body&&(this.cycleAttributeValues=[],this.popupHandler=new mxDefaultPopupMenu,this.undoManager=new mxUndoManager,this.graph=this.createGraph(),this.toolbar=this.createToolbar(),this.keyHandler=new mxDefaultKeyHandler(this),this.configure(e),this.graph.swimlaneIndicatorColorAttribute=this.cycleAttributeName,!mxClient.IS_LOCAL&&null!=this.urlInit&&(this.session=this.createSession()),null!=this.onInit&&this.onInit(),mxClient.IS_IE&&mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()})))}function mxCodec(e){this.document=e||mxUtils.createXmlDocument(),this.objects=[]}function mxObjectCodec(e,t,n,a){this.template=e,this.exclude=null!=t?t:[],this.idrefs=null!=n?n:[],this.mapping=null!=a?a:[],this.reverse={};for(var i in this.mapping)this.reverse[this.mapping[i]]=i}function Sidebar(e,t){this.editorUi=e,this.container=t,this.palettes=new Object,this.taglist=new Object,this.showTooltips=!0,this.graph=new Graph(document.createElement("div"),null,null,this.editorUi.editor.graph.getStylesheet()),this.graph.resetViewOnRootChange=!1,this.graph.foldingEnabled=!1,this.graph.setConnectable(!1),this.graph.autoScroll=!1,this.graph.setTooltips(!1),this.graph.setEnabled(!1),this.graph.container.style.visibility="hidden",this.graph.container.style.position="absolute",this.graph.container.style.overflow="hidden",this.graph.container.style.height="1px",this.graph.container.style.width="1px",mxClient.IS_IE||mxClient.IS_IE11||(this.graph.container.style.display="none"),document.body.appendChild(this.graph.container),this.pointerUpHandler=mxUtils.bind(this,function(){this.showTooltips=!0}),mxEvent.addListener(document,mxClient.IS_POINTER?"pointerup":"mouseup",this.pointerUpHandler),this.pointerDownHandler=mxUtils.bind(this,function(){this.showTooltips=!1,this.hideTooltip()}),mxEvent.addListener(document,mxClient.IS_POINTER?"pointerdown":"mousedown",this.pointerDownHandler),this.pointerMoveHandler=mxUtils.bind(this,function(e){for(var t=mxEvent.getSource(e);null!=t;){if(t==this.currentElt)return;t=t.parentNode}this.hideTooltip()}),mxEvent.addListener(document,mxClient.IS_POINTER?"pointermove":"mousemove",this.pointerMoveHandler),this.pointerOutHandler=mxUtils.bind(this,function(e){null==e.toElement&&null==e.relatedTarget&&this.hideTooltip()}),mxEvent.addListener(document,mxClient.IS_POINTER?"pointerout":"mouseout",this.pointerOutHandler),mxEvent.addListener(t,"scroll",mxUtils.bind(this,function(){this.showTooltips=!0})),this.init(),mxClient.IS_SVG||((new Image).src=IMAGE_PATH+"/tooltip.png")}function Actions(e){this.editorUi=e,this.actions=new Object,this.init()}function Action(e,t,n,a,i){mxEventSource.call(this),this.label=e,this.funct=t,this.enabled=null==n||n,this.iconCls=a,this.shortcut=i}function Menubar(e,t){this.editorUi=e,this.container=t,mxEvent.addGestureListeners(document,mxUtils.bind(this,function(e){this.hideMenu()}))}function Menu(e,t){mxEventSource.call(this),this.funct=e,this.enabled=null==t||t}function Toolbar(e,t){this.editorUi=e,this.container=t,this.init(),mxEvent.addGestureListeners(document,mxUtils.bind(this,function(e){this.hideMenu()}))}function createCheckbox(e){var t=document.createElement("input");return t.setAttribute("type","checkbox"),e&&t.setAttribute("checked",!0),t}function createDropdownFromApi(e,t,n,a,i,o,s,r){var l=new XMLHttpRequest;l.open("GET",e,!1),l.setRequestHeader("Authorization","Bearer "+i.editor.data.token),l.send(null);var d=[];200===l.status&&(d=JSON.parse(l.response));var c=document.createElement("select"),m=document.createElement("option");return m.text="-- None --",m.value="-1",c.appendChild(m),d.rows.forEach(function(e){r&&e[n]==r||((m=document.createElement("option")).text=e[n],o&&s?(m.value=s,o.forEach(function(t){m.value=m.value.replace("%"+t+"%",e[t])}),m.selected=m.value==t):(m.value=e[a],m.selected=e[a]==t),c.appendChild(m))}),c.className="form-control select2",c}function createDropdownWithOptgroupFromApi(e,t,n,a,i,o){var s=new XMLHttpRequest;s.open("GET",e,!1),s.setRequestHeader("Authorization","Bearer "+i.editor.data.token),s.send(null);var r=[];200===s.status&&(r=JSON.parse(s.response));var l=document.createElement("select"),d=document.createElement("option");d.text="-- None --",d.value="-1",l.appendChild(d);var c=_.groupBy(r.rows,o);for(var m in c)if(c.hasOwnProperty(m)){var u=document.createElement("optgroup");u.label=_.capitalize(m),c[m].forEach(function(e){(d=document.createElement("option")).text=e[n],d.value=e[a],d.selected=e[a]==t,u.appendChild(d)}),l.appendChild(u)}return l.className="form-control select2",l}function createGroupedDropdownFromApi(e,t,n,a,i,o){var s=new XMLHttpRequest;s.open("GET",e,!1),s.setRequestHeader("Authorization","Bearer "+i.editor.data.token),s.send(null);var r=[];200===s.status&&(r=JSON.parse(s.response));var l=document.createElement("select"),d=document.createElement("option");return d.text="-- None --",d.value="0",l.appendChild(d),r.rows.forEach(function(e){(d=document.createElement("option")).className="select-group-father",d.text=e[n].toUpperCase(),d.value=e[a],d.selected=e[a]==t,l.appendChild(d),e[o].forEach(function(e){(d=document.createElement("option")).className="select-group-son",d.text="-"+_.capitalize(e[n]),d.value=e[a],d.selected=e[a]==t,l.appendChild(d)})}),l.className="form-control select2",l}function createDropdownFromArray(e,t){var n=document.createElement("select");for(var a in e){var i=document.createElement("option");i.text=e[a],i.value=a,(t>0||""!=t)&&(i.selected=t===a),n.appendChild(i)}return n.className="form-control select2",n}function createDropdownFromTigerDialList(e){var t=document.createElement("select"),n=[],a=new XMLHttpRequest;try{if(a.open("POST","/api/rest/list/list",!1),a.send(JSON.stringify({page:1,size:6e5})),200===a.status){var i=JSON.parse(a.response);if(i.status>0){var o=i.response.RMI.rows;for(var s in o)n[o[s].id]=o[s].name}}}catch(e){console.log(e)}for(var r in n){var l=document.createElement("option");l.text=n[r],l.value=r,(e>0||""!=e)&&(l.selected=e===r),t.appendChild(l)}return t.className="form-control select2",t}function Dialog(e,t,n,a,i,o,s){var r=0;mxClient.IS_IE&&9!=document.documentMode&&(r=60),n+=r,a+=r;Math.max(0,Math.round((document.body.scrollWidth-n)/2)),Math.max(0,Math.round((Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)-a)/3));var l=e.createDiv("geDialog");l.className="modal fade in center",l.style.display="block",l.style.paddingRight="12px";var d=e.createDiv("geModalDialog");d.className="modal-dialog",d.appendChild(t),l.appendChild(d),null==this.bg&&(this.bg=e.createDiv("background"),this.bg.className="modal-backdrop fade in",mxClient.IS_QUIRKS&&new mxDivResizer(this.bg)),i&&document.body.appendChild(this.bg),document.body.appendChild(l),this.onDialogClose=s,this.container=l}function ImportDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("import")+" XML");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("row"),l=e.createDiv("col-md-12"),d=document.createElement("textarea");d.style.width="100%",d.style.height="374px";var c=document.createElement("input");c.type="file",c.setAttribute("accept","text/xml"),c.addEventListener("change",function(e){var t=e.target.files[0];if(console.log(t),t)if("text/xml"===t.type){var n=new FileReader;n.onload=function(e){var t=e.target.result;mxUtils.write(d,t)},n.readAsText(t)}else alert("Failed to load format file");else alert("Failed to load file")},!1),l.appendChild(c),l.appendChild(d),r.appendChild(l),a.appendChild(r);var m=mxUtils.button(mxResources.get("import"),mxUtils.bind(this,function(t){var n=mxUtils.parseXml(d.value);e.editor.setGraphXml(n.documentElement),e.hideDialog()}));m.className="btn blue";var u=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});u.className="btn default",i.appendChild(m),i.appendChild(u),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function AboutDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("about")+" Cally Square");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=document.createElement("img");r.style.border="0px",r.setAttribute("width","176"),r.setAttribute("width","151"),r.setAttribute("src",IMAGE_PATH+"/logo.png"),a.appendChild(r),mxUtils.br(a),mxUtils.write(a,"Powered by Xenialab "+mxClient.VERSION),mxUtils.br(a);var l=document.createElement("a");l.setAttribute("href","http://www.callysquare.com/"),l.setAttribute("target","_blank"),mxUtils.write(l,"www.callysquare.com"),a.appendChild(l),mxUtils.br(a),mxUtils.br(a);var d=mxUtils.button(mxResources.get("close"),function(){e.hideDialog()});d.className="btn default",i.appendChild(d),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function SaveDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("saveAs"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.editor.getOrCreateFilename(),l=e.createDiv("row"),d=e.createDiv("col-md-4"),c=e.createDiv("col-md-8"),m=document.createElement("label");m.className="control-label pull-right",mxUtils.write(m,mxResources.get("name")),d.appendChild(m);var u=document.createElement("input");u.setAttribute("value",r+"_copy"),u.setAttribute("id","_name"),u.className="form-control",c.appendChild(u),l.appendChild(d),l.appendChild(c),a.appendChild(l);var p=mxUtils.button(mxResources.get("save"),function(){e.saveAs(u.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",i.appendChild(p),i.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function NewDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("new"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.editor.getOrCreateFilename(),l=e.createDiv("row"),d=e.createDiv("col-md-4"),c=e.createDiv("col-md-8"),m=document.createElement("label");m.className="control-label pull-right",mxUtils.write(m,mxResources.get("name")),d.appendChild(m);var u=document.createElement("input");u.setAttribute("value",r+"_new"),u.setAttribute("id","_name"),u.className="form-control",c.appendChild(u),l.appendChild(d),l.appendChild(c),a.appendChild(l);var p=mxUtils.button(mxResources.get("new"),function(){e.new(u.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",i.appendChild(p),i.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function DescriptionDialog(e){console.log(e.editor.data);var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("description"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("form-horizontal form-row-seperated"),l=e.editor.data.description||"",d=e.createDiv("form-group"),c=document.createElement("label");c.className="col-sm-4 control-label",mxUtils.write(c,mxResources.get("description")),d.appendChild(c);var m=document.createElement("input");m.setAttribute("value",l),m.className="form-control",m.setAttribute("id","_description");var u=e.createDiv("col-sm-8");u.appendChild(m),d.appendChild(u),r.appendChild(d),a.appendChild(r);var p=mxUtils.button(mxResources.get("update"),function(){e.description(m.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",i.appendChild(p),i.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function VariableDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("variable"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("form-horizontal form-row-seperated"),l="name",d="_"+l,c="variable name",m=e.createDiv("form-group"),u=document.createElement("label");u.className="col-sm-4 control-label",mxUtils.write(u,mxResources.get(l)),m.appendChild(u);var p=document.createElement("input");p.setAttribute("value",c),p.className="form-control",p.setAttribute("id",d);var g=e.createDiv("col-sm-8");g.appendChild(p),m.appendChild(g),r.appendChild(m),d="_"+(l="description"),c="variable description",m=e.createDiv("form-group last"),(u=document.createElement("label")).className="col-sm-4 control-label",mxUtils.write(u,mxResources.get(l)),m.appendChild(u);var h=document.createElement("input");h.setAttribute("value",c),h.className="form-control",h.setAttribute("id",d),(g=e.createDiv("col-sm-8")).appendChild(h),m.appendChild(g),r.appendChild(m),a.appendChild(r);var v=mxUtils.button(mxResources.get("new"),function(){e.variable(p.value,h.value),e.hideDialog()});v.className="btn blue";var b=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});b.className="btn default",i.appendChild(v),i.appendChild(b),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function OpenDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("open"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("row"),l=e.createDiv("col-md-4"),d=e.createDiv("col-md-8"),c=document.createElement("label");c.className="control-label pull-right",mxUtils.write(c,mxResources.get("name")),l.appendChild(c);var m=new XMLHttpRequest;m.open("GET","/api/square/projects",!1),m.setRequestHeader("Authorization","Bearer "+e.editor.data.token),m.send(null);var u=[];200===m.status&&(u=JSON.parse(m.response));for(var p=document.createElement("select"),g=0;g<u.length;g++){var h=document.createElement("option");h.text=u[g].name,h.value=u[g].id,p.appendChild(h)}p.className="form-control",d.appendChild(p),r.appendChild(l),r.appendChild(d),a.appendChild(r);var v=mxUtils.button(mxResources.get("open"),function(){console.log(p),console.log(p.value),window.open("square/project/"+p.value,"_blank"),e.hideDialog()});v.className="btn blue";var b=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});b.className="btn default",i.appendChild(v),i.appendChild(b),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function RenameDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("rename"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("row"),l=e.createDiv("col-md-4"),d=e.createDiv("col-md-8"),c=document.createElement("label");c.className="control-label pull-right",mxUtils.write(c,mxResources.get("name")),l.appendChild(c);var m=e.editor.filename,u=document.createElement("input");u.setAttribute("value",m),u.className="form-control",d.appendChild(u),r.appendChild(l),r.appendChild(d),a.appendChild(r);var p=mxUtils.button(mxResources.get("save"),function(){var t=new XMLHttpRequest;t.open("PUT",SAVE_URL+e.editor.data.id,!0),t.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),t.setRequestHeader("Authorization","Bearer "+e.editor.data.token),t.send("name="+u.value),t.onload=function(n){200===t.status?(e.editor.setStatus("Project successfully renamed"),e.editor.filename=u.value):(console.log(t.response),e.editor.setStatus(JSON.parse(t.response).errors[0].message))},t.onerror=function(e){mxUtils.alert(t.statusText)},e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",i.appendChild(p),i.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function EditFileDialog(e){function t(e){if(e.stopPropagation(),e.preventDefault(),e.dataTransfer.files.length>0){var t=e.dataTransfer.files[0],n=new FileReader;n.onload=function(e){m.value=e.target.result},n.readAsText(t)}}function n(e){e.stopPropagation(),e.preventDefault()}var a=e.createDiv("modal-content"),i=e.createDiv("modal-header"),o=e.createDiv("modal-body"),s=e.createDiv("modal-footer"),r=e.createHeader("h4");mxUtils.write(r,mxResources.get("edit"));var l=mxUtils.button("",function(){e.hideDialog()});l.className="close",i.appendChild(l),i.appendChild(r);var d=e.createDiv("row"),c=e.createDiv("col-md-12"),m=document.createElement("textarea");m.style.width="100%",m.style.height="374px",m.value=mxUtils.getPrettyXml(e.editor.getGraphXml()),fileSupport&&(m.addEventListener("dragover",n,!1),m.addEventListener("drop",t,!1)),c.appendChild(m),d.appendChild(c),o.appendChild(d);var u=mxUtils.button(mxResources.get("save"),function(){var t=mxUtils.parseXml(m.value);e.editor.setGraphXml(t.documentElement),e.hideDialog()});u.className="btn blue";var p=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});p.className="btn default",s.appendChild(u),s.appendChild(p),a.appendChild(i),a.appendChild(o),a.appendChild(s),this.container=a}function ExportDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body form"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("export")+" XML");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("form-horizontal form-row-seperated"),l=e.createDiv("form-group last"),d=document.createElement("label");d.className="col-sm-4 control-label",mxUtils.write(d,mxResources.get("filename"));var c=document.createElement("input");c.setAttribute("value",e.editor.getOrCreateFilename()),c.className="form-control";var m=e.createDiv("col-sm-8");m.appendChild(c),l.appendChild(d),l.appendChild(m),r.appendChild(l),a.appendChild(r);var u=mxUtils.button(mxResources.get("export"),mxUtils.bind(this,function(t){e.save(!1);encodeURIComponent(mxUtils.getXml(e.editor.getGraphXml()));new mxXmlRequest(SAVE_URL+e.editor.data.id+"/download","filename="+c.value,"GET").simulate(document,"_blank"),e.hideDialog()}));u.className="btn blue";var p=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});p.className="btn default",i.appendChild(u),i.appendChild(p),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function GeneralDialog(e,t){console.log("general");var n=e.editor.graph,a=e.createDiv("md-dialog"),i=e.createDiv("md-toolbar"),o=e.createDiv("md-dialog-content"),s=e.createDiv("md-dialog-actions"),r=e.createHeader("h4");mxUtils.write(r,mxResources.get("edit")+" "+mxResources.get(t.value.nodeName));var l=mxUtils.button("",function(){e.hideDialog()});l.className="close",i.appendChild(l),i.appendChild(r);for(var d=t.value.attributes.length,c=e.createDiv("form-horizontal form-row-seperated"),m=0;m<d;m++){var u=t.value.attributes[m].name,p="_"+u,g=t.value.attributes[m].value,h=e.createDiv(m==d-1?"form-group last":"form-group"),v=document.createElement("label");v.className="col-sm-4 control-label",mxUtils.write(v,mxResources.get(u)),h.appendChild(v);var b;switch(u){case"sip_id":b=createDropdownWithOptgroupFromApi("/api/users/all",g,"fullname","id",e,"role");break;case"queue_id":b=createDropdownFromApi("/api/voice/queues",g,"name","name",e);break;case"trunk_name":b=createDropdownFromApi("/api/trunks",g,"name","name",e);break;case"variable_id":b=createDropdownFromApi("/api/variables",g,"name","id",e);break;case"account_id":b="sendMail"==t.value.nodeName?createDropdownFromApi("/api/mail/servers/out",g,"username","id",e):createDropdownFromApi("/api/sms/accounts",g,"name","id",e);break;case"template_id":b=createDropdownFromApi("/api/templates",g,"name","id",e);break;case"context":b=createDropdownFromApi("/api/voice/contexts",g,"name","name",e);break;case"mailbox":b=createDropdownFromApi("/api/voice/voicemails",g,"mailbox","id",e,["mailbox","context"],"%mailbox%@%context%");break;case"model":b=createDropdownFromArray(ISPEECHASRMODEL,g);break;case"ispeech_asr_language":b=createDropdownFromArray(ISPEECHASRLANG,g);break;case"beep":b=createDropdownFromArray(ISPEECHBEEP,g);break;case"hiddendigitspos":b=createDropdownFromArray(SECRETDIGITSPOS,g);break;case"ispeech_tts_language":b=createDropdownFromArray(ISPEECHLANG,g);break;case"google_tts_language":b=createDropdownFromArray(GOOGLETTSLANG,g);break;case"intKey":b=createDropdownFromArray(ASRINTKEYS,g);break;case"recordingFormat":b=createDropdownFromArray(RECORDINGFORMAT,g);break;case"answer":b=createDropdownFromArray(BOOLSELECT,g);break;case"list_id":b=createDropdownFromTigerDialList(g);break;case"interval_id":b=createGroupedDropdownFromApi("/api/intervals",g,"name","id",e,"SubIntervals");break;case"project_id":b=createDropdownFromApi("/api/square/projects",g,"name","id",e,null,null,e.editor.getOrCreateFilename());break;case"odbc_id":b=createDropdownFromApi("/api/square/odbc",g,"name","id",e);break;case"file_id":b=createDropdownFromApi("/api/sounds",g,"display_name","id",e);break;case"timeout":case"digit":case"mindigit":case"maxdigit":case"response":case"retry":case"speed":(b=document.createElement("input")).setAttribute("type","number"),b.setAttribute("min",0),b.setAttribute("max",1e3),b.setAttribute("value",g),b.className="form-control";break;case"text":case"key":case"query":case"condition":case"command":case"body":(b=document.createElement("textarea")).innerHTML=g,b.className="form-control";break;case"sms_text":(b=document.createElement("textarea")).innerHTML=g,b.className="form-control",b.setAttribute("maxlength","160");break;default:(b=document.createElement("input")).setAttribute("value",g),b.className="form-control"}b.setAttribute("id",p);var f=e.createDiv("col-sm-8");if(f.appendChild(b),mxResources.get("help_"+u)){var E=e.createDiv("p");E.className="help-block",mxUtils.write(E,mxResources.get("help_"+u)),f.appendChild(E)}h.appendChild(f),c.appendChild(h)}o.appendChild(c);var y=mxUtils.button(mxResources.get("save"),mxUtils.bind(this,function(a){for(var i=0;i<t.value.attributes.length;i++){var o="_"+t.value.attributes[i].name,s=t.value.attributes[i].name;t.setAttribute(s,document.getElementById(o).value)}n.refresh(t),e.hideDialog()}));y.className="btn blue";var A=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});A.className="btn default",s.appendChild(y),s.appendChild(A),a.appendChild(i),a.appendChild(o),a.appendChild(s),this.container=a}!function(){"use strict";angular.module("app.auth",[])}(),function(){"use strict";angular.module("app.core",["ngAnimate","ngAria","ngCookies","ngMessages","ngResource","ngSanitize","ngMaterial","pascalprecht.translate","ui.router"])}(),function(){"use strict";function e(e,t){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"}),t.addPart("app/errors/404")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.errors.error-404",[]).config(e)}(),function(){"use strict";function e(e,t){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"}),t.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";angular.module("motion",["angular-toasty","app.core","app.auth","app.navigation","app.toolbar","app.quick-panel","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.help","app.motiondialer","app.login","app.errors"])}(),function(){"use strict";function e(e,t){e.state("app.login",{url:"/login",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"}),t.addPart("app/login")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.login",[]).config(e)}(),function(){"use strict";function e(e,t,n,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",function(e){return e.resolve("analyticMetric@get",{fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,offset:0})}]},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",function(e){return e.resolve("analyticExtractedReport@get",{fields:"createdAt,updatedAt,id,name,type,startDate,endDate,createdAt,status,output",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1202,bodyClass:"analytics"}),t.addPart("app/main/apps/analytics")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.analytics",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","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})}]},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",function(e,t){return e.resolve("analyticCustomReport@get",{fields:"createdAt,updatedAt,id,name,description,table,conditions",id:t.id})}]},authenticate:!0,permissionId:1203,bodyClass:"analytics"})}e.$inject=["$stateProvider"],angular.module("app.analytics.reports",["ngJsTree"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.callysquare",{abstract:!0,url:"/callysquare"}).state("app.callysquare.odbcs",{url:"/odbcs",views:{"content@app":{templateUrl:"app/main/apps/callysquare/views/odbcs/odbcs.html",controller:"OdbcsController as vm"}},resolve:{odbcs:["apiResolver",function(e){return e.resolve("squareOdbc@get",{fields:"createdAt,updatedAt,id,name,dsn,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1101,bodyClass:"callysquare"}).state("app.callysquare.squareRecordings",{url:"/squareRecordings",views:{"content@app":{templateUrl:"app/main/apps/callysquare/views/squareRecordings/squareRecordings.html",controller:"SquareRecordingsController as vm"}},resolve:{squareRecordings:["apiResolver",function(e){return e.resolve("squareRecording@get",{fields:"createdAt,updatedAt,id,projectName,uniqueid,callerid,extension,audio,createdAt",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1102,bodyClass:"callysquare"}),t.addPart("app/main/apps/callysquare")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.callysquare",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.callysquare.projects"]).config(e)}(),function(){"use strict";function e(e){e.state("app.callysquare.projects",{url:"/projects",views:{"content@app":{templateUrl:"app/main/apps/callysquare/views/projects/projects.html",controller:"ProjectsController as vm"}},resolve:{projects:["apiResolver",function(e){return e.resolve("squareProject@get",{fields:"id,name,description,notes",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1103,bodyClass:"callysquare"}).state("app.callysquare.projects.edit",{url:"/:id?tab",views:{"content@app":{templateUrl:"app/main/apps/callysquare/views/projects/edit/view.html",controller:"ProjectController as vm"}},resolve:{project:["apiResolver","$stateParams",function(e,t){return e.resolve("squareProject@get",{id:t.id})}],users:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,role",sort:"name",nolimit:!1})}],trunks:["apiResolver",function(e){return e.resolve("trunk@get",{fields:"id,name",sort:"name",nolimit:!1})}],queues:["apiResolver",function(e){return e.resolve("voiceQueue@get",{type:"inbound",fields:"id,name",sort:"name",nolimit:!1})}],sounds:["apiResolver",function(e){return e.resolve("sound@get",{fields:"id,name",sort:"name",nolimit:!1})}],variables:["apiResolver",function(e){return e.resolve("variable@get",{fields:"id,name",sort:"name",nolimit:!1})}],databases:["apiResolver",function(e){return e.resolve("squareOdbc@get",{fields:"id,name",sort:"name",nolimit:!1})}],projects:["apiResolver",function(e){return e.resolve("squareProject@get",{fields:"id,name",sort:"name",nolimit:!1})}],contexts:["apiResolver",function(e){return e.resolve("voiceContext@get",{fields:"id,name",sort:"name",nolimit:!1})}],intervals:["apiResolver",function(e){return e.resolve("interval@get",{fields:"id,name,IntervalId",sort:"name",nolimit:!1})}],mailAccounts:["apiResolver",function(e){return e.resolve("mailAccount@get",{fields:"id,name",sort:"name",nolimit:!1})}],templates:["apiResolver",function(e){return e.resolve("template@get",{fields:"id,name",sort:"name",nolimit:!1})}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name",sort:"name",nolimit:!1})}]},authenticate:!0,permissionId:1103,bodyClass:"callysquare"})}e.$inject=["$stateProvider"],angular.module("app.callysquare.projects",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.chat",{abstract:!0,url:"/chat"}).state("app.chat.chatQueues",{url:"/chatQueues",views:{"content@app":{templateUrl:"app/main/apps/chat/views/chatQueues/chatQueues.html",controller:"ChatQueuesController as vm"}},resolve:{chatQueues:["apiResolver",function(e){return e.resolve("chatQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:501,bodyClass:"chat"}).state("app.chat.chatQueues.edit",{url:"/:id?tab",params:{chatQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/chat/views/chatQueues/edit/view.html",controller:"ChatQueueController as vm"}},resolve:{chatQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("chatQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:501,bodyClass:"chat"}).state("app.chat.chatWebsites",{url:"/chatWebsites",views:{"content@app":{templateUrl:"app/main/apps/chat/views/chatWebsites/chatWebsites.html",controller:"ChatWebsitesController as vm"}},resolve:{chatWebsites:["apiResolver",function(e){return e.resolve("chatWebsite@get",{fields:"createdAt,updatedAt,id,name,address,remote,ListId,fidelity,timeout,description,color,color_focus,color_button,header_shape,animation,defaultWhiteLabel,whiteLabel,defaultLogo,download_transcript,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,OfflineTemplateId,name_title,username_placeholder,email_title,email_placeholder,header_online,online_message,start_chat_button,agents_busy,header_offline,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:502,bodyClass:"chat"}).state("app.chat.chatWebsites.edit",{url:"/:id?tab",params:{chatWebsite:void 0},views:{"content@app":{templateUrl:"app/main/apps/chat/views/chatWebsites/edit/view.html",controller:"ChatWebsiteController as vm"}},resolve:{chatWebsite:["apiResolver","$stateParams",function(e,t){return e.resolve("chatWebsite@get",{fields:"createdAt,updatedAt,id,name,address,remote,ListId,fidelity,timeout,description,color,color_focus,color_button,header_shape,animation,defaultWhiteLabel,whiteLabel,defaultLogo,download_transcript,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,OfflineTemplateId,name_title,username_placeholder,email_title,email_placeholder,header_online,online_message,start_chat_button,agents_busy,header_offline,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",id:t.id})}]},authenticate:!0,permissionId:502,bodyClass:"chat"}),t.addPart("app/main/apps/chat")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.chat",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.contactmanager",{abstract:!0,url:"/contactmanager"}).state("app.contactmanager.lists",{url:"/lists",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/lists/lists.html",controller:"ListsController as vm"}},resolve:{lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:301,bodyClass:"contactmanager"}).state("app.contactmanager.lists.edit",{url:"/:id?tab",params:{list:void 0},views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/lists/edit/view.html",controller:"ListController as vm"}},resolve:{list:["apiResolver","$stateParams",function(e,t){return e.resolve("cmList@get",{fields:"createdAt,updatedAt,id,name,description",id:t.id})}]},authenticate:!0,permissionId:301,bodyClass:"contactmanager"}).state("app.contactmanager.companies",{url:"/companies",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/companies/companies.html",controller:"CompaniesController as vm"}},resolve:{companies:["apiResolver",function(e){return e.resolve("cmCompany@get",{fields:"createdAt,updatedAt,id,name,phone,vat,fax,companyId,type,website,emailDomain,email,description,sStreet,sPostalCode,sCity,sCountry,street,postalCode,city,country",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:302,bodyClass:"contactmanager"}).state("app.contactmanager.companies.edit",{url:"/:id?tab",params:{company:void 0},views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/companies/edit/view.html",controller:"CompanyController as vm"}},resolve:{company:["apiResolver","$stateParams",function(e,t){return e.resolve("cmCompany@get",{fields:"createdAt,updatedAt,id,name,phone,vat,fax,companyId,type,website,emailDomain,email,description,sStreet,sPostalCode,sCity,sCountry,street,postalCode,city,country",id:t.id})}]},authenticate:!0,permissionId:302,bodyClass:"contactmanager"}).state("app.contactmanager.globalCustomFields",{url:"/globalCustomFields",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/globalCustomFields/globalCustomFields.html",controller:"GlobalCustomFieldsController as vm"}},resolve:{globalCustomFields:["apiResolver",function(e){return e.resolve("cmCustomField@get",{fields:"createdAt,updatedAt,id,alias,type,values,required",sort:"-updatedAt",ListId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:304,bodyClass:"contactmanager"}),t.addPart("app/main/apps/contactmanager")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.contactmanager",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.contactmanager.contacts"]).config(e)}(),function(){"use strict";function e(e){e.state("app.contactmanager.contacts",{url:"/contacts?ListId&CompanyId",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/contacts/contacts.html",controller:"ContactsController as vm"}},resolve:{contacts:["apiResolver","$stateParams",function(e,t){return e.resolve("cmContact@get",_.merge({sort:"-updatedAt",limit:10,offset:0},t))}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name",sort:"-updatedAt",nolimit:!0})}],listsMap:["lists",function(e){for(var t={},n=0;n<e.rows.length;n++)t[e.rows[n].id]=e.rows[n].name;return t}],companies:["apiResolver",function(e){return e.resolve("cmCompany@get",{fields:"id,name",sort:"-updatedAt",nolimit:!0})}],tags:["apiResolver",function(e){return e.resolve("tag@get",{fields:"id,name",sort:"-updatedAt",nolimit:!0})}]},authenticate:!0,permissionId:300,bodyClass:"contactmanager"}).state("app.contactmanager.contacts.edit",{url:"/:id?tab",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/contacts/edit/view.html",controller:"ContactController as vm"}},resolve:{contact:["apiResolver","$stateParams",function(e,t){return e.resolve("cmContact@get",{id:t.id}).then(function(e){return e.dateOfBirth&&(e.dateOfBirth=new Date(e.dateOfBirth)),e}).catch(function(e){console.error(e)})}],hoppers:["apiResolver","contact",function(e,t){return e.resolve("cmHopper@get",{ContactId:t.id,fields:"id,phone,scheduledat",sort:"-updatedAt",limit:10,offset:0})}],finals:["apiResolver","contact",function(e,t){return e.resolve("cmHopperFinal@get",{ContactId:t.id,fields:"uniqueid,phone,status,starttime,disposition",sort:"-updatedAt",limit:10,offset:0})}],histories:["apiResolver","contact",function(e,t){return e.resolve("cmHopperHistory@get",{ContactId:t.id,fields:"uniqueid,ContactId,phone,status,starttime,disposition",sort:"-updatedAt",limit:10,offset:0})}],companies:["apiResolver","$stateParams",function(e,t){return e.resolve("cmCompany@get")}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name",sort:"-updatedAt",nolimit:!0})}],customFields:["apiResolver","contact",function(e,t){return t.ListId?e.resolve("cmList@getCustomFields",{id:t.ListId}):null}],tags:["apiResolver","$stateParams",function(e,t){return e.resolve("tag@get")}]},authenticate:!0,permissionId:300,bodyClass:"contactmanager"})}e.$inject=["$stateProvider"],angular.module("app.contactmanager.contacts",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.dashboards",{abstract:!0,url:"/dashboards"}),t.addPart("app/main/apps/dashboards")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.dashboards",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.dashboards.general"]).config(e)}(),function(){"use strict";function e(e){e.state("app.dashboards.general.dashboard",{url:"/dashboard",data:{selectedTab:0},views:{dashboard:{templateUrl:"app/main/apps/dashboards/views/general/agent/dashboard/agent.general.dashboard.html",controller:"AgentDashboardDashboardGeneralController as vm"}},resolve:{rpcVoiceQueuesChannels:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueuesChannels")}],rpcVoiceQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}],voiceQueues:["apiResolver","Auth",function(e,t){return e.resolve("user@getQueues",{id:t.getCurrentUser().id,fields:"id,name",channel:"voice",limit:10,page:1})}]},authenticate:!0,bodyClass:"dashboards"}).state("app.dashboards.general.recordings",{url:"/recordings",data:{selectedTab:1},views:{recordings:{templateUrl:"app/main/apps/dashboards/views/general/agent/recordings/agent.general.recordings.html",controller:"AgentRecordigsDashboardGeneralController as vm"}},resolve:{voiceRecordings:["apiResolver","Auth",function(e,t){return e.resolve("user@getRecordings",{id:t.getCurrentUser().id,fields:"createdAt,updatedAt,id,format,value,type,uniqueid,calleridnum,exten,connectedlinenum,queue,rating,audio,createdAt",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,bodyClass:"dashboards"}).state("app.dashboards.general.contacts",{url:"/contacts",data:{selectedTab:2},views:{contacts:{templateUrl:"app/main/apps/dashboards/views/general/agent/contacts/agent.general.contacts.html",controller:"AgentContactsDashboardGeneralController as vm"}},resolve:{lists:["apiResolver","Auth",function(e,t){return e.resolve("user@getLists",{id:t.getCurrentUser().id,fields:"id,name",sort:"name",nolimit:!0})}]},authenticate:!0,bodyClass:"dashboards"}).state("app.dashboards.general.mycontacts",{url:"/mycontacts",data:{selectedTab:3},views:{mycontacts:{templateUrl:"app/main/apps/dashboards/views/general/agent/mycontacts/agent.general.mycontacts.html",controller:"AgentMyContactsDashboardGeneralController as vm"}},resolve:{lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name",sort:"name",nolimit:!0})}]},authenticate:!0,bodyClass:"dashboards"})}e.$inject=["$stateProvider"],angular.module("app.dashboards.general.agent",[]).config(e)}(),function(){"use strict";function e(e){e.state("app.dashboards.general",{url:"/general",data:{selectedTab:0},views:{"content@app":{templateProvider:["$stateParams","$templateFactory","Auth",function(e,t,n){var a=n.getCurrentUser();return a&&"agent"===a.role?t.fromUrl("app/main/apps/dashboards/views/general/agent/agent.general.html",e):t.fromUrl("app/main/apps/dashboards/views/general/user/user.general.html",e)}],controllerProvider:["Auth",function(e){var t=e.getCurrentUser();return t&&"agent"===t.role?"AgentDashboardGeneralController as vm":"UserDashboardGeneralController as vm"}]}},resolve:{globalUserLists:["apiResolver","Auth",function(e,t){return e.resolve("user@getLists",{id:t.getCurrentUser().id,sort:"name",nolimit:!0})}],globalLists:["apiResolver","Auth",function(e,t){return e.resolve("cmList@get",{sort:"name",nolimit:!0})}],globalTags:["apiResolver",function(e){return e.resolve("tag@get",{sort:"name",nolimit:!0})}],globalCompanies:["apiResolver",function(e){return e.resolve("cmCompany@get",{sort:"name",nolimit:!0})}]},authenticate:!0,bodyClass:"dashboards"})}e.$inject=["$stateProvider"],angular.module("app.dashboards.general",["app.dashboards.general.user","app.dashboards.general.agent"]).config(e)}(),function(){"use strict";function e(e){e.state("app.dashboards.general.voice",{url:"/voice",data:{selectedTab:0},views:{voice:{templateUrl:"app/main/apps/dashboards/views/general/user/voice/user.general.voice.html",controller:"UserVoiceDashboardGeneralController as vm"}},resolve:{rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}],inboundQueues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{fields:"id,name",type:"inbound"}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,fields:"id,name",channel:"voice",type:"inbound"})}],outbound:["apiResolver",function(e){return e.resolve("rpc@getOutbound")}]},authenticate:!0,bodyClass:"dashboards"}).state("app.dashboards.general.dialer",{url:"/dialer",data:{selectedTab:1},views:{dialer:{templateUrl:"app/main/apps/dashboards/views/general/user/dialer/user.general.dialer.html",controller:"UserVoiceDashboardDialerController as vm"}},resolve:{rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}],outboundQueues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{fields:"id,name",type:"outbound"}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,fields:"id,name",channel:"voice",type:"outbound"})}],rpcCampaigns:["apiResolver",function(e){return e.resolve("rpc@getCampaigns")}]},authenticate:!0,bodyClass:"dashboards"})}e.$inject=["$stateProvider"],angular.module("app.dashboards.general.user",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.fax",{abstract:!0,url:"/fax"}).state("app.fax.faxQueues",{url:"/faxQueues",views:{"content@app":{templateUrl:"app/main/apps/fax/views/faxQueues/faxQueues.html",controller:"FaxQueuesController as vm"}},resolve:{faxQueues:["apiResolver",function(e){return e.resolve("faxQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:901,bodyClass:"fax"}).state("app.fax.faxQueues.edit",{url:"/:id?tab",params:{faxQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/fax/views/faxQueues/edit/view.html",controller:"FaxQueueController as vm"}},resolve:{faxQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("faxQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:901,bodyClass:"fax"}).state("app.fax.faxAccounts",{url:"/faxAccounts",views:{"content@app":{templateUrl:"app/main/apps/fax/views/faxAccounts/faxAccounts.html",controller:"FaxAccountsController as vm"}},resolve:{faxAccounts:["apiResolver",function(e){return e.resolve("faxAccount@get",{fields:"createdAt,updatedAt,id,name,headerinfo,TrunkId,localstationid,ListId,fidelity,timeout,description,ecm,minrate,maxrate,modem,gateway,faxdetect,t38timeout,tech,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:902,bodyClass:"fax"}).state("app.fax.faxAccounts.edit",{url:"/:id?tab",params:{faxAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/fax/views/faxAccounts/edit/view.html",controller:"FaxAccountController as vm"}},resolve:{faxAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("faxAccount@get",{fields:"createdAt,updatedAt,id,name,headerinfo,TrunkId,localstationid,ListId,fidelity,timeout,description,ecm,minrate,maxrate,modem,gateway,faxdetect,t38timeout,tech,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",id:t.id})}]},authenticate:!0,permissionId:902,bodyClass:"fax"}),t.addPart("app/main/apps/fax")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.fax",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.help",{abstract:!0,url:"/help"}),t.addPart("app/main/apps/help")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.help",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.help.about"]).config(e)}(),function(){"use strict";function e(e){e.state("app.help.about",{url:"/about",views:{"content@app":{templateUrl:"app/main/apps/help/views/about/about.html",controller:"AboutController as vm"}},resolve:{info:["apiResolver",function(e){return e.resolve("version@get")}]},authenticate:!0,permissionId:1405,bodyClass:"help"})}e.$inject=["$stateProvider"],angular.module("app.help.about",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.integrations",{abstract:!0,url:"/integrations"}).state("app.integrations.zendeskAccounts",{url:"/zendeskAccounts",views:{"content@app":{templateUrl:"app/main/apps/integrations/views/zendeskAccounts/zendeskAccounts.html",controller:"ZendeskAccountsController as vm"}},resolve:{zendeskAccounts:["apiResolver",function(e){return e.resolve("intZendeskAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,authType,password,token,serverUrl,description",limit:10,offset:0})}]},authenticate:!0,permissionId:1301,bodyClass:"integrations"}).state("app.integrations.zendeskAccounts.edit",{url:"/:id?tab",params:{zendeskAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/view.html",controller:"ZendeskAccountController as vm"}},resolve:{zendeskAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("intZendeskAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,authType,password,token,serverUrl,description",id:t.id})}]},authenticate:!0,permissionId:1301,bodyClass:"integrations"}).state("app.integrations.salesforceAccounts",{url:"/salesforceAccounts",views:{"content@app":{templateUrl:"app/main/apps/integrations/views/salesforceAccounts/salesforceAccounts.html",controller:"SalesforceAccountsController as vm"}},resolve:{salesforceAccounts:["apiResolver",function(e){return e.resolve("intSalesforceAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,password,clientId,clientSecret,securityToken,serverUrl,description",limit:10,offset:0})}]},authenticate:!0,permissionId:1302,bodyClass:"integrations"}).state("app.integrations.salesforceAccounts.edit",{url:"/:id?tab",params:{salesforceAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/view.html",controller:"SalesforceAccountController as vm"}},resolve:{salesforceAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("intSalesforceAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,password,clientId,clientSecret,securityToken,serverUrl,description",id:t.id})}]},authenticate:!0,permissionId:1302,bodyClass:"integrations"}).state("app.integrations.freshdeskAccounts",{url:"/freshdeskAccounts",views:{"content@app":{templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/freshdeskAccounts.html",controller:"FreshdeskAccountsController as vm"}},resolve:{freshdeskAccounts:["apiResolver",function(e){return e.resolve("intFreshdeskAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,apiKey,serverUrl,description",limit:10,offset:0})}]},authenticate:!0,permissionId:1303,bodyClass:"integrations"}).state("app.integrations.freshdeskAccounts.edit",{url:"/:id?tab",params:{freshdeskAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/view.html",controller:"FreshdeskAccountController as vm"}},resolve:{freshdeskAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("intFreshdeskAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,apiKey,serverUrl,description",id:t.id})}]},authenticate:!0,permissionId:1303,bodyClass:"integrations"}).state("app.integrations.sugarcrmAccounts",{url:"/sugarcrmAccounts",views:{"content@app":{templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/sugarcrmAccounts.html",controller:"SugarcrmAccountsController as vm"}},resolve:{sugarcrmAccounts:["apiResolver",function(e){return e.resolve("intSugarcrmAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,password,serverUrl,description",limit:10,offset:0})}]},authenticate:!0,permissionId:1304,bodyClass:"integrations"}).state("app.integrations.sugarcrmAccounts.edit",{url:"/:id?tab",params:{sugarcrmAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/view.html",controller:"SugarcrmAccountController as vm"}},resolve:{sugarcrmAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("intSugarcrmAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,password,serverUrl,description",id:t.id})}]},authenticate:!0,permissionId:1304,bodyClass:"integrations"}),t.addPart("app/main/apps/integrations")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.integrations",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.mail",{abstract:!0,url:"/mail"}).state("app.mail.mailQueues",{url:"/mailQueues",views:{"content@app":{templateUrl:"app/main/apps/mail/views/mailQueues/mailQueues.html",controller:"MailQueuesController as vm"}},resolve:{mailQueues:["apiResolver",function(e){return e.resolve("mailQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:601,bodyClass:"mail"}).state("app.mail.mailQueues.edit",{url:"/:id?tab",params:{mailQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/mail/views/mailQueues/edit/view.html",controller:"MailQueueController as vm"}},resolve:{mailQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("mailQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:601,bodyClass:"mail"}).state("app.mail.mailAccounts",{url:"/mailAccounts",views:{"content@app":{templateUrl:"app/main/apps/mail/views/mailAccounts/mailAccounts.html",controller:"MailAccountsController as vm"}},resolve:{mailAccounts:["apiResolver",function(e){return e.resolve("mailAccount@get",{fields:"createdAt,updatedAt,id,name,address,ListId,TemplateId,fidelity,timeout,service,description,Imap.host,Imap.username,Imap.password,Imap.port,Imap.mailbox,Imap.connTimeout,Imap.authTimeout,Imap.delete,Imap.ssl,Imap.keepalive,Smtp.host,Smtp.username,Smtp.password,Smtp.port,Smtp.ssl,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl,whiteLabel",limit:10,offset:0})}]},authenticate:!0,permissionId:602,bodyClass:"mail"}).state("app.mail.mailAccounts.edit",{url:"/:id?tab",params:{mailAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/mail/views/mailAccounts/edit/view.html",controller:"MailAccountController as vm"}},resolve:{mailAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("mailAccount@get",{fields:"createdAt,updatedAt,id,name,address,ListId,TemplateId,fidelity,timeout,service,description,Imap.host,Imap.username,Imap.password,Imap.port,Imap.mailbox,Imap.connTimeout,Imap.authTimeout,Imap.delete,Imap.ssl,Imap.keepalive,Smtp.host,Smtp.username,Smtp.password,Smtp.port,Smtp.ssl,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl,whiteLabel",id:t.id})}]},authenticate:!0,permissionId:602,bodyClass:"mail"}),t.addPart("app/main/apps/mail")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.mail",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.motiondialer",{abstract:!0,url:"/motiondialer"}).state("app.motiondialer.queueCampaigns",{url:"/queueCampaigns",views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/queueCampaigns.html",controller:"QueueCampaignsController as vm"}},resolve:{queueCampaigns:["apiResolver",function(e){return e.resolve("voiceQueue@get",{fields:"createdAt,updatedAt,id,name,dialActive,TrunkId,TrunkBackupId,type,IntervalId,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar,dialGlobalInterval,dialTimezone,dialMethod,dialPowerLevel,dialPredictiveOptimization,dialPredictiveOptimizationPercentage,dialPredictiveInterval,dialLimitQueue,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialQueueOptions,dialQueueTimeout,strategy,timeout,retry,wrapuptime,weight,musiconhold,dialQueueProject,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,description",type:"outbound",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1501,bodyClass:"motiondialer"}).state("app.motiondialer.queueCampaigns.edit",{url:"/:id?tab",params:{queueCampaign:void 0},views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/view.html",controller:"QueueCampaignController as vm"}},resolve:{queueCampaign:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceQueue@get",{fields:"createdAt,updatedAt,id,name,dialActive,TrunkId,TrunkBackupId,type,IntervalId,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar,dialGlobalInterval,dialTimezone,dialMethod,dialPowerLevel,dialPredictiveOptimization,dialPredictiveOptimizationPercentage,dialPredictiveInterval,dialLimitQueue,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialQueueOptions,dialQueueTimeout,strategy,timeout,retry,wrapuptime,weight,musiconhold,dialQueueProject,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,description",id:t.id})}]},authenticate:!0,permissionId:1501,bodyClass:"motiondialer"}).state("app.motiondialer.ivrCampaigns",{url:"/ivrCampaigns",views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/ivrCampaigns.html",controller:"IvrCampaignsController as vm"}},resolve:{ivrCampaigns:["apiResolver",function(e){return e.resolve("campaign@get",{fields:"createdAt,updatedAt,id,name,active,TrunkId,TrunkBackupId,type,IntervalId,SquareProjectId,limitCalls,description,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,dialGlobalInterval,dialTimezone",type:"ivr",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1502,bodyClass:"motiondialer"}).state("app.motiondialer.ivrCampaigns.edit",{url:"/:id?tab",params:{ivrCampaign:void 0},views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/view.html",controller:"IvrCampaignController as vm"}},resolve:{ivrCampaign:["apiResolver","$stateParams",function(e,t){return e.resolve("campaign@get",{fields:"createdAt,updatedAt,id,name,active,TrunkId,TrunkBackupId,type,IntervalId,SquareProjectId,limitCalls,description,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,dialGlobalInterval,dialTimezone",id:t.id})}]},authenticate:!0,permissionId:1502,bodyClass:"motiondialer"}),t.addPart("app/main/apps/motiondialer")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.motiondialer",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.motiondialer.realtime"]).config(e)}(),function(){"use strict";function e(e){e.state("app.motiondialer.realtime",{url:"/realtime",views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/realtime/realtime.html",controller:"MotionDialerRealtimeController as vm"}},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.agents",{url:"/agents",controller:"AgentsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/agents/view.html",resolve:{pauses:["apiResolver",function(e){return e.resolve("pause@get",{nolimit:!0})}],agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,role,userpic,internal,online,motiondialerPause,pauseType,lastLoginAt,lastPauseAt",role:"agent",sort:"-updatedAt",limit:10,offset:0})}],rpcAgents:["apiResolver",function(e){return e.resolve("rpc@getAgents")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.telephones",{url:"/telephones",controller:"TelephonesMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/telephones/view.html",resolve:{telephones:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,userpic,internal",role:"telephone",sort:"-updatedAt",limit:10,offset:0})}],rpcTelephones:["apiResolver",function(e){return e.resolve("rpc@getTelephones")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.trunks",{url:"/trunks",controller:"TrunksMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/trunks/view.html",resolve:{trunks:["apiResolver",function(e){return e.resolve("trunk@get",{fields:"id,name",active:!0,sort:"-updatedAt",limit:10,offset:0})}],rpcTrunks:["apiResolver",function(e){return e.resolve("rpc@getTrunks")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.queues",{url:"/queues",controller:"QueuesMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/queues/view.html",resolve:{queues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{type:"outbound",sort:"-updatedAt",limit:10,offset:0}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,channel:"voice",type:"outbound",sort:"-updatedAt",limit:10,page:1})}],rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.queue_calls",{url:"/queue_calls",controller:"QueueCallsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/queue_calls/view.html",resolve:{agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,name,role",role:"agent",nolimit:!0})}],rpcCalls:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueuesChannels")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.queue_params",{url:"/queue_params",controller:"QueueParamsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/queue_params/view.html",resolve:{queues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{type:"outbound",fields:"id,name",sort:"-updatedAt",limit:10,offset:0}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,channel:"voice",type:"outbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1})}],rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.ivr_campaigns",{url:"/ivr_campaigns",controller:"IvrCampaignsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/ivr_campaigns/view.html",resolve:{campaigns:["apiResolver",function(e){return e.resolve("campaign@get",{sort:"-updatedAt",limit:10,offset:0})}],rpcCampaigns:["apiResolver",function(e){return e.resolve("rpc@getCampaigns")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.outbound_calls",{url:"/outbound_calls",controller:"OutboundCallsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/outbound_calls/view.html",resolve:{rpcCalls:["apiResolver",function(e){return e.resolve("rpc@getOutboundChannels")}]},authenticate:!0,permissionId:410})}e.$inject=["$stateProvider"],angular.module("app.motiondialer.realtime",["timer"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.openchannel",{abstract:!0,url:"/openchannel"}).state("app.openchannel.openchannelQueues",{url:"/openchannelQueues",views:{"content@app":{templateUrl:"app/main/apps/openchannel/views/openchannelQueues/openchannelQueues.html",controller:"OpenchannelQueuesController as vm"}},resolve:{openchannelQueues:["apiResolver",function(e){return e.resolve("openchannelQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:801,bodyClass:"openchannel"}).state("app.openchannel.openchannelQueues.edit",{url:"/:id?tab",params:{openchannelQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/openchannel/views/openchannelQueues/edit/view.html",controller:"OpenchannelQueueController as vm"}},resolve:{openchannelQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("openchannelQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:801,bodyClass:"openchannel"}).state("app.openchannel.openchannelAccounts",{url:"/openchannelAccounts",views:{"content@app":{templateUrl:"app/main/apps/openchannel/views/openchannelAccounts/openchannelAccounts.html",controller:"OpenchannelAccountsController as vm"}},resolve:{openchannelAccounts:["apiResolver",function(e){return e.resolve("openchannelAccount@get",{fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:802,bodyClass:"openchannel"}).state("app.openchannel.openchannelAccounts.edit",{url:"/:id?tab",params:{openchannelAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/openchannel/views/openchannelAccounts/edit/view.html",controller:"OpenchannelAccountController as vm"}},resolve:{openchannelAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("openchannelAccount@get",{fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",id:t.id})}]},authenticate:!0,permissionId:802,bodyClass:"openchannel"}),t.addPart("app/main/apps/openchannel")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.openchannel",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.settings",{abstract:!0,url:"/settings"}).state("app.settings.generals",{url:"/generals",views:{"content@app":{templateUrl:"app/main/apps/settings/views/generals/generals.html",controller:"GeneralsController as vm"}},resolve:{generals:["apiResolver",function(e){return e.resolve("setting@get",{fields:"createdAt,updatedAt,id,min_internal,min_mailbox,securePassword,stunaddr",limit:10,offset:0})}]},authenticate:!0,permissionId:1401,bodyClass:"settings"}).state("app.settings.smtps",{url:"/smtps",views:{"content@app":{templateUrl:"app/main/apps/settings/views/smtps/smtps.html",controller:"SmtpController as vm"}},resolve:{smtps:["apiResolver",function(e){return e.resolve("mailAccount@get",{fields:"createdAt,updatedAt,id,service,name,Smtp.service,Smtp.host,Smtp.user,Smtp.pass,Smtp.port,Smtp.secure,description",service:"1",limit:10,offset:0})}]},authenticate:!0,permissionId:1402,bodyClass:"settings"}).state("app.settings.networks",{url:"/networks",views:{"content@app":{templateUrl:"app/main/apps/settings/views/networks/networks.html",controller:"NetworksController as vm"}},resolve:{networks:["apiResolver",function(e){return e.resolve("network@get",{fields:"createdAt,updatedAt,id,type,value,value,createdAt",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1403,bodyClass:"settings"}).state("app.settings.customizations",{url:"/customizations",views:{"content@app":{templateUrl:"app/main/apps/settings/views/customizations/customizations.html",controller:"CustomizationsController as vm"}},resolve:{customizations:["apiResolver",function(e){return e.resolve("setting@get",{fields:"createdAt,updatedAt,id,defaultLogo,defaultLoginLogo,defaultHeaderWhiteLabel,headerWhiteLabel",limit:10,offset:0})}]},authenticate:!0,permissionId:1407,bodyClass:"settings"}),t.addPart("app/main/apps/settings")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.settings",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.settings.updates","app.settings.license","app.settings.system"]).config(e)}(),function(){"use strict";function e(e){e.state("app.settings.license",{url:"/license",views:{"content@app":{templateUrl:"app/main/apps/settings/views/license/license.html",controller:"LicenseController as vm"}},authenticate:!0,permissionId:1405,bodyClass:"settings"})}e.$inject=["$stateProvider"],angular.module("app.settings.license",[]).config(e)}(),function(){"use strict";function e(e){e.state("app.settings.system",{url:"/system",views:{"content@app":{templateUrl:"app/main/apps/settings/views/system/system.html",controller:"SystemController as vm"}},resolve:{system:["apiResolver",function(e){return e.resolve("system@get")}],processes:["apiResolver",function(e){return e.resolve("pm2@get")}]},authenticate:!0,permissionId:1406,bodyClass:"settings"})}e.$inject=["$stateProvider"],angular.module("app.settings.system",[]).config(e)}(),function(){"use strict";function e(e){e.state("app.settings.updates",{url:"/updates",views:{"content@app":{templateUrl:"app/main/apps/settings/views/updates/updates.html",controller:"UpdatesController as vm"}},resolve:{version:["apiResolver",function(e){return e.resolve("version@get")}]},authenticate:!0,permissionId:1404,bodyClass:"settings"})}e.$inject=["$stateProvider"],angular.module("app.settings.updates",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.sms",{abstract:!0,url:"/sms"}).state("app.sms.smsQueues",{url:"/smsQueues",views:{"content@app":{templateUrl:"app/main/apps/sms/views/smsQueues/smsQueues.html",controller:"SmsQueuesController as vm"}},resolve:{smsQueues:["apiResolver",function(e){return e.resolve("smsQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:701,bodyClass:"sms"}).state("app.sms.smsQueues.edit",{url:"/:id?tab",params:{smsQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/sms/views/smsQueues/edit/view.html",controller:"SmsQueueController as vm"}},resolve:{smsQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("smsQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:701,bodyClass:"sms"}).state("app.sms.smsAccounts",{url:"/smsAccounts",views:{"content@app":{templateUrl:"app/main/apps/sms/views/smsAccounts/smsAccounts.html",controller:"SmsAccountsController as vm"}},resolve:{smsAccounts:["apiResolver",function(e){return e.resolve("smsAccount@get",{fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,type,smstype,phone,sid,token,username,password,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:702,bodyClass:"sms"}).state("app.sms.smsAccounts.edit",{url:"/:id?tab",params:{smsAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/sms/views/smsAccounts/edit/view.html",controller:"SmsAccountController as vm"}},resolve:{smsAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("smsAccount@get",{fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,type,smstype,phone,sid,token,username,password,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",id:t.id})}]},authenticate:!0,permissionId:702,bodyClass:"sms"}),t.addPart("app/main/apps/sms")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.sms",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.staff",{abstract:!0,url:"/staff"}).state("app.staff.users",{url:"/users",views:{"content@app":{templateUrl:"app/main/apps/staff/views/users/users.html",controller:"UsersController as vm"}},resolve:{users:["apiResolver",function(e){return e.resolve("user@get",{fields:"createdAt,updatedAt,role,id,fullname,name,email,userpic,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup,permissions",role:"admin,user",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:201,bodyClass:"staff"}).state("app.staff.users.edit",{url:"/:id?tab",params:{user:void 0},views:{"content@app":{templateUrl:"app/main/apps/staff/views/users/edit/view.html",controller:"UserController as vm"}},resolve:{user:["apiResolver","$stateParams",function(e,t){return e.resolve("user@get",{fields:"createdAt,updatedAt,role,id,fullname,name,email,userpic,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup,permissions",id:t.id})}]},authenticate:!0,permissionId:201,bodyClass:"staff"}).state("app.staff.agents",{url:"/agents",views:{"content@app":{templateUrl:"app/main/apps/staff/views/agents/agents.html",controller:"AgentsController as vm"}},resolve:{agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"createdAt,updatedAt,id,role,fullname,name,email,userpic,password,description,autointernal,internal,loginInPause,voicemail,transport,host,nat,type,allow,callerid,callgroup,pickupgroup,chanspy,chatCapacity,mailCapacity,faxCapacity,smsCapacity,openchannelCapacity,phoneBarEnableSettings,phoneBarAutoAnswer,phoneBarRingInUse,phoneBarEnableRecording,phoneBarUnconditional,phoneBarUnconditionalNumber,phoneBarNoReply,phoneBarNoReplyNumber,phoneBarBusy,phoneBarBusyNumber,phoneBarRemoteControl,phoneBarRemoteControlPort,phoneBarExpires,phoneBarListenPort",role:"agent",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:202,bodyClass:"staff"}).state("app.staff.agents.edit",{url:"/:id?tab",params:{agent:void 0},views:{"content@app":{templateUrl:"app/main/apps/staff/views/agents/edit/view.html",controller:"AgentController as vm"}},resolve:{agent:["apiResolver","$stateParams",function(e,t){return e.resolve("user@get",{fields:"createdAt,updatedAt,id,role,fullname,name,email,userpic,password,description,autointernal,internal,loginInPause,voicemail,transport,host,nat,type,allow,callerid,callgroup,pickupgroup,chanspy,chatCapacity,mailCapacity,faxCapacity,smsCapacity,openchannelCapacity,phoneBarEnableSettings,phoneBarAutoAnswer,phoneBarRingInUse,phoneBarEnableRecording,phoneBarUnconditional,phoneBarUnconditionalNumber,phoneBarNoReply,phoneBarNoReplyNumber,phoneBarBusy,phoneBarBusyNumber,phoneBarRemoteControl,phoneBarRemoteControlPort,phoneBarExpires,phoneBarListenPort",id:t.id})}]},authenticate:!0,permissionId:202,bodyClass:"staff"}).state("app.staff.telephones",{url:"/telephones",views:{"content@app":{templateUrl:"app/main/apps/staff/views/telephones/telephones.html",controller:"TelephonesController as vm"}},resolve:{telephones:["apiResolver",function(e){return e.resolve("user@get",{fields:"createdAt,updatedAt,id,role,fullname,name,email,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup",role:"telephone",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:203,bodyClass:"staff"}).state("app.staff.telephones.edit",{url:"/:id?tab",params:{telephone:void 0},views:{"content@app":{templateUrl:"app/main/apps/staff/views/telephones/edit/view.html",controller:"TelephoneController as vm"}},resolve:{telephone:["apiResolver","$stateParams",function(e,t){return e.resolve("user@get",{fields:"createdAt,updatedAt,id,role,fullname,name,email,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup",id:t.id})}]},authenticate:!0,permissionId:203,bodyClass:"staff"}).state("app.staff.teams",{url:"/teams",views:{"content@app":{templateUrl:"app/main/apps/staff/views/teams/teams.html",controller:"TeamsController as vm"}},resolve:{teams:["apiResolver",function(e){return e.resolve("team@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:204,bodyClass:"staff"}),t.addPart("app/main/apps/staff")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.staff",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.tools",{abstract:!0,url:"/tools"}).state("app.tools.cannedAnswers",{url:"/cannedAnswers",views:{"content@app":{templateUrl:"app/main/apps/tools/views/cannedAnswers/cannedAnswers.html",controller:"CannedAnswersController as vm"}},resolve:{cannedAnswers:["apiResolver",function(e){return e.resolve("cannedAnswer@get",{fields:"createdAt,updatedAt,id,key,value,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1002,bodyClass:"tools"}).state("app.tools.customDashboards",{url:"/customDashboards",views:{"content@app":{templateUrl:"app/main/apps/tools/views/customDashboards/customDashboards.html",controller:"CustomDashboardsController as vm"}},resolve:{customDashboards:["apiResolver",function(e){return e.resolve("dashboard@get",{fields:"createdAt,updatedAt,id,name,interval,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1003,bodyClass:"tools"}).state("app.tools.customDashboards.edit",{url:"/:id?tab",params:{customDashboard:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/customDashboards/edit/view.html",controller:"CustomDashboardController as vm"}},resolve:{customDashboard:["apiResolver","$stateParams",function(e,t){return e.resolve("dashboard@get",{fields:"createdAt,updatedAt,id,name,interval,description",id:t.id})}]},authenticate:!0,permissionId:1003,bodyClass:"tools"}).state("app.tools.intervals",{url:"/intervals",views:{"content@app":{templateUrl:"app/main/apps/tools/views/intervals/intervals.html",controller:"IntervalsController as vm"}},resolve:{intervals:["apiResolver",function(e){return e.resolve("interval@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",IntervalId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:1004,bodyClass:"tools"}).state("app.tools.intervals.edit",{url:"/:id?tab",params:{interval:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/intervals/edit/view.html",controller:"IntervalController as vm"}},resolve:{interval:["apiResolver","$stateParams",function(e,t){return e.resolve("interval@get",{fields:"createdAt,updatedAt,id,name,description",id:t.id})}]},authenticate:!0,permissionId:1004,bodyClass:"tools"}).state("app.tools.pauses",{url:"/pauses",views:{"content@app":{templateUrl:"app/main/apps/tools/views/pauses/pauses.html",controller:"PausesController as vm"}},resolve:{pauses:["apiResolver",function(e){return e.resolve("pause@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1005,bodyClass:"tools"}).state("app.tools.schedules",{url:"/schedules",views:{"content@app":{templateUrl:"app/main/apps/tools/views/schedules/schedules.html",controller:"SchedulesController as vm"}},resolve:{schedules:["apiResolver",function(e){return e.resolve("schedule@get",{fields:"createdAt,updatedAt,id,name,type,reportType,reportId,reportId,reportOutput,cronType,validityStart,validityEnd,cron,weekDays,monthDay,hour,reportRange,sendMail,MailServerOutId,email,active,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:42,bodyClass:"tools"}).state("app.tools.schedules.edit",{url:"/:id?tab",params:{schedule:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/schedules/edit/view.html",controller:"ScheduleController as vm"}},resolve:{schedule:["apiResolver","$stateParams",function(e,t){return e.resolve("schedule@get",{fields:"createdAt,updatedAt,id,name,type,reportType,reportId,reportId,reportOutput,cronType,validityStart,validityEnd,cron,weekDays,monthDay,hour,reportRange,sendMail,MailServerOutId,email,active,description",id:t.id})}]},authenticate:!0,permissionId:42,bodyClass:"tools"}).state("app.tools.sounds",{url:"/sounds",views:{"content@app":{templateUrl:"app/main/apps/tools/views/sounds/sounds.html",controller:"SoundsController as vm"}},resolve:{sounds:["apiResolver",function(e){return e.resolve("sound@get",{fields:"createdAt,updatedAt,id,name,audio,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1006,bodyClass:"tools"}).state("app.tools.tags",{url:"/tags",views:{"content@app":{templateUrl:"app/main/apps/tools/views/tags/tags.html",controller:"TagsController as vm"}},resolve:{tags:["apiResolver",function(e){return e.resolve("tag@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1007,bodyClass:"tools"}).state("app.tools.templates",{url:"/templates",views:{"content@app":{templateUrl:"app/main/apps/tools/views/templates/templates.html",controller:"TemplatesController as vm"}},resolve:{templates:["apiResolver",function(e){return e.resolve("template@get",{fields:"createdAt,updatedAt,id,name,subject,html,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1008,bodyClass:"tools"}).state("app.tools.triggers",{url:"/triggers",views:{"content@app":{templateUrl:"app/main/apps/tools/views/triggers/triggers.html",controller:"TriggersController as vm"}},resolve:{triggers:["apiResolver",function(e){return e.resolve("trigger@get",{fields:"createdAt,updatedAt,id,name,channel,status,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1009,bodyClass:"tools"}).state("app.tools.triggers.edit",{url:"/:id?tab",params:{trigger:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/triggers/edit/view.html",controller:"TriggerController as vm"}},resolve:{trigger:["apiResolver","$stateParams",function(e,t){return e.resolve("trigger@get",{fields:"createdAt,updatedAt,id,name,channel,status,description",id:t.id})}]},authenticate:!0,permissionId:1009,bodyClass:"tools"}).state("app.tools.trunks",{url:"/trunks",views:{"content@app":{templateUrl:"app/main/apps/tools/views/trunks/trunks.html",controller:"TrunksController as vm"}},resolve:{trunks:["apiResolver",function(e){return e.resolve("trunk@get",{fields:"createdAt,updatedAt,id,name,active,host,secret,defaultuser,context,callerid,type,dtmfmode,nat,qualify,allow,insecure,call_limit,registry,description,directmedia,callcounter,fromdomain,fromuser,outboundproxy,usereqphone,trustrpid,sendrpid,encryption,port,transport,otherFields",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1010,bodyClass:"tools"}).state("app.tools.trunks.edit",{url:"/:id?tab",params:{trunk:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/trunks/edit/view.html",controller:"TrunkController as vm"}},resolve:{trunk:["apiResolver","$stateParams",function(e,t){return e.resolve("trunk@get",{fields:"createdAt,updatedAt,id,name,active,host,secret,defaultuser,context,callerid,type,dtmfmode,nat,qualify,allow,insecure,call_limit,registry,description,directmedia,callcounter,fromdomain,fromuser,outboundproxy,usereqphone,trustrpid,sendrpid,encryption,port,transport,otherFields",id:t.id})}]},authenticate:!0,permissionId:1010,bodyClass:"tools"}).state("app.tools.variables",{url:"/variables",views:{"content@app":{templateUrl:"app/main/apps/tools/views/variables/variables.html",controller:"VariablesController as vm"}},resolve:{variables:["apiResolver",function(e){return e.resolve("variable@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1011,bodyClass:"tools"}),t.addPart("app/main/apps/tools")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.tools",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e){e.state("app.voice.realtime",{url:"/realtime",views:{"content@app":{templateUrl:"app/main/apps/voice/views/realtime/realtime.html",controller:"VoiceRealtimeController as vm"}},authenticate:!0,permissionId:410}).state("app.voice.realtime.agents",{url:"/agents",controller:"AgentsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/agents/view.html",resolve:{pauses:["apiResolver",function(e){return e.resolve("pause@get",{nolimit:!0})}],agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,role,userpic,internal,online,voicePause,pauseType,lastLoginAt,lastPauseAt",role:"agent",sort:"-updatedAt",limit:10,offset:0})}],rpcAgents:["apiResolver",function(e){return e.resolve("rpc@getAgents")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.telephones",{url:"/telephones",controller:"TelephonesVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/telephones/view.html",resolve:{telephones:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,userpic,internal",role:"telephone",sort:"-updatedAt",limit:10,offset:0})}],rpcTelephones:["apiResolver",function(e){return e.resolve("rpc@getTelephones")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.trunks",{url:"/trunks",controller:"TrunksVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/trunks/view.html",resolve:{trunks:["apiResolver",function(e){return e.resolve("trunk@get",{fields:"id,name",active:!0,sort:"-updatedAt",limit:10,offset:0})}],rpcTrunks:["apiResolver",function(e){return e.resolve("rpc@getTrunks")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.queues",{url:"/queues",controller:"QueuesVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/queues/view.html",resolve:{queues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{type:"inbound",sort:"-updatedAt",limit:10,offset:0}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,channel:"voice",type:"inbound",sort:"-updatedAt",limit:10,page:1})}],rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.queue_calls",{url:"/queue_calls",controller:"QueueCallsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/queue_calls/view.html",resolve:{agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,name,role",role:"agent",nolimit:!0})}],rpcCalls:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueuesChannels")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.queue_params",{url:"/queue_params",controller:"QueueParamsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/queue_params/view.html",resolve:{queues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{type:"inbound",fields:"id,name",sort:"-updatedAt",limit:10,offset:0}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,channel:"voice",type:"inbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1})}],rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.ivr_campaigns",{url:"/ivr_campaigns",controller:"IvrCampaignsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/ivr_campaigns/view.html",resolve:{campaigns:["apiResolver",function(e){return e.resolve("campaign@get",{sort:"-updatedAt",limit:10,offset:0})}],rpcCampaigns:["apiResolver",function(e){return e.resolve("rpc@getCampaigns")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.outbound_calls",{url:"/outbound_calls",controller:"OutboundCallsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/outbound_calls/view.html",resolve:{rpcCalls:["apiResolver",function(e){return e.resolve("rpc@getOutboundChannels")}]},authenticate:!0,permissionId:410})}e.$inject=["$stateProvider"],angular.module("app.voice.realtime",["timer"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.voice",{abstract:!0,url:"/voice"}).state("app.voice.voiceQueues",{url:"/voiceQueues",views:{"content@app":{templateUrl:"app/main/apps/voice/views/voiceQueues/voiceQueues.html",controller:"VoiceQueuesController as vm"}},resolve:{voiceQueues:["apiResolver",function(e){return e.resolve("voiceQueue@get",{fields:"createdAt,updatedAt,id,name,type,strategy,timeout,maxlen,retry,wrapuptime,weight,joinempty,leavewhenempty,musiconhold,announce,description,periodic_announce,queue_reporthold,queue_youarenext,queue_thereare,queue_callswaiting,queue_holdtime,queue_minutes,queue_minute,queue_seconds,queue_thankyou,announce_frequency,min_announce_frequency,periodic_announce_frequency,random_periodic_announce,announce_holdtime,announce_position,announce_position_limit,reportholdtime,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar",type:"inbound",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:401,bodyClass:"voice"}).state("app.voice.voiceQueues.edit",{url:"/:id?tab",params:{voiceQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/voiceQueues/edit/view.html",controller:"VoiceQueueController as vm"}},resolve:{voiceQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceQueue@get",{fields:"createdAt,updatedAt,id,name,type,strategy,timeout,maxlen,retry,wrapuptime,weight,joinempty,leavewhenempty,musiconhold,announce,description,periodic_announce,queue_reporthold,queue_youarenext,queue_thereare,queue_callswaiting,queue_holdtime,queue_minutes,queue_minute,queue_seconds,queue_thankyou,announce_frequency,min_announce_frequency,periodic_announce_frequency,random_periodic_announce,announce_holdtime,announce_position,announce_position_limit,reportholdtime,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar",id:t.id})}]},authenticate:!0,permissionId:401,bodyClass:"voice"}).state("app.voice.inboundroutes",{url:"/inboundroutes",views:{"content@app":{templateUrl:"app/main/apps/voice/views/inboundroutes/inboundroutes.html",controller:"InboundRoutesController as vm"}},resolve:{inboundroutes:["apiResolver",function(e){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"inbound",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:402,bodyClass:"voice"}).state("app.voice.inboundroutes.edit",{url:"/:id?tab",params:{inboundroute:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/inboundroutes/edit/view.html",controller:"InboundRouteController as vm"}},resolve:{inboundroute:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",id:t.id})}]},authenticate:!0,permissionId:402,bodyClass:"voice"}).state("app.voice.outboundroutes",{url:"/outboundroutes",views:{"content@app":{templateUrl:"app/main/apps/voice/views/outboundroutes/outboundroutes.html",controller:"OutboundRoutesController as vm"}},resolve:{outboundroutes:["apiResolver",function(e){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"Outbound",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:403,bodyClass:"voice"}).state("app.voice.outboundroutes.edit",{url:"/:id?tab",params:{outboundroute:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/outboundroutes/edit/view.html",controller:"OutboundRouteController as vm"}},resolve:{outboundroute:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",id:t.id})}]},authenticate:!0,permissionId:403,bodyClass:"voice"}).state("app.voice.internalroutes",{url:"/internalroutes",views:{"content@app":{templateUrl:"app/main/apps/voice/views/internalroutes/internalroutes.html",controller:"InternalRoutesController as vm"}},resolve:{internalroutes:["apiResolver",function(e){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"internal",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:404,bodyClass:"voice"}).state("app.voice.internalroutes.edit",{url:"/:id?tab",params:{internalroute:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/internalroutes/edit/view.html",controller:"InternalRouteController as vm"}},resolve:{internalroute:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",id:t.id})}]},authenticate:!0,permissionId:404,bodyClass:"voice"}).state("app.voice.contexts",{url:"/contexts",views:{"content@app":{templateUrl:"app/main/apps/voice/views/contexts/contexts.html",controller:"ContextsController as vm"}},resolve:{contexts:["apiResolver",function(e){return e.resolve("voiceContext@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",defaultEntry:"false",limit:10,offset:0})}]},authenticate:!0,permissionId:405,bodyClass:"voice"}).state("app.voice.voicemails",{url:"/voicemails",views:{"content@app":{templateUrl:"app/main/apps/voice/views/voicemails/voicemails.html",controller:"VoicemailsController as vm"}},resolve:{voicemails:["apiResolver",function(e){return e.resolve("voiceMail@get",{fields:"createdAt,updatedAt,id,customer_id,fullname,email,password,mailbox,context,tz,attach,envelope,delete,emailbody,emailsubject,maxsecs,maxmsg",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:406,bodyClass:"voice"}).state("app.voice.voicemails.edit",{url:"/:id?tab",params:{voicemail:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/voicemails/edit/view.html",controller:"VoicemailController as vm"}},resolve:{voicemail:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceMail@get",{fields:"createdAt,updatedAt,id,customer_id,fullname,email,password,mailbox,context,tz,attach,envelope,delete,emailbody,emailsubject,maxsecs,maxmsg",id:t.id})}]},authenticate:!0,permissionId:406,bodyClass:"voice"}).state("app.voice.musiconholds",{url:"/musiconholds",views:{"content@app":{templateUrl:"app/main/apps/voice/views/musiconholds/musiconholds.html",controller:"MusicOnHoldsController as vm"}},resolve:{musiconholds:["apiResolver",function(e){return e.resolve("voiceMusicOnHold@get",{fields:"createdAt,updatedAt,id,name,mode,directory,application,format,sort",sort:"-updatedAt",defaultEntry:"false",limit:10,offset:0})}]},authenticate:!0,permissionId:407,bodyClass:"voice"}).state("app.voice.musiconholds.edit",{url:"/:id?tab",params:{musiconhold:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/musiconholds/edit/view.html",controller:"MusicOnHoldController as vm"}},resolve:{musiconhold:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceMusicOnHold@get",{fields:"createdAt,updatedAt,id,name,mode,directory,application,format,sort",id:t.id})}]},authenticate:!0,permissionId:407,bodyClass:"voice"}).state("app.voice.voiceRecordings",{url:"/voiceRecordings",views:{"content@app":{templateUrl:"app/main/apps/voice/views/voiceRecordings/voiceRecordings.html",controller:"VoiceRecordingsController as vm"}},resolve:{voiceRecordings:["apiResolver",function(e){return e.resolve("voiceRecording@get",{fields:"createdAt,updatedAt,id,format,value,type,uniqueid,calleridnum,exten,connectedlinenum,queue,rating,audio,createdAt",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:408,bodyClass:"voice"}).state("app.voice.chanSpies",{url:"/chanSpies",views:{"content@app":{templateUrl:"app/main/apps/voice/views/chanSpies/chanSpies.html",controller:"ChanSpiesController as vm"}},resolve:{chanSpies:["apiResolver",function(e){return e.resolve("voiceChanSpy@get",{fields:"createdAt,updatedAt,id,name,prefix,options,auth,password,record,recordingFormat,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:409,bodyClass:"voice"}).state("app.voice.chanSpies.edit",{url:"/:id?tab",params:{chanSpy:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/chanSpies/edit/view.html",controller:"ChanSpyController as vm"}},resolve:{chanSpy:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceChanSpy@get",{fields:"createdAt,updatedAt,id,name,prefix,options,auth,password,record,recordingFormat,description",id:t.id})}]},authenticate:!0,permissionId:409,bodyClass:"voice"}),t.addPart("app/main/apps/voice")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.voice",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.voice.realtime"]).config(e)}(),function(){"use strict";function e(){}angular.module("app.navigation",[]).config(e)}(),function(){"use strict";function e(e,t){e.addPart("app/quick-panel"),t.register("quickPanel.activities",["app/data/quick-panel/activities.json"]),t.register("quickPanel.contacts",["app/data/quick-panel/contacts.json"]),t.register("quickPanel.events",["app/data/quick-panel/events.json"]),t.register("quickPanel.notes",["app/data/quick-panel/notes.json"])}e.$inject=["$translatePartialLoaderProvider","msApiProvider"],angular.module("app.quick-panel",[]).config(e)}(),function(){"use strict";function e(e){e.addPart("app/toolbar")}e.$inject=["$translatePartialLoaderProvider"],angular.module("app.toolbar",[]).config(e)}(),function(){"use strict";function e(e){e.interceptors.push("authInterceptor")}e.$inject=["$httpProvider"],angular.module("app.auth").config(e)}(),function(){"use strict";function e(e,t,n,a){e.$on("$stateChangeStart",function(e,i){i.hasOwnProperty("authenticate")&&i.authenticate&&!a.isLoggedIn()&&(e.preventDefault(),t.go("app.login").then(function(){n.location.reload()})),a.isLoggedIn()&&i.hasOwnProperty("permissionId")&&(!i.permissionId||a.hasPermission(i.permissionId)||a.hasRole("admin")||(e.preventDefault(),t.go("app.dashboards.general",{},{reload:!0,notify:!0})))})}e.$inject=["$rootScope","$state","$window","Auth"],angular.module("app.auth").run(e)}(),function(){"use strict";function e(e,t,n,a){function i(){var e=n.defer();return c("agent")?a.user.login({id:h.id}).$promise.then(function(){console.log("AGENT LOGGED IN"),e.resolve()}).catch(function(t){e.reject(t)}):e.resolve(),e.promise}function o(e){var o=n.defer();return a.auth.local(e).$promise.then(function(e){return t.put("motion.token",e.token),a.user.get({id:e.id,fields:"id,role,fullname,name,internal,email,userpic,permissions,voicePause,pauseType"}).$promise}).then(function(e){return h=e,h.lastLoginAt=moment(),t.put("motion.user",JSON.stringify(e)),i()}).then(function(){o.resolve()}).catch(function(e){o.reject(e.data)}),o.promise}function s(){var e=n.defer();return c("agent")?a.user.logout({id:h.id}).$promise.then(function(){console.log("AGENT LOGGED OUT")}).catch(function(e){console.log(e)}).finally(function(){e.resolve()}):e.resolve(),e.promise}function r(){h=null,t.remove("motion.user"),t.remove("motion.token")}function l(e){n.defer();return e?(r(),n.resolve()):s().then(r).catch(function(e){console.error(e)})}function d(){return!(!h||!u())}function c(e){return!!h&&h.role===e}function m(e){return!!h&&_.includes(h.permissions,e)}function u(){return t.get("motion.token")}function p(){return h}function g(e){return h=e,t.put("motion.user",JSON.stringify(e)),h}var h;return function(){t.get("motion.user")&&(h=JSON.parse(t.get("motion.user")))}(),{login:o,logout:l,queueLogin:i,isLoggedIn:d,hasRole:c,hasPermission:m,getToken:u,getCurrentUser:p,updateCurrentUser:g}}e.$inject=["$location","$cookies","$q","api"],angular.module("app.auth").factory("Auth",e)}(),function(){"use strict";function e(e,t,n,a,i){var o;return{request:function(e){var t=n.get("motion.token");return e.headers=e.headers||{},i.isSameOrigin(e.url)&&t&&(e.headers.Authorization="Bearer "+t),e},responseError:function(e){switch(e.status){case 401:n.remove("motion.user"),n.remove("motion.token"),(o||(o=a.get("$state"))).go("app.login")}return t.reject(e)}}}e.$inject=["$rootScope","$q","$cookies","$injector","Util"],angular.module("app.auth").factory("authInterceptor",e)}(),function(){"use strict";function e(e){var t={safeCb:function(e){return angular.isFunction(e)?e:angular.noop},urlParse:function(e){var t=document.createElement("a");return t.href=e,""===t.host&&(t.href=t.href),t},isSameOrigin:function(n,a){return n=t.urlParse(n),a=a&&[].concat(a)||[],(a=a.map(t.urlParse)).push(e.location),(a=a.filter(function(e){var t=n.hostname===e.hostname,a=n.protocol===e.protocol,i=n.port===e.port||""===e.port&&("80"===n.port||"443"===n.port);return t&&a&&i})).length>=1}};return t}e.$inject=["$window"],angular.module("app.auth").factory("Util",e)}(),function(){"use strict";function e(){function e(e){t=angular.extend({},t,e)}var t={disableCustomScrollbars:!1,disableMdInkRippleOnMobile:!0,disableCustomScrollbarsOnMobile:!0};this.config=e,this.$get=function(){function e(e){return!angular.isUndefined(t[e])&&t[e]}function n(e,n){t[e]=n}return{getConfig:e,setConfig:n}}}angular.module("app.core").provider("motionConfig",e)}(),function(){"use strict";function e(e,t,n,a){t.debugEnabled(!0),e.config({tabindex:!1}),a.config({disableCustomScrollbars:!1,disableCustomScrollbarsOnMobile:!0,disableMdInkRippleOnMobile:!0}),n.config({wheelPropagation:!0})}e.$inject=["$ariaProvider","$logProvider","msScrollConfigProvider","motionConfigProvider"],angular.module("app.core").config(e)}(),function(){"use strict";function e(e,t,n){t.generate(),n.getConfig("disableMdInkRippleOnMobile")&&e.isMobile()&&angular.element("body").attr("md-no-ink",!0),e.isMobile()&&angular.element("html").addClass("is-mobile");var a=e.detectBrowser();if(a){var i=a.browser+" "+a.version+" "+a.os;angular.element("html").addClass(i)}}e.$inject=["msUtils","motionGenerator","motionConfig"],angular.module("app.core").run(e)}(),function(){"use strict";function e(e,t,n){return{restrict:"E",compile:function(a,i){var o;return i.code||(o=a.html(),a.empty()),function(a,i,s){function r(e,t){var n=t.find("code"),a=e.split("\n"),i=(a=a.filter(function(e){return e.trim().length}))[0].match(/^\s*/)[0],o=new RegExp("^"+i);a=a.map(function(e){return e.replace(o,"").replace(/\s+$/,"")});var r=hljs.highlight(s.language||s.lang,a.join("\n"),!0);r.value=r.value.replace(/=<span class="hljs-value">""<\/span>/gi,"").replace("<head>","").replace("<head/>",""),n.append(r.value).addClass("highlight")}s.code&&(o=a.$eval(s.code));var l=a.$eval(s.shouldInterpolate);t.when(o).then(function(t){if(t){l&&(t=n(t)(a));var o=angular.element('<pre><code class="highlight" ng-non-bindable></code></pre>');i.append(o),e(function(){r(t,o)},34,!1)}})}}}}e.$inject=["$timeout","$q","$interpolate"],angular.module("app.core").directive("hljs",e)}(),function(){"use strict";function e(){return{restrict:"E",scope:{templatePath:"=template",card:"=ngModel",vm:"=viewModel"},template:'<div class="ms-card-content-wrapper" ng-include="templatePath" onload="cardTemplateLoaded()"></div>',compile:function(e){return e.addClass("ms-card"),function(e,t){function n(){e.$emit("msCard::cardTemplateLoaded",t)}e.cardTemplateLoaded=n}}}}angular.module("app.core").directive("msCard",e)}(),function(){"use strict";function e(e,t,n,a){function i(){return n.dashboardItem.update(s.options).$promise.then(function(e){o(e)}).catch(function(e){console.error(e)})}function o(e){t.hide(e)}var s=this;s.options=a,s.closeDialog=o,s.updateItem=i}e.$inject=["$scope","$mdDialog","api","options"],angular.module("app.tools").controller("EditClockItemDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(a,i,o){function s(n){e.show({controller:"EditClockItemDashboardDialogController",controllerAs:"vm",templateUrl:"app/core/directives/ms-dash-clock/edit/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{options:a.options}})}function r(e){return n.trustAsResourceUrl(e)}a.options?a.options.data||(a.options.data={theme:"light",digitalFormat:"hh:mm:ss"}):a.options={},a.options.sizeX=a.options.sizeX<=1?2:a.options.sizeX,a.options.sizeY=a.options.sizeY<=1?2:a.options.sizeY,a.editItem=s,a.getTrustSrc=r}return{restrict:"E",scope:{options:"=",deleteItem:"&onDeleteItem"},link:i,templateUrl:"app/core/directives/ms-dash-clock/ms-dash-clock.html"}}e.$inject=["$mdDialog","$document","$sce","api"],angular.module("app.core").directive("msDashClock",e)}(),function(){"use strict";function e(e,t,n,a){function i(){return n.dashboardItem.update(s.options).$promise.then(function(e){o(e)}).catch(function(e){console.error(e)})}function o(e){t.hide(e)}var s=this;s.options=a,s.closeDialog=o,s.updateItem=i}e.$inject=["$scope","$mdDialog","api","options"],angular.module("app.tools").controller("EditCounterItemDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(n,i){function o(e){n.result=e}function s(a){e.show({controller:"EditCounterItemDashboardDialogController",controllerAs:"vm",templateUrl:"app/core/directives/ms-dash-counter/edit/dialog.html",parent:angular.element(t.body),targetEvent:a,clickOutsideToClose:!0,locals:{options:n.options}})}n.options&&!n.options.data&&(n.options.data={background:"#FFFFFF",foreground:"#03A9F4",foregroundTitle:"#7f7f7f",query:{fields:[],limit:1}}),a.on("widget:"+n.options.id,o),n.editItem=s,n.onWidgetUpdate=o}return{restrict:"E",scope:{options:"=",deleteItem:"&onDeleteItem"},link:o,templateUrl:"app/core/directives/ms-dash-counter/ms-dash-counter.html"}}e.$inject=["$mdDialog","$document","$interval","socket","api"],angular.module("app.core").directive("msDashCounter",e)}(),function(){"use strict";function e(e,t,n,a){function i(){return n.dashboardItem.update(s.options).$promise.then(function(e){o(e)}).catch(function(e){console.error(e)})}function o(e){t.hide(e)}var s=this;s.options=a,s.closeDialog=o,s.updateItem=i}e.$inject=["$scope","$mdDialog","api","options"],angular.module("app.tools").controller("EditIframeItemDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(a,i,o){function s(n){e.show({controller:"EditIframeItemDashboardDialogController",controllerAs:"vm",templateUrl:"app/core/directives/ms-dash-iframe/edit/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{options:a.options}})}function r(e){return n.trustAsResourceUrl(e)}a.options&&!a.options.data&&(a.options.data={url:"https://www.xcallymotion.com/"}),a.editItem=s,a.getTrustSrc=r}return{restrict:"E",scope:{options:"=",deleteItem:"&onDeleteItem"},link:i,templateUrl:"app/core/directives/ms-dash-iframe/ms-dash-iframe.html"}}e.$inject=["$mdDialog","$document","$sce","api"],angular.module("app.core").directive("msDashIframe",e)}(),function(){"use strict";function e(e,t,n,a){function i(){return n.dashboardItem.update(s.options).$promise.then(function(e){o(e)}).catch(function(e){console.error(e)})}function o(e){t.hide(e)}var s=this;s.options=a,s.closeDialog=o,s.updateItem=i}e.$inject=["$scope","$mdDialog","api","options"],angular.module("app.tools").controller("EditTableItemDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(n,a,o){function s(e){n.result=e}function r(a){e.show({controller:"EditTableItemDashboardDialogController",controllerAs:"vm",templateUrl:"app/core/directives/ms-dash-table/edit/dialog.html",parent:angular.element(t.body),targetEvent:a,clickOutsideToClose:!0,locals:{options:n.options}})}n.options&&!n.options.data&&(n.options.data={query:{}}),i.on("widget:"+n.options.id,s),n.editItem=r,n.onWidgetUpdate=s}return{restrict:"E",scope:{options:"=",deleteItem:"&onDeleteItem"},link:o,templateUrl:"app/core/directives/ms-dash-table/ms-dash-table.html"}}e.$inject=["$mdDialog","$document","$interval","api","socket"],angular.module("app.core").directive("msDashTable",e)}(),function(){"use strict";function e(){function e(e){n=angular.extend({},n,e)}var t=this,n={formatter:function(e){return e?""===e?e:new Date(e):""},parser:function(e){return e?moment(e).add(moment(e).utcOffset(),"m").toDate():""}};t.config=e,t.$get=function(){return n}}function t(e){return{require:"ngModel",priority:1,link:function(t,n,a,i){i.$formatters.push(e.formatter),i.$parsers.push(e.parser)}}}t.$inject=["msDatepickerFixConfig"],angular.module("app.core").provider("msDatepickerFixConfig",e).directive("msDatepickerFix",t)}(),function(){"use strict";function e(){return{restrict:"E",scope:{options:"="},controller:["$scope",function(e){e.transfer=function(t,n,a,i){var o=[];if(a>=0)o.push(t[a]),n.push(t[a]),t.splice(a,1);else{for(var s=0;s<t.length;s+=1)n.push(t[s]);t.length=0,o=n}e.options.transferCallback&&e.options.transferCallback(o,i)}}],templateUrl:"app/core/directives/ms-dual-multiselect/ms-dual-multiselect.html"}}angular.module("app.core").directive("msDualMultiselect",e)}(),function(){"use strict";function e(){function e(e){u.forms.push(e)}function t(){s()||u.selectedIndex--}function n(){r()||u.selectedIndex++}function a(){u.selectedIndex=0}function i(){u.selectedIndex=o()-1}function o(){return u.forms.length}function s(){return 0===u.selectedIndex}function r(){return u.selectedIndex===o()-1}function l(){return angular.isDefined(u.forms[u.selectedIndex])&&u.forms[u.selectedIndex].$invalid}function d(){return u.selectedIndex>0&&angular.isDefined(u.forms[u.selectedIndex-1])&&u.forms[u.selectedIndex-1].$invalid}function c(){for(var e=0;e<u.forms.length;e++)if(u.forms[e].$invalid)return!0;return!1}function m(){u.selectedIndex=0;for(var e=0;e<u.forms.length;e++)u.forms[e].$setPristine(),u.forms[e].$setUntouched()}var u=this;u.forms=[],u.selectedIndex=0,u.registerForm=e,u.previousStep=t,u.nextStep=n,u.firstStep=a,u.lastStep=i,u.totalSteps=o,u.isFirstStep=s,u.isLastStep=r,u.currentStepInvalid=l,u.previousStepInvalid=d,u.formsIncomplete=c,u.resetForm=m}function t(){return{restrict:"E",scope:!0,controller:"MsFormWizardController as msWizard",compile:function(e){return e.addClass("ms-form-wizard"),function(){}}}}function n(){return{restrict:"A",require:["form","^msFormWizard"],compile:function(e){return e.addClass("ms-form-wizard-form"),function(e,t,n,a){var i=a[0];a[1].registerForm(i)}}}}angular.module("app.core").controller("MsFormWizardController",e).directive("msFormWizard",t).directive("msFormWizardForm",n)}(),function(){"use strict";function e(e){return{restrict:"E",scope:{},transclude:!0,templateUrl:"app/core/directives/ms-info-bar/ms-info-bar.html",link:function(t,n){function a(){i.removeClass(o),n.remove(),t.$destroy()}var i=e.find("body"),o="ms-info-bar-active";i.addClass(o),t.removeInfoBar=a}}}e.$inject=["$document"],angular.module("app.core").directive("msInfoBar",e)}(),function(){"use strict";function e(e,t,n,a){function i(){d.options=d.options?angular.extend(c,d.options):c,s()}function o(e,n){"undefined"!=typeof imagesLoaded?t.imagesLoaded(e).on("done",function(){n()}):n()}function s(){e.$watch(function(){return d.container.width()},function(e,t){e!==t&&r()})}function r(){function t(){d.containerPos=d.container[0].getBoundingClientRect(),l(),e.$broadcast("msMasonry:relayoutStarted"),d.items=d.container.find("ms-masonry-item");for(var t=Array.apply(null,new Array(d.columnCount)).map(function(){return 0}),n=0;n<d.items.length;n++){var a,i,o,s,r=d.items[n];(r=angular.element(r)).scope()&&r.scope().$broadcast("msMasonryItem:startReLayout"),r.css({width:d.columnWidth}),d.options.respectItemOrder?s=t[o=n%d.columnCount]:(s=Math.min.apply(Math,t),o=t.indexOf(s)),t[o]=s+r[0].getBoundingClientRect().height,a=Math.round(o*d.columnWidth),i=s,r.css({transform:"translate3d("+a+"px,"+i+"px,0px)"}),r.addClass("placed"),r.scope()&&r.scope().$broadcast("msMasonryItem:finishReLayout")}}m&&a.cancel(m),m=a(function(){t(),e.$broadcast("msMasonry:relayoutFinished")},d.options.reLayoutDebounce)}function l(){d.columnCount=d.options.columnCount,n("gt-md")?d.columnCount=d.options.columnCount:n("md")?d.columnCount=d.columnCount>d.options.responsive.md?d.options.responsive.md:d.columnCount:n("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}var d=this,c={columnCount:5,respectItemOrder:!1,reLayoutDebounce:400,responsive:{md:3,sm:2,xs:1}},m=!0;d.options=null,d.container=[],d.containerPos="",d.columnWidth="",d.items=[],d.reLayout=r,d.initialize=i,d.waitImagesLoaded=o,e.$on("msMasonry:relayout",function(){r()})}function t(e){function t(t,n){return{pre:function(e,a,i,o){o.options=angular.fromJson(n.options||"{}"),o.container=t},post:function(t,n,a,i){e(function(){i.initialize()})}}}return{restrict:"AEC",controller:"msMasonryController",compile:t}}function n(){function e(e,t,n,a){a.waitImagesLoaded(t,function(){a.reLayout()}),e.$on("msMasonryItem:finishReLayout",function(){e.$watch(function(){return t.height()},function(e,t){e!==t&&a.reLayout()})}),t.on("$destroy",function(){a.reLayout()})}return{restrict:"AEC",require:"^msMasonry",priority:1,link:e}}e.$inject=["$scope","$window","$mdMedia","$timeout"],t.$inject=["$timeout"],angular.module("app.core").controller("msMasonryController",e).directive("msMasonry",t).directive("msMasonryItem",n)}(),function(){"use strict";function e(e,t,n,a){function i(e,t){c.selectedPalette=e,c.selectedHues=t}function o(e,t){l(e,t),d(),n.hide()}function s(){c.selectedColor={palette:"",hue:"",class:""},i(!1,!1),d()}function r(){if(c.modelCtrl.$viewValue&&""!==c.modelCtrl.$viewValue){var e,t;if("class"===c.msModelType){var n=c.modelCtrl.$viewValue.split("-");n.length>=5?(e=n[1]+"-"+n[2],t=n[3]):(e=n[1],t=n[2])}else"obj"===c.msModelType&&(e=c.modelCtrl.$viewValue.palette,t=c.modelCtrl.$viewValue.hue||500);l(e,t)}else s()}function l(t,n){c.selectedColor={palette:t,hue:n,class:"md-"+t+"-"+n+"-bg",bgColorValue:a.rgba(c.palettes[t][n].value),fgColorValue:a.rgba(c.palettes[t][n].contrast)},"obj"!==c.msModelType||angular.equals(c.selectedColor,c.modelCtrl.$viewValue)||d(),i(t,c.palettes[t]),e.$selectedColor=c.selectedColor}function d(){"class"===c.msModelType?c.modelCtrl.$setViewValue(c.selectedColor.class):"obj"===c.msModelType&&c.modelCtrl.$setViewValue(c.selectedColor)}var c=this;c.palettes=t,c.selectedPalette=!1,c.selectedHues=!1,e.$selectedColor={},c.activateHueSelection=i,c.selectColor=o,c.removeColor=s,e.$watch("ngModel",r)}function t(){return{require:["msMaterialColorPicker","ngModel"],restrict:"E",scope:{ngModel:"=",msModelType:"@?"},controller:"msMaterialColorPickerController as vm",transclude:!0,templateUrl:"app/core/directives/ms-material-color-picker/ms-material-color-picker.html",link:function(e,t,n,a,i){var o=a[0];o.modelCtrl=a[1],o.msModelType=e.msModelType||"class",i(e,function(e){(e=e.filter(function(e,t){return 1===t.nodeType})).length&&t.find("ms-color-picker-button").replaceWith(e)})}}}e.$inject=["$scope","$mdColorPalette","$mdMenu","motionGenerator"],angular.module("app.core").controller("msMaterialColorPickerController",e).directive("msMaterialColorPicker",t)}(),function(){"use strict";function e(){function e(e,t){o={scope:e,element:t}}function t(){return o.scope.isNavFoldedOpen()}function n(){o.scope.toggleFold()}function a(){o.scope.openFolded()}function i(){o.scope.closeFolded()}var o={};return{setFoldable:e,isNavFoldedOpen:t,toggleFold:n,openFolded:a,closeFolded:i}}function t(e,t,n){return{restrict:"A",link:function(a,i,o){function s(){return p}function r(){(u=!u)?l():m()}function l(){g.addClass("ms-nav-folded"),t.$broadcast("msNav::forceCollapse"),i.scrollTop(0),b.append(h),h.on("mouseenter touchstart",function(e){d(e),p=!0})}function d(e){angular.isDefined(e)&&e.preventDefault(),g.addClass("ms-nav-folded-open"),t.$broadcast("msNav::expandMatchingToggles"),b.find(h).remove(),b.parent().append(v),v.on("mouseenter touchstart",function(e){c(e),p=!1})}function c(e){angular.isDefined(e)&&e.preventDefault(),t.$broadcast("msNav::forceCollapse"),i.scrollTop(0),g.removeClass("ms-nav-folded-open"),b.parent().find(v).remove(),b.append(h),h.on("mouseenter touchstart",function(e){d(e),p=!0})}function m(){g.removeClass("ms-nav-folded ms-nav-folded-open"),t.$broadcast("msNav::expandMatchingToggles"),i.off("mouseenter mouseleave")}var u="true"===o.msNavIsFolded,p=!1,g=angular.element(e[0].body),h=angular.element('<div id="ms-nav-fold-open-overlay"></div>'),v=angular.element('<div id="ms-nav-fold-close-overlay"></div>'),b=i.parent();n.setFoldable(a,i,u),u?l():m(),a.toggleFold=r,a.openFolded=d,a.closeFolded=c,a.isNavFoldedOpen=s,a.$on("$destroy",function(){h.off("mouseenter touchstart"),v.off("mouseenter touchstart"),i.off("mouseenter mouseleave")})}}}function n(){function e(){return l}function t(){l=!0}function n(){l=!1}function a(e,t){d.push({element:e,scope:t})}function i(){return c}function o(e,t){c.push({element:e,scope:t})}function s(){c=[]}var r=this,l=!1,d=[],c=[];r.isDisabled=e,r.enable=n,r.disable=t,r.setToggleItem=a,r.getLockedItems=i,r.setLockedItem=o,r.clearLockedItems=s}function a(e,t,n){return{restrict:"E",scope:{},controller:"MsNavController",compile:function(a){return a.addClass("ms-nav"),function(a){e.$broadcast("msNav::expandMatchingToggles");var i=e.$on("$stateChangeSuccess",function(){e.$broadcast("msNav::expandMatchingToggles"),t.when("navigation").then(function(e){e.close(),n.isNavFoldedOpen()&&n.closeFolded()})});a.$on("$destroy",function(){i()})}}}}function i(){return{restrict:"A",compile:function(e){return e.addClass("ms-nav-title"),function(){}}}}function o(){return{restrict:"AE",compile:function(e){return e.addClass("ms-nav-button"),function(){}}}}function s(e,t,n,a){return{restrict:"A",require:"^msNav",scope:!0,compile:function(i,o){return i.addClass("ms-nav-toggle"),angular.isUndefined(o.collapsed)&&(o.collapsed=!0),i.attr("collapsed",o.collapsed),function(i,o,s,r){function l(){r.isDisabled()||(r.disable(),d()?(r.clearLockedItems(),i.$emit("msNav::pushToLockedList"),e.$broadcast("msNav::collapse"),m().then(function(){r.enable()})):i.$broadcast("msNav::forceCollapse"))}function d(){return"true"===o.attr("collapsed")}function c(){return!d()}function m(){var e=t.defer();if(c())return e.reject({error:!0}),e.promise;o.attr("collapsed",!1);var a=angular.element(o.find("ms-nav-toggle-items")[0]);a.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var s=a[0].offsetHeight;return a.css({position:"",visibility:"",display:"",height:""}),i.$evalAsync(function(){n.animate(a,{display:"block",height:"0px"},{height:s+"px"},p.expandAnimation).then(function(){a.addClass(p.expanded),a.css({height:""}),e.resolve({success:!0})})}),e.promise}function u(){var e=t.defer();if(d())return e.reject({error:!0}),e.promise;o.attr("collapsed",!0);var a=angular.element(o.find("ms-nav-toggle-items")[0]),s=a[0].offsetHeight;return i.$evalAsync(function(){n.animate(a,{height:s+"px"},{height:"0px"},p.collapseAnimation).then(function(){a.removeClass(p.expanded),a.css({display:"",height:""}),e.resolve({success:!0})})}),e.promise}var p={expanded:"expanded",expandAnimation:"expand-animation",collapseAnimation:"collapse-animation"},g=o.find("a"),h=[],v=/\(.*\)/g;angular.forEach(g,function(e){var t=angular.element(e).attr("ui-sref");angular.isUndefined(t)||(t=t.replace(v,""),h.push(t))}),r.setToggleItem(o,i),o.children(".ms-nav-button").on("click",l),i.$on("$destroy",function(){o.children(".ms-nav-button").off("click")}),i.$on("msNav::collapse",function(){var e=r.getLockedItems(),t=!1;angular.forEach(e,function(e){angular.equals(e.scope,i)&&(t=!0)}),t||u().then(function(){r.enable()})}),i.$on("msNav::forceCollapse",function(){u().then(function(){r.enable()})}),i.$on("msNav::expandMatchingToggles",function(){var e=a.current.name,t=!1;angular.forEach(h,function(n){e===n&&(t=!0)}),t?m():u()}),i.$on("msNav::pushToLockedList",function(){r.setLockedItem(o,i)})}}}}t.$inject=["$document","$rootScope","msNavFoldService"],a.$inject=["$rootScope","$mdComponentRegistry","msNavFoldService"],s.$inject=["$rootScope","$q","$animate","$state"],angular.module("app.core").factory("msNavFoldService",e).directive("msNavIsFolded",t).controller("MsNavController",n).directive("msNav",a).directive("msNavTitle",i).directive("msNavButton",o).directive("msNavToggle",s)}(),function(){"use strict";function e(){function e(e,t){if(angular.isString(e)){for(var n=e.split("."),i=n[n.length-1],r=a(n),l=!1,d=0;d<r.length;d++)if(r[d]._id===i){l=r[d];break}l?(angular.extend(l,t),l.uisref=o(l)):(t.children=[],!angular.isUndefined(t.weight)&&angular.isNumber(t.weight)||(t.weight=1),t._id=i,t._path=e,t.uisref=o(t),r.push(t))}else s.error("path must be a string (eg. `dashboard.project`)")}function t(e){if(angular.isString(e)){for(var t=r,n=e.split("."),a=0;a<n.length;a++)for(var i=n[a],o=0;o<t.length;o++)if(t[o]._id===i){if(t[o]._path===e)return t.splice(o,1),!0;t=t[o].children;break}return!1}s.error("path must be a string (eg. `dashboard.project`)")}function n(e){e||(e=r).sort(i);for(var t=0;t<e.length;t++){var a=e[t].children;a.length>1&&a.sort(i),a.length>0&&n(a)}}function a(e){var t=r;if(1===e.length)return t;e.pop();for(var n=0;n<e.length;n++){for(var a=e[n],i=!0,o=0;o<t.length;o++)if(t[o]._id===a){t=t[o].children,i=!1;break}if(i){var s={_id:a,_path:e.join("."),title:a,weight:1,children:[]};t.push(s),t=s.children}}return t}function i(e,t){return parseInt(e.weight)-parseInt(t.weight)}function o(e){var t="";return angular.isDefined(e.state)&&(t=e.state,angular.isDefined(e.stateParams)&&angular.isObject(e.stateParams)&&(t=t+"("+angular.toJson(e.stateParams)+")")),t}var s=angular.injector(["ng"]).get("$log"),r=[],l=this;l.saveItem=e,l.deleteItem=t,l.sortByWeight=n,this.$get=function(){function a(){r=[],b&&(b.vm.navigation=r)}function i(e,t){v={node:e,scope:t}}function o(){return v}function s(e){if(e){for(var t=0;t<r.length;t++)if(r[t]._id===e)return[r[t]];return null}return r}function l(e){return h(s(e))}function d(e){b=e}function c(e){f=e}function m(){return f}function u(e){E=e}function p(){return E}function g(){b.toggleFolded()}function h(e){for(var t=[],n=0;n<e.length;n++){var a=angular.copy(e[n]);a.children=[],t.push(a),e[n].children.length>0&&(t=t.concat(h(e[n].children)))}return t}var v=null,b=null,f=null,E=null;return{saveItem:e,deleteItem:t,sort:n,clearNavigation:a,setActiveItem:i,getActiveItem:o,getNavigation:s,getFlatNavigation:l,setNavigationScope:d,setFolded:c,getFolded:m,setFoldedOpen:u,getFoldedOpen:p,toggleFolded:g}}}function t(e,t){function n(){angular.element("body").toggleClass("ms-navigation-horizontal-mobile-menu-active")}var a=this;e.root?a.navigation=t.getNavigation(e.root):a.navigation=t.getNavigation(),a.toggleHorizontalMobileMenu=n,function(){t.sort()}()}function n(e,t,n,a){return{restrict:"E",scope:{folded:"=",root:"@"},controller:"MsNavigationController as vm",templateUrl:"app/core/directives/ms-navigation/templates/vertical.html",transclude:!0,compile:function(i){return i.addClass("ms-navigation"),function(i,o){function s(t){if(a.setFolded(t),t)e.$broadcast("msNavigation::collapse"),u.addClass("ms-navigation-folded"),r();else{var n=a.getActiveItem();n&&n.scope.$emit("msNavigation::stateMatched"),u.removeClass("ms-navigation-folded ms-navigation-folded-open"),d()}}function r(){o.parent().append(p),t(function(){p.on("mouseenter touchstart",c)})}function l(){u.find("#main").append(g),g.on("mouseenter touchstart",m)}function d(){g.remove()}function c(e){e&&e.preventDefault(),a.setFoldedOpen(!0);var t=a.getActiveItem();t&&t.scope.$emit("msNavigation::stateMatched"),u.addClass("ms-navigation-folded-open"),p.remove(),l()}function m(t){t&&t.preventDefault(),a.setFoldedOpen(!1),e.$broadcast("msNavigation::collapse"),u.removeClass("ms-navigation-folded-open"),g.remove(),r()}var u=angular.element("body"),p=angular.element('<div id="ms-navigation-fold-expander"></div>'),g=angular.element('<div id="ms-navigation-fold-collapser"></div>'),h=n("navigation");a.setNavigationScope(i),function(){null===a.getFolded()&&a.setFolded(i.folded),a.getFolded()&&(t(function(){e.$broadcast("msNavigation::collapse")}),u.addClass("ms-navigation-folded"),r())}(),i.$watch(function(){return h.isLockedOpen()},function(t,n){if(!angular.isUndefined(t)&&!angular.equals(t,n)&&a.getFolded())if(t)e.$broadcast("msNavigation::collapse");else{var i=a.getActiveItem();i&&i.scope.$emit("msNavigation::stateMatched")}}),i.$watch("folded",function(e,t){angular.isUndefined(e)||angular.equals(e,t)||s(e)}),i.toggleFolded=function(){s(!a.getFolded())},i.$on("$stateChangeStart",function(){h.close()}),i.$on("$destroy",function(){g.off("mouseenter touchstart"),p.off("mouseenter touchstart")})}}}}function a(e,t,n,a,i,o){function s(){m.collapsed?m.expand():m.collapse()}function r(){var t=m.element.children("ul"),n=t[0].offsetHeight;e.$evalAsync(function(){m.collapsed=!0,m.element.addClass("collapsing"),a.animate(t,{display:"block",height:n+"px"},{height:"0px"},m.animateHeightClass).then(function(){t.css({display:"",height:""}),m.element.removeClass("collapsing")}),e.$broadcast("msNavigation::collapse")})}function l(){var t=m.element.children("ul");t.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var i=t[0].offsetHeight;t.css({position:"",visibility:"",display:"",height:""}),e.$evalAsync(function(){m.collapsed=!1,m.element.addClass("expanding"),a.animate(t,{display:"block",height:"0px"},{height:i+"px"},m.animateHeightClass).then(function(){t.css({height:""}),m.element.removeClass("expanding")}),n.$broadcast("msNavigation::collapse",m.node._path)})}function d(){return m.node.class}function c(){return!(!angular.isDefined(m.node.hidden)||!angular.isFunction(m.node.hidden))&&m.node.hidden()}var m=this;m.element=t,m.node=e.node,m.hasChildren=void 0,m.collapsed=void 0,m.collapsable=void 0,m.group=void 0,m.animateHeightClass="animate-height",m.toggleCollapsed=s,m.collapse=r,m.expand=l,m.getClass=d,m.isHidden=c,function(){if(m.hasChildren=m.node.children.length>0,m.group=!(!angular.isDefined(m.node.group)||!0!==m.node.group),!m.hasChildren||m.group?m.collapsable=!1:m.collapsable=!(!angular.isUndefined(m.node.collapsable)&&"boolean"==typeof m.node.collapsable&&!0!==m.node.collapsable),m.collapsable?m.collapsed=!(!angular.isUndefined(m.node.collapsed)&&"boolean"==typeof m.node.collapsed&&!0!==m.node.collapsed):m.collapsed=!1,m.node.state===i.current.name||i.includes(m.node.state)){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(i.params)&&!angular.equals(m.node.stateParams,i.params))return;e.$emit("msNavigation::stateMatched"),o.setActiveItem(m.node,e)}e.$on("msNavigation::stateMatched",function(){m.collapsable&&m.collapsed&&e.$evalAsync(function(){m.collapsed=!1})}),e.$on("msNavigation::collapse",function(e,t){if(!m.collapsed&&m.collapsable)if(angular.isUndefined(t))m.collapse();else{var n=t.split("."),a=[],i=o.getActiveItem();if(i&&(a=i.node._path.split(".")),n.indexOf(m.node._id)>-1)return;if(a.indexOf(m.node._id)>-1)return;m.collapse()}}),e.$on("$stateChangeSuccess",function(){if(m.node.state===i.current.name){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(i.params)&&!angular.equals(m.node.stateParams,i.params))return;o.setActiveItem(m.node,e),n.$broadcast("msNavigation::collapse",m.node._path)}if(i.includes(m.node.state)){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(i.params)&&!angular.equals(m.node.stateParams,i.params))return;e.$emit("msNavigation::stateMatched")}})}()}function i(){return{restrict:"A",bindToController:{node:"=msNavigationNode"},controller:"MsNavigationNodeController as vm",compile:function(e){return e.addClass("ms-navigation-node"),function(e,t,n,a){t.addClass(a.getClass()),a.group&&t.addClass("group")}}}}function o(){return{restrict:"A",require:"^msNavigationNode",compile:function(e){return e.addClass("ms-navigation-item"),function(e,t,n,a){a.collapsable&&t.on("click",a.toggleCollapsed),e.$on("$destroy",function(){t.off("click")})}}}}function s(e){return{restrict:"E",scope:{root:"@"},controller:"MsNavigationController as vm",templateUrl:"app/core/directives/ms-navigation/templates/horizontal.html",transclude:!0,compile:function(t){return t.addClass("ms-navigation-horizontal"),function(t){e.setNavigationScope(t)}}}}function r(e,t,n,a,i){function o(){return s.node.class}var s=this;s.element=t,s.node=e.node,s.hasChildren=void 0,s.group=void 0,s.getClass=o,function(){if(s.isActive=!1,s.hasChildren=s.node.children.length>0,s.group=!(!angular.isDefined(s.node.group)||!0!==s.node.group),s.node.state===a.current.name||a.includes(s.node.state)){if(angular.isDefined(s.node.stateParams)&&angular.isDefined(a.params)&&!angular.equals(s.node.stateParams,a.params))return;e.$emit("msNavigation::stateMatched"),i.setActiveItem(s.node,e)}e.$on("msNavigation::stateMatched",function(){s.hasChildren&&e.$evalAsync(function(){s.isActive=!0})}),e.$on("msNavigation::clearActive",function(){if(s.hasChildren){var t=[],n=i.getActiveItem();n&&(t=n.node._path.split(".")),t.indexOf(s.node._id)>-1?e.$evalAsync(function(){s.isActive=!0}):e.$evalAsync(function(){s.isActive=!1})}}),e.$on("$stateChangeSuccess",function(){if(s.node.state===a.current.name||a.includes(s.node.state)){if(angular.isDefined(s.node.stateParams)&&angular.isDefined(a.params)&&!angular.equals(s.node.stateParams,a.params))return;i.setActiveItem(s.node,e),n.$broadcast("msNavigation::clearActive")}})}()}function l(){return{restrict:"A",bindToController:{node:"=msNavigationHorizontalNode"},controller:"MsNavigationHorizontalNodeController as vm",compile:function(e){return e.addClass("ms-navigation-horizontal-node"),function(e,t,n,a){t.addClass(a.getClass()),a.group&&t.addClass("group")}}}}function d(e){return{restrict:"A",require:"^msNavigationHorizontalNode",compile:function(t){return t.addClass("ms-navigation-horizontal-item"),function(t,n,a,i){function o(){i.hasChildren&&!e("gt-md")&&n.toggleClass("expanded")}n.on("click",o),t.$on("$destroy",function(){n.off("click")})}}}}t.$inject=["$scope","msNavigationService"],n.$inject=["$rootScope","$timeout","$mdSidenav","msNavigationService"],a.$inject=["$scope","$element","$rootScope","$animate","$state","msNavigationService"],s.$inject=["msNavigationService"],r.$inject=["$scope","$element","$rootScope","$state","msNavigationService"],d.$inject=["$mdMedia"],angular.module("app.core").provider("msNavigationService",e).controller("MsNavigationController",t).directive("msNavigation",n).controller("MsNavigationNodeController",a).directive("msNavigationNode",i).directive("msNavigationItem",o).directive("msNavigationHorizontal",s).controller("MsNavigationHorizontalNodeController",r).directive("msNavigationHorizontalNode",l).directive("msNavigationHorizontalItem",d)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){r.mobileBarActive=!r.mobileBarActive}var r=this;r.mobileBarActive=!1,r.toggleMobileBar=s}function t(){return{restrict:"E",scope:{},require:"msPhonebar",controller:"MsPhonebarController as MsPhonebar",bindToController:{},templateUrl:"app/core/directives/ms-phonebar/ms-phonebar.html",compile:function(e){return e.addClass("ms-phonebar"),function(e,t){}}}}e.$inject=["$scope","$cookies","$document","$timeout","$q","msNavigationService"],angular.module("app.core").controller("MsPhonebarController",e).directive("msPhonebar",t)}(),function(){"use strict";function e(){return{restrict:"A",scope:{msRandomClass:"="},link:function(e,t){var n=e.msRandomClass[Math.floor(Math.random()*e.msRandomClass.length)];t.addClass(n)}}}angular.module("app.core").directive("msRandomClass",e)}(),function(){"use strict";function e(){return{restrict:"A",link:function(e,t){var n=angular.element('<div class="ms-responsive-table-wrapper"></div>');t.after(n),n.append(t)}}}angular.module("app.core").directive("msResponsiveTable",e)}(),function(){"use strict";function e(){function e(e){t=angular.extend({},t,e)}var t={wheelSpeed:1,wheelPropagation:!1,swipePropagation:!0,minScrollbarLength:null,maxScrollbarLength:null,useBothWheelAxes:!1,useKeyboard:!0,suppressScrollX:!1,suppressScrollY:!1,scrollXMarginOffset:0,scrollYMarginOffset:0,stopPropagationOnClick:!0};this.config=e,this.$get=function(){function e(){return t}return{getConfig:e}}}function t(e,t,n,a){return{restrict:"AE",compile:function(i){if(!(a.getConfig("disableCustomScrollbars")||a.getConfig("disableCustomScrollbarsOnMobile")&&n.isMobile()))return i.addClass("ms-scroll"),function(n,a,i){function o(){PerfectScrollbar.update(a[0])}var s={};i.msScroll&&(s=n.$eval(i.msScroll)),s=angular.extend({},t.getConfig(),s),e(function(){PerfectScrollbar.initialize(a[0],s)},0),a.on("mouseenter",o),n.$watch(function(){return a.prop("scrollHeight")},function(e,t){angular.isUndefined(e)||angular.equals(e,t)||o()}),n.$watch(function(){return a.prop("scrollWidth")},function(e,t){angular.isUndefined(e)||angular.equals(e,t)||o()}),n.$on("$destroy",function(){a.off("mouseenter"),PerfectScrollbar.destroy(a[0])})}}}}t.$inject=["$timeout","msScrollConfig","msUtils","motionConfig"],angular.module("app.core").provider("msScrollConfig",e).directive("msScroll",t)}(),function(){"use strict";function e(e,t,n){function a(e){if(!p.collapsed){var t=null===e;(angular.isArray(e)||t)&&(p.selectedResultIndex=0,p.results=e)}}function i(){p.collapsed=!1,e.expand(),p.onExpand&&angular.isFunction(p.onExpand)&&p.onExpand()}function o(){p.query="",p.populateResults(null),p.collapsed=!0,e.collapse(),p.onCollapse&&angular.isFunction(p.onCollapse)&&p.onCollapse()}function s(){g&&p.collapse()}function r(e){e.preventDefault()}function l(e){var t=e.keyCode;switch([27,38,40].indexOf(t)>-1&&e.preventDefault(),t){case 13:if(!p.results)return;p.handleResultClick(p.results[p.selectedResultIndex]);break;case 27:p.collapse();break;case 38:p.selectedResultIndex-1>=0&&(p.selectedResultIndex--,p.ensureSelectedResultIsVisible());break;case 40:if(!p.results)return;p.selectedResultIndex+1<p.results.length&&(p.selectedResultIndex++,p.ensureSelectedResultIsVisible())}}function d(e){p.ignoreMouseEvents||(p.selectedResultIndex=e)}function c(){p.ignoreMouseEvents=!0,n.cancel(p.mouseEventIgnoreTimeout),p.mouseEventIgnoreTimeout=n(function(){p.ignoreMouseEvents=!1},250)}function m(e){p.onResultClick&&p.onResultClick({item:e}),p.collapse()}function u(){var e=t.find(".ms-search-bar-results"),n=angular.element(e.find(".result")[p.selectedResultIndex]);if(e&&n){var a=n.position().top-8,i=n.position().top+n.outerHeight()+8;p.temporarilyIgnoreMouseEvents(),e.scrollTop()>a&&e.scrollTop(a),i>e.height()+e.scrollTop()&&e.scrollTop(i-e.height())}}var p=this;p.collapsed=!0,p.query="",p.queryOptions={debounce:p.debounce||0};var g=!(!p.collapseOnBlur||"true"!=p.collapseOnBlur);p.resultsLoading=!1,p.results=null,p.selectedResultIndex=0,p.ignoreMouseEvents=!1,p.populateResults=a,p.expand=i,p.collapse=o,p.blurCollapse=s,p.absorbEvent=r,p.handleKeydown=l,p.handleMouseenter=d,p.temporarilyIgnoreMouseEvents=c,p.handleResultClick=m,p.ensureSelectedResultIsVisible=u,function(){e.$watch("MsSearchBar.query",function(t,n){if(!angular.isUndefined(t)&&!angular.equals(t,n)&&!p.collapsed){var a=e.$parent.$eval(p.onSearch,{query:t}),i=angular.isArray(a),o=a&&!!a.then;i&&p.populateResults(a),o&&(p.resultsLoading=!0,a.then(function(e){p.populateResults(e)},function(){p.populateResults([])}).finally(function(){p.resultsLoading=!1}))}})}()}function t(e){return{restrict:"E",scope:{},require:"msSearchBar",controller:"MsSearchBarController as MsSearchBar",bindToController:{debounce:"=?",onSearch:"@",onResultClick:"&?",onExpand:"&?",onCollapse:"&?",collapseOnBlur:"@"},templateUrl:"app/core/directives/ms-search-bar/ms-search-bar.html",compile:function(t){return t.addClass("ms-search-bar"),function(t,n){function a(){n.addClass("expanded"),s.addClass("ms-search-bar-expanded"),o.focus()}function i(){n.removeClass("expanded"),s.removeClass("ms-search-bar-expanded")}var o,s=e.find("body");t.collapse=i,t.expand=a,function(){o=n.find("#ms-search-bar-input")}()}}}}e.$inject=["$scope","$element","$timeout"],t.$inject=["$document"],angular.module("app.core").controller("MsSearchBarController",e).directive("msSearchBar",t)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){for(var e=[],t=o.getFlatNavigation(),n=i.defer(),s=0;s<t.length;s++)t[s].uisref&&e.push(t[s]);if(f.query){e=e.filter(function(e){if(angular.lowercase(e.title).search(angular.lowercase(f.query))>-1)return!0});for(var r=0;r<e.length;r++){e[r].hasShortcut=!1;for(var l=0;l<f.shortcuts.length;l++)if(f.shortcuts[l]._id===e[r]._id){e[r].hasShortcut=!0;break}}}else f.shortcuts.length>0&&(e=f.shortcuts);return f.selectedResultIndex=0,a(function(){n.resolve(e)},250),n.promise}function r(){var e=i.defer(),n=angular.fromJson(t.get("motion.shortcuts"));return angular.isUndefined(n)&&(n=[{title:"Agents",icon:"icon-account-multiple",state:"app.staff.agents",weight:5,children:[],uisref:"app.staff.agents",hasShortcut:!0},{title:"License",icon:"icon-cog",state:"app.settings.license",weight:10,children:[],uisref:"app.settings.license",hasShortcut:!0}],t.put("motion.shortcuts",angular.toJson(n))),e.resolve(n),e.promise}function l(){var e=i.defer();return t.put("motion.shortcuts",angular.toJson(f.shortcuts)),a(function(){e.resolve({success:!0})},250),e.promise}function d(e){e.hasShortcut=!0,f.shortcuts.push(e),f.saveShortcuts()}function c(e){e.hasShortcut=!1;for(var t=0;t<f.shortcuts.length;t++)f.shortcuts[t]._id===e._id&&(f.shortcuts.splice(t,1),f.query||(0===f.shortcuts.length?f.results=null:t>=f.shortcuts.length&&(f.selectedResultIndex=f.shortcuts.length-1)));f.saveShortcuts()}function m(e){e.hasShortcut?f.removeShortcut(e):f.addShortcut(e)}function u(e){e.preventDefault()}function p(e){var t=e.keyCode;switch([38,40].indexOf(t)>-1&&e.preventDefault(),t){case 13:f.handleResultClick(f.results[f.selectedResultIndex]);break;case 38:f.selectedResultIndex-1>=0&&(f.selectedResultIndex--,f.ensureSelectedResultIsVisible());break;case 40:f.selectedResultIndex+1<f.results.length&&(f.selectedResultIndex++,f.ensureSelectedResultIsVisible())}}function g(e){f.ignoreMouseEvents||(f.selectedResultIndex=e)}function h(){f.ignoreMouseEvents=!0,a.cancel(f.mouseEventIgnoreTimeout),f.mouseEventIgnoreTimeout=a(function(){f.ignoreMouseEvents=!1},250)}function v(){var e=n.find("#ms-shortcut-add-menu").find(".results"),t=angular.element(e.find(".result")[f.selectedResultIndex]);if(e&&t){var a=t.position().top-8,i=t.position().top+t.outerHeight()+8;f.temporarilyIgnoreMouseEvents(),e.scrollTop()>a&&e.scrollTop(a),i>e.height()+e.scrollTop()&&e.scrollTop(i-e.height())}}function b(){f.mobileBarActive=!f.mobileBarActive}var f=this;f.query="",f.queryOptions={debounce:300},f.resultsLoading=!1,f.selectedResultIndex=0,f.ignoreMouseEvents=!1,f.mobileBarActive=!1,f.results=null,f.shortcuts=[],f.sortableOptions={ghostClass:"ghost",forceFallback:!0,fallbackClass:"dragging",onSort:function(){f.saveShortcuts()}},f.populateResults=s,f.loadShortcuts=r,f.saveShortcuts=l,f.addShortcut=d,f.removeShortcut=c,f.handleResultClick=m,f.absorbEvent=u,f.handleKeydown=p,f.handleMouseenter=g,f.temporarilyIgnoreMouseEvents=h,f.ensureSelectedResultIsVisible=v,f.toggleMobileBar=b,function(){f.loadShortcuts().then(function(e){f.shortcuts=e,f.shortcuts.length>0&&(f.results=e)}),e.$watch("MsShortcuts.query",function(e,t){angular.isUndefined(e)||angular.equals(e,t)||(f.resultsLoading=!0,f.populateResults().then(function(e){f.results=e},function(){f.results=[]}).finally(function(){f.resultsLoading=!1}))})}()}function t(){return{restrict:"E",scope:{},require:"msShortcuts",controller:"MsShortcutsController as MsShortcuts",bindToController:{},templateUrl:"app/core/directives/ms-shortcuts/ms-shortcuts.html",compile:function(e){return e.addClass("ms-shortcuts"),function(e,t){}}}}e.$inject=["$scope","$cookies","$document","$timeout","$q","msNavigationService"],angular.module("app.core").controller("MsShortcutsController",e).directive("msShortcuts",t)}(),function(){"use strict";function e(){return{restrict:"A",require:"^mdSidenav",link:function(e,t,n,a){e.$watch(function(){return a.isOpen()&&!a.isLockedOpen()},function(e){angular.isUndefined(e)||(t.parent().toggleClass("full-height",e),angular.element("html").toggleClass("sidenav-open",e))})}}}angular.module("app.core").directive("msSidenavHelper",e)}(),function(){"use strict";function e(e){return{restrict:"E",link:function(t,n){var a=t.$on("msSplashScreen::remove",function(){e.leave(n).then(function(){a(),t=n=null})})}}}e.$inject=["$animate"],angular.module("app.core").directive("msSplashScreen",e)}(),function(){"use strict";function e(e){function t(e){C.orientation=e||"horizontal"}function n(e){C.mainForm=e}function a(e,t,n){var a={element:e,scope:t,form:n,stepNumber:t.step||C.steps.length+1,stepTitle:t.stepTitle,stepTitleTranslate:t.stepTitleTranslate};return C.steps.push(a),C.steps.sort(function(e,t){return e.stepNumber-t.stepNumber}),a}function i(){C.setCurrentStep(C.currentStepNumber)}function o(){e(function(){for(var e=0;e<C.steps.length;e++)C.steps[e].form.$setPristine(),C.steps[e].form.$setUntouched();C.mainForm.$setPristine(),C.mainForm.$setUntouched(),c()})}function s(e){if(y(e))if(C.currentStepNumber=e,"horizontal"===C.orientation){for(var t=0;t<C.steps.length;t++)C.steps[t].element.hide();C.steps[C.currentStepNumber-1].element.show()}else if("vertical"===C.orientation){for(var n=0;n<C.steps.length;n++)C.steps[n].element.find(".ms-stepper-step-content").hide();C.steps[C.currentStepNumber-1].element.find(".ms-stepper-step-content").show()}}function r(e){b(e)||C.setCurrentStep(e)}function l(){for(var e=C.currentStepNumber-1,t=e;t>=1;t--)if(!b(t)){e=t;break}C.setCurrentStep(e)}function d(){for(var e=C.currentStepNumber+1,t=e;t<=C.steps.length;t++)if(!b(t)){e=t;break}C.setCurrentStep(e)}function c(){C.setCurrentStep(1)}function m(){C.setCurrentStep(C.steps.length)}function u(){return 1===C.currentStepNumber}function p(){return C.currentStepNumber===C.steps.length}function g(e){return y(e)?C.currentStepNumber===e:null}function h(e){if(!y(e))return null;for(var t=!1,n=1;n<e;n++)if(!E(n)){t=!0;break}return t}function v(e){return y(e)?C.steps[e-1].scope.optionalStep:null}function b(e){return y(e)?!!C.steps[e-1].scope.hideStep:null}function f(e){return!b(e.stepNumber)}function E(e){return y(e)?!!v(e)||C.steps[e-1].form.$valid:null}function y(e){return!(angular.isUndefined(e)||e<1||e>C.steps.length)}function A(){return C.mainForm.$valid}var C=this;C.mainForm=void 0,C.orientation="horizontal",C.steps=[],C.currentStep=void 0,C.currentStepNumber=1,C.setOrientation=t,C.registerMainForm=n,C.registerStep=a,C.setupSteps=i,C.resetForm=o,C.setCurrentStep=s,C.gotoStep=r,C.gotoPreviousStep=l,C.gotoNextStep=d,C.gotoFirstStep=c,C.gotoLastStep=m,C.isFirstStep=u,C.isLastStep=p,C.isStepCurrent=g,C.isStepDisabled=h,C.isStepOptional=v,C.isStepHidden=b,C.filterHiddenStep=f,C.isStepValid=E,C.isStepNumberValid=y,C.isFormValid=A}function t(){return{restrict:"A",scope:{},require:["form","msHorizontalStepper"],priority:1001,controller:"MsStepperController as MsStepper",bindToController:{model:"=ngModel"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/horizontal/horizontal.html",compile:function(e){return e.addClass("ms-stepper"),function(e,t,n,a){var i=a[0],o=a[1];o.setOrientation("horizontal"),o.registerMainForm(i),o.setupSteps()}}}}function n(){return{restrict:"E",require:["form","^msHorizontalStepper"],priority:1e3,scope:{step:"=?",stepTitle:"=?",stepTitleTranslate:"=?",optionalStep:"=?",hideStep:"=?"},compile:function(e){return e.addClass("ms-stepper-step"),function(e,t,n,a){var i=a[0],o=a[1];e.optionalStep=angular.isDefined(n.optionalStep),o.registerStep(t,e,i),t.hide()}}}}function a(e){return{restrict:"A",scope:{},require:["form","msVerticalStepper"],priority:1001,controller:"MsStepperController as MsStepper",bindToController:{model:"=ngModel"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/vertical/vertical.html",compile:function(t){return t.addClass("ms-stepper"),function(t,n,a,i){var o=i[0],s=i[1];e(function(){s.setOrientation("vertical"),s.registerMainForm(o),s.setupSteps()})}}}}function i(){return{restrict:"E",require:["form","^msVerticalStepper"],priority:1e3,scope:{step:"=?",stepTitle:"=?",stepTitleTranslate:"=?",optionalStep:"=?",hideStep:"=?"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/vertical/step/vertical-step.html",compile:function(e){return e.addClass("ms-stepper-step"),function(e,t,n,a){var i=a[0],o=a[1];e.optionalStep=angular.isDefined(n.optionalStep),e.stepInfo=o.registerStep(t,e,i),e.MsStepper=o,t.find(".ms-stepper-step-content").hide()}}}}e.$inject=["$timeout"],a.$inject=["$timeout"],angular.module("app.core").controller("MsStepperController",e).directive("msHorizontalStepper",t).directive("msHorizontalStepperStep",n).directive("msVerticalStepper",a).directive("msVerticalStepperStep",i)}(),function(){"use strict";function e(){function e(e){n.scrollEl=e}function t(){return n.scrollEl}var n=this;n.scrollEl=void 0,n.setScrollEl=e,n.getScrollEl=t}function t(){return{scope:{msTimeline:"=?",loadMore:"&?msTimelineLoadMore"},controller:"MsTimelineController",compile:function(e){return e.addClass("ms-timeline"),function(e,t,n,a){function i(){d.scrollTop()+d.height()+c>r.position().top&&(r.addClass("show"),s(),e.loadMore().then(function(){r.removeClass("show"),o()},function(){r.remove()}))}function o(){d.on("scroll",i)}function s(){d.off("scroll",i)}var r=angular.element('<div class="ms-timeline-loader md-accent-bg md-whiteframe-4dp"><span class="spinner animate-rotate"></span></div>');t.append(r);var l={scrollEl:"#content"};l=angular.extend(l,e.msTimeline,{});var d=angular.element(l.scrollEl);a.setScrollEl(d);var c=144;o(),e.$on("$destroy",function(){s()})}}}}function n(e,t){return{scope:!0,require:"^msTimeline",compile:function(n){return n.addClass("ms-timeline-item").addClass("hidden"),function(n,a,i,o){function s(e){var n=t.defer(),a=e.find("img");return a.length>0?a.on("load",function(){n.resolve("Image is loaded")}):n.resolve("No images"),n.promise}function r(){m.scrollTop()+m.height()>a.position().top+l&&(e(function(){c=!0}),m.off("scroll",r))}var l=72,d=!1,c=!1,m=o.getScrollEl();!function(){a.find("ms-card")?n.$on("msCard::cardTemplateLoaded",function(t,n){s(angular.element(n[0])).then(function(){e(function(){d=!0})})}):s(a).then(function(){e(function(){d=!0})}),m.on("scroll",r),r()}();var u=n.$watch(function(){return d&&c},function(e,t){angular.equals(e,t)||e&&(a.removeClass("hidden").addClass("animate"),u())},!0)}}}}n.$inject=["$timeout","$q"],angular.module("app.core").controller("MsTimelineController",e).directive("msTimeline",t).directive("msTimelineItem",n)}(),function(){"use strict";function e(){return{restrict:"E",scope:{ngModel:"="},controller:["$scope",function(e){e.timezone={"Europe/Andorra":{name:"Europe/Andorra",utcOffset:60,offsetStr:"+01:00",countries:["AD"]},"Asia/Dubai":{name:"Asia/Dubai",utcOffset:240,offsetStr:"+04:00",countries:["AE","OM"]},"Asia/Kabul":{name:"Asia/Kabul",utcOffset:270,offsetStr:"+04:30",countries:["AF"]},"Europe/Tirane":{name:"Europe/Tirane",utcOffset:60,offsetStr:"+01:00",countries:["AL"]},"Asia/Yerevan":{name:"Asia/Yerevan",utcOffset:240,offsetStr:"+04:00",countries:["AM"]},"Antarctica/Rothera":{name:"Antarctica/Rothera",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},"Antarctica/Palmer":{name:"Antarctica/Palmer",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},"Antarctica/Mawson":{name:"Antarctica/Mawson",utcOffset:300,offsetStr:"+05:00",countries:["AQ"]},"Antarctica/Davis":{name:"Antarctica/Davis",utcOffset:420,offsetStr:"+07:00",countries:["AQ"]},"Antarctica/Casey":{name:"Antarctica/Casey",utcOffset:480,offsetStr:"+08:00",countries:["AQ"]},"Antarctica/Vostok":{name:"Antarctica/Vostok",utcOffset:360,offsetStr:"+06:00",countries:["AQ"]},"Antarctica/DumontDUrville":{name:"Antarctica/DumontDUrville",utcOffset:600,offsetStr:"+10:00",countries:["AQ"]},"Antarctica/Syowa":{name:"Antarctica/Syowa",utcOffset:180,offsetStr:"+03:00",countries:["AQ"]},"Antarctica/Troll":{name:"Antarctica/Troll",utcOffset:0,offsetStr:"+00:00",countries:["AQ"]},"America/Argentina/Buenos_Aires":{name:"America/Argentina/Buenos_Aires",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Cordoba":{name:"America/Argentina/Cordoba",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Salta":{name:"America/Argentina/Salta",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Jujuy":{name:"America/Argentina/Jujuy",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Tucuman":{name:"America/Argentina/Tucuman",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Catamarca":{name:"America/Argentina/Catamarca",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/La_Rioja":{name:"America/Argentina/La_Rioja",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/San_Juan":{name:"America/Argentina/San_Juan",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Mendoza":{name:"America/Argentina/Mendoza",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/San_Luis":{name:"America/Argentina/San_Luis",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Rio_Gallegos":{name:"America/Argentina/Rio_Gallegos",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Ushuaia":{name:"America/Argentina/Ushuaia",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"Pacific/Pago_Pago":{name:"Pacific/Pago_Pago",utcOffset:-660,offsetStr:"-11:00",countries:["AS","UM"]},"Europe/Vienna":{name:"Europe/Vienna",utcOffset:60,offsetStr:"+01:00",countries:["AT"]},"Australia/Lord_Howe":{name:"Australia/Lord_Howe",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Antarctica/Macquarie":{name:"Antarctica/Macquarie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Hobart":{name:"Australia/Hobart",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Currie":{name:"Australia/Currie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Melbourne":{name:"Australia/Melbourne",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Sydney":{name:"Australia/Sydney",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Broken_Hill":{name:"Australia/Broken_Hill",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},"Australia/Brisbane":{name:"Australia/Brisbane",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},"Australia/Lindeman":{name:"Australia/Lindeman",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},"Australia/Adelaide":{name:"Australia/Adelaide",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},"Australia/Darwin":{name:"Australia/Darwin",utcOffset:570,offsetStr:"+09:30",countries:["AU"]},"Australia/Perth":{name:"Australia/Perth",utcOffset:480,offsetStr:"+08:00",countries:["AU"]},"Australia/Eucla":{name:"Australia/Eucla",utcOffset:525,offsetStr:"+08:45",countries:["AU"]},"Asia/Baku":{name:"Asia/Baku",utcOffset:240,offsetStr:"+04:00",countries:["AZ"]},"America/Barbados":{name:"America/Barbados",utcOffset:-240,offsetStr:"-04:00",countries:["BB"]},"Asia/Dhaka":{name:"Asia/Dhaka",utcOffset:360,offsetStr:"+06:00",countries:["BD"]},"Europe/Brussels":{name:"Europe/Brussels",utcOffset:60,offsetStr:"+01:00",countries:["BE"]},"Europe/Sofia":{name:"Europe/Sofia",utcOffset:120,offsetStr:"+02:00",countries:["BG"]},"Atlantic/Bermuda":{name:"Atlantic/Bermuda",utcOffset:-240,offsetStr:"-04:00",countries:["BM"]},"Asia/Brunei":{name:"Asia/Brunei",utcOffset:480,offsetStr:"+08:00",countries:["BN"]},"America/La_Paz":{name:"America/La_Paz",utcOffset:-240,offsetStr:"-04:00",countries:["BO"]},"America/Noronha":{name:"America/Noronha",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},"America/Belem":{name:"America/Belem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Fortaleza":{name:"America/Fortaleza",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Recife":{name:"America/Recife",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Araguaina":{name:"America/Araguaina",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Maceio":{name:"America/Maceio",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Bahia":{name:"America/Bahia",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Sao_Paulo":{name:"America/Sao_Paulo",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},"America/Campo_Grande":{name:"America/Campo_Grande",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Cuiaba":{name:"America/Cuiaba",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Santarem":{name:"America/Santarem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Porto_Velho":{name:"America/Porto_Velho",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},"America/Boa_Vista":{name:"America/Boa_Vista",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},"America/Manaus":{name:"America/Manaus",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},"America/Eirunepe":{name:"America/Eirunepe",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},"America/Rio_Branco":{name:"America/Rio_Branco",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},"America/Nassau":{name:"America/Nassau",utcOffset:-300,offsetStr:"-05:00",countries:["BS"]},"Asia/Thimphu":{name:"Asia/Thimphu",utcOffset:360,offsetStr:"+06:00",countries:["BT"]},"Europe/Minsk":{name:"Europe/Minsk",utcOffset:180,offsetStr:"+03:00",countries:["BY"]},"America/Belize":{name:"America/Belize",utcOffset:-360,offsetStr:"-06:00",countries:["BZ"]},"America/St_Johns":{name:"America/St_Johns",utcOffset:-210,offsetStr:"-03:30",countries:["CA"]},"America/Halifax":{name:"America/Halifax",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Glace_Bay":{name:"America/Glace_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Moncton":{name:"America/Moncton",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Goose_Bay":{name:"America/Goose_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Blanc-Sablon":{name:"America/Blanc-Sablon",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Toronto":{name:"America/Toronto",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Nipigon":{name:"America/Nipigon",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Thunder_Bay":{name:"America/Thunder_Bay",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Iqaluit":{name:"America/Iqaluit",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Pangnirtung":{name:"America/Pangnirtung",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Resolute":{name:"America/Resolute",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Atikokan":{name:"America/Atikokan",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Rankin_Inlet":{name:"America/Rankin_Inlet",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Winnipeg":{name:"America/Winnipeg",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Rainy_River":{name:"America/Rainy_River",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Regina":{name:"America/Regina",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Swift_Current":{name:"America/Swift_Current",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Edmonton":{name:"America/Edmonton",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Cambridge_Bay":{name:"America/Cambridge_Bay",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Yellowknife":{name:"America/Yellowknife",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Inuvik":{name:"America/Inuvik",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Creston":{name:"America/Creston",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Dawson_Creek":{name:"America/Dawson_Creek",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Fort_Nelson":{name:"America/Fort_Nelson",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Vancouver":{name:"America/Vancouver",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},"America/Whitehorse":{name:"America/Whitehorse",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},"America/Dawson":{name:"America/Dawson",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},"Indian/Cocos":{name:"Indian/Cocos",utcOffset:390,offsetStr:"+06:30",countries:["CC"]},"Europe/Zurich":{name:"Europe/Zurich",utcOffset:60,offsetStr:"+01:00",countries:["CH","DE","LI"]},"Africa/Abidjan":{name:"Africa/Abidjan",utcOffset:0,offsetStr:"+00:00",countries:["CI","BF","GM","GN","ML","MR","SH","SL","SN","ST","TG"]},"Pacific/Rarotonga":{name:"Pacific/Rarotonga",utcOffset:-600,offsetStr:"-10:00",countries:["CK"]},"America/Santiago":{name:"America/Santiago",utcOffset:-180,offsetStr:"-03:00",countries:["CL"]},"Pacific/Easter":{name:"Pacific/Easter",utcOffset:-300,offsetStr:"-05:00",countries:["CL"]},"Asia/Shanghai":{name:"Asia/Shanghai",utcOffset:480,offsetStr:"+08:00",countries:["CN"]},"Asia/Urumqi":{name:"Asia/Urumqi",utcOffset:360,offsetStr:"+06:00",countries:["CN"]},"America/Bogota":{name:"America/Bogota",utcOffset:-300,offsetStr:"-05:00",countries:["CO"]},"America/Costa_Rica":{name:"America/Costa_Rica",utcOffset:-360,offsetStr:"-06:00",countries:["CR"]},"America/Havana":{name:"America/Havana",utcOffset:-300,offsetStr:"-05:00",countries:["CU"]},"Atlantic/Cape_Verde":{name:"Atlantic/Cape_Verde",utcOffset:-60,offsetStr:"-01:00",countries:["CV"]},"America/Curacao":{name:"America/Curacao",utcOffset:-240,offsetStr:"-04:00",countries:["CW","AW","BQ","SX"]},"Indian/Christmas":{name:"Indian/Christmas",utcOffset:420,offsetStr:"+07:00",countries:["CX"]},"Asia/Nicosia":{name:"Asia/Nicosia",utcOffset:120,offsetStr:"+02:00",countries:["CY"]},"Europe/Prague":{name:"Europe/Prague",utcOffset:60,offsetStr:"+01:00",countries:["CZ","SK"]},"Europe/Berlin":{name:"Europe/Berlin",utcOffset:60,offsetStr:"+01:00",countries:["DE"]},"Europe/Copenhagen":{name:"Europe/Copenhagen",utcOffset:60,offsetStr:"+01:00",countries:["DK"]},"America/Santo_Domingo":{name:"America/Santo_Domingo",utcOffset:-240,offsetStr:"-04:00",countries:["DO"]},"Africa/Algiers":{name:"Africa/Algiers",utcOffset:60,offsetStr:"+01:00",countries:["DZ"]},"America/Guayaquil":{name:"America/Guayaquil",utcOffset:-300,offsetStr:"-05:00",countries:["EC"]},"Pacific/Galapagos":{name:"Pacific/Galapagos",utcOffset:-360,offsetStr:"-06:00",countries:["EC"]},"Europe/Tallinn":{name:"Europe/Tallinn",utcOffset:120,offsetStr:"+02:00",countries:["EE"]},"Africa/Cairo":{name:"Africa/Cairo",utcOffset:120,offsetStr:"+02:00",countries:["EG"]},"Africa/El_Aaiun":{name:"Africa/El_Aaiun",utcOffset:0,offsetStr:"+00:00",countries:["EH"]},"Europe/Madrid":{name:"Europe/Madrid",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},"Africa/Ceuta":{name:"Africa/Ceuta",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},"Atlantic/Canary":{name:"Atlantic/Canary",utcOffset:0,offsetStr:"+00:00",countries:["ES"]},"Europe/Helsinki":{name:"Europe/Helsinki",utcOffset:120,offsetStr:"+02:00",countries:["FI","AX"]},"Pacific/Fiji":{name:"Pacific/Fiji",utcOffset:720,offsetStr:"+12:00",countries:["FJ"]},"Atlantic/Stanley":{name:"Atlantic/Stanley",utcOffset:-180,offsetStr:"-03:00",countries:["FK"]},"Pacific/Chuuk":{name:"Pacific/Chuuk",utcOffset:600,offsetStr:"+10:00",countries:["FM"]},"Pacific/Pohnpei":{name:"Pacific/Pohnpei",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},"Pacific/Kosrae":{name:"Pacific/Kosrae",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},"Atlantic/Faroe":{name:"Atlantic/Faroe",utcOffset:0,offsetStr:"+00:00",countries:["FO"]},"Europe/Paris":{name:"Europe/Paris",utcOffset:60,offsetStr:"+01:00",countries:["FR"]},"Europe/London":{name:"Europe/London",utcOffset:0,offsetStr:"+00:00",countries:["GB","GG","IM","JE"]},"Asia/Tbilisi":{name:"Asia/Tbilisi",utcOffset:240,offsetStr:"+04:00",countries:["GE"]},"America/Cayenne":{name:"America/Cayenne",utcOffset:-180,offsetStr:"-03:00",countries:["GF"]},"Africa/Accra":{name:"Africa/Accra",utcOffset:0,offsetStr:"+00:00",countries:["GH"]},"Europe/Gibraltar":{name:"Europe/Gibraltar",utcOffset:60,offsetStr:"+01:00",countries:["GI"]},"America/Godthab":{name:"America/Godthab",utcOffset:-180,offsetStr:"-03:00",countries:["GL"]},"America/Danmarkshavn":{name:"America/Danmarkshavn",utcOffset:0,offsetStr:"+00:00",countries:["GL"]},"America/Scoresbysund":{name:"America/Scoresbysund",utcOffset:-60,offsetStr:"-01:00",countries:["GL"]},"America/Thule":{name:"America/Thule",utcOffset:-240,offsetStr:"-04:00",countries:["GL"]},"Europe/Athens":{name:"Europe/Athens",utcOffset:120,offsetStr:"+02:00",countries:["GR"]},"Atlantic/South_Georgia":{name:"Atlantic/South_Georgia",utcOffset:-120,offsetStr:"-02:00",countries:["GS"]},"America/Guatemala":{name:"America/Guatemala",utcOffset:-360,offsetStr:"-06:00",countries:["GT"]},"Pacific/Guam":{name:"Pacific/Guam",utcOffset:600,offsetStr:"+10:00",countries:["GU","MP"]},"Africa/Bissau":{name:"Africa/Bissau",utcOffset:0,offsetStr:"+00:00",countries:["GW"]},"America/Guyana":{name:"America/Guyana",utcOffset:-240,offsetStr:"-04:00",countries:["GY"]},"Asia/Hong_Kong":{name:"Asia/Hong_Kong",utcOffset:480,offsetStr:"+08:00",countries:["HK"]},"America/Tegucigalpa":{name:"America/Tegucigalpa",utcOffset:-360,offsetStr:"-06:00",countries:["HN"]},"America/Port-au-Prince":{name:"America/Port-au-Prince",utcOffset:-300,offsetStr:"-05:00",countries:["HT"]},"Europe/Budapest":{name:"Europe/Budapest",utcOffset:60,offsetStr:"+01:00",countries:["HU"]},"Asia/Jakarta":{name:"Asia/Jakarta",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},"Asia/Pontianak":{name:"Asia/Pontianak",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},"Asia/Makassar":{name:"Asia/Makassar",utcOffset:480,offsetStr:"+08:00",countries:["ID"]},"Asia/Jayapura":{name:"Asia/Jayapura",utcOffset:540,offsetStr:"+09:00",countries:["ID"]},"Europe/Dublin":{name:"Europe/Dublin",utcOffset:0,offsetStr:"+00:00",countries:["IE"]},"Asia/Jerusalem":{name:"Asia/Jerusalem",utcOffset:120,offsetStr:"+02:00",countries:["IL"]},"Asia/Kolkata":{name:"Asia/Kolkata",utcOffset:330,offsetStr:"+05:30",countries:["IN"]},"Indian/Chagos":{name:"Indian/Chagos",utcOffset:360,offsetStr:"+06:00",countries:["IO"]},"Asia/Baghdad":{name:"Asia/Baghdad",utcOffset:180,offsetStr:"+03:00",countries:["IQ"]},"Asia/Tehran":{name:"Asia/Tehran",utcOffset:210,offsetStr:"+03:30",countries:["IR"]},"Atlantic/Reykjavik":{name:"Atlantic/Reykjavik",utcOffset:0,offsetStr:"+00:00",countries:["IS"]},"Europe/Rome":{name:"Europe/Rome",utcOffset:60,offsetStr:"+01:00",countries:["IT","SM","VA"]},"America/Jamaica":{name:"America/Jamaica",utcOffset:-300,offsetStr:"-05:00",countries:["JM"]},"Asia/Amman":{name:"Asia/Amman",utcOffset:120,offsetStr:"+02:00",countries:["JO"]},"Asia/Tokyo":{name:"Asia/Tokyo",utcOffset:540,offsetStr:"+09:00",countries:["JP"]},"Africa/Nairobi":{name:"Africa/Nairobi",utcOffset:180,offsetStr:"+03:00",countries:["KE","DJ","ER","ET","KM","MG","SO","TZ","UG","YT"]},"Asia/Bishkek":{name:"Asia/Bishkek",utcOffset:360,offsetStr:"+06:00",countries:["KG"]},"Pacific/Tarawa":{name:"Pacific/Tarawa",utcOffset:720,offsetStr:"+12:00",countries:["KI"]},"Pacific/Enderbury":{name:"Pacific/Enderbury",utcOffset:780,offsetStr:"+13:00",countries:["KI"]},"Pacific/Kiritimati":{name:"Pacific/Kiritimati",utcOffset:840,offsetStr:"+14:00",countries:["KI"]},"Asia/Pyongyang":{name:"Asia/Pyongyang",utcOffset:510,offsetStr:"+08:30",countries:["KP"]},"Asia/Seoul":{name:"Asia/Seoul",utcOffset:540,offsetStr:"+09:00",countries:["KR"]},"America/Cayman":{name:"America/Cayman",utcOffset:-300,offsetStr:"-05:00",countries:["KY"]},"Asia/Almaty":{name:"Asia/Almaty",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},"Asia/Qyzylorda":{name:"Asia/Qyzylorda",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},"Asia/Aqtobe":{name:"Asia/Aqtobe",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},"Asia/Aqtau":{name:"Asia/Aqtau",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},"Asia/Oral":{name:"Asia/Oral",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},"Asia/Beirut":{name:"Asia/Beirut",utcOffset:120,offsetStr:"+02:00",countries:["LB"]},"Asia/Colombo":{name:"Asia/Colombo",utcOffset:330,offsetStr:"+05:30",countries:["LK"]},"Africa/Monrovia":{name:"Africa/Monrovia",utcOffset:0,offsetStr:"+00:00",countries:["LR"]},"Europe/Vilnius":{name:"Europe/Vilnius",utcOffset:120,offsetStr:"+02:00",countries:["LT"]},"Europe/Luxembourg":{name:"Europe/Luxembourg",utcOffset:60,offsetStr:"+01:00",countries:["LU"]},"Europe/Riga":{name:"Europe/Riga",utcOffset:120,offsetStr:"+02:00",countries:["LV"]},"Africa/Tripoli":{name:"Africa/Tripoli",utcOffset:120,offsetStr:"+02:00",countries:["LY"]},"Africa/Casablanca":{name:"Africa/Casablanca",utcOffset:0,offsetStr:"+00:00",countries:["MA"]},"Europe/Monaco":{name:"Europe/Monaco",utcOffset:60,offsetStr:"+01:00",countries:["MC"]},"Europe/Chisinau":{name:"Europe/Chisinau",utcOffset:120,offsetStr:"+02:00",countries:["MD"]},"Pacific/Majuro":{name:"Pacific/Majuro",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},"Pacific/Kwajalein":{name:"Pacific/Kwajalein",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},"Asia/Rangoon":{name:"Asia/Rangoon",utcOffset:390,offsetStr:"+06:30",countries:["MM"]},"Asia/Ulaanbaatar":{name:"Asia/Ulaanbaatar",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},"Asia/Hovd":{name:"Asia/Hovd",utcOffset:420,offsetStr:"+07:00",countries:["MN"]},"Asia/Choibalsan":{name:"Asia/Choibalsan",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},"Asia/Macau":{name:"Asia/Macau",utcOffset:480,offsetStr:"+08:00",countries:["MO"]},"America/Martinique":{name:"America/Martinique",utcOffset:-240,offsetStr:"-04:00",countries:["MQ"]},"Europe/Malta":{name:"Europe/Malta",utcOffset:60,offsetStr:"+01:00",countries:["MT"]},"Indian/Mauritius":{name:"Indian/Mauritius",utcOffset:240,offsetStr:"+04:00",countries:["MU"]},"Indian/Maldives":{name:"Indian/Maldives",utcOffset:300,offsetStr:"+05:00",countries:["MV"]},"America/Mexico_City":{name:"America/Mexico_City",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"America/Cancun":{name:"America/Cancun",utcOffset:-300,offsetStr:"-05:00",countries:["MX"]},"America/Merida":{name:"America/Merida",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"America/Monterrey":{name:"America/Monterrey",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"America/Matamoros":{name:"America/Matamoros",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"America/Mazatlan":{name:"America/Mazatlan",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},"America/Chihuahua":{name:"America/Chihuahua",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},"America/Ojinaga":{name:"America/Ojinaga",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},"America/Hermosillo":{name:"America/Hermosillo",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},"America/Tijuana":{name:"America/Tijuana",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},"America/Santa_Isabel":{name:"America/Santa_Isabel",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},"America/Bahia_Banderas":{name:"America/Bahia_Banderas",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"Asia/Kuala_Lumpur":{name:"Asia/Kuala_Lumpur",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},"Asia/Kuching":{name:"Asia/Kuching",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},"Africa/Maputo":{name:"Africa/Maputo",utcOffset:120,offsetStr:"+02:00",countries:["MZ","BI","BW","CD","MW","RW","ZM","ZW"]},"Africa/Windhoek":{name:"Africa/Windhoek",utcOffset:120,offsetStr:"+02:00",countries:["NA"]},"Pacific/Noumea":{name:"Pacific/Noumea",utcOffset:660,offsetStr:"+11:00",countries:["NC"]},"Pacific/Norfolk":{name:"Pacific/Norfolk",utcOffset:660,offsetStr:"+11:00",countries:["NF"]},"Africa/Lagos":{name:"Africa/Lagos",utcOffset:60,offsetStr:"+01:00",countries:["NG","AO","BJ","CD","CF","CG","CM","GA","GQ","NE"]},"America/Managua":{name:"America/Managua",utcOffset:-360,offsetStr:"-06:00",countries:["NI"]},"Europe/Amsterdam":{name:"Europe/Amsterdam",utcOffset:60,offsetStr:"+01:00",countries:["NL"]},"Europe/Oslo":{name:"Europe/Oslo",utcOffset:60,offsetStr:"+01:00",countries:["NO","SJ"]},"Asia/Kathmandu":{name:"Asia/Kathmandu",utcOffset:345,offsetStr:"+05:45",countries:["NP"]},"Pacific/Nauru":{name:"Pacific/Nauru",utcOffset:720,offsetStr:"+12:00",countries:["NR"]},"Pacific/Niue":{name:"Pacific/Niue",utcOffset:-660,offsetStr:"-11:00",countries:["NU"]},"Pacific/Auckland":{name:"Pacific/Auckland",utcOffset:780,offsetStr:"+13:00",countries:["NZ","AQ"]},"Pacific/Chatham":{name:"Pacific/Chatham",utcOffset:825,offsetStr:"+13:45",countries:["NZ"]},"America/Panama":{name:"America/Panama",utcOffset:-300,offsetStr:"-05:00",countries:["PA"]},"America/Lima":{name:"America/Lima",utcOffset:-300,offsetStr:"-05:00",countries:["PE"]},"Pacific/Tahiti":{name:"Pacific/Tahiti",utcOffset:-600,offsetStr:"-10:00",countries:["PF"]},"Pacific/Marquesas":{name:"Pacific/Marquesas",utcOffset:-570,offsetStr:"-09:30",countries:["PF"]},"Pacific/Gambier":{name:"Pacific/Gambier",utcOffset:-540,offsetStr:"-09:00",countries:["PF"]},"Pacific/Port_Moresby":{name:"Pacific/Port_Moresby",utcOffset:600,offsetStr:"+10:00",countries:["PG"]},"Pacific/Bougainville":{name:"Pacific/Bougainville",utcOffset:660,offsetStr:"+11:00",countries:["PG"]},"Asia/Manila":{name:"Asia/Manila",utcOffset:480,offsetStr:"+08:00",countries:["PH"]},"Asia/Karachi":{name:"Asia/Karachi",utcOffset:300,offsetStr:"+05:00",countries:["PK"]},"Europe/Warsaw":{name:"Europe/Warsaw",utcOffset:60,offsetStr:"+01:00",countries:["PL"]},"America/Miquelon":{name:"America/Miquelon",utcOffset:-180,offsetStr:"-03:00",countries:["PM"]},"Pacific/Pitcairn":{name:"Pacific/Pitcairn",utcOffset:-480,offsetStr:"-08:00",countries:["PN"]},"America/Puerto_Rico":{name:"America/Puerto_Rico",utcOffset:-240,offsetStr:"-04:00",countries:["PR"]},"Asia/Gaza":{name:"Asia/Gaza",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},"Asia/Hebron":{name:"Asia/Hebron",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},"Europe/Lisbon":{name:"Europe/Lisbon",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},"Atlantic/Madeira":{name:"Atlantic/Madeira",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},"Atlantic/Azores":{name:"Atlantic/Azores",utcOffset:-60,offsetStr:"-01:00",countries:["PT"]},"Pacific/Palau":{name:"Pacific/Palau",utcOffset:540,offsetStr:"+09:00",countries:["PW"]},"America/Asuncion":{name:"America/Asuncion",utcOffset:-180,offsetStr:"-03:00",countries:["PY"]},"Asia/Qatar":{name:"Asia/Qatar",utcOffset:180,offsetStr:"+03:00",countries:["QA","BH"]},"Indian/Reunion":{name:"Indian/Reunion",utcOffset:240,offsetStr:"+04:00",countries:["RE","TF"]},"Europe/Bucharest":{name:"Europe/Bucharest",utcOffset:120,offsetStr:"+02:00",countries:["RO"]},"Europe/Belgrade":{name:"Europe/Belgrade",utcOffset:60,offsetStr:"+01:00",countries:["RS","BA","HR","ME","MK","SI"]},"Europe/Kaliningrad":{name:"Europe/Kaliningrad",utcOffset:120,offsetStr:"+02:00",countries:["RU"]},"Europe/Moscow":{name:"Europe/Moscow",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},"Europe/Simferopol":{name:"Europe/Simferopol",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},"Europe/Volgograd":{name:"Europe/Volgograd",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},"Europe/Samara":{name:"Europe/Samara",utcOffset:240,offsetStr:"+04:00",countries:["RU"]},"Asia/Yekaterinburg":{name:"Asia/Yekaterinburg",utcOffset:300,offsetStr:"+05:00",countries:["RU"]},"Asia/Omsk":{name:"Asia/Omsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},"Asia/Novosibirsk":{name:"Asia/Novosibirsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},"Asia/Novokuznetsk":{name:"Asia/Novokuznetsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},"Asia/Krasnoyarsk":{name:"Asia/Krasnoyarsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},"Asia/Irkutsk":{name:"Asia/Irkutsk",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},"Asia/Chita":{name:"Asia/Chita",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},"Asia/Yakutsk":{name:"Asia/Yakutsk",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},"Asia/Khandyga":{name:"Asia/Khandyga",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},"Asia/Vladivostok":{name:"Asia/Vladivostok",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},"Asia/Sakhalin":{name:"Asia/Sakhalin",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},"Asia/Ust-Nera":{name:"Asia/Ust-Nera",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},"Asia/Magadan":{name:"Asia/Magadan",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},"Asia/Srednekolymsk":{name:"Asia/Srednekolymsk",utcOffset:660,offsetStr:"+11:00",countries:["RU"]},"Asia/Kamchatka":{name:"Asia/Kamchatka",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},"Asia/Anadyr":{name:"Asia/Anadyr",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},"Asia/Riyadh":{name:"Asia/Riyadh",utcOffset:180,offsetStr:"+03:00",countries:["SA","KW","YE"]},"Pacific/Guadalcanal":{name:"Pacific/Guadalcanal",utcOffset:660,offsetStr:"+11:00",countries:["SB"]},"Indian/Mahe":{name:"Indian/Mahe",utcOffset:240,offsetStr:"+04:00",countries:["SC"]},"Africa/Khartoum":{name:"Africa/Khartoum",utcOffset:180,offsetStr:"+03:00",countries:["SD","SS"]},"Europe/Stockholm":{name:"Europe/Stockholm",utcOffset:60,offsetStr:"+01:00",countries:["SE"]},"Asia/Singapore":{name:"Asia/Singapore",utcOffset:480,offsetStr:"+08:00",countries:["SG"]},"America/Paramaribo":{name:"America/Paramaribo",utcOffset:-180,offsetStr:"-03:00",countries:["SR"]},"America/El_Salvador":{name:"America/El_Salvador",utcOffset:-360,offsetStr:"-06:00",countries:["SV"]},"Asia/Damascus":{name:"Asia/Damascus",utcOffset:120,offsetStr:"+02:00",countries:["SY"]},"America/Grand_Turk":{name:"America/Grand_Turk",utcOffset:-240,offsetStr:"-04:00",countries:["TC"]},"Africa/Ndjamena":{name:"Africa/Ndjamena",utcOffset:60,offsetStr:"+01:00",countries:["TD"]},"Indian/Kerguelen":{name:"Indian/Kerguelen",utcOffset:300,offsetStr:"+05:00",countries:["TF"]},"Asia/Bangkok":{name:"Asia/Bangkok",utcOffset:420,offsetStr:"+07:00",countries:["TH","KH","LA","VN"]},"Asia/Dushanbe":{name:"Asia/Dushanbe",utcOffset:300,offsetStr:"+05:00",countries:["TJ"]},"Pacific/Fakaofo":{name:"Pacific/Fakaofo",utcOffset:780,offsetStr:"+13:00",countries:["TK"]},"Asia/Dili":{name:"Asia/Dili",utcOffset:540,offsetStr:"+09:00",countries:["TL"]},"Asia/Ashgabat":{name:"Asia/Ashgabat",utcOffset:300,offsetStr:"+05:00",countries:["TM"]},"Africa/Tunis":{name:"Africa/Tunis",utcOffset:60,offsetStr:"+01:00",countries:["TN"]},"Pacific/Tongatapu":{name:"Pacific/Tongatapu",utcOffset:780,offsetStr:"+13:00",countries:["TO"]},"Europe/Istanbul":{name:"Europe/Istanbul",utcOffset:120,offsetStr:"+02:00",countries:["TR"]},"America/Port_of_Spain":{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"]},"Pacific/Funafuti":{name:"Pacific/Funafuti",utcOffset:720,offsetStr:"+12:00",countries:["TV"]},"Asia/Taipei":{name:"Asia/Taipei",utcOffset:480,offsetStr:"+08:00",countries:["TW"]},"Europe/Kiev":{name:"Europe/Kiev",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},"Europe/Uzhgorod":{name:"Europe/Uzhgorod",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},"Europe/Zaporozhye":{name:"Europe/Zaporozhye",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},"Pacific/Wake":{name:"Pacific/Wake",utcOffset:720,offsetStr:"+12:00",countries:["UM"]},"America/New_York":{name:"America/New_York",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Detroit":{name:"America/Detroit",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Kentucky/Louisville":{name:"America/Kentucky/Louisville",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Kentucky/Monticello":{name:"America/Kentucky/Monticello",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Indianapolis":{name:"America/Indiana/Indianapolis",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Vincennes":{name:"America/Indiana/Vincennes",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Winamac":{name:"America/Indiana/Winamac",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Marengo":{name:"America/Indiana/Marengo",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Petersburg":{name:"America/Indiana/Petersburg",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Vevay":{name:"America/Indiana/Vevay",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Chicago":{name:"America/Chicago",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/Indiana/Tell_City":{name:"America/Indiana/Tell_City",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/Indiana/Knox":{name:"America/Indiana/Knox",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/Menominee":{name:"America/Menominee",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/North_Dakota/Center":{name:"America/North_Dakota/Center",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/North_Dakota/New_Salem":{name:"America/North_Dakota/New_Salem",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/North_Dakota/Beulah":{name:"America/North_Dakota/Beulah",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/Denver":{name:"America/Denver",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},"America/Boise":{name:"America/Boise",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},"America/Phoenix":{name:"America/Phoenix",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},"America/Los_Angeles":{name:"America/Los_Angeles",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},"America/Metlakatla":{name:"America/Metlakatla",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},"America/Anchorage":{name:"America/Anchorage",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Juneau":{name:"America/Juneau",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Sitka":{name:"America/Sitka",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Yakutat":{name:"America/Yakutat",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Nome":{name:"America/Nome",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Adak":{name:"America/Adak",utcOffset:-600,offsetStr:"-10:00",countries:["US"]},"Pacific/Honolulu":{name:"Pacific/Honolulu",utcOffset:-600,offsetStr:"-10:00",countries:["US","UM"]},"America/Montevideo":{name:"America/Montevideo",utcOffset:-180,offsetStr:"-03:00",countries:["UY"]},"Asia/Samarkand":{name:"Asia/Samarkand",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},"Asia/Tashkent":{name:"Asia/Tashkent",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},"America/Caracas":{name:"America/Caracas",utcOffset:-270,offsetStr:"-04:30",countries:["VE"]},"Asia/Ho_Chi_Minh":{name:"Asia/Ho_Chi_Minh",utcOffset:420,offsetStr:"+07:00",countries:["VN"]},"Pacific/Efate":{name:"Pacific/Efate",utcOffset:660,offsetStr:"+11:00",countries:["VU"]},"Pacific/Wallis":{name:"Pacific/Wallis",utcOffset:720,offsetStr:"+12:00",countries:["WF"]},"Pacific/Apia":{name:"Pacific/Apia",utcOffset:840,offsetStr:"+14:00",countries:["WS"]},"Africa/Johannesburg":{name:"Africa/Johannesburg",utcOffset:120,offsetStr:"+02:00",countries:["ZA","LS","SZ"]}}}],templateUrl:"app/core/directives/ms-timezone/ms-timezone.html"}}angular.module("app.core").directive("msTimezone",e)}(),function(){"use strict";function e(e,t){function n(){a()&&(i.flipped=!i.flipped,t.toggleClass("flipped",i.flipped))}function a(){return angular.isDefined(e.flippable)&&!0===e.flippable}var i=this;i.flipped=!1,i.flip=n}function t(){return{restrict:"E",scope:{flippable:"=?"},controller:"MsWidgetController",transclude:!0,compile:function(e){return e.addClass("ms-widget"),function(e,t,n,a,i){i(function(e){t.empty(),t.append(e)})}}}}function n(){return{restrict:"E",require:"^msWidget",transclude:!0,compile:function(e){return e.addClass("ms-widget-front"),function(e,t,n,a,i){i(function(e){t.empty(),t.append(e)}),e.flipWidget=a.flip}}}}function a(){return{restrict:"E",require:"^msWidget",transclude:!0,compile:function(e){return e.addClass("ms-widget-back"),function(e,t,n,a,i){i(function(e){t.empty(),t.append(e)}),e.flipWidget=a.flip}}}}e.$inject=["$scope","$element"],angular.module("app.core").controller("MsWidgetController",e).directive("msWidget",t).directive("msWidgetFront",n).directive("msWidgetBack",a)}(),function(){"use strict";function e(){return function(e){var t=Date.now()-new Date(e);return t<36e5?moment(e).fromNow():t<864e5?moment(e).format("HH:mm"):t<6048e5?moment(e).format("dddd"):moment(e).calendar()}}angular.module("app.core").filter("altDate",e)}(),function(){"use strict";function e(e){return function(t){return e.trustAsHtml(t)}}function t(){return function(e){return String(e).replace(/<[^>]+>/gm,"")}}function n(){return function(e){return e?e.replace(/ /g,""):""}}function a(){return function(e){if(e)return"directive"===e.type?e.name.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()}):e.label||e.name}}e.$inject=["$sce"],angular.module("app.core").filter("toTrusted",e).filter("htmlToPlaintext",t).filter("nospace",n).filter("humanizeDoc",a)}(),function(){"use strict";function e(){return function(e,t){if(0===e.length||!t)return e;if(0===t.length)return[];for(var n=[],a=0;a<e.length;a++){for(var i=e[a],o=!1,s=0;s<t.length;s++){var r=t[s];if(i.id===r){o=!0;break}}o&&n.push(i)}return n}}angular.module("app.core").filter("filterByIds",e)}(),function(){"use strict";function e(){return function(e,t,n){if(0===e.length||!n||0===n.length)return e;for(var a=[],i=0;i<e.length;i++){for(var o=e[i],s=!1,r=0;r<n.length;r++){var l=n[r];if(o[t].indexOf(l)>-1){s=!0;break}}s&&a.push(o)}return a}}angular.module("app.core").filter("filterByPropIds",e)}(),function(){"use strict";function e(){return function(e,t){if(0===e.length||0===t.length)return e;var n=[];return e.forEach(function(e){t.every(function(t){var n=!1;return e.tags.forEach(function(e){e.name!==t.name||(n=!0)}),n})&&n.push(e)}),n}}function t(){return function(e,t){if(0!==e.length&&0!==t.length){if(e.length<t.length)return[];var n=[];return t.every(function(t){var n=!1;return e.forEach(function(e){e.name!==t.name||(n=!0)}),n})&&n.push(e),n}}}angular.module("app.core").filter("filterByTags",e).filter("filterSingleByTags",t)}(),function(){"use strict";function e(e,t,n){function a(n,a){var o=n.split("@"),s=o[0],r=o[1],l=a||{};if(!s||!r)return t.error("apiResolver.resolve requires correct action parameter (ResourceName@methodName)"),!1;var d=e.defer(),c=i(s);return c?c[r](l,function(e){d.resolve(e)},function(e){d.reject(e)}):(t.error('Resource "'+s+'" is not defined in the api service!'),d.reject('Resource "'+s+'" is not defined in the api service!')),d.promise}function i(e){for(var a=e.split("."),i=n,o=0;o<a.length;o++){if(angular.isUndefined(i[a[o]])){t.error('Resource part "'+a[o]+'" is not defined!'),i=!1;break}i=i[a[o]]}return i||!1}return{resolve:a}}e.$inject=["$q","$log","api"],angular.module("app.core").factory("apiResolver",e)}(),function(){"use strict";function e(){function e(e){s=e}function t(){return s}function n(){return r}function a(e,t){angular.isString(e)?angular.isArray(t)?r[e]={url:s+(t[0]||""),paramDefaults:t[1]||[],actions:t[2]||[],options:t[3]||{}}:o.error('"resource" must be an array and it must follow $resource definition'):o.error('"path" must be a string (eg. `dashboard.project`)')}var i=this,o=angular.injector(["ng"]).get("$log"),s="",r=[];i.setBaseUrl=e,i.getBaseUrl=t,i.getApiObject=n,i.register=a,this.$get=["$log","$q","$resource","$rootScope",function(n,i,o,s){function l(e,t){s.$broadcast("msApi::resolveStart");var a=e.split("@"),l=a[0],d=a[1],c=t||{};if(!l||!d)return n.error("msApi.resolve requires correct action parameter (resourceName@methodName)"),!1;var m=i.defer(),u=r[l];return u?o(u.url,u.paramDefaults,u.actions,u.options)[d](c,function(e){m.resolve(e),s.$broadcast("msApi::resolveSuccess")},function(e){m.reject(e),s.$broadcast("msApi::resolveError")}):(n.error('Resource "'+l+'" is not defined in the api service!'),m.reject('Resource "'+l+'" is not defined in the api service!')),m.promise}function d(e,t,a,l){s.$broadcast("msApi::requestStart");var d=e.split("@"),c=d[0],m=d[1],u=t||{};if(!c||!m)return n.error("msApi.resolve requires correct action parameter (resourceName@methodName)"),!1;var p=i.defer(),g=r[c];return g?o(g.url,g.paramDefaults,g.actions,g.options)[m](u,function(e){s.$broadcast("msApi::requestSuccess"),p.resolve(e),angular.isDefined(a)&&angular.isFunction(a)&&a(e)},function(e){s.$broadcast("msApi::requestError"),p.reject(e),angular.isDefined(l)&&angular.isFunction(l)&&l(e)}):(n.error('Resource "'+c+'" is not defined in the api service!'),p.reject('Resource "'+c+'" is not defined in the api service!')),p.promise}return{setBaseUrl:e,getBaseUrl:t,register:a,resolve:l,request:d}}]}angular.module("app.core").provider("msApi",e)}(),function(){"use strict";function e(e){function t(e,t){return t.indexOf(e)>-1}function n(){function t(e){for(var t=0;t<e.length;t++){var n=e[t].string,a=e[t].prop;if(o=e[t].versionSearch||e[t].identity,n){if(-1!==n.indexOf(e[t].subString))return e[t].identity}else if(a)return e[t].identity}}function n(e){var t=e.indexOf(o);if(-1!==t)return parseInt(e.substring(t+o.length+1))}if(r)return r;var a=[{string:e.navigator.userAgent,subString:"Edge",versionSearch:"Edge",identity:"Edge"},{string:e.navigator.userAgent,subString:"Chrome",identity:"Chrome"},{string:e.navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:e.navigator.vendor,subString:"Apple",versionSearch:"Version",identity:"Safari"},{prop:e.opera,identity:"Opera"},{string:e.navigator.vendor,subString:"iCab",identity:"iCab"},{string:e.navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:e.navigator.userAgent,subString:"Firefox",identity:"Firefox"},{string:e.navigator.vendor,subString:"Camino",identity:"Camino"},{string:e.navigator.userAgent,subString:"Netscape",identity:"Netscape"},{string:e.navigator.userAgent,subString:"MSIE",identity:"Explorer",versionSearch:"MSIE"},{string:e.navigator.userAgent,subString:"Trident/7",identity:"Explorer",versionSearch:"rv"},{string:e.navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:e.navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla"}],i=[{string:e.navigator.platform,subString:"Win",identity:"Windows"},{string:e.navigator.platform,subString:"Mac",identity:"Mac"},{string:e.navigator.platform,subString:"Linux",identity:"Linux"},{string:e.navigator.platform,subString:"iPhone",identity:"iPhone"},{string:e.navigator.platform,subString:"iPod",identity:"iPod"},{string:e.navigator.platform,subString:"iPad",identity:"iPad"},{string:e.navigator.platform,subString:"Android",identity:"Android"}],o="",s=t(a)||"unknown-browser",l=n(e.navigator.userAgent)||n(e.navigator.appVersion)||"unknown-version",d=t(i)||"unknown-os";return s=s.toLowerCase(),l=s+"-"+l,d=d.toLowerCase(),r={browser:s,version:l,os:d}}function a(){var e=function(){return(65536*(1+Math.random())||0).toString(16).substring(1)};return e()+e()+e()+e()+e()+e()}function i(){return s.mobile()}function o(e,t){-1===t.indexOf(e)?t.push(e):t.splice(t.indexOf(e),1)}var s=new MobileDetect(e.navigator.userAgent),r=null;return{exists:t,detectBrowser:n,guidGenerator:a,isMobile:i,toggleInArray:o}}e.$inject=["$window"],angular.module("app.core").factory("msUtils",e)}(),function(){"use strict";function e(e,t){function n(e){t.setActiveTheme(e)}function a(){return t.themes.active}function i(){angular.element("body").toggleClass("boxed","boxed"===s.layoutMode)}function o(){e.put("motion.layoutStyle",s.layoutStyle),location.reload()}var s=this;s.themes=t.themes,s.layoutModes=[{label:"Boxed",value:"boxed"},{label:"Wide",value:"wide"}],s.layoutStyles=[{label:"Vertical Navigation",value:"verticalNavigation",figure:"/assets/images/theme-options/vertical-nav.jpg"},{label:"Vertical Navigation with Fullwidth Toolbar",value:"verticalNavigationFullwidthToolbar",figure:"/assets/images/theme-options/vertical-nav-with-full-toolbar.jpg"},{label:"Vertical Navigation with Fullwidth Toolbar 2",value:"verticalNavigationFullwidthToolbar2",figure:"/assets/images/theme-options/vertical-nav-with-full-toolbar-2.jpg"},{label:"Horizontal Navigation",value:"horizontalNavigation",figure:"/assets/images/theme-options/horizontal-nav.jpg"},{label:"Content with Toolbar",value:"contentWithToolbar",figure:"/assets/images/theme-options/content-with-toolbar.jpg"},{label:"Content Only",value:"contentOnly",figure:"/assets/images/theme-options/content-only.jpg"}],s.layoutMode="wide",s.layoutStyle=e.get("motion.layoutStyle")||"verticalNavigation",s.setActiveTheme=n,s.getActiveTheme=a,s.updateLayoutMode=i,s.updateLayoutStyle=o}function t(e){return{restrict:"E",scope:{},controller:"MsThemeOptionsController as vm",templateUrl:"app/core/theme-options/theme-options.html",compile:function(t){return t.addClass("ms-theme-options"),function(t){function n(){e("motion-theme-options").toggle()}t.toggleOptionsSidenav=n}}}}e.$inject=["$cookies","motionTheming"],t.$inject=["$mdSidenav"],angular.module("app.core").controller("MsThemeOptionsController",e).directive("msThemeOptions",t)}(),function(){"use strict";function e(e,t,n){function a(){var e=angular.copy(n.getRegisteredThemes()),t=angular.copy(n.getRegisteredPalettes());angular.forEach(e,function(e){d[e.name]={},angular.forEach(e.colors,function(n,a){d[e.name][a]={name:n.name,levels:{default:{color:s(t[n.name][n.hues.default].value),contrast1:s(t[n.name][n.hues.default].contrast,1),contrast2:s(t[n.name][n.hues.default].contrast,2),contrast3:s(t[n.name][n.hues.default].contrast,3),contrast4:s(t[n.name][n.hues.default].contrast,4)},hue1:{color:s(t[n.name][n.hues["hue-1"]].value),contrast1:s(t[n.name][n.hues["hue-1"]].contrast,1),contrast2:s(t[n.name][n.hues["hue-1"]].contrast,2),contrast3:s(t[n.name][n.hues["hue-1"]].contrast,3),contrast4:s(t[n.name][n.hues["hue-1"]].contrast,4)},hue2:{color:s(t[n.name][n.hues["hue-2"]].value),contrast1:s(t[n.name][n.hues["hue-2"]].contrast,1),contrast2:s(t[n.name][n.hues["hue-2"]].contrast,2),contrast3:s(t[n.name][n.hues["hue-2"]].contrast,3),contrast4:s(t[n.name][n.hues["hue-2"]].contrast,4)},hue3:{color:s(t[n.name][n.hues["hue-3"]].value),contrast1:s(t[n.name][n.hues["hue-3"]].contrast,1),contrast2:s(t[n.name][n.hues["hue-3"]].contrast,2),contrast3:s(t[n.name][n.hues["hue-3"]].contrast,3),contrast4:s(t[n.name][n.hues["hue-3"]].contrast,4)}}}})}),i(d);var a={};angular.forEach(d,function(e,t){(a={})["@themeName"]=t,angular.forEach(e,function(e,t){angular.forEach(e.levels,function(e,n){angular.forEach(e,function(e,i){a["@"+t+l(n)+l(i)]=e})})}),o(a)})}function i(t){var a=angular.copy(t);angular.forEach(a,function(e){angular.forEach(e,function(t,n){e[n]=t.levels,e[n].color=t.levels.default.color,e[n].contrast1=t.levels.default.contrast1,e[n].contrast2=t.levels.default.contrast2,e[n].contrast3=t.levels.default.contrast3,e[n].contrast4=t.levels.default.contrast4,delete e[n].default})}),n.setThemesList(a);var i=e.get("motion.selectedTheme");i?n.setActiveTheme(i):n.setActiveTheme("default")}function o(e){var t=new RegExp(Object.keys(e).join("|"),"gi"),n='/* Content hack because they wont fix */\n/* https://github.com/angular/material/pull/8067 */\n[md-theme="@themeName"] md-content.md-hue-1,\nmd-content.md-@themeName-theme.md-hue-1 {\n    color: @backgroundHue1Contrast1;\n    background-color: @backgroundHue1Color;\n}\n\n[md-theme="@themeName"] md-content.md-hue-2,\nmd-content.md-@themeName-theme.md-hue-2 {\n    color: @backgroundHue2Contrast1;\n    background-color: @backgroundHue2Color;\n}\n\n[md-theme="@themeName"] md-content.md-hue-3,\n md-content.md-@themeName-theme.md-hue-3 {\n    color: @backgroundHue3Contrast1;\n    background-color: @backgroundHue3Color;\n}\n\n/* Text Colors */\n[md-theme="@themeName"] a {\n    color: @accentDefaultColor;\n}\n\n[md-theme="@themeName"] .secondary-text,\n[md-theme="@themeName"] .icon {\n    color: @backgroundDefaultContrast2;\n}\n\n[md-theme="@themeName"] .hint-text,\n[md-theme="@themeName"] .disabled-text {\n    color: @backgroundDefaultContrast3;\n}\n\n[md-theme="@themeName"] .fade-text,\n[md-theme="@themeName"] .divider {\n    color: @backgroundDefaultContrast4;\n}\n\n/* Primary */\n[md-theme="@themeName"] .md-primary-bg {\n    background-color: @primaryDefaultColor;\n    color: @primaryDefaultContrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg .secondary-text,\n[md-theme="@themeName"] .md-primary-bg .icon {\n    color: @primaryDefaultContrast2;\n}\n\n[md-theme="@themeName"] .md-primary-bg .hint-text,\n[md-theme="@themeName"] .md-primary-bg .disabled-text {\n    color: @primaryDefaultContrast3;\n}\n\n[md-theme="@themeName"] .md-primary-bg .fade-text,\n[md-theme="@themeName"] .md-primary-bg .divider {\n    color: @primaryDefaultContrast4;\n}\n\n/* Primary, Hue-1 */\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 {\n    background-color: @primaryHue1Color;\n    color: @primaryHue1Contrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .secondary-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .icon {\n    color: @primaryHue1Contrast2;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .hint-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .disabled-text {\n    color: @primaryHue1Contrast3;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .fade-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .divider {\n    color: @primaryHue1Contrast4;\n}\n\n/* Primary, Hue-2 */\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 {\n    background-color: @primaryHue2Color;\n    color: @primaryHue2Contrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .secondary-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .icon {\n    color: @primaryHue2Contrast2;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .hint-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .disabled-text {\n    color: @primaryHue2Contrast3;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .fade-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .divider {\n    color: @primaryHue2Contrast4;\n}\n\n/* Primary, Hue-3 */\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 {\n    background-color: @primaryHue3Color;\n    color: @primaryHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .secondary-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .icon {\n    color: @primaryHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .hint-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .disabled-text {\n    color: @primaryHue3Contrast3;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .fade-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .divider {\n    color: @primaryHue3Contrast4;\n}\n\n/* Primary foreground */\n[md-theme="@themeName"] .md-primary-fg {\n    color: @primaryDefaultColor !important;\n}\n\n/* Primary foreground, Hue-1 */\n[md-theme="@themeName"] .md-primary-fg.md-hue-1 {\n    color: @primaryHue1Color !important;\n}\n\n/* Primary foreground, Hue-2 */\n[md-theme="@themeName"] .md-primary-fg.md-hue-2 {\n    color: @primaryHue2Color !important;\n}\n\n/* Primary foreground, Hue-3 */\n[md-theme="@themeName"] .md-primary-fg.md-hue-3 {\n    color: @primaryHue3Color !important;\n}\n\n/* Accent */\n[md-theme="@themeName"] .md-accent-bg {\n    background-color: @accentDefaultColor;\n    color: @accentDefaultContrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg .secondary-text,\n[md-theme="@themeName"] .md-accent-bg .icon {\n    color: @accentDefaultContrast2;\n}\n\n[md-theme="@themeName"] .md-accent-bg .hint-text,\n[md-theme="@themeName"] .md-accent-bg .disabled-text {\n    color: @accentDefaultContrast3;\n}\n\n[md-theme="@themeName"] .md-accent-bg .fade-text,\n[md-theme="@themeName"] .md-accent-bg .divider {\n    color: @accentDefaultContrast4;\n}\n\n/* Accent, Hue-1 */\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 {\n    background-color: @accentHue1Color;\n    color: @accentHue1Contrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .secondary-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .icon {\n    color: @accentHue1Contrast2;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .hint-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .disabled-text {\n    color: @accentHue1Contrast3;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .fade-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .divider {\n    color: @accentHue1Contrast4;\n}\n\n/* Accent, Hue-2 */\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 {\n    background-color: @accentHue2Color;\n    color: @accentHue2Contrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .secondary-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .icon {\n    color: @accentHue2Contrast2;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .hint-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .disabled-text {\n    color: @accentHue2Contrast3;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .fade-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .divider {\n    color: @accentHue2Contrast4;\n}\n\n/* Accent, Hue-3 */\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 {\n    background-color: @accentHue3Color;\n    color: @accentHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .secondary-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .icon {\n    color: @accentHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .hint-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .disabled-text {\n    color: @accentHue3Contrast3;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .fade-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .divider {\n    color: @accentHue3Contrast4;\n}\n\n/* Accent foreground */\n[md-theme="@themeName"] .md-accent-fg {\n    color: @accentDefaultColor !important;\n}\n\n/* Accent foreground, Hue-1 */\n[md-theme="@themeName"] .md-accent-fg.md-hue-1 {\n    color: @accentHue1Color !important;\n}\n\n/* Accent foreground, Hue-2 */\n[md-theme="@themeName"] .md-accent-fg.md-hue-2 {\n    color: @accentHue2Color !important;\n}\n\n/* Accent foreground, Hue-3 */\n[md-theme="@themeName"] .md-accent-fg.md-hue-3 {\n    color: @accentHue3Color !important;\n}\n\n/* Warn */\n[md-theme="@themeName"] .md-warn-bg {\n    background-color: @warnDefaultColor;\n    color: @warnDefaultContrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg .secondary-text,\n[md-theme="@themeName"] .md-warn-bg .icon {\n    color: @warnDefaultContrast2;\n}\n\n[md-theme="@themeName"] .md-warn-bg .hint-text,\n[md-theme="@themeName"] .md-warn-bg .disabled-text {\n    color: @warnDefaultContrast3;\n}\n\n[md-theme="@themeName"] .md-warn-bg .fade-text,\n[md-theme="@themeName"] .md-warn-bg .divider {\n    color: @warnDefaultContrast4;\n}\n\n/* Warn, Hue-1 */\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 {\n    background-color: @warnHue1Color;\n    color: @warnHue1Contrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .secondary-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .icon {\n    color: @warnHue1Contrast2;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .hint-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .disabled-text {\n    color: @warnHue1Contrast3;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .fade-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .divider {\n    color: @warnHue1Contrast4;\n}\n\n/* Warn, Hue-2 */\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 {\n    background-color: @warnHue2Color;\n    color: @warnHue2Contrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .secondary-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .icon {\n    color: @warnHue2Contrast2;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .hint-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .disabled-text {\n    color: @warnHue2Contrast3;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .fade-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .divider {\n    color: @warnHue2Contrast4;\n}\n\n/* Warn, Hue-3 */\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 {\n    background-color: @warnHue3Color;\n    color: @warnHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .secondary-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .icon {\n    color: @warnHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .hint-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .disabled-text {\n    color: @warnHue3Contrast3;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .fade-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .divider {\n    color: @warnHue3Contrast4;\n}\n\n/* Warn foreground */\n[md-theme="@themeName"] .md-warn-fg {\n    color: @warnDefaultColor !important;\n}\n\n/* Warn foreground, Hue-1 */\n[md-theme="@themeName"] .md-warn-fg.md-hue-1 {\n    color: @warnHue1Color !important;\n}\n\n/* Warn foreground, Hue-2 */\n[md-theme="@themeName"] .md-warn-fg.md-hue-2 {\n    color: @warnHue2Color !important;\n}\n\n/* Warn foreground, Hue-3 */\n[md-theme="@themeName"] .md-warn-fg.md-hue-3 {\n    color: @warnHue3Color !important;\n}\n\n/* Background */\n[md-theme="@themeName"] .md-background-bg {\n    background-color: @backgroundDefaultColor;\n    color: @backgroundDefaultContrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg .secondary-text,\n[md-theme="@themeName"] .md-background-bg .icon {\n    color: @backgroundDefaultContrast2;\n}\n\n[md-theme="@themeName"] .md-background-bg .hint-text,\n[md-theme="@themeName"] .md-background-bg .disabled-text {\n    color: @backgroundDefaultContrast3;\n}\n\n[md-theme="@themeName"] .md-background-bg .fade-text,\n[md-theme="@themeName"] .md-background-bg .divider {\n    color: @backgroundDefaultContrast4;\n}\n\n/* Background, Hue-1 */\n[md-theme="@themeName"] .md-background-bg.md-hue-1 {\n    background-color: @backgroundHue1Color;\n    color: @backgroundHue1Contrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .secondary-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .icon {\n    color: @backgroundHue1Contrast2;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .hint-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .disabled-text {\n    color: @backgroundHue1Contrast3;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .fade-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .divider {\n    color: @backgroundHue1Contrast4;\n}\n\n/* Background, Hue-2 */\n[md-theme="@themeName"] .md-background-bg.md-hue-2 {\n    background-color: @backgroundHue2Color;\n    color: @backgroundHue2Contrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .secondary-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .icon {\n    color: @backgroundHue2Contrast2;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .hint-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .disabled-text {\n    color: @backgroundHue2Contrast3;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .fade-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .divider {\n    color: @backgroundHue2Contrast4;\n}\n\n/* Background, Hue-3 */\n[md-theme="@themeName"] .md-background-bg.md-hue-3 {\n    background-color: @backgroundHue3Color;\n    color: @backgroundHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .secondary-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .icon {\n    color: @backgroundHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .hint-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .disabled-text {\n    color: @backgroundHue3Contrast3;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .fade-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .divider {\n    color: @backgroundHue3Contrast4;\n}\n\n/* Background foreground */\n[md-theme="@themeName"] .md-background-fg {\n    color: @backgroundDefaultColor !important;\n}\n\n/* Background foreground, Hue-1 */\n[md-theme="@themeName"] .md-background-fg.md-hue-1 {\n    color: @backgroundHue1Color !important;\n}\n\n/* Background foreground, Hue-2 */\n[md-theme="@themeName"] .md-background-fg.md-hue-2 {\n    color: @backgroundHue2Color !important;\n}\n\n/* Background foreground, Hue-3 */\n[md-theme="@themeName"] .md-background-fg.md-hue-3 {\n    color: @backgroundHue3Color !important;\n}'.replace(t,function(t){return e[t]}),a=angular.element("head"),i=angular.element('<style type="text/css"></style>');i.html(n),a.append(i)}function s(e,n){var a=n||!1;return 4===e.length&&255===e[0]&&255===e[1]&&255===e[2]&&e.splice(3,4),a&&(e=r(e,a)),3===e.length?"rgb("+e.join(",")+")":4===e.length?"rgba("+e.join(",")+")":void t.error("Invalid number of arguments supplied in the color array: "+e.length+"\nThe array must have 3 or 4 colors.")}function r(e,t){var n={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"}};return 255===e[0]&&255===e[1]&&255===e[2]?e[3]=n.white[t]:0===e[0]&&0===e[1]&&0===e[2]&&(e[3]=n.black[t]),e}function l(e){return e.charAt(0).toUpperCase()+e.slice(1)}var d={};return{generate:a,rgba:s}}e.$inject=["$cookies","$log","motionTheming"],angular.module("app.core").factory("motionGenerator",e)}(),function(){"use strict";var e=[{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"}}];angular.module("app.core").constant("motionPalettes",e)}(),function(){"use strict";var e={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"}}}};angular.module("app.core").constant("motionThemes",e)}(),function(){"use strict";function e(e,t,n){var a;angular.injector(["ngCookies"]).invoke(["$cookies",function(e){a=e}]);var i=a.getObject("motion.customTheme");i&&(n.custom=i),e.alwaysWatchTheme(!0),angular.forEach(t,function(t){e.definePalette(t.name,t.options)}),angular.forEach(n,function(t,n){e.theme(n).primaryPalette(t.primary.name,t.primary.hues).accentPalette(t.accent.name,t.accent.hues).warnPalette(t.warn.name,t.warn.hues).backgroundPalette(t.background.name,t.background.hues)})}e.$inject=["$mdThemingProvider","motionPalettes","motionThemes"],angular.module("app.core").config(e)}(),function(){"use strict";function e(e,t,n){function a(){return n.PALETTES}function i(){return n.THEMES}function o(n){if(angular.isUndefined(r.themes.list[n]))return angular.isUndefined(r.themes.list.default)?void t.error('You must have at least one theme named "default"'):(t.warn('The theme "'+n+'" does not exist! Falling back to the "default" theme.'),r.themes.active.name="default",r.themes.active.theme=r.themes.list.default,void e.put("motion.selectedTheme",r.themes.active.name));r.themes.active.name=n,r.themes.active.theme=r.themes.list[n],e.put("motion.selectedTheme",n)}function s(e){r.themes.list=e}var r={getRegisteredPalettes:a,getRegisteredThemes:i,setActiveTheme:o,setThemesList:s,themes:{list:{},active:{name:"",theme:{}}}};return r}e.$inject=["$cookies","$log","$mdTheming"],angular.module("app.core").service("motionTheming",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){for(var i=[],o=a.getFlatNavigation(),s=n.defer(),r=0;r<o.length;r+=1)o[r].uisref&&i.push(o[r]);return e&&(i=i.filter(function(t){if(angular.lowercase(t.title).search(angular.lowercase(e))>-1)return!0})),t(function(){s.resolve(i)},1e3),s.promise}function o(t){t.uisref&&(t.stateParams?e.go(t.state,t.stateParams):e.go(t.state))}var s=this;s.search=i,s.searchResultClick=o}e.$inject=["$state","$timeout","$q","msNavigationService"],angular.module("app.errors.error-404").controller("Error404Controller",e)}(),function(){"use strict";function e(e,t){function n(){t.post("/api/jira",a.error).then(function(e){a.send=!0,e.data&&(a.code=e.data.id)},function(e){a.send=!1})}var a=this;a.code="",a.send=!1,a.error=e.params,a.sendReport=n}e.$inject=["$state","$http"],angular.module("app.errors.error-500").controller("Error500Controller",e)}(),function(){"use strict";function e(e){var t={};return t.baseUrl="api/",t.auth=e(t.baseUrl+"auth/local",{},{local:{method:"post",url:t.baseUrl+"auth/local"},google:{method:"post",url:t.baseUrl+"auth/google"}}),t.jira=e(t.baseUrl+"jira"),t.rpc=e(t.baseUrl+"rpc",{},{getVoiceQueues:{method:"get",url:t.baseUrl+"rpc/voice/queues"},getVoiceQueuesChannels:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels"},getVoiceQueuesChannel:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid"},getVoiceQueuesChannelHangup:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid/hangup"},getVoiceQueuesChannelRedirect:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid/redirect/:exten"},getOutbound:{method:"get",url:t.baseUrl+"rpc/outbound"},getOutboundChannels:{method:"get",url:t.baseUrl+"rpc/outbound/channels"},getAgents:{method:"get",url:t.baseUrl+"rpc/agents"},getTelephones:{method:"get",url:t.baseUrl+"rpc/telephones"},getTrunks:{method:"get",url:t.baseUrl+"rpc/trunks"},getCampaigns:{method:"get",url:t.baseUrl+"rpc/campaigns"}}),t.version=e(t.baseUrl+"version",{},{fetch:{method:"get",url:t.baseUrl+"version/fetch"},reset:{method:"get",url:t.baseUrl+"version/reset"},pull:{method:"get",url:t.baseUrl+"version/pull"},restart:{method:"get",url:t.baseUrl+"version/restart"},migrations:{method:"get",url:t.baseUrl+"version/migrations"}}),t.system=e(t.baseUrl+"system"),t.pm2=e(t.baseUrl+"pm2/:id",{id:"@id"},{update:{method:"put",isArray:!0}}),t.user=e(t.baseUrl+"users/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"users/describe"},bulkCreate:{method:"post",url:t.baseUrl+"users/create_many",isArray:!0},bulkDestroy:{method:"delete",url:t.baseUrl+"users/destroy_many",isArray:!0},addContacts:{isArray:!0,method:"post",url:t.baseUrl+"users/:id/contacts"},changePassword:{isArray:!1,method:"put",url:t.baseUrl+"users/:id/password"},addQueues:{isArray:!0,method:"post",url:t.baseUrl+"users/:id/queues"},removeQueues:{isArray:!1,method:"delete",url:t.baseUrl+"users/:id/queues"},addAvatar:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/avatar"},getAvatar:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/avatar"},getContacts:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/contacts"},getQueues:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/queues"},getVoiceQueuesRt:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/queues_rt"},getRecordings:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/recordings"},login:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/login"},logout:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/logout"},pause:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/pause"},unpause:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/unpause"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/teams"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/lists"}}),t.voiceChanSpy=e(t.baseUrl+"voice/chanspy/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/chanspy/describe"}}),t.voiceContext=e(t.baseUrl+"voice/contexts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/contexts/describe"}}),t.voiceDisposition=e(t.baseUrl+"voice/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/dispositions/describe"}}),t.voiceExtension=e(t.baseUrl+"voice/extensions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/extensions/describe"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"voice/extensions/:id/applications"}}),t.voiceMusicOnHold=e(t.baseUrl+"voice/mohs/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mohs/describe"},addSound:{isArray:!1,method:"post",url:t.baseUrl+"voice/mohs/:id/sounds"},removeSound:{isArray:!1,method:"delete",url:t.baseUrl+"voice/mohs/:id/sounds/:id2"},getSounds:{isArray:!1,method:"get",url:t.baseUrl+"voice/mohs/:id/sounds"}}),t.voiceQueue=e(t.baseUrl+"voice/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/queues/describe"},getHoppers:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hoppers"},getHopperHistories:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_histories"},getHopperFinals:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_finals"},getHopperBlacks:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_black"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"voice/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"voice/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/users"},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/members"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/lists"},addLists:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/lists"},addBlackLists:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/black_lists"},removeBlackLists:{isArray:!0,method:"delete",url:t.baseUrl+"voice/queues/:id/black_lists"},removeLists:{isArray:!0,method:"delete",url:t.baseUrl+"voice/queues/:id/lists"},getBlackLists:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/blacklists"},addBlackLists:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/blacklists"},removeBlackLists:{isArray:!0,method:"delete",url:t.baseUrl+"voice/queues/:id/blacklists"}}),t.voiceRecording=e(t.baseUrl+"voice/recordings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/recordings/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"voice/recordings/:id/download"}}),t.voiceMail=e(t.baseUrl+"voice/mails/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mails/describe"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"voice/mails/:id/messages"}}),t.voiceMailMessage=e(t.baseUrl+"voice/mails/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mails/messages/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"voice/mails/messages/:id/download"}}),t.voiceCallReport=e(t.baseUrl+"voice/calls/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/calls/reports/describe"}}),t.voiceDialReport=e(t.baseUrl+"voice/dials/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/dials/reports/describe"}}),t.voiceAgentReport=e(t.baseUrl+"voice/agents/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/agents/reports/describe"}}),t.voiceQueueReport=e(t.baseUrl+"voice/queues/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/queues/reports/describe"}}),t.memberReport=e(t.baseUrl+"members/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"members/reports/describe"}}),t.trunk=e(t.baseUrl+"trunks/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"trunks/describe"}}),t.voiceTransferReport=e(t.baseUrl+"voice/transfers/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/transfers/reports/describe"}}),t.mailServerOut=e(t.baseUrl+"mail/out_servers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/out_servers/describe"}}),t.mailAccount=e(t.baseUrl+"mail/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/accounts/describe"},getImap:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/in_servers"},addImap:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/in_servers"},removeImap:{isArray:!1,method:"delete",url:t.baseUrl+"mail/accounts/:id/in_servers"},getSmtp:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/out_servers"},addSmtp:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/out_servers"},removeSmtp:{isArray:!1,method:"delete",url:t.baseUrl+"mail/accounts/:id/out_servers"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/dispositions"},sendMail:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/send"},verifySmtp:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/verify"}}),t.mailQueue=e(t.baseUrl+"mail/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"mail/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"mail/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"mail/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"mail/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"mail/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"mail/queues/:id/users"}}),t.mailInteraction=e(t.baseUrl+"mail/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"mail/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"mail/interactions/:id/messages"}}),t.mailMessage=e(t.baseUrl+"mail/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/messages/describe"}}),t.mailApplication=e(t.baseUrl+"mail/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/applications/describe"}}),t.mailDisposition=e(t.baseUrl+"mail/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/dispositions/describe"}}),t.mailAttachment=e(t.baseUrl+"mail/attachments/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/attachments/describe"}}),t.mailSessionReport=e(t.baseUrl+"mail/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/sessions/reports/describe"}}),t.mailReport=e(t.baseUrl+"mail/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/reports/describe"}}),t.openchannelSessionReport=e(t.baseUrl+"openchannel/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/sessions/reports/describe"}}),t.dashboard=e(t.baseUrl+"dashboards/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"dashboards/describe"},run:{isArray:!1,method:"get",url:t.baseUrl+"dashboards/:id/run"},addItem:{isArray:!1,method:"post",url:t.baseUrl+"dashboards/:id/items"},getItems:{isArray:!1,method:"get",url:t.baseUrl+"dashboards/:id/items"}}),t.dashboardItem=e(t.baseUrl+"dashboards/items/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"dashboards/items/describe"}}),t.faxAccount=e(t.baseUrl+"fax/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/accounts/describe"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/dispositions"}}),t.faxApplication=e(t.baseUrl+"fax/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/applications/describe"}}),t.faxDisposition=e(t.baseUrl+"fax/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/dispositions/describe"}}),t.faxAttachment=e(t.baseUrl+"fax/attachments/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/attachments/describe"}}),t.faxInteraction=e(t.baseUrl+"fax/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"fax/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"fax/interactions/:id/messages"}}),t.faxMessage=e(t.baseUrl+"fax/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/messages/describe"}}),t.faxQueue=e(t.baseUrl+"fax/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"fax/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"fax/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"fax/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"fax/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"fax/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"fax/queues/:id/users"}}),t.faxSessionReport=e(t.baseUrl+"fax/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/sessions/reports/describe"}}),t.smsAccount=e(t.baseUrl+"sms/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/accounts/describe"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/dispositions"}}),t.smsApplication=e(t.baseUrl+"sms/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/applications/describe"}}),t.smsDisposition=e(t.baseUrl+"sms/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/dispositions/describe"}}),t.smsInteraction=e(t.baseUrl+"sms/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"sms/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"sms/interactions/:id/messages"}}),t.smsMessage=e(t.baseUrl+"sms/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/messages/describe"}}),t.smsQueue=e(t.baseUrl+"sms/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"sms/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"sms/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"sms/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"sms/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"sms/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"sms/queues/:id/users"}}),t.openchannelAccount=e(t.baseUrl+"openchannel/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/accounts/describe"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/dispositions"}}),t.openchannelApplication=e(t.baseUrl+"openchannel/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/applications/describe"}}),t.openchannelDisposition=e(t.baseUrl+"openchannel/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/dispositions/describe"}}),t.openchannelInteraction=e(t.baseUrl+"openchannel/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/interactions/:id/messages"}}),t.openchannelMessage=e(t.baseUrl+"openchannel/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/messages/describe"}}),t.openchannelQueue=e(t.baseUrl+"openchannel/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"openchannel/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"openchannel/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"openchannel/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"openchannel/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/queues/:id/users"}}),t.chatWebsite=e(t.baseUrl+"chat/websites/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/websites/describe"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/dispositions"},addProactiveActions:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/proactive_actions"},getProactiveActions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/proactive_actions"},addWebsiteFields:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/fields"},getWebsiteFields:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/fields"}}),t.openchannelReport=e(t.baseUrl+"openchannel/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/reports/describe"}}),t.chatApplication=e(t.baseUrl+"chat/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/applications/describe"}}),t.chatDisposition=e(t.baseUrl+"chat/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/dispositions/describe"}}),t.chatInteraction=e(t.baseUrl+"chat/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"chat/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"chat/interactions/:id/messages"}}),t.chatMessage=e(t.baseUrl+"chat/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/messages/describe"}}),t.chatQueue=e(t.baseUrl+"chat/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"chat/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"chat/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"chat/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"chat/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"chat/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"chat/queues/:id/users"}}),t.chatEnquiry=e(t.baseUrl+"chat/enquiries/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/enquiries/describe"}}),t.chatProactiveAction=e(t.baseUrl+"chat/proactive_actions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/proactive_actions/describe"}}),t.chatVisitor=e(t.baseUrl+"chat/visitors/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/visitors/describe"}}),t.chatWebsiteField=e(t.baseUrl+"chat/website_fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/website_fields/describe"}}),t.cmCompany=e(t.baseUrl+"cm/companies/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/companies/describe"},addContacts:{isArray:!1,method:"post",url:t.baseUrl+"cm/companies/:id/contacts"},getContacts:{isArray:!1,method:"get",url:t.baseUrl+"cm/companies/:id/contacts"}}),t.cmContact=e(t.baseUrl+"cm/contacts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/contacts/describe"},bulkCreate:{isArray:!1,method:"post",url:t.baseUrl+"cm/contacts/create_many"}}),t.cmHopper=e(t.baseUrl+"cm/hopper/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper/describe"},getDialerContacts:{isArray:!1,method:"get",url:t.baseUrl+"cm/hopper/preview"},callDialerContact:{isArray:!1,method:"get",url:t.baseUrl+"cm/hopper/preview/:id"}}),t.cmHopperBlack=e(t.baseUrl+"cm/hopper_black/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_black/describe"}}),t.cmHopperFinal=e(t.baseUrl+"cm/hopper_final/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_final/describe"}}),t.cmHopperHistory=e(t.baseUrl+"cm/hopper_history/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_history/describe"}}),t.cmCustomField=e(t.baseUrl+"cm/custom_fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/custom_fields/describe"}}),t.cmList=e(t.baseUrl+"cm/lists/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/lists/describe"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/dispositions"},addContacts:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/contacts"},getContacts:{isArray:!0,method:"get",url:t.baseUrl+"cm/lists/:id/contacts"},getContactsCsv:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/contacts/csv"},addCustomField:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/fields"},getCustomFields:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/fields"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"cm/lists/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"cm/lists/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/users"}}),t.action=e(t.baseUrl+"actions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"actions/describe"}}),t.automation=e(t.baseUrl+"automations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"automations/describe"},addConditions:{isArray:!1,method:"post",url:t.baseUrl+"automations/:id/conditions"},getConditions:{isArray:!1,method:"get",url:t.baseUrl+"automations/:id/conditions"},addActions:{isArray:!1,method:"post",url:t.baseUrl+"automations/:id/actions"},getActions:{isArray:!1,method:"get",url:t.baseUrl+"automations/:id/actions"}}),t.cannedAnswer=e(t.baseUrl+"canned_answers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"canned_answers/describe"}}),t.condition=e(t.baseUrl+"conditions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"conditions/describe"}}),t.interval=e(t.baseUrl+"intervals/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"intervals/describe"},addInterval:{isArray:!1,method:"post",url:t.baseUrl+"intervals/:id/sub_intervals"},getIntervals:{isArray:!1,method:"get",url:t.baseUrl+"intervals/:id/sub_intervals"},addIntervals:{isArray:!0,method:"post",url:t.baseUrl+"intervals/:id/sub_intervals/create_many"}}),t.pause=e(t.baseUrl+"pauses/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"pauses/describe"}}),t.cdr=e(t.baseUrl+"cdr/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cdr/describe"}}),t.voiceQueuesLog=e(t.baseUrl+"voiceQueuesLog/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voiceQueuesLog/describe"}}),t.schedule=e(t.baseUrl+"schedules/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"schedules/describe"}}),t.sound=e(t.baseUrl+"sounds/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sounds/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"sounds/:id/download"},delete:{isArray:!1,method:"delete",url:t.baseUrl+"sounds/:id"}}),t.tag=e(t.baseUrl+"tags/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"tags/describe"}}),t.template=e(t.baseUrl+"templates/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"templates/describe"}}),t.trigger=e(t.baseUrl+"triggers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"triggers/describe"},addAllCondition:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/all_conditions"},addAnyCondition:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/any_conditions"},getAllConditions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/all_conditions"},getAnyConditions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/any_conditions"},addAction:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/actions"},getActions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/actions"}}),t.variable=e(t.baseUrl+"variables/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"variables/describe"}}),t.integration=e(t.baseUrl+"integrations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/describe"}}),t.integrationReport=e(t.baseUrl+"integrations/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/reports/describe"}}),t.analyticCustomReport=e(t.baseUrl+"analytics/custom_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/custom_reports/describe"},preview:{isArray:!0,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/preview"},run:{isArray:!1,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/run"},query:{isArray:!1,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/query"}}),t.analyticDefaultReport=e(t.baseUrl+"analytics/default_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/default_reports/describe"},preview:{isArray:!0,method:"get",url:t.baseUrl+"analytics/default_reports/:id/preview"},run:{isArray:!1,method:"get",url:t.baseUrl+"analytics/default_reports/:id/run"},query:{isArray:!1,method:"get",url:t.baseUrl+"analytics/default_reports/:id/query"}}),t.analyticExtractedReport=e(t.baseUrl+"analytics/extracted_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/extracted_reports/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"analytics/extracted_reports/:id/download"}}),t.analyticMetric=e(t.baseUrl+"analytics/metrics/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/metrics/describe"}}),t.analyticFieldReport=e(t.baseUrl+"analytics/field_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/field_reports/describe"},bulkCreate:{method:"post",url:t.baseUrl+"analytics/field_reports/create_many",isArray:!0},bulkDestroy:{method:"delete",url:t.baseUrl+"analytics/field_reports/destroy_many",isArray:!0},addFields:{isArray:!0,method:"post",url:t.baseUrl+"analytics/field_reports/:id/create_many"}}),t.analyticTreeReport=e(t.baseUrl+"analytics/tree_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/tree_reports/describe"}}),t.intSalesforceAccount=e(t.baseUrl+"integrations/salesforce/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/accounts/describe"},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/salesforce/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/accounts/:id/fields"}}),t.intSalesforceConfiguration=e(t.baseUrl+"integrations/salesforce/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/configurations/describe"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/descriptions"}}),t.intSalesforceField=e(t.baseUrl+"integrations/salesforce/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/fields/describe"}}),t.intSugarcrmAccount=e(t.baseUrl+"integrations/sugarcrm/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/describe"},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/fields"}}),t.intSugarcrmConfiguration=e(t.baseUrl+"integrations/sugarcrm/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/describe"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/descriptions"}}),t.intSugarcrmField=e(t.baseUrl+"integrations/sugarcrm/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/fields/describe"}}),t.intZendeskAccount=e(t.baseUrl+"integrations/zendesk/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/accounts/describe"},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/zendesk/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/accounts/:id/fields"}}),t.intZendeskConfiguration=e(t.baseUrl+"integrations/zendesk/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/configurations/describe"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/descriptions"},getTags:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/tags"},setTags:{isArray:!0,method:"post",url:t.baseUrl+"integrations/zendesk/configurations/:id/tags"}}),t.intZendeskField=e(t.baseUrl+"integrations/zendesk/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/fields/describe"}}),t.intFreshdeskAccount=e(t.baseUrl+"integrations/freshdesk/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/describe"},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/freshdesk/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/:id/fields"}}),t.intFreshdeskConfiguration=e(t.baseUrl+"integrations/freshdesk/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/describe"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/descriptions"},getTags:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/tags"},setTags:{isArray:!0,method:"post",url:t.baseUrl+"integrations/freshdesk/configurations/:id/tags"}}),t.intFreshdeskField=e(t.baseUrl+"integrations/freshdesk/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/fields/describe"}}),t.network=e(t.baseUrl+"networks/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"networks/describe"}}),t.chatReport=e(t.baseUrl+"chat/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/reports/describe"}}),t.chatSessionReport=e(t.baseUrl+"chat/session/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/session/reports/describe"}}),t.faxReport=e(t.baseUrl+"fax/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/reports/describe"}}),t.jscriptyInputReport=e(t.baseUrl+"jscripty/inputs/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/inputs/reports/describe"}}),t.jscriptyQuestionReport=e(t.baseUrl+"jscripty/questions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/questions/reports/describe"}}),t.jscriptySessionReport=e(t.baseUrl+"jscripty/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/sessions/reports/describe"}}),t.smsReport=e(t.baseUrl+"sms/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/reports/describe"}}),t.smsSessionReport=e(t.baseUrl+"sms/session/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/session/reports/describe"}}),t.squareReport=e(t.baseUrl+"square/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/reports/describe"}}),t.squareReportDetail=e(t.baseUrl+"square/details/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/details/reports/describe"}}),t.jscriptyProject=e(t.baseUrl+"jscripty/projects/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/projects/describe"}}),t.setting=e(t.baseUrl+"settings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"settings/describe"},addLogo:{isArray:!1,method:"post",url:t.baseUrl+"settings/:id/logo"},addLogoLogin:{isArray:!1,method:"post",url:t.baseUrl+"settings/:id/logo_login"},getLogo:{isArray:!1,method:"get",url:t.baseUrl+"settings/:id/logo"},getLogoLogin:{isArray:!1,method:"get",url:t.baseUrl+"settings/:id/logo_login"}}),t.squareOdbc=e(t.baseUrl+"square/odbc/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/odbc/describe"},test:{isArray:!1,method:"get",url:t.baseUrl+"square/odbc/:id/test"}}),t.squareProject=e(t.baseUrl+"square/projects/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/projects/describe"}}),t.squareRecording=e(t.baseUrl+"square/recordings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/recordings/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"square/recordings/:id/download"}}),t.team=e(t.baseUrl+"teams/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"teams/describe"},getQueues:{isArray:!0,method:"get",url:t.baseUrl+"teams/:id/queues"},addQueues:{isArray:!0,method:"post",url:t.baseUrl+"teams/:id/queues"},removeQueues:{isArray:!1,method:"delete",url:t.baseUrl+"teams/:id/queues"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"teams/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"teams/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"teams/:id/users"}}),t.license=e(t.baseUrl+"license/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"license/describe"}}),t.campaign=e(t.baseUrl+"campaigns/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"campaigns/describe"},getHoppers:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hoppers"},getHopperHistories:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_histories"},getHopperFinals:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_finals"},getHopperBlacks:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_black"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/lists"},addLists:{isArray:!0,method:"post",url:t.baseUrl+"campaigns/:id/lists"},removeLists:{isArray:!0,method:"delete",url:t.baseUrl+"campaigns/:id/lists"},getBlackLists:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/blacklists"},addBlackLists:{isArray:!0,method:"post",url:t.baseUrl+"campaigns/:id/blacklists"},removeBlackLists:{isArray:!0,method:"delete",url:t.baseUrl+"campaigns/:id/blacklists"}}),t}e.$inject=["$resource"],angular.module("motion").factory("api",e)}(),function(){"use strict";function e(e,t,n){n.setConfig({position:"top-right",sound:!1,html:!0,theme:"material"}),e.useLoader("$translatePartialLoader",{urlTemplate:"{part}/i18n/{lang}.json"}),e.preferredLanguage("en"),e.useSanitizeValueStrategy("sanitize"),t.decorator("taOptions",["$delegate",function(e){return e.toolbar=[["bold","italics","underline","ul","ol","quote","justifyLeft","justifyCenter","justifyRight","html","insertImage","insertLink"]],e.classes={focussed:"focussed",toolbar:"ta-toolbar",toolbarGroup:"ta-group",toolbarButton:"md-button",toolbarButtonActive:"active",disabled:"",textEditor:"form-control",htmlEditor:"form-control"},e}]),t.decorator("taTools",["$delegate",function(e){return e.quote.iconclass="icon-format-quote",e.bold.iconclass="icon-format-bold",e.italics.iconclass="icon-format-italic",e.underline.iconclass="icon-format-underline",e.strikeThrough.iconclass="icon-format-strikethrough",e.ul.iconclass="icon-format-list-bulleted",e.ol.iconclass="icon-format-list-numbers",e.redo.iconclass="icon-redo",e.undo.iconclass="icon-undo",e.clear.iconclass="icon-close-circle-outline",e.justifyLeft.iconclass="icon-format-align-left",e.justifyCenter.iconclass="icon-format-align-center",e.justifyRight.iconclass="icon-format-align-right",e.justifyFull.iconclass="icon-format-align-justify",e.indent.iconclass="icon-format-indent-increase",e.outdent.iconclass="icon-format-indent-decrease",e.html.iconclass="icon-code-tags",e.insertImage.iconclass="icon-file-image-box",e.insertLink.iconclass="icon-link",e.insertVideo.iconclass="icon-filmstrip",e}])}e.$inject=["$translateProvider","$provide","toastyConfigProvider"],angular.module("motion").config(e)}(),function(){"use strict";angular.module("motion")}(),function(){"use strict";function e(e){this.themes=e.themes}e.$inject=["motionTheming"],angular.module("motion").controller("IndexController",e)}(),function(){"use strict";function e(){return function(e,t,n){var a,i={},o=0;for(a in e)if(o>=n&&(i[a]=e[a]),++o===n+t)break;return i}}function t(){var e=[{value:"jan"},{value:"feb"},{value:"mar"},{value:"apr"},{value:"may"},{value:"jun"},{value:"jul"},{value:"aug"},{value:"sep"},{value:"oct"},{value:"nov"},{value:"dec"}],t=[{value:"1"},{value:"2"},{value:"3"},{value:"4"},{value:"5"},{value:"6"},{value:"7"},{value:"8"},{value:"9"},{value:"10"},{value:"11"},{value:"12"}],n=[{value:"mon"},{value:"tue"},{value:"wed"},{value:"thu"},{value:"fri"},{value:"sat"},{value:"sun"}],a=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31];return{getMonthName:function(){return e},getMonthNumber:function(){return t},getDaysOfWeek:function(){return n},getDaysOfMonth:function(){return a}}}angular.module("motion").filter("limitObjectFromTo",e).factory("IndexFactory",t)}(),function(){"use strict";function e(e,t,n){n.html5Mode(!0),t.otherwise("/dashboards/general");var a;angular.injector(["ngCookies"]).invoke(["$cookies",function(e){a=e}]);var i=a.get("motion.layoutStyle")||"verticalNavigation",o={verticalNavigation:{main:"app/core/layouts/vertical-navigation.html",toolbar:"app/toolbar/layouts/vertical-navigation/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation/navigation.html"},verticalNavigationFullwidthToolbar:{main:"app/core/layouts/vertical-navigation-fullwidth-toolbar.html",toolbar:"app/toolbar/layouts/vertical-navigation-fullwidth-toolbar/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation/navigation.html"},verticalNavigationFullwidthToolbar2:{main:"app/core/layouts/vertical-navigation-fullwidth-toolbar-2.html",toolbar:"app/toolbar/layouts/vertical-navigation-fullwidth-toolbar-2/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation-fullwidth-toolbar-2/navigation.html"},horizontalNavigation:{main:"app/core/layouts/horizontal-navigation.html",toolbar:"app/toolbar/layouts/horizontal-navigation/toolbar.html",navigation:"app/navigation/layouts/horizontal-navigation/navigation.html"},contentOnly:{main:"app/core/layouts/content-only.html",toolbar:"",navigation:""},contentWithToolbar:{main:"app/core/layouts/content-with-toolbar.html",toolbar:"app/toolbar/layouts/content-with-toolbar/toolbar.html",navigation:""}};e.state("app",{abstract:!0,views:{"main@":{templateUrl:o[i].main,controller:"MainController as vm"},"toolbar@app":{templateUrl:o[i].toolbar,controller:"ToolbarController as vm"},"navigation@app":{templateUrl:o[i].navigation,controller:"NavigationController as vm"},"quickPanel@app":{templateUrl:"app/quick-panel/quick-panel.html",controller:"QuickPanelController as vm"}},resolve:{license:["apiResolver",function(e){return e.resolve("license@get")}],setting:["apiResolver",function(e){return e.resolve("setting@get",{id:1})}]}})}e.$inject=["$stateProvider","$urlRouterProvider","$locationProvider"],angular.module("motion").config(e)}(),function(){"use strict";function e(e,t,n){var a=e.$on("$stateChangeStart",function(){e.loadingProgress=!0}),i=e.$on("$stateChangeSuccess",function(){t(function(){e.loadingProgress=!1})});e.state=n,e.$on("$destroy",function(){a(),i()})}e.$inject=["$rootScope","$timeout","$state"],angular.module("motion").run(e)}(),function(){"use strict";function e(e,t){function n(){a=io({query:"id="+t.getCurrentUser().id,transports:["websocket","polling"]})}var a;return{connect:n,on:function(t,i){i=i||angular.noop,a||n(),a.on(t,function(){var t=arguments;e.$apply(function(){i.apply(a,t)})})},emit:function(t,i,o){o=o||angular.noop,a||n(),a.emit(t,i,function(){var t=arguments;e.$apply(function(){o.apply(a,t)})})},removeAllListeners:function(e){a||n(),a.removeAllListeners(e)},disconnect:function(){a||n(),a.disconnect()}}}e.$inject=["$rootScope","Auth"],angular.module("motion").factory("socket",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){i.isLoggedIn()&&e.go("app.dashboards.general")}function s(){return i.login(l.form).then(function(){return e.go("app.dashboards.general")}).catch(function(e){l.message=e.message})}function r(e){t.location.href="/api/auth/"+e}var l=this;l.login=s,l.loginOauth=r,l.$onInit=o}e.$inject=["$state","$window","$cookies","api","Auth"],angular.module("app.login").controller("LoginController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.analyticExtractedReport.save(p.extractedReport).$promise.then(function(e){p.extractedReports.unshift(e),i.success({title:"ExtractedReport properly created",msg:p.extractedReport.name?p.extractedReport.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticExtractedReport.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticExtractedReport.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.analyticExtractedReport.update({id:p.extractedReport.id},p.extractedReport).$promise.then(function(e){var t=_.find(p.extractedReports,{id:e.id});t&&_.merge(t,e),i.success({title:"ExtractedReport properly saved!",msg:p.extractedReport.name?p.extractedReport.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticExtractedReport.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticExtractedReport.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The extractedReport will be deleted.").ariaLabel("Delete ExtractedReport").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.analyticExtractedReport.delete({id:p.extractedReport.id}).$promise.then(function(){_.remove(p.extractedReports,{id:p.extractedReport.id}),i.success({title:"ExtractedReport properly deleted!",msg:(p.extractedReport.name||"extractedReport")+" has been deleted!"}),u(p.extractedReport)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticExtractedReport.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="ANALYTICS.EDIT_EXTRACTEDREPORT",p.extractedReport=angular.copy(s),p.extractedReports=o,p.newExtractedReport=!1,p.extractedReport||(p.extractedReport={},p.title="ANALYTICS.NEW_EXTRACTEDREPORT",p.newExtractedReport=!0),p.addNewExtractedReport=l,p.saveExtractedReport=d,p.deleteExtractedReport=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","extractedReports","extractedReport","api"],angular.module("app.analytics").controller("CreateOrEditExtractedReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditExtractedReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/extractedReports/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{extractedReport:e,extractedReports:C.extractedReports.rows}})}function u(e,n){return l.analyticExtractedReport.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/analytics/extracted_reports/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticExtractedReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function p(e,t){var n=i.confirm().title("Are you sure want to delete the extractedReport?").htmlContent("<b>"+(e.name||"extractedReport")+"</b> will be deleted.").ariaLabel("delete extractedReport").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function g(e){C.extractedReports=e||{count:0,rows:[]}}function h(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.analyticExtractedReport.get(C.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditExtractedReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/extractedReports/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{extractedReport:t,extractedReports:C.extractedReports.rows}})}function b(e){l.analyticExtractedReport.delete({id:e.id}).$promise.then(function(){_.remove(C.extractedReports.rows,{id:e.id}),C.extractedReports.count-=1,C.extractedReports.rows.length||C.getExtractedReports(),c.success({title:"ExtractedReport deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticExtractedReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(C.selectedExtractedReports);return C.selectedExtractedReports=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected extractedReports?").htmlContent("<b>"+C.selectedExtractedReports.length+" selected</b> will be deleted.").ariaLabel("delete ExtractedReports").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){C.selectedExtractedReports.forEach(function(e){b(e)}),C.selectedExtractedReports=[]})}function y(){C.selectedExtractedReports=[]}function A(){C.selectedExtractedReports=C.extractedReports.rows}var C=this;C.extractedReports=r||{count:0,rows:[]},C.table="extractedReports",C.listOrder="",C.listOrderAsc=null,C.selectedExtractedReports=[],C.query={fields:"createdAt,updatedAt,id,name,type,startDate,endDate,createdAt,status,output",sort:"-updatedAt",limit:10,page:1},C.editdialog=m,C.downloadfile=u,C.deleteconfirm=p,C.success=g,C.getExtractedReports=h,C.createOrEditExtractedReport=v,C.deleteExtractedReport=b,C.exportSelectedExtractedReports=f,C.deleteSelectedExtractedReports=E,C.deselectExtractedReports=y,C.selectAllExtractedReports=A;var x=!0,T=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(T=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=T),C.getExtractedReports())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","extractedReports","api","msUtils","toasty"],angular.module("app.analytics").controller("ExtractedReportsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.analyticMetric.save(p.metric).$promise.then(function(e){p.metrics.unshift(e),i.success({title:"Metric properly created",msg:p.metric.name?p.metric.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticMetric.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticMetric.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.analyticMetric.update({id:p.metric.id},p.metric).$promise.then(function(e){var t=_.find(p.metrics,{id:e.id});t&&_.merge(t,e),i.success({title:"Metric properly saved!",msg:p.metric.name?p.metric.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticMetric.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticMetric.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The metric will be deleted.").ariaLabel("Delete Metric").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.analyticMetric.delete({id:p.metric.id}).$promise.then(function(){_.remove(p.metrics,{id:p.metric.id}),i.success({title:"Metric properly deleted!",msg:(p.metric.name||"metric")+" has been deleted!"}),u(p.metric)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticMetric.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="ANALYTICS.EDIT_METRIC",p.metric=angular.copy(s),p.metrics=o,p.newMetric=!1,p.metric||(p.metric={table:"report_agent"},p.title="ANALYTICS.NEW_METRIC",p.newMetric=!0),p.addNewMetric=l,p.saveMetric=d,p.deleteMetric=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","metrics","metric","api"],angular.module("app.analytics").controller("CreateOrEditMetricDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditMetricDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/metrics/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{metric:e,metrics:A.metrics.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the metric?").htmlContent("<b>"+(e.name||"metric")+"</b> will be deleted.").ariaLabel("delete metric").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.metrics=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.analyticMetric.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditMetricDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/metrics/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{metric:t,metrics:A.metrics.rows}})}function v(e){l.analyticMetric.delete({id:e.id}).$promise.then(function(){_.remove(A.metrics.rows,{id:e.id}),A.metrics.count-=1,A.metrics.rows.length||A.getMetrics(),c.success({title:"Metric deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticMetric",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedMetrics);return A.selectedMetrics=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected metrics?").htmlContent("<b>"+A.selectedMetrics.length+" selected</b> will be deleted.").ariaLabel("delete Metrics").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedMetrics.forEach(function(e){v(e)}),A.selectedMetrics=[]})}function E(){A.selectedMetrics=[]}function y(){A.selectedMetrics=A.metrics.rows}var A=this;A.metrics=r||{count:0,rows:[]},A.table="metrics",A.listOrder="",A.listOrderAsc=null,A.selectedMetrics=[],A.query={fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,page:1},A.arraytable=_.keyBy([{option:"Agent Report",value:"'report_agent'"},{option:"Call Report",value:"'report_call'"},{option:"Chat Messages",value:"'chat_messages'"},{option:"Chat Rooms",value:"'chat_rooms'"},{option:"Chat Session Report",value:"'report_chat_session'"},{option:"Contacts",value:"'cm_contacts'"},{option:"CSquare Report",value:"'report_square'"},{option:"CSquare Details Report",value:"'report_square_details'"},{option:"Fax Messages",value:"'fax_messages'"},{option:"Fax Rooms",value:"'fax_rooms'"},{option:"Fax Session Report",value:"'report_fax_session'"},{option:"Integration Report",value:"'report_integration'"},{option:"Mail Messages",value:"'mail_messages'"},{option:"Mail Rooms",value:"'mail_rooms'"},{option:"Mail Session Report",value:"'report_mail_session'"},{option:"Member Report",value:"'report_member'"},{option:"Open Channel Messages",value:"'openchannel_messages'"},{option:"Open Channel Rooms",value:"'openchannel_rooms'"},{option:"Open Channel Session Report",value:"'report_openchannel_session'"},{option:"Queue Report",value:"'report_queue'"},{option:"Sms Messages",value:"'sms_messages'"},{option:"Sms Rooms",value:"'sms_rooms'"},{option:"Sms Session Report",value:"'report_sms_session'"},{option:"Users",value:"'users'"},{option:"Voice Recordings",value:"'voice_recordings'"},{option:"Dialer Hopper Processing",value:"'cm_hopper'"},{option:"Dialer Hopper Logs",value:"'cm_hopper_history'"},{option:"Dialer Hopper Final",value:"'cm_hopper_final'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getMetrics=g,A.createOrEditMetric=h,A.deleteMetric=v,A.exportSelectedMetrics=b,A.deleteSelectedMetrics=f,A.deselectMetrics=E,A.selectAllMetrics=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getMetrics())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","metrics","api","msUtils","toasty"],angular.module("app.analytics").controller("MetricsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){c.errors=[];var e;i.analyticCustomReport.save({name:c.report.name,description:c.report.description,table:c.report.table,conditions:c.report.conditions,parent:c.currentNode.id}).$promise.then(function(t){e=t,n.success({title:"Report properly copied!",msg:c.report.name?c.report.name+" has been copied!":""});var a={fields:"field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0};return a["analyticCustomReport"===o?"CustomReportId":"DefaultReportId"]=c.report.id,i.analyticFieldReport.get(a).$promise}).then(function(t){var t=_.map(t.rows,function(t){return _.extend({},t,{CustomReportId:e.id})});return i.analyticFieldReport.bulkCreate(t).$promise}).then(function(){n.success({title:"Fields copied!",msg:"Fields has been copied!"}),d()}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:COPYREPORT",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function l(e,t){c.currentNode=t.node}function d(){t.hide()}var c=this;c.errors=[],c.report=angular.copy(a),c.report.name+="-copy",c.treeCustomData=s,c.treeCustomConfig={core:{multiple:!1,animation:!0,error:function(e){console.error("treeCtrl: error from js tree - "+angular.toJson(e))},check_callback:!0,worker:!0},version:1,plugins:["wholerow"]},c.treeCustomEvents={select_node:l},c.copyReport=r,c.closeDialog=d}e.$inject=["$location","$mdDialog","toasty","report","api","apiName","treeCustomData"],angular.module("app.analytics").controller("CopyReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){u.errors=[],o[s].save(u.report).$promise.then(function(e){u.reports.unshift(e),n.success({title:"Report properly created",msg:u.report.name?u.report.name+" has been created!":""}),m()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReport.save"}];for(var t=0;t<e.data.errors.length;t++)n.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticReport.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){u.errors=[],o[s].update({id:u.report.id},u.report).$promise.then(function(e){var t=_.find(u.reports,{id:e.id});t&&_.merge(t,e),n.success({title:"Report properly saved!",msg:u.report.name?u.report.name+" has been saved!":""}),m()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReport.update"}];for(var t=0;t<e.data.errors.length;t++)n.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticReport.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){u.errors=[];var e=t.confirm().title("Are you sure?").content("The report will be deleted.").ariaLabel("Delete Report").ok("Delete").cancel("Cancel").targetEvent(event);t.show(e).then(function(){o[s].delete({id:u.report.id}).$promise.then(function(){_.remove(u.reports,{id:u.report.id}),n.success({title:"Report properly deleted!",msg:u.report.name?u.report.name+" has been deleted!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReport.delete"}]})},function(){})}function m(){t.hide()}var u=this;u.errors=[],u.title="ANALYTICS.EDIT_REPORT",u.report=angular.copy(i),u.reports=a,u.newReport=!1,u.report||(u.report={name:"",table:"report_agent",description:"",parent:r.id},u.title="ANALYTICS.NEW_REPORT",u.newReport=!0),u.addNewReport=l,u.saveReport=d,u.deleteReport=c,u.closeDialog=m}e.$inject=["$location","$mdDialog","toasty","reports","report","api","apiName","currentNode"],angular.module("app.analytics").controller("CreateOrEditReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){d.report=e,d.report.condition=angular.fromJson(e.conditions)||{group:{operator:"AND",rules:[]}},t.getColumns(d.report.table).then(function(e){d.columns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt"])}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){e.unshift({condition:"=",field:"",value:""})}function s(e){e.push({group:{operator:"AND",rules:[]}})}function r(t,n,a){var i=e.confirm().title("Are you sure want to delete the item?").htmlContent("The item will be deleted.").ariaLabel("delete item").targetEvent(a).ok("OK").cancel("CANCEL");e.show(i).then(function(){t.splice(n,1)},function(){console.log("CANCEL")})}function l(e){return!_.includes(["IS NULL","IS NOT NULL","IS EMPTY","IS NOT EMPTY"],e)}var d=this;d.report={},d.conditions=a.getConditions,d.init=i,d.addCondition=o,d.addGroup=s,d.deleteConfirm=r,d.isValueByCondition=l}e.$inject=["$mdDialog","describeTable","toasty","sqlUtil"],angular.module("app.analytics").controller("ReportConditionsController",e)}(),function(){"use strict";function e(e){var t={report_agent:"voiceAgentReport",report_call:"voiceCallReport",chat_messages:"chatMessage",chat_rooms:"chatInteraction",report_chat_session:"chatSessionReport",cm_contacts:"cmContact",report_square:"squareReport",report_square_details:"squareReportDetail",fax_messages:"faxMessage",fax_rooms:"faxInteraction",report_fax_session:"faxSessionReport",report_integration:"integrationReport",mail_messages:"mailMessage",mail_rooms:"mailInteraction",report_mail_session:"mailSessionReport",report_member:"memberReport",openchannel_messages:"openchannelMessage",openchannel_rooms:"openchannelInteraction",report_openchannel_session:"openchannelSessionReport",report_queue:"voiceQueueReport",sms_messages:"smsMessage",sms_rooms:"smsInteraction",report_sms_session:"smsSessionReport",users:"user",voice_recordings:"voiceRecording",cm_hopper:"cmHopper",cm_hopper_final:"cmHopperFinal",cm_hopper_history:"cmHopperHistory"};return{getColumns:function(n){return e[t[n]].describe().$promise}}}e.$inject=["api"],angular.module("app.analytics").factory("describeTable",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(){g.errors=[],g.reportField.custom="custom"===g.reportField.type,g.reportField.MetricId="metric"===g.reportField.type?g.reportField.MetricId:null,g.reportField.CustomReportId=g.report.id,d.analyticFieldReport.save(g.reportField).$promise.then(function(e){g.reportFields.push(e),n.success({title:"Report field properly created",msg:g.reportField.field?g.reportField.field+" has been created!":g.reportField.type+" has been created!"}),p()}).catch(function(e){g.errors=e.data.errors||[{message:e.toString(),type:"api.analyticFieldReport.save"}]})}function m(){g.errors=[],g.reportField.custom="custom"===g.reportField.type,g.reportField.MetricId="metric"===g.reportField.type?g.reportField.MetricId:null,d.analyticFieldReport.update({id:g.reportField.id},g.reportField).$promise.then(function(e){var t=_.find(g.reportFields,{id:e.id});t&&_.merge(t,e),n.success({title:"Report Field properly saved!",msg:g.reportField.field?g.reportField.field+" has been saved!":""}),p()}).catch(function(e){g.errors=e.data.errors||[{message:e.toString(),type:"api.analyticFieldReport.update"}]})}function u(e){g.errors=[];var a=t.confirm().title("Are you sure?").content("The field will be deleted.").ariaLabel("Delete Report").ok("Delete").cancel("Cancel").targetEvent(e);t.show(a).then(function(){d.analyticFieldReport.delete({id:g.reportField.id}).$promise.then(function(){_.remove(g.reportFields,{id:g.reportField.id}),n.success({title:"Report Field properly deleted!",msg:g.reportField.field?g.reportField.field+" has been deleted!":""}),p()}).catch(function(e){g.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReportField.delete"}]})},function(){})}function p(){t.hide()}var g=this;g.errors=[],g.title="Edit Report Field",g.report=a,g.reportField=angular.copy(o),g.reportFields=i,g.metrics=s,g.columns=r,g.sqlUtil=l,g.newReportField=!1,g.reportField?g.reportField.type=g.reportField.custom?"custom":g.reportField.MetricId?"metric":"column":(g.reportField={type:"column",function:null,format:null,groupBy:!1,orderBy:null},g.title="New Report Field",g.newReportField=!0),g.addNewReportField=c,g.saveReportField=m,g.deleteReportField=u,g.closeDialog=p}e.$inject=["$location","$mdDialog","toasty","report","reportFields","reportField","metrics","columns","sqlUtil","api"],angular.module("app.analytics").controller("CreateOrEditReportFieldDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(e){E.report=e,E.query.CustomReportId=E.report.id,r.getColumns(E.report.table).then(function(e){return E.columns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt"]),s.analyticMetric.get({fields:"id,name,metric,table",nolimit:!0}).$promise}).then(function(e){E.metrics=e.rows}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data):e.toString()})}),E.getReportFields()}function m(e,t){var n=a.confirm().title("Are you sure want to delete the field?").htmlContent("<b>"+e.field+"</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");a.show(n).then(function(){h(e)},function(){console.log("CANCEL")})}function u(e){E.reportFields=e||{count:0,rows:[]}}function p(){E.promise=s.analyticFieldReport.get(E.query,u).$promise}function g(e,t){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:E.report,reportField:t,reportFields:E.reportFields.rows,metrics:E.metrics,columns:E.columns}})}function h(e){s.analyticFieldReport.delete({id:e.id}).$promise.then(function(){E.selectedReportFields=[],_.remove(E.reportFields.rows,{id:e.id}),E.reportFields.count-=1,E.reportFields.rows.length||E.getReportFields(),o.success({title:"Field deleted!",msg:e.field?e.field+" has been deleted!":""})}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function v(e){var t=a.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+E.selectedReportFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(e).ok("OK").cancel("CANCEL");a.show(t).then(function(){E.selectedReportFields.forEach(function(e){h(e)}),E.selectedReportFields=[]})}function b(e){var t=_.find(E.metrics,{id:e});return t?t.name:d.instant("ANALYTICS.NO_METRIC_FOUND")}function f(e){var t=_.find(E.metrics,{id:e});return t?t.metric:d.instant("ANALYTICS.NO_METRIC_FOUND")}var E=this;E.report={},E.reportFields={count:0,rows:[]},E.functions=_.keyBy(l.getFunctions,"value"),E.formats=_.keyBy(l.getFormats,"value"),E.groupBy=_.keyBy(l.getGroupBy,"value"),E.orderBy=_.keyBy(l.getOrderBy,"value"),E.selectedReportFields=[],E.query={fields:"createdAt,updatedAt,id,field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0},E.sortableTable={animation:100,onSort:function(e){s.analyticFieldReport.addFields({id:E.report.id},e.models).$promise.then(function(e){E.reportFields.rows=e}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ADDFIELDS"})})}},E.init=c,E.deleteConfirm=m,E.success=u,E.getReportFields=p,E.createOrEditReportField=g,E.deleteReportField=h,E.deleteSelectedReportFields=v,E.getMetricName=b,E.getMetricValue=f;var y=!0;t.$watch("vm_rf.query.filter",function(e,t){y?n(function(){y=!1}):E.getReportFields()})}e.$inject=["$cookies","$scope","$timeout","$mdDialog","$document","toasty","api","describeTable","sqlUtil","$translate"],angular.module("app.analytics").controller("ReportFieldsController",e)}(),function(){"use strict";function e(){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"]}}angular.module("app.analytics").factory("sqlUtil",e)}(),function(){"use strict";function e(e,t,n,a){function i(){e.go("app.analytics.reports")}function o(){l.report.conditions=angular.toJson(l.report.condition),n.analyticCustomReport.update({id:l.report.id},l.report).$promise.then(function(){t.success({title:"Report updated!",msg:l.report.name?l.report.name+" has been updated!":""})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETreport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(){l.columns=[],l.rows=[],l.error=!1,n.analyticFieldReport.get({fields:"field,alias",nolimit:!0,CustomReportId:l.report.id}).$promise.then(function(e){return l.columns=e?e.rows:[],n.analyticCustomReport.preview({id:l.report.id}).$promise}).then(function(e){l.rows=e}).catch(function(e){console.log(e),l.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(l.error)})}function r(){return l.queryResult="Loading...",n.analyticCustomReport.query({id:l.report.id}).$promise.then(function(e){l.queryResult=e.sql}).catch(function(e){l.queryResult="",console.log(e),l.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(l.error)})}var l=this;l.report=a||{},l.selectedTab=e.params.tab||0,l.gotoReports=i,l.saveReport=o,l.previewReport=s,l.queryReport=r}e.$inject=["$state","toasty","api","report"],angular.module("app.analytics").controller("ReportController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){t.hide()}var r=this;r.errors=[],r.report=angular.copy(a),r.closeDialog=s,function(){r.columns=[],r.rows=[],r.error=!1;var e={fields:"field,alias",nolimit:!0};e["analyticCustomReport"===o?"CustomReportId":"DefaultReportId"]=r.report.id,i.analyticFieldReport.get(e).$promise.then(function(e){return r.columns=e?e.rows:[],i[o].preview({id:r.report.id}).$promise}).then(function(e){r.rows=e}).catch(function(e){console.log(e),r.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(r.error)})}()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName"],angular.module("app.analytics").controller("PreviewReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(e,t){i.go("app.analytics.reports.edit",{id:e.id})}function m(e,t){a.show({controller:"CopyReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/copy/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:N.apiName,treeCustomData:N.treeCustomInstance.jstree(!0).get_json("#",{flat:!0})}}).finally(function(){N.treeCustomInstance.jstree(!0).refresh()})}function u(e,t){a.show({controller:"PreviewReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/preview/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:N.apiName}})}function p(e,t){a.show({controller:"RunReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/run/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:N.apiName}})}function g(e,t){var n;r.analyticMetric.get({fields:"id,name,metric,table",nolimit:!0}).$promise.then(function(t){n=_.keyBy(t.rows,"id");var a={fields:"field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0};return a["analyticCustomReport"===N.apiName?"CustomReportId":"DefaultReportId"]=e.id,r.analyticFieldReport.get(a).$promise}).then(function(t){for(var a=0;a<t.rows.length;a+=1)t.rows[a].MetricId&&(t.rows[a].field=n[t.rows[a].MetricId].metric,t.rows[a].custom=!0),delete t.rows[a].MetricId;var i=o.document.createElement("a");i.href="data:text/json;charset=utf-8,"+o.encodeURIComponent(angular.toJson({name:e.name,description:e.description,table:e.table,conditions:e.conditions,fields:t.rows})),i.download=e.name+".json",i.target="_self",i.click(),d.success({title:"Report downloaded!",msg:e.name?e.name+" has been downloaded!":""})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DOWNLOADJSON",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(e,t){var n=a.confirm().title("Are you sure want to delete the report?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete report").targetEvent(t).ok("OK").cancel("CANCEL");a.show(n).then(function(){y(e)},function(){console.log("CANCEL")})}function v(e){N.reports=e||{count:0,rows:[]}}function b(){N.query.offset=(N.query.page-1)*N.query.limit,N.apiName&&(N.promise=r[N.apiName].get(N.query,v).$promise)}function f(e,t){a.show({controller:"CreateOrEditReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/create/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{report:t,reports:N.reports.rows,apiName:N.apiName,currentNode:N.currentNode}})}function E(e,t,n){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),r.analyticCustomReport.save({name:t.name,description:t.description,table:t.table,conditions:t.conditions,parent:N.currentNode.id}).$promise.then(function(e){N.reports.rows.unshift(e),d.success({title:"Report saved!",msg:e.name?e.name+" has been saved!":""});var n=_.map(t.fields,function(t){return _.extend({},t,{CustomReportId:e.id})});return r.analyticFieldReport.bulkCreate(n).$promise}).then(function(e){d.success({title:"Fields saved!",msg:"Fields has been saved!"})}).catch(function(e){d.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),d.error({title:"Decode File Error",msg:e.toString()})}},a.readAsDataURL(e.file)}else d.error({title:"Format Error",msg:"Please use only json files"})}function y(e){N.apiName&&r[N.apiName].delete({id:e.id}).$promise.then(function(){_.remove(N.reports.rows,{id:e.id}),N.reports.count-=1,N.reports.rows.length||N.getReports(),d.success({title:"Report deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function A(){var e=_.clone(N.selectedReports);return N.selectedReports=[],e}function C(e){var t=a.confirm().title("Are you sure want to delete the selected reports?").htmlContent("<b>"+N.selectedReports.length+" selected</b> will be deleted.").ariaLabel("delete Reports").targetEvent(e).ok("OK").cancel("CANCEL");a.show(t).then(function(){N.selectedReports.forEach(function(e){y(e)}),N.selectedReports=[]})}function x(){N.selectedReports=[]}function T(){N.selectedReports=N.reports.rows}function S(e,t){N.treeDefaultInstance.jstree(!0).deselect_all(),N.treeDefaultInstance.jstree(!0).close_all(),N.currentNode=t.node,N.currentNode.custom=!0,N.apiName="analyticCustomReport",N.query.parent=t.node.id,b()}function O(e,t){N.treeCustomInstance.jstree(!0).deselect_all(),N.treeCustomInstance.jstree(!0).close_all(),N.currentNode=t.node,N.currentNode.custom=!1,N.apiName="analyticDefaultReport",N.query.parent=t.node.id,b()}function w(e,t){r.analyticTreeReport.update({id:2,tree:angular.toJson(N.treeCustomInstance.jstree(!0).get_json("#",{flat:!0}))}).$promise.then(function(){d.success({title:"Node Updated",msg:t.node.text?t.node.text+" has been updated!":"Node has been updated!"})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEanalyticTreeReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function R(e){return{core:{multiple:!1,animation:!0,error:function(e){console.error("treeCtrl: error from js tree - "+angular.toJson(e))},check_callback:!0,worker:!0},version:1,plugins:e?["contextmenu","dnd","search","state","wholerow"]:["search","state","wholerow"],contextmenu:{items:function(e){return{create:{label:s.instant("ANALYTICS.CREATE"),action:function(){e=N.treeCustomInstance.jstree(!0).create_node(e),N.treeCustomInstance.jstree(!0).edit(e)}},rename:{_disabled:"#"===e.parent,label:s.instant("ANALYTICS.RENAME"),action:function(){N.treeCustomInstance.jstree(!0).edit(e)}},remove:{_disabled:"#"===e.parent,label:s.instant("ANALYTICS.REMOVE"),action:function(){var t=a.confirm().title("Are you sure want to delete the node?").htmlContent("<b>"+(e.text?e.text:"Node")+"</b> and its subnode will be deleted.").ariaLabel("delete node").ok("OK").cancel("CANCEL");a.show(t).then(function(){N.treeCustomInstance.jstree(!0).delete_node(e)})}}}}}}}function I(e){return e?{create_node:w,rename_node:w,move_node:w,delete_node:w,select_node:S}:{select_node:O}}var N=this;N.reports={count:0,rows:[]},N.selectedReports=[],N.query={fields:"createdAt,updatedAt,id,name,description,table,parent,conditions",limit:10,page:1,sort:"-updatedAt"},N.apiName=null,N.currentPath="",N.customTree=!0,N.editstate=c,N.copydialog=m,N.previewdialog=u,N.rundialog=p,N.downloadfile=g,N.deleteconfirm=h,N.success=v,N.getReports=b,N.createOrEditReport=f,N.importReport=E,N.deleteReport=y,N.exportSelectedReports=A,N.deleteSelectedReports=C,N.deselectReports=x,N.selectAllReports=T,N.treeDefaultData=l.rows[0]?angular.fromJson(l.rows[0].tree):[],N.treeCustomData=l.rows[1]?angular.fromJson(l.rows[1].tree):[],N.treeDefaultConfig=R(!1),N.treeCustomConfig=R(!0),N.treeDefaultEvents=I(!1),N.treeCustomEvents=I(!0);var D=!0,L=1;e.$watch("vm.query.filter",function(e,n){D?t(function(){D=!1}):(n||(L=N.query.page),e!==n&&(N.query.page=1),e||(N.query.page=L),N.getReports())}),e.$watch("vm.search",function(e,t){N.treeDefaultInstance&&N.treeDefaultInstance.jstree(!0).search(e),N.treeCustomInstance&&N.treeCustomInstance.jstree(!0).search(e)})}e.$inject=["$scope","$timeout","$document","$mdDialog","$state","$window","$translate","api","treeReports","toasty"],angular.module("app.analytics").controller("ReportsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){d.export={id:d.report.id,name:d.report.name,startDate:new Date(moment().startOf("day")),endDate:new Date(moment().endOf("day")),output:"csv"}}function r(){d.errors=[],i[o].run(_.merge(d.export,{startDate:moment(d.export.startDate).format("YYYY-MM-DD HH:mm:ss"),endDate:moment(d.export.endDate).format("YYYY-MM-DD HH:mm:ss")})).$promise.then(function(e){n.success({title:"Report properly run!",msg:d.report.name?d.report.name+" has been run!":""}),l()}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function l(){t.hide()}var d=this;d.errors=[],d.report=angular.copy(a),d.export={},d.runReport=r,d.closeDialog=l,d.refreshDate=s,s()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName"],angular.module("app.analytics").controller("RunReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.squareOdbc.save(p.odbc).$promise.then(function(e){p.odbcs.unshift(e),i.success({title:"Odbc properly created",msg:p.odbc.name?p.odbc.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareOdbc.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.squareOdbc.update({id:p.odbc.id},p.odbc).$promise.then(function(e){var t=_.find(p.odbcs,{id:e.id});t&&_.merge(t,e),i.success({title:"Odbc properly saved!",msg:p.odbc.name?p.odbc.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareOdbc.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The odbc will be deleted.").ariaLabel("Delete Odbc").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.squareOdbc.delete({id:p.odbc.id}).$promise.then(function(){_.remove(p.odbcs,{id:p.odbc.id}),i.success({title:"Odbc properly deleted!",msg:(p.odbc.name||"odbc")+" has been deleted!"}),u(p.odbc)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CALLYSQUARE.EDIT_ODBC",p.odbc=angular.copy(s),p.odbcs=o,p.newOdbc=!1,p.odbc||(p.odbc={},p.title="CALLYSQUARE.NEW_ODBC",p.newOdbc=!0),p.addNewOdbc=l,p.saveOdbc=d,p.deleteOdbc=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","odbcs","odbc","api"],angular.module("app.callysquare").controller("CreateOrEditOdbcDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditOdbcDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/odbcs/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{odbc:e,odbcs:C.odbcs.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the odbc?").htmlContent("<b>"+(e.name||"odbc")+"</b> will be deleted.").ariaLabel("delete odbc").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function p(e,t){return l.squareOdbc.test({id:e.id}).$promise.then(function(){c.success({title:"Square ODBC properly tested",msg:"Connection succeded!"})}).catch(function(e){c.error({title:"Square ODBC properly tested",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){C.odbcs=e||{count:0,rows:[]}}function h(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.squareOdbc.get(C.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditOdbcDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/odbcs/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{odbc:t,odbcs:C.odbcs.rows}})}function b(e){l.squareOdbc.delete({id:e.id}).$promise.then(function(){_.remove(C.odbcs.rows,{id:e.id}),C.odbcs.count-=1,C.odbcs.rows.length||C.getODBC(),c.success({title:"Odbc deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareOdbc",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(C.selectedODBC);return C.selectedODBC=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected odbcs?").htmlContent("<b>"+C.selectedODBC.length+" selected</b> will be deleted.").ariaLabel("delete Odbcs").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){C.selectedODBC.forEach(function(e){b(e)}),C.selectedODBC=[]})}function y(){C.selectedODBC=[]}function A(){C.selectedODBC=C.odbcs.rows}var C=this;C.odbcs=r||{count:0,rows:[]},C.table="odbcs",C.listOrder="",C.listOrderAsc=null,C.selectedODBC=[],C.query={fields:"createdAt,updatedAt,id,name,dsn,description",sort:"-updatedAt",limit:10,page:1},C.editdialog=m,C.deleteconfirm=u,C.testtestOdbc=p,C.success=g,C.getODBC=h,C.createOrEditOdbc=v,C.deleteOdbc=b,C.exportSelectedODBC=f,C.deleteSelectedODBC=E,C.deselectODBC=y,C.selectAllODBC=A;var x=!0,T=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(T=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=T),C.getODBC())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","odbcs","api","msUtils","toasty"],angular.module("app.callysquare").controller("OdbcsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){u.errors=[],i.squareProject.save(u.project).$promise.then(function(e){u.projects.unshift(e),t.success({title:"Project properly created",msg:u.project.name?u.project.name+" has been created!":""}),m(e),u.openFromEditor&&(u.newWindow?s.open("/callysquare/projects/"+e.id,"_blank"):r.go("app.callysquare.projects.edit",{id:e.id}))}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.save"}];for(var n=0;n<e.data.errors.length;n++)t.error({title:e.data.errors[n].type,msg:e.data.errors[n].message})}else t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareProject.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){u.errors=[],i.squareProject.update({id:u.project.id},u.project).$promise.then(function(e){var n=_.find(u.projects,{id:e.id});n&&_.merge(n,e),t.success({title:"Project properly saved!",msg:u.project.name?u.project.name+" has been saved!":""}),m(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.update"}];for(var n=0;n<e.data.errors.length;n++)t.error({title:e.data.errors[n].type,msg:e.data.errors[n].message})}else t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareProject.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){u.errors=[];var n=e.confirm().title("Are you sure?").content("The project will be deleted.").ariaLabel("Delete Project").ok("Delete").cancel("Cancel").targetEvent(event);e.show(n).then(function(){i.squareProject.delete({id:u.project.id}).$promise.then(function(){_.remove(u.projects,{id:u.project.id}),t.success({title:"Project properly deleted!",msg:u.project.name?u.project.name+" has been deleted!":""}),m(u.project)}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.delete"}]})},function(){})}function m(t){e.hide(t)}var u=this;u.errors=[],u.title="CALLYSQUARE.EDIT_PROJECT",u.project=angular.copy(a),u.newWindow=!0,u.projects=n,u.newProject=!1,u.openFromEditor=o,u.project||(u.project={name:"",description:""},u.title="CALLYSQUARE.NEW_PROJECT",u.newProject=!0),u.addNewProject=l,u.saveProject=d,u.deleteProject=c,u.closeDialog=m}e.$inject=["$mdDialog","toasty","projects","project","api","openFromEditor","$window","$state"],angular.module("app.callysquare").controller("CreateOrEditProjectDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h,v,b,f,E){function y(e,t,n,a){return _.map(e,function(e){return{value:e[t],option:e[n],group:a?e[a]:void 0}})}function A(t){t&&E(C.attributes),e.hide()}var C=this,x={playback:["file_id"],answer:["timeout"],menu:["file_id","digit","response","retry"],getdigits:["file_id","variable_id","mindigit","maxdigit","retry"],getsecretdigits:["file_id","variable_id","mindigit","maxdigit","hiddendigitsnum","retry"],vswitch:["variable_id"],database:["odbc_id","query"],ext_dial:["trunk_name","phone","timeout"],set:["variable_id"],math:["variable_id"],gotoc:["context","extension","priority"],system:["command"],agi:["command"],gotoif:["condition"],saydigits:["digits"],saynumber:["number"],sayphonetic:["text"],record:["file","timeout"],goal:["goalname"],dial:["sip_id","timeout"],queue:["queue_id","timeout"],callback:["list_id","name","phone","delay"],gotoiftime:["interval_id"],voicemail:["mailbox"],subproject:["project_id"],sendSMS:["account_id","to","sms_text"],sendMail:["account_id","to"],sendFax:["account_id","to","attachment_path"],tts:["text"],ispeechtts:["text","key","speed"],ispeechasr:["key","timeout"],custom_app:["application"]},T={queue:["file_id"],database:["variable_id"]};C.cellName=f.tagName,C.attributes=_.map(f.attributes,function(e){return{name:e.name,value:e.value,defaultValue:T[C.cellName]&&_.includes(T[C.cellName],e.name),required:x[C.cellName]&&_.includes(x[C.cellName],e.name)}}),C.values={sip_id:y(s,"id","fullname","role"),trunk_name:y(r,"name","name"),trunk_id:y(r,"id","name"),queue_id:y(l,"id","name"),file_id:y(d,"id","name"),variable_id:y(c,"id","name"),odbc_id:y(m,"id","name"),project_id:y(u,"id","name"),context:y(p,"id","name"),interval_id:function(e,t,n,a){var i=_.filter(e,function(e){return null===e[a]}),o=[];return _.forEach(i,function(i){o.push({value:i[t],option:i[n]});var s=_.filter(e,function(e){return e[a]===i.id});_.forEach(s,function(e){o.push({value:e[t],option:" - "+e[n]})})}),o}(g,"id","name","IntervalId"),account_id:y(h,"id","name"),template_id:y(v,"id","name"),list_id:y(b,"id","name"),answer:[{value:"yes",option:"Yes"},{value:"no",option:"No"}],hiddendigitspos:[{value:"first",option:"First"},{value:"last",option:"Last"}],recordingformat:[{value:"wav",option:"Wav"},{value:"gsm",option:"Gms"}],intkey:[{value:"#",option:"#"},{value:"*",option:"*"}],beep:[{value:"BEEP",option:"Yes"},{value:"NOBEEP",option:"No"}],model:n,ispeech_asr_language:a,ispeech_tts_language:i,google_tts_language:o},C.closeDialog=A,C.getMap=y}e.$inject=["$mdDialog","toasty","ispeechAsrModel","ispeechAsrLanguage","ispeechTtsLanguage","googleTtsLanguage","users","trunks","queues","sounds","variables","databases","projects","contexts","intervals","mailAccounts","templates","lists","cell","saveCallback"],angular.module("app.callysquare").controller("MxGraphDialogController",e)}(),function(){"use strict";function e(){return{require:"ngModel",link:function(e,t,n,a){a.$parsers.push(function(e){return""+e}),a.$formatters.push(function(e){return parseFloat(e)})}}}angular.module("app.callysquare").directive("stringToNumber",e)}(),function(){"use strict";function e(){return[{value:"af",option:"Afrikaans"},{value:"sq",option:"Albanian"},{value:"am",option:"Amharic"},{value:"ar",option:"Arabic"},{value:"hy",option:"Armenian"},{value:"az",option:"Azerbaijani"},{value:"eu",option:"Basque"},{value:"be",option:"Belarusian"},{value:"bn",option:"Bengali"},{value:"bh",option:"Bihari"},{value:"bs",option:"Bosnian"},{value:"br",option:"Breton"},{value:"bg",option:"Bulgarian"},{value:"km",option:"Cambodian"},{value:"ca",option:"Catalan"},{value:"zh-CN",option:"Chinese (Simplified)"},{value:"zh-TW",option:"Chinese (Traditional)"},{value:"co",option:"Corsican"},{value:"hr",option:"Croatian"},{value:"cs",option:"Czech"},{value:"da",option:"Danish"},{value:"nl",option:"Dutch"},{value:"en",option:"English"},{value:"eo",option:"Esperanto"},{value:"et",option:"Estonian"},{value:"fo",option:"Faroese"},{value:"tl",option:"Filipino"},{value:"fi",option:"Finnish"},{value:"fr",option:"French"},{value:"fy",option:"Frisian"},{value:"gl",option:"Galician"},{value:"ka",option:"Georgian"},{value:"de",option:"German"},{value:"el",option:"Greek"},{value:"gn",option:"Guarani"},{value:"gu",option:"Gujarati"},{value:"xx-hacker",option:"Hacker"},{value:"ha",option:"Hausa"},{value:"iw",option:"Hebrew"},{value:"hi",option:"Hindi"},{value:"hu",option:"Hungarian"},{value:"is",option:"Icelandic"},{value:"id",option:"Indonesian"},{value:"ia",option:"Interlingua"},{value:"ga",option:"Irish"},{value:"it",option:"Italian"},{value:"jw",option:"Javanese"},{value:"ja",option:"Japanese"},{value:"kn",option:"Kannada"},{value:"kk",option:"Kazakh"},{value:"rw",option:"Kinyarwanda"},{value:"rn",option:"Kirundi"},{value:"xx-klingon",option:"Klingon"},{value:"ku",option:"Kurdish"},{value:"ko",option:"Korean"},{value:"ky",option:"Kyrgyz"},{value:"lo",option:"Laothian"},{value:"la",option:"Latin"},{value:"lv",option:"Latvian"},{value:"ln",option:"Lingala"},{value:"lt",option:"Lithuanian"},{value:"mk",option:"Macedonian"},{value:"mg",option:"Malagasy"},{value:"ml",option:"Malayalam"},{value:"mt",option:"Maltese"},{value:"mi",option:"Maori"},{value:"mr",option:"Marathi"},{value:"mo",option:"Moldavian"},{value:"mn",option:"Mongolian"},{value:"sr-ME",option:"Montenegrin"},{value:"ne",option:"Nepali"},{value:"no",option:"Norwegian"},{value:"nn",option:"Norwegian (Nynorsk)"},{value:"oc",option:"Occitan"},{value:"or",option:"Oriya"},{value:"om",option:"Oromo"},{value:"ps",option:"Pashto"},{value:"fa",option:"Persian"},{value:"xx-pirate",option:"Pirate"},{value:"pl",option:"Polish"},{value:"pt-BR",option:"Portuguese (Brazil)"},{value:"pt-PT",option:"Portuguese (Portugal)"},{value:"pa",option:"Punjabi"},{value:"qu",option:"Quechua"},{value:"ro",option:"Romanian"},{value:"rm",option:"Romansh"},{value:"ru",option:"Russian"},{value:"gd",option:"Scots Gaelic"},{value:"sr",option:"Serbian"},{value:"sh",option:"Serbo-Croatian"},{value:"st",option:"Sesotho"},{value:"sn",option:"Shona"},{value:"sd",option:"Sindhi"},{value:"si",option:"Sinhalese"},{value:"sk",option:"Slovak"},{value:"sl",option:"Slovenian"},{value:"so",option:"Somali"},{value:"es",option:"Spanish"},{value:"su",option:"Sundanese"},{value:"sw",option:"Swahili"},{value:"sv",option:"Swedish"},{value:"tg",option:"Tajik"},{value:"ta",option:"Tamil"},{value:"tt",option:"Tatar"},{value:"te",option:"Telugu"},{value:"th",option:"Thai"},{value:"ti",option:"Tigrinya"},{value:"to",option:"Tonga"},{value:"tr",option:"Turkish"},{value:"tk",option:"Turkmen"},{value:"tw",option:"Twi"},{value:"ug",option:"Uighur"},{value:"uk",option:"Ukrainian"},{value:"ur",option:"Urdu"},{value:"uz",option:"Uzbek"},{value:"vi",option:"Vietnamese"},{value:"cy",option:"Welsh"},{value:"xh",option:"Xhosa"},{value:"yi",option:"Yiddish"},{value:"yo",option:"Yoruba"},{value:"zu",option:"Zulu"}]}function t(){return[{value:"usenglishfemale",option:"US English Female"},{value:"usenglishmale",option:"US English Male"},{value:"ukenglishfemale",option:"UK English Female"},{value:"ukenglishmale",option:"UK English Male"},{value:"auenglishfemale",option:"Australian English"},{value:"usspanishfemale",option:"US Spanish Female"},{value:"usspanishmale",option:"US Spanish Male"},{value:"chchinesefemale",option:"Chinese Female"},{value:"chchinesemale",option:"Chinese Male"},{value:"hkchinesefemale",option:"Hong Kong Cantonese Female"},{value:"twchinesefemale",option:"Taiwan Chinese Female"},{value:"jpjapanesefemale",option:"Japanese Female"},{value:"jpjapanesemale",option:"Japanese Male"},{value:"krkoreanfemale",option:"Korean Female"},{value:"krkoreanmale",option:"Korean Male"},{value:"caenglishfemale",option:"Canadian English Female"},{value:"huhungarianfemale",option:"Hungarian Female"},{value:"brportuguesefemale",option:"Brazilian Portuguese Female"},{value:"eurportuguesefemale",option:"European Portuguese Female"},{value:"eurportuguesemale",option:"European Portuguese Male"},{value:"eurspanishfemale",option:"European Spanish Female"},{value:"eurspanishmale",option:"European Spanish Male"},{value:"eurcatalanfemale",option:"European Catalan Female"},{value:"eurczechfemale",option:"European Czech Female"},{value:"eurdanishfemale",option:"European Danish Female"},{value:"eurfinnishfemale",option:"European Finnish Female"},{value:"eurfrenchfemale",option:"European French Female"},{value:"eurfrenchmale",option:"European French Male"},{value:"eurnorwegianfemale",option:"European Norwegian Female"},{value:"eurdutchfemale",option:"European Dutch Female"},{value:"eurpolishfemale",option:"European Polish Female"},{value:"euritalianfemale",option:"European Italian Female"},{value:"euritalianmale",option:"European Italian Male"},{value:"eurturkishfemale",option:"European Turkish Female"},{value:"eurturkishmale",option:"European Turkish Male"},{value:"eurgermanfemale",option:"European German Female"},{value:"eurgermanmale",option:"European German Male"},{value:"rurussianfemale",option:"Russian Female"},{value:"rurussianmale",option:"Russian Male"},{value:"swswedishfemale",option:"Swedish Female"},{value:"cafrenchfemale",option:"Canadian French Female"},{value:"cafrenchmale",option:"Canadian French Male"}]}function n(){return[{value:"en-US",option:"English (US)"},{value:"en-CA",option:"English (Canada)"},{value:"en-GB",option:"English (UK)"},{value:"en-AU",option:"English (Australia)"},{value:"es-ES",option:"Spanish (Spain)"},{value:"es-MX",option:"Spanish (Mexico)"},{value:"it-IT",option:"Italian (Italy) / Finnish (Finland)"},{value:"fr-FR",option:"German (Germany)"},{value:"fr-CA",option:"French (Canada)"},{value:"pl-PL",option:"Polish (Poland)"},{value:"pt-PT",option:"Portuguese (Portugal)"},{value:"ca-ES",option:"Catalan (Catalan)"},{value:"zh-TW",option:"Chinese (Taiwan)"},{value:"da-DK",option:"Danish (Denmark)"},{value:"ja-JP",option:"Japanese (Japan)"},{value:"ko-KR",option:"Korean (Korea)"},{value:"nl-NL",option:"Dutch (Netherlands)"},{value:"nb-NO",option:"Norwegian (Norway)"},{value:"pt-BR",option:"Portuguese (Brazil)"},{value:"ru-RU",option:"Russian (Russia)"},{value:"sv-SE",option:"Swedish (Sweden)"},{value:"zh-CN",option:"Chinese (China)"},{value:"zh-HK",option:"Chinese (Hong Kong)"}]}function a(){return[{value:"0",option:"Default"},{value:"date",option:"Date"},{value:"usmoney",option:"US Money"},{value:"numbersto9",option:"Numbers to 9"},{value:"numbersto99",option:"Numbers to 99"},{value:"numbersto999",option:"Numbers to 999"},{value:"time",option:"Time"},{value:"phonenumber",option:"Phone number"},{value:"streets",option:"Streets"},{value:"citystate",option:"US City/States"}]}angular.module("app.callysquare").factory("ispeechAsrModel",a).factory("ispeechAsrLanguage",n).factory("ispeechTtsLanguage",t).factory("googleTtsLanguage",e)}(),function(){"use strict";function e(e,t,n,a){function i(t){t?(a(o.project.preproduction),e.hide(o.project.preproduction)):e.hide()}var o=this;o.project={preproduction:n},o.closeDialog=i}e.$inject=["$mdDialog","toasty","currentXML","saveCallback"],angular.module("app.callysquare").controller("MxGraphEditXMLController",e)}(),function(){"use strict";function e(e,t){function n(e){if(i.errors=[],"text/xml"!==e.file.type&&i.errors.push({message:"The format "+e.file.type+" is not supported!"}),e.file.size>5242880&&i.errors.push({message:"The file is too big. Max 5MB files are supported!"}),!i.errors.length){var t=new FileReader;t.onload=function(e){a(e.target.result)},t.readAsText(e.file)}}function a(n){n?(t(n),e.hide(n)):e.hide()}var i=this;i.errors=[],i.ngFlowOptions={chunkSize:5242880,maxChunkRetries:1,singleFile:!0,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},i.ngFlow={flow:{}},i.dropping=!1,i.closeDialog=a,i.fileAdded=n}e.$inject=["$mdDialog","saveCallback"],angular.module("app.callysquare").controller("MxGraphImportXMLController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],a.squareProject.update({id:s.project.id},{notes:s.project.notes,description:s.project.description}).$promise.then(function(n){t.success({title:"Project updated!",msg:s.project.name?s.project.name+" has been updated!":""}),e.hide(n)}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.update"}]})}function o(){e.hide()}var s=this;s.project=_.clone(n),s.closeDialog=o,s.save=i}e.$inject=["$mdDialog","toasty","project","api"],angular.module("app.callysquare").controller("MxGraphUpdateInfoController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(t){s.errors=[],t?(e.hide(),s.newWindow?a.open("/callysquare/projects/"+s.id,"_blank"):i.go("app.callysquare.projects.edit",{id:s.id})):e.hide()}var s=this;s.projects=n,s.id="",s.newWindow=!0,s.closeDialog=o}e.$inject=["$mdDialog","toasty","projects","$window","$state"],angular.module("app.callysquare").controller("MxGraphOpenProjectController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){delete d.project.id,i.squareProject.save(d.project).$promise.then(function(n){t.success({title:"Project properly created",msg:d.project.name?d.project.name+" has been created!":""}),e.hide(n),d.newWindow?o.open("/callysquare/projects/"+n.id,"_blank"):s.go("app.callysquare.projects.edit",{id:n.id})}).catch(function(e){console.error(e),d.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.save"}]})}function l(){e.hide()}var d=this;d.project=angular.copy(n),d.project.name+="_new",d.project.preproduction=a,d.newWindow=!0,d.closeDialog=l,d.save=r}e.$inject=["$mdDialog","toasty","project","currentXML","api","$window","$state"],angular.module("app.callysquare").controller("MxGraphSaveProjectAsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h,v,b,f){function E(){new EditorUi(N,new Editor,document.getElementById("geEditor")).openString(N.project.preproduction,N.project.name,N.project)}function y(e,a){n.show({controller:"MxGraphDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/dialog/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{users:s.rows||[],trunks:r.rows||[],queues:l.rows||[],sounds:d.rows||[],variables:c.rows||[],databases:m.rows||[],contexts:u.rows||[],projects:p.rows||[],intervals:g.rows||[],mailAccounts:h.rows||[],templates:v.rows||[],lists:b.rows||[],cell:e,saveCallback:a}})}function A(e){n.show({controller:"CreateOrEditProjectDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/create/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{project:e,projects:p.rows,openFromEditor:!0}})}function C(){n.show({controller:"MxGraphOpenProjectController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/open/open.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{projects:p.rows||[]}})}function x(e){n.show({controller:"MxGraphSaveProjectAsController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/saveAs/saveAs.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{project:N.project,currentXML:e}}).then(function(e){e&&p.rows.push(e)})}function T(e){n.show({controller:"CreateOrEditVariableDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/variables/create/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{variable:e,variables:c.rows}})}function S(e){n.show({controller:"MxGraphUpdateInfoController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/info/info.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,locals:{project:N.project}}).then(function(e){e&&_.merge(N.project,e)})}function O(e,a){n.show({controller:"MxGraphEditXMLController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/edit/edit.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{currentXML:e,saveCallback:a}}).then(function(e){e&&(N.project.preproduction=e)})}function w(e){n.show({controller:"MxGraphImportXMLController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/import/import.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{saveCallback:e}}).then(function(e){e&&(N.project.preproduction=e)})}function R(e,t){var n={preproduction:e};t&&(n.production=e),i.squareProject.update({id:N.project.id},n).$promise.then(function(e){a.success({title:"Project "+(t?"published":"saved")+"!",msg:N.project.name?N.project.name+" has been "+(t?"published":"saved")+"!":""}),N.project.preproduction=e.preproduction}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareProject",msg:e.data?JSON.stringify(e.data):e.toString()})})}function I(){e.go("app.callysquare.projects")}var N=this;N.project=o||{},N.saveOrPublishProject=R,N.$onInit=E,N.openDialog=y,N.newProject=A,N.openProject=C,N.saveProjectAs=x,N.newVariable=T,N.updateInfo=S,N.editXML=O,N.importXML=w,N.gotoProjects=I}e.$inject=["$state","$document","$mdDialog","toasty","api","project","users","trunks","queues","sounds","variables","databases","contexts","projects","intervals","mailAccounts","templates","lists","$window"],angular.module("app.callysquare").controller("ProjectController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(e,n){t.go("app.callysquare.projects.edit",{id:e.id})}function m(e,t){var n=s.confirm().title("Are you sure want to delete the project?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete project").targetEvent(t).ok("OK").cancel("CANCEL");s.show(n).then(function(){h(e)},function(){console.log("CANCEL")})}function u(e){y.projects=e||{count:0,rows:[]}}function p(){y.query.offset=y.query.page-1,y.promise=i.squareProject.get(y.query,u).$promise}function g(e,t){s.show({controller:"CreateOrEditProjectDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/create/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{project:t,projects:y.projects.rows,openFromEditor:null}})}function h(e){i.squareProject.delete({id:e.id}).$promise.then(function(){_.remove(y.projects.rows,{id:e.id}),y.projects.count-=1,y.projects.rows.length||y.getProjects(),d.success({title:"Project deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareProject",msg:e.data?JSON.stringify(e.data):e.toString()})})}function v(){var e=_.clone(y.selectedProjects);return y.selectedProjects=[],e}function b(e){var t=s.confirm().title("Are you sure want to delete the selected projects?").htmlContent("<b>"+y.selectedProjects.length+" selected</b> will be deleted.").ariaLabel("delete Projects").targetEvent(e).ok("OK").cancel("CANCEL");s.show(t).then(function(){y.selectedProjects.forEach(function(e){h(e)}),y.selectedProjects=[]})}function f(){y.selectedProjects=[]}function E(){y.selectedProjects=y.projects.rows}var y=this;y.projects=a||{count:0,rows:[]},y.table="projects",y.listOrder="",y.listOrderAsc=null,y.selectedProjects=[],y.query={fields:"id,name,description,notes",sort:"-updatedAt",limit:10,page:1},y.editstate=c,y.deleteconfirm=m,y.success=u,y.getProjects=p,y.createOrEditProject=g,y.deleteProject=h,y.exportSelectedProjects=v,y.deleteSelectedProjects=b,y.deselectProjects=f,y.selectAllProjects=E;var A=!0,C=1;e.$watch("vm.query.filter",function(e,t){A?l(function(){A=!1}):(t||(C=y.query.page),e!==t&&(y.query.page=1),e||(y.query.page=C),y.getProjects())})}e.$inject=["$scope","$state","$mdSidenav","projects","api","msUtils","$mdDialog","$document","$timeout","toasty"],angular.module("app.callysquare").controller("ProjectsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.squareRecording.save(p.squareRecording).$promise.then(function(e){p.squareRecordings.unshift(e),i.success({title:"SquareRecording properly created",msg:p.squareRecording.name?p.squareRecording.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.squareRecording.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareRecording.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.squareRecording.update({id:p.squareRecording.id},p.squareRecording).$promise.then(function(e){var t=_.find(p.squareRecordings,{id:e.id});t&&_.merge(t,e),i.success({title:"SquareRecording properly saved!",msg:p.squareRecording.name?p.squareRecording.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.squareRecording.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareRecording.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The squareRecording will be deleted.").ariaLabel("Delete SquareRecording").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.squareRecording.delete({id:p.squareRecording.id}).$promise.then(function(){_.remove(p.squareRecordings,{id:p.squareRecording.id}),i.success({title:"SquareRecording properly deleted!",msg:(p.squareRecording.name||"squareRecording")+" has been deleted!"}),u(p.squareRecording)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.squareRecording.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CALLYSQUARE.EDIT_SQUARERECORDING",p.squareRecording=angular.copy(s),p.squareRecordings=o,p.newSquareRecording=!1,p.squareRecording||(p.squareRecording={},p.title="CALLYSQUARE.NEW_SQUARERECORDING",p.newSquareRecording=!0),p.addNewSquareRecording=l,p.saveSquareRecording=d,p.deleteSquareRecording=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","squareRecordings","squareRecording","api"],angular.module("app.callysquare").controller("CreateOrEditSquareRecordingDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,n){return l.squareRecording.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/square/recordings/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the squareRecording?").htmlContent("<b>"+(e.name||"squareRecording")+"</b> will be deleted.").ariaLabel("delete squareRecording").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.squareRecordings=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.squareRecording.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSquareRecordingDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/squareRecordings/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{squareRecording:t,squareRecordings:A.squareRecordings.rows}})}function v(e){l.squareRecording.delete({id:e.id}).$promise.then(function(){_.remove(A.squareRecordings.rows,{id:e.id}),A.squareRecordings.count-=1,A.squareRecordings.rows.length||A.getSquareRecordings(),c.success({title:"SquareRecording deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSquareRecordings);return A.selectedSquareRecordings=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected squareRecordings?").htmlContent("<b>"+A.selectedSquareRecordings.length+" selected</b> will be deleted.").ariaLabel("delete SquareRecordings").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSquareRecordings.forEach(function(e){v(e)}),A.selectedSquareRecordings=[]})}function E(){A.selectedSquareRecordings=[]}function y(){A.selectedSquareRecordings=A.squareRecordings.rows}var A=this;A.squareRecordings=r||{count:0,rows:[]},A.table="squareRecordings",A.listOrder="",A.listOrderAsc=null,A.selectedSquareRecordings=[],A.query={fields:"createdAt,updatedAt,id,projectName,uniqueid,callerid,extension,audio,createdAt",sort:"-updatedAt",limit:10,page:1},A.downloadfile=m,A.deleteconfirm=u,A.success=p,A.getSquareRecordings=g,A.createOrEditSquareRecording=h,A.deleteSquareRecording=v,A.exportSelectedSquareRecordings=b,A.deleteSelectedSquareRecordings=f,A.deselectSquareRecordings=E,A.selectAllSquareRecordings=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSquareRecordings())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","squareRecordings","api","msUtils","toasty"],angular.module("app.callysquare").controller("SquareRecordingsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.chat.chatQueues.edit",{id:e.id,chatQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the chatQueue?").htmlContent("<b>"+(e.name||"chatQueue")+"</b> will be deleted.").ariaLabel("delete chatQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.chatQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.chatQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditChatQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatQueue:t,chatQueues:A.chatQueues.rows}})}function v(e){l.chatQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.chatQueues.rows,{id:e.id}),A.chatQueues.count-=1,A.chatQueues.rows.length||A.getChatQueues(),c.success({title:"ChatQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedChatQueues);return A.selectedChatQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected chatQueues?").htmlContent("<b>"+A.selectedChatQueues.length+" selected</b> will be deleted.").ariaLabel("delete ChatQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedChatQueues.forEach(function(e){v(e)}),A.selectedChatQueues=[]})}function E(){A.selectedChatQueues=[]}function y(){A.selectedChatQueues=A.chatQueues.rows}var A=this;A.chatQueues=r||{count:0,rows:[]},A.table="chatQueues",A.listOrder="",A.listOrderAsc=null,A.selectedChatQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"Round Robin Memory",value:"'roundrobun'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getChatQueues=g,A.createOrEditChatQueue=h,A.deleteChatQueue=v,A.exportSelectedChatQueues=b,A.deleteSelectedChatQueues=f,A.deselectChatQueues=E,A.selectAllChatQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getChatQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","chatQueues","api","msUtils","toasty"],angular.module("app.chat").controller("ChatQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.chatQueue.save(p.chatQueue).$promise.then(function(e){p.chatQueues.unshift(e),i.success({title:"ChatQueue properly created",msg:p.chatQueue.name?p.chatQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.chatQueue.update({id:p.chatQueue.id},p.chatQueue).$promise.then(function(e){var t=_.find(p.chatQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"ChatQueue properly saved!",msg:p.chatQueue.name?p.chatQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The chatQueue will be deleted.").ariaLabel("Delete ChatQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.chatQueue.delete({id:p.chatQueue.id}).$promise.then(function(){_.remove(p.chatQueues,{id:p.chatQueue.id}),i.success({title:"ChatQueue properly deleted!",msg:(p.chatQueue.name||"chatQueue")+" has been deleted!"}),u(p.chatQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.chatQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CHAT.EDIT_CHATQUEUE",p.chatQueue=angular.copy(s),p.chatQueues=o,p.newChatQueue=!1,p.chatQueue||(p.chatQueue={strategy:"beepall"},p.title="CHAT.NEW_CHATQUEUE",p.newChatQueue=!0),p.addNewChatQueue=l,p.saveChatQueue=d,p.deleteChatQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","chatQueues","chatQueue","api"],angular.module("app.chat").controller("CreateOrEditChatQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.chatQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("CHAT.ALL_TEAMS"),labelSelected:i.instant("CHAT.SELECTED_TEAMS"),transferCallback:function(e,a){n.chatQueue[a?"removeTeams":"addTeams"]({id:s.chatQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:chatQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.chatQueue.getTeams({id:s.chatQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","chatQueue","$translate"],angular.module("app.chat").controller("ChatQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"ChatQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:d.chatQueues?d.chatQueues.rows:[]}})}function r(){e.go("app.chat.chatQueues")}function l(){i.chatQueue.update({id:d.chatQueue.id},d.chatQueue).$promise.then(function(){a.success({title:"ChatQueue updated!",msg:d.chatQueue.name?d.chatQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.chatQueue=e.params.chatQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoChatQueues=r,d.saveChatQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","chatQueue"],angular.module("app.chat").controller("ChatQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.chat.chatWebsites.edit",{id:e.id,chatWebsite:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the chatWebsite?").htmlContent("<b>"+(e.name||"chatWebsite")+"</b> will be deleted.").ariaLabel("delete chatWebsite").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.chatWebsites=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.chatWebsite.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditChatWebsiteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:t,chatWebsites:A.chatWebsites.rows}})}function v(e){l.chatWebsite.delete({id:e.id}).$promise.then(function(){_.remove(A.chatWebsites.rows,{id:e.id}),A.chatWebsites.count-=1,A.chatWebsites.rows.length||A.getChatWebsites(),c.success({title:"ChatWebsite deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatWebsite",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedChatWebsites);return A.selectedChatWebsites=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected chatWebsites?").htmlContent("<b>"+A.selectedChatWebsites.length+" selected</b> will be deleted.").ariaLabel("delete ChatWebsites").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedChatWebsites.forEach(function(e){v(e)}),A.selectedChatWebsites=[]})}function E(){A.selectedChatWebsites=[]}function y(){A.selectedChatWebsites=A.chatWebsites.rows}var A=this;A.chatWebsites=r||{count:0,rows:[]},A.table="chatWebsites",A.listOrder="",A.listOrderAsc=null,A.selectedChatWebsites=[],A.query={fields:"createdAt,updatedAt,id,name,address,remote,ListId,fidelity,timeout,description,color,color_focus,color_button,header_shape,animation,defaultWhiteLabel,whiteLabel,defaultLogo,download_transcript,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,OfflineTemplateId,name_title,username_placeholder,email_title,email_placeholder,header_online,online_message,start_chat_button,agents_busy,header_offline,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,page:1},A.arrayheader_shape=_.keyBy([{option:"Rounded",value:"'rounded'"},{option:"Squared",value:"'squared'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getChatWebsites=g,A.createOrEditChatWebsite=h,A.deleteChatWebsite=v,A.exportSelectedChatWebsites=b,A.deleteSelectedChatWebsites=f,A.deselectChatWebsites=E,A.selectAllChatWebsites=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getChatWebsites())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","chatWebsites","api","msUtils","toasty"],angular.module("app.chat").controller("ChatWebsitesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.chatWebsite.save(p.chatWebsite).$promise.then(function(e){p.chatWebsites.unshift(e),i.success({title:"ChatWebsite properly created",msg:p.chatWebsite.name?p.chatWebsite.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatWebsite.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatWebsite.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.chatWebsite.update({id:p.chatWebsite.id},p.chatWebsite).$promise.then(function(e){var t=_.find(p.chatWebsites,{id:e.id});t&&_.merge(t,e),i.success({title:"ChatWebsite properly saved!",msg:p.chatWebsite.name?p.chatWebsite.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatWebsite.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatWebsite.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The chatWebsite will be deleted.").ariaLabel("Delete ChatWebsite").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.chatWebsite.delete({id:p.chatWebsite.id}).$promise.then(function(){_.remove(p.chatWebsites,{id:p.chatWebsite.id}),i.success({title:"ChatWebsite properly deleted!",msg:(p.chatWebsite.name||"chatWebsite")+" has been deleted!"}),u(p.chatWebsite)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.chatWebsite.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CHAT.EDIT_CHATWEBSITE",p.chatWebsite=angular.copy(s),p.chatWebsites=o,p.newChatWebsite=!1,p.chatWebsite||(p.chatWebsite={remote:n.protocol()+"://"+n.host()+":"+n.port(),header_shape:"rounded"},p.title="CHAT.NEW_CHATWEBSITE",p.newChatWebsite=!0),p.addNewChatWebsite=l,p.saveChatWebsite=d,p.deleteChatWebsite=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","chatWebsites","chatWebsite","api"],angular.module("app.chat").controller("CreateOrEditChatWebsiteDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.chatWebsite=e,h.query.id=h.chatWebsite.id,h.query.ChatWebsiteId=h.chatWebsite.id,h.getChatWebsiteChatDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the chatDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete chatDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.chatWebsiteChatDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.chatWebsite.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditChatDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/chatDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatDisposition:t,chatDispositions:h.chatWebsiteChatDispositions.rows}})}function p(e){r.chatDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.chatWebsiteChatDispositions.rows,{id:e.id}),h.chatWebsiteChatDispositions.count-=1,h.chatWebsiteChatDispositions.rows.length||h.getChatWebsiteChatDispositions(),s.success({title:"ChatDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatWebsite",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected chatDispositions?").htmlContent("<b>"+h.selectedChatWebsiteChatDispositions.length+" selected</b> will be deleted.").ariaLabel("delete chatDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedChatWebsiteChatDispositions.forEach(function(e){p(e)}),h.selectedChatWebsiteChatDispositions=[]})}var h=this;h.chatWebsite={},h.chatWebsiteChatDispositions={count:0,rows:[]},h.selectedChatWebsiteChatDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getChatWebsiteChatDispositions=m,h.createOrEditChatWebsiteChatDisposition=u,h.deleteChatWebsiteChatDisposition=p,h.deleteSelectedChatWebsiteChatDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getChatWebsiteChatDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.chat").controller("ChatWebsiteChatDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.chatDisposition.save(p.chatDisposition).$promise.then(function(e){p.chatDispositions.unshift(e),i.success({title:"ChatDisposition properly created",msg:p.chatDisposition.name?p.chatDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.chatDisposition.update({id:p.chatDisposition.id},p.chatDisposition).$promise.then(function(e){var t=_.find(p.chatDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"ChatDisposition properly saved!",msg:p.chatDisposition.name?p.chatDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The chatDisposition will be deleted.").ariaLabel("Delete ChatDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.chatDisposition.delete({id:p.chatDisposition.id}).$promise.then(function(){_.remove(p.chatDispositions,{id:p.chatDisposition.id}),i.success({title:"ChatDisposition properly deleted!",msg:(p.chatDisposition.name||"chatDisposition")+" has been deleted!"}),u(p.chatDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.chatDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CHAT.EDIT_CHATDISPOSITION",p.chatDisposition=angular.copy(s),p.chatDispositions=o,p.newChatDisposition=!1,p.chatDisposition||(p.chatDisposition={},p.title="CHAT.NEW_CHATDISPOSITION",p.newChatDisposition=!0),t.params.id&&(p.chatDisposition.ChatWebsiteId=t.params.id),p.addNewChatDisposition=l,p.saveChatDisposition=d,p.deleteChatDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","chatDispositions","chatDisposition","api"],angular.module("app.chat").controller("CreateOrEditChatDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.chat.chatWebsites")}function r(){i.chatWebsite.update({id:l.chatWebsite.id},l.chatWebsite).$promise.then(function(){a.success({title:"ChatWebsite updated!",msg:l.chatWebsite.name?l.chatWebsite.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatWebsite",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.chatWebsite=e.params.chatWebsite||o||{},l.selectedTab=e.params.tab||0,l.gotoChatWebsites=s,l.saveChatWebsite=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.template.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.templates=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplates",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","chatWebsite"],angular.module("app.chat").controller("ChatWebsiteController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.contactmanager.companies.edit",{id:e.id,company:e})}function u(e,t){n.go("app.contactmanager.contacts",{CompanyId:e.id})}function p(e,t){var n=i.confirm().title("Are you sure want to delete the company?").htmlContent("<b>"+(e.name||"company")+"</b> will be deleted.").ariaLabel("delete company").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function g(e){C.companies=e||{count:0,rows:[]}}function h(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.cmCompany.get(C.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditCompanyDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/companies/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{company:t,companies:C.companies.rows}})}function b(e){l.cmCompany.delete({id:e.id}).$promise.then(function(){_.remove(C.companies.rows,{id:e.id}),C.companies.count-=1,C.companies.rows.length||C.getCompanies(),c.success({title:"Company deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmCompany",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(C.selectedCompanies);return C.selectedCompanies=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected companies?").htmlContent("<b>"+C.selectedCompanies.length+" selected</b> will be deleted.").ariaLabel("delete Companys").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){C.selectedCompanies.forEach(function(e){b(e)}),C.selectedCompanies=[]})}function y(){C.selectedCompanies=[]}function A(){C.selectedCompanies=C.companies.rows}var C=this;C.companies=r||{count:0,rows:[]},C.table="companies",C.listOrder="",C.listOrderAsc=null,C.selectedCompanies=[],C.query={fields:"createdAt,updatedAt,id,name,phone,vat,fax,companyId,type,website,emailDomain,email,description,sStreet,sPostalCode,sCity,sCountry,street,postalCode,city,country",sort:"-updatedAt",limit:10,page:1},C.editstate=m,C.gotocontactsgoto=u,C.deleteconfirm=p,C.success=g,C.getCompanies=h,C.createOrEditCompany=v,C.deleteCompany=b,C.exportSelectedCompanies=f,C.deleteSelectedCompanies=E,C.deselectCompanies=y,C.selectAllCompanies=A;var x=!0,T=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(T=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=T),C.getCompanies())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","companies","api","msUtils","toasty"],angular.module("app.contactmanager").controller("CompaniesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmCompany.save(p.company).$promise.then(function(e){p.companies.unshift(e),i.success({title:"Company properly created",msg:p.company.name?p.company.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCompany.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCompany.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmCompany.update({id:p.company.id},p.company).$promise.then(function(e){var t=_.find(p.companies,{id:e.id});t&&_.merge(t,e),i.success({title:"Company properly saved!",msg:p.company.name?p.company.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCompany.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCompany.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The company will be deleted.").ariaLabel("Delete Company").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmCompany.delete({id:p.company.id}).$promise.then(function(){_.remove(p.companies,{id:p.company.id}),i.success({title:"Company properly deleted!",msg:(p.company.name||"company")+" has been deleted!"}),u(p.company)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCompany.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_COMPANY",p.company=angular.copy(s),p.companies=o,p.newCompany=!1,p.company||(p.company={},p.title="CONTACTMANAGER.NEW_COMPANY",p.newCompany=!0),p.addNewCompany=l,p.saveCompany=d,p.deleteCompany=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","companies","company","api"],angular.module("app.contactmanager").controller("CreateOrEditCompanyDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(t,n){e.go("app.contactmanager.contacts",{CompanyId:t.id})}function r(){e.go("app.contactmanager.companies")}function l(){i.cmCompany.update({id:d.company.id},d.company).$promise.then(function(){a.success({title:"Company updated!",msg:d.company.name?d.company.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmCompany",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.company=e.params.company||o||{},d.selectedTab=e.params.tab||0,d.gotogoto=s,d.gotoCompanies=r,d.saveCompany=l}e.$inject=["$state","$mdDialog","$document","toasty","api","company"],angular.module("app.contactmanager").controller("CompanyController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u){function p(e){var t=i.prompt().title("What would you name your list?").placeholder("List name").ariaLabel("List name").targetEvent(e).ok("Ok").cancel("Cancel");return i.show(t).then(function(e){if(e)return o.cmList.save({name:e});m.error({title:"Error creating list!",msg:"Invalid list name."})}).then(function(e){e&&(N.lists.rows.push(e),m.success({title:"List properly created!",msg:e.name?e.name+" has been created!":""}))})}function g(){return u.hasPermission(303)||u.hasRole("admin")}function h(e){var t=i.prompt().title("What would you name your company?").placeholder("Company name").ariaLabel("Company name").targetEvent(e).ok("Ok").cancel("Cancel");return i.show(t).then(function(e){if(e)return o.cmCompany.save({name:e});m.error({title:"Error creating company!",msg:"Invalid company name."})}).then(function(e){e&&(N.companies.rows.push(e),m.success({title:"Company properly created!",msg:e.name?e.name+" has been created!":""}))})}function v(e){var t=i.prompt().title("What would you name your tag?").placeholder("Tag name").ariaLabel("Tag name").targetEvent(e).ok("Ok").cancel("Cancel");return i.show(t).then(function(e){if(e)return o.tag.save({name:e});m.error({title:"Error creating tag!",msg:"Invalid tag name."})}).then(function(e){e&&(N.tags.rows.push(e),m.success({title:"Tag properly created!",msg:e.tag?e.name+" has been created!":""}))})}function b(e,n,a){N.disableDialog=!1,Papa.parse(n.file,{skipEmptyLines:!0,header:!0,woerker:!0,complete:function(n){a.files=[],N.disableDialog=!0,i.show({controller:"UploadContactsDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/upload/upload.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!1,locals:{lists:r,companies:d,contacts:n.data,fields:n.meta.fields}}).then(function(){N.getContacts()}).catch(function(e){console.error()})}})}function f(e,t){a.go("app.contactmanager.contacts.edit",{id:e.id})}function E(e,t){var n=i.confirm().title("Are you sure want to delete the contact?").htmlContent("<b>"+(e.firstName||e.email||e.phone||"Contact")+"</b> will be deleted.").ariaLabel("delete contact").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){S(e)})}function y(e){N.contacts=e||{count:0,rows:[]}}function A(){N.query.offset=(N.query.page-1)*N.query.limit,N.promise=o.cmContact.get(N.query,y).$promise}function C(e,n){n&&n.dateOfBirth&&(n.dateOfBirth=new Date(n.dateOfBirth)),i.show({controller:"CreateOrEditContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/create/dialog.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,locals:{ListId:N.query.ListId||a.params.ListId,CompanyId:N.query.CompanyId||a.params.CompanyId,contact:n,contacts:N.contacts.rows},resolve:{lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name"})}],companies:["apiResolver",function(e){return e.resolve("cmCompany@get",{fields:"id,name"})}]}})}function x(e,n){i.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name"})}]},locals:{contacts:N.contacts.rows}})}function T(e,n){i.show({controller:"MergeContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/merge/dialog.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name"})}]},locals:{contacts:N.contacts.rows}})}function S(e){o.cmContact.delete({id:e.id}).$promise.then(function(){_.remove(N.contacts.rows,{id:e.id}),N.contacts.count-=1,N.contacts.rows.length||N.getContacts(),m.success({title:"Contact deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){m.error({title:e.status+" - "+e.statusText,msg:JSON.stringify(e.data)||e.message.join(" ")})})}function O(){var e=_.clone(N.selectedContacts);return N.selectedContacts=[],e}function w(e){var t=i.confirm().title("Are you sure want to delete the selected contacts?").htmlContent("<b>"+N.selectedContacts.length+" selected</b> will be deleted.").ariaLabel("delete Contacts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){N.selectedContacts.forEach(function(e){S(e)}),N.selectedContacts=[]})}function R(){N.selectedContacts=[]}function I(){N.selectedContacts=N.contacts.rows}var N=this;u.getCurrentUser();N.contacts=s||{count:0,rows:[]},N.options={hidden:!1,hover:!1,isOpen:!1},N.table="cm_contacts",N.listOrder="",N.listOrderAsc=null,N.disableDialog=!0,N.selectedContacts=[],N.lists=r||{rows:[],count:0},N.companies=d||{rows:[],count:0},N.tags=c||{rows:[],count:0},N.listsMap=l,N.selectedTags=[],N.selectedList=null,N.selectedCompany=null,N.query={fields:"id,firstName,lastName,phone,email,updatedAt",sort:"-updatedAt",limit:10,page:1},N.editdialog=f,N.deleteconfirm=E,N.success=y,N.getContacts=A,N.mergeContact=T,N.duplicateContact=x,N.createOrEditContact=C,N.deleteContact=S,N.exportSelectedContacts=O,N.deleteSelectedContacts=w,N.deselectContacts=R,N.selectAllContacts=I,N.createTag=v,N.createList=p,N.createCompany=h,N.uploadContacts=b,N.hasPermission=g,a.params.ListId&&(N.selectedList=a.params.ListId),a.params.CompanyId&&(N.selectedCompany=a.params.CompanyId),e.$watch("vm.options.isOpen",function(t){t?n(function(){e.tooltipVisible=N.options.isOpen},600):e.tooltipVisible=N.options.isOpen});var D=!0,L=1;e.$watch("vm.query.filter",function(e,t){D?n(function(){D=!1}):(t||(L=N.query.page),e!==t&&(N.query.page=1),e||(N.query.page=L),N.getContacts())},!0),e.$watch("vm.selectedList",function(e,t){e!==t&&(N.query.ListId=N.selectedList||void 0,N.getContacts())}),e.$watch("vm.selectedCompany",function(e,t){e!==t&&(N.query.CompanyId=N.selectedCompany||void 0,N.getContacts())}),e.$watch("vm.selectedTags",function(e,t){(e.length||t.length)&&(N.query.tags=N.selectedTags.length?N.selectedTags.join():void 0,N.getContacts())})}e.$inject=["$scope","$document","$timeout","$state","$mdDialog","api","contacts","lists","listsMap","companies","tags","toasty","Auth"],angular.module("app.contactmanager").controller("ContactsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l){function d(){h.errors=[],l.cmContact.save(h.contact).$promise.then(function(e){h.contacts.unshift(e),t.success({title:"Contact properly created",msg:h.contact.name?h.contact.name+" has been created!":""}),g()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){h.errors=e.data.errors||[{message:e.toString(),type:"api.user.save"}];for(var n=0;n<e.data.errors.length;n++)t.error({title:e.data.errors[n].type,msg:e.data.errors[n].message})}else t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.contacts.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){h.errors=[],l.cmContact.update({id:h.contact.id},h.contact).$promise.then(function(e){var n=_.find(h.contacts,{id:e.id});n&&_.merge(n,e),t.success({title:"Contact properly saved!",msg:h.contact.name?h.contact.name+" has been saved!":""}),g()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){h.errors=e.data.errors||[{message:e.toString(),type:"api.contact.update"}];for(var n=0;n<e.data.errors.length;n++)t.error({title:e.data.errors[n].type,msg:e.data.errors[n].message})}else t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.contact.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function m(e){if(e)return l.cmList.getCustomFields({id:e}).$promise.then(function(e){e&&(h.customFields=e)}).catch(function(e){console.error(e)});h.customFields={rows:[],count:0}}function u(n){h.errors=[];var a=e.confirm().title("Are you sure?").content("The contact will be deleted.").ariaLabel("Delete Contact").ok("Delete").cancel("Cancel").targetEvent(n);e.show(a).then(function(){l.cmContact.delete({id:h.contact.id}).$promise.then(function(){_.remove(h.contacts,{id:h.contact.id}),t.success({title:"Contact properly deleted!",msg:h.contact.name?h.contact.name+" has been deleted!":""}),g()}).catch(function(e){console.error(e),h.errors=e.data.errors||[{message:e.toString(),type:"api.contact.delete"}]})},function(){})}function p(e){return new Date(e)}function g(){e.hide()}var h=this;h.errors=[],h.title="CONTACTMANAGER.EDIT_CONTACT",h.contact=angular.copy(o),h.contacts=n||{rows:[],count:0},h.lists=a||{rows:[],count:0},h.companies=i||{rows:[],count:0},h.customFields={rows:[],count:0},h.newContact=!1,h.contact?(delete h.contact.List,h.ListId=h.contact.ListId||void 0):(h.contact={ListId:s||void 0,CompanyId:r||void 0},h.title="CONTACTMANAGER.NEW_CONTACT",h.newContact=!0),h.addNewContact=d,h.saveContact=c,h.deleteContact=u,h.closeDialog=g,h.getCustomFields=m,h.getDateFromString=p}e.$inject=["$mdDialog","toasty","contacts","lists","companies","contact","ListId","CompanyId","api"],angular.module("app.tools").controller("CreateOrEditContactDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){l.errors=[],delete l.contact.id,o.cmContact.save(l.contact).$promise.then(function(e){a.unshift(e),t.success({title:"Contact properly created",msg:l.contact.name?l.contact.name+" has been created!":""}),r()}).catch(function(e){console.error(e),l.errors=e.data.errors||[{message:e.toString(),type:"api.contact.save"}]})}function r(){e.hide()}var l=this;l.errors=[],l.title="CONTACTMANAGER.COPY_CONTACT",l.contact=angular.copy(n),l.lists=i||{rows:[],count:0},l.addNewContact=s,l.closeDialog=r}e.$inject=["$mdDialog","toasty","contact","contacts","lists","api"],angular.module("app.tools").controller("DuplicateContactDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){m.errors=[],r.cmHopper.update({id:m.hopper.id},m.hopper).$promise.then(function(e){var t=_.find(m.hoppers,{id:e.id});t&&_.merge(t,e),i.success({title:"Hopper properly saved!",msg:m.hopper.name?m.hopper.name+" has been saved!":""}),c(e)}).catch(function(e){console.error(e),m.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.update"}]})}function d(e){return new Date(e)}function c(e){a.hide(e)}var m=this;m.errors=[],m.title="CONTACTMANAGER.EDIT_HOPPER",m.hopper=angular.copy(s),m.hoppers=o,m.newHopper=!1,m.hopper||(m.hopper={},m.title="CONTACTMANAGER.NEW_HOPPER",m.newHopper=!0),m.saveHopper=l,m.getDateFromString=d,m.closeDialog=c}e.$inject=["$scope","$state","$location","$mdDialog","toasty","hoppers","hopper","api"],angular.module("app.contactmanager.contacts").controller("EditHopperDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h){function v(e){return function(t){N[e]=t||{count:0,rows:[]}}}function b(e,t){i.show({controller:"EditHopperDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/edit/hoppers/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopper:t,hoppers:N.hoppers.rows}})}function f(e,t){var n=i.confirm().title("Are you sure want to delete the agent?").htmlContent("<b>"+(e.phone||"hopper")+"</b> will be deleted.").ariaLabel("delete hopper").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){E(e)},function(){console.log("CANCEL")})}function E(e){return s.cmHopper.delete({id:e.id}).$promise.then(function(){_.remove(N.hoppers.rows,{id:e.id}),N.hoppers.count--,N.hoppers.rows.length||N.getHoppers(),o.success({title:"Hopper deleted!",msg:e.phone?e.phone+" has been deleted!":""})}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEhopper",msg:e.data?JSON.stringify(e.data):e.toString()})})}function y(){console.log("getHoppers"),N.queryHopper.offset=(N.queryHopper.page-1)*N.queryHopper.limit,N.promise=s.cmHopper.get(N.queryHopper,v("hoppers")).$promise}function A(){N.queryFinal.offset=(N.queryFinal.page-1)*N.queryFinal.limit,N.promise=s.cmHopperFinal.get(N.queryFinal,v("finals")).$promise}function C(){N.queryHistory.offset=(N.queryHistory.page-1)*N.queryHistory.limit,N.promise=s.cmHopperHistory.get(N.queryHistory,v("histories")).$promise}function x(e){if(N.contact.ListId){var t=i.confirm().title("You are selecting the list number: "+N.contact.ListId).textContent("Warning! You won't select a different list for the contact "+N.contact.firstName||N.contact.lastName||N.contact.id).targetEvent(e).ok("Ok").cancel("Cancel");return i.show(t).then(N.onSelectListSuccess).catch(function(){N.contact.ListId=null})}}function T(){return s.cmList.getCustomFields({id:N.contact.ListId}).$promise.then(function(e){N.customFields=e||{rows:[],count:0}}).catch(function(e){console.error(e)})}function S(e,t){i.show({controller:"CreateOrEditCompanyDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/companies/create/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{companies:[]},resolve:{company:["apiResolver",function(e){return e.resolve("cmCompany@get",{id:t})}]}})}function O(e){i.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,resolve:{lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name"})}]},locals:{contacts:m.rows,contact:r}})}function w(){s.cmContact.update({id:N.contact.id},N.contact).$promise.then(function(){o.success({title:"Contact updated!",msg:N.contact.name?N.contact.name+" has been updated!":""})}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEcontact",msg:e.data?JSON.stringify(e.data):e.toString()})})}function R(e){return new Date(e)}function I(){n.go("app.contactmanager.contacts",{},{reload:!0,notify:!0})}var N=this;N.contact=r||{},N.hoppers=l||{rows:[],count:0},N.finals=d||{rows:[],count:0},N.histories=c||{rows:[],count:0},N.companies=u||{rows:[],count:0},N.lists=p||{rows:[],count:0},N.customFields=g||{rows:[],count:0},N.tags=h||{rows:[],count:0},N.queryHopper={ContactId:N.contact.id,fields:"id,phone,scheduledat",sort:"-updatedAt",limit:10,page:1},N.queryFinal={ContactId:N.contact.id,fields:"uniqueid,phone,status,starttime,disposition",sort:"-updatedAt",limit:10,page:1},N.queryHistory={ContactId:N.contact.id,fields:"id,ContactId,phone,scheduledat,starttime,endtime",sort:"-updatedAt",limit:10,page:1},N.selectedTab=n.params.tab||0,N.gotoContacts=I,N.duplicateContact=O,N.saveContact=w,N.editCompany=S,N.onSelectList=x,N.onSelectListSuccess=T,N.getDateFromString=R,N.getHoppers=y,N.getFinals=A,N.getHistories=C,N.deleteconfirm=f,N.editHopper=b;var D=!0,L=1;e.$watch("vm.queryHopper.filter",function(e,n){D?t(function(){D=!1}):(n||(L=N.queryHopper.page),e!==n&&(N.queryHopper.page=1),e||(N.queryHopper.page=L),N.getHoppers())}),e.$watch("vm.queryFinal.filter",function(e,n){D?t(function(){D=!1}):(n||(L=N.queryFinal.page),e!==n&&(N.queryFinal.page=1),e||(N.queryFinal.page=L),N.getFinals())}),e.$watch("vm.queryHistory.filter",function(e,n){D?t(function(){D=!1}):(n||(L=N.queryHistory.page),e!==n&&(N.queryHistory.page=1),e||(N.queryHistory.page=L),N.getHistories())})}e.$inject=["$scope","$timeout","$state","$document","$mdDialog","toasty","api","contact","hoppers","finals","histories","contacts","companies","lists","customFields","tags"],angular.module("app.contactmanager.contacts").controller("ContactController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(t,a,o){_.remove(c.contacts,{id:a.id});var r=e.confirm().title("Would you like to merge your contacs?").textContent("All unfilled values of the contact #"+o.id+" will be overwritten by the fields of the contact #"+a.id+".").targetEvent(t).ok("Ok").cancel("Cancel");e.show(r).then(function(){var e=a.id,t=o.id,r=_.mergeWith(a,o,function(e,t){return Array.isArray(t)&&!t.length?e:t||e});s.cmContact.update({id:r.id},r).$promise.then(function(){return s.cmContact.delete({id:e})}).then(function(){_.remove(i,{id:e}),_.merge(_.find(i,{id:t}),r),n.success({title:"Contact properly merged!"})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:MERGE_CONTACT",msg:e.data?JSON.stringify(e.data):e.toString()})})})}function l(){c.errors=[],delete c.contact.id,s.cmContact.save(c.contact).$promise.then(function(e){i.unshift(e),n.success({title:"Contact properly created",msg:c.contact.name?c.contact.name+" has been created!":""}),d()}).catch(function(e){console.error(e),c.errors=e.data.errors||[{message:e.toString(),type:"api.contact.save"}]})}function d(){e.hide()}var c=this;c.errors=[],c.title="CONTACTMANAGER.MERGE_CONTACT",c.contact=angular.copy(a),c.lists=o||[],c.change=function(){c.searchTerm?s.cmContact.get({fields:"id,firstName,lastName,phone,email",filter:c.searchTerm,ListId:a.ListId}).$promise.then(function(e){c.contacts=e.rows}).catch(function(e){console.error(e)}):c.contacts=[]},c.addNewContact=l,c.showConfirm=r,c.closeDialog=d}e.$inject=["$mdDialog","$scope","toasty","contact","contacts","lists","api"],angular.module("app.tools").controller("MergeContactDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(){return d.cmList.getCustomFields({id:g.ListId}).$promise.then(function(e){g.customFields=e}).catch(function(e){console.error(e)})}function m(){g.uploading=!0,u(g.contacts.length-1)}function u(e){if(e<0)return g.stop=!0,void(g.uploading=!1);for(var t=[];e>=0&&t.length<h;){var n={};for(var a in g.binding)g.binding.hasOwnProperty(a)&&(n[a]=g.contacts[e][g.binding[a]]),n.ListId=g.ListId,n.CompanyId=g.CompanyId,n.duplicates=g.duplicates;t.push(n),e--}return d.cmContact.bulkCreate(t).$promise.then(function(e){g.successAmount+=e.success,g.failureAmount+=e.failure,g.duplicatesAmount+=e.duplicates}).catch(function(e){console.error(e)}).finally(function(){u(e)})}function p(){t.hide()}var g=this,h=50;g.successAmount=0,g.failureAmount=0,g.duplicatesAmount=0,g.uploading=!1,g.stop=!1,g.contactFields=[{key:"firstName",required:!0},{key:"lastName",required:!1},{key:"phone",required:!0},{key:"mobile",required:!1},{key:"email",required:!1},{key:"dateOfBirth",required:!1},{key:"country",required:!1},{key:"city",required:!1},{key:"street",required:!1},{key:"postalCode",required:!1},{key:"fax",required:!1}],g.contacts=s,g.binding={},g.fields=r,g.lists=i||{rows:[],count:0},g.companies=o||{rows:[],count:0},g.customFields={rows:[],count:0},g.closeDialog=p,g.onChangeList=c,g.upload=m}e.$inject=["$cookies","$mdDialog","$interval","$q","lists","companies","contacts","fields","toasty","api"],angular.module("app.tools").controller("UploadContactsDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmCustomField.save(p.globalCustomField).$promise.then(function(e){p.globalCustomFields.unshift(e),i.success({title:"GlobalCustomField properly created",msg:p.globalCustomField.name?p.globalCustomField.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCustomField.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmCustomField.update({id:p.globalCustomField.id},p.globalCustomField).$promise.then(function(e){var t=_.find(p.globalCustomFields,{id:e.id});t&&_.merge(t,e),i.success({title:"GlobalCustomField properly saved!",msg:p.globalCustomField.name?p.globalCustomField.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCustomField.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The globalCustomField will be deleted.").ariaLabel("Delete GlobalCustomField").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmCustomField.delete({id:p.globalCustomField.id}).$promise.then(function(){_.remove(p.globalCustomFields,{id:p.globalCustomField.id}),i.success({title:"GlobalCustomField properly deleted!",msg:(p.globalCustomField.name||"globalCustomField")+" has been deleted!"}),u(p.globalCustomField)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_GLOBALCUSTOMFIELD",p.globalCustomField=angular.copy(s),p.globalCustomFields=o,p.newGlobalCustomField=!1,p.globalCustomField||(p.globalCustomField={type:"text"},p.title="CONTACTMANAGER.NEW_GLOBALCUSTOMFIELD",p.newGlobalCustomField=!0),p.addNewGlobalCustomField=l,p.saveGlobalCustomField=d,p.deleteGlobalCustomField=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","globalCustomFields","globalCustomField","api"],angular.module("app.contactmanager").controller("CreateOrEditGlobalCustomFieldDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditGlobalCustomFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/globalCustomFields/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{globalCustomField:e,globalCustomFields:A.globalCustomFields.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the globalCustomField?").htmlContent("<b>"+(e.name||"globalCustomField")+"</b> will be deleted.").ariaLabel("delete globalCustomField").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.globalCustomFields=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.cmCustomField.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditGlobalCustomFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/globalCustomFields/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{globalCustomField:t,globalCustomFields:A.globalCustomFields.rows}})}function v(e){l.cmCustomField.delete({id:e.id}).$promise.then(function(){_.remove(A.globalCustomFields.rows,{id:e.id}),A.globalCustomFields.count-=1,A.globalCustomFields.rows.length||A.getGlobalCustomFields(),c.success({title:"GlobalCustomField deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmCustomField",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedGlobalCustomFields);return A.selectedGlobalCustomFields=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected globalCustomFields?").htmlContent("<b>"+A.selectedGlobalCustomFields.length+" selected</b> will be deleted.").ariaLabel("delete GlobalCustomFields").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedGlobalCustomFields.forEach(function(e){v(e)}),A.selectedGlobalCustomFields=[]})}function E(){A.selectedGlobalCustomFields=[]}function y(){A.selectedGlobalCustomFields=A.globalCustomFields.rows}var A=this;A.globalCustomFields=r||{count:0,rows:[]},A.table="globalCustomFields",A.listOrder="",A.listOrderAsc=null,A.selectedGlobalCustomFields=[],A.query={fields:"createdAt,updatedAt,id,alias,type,values,required",sort:"-updatedAt",ListId:"null",limit:10,page:1},A.arraytype=_.keyBy([{option:"Text",value:"'text'"},{option:"Select",value:"'select'"},{option:"Number",value:"'number'"},{option:"Switch",value:"'switch'"},{option:"Datetime",value:"'datetime'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getGlobalCustomFields=g,A.createOrEditGlobalCustomField=h,A.deleteGlobalCustomField=v,A.exportSelectedGlobalCustomFields=b,A.deleteSelectedGlobalCustomFields=f,A.deselectGlobalCustomFields=E,A.selectAllGlobalCustomFields=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getGlobalCustomFields())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","globalCustomFields","api","msUtils","toasty"],angular.module("app.contactmanager").controller("GlobalCustomFieldsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmList.save(p.list).$promise.then(function(e){p.lists.unshift(e),i.success({title:"List properly created",msg:p.list.name?p.list.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmList.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmList.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmList.update({id:p.list.id},p.list).$promise.then(function(e){var t=_.find(p.lists,{id:e.id});t&&_.merge(t,e),i.success({title:"List properly saved!",msg:p.list.name?p.list.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmList.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmList.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The list will be deleted.").ariaLabel("Delete List").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmList.delete({id:p.list.id}).$promise.then(function(){_.remove(p.lists,{id:p.list.id}),i.success({title:"List properly deleted!",msg:(p.list.name||"list")+" has been deleted!"}),u(p.list)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmList.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_LIST",p.list=angular.copy(s),p.lists=o,p.newList=!1,p.list||(p.list={},p.title="CONTACTMANAGER.NEW_LIST",p.newList=!0),p.addNewList=l,p.saveList=d,p.deleteList=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","lists","list","api"],angular.module("app.contactmanager").controller("CreateOrEditListDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){return n.cmList[c.isVoiceRealtime()?"getMembers":"getAgents"]({id:c.list.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){return c.isVoiceRealtime()?c.selectedItems=e.rows?_.map(e.rows,function(e){return e.id=e.UserId,e.fullname=e.membername,e.penalty=e.hasOwnProperty("penalty")?"penalty "+e.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[]:c.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserList?"penalty "+e.UserList.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.selectedItems=c.selectedItems,n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){c.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserList?"penalty "+e.UserList.penalty:"",e.internal=e.internal?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.items=_.differenceBy(c.items,c.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function l(){return o}function d(){e.hide()}var c=this;c.list=a,c.penalty=0,c.items=[],c.selectedItems=[],c.closeDialog=d,c.isVoiceRealtime=l,c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:"internal",line3:"penalty",labelAll:s.instant("CONTACTMANAGER.ALL_AGENTS"),labelSelected:s.instant("CONTACTMANAGER.SELECTED_AGENTS"),transferCallback:function(e,a){n.cmList[a?"removeAgents":"addAgents"]({id:c.list.id,ids:_.map(e,c.isVoiceRealtime()&&a?"UserId":"id"),penalty:c.penalty||0,realtime:o||!1}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"}),a||r()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:cmList.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},r()}e.$inject=["$mdDialog","toasty","api","list","lists","realtime","$translate"],angular.module("app.contactmanager").controller("ListagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.list=e,h.query.id=h.list.id,h.query.ListId=h.list.id,h.getListCustomFields()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the customField?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete customField").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.listCustomFields=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.cmList.getCustomFields(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditCustomFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/edit/customFields/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{customField:t,customFields:h.listCustomFields.rows}})}function p(e){r.cmCustomField.delete({id:e.id}).$promise.then(function(){_.remove(h.listCustomFields.rows,{id:e.id}),h.listCustomFields.count-=1,h.listCustomFields.rows.length||h.getListCustomFields(),s.success({title:"CustomField deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmList",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected customFields?").htmlContent("<b>"+h.selectedListCustomFields.length+" selected</b> will be deleted.").ariaLabel("delete customFields").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedListCustomFields.forEach(function(e){p(e)}),h.selectedListCustomFields=[]})}var h=this;h.list={},h.listCustomFields={count:0,rows:[]},h.selectedListCustomFields=[],h.query={fields:"createdAt,updatedAt,id,alias,type,values,required",limit:10,page:1},h.arraytype=_.keyBy([{option:"Text",value:"'text'"},{option:"Select",value:"'select'"},{option:"Number",value:"'number'"},{option:"Switch",value:"'switch'"},{option:"Datetime",value:"'datetime'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.init=l,h.deleteConfirm=d,h.success=c,h.getListCustomFields=m,h.createOrEditListCustomField=u,h.deleteListCustomField=p,h.deleteSelectedListCustomFields=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getListCustomFields())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.contactmanager").controller("ListCustomFieldsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmList.addCustomField({id:t.params.id},p.customField).$promise.then(function(e){p.customFields.unshift(e),i.success({title:"CustomField properly created",msg:p.customField.name?p.customField.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCustomField.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmCustomField.update({id:p.customField.id},p.customField).$promise.then(function(e){var t=_.find(p.customFields,{id:e.id});t&&_.merge(t,e),i.success({title:"CustomField properly saved!",msg:p.customField.name?p.customField.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCustomField.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The customField will be deleted.").ariaLabel("Delete CustomField").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmCustomField.delete({id:p.customField.id}).$promise.then(function(){_.remove(p.customFields,{id:p.customField.id}),i.success({title:"CustomField properly deleted!",msg:(p.customField.name||"customField")+" has been deleted!"}),u(p.customField)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_CUSTOMFIELD",p.customField=angular.copy(s),p.customFields=o,p.newCustomField=!1,p.customField||(p.customField={type:"text"},p.title="CONTACTMANAGER.NEW_CUSTOMFIELD",p.newCustomField=!0),t.params.id&&(p.customField.ListId=t.params.id),e.$watch("vm.customField.type",function(e,t){if(e!==t)switch(e){case"text":p.customField.values="";break;case"select":p.customField.values=[]}}),p.addNewCustomField=l,p.saveCustomField=d,p.deleteCustomField=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","customFields","customField","api"],angular.module("app.contactmanager").controller("CreateOrEditCustomFieldDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(t,n){e.go("app.contactmanager.contacts",{ListId:t.id})}function r(e,a){t.show({controller:"ListagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/edit/agentadd/agentadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{list:e,lists:c.lists?c.lists.rows:[],realtime:!1}})}function l(){e.go("app.contactmanager.lists")}function d(){i.cmList.update({id:c.list.id},c.list).$promise.then(function(){a.success({title:"List updated!",msg:c.list.name?c.list.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmList",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.list=e.params.list||o||{},c.selectedTab=e.params.tab||0,c.gotogoto=s,c.agentadddialog=r,c.gotoLists=l,c.saveList=d}e.$inject=["$state","$mdDialog","$document","toasty","api","list"],angular.module("app.contactmanager").controller("ListController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.list=e,h.query.id=h.list.id,h.query.ListId=h.list.id,h.getListVoiceDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the voiceDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete voiceDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.listVoiceDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.cmList.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditVoiceDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/edit/voiceDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceDisposition:t,voiceDispositions:h.listVoiceDispositions.rows}})}function p(e){r.voiceDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.listVoiceDispositions.rows,{id:e.id}),h.listVoiceDispositions.count-=1,h.listVoiceDispositions.rows.length||h.getListVoiceDispositions(),s.success({title:"VoiceDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmList",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected voiceDispositions?").htmlContent("<b>"+h.selectedListVoiceDispositions.length+" selected</b> will be deleted.").ariaLabel("delete voiceDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedListVoiceDispositions.forEach(function(e){p(e)}),h.selectedListVoiceDispositions=[]})}var h=this;h.list={},h.listVoiceDispositions={count:0,rows:[]},h.selectedListVoiceDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getListVoiceDispositions=m,h.createOrEditListVoiceDisposition=u,h.deleteListVoiceDisposition=p,h.deleteSelectedListVoiceDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getListVoiceDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.contactmanager").controller("ListVoiceDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceDisposition.save(p.voiceDisposition).$promise.then(function(e){p.voiceDispositions.unshift(e),i.success({title:"VoiceDisposition properly created",msg:p.voiceDisposition.name?p.voiceDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceDisposition.update({id:p.voiceDisposition.id},p.voiceDisposition).$promise.then(function(e){var t=_.find(p.voiceDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"VoiceDisposition properly saved!",msg:p.voiceDisposition.name?p.voiceDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The voiceDisposition will be deleted.").ariaLabel("Delete VoiceDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceDisposition.delete({id:p.voiceDisposition.id}).$promise.then(function(){_.remove(p.voiceDispositions,{id:p.voiceDisposition.id}),i.success({title:"VoiceDisposition properly deleted!",msg:(p.voiceDisposition.name||"voiceDisposition")+" has been deleted!"}),u(p.voiceDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_VOICEDISPOSITION",p.voiceDisposition=angular.copy(s),p.voiceDispositions=o,p.newVoiceDisposition=!1,p.voiceDisposition||(p.voiceDisposition={},p.title="CONTACTMANAGER.NEW_VOICEDISPOSITION",p.newVoiceDisposition=!0),t.params.id&&(p.voiceDisposition.ListId=t.params.id),p.addNewVoiceDisposition=l,p.saveVoiceDisposition=d,p.deleteVoiceDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","voiceDispositions","voiceDisposition","api"],angular.module("app.contactmanager").controller("CreateOrEditVoiceDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.contactmanager.lists.edit",{id:e.id,list:e})}function u(e,t){n.go("app.contactmanager.contacts",{ListId:e.id})}function p(e,n){var a=t.document.createElement("a");a.href="/api/cm/lists/"+e.id+"/contacts/csv",a.target="_self",a.click()}function g(e,t){i.show({controller:"ListagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/edit/agentadd/agentadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{list:e,lists:T.lists?T.lists.rows:[],realtime:!1}})}function h(e,t){var n=i.confirm().title("Are you sure want to delete the list?").htmlContent("<b>"+(e.name||"list")+"</b> will be deleted.").ariaLabel("delete list").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){E(e)},function(){console.log("CANCEL")})}function v(e){T.lists=e||{count:0,rows:[]}}function b(){T.query.offset=(T.query.page-1)*T.query.limit,T.promise=l.cmList.get(T.query,v).$promise}function f(e,t){i.show({controller:"CreateOrEditListDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{list:t,lists:T.lists.rows}})}function E(e){l.cmList.delete({id:e.id}).$promise.then(function(){_.remove(T.lists.rows,{id:e.id}),T.lists.count-=1,T.lists.rows.length||T.getLists(),c.success({title:"List deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmList",msg:e.data?JSON.stringify(e.data):e.toString()})})}function y(){var e=_.clone(T.selectedLists);return T.selectedLists=[],e}function A(e){var t=i.confirm().title("Are you sure want to delete the selected lists?").htmlContent("<b>"+T.selectedLists.length+" selected</b> will be deleted.").ariaLabel("delete Lists").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){T.selectedLists.forEach(function(e){E(e)}),T.selectedLists=[]})}function C(){T.selectedLists=[]}function x(){T.selectedLists=T.lists.rows}var T=this;T.lists=r||{count:0,rows:[]},T.table="lists",T.listOrder="",T.listOrderAsc=null,T.selectedLists=[],T.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},T.editstate=m,T.gotocontactsgoto=u,T.exportcsvcontactsexport=p,T.agentadddialog=g,T.deleteconfirm=h,T.success=v,T.getLists=b,T.createOrEditList=f,T.deleteList=E,T.exportSelectedLists=y,T.deleteSelectedLists=A,T.deselectLists=C,T.selectAllLists=x;var S=!0,O=1;e.$watch("vm.query.filter",function(e,t){S?s(function(){S=!1}):(t||(O=T.query.page),e!==t&&(T.query.page=1),e||(T.query.page=O),T.getLists())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","lists","api","msUtils","toasty"],angular.module("app.contactmanager").controller("ListsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p){function g(e){e.id=_.random(1e10),e.openedAt=new Date,e.saved=!1;var t=A.tabs.length;A.tabs.push(e),A.currentTab=C+t}function h(e,t){var n={type:"contact",title:e?e.firstName||e.phone:i.instant("DASHBOARDS.NEW_CONTACT"),icon:"icon-account-circle",contact:e,userLists:c,lists:m,companies:u,tags:p,calls:t?[t]:[]};if(e){var a=_.findLastIndex(A.tabs,function(t){return"contact"===t.type&&t.contact&&t.contact.id===e.id});if(a<0){if(e.ListId)return r.cmList.getDispositions({id:e.ListId}).$promise.then(function(t){return n.dispositions=t,r.cmList.getCustomFields({id:e.ListId}).$promise}).then(function(e){n.customFields=e}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEcontact",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){g(n)});g(n)}else t&&A.tabs[a].calls.push(t),A.currentTab=C+a}else g(n)}function v(e){e&&e.uri&&a.open(e.uri)}function b(e){e&&e.html&&n.show({template:e.html,clickOutsideToClose:!0})}function f(e){return r.cmContact.get({ListId:e.ListId,phone:e.calleridnum,nolimit:!0}).$promise.then(function(t){if(t.count)for(var n=0;n<t.rows.length;n+=1)A.addContactTab(t.rows[n],e);else A.addContactTab({firstName:e.calleridname||e.calleridnum||e.uniqueid,ListId:e.ListId,phone:e.calleridnum},e)}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontact",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(e,t){var a=n.confirm().title("Are you sure want to close the contact?").ariaLabel("Close Contact").ok("OK").cancel("CANCEL");t.saved?A.tabs.splice(e,1):n.show(a).then(function(){A.tabs.splice(e,1)})}function y(){a.localStorage.setItem("motion.user:"+A.user.id,JSON.stringify({tabs:A.tabs}))}var A=this,C=4;A.tabs=[],A.user=s.getCurrentUser(),A.currentTab=0,A.globalUserLists=c||{count:0,rows:[]},A.globalLists=m||{count:0,rows:[]},A.globalCompanies=u||{count:0,rows:[]},A.globalTags=p||{count:0,rows:[]},A.localStorageSet=y,A.onContactManager=f,A.onBrowserUrl=v,A.onBrowserPopup=b,A.addContactTab=h,A.closeTab=E,A.motionUser=a.localStorage.getItem("motion.user:"+A.user.id),A.motionUser&&(A.motionUser=JSON.parse(A.motionUser),A.tabs=A.motionUser.tabs),l.on("trigger:contactmanager",A.onContactManager),l.on("trigger:browser:url",A.onBrowserUrl),l.on("trigger:browser:popup",A.onBrowserPopup);var x=o(A.localStorageSet,1500);e.$watch("vm.currentTab",function(e,n){switch(A.currentTab){case 3:t.go("app.dashboards.general.mycontacts");break;case 2:t.go("app.dashboards.general.contacts");break;case 1:t.go("app.dashboards.general.recordings");break;case 0:t.go("app.dashboards.general.dashboard")}}),e.$on("$stateChangeSuccess",function(e,t,n,a,i){t.data&&(A.currentTab=t.data.selectedTab)}),e.$on("$destroy",function(){l.removeAllListeners("trigger:contactmanager"),l.removeAllListeners("trigger:browser:url"),l.removeAllListeners("trigger:browser:popup"),o.cancel(x)})}e.$inject=["$scope","$state","$mdDialog","$window","$translate","$interval","Auth","api","socket","toasty","globalUserLists","globalLists","globalCompanies","globalTags"],angular.module("app.dashboards").controller("AgentDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){g.contacts=e||{count:0,rows:[]}}function d(){g.query.offset=(g.query.page-1)*g.query.limit,g.promise=s.cmContact.get(g.query,l).$promise}function c(e,n){t.$parent.vm.addContactTab(n)}function m(){g.query.ListId=g.defaultLists,g.getContacts()}function u(t,n){a.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(e.body),targetEvent:t,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:o.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:g.contacts.rows}})}function p(t,n){a.show({controller:"MergeContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/merge/dialog.html",parent:angular.element(e.body),targetEvent:t,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:o.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:g.contacts.rows}})}var g=this;g.contacts={count:0,rows:[]},g.lists=r||{count:0,rows:[]},g.listsMap=_.mapValues(_.keyBy(r.rows,"id"),"name"),g.defaultLists=g.lists.rows?_.map(g.lists.rows,"id").join(","):void 0,g.query={sort:"-updatedAt",limit:10,page:1,ListId:g.defaultLists},g.getContacts=d,g.refreshContacts=m,g.mergeContact=p,g.duplicateContact=u,g.openContact=c,g.getContacts();var h=!0,v=1;t.$watch("vm.query.filter",function(e,t){h?n(function(){h=!1}):(t||(v=g.query.page),e!==t&&(g.query.page=1),e||(g.query.page=v),g.getContacts())})}e.$inject=["$document","$scope","$timeout","$mdDialog","$stateParams","Auth","api","lists"],angular.module("app.dashboards").controller("AgentContactsDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){g.voiceQueues=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function d(){g.query.offset=(g.query.page-1)*g.query.limit,g.promise=n.user.getQueues(g.query,l).$promise}function c(e){return _.size(e)}function m(){_.forIn(g.voiceQueues,function(e,t){g.rpcVoiceQueues[t]&&(g.voiceQueues[t].waiting=g.rpcVoiceQueues[t].waiting||0)})}function u(e){g.voiceQueues[e.id]&&g.rpcVoiceQueues[e.id]&&(g.rpcVoiceQueues[e.id]=e,g.voiceQueues[e.id].waiting=e.waiting||0)}function p(e){g.rpcVoiceQueuesChannels[e.uniqueid]&&e.queuecallerleaveAt?delete g.rpcVoiceQueuesChannels[e.uniqueid]:g.rpcVoiceQueuesChannels[e.uniqueid]=e}var g=this;g.voiceQueuesTotal=o.count?o.count:0,g.voiceQueues=o?_.keyBy(o.rows?o.rows:[],"id"):{},g.rpcVoiceQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},g.query={id:a.getCurrentUser().id,fields:"id,name",channel:"voice",limit:10,page:1},g.rpcVoiceQueuesChannels=r?_.keyBy(r.rows?r.rows:[],"uniqueid"):{},g.queryChannels={limit:10,page:1},g.success=l,g.getVoiceQueues=d,g.getSize=c,g.onSaveQueue=u,g.onSaveChannel=p,i.on("voice_queue:save",g.onSaveQueue),i.on("voice_queue_channel:save",g.onSaveChannel),m();var h=!0,v=1;e.$watch("vm_dc.query.filter",function(e,n){h?t(function(){h=!1}):(n||(v=g.query.page),e!==n&&(g.query.page=1),e||(g.query.page=v),g.getVoiceQueues())}),e.$on("$destroy",function(){i.removeAllListeners("voice_queue:save"),i.removeAllListeners("voice_queue_channel:save")})}e.$inject=["$scope","$timeout","api","Auth","socket","voiceQueues","rpcVoiceQueues","rpcVoiceQueuesChannels"],angular.module("app.dashboards").controller("AgentDashboardDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(n,l,d){function c(){C.errors=[],i.cmContact.save(C.contact).$promise.then(function(e){return C.newContact=!1,C.tab.title=e.firstName||e.phone,C.tab.contact=C.contact,i.user.addContacts({id:s.getCurrentUser().id,ids:[e.id]})}).then(function(){C.tab.saved=!0,o.success({title:"Contact properly created",msg:C.contact.firstName?C.contact.firstName+" has been created!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){C.errors=e.data.errors||[{message:e.toString(),type:"api.contact.save"}];for(var t=0;t<e.data.errors.length;t+=1)o.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.contact.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function m(){C.errors=[],i.cmContact.update({id:C.contact.id},C.contact).$promise.then(function(e){return C.tab.title=e.firstName||e.phone,C.tab.contact=C.contact,i.user.addContacts({id:s.getCurrentUser().id,ids:[e.id]})}).then(function(){C.tab.saved=!0,o.success({title:"Contact properly updated!",msg:C.contact.name?C.contact.name+" has been updated!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){C.errors=e.data.errors||[{message:e.toString(),type:"api.contact.save"}];for(var t=0;t<e.data.errors.length;t+=1)o.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.contact.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function u(e){return function(t){n[e]=t||{count:0,rows:[]}}}function p(){C.queryHopper.offset=(C.queryHopper.page-1)*C.queryHopper.limit,C.promise=i.cmHopper.get(C.queryHopper,u("hoppers")).$promise}function g(){C.queryFinal.offset=(C.queryFinal.page-1)*C.queryFinal.limit,C.promise=i.cmHopperFinal.get(C.queryFinal,u("finals")).$promise}function h(){C.queryHistory.offset=(C.queryHistory.page-1)*C.queryHistory.limit,C.promise=i.cmHopperHistory.get(C.queryHistory,u("histories")).$promise}function v(n){e.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:C.contact.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:s.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:[]}})}function b(n){e.show({controller:"MergeContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/merge/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:C.contact.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:s.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:[]}})}function f(e){var t=_.findLastIndex(C.tab.calls,function(t){return t.uniqueid===e.uniqueid});t>=0&&(C.tab.calls[t].disposedAt=new Date)}function E(n,a){C.newContact?o.error({title:"ATTENTION",msg:"Before to dispose, please save the contact!"}):e.show({controller:"DisposeCallDialogController",controllerAs:"vm",templateUrl:"app/main/apps/dashboards/views/general/agent/directives/contact/dispose/dialog.html",parent:angular.element(t.body),targetEvent:a,clickOutsideToClose:!1,locals:{dispositions:C.tab.dispositions,contact:C.contact,call:a}}).then(function(e){o.success({title:"Call properly disposed",msg:"Call has been disposed "+e})}).finally(function(){_.remove(C.tab.calls,function(e){return e.uniqueid==a.uniqueid})})}function y(e){return i.cmList.getCustomFields({id:e}).$promise.then(function(e){C.tab.customFields=e}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEcontact",msg:e.data?JSON.stringify(e.data):e.toString()})})}function A(e){return new Date(e)}var C=n;if(C.contact=C.tab.contact,C.newContact=!1,C.currentTab=0,C.contact&&C.contact.id||(C.newContact=!0),C.contact&&C.contact.id)return i.user.addContacts({id:s.getCurrentUser().id,ids:[C.contact.id]});C.queryHopper={ContactId:C.contact.id,fields:"id,phone,scheduledat",sort:"-updatedAt",limit:10,page:1},C.queryFinal={ContactId:C.contact.id,fields:"uniqueid,calleridnum,statedesc,starttime,disposition",sort:"-updatedAt",limit:10,page:1},C.queryHistory={ContactId:C.contact.id,fields:"uniqueid,calleridnum,statedesc,scheduledat,starttime,endtime",sort:"-updatedAt",limit:10,page:1},C.hoppers={rows:[],count:0},C.finals={rows:[],count:0},C.histories={rows:[],count:0},C.addNewContact=c,C.saveContact=m,C.getCustomFields=y,C.disposeCall=E,C.duplicateContact=v,C.mergeContact=b,C.getDateFromString=A,C.getHoppers=p,C.getFinals=g,C.getHistories=h,r.on("voice_queue_channel:remove",f),function(){C.getHoppers(),C.getFinals(),C.getHistories()}(),C.$watch("currentTab",function(e,t){console.log("current tab",e),1===C.currentTab&&(console.log("test"),C.getHoppers(),C.getFinals(),C.getHistories())});var x=!0,T=1;C.$watch("queryHopper.filter",function(e,t){x?a(function(){x=!1}):(t||(T=C.queryHopper.page),e!==t&&(C.queryHopper.page=1),e||(C.queryHopper.page=T),C.getHoppers())}),C.$watch("queryFinal.filter",function(e,t){x?a(function(){x=!1}):(t||(T=C.queryFinal.page),e!==t&&(C.queryFinal.page=1),e||(C.queryFinal.page=T),C.getFinals())}),C.$watch("queryHistory.filter",function(e,t){x?a(function(){x=!1}):(t||(T=C.queryHistory.page),e!==t&&(C.queryHistory.page=1),e||(C.queryHistory.page=T),C.getHistories())})}return{restrict:"E",transclude:!0,scope:{localStorageSet:"&onLocalStorageSet",tab:"="},link:l,templateUrl:"app/main/apps/dashboards/views/general/agent/directives/contact/contact.html"}}e.$inject=["$mdDialog","$document","$window","$timeout","api","toasty","Auth","socket"],angular.module("app.dashboards").directive("contact",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u){function p(){var e=y.choice.toLowerCase();return{id:y.call.uniqueid,disposition:y.choice,dispositionat:moment(),amd:"amd"===e,fax:"fax"===e,blacklist:"blacklist"===e}}function g(){return l.voiceCallReport.update({id:y.call.uniqueid,userDisposition:y.choice,UserId:u.getCurrentUser().id,ContactId:y.contact.id}).$promise.catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEVOICECALLREPORT",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(){return l.cmHopperFinal.update(p()).$promise.catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATECMHOPPERFINAL",msg:e.data?JSON.stringify(e.data):e.toString()})})}function v(){return l.cmHopperHistory.update(p()).$promise.catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATECMHOPPERHISTORY",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(e){if(e)return l.voiceQueue.getBlackLists({id:e,type:"outbound",fields:"id"}).$promise.then(function(e){for(var t=[],n=0;n<e.rows.length;n+=1){var a=angular.copy(y.contact);delete a.id,a.ListId=e.rows[n].id,t.push(l.cmContact.save(a).$promise)}return o.all(t)}).catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEBLACKLIST",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){return a.show({controller:"RescheduleCallDialogController",controllerAs:"vm",templateUrl:"app/main/apps/dashboards/views/general/agent/directives/contact/reschedule/dialog.html",parent:angular.element(s.body),clickOutsideToClose:!0,locals:{contact:y.contact,call:y.call}})}function E(){if(console.log(y.call),g(),y.dialerCall)switch(h(),v(),y.choice.toLowerCase()){case"blacklist":y.call&&y.call.variables&&y.call.variables["xmd-voicequeueid"]&&b(y.call.variables["xmd-voicequeueid"]);break;case"reschedule":f()}a.hide(y.choice.toUpperCase())}var y=this;y.choice=void 0,y.dispositions=d,y.contact=m,y.call=c,y.dialerCall=!1,y.call&&y.call.variables&&y.call.variables["xmd-queue"]&&(y.dialerCall=!0),y.saveDisposition=E}e.$inject=["$scope","$state","$location","$mdDialog","$timeout","$q","$document","toasty","api","dispositions","call","contact","Auth"],angular.module("app.staff").controller("DisposeCallDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(){return s.cmHopper.save({phone:u.contact.phone,ContactId:u.contact.id,ListId:u.contact.ListId,VoiceQueueId:Number(u.call["xmd-voicequeueid"]),scheduledat:moment(u.hopper.dateTime).format("YYYY-MM-DD HH:mm:ss")}).$promise.then(function(){return s.cmHopperFinal.update({id:u.call.uniqueid,rescheduled:!0,rescheduledat:moment(u.hopper.dateTime).format("YYYY-MM-DD HH:mm:ss")}).$promise}).then(function(){a.hide()}).catch(function(e){a.cancel(e)})}function m(){a.cancel()}var u=this;u.call=l,u.contact=r,u.hopper={minDate:new Date,dateTime:new Date},u.closeDialog=m,u.saveDialog=c}e.$inject=["$scope","$state","$location","$mdDialog","$timeout","toasty","api","contact","call","Auth"],angular.module("app.staff").controller("RescheduleCallDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(e){p.contacts=e||{count:0,rows:[]}}function l(){p.query.offset=(p.query.page-1)*p.query.limit,p.promise=o.user.getContacts(p.query,r).$promise}function d(e,n){t.$parent.vm.addContactTab(n)}function c(){p.query.ListId=p.defaultLists,p.getContacts()}function m(t,n){a.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(e.body),targetEvent:t,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:i.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:p.contacts.rows}})}function u(t,n){a.show({controller:"MergeContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/merge/dialog.html",parent:angular.element(e.body),targetEvent:t,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:i.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:p.contacts.rows}})}var p=this;p.contacts={count:0,rows:[]},p.lists=s||{count:0,rows:[]},p.listsMap=_.mapValues(_.keyBy(s.rows,"id"),"name"),p.defaultLists=p.lists.rows?_.map(p.lists.rows,"id").join(","):void 0,p.query={id:i.getCurrentUser().id,sort:"-updatedAt",limit:10,page:1,ListId:p.defaultLists},p.getContacts=l,p.refreshContacts=c,p.mergeContact=u,p.duplicateContact=m,p.openContact=d,p.getContacts()}e.$inject=["$document","$scope","$timeout","$mdDialog","Auth","api","lists"],angular.module("app.dashboards").controller("AgentMyContactsDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m){function u(e,n){return l.voiceRecording.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/voice/recordings/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function p(e){h.voiceRecordings=e||{count:0,rows:[]}}function g(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=l.user.getRecordings(h.query,p).$promise}var h=this;h.voiceRecordings=r||{count:0,rows:[]},h.table="voiceRecordings",h.query={id:m.getCurrentUser().id,fields:"createdAt,updatedAt,id,format,value,type,uniqueid,calleridnum,exten,connectedlinenum,queue,rating,audio,createdAt",sort:"-updatedAt",limit:10,page:1},h.downloadfile=u,h.success=p,h.getVoiceRecordings=g}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","voiceRecordings","api","msUtils","toasty","Auth"],angular.module("app.dashboards").controller("AgentRecordigsDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){l({queues:h.outboundQueues,rpcQueues:h.rpcQueues}).then(function(e){h.inbound=e})}function u(){d({rpcCampaigns:h.rpcCampaigns}).then(function(e){h.ivr=e})}function p(e){h.outboundQueues[e.id]&&h.rpcQueues[e.id]&&(h.rpcQueues[e.id]=e,m())}function g(e){h.rpcCampaigns[e.id]&&(h.rpcCampaigns[e.id]=e,u())}var h=this;h.outboundQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},h.rpcQueues=r?_.keyBy(r.rows?r.rows:[],"id"):{},h.rpcCampaigns=c?_.keyBy(c.rows?c.rows:[],"id"):{},h.inbound={waiting:0,talking:0,answered:0,abandoned:0,unmanaged:0,sumHoldTime:0,sumBillable:0,total:0,avgHoldTime:"00:00:00",avgTalkTime:"00:00:00",answerRate:0,abandonRate:0},h.ivr={originated:0,limitCalls:0},h.onSaveQueue=p,h.onSaveCampaign=g,i.on("voice_queue:save",h.onSaveQueue),i.on("campaign:save",h.onSaveCampaign),m(),u(),e.$on("$destroy",function(){i.removeAllListeners("voice_queue:save"),i.removeAllListeners("campaign:save")})}e.$inject=["$scope","$interval","$mdSidenav","Auth","socket","api","outboundQueues","rpcQueues","initializeRealtimeQueue","initializeRealtimeCampaign","rpcCampaigns"],angular.module("app.dashboards").controller("UserVoiceDashboardDialerController",e)}(),function(){"use strict";function e(e){var t=[],n=function(){var e=t[0],a={waiting:0,talking:0,answered:0,abandoned:0,unmanaged:0,sumHoldTime:0,sumBillable:0,total:0,avgHoldTime:"00:00:00",avgTalkTime:"00:00:00",answerRate:0,abandonRate:0,originated:0};_.forIn(e.queues,function(t,n){if(e.rpcQueues[n]){a.waiting+=e.rpcQueues[n].waiting||0,a.talking+=e.rpcQueues[n].talking||0,a.answered+=e.rpcQueues[n].answered||0,a.unmanaged+=e.rpcQueues[n].unmanaged||0,a.sumHoldTime+=e.rpcQueues[n].sumHoldTime||0,a.sumBillable+=e.rpcQueues[n].sumBillable||0,a.total+=e.rpcQueues[n].total||0,a.originated+=e.rpcQueues[n].originated||0;var i=e.rpcQueues[n].total-e.rpcQueues[n].answered;a.abandoned+=i>0?i:0}}),a.avgHoldTime=Math.round(a.total>0?a.sumHoldTime/a.total:0),a.avgHoldTime=new Date(1e3*a.avgHoldTime).toISOString().substr(11,8),a.avgTalkTime=Math.round(a.answered>0?a.sumBillable/a.answered:0),a.avgTalkTime=new Date(1e3*a.avgTalkTime).toISOString().substr(11,8),a.answerRate=Math.round((a.total>0?a.answered/a.total*100:0)*Math.pow(10,1))/Math.pow(10,1),a.abandonRate=Math.round((a.total>0?a.abandoned/a.total*100:0)*Math.pow(10,1))/Math.pow(10,1),t.shift(),e.defer.resolve(a),t.length>0&&n()};return function(a){var i=e.defer();return t.push({queues:a.queues,rpcQueues:a.rpcQueues,defer:i}),1===t.length&&n(),i.promise}}function t(e){var t=[],n=function(){var e=t[0],a={originated:0,limitCalls:0};_.forIn(e.rpcCampaigns,function(t,n){e.rpcCampaigns[n]&&(a.originated+=e.rpcCampaigns[n].originated||0,a.limitCalls+=e.rpcCampaigns[n].limitCalls||0)}),t.shift(),e.defer.resolve(a),t.length>0&&n()};return function(a){var i=e.defer();return t.push({rpcCampaigns:a.rpcCampaigns,defer:i}),1===t.length&&n(),i.promise}}function n(){return function(e){return new Date(1e3*e).toISOString().substr(11,8)}}function a(e,t,n){function a(){return n.hasPermission(101)||n.hasRole("admin")}var i=this;i.hasPermission=a,e.$on("$stateChangeSuccess",function(e,n,a,o,s){if(n.data)switch(i.currentTab=n.data.selectedTab,i.currentTab){case 1:t.go("app.dashboards.general.dialer");break;default:t.go("app.dashboards.general.voice")}})}e.$inject=["$q"],t.$inject=["$q"],a.$inject=["$scope","$state","Auth"],angular.module("app.dashboards").filter("secToTime",n).factory("initializeRealtimeQueue",e).factory("initializeRealtimeCampaign",t).controller("UserDashboardGeneralController",a)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(){d({queues:p.inboundQueues,rpcQueues:p.rpcQueues}).then(function(e){p.inbound=e})}function m(e){p.inboundQueues[e.id]&&p.rpcQueues[e.id]&&(p.rpcQueues[e.id]=e,c())}function u(e){p.outbound=e}var p=this;p.inboundQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},p.rpcQueues=r?_.keyBy(r.rows?r.rows:[],"id"):{},p.inbound={waiting:0,talking:0,answered:0,abandoned:0,unmanaged:0,sumHoldTime:0,sumBillable:0,total:0,avgHoldTime:"00:00:00",avgTalkTime:"00:00:00",answerRate:0,abandonRate:0},p.outbound=l||{answered:0,sumBillable:0,sumDuration:0,sumHoldTime:0,total:0},p.onSaveQueue=m,p.onSaveOutbound=u,i.on("voice_queue:save",p.onSaveQueue),i.on("voice_outbound:save",p.onSaveOutbound),c(),e.$on("$destroy",function(){i.removeAllListeners("voice_queue:save"),i.removeAllListeners("voice_outbound:save")})}e.$inject=["$scope","$interval","$mdSidenav","Auth","socket","api","inboundQueues","rpcQueues","outbound","initializeRealtimeQueue"],angular.module("app.dashboards").controller("UserVoiceDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.faxAccount.save(p.faxAccount).$promise.then(function(e){p.faxAccounts.unshift(e),i.success({title:"FaxAccount properly created",msg:p.faxAccount.name?p.faxAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.faxAccount.update({id:p.faxAccount.id},p.faxAccount).$promise.then(function(e){var t=_.find(p.faxAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"FaxAccount properly saved!",msg:p.faxAccount.name?p.faxAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The faxAccount will be deleted.").ariaLabel("Delete FaxAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.faxAccount.delete({id:p.faxAccount.id}).$promise.then(function(){_.remove(p.faxAccounts,{id:p.faxAccount.id}),i.success({title:"FaxAccount properly deleted!",msg:(p.faxAccount.name||"faxAccount")+" has been deleted!"}),u(p.faxAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.faxAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="FAX.EDIT_FAXACCOUNT",p.faxAccount=angular.copy(s),p.faxAccounts=o,p.newFaxAccount=!1,p.faxAccount||(p.faxAccount={},p.title="FAX.NEW_FAXACCOUNT",p.newFaxAccount=!0),p.addNewFaxAccount=l,p.saveFaxAccount=d,p.deleteFaxAccount=c,p.getDateFromString=m,p.closeDialog=u,r.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.trunks=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","faxAccounts","faxAccount","api"],angular.module("app.fax").controller("CreateOrEditFaxAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.faxAccount=e,h.query.id=h.faxAccount.id,h.query.FaxAccountId=h.faxAccount.id,h.getFaxAccountFaxDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the faxDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete faxDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.faxAccountFaxDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.faxAccount.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditFaxDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/fax/views/faxAccounts/edit/faxDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{faxDisposition:t,faxDispositions:h.faxAccountFaxDispositions.rows}})}function p(e){r.faxDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.faxAccountFaxDispositions.rows,{id:e.id}),h.faxAccountFaxDispositions.count-=1,h.faxAccountFaxDispositions.rows.length||h.getFaxAccountFaxDispositions(),s.success({title:"FaxDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected faxDispositions?").htmlContent("<b>"+h.selectedFaxAccountFaxDispositions.length+" selected</b> will be deleted.").ariaLabel("delete faxDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedFaxAccountFaxDispositions.forEach(function(e){p(e)}),h.selectedFaxAccountFaxDispositions=[]})}var h=this;h.faxAccount={},h.faxAccountFaxDispositions={count:0,rows:[]},h.selectedFaxAccountFaxDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getFaxAccountFaxDispositions=m,h.createOrEditFaxAccountFaxDisposition=u,h.deleteFaxAccountFaxDisposition=p,h.deleteSelectedFaxAccountFaxDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getFaxAccountFaxDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.fax").controller("FaxAccountFaxDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.faxDisposition.save(p.faxDisposition).$promise.then(function(e){p.faxDispositions.unshift(e),i.success({title:"FaxDisposition properly created",msg:p.faxDisposition.name?p.faxDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.faxDisposition.update({id:p.faxDisposition.id},p.faxDisposition).$promise.then(function(e){var t=_.find(p.faxDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"FaxDisposition properly saved!",msg:p.faxDisposition.name?p.faxDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The faxDisposition will be deleted.").ariaLabel("Delete FaxDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.faxDisposition.delete({id:p.faxDisposition.id}).$promise.then(function(){_.remove(p.faxDispositions,{id:p.faxDisposition.id}),i.success({title:"FaxDisposition properly deleted!",msg:(p.faxDisposition.name||"faxDisposition")+" has been deleted!"}),u(p.faxDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.faxDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="FAX.EDIT_FAXDISPOSITION",p.faxDisposition=angular.copy(s),p.faxDispositions=o,p.newFaxDisposition=!1,p.faxDisposition||(p.faxDisposition={},p.title="FAX.NEW_FAXDISPOSITION",p.newFaxDisposition=!0),t.params.id&&(p.faxDisposition.FaxAccountId=t.params.id),p.addNewFaxDisposition=l,p.saveFaxDisposition=d,p.deleteFaxDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","faxDispositions","faxDisposition","api"],angular.module("app.fax").controller("CreateOrEditFaxDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.fax.faxAccounts")}function r(){i.faxAccount.update({id:l.faxAccount.id},l.faxAccount).$promise.then(function(){a.success({title:"FaxAccount updated!",msg:l.faxAccount.name?l.faxAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.faxAccount=e.params.faxAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoFaxAccounts=s,l.saveFaxAccount=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.trunks=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","faxAccount"],angular.module("app.fax").controller("FaxAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.fax.faxAccounts.edit",{id:e.id,faxAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the faxAccount?").htmlContent("<b>"+(e.name||"faxAccount")+"</b> will be deleted.").ariaLabel("delete faxAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.faxAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.faxAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditFaxAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/fax/views/faxAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{faxAccount:t,faxAccounts:A.faxAccounts.rows}})}function v(e){l.faxAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.faxAccounts.rows,{id:e.id}),A.faxAccounts.count-=1,A.faxAccounts.rows.length||A.getFaxAccounts(),c.success({title:"FaxAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedFaxAccounts);return A.selectedFaxAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected faxAccounts?").htmlContent("<b>"+A.selectedFaxAccounts.length+" selected</b> will be deleted.").ariaLabel("delete FaxAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedFaxAccounts.forEach(function(e){v(e)}),A.selectedFaxAccounts=[]})}function E(){A.selectedFaxAccounts=[]}function y(){A.selectedFaxAccounts=A.faxAccounts.rows}var A=this;A.faxAccounts=r||{count:0,rows:[]},A.table="faxAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedFaxAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,headerinfo,TrunkId,localstationid,ListId,fidelity,timeout,description,ecm,minrate,maxrate,modem,gateway,faxdetect,t38timeout,tech,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,page:1},A.arrayminrate=_.keyBy([{option:"2400",value:"'2400'"},{option:"4800",value:"'4800'"},{option:"7200",value:"'7200'"},{option:"9600",value:"'9600'"},{option:"12000",value:"'12000'"},{option:"14400",value:"'14400'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraymaxrate=_.keyBy([{option:"2400",value:"'2400'"},{option:"4800",value:"'4800'"},{option:"7200",value:"'7200'"},{option:"9600",value:"'9600'"},{option:"12000",value:"'12000'"},{option:"14400",value:"'14400'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytech=_.keyBy([{option:"SIP",value:"'SIP'"},{option:"IAX",value:"'IAX'"},{option:"DADHI",value:"'DADHI'"},{option:"KHOMP",value:"'KHOMP'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getFaxAccounts=g,A.createOrEditFaxAccount=h,A.deleteFaxAccount=v,A.exportSelectedFaxAccounts=b,A.deleteSelectedFaxAccounts=f,A.deselectFaxAccounts=E,A.selectAllFaxAccounts=y,l.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){A.trunks=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getFaxAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","faxAccounts","api","msUtils","toasty"],angular.module("app.fax").controller("FaxAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.faxQueue.save(p.faxQueue).$promise.then(function(e){p.faxQueues.unshift(e),i.success({title:"FaxQueue properly created",msg:p.faxQueue.name?p.faxQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.faxQueue.update({id:p.faxQueue.id},p.faxQueue).$promise.then(function(e){var t=_.find(p.faxQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"FaxQueue properly saved!",msg:p.faxQueue.name?p.faxQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The faxQueue will be deleted.").ariaLabel("Delete FaxQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.faxQueue.delete({id:p.faxQueue.id}).$promise.then(function(){_.remove(p.faxQueues,{id:p.faxQueue.id}),i.success({title:"FaxQueue properly deleted!",msg:(p.faxQueue.name||"faxQueue")+" has been deleted!"}),u(p.faxQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.faxQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="FAX.EDIT_FAXQUEUE",p.faxQueue=angular.copy(s),p.faxQueues=o,p.newFaxQueue=!1,p.faxQueue||(p.faxQueue={strategy:"beepall"},p.title="FAX.NEW_FAXQUEUE",p.newFaxQueue=!0),p.addNewFaxQueue=l,p.saveFaxQueue=d,p.deleteFaxQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","faxQueues","faxQueue","api"],angular.module("app.fax").controller("CreateOrEditFaxQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.faxQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("FAX.ALL_TEAMS"),labelSelected:i.instant("FAX.SELECTED_TEAMS"),transferCallback:function(e,a){n.faxQueue[a?"removeTeams":"addTeams"]({id:s.faxQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:faxQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.faxQueue.getTeams({id:s.faxQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","faxQueue","$translate"],angular.module("app.fax").controller("FaxQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"FaxQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/fax/views/faxQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{faxQueue:e,faxQueues:d.faxQueues?d.faxQueues.rows:[]}})}function r(){e.go("app.fax.faxQueues")}function l(){i.faxQueue.update({id:d.faxQueue.id},d.faxQueue).$promise.then(function(){a.success({title:"FaxQueue updated!",msg:d.faxQueue.name?d.faxQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.faxQueue=e.params.faxQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoFaxQueues=r,d.saveFaxQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","faxQueue"],angular.module("app.fax").controller("FaxQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.fax.faxQueues.edit",{id:e.id,faxQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the faxQueue?").htmlContent("<b>"+(e.name||"faxQueue")+"</b> will be deleted.").ariaLabel("delete faxQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.faxQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.faxQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditFaxQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/fax/views/faxQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{faxQueue:t,faxQueues:A.faxQueues.rows}})}function v(e){l.faxQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.faxQueues.rows,{id:e.id}),A.faxQueues.count-=1,A.faxQueues.rows.length||A.getFaxQueues(),c.success({title:"FaxQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedFaxQueues);return A.selectedFaxQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected faxQueues?").htmlContent("<b>"+A.selectedFaxQueues.length+" selected</b> will be deleted.").ariaLabel("delete FaxQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedFaxQueues.forEach(function(e){v(e)}),A.selectedFaxQueues=[]})}function E(){A.selectedFaxQueues=[]}function y(){A.selectedFaxQueues=A.faxQueues.rows}var A=this;A.faxQueues=r||{count:0,rows:[]},A.table="faxQueues",A.listOrder="",A.listOrderAsc=null,A.selectedFaxQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getFaxQueues=g,A.createOrEditFaxQueue=h,A.deleteFaxQueue=v,A.exportSelectedFaxQueues=b,A.deleteSelectedFaxQueues=f,A.deselectFaxQueues=E,A.selectAllFaxQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getFaxQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","faxQueues","api","msUtils","toasty"],angular.module("app.fax").controller("FaxQueuesController",e)}(),function(){"use strict";function e(e){this.info=e}e.$inject=["info"],angular.module("app.help.about").controller("AboutController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intFreshdeskAccount.save(p.freshdeskAccount).$promise.then(function(e){p.freshdeskAccounts.unshift(e),i.success({title:"FreshdeskAccount properly created",msg:p.freshdeskAccount.name?p.freshdeskAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intFreshdeskAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intFreshdeskAccount.update({id:p.freshdeskAccount.id},p.freshdeskAccount).$promise.then(function(e){var t=_.find(p.freshdeskAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"FreshdeskAccount properly saved!",msg:p.freshdeskAccount.name?p.freshdeskAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intFreshdeskAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The freshdeskAccount will be deleted.").ariaLabel("Delete FreshdeskAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intFreshdeskAccount.delete({id:p.freshdeskAccount.id}).$promise.then(function(){_.remove(p.freshdeskAccounts,{id:p.freshdeskAccount.id}),i.success({title:"FreshdeskAccount properly deleted!",msg:(p.freshdeskAccount.name||"freshdeskAccount")+" has been deleted!"}),u(p.freshdeskAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_FRESHDESKACCOUNT",p.freshdeskAccount=angular.copy(s),p.freshdeskAccounts=o,p.newFreshdeskAccount=!1,p.freshdeskAccount||(p.freshdeskAccount={serverUrl:n.protocol()+"://"+n.host()+":"+n.port()},p.title="INTEGRATIONS.NEW_FRESHDESKACCOUNT",p.newFreshdeskAccount=!0),p.addNewFreshdeskAccount=l,p.saveFreshdeskAccount=d,p.deleteFreshdeskAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","freshdeskAccounts","freshdeskAccount","api"],angular.module("app.integrations").controller("CreateOrEditFreshdeskAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){n.intFreshdeskConfiguration.setTags({id:A.freshdeskConfiguration.id,ids:A.selectedTags}).$promise.then(function(){a.success({title:"Tags set!",msg:"Tags has been set!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ADDTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){A.freshdeskAccount=e,n.intFreshdeskAccount.getConfigurations({id:A.freshdeskAccount.id,sort:"-updatedAt"}).$promise.then(function(e){return A.configurations=e.rows?e.rows:[],A.configurations.length&&A.getFreshdeskConfiguration(0),n.variable.get({nolimit:!0,sort:"name"}).$promise}).then(function(e){A.variables=e.rows?e.rows:[],A.variablesById=_.keyBy(A.variables,"id")}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETCONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(e){A.freshdeskConfiguration=A.configurations[e],A.selectedFreshdeskConfiguration=e,n.intFreshdeskConfiguration.getSubjects({id:A.freshdeskConfiguration.id}).$promise.then(function(e){return A.subjects=e.rows?e.rows:[],n.intFreshdeskConfiguration.getDescriptions({id:A.freshdeskConfiguration.id}).$promise}).then(function(e){return A.descriptions=e.rows?e.rows:[],n.intFreshdeskConfiguration.getFields({id:A.freshdeskConfiguration.id}).$promise}).then(function(e){A.fields=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),n.intFreshdeskConfiguration.getTags({id:A.freshdeskConfiguration.id}).$promise.then(function(e){A.selectedTags=e.rows?_.map(e.rows,"id"):[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})})}function r(n,a){e.show({controller:"CreateOrEditFreshdeskConfigurationDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/configurations/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{freshdeskConfiguration:a,configurations:A.configurations}}).finally(function(){A.getFreshdeskConfiguration(0)})}function l(t,i){var o=e.confirm().title("Are you sure want to delete the freshdeskConfiguration?").htmlContent("<b>"+(i.name||"freshdeskConfiguration")+"</b> will be deleted.").ariaLabel("delete freshdeskConfiguration").targetEvent(t).ok("OK").cancel("CANCEL");e.show(o).then(function(){n.intFreshdeskConfiguration.delete({id:i.id}).$promise.then(function(){_.remove(A.configurations,{id:i.id}),a.success({title:"FreshdeskConfiguration deleted!",msg:i.name?i.name+" has been deleted!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){A.getFreshdeskConfiguration(0)})},function(){console.log("CANCEL")})}function d(n,a){e.show({controller:"CreateOrEditFreshdeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"subject",item:a,items:A.subjects,configuration:A.freshdeskConfiguration,account:A.freshdeskAccount}})}function c(e){n.intFreshdeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.subjects,{id:e.id}),a.success({title:"Subject deleted!",msg:"Subject has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function m(t,n){var a=e.confirm().title("Are you sure want to delete the subject?").htmlContent("<b>Subject</b> will be deleted.").ariaLabel("delete subject").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){c(n)},function(){console.log("CANCEL")})}function u(t){var n=e.confirm().title("Are you sure want to delete the selected subjects?").htmlContent("<b>"+A.selectedSubjects.length+" selected</b> will be deleted.").ariaLabel("delete subjects").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedSubjects.forEach(function(e){c(e)}),A.selectedSubjects=[]})}function p(n,a){e.show({controller:"CreateOrEditFreshdeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"description",item:a,items:A.descriptions,configuration:A.freshdeskConfiguration,account:A.freshdeskAccount}})}function g(e){n.intFreshdeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.descriptions,{id:e.id}),a.success({title:"Description deleted!",msg:"Description has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(t,n){var a=e.confirm().title("Are you sure want to delete the description?").htmlContent("<b>Description</b> will be deleted.").ariaLabel("delete description").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){g(n)},function(){console.log("CANCEL")})}function v(t){var n=e.confirm().title("Are you sure want to delete the selected descriptions?").htmlContent("<b>"+A.selectedDescriptions.length+" selected</b> will be deleted.").ariaLabel("delete descriptions").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedDescriptions.forEach(function(e){g(e)}),A.selectedDescriptions=[]})}function b(n,a){e.show({controller:"CreateOrEditFreshdeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"field",item:a,items:A.fields,configuration:A.freshdeskConfiguration,account:A.freshdeskAccount}})}function f(e){n.intFreshdeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.fields,{id:e.id}),a.success({title:"Field deleted!",msg:"Field has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(t,n){var a=e.confirm().title("Are you sure want to delete the field?").htmlContent("<b>Field</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){f(n)},function(){console.log("CANCEL")})}function y(t){var n=e.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+A.selectedFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedFields.forEach(function(e){f(e)}),A.selectedFields=[]})}var A=this;A.freshdeskAccount={},A.freshdeskConfiguration={},A.configurations=[],A.selectedFreshdeskConfiguration=-1,A.init=o,A.getFreshdeskConfiguration=s,A.createOrEditFreshdeskConfiguration=r,A.deleteFreshdeskConfiguration=l,A.selectedTags=[],A.selectTagsChanged=i,n.tag.get({nolimit:!0,sort:"name"}).$promise.then(function(e){A.tags=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})}),A.selectedSubjects=[],A.createOrEditSubject=d,A.deleteSubjectConfirm=m,A.deleteSelectedSubjects=u,A.selectedDescriptions=[],A.createOrEditDescription=p,A.deleteDescriptionConfirm=h,A.deleteSelectedDescriptions=v,A.selectedFields=[],A.createOrEditField=b,A.deleteFieldConfirm=E,A.deleteSelectedFields=y}e.$inject=["$mdDialog","$document","api","toasty"],angular.module("app.integrations").controller("FreshdeskAccountConfigurationsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intFreshdeskAccount.addConfiguration({id:t.params.id},p.freshdeskConfiguration).$promise.then(function(e){p.configurations.unshift(e),i.success({title:"FreshdeskConfiguration properly created",msg:p.freshdeskConfiguration.name?p.freshdeskConfiguration.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskConfiguration.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intFreshdeskConfiguration.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intFreshdeskConfiguration.update({id:p.freshdeskConfiguration.id},p.freshdeskConfiguration).$promise.then(function(e){var t=_.find(p.configurations,{id:e.id});t&&_.merge(t,e),i.success({title:"FreshdeskConfiguration properly saved!",msg:p.freshdeskConfiguration.name?p.freshdeskConfiguration.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskConfiguration.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intFreshdeskConfiguration.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The freshdeskConfiguration will be deleted.").ariaLabel("Delete FreshdeskConfiguration").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intFreshdeskConfiguration.delete({id:p.freshdeskConfiguration.id}).$promise.then(function(){_.remove(p.configurations,{id:p.freshdeskConfiguration.id}),i.success({title:"FreshdeskConfiguration properly deleted!",msg:(p.freshdeskConfiguration.name||"freshdeskConfiguration")+" has been deleted!"}),u(p.freshdeskConfiguration)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskConfiguration.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_FRESHDESKCONFIGURATION",p.freshdeskConfiguration=angular.copy(s),p.configurations=o,p.newFreshdeskConfiguration=!1,p.freshdeskConfiguration||(p.freshdeskConfiguration={channel:"voice",type:"inbound"},p.title="INTEGRATIONS.NEW_FRESHDESKCONFIGURATION",p.newFreshdeskConfiguration=!0),p.addNewFreshdeskConfiguration=l,p.saveFreshdeskConfiguration=d,p.deleteFreshdeskConfiguration=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configurations","freshdeskConfiguration","api"],angular.module("app.integrations").controller("CreateOrEditFreshdeskConfigurationDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intFreshdeskField.save(v.item).$promise.then(function(e){v.items.unshift(e),i.success({title:_.capitalize(d)+" properly created",msg:_.capitalize(d)+" has been created!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.save"}]})}function u(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intFreshdeskField.update({id:v.item.id},v.item).$promise.then(function(e){var t=_.find(v.items,{id:e.id});t&&_.merge(t,e),i.success({title:_.capitalize(d)+" properly saved!",msg:_.capitalize(d)+" has been saved!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.intItem.update"}]})}function p(e){v.errors=[];var t=a.confirm().title("Are you sure?").content("The "+d+" will be deleted.").ariaLabel("Delete "+_.capitalize(d)).ok("Delete").cancel("Cancel").targetEvent(e);a.show(t).then(function(){c.intFreshdeskField.delete({id:v.item.id}).$promise.then(function(){_.remove(v.items,{id:v.item.id}),i.success({title:_.capitalize(d)+" properly deleted!",msg:_.capitalize(d)+" has been deleted!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.delete"}]})},function(){})}function g(){return void 0!==v.item.variableName?v.item.variableName:"Please select a variable"}function h(){a.hide()}var v=this;v.errors=[],v.title="INTEGRATIONS.EDIT_"+_.toUpper(d),v.item=angular.copy(r),v.items=s,v.type=d,v.newItem=!1,v.item||(v.item={type:"string"},v.item[_.capitalize(d)+"Id"]=o.id,v.title="INTEGRATIONS.NEW_"+_.toUpper(d),v.newItem=!0),v.addNewItem=m,v.saveItem=u,v.deleteItem=p,v.getSelectedVariable=g,v.closeDialog=h,c.variable.get({nolimit:!0}).$promise.then(function(e){return v.variables=e.rows?e.rows:[],c.voiceAgentReport.describe().$promise}).then(function(e){return v.voiceAgentReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"]),c.voiceDialReport.describe().$promise}).then(function(e){v.voiceDialReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"])}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETVARIABLES",msg:e.data?JSON.stringify(e.data):e.toString()})}),c.intFreshdeskAccount.getFields({id:l.id}).$promise.then(function(e){v.accountConnected=!0,v.fields=e.rows?e.rows:[],v.item.idField&&(v.customField=_.find(v.fields,{id:v.item.idField}))}).catch(function(e){v.accountConnected=!1,console.error(e)})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configuration","items","item","account","type","api"],angular.module("app.integrations").controller("CreateOrEditFreshdeskAccountItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.integrations.freshdeskAccounts")}function r(){i.intFreshdeskAccount.update({id:l.freshdeskAccount.id},l.freshdeskAccount).$promise.then(function(){a.success({title:"FreshdeskAccount updated!",msg:l.freshdeskAccount.name?l.freshdeskAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintFreshdeskAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.freshdeskAccount=e.params.freshdeskAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoFreshdeskAccounts=s,l.saveFreshdeskAccount=r}e.$inject=["$state","$mdDialog","$document","toasty","api","freshdeskAccount"],angular.module("app.integrations").controller("FreshdeskAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.integrations.freshdeskAccounts.edit",{id:e.id,freshdeskAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the freshdeskAccount?").htmlContent("<b>"+(e.name||"freshdeskAccount")+"</b> will be deleted.").ariaLabel("delete freshdeskAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.freshdeskAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.intFreshdeskAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditFreshdeskAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{freshdeskAccount:t,freshdeskAccounts:A.freshdeskAccounts.rows}})}function v(e){l.intFreshdeskAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.freshdeskAccounts.rows,{id:e.id}),A.freshdeskAccounts.count-=1,A.freshdeskAccounts.rows.length||A.getFreshdeskAccounts(),c.success({title:"FreshdeskAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintFreshdeskAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedFreshdeskAccounts);return A.selectedFreshdeskAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected freshdeskAccounts?").htmlContent("<b>"+A.selectedFreshdeskAccounts.length+" selected</b> will be deleted.").ariaLabel("delete FreshdeskAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedFreshdeskAccounts.forEach(function(e){v(e)}),A.selectedFreshdeskAccounts=[]})}function E(){A.selectedFreshdeskAccounts=[]}function y(){A.selectedFreshdeskAccounts=A.freshdeskAccounts.rows}var A=this;A.freshdeskAccounts=r||{count:0,rows:[]},A.table="freshdeskAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedFreshdeskAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,username,remoteUri,apiKey,serverUrl,description",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getFreshdeskAccounts=g,A.createOrEditFreshdeskAccount=h,A.deleteFreshdeskAccount=v,A.exportSelectedFreshdeskAccounts=b,A.deleteSelectedFreshdeskAccounts=f,A.deselectFreshdeskAccounts=E,A.selectAllFreshdeskAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getFreshdeskAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","freshdeskAccounts","api","msUtils","toasty"],angular.module("app.integrations").controller("FreshdeskAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intSalesforceAccount.save(p.salesforceAccount).$promise.then(function(e){p.salesforceAccounts.unshift(e),i.success({title:"SalesforceAccount properly created",msg:p.salesforceAccount.name?p.salesforceAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSalesforceAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intSalesforceAccount.update({id:p.salesforceAccount.id},p.salesforceAccount).$promise.then(function(e){var t=_.find(p.salesforceAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"SalesforceAccount properly saved!",msg:p.salesforceAccount.name?p.salesforceAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSalesforceAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The salesforceAccount will be deleted.").ariaLabel("Delete SalesforceAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intSalesforceAccount.delete({id:p.salesforceAccount.id}).$promise.then(function(){_.remove(p.salesforceAccounts,{id:p.salesforceAccount.id}),i.success({title:"SalesforceAccount properly deleted!",msg:(p.salesforceAccount.name||"salesforceAccount")+" has been deleted!"}),u(p.salesforceAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_SALESFORCEACCOUNT",p.salesforceAccount=angular.copy(s),p.salesforceAccounts=o,p.newSalesforceAccount=!1,p.salesforceAccount||(p.salesforceAccount={serverUrl:n.protocol()+"://"+n.host()+":"+n.port()},p.title="INTEGRATIONS.NEW_SALESFORCEACCOUNT",p.newSalesforceAccount=!0),p.addNewSalesforceAccount=l,p.saveSalesforceAccount=d,p.deleteSalesforceAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","salesforceAccounts","salesforceAccount","api"],angular.module("app.integrations").controller("CreateOrEditSalesforceAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){y.salesforceAccount=e,n.intSalesforceAccount.getConfigurations({id:y.salesforceAccount.id,sort:"-updatedAt"}).$promise.then(function(e){return y.configurations=e.rows?e.rows:[],y.configurations.length&&y.getSalesforceConfiguration(0),n.variable.get({nolimit:!0,sort:"name"}).$promise}).then(function(e){y.variables=e.rows?e.rows:[],y.variablesById=_.keyBy(y.variables,"id")}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETCONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){y.salesforceConfiguration=y.configurations[e],y.selectedSalesforceConfiguration=e,n.intSalesforceConfiguration.getSubjects({id:y.salesforceConfiguration.id}).$promise.then(function(e){return y.subjects=e.rows?e.rows:[],n.intSalesforceConfiguration.getDescriptions({id:y.salesforceConfiguration.id}).$promise}).then(function(e){return y.descriptions=e.rows?e.rows:[],n.intSalesforceConfiguration.getFields({id:y.salesforceConfiguration.id}).$promise}).then(function(e){y.fields=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(n,a){e.show({controller:"CreateOrEditSalesforceConfigurationDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/configurations/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{salesforceConfiguration:a,configurations:y.configurations}}).finally(function(){y.getSalesforceConfiguration(0)})}function r(t,i){var o=e.confirm().title("Are you sure want to delete the salesforceConfiguration?").htmlContent("<b>"+(i.name||"salesforceConfiguration")+"</b> will be deleted.").ariaLabel("delete salesforceConfiguration").targetEvent(t).ok("OK").cancel("CANCEL");e.show(o).then(function(){n.intSalesforceConfiguration.delete({id:i.id}).$promise.then(function(){_.remove(y.configurations,{id:i.id}),a.success({title:"SalesforceConfiguration deleted!",msg:i.name?i.name+" has been deleted!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){y.getSalesforceConfiguration(0)})},function(){console.log("CANCEL")})}function l(n,a){e.show({controller:"CreateOrEditSalesforceAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"subject",item:a,items:y.subjects,configuration:y.salesforceConfiguration,account:y.salesforceAccount}})}function d(e){n.intSalesforceField.delete({id:e.id}).$promise.then(function(){_.remove(y.subjects,{id:e.id}),a.success({title:"Subject deleted!",msg:"Subject has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function c(t,n){var a=e.confirm().title("Are you sure want to delete the subject?").htmlContent("<b>Subject</b> will be deleted.").ariaLabel("delete subject").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){d(n)},function(){console.log("CANCEL")})}function m(t){var n=e.confirm().title("Are you sure want to delete the selected subjects?").htmlContent("<b>"+y.selectedSubjects.length+" selected</b> will be deleted.").ariaLabel("delete subjects").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedSubjects.forEach(function(e){d(e)}),y.selectedSubjects=[]})}function u(n,a){e.show({controller:"CreateOrEditSalesforceAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"description",item:a,items:y.descriptions,configuration:y.salesforceConfiguration,account:y.salesforceAccount}})}function p(e){n.intSalesforceField.delete({id:e.id}).$promise.then(function(){_.remove(y.descriptions,{id:e.id}),a.success({title:"Description deleted!",msg:"Description has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(t,n){var a=e.confirm().title("Are you sure want to delete the description?").htmlContent("<b>Description</b> will be deleted.").ariaLabel("delete description").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){p(n)},function(){console.log("CANCEL")})}function h(t){var n=e.confirm().title("Are you sure want to delete the selected descriptions?").htmlContent("<b>"+y.selectedDescriptions.length+" selected</b> will be deleted.").ariaLabel("delete descriptions").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedDescriptions.forEach(function(e){p(e)}),y.selectedDescriptions=[]})}function v(n,a){e.show({controller:"CreateOrEditSalesforceAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"field",item:a,items:y.fields,configuration:y.salesforceConfiguration,account:y.salesforceAccount}})}function b(e){n.intSalesforceField.delete({id:e.id}).$promise.then(function(){_.remove(y.fields,{id:e.id}),a.success({title:"Field deleted!",msg:"Field has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(t,n){var a=e.confirm().title("Are you sure want to delete the field?").htmlContent("<b>Field</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){b(n)},function(){console.log("CANCEL")})}function E(t){var n=e.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+y.selectedFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedFields.forEach(function(e){b(e)}),y.selectedFields=[]})}var y=this;y.salesforceAccount={},y.salesforceConfiguration={},y.configurations=[],y.selectedSalesforceConfiguration=-1,y.init=i,y.getSalesforceConfiguration=o,y.createOrEditSalesforceConfiguration=s,y.deleteSalesforceConfiguration=r,y.selectedSubjects=[],y.createOrEditSubject=l,y.deleteSubjectConfirm=c,y.deleteSelectedSubjects=m,y.selectedDescriptions=[],y.createOrEditDescription=u,y.deleteDescriptionConfirm=g,y.deleteSelectedDescriptions=h,y.selectedFields=[],y.createOrEditField=v,y.deleteFieldConfirm=f,y.deleteSelectedFields=E}e.$inject=["$mdDialog","$document","api","toasty"],angular.module("app.integrations").controller("SalesforceAccountConfigurationsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intSalesforceAccount.addConfiguration({id:t.params.id},p.salesforceConfiguration).$promise.then(function(e){p.configurations.unshift(e),i.success({title:"SalesforceConfiguration properly created",msg:p.salesforceConfiguration.name?p.salesforceConfiguration.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceConfiguration.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSalesforceConfiguration.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intSalesforceConfiguration.update({id:p.salesforceConfiguration.id},p.salesforceConfiguration).$promise.then(function(e){var t=_.find(p.configurations,{id:e.id});t&&_.merge(t,e),i.success({title:"SalesforceConfiguration properly saved!",msg:p.salesforceConfiguration.name?p.salesforceConfiguration.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceConfiguration.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSalesforceConfiguration.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The salesforceConfiguration will be deleted.").ariaLabel("Delete SalesforceConfiguration").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intSalesforceConfiguration.delete({id:p.salesforceConfiguration.id}).$promise.then(function(){_.remove(p.configurations,{id:p.salesforceConfiguration.id}),i.success({title:"SalesforceConfiguration properly deleted!",msg:(p.salesforceConfiguration.name||"salesforceConfiguration")+" has been deleted!"}),u(p.salesforceConfiguration)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceConfiguration.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_SALESFORCECONFIGURATION",p.salesforceConfiguration=angular.copy(s),p.configurations=o,p.newSalesforceConfiguration=!1,p.salesforceConfiguration||(p.salesforceConfiguration={channel:"voice",type:"inbound"},p.title="INTEGRATIONS.NEW_SALESFORCECONFIGURATION",p.newSalesforceConfiguration=!0),p.addNewSalesforceConfiguration=l,p.saveSalesforceConfiguration=d,p.deleteSalesforceConfiguration=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configurations","salesforceConfiguration","api"],angular.module("app.integrations").controller("CreateOrEditSalesforceConfigurationDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intSalesforceField.save(v.item).$promise.then(function(e){v.items.unshift(e),i.success({title:_.capitalize(d)+" properly created",msg:_.capitalize(d)+" has been created!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.save"}]})}function u(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intSalesforceField.update({id:v.item.id},v.item).$promise.then(function(e){var t=_.find(v.items,{id:e.id});t&&_.merge(t,e),i.success({title:_.capitalize(d)+" properly saved!",msg:_.capitalize(d)+" has been saved!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.intItem.update"}]})}function p(e){v.errors=[];var t=a.confirm().title("Are you sure?").content("The "+d+" will be deleted.").ariaLabel("Delete "+_.capitalize(d)).ok("Delete").cancel("Cancel").targetEvent(e);a.show(t).then(function(){c.intSalesforceField.delete({id:v.item.id}).$promise.then(function(){_.remove(v.items,{id:v.item.id}),i.success({title:_.capitalize(d)+" properly deleted!",msg:_.capitalize(d)+" has been deleted!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.delete"}]})},function(){})}function g(){return void 0!==v.item.variableName?v.item.variableName:"Please select a variable"}function h(){a.hide()}var v=this;v.errors=[],v.title="INTEGRATIONS.EDIT_"+_.toUpper(d),v.item=angular.copy(r),v.items=s,v.type=d,v.newItem=!1,v.item||(v.item={type:"string"},v.item[_.capitalize(d)+"Id"]=o.id,v.title="INTEGRATIONS.NEW_"+_.toUpper(d),v.newItem=!0),v.addNewItem=m,v.saveItem=u,v.deleteItem=p,v.getSelectedVariable=g,v.closeDialog=h,c.variable.get({nolimit:!0}).$promise.then(function(e){return v.variables=e.rows?e.rows:[],c.voiceAgentReport.describe().$promise}).then(function(e){return v.voiceAgentReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"]),c.voiceDialReport.describe().$promise}).then(function(e){v.voiceDialReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"])}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETVARIABLES",msg:e.data?JSON.stringify(e.data):e.toString()})}),c.intSalesforceAccount.getFields({id:l.id}).$promise.then(function(e){v.accountConnected=!0,v.fields=e.rows?e.rows:[],v.item.idField&&(v.customField=_.find(v.fields,{id:v.item.idField}))}).catch(function(e){v.accountConnected=!1,console.error(e)})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configuration","items","item","account","type","api"],angular.module("app.integrations").controller("CreateOrEditSalesforceAccountItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.integrations.salesforceAccounts")}function r(){i.intSalesforceAccount.update({id:l.salesforceAccount.id},l.salesforceAccount).$promise.then(function(){a.success({title:"SalesforceAccount updated!",msg:l.salesforceAccount.name?l.salesforceAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintSalesforceAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.salesforceAccount=e.params.salesforceAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoSalesforceAccounts=s,l.saveSalesforceAccount=r}e.$inject=["$state","$mdDialog","$document","toasty","api","salesforceAccount"],angular.module("app.integrations").controller("SalesforceAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.integrations.salesforceAccounts.edit",{id:e.id,salesforceAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the salesforceAccount?").htmlContent("<b>"+(e.name||"salesforceAccount")+"</b> will be deleted.").ariaLabel("delete salesforceAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.salesforceAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.intSalesforceAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSalesforceAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{salesforceAccount:t,salesforceAccounts:A.salesforceAccounts.rows}})}function v(e){l.intSalesforceAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.salesforceAccounts.rows,{id:e.id}),A.salesforceAccounts.count-=1,A.salesforceAccounts.rows.length||A.getSalesforceAccounts(),c.success({title:"SalesforceAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintSalesforceAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSalesforceAccounts);return A.selectedSalesforceAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected salesforceAccounts?").htmlContent("<b>"+A.selectedSalesforceAccounts.length+" selected</b> will be deleted.").ariaLabel("delete SalesforceAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSalesforceAccounts.forEach(function(e){v(e)}),A.selectedSalesforceAccounts=[]})}function E(){A.selectedSalesforceAccounts=[]}function y(){A.selectedSalesforceAccounts=A.salesforceAccounts.rows}var A=this;A.salesforceAccounts=r||{count:0,rows:[]},A.table="salesforceAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedSalesforceAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,username,remoteUri,password,clientId,clientSecret,securityToken,serverUrl,description",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getSalesforceAccounts=g,A.createOrEditSalesforceAccount=h,A.deleteSalesforceAccount=v,A.exportSelectedSalesforceAccounts=b,A.deleteSelectedSalesforceAccounts=f,A.deselectSalesforceAccounts=E,A.selectAllSalesforceAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSalesforceAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","salesforceAccounts","api","msUtils","toasty"],angular.module("app.integrations").controller("SalesforceAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intSugarcrmAccount.save(p.sugarcrmAccount).$promise.then(function(e){p.sugarcrmAccounts.unshift(e),i.success({title:"SugarcrmAccount properly created",msg:p.sugarcrmAccount.name?p.sugarcrmAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSugarcrmAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intSugarcrmAccount.update({id:p.sugarcrmAccount.id},p.sugarcrmAccount).$promise.then(function(e){var t=_.find(p.sugarcrmAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"SugarcrmAccount properly saved!",msg:p.sugarcrmAccount.name?p.sugarcrmAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSugarcrmAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The sugarcrmAccount will be deleted.").ariaLabel("Delete SugarcrmAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intSugarcrmAccount.delete({id:p.sugarcrmAccount.id}).$promise.then(function(){_.remove(p.sugarcrmAccounts,{id:p.sugarcrmAccount.id}),i.success({title:"SugarcrmAccount properly deleted!",msg:(p.sugarcrmAccount.name||"sugarcrmAccount")+" has been deleted!"}),u(p.sugarcrmAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_SUGARCRMACCOUNT",p.sugarcrmAccount=angular.copy(s),p.sugarcrmAccounts=o,p.newSugarcrmAccount=!1,p.sugarcrmAccount||(p.sugarcrmAccount={serverUrl:n.protocol()+"://"+n.host()+":"+n.port()},p.title="INTEGRATIONS.NEW_SUGARCRMACCOUNT",p.newSugarcrmAccount=!0),p.addNewSugarcrmAccount=l,p.saveSugarcrmAccount=d,p.deleteSugarcrmAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","sugarcrmAccounts","sugarcrmAccount","api"],angular.module("app.integrations").controller("CreateOrEditSugarcrmAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){y.sugarcrmAccount=e,n.intSugarcrmAccount.getConfigurations({id:y.sugarcrmAccount.id,sort:"-updatedAt"}).$promise.then(function(e){return y.configurations=e.rows?e.rows:[],y.configurations.length&&y.getSugarcrmConfiguration(0),n.variable.get({nolimit:!0,sort:"name"}).$promise}).then(function(e){y.variables=e.rows?e.rows:[],y.variablesById=_.keyBy(y.variables,"id")}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETCONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){y.sugarcrmConfiguration=y.configurations[e],y.selectedSugarcrmConfiguration=e,n.intSugarcrmConfiguration.getSubjects({id:y.sugarcrmConfiguration.id}).$promise.then(function(e){return y.subjects=e.rows?e.rows:[],n.intSugarcrmConfiguration.getDescriptions({id:y.sugarcrmConfiguration.id}).$promise}).then(function(e){return y.descriptions=e.rows?e.rows:[],n.intSugarcrmConfiguration.getFields({id:y.sugarcrmConfiguration.id}).$promise}).then(function(e){y.fields=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(n,a){e.show({controller:"CreateOrEditSugarcrmConfigurationDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/configurations/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{sugarcrmConfiguration:a,configurations:y.configurations}}).finally(function(){y.getSugarcrmConfiguration(0)})}function r(t,i){var o=e.confirm().title("Are you sure want to delete the sugarcrmConfiguration?").htmlContent("<b>"+(i.name||"sugarcrmConfiguration")+"</b> will be deleted.").ariaLabel("delete sugarcrmConfiguration").targetEvent(t).ok("OK").cancel("CANCEL");e.show(o).then(function(){n.intSugarcrmConfiguration.delete({id:i.id}).$promise.then(function(){_.remove(y.configurations,{id:i.id}),a.success({title:"SugarcrmConfiguration deleted!",msg:i.name?i.name+" has been deleted!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){y.getSugarcrmConfiguration(0)})},function(){console.log("CANCEL")})}function l(n,a){e.show({controller:"CreateOrEditSugarcrmAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"subject",item:a,items:y.subjects,configuration:y.sugarcrmConfiguration,account:y.sugarcrmAccount}})}function d(e){n.intSugarcrmField.delete({id:e.id}).$promise.then(function(){_.remove(y.subjects,{id:e.id}),a.success({title:"Subject deleted!",msg:"Subject has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function c(t,n){var a=e.confirm().title("Are you sure want to delete the subject?").htmlContent("<b>Subject</b> will be deleted.").ariaLabel("delete subject").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){d(n)},function(){console.log("CANCEL")})}function m(t){var n=e.confirm().title("Are you sure want to delete the selected subjects?").htmlContent("<b>"+y.selectedSubjects.length+" selected</b> will be deleted.").ariaLabel("delete subjects").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedSubjects.forEach(function(e){d(e)}),y.selectedSubjects=[]})}function u(n,a){e.show({controller:"CreateOrEditSugarcrmAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"description",item:a,items:y.descriptions,configuration:y.sugarcrmConfiguration,account:y.sugarcrmAccount}})}function p(e){n.intSugarcrmField.delete({id:e.id}).$promise.then(function(){_.remove(y.descriptions,{id:e.id}),a.success({title:"Description deleted!",msg:"Description has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(t,n){var a=e.confirm().title("Are you sure want to delete the description?").htmlContent("<b>Description</b> will be deleted.").ariaLabel("delete description").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){p(n)},function(){console.log("CANCEL")})}function h(t){var n=e.confirm().title("Are you sure want to delete the selected descriptions?").htmlContent("<b>"+y.selectedDescriptions.length+" selected</b> will be deleted.").ariaLabel("delete descriptions").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedDescriptions.forEach(function(e){p(e)}),y.selectedDescriptions=[]})}function v(n,a){e.show({controller:"CreateOrEditSugarcrmAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"field",item:a,items:y.fields,configuration:y.sugarcrmConfiguration,account:y.sugarcrmAccount}})}function b(e){n.intSugarcrmField.delete({id:e.id}).$promise.then(function(){_.remove(y.fields,{id:e.id}),a.success({title:"Field deleted!",msg:"Field has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(t,n){var a=e.confirm().title("Are you sure want to delete the field?").htmlContent("<b>Field</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){b(n)},function(){console.log("CANCEL")})}function E(t){var n=e.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+y.selectedFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedFields.forEach(function(e){b(e)}),y.selectedFields=[]})}var y=this;y.sugarcrmAccount={},y.sugarcrmConfiguration={},y.configurations=[],y.selectedSugarcrmConfiguration=-1,y.init=i,y.getSugarcrmConfiguration=o,y.createOrEditSugarcrmConfiguration=s,y.deleteSugarcrmConfiguration=r,y.selectedSubjects=[],y.createOrEditSubject=l,y.deleteSubjectConfirm=c,y.deleteSelectedSubjects=m,y.selectedDescriptions=[],y.createOrEditDescription=u,y.deleteDescriptionConfirm=g,y.deleteSelectedDescriptions=h,y.selectedFields=[],y.createOrEditField=v,y.deleteFieldConfirm=f,y.deleteSelectedFields=E}e.$inject=["$mdDialog","$document","api","toasty"],angular.module("app.integrations").controller("SugarcrmAccountConfigurationsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intSugarcrmAccount.addConfiguration({id:t.params.id},p.sugarcrmConfiguration).$promise.then(function(e){p.configurations.unshift(e),i.success({title:"SugarcrmConfiguration properly created",msg:p.sugarcrmConfiguration.name?p.sugarcrmConfiguration.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmConfiguration.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSugarcrmConfiguration.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intSugarcrmConfiguration.update({id:p.sugarcrmConfiguration.id},p.sugarcrmConfiguration).$promise.then(function(e){var t=_.find(p.configurations,{id:e.id});t&&_.merge(t,e),i.success({title:"SugarcrmConfiguration properly saved!",msg:p.sugarcrmConfiguration.name?p.sugarcrmConfiguration.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmConfiguration.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSugarcrmConfiguration.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The sugarcrmConfiguration will be deleted.").ariaLabel("Delete SugarcrmConfiguration").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intSugarcrmConfiguration.delete({id:p.sugarcrmConfiguration.id}).$promise.then(function(){_.remove(p.configurations,{id:p.sugarcrmConfiguration.id}),i.success({title:"SugarcrmConfiguration properly deleted!",msg:(p.sugarcrmConfiguration.name||"sugarcrmConfiguration")+" has been deleted!"}),u(p.sugarcrmConfiguration)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmConfiguration.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_SUGARCRMCONFIGURATION",p.sugarcrmConfiguration=angular.copy(s),p.configurations=o,p.newSugarcrmConfiguration=!1,p.sugarcrmConfiguration||(p.sugarcrmConfiguration={channel:"voice",type:"inbound"},p.title="INTEGRATIONS.NEW_SUGARCRMCONFIGURATION",p.newSugarcrmConfiguration=!0),p.addNewSugarcrmConfiguration=l,p.saveSugarcrmConfiguration=d,p.deleteSugarcrmConfiguration=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configurations","sugarcrmConfiguration","api"],angular.module("app.integrations").controller("CreateOrEditSugarcrmConfigurationDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intSugarcrmField.save(v.item).$promise.then(function(e){v.items.unshift(e),i.success({title:_.capitalize(d)+" properly created",msg:_.capitalize(d)+" has been created!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.save"}]})}function u(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intSugarcrmField.update({id:v.item.id},v.item).$promise.then(function(e){var t=_.find(v.items,{id:e.id});t&&_.merge(t,e),i.success({title:_.capitalize(d)+" properly saved!",msg:_.capitalize(d)+" has been saved!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.intItem.update"}]})}function p(e){v.errors=[];var t=a.confirm().title("Are you sure?").content("The "+d+" will be deleted.").ariaLabel("Delete "+_.capitalize(d)).ok("Delete").cancel("Cancel").targetEvent(e);a.show(t).then(function(){c.intSugarcrmField.delete({id:v.item.id}).$promise.then(function(){_.remove(v.items,{id:v.item.id}),i.success({title:_.capitalize(d)+" properly deleted!",msg:_.capitalize(d)+" has been deleted!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.delete"}]})},function(){})}function g(){return void 0!==v.item.variableName?v.item.variableName:"Please select a variable"}function h(){a.hide()}var v=this;v.errors=[],v.title="INTEGRATIONS.EDIT_"+_.toUpper(d),v.item=angular.copy(r),v.items=s,v.type=d,v.newItem=!1,v.item||(v.item={type:"string"},v.item[_.capitalize(d)+"Id"]=o.id,v.title="INTEGRATIONS.NEW_"+_.toUpper(d),v.newItem=!0),v.addNewItem=m,v.saveItem=u,v.deleteItem=p,v.getSelectedVariable=g,v.closeDialog=h,c.variable.get({nolimit:!0}).$promise.then(function(e){return v.variables=e.rows?e.rows:[],c.voiceAgentReport.describe().$promise}).then(function(e){return v.voiceAgentReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"]),c.voiceDialReport.describe().$promise}).then(function(e){v.voiceDialReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"])}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETVARIABLES",msg:e.data?JSON.stringify(e.data):e.toString()})}),c.intSugarcrmAccount.getFields({id:l.id}).$promise.then(function(e){v.accountConnected=!0,v.fields=e.rows?e.rows:[],v.item.idField&&(v.customField=_.find(v.fields,{id:v.item.idField}))}).catch(function(e){v.accountConnected=!1,console.error(e)})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configuration","items","item","account","type","api"],angular.module("app.integrations").controller("CreateOrEditSugarcrmAccountItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.integrations.sugarcrmAccounts")}function r(){i.intSugarcrmAccount.update({id:l.sugarcrmAccount.id},l.sugarcrmAccount).$promise.then(function(){a.success({title:"SugarcrmAccount updated!",msg:l.sugarcrmAccount.name?l.sugarcrmAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintSugarcrmAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.sugarcrmAccount=e.params.sugarcrmAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoSugarcrmAccounts=s,l.saveSugarcrmAccount=r}e.$inject=["$state","$mdDialog","$document","toasty","api","sugarcrmAccount"],angular.module("app.integrations").controller("SugarcrmAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.integrations.sugarcrmAccounts.edit",{id:e.id,sugarcrmAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the sugarcrmAccount?").htmlContent("<b>"+(e.name||"sugarcrmAccount")+"</b> will be deleted.").ariaLabel("delete sugarcrmAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.sugarcrmAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.intSugarcrmAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSugarcrmAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{sugarcrmAccount:t,sugarcrmAccounts:A.sugarcrmAccounts.rows}})}function v(e){l.intSugarcrmAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.sugarcrmAccounts.rows,{id:e.id}),A.sugarcrmAccounts.count-=1,A.sugarcrmAccounts.rows.length||A.getSugarcrmAccounts(),c.success({title:"SugarcrmAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintSugarcrmAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSugarcrmAccounts);return A.selectedSugarcrmAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected sugarcrmAccounts?").htmlContent("<b>"+A.selectedSugarcrmAccounts.length+" selected</b> will be deleted.").ariaLabel("delete SugarcrmAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSugarcrmAccounts.forEach(function(e){v(e)}),A.selectedSugarcrmAccounts=[]})}function E(){A.selectedSugarcrmAccounts=[]}function y(){A.selectedSugarcrmAccounts=A.sugarcrmAccounts.rows}var A=this;A.sugarcrmAccounts=r||{count:0,rows:[]},A.table="sugarcrmAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedSugarcrmAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,username,remoteUri,password,serverUrl,description",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getSugarcrmAccounts=g,A.createOrEditSugarcrmAccount=h,A.deleteSugarcrmAccount=v,A.exportSelectedSugarcrmAccounts=b,A.deleteSelectedSugarcrmAccounts=f,A.deselectSugarcrmAccounts=E,A.selectAllSugarcrmAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSugarcrmAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","sugarcrmAccounts","api","msUtils","toasty"],angular.module("app.integrations").controller("SugarcrmAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intZendeskAccount.save(p.zendeskAccount).$promise.then(function(e){p.zendeskAccounts.unshift(e),i.success({title:"ZendeskAccount properly created",msg:p.zendeskAccount.name?p.zendeskAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intZendeskAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intZendeskAccount.update({id:p.zendeskAccount.id},p.zendeskAccount).$promise.then(function(e){var t=_.find(p.zendeskAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"ZendeskAccount properly saved!",msg:p.zendeskAccount.name?p.zendeskAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intZendeskAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The zendeskAccount will be deleted.").ariaLabel("Delete ZendeskAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intZendeskAccount.delete({id:p.zendeskAccount.id}).$promise.then(function(){_.remove(p.zendeskAccounts,{id:p.zendeskAccount.id}),i.success({title:"ZendeskAccount properly deleted!",msg:(p.zendeskAccount.name||"zendeskAccount")+" has been deleted!"}),u(p.zendeskAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_ZENDESKACCOUNT",p.zendeskAccount=angular.copy(s),p.zendeskAccounts=o,p.newZendeskAccount=!1,p.zendeskAccount||(p.zendeskAccount={authType:"password",serverUrl:n.protocol()+"://"+n.host()+":"+n.port()},p.title="INTEGRATIONS.NEW_ZENDESKACCOUNT",p.newZendeskAccount=!0),p.addNewZendeskAccount=l,p.saveZendeskAccount=d,p.deleteZendeskAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","zendeskAccounts","zendeskAccount","api"],angular.module("app.integrations").controller("CreateOrEditZendeskAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intZendeskField.save(v.item).$promise.then(function(e){v.items.unshift(e),i.success({title:_.capitalize(d)+" properly created",msg:_.capitalize(d)+" has been created!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.save"}]})}function u(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intZendeskField.update({id:v.item.id},v.item).$promise.then(function(e){var t=_.find(v.items,{id:e.id});t&&_.merge(t,e),i.success({title:_.capitalize(d)+" properly saved!",msg:_.capitalize(d)+" has been saved!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.intItem.update"}]})}function p(e){v.errors=[];var t=a.confirm().title("Are you sure?").content("The "+d+" will be deleted.").ariaLabel("Delete "+_.capitalize(d)).ok("Delete").cancel("Cancel").targetEvent(e);a.show(t).then(function(){c.intZendeskField.delete({id:v.item.id}).$promise.then(function(){_.remove(v.items,{id:v.item.id}),i.success({title:_.capitalize(d)+" properly deleted!",msg:_.capitalize(d)+" has been deleted!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.delete"}]})},function(){})}function g(){return void 0!==v.item.variableName?v.item.variableName:"Please select a variable"}function h(){a.hide()}var v=this;v.errors=[],v.title="INTEGRATIONS.EDIT_"+_.toUpper(d),v.item=angular.copy(r),v.items=s,v.type=d,v.newItem=!1,v.item||(v.item={type:"string"},v.item[_.capitalize(d)+"Id"]=o.id,v.title="INTEGRATIONS.NEW_"+_.toUpper(d),v.newItem=!0),v.addNewItem=m,v.saveItem=u,v.deleteItem=p,v.getSelectedVariable=g,v.closeDialog=h,c.variable.get({nolimit:!0}).$promise.then(function(e){return v.variables=e.rows?e.rows:[],c.voiceAgentReport.describe().$promise}).then(function(e){return v.voiceAgentReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"]),c.voiceDialReport.describe().$promise}).then(function(e){v.voiceDialReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"])}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETVARIABLES",msg:e.data?JSON.stringify(e.data):e.toString()})}),c.intZendeskAccount.getFields({id:l.id}).$promise.then(function(e){v.accountConnected=!0,v.fields=e.rows?e.rows:[],v.item.idField&&(v.customField=_.find(v.fields,{id:v.item.idField}))}).catch(function(e){v.accountConnected=!1,console.error(e)})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configuration","items","item","account","type","api"],angular.module("app.integrations").controller("CreateOrEditZendeskAccountItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.integrations.zendeskAccounts")}function r(){i.intZendeskAccount.update({id:l.zendeskAccount.id},l.zendeskAccount).$promise.then(function(){a.success({title:"ZendeskAccount updated!",msg:l.zendeskAccount.name?l.zendeskAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintZendeskAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.zendeskAccount=e.params.zendeskAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoZendeskAccounts=s,l.saveZendeskAccount=r}e.$inject=["$state","$mdDialog","$document","toasty","api","zendeskAccount"],angular.module("app.integrations").controller("ZendeskAccountController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){n.intZendeskConfiguration.setTags({id:A.zendeskConfiguration.id,ids:A.selectedTags}).$promise.then(function(){a.success({title:"Tags set!",msg:"Tags has been set!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ADDTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){A.zendeskAccount=e,n.intZendeskAccount.getConfigurations({id:A.zendeskAccount.id,sort:"-updatedAt"}).$promise.then(function(e){return A.zendeskConfigurations=e.rows?e.rows:[],A.zendeskConfigurations.length&&A.getZendeskConfiguration(0),n.variable.get({nolimit:!0,sort:"name"}).$promise}).then(function(e){A.variables=e.rows?e.rows:[],A.variablesById=_.keyBy(A.variables,"id")}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETCONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(e){A.zendeskConfiguration=A.zendeskConfigurations[e],A.selectedZendeskConfiguration=e,n.intZendeskConfiguration.getSubjects({id:A.zendeskConfiguration.id}).$promise.then(function(e){return A.subjects=e.rows?e.rows:[],n.intZendeskConfiguration.getDescriptions({id:A.zendeskConfiguration.id}).$promise}).then(function(e){return A.descriptions=e.rows?e.rows:[],n.intZendeskConfiguration.getFields({id:A.zendeskConfiguration.id}).$promise}).then(function(e){A.fields=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),n.intZendeskConfiguration.getTags({id:A.zendeskConfiguration.id}).$promise.then(function(e){A.selectedTags=e.rows?_.map(e.rows,"id"):[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})})}function r(n,a){e.show({controller:"CreateOrEditZendeskConfigurationDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/zendeskConfigurations/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{zendeskConfiguration:a,zendeskConfigurations:A.zendeskConfigurations}}).finally(function(){A.getZendeskConfiguration(0)})}function l(t,i){var o=e.confirm().title("Are you sure want to delete the zendeskConfiguration?").htmlContent("<b>"+(i.name||"zendeskConfiguration")+"</b> will be deleted.").ariaLabel("delete zendeskConfiguration").targetEvent(t).ok("OK").cancel("CANCEL");e.show(o).then(function(){n.intZendeskConfiguration.delete({id:i.id}).$promise.then(function(){_.remove(A.zendeskConfigurations,{id:i.id}),a.success({title:"ZendeskConfiguration deleted!",msg:i.name?i.name+" has been deleted!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){A.getZendeskConfiguration(0)})},function(){console.log("CANCEL")})}function d(n,a){e.show({controller:"CreateOrEditZendeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"subject",item:a,items:A.subjects,configuration:A.zendeskConfiguration,account:A.zendeskAccount}})}function c(e){n.intZendeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.subjects,{id:e.id}),a.success({title:"Subject deleted!",msg:"Subject has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function m(t,n){var a=e.confirm().title("Are you sure want to delete the subject?").htmlContent("<b>Subject</b> will be deleted.").ariaLabel("delete subject").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){c(n)},function(){console.log("CANCEL")})}function u(t){var n=e.confirm().title("Are you sure want to delete the selected subjects?").htmlContent("<b>"+A.selectedSubjects.length+" selected</b> will be deleted.").ariaLabel("delete subjects").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedSubjects.forEach(function(e){c(e)}),A.selectedSubjects=[]})}function p(n,a){e.show({controller:"CreateOrEditZendeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"description",item:a,items:A.descriptions,configuration:A.zendeskConfiguration,account:A.zendeskAccount}})}function g(e){n.intZendeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.descriptions,{id:e.id}),a.success({title:"Description deleted!",msg:"Description has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(t,n){var a=e.confirm().title("Are you sure want to delete the description?").htmlContent("<b>Description</b> will be deleted.").ariaLabel("delete description").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){g(n)},function(){console.log("CANCEL")})}function v(t){var n=e.confirm().title("Are you sure want to delete the selected descriptions?").htmlContent("<b>"+A.selectedDescriptions.length+" selected</b> will be deleted.").ariaLabel("delete descriptions").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedDescriptions.forEach(function(e){g(e)}),A.selectedDescriptions=[]})}function b(n,a){e.show({controller:"CreateOrEditZendeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"field",item:a,items:A.fields,configuration:A.zendeskConfiguration,account:A.zendeskAccount}})}function f(e){n.intZendeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.fields,{id:e.id}),a.success({title:"Field deleted!",msg:"Field has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(t,n){var a=e.confirm().title("Are you sure want to delete the field?").htmlContent("<b>Field</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){f(n)},function(){console.log("CANCEL")})}function y(t){var n=e.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+A.selectedFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedFields.forEach(function(e){f(e)}),A.selectedFields=[]})}var A=this;A.zendeskAccount={},A.zendeskConfiguration={},A.zendeskConfigurations=[],A.selectedZendeskConfiguration=-1,A.init=o,A.getZendeskConfiguration=s,A.createOrEditZendeskConfiguration=r,A.deleteZendeskConfiguration=l,A.selectedTags=[],A.selectTagsChanged=i,n.tag.get({nolimit:!0,sort:"name"}).$promise.then(function(e){A.tags=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})}),A.selectedSubjects=[],A.createOrEditSubject=d,A.deleteSubjectConfirm=m,A.deleteSelectedSubjects=u,A.selectedDescriptions=[],A.createOrEditDescription=p,A.deleteDescriptionConfirm=h,A.deleteSelectedDescriptions=v,A.selectedFields=[],A.createOrEditField=b,A.deleteFieldConfirm=E,A.deleteSelectedFields=y}e.$inject=["$mdDialog","$document","api","toasty"],angular.module("app.integrations").controller("ZendeskAccountConfigurationsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intZendeskAccount.addConfiguration({id:t.params.id},p.zendeskConfiguration).$promise.then(function(e){p.zendeskConfigurations.unshift(e),i.success({title:"ZendeskConfiguration properly created",msg:p.zendeskConfiguration.name?p.zendeskConfiguration.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskConfiguration.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intZendeskConfiguration.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intZendeskConfiguration.update({id:p.zendeskConfiguration.id},p.zendeskConfiguration).$promise.then(function(e){var t=_.find(p.zendeskConfigurations,{id:e.id});t&&_.merge(t,e),i.success({title:"ZendeskConfiguration properly saved!",msg:p.zendeskConfiguration.name?p.zendeskConfiguration.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskConfiguration.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intZendeskConfiguration.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The zendeskConfiguration will be deleted.").ariaLabel("Delete ZendeskConfiguration").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intZendeskConfiguration.delete({id:p.zendeskConfiguration.id}).$promise.then(function(){_.remove(p.zendeskConfigurations,{id:p.zendeskConfiguration.id}),i.success({title:"ZendeskConfiguration properly deleted!",msg:(p.zendeskConfiguration.name||"zendeskConfiguration")+" has been deleted!"}),u(p.zendeskConfiguration)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskConfiguration.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_ZENDESKCONFIGURATION",p.zendeskConfiguration=angular.copy(s),p.zendeskConfigurations=o,p.newZendeskConfiguration=!1,p.zendeskConfiguration||(p.zendeskConfiguration={channel:"voice",type:"inbound"},p.title="INTEGRATIONS.NEW_ZENDESKCONFIGURATION",p.newZendeskConfiguration=!0),p.addNewZendeskConfiguration=l,p.saveZendeskConfiguration=d,p.deleteZendeskConfiguration=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","zendeskConfigurations","zendeskConfiguration","api"],angular.module("app.integrations").controller("CreateOrEditZendeskConfigurationDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.integrations.zendeskAccounts.edit",{id:e.id,zendeskAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the zendeskAccount?").htmlContent("<b>"+(e.name||"zendeskAccount")+"</b> will be deleted.").ariaLabel("delete zendeskAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.zendeskAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.intZendeskAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditZendeskAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{zendeskAccount:t,zendeskAccounts:A.zendeskAccounts.rows}})}function v(e){l.intZendeskAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.zendeskAccounts.rows,{id:e.id}),A.zendeskAccounts.count-=1,A.zendeskAccounts.rows.length||A.getZendeskAccounts(),c.success({title:"ZendeskAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintZendeskAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedZendeskAccounts);return A.selectedZendeskAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected zendeskAccounts?").htmlContent("<b>"+A.selectedZendeskAccounts.length+" selected</b> will be deleted.").ariaLabel("delete ZendeskAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedZendeskAccounts.forEach(function(e){v(e)}),A.selectedZendeskAccounts=[]})}function E(){A.selectedZendeskAccounts=[]}function y(){A.selectedZendeskAccounts=A.zendeskAccounts.rows}var A=this;A.zendeskAccounts=r||{count:0,rows:[]},A.table="zendeskAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedZendeskAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,username,remoteUri,authType,password,token,serverUrl,description",limit:10,page:1},A.arrayauthType=_.keyBy([{option:"Password",value:"'password'"},{option:"Token",value:"'token'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getZendeskAccounts=g,A.createOrEditZendeskAccount=h,A.deleteZendeskAccount=v,A.exportSelectedZendeskAccounts=b,A.deleteSelectedZendeskAccounts=f,A.deselectZendeskAccounts=E,A.selectAllZendeskAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getZendeskAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","zendeskAccounts","api","msUtils","toasty"],angular.module("app.integrations").controller("ZendeskAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.mailAccount.save(p.mailAccount).$promise.then(function(e){p.mailAccounts.unshift(e),i.success({title:"MailAccount properly created",msg:p.mailAccount.name?p.mailAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.mailAccount.update({id:p.mailAccount.id},p.mailAccount).$promise.then(function(e){var t=_.find(p.mailAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"MailAccount properly saved!",msg:p.mailAccount.name?p.mailAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The mailAccount will be deleted.").ariaLabel("Delete MailAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.mailAccount.delete({id:p.mailAccount.id}).$promise.then(function(){_.remove(p.mailAccounts,{id:p.mailAccount.id}),i.success({title:"MailAccount properly deleted!",msg:(p.mailAccount.name||"mailAccount")+" has been deleted!"}),u(p.mailAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MAIL.EDIT_MAILACCOUNT",p.mailAccount=angular.copy(s),p.mailAccounts=o,p.newMailAccount=!1,p.mailAccount||(p.mailAccount={},p.title="MAIL.NEW_MAILACCOUNT",p.newMailAccount=!0),p.addNewMailAccount=l,p.saveMailAccount=d,p.deleteMailAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","mailAccounts","mailAccount","api"],angular.module("app.mail").controller("CreateOrEditMailAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.mailAccount=e,h.query.id=h.mailAccount.id,h.query.MailAccountId=h.mailAccount.id,h.getMailAccountMailDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the mailDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete mailDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.mailAccountMailDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.mailAccount.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditMailDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/mail/views/mailAccounts/edit/mailDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{mailDisposition:t,mailDispositions:h.mailAccountMailDispositions.rows}})}function p(e){r.mailDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.mailAccountMailDispositions.rows,{id:e.id}),h.mailAccountMailDispositions.count-=1,h.mailAccountMailDispositions.rows.length||h.getMailAccountMailDispositions(),s.success({title:"MailDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected mailDispositions?").htmlContent("<b>"+h.selectedMailAccountMailDispositions.length+" selected</b> will be deleted.").ariaLabel("delete mailDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedMailAccountMailDispositions.forEach(function(e){p(e)}),h.selectedMailAccountMailDispositions=[]})}var h=this;h.mailAccount={},h.mailAccountMailDispositions={count:0,rows:[]},h.selectedMailAccountMailDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getMailAccountMailDispositions=m,h.createOrEditMailAccountMailDisposition=u,h.deleteMailAccountMailDisposition=p,h.deleteSelectedMailAccountMailDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getMailAccountMailDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.mail").controller("MailAccountMailDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.mailDisposition.save(p.mailDisposition).$promise.then(function(e){p.mailDispositions.unshift(e),i.success({title:"MailDisposition properly created",msg:p.mailDisposition.name?p.mailDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.mailDisposition.update({id:p.mailDisposition.id},p.mailDisposition).$promise.then(function(e){var t=_.find(p.mailDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"MailDisposition properly saved!",msg:p.mailDisposition.name?p.mailDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The mailDisposition will be deleted.").ariaLabel("Delete MailDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.mailDisposition.delete({id:p.mailDisposition.id}).$promise.then(function(){_.remove(p.mailDispositions,{id:p.mailDisposition.id}),i.success({title:"MailDisposition properly deleted!",msg:(p.mailDisposition.name||"mailDisposition")+" has been deleted!"}),u(p.mailDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.mailDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MAIL.EDIT_MAILDISPOSITION",p.mailDisposition=angular.copy(s),p.mailDispositions=o,p.newMailDisposition=!1,p.mailDisposition||(p.mailDisposition={},p.title="MAIL.NEW_MAILDISPOSITION",p.newMailDisposition=!0),t.params.id&&(p.mailDisposition.MailAccountId=t.params.id),p.addNewMailDisposition=l,p.saveMailDisposition=d,p.deleteMailDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","mailDispositions","mailDisposition","api"],angular.module("app.mail").controller("CreateOrEditMailDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.mail.mailAccounts")}function r(){i.mailAccount.update({id:l.mailAccount.id},l.mailAccount).$promise.then(function(){a.success({title:"MailAccount updated!",msg:l.mailAccount.name?l.mailAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.mailAccount=e.params.mailAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoMailAccounts=s,l.saveMailAccount=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.template.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.templates=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplates",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","mailAccount"],angular.module("app.mail").controller("MailAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.mail.mailAccounts.edit",{id:e.id,mailAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the mailAccount?").htmlContent("<b>"+(e.name||"mailAccount")+"</b> will be deleted.").ariaLabel("delete mailAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.mailAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.mailAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditMailAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/mail/views/mailAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{mailAccount:t,mailAccounts:A.mailAccounts.rows}})}function v(e){l.mailAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.mailAccounts.rows,{id:e.id}),A.mailAccounts.count-=1,A.mailAccounts.rows.length||A.getMailAccounts(),c.success({title:"MailAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedMailAccounts);return A.selectedMailAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected mailAccounts?").htmlContent("<b>"+A.selectedMailAccounts.length+" selected</b> will be deleted.").ariaLabel("delete MailAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedMailAccounts.forEach(function(e){v(e)}),A.selectedMailAccounts=[]})}function E(){A.selectedMailAccounts=[]}function y(){A.selectedMailAccounts=A.mailAccounts.rows}var A=this;A.mailAccounts=r||{count:0,rows:[]},A.table="mailAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedMailAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,address,ListId,TemplateId,fidelity,timeout,service,description,Imap.host,Imap.username,Imap.password,Imap.port,Imap.mailbox,Imap.connTimeout,Imap.authTimeout,Imap.delete,Imap.ssl,Imap.keepalive,Smtp.host,Smtp.username,Smtp.password,Smtp.port,Smtp.ssl,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl,whiteLabel",limit:10,page:1},A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getMailAccounts=g,A.createOrEditMailAccount=h,A.deleteMailAccount=v,A.exportSelectedMailAccounts=b,A.deleteSelectedMailAccounts=f,A.deselectMailAccounts=E,A.selectAllMailAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getMailAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","mailAccounts","api","msUtils","toasty"],angular.module("app.mail").controller("MailAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.mailQueue.save(p.mailQueue).$promise.then(function(e){p.mailQueues.unshift(e),i.success({title:"MailQueue properly created",msg:p.mailQueue.name?p.mailQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.mailQueue.update({id:p.mailQueue.id},p.mailQueue).$promise.then(function(e){var t=_.find(p.mailQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"MailQueue properly saved!",msg:p.mailQueue.name?p.mailQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The mailQueue will be deleted.").ariaLabel("Delete MailQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.mailQueue.delete({id:p.mailQueue.id}).$promise.then(function(){_.remove(p.mailQueues,{id:p.mailQueue.id}),i.success({title:"MailQueue properly deleted!",msg:(p.mailQueue.name||"mailQueue")+" has been deleted!"}),u(p.mailQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.mailQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MAIL.EDIT_MAILQUEUE",p.mailQueue=angular.copy(s),p.mailQueues=o,p.newMailQueue=!1,p.mailQueue||(p.mailQueue={strategy:"beepall"},p.title="MAIL.NEW_MAILQUEUE",p.newMailQueue=!0),p.addNewMailQueue=l,p.saveMailQueue=d,p.deleteMailQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","mailQueues","mailQueue","api"],angular.module("app.mail").controller("CreateOrEditMailQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.mailQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MAIL.ALL_TEAMS"),labelSelected:i.instant("MAIL.SELECTED_TEAMS"),transferCallback:function(e,a){n.mailQueue[a?"removeTeams":"addTeams"]({id:s.mailQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:mailQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.mailQueue.getTeams({id:s.mailQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","mailQueue","$translate"],angular.module("app.mail").controller("MailQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"MailQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/mail/views/mailQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{mailQueue:e,mailQueues:d.mailQueues?d.mailQueues.rows:[]}})}function r(){e.go("app.mail.mailQueues")}function l(){i.mailQueue.update({id:d.mailQueue.id},d.mailQueue).$promise.then(function(){a.success({title:"MailQueue updated!",msg:d.mailQueue.name?d.mailQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.mailQueue=e.params.mailQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoMailQueues=r,d.saveMailQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","mailQueue"],angular.module("app.mail").controller("MailQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.mail.mailQueues.edit",{id:e.id,mailQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the mailQueue?").htmlContent("<b>"+(e.name||"mailQueue")+"</b> will be deleted.").ariaLabel("delete mailQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.mailQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.mailQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditMailQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/mail/views/mailQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{mailQueue:t,mailQueues:A.mailQueues.rows}})}function v(e){l.mailQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.mailQueues.rows,{id:e.id}),A.mailQueues.count-=1,A.mailQueues.rows.length||A.getMailQueues(),c.success({title:"MailQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedMailQueues);return A.selectedMailQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected mailQueues?").htmlContent("<b>"+A.selectedMailQueues.length+" selected</b> will be deleted.").ariaLabel("delete MailQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedMailQueues.forEach(function(e){v(e)}),A.selectedMailQueues=[]})}function E(){A.selectedMailQueues=[]}function y(){A.selectedMailQueues=A.mailQueues.rows}var A=this;A.mailQueues=r||{count:0,rows:[]},A.table="mailQueues",A.listOrder="",A.listOrderAsc=null,A.selectedMailQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getMailQueues=g,A.createOrEditMailQueue=h,A.deleteMailQueue=v,A.exportSelectedMailQueues=b,A.deleteSelectedMailQueues=f,A.deselectMailQueues=E,A.selectAllMailQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getMailQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","mailQueues","api","msUtils","toasty"],angular.module("app.mail").controller("MailQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.campaign.save(p.ivrCampaign).$promise.then(function(e){p.ivrCampaigns.unshift(e),i.success({title:"IvrCampaign properly created",msg:p.ivrCampaign.name?p.ivrCampaign.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.campaign.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.campaign.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.campaign.update({id:p.ivrCampaign.id},p.ivrCampaign).$promise.then(function(e){var t=_.find(p.ivrCampaigns,{id:e.id});t&&_.merge(t,e),i.success({title:"IvrCampaign properly saved!",msg:p.ivrCampaign.name?p.ivrCampaign.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.campaign.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.campaign.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The ivrCampaign will be deleted.").ariaLabel("Delete IvrCampaign").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.campaign.delete({id:p.ivrCampaign.id}).$promise.then(function(){_.remove(p.ivrCampaigns,{id:p.ivrCampaign.id}),i.success({title:"IvrCampaign properly deleted!",msg:(p.ivrCampaign.name||"ivrCampaign")+" has been deleted!"}),u(p.ivrCampaign)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.campaign.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MOTIONDIALER.EDIT_IVRCAMPAIGN",p.ivrCampaign=angular.copy(s),p.ivrCampaigns=o,p.newIvrCampaign=!1,p.ivrCampaign||(p.ivrCampaign={active:!0,type:"ivr",limitCalls:30,dialOriginateTimeout:30,dialGlobalMaxRetry:4,dialCongestionMaxRetry:3,dialCongestionRetryFrequency:150,dialBusyMaxRetry:3,dialBusyRetryFrequency:150,dialNoAnswerMaxRetry:3,dialNoAnswerRetryFrequency:150,dialGlobalInterval:"07:00-22:00,*,*,*"},p.title="MOTIONDIALER.NEW_IVRCAMPAIGN",p.newIvrCampaign=!0),p.addNewIvrCampaign=l,p.saveIvrCampaign=d,p.deleteIvrCampaign=c,p.getDateFromString=m,p.closeDialog=u,r.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.trunks=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.squareProject.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.projects=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){p.interval=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","ivrCampaigns","ivrCampaign","api"],angular.module("app.motiondialer").controller("CreateOrEditIvrCampaignDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.ivrCampaign=a,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_LISTS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_LISTS"),transferCallback:function(e,a){n.campaign[a?"removeBlackLists":"addBlackLists"]({id:s.ivrCampaign.id,ids:_.map(e,"id")}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ivrCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.campaign.getBlackLists({id:s.ivrCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.cmList.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","ivrCampaign","$translate"],angular.module("app.motiondialer").controller("IvrCampaignblacklistaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.ivrCampaign=e,h.query.id=h.ivrCampaign.id,h.query.CampaignId=h.ivrCampaign.id,h.getIvrCampaignHopperBlacks()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperBlack?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperBlack").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.ivrCampaignHopperBlacks=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.campaign.getHopperBlacks(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperBlackDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/hopperBlacks/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperBlack:t,hopperBlacks:h.ivrCampaignHopperBlacks.rows}})}function p(e){r.hopperBlack.delete({id:e.id}).$promise.then(function(){_.remove(h.ivrCampaignHopperBlacks.rows,{id:e.id}),h.ivrCampaignHopperBlacks.count-=1,h.ivrCampaignHopperBlacks.rows.length||h.getIvrCampaignHopperBlacks(),s.success({title:"HopperBlack deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperBlacks?").htmlContent("<b>"+h.selectedIvrCampaignHopperBlacks.length+" selected</b> will be deleted.").ariaLabel("delete hopperBlacks").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIvrCampaignHopperBlacks.forEach(function(e){p(e)}),h.selectedIvrCampaignHopperBlacks=[]})}var h=this;h.ivrCampaign={},h.ivrCampaignHopperBlacks={count:0,rows:[]},h.selectedIvrCampaignHopperBlacks=[],h.query={fields:"createdAt,updatedAt,ContactId,phone",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIvrCampaignHopperBlacks=m,h.createOrEditIvrCampaignHopperBlack=u,h.deleteIvrCampaignHopperBlack=p,h.deleteSelectedIvrCampaignHopperBlacks=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIvrCampaignHopperBlacks())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("IvrCampaignHopperBlacksController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.ivrCampaign=e,h.query.id=h.ivrCampaign.id,h.query.CampaignId=h.ivrCampaign.id,h.getIvrCampaignHopperFinals()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperFinal?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperFinal").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.ivrCampaignHopperFinals=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.campaign.getHopperFinals(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperFinalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/hopperFinals/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperFinal:t,hopperFinals:h.ivrCampaignHopperFinals.rows}})}function p(e){r.hopperFinal.delete({id:e.id}).$promise.then(function(){_.remove(h.ivrCampaignHopperFinals.rows,{id:e.id}),h.ivrCampaignHopperFinals.count-=1,h.ivrCampaignHopperFinals.rows.length||h.getIvrCampaignHopperFinals(),s.success({title:"HopperFinal deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperFinals?").htmlContent("<b>"+h.selectedIvrCampaignHopperFinals.length+" selected</b> will be deleted.").ariaLabel("delete hopperFinals").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIvrCampaignHopperFinals.forEach(function(e){p(e)}),h.selectedIvrCampaignHopperFinals=[]})}var h=this;h.ivrCampaign={},h.ivrCampaignHopperFinals={count:0,rows:[]},h.selectedIvrCampaignHopperFinals=[],h.query={fields:"createdAt,updatedAt,uniqueid,calleridnum,calleridname,statedesc,countcongestionretry,countbusyretry,countnoanswerretry,countglobal,scheduledat,starttime,responsetime,endtime,disposition",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIvrCampaignHopperFinals=m,h.createOrEditIvrCampaignHopperFinal=u,h.deleteIvrCampaignHopperFinal=p,h.deleteSelectedIvrCampaignHopperFinals=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIvrCampaignHopperFinals())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("IvrCampaignHopperFinalsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.ivrCampaign=e,h.query.id=h.ivrCampaign.id,h.query.CampaignId=h.ivrCampaign.id,h.getIvrCampaignHopperHistories()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperHistory?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperHistory").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.ivrCampaignHopperHistories=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.campaign.getHopperHistories(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperHistoryDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/hopperHistories/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperHistory:t,hopperHistories:h.ivrCampaignHopperHistories.rows}})}function p(e){r.hopperHistory.delete({id:e.id}).$promise.then(function(){_.remove(h.ivrCampaignHopperHistories.rows,{id:e.id}),h.ivrCampaignHopperHistories.count-=1,h.ivrCampaignHopperHistories.rows.length||h.getIvrCampaignHopperHistories(),s.success({title:"HopperHistory deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperHistories?").htmlContent("<b>"+h.selectedIvrCampaignHopperHistories.length+" selected</b> will be deleted.").ariaLabel("delete hopperHistories").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIvrCampaignHopperHistories.forEach(function(e){p(e)}),h.selectedIvrCampaignHopperHistories=[]})}var h=this;h.ivrCampaign={},h.ivrCampaignHopperHistories={count:0,rows:[]},h.selectedIvrCampaignHopperHistories=[],h.query={fields:"createdAt,updatedAt,uniqueid,ContactId,calleridnum,calleridname,statedesc,scheduledat,starttime,responsetime,endtime",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIvrCampaignHopperHistories=m,h.createOrEditIvrCampaignHopperHistory=u,h.deleteIvrCampaignHopperHistory=p,h.deleteSelectedIvrCampaignHopperHistories=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIvrCampaignHopperHistories())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("IvrCampaignHopperHistoriesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.ivrCampaign=e,h.query.id=h.ivrCampaign.id,h.query.CampaignId=h.ivrCampaign.id,h.getIvrCampaignHoppers()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopper?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopper").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.ivrCampaignHoppers=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.campaign.getHoppers(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/hoppers/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopper:t,hoppers:h.ivrCampaignHoppers.rows}})}function p(e){r.cmHopper.delete({id:e.id}).$promise.then(function(){_.remove(h.ivrCampaignHoppers.rows,{id:e.id}),h.ivrCampaignHoppers.count-=1,h.ivrCampaignHoppers.rows.length||h.getIvrCampaignHoppers(),s.success({title:"Hopper deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hoppers?").htmlContent("<b>"+h.selectedIvrCampaignHoppers.length+" selected</b> will be deleted.").ariaLabel("delete hoppers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIvrCampaignHoppers.forEach(function(e){p(e)}),h.selectedIvrCampaignHoppers=[]})}var h=this;h.ivrCampaign={},h.ivrCampaignHoppers={count:0,rows:[]},h.selectedIvrCampaignHoppers=[],h.query={fields:"createdAt,updatedAt,id,ContactId,phone,countcongestionretry,countbusyretry,countnoanswerretry,scheduledat",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIvrCampaignHoppers=m,h.createOrEditIvrCampaignHopper=u,h.deleteIvrCampaignHopper=p,h.deleteSelectedIvrCampaignHoppers=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIvrCampaignHoppers())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("IvrCampaignHoppersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmHopper.save(p.hopper).$promise.then(function(e){p.hoppers.unshift(e),i.success({title:"Hopper properly created",msg:p.hopper.name?p.hopper.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmHopper.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmHopper.update({id:p.hopper.id},p.hopper).$promise.then(function(e){var t=_.find(p.hoppers,{id:e.id});t&&_.merge(t,e),i.success({title:"Hopper properly saved!",msg:p.hopper.name?p.hopper.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmHopper.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The hopper will be deleted.").ariaLabel("Delete Hopper").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmHopper.delete({id:p.hopper.id}).$promise.then(function(){_.remove(p.hoppers,{id:p.hopper.id}),i.success({title:"Hopper properly deleted!",msg:(p.hopper.name||"hopper")+" has been deleted!"}),u(p.hopper)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MOTIONDIALER.EDIT_HOPPER",p.hopper=angular.copy(s),p.hoppers=o,p.newHopper=!1,p.hopper||(p.hopper={},p.title="MOTIONDIALER.NEW_HOPPER",p.newHopper=!0),t.params.id&&(p.hopper.CampaignId=t.params.id),p.addNewHopper=l,p.saveHopper=d,p.deleteHopper=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","hoppers","hopper","api"],angular.module("app.motiondialer").controller("CreateOrEditHopperDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.ivrCampaign=a,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_LISTS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_LISTS"),transferCallback:function(e,a){n.campaign[a?"removeLists":"addLists"]({id:s.ivrCampaign.id,ids:_.map(e,"id")}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ivrCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.campaign.getLists({id:s.ivrCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.cmList.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","ivrCampaign","$translate"],angular.module("app.motiondialer").controller("IvrCampaignlistaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"IvrCampaignlistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/listadd/listadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{ivrCampaign:e,ivrCampaigns:c.ivrCampaigns?c.ivrCampaigns.rows:[]}})}function r(e,a){t.show({controller:"IvrCampaignblacklistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/blacklistadd/blacklistadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{ivrCampaign:e,ivrCampaigns:c.ivrCampaigns?c.ivrCampaigns.rows:[]}})}function l(){e.go("app.motiondialer.ivrCampaigns")}function d(){i.campaign.update({id:c.ivrCampaign.id},c.ivrCampaign).$promise.then(function(){a.success({title:"IvrCampaign updated!",msg:c.ivrCampaign.name?c.ivrCampaign.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.ivrCampaign=e.params.ivrCampaign||o||{},c.selectedTab=e.params.tab||0,c.listadddialog=s,c.blacklistadddialog=r,c.gotoIvrCampaigns=l,c.saveIvrCampaign=d,i.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){c.trunks=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.squareProject.get({fields:"id,name",sort:"name"}).$promise.then(function(e){c.projects=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){c.interval=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","ivrCampaign"],angular.module("app.motiondialer").controller("IvrCampaignController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.motiondialer.ivrCampaigns.edit",{id:e.id,ivrCampaign:e})}function u(e,t){i.show({controller:"IvrCampaignlistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/listadd/listadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{ivrCampaign:e,ivrCampaigns:x.ivrCampaigns?x.ivrCampaigns.rows:[]}})}function p(e,t){i.show({controller:"IvrCampaignblacklistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/blacklistadd/blacklistadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{ivrCampaign:e,ivrCampaigns:x.ivrCampaigns?x.ivrCampaigns.rows:[]}})}function g(e,t){var n=i.confirm().title("Are you sure want to delete the ivrCampaign?").htmlContent("<b>"+(e.name||"ivrCampaign")+"</b> will be deleted.").ariaLabel("delete ivrCampaign").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){f(e)},function(){console.log("CANCEL")})}function h(e){x.ivrCampaigns=e||{count:0,rows:[]}}function v(){x.query.offset=(x.query.page-1)*x.query.limit,x.promise=l.campaign.get(x.query,h).$promise}function b(e,t){i.show({controller:"CreateOrEditIvrCampaignDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{ivrCampaign:t,ivrCampaigns:x.ivrCampaigns.rows}})}function f(e){l.campaign.delete({id:e.id}).$promise.then(function(){_.remove(x.ivrCampaigns.rows,{id:e.id}),x.ivrCampaigns.count-=1,x.ivrCampaigns.rows.length||x.getIvrCampaigns(),c.success({title:"IvrCampaign deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(){var e=_.clone(x.selectedIvrCampaigns);return x.selectedIvrCampaigns=[],e}function y(e){var t=i.confirm().title("Are you sure want to delete the selected ivrCampaigns?").htmlContent("<b>"+x.selectedIvrCampaigns.length+" selected</b> will be deleted.").ariaLabel("delete IvrCampaigns").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){x.selectedIvrCampaigns.forEach(function(e){f(e)}),x.selectedIvrCampaigns=[]})}function A(){x.selectedIvrCampaigns=[]}function C(){x.selectedIvrCampaigns=x.ivrCampaigns.rows}var x=this;x.ivrCampaigns=r||{count:0,rows:[]},x.table="ivrCampaigns",x.listOrder="",x.listOrderAsc=null,x.selectedIvrCampaigns=[],x.query={fields:"createdAt,updatedAt,id,name,active,TrunkId,TrunkBackupId,type,IntervalId,SquareProjectId,limitCalls,description,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,dialGlobalInterval,dialTimezone",type:"ivr",sort:"-updatedAt",limit:10,page:1},x.editstate=m,x.listadddialog=u,x.blacklistadddialog=p,x.deleteconfirm=g,x.success=h,x.getIvrCampaigns=v,x.createOrEditIvrCampaign=b,x.deleteIvrCampaign=f,x.exportSelectedIvrCampaigns=E,x.deleteSelectedIvrCampaigns=y,x.deselectIvrCampaigns=A,x.selectAllIvrCampaigns=C,l.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){x.trunks=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.squareProject.get({fields:"id,name",sort:"name"}).$promise.then(function(e){x.projects=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){x.interval=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})});var T=!0,S=1;e.$watch("vm.query.filter",function(e,t){T?s(function(){T=!1}):(t||(S=x.query.page),e!==t&&(x.query.page=1),e||(x.query.page=S),x.getIvrCampaigns())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","ivrCampaigns","api","msUtils","toasty"],angular.module("app.motiondialer").controller("IvrCampaignsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceQueue.save(p.queueCampaign).$promise.then(function(e){p.queueCampaigns.unshift(e),i.success({title:"QueueCampaign properly created",msg:p.queueCampaign.name?p.queueCampaign.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceQueue.update({id:p.queueCampaign.id},p.queueCampaign).$promise.then(function(e){var t=_.find(p.queueCampaigns,{id:e.id});t&&_.merge(t,e),i.success({title:"QueueCampaign properly saved!",msg:p.queueCampaign.name?p.queueCampaign.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The queueCampaign will be deleted.").ariaLabel("Delete QueueCampaign").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceQueue.delete({id:p.queueCampaign.id}).$promise.then(function(){_.remove(p.queueCampaigns,{id:p.queueCampaign.id}),i.success({title:"QueueCampaign properly deleted!",msg:(p.queueCampaign.name||"queueCampaign")+" has been deleted!"}),u(p.queueCampaign)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MOTIONDIALER.EDIT_QUEUECAMPAIGN",p.queueCampaign=angular.copy(s),p.queueCampaigns=o,p.newQueueCampaign=!1,p.queueCampaign||(p.queueCampaign={dialActive:!0,type:"outbound",autopause:"no",ringinuse:"no",timeoutrestart:"no",setinterfacevar:"no",setqueuevar:"no",setqueueentryvar:"no",dialGlobalInterval:"07:00-22:00,*,*,*",dialMethod:"progressive",dialPowerLevel:1,dialPredictiveOptimization:"dropRate",dialPredictiveOptimizationPercentage:3,dialPredictiveInterval:10,dialLimitQueue:0,dialOriginateTimeout:30,dialQueueOptions:"tTxX",dialQueueTimeout:3,strategy:"rrmemory",timeout:3,retry:2,weight:1,dialGlobalMaxRetry:4,dialCongestionMaxRetry:3,dialCongestionRetryFrequency:150,dialBusyMaxRetry:3,dialBusyRetryFrequency:150,dialNoAnswerMaxRetry:3,dialNoAnswerRetryFrequency:150},p.title="MOTIONDIALER.NEW_QUEUECAMPAIGN",p.newQueueCampaign=!0),p.addNewQueueCampaign=l,p.saveQueueCampaign=d,p.deleteQueueCampaign=c,p.getDateFromString=m,p.closeDialog=u,r.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.trunks=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){p.interval=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","queueCampaigns","queueCampaign","api"],angular.module("app.motiondialer").controller("CreateOrEditQueueCampaignDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){return n.voiceQueue[c.isVoiceRealtime()?"getMembers":"getAgents"]({id:c.queueCampaign.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){return c.isVoiceRealtime()?c.selectedItems=e.rows?_.map(e.rows,function(e){return e.id=e.UserId,e.fullname=e.membername,e.penalty=e.hasOwnProperty("penalty")?"penalty "+e.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[]:c.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserQueueCampaign?"penalty "+e.UserQueueCampaign.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.selectedItems=c.selectedItems,n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){c.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserQueueCampaign?"penalty "+e.UserQueueCampaign.penalty:"",e.internal=e.internal?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.items=_.differenceBy(c.items,c.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function l(){return o}function d(){e.hide()}var c=this;c.queueCampaign=a,c.penalty=0,c.items=[],c.selectedItems=[],c.closeDialog=d,c.isVoiceRealtime=l,c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:"internal",line3:"penalty",labelAll:s.instant("MOTIONDIALER.ALL_AGENTS"),labelSelected:s.instant("MOTIONDIALER.SELECTED_AGENTS"),transferCallback:function(e,a){n.voiceQueue[a?"removeAgents":"addAgents"]({id:c.queueCampaign.id,ids:_.map(e,c.isVoiceRealtime()&&a?"UserId":"id"),penalty:c.penalty||0,realtime:o||!1}).$promise.then(function(){t.success({title:"QueueCampaign properly "+(a?"removed":"added"),msg:"QueueCampaign has been "+(a?"removed":"added")+"!"}),a||r()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:voiceQueue.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},r()}e.$inject=["$mdDialog","toasty","api","queueCampaign","queueCampaigns","realtime","$translate"],angular.module("app.motiondialer").controller("QueueCampaignagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.queueCampaign=a,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_LISTS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_LISTS"),transferCallback:function(e,a){n.voiceQueue[a?"removeBlackLists":"addBlackLists"]({id:s.queueCampaign.id,ids:_.map(e,"id")}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:queueCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.voiceQueue.getBlackLists({id:s.queueCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.cmList.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","queueCampaign","$translate"],angular.module("app.motiondialer").controller("QueueCampaignblacklistaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.queueCampaign=e,h.query.id=h.queueCampaign.id,h.query.VoiceQueueId=h.queueCampaign.id,h.getQueueCampaignHopperBlacks()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperBlack?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperBlack").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.queueCampaignHopperBlacks=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceQueue.getHopperBlacks(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperBlackDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/hopperBlacks/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperBlack:t,hopperBlacks:h.queueCampaignHopperBlacks.rows}})}function p(e){r.hopperBlack.delete({id:e.id}).$promise.then(function(){_.remove(h.queueCampaignHopperBlacks.rows,{id:e.id}),h.queueCampaignHopperBlacks.count-=1,h.queueCampaignHopperBlacks.rows.length||h.getQueueCampaignHopperBlacks(),s.success({title:"HopperBlack deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperBlacks?").htmlContent("<b>"+h.selectedQueueCampaignHopperBlacks.length+" selected</b> will be deleted.").ariaLabel("delete hopperBlacks").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedQueueCampaignHopperBlacks.forEach(function(e){p(e)}),h.selectedQueueCampaignHopperBlacks=[]})}var h=this;h.queueCampaign={},h.queueCampaignHopperBlacks={count:0,rows:[]},h.selectedQueueCampaignHopperBlacks=[],h.query={fields:"createdAt,updatedAt,ContactId,phone",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getQueueCampaignHopperBlacks=m,h.createOrEditQueueCampaignHopperBlack=u,h.deleteQueueCampaignHopperBlack=p,h.deleteSelectedQueueCampaignHopperBlacks=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getQueueCampaignHopperBlacks())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("QueueCampaignHopperBlacksController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.queueCampaign=e,h.query.id=h.queueCampaign.id,h.query.VoiceQueueId=h.queueCampaign.id,h.getQueueCampaignHopperFinals()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperFinal?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperFinal").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.queueCampaignHopperFinals=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceQueue.getHopperFinals(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperFinalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/hopperFinals/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperFinal:t,hopperFinals:h.queueCampaignHopperFinals.rows}})}function p(e){r.hopperFinal.delete({id:e.id}).$promise.then(function(){_.remove(h.queueCampaignHopperFinals.rows,{id:e.id}),h.queueCampaignHopperFinals.count-=1,h.queueCampaignHopperFinals.rows.length||h.getQueueCampaignHopperFinals(),s.success({title:"HopperFinal deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperFinals?").htmlContent("<b>"+h.selectedQueueCampaignHopperFinals.length+" selected</b> will be deleted.").ariaLabel("delete hopperFinals").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedQueueCampaignHopperFinals.forEach(function(e){p(e)}),h.selectedQueueCampaignHopperFinals=[]})}var h=this;h.queueCampaign={},h.queueCampaignHopperFinals={count:0,rows:[]},h.selectedQueueCampaignHopperFinals=[],h.query={fields:"createdAt,updatedAt,uniqueid,calleridnum,calleridname,statedesc,countcongestionretry,countbusyretry,countnoanswerretry,countglobal,scheduledat,starttime,responsetime,endtime,disposition",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getQueueCampaignHopperFinals=m,h.createOrEditQueueCampaignHopperFinal=u,h.deleteQueueCampaignHopperFinal=p,h.deleteSelectedQueueCampaignHopperFinals=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getQueueCampaignHopperFinals())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("QueueCampaignHopperFinalsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.queueCampaign=e,h.query.id=h.queueCampaign.id,h.query.VoiceQueueId=h.queueCampaign.id,h.getQueueCampaignHopperHistories()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperHistory?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperHistory").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.queueCampaignHopperHistories=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceQueue.getHopperHistories(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperHistoryDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/hopperHistories/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperHistory:t,hopperHistories:h.queueCampaignHopperHistories.rows}})}function p(e){r.hopperHistory.delete({id:e.id}).$promise.then(function(){_.remove(h.queueCampaignHopperHistories.rows,{id:e.id}),h.queueCampaignHopperHistories.count-=1,h.queueCampaignHopperHistories.rows.length||h.getQueueCampaignHopperHistories(),s.success({title:"HopperHistory deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperHistories?").htmlContent("<b>"+h.selectedQueueCampaignHopperHistories.length+" selected</b> will be deleted.").ariaLabel("delete hopperHistories").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedQueueCampaignHopperHistories.forEach(function(e){p(e)}),h.selectedQueueCampaignHopperHistories=[]})}var h=this;h.queueCampaign={},h.queueCampaignHopperHistories={count:0,rows:[]},h.selectedQueueCampaignHopperHistories=[],h.query={fields:"createdAt,updatedAt,uniqueid,ContactId,calleridnum,calleridname,statedesc,scheduledat,starttime,responsetime,endtime",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getQueueCampaignHopperHistories=m,h.createOrEditQueueCampaignHopperHistory=u,h.deleteQueueCampaignHopperHistory=p,h.deleteSelectedQueueCampaignHopperHistories=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getQueueCampaignHopperHistories())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("QueueCampaignHopperHistoriesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.queueCampaign=e,h.query.id=h.queueCampaign.id,h.query.VoiceQueueId=h.queueCampaign.id,h.getQueueCampaignHoppers()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopper?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopper").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.queueCampaignHoppers=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceQueue.getHoppers(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/hoppers/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopper:t,hoppers:h.queueCampaignHoppers.rows}})}function p(e){r.cmHopper.delete({id:e.id}).$promise.then(function(){_.remove(h.queueCampaignHoppers.rows,{id:e.id}),h.queueCampaignHoppers.count-=1,h.queueCampaignHoppers.rows.length||h.getQueueCampaignHoppers(),s.success({title:"Hopper deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hoppers?").htmlContent("<b>"+h.selectedQueueCampaignHoppers.length+" selected</b> will be deleted.").ariaLabel("delete hoppers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedQueueCampaignHoppers.forEach(function(e){p(e)}),h.selectedQueueCampaignHoppers=[]})}var h=this;h.queueCampaign={},h.queueCampaignHoppers={count:0,rows:[]},h.selectedQueueCampaignHoppers=[],h.query={fields:"createdAt,updatedAt,id,ContactId,phone,countcongestionretry,countbusyretry,countnoanswerretry,scheduledat",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getQueueCampaignHoppers=m,h.createOrEditQueueCampaignHopper=u,h.deleteQueueCampaignHopper=p,h.deleteSelectedQueueCampaignHoppers=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getQueueCampaignHoppers())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("QueueCampaignHoppersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmHopper.save(p.hopper).$promise.then(function(e){p.hoppers.unshift(e),i.success({title:"Hopper properly created",msg:p.hopper.name?p.hopper.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmHopper.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmHopper.update({id:p.hopper.id},p.hopper).$promise.then(function(e){var t=_.find(p.hoppers,{id:e.id});t&&_.merge(t,e),i.success({title:"Hopper properly saved!",msg:p.hopper.name?p.hopper.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmHopper.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The hopper will be deleted.").ariaLabel("Delete Hopper").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmHopper.delete({id:p.hopper.id}).$promise.then(function(){_.remove(p.hoppers,{id:p.hopper.id}),i.success({title:"Hopper properly deleted!",msg:(p.hopper.name||"hopper")+" has been deleted!"}),u(p.hopper)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MOTIONDIALER.EDIT_HOPPER",p.hopper=angular.copy(s),p.hoppers=o,p.newHopper=!1,p.hopper||(p.hopper={},p.title="MOTIONDIALER.NEW_HOPPER",p.newHopper=!0),t.params.id&&(p.hopper.VoiceQueueId=t.params.id),p.addNewHopper=l,p.saveHopper=d,p.deleteHopper=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","hoppers","hopper","api"],angular.module("app.motiondialer").controller("CreateOrEditHopperDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.queueCampaign=a,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_LISTS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_LISTS"),transferCallback:function(e,a){n.voiceQueue[a?"removeLists":"addLists"]({id:s.queueCampaign.id,ids:_.map(e,"id")}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:queueCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.voiceQueue.getLists({id:s.queueCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.cmList.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","queueCampaign","$translate"],angular.module("app.motiondialer").controller("QueueCampaignlistaddController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.queueCampaign=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_TEAMS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_TEAMS"),transferCallback:function(e,a){n.voiceQueue[a?"removeTeams":"addTeams"]({id:s.queueCampaign.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:queueCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.voiceQueue.getTeams({id:s.queueCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","queueCampaign","$translate"],angular.module("app.motiondialer").controller("QueueCampaignteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"QueueCampaignlistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/listadd/listadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:u.queueCampaigns?u.queueCampaigns.rows:[]}})}function r(e,a){t.show({controller:"QueueCampaignblacklistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/blacklistadd/blacklistadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:u.queueCampaigns?u.queueCampaigns.rows:[]}})}function l(e,a){t.show({controller:"QueueCampaignteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:u.queueCampaigns?u.queueCampaigns.rows:[]}})}function d(e,a){t.show({controller:"QueueCampaignagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/agentadd/agentadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:u.queueCampaigns?u.queueCampaigns.rows:[],realtime:!1}})}function c(){e.go("app.motiondialer.queueCampaigns")}function m(){i.voiceQueue.update({id:u.queueCampaign.id},u.queueCampaign).$promise.then(function(){a.success({title:"QueueCampaign updated!",msg:u.queueCampaign.name?u.queueCampaign.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var u=this;u.queueCampaign=e.params.queueCampaign||o||{},u.selectedTab=e.params.tab||0,u.listadddialog=s,u.blacklistadddialog=r,u.teamadddialog=l,u.agentadddialog=d,u.gotoQueueCampaigns=c,u.saveQueueCampaign=m,i.voiceMusicOnHold.get({fields:"name",nolimit:"true"}).$promise.then(function(e){u.musiconholds=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmusiconholds",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){u.trunks=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.squareProject.get({fields:"name",sort:"name"}).$promise.then(function(e){u.projects=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){u.interval=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","queueCampaign"],angular.module("app.motiondialer").controller("QueueCampaignController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.motiondialer.queueCampaigns.edit",{id:e.id,queueCampaign:e})}function u(e,t){i.show({controller:"QueueCampaignlistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/listadd/listadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:S.queueCampaigns?S.queueCampaigns.rows:[]}})}function p(e,t){i.show({controller:"QueueCampaignblacklistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/blacklistadd/blacklistadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:S.queueCampaigns?S.queueCampaigns.rows:[]}})}function g(e,t){i.show({controller:"QueueCampaignteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/teamadd/teamadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:S.queueCampaigns?S.queueCampaigns.rows:[]}})}function h(e,t){i.show({controller:"QueueCampaignagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/agentadd/agentadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:S.queueCampaigns?S.queueCampaigns.rows:[],realtime:!1}})}function v(e,t){var n=i.confirm().title("Are you sure want to delete the queueCampaign?").htmlContent("<b>"+(e.name||"queueCampaign")+"</b> will be deleted.").ariaLabel("delete queueCampaign").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){y(e)},function(){console.log("CANCEL")})}function b(e){S.queueCampaigns=e||{count:0,rows:[]}}function f(){S.query.offset=(S.query.page-1)*S.query.limit,S.promise=l.voiceQueue.get(S.query,b).$promise}function E(e,t){i.show({controller:"CreateOrEditQueueCampaignDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{queueCampaign:t,queueCampaigns:S.queueCampaigns.rows}})}function y(e){l.voiceQueue.delete({id:e.id}).$promise.then(function(){_.remove(S.queueCampaigns.rows,{id:e.id}),S.queueCampaigns.count-=1,S.queueCampaigns.rows.length||S.getQueueCampaigns(),c.success({title:"QueueCampaign deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function A(){var e=_.clone(S.selectedQueueCampaigns);return S.selectedQueueCampaigns=[],e}function C(e){var t=i.confirm().title("Are you sure want to delete the selected queueCampaigns?").htmlContent("<b>"+S.selectedQueueCampaigns.length+" selected</b> will be deleted.").ariaLabel("delete QueueCampaigns").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){S.selectedQueueCampaigns.forEach(function(e){y(e)}),S.selectedQueueCampaigns=[]})}function x(){S.selectedQueueCampaigns=[]}function T(){S.selectedQueueCampaigns=S.queueCampaigns.rows}var S=this;S.queueCampaigns=r||{count:0,rows:[]},S.table="queueCampaigns",S.listOrder="",S.listOrderAsc=null,S.selectedQueueCampaigns=[],S.query={fields:"createdAt,updatedAt,id,name,dialActive,TrunkId,TrunkBackupId,type,IntervalId,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar,dialGlobalInterval,dialTimezone,dialMethod,dialPowerLevel,dialPredictiveOptimization,dialPredictiveOptimizationPercentage,dialPredictiveInterval,dialLimitQueue,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialQueueOptions,dialQueueTimeout,strategy,timeout,retry,wrapuptime,weight,musiconhold,dialQueueProject,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,description",type:"outbound",sort:"-updatedAt",limit:10,page:1},S.arrayautopause=_.keyBy([{option:"Yes",value:"'all'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arrayringinuse=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraytimeoutrestart=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraymonitor_format=_.keyBy([{option:"Inactive",value:"''"},{option:"wav",value:"'wav'"},{option:"wav49",value:"'wav49'"},{option:"gsm",value:"'gsm'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraysetinterfacevar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraysetqueuevar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraysetqueueentryvar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraydialMethod=_.keyBy([{option:"Progressive",value:"'progressive'"},{option:"PowerDialing",value:"'power'"},{option:"Predictive",value:"'predictive'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraydialPredictiveOptimization=_.keyBy([{option:"AgentBusyFactor",value:"'agentBusyFactor'"},{option:"DropRate",value:"'dropRate'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraystrategy=_.keyBy([{option:"Round Robin Memory",value:"'rrmemory'"},{option:"Least Recent",value:"'leastrecent'"},{option:"Fewest Calls",value:"'fewestcalls'"},{option:"Random",value:"'random'"},{option:"Linear",value:"'linear'"},{option:"Weight Random",value:"'wrandom'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.editstate=m,S.listadddialog=u,S.blacklistadddialog=p,S.teamadddialog=g,S.agentadddialog=h,S.deleteconfirm=v,S.success=b,S.getQueueCampaigns=f,S.createOrEditQueueCampaign=E,S.deleteQueueCampaign=y,S.exportSelectedQueueCampaigns=A,S.deleteSelectedQueueCampaigns=C,S.deselectQueueCampaigns=x,S.selectAllQueueCampaigns=T,l.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){S.trunks=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){S.interval=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})});var O=!0,w=1;e.$watch("vm.query.filter",function(e,t){O?s(function(){O=!1}):(t||(w=S.query.page),e!==t&&(S.query.page=1),e||(S.query.page=w),S.getQueueCampaigns())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","queueCampaigns","api","msUtils","toasty"],angular.module("app.motiondialer").controller("QueueCampaignsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){_.forIn(A.agents,function(e,t){A.rpcAgents[t]&&_.merge(e,_.pick(A.rpcAgents[t],C))})}function u(e,t){return r.user.logout({id:e.id}).$promise.then(function(){d.success({title:"Agent logout",msg:e.fullname+"  properly logout"})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.staff.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function p(e,t){n.show({controller:"AgentqueueaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/edit/queueadd/queueadd.html",parent:angular.element(a.body),targetEvent:t,clickOutsideToClose:!0,locals:{agent:e,agents:[],channel:"voice",realtime:!0,direction:"outbound"}})}function g(e,t){return r.user.pause({id:e.id,type:t})}function h(e){return r.user.unpause({id:e.id})}function v(e){return _.includes(A.availableStates,e)}function b(e){A.agents[e.id]&&_.merge(A.agents[e.id],_.pick(e,C))}function f(e){n.show(n.alert().clickOutsideToClose(!0).title("Legend").htmlContent("<div>TODO legend status + state</div>").ok("Ok").targetEvent(e))}function E(e){A.count=e.count,A.agents=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function y(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=r.user.get(A.query,E).$promise}var A=this,C=["userpic","online","voicePause","lastLoginAt","lastPauseAt","pauseType","internal","state","stateTime","status","address"];A.availableStates=["ringing","inuse","busy","onhold","not_inuse"],A.pauses=i||{count:0,rows:[]},A.count=o.count,A.agents=o?_.keyBy(o.rows?o.rows:[],"id"):{},A.rpcAgents=s?_.keyBy(s.rows?s.rows:[],"id"):{},A.query={fields:"id,fullname,userpic,role,internal,online,voicePause,pauseType,lastLoginAt",role:"agent",sort:"-updatedAt",limit:10,page:1},A.statusClass=c.status,A.stateClass=c.state,A.pause=g,A.unPause=h,A.onSave=b,A.$onInit=m,A.success=E,A.showInfo=f,A.queueAdd=p,A.getAgents=y,A.isAvailableState=v,A.logout=u,l.on("user:save",A.onSave),l.on("user:update",A.onSave);var x=!0,T=1;e.$watch("vm.query.filter",function(e,n){x?t(function(){x=!1}):(n||(T=A.query.page),e!==n&&(A.query.page=1),e||(A.query.page=T),A.getAgents())}),e.$on("$destroy",function(){l.removeAllListeners("user:save"),l.removeAllListeners("user:update")})}e.$inject=["$scope","$timeout","$mdDialog","$document","pauses","agents","rpcAgents","api","socket","toasty","helperClasses"],angular.module("app.motiondialer").controller("AgentsMotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l){function d(){_.forIn(g.campaigns,function(e,t){g.rpcCampaigns[t]&&_.merge(e,_.pick(g.rpcCampaigns[t],h))})}function c(e){g.campaigns[e.id]&&(_.merge(g.campaigns[e.id],_.pick(e,h)),_.merge(g.rpcCampaigns[e.id],_.pick(e,h)))}function m(e){g.count=e.count,g.campaigns=e?_.keyBy(e.rows?e.rows:[],"id"):{},d()}function u(){g.query.offset=(g.query.page-1)*g.query.limit,g.promise=s.campaign.get(g.query,m).$promise}function p(e,t){n.show({controller:"CreateOrEditIvrCampaignDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/create/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{ivrCampaign:t,ivrCampaigns:_.values(g.campaigns)}})}var g=this,h=["name","active","limitCalls","message","originated","IntervalId","SquareProjectId","Trunk","TrunkId","ivrAnswerCallsDay","dialQueueProject","ivrTotalCallsDays","description"];g.count=o.count,g.campaigns=o?_.keyBy(o.rows?o.rows:[],"id"):{},g.rpcCampaigns=i?_.keyBy(i.rows?i.rows:[],"id"):{},g.query={sort:"-updatedAt",limit:10,page:1},g.success=m,g.getCampaigns=u,g.onSave=c,g.$onInit=d,g.createOrEditIvrCampaign=p,r.on("campaign:save",g.onSave);var v=!0,b=1;e.$watch("vm.query.filter",function(e,n){v?t(function(){v=!1}):(n||(b=g.query.page),e!==n&&(g.query.page=1),e||(g.query.page=b),g.getCampaigns())}),e.$on("$destroy",function(){r.removeAllListeners("campaign:save")})}e.$inject=["$scope","$timeout","$mdDialog","$document","rpcCampaigns","campaigns","api","socket","Auth"],angular.module("app.motiondialer").controller("IvrCampaignsMotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l){function d(e){return o.rpc.getVoiceQueuesChannelHangup({uniqueid:e}).$promise.then(function(t){l.success({title:"Channel "+e+" properly hangup!",msg:t.message||""})}).catch(function(e){console.error(e)})}function c(e,t){return o.rpc.getVoiceQueuesChannelRedirect({uniqueid:e,exten:t}).$promise.then(function(t){l.success({title:"Channel "+e+" properly redirect!",msg:t.message||""})}).catch(function(e){console.error(e)})}function m(e,t){var a=n.prompt().title("Which number do you want transfer the call to?").placeholder("Number").targetEvent(e).ok("Ok").cancel("Cancel");return n.show(a).then(function(e){return o.rpc.getVoiceQueuesChannelRedirect({uniqueid:t,exten:e}).$promise.then(function(e){l.success({title:"Channel "+t+" properly redirect!",msg:e.message||""})}).catch(function(e){console.error(e)})}).catch(function(e){console.error(e)})}function u(e){var t=_.find(g.calls.rows,{channel:e.channel});e.status=e.queuecallerleaveAt?"up":"ring",t?_.merge(t,e):g.calls.rows.push(e)}function p(e){var n=_.findIndex(g.calls.rows,{channel:e.channel});n>=0&&(g.calls.rows[n].status="hangup"),t(function(){g.calls.rows.splice(n,1)},5e3)}var g=this;g.calls=i||{rows:[],count:0},g.agents=a||{count:0,rows:[]},g.query={limit:10,page:1,limitOptions:[10,15,20]},g.channelStatusClass=r.channelStatus,g.onSave=u,g.onRemove=p,g.hangup=d,g.redirectToAgent=c,g.redirectToNumber=m,s.on("voice_queue_channel:save",g.onSave),s.on("voice_queue_channel:remove",g.onRemove),e.$on("$destroy",function(){s.removeAllListeners("voice_queue_channel:save"),s.removeAllListeners("voice_queue_channel:remove")})}e.$inject=["$scope","$timeout","$mdDialog","agents","rpcCalls","api","socket","helperClasses","toasty"],angular.module("app.motiondialer").controller("QueueCallsMotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){_.forIn(m.queues,function(e,t){m.rpcQueues[t]&&_.merge(e,_.pick(m.rpcQueues[t],u))})}function l(e){m.queues[e.id]&&_.merge(m.queues[e.id],_.pick(e,u))}function d(e){m.count=e.count,m.queues=e?_.keyBy(e.rows?e.rows:[],"id"):{},r()}function c(){m.query.offset=(m.query.page-1)*m.query.limit,s.hasRole("admin")?m.promise=i.voiceQueue.get(m.query,d).$promise:m.promise=i.user.getQueues(m.query,d).$promise}var m=this,u=["total","answered","sumHoldTime","sumDuration","sumBillable","outboundNoAnswerCallsDay","outboundBusyCallsDay","outboundCongestionCallsDay","outboundNoSuchCallsDay","outboundUnknownCallsDay","outboundDropCallsDayTimeout","outboundDropCallsDayCallersExit","outboundBlacklistCallsDay","outboundOriginateFailureCallsDay","outboundAnswerAgiCallsDay"];m.count=n.count,m.queues=n?_.keyBy(n.rows?n.rows:[],"id"):{},m.rpcQueues=a?_.keyBy(a.rows?a.rows:[],"id"):{},s.hasRole("admin")?m.query={type:"outbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1}:m.query={id:s.getCurrentUser().id,channel:"voice",type:"outbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1},m.success=d,m.getQueues=c,m.onSave=l,m.$onInit=r,o.on("voice_queue:save",m.onSave);var p=!0,g=1;e.$watch("vm.query.filter",function(e,n){p?t(function(){p=!1}):(n||(g=m.query.page),e!==n&&(m.query.page=1),e||(m.query.page=g),m.getQueues())}),e.$on("$destroy",function(){o.removeAllListeners("voice_queue:save")})}e.$inject=["$scope","$timeout","queues","rpcQueues","api","socket","Auth"],angular.module("app.motiondialer").controller("QueueParamsMotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){var e=[];return _.forIn(E.queues,function(t,n){t.paused=0,t.loggedInDb=0,e.push(r.voiceQueue.getMembers({id:n}).$promise),E.rpcQueues[n]&&_.merge(t,_.pick(E.rpcQueues[n],y))}),a.all(e).then(function(e){for(var t=0;t<e.length;t+=1)for(var n=0;n<e[t].rows.length;n++)e[t].rows[n].paused&&E.queues[e[t].rows[n].VoiceQueueId].paused++,E.queues[e[t].rows[n].VoiceQueueId].loggedInDb++}).catch(function(e){console.error(e)})}function u(e){E.queues[e.id]&&_.merge(E.queues[e.id],_.pick(e,y))}function p(e){}function g(e){E.count=e.count,E.queues=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function h(){E.query.offset=(E.query.page-1)*E.query.limit,c.hasRole("admin")?E.promise=r.voiceQueue.get(E.query,g).$promise:E.promise=r.user.getQueues(E.query,g).$promise}function v(e,t){n.show({controller:"CreateOrEditQueueCampaignDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{queueCampaign:t,queueCampaigns:_.values(E.queues)}})}function b(e,t){n.show({controller:"VoiceQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceQueue:t,voiceQueues:E.queues?E.queues.rows:[],realtime:!0}})}function f(e){return r.voiceQueue.update(e).$promise.then(function(){d.success({title:"Queue properly updated!",msg:e.name?e.name+" has been updated!":""})}).catch(function(e){d.error({title:"Error creating queue!",msg:e.message})})}var E=this,y=["loggedIn","available","waiting","talking","originated","message","dialActive","dialMethod","Trunk"];E.count=o.count,E.queues=o?_.keyBy(o.rows?o.rows:[],"id"):{},E.rpcQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},c.hasRole("admin")?E.query={type:"outbound",sort:"-updatedAt",limit:10,page:1}:E.query={id:c.getCurrentUser().id,channel:"voice",type:"outbound",sort:"-updatedAt",limit:10,page:1},E.success=g,E.getQueues=h,E.createOrEditVoiceQueue=v,E.agentAdd=b,E.updateQueue=f,E.onSave=u,E.onSaveMember=p,E.$onInit=m,l.on("voice_queue:save",E.onSave),l.on("userVoiceQueueRt:save",E.onSaveMember),l.on("userVoiceQueueRt:update",E.onSaveMember);var A=!0,C=1;e.$watch("vm.query.filter",function(e,n){A?t(function(){A=!1}):(n||(C=E.query.page),e!==n&&(E.query.page=1),e||(E.query.page=C),E.getQueues())}),e.$on("$destroy",function(){l.removeAllListeners("voice_queue:save"),l.removeAllListeners("userVoiceQueueRt:save"),l.removeAllListeners("userVoiceQueueRt:update")})}e.$inject=["$scope","$timeout","$mdDialog","$q","$document","queues","rpcQueues","api","socket","toasty","Auth"],angular.module("app.motiondialer").controller("QueuesMotionDialerRealtimeController",e)}(),function(){"use strict";function e(){return{status:{registered:"green-300-fg icon-checkbox-marked-circle",unregistered:"red-300-fg icon-close-circle",lagged:"red-300-fg icon-close-circle",reachable:"green-300-fg icon-checkbox-marked-circle",unreachable:"red-300-fg icon-close-circle",unknown:"grey-fg icon-minus-circle"},state:{unknown:"grey-fg icon-phone-hangup",not_inuse:"green-300-fg icon-phone-hangup",inuse:"red-300-fg icon-phone-in-talk",busy:"red-300-fg icon-phone-locked",invalid:"grey-fg icon-phone-hangup",unavailable:"grey-fg icon-phone-hangup",ringing:"blue-300-fg icon-phone-incoming",ringinuse:"blue-300-fg icon-phone-incoming",onhold:"blue-300-fg icon-phone-paused"},channelStatus:{ring:"blue-300-fg icon-phone-incoming",up:"green-300-fg icon-phone-in-talk",hangup:"red-300-fg icon-phone-hangup"},channelStatusOut:{ring:"blue-300-fg icon-phone-outgoing",up:"green-300-fg icon-phone-in-talk",hangup:"red-300-fg icon-phone-hangup"}}}angular.module("app.auth").factory("helperClasses",e)}(),function(){"use strict";function e(e,t,n){var a=this;switch(n.disconnect(),n.connect(),a.selectedTab=0,t.current.name){case"app.motiondialer.realtime.agents":a.selectedTab=0;break;case"app.motiondialer.realtime.queues":a.selectedTab=1;break;case"app.motiondialer.realtime.queue_calls":a.selectedTab=2;break;case"app.motiondialer.realtime.queue_params":a.selectedTab=3;break;case"app.motiondialer.realtime.ivr_campaigns":a.selectedTab=4;break;default:a.selectedTab=0,t.go("app.motiondialer.realtime.agents")}e.$watch("vm.selectedTab",function(e,n){if(e!==n)switch(e){case 0:t.go("app.motiondialer.realtime.agents");break;case 1:t.go("app.motiondialer.realtime.queues");break;case 2:t.go("app.motiondialer.realtime.queue_calls");break;case 3:t.go("app.motiondialer.realtime.queue_params");break;case 4:t.go("app.motiondialer.realtime.ivr_campaigns");break;default:t.go("app.motiondialer.realtime.agents")}})}e.$inject=["$scope","$state","socket"],angular.module("app.motiondialer").controller("MotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.openchannelAccount.save(p.openchannelAccount).$promise.then(function(e){p.openchannelAccounts.unshift(e),i.success({title:"OpenchannelAccount properly created",msg:p.openchannelAccount.name?p.openchannelAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.openchannelAccount.update({id:p.openchannelAccount.id},p.openchannelAccount).$promise.then(function(e){var t=_.find(p.openchannelAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"OpenchannelAccount properly saved!",msg:p.openchannelAccount.name?p.openchannelAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The openchannelAccount will be deleted.").ariaLabel("Delete OpenchannelAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.openchannelAccount.delete({id:p.openchannelAccount.id}).$promise.then(function(){_.remove(p.openchannelAccounts,{id:p.openchannelAccount.id}),i.success({title:"OpenchannelAccount properly deleted!",msg:(p.openchannelAccount.name||"openchannelAccount")+" has been deleted!"}),u(p.openchannelAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="OPENCHANNEL.EDIT_OPENCHANNELACCOUNT",p.openchannelAccount=angular.copy(s),p.openchannelAccounts=o,p.newOpenchannelAccount=!1,p.openchannelAccount||(p.openchannelAccount={remote:n.protocol()+"://"+n.host()+":"+n.port()},p.title="OPENCHANNEL.NEW_OPENCHANNELACCOUNT",p.newOpenchannelAccount=!0),p.addNewOpenchannelAccount=l,p.saveOpenchannelAccount=d,p.deleteOpenchannelAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","openchannelAccounts","openchannelAccount","api"],angular.module("app.openchannel").controller("CreateOrEditOpenchannelAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.openchannelAccount=e,h.query.id=h.openchannelAccount.id,h.query.OpenchannelAccountId=h.openchannelAccount.id,h.getOpenchannelAccountOpenchannelDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the openchannelDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete openchannelDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.openchannelAccountOpenchannelDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.openchannelAccount.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditOpenchannelDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/openchannel/views/openchannelAccounts/edit/openchannelDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{openchannelDisposition:t,openchannelDispositions:h.openchannelAccountOpenchannelDispositions.rows}})}function p(e){r.openchannelDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.openchannelAccountOpenchannelDispositions.rows,{id:e.id}),h.openchannelAccountOpenchannelDispositions.count-=1,h.openchannelAccountOpenchannelDispositions.rows.length||h.getOpenchannelAccountOpenchannelDispositions(),s.success({title:"OpenchannelDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected openchannelDispositions?").htmlContent("<b>"+h.selectedOpenchannelAccountOpenchannelDispositions.length+" selected</b> will be deleted.").ariaLabel("delete openchannelDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedOpenchannelAccountOpenchannelDispositions.forEach(function(e){p(e)}),h.selectedOpenchannelAccountOpenchannelDispositions=[]})}var h=this;h.openchannelAccount={},h.openchannelAccountOpenchannelDispositions={count:0,rows:[]},h.selectedOpenchannelAccountOpenchannelDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getOpenchannelAccountOpenchannelDispositions=m,h.createOrEditOpenchannelAccountOpenchannelDisposition=u,h.deleteOpenchannelAccountOpenchannelDisposition=p,h.deleteSelectedOpenchannelAccountOpenchannelDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getOpenchannelAccountOpenchannelDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.openchannel").controller("OpenchannelAccountOpenchannelDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.openchannelDisposition.save(p.openchannelDisposition).$promise.then(function(e){p.openchannelDispositions.unshift(e),i.success({title:"OpenchannelDisposition properly created",msg:p.openchannelDisposition.name?p.openchannelDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.openchannelDisposition.update({id:p.openchannelDisposition.id},p.openchannelDisposition).$promise.then(function(e){var t=_.find(p.openchannelDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"OpenchannelDisposition properly saved!",msg:p.openchannelDisposition.name?p.openchannelDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The openchannelDisposition will be deleted.").ariaLabel("Delete OpenchannelDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.openchannelDisposition.delete({id:p.openchannelDisposition.id}).$promise.then(function(){_.remove(p.openchannelDispositions,{id:p.openchannelDisposition.id}),i.success({title:"OpenchannelDisposition properly deleted!",msg:(p.openchannelDisposition.name||"openchannelDisposition")+" has been deleted!"}),u(p.openchannelDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="OPENCHANNEL.EDIT_OPENCHANNELDISPOSITION",p.openchannelDisposition=angular.copy(s),p.openchannelDispositions=o,p.newOpenchannelDisposition=!1,p.openchannelDisposition||(p.openchannelDisposition={},p.title="OPENCHANNEL.NEW_OPENCHANNELDISPOSITION",p.newOpenchannelDisposition=!0),t.params.id&&(p.openchannelDisposition.OpenchannelAccountId=t.params.id),p.addNewOpenchannelDisposition=l,p.saveOpenchannelDisposition=d,p.deleteOpenchannelDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","openchannelDispositions","openchannelDisposition","api"],angular.module("app.openchannel").controller("CreateOrEditOpenchannelDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.openchannel.openchannelAccounts")}function r(){i.openchannelAccount.update({id:l.openchannelAccount.id},l.openchannelAccount).$promise.then(function(){a.success({title:"OpenchannelAccount updated!",msg:l.openchannelAccount.name?l.openchannelAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.openchannelAccount=e.params.openchannelAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoOpenchannelAccounts=s,l.saveOpenchannelAccount=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","openchannelAccount"],angular.module("app.openchannel").controller("OpenchannelAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.openchannel.openchannelAccounts.edit",{id:e.id,openchannelAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the openchannelAccount?").htmlContent("<b>"+(e.name||"openchannelAccount")+"</b> will be deleted.").ariaLabel("delete openchannelAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.openchannelAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.openchannelAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditOpenchannelAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/openchannel/views/openchannelAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{openchannelAccount:t,openchannelAccounts:A.openchannelAccounts.rows}})}function v(e){l.openchannelAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.openchannelAccounts.rows,{id:e.id}),A.openchannelAccounts.count-=1,A.openchannelAccounts.rows.length||A.getOpenchannelAccounts(),c.success({title:"OpenchannelAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedOpenchannelAccounts);return A.selectedOpenchannelAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected openchannelAccounts?").htmlContent("<b>"+A.selectedOpenchannelAccounts.length+" selected</b> will be deleted.").ariaLabel("delete OpenchannelAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedOpenchannelAccounts.forEach(function(e){v(e)}),A.selectedOpenchannelAccounts=[]})}function E(){A.selectedOpenchannelAccounts=[]}function y(){A.selectedOpenchannelAccounts=A.openchannelAccounts.rows}var A=this;A.openchannelAccounts=r||{count:0,rows:[]},A.table="openchannelAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedOpenchannelAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,page:1},A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getOpenchannelAccounts=g,A.createOrEditOpenchannelAccount=h,A.deleteOpenchannelAccount=v,A.exportSelectedOpenchannelAccounts=b,A.deleteSelectedOpenchannelAccounts=f,A.deselectOpenchannelAccounts=E,A.selectAllOpenchannelAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getOpenchannelAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","openchannelAccounts","api","msUtils","toasty"],angular.module("app.openchannel").controller("OpenchannelAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.openchannelQueue.save(p.openchannelQueue).$promise.then(function(e){p.openchannelQueues.unshift(e),i.success({title:"OpenchannelQueue properly created",msg:p.openchannelQueue.name?p.openchannelQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.openchannelQueue.update({id:p.openchannelQueue.id},p.openchannelQueue).$promise.then(function(e){var t=_.find(p.openchannelQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"OpenchannelQueue properly saved!",msg:p.openchannelQueue.name?p.openchannelQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The openchannelQueue will be deleted.").ariaLabel("Delete OpenchannelQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.openchannelQueue.delete({id:p.openchannelQueue.id}).$promise.then(function(){_.remove(p.openchannelQueues,{id:p.openchannelQueue.id}),i.success({title:"OpenchannelQueue properly deleted!",msg:(p.openchannelQueue.name||"openchannelQueue")+" has been deleted!"}),u(p.openchannelQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="OPENCHANNEL.EDIT_OPENCHANNELQUEUE",p.openchannelQueue=angular.copy(s),p.openchannelQueues=o,p.newOpenchannelQueue=!1,p.openchannelQueue||(p.openchannelQueue={strategy:"beepall"},p.title="OPENCHANNEL.NEW_OPENCHANNELQUEUE",p.newOpenchannelQueue=!0),p.addNewOpenchannelQueue=l,p.saveOpenchannelQueue=d,p.deleteOpenchannelQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","openchannelQueues","openchannelQueue","api"],angular.module("app.openchannel").controller("CreateOrEditOpenchannelQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.openchannelQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("OPENCHANNEL.ALL_TEAMS"),labelSelected:i.instant("OPENCHANNEL.SELECTED_TEAMS"),transferCallback:function(e,a){n.openchannelQueue[a?"removeTeams":"addTeams"]({id:s.openchannelQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:openchannelQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.openchannelQueue.getTeams({id:s.openchannelQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","openchannelQueue","$translate"],angular.module("app.openchannel").controller("OpenchannelQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"OpenchannelQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/openchannel/views/openchannelQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{openchannelQueue:e,openchannelQueues:d.openchannelQueues?d.openchannelQueues.rows:[]}})}function r(){e.go("app.openchannel.openchannelQueues")}function l(){i.openchannelQueue.update({id:d.openchannelQueue.id},d.openchannelQueue).$promise.then(function(){a.success({title:"OpenchannelQueue updated!",msg:d.openchannelQueue.name?d.openchannelQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.openchannelQueue=e.params.openchannelQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoOpenchannelQueues=r,d.saveOpenchannelQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","openchannelQueue"],angular.module("app.openchannel").controller("OpenchannelQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.openchannel.openchannelQueues.edit",{id:e.id,openchannelQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the openchannelQueue?").htmlContent("<b>"+(e.name||"openchannelQueue")+"</b> will be deleted.").ariaLabel("delete openchannelQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.openchannelQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.openchannelQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditOpenchannelQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/openchannel/views/openchannelQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{openchannelQueue:t,openchannelQueues:A.openchannelQueues.rows}})}function v(e){l.openchannelQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.openchannelQueues.rows,{id:e.id}),A.openchannelQueues.count-=1,A.openchannelQueues.rows.length||A.getOpenchannelQueues(),c.success({title:"OpenchannelQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedOpenchannelQueues);return A.selectedOpenchannelQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected openchannelQueues?").htmlContent("<b>"+A.selectedOpenchannelQueues.length+" selected</b> will be deleted.").ariaLabel("delete OpenchannelQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedOpenchannelQueues.forEach(function(e){v(e)}),A.selectedOpenchannelQueues=[]})}function E(){A.selectedOpenchannelQueues=[]}function y(){A.selectedOpenchannelQueues=A.openchannelQueues.rows}var A=this;A.openchannelQueues=r||{count:0,rows:[]},A.table="openchannelQueues",A.listOrder="",A.listOrderAsc=null,A.selectedOpenchannelQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getOpenchannelQueues=g,A.createOrEditOpenchannelQueue=h,A.deleteOpenchannelQueue=v,A.exportSelectedOpenchannelQueues=b,A.deleteSelectedOpenchannelQueues=f,A.deselectOpenchannelQueues=E,A.selectAllOpenchannelQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getOpenchannelQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","openchannelQueues","api","msUtils","toasty"],angular.module("app.openchannel").controller("OpenchannelQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.setting.save(p.customization).$promise.then(function(e){p.customizations.unshift(e),i.success({title:"Customization properly created",msg:p.customization.name?p.customization.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.setting.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.setting.update({id:p.customization.id},p.customization).$promise.then(function(e){var t=_.find(p.customizations,{id:e.id});t&&_.merge(t,e),i.success({title:"Customization properly saved!",msg:p.customization.name?p.customization.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.setting.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The customization will be deleted.").ariaLabel("Delete Customization").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.setting.delete({id:p.customization.id}).$promise.then(function(){_.remove(p.customizations,{id:p.customization.id}),i.success({title:"Customization properly deleted!",msg:(p.customization.name||"customization")+" has been deleted!"}),u(p.customization)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SETTINGS.EDIT_CUSTOMIZATION",p.customization=angular.copy(s),p.customizations=o,p.newCustomization=!1,p.customization||(p.customization={},p.title="SETTINGS.NEW_CUSTOMIZATION",p.newCustomization=!0),p.addNewCustomization=l,p.saveCustomization=d,p.deleteCustomization=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","customizations","customization","api"],angular.module("app.settings").controller("CreateOrEditCustomizationDialogController",e)}(),function(){"use strict";function e(e,t,n){function a(){i.customization.id?t.setting.update({id:i.customization.id},i.customization).$promise.then(function(){n.success({title:"Customization updated!",msg:i.customization.name?i.customization.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsetting",msg:e.data?JSON.stringify(e.data):e.toString()})}):t.setting.save(i.customization).$promise.then(function(e){_.merge(i.customization,e),n.success({title:"Customization updated!",msg:i.customization.name?i.customization.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsetting",msg:e.data?JSON.stringify(e.data):e.toString()})})}var i=this;i.customizations=e,i.customization={},i.customizations&&i.customizations.rows&&i.customizations.rows.length&&(i.customization=i.customizations.rows[0]),i.saveCustomization=a}e.$inject=["customizations","api","toasty"],angular.module("app.settings").controller("CustomizationsController",e)}(),function(){"use strict";function e(e,t){function n(e){s.customization=angular.copy(e),s.ngFlowOptions.target="/api/settings/1/logo",s.customization.images=[]}function a(e){var n=["png","jpg"];if(_.includes(n,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.customization.images.unshift(a),!0}return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1}function i(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function o(e,t){angular.forEach(s.customization.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.customization={},s.ngFlowOptions={chunkSize:8388608,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=i,s.fileSuccess=o,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.settings").controller("CustomizationlogoController",e)}(),function(){"use strict";function e(e,t){function n(e){s.customization=angular.copy(e),s.ngFlowOptions.target="/api/settings/1/logo_login",s.customization.images=[]}function a(e){var n=["png","jpg"];if(_.includes(n,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.customization.images.unshift(a),!0}return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1}function i(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function o(e,t){angular.forEach(s.customization.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.customization={},s.ngFlowOptions={chunkSize:8388608,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=i,s.fileSuccess=o,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.settings").controller("CustomizationlogologinController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.setting.save(p.general).$promise.then(function(e){p.generals.unshift(e),i.success({title:"General properly created",msg:p.general.name?p.general.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.setting.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.setting.update({id:p.general.id},p.general).$promise.then(function(e){var t=_.find(p.generals,{id:e.id});t&&_.merge(t,e),i.success({title:"General properly saved!",msg:p.general.name?p.general.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.setting.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The general will be deleted.").ariaLabel("Delete General").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.setting.delete({id:p.general.id}).$promise.then(function(){_.remove(p.generals,{id:p.general.id}),i.success({title:"General properly deleted!",msg:(p.general.name||"general")+" has been deleted!"}),u(p.general)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SETTINGS.EDIT_GENERAL",p.general=angular.copy(s),p.generals=o,p.newGeneral=!1,p.general||(p.general={min_internal:1e3,min_mailbox:1e3},p.title="SETTINGS.NEW_GENERAL",p.newGeneral=!0),p.addNewGeneral=l,p.saveGeneral=d,p.deleteGeneral=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","generals","general","api"],angular.module("app.settings").controller("CreateOrEditGeneralDialogController",e)}(),function(){"use strict";function e(e,t,n){function a(){i.general.id?t.setting.update({id:i.general.id},i.general).$promise.then(function(){n.success({title:"General updated!",msg:i.general.name?i.general.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsetting",msg:e.data?JSON.stringify(e.data):e.toString()})}):t.setting.save(i.general).$promise.then(function(e){_.merge(i.general,e),n.success({title:"General updated!",msg:i.general.name?i.general.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsetting",msg:e.data?JSON.stringify(e.data):e.toString()})})}var i=this;i.generals=e,i.general={},i.generals&&i.generals.rows&&i.generals.rows.length&&(i.general=i.generals.rows[0]),i.saveGeneral=a}e.$inject=["generals","api","toasty"],angular.module("app.settings").controller("GeneralsController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(e){var n=t.prompt().title("Do you want update manually your license?").textContent("Enter your license.").targetEvent(e).ok("Ok").cancel("Cancel");t.show(n).then(function(e){if(e)return i.license.update({id:1,license:e}).$promise.then(function(){a.success({title:"License properly updated!",msg:"The license has been updated!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATElicense",msg:e.data?JSON.stringify(e.data):e.toString()})})}).catch(function(e){console.error(e)})}function s(a){t.show({controller:"RequestLicenseDialogController",controllerAs:"vm",templateUrl:"app/main/apps/settings/views/license/request/dialog.html",parent:angular.element(e.body),targetEvent:a,clickOutsideToClose:!0,locals:{license:n,channels:r.channels,modules:r.modules,others:r.others}})}var r=this;r.license=n||{},r.license.gray&&(r.license.deadline=moment(r.license.gray).add(7,"days").format("MMMM Do YYYY, HH:MM")),r.channels=[{name:"chat",icon:"icon-hangouts"},{name:"mail",icon:"icon-email"},{name:"messaging",icon:"icon-message-text"},{name:"fax",icon:"icon-deskphone"},{name:"openchannel",icon:"icon-google-earth"}],r.modules=[{name:"cm",icon:"icon-account-circle"},{name:"dialer",icon:"icon-crosshairs"},{name:"jscripty",icon:"icon-console"}],r.others=[{name:"custom",icon:"icon-table-edit"},{name:"update",icon:"icon-cloud-download"}],r.requestLicense=s,r.updateLicense=o}e.$inject=["$document","$mdDialog","license","toasty","api"],angular.module("app.settings.license").controller("LicenseController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){c.errors=[],c.table="||FIELD||VALUE||\n";for(var e in c.license)c.license.hasOwnProperty(e)&&!_.includes(["$promise","$resolved"],e)&&(c.table+="|"+e+"|"+c.license[e]+"\n");s.jira.save({key:"MOTLICENSE",summary:"Motion License Request",description:c.table,issuetype:"Task"}).$promise.then(function(e){t.success({title:"Request "+e.id+" sent!",msg:"The license request has been sent! We will respond as soon as possible."}),d()}).catch(function(e){console.error(e),c.errors=e.data.errors||[{message:e.toString(),type:"api.jira"}]})}function d(){e.hide()}var c=this;c.errors=[],c.user=r.getCurrentUser(),c.license=angular.copy(n),c.channels=a,c.modules=i,c.others=o,c.license.name=c.user.fullname,c.license.email=c.user.email,c.sendRequest=l,c.closeDialog=d}e.$inject=["$mdDialog","toasty","license","channels","modules","others","api","Auth"],angular.module("app.settings.license").controller("RequestLicenseDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.network.save(p.network).$promise.then(function(e){p.networks.unshift(e),i.success({title:"Network properly created",msg:p.network.name?p.network.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.network.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.network.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.network.update({id:p.network.id},p.network).$promise.then(function(e){var t=_.find(p.networks,{id:e.id});t&&_.merge(t,e),i.success({title:"Network properly saved!",msg:p.network.name?p.network.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.network.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.network.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The network will be deleted.").ariaLabel("Delete Network").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.network.delete({id:p.network.id}).$promise.then(function(){_.remove(p.networks,{id:p.network.id}),i.success({title:"Network properly deleted!",msg:(p.network.name||"network")+" has been deleted!"}),u(p.network)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.network.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SETTINGS.EDIT_NETWORK",p.network=angular.copy(s),p.networks=o,p.newNetwork=!1,p.network||(p.network={type:"localnet"},p.title="SETTINGS.NEW_NETWORK",p.newNetwork=!0),p.addNewNetwork=l,p.saveNetwork=d,p.deleteNetwork=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","networks","network","api"],angular.module("app.settings").controller("CreateOrEditNetworkDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditNetworkDialogController",controllerAs:"vm",templateUrl:"app/main/apps/settings/views/networks/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{network:e,networks:A.networks.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the network?").htmlContent("<b>"+(e.name||"network")+"</b> will be deleted.").ariaLabel("delete network").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.networks=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.network.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditNetworkDialogController",controllerAs:"vm",templateUrl:"app/main/apps/settings/views/networks/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{network:t,networks:A.networks.rows}})}function v(e){l.network.delete({id:e.id}).$promise.then(function(){_.remove(A.networks.rows,{id:e.id}),A.networks.count-=1,A.networks.rows.length||A.getNetworks(),c.success({title:"Network deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETnetwork",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedNetworks);return A.selectedNetworks=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected networks?").htmlContent("<b>"+A.selectedNetworks.length+" selected</b> will be deleted.").ariaLabel("delete Networks").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedNetworks.forEach(function(e){v(e)}),A.selectedNetworks=[]})}function E(){A.selectedNetworks=[]}function y(){A.selectedNetworks=A.networks.rows}var A=this;A.networks=r||{count:0,rows:[]},A.table="networks",A.listOrder="",A.listOrderAsc=null,A.selectedNetworks=[],A.query={fields:"createdAt,updatedAt,id,type,value,value,createdAt",sort:"-updatedAt",limit:10,page:1},A.arraytype=_.keyBy([{option:"LocalNET",value:"'localnet'"},{option:"ExternIP",value:"'externip'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getNetworks=g,A.createOrEditNetwork=h,A.deleteNetwork=v,A.exportSelectedNetworks=b,A.deleteSelectedNetworks=f,A.deselectNetworks=E,A.selectAllNetworks=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getNetworks())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","networks","api","msUtils","toasty"],angular.module("app.settings").controller("NetworksController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.mailAccount.save(p.smtp).$promise.then(function(e){p.smtps.unshift(e),i.success({title:"Smtp properly created",msg:p.smtp.name?p.smtp.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.mailAccount.update({id:p.smtp.id},p.smtp).$promise.then(function(e){var t=_.find(p.smtps,{id:e.id});t&&_.merge(t,e),i.success({title:"Smtp properly saved!",msg:p.smtp.name?p.smtp.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The smtp will be deleted.").ariaLabel("Delete Smtp").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.mailAccount.delete({id:p.smtp.id}).$promise.then(function(){_.remove(p.smtps,{id:p.smtp.id}),i.success({title:"Smtp properly deleted!",msg:(p.smtp.name||"smtp")+" has been deleted!"}),u(p.smtp)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SETTINGS.EDIT_SMTP",p.smtp=angular.copy(s),p.smtps=o,p.newSmtp=!1,p.smtp||(p.smtp={service:"true"},p.title="SETTINGS.NEW_SMTP",p.newSmtp=!0),p.addNewSmtp=l,p.saveSmtp=d,p.deleteSmtp=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","smtps","smtp","api"],angular.module("app.settings").controller("CreateOrEditSmtpDialogController",e)}(),function(){"use strict";function e(e,t,n){function a(){o.smtp.id&&t.mailAccount.verifySmtp({id:o.smtp.id}).$promise.then(function(){n.success({title:"Smtp verified!",msg:o.smtp.name?o.smtp.name+" has been verified!":""})}).catch(function(e){n.error({title:"Smtp not verified! Remember to save before to verify!",msg:e.data?JSON.stringify(e.data):e.toString(),timeout:1e4})})}function i(){o.smtp.id?t.mailAccount.update({id:o.smtp.id},o.smtp).$promise.then(function(){n.success({title:"Smtp updated!",msg:o.smtp.name?o.smtp.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})}):t.mailAccount.save(o.smtp).$promise.then(function(e){_.merge(o.smtp,e),n.success({title:"Smtp updated!",msg:o.smtp.name?o.smtp.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var o=this;o.smtps=e,o.smtp={},o.smtps&&o.smtps.rows&&o.smtps.rows.length?o.smtp=o.smtps.rows[0]:o.smtp={service:!0,Smtp:{service:null}},o.saveSmtp=i,o.verifySmtp=a}e.$inject=["smtps","api","toasty"],angular.module("app.settings").controller("SmtpController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(e){t.cancel(m)}function l(e,a,i){var r=n.confirm().title("Would you like to change the status of the process #"+a+"?").textContent("The status will be changed to: "+i.toUpperCase()).ariaLabel("Lucky day").targetEvent(e).ok("Ok").cancel("Cancel");n.show(r).then(function(){return s.pm2.update({id:a,status:i})}).then(function(){t(u.getProcesses,1e3,1)}).then(function(){o.success({title:"Process updated!",msg:"Status properly changed to: "+i})})}function d(){return s.system.get().$promise.then(function(e){_.merge(u.system,e)}).catch(u.cancelInterval)}function c(){return s.pm2.get().$promise.then(function(e){_.merge(u.processes,e?e.rows:[])}).catch(u.cancelInterval)}var m,u=this;u.system=a||{},u.processes=i?i.rows:[],u.processLimit=7,u.getInfo=d,u.getProcesses=c,u.cancelInterval=r,u.updateProcess=l,m=t(u.getInfo,5e3),e.$on("$destroy",function(){u.cancelInterval()})}e.$inject=["$scope","$interval","$mdDialog","system","processes","toasty","api"],angular.module("app.settings.system").controller("SystemController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){angular.isDefined(l.interval)&&(t.cancel(l.interval),l.interval=void 0),l.progress=100,l.updating=!1}function s(){n.location.reload()}function r(){e.hide()}var l=this;l.title="SETTINGS.UPDATE",l.progress=0,l.updating=!0,l.output="Waiting...",l.success=!0,l.interval=t(function(){l.progress<90&&(l.progress+=1)},1e3),l.closeDialog=r,l.reload=s,l.stopInterval=o,i.version.fetch().$promise.then(function(e){return l.output=e.output+"...",i.version.reset().$promise}).then(function(e){return l.output=e.output+"...",i.version.pull().$promise}).then(function(e){return l.output=e.output+"...",i.version.migrations().$promise}).then(function(e){return l.output=e.output+"...",i.version.restart().$promise}).then(function(e){l.output="Waiting to restart motion...",a(function(){l.stopInterval()},3e4)}).catch(function(e){l.success=!1,l.stopInterval(),l.output=JSON.stringify(e)})}e.$inject=["$mdDialog","$interval","$window","$timeout","api"],angular.module("app.settings").controller("UpdateDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(t){var a=e.confirm().title("Would you like to update your system?").htmlContent('The system request time for the update should be below 1 minute.<br><br>Do you agree the terms of this <a href="http://www.xcally.com/support/eula-xcally-license-en.pdf" target="_blank">End User License Agreement<a>?').ariaLabel("").targetEvent(t).clickOutsideToClose(!0).parent(angular.element(n.body)).ok("I agree").cancel("Disagree");e.show(a).then(function(){e.show({controller:"UpdateDialogController",controllerAs:"vm",templateUrl:"app/main/apps/settings/views/updates/update/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!1})})}var s=this;s.version=a||{},s.updateConfirm=o}e.$inject=["$mdDialog","$interval","$document","version","toasty"],angular.module("app.settings").controller("UpdatesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.smsAccount.save(p.smsAccount).$promise.then(function(e){p.smsAccounts.unshift(e),i.success({title:"SmsAccount properly created",msg:p.smsAccount.name?p.smsAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.smsAccount.update({id:p.smsAccount.id},p.smsAccount).$promise.then(function(e){var t=_.find(p.smsAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"SmsAccount properly saved!",msg:p.smsAccount.name?p.smsAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The smsAccount will be deleted.").ariaLabel("Delete SmsAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.smsAccount.delete({id:p.smsAccount.id}).$promise.then(function(){_.remove(p.smsAccounts,{id:p.smsAccount.id}),i.success({title:"SmsAccount properly deleted!",msg:(p.smsAccount.name||"smsAccount")+" has been deleted!"}),u(p.smsAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.smsAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SMS.EDIT_SMSACCOUNT",p.smsAccount=angular.copy(s),p.smsAccounts=o,p.newSmsAccount=!1,p.smsAccount||(p.smsAccount={smstype:"basic",remote:n.protocol()+"://"+n.host()+":"+n.port()},p.title="SMS.NEW_SMSACCOUNT",p.newSmsAccount=!0),p.addNewSmsAccount=l,p.saveSmsAccount=d,p.deleteSmsAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","smsAccounts","smsAccount","api"],angular.module("app.sms").controller("CreateOrEditSmsAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.smsAccount=e,h.query.id=h.smsAccount.id,h.query.SmsAccountId=h.smsAccount.id,h.getSmsAccountSmsDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the smsDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete smsDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.smsAccountSmsDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.smsAccount.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditSmsDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/sms/views/smsAccounts/edit/smsDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{smsDisposition:t,smsDispositions:h.smsAccountSmsDispositions.rows}})}function p(e){r.smsDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.smsAccountSmsDispositions.rows,{id:e.id}),h.smsAccountSmsDispositions.count-=1,h.smsAccountSmsDispositions.rows.length||h.getSmsAccountSmsDispositions(),s.success({title:"SmsDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected smsDispositions?").htmlContent("<b>"+h.selectedSmsAccountSmsDispositions.length+" selected</b> will be deleted.").ariaLabel("delete smsDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedSmsAccountSmsDispositions.forEach(function(e){p(e)}),h.selectedSmsAccountSmsDispositions=[]})}var h=this;h.smsAccount={},h.smsAccountSmsDispositions={count:0,rows:[]},h.selectedSmsAccountSmsDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getSmsAccountSmsDispositions=m,h.createOrEditSmsAccountSmsDisposition=u,h.deleteSmsAccountSmsDisposition=p,h.deleteSelectedSmsAccountSmsDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getSmsAccountSmsDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.sms").controller("SmsAccountSmsDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.smsDisposition.save(p.smsDisposition).$promise.then(function(e){p.smsDispositions.unshift(e),i.success({title:"SmsDisposition properly created",msg:p.smsDisposition.name?p.smsDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.smsDisposition.update({id:p.smsDisposition.id},p.smsDisposition).$promise.then(function(e){var t=_.find(p.smsDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"SmsDisposition properly saved!",msg:p.smsDisposition.name?p.smsDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The smsDisposition will be deleted.").ariaLabel("Delete SmsDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.smsDisposition.delete({id:p.smsDisposition.id}).$promise.then(function(){_.remove(p.smsDispositions,{id:p.smsDisposition.id}),i.success({title:"SmsDisposition properly deleted!",msg:(p.smsDisposition.name||"smsDisposition")+" has been deleted!"}),u(p.smsDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.smsDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SMS.EDIT_SMSDISPOSITION",p.smsDisposition=angular.copy(s),p.smsDispositions=o,p.newSmsDisposition=!1,p.smsDisposition||(p.smsDisposition={},p.title="SMS.NEW_SMSDISPOSITION",p.newSmsDisposition=!0),t.params.id&&(p.smsDisposition.SmsAccountId=t.params.id),p.addNewSmsDisposition=l,p.saveSmsDisposition=d,p.deleteSmsDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","smsDispositions","smsDisposition","api"],angular.module("app.sms").controller("CreateOrEditSmsDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.sms.smsAccounts")}function r(){i.smsAccount.update({id:l.smsAccount.id},l.smsAccount).$promise.then(function(){a.success({title:"SmsAccount updated!",msg:l.smsAccount.name?l.smsAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.smsAccount=e.params.smsAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoSmsAccounts=s,l.saveSmsAccount=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","smsAccount"],angular.module("app.sms").controller("SmsAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.sms.smsAccounts.edit",{id:e.id,smsAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the smsAccount?").htmlContent("<b>"+(e.name||"smsAccount")+"</b> will be deleted.").ariaLabel("delete smsAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.smsAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.smsAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSmsAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/sms/views/smsAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{smsAccount:t,smsAccounts:A.smsAccounts.rows}})}function v(e){l.smsAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.smsAccounts.rows,{id:e.id}),A.smsAccounts.count-=1,A.smsAccounts.rows.length||A.getSmsAccounts(),c.success({title:"SmsAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSmsAccounts);return A.selectedSmsAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected smsAccounts?").htmlContent("<b>"+A.selectedSmsAccounts.length+" selected</b> will be deleted.").ariaLabel("delete SmsAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSmsAccounts.forEach(function(e){v(e)}),A.selectedSmsAccounts=[]})}function E(){A.selectedSmsAccounts=[]}function y(){A.selectedSmsAccounts=A.smsAccounts.rows}var A=this;A.smsAccounts=r||{count:0,rows:[]},A.table="smsAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedSmsAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,type,smstype,phone,sid,token,username,password,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,page:1},A.arraytype=_.keyBy([{option:"Twilio",value:"'twilio'"},{option:"Skebby",value:"'skebby'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraysmstype=_.keyBy([{option:"Basic",value:"'basic'"},{option:"Classic",value:"'classic'"},{option:"Classic+",value:"'classic+'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getSmsAccounts=g,A.createOrEditSmsAccount=h,A.deleteSmsAccount=v,A.exportSelectedSmsAccounts=b,A.deleteSelectedSmsAccounts=f,A.deselectSmsAccounts=E,A.selectAllSmsAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSmsAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","smsAccounts","api","msUtils","toasty"],angular.module("app.sms").controller("SmsAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.smsQueue.save(p.smsQueue).$promise.then(function(e){p.smsQueues.unshift(e),i.success({title:"SmsQueue properly created",msg:p.smsQueue.name?p.smsQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.smsQueue.update({id:p.smsQueue.id},p.smsQueue).$promise.then(function(e){var t=_.find(p.smsQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"SmsQueue properly saved!",msg:p.smsQueue.name?p.smsQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The smsQueue will be deleted.").ariaLabel("Delete SmsQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.smsQueue.delete({id:p.smsQueue.id}).$promise.then(function(){_.remove(p.smsQueues,{id:p.smsQueue.id}),i.success({title:"SmsQueue properly deleted!",msg:(p.smsQueue.name||"smsQueue")+" has been deleted!"}),u(p.smsQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.smsQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SMS.EDIT_SMSQUEUE",p.smsQueue=angular.copy(s),p.smsQueues=o,p.newSmsQueue=!1,p.smsQueue||(p.smsQueue={strategy:"beepall"},p.title="SMS.NEW_SMSQUEUE",p.newSmsQueue=!0),p.addNewSmsQueue=l,p.saveSmsQueue=d,p.deleteSmsQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","smsQueues","smsQueue","api"],angular.module("app.sms").controller("CreateOrEditSmsQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.smsQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("SMS.ALL_TEAMS"),labelSelected:i.instant("SMS.SELECTED_TEAMS"),transferCallback:function(e,a){n.smsQueue[a?"removeTeams":"addTeams"]({id:s.smsQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:smsQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.smsQueue.getTeams({id:s.smsQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","smsQueue","$translate"],angular.module("app.sms").controller("SmsQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"SmsQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/sms/views/smsQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{smsQueue:e,smsQueues:d.smsQueues?d.smsQueues.rows:[]}})}function r(){e.go("app.sms.smsQueues")}function l(){i.smsQueue.update({id:d.smsQueue.id},d.smsQueue).$promise.then(function(){a.success({title:"SmsQueue updated!",msg:d.smsQueue.name?d.smsQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.smsQueue=e.params.smsQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoSmsQueues=r,d.saveSmsQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","smsQueue"],angular.module("app.sms").controller("SmsQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.sms.smsQueues.edit",{id:e.id,smsQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the smsQueue?").htmlContent("<b>"+(e.name||"smsQueue")+"</b> will be deleted.").ariaLabel("delete smsQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.smsQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.smsQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSmsQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/sms/views/smsQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{smsQueue:t,smsQueues:A.smsQueues.rows}})}function v(e){l.smsQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.smsQueues.rows,{id:e.id}),A.smsQueues.count-=1,A.smsQueues.rows.length||A.getSmsQueues(),c.success({title:"SmsQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSmsQueues);return A.selectedSmsQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected smsQueues?").htmlContent("<b>"+A.selectedSmsQueues.length+" selected</b> will be deleted.").ariaLabel("delete SmsQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSmsQueues.forEach(function(e){v(e)}),A.selectedSmsQueues=[]})}function E(){A.selectedSmsQueues=[]}function y(){A.selectedSmsQueues=A.smsQueues.rows}var A=this;A.smsQueues=r||{count:0,rows:[]},A.table="smsQueues",A.listOrder="",A.listOrderAsc=null,A.selectedSmsQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getSmsQueues=g,A.createOrEditSmsQueue=h,A.deleteSmsQueue=v,A.exportSelectedSmsQueues=b,A.deleteSelectedSmsQueues=f,A.deselectSmsQueues=E,A.selectAllSmsQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSmsQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","smsQueues","api","msUtils","toasty"],angular.module("app.sms").controller("SmsQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.staff.agents.edit",{id:e.id,agent:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the agent?").htmlContent("<b>"+(e.name||"agent")+"</b> will be deleted.").ariaLabel("delete agent").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.agents=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.user.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditAgentDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{agent:t,agents:A.agents.rows}})}function v(e){l.user.delete({id:e.id}).$promise.then(function(){_.remove(A.agents.rows,{id:e.id}),A.agents.count-=1,A.agents.rows.length||A.getAgents(),c.success({title:"Agent deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedAgents);return A.selectedAgents=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected agents?").htmlContent("<b>"+A.selectedAgents.length+" selected</b> will be deleted.").ariaLabel("delete Agents").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedAgents.forEach(function(e){v(e)}),A.selectedAgents=[]})}function E(){A.selectedAgents=[]}function y(){A.selectedAgents=A.agents.rows}var A=this;A.agents=r||{count:0,rows:[]},A.table="agents",A.listOrder="",A.listOrderAsc=null,A.selectedAgents=[],A.query={fields:"createdAt,updatedAt,id,role,fullname,name,email,userpic,password,description,autointernal,internal,loginInPause,voicemail,transport,host,nat,type,allow,callerid,callgroup,pickupgroup,chanspy,chatCapacity,mailCapacity,faxCapacity,smsCapacity,openchannelCapacity,phoneBarEnableSettings,phoneBarAutoAnswer,phoneBarRingInUse,phoneBarEnableRecording,phoneBarUnconditional,phoneBarUnconditionalNumber,phoneBarNoReply,phoneBarNoReplyNumber,phoneBarBusy,phoneBarBusyNumber,phoneBarRemoteControl,phoneBarRemoteControlPort,phoneBarExpires,phoneBarListenPort",role:"agent",sort:"-updatedAt",limit:10,page:1},A.arraytransport=_.keyBy([{option:"udp",value:"'udp'"},{option:"tcp",value:"'tcp'"},{option:"ws",value:"'ws'"},{option:"wss",value:"'wss'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraynat=_.keyBy([{option:"force_rport",value:"'force_rport'"},{option:"comedia",value:"'comedia'"},{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"never",value:"'never'"},{option:"route",value:"'route'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytype=_.keyBy([{option:"Friend",value:"'friend'"},{option:"User",value:"'user'"},{option:"Peer",value:"'peer'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayallow=_.keyBy([{option:"alaw",value:"'alaw'"},{option:"ulaw",value:"'ulaw'"},{option:"gsm",value:"'gsm'"},{option:"g729",value:"'g729'"},{option:"ilbc",value:"'ilbc'"},{option:"opus",value:"'opus'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getAgents=g,A.createOrEditAgent=h,A.deleteAgent=v,A.exportSelectedAgents=b,A.deleteSelectedAgents=f,A.deselectAgents=E,A.selectAllAgents=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getAgents())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","agents","api","msUtils","toasty"],angular.module("app.staff").controller("AgentsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.user.save(p.agent).$promise.then(function(e){p.agents.unshift(e),i.success({title:"Agent properly created",msg:p.agent.name?p.agent.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.user.update({id:p.agent.id},p.agent).$promise.then(function(e){var t=_.find(p.agents,{id:e.id});t&&_.merge(t,e),i.success({title:"Agent properly saved!",msg:p.agent.name?p.agent.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The agent will be deleted.").ariaLabel("Delete Agent").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.user.delete({id:p.agent.id}).$promise.then(function(){_.remove(p.agents,{id:p.agent.id}),i.success({title:"Agent properly deleted!",msg:(p.agent.name||"agent")+" has been deleted!"}),u(p.agent)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.user.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="STAFF.EDIT_AGENT",p.agent=angular.copy(s),p.agents=o,p.newAgent=!1,p.agent||(p.agent={role:"agent",autointernal:!0,type:"friend"},p.title="STAFF.NEW_AGENT",p.newAgent=!0),p.addNewAgent=l,p.saveAgent=d,p.deleteAgent=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","agents","agent","api"],angular.module("app.staff").controller("CreateOrEditAgentDialogController",e)}(),function(){"use strict";function e(e,t){function n(e){s.agent=angular.copy(e),s.ngFlowOptions.target="api/users/"+s.agent.id+"/avatar",s.agent.images=[]}function a(e){var n=["png","jpg"];if(_.includes(n,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.agent.images.unshift(a),!0}return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1}function i(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function o(e,t){angular.forEach(s.agent.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.agent={},s.ngFlowOptions={chunkSize:8388608,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=i,s.fileSuccess=o,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.staff").controller("Agentchange_avatarController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],n.user.changePassword({id:s.agent.id,newPassword:s.password}).$promise.then(function(){t.success({title:"Agent password properly updated!"}),o()}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.agent.changePassword"}]})}function o(){e.hide()}var s=this;s.errors=[],s.agent=a,s.password="",s.savePassword=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","api","agent"],angular.module("app.staff").controller("AgentchangepasswordController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){n.user[m.isVoiceRealtime()?"getVoiceQueuesRt":"getQueues"]({id:m.agent.id,fields:m.isVoiceRealtime()?"VoiceQueueId,queue_name,penalty":"id,name,strategy",channel:i,nolimit:!0}).$promise.then(function(e){return m.isVoiceRealtime()?m.selectedItems=e.rows?_.map(e.rows,function(e){return{id:e.VoiceQueueId,name:e.queue_name,penalty:e.hasOwnProperty("penalty")?"penalty "+e.penalty:"penalty 0",strategy:""}}):[]:m.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserVoiceQueue?"penalty "+e.UserVoiceQueue.penalty:"",e}):[],n[m.apiname].get({fields:"id,name,strategy",nolimit:!0,type:s}).$promise}).then(function(e){m.items=e.rows?e.rows:[],m.selectedItems=_.intersectionBy(m.selectedItems,m.items,"id"),m.dualMultiselectOptions.selectedItems=m.selectedItems,m.dualMultiselectOptions.items=_.differenceBy(m.items,m.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETQUEUES",msg:e.status?JSON.stringify(e.data):e.toString()})})}function d(){return o&&"voice"===i}function c(){e.hide()}var m=this;m.agent=a,m.penalty=0,m.apiname=i+"Queue",m.title=r.instant("STAFF.QUEUEADD_AGENT_"+i.toUpperCase()+"_"+s.toUpperCase()),m.items=[],m.selectedItems=[],m.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"strategy",line3:"penalty",labelAll:r.instant("STAFF.ALL_QUEUES_"+i.toUpperCase()+"_"+s.toUpperCase()),labelSelected:r.instant("STAFF.SELECTED_QUEUES_"+i.toUpperCase()+"_"+s.toUpperCase()),transferCallback:function(e,a){n.user[a?"removeQueues":"addQueues"]({id:m.agent.id,ids:_.map(e,"id"),channel:i,penalty:m.penalty||0,realtime:o}).$promise.then(function(){l(),t.success({title:"Queue properly "+(a?"removed":"added"),msg:"Queue has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:USER.ADDQUEUES",msg:e.status?JSON.stringify(e.data):e.toString()})})}},m.closeDialog=c,m.isVoiceRealtime=d,l()}e.$inject=["$mdDialog","toasty","api","agent","channel","realtime","direction","$translate"],angular.module("app.staff").controller("AgentqueueaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a,i){t.show({controller:"AgentqueueaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/edit/queueadd/queueadd.html",parent:angular.element(n.body),targetEvent:i,clickOutsideToClose:!0,locals:{agent:e,agents:c.agents?c.agents.rows:[],channel:a,realtime:!1,direction:"inbound"}})}function r(e,a){t.show({controller:"AgentchangepasswordController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/edit/changepassword/changepassword.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{agent:e,agents:c.agents?c.agents.rows:[]}})}function l(){e.go("app.staff.agents")}function d(){i.user.update({id:c.agent.id},c.agent).$promise.then(function(){a.success({title:"Agent updated!",msg:c.agent.name?c.agent.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.agent=e.params.agent||o||{},c.selectedTab=e.params.tab||0,c.queueaddchannel=s,c.changepassworddialog=r,c.gotoAgents=l,c.saveAgent=d}e.$inject=["$state","$mdDialog","$document","toasty","api","agent"],angular.module("app.staff").controller("AgentController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.team.save(p.team).$promise.then(function(e){p.teams.unshift(e),i.success({title:"Team properly created",msg:p.team.name?p.team.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.team.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.team.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.team.update({id:p.team.id},p.team).$promise.then(function(e){var t=_.find(p.teams,{id:e.id});t&&_.merge(t,e),i.success({title:"Team properly saved!",msg:p.team.name?p.team.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.team.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.team.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The team will be deleted.").ariaLabel("Delete Team").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.team.delete({id:p.team.id}).$promise.then(function(){_.remove(p.teams,{id:p.team.id}),i.success({title:"Team properly deleted!",msg:(p.team.name||"team")+" has been deleted!"}),u(p.team)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.team.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="STAFF.EDIT_TEAM",p.team=angular.copy(s),p.teams=o,p.newTeam=!1,p.team||(p.team={},p.title="STAFF.NEW_TEAM",p.newTeam=!0),p.addNewTeam=l,p.saveTeam=d,p.deleteTeam=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","teams","team","api"],angular.module("app.staff").controller("CreateOrEditTeamDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){return n.team[c.isVoiceRealtime()?"getMembers":"getAgents"]({id:c.team.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){return c.isVoiceRealtime()?c.selectedItems=e.rows?_.map(e.rows,function(e){return e.id=e.UserId,e.fullname=e.membername,e.penalty=e.hasOwnProperty("penalty")?"penalty "+e.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[]:c.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserTeam?"penalty "+e.UserTeam.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.selectedItems=c.selectedItems,n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){c.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserTeam?"penalty "+e.UserTeam.penalty:"",e.internal=e.internal?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.items=_.differenceBy(c.items,c.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function l(){return o}function d(){e.hide()}var c=this;c.team=a,c.penalty=0,c.items=[],c.selectedItems=[],c.closeDialog=d,c.isVoiceRealtime=l,c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:"internal",line3:"penalty",labelAll:s.instant("STAFF.ALL_AGENTS"),labelSelected:s.instant("STAFF.SELECTED_AGENTS"),transferCallback:function(e,a){n.team[a?"removeAgents":"addAgents"]({id:c.team.id,ids:_.map(e,c.isVoiceRealtime()&&a?"UserId":"id"),penalty:c.penalty||0,realtime:o||!1}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"}),a||r()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:team.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},r()}e.$inject=["$mdDialog","toasty","api","team","teams","realtime","$translate"],angular.module("app.staff").controller("TeamagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditTeamDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/teams/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{team:e,teams:C.teams.rows}})}function u(e,t){i.show({controller:"TeamagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/teams/edit/agentadd/agentadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{team:e,teams:C.teams?C.teams.rows:[],realtime:!1}})}function p(e,t){var n=i.confirm().title("Are you sure want to delete the team?").htmlContent("<b>"+(e.name||"team")+"</b> will be deleted.").ariaLabel("delete team").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function g(e){C.teams=e||{count:0,rows:[]}}function h(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.team.get(C.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditTeamDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/teams/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{team:t,teams:C.teams.rows}})}function b(e){l.team.delete({id:e.id}).$promise.then(function(){_.remove(C.teams.rows,{id:e.id}),C.teams.count-=1,C.teams.rows.length||C.getTeams(),c.success({title:"Team deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETteam",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(C.selectedTeams);return C.selectedTeams=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected teams?").htmlContent("<b>"+C.selectedTeams.length+" selected</b> will be deleted.").ariaLabel("delete Teams").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){C.selectedTeams.forEach(function(e){b(e)}),C.selectedTeams=[]})}function y(){C.selectedTeams=[]}function A(){C.selectedTeams=C.teams.rows}var C=this;C.teams=r||{count:0,rows:[]},C.table="teams",C.listOrder="",C.listOrderAsc=null,C.selectedTeams=[],C.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},C.editdialog=m,C.agentadddialog=u,C.deleteconfirm=p,C.success=g,C.getTeams=h,C.createOrEditTeam=v,C.deleteTeam=b,C.exportSelectedTeams=f,C.deleteSelectedTeams=E,C.deselectTeams=y,C.selectAllTeams=A;var x=!0,T=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(T=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=T),C.getTeams())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","teams","api","msUtils","toasty"],angular.module("app.staff").controller("TeamsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.user.save(p.telephone).$promise.then(function(e){p.telephones.unshift(e),i.success({title:"Telephone properly created",msg:p.telephone.name?p.telephone.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.user.update({id:p.telephone.id},p.telephone).$promise.then(function(e){var t=_.find(p.telephones,{id:e.id});t&&_.merge(t,e),i.success({title:"Telephone properly saved!",msg:p.telephone.name?p.telephone.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The telephone will be deleted.").ariaLabel("Delete Telephone").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.user.delete({id:p.telephone.id}).$promise.then(function(){_.remove(p.telephones,{id:p.telephone.id}),i.success({title:"Telephone properly deleted!",msg:(p.telephone.name||"telephone")+" has been deleted!"}),u(p.telephone)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.user.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="STAFF.EDIT_TELEPHONE",p.telephone=angular.copy(s),p.telephones=o,p.newTelephone=!1,p.telephone||(p.telephone={role:"telephone",autointernal:!0},p.title="STAFF.NEW_TELEPHONE",p.newTelephone=!0),p.addNewTelephone=l,p.saveTelephone=d,p.deleteTelephone=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","telephones","telephone","api"],angular.module("app.staff").controller("CreateOrEditTelephoneDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],n.user.changePassword({id:s.telephone.id,newPassword:s.password}).$promise.then(function(){t.success({title:"Telephone password properly updated!"}),o()}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.telephone.changePassword"}]})}function o(){e.hide()}var s=this;s.errors=[],s.telephone=a,s.password="",s.savePassword=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","api","telephone"],angular.module("app.staff").controller("TelephonechangepasswordController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"TelephonechangepasswordController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/telephones/edit/changepassword/changepassword.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{telephone:e,telephones:d.telephones?d.telephones.rows:[]}})}function r(){e.go("app.staff.telephones")}function l(){i.user.update({id:d.telephone.id},d.telephone).$promise.then(function(){a.success({title:"Telephone updated!",msg:d.telephone.name?d.telephone.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.telephone=e.params.telephone||o||{},d.selectedTab=e.params.tab||0,d.changepassworddialog=s,d.gotoTelephones=r,d.saveTelephone=l}e.$inject=["$state","$mdDialog","$document","toasty","api","telephone"],angular.module("app.staff").controller("TelephoneController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.staff.telephones.edit",{id:e.id,telephone:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the telephone?").htmlContent("<b>"+(e.name||"telephone")+"</b> will be deleted.").ariaLabel("delete telephone").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.telephones=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.user.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTelephoneDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/telephones/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{telephone:t,telephones:A.telephones.rows}})}function v(e){l.user.delete({id:e.id}).$promise.then(function(){_.remove(A.telephones.rows,{id:e.id}),A.telephones.count-=1,A.telephones.rows.length||A.getTelephones(),c.success({title:"Telephone deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTelephones);return A.selectedTelephones=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected telephones?").htmlContent("<b>"+A.selectedTelephones.length+" selected</b> will be deleted.").ariaLabel("delete Telephones").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTelephones.forEach(function(e){v(e)}),A.selectedTelephones=[]})}function E(){A.selectedTelephones=[]}function y(){A.selectedTelephones=A.telephones.rows}var A=this;A.telephones=r||{count:0,rows:[]},A.table="telephones",A.listOrder="",A.listOrderAsc=null,A.selectedTelephones=[],A.query={fields:"createdAt,updatedAt,id,role,fullname,name,email,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup",role:"telephone",sort:"-updatedAt",limit:10,page:1},A.arraytransport=_.keyBy([{option:"udp",value:"'udp'"},{option:"tcp",value:"'tcp'"},{option:"ws",value:"'ws'"},{option:"wss",value:"'wss'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraynat=_.keyBy([{option:"force_rport",value:"'force_rport'"},{option:"comedia",value:"'comedia'"},{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"never",value:"'never'"},{option:"route",value:"'route'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayallow=_.keyBy([{option:"alaw",value:"'alaw'"},{option:"ulaw",value:"'ulaw'"},{option:"gsm",value:"'gsm'"},{option:"g729",value:"'g729'"},{option:"ilbc",value:"'ilbc'"},{option:"opus",value:"'opus'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getTelephones=g,A.createOrEditTelephone=h,A.deleteTelephone=v,A.exportSelectedTelephones=b,A.deleteSelectedTelephones=f,A.deselectTelephones=E,A.selectAllTelephones=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTelephones())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","telephones","api","msUtils","toasty"],angular.module("app.staff").controller("TelephonesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.user.save(p.user).$promise.then(function(e){p.users.unshift(e),i.success({title:"User properly created",msg:p.user.name?p.user.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.user.update({id:p.user.id},p.user).$promise.then(function(e){var t=_.find(p.users,{id:e.id});t&&_.merge(t,e),i.success({title:"User properly saved!",msg:p.user.name?p.user.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The user will be deleted.").ariaLabel("Delete User").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.user.delete({id:p.user.id}).$promise.then(function(){_.remove(p.users,{id:p.user.id}),i.success({title:"User properly deleted!",msg:(p.user.name||"user")+" has been deleted!"}),u(p.user)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.user.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="STAFF.EDIT_USER",p.user=angular.copy(s),p.users=o,p.newUser=!1,p.user||(p.user={role:"user",autointernal:!0},p.title="STAFF.NEW_USER",p.newUser=!0),p.addNewUser=l,p.saveUser=d,p.deleteUser=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","users","user","api"],angular.module("app.staff").controller("CreateOrEditUserDialogController",e)}(),function(){"use strict";function e(e,t){function n(e){s.user=angular.copy(e),s.ngFlowOptions.target="api/users/"+s.user.id+"/avatar",s.user.images=[]}function a(e){var n=["png","jpg"];if(_.includes(n,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.user.images.unshift(a),!0}return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1}function i(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function o(e,t){angular.forEach(s.user.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.user={},s.ngFlowOptions={chunkSize:8388608,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=i,s.fileSuccess=o,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.staff").controller("Userchange_avatarController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],n.user.changePassword({id:s.user.id,newPassword:s.password}).$promise.then(function(){t.success({title:"User password properly updated!"}),o()}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.user.changePassword"}]})}function o(){e.hide()}var s=this;s.errors=[],s.user=a,s.password="",s.savePassword=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","api","user"],angular.module("app.staff").controller("UserchangepasswordController",e)}(),function(){"use strict";function e(e,t,n){function a(e){o.user=e}function i(t,a){if((a||t).enabled){if(a)a.enabled=!0,o.user.permissions.push(a.id);else for(var i=0;i<t.children.length;i++)t.children[i].enabled=!0,o.user.permissions.push(t.children[i].id);t.enabled=!0,o.user.permissions.push(t.id)}else if(a)a.enabled=!1,_.remove(o.user.permissions,function(e){return a.id===e}),_.filter(t.children,{enabled:!1}).length===t.children.length&&(t.enabled=!1,_.remove(o.user.permissions,function(e){return t.id===e}));else{t.enabled=!1,_.remove(o.user.permissions,function(e){return t.id===e});for(var s=0;s<t.children.length;s++)t.children[s].enabled=!1,_.remove(o.user.permissions,function(e){return t.children[s].id===e})}return e.user.update({id:o.user.id,permissions:_.uniq(o.user.permissions)}).$promise.then(function(){n.success({title:"user updated!",msg:o.user.name?o.user.name+" has been updated!":""})}).catch(function(e){console.error(e)})}var o=this;o.user={},o.navigation=t.getNavigation(),o.init=a,o.onChange=i}e.$inject=["api","msNavigationService","toasty"],angular.module("app.staff").controller("UserPermissionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){n.user[m.isVoiceRealtime()?"getVoiceQueuesRt":"getQueues"]({id:m.user.id,fields:m.isVoiceRealtime()?"VoiceQueueId,queue_name,penalty":"id,name,strategy",channel:i,nolimit:!0}).$promise.then(function(e){return m.isVoiceRealtime()?m.selectedItems=e.rows?_.map(e.rows,function(e){return{id:e.VoiceQueueId,name:e.queue_name,penalty:e.hasOwnProperty("penalty")?"penalty "+e.penalty:"penalty 0",strategy:""}}):[]:m.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserVoiceQueue?"penalty "+e.UserVoiceQueue.penalty:"",e}):[],n[m.apiname].get({fields:"id,name,strategy",nolimit:!0,type:s}).$promise}).then(function(e){m.items=e.rows?e.rows:[],m.selectedItems=_.intersectionBy(m.selectedItems,m.items,"id"),m.dualMultiselectOptions.selectedItems=m.selectedItems,m.dualMultiselectOptions.items=_.differenceBy(m.items,m.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETQUEUES",msg:e.status?JSON.stringify(e.data):e.toString()})})}function d(){return o&&"voice"===i}function c(){e.hide()}var m=this;m.user=a,m.penalty=0,m.apiname=i+"Queue",m.title=r.instant("STAFF.QUEUEADD_USER_"+i.toUpperCase()+"_"+s.toUpperCase()),m.items=[],m.selectedItems=[],m.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"strategy",line3:"penalty",labelAll:r.instant("STAFF.ALL_QUEUES_"+i.toUpperCase()+"_"+s.toUpperCase()),labelSelected:r.instant("STAFF.SELECTED_QUEUES_"+i.toUpperCase()+"_"+s.toUpperCase()),transferCallback:function(e,a){n.user[a?"removeQueues":"addQueues"]({id:m.user.id,ids:_.map(e,"id"),channel:i,penalty:m.penalty||0,realtime:o}).$promise.then(function(){l(),t.success({title:"Queue properly "+(a?"removed":"added"),msg:"Queue has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:USER.ADDQUEUES",msg:e.status?JSON.stringify(e.data):e.toString()})})}},m.closeDialog=c,m.isVoiceRealtime=d,l()}e.$inject=["$mdDialog","toasty","api","user","channel","realtime","direction","$translate"],angular.module("app.staff").controller("UserqueueaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a,i){t.show({controller:"UserqueueaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/users/edit/queueadd/queueadd.html",parent:angular.element(n.body),targetEvent:i,clickOutsideToClose:!0,locals:{user:e,users:c.users?c.users.rows:[],channel:a,realtime:!1,direction:"inbound"}})}function r(e,a){t.show({controller:"UserchangepasswordController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/users/edit/changepassword/changepassword.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{user:e,users:c.users?c.users.rows:[]}})}function l(){e.go("app.staff.users")}function d(){i.user.update({id:c.user.id},c.user).$promise.then(function(){a.success({title:"User updated!",msg:c.user.name?c.user.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.user=e.params.user||o||{},c.selectedTab=e.params.tab||0,c.queueaddchannel=s,c.changepassworddialog=r,c.gotoUsers=l,c.saveUser=d}e.$inject=["$state","$mdDialog","$document","toasty","api","user"],angular.module("app.staff").controller("UserController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.staff.users.edit",{id:e.id,user:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the user?").htmlContent("<b>"+(e.name||"user")+"</b> will be deleted.").ariaLabel("delete user").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.users=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.user.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditUserDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/users/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{user:t,users:A.users.rows}})}function v(e){l.user.delete({id:e.id}).$promise.then(function(){_.remove(A.users.rows,{id:e.id}),A.users.count-=1,A.users.rows.length||A.getUsers(),c.success({title:"User deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedUsers);return A.selectedUsers=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected users?").htmlContent("<b>"+A.selectedUsers.length+" selected</b> will be deleted.").ariaLabel("delete Users").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedUsers.forEach(function(e){v(e)}),A.selectedUsers=[]})}function E(){A.selectedUsers=[]}function y(){A.selectedUsers=A.users.rows}var A=this;A.users=r||{count:0,rows:[]},A.table="users",A.listOrder="",A.listOrderAsc=null,A.selectedUsers=[],A.query={fields:"createdAt,updatedAt,role,id,fullname,name,email,userpic,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup,permissions",role:"admin,user",sort:"-updatedAt",limit:10,page:1},A.arrayrole=_.keyBy([{option:"Admin",value:"'admin'"},{option:"User",value:"'user'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytransport=_.keyBy([{option:"udp",value:"'udp'"},{option:"tcp",value:"'tcp'"},{option:"ws",value:"'ws'"},{option:"wss",value:"'wss'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraynat=_.keyBy([{option:"force_rport",value:"'force_rport'"},{option:"comedia",value:"'comedia'"},{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"never",value:"'never'"},{option:"route",value:"'route'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayallow=_.keyBy([{option:"alaw",value:"'alaw'"},{option:"ulaw",value:"'ulaw'"},{option:"gsm",value:"'gsm'"},{option:"g729",value:"'g729'"},{option:"ilbc",value:"'ilbc'"},{option:"opus",value:"'opus'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getUsers=g,A.createOrEditUser=h,A.deleteUser=v,A.exportSelectedUsers=b,A.deleteSelectedUsers=f,A.deselectUsers=E,A.selectAllUsers=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getUsers())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","users","api","msUtils","toasty"],angular.module("app.staff").controller("UsersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditCannedAnswerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/cannedAnswers/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{cannedAnswer:e,cannedAnswers:A.cannedAnswers.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the cannedAnswer?").htmlContent("<b>"+(e.name||"cannedAnswer")+"</b> will be deleted.").ariaLabel("delete cannedAnswer").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.cannedAnswers=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.cannedAnswer.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditCannedAnswerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/cannedAnswers/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{cannedAnswer:t,cannedAnswers:A.cannedAnswers.rows}})}function v(e){l.cannedAnswer.delete({id:e.id}).$promise.then(function(){_.remove(A.cannedAnswers.rows,{id:e.id}),A.cannedAnswers.count-=1,A.cannedAnswers.rows.length||A.getCannedAnswers(),c.success({title:"CannedAnswer deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcannedAnswer",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedCannedAnswers);return A.selectedCannedAnswers=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected cannedAnswers?").htmlContent("<b>"+A.selectedCannedAnswers.length+" selected</b> will be deleted.").ariaLabel("delete CannedAnswers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedCannedAnswers.forEach(function(e){v(e)}),A.selectedCannedAnswers=[]})}function E(){A.selectedCannedAnswers=[]}function y(){A.selectedCannedAnswers=A.cannedAnswers.rows}var A=this;A.cannedAnswers=r||{count:0,rows:[]},A.table="cannedAnswers",A.listOrder="",A.listOrderAsc=null,A.selectedCannedAnswers=[],A.query={fields:"createdAt,updatedAt,id,key,value,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getCannedAnswers=g,A.createOrEditCannedAnswer=h,A.deleteCannedAnswer=v,A.exportSelectedCannedAnswers=b,A.deleteSelectedCannedAnswers=f,A.deselectCannedAnswers=E,A.selectAllCannedAnswers=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getCannedAnswers())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","cannedAnswers","api","msUtils","toasty"],angular.module("app.tools").controller("CannedAnswersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cannedAnswer.save(p.cannedAnswer).$promise.then(function(e){p.cannedAnswers.unshift(e),i.success({title:"CannedAnswer properly created",msg:p.cannedAnswer.name?p.cannedAnswer.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cannedAnswer.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cannedAnswer.update({id:p.cannedAnswer.id},p.cannedAnswer).$promise.then(function(e){var t=_.find(p.cannedAnswers,{id:e.id});t&&_.merge(t,e),i.success({title:"CannedAnswer properly saved!",msg:p.cannedAnswer.name?p.cannedAnswer.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cannedAnswer.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The cannedAnswer will be deleted.").ariaLabel("Delete CannedAnswer").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cannedAnswer.delete({id:p.cannedAnswer.id}).$promise.then(function(){_.remove(p.cannedAnswers,{id:p.cannedAnswer.id}),i.success({title:"CannedAnswer properly deleted!",msg:(p.cannedAnswer.name||"cannedAnswer")+" has been deleted!"}),u(p.cannedAnswer)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_CANNEDANSWER",p.cannedAnswer=angular.copy(s),p.cannedAnswers=o,p.newCannedAnswer=!1,p.cannedAnswer||(p.cannedAnswer={},p.title="TOOLS.NEW_CANNEDANSWER",p.newCannedAnswer=!0),p.addNewCannedAnswer=l,p.saveCannedAnswer=d,p.deleteCannedAnswer=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","cannedAnswers","cannedAnswer","api"],angular.module("app.tools").controller("CreateOrEditCannedAnswerDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.dashboard.save(p.customDashboard).$promise.then(function(e){p.customDashboards.unshift(e),i.success({title:"CustomDashboard properly created",msg:p.customDashboard.name?p.customDashboard.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboard.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.dashboard.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.dashboard.update({id:p.customDashboard.id},p.customDashboard).$promise.then(function(e){var t=_.find(p.customDashboards,{id:e.id});t&&_.merge(t,e),i.success({title:"CustomDashboard properly saved!",msg:p.customDashboard.name?p.customDashboard.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboard.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.dashboard.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The customDashboard will be deleted.").ariaLabel("Delete CustomDashboard").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.dashboard.delete({id:p.customDashboard.id}).$promise.then(function(){_.remove(p.customDashboards,{id:p.customDashboard.id}),i.success({title:"CustomDashboard properly deleted!",msg:(p.customDashboard.name||"customDashboard")+" has been deleted!"}),u(p.customDashboard)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboard.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_CUSTOMDASHBOARD",p.customDashboard=angular.copy(s),p.customDashboards=o,p.newCustomDashboard=!1,p.customDashboard||(p.customDashboard={interval:5},p.title="TOOLS.NEW_CUSTOMDASHBOARD",p.newCustomDashboard=!0),p.addNewCustomDashboard=l,p.saveCustomDashboard=d,p.deleteCustomDashboard=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","customDashboards","customDashboard","api"],angular.module("app.tools").controller("CreateOrEditCustomDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.customDashboards.edit",{id:e.id,customDashboard:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the customDashboard?").htmlContent("<b>"+(e.name||"customDashboard")+"</b> will be deleted.").ariaLabel("delete customDashboard").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.customDashboards=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.dashboard.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditCustomDashboardDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/customDashboards/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{customDashboard:t,customDashboards:A.customDashboards.rows}})}function v(e){l.dashboard.delete({id:e.id}).$promise.then(function(){_.remove(A.customDashboards.rows,{id:e.id}),A.customDashboards.count-=1,A.customDashboards.rows.length||A.getCustomDashboards(),c.success({title:"CustomDashboard deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdashboard",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedCustomDashboards);return A.selectedCustomDashboards=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected customDashboards?").htmlContent("<b>"+A.selectedCustomDashboards.length+" selected</b> will be deleted.").ariaLabel("delete CustomDashboards").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedCustomDashboards.forEach(function(e){v(e)}),A.selectedCustomDashboards=[]})}function E(){A.selectedCustomDashboards=[]}function y(){A.selectedCustomDashboards=A.customDashboards.rows}var A=this;A.customDashboards=r||{count:0,rows:[]},A.table="customDashboards",A.listOrder="",A.listOrderAsc=null,A.selectedCustomDashboards=[],A.query={fields:"createdAt,updatedAt,id,name,interval,description",sort:"-updatedAt",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getCustomDashboards=g,A.createOrEditCustomDashboard=h,A.deleteCustomDashboard=v,A.exportSelectedCustomDashboards=b,A.deleteSelectedCustomDashboards=f,A.deselectCustomDashboards=E,A.selectAllCustomDashboards=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getCustomDashboards())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","customDashboards","api","msUtils","toasty"],angular.module("app.tools").controller("CustomDashboardsController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(e){return console.log(e),i.dashboardItem.delete({id:e}).$promise.then(function(t){_.remove(c.items.rows,{id:e})}).catch(function(e){console.error(e)})}function s(e,t,n){return i.dashboardItem.update(n).$promise.catch(function(e){console.error(e)})}function r(e){t.show({controller:"CreateOrEditDashboardItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/customDashboards/edit/dashboard/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{dashboarditem:null,dashboard:c.items.rows}})}function l(e){return c.customDashboard=e,d=a(function(){return i.dashboard.run({id:c.customDashboard.id})},1e3*c.customDashboard.interval),i.dashboard.getItems({id:e.id,fields:"id,type,sizeX,sizeY,row,col,data"}).$promise.then(function(e){c.items=e}).catch(function(e){console.error(e)})}var d,c=this;c.customDashboard={},c.gridOptions={resizable:{enabled:!0,stop:s},draggable:{enabled:!0,stop:s}},c.items={rows:[],count:0},c.init=l,c.addItem=r,c.updateItem=s,c.deleteItem=o,e.$on("$destroy",function(){a.cancel(d)})}e.$inject=["$scope","$mdDialog","$document","$interval","api"],angular.module("app.tools").controller("CustomDashboardCustomDashboardController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.dashboard.addItem({id:t.params.id},p.dashboarditem).$promise.then(function(e){p.dashboard.unshift(e),i.success({title:"DashboardItem properly created",msg:p.dashboarditem.name?p.dashboarditem.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboardItem.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.dashboardItem.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.dashboardItem.update({id:p.dashboarditem.id},p.dashboarditem).$promise.then(function(e){var t=_.find(p.dashboard,{id:e.id});t&&_.merge(t,e),i.success({title:"DashboardItem properly saved!",msg:p.dashboarditem.name?p.dashboarditem.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboardItem.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.dashboardItem.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The dashboarditem will be deleted.").ariaLabel("Delete DashboardItem").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.dashboardItem.delete({id:p.dashboarditem.id}).$promise.then(function(){_.remove(p.dashboard,{id:p.dashboarditem.id}),i.success({title:"DashboardItem properly deleted!",msg:(p.dashboarditem.name||"dashboarditem")+" has been deleted!"}),u(p.dashboarditem)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboardItem.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_DASHBOARDITEM",p.dashboarditem=angular.copy(s),p.dashboard=o,p.newDashboardItem=!1,p.dashboarditem||(p.dashboarditem={type:"counter"},p.title="TOOLS.NEW_DASHBOARDITEM",p.newDashboardItem=!0),p.addNewDashboardItem=l,p.saveDashboardItem=d,p.deleteDashboardItem=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","dashboard","dashboarditem","api"],angular.module("app.tools").controller("CreateOrEditDashboardItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.customDashboards")}function r(){i.dashboard.update({id:l.customDashboard.id},l.customDashboard).$promise.then(function(){a.success({title:"CustomDashboard updated!",msg:l.customDashboard.name?l.customDashboard.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdashboard",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.customDashboard=e.params.customDashboard||o||{},l.selectedTab=e.params.tab||0,l.gotoCustomDashboards=s,l.saveCustomDashboard=r}e.$inject=["$state","$mdDialog","$document","toasty","api","customDashboard"],angular.module("app.tools").controller("CustomDashboardController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.interval.save(p.interval).$promise.then(function(e){p.intervals.unshift(e),i.success({title:"Interval properly created",msg:p.interval.name?p.interval.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.interval.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.interval.update({id:p.interval.id},p.interval).$promise.then(function(e){var t=_.find(p.intervals,{id:e.id});t&&_.merge(t,e),i.success({title:"Interval properly saved!",msg:p.interval.name?p.interval.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.interval.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The interval will be deleted.").ariaLabel("Delete Interval").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.interval.delete({id:p.interval.id}).$promise.then(function(){_.remove(p.intervals,{id:p.interval.id}),i.success({title:"Interval properly deleted!",msg:(p.interval.name||"interval")+" has been deleted!"}),u(p.interval)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_INTERVAL",p.interval=angular.copy(s),p.intervals=o,p.newInterval=!1,p.interval||(p.interval={},p.title="TOOLS.NEW_INTERVAL",p.newInterval=!0),p.addNewInterval=l,p.saveInterval=d,p.deleteInterval=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","intervals","interval","api"],angular.module("app.tools").controller("CreateOrEditIntervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom&&u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push("*"),u.monthDayFrom&&u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push("*"),u.monthFrom&&u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(i),u.intervals=o,u.newInterval=!1,u.types=["always","custom"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],h=p[1],v=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],y=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(y.split(":")[0])),f.setMinutes(Number(y.split(":")[1])),u.timeRangeTo=f}"*"!==h&&(u.dayOfWeekFrom=h.split("-")[0],u.dayOfWeekTo=h.split("-")[1]),"*"!==v&&(u.monthDayFrom=v.split("-")[0],u.monthDayTo=v.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditIntervalAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.interval=e,h.query.id=h.interval.id,h.getIntervalIntervals()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the interval?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete interval").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.intervalIntervals=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.interval.getIntervals(h.query,c).$promise}function u(e,t){i.show({controller:"EditIntervalAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/intervals/edit/apps/interval/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:t,intervals:h.intervalIntervals.rows}})}function p(e){r.interval.delete({id:e.id}).$promise.then(function(){_.remove(h.intervalIntervals.rows,{id:e.id}),h.intervalIntervals.count-=1,h.intervalIntervals.rows.length||h.getIntervalIntervals(),s.success({title:"Interval deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected intervals?").htmlContent("<b>"+h.selectedIntervalIntervals.length+" selected</b> will be deleted.").ariaLabel("delete intervals").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIntervalIntervals.forEach(function(e){p(e)}),h.selectedIntervalIntervals=[]})}var h=this;h.interval={},h.intervalIntervals={count:0,rows:[]},h.selectedIntervalIntervals=[],h.sortableTable={animation:100,onSort:function(e){r.interval.addIntervals({id:h.interval.id},e.models).$promise.then(function(e){h.intervalIntervals.rows=e}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:SORTABLETABLE",msg:e.data?JSON.stringify(e.data):e.toString()})})}},h.query={fields:"createdAt,updatedAt,id,name,interval,createdAt",nolimit:"true",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIntervalIntervals=m,h.createOrEditIntervalInterval=u,h.deleteIntervalInterval=p,h.deleteSelectedIntervalIntervals=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIntervalIntervals())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.tools").controller("IntervalIntervalsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.interval.save(p.interval).$promise.then(function(e){p.intervals.unshift(e),i.success({title:"Interval properly created",msg:p.interval.name?p.interval.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.interval.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.interval.update({id:p.interval.id},p.interval).$promise.then(function(e){var t=_.find(p.intervals,{id:e.id});t&&_.merge(t,e),i.success({title:"Interval properly saved!",msg:p.interval.name?p.interval.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.interval.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The interval will be deleted.").ariaLabel("Delete Interval").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.interval.delete({id:p.interval.id}).$promise.then(function(){_.remove(p.intervals,{id:p.interval.id}),i.success({title:"Interval properly deleted!",msg:(p.interval.name||"interval")+" has been deleted!"}),u(p.interval)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_INTERVAL",p.interval=angular.copy(s),p.intervals=o,p.newInterval=!1,p.interval||(p.interval={},p.title="TOOLS.NEW_INTERVAL",p.newInterval=!0),p.addNewInterval=l,p.saveInterval=d,p.deleteInterval=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","intervals","interval","api"],angular.module("app.tools").controller("CreateOrEditIntervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.intervals")}function r(){i.interval.update({id:l.interval.id},l.interval).$promise.then(function(){a.success({title:"Interval updated!",msg:l.interval.name?l.interval.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.interval=e.params.interval||o||{},l.selectedTab=e.params.tab||0,l.gotoIntervals=s,l.saveInterval=r}e.$inject=["$state","$mdDialog","$document","toasty","api","interval"],angular.module("app.tools").controller("IntervalController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.intervals.edit",{id:e.id,interval:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the interval?").htmlContent("<b>"+(e.name||"interval")+"</b> will be deleted.").ariaLabel("delete interval").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.intervals=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.interval.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditIntervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/intervals/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:t,intervals:A.intervals.rows}})}function v(e){l.interval.delete({id:e.id}).$promise.then(function(){_.remove(A.intervals.rows,{id:e.id}),A.intervals.count-=1,A.intervals.rows.length||A.getIntervals(),c.success({title:"Interval deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedIntervals);return A.selectedIntervals=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected intervals?").htmlContent("<b>"+A.selectedIntervals.length+" selected</b> will be deleted.").ariaLabel("delete Intervals").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedIntervals.forEach(function(e){v(e)}),A.selectedIntervals=[]})}function E(){A.selectedIntervals=[]}function y(){A.selectedIntervals=A.intervals.rows}var A=this;A.intervals=r||{count:0,rows:[]},A.table="intervals",A.listOrder="",A.listOrderAsc=null,A.selectedIntervals=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",IntervalId:"null",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getIntervals=g,A.createOrEditInterval=h,A.deleteInterval=v,A.exportSelectedIntervals=b,A.deleteSelectedIntervals=f,A.deselectIntervals=E,A.selectAllIntervals=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getIntervals())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","intervals","api","msUtils","toasty"],angular.module("app.tools").controller("IntervalsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.pause.save(p.pause).$promise.then(function(e){p.pauses.unshift(e),i.success({title:"Pause properly created",msg:p.pause.name?p.pause.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.pause.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.pause.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.pause.update({id:p.pause.id},p.pause).$promise.then(function(e){var t=_.find(p.pauses,{id:e.id});t&&_.merge(t,e),i.success({title:"Pause properly saved!",msg:p.pause.name?p.pause.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.pause.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.pause.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The pause will be deleted.").ariaLabel("Delete Pause").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.pause.delete({id:p.pause.id}).$promise.then(function(){_.remove(p.pauses,{id:p.pause.id}),i.success({title:"Pause properly deleted!",msg:(p.pause.name||"pause")+" has been deleted!"}),u(p.pause)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.pause.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_PAUSE",p.pause=angular.copy(s),p.pauses=o,p.newPause=!1,p.pause||(p.pause={},p.title="TOOLS.NEW_PAUSE",p.newPause=!0),p.addNewPause=l,p.savePause=d,p.deletePause=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","pauses","pause","api"],angular.module("app.tools").controller("CreateOrEditPauseDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditPauseDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/pauses/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{pause:e,pauses:A.pauses.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the pause?").htmlContent("<b>"+(e.name||"pause")+"</b> will be deleted.").ariaLabel("delete pause").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.pauses=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.pause.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditPauseDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/pauses/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{pause:t,pauses:A.pauses.rows}})}function v(e){l.pause.delete({id:e.id}).$promise.then(function(){_.remove(A.pauses.rows,{id:e.id}),A.pauses.count-=1,A.pauses.rows.length||A.getPauses(),c.success({title:"Pause deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETpause",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedPauses);return A.selectedPauses=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected pauses?").htmlContent("<b>"+A.selectedPauses.length+" selected</b> will be deleted.").ariaLabel("delete Pauses").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedPauses.forEach(function(e){v(e)}),A.selectedPauses=[]})}function E(){A.selectedPauses=[]}function y(){A.selectedPauses=A.pauses.rows}var A=this;A.pauses=r||{count:0,rows:[]},A.table="pauses",A.listOrder="",A.listOrderAsc=null,A.selectedPauses=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getPauses=g,A.createOrEditPause=h,A.deletePause=v,A.exportSelectedPauses=b,A.deleteSelectedPauses=f,A.deselectPauses=E,A.selectAllPauses=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getPauses())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","pauses","api","msUtils","toasty"],angular.module("app.tools").controller("PausesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.schedule.save(p.schedule).$promise.then(function(e){p.schedules.unshift(e),i.success({title:"Schedule properly created",msg:p.schedule.name?p.schedule.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.schedule.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.schedule.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.schedule.update({id:p.schedule.id},p.schedule).$promise.then(function(e){var t=_.find(p.schedules,{id:e.id});t&&_.merge(t,e),i.success({title:"Schedule properly saved!",msg:p.schedule.name?p.schedule.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.schedule.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.schedule.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The schedule will be deleted.").ariaLabel("Delete Schedule").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.schedule.delete({id:p.schedule.id}).$promise.then(function(){_.remove(p.schedules,{id:p.schedule.id}),i.success({title:"Schedule properly deleted!",msg:(p.schedule.name||"schedule")+" has been deleted!"}),u(p.schedule)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.schedule.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_SCHEDULE",p.schedule=angular.copy(s),p.schedules=o,p.newSchedule=!1,p.schedule||(p.schedule={type:"report",reportType:"default",reportOutput:"CSV",cronType:"currentDay",cron:"*/15 * * * *",weekDays:"monday",reportRange:"last30",sendMail:!1,active:!0},p.title="TOOLS.NEW_SCHEDULE",p.newSchedule=!0),p.addNewSchedule=l,p.saveSchedule=d,p.deleteSchedule=c,p.getDateFromString=m,p.closeDialog=u,r.analyticCustomReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.customReports=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcustomReports",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.analyticDefaultReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.defaultReports=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdefaultReports",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","schedules","schedule","api"],angular.module("app.tools").controller("CreateOrEditScheduleDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.schedules")}function r(){i.schedule.update({id:l.schedule.id},l.schedule).$promise.then(function(){a.success({title:"Schedule updated!",msg:l.schedule.name?l.schedule.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETschedule",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.schedule=e.params.schedule||o||{},l.selectedTab=e.params.tab||0,l.gotoScheduler=s,l.saveSchedule=r,i.analyticCustomReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.customReports=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcustomReports",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.analyticDefaultReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.defaultReports=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdefaultReports",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","schedule"],angular.module("app.tools").controller("ScheduleController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.schedules.edit",{id:e.id,schedule:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the schedule?").htmlContent("<b>"+(e.name||"schedule")+"</b> will be deleted.").ariaLabel("delete schedule").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.schedules=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.schedule.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditScheduleDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/schedules/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{schedule:t,schedules:A.schedules.rows}})}function v(e){l.schedule.delete({id:e.id}).$promise.then(function(){_.remove(A.schedules.rows,{id:e.id}),A.schedules.count-=1,A.schedules.rows.length||A.getScheduler(),c.success({title:"Schedule deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETschedule",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedScheduler);return A.selectedScheduler=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected schedules?").htmlContent("<b>"+A.selectedScheduler.length+" selected</b> will be deleted.").ariaLabel("delete Schedules").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedScheduler.forEach(function(e){v(e)}),A.selectedScheduler=[]})}function E(){A.selectedScheduler=[]}function y(){A.selectedScheduler=A.schedules.rows}var A=this;A.schedules=r||{count:0,rows:[]},A.table="schedules",A.listOrder="",A.listOrderAsc=null,A.selectedScheduler=[],A.query={fields:"createdAt,updatedAt,id,name,type,reportType,reportId,reportId,reportOutput,cronType,validityStart,validityEnd,cron,weekDays,monthDay,hour,reportRange,sendMail,MailServerOutId,email,active,description",sort:"-updatedAt",limit:10,page:1},A.arraytype=_.keyBy([{option:"Report",value:"'report'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayreportType=_.keyBy([{option:"Default",value:"'default'"},{option:"Custom",value:"'custom'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayreportOutput=_.keyBy([{option:"CSV",value:"'CSV'"},{option:"PDF",value:"'PDF'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycronType=_.keyBy([{option:"CurrentDay",value:"'currentDay'"},{option:"Daily",value:"'daily'"},{option:"Weekly",value:"'weekly'"},{option:"Monthly",value:"'monthly'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycron=_.keyBy([{option:"15min",value:"'*/15 * * * *'"},{option:"30min",value:"'*/30 * * * *'"},{option:"1h",value:"'0 * * * *'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayweekDays=_.keyBy([{option:"MON",value:"'monday'"},{option:"TUE",value:"'tuesday'"},{option:"WED",value:"'wednesday'"},{option:"THU",value:"'thursday'"},{option:"FRI",value:"'friday'"},{option:"SAT",value:"'saturday'"},{option:"SUN",value:"'sunday'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayreportRange=_.keyBy([{option:"PREVIOUS_DAY",value:"'yesterday'"},{option:"LAST_SEVEN_DAYS",value:"'last7'"},{option:"LAST_THIRTY_DAYS",value:"'last30'"},{option:"LAST_MONTH",value:"'lastMonth'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getScheduler=g,A.createOrEditSchedule=h,A.deleteSchedule=v,A.exportSelectedScheduler=b,A.deleteSelectedScheduler=f,A.deselectScheduler=E,A.selectAllScheduler=y,l.analyticCustomReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){A.customReports=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcustomReports",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.analyticDefaultReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){A.defaultReports=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdefaultReports",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getScheduler())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","schedules","api","msUtils","toasty"],angular.module("app.tools").controller("SchedulesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.sound.save(p.sound).$promise.then(function(e){p.sounds.unshift(e),i.success({title:"Sound properly created",msg:p.sound.name?p.sound.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.sound.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.sound.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.sound.update({id:p.sound.id},p.sound).$promise.then(function(e){var t=_.find(p.sounds,{id:e.id});t&&_.merge(t,e),i.success({title:"Sound properly saved!",msg:p.sound.name?p.sound.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.sound.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.sound.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The sound will be deleted.").ariaLabel("Delete Sound").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.sound.delete({id:p.sound.id}).$promise.then(function(){_.remove(p.sounds,{id:p.sound.id}),i.success({title:"Sound properly deleted!",msg:(p.sound.name||"sound")+" has been deleted!"}),u(p.sound)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.sound.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_SOUND",p.sound=angular.copy(s),p.sounds=o,p.newSound=!1,p.sound||(p.sound={},p.title="TOOLS.NEW_SOUND",p.newSound=!0),p.addNewSound=l,p.saveSound=d,p.deleteSound=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","sounds","sound","api"],angular.module("app.tools").controller("CreateOrEditSoundDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditSoundDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/sounds/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{sound:e,sounds:x.sounds.rows}})}function u(e,n){return l.sound.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/sounds/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsound",msg:e.data?JSON.stringify(e.data):e.toString()})})}function p(e,t){var n=i.confirm().title("Are you sure want to delete the sound?").htmlContent("<b>"+(e.name||"sound")+"</b> will be deleted.").ariaLabel("delete sound").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function g(e){x.sounds=e||{count:0,rows:[]}}function h(){x.query.offset=(x.query.page-1)*x.query.limit,x.promise=l.sound.get(x.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditSoundDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/sounds/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{sound:t,sounds:x.sounds.rows}})}function b(e){l.sound.delete({id:e.id}).$promise.then(function(){_.remove(x.sounds.rows,{id:e.id}),x.sounds.count-=1,x.sounds.rows.length||x.getSounds(),c.success({title:"Sound deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsound",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(x.selectedSounds);return x.selectedSounds=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected sounds?").htmlContent("<b>"+x.selectedSounds.length+" selected</b> will be deleted.").ariaLabel("delete Sounds").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){x.selectedSounds.forEach(function(e){b(e)}),x.selectedSounds=[]})}function y(){x.selectedSounds=[]}function A(){x.selectedSounds=x.sounds.rows}function C(e){i.show({controller:"UploadSoundDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/sounds/uploadsound/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{sounds:x.sounds.rows}})}var x=this;x.sounds=r||{count:0,rows:[]},x.table="sounds",x.listOrder="",x.listOrderAsc=null,x.selectedSounds=[],x.query={fields:"createdAt,updatedAt,id,name,audio,description",sort:"-updatedAt",limit:10,page:1},x.editdialog=m,x.downloadfile=u,x.deleteconfirm=p,x.success=g,x.getSounds=h,x.createOrEditSound=v,x.deleteSound=b,x.exportSelectedSounds=f,x.deleteSelectedSounds=E,x.deselectSounds=y,x.selectAllSounds=A,x.uploadSound=C;var T=!0,S=1;e.$watch("vm.query.filter",function(e,t){T?s(function(){T=!1}):(t||(S=x.query.page),e!==t&&(x.query.page=1),e||(x.query.page=S),x.getSounds())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","sounds","api","msUtils","toasty"],angular.module("app.tools").controller("SoundsController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(e){var t=["wav","mp3","gsm"];if(_.includes(t,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return d.uploadSounds.unshift(a),!0}return n.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+t.join()}),!1}function s(){d.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},d.ngFlow.flow.upload()}function r(e,t){d.sounds.unshift(JSON.parse(t)),angular.forEach(d.uploadSounds,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="sound"}})}function l(){t.hide()}var d=this;d.errors=[],d.title="TOOLS.UPLOAD_SOUND",d.sounds=a,d.uploadSounds=[],d.sound={},d.ngFlowOptions={chunkSize:15728640,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,target:"api/sounds"},d.ngFlow={flow:{}},d.dropping=!1,d.fileAdded=o,d.upload=s,d.fileSuccess=r,d.closeDialog=l}e.$inject=["$cookies","$mdDialog","toasty","sounds","api"],angular.module("app.tools").controller("UploadSoundDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.tag.save(p.tag).$promise.then(function(e){p.tags.unshift(e),i.success({title:"Tag properly created",msg:p.tag.name?p.tag.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.tag.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.tag.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.tag.update({id:p.tag.id},p.tag).$promise.then(function(e){var t=_.find(p.tags,{id:e.id});t&&_.merge(t,e),i.success({title:"Tag properly saved!",msg:p.tag.name?p.tag.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.tag.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.tag.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The tag will be deleted.").ariaLabel("Delete Tag").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.tag.delete({id:p.tag.id}).$promise.then(function(){_.remove(p.tags,{id:p.tag.id}),i.success({title:"Tag properly deleted!",msg:(p.tag.name||"tag")+" has been deleted!"}),u(p.tag)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.tag.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_TAG",p.tag=angular.copy(s),p.tags=o,p.newTag=!1,p.tag||(p.tag={},p.title="TOOLS.NEW_TAG",p.newTag=!0),p.addNewTag=l,p.saveTag=d,p.deleteTag=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","tags","tag","api"],angular.module("app.tools").controller("CreateOrEditTagDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditTagDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/tags/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{tag:e,tags:A.tags.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the tag?").htmlContent("<b>"+(e.name||"tag")+"</b> will be deleted.").ariaLabel("delete tag").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.tags=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.tag.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTagDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/tags/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{tag:t,tags:A.tags.rows}})}function v(e){l.tag.delete({id:e.id}).$promise.then(function(){_.remove(A.tags.rows,{id:e.id}),A.tags.count-=1,A.tags.rows.length||A.getTags(),c.success({title:"Tag deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtag",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTags);return A.selectedTags=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected tags?").htmlContent("<b>"+A.selectedTags.length+" selected</b> will be deleted.").ariaLabel("delete Tags").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTags.forEach(function(e){v(e)}),A.selectedTags=[]})}function E(){A.selectedTags=[]}function y(){A.selectedTags=A.tags.rows}var A=this;A.tags=r||{count:0,rows:[]},A.table="tags",A.listOrder="",A.listOrderAsc=null,A.selectedTags=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getTags=g,A.createOrEditTag=h,A.deleteTag=v,A.exportSelectedTags=b,A.deleteSelectedTags=f,A.deselectTags=E,A.selectAllTags=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTags())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","tags","api","msUtils","toasty"],angular.module("app.tools").controller("TagsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.template.save(p.template).$promise.then(function(e){p.templates.unshift(e),i.success({title:"Template properly created",msg:p.template.name?p.template.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.template.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.template.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.template.update({id:p.template.id},p.template).$promise.then(function(e){var t=_.find(p.templates,{id:e.id});t&&_.merge(t,e),i.success({title:"Template properly saved!",msg:p.template.name?p.template.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.template.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.template.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The template will be deleted.").ariaLabel("Delete Template").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.template.delete({id:p.template.id}).$promise.then(function(){_.remove(p.templates,{id:p.template.id}),i.success({title:"Template properly deleted!",msg:(p.template.name||"template")+" has been deleted!"}),u(p.template)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.template.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_TEMPLATE",p.template=angular.copy(s),p.templates=o,p.newTemplate=!1,p.template||(p.template={},p.title="TOOLS.NEW_TEMPLATE",p.newTemplate=!0),p.addNewTemplate=l,p.saveTemplate=d,p.deleteTemplate=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","templates","template","api"],angular.module("app.tools").controller("CreateOrEditTemplateDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditTemplateDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/templates/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{template:e,templates:A.templates.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the template?").htmlContent("<b>"+(e.name||"template")+"</b> will be deleted.").ariaLabel("delete template").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.templates=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.template.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTemplateDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/templates/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{template:t,templates:A.templates.rows}})}function v(e){l.template.delete({id:e.id}).$promise.then(function(){_.remove(A.templates.rows,{id:e.id}),A.templates.count-=1,A.templates.rows.length||A.getTemplates(),c.success({title:"Template deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplate",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTemplates);return A.selectedTemplates=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected templates?").htmlContent("<b>"+A.selectedTemplates.length+" selected</b> will be deleted.").ariaLabel("delete Templates").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTemplates.forEach(function(e){v(e)}),A.selectedTemplates=[]})}function E(){A.selectedTemplates=[]}function y(){A.selectedTemplates=A.templates.rows}var A=this;A.templates=r||{count:0,rows:[]},A.table="templates",A.listOrder="",A.listOrderAsc=null,A.selectedTemplates=[],A.query={fields:"createdAt,updatedAt,id,name,subject,html,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getTemplates=g,A.createOrEditTemplate=h,A.deleteTemplate=v,A.exportSelectedTemplates=b,A.deleteSelectedTemplates=f,A.deselectTemplates=E,A.selectAllTemplates=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTemplates())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","templates","api","msUtils","toasty"],angular.module("app.tools").controller("TemplatesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trigger.save(p.trigger).$promise.then(function(e){p.triggers.unshift(e),i.success({title:"Trigger properly created",msg:p.trigger.name?p.trigger.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.trigger.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.trigger.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.trigger.update({id:p.trigger.id},p.trigger).$promise.then(function(e){var t=_.find(p.triggers,{id:e.id});t&&_.merge(t,e),i.success({title:"Trigger properly saved!",msg:p.trigger.name?p.trigger.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.trigger.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.trigger.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The trigger will be deleted.").ariaLabel("Delete Trigger").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.trigger.delete({id:p.trigger.id}).$promise.then(function(){_.remove(p.triggers,{id:p.trigger.id}),i.success({title:"Trigger properly deleted!",msg:(p.trigger.name||"trigger")+" has been deleted!"}),u(p.trigger)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.trigger.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_TRIGGER",p.trigger=angular.copy(s),p.triggers=o,p.newTrigger=!1,p.trigger||(p.trigger={channel:"voice"},p.title="TOOLS.NEW_TRIGGER",p.newTrigger=!0),p.addNewTrigger=l,p.saveTrigger=d,p.deleteTrigger=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","triggers","trigger","api"],angular.module("app.tools").controller("CreateOrEditTriggerDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.trigger=e,h.query.id=h.trigger.id,h.query.ActionId=h.trigger.id,h.getTriggerActions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the action?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete action").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.triggerActions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.trigger.getActions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditActionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/triggers/edit/actions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{action:t,actions:h.triggerActions.rows}})}function p(e){r.action.delete({id:e.id}).$promise.then(function(){_.remove(h.triggerActions.rows,{id:e.id}),h.triggerActions.count-=1,h.triggerActions.rows.length||h.getTriggerActions(),s.success({title:"Action deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected actions?").htmlContent("<b>"+h.selectedTriggerActions.length+" selected</b> will be deleted.").ariaLabel("delete actions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedTriggerActions.forEach(function(e){p(e)}),h.selectedTriggerActions=[]})}var h=this;h.trigger={},h.triggerActions={count:0,rows:[]},h.selectedTriggerActions=[],h.query={fields:"createdAt,updatedAt,id,action,data1,data1,data1,data2,data2,data1,data2,data2,data2,data2,data3,data3,data3,data3,data1,data2,data2,data3,data2,data2,data2,createdAt",limit:10,page:1},h.arrayaction=_.keyBy([{option:"CONTACT_MANAGER",value:"'contactManager'"},{option:"INTEGRATIONS",value:"'integration'"},{option:"MOTION_BAR",value:"'motionbar'"},{option:"JSCRIPTY",value:"'jscripty'"},{option:"URL_FORWARD",value:"'urlForward'"},{option:"BROWSER",value:"'browser'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.browserValues=_.keyBy([{option:"Web Popup",value:"'0'"},{option:"Web Tab",value:"'1'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.urlForwardValues=_.keyBy([{option:"GET",value:"'GET'"},{option:"POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.integrationValues=_.keyBy([{option:"Zendesk",value:"'zendesk'"},{option:"Salesforce",value:"'salesforce'"},{option:"SugarCRM",value:"'sugarcrm'"},{option:"Freshdesk",value:"'freshdesk'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.motionbarValues=_.keyBy([{option:"Popup",value:"'0'"},{option:"URL",value:"'1'"},{option:"Windows App",value:"'2'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.init=l,h.deleteConfirm=d,h.success=c,h.getTriggerActions=m,h.createOrEditTriggerAction=u,h.deleteTriggerAction=p,h.deleteSelectedTriggerActions=g,r.cmList.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.lists=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intZendeskAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.zendeskAccounts=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETzendeskAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSalesforceAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.salesforceAccounts=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsalesforceAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSugarcrmAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.sugarcrmAccounts=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsugarcrmAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intFreshdeskAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.freshdeskAccounts=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfreshdeskAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intZendeskConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){h.zendeskConfigurations=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETzendeskConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSalesforceConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){h.salesforceConfigurations=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsalesforceConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSugarcrmConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){h.sugarcrmConfigurations=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsugarcrmConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intFreshdeskConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){h.freshdeskConfigurations=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfreshdeskConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.template.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.templates=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplates",msg:e.data?JSON.stringify(e.data):e.toString()})});var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getTriggerActions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.tools").controller("TriggerActionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trigger.addAction({id:t.params.id},p.action).$promise.then(function(e){p.actions.unshift(e),i.success({title:"Action properly created",msg:p.action.name?p.action.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.action.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.action.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.action.update({id:p.action.id},p.action).$promise.then(function(e){var t=_.find(p.actions,{id:e.id});t&&_.merge(t,e),i.success({title:"Action properly saved!",msg:p.action.name?p.action.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.action.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.action.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The action will be deleted.").ariaLabel("Delete Action").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.action.delete({id:p.action.id}).$promise.then(function(){_.remove(p.actions,{id:p.action.id}),i.success({title:"Action properly deleted!",msg:(p.action.name||"action")+" has been deleted!"}),u(p.action)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.action.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_ACTION",p.action=angular.copy(s),p.actions=o,p.newAction=!1,p.action||(p.action={},p.title="TOOLS.NEW_ACTION",p.newAction=!0),t.params.id&&(p.action.ActionId=t.params.id),p.addNewAction=l,p.saveAction=d,p.deleteAction=c,p.getDateFromString=m,p.closeDialog=u,r.cmList.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.lists=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intZendeskAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.zendeskAccounts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETzendeskAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSalesforceAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.salesforceAccounts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsalesforceAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSugarcrmAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.sugarcrmAccounts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsugarcrmAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intFreshdeskAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.freshdeskAccounts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfreshdeskAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intZendeskConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){p.zendeskConfigurations=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETzendeskConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSalesforceConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){p.salesforceConfigurations=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsalesforceConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSugarcrmConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){p.sugarcrmConfigurations=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsugarcrmConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intFreshdeskConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){p.freshdeskConfigurations=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfreshdeskConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.template.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.templates=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplates",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","actions","action","api"],angular.module("app.tools").controller("CreateOrEditActionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.trigger=e,h.query.id=h.trigger.id,h.query.TriggerAllId=h.trigger.id,h.getTriggerAllConditions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the allCondition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete allCondition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.triggerAllConditions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.trigger.getAllConditions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditAllConditionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/triggers/edit/allconditions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{allCondition:t,allconditions:h.triggerAllConditions.rows}})}function p(e){r.condition.delete({id:e.id}).$promise.then(function(){_.remove(h.triggerAllConditions.rows,{id:e.id}),h.triggerAllConditions.count-=1,h.triggerAllConditions.rows.length||h.getTriggerAllConditions(),s.success({title:"AllCondition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected allconditions?").htmlContent("<b>"+h.selectedTriggerAllConditions.length+" selected</b> will be deleted.").ariaLabel("delete allconditions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedTriggerAllConditions.forEach(function(e){p(e)}),h.selectedTriggerAllConditions=[]})}var h=this;h.trigger={},h.triggerAllConditions={count:0,rows:[]},h.selectedTriggerAllConditions=[],h.query={fields:"createdAt,updatedAt,id,field,operator,value,value,value,createdAt",limit:10,page:1},h.arrayfield=_.keyBy([{option:"Queue",value:"'queue'"},{option:"Call_Status",value:"'lastevent'"},{option:"OutboundRoute",value:"'routeId'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.arrayoperator=_.keyBy([{option:"Equals",value:"'equals'"},{option:"Not_Equals",value:"'not_equals'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.arrayvalue=_.keyBy([{option:"Abandoned",value:"'abandoned'"},{option:"Hangup",value:"'complete'"},{option:"Rejected",value:"'rejected'"},{option:"Ringing",value:"'called'"},{option:"Up",value:"'connect'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.init=l,h.deleteConfirm=d,h.success=c,h.getTriggerAllConditions=m,h.createOrEditTriggerAllCondition=u,h.deleteTriggerAllCondition=p,h.deleteSelectedTriggerAllConditions=g,r.voiceQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){h.queues=_.keyBy(e.rows||[],"name")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.voiceExtension.get({fields:"id,exten",type:"outbound",VoiceExtensionId:"null",nolimit:"true"}).$promise.then(function(e){h.outboundRoutes=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GEToutboundRoutes",msg:e.data?JSON.stringify(e.data):e.toString()})});var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getTriggerAllConditions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.tools").controller("TriggerAllConditionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trigger.addAllCondition({id:t.params.id},p.allCondition).$promise.then(function(e){p.allconditions.unshift(e),i.success({title:"AllCondition properly created",msg:p.allCondition.name?p.allCondition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.condition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.condition.update({id:p.allCondition.id},p.allCondition).$promise.then(function(e){var t=_.find(p.allconditions,{id:e.id});t&&_.merge(t,e),i.success({title:"AllCondition properly saved!",msg:p.allCondition.name?p.allCondition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.condition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The allCondition will be deleted.").ariaLabel("Delete AllCondition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.condition.delete({id:p.allCondition.id}).$promise.then(function(){_.remove(p.allconditions,{id:p.allCondition.id}),i.success({title:"AllCondition properly deleted!",msg:(p.allCondition.name||"allCondition")+" has been deleted!"}),u(p.allCondition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_ALLCONDITION",p.allCondition=angular.copy(s),p.allconditions=o,p.newAllCondition=!1,p.allCondition||(p.allCondition={field:"queue",operator:"equals",value:"equals"},p.title="TOOLS.NEW_ALLCONDITION",p.newAllCondition=!0),t.params.id&&(p.allCondition.TriggerAllId=t.params.id),p.addNewAllCondition=l,p.saveAllCondition=d,p.deleteAllCondition=c,p.getDateFromString=m,p.closeDialog=u,r.voiceQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){p.queues=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.voiceExtension.get({fields:"id,exten",type:"outbound",VoiceExtensionId:"null",nolimit:"true"}).$promise.then(function(e){p.outboundRoutes=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GEToutboundRoutes",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","allconditions","allCondition","api"],angular.module("app.tools").controller("CreateOrEditAllConditionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.trigger=e,h.query.id=h.trigger.id,h.query.TriggerAnyId=h.trigger.id,h.getTriggerAnyConditions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the anyCondition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete anyCondition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.triggerAnyConditions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.trigger.getAnyConditions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditAnyConditionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/triggers/edit/anyconditions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{anyCondition:t,anyconditions:h.triggerAnyConditions.rows}})}function p(e){r.condition.delete({id:e.id}).$promise.then(function(){_.remove(h.triggerAnyConditions.rows,{id:e.id}),h.triggerAnyConditions.count-=1,h.triggerAnyConditions.rows.length||h.getTriggerAnyConditions(),s.success({title:"AnyCondition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected anyconditions?").htmlContent("<b>"+h.selectedTriggerAnyConditions.length+" selected</b> will be deleted.").ariaLabel("delete anyconditions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedTriggerAnyConditions.forEach(function(e){p(e)}),h.selectedTriggerAnyConditions=[]})}var h=this;h.trigger={},h.triggerAnyConditions={count:0,rows:[]},h.selectedTriggerAnyConditions=[],h.query={fields:"createdAt,updatedAt,id,field,operator,value,value,value,createdAt",limit:10,page:1},h.arrayfield=_.keyBy([{option:"Queue",value:"'queue'"},{option:"Call_Status",value:"'lastevent'"},{option:"OutboundRoute",value:"'routeId'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.arrayoperator=_.keyBy([{option:"Equals",value:"'equals'"},{option:"Not_Equals",value:"'not_equals'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.arrayvalue=_.keyBy([{option:"Abandoned",value:"'abandoned'"},{option:"Hangup",value:"'complete'"},{option:"Rejected",value:"'rejected'"},{option:"Ringing",value:"'called'"},{option:"Up",value:"'connect'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.init=l,h.deleteConfirm=d,h.success=c,h.getTriggerAnyConditions=m,h.createOrEditTriggerAnyCondition=u,h.deleteTriggerAnyCondition=p,h.deleteSelectedTriggerAnyConditions=g,r.voiceQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){h.queues=_.keyBy(e.rows||[],"name")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.voiceExtension.get({fields:"id,exten",type:"outbound",VoiceExtensionId:"null",nolimit:"true"}).$promise.then(function(e){h.outboundRoutes=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GEToutboundRoutes",msg:e.data?JSON.stringify(e.data):e.toString()})});var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getTriggerAnyConditions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.tools").controller("TriggerAnyConditionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trigger.addAnyCondition({id:t.params.id},p.anyCondition).$promise.then(function(e){p.anyconditions.unshift(e),i.success({title:"AnyCondition properly created",msg:p.anyCondition.name?p.anyCondition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.condition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.condition.update({id:p.anyCondition.id},p.anyCondition).$promise.then(function(e){var t=_.find(p.anyconditions,{id:e.id});t&&_.merge(t,e),i.success({title:"AnyCondition properly saved!",msg:p.anyCondition.name?p.anyCondition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.condition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The anyCondition will be deleted.").ariaLabel("Delete AnyCondition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.condition.delete({id:p.anyCondition.id}).$promise.then(function(){_.remove(p.anyconditions,{id:p.anyCondition.id}),i.success({title:"AnyCondition properly deleted!",msg:(p.anyCondition.name||"anyCondition")+" has been deleted!"}),u(p.anyCondition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_ANYCONDITION",p.anyCondition=angular.copy(s),p.anyconditions=o,p.newAnyCondition=!1,p.anyCondition||(p.anyCondition={field:"queue",operator:"equals",value:"equals"},p.title="TOOLS.NEW_ANYCONDITION",p.newAnyCondition=!0),t.params.id&&(p.anyCondition.TriggerAnyId=t.params.id),p.addNewAnyCondition=l,p.saveAnyCondition=d,p.deleteAnyCondition=c,p.getDateFromString=m,p.closeDialog=u,r.voiceQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){p.queues=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.voiceExtension.get({fields:"id,exten",type:"outbound",VoiceExtensionId:"null",nolimit:"true"}).$promise.then(function(e){p.outboundRoutes=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GEToutboundRoutes",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","anyconditions","anyCondition","api"],angular.module("app.tools").controller("CreateOrEditAnyConditionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.triggers")}function r(){i.trigger.update({id:l.trigger.id},l.trigger).$promise.then(function(){a.success({title:"Trigger updated!",msg:l.trigger.name?l.trigger.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.trigger=e.params.trigger||o||{},l.selectedTab=e.params.tab||0,l.gotoTriggers=s,l.saveTrigger=r}e.$inject=["$state","$mdDialog","$document","toasty","api","trigger"],angular.module("app.tools").controller("TriggerController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.triggers.edit",{id:e.id,trigger:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the trigger?").htmlContent("<b>"+(e.name||"trigger")+"</b> will be deleted.").ariaLabel("delete trigger").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.triggers=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.trigger.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTriggerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/triggers/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{trigger:t,triggers:A.triggers.rows}})}function v(e){l.trigger.delete({id:e.id}).$promise.then(function(){_.remove(A.triggers.rows,{id:e.id}),A.triggers.count-=1,A.triggers.rows.length||A.getTriggers(),c.success({title:"Trigger deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTriggers);return A.selectedTriggers=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected triggers?").htmlContent("<b>"+A.selectedTriggers.length+" selected</b> will be deleted.").ariaLabel("delete Triggers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTriggers.forEach(function(e){v(e)}),A.selectedTriggers=[]})}function E(){A.selectedTriggers=[]}function y(){A.selectedTriggers=A.triggers.rows}var A=this;A.triggers=r||{count:0,rows:[]},A.table="triggers",A.listOrder="",A.listOrderAsc=null,A.selectedTriggers=[],A.query={fields:"createdAt,updatedAt,id,name,channel,status,description",sort:"-updatedAt",limit:10,page:1},A.arraychannel=_.keyBy([{option:"Voice",value:"'voice'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getTriggers=g,A.createOrEditTrigger=h,A.deleteTrigger=v,A.exportSelectedTriggers=b,A.deleteSelectedTriggers=f,A.deselectTriggers=E,A.selectAllTriggers=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTriggers())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","triggers","api","msUtils","toasty"],angular.module("app.tools").controller("TriggersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trunk.save(p.trunk).$promise.then(function(e){p.trunks.unshift(e),i.success({title:"Trunk properly created",msg:p.trunk.name?p.trunk.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.trunk.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.trunk.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.trunk.update({id:p.trunk.id},p.trunk).$promise.then(function(e){var t=_.find(p.trunks,{id:e.id});t&&_.merge(t,e),i.success({title:"Trunk properly saved!",msg:p.trunk.name?p.trunk.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.trunk.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.trunk.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The trunk will be deleted.").ariaLabel("Delete Trunk").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.trunk.delete({id:p.trunk.id}).$promise.then(function(){_.remove(p.trunks,{id:p.trunk.id}),i.success({title:"Trunk properly deleted!",msg:(p.trunk.name||"trunk")+" has been deleted!"}),u(p.trunk)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.trunk.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_TRUNK",p.trunk=angular.copy(s),p.trunks=o,p.newTrunk=!1,p.trunk||(p.trunk={active:!0,type:"friend",dtmfmode:"rfc2833",qualify:"yes"},p.title="TOOLS.NEW_TRUNK",p.newTrunk=!0),p.addNewTrunk=l,p.saveTrunk=d,p.deleteTrunk=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","trunks","trunk","api"],angular.module("app.tools").controller("CreateOrEditTrunkDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.trunks")}function r(){i.trunk.update({id:l.trunk.id},l.trunk).$promise.then(function(){a.success({title:"Trunk updated!",msg:l.trunk.name?l.trunk.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunk",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.trunk=e.params.trunk||o||{},l.selectedTab=e.params.tab||0,l.gotoTrunks=s,l.saveTrunk=r,i.voiceContext.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","trunk"],angular.module("app.tools").controller("TrunkController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.trunks.edit",{id:e.id,trunk:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the trunk?").htmlContent("<b>"+(e.name||"trunk")+"</b> will be deleted.").ariaLabel("delete trunk").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.trunks=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.trunk.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTrunkDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/trunks/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{trunk:t,trunks:A.trunks.rows}})}function v(e){l.trunk.delete({id:e.id}).$promise.then(function(){_.remove(A.trunks.rows,{id:e.id}),A.trunks.count-=1,A.trunks.rows.length||A.getTrunks(),c.success({title:"Trunk deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunk",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTrunks);return A.selectedTrunks=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected trunks?").htmlContent("<b>"+A.selectedTrunks.length+" selected</b> will be deleted.").ariaLabel("delete Trunks").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTrunks.forEach(function(e){v(e)}),A.selectedTrunks=[]})}function E(){A.selectedTrunks=[]}function y(){A.selectedTrunks=A.trunks.rows}var A=this;A.trunks=r||{count:0,rows:[]},A.table="trunks",A.listOrder="",A.listOrderAsc=null,A.selectedTrunks=[],A.query={fields:"createdAt,updatedAt,id,name,active,host,secret,defaultuser,context,callerid,type,dtmfmode,nat,qualify,allow,insecure,call_limit,registry,description,directmedia,callcounter,fromdomain,fromuser,outboundproxy,usereqphone,trustrpid,sendrpid,encryption,port,transport,otherFields",sort:"-updatedAt",limit:10,page:1},A.arraytype=_.keyBy([{option:"Friend",value:"'friend'"},{option:"User",value:"'user'"},{option:"Peer",value:"'peer'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraydtmfmode=_.keyBy([{option:"rfc2833",value:"'rfc2833'"},{option:"info",value:"'info'"},{option:"shortinfo",value:"'shortinfo'"},{option:"inband",value:"'inband'"},{option:"auto",value:"'auto'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraynat=_.keyBy([{option:"force_rport",value:"'force_rport'"},{option:"comedia",value:"'comedia'"},{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"never",value:"'never'"},{option:"route",value:"'route'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayqualify=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'user'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayallow=_.keyBy([{option:"alaw",value:"'alaw'"},{option:"ulaw",value:"'ulaw'"},{option:"gsm",value:"'gsm'"},{option:"g723",value:"'g723'"},{option:"g726",value:"'g726'"},{option:"g722",value:"'g722'"},{option:"g729",value:"'g729'"},{option:"ilbc",value:"'ilbc'"},{option:"opus",value:"'opus'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayinsecure=_.keyBy([{option:"port",value:"'port'"},{option:"invite",value:"'invite'"},{option:"very",value:"'very'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraydirectmedia=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"nonat",value:"'nonat'"},{option:"update",value:"'update'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycallcounter=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayusereqphone=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytrustrpid=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraysendrpid=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayencryption=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytransport=_.keyBy([{option:"udp",value:"'udp'"},{option:"tcp",value:"'tcp'"},{option:"ws",value:"'ws'"},{option:"wss",value:"'wss'"},{option:"tls",value:"'tls'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getTrunks=g,A.createOrEditTrunk=h,A.deleteTrunk=v,A.exportSelectedTrunks=b,A.deleteSelectedTrunks=f,A.deselectTrunks=E,A.selectAllTrunks=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTrunks())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","trunks","api","msUtils","toasty"],angular.module("app.tools").controller("TrunksController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.variable.save(p.variable).$promise.then(function(e){p.variables.unshift(e),i.success({title:"Variable properly created",msg:p.variable.name?p.variable.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.variable.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.variable.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.variable.update({id:p.variable.id},p.variable).$promise.then(function(e){var t=_.find(p.variables,{id:e.id});t&&_.merge(t,e),i.success({title:"Variable properly saved!",msg:p.variable.name?p.variable.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.variable.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.variable.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The variable will be deleted.").ariaLabel("Delete Variable").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.variable.delete({id:p.variable.id}).$promise.then(function(){_.remove(p.variables,{id:p.variable.id}),i.success({title:"Variable properly deleted!",msg:(p.variable.name||"variable")+" has been deleted!"}),u(p.variable)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.variable.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_VARIABLE",p.variable=angular.copy(s),p.variables=o,p.newVariable=!1,p.variable||(p.variable={},p.title="TOOLS.NEW_VARIABLE",p.newVariable=!0),p.addNewVariable=l,p.saveVariable=d,p.deleteVariable=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","variables","variable","api"],angular.module("app.tools").controller("CreateOrEditVariableDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditVariableDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/variables/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{variable:e,variables:A.variables.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the variable?").htmlContent("<b>"+(e.name||"variable")+"</b> will be deleted.").ariaLabel("delete variable").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.variables=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.variable.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditVariableDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/variables/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{variable:t,variables:A.variables.rows}})}function v(e){l.variable.delete({id:e.id}).$promise.then(function(){_.remove(A.variables.rows,{id:e.id}),A.variables.count-=1,A.variables.rows.length||A.getVariables(),c.success({title:"Variable deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvariable",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedVariables);return A.selectedVariables=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected variables?").htmlContent("<b>"+A.selectedVariables.length+" selected</b> will be deleted.").ariaLabel("delete Variables").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedVariables.forEach(function(e){v(e)}),A.selectedVariables=[]})}function E(){A.selectedVariables=[]}function y(){A.selectedVariables=A.variables.rows}var A=this;A.variables=r||{count:0,rows:[]},A.table="variables",A.listOrder="",A.listOrderAsc=null,A.selectedVariables=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getVariables=g,A.createOrEditVariable=h,A.deleteVariable=v,A.exportSelectedVariables=b,A.deleteSelectedVariables=f,A.deselectVariables=E,A.selectAllVariables=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getVariables())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","variables","api","msUtils","toasty"],angular.module("app.tools").controller("VariablesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.chanSpies.edit",{id:e.id,chanSpy:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the chanSpy?").htmlContent("<b>"+(e.name||"chanSpy")+"</b> will be deleted.").ariaLabel("delete chanSpy").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.chanSpies=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceChanSpy.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditchanSpyDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/chanSpies/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{chanSpy:t,chanSpies:A.chanSpies.rows}})}function v(e){l.voiceChanSpy.delete({id:e.id}).$promise.then(function(){_.remove(A.chanSpies.rows,{id:e.id}),A.chanSpies.count-=1,A.chanSpies.rows.length||A.getChanSpies(),c.success({title:"chanSpy deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceChanSpy",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedChanSpies);return A.selectedChanSpies=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected chanSpies?").htmlContent("<b>"+A.selectedChanSpies.length+" selected</b> will be deleted.").ariaLabel("delete chanSpys").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedChanSpies.forEach(function(e){v(e)}),A.selectedChanSpies=[]})}function E(){A.selectedChanSpies=[]}function y(){A.selectedChanSpies=A.chanSpies.rows}var A=this;A.chanSpies=r||{count:0,rows:[]},A.table="chanSpies",A.listOrder="",A.listOrderAsc=null,A.selectedChanSpies=[],A.query={fields:"createdAt,updatedAt,id,name,prefix,options,auth,password,record,recordingFormat,description",sort:"-updatedAt",limit:10,page:1},A.arrayoptions=_.keyBy([{option:"b: Only spy on channels involved in a bridged call.",value:"'b'"},{option:"B: Instead of whispering on a single channel barge in on both channels involved in the call.",value:"'B'"},{option:"E: Exit when the spied-on channel hangs up.",value:"'E'"},{option:"o: Only listen to audio coming from this channel.",value:"'o'"},{option:"q: Don't play a beep when beginning to spy on a channel, or speak the selected channel name.",value:"'q'"},{option:"s: Skip the playback of the channel type (i.e. SIP, IAX, etc) when speaking the selected channel name.",value:"'s'"},{option:"S: Stop when no more channels are left to spy on.",value:"'S'"},{option:"w: Enable whisper mode, so the spying channel can talk to the spied-on channel.",value:"'w'"},{option:"W: Enable private whisper mode, so the spying channel can talk to the spied-on channel but cannot listen to that channel.",value:"'W'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrecordingFormat=_.keyBy([{option:"wav",value:"'wav'"},{option:"gsm",value:"'gsm'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getChanSpies=g,A.createOrEditchanSpy=h,A.deletechanSpy=v,A.exportSelectedChanSpies=b,A.deleteSelectedChanSpies=f,A.deselectChanSpies=E,A.selectAllChanSpies=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getChanSpies())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","chanSpies","api","msUtils","toasty"],angular.module("app.voice").controller("ChanSpiesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceChanSpy.save(p.chanSpy).$promise.then(function(e){p.chanSpies.unshift(e),i.success({title:"chanSpy properly created",msg:p.chanSpy.name?p.chanSpy.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceChanSpy.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceChanSpy.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceChanSpy.update({id:p.chanSpy.id},p.chanSpy).$promise.then(function(e){var t=_.find(p.chanSpies,{id:e.id});t&&_.merge(t,e),i.success({title:"chanSpy properly saved!",msg:p.chanSpy.name?p.chanSpy.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceChanSpy.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceChanSpy.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The chanSpy will be deleted.").ariaLabel("Delete chanSpy").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceChanSpy.delete({id:p.chanSpy.id}).$promise.then(function(){_.remove(p.chanSpies,{id:p.chanSpy.id}),i.success({title:"chanSpy properly deleted!",msg:(p.chanSpy.name||"chanSpy")+" has been deleted!"}),u(p.chanSpy)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceChanSpy.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_CHANSPY",p.chanSpy=angular.copy(s),p.chanSpies=o,p.newchanSpy=!1,p.chanSpy||(p.chanSpy={},p.title="VOICE.NEW_CHANSPY",p.newchanSpy=!0),p.addNewchanSpy=l,p.savechanSpy=d,p.deletechanSpy=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","chanSpies","chanSpy","api"],angular.module("app.voice").controller("CreateOrEditchanSpyDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.chanSpies")}function r(){i.voiceChanSpy.update({id:l.chanSpy.id},l.chanSpy).$promise.then(function(){a.success({title:"chanSpy updated!",msg:l.chanSpy.name?l.chanSpy.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceChanSpy",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.chanSpy=e.params.chanSpy||o||{},l.selectedTab=e.params.tab||0,l.gotoChanSpies=s,l.savechanSpy=r}e.$inject=["$state","$mdDialog","$document","toasty","api","chanSpy"],angular.module("app.voice").controller("ChanSpyController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditContextDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/contexts/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{context:e,contexts:A.contexts.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the context?").htmlContent("<b>"+(e.name||"context")+"</b> will be deleted.").ariaLabel("delete context").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.contexts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceContext.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditContextDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/contexts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{context:t,contexts:A.contexts.rows}})}function v(e){l.voiceContext.delete({id:e.id}).$promise.then(function(){_.remove(A.contexts.rows,{id:e.id}),A.contexts.count-=1,A.contexts.rows.length||A.getContexts(),c.success({title:"Context deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceContext",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedContexts);return A.selectedContexts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected contexts?").htmlContent("<b>"+A.selectedContexts.length+" selected</b> will be deleted.").ariaLabel("delete Contexts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedContexts.forEach(function(e){v(e)}),A.selectedContexts=[]})}function E(){A.selectedContexts=[]}function y(){A.selectedContexts=A.contexts.rows}var A=this;A.contexts=r||{count:0,rows:[]},A.table="contexts",A.listOrder="",A.listOrderAsc=null,A.selectedContexts=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",defaultEntry:"false",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getContexts=g,A.createOrEditContext=h,A.deleteContext=v,A.exportSelectedContexts=b,A.deleteSelectedContexts=f,A.deselectContexts=E,A.selectAllContexts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getContexts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","contexts","api","msUtils","toasty"],angular.module("app.voice").controller("ContextsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceContext.save(p.context).$promise.then(function(e){p.contexts.unshift(e),i.success({title:"Context properly created",msg:p.context.name?p.context.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceContext.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceContext.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceContext.update({id:p.context.id},p.context).$promise.then(function(e){var t=_.find(p.contexts,{id:e.id});t&&_.merge(t,e),i.success({title:"Context properly saved!",msg:p.context.name?p.context.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceContext.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceContext.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The context will be deleted.").ariaLabel("Delete Context").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceContext.delete({id:p.context.id}).$promise.then(function(){_.remove(p.contexts,{id:p.context.id}),i.success({title:"Context properly deleted!",msg:(p.context.name||"context")+" has been deleted!"}),u(p.context)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceContext.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_CONTEXT",p.context=angular.copy(s),p.contexts=o,p.newContext=!1,p.context||(p.context={},p.title="VOICE.NEW_CONTEXT",p.newContext=!0),p.addNewContext=l,p.saveContext=d,p.deleteContext=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","contexts","context","api"],angular.module("app.voice").controller("CreateOrEditContextDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceExtension.save(p.inboundroute).$promise.then(function(e){p.inboundroutes.unshift(e),i.success({title:"InboundRoute properly created",msg:p.inboundroute.name?p.inboundroute.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceExtension.update({id:p.inboundroute.id},p.inboundroute).$promise.then(function(e){var t=_.find(p.inboundroutes,{id:e.id});t&&_.merge(t,e),i.success({title:"InboundRoute properly saved!",msg:p.inboundroute.name?p.inboundroute.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The inboundroute will be deleted.").ariaLabel("Delete InboundRoute").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceExtension.delete({id:p.inboundroute.id}).$promise.then(function(){_.remove(p.inboundroutes,{id:p.inboundroute.id}),i.success({title:"InboundRoute properly deleted!",msg:(p.inboundroute.name||"inboundroute")+" has been deleted!"}),u(p.inboundroute)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_INBOUNDROUTE",p.inboundroute=angular.copy(s),p.inboundroutes=o,p.newInboundRoute=!1,p.inboundroute||(p.inboundroute={appdata:"Inbound Call",type:"inbound",context:"from-voip-provider"},p.title="VOICE.NEW_INBOUNDROUTE",p.newInboundRoute=!0),p.addNewInboundRoute=l,p.saveInboundRoute=d,p.deleteInboundRoute=c,p.getDateFromString=m,p.closeDialog=u,r.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){p.contexts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","inboundroutes","inboundroute","api"],angular.module("app.voice").controller("CreateOrEditInboundRouteDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){g.inboundroute=e,g.query.VoiceExtensionId=e.id,g.query.isApp=!0,g.query.nolimit=!0,g.getInboundRouteApps(),g.getIntervals()}function o(e,n,a){var i=t.confirm().title("Are you sure want to delete the application?").htmlContent("<b>"+e.app+"</b> will be deleted.").ariaLabel("delete application").targetEvent(a).ok("OK").cancel("CANCEL");t.show(i).then(function(){g.inboundrouteApps.rows.splice(n,1),l()},function(){console.log("CANCEL")})}function s(e,i){if(g.inboundrouteApps.rows.length){var o=g.inboundrouteApps.rows[i]?g.inboundrouteApps.rows[i]:g.inboundrouteApps.rows[0];t.show({controller:"EditInboundRouteApp"+(o.appType||o.app).toLowerCase()+"DialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/inboundroutes/edit/apps/"+(o.appType||o.app).toLowerCase()+"/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{inboundrouteApp:o}}).then(function(e){e&&(e.id?g.inboundrouteApps.rows[i]=e:g.inboundrouteApps.rows.splice(i,0,e),l())}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:EDITMODALSHOW",msg:e.data?JSON.stringify(e.data):e.toString()})})}}function r(e,a){if(g.inboundrouteApps.rows.length){var i=g.inboundrouteApps.rows[a]?g.inboundrouteApps.rows[a]:g.inboundrouteApps.rows[0];t.show({controller:"EditInboundRouteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/inboundroutes/edit/apps/interval/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:i.interval,IntervalId:i.IntervalId,application:!0},intervals:[]}}).then(function(e){e&&(i.interval=e.interval||"*,*,*,*",i.IntervalId=e.IntervalId||null,l())})}}function l(){var t=["queue","playback"],n=!1,a=!1,i=2,o=[];o.push({type:"inbound",app:"Set",appdata:"CDR(type)=inbound",context:g.inboundroute.context,exten:g.inboundroute.exten,priority:i++,VoiceExtensionId:g.inboundroute.id});for(var s=0,r=0;s<g.inboundrouteApps.rows.length;s++,r=0){var l=g.inboundrouteApps.rows[s],d=[],c=[];l.intervals="*,*,*,*"!==l.interval?[l.interval]:l.IntervalId?_.map(_.filter(g.intervals.rows,{IntervalId:l.IntervalId}),"interval"):[],l.context=g.inboundroute.context,l.exten=g.inboundroute.exten,l.hasOwnProperty("answer")&&t.includes(l.app.toLowerCase())&&"custom"!==l.appType&&(!n&&l.answer&&(n=!0,d.push({type:l.type,app:"Answer",context:g.inboundroute.context,exten:g.inboundroute.exten,priority:l.intervals.length+i+r++,VoiceExtensionId:g.inboundroute.id})),n||a||l.answer||(a=!0,d.push({type:l.type,app:"Progress",context:g.inboundroute.context,exten:g.inboundroute.exten,priority:l.intervals.length+i+r++,VoiceExtensionId:g.inboundroute.id})));for(var m=0;m<l.intervals.length;m++){var u=i+l.intervals.length,p=m===l.intervals.length-1?i+d.length+c.length+2:i+m+1;d.splice(m,0,{type:"inbound",app:"GotoIfTime",appdata:l.intervals[m]+"?"+g.inboundroute.context+",${EXTEN},"+u+":"+g.inboundroute.context+",${EXTEN},"+p,exten:g.inboundroute.exten,context:g.inboundroute.context,priority:i+m,VoiceExtensionId:g.inboundroute.id})}l.priority=d.length?_.last(d).priority+1:i,i=(c.length?_.last(c).priority:l.priority)+1,o=_.concat(o,d,[l],c)}o.push({type:"inbound",app:"Hangup",exten:g.inboundroute.exten,context:g.inboundroute.context,priority:i,VoiceExtensionId:g.inboundroute.id}),e.voiceExtension.addApplications({id:g.inboundroute.id},_.sortBy(o,"priority")).$promise.then(function(e){g.inboundrouteApps.rows=e.rows}).catch(function(e){console.error(e)})}function d(e){g.inboundrouteApps=e||{count:0,rows:[]}}function c(){return e.interval.get({fields:"id,interval,IntervalId"}).$promise.then(function(e){g.intervals=e}).catch(function(e){console.error(e)})}function m(){g.promise=e.voiceExtension.get(g.query,d).$promise}function u(e){_.remove(g.inboundrouteApps.rows,{id:e.id}),l(),a.success({title:"App deleted!",msg:e.app?e.app+" has been deleted!":""})}function p(e){var n=t.confirm().title("Are you sure want to delete the selected applications?").htmlContent("<b>"+g.selectedInboundRouteApps.length+" selected</b> will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");t.show(n).then(function(){g.selectedInboundRouteApps.forEach(function(e){_.remove(g.inboundrouteApps.rows,{id:e.id})}),g.selectedInboundRouteApps=[],l()})}var g=this;g.inboundroute={},g.inboundrouteApps={count:0,rows:[]},g.selectedInboundRouteApps=[],g.query={sort:"priority"},g.apps=_.reject(_.sortBy([{app:"Interval",appType:"interval",types:["always","custom","list"],fields:[],isApp:!1},{app:"Queue",appType:"queue",context:"from-voip-provider",type:"Inbound",appdata:",xX,,,300,,,,,",icon:"icon-apps",options:"xX",interval:"*,*,*,*",answer:!0,isApp:!0,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}},{name:"queues",route:"voiceQueue",filters:{type:"inbound",fields:"id,name,type",sort:"name",nolimit:!0}}],fields:[{title:"Queue",name:"queue",type:"apiselect",values:"queues",value:"queue.name",option:"queue.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Url",name:"URL",type:"text",param:2},{title:"Announce_Overrides",name:"sound",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}'",option:"sound.name",defaultValues:[{value:"''",option:"None"}],param:3},{title:"Timeout",name:"timeout",type:"number",min:0,param:4},{title:"Agi",name:"agi",type:"text",param:5},{title:"Macro",name:"macro",type:"text",param:6},{title:"GoSub",name:"gosub",type:"text",param:7},{title:"Rule",name:"rule",type:"text",param:8},{title:"Position",name:"position",type:"number",min:0,param:9},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Playback",appType:"playback",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",answer:!0,isApp:!0,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}}],fields:[{title:"Audio_Files",name:"appdata",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}'",option:"appdata.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Dial",appType:"dial",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,fields:[{title:"Technology/Resource",name:"tech",type:"text",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"internalDial",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"user",type:"apiselect",values:"users",value:"'SIP/{{user.name}}'",option:"user.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"externalDial",context:"from-voip-provider",type:"inbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"trunks",route:"trunk",filters:{fields:"name",sort:"name"}}],fields:[{title:"Trunk",name:"trunk",type:"apiselect",values:"trunks",value:"trunk.name",option:"trunk.name",required:!0,param:0},{title:"Phone",name:"phone",required:!0,type:"text"},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"ringGroup",context:"from-voip-provider",type:"inbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"multipleUsers",type:"apiselect",multiple:!0,values:"users",value:"'SIP/{{multipleUsers.name}}'",option:"multipleUsers.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"AGI",appType:"agi",context:"from-voip-provider",type:"inbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"projects",route:"squareProject",filters:{fields:"name",sort:"name"}}],fields:[{title:"Project",name:"project",type:"apiselect",values:"projects",value:"'agi://127.0.0.1/square,{{project.name}}'",option:"project.name",required:!0,param:0}]},{app:"goto",appType:"goTo",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"contexts",route:"voiceContext",filters:{fields:"name",sort:"name"}}],fields:[{title:"Context",name:"context",type:"apiselect",values:"contexts",value:"context.name",option:"context.name",required:!0,param:0},{title:"Extension",name:"extension",type:"text",required:!0,param:1},{title:"Priority",name:"priority",type:"text",required:!0,param:2}]},{app:"hangup",appType:"hangup",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Hangup_Cause",name:"appdata",type:"select",param:0,values:[{option:"HANGUPCAUSE_1",value:"'1'"},{option:"HANGUPCAUSE_16",value:"'16'"},{option:"HANGUPCAUSE_17",value:"'17'"},{option:"HANGUPCAUSE_18",value:"'18'"},{option:"HANGUPCAUSE_21",value:"'21'"},{option:"HANGUPCAUSE_22",value:"'22'"},{option:"HANGUPCAUSE_27",value:"'27'"},{option:"HANGUPCAUSE_38",value:"'38'"},{option:"HANGUPCAUSE_41",value:"'41'"}],translate:!0,required:!0,general:!0}]},{app:"Set",appType:"set",context:"from-voip-provider",type:"Inbound",separator:"=",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Variable",name:"name",type:"text",required:!0,param:0},{title:"Value",name:"value",type:"text",required:!0,param:1}]},{app:null,appType:"custom",icon:"icon-apps",type:"Inbound",interval:"*,*,*,*",isApp:!0,fields:[{title:"Application_Name",name:"app",type:"text",required:!0,param:0},{title:"Arguments",name:"appdata",type:"text",param:1}]},{app:"Voicemail",appType:"voicemail",context:"from-voip-provider",icon:"icon-apps",type:"Inbound",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"voiceMails",route:"voiceMail",filters:{fields:"mailbox",sort:"mailbox"}}],fields:[{title:"Mailbox@Context",name:"voiceMail",type:"apiselect",values:"voiceMails",value:"'{{voiceMail.mailbox}}@from-voicemail'",option:"voiceMail.mailbox",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1}]}],["app"]),{isApp:!1}),g.list={group:{name:"opt1",pull:"clone"},animation:100,sort:!1},g.applications={group:{name:"opt2",put:"opt1"},animation:100,onAdd:function(e){s(e,e.newIndex)},onSort:function(e){l()}},g.init=i,g.deleteConfirm=o,g.getInboundRouteApps=m,g.editInboundRouteApp=s,g.editInterval=r,g.deleteInboundRouteApp=u,g.deleteSelectedInboundRouteApps=p,g.rewriteRouting=l,g.getIntervals=c}e.$inject=["api","$mdDialog","$document","toasty"],angular.module("app.voice").controller("InboundRouteActionsController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.agi.type.toLowerCase()&&"outboundDial"===s.agi.appType&&(s.agi.phone=s.agi.cutdigits?(s.agi.prefix||"")+"${EXTEN:"+s.agi.cutdigits+"}":(s.agi.prefix||"")+"${EXTEN}",s.agi.record="none"!==s.agi.recordingFormat,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:null),s.agi.appType.toLowerCase()){case"set":s.agi.appdata=s.agi.name+"="+s.agi.value;break;case"custom":break;default:e[0]=s.agi.project,s.agi.appdata=e.join(",")}o(s.agi)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.agi=angular.copy(n),s.agi.appdata)switch(s.agi.appType?s.agi.appType.toLowerCase():s.agi.app.toLowerCase()){case"custom":break;case"set":s.agi.name=s.agi.appdata.split("=")[0],s.agi.value=s.agi.appdata.split("=")[1];break;case"agi":s.agi.project=s.agi.appdata;break;default:var r=s.agi.appdata.split(",");s.agi.project=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.agi.type.toLowerCase()&&"outbounddial"===s.agi.appType.toLowerCase()&&(s.agi.prefix=s.agi.phone?s.agi.phone.split("$")[0]:void 0,s.agi.callerId=s.agi.callerID?"CALLERID(all)="+s.agi.callerID:void 0,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.squareProject.get({fields:"name",sort:"name"}).$promise.then(function(e){s.projects=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppagiDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.custom.type.toLowerCase()&&"outboundDial"===s.custom.appType&&(s.custom.phone=s.custom.cutdigits?(s.custom.prefix||"")+"${EXTEN:"+s.custom.cutdigits+"}":(s.custom.prefix||"")+"${EXTEN}",s.custom.record="none"!==s.custom.recordingFormat,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:null),s.custom.appType.toLowerCase()){case"set":s.custom.appdata=s.custom.name+"="+s.custom.value;break;case"custom":break;default:e[0]=s.custom.app,e[1]=s.custom.appdata,s.custom.appdata=e.join(",")}o(s.custom)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.custom=angular.copy(n),s.custom.appdata)switch(s.custom.appType?s.custom.appType.toLowerCase():s.custom.app.toLowerCase()){case"custom":break;case"set":s.custom.name=s.custom.appdata.split("=")[0],s.custom.value=s.custom.appdata.split("=")[1];break;case"agi":s.custom.project=s.custom.appdata;break;default:var r=s.custom.appdata.split(",");s.custom.app=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.custom.appdata=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.custom.type.toLowerCase()&&"outbounddial"===s.custom.appType.toLowerCase()&&(s.custom.prefix=s.custom.phone?s.custom.phone.split("$")[0]:void 0,s.custom.callerId=s.custom.callerID?"CALLERID(all)="+s.custom.callerID:void 0,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppcustomDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.dial.type.toLowerCase()&&"outboundDial"===s.dial.appType&&(s.dial.phone=s.dial.cutdigits?(s.dial.prefix||"")+"${EXTEN:"+s.dial.cutdigits+"}":(s.dial.prefix||"")+"${EXTEN}",s.dial.record="none"!==s.dial.recordingFormat,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:null),s.dial.appType.toLowerCase()){case"set":s.dial.appdata=s.dial.name+"="+s.dial.value;break;case"custom":break;default:e[0]=s.dial.tech,e[1]=s.dial.timeout,e[2]=s.dial.options,e[3]=s.dial.url,s.dial.appdata=e.join(",")}o(s.dial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.dial=angular.copy(n),s.dial.appdata)switch(s.dial.appType?s.dial.appType.toLowerCase():s.dial.app.toLowerCase()){case"custom":break;case"set":s.dial.name=s.dial.appdata.split("=")[0],s.dial.value=s.dial.appdata.split("=")[1];break;case"agi":s.dial.project=s.dial.appdata;break;default:var r=s.dial.appdata.split(",");s.dial.tech=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.dial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.dial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.dial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.dial.type.toLowerCase()&&"outbounddial"===s.dial.appType.toLowerCase()&&(s.dial.prefix=s.dial.phone?s.dial.phone.split("$")[0]:void 0,s.dial.callerId=s.dial.callerID?"CALLERID(all)="+s.dial.callerID:void 0,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppdialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.externaldial.type.toLowerCase()&&"outboundDial"===s.externaldial.appType&&(s.externaldial.phone=s.externaldial.cutdigits?(s.externaldial.prefix||"")+"${EXTEN:"+s.externaldial.cutdigits+"}":(s.externaldial.prefix||"")+"${EXTEN}",s.externaldial.record="none"!==s.externaldial.recordingFormat,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:null),s.externaldial.appType.toLowerCase()){case"set":s.externaldial.appdata=s.externaldial.name+"="+s.externaldial.value;break;case"custom":break;default:e[0]=["SIP",s.externaldial.trunk,s.externaldial.phone].join("/"),e[1]=s.externaldial.timeout,e[2]=s.externaldial.options,e[3]=s.externaldial.url,s.externaldial.appdata=e.join(",")}o(s.externaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.externaldial=angular.copy(n),s.externaldial.appdata)switch(s.externaldial.appType?s.externaldial.appType.toLowerCase():s.externaldial.app.toLowerCase()){case"custom":break;case"set":s.externaldial.name=s.externaldial.appdata.split("=")[0],s.externaldial.value=s.externaldial.appdata.split("=")[1];break;case"agi":s.externaldial.project=s.externaldial.appdata;break;default:var r=s.externaldial.appdata.split(",");s.externaldial.trunk=r[0].split("/")[1],s.externaldial.phone=r[0].split("/")[2],s.externaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.externaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.externaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.externaldial.type.toLowerCase()&&"outbounddial"===s.externaldial.appType.toLowerCase()&&(s.externaldial.prefix=s.externaldial.phone?s.externaldial.phone.split("$")[0]:void 0,s.externaldial.callerId=s.externaldial.callerID?"CALLERID(all)="+s.externaldial.callerID:void 0,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.trunk.get({fields:"name",sort:"name"}).$promise.then(function(e){s.trunks=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppexternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.goto.type.toLowerCase()&&"outboundDial"===s.goto.appType&&(s.goto.phone=s.goto.cutdigits?(s.goto.prefix||"")+"${EXTEN:"+s.goto.cutdigits+"}":(s.goto.prefix||"")+"${EXTEN}",s.goto.record="none"!==s.goto.recordingFormat,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:null),s.goto.appType.toLowerCase()){case"set":s.goto.appdata=s.goto.name+"="+s.goto.value;break;case"custom":break;default:e[0]=s.goto.context,e[1]=s.goto.extension,e[2]=s.goto.priority,s.goto.appdata=e.join(",")}o(s.goto)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.goto=angular.copy(n),s.goto.appdata)switch(s.goto.appType?s.goto.appType.toLowerCase():s.goto.app.toLowerCase()){case"custom":break;case"set":s.goto.name=s.goto.appdata.split("=")[0],s.goto.value=s.goto.appdata.split("=")[1];break;case"agi":s.goto.project=s.goto.appdata;break;default:var r=s.goto.appdata.split(",");s.goto.context=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.goto.extension=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.goto.priority=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10)}"outbound"===s.goto.type.toLowerCase()&&"outbounddial"===s.goto.appType.toLowerCase()&&(s.goto.prefix=s.goto.phone?s.goto.phone.split("$")[0]:void 0,s.goto.callerId=s.goto.callerID?"CALLERID(all)="+s.goto.callerID:void 0,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){s.contexts=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppgotoDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.hangup.type.toLowerCase()&&"outboundDial"===s.hangup.appType&&(s.hangup.phone=s.hangup.cutdigits?(s.hangup.prefix||"")+"${EXTEN:"+s.hangup.cutdigits+"}":(s.hangup.prefix||"")+"${EXTEN}",s.hangup.record="none"!==s.hangup.recordingFormat,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:null),s.hangup.appType.toLowerCase()){case"set":s.hangup.appdata=s.hangup.name+"="+s.hangup.value;break;case"custom":break;default:e[0]=s.hangup.appdata,s.hangup.appdata=e.join(",")}o(s.hangup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.hangup=angular.copy(n),s.hangup.appdata)switch(s.hangup.appType?s.hangup.appType.toLowerCase():s.hangup.app.toLowerCase()){case"custom":break;case"set":s.hangup.name=s.hangup.appdata.split("=")[0],s.hangup.value=s.hangup.appdata.split("=")[1];break;case"agi":s.hangup.project=s.hangup.appdata;break;default:var r=s.hangup.appdata.split(",");s.hangup.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.hangup.type.toLowerCase()&&"outbounddial"===s.hangup.appType.toLowerCase()&&(s.hangup.prefix=s.hangup.phone?s.hangup.phone.split("$")[0]:void 0,s.hangup.callerId=s.hangup.callerID?"CALLERID(all)="+s.hangup.callerID:void 0,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteApphangupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.internaldial.type.toLowerCase()&&"outboundDial"===s.internaldial.appType&&(s.internaldial.phone=s.internaldial.cutdigits?(s.internaldial.prefix||"")+"${EXTEN:"+s.internaldial.cutdigits+"}":(s.internaldial.prefix||"")+"${EXTEN}",s.internaldial.record="none"!==s.internaldial.recordingFormat,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:null),s.internaldial.appType.toLowerCase()){case"set":s.internaldial.appdata=s.internaldial.name+"="+s.internaldial.value;break;case"custom":break;default:e[0]=s.internaldial.user,e[1]=s.internaldial.timeout,e[2]=s.internaldial.options,e[3]=s.internaldial.url,s.internaldial.appdata=e.join(",")}o(s.internaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.internaldial=angular.copy(n),s.internaldial.appdata)switch(s.internaldial.appType?s.internaldial.appType.toLowerCase():s.internaldial.app.toLowerCase()){case"custom":break;case"set":s.internaldial.name=s.internaldial.appdata.split("=")[0],s.internaldial.value=s.internaldial.appdata.split("=")[1];break;case"agi":s.internaldial.project=s.internaldial.appdata;break;default:var r=s.internaldial.appdata.split(",");s.internaldial.user=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.internaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.internaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.internaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.internaldial.type.toLowerCase()&&"outbounddial"===s.internaldial.appType.toLowerCase()&&(s.internaldial.prefix=s.internaldial.phone?s.internaldial.phone.split("$")[0]:void 0,s.internaldial.callerId=s.internaldial.callerID?"CALLERID(all)="+s.internaldial.callerID:void 0,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppinternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom&&u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push("*"),u.monthDayFrom&&u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push("*"),u.monthFrom&&u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(i),u.intervals=o,u.newInterval=!1,u.types=["always","custom","list"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],h=p[1],v=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],y=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(y.split(":")[0])),f.setMinutes(Number(y.split(":")[1])),u.timeRangeTo=f}"*"!==h&&(u.dayOfWeekFrom=h.split("-")[0],u.dayOfWeekTo=h.split("-")[1]),"*"!==v&&(u.monthDayFrom=v.split("-")[0],u.monthDayTo=v.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditInboundRouteAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.playback.type.toLowerCase()&&"outboundDial"===s.playback.appType&&(s.playback.phone=s.playback.cutdigits?(s.playback.prefix||"")+"${EXTEN:"+s.playback.cutdigits+"}":(s.playback.prefix||"")+"${EXTEN}",s.playback.record="none"!==s.playback.recordingFormat,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:null),s.playback.appType.toLowerCase()){case"set":s.playback.appdata=s.playback.name+"="+s.playback.value;break;case"custom":break;default:e[0]=s.playback.appdata,e[1]=s.playback.options,s.playback.appdata=e.join(",")}o(s.playback)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.playback=angular.copy(n),s.playback.appdata)switch(s.playback.appType?s.playback.appType.toLowerCase():s.playback.app.toLowerCase()){case"custom":break;case"set":s.playback.name=s.playback.appdata.split("=")[0],s.playback.value=s.playback.appdata.split("=")[1];break;case"agi":s.playback.project=s.playback.appdata;break;default:var r=s.playback.appdata.split(",");s.playback.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.playback.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.playback.type.toLowerCase()&&"outbounddial"===s.playback.appType.toLowerCase()&&(s.playback.prefix=s.playback.phone?s.playback.phone.split("$")[0]:void 0,s.playback.callerId=s.playback.callerID?"CALLERID(all)="+s.playback.callerID:void 0,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppplaybackDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.queue.type.toLowerCase()&&"outboundDial"===s.queue.appType&&(s.queue.phone=s.queue.cutdigits?(s.queue.prefix||"")+"${EXTEN:"+s.queue.cutdigits+"}":(s.queue.prefix||"")+"${EXTEN}",s.queue.record="none"!==s.queue.recordingFormat,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:null),s.queue.appType.toLowerCase()){case"set":s.queue.appdata=s.queue.name+"="+s.queue.value;break;case"custom":break;default:e[0]=s.queue.queue,e[1]=s.queue.options,e[2]=s.queue.URL,e[3]=s.queue.sound,e[4]=s.queue.timeout,e[5]=s.queue.agi,e[6]=s.queue.macro,e[7]=s.queue.gosub,e[8]=s.queue.rule,e[9]=s.queue.position,s.queue.appdata=e.join(",")}o(s.queue)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.queue=angular.copy(n),s.queue.appdata)switch(s.queue.appType?s.queue.appType.toLowerCase():s.queue.app.toLowerCase()){case"custom":break;case"set":s.queue.name=s.queue.appdata.split("=")[0],s.queue.value=s.queue.appdata.split("=")[1];break;case"agi":s.queue.project=s.queue.appdata;break;default:var r=s.queue.appdata.split(",");s.queue.queue=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.queue.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.queue.URL=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.queue.sound=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10),s.queue.timeout=_.isEmpty(r[4])?r[4]:isNaN(r[4])?r[4]:parseInt(r[4],10),s.queue.agi=_.isEmpty(r[5])?r[5]:isNaN(r[5])?r[5]:parseInt(r[5],10),s.queue.macro=_.isEmpty(r[6])?r[6]:isNaN(r[6])?r[6]:parseInt(r[6],10),s.queue.gosub=_.isEmpty(r[7])?r[7]:isNaN(r[7])?r[7]:parseInt(r[7],10),s.queue.rule=_.isEmpty(r[8])?r[8]:isNaN(r[8])?r[8]:parseInt(r[8],10),s.queue.position=_.isEmpty(r[9])?r[9]:isNaN(r[9])?r[9]:parseInt(r[9],10)}"outbound"===s.queue.type.toLowerCase()&&"outbounddial"===s.queue.appType.toLowerCase()&&(s.queue.prefix=s.queue.phone?s.queue.phone.split("$")[0]:void 0,s.queue.callerId=s.queue.callerID?"CALLERID(all)="+s.queue.callerID:void 0,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})}),a.voiceQueue.get({type:"inbound",fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){s.queues=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppqueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.ringgroup.type.toLowerCase()&&"outboundDial"===s.ringgroup.appType&&(s.ringgroup.phone=s.ringgroup.cutdigits?(s.ringgroup.prefix||"")+"${EXTEN:"+s.ringgroup.cutdigits+"}":(s.ringgroup.prefix||"")+"${EXTEN}",s.ringgroup.record="none"!==s.ringgroup.recordingFormat,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:null),s.ringgroup.appType.toLowerCase()){case"set":s.ringgroup.appdata=s.ringgroup.name+"="+s.ringgroup.value;break;case"custom":break;default:e[0]=s.ringgroup.multipleUsers.join("&"),e[1]=s.ringgroup.timeout,e[2]=s.ringgroup.options,e[3]=s.ringgroup.url,s.ringgroup.appdata=e.join(",")}o(s.ringgroup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.ringgroup=angular.copy(n),s.ringgroup.appdata)switch(s.ringgroup.appType?s.ringgroup.appType.toLowerCase():s.ringgroup.app.toLowerCase()){case"custom":break;case"set":s.ringgroup.name=s.ringgroup.appdata.split("=")[0],s.ringgroup.value=s.ringgroup.appdata.split("=")[1];break;case"agi":s.ringgroup.project=s.ringgroup.appdata;break;default:var r=s.ringgroup.appdata.split(",");s.ringgroup.multipleUsers=r[0].split("&"),s.ringgroup.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.ringgroup.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.ringgroup.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.ringgroup.type.toLowerCase()&&"outbounddial"===s.ringgroup.appType.toLowerCase()&&(s.ringgroup.prefix=s.ringgroup.phone?s.ringgroup.phone.split("$")[0]:void 0,s.ringgroup.callerId=s.ringgroup.callerID?"CALLERID(all)="+s.ringgroup.callerID:void 0,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppringgroupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.set.type.toLowerCase()&&"outboundDial"===s.set.appType&&(s.set.phone=s.set.cutdigits?(s.set.prefix||"")+"${EXTEN:"+s.set.cutdigits+"}":(s.set.prefix||"")+"${EXTEN}",s.set.record="none"!==s.set.recordingFormat,s.set.recordingFormat=s.set.record?s.set.recordingFormat:null),s.set.appType.toLowerCase()){case"set":s.set.appdata=s.set.name+"="+s.set.value;break;case"custom":break;default:e[0]=s.set.name,e[1]=s.set.value,s.set.appdata=e.join("=")}o(s.set)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.set=angular.copy(n),s.set.appdata)switch(s.set.appType?s.set.appType.toLowerCase():s.set.app.toLowerCase()){case"custom":break;case"set":s.set.name=s.set.appdata.split("=")[0],s.set.value=s.set.appdata.split("=")[1];break;case"agi":s.set.project=s.set.appdata;break;default:var r=s.set.appdata.split("=");s.set.name=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.set.value=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.set.type.toLowerCase()&&"outbounddial"===s.set.appType.toLowerCase()&&(s.set.prefix=s.set.phone?s.set.phone.split("$")[0]:void 0,s.set.callerId=s.set.callerID?"CALLERID(all)="+s.set.callerID:void 0,s.set.recordingFormat=s.set.record?s.set.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppsetDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.voicemail.type.toLowerCase()&&"outboundDial"===s.voicemail.appType&&(s.voicemail.phone=s.voicemail.cutdigits?(s.voicemail.prefix||"")+"${EXTEN:"+s.voicemail.cutdigits+"}":(s.voicemail.prefix||"")+"${EXTEN}",s.voicemail.record="none"!==s.voicemail.recordingFormat,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:null),s.voicemail.appType.toLowerCase()){case"set":s.voicemail.appdata=s.voicemail.name+"="+s.voicemail.value;break;case"custom":break;default:e[0]=s.voicemail.voiceMail,e[1]=s.voicemail.options,s.voicemail.appdata=e.join(",")}o(s.voicemail)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.voicemail=angular.copy(n),s.voicemail.appdata)switch(s.voicemail.appType?s.voicemail.appType.toLowerCase():s.voicemail.app.toLowerCase()){case"custom":break;case"set":s.voicemail.name=s.voicemail.appdata.split("=")[0],s.voicemail.value=s.voicemail.appdata.split("=")[1];break;case"agi":s.voicemail.project=s.voicemail.appdata;break;default:var r=s.voicemail.appdata.split(",");s.voicemail.voiceMail=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.voicemail.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.voicemail.type.toLowerCase()&&"outbounddial"===s.voicemail.appType.toLowerCase()&&(s.voicemail.prefix=s.voicemail.phone?s.voicemail.phone.split("$")[0]:void 0,s.voicemail.callerId=s.voicemail.callerID?"CALLERID(all)="+s.voicemail.callerID:void 0,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.voiceMail.get({fields:"mailbox",sort:"mailbox"}).$promise.then(function(e){s.voiceMails=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMails",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppvoicemailDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.inboundroutes")}function r(){i.voiceExtension.update({id:l.inboundroute.id},l.inboundroute).$promise.then(function(){a.success({title:"InboundRoute updated!",msg:l.inboundroute.name?l.inboundroute.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.inboundroute=e.params.inboundroute||o||{},l.selectedTab=e.params.tab||0,l.gotoInboundRoutes=s,l.saveInboundRoute=r,i.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","inboundroute"],angular.module("app.voice").controller("InboundRouteController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.inboundroutes.edit",{id:e.id,inboundroute:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the inboundroute?").htmlContent("<b>"+(e.name||"inboundroute")+"</b> will be deleted.").ariaLabel("delete inboundroute").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.inboundroutes=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceExtension.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditInboundRouteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/inboundroutes/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{inboundroute:t,inboundroutes:A.inboundroutes.rows}})}function v(e){l.voiceExtension.delete({id:e.id}).$promise.then(function(){_.remove(A.inboundroutes.rows,{id:e.id}),A.inboundroutes.count-=1,A.inboundroutes.rows.length||A.getInboundRoutes(),c.success({title:"InboundRoute deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedInboundRoutes);return A.selectedInboundRoutes=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected inboundroutes?").htmlContent("<b>"+A.selectedInboundRoutes.length+" selected</b> will be deleted.").ariaLabel("delete InboundRoutes").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedInboundRoutes.forEach(function(e){v(e)}),A.selectedInboundRoutes=[]})}function E(){A.selectedInboundRoutes=[]}function y(){A.selectedInboundRoutes=A.inboundroutes.rows}var A=this;A.inboundroutes=r||{count:0,rows:[]},A.table="inboundroutes",A.listOrder="",A.listOrderAsc=null,A.selectedInboundRoutes=[],A.query={fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"inbound",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getInboundRoutes=g,A.createOrEditInboundRoute=h,A.deleteInboundRoute=v,A.exportSelectedInboundRoutes=b,A.deleteSelectedInboundRoutes=f,A.deselectInboundRoutes=E,A.selectAllInboundRoutes=y,l.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){A.contexts=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getInboundRoutes())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","inboundroutes","api","msUtils","toasty"],angular.module("app.voice").controller("InboundRoutesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceExtension.save(p.internalroute).$promise.then(function(e){p.internalroutes.unshift(e),i.success({title:"InternalRoute properly created",msg:p.internalroute.name?p.internalroute.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceExtension.update({id:p.internalroute.id},p.internalroute).$promise.then(function(e){var t=_.find(p.internalroutes,{id:e.id});t&&_.merge(t,e),i.success({title:"InternalRoute properly saved!",msg:p.internalroute.name?p.internalroute.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The internalroute will be deleted.").ariaLabel("Delete InternalRoute").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceExtension.delete({id:p.internalroute.id}).$promise.then(function(){_.remove(p.internalroutes,{id:p.internalroute.id}),i.success({title:"InternalRoute properly deleted!",msg:(p.internalroute.name||"internalroute")+" has been deleted!"}),u(p.internalroute)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_INTERNALROUTE",p.internalroute=angular.copy(s),p.internalroutes=o,p.newInternalRoute=!1,p.internalroute||(p.internalroute={appdata:"Internal Call",type:"internal",context:"from-sip"},p.title="VOICE.NEW_INTERNALROUTE",p.newInternalRoute=!0),p.addNewInternalRoute=l,p.saveInternalRoute=d,p.deleteInternalRoute=c,p.getDateFromString=m,p.closeDialog=u,r.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){p.contexts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","internalroutes","internalroute","api"],angular.module("app.voice").controller("CreateOrEditInternalRouteDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){g.internalroute=e,g.query.VoiceExtensionId=e.id,g.query.isApp=!0,g.query.nolimit=!0,g.getInternalRouteApps(),g.getIntervals()}function o(e,n,a){var i=t.confirm().title("Are you sure want to delete the application?").htmlContent("<b>"+e.app+"</b> will be deleted.").ariaLabel("delete application").targetEvent(a).ok("OK").cancel("CANCEL");t.show(i).then(function(){g.internalrouteApps.rows.splice(n,1),l()},function(){console.log("CANCEL")})}function s(e,i){if(g.internalrouteApps.rows.length){var o=g.internalrouteApps.rows[i]?g.internalrouteApps.rows[i]:g.internalrouteApps.rows[0];t.show({controller:"EditInternalRouteApp"+(o.appType||o.app).toLowerCase()+"DialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/internalroutes/edit/apps/"+(o.appType||o.app).toLowerCase()+"/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{internalrouteApp:o}}).then(function(e){e&&(e.id?g.internalrouteApps.rows[i]=e:g.internalrouteApps.rows.splice(i,0,e),l())}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:EDITMODALSHOW",msg:e.data?JSON.stringify(e.data):e.toString()})})}}function r(e,a){if(g.internalrouteApps.rows.length){var i=g.internalrouteApps.rows[a]?g.internalrouteApps.rows[a]:g.internalrouteApps.rows[0];t.show({controller:"EditInternalRouteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/internalroutes/edit/apps/interval/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:i.interval,IntervalId:i.IntervalId,application:!0},intervals:[]}}).then(function(e){e&&(i.interval=e.interval||"*,*,*,*",i.IntervalId=e.IntervalId||null,l())})}}function l(){var t=["queue","playback"],n=!1,a=!1,i=2,o=[];o.push({type:"internal",app:"Set",appdata:"CDR(type)=internal",context:g.internalroute.context,exten:g.internalroute.exten,priority:i++,VoiceExtensionId:g.internalroute.id});for(var s=0,r=0;s<g.internalrouteApps.rows.length;s++,r=0){var l=g.internalrouteApps.rows[s],d=[],c=[];l.intervals="*,*,*,*"!==l.interval?[l.interval]:l.IntervalId?_.map(_.filter(g.intervals.rows,{IntervalId:l.IntervalId}),"interval"):[],l.context=g.internalroute.context,l.exten=g.internalroute.exten,l.hasOwnProperty("answer")&&t.includes(l.app.toLowerCase())&&"custom"!==l.appType&&(!n&&l.answer&&(n=!0,d.push({type:l.type,app:"Answer",context:g.internalroute.context,exten:g.internalroute.exten,priority:l.intervals.length+i+r++,VoiceExtensionId:g.internalroute.id})),n||a||l.answer||(a=!0,d.push({type:l.type,app:"Progress",context:g.internalroute.context,exten:g.internalroute.exten,priority:l.intervals.length+i+r++,VoiceExtensionId:g.internalroute.id})));for(var m=0;m<l.intervals.length;m++){var u=i+l.intervals.length,p=m===l.intervals.length-1?i+d.length+c.length+2:i+m+1;d.splice(m,0,{type:"internal",app:"GotoIfTime",appdata:l.intervals[m]+"?"+g.internalroute.context+",${EXTEN},"+u+":"+g.internalroute.context+",${EXTEN},"+p,exten:g.internalroute.exten,context:g.internalroute.context,priority:i+m,VoiceExtensionId:g.internalroute.id})}l.priority=d.length?_.last(d).priority+1:i,i=(c.length?_.last(c).priority:l.priority)+1,o=_.concat(o,d,[l],c)}o.push({type:"internal",app:"Hangup",exten:g.internalroute.exten,context:g.internalroute.context,priority:i,VoiceExtensionId:g.internalroute.id}),e.voiceExtension.addApplications({id:g.internalroute.id},_.sortBy(o,"priority")).$promise.then(function(e){g.internalrouteApps.rows=e.rows}).catch(function(e){console.error(e)})}function d(e){g.internalrouteApps=e||{count:0,rows:[]}}function c(){return e.interval.get({fields:"id,interval,IntervalId"}).$promise.then(function(e){g.intervals=e}).catch(function(e){console.error(e)})}function m(){g.promise=e.voiceExtension.get(g.query,d).$promise}function u(e){_.remove(g.internalrouteApps.rows,{id:e.id}),l(),a.success({title:"App deleted!",msg:e.app?e.app+" has been deleted!":""})}function p(e){var n=t.confirm().title("Are you sure want to delete the selected applications?").htmlContent("<b>"+g.selectedInternalRouteApps.length+" selected</b> will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");t.show(n).then(function(){g.selectedInternalRouteApps.forEach(function(e){_.remove(g.internalrouteApps.rows,{id:e.id})}),g.selectedInternalRouteApps=[],l()})}var g=this;g.internalroute={},g.internalrouteApps={count:0,rows:[]},g.selectedInternalRouteApps=[],g.query={sort:"priority"},g.apps=_.reject(_.sortBy([{app:"Interval",appType:"interval",type:"Internal",types:["always","custom","list"],fields:[],isApp:!1},{app:"Queue",appType:"queue",context:"from-sip",type:"Internal",options:"xX",appdata:",xX,,,300,,,,,",icon:"icon-apps",interval:"*,*,*,*",answer:!0,isApp:!0,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}},{name:"queues",route:"voiceQueue",filters:{type:"inbound",fields:"id,name,type",sort:"name",nolimit:!0}}],fields:[{title:"Queue",name:"queue",type:"apiselect",values:"queues",value:"queue.name",option:"queue.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Url",name:"URL",type:"text",param:2},{title:"Announce_Overrides",name:"sound",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}'",option:"sound.name",defaultValues:[{value:"''",option:"None"}],param:3},{title:"Timeout",name:"timeout",type:"number",min:0,param:4},{title:"Agi",name:"agi",type:"text",param:5},{title:"Macro",name:"macro",type:"text",param:6},{title:"GoSub",name:"gosub",type:"text",param:7},{title:"Rule",name:"rule",type:"text",param:8},{title:"Position",name:"position",type:"number",min:0,param:9},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Playback",appType:"playback",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",answer:!0,isApp:!0,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}}],fields:[{title:"Audio_Files",name:"appdata",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}'",option:"appdata.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Dial",appType:"dial",context:"from-sip",type:"Internal",icon:"icon-apps",options:"xX",interval:"*,*,*,*",isApp:!0,fields:[{title:"Technology/Resource",name:"tech",type:"text",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"internalDial",context:"from-sip",type:"Internal",icon:"icon-apps",options:"xX",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"user",type:"apiselect",values:"users",value:"'SIP/{{user.name}}'",option:"user.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"externalDial",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"trunks",route:"trunk",filters:{fields:"name",sort:"name"}}],fields:[{title:"Trunk",name:"trunk",type:"apiselect",values:"trunks",value:"trunk.name",option:"trunk.name",required:!0,param:0},{title:"Phone",name:"phone",type:"text"},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"ringGroup",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"multipleUsers",type:"apiselect",multiple:!0,values:"users",value:"'SIP/{{multipleUsers.name}}'",option:"multipleUsers.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"AGI",alias:"CallySquare",appType:"agi",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"projects",route:"squareProject",filters:{fields:"name",sort:"name"}}],fields:[{title:"Project",name:"project",type:"apiselect",values:"projects",value:"'agi://127.0.0.1/square,{{project.name}}'",option:"project.name",required:!0,param:0}]},{app:"goto",appType:"goTo",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"contexts",route:"voiceContext",filters:{fields:"name",sort:"name"}}],fields:[{title:"Context",name:"context",type:"apiselect",values:"contexts",value:"context.name",option:"context.name",required:!0,param:0},{title:"Extension",name:"extension",type:"text",required:!0,param:1},{title:"Priority",name:"priority",type:"text",required:!0,param:2}]},{app:"hangup",appType:"hangup",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Hangup_Cause",name:"appdata",type:"select",param:0,values:[{option:"HANGUPCAUSE_1",value:"'1'"},{option:"HANGUPCAUSE_16",value:"'16'"},{option:"HANGUPCAUSE_17",value:"'17'"},{option:"HANGUPCAUSE_18",value:"'18'"},{option:"HANGUPCAUSE_21",value:"'21'"},{option:"HANGUPCAUSE_22",value:"'22'"},{option:"HANGUPCAUSE_27",value:"'27'"},{option:"HANGUPCAUSE_38",value:"'38'"},{option:"HANGUPCAUSE_41",value:"'41'"}],translate:!0,required:!0,general:!0}]},{app:"Set",appType:"set",context:"from-sip",type:"Internal",separator:"=",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Variable",name:"name",type:"text",required:!0,param:0},{title:"Value",name:"value",type:"text",required:!0,param:1}]},{app:null,appType:"Custom",icon:"icon-apps",type:"Internal",interval:"*,*,*,*",isApp:!0,fields:[{title:"Application_Name",name:"app",type:"text",required:!0,param:0},{title:"Arguments",name:"appdata",type:"text",param:1}]},{app:"Voicemail",appType:"voicemail",context:"from-sip",icon:"icon-apps",type:"Internal",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"voiceMails",route:"voiceMail",filters:{fields:"mailbox",sort:"mailbox"}}],fields:[{title:"Mailbox@Context",name:"voiceMail",type:"apiselect",values:"voiceMails",value:"'{{voiceMail.mailbox}}@from-voicemail'",option:"voiceMail.mailbox",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1}]}],["app"]),{isApp:!1}),g.list={group:{name:"opt1",pull:"clone"},animation:100,sort:!1},g.applications={group:{name:"opt2",put:"opt1"},animation:100,onAdd:function(e){s(e,e.newIndex)},onSort:function(e){l()}},g.init=i,g.deleteConfirm=o,g.getInternalRouteApps=m,g.editInternalRouteApp=s,g.editInterval=r,g.deleteInternalRouteApp=u,g.deleteSelectedInternalRouteApps=p,g.rewriteRouting=l,g.getIntervals=c}e.$inject=["api","$mdDialog","$document","toasty"],angular.module("app.voice").controller("InternalRouteActionsController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.agi.type.toLowerCase()&&"outboundDial"===s.agi.appType&&(s.agi.phone=s.agi.cutdigits?(s.agi.prefix||"")+"${EXTEN:"+s.agi.cutdigits+"}":(s.agi.prefix||"")+"${EXTEN}",s.agi.record="none"!==s.agi.recordingFormat,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:null),s.agi.appType.toLowerCase()){case"set":s.agi.appdata=s.agi.name+"="+s.agi.value;break;case"custom":break;default:e[0]=s.agi.project,s.agi.appdata=e.join(",")}o(s.agi)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.agi=angular.copy(n),s.agi.appdata)switch(s.agi.appType?s.agi.appType.toLowerCase():s.agi.app.toLowerCase()){case"custom":break;case"set":s.agi.name=s.agi.appdata.split("=")[0],s.agi.value=s.agi.appdata.split("=")[1];break;case"agi":s.agi.project=s.agi.appdata;break;default:var r=s.agi.appdata.split(",");s.agi.project=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.agi.type.toLowerCase()&&"outbounddial"===s.agi.appType.toLowerCase()&&(s.agi.prefix=s.agi.phone?s.agi.phone.split("$")[0]:void 0,s.agi.callerId=s.agi.callerID?"CALLERID(all)="+s.agi.callerID:void 0,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.squareProject.get({fields:"name",sort:"name"}).$promise.then(function(e){s.projects=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppagiDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.custom.type.toLowerCase()&&"outboundDial"===s.custom.appType&&(s.custom.phone=s.custom.cutdigits?(s.custom.prefix||"")+"${EXTEN:"+s.custom.cutdigits+"}":(s.custom.prefix||"")+"${EXTEN}",s.custom.record="none"!==s.custom.recordingFormat,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:null),s.custom.appType.toLowerCase()){case"set":s.custom.appdata=s.custom.name+"="+s.custom.value;break;case"custom":break;default:e[0]=s.custom.app,e[1]=s.custom.appdata,s.custom.appdata=e.join(",")}o(s.custom)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.custom=angular.copy(n),s.custom.appdata)switch(s.custom.appType?s.custom.appType.toLowerCase():s.custom.app.toLowerCase()){case"custom":break;case"set":s.custom.name=s.custom.appdata.split("=")[0],s.custom.value=s.custom.appdata.split("=")[1];break;case"agi":s.custom.project=s.custom.appdata;break;default:var r=s.custom.appdata.split(",");s.custom.app=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.custom.appdata=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.custom.type.toLowerCase()&&"outbounddial"===s.custom.appType.toLowerCase()&&(s.custom.prefix=s.custom.phone?s.custom.phone.split("$")[0]:void 0,s.custom.callerId=s.custom.callerID?"CALLERID(all)="+s.custom.callerID:void 0,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppcustomDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.dial.type.toLowerCase()&&"outboundDial"===s.dial.appType&&(s.dial.phone=s.dial.cutdigits?(s.dial.prefix||"")+"${EXTEN:"+s.dial.cutdigits+"}":(s.dial.prefix||"")+"${EXTEN}",s.dial.record="none"!==s.dial.recordingFormat,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:null),s.dial.appType.toLowerCase()){case"set":s.dial.appdata=s.dial.name+"="+s.dial.value;break;case"custom":break;default:e[0]=s.dial.tech,e[1]=s.dial.timeout,e[2]=s.dial.options,e[3]=s.dial.url,s.dial.appdata=e.join(",")}o(s.dial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.dial=angular.copy(n),s.dial.appdata)switch(s.dial.appType?s.dial.appType.toLowerCase():s.dial.app.toLowerCase()){case"custom":break;case"set":s.dial.name=s.dial.appdata.split("=")[0],s.dial.value=s.dial.appdata.split("=")[1];break;case"agi":s.dial.project=s.dial.appdata;break;default:var r=s.dial.appdata.split(",");s.dial.tech=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.dial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.dial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.dial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.dial.type.toLowerCase()&&"outbounddial"===s.dial.appType.toLowerCase()&&(s.dial.prefix=s.dial.phone?s.dial.phone.split("$")[0]:void 0,s.dial.callerId=s.dial.callerID?"CALLERID(all)="+s.dial.callerID:void 0,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppdialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.externaldial.type.toLowerCase()&&"outboundDial"===s.externaldial.appType&&(s.externaldial.phone=s.externaldial.cutdigits?(s.externaldial.prefix||"")+"${EXTEN:"+s.externaldial.cutdigits+"}":(s.externaldial.prefix||"")+"${EXTEN}",s.externaldial.record="none"!==s.externaldial.recordingFormat,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:null),s.externaldial.appType.toLowerCase()){case"set":s.externaldial.appdata=s.externaldial.name+"="+s.externaldial.value;break;case"custom":break;default:e[0]=["SIP",s.externaldial.trunk,s.externaldial.phone].join("/"),e[1]=s.externaldial.timeout,e[2]=s.externaldial.options,e[3]=s.externaldial.url,s.externaldial.appdata=e.join(",")}o(s.externaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.externaldial=angular.copy(n),s.externaldial.appdata)switch(s.externaldial.appType?s.externaldial.appType.toLowerCase():s.externaldial.app.toLowerCase()){case"custom":break;case"set":s.externaldial.name=s.externaldial.appdata.split("=")[0],s.externaldial.value=s.externaldial.appdata.split("=")[1];break;case"agi":s.externaldial.project=s.externaldial.appdata;break;default:var r=s.externaldial.appdata.split(",");s.externaldial.trunk=r[0].split("/")[1],s.externaldial.phone=r[0].split("/")[2],s.externaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.externaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.externaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.externaldial.type.toLowerCase()&&"outbounddial"===s.externaldial.appType.toLowerCase()&&(s.externaldial.prefix=s.externaldial.phone?s.externaldial.phone.split("$")[0]:void 0,s.externaldial.callerId=s.externaldial.callerID?"CALLERID(all)="+s.externaldial.callerID:void 0,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.trunk.get({fields:"name",sort:"name"}).$promise.then(function(e){s.trunks=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppexternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.goto.type.toLowerCase()&&"outboundDial"===s.goto.appType&&(s.goto.phone=s.goto.cutdigits?(s.goto.prefix||"")+"${EXTEN:"+s.goto.cutdigits+"}":(s.goto.prefix||"")+"${EXTEN}",s.goto.record="none"!==s.goto.recordingFormat,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:null),s.goto.appType.toLowerCase()){case"set":s.goto.appdata=s.goto.name+"="+s.goto.value;break;case"custom":break;default:e[0]=s.goto.context,e[1]=s.goto.extension,e[2]=s.goto.priority,s.goto.appdata=e.join(",")}o(s.goto)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.goto=angular.copy(n),s.goto.appdata)switch(s.goto.appType?s.goto.appType.toLowerCase():s.goto.app.toLowerCase()){case"custom":break;case"set":s.goto.name=s.goto.appdata.split("=")[0],s.goto.value=s.goto.appdata.split("=")[1];break;case"agi":s.goto.project=s.goto.appdata;break;default:var r=s.goto.appdata.split(",");s.goto.context=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.goto.extension=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.goto.priority=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10)}"outbound"===s.goto.type.toLowerCase()&&"outbounddial"===s.goto.appType.toLowerCase()&&(s.goto.prefix=s.goto.phone?s.goto.phone.split("$")[0]:void 0,s.goto.callerId=s.goto.callerID?"CALLERID(all)="+s.goto.callerID:void 0,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){s.contexts=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppgotoDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.hangup.type.toLowerCase()&&"outboundDial"===s.hangup.appType&&(s.hangup.phone=s.hangup.cutdigits?(s.hangup.prefix||"")+"${EXTEN:"+s.hangup.cutdigits+"}":(s.hangup.prefix||"")+"${EXTEN}",s.hangup.record="none"!==s.hangup.recordingFormat,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:null),s.hangup.appType.toLowerCase()){case"set":s.hangup.appdata=s.hangup.name+"="+s.hangup.value;break;case"custom":break;default:e[0]=s.hangup.appdata,s.hangup.appdata=e.join(",")}o(s.hangup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.hangup=angular.copy(n),s.hangup.appdata)switch(s.hangup.appType?s.hangup.appType.toLowerCase():s.hangup.app.toLowerCase()){case"custom":break;case"set":s.hangup.name=s.hangup.appdata.split("=")[0],s.hangup.value=s.hangup.appdata.split("=")[1];break;case"agi":s.hangup.project=s.hangup.appdata;break;default:var r=s.hangup.appdata.split(",");s.hangup.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.hangup.type.toLowerCase()&&"outbounddial"===s.hangup.appType.toLowerCase()&&(s.hangup.prefix=s.hangup.phone?s.hangup.phone.split("$")[0]:void 0,s.hangup.callerId=s.hangup.callerID?"CALLERID(all)="+s.hangup.callerID:void 0,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteApphangupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.internaldial.type.toLowerCase()&&"outboundDial"===s.internaldial.appType&&(s.internaldial.phone=s.internaldial.cutdigits?(s.internaldial.prefix||"")+"${EXTEN:"+s.internaldial.cutdigits+"}":(s.internaldial.prefix||"")+"${EXTEN}",s.internaldial.record="none"!==s.internaldial.recordingFormat,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:null),s.internaldial.appType.toLowerCase()){case"set":s.internaldial.appdata=s.internaldial.name+"="+s.internaldial.value;break;case"custom":break;default:e[0]=s.internaldial.user,e[1]=s.internaldial.timeout,e[2]=s.internaldial.options,e[3]=s.internaldial.url,s.internaldial.appdata=e.join(",")}o(s.internaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.internaldial=angular.copy(n),s.internaldial.appdata)switch(s.internaldial.appType?s.internaldial.appType.toLowerCase():s.internaldial.app.toLowerCase()){case"custom":break;case"set":s.internaldial.name=s.internaldial.appdata.split("=")[0],s.internaldial.value=s.internaldial.appdata.split("=")[1];break;case"agi":s.internaldial.project=s.internaldial.appdata;break;default:var r=s.internaldial.appdata.split(",");s.internaldial.user=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.internaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.internaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.internaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.internaldial.type.toLowerCase()&&"outbounddial"===s.internaldial.appType.toLowerCase()&&(s.internaldial.prefix=s.internaldial.phone?s.internaldial.phone.split("$")[0]:void 0,s.internaldial.callerId=s.internaldial.callerID?"CALLERID(all)="+s.internaldial.callerID:void 0,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppinternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom&&u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push("*"),u.monthDayFrom&&u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push("*"),u.monthFrom&&u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(i),u.intervals=o,u.newInterval=!1,u.types=["always","custom","list"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],h=p[1],v=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],y=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(y.split(":")[0])),f.setMinutes(Number(y.split(":")[1])),u.timeRangeTo=f}"*"!==h&&(u.dayOfWeekFrom=h.split("-")[0],u.dayOfWeekTo=h.split("-")[1]),"*"!==v&&(u.monthDayFrom=v.split("-")[0],u.monthDayTo=v.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditInternalRouteAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.playback.type.toLowerCase()&&"outboundDial"===s.playback.appType&&(s.playback.phone=s.playback.cutdigits?(s.playback.prefix||"")+"${EXTEN:"+s.playback.cutdigits+"}":(s.playback.prefix||"")+"${EXTEN}",s.playback.record="none"!==s.playback.recordingFormat,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:null),s.playback.appType.toLowerCase()){case"set":s.playback.appdata=s.playback.name+"="+s.playback.value;break;case"custom":break;default:e[0]=s.playback.appdata,e[1]=s.playback.options,s.playback.appdata=e.join(",")}o(s.playback)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.playback=angular.copy(n),s.playback.appdata)switch(s.playback.appType?s.playback.appType.toLowerCase():s.playback.app.toLowerCase()){case"custom":break;case"set":s.playback.name=s.playback.appdata.split("=")[0],s.playback.value=s.playback.appdata.split("=")[1];break;case"agi":s.playback.project=s.playback.appdata;break;default:var r=s.playback.appdata.split(",");s.playback.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.playback.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.playback.type.toLowerCase()&&"outbounddial"===s.playback.appType.toLowerCase()&&(s.playback.prefix=s.playback.phone?s.playback.phone.split("$")[0]:void 0,s.playback.callerId=s.playback.callerID?"CALLERID(all)="+s.playback.callerID:void 0,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppplaybackDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.queue.type.toLowerCase()&&"outboundDial"===s.queue.appType&&(s.queue.phone=s.queue.cutdigits?(s.queue.prefix||"")+"${EXTEN:"+s.queue.cutdigits+"}":(s.queue.prefix||"")+"${EXTEN}",s.queue.record="none"!==s.queue.recordingFormat,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:null),s.queue.appType.toLowerCase()){case"set":s.queue.appdata=s.queue.name+"="+s.queue.value;break;case"custom":break;default:e[0]=s.queue.queue,e[1]=s.queue.options,e[2]=s.queue.URL,e[3]=s.queue.sound,e[4]=s.queue.timeout,e[5]=s.queue.agi,e[6]=s.queue.macro,e[7]=s.queue.gosub,e[8]=s.queue.rule,e[9]=s.queue.position,s.queue.appdata=e.join(",")}o(s.queue)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.queue=angular.copy(n),s.queue.appdata)switch(s.queue.appType?s.queue.appType.toLowerCase():s.queue.app.toLowerCase()){case"custom":break;case"set":s.queue.name=s.queue.appdata.split("=")[0],s.queue.value=s.queue.appdata.split("=")[1];break;case"agi":s.queue.project=s.queue.appdata;break;default:var r=s.queue.appdata.split(",");s.queue.queue=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.queue.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.queue.URL=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.queue.sound=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10),s.queue.timeout=_.isEmpty(r[4])?r[4]:isNaN(r[4])?r[4]:parseInt(r[4],10),s.queue.agi=_.isEmpty(r[5])?r[5]:isNaN(r[5])?r[5]:parseInt(r[5],10),s.queue.macro=_.isEmpty(r[6])?r[6]:isNaN(r[6])?r[6]:parseInt(r[6],10),s.queue.gosub=_.isEmpty(r[7])?r[7]:isNaN(r[7])?r[7]:parseInt(r[7],10),s.queue.rule=_.isEmpty(r[8])?r[8]:isNaN(r[8])?r[8]:parseInt(r[8],10),s.queue.position=_.isEmpty(r[9])?r[9]:isNaN(r[9])?r[9]:parseInt(r[9],10)}"outbound"===s.queue.type.toLowerCase()&&"outbounddial"===s.queue.appType.toLowerCase()&&(s.queue.prefix=s.queue.phone?s.queue.phone.split("$")[0]:void 0,s.queue.callerId=s.queue.callerID?"CALLERID(all)="+s.queue.callerID:void 0,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})}),a.voiceQueue.get({type:"inbound",fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){s.queues=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppqueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.ringgroup.type.toLowerCase()&&"outboundDial"===s.ringgroup.appType&&(s.ringgroup.phone=s.ringgroup.cutdigits?(s.ringgroup.prefix||"")+"${EXTEN:"+s.ringgroup.cutdigits+"}":(s.ringgroup.prefix||"")+"${EXTEN}",s.ringgroup.record="none"!==s.ringgroup.recordingFormat,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:null),s.ringgroup.appType.toLowerCase()){case"set":s.ringgroup.appdata=s.ringgroup.name+"="+s.ringgroup.value;break;case"custom":break;default:e[0]=s.ringgroup.multipleUsers.join("&"),e[1]=s.ringgroup.timeout,e[2]=s.ringgroup.options,e[3]=s.ringgroup.url,s.ringgroup.appdata=e.join(",")}o(s.ringgroup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.ringgroup=angular.copy(n),s.ringgroup.appdata)switch(s.ringgroup.appType?s.ringgroup.appType.toLowerCase():s.ringgroup.app.toLowerCase()){case"custom":break;case"set":s.ringgroup.name=s.ringgroup.appdata.split("=")[0],s.ringgroup.value=s.ringgroup.appdata.split("=")[1];break;case"agi":s.ringgroup.project=s.ringgroup.appdata;break;default:var r=s.ringgroup.appdata.split(",");s.ringgroup.multipleUsers=r[0].split("&"),s.ringgroup.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.ringgroup.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.ringgroup.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.ringgroup.type.toLowerCase()&&"outbounddial"===s.ringgroup.appType.toLowerCase()&&(s.ringgroup.prefix=s.ringgroup.phone?s.ringgroup.phone.split("$")[0]:void 0,s.ringgroup.callerId=s.ringgroup.callerID?"CALLERID(all)="+s.ringgroup.callerID:void 0,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppringgroupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.set.type.toLowerCase()&&"outboundDial"===s.set.appType&&(s.set.phone=s.set.cutdigits?(s.set.prefix||"")+"${EXTEN:"+s.set.cutdigits+"}":(s.set.prefix||"")+"${EXTEN}",s.set.record="none"!==s.set.recordingFormat,s.set.recordingFormat=s.set.record?s.set.recordingFormat:null),s.set.appType.toLowerCase()){case"set":s.set.appdata=s.set.name+"="+s.set.value;break;case"custom":break;default:e[0]=s.set.name,e[1]=s.set.value,s.set.appdata=e.join("=")}o(s.set)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.set=angular.copy(n),s.set.appdata)switch(s.set.appType?s.set.appType.toLowerCase():s.set.app.toLowerCase()){case"custom":break;case"set":s.set.name=s.set.appdata.split("=")[0],s.set.value=s.set.appdata.split("=")[1];break;case"agi":s.set.project=s.set.appdata;break;default:var r=s.set.appdata.split("=");s.set.name=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.set.value=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.set.type.toLowerCase()&&"outbounddial"===s.set.appType.toLowerCase()&&(s.set.prefix=s.set.phone?s.set.phone.split("$")[0]:void 0,s.set.callerId=s.set.callerID?"CALLERID(all)="+s.set.callerID:void 0,s.set.recordingFormat=s.set.record?s.set.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppsetDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.voicemail.type.toLowerCase()&&"outboundDial"===s.voicemail.appType&&(s.voicemail.phone=s.voicemail.cutdigits?(s.voicemail.prefix||"")+"${EXTEN:"+s.voicemail.cutdigits+"}":(s.voicemail.prefix||"")+"${EXTEN}",s.voicemail.record="none"!==s.voicemail.recordingFormat,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:null),s.voicemail.appType.toLowerCase()){case"set":s.voicemail.appdata=s.voicemail.name+"="+s.voicemail.value;break;case"custom":break;default:e[0]=s.voicemail.voiceMail,e[1]=s.voicemail.options,s.voicemail.appdata=e.join(",")}o(s.voicemail)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.voicemail=angular.copy(n),s.voicemail.appdata)switch(s.voicemail.appType?s.voicemail.appType.toLowerCase():s.voicemail.app.toLowerCase()){case"custom":break;case"set":s.voicemail.name=s.voicemail.appdata.split("=")[0],s.voicemail.value=s.voicemail.appdata.split("=")[1];break;case"agi":s.voicemail.project=s.voicemail.appdata;break;default:var r=s.voicemail.appdata.split(",");s.voicemail.voiceMail=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.voicemail.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.voicemail.type.toLowerCase()&&"outbounddial"===s.voicemail.appType.toLowerCase()&&(s.voicemail.prefix=s.voicemail.phone?s.voicemail.phone.split("$")[0]:void 0,s.voicemail.callerId=s.voicemail.callerID?"CALLERID(all)="+s.voicemail.callerID:void 0,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.voiceMail.get({fields:"mailbox",sort:"mailbox"}).$promise.then(function(e){s.voiceMails=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMails",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppvoicemailDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.internalroutes")}function r(){i.voiceExtension.update({id:l.internalroute.id},l.internalroute).$promise.then(function(){a.success({title:"InternalRoute updated!",msg:l.internalroute.name?l.internalroute.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.internalroute=e.params.internalroute||o||{},l.selectedTab=e.params.tab||0,l.gotoInternalRoutes=s,l.saveInternalRoute=r,i.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","internalroute"],angular.module("app.voice").controller("InternalRouteController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.internalroutes.edit",{id:e.id,internalroute:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the internalroute?").htmlContent("<b>"+(e.name||"internalroute")+"</b> will be deleted.").ariaLabel("delete internalroute").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.internalroutes=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceExtension.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditInternalRouteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/internalroutes/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{internalroute:t,internalroutes:A.internalroutes.rows}})}function v(e){l.voiceExtension.delete({id:e.id}).$promise.then(function(){_.remove(A.internalroutes.rows,{id:e.id}),A.internalroutes.count-=1,A.internalroutes.rows.length||A.getInternalRoutes(),c.success({title:"InternalRoute deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedInternalRoutes);return A.selectedInternalRoutes=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected internalroutes?").htmlContent("<b>"+A.selectedInternalRoutes.length+" selected</b> will be deleted.").ariaLabel("delete InternalRoutes").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedInternalRoutes.forEach(function(e){v(e)}),A.selectedInternalRoutes=[]})}function E(){A.selectedInternalRoutes=[]}function y(){A.selectedInternalRoutes=A.internalroutes.rows}var A=this;A.internalroutes=r||{count:0,rows:[]},A.table="internalroutes",A.listOrder="",A.listOrderAsc=null,A.selectedInternalRoutes=[],A.query={fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"internal",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getInternalRoutes=g,A.createOrEditInternalRoute=h,A.deleteInternalRoute=v,A.exportSelectedInternalRoutes=b,A.deleteSelectedInternalRoutes=f,A.deselectInternalRoutes=E,A.selectAllInternalRoutes=y,l.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){A.contexts=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getInternalRoutes())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","internalroutes","api","msUtils","toasty"],angular.module("app.voice").controller("InternalRoutesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceMusicOnHold.save(p.musiconhold).$promise.then(function(e){p.musiconholds.unshift(e),i.success({title:"MusicOnHold properly created",msg:p.musiconhold.name?p.musiconhold.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMusicOnHold.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceMusicOnHold.update({id:p.musiconhold.id},p.musiconhold).$promise.then(function(e){var t=_.find(p.musiconholds,{id:e.id});t&&_.merge(t,e),i.success({title:"MusicOnHold properly saved!",msg:p.musiconhold.name?p.musiconhold.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMusicOnHold.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The musiconhold will be deleted.").ariaLabel("Delete MusicOnHold").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceMusicOnHold.delete({id:p.musiconhold.id}).$promise.then(function(){_.remove(p.musiconholds,{id:p.musiconhold.id}),i.success({title:"MusicOnHold properly deleted!",msg:(p.musiconhold.name||"musiconhold")+" has been deleted!"}),u(p.musiconhold)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_MUSICONHOLD",p.musiconhold=angular.copy(s),p.musiconholds=o,p.newMusicOnHold=!1,p.musiconhold||(p.musiconhold={mode:"files"},p.title="VOICE.NEW_MUSICONHOLD",p.newMusicOnHold=!0),p.addNewMusicOnHold=l,p.saveMusicOnHold=d,p.deleteMusicOnHold=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","musiconholds","musiconhold","api"],angular.module("app.voice").controller("CreateOrEditMusicOnHoldDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.musiconhold=e,h.query.id=h.musiconhold.id,h.query.VoiceMusicOnHoldId=h.musiconhold.id,h.getMusicOnHoldMohSounds()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the mohSound?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete mohSound").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.musiconholdMohSounds=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceMusicOnHold.getSounds(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditMohSoundDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/musiconholds/edit/mohSounds/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{mohSound:t,mohSounds:h.musiconholdMohSounds.rows}})}function p(e){r.voiceMusicOnHold.removeSound({id:n.params.id,id2:e.id}).$promise.then(function(){_.remove(h.musiconholdMohSounds.rows,{id:e.id}),h.musiconholdMohSounds.count-=1,h.musiconholdMohSounds.rows.length||h.getMusicOnHoldMohSounds(),s.success({title:"MohSound deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMusicOnHold",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected mohSounds?").htmlContent("<b>"+h.selectedMusicOnHoldMohSounds.length+" selected</b> will be deleted.").ariaLabel("delete mohSounds").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedMusicOnHoldMohSounds.forEach(function(e){p(e)}),h.selectedMusicOnHoldMohSounds=[]})}var h=this;h.musiconhold={},h.musiconholdMohSounds={count:0,rows:[]},h.selectedMusicOnHoldMohSounds=[],h.query={fields:"createdAt,updatedAt,id,audio,id,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getMusicOnHoldMohSounds=m,h.createOrEditMusicOnHoldMohSound=u,h.deleteMusicOnHoldMohSound=p,h.deleteSelectedMusicOnHoldMohSounds=g,r.sound.get({fields:"name,id",sort:"name"}).$promise.then(function(e){h.sounds=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})});var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getMusicOnHoldMohSounds())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.voice").controller("MusicOnHoldMohSoundsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceMusicOnHold.addSound({id:t.params.id},p.mohSound).$promise.then(function(e){p.mohSounds.unshift(e),i.success({title:"MohSound properly created",msg:p.mohSound.name?p.mohSound.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMusicOnHold.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceMusicOnHold.update({id:p.mohSound.id},p.mohSound).$promise.then(function(e){var t=_.find(p.mohSounds,{id:e.id});t&&_.merge(t,e),i.success({title:"MohSound properly saved!",msg:p.mohSound.name?p.mohSound.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMusicOnHold.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The mohSound will be deleted.").ariaLabel("Delete MohSound").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceMusicOnHold.delete({id:p.mohSound.id}).$promise.then(function(){_.remove(p.mohSounds,{id:p.mohSound.id}),i.success({title:"MohSound properly deleted!",msg:(p.mohSound.name||"mohSound")+" has been deleted!"}),u(p.mohSound)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_MOHSOUND",p.mohSound=angular.copy(s),p.mohSounds=o,p.newMohSound=!1,p.mohSound||(p.mohSound={},p.title="VOICE.NEW_MOHSOUND",p.newMohSound=!0),t.params.id&&(p.mohSound.VoiceMusicOnHoldId=t.params.id),p.addNewMohSound=l,p.saveMohSound=d,p.deleteMohSound=c,p.getDateFromString=m,p.closeDialog=u,r.sound.get({fields:"name,id",sort:"name"}).$promise.then(function(e){p.sounds=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","mohSounds","mohSound","api"],angular.module("app.voice").controller("CreateOrEditMohSoundDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.musiconholds")}function r(){i.voiceMusicOnHold.update({id:l.musiconhold.id},l.musiconhold).$promise.then(function(){a.success({title:"MusicOnHold updated!",msg:l.musiconhold.name?l.musiconhold.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMusicOnHold",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.musiconhold=e.params.musiconhold||o||{},l.selectedTab=e.params.tab||0,l.gotoMusicOnHolds=s,l.saveMusicOnHold=r}e.$inject=["$state","$mdDialog","$document","toasty","api","musiconhold"],angular.module("app.voice").controller("MusicOnHoldController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.musiconholds.edit",{id:e.id,musiconhold:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the musiconhold?").htmlContent("<b>"+(e.name||"musiconhold")+"</b> will be deleted.").ariaLabel("delete musiconhold").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.musiconholds=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceMusicOnHold.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditMusicOnHoldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/musiconholds/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{musiconhold:t,musiconholds:A.musiconholds.rows}})}function v(e){l.voiceMusicOnHold.delete({id:e.id}).$promise.then(function(){_.remove(A.musiconholds.rows,{id:e.id}),A.musiconholds.count-=1,A.musiconholds.rows.length||A.getMusicOnHolds(),c.success({title:"MusicOnHold deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMusicOnHold",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedMusicOnHolds);return A.selectedMusicOnHolds=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected musiconholds?").htmlContent("<b>"+A.selectedMusicOnHolds.length+" selected</b> will be deleted.").ariaLabel("delete MusicOnHolds").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedMusicOnHolds.forEach(function(e){v(e)}),A.selectedMusicOnHolds=[]})}function E(){A.selectedMusicOnHolds=[]}function y(){A.selectedMusicOnHolds=A.musiconholds.rows}var A=this;A.musiconholds=r||{count:0,rows:[]},A.table="musiconholds",A.listOrder="",A.listOrderAsc=null,A.selectedMusicOnHolds=[],A.query={fields:"createdAt,updatedAt,id,name,mode,directory,application,format,sort",sort:"-updatedAt",defaultEntry:"false",limit:10,page:1},A.arraymode=_.keyBy([{option:"Files",value:"'files'"},{option:"Custom",value:"'custom'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraysort=_.keyBy([{option:"Random",value:"'random'"},{option:"Alphabetical",value:"'alpha'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getMusicOnHolds=g,A.createOrEditMusicOnHold=h,A.deleteMusicOnHold=v,A.exportSelectedMusicOnHolds=b,A.deleteSelectedMusicOnHolds=f,A.deselectMusicOnHolds=E,A.selectAllMusicOnHolds=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getMusicOnHolds())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","musiconholds","api","msUtils","toasty"],angular.module("app.voice").controller("MusicOnHoldsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceExtension.save(p.outboundroute).$promise.then(function(e){p.outboundroutes.unshift(e),i.success({title:"OutboundRoute properly created",msg:p.outboundroute.name?p.outboundroute.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceExtension.update({id:p.outboundroute.id},p.outboundroute).$promise.then(function(e){var t=_.find(p.outboundroutes,{id:e.id});t&&_.merge(t,e),i.success({title:"OutboundRoute properly saved!",msg:p.outboundroute.name?p.outboundroute.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The outboundroute will be deleted.").ariaLabel("Delete OutboundRoute").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceExtension.delete({id:p.outboundroute.id}).$promise.then(function(){_.remove(p.outboundroutes,{id:p.outboundroute.id}),i.success({title:"OutboundRoute properly deleted!",msg:(p.outboundroute.name||"outboundroute")+" has been deleted!"}),u(p.outboundroute)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_OUTBOUNDROUTE",p.outboundroute=angular.copy(s),p.outboundroutes=o,p.newOutboundRoute=!1,p.outboundroute||(p.outboundroute={appdata:"Outbound Call",type:"outbound",context:"from-sip"},p.title="VOICE.NEW_OUTBOUNDROUTE",p.newOutboundRoute=!0),p.addNewOutboundRoute=l,p.saveOutboundRoute=d,p.deleteOutboundRoute=c,p.getDateFromString=m,p.closeDialog=u,r.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){p.contexts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","outboundroutes","outboundroute","api"],angular.module("app.voice").controller("CreateOrEditOutboundRouteDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){g.outboundroute=e,g.query.VoiceExtensionId=e.id,g.query.isApp=!0,g.query.nolimit=!0,g.getOutboundRouteApps(),g.getIntervals()}function o(e,n,a){var i=t.confirm().title("Are you sure want to delete the application?").htmlContent("<b>"+e.app+"</b> will be deleted.").ariaLabel("delete application").targetEvent(a).ok("OK").cancel("CANCEL");t.show(i).then(function(){g.outboundrouteApps.rows.splice(n,1),l()},function(){console.log("CANCEL")})}function s(e,i){if(g.outboundrouteApps.rows.length){var o=g.outboundrouteApps.rows[i]?g.outboundrouteApps.rows[i]:g.outboundrouteApps.rows[0];t.show({controller:"EditOutboundRouteApp"+(o.appType||o.app).toLowerCase()+"DialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/outboundroutes/edit/apps/"+(o.appType||o.app).toLowerCase()+"/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{outboundrouteApp:o}}).then(function(e){e&&(e.id?g.outboundrouteApps.rows[i]=e:g.outboundrouteApps.rows.splice(i,0,e),l())}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:EDITMODALSHOW",msg:e.data?JSON.stringify(e.data):e.toString()})})}}function r(e,a){if(g.outboundrouteApps.rows.length){var i=g.outboundrouteApps.rows[a]?g.outboundrouteApps.rows[a]:g.outboundrouteApps.rows[0];t.show({controller:"EditOutboundRouteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/outboundroutes/edit/apps/interval/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:i.interval,IntervalId:i.IntervalId,application:!0},intervals:[]}}).then(function(e){e&&(i.interval=e.interval||"*,*,*,*",i.IntervalId=e.IntervalId||null,l())})}}function l(){var t=2,n=[];n.push({type:"outbound",app:"Set",appdata:"CDR(type)=outbound",context:g.outboundroute.context,exten:g.outboundroute.exten,priority:t++,VoiceExtensionId:g.outboundroute.id}),n.push({type:"outbound",app:"Set",appdata:"outboundrouteid="+g.outboundroute.id,context:g.outboundroute.context,exten:g.outboundroute.exten,priority:t++,VoiceExtensionId:g.outboundroute.id});for(var a=0,i=0;a<g.outboundrouteApps.rows.length;a++,i=0){var o=g.outboundrouteApps.rows[a],s=[],r=[];o.intervals="*,*,*,*"!==o.interval?[o.interval]:o.IntervalId?_.map(_.filter(g.intervals.rows,{IntervalId:o.IntervalId}),"interval"):[],o.context=g.outboundroute.context,o.exten=g.outboundroute.exten,o.hasOwnProperty("tag")&&o.tag&&"--"!==o.tag&&s.push({type:o.type,app:"Set",appdata:"CDR(tag)="+o.tag,context:g.outboundroute.context,exten:g.outboundroute.exten,priority:o.intervals.length+t+i++,VoiceExtensionId:g.outboundroute.id}),o.hasOwnProperty("callerID")&&o.callerID&&s.push({type:o.type,app:"Set",appdata:"CALLERID(all)="+o.callerID,context:g.outboundroute.context,exten:g.outboundroute.exten,priority:o.intervals.length+t+i++,VoiceExtensionId:g.outboundroute.id}),o.hasOwnProperty("record")&&o.hasOwnProperty("recordingFormat")&&o.record&&s.push({type:o.type,app:"MixMonitor",appdata:"${UNIQUEID}."+o.recordingFormat+",ab",context:g.outboundroute.context,exten:g.outboundroute.exten,priority:o.intervals.length+t+i++,VoiceExtensionId:g.outboundroute.id}),o.hasOwnProperty("record")&&o.hasOwnProperty("recordingFormat")&&o.record&&r.push({type:o.type,app:"StopMixMonitor",appdata:null,context:g.outboundroute.context,exten:g.outboundroute.exten,priority:o.intervals.length+t+i+++1,VoiceExtensionId:g.outboundroute.id});for(var l=0;l<o.intervals.length;l++){var d=t+o.intervals.length,c=l===o.intervals.length-1?t+s.length+r.length+2:t+l+1;s.splice(l,0,{type:"outbound",app:"GotoIfTime",appdata:o.intervals[l]+"?"+g.outboundroute.context+",${EXTEN},"+d+":"+g.outboundroute.context+",${EXTEN},"+c,exten:g.outboundroute.exten,context:g.outboundroute.context,priority:t+l,VoiceExtensionId:g.outboundroute.id})}o.priority=s.length?_.last(s).priority+1:t,t=(r.length?_.last(r).priority:o.priority)+1,n=_.concat(n,s,[o],r)}n.push({type:"outbound",app:"Hangup",exten:g.outboundroute.exten,context:g.outboundroute.context,priority:t,VoiceExtensionId:g.outboundroute.id}),e.voiceExtension.addApplications({id:g.outboundroute.id},_.sortBy(n,"priority")).$promise.then(function(e){g.outboundrouteApps.rows=e.rows}).catch(function(e){console.error(e)})}function d(e){g.outboundrouteApps=e||{count:0,rows:[]}}function c(){return e.interval.get({fields:"id,interval,IntervalId"}).$promise.then(function(e){g.intervals=e}).catch(function(e){console.error(e)})}function m(){g.promise=e.voiceExtension.get(g.query,d).$promise}function u(e){_.remove(g.outboundrouteApps.rows,{id:e.id}),l(),a.success({title:"App deleted!",msg:e.app?e.app+" has been deleted!":""})}function p(e){var n=t.confirm().title("Are you sure want to delete the selected applications?").htmlContent("<b>"+g.selectedOutboundRouteApps.length+" selected</b> will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");t.show(n).then(function(){g.selectedOutboundRouteApps.forEach(function(e){_.remove(g.outboundrouteApps.rows,{id:e.id})}),g.selectedOutboundRouteApps=[],l()})}var g=this;g.outboundroute={},g.outboundrouteApps={count:0,rows:[]},g.selectedOutboundRouteApps=[],g.query={sort:"priority"},g.apps=_.reject(_.sortBy([{app:"Interval",appType:"interval",type:"Outbound",types:["always","custom","list"],fields:[],isApp:!1},{app:"Queue",appType:"queue",context:"from-sip",type:"Outbound",appdata:",xX,,,300,,,,,",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}},{name:"queues",route:"voiceQueue",filters:{type:"inbound",fields:"id,name,type",sort:"name",nolimit:!0}}],fields:[{title:"Queue",name:"queue",type:"apiselect",values:"queues",value:"queue.name",option:"queue.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Url",name:"URL",type:"text",param:2},{title:"Announce_Overrides",name:"sound",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}'",option:"sound.name",defaultValues:[{value:"''",option:"None"}],param:3},{title:"Timeout",name:"timeout",type:"number",min:0,param:4},{title:"Agi",name:"agi",type:"text",param:5},{title:"Macro",name:"macro",type:"text",param:6},{title:"GoSub",name:"gosub",type:"text",param:7},{title:"Rule",name:"rule",type:"text",param:8},{title:"Position",name:"position",type:"number",min:0,param:9},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Playback",appType:"playback",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}}],fields:[{title:"Audio_Files",name:"appdata",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}'",option:"appdata.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Dial",appType:"dial",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!1,fields:[{title:"Technology/Resource",name:"tech",type:"text",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"internalDial",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!1,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"user",type:"apiselect",values:"users",value:"'SIP/{{user.name}}'",option:"user.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"externalDial",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!1,extraApi:[{name:"trunks",route:"trunk",filters:{fields:"name",sort:"name"}}],fields:[{title:"Trunk",name:"trunk",type:"apiselect",values:"trunks",value:"trunk.name",option:"trunk.name",required:!0,param:0},{title:"Phone",name:"phone",type:"text"},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"ringGroup",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!1,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"multipleUsers",type:"apiselect",multiple:!0,values:"users",value:"'SIP/{{multipleUsers.name}}'",option:"multipleUsers.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"AGI",appType:"agi",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"projects",route:"squareProject",filters:{fields:"name",sort:"name"}}],fields:[{title:"Project",name:"project",type:"apiselect",values:"projects",value:"'agi://127.0.0.1/square,{{project.name}}'",option:"project.name",required:!0,param:0}]},{app:"goto",appType:"goTo",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"contexts",route:"voiceContext",filters:{fields:"name",sort:"name"}}],fields:[{title:"Context",name:"context",type:"apiselect",values:"contexts",value:"context.name",option:"context.name",required:!0,param:0},{title:"Extension",name:"extension",type:"text",required:!0,param:1},{title:"Priority",name:"priority",type:"text",required:!0,param:2}]},{app:"hangup",appType:"hangup",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,fields:[{title:"Hangup_Cause",name:"appdata",type:"select",param:0,values:[{option:"HANGUPCAUSE_1",value:"'1'"},{option:"HANGUPCAUSE_16",value:"'16'"},{option:"HANGUPCAUSE_17",value:"'17'"},{option:"HANGUPCAUSE_18",value:"'18'"},{option:"HANGUPCAUSE_21",value:"'21'"},{option:"HANGUPCAUSE_22",value:"'22'"},{option:"HANGUPCAUSE_27",value:"'27'"},{option:"HANGUPCAUSE_38",value:"'38'"},{option:"HANGUPCAUSE_41",value:"'41'"}],translate:!0,required:!0,general:!0}]},{app:"Set",appType:"set",context:"from-sip",type:"Outbound",separator:"=",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,fields:[{title:"Variable",name:"name",type:"text",required:!0,param:0},{title:"Value",name:"value",type:"text",required:!0,param:1}]},{app:"Voicemail",appType:"voicemail",context:"from-sip",icon:"icon-apps",type:"Outbound",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"voiceMails",route:"voiceMail",filters:{fields:"mailbox",sort:"mailbox"}}],fields:[{title:"Mailbox@Context",name:"voiceMail",type:"apiselect",values:"voiceMails",value:"'{{voiceMail.mailbox}}@from-voicemail'",option:"voiceMail.mailbox",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1}]},{app:"Dial",appType:"outboundDial",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"trunks",route:"trunk",filters:{fields:"name",sort:"name"}},{name:"tags",route:"tag",filters:{fields:"name",sort:"name"}}],fields:[{title:"Trunk",name:"trunk",type:"apiselect",values:"trunks",value:"trunk.name",option:"trunk.name",required:!0,param:0},{title:"Caller_ID",name:"callerID",type:"text"},{title:"Prefix",name:"prefix",type:"text"},{title:"CutDigits",name:"cutdigits",type:"number",min:0},{title:"Recording",name:"recordingFormat",type:"select",values:[{option:"none",value:"'none'"},{option:"wav",value:"'wav'"},{option:"gsm",value:"'gsm'"}],defaultValue:"none",required:!0,general:!0,help:!0},{title:"Tags",name:"tag",type:"apiselect",values:"tags",value:"tag.name",option:"tag.name",defaultValues:[{value:"'--'",option:"None"}]},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:null,type:"Outbound",appType:"Custom",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Application_Name",name:"app",type:"text",required:!0,param:0},{title:"Arguments",name:"appdata",type:"text",param:1}]}],["app"]),{isApp:!1}),g.list={group:{name:"opt1",pull:"clone"},animation:100,sort:!1},g.applications={group:{name:"opt2",put:"opt1"},animation:100,onAdd:function(e){s(e,e.newIndex)},onSort:function(e){l()}},g.init=i,g.deleteConfirm=o,g.getOutboundRouteApps=m,g.editOutboundRouteApp=s,g.editInterval=r,g.deleteOutboundRouteApp=u,g.deleteSelectedOutboundRouteApps=p,g.rewriteRouting=l,g.getIntervals=c}e.$inject=["api","$mdDialog","$document","toasty"],angular.module("app.voice").controller("OutboundRouteActionsController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.agi.type.toLowerCase()&&"outboundDial"===s.agi.appType&&(s.agi.phone=s.agi.cutdigits?(s.agi.prefix||"")+"${EXTEN:"+s.agi.cutdigits+"}":(s.agi.prefix||"")+"${EXTEN}",s.agi.record="none"!==s.agi.recordingFormat,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:null),s.agi.appType.toLowerCase()){case"set":s.agi.appdata=s.agi.name+"="+s.agi.value;break;case"custom":break;default:e[0]=s.agi.project,s.agi.appdata=e.join(",")}o(s.agi)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.agi=angular.copy(n),s.agi.appdata)switch(s.agi.appType?s.agi.appType.toLowerCase():s.agi.app.toLowerCase()){case"custom":break;case"set":s.agi.name=s.agi.appdata.split("=")[0],s.agi.value=s.agi.appdata.split("=")[1];break;case"agi":s.agi.project=s.agi.appdata;break;default:var r=s.agi.appdata.split(",");s.agi.project=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.agi.type.toLowerCase()&&"outbounddial"===s.agi.appType.toLowerCase()&&(s.agi.prefix=s.agi.phone?s.agi.phone.split("$")[0]:void 0,s.agi.callerId=s.agi.callerID?"CALLERID(all)="+s.agi.callerID:void 0,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.squareProject.get({fields:"name",sort:"name"}).$promise.then(function(e){s.projects=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppagiDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.custom.type.toLowerCase()&&"outboundDial"===s.custom.appType&&(s.custom.phone=s.custom.cutdigits?(s.custom.prefix||"")+"${EXTEN:"+s.custom.cutdigits+"}":(s.custom.prefix||"")+"${EXTEN}",s.custom.record="none"!==s.custom.recordingFormat,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:null),s.custom.appType.toLowerCase()){case"set":s.custom.appdata=s.custom.name+"="+s.custom.value;break;case"custom":break;default:e[0]=s.custom.app,e[1]=s.custom.appdata,s.custom.appdata=e.join(",")}o(s.custom)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.custom=angular.copy(n),s.custom.appdata)switch(s.custom.appType?s.custom.appType.toLowerCase():s.custom.app.toLowerCase()){case"custom":break;case"set":s.custom.name=s.custom.appdata.split("=")[0],s.custom.value=s.custom.appdata.split("=")[1];break;case"agi":s.custom.project=s.custom.appdata;break;default:var r=s.custom.appdata.split(",");s.custom.app=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.custom.appdata=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.custom.type.toLowerCase()&&"outbounddial"===s.custom.appType.toLowerCase()&&(s.custom.prefix=s.custom.phone?s.custom.phone.split("$")[0]:void 0,s.custom.callerId=s.custom.callerID?"CALLERID(all)="+s.custom.callerID:void 0,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppcustomDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.dial.type.toLowerCase()&&"outboundDial"===s.dial.appType&&(s.dial.phone=s.dial.cutdigits?(s.dial.prefix||"")+"${EXTEN:"+s.dial.cutdigits+"}":(s.dial.prefix||"")+"${EXTEN}",s.dial.record="none"!==s.dial.recordingFormat,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:null),s.dial.appType.toLowerCase()){case"set":s.dial.appdata=s.dial.name+"="+s.dial.value;break;case"custom":break;default:e[0]=s.dial.tech,e[1]=s.dial.timeout,e[2]=s.dial.options,e[3]=s.dial.url,s.dial.appdata=e.join(",")}o(s.dial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.dial=angular.copy(n),s.dial.appdata)switch(s.dial.appType?s.dial.appType.toLowerCase():s.dial.app.toLowerCase()){case"custom":break;case"set":s.dial.name=s.dial.appdata.split("=")[0],s.dial.value=s.dial.appdata.split("=")[1];break;case"agi":s.dial.project=s.dial.appdata;break;default:var r=s.dial.appdata.split(",");s.dial.tech=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.dial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.dial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.dial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.dial.type.toLowerCase()&&"outbounddial"===s.dial.appType.toLowerCase()&&(s.dial.prefix=s.dial.phone?s.dial.phone.split("$")[0]:void 0,s.dial.callerId=s.dial.callerID?"CALLERID(all)="+s.dial.callerID:void 0,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppdialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.externaldial.type.toLowerCase()&&"outboundDial"===s.externaldial.appType&&(s.externaldial.phone=s.externaldial.cutdigits?(s.externaldial.prefix||"")+"${EXTEN:"+s.externaldial.cutdigits+"}":(s.externaldial.prefix||"")+"${EXTEN}",s.externaldial.record="none"!==s.externaldial.recordingFormat,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:null),s.externaldial.appType.toLowerCase()){case"set":s.externaldial.appdata=s.externaldial.name+"="+s.externaldial.value;break;case"custom":break;default:e[0]=["SIP",s.externaldial.trunk,s.externaldial.phone].join("/"),e[1]=s.externaldial.timeout,e[2]=s.externaldial.options,e[3]=s.externaldial.url,s.externaldial.appdata=e.join(",")}o(s.externaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.externaldial=angular.copy(n),s.externaldial.appdata)switch(s.externaldial.appType?s.externaldial.appType.toLowerCase():s.externaldial.app.toLowerCase()){case"custom":break;case"set":s.externaldial.name=s.externaldial.appdata.split("=")[0],s.externaldial.value=s.externaldial.appdata.split("=")[1];break;case"agi":s.externaldial.project=s.externaldial.appdata;break;default:var r=s.externaldial.appdata.split(",");s.externaldial.trunk=r[0].split("/")[1],s.externaldial.phone=r[0].split("/")[2],s.externaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.externaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.externaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.externaldial.type.toLowerCase()&&"outbounddial"===s.externaldial.appType.toLowerCase()&&(s.externaldial.prefix=s.externaldial.phone?s.externaldial.phone.split("$")[0]:void 0,s.externaldial.callerId=s.externaldial.callerID?"CALLERID(all)="+s.externaldial.callerID:void 0,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.trunk.get({fields:"name",sort:"name"}).$promise.then(function(e){s.trunks=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppexternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.goto.type.toLowerCase()&&"outboundDial"===s.goto.appType&&(s.goto.phone=s.goto.cutdigits?(s.goto.prefix||"")+"${EXTEN:"+s.goto.cutdigits+"}":(s.goto.prefix||"")+"${EXTEN}",s.goto.record="none"!==s.goto.recordingFormat,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:null),s.goto.appType.toLowerCase()){case"set":s.goto.appdata=s.goto.name+"="+s.goto.value;break;case"custom":break;default:e[0]=s.goto.context,e[1]=s.goto.extension,e[2]=s.goto.priority,s.goto.appdata=e.join(",")}o(s.goto)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.goto=angular.copy(n),s.goto.appdata)switch(s.goto.appType?s.goto.appType.toLowerCase():s.goto.app.toLowerCase()){case"custom":break;case"set":s.goto.name=s.goto.appdata.split("=")[0],s.goto.value=s.goto.appdata.split("=")[1];break;case"agi":s.goto.project=s.goto.appdata;break;default:var r=s.goto.appdata.split(",");s.goto.context=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.goto.extension=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.goto.priority=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10)}"outbound"===s.goto.type.toLowerCase()&&"outbounddial"===s.goto.appType.toLowerCase()&&(s.goto.prefix=s.goto.phone?s.goto.phone.split("$")[0]:void 0,s.goto.callerId=s.goto.callerID?"CALLERID(all)="+s.goto.callerID:void 0,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){s.contexts=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppgotoDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.hangup.type.toLowerCase()&&"outboundDial"===s.hangup.appType&&(s.hangup.phone=s.hangup.cutdigits?(s.hangup.prefix||"")+"${EXTEN:"+s.hangup.cutdigits+"}":(s.hangup.prefix||"")+"${EXTEN}",s.hangup.record="none"!==s.hangup.recordingFormat,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:null),s.hangup.appType.toLowerCase()){case"set":s.hangup.appdata=s.hangup.name+"="+s.hangup.value;break;case"custom":break;default:e[0]=s.hangup.appdata,s.hangup.appdata=e.join(",")}o(s.hangup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.hangup=angular.copy(n),s.hangup.appdata)switch(s.hangup.appType?s.hangup.appType.toLowerCase():s.hangup.app.toLowerCase()){case"custom":break;case"set":s.hangup.name=s.hangup.appdata.split("=")[0],s.hangup.value=s.hangup.appdata.split("=")[1];break;case"agi":s.hangup.project=s.hangup.appdata;break;default:var r=s.hangup.appdata.split(",");s.hangup.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.hangup.type.toLowerCase()&&"outbounddial"===s.hangup.appType.toLowerCase()&&(s.hangup.prefix=s.hangup.phone?s.hangup.phone.split("$")[0]:void 0,s.hangup.callerId=s.hangup.callerID?"CALLERID(all)="+s.hangup.callerID:void 0,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteApphangupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.internaldial.type.toLowerCase()&&"outboundDial"===s.internaldial.appType&&(s.internaldial.phone=s.internaldial.cutdigits?(s.internaldial.prefix||"")+"${EXTEN:"+s.internaldial.cutdigits+"}":(s.internaldial.prefix||"")+"${EXTEN}",s.internaldial.record="none"!==s.internaldial.recordingFormat,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:null),s.internaldial.appType.toLowerCase()){case"set":s.internaldial.appdata=s.internaldial.name+"="+s.internaldial.value;break;case"custom":break;default:e[0]=s.internaldial.user,e[1]=s.internaldial.timeout,e[2]=s.internaldial.options,e[3]=s.internaldial.url,s.internaldial.appdata=e.join(",")}o(s.internaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.internaldial=angular.copy(n),s.internaldial.appdata)switch(s.internaldial.appType?s.internaldial.appType.toLowerCase():s.internaldial.app.toLowerCase()){case"custom":break;case"set":s.internaldial.name=s.internaldial.appdata.split("=")[0],s.internaldial.value=s.internaldial.appdata.split("=")[1];break;case"agi":s.internaldial.project=s.internaldial.appdata;break;default:var r=s.internaldial.appdata.split(",");s.internaldial.user=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.internaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.internaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.internaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.internaldial.type.toLowerCase()&&"outbounddial"===s.internaldial.appType.toLowerCase()&&(s.internaldial.prefix=s.internaldial.phone?s.internaldial.phone.split("$")[0]:void 0,s.internaldial.callerId=s.internaldial.callerID?"CALLERID(all)="+s.internaldial.callerID:void 0,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppinternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom&&u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push("*"),u.monthDayFrom&&u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push("*"),u.monthFrom&&u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(i),u.intervals=o,u.newInterval=!1,u.types=["always","custom","list"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],h=p[1],v=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],y=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(y.split(":")[0])),f.setMinutes(Number(y.split(":")[1])),u.timeRangeTo=f}"*"!==h&&(u.dayOfWeekFrom=h.split("-")[0],u.dayOfWeekTo=h.split("-")[1]),"*"!==v&&(u.monthDayFrom=v.split("-")[0],u.monthDayTo=v.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditOutboundRouteAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.outbounddial.type.toLowerCase()&&"outboundDial"===s.outbounddial.appType&&(s.outbounddial.phone=s.outbounddial.cutdigits?(s.outbounddial.prefix||"")+"${EXTEN:"+s.outbounddial.cutdigits+"}":(s.outbounddial.prefix||"")+"${EXTEN}",s.outbounddial.record="none"!==s.outbounddial.recordingFormat,s.outbounddial.recordingFormat=s.outbounddial.record?s.outbounddial.recordingFormat:null),s.outbounddial.appType.toLowerCase()){case"set":s.outbounddial.appdata=s.outbounddial.name+"="+s.outbounddial.value;break;case"custom":break;default:e[0]=["SIP",s.outbounddial.trunk,s.outbounddial.phone].join("/"),e[1]=s.outbounddial.timeout,e[2]=s.outbounddial.options,e[3]=s.outbounddial.url,s.outbounddial.appdata=e.join(",")}o(s.outbounddial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.outbounddial=angular.copy(n),s.outbounddial.appdata)switch(s.outbounddial.appType?s.outbounddial.appType.toLowerCase():s.outbounddial.app.toLowerCase()){case"custom":break;case"set":s.outbounddial.name=s.outbounddial.appdata.split("=")[0],s.outbounddial.value=s.outbounddial.appdata.split("=")[1];break;case"agi":s.outbounddial.project=s.outbounddial.appdata;break;default:var r=s.outbounddial.appdata.split(",");s.outbounddial.trunk=r[0].split("/")[1],s.outbounddial.phone=r[0].split("/")[2],s.outbounddial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.outbounddial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.outbounddial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.outbounddial.type.toLowerCase()&&"outbounddial"===s.outbounddial.appType.toLowerCase()&&(s.outbounddial.prefix=s.outbounddial.phone?s.outbounddial.phone.split("$")[0]:void 0,s.outbounddial.callerId=s.outbounddial.callerID?"CALLERID(all)="+s.outbounddial.callerID:void 0,s.outbounddial.recordingFormat=s.outbounddial.record?s.outbounddial.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.trunk.get({fields:"name",sort:"name"}).$promise.then(function(e){s.trunks=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),a.tag.get({fields:"name",sort:"name"}).$promise.then(function(e){s.tags=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtags",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppoutbounddialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.playback.type.toLowerCase()&&"outboundDial"===s.playback.appType&&(s.playback.phone=s.playback.cutdigits?(s.playback.prefix||"")+"${EXTEN:"+s.playback.cutdigits+"}":(s.playback.prefix||"")+"${EXTEN}",s.playback.record="none"!==s.playback.recordingFormat,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:null),s.playback.appType.toLowerCase()){case"set":s.playback.appdata=s.playback.name+"="+s.playback.value;break;case"custom":break;default:e[0]=s.playback.appdata,e[1]=s.playback.options,s.playback.appdata=e.join(",")}o(s.playback)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.playback=angular.copy(n),s.playback.appdata)switch(s.playback.appType?s.playback.appType.toLowerCase():s.playback.app.toLowerCase()){case"custom":break;case"set":s.playback.name=s.playback.appdata.split("=")[0],s.playback.value=s.playback.appdata.split("=")[1];break;case"agi":s.playback.project=s.playback.appdata;break;default:var r=s.playback.appdata.split(",");s.playback.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.playback.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.playback.type.toLowerCase()&&"outbounddial"===s.playback.appType.toLowerCase()&&(s.playback.prefix=s.playback.phone?s.playback.phone.split("$")[0]:void 0,s.playback.callerId=s.playback.callerID?"CALLERID(all)="+s.playback.callerID:void 0,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppplaybackDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.queue.type.toLowerCase()&&"outboundDial"===s.queue.appType&&(s.queue.phone=s.queue.cutdigits?(s.queue.prefix||"")+"${EXTEN:"+s.queue.cutdigits+"}":(s.queue.prefix||"")+"${EXTEN}",s.queue.record="none"!==s.queue.recordingFormat,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:null),s.queue.appType.toLowerCase()){case"set":s.queue.appdata=s.queue.name+"="+s.queue.value;break;case"custom":break;default:e[0]=s.queue.queue,e[1]=s.queue.options,e[2]=s.queue.URL,e[3]=s.queue.sound,e[4]=s.queue.timeout,e[5]=s.queue.agi,e[6]=s.queue.macro,e[7]=s.queue.gosub,e[8]=s.queue.rule,e[9]=s.queue.position,s.queue.appdata=e.join(",")}o(s.queue)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.queue=angular.copy(n),s.queue.appdata)switch(s.queue.appType?s.queue.appType.toLowerCase():s.queue.app.toLowerCase()){case"custom":break;case"set":s.queue.name=s.queue.appdata.split("=")[0],s.queue.value=s.queue.appdata.split("=")[1];break;case"agi":s.queue.project=s.queue.appdata;break;default:var r=s.queue.appdata.split(",");s.queue.queue=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.queue.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.queue.URL=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.queue.sound=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10),s.queue.timeout=_.isEmpty(r[4])?r[4]:isNaN(r[4])?r[4]:parseInt(r[4],10),s.queue.agi=_.isEmpty(r[5])?r[5]:isNaN(r[5])?r[5]:parseInt(r[5],10),s.queue.macro=_.isEmpty(r[6])?r[6]:isNaN(r[6])?r[6]:parseInt(r[6],10),s.queue.gosub=_.isEmpty(r[7])?r[7]:isNaN(r[7])?r[7]:parseInt(r[7],10),s.queue.rule=_.isEmpty(r[8])?r[8]:isNaN(r[8])?r[8]:parseInt(r[8],10),s.queue.position=_.isEmpty(r[9])?r[9]:isNaN(r[9])?r[9]:parseInt(r[9],10)}"outbound"===s.queue.type.toLowerCase()&&"outbounddial"===s.queue.appType.toLowerCase()&&(s.queue.prefix=s.queue.phone?s.queue.phone.split("$")[0]:void 0,s.queue.callerId=s.queue.callerID?"CALLERID(all)="+s.queue.callerID:void 0,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})}),a.voiceQueue.get({type:"inbound",fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){s.queues=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppqueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.ringgroup.type.toLowerCase()&&"outboundDial"===s.ringgroup.appType&&(s.ringgroup.phone=s.ringgroup.cutdigits?(s.ringgroup.prefix||"")+"${EXTEN:"+s.ringgroup.cutdigits+"}":(s.ringgroup.prefix||"")+"${EXTEN}",s.ringgroup.record="none"!==s.ringgroup.recordingFormat,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:null),s.ringgroup.appType.toLowerCase()){case"set":s.ringgroup.appdata=s.ringgroup.name+"="+s.ringgroup.value;break;case"custom":break;default:e[0]=s.ringgroup.multipleUsers.join("&"),e[1]=s.ringgroup.timeout,e[2]=s.ringgroup.options,e[3]=s.ringgroup.url,s.ringgroup.appdata=e.join(",")}o(s.ringgroup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.ringgroup=angular.copy(n),s.ringgroup.appdata)switch(s.ringgroup.appType?s.ringgroup.appType.toLowerCase():s.ringgroup.app.toLowerCase()){case"custom":break;case"set":s.ringgroup.name=s.ringgroup.appdata.split("=")[0],s.ringgroup.value=s.ringgroup.appdata.split("=")[1];break;case"agi":s.ringgroup.project=s.ringgroup.appdata;break;default:var r=s.ringgroup.appdata.split(",");s.ringgroup.multipleUsers=r[0].split("&"),s.ringgroup.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.ringgroup.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.ringgroup.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.ringgroup.type.toLowerCase()&&"outbounddial"===s.ringgroup.appType.toLowerCase()&&(s.ringgroup.prefix=s.ringgroup.phone?s.ringgroup.phone.split("$")[0]:void 0,s.ringgroup.callerId=s.ringgroup.callerID?"CALLERID(all)="+s.ringgroup.callerID:void 0,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppringgroupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.set.type.toLowerCase()&&"outboundDial"===s.set.appType&&(s.set.phone=s.set.cutdigits?(s.set.prefix||"")+"${EXTEN:"+s.set.cutdigits+"}":(s.set.prefix||"")+"${EXTEN}",s.set.record="none"!==s.set.recordingFormat,s.set.recordingFormat=s.set.record?s.set.recordingFormat:null),s.set.appType.toLowerCase()){case"set":s.set.appdata=s.set.name+"="+s.set.value;break;case"custom":break;default:e[0]=s.set.name,e[1]=s.set.value,s.set.appdata=e.join("=")}o(s.set)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.set=angular.copy(n),s.set.appdata)switch(s.set.appType?s.set.appType.toLowerCase():s.set.app.toLowerCase()){case"custom":break;case"set":s.set.name=s.set.appdata.split("=")[0],s.set.value=s.set.appdata.split("=")[1];break;case"agi":s.set.project=s.set.appdata;break;default:var r=s.set.appdata.split("=");s.set.name=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.set.value=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.set.type.toLowerCase()&&"outbounddial"===s.set.appType.toLowerCase()&&(s.set.prefix=s.set.phone?s.set.phone.split("$")[0]:void 0,s.set.callerId=s.set.callerID?"CALLERID(all)="+s.set.callerID:void 0,s.set.recordingFormat=s.set.record?s.set.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppsetDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.voicemail.type.toLowerCase()&&"outboundDial"===s.voicemail.appType&&(s.voicemail.phone=s.voicemail.cutdigits?(s.voicemail.prefix||"")+"${EXTEN:"+s.voicemail.cutdigits+"}":(s.voicemail.prefix||"")+"${EXTEN}",s.voicemail.record="none"!==s.voicemail.recordingFormat,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:null),s.voicemail.appType.toLowerCase()){case"set":s.voicemail.appdata=s.voicemail.name+"="+s.voicemail.value;break;case"custom":break;default:e[0]=s.voicemail.voiceMail,e[1]=s.voicemail.options,s.voicemail.appdata=e.join(",")}o(s.voicemail)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.voicemail=angular.copy(n),s.voicemail.appdata)switch(s.voicemail.appType?s.voicemail.appType.toLowerCase():s.voicemail.app.toLowerCase()){case"custom":break;case"set":s.voicemail.name=s.voicemail.appdata.split("=")[0],s.voicemail.value=s.voicemail.appdata.split("=")[1];break;case"agi":s.voicemail.project=s.voicemail.appdata;break;default:var r=s.voicemail.appdata.split(",");s.voicemail.voiceMail=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.voicemail.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.voicemail.type.toLowerCase()&&"outbounddial"===s.voicemail.appType.toLowerCase()&&(s.voicemail.prefix=s.voicemail.phone?s.voicemail.phone.split("$")[0]:void 0,s.voicemail.callerId=s.voicemail.callerID?"CALLERID(all)="+s.voicemail.callerID:void 0,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.voiceMail.get({fields:"mailbox",sort:"mailbox"}).$promise.then(function(e){s.voiceMails=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMails",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppvoicemailDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.outboundroutes")}function r(){i.voiceExtension.update({id:l.outboundroute.id},l.outboundroute).$promise.then(function(){a.success({title:"OutboundRoute updated!",msg:l.outboundroute.name?l.outboundroute.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.outboundroute=e.params.outboundroute||o||{},l.selectedTab=e.params.tab||0,l.gotoOutboundRoutes=s,l.saveOutboundRoute=r,i.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","outboundroute"],angular.module("app.voice").controller("OutboundRouteController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.outboundroutes.edit",{id:e.id,outboundroute:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the outboundroute?").htmlContent("<b>"+(e.name||"outboundroute")+"</b> will be deleted.").ariaLabel("delete outboundroute").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.outboundroutes=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceExtension.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditOutboundRouteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/outboundroutes/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{outboundroute:t,outboundroutes:A.outboundroutes.rows}})}function v(e){l.voiceExtension.delete({id:e.id}).$promise.then(function(){_.remove(A.outboundroutes.rows,{id:e.id}),A.outboundroutes.count-=1,A.outboundroutes.rows.length||A.getOutboundRoutes(),c.success({title:"OutboundRoute deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedOutboundRoutes);return A.selectedOutboundRoutes=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected outboundroutes?").htmlContent("<b>"+A.selectedOutboundRoutes.length+" selected</b> will be deleted.").ariaLabel("delete OutboundRoutes").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedOutboundRoutes.forEach(function(e){v(e)}),A.selectedOutboundRoutes=[]})}function E(){A.selectedOutboundRoutes=[]}function y(){A.selectedOutboundRoutes=A.outboundroutes.rows}var A=this;A.outboundroutes=r||{count:0,rows:[]},A.table="outboundroutes",A.listOrder="",A.listOrderAsc=null,A.selectedOutboundRoutes=[],A.query={fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"Outbound",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getOutboundRoutes=g,A.createOrEditOutboundRoute=h,A.deleteOutboundRoute=v,A.exportSelectedOutboundRoutes=b,A.deleteSelectedOutboundRoutes=f,A.deselectOutboundRoutes=E,A.selectAllOutboundRoutes=y,l.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){A.contexts=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getOutboundRoutes())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","outboundroutes","api","msUtils","toasty"],angular.module("app.voice").controller("OutboundRoutesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){_.forIn(A.agents,function(e,t){A.rpcAgents[t]&&_.merge(e,_.pick(A.rpcAgents[t],C))})}function u(e,t){return r.user.logout({id:e.id}).$promise.then(function(){d.success({title:"Agent logout",msg:e.fullname+"  properly logout"})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.staff.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function p(e,t){n.show({controller:"AgentqueueaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/edit/queueadd/queueadd.html",parent:angular.element(a.body),targetEvent:t,clickOutsideToClose:!0,locals:{agent:e,agents:[],channel:"voice",realtime:!0,direction:"inbound"}})}function g(e,t){return r.user.pause({id:e.id,type:t})}function h(e){return r.user.unpause({id:e.id})}function v(e){return _.includes(A.availableStates,e)}function b(e){A.agents[e.id]&&_.merge(A.agents[e.id],_.pick(e,C))}function f(e){n.show(n.alert().clickOutsideToClose(!0).title("Legend").htmlContent("<div>TODO legend status + state</div>").ok("Ok").targetEvent(e))}function E(e){A.count=e.count,A.agents=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function y(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=r.user.get(A.query,E).$promise}var A=this,C=["userpic","online","voicePause","lastLoginAt","lastPauseAt","pauseType","internal","state","stateTime","status","address"];A.availableStates=["ringing","inuse","busy","onhold","not_inuse"],A.pauses=i||{count:0,rows:[]},A.count=o.count,A.agents=o?_.keyBy(o.rows?o.rows:[],"id"):{},A.rpcAgents=s?_.keyBy(s.rows?s.rows:[],"id"):{},A.query={fields:"id,fullname,userpic,role,internal,online,voicePause,pauseType,lastLoginAt",role:"agent",sort:"-updatedAt",limit:10,page:1},A.statusClass=c.status,A.stateClass=c.state,A.pause=g,A.unPause=h,A.onSave=b,A.$onInit=m,A.success=E,A.showInfo=f,A.queueAdd=p,A.getAgents=y,A.isAvailableState=v,A.logout=u,l.on("user:save",A.onSave),l.on("user:update",A.onSave);var x=!0,T=1;e.$watch("vm.query.filter",function(e,n){x?t(function(){x=!1}):(n||(T=A.query.page),e!==n&&(A.query.page=1),e||(A.query.page=T),A.getAgents())}),e.$on("$destroy",function(){l.removeAllListeners("user:save"),l.removeAllListeners("user:update")})}e.$inject=["$scope","$timeout","$mdDialog","$document","pauses","agents","rpcAgents","api","socket","toasty","helperClasses"],angular.module("app.voice").controller("AgentsVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e){var t=_.find(l.calls.rows,{channel:e.channel});e.channelstatedesc=e.answered?"up":"ring",t?_.merge(t,e):l.calls.rows.push(e)}function r(e){var n=_.findIndex(l.calls.rows,{channel:e.channel});n>=0&&(l.calls.rows[n].status="hangup"),t(function(){l.calls.rows.splice(n,1)},5e3)}var l=this;l.calls=i||{rows:[],count:0},l.query={limit:10,page:1,limitOptions:[10,20,30]},l.channelStatus=o.channelStatusOut,l.onSave=s,l.onRemove=r,a.on("voice_outbound_channel:save",l.onSave),a.on("voice_outbound_channel:remove",l.onRemove),e.$on("$destroy",function(){a.removeAllListeners("voice_outbound_channel:save"),a.removeAllListeners("voice_outbound_channel:remove")})}e.$inject=["$scope","$timeout","api","socket","rpcCalls","helperClasses"],angular.module("app.voice").controller("OutboundCallsVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l){function d(e){return o.rpc.getVoiceQueuesChannelHangup({uniqueid:e}).$promise.then(function(t){l.success({title:"Channel "+e+" properly hangup!",msg:t.message||""})}).catch(function(e){console.error(e)})}function c(e,t){return o.rpc.getVoiceQueuesChannelRedirect({uniqueid:e,exten:t}).$promise.then(function(t){l.success({title:"Channel "+e+" properly redirect!",msg:t.message||""})}).catch(function(e){console.error(e)})}function m(e,t){var a=n.prompt().title("Which number do you want transfer the call to?").placeholder("Number").targetEvent(e).ok("Ok").cancel("Cancel");return n.show(a).then(function(e){return o.rpc.getVoiceQueuesChannelRedirect({uniqueid:t,exten:e}).$promise.then(function(e){l.success({title:"Channel "+t+" properly redirect!",msg:e.message||""})}).catch(function(e){console.error(e)})}).catch(function(e){console.error(e)})}function u(e){var t=_.find(g.calls.rows,{channel:e.channel});e.status=e.queuecallerleaveAt?"up":"ring",t?_.merge(t,e):g.calls.rows.push(e)}function p(e){var n=_.findIndex(g.calls.rows,{channel:e.channel});n>=0&&(g.calls.rows[n].status="hangup"),t(function(){g.calls.rows.splice(n,1)},5e3)}var g=this;g.calls=i||{rows:[],count:0},g.agents=a||{count:0,rows:[]},g.query={limit:10,page:1,limitOptions:[10,15,20]},g.channelStatusClass=r.channelStatus,g.onSave=u,g.onRemove=p,g.hangup=d,g.redirectToAgent=c,g.redirectToNumber=m,s.on("voice_queue_channel:save",g.onSave),s.on("voice_queue_channel:remove",g.onRemove),e.$on("$destroy",function(){s.removeAllListeners("voice_queue_channel:save"),s.removeAllListeners("voice_queue_channel:remove")})}e.$inject=["$scope","$timeout","$mdDialog","agents","rpcCalls","api","socket","helperClasses","toasty"],angular.module("app.voice").controller("QueueCallsVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){_.forIn(m.queues,function(e,t){m.rpcQueues[t]&&_.merge(e,_.pick(m.rpcQueues[t],u))})}function l(e){m.queues[e.id]&&_.merge(m.queues[e.id],_.pick(e,u))}function d(e){m.count=e.count,m.queues=e?_.keyBy(e.rows?e.rows:[],"id"):{},r()}function c(){m.query.offset=(m.query.page-1)*m.query.limit,s.hasRole("admin")?m.promise=i.voiceQueue.get(m.query,d).$promise:m.promise=i.user.getQueues(m.query,d).$promise}var m=this,u=["total","answered","unmanaged","sumHoldTime","sumDuration","sumBillable"];m.count=n.count,m.queues=n?_.keyBy(n.rows?n.rows:[],"id"):{},m.rpcQueues=a?_.keyBy(a.rows?a.rows:[],"id"):{},s.hasRole("admin")?m.query={type:"inbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1}:m.query={id:s.getCurrentUser().id,channel:"voice",type:"inbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1},m.success=d,m.getQueues=c,m.onSave=l,m.$onInit=r,o.on("voice_queue:save",m.onSave);var p=!0,g=1;e.$watch("vm.query.filter",function(e,n){p?t(function(){p=!1}):(n||(g=m.query.page),e!==n&&(m.query.page=1),e||(m.query.page=g),m.getQueues())}),e.$on("$destroy",function(){o.removeAllListeners("voice_queue:save")})}e.$inject=["$scope","$timeout","queues","rpcQueues","api","socket","Auth"],angular.module("app.voice").controller("QueueParamsVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){var e=[];return _.forIn(E.queues,function(t,n){t.paused=0,t.loggedInDb=0,e.push(r.voiceQueue.getMembers({id:n}).$promise),E.rpcQueues[n]&&_.merge(t,_.pick(E.rpcQueues[n],y))}),a.all(e).then(function(e){for(var t=0;t<e.length;t+=1)for(var n=0;n<e[t].rows.length;n++)e[t].rows[n].paused&&E.queues[e[t].rows[n].VoiceQueueId].paused++,E.queues[e[t].rows[n].VoiceQueueId].loggedInDb++}).catch(function(e){console.error(e)})}function u(e){E.queues[e.id]&&_.merge(E.queues[e.id],_.pick(e,y))}function p(e){}function g(e){E.count=e.count,E.queues=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function h(){E.query.offset=(E.query.page-1)*E.query.limit,c.hasRole("admin")?E.promise=r.voiceQueue.get(E.query,g).$promise:E.promise=r.user.getQueues(E.query,g).$promise}function v(e,t){n.show({controller:"CreateOrEditVoiceQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceQueue:t,voiceQueues:_.values(E.queues)}})}function b(e,t){n.show({controller:"VoiceQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceQueue:t,voiceQueues:E.queues?E.queues.rows:[],realtime:!0}})}function f(e){return r.voiceQueue.update(e).$promise.then(function(){d.success({title:"Queue properly updated!",msg:e.name?e.name+" has been updated!":""})}).catch(function(e){d.error({title:"Error creating queue!",msg:e.message})})}var E=this,y=["loggedIn","available","waiting","talking","originated","message","dialActive","dialMethod","Trunk"];E.count=o.count,E.queues=o?_.keyBy(o.rows?o.rows:[],"id"):{},E.rpcQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},c.hasRole("admin")?E.query={type:"inbound",sort:"-updatedAt",limit:10,page:1}:E.query={id:c.getCurrentUser().id,channel:"voice",type:"inbound",sort:"-updatedAt",limit:10,page:1},E.success=g,E.getQueues=h,E.createOrEditVoiceQueue=v,E.agentAdd=b,E.updateQueue=f,E.onSave=u,E.onSaveMember=p,E.$onInit=m,l.on("voice_queue:save",E.onSave),l.on("userVoiceQueueRt:save",E.onSaveMember),l.on("userVoiceQueueRt:update",E.onSaveMember);var A=!0,C=1;e.$watch("vm.query.filter",function(e,n){A?t(function(){A=!1}):(n||(C=E.query.page),e!==n&&(E.query.page=1),e||(E.query.page=C),E.getQueues())}),e.$on("$destroy",function(){l.removeAllListeners("voice_queue:save"),l.removeAllListeners("userVoiceQueueRt:save"),l.removeAllListeners("userVoiceQueueRt:update")})}e.$inject=["$scope","$timeout","$mdDialog","$q","$document","queues","rpcQueues","api","socket","toasty","Auth"],angular.module("app.voice").controller("QueuesVoiceRealtimeController",e)}(),function(){"use strict";function e(){return{status:{registered:"green-300-fg icon-checkbox-marked-circle",unregistered:"red-300-fg icon-close-circle",lagged:"red-300-fg icon-close-circle",reachable:"green-300-fg icon-checkbox-marked-circle",unreachable:"red-300-fg icon-close-circle",unknown:"grey-fg icon-minus-circle"},state:{unknown:"grey-fg icon-phone-hangup",not_inuse:"green-300-fg icon-phone-hangup",inuse:"red-300-fg icon-phone-in-talk",busy:"red-300-fg icon-phone-locked",invalid:"grey-fg icon-phone-hangup",unavailable:"grey-fg icon-phone-hangup",ringing:"blue-300-fg icon-phone-incoming",ringinuse:"blue-300-fg icon-phone-incoming",onhold:"blue-300-fg icon-phone-paused"},channelStatus:{ring:"blue-300-fg icon-phone-incoming",up:"green-300-fg icon-phone-in-talk",hangup:"red-300-fg icon-phone-hangup"},channelStatusOut:{ring:"blue-300-fg icon-phone-outgoing",up:"green-300-fg icon-phone-in-talk",hangup:"red-300-fg icon-phone-hangup"}}}angular.module("app.auth").factory("helperClasses",e)}(),function(){"use strict";function e(e,t,n){var a=this;switch(n.disconnect(),n.connect(),a.selectedTab=0,t.current.name){case"app.voice.realtime.agents":a.selectedTab=0;break;case"app.voice.realtime.telephones":a.selectedTab=1;break;case"app.voice.realtime.trunks":a.selectedTab=2;break;case"app.voice.realtime.queues":a.selectedTab=3;break;case"app.voice.realtime.queue_calls":a.selectedTab=4;break;case"app.voice.realtime.queue_params":a.selectedTab=5;break;case"app.voice.realtime.outbound_calls":a.selectedTab=6;break;default:a.selectedTab=0,t.go("app.voice.realtime.agents")}e.$watch("vm.selectedTab",function(e,n){if(e!==n)switch(e){case 0:t.go("app.voice.realtime.agents");break;case 1:t.go("app.voice.realtime.telephones");break;case 2:t.go("app.voice.realtime.trunks");break;case 3:t.go("app.voice.realtime.queues");break;case 4:t.go("app.voice.realtime.queue_calls");break;case 5:t.go("app.voice.realtime.queue_params");break;case 6:t.go("app.voice.realtime.outbound_calls");break;default:t.go("app.voice.realtime.agents")}})}e.$inject=["$scope","$state","socket"],angular.module("app.voice").controller("VoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){_.forIn(p.telephones,function(e,t){p.rpcTelephones[t]&&_.merge(e,_.pick(p.rpcTelephones[t],g))})}function d(e){n.show(n.alert().clickOutsideToClose(!0).title("Legend").htmlContent("<div>TODO legend status + state</div>").ok("Ok").targetEvent(e))}function c(e){p.telephones[e.id]&&_.merge(p.telephones[e.id],_.pick(e,g))}function m(e){p.telephones=e?_.keyBy(e.rows?e.rows:[],"id"):{},l()}function u(){p.query.offset=(p.query.page-1)*p.query.limit,p.promise=o.user.get(p.query,m).$promise}var p=this,g=["fullname","internal","state","status"];p.count=a.count,p.attributes=["fullname","internal","state","status","address"],p.telephones=a?_.keyBy(a.rows?a.rows:[],"id"):{},p.rpcTelephones=i?_.keyBy(i.rows?i.rows:[],"id"):{},p.query={fields:"id,fullname,internal",role:"telephone",sort:"-updatedAt",limit:10,page:1},p.statusClass=r.status,p.stateClass=r.state,p.success=m,p.$onInit=l,p.showInfo=d,p.getTelephones=u,p.onSave=c,s.on("telephone:save",p.onSave);var h=!0,v=1;e.$watch("vm.query.filter",function(e,n){h?t(function(){h=!1}):(n||(v=p.query.page),e!==n&&(p.query.page=1),e||(p.query.page=v),p.getTelephones())}),e.$on("$destroy",function(){s.removeAllListeners("telephone:save")})}e.$inject=["$scope","$timeout","$mdDialog","telephones","rpcTelephones","api","socket","helperClasses"],angular.module("app.voice").controller("TelephonesVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){_.forIn(p.trunks,function(e,t){p.rpcTrunks[t]&&_.merge(e,_.pick(p.rpcTrunks[t],g))})}function d(e){n.show(n.alert().clickOutsideToClose(!0).title("Legend").htmlContent("<div>TODO legend status + state</div>").ok("Ok").targetEvent(e))}function c(e){p.trunks[e.id]&&_.merge(p.trunks[e.id],_.pick(e,g))}function m(e){p.count=e.count,p.trunks=e?_.keyBy(e.rows?e.rows:[],"id"):{},l()}function u(){p.query.offset=(p.query.page-1)*p.query.limit,p.promise=o.trunk.get(p.query,m).$promise}var p=this,g=["status","stateRegistry","registry","host","port","internal","state","status"];p.count=a.count,p.trunks=a?_.keyBy(a.rows?a.rows:[],"id"):{},p.rpcTrunks=i?_.keyBy(i.rows?i.rows:[],"id"):{},p.query={fields:"id,name",active:!0,sort:"-updatedAt",limit:10,page:1},p.statusClass=r.status,p.stateClass=r.state,p.success=m,p.$onInit=l,p.showInfo=d,p.getTrunks=u,p.onSave=c,s.on("trunk:save",p.onSave);var h=!0,v=1;e.$watch("vm.query.filter",function(e,n){h?t(function(){h=!1}):(n||(v=p.query.page),e!==n&&(p.query.page=1),e||(p.query.page=v),p.getTrunks())}),e.$on("$destroy",function(){s.removeAllListeners("trunk:save")})}e.$inject=["$scope","$timeout","$mdDialog","trunks","rpcTrunks","api","socket","helperClasses"],angular.module("app.voice").controller("TrunksVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceMail.save(p.voicemail).$promise.then(function(e){p.voicemails.unshift(e),i.success({title:"Voicemail properly created",msg:p.voicemail.name?p.voicemail.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMail.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMail.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceMail.update({id:p.voicemail.id},p.voicemail).$promise.then(function(e){var t=_.find(p.voicemails,{id:e.id});t&&_.merge(t,e),i.success({title:"Voicemail properly saved!",msg:p.voicemail.name?p.voicemail.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMail.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMail.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The voicemail will be deleted.").ariaLabel("Delete Voicemail").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceMail.delete({id:p.voicemail.id}).$promise.then(function(){_.remove(p.voicemails,{id:p.voicemail.id}),i.success({title:"Voicemail properly deleted!",msg:(p.voicemail.name||"voicemail")+" has been deleted!"}),u(p.voicemail)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMail.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_VOICEMAIL",p.voicemail=angular.copy(s),p.voicemails=o,p.newVoicemail=!1,p.voicemail||(p.voicemail={},p.title="VOICE.NEW_VOICEMAIL",p.newVoicemail=!0),p.addNewVoicemail=l,p.saveVoicemail=d,p.deleteVoicemail=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","voicemails","voicemail","api"],angular.module("app.voice").controller("CreateOrEditVoicemailDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.voicemail=e,h.query.id=h.voicemail.id,h.getVoicemailMessages()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the message?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete message").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.voicemailMessages=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceMail.getMessages(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditMessageDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voicemails/edit/messages/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{message:t,messages:h.voicemailMessages.rows}})}function p(e){r.voiceMailMessage.delete({id:e.id}).$promise.then(function(){_.remove(h.voicemailMessages.rows,{id:e.id}),h.voicemailMessages.count-=1,h.voicemailMessages.rows.length||h.getVoicemailMessages(),s.success({title:"Message deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMail",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected messages?").htmlContent("<b>"+h.selectedVoicemailMessages.length+" selected</b> will be deleted.").ariaLabel("delete messages").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedVoicemailMessages.forEach(function(e){p(e)}),h.selectedVoicemailMessages=[]})}var h=this;h.voicemail={},h.voicemailMessages={count:0,rows:[]},h.selectedVoicemailMessages=[],h.query={fields:"createdAt,updatedAt,id,callerid,duration,audio,stamp",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getVoicemailMessages=m,h.createOrEditVoicemailMessage=u,h.deleteVoicemailMessage=p,h.deleteSelectedVoicemailMessages=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getVoicemailMessages())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.voice").controller("VoicemailMessagesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.voicemails")}function r(){i.voiceMail.update({id:l.voicemail.id},l.voicemail).$promise.then(function(){a.success({title:"Voicemail updated!",msg:l.voicemail.name?l.voicemail.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMail",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.voicemail=e.params.voicemail||o||{},l.selectedTab=e.params.tab||0,l.gotoVoicemails=s,l.saveVoicemail=r,i.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","voicemail"],angular.module("app.voice").controller("VoicemailController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.voicemails.edit",{id:e.id,voicemail:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the voicemail?").htmlContent("<b>"+(e.name||"voicemail")+"</b> will be deleted.").ariaLabel("delete voicemail").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.voicemails=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceMail.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditVoicemailDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voicemails/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{voicemail:t,voicemails:A.voicemails.rows}})}function v(e){l.voiceMail.delete({id:e.id}).$promise.then(function(){_.remove(A.voicemails.rows,{id:e.id}),A.voicemails.count-=1,A.voicemails.rows.length||A.getVoicemails(),c.success({title:"Voicemail deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMail",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedVoicemails);return A.selectedVoicemails=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected voicemails?").htmlContent("<b>"+A.selectedVoicemails.length+" selected</b> will be deleted.").ariaLabel("delete Voicemails").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedVoicemails.forEach(function(e){v(e)}),A.selectedVoicemails=[]})}function E(){A.selectedVoicemails=[]}function y(){A.selectedVoicemails=A.voicemails.rows}var A=this;A.voicemails=r||{count:0,rows:[]},A.table="voicemails",A.listOrder="",A.listOrderAsc=null,A.selectedVoicemails=[],A.query={fields:"createdAt,updatedAt,id,customer_id,fullname,email,password,mailbox,context,tz,attach,envelope,delete,emailbody,emailsubject,maxsecs,maxmsg",sort:"-updatedAt",limit:10,page:1},A.arrayattach=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayenvelope=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraydelete=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getVoicemails=g,A.createOrEditVoicemail=h,A.deleteVoicemail=v,A.exportSelectedVoicemails=b,A.deleteSelectedVoicemails=f,A.deselectVoicemails=E,A.selectAllVoicemails=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getVoicemails())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","voicemails","api","msUtils","toasty"],angular.module("app.voice").controller("VoicemailsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceQueue.save(p.voiceQueue).$promise.then(function(e){p.voiceQueues.unshift(e),i.success({title:"VoiceQueue properly created",msg:p.voiceQueue.name?p.voiceQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceQueue.update({id:p.voiceQueue.id},p.voiceQueue).$promise.then(function(e){var t=_.find(p.voiceQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"VoiceQueue properly saved!",msg:p.voiceQueue.name?p.voiceQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The voiceQueue will be deleted.").ariaLabel("Delete VoiceQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceQueue.delete({id:p.voiceQueue.id}).$promise.then(function(){_.remove(p.voiceQueues,{id:p.voiceQueue.id}),i.success({title:"VoiceQueue properly deleted!",msg:(p.voiceQueue.name||"voiceQueue")+" has been deleted!"}),u(p.voiceQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_VOICEQUEUE",p.voiceQueue=angular.copy(s),p.voiceQueues=o,p.newVoiceQueue=!1,p.voiceQueue||(p.voiceQueue={type:"inbound",strategy:"ringall",timeout:15,retry:2,random_periodic_announce:"no",announce_holdtime:"no",announce_position:"no",reportholdtime:"no",autopause:"no",ringinuse:"no",timeoutrestart:"no",setinterfacevar:"no",setqueuevar:"no",setqueueentryvar:"no"},p.title="VOICE.NEW_VOICEQUEUE",p.newVoiceQueue=!0),p.addNewVoiceQueue=l,p.saveVoiceQueue=d,p.deleteVoiceQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","voiceQueues","voiceQueue","api"],angular.module("app.voice").controller("CreateOrEditVoiceQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){return n.voiceQueue[c.isVoiceRealtime()?"getMembers":"getAgents"]({id:c.voiceQueue.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){return c.isVoiceRealtime()?c.selectedItems=e.rows?_.map(e.rows,function(e){return e.id=e.UserId,e.fullname=e.membername,e.penalty=e.hasOwnProperty("penalty")?"penalty "+e.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[]:c.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserVoiceQueue?"penalty "+e.UserVoiceQueue.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.selectedItems=c.selectedItems,n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){c.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserVoiceQueue?"penalty "+e.UserVoiceQueue.penalty:"",e.internal=e.internal?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.items=_.differenceBy(c.items,c.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function l(){return o}function d(){e.hide()}var c=this;c.voiceQueue=a,c.penalty=0,c.items=[],c.selectedItems=[],c.closeDialog=d,c.isVoiceRealtime=l,c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:"internal",line3:"penalty",labelAll:s.instant("VOICE.ALL_AGENTS"),labelSelected:s.instant("VOICE.SELECTED_AGENTS"),transferCallback:function(e,a){n.voiceQueue[a?"removeAgents":"addAgents"]({id:c.voiceQueue.id,ids:_.map(e,c.isVoiceRealtime()&&a?"UserId":"id"),penalty:c.penalty||0,realtime:o||!1}).$promise.then(function(){t.success({title:"VoiceQueue properly "+(a?"removed":"added"),msg:"VoiceQueue has been "+(a?"removed":"added")+"!"}),a||r()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:voiceQueue.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},r()}e.$inject=["$mdDialog","toasty","api","voiceQueue","voiceQueues","realtime","$translate"],angular.module("app.voice").controller("VoiceQueueagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.voiceQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("VOICE.ALL_TEAMS"),labelSelected:i.instant("VOICE.SELECTED_TEAMS"),transferCallback:function(e,a){n.voiceQueue[a?"removeTeams":"addTeams"]({id:s.voiceQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:voiceQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.voiceQueue.getTeams({id:s.voiceQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","voiceQueue","$translate"],angular.module("app.voice").controller("VoiceQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"VoiceQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{voiceQueue:e,voiceQueues:c.voiceQueues?c.voiceQueues.rows:[]}})}function r(e,a){t.show({controller:"VoiceQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{voiceQueue:e,voiceQueues:c.voiceQueues?c.voiceQueues.rows:[],realtime:!1}})}function l(){e.go("app.voice.voiceQueues")}function d(){i.voiceQueue.update({id:c.voiceQueue.id},c.voiceQueue).$promise.then(function(){a.success({title:"VoiceQueue updated!",msg:c.voiceQueue.name?c.voiceQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.voiceQueue=e.params.voiceQueue||o||{},c.selectedTab=e.params.tab||0,c.teamadddialog=s,c.agentadddialog=r,c.gotoVoiceQueues=l,c.saveVoiceQueue=d,i.voiceMusicOnHold.get({fields:"name",nolimit:"true"}).$promise.then(function(e){c.musiconholds=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmusiconholds",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.sound.get({fields:"name,save_name",sort:"name",nolimit:"true"}).$promise.then(function(e){c.sounds=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","voiceQueue"],angular.module("app.voice").controller("VoiceQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.voiceQueues.edit",{id:e.id,voiceQueue:e})}function u(e,t){i.show({controller:"VoiceQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/teamadd/teamadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{voiceQueue:e,voiceQueues:x.voiceQueues?x.voiceQueues.rows:[]}})}function p(e,t){i.show({controller:"VoiceQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{voiceQueue:e,voiceQueues:x.voiceQueues?x.voiceQueues.rows:[],realtime:!1}})}function g(e,t){var n=i.confirm().title("Are you sure want to delete the voiceQueue?").htmlContent("<b>"+(e.name||"voiceQueue")+"</b> will be deleted.").ariaLabel("delete voiceQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){f(e)},function(){console.log("CANCEL")})}function h(e){x.voiceQueues=e||{count:0,rows:[]}}function v(){x.query.offset=(x.query.page-1)*x.query.limit,x.promise=l.voiceQueue.get(x.query,h).$promise}function b(e,t){i.show({controller:"CreateOrEditVoiceQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceQueue:t,voiceQueues:x.voiceQueues.rows}})}function f(e){l.voiceQueue.delete({id:e.id}).$promise.then(function(){_.remove(x.voiceQueues.rows,{id:e.id}),x.voiceQueues.count-=1,x.voiceQueues.rows.length||x.getVoiceQueues(),c.success({title:"VoiceQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(){var e=_.clone(x.selectedVoiceQueues);return x.selectedVoiceQueues=[],e}function y(e){var t=i.confirm().title("Are you sure want to delete the selected voiceQueues?").htmlContent("<b>"+x.selectedVoiceQueues.length+" selected</b> will be deleted.").ariaLabel("delete VoiceQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){x.selectedVoiceQueues.forEach(function(e){f(e)}),x.selectedVoiceQueues=[]})}function A(){x.selectedVoiceQueues=[]}function C(){x.selectedVoiceQueues=x.voiceQueues.rows}var x=this;x.voiceQueues=r||{count:0,rows:[]},x.table="voiceQueues",x.listOrder="",x.listOrderAsc=null,x.selectedVoiceQueues=[],x.query={fields:"createdAt,updatedAt,id,name,type,strategy,timeout,maxlen,retry,wrapuptime,weight,joinempty,leavewhenempty,musiconhold,announce,description,periodic_announce,queue_reporthold,queue_youarenext,queue_thereare,queue_callswaiting,queue_holdtime,queue_minutes,queue_minute,queue_seconds,queue_thankyou,announce_frequency,min_announce_frequency,periodic_announce_frequency,random_periodic_announce,announce_holdtime,announce_position,announce_position_limit,reportholdtime,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar",type:"inbound",sort:"-updatedAt",limit:10,page:1},x.arraystrategy=_.keyBy([{option:"Ringall",value:"'ringall'"},{option:"Round Robin Memory",value:"'rrmemory'"},{option:"Least Recent",value:"'leastrecent'"},{option:"Fewest Calls",value:"'fewestcalls'"},{option:"Random",value:"'random'"},{option:"Linear",value:"'linear'"},{option:"Weight Random",value:"'wrandom'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayjoinempty=_.keyBy([{option:"no",value:"'no'"},{option:"yes",value:"'yes'"},{option:"strict",value:"'strict'"},{option:"loose",value:"'loose'"},{option:"paused",value:"'paused'"},{option:"penalty",value:"'penalty'"},{option:"inuse",value:"'inuse'"},{option:"ringing",value:"'ringing'"},{option:"unavailable",value:"'unavailable'"},{option:"invalid",value:"'invalid'"},{option:"unknoww",value:"'unknown'"},{option:"wrapup",value:"'wrapup'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayleavewhenempty=_.keyBy([{option:"no",value:"'no'"},{option:"yes",value:"'yes'"},{option:"strict",value:"'strict'"},{option:"loose",value:"'loose'"},{option:"paused",value:"'paused'"},{option:"penalty",value:"'penalty'"},{option:"inuse",value:"'inuse'"},{option:"ringing",value:"'ringing'"},{option:"unavailable",value:"'unavailable'"},{option:"invalid",value:"'invalid'"},{option:"unknoww",value:"'unknown'"},{option:"wrapup",value:"'wrapup'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayrandom_periodic_announce=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayannounce_holdtime=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"},{option:"Once",value:"'once'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayannounce_position=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"},{option:"Limit",value:"'limit'"},{option:"More",value:"'more'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayreportholdtime=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayautopause=_.keyBy([{option:"Yes",value:"'all'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayringinuse=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraytimeoutrestart=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraymonitor_format=_.keyBy([{option:"Inactive",value:"''"},{option:"wav",value:"'wav'"},{option:"wav49",value:"'wav49'"},{option:"gsm",value:"'gsm'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraysetinterfacevar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraysetqueuevar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraysetqueueentryvar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.editstate=m,x.teamadddialog=u,x.agentadddialog=p,x.deleteconfirm=g,x.success=h,x.getVoiceQueues=v,x.createOrEditVoiceQueue=b,x.deleteVoiceQueue=f,x.exportSelectedVoiceQueues=E,x.deleteSelectedVoiceQueues=y,x.deselectVoiceQueues=A,x.selectAllVoiceQueues=C;var T=!0,S=1;e.$watch("vm.query.filter",function(e,t){T?s(function(){T=!1}):(t||(S=x.query.page),e!==t&&(x.query.page=1),e||(x.query.page=S),x.getVoiceQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","voiceQueues","api","msUtils","toasty"],angular.module("app.voice").controller("VoiceQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceRecording.save(p.voiceRecording).$promise.then(function(e){p.voiceRecordings.unshift(e),i.success({title:"VoiceRecording properly created",msg:p.voiceRecording.name?p.voiceRecording.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceRecording.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceRecording.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceRecording.update({id:p.voiceRecording.id},p.voiceRecording).$promise.then(function(e){var t=_.find(p.voiceRecordings,{id:e.id});t&&_.merge(t,e),i.success({title:"VoiceRecording properly saved!",msg:p.voiceRecording.name?p.voiceRecording.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceRecording.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceRecording.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The voiceRecording will be deleted.").ariaLabel("Delete VoiceRecording").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceRecording.delete({id:p.voiceRecording.id}).$promise.then(function(){_.remove(p.voiceRecordings,{id:p.voiceRecording.id}),i.success({title:"VoiceRecording properly deleted!",msg:(p.voiceRecording.name||"voiceRecording")+" has been deleted!"}),u(p.voiceRecording)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceRecording.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_VOICERECORDING",p.voiceRecording=angular.copy(s),p.voiceRecordings=o,p.newVoiceRecording=!1,p.voiceRecording||(p.voiceRecording={},p.title="VOICE.NEW_VOICERECORDING",p.newVoiceRecording=!0),p.addNewVoiceRecording=l,p.saveVoiceRecording=d,p.deleteVoiceRecording=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","voiceRecordings","voiceRecording","api"],angular.module("app.voice").controller("CreateOrEditVoiceRecordingDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,n){return l.voiceRecording.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/voice/recordings/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the voiceRecording?").htmlContent("<b>"+(e.name||"voiceRecording")+"</b> will be deleted.").ariaLabel("delete voiceRecording").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.voiceRecordings=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceRecording.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditVoiceRecordingDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceRecordings/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceRecording:t,voiceRecordings:A.voiceRecordings.rows}})}function v(e){l.voiceRecording.delete({id:e.id}).$promise.then(function(){_.remove(A.voiceRecordings.rows,{id:e.id}),A.voiceRecordings.count-=1,A.voiceRecordings.rows.length||A.getVoiceRecordings(),c.success({title:"VoiceRecording deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedVoiceRecordings);return A.selectedVoiceRecordings=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected voiceRecordings?").htmlContent("<b>"+A.selectedVoiceRecordings.length+" selected</b> will be deleted.").ariaLabel("delete VoiceRecordings").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedVoiceRecordings.forEach(function(e){v(e)}),A.selectedVoiceRecordings=[]})}function E(){A.selectedVoiceRecordings=[]}function y(){A.selectedVoiceRecordings=A.voiceRecordings.rows}var A=this;A.voiceRecordings=r||{count:0,rows:[]},A.table="voiceRecordings",A.listOrder="",A.listOrderAsc=null,A.selectedVoiceRecordings=[],A.query={fields:"createdAt,updatedAt,id,format,value,type,uniqueid,calleridnum,exten,connectedlinenum,queue,rating,audio,createdAt",sort:"-updatedAt",limit:10,page:1},A.downloadfile=m,A.deleteconfirm=u,A.success=p,A.getVoiceRecordings=g,A.createOrEditVoiceRecording=h,A.deleteVoiceRecording=v,A.exportSelectedVoiceRecordings=b,A.deleteSelectedVoiceRecordings=f,A.deselectVoiceRecordings=E,A.selectAllVoiceRecordings=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getVoiceRecordings())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","voiceRecordings","api","msUtils","toasty"],angular.module("app.voice").controller("VoiceRecordingsController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){return a.getCurrentUser()&&a.hasRole("agent")}this.isAgent=o,n.saveItem("apps",{title:"APPS",group:!0,weight:1,hidden:function(){return a.hasRole("agent")}}),n.saveItem("apps.dashboards",{id:100,title:"Dashboards",translate:"DASHBOARDS.DASHBOARDS",icon:"icon-tile-four",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(100)&&!a.hasRole("admin")}}),n.saveItem("apps.dashboards.general",{id:101,title:"General",translate:"DASHBOARDS.GENERAL",state:"app.dashboards.general",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(101)&&!a.hasRole("admin")}}),n.saveItem("apps.staff",{id:200,title:"Staff",translate:"STAFF.STAFF",icon:"icon-account-multiple",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(200)&&!a.hasRole("admin")}}),n.saveItem("apps.staff.users",{id:201,title:"Users",translate:"STAFF.USERS",state:"app.staff.users",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(201)&&!a.hasRole("admin")}}),n.saveItem("apps.staff.agents",{id:202,title:"Agents",translate:"STAFF.AGENTS",state:"app.staff.agents",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(202)&&!a.hasRole("admin")}}),n.saveItem("apps.staff.telephones",{id:203,title:"Telephones",translate:"STAFF.TELEPHONES",state:"app.staff.telephones",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(203)&&!a.hasRole("admin")}}),n.saveItem("apps.staff.teams",{id:204,title:"Teams",translate:"STAFF.TEAMS",state:"app.staff.teams",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(204)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager",{id:300,title:"ContactManager",translate:"CONTACTMANAGER.CONTACTMANAGER",icon:"icon-account-circle",weight:4,hidden:function(){return!i.cm||a.hasRole("agent")||!a.hasPermission(300)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager.lists",{id:301,title:"Lists",translate:"CONTACTMANAGER.LISTS",state:"app.contactmanager.lists",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(301)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager.companies",{id:302,title:"Companies",translate:"CONTACTMANAGER.COMPANIES",state:"app.contactmanager.companies",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(302)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager.globalCustomFields",{id:304,title:"GlobalCustomFields",translate:"CONTACTMANAGER.GLOBALCUSTOMFIELDS",state:"app.contactmanager.globalCustomFields",weight:4,hidden:function(){return a.hasRole("agent")||!a.hasPermission(304)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager.contacts",{id:303,title:"Contacts",translate:"CONTACTMANAGER.CONTACTS",state:"app.contactmanager.contacts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(303)&&!a.hasRole("admin")}}),n.saveItem("apps.voice",{id:400,title:"Voice",translate:"VOICE.VOICE",icon:"icon-phone",weight:5,hidden:function(){return a.hasRole("agent")||!a.hasPermission(400)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.voiceQueues",{id:401,title:"VoiceQueues",translate:"VOICE.VOICEQUEUES",state:"app.voice.voiceQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(401)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.inboundroutes",{id:402,title:"InboundRoutes",translate:"VOICE.INBOUNDROUTES",state:"app.voice.inboundroutes",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(402)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.outboundroutes",{id:403,title:"OutboundRoutes",translate:"VOICE.OUTBOUNDROUTES",state:"app.voice.outboundroutes",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(403)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.internalroutes",{id:404,title:"InternalRoutes",translate:"VOICE.INTERNALROUTES",state:"app.voice.internalroutes",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(404)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.contexts",{id:405,title:"Contexts",translate:"VOICE.CONTEXTS",state:"app.voice.contexts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(405)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.voicemails",{id:406,title:"Voicemails",translate:"VOICE.VOICEMAILS",state:"app.voice.voicemails",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(406)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.musiconholds",{id:407,title:"MusicOnHolds",translate:"VOICE.MUSICONHOLDS",state:"app.voice.musiconholds",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(407)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.voiceRecordings",{id:408,title:"VoiceRecordings",translate:"VOICE.VOICERECORDINGS",state:"app.voice.voiceRecordings",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(408)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.chanSpies",{id:409,title:"ChanSpies",translate:"VOICE.CHANSPIES",state:"app.voice.chanSpies",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(409)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.realtime",{id:410,title:"Realtime",translate:"VOICE.REALTIME",state:"app.voice.realtime",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(410)&&!a.hasRole("admin")}}),n.saveItem("apps.chat",{id:500,title:"Chat",translate:"CHAT.CHAT",icon:"icon-hangouts",weight:6,hidden:function(){return!i.chat||a.hasRole("agent")||!a.hasPermission(500)&&!a.hasRole("admin")}}),n.saveItem("apps.chat.chatQueues",{id:501,title:"ChatQueues",translate:"CHAT.CHATQUEUES",state:"app.chat.chatQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(501)&&!a.hasRole("admin")}}),n.saveItem("apps.chat.chatWebsites",{id:502,title:"ChatWebsites",translate:"CHAT.CHATWEBSITES",state:"app.chat.chatWebsites",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(502)&&!a.hasRole("admin")}}),n.saveItem("apps.mail",{id:600,title:"Mail",translate:"MAIL.MAIL",icon:"icon-email",weight:7,hidden:function(){return!i.license||a.hasRole("agent")||!a.hasPermission(600)&&!a.hasRole("admin")}}),n.saveItem("apps.mail.mailQueues",{id:601,title:"MailQueues",translate:"MAIL.MAILQUEUES",state:"app.mail.mailQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(601)&&!a.hasRole("admin")}}),n.saveItem("apps.mail.mailAccounts",{id:602,title:"MailAccounts",translate:"MAIL.MAILACCOUNTS",state:"app.mail.mailAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(602)&&!a.hasRole("admin")}}),n.saveItem("apps.sms",{id:700,title:"Sms",translate:"SMS.SMS",icon:"icon-message-text",weight:8,hidden:function(){return!i.messaging||a.hasRole("agent")||!a.hasPermission(700)&&!a.hasRole("admin")}}),n.saveItem("apps.sms.smsQueues",{id:701,title:"SmsQueues",translate:"SMS.SMSQUEUES",state:"app.sms.smsQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(701)&&!a.hasRole("admin")}}),n.saveItem("apps.sms.smsAccounts",{id:702,title:"SmsAccounts",translate:"SMS.SMSACCOUNTS",state:"app.sms.smsAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(702)&&!a.hasRole("admin")}}),n.saveItem("apps.openchannel",{id:800,title:"Openchannel",translate:"OPENCHANNEL.OPENCHANNEL",icon:"icon-google-earth",weight:9,hidden:function(){return!i.openchannel||a.hasRole("agent")||!a.hasPermission(800)&&!a.hasRole("admin")}}),n.saveItem("apps.openchannel.openchannelQueues",{id:801,title:"OpenchannelQueues",translate:"OPENCHANNEL.OPENCHANNELQUEUES",state:"app.openchannel.openchannelQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(801)&&!a.hasRole("admin")}}),n.saveItem("apps.openchannel.openchannelAccounts",{id:802,title:"OpenchannelAccounts",translate:"OPENCHANNEL.OPENCHANNELACCOUNTS",state:"app.openchannel.openchannelAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(802)&&!a.hasRole("admin")}}),n.saveItem("apps.fax",{id:900,title:"Fax",translate:"FAX.FAX",icon:"icon-deskphone",weight:10,hidden:function(){return!i.fax||a.hasRole("agent")||!a.hasPermission(900)&&!a.hasRole("admin")}}),n.saveItem("apps.fax.faxQueues",{id:901,title:"FaxQueues",translate:"FAX.FAXQUEUES",state:"app.fax.faxQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(901)&&!a.hasRole("admin")}}),n.saveItem("apps.fax.faxAccounts",{id:902,title:"FaxAccounts",translate:"FAX.FAXACCOUNTS",state:"app.fax.faxAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(902)&&!a.hasRole("admin")}}),n.saveItem("apps.tools",{id:1e3,title:"Tools",translate:"TOOLS.TOOLS",icon:"icon-auto-fix",weight:11,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1e3)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.cannedAnswers",{id:1002,title:"CannedAnswers",translate:"TOOLS.CANNEDANSWERS",state:"app.tools.cannedAnswers",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1002)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.customDashboards",{id:1003,title:"CustomDashboards",translate:"TOOLS.CUSTOMDASHBOARDS",state:"app.tools.customDashboards",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1003)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.intervals",{id:1004,title:"Intervals",translate:"TOOLS.INTERVALS",state:"app.tools.intervals",weight:4,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1004)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.pauses",{id:1005,title:"Pauses",translate:"TOOLS.PAUSES",state:"app.tools.pauses",weight:5,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1005)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.schedules",{id:42,title:"Scheduler",translate:"TOOLS.SCHEDULER",state:"app.tools.schedules",weight:6,hidden:function(){return a.hasRole("agent")||!a.hasPermission(42)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.sounds",{id:1006,title:"Sounds",translate:"TOOLS.SOUNDS",state:"app.tools.sounds",weight:7,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1006)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.tags",{id:1007,title:"Tags",translate:"TOOLS.TAGS",state:"app.tools.tags",weight:8,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1007)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.templates",{id:1008,title:"Templates",translate:"TOOLS.TEMPLATES",state:"app.tools.templates",weight:9,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1008)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.triggers",{id:1009,title:"Triggers",translate:"TOOLS.TRIGGERS",state:"app.tools.triggers",weight:10,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1009)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.trunks",{id:1010,title:"Trunks",translate:"TOOLS.TRUNKS",state:"app.tools.trunks",weight:11,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1010)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.variables",{id:1011,title:"Variables",translate:"TOOLS.VARIABLES",state:"app.tools.variables",weight:12,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1011)&&!a.hasRole("admin")}}),n.saveItem("apps.callysquare",{id:1100,title:"CallySquare",translate:"CALLYSQUARE.CALLYSQUARE",icon:"icon-sitemap",weight:12,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1100)&&!a.hasRole("admin")}}),n.saveItem("apps.callysquare.odbcs",{id:1101,title:"ODBC",translate:"CALLYSQUARE.ODBC",state:"app.callysquare.odbcs",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1101)&&!a.hasRole("admin")}}),n.saveItem("apps.callysquare.squareRecordings",{id:1102,title:"SquareRecordings",translate:"CALLYSQUARE.SQUARERECORDINGS",state:"app.callysquare.squareRecordings",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1102)&&!a.hasRole("admin")}}),n.saveItem("apps.callysquare.projects",{id:1103,title:"Projects",translate:"CALLYSQUARE.PROJECTS",state:"app.callysquare.projects",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1103)&&!a.hasRole("admin")}}),n.saveItem("apps.analytics",{id:1200,title:"Analytics",translate:"ANALYTICS.ANALYTICS",icon:"icon-chart-line",weight:13,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1200)&&!a.hasRole("admin")}}),n.saveItem("apps.analytics.metrics",{id:1201,title:"Metrics",translate:"ANALYTICS.METRICS",state:"app.analytics.metrics",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1201)&&!a.hasRole("admin")}}),n.saveItem("apps.analytics.extractedReports",{id:1202,title:"ExtractedReports",translate:"ANALYTICS.EXTRACTEDREPORTS",state:"app.analytics.extractedReports",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1202)&&!a.hasRole("admin")}}),n.saveItem("apps.analytics.reports",{id:1203,title:"Reports",translate:"ANALYTICS.REPORTS",state:"app.analytics.reports",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1203)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations",{id:1300,title:"Integrations",translate:"INTEGRATIONS.INTEGRATIONS",icon:"icon-heart",weight:14,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1300)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations.zendeskAccounts",{id:1301,title:"ZendeskAccounts",translate:"INTEGRATIONS.ZENDESKACCOUNTS",state:"app.integrations.zendeskAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1301)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations.salesforceAccounts",{id:1302,title:"SalesforceAccounts",translate:"INTEGRATIONS.SALESFORCEACCOUNTS",state:"app.integrations.salesforceAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1302)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations.freshdeskAccounts",{id:1303,title:"FreshdeskAccounts",translate:"INTEGRATIONS.FRESHDESKACCOUNTS",state:"app.integrations.freshdeskAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1303)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations.sugarcrmAccounts",{id:1304,title:"SugarcrmAccounts",translate:"INTEGRATIONS.SUGARCRMACCOUNTS",state:"app.integrations.sugarcrmAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1304)&&!a.hasRole("admin")}}),n.saveItem("apps.settings",{id:1400,title:"Settings",translate:"SETTINGS.SETTINGS",icon:"icon-cog",weight:15,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1400)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.generals",{id:1401,title:"General",translate:"SETTINGS.GENERAL",state:"app.settings.generals",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1401)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.smtps",{id:1402,title:"Smtp",translate:"SETTINGS.SMTP",state:"app.settings.smtps",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1402)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.networks",{id:1403,title:"Networks",translate:"SETTINGS.NETWORKS",state:"app.settings.networks",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1403)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.customizations",{id:1407,title:"Customizations",translate:"SETTINGS.CUSTOMIZATIONS",state:"app.settings.customizations",weight:1,hidden:function(){return!i.custom||a.hasRole("agent")||!a.hasPermission(1407)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.updates",{id:1404,title:"Updates",translate:"SETTINGS.UPDATES",state:"app.settings.updates",weight:1,hidden:function(){return!i.update||a.hasRole("agent")||!a.hasPermission(1404)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.license",{id:1405,title:"License",translate:"SETTINGS.LICENSE",state:"app.settings.license",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1405)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.system",{id:1406,title:"System",translate:"SETTINGS.SYSTEM",state:"app.settings.system",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1406)&&!a.hasRole("admin")}}),n.saveItem("apps.help",{id:1600,title:"Help",translate:"HELP.HELP",icon:"icon-help",weight:16,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1600)&&!a.hasRole("admin")}}),n.saveItem("apps.help.about",{id:1601,title:"About",translate:"HELP.ABOUT",state:"app.help.about",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1601)&&!a.hasRole("admin")}}),n.saveItem("apps.motiondialer",{id:1500,title:"MotionDialer",translate:"MOTIONDIALER.MOTIONDIALER",icon:"icon-fire",weight:5,hidden:function(){return!i.dialer||a.hasRole("agent")||!a.hasPermission(1500)&&!a.hasRole("admin")}}),n.saveItem("apps.motiondialer.queueCampaigns",{id:1501,title:"QueueCampaigns",translate:"MOTIONDIALER.QUEUECAMPAIGNS",state:"app.motiondialer.queueCampaigns",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1501)&&!a.hasRole("admin")}}),n.saveItem("apps.motiondialer.ivrCampaigns",{id:1502,title:"IvrCampaigns",translate:"MOTIONDIALER.IVRCAMPAIGNS",state:"app.motiondialer.ivrCampaigns",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1502)&&!a.hasRole("admin")}}),n.saveItem("apps.motiondialer.realtime",{id:1510,title:"Realtime",translate:"MOTIONDIALER.REALTIME",state:"app.motiondialer.realtime",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1510)&&!a.hasRole("admin")}}),e.$on("$viewContentAnimationEnded",function(n){n.targetScope.$id===e.$id&&t.$broadcast("msSplashScreen::remove")})}e.$inject=["$scope","$rootScope","msNavigationService","Auth","license"],angular.module("motion").controller("MainController",e)}(),function(){"use strict";function e(e,t){function n(){i.folded=!i.folded}function a(){return i.setting.defaultHeaderWhiteLabel?"Motion":i.setting.headerWhiteLabel}var i=this;i.bodyEl=angular.element("body"),i.folded=!1,i.msScrollOptions={suppressScrollX:!0},i.setting=t,i.toggleMsNavigationFolded=n,i.getLogo=a,e.$on("$stateChangeSuccess",function(){i.bodyEl.removeClass("ms-navigation-horizontal-mobile-menu-active")})}e.$inject=["$scope","setting"],angular.module("app.navigation").controller("NavigationController",e)}(),function(){"use strict";function e(e,t){var n=this;n.date=new Date,n.license=t,n.license.gray&&(n.license.deadline=moment(n.license.gray).add(7,"days").format("MMMM Do YYYY, HH:MM"))}e.$inject=["msApi","license"],angular.module("app.quick-panel").controller("QuickPanelController",e)}(),function(){"use strict";function e(e,t){function n(e){o.chatActive=!o.chatActive,o.chatActive&&(o.replyMessage="",o.chat.contact=e,i(0))}function a(){""!==o.replyMessage&&(o.chat.contact.dialog||(o.chat.contact.dialog=[]),o.chat.contact.dialog.push({who:"user",message:o.replyMessage,time:"Just now"}),o.replyMessage="",i(400))}function i(e){var n=angular.element("#chat-dialog");t(function(){n.animate({scrollTop:n[0].scrollHeight},e)},0)}var o=this;o.chat={},o.chatActive=!1,o.replyMessage="",e.request("quickPanel.contacts@get",{},function(e){o.contacts=e.data}),o.toggleChat=n,o.reply=a}e.$inject=["msApi","$timeout"],angular.module("app.quick-panel").controller("ChatTabController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],n.user.changePassword({id:s.user.id},{oldPassword:s.oldPassword,newPassword:s.password}).$promise.then(function(){t.show(t.simple().textContent("Your password properly updated").position("top right").hideDelay(5e3)),o()}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.user.changePassword"}]})}function o(){e.hide()}var s=this;s.errors=[],s.user=a,s.savePassword=i,s.closeDialog=o}e.$inject=["$mdDialog","$mdToast","api","user"],angular.module("app.toolbar").controller("ChangePasswordController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h,v){function b(e){return h.cmHopper.getDialerContacts({limit:1}).$promise.then(function(t){if(t&&t.count){var n=t.rows[0],a=n.Contact,i=a.fullName||a.lastName||a.phone,o=a.phone,s=l.confirm().title("Preview Call").clickOutsideToClose(!0).textContent("Do you want to call the contact "+i+" ("+o+")?").ariaLabel("Lucky day").targetEvent(e).ok("Ok").cancel("Cancel");l.show(s).then(function(){return h.cmHopper.callDialerContact({id:n.id}).$promise.then(function(e){console.log("data",e)}).catch(function(e){console.error(e)})}).catch(function(e){return h.cmHopper.update({id:n.id,active:!1}).$promise.then(function(){m.success({title:"Contact rejected",msg:"Contact "+a.phone+" properly rejected"})}).catch(function(e){m.error({title:e.message,msg:e.message})})})}else m.info({title:"No available contacts",msg:"No contacts found"})}).catch(function(e){console.error(e)})}function f(e){i(e).toggle()}function E(e){I.userStatus=e}function y(e){return p.logout(e).then(function(){return g.disconnect(),n.go("app.login")}).catch(function(e){console.error(e)})}function A(e){if(I.languages.hasOwnProperty(e.code))I.selectedLanguage=e,c.put("motion.language",e.code),o.use(e.code),"app.callysquare.projects.edit"===n.current.name&&r.location.reload();else{s.show({template:'<md-toast id="language-message" layout="column" layout-align="center start"><div class="md-toast-content">Motion supports multiple translations through angular-translate module, but currently we do not support the selected language. If you want to help us, send us a message.</div></md-toast>',hideDelay:7e3,position:"top right",parent:"#content"})}}function C(){I.bodyEl.toggleClass("ms-navigation-horizontal-mobile-menu-active")}function x(){u.toggleFolded()}function T(e){for(var n=[],i=u.getFlatNavigation(),o=t.defer(),s=0;s<i.length;s++)i[s].uisref&&n.push(i[s]);return e&&(n=n.filter(function(t){if(angular.lowercase(t.title).search(angular.lowercase(e))>-1)return!0})),a(function(){o.resolve(n)},1e3),o.promise}function S(e){e.uisref&&(e.stateParams?n.go(e.state,e.stateParams):n.go(e.state))}function O(e){l.show({controller:"ChangePasswordController",controllerAs:"vm",templateUrl:"app/toolbar/changepassword/changepassword.html",parent:angular.element(d.body),targetEvent:e,clickOutsideToClose:!0,locals:{user:I.user}})}function w(){return p.getCurrentUser()&&p.hasRole("agent")}function R(e){if(e.id===I.user.id)if(e.online)_.merge(I.user,e),p.updateCurrentUser(I.user);else{var t=l.confirm().title(o.instant("TOOLBAR.WARNING")+"!").textContent(o.instant("TOOLBAR.SOMEONE_LOGGED_YOU_OUT")).ariaLabel(o.instant("TOOLBAR.WARNING")+"!").ok(o.instant("TOOLBAR.STAY_LOGGED")).cancel("Logout");l.show(t).then(function(){p.queueLogin()}).catch(function(e){y(!0)}).finally(function(){_.merge(I.user,e),p.updateCurrentUser(I.user)})}}var I=this;e.global={search:""},I.license=v,I.bodyEl=angular.element("body"),I.userStatusOptions=[{title:"Online",icon:"icon-checkbox-marked-circle",color:"#4CAF50"},{title:"Away",icon:"icon-clock",color:"#FFC107"},{title:"Do not Disturb",icon:"icon-minus-circle",color:"#F44336"},{title:"Invisible",icon:"icon-checkbox-blank-circle-outline",color:"#BDBDBD"},{title:"Offline",icon:"icon-checkbox-blank-circle-outline",color:"#616161"}],I.languages={en:{title:"English",translation:"TOOLBAR.ENGLISH",code:"en",flag:"us"},it:{title:"Italian",translation:"TOOLBAR.ITALIAN",code:"it",flag:"it"},fr:{title:"French",translation:"TOOLBAR.FRENCH",code:"fr",flag:"fr"},ko:{title:"Korean",translation:"TOOLBAR.KOREAN",code:"ko",flag:"ko"},es:{title:"Spanish",translation:"TOOLBAR.SPANISH",code:"es",flag:"es"},sv:{title:"Swedish",translation:"TOOLBAR.SWEDISH",code:"sv",flag:"sv"},ru:{title:"Russian",translation:"TOOLBAR.RUSSIAN",code:"ru",flag:"ru"},de:{title:"German",translation:"TOOLBAR.GERMAN",code:"de",flag:"de"},ja:{title:"Japanese",translation:"TOOLBAR.JAPANESE",code:"ja",flag:"ja"},"zh-CN":{title:"ChineseSimplified",translation:"TOOLBAR.CHINESESIMPLIFIED",code:"zh-CN",flag:"zh-CN"},"zh-TW":{title:"ChineseTraditional",translation:"TOOLBAR.CHINESETRADITIONAL",code:"zh-TW",flag:"zh-TW"},nl:{title:"Dutch",translation:"TOOLBAR.DUTCH",code:"nl",flag:"nl"},fi:{title:"Finnish",translation:"TOOLBAR.FINNISH",code:"fi",flag:"fi"},da:{title:"Danish",translation:"TOOLBAR.DANISH",code:"da",flag:"da"},"pt-PT":{title:"Portuguese",translation:"TOOLBAR.PORTUGUESE",code:"pt-PT",flag:"pt-PT"},no:{title:"Norwegian",translation:"TOOLBAR.NORWEGIAN",code:"no",flag:"no"},hi:{title:"Hindi",translation:"TOOLBAR.HINDI",code:"hi",flag:"hi"},tr:{title:"Turkish",translation:"TOOLBAR.TURKISH",code:"tr",flag:"tr"},fa:{title:"Persian",translation:"TOOLBAR.PERSIAN",code:"fa",flag:"fa"}},I.toggleSidenav=f,I.logout=y,I.changeLanguage=A,I.setUserStatus=E,I.toggleHorizontalMobileMenu=C,I.toggleMsNavigationFolded=x,I.search=T,I.searchResultClick=S,I.changePassword=O,I.isAgent=w,I.onUserUpdate=R,I.preview=b,g.connect(),g.on("user:update",I.onUserUpdate),function(){I.user=p.getCurrentUser(),I.userStatus=I.userStatusOptions[0];var e=c.get("motion.language");e&&I.languages.hasOwnProperty(e)?I.selectedLanguage=I.languages[e]:I.selectedLanguage=I.languages[o.preferredLanguage()]}()}e.$inject=["$rootScope","$q","$state","$timeout","$mdSidenav","$translate","$mdToast","$window","$mdDialog","$document","$cookies","toasty","msNavigationService","Auth","socket","api","license"],angular.module("app.toolbar").controller("ToolbarController",e)}();var urlParams=function(e){var t=new Object,n=e.lastIndexOf("?");if(n>0)for(var a=e.substring(n+1).split("&"),i=0;i<a.length;i++)(n=a[i].indexOf("="))>0&&(t[a[i].substring(0,n)]=a[i].substring(n+1));return t}(window.location.href),t0=new Date,MAX_REQUEST_SIZE=10485760,MAX_WIDTH=12e3,MAX_HEIGHT=12e3,EXPORT_URL="http://exp.draw.io/ImageExport2/export",SHARE_HOST="http://localhost:3000",SAVE_URL="api/square/projects/",VARIABLE_URL="/api/variables",STENCIL_PATH="/assets/plugins/square/stencils",SHAPES_PATH="/assets/plugins/square/shapes",IMAGE_PATH="/assets/plugins/square/images",STYLE_PATH="/assets/plugins/square/styles",CSS_PATH="/assets/plugins/square/styles",OPEN_FORM="api/square/projects/open",TEMPLATE_PATH="/assets/plugins/square/templates",RESOURCES_PATH="/assets/plugins/square/resources",RESOURCE_BASE=RESOURCES_PATH+"/grapheditor",tapAndHoldStartsConnection=!0,showConnectorImg=!0,mxLoadResources=!1,mxLanguages=["it","fr","ko","es","sv","ru","de","ja","zh-CN","zh-TW","nl","fi","da","pt-PT","no","hi","tr","fa"],mxLanguage="en",match=document.cookie.match(new RegExp("(^| )motion.language=([^;]+)"));match&&mxLanguages.includes(match[2])&&(mxLanguage=match[2]);var mxBasePath="assets/plugins/mxgraph",mxClient={VERSION:"2.0.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE"),IS_OP:0<=navigator.userAgent.indexOf("Opera/"),IS_OT:0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&0>navigator.userAgent.indexOf("Chrome/"),IS_GC:0<=navigator.userAgent.indexOf("Chrome/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||0<=navigator.userAgent.indexOf("Epiphany/")||0<=navigator.userAgent.indexOf("AppleWebKit/")||0<=navigator.userAgent.indexOf("Gecko/")||0<=navigator.userAgent.indexOf("Opera/"),NO_FO:0<=navigator.userAgent.indexOf("Firefox/1.")||0<=navigator.userAgent.indexOf("Iceweasel/1.")||0<=navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/1.")||0<=navigator.userAgent.indexOf("Camino/1.")||0<=navigator.userAgent.indexOf("Epiphany/2.")||0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("MSIE")||0<=navigator.userAgent.indexOf("Mozilla/2."),IS_VML:"MICROSOFT INTERNET EXPLORER"==navigator.appName.toUpperCase(),IS_MAC:0<navigator.userAgent.toUpperCase().indexOf("MACINTOSH"),IS_TOUCH:0<navigator.userAgent.toUpperCase().indexOf("IPAD")||0<navigator.userAgent.toUpperCase().indexOf("IPOD")||0<navigator.userAgent.toUpperCase().indexOf("IPHONE")||0<navigator.userAgent.toUpperCase().indexOf("ANDROID"),IS_LOCAL:0>document.location.href.indexOf("http://")&&0>document.location.href.indexOf("https://"),isBrowserSupported:function(){return mxClient.IS_VML||mxClient.IS_SVG},link:function(e,t,n){if(n=n||document,mxClient.IS_IE6)n.write('<link rel="'+e+'" href="'+t+'" charset="ISO-8859-1" type="text/css"/>');else{var a=n.createElement("link");a.setAttribute("rel",e),a.setAttribute("href",t),a.setAttribute("charset","ISO-8859-1"),a.setAttribute("type","text/css"),n.getElementsByTagName("head")[0].appendChild(a)}},include:function(e){document.write('<script src="'+e+'"><\/script>')},dispose:function(){for(var e=0;e<mxEvent.objects.length;e++)null!=mxEvent.objects[e].mxListenerList&&mxEvent.removeAllListeners(mxEvent.objects[e])}};if(mxClient.IS_OP&&mxClient.IS_OT?mxClient.CSS_PREFIX="O":mxClient.IS_SF||mxClient.IS_GC?mxClient.CSS_PREFIX="Webkit":mxClient.IS_MT?mxClient.CSS_PREFIX="Moz":mxClient.IS_IE&&9<=document.documentMode&&(mxClient.CSS_PREFIX="ms"),void 0===mxLoadResources&&(mxLoadResources=!0),"undefined"==typeof mxResourceExtension&&(mxResourceExtension=".txt"),"undefined"==typeof mxLoadStylesheets&&(mxLoadStylesheets=!0),void 0!==mxBasePath&&0<mxBasePath.length?("/"==mxBasePath.substring(mxBasePath.length-1)&&(mxBasePath=mxBasePath.substring(0,mxBasePath.length-1)),mxClient.basePath=mxBasePath):mxClient.basePath=".","undefined"!=typeof mxImageBasePath&&0<mxImageBasePath.length?("/"==mxImageBasePath.substring(mxImageBasePath.length-1)&&(mxImageBasePath=mxImageBasePath.substring(0,mxImageBasePath.length-1)),mxClient.imageBasePath=mxImageBasePath):mxClient.imageBasePath=mxClient.basePath+"/images",mxClient.language=void 0!==mxLanguage?mxLanguage:mxClient.IS_IE?navigator.userLanguage:navigator.language,mxClient.defaultLanguage="undefined"!=typeof mxDefaultLanguage?mxDefaultLanguage:"en",mxLoadStylesheets&&mxClient.link("stylesheet",mxClient.basePath+"/css/common.css"),void 0!==mxLanguages&&(mxClient.languages=mxLanguages),mxClient.IS_IE){if(9<=document.documentMode)mxClient.IS_VML=!1,mxClient.IS_SVG=!0;else{8==document.documentMode?(document.namespaces.add(mxClient.VML_PREFIX,"urn:schemas-microsoft-com:vml","#default#VML"),document.namespaces.add(mxClient.OFFICE_PREFIX,"urn:schemas-microsoft-com:office:office","#default#VML")):(document.namespaces.add(mxClient.VML_PREFIX,"urn:schemas-microsoft-com:vml"),document.namespaces.add(mxClient.OFFICE_PREFIX,"urn:schemas-microsoft-com:office:office"));var ss=document.createStyleSheet();ss.cssText="v\\:*{behavior:url(#default#VML)}o\\:*{behavior:url(#default#VML)}",mxLoadStylesheets&&mxClient.link("stylesheet",mxClient.basePath+"/css/explorer.css")}window.attachEvent("onunload",mxClient.dispose)}var mxLog={consoleName:"Console",TRACE:!1,DEBUG:!0,WARN:!0,buffer:"",init:function(){if(null==mxLog.window&&null!=document.body){var e=mxLog.consoleName+" - mxGraph "+mxClient.VERSION,t=document.createElement("table");t.setAttribute("width","100%"),t.setAttribute("height","100%");var n=document.createElement("tbody"),a=document.createElement("tr"),i=document.createElement("td");if(i.style.verticalAlign="top",mxLog.textarea=document.createElement("textarea"),mxLog.textarea.setAttribute("readOnly","true"),mxLog.textarea.style.height="100%",mxLog.textarea.style.resize="none",mxLog.textarea.value=mxLog.buffer,mxLog.textarea.style.width=mxClient.IS_NS&&"BackCompat"!=document.compatMode?"99%":"100%",i.appendChild(mxLog.textarea),a.appendChild(i),n.appendChild(a),a=document.createElement("tr"),mxLog.td=document.createElement("td"),mxLog.td.style.verticalAlign="top",mxLog.td.setAttribute("height","30px"),a.appendChild(mxLog.td),n.appendChild(a),t.appendChild(n),mxLog.addButton("Info",function(e){mxLog.info()}),mxLog.addButton("DOM",function(e){e=mxUtils.getInnerHtml(document.body),mxLog.debug(e)}),mxLog.addButton("Trace",function(e){mxLog.TRACE=!mxLog.TRACE,mxLog.TRACE?mxLog.debug("Tracing enabled"):mxLog.debug("Tracing disabled")}),mxLog.addButton("Copy",function(e){try{mxUtils.copy(mxLog.textarea.value)}catch(e){mxUtils.alert(e)}}),mxLog.addButton("Show",function(e){try{mxUtils.popup(mxLog.textarea.value)}catch(e){mxUtils.alert(e)}}),mxLog.addButton("Clear",function(e){mxLog.textarea.value=""}),a=n=0,"number"==typeof window.innerWidth?(n=window.innerHeight,a=window.innerWidth):(n=document.documentElement.clientHeight||document.body.clientHeight,a=document.body.clientWidth),mxLog.window=new mxWindow(e,t,Math.max(0,a-320),Math.max(0,n-210),300,160),mxLog.window.setMaximizable(!0),mxLog.window.setScrollable(!1),mxLog.window.setResizable(!0),mxLog.window.setClosable(!0),mxLog.window.destroyOnClose=!1,(mxClient.IS_NS||mxClient.IS_IE)&&!mxClient.IS_GC&&!mxClient.IS_SF&&"BackCompat"!=document.compatMode){var o=mxLog.window.getElement(),e=function(e,t){mxLog.textarea.style.height=Math.max(0,o.offsetHeight-70)+"px"};mxLog.window.addListener(mxEvent.RESIZE_END,e),mxLog.window.addListener(mxEvent.MAXIMIZE,e),mxLog.window.addListener(mxEvent.NORMALIZE,e),mxLog.textarea.style.height="92px"}}},info:function(){mxLog.writeln(mxUtils.toString(navigator))},addButton:function(e,t){var n=document.createElement("button");mxUtils.write(n,e),mxEvent.addListener(n,"click",t),mxLog.td.appendChild(n)},isVisible:function(){return null!=mxLog.window&&mxLog.window.isVisible()},show:function(){mxLog.setVisible(!0)},setVisible:function(e){null==mxLog.window&&mxLog.init(),null!=mxLog.window&&mxLog.window.setVisible(e)},enter:function(e){if(mxLog.TRACE)return mxLog.writeln("Entering "+e),(new Date).getTime()},leave:function(e,t){if(mxLog.TRACE){var n=0!=t?" ("+((new Date).getTime()-t)+" ms)":"";mxLog.writeln("Leaving "+e+n)}},debug:function(){mxLog.DEBUG&&mxLog.writeln.apply(this,arguments)},warn:function(){mxLog.WARN&&mxLog.writeln.apply(this,arguments)},write:function(){for(var e="",t=0;t<arguments.length;t++)e+=arguments[t],t<arguments.length-1&&(e+=" ");null!=mxLog.textarea?(mxLog.textarea.value+=e,0<=navigator.userAgent.indexOf("Presto/2.5")&&(mxLog.textarea.style.visibility="hidden",mxLog.textarea.style.visibility="visible"),mxLog.textarea.scrollTop=mxLog.textarea.scrollHeight):mxLog.buffer+=e},writeln:function(){for(var e="",t=0;t<arguments.length;t++)e+=arguments[t],t<arguments.length-1&&(e+=" ");mxLog.write(e+"\n")}},mxObjectIdentity={FIELD_NAME:"mxObjectId",counter:0,get:function(e){if("object"==typeof e&&null==e[mxObjectIdentity.FIELD_NAME]){var t=mxUtils.getFunctionName(e.constructor);e[mxObjectIdentity.FIELD_NAME]=t+"#"+mxObjectIdentity.counter++}return e[mxObjectIdentity.FIELD_NAME]},clear:function(e){"object"==typeof e&&delete e[mxObjectIdentity.FIELD_NAME]}};mxDictionary.prototype.map=null,mxDictionary.prototype.clear=function(){this.map={}},mxDictionary.prototype.get=function(e){return e=mxObjectIdentity.get(e),this.map[e]},mxDictionary.prototype.put=function(e,t){var n=mxObjectIdentity.get(e),a=this.map[n];return this.map[n]=t,a},mxDictionary.prototype.remove=function(e){e=mxObjectIdentity.get(e);var t=this.map[e];return delete this.map[e],t},mxDictionary.prototype.getKeys=function(){var e,t=[];for(e in this.map)t.push(e);return t},mxDictionary.prototype.getValues=function(){var e,t=[];for(e in this.map)t.push(this.map[e]);return t},mxDictionary.prototype.visit=function(e){for(var t in this.map)e(t,this.map[t])};var mxResources={resources:[],extension:mxResourceExtension,resourcesEncoded:!1,loadDefaultBundle:!0,loadSpecialBundle:!0,isLanguageSupported:function(e){return null==mxClient.languages||0<=mxUtils.indexOf(mxClient.languages,e)},getDefaultBundle:function(e,t){return mxResources.loadDefaultBundle||!mxResources.isLanguageSupported(t)?e+mxResources.extension:null},getSpecialBundle:function(e,t){if(null==mxClient.languages||!this.isLanguageSupported(t)){var n=t.indexOf("-");0<n&&(t=t.substring(0,n))}return mxResources.loadSpecialBundle&&mxResources.isLanguageSupported(t)&&t!=mxClient.defaultLanguage?e+"_"+t+mxResources.extension:null},add:function(e,t){if((t=null!=t?t:mxClient.language.toLowerCase())!=mxConstants.NONE){var n=mxResources.getDefaultBundle(e,t);if(null!=n)try{var a=mxUtils.load(n);a.isReady()&&mxResources.parse(a.getText())}catch(e){}if(null!=(n=mxResources.getSpecialBundle(e,t)))try{(a=mxUtils.load(n)).isReady()&&mxResources.parse(a.getText())}catch(e){}}},parse:function(e){if(null!=e){e=e.split("\n");for(var t=0;t<e.length;t++)if("#"!=e[t].charAt(0)){var n=e[t].indexOf("=");if(0<n){var a=e[t].substring(0,n),i=e[t].length;13==e[t].charCodeAt(i-1)&&i--,n=e[t].substring(n+1,i),this.resourcesEncoded?(n=n.replace(/\\(?=u[a-fA-F\d]{4})/g,"%"),mxResources.resources[a]=unescape(n)):mxResources.resources[a]=n}}}},get:function(e,t,n){if(null==(e=mxResources.resources[e])&&(e=n),null!=e&&null!=t){n=[];for(var a=null,i=0;i<e.length;i++){var o=e.charAt(i);"{"==o?a="":null!=a&&"}"==o?(0<=(a=parseInt(a)-1)&&a<t.length&&n.push(t[a]),a=null):null!=a?a+=o:n.push(o)}e=n.join("")}return e}};mxPoint.prototype.x=null,mxPoint.prototype.y=null,mxPoint.prototype.equals=function(e){return e.x==this.x&&e.y==this.y},mxPoint.prototype.clone=function(){return mxUtils.clone(this)},mxRectangle.prototype=new mxPoint,mxRectangle.prototype.constructor=mxRectangle,mxRectangle.prototype.width=null,mxRectangle.prototype.height=null,mxRectangle.prototype.setRect=function(e,t,n,a){this.x=e,this.y=t,this.width=n,this.height=a},mxRectangle.prototype.getCenterX=function(){return this.x+this.width/2},mxRectangle.prototype.getCenterY=function(){return this.y+this.height/2},mxRectangle.prototype.add=function(e){if(null!=e){var t=Math.min(this.x,e.x),n=Math.min(this.y,e.y),a=Math.max(this.x+this.width,e.x+e.width);e=Math.max(this.y+this.height,e.y+e.height),this.x=t,this.y=n,this.width=a-t,this.height=e-n}},mxRectangle.prototype.grow=function(e){this.x-=e,this.y-=e,this.width+=2*e,this.height+=2*e},mxRectangle.prototype.getPoint=function(){return new mxPoint(this.x,this.y)},mxRectangle.prototype.equals=function(e){return e.x==this.x&&e.y==this.y&&e.width==this.width&&e.height==this.height};var mxEffects={animateChanges:function(e,t,n){var a=0,i=function(){for(var s=!1,r=0;r<t.length;r++){var l=t[r];if(l instanceof mxGeometryChange||l instanceof mxTerminalChange||l instanceof mxValueChange||l instanceof mxChildChange||l instanceof mxStyleChange){var d=e.getView().getState(l.cell||l.child,!1);if(null!=d)if(s=!0,l.constructor!=mxGeometryChange||e.model.isEdge(l.cell))mxUtils.setOpacity(d.shape.node,100*a/10);else{var c=e.getView().scale,m=(l.geometry.x-l.previous.x)*c,u=(l.geometry.y-l.previous.y)*c,p=(l.geometry.width-l.previous.width)*c,c=(l.geometry.height-l.previous.height)*c;0==a?(d.x-=m,d.y-=u,d.width-=p,d.height-=c):(d.x+=m/10,d.y+=u/10,d.width+=p/10,d.height+=c/10),e.cellRenderer.redraw(d),mxEffects.cascadeOpacity(e,l.cell,100*a/10)}}}10>a&&s?(a++,window.setTimeout(i,o)):null!=n&&n()},o=30;i()},cascadeOpacity:function(e,t,n){for(var a=e.model.getChildCount(t),i=0;i<a;i++){var o=e.model.getChildAt(t,i),s=e.getView().getState(o);null!=s&&(mxUtils.setOpacity(s.shape.node,n),mxEffects.cascadeOpacity(e,o,n))}if(null!=(t=e.model.getEdges(t)))for(i=0;i<t.length;i++)null!=(a=e.getView().getState(t[i]))&&mxUtils.setOpacity(a.shape.node,n)},fadeOut:function(e,t,n,a,i,o){a=a||40,i=i||30;var s=t||100;if(mxUtils.setOpacity(e,s),o||null==o){var r=function(){s=Math.max(s-a,0),mxUtils.setOpacity(e,s),0<s?window.setTimeout(r,i):(e.style.visibility="hidden",n&&e.parentNode&&e.parentNode.removeChild(e))};window.setTimeout(r,i)}else e.style.visibility="hidden",n&&e.parentNode&&e.parentNode.removeChild(e)}},mxUtils={errorResource:"none"!=mxClient.language?"error":"",closeResource:"none"!=mxClient.language?"close":"",errorImage:mxClient.imageBasePath+"/error.gif",removeCursors:function(e){if(null!=e.style&&(e.style.cursor=""),null!=(e=e.childNodes))for(var t=e.length,n=0;n<t;n+=1)mxUtils.removeCursors(e[n])},getCurrentStyle:function(){return mxClient.IS_IE?function(e){return null!=e?e.currentStyle:null}:function(e){return null!=e?window.getComputedStyle(e,""):null}}(),hasScrollbars:function(e){return null!=(e=mxUtils.getCurrentStyle(e))&&("scroll"==e.overflow||"auto"==e.overflow)},bind:function(e,t){return function(){return t.apply(e,arguments)}},eval:function(a){var b=null;if(0<=a.indexOf("function"))try{eval("var _mxJavaScriptExpression="+a),b=_mxJavaScriptExpression,_mxJavaScriptExpression=null}catch(e){mxLog.warn(e.message+" while evaluating "+a)}else try{b=eval(a)}catch(e){mxLog.warn(e.message+" while evaluating "+a)}return b},findNode:function(e,t,n){var a=e.getAttribute(t);if(null!=a&&a==n)return e;for(e=e.firstChild;null!=e;){if(null!=(a=mxUtils.findNode(e,t,n)))return a;e=e.nextSibling}return null},findNodeByAttribute:function(){return 9<=document.documentMode?function(e,t,n){var a=null;if(null!=e)if(e.nodeType==mxConstants.NODETYPE_ELEMENT&&e.getAttribute(t)==n)a=e;else for(e=e.firstChild;null!=e&&null==a;)a=mxUtils.findNodeByAttribute(e,t,n),e=e.nextSibling;return a}:mxClient.IS_IE?function(e,t,n){return null==e?null:e.ownerDocument.selectSingleNode("//*[@"+t+"='"+n+"']")}:function(e,t,n){return null==e?null:e.ownerDocument.evaluate("//*[@"+t+"='"+n+"']",e.ownerDocument,null,XPathResult.ANY_TYPE,null).iterateNext()}}(),getFunctionName:function(e){n=null;if(null!=e)if(null!=e.name)n=e.name;else{for(e=e.toString(),n=9;" "==e.charAt(n);)n++;var t=e.indexOf("(",n),n=e.substring(n,t)}return n},indexOf:function(e,t){if(null!=e&&null!=t)for(var n=0;n<e.length;n++)if(e[n]==t)return n;return-1},remove:function(e,t){var n=null;if("object"==typeof t)for(var a=mxUtils.indexOf(t,e);0<=a;)t.splice(a,1),n=e,a=mxUtils.indexOf(t,e);for(var i in t)t[i]==e&&(delete t[i],n=e);return n},isNode:function(e,t,n,a){return!(null==e||isNaN(e.nodeType)||null!=t&&e.nodeName.toLowerCase()!=t.toLowerCase())&&(null==n||e.getAttribute(n)==a)},getChildNodes:function(e,t){t=t||mxConstants.NODETYPE_ELEMENT;for(var n=[],a=e.firstChild;null!=a;)a.nodeType==t&&n.push(a),a=a.nextSibling;return n},createXmlDocument:function(){var e=null;return document.implementation&&document.implementation.createDocument?e=document.implementation.createDocument("","",null):window.ActiveXObject&&(e=new ActiveXObject("Microsoft.XMLDOM")),e},parseXml:function(){return mxClient.IS_IE&&(void 0===document.documentMode||9>document.documentMode)?function(e){var t=mxUtils.createXmlDocument();return t.async="false",t.loadXML(e),t}:function(e){return(new DOMParser).parseFromString(e,"text/xml")}}(),clearSelection:function(){return document.selection?function(){document.selection.empty()}:window.getSelection?function(){window.getSelection().removeAllRanges()}:void 0}(),getPrettyXml:function(e,t,n){var a=[];if(null!=e)if(t=t||"  ",n=n||"",e.nodeType==mxConstants.NODETYPE_TEXT)a.push(e.nodeValue);else{a.push(n+"<"+e.nodeName);var i=e.attributes;if(null!=i)for(var o=0;o<i.length;o++){var s=mxUtils.htmlEntities(i[o].nodeValue);a.push(" "+i[o].nodeName+'="'+s+'"')}if(null!=(i=e.firstChild)){for(a.push(">\n");null!=i;)a.push(mxUtils.getPrettyXml(i,t,n+t)),i=i.nextSibling;a.push(n+"</"+e.nodeName+">\n")}else a.push("/>\n")}return a.join("")},removeWhitespace:function(e,t){for(var n=t?e.previousSibling:e.nextSibling;null!=n&&n.nodeType==mxConstants.NODETYPE_TEXT;){var a=t?n.previousSibling:n.nextSibling,i=mxUtils.getTextContent(n);0==mxUtils.trim(i).length&&n.parentNode.removeChild(n),n=a}},htmlEntities:function(e,t){return e=(e||"").replace(/&/g,"&amp;"),e=e.replace(/"/g,"&quot;"),e=e.replace(/\'/g,"&#39;"),e=e.replace(/</g,"&lt;"),e=e.replace(/>/g,"&gt;"),(null==t||t)&&(e=e.replace(/\n/g,"&#xa;")),e},isVml:function(e){return null!=e&&"urn:schemas-microsoft-com:vml"==e.tagUrn},getXml:function(e,t){var n="";return null!=e&&(n=e.xml,n=null==n?e.innerHTML?e.innerHTML:(new XMLSerializer).serializeToString(e):n.replace(/\r\n\t[\t]*/g,"").replace(/>\r\n/g,">").replace(/\r\n/g,"\n")),n=n.replace(/\n/g,t||"&#xa;")},getTextContent:function(e){var t="";return null!=e&&(null!=e.firstChild&&(e=e.firstChild),t=e.nodeValue||""),t},getInnerHtml:function(){return mxClient.IS_IE?function(e){return null!=e?e.innerHTML:""}:function(e){return null!=e?(new XMLSerializer).serializeToString(e):""}}(),getOuterHtml:function(){return mxClient.IS_IE?function(e){if(null!=e){if(null!=e.outerHTML)return e.outerHTML;var t=[];t.push("<"+e.nodeName);var n=e.attributes;if(null!=n)for(var a=0;a<n.length;a++){var i=n[a].nodeValue;null!=i&&0<i.length&&(t.push(" "),t.push(n[a].nodeName),t.push('="'),t.push(i),t.push('"'))}return 0==e.innerHTML.length?t.push("/>"):(t.push(">"),t.push(e.innerHTML),t.push("</"+e.nodeName+">")),t.join("")}return""}:function(e){return null!=e?(new XMLSerializer).serializeToString(e):""}}(),write:function(e,t){var n=e.ownerDocument.createTextNode(t);return null!=e&&e.appendChild(n),n},writeln:function(e,t){var n=e.ownerDocument.createTextNode(t);return null!=e&&(e.appendChild(n),e.appendChild(document.createElement("br"))),n},br:function(e,t){t=t||1;for(var n=null,a=0;a<t;a++)null!=e&&(n=e.ownerDocument.createElement("br"),e.appendChild(n));return n},button:function(e,t,n){return n=null!=n?n:document,n=n.createElement("button"),mxUtils.write(n,e),mxEvent.addListener(n,"click",function(e){t(e)}),n},para:function(e,t){var n=document.createElement("p");return mxUtils.write(n,t),null!=e&&e.appendChild(n),n},addTransparentBackgroundFilter:function(e){e.style.filter+="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+mxClient.imageBasePath+"/transparent.gif', sizingMethod='scale')"},linkAction:function(e,t,n,a,i){return mxUtils.link(e,t,function(){n.execute(a)},i)},linkInvoke:function(e,t,n,a,i,o){return mxUtils.link(e,t,function(){n[a](i)},o)},link:function(e,t,n,a){var i=document.createElement("span");return i.style.color="blue",i.style.textDecoration="underline",i.style.cursor="pointer",null!=a&&(i.style.paddingLeft=a+"px"),mxEvent.addListener(i,"click",n),mxUtils.write(i,t),null!=e&&e.appendChild(i),i},fit:function(e){var t=parseInt(e.offsetLeft),n=parseInt(e.offsetWidth),a=document.body,i=document.documentElement,o=(a.scrollLeft||i.scrollLeft)+(a.clientWidth||i.clientWidth);t+n>o&&(e.style.left=Math.max(a.scrollLeft||i.scrollLeft,o-n)+"px"),(t=parseInt(e.offsetTop))+(n=parseInt(e.offsetHeight))>(o=(a.scrollTop||i.scrollTop)+Math.max(a.clientHeight||0,i.clientHeight))&&(e.style.top=Math.max(a.scrollTop||i.scrollTop,o-n)+"px")},open:function(e){if(mxClient.IS_NS){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect")}catch(e){return mxUtils.alert("Permission to read file denied."),""}var t=Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);return t.initWithPath(e),t.exists()?((e=Components.classes["@mozilla.org/network/file-input-stream;1"].createInstance(Components.interfaces.nsIFileInputStream)).init(t,1,4,null),(t=Components.classes["@mozilla.org/scriptableinputstream;1"].createInstance(Components.interfaces.nsIScriptableInputStream)).init(e),t.read(t.available())):(mxUtils.alert("File not found."),"")}return t=new ActiveXObject("Scripting.FileSystemObject").OpenTextFile(e,1),e=t.readAll(),t.close(),e},save:function(e,t){if(mxClient.IS_NS){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect")}catch(e){return void mxUtils.alert("Permission to write file denied.")}var n=Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);n.initWithPath(e),n.exists()||n.create(0,420);var a=Components.classes["@mozilla.org/network/file-output-stream;1"].createInstance(Components.interfaces.nsIFileOutputStream);a.init(n,34,4,null),a.write(t,t.length),a.flush(),a.close()}else(n=new ActiveXObject("Scripting.FileSystemObject").CreateTextFile(e,!0)).Write(t),n.Close()},saveAs:function(e){var t=document.createElement("iframe");t.setAttribute("src",""),t.style.visibility="hidden",document.body.appendChild(t);try{if(mxClient.IS_NS){var n=t.contentDocument;n.open(),n.write(e),n.close();try{netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"),t.focus(),saveDocument(n)}catch(e){mxUtils.alert("Permission to save document denied.")}}else(n=t.contentWindow.document).write(e),n.execCommand("SaveAs",!1,document.location)}finally{document.body.removeChild(t)}},copy:function(e){if(window.clipboardData)window.clipboardData.setData("Text",e);else{netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");var t=Components.classes["@mozilla.org/widget/clipboard;1"].createInstance(Components.interfaces.nsIClipboard);if(t){var n=Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);if(n){n.addDataFlavor("text/unicode");var a=Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);a.data=e,n.setTransferData("text/unicode",a,2*e.length),t.setData(n,null,Components.interfaces.nsIClipboard.kGlobalClipboard)}}}},load:function(e){return(e=new mxXmlRequest(e,null,"GET",!1)).send(),e},get:function(e,t,n){return new mxXmlRequest(e,null,"GET").send(t,n)},post:function(e,t,n,a){return new mxXmlRequest(e,t).send(n,a)},submit:function(e,t,n,a){return new mxXmlRequest(e,t).simulate(n,a)},loadInto:function(e,t,n){mxClient.IS_IE?t.onreadystatechange=function(){4==t.readyState&&n()}:t.addEventListener("load",n,!1),t.load(e)},getValue:function(e,t,n){return null==(e=null!=e?e[t]:null)&&(e=n),e},getNumber:function(e,t,n){return null==(e=null!=e?e[t]:null)&&(e=n||0),Number(e)},getColor:function(e,t,n){return e=null!=e?e[t]:null,null==e?e=n:e==mxConstants.NONE&&(e=null),e},clone:function(e,t,n){n=null!=n&&n;i=null;if(null!=e&&"function"==typeof e.constructor){var a,i=new e.constructor;for(a in e)a!=mxObjectIdentity.FIELD_NAME&&(null==t||0>mxUtils.indexOf(t,a))&&(i[a]=n||"object"!=typeof e[a]?e[a]:mxUtils.clone(e[a]))}return i},equalPoints:function(e,t){if(null==e&&null!=t||null!=e&&null==t||null!=e&&null!=t&&e.length!=t.length)return!1;if(null!=e&&null!=t)for(var n=0;n<e.length;n++)if(e[n]==t[n]||null!=e[n]&&!e[n].equals(t[n]))return!1;return!0},equalEntries:function(e,t){if(null==e&&null!=t||null!=e&&null==t||null!=e&&null!=t&&e.length!=t.length)return!1;if(null!=e&&null!=t)for(var n in e)if(e[n]!=t[n])return!1;return!0},extend:function(e,t){var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e},toString:function(e){var t,n="";for(t in e)try{if(null==e[t])n+=t+" = [null]\n";else if("function"==typeof e[t])n+=t+" => [Function]\n";else if("object"==typeof e[t])var a=mxUtils.getFunctionName(e[t].constructor),n=n+(t+" => [")+a+"]\n";else n+=t+" = "+e[t]+"\n"}catch(e){n+=t+"="+e.message}return n},toRadians:function(e){return Math.PI*e/180},arcToCurves:function(e,t,n,a,i,o,s,r,l){if(r-=e,l-=t,0===n||0===a)return b;n=Math.abs(n),a=Math.abs(a);var d=-r/2,c=-l/2,m=Math.cos(i*Math.PI/180);i=m*d+(b=Math.sin(i*Math.PI/180))*c;d=-1*b*d+m*c;1<(v=(c=i*i)/(h=n*n)+(g=d*d)/(E=a*a))?(n*=Math.sqrt(v),a*=Math.sqrt(v),o=0):(v=1,o===s&&(v=-1),o=v*Math.sqrt((h*E-h*g-E*c)/(h*g+E*c))),r=m*(c=o*n*d/a)-b*(g=-1*o*a*i/n)+r/2,l=b*c+m*g+l/2,o=0<=(h=Math.atan2((d-g)/a,(i-c)/n)-Math.atan2(0,1))?h:2*Math.PI+h,i=0<=(h=Math.atan2((-d-g)/a,(-i-c)/n)-Math.atan2((d-g)/a,(i-c)/n))?h:2*Math.PI+h,0==s&&0<i?i-=2*Math.PI:0!=s&&0>i&&(i+=2*Math.PI),s=2*i/Math.PI,i/=s=Math.ceil(0>s?-1*s:s),d=8/3*Math.sin(i/4)*Math.sin(i/4)/Math.sin(i/2),c=m*n,m*=a,n*=b,a*=b;for(var u=Math.cos(o),p=Math.sin(o),g=-d*(c*p+a*u),h=-d*(n*p-m*u),v=E=0,b=[],f=0;f<s;++f){o+=i;var E=c*(u=Math.cos(o))-a*(p=Math.sin(o))+r,v=n*u+m*p+l,y=-d*(c*p+a*u),u=-d*(n*p-m*u);b[p=6*f]=Number(g+e),b[p+1]=Number(h+t),b[p+2]=Number(E-y+e),b[p+3]=Number(v-u+t),b[p+4]=Number(E+e),b[p+5]=Number(v+t),g=E+y,h=v+u}return b},getBoundingBox:function(e,t){a=null;if(null!=e&&null!=t&&0!=t){var n=mxUtils.toRadians(t),a=Math.cos(n),i=Math.sin(n),o=new mxPoint(e.x+e.width/2,e.y+e.height/2),s=new mxPoint(e.x,e.y),r=new mxPoint((n=new mxPoint(e.x+e.width,e.y)).x,e.y+e.height),l=new mxPoint(e.x,r.y),s=mxUtils.getRotatedPoint(s,a,i,o),n=mxUtils.getRotatedPoint(n,a,i,o),r=mxUtils.getRotatedPoint(r,a,i,o),l=mxUtils.getRotatedPoint(l,a,i,o);(a=new mxRectangle(s.x,s.y,0,0)).add(new mxRectangle(n.x,n.y,0,0)),a.add(new mxRectangle(r.x,r.y,0,0)),a.add(new mxRectangle(l.x,l.y,0,0))}return a},getRotatedPoint:function(e,t,n,a){a=null!=a?a:new mxPoint;var i=e.x-a.x;return e=e.y-a.y,new mxPoint(i*t-e*n+a.x,e*t+i*n+a.y)},getPortConstraints:function(e,t,n,a){return null==(e=mxUtils.getValue(e.style,mxConstants.STYLE_PORT_CONSTRAINT,null))?a:(a=e.toString(),e=mxConstants.DIRECTION_MASK_NONE,0<=a.indexOf(mxConstants.DIRECTION_NORTH)&&(e|=mxConstants.DIRECTION_MASK_NORTH),0<=a.indexOf(mxConstants.DIRECTION_WEST)&&(e|=mxConstants.DIRECTION_MASK_WEST),0<=a.indexOf(mxConstants.DIRECTION_SOUTH)&&(e|=mxConstants.DIRECTION_MASK_SOUTH),0<=a.indexOf(mxConstants.DIRECTION_EAST)&&(e|=mxConstants.DIRECTION_MASK_EAST),e)},reversePortConstraints:function(e){var t=0,t=(t=(t=(e&mxConstants.DIRECTION_MASK_WEST)<<3)|(e&mxConstants.DIRECTION_MASK_NORTH)<<1)|(e&mxConstants.DIRECTION_MASK_SOUTH)>>1;return t|=(e&mxConstants.DIRECTION_MASK_EAST)>>3},findNearestSegment:function(e,t,n){var a=-1;if(0<e.absolutePoints.length)for(var i=e.absolutePoints[0],o=null,s=1;s<e.absolutePoints.length;s++){var r=e.absolutePoints[s],i=mxUtils.ptSegDistSq(i.x,i.y,r.x,r.y,t,n);(null==o||i<o)&&(o=i,a=s-1),i=r}return a},rectangleIntersectsSegment:function(e,t,n){var a=e.y,i=e.x,o=a+e.height,s=i+e.width;e=t.x;var r=n.x;if(t.x>n.x&&(e=n.x,r=t.x),r>s&&(r=s),e<i&&(e=i),e>r)return!1;var i=t.y,s=n.y,l=n.x-t.x;return 1e-7<Math.abs(l)&&(n=(n.y-t.y)/l,t=t.y-n*t.x,i=n*e+t,s=n*r+t),i>s&&(t=s,s=i,i=t),s>o&&(s=o),i<a&&(i=a),!(i>s)},contains:function(e,t,n){return e.x<=t&&e.x+e.width>=t&&e.y<=n&&e.y+e.height>=n},intersects:function(e,t){var n=e.width,a=e.height,i=t.width,o=t.height;if(0>=i||0>=o||0>=n||0>=a)return!1;var s=e.x,r=e.y,l=t.x,d=t.y,o=o+d,n=n+s,a=a+r;return((i=i+l)<l||i>s)&&(o<d||o>r)&&(n<s||n>l)&&(a<r||a>d)},intersectsHotspot:function(e,t,n,a,i,o){if(a=null!=a?a:1,i=null!=i?i:0,o=null!=o?o:0,0<a){var s=e.getCenterX(),r=e.getCenterY(),l=e.width,d=e.height,c=mxUtils.getValue(e.style,mxConstants.STYLE_STARTSIZE)*e.view.scale;return 0<c&&(mxUtils.getValue(e.style,mxConstants.STYLE_HORIZONTAL,!0)?(r=e.y+c/2,d=c):(s=e.x+c/2,l=c)),l=Math.max(i,l*a),d=Math.max(i,d*a),0<o&&(l=Math.min(l,o),d=Math.min(d,o)),a=new mxRectangle(s-l/2,r-d/2,l,d),0!=(s=mxUtils.toRadians(mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION)||0))&&(i=Math.cos(-s),o=Math.sin(-s),s=new mxPoint(e.getCenterX(),e.getCenterY()),e=mxUtils.getRotatedPoint(new mxPoint(t,n),i,o,s),t=e.x,n=e.y),mxUtils.contains(a,t,n)}return!0},getOffset:function(e,t){var n=0,a=0;if(null!=t&&t)var i=document.body,o=document.documentElement,n=n+(i.scrollLeft||o.scrollLeft),a=a+(i.scrollTop||o.scrollTop);for(;e.offsetParent;)n+=e.offsetLeft,a+=e.offsetTop,e=e.offsetParent;return new mxPoint(n,a)},getScrollOrigin:function(e){for(var t=document.body,n=document.documentElement,a=new mxPoint(t.scrollLeft||n.scrollLeft,t.scrollTop||n.scrollTop);null!=e&&e!=t&&e!=n;)!isNaN(e.scrollLeft)&&!isNaN(e.scrollTop)&&(a.x+=e.scrollLeft,a.y+=e.scrollTop),e=e.parentNode;return a},convertPoint:function(e,t,n){var a=mxUtils.getScrollOrigin(e);return e=mxUtils.getOffset(e),e.x-=a.x,e.y-=a.y,new mxPoint(t-e.x,n-e.y)},ltrim:function(e,t){return e.replace(RegExp("^["+(t||"\\s")+"]+","g"),"")},rtrim:function(e,t){return e.replace(RegExp("["+(t||"\\s")+"]+$","g"),"")},trim:function(e,t){return mxUtils.ltrim(mxUtils.rtrim(e,t),t)},isNumeric:function(e){return null!=e&&(null==e.length||0<e.length&&0>e.indexOf("0x")&&0>e.indexOf("0X"))&&!isNaN(e)},mod:function(e,t){return(e%t+t)%t},intersection:function(e,t,n,a,i,o,s,r){var l=(r-o)*(n-e)-(s-i)*(a-t);return s=((s-i)*(t-o)-(r-o)*(e-i))/l,i=((n-e)*(t-o)-(a-t)*(e-i))/l,0<=s&&1>=s&&0<=i&&1>=i?new mxPoint(e+s*(n-e),t+s*(a-t)):null},ptSegDistSq:function(e,t,n,a,i,o){return n-=e,a-=t,i-=e,o-=t,0>=i*n+o*a?n=0:(i=n-i,o=a-o,e=i*n+o*a,n=0>=e?0:e*e/(n*n+a*a)),0>(i=i*i+o*o-n)&&(i=0),i},relativeCcw:function(e,t,n,a,i,o){return n-=e,a-=t,i-=e,o-=t,0==(e=i*a-o*n)&&0<(e=i*n+o*a)&&0>(e=(i-n)*n+(o-a)*a)&&(e=0),0>e?-1:0<e?1:0},animateChanges:function(e,t){mxEffects.animateChanges.apply(this,arguments)},cascadeOpacity:function(e,t,n){mxEffects.cascadeOpacity.apply(this,arguments)},fadeOut:function(e,t,n,a,i,o){mxEffects.fadeOut.apply(this,arguments)},setOpacity:function(e,t){mxUtils.isVml(e)?e.style.filter=100<=t?null:"alpha(opacity="+t/5+")":mxClient.IS_IE&&(void 0===document.documentMode||9>document.documentMode)?e.style.filter=100<=t?null:"alpha(opacity="+t+")":e.style.opacity=t/100},createImage:function(e){var t=null;return mxClient.IS_IE6&&"CSS1Compat"!=document.compatMode?((t=document.createElement(mxClient.VML_PREFIX+":image")).setAttribute("src",e),t.style.borderStyle="none"):((t=document.createElement("img")).setAttribute("src",e),t.setAttribute("border","0")),t},sortCells:function(e,t){t=null==t||t;var n=new mxDictionary;return e.sort(function(e,a){var i=n.get(e);null==i&&(i=mxCellPath.create(e).split(mxCellPath.PATH_SEPARATOR),n.put(e,i));var o=n.get(a);return null==o&&(o=mxCellPath.create(a).split(mxCellPath.PATH_SEPARATOR),n.put(a,o)),i=mxCellPath.compare(i,o),0==i?0:0<i==t?1:-1}),e},getStylename:function(e){return null!=e&&0>(e=e.split(";")[0]).indexOf("=")?e:""},getStylenames:function(e){var t=[];if(null!=e){e=e.split(";");for(var n=0;n<e.length;n++)0>e[n].indexOf("=")&&t.push(e[n])}return t},indexOfStylename:function(e,t){if(null!=e&&null!=t)for(var n=e.split(";"),a=0,i=0;i<n.length;i++){if(n[i]==t)return a;a+=n[i].length+1}return-1},addStylename:function(e,t){return 0>mxUtils.indexOfStylename(e,t)&&(null==e?e="":0<e.length&&";"!=e.charAt(e.length-1)&&(e+=";"),e+=t),e},removeStylename:function(e,t){var n=[];if(null!=e)for(var a=e.split(";"),i=0;i<a.length;i++)a[i]!=t&&n.push(a[i]);return n.join(";")},removeAllStylenames:function(e){var t=[];if(null!=e){e=e.split(";");for(var n=0;n<e.length;n++)0<=e[n].indexOf("=")&&t.push(e[n])}return t.join(";")},setCellStyles:function(e,t,n,a){if(null!=t&&0<t.length){e.beginUpdate();try{for(var i=0;i<t.length;i++)if(null!=t[i]){var o=mxUtils.setStyle(e.getStyle(t[i]),n,a);e.setStyle(t[i],o)}}finally{e.endUpdate()}}},setStyle:function(e,t,n){var a=null!=n&&(void 0===n.length||0<n.length);if(null==e||0==e.length)a&&(e=t+"="+n);else{var i=e.indexOf(t+"=");0>i?a&&(a=";"==e.charAt(e.length-1)?"":";",e=e+a+t+"="+n):(t=a?t+"="+n:"",n=e.indexOf(";",i),a||n++,e=e.substring(0,i)+t+(n>i?e.substring(n):""))}return e},setCellStyleFlags:function(e,t,n,a,i){if(null!=t&&0<t.length){e.beginUpdate();try{for(var o=0;o<t.length;o++)if(null!=t[o]){var s=mxUtils.setStyleFlag(e.getStyle(t[o]),n,a,i);e.setStyle(t[o],s)}}finally{e.endUpdate()}}},setStyleFlag:function(e,t,n,a){if(null==e||0==e.length)e=a||null==a?t+"="+n:t+"=0";else{var i=e.indexOf(t+"=");if(0>i)i=";"==e.charAt(e.length-1)?"":";",e=a||null==a?e+i+t+"="+n:e+i+t+"=0";else{var o=e.indexOf(";",i),s="",s=0>o?e.substring(i+t.length+1):e.substring(i+t.length+1,o),s=null==a?parseInt(s)^n:a?parseInt(s)|n:parseInt(s)&~n;e=e.substring(0,i)+t+"="+s+(0<=o?e.substring(o):"")}}return e},getAlignmentAsPoint:function(e,t){var n=0,a=0;return e==mxConstants.ALIGN_CENTER?n=-.5:e==mxConstants.ALIGN_RIGHT&&(n=-1),t==mxConstants.ALIGN_MIDDLE?a=-.5:t==mxConstants.ALIGN_BOTTOM&&(a=-1),new mxPoint(n,a)},getSizeForString:function(e,t,n){t=null!=t?t:mxConstants.DEFAULT_FONTSIZE,n=null!=n?n:mxConstants.DEFAULT_FONTFAMILY;var a=document.createElement("div");return a.style.fontFamily=n,a.style.fontSize=Math.round(t)+"px",a.style.lineHeight=Math.round(t*mxConstants.LINE_HEIGHT)+"px",a.style.position="absolute",a.style.whiteSpace="nowrap",a.style.visibility="hidden",a.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",a.style.zoom="1",a.innerHTML=e,document.body.appendChild(a),e=new mxRectangle(0,0,a.offsetWidth,a.offsetHeight),document.body.removeChild(a),e},getViewXml:function(e,t,n,a,i){a=null!=a?a:0,i=null!=i?i:0,t=null!=t?t:1,null==n&&(n=[e.getModel().getRoot()]);var o=e.getView(),s=null,r=o.isEventsEnabled();o.setEventsEnabled(!1);var l=o.drawPane,d=o.overlayPane;e.dialect==mxConstants.DIALECT_SVG?(o.drawPane=document.createElementNS(mxConstants.NS_SVG,"g"),o.canvas.appendChild(o.drawPane),o.overlayPane=document.createElementNS(mxConstants.NS_SVG,"g")):(o.drawPane=o.drawPane.cloneNode(!1),o.canvas.appendChild(o.drawPane),o.overlayPane=o.overlayPane.cloneNode(!1)),o.canvas.appendChild(o.overlayPane);var c=o.getTranslate();o.translate=new mxPoint(a,i),t=new mxTemporaryCellStates(e.getView(),t,n);try{s=(new mxCodec).encode(e.getView())}finally{t.destroy(),o.translate=c,o.canvas.removeChild(o.drawPane),o.canvas.removeChild(o.overlayPane),o.drawPane=l,o.overlayPane=d,o.setEventsEnabled(r)}return s},getScaleForPageCount:function(e,t,n,a){if(1>e)return 1;n=null!=n?n:mxConstants.PAGE_FORMAT_A4_PORTRAIT,a=null!=a?a:0;var i=n.width-2*a;n=n.height-2*a,a=t.getGraphBounds().clone(),t=t.getView().getScale(),a.width/=t,a.height/=t,n=(t=a.width)/a.height/(i/n),a=Math.sqrt(e);var o=Math.sqrt(n);if(n=a*o,a/=o,1>n&&a>e){s=a/e;a=e,n/=s}for(1>a&&n>e&&(s=n/e,n=e,a/=s),s=Math.ceil(n)*Math.ceil(a),o=0;s>e;){var s=Math.floor(n)/n,r=Math.floor(a)/a;if(1==s&&(s=Math.floor(n-1)/n),1==r&&(r=Math.floor(a-1)/a),s=s>r?s:r,n*=s,a*=s,s=Math.ceil(n)*Math.ceil(a),10<++o)break}return i*n/t*.99999},show:function(e,t,n,a){if(n=null!=n?n:0,a=null!=a?a:0,null==t?t=window.open().document:t.open(),n=-(i=e.getGraphBounds()).x+n,a=-i.y+a,mxClient.IS_IE){for(var i="<html><head>",o=document.getElementsByTagName("base"),s=0;s<o.length;s++)i+=o[s].outerHTML;for(i+="<style>",s=0;s<document.styleSheets.length;s++)try{i+=document.styleSheets(s).cssText}catch(e){}i+="</style></head>",i+="<body>",i+=e.container.innerHTML,i+="</body>",i+="<html>",t.writeln(i),t.close(),null!=(e=t.body.getElementsByTagName("DIV")[0])&&(e.style.position="absolute",e.style.left=n+"px",e.style.top=a+"px")}else{for(t.writeln("<html"),t.writeln("<head>"),o=document.getElementsByTagName("base"),s=0;s<o.length;s++)t.writeln(mxUtils.getOuterHtml(o[s]));for(o=document.getElementsByTagName("link"),s=0;s<o.length;s++)t.writeln(mxUtils.getOuterHtml(o[s]));for(o=document.getElementsByTagName("style"),s=0;s<o.length;s++)t.writeln(mxUtils.getOuterHtml(o[s]));for(t.writeln("</head>"),t.writeln("</html>"),t.close(),null==t.body&&t.documentElement.appendChild(t.createElement("body")),t.body.style.overflow="auto",e=e.container.firstChild;null!=e;)s=e.cloneNode(!0),t.body.appendChild(s),e=e.nextSibling;null!=(e=t.getElementsByTagName("g")[0])&&(e.setAttribute("transform","translate("+n+","+a+")"),(n=e.ownerSVGElement).setAttribute("width",i.width+Math.max(i.x,0)+3),n.setAttribute("height",i.height+Math.max(i.y,0)+3))}return mxUtils.removeCursors(t.body),t},printScreen:function(e){var t=window.open();mxUtils.show(e,t.document),e=function(){t.focus(),t.print(),t.close()},mxClient.IS_GC?t.setTimeout(e,500):e()},popup:function(e,t){if(t){var n=document.createElement("div");n.style.overflow="scroll",n.style.width="636px",n.style.height="460px";var a=document.createElement("pre");a.innerHTML=mxUtils.htmlEntities(e,!1).replace(/\n/g,"<br>").replace(/ /g,"&nbsp;"),n.appendChild(a),(n=new mxWindow("Popup Window",n,document.body.clientWidth/2-320,(document.body.clientHeight||document.documentElement.clientHeight)/2-240,640,480,!1,!0)).setClosable(!0),n.setVisible(!0)}else mxClient.IS_NS?((n=window.open()).document.writeln("<pre>"+mxUtils.htmlEntities(e)+"</pre"),n.document.close()):(n=window.open(),a=n.document.createElement("pre"),a.innerHTML=mxUtils.htmlEntities(e,!1).replace(/\n/g,"<br>").replace(/ /g,"&nbsp;"),n.document.body.appendChild(a))},alert:function(e){alert(e)},prompt:function(e,t){return prompt(e,t)},confirm:function(e){return confirm(e)},error:function(e,t,n,a){var i=document.createElement("div");i.style.padding="20px";var o=document.createElement("img");o.setAttribute("src",a||mxUtils.errorImage),o.setAttribute("valign","bottom"),o.style.verticalAlign="middle",i.appendChild(o),i.appendChild(document.createTextNode(" ")),i.appendChild(document.createTextNode(" ")),i.appendChild(document.createTextNode(" ")),mxUtils.write(i,e),e=document.body.clientWidth,a=document.body.clientHeight||document.documentElement.clientHeight;var s=new mxWindow(mxResources.get(mxUtils.errorResource)||mxUtils.errorResource,i,(e-t)/2,a/4,t,null,!1,!0);return n&&(mxUtils.br(i),t=document.createElement("p"),n=document.createElement("button"),mxClient.IS_IE?n.style.cssText="float:right":n.setAttribute("style","float:right"),mxEvent.addListener(n,"click",function(e){s.destroy()}),mxUtils.write(n,mxResources.get(mxUtils.closeResource)||mxUtils.closeResource),t.appendChild(n),i.appendChild(t),mxUtils.br(i),s.setClosable(!0)),s.setVisible(!0),s},makeDraggable:function(e,t,n,a,i,o,s,r,l,d){return e=new mxDragSource(e,n),e.dragOffset=new mxPoint(null!=i?i:0,null!=o?o:mxConstants.TOOLTIP_VERTICAL_OFFSET),e.autoscroll=s,e.setGuidesEnabled(!1),null!=l&&(e.highlightDropTargets=l),null!=d&&(e.getDropTarget=d),e.getGraphForEvent=function(e){return"function"==typeof t?t(e):t},null!=a&&(e.createDragElement=function(){return a.cloneNode(!0)},r&&(e.createPreviewElement=function(e){var t=a.cloneNode(!0),n=parseInt(t.style.width),i=parseInt(t.style.height);return t.style.width=Math.round(n*e.view.scale)+"px",t.style.height=Math.round(i*e.view.scale)+"px",t})),e}},mxConstants={DEFAULT_HOTSPOT:.3,MIN_HOTSPOT_SIZE:8,MAX_HOTSPOT_SIZE:0,RENDERING_HINT_EXACT:"exact",RENDERING_HINT_FASTER:"faster",RENDERING_HINT_FASTEST:"fastest",DIALECT_SVG:"svg",DIALECT_VML:"vml",DIALECT_MIXEDHTML:"mixedHtml",DIALECT_PREFERHTML:"preferHtml",DIALECT_STRICTHTML:"strictHtml",NS_SVG:"http://www.w3.org/2000/svg",NS_XHTML:"http://www.w3.org/1999/xhtml",NS_XLINK:"http://www.w3.org/1999/xlink",SHADOWCOLOR:"gray",SHADOW_OFFSET_X:2,SHADOW_OFFSET_Y:3,SHADOW_OPACITY:1,NODETYPE_ELEMENT:1,NODETYPE_ATTRIBUTE:2,NODETYPE_TEXT:3,NODETYPE_CDATA:4,NODETYPE_ENTITY_REFERENCE:5,NODETYPE_ENTITY:6,NODETYPE_PROCESSING_INSTRUCTION:7,NODETYPE_COMMENT:8,NODETYPE_DOCUMENT:9,NODETYPE_DOCUMENTTYPE:10,NODETYPE_DOCUMENT_FRAGMENT:11,NODETYPE_NOTATION:12,TOOLTIP_VERTICAL_OFFSET:16,DEFAULT_VALID_COLOR:"#00FF00",DEFAULT_INVALID_COLOR:"#FF0000",HIGHLIGHT_STROKEWIDTH:3,CURSOR_MOVABLE_VERTEX:"move",CURSOR_MOVABLE_EDGE:"move",CURSOR_LABEL_HANDLE:"default",CURSOR_BEND_HANDLE:"pointer",CURSOR_CONNECT:"pointer",HIGHLIGHT_COLOR:"#00FF00",CONNECT_TARGET_COLOR:"#0000FF",INVALID_CONNECT_TARGET_COLOR:"#FF0000",DROP_TARGET_COLOR:"#0000FF",VALID_COLOR:"#00FF00",INVALID_COLOR:"#FF0000",EDGE_SELECTION_COLOR:"#00FF00",VERTEX_SELECTION_COLOR:"#00FF00",VERTEX_SELECTION_STROKEWIDTH:1,EDGE_SELECTION_STROKEWIDTH:1,VERTEX_SELECTION_DASHED:!0,EDGE_SELECTION_DASHED:!0,GUIDE_COLOR:"#FF0000",GUIDE_STROKEWIDTH:1,OUTLINE_COLOR:"#0099FF",OUTLINE_STROKEWIDTH:mxClient.IS_IE?2:3,HANDLE_SIZE:7,LABEL_HANDLE_SIZE:4,HANDLE_FILLCOLOR:"#00FF00",HANDLE_STROKECOLOR:"black",LABEL_HANDLE_FILLCOLOR:"yellow",CONNECT_HANDLE_FILLCOLOR:"#0000FF",LOCKED_HANDLE_FILLCOLOR:"#FF0000",OUTLINE_HANDLE_FILLCOLOR:"#00FFFF",OUTLINE_HANDLE_STROKECOLOR:"#0033FF",DEFAULT_FONTFAMILY:"Arial,Helvetica",DEFAULT_FONTSIZE:11,LINE_HEIGHT:1.2,DEFAULT_FONTSTYLE:0,DEFAULT_STARTSIZE:40,DEFAULT_MARKERSIZE:6,DEFAULT_IMAGESIZE:24,ENTITY_SEGMENT:30,RECTANGLE_ROUNDING_FACTOR:.15,LINE_ARCSIZE:20,ARROW_SPACING:10,ARROW_WIDTH:30,ARROW_SIZE:30,PAGE_FORMAT_A4_PORTRAIT:new mxRectangle(0,0,826,1169),PAGE_FORMAT_A4_LANDSCAPE:new mxRectangle(0,0,1169,826),PAGE_FORMAT_LETTER_PORTRAIT:new mxRectangle(0,0,850,1100),PAGE_FORMAT_LETTER_LANDSCAPE:new mxRectangle(0,0,1100,850),NONE:"none",STYLE_PERIMETER:"perimeter",STYLE_SOURCE_PORT:"sourcePort",STYLE_TARGET_PORT:"targetPort",STYLE_PORT_CONSTRAINT:"portConstraint",STYLE_OPACITY:"opacity",STYLE_TEXT_OPACITY:"textOpacity",STYLE_OVERFLOW:"overflow",STYLE_ORTHOGONAL:"orthogonal",STYLE_EXIT_X:"exitX",STYLE_EXIT_Y:"exitY",STYLE_EXIT_PERIMETER:"exitPerimeter",STYLE_ENTRY_X:"entryX",STYLE_ENTRY_Y:"entryY",STYLE_ENTRY_PERIMETER:"entryPerimeter",STYLE_WHITE_SPACE:"whiteSpace",STYLE_ROTATION:"rotation",STYLE_FILLCOLOR:"fillColor",STYLE_SWIMLANE_FILLCOLOR:"swimlaneFillColor",STYLE_GRADIENTCOLOR:"gradientColor",STYLE_GRADIENT_DIRECTION:"gradientDirection",STYLE_STROKECOLOR:"strokeColor",STYLE_SEPARATORCOLOR:"separatorColor",STYLE_STROKEWIDTH:"strokeWidth",STYLE_ALIGN:"align",STYLE_VERTICAL_ALIGN:"verticalAlign",STYLE_LABEL_POSITION:"labelPosition",STYLE_VERTICAL_LABEL_POSITION:"verticalLabelPosition",STYLE_IMAGE_ASPECT:"imageAspect",STYLE_IMAGE_ALIGN:"imageAlign",STYLE_IMAGE_VERTICAL_ALIGN:"imageVerticalAlign",STYLE_GLASS:"glass",STYLE_IMAGE:"image",STYLE_IMAGE_WIDTH:"imageWidth",STYLE_IMAGE_HEIGHT:"imageHeight",STYLE_IMAGE_BACKGROUND:"imageBackground",STYLE_IMAGE_BORDER:"imageBorder",STYLE_FLIPH:"flipH",STYLE_FLIPV:"flipV",STYLE_NOLABEL:"noLabel",STYLE_NOEDGESTYLE:"noEdgeStyle",STYLE_LABEL_BACKGROUNDCOLOR:"labelBackgroundColor",STYLE_LABEL_BORDERCOLOR:"labelBorderColor",STYLE_LABEL_PADDING:"labelPadding",STYLE_INDICATOR_SHAPE:"indicatorShape",STYLE_INDICATOR_IMAGE:"indicatorImage",STYLE_INDICATOR_COLOR:"indicatorColor",STYLE_INDICATOR_STROKECOLOR:"indicatorStrokeColor",STYLE_INDICATOR_GRADIENTCOLOR:"indicatorGradientColor",STYLE_INDICATOR_SPACING:"indicatorSpacing",STYLE_INDICATOR_WIDTH:"indicatorWidth",STYLE_INDICATOR_HEIGHT:"indicatorHeight",STYLE_INDICATOR_DIRECTION:"indicatorDirection",STYLE_SHADOW:"shadow",STYLE_SEGMENT:"segment",STYLE_ENDARROW:"endArrow",STYLE_STARTARROW:"startArrow",STYLE_ENDSIZE:"endSize",STYLE_STARTSIZE:"startSize",STYLE_SWIMLANE_LINE:"swimlaneLine",STYLE_ENDFILL:"endFill",STYLE_STARTFILL:"startFill",STYLE_DASHED:"dashed",STYLE_DASH_PATTERN:"dashPattern",STYLE_ROUNDED:"rounded",STYLE_CURVED:"curved",STYLE_ARCSIZE:"arcSize",STYLE_SMOOTH:"smooth",STYLE_SOURCE_PERIMETER_SPACING:"sourcePerimeterSpacing",STYLE_TARGET_PERIMETER_SPACING:"targetPerimeterSpacing",STYLE_PERIMETER_SPACING:"perimeterSpacing",STYLE_SPACING:"spacing",STYLE_SPACING_TOP:"spacingTop",STYLE_SPACING_LEFT:"spacingLeft",STYLE_SPACING_BOTTOM:"spacingBottom",STYLE_SPACING_RIGHT:"spacingRight",STYLE_HORIZONTAL:"horizontal",STYLE_DIRECTION:"direction",STYLE_ELBOW:"elbow",STYLE_FONTCOLOR:"fontColor",STYLE_FONTFAMILY:"fontFamily",STYLE_FONTSIZE:"fontSize",STYLE_FONTSTYLE:"fontStyle",STYLE_AUTOSIZE:"autosize",STYLE_FOLDABLE:"foldable",STYLE_EDITABLE:"editable",STYLE_BENDABLE:"bendable",STYLE_MOVABLE:"movable",STYLE_RESIZABLE:"resizable",STYLE_CLONEABLE:"cloneable",STYLE_DELETABLE:"deletable",STYLE_SHAPE:"shape",STYLE_EDGE:"edgeStyle",STYLE_LOOP:"loopStyle",STYLE_ROUTING_CENTER_X:"routingCenterX",STYLE_ROUTING_CENTER_Y:"routingCenterY",FONT_BOLD:1,FONT_ITALIC:2,FONT_UNDERLINE:4,FONT_SHADOW:8,SHAPE_RECTANGLE:"rectangle",SHAPE_ELLIPSE:"ellipse",SHAPE_DOUBLE_ELLIPSE:"doubleEllipse",SHAPE_RHOMBUS:"rhombus",SHAPE_LINE:"line",SHAPE_IMAGE:"image",SHAPE_ARROW:"arrow",SHAPE_LABEL:"label",SHAPE_CYLINDER:"cylinder",SHAPE_SWIMLANE:"swimlane",SHAPE_CONNECTOR:"connector",SHAPE_ACTOR:"actor",SHAPE_CLOUD:"cloud",SHAPE_TRIANGLE:"triangle",SHAPE_HEXAGON:"hexagon",ARROW_CLASSIC:"classic",ARROW_BLOCK:"block",ARROW_OPEN:"open",ARROW_OVAL:"oval",ARROW_DIAMOND:"diamond",ARROW_DIAMOND_THIN:"diamondThin",ALIGN_LEFT:"left",ALIGN_CENTER:"center",ALIGN_RIGHT:"right",ALIGN_TOP:"top",ALIGN_MIDDLE:"middle",ALIGN_BOTTOM:"bottom",DIRECTION_NORTH:"north",DIRECTION_SOUTH:"south",DIRECTION_EAST:"east",DIRECTION_WEST:"west",DIRECTION_MASK_NONE:0,DIRECTION_MASK_WEST:1,DIRECTION_MASK_NORTH:2,DIRECTION_MASK_SOUTH:4,DIRECTION_MASK_EAST:8,DIRECTION_MASK_ALL:15,ELBOW_VERTICAL:"vertical",ELBOW_HORIZONTAL:"horizontal",EDGESTYLE_ELBOW:"elbowEdgeStyle",EDGESTYLE_ENTITY_RELATION:"entityRelationEdgeStyle",EDGESTYLE_LOOP:"loopEdgeStyle",EDGESTYLE_SIDETOSIDE:"sideToSideEdgeStyle",EDGESTYLE_TOPTOBOTTOM:"topToBottomEdgeStyle",EDGESTYLE_ORTHOGONAL:"orthogonalEdgeStyle",EDGESTYLE_SEGMENT:"segmentEdgeStyle",PERIMETER_ELLIPSE:"ellipsePerimeter",PERIMETER_RECTANGLE:"rectanglePerimeter",PERIMETER_RHOMBUS:"rhombusPerimeter",PERIMETER_TRIANGLE:"trianglePerimeter"};mxEventObject.prototype.name=null,mxEventObject.prototype.properties=null,mxEventObject.prototype.consumed=!1,mxEventObject.prototype.getName=function(){return this.name},mxEventObject.prototype.getProperties=function(){return this.properties},mxEventObject.prototype.getProperty=function(e){return this.properties[e]},mxEventObject.prototype.isConsumed=function(){return this.consumed},mxEventObject.prototype.consume=function(){this.consumed=!0},mxMouseEvent.prototype.consumed=!1,mxMouseEvent.prototype.evt=null,mxMouseEvent.prototype.graphX=null,mxMouseEvent.prototype.graphY=null,mxMouseEvent.prototype.state=null,mxMouseEvent.prototype.getEvent=function(){return this.evt},mxMouseEvent.prototype.getSource=function(){return mxEvent.getSource(this.evt)},mxMouseEvent.prototype.isSource=function(e){if(null!=e)for(var t=this.getSource();null!=t;){if(t==e.node)return!0;t=t.parentNode}return!1},mxMouseEvent.prototype.getX=function(){return mxEvent.getClientX(this.getEvent())},mxMouseEvent.prototype.getY=function(){return mxEvent.getClientY(this.getEvent())},mxMouseEvent.prototype.getGraphX=function(){return this.graphX},mxMouseEvent.prototype.getGraphY=function(){return this.graphY},mxMouseEvent.prototype.getState=function(){return this.state},mxMouseEvent.prototype.getCell=function(){var e=this.getState();return null!=e?e.cell:null},mxMouseEvent.prototype.isPopupTrigger=function(){return mxEvent.isPopupTrigger(this.getEvent())},mxMouseEvent.prototype.isConsumed=function(){return this.consumed},mxMouseEvent.prototype.consume=function(e){(null!=e?e:1)&&this.evt.preventDefault&&this.evt.preventDefault(),this.evt.returnValue=!1,this.consumed=!0},mxEventSource.prototype.eventListeners=null,mxEventSource.prototype.eventsEnabled=!0,mxEventSource.prototype.eventSource=null,mxEventSource.prototype.isEventsEnabled=function(){return this.eventsEnabled},mxEventSource.prototype.setEventsEnabled=function(e){this.eventsEnabled=e},mxEventSource.prototype.getEventSource=function(){return this.eventSource},mxEventSource.prototype.setEventSource=function(e){this.eventSource=e},mxEventSource.prototype.addListener=function(e,t){null==this.eventListeners&&(this.eventListeners=[]),this.eventListeners.push(e),this.eventListeners.push(t)},mxEventSource.prototype.removeListener=function(e){if(null!=this.eventListeners)for(var t=0;t<this.eventListeners.length;)this.eventListeners[t+1]==e?this.eventListeners.splice(t,2):t+=2},mxEventSource.prototype.fireEvent=function(e,t){if(null!=this.eventListeners&&this.isEventsEnabled()){null==e&&(e=new mxEventObject),null==t&&(t=this.getEventSource()),null==t&&(t=this);for(var n=[t,e],a=0;a<this.eventListeners.length;a+=2){var i=this.eventListeners[a];(null==i||i==e.getName())&&this.eventListeners[a+1].apply(this,n)}}};var mxEvent={objects:[],addListener:function(){var e=function(e,t,n){null==e.mxListenerList&&(e.mxListenerList=[],mxEvent.objects.push(e)),e.mxListenerList.push({name:t,f:n})};return window.addEventListener?function(t,n,a){t.addEventListener(n,a,!1),e(t,n,a)}:function(t,n,a){t.attachEvent("on"+n,a),e(t,n,a)}}(),removeListener:function(){var e=function(e,t,n){if(null!=e.mxListenerList){t=e.mxListenerList.length;for(var a=0;a<t;a++)if(e.mxListenerList[a].f==n){e.mxListenerList.splice(a,1);break}0==e.mxListenerList.length&&(e.mxListenerList=null)}};return window.removeEventListener?function(t,n,a){t.removeEventListener(n,a,!1),e(t,n,a)}:function(t,n,a){t.detachEvent("on"+n,a),e(t,n,a)}}(),removeAllListeners:function(e){var t=e.mxListenerList;if(null!=t)for(;0<t.length;){var n=t[0];mxEvent.removeListener(e,n.name,n.f)}},addGestureListeners:function(e,t,n,a){null!=t&&mxEvent.addListener(e,"mousedown",t),null!=n&&mxEvent.addListener(e,"mousemove",n),null!=a&&mxEvent.addListener(e,"mouseup",a),mxClient.IS_TOUCH&&(null!=t&&mxEvent.addListener(e,"touchstart",t),null!=n&&mxEvent.addListener(e,"touchmove",n),null!=a&&mxEvent.addListener(e,"touchend",a))},removeGestureListeners:function(e,t,n,a){null!=t&&mxEvent.removeListener(e,"mousedown",t),null!=n&&mxEvent.removeListener(e,"mousemove",n),null!=a&&mxEvent.removeListener(e,"mouseup",a),mxClient.IS_TOUCH&&(null!=t&&mxEvent.removeListener(e,"touchstart",t),null!=n&&mxEvent.removeListener(e,"touchmove",n),null!=a&&mxEvent.removeListener(e,"touchend",a))},redirectMouseEvents:function(e,t,n,a,i,o,s){var r=function(e){return"function"==typeof n?n(e):n};mxEvent.addGestureListeners(e,function(e){null!=a?a(e):mxEvent.isConsumed(e)||t.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e,r(e)))},function(e){null!=i?i(e):mxEvent.isConsumed(e)||t.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(e,r(e)))},function(e){null!=o?o(e):mxEvent.isConsumed(e)||t.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(e,r(e)))}),mxEvent.addListener(e,"dblclick",function(e){if(null!=s)s(e);else if(!mxEvent.isConsumed(e)){var n=r(e);t.dblClick(e,null!=n?n.cell:null)}})},release:function(e){if(null!=e&&(mxEvent.removeAllListeners(e),null!=(e=e.childNodes)))for(var t=e.length,n=0;n<t;n+=1)mxEvent.release(e[n])},addMouseWheelListener:function(e){if(null!=e){var t=function(t){null==t&&(t=window.event);var n=0;0!=(n=!mxClient.IS_NS||mxClient.IS_SF||mxClient.IS_GC?t.wheelDelta/120:-t.detail/2)&&e(t,0<n)};mxClient.IS_NS?mxEvent.addListener(window,mxClient.IS_SF||mxClient.IS_GC?"mousewheel":"DOMMouseScroll",t):mxEvent.addListener(document,"mousewheel",t)}},disableContextMenu:function(){return mxClient.IS_IE&&(void 0===document.documentMode||9>document.documentMode)?function(e){mxEvent.addListener(e,"contextmenu",function(){return!1})}:function(e){e.setAttribute("oncontextmenu","return false;")}}(),getSource:function(e){return null!=e.srcElement?e.srcElement:e.target},isConsumed:function(e){return null!=e.isConsumed&&e.isConsumed},isLeftMouseButton:function(e){return e.button==(mxClient.IS_IE&&(void 0===document.documentMode||9>document.documentMode)?1:0)},isRightMouseButton:function(e){return 2==e.button},isPopupTrigger:function(e){return mxEvent.isRightMouseButton(e)||mxEvent.isShiftDown(e)&&!mxEvent.isControlDown(e)},isShiftDown:function(e){return null!=e&&e.shiftKey},isAltDown:function(e){return null!=e&&e.altKey},isControlDown:function(e){return null!=e&&e.ctrlKey},isMetaDown:function(e){return null!=e&&e.metaKey},getMainEvent:function(e){return"touchstart"!=e.type&&"touchmove"!=e.type||null==e.touches||null==e.touches[0]?"touchend"==e.type&&null!=e.changedTouches&&null!=e.changedTouches[0]&&(e=e.changedTouches[0]):e=e.touches[0],e},getClientX:function(e){return mxEvent.getMainEvent(e).clientX},getClientY:function(e){return mxEvent.getMainEvent(e).clientY},consume:function(e,t,n){n=null==n||n,(null!=t?t:1)&&(e.preventDefault?(n&&e.stopPropagation(),e.preventDefault()):n&&(e.cancelBubble=!0)),e.isConsumed=!0,e.returnValue=!1},LABEL_HANDLE:-1,ROTATION_HANDLE:-2,MOUSE_DOWN:"mouseDown",MOUSE_MOVE:"mouseMove",MOUSE_UP:"mouseUp",ACTIVATE:"activate",RESIZE_START:"resizeStart",RESIZE:"resize",RESIZE_END:"resizeEnd",MOVE_START:"moveStart",MOVE:"move",MOVE_END:"moveEnd",PAN_START:"panStart",PAN:"pan",PAN_END:"panEnd",MINIMIZE:"minimize",NORMALIZE:"normalize",MAXIMIZE:"maximize",HIDE:"hide",SHOW:"show",CLOSE:"close",DESTROY:"destroy",REFRESH:"refresh",SIZE:"size",SELECT:"select",FIRED:"fired",GET:"get",RECEIVE:"receive",CONNECT:"connect",DISCONNECT:"disconnect",SUSPEND:"suspend",RESUME:"resume",MARK:"mark",SESSION:"session",ROOT:"root",POST:"post",OPEN:"open",SAVE:"save",BEFORE_ADD_VERTEX:"beforeAddVertex",ADD_VERTEX:"addVertex",AFTER_ADD_VERTEX:"afterAddVertex",DONE:"done",EXECUTE:"execute",EXECUTED:"executed",BEGIN_UPDATE:"beginUpdate",START_EDIT:"startEdit",END_UPDATE:"endUpdate",END_EDIT:"endEdit",BEFORE_UNDO:"beforeUndo",UNDO:"undo",REDO:"redo",CHANGE:"change",NOTIFY:"notify",LAYOUT_CELLS:"layoutCells",CLICK:"click",SCALE:"scale",TRANSLATE:"translate",SCALE_AND_TRANSLATE:"scaleAndTranslate",UP:"up",DOWN:"down",ADD:"add",REMOVE:"remove",CLEAR:"clear",ADD_CELLS:"addCells",CELLS_ADDED:"cellsAdded",MOVE_CELLS:"moveCells",CELLS_MOVED:"cellsMoved",RESIZE_CELLS:"resizeCells",CELLS_RESIZED:"cellsResized",TOGGLE_CELLS:"toggleCells",CELLS_TOGGLED:"cellsToggled",ORDER_CELLS:"orderCells",CELLS_ORDERED:"cellsOrdered",REMOVE_CELLS:"removeCells",CELLS_REMOVED:"cellsRemoved",GROUP_CELLS:"groupCells",UNGROUP_CELLS:"ungroupCells",REMOVE_CELLS_FROM_PARENT:"removeCellsFromParent",FOLD_CELLS:"foldCells",CELLS_FOLDED:"cellsFolded",ALIGN_CELLS:"alignCells",LABEL_CHANGED:"labelChanged",CONNECT_CELL:"connectCell",CELL_CONNECTED:"cellConnected",SPLIT_EDGE:"splitEdge",FLIP_EDGE:"flipEdge",START_EDITING:"startEditing",ADD_OVERLAY:"addOverlay",REMOVE_OVERLAY:"removeOverlay",UPDATE_CELL_SIZE:"updateCellSize",ESCAPE:"escape",CLICK:"click",DOUBLE_CLICK:"doubleClick",START:"start",RESET:"reset"};mxXmlRequest.prototype.url=null,mxXmlRequest.prototype.params=null,mxXmlRequest.prototype.method=null,mxXmlRequest.prototype.async=null,mxXmlRequest.prototype.binary=!1,mxXmlRequest.prototype.username=null,mxXmlRequest.prototype.password=null,mxXmlRequest.prototype.request=null,mxXmlRequest.prototype.isBinary=function(){return this.binary},mxXmlRequest.prototype.setBinary=function(e){this.binary=e},mxXmlRequest.prototype.getText=function(){return this.request.responseText},mxXmlRequest.prototype.isReady=function(){return 4==this.request.readyState},mxXmlRequest.prototype.getDocumentElement=function(){var e=this.getXml();return null!=e?e.documentElement:null},mxXmlRequest.prototype.getXml=function(){var e=this.request.responseXML;return(9<=document.documentMode||null==e||null==e.documentElement)&&(e=mxUtils.parseXml(this.request.responseText)),e},mxXmlRequest.prototype.getText=function(){return this.request.responseText},mxXmlRequest.prototype.getStatus=function(){return this.request.status},mxXmlRequest.prototype.create=function(){return window.XMLHttpRequest?function(){var e=new XMLHttpRequest;return this.isBinary()&&e.overrideMimeType&&e.overrideMimeType("text/plain; charset=x-user-defined"),e}:"undefined"!=typeof ActiveXObject?function(){return new ActiveXObject("Microsoft.XMLHTTP")}:void 0}(),mxXmlRequest.prototype.send=function(e,t){this.request=this.create(),null!=this.request&&(null!=e&&(this.request.onreadystatechange=mxUtils.bind(this,function(){this.isReady()&&(e(this),this.onreadystatechaange=null)})),this.request.open(this.method,this.url,this.async,this.username,this.password),this.setRequestHeaders(this.request,this.params),this.request.send(this.params))},mxXmlRequest.prototype.setRequestHeaders=function(e,t){null!=t&&e.setRequestHeader("Content-Type","application/x-www-form-urlencoded")},mxXmlRequest.prototype.simulate=function(e,t){var n=null;(e=e||document)==document&&(n=window.onbeforeunload,window.onbeforeunload=null);var a=e.createElement("form");a.setAttribute("method",this.method),a.setAttribute("action",this.url),null!=t&&a.setAttribute("target",t),a.style.display="none",a.style.visibility="hidden";for(var i=0<this.params.indexOf("&")?this.params.split("&"):this.params.split(),o=0;o<i.length;o++){var s=i[o].indexOf("=");if(0<s){var r=i[o].substring(0,s),l=i[o].substring(s+1);(s=e.createElement("textarea")).setAttribute("name",r),l=l.replace(/\n/g,"&#xa;"),r=e.createTextNode(l),s.appendChild(r),a.appendChild(s)}}e.body.appendChild(a),a.submit(),e.body.removeChild(a),null!=n&&(window.onbeforeunload=n)};var mxClipboard={STEPSIZE:10,insertCount:1,cells:null,isEmpty:function(){return null==mxClipboard.cells},cut:function(e,t){return t=mxClipboard.copy(e,t),mxClipboard.insertCount=0,mxClipboard.removeCells(e,t),t},removeCells:function(e,t){e.removeCells(t)},copy:function(e,t){t=t||e.getSelectionCells();var n=e.getExportableCells(t);return mxClipboard.insertCount=1,mxClipboard.cells=e.cloneCells(n),n},paste:function(e){if(null!=mxClipboard.cells){var t=e.getImportableCells(mxClipboard.cells),n=mxClipboard.insertCount*mxClipboard.STEPSIZE,a=e.getDefaultParent(),t=e.importCells(t,n,n,a);mxClipboard.insertCount++,e.setSelectionCells(t)}}};mxWindow.prototype=new mxEventSource,mxWindow.prototype.constructor=mxWindow,mxWindow.prototype.closeImage=mxClient.imageBasePath+"/close.gif",mxWindow.prototype.minimizeImage=mxClient.imageBasePath+"/minimize.gif",mxWindow.prototype.normalizeImage=mxClient.imageBasePath+"/normalize.gif",mxWindow.prototype.maximizeImage=mxClient.imageBasePath+"/maximize.gif",mxWindow.prototype.resizeImage=mxClient.imageBasePath+"/resize.gif",mxWindow.prototype.visible=!1,mxWindow.prototype.content=!1,mxWindow.prototype.minimumSize=new mxRectangle(0,0,50,40),mxWindow.prototype.title=!1,mxWindow.prototype.content=!1,mxWindow.prototype.destroyOnClose=!0,mxWindow.prototype.init=function(e,t,n,a,i){i=null!=i?i:"mxWindow",this.div=document.createElement("div"),this.div.className=i,this.div.style.left=e+"px",this.div.style.top=t+"px",this.table=document.createElement("table"),this.table.className=i,null!=n&&(mxClient.IS_IE||(this.div.style.width=n+"px"),this.table.style.width=n+"px"),null!=a&&(mxClient.IS_IE||(this.div.style.height=a+"px"),this.table.style.height=a+"px"),e=document.createElement("tbody"),t=document.createElement("tr"),this.title=document.createElement("td"),this.title.className=i+"Title",t.appendChild(this.title),e.appendChild(t),t=document.createElement("tr"),this.td=document.createElement("td"),this.td.className=i+"Pane",this.contentWrapper=document.createElement("div"),this.contentWrapper.className=i+"Pane",this.contentWrapper.style.width="100%",this.contentWrapper.appendChild(this.content),(mxClient.IS_IE||"DIV"!=this.content.nodeName.toUpperCase())&&(this.contentWrapper.style.height="100%"),this.td.appendChild(this.contentWrapper),t.appendChild(this.td),e.appendChild(t),this.table.appendChild(e),this.div.appendChild(this.table),i=mxUtils.bind(this,function(e){this.activate()}),mxEvent.addListener(this.title,"mousedown",i),mxEvent.addListener(this.table,"mousedown",i),mxClient.IS_TOUCH&&(mxEvent.addListener(this.title,"touchstart",i),mxEvent.addListener(this.table,"touchstart",i)),this.hide()},mxWindow.prototype.setTitle=function(e){for(var t=this.title.firstChild;null!=t;){var n=t.nextSibling;t.nodeType==mxConstants.NODETYPE_TEXT&&t.parentNode.removeChild(t),t=n}mxUtils.write(this.title,e||"")},mxWindow.prototype.setScrollable=function(e){0>navigator.userAgent.indexOf("Presto/2.5")&&(this.contentWrapper.style.overflow=e?"auto":"hidden")},mxWindow.prototype.activate=function(){if(mxWindow.activeWindow!=this){var e=null!=(e=mxUtils.getCurrentStyle(this.getElement()))?e.zIndex:3;if(mxWindow.activeWindow){var t=mxWindow.activeWindow.getElement();null!=t&&null!=t.style&&(t.style.zIndex=e)}t=mxWindow.activeWindow,this.getElement().style.zIndex=parseInt(e)+1,mxWindow.activeWindow=this,this.fireEvent(new mxEventObject(mxEvent.ACTIVATE,"previousWindow",t))}},mxWindow.prototype.getElement=function(){return this.div},mxWindow.prototype.fit=function(){mxUtils.fit(this.div)},mxWindow.prototype.isResizable=function(){return null!=this.resize&&"none"!=this.resize.style.display},mxWindow.prototype.setResizable=function(e){e?null==this.resize?(this.resize=document.createElement("img"),this.resize.style.position="absolute",this.resize.style.bottom="2px",this.resize.style.right="2px",this.resize.setAttribute("src",mxClient.imageBasePath+"/resize.gif"),this.resize.style.cursor="nw-resize",mxEvent.addGestureListeners(this.resize,mxUtils.bind(this,function(e){this.activate();var t=mxEvent.getClientX(e),n=mxEvent.getClientY(e),a=this.div.offsetWidth,i=this.div.offsetHeight,o=mxUtils.bind(this,function(e){var o=mxEvent.getClientX(e)-t,s=mxEvent.getClientY(e)-n;this.setSize(a+o,i+s),this.fireEvent(new mxEventObject(mxEvent.RESIZE,"event",e)),mxEvent.consume(e)}),s=mxUtils.bind(this,function(e){mxEvent.removeGestureListeners(document,null,o,s),this.fireEvent(new mxEventObject(mxEvent.RESIZE_END,"event",e)),mxEvent.consume(e)});mxEvent.addGestureListeners(document,null,o,s),this.fireEvent(new mxEventObject(mxEvent.RESIZE_START,"event",e)),mxEvent.consume(e)}),null,null),this.div.appendChild(this.resize)):this.resize.style.display="inline":null!=this.resize&&(this.resize.style.display="none")},mxWindow.prototype.setSize=function(e,t){e=Math.max(this.minimumSize.width,e),t=Math.max(this.minimumSize.height,t),mxClient.IS_IE||(this.div.style.width=e+"px",this.div.style.height=t+"px"),this.table.style.width=e+"px",this.table.style.height=t+"px",mxClient.IS_IE||(this.contentWrapper.style.height=this.div.offsetHeight-this.title.offsetHeight-2+"px")},mxWindow.prototype.setMinimizable=function(e){this.minimize.style.display=e?"":"none"},mxWindow.prototype.getMinimumSize=function(){return new mxRectangle(0,0,0,this.title.offsetHeight)},mxWindow.prototype.installMinimizeHandler=function(){this.minimize=document.createElement("img"),this.minimize.setAttribute("src",this.minimizeImage),this.minimize.setAttribute("align","right"),this.minimize.setAttribute("title","Minimize"),this.minimize.style.cursor="pointer",this.minimize.style.marginRight="1px",this.minimize.style.display="none",this.title.appendChild(this.minimize);var e=!1,t=null,n=null,a=mxUtils.bind(this,function(a){if(this.activate(),e)e=!1,this.minimize.setAttribute("src",this.minimizeImage),this.minimize.setAttribute("title","Minimize"),this.contentWrapper.style.display="",this.maximize.style.display=t,mxClient.IS_IE||(this.div.style.height=n),this.table.style.height=n,null!=this.resize&&(this.resize.style.visibility=""),this.fireEvent(new mxEventObject(mxEvent.NORMALIZE,"event",a));else{e=!0,this.minimize.setAttribute("src",this.normalizeImage),this.minimize.setAttribute("title","Normalize"),this.contentWrapper.style.display="none",t=this.maximize.style.display,this.maximize.style.display="none",n=this.table.style.height;var i=this.getMinimumSize();0<i.height&&(mxClient.IS_IE||(this.div.style.height=i.height+"px"),this.table.style.height=i.height+"px"),0<i.width&&(mxClient.IS_IE||(this.div.style.width=i.width+"px"),this.table.style.width=i.width+"px"),null!=this.resize&&(this.resize.style.visibility="hidden"),this.fireEvent(new mxEventObject(mxEvent.MINIMIZE,"event",a))}mxEvent.consume(a)});mxEvent.addListener(this.minimize,"mousedown",a),mxClient.IS_TOUCH&&mxEvent.addListener(this.minimize,"touchstart",a)},mxWindow.prototype.setMaximizable=function(e){this.maximize.style.display=e?"":"none"},mxWindow.prototype.installMaximizeHandler=function(){this.maximize=document.createElement("img"),this.maximize.setAttribute("src",this.maximizeImage),this.maximize.setAttribute("align","right"),this.maximize.setAttribute("title","Maximize"),this.maximize.style.cursor="default",this.maximize.style.marginLeft="1px",this.maximize.style.cursor="pointer",this.maximize.style.display="none",this.title.appendChild(this.maximize);var e=!1,t=null,n=null,a=null,i=null,o=mxUtils.bind(this,function(o){if(this.activate(),"none"!=this.maximize.style.display){if(e)e=!1,this.maximize.setAttribute("src",this.maximizeImage),this.maximize.setAttribute("title","Maximize"),this.contentWrapper.style.display="",this.minimize.style.visibility="",this.div.style.left=t+"px",this.div.style.top=n+"px",mxClient.IS_IE||(this.div.style.height=a,this.div.style.width=i,"auto"!=(s=mxUtils.getCurrentStyle(this.contentWrapper)).overflow&&null==this.resize)||(this.contentWrapper.style.height=this.div.offsetHeight-this.title.offsetHeight-2+"px"),this.table.style.height=a,this.table.style.width=i,null!=this.resize&&(this.resize.style.visibility=""),this.fireEvent(new mxEventObject(mxEvent.NORMALIZE,"event",o));else{if(e=!0,this.maximize.setAttribute("src",this.normalizeImage),this.maximize.setAttribute("title","Normalize"),this.contentWrapper.style.display="",this.minimize.style.visibility="hidden",t=parseInt(this.div.style.left),n=parseInt(this.div.style.top),a=this.table.style.height,i=this.table.style.width,this.div.style.left="0px",this.div.style.top="0px",mxClient.IS_IE||(this.div.style.height=document.body.clientHeight-2+"px",this.div.style.width=document.body.clientWidth-2+"px"),this.table.style.width=document.body.clientWidth-2+"px",this.table.style.height=document.body.clientHeight-2+"px",null!=this.resize&&(this.resize.style.visibility="hidden"),!mxClient.IS_IE){var s=mxUtils.getCurrentStyle(this.contentWrapper);"auto"!=s.overflow&&null==this.resize||(this.contentWrapper.style.height=this.div.offsetHeight-this.title.offsetHeight-2+"px")}this.fireEvent(new mxEventObject(mxEvent.MAXIMIZE,"event",o))}mxEvent.consume(o)}});mxEvent.addGestureListeners(this.maximize,o),mxEvent.addListener(this.title,"dblclick",o)},mxWindow.prototype.installMoveHandler=function(){this.title.style.cursor="move",mxEvent.addGestureListeners(this.title,mxUtils.bind(this,function(e){var t=mxEvent.getClientX(e),n=mxEvent.getClientY(e),a=this.getX(),i=this.getY(),o=mxUtils.bind(this,function(e){var o=mxEvent.getClientX(e)-t,s=mxEvent.getClientY(e)-n;this.setLocation(a+o,i+s),this.fireEvent(new mxEventObject(mxEvent.MOVE,"event",e)),mxEvent.consume(e)}),s=mxUtils.bind(this,function(e){mxEvent.removeGestureListeners(document,null,o,s),this.fireEvent(new mxEventObject(mxEvent.MOVE_END,"event",e)),mxEvent.consume(e)});mxEvent.addGestureListeners(document,null,o,s),this.fireEvent(new mxEventObject(mxEvent.MOVE_START,"event",e)),mxEvent.consume(e)}))},mxWindow.prototype.setLocation=function(e,t){this.div.style.left=e+"px",this.div.style.top=t+"px"},mxWindow.prototype.getX=function(){return parseInt(this.div.style.left)},mxWindow.prototype.getY=function(){return parseInt(this.div.style.top)},mxWindow.prototype.installCloseHandler=function(){this.closeImg=document.createElement("img"),this.closeImg.setAttribute("src",this.closeImage),this.closeImg.setAttribute("align","right"),this.closeImg.setAttribute("title","Close"),this.closeImg.style.marginLeft="2px",this.closeImg.style.cursor="pointer",this.closeImg.style.display="none",this.title.insertBefore(this.closeImg,this.title.firstChild),mxEvent.addGestureListeners(this.closeImg,mxUtils.bind(this,function(e){this.fireEvent(new mxEventObject(mxEvent.CLOSE,"event",e)),this.destroyOnClose?this.destroy():this.setVisible(!1),mxEvent.consume(e)}))},mxWindow.prototype.setImage=function(e){this.image=document.createElement("img"),this.image.setAttribute("src",e),this.image.setAttribute("align","left"),this.image.style.marginRight="4px",this.image.style.marginLeft="0px",this.image.style.marginTop="-2px",this.title.insertBefore(this.image,this.title.firstChild)},mxWindow.prototype.setClosable=function(e){this.closeImg.style.display=e?"":"none"},mxWindow.prototype.isVisible=function(){return null!=this.div&&"hidden"!=this.div.style.visibility},mxWindow.prototype.setVisible=function(e){null!=this.div&&this.isVisible()!=e&&(e?this.show():this.hide())},mxWindow.prototype.show=function(){this.div.style.visibility="",this.activate();var e=mxUtils.getCurrentStyle(this.contentWrapper);mxClient.IS_IE||"auto"!=e.overflow&&null==this.resize||(this.contentWrapper.style.height=this.div.offsetHeight-this.title.offsetHeight-2+"px"),this.fireEvent(new mxEventObject(mxEvent.SHOW))},mxWindow.prototype.hide=function(){this.div.style.visibility="hidden",this.fireEvent(new mxEventObject(mxEvent.HIDE))},mxWindow.prototype.destroy=function(){this.fireEvent(new mxEventObject(mxEvent.DESTROY)),null!=this.div&&(mxEvent.release(this.div),this.div.parentNode.removeChild(this.div),this.div=null),this.contentWrapper=this.content=this.title=null},mxForm.prototype.table=null,mxForm.prototype.body=!1,mxForm.prototype.getTable=function(){return this.table},mxForm.prototype.addButtons=function(e,t){var n=document.createElement("tr"),a=document.createElement("td");n.appendChild(a);var a=document.createElement("td"),i=document.createElement("button");mxUtils.write(i,mxResources.get("ok")||"OK"),a.appendChild(i),mxEvent.addListener(i,"click",function(){e()}),i=document.createElement("button"),mxUtils.write(i,mxResources.get("cancel")||"Cancel"),a.appendChild(i),mxEvent.addListener(i,"click",function(){t()}),n.appendChild(a),this.body.appendChild(n)},mxForm.prototype.addText=function(e,t){var n=document.createElement("input");return n.setAttribute("type","text"),n.value=t,this.addField(e,n)},mxForm.prototype.addCheckbox=function(e,t){var n=document.createElement("input");return n.setAttribute("type","checkbox"),this.addField(e,n),t&&(n.checked=!0),n},mxForm.prototype.addTextarea=function(e,t,n){var a=document.createElement("textarea");return mxClient.IS_NS&&n--,a.setAttribute("rows",n||2),a.value=t,this.addField(e,a)},mxForm.prototype.addCombo=function(e,t,n){var a=document.createElement("select");return null!=n&&a.setAttribute("size",n),t&&a.setAttribute("multiple","true"),this.addField(e,a)},mxForm.prototype.addOption=function(e,t,n,a){var i=document.createElement("option");mxUtils.writeln(i,t),i.setAttribute("value",n),a&&i.setAttribute("selected",a),e.appendChild(i)},mxForm.prototype.addField=function(e,t){var n=document.createElement("tr"),a=document.createElement("td");return mxUtils.write(a,e),n.appendChild(a),(a=document.createElement("td")).appendChild(t),n.appendChild(a),this.body.appendChild(n),t},mxImage.prototype.src=null,mxImage.prototype.width=null,mxImage.prototype.height=null,mxDivResizer.prototype.resizeWidth=!0,mxDivResizer.prototype.resizeHeight=!0,mxDivResizer.prototype.handlingResize=!1,mxDivResizer.prototype.resize=function(){var e=this.getDocumentWidth(),t=this.getDocumentHeight(),n=parseInt(this.div.style.left),a=parseInt(this.div.style.right),i=parseInt(this.div.style.top),o=parseInt(this.div.style.bottom);this.resizeWidth&&!isNaN(n)&&!isNaN(a)&&0<=n&&0<=a&&0<e-a-n&&(this.div.style.width=e-a-n+"px"),this.resizeHeight&&!isNaN(i)&&!isNaN(o)&&0<=i&&0<=o&&0<t-i-o&&(this.div.style.height=t-i-o+"px")},mxDivResizer.prototype.getDocumentWidth=function(){return document.body.clientWidth},mxDivResizer.prototype.getDocumentHeight=function(){return document.body.clientHeight},mxDragSource.prototype.element=null,mxDragSource.prototype.dropHandler=null,mxDragSource.prototype.dragOffset=null,mxDragSource.prototype.dragElement=null,mxDragSource.prototype.previewElement=null,mxDragSource.prototype.enabled=!0,mxDragSource.prototype.currentGraph=null,mxDragSource.prototype.currentDropTarget=null,mxDragSource.prototype.currentPoint=null,mxDragSource.prototype.currentGuide=null,mxDragSource.prototype.currentHighlight=null,mxDragSource.prototype.autoscroll=!0,mxDragSource.prototype.guidesEnabled=!0,mxDragSource.prototype.gridEnabled=!0,mxDragSource.prototype.highlightDropTargets=!0,mxDragSource.prototype.dragElementZIndex=100,mxDragSource.prototype.dragElementOpacity=70,mxDragSource.prototype.isEnabled=function(){return this.enabled},mxDragSource.prototype.setEnabled=function(e){this.enabled=e},mxDragSource.prototype.isGuidesEnabled=function(){return this.guidesEnabled},mxDragSource.prototype.setGuidesEnabled=function(e){this.guidesEnabled=e},mxDragSource.prototype.isGridEnabled=function(){return this.gridEnabled},mxDragSource.prototype.setGridEnabled=function(e){this.gridEnabled=e},mxDragSource.prototype.getGraphForEvent=function(e){return null},mxDragSource.prototype.getDropTarget=function(e,t,n){return e.getCellAt(t,n)},mxDragSource.prototype.createDragElement=function(e){return this.element.cloneNode(!0)},mxDragSource.prototype.createPreviewElement=function(e){return null},mxDragSource.prototype.mouseDown=function(e){this.enabled&&!mxEvent.isConsumed(e)&&null==this.mouseMoveHandler&&(this.startDrag(e),this.mouseMoveHandler=mxUtils.bind(this,this.mouseMove),this.mouseUpHandler=mxUtils.bind(this,this.mouseUp),mxEvent.addGestureListeners(document,null,this.mouseMoveHandler,this.mouseUpHandler),mxEvent.consume(e,!0,!1))},mxDragSource.prototype.startDrag=function(e){this.dragElement=this.createDragElement(e),this.dragElement.style.position="absolute",this.dragElement.style.zIndex=this.dragElementZIndex,mxUtils.setOpacity(this.dragElement,this.dragElementOpacity)},mxDragSource.prototype.stopDrag=function(e){null!=this.dragElement&&(null!=this.dragElement.parentNode&&this.dragElement.parentNode.removeChild(this.dragElement),this.dragElement=null)},mxDragSource.prototype.graphContainsEvent=function(e,t){var n=mxEvent.getClientX(t),a=mxEvent.getClientY(t),i=mxUtils.getOffset(e.container),o=mxUtils.getScrollOrigin();return n>=i.x-o.x&&a>=i.y-o.y&&n<=i.x-o.x+e.container.offsetWidth&&a<=i.y-o.y+e.container.offsetHeight},mxDragSource.prototype.mouseMove=function(e){if(null!=(t=this.getGraphForEvent(e))&&!this.graphContainsEvent(t,e)&&(t=null),t!=this.currentGraph&&(null!=this.currentGraph&&this.dragExit(this.currentGraph),this.currentGraph=t,null!=this.currentGraph&&this.dragEnter(this.currentGraph)),null!=this.currentGraph&&this.dragOver(this.currentGraph,e),null==this.dragElement||null!=this.previewElement&&"visible"==this.previewElement.style.visibility)null!=this.dragElement&&(this.dragElement.style.visibility="hidden");else{var t=mxEvent.getClientX(e),n=mxEvent.getClientY(e);null==this.dragElement.parentNode&&document.body.appendChild(this.dragElement),this.dragElement.style.visibility="visible",null!=this.dragOffset&&(t+=this.dragOffset.x,n+=this.dragOffset.y),t+=document.body.scrollLeft||document.documentElement.scrollLeft,n+=document.body.scrollTop||document.documentElement.scrollTop,this.dragElement.style.left=t+"px",this.dragElement.style.top=n+"px"}mxEvent.consume(e)},mxDragSource.prototype.mouseUp=function(e){if(null!=this.currentGraph){if(null!=this.currentPoint&&(null==this.previewElement||"hidden"!=this.previewElement.style.visibility)){var t=this.currentGraph.view.scale,n=this.currentGraph.view.translate;this.drop(this.currentGraph,e,this.currentDropTarget,this.currentPoint.x/t-n.x,this.currentPoint.y/t-n.y)}this.dragExit(this.currentGraph)}this.stopDrag(e),mxEvent.removeGestureListeners(document,null,this.mouseMoveHandler,this.mouseUpHandler),this.currentGraph=this.mouseUpHandler=this.mouseMoveHandler=null,mxEvent.consume(e)},mxDragSource.prototype.dragEnter=function(e){e.isMouseDown=!0,this.previewElement=this.createPreviewElement(e),this.isGuidesEnabled()&&null!=this.previewElement&&(this.currentGuide=new mxGuide(e,e.graphHandler.getGuideStates())),this.highlightDropTargets&&(this.currentHighlight=new mxCellHighlight(e,mxConstants.DROP_TARGET_COLOR))},mxDragSource.prototype.dragExit=function(e){this.currentPoint=this.currentDropTarget=null,e.isMouseDown=!1,null!=this.previewElement&&(null!=this.previewElement.parentNode&&this.previewElement.parentNode.removeChild(this.previewElement),this.previewElement=null),null!=this.currentGuide&&(this.currentGuide.destroy(),this.currentGuide=null),null!=this.currentHighlight&&(this.currentHighlight.destroy(),this.currentHighlight=null)},mxDragSource.prototype.dragOver=function(e,t){var n=mxUtils.getOffset(e.container),a=mxUtils.getScrollOrigin(e.container),i=mxEvent.getClientX(t)-n.x+a.x,n=mxEvent.getClientY(t)-n.y+a.y;if(e.autoScroll&&(null==this.autoscroll||this.autoscroll)&&e.scrollPointToVisible(i,n,e.autoExtend),null!=this.currentHighlight&&e.isDropEnabled()&&(this.currentDropTarget=this.getDropTarget(e,i,n),a=e.getView().getState(this.currentDropTarget),this.currentHighlight.highlight(a)),null!=this.previewElement){null==this.previewElement.parentNode&&(e.container.appendChild(this.previewElement),this.previewElement.style.zIndex="3",this.previewElement.style.position="absolute");var a=this.isGridEnabled()&&e.isGridEnabledEvent(t),o=!0;if(null!=this.currentGuide&&this.currentGuide.isEnabledForEvent(t))var o=parseInt(this.previewElement.style.width),s=parseInt(this.previewElement.style.height),o=new mxRectangle(0,0,o,s),n=new mxPoint(i,n),n=this.currentGuide.move(o,n,a),o=!1,i=n.x,n=n.y;else if(a)var a=e.view.scale,s=e.view.translate,r=e.gridSize/2,i=(e.snap(i/a-s.x-r)+s.x)*a,n=(e.snap(n/a-s.y-r)+s.y)*a;null!=this.currentGuide&&o&&this.currentGuide.hide(),null!=this.previewOffset&&(i+=this.previewOffset.x,n+=this.previewOffset.y),this.previewElement.style.left=Math.round(i)+"px",this.previewElement.style.top=Math.round(n)+"px",this.previewElement.style.visibility="visible"}this.currentPoint=new mxPoint(i,n)},mxDragSource.prototype.drop=function(e,t,n,a,i){this.dropHandler(e,t,n,a,i),e.container.focus()},mxToolbar.prototype=new mxEventSource,mxToolbar.prototype.constructor=mxToolbar,mxToolbar.prototype.container=null,mxToolbar.prototype.enabled=!0,mxToolbar.prototype.noReset=!1,mxToolbar.prototype.updateDefaultMode=!0,mxToolbar.prototype.addItem=function(e,t,n,a,i,o){var s=document.createElement(null!=t?"img":"button"),r=i||(null!=o?"mxToolbarMode":"mxToolbarItem");return s.className=r,s.setAttribute("src",t),null!=e&&(null!=t?s.setAttribute("title",e):mxUtils.write(s,e)),this.container.appendChild(s),null!=n&&(mxEvent.addListener(s,"click",n),mxClient.IS_TOUCH&&mxEvent.addListener(s,"touchend",n)),e=mxUtils.bind(this,function(e){null!=a?s.setAttribute("src",t):s.style.backgroundColor=""}),mxEvent.addGestureListeners(s,mxUtils.bind(this,function(e){if(null!=a?s.setAttribute("src",a):s.style.backgroundColor="gray",null!=o){null==this.menu&&(this.menu=new mxPopupMenu,this.menu.init());var t=this.currentImg;this.menu.isMenuShowing()&&this.menu.hideMenu(),t!=s&&(this.currentImg=s,this.menu.factoryMethod=o,t=new mxPoint(s.offsetLeft,s.offsetTop+s.offsetHeight),this.menu.popup(t.x,t.y,null,e),this.menu.isMenuShowing()&&(s.className=r+"Selected",this.menu.hideMenu=function(){mxPopupMenu.prototype.hideMenu.apply(this),s.className=r,this.currentImg=null}))}}),null,e),mxEvent.addListener(s,"mouseout",e),s},mxToolbar.prototype.addCombo=function(e){var t=document.createElement("div");t.style.display="inline",t.className="mxToolbarComboContainer";var n=document.createElement("select");return n.className=e||"mxToolbarCombo",t.appendChild(n),this.container.appendChild(t),n},mxToolbar.prototype.addActionCombo=function(e,t){var n=document.createElement("select");return n.className=t||"mxToolbarCombo",this.addOption(n,e,null),mxEvent.addListener(n,"change",function(e){var t=n.options[n.selectedIndex];n.selectedIndex=0,null!=t.funct&&t.funct(e)}),this.container.appendChild(n),n},mxToolbar.prototype.addOption=function(e,t,n){var a=document.createElement("option");return mxUtils.writeln(a,t),"function"==typeof n?a.funct=n:a.setAttribute("value",n),e.appendChild(a),a},mxToolbar.prototype.addSwitchMode=function(e,t,n,a,i){var o=document.createElement("img");return o.initialClassName=i||"mxToolbarMode",o.className=o.initialClassName,o.setAttribute("src",t),o.altIcon=a,null!=e&&o.setAttribute("title",e),mxEvent.addListener(o,"click",mxUtils.bind(this,function(e){null!=(e=this.selectedMode.altIcon)?(this.selectedMode.altIcon=this.selectedMode.getAttribute("src"),this.selectedMode.setAttribute("src",e)):this.selectedMode.className=this.selectedMode.initialClassName,this.updateDefaultMode&&(this.defaultMode=o),this.selectedMode=o,null!=(e=o.altIcon)?(o.altIcon=o.getAttribute("src"),o.setAttribute("src",e)):o.className=o.initialClassName+"Selected",this.fireEvent(new mxEventObject(mxEvent.SELECT)),n()})),this.container.appendChild(o),null==this.defaultMode&&(this.defaultMode=o,this.selectMode(o),n()),o},mxToolbar.prototype.addMode=function(e,t,n,a,i,o){o=null==o||o;var s=document.createElement(null!=t?"img":"button");return s.initialClassName=i||"mxToolbarMode",s.className=s.initialClassName,s.setAttribute("src",t),s.altIcon=a,null!=e&&s.setAttribute("title",e),this.enabled&&o&&(mxEvent.addListener(s,"click",mxUtils.bind(this,function(e){this.selectMode(s,n),this.noReset=!1})),mxEvent.addListener(s,"dblclick",mxUtils.bind(this,function(e){this.selectMode(s,n),this.noReset=!0})),null==this.defaultMode&&(this.defaultMode=s,this.defaultFunction=n,this.selectMode(s,n))),this.container.appendChild(s),s},mxToolbar.prototype.selectMode=function(e,t){if(this.selectedMode!=e){if(null!=this.selectedMode){var n=this.selectedMode.altIcon;null!=n?(this.selectedMode.altIcon=this.selectedMode.getAttribute("src"),this.selectedMode.setAttribute("src",n)):this.selectedMode.className=this.selectedMode.initialClassName}this.selectedMode=e,null!=(n=this.selectedMode.altIcon)?(this.selectedMode.altIcon=this.selectedMode.getAttribute("src"),this.selectedMode.setAttribute("src",n)):this.selectedMode.className=this.selectedMode.initialClassName+"Selected",this.fireEvent(new mxEventObject(mxEvent.SELECT,"function",t))}},mxToolbar.prototype.resetMode=function(e){(e||!this.noReset)&&this.selectedMode!=this.defaultMode&&this.selectMode(this.defaultMode,this.defaultFunction)},mxToolbar.prototype.addSeparator=function(e){return this.addItem(null,e,null)},mxToolbar.prototype.addBreak=function(){mxUtils.br(this.container)},mxToolbar.prototype.addLine=function(){var e=document.createElement("hr");e.style.marginRight="6px",e.setAttribute("size","1"),this.container.appendChild(e)},mxToolbar.prototype.destroy=function(){mxEvent.release(this.container),this.selectedMode=this.defaultFunction=this.defaultMode=this.container=null,null!=this.menu&&this.menu.destroy()},mxSession.prototype=new mxEventSource,mxSession.prototype.constructor=mxSession,mxSession.prototype.model=null,mxSession.prototype.urlInit=null,mxSession.prototype.urlPoll=null,mxSession.prototype.urlNotify=null,mxSession.prototype.codec=null,mxSession.prototype.linefeed="&#xa;",mxSession.prototype.escapePostData=!0,mxSession.prototype.significantRemoteChanges=!0,mxSession.prototype.sent=0,mxSession.prototype.received=0,mxSession.prototype.debug=!1,mxSession.prototype.connected=!1,mxSession.prototype.suspended=!1,mxSession.prototype.polling=!1,mxSession.prototype.start=function(){this.debug?(this.connected=!0,this.fireEvent(new mxEventObject(mxEvent.CONNECT))):this.connected||this.get(this.urlInit,mxUtils.bind(this,function(e){this.connected=!0,this.fireEvent(new mxEventObject(mxEvent.CONNECT)),this.poll()}))},mxSession.prototype.suspend=function(){this.connected&&!this.suspended&&(this.suspended=!0,this.fireEvent(new mxEventObject(mxEvent.SUSPEND)))},mxSession.prototype.resume=function(e,t,n){this.connected&&this.suspended&&(this.suspended=!1,this.fireEvent(new mxEventObject(mxEvent.RESUME)),this.polling||this.poll())},mxSession.prototype.stop=function(e){this.connected&&(this.connected=!1),this.fireEvent(new mxEventObject(mxEvent.DISCONNECT,"reason",e))},mxSession.prototype.poll=function(){this.connected&&!this.suspended&&null!=this.urlPoll?(this.polling=!0,this.get(this.urlPoll,mxUtils.bind(this,function(){this.poll()}))):this.polling=!1},mxSession.prototype.notify=function(e,t,n){null!=e&&0<e.length&&(null!=this.urlNotify&&(this.debug?(mxLog.show(),mxLog.debug("mxSession.notify: "+this.urlNotify+" xml="+e)):(e="<message><delta>"+e+"</delta></message>",this.escapePostData&&(e=encodeURIComponent(e)),mxUtils.post(this.urlNotify,"xml="+e,t,n))),this.sent+=e.length,this.fireEvent(new mxEventObject(mxEvent.NOTIFY,"url",this.urlNotify,"xml",e)))},mxSession.prototype.get=function(e,t,n){if(void 0!==mxUtils){var a=mxUtils.bind(this,function(e){null!=n?n(e):this.stop(e)});mxUtils.get(e,mxUtils.bind(this,function(n){if(void 0!==mxUtils)if(n.isReady()&&404!=n.getStatus()){if(this.received+=n.getText().length,this.fireEvent(new mxEventObject(mxEvent.GET,"url",e,"request",n)),this.isValidResponse(n)){if(0<n.getText().length){var i=n.getDocumentElement();null==i?a("Invalid response: "+n.getText()):this.receive(i)}null!=t&&t(n)}}else a("Response not ready")}),function(e){a("Transmission error")})}},mxSession.prototype.isValidResponse=function(e){return 0>e.getText().indexOf("<?php")},mxSession.prototype.encodeChanges=function(e,t){for(var n="",a=t?-1:1,i=t?e.length-1:0;0<=i&&i<e.length;i+=a)var o=this.codec.encode(e[i]),n=n+mxUtils.getXml(o,this.linefeed);return n},mxSession.prototype.receive=function(e){if(null!=e&&e.nodeType==mxConstants.NODETYPE_ELEMENT){var t=e.getAttribute("namespace");for(null!=t&&(this.model.prefix=t+"-"),t=e.firstChild;null!=t;){var n=t.nodeName.toLowerCase();"state"==n?this.processState(t):"delta"==n&&this.processDelta(t),t=t.nextSibling}this.fireEvent(new mxEventObject(mxEvent.RECEIVE,"node",e))}},mxSession.prototype.processState=function(e){new mxCodec(e.ownerDocument).decode(e.firstChild,this.model)},mxSession.prototype.processDelta=function(e){for(e=e.firstChild;null!=e;)"edit"==e.nodeName&&this.processEdit(e),e=e.nextSibling},mxSession.prototype.processEdit=function(e){if(0<(e=this.decodeChanges(e)).length){var t=this.createUndoableEdit(e);this.model.fireEvent(new mxEventObject(mxEvent.CHANGE,"edit",t,"changes",e)),this.model.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",t)),this.fireEvent(new mxEventObject(mxEvent.FIRED,"edit",t))}},mxSession.prototype.createUndoableEdit=function(e){var t=new mxUndoableEdit(this.model,this.significantRemoteChanges);return t.changes=e,t.notify=function(){t.source.fireEvent(new mxEventObject(mxEvent.CHANGE,"edit",t,"changes",t.changes)),t.source.fireEvent(new mxEventObject(mxEvent.NOTIFY,"edit",t,"changes",t.changes))},t},mxSession.prototype.decodeChanges=function(e){this.codec.document=e.ownerDocument;var t=[];for(e=e.firstChild;null!=e;){var n=this.decodeChange(e);null!=n&&t.push(n),e=e.nextSibling}return t},mxSession.prototype.decodeChange=function(e){var t=null;return e.nodeType==mxConstants.NODETYPE_ELEMENT&&null!=(t="mxRootChange"==e.nodeName?new mxCodec(e.ownerDocument).decode(e):this.codec.decode(e))&&(t.model=this.model,t.execute(),"mxChildChange"==e.nodeName&&null==t.parent&&this.cellRemoved(t.child)),t},mxSession.prototype.cellRemoved=function(e,t){this.codec.putObject(e.getId(),e);for(var n=this.model.getChildCount(e),a=0;a<n;a++)this.cellRemoved(this.model.getChildAt(e,a))},mxUndoableEdit.prototype.source=null,mxUndoableEdit.prototype.changes=null,mxUndoableEdit.prototype.significant=null,mxUndoableEdit.prototype.undone=!1,mxUndoableEdit.prototype.redone=!1,mxUndoableEdit.prototype.isEmpty=function(){return 0==this.changes.length},mxUndoableEdit.prototype.isSignificant=function(){return this.significant},mxUndoableEdit.prototype.add=function(e){this.changes.push(e)},mxUndoableEdit.prototype.notify=function(){},mxUndoableEdit.prototype.die=function(){},mxUndoableEdit.prototype.undo=function(){if(!this.undone){this.source.fireEvent(new mxEventObject(mxEvent.START_EDIT));for(var e=this.changes.length-1;0<=e;e--){var t=this.changes[e];null!=t.execute?t.execute():null!=t.undo&&t.undo(),this.source.fireEvent(new mxEventObject(mxEvent.EXECUTED,"change",t))}this.undone=!0,this.redone=!1,this.source.fireEvent(new mxEventObject(mxEvent.END_EDIT))}this.notify()},mxUndoableEdit.prototype.redo=function(){if(!this.redone){this.source.fireEvent(new mxEventObject(mxEvent.START_EDIT));for(var e=this.changes.length,t=0;t<e;t++){var n=this.changes[t];null!=n.execute?n.execute():null!=n.redo&&n.redo(),this.source.fireEvent(new mxEventObject(mxEvent.EXECUTED,"change",n))}this.undone=!1,this.redone=!0,this.source.fireEvent(new mxEventObject(mxEvent.END_EDIT))}this.notify()},mxUndoManager.prototype=new mxEventSource,mxUndoManager.prototype.constructor=mxUndoManager,mxUndoManager.prototype.size=null,mxUndoManager.prototype.history=null,mxUndoManager.prototype.indexOfNextAdd=0,mxUndoManager.prototype.isEmpty=function(){return 0==this.history.length},mxUndoManager.prototype.clear=function(){this.history=[],this.indexOfNextAdd=0,this.fireEvent(new mxEventObject(mxEvent.CLEAR))},mxUndoManager.prototype.canUndo=function(){return 0<this.indexOfNextAdd},mxUndoManager.prototype.undo=function(){for(;0<this.indexOfNextAdd;){var e=this.history[--this.indexOfNextAdd];if(e.undo(),e.isSignificant()){this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",e));break}}},mxUndoManager.prototype.canRedo=function(){return this.indexOfNextAdd<this.history.length},mxUndoManager.prototype.redo=function(){for(var e=this.history.length;this.indexOfNextAdd<e;){var t=this.history[this.indexOfNextAdd++];if(t.redo(),t.isSignificant()){this.fireEvent(new mxEventObject(mxEvent.REDO,"edit",t));break}}},mxUndoManager.prototype.undoableEditHappened=function(e){this.trim(),0<this.size&&this.size==this.history.length&&this.history.shift(),this.history.push(e),this.indexOfNextAdd=this.history.length,this.fireEvent(new mxEventObject(mxEvent.ADD,"edit",e))},mxUndoManager.prototype.trim=function(){if(this.history.length>this.indexOfNextAdd)for(var e=this.history.splice(this.indexOfNextAdd,this.history.length-this.indexOfNextAdd),t=0;t<e.length;t++)e[t].die()};var mxUrlConverter=function(e){var t=!0,n=null,a=null;return{isEnabled:function(){return t},setEnabled:function(e){t=e},getBaseUrl:function(){return n},setBaseUrl:function(e){n=e},getBaseDomain:function(){return n},setBaseDomain:function(e){n=e},isRelativeUrl:function(e){return"http://"!=e.substring(0,7)&&"https://"!=e.substring(0,8)&&"data:image"!=e.substring(0,10)},convert:function(e){if(t&&this.isRelativeUrl(e)){if(null==n){a=location.protocol+"//"+location.host;var i=(n=a+location.pathname).lastIndexOf("/");0<i&&(n=n.substring(0,i+1))}e="/"==e.charAt(0)?a+e:n+e}return e}}};mxPanningManager.prototype.damper=1/6,mxPanningManager.prototype.delay=10,mxPanningManager.prototype.handleMouseOut=!0,mxPanningManager.prototype.border=0,mxPopupMenu.prototype=new mxEventSource,mxPopupMenu.prototype.constructor=mxPopupMenu,mxPopupMenu.prototype.submenuImage=mxClient.imageBasePath+"/submenu.gif",mxPopupMenu.prototype.zIndex=10006,mxPopupMenu.prototype.factoryMethod=null,mxPopupMenu.prototype.useLeftButtonForPopup=!1,mxPopupMenu.prototype.enabled=!0,mxPopupMenu.prototype.itemCount=0,mxPopupMenu.prototype.autoExpand=!1,mxPopupMenu.prototype.smartSeparators=!1,mxPopupMenu.prototype.labels=!0,mxPopupMenu.prototype.init=function(){this.table=document.createElement("table"),this.table.className="mxPopupMenu",this.tbody=document.createElement("tbody"),this.table.appendChild(this.tbody),this.div=document.createElement("div"),this.div.className="mxPopupMenu",this.div.style.display="inline",this.div.style.zIndex=this.zIndex,this.div.appendChild(this.table),mxEvent.disableContextMenu(this.div)},mxPopupMenu.prototype.isEnabled=function(){return this.enabled},mxPopupMenu.prototype.setEnabled=function(e){this.enabled=e},mxPopupMenu.prototype.isPopupTrigger=function(e){return e.isPopupTrigger()||this.useLeftButtonForPopup&&mxEvent.isLeftMouseButton(e.getEvent())},mxPopupMenu.prototype.addItem=function(e,t,n,a,i,o){a=a||this,this.itemCount++,a.willAddSeparator&&(a.containsItems&&this.addSeparator(a,!0),a.willAddSeparator=!1),a.containsItems=!0;var s=document.createElement("tr");s.className="mxPopupMenuItem";var r=document.createElement("td");return r.className="mxPopupMenuIcon",null!=t?(i=document.createElement("img"),i.src=t,r.appendChild(i)):null!=i&&(t=document.createElement("div"),t.className=i,r.appendChild(t)),s.appendChild(r),this.labels&&(r=document.createElement("td"),r.className="mxPopupMenuItem"+(null==o||o?"":" disabled"),mxUtils.write(r,e),r.align="left",s.appendChild(r),e=document.createElement("td"),e.className="mxPopupMenuItem"+(null==o||o?"":" disabled"),e.style.paddingRight="6px",e.style.textAlign="right",s.appendChild(e),null==a.div&&this.createSubmenu(a)),a.tbody.appendChild(s),(null==o||o)&&(mxEvent.addGestureListeners(s,mxUtils.bind(this,function(e){this.eventReceiver=s,a.activeRow!=s&&a.activeRow!=a&&(null!=a.activeRow&&null!=a.activeRow.div.parentNode&&this.hideSubmenu(a),null!=s.div&&(this.showSubmenu(a,s),a.activeRow=s)),mxEvent.consume(e)}),mxUtils.bind(this,function(e){a.activeRow!=s&&a.activeRow!=a&&(null!=a.activeRow&&null!=a.activeRow.div.parentNode&&this.hideSubmenu(a),this.autoExpand&&null!=s.div&&(this.showSubmenu(a,s),a.activeRow=s)),s.className="mxPopupMenuItemHover"}),mxUtils.bind(this,function(e){this.eventReceiver==s&&(a.activeRow!=s&&this.hideMenu(),null!=n&&n(e)),this.eventReceiver=null,mxEvent.consume(e)})),mxEvent.addListener(s,"mouseout",mxUtils.bind(this,function(e){s.className="mxPopupMenuItem"}))),s},mxPopupMenu.prototype.createSubmenu=function(e){e.table=document.createElement("table"),e.table.className="mxPopupMenu",e.tbody=document.createElement("tbody"),e.table.appendChild(e.tbody),e.div=document.createElement("div"),e.div.className="mxPopupMenu",e.div.style.position="absolute",e.div.style.display="inline",e.div.style.zIndex=this.zIndex,e.div.appendChild(e.table);var t=document.createElement("img");t.setAttribute("src",this.submenuImage),td=e.firstChild.nextSibling.nextSibling,td.appendChild(t)},mxPopupMenu.prototype.showSubmenu=function(e,t){if(null!=t.div){t.div.style.left=e.div.offsetLeft+t.offsetLeft+t.offsetWidth-1+"px",t.div.style.top=e.div.offsetTop+t.offsetTop+"px",document.body.appendChild(t.div);var n=parseInt(t.div.offsetLeft),a=parseInt(t.div.offsetWidth),i=document.body,o=document.documentElement;n+a>(i.scrollLeft||o.scrollLeft)+(i.clientWidth||o.clientWidth)&&(t.div.style.left=e.div.offsetLeft-a+(mxClient.IS_IE?6:-6)+"px"),mxUtils.fit(t.div)}},mxPopupMenu.prototype.addSeparator=function(e,t){if(e=e||this,this.smartSeparators&&!t)e.willAddSeparator=!0;else if(null!=e.tbody){e.willAddSeparator=!1;var n=document.createElement("tr"),a=document.createElement("td");a.className="mxPopupMenuIcon",a.style.padding="0 0 0 0px",n.appendChild(a),(a=document.createElement("td")).style.padding="0 0 0 0px",a.setAttribute("colSpan","2");var i=document.createElement("hr");i.setAttribute("size","1"),a.appendChild(i),n.appendChild(a),e.tbody.appendChild(n)}},mxPopupMenu.prototype.popup=function(e,t,n,a){if(null!=this.div&&null!=this.tbody&&null!=this.factoryMethod){for(this.div.style.left=e+"px",this.div.style.top=t+"px";null!=this.tbody.firstChild;)mxEvent.release(this.tbody.firstChild),this.tbody.removeChild(this.tbody.firstChild);this.itemCount=0,this.factoryMethod(this,n,a),0<this.itemCount&&(this.showMenu(),this.fireEvent(new mxEventObject(mxEvent.SHOW)))}},mxPopupMenu.prototype.isMenuShowing=function(){return null!=this.div&&this.div.parentNode==document.body},mxPopupMenu.prototype.showMenu=function(){9<=document.documentMode&&(this.div.style.filter="none"),document.body.appendChild(this.div),mxUtils.fit(this.div)},mxPopupMenu.prototype.hideMenu=function(){null!=this.div&&(null!=this.div.parentNode&&this.div.parentNode.removeChild(this.div),this.hideSubmenu(this),this.containsItems=!1)},mxPopupMenu.prototype.hideSubmenu=function(e){null!=e.activeRow&&(this.hideSubmenu(e.activeRow),null!=e.activeRow.div.parentNode&&e.activeRow.div.parentNode.removeChild(e.activeRow.div),e.activeRow=null)},mxPopupMenu.prototype.destroy=function(){null!=this.div&&(mxEvent.release(this.div),null!=this.div.parentNode&&this.div.parentNode.removeChild(this.div),this.div=null)},mxAutoSaveManager.prototype=new mxEventSource,mxAutoSaveManager.prototype.constructor=mxAutoSaveManager,mxAutoSaveManager.prototype.graph=null,mxAutoSaveManager.prototype.autoSaveDelay=10,mxAutoSaveManager.prototype.autoSaveThrottle=2,mxAutoSaveManager.prototype.autoSaveThreshold=5,mxAutoSaveManager.prototype.ignoredChanges=0,mxAutoSaveManager.prototype.lastSnapshot=0,mxAutoSaveManager.prototype.enabled=!0,mxAutoSaveManager.prototype.changeHandler=null,mxAutoSaveManager.prototype.isEnabled=function(){return this.enabled},mxAutoSaveManager.prototype.setEnabled=function(e){this.enabled=e},mxAutoSaveManager.prototype.setGraph=function(e){null!=this.graph&&this.graph.getModel().removeListener(this.changeHandler),this.graph=e,null!=this.graph&&this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler)},mxAutoSaveManager.prototype.save=function(){},mxAutoSaveManager.prototype.graphModelChanged=function(e){(e=((new Date).getTime()-this.lastSnapshot)/1e3)>this.autoSaveDelay||this.ignoredChanges>=this.autoSaveThreshold&&e>this.autoSaveThrottle?(this.save(),this.reset()):this.ignoredChanges++},mxAutoSaveManager.prototype.reset=function(){this.lastSnapshot=(new Date).getTime(),this.ignoredChanges=0},mxAutoSaveManager.prototype.destroy=function(){this.setGraph(null)},mxAnimation.prototype=new mxEventSource,mxAnimation.prototype.constructor=mxAnimation,mxAnimation.prototype.delay=null,mxAnimation.prototype.thread=null,mxAnimation.prototype.startAnimation=function(){null==this.thread&&(this.thread=window.setInterval(mxUtils.bind(this,this.updateAnimation),this.delay))},mxAnimation.prototype.updateAnimation=function(){this.fireEvent(new mxEventObject(mxEvent.EXECUTE))},mxAnimation.prototype.stopAnimation=function(){null!=this.thread&&(window.clearInterval(this.thread),this.thread=null,this.fireEvent(new mxEventObject(mxEvent.DONE)))},mxMorphing.prototype=new mxAnimation,mxMorphing.prototype.constructor=mxMorphing,mxMorphing.prototype.graph=null,mxMorphing.prototype.steps=null,mxMorphing.prototype.step=0,mxMorphing.prototype.ease=null,mxMorphing.prototype.cells=null,mxMorphing.prototype.updateAnimation=function(){var e=new mxCellStatePreview(this.graph);if(null!=this.cells)for(var t=0;t<this.cells.length;t++)this.animateCell(cells[t],e,!1);else this.animateCell(this.graph.getModel().getRoot(),e,!0);this.show(e),(e.isEmpty()||this.step++>=this.steps)&&this.stopAnimation()},mxMorphing.prototype.show=function(e){e.show()},mxMorphing.prototype.animateCell=function(e,t,n){var a=this.graph.getView().getState(e),i=null;if(null!=a&&(i=this.getDelta(a),this.graph.getModel().isVertex(e)&&(0!=i.x||0!=i.y))){var o=this.graph.view.getTranslate(),s=this.graph.view.getScale();i.x+=o.x*s,i.y+=o.y*s,t.moveState(a,-i.x/this.ease,-i.y/this.ease)}if(n&&!this.stopRecursion(a,i))for(a=this.graph.getModel().getChildCount(e),i=0;i<a;i++)this.animateCell(this.graph.getModel().getChildAt(e,i),t,n)},mxMorphing.prototype.stopRecursion=function(e,t){return null!=t&&(0!=t.x||0!=t.y)},mxMorphing.prototype.getDelta=function(e){var t=this.getOriginForCell(e.cell),n=this.graph.getView().getTranslate(),a=this.graph.getView().getScale();return e=new mxPoint(e.x/a-n.x,e.y/a-n.y),new mxPoint((t.x-e.x)*a,(t.y-e.y)*a)},mxMorphing.prototype.getOriginForCell=function(e){var t=null;return null!=e&&(t=this.getOriginForCell(this.graph.getModel().getParent(e)),null!=(e=this.graph.getCellGeometry(e))&&(t.x+=e.x,t.y+=e.y)),null==t&&(t=this.graph.view.getTranslate(),t=new mxPoint(-t.x,-t.y)),t},mxImageBundle.prototype.images=null,mxImageBundle.prototype.images=null,mxImageBundle.prototype.putImage=function(e,t,n){this.images[e]={value:t,fallback:n}},mxImageBundle.prototype.getImage=function(e){var t=null;return null!=e&&null!=(e=this.images[e])&&(t=this.alt?e.fallback:e.value),t},mxImageExport.prototype.includeOverlays=!1,mxImageExport.prototype.drawState=function(e,t){null!=e&&(this.visitStatesRecursive(e,t,this.drawCellState),this.includeOverlays&&this.visitStatesRecursive(e,t,this.drawOverlays))},mxImageExport.prototype.visitStatesRecursive=function(e,t,n){if(null!=e){n(e,t);for(var a=e.view.graph,i=a.model.getChildCount(e.cell),o=0;o<i;o++){var s=a.view.getState(a.model.getChildAt(e.cell,o));this.visitStatesRecursive(s,t,n)}}},mxImageExport.prototype.drawCellState=function(e,t){e.shape instanceof mxShape&&(t.save(),e.shape.paint(t),t.restore()),null!=e.text&&(t.save(),e.text.paint(t),t.restore())},mxImageExport.prototype.drawOverlays=function(e,t){null!=e.overlays&&e.overlays.visit(function(e,n){n instanceof mxShape&&n.paint(t)})},mxAbstractCanvas2D.prototype.state=null,mxAbstractCanvas2D.prototype.states=null,mxAbstractCanvas2D.prototype.path=null,mxAbstractCanvas2D.prototype.rotateHtml=!0,mxAbstractCanvas2D.prototype.lastX=0,mxAbstractCanvas2D.prototype.lastY=0,mxAbstractCanvas2D.prototype.moveOp="M",mxAbstractCanvas2D.prototype.lineOp="L",mxAbstractCanvas2D.prototype.quadOp="Q",mxAbstractCanvas2D.prototype.curveOp="C",mxAbstractCanvas2D.prototype.closeOp="Z",mxAbstractCanvas2D.prototype.pointerEvents=!1,mxAbstractCanvas2D.prototype.createUrlConverter=function(){return new mxUrlConverter},mxAbstractCanvas2D.prototype.reset=function(){this.state=this.createState(),this.states=[]},mxAbstractCanvas2D.prototype.createState=function(){return{dx:0,dy:0,scale:1,alpha:1,fillColor:null,fillAlpha:1,gradientColor:null,gradientAlpha:1,gradientDirection:null,strokeColor:null,strokeWidth:1,dashed:!1,dashPattern:"3 3",lineCap:"flat",lineJoin:"miter",miterLimit:10,fontColor:"#000000",fontBackgroundColor:null,fontBorderColor:null,fontSize:mxConstants.DEFAULT_FONTSIZE,fontFamily:mxConstants.DEFAULT_FONTFAMILY,fontStyle:0,shadow:!1,shadowColor:mxConstants.SHADOWCOLOR,shadowAlpha:mxConstants.SHADOW_OPACITY,shadowDx:mxConstants.SHADOW_OFFSET_X,shadowDy:mxConstants.SHADOW_OFFSET_Y,rotation:0,rotationCx:0,rotationCy:0}},mxAbstractCanvas2D.prototype.format=function(e){return Math.round(parseFloat(e))},mxAbstractCanvas2D.prototype.addOp=function(){if(null!=this.path&&(this.path.push(arguments[0]),2<arguments.length))for(var e=this.state,t=2;t<arguments.length;t+=2)this.lastX=arguments[t-1],this.lastY=arguments[t],this.path.push(this.format((this.lastX+e.dx)*e.scale)),this.path.push(this.format((this.lastY+e.dy)*e.scale))},mxAbstractCanvas2D.prototype.rotatePoint=function(e,t,n,a,i){return n*=Math.PI/180,mxUtils.getRotatedPoint(new mxPoint(e,t),Math.cos(n),Math.sin(n),new mxPoint(a,i))},mxAbstractCanvas2D.prototype.save=function(){this.states.push(this.state),this.state=mxUtils.clone(this.state)},mxAbstractCanvas2D.prototype.restore=function(){this.state=this.states.pop()},mxAbstractCanvas2D.prototype.scale=function(e){this.state.scale*=e,this.state.strokeWidth*=e},mxAbstractCanvas2D.prototype.translate=function(e,t){this.state.dx+=e,this.state.dy+=t},mxAbstractCanvas2D.prototype.setAlpha=function(e){this.state.alpha=e},mxAbstractCanvas2D.prototype.setFillColor=function(e){e==mxConstants.NONE&&(e=null),this.state.fillColor=e,this.state.gradientColor=null},mxAbstractCanvas2D.prototype.setGradient=function(e,t,n,a,i,o,s,r,l){(n=this.state).fillColor=e,n.fillAlpha=null!=r?r:1,n.gradientColor=t,n.gradientAlpha=null!=l?l:1,n.gradientDirection=s},mxAbstractCanvas2D.prototype.setStrokeColor=function(e){e==mxConstants.NONE&&(e=null),this.state.strokeColor=e},mxAbstractCanvas2D.prototype.setStrokeWidth=function(e){this.state.strokeWidth=e},mxAbstractCanvas2D.prototype.setDashed=function(e){this.state.dashed=e},mxAbstractCanvas2D.prototype.setDashPattern=function(e){this.state.dashPattern=e},mxAbstractCanvas2D.prototype.setLineCap=function(e){this.state.lineCap=e},mxAbstractCanvas2D.prototype.setLineJoin=function(e){this.state.lineJoin=e},mxAbstractCanvas2D.prototype.setMiterLimit=function(e){this.state.miterLimit=e},mxAbstractCanvas2D.prototype.setFontColor=function(e){e==mxConstants.NONE&&(e=null),this.state.fontColor=e},mxAbstractCanvas2D.prototype.setFontBackgroundColor=function(e){e==mxConstants.NONE&&(e=null),this.state.fontBackgroundColor=e},mxAbstractCanvas2D.prototype.setFontBorderColor=function(e){e==mxConstants.NONE&&(e=null),this.state.fontBorderColor=e},mxAbstractCanvas2D.prototype.setFontSize=function(e){this.state.fontSize=e},mxAbstractCanvas2D.prototype.setFontFamily=function(e){this.state.fontFamily=e},mxAbstractCanvas2D.prototype.setFontStyle=function(e){null==e&&(e=0),this.state.fontStyle=e},mxAbstractCanvas2D.prototype.setShadow=function(e){this.state.shadow=e},mxAbstractCanvas2D.prototype.setShadowColor=function(e){e==mxConstants.NONE&&(e=null),this.state.shadowColor=e},mxAbstractCanvas2D.prototype.setShadowAlpha=function(e){this.state.shadowAlpha=e},mxAbstractCanvas2D.prototype.setShadowOffset=function(e,t){this.state.shadowDx=e,this.state.shadowDy=t},mxAbstractCanvas2D.prototype.begin=function(){this.lastY=this.lastX=0,this.path=[]},mxAbstractCanvas2D.prototype.moveTo=function(e,t){this.addOp(this.moveOp,e,t)},mxAbstractCanvas2D.prototype.lineTo=function(e,t){this.addOp(this.lineOp,e,t)},mxAbstractCanvas2D.prototype.quadTo=function(e,t,n,a){this.addOp(this.quadOp,e,t,n,a)},mxAbstractCanvas2D.prototype.curveTo=function(e,t,n,a,i,o){this.addOp(this.curveOp,e,t,n,a,i,o)},mxAbstractCanvas2D.prototype.arcTo=function(e,t,n,a,i,o,s){for(e=mxUtils.arcToCurves(this.lastX,this.lastY,e,t,n,a,i,o,s),t=0;t<e.length;t+=6)this.curveTo(e[t],e[t+1],e[t+2],e[t+3],e[t+4],e[t+5])},mxAbstractCanvas2D.prototype.close=function(e,t,n,a,i,o){this.addOp(this.closeOp)},mxAbstractCanvas2D.prototype.end=function(){},mxUtils.extend(mxXmlCanvas2D,mxAbstractCanvas2D),mxXmlCanvas2D.prototype.textEnabled=!0,mxXmlCanvas2D.prototype.compressed=!0,mxXmlCanvas2D.prototype.writeDefaults=function(){var e;(e=this.createElement("fontfamily")).setAttribute("family",mxConstants.DEFAULT_FONTFAMILY),this.root.appendChild(e),(e=this.createElement("fontsize")).setAttribute("size",mxConstants.DEFAULT_FONTSIZE),this.root.appendChild(e),(e=this.createElement("shadowcolor")).setAttribute("color",mxConstants.SHADOWCOLOR),this.root.appendChild(e),(e=this.createElement("shadowalpha")).setAttribute("alpha",mxConstants.SHADOW_OPACITY),this.root.appendChild(e),(e=this.createElement("shadowoffset")).setAttribute("dx",mxConstants.SHADOW_OFFSET_X),e.setAttribute("dy",mxConstants.SHADOW_OFFSET_Y),this.root.appendChild(e)},mxXmlCanvas2D.prototype.format=function(e){return parseFloat(parseFloat(e).toFixed(2))},mxXmlCanvas2D.prototype.createElement=function(e){return this.root.ownerDocument.createElement(e)},mxXmlCanvas2D.prototype.save=function(){this.compressed&&mxAbstractCanvas2D.prototype.save.apply(this,arguments),this.root.appendChild(this.createElement("save"))},mxXmlCanvas2D.prototype.restore=function(){this.compressed&&mxAbstractCanvas2D.prototype.restore.apply(this,arguments),this.root.appendChild(this.createElement("restore"))},mxXmlCanvas2D.prototype.scale=function(e){if(this.compressed){if(this.state.scale==e)return;mxAbstractCanvas2D.prototype.setAlpha.apply(this,arguments)}var t=this.createElement("scale");t.setAttribute("scale",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.translate=function(e,t){var n=this.createElement("translate");n.setAttribute("dx",this.format(e)),n.setAttribute("dy",this.format(t)),this.root.appendChild(n)},mxXmlCanvas2D.prototype.rotate=function(e,t,n,a,i){var o=this.createElement("rotate");(0!=e||t||n)&&(o.setAttribute("theta",this.format(e)),o.setAttribute("flipH",t?"1":"0"),o.setAttribute("flipV",n?"1":"0"),o.setAttribute("cx",this.format(a)),o.setAttribute("cy",this.format(i)),this.root.appendChild(o))},mxXmlCanvas2D.prototype.setAlpha=function(e){if(this.compressed){if(this.state.alpha==e)return;mxAbstractCanvas2D.prototype.setAlpha.apply(this,arguments)}var t=this.createElement("alpha");t.setAttribute("alpha",this.format(e)),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setFillColor=function(e){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.fillColor==e)return;mxAbstractCanvas2D.prototype.setFillColor.apply(this,arguments)}var t=this.createElement("fillcolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setGradient=function(e,t,n,a,i,o,s,r,l){if(null!=e&&null!=t){mxAbstractCanvas2D.prototype.setGradient.apply(this,arguments);var d=this.createElement("gradient");d.setAttribute("c1",e),d.setAttribute("c2",t),d.setAttribute("x",this.format(n)),d.setAttribute("y",this.format(a)),d.setAttribute("w",this.format(i)),d.setAttribute("h",this.format(o)),null!=s&&d.setAttribute("direction",s),null!=r&&d.setAttribute("alpha1",r),null!=l&&d.setAttribute("alpha2",l),this.root.appendChild(d)}},mxXmlCanvas2D.prototype.setStrokeColor=function(e){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.strokeColor==e)return;mxAbstractCanvas2D.prototype.setStrokeColor.apply(this,arguments)}var t=this.createElement("strokecolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setStrokeWidth=function(e){if(this.compressed){if(this.state.strokeWidth==e)return;mxAbstractCanvas2D.prototype.setStrokeWidth.apply(this,arguments)}var t=this.createElement("strokewidth");t.setAttribute("width",this.format(e)),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setDashed=function(e){if(this.compressed){if(this.state.dashed==e)return;mxAbstractCanvas2D.prototype.setDashed.apply(this,arguments)}var t=this.createElement("dashed");t.setAttribute("dashed",e?"1":"0"),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setDashPattern=function(e){if(this.compressed){if(this.state.dashPattern==e)return;mxAbstractCanvas2D.prototype.setDashPattern.apply(this,arguments)}var t=this.createElement("dashpattern");t.setAttribute("pattern",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setLineCap=function(e){if(this.compressed){if(this.state.lineCap==e)return;mxAbstractCanvas2D.prototype.setLineCap.apply(this,arguments)}var t=this.createElement("linecap");t.setAttribute("cap",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setLineJoin=function(e){if(this.compressed){if(this.state.lineJoin==e)return;mxAbstractCanvas2D.prototype.setLineJoin.apply(this,arguments)}var t=this.createElement("linejoin");t.setAttribute("join",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setMiterLimit=function(e){if(this.compressed){if(this.state.miterLimit==e)return;mxAbstractCanvas2D.prototype.setMiterLimit.apply(this,arguments)}var t=this.createElement("miterlimit");t.setAttribute("limit",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setFontColor=function(e){if(this.textEnabled){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.fontColor==e)return;mxAbstractCanvas2D.prototype.setFontColor.apply(this,arguments)}var t=this.createElement("fontcolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontBackgroundColor=function(e){if(this.textEnabled){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.fontBackgroundColor==e)return;mxAbstractCanvas2D.prototype.setFontBackgroundColor.apply(this,arguments)}var t=this.createElement("fontbackgroundcolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontBorderColor=function(e){if(this.textEnabled){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.fontBorderColor==e)return;mxAbstractCanvas2D.prototype.setFontBorderColor.apply(this,arguments)}var t=this.createElement("fontbordercolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontSize=function(e){if(this.textEnabled){if(this.compressed){if(this.state.fontSize==e)return;mxAbstractCanvas2D.prototype.setFontSize.apply(this,arguments)}var t=this.createElement("fontsize");t.setAttribute("size",e),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontFamily=function(e){if(this.textEnabled){if(this.compressed){if(this.state.fontFamily==e)return;mxAbstractCanvas2D.prototype.setFontFamily.apply(this,arguments)}var t=this.createElement("fontfamily");t.setAttribute("family",e),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontStyle=function(e){if(this.textEnabled){if(null==e&&(e=0),this.compressed){if(this.state.fontStyle==e)return;mxAbstractCanvas2D.prototype.setFontStyle.apply(this,arguments)}var t=this.createElement("fontstyle");t.setAttribute("style",e),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setShadow=function(e){if(this.compressed){if(this.state.shadow==e)return;mxAbstractCanvas2D.prototype.setShadow.apply(this,arguments)}var t=this.createElement("shadow");t.setAttribute("enabled",e?"1":"0"),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setShadowColor=function(e){if(this.compressed){if(e==mxConstants.NONE&&(e=null),this.state.shadowColor==e)return;mxAbstractCanvas2D.prototype.setShadowColor.apply(this,arguments)}var t=this.createElement("shadowcolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setShadowAlpha=function(e){if(this.compressed){if(this.state.shadowAlpha==e)return;mxAbstractCanvas2D.prototype.setShadowAlpha.apply(this,arguments)}var t=this.createElement("shadowalpha");t.setAttribute("alpha",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setShadowOffset=function(e,t){if(this.compressed){if(this.state.shadowDx==e&&this.state.shadowDy==t)return;mxAbstractCanvas2D.prototype.setShadowOffset.apply(this,arguments)}var n=this.createElement("shadowoffset");n.setAttribute("dx",e),n.setAttribute("dy",t),this.root.appendChild(n)},mxXmlCanvas2D.prototype.rect=function(e,t,n,a){var i=this.createElement("rect");i.setAttribute("x",this.format(e)),i.setAttribute("y",this.format(t)),i.setAttribute("w",this.format(n)),i.setAttribute("h",this.format(a)),this.root.appendChild(i)},mxXmlCanvas2D.prototype.roundrect=function(e,t,n,a,i,o){var s=this.createElement("roundrect");s.setAttribute("x",this.format(e)),s.setAttribute("y",this.format(t)),s.setAttribute("w",this.format(n)),s.setAttribute("h",this.format(a)),s.setAttribute("dx",this.format(i)),s.setAttribute("dy",this.format(o)),this.root.appendChild(s)},mxXmlCanvas2D.prototype.ellipse=function(e,t,n,a){var i=this.createElement("ellipse");i.setAttribute("x",this.format(e)),i.setAttribute("y",this.format(t)),i.setAttribute("w",this.format(n)),i.setAttribute("h",this.format(a)),this.root.appendChild(i)},mxXmlCanvas2D.prototype.image=function(e,t,n,a,i,o,s,r){i=this.converter.convert(i);var l=this.createElement("image");l.setAttribute("x",this.format(e)),l.setAttribute("y",this.format(t)),l.setAttribute("w",this.format(n)),l.setAttribute("h",this.format(a)),l.setAttribute("src",i),l.setAttribute("aspect",o?"1":"0"),l.setAttribute("flipH",s?"1":"0"),l.setAttribute("flipV",r?"1":"0"),this.root.appendChild(l)},mxXmlCanvas2D.prototype.begin=function(){this.root.appendChild(this.createElement("begin")),this.lastY=this.lastX=0},mxXmlCanvas2D.prototype.moveTo=function(e,t){var n=this.createElement("move");n.setAttribute("x",this.format(e)),n.setAttribute("y",this.format(t)),this.root.appendChild(n),this.lastX=e,this.lastY=t},mxXmlCanvas2D.prototype.lineTo=function(e,t){var n=this.createElement("line");n.setAttribute("x",this.format(e)),n.setAttribute("y",this.format(t)),this.root.appendChild(n),this.lastX=e,this.lastY=t},mxXmlCanvas2D.prototype.quadTo=function(e,t,n,a){var i=this.createElement("quad");i.setAttribute("x1",this.format(e)),i.setAttribute("y1",this.format(t)),i.setAttribute("x2",this.format(n)),i.setAttribute("y2",this.format(a)),this.root.appendChild(i),this.lastX=n,this.lastY=a},mxXmlCanvas2D.prototype.curveTo=function(e,t,n,a,i,o){var s=this.createElement("curve");s.setAttribute("x1",this.format(e)),s.setAttribute("y1",this.format(t)),s.setAttribute("x2",this.format(n)),s.setAttribute("y2",this.format(a)),s.setAttribute("x3",this.format(i)),s.setAttribute("y3",this.format(o)),this.root.appendChild(s),this.lastX=i,this.lastY=o},mxXmlCanvas2D.prototype.close=function(){this.root.appendChild(this.createElement("close"))},mxXmlCanvas2D.prototype.text=function(e,t,n,a,i,o,s,r,l,d,c,m){if(this.textEnabled&&null!=i){mxUtils.isNode(i)&&(i=mxUtils.getOuterHtml(i));var u=this.createElement("text");u.setAttribute("x",this.format(e)),u.setAttribute("y",this.format(t)),u.setAttribute("w",this.format(n)),u.setAttribute("h",this.format(a)),u.setAttribute("str",i),null!=o&&u.setAttribute("align",o),null!=s&&u.setAttribute("valign",s),u.setAttribute("wrap",r?"1":"0"),null==l&&(l=""),u.setAttribute("format",l),null!=d&&u.setAttribute("fill",d?"1":"0"),null!=c&&u.setAttribute("clip",c?"1":"0"),null!=m&&u.setAttribute("rotation",m),this.root.appendChild(u)}},mxXmlCanvas2D.prototype.stroke=function(){this.root.appendChild(this.createElement("stroke"))},mxXmlCanvas2D.prototype.fill=function(){this.root.appendChild(this.createElement("fill"))},mxXmlCanvas2D.prototype.fillAndStroke=function(){this.root.appendChild(this.createElement("fillstroke"))},mxUtils.extend(mxSvgCanvas2D,mxAbstractCanvas2D),mxSvgCanvas2D.prototype.node=null,mxSvgCanvas2D.prototype.matchHtmlAlignment=!0,mxSvgCanvas2D.prototype.textEnabled=!0,mxSvgCanvas2D.prototype.foEnabled=!0,mxSvgCanvas2D.prototype.strokeTolerance=0,mxSvgCanvas2D.prototype.refCount=0,mxSvgCanvas2D.prototype.blockImagePointerEvents=!1,mxSvgCanvas2D.prototype.reset=function(){mxAbstractCanvas2D.prototype.reset.apply(this,arguments),this.gradients=[]},mxSvgCanvas2D.prototype.createStyle=function(e){return(e=this.createElement("style")).setAttribute("type","text/css"),mxUtils.write(e,"svg{font-family:"+mxConstants.DEFAULT_FONTFAMILY+";font-size:"+mxConstants.DEFAULT_FONTSIZE+";fill:none;stroke-miterlimit:10}"),e},mxSvgCanvas2D.prototype.createElement=function(e,t){if(null!=this.root.ownerDocument.createElementNS)return this.root.ownerDocument.createElementNS(t||mxConstants.NS_SVG,e);var n=this.root.ownerDocument.createElement(e);return null!=t&&n.setAttribute("xmlns",t),n},mxSvgCanvas2D.prototype.createGradientId=function(e,t,n,a,i){return"#"==e.charAt(0)&&(e=e.substring(1)),"#"==t.charAt(0)&&(t=t.substring(1)),e=e.toLowerCase()+"-"+n,t=t.toLowerCase()+"-"+a,n=null,null==i||i==mxConstants.DIRECTION_SOUTH?n="s":i==mxConstants.DIRECTION_EAST?n="e":(a=e,e=t,t=a,i==mxConstants.DIRECTION_NORTH?n="s":i==mxConstants.DIRECTION_WEST&&(n="e")),"mx-gradient-"+e+"-"+t+"-"+n},mxSvgCanvas2D.prototype.getSvgGradient=function(e,t,n,a,i){var o=this.createGradientId(e,t,n,a,i),s=this.gradients[o];if(null==s){var r=this.root.ownerSVGElement,l=0,d=o+"-"+l;if(null!=r)for(s=r.ownerDocument.getElementById(d);null!=s&&s.ownerSVGElement!=r;)d=o+"-"+l++,s=r.ownerDocument.getElementById(d);else d="id"+ ++this.refCount;null==s&&((s=this.createSvgGradient(e,t,n,a,i)).setAttribute("id",d),null!=this.defs?this.defs.appendChild(s):r.appendChild(s)),this.gradients[o]=s}return s.getAttribute("id")},mxSvgCanvas2D.prototype.createSvgGradient=function(e,t,n,a,i){var o=this.createElement("linearGradient");return o.setAttribute("x1","0%"),o.setAttribute("y1","0%"),o.setAttribute("x2","0%"),o.setAttribute("y2","0%"),null==i||i==mxConstants.DIRECTION_SOUTH?o.setAttribute("y2","100%"):i==mxConstants.DIRECTION_EAST?o.setAttribute("x2","100%"):i==mxConstants.DIRECTION_NORTH?o.setAttribute("y1","100%"):i==mxConstants.DIRECTION_WEST&&o.setAttribute("x1","100%"),n=1>n?";stop-opacity:"+n:"",(i=this.createElement("stop")).setAttribute("offset","0%"),i.setAttribute("style","stop-color:"+e+n),o.appendChild(i),n=1>a?";stop-opacity:"+a:"",(i=this.createElement("stop")).setAttribute("offset","100%"),i.setAttribute("style","stop-color:"+t+n),o.appendChild(i),o},mxSvgCanvas2D.prototype.addNode=function(e,t){var n=this.node,a=this.state;if(null!=n){if("path"==n.nodeName){if(!(null!=this.path&&0<this.path.length))return;n.setAttribute("d",this.path.join(" "))}e&&null!=a.fillColor?this.updateFill():this.styleEnabled||("ellipse"!=n.nodeName||!mxClient.IS_NS||mxClient.IS_GC||mxClient.IS_SF?n.setAttribute("fill","none"):n.setAttribute("fill","transparent"),e=!1),t&&null!=a.strokeColor?this.updateStroke():this.styleEnabled||n.setAttribute("stroke","none"),null!=a.transform&&0<a.transform.length&&n.setAttribute("transform",a.transform),a.shadow&&this.root.appendChild(this.createShadow(n)),0<this.strokeTolerance&&!e&&this.root.appendChild(this.createTolerance(n)),this.pointerEvents&&("path"!=n.nodeName||this.path[this.path.length-1]==this.closeOp)&&n.setAttribute("pointer-events","all"),this.root.appendChild(n)}},mxSvgCanvas2D.prototype.updateFill=function(){var e=this.state;1>e.alpha&&this.node.setAttribute("fill-opacity",e.alpha),null!=e.fillColor&&(null!=e.gradientColor?(e=this.getSvgGradient(e.fillColor,e.gradientColor,e.fillAlpha,e.gradientAlpha,e.gradientDirection),this.node.setAttribute("fill","url(#"+e+")")):this.node.setAttribute("fill",e.fillColor.toLowerCase()))},mxSvgCanvas2D.prototype.updateStroke=function(){var e=this.state;this.node.setAttribute("stroke",e.strokeColor.toLowerCase()),1>e.alpha&&this.node.setAttribute("stroke-opacity",e.alpha);var t=Math.max(1,this.format(e.strokeWidth*e.scale));1!=t&&this.node.setAttribute("stroke-width",t),"path"==this.node.nodeName&&this.updateStrokeAttributes(),e.dashed&&this.node.setAttribute("stroke-dasharray",this.createDashPattern(t))},mxSvgCanvas2D.prototype.updateStrokeAttributes=function(){var e=this.state;if(null!=e.lineJoin&&"miter"!=e.lineJoin&&this.node.setAttribute("stroke-linejoin",e.lineJoin),null!=e.lineCap){var t=e.lineCap;"flat"==t&&(t="butt"),"butt"!=t&&this.node.setAttribute("stroke-linecap",t)}null!=e.miterLimit&&(!this.styleEnabled||10!=e.miterLimit)&&this.node.setAttribute("stroke-miterlimit",e.miterLimit)},mxSvgCanvas2D.prototype.createDashPattern=function(e){var t=this.state.dashPattern.split(" "),n=[];if(0<t.length)for(var a=0;a<t.length;a++)n[a]=Number(t[a])*e;return n.join(" ")},mxSvgCanvas2D.prototype.createTolerance=function(e){e=e.cloneNode(!0);var t=parseFloat(e.getAttribute("stroke-width")||1)+this.strokeTolerance;return e.setAttribute("pointer-events","stroke"),e.setAttribute("visibility","hidden"),e.removeAttribute("stroke-dasharray"),e.setAttribute("stroke-width",t),e.setAttribute("fill","none"),e.setAttribute("stroke",mxClient.IS_OP?"none":"white"),e},mxSvgCanvas2D.prototype.createShadow=function(e){e=e.cloneNode(!0);var t=this.state;return"none"!=e.getAttribute("fill")&&e.setAttribute("fill",t.shadowColor),"none"!=e.getAttribute("stroke")&&e.setAttribute("stroke",t.shadowColor),e.setAttribute("transform","translate("+this.format(t.shadowDx*t.scale)+","+this.format(t.shadowDy*t.scale)+")"+(t.transform||"")),e.setAttribute("opacity",t.shadowAlpha),e},mxSvgCanvas2D.prototype.rotate=function(e,t,n,a,i){if(0!=e||t||n){var o=this.state;if(a+=o.dx,i+=o.dy,a*=o.scale,i*=o.scale,o.transform=o.transform||"",t&&n)e+=180;else if(t^n){var s=t?a:0,r=t?-1:1,l=n?i:0,d=n?-1:1;o.transform+="translate("+this.format(s)+","+this.format(l)+")scale("+this.format(r)+","+this.format(d)+")translate("+this.format(-s)+","+this.format(-l)+")"}(t?!n:n)&&(e*=-1),0!=e&&(o.transform+="rotate("+this.format(e)+","+this.format(a)+","+this.format(i)+")"),o.rotation+=e,o.rotationCx=a,o.rotationCy=i}},mxSvgCanvas2D.prototype.begin=function(){mxAbstractCanvas2D.prototype.begin.apply(this,arguments),this.node=this.createElement("path")},mxSvgCanvas2D.prototype.rect=function(e,t,n,a){var i=this.state,o=this.createElement("rect");o.setAttribute("x",this.format((e+i.dx)*i.scale)),o.setAttribute("y",this.format((t+i.dy)*i.scale)),o.setAttribute("width",this.format(n*i.scale)),o.setAttribute("height",this.format(a*i.scale)),this.node=o},mxSvgCanvas2D.prototype.roundrect=function(e,t,n,a,i,o){this.rect(e,t,n,a),0<i&&this.node.setAttribute("rx",this.format(i*this.state.scale)),0<o&&this.node.setAttribute("ry",this.format(o*this.state.scale))},mxSvgCanvas2D.prototype.ellipse=function(e,t,n,a){var i=this.state,o=this.createElement("ellipse");o.setAttribute("cx",Math.round((e+n/2+i.dx)*i.scale)),o.setAttribute("cy",Math.round((t+a/2+i.dy)*i.scale)),o.setAttribute("rx",n/2*i.scale),o.setAttribute("ry",a/2*i.scale),this.node=o},mxSvgCanvas2D.prototype.image=function(e,t,n,a,i,o,s,r){i=this.converter.convert(i),o=null==o||o,s=null!=s&&s,r=null!=r&&r;var l=this.state;e+=l.dx,t+=l.dy;var d=this.createElement("image");if(d.setAttribute("x",this.format(e*l.scale)),d.setAttribute("y",this.format(t*l.scale)),d.setAttribute("width",this.format(n*l.scale)),d.setAttribute("height",this.format(a*l.scale)),null==d.setAttributeNS?d.setAttribute("xlink:href",i):d.setAttributeNS(mxConstants.NS_XLINK,"href",i),o||d.setAttribute("preserveAspectRatio","none"),1>l.alpha&&d.setAttribute("opacity",l.alpha),i=this.state.transform||"",s||r){var c=o=1,m=0,u=0;s&&(o=-1,m=-n-2*e),r&&(c=-1,u=-a-2*t),i+="scale("+o+","+c+")translate("+m+","+u+")"}0<i.length&&d.setAttribute("transform",i),this.root.appendChild(d),this.blockImagePointerEvents&&(d.setAttribute("style","pointer-events:none"),(d=this.createElement("rect")).setAttribute("visibility","hidden"),d.setAttribute("pointer-events","fill"),d.setAttribute("x",this.format(e*l.scale)),d.setAttribute("y",this.format(t*l.scale)),d.setAttribute("width",this.format(n*l.scale)),d.setAttribute("height",this.format(a*l.scale)),this.root.appendChild(d))},mxSvgCanvas2D.prototype.createDiv=function(e,t,n,a,i){return n=this.state,a="display:inline-block;font-size:"+Math.round(n.fontSize)+"px;font-family:"+n.fontFamily+";color:"+n.fontColor+";line-height:"+Math.round(n.fontSize*mxConstants.LINE_HEIGHT)+"px;"+a,(n.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&(a+="font-weight:bold;"),(n.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&(a+="font-style:italic;"),(n.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&(a+="font-decoration:underline;"),t==mxConstants.ALIGN_CENTER?a+="text-align:center;":t==mxConstants.ALIGN_RIGHT&&(a+="text-align:right;"),t="",null!=n.fontBackgroundColor&&(t+="background-color:"+n.fontBackgroundColor+";"),null!=n.fontBorderColor&&(t+="border:1px solid "+n.fontBorderColor+";"),mxUtils.isNode(e)||(n=document.createElement("textarea"),n.innerHTML=e.replace(/&lt;/g,"&amp;lt;").replace(/&gt;/g,"&amp;gt;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),e=n.value,i?a+=t:0<t.length&&(e='<div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;'+t+'">'+e+"</div>")),!mxClient.IS_IE&&document.createElementNS?((i=document.createElementNS("http://www.w3.org/1999/xhtml","div")).setAttribute("style",a),mxUtils.isNode(e)?this.root.ownerDocument!=document?i.appendChild(e.cloneNode(!0)):i.appendChild(e):i.innerHTML=e,i):(mxUtils.isNode(e)&&this.root.ownerDocument!=document&&(e=e.outerHTML),e=e.replace(/<br>/g,"<br />").replace(/<hr>/g,"<hr />"),mxUtils.parseXml('<div xmlns="http://www.w3.org/1999/xhtml" style="'+a+'">'+e+"</div>").documentElement)},mxSvgCanvas2D.prototype.text=function(e,t,n,a,i,o,s,r,l,d,c,m){if(this.textEnabled&&null!=i){m=null!=m?m:0;var u=this.state;if(e+=u.dx,t+=u.dy,this.foEnabled&&"html"==l){var p="vertical-align:top;";if(c?(p+="overflow:hidden;",0<a&&(p+="max-height:"+Math.round(a)+"px;"),0<n&&(p+="width:"+Math.round(n)+"px;")):d&&(p+="width:"+Math.round(n)+"px;",0<a&&(p+="max-height:"+Math.round(a)+"px;")),r?(!c&&0<n&&(p+="width:"+Math.round(n)+"px;"),p+="white-space:normal;"):p+="white-space:nowrap;",r=this.createElement("g"),1>u.alpha&&r.setAttribute("opacity",u.alpha),(l=this.createElement("foreignObject")).setAttribute("pointer-events","all"),null!=(p=this.createDiv(i,o,s,p,d))){r.appendChild(l),this.root.appendChild(r);var g=0;if(mxClient.IS_IE&&!mxClient.IS_SVG){var h=document.createElement("div");h.style.cssText=p.getAttribute("style"),h.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",h.style.visibility="hidden",h.innerHTML=mxUtils.isNode(i)?i.outerHTML:i,document.body.appendChild(h),g=h.offsetWidth,a=mxClient.IS_QUIRKS&&0<a&&c?Math.min(a,h.offsetHeight+2):h.offsetHeight,h.parentNode.removeChild(h),l.appendChild(p)}else this.root.ownerDocument!=document?(p.style.visibility="hidden",document.body.appendChild(p),g=p.offsetWidth,a=p.offsetHeight,l.appendChild(p),p.style.visibility=""):(l.appendChild(p),g=p.offsetWidth,a=p.offsetHeight);n=d?Math.max(n,g):g,1>u.alpha&&r.setAttribute("opacity",u.alpha),d=i=0,o==mxConstants.ALIGN_CENTER?i-=n/2:o==mxConstants.ALIGN_RIGHT&&(i-=n),e+=i,s==mxConstants.ALIGN_MIDDLE?d-=a/2:s==mxConstants.ALIGN_BOTTOM&&(d-=a),t+=d,o=1!=u.scale?"scale("+u.scale+")":"",0!=u.rotation&&this.rotateHtml?(o+="rotate("+u.rotation+","+n/2+","+a/2+")",t=this.rotatePoint((e+n/2)*u.scale,(t+a/2)*u.scale,u.rotation,u.rotationCx,u.rotationCy),e=t.x-n*u.scale/2,t=t.y-a*u.scale/2):(e*=u.scale,t*=u.scale),0!=m&&(o+="rotate("+m+","+-i+","+-d+")"),r.setAttribute("transform","translate("+Math.round(e)+","+Math.round(t)+")"+o),l.setAttribute("width",Math.round(Math.max(1,n))),l.setAttribute("height",Math.round(Math.max(1,a)))}}else this.plainText(e,t,n,a,i,o,s,r,d,c,m)}},mxSvgCanvas2D.prototype.createClip=function(e,t,n,a){for(var i="mx-clip-"+(e=Math.round(e))+"-"+(t=Math.round(t))+"-"+(n=Math.round(n))+"-"+(a=Math.round(a)),o=0,s=i+"-"+o;null!=document.getElementById(s);)s=i+"-"+ ++o;return clip=this.createElement("clipPath"),clip.setAttribute("id",s),(i=this.createElement("rect")).setAttribute("x",e),i.setAttribute("y",t),i.setAttribute("width",n),i.setAttribute("height",a),clip.appendChild(i),clip},mxSvgCanvas2D.prototype.plainText=function(e,t,n,a,i,o,s,r,l,d,c){c=null!=c?c:0,r=this.state;var m=Math.round(r.fontSize),u=this.createElement("g"),p=r.transform||"";if(0!=c&&(p+="rotate("+c+","+this.format(e*r.scale)+","+this.format(t*r.scale)+")"),d&&0<n&&0<a){g=e;c=t,o==mxConstants.ALIGN_CENTER?g-=n/2:o==mxConstants.ALIGN_RIGHT&&(g-=n),s==mxConstants.ALIGN_MIDDLE?c-=a/2:s==mxConstants.ALIGN_BOTTOM&&(c-=a),c=this.createClip(g*r.scale-2,c*r.scale-2,n*r.scale+4,a*r.scale+4),null!=this.defs?this.defs.appendChild(c):this.root.appendChild(c),u.setAttribute("clip-path","url(#"+c.getAttribute("id")+")")}this.updateFont(u,o),"start"!=(c=o==mxConstants.ALIGN_RIGHT?"end":o==mxConstants.ALIGN_CENTER?"middle":"start")&&u.setAttribute("text-anchor",c),(!this.styleEnabled||m!=mxConstants.DEFAULT_FONTSIZE)&&u.setAttribute("font-size",Math.round(m*r.scale)+"px"),0<p.length&&u.setAttribute("transform",p),1>r.alpha&&u.setAttribute("opacity",r.alpha);var p=i.split("\n"),g=Math.round(m*mxConstants.LINE_HEIGHT),h=m+(p.length-1)*g;for(c=t+m-1,s==mxConstants.ALIGN_MIDDLE?(a=(this.matchHtmlAlignment&&d&&0<a?Math.min(h,a):h)/2,c-=a+1):s==mxConstants.ALIGN_BOTTOM&&(a=this.matchHtmlAlignment&&d&&0<a?Math.min(h,a):h,c-=a+2),a=0;a<p.length;a++)0<p[a].length&&0<mxUtils.trim(p[a]).length&&((d=this.createElement("text")).setAttribute("x",this.format(e*r.scale)),d.setAttribute("y",this.format(c*r.scale)),mxUtils.write(d,p[a]),u.appendChild(d)),c+=g;this.root.appendChild(u),this.addTextBackground(u,i,e,t,n,h,o,s,l)},mxSvgCanvas2D.prototype.updateFont=function(e){var t=this.state;e.setAttribute("fill",t.fontColor),(!this.styleEnabled||t.fontFamily!=mxConstants.DEFAULT_FONTFAMILY)&&e.setAttribute("font-family",t.fontFamily),(t.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&e.setAttribute("font-weight","bold"),(t.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&e.setAttribute("font-style","italic"),(t.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&e.setAttribute("text-decoration","underline")},mxSvgCanvas2D.prototype.addTextBackground=function(e,t,n,a,i,o,s,r,l){var d=this.state;if(null!=d.fontBackgroundColor||null!=d.fontBorderColor){var c=null;l?(s==mxConstants.ALIGN_CENTER?n-=i/2:s==mxConstants.ALIGN_RIGHT&&(n-=i),r==mxConstants.ALIGN_MIDDLE?a-=o/2:r==mxConstants.ALIGN_BOTTOM&&(a-=o),c=new mxRectangle((n+1)*d.scale,a*d.scale,(i-2)*d.scale,(o+2)*d.scale)):null!=e.getBBox&&this.root.ownerDocument==document?(c=e.getBBox(),t=mxClient.IS_IE&&mxClient.IS_SVG,c=new mxRectangle(c.x,c.y+(t?0:1),c.width,c.height+(t?1:0))):(c=document.createElement("div"),c.style.lineHeight=Math.round(d.fontSize*mxConstants.LINE_HEIGHT)+"px",c.style.fontSize=Math.round(d.fontSize)+"px",c.style.fontFamily=d.fontFamily,c.style.whiteSpace="nowrap",c.style.position="absolute",c.style.visibility="hidden",c.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",c.style.zoom="1",(d.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&(c.style.fontWeight="bold"),(d.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&(c.style.fontStyle="italic"),t=mxUtils.htmlEntities(t,!1),c.innerHTML=t.replace(/\n/g,"<br/>"),document.body.appendChild(c),i=c.offsetWidth,o=c.offsetHeight,c.parentNode.removeChild(c),s==mxConstants.ALIGN_CENTER?n-=i/2:s==mxConstants.ALIGN_RIGHT&&(n-=i),r==mxConstants.ALIGN_MIDDLE?a-=o/2:r==mxConstants.ALIGN_BOTTOM&&(a-=o),c=new mxRectangle((n+1)*d.scale,(a+2)*d.scale,i*d.scale,(o+1)*d.scale)),null!=c&&((t=this.createElement("rect")).setAttribute("fill",d.fontBackgroundColor||"none"),t.setAttribute("stroke",d.fontBorderColor||"none"),t.setAttribute("x",Math.floor(c.x-1)),t.setAttribute("y",Math.floor(c.y-1)),t.setAttribute("width",Math.ceil(c.width+2)),t.setAttribute("height",Math.ceil(c.height)),d=null!=d.fontBorderColor?Math.max(1,this.format(d.scale)):0,t.setAttribute("stroke-width",d),this.root.ownerDocument==document&&1==mxUtils.mod(d,2)&&t.setAttribute("transform","translate(0.5, 0.5)"),e.insertBefore(t,e.firstChild))}},mxSvgCanvas2D.prototype.stroke=function(){this.addNode(!1,!0)},mxSvgCanvas2D.prototype.fill=function(){this.addNode(!0,!1)},mxSvgCanvas2D.prototype.fillAndStroke=function(){this.addNode(!0,!0)};var mxVmlCanvas2D=function(e){mxAbstractCanvas2D.call(this),this.root=e};mxUtils.extend(mxVmlCanvas2D,mxAbstractCanvas2D),mxVmlCanvas2D.prototype.node=null,mxVmlCanvas2D.prototype.textEnabled=!0,mxVmlCanvas2D.prototype.moveOp="m",mxVmlCanvas2D.prototype.lineOp="l",mxVmlCanvas2D.prototype.curveOp="c",mxVmlCanvas2D.prototype.closeOp="x",mxVmlCanvas2D.prototype.rotatedHtmlBackground="",mxVmlCanvas2D.prototype.vmlScale=1,mxVmlCanvas2D.prototype.addNode=function(e,t){var n=this.node,a=this.state;if(null!=n){if("shape"==n.nodeName){if(!(null!=this.path&&0<this.path.length))return;n.path=this.path.join(" ")+" e",n.style.width=this.root.style.width,n.style.height=this.root.style.height,n.coordsize=parseInt(n.style.width)+" "+parseInt(n.style.height)}n.strokeweight=this.format(Math.max(1,a.strokeWidth*a.scale/this.vmlScale))+"px",a.shadow&&this.root.appendChild(this.createShadow(n,e&&null!=a.fillColor,t&&null!=a.strokeColor)),t&&null!=a.strokeColor?(n.stroked="true",n.strokecolor=a.strokeColor):n.stroked="false",n.appendChild(this.createStroke()),e&&null!=a.fillColor?n.appendChild(this.createFill()):!this.pointerEvents||"shape"==n.nodeName&&this.path[this.path.length-1]!=this.closeOp?n.filled="false":n.appendChild(this.createTransparentFill()),this.root.appendChild(n)}},mxVmlCanvas2D.prototype.createTransparentFill=function(){var e=document.createElement(mxClient.VML_PREFIX+":fill");return e.src=mxClient.imageBasePath+"/transparent.gif",e.type="tile",e},mxVmlCanvas2D.prototype.createFill=function(){var e=this.state,t=document.createElement(mxClient.VML_PREFIX+":fill");if(t.color=e.fillColor,null!=e.gradientColor){t.type="gradient",t.method="none",t.color2=e.gradientColor;var n=180-e.rotation,n=e.gradientDirection==mxConstants.DIRECTION_WEST?n-(90+("x"==this.root.style.flip?180:0)):e.gradientDirection==mxConstants.DIRECTION_EAST?n+(90+("x"==this.root.style.flip?180:0)):e.gradientDirection==mxConstants.DIRECTION_NORTH?n-(180+("y"==this.root.style.flip?-180:0)):n+("y"==this.root.style.flip?-180:0);"x"!=this.root.style.flip&&"y"!=this.root.style.flip||(n*=-1),t.angle=mxUtils.mod(n,360),t.opacity=100*e.alpha*e.fillAlpha+"%",t.setAttribute(mxClient.OFFICE_PREFIX+":opacity2",100*e.alpha*e.gradientAlpha+"%")}else 1>e.alpha&&(t.opacity=100*e.alpha+"%");return t},mxVmlCanvas2D.prototype.createStroke=function(){var e=this.state,t=document.createElement(mxClient.VML_PREFIX+":stroke");return t.endcap=e.lineCap||"flat",t.joinstyle=e.lineJoin||"miter",t.miterlimit=e.miterLimit||"10",1>e.alpha&&(t.opacity=100*e.alpha+"%"),e.dashed&&(t.dashstyle=this.getVmlDashStyle()),t},mxVmlCanvas2D.prototype.getVmlDashStyle=function(){var e="dash";if(null!=this.state.dashPattern){var t=this.state.dashPattern.split(" ");0<t.length&&1==t[0]&&(e="0 2")}return e},mxVmlCanvas2D.prototype.createShadow=function(e,t,n){var a=this.state,i=-a.rotation*(Math.PI/180),o=Math.cos(i),i=Math.sin(i),s=a.shadowDx*a.scale,r=a.shadowDy*a.scale;"x"==this.root.style.flip?s*=-1:"y"==this.root.style.flip&&(r*=-1);var l=e.cloneNode(!0);return l.style.marginLeft=Math.round(s*o-r*i)+"px",l.style.marginTop=Math.round(s*i+r*o)+"px",8==document.documentMode&&(l.strokeweight=e.strokeweight,"shape"==e.nodeName&&(l.path=this.path.join(" ")+" e",l.style.width=this.root.style.width,l.style.height=this.root.style.height,l.coordsize=parseInt(e.style.width)+" "+parseInt(e.style.height))),n?(l.strokecolor=a.shadowColor,l.appendChild(this.createShadowStroke())):l.stroked="false",t?l.appendChild(this.createShadowFill()):l.filled="false",l},mxVmlCanvas2D.prototype.createShadowFill=function(){var e=document.createElement(mxClient.VML_PREFIX+":fill");return e.color=this.state.shadowColor,e.opacity=100*this.state.alpha*this.state.shadowAlpha+"%",e},mxVmlCanvas2D.prototype.createShadowStroke=function(){var e=this.createStroke();return e.opacity=100*this.state.alpha*this.state.shadowAlpha+"%",e},mxVmlCanvas2D.prototype.rotate=function(e,t,n,a,i){t&&n?e+=180:t?this.root.style.flip="x":n&&(this.root.style.flip="y"),(t?!n:n)&&(e*=-1),this.root.style.rotation=e,this.state.rotation+=e,this.state.rotationCx=a,this.state.rotationCy=i},mxVmlCanvas2D.prototype.begin=function(){mxAbstractCanvas2D.prototype.begin.apply(this,arguments),this.node=document.createElement(mxClient.VML_PREFIX+":shape"),this.node.style.position="absolute"},mxVmlCanvas2D.prototype.quadTo=function(e,t,n,a){var i=this.state,o=(this.lastX+i.dx)*i.scale,s=(this.lastY+i.dy)*i.scale;e=(e+i.dx)*i.scale;var s=s+2/3*((t=(t+i.dy)*i.scale)-s),r=(n=(n+i.dx)*i.scale)+2/3*(e-n);t=(a=(a+i.dy)*i.scale)+2/3*(t-a),this.path.push("c "+this.format(o+2/3*(e-o))+" "+this.format(s)+" "+this.format(r)+" "+this.format(t)+" "+this.format(n)+" "+this.format(a)),this.lastX=n/i.scale-i.dx,this.lastY=a/i.scale-i.dy},mxVmlCanvas2D.prototype.createRect=function(e,t,n,a,i){var o=this.state;return e=document.createElement(e),e.style.position="absolute",e.style.left=this.format((t+o.dx)*o.scale)+"px",e.style.top=this.format((n+o.dy)*o.scale)+"px",e.style.width=this.format(a*o.scale)+"px",e.style.height=this.format(i*o.scale)+"px",e},mxVmlCanvas2D.prototype.rect=function(e,t,n,a){this.node=this.createRect(mxClient.VML_PREFIX+":rect",e,t,n,a)},mxVmlCanvas2D.prototype.roundrect=function(e,t,n,a,i,o){this.node=this.createRect(mxClient.VML_PREFIX+":roundrect",e,t,n,a),this.node.setAttribute("arcsize",Math.max(100*i/n,100*o/a)+"%")},mxVmlCanvas2D.prototype.ellipse=function(e,t,n,a){this.node=this.createRect(mxClient.VML_PREFIX+":oval",e,t,n,a)},mxVmlCanvas2D.prototype.image=function(e,t,n,a,i,o,s,r){var l=null;o?(l=this.createRect(mxClient.VML_PREFIX+":rect",e,t,n,a),l.stroked="false",e=document.createElement(mxClient.VML_PREFIX+":fill"),e.aspect=o?"atmost":"ignore",e.rotate="true",e.type="frame",e.src=i,l.appendChild(e)):(l=this.createRect(mxClient.VML_PREFIX+":image",e,t,n,a),l.src=i),s&&r?l.style.rotation="180":s?l.style.flip="x":r&&(l.style.flip="y"),1>this.state.alpha&&(l.style.filter+="alpha(opacity="+100*this.state.alpha+")"),this.root.appendChild(l)},mxVmlCanvas2D.prototype.createDiv=function(e,t,n,a){n=document.createElement("div");var i=this.state,o="";return null!=i.fontBackgroundColor&&(o+="background-color:"+i.fontBackgroundColor+";"),null!=i.fontBorderColor&&(o+="border:1px solid "+i.fontBorderColor+";"),mxUtils.isNode(e)?n.appendChild(e):0<o.length&&!a?(a=document.createElement("div"),a.style.cssText=o,a.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",a.style.zoom="1",a.innerHTML=e,n.appendChild(a)):(n.style.cssText=o,n.innerHTML=e),e=n.style,e.fontSize=Math.round(i.fontSize/this.vmlScale)+"px",e.fontFamily=i.fontFamily,e.color=i.fontColor,e.verticalAlign="top",e.textAlign=t||"left",e.lineHeight=Math.round(i.fontSize*mxConstants.LINE_HEIGHT/this.vmlScale)+"px",(i.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&(e.fontWeight="bold"),(i.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&(e.fontStyle="italic"),(i.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&(e.fontDecoration="underline"),n},mxVmlCanvas2D.prototype.text=function(e,t,n,a,i,o,s,r,l,d,c,m){if(this.textEnabled&&null!=i){var u=this.state;if("html"==l){null!=u.rotation&&(t=this.rotatePoint(e,t,u.rotation,u.rotationCx,u.rotationCy),e=t.x,t=t.y),8==document.documentMode?(e+=u.dx,t+=u.dy):(e*=u.scale,t*=u.scale),(l=8==document.documentMode?document.createElement(mxClient.VML_PREFIX+":group"):document.createElement("div")).style.position="absolute",l.style.display="inline",l.style.left=this.format(e)+"px",l.style.top=this.format(t)+"px",l.style.zoom=u.scale;var p=document.createElement("div");p.style.position="relative",p.style.display="inline";var g=(h=mxUtils.getAlignmentAsPoint(o,s)).x,h=h.y;if(i=this.createDiv(i,o,s,d),o=document.createElement("div"),r?(!c&&0<n&&(i.style.width=Math.round(n)+"px"),i.style.whiteSpace="normal"):i.style.whiteSpace="nowrap",r=u.rotation+(m||0),this.rotateHtml&&0!=r?(o.style.display="inline",o.style.zoom="1",o.appendChild(i),8==document.documentMode&&"DIV"!=this.root.nodeName?(p.appendChild(o),l.appendChild(p)):l.appendChild(o)):8==document.documentMode?(p.appendChild(i),l.appendChild(p)):(i.style.display="inline",l.appendChild(i)),"DIV"!=this.root.nodeName?(m=document.createElement(mxClient.VML_PREFIX+":rect"),m.stroked="false",m.filled="false",m.appendChild(l),this.root.appendChild(m)):this.root.appendChild(l),c?(i.style.overflow="hidden",0<n&&(i.style.width=Math.round(n)+"px"),0<a&&8==document.documentMode&&(i.style.maxHeight=Math.round(a)+"px")):d&&(i.style.width=n+"px",0<a&&(i.style.maxHeight=Math.round(a)+"px")),this.rotateHtml&&0!=r){n=r*(Math.PI/180),r=parseFloat(parseFloat(Math.cos(n)).toFixed(8)),m=parseFloat(parseFloat(Math.sin(-n)).toFixed(8)),0>(n%=2*Math.PI)&&(n+=2*Math.PI),(n%=Math.PI)>Math.PI/2&&(n=Math.PI-n),s=Math.cos(n);var v=Math.sin(n);8==document.documentMode&&(i.style.display="inline-block",o.style.display="inline-block",p.style.display="inline-block"),i.style.visibility="hidden",document.body.appendChild(i),n=i.offsetWidth,p=i.offsetHeight,mxClient.IS_QUIRKS&&(c||d)&&p>a&&(p=a,i.style.height=p+"px"),c=((a=p)-a*s+n*-v)/2-m*n*(g+.5)+r*a*(h+.5),d=(n-n*s+a*-v)/2+r*n*(g+.5)+m*a*(h+.5),"group"==l.nodeName&&"DIV"==this.root.nodeName?(g=document.createElement("div"),g.style.display="inline-block",g.style.position="absolute",g.style.left=this.format(e+(d-n/2)*u.scale)+"px",g.style.top=this.format(t+(c-a/2)*u.scale)+"px",l.parentNode.appendChild(g),g.appendChild(l)):(u=8==document.documentMode?1:u.scale,l.style.left=this.format(e+(d-n/2)*u)+"px",l.style.top=this.format(t+(c-a/2)*u)+"px"),o.style.filter="progid:DXImageTransform.Microsoft.Matrix(M11="+r+", M12="+m+", M21="+-m+", M22="+r+", sizingMethod='auto expand')",o.style.backgroundColor=this.rotatedHtmlBackground,1>this.state.alpha&&(o.style.filter+="alpha(opacity="+100*this.state.alpha+")"),i.style.visibility="",o.appendChild(i)}else 8!=document.documentMode?(i.style.verticalAlign="top",1>this.state.alpha&&(l.style.filter="alpha(opacity="+100*this.state.alpha+")"),u=i.parentNode,i.style.visibility="hidden",document.body.appendChild(i),n=i.offsetWidth,p=i.offsetHeight,mxClient.IS_QUIRKS&&c&&p>a&&(p=a,i.style.height=p+"px"),a=p,i.style.visibility="",u.appendChild(i),l.style.left=this.format(e+n*g*this.state.scale)+"px",l.style.top=this.format(t+a*h*this.state.scale)+"px"):(1>this.state.alpha&&(i.style.filter="alpha(opacity="+100*this.state.alpha+")"),p.style.left=100*g+"%",p.style.top=100*h+"%")}else this.plainText(e,t,n,a,mxUtils.htmlEntities(i,!1),o,s,r,l,d,c,m)}},mxVmlCanvas2D.prototype.plainText=function(e,t,n,a,i,o,s,r,l,d,c,m){e=(e+(a=this.state).dx)*a.scale,t=(t+a.dy)*a.scale,(n=document.createElement(mxClient.VML_PREFIX+":shape")).style.width="1px",n.style.height="1px",n.stroked="false",(d=document.createElement(mxClient.VML_PREFIX+":fill")).color=a.fontColor,d.opacity=100*a.alpha+"%",n.appendChild(d),(d=document.createElement(mxClient.VML_PREFIX+":path")).textpathok="true",d.v="m "+this.format(0)+" "+this.format(0)+" l "+this.format(1)+" "+this.format(0),n.appendChild(d),(d=document.createElement(mxClient.VML_PREFIX+":textpath")).style.cssText="v-text-align:"+o,d.style.align=o,d.style.fontFamily=a.fontFamily,d.string=i,d.on="true",o=Math.round(a.fontSize*a.scale/this.vmlScale),d.style.fontSize=o+"px",(a.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&(d.style.fontWeight="bold"),(a.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&(d.style.fontStyle="italic"),(a.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&(d.style.textDecoration="underline"),a=o+((i=i.split("\n")).length-1)*o*mxConstants.LINE_HEIGHT,o=i=0,s==mxConstants.ALIGN_BOTTOM?o=-a/2:s!=mxConstants.ALIGN_MIDDLE&&(o=a/2),null!=m&&(n.style.rotation=m,s=m*(Math.PI/180),i=Math.sin(s)*o,o*=Math.cos(s)),n.appendChild(d),n.style.left=this.format(e-i)+"px",n.style.top=this.format(t+o)+"px",this.root.appendChild(n)},mxVmlCanvas2D.prototype.stroke=function(){this.addNode(!1,!0)},mxVmlCanvas2D.prototype.fill=function(){this.addNode(!0,!1)},mxVmlCanvas2D.prototype.fillAndStroke=function(){this.addNode(!0,!0)},mxGuide.prototype.graph=null,mxGuide.prototype.states=null,mxGuide.prototype.horizontal=!0,mxGuide.prototype.vertical=!0,mxGuide.prototype.guideX=null,mxGuide.prototype.guideY=null,mxGuide.prototype.setStates=function(e){this.states=e},mxGuide.prototype.isEnabledForEvent=function(e){return!0},mxGuide.prototype.getGuideTolerance=function(){return this.graph.gridSize*this.graph.view.scale/2},mxGuide.prototype.createGuideShape=function(e){return e=new mxPolyline([],mxConstants.GUIDE_COLOR,mxConstants.GUIDE_STROKEWIDTH),e.isDashed=!0,e},mxGuide.prototype.move=function(e,t,n){if(null!=this.states&&(this.horizontal||this.vertical)&&null!=e&&null!=t){var a=this.graph.getView().translate,i=this.graph.getView().scale,o=t.x,s=t.y,r=!1,l=!1,d=b=this.getGuideTolerance(),c=b;(b=e.clone()).x+=t.x,b.y+=t.y;var m=b.x,u=b.x+b.width,p=b.getCenterX(),g=b.y,h=b.y+b.height,v=b.getCenterY();t=function(t){t+=this.graph.panDx;var n=!1;if(Math.abs(t-p)<d?(o=t-e.getCenterX(),d=Math.abs(t-p),n=!0):Math.abs(t-m)<d?(o=t-e.x,d=Math.abs(t-m),n=!0):Math.abs(t-u)<d&&(o=t-e.x-e.width,d=Math.abs(t-u),n=!0),n){null==this.guideX&&(this.guideX=this.createGuideShape(!0),this.guideX.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.guideX.pointerEvents=!1,this.guideX.init(this.graph.getView().getOverlayPane()));var a=this.graph.container;t-=this.graph.panDx,this.guideX.points=[new mxPoint(t,-this.graph.panDy),new mxPoint(t,a.scrollHeight-3-this.graph.panDy)]}r=r||n};for(var b=function(t){t+=this.graph.panDy;var n=!1;if(Math.abs(t-v)<c?(s=t-e.getCenterY(),c=Math.abs(t-v),n=!0):Math.abs(t-g)<c?(s=t-e.y,c=Math.abs(t-g),n=!0):Math.abs(t-h)<c&&(s=t-e.y-e.height,c=Math.abs(t-h),n=!0),n){null==this.guideY&&(this.guideY=this.createGuideShape(!1),this.guideY.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.guideY.pointerEvents=!1,this.guideY.init(this.graph.getView().getOverlayPane()));var a=this.graph.container;t-=this.graph.panDy,this.guideY.points=[new mxPoint(-this.graph.panDx,t),new mxPoint(a.scrollWidth-3-this.graph.panDx,t)]}l=l||n},f=0;f<this.states.length;f++){var E=this.states[f];null!=E&&(this.horizontal&&(t.call(this,E.getCenterX()),t.call(this,E.x),t.call(this,E.x+E.width)),this.vertical&&(b.call(this,E.getCenterY()),b.call(this,E.y),b.call(this,E.y+E.height)))}r||null==this.guideX?null!=this.guideX&&(this.guideX.node.style.visibility="visible",this.guideX.redraw()):this.guideX.node.style.visibility="hidden",l||null==this.guideY?null!=this.guideY&&(this.guideY.node.style.visibility="visible",this.guideY.redraw()):this.guideY.node.style.visibility="hidden",n&&(r||(n=e.x-(this.graph.snap(e.x/i-a.x)+a.x)*i,o=this.graph.snap(o/i)*i-n),l||(a=e.y-(this.graph.snap(e.y/i-a.y)+a.y)*i,s=this.graph.snap(s/i)*i-a)),t=new mxPoint(o,s)}return t},mxGuide.prototype.hide=function(){null!=this.guideX&&(this.guideX.node.style.visibility="hidden"),null!=this.guideY&&(this.guideY.node.style.visibility="hidden")},mxGuide.prototype.destroy=function(){null!=this.guideX&&(this.guideX.destroy(),this.guideX=null),null!=this.guideY&&(this.guideY.destroy(),this.guideY=null)},mxStencil.defaultLocalized=!1,mxStencil.prototype.desc=null,mxStencil.prototype.constraints=null,mxStencil.prototype.aspect=null,mxStencil.prototype.w0=null,mxStencil.prototype.h0=null,mxStencil.prototype.bgNode=null,mxStencil.prototype.fgNode=null,mxStencil.prototype.strokewidth=null,mxStencil.prototype.parseDescription=function(){this.fgNode=this.desc.getElementsByTagName("foreground")[0],this.bgNode=this.desc.getElementsByTagName("background")[0],this.w0=Number(this.desc.getAttribute("w")||100),this.h0=Number(this.desc.getAttribute("h")||100);var e=this.desc.getAttribute("aspect");this.aspect=null!=e?e:"variable",e=this.desc.getAttribute("strokewidth"),this.strokewidth=null!=e?e:"1"},mxStencil.prototype.parseConstraints=function(){var e=this.desc.getElementsByTagName("connections")[0];if(null!=e&&null!=(e=mxUtils.getChildNodes(e))&&0<e.length){this.constraints=[];for(var t=0;t<e.length;t++)this.constraints.push(this.parseConstraint(e[t]))}},mxStencil.prototype.parseConstraint=function(e){var t=Number(e.getAttribute("x")),n=Number(e.getAttribute("y"));return e="1"==e.getAttribute("perimeter"),new mxConnectionConstraint(new mxPoint(t,n),e)},mxStencil.prototype.evaluateTextAttribute=function(e,t,n){return t=this.evaluateAttribute(e,t,n),e=e.getAttribute("localized"),(mxStencil.defaultLocalized&&null==e||"1"==e)&&(t=mxResources.get(t)),t},mxStencil.prototype.evaluateAttribute=function(e,t,n){return null==(t=e.getAttribute(t))&&null!=(e=mxUtils.getTextContent(e))&&"function"==typeof(e=mxUtils.eval(e))&&(t=e(n)),t},mxStencil.prototype.drawShape=function(e,t,n,a,i,o){this.drawChildren(e,t,n,a,i,o,this.bgNode,!1),this.drawChildren(e,t,n,a,i,o,this.fgNode,!0)},mxStencil.prototype.drawChildren=function(e,t,n,a,i,o,s,r){if(null!=s){var l=mxUtils.getValue(t.style,mxConstants.STYLE_DIRECTION,null);for(n=this.computeAspect(t.style,n,a,i,o,l),a=Math.min(n.width,n.height),a="inherit"==this.strokewidth?Number(mxUtils.getNumber(t.style,mxConstants.STYLE_STROKEWIDTH,1)):Number(this.strokewidth)*a,e.setStrokeWidth(a),s=s.firstChild;null!=s;)s.nodeType==mxConstants.NODETYPE_ELEMENT&&this.drawNode(e,t,s,n,r),s=s.nextSibling}},mxStencil.prototype.computeAspect=function(e,t,n,a,i,o){e=t,t=a/this.w0;var s=i/this.h0;if(o="north"==o||"south"==o){s=a/this.h0,t=i/this.w0;var r=(a-i)/2;e+=r,n-=r}return"fixed"==this.aspect&&(t=s=Math.min(t,s),o?(e+=(i-this.w0*t)/2,n+=(a-this.h0*s)/2):(e+=(a-this.w0*t)/2,n+=(i-this.h0*s)/2)),new mxRectangle(e,n,t,s)},mxStencil.prototype.drawNode=function(e,t,n,a,i){var o=n.nodeName,s=a.x,r=a.y,l=a.width,d=a.height,c=Math.min(l,d);if("save"==o)e.save();else if("restore"==o)e.restore();else if("path"==o)for(e.begin(),n=n.firstChild;null!=n;)n.nodeType==mxConstants.NODETYPE_ELEMENT&&this.drawNode(e,t,n,a,i),n=n.nextSibling;else if("close"==o)e.close();else if("move"==o)e.moveTo(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d);else if("line"==o)e.lineTo(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d);else if("quad"==o)e.quadTo(s+Number(n.getAttribute("x1"))*l,r+Number(n.getAttribute("y1"))*d,s+Number(n.getAttribute("x2"))*l,r+Number(n.getAttribute("y2"))*d);else if("curve"==o)e.curveTo(s+Number(n.getAttribute("x1"))*l,r+Number(n.getAttribute("y1"))*d,s+Number(n.getAttribute("x2"))*l,r+Number(n.getAttribute("y2"))*d,s+Number(n.getAttribute("x3"))*l,r+Number(n.getAttribute("y3"))*d);else if("arc"==o)e.arcTo(Number(n.getAttribute("rx"))*l,Number(n.getAttribute("ry"))*d,Number(n.getAttribute("x-axis-rotation")),Number(n.getAttribute("large-arc-flag")),Number(n.getAttribute("sweep-flag")),s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d);else if("rect"==o)e.rect(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,Number(n.getAttribute("w"))*l,Number(n.getAttribute("h"))*d);else if("roundrect"==o)0==(t=n.getAttribute("arcsize"))&&(t=100*mxConstants.RECTANGLE_ROUNDING_FACTOR),c=Number(n.getAttribute("w"))*l,a=Number(n.getAttribute("h"))*d,t=Number(t)/100,t=Math.min(c*t,a*t),e.roundrect(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,c,a,t,t);else if("ellipse"==o)e.ellipse(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,Number(n.getAttribute("w"))*l,Number(n.getAttribute("h"))*d);else if("image"==o)t=this.evaluateAttribute(n,"src",t),e.image(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,Number(n.getAttribute("w"))*l,Number(n.getAttribute("h"))*d,t,!1,"1"==n.getAttribute("flipH"),"1"==n.getAttribute("flipV"));else if("text"==o){if(c=this.evaluateTextAttribute(n,"str",t),a="1"==n.getAttribute("vertical")?-90:0,"0"==n.getAttribute("align-shape")){var m=t.rotation,u=1==mxUtils.getValue(t.style,mxConstants.STYLE_FLIPH,0);t=1==mxUtils.getValue(t.style,mxConstants.STYLE_FLIPV,0),a=u&&t?a-m:u||t?a+m:a-m}a-=n.getAttribute("rotation"),e.text(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,0,0,c,n.getAttribute("align")||"left",n.getAttribute("valign")||"top",!1,"",!1,!1,a)}else if("include-shape"==o)null!=(m=mxStencilRegistry.getStencil(n.getAttribute("name")))&&(s+=Number(n.getAttribute("x"))*l,r+=Number(n.getAttribute("y"))*d,c=Number(n.getAttribute("w"))*l,a=Number(n.getAttribute("h"))*d,m.drawShape(e,t,s,r,c,a));else if("fillstroke"==o)e.fillAndStroke();else if("fill"==o)e.fill();else if("stroke"==o)e.stroke();else if("strokewidth"==o)e.setStrokeWidth(Number(n.getAttribute("width"))*c);else if("dashed"==o)e.setDashed("1"==n.getAttribute("dashed"));else if("dashpattern"==o){if(null!=(n=n.getAttribute("pattern"))){for(n=n.split(" "),l=[],d=0;d<n.length;d++)0<n[d].length&&l.push(Number(n[d])*c);n=l.join(" "),e.setDashPattern(n)}}else"strokecolor"==o?e.setStrokeColor(n.getAttribute("color")):"linecap"==o?e.setLineCap(n.getAttribute("cap")):"linejoin"==o?e.setLineJoin(n.getAttribute("join")):"miterlimit"==o?e.setMiterLimit(Number(n.getAttribute("limit"))):"fillcolor"==o?e.setFillColor(n.getAttribute("color")):"alpha"==o?e.setAlpha(n.getAttribute("alpha")):"fontcolor"==o?e.setFontColor(n.getAttribute("color")):"fontstyle"==o?e.setFontStyle(n.getAttribute("style")):"fontfamily"==o?e.setFontFamily(n.getAttribute("family")):"fontsize"==o&&e.setFontSize(Number(n.getAttribute("size"))*c);i&&("fillstroke"==o||"fill"==o||"stroke"==o)&&e.setShadow(!1)},mxShape.prototype.dialect=null,mxShape.prototype.scale=1,mxShape.prototype.bounds=null,mxShape.prototype.points=null,mxShape.prototype.node=null,mxShape.prototype.style=null,mxShape.prototype.style=null,mxShape.prototype.boundingBox=null,mxShape.prototype.stencil=null,mxShape.prototype.svgStrokeTolerance=6,mxShape.prototype.pointerEvents=!0,mxShape.prototype.stencilPointerEvents=!1,mxShape.prototype.vmlScale=1,mxShape.prototype.init=function(e){null==this.node&&(this.node=this.create(e),null!=e&&e.appendChild(this.node))},mxShape.prototype.isParseVml=function(){return!0},mxShape.prototype.isHtmlAllowed=function(){return!1},mxShape.prototype.getSvgScreenOffset=function(){return 1==mxUtils.mod(Math.max(1,Math.round(this.strokewidth*this.scale)),2)?.5:0},mxShape.prototype.create=function(e){return null!=e.ownerSVGElement?this.createSvg(e):8==document.documentMode||this.dialect==mxConstants.DIALECT_SVG||this.dialect!=mxConstants.DIALECT_VML&&this.isHtmlAllowed()?this.createHtml(e):this.createVml(e)},mxShape.prototype.createSvg=function(){return document.createElementNS(mxConstants.NS_SVG,"g")},mxShape.prototype.createVml=function(){var e=document.createElement(mxClient.VML_PREFIX+":group");return e.style.position="absolute",e},mxShape.prototype.createHtml=function(){var e=document.createElement("div");return e.style.position="absolute",e},mxShape.prototype.reconfigure=function(){this.redraw()},mxShape.prototype.redraw=function(){this.updateBoundsFromPoints(),this.checkBounds()?(this.node.style.visibility="","DIV"==this.node.nodeName&&this.isHtmlAllowed()?this.redrawHtmlShape():this.redrawShape(),this.updateBoundingBox()):(this.node.style.visibility="hidden",this.boundingBox=null)},mxShape.prototype.updateBoundsFromPoints=function(){var e=this.points;if(null!=e&&0<e.length&&null!=e[0]){this.bounds=new mxRectangle(Number(e[0].x),Number(e[0].y),1,1);for(var t=1;t<this.points.length;t++)null!=e[t]&&this.bounds.add(new mxRectangle(Number(e[t].x),Number(e[t].y),1,1))}},mxShape.prototype.checkBounds=function(){return null!=this.bounds&&!isNaN(this.bounds.x)&&!isNaN(this.bounds.y)&&!isNaN(this.bounds.width)&&!isNaN(this.bounds.height)&&0<this.bounds.width&&0<this.bounds.height},mxShape.prototype.createVmlGroup=function(){var e=document.createElement(mxClient.VML_PREFIX+":group");return e.style.position="absolute",e.style.width=this.node.style.width,e.style.height=this.node.style.height,e},mxShape.prototype.redrawShape=function(){var e=this.createCanvas();for(e.pointerEvents=this.pointerEvents;this.node.hasChildNodes();)this.node.removeChild(this.node.lastChild);this.paint(e),this.node!=e.root&&this.node.insertAdjacentHTML("beforeend",e.root.outerHTML),"DIV"==this.node.nodeName&&8==document.documentMode&&(this.node.style.filter="",(null==this.stencil||!this.stencilPointerEvents)&&mxUtils.addTransparentBackgroundFilter(this.node)),this.destroyCanvas(e)},mxShape.prototype.createCanvas=function(){var e=null,t=null;if(null!=this.node.ownerSVGElement)e=new mxSvgCanvas2D(this.node,!1),e.strokeTolerance=this.svgStrokeTolerance,e.blockImagePointerEvents=mxClient.IS_NS&&!mxClient.IS_SF&&!mxClient.IS_GC,t=this.getSvgScreenOffset(),0!=t?this.node.setAttribute("transform","translate("+t+","+t+")"):this.node.removeAttribute("transform");else{this.updateVmlContainer();var n=Math.max(1,Math.round(this.bounds.width)),a=Math.max(1,Math.round(this.bounds.height)),t=8==document.documentMode&&this.isParseVml()?this.createVmlGroup():this.node,e=new mxVmlCanvas2D(t,!1);""!=t.tagUrn&&(t.coordsize=n*this.vmlScale+","+a*this.vmlScale,e.scale(this.vmlScale),e.vmlScale=this.vmlScale),t=this.scale,e.translate(-Math.round(this.bounds.x/t),-Math.round(this.bounds.y/t))}return e},mxShape.prototype.updateVmlContainer=function(){this.node.style.left=Math.round(this.bounds.x)+"px",this.node.style.top=Math.round(this.bounds.y)+"px";var e=Math.max(1,Math.round(this.bounds.width)),t=Math.max(1,Math.round(this.bounds.height));this.node.style.width=e+"px",this.node.style.height=t+"px",this.node.style.overflow="visible"},mxShape.prototype.destroyCanvas=function(e){if(e instanceof mxSvgCanvas2D){for(var t in e.gradients){var n=e.gradients[t];n.mxRefCount=(n.mxRefCount||0)+1}this.releaseSvgGradients(this.oldGradients),this.oldGradients=e.gradients}},mxShape.prototype.paint=function(e){var t=this.scale,n=this.bounds.x/t,a=this.bounds.y/t,i=this.bounds.width/t,o=this.bounds.height/t;if(this.isPaintBoundsInverted())var s=(i-o)/2,n=n+s,a=a-s,s=i,i=o,o=s;if(this.updateTransform(e,n,a,i,o),this.configureCanvas(e,n,a,i,o),null!=this.stencil)this.paintStencilShape(e,n,a,i,o);else if(e.setStrokeWidth(this.strokewidth),null!=this.points){for(n=[],a=0;a<this.points.length;a++)n.push(new mxPoint(this.points[a].x/t,this.points[a].y/t));this.paintEdgeShape(e,n)}else this.paintVertexShape(e,n,a,i,o)},mxShape.prototype.configureCanvas=function(e,t,n,a,i){var o=null;null!=this.style&&(o=this.style.dashPattern),e.setAlpha(this.opacity/100),null!=this.isShadow&&e.setShadow(this.isShadow),null!=this.isDashed&&e.setDashed(this.isDashed),null!=o&&e.setDashPattern(o),null!=this.gradient?(t=this.getGradientBounds(e,t,n,a,i),e.setGradient(this.fill,this.gradient,t.x,t.y,t.width,t.height,this.gradientDirection)):e.setFillColor(this.fill),e.setStrokeColor(this.stroke)},mxShape.prototype.getGradientBounds=function(e,t,n,a,i){return new mxRectangle(t,n,a,i)},mxShape.prototype.updateTransform=function(e,t,n,a,i){e.scale(this.scale),e.rotate(this.getShapeRotation(),this.flipH,this.flipV,t+a/2,n+i/2)},mxShape.prototype.paintStencilShape=function(e,t,n,a,i){this.stencilPointerEvents&&(this.dialect==mxConstants.DIALECT_SVG?this.addTransparentBackgroundRectangle(this.node,t,n,a,i):8!=document.documentMode&&this.setTransparentBackgroundImage(this.node)),this.stencil.drawShape(e,this,t,n,a,i)},mxShape.prototype.paintVertexShape=function(e,t,n,a,i){this.paintBackground(e,t,n,a,i),e.setShadow(!1),this.paintForeground(e,t,n,a,i)},mxShape.prototype.paintBackground=function(e,t,n,a,i){},mxShape.prototype.paintForeground=function(e,t,n,a,i){},mxShape.prototype.paintEdgeShape=function(e,t){},mxShape.prototype.getArcSize=function(e,t){var n=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100;return Math.min(e*n,t*n)},mxShape.prototype.paintGlassEffect=function(e,t,n,a,i,o){var s=Math.ceil(this.strokewidth/2);e.setGradient("#ffffff","#ffffff",t,n,a,.6*i,"south",.9,.1),e.begin(),o+=2*s,this.isRounded?(e.moveTo(t-s+o,n-s),e.quadTo(t-s,n-s,t-s,n-s+o),e.lineTo(t-s,n+.4*i),e.quadTo(t+.5*a,n+.7*i,t+a+s,n+.4*i),e.lineTo(t+a+s,n-s+o),e.quadTo(t+a+s,n-s,t+a+s-o,n-s)):(e.moveTo(t-s,n-s),e.lineTo(t-s,n+.4*i),e.quadTo(t+.5*a,n+.7*i,t+a+s,n+.4*i),e.lineTo(t+a+s,n-s)),e.close(),e.fill()},mxShape.prototype.apply=function(e){this.state=e,this.style=e.style,null!=this.style&&(this.fill=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,this.fill),this.gradient=mxUtils.getValue(this.style,mxConstants.STYLE_GRADIENTCOLOR,this.gradient),this.gradientDirection=mxUtils.getValue(this.style,mxConstants.STYLE_GRADIENT_DIRECTION,this.gradientDirection),this.opacity=mxUtils.getValue(this.style,mxConstants.STYLE_OPACITY,this.opacity),this.stroke=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,this.stroke),this.strokewidth=mxUtils.getNumber(this.style,mxConstants.STYLE_STROKEWIDTH,this.strokewidth),this.spacing=mxUtils.getValue(this.style,mxConstants.STYLE_SPACING,this.spacing),this.startSize=mxUtils.getNumber(this.style,mxConstants.STYLE_STARTSIZE,this.startSize),this.endSize=mxUtils.getNumber(this.style,mxConstants.STYLE_ENDSIZE,this.endSize),this.startArrow=mxUtils.getValue(this.style,mxConstants.STYLE_STARTARROW,this.startArrow),this.endArrow=mxUtils.getValue(this.style,mxConstants.STYLE_ENDARROW,this.endArrow),this.rotation=mxUtils.getValue(this.style,mxConstants.STYLE_ROTATION,this.rotation),this.direction=mxUtils.getValue(this.style,mxConstants.STYLE_DIRECTION,this.direction),this.flipH=1==mxUtils.getValue(this.style,mxConstants.STYLE_FLIPH,0),this.flipV=1==mxUtils.getValue(this.style,mxConstants.STYLE_FLIPV,0),null!=this.stencil&&(this.flipH=1==mxUtils.getValue(this.style,"stencilFlipH",0)||this.flipH,this.flipV=1==mxUtils.getValue(this.style,"stencilFlipV",0)||this.flipV),"north"!=this.direction&&"south"!=this.direction||(e=this.flipH,this.flipH=this.flipV,this.flipV=e),this.isShadow=1==mxUtils.getValue(this.style,mxConstants.STYLE_SHADOW,this.isShadow),this.isDashed=1==mxUtils.getValue(this.style,mxConstants.STYLE_DASHED,this.isDashed),this.isRounded=1==mxUtils.getValue(this.style,mxConstants.STYLE_ROUNDED,this.isRounded),this.glass=1==mxUtils.getValue(this.style,mxConstants.STYLE_GLASS,this.glass),"none"==this.fill&&(this.fill=null),"none"==this.gradient&&(this.gradient=null),"none"==this.stroke&&(this.stroke=null))},mxShape.prototype.setCursor=function(e){null==e&&(e=""),this.cursor=e,null!=this.node&&(this.node.style.cursor=e)},mxShape.prototype.getCursor=function(){return this.cursor},mxShape.prototype.updateBoundingBox=function(){if(null!=this.bounds){var e=this.createBoundingBox();if(null!=e){this.augmentBoundingBox(e);var t=this.getShapeRotation();0!=t&&(e=mxUtils.getBoundingBox(e,t)),e.x=Math.floor(e.x),e.y=Math.floor(e.y),e.width=Math.ceil(e.width),e.height=Math.ceil(e.height)}this.boundingBox=e}},mxShape.prototype.createBoundingBox=function(){var e=this.bounds.clone();if(this.isPaintBoundsInverted()){var t=(e.width-e.height)/2;e.x+=t,e.y-=t,t=e.width,e.width=e.height,e.height=t}return e},mxShape.prototype.augmentBoundingBox=function(e){this.isShadow&&(e.width+=Math.ceil(mxConstants.SHADOW_OFFSET_X*this.scale),e.height+=Math.ceil(mxConstants.SHADOW_OFFSET_Y*this.scale));var t=Math.ceil(this.strokewidth*this.scale);e.grow(Math.ceil(t/2))},mxShape.prototype.isPaintBoundsInverted=function(){return null==this.stencil&&("north"==this.direction||"south"==this.direction)},mxShape.prototype.getRotation=function(){return null!=this.rotation?this.rotation:0},mxShape.prototype.getTextRotation=function(){var e=this.getRotation();return 1!=mxUtils.getValue(this.style,mxConstants.STYLE_HORIZONTAL,1)&&(e+=mxText.prototype.verticalTextRotation),e},mxShape.prototype.getShapeRotation=function(){var e=this.getRotation();return null!=this.direction&&("north"==this.direction?e+=270:"west"==this.direction?e+=180:"south"==this.direction&&(e+=90)),e},mxShape.prototype.addTransparentBackgroundRectangle=function(e,t,n,a,i){(e=document.createElementNS(mxConstants.NS_SVG,"rect")).setAttribute("x",t),e.setAttribute("y",n),e.setAttribute("width",a),e.setAttribute("height",i),e.setAttribute("fill","none"),e.setAttribute("stroke","none"),e.setAttribute("pointer-events","all"),this.node.appendChild(e)},mxShape.prototype.setTransparentBackgroundImage=function(e){e.style.backgroundImage="url('"+mxClient.imageBasePath+"/transparent.gif')"},mxShape.prototype.releaseSvgGradients=function(e){if(null!=e)for(var t in e){var n=e[t];n.mxRefCount=(n.mxRefCount||0)-1,0==n.mxRefCount&&null!=n.parentNode&&n.parentNode.removeChild(n)}},mxShape.prototype.destroy=function(){null!=this.node&&(mxEvent.release(this.node),null!=this.node.parentNode&&this.node.parentNode.removeChild(this.node),this.node=null),this.releaseSvgGradients(this.oldGradients),this.oldGradients=null};var mxStencilRegistry={stencils:[],addStencil:function(e,t){mxStencilRegistry.stencils[e]=t},getStencil:function(e){return mxStencilRegistry.stencils[e]}},mxMarker={markers:[],addMarker:function(e,t){mxMarker.markers[e]=t},createMarker:function(e,t,n,a,i,o,s,r,l,d){var c=mxMarker.markers[n];return null!=c?c(e,t,n,a,i,o,s,r,l,d):null}};!function(){function e(e,t,n,a,i,o,s,r,l,d){t=1.118*i*l,r=1.118*o*l,i*=s+l,o*=s+l;var c=a.clone();return c.x-=t,c.y-=r,s=n!=mxConstants.ARROW_CLASSIC?1:.75,a.x+=-i*s-t,a.y+=-o*s-r,function(){e.begin(),e.moveTo(c.x,c.y),e.lineTo(c.x-i-o/2,c.y-o+i/2),n==mxConstants.ARROW_CLASSIC&&e.lineTo(c.x-3*i/4,c.y-3*o/4),e.lineTo(c.x+o/2-i,c.y-o-i/2),e.close(),d?e.fillAndStroke():e.stroke()}}function t(e,t,n,a,i,o,s,r,l,d){r=n==mxConstants.ARROW_DIAMOND?.7071:.9862,t=i*l*r,r*=o*l,i*=s+l,o*=s+l;var c=a.clone();c.x-=t,c.y-=r,a.x+=-i-t,a.y+=-o-r;var m=n==mxConstants.ARROW_DIAMOND?2:3.4;return function(){e.begin(),e.moveTo(c.x,c.y),e.lineTo(c.x-i/2-o/m,c.y+i/m-o/2),e.lineTo(c.x-i,c.y-o),e.lineTo(c.x-i/2+o/m,c.y-o/2-i/m),e.close(),d?e.fillAndStroke():e.stroke()}}mxMarker.addMarker("classic",e),mxMarker.addMarker("block",e),mxMarker.addMarker("open",function(e,t,n,a,i,o,s,r,l,d){t=1.118*i*l,n=1.118*o*l,i*=s+l,o*=s+l;var c=a.clone();return c.x-=t,c.y-=n,a.x+=2*-t,a.y+=2*-n,function(){e.begin(),e.moveTo(c.x-i-o/2,c.y-o+i/2),e.lineTo(c.x,c.y),e.lineTo(c.x+o/2-i,c.y-o-i/2),e.stroke()}}),mxMarker.addMarker("oval",function(e,t,n,a,i,o,s,r,l,d){var c=s/2,m=a.clone();return a.x-=i*c,a.y-=o*c,function(){e.ellipse(m.x-c,m.y-c,s,s),d?e.fillAndStroke():e.stroke()}}),mxMarker.addMarker("diamond",t),mxMarker.addMarker("diamondThin",t)}(),mxUtils.extend(mxActor,mxShape),mxActor.prototype.paintVertexShape=function(e,t,n,a,i){e.translate(t,n),e.begin(),this.redrawPath(e,t,n,a,i),e.fillAndStroke()},mxActor.prototype.redrawPath=function(e,t,n,a,i){t=a/3,e.moveTo(0,i),e.curveTo(0,3*i/5,0,2*i/5,a/2,2*i/5),e.curveTo(a/2-t,2*i/5,a/2-t,0,a/2,0),e.curveTo(a/2+t,0,a/2+t,2*i/5,a/2,2*i/5),e.curveTo(a,2*i/5,a,3*i/5,a,i),e.close()},mxUtils.extend(mxCloud,mxActor),mxCloud.prototype.redrawPath=function(e,t,n,a,i){e.moveTo(.25*a,.25*i),e.curveTo(.05*a,.25*i,0,.5*i,.16*a,.55*i),e.curveTo(0,.66*i,.18*a,.9*i,.31*a,.8*i),e.curveTo(.4*a,i,.7*a,i,.8*a,.8*i),e.curveTo(a,.8*i,a,.6*i,.875*a,.5*i),e.curveTo(a,.3*i,.8*a,.1*i,.625*a,.2*i),e.curveTo(.5*a,.05*i,.3*a,.05*i,.25*a,.25*i),e.close()},mxUtils.extend(mxRectangleShape,mxShape),mxRectangleShape.prototype.isHtmlAllowed=function(){return!this.isRounded&&!this.glass&&0==this.rotation},mxRectangleShape.prototype.paintBackground=function(e,t,n,a,i){if(this.isRounded){var o=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,o=Math.min(a*o,i*o);e.roundrect(t,n,a,i,o,o)}else e.rect(t,n,a,i);e.fillAndStroke()},mxRectangleShape.prototype.paintForeground=function(e,t,n,a,i){this.glass&&this.paintGlassEffect(e,t,n,a,i,this.getArcSize(a+this.strokewidth,i+this.strokewidth))},mxRectangleShape.prototype.redrawHtmlShape=function(){this.updateHtmlBounds(this.node),this.updateHtmlFilters(this.node),this.updateHtmlColors(this.node)},mxRectangleShape.prototype.updateHtmlBounds=function(e){var t=9<=document.documentMode?0:Math.ceil(this.strokewidth*this.scale);e.style.borderWidth=Math.max(1,t)+"px",e.style.overflow="hidden",e.style.left=Math.round(this.bounds.x-t/2)+"px",e.style.top=Math.round(this.bounds.y-t/2)+"px","CSS1Compat"==document.compatMode&&(t=-t),e.style.width=Math.round(Math.max(0,this.bounds.width+t))+"px",e.style.height=Math.round(Math.max(0,this.bounds.height+t))+"px"},mxRectangleShape.prototype.updateHtmlColors=function(e){var t=this.stroke;null!=t&&t!=mxConstants.NONE?(e.style.borderColor=t,this.isDashed?e.style.borderStyle="dashed":0<this.strokewidth&&(e.style.borderStyle="solid"),e.style.borderWidth=Math.max(1,Math.ceil(this.strokewidth*this.scale))+"px"):e.style.borderWidth="0px",null!=(t=this.fill)&&t!=mxConstants.NONE?(e.style.backgroundColor=t,e.style.backgroundImage="none"):this.pointerEvents?e.style.backgroundColor="transparent":8==document.documentMode?mxUtils.addTransparentBackgroundFilter(e):this.setTransparentBackgroundImage(e)},mxRectangleShape.prototype.updateHtmlFilters=function(e){var t="";if(100>this.opacity&&(t+="alpha(opacity="+this.opacity+")"),this.isShadow&&(t+="progid:DXImageTransform.Microsoft.dropShadow (OffX='"+Math.round(mxConstants.SHADOW_OFFSET_X*this.scale)+"', OffY='"+Math.round(mxConstants.SHADOW_OFFSET_Y*this.scale)+"', Color='"+mxConstants.SHADOWCOLOR+"')"),this.gradient){var n=this.fill,a=this.gradient,i="0",o={east:0,south:1,west:2,north:3},s=null!=this.direction?o[this.direction]:0;null!=this.gradientDirection&&(s=mxUtils.mod(s+o[this.gradientDirection]-1,4)),1==s?(i="1",o=n,n=a,a=o):2==s?(o=n,n=a,a=o):3==s&&(i="1"),t+="progid:DXImageTransform.Microsoft.gradient(startColorStr='"+n+"', endColorStr='"+a+"', gradientType='"+i+"')"}e.style.filter=t},mxUtils.extend(mxEllipse,mxShape),mxEllipse.prototype.paintVertexShape=function(e,t,n,a,i){e.ellipse(t,n,a,i),e.fillAndStroke()},mxUtils.extend(mxDoubleEllipse,mxShape),mxDoubleEllipse.prototype.vmlScale=10,mxDoubleEllipse.prototype.paintBackground=function(e,t,n,a,i){e.ellipse(t,n,a,i),e.fillAndStroke()},mxDoubleEllipse.prototype.paintForeground=function(e,t,n,a,i){var o=Math.min(4,Math.min(a/5,i/5));i-=2*o,0<(a-=2*o)&&0<i&&e.ellipse(t+o,n+o,a,i),e.stroke()},mxUtils.extend(mxRhombus,mxShape),mxRhombus.prototype.paintVertexShape=function(e,t,n,a,i){var o=a/2,s=i/2;e.begin(),e.moveTo(t+o,n),e.lineTo(t+a,n+s),e.lineTo(t+o,n+i),e.lineTo(t,n+s),e.close(),e.fillAndStroke()},mxUtils.extend(mxPolyline,mxShape),mxPolyline.prototype.getRotation=function(){return 0},mxPolyline.prototype.paintEdgeShape=function(e,t){this.paintLine(e,t,this.isRounded)},mxPolyline.prototype.paintLine=function(e,t,n){var a=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2,i=t[0],o=t[t.length-1];e.begin(),e.moveTo(i.x,i.y);for(var s=1;s<t.length-1;s++){var r=t[s],l=i.x-r.x,i=i.y-r.y;if(n&&s<t.length-1&&(0!=l||0!=i)){var d=Math.sqrt(l*l+i*i),l=l*Math.min(a,d/2)/d,i=i*Math.min(a,d/2)/d;e.lineTo(r.x+l,r.y+i),l=(i=t[s+1]).x-r.x,i=i.y-r.y,d=Math.max(1,Math.sqrt(l*l+i*i)),l=l*Math.min(a,d/2)/d,i=i*Math.min(a,d/2)/d,l=r.x+l,i=r.y+i,e.quadTo(r.x,r.y,l,i),r=new mxPoint(l,i)}else e.lineTo(r.x,r.y);i=r}e.lineTo(o.x,o.y),e.stroke()},mxUtils.extend(mxArrow,mxShape),mxArrow.prototype.paintEdgeShape=function(e,t){var n=mxConstants.ARROW_SPACING,a=mxConstants.ARROW_WIDTH,i=mxConstants.ARROW_SIZE,o=t[0],s=t[t.length-1],r=s.x-o.x,l=s.y-o.y,d=(c=Math.sqrt(r*r+l*l))-2*n-i,r=r/c,c=a*(l=l/c)/3,a=-a*r/3,m=(i=o.x-c/2+n*r)+c,u=(o=o.y-a/2+n*l)+a,p=m+d*r,g=p+c,h=(d=u+d*l)+a,v=g-3*c,b=h-3*a;e.begin(),e.moveTo(i,o),e.lineTo(m,u),e.lineTo(p,d),e.lineTo(g,h),e.lineTo(s.x-n*r,s.y-n*l),e.lineTo(v,b),e.lineTo(v+c,b+a),e.close(),e.fillAndStroke()},mxUtils.extend(mxText,mxShape),mxText.prototype.baseSpacingTop=0,mxText.prototype.baseSpacingBottom=0,mxText.prototype.baseSpacingLeft=0,mxText.prototype.baseSpacingRight=0,mxText.prototype.replaceLinefeeds=!0,mxText.prototype.verticalTextRotation=-90,mxText.prototype.ignoreClippedStringSize=!0,mxText.prototype.ignoreStringSize=!1,mxText.prototype.isParseVml=function(){return!1},mxText.prototype.isHtmlAllowed=function(){return 8!=document.documentMode},mxText.prototype.getSvgScreenOffset=function(){return 0},mxText.prototype.checkBounds=function(){return!(null==this.bounds||isNaN(this.bounds.x)||isNaN(this.bounds.y)||isNaN(this.bounds.width)||isNaN(this.bounds.height))},mxText.prototype.updateBoundingBox=function(){var e=this.node;8==document.documentMode&&null!=e.firstChild&&null!=(e=e.firstChild).firstChild&&(e=e.firstChild),this.boundingBox=this.bounds.clone();var t=this.getTextRotation();if(this.ignoreStringSize||null==e||"fill"==this.overflow||this.clipped&&this.ignoreClippedStringSize)this.boundingBox.x+=this.margin.x*this.boundingBox.width,this.boundingBox.y+=this.margin.y*this.boundingBox.height;else{var n=null,a=null;if(null!=e.ownerSVGElement)if(null!=e.firstChild&&null!=e.firstChild.firstChild&&"foreignObject"==e.firstChild.firstChild.nodeName)e=e.firstChild.firstChild,n=this.wrap?this.bounds.width:parseInt(e.getAttribute("width"))*this.scale,a=parseInt(e.getAttribute("height"))*this.scale;else{if(0==(t=e.getBBox()).width&&0==t.height)return;this.boundingBox=new mxRectangle(t.x,t.y,t.width,t.height),t=0}else a=this.state.view.textDiv,null!=this.offsetWidth&&null!=this.offsetHeight?(n=this.wrap?this.bounds.width:this.offsetWidth*this.scale,a=this.offsetHeight*this.scale):null!=a?(this.updateFont(a),this.updateSize(a),mxUtils.isNode(this.value)?a.innerHTML=this.value.outerHTML:(n=this.replaceLinefeeds?this.value.replace(/\n/g,"<br/>"):this.value,a.innerHTML=n),n=this.wrap?this.bounds.width:a.offsetWidth*this.scale,a=a.offsetHeight*this.scale):(n=this.wrap?this.bounds.width:e.offsetWidth*this.scale,a=e.offsetHeight*this.scale);null!=n&&null!=a&&(this.boundingBox=new mxRectangle(this.bounds.x+this.margin.x*n,this.bounds.y+this.margin.y*a,n,a))}null!=this.boundingBox&&(0!=t&&(t=mxUtils.getBoundingBox(this.boundingBox,t),this.boundingBox.x=t.x,this.boundingBox.y=t.y,mxClient.IS_QUIRKS||(this.boundingBox.width=t.width,this.boundingBox.height=t.height)),this.boundingBox.x=Math.floor(this.boundingBox.x),this.boundingBox.y=Math.floor(this.boundingBox.y),this.boundingBox.width=Math.ceil(this.boundingBox.width),this.boundingBox.height=Math.ceil(this.boundingBox.height))},mxText.prototype.getShapeRotation=function(){return 0},mxText.prototype.getTextRotation=function(){return null!=this.state&&null!=this.state.shape?this.state.shape.getTextRotation():0},mxText.prototype.isPaintBoundsInverted=function(){return!this.horizontal&&null!=this.state&&this.state.view.graph.model.isVertex(this.state.cell)},mxText.prototype.configureCanvas=function(e,t,n,a,i){mxShape.prototype.configureCanvas.apply(this,arguments),e.setFontColor(this.color),e.setFontBackgroundColor(this.background),e.setFontBorderColor(this.border),e.setFontFamily(this.family),e.setFontSize(this.size),e.setFontStyle(this.fontStyle)},mxText.prototype.updateVmlContainer=function(){this.node.style.left=Math.round(this.bounds.x)+"px",this.node.style.top=Math.round(this.bounds.y)+"px",this.node.style.width="1px",this.node.style.height="1px",this.node.style.overflow="visible"},mxText.prototype.paint=function(e){var t=this.scale,n=this.bounds.x/t,a=this.bounds.y/t,i=this.bounds.width/t,t=this.bounds.height/t;this.updateTransform(e,n,a,i,t),this.configureCanvas(e,n,a,i,t);var o=mxUtils.isNode(this.value)||this.dialect==mxConstants.DIALECT_STRICTHTML,s=o||e instanceof mxVmlCanvas2D?"html":"",r=this.value;!o&&"html"==s&&(r=mxUtils.htmlEntities(r,!1)),r=!mxUtils.isNode(this.value)&&this.replaceLinefeeds&&"html"==s?r.replace(/\n/g,"<br/>"):r,e.text(n,a,i,t,r,this.align,this.valign,this.wrap,s,"fill"==this.overflow,this.clipped,this.getTextRotation())},mxText.prototype.redrawHtmlShape=function(){var e=this.node.style;e.opacity=1>this.opacity?this.opacity:"",e.overflow="",e.width="",e.height="",this.updateFont(this.node),this.updateSize(this.node),this.updateValue(),this.offsetHeight=this.offsetWidth=null,null!=mxClient.CSS_PREFIX?this.updateHtmlTransform():this.updateHtmlFilter()},mxText.prototype.updateHtmlTransform=function(){var e=this.getTextRotation(),t=this.node.style,n=this.margin.x,a=this.margin.y;0!=e?(t[mxClient.CSS_PREFIX+"TransformOrigin"]=100*-n+"% "+100*-a+"%",t[mxClient.CSS_PREFIX+"Transform"]="translate("+100*n+"%,"+100*a+"%)scale("+this.scale+") rotate("+e+"deg)"):(t[mxClient.CSS_PREFIX+"TransformOrigin"]="0% 0%",t[mxClient.CSS_PREFIX+"Transform"]="scale("+this.scale+")translate("+100*n+"%,"+100*a+"%)"),t.left=Math.round(this.bounds.x)+"px",t.top=Math.round(this.bounds.y)+"px"},mxText.prototype.updateHtmlFilter=function(){var e=this.node.style,t=this.margin.x,n=this.margin.y,a=this.scale;e.filter="";var i=0,o=0;if(null!=(r=null!=this.state?this.state.view.textDiv:null)){if(r.style.overflow="",r.style.height="",r.style.width="",this.updateFont(r),this.updateSize(r),mxUtils.isNode(this.value))r.innerHTML=this.value.outerHTML;else{s=this.value;this.dialect!=mxConstants.DIALECT_STRICTHTML&&(s=mxUtils.htmlEntities(s,!1)),s=this.replaceLinefeeds?s.replace(/\n/g,"<br/>"):s,r.innerHTML=s}i=r.offsetWidth+2,o=r.offsetHeight+2}else i=this.node.offsetWidth,o=this.node.offsetHeight+1;this.offsetWidth=i,this.offsetHeight=o,r=this.bounds.width/a,s=this.bounds.height/a,mxClient.IS_QUIRKS&&(this.clipped||"fill"==this.overflow)&&0<s?(s=Math.min(s,o),e.height=Math.round(s+1)+"px"):s=o,"fill"!=this.overflow&&(mxClient.IS_QUIRKS&&(this.clipped||this.wrap)&&0<r?(r=Math.min(r,i),e.width=Math.round(r)+"px"):r=i);var s=s*a,r=r*a,i=this.getTextRotation()*(Math.PI/180),o=parseFloat(parseFloat(Math.cos(i)).toFixed(8)),l=parseFloat(parseFloat(Math.sin(-i)).toFixed(8));0>(i=i%(2*Math.PI))&&(i+=2*Math.PI),(i%=Math.PI)>Math.PI/2&&(i=Math.PI-i);var d=Math.cos(i),c=Math.sin(-i),m=(s-s*d+r*c)/2+l*(t=r*-(t+.5))-o*(n=s*-(n+.5));0!=i&&(e.filter="progid:DXImageTransform.Microsoft.Matrix(M11="+o+", M12="+l+", M21="+-l+", M22="+o+", sizingMethod='auto expand')"),e.zoom=a,e.left=Math.round(this.bounds.x+((r-r*d+s*c)/2-o*t-l*n)-r/2)+"px",e.top=Math.round(this.bounds.y+m-s/2)+"px"},mxText.prototype.updateValue=function(){if(mxUtils.isNode(this.value))this.node.innerHTML="",this.node.appendChild(this.value);else{e=this.value;this.dialect!=mxConstants.DIALECT_STRICTHTML&&(e=mxUtils.htmlEntities(e,!1));var e=this.replaceLinefeeds?e.replace(/\n/g,"<br/>"):e,t=null!=this.background&&this.background!=mxConstants.NONE?this.background:null,n=null!=this.border&&this.border!=mxConstants.NONE?this.border:null;if(null!=t||null!=n)if("fill"==this.overflow)null!=t&&(this.node.style.backgroundColor=t),null!=n&&(this.node.style.border="1px solid "+n);else{var a="";null!=t&&(a+="background-color:"+t+";"),null!=n&&(a+="border:1px solid "+n+";"),e='<div style="zoom:1;'+a+"display:inline-block;_display:inline;padding-bottom:1px;padding-right:1px;line-height:"+this.node.style.lineHeight+'">'+e+"</div>",this.node.style.lineHeight=""}this.node.innerHTML=e}},mxText.prototype.updateFont=function(e){(e=e.style).lineHeight=Math.round(this.size*mxConstants.LINE_HEIGHT)+"px",e.fontSize=Math.round(this.size)+"px",e.fontFamily=this.family,e.verticalAlign="top",e.color=this.color,e.fontWeight=(this.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD?"bold":"",e.fontStyle=(this.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC?"italic":"",e.fontDecoration=(this.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE?"underline":"",e.textAlign=this.align==mxConstants.ALIGN_CENTER?"center":this.align==mxConstants.ALIGN_RIGHT?"right":"left"},mxText.prototype.updateSize=function(e){var t=Math.round(this.bounds.width/this.scale),n=Math.round(this.bounds.height/this.scale);e=e.style,this.clipped?(e.overflow="hidden",0<n&&(e.maxHeight=n+"px"),0<t&&(e.width=t+"px")):"fill"==this.overflow&&(e.width=t+"px",0<n&&(e.maxHeight=n+"px")),this.wrap?(!this.clipped&&0<t&&(e.width=t+"px"),e.whiteSpace="normal"):e.whiteSpace="nowrap"},mxText.prototype.updateMargin=function(){this.margin=mxUtils.getAlignmentAsPoint(this.align,this.valign)},mxText.prototype.getSpacing=function(){return new mxPoint(this.align==mxConstants.ALIGN_CENTER?(this.spacingLeft-this.spacingRight)/2:this.align==mxConstants.ALIGN_RIGHT?-this.spacingRight-this.baseSpacingRight:this.spacingLeft+this.baseSpacingLeft,this.valign==mxConstants.ALIGN_MIDDLE?(this.spacingTop-this.spacingBottom)/2:this.valign==mxConstants.ALIGN_BOTTOM?-this.spacingBottom-this.baseSpacingBottom:this.spacingTop+this.baseSpacingTop)},mxUtils.extend(mxTriangle,mxActor),mxTriangle.prototype.redrawPath=function(e,t,n,a,i){e.moveTo(0,0),e.lineTo(a,.5*i),e.lineTo(0,i),e.close()},mxUtils.extend(mxHexagon,mxActor),mxHexagon.prototype.redrawPath=function(e,t,n,a,i){e.moveTo(.25*a,0),e.lineTo(.75*a,0),e.lineTo(a,.5*i),e.lineTo(.75*a,i),e.lineTo(.25*a,i),e.lineTo(0,.5*i),e.close()},mxUtils.extend(mxLine,mxShape),mxLine.prototype.paintVertexShape=function(e,t,n,a,i){n+=i/2,e.begin(),e.moveTo(t,n),e.lineTo(t+a,n),e.stroke()},mxUtils.extend(mxImageShape,mxRectangleShape),mxImageShape.prototype.preserveImageAspect=!0,mxImageShape.prototype.getSvgScreenOffset=function(){return mxClient.IS_IE?0:.5},mxImageShape.prototype.apply=function(e){mxShape.prototype.apply.apply(this,arguments),this.gradient=this.stroke=this.fill=null,null!=this.style&&(this.fill=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_BACKGROUND),this.stroke=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_BORDER),this.preserveImageAspect=1==mxUtils.getNumber(this.style,mxConstants.STYLE_IMAGE_ASPECT,1),this.flipH=this.flipH||1==mxUtils.getValue(this.style,"imageFlipH",0),this.flipV=this.flipV||1==mxUtils.getValue(this.style,"imageFlipV",0))},mxImageShape.prototype.isHtmlAllowed=function(){return!this.preserveImageAspect},mxImageShape.prototype.createHtml=function(){var e=document.createElement("div");return e.style.position="absolute",e},mxImageShape.prototype.paintVertexShape=function(e,t,n,a,i){if(null!=this.image){var o=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_BACKGROUND,null),s=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_BORDER,null);null==o&&null==s||(e.setFillColor(o),e.setStrokeColor(s),e.rect(t,n,a,i),e.fillAndStroke()),e.image(t,n,a,i,this.image,this.preserveImageAspect,!1,!1)}else mxRectangleShape.prototype.paintBackground.apply(this,arguments)},mxImageShape.prototype.redrawHtmlShape=function(){if(this.node.style.left=Math.round(this.bounds.x)+"px",this.node.style.top=Math.round(this.bounds.y)+"px",this.node.style.width=Math.max(0,Math.round(this.bounds.width))+"px",this.node.style.height=Math.max(0,Math.round(this.bounds.height))+"px",this.node.style.backgroundColor=this.fill||"",this.node.style.borderColor=this.stroke||"",this.node.innerHTML="",null!=this.image){var e=document.createElement(mxClient.IS_IE6||null==mxClient.CSS_PREFIX&&0!=this.rotation?mxClient.VML_PREFIX+":image":"img");e.style.position="absolute",e.src=this.image;var t=100>this.opacity?"alpha(opacity="+this.opacity+")":"";this.node.style.filter=t,this.flipH&&this.flipV?t+="progid:DXImageTransform.Microsoft.BasicImage(rotation=2)":this.flipH?t+="progid:DXImageTransform.Microsoft.BasicImage(mirror=1)":this.flipV&&(t+="progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"),e.style.filter!=t&&(e.style.filter=t),"image"==e.nodeName?e.style.rotation=this.rotation:e.style[mxClient.CSS_PREFIX+"Transform"]="rotate("+this.rotation+"deg)",e.style.width=this.node.style.width,e.style.height=this.node.style.height,this.node.style.backgroundImage="",this.node.appendChild(e)}else this.setTransparentBackgroundImage(this.node)},mxUtils.extend(mxLabel,mxRectangleShape),mxLabel.prototype.imageSize=mxConstants.DEFAULT_IMAGESIZE,mxLabel.prototype.spacing=2,mxLabel.prototype.indicatorSize=10,mxLabel.prototype.indicatorSpacing=2,mxLabel.prototype.init=function(e){mxShape.prototype.init.apply(this,arguments),null!=this.indicatorColor&&null!=this.indicatorShape&&(this.indicator=new this.indicatorShape,this.indicator.dialect=this.dialect,this.indicator.bounds=this.bounds,this.indicator.fill=this.indicatorColor,this.indicator.stroke=this.indicatorColor,this.indicator.gradient=this.indicatorGradientColor,this.indicator.direction=this.indicatorDirection,this.indicator.init(this.node))},mxLabel.prototype.redraw=function(){null!=this.indicator&&(this.indicator.fill=this.indicatorColor,this.indicator.stroke=this.indicatorColor,this.indicator.gradient=this.indicatorGradientColor,this.indicator.direction=this.indicatorDirection),mxShape.prototype.redraw.apply(this,arguments)},mxLabel.prototype.isHtmlAllowed=function(){return mxRectangleShape.prototype.isHtmlAllowed.apply(this,arguments)&&null==this.indicatorColor&&null==this.indicatorShape},mxLabel.prototype.paintForeground=function(e,t,n,a,i){this.paintImage(e,t,n,a,i),this.paintIndicator(e,t,n,a,i),mxRectangleShape.prototype.paintForeground.apply(this,arguments)},mxLabel.prototype.paintImage=function(e,t,n,a,i){null!=this.image&&(t=this.getImageBounds(t,n,a,i),e.image(t.x,t.y,t.width,t.height,this.image,!1,!1,!1))},mxLabel.prototype.getImageBounds=function(e,t,n,a){var i=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_ALIGN,mxConstants.ALIGN_LEFT),o=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),s=mxUtils.getNumber(this.style,mxConstants.STYLE_IMAGE_WIDTH,mxConstants.DEFAULT_IMAGESIZE),r=mxUtils.getNumber(this.style,mxConstants.STYLE_IMAGE_HEIGHT,mxConstants.DEFAULT_IMAGESIZE),l=mxUtils.getNumber(this.style,mxConstants.STYLE_SPACING,this.spacing)+5;return e=i==mxConstants.ALIGN_CENTER?e+(n-s)/2:i==mxConstants.ALIGN_RIGHT?e+(n-s-l):e+l,t=o==mxConstants.ALIGN_TOP?t+l:o==mxConstants.ALIGN_BOTTOM?t+(a-r-l):t+(a-r)/2,new mxRectangle(e,t,s,r)},mxLabel.prototype.paintIndicator=function(e,t,n,a,i){null!=this.indicator?(this.indicator.bounds=this.getIndicatorBounds(t,n,a,i),this.indicator.paint(e)):null!=this.indicatorImage&&(t=this.getIndicatorBounds(t,n,a,i),e.image(t.x,t.y,t.width,t.height,this.indicatorImage,!1,!1,!1))},mxLabel.prototype.getIndicatorBounds=function(e,t,n,a){var i=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_ALIGN,mxConstants.ALIGN_LEFT),o=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),s=mxUtils.getNumber(this.style,mxConstants.STYLE_INDICATOR_WIDTH,this.indicatorSize),r=mxUtils.getNumber(this.style,mxConstants.STYLE_INDICATOR_HEIGHT,this.indicatorSize),l=this.spacing+5;return e=i==mxConstants.ALIGN_RIGHT?e+(n-s-l):i==mxConstants.ALIGN_CENTER?e+(n-s)/2:e+l,t=o==mxConstants.ALIGN_BOTTOM?t+(a-r-l):o==mxConstants.ALIGN_TOP?t+l:t+(a-r)/2,new mxRectangle(e,t,s,r)},mxLabel.prototype.redrawHtmlShape=function(){for(mxRectangleShape.prototype.redrawHtmlShape.apply(this,arguments);this.node.hasChildNodes();)this.node.removeChild(this.node.lastChild);if(null!=this.image){var e=document.createElement("img");e.style.position="relative",e.setAttribute("border","0");var t=this.getImageBounds(this.bounds.x,this.bounds.y,this.bounds.width,this.bounds.height);t.x-=this.bounds.x,t.y-=this.bounds.y,e.style.left=Math.round(t.x)+"px",e.style.top=Math.round(t.y)+"px",e.style.width=Math.round(t.width)+"px",e.style.height=Math.round(t.height)+"px",e.src=this.image,this.node.appendChild(e)}},mxUtils.extend(mxCylinder,mxShape),mxCylinder.prototype.maxHeight=40,mxCylinder.prototype.svgStrokeTolerance=0,mxCylinder.prototype.paintVertexShape=function(e,t,n,a,i){e.translate(t,n),e.begin(),this.redrawPath(e,t,n,a,i,!1),e.fillAndStroke(),e.setShadow(!1),e.begin(),this.redrawPath(e,t,n,a,i,!0),e.stroke()},mxCylinder.prototype.redrawPath=function(e,t,n,a,i,o){t=Math.min(this.maxHeight,Math.round(i/5)),(o&&null!=this.fill||!o&&null==this.fill)&&(e.moveTo(0,t),e.curveTo(0,2*t,a,2*t,a,t),o||(e.stroke(),e.begin())),o||(e.moveTo(0,t),e.curveTo(0,-t/3,a,-t/3,a,t),e.lineTo(a,i-t),e.curveTo(a,i+t/3,0,i+t/3,0,i-t),e.close())},mxUtils.extend(mxConnector,mxPolyline),mxConnector.prototype.paintEdgeShape=function(e,t){var n=this.createMarker(e,t,!0),a=this.createMarker(e,t,!1);null==this.style||1!=this.style[mxConstants.STYLE_CURVED]?this.paintLine(e,t,this.isRounded):this.paintCurvedLine(e,t),e.setFillColor(this.stroke),e.setShadow(!1),e.setDashed(!1),null!=n&&n(),null!=a&&a()},mxConnector.prototype.paintCurvedLine=function(e,t){e.begin();var n=t[0],a=t.length;for(e.moveTo(n.x,n.y),n=1;n<a-2;n++){var i=t[n],o=t[n+1];e.quadTo(i.x,i.y,(i.x+o.x)/2,(i.y+o.y)/2)}i=t[a-2],o=t[a-1],e.quadTo(i.x,i.y,o.x,o.y),e.stroke()},mxConnector.prototype.createMarker=function(e,t,n){var a=t.length,i=n?t[1]:t[a-2],a=(t=n?t[0]:t[a-1]).x-i.x,o=t.y-i.y,i=a/(s=Math.max(1,Math.sqrt(a*a+o*o))),a=o/s,o=mxUtils.getNumber(this.style,n?mxConstants.STYLE_STARTSIZE:mxConstants.STYLE_ENDSIZE,mxConstants.DEFAULT_MARKERSIZE),s=mxUtils.getValue(this.style,n?mxConstants.STYLE_STARTARROW:mxConstants.STYLE_ENDARROW);return mxMarker.createMarker(e,this,s,t,i,a,o,n,this.strokewidth,0!=this.style[n?mxConstants.STYLE_STARTFILL:mxConstants.STYLE_ENDFILL])},mxConnector.prototype.augmentBoundingBox=function(e){mxShape.prototype.augmentBoundingBox.apply(this,arguments);var t=0;mxUtils.getValue(this.style,mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants.NONE&&(t=mxUtils.getNumber(this.style,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_MARKERSIZE)+1),mxUtils.getValue(this.style,mxConstants.STYLE_ENDARROW,mxConstants.NONE)!=mxConstants.NONE&&(t=Math.max(t,mxUtils.getNumber(this.style,mxConstants.STYLE_ENDSIZE,mxConstants.DEFAULT_MARKERSIZE))+1),e.grow(Math.ceil(t*this.scale))},mxUtils.extend(mxSwimlane,mxShape),mxSwimlane.prototype.imageSize=16,mxSwimlane.prototype.getGradientBounds=function(e,t,n,a,i){return e=Math.min(i,mxUtils.getValue(this.style,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),new mxRectangle(t,n,a,e)},mxSwimlane.prototype.getRotation=function(){var e=mxShape.prototype.getRotation.apply(this,arguments);return 1!=mxUtils.getValue(this.style,mxConstants.STYLE_HORIZONTAL,1)&&(e+=mxText.prototype.verticalTextRotation),e},mxSwimlane.prototype.getTextRotation=function(){return this.getRotation()},mxSwimlane.prototype.isPaintBoundsInverted=function(){return mxShape.prototype.isPaintBoundsInverted.apply(this,arguments)||1!=mxUtils.getValue(this.style,mxConstants.STYLE_HORIZONTAL,1)},mxSwimlane.prototype.getArcSize=function(e,t,n){return e=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,3*n*e},mxSwimlane.prototype.paintVertexShape=function(e,t,n,a,i){var o=Math.min(i,mxUtils.getValue(this.style,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),s=mxUtils.getValue(this.style,mxConstants.STYLE_SWIMLANE_FILLCOLOR,mxConstants.NONE),r=1==mxUtils.getValue(this.style,mxConstants.STYLE_SWIMLANE_LINE,1),l=0;e.translate(t,n),this.isRounded?(l=this.getArcSize(a,i,o),this.paintRoundedSwimlane(e,t,n,a,i,o,l,s,r)):this.paintSwimlane(e,t,n,a,i,o,s,r),s=mxUtils.getValue(this.style,mxConstants.STYLE_SEPARATORCOLOR,mxConstants.NONE),this.paintSeparator(e,a,o,i,s),null!=this.image&&(i=this.getImageBounds(t,o,a,i),e.image(i.x-t,i.y-n,i.width,i.height,this.image,!1,!1,!1)),this.glass&&(e.setShadow(!1),this.paintGlassEffect(e,0,0,a,o,l))},mxSwimlane.prototype.paintSwimlane=function(e,t,n,a,i,o,s,r){s!=mxConstants.NONE&&(e.save(),e.setFillColor(s),e.rect(0,0,a,i),e.fillAndStroke(),e.restore(),e.setShadow(!1)),e.begin(),e.moveTo(0,o),e.lineTo(0,0),e.lineTo(a,0),e.lineTo(a,o),r&&e.close(),e.fillAndStroke(),o<i&&s==mxConstants.NONE&&(e.pointerEvents=!1,e.begin(),e.moveTo(0,o),e.lineTo(0,i),e.lineTo(a,i),e.lineTo(a,o),e.stroke())},mxSwimlane.prototype.paintRoundedSwimlane=function(e,t,n,a,i,o,s,r,l){r!=mxConstants.NONE&&(e.save(),e.setFillColor(r),e.roundrect(0,0,a,i,s,s),e.fillAndStroke(),e.restore(),e.setShadow(!1)),e.begin(),e.moveTo(a,o),e.lineTo(a,s),e.quadTo(a,0,a-Math.min(a/2,s),0),e.lineTo(Math.min(a/2,s),0),e.quadTo(0,0,0,s),e.lineTo(0,o),l&&e.close(),e.fillAndStroke(),o<i&&r==mxConstants.NONE&&(e.pointerEvents=!1,e.begin(),e.moveTo(0,o),e.lineTo(0,i-s),e.quadTo(0,i,Math.min(a/2,s),i),e.lineTo(a-Math.min(a/2,s),i),e.quadTo(a,i,a,i-s),e.lineTo(a,o),e.stroke())},mxSwimlane.prototype.paintSeparator=function(e,t,n,a,i){i!=mxConstants.NONE&&(e.setStrokeColor(i),e.setDashed(!0),e.begin(),e.moveTo(t,n),e.lineTo(t,a),e.stroke(),e.setDashed(!1))},mxSwimlane.prototype.getImageBounds=function(e,t,n,a){return new mxRectangle(e+n-this.imageSize,t,this.imageSize,this.imageSize)},mxGraphLayout.prototype.graph=null,mxGraphLayout.prototype.useBoundingBox=!0,mxGraphLayout.prototype.parent=null,mxGraphLayout.prototype.moveCell=function(e,t,n){},mxGraphLayout.prototype.execute=function(e){},mxGraphLayout.prototype.getGraph=function(){return this.graph},mxGraphLayout.prototype.getConstraint=function(e,t,n,a){return n=this.graph.view.getState(t),t=null!=n?n.style:this.graph.getCellStyle(t),null!=t?t[e]:null},mxGraphLayout.traverse=function(e,t,n,a,i){if(null!=n&&null!=e){t=null==t||t,i=i||[];var o=mxCellPath.create(e);if(null==i[o]&&(i[o]=e,null==(a=n(e,a))||a)&&0<(a=this.graph.model.getEdgeCount(e)))for(o=0;o<a;o++){var s=this.graph.model.getEdgeAt(e,o),r=this.graph.model.getTerminal(s,!0)==e;t&&!r||(r=this.graph.view.getVisibleTerminal(s,!r),this.traverse(r,t,n,s,i))}}},mxGraphLayout.prototype.isVertexMovable=function(e){return this.graph.isCellMovable(e)},mxGraphLayout.prototype.isVertexIgnored=function(e){return!this.graph.getModel().isVertex(e)||!this.graph.isCellVisible(e)},mxGraphLayout.prototype.isEdgeIgnored=function(e){var t=this.graph.getModel();return!t.isEdge(e)||!this.graph.isCellVisible(e)||null==t.getTerminal(e,!0)||null==t.getTerminal(e,!1)},mxGraphLayout.prototype.setEdgeStyleEnabled=function(e,t){this.graph.setCellStyles(mxConstants.STYLE_NOEDGESTYLE,t?"0":"1",[e])},mxGraphLayout.prototype.setOrthogonalEdge=function(e,t){this.graph.setCellStyles(mxConstants.STYLE_ORTHOGONAL,t?"1":"0",[e])},mxGraphLayout.prototype.getParentOffset=function(e){var t=new mxPoint;if(null!=e&&e!=this.parent){var n=this.graph.getModel();if(n.isAncestor(this.parent,e))for(var a=n.getGeometry(e);e!=this.parent;)t.x+=a.x,t.y+=a.y,e=n.getParent(e),a=n.getGeometry(e)}return t},mxGraphLayout.prototype.setEdgePoints=function(e,t){if(null!=e){var n=this.graph.model,a=n.getGeometry(e);if(null==a?(a=new mxGeometry).setRelative(!0):a=a.clone(),null!=this.parent&&null!=t)for(var i=n.getParent(e),i=this.getParentOffset(i),o=0;o<t.length;o++)t[o].x-=i.x,t[o].y-=i.y;a.points=t,n.setGeometry(e,a)}},mxGraphLayout.prototype.setVertexLocation=function(e,t,n){var a=this.graph.getModel(),i=a.getGeometry(e),o=null;if(null!=i){if(o=new mxRectangle(t,n,i.width,i.height),this.useBoundingBox){var s=this.graph.getView().getState(e);if(null!=s&&null!=s.text&&null!=s.text.boundingBox){var r=this.graph.getView().scale,l=s.text.boundingBox;s.text.boundingBox.x<s.x&&(t+=(s.x-l.x)/r,o.width=l.width),s.text.boundingBox.y<s.y&&(n+=(s.y-l.y)/r,o.height=l.height)}}null!=this.parent&&null!=(s=a.getParent(e))&&s!=this.parent&&(s=this.getParentOffset(s),t-=s.x,n-=s.y),i.x==t&&i.y==n||(i=i.clone(),i.x=t,i.y=n,a.setGeometry(e,i))}return o},mxGraphLayout.prototype.getVertexBounds=function(e){r=this.graph.getModel().getGeometry(e);if(this.useBoundingBox&&null!=(s=this.graph.getView().getState(e))&&null!=s.text&&null!=s.text.boundingBox)var t=this.graph.getView().scale,n=s.text.boundingBox,a=Math.max(s.x-n.x,0)/t,i=Math.max(s.y-n.y,0)/t,o=Math.max(n.x+n.width-(s.x+s.width),0)/t,s=Math.max(n.y+n.height-(s.y+s.height),0)/t,r=new mxRectangle(r.x-a,r.y-i,r.width+a+o,r.height+i+s);return null!=this.parent&&(e=this.graph.getModel().getParent(e),r=r.clone(),null!=e&&e!=this.parent&&(e=this.getParentOffset(e),r.x+=e.x,r.y+=e.y)),new mxRectangle(r.x,r.y,r.width,r.height)},mxGraphLayout.prototype.arrangeGroups=function(e,t){this.graph.getModel().beginUpdate();try{for(var n=e.length-1;0<=n;n--){var a=e[n],i=this.graph.getChildVertices(a),o=this.graph.getBoundingBoxFromGeometry(i),s=this.graph.getCellGeometry(a),r=0,l=0;if(this.graph.isSwimlane(a))var d=this.graph.getStartSize(a),r=d.width,l=d.height;null!=o&&null!=s&&(s=s.clone(),s.x=s.x+o.x-t-r,s.y=s.y+o.y-t-l,s.width=o.width+2*t+r,s.height=o.height+2*t+l,this.graph.getModel().setGeometry(a,s),this.graph.moveCells(i,t+r-o.x,t+l-o.y))}}finally{this.graph.getModel().endUpdate()}},mxStackLayout.prototype=new mxGraphLayout,mxStackLayout.prototype.constructor=mxStackLayout,mxStackLayout.prototype.horizontal=null,mxStackLayout.prototype.spacing=null,mxStackLayout.prototype.x0=null,mxStackLayout.prototype.y0=null,mxStackLayout.prototype.border=0,mxStackLayout.prototype.keepFirstLocation=!1,mxStackLayout.prototype.fill=!1,mxStackLayout.prototype.resizeParent=!1,mxStackLayout.prototype.resizeLast=!1,mxStackLayout.prototype.wrap=null,mxStackLayout.prototype.isHorizontal=function(){return this.horizontal},mxStackLayout.prototype.moveCell=function(e,t,n){var a=this.graph.getModel(),i=a.getParent(e),o=this.isHorizontal();if(null!=e&&null!=i){var s=0,r=0,l=a.getChildCount(i);for(t=o?t:n,null!=(s=this.graph.getView().getState(i))&&(t-=o?s.x:s.y),s=0;s<l;s++)if((n=a.getChildAt(i,s))!=e&&null!=(n=a.getGeometry(n))){if(n=o?n.x+n.width/2:n.y+n.height/2,r<t&&n>t)break;r=n}o=i.getIndex(e),o=Math.max(0,s-(s>o?1:0)),a.add(i,e,o)}},mxStackLayout.prototype.getParentSize=function(e){var t=this.graph.getModel(),n=t.getGeometry(e);return null!=this.graph.container&&(null==n&&t.isLayer(e)||e==this.graph.getView().currentRoot)&&(n=new mxRectangle(0,0,this.graph.container.offsetWidth-1,this.graph.container.offsetHeight-1)),n},mxStackLayout.prototype.execute=function(e){if(null!=e){var t=this.isHorizontal(),n=this.graph.getModel(),a=this.getParentSize(e),i=0;null!=a&&(i=t?a.height:a.width);var i=i-(2*this.spacing+2*this.border),o=this.x0+this.border,s=this.y0+this.border;if(this.graph.isSwimlane(e)){var r=this.graph.getCellStyle(e),l=mxUtils.getValue(r,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE);t==(r=mxUtils.getValue(r,mxConstants.STYLE_HORIZONTAL,!0))&&(i-=l),t?s+=l:o+=l}n.beginUpdate();try{for(var l=0,r=null,d=n.getChildCount(e),c=0;c<d;c++){var m=n.getChildAt(e,c);if(!this.isVertexIgnored(m)&&this.isVertexMovable(m)){var u=n.getGeometry(m);null!=u&&(u=u.clone(),null!=this.wrap&&null!=r&&(t&&r.x+r.width+u.width+2*this.spacing>this.wrap||!t&&r.y+r.height+u.height+2*this.spacing>this.wrap)&&(r=null,t?s+=l+this.spacing:o+=l+this.spacing,l=0),l=Math.max(l,t?u.height:u.width),null!=r?t?u.x=r.x+r.width+this.spacing:u.y=r.y+r.height+this.spacing:this.keepFirstLocation||(t?u.x=o:u.y=s),t?u.y=s:u.x=o,this.fill&&0<i&&(t?u.height=i:u.width=i),n.setGeometry(m,u),r=u)}}this.resizeParent&&null!=a&&null!=r&&!this.graph.isCellCollapsed(e)?(a=a.clone(),t?a.width=r.x+r.width+this.spacing:a.height=r.y+r.height+this.spacing,n.setGeometry(e,a)):this.resizeLast&&null!=a&&null!=r&&(t?r.width=a.width-r.x-this.spacing:r.height=a.height-r.y-this.spacing)}finally{n.endUpdate()}}},mxPartitionLayout.prototype=new mxGraphLayout,mxPartitionLayout.prototype.constructor=mxPartitionLayout,mxPartitionLayout.prototype.horizontal=null,mxPartitionLayout.prototype.spacing=null,mxPartitionLayout.prototype.border=null,mxPartitionLayout.prototype.resizeVertices=!0,mxPartitionLayout.prototype.isHorizontal=function(){return this.horizontal},mxPartitionLayout.prototype.moveCell=function(e,t,n){var a=(n=this.graph.getModel()).getParent(e);if(null!=e&&null!=a){for(var i=0,o=0,s=n.getChildCount(a),i=0;i<s;i++){var r=n.getChildAt(a,i);if(null!=(r=this.getVertexBounds(r))){if(r=r.x+r.width/2,o<t&&r>t)break;o=r}}t=a.getIndex(e),t=Math.max(0,i-(i>t?1:0)),n.add(a,e,t)}},mxPartitionLayout.prototype.execute=function(e){var t=this.isHorizontal(),n=this.graph.getModel(),a=n.getGeometry(e);if(null!=this.graph.container&&(null==a&&n.isLayer(e)||e==this.graph.getView().currentRoot)&&(a=new mxRectangle(0,0,this.graph.container.offsetWidth-1,this.graph.container.offsetHeight-1)),null!=a){for(var i=[],o=n.getChildCount(e),s=0;s<o;s++){c=n.getChildAt(e,s);!this.isVertexIgnored(c)&&this.isVertexMovable(c)&&i.push(c)}if(0<(o=i.length)){var r=this.border,l=this.border,d=(d=t?a.height:a.width)-2*this.border;if(e=this.graph.isSwimlane(e)?this.graph.getStartSize(e):new mxRectangle,d-=t?e.height:e.width,r+=e.width,l+=e.height,e=this.border+(o-1)*this.spacing,0<(a=t?(a.width-r-e)/o:(a.height-l-e)/o)){n.beginUpdate();try{for(s=0;s<o;s++){var c=i[s],m=n.getGeometry(c);null!=m&&(m=m.clone(),m.x=r,m.y=l,t?(this.resizeVertices&&(m.width=a,m.height=d),r+=a+this.spacing):(this.resizeVertices&&(m.height=a,m.width=d),l+=a+this.spacing),n.setGeometry(c,m))}}finally{n.endUpdate()}}}}},mxCompactTreeLayout.prototype=new mxGraphLayout,mxCompactTreeLayout.prototype.constructor=mxCompactTreeLayout,mxCompactTreeLayout.prototype.horizontal=null,mxCompactTreeLayout.prototype.invert=null,mxCompactTreeLayout.prototype.resizeParent=!0,mxCompactTreeLayout.prototype.groupPadding=10,mxCompactTreeLayout.prototype.parentsChanged=null,mxCompactTreeLayout.prototype.moveTree=!1,mxCompactTreeLayout.prototype.levelDistance=10,mxCompactTreeLayout.prototype.nodeDistance=20,mxCompactTreeLayout.prototype.resetEdges=!0,mxCompactTreeLayout.prototype.prefHozEdgeSep=5,mxCompactTreeLayout.prototype.prefVertEdgeOff=4,mxCompactTreeLayout.prototype.minEdgeJetty=8,mxCompactTreeLayout.prototype.channelBuffer=4,mxCompactTreeLayout.prototype.edgeRouting=!0,mxCompactTreeLayout.prototype.isVertexIgnored=function(e){return mxGraphLayout.prototype.isVertexIgnored.apply(this,arguments)||0==this.graph.getConnections(e).length},mxCompactTreeLayout.prototype.isHorizontal=function(){return this.horizontal},mxCompactTreeLayout.prototype.execute=function(e,t){this.parent=e;var n=this.graph.getModel();if(null==t)if(0<this.graph.getEdges(e,n.getParent(e),this.invert,!this.invert,!1).length)t=e;else if(0<(s=this.graph.findTreeRoots(e,!0,this.invert)).length)for(var a=0;a<s.length;a++)if(!this.isVertexIgnored(s[a])&&0<this.graph.getEdges(s[a],null,this.invert,!this.invert,!1).length){t=s[a];break}if(null!=t){this.parentsChanged=this.resizeParent?{}:null,n.beginUpdate();try{var i=this.dfs(t,e);if(null!=i){this.layout(i);var o=this.graph.gridSize,s=o;if(!this.moveTree){var r=this.getVertexBounds(t);null!=r&&(o=r.x,s=r.y)}if(r=null,null!=(r=this.isHorizontal()?this.horizontalLayout(i,o,s):this.verticalLayout(i,null,o,s))){var l=a=0;0>r.x&&(a=Math.abs(o-r.x)),0>r.y&&(l=Math.abs(s-r.y)),(0!=a||0!=l)&&this.moveNode(i,a,l),this.resizeParent&&this.adjustParents(),this.edgeRouting&&this.localEdgeProcessing(i)}}}finally{n.endUpdate()}}},mxCompactTreeLayout.prototype.moveNode=function(e,t,n){for(e.x+=t,e.y+=n,this.apply(e),e=e.child;null!=e;)this.moveNode(e,t,n),e=e.next},mxCompactTreeLayout.prototype.dfs=function(e,t,n){n=null!=n?n:[];var a=mxCellPath.create(e),i=null;if(null!=e&&null==n[a]&&!this.isVertexIgnored(e)){n[a]=e;var i=this.createNode(e),a=this.graph.getModel(),o=null;e=this.graph.getEdges(e,t,this.invert,!this.invert,!1,!0);for(var s=this.graph.getView(),r=0;r<e.length;r++){d=e[r];if(!this.isEdgeIgnored(d)){this.resetEdges&&this.setEdgePoints(d,null),this.edgeRouting&&(this.setEdgeStyleEnabled(d,!1),this.setEdgePoints(d,null));var l=s.getState(d),d=null!=l?l.getVisibleTerminal(this.invert):s.getVisibleTerminal(d,this.invert);null!=(l=this.dfs(d,t,n))&&null!=a.getGeometry(d)&&(null==o?i.child=l:o.next=l,o=l)}}}return i},mxCompactTreeLayout.prototype.layout=function(e){if(null!=e){for(var t=e.child;null!=t;)this.layout(t),t=t.next;null!=e.child?this.attachParent(e,this.join(e)):this.layoutLeaf(e)}},mxCompactTreeLayout.prototype.horizontalLayout=function(e,t,n,a){if(e.x+=t+e.offsetX,e.y+=n+e.offsetY,a=this.apply(e,a),null!=(t=e.child)){a=this.horizontalLayout(t,e.x,e.y,a),n=e.y+t.offsetY;for(var i=t.next;null!=i;)a=this.horizontalLayout(i,e.x+t.offsetX,n,a),n+=i.offsetY,i=i.next}return a},mxCompactTreeLayout.prototype.verticalLayout=function(e,t,n,a,i){if(e.x+=n+e.offsetY,e.y+=a+e.offsetX,i=this.apply(e,i),null!=(t=e.child))for(i=this.verticalLayout(t,e,e.x,e.y,i),n=e.x+t.offsetY,a=t.next;null!=a;)i=this.verticalLayout(a,e,n,e.y+t.offsetX,i),n+=a.offsetY,a=a.next;return i},mxCompactTreeLayout.prototype.attachParent=function(e,t){var n=this.nodeDistance+this.levelDistance,a=(t-e.width)/2-this.nodeDistance,i=a+e.width+2*this.nodeDistance-t;e.child.offsetX=n+e.height,e.child.offsetY=i,e.contour.upperHead=this.createLine(e.height,0,this.createLine(n,i,e.contour.upperHead)),e.contour.lowerHead=this.createLine(e.height,0,this.createLine(n,a,e.contour.lowerHead))},mxCompactTreeLayout.prototype.layoutLeaf=function(e){var t=2*this.nodeDistance;e.contour.upperTail=this.createLine(e.height+t,0),e.contour.upperHead=e.contour.upperTail,e.contour.lowerTail=this.createLine(0,-e.width-t),e.contour.lowerHead=this.createLine(e.height+t,0,e.contour.lowerTail)},mxCompactTreeLayout.prototype.join=function(e){var t=2*this.nodeDistance,n=e.child;e.contour=n.contour;for(var a=n.width+t,i=a,n=n.next;null!=n;){var o=this.merge(e.contour,n.contour);n.offsetY=o+a,n.offsetX=0,i+=o+(a=n.width+t),n=n.next}return i},mxCompactTreeLayout.prototype.merge=function(e,t){for(var n=0,a=0,i=0,o=e.lowerHead,s=t.upperHead;null!=s&&null!=o;){var r=this.offset(n,a,s.dx,s.dy,o.dx,o.dy),a=a+r,i=i+r;n+s.dx<=o.dx?(n+=s.dx,a+=s.dy,s=s.next):(n-=o.dx,a-=o.dy,o=o.next)}return null!=s?(n=this.bridge(e.upperTail,0,0,s,n,a),e.upperTail=null!=n.next?t.upperTail:n,e.lowerTail=t.lowerTail):null==(n=this.bridge(t.lowerTail,n,a,o,0,0)).next&&(e.lowerTail=n),e.lowerHead=t.lowerHead,i},mxCompactTreeLayout.prototype.offset=function(e,t,n,a,i,o){var s=0;return i<=e||0>=e+n?0:(s=0<i*a-n*o?0>e?e*a/n-t:0<e?e*o/i-t:-t:i<e+n?o-(t+(i-e)*a/n):i>e+n?(n+e)*o/i-(t+a):o-(t+a),0<s?s:0)},mxCompactTreeLayout.prototype.bridge=function(e,t,n,a,i,o){return t=i+a.dx-t,i=i=0,0==a.dx?i=a.dy:(i=t*a.dy,i/=a.dx),t=this.createLine(t,i,a.next),e.next=this.createLine(0,o+a.dy-i-n,t),t},mxCompactTreeLayout.prototype.createNode=function(e){var t={};return t.cell=e,t.x=0,t.y=0,t.width=0,t.height=0,null!=(e=this.getVertexBounds(e))&&(this.isHorizontal()?(t.width=e.height,t.height=e.width):(t.width=e.width,t.height=e.height)),t.offsetX=0,t.offsetY=0,t.contour={},t},mxCompactTreeLayout.prototype.apply=function(e,t){var n=this.graph.getModel(),a=e.cell,i=n.getGeometry(a);return null!=a&&null!=i&&(this.isVertexMovable(a)&&(i=this.setVertexLocation(a,e.x,e.y),this.resizeParent&&(n=n.getParent(a),a=mxCellPath.create(n),null==this.parentsChanged[a]&&(this.parentsChanged[a]=n))),t=null==t?new mxRectangle(i.x,i.y,i.width,i.height):new mxRectangle(Math.min(t.x,i.x),Math.min(t.y,i.y),Math.max(t.x+t.width,i.x+i.width),Math.max(t.y+t.height,i.y+i.height))),t},mxCompactTreeLayout.prototype.createLine=function(e,t,n){var a={};return a.dx=e,a.dy=t,a.next=n,a},mxCompactTreeLayout.prototype.adjustParents=function(){var e,t=[];for(e in this.parentsChanged)t.push(this.parentsChanged[e]);this.arrangeGroups(mxUtils.sortCells(t,!0),this.groupPadding)},mxCompactTreeLayout.prototype.localEdgeProcessing=function(e){for(this.processNodeOutgoing(e),e=e.child;null!=e;)this.localEdgeProcessing(e),e=e.next},mxCompactTreeLayout.prototype.processNodeOutgoing=function(e){for(var t=e.child,n=e.cell,a=0,i=[];null!=t;){a++;o=t.x;this.horizontal&&(o=t.y),i.push(new WeightedCellSorter(t,o)),t=t.next}i.sort(WeightedCellSorter.prototype.compare),(o=e.width)>(s=(a+1)*this.prefHozEdgeSep)+2*this.prefHozEdgeSep&&(o-=2*this.prefHozEdgeSep),t=(e=o/a)/2,o>s+2*this.prefHozEdgeSep&&(t+=this.prefHozEdgeSep);for(var o=this.minEdgeJetty-this.prefVertEdgeOff,s=0,r=this.getVertexBounds(n),l=0;l<i.length;l++){for(var d=i[l].cell.cell,c=this.getVertexBounds(d),d=this.graph.getEdgesBetween(n,d,!1),m=[],u=0,p=0,g=0;g<d.length;g++)this.horizontal?(u=r.x+r.width,p=r.y+t,m.push(new mxPoint(u,p)),u=r.x+r.width+o,m.push(new mxPoint(u,p)),p=c.y+c.height/2):(u=r.x+t,p=r.y+r.height,m.push(new mxPoint(u,p)),p=r.y+r.height+o,m.push(new mxPoint(u,p)),u=c.x+c.width/2),m.push(new mxPoint(u,p)),this.setEdgePoints(d[g],m);l<a/2?o+=this.prefVertEdgeOff:l>a/2&&(o-=this.prefVertEdgeOff),t+=e,s=Math.max(s,o)}},WeightedCellSorter.prototype.weightedValue=0,WeightedCellSorter.prototype.nudge=!1,WeightedCellSorter.prototype.visited=!1,WeightedCellSorter.prototype.rankIndex=null,WeightedCellSorter.prototype.cell=null,WeightedCellSorter.prototype.compare=function(e,t){return null!=e&&null!=t?t.weightedValue>e.weightedValue?1:t.weightedValue<e.weightedValue?-1:t.nudge?1:-1:0},mxFastOrganicLayout.prototype=new mxGraphLayout,mxFastOrganicLayout.prototype.constructor=mxFastOrganicLayout,mxFastOrganicLayout.prototype.useInputOrigin=!0,mxFastOrganicLayout.prototype.resetEdges=!0,mxFastOrganicLayout.prototype.disableEdgeStyle=!0,mxFastOrganicLayout.prototype.forceConstant=50,mxFastOrganicLayout.prototype.forceConstantSquared=0,mxFastOrganicLayout.prototype.minDistanceLimit=2,mxFastOrganicLayout.prototype.maxDistanceLimit=500,mxFastOrganicLayout.prototype.minDistanceLimitSquared=4,mxFastOrganicLayout.prototype.initialTemp=200,mxFastOrganicLayout.prototype.temperature=0,mxFastOrganicLayout.prototype.maxIterations=0,mxFastOrganicLayout.prototype.iteration=0,mxFastOrganicLayout.prototype.allowedToRun=!0,mxFastOrganicLayout.prototype.isVertexIgnored=function(e){return mxGraphLayout.prototype.isVertexIgnored.apply(this,arguments)||0==this.graph.getConnections(e).length},mxFastOrganicLayout.prototype.execute=function(e){var t=this.graph.getModel();this.vertexArray=[];for(var n=this.graph.getChildVertices(e),a=0;a<n.length;a++)this.isVertexIgnored(n[a])||this.vertexArray.push(n[a]);var i=this.useInputOrigin?this.graph.view.getBounds(this.vertexArray):null,o=this.vertexArray.length;for(this.indices=[],this.dispX=[],this.dispY=[],this.cellLocation=[],this.isMoveable=[],this.neighbours=[],this.radius=[],this.radiusSquared=[],.001>this.forceConstant&&(this.forceConstant=.001),this.forceConstantSquared=this.forceConstant*this.forceConstant,a=0;a<this.vertexArray.length;a++){var s=this.vertexArray[a];this.cellLocation[a]=[];p=mxCellPath.create(s);this.indices[p]=a;var r=this.getVertexBounds(s),l=r.width,d=r.height,c=r.x,m=r.y;this.cellLocation[a][0]=c+l/2,this.cellLocation[a][1]=m+d/2,this.radius[a]=Math.min(l,d),this.radiusSquared[a]=this.radius[a]*this.radius[a]}t.beginUpdate();try{for(a=0;a<o;a++){this.dispX[a]=0,this.dispY[a]=0,this.isMoveable[a]=this.isVertexMovable(this.vertexArray[a]);var u=this.graph.getConnections(this.vertexArray[a],e),n=this.graph.getOpposites(u,this.vertexArray[a]);for(this.neighbours[a]=[],l=0;l<n.length;l++){this.resetEdges&&this.graph.resetEdge(u[l]),this.disableEdgeStyle&&this.setEdgeStyleEnabled(u[l],!1);var p=mxCellPath.create(n[l]),g=this.indices[p];this.neighbours[a][l]=null!=g?g:a}}for(this.temperature=this.initialTemp,0==this.maxIterations&&(this.maxIterations=20*Math.sqrt(o)),this.iteration=0;this.iteration<this.maxIterations;this.iteration++){if(!this.allowedToRun)return;this.calcRepulsion(),this.calcAttraction(),this.calcPositions(),this.reduceTemperature()}for(e=n=null,a=0;a<this.vertexArray.length;a++)s=this.vertexArray[a],this.isVertexMovable(s)&&null!=(r=this.getVertexBounds(s))&&(this.cellLocation[a][0]-=r.width/2,this.cellLocation[a][1]-=r.height/2,c=this.graph.snap(this.cellLocation[a][0]),m=this.graph.snap(this.cellLocation[a][1]),this.setVertexLocation(s,c,m),n=null==n?c:Math.min(n,c),e=null==e?m:Math.min(e,m));a=1-(n||0),s=1-(e||0),null!=i&&(a+=i.x,s+=i.y),this.graph.moveCells(this.vertexArray,a,s)}finally{t.endUpdate()}},mxFastOrganicLayout.prototype.calcPositions=function(){for(var e=0;e<this.vertexArray.length;e++)if(this.isMoveable[e]){.001>(n=Math.sqrt(this.dispX[e]*this.dispX[e]+this.dispY[e]*this.dispY[e]))&&(n=.001);var t=this.dispX[e]/n*Math.min(n,this.temperature),n=this.dispY[e]/n*Math.min(n,this.temperature);this.dispX[e]=0,this.dispY[e]=0,this.cellLocation[e][0]+=t,this.cellLocation[e][1]+=n}},mxFastOrganicLayout.prototype.calcAttraction=function(){for(var e=0;e<this.vertexArray.length;e++)for(var t=0;t<this.neighbours[e].length;t++){var n=this.neighbours[e][t];if(e!=n&&this.isMoveable[e]&&this.isMoveable[n]){var a=(o=this.cellLocation[e][0]-this.cellLocation[n][0])*o+(s=this.cellLocation[e][1]-this.cellLocation[n][1])*s-this.radiusSquared[e]-this.radiusSquared[n];a<this.minDistanceLimitSquared&&(a=this.minDistanceLimitSquared);var i=Math.sqrt(a),o=o/i*(a=a/this.forceConstant),s=s/i*a;this.dispX[e]-=o,this.dispY[e]-=s,this.dispX[n]+=o,this.dispY[n]+=s}}},mxFastOrganicLayout.prototype.calcRepulsion=function(){for(var e=this.vertexArray.length,t=0;t<e;t++)for(var n=t;n<e;n++){if(!this.allowedToRun)return;if(n!=t&&this.isMoveable[t]&&this.isMoveable[n]){var a=this.cellLocation[t][0]-this.cellLocation[n][0],i=this.cellLocation[t][1]-this.cellLocation[n][1];0==a&&(a=.01+Math.random()),0==i&&(i=.01+Math.random());var o=Math.sqrt(a*a+i*i),s=o-this.radius[t]-this.radius[n];s>this.maxDistanceLimit||(s<this.minDistanceLimit&&(s=this.minDistanceLimit),s=this.forceConstantSquared/s,a=a/o*s,i=i/o*s,this.dispX[t]+=a,this.dispY[t]+=i,this.dispX[n]-=a,this.dispY[n]-=i)}}},mxFastOrganicLayout.prototype.reduceTemperature=function(){this.temperature=this.initialTemp*(1-this.iteration/this.maxIterations)},mxCircleLayout.prototype=new mxGraphLayout,mxCircleLayout.prototype.constructor=mxCircleLayout,mxCircleLayout.prototype.radius=null,mxCircleLayout.prototype.moveCircle=!1,mxCircleLayout.prototype.x0=0,mxCircleLayout.prototype.y0=0,mxCircleLayout.prototype.resetEdges=!0,mxCircleLayout.prototype.disableEdgeStyle=!0,mxCircleLayout.prototype.execute=function(e){var t=this.graph.getModel();t.beginUpdate();try{for(var n=0,a=null,i=null,o=[],s=t.getChildCount(e),r=0;r<s;r++){var l=t.getChildAt(e,r);if(this.isVertexIgnored(l))this.isEdgeIgnored(l)||(this.resetEdges&&this.graph.resetEdge(l),this.disableEdgeStyle&&this.setEdgeStyleEnabled(l,!1));else{o.push(l);var d=this.getVertexBounds(l),a=null==a?d.y:Math.min(a,d.y),i=null==i?d.x:Math.min(i,d.x),n=Math.max(n,Math.max(d.width,d.height))}}var c=this.getRadius(o.length,n);this.moveCircle&&(i=this.x0,a=this.y0),this.circle(o,c,i,a)}finally{t.endUpdate()}},mxCircleLayout.prototype.getRadius=function(e,t){return Math.max(e*t/Math.PI,this.radius)},mxCircleLayout.prototype.circle=function(e,t,n,a){for(var i=e.length,o=2*Math.PI/i,s=0;s<i;s++)this.isVertexMovable(e[s])&&this.setVertexLocation(e[s],n+t+t*Math.sin(s*o),a+t+t*Math.cos(s*o))},mxParallelEdgeLayout.prototype=new mxGraphLayout,mxParallelEdgeLayout.prototype.constructor=mxParallelEdgeLayout,mxParallelEdgeLayout.prototype.spacing=20,mxParallelEdgeLayout.prototype.execute=function(e){e=this.findParallels(e),this.graph.model.beginUpdate();try{for(var t in e){var n=e[t];1<n.length&&this.layout(n)}}finally{this.graph.model.endUpdate()}},mxParallelEdgeLayout.prototype.findParallels=function(e){for(var t=this.graph.getModel(),n=[],a=t.getChildCount(e),i=0;i<a;i++){var o=t.getChildAt(e,i);if(!this.isEdgeIgnored(o)){var s=this.getEdgeId(o);null!=s&&(null==n[s]&&(n[s]=[]),n[s].push(o))}}return n},mxParallelEdgeLayout.prototype.getEdgeId=function(e){var t=this.graph.getView(),n=t.getState(e),a=null!=n?n.getVisibleTerminal(!0):t.getVisibleTerminal(e,!0);return e=null!=n?n.getVisibleTerminal(!1):t.getVisibleTerminal(e,!1),null!=a&&null!=e?(a=mxCellPath.create(a),e=mxCellPath.create(e),a>e?e+"-"+a:a+"-"+e):null},mxParallelEdgeLayout.prototype.layout=function(e){t=e[0];if((s=(n=this.graph.getModel()).getGeometry(n.getTerminal(t,!0)))==(o=n.getGeometry(n.getTerminal(t,!1))))for(var t=s.x+s.width+this.spacing,n=s.y+s.height/2,a=0;a<e.length;a++)this.route(e[a],t,n),t+=this.spacing;else if(null!=s&&null!=o)for(var t=s.x+s.width/2,n=s.y+s.height/2,a=o.x+o.width/2-t,i=o.y+o.height/2-n,o=Math.sqrt(a*a+i*i),s=i*this.spacing/o,o=a*this.spacing/o,t=t+a/2+s*(e.length-1)/2,n=n+i/2-o*(e.length-1)/2,a=0;a<e.length;a++)this.route(e[a],t,n),t-=s,n+=o},mxParallelEdgeLayout.prototype.route=function(e,t,n){this.graph.isCellMovable(e)&&this.setEdgePoints(e,[new mxPoint(t,n)])},mxCompositeLayout.prototype=new mxGraphLayout,mxCompositeLayout.prototype.constructor=mxCompositeLayout,mxCompositeLayout.prototype.layouts=null,mxCompositeLayout.prototype.master=null,mxCompositeLayout.prototype.moveCell=function(e,t,n){null!=this.master?this.master.move.apply(this.master,arguments):this.layouts[0].move.apply(this.layouts[0],arguments)},mxCompositeLayout.prototype.execute=function(e){var t=this.graph.getModel();t.beginUpdate();try{for(var n=0;n<this.layouts.length;n++)this.layouts[n].execute.apply(this.layouts[n],arguments)}finally{t.endUpdate()}},mxEdgeLabelLayout.prototype=new mxGraphLayout,mxEdgeLabelLayout.prototype.constructor=mxEdgeLabelLayout,mxEdgeLabelLayout.prototype.execute=function(e){for(var t=this.graph.view,n=this.graph.getModel(),a=[],i=[],o=n.getChildCount(e),s=0;s<o;s++){var r=n.getChildAt(e,s),l=t.getState(r);null!=l&&(this.isVertexIgnored(r)?this.isEdgeIgnored(r)||a.push(l):i.push(l))}this.placeLabels(i,a)},mxEdgeLabelLayout.prototype.placeLabels=function(e,t){var n=this.graph.getModel();n.beginUpdate();try{for(var a=0;a<t.length;a++){var i=t[a];if(null!=i&&null!=i.text&&null!=i.text.boundingBox)for(var o=0;o<e.length;o++){var s=e[o];null!=s&&this.avoid(i,s)}}}finally{n.endUpdate()}},mxEdgeLabelLayout.prototype.avoid=function(e,t){var n=this.graph.getModel(),a=e.text.boundingBox;if(mxUtils.intersects(a,t)){var i=-a.y-a.height+t.y,o=-a.y+t.y+t.height,i=Math.abs(i)<Math.abs(o)?i:o,o=-a.x-a.width+t.x,a=-a.x+t.x+t.width,a=Math.abs(o)<Math.abs(a)?o:a;Math.abs(a)<Math.abs(i)?i=0:a=0,null!=(o=n.getGeometry(e.cell))&&(o=o.clone(),null!=o.offset?(o.offset.x+=a,o.offset.y+=i):o.offset=new mxPoint(a,i),n.setGeometry(e.cell,o))}},mxGraphAbstractHierarchyCell.prototype.maxRank=-1,mxGraphAbstractHierarchyCell.prototype.minRank=-1,mxGraphAbstractHierarchyCell.prototype.x=null,mxGraphAbstractHierarchyCell.prototype.y=null,mxGraphAbstractHierarchyCell.prototype.width=0,mxGraphAbstractHierarchyCell.prototype.height=0,mxGraphAbstractHierarchyCell.prototype.nextLayerConnectedCells=null,mxGraphAbstractHierarchyCell.prototype.previousLayerConnectedCells=null,mxGraphAbstractHierarchyCell.prototype.temp=null,mxGraphAbstractHierarchyCell.prototype.getNextLayerConnectedCells=function(e){return null},mxGraphAbstractHierarchyCell.prototype.getPreviousLayerConnectedCells=function(e){return null},mxGraphAbstractHierarchyCell.prototype.isEdge=function(){return!1},mxGraphAbstractHierarchyCell.prototype.isVertex=function(){return!1},mxGraphAbstractHierarchyCell.prototype.getGeneralPurposeVariable=function(e){return null},mxGraphAbstractHierarchyCell.prototype.setGeneralPurposeVariable=function(e,t){return null},mxGraphAbstractHierarchyCell.prototype.setX=function(e,t){this.isVertex()?this.x[0]=t:this.isEdge()&&(this.x[e-this.minRank-1]=t)},mxGraphAbstractHierarchyCell.prototype.getX=function(e){return this.isVertex()?this.x[0]:this.isEdge()?this.x[e-this.minRank-1]:0},mxGraphAbstractHierarchyCell.prototype.setY=function(e,t){this.isVertex()?this.y[0]=t:this.isEdge()&&(this.y[e-this.minRank-1]=t)},mxGraphHierarchyNode.prototype=new mxGraphAbstractHierarchyCell,mxGraphHierarchyNode.prototype.constructor=mxGraphHierarchyNode,mxGraphHierarchyNode.prototype.cell=null,mxGraphHierarchyNode.prototype.connectsAsTarget=[],mxGraphHierarchyNode.prototype.connectsAsSource=[],mxGraphHierarchyNode.prototype.hashCode=!1,mxGraphHierarchyNode.prototype.getRankValue=function(e){return this.maxRank},mxGraphHierarchyNode.prototype.getNextLayerConnectedCells=function(e){if(null==this.nextLayerConnectedCells){this.nextLayerConnectedCells=[],this.nextLayerConnectedCells[0]=[];for(var t=0;t<this.connectsAsTarget.length;t++){var n=this.connectsAsTarget[t];-1==n.maxRank||n.maxRank==e+1?this.nextLayerConnectedCells[0].push(n.source):this.nextLayerConnectedCells[0].push(n)}}return this.nextLayerConnectedCells[0]},mxGraphHierarchyNode.prototype.getPreviousLayerConnectedCells=function(e){if(null==this.previousLayerConnectedCells){this.previousLayerConnectedCells=[],this.previousLayerConnectedCells[0]=[];for(var t=0;t<this.connectsAsSource.length;t++){var n=this.connectsAsSource[t];-1==n.minRank||n.minRank==e-1?this.previousLayerConnectedCells[0].push(n.target):this.previousLayerConnectedCells[0].push(n)}}return this.previousLayerConnectedCells[0]},mxGraphHierarchyNode.prototype.isVertex=function(){return!0},mxGraphHierarchyNode.prototype.getGeneralPurposeVariable=function(e){return this.temp[0]},mxGraphHierarchyNode.prototype.setGeneralPurposeVariable=function(e,t){this.temp[0]=t},mxGraphHierarchyNode.prototype.isAncestor=function(e){if(null!=e&&null!=this.hashCode&&null!=e.hashCode&&this.hashCode.length<e.hashCode.length){if(this.hashCode==e.hashCode)return!0;if(null==this.hashCode||null==this.hashCode)return!1;for(var t=0;t<this.hashCode.length;t++)if(this.hashCode[t]!=e.hashCode[t])return!1;return!0}return!1},mxGraphHierarchyNode.prototype.getCoreCell=function(){return this.cell},mxGraphHierarchyEdge.prototype=new mxGraphAbstractHierarchyCell,mxGraphHierarchyEdge.prototype.constructor=mxGraphHierarchyEdge,mxGraphHierarchyEdge.prototype.edges=null,mxGraphHierarchyEdge.prototype.source=null,mxGraphHierarchyEdge.prototype.target=null,mxGraphHierarchyEdge.prototype.isReversed=!1,mxGraphHierarchyEdge.prototype.invert=function(e){e=this.source,this.source=this.target,this.target=e,this.isReversed=!this.isReversed},mxGraphHierarchyEdge.prototype.getNextLayerConnectedCells=function(e){if(null==this.nextLayerConnectedCells){this.nextLayerConnectedCells=[];for(var t=0;t<this.temp.length;t++)this.nextLayerConnectedCells[t]=[],t==this.temp.length-1?this.nextLayerConnectedCells[t].push(this.source):this.nextLayerConnectedCells[t].push(this)}return this.nextLayerConnectedCells[e-this.minRank-1]},mxGraphHierarchyEdge.prototype.getPreviousLayerConnectedCells=function(e){if(null==this.previousLayerConnectedCells){this.previousLayerConnectedCells=[];for(var t=0;t<this.temp.length;t++)this.previousLayerConnectedCells[t]=[],0==t?this.previousLayerConnectedCells[t].push(this.target):this.previousLayerConnectedCells[t].push(this)}return this.previousLayerConnectedCells[e-this.minRank-1]},mxGraphHierarchyEdge.prototype.isEdge=function(){return!0},mxGraphHierarchyEdge.prototype.getGeneralPurposeVariable=function(e){return this.temp[e-this.minRank-1]},mxGraphHierarchyEdge.prototype.setGeneralPurposeVariable=function(e,t){this.temp[e-this.minRank-1]=t},mxGraphHierarchyEdge.prototype.getCoreCell=function(){return null!=this.edges&&0<this.edges.length?this.edges[0]:null},mxGraphHierarchyModel.prototype.maxRank=null,mxGraphHierarchyModel.prototype.vertexMapper=null,mxGraphHierarchyModel.prototype.edgeMapper=null,mxGraphHierarchyModel.prototype.ranks=null,mxGraphHierarchyModel.prototype.roots=null,mxGraphHierarchyModel.prototype.parent=null,mxGraphHierarchyModel.prototype.dfsCount=0,mxGraphHierarchyModel.prototype.SOURCESCANSTARTRANK=1e8,mxGraphHierarchyModel.prototype.tightenToSource=!1,mxGraphHierarchyModel.prototype.createInternalCells=function(e,t,n){for(var a=e.getGraph(),i=0;i<t.length;i++){n[i]=new mxGraphHierarchyNode(t[i]);var o=mxCellPath.create(t[i]);this.vertexMapper[o]=n[i],o=e.getEdges(t[i]),n[i].connectsAsSource=[];for(var s=0;s<o.length;s++)if((d=e.getVisibleTerminal(o[s],!1))!=t[i]&&d!=t[i]&&e.graph.model.isVertex(d)&&!e.isVertexIgnored(d)){var r=e.getEdgesBetween(t[i],d,!1),l=e.getEdgesBetween(t[i],d,!0),d=mxCellPath.create(r[0]);if(null!=r&&0<r.length&&null==this.edgeMapper[d]&&2*l.length>=r.length){for(var l=new mxGraphHierarchyEdge(r),c=0;c<r.length;c++){var m=r[c],d=mxCellPath.create(m);this.edgeMapper[d]=l,a.resetEdge(m),e.disableEdgeStyle&&(e.setEdgeStyleEnabled(m,!1),e.setOrthogonalEdge(m,!0))}l.source=n[i],0>mxUtils.indexOf(n[i].connectsAsSource,l)&&n[i].connectsAsSource.push(l)}}n[i].temp[0]=0}},mxGraphHierarchyModel.prototype.initialRank=function(){var e=[];if(null!=this.roots)for(l=0;l<this.roots.length;l++){var t=mxCellPath.create(this.roots[l]);null!=(t=this.vertexMapper[t])&&e.push(t)}for(var n in this.vertexMapper)t=this.vertexMapper[n],t.temp[0]=-1;for(var a=e.slice();0<e.length;){var i,o;i=(t=e[0]).connectsAsTarget,o=t.connectsAsSource;for(var s=!0,r=this.SOURCESCANSTARTRANK,l=0;l<i.length;l++){var d=i[l];if(5270620!=d.temp[0]){s=!1;break}d=d.source,r=Math.min(r,d.temp[0]-1)}if(s){if(t.temp[0]=r,this.maxRank=Math.min(this.maxRank,r),null!=o)for(l=0;l<o.length;l++)d=o[l],d.temp[0]=5270620,-1==(d=d.target).temp[0]&&(e.push(d),d.temp[0]=-2);e.shift()}else if(l=e.shift(),e.push(t),l==t&&1==e.length)break}for(n in this.vertexMapper)t=this.vertexMapper[n],t.temp[0]-=this.maxRank;for(l=0;l<a.length;l++)for(e=0,i=(t=a[l]).connectsAsSource,n=0;n<i.length;n++)d=i[n],d=d.target,t.temp[0]=Math.max(e,d.temp[0]+1),e=t.temp[0];this.maxRank=this.SOURCESCANSTARTRANK-this.maxRank},mxGraphHierarchyModel.prototype.fixRanks=function(){var e=[];this.ranks=[];for(a=0;a<this.maxRank+1;a++)e[a]=[],this.ranks[a]=e[a];n=null;if(null!=this.roots)for(var t=this.roots,n=[],a=0;a<t.length;a++){var i=mxCellPath.create(t[a]);n[a]=this.vertexMapper[i]}this.visit(function(t,n,a,i,o){if(0==o&&0>n.maxRank&&0>n.minRank&&(e[n.temp[0]].push(n),n.maxRank=n.temp[0],n.minRank=n.temp[0],n.temp[0]=e[n.maxRank].length-1),null!=t&&null!=a&&1<t.maxRank-n.maxRank)for(a.maxRank=t.maxRank,a.minRank=n.maxRank,a.temp=[],a.x=[],a.y=[],t=a.minRank+1;t<a.maxRank;t++)e[t].push(a),a.setGeneralPurposeVariable(t,e[t].length-1)},n,!1,null)},mxGraphHierarchyModel.prototype.visit=function(e,t,n,a){if(null!=t){for(var i=0;i<t.length;i++){var o=t[i];null!=o&&(null==a&&(a={}),n?(o.hashCode=[],o.hashCode[0]=this.dfsCount,o.hashCode[1]=i,this.extendedDfs(null,o,null,e,a,o.hashCode,i,0)):this.dfs(null,o,null,e,a,0))}this.dfsCount++}},mxGraphHierarchyModel.prototype.dfs=function(e,t,n,a,i,o){if(null!=t){var s=mxCellPath.create(t.cell);if(null==i[s])for(i[s]=t,a(e,t,n,o,0),e=t.connectsAsSource.slice(),n=0;n<e.length;n++)s=e[n],this.dfs(t,s.target,s,a,i,o+1);else a(e,t,n,o,1)}},mxGraphHierarchyModel.prototype.extendedDfs=function(e,t,n,a,i,o,s,r){if(null!=t)if(null==e||null!=t.hashCode&&t.hashCode[0]==e.hashCode[0]||(o=e.hashCode.length+1,t.hashCode=e.hashCode.slice(),t.hashCode[o-1]=s),s=mxCellPath.create(t.cell),null==i[s])for(i[s]=t,a(e,t,n,r,0),e=t.connectsAsSource.slice(),n=0;n<e.length;n++)s=e[n],this.extendedDfs(t,s.target,s,a,i,t.hashCode,n,r+1);else a(e,t,n,r,1)},mxHierarchicalLayoutStage.prototype.execute=function(e){},mxMedianHybridCrossingReduction.prototype=new mxHierarchicalLayoutStage,mxMedianHybridCrossingReduction.prototype.constructor=mxMedianHybridCrossingReduction,mxMedianHybridCrossingReduction.prototype.layout=null,mxMedianHybridCrossingReduction.prototype.maxIterations=24,mxMedianHybridCrossingReduction.prototype.nestedBestRanks=null,mxMedianHybridCrossingReduction.prototype.currentBestCrossings=0,mxMedianHybridCrossingReduction.prototype.iterationsWithoutImprovement=0,mxMedianHybridCrossingReduction.prototype.maxNoImprovementIterations=2,mxMedianHybridCrossingReduction.prototype.execute=function(e){e=this.layout.getModel(),this.nestedBestRanks=[];for(a=0;a<e.ranks.length;a++)this.nestedBestRanks[a]=e.ranks[a].slice();for(var t=0,n=this.calculateCrossings(e),a=0;a<this.maxIterations&&t<this.maxNoImprovementIterations;a++){this.weightedMedian(a,e),this.transpose(a,e);var i=this.calculateCrossings(e);if(i<n)for(n=i,i=t=0;i<this.nestedBestRanks.length;i++)for(var o=e.ranks[i],s=0;s<o.length;s++){var r=o[s];this.nestedBestRanks[i][r.getGeneralPurposeVariable(i)]=r}else for(t++,i=0;i<this.nestedBestRanks.length;i++)for(o=e.ranks[i],s=0;s<o.length;s++)(r=o[s]).setGeneralPurposeVariable(i,s);if(0==n)break}for(t=[],n=[],a=0;a<e.maxRank+1;a++)n[a]=[],t[a]=n[a];for(a=0;a<this.nestedBestRanks.length;a++)for(i=0;i<this.nestedBestRanks[a].length;i++)n[a].push(this.nestedBestRanks[a][i]);e.ranks=t},mxMedianHybridCrossingReduction.prototype.calculateCrossings=function(e){for(var t=e.ranks.length,n=0,a=1;a<t;a++)n+=this.calculateRankCrossing(a,e);return n},mxMedianHybridCrossingReduction.prototype.calculateRankCrossing=function(e,t){for(var n=0,a=t.ranks[e],i=a.length,o=t.ranks[e-1].length,s=[],r=0;r<i;r++)s[r]=[];for(r=0;r<a.length;r++)for(var l=a[r],d=l.getGeneralPurposeVariable(e),c=l.getPreviousLayerConnectedCells(e),l=0;l<c.length;l++){var m=c[l].getGeneralPurposeVariable(e-1);s[d][m]=201207}for(r=0;r<i;r++)for(l=0;l<o;l++)if(201207==s[r][l]){for(a=r+1;a<i;a++)for(d=0;d<l;d++)201207==s[a][d]&&n++;for(a=0;a<r;a++)for(d=l+1;d<o;d++)201207==s[a][d]&&n++}return n/2},mxMedianHybridCrossingReduction.prototype.transpose=function(e,t){for(var n=!0,a=0;n&&10>a++;)for(var i=1==e%2&&1==a%2,n=!1,o=0;o<t.ranks.length;o++){for(var s=t.ranks[o],r=[],l=0;l<s.length;l++)0>(f=(b=s[l]).getGeneralPurposeVariable(o))&&(f=l),r[f]=b;for(var d=f=b=null,c=null,m=null,u=null,p=null,g=null,h=null,v=null,l=0;l<s.length-1;l++){if(0==l){for(var b=(h=r[l]).getNextLayerConnectedCells(o),f=h.getPreviousLayerConnectedCells(o),m=[],u=[],E=0;E<b.length;E++)m[E]=b[E].getGeneralPurposeVariable(o+1);for(E=0;E<f.length;E++)u[E]=f[E].getGeneralPurposeVariable(o-1)}else b=d,f=c,m=p,u=g,h=v;for(d=(v=r[l+1]).getNextLayerConnectedCells(o),c=v.getPreviousLayerConnectedCells(o),p=[],g=[],E=0;E<d.length;E++)p[E]=d[E].getGeneralPurposeVariable(o+1);for(E=0;E<c.length;E++)g[E]=c[E].getGeneralPurposeVariable(o-1);for(var y=0,A=0,E=0;E<m.length;E++)for(var C=0;C<p.length;C++)m[E]>p[C]&&y++,m[E]<p[C]&&A++;for(E=0;E<u.length;E++)for(C=0;C<g.length;C++)u[E]>g[C]&&y++,u[E]<g[C]&&A++;(A<y||A==y&&i)&&(d=h.getGeneralPurposeVariable(o),h.setGeneralPurposeVariable(o,v.getGeneralPurposeVariable(o)),v.setGeneralPurposeVariable(o,d),d=b,c=f,p=m,g=u,v=h,i||(n=!0))}}},mxMedianHybridCrossingReduction.prototype.weightedMedian=function(e,t){var n=0==e%2;if(n)for(var a=t.maxRank-1;0<=a;a--)this.medianRank(a,n);else for(a=1;a<t.maxRank;a++)this.medianRank(a,n)},mxMedianHybridCrossingReduction.prototype.medianRank=function(e,t){for(var n=this.nestedBestRanks[e].length,a=[],i=[],o=0;o<n;o++){var s=this.nestedBestRanks[e][o],r=new MedianCellSorter;r.cell=s;var l;l=t?s.getNextLayerConnectedCells(e):s.getPreviousLayerConnectedCells(e);var d;d=t?e+1:e-1,null!=l&&0!=l.length?(r.medianValue=this.medianValue(l,d),a.push(r)):i[s.getGeneralPurposeVariable(e)]=!0}for(a.sort(MedianCellSorter.prototype.compare),o=0;o<n;o++)null==i[o]&&(s=a.shift().cell).setGeneralPurposeVariable(e,o)},mxMedianHybridCrossingReduction.prototype.medianValue=function(e,t){for(var n=[],a=0,i=0;i<e.length;i++){var o=e[i];n[a++]=o.getGeneralPurposeVariable(t)}return n.sort(function(e,t){return e-t}),1==a%2?n[Math.floor(a/2)]:2==a?(n[0]+n[1])/2:(i=a/2,o=n[i-1]-n[0],a=n[a-1]-n[i],(n[i-1]*a+n[i]*o)/(o+a))},MedianCellSorter.prototype.medianValue=0,MedianCellSorter.prototype.cell=!1,MedianCellSorter.prototype.compare=function(e,t){return null!=e&&null!=t?t.medianValue>e.medianValue?-1:t.medianValue<e.medianValue?1:0:0},mxMinimumCycleRemover.prototype=new mxHierarchicalLayoutStage,mxMinimumCycleRemover.prototype.constructor=mxMinimumCycleRemover,mxMinimumCycleRemover.prototype.layout=null,mxMinimumCycleRemover.prototype.execute=function(e){var t=this.layout.getModel(),n={},a=mxUtils.clone(t.vertexMapper,null,!0),i=null;if(null!=t.roots){var o=t.roots,i=[];for(e=0;e<o.length;e++){var s=mxCellPath.create(o[e]);i[e]=t.vertexMapper[s]}}if(t.visit(function(e,t,i,o,s){t.isAncestor(e)&&(i.invert(),mxUtils.remove(i,e.connectsAsSource),e.connectsAsTarget.push(i),mxUtils.remove(i,t.connectsAsTarget),t.connectsAsSource.push(i)),e=mxCellPath.create(t.cell),n[e]=t,delete a[e]},i,!0,null),i=null,0<a.lenth&&(i=mxUtils.clone(a,null,!0)),e=mxUtils.clone(n,null,!0),t.visit(function(e,t,i,o,s){t.isAncestor(e)&&(i.invert(),mxUtils.remove(i,e.connectsAsSource),t.connectsAsSource.push(i),e.connectsAsTarget.push(i),mxUtils.remove(i,t.connectsAsTarget)),e=mxCellPath.create(t.cell),n[e]=t,delete a[e]},a,!0,e),o=this.layout.getGraph(),null!=i&&0<i.length)for(t=t.roots,e=0;e<i.length;e++)s=i[e].cell,0==o.getIncomingEdges(s).length&&t.push(s)};var mxHierarchicalEdgeStyle={ORTHOGONAL:1,POLYLINE:2,STRAIGHT:3,CURVE:4};mxCoordinateAssignment.prototype=new mxHierarchicalLayoutStage,mxCoordinateAssignment.prototype.constructor=mxCoordinateAssignment,mxCoordinateAssignment.prototype.layout=null,mxCoordinateAssignment.prototype.intraCellSpacing=30,mxCoordinateAssignment.prototype.interRankCellSpacing=100,mxCoordinateAssignment.prototype.parallelEdgeSpacing=10,mxCoordinateAssignment.prototype.maxIterations=8,mxCoordinateAssignment.prototype.prefHozEdgeSep=5,mxCoordinateAssignment.prototype.prefVertEdgeOff=2,mxCoordinateAssignment.prototype.minEdgeJetty=12,mxCoordinateAssignment.prototype.channelBuffer=4,mxCoordinateAssignment.prototype.jettyPositions=null,mxCoordinateAssignment.prototype.orientation=mxConstants.DIRECTION_NORTH,mxCoordinateAssignment.prototype.initialX=null,mxCoordinateAssignment.prototype.limitX=null,mxCoordinateAssignment.prototype.currentXDelta=null,mxCoordinateAssignment.prototype.widestRank=null,mxCoordinateAssignment.prototype.rankTopY=null,mxCoordinateAssignment.prototype.rankBottomY=null,mxCoordinateAssignment.prototype.widestRankValue=null,mxCoordinateAssignment.prototype.rankWidths=null,mxCoordinateAssignment.prototype.rankY=null,mxCoordinateAssignment.prototype.fineTuning=!0,mxCoordinateAssignment.prototype.edgeStyle=mxHierarchicalEdgeStyle.POLYLINE,mxCoordinateAssignment.prototype.nextLayerConnectedCache=null,mxCoordinateAssignment.prototype.previousLayerConnectedCache=null,mxCoordinateAssignment.prototype.groupPadding=10,mxCoordinateAssignment.prototype.printStatus=function(){var e=this.layout.getModel();mxLog.show(),mxLog.writeln("======Coord assignment debug=======");for(var t=0;t<e.ranks.length;t++){mxLog.write("Rank ",t," : ");for(var n=e.ranks[t],a=0;a<n.length;a++)mxLog.write(n[a].getGeneralPurposeVariable(t),"  ");mxLog.writeln()}mxLog.writeln("====================================")},mxCoordinateAssignment.prototype.execute=function(e){this.jettyPositions=[],e=this.layout.getModel(),this.currentXDelta=0,this.initialCoords(this.layout.getGraph(),e),this.fineTuning&&this.minNode(e);var t=1e8;if(this.fineTuning)for(var n=0;n<this.maxIterations;n++){if(0!=n&&(this.medianPos(n,e),this.minNode(e)),this.currentXDelta<t){for(var a=0;a<e.ranks.length;a++)for(var i=e.ranks[a],o=0;o<i.length;o++){var s=i[o];s.setX(a,s.getGeneralPurposeVariable(a))}t=this.currentXDelta}else for(a=0;a<e.ranks.length;a++)for(i=e.ranks[a],o=0;o<i.length;o++)(s=i[o]).setGeneralPurposeVariable(a,s.getX(a));this.minPath(this.layout.getGraph(),e),this.currentXDelta=0}this.setCellLocations(this.layout.getGraph(),e)},mxCoordinateAssignment.prototype.minNode=function(e){for(var t=[],n=[],a=[],i=0;i<=e.maxRank;i++){a[i]=e.ranks[i];for(var o=0;o<a[i].length;o++){d=a[i][o];(s=new WeightedCellSorter(d,i)).rankIndex=o,s.visited=!0,t.push(s),n[d=mxCellPath.create(d.getCoreCell())]=s}}for(e=10*t.length,o=0;0<t.length&&o<=e;){var s=t.shift(),i=s.cell,r=s.weightedValue,l=parseInt(s.rankIndex),d=i.getNextLayerConnectedCells(r),c=i.getPreviousLayerConnectedCells(r),m=d.length,u=c.length,p=this.medianXValue(d,r+1),g=this.medianXValue(c,r-1),h=m+u,v=i.getGeneralPurposeVariable(r),b=v;if(0<h&&(b=(p*m+g*u)/h),m=!1,b<v-1?0==l?(i.setGeneralPurposeVariable(r,b),m=!0):(l=a[r][l-1],v=l.getGeneralPurposeVariable(r),v=v+l.width/2+this.intraCellSpacing+i.width/2,v<b?(i.setGeneralPurposeVariable(r,b),m=!0):v<i.getGeneralPurposeVariable(r)-1&&(i.setGeneralPurposeVariable(r,v),m=!0)):b>v+1&&(l==a[r].length-1?(i.setGeneralPurposeVariable(r,b),m=!0):(l=a[r][l+1],v=l.getGeneralPurposeVariable(r),v=v-l.width/2-this.intraCellSpacing-i.width/2,v>b?(i.setGeneralPurposeVariable(r,b),m=!0):v>i.getGeneralPurposeVariable(r)+1&&(i.setGeneralPurposeVariable(r,v),m=!0))),m){for(i=0;i<d.length;i++)r=d[i],r=mxCellPath.create(r.getCoreCell()),null!=(r=n[r])&&0==r.visited&&(r.visited=!0,t.push(r));for(i=0;i<c.length;i++)r=c[i],r=mxCellPath.create(r.getCoreCell()),null!=(r=n[r])&&0==r.visited&&(r.visited=!0,t.push(r))}s.visited=!1,o++}},mxCoordinateAssignment.prototype.medianPos=function(e,t){if(0==e%2)for(var n=t.maxRank;0<n;n--)this.rankMedianPosition(n-1,t,n);else for(n=0;n<t.maxRank-1;n++)this.rankMedianPosition(n+1,t,n)},mxCoordinateAssignment.prototype.rankMedianPosition=function(e,t,n){t=t.ranks[e];for(var a=[],i=[],o=0;o<t.length;o++){var s=t[o];a[o]=new WeightedCellSorter,a[o].cell=s,a[o].rankIndex=o;var r=mxCellPath.create(s.getCoreCell());i[r]=a[o];var l=null,l=n<e?s.getPreviousLayerConnectedCells(e):s.getNextLayerConnectedCells(e);a[o].weightedValue=this.calculatedWeightedValue(s,l)}for(a.sort(WeightedCellSorter.prototype.compare),o=0;o<a.length;o++){r=0,s=a[o].cell,r=0,null!=(l=n<e?s.getPreviousLayerConnectedCells(e).slice():s.getNextLayerConnectedCells(e).slice())&&(r=l.length,r=0<r?this.medianXValue(l,n):s.getGeneralPurposeVariable(e));for(var d=0,l=-1e8,c=a[o].rankIndex-1;0<=c;){var m=mxCellPath.create(t[c].getCoreCell());if(null!=(m=i[m])){var u=m.cell;m.visited?(l=u.getGeneralPurposeVariable(e)+u.width/2+this.intraCellSpacing+d+s.width/2,c=-1):(d+=u.width+this.intraCellSpacing,c--)}}for(d=0,u=1e8,c=a[o].rankIndex+1;c<a.length;)if(m=mxCellPath.create(t[c].getCoreCell()),null!=(m=i[m])){var p=m.cell;m.visited?(u=p.getGeneralPurposeVariable(e)-p.width/2-this.intraCellSpacing-d-s.width/2,c=a.length):(d+=p.width+this.intraCellSpacing,c++)}r>=l&&r<=u?s.setGeneralPurposeVariable(e,r):r<l?(s.setGeneralPurposeVariable(e,l),this.currentXDelta+=l-r):r>u&&(s.setGeneralPurposeVariable(e,u),this.currentXDelta+=r-u),a[o].visited=!0}},mxCoordinateAssignment.prototype.calculatedWeightedValue=function(e,t){for(var n=0,a=0;a<t.length;a++){var i=t[a];e.isVertex()&&i.isVertex()?n++:n=e.isEdge()&&i.isEdge()?n+8:n+2}return n},mxCoordinateAssignment.prototype.medianXValue=function(e,t){if(0==e.length)return 0;for(var n=[],a=0;a<e.length;a++)n[a]=e[a].getGeneralPurposeVariable(t);return n.sort(function(e,t){return e-t}),1==e.length%2?n[Math.floor(e.length/2)]:(a=e.length/2,(n[a-1]+n[a])/2)},mxCoordinateAssignment.prototype.initialCoords=function(e,t){this.calculateWidestRank(e,t);for(var n=this.widestRank;0<=n;n--)n<t.maxRank&&this.rankCoordinates(n,e,t);for(n=this.widestRank+1;n<=t.maxRank;n++)0<n&&this.rankCoordinates(n,e,t)},mxCoordinateAssignment.prototype.rankCoordinates=function(e,t,n){t=n.ranks[e],n=0;for(var a=this.initialX+(this.widestRankValue-this.rankWidths[e])/2,i=!1,o=0;o<t.length;o++){var s=t[o];if(s.isVertex()){var r=this.layout.getVertexBounds(s.cell);null!=r?this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(s.width=r.width,s.height=r.height):(s.width=r.height,s.height=r.width):i=!0,n=Math.max(n,s.height)}else s.isEdge()&&(r=1,null!=s.edges?r=s.edges.length:mxLog.warn("edge.edges is null"),s.width=(r-1)*this.parallelEdgeSpacing);a+=s.width/2,s.setX(e,a),s.setGeneralPurposeVariable(e,a),a+=s.width/2,a+=this.intraCellSpacing}1==i&&mxLog.warn("At least one cell has no bounds")},mxCoordinateAssignment.prototype.calculateWidestRank=function(e,t){var n=-this.interRankCellSpacing,a=0;this.rankWidths=[],this.rankY=[];for(var i=t.maxRank;0<=i;i--){for(var o=0,s=t.ranks[i],r=this.initialX,l=!1,d=0;d<s.length;d++){var c=s[d];if(c.isVertex()){var m=this.layout.getVertexBounds(c.cell);null!=m?this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(c.width=m.width,c.height=m.height):(c.width=m.height,c.height=m.width):l=!0,o=Math.max(o,c.height)}else c.isEdge()&&(m=1,null!=c.edges?m=c.edges.length:mxLog.warn("edge.edges is null"),c.width=(m-1)*this.parallelEdgeSpacing);r+=c.width/2,c.setX(i,r),c.setGeneralPurposeVariable(i,r),r+=c.width/2,(r+=this.intraCellSpacing)>this.widestRankValue&&(this.widestRankValue=r,this.widestRank=i),this.rankWidths[i]=r}for(1==l&&mxLog.warn("At least one cell has no bounds"),this.rankY[i]=n,r=o/2+a/2+this.interRankCellSpacing,a=o,n=this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_WEST?n+r:n-r,d=0;d<s.length;d++)s[d].setY(i,n)}},mxCoordinateAssignment.prototype.minPath=function(e,t){var n,a=t.edgeMapper;for(n in a){var i=a[n];if(!(1>i.maxRank-i.minRank-1)){for(var o=i.getGeneralPurposeVariable(i.minRank+1),s=!0,r=0,l=i.minRank+2;l<i.maxRank;l++)o!=(d=i.getGeneralPurposeVariable(l))?(s=!1,o=d):r++;if(!s){for(var s=o=0,d=[],c=[],m=i.getGeneralPurposeVariable(i.minRank+1),l=i.minRank+1;l<i.maxRank-1;l++){var u=i.getX(l+1);m==u?(d[l-i.minRank-1]=m,o++):this.repositionValid(t,i,l+1,m)?(d[l-i.minRank-1]=m,o++):m=d[l-i.minRank-1]=u}for(m=i.getX(l),l=i.maxRank-1;l>i.minRank+1;l--)u=i.getX(l-1),m==u?(c[l-i.minRank-2]=m,s++):this.repositionValid(t,i,l-1,m)?(c[l-i.minRank-2]=m,s++):(c[l-i.minRank-2]=i.getX(l-1),m=u);if(s>r||o>r)if(s>=o)for(l=i.maxRank-2;l>i.minRank;l--)i.setX(l,c[l-i.minRank-1]);else if(o>s)for(l=i.minRank+2;l<i.maxRank;l++)i.setX(l,d[l-i.minRank-2])}}}},mxCoordinateAssignment.prototype.repositionValid=function(e,t,n,a){e=e.ranks[n];for(var i=-1,o=0;o<e.length;o++)if(t==e[o]){i=o;break}if(0>i)return!1;if(o=t.getGeneralPurposeVariable(n),a<o){if(0==i)return!0;if(e=e[i-1],n=e.getGeneralPurposeVariable(n),!((n=n+e.width/2+this.intraCellSpacing+t.width/2)<=a))return!1}else if(a>o){if(i==e.length-1)return!0;if(e=e[i+1],n=e.getGeneralPurposeVariable(n),!((n=n-e.width/2-this.intraCellSpacing-t.width/2)>=a))return!1}return!0},mxCoordinateAssignment.prototype.setCellLocations=function(e,t){this.rankTopY=[],this.rankBottomY=[];for(var n=0;n<t.ranks.length;n++)this.rankTopY[n]=Number.MAX_VALUE,this.rankBottomY[n]=0;n=null,this.layout.resizeParent&&(n={});var a,i=t.edgeMapper,o=t.vertexMapper;for(a in o){s=o[a];if(this.setVertexLocation(s),this.layout.resizeParent){var s=e.model.getParent(s.cell),r=mxCellPath.create(s);null==n[r]&&(n[r]=s)}}this.layout.resizeParent&&null!=n&&this.adjustParents(n),(this.edgeStyle==mxHierarchicalEdgeStyle.ORTHOGONAL||this.edgeStyle==mxHierarchicalEdgeStyle.POLYLINE||this.edgeStyle==mxHierarchicalEdgeStyle.CURVE)&&this.localEdgeProcessing(t);for(a in i)this.setEdgePosition(i[a])},mxCoordinateAssignment.prototype.adjustParents=function(e){var t,n=[];for(t in e)n.push(e[t]);this.layout.arrangeGroups(mxUtils.sortCells(n,!0),this.groupPadding)},mxCoordinateAssignment.prototype.localEdgeProcessing=function(e){for(var t=0;t<e.ranks.length;t++)for(var n=e.ranks[t],a=0;a<n.length;a++){var i=n[a];if(i.isVertex())for(var o=i.getPreviousLayerConnectedCells(t),s=t-1,r=0;2>r;r++){if(-1<s&&s<e.ranks.length&&null!=o&&0<o.length){for(var l=[],d=0;d<o.length;d++){var c=new WeightedCellSorter(o[d],o[d].getX(s));l.push(c)}l.sort(WeightedCellSorter.prototype.compare);for(var m=(c=i.x[0]-i.width/2)+i.width,u=o=0,s=[],d=0;d<l.length;d++){var p,g=l[d].cell;if(g.isVertex()){p=0==r?i.connectsAsSource:i.connectsAsTarget;for(var h=0;h<p.length;h++)p[h].source!=g&&p[h].target!=g||(o+=p[h].edges.length,u++,s.push(p[h]))}else o+=g.edges.length,u++,s.push(g)}for(i.width>(o+1)*this.prefHozEdgeSep+2*this.prefHozEdgeSep&&(c+=this.prefHozEdgeSep,m-=this.prefHozEdgeSep),c+=(l=(m-c)/o)/2,m=this.minEdgeJetty-this.prefVertEdgeOff,d=u=0;d<s.length;d++){for(g=s[d].edges.length,h=mxCellPath.create(s[d].edges[0]),null==(p=this.jettyPositions[h])&&(p=[],this.jettyPositions[h]=p),d<o/2?m+=this.prefVertEdgeOff:d>o/2&&(m-=this.prefVertEdgeOff),h=0;h<g;h++)p[4*h+2*r]=c,c+=l,p[4*h+2*r+1]=m;u=Math.max(u,m)}}o=i.getNextLayerConnectedCells(t),s=t+1}}},mxCoordinateAssignment.prototype.setEdgePosition=function(e){var t=0;if(101207!=e.temp[0]){var n=e.maxRank,a=e.minRank;n==a&&(n=e.source.maxRank,a=e.target.minRank);for(var i=0,o=mxCellPath.create(e.edges[0]),o=this.jettyPositions[o],s=e.isReversed?e.target.cell:e.source.cell,r=this.layout.graph,l=0;l<e.edges.length;l++){var d=e.edges[l],c=this.layout.getVisibleTerminal(d,!0),m=r.model.getTerminal(d,!0),u=[],p=e.isReversed;if(c!=s&&(p=!p),null!=o){var g=p?2:0,h=p?this.rankTopY[a]:this.rankBottomY[n],v=o[4*i+1+g];p&&(v=-v),h+=v,g=o[4*i+g],m=r.model.getTerminal(d,!0),this.layout.isPort(m)&&r.model.getParent(m)==c&&(g=r.view.getState(m),g=null!=g?g.x:c.geometry.x+e.source.width*m.geometry.x),this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(u.push(new mxPoint(g,h)),this.edgeStyle==mxHierarchicalEdgeStyle.CURVE&&u.push(new mxPoint(g,h+v))):(u.push(new mxPoint(h,g)),this.edgeStyle==mxHierarchicalEdgeStyle.CURVE&&u.push(new mxPoint(h+v,g)))}for(g=e.x.length-1,h=v=-1,c=e.maxRank-1,p&&(g=0,v=e.x.length,h=1,c=e.minRank+1);e.maxRank!=e.minRank&&g!=v;g+=h){var m=e.x[g]+t,b=(this.rankTopY[c]+this.rankBottomY[c+1])/2,f=(this.rankTopY[c-1]+this.rankBottomY[c])/2;if(p)var E=b,b=f,f=E;this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(u.push(new mxPoint(m,b)),u.push(new mxPoint(m,f))):(u.push(new mxPoint(b,m)),u.push(new mxPoint(f,m))),this.limitX=Math.max(this.limitX,m),c+=h}null!=o&&(g=p?2:0,h=p?this.rankBottomY[n]:this.rankTopY[a],v=o[4*i+3-g],p&&(v=-v),h-=v,g=o[4*i+2-g],p=r.model.getTerminal(d,!1),c=this.layout.getVisibleTerminal(d,!1),this.layout.isPort(p)&&r.model.getParent(p)==c&&(g=r.view.getState(p),g=null!=g?g.x:c.geometry.x+e.target.width*p.geometry.x),this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(this.edgeStyle==mxHierarchicalEdgeStyle.CURVE&&u.push(new mxPoint(g,h-v)),u.push(new mxPoint(g,h))):(this.edgeStyle==mxHierarchicalEdgeStyle.CURVE&&u.push(new mxPoint(h-v,g)),u.push(new mxPoint(h,g)))),e.isReversed&&this.processReversedEdge(e,d),this.layout.setEdgePoints(d,u),t=0==t?this.parallelEdgeSpacing:0<t?-t:-t+this.parallelEdgeSpacing,i++}e.temp[0]=101207}},mxCoordinateAssignment.prototype.setVertexLocation=function(e){var t=e.cell,n=e.x[0]-e.width/2,a=e.y[0]-e.height/2;this.rankTopY[e.minRank]=Math.min(this.rankTopY[e.minRank],a),this.rankBottomY[e.minRank]=Math.max(this.rankBottomY[e.minRank],a+e.height),this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?this.layout.setVertexLocation(t,n,a):this.layout.setVertexLocation(t,a,n),this.limitX=Math.max(this.limitX,n+e.width)},mxCoordinateAssignment.prototype.processReversedEdge=function(e,t){},WeightedCellSorter.prototype.weightedValue=0,WeightedCellSorter.prototype.nudge=!1,WeightedCellSorter.prototype.visited=!1,WeightedCellSorter.prototype.rankIndex=null,WeightedCellSorter.prototype.cell=null,WeightedCellSorter.prototype.compare=function(e,t){return null!=e&&null!=t?t.weightedValue>e.weightedValue?-1:t.weightedValue<e.weightedValue?1:t.nudge?-1:1:0},mxHierarchicalLayout.prototype=new mxGraphLayout,mxHierarchicalLayout.prototype.constructor=mxHierarchicalLayout,mxHierarchicalLayout.prototype.roots=null,mxHierarchicalLayout.prototype.resizeParent=!1,mxHierarchicalLayout.prototype.moveParent=!1,mxHierarchicalLayout.prototype.parentBorder=0,mxHierarchicalLayout.prototype.intraCellSpacing=30,mxHierarchicalLayout.prototype.interRankCellSpacing=100,mxHierarchicalLayout.prototype.interHierarchySpacing=60,mxHierarchicalLayout.prototype.parallelEdgeSpacing=10,mxHierarchicalLayout.prototype.orientation=mxConstants.DIRECTION_NORTH,mxHierarchicalLayout.prototype.fineTuning=!0,mxHierarchicalLayout.prototype.tightenToSource=!0,mxHierarchicalLayout.prototype.disableEdgeStyle=!0,mxHierarchicalLayout.prototype.traverseAncestors=!0,mxHierarchicalLayout.prototype.model=null,mxHierarchicalLayout.prototype.edgesCache=null,mxHierarchicalLayout.prototype.getModel=function(){return this.model},mxHierarchicalLayout.prototype.execute=function(e,t){this.parent=e;var n=this.graph.model;if(this.edgesCache={},null!=t||null!=e){if(null!=t&&null!=e){for(var a=[],i=0;i<t.length;i++)n.isAncestor(e,t[i])&&a.push(t[i]);this.roots=a}else this.roots=t;n.beginUpdate();try{this.run(e),this.resizeParent&&!this.graph.isCellCollapsed(e)&&this.graph.updateGroupBounds([e],this.parentBorder,this.moveParent)}finally{n.endUpdate()}}},mxHierarchicalLayout.prototype.findRoots=function(e,t){var n=[];if(null!=e&&null!=t){var a,i=this.graph.model,o=null,s=-1e5;for(a in t){var r=t[a];if(i.isVertex(r)&&this.graph.isCellVisible(r)){for(var l=this.getEdges(r),d=0,c=0,m=0;m<l.length;m++)this.getVisibleTerminal(l[m],!0)==r?d++:c++;0==c&&0<d&&n.push(r),(l=d-c)>s&&(s=l,o=r)}}0==n.length&&null!=o&&n.push(o)}return n},mxHierarchicalLayout.prototype.getEdges=function(e){var t=mxCellPath.create(e);if(null!=this.edgesCache[t])return this.edgesCache[t];for(var n=this.graph.model,a=[],i=this.graph.isCellCollapsed(e),o=n.getChildCount(e),s=0;s<o;s++){var r=n.getChildAt(e,s);this.isPort(r)?a=a.concat(n.getEdges(r,!0,!0)):!i&&this.graph.isCellVisible(r)||(a=a.concat(n.getEdges(r,!0,!0)))}for(a=a.concat(n.getEdges(e,!0,!0)),n=[],s=0;s<a.length;s++)i=this.getVisibleTerminal(a[s],!0),o=this.getVisibleTerminal(a[s],!1),(i==o||i!=o&&(o==e&&(null==this.parent||this.graph.isValidAncestor(i,this.parent,this.traverseAncestors))||i==e&&(null==this.parent||this.graph.isValidAncestor(o,this.parent,this.traverseAncestors))))&&n.push(a[s]);return this.edgesCache[t]=n},mxHierarchicalLayout.prototype.getVisibleTerminal=function(e,t){var n=null!=(n=this.graph.view.getState(e))?n.getVisibleTerminal(t):this.graph.view.getVisibleTerminal(e,t);return this.isPort(n)&&(n=this.graph.model.getParent(n)),n},mxHierarchicalLayout.prototype.run=function(e){var t=[],n=[];if(null==this.roots&&null!=e){var a={};this.filterDescendants(e,a),this.roots=[];var i,o=!0;for(i in a)if(null!=a[i]){o=!1;break}for(;!o;){for(var s=this.findRoots(e,a),o=0;o<s.length;o++){var r=[];t.push(r),this.traverse(s[o],!0,null,n,r,t,a)}for(o=0;o<s.length;o++)this.roots.push(s[o]);o=!0;for(i in a)if(null!=a[i]){o=!1;break}}}else for(o=0;o<roots.length;o++)r=[],t.push(r),traverse(roots.get(o),!0,null,n,r,t,null);for(o=n=0;o<t.length;o++){r=t[o],a=[];for(i in r)a.push(r[i]);this.model=new mxGraphHierarchyModel(this,a,this.roots,e,this.tightenToSource),this.cycleStage(e),this.layeringStage(),this.crossingStage(e),n=this.placementStage(n,e)}},mxHierarchicalLayout.prototype.filterDescendants=function(e,t){var n=this.graph.model;if(n.isVertex(e)&&e!=this.parent&&this.graph.isCellVisible(e)&&(t[mxCellPath.create(e)]=e),this.traverseAncestors||e==this.parent&&this.graph.isCellVisible(e))for(var a=n.getChildCount(e),i=0;i<a;i++){var o=n.getChildAt(e,i);this.isPort(o)||this.filterDescendants(o,t)}},mxHierarchicalLayout.prototype.isPort=function(e){return!!e.geometry.relative},mxHierarchicalLayout.prototype.getEdgesBetween=function(e,t,n){n=null!=n&&n;for(var a=this.getEdges(e),i=[],o=0;o<a.length;o++){var s=this.getVisibleTerminal(a[o],!0),r=this.getVisibleTerminal(a[o],!1);(s==e&&r==t||!n&&s==t&&r==e)&&i.push(a[o])}return i},mxHierarchicalLayout.prototype.traverse=function(e,t,n,a,i,o,s){if(null!=e&&null!=a){var r=mxCellPath.create(e);if(null!=a[r]||null!=s&&null==s[r]){if(null==i[r])for(n=0;n<o.length;n++)if(null!=(e=o[n])[r]){for(l in i)e[l]=i[l];return o.pop(),e}}else{null==i[r]&&(i[r]=e),null==a[r]&&(a[r]=e),delete s[r];var l=this.getEdges(e);for(n=0;n<l.length;n++)r=this.getVisibleTerminal(l[n],!0)==e,(!t||r)&&(r=this.getVisibleTerminal(l[n],!r),i=this.traverse(r,t,l[n],a,i,o,s))}}return i},mxHierarchicalLayout.prototype.cycleStage=function(e){new mxMinimumCycleRemover(this).execute(e)},mxHierarchicalLayout.prototype.layeringStage=function(){this.model.initialRank(),this.model.fixRanks()},mxHierarchicalLayout.prototype.crossingStage=function(e){new mxMedianHybridCrossingReduction(this).execute(e)},mxHierarchicalLayout.prototype.placementStage=function(e,t){var n=new mxCoordinateAssignment(this,this.intraCellSpacing,this.interRankCellSpacing,this.orientation,e,this.parallelEdgeSpacing);return n.fineTuning=this.fineTuning,n.execute(t),n.limitX+this.interHierarchySpacing},mxGraphModel.prototype=new mxEventSource,mxGraphModel.prototype.constructor=mxGraphModel,mxGraphModel.prototype.root=null,mxGraphModel.prototype.cells=null,mxGraphModel.prototype.maintainEdgeParent=!0,mxGraphModel.prototype.createIds=!0,mxGraphModel.prototype.prefix="",mxGraphModel.prototype.postfix="",mxGraphModel.prototype.nextId=0,mxGraphModel.prototype.currentEdit=null,mxGraphModel.prototype.updateLevel=0,mxGraphModel.prototype.endingUpdate=!1,mxGraphModel.prototype.clear=function(){this.setRoot(this.createRoot())},mxGraphModel.prototype.isCreateIds=function(){return this.createIds},mxGraphModel.prototype.setCreateIds=function(e){this.createIds=e},mxGraphModel.prototype.createRoot=function(){var e=new mxCell;return e.insert(new mxCell),e},mxGraphModel.prototype.getCell=function(e){return null!=this.cells?this.cells[e]:null},mxGraphModel.prototype.filterCells=function(e,t){n=null;if(null!=e)for(var n=[],a=0;a<e.length;a++)t(e[a])&&n.push(e[a]);return n},mxGraphModel.prototype.getDescendants=function(e){return this.filterDescendants(null,e)},mxGraphModel.prototype.filterDescendants=function(e,t){o=[];t=t||this.getRoot(),(null==e||e(t))&&o.push(t);for(var n=this.getChildCount(t),a=0;a<n;a++)var i=this.getChildAt(t,a),o=o.concat(this.filterDescendants(e,i));return o},mxGraphModel.prototype.getRoot=function(e){var t=e||this.root;if(null!=e)for(;null!=e;)t=e,e=this.getParent(e);return t},mxGraphModel.prototype.setRoot=function(e){return this.execute(new mxRootChange(this,e)),e},mxGraphModel.prototype.rootChanged=function(e){var t=this.root;return this.root=e,this.nextId=0,this.cells=null,this.cellAdded(e),t},mxGraphModel.prototype.isRoot=function(e){return null!=e&&this.root==e},mxGraphModel.prototype.isLayer=function(e){return this.isRoot(this.getParent(e))},mxGraphModel.prototype.isAncestor=function(e,t){for(;null!=t&&t!=e;)t=this.getParent(t);return t==e},mxGraphModel.prototype.contains=function(e){return this.isAncestor(this.root,e)},mxGraphModel.prototype.getParent=function(e){return null!=e?e.getParent():null},mxGraphModel.prototype.add=function(e,t,n){if(t!=e&&null!=e&&null!=t){null==n&&(n=this.getChildCount(e));var a=e!=this.getParent(t);this.execute(new mxChildChange(this,e,t,n)),this.maintainEdgeParent&&a&&this.updateEdgeParents(t)}return t},mxGraphModel.prototype.cellAdded=function(e){if(null!=e){if(null==e.getId()&&this.createIds&&e.setId(this.createId(e)),null!=e.getId()&&(t=this.getCell(e.getId()))!=e){for(;null!=t;)e.setId(this.createId(e)),t=this.getCell(e.getId());null==this.cells&&(this.cells={}),this.cells[e.getId()]=e}mxUtils.isNumeric(e.getId())&&(this.nextId=Math.max(this.nextId,e.getId()));for(var t=this.getChildCount(e),n=0;n<t;n++)this.cellAdded(this.getChildAt(e,n))}},mxGraphModel.prototype.createId=function(e){return e=this.nextId,this.nextId++,this.prefix+e+this.postfix},mxGraphModel.prototype.updateEdgeParents=function(e,t){t=t||this.getRoot(e);for(var n=this.getChildCount(e),a=0;a<n;a++){var i=this.getChildAt(e,a);this.updateEdgeParents(i,t)}for(i=this.getEdgeCount(e),n=[],a=0;a<i;a++)n.push(this.getEdgeAt(e,a));for(a=0;a<n.length;a++)i=n[a],this.isAncestor(t,i)&&this.updateEdgeParent(i,t)},mxGraphModel.prototype.updateEdgeParent=function(e,t){for(var n=this.getTerminal(e,!0),a=this.getTerminal(e,!1),i=null;null!=n&&!this.isEdge(n)&&null!=n.geometry&&n.geometry.relative;)n=this.getParent(n);for(;null!=a&&!this.isEdge(a)&&null!=a.geometry&&a.geometry.relative;)a=this.getParent(a);if(this.isAncestor(t,n)&&this.isAncestor(t,a)&&null!=(i=n==a?this.getParent(n):this.getNearestCommonAncestor(n,a))&&(this.getParent(i)!=this.root||this.isAncestor(i,e))&&this.getParent(e)!=i){if(null!=(n=this.getGeometry(e))){var o=this.getOrigin(this.getParent(e)),s=this.getOrigin(i),a=s.x-o.x,o=s.y-o.y;(n=n.clone()).translate(-a,-o),this.setGeometry(e,n)}this.add(i,e,this.getChildCount(i))}},mxGraphModel.prototype.getOrigin=function(e){var t=null;return null!=e?(t=this.getOrigin(this.getParent(e)),this.isEdge(e)||null!=(e=this.getGeometry(e))&&(t.x+=e.x,t.y+=e.y)):t=new mxPoint,t},mxGraphModel.prototype.getNearestCommonAncestor=function(e,t){if(null!=e&&null!=t&&null!=(o=mxCellPath.create(t))&&0<o.length){var n=e,a=mxCellPath.create(n);if(o.length<a.length)var n=t,i=a,a=o,o=i;for(;null!=n;){if(i=this.getParent(n),0==o.indexOf(a+mxCellPath.PATH_SEPARATOR)&&null!=i)return n;a=mxCellPath.getParentPath(a),n=i}}return null},mxGraphModel.prototype.remove=function(e){return e==this.root?this.setRoot(null):null!=this.getParent(e)&&this.execute(new mxChildChange(this,null,e)),e},mxGraphModel.prototype.cellRemoved=function(e){if(null!=e&&null!=this.cells){for(var t=this.getChildCount(e)-1;0<=t;t--)this.cellRemoved(this.getChildAt(e,t));null!=this.cells&&null!=e.getId()&&delete this.cells[e.getId()]}},mxGraphModel.prototype.parentForCellChanged=function(e,t,n){var a=this.getParent(e);return null!=t?(t!=a||a.getIndex(e)!=n)&&t.insert(e,n):null!=a&&(n=a.getIndex(e),a.remove(n)),this.contains(a)||null==t?null==t&&this.cellRemoved(e):this.cellAdded(e),a},mxGraphModel.prototype.getChildCount=function(e){return null!=e?e.getChildCount():0},mxGraphModel.prototype.getChildAt=function(e,t){return null!=e?e.getChildAt(t):null},mxGraphModel.prototype.getChildren=function(e){return null!=e?e.children:null},mxGraphModel.prototype.getChildVertices=function(e){return this.getChildCells(e,!0,!1)},mxGraphModel.prototype.getChildEdges=function(e){return this.getChildCells(e,!1,!0)},mxGraphModel.prototype.getChildCells=function(e,t,n){t=null!=t&&t,n=null!=n&&n;for(var a=this.getChildCount(e),i=[],o=0;o<a;o++){var s=this.getChildAt(e,o);(!n&&!t||n&&this.isEdge(s)||t&&this.isVertex(s))&&i.push(s)}return i},mxGraphModel.prototype.getTerminal=function(e,t){return null!=e?e.getTerminal(t):null},mxGraphModel.prototype.setTerminal=function(e,t,n){var a=t!=this.getTerminal(e,n);return this.execute(new mxTerminalChange(this,e,t,n)),this.maintainEdgeParent&&a&&this.updateEdgeParent(e,this.getRoot()),t},mxGraphModel.prototype.setTerminals=function(e,t,n){this.beginUpdate();try{this.setTerminal(e,t,!0),this.setTerminal(e,n,!1)}finally{this.endUpdate()}},mxGraphModel.prototype.terminalForCellChanged=function(e,t,n){var a=this.getTerminal(e,n);return null!=t?t.insertEdge(e,n):null!=a&&a.removeEdge(e,n),a},mxGraphModel.prototype.getEdgeCount=function(e){return null!=e?e.getEdgeCount():0},mxGraphModel.prototype.getEdgeAt=function(e,t){return null!=e?e.getEdgeAt(t):null},mxGraphModel.prototype.getDirectedEdgeCount=function(e,t,n){for(var a=0,i=this.getEdgeCount(e),o=0;o<i;o++){var s=this.getEdgeAt(e,o);s!=n&&this.getTerminal(s,t)==e&&a++}return a},mxGraphModel.prototype.getConnections=function(e){return this.getEdges(e,!0,!0,!1)},mxGraphModel.prototype.getIncomingEdges=function(e){return this.getEdges(e,!0,!1,!1)},mxGraphModel.prototype.getOutgoingEdges=function(e){return this.getEdges(e,!1,!0,!1)},mxGraphModel.prototype.getEdges=function(e,t,n,a){t=null==t||t,n=null==n||n,a=null==a||a;for(var i=this.getEdgeCount(e),o=[],s=0;s<i;s++){var r=this.getEdgeAt(e,s),l=this.getTerminal(r,!0),d=this.getTerminal(r,!1);(a&&l==d||l!=d&&(t&&d==e||n&&l==e))&&o.push(r)}return o},mxGraphModel.prototype.getEdgesBetween=function(e,t,n){n=null!=n&&n;var a=this.getEdgeCount(e),i=this.getEdgeCount(t),o=e,s=a;for(i<a&&(s=i,o=t),a=[],i=0;i<s;i++){var r=this.getEdgeAt(o,i),l=this.getTerminal(r,!0),d=this.getTerminal(r,!1),c=d==e&&l==t;(l==e&&d==t||!n&&c)&&a.push(r)}return a},mxGraphModel.prototype.getOpposites=function(e,t,n,a){n=null==n||n,a=null==a||a;var i=[];if(null!=e)for(var o=0;o<e.length;o++){var s=this.getTerminal(e[o],!0),r=this.getTerminal(e[o],!1);s==t&&null!=r&&r!=t&&a?i.push(r):r==t&&null!=s&&s!=t&&n&&i.push(s)}return i},mxGraphModel.prototype.getTopmostCells=function(e){for(var t=[],n=0;n<e.length;n++){for(var a=e[n],i=!0,o=this.getParent(a);null!=o;){if(0<=mxUtils.indexOf(e,o)){i=!1;break}o=this.getParent(o)}i&&t.push(a)}return t},mxGraphModel.prototype.isVertex=function(e){return null!=e&&e.isVertex()},mxGraphModel.prototype.isEdge=function(e){return null!=e&&e.isEdge()},mxGraphModel.prototype.isConnectable=function(e){return null!=e&&e.isConnectable()},mxGraphModel.prototype.getValue=function(e){return null!=e?e.getValue():null},mxGraphModel.prototype.setValue=function(e,t){return this.execute(new mxValueChange(this,e,t)),t},mxGraphModel.prototype.valueForCellChanged=function(e,t){return e.valueChanged(t)},mxGraphModel.prototype.getGeometry=function(e,t){return null!=e?e.getGeometry():null},mxGraphModel.prototype.setGeometry=function(e,t){return t!=this.getGeometry(e)&&this.execute(new mxGeometryChange(this,e,t)),t},mxGraphModel.prototype.geometryForCellChanged=function(e,t){var n=this.getGeometry(e);return e.setGeometry(t),n},mxGraphModel.prototype.getStyle=function(e){return null!=e?e.getStyle():null},mxGraphModel.prototype.setStyle=function(e,t){return t!=this.getStyle(e)&&this.execute(new mxStyleChange(this,e,t)),t},mxGraphModel.prototype.styleForCellChanged=function(e,t){var n=this.getStyle(e);return e.setStyle(t),n},mxGraphModel.prototype.isCollapsed=function(e){return null!=e&&e.isCollapsed()},mxGraphModel.prototype.setCollapsed=function(e,t){return t!=this.isCollapsed(e)&&this.execute(new mxCollapseChange(this,e,t)),t},mxGraphModel.prototype.collapsedStateForCellChanged=function(e,t){var n=this.isCollapsed(e);return e.setCollapsed(t),n},mxGraphModel.prototype.isVisible=function(e){return null!=e&&e.isVisible()},mxGraphModel.prototype.setVisible=function(e,t){return t!=this.isVisible(e)&&this.execute(new mxVisibleChange(this,e,t)),t},mxGraphModel.prototype.visibleStateForCellChanged=function(e,t){var n=this.isVisible(e);return e.setVisible(t),n},mxGraphModel.prototype.execute=function(e){e.execute(),this.beginUpdate(),this.currentEdit.add(e),this.fireEvent(new mxEventObject(mxEvent.EXECUTE,"change",e)),this.fireEvent(new mxEventObject(mxEvent.EXECUTED,"change",e)),this.endUpdate()},mxGraphModel.prototype.beginUpdate=function(){this.updateLevel++,this.fireEvent(new mxEventObject(mxEvent.BEGIN_UPDATE)),1==this.updateLevel&&this.fireEvent(new mxEventObject(mxEvent.START_EDIT))},mxGraphModel.prototype.endUpdate=function(){if(0==--this.updateLevel&&this.fireEvent(new mxEventObject(mxEvent.END_EDIT)),!this.endingUpdate){this.endingUpdate=0==this.updateLevel,this.fireEvent(new mxEventObject(mxEvent.END_UPDATE,"edit",this.currentEdit));try{if(this.endingUpdate&&!this.currentEdit.isEmpty()){this.fireEvent(new mxEventObject(mxEvent.BEFORE_UNDO,"edit",this.currentEdit));var e=this.currentEdit;this.currentEdit=this.createUndoableEdit(),e.notify(),this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",e))}}finally{this.endingUpdate=!1}}},mxGraphModel.prototype.createUndoableEdit=function(){var e=new mxUndoableEdit(this,!0);return e.notify=function(){e.source.fireEvent(new mxEventObject(mxEvent.CHANGE,"edit",e,"changes",e.changes)),e.source.fireEvent(new mxEventObject(mxEvent.NOTIFY,"edit",e,"changes",e.changes))},e},mxGraphModel.prototype.mergeChildren=function(e,t,n){n=null==n||n,this.beginUpdate();try{var a={};this.mergeChildrenImpl(e,t,n,a);for(var i in a){var o=a[i],s=this.getTerminal(o,!0);null!=s&&(s=a[mxCellPath.create(s)],this.setTerminal(o,s,!0)),null!=(s=this.getTerminal(o,!1))&&(s=a[mxCellPath.create(s)],this.setTerminal(o,s,!1))}}finally{this.endUpdate()}},mxGraphModel.prototype.mergeChildrenImpl=function(e,t,n,a){this.beginUpdate();try{for(var i=e.getChildCount(),o=0;o<i;o++){var s=e.getChildAt(o);if("function"==typeof s.getId){var r=s.getId(),l=null==r||this.isEdge(s)&&n?null:this.getCell(r);if(null==l){var d=s.clone();d.setId(r),d.setTerminal(s.getTerminal(!0),!0),d.setTerminal(s.getTerminal(!1),!1),l=t.insert(d),this.cellAdded(l)}a[mxCellPath.create(s)]=l,this.mergeChildrenImpl(s,l,n,a)}}}finally{this.endUpdate()}},mxGraphModel.prototype.getParents=function(e){var t=[];if(null!=e)for(var n={},a=0;a<e.length;a++){var i=this.getParent(e[a]);if(null!=i){var o=mxCellPath.create(i);null==n[o]&&(n[o]=i,t.push(i))}}return t},mxGraphModel.prototype.cloneCell=function(e){return null!=e?this.cloneCells([e],!0)[0]:null},mxGraphModel.prototype.cloneCells=function(e,t){for(var n={},a=[],i=0;i<e.length;i++)null!=e[i]?a.push(this.cloneCellImpl(e[i],n,t)):a.push(null);for(i=0;i<a.length;i++)null!=a[i]&&this.restoreClone(a[i],e[i],n);return a},mxGraphModel.prototype.cloneCellImpl=function(e,t,n){var a=this.cellCloned(e);if(t[mxObjectIdentity.get(e)]=a,n){n=this.getChildCount(e);for(var i=0;i<n;i++){var o=this.cloneCellImpl(this.getChildAt(e,i),t,!0);a.insert(o)}}return a},mxGraphModel.prototype.cellCloned=function(e){return e.clone()},mxGraphModel.prototype.restoreClone=function(e,t,n){null!=(a=this.getTerminal(t,!0))&&null!=(a=n[mxObjectIdentity.get(a)])&&a.insertEdge(e,!0),null!=(a=this.getTerminal(t,!1))&&null!=(a=n[mxObjectIdentity.get(a)])&&a.insertEdge(e,!1);for(var a=this.getChildCount(e),i=0;i<a;i++)this.restoreClone(this.getChildAt(e,i),this.getChildAt(t,i),n)},mxRootChange.prototype.execute=function(){this.root=this.previous,this.previous=this.model.rootChanged(this.previous)},mxChildChange.prototype.execute=function(){var e=this.model.getParent(this.child),t=null!=e?e.getIndex(this.child):0;null==this.previous&&this.connect(this.child,!1),e=this.model.parentForCellChanged(this.child,this.previous,this.previousIndex),null!=this.previous&&this.connect(this.child,!0),this.parent=this.previous,this.previous=e,this.index=this.previousIndex,this.previousIndex=t},mxChildChange.prototype.connect=function(e,t){t=null==t||t;var n=e.getTerminal(!0),a=e.getTerminal(!1);for(null!=n&&(t?this.model.terminalForCellChanged(e,n,!0):this.model.terminalForCellChanged(e,null,!0)),null!=a&&(t?this.model.terminalForCellChanged(e,a,!1):this.model.terminalForCellChanged(e,null,!1)),e.setTerminal(n,!0),e.setTerminal(a,!1),n=this.model.getChildCount(e),a=0;a<n;a++)this.connect(this.model.getChildAt(e,a),t)},mxTerminalChange.prototype.execute=function(){this.terminal=this.previous,this.previous=this.model.terminalForCellChanged(this.cell,this.previous,this.source)},mxValueChange.prototype.execute=function(){this.value=this.previous,this.previous=this.model.valueForCellChanged(this.cell,this.previous)},mxStyleChange.prototype.execute=function(){this.style=this.previous,this.previous=this.model.styleForCellChanged(this.cell,this.previous)},mxGeometryChange.prototype.execute=function(){this.geometry=this.previous,this.previous=this.model.geometryForCellChanged(this.cell,this.previous)},mxCollapseChange.prototype.execute=function(){this.collapsed=this.previous,this.previous=this.model.collapsedStateForCellChanged(this.cell,this.previous)},mxVisibleChange.prototype.execute=function(){this.visible=this.previous,this.previous=this.model.visibleStateForCellChanged(this.cell,this.previous)},mxCellAttributeChange.prototype.execute=function(){var e=this.cell.getAttribute(this.attribute);null==this.previous?this.cell.value.removeAttribute(this.attribute):this.cell.setAttribute(this.attribute,this.previous),this.previous=e},mxCell.prototype.id=null,mxCell.prototype.value=null,mxCell.prototype.geometry=null,mxCell.prototype.style=null,mxCell.prototype.vertex=!1,mxCell.prototype.edge=!1,mxCell.prototype.connectable=!0,mxCell.prototype.visible=!0,mxCell.prototype.collapsed=!1,mxCell.prototype.parent=null,mxCell.prototype.source=null,mxCell.prototype.target=null,mxCell.prototype.children=null,mxCell.prototype.edges=null,mxCell.prototype.mxTransient="id value parent source target children edges".split(" "),mxCell.prototype.getId=function(){return this.id},mxCell.prototype.setId=function(e){this.id=e},mxCell.prototype.getValue=function(){return this.value},mxCell.prototype.setValue=function(e){this.value=e},mxCell.prototype.valueChanged=function(e){var t=this.getValue();return this.setValue(e),t},mxCell.prototype.getGeometry=function(){return this.geometry},mxCell.prototype.setGeometry=function(e){this.geometry=e},mxCell.prototype.getStyle=function(){return this.style},mxCell.prototype.setStyle=function(e){this.style=e},mxCell.prototype.isVertex=function(){return this.vertex},mxCell.prototype.setVertex=function(e){this.vertex=e},mxCell.prototype.isEdge=function(){return this.edge},mxCell.prototype.setEdge=function(e){this.edge=e},mxCell.prototype.isConnectable=function(){return this.connectable},mxCell.prototype.setConnectable=function(e){this.connectable=e},mxCell.prototype.isVisible=function(){return this.visible},mxCell.prototype.setVisible=function(e){this.visible=e},mxCell.prototype.isCollapsed=function(){return this.collapsed},mxCell.prototype.setCollapsed=function(e){this.collapsed=e},mxCell.prototype.getParent=function(){return this.parent},mxCell.prototype.setParent=function(e){this.parent=e},mxCell.prototype.getTerminal=function(e){return e?this.source:this.target},mxCell.prototype.setTerminal=function(e,t){return t?this.source=e:this.target=e,e},mxCell.prototype.getChildCount=function(){return null==this.children?0:this.children.length},mxCell.prototype.getIndex=function(e){return mxUtils.indexOf(this.children,e)},mxCell.prototype.getChildAt=function(e){return null==this.children?null:this.children[e]},mxCell.prototype.insert=function(e,t){return null!=e&&(null==t&&(t=this.getChildCount(),e.getParent()==this&&t--),e.removeFromParent(),e.setParent(this),null==this.children?(this.children=[],this.children.push(e)):this.children.splice(t,0,e)),e},mxCell.prototype.remove=function(e){var t=null;return null!=this.children&&0<=e&&null!=(t=this.getChildAt(e))&&(this.children.splice(e,1),t.setParent(null)),t},mxCell.prototype.removeFromParent=function(){if(null!=this.parent){var e=this.parent.getIndex(this);this.parent.remove(e)}},mxCell.prototype.getEdgeCount=function(){return null==this.edges?0:this.edges.length},mxCell.prototype.getEdgeIndex=function(e){return mxUtils.indexOf(this.edges,e)},mxCell.prototype.getEdgeAt=function(e){return null==this.edges?null:this.edges[e]},mxCell.prototype.insertEdge=function(e,t){return null!=e&&(e.removeFromTerminal(t),e.setTerminal(this,t),null==this.edges||e.getTerminal(!t)!=this||0>mxUtils.indexOf(this.edges,e))&&(null==this.edges&&(this.edges=[]),this.edges.push(e)),e},mxCell.prototype.removeEdge=function(e,t){if(null!=e){if(e.getTerminal(!t)!=this&&null!=this.edges){var n=this.getEdgeIndex(e);0<=n&&this.edges.splice(n,1)}e.setTerminal(null,t)}return e},mxCell.prototype.removeFromTerminal=function(e){var t=this.getTerminal(e);null!=t&&t.removeEdge(this,e)},mxCell.prototype.getAttribute=function(e,t){var n=this.getValue();return(null!=n&&n.nodeType==mxConstants.NODETYPE_ELEMENT?n.getAttribute(e):null)||t},mxCell.prototype.setAttribute=function(e,t){var n=this.getValue();null!=n&&n.nodeType==mxConstants.NODETYPE_ELEMENT&&n.setAttribute(e,t)},mxCell.prototype.clone=function(){var e=mxUtils.clone(this,this.mxTransient);return e.setValue(this.cloneValue()),e},mxCell.prototype.cloneValue=function(){var e=this.getValue();return null!=e&&("function"==typeof e.clone?e=e.clone():isNaN(e.nodeType)||(e=e.cloneNode(!0))),e},mxGeometry.prototype=new mxRectangle,mxGeometry.prototype.constructor=mxGeometry,mxGeometry.prototype.TRANSLATE_CONTROL_POINTS=!0,mxGeometry.prototype.alternateBounds=null,mxGeometry.prototype.sourcePoint=null,mxGeometry.prototype.targetPoint=null,mxGeometry.prototype.points=null,mxGeometry.prototype.offset=null,mxGeometry.prototype.relative=!1,mxGeometry.prototype.swap=function(){if(null!=this.alternateBounds){var e=new mxRectangle(this.x,this.y,this.width,this.height);this.x=this.alternateBounds.x,this.y=this.alternateBounds.y,this.width=this.alternateBounds.width,this.height=this.alternateBounds.height,this.alternateBounds=e}},mxGeometry.prototype.getTerminalPoint=function(e){return e?this.sourcePoint:this.targetPoint},mxGeometry.prototype.setTerminalPoint=function(e,t){return t?this.sourcePoint=e:this.targetPoint=e,e},mxGeometry.prototype.translate=function(e,t){if(this.clone(),this.relative||(this.x+=e,this.y+=t),null!=this.sourcePoint&&(this.sourcePoint.x+=e,this.sourcePoint.y+=t),null!=this.targetPoint&&(this.targetPoint.x+=e,this.targetPoint.y+=t),this.TRANSLATE_CONTROL_POINTS&&null!=this.points)for(var n=this.points.length,a=0;a<n;a++){var i=this.points[a];null!=i&&(i.x+=e,i.y+=t)}};var mxCellPath={PATH_SEPARATOR:".",create:function(e){var t="";if(null!=e)for(var n=e.getParent();null!=n;)t=n.getIndex(e)+mxCellPath.PATH_SEPARATOR+t,e=n,n=e.getParent();return 1<(e=t.length)&&(t=t.substring(0,e-1)),t},getParentPath:function(e){if(null!=e){var t=e.lastIndexOf(mxCellPath.PATH_SEPARATOR);if(0<=t)return e.substring(0,t);if(0<e.length)return""}return null},resolve:function(e,t){var n=e;if(null!=t)for(var a=t.split(mxCellPath.PATH_SEPARATOR),i=0;i<a.length;i++)n=n.getChildAt(parseInt(a[i]));return n},compare:function(e,t){for(var n=Math.min(e.length,t.length),a=0,i=0;i<n;i++)if(e[i]!=t[i]){0==e[i].length||0==t[i].length?a=e[i]==t[i]?0:e[i]>t[i]?1:-1:(n=parseInt(e[i]),i=parseInt(t[i]),a=n==i?0:n>i?1:-1);break}return 0==a&&(n=e.length,i=t.length,n!=i&&(a=n>i?1:-1)),a}},mxPerimeter={RectanglePerimeter:function(e,t,n,a){t=e.getCenterX();var i=e.getCenterY(),o=Math.atan2(n.y-i,n.x-t),s=new mxPoint(0,0),r=Math.PI,l=Math.PI/2-o,d=Math.atan2(e.height,e.width);return o<-r+d||o>r-d?(s.x=e.x,s.y=i-e.width*Math.tan(o)/2):o<-d?(s.y=e.y,s.x=t-e.height*Math.tan(l)/2):o<d?(s.x=e.x+e.width,s.y=i+e.width*Math.tan(o)/2):(s.y=e.y+e.height,s.x=t+e.height*Math.tan(l)/2),a&&(n.x>=e.x&&n.x<=e.x+e.width?s.x=n.x:n.y>=e.y&&n.y<=e.y+e.height&&(s.y=n.y),n.x<e.x?s.x=e.x:n.x>e.x+e.width&&(s.x=e.x+e.width),n.y<e.y?s.y=e.y:n.y>e.y+e.height&&(s.y=e.y+e.height)),s},EllipsePerimeter:function(e,t,n,a){var i=e.x,o=e.y,s=e.width/2,r=e.height/2,l=i+s,d=o+r;t=n.x,n=n.y;var c=parseInt(t-l),m=parseInt(n-d);if(0==c&&0!=m)return new mxPoint(l,d+r*m/Math.abs(m));if(0==c&&0==m)return new mxPoint(t,n);if(a){if(n>=o&&n<=o+e.height)return e=n-d,e=Math.sqrt(s*s*(1-e*e/(r*r)))||0,t<=i&&(e=-e),new mxPoint(l+e,n);if(t>=i&&t<=i+e.width)return e=t-l,e=Math.sqrt(r*r*(1-e*e/(s*s)))||0,n<=o&&(e=-e),new mxPoint(t,d+e)}return i=m/c,d-=i*l,o=s*s*i*i+r*r,e=-2*l*o,r=Math.sqrt(e*e-4*o*(s*s*i*i*l*l+r*r*l*l-s*s*r*r)),s=(-e+r)/(2*o),r=(-e-r)/(2*o),l=i*s+d,d=i*r+d,i=Math.sqrt(Math.pow(s-t,2)+Math.pow(l-n,2)),t=Math.sqrt(Math.pow(r-t,2)+Math.pow(d-n,2)),o=n=0,i<t?(n=s,o=l):(n=r,o=d),new mxPoint(n,o)},RhombusPerimeter:function(e,t,n,a){t=e.x;var i=e.y,o=e.width,s=t+o/2,r=i+(e=e.height)/2,l=n.x;if(n=n.y,s==l)return r>n?new mxPoint(s,i):new mxPoint(s,i+e);if(r==n)return s>l?new mxPoint(t,r):new mxPoint(t+o,r);var d=s,c=r;return a&&(l>=t&&l<=t+o?d=l:n>=i&&n<=i+e&&(c=n)),l<s?n<r?mxUtils.intersection(l,n,d,c,s,i,t,r):mxUtils.intersection(l,n,d,c,s,i+e,t,r):n<r?mxUtils.intersection(l,n,d,c,s,i,t+o,r):mxUtils.intersection(l,n,d,c,s,i+e,t+o,r)},TrianglePerimeter:function(e,t,n,a){var i=(t=null!=t?t.style[mxConstants.STYLE_DIRECTION]:null)==mxConstants.DIRECTION_NORTH||t==mxConstants.DIRECTION_SOUTH,o=e.x,s=e.y,r=e.width,l=o+r/2,d=s+(e=e.height)/2,c=new mxPoint(o,s),m=new mxPoint(o+r,d),u=new mxPoint(o,s+e);t==mxConstants.DIRECTION_NORTH?(c=u,m=new mxPoint(l,s),u=new mxPoint(o+r,s+e)):t==mxConstants.DIRECTION_SOUTH?(m=new mxPoint(l,s+e),u=new mxPoint(o+r,s)):t==mxConstants.DIRECTION_WEST&&(c=new mxPoint(o+r,s),m=new mxPoint(o,d),u=new mxPoint(o+r,s+e));var p=n.x-l,g=n.y-d,p=i?Math.atan2(p,g):Math.atan2(g,p),h=i?Math.atan2(r,e):Math.atan2(e,r),g=!1,g=t==mxConstants.DIRECTION_NORTH||t==mxConstants.DIRECTION_WEST?p>-h&&p<h:p<-Math.PI+h||p>Math.PI-h,h=null;return g?h=a&&(i&&n.x>=c.x&&n.x<=u.x||!i&&n.y>=c.y&&n.y<=u.y)?i?new mxPoint(n.x,c.y):new mxPoint(c.x,n.y):t==mxConstants.DIRECTION_NORTH?new mxPoint(o+r/2+e*Math.tan(p)/2,s+e):t==mxConstants.DIRECTION_SOUTH?new mxPoint(o+r/2-e*Math.tan(p)/2,s):t==mxConstants.DIRECTION_WEST?new mxPoint(o+r,s+e/2+r*Math.tan(p)/2):new mxPoint(o,s+e/2-r*Math.tan(p)/2):(a&&(a=new mxPoint(l,d),n.y>=s&&n.y<=s+e?(a.x=i?l:t==mxConstants.DIRECTION_WEST?o+r:o,a.y=n.y):n.x>=o&&n.x<=o+r&&(a.x=n.x,a.y=i?t==mxConstants.DIRECTION_NORTH?s+e:s:d),l=a.x,d=a.y),h=i&&n.x<=o+r/2||!i&&n.y<=s+e/2?mxUtils.intersection(n.x,n.y,l,d,c.x,c.y,m.x,m.y):mxUtils.intersection(n.x,n.y,l,d,m.x,m.y,u.x,u.y)),null==h&&(h=new mxPoint(l,d)),h}};mxPrintPreview.prototype.graph=null,mxPrintPreview.prototype.pageFormat=null,mxPrintPreview.prototype.scale=null,mxPrintPreview.prototype.border=0,mxPrintPreview.prototype.x0=0,mxPrintPreview.prototype.y0=0,mxPrintPreview.prototype.autoOrigin=!0,mxPrintPreview.prototype.printOverlays=!1,mxPrintPreview.prototype.borderColor=null,mxPrintPreview.prototype.title=null,mxPrintPreview.prototype.pageSelector=null,mxPrintPreview.prototype.wnd=null,mxPrintPreview.prototype.pageCount=0,mxPrintPreview.prototype.getWindow=function(){return this.wnd},mxPrintPreview.prototype.getDoctype=function(){var e="";return 8==document.documentMode&&(e='<meta http-equiv="X-UA-Compatible" content="IE=8">'),e},mxPrintPreview.prototype.open=function(e){var t=this.graph.cellRenderer.initializeOverlay,n=null;try{if(this.printOverlays&&(this.graph.cellRenderer.initializeOverlay=function(e,t){t.init(e.view.getDrawPane())}),null==this.wnd){this.wnd=window.open();var a=this.wnd.document,i=this.getDoctype();null!=i&&0<i.length&&a.writeln(i),a.writeln("<html>"),a.writeln("<head>"),this.writeHead(a,e),a.writeln("</head>"),a.writeln('<body class="mxPage">'),mxClient.link("stylesheet",mxClient.basePath+"/css/common.css",a),mxClient.IS_VML&&(a.namespaces.add("v","urn:schemas-microsoft-com:vml"),a.namespaces.add("o","urn:schemas-microsoft-com:office:office"),a.createStyleSheet().cssText="v\\:*{behavior:url(#default#VML)}o\\:*{behavior:url(#default#VML)}",mxClient.link("stylesheet",mxClient.basePath+"/css/explorer.css",a));var o=this.graph.getGraphBounds().clone(),s=this.graph.getView().getScale(),r=s/this.scale,l=this.graph.getView().getTranslate();this.autoOrigin||(this.x0=-l.x*this.scale,this.y0=-l.y*this.scale,o.width+=o.x,o.height+=o.y,o.x=0,this.border=o.y=0),o.width/=r,o.height/=r;var d=this.pageFormat.width-2*this.border,c=this.pageFormat.height-2*this.border,m=Math.max(1,Math.ceil((o.width+this.x0)/d)),u=Math.max(1,Math.ceil((o.height+this.y0)/c));this.pageCount=m*u;var p=mxUtils.bind(this,function(){if(this.pageSelector&&(1<u||1<m)){var e=this.createPageSelector(u,m);if(a.body.appendChild(e),mxClient.IS_IE){e.style.position="absolute";var t=function(){e.style.top=a.body.scrollTop+10+"px"};mxEvent.addListener(this.wnd,"scroll",function(e){t()}),mxEvent.addListener(this.wnd,"resize",function(e){t()})}}});if(e=function(e,t){if(null!=this.borderColor&&(e.style.borderColor=this.borderColor,e.style.borderStyle="solid",e.style.borderWidth="1px"),e.style.background="white",t&&(e.style.pageBreakAfter="always"),mxClient.IS_IE?(a.writeln(e.outerHTML),e.parentNode.removeChild(e)):(e.parentNode.removeChild(e),a.body.appendChild(e)),t){var n=a.createElement("hr");n.className="mxPageBreak",a.body.appendChild(n)}},null!=(b=this.getCoverPages(this.pageFormat.width,this.pageFormat.height)))for(h=0;h<b.length;h++)e(b[h],!0);for(var g=this.getAppendices(this.pageFormat.width,this.pageFormat.height),h=0;h<u;h++)for(var v=h*c/this.scale-this.y0/this.scale+(o.y-l.y*s)/s,b=0;b<m;b++){if(null==this.wnd)return null;var f=b*d/this.scale-this.x0/this.scale+(o.x-l.x*s)/s,E=h*m+b+1;(n=this.renderPage(this.pageFormat.width,this.pageFormat.height,mxUtils.bind(this,function(e){this.addGraphFragment(-f,-v,this.scale,E,e)}))).setAttribute("id","mxPage-"+E),e(n,null!=g||h<u-1||b<m-1)}if(null!=g)for(h=0;h<g.length;h++)e(g[h],h<g.length);a.writeln("</body>"),a.writeln("</html>"),a.close(),p(),mxEvent.release(a.body)}this.wnd.focus()}catch(e){null!=n&&null!=n.parentNode&&n.parentNode.removeChild(n)}finally{this.graph.cellRenderer.initializeOverlay=t}return this.wnd},mxPrintPreview.prototype.writeHead=function(e,t){null!=this.title&&e.writeln("<title>"+this.title+"</title>"),e.writeln('<style type="text/css">'),e.writeln("@media print {"),e.writeln("  table.mxPageSelector { display: none; }"),e.writeln("  hr.mxPageBreak { display: none; }"),e.writeln("}"),e.writeln("@media screen {"),e.writeln("  table.mxPageSelector { position: fixed; right: 10px; top: 10px;font-family: Arial; font-size:10pt; border: solid 1px darkgray;background: white; border-collapse:collapse; }"),e.writeln("  table.mxPageSelector td { border: solid 1px gray; padding:4px; }"),e.writeln("  body.mxPage { background: gray; }"),e.writeln("}"),null!=t&&e.writeln(t),e.writeln("</style>")},mxPrintPreview.prototype.createPageSelector=function(e,t){var n=this.wnd.document,a=n.createElement("table");a.className="mxPageSelector",a.setAttribute("border","0");for(var i=n.createElement("tbody"),o=0;o<e;o++){for(var s=n.createElement("tr"),r=0;r<t;r++){var l=o*t+r+1,d=n.createElement("td");if(!mxClient.IS_NS||mxClient.IS_SF||mxClient.IS_GC){var c=n.createElement("a");c.setAttribute("href","#mxPage-"+l),mxUtils.write(c,l,n),d.appendChild(c)}else mxUtils.write(d,l,n);s.appendChild(d)}i.appendChild(s)}return a.appendChild(i),a},mxPrintPreview.prototype.renderPage=function(e,t,n){var a=document.createElement("div");try{a.style.width=e+"px",a.style.height=t+"px",a.style.overflow="hidden",a.style.pageBreakInside="avoid",a.style.position="relative";var i=document.createElement("div");i.style.top=this.border+"px",i.style.left=this.border+"px",i.style.width=e-2*this.border+"px",i.style.height=t-2*this.border+"px",i.style.overflow="hidden",this.graph.dialect==mxConstants.DIALECT_VML&&(i.style.position="absolute"),a.appendChild(i),document.body.appendChild(a),n(i)}catch(e){throw a.parentNode.removeChild(a),e}return a},mxPrintPreview.prototype.addGraphFragment=function(e,t,n,a,i){a=this.graph.getView();var o=this.graph.container;this.graph.container=i;var s=a.getCanvas(),r=a.getBackgroundPane(),l=a.getDrawPane(),d=a.getOverlayPane();this.graph.dialect==mxConstants.DIALECT_SVG?a.createSvg():this.graph.dialect==mxConstants.DIALECT_VML?a.createVml():a.createHtml();var c=a.isEventsEnabled();a.setEventsEnabled(!1);var m=this.graph.isEnabled();this.graph.setEnabled(!1);var u=a.getTranslate();a.translate=new mxPoint(e,t),e=null;try{var p=[this.graph.getModel().getRoot()];e=new mxTemporaryCellStates(a,n,p)}finally{if(mxClient.IS_IE)a.overlayPane.innerHTML="";else for(n=i.firstChild;null!=n;)p=n.nextSibling,t=n.nodeName.toLowerCase(),"svg"==t?(n.setAttribute("width",parseInt(i.style.width)),n.setAttribute("height",parseInt(i.style.height))):"default"!=n.style.cursor&&"table"!=t&&n.parentNode.removeChild(n),n=p;a.overlayPane.parentNode.removeChild(a.overlayPane),this.graph.setEnabled(m),this.graph.container=o,a.canvas=s,a.backgroundPane=r,a.drawPane=l,a.overlayPane=d,a.translate=u,e.destroy(),a.setEventsEnabled(c)}},mxPrintPreview.prototype.getCoverPages=function(){return null},mxPrintPreview.prototype.getAppendices=function(){return null},mxPrintPreview.prototype.print=function(){var e=this.open();null!=e&&e.print()},mxPrintPreview.prototype.close=function(){null!=this.wnd&&(this.wnd.close(),this.wnd=null)},mxStylesheet.prototype.createDefaultVertexStyle=function(){var e={};return e[mxConstants.STYLE_SHAPE]=mxConstants.SHAPE_RECTANGLE,e[mxConstants.STYLE_PERIMETER]=mxPerimeter.RectanglePerimeter,e[mxConstants.STYLE_VERTICAL_ALIGN]=mxConstants.ALIGN_MIDDLE,e[mxConstants.STYLE_ALIGN]=mxConstants.ALIGN_CENTER,e[mxConstants.STYLE_FILLCOLOR]="#C3D9FF",e[mxConstants.STYLE_STROKECOLOR]="#6482B9",e[mxConstants.STYLE_FONTCOLOR]="#774400",e},mxStylesheet.prototype.createDefaultEdgeStyle=function(){var e={};return e[mxConstants.STYLE_SHAPE]=mxConstants.SHAPE_CONNECTOR,e[mxConstants.STYLE_ENDARROW]=mxConstants.ARROW_CLASSIC,e[mxConstants.STYLE_VERTICAL_ALIGN]=mxConstants.ALIGN_MIDDLE,e[mxConstants.STYLE_ALIGN]=mxConstants.ALIGN_CENTER,e[mxConstants.STYLE_STROKECOLOR]="#6482B9",e[mxConstants.STYLE_FONTCOLOR]="#446299",e},mxStylesheet.prototype.putDefaultVertexStyle=function(e){this.putCellStyle("defaultVertex",e)},mxStylesheet.prototype.putDefaultEdgeStyle=function(e){this.putCellStyle("defaultEdge",e)},mxStylesheet.prototype.getDefaultVertexStyle=function(){return this.styles.defaultVertex},mxStylesheet.prototype.getDefaultEdgeStyle=function(){return this.styles.defaultEdge},mxStylesheet.prototype.putCellStyle=function(e,t){this.styles[e]=t},mxStylesheet.prototype.getCellStyle=function(e,t){a=t;if(null!=e&&0<e.length)for(var n=e.split(";"),a=null!=a&&";"!=e.charAt(0)?mxUtils.clone(a):{},i=0;i<n.length;i++){var o=n[i],s=o.indexOf("=");if(0<=s){var r=o.substring(0,s);(o=o.substring(s+1))==mxConstants.NONE?delete a[r]:mxUtils.isNumeric(o)?a[r]=parseFloat(o):a[r]=o}else if(null!=(o=this.styles[o]))for(r in o)a[r]=o[r]}return a},mxCellState.prototype=new mxRectangle,mxCellState.prototype.constructor=mxCellState,mxCellState.prototype.view=null,mxCellState.prototype.cell=null,mxCellState.prototype.style=null,mxCellState.prototype.invalid=!0,mxCellState.prototype.invalidOrder=!1,mxCellState.prototype.orderChanged=!1,mxCellState.prototype.origin=null,mxCellState.prototype.absolutePoints=null,mxCellState.prototype.absoluteOffset=null,mxCellState.prototype.visibleSourceState=null,mxCellState.prototype.visibleTargetState=null,mxCellState.prototype.terminalDistance=0,mxCellState.prototype.length=0,mxCellState.prototype.segments=null,mxCellState.prototype.shape=null,mxCellState.prototype.text=null,mxCellState.prototype.getPerimeterBounds=function(e,t){if(e=e||0,t=null!=t?t:new mxRectangle(this.x,this.y,this.width,this.height),null!=this.shape&&null!=this.shape.stencil){var n=this.shape.stencil.computeAspect(this.style,t.x,t.y,t.width,t.height);t.x=n.x,t.y=n.y,t.width=this.shape.stencil.w0*n.width,t.height=this.shape.stencil.h0*n.height}return 0!=e&&t.grow(e),t},mxCellState.prototype.setAbsoluteTerminalPoint=function(e,t){t?(null==this.absolutePoints&&(this.absolutePoints=[]),0==this.absolutePoints.length?this.absolutePoints.push(e):this.absolutePoints[0]=e):null==this.absolutePoints?(this.absolutePoints=[],this.absolutePoints.push(null),this.absolutePoints.push(e)):1==this.absolutePoints.length?this.absolutePoints.push(e):this.absolutePoints[this.absolutePoints.length-1]=e},mxCellState.prototype.setCursor=function(e){null!=this.shape&&this.shape.setCursor(e),null!=this.text&&this.text.setCursor(e)},mxCellState.prototype.getVisibleTerminal=function(e){return e=this.getVisibleTerminalState(e),null!=e?e.cell:null},mxCellState.prototype.getVisibleTerminalState=function(e){return e?this.visibleSourceState:this.visibleTargetState},mxCellState.prototype.setVisibleTerminalState=function(e,t){t?this.visibleSourceState=e:this.visibleTargetState=e},mxCellState.prototype.destroy=function(){this.view.graph.cellRenderer.destroy(this)},mxCellState.prototype.clone=function(){var e=new mxCellState(this.view,this.cell,this.style);if(null!=this.absolutePoints){e.absolutePoints=[];for(var t=0;t<this.absolutePoints.length;t++)e.absolutePoints[t]=this.absolutePoints[t].clone()}return null!=this.origin&&(e.origin=this.origin.clone()),null!=this.absoluteOffset&&(e.absoluteOffset=this.absoluteOffset.clone()),null!=this.boundingBox&&(e.boundingBox=this.boundingBox.clone()),e.terminalDistance=this.terminalDistance,e.segments=this.segments,e.length=this.length,e.x=this.x,e.y=this.y,e.width=this.width,e.height=this.height,e},mxGraphSelectionModel.prototype=new mxEventSource,mxGraphSelectionModel.prototype.constructor=mxGraphSelectionModel,mxGraphSelectionModel.prototype.doneResource="none"!=mxClient.language?"done":"",mxGraphSelectionModel.prototype.updatingSelectionResource="none"!=mxClient.language?"updatingSelection":"",mxGraphSelectionModel.prototype.graph=null,mxGraphSelectionModel.prototype.singleSelection=!1,mxGraphSelectionModel.prototype.isSingleSelection=function(){return this.singleSelection},mxGraphSelectionModel.prototype.setSingleSelection=function(e){this.singleSelection=e},mxGraphSelectionModel.prototype.isSelected=function(e){return null!=e&&0<=mxUtils.indexOf(this.cells,e)},mxGraphSelectionModel.prototype.isEmpty=function(){return 0==this.cells.length},mxGraphSelectionModel.prototype.clear=function(){this.changeSelection(null,this.cells)},mxGraphSelectionModel.prototype.setCell=function(e){null!=e&&this.setCells([e])},mxGraphSelectionModel.prototype.setCells=function(e){if(null!=e){this.singleSelection&&(e=[this.getFirstSelectableCell(e)]);for(var t=[],n=0;n<e.length;n++)this.graph.isCellSelectable(e[n])&&t.push(e[n]);this.changeSelection(t,this.cells)}},mxGraphSelectionModel.prototype.getFirstSelectableCell=function(e){if(null!=e)for(var t=0;t<e.length;t++)if(this.graph.isCellSelectable(e[t]))return e[t];return null},mxGraphSelectionModel.prototype.addCell=function(e){null!=e&&this.addCells([e])},mxGraphSelectionModel.prototype.addCells=function(e){if(null!=e){var t=null;this.singleSelection&&(t=this.cells,e=[this.getFirstSelectableCell(e)]);for(var n=[],a=0;a<e.length;a++)!this.isSelected(e[a])&&this.graph.isCellSelectable(e[a])&&n.push(e[a]);this.changeSelection(n,t)}},mxGraphSelectionModel.prototype.removeCell=function(e){null!=e&&this.removeCells([e])},mxGraphSelectionModel.prototype.removeCells=function(e){if(null!=e){for(var t=[],n=0;n<e.length;n++)this.isSelected(e[n])&&t.push(e[n]);this.changeSelection(null,t)}},mxGraphSelectionModel.prototype.changeSelection=function(e,t){if(null!=e&&0<e.length&&null!=e[0]||null!=t&&0<t.length&&null!=t[0]){var n=new mxSelectionChange(this,e,t);n.execute();var a=new mxUndoableEdit(this,!1);a.add(n),this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",a))}},mxGraphSelectionModel.prototype.cellAdded=function(e){null!=e&&!this.isSelected(e)&&this.cells.push(e)},mxGraphSelectionModel.prototype.cellRemoved=function(e){null!=e&&0<=(e=mxUtils.indexOf(this.cells,e))&&this.cells.splice(e,1)},mxSelectionChange.prototype.execute=function(){var e=mxLog.enter("mxSelectionChange.execute");if(window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource,null!=this.removed)for(var t=0;t<this.removed.length;t++)this.selectionModel.cellRemoved(this.removed[t]);if(null!=this.added)for(t=0;t<this.added.length;t++)this.selectionModel.cellAdded(this.added[t]);t=this.added,this.added=this.removed,this.removed=t,window.status=mxResources.get(this.selectionModel.doneResource)||this.selectionModel.doneResource,mxLog.leave("mxSelectionChange.execute",e),this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))},mxCellEditor.prototype.graph=null,mxCellEditor.prototype.textarea=null,mxCellEditor.prototype.editingCell=null,mxCellEditor.prototype.trigger=null,mxCellEditor.prototype.modified=!1,mxCellEditor.prototype.autoSize=!0,mxCellEditor.prototype.emptyLabelText="",mxCellEditor.prototype.textNode="",mxCellEditor.prototype.init=function(){this.textarea=document.createElement("textarea"),this.textarea.className="mxCellEditor",this.textarea.style.position="absolute",this.textarea.style.overflow="visible",this.textarea.setAttribute("cols","20"),this.textarea.setAttribute("rows","4"),mxClient.IS_NS&&(this.textarea.style.resize="none"),mxEvent.addListener(this.textarea,"blur",mxUtils.bind(this,function(e){this.focusLost()})),mxEvent.addListener(this.textarea,"keydown",mxUtils.bind(this,function(e){mxEvent.isConsumed(e)||(113==e.keyCode||this.graph.isEnterStopsCellEditing()&&13==e.keyCode&&!mxEvent.isControlDown(e)&&!mxEvent.isShiftDown(e)?(this.graph.stopEditing(!1),mxEvent.consume(e)):27==e.keyCode?(this.graph.stopEditing(!0),mxEvent.consume(e)):(this.clearOnChange&&(this.clearOnChange=!1,this.textarea.value=""),this.setModified(!0)))})),mxEvent.addListener(this.textarea,"keypress",mxUtils.bind(this,function(e){this.autoSize&&!mxEvent.isConsumed(e)&&setTimeout(mxUtils.bind(this,function(){this.resize()}),0)}))},mxCellEditor.prototype.resize=function(){if(null!=this.textDiv){var e=this.graph.getView().getState(this.editingCell),t=this.graph.isLabelClipped(e.cell),n=this.graph.isWrapping(e.cell);this.graph.getModel().isEdge(e.cell)?(this.bounds.x=e.absoluteOffset.x,this.bounds.y=e.absoluteOffset.y,this.bounds.width=0,this.bounds.height=0):null!=this.bounds&&(this.bounds.x=e.x,this.bounds.y=e.y,this.bounds.width=e.width,this.bounds.height=e.height,(a=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER))==mxConstants.ALIGN_LEFT?this.bounds.x-=e.width:a==mxConstants.ALIGN_RIGHT&&(this.bounds.x+=e.width),(a=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE))==mxConstants.ALIGN_TOP?this.bounds.y-=e.height:a==mxConstants.ALIGN_BOTTOM&&(this.bounds.y+=e.height)),"\n"!=(a=this.textarea.value).charAt(a.length-1)&&""!=a||(a+="&nbsp;"),a=mxUtils.htmlEntities(a,!1),n?(this.textDiv.style.whiteSpace="normal",this.textDiv.style.width=this.bounds.width+"px"):a=a.replace(/ /g,"&nbsp;"),a=a.replace(/\n/g,"<br/>"),this.textDiv.innerHTML=a;var a=this.textDiv.offsetWidth+30,i=this.textDiv.offsetHeight+16,a=Math.max(a,40),i=Math.max(i,20);t&&(a=Math.min(this.bounds.width-4,a),i=Math.min(this.bounds.height,i));var o=null!=e.text?e.text.margin:null;null==o&&(o=mxUtils.getValue(e.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),e=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),o=mxUtils.getAlignmentAsPoint(o,e)),null!=o&&(!t&&n||(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-o.x*this.bounds.width+o.x*a)-3)+"px"),this.textarea.style.top=Math.max(0,Math.round(this.bounds.y-o.y*this.bounds.height+o.y*i)+4)+"px"),!t&&n||(this.textarea.style.width=a+"px"),this.textarea.style.height=i+"px"}},mxCellEditor.prototype.isModified=function(){return this.modified},mxCellEditor.prototype.setModified=function(e){this.modified=e},mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())},mxCellEditor.prototype.startEditing=function(e,t){null==this.textarea&&this.init(),this.stopEditing(!0);var n=this.graph.getView().getState(e);if(null!=n){this.editingCell=e,this.trigger=t,this.textNode=null,null!=n.text&&this.isHideLabel(n)&&(this.textNode=n.text.node,this.textNode.style.visibility="hidden");var a=this.graph.getView().scale,a=mxUtils.getValue(n.style,mxConstants.STYLE_FONTSIZE,mxConstants.DEFAULT_FONTSIZE)*a,i=mxUtils.getValue(n.style,mxConstants.STYLE_FONTFAMILY,mxConstants.DEFAULT_FONTFAMILY),o=mxUtils.getValue(n.style,mxConstants.STYLE_FONTCOLOR,"black"),s=mxUtils.getValue(n.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT),r=(mxUtils.getValue(n.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD,l=(mxUtils.getValue(n.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC,d=(mxUtils.getValue(n.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE;this.textarea.style.fontSize=Math.round(a)+"px",this.textarea.style.lineHeight=Math.round(a*mxConstants.LINE_HEIGHT)+"px",this.textarea.style.fontFamily=i,this.textarea.style.textAlign=s,this.textarea.style.color=o,this.textarea.style.fontWeight=r?"bold":"normal",this.textarea.style.fontStyle=l?"italic":"",this.textarea.style.textDecoration=d?"underline":"",this.textarea.style.overflow="auto",this.textarea.style.outline="none",this.bounds=a=this.getEditorBounds(n),this.textarea.style.left=a.x+"px",this.textarea.style.top=a.y+"px",this.textarea.style.width=a.width+"px",this.textarea.style.height=a.height+"px",this.textarea.style.zIndex=5,null==(n=this.getInitialValue(n,t))||0==n.length?(n=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=!1,this.setModified(!1),this.textarea.value=n,this.graph.container.appendChild(this.textarea),"none"!=this.textarea.style.display&&(this.autoSize&&(this.textDiv=this.createTextDiv(),document.body.appendChild(this.textDiv),this.resize()),this.textarea.focus(),this.textarea.select())}},mxCellEditor.prototype.createTextDiv=function(){var e=document.createElement("div"),t=e.style;return t.position="absolute",t.whiteSpace="nowrap",t.visibility="hidden",t.display=mxClient.IS_QUIRKS?"inline":"inline-block",t.zoom="1",t.verticalAlign="top",t.lineHeight=this.textarea.style.lineHeight,t.fontSize=this.textarea.style.fontSize,t.fontFamily=this.textarea.style.fontFamily,t.fontWeight=this.textarea.style.fontWeight,t.textAlign=this.textarea.style.textAlign,t.fontStyle=this.textarea.style.fontStyle,t.textDecoration=this.textarea.style.textDecoration,e},mxCellEditor.prototype.stopEditing=function(e){null!=this.editingCell&&(null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null),!e&&this.isModified()&&this.graph.labelChanged(this.editingCell,this.getCurrentValue(),this.trigger),null!=this.textDiv&&(document.body.removeChild(this.textDiv),this.textDiv=null),this.bounds=this.trigger=this.editingCell=null,this.textarea.blur(),this.textarea.parentNode.removeChild(this.textarea))},mxCellEditor.prototype.getInitialValue=function(e,t){return this.graph.getEditingValue(e.cell,t)},mxCellEditor.prototype.getCurrentValue=function(){return this.textarea.value.replace(/\r/g,"")},mxCellEditor.prototype.isHideLabel=function(e){return!0},mxCellEditor.prototype.getMinimumSize=function(e){var t=this.graph.getView().scale;return new mxRectangle(0,0,null==e.text?30:e.text.size*t+20,"left"==this.textarea.style.textAlign?120:40)},mxCellEditor.prototype.getEditorBounds=function(e){var t=this.graph.getModel().isEdge(e.cell),n=this.graph.getView().scale,a=(i=this.getMinimumSize(e)).width,i=i.height,o=parseInt(e.style[mxConstants.STYLE_SPACING]||2)*n,s=parseInt(e.style[mxConstants.STYLE_SPACING_TOP]||0)*n+o,r=parseInt(e.style[mxConstants.STYLE_SPACING_RIGHT]||0)*n+o,l=parseInt(e.style[mxConstants.STYLE_SPACING_BOTTOM]||0)*n+o,n=parseInt(e.style[mxConstants.STYLE_SPACING_LEFT]||0)*n+o,r=new mxRectangle(e.x,e.y,Math.max(a,e.width-n-r),Math.max(i,e.height-s-l));return t?(r.x=e.absoluteOffset.x,r.y=e.absoluteOffset.y,null!=e.text&&null!=e.text.boundingBox&&(0<e.text.boundingBox.x&&(r.x=e.text.boundingBox.x),0<e.text.boundingBox.y&&(r.y=e.text.boundingBox.y))):null!=e.text&&null!=e.text.boundingBox&&(r.x=Math.min(r.x,e.text.boundingBox.x),r.y=Math.min(r.y,e.text.boundingBox.y)),r.x+=n,r.y+=s,null!=e.text&&null!=e.text.boundingBox&&(t?(r.width=Math.max(a,e.text.boundingBox.width),r.height=Math.max(i,e.text.boundingBox.height)):(r.width=Math.max(r.width,e.text.boundingBox.width),r.height=Math.max(r.height,e.text.boundingBox.height))),this.graph.getModel().isVertex(e.cell)&&(t=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),t==mxConstants.ALIGN_LEFT?r.x-=e.width:t==mxConstants.ALIGN_RIGHT&&(r.x+=e.width),t=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),t==mxConstants.ALIGN_TOP?r.y-=e.height:t==mxConstants.ALIGN_BOTTOM&&(r.y+=e.height)),r},mxCellEditor.prototype.getEmptyLabelText=function(e){return this.emptyLabelText},mxCellEditor.prototype.getEditingCell=function(){return this.editingCell},mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null)},mxCellRenderer.prototype.defaultEdgeShape=mxConnector,mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape,mxCellRenderer.prototype.defaultTextShape=mxText,mxCellRenderer.prototype.legacyControlPosition=!0,mxCellRenderer.prototype.defaultShapes={},mxCellRenderer.registerShape=function(e,t){mxCellRenderer.prototype.defaultShapes[e]=t},mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape),mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse),mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus),mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder),mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector),mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor),mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle),mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon),mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud),mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine),mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow),mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse),mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane),mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape),mxCellRenderer.registerShape(mxConstants.SHAPE_LABEL,mxLabel),mxCellRenderer.prototype.initialize=function(e,t){var n=e.view.graph.getModel();null!=e.view.graph.container&&null==e.shape&&e.cell!=e.view.currentRoot&&(n.isVertex(e.cell)||n.isEdge(e.cell))&&(this.createShape(e),null==e.shape||null!=t&&!t||(this.initializeShape(e),e.view.graph.ordered||n.isEdge(e.cell)?e.invalidOrder=!0:e.view.graph.keepEdgesInForeground&&null!=this.firstEdge&&(this.firstEdge.parentNode==e.shape.node.parentNode?this.insertState(e,this.firstEdge):this.firstEdge=null),e.shape.scale=e.view.scale,this.createCellOverlays(e),this.installListeners(e)))},mxCellRenderer.prototype.initializeShape=function(e){e.shape.init(e.view.getDrawPane())},mxCellRenderer.prototype.getPreviousStateInContainer=function(e,t){for(var n=null,a=e.view.graph,i=a.getModel(),o=e.cell,s=i.getParent(o);null!=s&&null==n;)n=this.findPreviousStateInContainer(a,s,o,t),o=s,s=i.getParent(o);return n},mxCellRenderer.prototype.findPreviousStateInContainer=function(e,t,n,a){var i=null,o=e.getModel();for(n=null!=n?t.getIndex(n)-1:o.getChildCount(t)-1;0<=n&&null==i;n--)i=this.findPreviousStateInContainer(e,o.getChildAt(t,n),null,a);return null!=i||null==(i=e.view.getState(t))||null!=i.shape&&null!=i.shape.node&&i.shape.node.parentNode==a||(i=null),i},mxCellRenderer.prototype.order=function(e){var t=e.shape.node.parentNode,n=this.getPreviousStateInContainer(e,t),a=t.firstChild;null!=n&&(a=n.shape.node,null!=n.text&&null!=n.text.node&&n.text.node.parentNode==t&&(a=n.text.node),a=a.nextSibling),this.insertState(e,a)},mxCellRenderer.prototype.orderEdge=function(e){var t=e.view,n=t.graph.getModel();if(t.graph.keepEdgesInForeground)null!=this.firstEdge&&null!=this.firstEdge.parentNode&&this.firstEdge.parentNode==e.shape.node.parentNode||(this.firstEdge=e.shape.node);else if(t.graph.keepEdgesInBackground){var a=e.shape.node,i=a.parentNode,n=n.getParent(e.cell);null!=(i=null!=(t=t.getState(n))&&null!=t.shape&&null!=t.shape.node?t.shape.node.nextSibling:i.firstChild)&&i!=a&&this.insertState(e,i)}},mxCellRenderer.prototype.insertState=function(e,t){e.shape.node.parentNode.insertBefore(e.shape.node,t),null!=e.text&&null!=e.text.node&&e.text.node.parentNode==e.shape.node.parentNode&&e.shape.node.parentNode.insertBefore(e.text.node,e.shape.node.nextSibling)},mxCellRenderer.prototype.createShape=function(e){if(null!=e.style){var t=mxStencilRegistry.getStencil(e.style[mxConstants.STYLE_SHAPE]);null!=t?e.shape=new mxShape(t):(t=this.getShapeConstructor(e),e.shape=new t),e.shape.points=e.absolutePoints,e.shape.bounds=new mxRectangle(e.x,e.y,e.width,e.height),e.shape.dialect=e.view.graph.dialect,this.configureShape(e)}},mxCellRenderer.prototype.getShape=function(e){return null!=e?mxCellRenderer.prototype.defaultShapes[e]:null},mxCellRenderer.prototype.getShapeConstructor=function(e){var t=this.getShape(e.style[mxConstants.STYLE_SHAPE]);return null==t&&(t=e.view.graph.getModel().isEdge(e.cell)?this.defaultEdgeShape:this.defaultVertexShape),t},mxCellRenderer.prototype.configureShape=function(e){e.shape.apply(e),e.shape.image=e.view.graph.getImage(e),e.shape.indicatorShape=this.getShape(e.view.graph.getIndicatorShape(e)),e.shape.indicatorColor=e.view.graph.getIndicatorColor(e),e.shape.indicatorGradientColor=e.view.graph.getIndicatorGradientColor(e),e.shape.indicatorDirection=e.style[mxConstants.STYLE_INDICATOR_DIRECTION],e.shape.indicatorImage=e.view.graph.getIndicatorImage(e),this.postConfigureShape(e)},mxCellRenderer.prototype.postConfigureShape=function(e){null!=e.shape&&(this.resolveColor(e,"indicatorColor",mxConstants.STYLE_FILLCOLOR),this.resolveColor(e,"indicatorGradientColor",mxConstants.STYLE_GRADIENTCOLOR),this.resolveColor(e,"fill",mxConstants.STYLE_FILLCOLOR),this.resolveColor(e,"stroke",mxConstants.STYLE_STROKECOLOR),this.resolveColor(e,"gradient",mxConstants.STYLE_GRADIENTCOLOR))},mxCellRenderer.prototype.resolveColor=function(e,t,n){var a=e.shape[t],i=e.view.graph,o=null;"inherit"==a?o=i.model.getParent(e.cell):"swimlane"==a?(o=null!=i.model.getTerminal(e.cell,!1)?i.model.getTerminal(e.cell,!1):e.cell,o=i.getSwimlane(o),n=i.swimlaneIndicatorColorAttribute):"indicated"==a&&(e.shape[t]=e.shape.indicatorColor),null!=o&&(a=i.getView().getState(o),e.shape[t]=null,null!=a&&(e.shape[t]=null!=a.shape&&"indicatorColor"!=t?a.shape[t]:a.style[n]))},mxCellRenderer.prototype.getLabelValue=function(e){return e.view.graph.getLabel(e.cell)},mxCellRenderer.prototype.createLabel=function(e,t){var n=e.view.graph;if(n.getModel().isEdge(e.cell),0<e.style[mxConstants.STYLE_FONTSIZE]||null==e.style[mxConstants.STYLE_FONTSIZE]){var a=n.isHtmlLabel(e.cell)||null!=t&&mxUtils.isNode(t);e.text=new this.defaultTextShape(t,new mxRectangle,e.style[mxConstants.STYLE_ALIGN]||mxConstants.ALIGN_CENTER,n.getVerticalAlign(e),e.style[mxConstants.STYLE_FONTCOLOR],e.style[mxConstants.STYLE_FONTFAMILY],e.style[mxConstants.STYLE_FONTSIZE],e.style[mxConstants.STYLE_FONTSTYLE],e.style[mxConstants.STYLE_SPACING],e.style[mxConstants.STYLE_SPACING_TOP],e.style[mxConstants.STYLE_SPACING_RIGHT],e.style[mxConstants.STYLE_SPACING_BOTTOM],e.style[mxConstants.STYLE_SPACING_LEFT],e.style[mxConstants.STYLE_HORIZONTAL],e.style[mxConstants.STYLE_LABEL_BACKGROUNDCOLOR],e.style[mxConstants.STYLE_LABEL_BORDERCOLOR],n.isWrapping(e.cell)&&n.isHtmlLabel(e.cell),n.isLabelClipped(e.cell),e.style[mxConstants.STYLE_OVERFLOW],e.style[mxConstants.STYLE_LABEL_PADDING]),e.text.opacity=mxUtils.getValue(e.style,mxConstants.STYLE_TEXT_OPACITY,100),e.text.dialect=a?mxConstants.DIALECT_STRICTHTML:e.view.graph.dialect,e.text.state=e,this.initializeLabel(e);var i=!1,o=function(t){var a=e;return(mxClient.IS_TOUCH||i)&&(a=mxEvent.getClientX(t),t=mxEvent.getClientY(t),t=mxUtils.convertPoint(n.container,a,t),a=n.view.getState(n.getCellAt(t.x,t.y))),a};mxEvent.addGestureListeners(e.text.node,mxUtils.bind(this,function(t){this.isLabelEvent(e,t)&&(n.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(t,e)),i=n.dialect!=mxConstants.DIALECT_SVG&&"IMG"==mxEvent.getSource(t).nodeName)}),mxUtils.bind(this,function(t){this.isLabelEvent(e,t)&&n.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t,o(t)))}),mxUtils.bind(this,function(t){this.isLabelEvent(e,t)&&(n.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(t,o(t))),i=!1)})),mxEvent.addListener(e.text.node,"dblclick",mxUtils.bind(this,function(t){this.isLabelEvent(e,t)&&(n.dblClick(t,e.cell),mxEvent.consume(t))}))}},mxCellRenderer.prototype.initializeLabel=function(e){var t=e.view.graph;e.text.dialect!=mxConstants.DIALECT_SVG&&(mxClient.IS_SVG&&mxClient.NO_FO?e.text.init(t.container):mxUtils.isVml(e.view.getDrawPane())&&(null!=e.shape.label?e.text.init(e.shape.label):e.text.init(e.shape.node))),null==e.text.node&&(e.text.init(e.view.getDrawPane()),null!=e.shape&&null!=e.text&&e.shape.node.parentNode.insertBefore(e.text.node,e.shape.node.nextSibling))},mxCellRenderer.prototype.createCellOverlays=function(e){var t=e.view.graph.getCellOverlays(e.cell),n=null;if(null!=t)for(var n=new mxDictionary,a=0;a<t.length;a++){var i=null!=e.overlays?e.overlays.remove(t[a]):null;null==i&&(i=new mxImageShape(new mxRectangle,t[a].image.src),i.dialect=e.view.graph.dialect,i.preserveImageAspect=!1,i.overlay=t[a],this.initializeOverlay(e,i),this.installCellOverlayListeners(e,t[a],i),null!=t[a].cursor&&(i.node.style.cursor=t[a].cursor)),n.put(t[a],i)}null!=e.overlays&&e.overlays.visit(function(e,t){t.destroy()}),e.overlays=n},mxCellRenderer.prototype.initializeOverlay=function(e,t){t.init(e.view.getOverlayPane())},mxCellRenderer.prototype.installCellOverlayListeners=function(e,t,n){var a=e.view.graph;mxEvent.addListener(n.node,"click",function(n){a.isEditing()&&a.stopEditing(!a.isInvokesStopCellEditing()),t.fireEvent(new mxEventObject(mxEvent.CLICK,"event",n,"cell",e.cell))}),mxEvent.addGestureListeners(n.node,function(e){mxEvent.consume(e)},function(t){a.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t,e))}),mxClient.IS_TOUCH&&mxEvent.addListener(n.node,"touchend",function(n){t.fireEvent(new mxEventObject(mxEvent.CLICK,"event",n,"cell",e.cell))})},mxCellRenderer.prototype.createControl=function(e){var t=e.view.graph,n=t.getFoldingImage(e);if(t.foldingEnabled&&null!=n){if(null==e.control){var a=new mxRectangle(0,0,n.width,n.height);e.control=new mxImageShape(a,n.src),e.control.preserveImageAspect=!1,e.control.dialect=t.dialect,this.initControl(e,e.control,!0,function(n){if(t.isEnabled()){var a=!t.isCellCollapsed(e.cell);t.foldCells(a,!1,[e.cell]),mxEvent.consume(n)}})}}else null!=e.control&&(e.control.destroy(),e.control=null)},mxCellRenderer.prototype.initControl=function(e,t,n,a){var i=e.view.graph;return i.isHtmlLabel(e.cell)&&mxClient.NO_FO&&i.dialect==mxConstants.DIALECT_SVG?(t.dialect=mxConstants.DIALECT_PREFERHTML,t.init(i.container),t.node.style.zIndex=1):t.init(e.view.getOverlayPane()),t=t.innerNode||t.node,a&&(i.isEnabled()&&(t.style.cursor="pointer"),mxEvent.addListener(t,"click",a)),n&&mxEvent.addGestureListeners(t,function(t){i.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(t,e)),mxEvent.consume(t)},function(t){i.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t,e))}),t},mxCellRenderer.prototype.isShapeEvent=function(e,t){return!0},mxCellRenderer.prototype.isLabelEvent=function(e,t){return!0},mxCellRenderer.prototype.installListeners=function(e){var t=e.view.graph,n=function(n){var a=e;return(t.dialect!=mxConstants.DIALECT_SVG&&"IMG"==mxEvent.getSource(n).nodeName||mxClient.IS_TOUCH)&&(a=mxEvent.getClientX(n),n=mxEvent.getClientY(n),n=mxUtils.convertPoint(t.container,a,n),a=t.view.getState(t.getCellAt(n.x,n.y))),a},a=!1;mxEvent.addListener(e.shape.node,"gesturestart",mxUtils.bind(this,function(e){t.lastTouchTime=0,a=!0,mxEvent.consume(e)})),mxEvent.addGestureListeners(e.shape.node,mxUtils.bind(this,function(n){this.isShapeEvent(e,n)&&!a?t.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(n,null!=e.shape&&mxEvent.getSource(n)==e.shape.content?null:e)):a&&mxEvent.consume(n)}),mxUtils.bind(this,function(i){this.isShapeEvent(e,i)&&!a?t.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(i,null!=e.shape&&mxEvent.getSource(i)==e.shape.content?null:n(i))):a&&mxEvent.consume(i)}),mxUtils.bind(this,function(i){this.isShapeEvent(e,i)&&!a?t.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(i,null!=e.shape&&mxEvent.getSource(i)==e.shape.content?null:n(i))):a&&mxEvent.consume(i)}));var i=mxClient.IS_TOUCH?"gestureend":"dblclick";mxEvent.addListener(e.shape.node,i,mxUtils.bind(this,function(n){a=!1,"gestureend"==i?(t.lastTouchTime=0,t.gestureEnabled&&(t.handleGesture(e,n),mxEvent.consume(n))):this.isShapeEvent(e,n)&&(t.dblClick(n,null!=e.shape&&mxEvent.getSource(n)==e.shape.content?null:e.cell),mxEvent.consume(n))}))},mxCellRenderer.prototype.redrawLabel=function(e,t){var n=this.getLabelValue(e);if(null==e.text&&null!=n&&(mxUtils.isNode(n)||0<n.length)?this.createLabel(e,n):null==e.text||null!=n&&0!=n.length||(e.text.destroy(),e.text=null),null!=e.text){var a=(i=e.view.graph).isWrapping(e.cell),i=i.isLabelClipped(e.cell),o=this.getLabelBounds(e);!t&&e.text.value==n&&e.text.isWrapping==a&&e.text.isClipping==i&&e.text.scale==e.view.scale&&e.text.bounds.equals(o)||(e.text.value=n,e.text.bounds=o,e.text.scale=this.getTextScale(e),e.text.isWrapping=a,e.text.isClipping=i,e.text.redraw())}},mxCellRenderer.prototype.getTextScale=function(e){return e.view.scale},mxCellRenderer.prototype.getLabelBounds=function(e){var t=e.view.graph,n=e.view.scale,a=t.getModel().isEdge(e.cell),i=new mxRectangle(e.absoluteOffset.x,e.absoluteOffset.y);return e.text.updateMargin(),a?(a=e.text.getSpacing(),i.x+=a.x*n,i.y+=a.y*n,null!=(t=t.getCellGeometry(e.cell))&&(i.width=Math.max(0,e.text.margin.x*t.width*n-e.text.spacingLeft*n-e.text.spacingRight*n),i.height=Math.max(0,e.text.margin.y*t.height*n-e.text.spacingTop*n-e.text.spacingBottom*n))):(e.text.isPaintBoundsInverted()&&(a=i.x,i.x=i.y,i.y=a),i.x+=e.x,i.y+=e.y,i.width=Math.max(1,e.width),i.height=Math.max(1,e.height),t.isSwimlane(e.cell)&&(t=t.getStartSize(e.cell),0<t.width?(a=Math.min(i.width,t.width*n),e.shape.flipH&&(i.x+=i.width-a),i.width=a):0<t.height&&(a=Math.min(i.height,t.height*n),e.shape.flipV&&(i.y+=i.height-a),i.height=a)),this.rotateLabelBounds(e,i)),i},mxCellRenderer.prototype.rotateLabelBounds=function(e,t){if(e.text.isPaintBoundsInverted()){n=(e.width-e.height)/2;t.x+=n,t.y-=n,n=t.width,t.width=t.height,t.height=n}if(t.x-=e.text.margin.x*t.width,t.y-=e.text.margin.y*t.height,"fill"!=e.style[mxConstants.STYLE_OVERFLOW]){var n=e.view.scale,a=e.text.getSpacing();t.x+=a.x*n,t.y+=a.y*n,t.width=Math.max(0,t.width-e.text.spacingLeft*n-e.text.spacingRight*n),t.height=Math.max(0,t.height-e.text.spacingTop*n-e.text.spacingBottom*n)}var i=e.text.getTextRotation();0!=i&&null!=e&&e.view.graph.model.isVertex(e.cell)&&(n=e.getCenterX(),a=e.getCenterY(),t.x!=n||t.y!=a)&&(i*=Math.PI/180,pt=mxUtils.getRotatedPoint(new mxPoint(t.x,t.y),Math.cos(i),Math.sin(i),new mxPoint(n,a)),t.x=pt.x,t.y=pt.y)},mxCellRenderer.prototype.redrawCellOverlays=function(e,t){if(this.createCellOverlays(e),null!=e.overlays){var n=mxUtils.mod(mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION,0),90),a=mxUtils.toRadians(n),i=Math.cos(a),o=Math.sin(a);e.overlays.visit(function(a,s){var r=s.overlay.getBounds(e);if(!e.view.graph.getModel().isEdge(e.cell)&&null!=e.shape&&0!=n){var l=r.getCenterX(),d=r.getCenterY(),l=(d=mxUtils.getRotatedPoint(new mxPoint(l,d),i,o,new mxPoint(e.getCenterX(),e.getCenterY()))).x,d=d.y;r.x=Math.round(l-r.width/2),r.y=Math.round(d-r.height/2)}!t&&null!=s.bounds&&s.scale==e.view.scale&&s.bounds.equals(r)||(s.bounds=r,s.scale=e.view.scale,s.redraw())})}},mxCellRenderer.prototype.redrawControl=function(e,t){if(null!=e.control){var n=this.getControlBounds(e),a=this.legacyControlPosition?mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION,0):e.shape.getTextRotation(),i=e.view.scale;!t&&e.control.scale==i&&e.control.bounds.equals(n)&&e.control.rotation==a||(e.control.rotation=a,e.control.bounds=n,e.control.scale=i,e.control.redraw())}},mxCellRenderer.prototype.getControlBounds=function(e){if(null!=e.control){var t=e.control.scale,n=e.control.bounds.width/t,t=e.control.bounds.height/t,a=e.view.scale,i=e.getCenterX(),o=e.getCenterY();if(!e.view.graph.getModel().isEdge(e.cell)&&(i=e.x+n*a,o=e.y+t*a,null!=e.shape)){var s=e.shape.getShapeRotation();if(this.legacyControlPosition)s=mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION,0);else if(e.shape.isPaintBoundsInverted())var r=(e.width-e.height)/2,i=i+r,o=o-r;0!=s&&(r=mxUtils.toRadians(s),s=Math.cos(r),r=Math.sin(r),o=mxUtils.getRotatedPoint(new mxPoint(i,o),s,r,new mxPoint(e.getCenterX(),e.getCenterY())),i=o.x,o=o.y)}return e.view.graph.getModel().isEdge(e.cell),new mxRectangle(Math.round(i-n/2*a),Math.round(o-t/2*a),Math.round(n*a),Math.round(t*a))}return null},mxCellRenderer.prototype.redraw=function(e,t,n){if(null!=e.shape){var a=!1;e.view.graph.getModel().isEdge(e.cell),reconfigure=null!=t&&t,this.createControl(e),(e.orderChanged||e.invalidOrder)&&(e.view.graph.ordered?this.order(e):this.orderEdge(e)),!e.orderChanged&&mxUtils.equalEntries(e.shape.style,e.style)||(this.configureShape(e),t=!0),delete e.invalidOrder,delete e.orderChanged,!t&&null!=e.shape.bounds&&e.shape.scale==e.view.scale&&e.shape.bounds.equals(e)&&mxUtils.equalPoints(e.shape.points,e.absolutePoints)||(a=!0,e.shape.points=null!=e.absolutePoints?e.absolutePoints.slice():null,e.shape.bounds=new mxRectangle(e.x,e.y,e.width,e.height),e.shape.scale=e.view.scale,null==n||n?e.shape.redraw():e.shape.updateBoundingBox()),(null==n||n)&&(this.redrawLabel(e,a),this.redrawCellOverlays(e,a),this.redrawControl(e,a))}},mxCellRenderer.prototype.destroy=function(e){null!=e.shape&&(null!=e.text&&(e.text.destroy(),e.text=null),null!=e.overlays&&(e.overlays.visit(function(e,t){t.destroy()}),e.overlays=null),null!=e.control&&(e.control.destroy(),e.control=null),e.shape.destroy(),e.shape=null)};var mxEdgeStyle={EntityRelation:function(e,t,n,a,i){var o=e.view,s=o.graph;a=mxUtils.getValue(e.style,mxConstants.STYLE_SEGMENT,mxConstants.ENTITY_SEGMENT)*o.scale;var r=(d=e.absolutePoints)[0],l=d[d.length-1],d=!1;if(null!=r)t=new mxCellState,t.x=r.x,t.y=r.y;else{if(null==t)return;var c=mxUtils.getPortConstraints(t,e,!0,mxConstants.DIRECTION_MASK_NONE);c!=mxConstants.DIRECTION_MASK_NONE?d=c==mxConstants.DIRECTION_MASK_WEST:(r=s.getCellGeometry(t.cell),r.relative?d=.5>=r.x:null!=n&&(d=n.x+n.width<t.x))}r=!0,null!=l?(n=new mxCellState,n.x=l.x,n.y=l.y):null!=n&&(c=mxUtils.getPortConstraints(n,e,!1,mxConstants.DIRECTION_MASK_NONE),c!=mxConstants.DIRECTION_MASK_NONE?r=c==mxConstants.DIRECTION_MASK_WEST:(e=s.getCellGeometry(n.cell),e.relative?r=.5>=e.x:null!=t&&(r=t.x+t.width<n.x))),null!=t&&null!=n&&(e=d?t.x:t.x+t.width,t=o.getRoutingCenterY(t),s=r?n.x:n.x+n.width,n=o.getRoutingCenterY(n),o=new mxPoint(e+(d?-a:a),t),l=new mxPoint(s+(r?-a:a),n),d==r?(a=d?Math.min(e,s)-a:Math.max(e,s)+a,i.push(new mxPoint(a,t)),i.push(new mxPoint(a,n))):(o.x<l.x==d?(a=t+(n-t)/2,i.push(o),i.push(new mxPoint(o.x,a)),i.push(new mxPoint(l.x,a))):i.push(o),i.push(l)))},Loop:function(e,t,n,a,i){if(null!=t){d=(n=e.view).graph;null!=(a=null!=a&&0<a.length?a[0]:null)&&(a=n.transformControlPoint(e,a),mxUtils.contains(t,a.x,a.y)&&(a=null));var o=0,s=0,r=0,l=0,d=mxUtils.getValue(e.style,mxConstants.STYLE_SEGMENT,d.gridSize)*n.scale;(e=mxUtils.getValue(e.style,mxConstants.STYLE_DIRECTION,mxConstants.DIRECTION_WEST))==mxConstants.DIRECTION_NORTH||e==mxConstants.DIRECTION_SOUTH?(o=n.getRoutingCenterX(t),s=d):(r=n.getRoutingCenterY(t),l=d),null==a||a.x<t.x||a.x>t.x+t.width?null!=a?(o=a.x,l=Math.max(Math.abs(r-a.y),l)):e==mxConstants.DIRECTION_NORTH?r=t.y-2*s:e==mxConstants.DIRECTION_SOUTH?r=t.y+t.height+2*s:o=e==mxConstants.DIRECTION_EAST?t.x-2*l:t.x+t.width+2*l:null!=a&&(o=n.getRoutingCenterX(t),s=Math.max(Math.abs(o-a.x),l),r=a.y,l=0),i.push(new mxPoint(o-s,r-l)),i.push(new mxPoint(o+s,r+l))}},ElbowConnector:function(e,t,n,a,i){var o=null!=a&&0<a.length?a[0]:null,s=!1,r=!1;if(null!=t&&null!=n)if(null!=o)var l=Math.min(t.x,n.x),d=Math.max(t.x+t.width,n.x+n.width),r=Math.min(t.y,n.y),c=Math.max(t.y+t.height,n.y+n.height),o=e.view.transformControlPoint(e,o),s=o.y<r||o.y>c,r=o.x<l||o.x>d;else l=Math.max(t.x,n.x),d=Math.min(t.x+t.width,n.x+n.width),(s=l==d)||(r=Math.max(t.y,n.y),c=Math.min(t.y+t.height,n.y+n.height),r=r==c);r||!s&&e.style[mxConstants.STYLE_ELBOW]!=mxConstants.ELBOW_VERTICAL?mxEdgeStyle.SideToSide(e,t,n,a,i):mxEdgeStyle.TopToBottom(e,t,n,a,i)},SideToSide:function(e,t,n,a,i){var o=e.view;a=null!=a&&0<a.length?a[0]:null;var s=(r=e.absolutePoints)[0],r=r[r.length-1];null!=a&&(a=o.transformControlPoint(e,a)),null!=s&&(t=new mxCellState,t.x=s.x,t.y=s.y),null!=r&&(n=new mxCellState,n.x=r.x,n.y=r.y),null!=t&&null!=n&&(e=Math.max(t.x,n.x),s=Math.min(t.x+t.width,n.x+n.width),e=null!=a?a.x:s+(e-s)/2,s=o.getRoutingCenterY(t),o=o.getRoutingCenterY(n),null!=a&&(a.y>=t.y&&a.y<=t.y+t.height&&(s=a.y),a.y>=n.y&&a.y<=n.y+n.height&&(o=a.y)),!mxUtils.contains(n,e,s)&&!mxUtils.contains(t,e,s)&&i.push(new mxPoint(e,s)),!mxUtils.contains(n,e,o)&&!mxUtils.contains(t,e,o)&&i.push(new mxPoint(e,o)),1==i.length&&(null!=a?!mxUtils.contains(n,e,a.y)&&!mxUtils.contains(t,e,a.y)&&i.push(new mxPoint(e,a.y)):(o=Math.max(t.y,n.y),t=Math.min(t.y+t.height,n.y+n.height),i.push(new mxPoint(e,o+(t-o)/2)))))},TopToBottom:function(e,t,n,a,i){var o=e.view;a=null!=a&&0<a.length?a[0]:null;var s=(r=e.absolutePoints)[0],r=r[r.length-1];null!=a&&(a=o.transformControlPoint(e,a)),null!=s&&(t=new mxCellState,t.x=s.x,t.y=s.y),null!=r&&(n=new mxCellState,n.x=r.x,n.y=r.y),null!=t&&null!=n&&(s=Math.max(t.y,n.y),r=Math.min(t.y+t.height,n.y+n.height),e=o.getRoutingCenterX(t),null!=a&&a.x>=t.x&&a.x<=t.x+t.width&&(e=a.x),s=null!=a?a.y:r+(s-r)/2,!mxUtils.contains(n,e,s)&&!mxUtils.contains(t,e,s)&&i.push(new mxPoint(e,s)),e=null!=a&&a.x>=n.x&&a.x<=n.x+n.width?a.x:o.getRoutingCenterX(n),!mxUtils.contains(n,e,s)&&!mxUtils.contains(t,e,s)&&i.push(new mxPoint(e,s)),1==i.length&&(null!=a&&1==i.length?!mxUtils.contains(n,a.x,s)&&!mxUtils.contains(t,a.x,s)&&i.push(new mxPoint(a.x,s)):(o=Math.max(t.x,n.x),t=Math.min(t.x+t.width,n.x+n.width),i.push(new mxPoint(o+(t-o)/2,s)))))},SegmentConnector:function(e,t,n,a,i){var o=e.absolutePoints,s=!0,r=null,l=o[0];null==l&&null!=t?l=new mxPoint(e.view.getRoutingCenterX(t),e.view.getRoutingCenterY(t)):null!=l&&(l=l.clone());var d=o.length-1;if(null!=a&&0<a.length){for(var r=e.view.transformControlPoint(e,a[0]),c=t,m=o[0],u=!1,p=!1,u=r,g=a.length,h=0;2>h;h++){var v=null!=m&&m.x==u.x,b=null!=m&&m.y==u.y,f=null!=c&&u.y>=c.y&&u.y<=c.y+c.height,c=null!=c&&u.x>=c.x&&u.x<=c.x+c.width,u=b||null==m&&f,p=v||null==m&&c;if(null!=m&&!b&&!v&&(f||c)){s=!f;break}if(p||u){s=u,1==h&&(s=0==a.length%2?u:p);break}c=n,m=o[d],u=e.view.transformControlPoint(e,a[g-1])}for(s&&(null!=o[0]&&o[0].y!=r.y||null==o[0]&&null!=t&&(r.y<t.y||r.y>t.y+t.height))?i.push(new mxPoint(l.x,r.y)):!s&&(null!=o[0]&&o[0].x!=r.x||null==o[0]&&null!=t&&(r.x<t.x||r.x>t.x+t.width))&&i.push(new mxPoint(r.x,l.y)),s?l.y=r.y:l.x=r.x,h=0;h<a.length;h++)s=!s,r=e.view.transformControlPoint(e,a[h]),s?l.y=r.y:l.x=r.x,i.push(l.clone())}else r=l,s=!0;if(null==(l=o[d])&&null!=n&&(l=new mxPoint(e.view.getRoutingCenterX(n),e.view.getRoutingCenterY(n))),s&&(null!=o[d]&&o[d].y!=r.y||null==o[d]&&null!=n&&(r.y<n.y||r.y>n.y+n.height))?i.push(new mxPoint(l.x,r.y)):!s&&(null!=o[d]&&o[d].x!=r.x||null==o[d]&&null!=n&&(r.x<n.x||r.x>n.x+n.width))&&i.push(new mxPoint(r.x,l.y)),null==o[0]&&null!=t)for(;1<i.length&&mxUtils.contains(t,i[1].x,i[1].y);)i=i.splice(1,1);if(null==o[d]&&null!=n)for(;1<i.length&&mxUtils.contains(n,i[i.length-1].x,i[i.length-1].y);)i=i.splice(i.length-1,1)},orthBuffer:10,dirVectors:[[-1,0],[0,-1],[1,0],[0,1],[-1,0],[0,-1],[1,0]],wayPoints1:[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],routePatterns:[[[513,2308,2081,2562],[513,1090,514,2184,2114,2561],[513,1090,514,2564,2184,2562],[513,2308,2561,1090,514,2568,2308]],[[514,1057,513,2308,2081,2562],[514,2184,2114,2561],[514,2184,2562,1057,513,2564,2184],[514,1057,513,2568,2308,2561]],[[1090,514,1057,513,2308,2081,2562],[2114,2561],[1090,2562,1057,513,2564,2184],[1090,514,1057,513,2308,2561,2568]],[[2081,2562],[1057,513,1090,514,2184,2114,2561],[1057,513,1090,514,2184,2562,2564],[1057,2561,1090,514,2568,2308]]],inlineRoutePatterns:[[null,[2114,2568],null,null],[null,[514,2081,2114,2568],null,null],[null,[2114,2561],null,null],[[2081,2562],[1057,2114,2568],[2184,2562],null]],vertexSeperations:[],limits:[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]],LEFT_MASK:32,TOP_MASK:64,RIGHT_MASK:128,BOTTOM_MASK:256,LEFT:1,TOP:2,RIGHT:4,BOTTOM:8,SIDE_MASK:480,CENTER_MASK:512,SOURCE_MASK:1024,TARGET_MASK:2048,VERTEX_MASK:3072,OrthConnector:function(e,t,n,a,i){var o=e.view.graph,s=null!=t&&o.getModel().isEdge(t.cell),o=null!=n&&o.getModel().isEdge(n.cell);if(null!=a&&0<a.length||s||o)mxEdgeStyle.SegmentConnector(e,t,n,a,i);else{var r=(a=e.absolutePoints)[0],l=a[a.length-1];a=null!=t?t.x:r.x;var s=null!=t?t.y:r.y,d=null!=t?t.width:1,c=null!=t?t.height:1,m=null!=n?n.x:l.x,u=null!=n?n.y:l.y,p=null!=n?n.width:1,g=null!=n?n.height:1,o=e.view.scale*mxEdgeStyle.orthBuffer,h=[mxConstants.DIRECTION_MASK_ALL,mxConstants.DIRECTION_MASK_ALL];for(null!=t&&(h[0]=mxUtils.getPortConstraints(t,e,!0,mxConstants.DIRECTION_MASK_ALL)),null!=n&&(h[1]=mxUtils.getPortConstraints(n,e,!1,mxConstants.DIRECTION_MASK_ALL)),e=[0,0],a=[[a,s,d,c],[m,u,p,g]],d=0;2>d;d++)mxEdgeStyle.limits[d][1]=a[d][0]-o,mxEdgeStyle.limits[d][2]=a[d][1]-o,mxEdgeStyle.limits[d][4]=a[d][0]+a[d][2]+o,mxEdgeStyle.limits[d][8]=a[d][1]+a[d][3]+o;for(d=a[0][0]+a[0][2]/2-(a[1][0]+a[1][2]/2),c=a[0][1]+a[0][3]/2-(a[1][1]+a[1][3]/2),s=0,0>d?s=0>c?2:1:0>=c&&(s=3,0==d&&(s=2)),c=null,null!=t&&(c=r),t=[[.5,.5],[.5,.5]],d=0;2>d;d++)null!=c&&(t[d][0]=(c.x-a[d][0])/a[d][2],.01>t[d][0]?e[d]=mxConstants.DIRECTION_MASK_WEST:.99<t[d][0]&&(e[d]=mxConstants.DIRECTION_MASK_EAST),t[d][1]=(c.y-a[d][1])/a[d][3],.01>t[d][1]?e[d]=mxConstants.DIRECTION_MASK_NORTH:.99<t[d][1]&&(e[d]=mxConstants.DIRECTION_MASK_SOUTH)),c=null,null!=n&&(c=l);for(d=a[0][1]-(a[1][1]+a[1][3]),c=a[0][0]-(a[1][0]+a[1][2]),m=a[1][1]-(a[0][1]+a[0][3]),u=a[1][0]-(a[0][0]+a[0][2]),mxEdgeStyle.vertexSeperations[1]=Math.max(c-2*o,0),mxEdgeStyle.vertexSeperations[2]=Math.max(d-2*o,0),mxEdgeStyle.vertexSeperations[4]=Math.max(m-2*o,0),mxEdgeStyle.vertexSeperations[3]=Math.max(u-2*o,0),n=[],l=[],(r=[])[0]=c>=u?mxConstants.DIRECTION_MASK_WEST:mxConstants.DIRECTION_MASK_EAST,l[0]=d>=m?mxConstants.DIRECTION_MASK_NORTH:mxConstants.DIRECTION_MASK_SOUTH,r[1]=mxUtils.reversePortConstraints(r[0]),l[1]=mxUtils.reversePortConstraints(l[0]),c=c>=u?c:u,m=d>=m?d:m,u=[[0,0],[0,0]],p=!1,d=0;2>d;d++)0==e[d]&&(0==(r[d]&h[d])&&(r[d]=mxUtils.reversePortConstraints(r[d])),0==(l[d]&h[d])&&(l[d]=mxUtils.reversePortConstraints(l[d])),u[d][0]=l[d],u[d][1]=r[d]);for(m>2*o&&c>2*o&&(0<(r[0]&h[0])&&0<(l[1]&h[1])?(u[0][0]=r[0],u[0][1]=l[0],u[1][0]=l[1],u[1][1]=r[1],p=!0):0<(l[0]&h[0])&&0<(r[1]&h[1])&&(u[0][0]=l[0],u[0][1]=r[0],u[1][0]=r[1],u[1][1]=l[1],p=!0)),m>2*o&&!p&&(u[0][0]=l[0],u[0][1]=r[0],u[1][0]=l[1],u[1][1]=r[1],p=!0),c>2*o&&!p&&(u[0][0]=r[0],u[0][1]=l[0],u[1][0]=r[1],u[1][1]=l[1]),d=0;2>d;d++)0==e[d]&&(0==(u[d][0]&h[d])&&(u[d][0]=u[d][1]),n[d]=u[d][0]&h[d],n[d]|=(u[d][1]&h[d])<<8,n[d]|=(u[1-d][d]&h[d])<<16,n[d]|=(u[1-d][1-d]&h[d])<<24,0==(15&n[d])&&(n[d]<<=8),0==(3840&n[d])&&(n[d]=15&n[d]|n[d]>>8),0==(983040&n[d])&&(n[d]=65535&n[d]|(251658240&n[d])>>8),e[d]=15&n[d],h[d]==mxConstants.DIRECTION_MASK_WEST||h[d]==mxConstants.DIRECTION_MASK_NORTH||h[d]==mxConstants.DIRECTION_MASK_EAST||h[d]==mxConstants.DIRECTION_MASK_SOUTH)&&(e[d]=h[d]);switch(d=e[0]==mxConstants.DIRECTION_MASK_EAST?3:e[0],h=e[1]==mxConstants.DIRECTION_MASK_EAST?3:e[1],d-=s,h-=s,1>d&&(d+=4),1>h&&(h+=4),h=mxEdgeStyle.routePatterns[d-1][h-1],mxEdgeStyle.wayPoints1[0][0]=a[0][0],mxEdgeStyle.wayPoints1[0][1]=a[0][1],e[0]){case mxConstants.DIRECTION_MASK_WEST:mxEdgeStyle.wayPoints1[0][0]-=o,mxEdgeStyle.wayPoints1[0][1]+=t[0][1]*a[0][3];break;case mxConstants.DIRECTION_MASK_SOUTH:mxEdgeStyle.wayPoints1[0][0]+=t[0][0]*a[0][2],mxEdgeStyle.wayPoints1[0][1]+=a[0][3]+o;break;case mxConstants.DIRECTION_MASK_EAST:mxEdgeStyle.wayPoints1[0][0]+=a[0][2]+o,mxEdgeStyle.wayPoints1[0][1]+=t[0][1]*a[0][3];break;case mxConstants.DIRECTION_MASK_NORTH:mxEdgeStyle.wayPoints1[0][0]+=t[0][0]*a[0][2],mxEdgeStyle.wayPoints1[0][1]-=o}for(o=0,r=n=0<(e[0]&(mxConstants.DIRECTION_MASK_EAST|mxConstants.DIRECTION_MASK_WEST))?0:1,d=l=0;d<h.length;d++){g=(l=15&h[d])==mxConstants.DIRECTION_MASK_EAST?3:l,4<(g+=s)&&(g-=4),c=mxEdgeStyle.dirVectors[g-1],(l=0<g%2?0:1)!=n&&(o++,mxEdgeStyle.wayPoints1[o][0]=mxEdgeStyle.wayPoints1[o-1][0],mxEdgeStyle.wayPoints1[o][1]=mxEdgeStyle.wayPoints1[o-1][1]);var v=0<(h[d]&mxEdgeStyle.TARGET_MASK),p=0<(h[d]&mxEdgeStyle.SOURCE_MASK);15<(m=(m=(h[d]&mxEdgeStyle.SIDE_MASK)>>5)<<s)&&(m>>=4),u=0<(h[d]&mxEdgeStyle.CENTER_MASK),(p||v)&&9>m?(g=0,p=p?0:1,g=u&&0==l?a[p][0]+t[p][0]*a[p][2]:u?a[p][1]+t[p][1]*a[p][3]:mxEdgeStyle.limits[p][m],0==l?0<(m=(g-mxEdgeStyle.wayPoints1[o][0])*c[0])&&(mxEdgeStyle.wayPoints1[o][0]+=c[0]*m):0<(m=(g-mxEdgeStyle.wayPoints1[o][1])*c[1])&&(mxEdgeStyle.wayPoints1[o][1]+=c[1]*m)):u&&(mxEdgeStyle.wayPoints1[o][0]+=c[0]*Math.abs(mxEdgeStyle.vertexSeperations[g]/2),mxEdgeStyle.wayPoints1[o][1]+=c[1]*Math.abs(mxEdgeStyle.vertexSeperations[g]/2)),0<o&&mxEdgeStyle.wayPoints1[o][l]==mxEdgeStyle.wayPoints1[o-1][l]?o--:n=l}for(d=0;d<=o&&(d!=o||((0<(e[1]&(mxConstants.DIRECTION_MASK_EAST|mxConstants.DIRECTION_MASK_WEST))?0:1)==r?0:1)==(o+1)%2);d++)i.push(new mxPoint(mxEdgeStyle.wayPoints1[d][0],mxEdgeStyle.wayPoints1[d][1]))}},getRoutePattern:function(e,t,n,a){var i=e[0]==mxConstants.DIRECTION_MASK_EAST?3:e[0];return e=e[1]==mxConstants.DIRECTION_MASK_EAST?3:e[1],i-=t,e-=t,1>i&&(i+=4),1>e&&(e+=4),t=routePatterns[i-1][e-1],0!=n&&0!=a||null!=inlineRoutePatterns[i-1][e-1]&&(t=inlineRoutePatterns[i-1][e-1]),t}},mxStyleRegistry={values:[],putValue:function(e,t){mxStyleRegistry.values[e]=t},getValue:function(e){return mxStyleRegistry.values[e]},getName:function(e){for(var t in mxStyleRegistry.values)if(mxStyleRegistry.values[t]==e)return t;return null}};mxStyleRegistry.putValue(mxConstants.EDGESTYLE_ELBOW,mxEdgeStyle.ElbowConnector),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_ENTITY_RELATION,mxEdgeStyle.EntityRelation),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_LOOP,mxEdgeStyle.Loop),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_SIDETOSIDE,mxEdgeStyle.SideToSide),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_TOPTOBOTTOM,mxEdgeStyle.TopToBottom),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_ORTHOGONAL,mxEdgeStyle.OrthConnector),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_SEGMENT,mxEdgeStyle.SegmentConnector),mxStyleRegistry.putValue(mxConstants.PERIMETER_ELLIPSE,mxPerimeter.EllipsePerimeter),mxStyleRegistry.putValue(mxConstants.PERIMETER_RECTANGLE,mxPerimeter.RectanglePerimeter),mxStyleRegistry.putValue(mxConstants.PERIMETER_RHOMBUS,mxPerimeter.RhombusPerimeter),mxStyleRegistry.putValue(mxConstants.PERIMETER_TRIANGLE,mxPerimeter.TrianglePerimeter),mxGraphView.prototype=new mxEventSource,mxGraphView.prototype.constructor=mxGraphView,mxGraphView.prototype.EMPTY_POINT=new mxPoint,mxGraphView.prototype.doneResource="none"!=mxClient.language?"done":"",mxGraphView.prototype.updatingDocumentResource="none"!=mxClient.language?"updatingDocument":"",mxGraphView.prototype.allowEval=!1,mxGraphView.prototype.captureDocumentGesture=!0,mxGraphView.prototype.optimizeVmlReflows=!0,mxGraphView.prototype.rendering=!0,mxGraphView.prototype.graph=null,mxGraphView.prototype.currentRoot=null,mxGraphView.prototype.graphBounds=null,mxGraphView.prototype.scale=1,mxGraphView.prototype.translate=null,mxGraphView.prototype.updateStyle=!1,mxGraphView.prototype.getGraphBounds=function(){return this.graphBounds},mxGraphView.prototype.setGraphBounds=function(e){this.graphBounds=e},mxGraphView.prototype.getBounds=function(e){var t=null;if(null!=e&&0<e.length)for(var n=this.graph.getModel(),a=0;a<e.length;a++)if(n.isVertex(e[a])||n.isEdge(e[a])){var i=this.getState(e[a]);null!=i&&(null==t?t=new mxRectangle(i.x,i.y,i.width,i.height):t.add(i))}return t},mxGraphView.prototype.setCurrentRoot=function(e){if(this.currentRoot!=e){var t=new mxCurrentRootChange(this,e);t.execute();var n=new mxUndoableEdit(this,!1);n.add(t),this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",n)),this.graph.sizeDidChange()}return e},mxGraphView.prototype.scaleAndTranslate=function(e,t,n){var a=this.scale,i=new mxPoint(this.translate.x,this.translate.y);this.scale==e&&this.translate.x==t&&this.translate.y==n||(this.scale=e,this.translate.x=t,this.translate.y=n,this.isEventsEnabled()&&(this.revalidate(),this.graph.sizeDidChange())),this.fireEvent(new mxEventObject(mxEvent.SCALE_AND_TRANSLATE,"scale",e,"previousScale",a,"translate",this.translate,"previousTranslate",i))},mxGraphView.prototype.getScale=function(){return this.scale},mxGraphView.prototype.setScale=function(e){var t=this.scale;this.scale!=e&&(this.scale=e,this.isEventsEnabled()&&(this.revalidate(),this.graph.sizeDidChange())),this.fireEvent(new mxEventObject(mxEvent.SCALE,"scale",e,"previousScale",t))},mxGraphView.prototype.getTranslate=function(){return this.translate},mxGraphView.prototype.setTranslate=function(e,t){var n=new mxPoint(this.translate.x,this.translate.y);this.translate.x==e&&this.translate.y==t||(this.translate.x=e,this.translate.y=t,this.isEventsEnabled()&&(this.revalidate(),this.graph.sizeDidChange())),this.fireEvent(new mxEventObject(mxEvent.TRANSLATE,"translate",this.translate,"previousTranslate",n))},mxGraphView.prototype.refresh=function(){null!=this.currentRoot&&this.clear(),this.revalidate()},mxGraphView.prototype.revalidate=function(){this.invalidate(),this.validate()},mxGraphView.prototype.clear=function(e,t,n){var a=this.graph.getModel();if(e=e||a.getRoot(),t=null!=t&&t,n=null==n||n,this.removeState(e),n&&(t||e!=this.currentRoot)){n=a.getChildCount(e);for(var i=0;i<n;i++)this.clear(a.getChildAt(e,i),t)}else this.invalidate(e)},mxGraphView.prototype.invalidate=function(e,t,n,a){var i=this.graph.getModel();if(e=e||i.getRoot(),t=null==t||t,n=null==n||n,a=null!=a&&a,null!=(s=this.getState(e))&&(s.invalid=!0,a&&(s.orderChanged=!0)),t)for(var o=i.getChildCount(e),s=0;s<o;s++){var r=i.getChildAt(e,s);this.invalidate(r,t,n,a)}if(n)for(a=i.getEdgeCount(e),s=0;s<a;s++)this.invalidate(i.getEdgeAt(e,s),t,n)},mxGraphView.prototype.validate=function(e){var t=mxLog.enter("mxGraphView.validate");window.status=mxResources.get(this.updatingDocumentResource)||this.updatingDocumentResource;var n=null;if(this.optimizeVmlReflows&&null!=this.canvas&&null==this.textDiv&&(8==document.documentMode||mxClient.IS_QUIRKS)){n=this.canvas.style.display,this.canvas.style.display="none";var a=document.createElement("div");a.style.position="absolute",a.style.whiteSpace="nowrap",a.style.visibility="hidden",a.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",a.style.zoom="1",document.body.appendChild(a),this.textDiv=a}e=e||(null!=this.currentRoot?this.currentRoot:this.graph.getModel().getRoot()),this.validateBounds(null,e),null==(e=this.validatePoints(null,e))&&(e=new mxRectangle),this.setGraphBounds(e),this.validateBackground(),null!=n&&(this.canvas.style.display=n,document.body.removeChild(this.textDiv),this.textDiv=null),window.status=mxResources.get(this.doneResource)||this.doneResource,mxLog.leave("mxGraphView.validate",t)},mxGraphView.prototype.createBackgroundPageShape=function(e){return new mxRectangleShape(e,"white","black")},mxGraphView.prototype.validateBackground=function(){var e=this.graph.getBackgroundImage();if(null!=e){if(null==this.backgroundImage||this.backgroundImage.image!=e.src){null!=this.backgroundImage&&this.backgroundImage.destroy();var t=new mxRectangle(0,0,1,1);this.backgroundImage=new mxImageShape(t,e.src),this.backgroundImage.dialect=this.graph.dialect,this.backgroundImage.init(this.backgroundPane),this.backgroundImage.redraw()}this.redrawBackgroundImage(this.backgroundImage,e)}else null!=this.backgroundImage&&(this.backgroundImage.destroy(),this.backgroundImage=null);this.graph.pageVisible?(t=this.getBackgroundPageBounds(),null==this.backgroundPageShape?(this.backgroundPageShape=this.createBackgroundPageShape(t),this.backgroundPageShape.scale=this.scale,this.backgroundPageShape.isShadow=!0,this.backgroundPageShape.dialect=this.graph.dialect,this.backgroundPageShape.init(this.backgroundPane),this.backgroundPageShape.redraw(),mxEvent.addListener(this.backgroundPageShape.node,"dblclick",mxUtils.bind(this,function(e){this.graph.dblClick(e)})),mxEvent.addGestureListeners(this.backgroundPageShape.node,mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e))}),mxUtils.bind(this,function(e){null!=this.graph.tooltipHandler&&this.graph.tooltipHandler.isHideOnHover()&&this.graph.tooltipHandler.hide(),this.graph.isMouseDown&&!mxEvent.isConsumed(e)&&this.graph.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(e))}),mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(e))}))):(this.backgroundPageShape.scale=this.scale,this.backgroundPageShape.bounds=t,this.backgroundPageShape.redraw())):null!=this.backgroundPageShape&&(this.backgroundPageShape.destroy(),this.backgroundPageShape=null)},mxGraphView.prototype.getBackgroundPageBounds=function(){var e=this.graph.pageFormat,t=this.scale*this.graph.pageScale;return new mxRectangle(this.scale*this.translate.x,this.scale*this.translate.y,e.width*t,e.height*t)},mxGraphView.prototype.redrawBackgroundImage=function(e,t){e.scale=this.scale,e.bounds.x=this.scale*this.translate.x,e.bounds.y=this.scale*this.translate.y,e.bounds.width=this.scale*t.width,e.bounds.height=this.scale*t.height,e.redraw()},mxGraphView.prototype.validateBounds=function(e,t){var n=this.graph.getModel(),a=this.getState(t,!0);if(null!=a&&a.invalid){if(this.graph.isCellVisible(t)){if(t!=this.currentRoot&&null!=e&&(a.absoluteOffset.x=0,a.absoluteOffset.y=0,a.origin.x=e.origin.x,a.origin.y=e.origin.y,null!=(i=this.graph.getCellGeometry(t)))){if(!n.isEdge(t)){o=i.offset||this.EMPTY_POINT;i.relative?(a.origin.x+=i.x*e.width/this.scale+o.x,a.origin.y+=i.y*e.height/this.scale+o.y):(a.absoluteOffset.x=this.scale*o.x,a.absoluteOffset.y=this.scale*o.y,a.origin.x+=i.x,a.origin.y+=i.y)}if(a.x=this.scale*(this.translate.x+a.origin.x),a.y=this.scale*(this.translate.y+a.origin.y),a.width=this.scale*i.width,a.height=this.scale*i.height,n.isVertex(t)){if(i.relative&&0!=(o=mxUtils.toRadians(e.style[mxConstants.STYLE_ROTATION]||"0"))){var i=Math.cos(o),o=Math.sin(o),s=new mxPoint(a.getCenterX(),a.getCenterY()),r=new mxPoint(e.getCenterX(),e.getCenterY()),i=mxUtils.getRotatedPoint(s,i,o,r);a.x=i.x-a.width/2,a.y=i.y-a.height/2}this.updateVertexLabelOffset(a)}}}else this.removeState(t);null!=(o=this.graph.getChildOffsetForCell(t))&&(a.origin.x+=o.x,a.origin.y+=o.y)}if(null!=a&&(!this.graph.isCellCollapsed(t)||t==this.currentRoot))for(i=n.getChildCount(t),o=0;o<i;o++)s=n.getChildAt(t,o),this.validateBounds(a,s)},mxGraphView.prototype.updateVertexLabelOffset=function(e){var t=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);t==mxConstants.ALIGN_LEFT?e.absoluteOffset.x-=e.width:t==mxConstants.ALIGN_RIGHT&&(e.absoluteOffset.x+=e.width),(t=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE))==mxConstants.ALIGN_TOP?e.absoluteOffset.y-=e.height:t==mxConstants.ALIGN_BOTTOM&&(e.absoluteOffset.y+=e.height)},mxGraphView.prototype.validatePoints=function(e,t){var n=this.graph.getModel(),a=this.getState(t),i=null;if(null!=a){if(a.invalid){var o=this.graph.getCellGeometry(t);if(null!=o&&n.isEdge(t)){var s=this.getState(this.getVisibleTerminal(t,!0));if(a.setVisibleTerminalState(s,!0),null!=s&&n.isEdge(s.cell)&&!n.isAncestor(s.cell,t)){var r=this.getState(n.getParent(s.cell));this.validatePoints(r,s.cell)}var l=this.getState(this.getVisibleTerminal(t,!1));a.setVisibleTerminalState(l,!1),null!=l&&n.isEdge(l.cell)&&!n.isAncestor(l.cell,t)&&(r=this.getState(n.getParent(l.cell)),this.validatePoints(r,l.cell)),this.updateFixedTerminalPoints(a,s,l),this.updatePoints(a,o.points,s,l),this.updateFloatingTerminalPoints(a,s,l),this.updateEdgeBounds(a),this.updateEdgeLabelOffset(a)}else null!=o&&o.relative&&null!=e&&n.isEdge(e.cell)&&null!=(o=this.getPoint(e,o))&&(a.x=o.x,a.y=o.y,o.x=o.x/this.scale-this.translate.x,o.y=o.y/this.scale-this.translate.y,a.origin=o,this.childMoved(e,a));a.invalid=!1,t!=this.currentRoot&&this.graph.cellRenderer.redraw(a,!1,this.isRendering())}(n.isEdge(t)||n.isVertex(t))&&(null!=a.shape&&null!=a.shape.boundingBox&&(i=a.shape.boundingBox.clone()),null!=a.text&&!this.graph.isLabelClipped(a.cell)&&null!=a.text.boundingBox&&(null!=i?i.add(a.text.boundingBox):i=a.text.boundingBox.clone()))}if(null!=a&&(!this.graph.isCellCollapsed(t)||t==this.currentRoot))for(o=n.getChildCount(t),s=0;s<o;s++)r=n.getChildAt(t,s),null!=(r=this.validatePoints(a,r))&&(null==i?i=r:i.add(r));return i},mxGraphView.prototype.childMoved=function(e,t){var n=t.cell;if(!this.graph.isCellCollapsed(n)||n==this.currentRoot)for(var a=this.graph.getModel(),i=a.getChildCount(n),o=0;o<i;o++)this.validateBounds(t,a.getChildAt(n,o))},mxGraphView.prototype.updateFixedTerminalPoints=function(e,t,n){this.updateFixedTerminalPoint(e,t,!0,this.graph.getConnectionConstraint(e,t,!0)),this.updateFixedTerminalPoint(e,n,!1,this.graph.getConnectionConstraint(e,n,!1))},mxGraphView.prototype.updateFixedTerminalPoint=function(e,t,n,a){var i=null;if(null!=a&&(i=this.graph.getConnectionPoint(t,a)),null==i&&null==t){t=this.scale,a=this.translate;var o=e.origin;null!=(i=this.graph.getCellGeometry(e.cell).getTerminalPoint(n))&&(i=new mxPoint(t*(a.x+i.x+o.x),t*(a.y+i.y+o.y)))}e.setAbsoluteTerminalPoint(i,n)},mxGraphView.prototype.updatePoints=function(e,t,n,a){if(null!=e){var i=[];i.push(e.absolutePoints[0]);var o=this.getEdgeStyle(e,t,n,a);if(null!=o)n=this.getTerminalPort(e,n,!0),a=this.getTerminalPort(e,a,!1),o(e,n,a,t,i);else if(null!=t)for(o=0;o<t.length;o++)null!=t[o]&&(a=mxUtils.clone(t[o]),i.push(this.transformControlPoint(e,a)));t=e.absolutePoints,i.push(t[t.length-1]),e.absolutePoints=i}},mxGraphView.prototype.transformControlPoint=function(e,t){var n=e.origin;return new mxPoint(this.scale*(t.x+this.translate.x+n.x),this.scale*(t.y+this.translate.y+n.y))},mxGraphView.prototype.getEdgeStyle=function(e,t,n,a){return"string"==typeof(e=null!=n&&n==a?mxUtils.getValue(e.style,mxConstants.STYLE_LOOP,this.graph.defaultLoopStyle):mxUtils.getValue(e.style,mxConstants.STYLE_NOEDGESTYLE,!1)?null:e.style[mxConstants.STYLE_EDGE])&&(null==(t=mxStyleRegistry.getValue(e))&&this.isAllowEval()&&(t=mxUtils.eval(e)),e=t),"function"==typeof e?e:null},mxGraphView.prototype.updateFloatingTerminalPoints=function(e,t,n){var a=e.absolutePoints,i=a[0];null==a[a.length-1]&&null!=n&&this.updateFloatingTerminalPoint(e,n,t,!1),null==i&&null!=t&&this.updateFloatingTerminalPoint(e,t,n,!0)},mxGraphView.prototype.updateFloatingTerminalPoint=function(e,t,n,a){t=this.getTerminalPort(e,t,a);var i=this.getNextPoint(e,n,a),o=this.graph.isOrthogonal(e);n=mxUtils.toRadians(Number(t.style[mxConstants.STYLE_ROTATION]||"0"));var s=new mxPoint(t.getCenterX(),t.getCenterY());if(0!=n)var r=Math.cos(-n),l=Math.sin(-n),i=mxUtils.getRotatedPoint(i,r,l,s);r=parseFloat(e.style[mxConstants.STYLE_PERIMETER_SPACING]||0),r+=parseFloat(e.style[a?mxConstants.STYLE_SOURCE_PERIMETER_SPACING:mxConstants.STYLE_TARGET_PERIMETER_SPACING]||0),t=this.getPerimeterPoint(t,i,0==n&&o,r),0!=n&&(r=Math.cos(n),l=Math.sin(n),t=mxUtils.getRotatedPoint(t,r,l,s)),e.setAbsoluteTerminalPoint(t,a)},mxGraphView.prototype.getTerminalPort=function(e,t,n){return null!=(e=mxUtils.getValue(e.style,n?mxConstants.STYLE_SOURCE_PORT:mxConstants.STYLE_TARGET_PORT))&&null!=(e=this.getState(this.graph.getModel().getCell(e)))&&(t=e),t},mxGraphView.prototype.getPerimeterPoint=function(e,t,n,a){var i=null;if(null!=e){var o=this.getPerimeterFunction(e);null!=o&&null!=t&&(0<(a=this.getPerimeterBounds(e,a)).width||0<a.height)&&(i=o(a,e,t,n)),null==i&&(i=this.getPoint(e))}return i},mxGraphView.prototype.getRoutingCenterX=function(e){var t=null!=e.style?parseFloat(e.style[mxConstants.STYLE_ROUTING_CENTER_X])||0:0;return e.getCenterX()+t*e.width},mxGraphView.prototype.getRoutingCenterY=function(e){var t=null!=e.style?parseFloat(e.style[mxConstants.STYLE_ROUTING_CENTER_Y])||0:0;return e.getCenterY()+t*e.height},mxGraphView.prototype.getPerimeterBounds=function(e,t){return t=null!=t?t:0,null!=e&&(t+=parseFloat(e.style[mxConstants.STYLE_PERIMETER_SPACING]||0)),e.getPerimeterBounds(t*this.scale)},mxGraphView.prototype.getPerimeterFunction=function(e){if("string"==typeof(e=e.style[mxConstants.STYLE_PERIMETER])){var t=mxStyleRegistry.getValue(e);null==t&&this.isAllowEval()&&(t=mxUtils.eval(e)),e=t}return"function"==typeof e?e:null},mxGraphView.prototype.getNextPoint=function(e,t,n){var a=null;return null!=(e=e.absolutePoints)&&(n||2<e.length||null==t)&&(a=e.length,a=e[n?Math.min(1,a-1):Math.max(0,a-2)]),null==a&&null!=t&&(a=new mxPoint(t.getCenterX(),t.getCenterY())),a},mxGraphView.prototype.getVisibleTerminal=function(e,t){for(var n=this.graph.getModel(),a=n.getTerminal(e,t),i=a;null!=a&&a!=this.currentRoot;)this.graph.isCellVisible(i)&&!this.graph.isCellCollapsed(a)||(i=a),a=n.getParent(a);return n.getParent(i)==n.getRoot()&&(i=null),i},mxGraphView.prototype.updateEdgeBounds=function(e){var t=e.absolutePoints;if(e.length=0,null!=t&&0<t.length){var n=t[0],a=t[t.length-1];if(null==n||null==a)e.cell!=this.currentRoot&&this.clear(e.cell,!0);else{if(n.x!=a.x||n.y!=a.y){var i=a.x-n.x,o=a.y-n.y;e.terminalDistance=Math.sqrt(i*i+o*o)}else e.terminalDistance=0;var a=0,s=[];if(null!=(o=n)){for(var n=o.x,r=o.y,l=n,d=r,c=1;c<t.length;c++){var m=t[c];null!=m&&(i=o.x-m.x,o=o.y-m.y,i=Math.sqrt(i*i+o*o),s.push(i),a+=i,o=m,n=Math.min(o.x,n),r=Math.min(o.y,r),l=Math.max(o.x,l),d=Math.max(o.y,d))}e.length=a,e.segments=s,e.x=n,e.y=r,e.width=Math.max(1,l-n),e.height=Math.max(1,d-r)}}}},mxGraphView.prototype.getPoint=function(e,t){var n=e.getCenterX(),a=e.getCenterY();if(null==e.segments||null!=t&&!t.relative)null!=t&&null!=(d=t.offset)&&(n+=d.x,a+=d.y);else{for(var i=e.absolutePoints.length,o=(.5+(null!=t?t.x/2:0))*e.length,s=e.segments[0],r=0,l=1;o>r+s&&l<i-1;)r+=s,s=e.segments[l++];if(i=0==s?0:(o-r)/s,o=e.absolutePoints[l-1],l=e.absolutePoints[l],null!=o&&null!=l){if(r=n=a=0,null!=t){var a=t.y,d=t.offset;null!=d&&(n=d.x,r=d.y)}d=l.x-o.x,l=l.y-o.y,n=o.x+d*i+((0==s?0:l/s)*a+n)*this.scale,a=o.y+l*i-((0==s?0:d/s)*a-r)*this.scale}}return new mxPoint(n,a)},mxGraphView.prototype.getRelativePoint=function(e,t,n){if(null!=(i=this.graph.getModel().getGeometry(e.cell))){var a=e.absolutePoints.length;if(i.relative&&1<a){for(var i=e.length,o=e.segments,s=e.absolutePoints[0],r=e.absolutePoints[1],l=mxUtils.ptSegDistSq(s.x,s.y,r.x,r.y,t,n),d=0,c=0,m=0,u=2;u<a;u++)c+=o[u-2],r=e.absolutePoints[u],(s=mxUtils.ptSegDistSq(s.x,s.y,r.x,r.y,t,n))<=l&&(l=s,d=u-1,m=c),s=r;return a=o[d],s=e.absolutePoints[d],r=e.absolutePoints[d+1],l=r.x,o=r.y,e=s.x-l,d=s.y-o,l=t-l,o=n-o,l=e-l,o=d-o,o=l*e+o*d,(e=Math.sqrt(0>=o?0:o*o/(e*e+d*d)))>a&&(e=a),a=Math.sqrt(mxUtils.ptSegDistSq(s.x,s.y,r.x,r.y,t,n)),-1==mxUtils.relativeCcw(s.x,s.y,r.x,r.y,t,n)&&(a=-a),new mxPoint((i/2-m-e)/i*-2,a/this.scale)}}return new mxPoint},mxGraphView.prototype.updateEdgeLabelOffset=function(e){i=e.absolutePoints;if(e.absoluteOffset.x=e.getCenterX(),e.absoluteOffset.y=e.getCenterY(),null!=i&&0<i.length&&null!=e.segments){var t=this.graph.getCellGeometry(e.cell);if(t.relative)null!=(n=this.getPoint(e,t))&&(e.absoluteOffset=n);else{var n=i[0],a=i[i.length-1];if(null!=n&&null!=a){var i=a.x-n.x,o=a.y-n.y,s=a=0;null!=(t=t.offset)&&(a=t.x,s=t.y),t=n.y+o/2+s*this.scale,e.absoluteOffset.x=n.x+i/2+a*this.scale,e.absoluteOffset.y=t}}}},mxGraphView.prototype.getState=function(e,t){t=t||!1;var n=null;return null!=e&&(n=this.states.get(e),this.graph.isCellVisible(e)&&(null==n&&t&&this.graph.isCellVisible(e)?(n=this.createState(e),this.states.put(e,n)):t&&null!=n&&this.updateStyle&&(n.style=this.graph.getCellStyle(e)))),n},mxGraphView.prototype.isRendering=function(){return this.rendering},mxGraphView.prototype.setRendering=function(e){this.rendering=e},mxGraphView.prototype.isAllowEval=function(){return this.allowEval},mxGraphView.prototype.setAllowEval=function(e){this.allowEval=e},mxGraphView.prototype.getStates=function(){return this.states},mxGraphView.prototype.setStates=function(e){this.states=e},mxGraphView.prototype.getCellStates=function(e){if(null==e)return this.states;for(var t=[],n=0;n<e.length;n++){var a=this.getState(e[n]);null!=a&&t.push(a)}return t},mxGraphView.prototype.removeState=function(e){var t=null;return null!=e&&null!=(t=this.states.remove(e))&&(this.graph.cellRenderer.destroy(t),t.destroy()),t},mxGraphView.prototype.createState=function(e){return e=new mxCellState(this,e,this.graph.getCellStyle(e)),this.graph.cellRenderer.initialize(e,this.isRendering()),e},mxGraphView.prototype.getCanvas=function(){return this.canvas},mxGraphView.prototype.getBackgroundPane=function(){return this.backgroundPane},mxGraphView.prototype.getDrawPane=function(){return this.drawPane},mxGraphView.prototype.getOverlayPane=function(){return this.overlayPane},mxGraphView.prototype.isContainerEvent=function(e){return(e=mxEvent.getSource(e))==this.graph.container||e.parentNode==this.backgroundPane||null!=e.parentNode&&e.parentNode.parentNode==this.backgroundPane||e==this.canvas.parentNode||e==this.canvas||e==this.backgroundPane||e==this.drawPane||e==this.overlayPane},mxGraphView.prototype.isScrollEvent=function(e){t=mxUtils.getOffset(this.graph.container);e=new mxPoint(e.clientX-t.x,e.clientY-t.y);var t=this.graph.container.offsetWidth,n=this.graph.container.clientWidth;return t>n&&e.x>n+2&&e.x<=t||(t=this.graph.container.offsetHeight,n=this.graph.container.clientHeight,t>n&&e.y>n+2&&e.y<=t)},mxGraphView.prototype.init=function(){this.installListeners();var e=this.graph;e.dialect==mxConstants.DIALECT_SVG?this.createSvg():e.dialect==mxConstants.DIALECT_VML?this.createVml():this.createHtml()},mxGraphView.prototype.installListeners=function(){var e=this.graph,t=e.container;if(null!=t){mxEvent.addGestureListeners(t,mxUtils.bind(this,function(t){mxClient.IS_TOUCH&&e.isEditing()&&e.stopEditing(!e.isInvokesStopCellEditing()),this.isContainerEvent(t)&&(!mxClient.IS_IE&&!mxClient.IS_GC&&!mxClient.IS_OP&&!mxClient.IS_SF||!this.isScrollEvent(t))&&e.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(t))}),mxUtils.bind(this,function(t){this.isContainerEvent(t)&&e.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t))}),mxUtils.bind(this,function(t){this.isContainerEvent(t)&&e.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(t))})),mxEvent.addListener(t,"dblclick",mxUtils.bind(this,function(t){e.dblClick(t)}));var n=function(n){var a=null;return mxClient.IS_TOUCH&&(a=mxEvent.getClientX(n),n=mxEvent.getClientY(n),n=mxUtils.convertPoint(t,a,n),a=e.view.getState(e.getCellAt(n.x,n.y))),a};e.addMouseListener({mouseDown:function(t,n){e.panningHandler.hideMenu()},mouseMove:function(){},mouseUp:function(){}}),this.moveHandler=mxUtils.bind(this,function(t){null!=e.tooltipHandler&&e.tooltipHandler.isHideOnHover()&&e.tooltipHandler.hide(),this.captureDocumentGesture&&e.isMouseDown&&!mxEvent.isConsumed(t)&&e.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t,n(t)))}),this.endHandler=mxUtils.bind(this,function(t){this.captureDocumentGesture&&e.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(t))}),mxEvent.addGestureListeners(document,null,this.moveHandler,this.endHandler)}},mxGraphView.prototype.createHtml=function(){var e=this.graph.container;null!=e&&(this.canvas=this.createHtmlPane("100%","100%"),this.backgroundPane=this.createHtmlPane("1px","1px"),this.drawPane=this.createHtmlPane("1px","1px"),this.overlayPane=this.createHtmlPane("1px","1px"),this.canvas.appendChild(this.backgroundPane),this.canvas.appendChild(this.drawPane),this.canvas.appendChild(this.overlayPane),e.appendChild(this.canvas),mxClient.IS_QUIRKS&&(e=mxUtils.bind(this,function(e){e=this.getGraphBounds(),this.updateHtmlCanvasSize(e.x+e.width+this.graph.border,e.y+e.height+this.graph.border)}),mxEvent.addListener(window,"resize",e)))},mxGraphView.prototype.updateHtmlCanvasSize=function(e,t){if(null!=this.graph.container){var n=this.graph.container.offsetHeight;this.canvas.style.width=this.graph.container.offsetWidth<e?e+"px":"100%",this.canvas.style.height=n<t?t+"px":"100%"}},mxGraphView.prototype.createHtmlPane=function(e,t){var n=document.createElement("DIV");return null!=e&&null!=t?(n.style.position="absolute",n.style.left="0px",n.style.top="0px",n.style.width=e,n.style.height=t):n.style.position="relative",n},mxGraphView.prototype.createVml=function(){var e=this.graph.container;if(null!=e){var t=e.offsetWidth,n=e.offsetHeight;this.canvas=this.createVmlPane(t,n),this.backgroundPane=this.createVmlPane(t,n),this.drawPane=this.createVmlPane(t,n),this.overlayPane=this.createVmlPane(t,n),this.canvas.appendChild(this.backgroundPane),this.canvas.appendChild(this.drawPane),this.canvas.appendChild(this.overlayPane),e.appendChild(this.canvas)}},mxGraphView.prototype.createVmlPane=function(e,t){var n=document.createElement(mxClient.VML_PREFIX+":group");return n.style.position="absolute",n.style.left="0px",n.style.top="0px",n.style.width=e+"px",n.style.height=t+"px",n.setAttribute("coordsize",e+","+t),n.setAttribute("coordorigin","0,0"),n},mxGraphView.prototype.createSvg=function(){var e=this.graph.container;this.canvas=document.createElementNS(mxConstants.NS_SVG,"g"),this.backgroundPane=document.createElementNS(mxConstants.NS_SVG,"g"),this.canvas.appendChild(this.backgroundPane),this.drawPane=document.createElementNS(mxConstants.NS_SVG,"g"),this.canvas.appendChild(this.drawPane),this.overlayPane=document.createElementNS(mxConstants.NS_SVG,"g"),this.canvas.appendChild(this.overlayPane);var t=document.createElementNS(mxConstants.NS_SVG,"svg");t.style.width="100%",t.style.height="100%",t.style.display="block",t.appendChild(this.canvas),null!=e&&(e.appendChild(t),"static"==mxUtils.getCurrentStyle(e).position&&(e.style.position="relative"))},mxGraphView.prototype.destroy=function(){var e=null!=this.canvas?this.canvas.ownerSVGElement:null;null==e&&(e=this.canvas),null!=e&&null!=e.parentNode&&(this.clear(this.currentRoot,!0),mxEvent.removeGestureListeners(document,null,this.moveHandler,this.endHandler),mxEvent.release(this.graph.container),e.parentNode.removeChild(e),this.overlayPane=this.drawPane=this.backgroundPane=this.canvas=this.endHandler=this.moveHandler=null)},mxCurrentRootChange.prototype.execute=function(){var e=this.view.currentRoot;this.view.currentRoot=this.previous,this.previous=e,null!=(e=this.view.graph.getTranslateForRoot(this.view.currentRoot))&&(this.view.translate=new mxPoint(-e.x,-e.y)),this.view.fireEvent(new mxEventObject(this.isUp?mxEvent.UP:mxEvent.DOWN,"root",this.view.currentRoot,"previous",this.previous)),this.isUp?(this.view.clear(this.view.currentRoot,!0),this.view.validate()):this.view.refresh(),this.isUp=!this.isUp},mxLoadResources&&mxResources.add(mxClient.basePath+"/resources/graph"),mxGraph.prototype=new mxEventSource,mxGraph.prototype.constructor=mxGraph,mxGraph.prototype.EMPTY_ARRAY=[],mxGraph.prototype.mouseListeners=null,mxGraph.prototype.isMouseDown=!1,mxGraph.prototype.model=null,mxGraph.prototype.view=null,mxGraph.prototype.stylesheet=null,mxGraph.prototype.selectionModel=null,mxGraph.prototype.cellEditor=null,mxGraph.prototype.cellRenderer=null,mxGraph.prototype.multiplicities=null,mxGraph.prototype.renderHint=null,mxGraph.prototype.dialect=null,mxGraph.prototype.gridSize=10,mxGraph.prototype.gridEnabled=!0,mxGraph.prototype.portsEnabled=!0,mxGraph.prototype.doubleTapEnabled=!0,mxGraph.prototype.doubleTapTimeout=700,mxGraph.prototype.doubleTapTolerance=25,mxGraph.prototype.lastTouchY=0,mxGraph.prototype.lastTouchY=0,mxGraph.prototype.lastTouchTime=0,mxGraph.prototype.gestureEnabled=!0,mxGraph.prototype.tolerance=4,mxGraph.prototype.defaultOverlap=.5,mxGraph.prototype.defaultParent=null,mxGraph.prototype.alternateEdgeStyle=null,mxGraph.prototype.backgroundImage=null,mxGraph.prototype.pageVisible=!1,mxGraph.prototype.pageBreaksVisible=!1,mxGraph.prototype.pageBreakColor="gray",mxGraph.prototype.pageBreakDashed=!0,mxGraph.prototype.minPageBreakDist=20,mxGraph.prototype.preferPageSize=!1,mxGraph.prototype.pageFormat=mxConstants.PAGE_FORMAT_A4_PORTRAIT,mxGraph.prototype.pageScale=1.5,mxGraph.prototype.enabled=!0,mxGraph.prototype.escapeEnabled=!0,mxGraph.prototype.invokesStopCellEditing=!0,mxGraph.prototype.enterStopsCellEditing=!1,mxGraph.prototype.useScrollbarsForPanning=!0,mxGraph.prototype.exportEnabled=!0,mxGraph.prototype.importEnabled=!0,mxGraph.prototype.cellsLocked=!1,mxGraph.prototype.cellsCloneable=!0,mxGraph.prototype.foldingEnabled=!0,mxGraph.prototype.cellsEditable=!0,mxGraph.prototype.cellsDeletable=!0,mxGraph.prototype.cellsMovable=!0,mxGraph.prototype.edgeLabelsMovable=!0,mxGraph.prototype.vertexLabelsMovable=!1,mxGraph.prototype.dropEnabled=!1,mxGraph.prototype.splitEnabled=!0,mxGraph.prototype.cellsResizable=!0,mxGraph.prototype.cellsBendable=!0,mxGraph.prototype.cellsSelectable=!0,mxGraph.prototype.cellsDisconnectable=!0,mxGraph.prototype.autoSizeCells=!1,mxGraph.prototype.autoScroll=!0,mxGraph.prototype.timerAutoScroll=!1,mxGraph.prototype.allowAutoPanning=!1,mxGraph.prototype.ignoreScrollbars=!1,mxGraph.prototype.autoExtend=!0,mxGraph.prototype.maximumGraphBounds=null,mxGraph.prototype.minimumGraphSize=null,mxGraph.prototype.minimumContainerSize=null,mxGraph.prototype.maximumContainerSize=null,mxGraph.prototype.resizeContainer=!1,mxGraph.prototype.border=0,mxGraph.prototype.ordered=!0,mxGraph.prototype.keepEdgesInForeground=!1,mxGraph.prototype.keepEdgesInBackground=!0,mxGraph.prototype.allowNegativeCoordinates=!0,mxGraph.prototype.constrainChildren=!0,mxGraph.prototype.extendParents=!0,mxGraph.prototype.extendParentsOnAdd=!0,mxGraph.prototype.collapseToPreferredSize=!0,mxGraph.prototype.zoomFactor=1.2,mxGraph.prototype.keepSelectionVisibleOnZoom=!1,mxGraph.prototype.centerZoom=!0,mxGraph.prototype.resetViewOnRootChange=!0,mxGraph.prototype.resetEdgesOnResize=!1,mxGraph.prototype.resetEdgesOnMove=!1,mxGraph.prototype.resetEdgesOnConnect=!0,mxGraph.prototype.allowLoops=!1,mxGraph.prototype.defaultLoopStyle=mxEdgeStyle.Loop,mxGraph.prototype.multigraph=!0,mxGraph.prototype.connectableEdges=!1,mxGraph.prototype.allowDanglingEdges=!0,mxGraph.prototype.cloneInvalidEdges=!1,mxGraph.prototype.disconnectOnMove=!0,mxGraph.prototype.labelsVisible=!0,mxGraph.prototype.htmlLabels=!1,mxGraph.prototype.swimlaneSelectionEnabled=!0,mxGraph.prototype.swimlaneNesting=!0,mxGraph.prototype.swimlaneIndicatorColorAttribute=mxConstants.STYLE_FILLCOLOR,mxGraph.prototype.imageBundles=null,mxGraph.prototype.minFitScale=.1,mxGraph.prototype.maxFitScale=8,mxGraph.prototype.panDx=0,mxGraph.prototype.panDy=0,mxGraph.prototype.collapsedImage=new mxImage(mxClient.imageBasePath+"/collapsed.gif",9,9),mxGraph.prototype.expandedImage=new mxImage(mxClient.imageBasePath+"/expanded.gif",9,9),mxGraph.prototype.warningImage=new mxImage("/assets/plugins/mxgraph/images/warning.gif",16,16),mxGraph.prototype.alreadyConnectedResource="none"!=mxClient.language?"alreadyConnected":"",mxGraph.prototype.containsValidationErrorsResource="none"!=mxClient.language?"containsValidationErrors":"",mxGraph.prototype.collapseExpandResource="none"!=mxClient.language?"collapse-expand":"",mxGraph.prototype.init=function(e){this.container=e,this.cellEditor=this.createCellEditor(),this.view.init(),this.sizeDidChange(),mxClient.IS_IE&&(mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()})),mxEvent.addListener(e,"selectstart",mxUtils.bind(this,function(){return this.isEditing()}))),8==document.documentMode&&e.insertAdjacentHTML("beforeend",'<v:group style="DISPLAY: none;"></v:group>')},mxGraph.prototype.createHandlers=function(e){this.tooltipHandler=new mxTooltipHandler(this),this.tooltipHandler.setEnabled(!1),this.panningHandler=new mxPanningHandler(this),this.panningHandler.panningEnabled=!1,this.selectionCellsHandler=new mxSelectionCellsHandler(this),this.connectionHandler=new mxConnectionHandler(this),this.connectionHandler.setEnabled(!1),this.graphHandler=new mxGraphHandler(this)},mxGraph.prototype.createSelectionModel=function(){return new mxGraphSelectionModel(this)},mxGraph.prototype.createStylesheet=function(){return new mxStylesheet},mxGraph.prototype.createGraphView=function(){return new mxGraphView(this)},mxGraph.prototype.createCellRenderer=function(){return new mxCellRenderer},mxGraph.prototype.createCellEditor=function(){return new mxCellEditor(this)},mxGraph.prototype.getModel=function(){return this.model},mxGraph.prototype.getView=function(){return this.view},mxGraph.prototype.getStylesheet=function(){return this.stylesheet},mxGraph.prototype.setStylesheet=function(e){this.stylesheet=e},mxGraph.prototype.getSelectionModel=function(){return this.selectionModel},mxGraph.prototype.setSelectionModel=function(e){this.selectionModel=e},mxGraph.prototype.getSelectionCellsForChanges=function(e){for(var t=[],n=0;n<e.length;n++){var a=e[n];if(a.constructor!=mxRootChange){var i=null;a instanceof mxChildChange&&null==a.previous?i=a.child:null!=a.cell&&a.cell instanceof mxCell&&(i=a.cell),null!=i&&0>mxUtils.indexOf(t,i)&&t.push(i)}}return this.getModel().getTopmostCells(t)},mxGraph.prototype.graphModelChanged=function(e){for(var t=0;t<e.length;t++)this.processChange(e[t]);this.removeSelectionCells(this.getRemovedCellsForChanges(e)),this.view.validate(),this.sizeDidChange()},mxGraph.prototype.getRemovedCellsForChanges=function(e){for(var t=[],n=0;n<e.length;n++){var a=e[n];if(a instanceof mxRootChange)break;a instanceof mxChildChange?null!=a.previous&&null==a.parent&&(t=t.concat(this.model.getDescendants(a.child))):a instanceof mxVisibleChange&&(t=t.concat(this.model.getDescendants(a.cell)))}return t},mxGraph.prototype.processChange=function(e){if(e instanceof mxRootChange)this.clearSelection(),this.removeStateForCell(e.previous),this.resetViewOnRootChange&&(this.view.scale=1,this.view.translate.x=0,this.view.translate.y=0),this.fireEvent(new mxEventObject(mxEvent.ROOT));else if(e instanceof mxChildChange){var t=this.model.getParent(e.child);null!=t?this.view.invalidate(e.child,!0,!1,null!=e.previous):(this.removeStateForCell(e.child),this.view.currentRoot==e.child&&this.home()),t!=e.previous&&(null!=t&&this.view.invalidate(t,!1,!1),null!=e.previous&&this.view.invalidate(e.previous,!1,!1))}else e instanceof mxTerminalChange||e instanceof mxGeometryChange?this.view.invalidate(e.cell):e instanceof mxValueChange?this.view.invalidate(e.cell,!1,!1):e instanceof mxStyleChange?(this.view.invalidate(e.cell,!0,!0,!1),this.view.removeState(e.cell)):null!=e.cell&&e.cell instanceof mxCell&&this.removeStateForCell(e.cell)},mxGraph.prototype.removeStateForCell=function(e){for(var t=this.model.getChildCount(e),n=0;n<t;n++)this.removeStateForCell(this.model.getChildAt(e,n));this.view.removeState(e)},mxGraph.prototype.addCellOverlay=function(e,t){null==e.overlays&&(e.overlays=[]),e.overlays.push(t);var n=this.view.getState(e);return null!=n&&this.cellRenderer.redraw(n),this.fireEvent(new mxEventObject(mxEvent.ADD_OVERLAY,"cell",e,"overlay",t)),t},mxGraph.prototype.getCellOverlays=function(e){return e.overlays},mxGraph.prototype.removeCellOverlay=function(e,t){if(null==t)this.removeCellOverlays(e);else{var n=mxUtils.indexOf(e.overlays,t);0<=n?(e.overlays.splice(n,1),0==e.overlays.length&&(e.overlays=null),null!=(n=this.view.getState(e))&&this.cellRenderer.redraw(n),this.fireEvent(new mxEventObject(mxEvent.REMOVE_OVERLAY,"cell",e,"overlay",t))):t=null}return t},mxGraph.prototype.removeCellOverlays=function(e){var t=e.overlays;if(null!=t){e.overlays=null;var n=this.view.getState(e);for(null!=n&&this.cellRenderer.redraw(n),n=0;n<t.length;n++)this.fireEvent(new mxEventObject(mxEvent.REMOVE_OVERLAY,"cell",e,"overlay",t[n]))}return t},mxGraph.prototype.clearCellOverlays=function(e){e=null!=e?e:this.model.getRoot(),this.removeCellOverlays(e);for(var t=this.model.getChildCount(e),n=0;n<t;n++){var a=this.model.getChildAt(e,n);this.clearCellOverlays(a)}},mxGraph.prototype.setCellWarning=function(e,t,n,a){return null!=t&&0<t.length?(n=null!=n?n:this.warningImage,t=new mxCellOverlay(n,"<font color=red>"+t+"</font>"),a&&t.addListener(mxEvent.CLICK,mxUtils.bind(this,function(t,n){this.isEnabled()&&this.setSelectionCell(e)})),this.addCellOverlay(e,t)):(this.removeCellOverlays(e),null)},mxGraph.prototype.startEditing=function(e){this.startEditingAtCell(null,e)},mxGraph.prototype.startEditingAtCell=function(e,t){null==e&&null!=(e=this.getSelectionCell())&&!this.isCellEditable(e)&&(e=null),null!=e&&(this.fireEvent(new mxEventObject(mxEvent.START_EDITING,"cell",e,"event",t)),this.cellEditor.startEditing(e,t))},mxGraph.prototype.getEditingValue=function(e,t){return this.convertValueToString(e)},mxGraph.prototype.stopEditing=function(e){this.cellEditor.stopEditing(e)},mxGraph.prototype.labelChanged=function(e,t,n){this.model.beginUpdate();try{this.cellLabelChanged(e,t,this.isAutoSizeCell(e)),this.fireEvent(new mxEventObject(mxEvent.LABEL_CHANGED,"cell",e,"value",t,"event",n))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellLabelChanged=function(e,t,n){this.model.beginUpdate();try{this.model.setValue(e,t),n&&this.cellSizeUpdated(e,!1)}finally{this.model.endUpdate()}},mxGraph.prototype.escape=function(e){this.stopEditing(!0),this.connectionHandler.reset(),this.graphHandler.reset(),e=this.getSelectionCells();for(var t=0;t<e.length;t++){var n=this.view.getState(e[t]);null!=n&&null!=n.handler&&n.handler.reset()}},mxGraph.prototype.click=function(e){var t=e.getEvent(),n=e.getCell(),a=new mxEventObject(mxEvent.CLICK,"event",t,"cell",n);e.isConsumed()&&a.consume(),this.fireEvent(a),this.isEnabled()&&!mxEvent.isConsumed(t)&&!a.isConsumed()&&(null!=n?this.selectCellForEvent(n,t):(n=null,this.isSwimlaneSelectionEnabled()&&(n=this.getSwimlaneAt(e.getGraphX(),e.getGraphY())),null!=n?this.selectCellForEvent(n,t):this.isToggleEvent(t)||this.clearSelection()))},mxGraph.prototype.dblClick=function(e,t){var n=new mxEventObject(mxEvent.DOUBLE_CLICK,"event",e,"cell",t);this.fireEvent(n),this.isEnabled()&&!mxEvent.isConsumed(e)&&!n.isConsumed()&&null!=t&&this.isCellEditable(t)&&this.startEditingAtCell(t,e)},mxGraph.prototype.scrollPointToVisible=function(e,t,n,a){if(this.timerAutoScroll||!this.ignoreScrollbars&&!mxUtils.hasScrollbars(this.container))this.allowAutoPanning&&!this.panningHandler.active&&(null==this.panningManager&&(this.panningManager=this.createPanningManager()),this.panningManager.panTo(e+this.panDx,t+this.panDy));else{var i=this.container;if(a=null!=a?a:20,e>=i.scrollLeft&&t>=i.scrollTop&&e<=i.scrollLeft+i.clientWidth&&t<=i.scrollTop+i.clientHeight){var o=i.scrollLeft+i.clientWidth-e;if(o<a){if(e=i.scrollLeft,i.scrollLeft+=a-o,n&&e==i.scrollLeft){if(this.dialect==mxConstants.DIALECT_SVG){e=this.view.getDrawPane().ownerSVGElement;var s=this.container.scrollWidth+a-o}else s=Math.max(i.clientWidth,i.scrollWidth)+a-o,e=this.view.getCanvas();e.style.width=s+"px",i.scrollLeft+=a-o}}else(o=e-i.scrollLeft)<a&&(i.scrollLeft-=a-o);(o=i.scrollTop+i.clientHeight-t)<a?(e=i.scrollTop,i.scrollTop+=a-o,e==i.scrollTop&&n&&(this.dialect==mxConstants.DIALECT_SVG?(e=this.view.getDrawPane().ownerSVGElement,t=this.container.scrollHeight+a-o):(t=Math.max(i.clientHeight,i.scrollHeight)+a-o,e=this.view.getCanvas()),e.style.height=t+"px",i.scrollTop+=a-o)):(o=t-i.scrollTop)<a&&(i.scrollTop-=a-o)}}},mxGraph.prototype.createPanningManager=function(){return new mxPanningManager(this)},mxGraph.prototype.getBorderSizes=function(){function e(e){var t=0,t="thin"==e?2:"medium"==e?4:"thick"==e?6:parseInt(e);return isNaN(t)&&(t=0),t}var t=mxUtils.getCurrentStyle(this.container),n=new mxRectangle;return n.x=e(t.borderLeftWidth)+parseInt(t.paddingLeft||0),n.y=e(t.borderTopWidth)+parseInt(t.paddingTop||0),n.width=e(t.borderRightWidth)+parseInt(t.paddingRight||0),n.height=e(t.borderBottomWidth)+parseInt(t.paddingBottom||0),n},mxGraph.prototype.getPreferredPageSize=function(e,t,n){e=this.view.scale;var a=this.view.translate,i=this.pageFormat,o=e*this.pageScale,i=new mxRectangle(0,0,i.width*o,i.height*o);return t=this.pageBreaksVisible?Math.ceil(t/i.width):1,n=this.pageBreaksVisible?Math.ceil(n/i.height):1,new mxRectangle(0,0,t*i.width+2+a.x/e,n*i.height+2+a.y/e)},mxGraph.prototype.sizeDidChange=function(){var e=this.getGraphBounds();if(null!=this.container){var t=this.getBorder(),n=Math.max(0,e.x+e.width+1+t),t=Math.max(0,e.y+e.height+1+t);if(null!=this.minimumContainerSize&&(n=Math.max(n,this.minimumContainerSize.width),t=Math.max(t,this.minimumContainerSize.height)),this.resizeContainer&&this.doResizeContainer(n,t),this.preferPageSize||!mxClient.IS_IE&&this.pageVisible){var a=this.getPreferredPageSize(e,n,t);null!=a&&(n=a.width,t=a.height)}null!=this.minimumGraphSize&&(n=Math.max(n,this.minimumGraphSize.width*this.view.scale),t=Math.max(t,this.minimumGraphSize.height*this.view.scale)),n=Math.ceil(n-1),t=Math.ceil(t-1),this.dialect==mxConstants.DIALECT_SVG?(a=this.view.getDrawPane().ownerSVGElement,a.style.minWidth=Math.max(1,n)+"px",a.style.minHeight=Math.max(1,t)+"px",a.style.width="100%",a.style.height="100%"):mxClient.IS_QUIRKS?this.view.updateHtmlCanvasSize(Math.max(1,n),Math.max(1,t)):(this.view.canvas.style.minWidth=Math.max(1,n)+"px",this.view.canvas.style.minHeight=Math.max(1,t)+"px"),this.updatePageBreaks(this.pageBreaksVisible,n-1,t-1)}this.fireEvent(new mxEventObject(mxEvent.SIZE,"bounds",e))},mxGraph.prototype.doResizeContainer=function(e,t){if(mxClient.IS_IE)if(mxClient.IS_QUIRKS){var n=this.getBorderSizes();e+=Math.max(2,n.x+n.width+1),t+=Math.max(2,n.y+n.height+1)}else 9<=document.documentMode?(e+=3,t+=5):(e+=1,t+=1);else t+=1;null!=this.maximumContainerSize&&(e=Math.min(this.maximumContainerSize.width,e),t=Math.min(this.maximumContainerSize.height,t)),this.container.style.width=Math.ceil(e)+"px",this.container.style.height=Math.ceil(t)+"px"},mxGraph.prototype.updatePageBreaks=function(e,t,n){var a=this.view.scale,i=this.view.translate,o=this.pageFormat,s=a*this.pageScale,i=new mxRectangle(a*i.x,a*i.y,o.width*s,o.height*s);if(e=e&&Math.min(i.width,i.height)>this.minPageBreakDist,i.x=mxUtils.mod(i.x,i.width),i.y=mxUtils.mod(i.y,i.height),o=e?Math.ceil((t-i.x)/i.width):0,e=e?Math.ceil((n-i.y)/i.height):0,null==this.horizontalPageBreaks&&0<o&&(this.horizontalPageBreaks=[]),null!=this.horizontalPageBreaks){for(s=0;s<=o;s++){var r=[new mxPoint(i.x+s*i.width,1),new mxPoint(i.x+s*i.width,n)];null!=this.horizontalPageBreaks[s]?(this.horizontalPageBreaks[s].scale=1,this.horizontalPageBreaks[s].points=r,this.horizontalPageBreaks[s].redraw()):(r=new mxPolyline(r,this.pageBreakColor,this.scale),r.dialect=this.dialect,r.isDashed=this.pageBreakDashed,r.scale=a,r.init(this.view.backgroundPane),r.redraw(),this.horizontalPageBreaks[s]=r)}for(s=o;s<this.horizontalPageBreaks.length;s++)this.horizontalPageBreaks[s].destroy();this.horizontalPageBreaks.splice(o,this.horizontalPageBreaks.length-o)}if(null==this.verticalPageBreaks&&0<e&&(this.verticalPageBreaks=[]),null!=this.verticalPageBreaks){for(s=0;s<=e;s++)r=[new mxPoint(1,i.y+s*i.height),new mxPoint(t,i.y+s*i.height)],null!=this.verticalPageBreaks[s]?(this.verticalPageBreaks[s].scale=1,this.verticalPageBreaks[s].points=r,this.verticalPageBreaks[s].redraw()):(r=new mxPolyline(r,this.pageBreakColor,a),r.dialect=this.dialect,r.isDashed=this.pageBreakDashed,r.scale=a,r.init(this.view.backgroundPane),r.redraw(),this.verticalPageBreaks[s]=r);for(s=e;s<this.verticalPageBreaks.length;s++)this.verticalPageBreaks[s].destroy();this.verticalPageBreaks.splice(e,this.verticalPageBreaks.length-e)}},mxGraph.prototype.getCellStyle=function(e){var t=this.model.getStyle(e),n=null,n=this.model.isEdge(e)?this.stylesheet.getDefaultEdgeStyle():this.stylesheet.getDefaultVertexStyle();return null!=t&&(n=this.postProcessCellStyle(this.stylesheet.getCellStyle(t,n))),null==n&&(n=mxGraph.prototype.EMPTY_ARRAY),n},mxGraph.prototype.postProcessCellStyle=function(e){if(null!=e){var t=e[mxConstants.STYLE_IMAGE],n=this.getImageFromBundles(t);null!=n?e[mxConstants.STYLE_IMAGE]=n:n=t,null!=n&&"data:image/"==n.substring(0,11)&&(0<(t=n.indexOf(","))&&(n=n.substring(0,t)+";base64,"+n.substring(t+1)),e[mxConstants.STYLE_IMAGE]=n)}return e},mxGraph.prototype.setCellStyle=function(e,t){if(null!=(t=t||this.getSelectionCells())){this.model.beginUpdate();try{for(var n=0;n<t.length;n++)this.model.setStyle(t[n],e)}finally{this.model.endUpdate()}}},mxGraph.prototype.toggleCellStyle=function(e,t,n){n=n||this.getSelectionCell(),this.toggleCellStyles(e,t,[n])},mxGraph.prototype.toggleCellStyles=function(e,t,n){if(t=null!=t&&t,null!=(n=n||this.getSelectionCells())&&0<n.length){var a=this.view.getState(n[0]);null!=(a=null!=a?a.style:this.getCellStyle(n[0]))&&(t=mxUtils.getValue(a,e,t)?0:1,this.setCellStyles(e,t,n))}},mxGraph.prototype.setCellStyles=function(e,t,n){n=n||this.getSelectionCells(),mxUtils.setCellStyles(this.model,n,e,t)},mxGraph.prototype.toggleCellStyleFlags=function(e,t,n){this.setCellStyleFlags(e,t,null,n)},mxGraph.prototype.setCellStyleFlags=function(e,t,n,a){if(null!=(a=a||this.getSelectionCells())&&0<a.length){if(null==n){var i=this.view.getState(a[0]);null!=(i=null!=i?i.style:this.getCellStyle(a[0]))&&(n=(parseInt(i[e]||0)&t)!=t)}mxUtils.setCellStyleFlags(this.model,a,e,t,n)}},mxGraph.prototype.alignCells=function(e,t,n){if(null==t&&(t=this.getSelectionCells()),null!=t&&1<t.length){if(null==n)for(var a=0;a<t.length;a++){var i=this.getCellGeometry(t[a]);if(null!=i&&!this.model.isEdge(t[a]))if(null==n){if(e==mxConstants.ALIGN_CENTER){n=i.x+i.width/2;break}if(e==mxConstants.ALIGN_RIGHT)n=i.x+i.width;else if(e==mxConstants.ALIGN_TOP)n=i.y;else{if(e==mxConstants.ALIGN_MIDDLE){n=i.y+i.height/2;break}n=e==mxConstants.ALIGN_BOTTOM?i.y+i.height:i.x}}else n=e==mxConstants.ALIGN_RIGHT?Math.max(n,i.x+i.width):e==mxConstants.ALIGN_TOP?Math.min(n,i.y):e==mxConstants.ALIGN_BOTTOM?Math.max(n,i.y+i.height):Math.min(n,i.x)}if(null!=n){this.model.beginUpdate();try{for(a=0;a<t.length;a++)null!=(i=this.getCellGeometry(t[a]))&&!this.model.isEdge(t[a])&&(i=i.clone(),e==mxConstants.ALIGN_CENTER?i.x=n-i.width/2:e==mxConstants.ALIGN_RIGHT?i.x=n-i.width:e==mxConstants.ALIGN_TOP?i.y=n:e==mxConstants.ALIGN_MIDDLE?i.y=n-i.height/2:e==mxConstants.ALIGN_BOTTOM?i.y=n-i.height:i.x=n,this.model.setGeometry(t[a],i));this.fireEvent(new mxEventObject(mxEvent.ALIGN_CELLS,"align",e,"cells",t))}finally{this.model.endUpdate()}}}return t},mxGraph.prototype.flipEdge=function(e){if(null!=e&&null!=this.alternateEdgeStyle){this.model.beginUpdate();try{var t=this.model.getStyle(e);null==t||0==t.length?this.model.setStyle(e,this.alternateEdgeStyle):this.model.setStyle(e,null),this.resetEdge(e),this.fireEvent(new mxEventObject(mxEvent.FLIP_EDGE,"edge",e))}finally{this.model.endUpdate()}}return e},mxGraph.prototype.addImageBundle=function(e){this.imageBundles.push(e)},mxGraph.prototype.removeImageBundle=function(e){for(var t=[],n=0;n<this.imageBundles.length;n++)this.imageBundles[n]!=e&&t.push(this.imageBundles[n]);this.imageBundles=t},mxGraph.prototype.getImageFromBundles=function(e){if(null!=e)for(var t=0;t<this.imageBundles.length;t++){var n=this.imageBundles[t].getImage(e);if(null!=n)return n}return null},mxGraph.prototype.orderCells=function(e,t){null==t&&(t=mxUtils.sortCells(this.getSelectionCells(),!0)),this.model.beginUpdate();try{this.cellsOrdered(t,e),this.fireEvent(new mxEventObject(mxEvent.ORDER_CELLS,"back",e,"cells",t))}finally{this.model.endUpdate()}return t},mxGraph.prototype.cellsOrdered=function(e,t){if(null!=e){this.model.beginUpdate();try{for(var n=0;n<e.length;n++){var a=this.model.getParent(e[n]);t?this.model.add(a,e[n],n):this.model.add(a,e[n],this.model.getChildCount(a)-1)}this.fireEvent(new mxEventObject(mxEvent.CELLS_ORDERED,"back",t,"cells",e))}finally{this.model.endUpdate()}}},mxGraph.prototype.groupCells=function(e,t,n){null==n&&(n=mxUtils.sortCells(this.getSelectionCells(),!0)),n=this.getCellsForGroup(n),null==e&&(e=this.createGroupCell(n));var a=this.getBoundsForGroup(e,n,t);if(0<n.length&&null!=a){var i=this.model.getParent(e);null==i&&(i=this.model.getParent(n[0])),this.model.beginUpdate();try{null==this.getCellGeometry(e)&&this.model.setGeometry(e,new mxGeometry);var o=this.model.getChildCount(i);this.cellsAdded([e],i,o,null,null,!1),o=this.model.getChildCount(e),this.cellsAdded(n,e,o,null,null,!1,!1),this.cellsMoved(n,-a.x,-a.y,!1,!0),this.cellsResized([e],[a]),this.fireEvent(new mxEventObject(mxEvent.GROUP_CELLS,"group",e,"border",t,"cells",n))}finally{this.model.endUpdate()}}return e},mxGraph.prototype.getCellsForGroup=function(e){var t=[];if(null!=e&&0<e.length){var n=this.model.getParent(e[0]);t.push(e[0]);for(var a=1;a<e.length;a++)this.model.getParent(e[a])==n&&t.push(e[a])}return t},mxGraph.prototype.getBoundsForGroup=function(e,t,n){return null!=(t=this.getBoundingBoxFromGeometry(t))&&(this.isSwimlane(e)&&(e=this.getStartSize(e),t.x-=e.width,t.y-=e.height,t.width+=e.width,t.height+=e.height),t.x-=n,t.y-=n,t.width+=2*n,t.height+=2*n),t},mxGraph.prototype.createGroupCell=function(e){return(e=new mxCell("")).setVertex(!0),e.setConnectable(!1),e},mxGraph.prototype.ungroupCells=function(e){var t=[];if(null==e){e=this.getSelectionCells();for(var n=[],a=0;a<e.length;a++)0<this.model.getChildCount(e[a])&&n.push(e[a]);e=n}if(null!=e&&0<e.length){this.model.beginUpdate();try{for(a=0;a<e.length;a++)if(null!=(i=this.model.getChildren(e[a]))&&0<i.length){var i=i.slice(),o=this.model.getParent(e[a]),s=this.model.getChildCount(o);this.cellsAdded(i,o,s,null,null,!0),t=t.concat(i)}this.cellsRemoved(this.addAllEdges(e)),this.fireEvent(new mxEventObject(mxEvent.UNGROUP_CELLS,"cells",e))}finally{this.model.endUpdate()}}return t},mxGraph.prototype.removeCellsFromParent=function(e){null==e&&(e=this.getSelectionCells()),this.model.beginUpdate();try{var t=this.getDefaultParent(),n=this.model.getChildCount(t);this.cellsAdded(e,t,n,null,null,!0),this.fireEvent(new mxEventObject(mxEvent.REMOVE_CELLS_FROM_PARENT,"cells",e))}finally{this.model.endUpdate()}return e},mxGraph.prototype.updateGroupBounds=function(e,t,n){null==e&&(e=this.getSelectionCells()),t=null!=t?t:0,n=null!=n&&n,this.model.beginUpdate();try{for(var a=0;a<e.length;a++)if(null!=(r=this.getCellGeometry(e[a]))){var i=this.getChildCells(e[a]);if(null!=i&&0<i.length){var o=this.getBoundingBoxFromGeometry(i);if(0<o.width&&0<o.height){var s=this.isSwimlane(e[a])?this.getStartSize(e[a]):new mxRectangle,r=r.clone();n&&(r.x+=o.x-s.width-t,r.y+=o.y-s.height-t),r.width=o.width+s.width+2*t,r.height=o.height+s.height+2*t,this.model.setGeometry(e[a],r),this.moveCells(i,-o.x+s.width+t,-o.y+s.height+t)}}}}finally{this.model.endUpdate()}return e},mxGraph.prototype.cloneCells=function(e,t){t=null==t||t;a=null;if(null!=e){for(var n={},a=[],i=0;i<e.length;i++)n[o=mxCellPath.create(e[i])]=e[i],a.push(e[i]);if(0<a.length)for(var o=this.view.scale,s=this.view.translate,a=this.model.cloneCells(e,!0),i=0;i<e.length;i++)if(!t&&this.model.isEdge(a[i])&&null!=this.getEdgeValidationError(a[i],this.model.getTerminal(a[i],!0),this.model.getTerminal(a[i],!1)))a[i]=null;else{var r=this.model.getGeometry(a[i]);if(null!=r){var l=this.view.getState(e[i]),d=this.view.getState(this.model.getParent(e[i]));if(null!=l&&null!=d){var c=d.origin.x,d=d.origin.y;if(this.model.isEdge(a[i])){for(var l=l.absolutePoints,m=this.model.getTerminal(e[i],!0),u=mxCellPath.create(m);null!=m&&null==n[u];)m=this.model.getParent(m),u=mxCellPath.create(m);for(null==m&&r.setTerminalPoint(new mxPoint(l[0].x/o-s.x,l[0].y/o-s.y),!0),m=this.model.getTerminal(e[i],!1),u=mxCellPath.create(m);null!=m&&null==n[u];)m=this.model.getParent(m),u=mxCellPath.create(m);if(null==m&&(m=l.length-1,r.setTerminalPoint(new mxPoint(l[m].x/o-s.x,l[m].y/o-s.y),!1)),null!=(r=r.points))for(l=0;l<r.length;l++)r[l].x+=c,r[l].y+=d}else r.x+=c,r.y+=d}}}else a=[]}return a},mxGraph.prototype.insertVertex=function(e,t,n,a,i,o,s,r,l){return t=this.createVertex(e,t,n,a,i,o,s,r,l),this.addCell(t,e)},mxGraph.prototype.createVertex=function(e,t,n,a,i,o,s,r,l){return e=new mxGeometry(a,i,o,s),e.relative=null!=l&&l,(n=new mxCell(n,e,r)).setId(t),n.setVertex(!0),n.setConnectable(!0),n},mxGraph.prototype.insertEdge=function(e,t,n,a,i,o){return t=this.createEdge(e,t,n,a,i,o),this.addEdge(t,e,a,i)},mxGraph.prototype.createEdge=function(e,t,n,a,i,o){return(e=new mxCell(n,new mxGeometry,o)).setId(t),e.setEdge(!0),e.geometry.relative=!0,e},mxGraph.prototype.addEdge=function(e,t,n,a,i){return this.addCell(e,t,i,n,a)},mxGraph.prototype.addCell=function(e,t,n,a,i){return this.addCells([e],t,n,a,i)[0]},mxGraph.prototype.addCells=function(e,t,n,a,i){null==t&&(t=this.getDefaultParent()),null==n&&(n=this.model.getChildCount(t)),this.model.beginUpdate();try{this.cellsAdded(e,t,n,a,i,!1,!0),this.fireEvent(new mxEventObject(mxEvent.ADD_CELLS,"cells",e,"parent",t,"index",n,"source",a,"target",i))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellsAdded=function(e,t,n,a,i,o,s){if(null!=e&&null!=t&&null!=n){this.model.beginUpdate();try{for(var r=null!=(d=o?this.view.getState(t):null)?d.origin:null,l=new mxPoint(0,0),d=0;d<e.length;d++)if(null==e[d])n--;else{var c=this.model.getParent(e[d]);if(null!=r&&e[d]!=t&&t!=c){var m=this.view.getState(c),u=null!=m?m.origin:l,p=this.model.getGeometry(e[d]);if(null!=p){var g=u.x-r.x,h=u.y-r.y;(p=p.clone()).translate(g,h),!p.relative&&this.model.isVertex(e[d])&&!this.isAllowNegativeCoordinates()&&(p.x=Math.max(0,p.x),p.y=Math.max(0,p.y)),this.model.setGeometry(e[d],p)}}t==c&&n+d>this.model.getChildCount(t)&&n--,this.model.add(t,e[d],n+d),this.isExtendParentsOnAdd()&&this.isExtendParent(e[d])&&this.extendParent(e[d]),(null==s||s)&&this.constrainChild(e[d]),null!=a&&this.cellConnected(e[d],a,!0),null!=i&&this.cellConnected(e[d],i,!1)}this.fireEvent(new mxEventObject(mxEvent.CELLS_ADDED,"cells",e,"parent",t,"index",n,"source",a,"target",i,"absolute",o))}finally{this.model.endUpdate()}}},mxGraph.prototype.removeCells=function(e,t){t=null==t||t,null==e&&(e=this.getDeletableCells(this.getSelectionCells())),t&&(e=this.getDeletableCells(this.addAllEdges(e))),this.model.beginUpdate();try{this.cellsRemoved(e),this.fireEvent(new mxEventObject(mxEvent.REMOVE_CELLS,"cells",e,"includeEdges",t))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellsRemoved=function(e){if(null!=e&&0<e.length){var t=this.view.scale,n=this.view.translate;this.model.beginUpdate();try{for(var a={},i=0;i<e.length;i++){var o=mxCellPath.create(e[i]);a[o]=e[i]}for(i=0;i<e.length;i++){for(var s=this.getConnections(e[i]),r=0;r<s.length;r++)if(o=mxCellPath.create(s[r]),null==a[o]&&null!=(d=this.model.getGeometry(s[r]))){var l=this.view.getState(s[r]);if(null!=l){var d=d.clone(),c=l.getVisibleTerminal(!0)==e[i],m=l.absolutePoints,u=c?0:m.length-1;d.setTerminalPoint(new mxPoint(m[u].x/t-n.x,m[u].y/t-n.y),c),this.model.setTerminal(s[r],null,c),this.model.setGeometry(s[r],d)}}this.model.remove(e[i])}this.fireEvent(new mxEventObject(mxEvent.CELLS_REMOVED,"cells",e))}finally{this.model.endUpdate()}}},mxGraph.prototype.splitEdge=function(e,t,n,a,i){a=a||0,i=i||0,null==n&&(n=this.cloneCells([e])[0]);var o=this.model.getParent(e),s=this.model.getTerminal(e,!0);this.model.beginUpdate();try{this.cellsMoved(t,a,i,!1,!1),this.cellsAdded(t,o,this.model.getChildCount(o),null,null,!0),this.cellsAdded([n],o,this.model.getChildCount(o),s,t[0],!1),this.cellConnected(e,t[0],!0),this.fireEvent(new mxEventObject(mxEvent.SPLIT_EDGE,"edge",e,"cells",t,"newEdge",n,"dx",a,"dy",i))}finally{this.model.endUpdate()}return n},mxGraph.prototype.toggleCells=function(e,t,n){null==t&&(t=this.getSelectionCells()),n&&(t=this.addAllEdges(t)),this.model.beginUpdate();try{this.cellsToggled(t,e),this.fireEvent(new mxEventObject(mxEvent.TOGGLE_CELLS,"show",e,"cells",t,"includeEdges",n))}finally{this.model.endUpdate()}return t},mxGraph.prototype.cellsToggled=function(e,t){if(null!=e&&0<e.length){this.model.beginUpdate();try{for(var n=0;n<e.length;n++)this.model.setVisible(e[n],t)}finally{this.model.endUpdate()}}},mxGraph.prototype.foldCells=function(e,t,n,a){t=null!=t&&t,null==n&&(n=this.getFoldableCells(this.getSelectionCells(),e)),this.stopEditing(!1),this.model.beginUpdate();try{this.cellsFolded(n,e,t,a),this.fireEvent(new mxEventObject(mxEvent.FOLD_CELLS,"collapse",e,"recurse",t,"cells",n))}finally{this.model.endUpdate()}return n},mxGraph.prototype.cellsFolded=function(e,t,n,a){if(null!=e&&0<e.length){this.model.beginUpdate();try{for(var i=0;i<e.length;i++)if((!a||this.isCellFoldable(e[i],t))&&t!=this.isCellCollapsed(e[i])&&(this.model.setCollapsed(e[i],t),this.swapBounds(e[i],t),this.isExtendParent(e[i])&&this.extendParent(e[i]),n)){var o=this.model.getChildren(e[i]);this.foldCells(o,t,n)}this.fireEvent(new mxEventObject(mxEvent.CELLS_FOLDED,"cells",e,"collapse",t,"recurse",n))}finally{this.model.endUpdate()}}},mxGraph.prototype.swapBounds=function(e,t){if(null!=e){var n=this.model.getGeometry(e);null!=n&&(n=n.clone(),this.updateAlternateBounds(e,n,t),n.swap(),this.model.setGeometry(e,n))}},mxGraph.prototype.updateAlternateBounds=function(e,t,n){if(null!=e&&null!=t){if(n=this.view.getState(e),n=null!=n?n.style:this.getCellStyle(e),null==t.alternateBounds){var a=t;this.collapseToPreferredSize&&null!=(e=this.getPreferredSizeForCell(e))&&(a=e,0<(e=mxUtils.getValue(n,mxConstants.STYLE_STARTSIZE))&&(a.height=Math.max(a.height,e))),t.alternateBounds=new mxRectangle(0,0,a.width,a.height)}if(null!=t.alternateBounds){t.alternateBounds.x=t.x,t.alternateBounds.y=t.y;var i=mxUtils.toRadians(n[mxConstants.STYLE_ROTATION]||"0");0!=i&&(e=t.alternateBounds.getCenterX()-t.getCenterX(),n=t.alternateBounds.getCenterY()-t.getCenterY(),a=Math.cos(i),i=Math.sin(i),t.alternateBounds.x+=a*e-i*n-e,t.alternateBounds.y+=i*e+a*n-n)}}},mxGraph.prototype.addAllEdges=function(e){var t=e.slice();return t=t.concat(this.getAllEdges(e))},mxGraph.prototype.getAllEdges=function(e){var t=[];if(null!=e)for(var n=0;n<e.length;n++){for(var a=this.model.getEdgeCount(e[n]),i=0;i<a;i++)t.push(this.model.getEdgeAt(e[n],i));a=this.model.getChildren(e[n]),t=t.concat(this.getAllEdges(a))}return t},mxGraph.prototype.updateCellSize=function(e,t){t=null!=t&&t,this.model.beginUpdate();try{this.cellSizeUpdated(e,t),this.fireEvent(new mxEventObject(mxEvent.UPDATE_CELL_SIZE,"cell",e,"ignoreChildren",t))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellSizeUpdated=function(e,t){if(null!=e){this.model.beginUpdate();try{var n=this.getPreferredSizeForCell(e),a=this.model.getGeometry(e);if(null!=n&&null!=a){var i=this.isCellCollapsed(e),a=a.clone();if(this.isSwimlane(e)){var o=this.view.getState(e),s=null!=o?o.style:this.getCellStyle(e),r=this.model.getStyle(e);null==r&&(r=""),mxUtils.getValue(s,mxConstants.STYLE_HORIZONTAL,!0)?(r=mxUtils.setStyle(r,mxConstants.STYLE_STARTSIZE,n.height+8),i&&(a.height=n.height+8),a.width=n.width):(r=mxUtils.setStyle(r,mxConstants.STYLE_STARTSIZE,n.width+8),i&&(a.width=n.width+8),a.height=n.height),this.model.setStyle(e,r)}else a.width=n.width,a.height=n.height;if(!t&&!i){var l=this.view.getBounds(this.model.getChildren(e));if(null!=l){var d=this.view.translate,c=this.view.scale,m=(l.y+l.height)/c-a.y-d.y;a.width=Math.max(a.width,(l.x+l.width)/c-a.x-d.x),a.height=Math.max(a.height,m)}}this.cellsResized([e],[a])}}finally{this.model.endUpdate()}}},mxGraph.prototype.getPreferredSizeForCell=function(e){o=null;if(null!=e){var t=this.view.getState(e),n=null!=t?t.style:this.getCellStyle(e);if(null!=n&&!this.model.isEdge(e)){var a=n[mxConstants.STYLE_FONTSIZE]||mxConstants.DEFAULT_FONTSIZE,i=0,o=0;null==this.getImage(t)&&null==n[mxConstants.STYLE_IMAGE]||n[mxConstants.STYLE_SHAPE]!=mxConstants.SHAPE_LABEL||(n[mxConstants.STYLE_VERTICAL_ALIGN]==mxConstants.ALIGN_MIDDLE&&(i+=parseFloat(n[mxConstants.STYLE_IMAGE_WIDTH])||mxLabel.prototype.imageSize),n[mxConstants.STYLE_ALIGN]!=mxConstants.ALIGN_CENTER&&(o+=parseFloat(n[mxConstants.STYLE_IMAGE_HEIGHT])||mxLabel.prototype.imageSize)),i+=2*(n[mxConstants.STYLE_SPACING]||0),i+=n[mxConstants.STYLE_SPACING_LEFT]||0,i+=n[mxConstants.STYLE_SPACING_RIGHT]||0,o+=2*(n[mxConstants.STYLE_SPACING]||0),o+=n[mxConstants.STYLE_SPACING_TOP]||0,o+=n[mxConstants.STYLE_SPACING_BOTTOM]||0,null!=(t=this.getFoldingImage(t))&&(i+=t.width+8),null!=(t=this.getLabel(e))&&0<t.length?(this.isHtmlLabel(e)||(t=t.replace(/\n/g,"<br>")),a=mxUtils.getSizeForString(t,a,n[mxConstants.STYLE_FONTFAMILY]),e=a.width+i,o=a.height+o,mxUtils.getValue(n,mxConstants.STYLE_HORIZONTAL,!0)||(n=o,o=e,e=n),this.gridEnabled&&(e=this.snap(e+this.gridSize/2),o=this.snap(o+this.gridSize/2)),o=new mxRectangle(0,0,e,o)):(n=4*this.gridSize,o=new mxRectangle(0,0,n,n))}}return o},mxGraph.prototype.handleGesture=function(e,t){if(.2<Math.abs(1-t.scale)){var n=this.view.scale,a=this.view.translate,i=e.width*t.scale,o=e.height*t.scale,s=e.y-(o-e.height)/2,n=new mxRectangle(this.snap((e.x-(i-e.width)/2)/n)-a.x,this.snap(s/n)-a.y,this.snap(i/n),this.snap(o/n));this.resizeCell(e.cell,n)}},mxGraph.prototype.resizeCell=function(e,t){return this.resizeCells([e],[t])[0]},mxGraph.prototype.resizeCells=function(e,t){this.model.beginUpdate();try{this.cellsResized(e,t),this.fireEvent(new mxEventObject(mxEvent.RESIZE_CELLS,"cells",e,"bounds",t))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellsResized=function(e,t){if(null!=e&&null!=t&&e.length==t.length){this.model.beginUpdate();try{for(var n=0;n<e.length;n++){var a=t[n],i=this.model.getGeometry(e[n]);if(null!=i&&(i.x!=a.x||i.y!=a.y||i.width!=a.width||i.height!=a.height)){if((i=i.clone()).relative){var o=i.offset;null!=o&&(o.x+=a.x-i.x,o.y+=a.y-i.y)}else i.x=a.x,i.y=a.y;i.width=a.width,i.height=a.height,!i.relative&&this.model.isVertex(e[n])&&!this.isAllowNegativeCoordinates()&&(i.x=Math.max(0,i.x),i.y=Math.max(0,i.y)),this.model.setGeometry(e[n],i),this.isExtendParent(e[n])&&this.extendParent(e[n])}}this.resetEdgesOnResize&&this.resetEdges(e),this.fireEvent(new mxEventObject(mxEvent.CELLS_RESIZED,"cells",e,"bounds",t))}finally{this.model.endUpdate()}}},mxGraph.prototype.extendParent=function(e){if(null!=e){var t=this.model.getParent(e),n=this.model.getGeometry(t);null!=t&&null!=n&&!this.isCellCollapsed(t)&&null!=(e=this.model.getGeometry(e))&&(n.width<e.x+e.width||n.height<e.y+e.height)&&(n=n.clone(),n.width=Math.max(n.width,e.x+e.width),n.height=Math.max(n.height,e.y+e.height),this.cellsResized([t],[n]))}},mxGraph.prototype.importCells=function(e,t,n,a,i){return this.moveCells(e,t,n,!0,a,i)},mxGraph.prototype.moveCells=function(e,t,n,a,i,o){if(t=null!=t?t:0,n=null!=n?n:0,a=null!=a&&a,null!=e&&(0!=t||0!=n||a||null!=i)){this.model.beginUpdate();try{a&&(e=this.cloneCells(e,this.isCloneInvalidEdges()),null==i&&(i=this.getDefaultParent()));var s=this.isAllowNegativeCoordinates();if(null!=i&&this.setAllowNegativeCoordinates(!0),this.cellsMoved(e,t,n,!a&&this.isDisconnectOnMove()&&this.isAllowDanglingEdges(),null==i),this.setAllowNegativeCoordinates(s),null!=i){var r=this.model.getChildCount(i);this.cellsAdded(e,i,r,null,null,!0)}this.fireEvent(new mxEventObject(mxEvent.MOVE_CELLS,"cells",e,"dx",t,"dy",n,"clone",a,"target",i,"event",o))}finally{this.model.endUpdate()}}return e},mxGraph.prototype.cellsMoved=function(e,t,n,a,i){if(null!=e&&(0!=t||0!=n)){this.model.beginUpdate();try{a&&this.disconnectGraph(e);for(var o=0;o<e.length;o++)this.translateCell(e[o],t,n),i&&this.constrainChild(e[o]);this.resetEdgesOnMove&&this.resetEdges(e),this.fireEvent(new mxEventObject(mxEvent.CELLS_MOVED,"cells",e,"dx",n,"dy",n,"disconnect",a))}finally{this.model.endUpdate()}}},mxGraph.prototype.translateCell=function(e,t,n){var a=this.model.getGeometry(e);null!=a&&((a=a.clone()).translate(t,n),!a.relative&&this.model.isVertex(e)&&!this.isAllowNegativeCoordinates()&&(a.x=Math.max(0,a.x),a.y=Math.max(0,a.y)),a.relative&&!this.model.isEdge(e)&&(null==a.offset?a.offset=new mxPoint(t,n):(a.offset.x+=t,a.offset.y+=n)),this.model.setGeometry(e,a))},mxGraph.prototype.getCellContainmentArea=function(e){if(null!=e&&!this.model.isEdge(e)){var t=this.model.getParent(e);if(t==this.getDefaultParent()||t==this.getCurrentRoot())return this.getMaximumGraphBounds();if(null!=t&&t!=this.getDefaultParent()&&null!=(i=this.model.getGeometry(t))){var n=e=0,a=i.width,i=i.height;return this.isSwimlane(t)&&(t=this.getStartSize(t),e=t.width,a-=t.width,n=t.height,i-=t.height),new mxRectangle(e,n,a,i)}}return null},mxGraph.prototype.getMaximumGraphBounds=function(){return this.maximumGraphBounds},mxGraph.prototype.constrainChild=function(e){if(null!=e){var t=this.model.getGeometry(e),n=this.isConstrainChild(e)?this.getCellContainmentArea(e):this.getMaximumGraphBounds();null!=t&&null!=n&&!t.relative&&(t.x<n.x||t.y<n.y||n.width<t.x+t.width||n.height<t.y+t.height)&&(e=this.getOverlap(e),0<n.width&&(t.x=Math.min(t.x,n.x+n.width-(1-e)*t.width)),0<n.height&&(t.y=Math.min(t.y,n.y+n.height-(1-e)*t.height)),t.x=Math.max(t.x,n.x-t.width*e),t.y=Math.max(t.y,n.y-t.height*e))}},mxGraph.prototype.resetEdges=function(e){if(null!=e){for(var t={},n=0;n<e.length;n++){var a=mxCellPath.create(e[n]);t[a]=e[n]}this.model.beginUpdate();try{for(n=0;n<e.length;n++){var i=this.model.getEdges(e[n]);if(null!=i)for(a=0;a<i.length;a++){var o=this.view.getState(i[a]),s=null!=o?o.getVisibleTerminal(!0):this.view.getVisibleTerminal(i[a],!0),r=null!=o?o.getVisibleTerminal(!1):this.view.getVisibleTerminal(i[a],!1),l=mxCellPath.create(s),d=mxCellPath.create(r);(null==t[l]||null==t[d])&&this.resetEdge(i[a])}this.resetEdges(this.model.getChildren(e[n]))}}finally{this.model.endUpdate()}}},mxGraph.prototype.resetEdge=function(e){var t=this.model.getGeometry(e);return null!=t&&null!=t.points&&0<t.points.length&&(t=t.clone(),t.points=[],this.model.setGeometry(e,t)),e},mxGraph.prototype.getAllConnectionConstraints=function(e,t){return null!=e&&null!=e.shape&&null!=e.shape.stencil?e.shape.stencil.constraints:null},mxGraph.prototype.getConnectionConstraint=function(e,t,n){t=null;var a=e.style[n?mxConstants.STYLE_EXIT_X:mxConstants.STYLE_ENTRY_X];if(null!=a){var i=e.style[n?mxConstants.STYLE_EXIT_Y:mxConstants.STYLE_ENTRY_Y];null!=i&&(t=new mxPoint(parseFloat(a),parseFloat(i)))}return a=!1,null!=t&&(a=mxUtils.getValue(e.style,n?mxConstants.STYLE_EXIT_PERIMETER:mxConstants.STYLE_ENTRY_PERIMETER,!0)),new mxConnectionConstraint(t,a)},mxGraph.prototype.setConnectionConstraint=function(e,t,n,a){if(null!=a){this.model.beginUpdate();try{null==a||null==a.point?(this.setCellStyles(n?mxConstants.STYLE_EXIT_X:mxConstants.STYLE_ENTRY_X,null,[e]),this.setCellStyles(n?mxConstants.STYLE_EXIT_Y:mxConstants.STYLE_ENTRY_Y,null,[e]),this.setCellStyles(n?mxConstants.STYLE_EXIT_PERIMETER:mxConstants.STYLE_ENTRY_PERIMETER,null,[e])):null!=a.point&&(this.setCellStyles(n?mxConstants.STYLE_EXIT_X:mxConstants.STYLE_ENTRY_X,a.point.x,[e]),this.setCellStyles(n?mxConstants.STYLE_EXIT_Y:mxConstants.STYLE_ENTRY_Y,a.point.y,[e]),a.perimeter?this.setCellStyles(n?mxConstants.STYLE_EXIT_PERIMETER:mxConstants.STYLE_ENTRY_PERIMETER,null,[e]):this.setCellStyles(n?mxConstants.STYLE_EXIT_PERIMETER:mxConstants.STYLE_ENTRY_PERIMETER,"0",[e]))}finally{this.model.endUpdate()}}},mxGraph.prototype.getConnectionPoint=function(e,t){var n=null;if(null!=e){var a=this.view.getPerimeterBounds(e),i=new mxPoint(a.getCenterX(),a.getCenterY()),o=e.style[mxConstants.STYLE_DIRECTION],s=0;if(null!=o&&("north"==o?s+=270:"west"==o?s+=180:"south"==o&&(s+=90),"north"==o||"south"==o)){a.x+=a.width/2-a.height/2,a.y+=a.height/2-a.width/2;var r=a.width;a.width=a.height,a.height=r}if(null!=t.point){var l=n=1,d=0,c=0;if(this.getModel().isVertex(e.cell)){var m=e.style[mxConstants.STYLE_FLIPH],u=e.style[mxConstants.STYLE_FLIPV];null!=e.shape.stencil&&(m=1==mxUtils.getValue(e.style,"stencilFlipH",0)||m,u=1==mxUtils.getValue(e.style,"stencilFlipV",0)||u),"north"!=o&&"south"!=o||(r=m,m=u,u=r),m&&(n=-1,d=-a.width),u&&(l=-1,c=-a.height)}n=new mxPoint(a.x+t.point.x*a.width*n-d,a.y+t.point.y*a.height*l-c)}o=e.style[mxConstants.STYLE_ROTATION]||0,t.perimeter?(0!=s&&null!=n&&(r=a=0,90==s?r=1:180==s?a=-1:270==o&&(r=-1),n=mxUtils.getRotatedPoint(n,a,r,i)),null!=n&&t.perimeter&&(n=this.view.getPerimeterPoint(e,n,!1))):o+=s,0!=o&&null!=n&&(s=mxUtils.toRadians(o),a=Math.cos(s),r=Math.sin(s),n=mxUtils.getRotatedPoint(n,a,r,i))}return n},mxGraph.prototype.connectCell=function(e,t,n,a){this.model.beginUpdate();try{var i=this.model.getTerminal(e,n);this.cellConnected(e,t,n,a),this.fireEvent(new mxEventObject(mxEvent.CONNECT_CELL,"edge",e,"terminal",t,"source",n,"previous",i))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellConnected=function(e,t,n,a){if(null!=e){this.model.beginUpdate();try{var i=this.model.getTerminal(e,n);this.setConnectionConstraint(e,t,n,a),this.isPortsEnabled()&&(a=null,this.isPort(t)&&(a=t.getId(),t=this.getTerminalForPort(t,n)),this.setCellStyles(n?mxConstants.STYLE_SOURCE_PORT:mxConstants.STYLE_TARGET_PORT,a,[e])),this.model.setTerminal(e,t,n),this.resetEdgesOnConnect&&this.resetEdge(e),this.fireEvent(new mxEventObject(mxEvent.CELL_CONNECTED,"edge",e,"terminal",t,"source",n,"previous",i))}finally{this.model.endUpdate()}}},mxGraph.prototype.disconnectGraph=function(e){if(null!=e){this.model.beginUpdate();try{for(var t=this.view.scale,n=this.view.translate,a={},i=0;i<e.length;i++)a[mxCellPath.create(e[i])]=e[i];for(i=0;i<e.length;i++)if(this.model.isEdge(e[i])&&null!=(r=this.model.getGeometry(e[i]))){var o=this.view.getState(e[i]),s=this.view.getState(this.model.getParent(e[i]));if(null!=o&&null!=s){var r=r.clone(),l=-s.origin.x,d=-s.origin.y,c=o.absolutePoints,m=this.model.getTerminal(e[i],!0);if(null!=m&&this.isCellDisconnectable(e[i],m,!0)){for(var u=mxCellPath.create(m);null!=m&&null==a[u];)m=this.model.getParent(m),u=mxCellPath.create(m);null==m&&(r.setTerminalPoint(new mxPoint(c[0].x/t-n.x+l,c[0].y/t-n.y+d),!0),this.model.setTerminal(e[i],null,!0))}var p=this.model.getTerminal(e[i],!1);if(null!=p&&this.isCellDisconnectable(e[i],p,!1)){for(var g=mxCellPath.create(p);null!=p&&null==a[g];)p=this.model.getParent(p),g=mxCellPath.create(p);if(null==p){var h=c.length-1;r.setTerminalPoint(new mxPoint(c[h].x/t-n.x+l,c[h].y/t-n.y+d),!1),this.model.setTerminal(e[i],null,!1)}}this.model.setGeometry(e[i],r)}}}finally{this.model.endUpdate()}}},mxGraph.prototype.getCurrentRoot=function(){return this.view.currentRoot},mxGraph.prototype.getTranslateForRoot=function(e){return null},mxGraph.prototype.isPort=function(e){return!1},mxGraph.prototype.getTerminalForPort=function(e,t){return this.model.getParent(e)},mxGraph.prototype.getChildOffsetForCell=function(e){return null},mxGraph.prototype.enterGroup=function(e){null!=(e=e||this.getSelectionCell())&&this.isValidRoot(e)&&(this.view.setCurrentRoot(e),this.clearSelection())},mxGraph.prototype.exitGroup=function(){var e=this.model.getRoot(),t=this.getCurrentRoot();if(null!=t){for(var n=this.model.getParent(t);n!=e&&!this.isValidRoot(n)&&this.model.getParent(n)!=e;)n=this.model.getParent(n);n==e||this.model.getParent(n)==e?this.view.setCurrentRoot(null):this.view.setCurrentRoot(n),null!=this.view.getState(t)&&this.setSelectionCell(t)}},mxGraph.prototype.home=function(){var e=this.getCurrentRoot();null!=e&&(this.view.setCurrentRoot(null),null!=this.view.getState(e)&&this.setSelectionCell(e))},mxGraph.prototype.isValidRoot=function(e){return null!=e},mxGraph.prototype.getGraphBounds=function(){return this.view.getGraphBounds()},mxGraph.prototype.getCellBounds=function(e,t,n){var a=[e];if(t&&(a=a.concat(this.model.getEdges(e))),a=this.view.getBounds(a),n){n=this.model.getChildCount(e);for(var i=0;i<n;i++){var o=this.getCellBounds(this.model.getChildAt(e,i),t,!0);null!=a?a.add(o):a=o}}return a},mxGraph.prototype.getBoundingBoxFromGeometry=function(e,t){t=null!=t&&t;var n=null;if(null!=e)for(var a=0;a<e.length;a++)if(t||this.model.isVertex(e[a])){var i=this.getCellGeometry(e[a]);if(null!=i){var o=i.points;if(null!=o&&0<o.length){for(var s=new mxRectangle(o[0].x,o[0].y,0,0),r=function(e){null!=e&&s.add(new mxRectangle(e.x,e.y,0,0))},l=1;l<o.length;l++)r(o[l]);r(i.getTerminalPoint(!0)),r(i.getTerminalPoint(!1))}null==n?n=new mxRectangle(i.x,i.y,i.width,i.height):n.add(i)}}return n},mxGraph.prototype.refresh=function(e){this.view.clear(e,null==e),this.view.validate(),this.sizeDidChange(),this.fireEvent(new mxEventObject(mxEvent.REFRESH))},mxGraph.prototype.snap=function(e){return this.gridEnabled&&(e=Math.round(e/this.gridSize)*this.gridSize),e},mxGraph.prototype.panGraph=function(e,t){if(this.useScrollbarsForPanning&&mxUtils.hasScrollbars(this.container))this.container.scrollLeft=-e,this.container.scrollTop=-t;else{var n=this.view.getCanvas();if(this.dialect==mxConstants.DIALECT_SVG)if(0==e&&0==t){if(mxClient.IS_IE?n.setAttribute("transform","translate("+e+","+t+")"):n.removeAttribute("transform"),null!=this.shiftPreview1){for(o=this.shiftPreview1.firstChild;null!=o;){var a=o.nextSibling;this.container.appendChild(o),o=a}for(this.shiftPreview1.parentNode.removeChild(this.shiftPreview1),this.shiftPreview1=null,this.container.appendChild(n.parentNode),o=this.shiftPreview2.firstChild;null!=o;)a=o.nextSibling,this.container.appendChild(o),o=a;this.shiftPreview2.parentNode.removeChild(this.shiftPreview2),this.shiftPreview2=null}}else{if(n.setAttribute("transform","translate("+e+","+t+")"),null==this.shiftPreview1){this.shiftPreview1=document.createElement("div"),this.shiftPreview1.style.position="absolute",this.shiftPreview1.style.overflow="visible",this.shiftPreview2=document.createElement("div"),this.shiftPreview2.style.position="absolute",this.shiftPreview2.style.overflow="visible";for(var i=this.shiftPreview1,o=this.container.firstChild;null!=o;)a=o.nextSibling,o!=n.parentNode?i.appendChild(o):i=this.shiftPreview2,o=a;this.container.insertBefore(this.shiftPreview1,n.parentNode),this.container.appendChild(this.shiftPreview2)}this.shiftPreview1.style.left=e+"px",this.shiftPreview1.style.top=t+"px",this.shiftPreview2.style.left=e+"px",this.shiftPreview2.style.top=t+"px"}else n.style.left=e+"px",n.style.top=t+"px";this.panDx=e,this.panDy=t,this.fireEvent(new mxEventObject(mxEvent.PAN))}},mxGraph.prototype.zoomIn=function(){this.zoom(this.zoomFactor)},mxGraph.prototype.zoomOut=function(){this.zoom(1/this.zoomFactor)},mxGraph.prototype.zoomActual=function(){1==this.view.scale?this.view.setTranslate(0,0):(this.view.translate.x=0,this.view.translate.y=0,this.view.setScale(1))},mxGraph.prototype.zoomTo=function(e,t){this.zoom(e/this.view.scale,t)},mxGraph.prototype.zoom=function(e,t){t=null!=t?t:this.centerZoom;var n=this.view.scale*e,a=this.view.getState(this.getSelectionCell());if(this.keepSelectionVisibleOnZoom&&null!=a)a=new mxRectangle(a.x*e,a.y*e,a.width*e,a.height*e),this.view.scale=n,this.scrollRectToVisible(a)||(this.view.revalidate(),this.view.setScale(n));else if(t&&!mxUtils.hasScrollbars(this.container)){var a=this.container.offsetWidth,i=this.container.offsetHeight;if(1<e)var o=(e-1)/(2*n),a=a*-o,i=i*-o;else o=(1/e-1)/(2*this.view.scale),a*=o,i*=o;this.view.scaleAndTranslate(n,this.view.translate.x+a,this.view.translate.y+i)}else this.view.setScale(n),mxUtils.hasScrollbars(this.container)&&(i=a=0,t&&(a=this.container.offsetWidth*(e-1)/2,i=this.container.offsetHeight*(e-1)/2),this.container.scrollLeft=Math.round(this.container.scrollLeft*e+a),this.container.scrollTop=Math.round(this.container.scrollTop*e+i))},mxGraph.prototype.zoomToRect=function(e){var t=this.container.clientWidth/e.width/(this.container.clientHeight/e.height);e.x=Math.max(0,e.x),e.y=Math.max(0,e.y);var n=Math.min(this.container.scrollWidth,e.x+e.width),a=Math.min(this.container.scrollHeight,e.y+e.height);e.width=n-e.x,e.height=a-e.y,1>t?(t=e.height/t,n=(t-e.height)/2,e.height=t,t=Math.min(e.y,n),e.y-=t,a=Math.min(this.container.scrollHeight,e.y+e.height),e.height=a-e.y):(t*=e.width,n=(t-e.width)/2,e.width=t,t=Math.min(e.x,n),e.x-=t,n=Math.min(this.container.scrollWidth,e.x+e.width),e.width=n-e.x),t=this.container.clientWidth/e.width,n=this.view.scale*t,mxUtils.hasScrollbars(this.container)?(this.view.setScale(n),this.container.scrollLeft=Math.round(e.x*t),this.container.scrollTop=Math.round(e.y*t)):this.view.scaleAndTranslate(n,this.view.translate.x-e.x/this.view.scale,this.view.translate.y-e.y/this.view.scale)},mxGraph.prototype.fit=function(e,t){if(null!=this.container){e=null!=e?e:0,t=null!=t&&t;var n=this.container.clientWidth,a=this.container.clientHeight,i=this.view.getGraphBounds();t&&null!=i.x&&null!=i.y&&(i.width+=i.x,i.height+=i.y,i.x=0,i.y=0);var o=this.view.scale,s=i.width/o,r=i.height/o;null!=this.backgroundImage&&(s=Math.max(s,this.backgroundImage.width-i.x/o),r=Math.max(r,this.backgroundImage.height-i.y/o));var l=t?e:2*e,n=Math.floor(100*Math.min(n/(s+l),a/(r+l)))/100;null!=this.minFitScale&&(n=Math.max(n,this.minFitScale)),null!=this.maxFitScale&&(n=Math.min(n,this.maxFitScale)),t?this.view.scale!=n&&this.view.setScale(n):mxUtils.hasScrollbars(this.container)?(this.view.setScale(n),null!=i.x&&(this.container.scrollLeft=Math.round(i.x/o)*n-e-Math.max(0,(this.container.clientWidth-s*n)/2)),null!=i.y&&(this.container.scrollTop=Math.round(i.y/o)*n-e-Math.max(0,(this.container.clientHeight-r*n)/2))):this.view.scaleAndTranslate(n,null!=i.x?Math.floor(this.view.translate.x-i.x/o+e+1):e,null!=i.y?Math.floor(this.view.translate.y-i.y/o+e+1):e)}return this.view.scale},mxGraph.prototype.scrollCellToVisible=function(e,t){var n=-this.view.translate.x,a=-this.view.translate.y,i=this.view.getState(e);null!=i&&(n=new mxRectangle(n+i.x,a+i.y,i.width,i.height),t&&null!=this.container&&(a=this.container.clientWidth,i=this.container.clientHeight,n.x=n.getCenterX()-a/2,n.width=a,n.y=n.getCenterY()-i/2,n.height=i),this.scrollRectToVisible(n)&&this.view.setTranslate(this.view.translate.x,this.view.translate.y))},mxGraph.prototype.scrollRectToVisible=function(e){var t=!1;if(null!=e){var n=this.container.offsetWidth,a=this.container.offsetHeight,i=Math.min(n,e.width),o=Math.min(a,e.height);if(mxUtils.hasScrollbars(this.container)){n=this.container,e.x+=this.view.translate.x,e.y+=this.view.translate.y;var s=n.scrollLeft-e.x,a=Math.max(s-n.scrollLeft,0);0<s?n.scrollLeft-=s+2:0<(s=e.x+i-n.scrollLeft-n.clientWidth)&&(n.scrollLeft+=s+2),i=n.scrollTop-e.y,s=Math.max(0,i-n.scrollTop),0<i?n.scrollTop-=i+2:0<(i=e.y+o-n.scrollTop-n.clientHeight)&&(n.scrollTop+=i+2),!this.useScrollbarsForPanning&&(0!=a||0!=s)&&this.view.setTranslate(a,s)}else{var s=-this.view.translate.x,r=-this.view.translate.y,l=this.view.scale;e.x+i>s+n&&(this.view.translate.x-=(e.x+i-n-s)/l,t=!0),e.y+o>r+a&&(this.view.translate.y-=(e.y+o-a-r)/l,t=!0),e.x<s&&(this.view.translate.x+=(s-e.x)/l,t=!0),e.y<r&&(this.view.translate.y+=(r-e.y)/l,t=!0),t&&(this.view.refresh(),null!=this.selectionCellsHandler&&this.selectionCellsHandler.refresh())}}return t},mxGraph.prototype.getCellGeometry=function(e){return this.model.getGeometry(e)},mxGraph.prototype.isCellVisible=function(e){return this.model.isVisible(e)},mxGraph.prototype.isCellCollapsed=function(e){return this.model.isCollapsed(e)},mxGraph.prototype.isCellConnectable=function(e){return this.model.isConnectable(e)},mxGraph.prototype.isOrthogonal=function(e){var t=e.style[mxConstants.STYLE_ORTHOGONAL];return null!=t?t:(e=this.view.getEdgeStyle(e))==mxEdgeStyle.SegmentConnector||e==mxEdgeStyle.ElbowConnector||e==mxEdgeStyle.SideToSide||e==mxEdgeStyle.TopToBottom||e==mxEdgeStyle.EntityRelation||e==mxEdgeStyle.OrthConnector},mxGraph.prototype.isLoop=function(e){var t=e.getVisibleTerminalState(!0);return e=e.getVisibleTerminalState(!1),null!=t&&t==e},mxGraph.prototype.isCloneEvent=function(e){return mxEvent.isControlDown(e)},mxGraph.prototype.isToggleEvent=function(e){return mxClient.IS_MAC?mxEvent.isMetaDown(e):mxEvent.isControlDown(e)},mxGraph.prototype.isGridEnabledEvent=function(e){return null!=e&&!mxEvent.isAltDown(e)},mxGraph.prototype.isConstrainedEvent=function(e){return mxEvent.isShiftDown(e)},mxGraph.prototype.isForceMarqueeEvent=function(e){return mxEvent.isAltDown(e)},mxGraph.prototype.validationAlert=function(e){mxUtils.alert(e)},mxGraph.prototype.isEdgeValid=function(e,t,n){return null==this.getEdgeValidationError(e,t,n)},mxGraph.prototype.getEdgeValidationError=function(e,t,n){if(null!=e&&!this.isAllowDanglingEdges()&&(null==t||null==n))return"";if(null!=e&&null==this.model.getTerminal(e,!0)&&null==this.model.getTerminal(e,!1))return null;if(!this.allowLoops&&t==n&&null!=t||!this.isValidConnection(t,n))return"";if(null!=t&&null!=n){var a="";this.multigraph||(1<(i=this.model.getEdgesBetween(t,n,!0)).length||1==i.length&&i[0]!=e)&&(a+=(mxResources.get(this.alreadyConnectedResource)||this.alreadyConnectedResource)+"\n");var i=this.model.getDirectedEdgeCount(t,!0,e),o=this.model.getDirectedEdgeCount(n,!1,e);if(null!=this.multiplicities)for(var s=0;s<this.multiplicities.length;s++){var r=this.multiplicities[s].check(this,e,t,n,i,o);null!=r&&(a+=r)}return null!=(r=this.validateEdge(e,t,n))&&(a+=r),0<a.length?a:null}return this.allowDanglingEdges?null:""},mxGraph.prototype.validateEdge=function(e,t,n){return null},mxGraph.prototype.validateGraph=function(e,t){e=null!=e?e:this.model.getRoot(),t=null!=t?t:{};for(var n=!0,a=this.model.getChildCount(e),i=0;i<a;i++){var o=this.model.getChildAt(e,i),s=t;this.isValidRoot(o)&&(s={}),null!=(s=this.validateGraph(o,s))?this.setCellWarning(o,s.replace(/\n/g,"<br>")):this.setCellWarning(o,null),n=n&&null==s}return a="",this.isCellCollapsed(e)&&!n&&(a+=(mxResources.get(this.containsValidationErrorsResource)||this.containsValidationErrorsResource)+"\n"),a=this.model.isEdge(e)?a+(this.getEdgeValidationError(e,this.model.getTerminal(e,!0),this.model.getTerminal(e,!1))||""):a+(this.getCellValidationError(e)||""),null!=(i=this.validateCell(e,t))&&(a+=i),null==this.model.getParent(e)&&this.view.validate(),0<a.length||!n?a:null},mxGraph.prototype.getCellValidationError=function(e){var t=this.model.getDirectedEdgeCount(e,!0),n=this.model.getDirectedEdgeCount(e,!1);e=this.model.getValue(e);var a="";if(null!=this.multiplicities)for(var i=0;i<this.multiplicities.length;i++){var o=this.multiplicities[i];o.source&&mxUtils.isNode(e,o.type,o.attr,o.value)&&(0==o.max&&0<t||1==o.min&&0==t||1==o.max&&1<t)?a+=o.countError+"\n":!o.source&&mxUtils.isNode(e,o.type,o.attr,o.value)&&(0==o.max&&0<n||1==o.min&&0==n||1==o.max&&1<n)&&(a+=o.countError+"\n")}return 0<a.length?a:null},mxGraph.prototype.validateCell=function(e,t){return null},mxGraph.prototype.getBackgroundImage=function(){return this.backgroundImage},mxGraph.prototype.setBackgroundImage=function(e){this.backgroundImage=e},mxGraph.prototype.getFoldingImage=function(e){if(null!=e&&this.foldingEnabled&&!this.getModel().isEdge(e.cell)){var t=this.isCellCollapsed(e.cell);if(this.isCellFoldable(e.cell,!t))return t?this.collapsedImage:this.expandedImage}return null},mxGraph.prototype.convertValueToString=function(e){if(null!=(e=this.model.getValue(e))){if(mxUtils.isNode(e))return e.nodeName;if("function"==typeof e.toString)return e.toString()}return""},mxGraph.prototype.getLabel=function(e){var t="";if(this.labelsVisible&&null!=e){var n=null!=(n=this.view.getState(e))?n.style:this.getCellStyle(e);mxUtils.getValue(n,mxConstants.STYLE_NOLABEL,!1)||(t=this.convertValueToString(e))}return t},mxGraph.prototype.isHtmlLabel=function(e){return this.isHtmlLabels()},mxGraph.prototype.isHtmlLabels=function(){return this.htmlLabels},mxGraph.prototype.setHtmlLabels=function(e){this.htmlLabels=e},mxGraph.prototype.isWrapping=function(e){var t=this.view.getState(e);return null!=(e=null!=t?t.style:this.getCellStyle(e))&&"wrap"==e[mxConstants.STYLE_WHITE_SPACE]},mxGraph.prototype.isLabelClipped=function(e){var t=this.view.getState(e);return null!=(e=null!=t?t.style:this.getCellStyle(e))&&"hidden"==e[mxConstants.STYLE_OVERFLOW]},mxGraph.prototype.getTooltip=function(e,t,n,a){var i=null;return null!=e&&(null==e.control||t!=e.control.node&&t.parentNode!=e.control.node||(i=this.collapseExpandResource,i=mxResources.get(i)||i),null==i&&null!=e.overlays&&e.overlays.visit(function(e,n){null!=i||t!=n.node&&t.parentNode!=n.node||(i=n.overlay.toString())}),null==i&&null!=(n=this.selectionCellsHandler.getHandler(e.cell))&&"function"==typeof n.getTooltipForNode&&(i=n.getTooltipForNode(t)),null==i&&(i=this.getTooltipForCell(e.cell))),i},mxGraph.prototype.getTooltipForCell=function(e){return null!=e&&null!=e.getTooltip?e.getTooltip():this.convertValueToString(e)},mxGraph.prototype.getCursorForCell=function(e){return null},mxGraph.prototype.getStartSize=function(e){var t=new mxRectangle,n=this.view.getState(e);return null!=(e=null!=n?n.style:this.getCellStyle(e))&&(n=parseInt(mxUtils.getValue(e,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),mxUtils.getValue(e,mxConstants.STYLE_HORIZONTAL,!0)?t.height=n:t.width=n),t},mxGraph.prototype.getImage=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_IMAGE]:null},mxGraph.prototype.getVerticalAlign=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_VERTICAL_ALIGN]||mxConstants.ALIGN_MIDDLE:null},mxGraph.prototype.getIndicatorColor=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_INDICATOR_COLOR]:null},mxGraph.prototype.getIndicatorGradientColor=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_INDICATOR_GRADIENTCOLOR]:null},mxGraph.prototype.getIndicatorShape=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_INDICATOR_SHAPE]:null},mxGraph.prototype.getIndicatorImage=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_INDICATOR_IMAGE]:null},mxGraph.prototype.getBorder=function(){return this.border},mxGraph.prototype.setBorder=function(e){this.border=e},mxGraph.prototype.isSwimlane=function(e){if(null!=e&&this.model.getParent(e)!=this.model.getRoot()){var t=this.view.getState(e);if(null!=(t=null!=t?t.style:this.getCellStyle(e))&&!this.model.isEdge(e))return t[mxConstants.STYLE_SHAPE]==mxConstants.SHAPE_SWIMLANE}return!1},mxGraph.prototype.isResizeContainer=function(){return this.resizeContainer},mxGraph.prototype.setResizeContainer=function(e){this.resizeContainer=e},mxGraph.prototype.isEnabled=function(){return this.enabled},mxGraph.prototype.setEnabled=function(e){this.enabled=e},mxGraph.prototype.isEscapeEnabled=function(){return this.escapeEnabled},mxGraph.prototype.setEscapeEnabled=function(e){this.escapeEnabled=e},mxGraph.prototype.isInvokesStopCellEditing=function(){return this.invokesStopCellEditing},mxGraph.prototype.setInvokesStopCellEditing=function(e){this.invokesStopCellEditing=e},mxGraph.prototype.isEnterStopsCellEditing=function(){return this.enterStopsCellEditing},mxGraph.prototype.setEnterStopsCellEditing=function(e){this.enterStopsCellEditing=e},mxGraph.prototype.isCellLocked=function(e){var t=this.model.getGeometry(e);return this.isCellsLocked()||null!=t&&this.model.isVertex(e)&&t.relative},mxGraph.prototype.isCellsLocked=function(){return this.cellsLocked},mxGraph.prototype.setCellsLocked=function(e){this.cellsLocked=e},mxGraph.prototype.getCloneableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.isCellCloneable(e)}))},mxGraph.prototype.isCellCloneable=function(e){var t=this.view.getState(e);return e=null!=t?t.style:this.getCellStyle(e),this.isCellsCloneable()&&0!=e[mxConstants.STYLE_CLONEABLE]},mxGraph.prototype.isCellsCloneable=function(){return this.cellsCloneable},mxGraph.prototype.setCellsCloneable=function(e){this.cellsCloneable=e},mxGraph.prototype.getExportableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.canExportCell(e)}))},mxGraph.prototype.canExportCell=function(e){return this.exportEnabled},mxGraph.prototype.getImportableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.canImportCell(e)}))},mxGraph.prototype.canImportCell=function(e){return this.importEnabled},mxGraph.prototype.isCellSelectable=function(e){return this.isCellsSelectable()},mxGraph.prototype.isCellsSelectable=function(){return this.cellsSelectable},mxGraph.prototype.setCellsSelectable=function(e){this.cellsSelectable=e},mxGraph.prototype.getDeletableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.isCellDeletable(e)}))},mxGraph.prototype.isCellDeletable=function(e){var t=this.view.getState(e);return e=null!=t?t.style:this.getCellStyle(e),this.isCellsDeletable()&&0!=e[mxConstants.STYLE_DELETABLE]},mxGraph.prototype.isCellsDeletable=function(){return this.cellsDeletable},mxGraph.prototype.setCellsDeletable=function(e){this.cellsDeletable=e},mxGraph.prototype.isLabelMovable=function(e){return!this.isCellLocked(e)&&(this.model.isEdge(e)&&this.edgeLabelsMovable||this.model.isVertex(e)&&this.vertexLabelsMovable)},mxGraph.prototype.getMovableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.isCellMovable(e)}))},mxGraph.prototype.isCellMovable=function(e){var t=null!=(t=this.view.getState(e))?t.style:this.getCellStyle(e);return this.isCellsMovable()&&!this.isCellLocked(e)&&0!=t[mxConstants.STYLE_MOVABLE]},mxGraph.prototype.isCellsMovable=function(){return this.cellsMovable},mxGraph.prototype.setCellsMovable=function(e){this.cellsMovable=e},mxGraph.prototype.isGridEnabled=function(){return this.gridEnabled},mxGraph.prototype.setGridEnabled=function(e){this.gridEnabled=e},mxGraph.prototype.isPortsEnabled=function(){return this.portsEnabled},mxGraph.prototype.setPortsEnabled=function(e){this.portsEnabled=e},mxGraph.prototype.getGridSize=function(){return this.gridSize},mxGraph.prototype.setGridSize=function(e){this.gridSize=e},mxGraph.prototype.getTolerance=function(){return this.tolerance},mxGraph.prototype.setTolerance=function(e){this.tolerance=e},mxGraph.prototype.isVertexLabelsMovable=function(){return this.vertexLabelsMovable},mxGraph.prototype.setVertexLabelsMovable=function(e){this.vertexLabelsMovable=e},mxGraph.prototype.isEdgeLabelsMovable=function(){return this.edgeLabelsMovable},mxGraph.prototype.setEdgeLabelsMovable=function(e){this.edgeLabelsMovable=e},mxGraph.prototype.isSwimlaneNesting=function(){return this.swimlaneNesting},mxGraph.prototype.setSwimlaneNesting=function(e){this.swimlaneNesting=e},mxGraph.prototype.isSwimlaneSelectionEnabled=function(){return this.swimlaneSelectionEnabled},mxGraph.prototype.setSwimlaneSelectionEnabled=function(e){this.swimlaneSelectionEnabled=e},mxGraph.prototype.isMultigraph=function(){return this.multigraph},mxGraph.prototype.setMultigraph=function(e){this.multigraph=e},mxGraph.prototype.isAllowLoops=function(){return this.allowLoops},mxGraph.prototype.setAllowDanglingEdges=function(e){this.allowDanglingEdges=e},mxGraph.prototype.isAllowDanglingEdges=function(){return this.allowDanglingEdges},mxGraph.prototype.setConnectableEdges=function(e){this.connectableEdges=e},mxGraph.prototype.isConnectableEdges=function(){return this.connectableEdges},mxGraph.prototype.setCloneInvalidEdges=function(e){this.cloneInvalidEdges=e},mxGraph.prototype.isCloneInvalidEdges=function(){return this.cloneInvalidEdges},mxGraph.prototype.setAllowLoops=function(e){this.allowLoops=e},mxGraph.prototype.isDisconnectOnMove=function(){return this.disconnectOnMove},mxGraph.prototype.setDisconnectOnMove=function(e){this.disconnectOnMove=e},mxGraph.prototype.isDropEnabled=function(){return this.dropEnabled},mxGraph.prototype.setDropEnabled=function(e){this.dropEnabled=e},mxGraph.prototype.isSplitEnabled=function(){return this.splitEnabled},mxGraph.prototype.setSplitEnabled=function(e){this.splitEnabled=e},mxGraph.prototype.isCellResizable=function(e){var t=null!=(t=this.view.getState(e))?t.style:this.getCellStyle(e);return this.isCellsResizable()&&!this.isCellLocked(e)&&0!=t[mxConstants.STYLE_RESIZABLE]},mxGraph.prototype.isCellsResizable=function(){return this.cellsResizable},mxGraph.prototype.setCellsResizable=function(e){this.cellsResizable=e},mxGraph.prototype.isTerminalPointMovable=function(e,t){return!0},mxGraph.prototype.isCellBendable=function(e){var t=null!=(t=this.view.getState(e))?t.style:this.getCellStyle(e);return this.isCellsBendable()&&!this.isCellLocked(e)&&0!=t[mxConstants.STYLE_BENDABLE]},mxGraph.prototype.isCellsBendable=function(){return this.cellsBendable},mxGraph.prototype.setCellsBendable=function(e){this.cellsBendable=e},mxGraph.prototype.isCellEditable=function(e){var t=null!=(t=this.view.getState(e))?t.style:this.getCellStyle(e);return this.isCellsEditable()&&!this.isCellLocked(e)&&0!=t[mxConstants.STYLE_EDITABLE]},mxGraph.prototype.isCellsEditable=function(){return this.cellsEditable},mxGraph.prototype.setCellsEditable=function(e){this.cellsEditable=e},mxGraph.prototype.isCellDisconnectable=function(e,t,n){return this.isCellsDisconnectable()&&!this.isCellLocked(e)},mxGraph.prototype.isCellsDisconnectable=function(){return this.cellsDisconnectable},mxGraph.prototype.setCellsDisconnectable=function(e){this.cellsDisconnectable=e},mxGraph.prototype.isValidSource=function(e){return null==e&&this.allowDanglingEdges||null!=e&&(!this.model.isEdge(e)||this.connectableEdges)&&this.isCellConnectable(e)},mxGraph.prototype.isValidTarget=function(e){return this.isValidSource(e)},mxGraph.prototype.isValidConnection=function(e,t){return this.isValidSource(e)&&this.isValidTarget(t)},mxGraph.prototype.setConnectable=function(e){this.connectionHandler.setEnabled(e)},mxGraph.prototype.isConnectable=function(e){return this.connectionHandler.isEnabled()},mxGraph.prototype.setTooltips=function(e){this.tooltipHandler.setEnabled(e)},mxGraph.prototype.setPanning=function(e){this.panningHandler.panningEnabled=e},mxGraph.prototype.isEditing=function(e){if(null!=this.cellEditor){var t=this.cellEditor.getEditingCell();return null==e?null!=t:e==t}return!1},mxGraph.prototype.isAutoSizeCell=function(e){var t=this.view.getState(e);return e=null!=t?t.style:this.getCellStyle(e),this.isAutoSizeCells()||1==e[mxConstants.STYLE_AUTOSIZE]},mxGraph.prototype.isAutoSizeCells=function(){return this.autoSizeCells},mxGraph.prototype.setAutoSizeCells=function(e){this.autoSizeCells=e},mxGraph.prototype.isExtendParent=function(e){return!this.getModel().isEdge(e)&&this.isExtendParents()},mxGraph.prototype.isExtendParents=function(){return this.extendParents},mxGraph.prototype.setExtendParents=function(e){this.extendParents=e},mxGraph.prototype.isExtendParentsOnAdd=function(){return this.extendParentsOnAdd},mxGraph.prototype.setExtendParentsOnAdd=function(e){this.extendParentsOnAdd=e},mxGraph.prototype.isConstrainChild=function(e){return this.isConstrainChildren()&&!this.getModel().isEdge(this.getModel().getParent(e))},mxGraph.prototype.isConstrainChildren=function(){return this.constrainChildren},mxGraph.prototype.setConstrainChildren=function(e){this.constrainChildren=e},mxGraph.prototype.isAllowNegativeCoordinates=function(){return this.allowNegativeCoordinates},mxGraph.prototype.setAllowNegativeCoordinates=function(e){this.allowNegativeCoordinates=e},mxGraph.prototype.getOverlap=function(e){return this.isAllowOverlapParent(e)?this.defaultOverlap:0},mxGraph.prototype.isAllowOverlapParent=function(e){return!1},mxGraph.prototype.getFoldableCells=function(e,t){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.isCellFoldable(e,t)}))},mxGraph.prototype.isCellFoldable=function(e,t){var n=null!=(n=this.view.getState(e))?n.style:this.getCellStyle(e);return 0<this.model.getChildCount(e)&&0!=n[mxConstants.STYLE_FOLDABLE]},mxGraph.prototype.isValidDropTarget=function(e,t,n){return null!=e&&(this.isSplitEnabled()&&this.isSplitTarget(e,t,n)||!this.model.isEdge(e)&&(this.isSwimlane(e)||0<this.model.getChildCount(e)&&!this.isCellCollapsed(e)))},mxGraph.prototype.isSplitTarget=function(e,t,n){return!(!this.model.isEdge(e)||null==t||1!=t.length||!this.isCellConnectable(t[0])||null!=this.getEdgeValidationError(e,this.model.getTerminal(e,!0),t[0]))&&(n=this.model.getTerminal(e,!0),e=this.model.getTerminal(e,!1),!this.model.isAncestor(t[0],n)&&!this.model.isAncestor(t[0],e))},mxGraph.prototype.getDropTarget=function(e,t,n){if(!this.isSwimlaneNesting())for(var a=0;a<e.length;a++)if(this.isSwimlane(e[a]))return null;if(a=mxUtils.convertPoint(this.container,mxEvent.getClientX(t),mxEvent.getClientY(t)),a.x-=this.panDx,a.y-=this.panDy,a=this.getSwimlaneAt(a.x,a.y),null==n)n=a;else if(null!=a){for(var i=this.model.getParent(a);null!=i&&this.isSwimlane(i)&&i!=n;)i=this.model.getParent(i);i==n&&(n=a)}for(;null!=n&&!this.isValidDropTarget(n,e,t)&&!this.model.isLayer(n);)n=this.model.getParent(n);return!this.model.isLayer(n)&&0>mxUtils.indexOf(e,n)?n:null},mxGraph.prototype.getDefaultParent=function(){var e=this.defaultParent;return null==e&&null==(e=this.getCurrentRoot())&&(e=this.model.getRoot(),e=this.model.getChildAt(e,0)),e},mxGraph.prototype.setDefaultParent=function(e){this.defaultParent=e},mxGraph.prototype.getSwimlane=function(e){for(;null!=e&&!this.isSwimlane(e);)e=this.model.getParent(e);return e},mxGraph.prototype.getSwimlaneAt=function(e,t,n){if(null!=(n=n||this.getDefaultParent()))for(var a=this.model.getChildCount(n),i=0;i<a;i++){var o=this.model.getChildAt(n,i),s=this.getSwimlaneAt(e,t,o);if(null!=s)return s;if(this.isSwimlane(o)&&(s=this.view.getState(o),this.intersects(s,e,t)))return o}return null},mxGraph.prototype.getCellAt=function(e,t,n,a,i){if(a=null==a||a,i=null==i||i,null!=(n=null!=n?n:this.getDefaultParent()))for(var o=this.model.getChildCount(n)-1;0<=o;o--){var s=this.model.getChildAt(n,o),r=this.getCellAt(e,t,s,a,i);if(null!=r)return r;if(this.isCellVisible(s)&&(i&&this.model.isEdge(s)||a&&this.model.isVertex(s))&&(r=this.view.getState(s),this.intersects(r,e,t)))return s}return null},mxGraph.prototype.intersects=function(e,t,n){if(null!=e){var a=e.absolutePoints;if(null!=a){e=this.tolerance*this.tolerance;for(var i=a[0],o=1;o<a.length;o++){var s=a[o];if(mxUtils.ptSegDistSq(i.x,i.y,s.x,s.y,t,n)<=e)return!0;i=s}}else if(0!=(i=mxUtils.toRadians(mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION)||0))&&(a=Math.cos(-i),i=Math.sin(-i),o=new mxPoint(e.getCenterX(),e.getCenterY()),i=mxUtils.getRotatedPoint(new mxPoint(t,n),a,i,o),t=i.x,n=i.y),mxUtils.contains(e,t,n))return!0}return!1},mxGraph.prototype.hitsSwimlaneContent=function(e,t,n){var a=this.getView().getState(e);if(e=this.getStartSize(e),null!=a){var i=this.getView().getScale();if(t-=a.x,n-=a.y,0<e.width&&0<t&&t>e.width*i||0<e.height&&0<n&&n>e.height*i)return!0}return!1},mxGraph.prototype.getChildVertices=function(e){return this.getChildCells(e,!0,!1)},mxGraph.prototype.getChildEdges=function(e){return this.getChildCells(e,!1,!0)},mxGraph.prototype.getChildCells=function(e,t,n){for(e=null!=e?e:this.getDefaultParent(),e=this.model.getChildCells(e,null!=t&&t,null!=n&&n),t=[],n=0;n<e.length;n++)this.isCellVisible(e[n])&&t.push(e[n]);return t},mxGraph.prototype.getConnections=function(e,t){return this.getEdges(e,t,!0,!0,!1)},mxGraph.prototype.getIncomingEdges=function(e,t){return this.getEdges(e,t,!0,!1,!1)},mxGraph.prototype.getOutgoingEdges=function(e,t){return this.getEdges(e,t,!1,!0,!1)},mxGraph.prototype.getEdges=function(e,t,n,a,i,o){n=null==n||n,a=null==a||a,i=null==i||i,o=null!=o&&o;for(var s=[],r=this.isCellCollapsed(e),l=this.model.getChildCount(e),d=0;d<l;d++){var c=this.model.getChildAt(e,d);!r&&this.isCellVisible(c)||(s=s.concat(this.model.getEdges(c,n,a)))}for(s=s.concat(this.model.getEdges(e,n,a)),r=[],d=0;d<s.length;d++)c=this.view.getState(s[d]),l=null!=c?c.getVisibleTerminal(!0):this.view.getVisibleTerminal(s[d],!0),c=null!=c?c.getVisibleTerminal(!1):this.view.getVisibleTerminal(s[d],!1),(i&&l==c||l!=c&&(n&&c==e&&(null==t||this.isValidAncestor(l,t,o))||a&&l==e&&(null==t||this.isValidAncestor(c,t,o))))&&r.push(s[d]);return r},mxGraph.prototype.isValidAncestor=function(e,t,n){return n?this.model.isAncestor(t,e):this.model.getParent(e)==t},mxGraph.prototype.getOpposites=function(e,t,n,a){n=null==n||n,a=null==a||a;var i=[],o={};if(null!=e)for(var s=0;s<e.length;s++){var r=null!=(l=this.view.getState(e[s]))?l.getVisibleTerminal(!0):this.view.getVisibleTerminal(e[s],!0),l=null!=l?l.getVisibleTerminal(!1):this.view.getVisibleTerminal(e[s],!1);if(r==t&&null!=l&&l!=t&&a){var d=mxCellPath.create(l);null==o[d]&&(o[d]=l,i.push(l))}else l==t&&null!=r&&r!=t&&n&&(d=mxCellPath.create(r),null==o[d]&&(o[d]=r,i.push(r)))}return i},mxGraph.prototype.getEdgesBetween=function(e,t,n){n=null!=n&&n;for(var a=this.getEdges(e),i=[],o=0;o<a.length;o++){var s=null!=(r=this.view.getState(a[o]))?r.getVisibleTerminal(!0):this.view.getVisibleTerminal(a[o],!0),r=null!=r?r.getVisibleTerminal(!1):this.view.getVisibleTerminal(a[o],!1);(s==e&&r==t||!n&&s==t&&r==e)&&i.push(a[o])}return i},mxGraph.prototype.getPointForEvent=function(e,t){var n=mxUtils.convertPoint(this.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),a=this.view.scale,i=this.view.translate,o=0!=t?this.gridSize/2:0;return n.x=this.snap(n.x/a-i.x-o),n.y=this.snap(n.y/a-i.y-o),n},mxGraph.prototype.getCells=function(e,t,n,a,i,o){if(o=null!=o?o:[],0<n||0<a){var s=e+n,r=t+a;if(null!=(i=i||this.getDefaultParent()))for(var l=this.model.getChildCount(i),d=0;d<l;d++){var c=this.model.getChildAt(i,d),m=this.view.getState(c);if(this.isCellVisible(c)&&null!=m){var u=m;0!=(m=mxUtils.getValue(m.style,mxConstants.STYLE_ROTATION)||0)&&(u=mxUtils.getBoundingBox(u,m)),u.x>=e&&u.y+u.height<=r&&u.y>=t&&u.x+u.width<=s?o.push(c):this.getCells(e,t,n,a,c,o)}}}return o},mxGraph.prototype.getCellsBeyond=function(e,t,n,a,i){var o=[];if((a||i)&&(null==n&&(n=this.getDefaultParent()),null!=n))for(var s=this.model.getChildCount(n),r=0;r<s;r++){var l=this.model.getChildAt(n,r),d=this.view.getState(l);this.isCellVisible(l)&&null!=d&&(!a||d.x>=e)&&(!i||d.y>=t)&&o.push(l)}return o},mxGraph.prototype.findTreeRoots=function(e,t,n){t=null!=t&&t,n=null!=n&&n;var a=[];if(null!=e){for(var i=this.getModel(),o=i.getChildCount(e),s=null,r=0,l=0;l<o;l++){var d=i.getChildAt(e,l);if(this.model.isVertex(d)&&this.isCellVisible(d)){for(var c=this.getConnections(d,t?e:null),m=0,u=0,p=0;p<c.length;p++)this.view.getVisibleTerminal(c[p],!0)==d?m++:u++;(n&&0==m&&0<u||!n&&0==u&&0<m)&&a.push(d),(c=n?u-m:m-u)>r&&(r=c,s=d)}}0==a.length&&null!=s&&a.push(s)}return a},mxGraph.prototype.traverse=function(e,t,n,a,i){if(null!=n&&null!=e){t=null==t||t,i=i||[];var o=mxCellPath.create(e);if(null==i[o]&&(i[o]=e,null==(a=n(e,a))||a)&&0<(a=this.model.getEdgeCount(e)))for(o=0;o<a;o++){var s=this.model.getEdgeAt(e,o),r=this.model.getTerminal(s,!0)==e;t&&!r||(r=this.model.getTerminal(s,!r),this.traverse(r,t,n,s,i))}}},mxGraph.prototype.isCellSelected=function(e){return this.getSelectionModel().isSelected(e)},mxGraph.prototype.isSelectionEmpty=function(){return this.getSelectionModel().isEmpty()},mxGraph.prototype.clearSelection=function(){return this.getSelectionModel().clear()},mxGraph.prototype.getSelectionCount=function(){return this.getSelectionModel().cells.length},mxGraph.prototype.getSelectionCell=function(){return this.getSelectionModel().cells[0]},mxGraph.prototype.getSelectionCells=function(){return this.getSelectionModel().cells.slice()},mxGraph.prototype.setSelectionCell=function(e){this.getSelectionModel().setCell(e)},mxGraph.prototype.setSelectionCells=function(e){this.getSelectionModel().setCells(e)},mxGraph.prototype.addSelectionCell=function(e){this.getSelectionModel().addCell(e)},mxGraph.prototype.addSelectionCells=function(e){this.getSelectionModel().addCells(e)},mxGraph.prototype.removeSelectionCell=function(e){this.getSelectionModel().removeCell(e)},mxGraph.prototype.removeSelectionCells=function(e){this.getSelectionModel().removeCells(e)},mxGraph.prototype.selectRegion=function(e,t){var n=this.getCells(e.x,e.y,e.width,e.height);return this.selectCellsForEvent(n,t),n},mxGraph.prototype.selectNextCell=function(){this.selectCell(!0)},mxGraph.prototype.selectPreviousCell=function(){this.selectCell()},mxGraph.prototype.selectParentCell=function(){this.selectCell(!1,!0)},mxGraph.prototype.selectChildCell=function(){this.selectCell(!1,!1,!0)},mxGraph.prototype.selectCell=function(e,t,n){var a=0<(i=this.selectionModel).cells.length?i.cells[0]:null;1<i.cells.length&&i.clear();var i=null!=a?this.model.getParent(a):this.getDefaultParent(),o=this.model.getChildCount(i);null==a&&0<o?(e=this.model.getChildAt(i,0),this.setSelectionCell(e)):null!=a&&!t||null==this.view.getState(i)||null==this.model.getGeometry(i)?null!=a&&n?0<this.model.getChildCount(a)&&(e=this.model.getChildAt(a,0),this.setSelectionCell(e)):0<o&&(t=i.getIndex(a),e?(t++,e=this.model.getChildAt(i,t%o)):(t--,e=this.model.getChildAt(i,0>t?o-1:t)),this.setSelectionCell(e)):this.getCurrentRoot()!=i&&this.setSelectionCell(i)},mxGraph.prototype.selectAll=function(e){e=e||this.getDefaultParent(),null!=(e=this.model.getChildren(e))&&this.setSelectionCells(e)},mxGraph.prototype.selectVertices=function(e){this.selectCells(!0,!1,e)},mxGraph.prototype.selectEdges=function(e){this.selectCells(!1,!0,e)},mxGraph.prototype.selectCells=function(e,t,n){n=n||this.getDefaultParent();var a=mxUtils.bind(this,function(n){return null!=this.view.getState(n)&&0==this.model.getChildCount(n)&&(this.model.isVertex(n)&&e||this.model.isEdge(n)&&t)});n=this.model.filterDescendants(a,n),this.setSelectionCells(n)},mxGraph.prototype.selectCellForEvent=function(e,t){var n=this.isCellSelected(e);this.isToggleEvent(t)?n?this.removeSelectionCell(e):this.addSelectionCell(e):(!n||1!=this.getSelectionCount())&&this.setSelectionCell(e)},mxGraph.prototype.selectCellsForEvent=function(e,t){this.isToggleEvent(t)?this.addSelectionCells(e):this.setSelectionCells(e)},mxGraph.prototype.createHandler=function(e){var t=null;return null!=e&&(this.model.isEdge(e.cell)?(t=this.view.getEdgeStyle(e),t=this.isLoop(e)||t==mxEdgeStyle.ElbowConnector||t==mxEdgeStyle.SideToSide||t==mxEdgeStyle.TopToBottom?new mxElbowEdgeHandler(e):t==mxEdgeStyle.SegmentConnector||t==mxEdgeStyle.OrthConnector?new mxEdgeSegmentHandler(e):new mxEdgeHandler(e)):t=new mxVertexHandler(e)),t},mxGraph.prototype.addMouseListener=function(e){null==this.mouseListeners&&(this.mouseListeners=[]),this.mouseListeners.push(e)},mxGraph.prototype.removeMouseListener=function(e){if(null!=this.mouseListeners)for(var t=0;t<this.mouseListeners.length;t++)if(this.mouseListeners[t]==e){this.mouseListeners.splice(t,1);break}},mxGraph.prototype.updateMouseEvent=function(e){if(null==e.graphX||null==e.graphY){var t=mxUtils.convertPoint(this.container,e.getX(),e.getY());e.graphX=t.x-this.panDx,e.graphY=t.y-this.panDy}},mxGraph.prototype.fireMouseEvent=function(e,t,n){if(null==n&&(n=this),this.updateMouseEvent(t),e==mxEvent.MOUSE_DOWN&&(this.isMouseDown=!0),mxClient.IS_TOUCH&&this.doubleTapEnabled&&e==mxEvent.MOUSE_DOWN){var a=(new Date).getTime();a-this.lastTouchTime<this.doubleTapTimeout&&Math.abs(this.lastTouchX-t.getX())<this.doubleTapTolerance&&Math.abs(this.lastTouchY-t.getY())<this.doubleTapTolerance?(this.lastTouchTime=0,this.dblClick(t.getEvent(),t.getCell()),t.getEvent().cancelBubble=!0):(this.lastTouchX=t.getX(),this.lastTouchY=t.getY(),this.lastTouchTime=a)}if(a=2!=t.getEvent().detail,mxClient.IS_IE&&"CSS1Compat"==document.compatMode&&((null!=this.lastMouseX&&Math.abs(this.lastMouseX-t.getX())>this.doubleTapTolerance||null!=this.lastMouseY&&Math.abs(this.lastMouseY-t.getY())>this.doubleTapTolerance)&&(a=!0),e==mxEvent.MOUSE_UP&&(this.lastMouseX=t.getX(),this.lastMouseY=t.getY())),(e!=mxEvent.MOUSE_UP||this.isMouseDown)&&a){if(e==mxEvent.MOUSE_UP&&(this.isMouseDown=!1),!this.isEditing()&&(mxClient.IS_OP||mxClient.IS_SF||mxClient.IS_GC||mxClient.IS_IE&&mxClient.IS_SVG||t.getEvent().target!=this.container)){if(e==mxEvent.MOUSE_MOVE&&this.isMouseDown&&this.autoScroll&&this.scrollPointToVisible(t.getGraphX(),t.getGraphY(),this.autoExtend),null!=this.mouseListeners)for(n=[n,t],t.getEvent().returnValue=!0,a=0;a<this.mouseListeners.length;a++){var i=this.mouseListeners[a];e==mxEvent.MOUSE_DOWN?i.mouseDown.apply(i,n):e==mxEvent.MOUSE_MOVE?i.mouseMove.apply(i,n):e==mxEvent.MOUSE_UP&&i.mouseUp.apply(i,n)}e==mxEvent.MOUSE_UP&&this.click(t)}}else e==mxEvent.MOUSE_UP&&(this.isMouseDown=!1)},mxGraph.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,null!=this.tooltipHandler&&this.tooltipHandler.destroy(),null!=this.selectionCellsHandler&&this.selectionCellsHandler.destroy(),null!=this.panningHandler&&this.panningHandler.destroy(),null!=this.connectionHandler&&this.connectionHandler.destroy(),null!=this.graphHandler&&this.graphHandler.destroy(),null!=this.cellEditor&&this.cellEditor.destroy(),null!=this.view&&this.view.destroy(),null!=this.model&&null!=this.graphModelChangeListener&&(this.model.removeListener(this.graphModelChangeListener),this.graphModelChangeListener=null),this.container=null)},mxCellOverlay.prototype=new mxEventSource,mxCellOverlay.prototype.constructor=mxCellOverlay,mxCellOverlay.prototype.image=null,mxCellOverlay.prototype.tooltip=null,mxCellOverlay.prototype.align=mxConstants.ALIGN_RIGHT,mxCellOverlay.prototype.verticalAlign=mxConstants.ALIGN_BOTTOM,mxCellOverlay.prototype.offset=null,mxCellOverlay.prototype.cursor=null,mxCellOverlay.prototype.defaultOverlap=.5,mxCellOverlay.prototype.getBounds=function(e){var t=e.view.graph.getModel().isEdge(e.cell),n=e.view.scale,a=null,i=this.image.width,o=this.image.height;return t?(t=e.absolutePoints,1==t.length%2?a=t[Math.floor(t.length/2)]:(a=t.length/2,e=t[a-1],t=t[a],a=new mxPoint(e.x+(t.x-e.x)/2,e.y+(t.y-e.y)/2))):(a=new mxPoint,a.x=this.align==mxConstants.ALIGN_LEFT?e.x:this.align==mxConstants.ALIGN_CENTER?e.x+e.width/2:e.x+e.width,a.y=this.verticalAlign==mxConstants.ALIGN_TOP?e.y:this.verticalAlign==mxConstants.ALIGN_MIDDLE?e.y+e.height/2:e.y+e.height),new mxRectangle(Math.round(a.x-(i*this.defaultOverlap-this.offset.x)*n),Math.round(a.y-(o*this.defaultOverlap-this.offset.y)*n),i*n,o*n)},mxCellOverlay.prototype.toString=function(){return this.tooltip},mxOutline.prototype.source=null,mxOutline.prototype.outline=null,mxOutline.prototype.graphRenderHint=mxConstants.RENDERING_HINT_FASTER,mxOutline.prototype.enabled=!0,mxOutline.prototype.showViewport=!0,mxOutline.prototype.border=10,mxOutline.prototype.sizerSize=8,mxOutline.prototype.updateOnPan=!1,mxOutline.prototype.sizerImage=null,mxOutline.prototype.suspended=!1,mxOutline.prototype.init=function(e){this.outline=new mxGraph(e,this.source.getModel(),this.graphRenderHint,this.source.getStylesheet()),this.outline.foldingEnabled=!1,this.outline.autoScroll=!1;var t=this.outline.graphModelChanged;this.outline.graphModelChanged=mxUtils.bind(this,function(e){!this.suspended&&null!=this.outline&&t.apply(this.outline,arguments)}),mxClient.IS_SVG&&((e=this.outline.getView().getCanvas().parentNode).setAttribute("shape-rendering","optimizeSpeed"),e.setAttribute("image-rendering","optimizeSpeed")),this.outline.labelsVisible=!1,this.outline.setEnabled(!1),this.updateHandler=mxUtils.bind(this,function(e,t){!this.suspended&&!this.active&&this.update()}),this.source.getModel().addListener(mxEvent.CHANGE,this.updateHandler),this.outline.addMouseListener(this),(e=this.source.getView()).addListener(mxEvent.SCALE,this.updateHandler),e.addListener(mxEvent.TRANSLATE,this.updateHandler),e.addListener(mxEvent.SCALE_AND_TRANSLATE,this.updateHandler),e.addListener(mxEvent.DOWN,this.updateHandler),e.addListener(mxEvent.UP,this.updateHandler),mxEvent.addListener(this.source.container,"scroll",this.updateHandler),this.panHandler=mxUtils.bind(this,function(e){this.updateOnPan&&this.updateHandler.apply(this,arguments)}),this.source.addListener(mxEvent.PAN,this.panHandler),this.refreshHandler=mxUtils.bind(this,function(e){this.outline.setStylesheet(this.source.getStylesheet()),this.outline.refresh()}),this.source.addListener(mxEvent.REFRESH,this.refreshHandler),this.bounds=new mxRectangle(0,0,0,0),this.selectionBorder=new mxRectangleShape(this.bounds,null,mxConstants.OUTLINE_COLOR,mxConstants.OUTLINE_STROKEWIDTH),this.selectionBorder.dialect=this.outline.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.selectionBorder.init(this.outline.getView().getOverlayPane()),mxEvent.redirectMouseEvents(this.selectionBorder.node,this.outline),this.selectionBorder.node.style.background="",this.sizer=this.createSizer(),this.sizer.init(this.outline.getView().getOverlayPane()),this.enabled&&(this.sizer.node.style.cursor="pointer"),mxEvent.addListener(this.sizer.node,mxClient.IS_TOUCH?"touchstart":"mousedown",mxUtils.bind(this,function(e){this.outline.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e))})),this.selectionBorder.node.style.display=this.showViewport?"":"none",this.sizer.node.style.display=this.selectionBorder.node.style.display,this.selectionBorder.node.style.cursor="move",this.update(!1)},mxOutline.prototype.isEnabled=function(){return this.enabled},mxOutline.prototype.setEnabled=function(e){this.enabled=e},mxOutline.prototype.setZoomEnabled=function(e){this.sizer.node.style.visibility=e?"visible":"hidden"},mxOutline.prototype.refresh=function(){this.update(!0)},mxOutline.prototype.createSizer=function(){var e=null!=this.sizerImage?new mxImageShape(new mxRectangle(0,0,this.sizerImage.width,this.sizerImage.height),this.sizerImage.src):new mxRectangleShape(new mxRectangle(0,0,this.sizerSize,this.sizerSize),mxConstants.OUTLINE_HANDLE_FILLCOLOR,mxConstants.OUTLINE_HANDLE_STROKECOLOR);return e.dialect=this.outline.dialect,e},mxOutline.prototype.getSourceContainerSize=function(){return new mxRectangle(0,0,this.source.container.scrollWidth,this.source.container.scrollHeight)},mxOutline.prototype.getOutlineOffset=function(e){return null},mxOutline.prototype.update=function(e){if(null!=this.source){var t=this.source.view.scale,n=new mxRectangle((n=this.source.getGraphBounds()).x/t+this.source.panDx,n.y/t+this.source.panDy,n.width/t,n.height/t),a=new mxRectangle(0,0,this.source.container.clientWidth/t,this.source.container.clientHeight/t);(o=n.clone()).add(a);var i=this.getSourceContainerSize(),a=Math.max(i.width/t,o.width),t=Math.max(i.height/t,o.height),o=Math.max(0,this.outline.container.clientWidth-this.border),i=Math.max(0,this.outline.container.clientHeight-this.border);if(0<(o=Math.min(o/a,i/t))){this.outline.getView().scale!=o&&(this.outline.getView().scale=o,e=!0),(a=this.outline.getView()).currentRoot!=this.source.getView().currentRoot&&a.setCurrentRoot(this.source.getView().currentRoot);var i=(t=this.source.view.translate).x+this.source.panDx,s=t.y+this.source.panDy;null!=(o=this.getOutlineOffset(o))&&(i+=o.x,s+=o.y),0>n.x&&(i-=n.x),0>n.y&&(s-=n.y),a.translate.x==i&&a.translate.y==s||(a.translate.x=i,a.translate.y=s,e=!0);var n=a.translate,i=(o=this.source.getView().scale)/a.scale,s=1/a.scale,r=this.source.container;this.bounds=new mxRectangle((n.x-t.x-this.source.panDx)/s,(n.y-t.y-this.source.panDy)/s,r.clientWidth/i,r.clientHeight/i),this.bounds.x+=this.source.container.scrollLeft*a.scale/o,this.bounds.y+=this.source.container.scrollTop*a.scale/o,(n=this.selectionBorder.bounds).x==this.bounds.x&&n.y==this.bounds.y&&n.width==this.bounds.width&&n.height==this.bounds.height||(this.selectionBorder.bounds=this.bounds,this.selectionBorder.redraw()),n=this.sizer.bounds,a=new mxRectangle(this.bounds.x+this.bounds.width-n.width/2,this.bounds.y+this.bounds.height-n.height/2,n.width,n.height),n.x==a.x&&n.y==a.y&&n.width==a.width&&n.height==a.height||(this.sizer.bounds=a,"hidden"!=this.sizer.node.style.visibility&&this.sizer.redraw()),e&&this.outline.view.revalidate()}}},mxOutline.prototype.mouseDown=function(e,t){this.enabled&&this.showViewport&&(this.zoom=t.isSource(this.sizer),this.startX=t.getX(),this.startY=t.getY(),this.active=!0,this.source.useScrollbarsForPanning&&mxUtils.hasScrollbars(this.source.container)?(this.dx0=this.source.container.scrollLeft,this.dy0=this.source.container.scrollTop):this.dy0=this.dx0=0),t.consume()},mxOutline.prototype.mouseMove=function(e,t){if(this.active){this.selectionBorder.node.style.display=this.showViewport?"":"none",this.sizer.node.style.display=this.selectionBorder.node.style.display;var n=t.getX()-this.startX,a=t.getY()-this.startY,i=null;if(this.zoom)i=this.source.container,a=n/(i.clientWidth/i.clientHeight),i=new mxRectangle(this.bounds.x,this.bounds.y,Math.max(1,this.bounds.width+n),Math.max(1,this.bounds.height+a)),this.selectionBorder.bounds=i,this.selectionBorder.redraw();else{var o=this.outline.getView().scale,i=new mxRectangle(this.bounds.x+n,this.bounds.y+a,this.bounds.width,this.bounds.height);this.selectionBorder.bounds=i,this.selectionBorder.redraw(),n=n/o*this.source.getView().scale,a=a/o*this.source.getView().scale,this.source.panGraph(-n-this.dx0,-a-this.dy0)}n=this.sizer.bounds,this.sizer.bounds=new mxRectangle(i.x+i.width-n.width/2,i.y+i.height-n.height/2,n.width,n.height),"hidden"!=this.sizer.node.style.visibility&&this.sizer.redraw(),t.consume()}},mxOutline.prototype.mouseUp=function(e,t){if(this.active){var n=t.getX()-this.startX,a=t.getY()-this.startY;if(0<Math.abs(n)||0<Math.abs(a)){if(this.zoom){var a=this.selectionBorder.bounds.width,i=this.source.getView().scale;this.source.zoomTo(i-n*i/a,!1)}else this.source.useScrollbarsForPanning&&mxUtils.hasScrollbars(this.source.container)||(this.source.panGraph(0,0),n/=this.outline.getView().scale,a/=this.outline.getView().scale,i=this.source.getView().translate,this.source.getView().setTranslate(i.x-n,i.y-a));this.update(),t.consume()}this.index=null,this.active=!1}},mxOutline.prototype.destroy=function(){null!=this.source&&(this.source.removeListener(this.panHandler),this.source.removeListener(this.refreshHandler),this.source.getModel().removeListener(this.updateHandler),this.source.getView().removeListener(this.updateHandler),mxEvent.addListener(this.source.container,"scroll",this.updateHandler),this.source=null),null!=this.outline&&(this.outline.removeMouseListener(this),this.outline.destroy(),this.outline=null),null!=this.selectionBorder&&(this.selectionBorder.destroy(),this.selectionBorder=null),null!=this.sizer&&(this.sizer.destroy(),this.sizer=null)},mxMultiplicity.prototype.type=null,mxMultiplicity.prototype.attr=null,mxMultiplicity.prototype.value=null,mxMultiplicity.prototype.source=null,mxMultiplicity.prototype.min=null,mxMultiplicity.prototype.max=null,mxMultiplicity.prototype.validNeighbors=null,mxMultiplicity.prototype.validNeighborsAllowed=!0,mxMultiplicity.prototype.countError=null,mxMultiplicity.prototype.typeError=null,mxMultiplicity.prototype.check=function(e,t,n,a,i,o){var s="";return(this.source&&this.checkTerminal(e,n,t)||!this.source&&this.checkTerminal(e,a,t))&&(null!=this.countError&&(this.source&&(0==this.max||i>=this.max)||!this.source&&(0==this.max||o>=this.max))&&(s+=this.countError+"\n"),null!=this.validNeighbors&&null!=this.typeError&&0<this.validNeighbors.length&&(this.checkNeighbors(e,t,n,a)||(s+=this.typeError+"\n"))),0<s.length?s:null},mxMultiplicity.prototype.checkNeighbors=function(e,t,n,a){t=e.model.getValue(n),a=e.model.getValue(a),n=!this.validNeighborsAllowed;for(var i=this.validNeighbors,o=0;o<i.length;o++){if(this.source&&this.checkType(e,a,i[o])){n=this.validNeighborsAllowed;break}if(!this.source&&this.checkType(e,t,i[o])){n=this.validNeighborsAllowed;break}}return n},mxMultiplicity.prototype.checkTerminal=function(e,t,n){return t=e.model.getValue(t),this.checkType(e,t,this.type,this.attr,this.value)},mxMultiplicity.prototype.checkType=function(e,t,n,a,i){return null!=t&&(isNaN(t.nodeType)?t==n:mxUtils.isNode(t,n,a,i))},mxLayoutManager.prototype=new mxEventSource,mxLayoutManager.prototype.constructor=mxLayoutManager,mxLayoutManager.prototype.graph=null,mxLayoutManager.prototype.bubbling=!0,mxLayoutManager.prototype.enabled=!0,mxLayoutManager.prototype.updateHandler=null,mxLayoutManager.prototype.moveHandler=null,mxLayoutManager.prototype.isEnabled=function(){return this.enabled},mxLayoutManager.prototype.setEnabled=function(e){this.enabled=e},mxLayoutManager.prototype.isBubbling=function(){return this.bubbling},mxLayoutManager.prototype.setBubbling=function(e){this.bubbling=e},mxLayoutManager.prototype.getGraph=function(){return this.graph},mxLayoutManager.prototype.setGraph=function(e){if(null!=this.graph){var t=this.graph.getModel();t.removeListener(this.undoHandler),this.graph.removeListener(this.moveHandler)}this.graph=e,null!=this.graph&&((t=this.graph.getModel()).addListener(mxEvent.BEFORE_UNDO,this.undoHandler),this.graph.addListener(mxEvent.MOVE_CELLS,this.moveHandler))},mxLayoutManager.prototype.getLayout=function(e){return null},mxLayoutManager.prototype.beforeUndo=function(e){e=this.getCellsForChanges(e.changes);var t=this.getGraph().getModel();if(this.isBubbling())for(var n=t.getParents(e);0<n.length;)e=e.concat(n),n=t.getParents(n);this.layoutCells(mxUtils.sortCells(e,!1))},mxLayoutManager.prototype.cellsMoved=function(e,t){if(null!=e&&null!=t)for(var n=mxUtils.convertPoint(this.getGraph().container,mxEvent.getClientX(t),mxEvent.getClientY(t)),a=this.getGraph().getModel(),i=0;i<e.length;i++){var o=this.getLayout(a.getParent(e[i]));null!=o&&o.moveCell(e[i],n.x,n.y)}},mxLayoutManager.prototype.getCellsForChanges=function(e){for(var t=[],n={},a=0;a<e.length;a++){if((i=e[a])instanceof mxRootChange)return[];for(var i=this.getCellsForChange(i),o=0;o<i.length;o++)if(null!=i[o]){var s=mxCellPath.create(i[o]);null==n[s]&&(n[s]=i[o],t.push(i[o]))}}return t},mxLayoutManager.prototype.getCellsForChange=function(e){var t=this.getGraph().getModel();return e instanceof mxChildChange?[e.child,e.previous,t.getParent(e.child)]:e instanceof mxTerminalChange||e instanceof mxGeometryChange?[e.cell,t.getParent(e.cell)]:[]},mxLayoutManager.prototype.layoutCells=function(e){if(0<e.length){var t=this.getGraph().getModel();t.beginUpdate();try{for(var n=null,a=0;a<e.length;a++)e[a]!=t.getRoot()&&e[a]!=n&&(n=e[a],this.executeLayout(this.getLayout(n),n));this.fireEvent(new mxEventObject(mxEvent.LAYOUT_CELLS,"cells",e))}finally{t.endUpdate()}}},mxLayoutManager.prototype.executeLayout=function(e,t){null!=e&&null!=t&&e.execute(t)},mxLayoutManager.prototype.destroy=function(){this.setGraph(null)},mxSpaceManager.prototype=new mxEventSource,mxSpaceManager.prototype.constructor=mxSpaceManager,mxSpaceManager.prototype.graph=null,mxSpaceManager.prototype.enabled=!0,mxSpaceManager.prototype.shiftRightwards=!0,mxSpaceManager.prototype.shiftDownwards=!0,mxSpaceManager.prototype.extendParents=!0,mxSpaceManager.prototype.resizeHandler=null,mxSpaceManager.prototype.foldHandler=null,mxSpaceManager.prototype.isCellIgnored=function(e){return!this.getGraph().getModel().isVertex(e)},mxSpaceManager.prototype.isCellShiftable=function(e){return this.getGraph().getModel().isVertex(e)&&this.getGraph().isCellMovable(e)},mxSpaceManager.prototype.isEnabled=function(){return this.enabled},mxSpaceManager.prototype.setEnabled=function(e){this.enabled=e},mxSpaceManager.prototype.isShiftRightwards=function(){return this.shiftRightwards},mxSpaceManager.prototype.setShiftRightwards=function(e){this.shiftRightwards=e},mxSpaceManager.prototype.isShiftDownwards=function(){return this.shiftDownwards},mxSpaceManager.prototype.setShiftDownwards=function(e){this.shiftDownwards=e},mxSpaceManager.prototype.isExtendParents=function(){return this.extendParents},mxSpaceManager.prototype.setExtendParents=function(e){this.extendParents=e},mxSpaceManager.prototype.getGraph=function(){return this.graph},mxSpaceManager.prototype.setGraph=function(e){null!=this.graph&&(this.graph.removeListener(this.resizeHandler),this.graph.removeListener(this.foldHandler)),this.graph=e,null!=this.graph&&(this.graph.addListener(mxEvent.RESIZE_CELLS,this.resizeHandler),this.graph.addListener(mxEvent.FOLD_CELLS,this.foldHandler))},mxSpaceManager.prototype.cellsResized=function(e){if(null!=e){var t=this.graph.getModel();t.beginUpdate();try{for(var n=0;n<e.length;n++)if(!this.isCellIgnored(e[n])){this.cellResized(e[n]);break}}finally{t.endUpdate()}}},mxSpaceManager.prototype.cellResized=function(e){var t=this.getGraph(),n=t.getView(),a=t.getModel(),i=n.getState(e),o=n.getState(a.getParent(e));if(null!=i&&null!=o){var s=this.getCellsToShift(i),r=a.getGeometry(e);if(null!=s&&null!=r){var l=n.translate,d=n.scale,n=i.x-o.origin.x-l.x*d,o=i.y-o.origin.y-l.y*d,l=i.x+i.width,c=i.y+i.height,m=i.width-r.width*d+n-r.x*d,u=i.height-r.height*d+o-r.y*d,p=1-r.width*d/i.width,i=1-r.height*d/i.height;a.beginUpdate();try{for(r=0;r<s.length;r++)s[r]!=e&&this.isCellShiftable(s[r])&&this.shiftCell(s[r],m,u,n,o,l,c,p,i,this.isExtendParents()&&t.isExtendParent(s[r]))}finally{a.endUpdate()}}}},mxSpaceManager.prototype.shiftCell=function(e,t,n,a,i,o,s,r,l,d){var c=(a=this.getGraph()).getView().getState(e);if(null!=c){var m=a.getModel(),u=m.getGeometry(e);if(null!=u){m.beginUpdate();try{if(this.isShiftRightwards())if(c.x>=o)(u=u.clone()).translate(-t,0);else{var p=Math.max(0,c.x-x0);(u=u.clone()).translate(-r*p,0)}if(this.isShiftDownwards())if(c.y>=s)(u=u.clone()).translate(0,-n);else{var g=Math.max(0,c.y-i);(u=u.clone()).translate(0,-l*g)}u!=m.getGeometry(e)&&(m.setGeometry(e,u),d&&a.extendParent(e))}finally{m.endUpdate()}}}},mxSpaceManager.prototype.getCellsToShift=function(e){var t=this.getGraph(),n=t.getModel().getParent(e.cell),a=this.isShiftDownwards(),i=this.isShiftRightwards();return t.getCellsBeyond(e.x+(a?0:e.width),e.y+(a&&i?0:e.height),n,i,a)},mxSpaceManager.prototype.destroy=function(){this.setGraph(null)},mxSwimlaneManager.prototype=new mxEventSource,mxSwimlaneManager.prototype.constructor=mxSwimlaneManager,mxSwimlaneManager.prototype.graph=null,mxSwimlaneManager.prototype.enabled=!0,mxSwimlaneManager.prototype.horizontal=!0,mxSwimlaneManager.prototype.addEnabled=!0,mxSwimlaneManager.prototype.resizeEnabled=!0,mxSwimlaneManager.prototype.addHandler=null,mxSwimlaneManager.prototype.resizeHandler=null,mxSwimlaneManager.prototype.isEnabled=function(){return this.enabled},mxSwimlaneManager.prototype.setEnabled=function(e){this.enabled=e},mxSwimlaneManager.prototype.isHorizontal=function(){return this.horizontal},mxSwimlaneManager.prototype.setHorizontal=function(e){this.horizontal=e},mxSwimlaneManager.prototype.isAddEnabled=function(){return this.addEnabled},mxSwimlaneManager.prototype.setAddEnabled=function(e){this.addEnabled=e},mxSwimlaneManager.prototype.isResizeEnabled=function(){return this.resizeEnabled},mxSwimlaneManager.prototype.setResizeEnabled=function(e){this.resizeEnabled=e},mxSwimlaneManager.prototype.getGraph=function(){return this.graph},mxSwimlaneManager.prototype.setGraph=function(e){null!=this.graph&&(this.graph.removeListener(this.addHandler),this.graph.removeListener(this.resizeHandler)),this.graph=e,null!=this.graph&&(this.graph.addListener(mxEvent.ADD_CELLS,this.addHandler),this.graph.addListener(mxEvent.CELLS_RESIZED,this.resizeHandler))},mxSwimlaneManager.prototype.isSwimlaneIgnored=function(e){return!this.getGraph().isSwimlane(e)},mxSwimlaneManager.prototype.isCellHorizontal=function(e){if(this.graph.isSwimlane(e)){var t=this.graph.view.getState(e);return e=null!=t?t.style:this.graph.getCellStyle(e),1==mxUtils.getValue(e,mxConstants.STYLE_HORIZONTAL,1)}return!this.isHorizontal()},mxSwimlaneManager.prototype.cellsAdded=function(e){if(null!=e){var t=this.getGraph().getModel();t.beginUpdate();try{for(var n=0;n<e.length;n++)this.isSwimlaneIgnored(e[n])||this.swimlaneAdded(e[n])}finally{t.endUpdate()}}},mxSwimlaneManager.prototype.swimlaneAdded=function(e){for(var t=this.getGraph().getModel(),n=t.getParent(e),a=t.getChildCount(n),i=null,o=0;o<a;o++){var s=t.getChildAt(n,o);if(s!=e&&!this.isSwimlaneIgnored(s)&&null!=(i=t.getGeometry(s)))break}null!=i&&this.resizeSwimlane(e,i.width,i.height)},mxSwimlaneManager.prototype.cellsResized=function(e){if(null!=e){var t=this.getGraph().getModel();t.beginUpdate();try{for(var n=0;n<e.length;n++)if(!this.isSwimlaneIgnored(e[n])){var a=t.getGeometry(e[n]);if(null!=a){for(var i=new mxRectangle(0,0,a.width,a.height),o=s=e[n];null!=o;){var s=o,o=t.getParent(o),r=this.graph.isSwimlane(o)?this.graph.getStartSize(o):new mxRectangle;i.width+=r.width,i.height+=r.height}this.resizeSwimlane(s,i.width,i.height)}}}finally{t.endUpdate()}}},mxSwimlaneManager.prototype.resizeSwimlane=function(e,t,n){var a=this.getGraph().getModel();a.beginUpdate();try{if(!this.isSwimlaneIgnored(e)&&null!=(r=a.getGeometry(e))){var i=this.isCellHorizontal(e);(i&&r.height!=n||!i&&r.width!=t)&&(r=r.clone(),i?r.height=n:r.width=t,a.setGeometry(e,r))}var o=this.graph.isSwimlane(e)?this.graph.getStartSize(e):new mxRectangle;t-=o.width,n-=o.height;for(var s=a.getChildCount(e),r=0;r<s;r++){var l=a.getChildAt(e,r);this.resizeSwimlane(l,t,n)}}finally{a.endUpdate()}},mxSwimlaneManager.prototype.destroy=function(){this.setGraph(null)},mxTemporaryCellStates.prototype.view=null,mxTemporaryCellStates.prototype.oldStates=null,mxTemporaryCellStates.prototype.oldBounds=null,mxTemporaryCellStates.prototype.oldScale=null,mxTemporaryCellStates.prototype.destroy=function(){this.view.setScale(this.oldScale),this.view.setStates(this.oldStates),this.view.setGraphBounds(this.oldBounds)},mxCellStatePreview.prototype.graph=null,mxCellStatePreview.prototype.deltas=null,mxCellStatePreview.prototype.count=0,mxCellStatePreview.prototype.isEmpty=function(){return 0==this.count},mxCellStatePreview.prototype.moveState=function(e,t,n,a,i){a=null==a||a,i=null==i||i;var o=mxCellPath.create(e.cell),s=this.deltas[o];return null==s?(s=new mxPoint(t,n),this.deltas[o]=s,this.count++):a?(s.X+=t,s.Y+=n):(s.X=t,s.Y=n),i&&this.addEdges(e),s},mxCellStatePreview.prototype.show=function(e){var t,n=this.graph.getModel(),a=n.getRoot();for(t in this.deltas){var i=mxCellPath.resolve(a,t),o=this.graph.view.getState(i),s=this.deltas[t],i=this.graph.view.getState(n.getParent(i));this.translateState(i,o,s.x,s.y)}for(t in this.deltas)i=mxCellPath.resolve(a,t),o=this.graph.view.getState(i),s=this.deltas[t],i=this.graph.view.getState(n.getParent(i)),this.revalidateState(i,o,s.x,s.y,e)},mxCellStatePreview.prototype.translateState=function(e,t,n,a){if(null!=t){var i=this.graph.getModel();if(i.isVertex(t.cell)){t.invalid=!0,this.graph.view.validateBounds(e,t.cell),e=i.getGeometry(t.cell);var o=mxCellPath.create(t.cell);0==n&&0==a||null==e||e.relative&&null==this.deltas[o]||(t.x+=n,t.y+=a)}for(e=i.getChildCount(t.cell),o=0;o<e;o++)this.translateState(t,this.graph.view.getState(i.getChildAt(t.cell,o)),n,a)}},mxCellStatePreview.prototype.revalidateState=function(e,t,n,a,i){if(null!=t){t.invalid=!0,this.graph.view.validatePoints(e,t.cell);var o=mxCellPath.create(t.cell),s=this.graph.getModel(),r=this.graph.getCellGeometry(t.cell);for(0==n&&0==a||null==r||!r.relative||!s.isVertex(t.cell)||null!=e&&!s.isVertex(e.cell)&&null==this.deltas[o]||(t.x+=n,t.y+=a,this.graph.cellRenderer.redraw(t)),null!=i&&i(t),e=s.getChildCount(t.cell),o=0;o<e;o++)this.revalidateState(t,this.graph.view.getState(s.getChildAt(t.cell,o)),n,a,i)}},mxCellStatePreview.prototype.addEdges=function(e){for(var t=this.graph.getModel(),n=t.getEdgeCount(e.cell),a=0;a<n;a++){var i=this.graph.view.getState(t.getEdgeAt(e.cell,a));null!=i&&this.moveState(i,0,0)}},mxConnectionConstraint.prototype.point=null,mxConnectionConstraint.prototype.perimeter=null,mxGraphHandler.prototype.graph=null,mxGraphHandler.prototype.maxCells=mxClient.IS_IE?20:50,mxGraphHandler.prototype.enabled=!0,mxGraphHandler.prototype.highlightEnabled=!0,mxGraphHandler.prototype.cloneEnabled=!0,mxGraphHandler.prototype.moveEnabled=!0,mxGraphHandler.prototype.guidesEnabled=!1,mxGraphHandler.prototype.guide=null,mxGraphHandler.prototype.currentDx=null,mxGraphHandler.prototype.currentDy=null,mxGraphHandler.prototype.updateCursor=!0,mxGraphHandler.prototype.selectEnabled=!0,mxGraphHandler.prototype.removeCellsFromParent=!0,mxGraphHandler.prototype.connectOnDrop=!1,mxGraphHandler.prototype.scrollOnMove=!0,mxGraphHandler.prototype.minimumSize=6,mxGraphHandler.prototype.previewColor="black",mxGraphHandler.prototype.htmlPreview=!1,mxGraphHandler.prototype.shape=null,mxGraphHandler.prototype.scaleGrid=!1,mxGraphHandler.prototype.rotationEnabled=!0,mxGraphHandler.prototype.isEnabled=function(){return this.enabled},mxGraphHandler.prototype.setEnabled=function(e){this.enabled=e},mxGraphHandler.prototype.isCloneEnabled=function(){return this.cloneEnabled},mxGraphHandler.prototype.setCloneEnabled=function(e){this.cloneEnabled=e},mxGraphHandler.prototype.isMoveEnabled=function(){return this.moveEnabled},mxGraphHandler.prototype.setMoveEnabled=function(e){this.moveEnabled=e},mxGraphHandler.prototype.isSelectEnabled=function(){return this.selectEnabled},mxGraphHandler.prototype.setSelectEnabled=function(e){this.selectEnabled=e},mxGraphHandler.prototype.isRemoveCellsFromParent=function(){return this.removeCellsFromParent},mxGraphHandler.prototype.setRemoveCellsFromParent=function(e){this.removeCellsFromParent=e},mxGraphHandler.prototype.getInitialCellForEvent=function(e){return e.getCell()},mxGraphHandler.prototype.isDelayedSelection=function(e){return this.graph.isCellSelected(e)},mxGraphHandler.prototype.mouseDown=function(e,t){if(!t.isConsumed()&&this.isEnabled()&&this.graph.isEnabled()&&!this.graph.isForceMarqueeEvent(t.getEvent())&&null!=t.getState()){var n=this.getInitialCellForEvent(t);if(this.cell=null,this.delayedSelection=this.isDelayedSelection(n),this.isSelectEnabled()&&!this.delayedSelection&&this.graph.selectCellForEvent(n,t.getEvent()),this.isMoveEnabled()){var a=this.graph.model,i=a.getGeometry(n);this.graph.isCellMovable(n)&&(!a.isEdge(n)||1<this.graph.getSelectionCount()||null!=i.points&&0<i.points.length||null==a.getTerminal(n,!0)||null==a.getTerminal(n,!1)||this.graph.allowDanglingEdges||this.graph.isCloneEvent(t.getEvent())&&this.graph.isCellsCloneable())&&this.start(n,t.getX(),t.getY()),this.cellWasClicked=!0,!mxClient.IS_SF&&!mxClient.IS_GC||"SELECT"!=t.getSource().nodeName?t.consume():mxClient.IS_SF&&"SELECT"==t.getSource().nodeName&&(this.cellWasClicked=!1,this.first=null)}}},mxGraphHandler.prototype.getGuideStates=function(){var e=this.graph.getDefaultParent(),t=this.graph.getModel(),n=mxUtils.bind(this,function(e){return null!=this.graph.view.getState(e)&&t.isVertex(e)&&null!=t.getGeometry(e)&&!t.getGeometry(e).relative});return this.graph.view.getCellStates(t.filterDescendants(n,e))},mxGraphHandler.prototype.getCells=function(e){return!this.delayedSelection&&this.graph.isCellMovable(e)?[e]:this.graph.getMovableCells(this.graph.getSelectionCells())},mxGraphHandler.prototype.getPreviewBounds=function(e){return null!=(e=this.getBoundingBox(e))&&(e.grow(-1,-1),e.width<this.minimumSize&&(e.x-=(this.minimumSize-e.width)/2,e.width=this.minimumSize),e.height<this.minimumSize&&(e.y-=(this.minimumSize-e.height)/2,e.height=this.minimumSize)),e},mxGraphHandler.prototype.getBoundingBox=function(e){var t=null;if(null!=e&&0<e.length)for(var n=this.graph.getModel(),a=0;a<e.length;a++)if(n.isVertex(e[a])||n.isEdge(e[a])){var i=this.graph.view.getState(e[a]);if(null!=i){var o=i;n.isVertex(e[a])&&null!=i.shape&&null!=i.shape.boundingBox&&(o=i.shape.boundingBox),null==t?t=new mxRectangle(o.x,o.y,o.width,o.height):t.add(o)}}return t},mxGraphHandler.prototype.createPreviewShape=function(e){return e=new mxRectangleShape(e,null,this.previewColor),e.isDashed=!0,this.htmlPreview?(e.dialect=mxConstants.DIALECT_STRICTHTML,e.init(this.graph.container)):(e.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,e.init(this.graph.getView().getOverlayPane()),e.pointerEvents=!1),e},mxGraphHandler.prototype.start=function(e,t,n){this.cell=e,this.first=mxUtils.convertPoint(this.graph.container,t,n),this.cells=this.getCells(this.cell),this.bounds=this.graph.getView().getBounds(this.cells),this.pBounds=this.getPreviewBounds(this.cells),this.guidesEnabled&&(this.guide=new mxGuide(this.graph,this.getGuideStates()))},mxGraphHandler.prototype.useGuidesForEvent=function(e){return null==this.guide||this.guide.isEnabledForEvent(e.getEvent())},mxGraphHandler.prototype.snap=function(e){var t=this.scaleGrid?this.graph.view.scale:1;return e.x=this.graph.snap(e.x/t)*t,e.y=this.graph.snap(e.y/t)*t,e},mxGraphHandler.prototype.mouseMove=function(e,t){var n=this.graph;if(!t.isConsumed()&&n.isMouseDown&&null!=this.cell&&null!=this.first&&null!=this.bounds){var a=(o=mxUtils.convertPoint(n.container,t.getX(),t.getY())).x-this.first.x,i=o.y-this.first.y,o=n.tolerance;if(null!=this.shape||Math.abs(a)>o||Math.abs(i)>o){null==this.highlight&&(this.highlight=new mxCellHighlight(this.graph,mxConstants.DROP_TARGET_COLOR,3)),null==this.shape&&(this.shape=this.createPreviewShape(this.bounds));var s=n.isGridEnabledEvent(t.getEvent()),o=!0;if(null!=this.guide&&this.useGuidesForEvent(t))i=this.guide.move(this.bounds,new mxPoint(a,i),s),o=!1,a=i.x,i=i.y;else if(s)var r=n.getView().translate,l=n.getView().scale,s=this.bounds.x-(n.snap(this.bounds.x/l-r.x)+r.x)*l,r=this.bounds.y-(n.snap(this.bounds.y/l-r.y)+r.y)*l,i=this.snap(new mxPoint(a,i)),a=i.x-s,i=i.y-r;for(null!=this.guide&&o&&this.guide.hide(),n.isConstrainedEvent(t.getEvent())&&(Math.abs(a)>Math.abs(i)?i=0:a=0),this.currentDx=a,this.currentDy=i,this.updatePreviewShape(),o=null,i=t.getCell(),n.isDropEnabled()&&this.highlightEnabled&&(o=n.getDropTarget(this.cells,t.getEvent(),i)),s=o,r=n.getModel();null!=s&&s!=this.cells[0];)s=r.getParent(s);var l=n.isCloneEvent(t.getEvent())&&n.isCellsCloneable()&&this.isCloneEnabled(),d=!1;null==(a=n.getView().getState(o))||null!=s||r.getParent(this.cell)==o&&!l?(this.target=null,this.connectOnDrop&&null!=i&&1==this.cells.length&&n.getModel().isVertex(i)&&n.isCellConnectable(i)&&null!=(a=n.getView().getState(i))&&(n=null==n.getEdgeValidationError(null,this.cell,i)?mxConstants.VALID_COLOR:mxConstants.INVALID_CONNECT_TARGET_COLOR,this.setHighlightColor(n),d=!0)):(this.target!=o&&(this.target=o,this.setHighlightColor(mxConstants.DROP_TARGET_COLOR)),d=!0),null!=a&&d?this.highlight.highlight(a):this.highlight.hide()}t.consume(),mxEvent.consume(t.getEvent())}else!this.isMoveEnabled()&&!this.isCloneEnabled()||!this.updateCursor||t.isConsumed()||null==t.getState()||n.isMouseDown||(null==(a=n.getCursorForCell(t.getCell()))&&n.isEnabled()&&n.isCellMovable(t.getCell())&&(a=n.getModel().isEdge(t.getCell())?mxConstants.CURSOR_MOVABLE_EDGE:mxConstants.CURSOR_MOVABLE_VERTEX),t.getState().setCursor(a),t.consume())},mxGraphHandler.prototype.updatePreviewShape=function(){null!=this.shape&&(this.shape.bounds=new mxRectangle(Math.round(this.pBounds.x+this.currentDx-this.graph.panDx),Math.round(this.pBounds.y+this.currentDy-this.graph.panDy),this.pBounds.width,this.pBounds.height),this.shape.redraw())},mxGraphHandler.prototype.setHighlightColor=function(e){null!=this.highlight&&this.highlight.setHighlightColor(e)},mxGraphHandler.prototype.mouseUp=function(e,t){if(!t.isConsumed()){var n=this.graph;if(null!=this.cell&&null!=this.first&&null!=this.shape&&null!=this.currentDx&&null!=this.currentDy){var a=n.getView().scale,i=n.isCloneEvent(t.getEvent())&&n.isCellsCloneable()&&this.isCloneEnabled(),o=this.currentDx/a,a=this.currentDy/a,s=t.getCell();this.connectOnDrop&&null==this.target&&null!=s&&n.getModel().isVertex(s)&&n.isCellConnectable(s)&&n.isEdgeValid(null,this.cell,s)?n.connectionHandler.connect(this.cell,s,t.getEvent()):(s=this.target,n.isSplitEnabled()&&n.isSplitTarget(s,this.cells,t.getEvent())?n.splitEdge(s,this.cells,null,o,a):this.moveCells(this.cells,o,a,i,this.target,t.getEvent()))}else this.isSelectEnabled()&&this.delayedSelection&&null!=this.cell&&this.selectDelayed(t)}this.cellWasClicked&&t.consume(),this.reset()},mxGraphHandler.prototype.selectDelayed=function(e){this.graph.selectCellForEvent(this.cell,e.getEvent())},mxGraphHandler.prototype.reset=function(){this.destroyShapes(),this.delayedSelection=this.cellWasClicked=!1,this.target=this.cell=this.first=this.guides=this.currentDy=this.currentDx=null},mxGraphHandler.prototype.shouldRemoveCellsFromParent=function(e,t,n){if(this.graph.getModel().isVertex(e)){if(e=this.graph.getView().getState(e),n=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(n),mxEvent.getClientY(n)),0!=(a=mxUtils.toRadians(mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION)||0))){t=Math.cos(-a);var a=Math.sin(-a),i=new mxPoint(e.getCenterX(),e.getCenterY());n=mxUtils.getRotatedPoint(n,t,a,i)}return null!=e&&!mxUtils.contains(e,n.x,n.y)}return!1},mxGraphHandler.prototype.moveCells=function(e,t,n,a,i,o){a&&(e=this.graph.getCloneableCells(e)),null==i&&this.isRemoveCellsFromParent()&&this.shouldRemoveCellsFromParent(this.graph.getModel().getParent(this.cell),e,o)&&(i=this.graph.getDefaultParent()),e=this.graph.moveCells(e,t-this.graph.panDx/this.graph.view.scale,n-this.graph.panDy/this.graph.view.scale,a,i,o),this.isSelectEnabled()&&this.scrollOnMove&&this.graph.scrollCellToVisible(e[0]),a&&this.graph.setSelectionCells(e)},mxGraphHandler.prototype.destroyShapes=function(){null!=this.shape&&(this.shape.destroy(),this.shape=null),null!=this.guide&&(this.guide.destroy(),this.guide=null),null!=this.highlight&&(this.highlight.destroy(),this.highlight=null)},mxGraphHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),this.graph.removeListener(this.panHandler),this.destroyShapes()},mxPanningHandler.prototype=new mxPopupMenu,mxPanningHandler.prototype.constructor=mxPanningHandler,mxPanningHandler.prototype.graph=null,mxPanningHandler.prototype.triggerX=null,mxPanningHandler.prototype.triggerY=null,mxPanningHandler.prototype.usePopupTrigger=!0,mxPanningHandler.prototype.useLeftButtonForPanning=!1,mxPanningHandler.prototype.selectOnPopup=!0,mxPanningHandler.prototype.clearSelectionOnBackground=!0,mxPanningHandler.prototype.ignoreCell=!1,mxPanningHandler.prototype.previewEnabled=!0,mxPanningHandler.prototype.useGrid=!1,mxPanningHandler.prototype.panningEnabled=!0,mxPanningHandler.prototype.isPanningEnabled=function(){return this.panningEnabled},mxPanningHandler.prototype.setPanningEnabled=function(e){this.panningEnabled=e},mxPanningHandler.prototype.init=function(){mxPopupMenu.prototype.init.apply(this),mxEvent.addListener(this.div,mxClient.IS_TOUCH?"touchmove":"mousemove",mxUtils.bind(this,function(e){this.graph.tooltipHandler.hide()}))},mxPanningHandler.prototype.isPanningTrigger=function(e){var t=e.getEvent();return this.useLeftButtonForPanning&&(this.ignoreCell||null==e.getState())&&mxEvent.isLeftMouseButton(t)||mxEvent.isControlDown(t)&&mxEvent.isShiftDown(t)||this.usePopupTrigger&&mxEvent.isPopupTrigger(t)},mxPanningHandler.prototype.mouseDown=function(e,t){if(!t.isConsumed()&&this.isEnabled()){this.hideMenu(),this.dx0=-this.graph.container.scrollLeft,this.dy0=-this.graph.container.scrollTop;var n=mxUtils.convertPoint(this.graph.container,t.getX(),t.getY());this.triggerX=n.x,this.triggerY=n.y,this.popupTrigger=this.isPopupTrigger(t),this.panningTrigger=this.isPanningEnabled()&&this.isPanningTrigger(t),this.startX=t.getX(),this.startY=t.getY(),this.panningTrigger&&this.consumePanningTrigger(t)}},mxPanningHandler.prototype.consumePanningTrigger=function(e){e.consume()},mxPanningHandler.prototype.mouseMove=function(e,t){var n=t.getX()-this.startX,a=t.getY()-this.startY;if(this.active)this.previewEnabled&&(this.useGrid&&(n=this.graph.snap(n),a=this.graph.snap(a)),this.graph.panGraph(n+this.dx0,a+this.dy0)),this.fireEvent(new mxEventObject(mxEvent.PAN,"event",t)),t.consume();else if(this.panningTrigger){var i=this.active;this.active=Math.abs(n)>this.graph.tolerance||Math.abs(a)>this.graph.tolerance,!i&&this.active&&this.fireEvent(new mxEventObject(mxEvent.PAN_START,"event",t))}},mxPanningHandler.prototype.mouseUp=function(e,t){var n=Math.abs(t.getX()-this.startX),a=Math.abs(t.getY()-this.startY);if(this.active){if(!this.graph.useScrollbarsForPanning||!mxUtils.hasScrollbars(this.graph.container)){n=t.getX()-this.startX,a=t.getY()-this.startY,this.useGrid&&(n=this.graph.snap(n),a=this.graph.snap(a));var i=this.graph.getView().scale,o=this.graph.getView().translate;this.graph.panGraph(0,0),this.panGraph(o.x+n/i,o.y+a/i)}this.active=!1,this.fireEvent(new mxEventObject(mxEvent.PAN_END,"event",t)),t.consume()}else this.popupTrigger&&n<this.graph.tolerance&&a<this.graph.tolerance&&(n=this.getCellForPopupEvent(t),this.graph.isEnabled()&&this.selectOnPopup&&null!=n&&!this.graph.isCellSelected(n)?this.graph.setSelectionCell(n):this.clearSelectionOnBackground&&null==n&&this.graph.clearSelection(),this.graph.tooltipHandler.hide(),a=mxUtils.getScrollOrigin(),a=new mxPoint(t.getX()+a.x,t.getY()+a.y),this.popup(a.x+1,a.y+1,n,t.getEvent()),t.consume());this.popupTrigger=this.panningTrigger=!1},mxPanningHandler.prototype.getCellForPopupEvent=function(e){return e.getCell()},mxPanningHandler.prototype.panGraph=function(e,t){this.graph.getView().setTranslate(e,t)},mxPanningHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),mxPopupMenu.prototype.destroy.apply(this)},mxUtils.extend(mxCellMarker,mxEventSource),mxCellMarker.prototype.graph=null,mxCellMarker.prototype.enabled=!0,mxCellMarker.prototype.hotspot=mxConstants.DEFAULT_HOTSPOT,mxCellMarker.prototype.hotspotEnabled=!1,mxCellMarker.prototype.validColor=null,mxCellMarker.prototype.invalidColor=null,mxCellMarker.prototype.currentColor=null,mxCellMarker.prototype.validState=null,mxCellMarker.prototype.markedState=null,mxCellMarker.prototype.setEnabled=function(e){this.enabled=e},mxCellMarker.prototype.isEnabled=function(){return this.enabled},mxCellMarker.prototype.setHotspot=function(e){this.hotspot=e},mxCellMarker.prototype.getHotspot=function(){return this.hotspot},mxCellMarker.prototype.setHotspotEnabled=function(e){this.hotspotEnabled=e},mxCellMarker.prototype.isHotspotEnabled=function(){return this.hotspotEnabled},mxCellMarker.prototype.hasValidState=function(){return null!=this.validState},mxCellMarker.prototype.getValidState=function(){return this.validState},mxCellMarker.prototype.getMarkedState=function(){return this.markedState},mxCellMarker.prototype.reset=function(){this.validState=null,null!=this.markedState&&(this.markedState=null,this.unmark())},mxCellMarker.prototype.process=function(e){var t=null;if(this.isEnabled()){var n=null!=(t=this.getState(e))&&this.isValidState(t);e=this.getMarkerColor(e.getEvent(),t,n),this.validState=n?t:null,t==this.markedState&&e==this.currentColor||(this.currentColor=e,null!=t&&null!=this.currentColor?(this.markedState=t,this.mark()):null!=this.markedState&&(this.markedState=null,this.unmark()))}return t},mxCellMarker.prototype.markCell=function(e,t){var n=this.graph.getView().getState(e);null!=n&&(this.currentColor=null!=t?t:this.validColor,this.markedState=n,this.mark())},mxCellMarker.prototype.mark=function(){this.highlight.setHighlightColor(this.currentColor),this.highlight.highlight(this.markedState),this.fireEvent(new mxEventObject(mxEvent.MARK,"state",this.markedState))},mxCellMarker.prototype.unmark=function(){this.mark()},mxCellMarker.prototype.isValidState=function(e){return!0},mxCellMarker.prototype.getMarkerColor=function(e,t,n){return n?this.validColor:this.invalidColor},mxCellMarker.prototype.getState=function(e){var t=this.graph.getView();return cell=this.getCell(e),t=this.getStateToMark(t.getState(cell)),null!=t&&this.intersects(t,e)?t:null},mxCellMarker.prototype.getCell=function(e){return e.getCell()},mxCellMarker.prototype.getStateToMark=function(e){return e},mxCellMarker.prototype.intersects=function(e,t){return!this.hotspotEnabled||mxUtils.intersectsHotspot(e,t.getGraphX(),t.getGraphY(),this.hotspot,mxConstants.MIN_HOTSPOT_SIZE,mxConstants.MAX_HOTSPOT_SIZE)},mxCellMarker.prototype.destroy=function(){this.graph.getView().removeListener(this.resetHandler),this.graph.getModel().removeListener(this.resetHandler),this.highlight.destroy()},mxUtils.extend(mxSelectionCellsHandler,mxEventSource),mxSelectionCellsHandler.prototype.graph=null,mxSelectionCellsHandler.prototype.enabled=!0,mxSelectionCellsHandler.prototype.refreshHandler=null,mxSelectionCellsHandler.prototype.maxHandlers=100,mxSelectionCellsHandler.prototype.handlers=null,mxSelectionCellsHandler.prototype.isEnabled=function(){return this.enabled},mxSelectionCellsHandler.prototype.setEnabled=function(e){this.enabled=e},mxSelectionCellsHandler.prototype.getHandler=function(e){return this.handlers.get(e)},mxSelectionCellsHandler.prototype.reset=function(){this.handlers.visit(function(e,t){t.reset.apply(t)})},mxSelectionCellsHandler.prototype.refresh=function(){var e=this.handlers;this.handlers=new mxDictionary;for(var t=this.graph.getSelectionCells(),n=0;n<t.length;n++){var a=this.graph.view.getState(t[n]);if(null!=a){var i=e.remove(t[n]);null!=i&&(i.state!=a?(i.destroy(),i=null):i.redraw()),null==i&&(i=this.graph.createHandler(a),this.fireEvent(new mxEventObject(mxEvent.ADD,"state",a))),null!=i&&this.handlers.put(t[n],i)}}e.visit(mxUtils.bind(this,function(e,t){this.fireEvent(new mxEventObject(mxEvent.REMOVE,"state",t.state)),t.destroy()}))},mxSelectionCellsHandler.prototype.mouseDown=function(e,t){if(this.graph.isEnabled()&&this.isEnabled()){var n=[e,t];this.handlers.visit(function(e,t){t.mouseDown.apply(t,n)})}},mxSelectionCellsHandler.prototype.mouseMove=function(e,t){if(this.graph.isEnabled()&&this.isEnabled()){var n=[e,t];this.handlers.visit(function(e,t){t.mouseMove.apply(t,n)})}},mxSelectionCellsHandler.prototype.mouseUp=function(e,t){if(this.graph.isEnabled()&&this.isEnabled()){var n=[e,t];this.handlers.visit(function(e,t){t.mouseUp.apply(t,n)})}},mxSelectionCellsHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),null!=this.refreshHandler&&(this.graph.getSelectionModel().removeListener(this.refreshHandler),this.graph.getModel().removeListener(this.refreshHandler),this.graph.getView().removeListener(this.refreshHandler),this.refreshHandler=null)},mxUtils.extend(mxConnectionHandler,mxEventSource),mxConnectionHandler.prototype.graph=null,mxConnectionHandler.prototype.factoryMethod=!0,mxConnectionHandler.prototype.moveIconFront=!1,mxConnectionHandler.prototype.moveIconBack=!1,mxConnectionHandler.prototype.connectImage=null,mxConnectionHandler.prototype.targetConnectImage=!1,mxConnectionHandler.prototype.enabled=!0,mxConnectionHandler.prototype.select=!0,mxConnectionHandler.prototype.createTarget=!1;mxConnectionHandler.prototype.marker=null,mxConnectionHandler.prototype.constraintHandler=null,mxConnectionHandler.prototype.error=null,mxConnectionHandler.prototype.waypointsEnabled=!1,mxConnectionHandler.prototype.tapAndHoldEnabled=!0,mxConnectionHandler.prototype.tapAndHoldDelay=500,mxConnectionHandler.prototype.tapAndHoldInProgress=!1,mxConnectionHandler.prototype.tapAndHoldValid=!1,mxConnectionHandler.prototype.tapAndHoldTolerance=4,mxConnectionHandler.prototype.initialTouchX=0,mxConnectionHandler.prototype.initialTouchY=0,mxConnectionHandler.prototype.ignoreMouseDown=!1,mxConnectionHandler.prototype.first=null,mxConnectionHandler.prototype.connectIconOffset=new mxPoint(0,mxConstants.TOOLTIP_VERTICAL_OFFSET),mxConnectionHandler.prototype.edgeState=null,mxConnectionHandler.prototype.changeHandler=null,mxConnectionHandler.prototype.drillHandler=null,mxConnectionHandler.prototype.mouseDownCounter=0,mxConnectionHandler.prototype.movePreviewAway=mxClient.IS_VML,mxConnectionHandler.prototype.isEnabled=function(){return this.enabled},mxConnectionHandler.prototype.setEnabled=function(e){this.enabled=e},mxConnectionHandler.prototype.isCreateTarget=function(){return this.createTarget},mxConnectionHandler.prototype.setCreateTarget=function(e){this.createTarget=e},mxConnectionHandler.prototype.createShape=function(){var e=new mxPolyline([],mxConstants.INVALID_COLOR);if(e.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,e.init(this.graph.getView().getOverlayPane()),e.svgStrokeTolerance=0,e.pointerEvents=!1,e.isDashed=!0,this.graph.dialect==mxConstants.DIALECT_SVG)e.node.setAttribute("pointer-events","none");else{var t=mxUtils.bind(this,function(e){return e=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),this.graph.view.getState(this.graph.getCellAt(e.x,e.y))});mxEvent.redirectMouseEvents(e.node,this.graph,t)}return e},mxConnectionHandler.prototype.init=function(){this.graph.addMouseListener(this),this.marker=this.createMarker(),this.constraintHandler=new mxConstraintHandler(this.graph),this.changeHandler=mxUtils.bind(this,function(e){null!=this.iconState&&(this.iconState=this.graph.getView().getState(this.iconState.cell)),null!=this.iconState?this.redrawIcons(this.icons,this.iconState):(this.destroyIcons(this.icons),this.previous=null),this.constraintHandler.reset()}),this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler),this.graph.getView().addListener(mxEvent.SCALE,this.changeHandler),this.graph.getView().addListener(mxEvent.TRANSLATE,this.changeHandler),this.graph.getView().addListener(mxEvent.SCALE_AND_TRANSLATE,this.changeHandler),this.drillHandler=mxUtils.bind(this,function(e){this.destroyIcons(this.icons)}),this.graph.addListener(mxEvent.START_EDITING,this.drillHandler),this.graph.getView().addListener(mxEvent.DOWN,this.drillHandler),this.graph.getView().addListener(mxEvent.UP,this.drillHandler)},mxConnectionHandler.prototype.isConnectableCell=function(e){return!0},mxConnectionHandler.prototype.createMarker=function(){var e=new mxCellMarker(this.graph);return e.hotspotEnabled=!0,e.getCell=mxUtils.bind(this,function(t,n){return n=mxCellMarker.prototype.getCell.apply(e,arguments),this.error=null,this.isConnectableCell(n)?(null!=n?this.isConnecting()?null!=this.previous&&(this.error=this.validateConnection(this.previous.cell,n),null!=this.error&&0==this.error.length&&(n=null,this.isCreateTarget()&&(this.error=null))):this.isValidSource(n)||(n=null):this.isConnecting()&&!this.isCreateTarget()&&!this.graph.allowDanglingEdges&&(this.error=""),n):null}),e.isValidState=mxUtils.bind(this,function(t){return this.isConnecting()?null==this.error:mxCellMarker.prototype.isValidState.apply(e,arguments)}),e.getMarkerColor=mxUtils.bind(this,function(t,n,a){return null==this.connectImage||this.isConnecting()?mxCellMarker.prototype.getMarkerColor.apply(e,arguments):null}),e.intersects=mxUtils.bind(this,function(t,n){return!(null==this.connectImage&&!this.isConnecting())||mxCellMarker.prototype.intersects.apply(e,arguments)}),e},mxConnectionHandler.prototype.start=function(e,t,n,a){this.previous=e,this.first=new mxPoint(t,n),this.edgeState=null!=a?a:this.createEdgeState(null),this.marker.currentColor=this.marker.validColor,this.marker.markedState=e,this.marker.mark(),this.fireEvent(new mxEventObject(mxEvent.START,"state",this.previous))},mxConnectionHandler.prototype.isConnecting=function(){return null!=this.first&&null!=this.shape},mxConnectionHandler.prototype.isValidSource=function(e){return this.graph.isValidSource(e)},mxConnectionHandler.prototype.isValidTarget=function(e){return!0},mxConnectionHandler.prototype.validateConnection=function(e,t){return this.isValidTarget(t)?this.graph.getEdgeValidationError(null,e,t):""},mxConnectionHandler.prototype.getConnectImage=function(e){return this.connectImage},mxConnectionHandler.prototype.isMoveIconToFrontForState=function(e){return null!=e.text&&e.text.node.parentNode==this.graph.container||this.moveIconFront},mxConnectionHandler.prototype.createIcons=function(e){if(null!=(i=this.getConnectImage(e))&&null!=e){this.iconState=e;var t=[],n=new mxImageShape(new mxRectangle(0,0,i.width,i.height),i.src,null,null,0);n.preserveImageAspect=!1,this.isMoveIconToFrontForState(e)?(n.dialect=mxConstants.DIALECT_STRICTHTML,n.init(this.graph.container)):(n.dialect=this.graph.dialect==mxConstants.DIALECT_SVG?mxConstants.DIALECT_SVG:mxConstants.DIALECT_VML,n.init(this.graph.getView().getOverlayPane()),this.moveIconBack&&null!=n.node.previousSibling&&n.node.parentNode.insertBefore(n.node,n.node.parentNode.firstChild)),n.node.style.cursor=mxConstants.CURSOR_CONNECT;var a=mxUtils.bind(this,function(){return null!=this.currentState?this.currentState:e}),i=mxUtils.bind(this,function(e){mxEvent.isConsumed(e)||(this.icon=n,this.graph.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e,a())))});return mxEvent.redirectMouseEvents(n.node,this.graph,a,i),t.push(n),this.redrawIcons(t,this.iconState),t}return null},mxConnectionHandler.prototype.redrawIcons=function(e,t){if(null!=e&&null!=e[0]&&null!=t){var n=this.getIconPosition(e[0],t);e[0].bounds.x=n.x,e[0].bounds.y=n.y,e[0].redraw()}},mxConnectionHandler.prototype.getIconPosition=function(e,t){var n=this.graph.getView().scale,a=t.getCenterX(),i=t.getCenterY();if(this.graph.isSwimlane(t.cell)){var a=0!=(o=this.graph.getStartSize(t.cell)).width?t.x+o.width*n/2:a,i=0!=o.height?t.y+o.height*n/2:i;if(0!=(o=mxUtils.toRadians(mxUtils.getValue(t.style,mxConstants.STYLE_ROTATION)||0)))var n=Math.cos(o),o=Math.sin(o),s=new mxPoint(t.getCenterX(),t.getCenterY()),i=mxUtils.getRotatedPoint(new mxPoint(a,i),n,o,s),a=i.x,i=i.y}return new mxPoint(a-e.bounds.width/2,i-e.bounds.height/2)},mxConnectionHandler.prototype.destroyIcons=function(e){if(null!=e){this.iconState=null;for(var t=0;t<e.length;t++)e[t].destroy()}},mxConnectionHandler.prototype.isStartEvent=function(e){return!this.graph.isForceMarqueeEvent(e.getEvent())&&(null!=this.constraintHandler.currentFocus&&null!=this.constraintHandler.currentConstraint||null!=this.previous&&null==this.error&&(null==this.icons||null!=this.icons&&null!=this.icon))},mxConnectionHandler.prototype.mouseDown=function(e,t){if(this.mouseDownCounter++,this.isEnabled()&&this.graph.isEnabled()&&!t.isConsumed()&&!this.isConnecting()&&this.isStartEvent(t)){if(null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&null!=this.constraintHandler.currentPoint?(this.sourceConstraint=this.constraintHandler.currentConstraint,this.previous=this.constraintHandler.currentFocus,this.first=this.constraintHandler.currentPoint.clone()):this.first=new mxPoint(t.getGraphX(),t.getGraphY()),this.edgeState=this.createEdgeState(t),this.mouseDownCounter=1,this.waypointsEnabled&&null==this.shape&&(this.waypoints=null,this.shape=this.createShape()),null==this.previous&&null!=this.edgeState){var n=this.graph.getPointForEvent(t.getEvent());this.edgeState.cell.geometry.setTerminalPoint(n,!0)}this.fireEvent(new mxEventObject(mxEvent.START,"state",this.previous)),t.consume()}else if(mxClient.IS_TOUCH&&this.tapAndHoldEnabled&&!this.tapAndHoldInProgress&&this.isEnabled()&&this.graph.isEnabled()&&!this.isConnecting()){this.tapAndHoldInProgress=!0,this.initialTouchX=t.getX(),this.initialTouchY=t.getY();var a=this.graph.view.getState(this.marker.getCell(t));this.tapAndHoldThread&&window.clearTimeout(this.tapAndHoldThread),this.tapAndHoldThread=window.setTimeout(mxUtils.bind(this,function(){this.tapAndHoldValid&&this.tapAndHold(t,a),this.tapAndHoldValid=this.tapAndHoldInProgress=!1}),this.tapAndHoldDelay),this.tapAndHoldValid=!0}this.selectedIcon=this.icon,this.icon=null},mxConnectionHandler.prototype.tapAndHold=function(e,t){null!=t&&(this.marker.currentColor=this.marker.validColor,this.marker.markedState=t,this.marker.mark(),this.first=new mxPoint(e.getGraphX(),e.getGraphY()),this.edgeState=this.createEdgeState(e),this.previous=t,this.fireEvent(new mxEventObject(mxEvent.START,"state",this.previous)))},mxConnectionHandler.prototype.isImmediateConnectSource=function(e){return!this.graph.isCellMovable(e.cell)},mxConnectionHandler.prototype.createEdgeState=function(e){return null},mxConnectionHandler.prototype.updateCurrentState=function(e){var t=this.marker.process(e);this.constraintHandler.update(e,null==this.first),this.currentState=t},mxConnectionHandler.prototype.convertWaypoint=function(e){var t=this.graph.getView().getScale(),n=this.graph.getView().getTranslate();e.x=e.x/t-n.x,e.y=e.y/t-n.y},mxConnectionHandler.prototype.mouseMove=function(e,t){if(this.tapAndHoldValid&&(this.tapAndHoldValid=Math.abs(this.initialTouchX-t.getX())<this.tapAndHoldTolerance&&Math.abs(this.initialTouchY-t.getY())<this.tapAndHoldTolerance),t.isConsumed()||!this.ignoreMouseDown&&null==this.first&&this.graph.isMouseDown)this.constraintHandler.reset();else{if(!this.isEnabled()&&null!=this.currentState&&(this.destroyIcons(this.icons),this.currentState=null),(null!=this.first||this.isEnabled()&&this.graph.isEnabled())&&this.updateCurrentState(t),null!=this.first){var n=this.graph.getView().scale,a=null,i=n=new mxPoint(this.graph.snap(t.getGraphX()/n)*n,this.graph.snap(t.getGraphY()/n)*n);null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&null!=this.constraintHandler.currentPoint&&(a=this.constraintHandler.currentConstraint,i=this.constraintHandler.currentPoint.clone());var o=this.first;if(null!=this.selectedIcon){var s=this.selectedIcon.bounds.width,r=this.selectedIcon.bounds.height;null!=this.currentState&&this.targetConnectImage?(s=this.getIconPosition(this.selectedIcon,this.currentState),this.selectedIcon.bounds.x=s.x,this.selectedIcon.bounds.y=s.y):(s=new mxRectangle(t.getGraphX()+this.connectIconOffset.x,t.getGraphY()+this.connectIconOffset.y,s,r),this.selectedIcon.bounds=s),this.selectedIcon.redraw()}if(null!=this.edgeState){if(this.edgeState.absolutePoints=[null,null!=this.currentState?null:i],this.graph.view.updateFixedTerminalPoint(this.edgeState,this.previous,!0,this.sourceConstraint),null!=this.currentState&&(null==a&&(a=this.graph.getConnectionConstraint(this.edgeState,this.previous,!1)),this.edgeState.setAbsoluteTerminalPoint(null,!1),this.graph.view.updateFixedTerminalPoint(this.edgeState,this.currentState,!1,a)),o=null,null!=this.waypoints)for(o=[],i=0;i<this.waypoints.length;i++)a=this.waypoints[i].clone(),this.convertWaypoint(a),o[i]=a;this.graph.view.updatePoints(this.edgeState,o,this.previous,this.currentState),this.graph.view.updateFloatingTerminalPoints(this.edgeState,this.previous,this.currentState),i=this.edgeState.absolutePoints[this.edgeState.absolutePoints.length-1],o=this.edgeState.absolutePoints[0]}else null!=this.currentState&&null==this.constraintHandler.currentConstraint&&null!=(s=this.getTargetPerimeterPoint(this.currentState,t))&&(i=s),null==this.sourceConstraint&&null!=this.previous&&null!=(s=this.getSourcePerimeterPoint(this.previous,null!=this.waypoints&&0<this.waypoints.length?this.waypoints[0]:i,t))&&(o=s);if(null==this.currentState&&this.movePreviewAway){if(s=o,null!=this.edgeState&&2<this.edgeState.absolutePoints.length&&null!=(a=this.edgeState.absolutePoints[this.edgeState.absolutePoints.length-2])&&(s=a),a=i.x-s.x,s=i.y-s.y,0==(r=Math.sqrt(a*a+s*s)))return;i.x-=4*a/r,i.y-=4*s/r}null==this.shape&&(a=Math.abs(n.x-this.first.x),s=Math.abs(n.y-this.first.y),a>this.graph.tolerance||s>this.graph.tolerance)&&(this.shape=this.createShape(),this.updateCurrentState(t)),null!=this.shape&&(null!=this.edgeState?this.shape.points=this.edgeState.absolutePoints:(n=[o],null!=this.waypoints&&(n=n.concat(this.waypoints)),n.push(i),this.shape.points=n),this.drawPreview()),mxEvent.consume(t.getEvent()),t.consume()}else this.isEnabled()&&this.graph.isEnabled()?this.previous!=this.currentState&&null==this.edgeState?(this.destroyIcons(this.icons),this.icons=null,null!=this.currentState&&null==this.error&&(this.icons=this.createIcons(this.currentState),null==this.icons&&(this.currentState.setCursor(mxConstants.CURSOR_CONNECT),t.consume())),this.previous=this.currentState):this.previous==this.currentState&&null!=this.currentState&&null==this.icons&&!this.graph.isMouseDown&&t.consume():this.constraintHandler.reset();if(null!=this.constraintHandler.currentConstraint&&this.marker.reset(),!this.graph.isMouseDown&&null!=this.currentState&&null!=this.icons){for(n=!1,o=t.getSource(),i=0;i<this.icons.length&&!n;i++)n=o==this.icons[i].node||o.parentNode==this.icons[i].node;n||this.updateIcons(this.currentState,this.icons,t)}}},mxConnectionHandler.prototype.getTargetPerimeterPoint=function(e,t){var n=null,a=e.view,i=a.getPerimeterFunction(e);if(null!=i){var o=null!=this.waypoints&&0<this.waypoints.length?this.waypoints[this.waypoints.length-1]:new mxPoint(this.previous.getCenterX(),this.previous.getCenterY());null!=(a=i(a.getPerimeterBounds(e),this.edgeState,o,!1))&&(n=a)}else n=new mxPoint(e.getCenterX(),e.getCenterY());return n},mxConnectionHandler.prototype.getSourcePerimeterPoint=function(e,t,n){n=null;var a=e.view,i=a.getPerimeterFunction(e),o=new mxPoint(e.getCenterX(),e.getCenterY());if(null!=i){var s=mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION,0),r=-s*(Math.PI/180);0!=s&&(t=mxUtils.getRotatedPoint(new mxPoint(t.x,t.y),Math.cos(r),Math.sin(r),o)),null!=(e=i(a.getPerimeterBounds(e),e,t,!1))&&(0!=s&&(e=mxUtils.getRotatedPoint(new mxPoint(e.x,e.y),Math.cos(-r),Math.sin(-r),o)),n=e)}else n=o;return n},mxConnectionHandler.prototype.updateIcons=function(e,t,n){},mxConnectionHandler.prototype.isStopEvent=function(e){return null!=e.getState()},mxConnectionHandler.prototype.addWaypointForEvent=function(e){var t=mxUtils.convertPoint(this.graph.container,e.getX(),e.getY()),n=Math.abs(t.x-this.first.x),t=Math.abs(t.y-this.first.y);(null!=this.waypoints||1<this.mouseDownCounter&&(n>this.graph.tolerance||t>this.graph.tolerance))&&(null==this.waypoints&&(this.waypoints=[]),n=this.graph.view.scale,t=new mxPoint(this.graph.snap(e.getGraphX()/n)*n,this.graph.snap(e.getGraphY()/n)*n),this.waypoints.push(t))},mxConnectionHandler.prototype.mouseUp=function(e,t){if(!t.isConsumed()&&this.isConnecting()){if(this.waypointsEnabled&&!this.isStopEvent(t))return this.addWaypointForEvent(t),void t.consume();if(null==this.error){var n=null!=this.previous?this.previous.cell:null,a=null;null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&(a=this.constraintHandler.currentFocus.cell),null==a&&this.marker.hasValidState()&&(a=this.marker.validState.cell),this.connect(n,a,t.getEvent(),t.getCell())}else null!=this.previous&&null!=this.marker.validState&&this.previous.cell==this.marker.validState.cell&&this.graph.selectCellForEvent(this.marker.source,evt),0<this.error.length&&this.graph.validationAlert(this.error);this.destroyIcons(this.icons),t.consume()}null!=this.first&&this.reset(),this.tapAndHoldValid=this.tapAndHoldInProgress=!1},mxConnectionHandler.prototype.reset=function(){null!=this.shape&&(this.shape.destroy(),this.shape=null),this.destroyIcons(this.icons),this.icons=null,this.marker.reset(),this.constraintHandler.reset(),this.sourceConstraint=this.error=this.previous=this.edgeState=this.selectedIcon=null,this.mouseDownCounter=0,this.icon=this.first=null,this.fireEvent(new mxEventObject(mxEvent.RESET))},mxConnectionHandler.prototype.drawPreview=function(){var e=null==this.error;this.shape.strokewidth=this.getEdgeWidth(e),e=this.getEdgeColor(e),this.shape.stroke=e,this.shape.redraw()},mxConnectionHandler.prototype.getEdgeColor=function(e){return e?mxConstants.VALID_COLOR:mxConstants.INVALID_COLOR},mxConnectionHandler.prototype.getEdgeWidth=function(e){return e?3:1},mxConnectionHandler.prototype.connect=function(e,t,n,a){if(null!=t||this.isCreateTarget()||this.graph.allowDanglingEdges){var i=this.graph.getModel(),o=null;i.beginUpdate();try{if(null!=e&&null==t&&this.isCreateTarget()&&null!=(t=this.createTargetVertex(n,e))){if(null!=(a=this.graph.getDropTarget([t],n,a))&&this.graph.getModel().isEdge(a))a=this.graph.getDefaultParent();else{var s=this.graph.getView().getState(a);if(null!=s){var r=i.getGeometry(t);r.x-=s.origin.x,r.y-=s.origin.y}}this.graph.addCell(t,a)}var l=this.graph.getDefaultParent();if(null!=e&&null!=t&&i.getParent(e)==i.getParent(t)&&i.getParent(i.getParent(e))!=i.getRoot()&&(l=i.getParent(e),null!=e.geometry&&e.geometry.relative&&null!=t.geometry&&t.geometry.relative&&(l=i.getParent(l))),r=s=null,null!=this.edgeState&&(s=this.edgeState.cell.value,r=this.edgeState.cell.style),null!=(o=this.insertEdge(l,null,s,e,t,r))){this.graph.setConnectionConstraint(o,e,!0,this.sourceConstraint),this.graph.setConnectionConstraint(o,t,!1,this.constraintHandler.currentConstraint),null!=this.edgeState&&i.setGeometry(o,this.edgeState.cell.geometry);var d=i.getGeometry(o);if(null==d&&(d=new mxGeometry,d.relative=!0,i.setGeometry(o,d)),null!=this.waypoints&&0<this.waypoints.length){var c=this.graph.view.scale,m=this.graph.view.translate;for(d.points=[],e=0;e<this.waypoints.length;e++){var u=this.waypoints[e];d.points.push(new mxPoint(u.x/c-m.x,u.y/c-m.y))}}null==t&&(u=this.graph.getPointForEvent(n,!1),u.x-=this.graph.panDx/this.graph.view.scale,u.y-=this.graph.panDy/this.graph.view.scale,d.setTerminalPoint(u,!1)),this.fireEvent(new mxEventObject(mxEvent.CONNECT,"cell",o,"event",n,"target",a))}}catch(e){mxLog.show(),mxLog.debug(e.message)}finally{i.endUpdate()}this.select&&this.selectCells(o,t)}},mxConnectionHandler.prototype.selectCells=function(e,t){this.graph.setSelectionCell(e)},mxConnectionHandler.prototype.insertEdge=function(e,t,n,a,i,o){return null==this.factoryMethod?this.graph.insertEdge(e,t,n,a,i,o):(t=this.createEdge(n,a,i,o),t=this.graph.addEdge(t,e,a,i))},mxConnectionHandler.prototype.createTargetVertex=function(e,t){for(var n=this.graph.getCellGeometry(t);null!=n&&n.relative;)t=this.graph.getModel().getParent(t),n=this.graph.getCellGeometry(t);var a=this.graph.cloneCells([t])[0];if(null!=(n=this.graph.getModel().getGeometry(a))){var i=this.graph.getPointForEvent(e);if(n.x=this.graph.snap(i.x-n.width/2)-this.graph.panDx/this.graph.view.scale,n.y=this.graph.snap(i.y-n.height/2)-this.graph.panDy/this.graph.view.scale,null!=this.first){var o=this.graph.view.getState(t);if(null!=o){var s=this.getAlignmentTolerance();Math.abs(this.graph.snap(this.first.x)-this.graph.snap(i.x))<=s?n.x=o.x:Math.abs(this.graph.snap(this.first.y)-this.graph.snap(i.y))<=s&&(n.y=o.y)}}}return a},mxConnectionHandler.prototype.getAlignmentTolerance=function(){return this.graph.isGridEnabled()?this.graph.gridSize:this.graph.tolerance},mxConnectionHandler.prototype.createEdge=function(e,t,n,a){var i=null;return null!=this.factoryMethod&&(i=this.factoryMethod(t,n,a)),null==i&&((i=new mxCell(e||"")).setEdge(!0),i.setStyle(a),e=new mxGeometry,e.relative=!0,i.setGeometry(e)),i},mxConnectionHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),null!=this.shape&&(this.shape.destroy(),this.shape=null),null!=this.marker&&(this.marker.destroy(),this.marker=null),null!=this.constraintHandler&&(this.constraintHandler.destroy(),this.constraintHandler=null),null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.graph.getView().removeListener(this.changeHandler),this.changeHandler=null),null!=this.drillHandler&&(this.graph.removeListener(this.drillHandler),this.graph.getView().removeListener(this.drillHandler),this.drillHandler=null)},mxConstraintHandler.prototype.pointImage=new mxImage(mxClient.imageBasePath+"/point.gif",5,5),mxConstraintHandler.prototype.graph=null,mxConstraintHandler.prototype.enabled=!0,mxConstraintHandler.prototype.highlightColor=mxConstants.DEFAULT_VALID_COLOR,mxConstraintHandler.prototype.isEnabled=function(){return this.enabled},mxConstraintHandler.prototype.setEnabled=function(e){this.enabled=e},mxConstraintHandler.prototype.reset=function(){if(null!=this.focusIcons){for(var e=0;e<this.focusIcons.length;e++)this.focusIcons[e].destroy();this.focusIcons=null}null!=this.focusHighlight&&(this.focusHighlight.destroy(),this.focusHighlight=null),this.focusPoints=this.currentFocus=this.currentPoint=this.currentFocusArea=this.currentConstraint=null},mxConstraintHandler.prototype.getTolerance=function(){return this.graph.getTolerance()},mxConstraintHandler.prototype.getImageForConstraint=function(e,t,n){return this.pointImage},mxConstraintHandler.prototype.isEventIgnored=function(e,t){return!1},mxConstraintHandler.prototype.update=function(e,t){if(this.isEnabled()&&!this.isEventIgnored(e)){var n=this.getTolerance(),a=new mxRectangle(e.getGraphX()-n,e.getGraphY()-n,2*n,2*n),i=null!=e.getCell()&&this.graph.isCellConnectable(e.getCell());if((null==this.currentFocusArea||!mxUtils.intersects(this.currentFocusArea,a)||null!=e.getState()&&null!=this.currentFocus&&i)&&(this.currentFocusArea=null,e.getState()!=this.currentFocus))if(this.currentFocus=null,this.constraints=null!=e.getState()&&i?this.graph.getAllConnectionConstraints(e.getState(),t):null,null!=this.constraints){if(this.currentFocus=e.getState(),this.currentFocusArea=new mxRectangle(e.getState().x,e.getState().y,e.getState().width,e.getState().height),null!=this.focusIcons){for(i=0;i<this.focusIcons.length;i++)this.focusIcons[i].destroy();this.focusPoints=this.focusIcons=null}for(this.focusIcons=[],this.focusPoints=[],i=0;i<this.constraints.length;i++){var o=this.graph.getConnectionPoint(e.getState(),this.constraints[i]),s=this.getImageForConstraint(e.getState(),this.constraints[i],o),r=s.src;(s=new mxImageShape(s=new mxRectangle(o.x-s.width/2,o.y-s.height/2,s.width,s.height),r)).dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_MIXEDHTML:mxConstants.DIALECT_SVG,s.preserveImageAspect=!1,s.init(this.graph.getView().getOverlayPane()),null!=s.node.previousSibling&&s.node.parentNode.insertBefore(s.node,s.node.parentNode.firstChild),r=mxUtils.bind(this,function(){return null!=this.currentFocus?this.currentFocus:e.getState()}),s.redraw(),mxEvent.redirectMouseEvents(s.node,this.graph,r),this.currentFocusArea.add(s.bounds),this.focusIcons.push(s),this.focusPoints.push(o)}this.currentFocusArea.grow(n)}else if(null!=this.focusIcons){for(null!=this.focusHighlight&&(this.focusHighlight.destroy(),this.focusHighlight=null),i=0;i<this.focusIcons.length;i++)this.focusIcons[i].destroy();this.focusPoints=this.focusIcons=null}if(this.currentPoint=this.currentConstraint=null,null!=this.focusIcons&&null!=this.constraints&&(null==e.getState()||this.currentFocus==e.getState()))for(i=0;i<this.focusIcons.length;i++)if(mxUtils.intersects(this.focusIcons[i].bounds,a)){this.currentConstraint=this.constraints[i],this.currentPoint=this.focusPoints[i],(n=this.focusIcons[i].bounds.clone()).grow(mxClient.IS_IE?3:2),mxClient.IS_IE&&(n.width-=1,n.height-=1),null==this.focusHighlight?(n=new mxRectangleShape(n,null,this.highlightColor,3),n.dialect=this.graph.dialect==mxConstants.DIALECT_SVG?mxConstants.DIALECT_SVG:mxConstants.DIALECT_VML,n.init(this.graph.getView().getOverlayPane()),this.focusHighlight=n,r=mxUtils.bind(this,function(){return null!=this.currentFocus?this.currentFocus:e.getState()}),mxEvent.redirectMouseEvents(n.node,this.graph,r)):(this.focusHighlight.bounds=n,this.focusHighlight.redraw());break}null==this.currentConstraint&&null!=this.focusHighlight&&(this.focusHighlight.destroy(),this.focusHighlight=null)}},mxConstraintHandler.prototype.destroy=function(){this.reset()},mxRubberband.prototype.defaultOpacity=20,mxRubberband.prototype.enabled=!0,mxRubberband.prototype.div=null,mxRubberband.prototype.sharedDiv=null,mxRubberband.prototype.currentX=0,mxRubberband.prototype.currentY=0,mxRubberband.prototype.isEnabled=function(){return this.enabled},mxRubberband.prototype.setEnabled=function(e){this.enabled=e},mxRubberband.prototype.mouseDown=function(e,t){if(!t.isConsumed()&&this.isEnabled()&&this.graph.isEnabled()&&(this.graph.isForceMarqueeEvent(t.getEvent())||null==t.getState())){var n=mxUtils.getOffset(this.graph.container),a=mxUtils.getScrollOrigin(this.graph.container);if(a.x-=n.x,a.y-=n.y,this.start(t.getX()+a.x,t.getY()+a.y),mxClient.IS_NS&&!mxClient.IS_SF&&!mxClient.IS_GC){var i=this.graph.container,o=function(e){e=new mxMouseEvent(e);var t=mxUtils.convertPoint(i,e.getX(),e.getY());return e.graphX=t.x,e.graphY=t.y,e};this.dragHandler=mxUtils.bind(this,function(e){this.mouseMove(this.graph,o(e))}),this.dropHandler=mxUtils.bind(this,function(e){this.mouseUp(this.graph,o(e))}),mxEvent.addListener(document,"mousemove",this.dragHandler),mxEvent.addListener(document,"mouseup",this.dropHandler)}t.consume(!1)}},mxRubberband.prototype.start=function(e,t){this.first=new mxPoint(e,t)},mxRubberband.prototype.mouseMove=function(e,t){if(!t.isConsumed()&&null!=this.first){var n=mxUtils.getScrollOrigin(this.graph.container),a=mxUtils.getOffset(this.graph.container);n.x-=a.x,n.y-=a.y;var a=t.getX()+n.x,n=t.getY()+n.y,i=this.first.x-a,o=this.first.y-n,s=this.graph.tolerance;(null!=this.div||Math.abs(i)>s||Math.abs(o)>s)&&(null==this.div&&(this.div=this.createShape()),mxUtils.clearSelection(),this.update(a,n),t.consume())}},mxRubberband.prototype.createShape=function(){return null==this.sharedDiv&&(this.sharedDiv=document.createElement("div"),this.sharedDiv.className="mxRubberband",mxUtils.setOpacity(this.sharedDiv,this.defaultOpacity)),this.graph.container.appendChild(this.sharedDiv),this.sharedDiv},mxRubberband.prototype.mouseUp=function(e,t){var n=null!=this.div;this.reset(),n&&(n=new mxRectangle(this.x,this.y,this.width,this.height),this.graph.selectRegion(n,t.getEvent()),t.consume())},mxRubberband.prototype.reset=function(){null!=this.div&&this.div.parentNode.removeChild(this.div),null!=this.dragHandler&&(mxEvent.removeListener(document,"mousemove",this.dragHandler),this.dragHandler=null),null!=this.dropHandler&&(mxEvent.removeListener(document,"mouseup",this.dropHandler),this.dropHandler=null),this.currentY=this.currentX=0,this.div=this.first=null},mxRubberband.prototype.update=function(e,t){this.currentX=e,this.currentY=t,this.repaint()},mxRubberband.prototype.repaint=function(){if(null!=this.div){var e=this.currentX-this.graph.panDx,t=this.currentY-this.graph.panDy;this.x=Math.min(this.first.x,e),this.y=Math.min(this.first.y,t),this.width=Math.max(this.first.x,e)-this.x,this.height=Math.max(this.first.y,t)-this.y,e=mxClient.IS_VML?this.graph.panDy:0,this.div.style.left=this.x+(mxClient.IS_VML?this.graph.panDx:0)+"px",this.div.style.top=this.y+e+"px",this.div.style.width=Math.max(1,this.width)+"px",this.div.style.height=Math.max(1,this.height)+"px"}},mxRubberband.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,this.graph.removeMouseListener(this),this.graph.removeListener(this.panHandler),this.reset(),null!=this.sharedDiv&&(this.sharedDiv=null))},mxVertexHandler.prototype.graph=null,mxVertexHandler.prototype.state=null,mxVertexHandler.prototype.singleSizer=!1,mxVertexHandler.prototype.index=null,mxVertexHandler.prototype.allowHandleBoundsCheck=!0,mxVertexHandler.prototype.handleImage=null,mxVertexHandler.prototype.tolerance=0,mxVertexHandler.prototype.rotationEnabled=!1,mxVertexHandler.prototype.rotationRaster=!0,mxVertexHandler.prototype.init=function(){if(this.graph=this.state.view.graph,this.selectionBounds=this.getSelectionBounds(this.state),this.bounds=new mxRectangle(this.selectionBounds.x,this.selectionBounds.y,this.selectionBounds.width,this.selectionBounds.height),this.selectionBorder=this.createSelectionShape(this.bounds),this.selectionBorder.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.selectionBorder.pointerEvents=!1,this.selectionBorder.init(this.graph.getView().getOverlayPane()),this.graph.isCellMovable(this.state.cell)&&(this.selectionBorder.node.style.cursor=mxConstants.CURSOR_MOVABLE_VERTEX),mxEvent.redirectMouseEvents(this.selectionBorder.node,this.graph,this.state),0>=mxGraphHandler.prototype.maxCells||this.graph.getSelectionCount()<mxGraphHandler.prototype.maxCells){var e=this.graph.isCellResizable(this.state.cell);if(this.sizers=[],e||this.graph.isLabelMovable(this.state.cell)&&2<=this.state.width&&2<=this.state.height){var t=0;e&&(this.singleSizer||(this.sizers.push(this.createSizer("nw-resize",t++)),this.sizers.push(this.createSizer("n-resize",t++)),this.sizers.push(this.createSizer("ne-resize",t++)),this.sizers.push(this.createSizer("w-resize",t++)),this.sizers.push(this.createSizer("e-resize",t++)),this.sizers.push(this.createSizer("sw-resize",t++)),this.sizers.push(this.createSizer("s-resize",t++))),this.sizers.push(this.createSizer("se-resize",t++))),null!=(e=this.graph.model.getGeometry(this.state.cell))&&!e.relative&&!this.graph.isSwimlane(this.state.cell)&&this.graph.isLabelMovable(this.state.cell)&&(this.labelShape=this.createSizer(mxConstants.CURSOR_LABEL_HANDLE,mxEvent.LABEL_HANDLE,mxConstants.LABEL_HANDLE_SIZE,mxConstants.LABEL_HANDLE_FILLCOLOR),this.sizers.push(this.labelShape))}else this.graph.isCellMovable(this.state.cell)&&!this.graph.isCellResizable(this.state.cell)&&2>this.state.width&&2>this.state.height&&(this.labelShape=this.createSizer(mxConstants.CURSOR_MOVABLE_VERTEX,null,null,mxConstants.LABEL_HANDLE_FILLCOLOR),this.sizers.push(this.labelShape))}this.rotationEnabled&&(0>=mxGraphHandler.prototype.maxCells||this.graph.getSelectionCount()<mxGraphHandler.prototype.maxCells)&&(this.rotationShape=this.createSizer("pointer",mxEvent.ROTATION_HANDLE,mxConstants.HANDLE_SIZE+3,mxConstants.HANDLE_FILLCOLOR),this.sizers.push(this.rotationShape)),this.redraw()},mxVertexHandler.prototype.getSelectionBounds=function(e){return new mxRectangle(Math.round(e.x),Math.round(e.y),Math.round(e.width),Math.round(e.height))},mxVertexHandler.prototype.createSelectionShape=function(e){return e=new mxRectangleShape(e,null,this.getSelectionColor()),e.strokewidth=this.getSelectionStrokeWidth(),e.isDashed=this.isSelectionDashed(),e},mxVertexHandler.prototype.getSelectionColor=function(){return mxConstants.VERTEX_SELECTION_COLOR},mxVertexHandler.prototype.getSelectionStrokeWidth=function(){return mxConstants.VERTEX_SELECTION_STROKEWIDTH},mxVertexHandler.prototype.isSelectionDashed=function(){return mxConstants.VERTEX_SELECTION_DASHED},mxVertexHandler.prototype.createSizer=function(e,t,n,a){return n=n||mxConstants.HANDLE_SIZE,n=new mxRectangle(0,0,n,n),a=this.createSizerShape(n,t,a),a.isHtmlAllowed()&&null!=this.state.text&&this.state.text.node.parentNode==this.graph.container?(a.bounds.height-=1,a.bounds.width-=1,a.dialect=mxConstants.DIALECT_STRICTHTML,a.init(this.graph.container)):(a.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_MIXEDHTML:mxConstants.DIALECT_SVG,a.init(this.graph.getView().getOverlayPane())),mxEvent.redirectMouseEvents(a.node,this.graph,this.state),this.graph.isEnabled()&&(a.node.style.cursor=e),this.isSizerVisible(t)||(a.node.style.visibility="hidden"),a},mxVertexHandler.prototype.isSizerVisible=function(e){return!0},mxVertexHandler.prototype.createSizerShape=function(e,t,n){return null!=this.handleImage?(e.width=this.handleImage.width,e.height=this.handleImage.height,new mxImageShape(e,this.handleImage.src)):t==mxEvent.ROTATION_HANDLE?new mxEllipse(e,n||mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR):new mxRectangleShape(e,n||mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR)},mxVertexHandler.prototype.moveSizerTo=function(e,t,n){null!=e&&(e.bounds.x=Math.round(t-e.bounds.width/2),e.bounds.y=Math.round(n-e.bounds.height/2),e.redraw())},mxVertexHandler.prototype.getHandleForEvent=function(e){if(e.isSource(this.rotationShape))return mxEvent.ROTATION_HANDLE;if(e.isSource(this.labelShape))return mxEvent.LABEL_HANDLE;if(null!=this.sizers)for(var t=this.tolerance,t=this.allowHandleBoundsCheck&&(mxClient.IS_IE||0<t)?new mxRectangle(e.getGraphX()-t,e.getGraphY()-t,2*t,2*t):null,n=0;n<this.sizers.length;n++)if(e.isSource(this.sizers[n])||null!=t&&mxUtils.intersects(this.sizers[n].bounds,t))return n;return null},mxVertexHandler.prototype.mouseDown=function(e,t){if(!t.isConsumed()&&this.graph.isEnabled()&&!this.graph.isForceMarqueeEvent(t.getEvent())&&(0<this.tolerance||t.getState()==this.state)){var n=this.getHandleForEvent(t);null!=n&&(this.start(t.getX(),t.getY(),n),t.consume())}},mxVertexHandler.prototype.start=function(e,t,n){e=mxUtils.convertPoint(this.graph.container,e,t),this.startX=e.x,this.startY=e.y,this.index=n,this.selectionBorder.node.style.display=n==mxEvent.ROTATION_HANDLE?"inline":"none",this.preview=this.createSelectionShape(this.bounds),mxClient.IS_SVG&&0!=Number(this.state.style[mxConstants.STYLE_ROTATION]||"0")||null==this.state.text||this.state.text.node.parentNode!=this.graph.container?(this.preview.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.preview.init(this.graph.view.getOverlayPane())):(this.preview.dialect=mxConstants.DIALECT_STRICTHTML,this.preview.init(this.graph.container))},mxVertexHandler.prototype.mouseMove=function(e,t){if(t.isConsumed()||null==this.index)null!=this.getHandleForEvent(t)&&t.consume(!1);else{var n=new mxPoint(t.getGraphX(),t.getGraphY()),a=this.graph.isGridEnabledEvent(t.getEvent()),i=this.graph.getView().scale;if(this.index==mxEvent.LABEL_HANDLE)a&&(n.x=this.graph.snap(n.x/i)*i,n.y=this.graph.snap(n.y/i)*i),this.moveSizerTo(this.sizers[this.sizers.length-1],n.x,n.y);else if(this.index==mxEvent.ROTATION_HANDLE){var o=this.state.x+this.state.width/2-n.x,s=this.state.y+this.state.height/2-n.y;this.currentAlpha=0!=o?180*Math.atan(s/o)/Math.PI+90:0>s?180:0,0<o&&(this.currentAlpha-=180),this.rotationRaster&&(o=n.x-this.state.getCenterX(),s=n.y-this.state.getCenterY(),o=Math.abs(Math.sqrt(o*o+s*s)-this.state.height/2-20),o=Math.max(1,5*Math.min(3,Math.max(0,Math.round(80/Math.abs(o))))),this.currentAlpha=Math.round(this.currentAlpha/o)*o),this.selectionBorder.rotation=this.currentAlpha,this.selectionBorder.redraw()}else{var r=mxUtils.toRadians(this.state.style[mxConstants.STYLE_ROTATION]||"0"),l=Math.cos(-r),d=Math.sin(-r),c=new mxPoint(this.state.getCenterX(),this.state.getCenterY()),o=n.x-this.startX,s=n.y-this.startY,n=this.graph.view.translate,m=d*o+l*s,o=l*o-d*s;this.bounds=this.union(this.selectionBounds,o,m,this.index,a,i,n),l=Math.cos(r),c=(d=Math.sin(r))*(o=(s=new mxPoint(this.bounds.getCenterX(),this.bounds.getCenterY())).x-c.x)+l*(s=s.y-c.y)-s,this.bounds.x+=l*o-d*s-o,this.bounds.y+=c,this.drawPreview()}t.consume()}},mxVertexHandler.prototype.mouseUp=function(e,t){if(!t.isConsumed()&&null!=this.index&&null!=this.state){s=new mxPoint(t.getGraphX(),t.getGraphY());this.graph.getModel().beginUpdate();try{if(this.index==mxEvent.ROTATION_HANDLE)null!=this.currentAlpha&&this.rotateCell(this.state.cell,this.currentAlpha-(this.state.style[mxConstants.STYLE_ROTATION]||0));else{var n=this.graph.isGridEnabledEvent(t.getEvent()),a=mxUtils.toRadians(this.state.style[mxConstants.STYLE_ROTATION]||"0"),i=Math.cos(-a),o=Math.sin(-a),s=o*(r=s.x-this.startX)+i*(l=s.y-this.startY),r=i*r-o*l,l=s,d=this.graph.view.scale;this.resizeCell(this.state.cell,r/d,l/d,this.index,n)}}finally{this.graph.getModel().endUpdate()}this.reset(),t.consume()}},mxVertexHandler.prototype.rotateCell=function(e,t){var n=this.graph.getModel();if(n.isVertex(e)){var a=e==this.state?this.state:this.graph.view.getState(e);if(null!=a&&this.graph.setCellStyles(mxConstants.STYLE_ROTATION,(a.style[mxConstants.STYLE_ROTATION]||0)+t,[e]),this.state.cell!=e&&null!=(a=this.graph.getCellGeometry(e))&&!a.relative)if(0!=t){var i=this.graph.getModel().getParent(e),o=this.graph.getCellGeometry(i);if(!a.relative&&null!=o){var s=mxUtils.toRadians(t),i=Math.cos(s),s=Math.sin(s),r=new mxPoint(a.getCenterX(),a.getCenterY()),o=new mxPoint(o.width/2,o.height/2),i=mxUtils.getRotatedPoint(r,i,s,o);(a=a.clone()).x=i.x-a.width/2,a.y=i.y-a.height/2,n.setGeometry(e,a)}}else a=a.clone(),a.x+=dx,a.y+=dy,n.setGeometry(e,a);for(a=n.getChildCount(e),i=0;i<a;i++)this.rotateCell(n.getChildAt(e,i),t)}},mxVertexHandler.prototype.reset=function(){this.index=this.currentAlpha=null,null!=this.preview&&(this.preview.destroy(),this.preview=null),null!=this.selectionBorder&&(this.selectionBorder.node.style.display="inline",this.selectionBounds=this.getSelectionBounds(this.state),this.bounds=new mxRectangle(this.selectionBounds.x,this.selectionBounds.y,this.selectionBounds.width,this.selectionBounds.height),this.drawPreview())},mxVertexHandler.prototype.resizeCell=function(e,t,n,a,i){var o=this.graph.model.getGeometry(e);if(null!=o)if(a==mxEvent.LABEL_HANDLE)a=this.graph.view.scale,t=(this.labelShape.bounds.getCenterX()-this.startX)/a,n=(this.labelShape.bounds.getCenterY()-this.startY)/a,o=o.clone(),null==o.offset?o.offset=new mxPoint(t,n):(o.offset.x+=t,o.offset.y+=n),this.graph.model.setGeometry(e,o);else{if(a=this.union(o,t,n,a,i,1,new mxPoint(0,0)),0!=(r=mxUtils.toRadians(this.state.style[mxConstants.STYLE_ROTATION]||"0"))){t=a.getCenterX()-o.getCenterX(),n=a.getCenterY()-o.getCenterY(),i=Math.cos(r);var s=Math.sin(r),r=i*t-s*n-t;t=s*t+i*n-n,n=a.x-o.x;var l=a.y-o.y,d=i*n-s*l;i=s*n+i*l,a.x+=r,a.y+=t,this.graph.isCellCollapsed(e)||0==r&&0==t||(n=o.x-a.x+d,l=o.y-a.y+i,this.moveChildren(e,n,l))}this.graph.resizeCell(e,a)}},mxVertexHandler.prototype.moveChildren=function(e,t,n){for(var a=this.graph.getModel(),i=a.getChildCount(e),o=0;o<i;o++){var s=a.getChildAt(e,o);if(a.isVertex(s)){var r=this.graph.getCellGeometry(s);null!=r&&!r.relative&&(r=r.clone(),r.x+=t,r.y+=n,a.setGeometry(s,r))}}},mxVertexHandler.prototype.union=function(e,t,n,a,i,o,s){if(this.singleSizer){s=e.x+e.width+t;var r=e.y+e.height+n;return i&&(s=this.graph.snap(s/o)*o,r=this.graph.snap(r/o)*o),(o=new mxRectangle(e.x,e.y,0,0)).add(new mxRectangle(s,r,0,0)),o}var l=(r=e.x-s.x*o)+e.width,d=e.y-s.y*o;return e=d+e.height,4<a?(e+=n,i&&(e=this.graph.snap(e/o)*o)):3>a&&(d+=n,i&&(d=this.graph.snap(d/o)*o)),0==a||3==a||5==a?(r+=t,i&&(r=this.graph.snap(r/o)*o)):2!=a&&4!=a&&7!=a||(l+=t,i&&(l=this.graph.snap(l/o)*o)),i=l-r,e-=d,0>i&&(r+=i,i=Math.abs(i)),0>e&&(d+=e,e=Math.abs(e)),new mxRectangle(r+s.x*o,d+s.y*o,i,e)},mxVertexHandler.prototype.redraw=function(){this.selectionBounds=this.getSelectionBounds(this.state),this.bounds=new mxRectangle(this.state.x,this.state.y,this.state.width,this.state.height);var e=this.state;if(null!=this.sizers){var t=e.x+e.width,n=e.y+e.height;if(this.singleSizer)this.moveSizerTo(this.sizers[0],t,n);else{var a=e.x+e.width/2,i=e.y+e.height/2;if(1<this.sizers.length){var o=mxUtils.toRadians(e.style[mxConstants.STYLE_ROTATION]||"0"),s=Math.cos(o),o=Math.sin(o),r=new mxPoint(e.getCenterX(),e.getCenterY()),l=mxUtils.getRotatedPoint(new mxPoint(e.x,e.y),s,o,r);this.moveSizerTo(this.sizers[0],l.x,l.y),l.x=a,l.y=e.y,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[1],l.x,l.y),l.x=t,l.y=e.y,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[2],l.x,l.y),l.x=e.x,l.y=i,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[3],l.x,l.y),l.x=t,l.y=i,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[4],l.x,l.y),l.x=e.x,l.y=n,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[5],l.x,l.y),l.x=a,l.y=n,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[6],l.x,l.y),l.x=t,l.y=n,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[7],l.x,l.y),this.moveSizerTo(this.sizers[8],a+e.absoluteOffset.x,i+e.absoluteOffset.y)}else 2<=this.state.width&&2<=this.state.height?this.moveSizerTo(this.sizers[0],a+e.absoluteOffset.x,i+e.absoluteOffset.y):this.moveSizerTo(this.sizers[0],e.x,e.y)}}null!=this.rotationShape&&(o=mxUtils.toRadians(this.state.style[mxConstants.STYLE_ROTATION]||"0"),s=Math.cos(o),o=Math.sin(o),r=new mxPoint(this.state.getCenterX(),this.state.getCenterY()),l=mxUtils.getRotatedPoint(new mxPoint(e.x+e.width/2,e.y-16),s,o,r),this.moveSizerTo(this.rotationShape,l.x,l.y)),this.selectionBorder.rotation=Number(this.state.style[mxConstants.STYLE_ROTATION]||"0"),this.drawPreview()},mxVertexHandler.prototype.drawPreview=function(){null!=this.preview&&(this.preview.bounds=this.bounds,this.preview.node.parentNode==this.graph.container&&(this.preview.bounds.width=Math.max(0,this.preview.bounds.width-1),this.preview.bounds.height=Math.max(0,this.preview.bounds.height-1)),this.preview.rotation=Number(this.state.style[mxConstants.STYLE_ROTATION]||"0"),this.preview.redraw()),this.selectionBorder.bounds=this.bounds,this.selectionBorder.redraw()},mxVertexHandler.prototype.destroy=function(){if(null!=this.preview&&(this.preview.destroy(),this.preview=null),this.selectionBorder.destroy(),this.labelShape=this.selectionBorder=null,null!=this.sizers)for(var e=0;e<this.sizers.length;e++)this.sizers[e].destroy(),this.sizers[e]=null},mxEdgeHandler.prototype.graph=null,mxEdgeHandler.prototype.state=null,mxEdgeHandler.prototype.marker=null,mxEdgeHandler.prototype.constraintHandler=null,mxEdgeHandler.prototype.error=null,mxEdgeHandler.prototype.shape=null,mxEdgeHandler.prototype.bends=null,mxEdgeHandler.prototype.labelShape=null,mxEdgeHandler.prototype.cloneEnabled=!0,mxEdgeHandler.prototype.addEnabled=!1,mxEdgeHandler.prototype.removeEnabled=!1,mxEdgeHandler.prototype.preferHtml=!1,mxEdgeHandler.prototype.allowHandleBoundsCheck=!0,mxEdgeHandler.prototype.snapToTerminals=!1,mxEdgeHandler.prototype.handleImage=null,mxEdgeHandler.prototype.tolerance=0,mxEdgeHandler.prototype.init=function(){if(this.graph=this.state.view.graph,this.marker=this.createMarker(),this.constraintHandler=new mxConstraintHandler(this.graph),this.points=[],this.abspoints=this.getSelectionPoints(this.state),this.shape=this.createSelectionShape(this.abspoints),this.shape.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_MIXEDHTML:mxConstants.DIALECT_SVG,this.shape.init(this.graph.getView().getOverlayPane()),this.shape.svgStrokeTolerance=0,this.shape.node.style.cursor=mxConstants.CURSOR_MOVABLE_EDGE,mxEvent.addListener(this.shape.node,"dblclick",mxUtils.bind(this,function(e){this.graph.dblClick(e,this.state.cell)})),mxEvent.addGestureListeners(this.shape.node,mxUtils.bind(this,function(e){this.addEnabled&&this.isAddPointEvent(e)?this.addPoint(this.state,e):this.graph.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e,this.state))}),mxUtils.bind(this,function(e){n=this.state.cell;if(null!=this.index){var t=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),n=this.graph.getCellAt(t.x,t.y);this.graph.isSwimlane(n)&&this.graph.hitsSwimlaneContent(n,t.x,t.y)&&(n=null)}this.graph.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(e,this.graph.getView().getState(n)))}),mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(e,this.state))})),this.preferHtml=null!=this.state.text&&this.state.text.node.parentNode==this.graph.container,!this.preferHtml){var e=this.state.getVisibleTerminalState(!0);null!=e&&(this.preferHtml=null!=e.text&&e.text.node.parentNode==this.graph.container),this.preferHtml||null!=(e=this.state.getVisibleTerminalState(!1))&&(this.preferHtml=null!=e.text&&e.text.node.parentNode==this.graph.container)}(this.graph.getSelectionCount()<mxGraphHandler.prototype.maxCells||0>=mxGraphHandler.prototype.maxCells)&&(this.bends=this.createBends()),this.label=new mxPoint(this.state.absoluteOffset.x,this.state.absoluteOffset.y),this.labelShape=new mxRectangleShape(new mxRectangle,mxConstants.LABEL_HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR),this.labelShape.pointerEvents=!1,this.initBend(this.labelShape),this.labelShape.node.style.cursor=mxConstants.CURSOR_LABEL_HANDLE,mxEvent.redirectMouseEvents(this.labelShape.node,this.graph,this.state),this.redraw()},mxEdgeHandler.prototype.isAddPointEvent=function(e){return mxEvent.isShiftDown(e)},mxEdgeHandler.prototype.isRemovePointEvent=function(e){return mxEvent.isShiftDown(e)},mxEdgeHandler.prototype.getSelectionPoints=function(e){return e.absolutePoints},mxEdgeHandler.prototype.createSelectionShape=function(e){return e=new mxPolyline(e,this.getSelectionColor()),e.strokewidth=this.getSelectionStrokeWidth(),e.isDashed=this.isSelectionDashed(),e},mxEdgeHandler.prototype.getSelectionColor=function(){return mxConstants.EDGE_SELECTION_COLOR},mxEdgeHandler.prototype.getSelectionStrokeWidth=function(){return mxConstants.EDGE_SELECTION_STROKEWIDTH},mxEdgeHandler.prototype.isSelectionDashed=function(){return mxConstants.EDGE_SELECTION_DASHED},mxEdgeHandler.prototype.isConnectableCell=function(e){return!0},mxEdgeHandler.prototype.createMarker=function(){var e=new mxCellMarker(this.graph),t=this;return e.getCell=function(e){var n=mxCellMarker.prototype.getCell.apply(this,arguments);if(!t.isConnectableCell(n))return null;var a=t.graph.getModel();return(n==t.state.cell||null!=n&&!t.graph.connectableEdges&&a.isEdge(n))&&(n=null),n},e.isValidState=function(e){var n=t.graph.getModel(),n=null!=(n=t.graph.view.getTerminalPort(e,t.graph.view.getState(n.getTerminal(t.state.cell,!t.isSource)),!t.isSource))?n.cell:null;return t.error=t.validateConnection(t.isSource?e.cell:n,t.isSource?n:e.cell),null==t.error},e},mxEdgeHandler.prototype.validateConnection=function(e,t){return this.graph.getEdgeValidationError(this.state.cell,e,t)},mxEdgeHandler.prototype.createBends=function(){for(var e=this.state.cell,t=[],n=0;n<this.abspoints.length;n++)if(this.isHandleVisible(n)){var a=n==this.abspoints.length-1;if((a=0==n||a)||this.graph.isCellBendable(e)){var i=this.createHandleShape(n);if(this.initBend(i),mxClient.IS_TOUCH&&i.node.setAttribute("pointer-events","none"),this.isHandleEnabled(n))if(mxClient.IS_TOUCH){var o=mxUtils.bind(this,function(e){return e=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),this.graph.view.getState(this.graph.getCellAt(e.x,e.y))});mxEvent.redirectMouseEvents(i.node,this.graph,o)}else i.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(i.node,this.graph,this.state);t.push(i),a||(this.points.push(new mxPoint(0,0)),i.node.style.visibility="hidden")}}return t},mxEdgeHandler.prototype.isHandleEnabled=function(e){return!0},mxEdgeHandler.prototype.isHandleVisible=function(e){return!0},mxEdgeHandler.prototype.createHandleShape=function(e){return null!=this.handleImage?new mxImageShape(new mxRectangle(0,0,this.handleImage.width,this.handleImage.height),this.handleImage.src):(e=mxConstants.HANDLE_SIZE,this.preferHtml&&(e-=1),new mxRectangleShape(new mxRectangle(0,0,e,e),mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR))},mxEdgeHandler.prototype.initBend=function(e){this.preferHtml?(e.dialect=mxConstants.DIALECT_STRICTHTML,e.init(this.graph.container)):(e.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_MIXEDHTML:mxConstants.DIALECT_SVG,e.init(this.graph.getView().getOverlayPane()))},mxEdgeHandler.prototype.getHandleForEvent=function(e){if(null!=this.bends)for(var t=this.tolerance,t=this.allowHandleBoundsCheck&&(mxClient.IS_IE||0<t)?new mxRectangle(e.getGraphX()-t,e.getGraphY()-t,2*t,2*t):null,n=0;n<this.bends.length;n++)if((e.isSource(this.bends[n])||null!=t&&mxUtils.intersects(this.bends[n].bounds,t))&&"hidden"!=this.bends[n].node.style.visibility)return n;return!(e.isSource(this.labelShape)&&"hidden"!=this.labelShape.node.style.visibility||e.isSource(this.state.text))||(mxClient.IS_SF||mxClient.IS_GC)&&"SELECT"==e.getSource().nodeName?null:mxEvent.LABEL_HANDLE},mxEdgeHandler.prototype.mouseDown=function(e,t){var n=null;null!=(n=this.getHandleForEvent(t))&&!t.isConsumed()&&this.graph.isEnabled()&&!this.graph.isForceMarqueeEvent(t.getEvent())&&(this.removeEnabled&&this.isRemovePointEvent(t.getEvent())?this.removePoint(this.state,n):(n!=mxEvent.LABEL_HANDLE||this.graph.isLabelMovable(t.getCell()))&&this.start(t.getX(),t.getY(),n),t.consume())},mxEdgeHandler.prototype.start=function(e,t,n){this.startX=e,this.startY=t,this.isSource=null!=this.bends&&0==n,this.isTarget=null!=this.bends&&n==this.bends.length-1,this.isLabel=n==mxEvent.LABEL_HANDLE,this.isSource||this.isTarget?(e=this.state.cell,(null==(t=this.graph.model.getTerminal(e,this.isSource))&&this.graph.isTerminalPointMovable(e,this.isSource)||null!=t&&this.graph.isCellDisconnectable(e,t,this.isSource))&&(this.index=n)):this.index=n},mxEdgeHandler.prototype.clonePreviewState=function(e,t){return this.state.clone()},mxEdgeHandler.prototype.getSnapToTerminalTolerance=function(){return this.graph.gridSize*this.graph.view.scale/2},mxEdgeHandler.prototype.getPointForEvent=function(e){var t=new mxPoint(e.getGraphX(),e.getGraphY()),n=this.getSnapToTerminalTolerance(),a=this.graph.getView(),i=!1,o=!1;if(this.snapToTerminals&&0<n){var s=function(e){if(null!=e){var a=e.x;Math.abs(t.x-a)<n&&(t.x=a,i=!0),e=e.y,Math.abs(t.y-e)<n&&(t.y=e,o=!0)}},r=function(e){null!=e&&s.call(this,new mxPoint(a.getRoutingCenterX(e),a.getRoutingCenterY(e)))};if(r.call(this,this.state.getVisibleTerminalState(!0)),r.call(this,this.state.getVisibleTerminalState(!1)),null!=this.abspoints)for(r=0;r<this.abspoints;r++)r!=this.index&&s.call(this,this.abspoints[r])}return this.graph.isGridEnabledEvent(e.getEvent())&&(e=a.scale,r=a.translate,i||(t.x=(this.graph.snap(t.x/e-r.x)+r.x)*e),o||(t.y=(this.graph.snap(t.y/e-r.y)+r.y)*e)),t},mxEdgeHandler.prototype.getPreviewTerminalState=function(e){this.constraintHandler.update(e,this.isSource),this.marker.process(e),e=this.marker.getValidState();var t=null;return null!=this.constraintHandler.currentFocus&&null!=this.constraintHandler.currentConstraint&&this.marker.reset(),null!=e?t=e:null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&(t=this.constraintHandler.currentFocus),t},mxEdgeHandler.prototype.getPreviewPoints=function(e){var t=null!=(t=this.graph.getCellGeometry(this.state.cell)).points?t.points.slice():null;return this.isSource||this.isTarget?this.graph.resetEdgesOnConnect&&(t=null):(this.convertPoint(e,!1),null==t?t=[e]:t[this.index-1]=e),t},mxEdgeHandler.prototype.updatePreviewState=function(e,t,n){var a=this.isSource?n:this.state.getVisibleTerminalState(!0),i=this.isTarget?n:this.state.getVisibleTerminalState(!1),o=this.graph.getConnectionConstraint(e,a,!0),s=this.graph.getConnectionConstraint(e,i,!1),r=this.constraintHandler.currentConstraint;null==r&&(r=new mxConnectionConstraint),this.isSource?o=r:this.isTarget&&(s=r),(!this.isSource||null!=a)&&e.view.updateFixedTerminalPoint(e,a,!0,o),(!this.isTarget||null!=i)&&e.view.updateFixedTerminalPoint(e,i,!1,s),(this.isSource||this.isTarget)&&null==n&&(e.setAbsoluteTerminalPoint(t,this.isSource),null==this.marker.getMarkedState()&&(this.error=this.graph.allowDanglingEdges?null:"")),e.view.updatePoints(e,this.points,a,i),e.view.updateFloatingTerminalPoints(e,a,i)},mxEdgeHandler.prototype.mouseMove=function(e,t){if(null!=this.index&&null!=this.marker){var n=this.getPointForEvent(t);if(this.isLabel)this.label.x=n.x,this.label.y=n.y;else{this.points=this.getPreviewPoints(n);var a=this.isSource||this.isTarget?this.getPreviewTerminalState(t):null,i=this.clonePreviewState(n,null!=a?a.cell:null);this.updatePreviewState(i,n,a),this.setPreviewColor(null==this.error?this.marker.validColor:this.marker.invalidColor),this.abspoints=i.absolutePoints,this.active=!0}this.drawPreview(),mxEvent.consume(t.getEvent()),t.consume()}else mxClient.IS_IE&&null!=this.getHandleForEvent(t)&&t.consume(!1)},mxEdgeHandler.prototype.mouseUp=function(e,t){if(null!=this.index&&null!=this.marker){var n=this.state.cell;if(t.getX()!=this.startX||t.getY()!=this.startY)if(null!=this.error)0<this.error.length&&this.graph.validationAlert(this.error);else if(this.isLabel)this.moveLabel(this.state,this.label.x,this.label.y);else if(this.isSource||this.isTarget){var a=null;if(null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&(a=this.constraintHandler.currentFocus.cell),null==a&&this.marker.hasValidState()&&(a=this.marker.validState.cell),null!=a)n=this.connect(n,a,this.isSource,this.graph.isCloneEvent(t.getEvent())&&this.cloneEnabled&&this.graph.isCellsCloneable(),t);else if(this.graph.isAllowDanglingEdges()){(a=this.abspoints[this.isSource?0:this.abspoints.length-1]).x=a.x/this.graph.view.scale-this.graph.view.translate.x,a.y=a.y/this.graph.view.scale-this.graph.view.translate.y;var i=this.graph.getView().getState(this.graph.getModel().getParent(n));null!=i&&(a.x-=i.origin.x,a.y-=i.origin.y),a.x-=this.graph.panDx/this.graph.view.scale,a.y-=this.graph.panDy/this.graph.view.scale,this.changeTerminalPoint(n,a,this.isSource)}}else this.active?this.changePoints(n,this.points):(this.graph.getView().invalidate(this.state.cell),this.graph.getView().revalidate(this.state.cell));null!=this.marker&&(this.reset(),n!=this.state.cell&&this.graph.setSelectionCell(n)),t.consume()}},mxEdgeHandler.prototype.reset=function(){this.points=this.label=this.index=this.error=null,this.isTarget=this.isSource=this.isLabel=this.active=!1,this.marker.reset(),this.constraintHandler.reset(),this.setPreviewColor(mxConstants.EDGE_SELECTION_COLOR),this.redraw()},mxEdgeHandler.prototype.setPreviewColor=function(e){null!=this.shape&&(this.shape.stroke=e)},mxEdgeHandler.prototype.convertPoint=function(e,t){var n=this.graph.getView().getScale(),a=this.graph.getView().getTranslate();return t&&(e.x=this.graph.snap(e.x),e.y=this.graph.snap(e.y)),e.x=Math.round(e.x/n-a.x),e.y=Math.round(e.y/n-a.y),null!=(n=this.graph.getView().getState(this.graph.getModel().getParent(this.state.cell)))&&(e.x-=n.origin.x,e.y-=n.origin.y),e},mxEdgeHandler.prototype.moveLabel=function(e,t,n){var a=this.graph.getModel();if(null!=(i=a.getGeometry(e.cell))){var i=i.clone(),o=this.graph.getView().getRelativePoint(e,t,n);i.x=o.x,i.y=o.y;var s=this.graph.getView().scale;i.offset=new mxPoint(0,0),o=this.graph.view.getPoint(e,i),i.offset=new mxPoint((t-o.x)/s,(n-o.y)/s),a.setGeometry(e.cell,i)}},mxEdgeHandler.prototype.connect=function(e,t,n,a,i){var o=(i=this.graph.getModel()).getParent(e);i.beginUpdate();try{if(a){var s=e.clone();i.add(o,s,i.getChildCount(o));var r=i.getTerminal(e,!n);this.graph.connectCell(s,r,!n),e=s}var l=this.constraintHandler.currentConstraint;null==l&&(l=new mxConnectionConstraint),this.graph.connectCell(e,t,n,l)}finally{i.endUpdate()}return e},mxEdgeHandler.prototype.changeTerminalPoint=function(e,t,n){var a=this.graph.getModel(),i=a.getGeometry(e);if(null!=i){a.beginUpdate();try{(i=i.clone()).setTerminalPoint(t,n),a.setGeometry(e,i),this.graph.connectCell(e,null,n,new mxConnectionConstraint)}finally{a.endUpdate()}}},mxEdgeHandler.prototype.changePoints=function(e,t){var n=this.graph.getModel(),a=n.getGeometry(e);null!=a&&(a=a.clone(),a.points=t,n.setGeometry(e,a))},mxEdgeHandler.prototype.addPoint=function(e,t){var n=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(t),mxEvent.getClientY(t)),a=this.graph.isGridEnabledEvent(t);this.convertPoint(n,a),this.addPointAt(e,n.x,n.y),mxEvent.consume(t)},mxEdgeHandler.prototype.addPointAt=function(e,t,n){var a=this.graph.getCellGeometry(e.cell);if(t=new mxPoint(t,n),null!=a){a=a.clone(),n=this.graph.view.translate;var i=this.graph.view.scale;n=mxUtils.findNearestSegment(e,(t.x+n.x)*i,(t.y+n.y)*i),null==a.points?a.points=[t]:a.points.splice(n,0,t),this.graph.getModel().setGeometry(e.cell,a),this.destroy(),this.init()}},mxEdgeHandler.prototype.removePoint=function(e,t){if(0<t&&t<this.abspoints.length-1){var n=this.graph.getCellGeometry(this.state.cell);null!=n&&null!=n.points&&((n=n.clone()).points.splice(t-1,1),this.graph.getModel().setGeometry(e.cell,n),this.destroy(),this.init())}},mxEdgeHandler.prototype.getHandleFillColor=function(e){e=0==e;var t=this.state.cell,n=this.graph.getModel().getTerminal(t,e),a=mxConstants.HANDLE_FILLCOLOR;return null!=n&&!this.graph.isCellDisconnectable(t,n,e)||null==n&&!this.graph.isTerminalPointMovable(t,e)?a=mxConstants.LOCKED_HANDLE_FILLCOLOR:null!=n&&this.graph.isCellDisconnectable(t,n,e)&&(a=mxConstants.CONNECT_HANDLE_FILLCOLOR),a},mxEdgeHandler.prototype.redraw=function(){this.abspoints=this.state.absolutePoints.slice();var e=this.state.cell,t=mxConstants.LABEL_HANDLE_SIZE;if(this.label=new mxPoint(this.state.absoluteOffset.x,this.state.absoluteOffset.y),this.labelShape.bounds=new mxRectangle(Math.round(this.label.x-t/2),Math.round(this.label.y-t/2),t,t),this.labelShape.redraw(),t=this.graph.getLabel(e),null!=t&&0<t.length&&this.graph.isLabelMovable(e)?this.labelShape.node.style.visibility="visible":this.labelShape.node.style.visibility="hidden",null!=this.bends&&0<this.bends.length){var n=this.abspoints.length-1,e=this.abspoints[0],a=this.abspoints[0].y,t=this.bends[0].bounds;this.bends[0].bounds=new mxRectangle(Math.round(this.abspoints[0].x-t.width/2),Math.round(a-t.height/2),t.width,t.height),this.bends[0].fill=this.getHandleFillColor(0),this.bends[0].redraw();var a=this.abspoints[n],i=this.abspoints[n].x,n=this.abspoints[n].y,o=this.bends.length-1,t=this.bends[o].bounds;this.bends[o].bounds=new mxRectangle(Math.round(i-t.width/2),Math.round(n-t.height/2),t.width,t.height),this.bends[o].fill=this.getHandleFillColor(o),this.bends[o].redraw(),this.redrawInnerBends(e,a)}this.drawPreview()},mxEdgeHandler.prototype.redrawInnerBends=function(e,t){var n=this.graph.getModel().getGeometry(this.state.cell).points;if(null!=n){null==this.points&&(this.points=[]);for(var a=1;a<this.bends.length-1;a++)if(null!=this.bends[a])if(null!=this.abspoints[a]){var i=this.abspoints[a].x,o=this.abspoints[a].y,s=this.bends[a].bounds;this.bends[a].node.style.visibility="visible",this.bends[a].bounds=new mxRectangle(Math.round(i-s.width/2),Math.round(o-s.height/2),s.width,s.height),this.bends[a].redraw(),this.points[a-1]=n[a-1]}else this.bends[a].destroy(),this.bends[a]=null}},mxEdgeHandler.prototype.drawPreview=function(){if(this.isLabel){var e=mxConstants.LABEL_HANDLE_SIZE,e=new mxRectangle(Math.round(this.label.x-e/2),Math.round(this.label.y-e/2),e,e);this.labelShape.bounds=e,this.labelShape.redraw()}else this.shape.points=this.abspoints,this.shape.redraw()},mxEdgeHandler.prototype.destroy=function(){if(null!=this.marker&&(this.marker.destroy(),this.marker=null),null!=this.shape&&(this.shape.destroy(),this.shape=null),null!=this.labelShape&&(this.labelShape.destroy(),this.labelShape=null),null!=this.constraintHandler&&(this.constraintHandler.destroy(),this.constraintHandler=null),null!=this.bends)for(var e=0;e<this.bends.length;e++)null!=this.bends[e]&&(this.bends[e].destroy(),this.bends[e]=null)},mxUtils.extend(mxElbowEdgeHandler,mxEdgeHandler),mxElbowEdgeHandler.prototype=new mxEdgeHandler,mxElbowEdgeHandler.prototype.constructor=mxElbowEdgeHandler,mxElbowEdgeHandler.prototype.flipEnabled=!0,mxElbowEdgeHandler.prototype.doubleClickOrientationResource="none"!=mxClient.language?"doubleClickOrientation":"",mxElbowEdgeHandler.prototype.createBends=function(){var e=[],t=this.createHandleShape(0);return this.initBend(t),t.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(t.node,this.graph,this.state),e.push(t),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none"),e.push(this.createVirtualBend()),this.points.push(new mxPoint(0,0)),t=this.createHandleShape(2),this.initBend(t),t.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(t.node,this.graph,this.state),e.push(t),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none"),e},mxElbowEdgeHandler.prototype.createVirtualBend=function(){var e=this.createHandleShape();this.initBend(e);var t=this.getCursorForBend();return e.node.style.cursor=t,t=mxUtils.bind(this,function(e){!mxEvent.isConsumed(e)&&this.flipEnabled&&(this.graph.flipEdge(this.state.cell,e),mxEvent.consume(e))}),mxEvent.redirectMouseEvents(e.node,this.graph,this.state,null,null,null,t),this.graph.isCellBendable(this.state.cell)||(e.node.style.display="none"),e},mxElbowEdgeHandler.prototype.getCursorForBend=function(){return this.state.style[mxConstants.STYLE_EDGE]==mxEdgeStyle.TopToBottom||this.state.style[mxConstants.STYLE_EDGE]==mxConstants.EDGESTYLE_TOPTOBOTTOM||(this.state.style[mxConstants.STYLE_EDGE]==mxEdgeStyle.ElbowConnector||this.state.style[mxConstants.STYLE_EDGE]==mxConstants.EDGESTYLE_ELBOW)&&this.state.style[mxConstants.STYLE_ELBOW]==mxConstants.ELBOW_VERTICAL?"row-resize":"col-resize"},mxElbowEdgeHandler.prototype.getTooltipForNode=function(e){var t=null;return null==this.bends||null==this.bends[1]||e!=this.bends[1].node&&e.parentNode!=this.bends[1].node||(t=this.doubleClickOrientationResource,t=mxResources.get(t)||t),t},mxElbowEdgeHandler.prototype.convertPoint=function(e,t){var n=this.graph.getView().getScale(),a=this.graph.getView().getTranslate(),i=this.state.origin;t&&(e.x=this.graph.snap(e.x),e.y=this.graph.snap(e.y)),e.x=Math.round(e.x/n-a.x-i.x),e.y=Math.round(e.y/n-a.y-i.y)},mxElbowEdgeHandler.prototype.redrawInnerBends=function(e,t){var n=null==(n=null!=(n=this.graph.getModel().getGeometry(this.state.cell).points)?n[0]:null)?new mxPoint(e.x+(t.x-e.x)/2,e.y+(t.y-e.y)/2):new mxPoint(this.graph.getView().scale*(n.x+this.graph.getView().translate.x+this.state.origin.x),this.graph.getView().scale*(n.y+this.graph.getView().translate.y+this.state.origin.y)),a=(i=this.bends[1].bounds).width,i=i.height;null==this.handleImage&&(i=a=mxConstants.HANDLE_SIZE);var o=new mxRectangle(Math.round(n.x-a/2),Math.round(n.y-i/2),a,i);null==this.handleImage&&"hidden"!=this.labelShape.node.style.visibility&&mxUtils.intersects(o,this.labelShape.bounds)&&(a+=3,i+=3,o=new mxRectangle(Math.round(n.x-a/2),Math.round(n.y-i/2),a,i)),this.bends[1].bounds=o,this.bends[1].redraw()},mxUtils.extend(mxEdgeSegmentHandler,mxEdgeHandler),mxEdgeSegmentHandler.prototype=new mxElbowEdgeHandler,mxEdgeSegmentHandler.prototype.constructor=mxEdgeSegmentHandler,mxEdgeSegmentHandler.prototype.getPreviewPoints=function(e){if(this.isSource||this.isTarget)return mxElbowEdgeHandler.prototype.getPreviewPoints.apply(this,arguments);this.convertPoint(e,!1);var t=this.state.absolutePoints,n=t[0].clone();this.convertPoint(n,!1);for(var a=[],i=1;i<t.length;i++){var o=t[i].clone();this.convertPoint(o,!1),i==this.index&&(n.x==o.x?(n.x=e.x,o.x=e.x):(n.y=e.y,o.y=e.y)),i<t.length-1&&a.push(o),n=o}if(1==a.length){if(n=this.state.view,i=this.state.getVisibleTerminalState(!0),null!=(o=this.state.getVisibleTerminalState(!1))&null!=i){var s=this.state.origin.x,r=this.state.origin.y;mxUtils.contains(o,a[0].x+s,a[0].y+r)?t[1].y==t[2].y?a[0].y=n.getRoutingCenterY(i)-r:a[0].x=n.getRoutingCenterX(i)-s:mxUtils.contains(i,a[0].x+s,a[0].y+r)&&(t[1].y==t[0].y?a[0].y=n.getRoutingCenterY(o)-r:a[0].x=n.getRoutingCenterX(o)-s)}}else 0==a.length&&(a=[e]);return a},mxEdgeSegmentHandler.prototype.createBends=function(){var e=[],t=this.createHandleShape(0);this.initBend(t),t.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(t.node,this.graph,this.state),e.push(t),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none");var n=this.state.absolutePoints;if(this.graph.isCellBendable(this.state.cell)){null==this.points&&(this.points=[]);for(var a=0;a<n.length-1;a++)t=this.createVirtualBend(),e.push(t),t.node.style.cursor=0==n[a].x-n[a+1].x?"col-resize":"row-resize",this.points.push(new mxPoint(0,0)),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none")}return t=this.createHandleShape(n.length),this.initBend(t),t.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(t.node,this.graph,this.state),e.push(t),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none"),e},mxEdgeSegmentHandler.prototype.redraw=function(){this.refresh(),mxEdgeHandler.prototype.redraw.apply(this,arguments)},mxEdgeSegmentHandler.prototype.refresh=function(){if(null!=this.bends){for(var e=0;e<this.bends.length;e++)null!=this.bends[e]&&(this.bends[e].destroy(),this.bends[e]=null);this.bends=this.createBends()}},mxEdgeSegmentHandler.prototype.redrawInnerBends=function(e,t){if(this.graph.isCellBendable(this.state.cell)){var n=mxConstants.HANDLE_SIZE,a=this.state.absolutePoints;if(null!=a&&1<a.length)for(var i=0;i<this.state.absolutePoints.length-1;i++)if(null!=this.bends[i+1]){e=a[i],t=a[i+1];var o=new mxPoint(e.x+(t.x-e.x)/2,e.y+(t.y-e.y)/2);this.bends[i+1].bounds=new mxRectangle(Math.round(o.x-n/2),Math.round(o.y-n/2),n,n),this.bends[i+1].redraw()}}},mxEdgeSegmentHandler.prototype.changePoints=function(e,t){t=[];var n=this.abspoints;if(1<n.length)for(var a=n[0],i=n[1],o=2;o<n.length;o++){var s=n[o];Math.round(a.x)==Math.round(i.x)&&Math.round(i.x)==Math.round(s.x)||Math.round(a.y)==Math.round(i.y)&&Math.round(i.y)==Math.round(s.y)||(a=i,i=i.clone(),this.convertPoint(i,!1),t.push(i)),i=s}mxElbowEdgeHandler.prototype.changePoints.apply(this,arguments)},mxKeyHandler.prototype.graph=null,mxKeyHandler.prototype.target=null,mxKeyHandler.prototype.normalKeys=null,mxKeyHandler.prototype.shiftKeys=null,mxKeyHandler.prototype.controlKeys=null,mxKeyHandler.prototype.controlShiftKeys=null,mxKeyHandler.prototype.enabled=!0,mxKeyHandler.prototype.isEnabled=function(){return this.enabled},mxKeyHandler.prototype.setEnabled=function(e){this.enabled=e},mxKeyHandler.prototype.bindKey=function(e,t){this.normalKeys[e]=t},mxKeyHandler.prototype.bindShiftKey=function(e,t){this.shiftKeys[e]=t},mxKeyHandler.prototype.bindControlKey=function(e,t){this.controlKeys[e]=t},mxKeyHandler.prototype.bindControlShiftKey=function(e,t){this.controlShiftKeys[e]=t},mxKeyHandler.prototype.isControlDown=function(e){return mxEvent.isControlDown(e)},mxKeyHandler.prototype.getFunction=function(e){return null!=e?this.isControlDown(e)?mxEvent.isShiftDown(e)?this.controlShiftKeys[e.keyCode]:this.controlKeys[e.keyCode]:mxEvent.isShiftDown(e)?this.shiftKeys[e.keyCode]:this.normalKeys[e.keyCode]:null},mxKeyHandler.prototype.isGraphEvent=function(e){if((e=mxEvent.getSource(e))==this.target||e.parentNode==this.target||null!=this.graph.cellEditor&&e==this.graph.cellEditor.textarea)return!0;for(;null!=e;){if(e==this.graph.container)return!0;e=e.parentNode}return!1},mxKeyHandler.prototype.keyDown=function(e){if(this.graph.isEnabled()&&!mxEvent.isConsumed(e)&&this.isGraphEvent(e)&&this.isEnabled())if(27==e.keyCode)this.escape(e);else if(!this.graph.isEditing()){var t=this.getFunction(e);null!=t&&(t(e),mxEvent.consume(e))}},mxKeyHandler.prototype.escape=function(e){this.graph.isEscapeEnabled()&&this.graph.escape(e)},mxKeyHandler.prototype.destroy=function(){this.target=null},mxTooltipHandler.prototype.zIndex=10005,mxTooltipHandler.prototype.graph=null,mxTooltipHandler.prototype.delay=null,mxTooltipHandler.prototype.hideOnHover=!1,mxTooltipHandler.prototype.enabled=!0,mxTooltipHandler.prototype.isEnabled=function(){return this.enabled},mxTooltipHandler.prototype.setEnabled=function(e){this.enabled=e},mxTooltipHandler.prototype.isHideOnHover=function(){return this.hideOnHover},mxTooltipHandler.prototype.setHideOnHover=function(e){this.hideOnHover=e},mxTooltipHandler.prototype.init=function(){null!=document.body&&(this.div=document.createElement("div"),this.div.className="mxTooltip",this.div.style.visibility="hidden",this.div.style.zIndex=this.zIndex,document.body.appendChild(this.div),mxEvent.addListener(this.div,"mousedown",mxUtils.bind(this,function(e){this.hideTooltip()})))},mxTooltipHandler.prototype.mouseDown=function(e,t){this.reset(t,!1),this.hideTooltip()},mxTooltipHandler.prototype.mouseMove=function(e,t){t.getX()==this.lastX&&t.getY()==this.lastY||(this.reset(t,!0),(this.isHideOnHover()||t.getState()!=this.state||t.getSource()!=this.node&&(!this.stateSource||null!=t.getState()&&this.stateSource==(t.isSource(t.getState().shape)||!t.isSource(t.getState().text))))&&this.hideTooltip()),this.lastX=t.getX(),this.lastY=t.getY()},mxTooltipHandler.prototype.mouseUp=function(e,t){this.reset(t,!0),this.hideTooltip()},mxTooltipHandler.prototype.resetTimer=function(){null!=this.thread&&(window.clearTimeout(this.thread),this.thread=null)},mxTooltipHandler.prototype.reset=function(e,t){if(this.resetTimer(),t&&this.isEnabled()&&null!=e.getState()&&(null==this.div||"hidden"==this.div.style.visibility)){var n=e.getState(),a=e.getSource(),i=e.getX(),o=e.getY(),s=e.isSource(n.shape)||e.isSource(n.text);this.thread=window.setTimeout(mxUtils.bind(this,function(){if(!this.graph.isEditing()&&!this.graph.panningHandler.isMenuShowing()){var e=this.graph.getTooltip(n,a,i,o);this.show(e,i,o),this.state=n,this.node=a,this.stateSource=s}}),this.delay)}},mxTooltipHandler.prototype.hide=function(){this.resetTimer(),this.hideTooltip()},mxTooltipHandler.prototype.hideTooltip=function(){null!=this.div&&(this.div.style.visibility="hidden")},mxTooltipHandler.prototype.show=function(e,t,n){if(null!=e&&0<e.length){null==this.div&&this.init();var a=mxUtils.getScrollOrigin();this.div.style.left=t+a.x+"px",this.div.style.top=n+mxConstants.TOOLTIP_VERTICAL_OFFSET+a.y+"px",mxUtils.isNode(e)?(this.div.innerHTML="",this.div.appendChild(e)):this.div.innerHTML=e.replace(/\n/g,"<br>"),this.div.style.visibility="",mxUtils.fit(this.div)}},mxTooltipHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),mxEvent.release(this.div),null!=this.div&&null!=this.div.parentNode&&this.div.parentNode.removeChild(this.div),this.div=null},mxUtils.extend(mxCellTracker,mxCellMarker),mxCellTracker.prototype.mouseDown=function(e,t){},mxCellTracker.prototype.mouseMove=function(e,t){this.isEnabled()&&this.process(t)},mxCellTracker.prototype.mouseUp=function(e,t){this.reset()},mxCellTracker.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,this.graph.removeMouseListener(this),mxCellMarker.prototype.destroy.apply(this))},mxCellHighlight.prototype.keepOnTop=!1,mxCellHighlight.prototype.graph=!0,mxCellHighlight.prototype.state=null,mxCellHighlight.prototype.spacing=2,mxCellHighlight.prototype.resetHandler=null,mxCellHighlight.prototype.setHighlightColor=function(e){this.highlightColor=e,null!=this.shape&&(this.shape.stroke=e)},mxCellHighlight.prototype.drawHighlight=function(){this.shape=this.createShape(),this.repaint(),!this.keepOnTop&&this.shape.node.parentNode.firstChild!=this.shape.node&&this.shape.node.parentNode.insertBefore(this.shape.node,this.shape.node.parentNode.firstChild)},mxCellHighlight.prototype.createShape=function(){var e=null;return(e=this.graph.model.isEdge(this.state.cell)?new mxPolyline(this.state.absolutePoints,this.highlightColor,this.strokeWidth):new mxRectangleShape(new mxRectangle,null,this.highlightColor,this.strokeWidth)).dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,e.init(this.graph.getView().getOverlayPane()),mxEvent.redirectMouseEvents(e.node,this.graph,this.state),e.svgStrokeTolerance=0,e.pointerEvents=!1,e.isDashed=this.dashed,e},mxCellHighlight.prototype.repaint=function(){if(null!=this.state&&null!=this.shape){var e=0;this.graph.model.isEdge(this.state.cell)?this.shape.points=this.state.absolutePoints:(this.shape.bounds=new mxRectangle(this.state.x-this.spacing,this.state.y-this.spacing,this.state.width+2*this.spacing,this.state.height+2*this.spacing),e=Number(this.state.style[mxConstants.STYLE_ROTATION]||"0")),null!=this.state.shape&&this.shape.setCursor(this.state.shape.getCursor()),0!=e&&(this.shape.rotation=e),this.shape.redraw()}},mxCellHighlight.prototype.hide=function(){this.highlight(null)},mxCellHighlight.prototype.highlight=function(e){this.state!=e&&(null!=this.shape&&(this.shape.destroy(),this.shape=null),this.state=e,null!=this.state&&this.drawHighlight())},mxCellHighlight.prototype.destroy=function(){this.graph.getView().removeListener(this.repaintHandler),this.graph.getModel().removeListener(this.repaintHandler),this.graph.getView().removeListener(this.resetHandler),this.graph.getModel().removeListener(this.resetHandler),null!=this.shape&&(this.shape.destroy(),this.shape=null)},mxDefaultKeyHandler.prototype.editor=null,mxDefaultKeyHandler.prototype.handler=null,mxDefaultKeyHandler.prototype.bindAction=function(e,t,n){var a=mxUtils.bind(this,function(){this.editor.execute(t)});n?this.handler.bindControlKey(e,a):this.handler.bindKey(e,a)},mxDefaultKeyHandler.prototype.destroy=function(){this.handler.destroy(),this.handler=null},mxDefaultPopupMenu.prototype.imageBasePath=null,mxDefaultPopupMenu.prototype.config=null,mxDefaultPopupMenu.prototype.createMenu=function(e,t,n,a){if(null!=this.config){var i=this.createConditions(e,n,a);this.addItems(e,t,n,a,i,this.config.firstChild,null)}},mxDefaultPopupMenu.prototype.addItems=function(e,t,n,a,i,o,s){for(var r=!1;null!=o;){if("add"==o.nodeName){if(null==(l=o.getAttribute("if"))||i[l]){var l=o.getAttribute("as"),l=mxResources.get(l)||l,d=mxUtils.eval(mxUtils.getTextContent(o)),c=o.getAttribute("action"),m=o.getAttribute("icon"),u=o.getAttribute("iconCls");r&&(t.addSeparator(s),r=!1),null!=m&&this.imageBasePath&&(m=this.imageBasePath+m),l=this.addAction(t,e,l,m,d,c,n,s,u),this.addItems(e,t,n,a,i,o.firstChild,l)}}else"separator"==o.nodeName&&(r=!0);o=o.nextSibling}},mxDefaultPopupMenu.prototype.addAction=function(e,t,n,a,i,o,s,r,l){return e.addItem(n,a,function(e){"function"==typeof i&&i.call(t,t,s,e),null!=o&&t.execute(o,s,e)},r,l)},mxDefaultPopupMenu.prototype.createConditions=function(e,t,n){var a=e.graph.getModel(),i=a.getChildCount(t),o=[];for(o.nocell=null==t,o.ncells=1<e.graph.getSelectionCount(),o.notRoot=a.getRoot()!=a.getParent(e.graph.getDefaultParent()),o.cell=null!=t,a=null!=t&&1==e.graph.getSelectionCount(),o.nonEmpty=a&&0<i,o.expandable=a&&e.graph.isCellFoldable(t,!1),o.collapsable=a&&e.graph.isCellFoldable(t,!0),o.validRoot=a&&e.graph.isValidRoot(t),o.emptyValidRoot=o.validRoot&&0==i,o.swimlane=a&&e.graph.isSwimlane(t),i=this.config.getElementsByTagName("condition"),a=0;a<i.length;a++){var s=mxUtils.eval(mxUtils.getTextContent(i[a])),r=i[a].getAttribute("name");null!=r&&"function"==typeof s&&(o[r]=s(e,t,n))}return o},mxDefaultToolbar.prototype.editor=null,mxDefaultToolbar.prototype.toolbar=null,mxDefaultToolbar.prototype.resetHandler=null,mxDefaultToolbar.prototype.spacing=4,mxDefaultToolbar.prototype.connectOnDrop=!1,mxDefaultToolbar.prototype.init=function(e){null!=e&&(this.toolbar=new mxToolbar(e),this.toolbar.addListener(mxEvent.SELECT,mxUtils.bind(this,function(e,t){var n=t.getProperty("function");this.editor.insertFunction=null!=n?mxUtils.bind(this,function(){n.apply(this,arguments),this.toolbar.resetMode()}):null})),this.resetHandler=mxUtils.bind(this,function(){null!=this.toolbar&&this.toolbar.resetMode(!0)}),this.editor.graph.addListener(mxEvent.DOUBLE_CLICK,this.resetHandler),this.editor.addListener(mxEvent.ESCAPE,this.resetHandler))},mxDefaultToolbar.prototype.addItem=function(e,t,n,a){var i=mxUtils.bind(this,function(){null!=n&&0<n.length&&this.editor.execute(n)});return this.toolbar.addItem(e,t,i,a)},mxDefaultToolbar.prototype.addSeparator=function(e){e=e||mxClient.imageBasePath+"/separator.gif",this.toolbar.addSeparator(e)},mxDefaultToolbar.prototype.addCombo=function(){return this.toolbar.addCombo()},mxDefaultToolbar.prototype.addActionCombo=function(e){return this.toolbar.addActionCombo(e)},mxDefaultToolbar.prototype.addActionOption=function(e,t,n){var a=mxUtils.bind(this,function(){this.editor.execute(n)});this.addOption(e,t,a)},mxDefaultToolbar.prototype.addOption=function(e,t,n){return this.toolbar.addOption(e,t,n)},mxDefaultToolbar.prototype.addMode=function(e,t,n,a,i){var o=mxUtils.bind(this,function(){this.editor.setMode(n),null!=i&&i(this.editor)});return this.toolbar.addSwitchMode(e,t,o,a)},mxDefaultToolbar.prototype.addPrototype=function(e,t,n,a,i,o){var s=function(){return"function"==typeof n?n():null!=n?n.clone():null},r=mxUtils.bind(this,function(e,t){"function"==typeof i?i(this.editor,s(),e,t):this.drop(s(),e,t),this.toolbar.resetMode(),mxEvent.consume(e)});return e=this.toolbar.addMode(e,t,r,a,null,o),this.installDropHandler(e,function(e,t,n){r(t,n)}),e},mxDefaultToolbar.prototype.drop=function(e,t,n){var a=this.editor.graph,i=a.getModel();if(null!=n&&!i.isEdge(n)&&this.connectOnDrop&&a.isCellConnectable(n))this.connect(e,t,n);else{for(;null!=n&&!a.isValidDropTarget(n,[e],t);)n=i.getParent(n);this.insert(e,t,n)}},mxDefaultToolbar.prototype.insert=function(e,t,n){var a=this.editor.graph;if(a.canImportCell(e)){var i=mxEvent.getClientX(t),o=mxEvent.getClientY(t),i=mxUtils.convertPoint(a.container,i,o);return a.isSplitEnabled()&&a.isSplitTarget(n,[e],t)?a.splitEdge(n,[e],null,i.x,i.y):this.editor.addVertex(n,e,i.x,i.y)}return null},mxDefaultToolbar.prototype.connect=function(e,t,n){var a=(t=this.editor.graph).getModel();if(null!=n&&t.isCellConnectable(e)&&t.isEdgeValid(null,n,e)){var i=null;a.beginUpdate();try{var o=a.getGeometry(n),s=a.getGeometry(e).clone();s.x=o.x+(o.width-s.width)/2,s.y=o.y+(o.height-s.height)/2;var r=this.spacing*t.gridSize,l=20*a.getDirectedEdgeCount(n,!0);this.editor.horizontalFlow?s.x+=(s.width+o.width)/2+r+l:s.y+=(s.height+o.height)/2+r+l,e.setGeometry(s);var d=a.getParent(n);if(t.addCell(e,d),t.constrainChild(e),i=this.editor.createEdge(n,e),null==a.getGeometry(i)){var c=new mxGeometry;c.relative=!0,a.setGeometry(i,c)}t.addEdge(i,d,n,e)}finally{a.endUpdate()}t.setSelectionCells([e,i]),t.scrollCellToVisible(e)}},mxDefaultToolbar.prototype.installDropHandler=function(e,t){var n=document.createElement("img");n.setAttribute("src",e.getAttribute("src"));var a=mxUtils.bind(this,function(i){n.style.width=2*e.offsetWidth+"px",n.style.height=2*e.offsetHeight+"px",mxUtils.makeDraggable(e,this.editor.graph,t,n),mxEvent.removeListener(n,"load",a)});mxClient.IS_IE?a():mxEvent.addListener(n,"load",a)},mxDefaultToolbar.prototype.destroy=function(){null!=this.resetHandler&&(this.editor.graph.removeListener("dblclick",this.resetHandler),this.editor.removeListener("escape",this.resetHandler),this.resetHandler=null),null!=this.toolbar&&(this.toolbar.destroy(),this.toolbar=null)},mxLoadResources&&mxResources.add(mxClient.basePath+"/resources/editor"),mxEditor.prototype=new mxEventSource,mxEditor.prototype.constructor=mxEditor,mxEditor.prototype.askZoomResource="none"!=mxClient.language?"askZoom":"",mxEditor.prototype.lastSavedResource="none"!=mxClient.language?"lastSaved":"",mxEditor.prototype.currentFileResource="none"!=mxClient.language?"currentFile":"",mxEditor.prototype.propertiesResource="none"!=mxClient.language?"properties":"",mxEditor.prototype.tasksResource="none"!=mxClient.language?"tasks":"",mxEditor.prototype.helpResource="none"!=mxClient.language?"help":"",mxEditor.prototype.outlineResource="none"!=mxClient.language?"outline":"",mxEditor.prototype.outline=null,mxEditor.prototype.graph=null,mxEditor.prototype.graphRenderHint=null,mxEditor.prototype.toolbar=null,mxEditor.prototype.session=null,mxEditor.prototype.status=null,mxEditor.prototype.popupHandler=null,mxEditor.prototype.undoManager=null,mxEditor.prototype.keyHandler=null,mxEditor.prototype.actions=null,mxEditor.prototype.dblClickAction="edit",mxEditor.prototype.swimlaneRequired=!1,mxEditor.prototype.disableContextMenu=!0,mxEditor.prototype.insertFunction=null,mxEditor.prototype.forcedInserting=!1,mxEditor.prototype.templates=null,mxEditor.prototype.defaultEdge=null,mxEditor.prototype.defaultEdgeStyle=null,mxEditor.prototype.defaultGroup=null,mxEditor.prototype.groupBorderSize=null,mxEditor.prototype.filename=null,mxEditor.prototype.linefeed="&#xa;",mxEditor.prototype.postParameterName="xml",mxEditor.prototype.escapePostData=!0,mxEditor.prototype.urlPost=null,mxEditor.prototype.urlImage=null,mxEditor.prototype.urlInit=null,mxEditor.prototype.urlNotify=null,mxEditor.prototype.urlPoll=null,mxEditor.prototype.horizontalFlow=!1,mxEditor.prototype.layoutDiagram=!1,mxEditor.prototype.swimlaneSpacing=0,mxEditor.prototype.maintainSwimlanes=!1,mxEditor.prototype.layoutSwimlanes=!1,mxEditor.prototype.cycleAttributeValues=null,mxEditor.prototype.cycleAttributeIndex=0,mxEditor.prototype.cycleAttributeName="fillColor",mxEditor.prototype.tasks=null,mxEditor.prototype.tasksWindowImage=null,mxEditor.prototype.tasksTop=20,mxEditor.prototype.help=null,mxEditor.prototype.helpWindowImage=null,mxEditor.prototype.urlHelp=null,mxEditor.prototype.helpWidth=300,mxEditor.prototype.helpHeight=260,mxEditor.prototype.propertiesWidth=240,mxEditor.prototype.propertiesHeight=null,mxEditor.prototype.movePropertiesDialog=!1,mxEditor.prototype.validating=!1,mxEditor.prototype.modified=!1,mxEditor.prototype.isModified=function(){return this.modified},mxEditor.prototype.setModified=function(e){this.modified=e},mxEditor.prototype.addActions=function(){this.addAction("save",function(e){e.save()}),this.addAction("print",function(e){new mxPrintPreview(e.graph,1).open()}),this.addAction("show",function(e){mxUtils.show(e.graph,null,10,10)}),this.addAction("exportImage",function(e){var t=e.getUrlImage();if(null==t||mxClient.IS_LOCAL)e.execute("show");else{var n=mxUtils.getViewXml(e.graph,1),n=mxUtils.getXml(n,"\n");mxUtils.submit(t,e.postParameterName+"="+encodeURIComponent(n),document,"_blank")}}),this.addAction("refresh",function(e){e.graph.refresh()}),this.addAction("cut",function(e){e.graph.isEnabled()&&mxClipboard.cut(e.graph)}),this.addAction("copy",function(e){e.graph.isEnabled()&&mxClipboard.copy(e.graph)}),this.addAction("paste",function(e){e.graph.isEnabled()&&mxClipboard.paste(e.graph)}),this.addAction("delete",function(e){e.graph.isEnabled()&&e.graph.removeCells()}),this.addAction("group",function(e){e.graph.isEnabled()&&e.graph.setSelectionCell(e.groupCells())}),this.addAction("ungroup",function(e){e.graph.isEnabled()&&e.graph.setSelectionCells(e.graph.ungroupCells())}),this.addAction("removeFromParent",function(e){e.graph.isEnabled()&&e.graph.removeCellsFromParent()}),this.addAction("undo",function(e){e.graph.isEnabled()&&e.undo()}),this.addAction("redo",function(e){e.graph.isEnabled()&&e.redo()}),this.addAction("zoomIn",function(e){e.graph.zoomIn()}),this.addAction("zoomOut",function(e){e.graph.zoomOut()}),this.addAction("actualSize",function(e){e.graph.zoomActual()}),this.addAction("fit",function(e){e.graph.fit()}),this.addAction("showProperties",function(e,t){e.showProperties(t)}),this.addAction("selectAll",function(e){e.graph.isEnabled()&&e.graph.selectAll()}),this.addAction("selectNone",function(e){e.graph.isEnabled()&&e.graph.clearSelection()}),this.addAction("selectVertices",function(e){e.graph.isEnabled()&&e.graph.selectVertices()}),this.addAction("selectEdges",function(e){e.graph.isEnabled()&&e.graph.selectEdges()}),this.addAction("edit",function(e,t){e.graph.isEnabled()&&e.graph.isCellEditable(t)&&e.graph.startEditingAtCell(t)}),this.addAction("toBack",function(e,t){e.graph.isEnabled()&&e.graph.orderCells(!0)}),this.addAction("toFront",function(e,t){e.graph.isEnabled()&&e.graph.orderCells(!1)}),this.addAction("enterGroup",function(e,t){e.graph.enterGroup(t)}),this.addAction("exitGroup",function(e){e.graph.exitGroup()}),this.addAction("home",function(e){e.graph.home()}),this.addAction("selectPrevious",function(e){e.graph.isEnabled()&&e.graph.selectPreviousCell()}),this.addAction("selectNext",function(e){e.graph.isEnabled()&&e.graph.selectNextCell()}),this.addAction("selectParent",function(e){e.graph.isEnabled()&&e.graph.selectParentCell()}),this.addAction("selectChild",function(e){e.graph.isEnabled()&&e.graph.selectChildCell()}),this.addAction("collapse",function(e){e.graph.isEnabled()&&e.graph.foldCells(!0)}),this.addAction("collapseAll",function(e){if(e.graph.isEnabled()){var t=e.graph.getChildVertices();e.graph.foldCells(!0,!1,t)}}),this.addAction("expand",function(e){e.graph.isEnabled()&&e.graph.foldCells(!1)}),this.addAction("expandAll",function(e){if(e.graph.isEnabled()){var t=e.graph.getChildVertices();e.graph.foldCells(!1,!1,t)}}),this.addAction("bold",function(e){e.graph.isEnabled()&&e.graph.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_BOLD)}),this.addAction("italic",function(e){e.graph.isEnabled()&&e.graph.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_ITALIC)}),this.addAction("underline",function(e){e.graph.isEnabled()&&e.graph.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_UNDERLINE)}),this.addAction("shadow",function(e){e.graph.isEnabled()&&e.graph.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_SHADOW)}),this.addAction("alignCellsLeft",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_LEFT)}),this.addAction("alignCellsCenter",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_CENTER)}),this.addAction("alignCellsRight",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_RIGHT)}),this.addAction("alignCellsTop",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_TOP)}),this.addAction("alignCellsMiddle",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_MIDDLE)}),this.addAction("alignCellsBottom",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_BOTTOM)}),this.addAction("alignFontLeft",function(e){e.graph.setCellStyles(mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT)}),this.addAction("alignFontCenter",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER)}),this.addAction("alignFontRight",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_ALIGN,mxConstants.ALIGN_RIGHT)}),this.addAction("alignFontTop",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_TOP)}),this.addAction("alignFontMiddle",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)}),this.addAction("alignFontBottom",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_BOTTOM)}),this.addAction("zoom",function(e){var t=100*e.graph.getView().scale,t=parseFloat(mxUtils.prompt(mxResources.get(e.askZoomResource)||e.askZoomResource,t))/100;isNaN(t)||e.graph.getView().setScale(t)}),this.addAction("toggleTasks",function(e){null!=e.tasks?e.tasks.setVisible(!e.tasks.isVisible()):e.showTasks()}),this.addAction("toggleHelp",function(e){null!=e.help?e.help.setVisible(!e.help.isVisible()):e.showHelp()}),this.addAction("toggleOutline",function(e){null==e.outline?e.showOutline():e.outline.setVisible(!e.outline.isVisible())}),this.addAction("toggleConsole",function(e){mxLog.setVisible(!mxLog.isVisible())})},mxEditor.prototype.createSession=function(){var e=mxUtils.bind(this,function(e){this.fireEvent(new mxEventObject(mxEvent.SESSION,"session",e))});return this.connect(this.urlInit,this.urlPoll,this.urlNotify,e)},mxEditor.prototype.configure=function(e){null!=e&&(new mxCodec(e.ownerDocument).decode(e,this),this.resetHistory())},mxEditor.prototype.resetFirstTime=function(){document.cookie="mxgraph=seen; expires=Fri, 27 Jul 2001 02:47:11 UTC; path=/"},mxEditor.prototype.resetHistory=function(){this.lastSnapshot=(new Date).getTime(),this.undoManager.clear(),this.ignoredChanges=0,this.setModified(!1)},mxEditor.prototype.addAction=function(e,t){this.actions[e]=t},mxEditor.prototype.execute=function(e,t,n){var a=this.actions[e];if(null!=a)try{var i=arguments;i[0]=this,a.apply(this,i)}catch(t){throw mxUtils.error("Cannot execute "+e+": "+t.message,280,!0),t}else mxUtils.error("Cannot find action "+e,280,!0)},mxEditor.prototype.addTemplate=function(e,t){this.templates[e]=t},mxEditor.prototype.getTemplate=function(e){return this.templates[e]},mxEditor.prototype.createGraph=function(){var e=new mxGraph(null,null,this.graphRenderHint);return e.setTooltips(!0),e.setPanning(!0),this.installDblClickHandler(e),this.installUndoHandler(e),this.installDrillHandler(e),this.installChangeHandler(e),this.installInsertHandler(e),e.panningHandler.factoryMethod=mxUtils.bind(this,function(e,t,n){return this.createPopupMenu(e,t,n)}),e.connectionHandler.factoryMethod=mxUtils.bind(this,function(e,t){return this.createEdge(e,t)}),this.createSwimlaneManager(e),this.createLayoutManager(e),e},mxEditor.prototype.createSwimlaneManager=function(e){return e=new mxSwimlaneManager(e,!1),e.isHorizontal=mxUtils.bind(this,function(){return this.horizontalFlow}),e.isEnabled=mxUtils.bind(this,function(){return this.maintainSwimlanes}),e},mxEditor.prototype.createLayoutManager=function(e){var t=new mxLayoutManager(e),n=this;return t.getLayout=function(t){var a=null,i=n.graph.getModel();return null!=i.getParent(t)&&(n.layoutSwimlanes&&e.isSwimlane(t)?(null==n.swimlaneLayout&&(n.swimlaneLayout=n.createSwimlaneLayout()),a=n.swimlaneLayout):n.layoutDiagram&&(e.isValidRoot(t)||null==i.getParent(i.getParent(t)))&&(null==n.diagramLayout&&(n.diagramLayout=n.createDiagramLayout()),a=n.diagramLayout)),a},t},mxEditor.prototype.setGraphContainer=function(e){null==this.graph.container&&(this.graph.init(e),this.rubberband=new mxRubberband(this.graph),this.disableContextMenu&&mxEvent.disableContextMenu(e),mxClient.IS_QUIRKS&&new mxDivResizer(e))},mxEditor.prototype.installDblClickHandler=function(e){e.addListener(mxEvent.DOUBLE_CLICK,mxUtils.bind(this,function(t,n){var a=n.getProperty("cell");null!=a&&e.isEnabled()&&null!=this.dblClickAction&&(this.execute(this.dblClickAction,a),n.consume())}))},mxEditor.prototype.installUndoHandler=function(e){var t=mxUtils.bind(this,function(e,t){var n=t.getProperty("edit");this.undoManager.undoableEditHappened(n)});e.getModel().addListener(mxEvent.UNDO,t),e.getView().addListener(mxEvent.UNDO,t),t=function(t,n){var a=n.getProperty("edit").changes;e.setSelectionCells(e.getSelectionCellsForChanges(a))},this.undoManager.addListener(mxEvent.UNDO,t),this.undoManager.addListener(mxEvent.REDO,t)},mxEditor.prototype.installDrillHandler=function(e){var t=mxUtils.bind(this,function(e){this.fireEvent(new mxEventObject(mxEvent.ROOT))});e.getView().addListener(mxEvent.DOWN,t),e.getView().addListener(mxEvent.UP,t)},mxEditor.prototype.installChangeHandler=function(e){var t=mxUtils.bind(this,function(t,n){this.setModified(!0),1==this.validating&&e.validateGraph();for(var a=n.getProperty("edit").changes,i=0;i<a.length;i++){var o=a[i];if(o instanceof mxRootChange||o instanceof mxValueChange&&o.cell==this.graph.model.root||o instanceof mxCellAttributeChange&&o.cell==this.graph.model.root){this.fireEvent(new mxEventObject(mxEvent.ROOT));break}}});e.getModel().addListener(mxEvent.CHANGE,t)},mxEditor.prototype.installInsertHandler=function(e){var t=this;e.addMouseListener({mouseDown:function(e,n){null==t.insertFunction||n.isPopupTrigger()||!t.forcedInserting&&null!=n.getState()||(t.graph.clearSelection(),t.insertFunction(n.getEvent(),n.getCell()),this.isActive=!0,n.consume())},mouseMove:function(e,t){this.isActive&&t.consume()},mouseUp:function(e,t){this.isActive&&(this.isActive=!1,t.consume())}})},mxEditor.prototype.createDiagramLayout=function(){var e=this.graph.gridSize,t=new mxStackLayout(this.graph,!this.horizontalFlow,this.swimlaneSpacing,2*e,2*e);return t.isVertexIgnored=function(e){return!t.graph.isSwimlane(e)},t},mxEditor.prototype.createSwimlaneLayout=function(){return new mxCompactTreeLayout(this.graph,this.horizontalFlow)},mxEditor.prototype.createToolbar=function(){return new mxDefaultToolbar(null,this)},mxEditor.prototype.setToolbarContainer=function(e){this.toolbar.init(e),mxClient.IS_QUIRKS&&new mxDivResizer(e)},mxEditor.prototype.setStatusContainer=function(e){null==this.status&&(this.status=e,this.addListener(mxEvent.SAVE,mxUtils.bind(this,function(){var e=(new Date).toLocaleString();this.setStatus((mxResources.get(this.lastSavedResource)||this.lastSavedResource)+": "+e)})),this.addListener(mxEvent.OPEN,mxUtils.bind(this,function(){this.setStatus((mxResources.get(this.currentFileResource)||this.currentFileResource)+": "+this.filename)})),mxClient.IS_QUIRKS&&new mxDivResizer(e))},mxEditor.prototype.setStatus=function(e){null!=this.status&&null!=e&&(this.status.innerHTML=e)},mxEditor.prototype.setTitleContainer=function(e){this.addListener(mxEvent.ROOT,mxUtils.bind(this,function(t){e.innerHTML=this.getTitle()})),mxClient.IS_QUIRKS&&new mxDivResizer(e)},mxEditor.prototype.treeLayout=function(e,t){null!=e&&new mxCompactTreeLayout(this.graph,t).execute(e)},mxEditor.prototype.getTitle=function(){for(var e="",t=this.graph,n=t.getCurrentRoot();null!=n&&null!=t.getModel().getParent(t.getModel().getParent(n));)t.isValidRoot(n)&&(e=" > "+t.convertValueToString(n)+e),n=t.getModel().getParent(n);return this.getRootTitle()+e},mxEditor.prototype.getRootTitle=function(){var e=this.graph.getModel().getRoot();return this.graph.convertValueToString(e)},mxEditor.prototype.undo=function(){this.undoManager.undo()},mxEditor.prototype.redo=function(){this.undoManager.redo()},mxEditor.prototype.groupCells=function(){var e=null!=this.groupBorderSize?this.groupBorderSize:this.graph.gridSize;return this.graph.groupCells(this.createGroup(),e)},mxEditor.prototype.createGroup=function(){return this.graph.getModel().cloneCell(this.defaultGroup)},mxEditor.prototype.open=function(e){if(null!=e){var t=mxUtils.load(e).getXml();this.readGraphModel(t.documentElement),this.filename=e,this.fireEvent(new mxEventObject(mxEvent.OPEN,"filename",e))}},mxEditor.prototype.readGraphModel=function(e){new mxCodec(e.ownerDocument).decode(e,this.graph.getModel()),this.resetHistory()},mxEditor.prototype.save=function(e,t){if(null!=(e=e||this.getUrlPost())&&0<e.length){var n=this.writeGraphModel(t);this.postDiagram(e,n),this.setModified(!1)}this.fireEvent(new mxEventObject(mxEvent.SAVE,"url",e))},mxEditor.prototype.postDiagram=function(e,t){this.escapePostData&&(t=encodeURIComponent(t)),mxUtils.post(e,this.postParameterName+"="+t,mxUtils.bind(this,function(n){this.fireEvent(new mxEventObject(mxEvent.POST,"request",n,"url",e,"data",t))}))},mxEditor.prototype.writeGraphModel=function(e){e=null!=e?e:this.linefeed;var t=(new mxCodec).encode(this.graph.getModel());return mxUtils.getXml(t,e)},mxEditor.prototype.getUrlPost=function(){return this.urlPost},mxEditor.prototype.getUrlImage=function(){return this.urlImage},mxEditor.prototype.connect=function(e,t,n,a){var i=null;return mxClient.IS_LOCAL||((i=new mxSession(this.graph.getModel(),e,t,n)).addListener(mxEvent.RECEIVE,mxUtils.bind(this,function(e,t){null!=t.getProperty("node").getAttribute("namespace")&&this.resetHistory()})),i.addListener(mxEvent.DISCONNECT,a),i.addListener(mxEvent.CONNECT,a),i.addListener(mxEvent.NOTIFY,a),i.addListener(mxEvent.GET,a),i.start()),i},mxEditor.prototype.swapStyles=function(e,t){var n=this.graph.getStylesheet().styles[t];this.graph.getView().getStylesheet().putCellStyle(t,this.graph.getStylesheet().styles[e]),this.graph.getStylesheet().putCellStyle(e,n),this.graph.refresh()},mxEditor.prototype.showProperties=function(e){if(null==(e=e||this.graph.getSelectionCell())&&null==(e=this.graph.getCurrentRoot())&&(e=this.graph.getModel().getRoot()),null!=e){this.graph.stopEditing(!0);var t=(n=mxUtils.getOffset(this.graph.container)).x+10,n=n.y;if(null==this.properties||this.movePropertiesDialog){var a=this.graph.getCellBounds(e);null!=a&&(t+=a.x+Math.min(200,a.width),n+=a.y)}else t=this.properties.getX(),n=this.properties.getY();this.hideProperties(),null!=(e=this.createProperties(e))&&(this.properties=new mxWindow(mxResources.get(this.propertiesResource)||this.propertiesResource,e,t,n,this.propertiesWidth,this.propertiesHeight,!1),this.properties.setVisible(!0))}},mxEditor.prototype.isPropertiesVisible=function(){return null!=this.properties},mxEditor.prototype.createProperties=function(e){var t=this.graph.getModel(),n=t.getValue(e);if(mxUtils.isNode(n)){var a=new mxForm("properties");a.addText("ID",e.getId()).setAttribute("readonly","true");var i=null,o=null,s=null,r=null,l=null;t.isVertex(e)&&null!=(i=t.getGeometry(e))&&(o=a.addText("top",i.y),s=a.addText("left",i.x),r=a.addText("width",i.width),l=a.addText("height",i.height));for(var d=t.getStyle(e),c=a.addText("Style",d||""),m=n.attributes,u=[],n=0;n<m.length;n++)u[n]=a.addTextarea(m[n].nodeName,m[n].nodeValue,"label"==m[n].nodeName?4:2);return n=mxUtils.bind(this,function(){this.hideProperties(),t.beginUpdate();try{null!=i&&(i=i.clone(),i.x=parseFloat(s.value),i.y=parseFloat(o.value),i.width=parseFloat(r.value),i.height=parseFloat(l.value),t.setGeometry(e,i)),0<c.value.length?t.setStyle(e,c.value):t.setStyle(e,null);for(var n=0;n<m.length;n++){var a=new mxCellAttributeChange(e,m[n].nodeName,u[n].value);t.execute(a)}this.graph.isAutoSizeCell(e)&&this.graph.updateCellSize(e)}finally{t.endUpdate()}}),d=mxUtils.bind(this,function(){this.hideProperties()}),a.addButtons(n,d),a.table}return null},mxEditor.prototype.hideProperties=function(){null!=this.properties&&(this.properties.destroy(),this.properties=null)},mxEditor.prototype.showTasks=function(){if(null==this.tasks){var e=document.createElement("div");e.style.padding="4px",e.style.paddingLeft="20px";var t=document.body.clientWidth;(t=new mxWindow(mxResources.get(this.tasksResource)||this.tasksResource,e,t-220,this.tasksTop,200)).setClosable(!0),t.destroyOnClose=!1;var n=mxUtils.bind(this,function(t){mxEvent.release(e),e.innerHTML="",this.createTasks(e)});this.graph.getModel().addListener(mxEvent.CHANGE,n),this.graph.getSelectionModel().addListener(mxEvent.CHANGE,n),this.graph.addListener(mxEvent.ROOT,n),null!=this.tasksWindowImage&&t.setImage(this.tasksWindowImage),this.tasks=t,this.createTasks(e)}this.tasks.setVisible(!0)},mxEditor.prototype.refreshTasks=function(e){null!=this.tasks&&(e=this.tasks.content,mxEvent.release(e),e.innerHTML="",this.createTasks(e))},mxEditor.prototype.createTasks=function(e){},mxEditor.prototype.showHelp=function(e){if(null==this.help){var t=document.createElement("iframe");t.setAttribute("src",mxResources.get("urlHelp")||this.urlHelp),t.setAttribute("height","100%"),t.setAttribute("width","100%"),t.setAttribute("frameBorder","0"),t.style.backgroundColor="white",e=document.body.clientWidth;var n=document.body.clientHeight||document.documentElement.clientHeight,a=new mxWindow(mxResources.get(this.helpResource)||this.helpResource,t,(e-this.helpWidth)/2,(n-this.helpHeight)/3,this.helpWidth,this.helpHeight);a.setMaximizable(!0),a.setClosable(!0),a.destroyOnClose=!1,a.setResizable(!0),null!=this.helpWindowImage&&a.setImage(this.helpWindowImage),mxClient.IS_NS&&(e=function(e){t.setAttribute("height",a.div.offsetHeight-26+"px")},a.addListener(mxEvent.RESIZE_END,e),a.addListener(mxEvent.MAXIMIZE,e),a.addListener(mxEvent.NORMALIZE,e),a.addListener(mxEvent.SHOW,e)),this.help=a}this.help.setVisible(!0)},mxEditor.prototype.showOutline=function(){if(null==this.outline){var e=document.createElement("div");e.style.overflow="hidden",e.style.width="100%",e.style.height="100%",e.style.background="white",e.style.cursor="move";var t=new mxWindow(mxResources.get(this.outlineResource)||this.outlineResource,e,600,480,200,200,!1),n=new mxOutline(this.graph,e);t.setClosable(!0),t.setResizable(!0),t.destroyOnClose=!1,t.addListener(mxEvent.RESIZE_END,function(){n.update()}),this.outline=t,this.outline.outline=n}this.outline.setVisible(!0),this.outline.outline.update(!0)},mxEditor.prototype.setMode=function(e){"select"==e?(this.graph.panningHandler.useLeftButtonForPanning=!1,this.graph.setConnectable(!1)):"connect"==e?(this.graph.panningHandler.useLeftButtonForPanning=!1,this.graph.setConnectable(!0)):"pan"==e&&(this.graph.panningHandler.useLeftButtonForPanning=!0,this.graph.setConnectable(!1))},mxEditor.prototype.createPopupMenu=function(e,t,n){this.popupHandler.createMenu(this,e,t,n)},mxEditor.prototype.createEdge=function(e,t){var n=null;if(null!=this.defaultEdge)n=this.graph.getModel().cloneCell(this.defaultEdge);else{(n=new mxCell("")).setEdge(!0);var a=new mxGeometry;a.relative=!0,n.setGeometry(a)}return null!=(a=this.getEdgeStyle())&&n.setStyle(a),n},mxEditor.prototype.getEdgeStyle=function(){return this.defaultEdgeStyle},mxEditor.prototype.consumeCycleAttribute=function(e){return null!=this.cycleAttributeValues&&0<this.cycleAttributeValues.length&&this.graph.isSwimlane(e)?this.cycleAttributeValues[this.cycleAttributeIndex++%this.cycleAttributeValues.length]:null},mxEditor.prototype.cycleAttribute=function(e){if(null!=this.cycleAttributeName){var t=this.consumeCycleAttribute(e);null!=t&&e.setStyle(e.getStyle()+";"+this.cycleAttributeName+"="+t)}},mxEditor.prototype.addVertex=function(e,t,n,a){for(var i=this.graph.getModel();null!=e&&!this.graph.isValidDropTarget(e);)e=i.getParent(e);e=null!=e?e:this.graph.getSwimlaneAt(n,a);var o=this.graph.getView().scale,s=i.getGeometry(t),r=i.getGeometry(e);if(this.graph.isSwimlane(t)&&!this.graph.swimlaneNesting)e=null;else{if(null==e&&this.swimlaneRequired)return null;if(null!=e&&null!=r){var l=this.graph.getView().getState(e);if(null!=l){if(n-=l.origin.x*o,a-=l.origin.y*o,this.graph.isConstrainedMoving){var r=s.width,d=s.height,c=l.x+l.width;n+r>c&&(n-=n+r-c),a+d>(c=l.y+l.height)&&(a-=a+d-c)}}else null!=r&&(n-=r.x*o,a-=r.y*o)}}(s=s.clone()).x=this.graph.snap(n/o-this.graph.getView().translate.x-this.graph.gridSize/2),s.y=this.graph.snap(a/o-this.graph.getView().translate.y-this.graph.gridSize/2),t.setGeometry(s),null==e&&(e=this.graph.getDefaultParent()),this.cycleAttribute(t),this.fireEvent(new mxEventObject(mxEvent.BEFORE_ADD_VERTEX,"vertex",t,"parent",e)),i.beginUpdate();try{null!=(t=this.graph.addCell(t,e))&&(this.graph.constrainChild(t),this.fireEvent(new mxEventObject(mxEvent.ADD_VERTEX,"vertex",t)))}finally{i.endUpdate()}return null!=t&&(this.graph.setSelectionCell(t),this.graph.scrollCellToVisible(t),this.fireEvent(new mxEventObject(mxEvent.AFTER_ADD_VERTEX,"vertex",t))),t},mxEditor.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,null!=this.tasks&&this.tasks.destroy(),null!=this.outline&&this.outline.destroy(),null!=this.properties&&this.properties.destroy(),null!=this.keyHandler&&this.keyHandler.destroy(),null!=this.rubberband&&this.rubberband.destroy(),null!=this.toolbar&&this.toolbar.destroy(),null!=this.graph&&this.graph.destroy(),this.templates=this.status=null)};var mxCodecRegistry={codecs:[],aliases:[],register:function(e){if(null!=e){var t=e.getName();mxCodecRegistry.codecs[t]=e;var n=mxUtils.getFunctionName(e.template.constructor);n!=t&&mxCodecRegistry.addAlias(n,t)}return e},addAlias:function(e,t){mxCodecRegistry.aliases[e]=t},getCodec:function(e){t=null;if(null!=e){var t=mxUtils.getFunctionName(e),n=mxCodecRegistry.aliases[t];if(null!=n&&(t=n),null==(t=mxCodecRegistry.codecs[t]))try{t=new mxObjectCodec(new e),mxCodecRegistry.register(t)}catch(e){}}return t}};mxCodec.prototype.document=null,mxCodec.prototype.objects=null,mxCodec.prototype.encodeDefaults=!1,mxCodec.prototype.putObject=function(e,t){return this.objects[e]=t},mxCodec.prototype.getObject=function(e){var t=null;return null!=e&&null==(t=this.objects[e])&&null==(t=this.lookup(e))&&null!=(e=this.getElementById(e))&&(t=this.decode(e)),t},mxCodec.prototype.lookup=function(e){return null},mxCodec.prototype.getElementById=function(e,t){return mxUtils.findNodeByAttribute(this.document.documentElement,null!=t?t:"id",e)},mxCodec.prototype.getId=function(e){var t=null;return null!=e&&null==(t=this.reference(e))&&e instanceof mxCell&&null==(t=e.getId())&&0==(t=mxCellPath.create(e)).length&&(t="root"),t},mxCodec.prototype.reference=function(e){return null},mxCodec.prototype.encode=function(e){var t=null;if(null!=e&&null!=e.constructor){var n=mxCodecRegistry.getCodec(e.constructor);null!=n?t=n.encode(this,e):mxUtils.isNode(e)?t=mxClient.IS_IE?e.cloneNode(!0):this.document.importNode(e,!0):mxLog.warn("mxCodec.encode: No codec for "+mxUtils.getFunctionName(e.constructor))}return t},mxCodec.prototype.decode=function(a,b){var c=null;if(null!=a&&a.nodeType==mxConstants.NODETYPE_ELEMENT){var d=null;try{d=eval(a.nodeName)}catch(e){}try{var f=mxCodecRegistry.getCodec(d);null!=f?c=f.decode(this,a,b):(c=a.cloneNode(!0)).removeAttribute("as")}catch(e){mxLog.debug("Cannot decode "+a.nodeName+": "+e.message)}}return c},mxCodec.prototype.encodeCell=function(e,t,n){if(t.appendChild(this.encode(e)),null==n||n){n=e.getChildCount();for(var a=0;a<n;a++)this.encodeCell(e.getChildAt(a),t)}},mxCodec.prototype.isCellCodec=function(e){return null!=e&&"function"==typeof e.isCellCodec&&e.isCellCodec()},mxCodec.prototype.decodeCell=function(e,t){t=null==t||t;var n=null;if(null!=e&&e.nodeType==mxConstants.NODETYPE_ELEMENT){if(n=mxCodecRegistry.getCodec(e.nodeName),!this.isCellCodec(n))for(var a=e.firstChild;null!=a&&!this.isCellCodec(n);)n=mxCodecRegistry.getCodec(a.nodeName),a=a.nextSibling;this.isCellCodec(n)||(n=mxCodecRegistry.getCodec(mxCell)),n=n.decode(this,e),t&&this.insertIntoGraph(n)}return n},mxCodec.prototype.insertIntoGraph=function(e){var t=e.parent,n=e.getTerminal(!0),a=e.getTerminal(!1);e.setTerminal(null,!1),e.setTerminal(null,!0),e.parent=null,null!=t&&t.insert(e),null!=n&&n.insertEdge(e,!0),null!=a&&a.insertEdge(e,!1)},mxCodec.prototype.setAttribute=function(e,t,n){null!=t&&null!=n&&e.setAttribute(t,n)},mxObjectCodec.prototype.template=null,mxObjectCodec.prototype.exclude=null,mxObjectCodec.prototype.idrefs=null,mxObjectCodec.prototype.mapping=null,mxObjectCodec.prototype.reverse=null,mxObjectCodec.prototype.getName=function(){return mxUtils.getFunctionName(this.template.constructor)},mxObjectCodec.prototype.cloneTemplate=function(){return new this.template.constructor},mxObjectCodec.prototype.getFieldName=function(e){if(null!=e){var t=this.reverse[e];null!=t&&(e=t)}return e},mxObjectCodec.prototype.getAttributeName=function(e){if(null!=e){var t=this.mapping[e];null!=t&&(e=t)}return e},mxObjectCodec.prototype.isExcluded=function(e,t,n,a){return t==mxObjectIdentity.FIELD_NAME||0<=mxUtils.indexOf(this.exclude,t)},mxObjectCodec.prototype.isReference=function(e,t,n,a){return 0<=mxUtils.indexOf(this.idrefs,t)},mxObjectCodec.prototype.encode=function(e,t){var n=e.document.createElement(this.getName());return t=this.beforeEncode(e,t,n),this.encodeObject(e,t,n),this.afterEncode(e,t,n)},mxObjectCodec.prototype.encodeObject=function(e,t,n){e.setAttribute(n,"id",e.getId(t));for(var a in t){var i=a,o=t[i];null!=o&&!this.isExcluded(t,i,o,!0)&&(mxUtils.isNumeric(i)&&(i=null),this.encodeValue(e,t,i,o,n))}},mxObjectCodec.prototype.encodeValue=function(e,t,n,a,i){if(null!=a){if(this.isReference(t,n,a,!0)){var o=e.getId(a);if(null==o)return void mxLog.warn("mxObjectCodec.encode: No ID for "+this.getName()+"."+n+"="+a);a=o}o=this.template[n],(null==n||e.encodeDefaults||o!=a)&&(n=this.getAttributeName(n),this.writeAttribute(e,t,n,a,i))}},mxObjectCodec.prototype.writeAttribute=function(e,t,n,a,i){"object"!=typeof a?this.writePrimitiveAttribute(e,t,n,a,i):this.writeComplexAttribute(e,t,n,a,i)},mxObjectCodec.prototype.writePrimitiveAttribute=function(e,t,n,a,i){a=this.convertValueToXml(a),null==n?(t=e.document.createElement("add"),"function"==typeof a?t.appendChild(e.document.createTextNode(a)):e.setAttribute(t,"value",a),i.appendChild(t)):"function"!=typeof a&&e.setAttribute(i,n,a)},mxObjectCodec.prototype.writeComplexAttribute=function(e,t,n,a,i){null!=(e=e.encode(a))?(null!=n&&e.setAttribute("as",n),i.appendChild(e)):mxLog.warn("mxObjectCodec.encode: No node for "+this.getName()+"."+n+": "+a)},mxObjectCodec.prototype.convertValueToXml=function(e){return void 0!==e.length||1!=e&&0!=e||(e=1==e?"1":"0"),e},mxObjectCodec.prototype.convertValueFromXml=function(e){return mxUtils.isNumeric(e)&&(e=parseFloat(e)),e},mxObjectCodec.prototype.beforeEncode=function(e,t,n){return t},mxObjectCodec.prototype.afterEncode=function(e,t,n){return n},mxObjectCodec.prototype.decode=function(e,t,n){var a=t.getAttribute("id"),i=e.objects[a];return null==i&&(i=n||this.cloneTemplate(),null!=a&&e.putObject(a,i)),t=this.beforeDecode(e,t,i),this.decodeNode(e,t,i),this.afterDecode(e,t,i)},mxObjectCodec.prototype.decodeNode=function(e,t,n){null!=t&&(this.decodeAttributes(e,t,n),this.decodeChildren(e,t,n))},mxObjectCodec.prototype.decodeAttributes=function(e,t,n){if(null!=(t=t.attributes))for(var a=0;a<t.length;a++)this.decodeAttribute(e,t[a],n)},mxObjectCodec.prototype.decodeAttribute=function(e,t,n){var a=t.nodeName;if("as"!=a&&"id"!=a){t=this.convertValueFromXml(t.nodeValue);var i=this.getFieldName(a);if(this.isReference(n,i,t,!1)){if(null==(e=e.getObject(t)))return void mxLog.warn("mxObjectCodec.decode: No object for "+this.getName()+"."+a+"="+t);t=e}this.isExcluded(n,a,t,!1)||(n[a]=t)}},mxObjectCodec.prototype.decodeChildren=function(e,t,n){for(t=t.firstChild;null!=t;){var a=t.nextSibling;t.nodeType==mxConstants.NODETYPE_ELEMENT&&!this.processInclude(e,t,n)&&this.decodeChild(e,t,n),t=a}},mxObjectCodec.prototype.decodeChild=function(e,t,n){var a=this.getFieldName(t.getAttribute("as"));if(null==a||!this.isExcluded(n,a,t,!1)){var i=this.getFieldTemplate(n,a,t),o=null;"add"==t.nodeName?null==(o=t.getAttribute("value"))&&(o=mxUtils.eval(mxUtils.getTextContent(t))):o=e.decode(t,i),this.addObjectValue(n,a,o,i)}},mxObjectCodec.prototype.getFieldTemplate=function(e,t,n){return(e=e[t])instanceof Array&&0<e.length&&(e=null),e},mxObjectCodec.prototype.addObjectValue=function(e,t,n,a){null!=n&&n!=a&&(null!=t&&0<t.length?e[t]=n:e.push(n))},mxObjectCodec.prototype.processInclude=function(e,t,n){if("include"==t.nodeName){if(null!=(t=t.getAttribute("name")))try{var a=mxUtils.load(t).getDocumentElement();null!=a&&e.decode(a,n)}catch(e){}return!0}return!1},mxObjectCodec.prototype.beforeDecode=function(e,t,n){return t},mxObjectCodec.prototype.afterDecode=function(e,t,n){return n},mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxCell,["children","edges","overlays","mxTransient"],["parent","source","target"]);return e.isCellCodec=function(){return!0},e.isExcluded=function(e,t,n,a){return mxObjectCodec.prototype.isExcluded.apply(this,arguments)||a&&"value"==t&&n.nodeType==mxConstants.NODETYPE_ELEMENT},e.afterEncode=function(e,t,n){if(null!=t.value&&t.value.nodeType==mxConstants.NODETYPE_ELEMENT){var a=n;(n=mxClient.IS_IE?t.value.cloneNode(!0):e.document.importNode(t.value,!0)).appendChild(a),e=a.getAttribute("id"),n.setAttribute("id",e),a.removeAttribute("id")}return n},e.beforeDecode=function(e,t,n){var a=t,i=this.getName();if(t.nodeName!=i?(a=t.getElementsByTagName(i)[0],null!=a&&a.parentNode==t?(mxUtils.removeWhitespace(a,!0),mxUtils.removeWhitespace(a,!1),a.parentNode.removeChild(a)):a=null,n.value=t.cloneNode(!0),null!=(t=n.value.getAttribute("id"))&&(n.setId(t),n.value.removeAttribute("id"))):n.setId(t.getAttribute("id")),null!=a)for(t=0;t<this.idrefs.length;t++){var i=this.idrefs[t],o=a.getAttribute(i);if(null!=o){a.removeAttribute(i);var s=e.objects[o]||e.lookup(o);null==s&&null!=(o=e.getElementById(o))&&(s=(mxCodecRegistry.codecs[o.nodeName]||this).decode(e,o)),n[i]=s}}return a},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxGraphModel);return e.encodeObject=function(e,t,n){var a=e.document.createElement("root");e.encodeCell(t.getRoot(),a),n.appendChild(a)},e.decodeChild=function(e,t,n){"root"==t.nodeName?this.decodeRoot(e,t,n):mxObjectCodec.prototype.decodeChild.apply(this,arguments)},e.decodeRoot=function(e,t,n){var a=null;for(t=t.firstChild;null!=t;){var i=e.decodeCell(t);null!=i&&null==i.getParent()&&(a=i),t=t.nextSibling}null!=a&&n.setRoot(a)},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxRootChange,["model","previous","root"]);return e.afterEncode=function(e,t,n){return e.encodeCell(t.root,n),n},e.beforeDecode=function(e,t,n){if(null!=t.firstChild&&t.firstChild.nodeType==mxConstants.NODETYPE_ELEMENT){var a=(t=t.cloneNode(!0)).firstChild;for(n.root=e.decodeCell(a,!1),n=a.nextSibling,a.parentNode.removeChild(a),a=n;null!=a;)n=a.nextSibling,e.decodeCell(a),a.parentNode.removeChild(a),a=n}return t},e.afterDecode=function(e,t,n){return n.previous=n.root,n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxChildChange,["model","child","previousIndex"],["parent","previous"]);return e.isReference=function(e,t,n,a){return!("child"!=t||null==e.previous&&a)||0<=mxUtils.indexOf(this.idrefs,t)},e.afterEncode=function(e,t,n){return this.isReference(t,"child",t.child,!0)?n.setAttribute("child",e.getId(t.child)):e.encodeCell(t.child,n),n},e.beforeDecode=function(e,t,n){if(null!=t.firstChild&&t.firstChild.nodeType==mxConstants.NODETYPE_ELEMENT){var a=(t=t.cloneNode(!0)).firstChild;for(n.child=e.decodeCell(a,!1),n=a.nextSibling,a.parentNode.removeChild(a),a=n;null!=a;){if(n=a.nextSibling,a.nodeType==mxConstants.NODETYPE_ELEMENT){var i=a.getAttribute("id");null==e.lookup(i)&&e.decodeCell(a)}a.parentNode.removeChild(a),a=n}}else a=t.getAttribute("child"),n.child=e.getObject(a);return t},e.afterDecode=function(e,t,n){return n.child.parent=n.previous,n.previous=n.parent,n.previousIndex=n.index,n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxTerminalChange,["model","previous"],["cell","terminal"]);return e.afterDecode=function(e,t,n){return n.previous=n.terminal,n},e}());var mxGenericChangeCodec=function(e,t){var n=new mxObjectCodec(e,["model","previous"],["cell"]);return n.afterDecode=function(e,n,a){return mxUtils.isNode(a.cell)&&(a.cell=e.decodeCell(a.cell,!1)),a.previous=a[t],a},n};mxCodecRegistry.register(mxGenericChangeCodec(new mxValueChange,"value")),mxCodecRegistry.register(mxGenericChangeCodec(new mxStyleChange,"style")),mxCodecRegistry.register(mxGenericChangeCodec(new mxGeometryChange,"geometry")),mxCodecRegistry.register(mxGenericChangeCodec(new mxCollapseChange,"collapsed")),mxCodecRegistry.register(mxGenericChangeCodec(new mxVisibleChange,"visible")),mxCodecRegistry.register(mxGenericChangeCodec(new mxCellAttributeChange,"value")),mxCodecRegistry.register(function(){return new mxObjectCodec(new mxGraph,"graphListeners eventListeners view container cellRenderer editor selection".split(" "))}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxGraphView);return e.encode=function(e,t){return this.encodeCell(e,t,t.graph.getModel().getRoot())},e.encodeCell=function(e,t,n){var a=t.graph.getModel(),i=t.getState(n),o=a.getParent(n);if(null==o||null!=i){var s=a.getChildCount(n),r=t.graph.getCellGeometry(n),l=null;if(o==a.getRoot()?l="layer":null==o?l="graph":a.isEdge(n)?l="edge":0<s&&null!=r?l="group":a.isVertex(n)&&(l="vertex"),null!=l){var d=e.document.createElement(l);if(null!=t.graph.getLabel(n)&&(d.setAttribute("label",t.graph.getLabel(n)),t.graph.isHtmlLabel(n)&&d.setAttribute("html",!0)),null==o){var c=t.getGraphBounds();null!=c&&(d.setAttribute("x",Math.round(c.x)),d.setAttribute("y",Math.round(c.y)),d.setAttribute("width",Math.round(c.width)),d.setAttribute("height",Math.round(c.height))),d.setAttribute("scale",t.scale)}else if(null!=i&&null!=r){for(c in i.style)"function"==typeof(o=i.style[c])&&"object"==typeof o&&(o=mxStyleRegistry.getName(o)),null!=o&&"function"!=typeof o&&"object"!=typeof o&&d.setAttribute(c,o);if(null!=(o=i.absolutePoints)&&0<o.length){for(r=Math.round(o[0].x)+","+Math.round(o[0].y),c=1;c<o.length;c++)r+=" "+Math.round(o[c].x)+","+Math.round(o[c].y);d.setAttribute("points",r)}else d.setAttribute("x",Math.round(i.x)),d.setAttribute("y",Math.round(i.y)),d.setAttribute("width",Math.round(i.width)),d.setAttribute("height",Math.round(i.height));null!=(c=i.absoluteOffset)&&(0!=c.x&&d.setAttribute("dx",Math.round(c.x)),0!=c.y&&d.setAttribute("dy",Math.round(c.y)))}for(c=0;c<s;c++)null!=(i=this.encodeCell(e,t,a.getChildAt(n,c)))&&d.appendChild(i)}}return d},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxStylesheet);return e.encode=function(e,t){var n,a=e.document.createElement(this.getName());for(n in t.styles){var i=t.styles[n],o=e.document.createElement("add");if(null!=n){o.setAttribute("as",n);for(var s in i){var r=this.getStringValue(s,i[s]);if(null!=r){var l=e.document.createElement("add");l.setAttribute("value",r),l.setAttribute("as",s),o.appendChild(l)}}0<o.childNodes.length&&a.appendChild(o)}}return a},e.getStringValue=function(e,t){var n=typeof t;return"function"==n?t=mxStyleRegistry.getName(style[j]):"object"==n&&(t=null),t},e.decode=function(e,t,n){n=n||new this.template.constructor;var a=t.getAttribute("id");for(null!=a&&(e.objects[a]=n),t=t.firstChild;null!=t;){if(!this.processInclude(e,t,n)&&"add"==t.nodeName&&null!=(a=t.getAttribute("as"))){var i=t.getAttribute("extend"),o=null!=i?mxUtils.clone(n.styles[i]):null;for(null==o&&(null!=i&&mxLog.warn("mxStylesheetCodec.decode: stylesheet "+i+" not found to extend"),o={}),i=t.firstChild;null!=i;){if(i.nodeType==mxConstants.NODETYPE_ELEMENT){var s=i.getAttribute("as");if("add"==i.nodeName){var r=mxUtils.getTextContent(i),l=null;null!=r&&0<r.length?l=mxUtils.eval(r):(l=i.getAttribute("value"),mxUtils.isNumeric(l)&&(l=parseFloat(l))),null!=l&&(o[s]=l)}else"remove"==i.nodeName&&delete o[s]}i=i.nextSibling}n.putCellStyle(a,o)}t=t.nextSibling}return n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxDefaultKeyHandler);return e.encode=function(e,t){return null},e.decode=function(e,t,n){if(null!=n)for(t=t.firstChild;null!=t;){if(!this.processInclude(e,t,n)&&"add"==t.nodeName){var a=t.getAttribute("as"),i=t.getAttribute("action"),o=t.getAttribute("control");n.bindAction(a,i,o)}t=t.nextSibling}return n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxDefaultToolbar);return e.encode=function(e,t){return null},e.decode=function(e,t,n){if(null!=n){var a=n.editor;for(t=t.firstChild;null!=t;){if(t.nodeType==mxConstants.NODETYPE_ELEMENT&&!this.processInclude(e,t,n))if("separator"==t.nodeName)n.addSeparator();else if("br"==t.nodeName)n.toolbar.addBreak();else if("hr"==t.nodeName)n.toolbar.addLine();else if("add"==t.nodeName){var i=t.getAttribute("as"),i=mxResources.get(i)||i,o=t.getAttribute("icon"),s=t.getAttribute("pressedIcon"),r=t.getAttribute("action"),l=t.getAttribute("mode"),d=t.getAttribute("template"),c="0"!=t.getAttribute("toggle"),m=mxUtils.getTextContent(t),u=null;if(null!=r)u=n.addItem(i,o,r,s);else if(null!=l)var p=mxUtils.eval(m),u=n.addMode(i,o,l,s,p);else if(null!=d||null!=m&&0<m.length)u=a.templates[d],d=t.getAttribute("style"),null!=u&&null!=d&&(u=u.clone()).setStyle(d),d=null,null!=m&&0<m.length&&(d=mxUtils.eval(m)),u=n.addPrototype(i,o,u,s,d,c);else if(0<(s=mxUtils.getChildNodes(t)).length)if(null==o)for(d=n.addActionCombo(i),i=0;i<s.length;i++)c=s[i],"separator"==c.nodeName?n.addOption(d,"---"):"add"==c.nodeName&&(o=c.getAttribute("as"),c=c.getAttribute("action"),n.addActionOption(d,o,c));else{var g=null,h=n.addPrototype(i,o,function(){if(null!=(e=a.templates[g.value])){var e=e.clone(),t=g.options[g.selectedIndex].cellStyle;return null!=t&&e.setStyle(t),e}return mxLog.warn("Template "+e+" not found"),null},null,null,c),g=n.addCombo();for(mxEvent.addListener(g,"change",function(){n.toolbar.selectMode(h,function(e){return e=mxUtils.convertPoint(a.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),a.addVertex(null,p(),e.x,e.y)}),n.toolbar.noReset=!1}),i=0;i<s.length;i++)c=s[i],"separator"==c.nodeName?n.addOption(g,"---"):"add"==c.nodeName&&(o=c.getAttribute("as"),m=c.getAttribute("template"),n.addOption(g,o,m||d).cellStyle=c.getAttribute("style"))}null!=u&&null!=(d=t.getAttribute("id"))&&0<d.length&&u.setAttribute("id",d)}t=t.nextSibling}}return n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxDefaultPopupMenu);return e.encode=function(e,t){return null},e.decode=function(e,t,n){var a=t.getElementsByTagName("include")[0];return null!=a?this.processInclude(e,a,n):null!=n&&(n.config=t),n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxEditor,"modified lastSnapshot ignoredChanges undoManager graphContainer toolbarContainer".split(" "));return e.afterDecode=function(e,t,n){return null!=(e=t.getAttribute("defaultEdge"))&&(t.removeAttribute("defaultEdge"),n.defaultEdge=n.templates[e]),null!=(e=t.getAttribute("defaultGroup"))&&(t.removeAttribute("defaultGroup"),n.defaultGroup=n.templates[e]),n},e.decodeChild=function(e,t,n){if("Array"==t.nodeName){if("templates"==t.getAttribute("as"))return void this.decodeTemplates(e,t,n)}else if("ui"==t.nodeName)return void this.decodeUi(e,t,n);mxObjectCodec.prototype.decodeChild.apply(this,arguments)},e.decodeUi=function(e,t,n){for(e=t.firstChild;null!=e;){if("add"==e.nodeName){t=e.getAttribute("as");var a=e.getAttribute("element"),i=e.getAttribute("style"),o=null;if(null!=a)null!=(o=document.getElementById(a))&&null!=i&&(o.style.cssText+=";"+i);else{var a=parseInt(e.getAttribute("x")),s=parseInt(e.getAttribute("y")),r=e.getAttribute("width"),l=e.getAttribute("height");(o=document.createElement("div")).style.cssText=i,new mxWindow(mxResources.get(t)||t,o,a,s,r,l,!1,!0).setVisible(!0)}"graph"==t?n.setGraphContainer(o):"toolbar"==t?n.setToolbarContainer(o):"title"==t?n.setTitleContainer(o):"status"==t?n.setStatusContainer(o):"map"==t&&n.setMapContainer(o)}else"resource"==e.nodeName?mxResources.add(e.getAttribute("basename")):"stylesheet"==e.nodeName&&mxClient.link("stylesheet",e.getAttribute("name"));e=e.nextSibling}},e.decodeTemplates=function(e,t,n){null==n.templates&&(n.templates=[]),t=mxUtils.getChildNodes(t);for(var a=0;a<t.length;a++){for(var i=t[a].getAttribute("as"),o=t[a].firstChild;null!=o&&1!=o.nodeType;)o=o.nextSibling;null!=o&&(n.templates[i]=e.decodeCell(o))}},e}()),EditorUi=function(e,t,n){this.projectDesignController=e,this.editor=t||new Editor,this.container=n||document.body;var a=t.graph,i=this;(new Image).src=mxPopupMenu.prototype.submenuImage,null!=mxConnectionHandler.prototype.connectImage&&((new Image).src=mxConnectionHandler.prototype.connectImage.src),this.actions=new Actions(this),this.menus=new Menus(this),this.createDivs(),this.refresh(),this.createUi();var o=mxUtils.bind(this,function(e){return null==e&&(e=window.event),!!this.isSelectionAllowed(e)||a.isEditing()});this.container==document.body&&(this.menubarContainer.onselectstart=o,this.menubarContainer.onmousedown=o,this.toolbarContainer.onselectstart=o,this.toolbarContainer.onmousedown=o,this.diagramContainer.onselectstart=o,this.diagramContainer.onmousedown=o,this.sidebarContainer.onselectstart=o,this.sidebarContainer.onmousedown=o,this.footerContainer.onselectstart=o,this.footerContainer.onmousedown=o),mxClient.IS_IE&&(void 0===document.documentMode||document.documentMode<9)?(mxEvent.addListener(this.diagramContainer,"contextmenu",o),mxEvent.addListener(this.sidebarContainer,"contextmenu",o)):(this.diagramContainer.oncontextmenu=o,this.sidebarContainer.oncontextmenu=o),a.init(this.diagramContainer),a.refresh(),a.container.setAttribute("tabindex","0"),a.container.style.cursor="default",a.container.style.backgroundImage="url("+t.gridImage+")",a.container.style.backgroundPosition="-1px -1px",a.container.focus();var s=a.fireMouseEvent;a.fireMouseEvent=function(e,t,n){e==mxEvent.MOUSE_DOWN&&this.container.focus(),s.apply(this,arguments)},this.createMultiplicities(a.multiplicities,["start","finally","end"],[[1,1],[1,1],[0,0]],[[0,0],[0,0],[1,"n"]]),this.createMultiplicities(a.multiplicities,["answer","hangup","dial","ext_dial","queue","voicemail","callback"],[[1,1],[0,0],[0,1],[0,1],[0,1],[1,1],[0,1]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["set","math"],[[1,1],[1,1]],[[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["background","playback","menu","saydigits","saynumber","sayphonetic","tts","ispeechtts","getdigits","getsecretdigits"],[[1,"n"],[1,1],[1,"n"],[1,1],[1,1],[1,1],[1,1],[1,1],[1,"n"],[1,"n"]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["record"],[[1,1]],[[1,"n"]]),this.createMultiplicities(a.multiplicities,["database","ispeechasr","sendSMS","sendMail","sendFax"],[[1,1],[1,1],[1,1],[1,1],[1,1]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["gotoc","gotoif","gotoiftime","vswitch"],[[0,0],[1,2],[1,2],[1,"n"]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["queuelog","goal"],[[1,1],[1,1]],[[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["noop","system","agi","subproject","custom_app"],[[1,1],[1,1],[0,1],[0,1],[0,1]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),a.dblClick=function(e,t){var n=["background","gotoif","gotoiftime","menu","getdigits","getsecretdigits","vswitch"],o=new mxEventObject(mxEvent.DOUBLE_CLICK,"event",e,"cell",t);this.fireEvent(o),!this.isEnabled()||mxEvent.isConsumed(e)||o.isConsumed()||(this.getModel().isEdge(t)?n.indexOf(t.source.value.tagName)>=0&&this.startEditingAtCell(t):this.getModel().isVertex(t)&&i.projectDesignController.openDialog(t.getValue(),function(e){for(var n=0;n<e.length;n+=1)t.setAttribute(e[n].name,e[n].value);a.refresh(t)}),o.consume())},a.panningHandler.autoExpand=!0,a.panningHandler.factoryMethod=mxUtils.bind(this,function(e,t,n){this.menus.createPopupMenu(e,t,n)}),t.outline.init(this.outlineContainer),mxEvent.addGestureListeners(document,mxUtils.bind(this,function(e){a.panningHandler.hideMenu()})),mxClient.IS_TOUCH&&(mxEvent.addListener(a.container,"gesturechange",mxUtils.bind(this,function(e){a.view.getDrawPane().setAttribute("transform","scale("+e.scale+")"),a.view.getOverlayPane().style.visibility="hidden"})),mxEvent.addListener(a.container,"gestureend",mxUtils.bind(this,function(e){a.view.getDrawPane().removeAttribute("transform"),a.zoomToCenter=!0,a.zoom(e.scale),a.view.getOverlayPane().style.visibility="visible"})));var r=this.createKeyHandler(t);this.getKeyHandler=function(){return r},mxEvent.addListener(window,"resize",mxUtils.bind(this,function(){this.refresh(),a.sizeDidChange(),this.editor.outline.update(!1),this.editor.outline.outline.sizeDidChange()})),this.init(),this.open()},EditorUi.prototype.splitSize=mxClient.IS_TOUCH?16:8,EditorUi.prototype.menubarHeight=33,EditorUi.prototype.toolbarHeight=36,EditorUi.prototype.footerHeight=0,EditorUi.prototype.hsplitPosition=204,EditorUi.prototype.vsplitPosition=100,EditorUi.prototype.init=function(){this.addUndoListener(),this.addSelectionListener();var e=this.actions.get("paste"),t=function(){e.setEnabled(!mxClipboard.isEmpty())},n=mxClipboard.cut;mxClipboard.cut=function(){n.apply(this,arguments),t()};var a=mxClipboard.copy;mxClipboard.copy=function(){a.apply(this,arguments),t()}},EditorUi.prototype.isSelectionAllowed=function(e){return!1},EditorUi.prototype.exportXML=function(e){var t=window.document.createElement("a");t.href="data:attachment/text;charset=utf-8,"+encodeURI(e),t.download=this.editor.filename+".xml",t.target="_self",t.click()},EditorUi.prototype.open=function(){try{null!=window.opener&&null!=window.opener.openFile&&window.opener.openFile.setConsumer(mxUtils.bind(this,function(e,t){try{var n=mxUtils.parseXml(e);this.editor.setGraphXml(n.documentElement),this.editor.modified=!1,this.editor.undoManager.clear(),null!=t&&(this.editor.filename=t)}catch(e){mxUtils.alert(mxResources.get("invalidOrMissingFile")+": "+e.message)}}))}catch(e){}},EditorUi.prototype.openString=function(e,t,n){try{var a=mxUtils.parseXml(e);this.editor.setGraphXml(a.documentElement),this.editor.modified=!1,this.editor.undoManager.clear(),null!=t&&(this.editor.filename=t),null!=n&&(this.editor.data=n)}catch(e){mxUtils.alert(mxResources.get("invalidOrMissingFile")+": "+e.message)}},EditorUi.prototype.validate=function(e,t){for(var n=this.editor.graph,e=null!=e?e:n.model.getRoot(),t=null!=t?t:{},a=!0,i=n.model.getChildCount(e),o=0;o<i;o++){var s=n.model.getChildAt(e,o),r=t;n.isValidRoot(s)&&(r={}),null!=(r=this.validate(s,r))?n.setCellWarning(s,r.replace(/\n/g,"<br>")):n.setCellWarning(s,null),a=a&&null==r}if(i="",n.model.isVertex(e))switch(e.value.nodeName){case"start":i=this.validateBlock("start")?"":"Only one Start block is allowed\n";break;case"finally":i=this.validateBlock("finally")?"":"Only one Finally block is allowed\n";break;case"playback":i=e.value.getAttribute("file_id")>0?"":mxResources.get("noAudioSelected")+"\n";break;case"answer":i=e.value.getAttribute("timeout")>=0?"":mxResources.get("invalidTimeout")+"\n";break;case"menu":i=e.value.getAttribute("file_id")>0?"":mxResources.get("noAudioSelected")+"\n",i+=e.value.getAttribute("digit")>0?"":mxResources.get("wrongMaxDigit")+"\n",i+=e.value.getAttribute("response")>=0?"":mxResources.get("invalidTimeout")+"\n",i+=e.value.getAttribute("retry")>=0?"":mxResources.get("invalidRetry")+"\n";break;case"getdigits":i=e.value.getAttribute("file_id")>0?"":mxResources.get("noAudioSelected")+"\n",i+=e.value.getAttribute("variable_id")>0?"":mxResources.get("noVariableSelected")+"\n",i+=e.value.getAttribute("mindigit")>0?"":mxResources.get("wrongMinDigit")+"\n",i+=e.value.getAttribute("maxdigit")>0?"":mxResources.get("wrongMaxDigit")+"\n",i+=e.value.getAttribute("retry")>=0?"":mxResources.get("invalidRetry")+"\n";break;case"getsecretdigits":i=e.value.getAttribute("file_id")>0?"":mxResources.get("noAudioSelected")+"\n",i+=e.value.getAttribute("variable_id")>0?"":mxResources.get("noVariableSelected")+"\n",i+=e.value.getAttribute("mindigit")>0?"":mxResources.get("wrongMinDigit")+"\n",i+=e.value.getAttribute("maxdigit")>0?"":mxResources.get("wrongMaxDigit")+"\n",i+=e.value.getAttribute("hiddendigitsnum")>=0?"":mxResources.get("wrongHiddenDigitsnum")+"\n",i+=e.value.getAttribute("retry")>=0?"":mxResources.get("invalidRetry")+"\n";break;case"vswitch":i=e.value.getAttribute("variable_id")>0?"":mxResources.get("noVariableSelected")+"\n";break;case"database":i=e.value.getAttribute("odbc_id")>0?"":mxResources.get("noDatabaseSelected")+"\n",i+=""!==e.value.getAttribute("query")?"":mxResources.get("missingQuery")+"\n";break;case"set":case"math":i=e.value.getAttribute("variable_id")>0?"":mxResources.get("noVariableSelected")+"\n";break;case"gotoc":i=""!==e.value.getAttribute("context")?"":mxResources.get("noContextSelected")+"\n",i+=""!==e.value.getAttribute("extension")?"":mxResources.get("noExtensionSelected")+"\n",i+=e.value.getAttribute("priority")>=1?"":mxResources.get("invalidPriority")+"\n";break;case"system":case"agi":i=""!==e.value.getAttribute("command")?"":mxResources.get("noCommandSelected")+"\n";break;case"gotoif":i=""!==e.value.getAttribute("condition")?"":mxResources.get("noConditionSelected")+"\n";break;case"saydigits":i=""!==e.value.getAttribute("digits")?"":mxResources.get("noDigitsSelected")+"\n";break;case"saynumber":i=""!==e.value.getAttribute("number")?"":mxResources.get("noNumberSelected")+"\n";break;case"sayphonetic":i=""!==e.value.getAttribute("text")?"":mxResources.get("noTextSelected")+"\n";break;case"record":i=""!==e.value.getAttribute("file")?"":mxResources.get("noFileSelected")+"\n",i+=e.value.getAttribute("timeout")>=-1?"":mxResources.get("invalidTimeout")+"\n";break;case"goal":i=""!==e.value.getAttribute("goalname")?"":mxResources.get("noGoalSelected")+"\n";break;case"ext_dial":i="-1"!==e.value.getAttribute("trunk_name")?"":mxResources.get("noTrunkSelected")+"\n",i+=""!==e.value.getAttribute("phone")?"":mxResources.get("noIdentifierSelected")+"\n",i+=e.value.getAttribute("timeout")>=0?"":mxResources.get("invalidTimeout")+"\n";break;case"dial":i=e.value.getAttribute("sip_id")>0?"":mxResources.get("noIdentifierSelected")+"\n",i+=e.value.getAttribute("timeout")>=0?"":mxResources.get("invalidTimeout")+"\n";break;case"queue":i="-1"!==e.value.getAttribute("queue_id")?"":mxResources.get("noQueueSelected")+"\n",i+=e.value.getAttribute("timeout")>=0?"":mxResources.get("invalidTimeout")+"\n";break;case"callback":i="-1"!==e.value.getAttribute("list_id")?"":mxResources.get("noListSelected")+"\n",i+=""!==e.value.getAttribute("name")?"":mxResources.get("noFirstNameSelected")+"\n",i+=""!==e.value.getAttribute("phone")?"":mxResources.get("noPhoneSelected")+"\n",i+=e.value.getAttribute("delay")>=0?"":mxResources.get("invalidDelay")+"\n";break;case"gotoiftime":i=e.value.getAttribute("interval_id")>0?"":mxResources.get("noIntervalSelected")+"\n";break;case"voicemail":i=""!==e.value.getAttribute("mailbox")?"":mxResources.get("noBoxNumberSelected")+"\n";break;case"subproject":i=e.value.getAttribute("project_id")>0?"":mxResources.get("noProjectSelected")+"\n";break;case"sendSMS":i=e.value.getAttribute("account_id")>0?"":mxResources.get("noAccountSelected")+"\n",i+=""!==e.value.getAttribute("to")?"":mxResources.get("noRecipientSelected")+"\n",i+=""!==e.value.getAttribute("sms_text")?"":mxResources.get("noTextSelected")+"\n";break;case"sendMail":i=e.value.getAttribute("account_id")>0?"":mxResources.get("noAccountSelected")+"\n",i+=""!==e.value.getAttribute("to")?"":mxResources.get("noRecipientSelected")+"\n";break;case"sendFax":i=e.value.getAttribute("account_id")>0?"":mxResources.get("noAccountSelected")+"\n",i+=""!==e.value.getAttribute("to")?"":mxResources.get("noRecipientSelected")+"\n",i+=""!==e.value.getAttribute("attachment_path")?"":mxResources.get("noAttachmentSelected")+"\n";break;case"tts":i=""!==e.value.getAttribute("text")?"":mxResources.get("noTextSelected")+"\n";break;case"ispeechtts":i=""!==e.value.getAttribute("text")?"":mxResources.get("noTextSelected")+"\n",i+=""!==e.value.getAttribute("key")?"":mxResources.get("noKeySelected")+"\n",i+=e.value.getAttribute("speed")>=-10&&e.value.getAttribute("speed")<=10?"":mxResources.get("invalidSpeed")+"\n";break;case"ispeechasr":i=""!==e.value.getAttribute("key")?"":mxResources.get("noKeySelected")+"\n",i+=e.value.getAttribute("timeout")>=-1?"":mxResources.get("invalidTimeout")+"\n";break;case"custom_app":i=""!==e.value.getAttribute("application")?"":mxResources.get("noApplicationSelected")+"\n"}if(n.model.isEdge(e))switch(n.model.getCell(e.source.getId()).value.nodeName){case"background":i+=(l=/^[0-9]{1,45}$|^[i]{1}$|^[t]{1}|^[#]{1}|^[*]{1}$/).test(String(e.getValue()))?"":mxResources.get("numberOrInvalidOrTimeout")+"\n";break;case"menu":l=/^[0-9]{1,45}$|^[-]{1}$|^[i]{1}$|^[t]{1}|^[#]{1}|^[*]{1}$/;(d=String(e.getValue())).split(",").forEach(function(e){i+=l.test(e)?"":mxResources.get("numberOrAll")+"\n"});break;case"getsecretdigits":case"getdigits":var l=/^(x|i|-)$/,d=String(e.getValue());i+=l.test(d)?"":mxResources.get("numberOrInvalidOrDefault")+"\n";break;case"gotoif":case"gotoiftime":i+=(l=/^(true){1}$|^(false){1}$/).test(String(e.getValue()))?"":mxResources.get("trueOrFalse")+"\n"}return n.isCellCollapsed(e)&&!a&&(i+=(mxResources.get(n.containsValidationErrorsResource)||n.containsValidationErrorsResource)+"\n"),i=n.model.isEdge(e)?i+(n.getEdgeValidationError(e,n.model.getTerminal(e,!0),n.model.getTerminal(e,!1))||""):i+(n.getCellValidationError(e)||""),null!=(o=n.validateCell(e,t))&&(i+=o),null==n.model.getParent(e)&&n.view.validate(),i.length>0||!a?i:null},EditorUi.prototype.validateBlock=function(e){var t=this.editor.graph,n=0;return t.getDefaultParent().children.forEach(function(a){t.model.isVertex(a)&&a.value.nodeName==e&&n++}),!(n>1)},EditorUi.prototype.getUrl=function(e){var t=null!=e?e:window.location.pathname,n=t.indexOf("?")>0?1:0;for(var a in urlParams)t+=0==n?"?":"&",t+=a+"="+urlParams[a],n++;return t},EditorUi.prototype.addUndoListener=function(){var e=this.actions.get("undo"),t=this.actions.get("redo"),n=this.editor.undoManager,a=function(){e.setEnabled(n.canUndo()),t.setEnabled(n.canRedo())};n.addListener(mxEvent.ADD,a),n.addListener(mxEvent.UNDO,a),n.addListener(mxEvent.REDO,a),n.addListener(mxEvent.CLEAR,a),a()},EditorUi.prototype.addSelectionListener=function(){var e=mxUtils.bind(this,function(){var e=this.editor.graph,t=!e.isSelectionEmpty(),n=!1,a=!1,i=e.getSelectionCells();if(null!=i)for(r=0;r<i.length;r++){var o=i[r];if(e.getModel().isEdge(o)&&(a=!0),e.getModel().isVertex(o)&&(n=!0),a&&n)break}for(var s=["cut","copy","delete","duplicate","bold","italic","style","underline","toFront","toBack","dashed","rounded","shadow","tilt","autosize"],r=0;r<s.length;r++)this.actions.get(s[r]).setEnabled(t);this.actions.get("curved").setEnabled(a),this.actions.get("rotation").setEnabled(n),this.actions.get("wordWrap").setEnabled(n),this.actions.get("group").setEnabled(e.getSelectionCount()>1),this.actions.get("ungroup").setEnabled(1==e.getSelectionCount()&&e.getModel().getChildCount(e.getSelectionCell())>0);var l=n&&1==e.getSelectionCount();this.actions.get("removeFromGroup").setEnabled(l&&e.getModel().isVertex(e.getModel().getParent(e.getSelectionCell())));for(var d=["fontFamily","fontSize","alignment","position","text","format","arrange","linewidth","spacing"],r=0;r<d.length;r++)this.menus.get(d[r]).setEnabled(t);d=["line","lineend","linestart"];for(r=0;r<d.length;r++)this.menus.get(d[r]).setEnabled(a);this.actions.get("setAsDefaultEdge").setEnabled(a),this.menus.get("align").setEnabled(e.getSelectionCount()>1),this.menus.get("direction").setEnabled(n||a&&e.isLoop(e.view.getState(e.getSelectionCell()))),this.menus.get("navigation").setEnabled(e.foldingEnabled&&(null!=e.view.currentRoot||1==e.getSelectionCount()&&e.isValidRoot(e.getSelectionCell()))),this.actions.get("home").setEnabled(null!=e.view.currentRoot),this.actions.get("exitGroup").setEnabled(null!=e.view.currentRoot);var c=1==e.getSelectionCount()&&e.isValidRoot(e.getSelectionCell());this.actions.get("enterGroup").setEnabled(c),this.actions.get("expand").setEnabled(c),this.actions.get("collapse").setEnabled(c),this.actions.get("editLink").setEnabled(1==e.getSelectionCount()),this.actions.get("openLink").setEnabled(1==e.getSelectionCount()&&null!=e.getLinkForCell(e.getSelectionCell()))});this.editor.graph.getSelectionModel().addListener(mxEvent.CHANGE,e),e()},EditorUi.prototype.refresh=function(){var e=mxClient.IS_IE&&(null==document.documentMode||5==document.documentMode),t=this.container.clientWidth,n=this.container.clientHeight;this.container==document.body&&(t=document.body.clientWidth||document.documentElement.clientWidth,n=e?document.body.clientHeight||document.documentElement.clientHeight:document.documentElement.clientHeight);var a=Math.max(0,Math.min(this.hsplitPosition,t-this.splitSize-20)),i=Math.max(0,Math.min(this.vsplitPosition,n-this.menubarHeight-this.toolbarHeight-this.footerHeight-this.splitSize-1));this.menubarContainer.style.height=this.menubarHeight+"px",this.toolbarContainer.style.top=this.menubarHeight+"px",this.toolbarContainer.style.height=this.toolbarHeight+"px";var o=this.menubarHeight+this.toolbarHeight;if(mxClient.IS_QUIRKS||(o+=1),this.sidebarContainer.style.top=o+"px",this.sidebarContainer.style.width=a+"px",this.outlineContainer.style.width=a+"px",this.outlineContainer.style.height=i+"px",this.outlineContainer.style.bottom=this.footerHeight+"px",this.diagramContainer.style.left=a+this.splitSize+"px",this.diagramContainer.style.top=this.sidebarContainer.style.top,this.footerContainer.style.height=this.footerHeight+"px",this.footerContainer.style.display="none",this.hsplit.style.top=this.sidebarContainer.style.top,this.hsplit.style.bottom=this.outlineContainer.style.bottom,this.hsplit.style.left=a+"px",this.vsplit.style.width=this.sidebarContainer.style.width,this.vsplit.style.bottom=i+this.footerHeight+"px",e){this.menubarContainer.style.width=t+"px",this.toolbarContainer.style.width=this.menubarContainer.style.width;var s=n-i-this.splitSize-this.footerHeight-this.menubarHeight-this.toolbarHeight;this.sidebarContainer.style.height=s+"px",this.diagramContainer.style.width=t-a-this.splitSize+"px";var r=n-this.footerHeight-this.menubarHeight-this.toolbarHeight;this.diagramContainer.style.height=r+"px",this.footerContainer.style.width=this.menubarContainer.style.width,this.hsplit.style.height=r+"px"}else this.sidebarContainer.style.bottom=i+this.splitSize+this.footerHeight+"px",this.diagramContainer.style.bottom=this.outlineContainer.style.bottom},EditorUi.prototype.createDivs=function(){this.menubarContainer=this.createDiv("geMenubarContainer"),this.toolbarContainer=this.createDiv("geToolbarContainer"),this.sidebarContainer=this.createDiv("geSidebarContainer"),this.outlineContainer=this.createDiv("geOutlineContainer"),this.diagramContainer=this.createDiv("geDiagramContainer"),this.footerContainer=this.createDiv("geFooterContainer"),this.hsplit=this.createDiv("geHsplit"),this.vsplit=this.createDiv("geVsplit"),this.menubarContainer.style.top="0px",this.menubarContainer.style.left="0px",this.menubarContainer.style.right="0px",this.toolbarContainer.style.left="0px",this.toolbarContainer.style.right="0px",this.sidebarContainer.style.left="0px",this.outlineContainer.style.left="0px",this.diagramContainer.style.right="0px",this.footerContainer.style.left="0px",this.footerContainer.style.right="0px",this.footerContainer.style.bottom="0px",this.vsplit.style.left="0px",this.vsplit.style.height=this.splitSize+"px",this.hsplit.style.width=this.splitSize+"px"},EditorUi.prototype.createUi=function(){this.menubar=this.menus.createMenubar(this.createDiv("geMenubar")),this.menubarContainer.appendChild(this.menubar.container),this.toolbar=this.createToolbar(this.createDiv("geToolbar")),this.toolbarContainer.appendChild(this.toolbar.container),this.sidebar=this.createSidebar(this.sidebarContainer),this.footerContainer.appendChild(this.createFooter()),this.statusContainer=this.createStatusContainer(),this.editor.addListener("statusChanged",mxUtils.bind(this,function(){this.setStatusText(this.editor.getStatus())})),this.setStatusText(this.editor.getStatus()),this.menubar.container.appendChild(this.statusContainer),this.container.appendChild(this.menubarContainer),this.container.appendChild(this.toolbarContainer),this.container.appendChild(this.sidebarContainer),this.container.appendChild(this.outlineContainer),this.container.appendChild(this.diagramContainer),this.container.appendChild(this.footerContainer),this.container.appendChild(this.hsplit),this.container.appendChild(this.vsplit),this.addSplitHandler(this.hsplit,!0,0,mxUtils.bind(this,function(e){this.hsplitPosition=e,this.refresh(),this.editor.graph.sizeDidChange(),this.editor.outline.update(!1),this.editor.outline.outline.sizeDidChange()})),this.addSplitHandler(this.vsplit,!1,this.footerHeight,mxUtils.bind(this,function(e){this.vsplitPosition=e,this.refresh(),this.editor.outline.update(!1),this.editor.outline.outline.sizeDidChange()}))},EditorUi.prototype.createStatusContainer=function(){var e=document.createElement("a");return e.className="geItem geStatus",e},EditorUi.prototype.createStatusContainer=function(){var e=document.createElement("a");return e.className="geItem geStatus",e},EditorUi.prototype.setStatusText=function(e){this.statusContainer.innerHTML=e},EditorUi.prototype.createToolbar=function(e){return new Toolbar(this,e)},EditorUi.prototype.createSidebar=function(e){return new Sidebar(this,e)},EditorUi.prototype.createFooter=function(){return this.createDiv("geFooter")},EditorUi.prototype.createDiv=function(e){var t=document.createElement("div");return t.className=e,t},EditorUi.prototype.createHeader=function(e){return document.createElement(e)},EditorUi.prototype.createForm=function(e){var t=document.createElement("form");return t.className=e,t},EditorUi.prototype.addSplitHandler=function(e,t,n,a){function i(){return parseInt(t?e.style.left:e.style.bottom)}function o(e){if(null!=r){var i=new mxPoint(mxEvent.getClientX(e),mxEvent.getClientY(e));a(Math.max(0,l+(t?i.x-r.x:r.y-i.y)-n)),mxEvent.consume(e)}}function s(e){o(e),r=null,l=null}var r=null,l=null;mxEvent.addGestureListeners(e,function(e){r=new mxPoint(mxEvent.getClientX(e),mxEvent.getClientY(e)),l=i(),mxEvent.consume(e)}),mxEvent.addListener(document,"mousemove",o),mxEvent.addListener(document,"touchmove",o),mxEvent.addListener(document,"mouseup",s),mxEvent.addListener(document,"touchend",s)},EditorUi.prototype.executeLayout=function(e,t,n){var a=this.editor.graph,i=a.getSelectionCell();t=null!=this.animate?this.animate:t,a.getModel().beginUpdate();try{e.execute(a.getDefaultParent(),i)}catch(e){throw e}finally{if(t&&navigator.userAgent.indexOf("Camino")<0){var o=new mxMorphing(a);o.addListener(mxEvent.DONE,mxUtils.bind(this,function(){a.getModel().endUpdate()})),o.startAnimation()}else a.getModel().endUpdate()}},EditorUi.prototype.createKeyHandler=function(e){function t(e){if(!n.isSelectionEmpty()){var t=0,a=0;37==e?t=-1:38==e?a=-1:39==e?t=1:40==e&&(a=1),n.moveCells(n.getSelectionCells(),t,a),n.scrollCellToVisible(n.getSelectionCell())}}var n=this.editor.graph,a=new mxKeyHandler(n);a.isControlDown=function(e){return mxEvent.isControlDown(e)||mxClient.IS_MAC&&e.metaKey};var i=mxUtils.bind(this,function(e,t,n,i){var o=this.actions.get(n);if(null!=o){var s=function(){o.enabled&&o.funct()};t?i?a.bindControlShiftKey(e,s):a.bindControlKey(e,s):i?a.bindShiftKey(e,s):a.bindKey(e,s)}});return a.enter=function(){},a.bindKey(8,function(){n.foldCells(!0)}),a.bindKey(13,function(){n.foldCells(!1)}),a.bindKey(33,function(){n.exitGroup()}),a.bindKey(34,function(){n.enterGroup()}),a.bindKey(36,function(){n.home()}),a.bindKey(35,function(){n.refresh()}),a.bindKey(37,function(){t(37)}),a.bindKey(38,function(){t(38)}),a.bindKey(39,function(){t(39)}),a.bindKey(40,function(){t(40)}),a.bindKey(113,function(){n.startEditingAtCell()}),i(46,!1,"delete"),i(82,!0,"tilt"),i(83,!0,"save"),i(83,!0,"saveAs",!0),i(107,!1,"zoomIn"),i(109,!1,"zoomOut"),i(65,!0,"selectAll"),i(86,!0,"selectVertices",!0),i(69,!0,"selectEdges",!0),i(69,!0,"export"),i(66,!0,"toBack"),i(70,!0,"toFront"),i(68,!0,"duplicate"),i(90,!0,"undo"),i(89,!0,"redo"),i(88,!0,"cut"),i(67,!0,"copy"),i(81,!0,"connect"),i(86,!0,"paste"),i(71,!0,"group"),i(71,!0,"grid",!0),i(85,!0,"ungroup"),i(112,!1,"about"),i(80,!0,"publish",!0),a},EditorUi.prototype.createMultiplicities=function(e,t,n,a){for(var i=0;i<t.length;i++)e.push(new mxMultiplicity(!0,t[i],null,null,n[i][0],n[i][1],null,mxResources.get(t[i])+mxResources.get("musthave")+n[i][0]+mxResources.get("outgoingedge"),null)),e.push(new mxMultiplicity(!1,t[i],null,null,a[i][0],a[i][1],null,mxResources.get(t[i])+mxResources.get("musthave")+a[i][0]+mxResources.get("incomingedge"),null))};var useLocalStorage=(mxClient.IS_TOUCH||"local"==urlParams.storage)&&"undefined"!=typeof localStorage,fileSupport=null!=window.File&&null!=window.FileReader&&null!=window.FileList,touchStyle=mxClient.IS_TOUCH||"1"==urlParams.touch,counter=0;try{for(var op=window;null!=op.opener&&!isNaN(op.opener.counter);)op=op.opener;null!=op&&(op.counter++,counter=op.counter)}catch(e){}Editor=function(){mxEventSource.call(this),this.init(),this.initStencilRegistry(),this.graph=new Graph,this.outline=new mxOutline(this.graph),this.outline.updateOnPan=!0,this.undoManager=this.createUndoManager(),this.status="",this.filename=null,this.getOrCreateFilename=function(){return this.filename||mxResources.get("drawing",[counter])+".xml"},this.getFilename=function(){return this.filename},this.setStatus=function(e){this.status=e,this.fireEvent(new mxEventObject("statusChanged"))},this.getStatus=function(){return this.status},this.modified=!1,this.graphChangeListener=function(){this.modified=!0},this.graph.getModel().addListener(mxEvent.CHANGE,mxUtils.bind(this,function(){this.graphChangeListener.apply(this,arguments)})),window.onbeforeunload=mxUtils.bind(this,function(){if(this.modified)return mxResources.get("allChangesLost")}),this.graph.resetViewOnRootChange=!1,this.graph.scrollbars=!0,this.graph.background=null},mxUtils.extend(Editor,mxEventSource),Editor.prototype.gridImage=IMAGE_PATH+"/grid.gif",Editor.prototype.transparentImage=IMAGE_PATH+"/transparent.gif",Editor.prototype.setGraphXml=function(e){var t=new mxCodec(e.ownerDocument);if("mxGraphModel"==e.nodeName){this.graph.view.scale=1,this.graph.gridEnabled="0"!=e.getAttribute("grid"),this.graph.graphHandler.guidesEnabled="0"!=e.getAttribute("guides"),this.graph.setTooltips("0"!=e.getAttribute("tooltips")),this.graph.setConnectable("0"!=e.getAttribute("connect")),this.graph.foldingEnabled="0"!=e.getAttribute("fold"),this.graph.scrollbars="0"!=e.getAttribute("scrollbars"),this.graph.scrollbars||(this.graph.container.scrollLeft=0,this.graph.container.scrollTop=0,this.graph.view.translate.x=Number(e.getAttribute("dx")||0),this.graph.view.translate.y=Number(e.getAttribute("dy")||0)),this.graph.pageVisible="1"==e.getAttribute("page"),this.graph.pageBreaksVisible=this.graph.pageVisible,this.graph.preferPageSize=this.graph.pageBreaksVisible;var n=e.getAttribute("pageScale");this.graph.pageScale=null!=n?n:1.5;var a=e.getAttribute("pageWidth"),i=e.getAttribute("pageHeight");null!=a&&null!=i&&(this.graph.pageFormat=new mxRectangle(0,0,parseFloat(a),parseFloat(i)),this.outline.outline.pageFormat=this.graph.pageFormat);var o=e.getAttribute("background");null!=o&&o.length>0&&(this.graph.background=o),t.decode(e,this.graph.getModel()),this.updateGraphComponents()}},Editor.prototype.getGraphXml=function(){var e=new mxCodec(mxUtils.createXmlDocument()).encode(this.graph.getModel());return 0==this.graph.view.translate.x&&0==this.graph.view.translate.y||(e.setAttribute("dx",Math.round(100*this.graph.view.translate.x)/100),e.setAttribute("dy",Math.round(100*this.graph.view.translate.y)/100)),e.setAttribute("grid",this.graph.isGridEnabled()?"1":"0"),e.setAttribute("guides",this.graph.graphHandler.guidesEnabled?"1":"0"),e.setAttribute("guides",this.graph.graphHandler.guidesEnabled?"1":"0"),e.setAttribute("tooltips",this.graph.tooltipHandler.isEnabled()?"1":"0"),e.setAttribute("connect",this.graph.connectionHandler.isEnabled()?"1":"0"),e.setAttribute("fold",this.graph.foldingEnabled?"1":"0"),e.setAttribute("page",this.graph.pageVisible?"1":"0"),e.setAttribute("pageScale",this.graph.pageScale),e.setAttribute("pageWidth",this.graph.pageFormat.width),e.setAttribute("pageHeight",this.graph.pageFormat.height),this.graph.scrollbars||e.setAttribute("scrollbars","0"),null!=this.graph.background&&e.setAttribute("background",this.graph.background),e},Editor.prototype.updateGraphComponents=function(){var e=this.graph,t=this.outline;if(null!=e.container&&null!=t.outline.container){null!=e.background?"none"==e.background?e.container.style.backgroundColor="transparent":(null!=e.view.backgroundPageShape&&(e.view.backgroundPageShape.fill=e.background,e.view.backgroundPageShape.reconfigure()),e.container.style.backgroundColor=e.background):e.container.style.backgroundColor="",e.pageVisible?(e.container.style.backgroundColor="#ebebeb",e.container.style.borderStyle="solid",e.container.style.borderColor="#e5e5e5",e.container.style.borderTopWidth="1px",e.container.style.borderLeftWidth="1px",e.container.style.borderRightWidth="0px",e.container.style.borderBottomWidth="0px"):e.container.style.border="",t.outline.container.style.backgroundColor=e.container.style.backgroundColor,t.outline.pageVisible==e.pageVisible&&t.outline.pageScale==e.pageScale||(t.outline.pageScale=e.pageScale,t.outline.pageVisible=e.pageVisible,t.outline.view.validate()),e.scrollbars&&"hidden"==e.container.style.overflow&&!touchStyle?e.container.style.overflow="auto":e.scrollbars&&!touchStyle||(e.container.style.overflow="hidden");var n=mxClient.IS_IE&&document.documentMode>=9?"url("+this.transparentImage+")":"none";e.container.style.backgroundImage=!e.pageVisible&&e.isGridEnabled()?"url("+this.gridImage+")":n,null!=e.view.backgroundPageShape&&(e.view.backgroundPageShape.node.style.backgroundImage=this.graph.isGridEnabled()?"url("+this.gridImage+")":"none")}},Editor.prototype.init=function(){mxClient.IS_IE6&&mxClient.link("stylesheet",CSS_PATH+"/grapheditor-ie6.css"),mxResources.loadDefaultBundle=!1,mxResources.add(RESOURCE_BASE),mxConstants.DEFAULT_HOTSPOT=.3;var e=mxConnectionHandler.prototype.createMarker;mxConnectionHandler.prototype.createMarker=function(){var t=e.apply(this,arguments);return t.intersects=mxUtils.bind(this,function(e,n){return!!this.isConnecting()||mxCellMarker.prototype.intersects.apply(t,arguments)}),t},mxConstants.SHADOWCOLOR="#d0d0d0",mxConstants.HANDLE_FILLCOLOR="#99ccff",mxConstants.HANDLE_STROKECOLOR="#0088cf",mxConstants.VERTEX_SELECTION_COLOR="#00a8ff",mxConstants.OUTLINE_COLOR="#00a8ff",mxConstants.OUTLINE_HANDLE_FILLCOLOR="#99ccff",mxConstants.OUTLINE_HANDLE_STROKECOLOR="#00a8ff",mxConstants.CONNECT_HANDLE_FILLCOLOR="#cee7ff",mxConstants.EDGE_SELECTION_COLOR="#00a8ff",mxConstants.DEFAULT_VALID_COLOR="#00a8ff",mxConstants.LABEL_HANDLE_FILLCOLOR="#cee7ff",mxConstants.GUIDE_COLOR="#0088cf",mxGraph.prototype.pageBreakColor="#c0c0c0",mxGraph.prototype.pageScale=1,mxRubberband.prototype.defaultOpacity=30,mxGraphView.prototype.createBackgroundPageShape=function(e){return new mxRectangleShape(e,this.graph.background||"white","#cacaca")},mxGraphView.prototype.getBackgroundPageBounds=function(){var e=this.getGraphBounds(),t=e.width>0?e.x/this.scale-this.translate.x:0,n=e.height>0?e.y/this.scale-this.translate.y:0,a=e.width/this.scale,i=e.height/this.scale,o=this.graph.pageFormat,s=this.graph.pageScale,r=o.width*s,l=o.height*s,d=Math.floor(Math.min(0,t)/r),c=Math.floor(Math.min(0,n)/l),m=Math.ceil(Math.max(1,t+a)/r)-d,u=Math.ceil(Math.max(1,n+i)/l)-c;return new mxRectangle(this.scale*(this.translate.x+d*r),this.scale*(this.translate.y+c*l),this.scale*m*r,this.scale*u*l)};var t=mxGraph.prototype.panGraph;mxGraph.prototype.panGraph=function(e,n){t.apply(this,arguments),this.dialect==mxConstants.DIALECT_SVG||null==this.view.backgroundPageShape||this.useScrollbarsForPanning&&mxUtils.hasScrollbars(this.container)||(this.view.backgroundPageShape.node.style.marginLeft=e+"px",this.view.backgroundPageShape.node.style.marginTop=n+"px")};var n=this;mxGraphView.prototype.validateBackground=function(){var e=this.graph.getBackgroundImage();if(null!=e){if(null==this.backgroundImage||this.backgroundImage.image!=e.src){null!=this.backgroundImage&&this.backgroundImage.destroy();t=new mxRectangle(0,0,1,1);this.backgroundImage=new mxImageShape(t,e.src),this.backgroundImage.dialect=this.graph.dialect,this.backgroundImage.init(this.backgroundPane),this.backgroundImage.redraw()}this.redrawBackgroundImage(this.backgroundImage,e)}else null!=this.backgroundImage&&(this.backgroundImage.destroy(),this.backgroundImage=null);if(this.graph.pageVisible){var t=this.getBackgroundPageBounds();null==this.backgroundPageShape?(this.backgroundPageShape=this.createBackgroundPageShape(t),this.backgroundPageShape.scale=1,this.backgroundPageShape.isShadow=!0,this.backgroundPageShape.dialect=mxConstants.DIALECT_STRICTHTML,this.backgroundPageShape.init(this.graph.container),this.graph.container.firstChild.style.position="absolute",this.graph.container.insertBefore(this.backgroundPageShape.node,this.graph.container.firstChild),this.backgroundPageShape.redraw(),this.backgroundPageShape.node.className="geBackgroundPage",this.backgroundPageShape.node.style.backgroundPosition="-1px -1px",mxEvent.addListener(this.backgroundPageShape.node,"dblclick",mxUtils.bind(this,function(e){this.graph.dblClick(e)})),mxEvent.addGestureListeners(this.backgroundPageShape.node,mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e))}),mxUtils.bind(this,function(e){null!=this.graph.tooltipHandler&&this.graph.tooltipHandler.isHideOnHover()&&this.graph.tooltipHandler.hide(),this.graph.isMouseDown&&!mxEvent.isConsumed(e)&&this.graph.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(e))}),mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(e))}))):(this.backgroundPageShape.scale=1,this.backgroundPageShape.bounds=t,this.backgroundPageShape.redraw()),this.backgroundPageShape.node.style.backgroundImage=this.graph.isGridEnabled()?"url("+n.gridImage+")":"none"}else null!=this.backgroundPageShape&&(this.backgroundPageShape.destroy(),this.backgroundPageShape=null)},mxGraph.prototype.updatePageBreaks=function(e,t,n){var a=this.view.scale,i=this.view.translate,o=this.pageFormat,s=a*this.pageScale,r=this.view.getBackgroundPageBounds();t=r.width,n=r.height;var l=new mxRectangle(a*i.x,a*i.y,o.width*s,o.height*s),d=(e=e&&Math.min(l.width,l.height)>this.minPageBreakDist)?Math.ceil(t/l.width)-1:0,c=e?Math.ceil(n/l.height)-1:0,m=r.x+t,u=r.y+n;if(null==this.horizontalPageBreaks&&d>0&&(this.horizontalPageBreaks=[]),null!=this.horizontalPageBreaks){for(h=0;h<=d;h++){p=[new mxPoint(r.x+(h+1)*l.width,r.y),new mxPoint(r.x+(h+1)*l.width,u)];null!=this.horizontalPageBreaks[h]?(this.horizontalPageBreaks[h].scale=1,this.horizontalPageBreaks[h].points=p,this.horizontalPageBreaks[h].redraw()):((g=new mxPolyline(p,this.pageBreakColor,this.scale)).dialect=this.dialect,g.isDashed=this.pageBreakDashed,g.addPipe=!1,g.scale=a,g.init(this.view.backgroundPane),g.redraw(),this.horizontalPageBreaks[h]=g)}for(h=d;h<this.horizontalPageBreaks.length;h++)this.horizontalPageBreaks[h].destroy();this.horizontalPageBreaks.splice(d,this.horizontalPageBreaks.length-d)}if(null==this.verticalPageBreaks&&c>0&&(this.verticalPageBreaks=[]),null!=this.verticalPageBreaks){for(h=0;h<=c;h++){var p=[new mxPoint(r.x,r.y+(h+1)*l.height),new mxPoint(m,r.y+(h+1)*l.height)];if(null!=this.verticalPageBreaks[h])this.verticalPageBreaks[h].scale=1,this.verticalPageBreaks[h].points=p,this.verticalPageBreaks[h].redraw();else{var g=new mxPolyline(p,this.pageBreakColor,a);g.dialect=this.dialect,g.isDashed=this.pageBreakDashed,g.addPipe=!1,g.scale=a,g.init(this.view.backgroundPane),g.redraw(),this.verticalPageBreaks[h]=g}}for(var h=c;h<this.verticalPageBreaks.length;h++)this.verticalPageBreaks[h].destroy();this.verticalPageBreaks.splice(c,this.verticalPageBreaks.length-c)}},mxEdgeHandler.prototype.snapToTerminals=!0,mxGraphHandler.prototype.guidesEnabled=!0;var a=mxGraphHandler.prototype.shouldRemoveCellsFromParent;mxGraphHandler.prototype.shouldRemoveCellsFromParent=function(e,t,n){for(var i=0;i<t.length;i++)if(this.graph.getModel().isVertex(t[i])){var o=this.graph.getCellGeometry(t[i]);if(null!=o&&o.relative)return!1}return a.apply(this,arguments)},mxGuide.prototype.isEnabledForEvent=function(e){return!mxEvent.isAltDown(e)};var i=mxPopupMenu.prototype.addItem;mxPopupMenu.prototype.addItem=function(e,t,n,a,o,s){var r=i.apply(this,arguments);return null==s||s||mxEvent.addListener(r,"mousedown",function(e){mxEvent.consume(e)}),r};var o=mxGraphHandler.prototype.getInitialCellForEvent;mxGraphHandler.prototype.getInitialCellForEvent=function(e){var t=this.graph.getModel(),n=t.getParent(this.graph.getSelectionCell()),a=o.apply(this,arguments),i=t.getParent(a);if(null==n||n!=a&&n!=i)for(;!this.graph.isCellSelected(a)&&!this.graph.isCellSelected(i)&&t.isVertex(i)&&!this.graph.isValidRoot(i);)a=i,i=this.graph.getModel().getParent(a);return a};var s=mxGraphHandler.prototype.isDelayedSelection;mxGraphHandler.prototype.isDelayedSelection=function(e){var t=s.apply(this,arguments),n=this.graph.getModel(),a=n.getParent(this.graph.getSelectionCell()),i=n.getParent(e);return(null==a||a!=e&&a!=i)&&(this.graph.isCellSelected(e)||!n.isVertex(i)||this.graph.isValidRoot(i)||(t=!0)),t},mxGraphHandler.prototype.selectDelayed=function(e){var t=e.getCell();null==t&&(t=this.cell);for(var n=this.graph.getModel(),a=n.getParent(t);this.graph.isCellSelected(t)&&n.isVertex(a)&&!this.graph.isValidRoot(a);)t=a,a=n.getParent(t);this.graph.selectCellForEvent(t,e.getEvent())},mxPanningHandler.prototype.getCellForPopupEvent=function(e){for(var t=e.getCell(),n=this.graph.getModel(),a=n.getParent(t);n.isVertex(a)&&!this.graph.isValidRoot(a);)this.graph.isCellSelected(a)&&(t=a),a=n.getParent(a);return t}},Editor.prototype.createUndoManager=function(){var e=this.graph,t=new mxUndoManager,n=function(e,n){t.undoableEditHappened(n.getProperty("edit"))};e.getModel().addListener(mxEvent.UNDO,n),e.getView().addListener(mxEvent.UNDO,n);var a=function(t,n){for(var a=e.getSelectionCellsForChanges(n.getProperty("edit").changes),i=[],o=1;o<a.length;o++)null!=e.view.getState(a[o])&&i.push(a[o]);e.setSelectionCells(i)};return t.addListener(mxEvent.UNDO,a),t.addListener(mxEvent.REDO,a),t},Editor.prototype.initStencilRegistry=function(){mxStencilRegistry.loadStencilSet(STENCIL_PATH+"/general.xml")},function(){mxStencilRegistry.libraries={},mxStencilRegistry.packages=[],mxStencilRegistry.getStencil=function(e){var t=mxStencilRegistry.stencils[e];if(null==t){var n=mxStencilRegistry.getBasenameForStencil(e);if(null!=n){var a=mxStencilRegistry.libraries[n];if(null!=a){if(null==mxStencilRegistry.packages[n]){mxStencilRegistry.packages[n]=1;for(var i=0;i<a.length;i++){var o=a[i];if(".xml"==o.toLowerCase().substring(o.length-4,o.length))mxStencilRegistry.loadStencilSet(o,null);else if(".js"==o.toLowerCase().substring(o.length-3,o.length)){var s=mxUtils.load(o);null!=s&&eval.call(window,s.getText())}}}}else mxStencilRegistry.loadStencilSet(STENCIL_PATH+"/"+n+".xml",null);t=mxStencilRegistry.stencils[e]}}return t},mxStencilRegistry.getBasenameForStencil=function(e){var t=e.split("."),n=null;if(t.length>0&&"mxgraph"==t[0]){n=t[1];for(var a=2;a<t.length-1;a++)n+="/"+t[a]}return n},mxStencilRegistry.loadStencilSet=function(e,t,n){n=null!=n&&n;var a=mxStencilRegistry.packages[e];if(n||null==a){var i=!1;null==a&&(a=mxUtils.load(e).getXml(),mxStencilRegistry.packages[e]=a,i=!0),mxStencilRegistry.parseStencilSet(a,t,i)}},mxStencilRegistry.parseStencilSet=function(e,t,n){n=null==n||n;var a=e.documentElement,i=a.firstChild,o="",s=a.getAttribute("name");for(null!=s&&(o=s+".");null!=i;){if(i.nodeType==mxConstants.NODETYPE_ELEMENT&&null!=(s=i.getAttribute("name"))){o=o.toLowerCase();var r=s.replace(/ /g,"_");if(n&&mxStencilRegistry.addStencil(o+r.toLowerCase(),new mxStencil(i)),null!=t){var l=i.getAttribute("w"),d=i.getAttribute("h");t(o,r,s,l=null==l?80:parseInt(l,10),d=null==d?80:parseInt(d,10))}}i=i.nextSibling}}}(),OpenFile=function(e){this.producer=null,this.consumer=null,this.done=e},OpenFile.prototype.setConsumer=function(e){this.consumer=e,this.execute()},OpenFile.prototype.setData=function(e,t){this.data=e,this.filename=t,this.execute()},OpenFile.prototype.error=function(e){this.cancel(),mxUtils.alert(e)},OpenFile.prototype.execute=function(){null!=this.consumer&&null!=this.data&&(this.consumer(this.data,this.filename),this.cancel())},OpenFile.prototype.cancel=function(){null!=this.done&&this.done()},Sidebar.prototype.init=function(){var e=STENCIL_PATH;this.addSearchPalette(!0),this.addImagePalette("entry",mxResources.get("entry"),e+"/entry/","_128x128.png",["start","finally","end"],[mxResources.get("start"),mxResources.get("finally"),mxResources.get("end")]),this.addImagePalette("call_management",mxResources.get("call_management"),e+"/call_management/","_128x128.png",["answer","hangup","dial","ext_dial","queue","voicemail","callback"],[mxResources.get("answer"),mxResources.get("hangup"),mxResources.get("dial"),mxResources.get("ext_dial"),mxResources.get("queue"),mxResources.get("voicemail"),mxResources.get("callback")]),this.addImagePalette("variable",mxResources.get("variable"),e+"/variable/","_128x128.png",["set","math"],[mxResources.get("set"),mxResources.get("math")]),this.addImagePalette("playback",mxResources.get("playback"),e+"/playback/","_128x128.png",["playback","menu","saydigits","saynumber","sayphonetic","tts","ispeechtts","getdigits","getsecretdigits"],[mxResources.get("playback"),mxResources.get("menu"),mxResources.get("saydigits"),mxResources.get("saynumber"),mxResources.get("sayphonetic"),mxResources.get("tts"),mxResources.get("ispeechtts"),mxResources.get("getdigits"),mxResources.get("getsecretdigits")]),this.addImagePalette("recording",mxResources.get("recording"),e+"/recording/","_128x128.png",["record"],[mxResources.get("record")]),this.addImagePalette("integrationServer",mxResources.get("integrationServer"),e+"/integration_server/","_128x128.png",["database","ispeechasr"],[mxResources.get("database"),mxResources.get("ispeechasr")]),this.addImagePalette("callflow",mxResources.get("callflow"),e+"/callflow/","_128x128.png",["gotoc","gotoif","gotoiftime","vswitch"],[mxResources.get("gotoc"),mxResources.get("gotoif"),mxResources.get("gotoiftime"),mxResources.get("vswitch")]),this.addImagePalette("stats",mxResources.get("stats"),e+"/stats/","_128x128.png",["goal"],[mxResources.get("goal")]),this.addImagePalette("general",mxResources.get("general"),e+"/general/","_128x128.png",["noop","system","agi","subproject","custom_app"],[mxResources.get("noop"),mxResources.get("system"),mxResources.get("agi"),mxResources.get("subproject"),mxResources.get("custom_app")])},Sidebar.prototype.collapsedImage=mxClient.IS_SVG?"data:image/gif;base64,R0lGODlhDQANAIABAJmZmf///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNUQyRTJFNjZGNUYxMUU1QjZEOThCNDYxMDQ2MzNCQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNUQyRTJFNzZGNUYxMUU1QjZEOThCNDYxMDQ2MzNCQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjFERjc3MEUxNkY1RjExRTVCNkQ5OEI0NjEwNDYzM0JCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjFERjc3MEUyNkY1RjExRTVCNkQ5OEI0NjEwNDYzM0JCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAQAsAAAAAA0ADQAAAhSMj6lrwAjcC1GyahV+dcZJgeIIFgA7":IMAGE_PATH+"/collapsed.gif",Sidebar.prototype.expandedImage=mxClient.IS_SVG?"data:image/gif;base64,R0lGODlhDQANAIABAJmZmf///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxREY3NzBERjZGNUYxMUU1QjZEOThCNDYxMDQ2MzNCQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxREY3NzBFMDZGNUYxMUU1QjZEOThCNDYxMDQ2MzNCQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjFERjc3MERENkY1RjExRTVCNkQ5OEI0NjEwNDYzM0JCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjFERjc3MERFNkY1RjExRTVCNkQ5OEI0NjEwNDYzM0JCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAQAsAAAAAA0ADQAAAhGMj6nL3QAjVHIu6azbvPtWAAA7":IMAGE_PATH+"/expanded.gif",Sidebar.prototype.tooltipImage=mxClient.IS_SVG?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAbCAMAAAB7jU7LAAAACVBMVEX///+ZmZn///9Y2COLAAAAA3RSTlP//wDXyg1BAAAAOElEQVR42mXQMQ4AMAgDsWv//+iutcJmIQSk+9dJpVKpVCqVSqVSqZTdncWzF8/NeP7FkxWenPEDOnUBiL3jWx0AAAAASUVORK5CYII=":IMAGE_PATH+"/tooltip.png",Sidebar.prototype.searchImage=mxClient.IS_SVG?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAEaSURBVHjabNGxS5VxFIfxz71XaWuQUJCG/gCHhgTD9VpEETg4aMOlQRp0EoezObgcd220KQiXmpretTAHQRBdojlQEJyukPdt+b1ywfvAGc7wnHP4nlZd1yKijQW8xzNc4Su+ZOYfQ3T6/f4YNvEJYzjELXp4VVXVz263+7cR2niBxAFeZ2YPi3iHR/gYERPDwhpOsd6sz8x/mfkNG3iOlWFhFj8y89J9KvzGXER0GuEaD42mgwHqUtoljbcRsTBCeINpfM/MgZLKPpaxFxGbOCqDXmILN7hoJrTKH+axhxmcYRxP0MIDnOBDZv5q1XUNIuJxifJp+UNV7t7BFM6xeic0RMQ4Bpl5W/ol7GISx/eEUUTECrbx+f8A8xhiZht9zsgAAAAASUVORK5CYII=":IMAGE_PATH+"/search.png",Sidebar.prototype.enableTooltips=!0,Sidebar.prototype.tooltipBorder=16,Sidebar.prototype.tooltipDelay=300,Sidebar.prototype.dropTargetDelay=200,Sidebar.prototype.thumbWidth=36,Sidebar.prototype.thumbHeight=36,Sidebar.prototype.thumbPadding=document.documentMode>=5?0:1,Sidebar.prototype.thumbBorder=2,Sidebar.prototype.sidebarTitleSize=9,Sidebar.prototype.sidebarTitles=!1,Sidebar.prototype.tooltipTitles=!0,Sidebar.prototype.maxTooltipWidth=400,Sidebar.prototype.maxTooltipHeight=400,Sidebar.prototype.addStencilsToIndex=!0,Sidebar.prototype.defaultImageWidth=80,Sidebar.prototype.defaultImageHeight=80,Sidebar.prototype.getOffset=function(e){return e=e.getBoundingClientRect(),{left:e.left+window.scrollX,top:e.top+window.scrollY}},Sidebar.prototype.showTooltip=function(e,t,n,a,i,o){if(this.enableTooltips&&this.showTooltips&&this.currentElt!=e){null!=this.thread&&(window.clearTimeout(this.thread),this.thread=null);var s=mxUtils.bind(this,function(){null==this.tooltip&&(this.tooltip=document.createElement("div"),this.tooltip.className="geSidebarTooltip",this.tooltip.style.zIndex=mxPopupMenu.prototype.zIndex-1,document.body.appendChild(this.tooltip),this.graph2=new Graph(this.tooltip,null,null,this.editorUi.editor.graph.getStylesheet()),this.graph2.resetViewOnRootChange=!1,this.graph2.foldingEnabled=!1,this.graph2.gridEnabled=!1,this.graph2.autoScroll=!1,this.graph2.setTooltips(!1),this.graph2.setConnectable(!1),this.graph2.setEnabled(!1),mxClient.IS_SVG||(this.graph2.view.canvas.style.position="relative"),this.tooltipImage=mxUtils.createImage(this.tooltipImage),this.tooltipImage.className="geSidebarTooltipImage",this.tooltipImage.style.zIndex=mxPopupMenu.prototype.zIndex-1,this.tooltipImage.style.position="absolute",this.tooltipImage.style.width="14px",this.tooltipImage.style.height="27px",document.body.appendChild(this.tooltipImage)),this.graph2.model.clear(),this.graph2.view.setTranslate(this.tooltipBorder,this.tooltipBorder),n>this.maxTooltipWidth||a>this.maxTooltipHeight?this.graph2.view.scale=Math.round(100*Math.min(this.maxTooltipWidth/n,this.maxTooltipHeight/a))/100:this.graph2.view.scale=1,this.tooltip.style.display="block",this.graph2.labelsVisible=null==o||o,this.graph2.addCells(t);var s=this.graph2.getGraphBounds(),r=s.width+2*this.tooltipBorder+4,l=s.height+2*this.tooltipBorder;if(mxClient.IS_QUIRKS?(l+=4,this.tooltip.style.overflow="hidden"):this.tooltip.style.overflow="visible",this.tooltipImage.style.visibility="visible",this.tooltip.style.width=r+"px",this.tooltipTitles&&null!=i&&i.length>0){null==this.tooltipTitle?(this.tooltipTitle=document.createElement("div"),this.tooltipTitle.style.borderTop="1px solid gray",this.tooltipTitle.style.textAlign="center",this.tooltipTitle.style.width="100%",this.tooltipTitle.style.overflow="hidden",mxClient.IS_SVG?this.tooltipTitle.style.paddingTop="6px":(this.tooltipTitle.style.position="absolute",this.tooltipTitle.style.paddingTop="6px"),this.tooltip.appendChild(this.tooltipTitle)):this.tooltipTitle.innerHTML="",this.tooltipTitle.style.display="",mxUtils.write(this.tooltipTitle,i);var d=this.tooltipTitle.offsetHeight+10;l+=d,mxClient.IS_SVG?this.tooltipTitle.style.marginTop=2-d+"px":(l-=6,this.tooltipTitle.style.top=l-d+"px")}else null!=this.tooltipTitle&&null!=this.tooltipTitle.parentNode&&(this.tooltipTitle.style.display="none");this.tooltip.style.height=l+"px";var c=-Math.round(s.x-this.tooltipBorder),m=-Math.round(s.y-this.tooltipBorder),u=document.body,p=document.documentElement,g=(u.clientHeight||p.clientHeight,document.getElementById("vertical-navigation").offsetWidth+this.container.clientWidth),h=Math.max(0,this.getOffset(e).top-this.container.scrollTop-l/2+16);mxClient.IS_SVG?0!=c||0!=m?this.graph2.view.canvas.setAttribute("transform","translate("+c+","+m+")"):this.graph2.view.canvas.removeAttribute("transform"):(this.graph2.view.drawPane.style.left=c+"px",this.graph2.view.drawPane.style.top=m+"px"),this.tooltip.style.position="absolute",this.tooltip.style.left=g+"px",this.tooltip.style.top=h+"px",this.tooltipImage.style.left=g-13+"px",this.tooltipImage.style.top=h+l/2-13+"px"});null!=this.tooltip&&"none"!=this.tooltip.style.display?s():this.thread=window.setTimeout(s,this.tooltipDelay),this.currentElt=e}},Sidebar.prototype.hideTooltip=function(){null!=this.thread&&(window.clearTimeout(this.thread),this.thread=null),null!=this.tooltip&&(this.tooltip.style.display="none",this.tooltipImage.style.visibility="hidden",this.currentElt=null)},Sidebar.prototype.addEntry=function(e,t){if(null!=this.taglist&&null!=e&&e.length>0)for(var n=e.toLowerCase().replace(/[\/\,\(\)]/g," ").split(" "),a=0;a<n.length;a++)if(n[a]=n[a].replace(/\.*\d*$/,""),n[a].length>1){var i=this.taglist[n[a]];null==i&&(i={entries:[],dict:new mxDictionary},this.taglist[n[a]]=i),null==i.dict.get(t)&&(i.dict.put(t,t),i.entries.push(t))}return t},Sidebar.prototype.searchEntries=function(e,t,n,a,i){if(null!=this.taglist&&null!=e){for(var o=e.toLowerCase().split(" "),s=new mxDictionary,r=(n+1)*t,l=[],d=0,c=0;c<o.length;c++)if(o[c].length>0){var m=this.taglist[o[c]],u=new mxDictionary;if(null!=m){var p=m.entries;l=[];for(var g=0;g<p.length;g++){m=p[g];if(0==d==(null==s.get(m))&&(u.put(m,m),l.push(m),c==o.length-1&&l.length==r))return void a(l.slice(n*t,r),r,!0)}}else l=[];s=u,d++}var h=l.length;a(l.slice(n*t,(n+1)*t),h,!1)}else a([])},Sidebar.prototype.filterTags=function(e){if(null!=e){for(var t=e.split(" "),n=[],a={},i=0;i<t.length;i++)null==a[t[i]]&&(a[t[i]]="1",n.push(t[i]));return n.join(" ")}return null},Sidebar.prototype.cloneCell=function(e,t){var n=e.clone();return null!=t&&(n.value=t),n},Sidebar.prototype.addSearchPalette=function(e){var t=document.createElement("div");t.style.visibility="hidden",this.container.appendChild(t);var n=document.createElement("div");n.className="geSidebar",n.style.boxSizing="border-box",n.style.overflow="hidden",n.style.width="100%",n.style.padding="8px",n.style.paddingTop="14px",n.style.paddingBottom="0px",e||(n.style.display="none");var a=document.createElement("div");a.style.whiteSpace="nowrap",a.style.textOverflow="clip",a.style.paddingBottom="8px",a.style.cursor="default";var i=document.createElement("input");i.setAttribute("placeholder",mxResources.get("searchShapes")),i.setAttribute("type","text"),i.style.fontSize="12px",i.style.overflow="hidden",i.style.boxSizing="border-box",i.style.border="solid 1px #d5d5d5",i.style.borderRadius="4px",i.style.width="100%",i.style.outline="none",i.style.padding="6px",a.appendChild(i);var o=document.createElement("img");o.setAttribute("src",Sidebar.prototype.searchImage),o.setAttribute("title",mxResources.get("search")),o.style.position="relative",o.style.left="-18px",mxClient.IS_QUIRKS?(i.style.height="28px",o.style.top="-4px"):o.style.top="2px",o.style.background="url('"+this.editorUi.editor.transparentImage+"')";var s;a.appendChild(o),n.appendChild(a);var r=document.createElement("center"),l=mxUtils.button(mxResources.get("moreResults"),function(){s()});l.style.display="none",l.style.lineHeight="normal",l.style.marginTop="4px",l.style.marginBottom="8px",r.style.paddingTop="4px",r.style.paddingBottom="8px",r.appendChild(l),n.appendChild(r);var d="",c=!1,m=!1,u=0,p=new Object,g=12,h=mxUtils.bind(this,function(){c=!1,this.currentSearch=null;for(var e=n.firstChild;null!=e;){var t=e.nextSibling;e!=a&&e!=r&&e.parentNode.removeChild(e),e=t}});s=mxUtils.bind(this,function(){if(g=4*Math.max(1,Math.floor(this.container.clientWidth/(this.thumbWidth+10))),this.hideTooltip(),""!=i.value){if(null!=r.parentNode&&(d!=i.value&&(h(),d=i.value,p=new Object,m=!1,u=0),!c&&!m)){l.setAttribute("disabled","true"),l.style.display="",l.style.cursor="wait",l.innerHTML=mxResources.get("loading")+"...",c=!0;var e=new Object;this.currentSearch=e,this.searchEntries(d,g,u,mxUtils.bind(this,function(t,a,i){if(this.currentSearch==e){t=null!=t?t:[],c=!1,u++,r.parentNode.removeChild(r);for(var o=0;o<t.length;o++){var s=t[o]();null==p[s.innerHTML]&&(p[s.innerHTML]="1",n.appendChild(t[o]()))}if(i?(l.removeAttribute("disabled"),l.innerHTML=mxResources.get("moreResults")):(l.innerHTML=mxResources.get("reset"),l.style.display="none",m=!0),l.style.cursor="",0==t.length&&1==u){var g=document.createElement("div");g.className="geTitle",g.style.backgroundColor="transparent",g.style.borderColor="transparent",g.style.color="gray",g.style.padding="0px",g.style.margin="0px 8px 0px 8px",g.style.paddingTop="6px",g.style.textAlign="center",g.style.cursor="default",mxUtils.write(g,mxResources.get("noResultsFor",[d])),n.appendChild(g)}n.appendChild(r)}}),mxUtils.bind(this,function(){l.style.cursor=""}))}}else h(),i.value="",d="",p=new Object,l.style.display="none",m=!1,i.focus()}),mxEvent.addListener(i,"keydown",mxUtils.bind(this,function(e){13==e.keyCode&&s()})),mxEvent.addListener(i,"focus",function(){i.style.paddingRight="",o.style.display="none"}),mxEvent.addListener(i,"blur",function(){i.style.paddingRight="20px",o.style.display=""}),i.style.paddingRight="20px",mxEvent.addListener(i,"keyup",mxUtils.bind(this,function(e){""==i.value?(m=!0,l.style.display="none"):i.value!=d?(l.style.display="none",m=!1):c||(l.style.display=m?"none":"")})),mxEvent.addListener(i,"mousedown",function(e){e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0}),mxEvent.addListener(i,"selectstart",function(e){e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0});var v=document.createElement("div");v.appendChild(n),this.container.appendChild(v),this.palettes.search=[t,v]},Sidebar.prototype.createTitle=function(e){var t=document.createElement("a");return t.setAttribute("href","javascript:void(0);"),t.setAttribute("title",mxResources.get("sidebarTooltip")),t.className="geTitle",mxUtils.write(t,e),t},Sidebar.prototype.createThumb=function(e,t,n,a,i,o,s,r,l){this.graph.labelsVisible=null==o||o;var d=mxClient.NO_FO;mxClient.NO_FO=Editor.prototype.originalNoForeignObject;this.graph.view.scaleAndTranslate(1,0,0),this.graph.addCells(e);var c=this.graph.getGraphBounds(),m=Math.floor(100*Math.min((t-2*this.thumbBorder)/c.width,(n-2*this.thumbBorder)/c.height))/100;this.graph.view.scaleAndTranslate(m,Math.floor((t-c.width*m)/2/m-c.x),Math.floor((n-c.height*m)/2/m-c.y));var u=null;if(this.graph.dialect!=mxConstants.DIALECT_SVG||mxClient.NO_FO?(u=this.graph.container.cloneNode(!1)).innerHTML=this.graph.container.innerHTML:u=this.graph.view.getCanvas().ownerSVGElement.cloneNode(!0),this.graph.getModel().clear(),mxClient.NO_FO=d,mxClient.IS_IE6&&(a.style.backgroundImage="url("+this.editorUi.editor.transparentImage+")"),u.style.position="relative",u.style.overflow="hidden",u.style.cursor="move",u.style.left=this.thumbBorder+"px",u.style.top=this.thumbBorder+"px",u.style.width=t+"px",u.style.height=n+"px",u.style.visibility="",u.style.minWidth="",u.style.minHeight="",a.appendChild(u),this.sidebarTitles&&null!=i&&0!=s){var p=mxClient.IS_QUIRKS?2*this.thumbPadding+2:0;a.style.height=this.thumbHeight+p+this.sidebarTitleSize+8+"px";var g=document.createElement("div");g.style.fontSize=this.sidebarTitleSize+"px",g.style.color="#303030",g.style.textAlign="center",g.style.whiteSpace="nowrap",mxClient.IS_IE&&(g.style.height=this.sidebarTitleSize+12+"px"),g.style.paddingTop="4px",mxUtils.write(g,i),a.appendChild(g)}return c},Sidebar.prototype.createItem=function(e,t,n,a,i,o,s){var r=document.createElement("a");r.setAttribute("href","javascript:void(0);"),r.className="geItem",r.style.overflow="hidden";var l=mxClient.IS_QUIRKS?8+2*this.thumbPadding:2*this.thumbBorder;r.style.width=this.thumbWidth+l+"px",r.style.height=this.thumbHeight+l+"px",r.style.padding=this.thumbPadding+"px",mxEvent.addListener(r,"click",function(e){mxEvent.consume(e)}),this.createThumb(e,this.thumbWidth,this.thumbHeight,r,t,n,a,i,o);var d=new mxRectangle(0,0,i,o);if(e.length>1||e[0].vertex){c=this.createDragSource(r,this.createDropHandler(e,!0,s,d),this.createDragPreview(i,o),e,d);this.addClickHandler(r,c,e),c.isGuidesEnabled=mxUtils.bind(this,function(){return this.editorUi.editor.graph.graphHandler.guidesEnabled})}else if(null!=e[0]&&e[0].edge){var c=this.createDragSource(r,this.createDropHandler(e,!1,s,d),this.createDragPreview(i,o),e,d);this.addClickHandler(r,c,e)}return mxClient.IS_IOS||mxEvent.addGestureListeners(r,null,mxUtils.bind(this,function(a){this.showTooltip(r,e,d.width,d.height,t,n)})),r},Sidebar.prototype.createDropHandler=function(e,t,n,a){return n=null==n||n,mxUtils.bind(this,function(i,o,s,r,l){if(i.isEnabled()){if((e=i.getImportableCells(e)).length>0){i.stopEditing();var d=null!=s&&i.isValidDropTarget(s,e,o),c=null;if(null==s||d||(s=null),!i.isCellLocked(s||i.getDefaultParent())){i.model.beginUpdate();try{if(r=Math.round(r),l=Math.round(l),t&&i.isSplitTarget(s,e,o)){var m=i.cloneCells(e);i.splitEdge(s,m,null,r-a.width/2,l-a.height/2),c=m}else e.length>0&&(c=i.importCells(e,r,l,s));if(null!=i.layoutManager){var u=i.layoutManager.getLayout(s);if(null!=u)for(var p=i.view.scale,g=i.view.translate,h=(r+g.x)*p,v=(l+g.y)*p,b=0;b<c.length;b++)u.moveCell(c[b],h,v)}n&&i.fireEvent(new mxEventObject("cellsInserted","cells",c))}finally{i.model.endUpdate()}null!=c&&c.length>0&&(i.scrollCellToVisible(c[0]),i.setSelectionCells(c))}}mxEvent.consume(o)}})},Sidebar.prototype.createDragPreview=function(e,t){var n=document.createElement("div");return n.style.border="1px dashed black",n.style.width=e+"px",n.style.height=t+"px",n},Sidebar.prototype.createDragSource=function(e,t,n){var a=mxUtils.makeDraggable(e,this.editorUi.editor.graph,t,n,0,0,this.editorUi.editor.graph.autoscroll,!0,!0);return a.getDropTarget=function(e,t,n){var a=mxDragSource.prototype.getDropTarget.apply(this,arguments);return e.isValidRoot(a)||(a=null),a},a},Sidebar.prototype.addClickHandler=function(e,t){var n=this.editorUi.editor.graph,a=null;mxEvent.addGestureListeners(e,function(e){a=new mxPoint(mxEvent.getClientX(e),mxEvent.getClientY(e))});var i=t.mouseUp;t.mouseUp=function(e){if(!mxEvent.isPopupTrigger(e)&&null==this.currentGraph&&null!=a){var o=n.tolerance;if(Math.abs(a.x-mxEvent.getClientX(e))<=o&&Math.abs(a.y-mxEvent.getClientY(e))<=o){var s=n.getGridSize();t.drop(n,e,null,s,s)}}i.apply(this,arguments),a=null}},Sidebar.prototype.createVertexTemplateEntry=function(e,t,n,a,i,o,s,r){return r=null!=r&&r.length>0?r:i.toLowerCase(),this.addEntry(r,mxUtils.bind(this,function(){return this.createVertexTemplate(e,t,n,a,i,o,s)}))},Sidebar.prototype.createXmlDocument=function(e,t,n,a){var i=mxUtils.createXmlDocument().createElement(e);return i.setAttribute("label",t),n.forEach(function(e,t){i.setAttribute(e,a[t]?a[t]:"")}),i},Sidebar.prototype.createVertexTemplate=function(e,t,n,a,i,o,s,r){var l=[],d=[];switch(a){case"answer":l=["timeout"],d=["0"];break;case"start":l=["answer"],d=["yes"];break;case"ispeechasr":l=["key","model","ispeech_asr_language","timeout","intKey","beep"],d=["","","it-IT","1","#","BEEP"];break;case"playback":l=["file_id","opts"],d=["0"];break;case"background":l=["file_id","response","digit"],d=["0","5","1"];break;case"menu":l=["file_id","response","digit","retry","variable_id"],d=["0","5","1","1","0"];break;case"getdigits":l=["file_id","response","mindigit","maxdigit","retry","variable_id"],d=["0","5","1","10","1","0"];break;case"getsecretdigits":l=["file_id","response","mindigit","maxdigit","retry","hiddendigitsnum","hiddendigitspos","variable_id"],d=["0","5","1","10","1","0","first","0"];break;case"custom_app":l=["application","options"],d=["",""];break;case"set":l=["variable_id","variable_value"],d=["0",""];break;case"database":l=["odbc_id","query","variable_id"],d=["0","",""];break;case"noop":l=["output"],d=[];break;case"gotoc":l=["context","extension","priority"],d=["","","1"];break;case"system":l=["variable_id","command"],d=[];break;case"agi":l=["command","args"],d=[];break;case"gotoif":l=["condition"],d=[];break;case"gotoiftime":l=["interval_id"],d=["0"];break;case"vswitch":l=["variable_id"],d=["0"];break;case"saydigits":l=["digits","escape_digits"],d=["","#"];break;case"saynumber":l=["number","escape_digits"],d=["","#"];break;case"sayphonetic":l=["text","escape_digits"],d=["","#"];break;case"record":l=["file","recordingFormat","timeout","escape_digits"],d=["","wav","-1","#"];break;case"dial":l=["sip_id","timeout","opts","url"],d=["0","60"];break;case"ext_dial":l=["phone","trunk_name","timeout","opts","url"],d=["","-1","60"];break;case"tts":l=["text","google_tts_language"],d=["","it"];break;case"ispeechtts":l=["text","key","ispeech_tts_language","speed","intKey"],d=["","","euritalianfemale","0","#"];break;case"queue":l=["queue_id","opts","url","file_id","timeout","agi","macro","gosub","position"],d=["-1","xX","","","300"];break;case"voicemail":l=["mailbox","options"],d=["",""];break;case"subproject":l=["project_id"],d=["0"];break;case"math":l=["operation","variable_id"],d=["","0"];break;case"queuelog":l=["queuename","agent","queue_event","data1","data2","data3","data4","data5"],d=[];break;case"goal":l=["goalname"],d=[];break;case"callback":l=["name","lastName","phone","list_id","delay"],d=["{CALLERID(name)}","","{CALLERID(num)}","-1","5"];break;case"sendSMS":l=["account_id","to","sms_text"],d=["0"];break;case"sendMail":l=["account_id","template_id","to","cc","bcc","subject","text"],d=["0"];break;case"sendFax":l=["account_id","to","choose_attachment","attachment_name","attachment_type","attachment_path"],d=["0"];break;default:l=[],d=[]}var c=[new mxCell(this.createXmlDocument(a,i,l,d),new mxGeometry(0,0,t,n),e)];return c[0].vertex=!0,this.createVertexTemplateFromCells(c,t,n,i,o,s,r)},Sidebar.prototype.createVertexTemplateFromCells=function(e,t,n,a,i,o,s){return this.createItem(e,a,i,o,t,n,s)},Sidebar.prototype.createEdgeTemplate=function(e,t,n,a,i,o,s){var r=new mxCell(null!=a?a:"",new mxGeometry(0,0,t,n),e);return r.geometry.setTerminalPoint(new mxPoint(0,n),!0),r.geometry.setTerminalPoint(new mxPoint(t,0),!1),r.geometry.relative=!0,r.edge=!0,this.createEdgeTemplateFromCells([r],t,n,i,o,s)},Sidebar.prototype.createEdgeTemplateFromCells=function(e,t,n,a,i,o){return this.createItem(e,a,i,!0,t,n,o)},Sidebar.prototype.addPaletteFunctions=function(e,t,n,a){this.addPalette(e,t,n,mxUtils.bind(this,function(e){for(var t=0;t<a.length;t++)e.appendChild(a[t](e))}))},Sidebar.prototype.addPalette=function(e,t,n,a){var i=this.createTitle(t);this.container.appendChild(i);var o=document.createElement("div");o.className="geSidebar",mxClient.IS_POINTER&&(o.style.touchAction="none"),mxEvent.addListener(o,"mousemove",mxUtils.bind(this,function(e){mxEvent.getSource(e)==o?o.setAttribute("title",mxResources.get("sidebarTooltip")):o.removeAttribute("title")})),n?(a(o),a=null):o.style.display="none",this.addFoldingHandler(i,o,a);var s=document.createElement("div");return s.appendChild(o),this.container.appendChild(s),null!=e&&(this.palettes[e]=[i,s]),o},Sidebar.prototype.addFoldingHandler=function(e,t,n){var a=!1;(!mxClient.IS_IE||document.documentMode>=8)&&(e.style.backgroundImage="none"==t.style.display?"url('"+this.collapsedImage+"')":"url('"+this.expandedImage+"')"),e.style.backgroundRepeat="no-repeat",e.style.backgroundPosition="0% 50%",mxEvent.addListener(e,"click",mxUtils.bind(this,function(i){if("none"==t.style.display){if(a)t.style.display="block";else if(a=!0,null!=n){e.style.cursor="wait";var o=e.innerHTML;e.innerHTML=mxResources.get("loading")+"...",window.setTimeout(function(){var a=mxClient.NO_FO;mxClient.NO_FO=Editor.prototype.originalNoForeignObject,n(t),mxClient.NO_FO=a,t.style.display="block",e.style.cursor="",e.innerHTML=o},0)}else t.style.display="block";e.style.backgroundImage="url('"+this.expandedImage+"')"}else e.style.backgroundImage="url('"+this.collapsedImage+"')",t.style.display="none";mxEvent.consume(i)}))},Sidebar.prototype.addImagePalette=function(e,t,n,a,i,o,s){for(var r=[],l=0;l<i.length;l++)mxUtils.bind(this,function(e,t,o){if(null==o){var s=e.lastIndexOf("/"),d=e.lastIndexOf(".");o=e.substring(s>=0?s+1:0,d>=0?d:e.length).replace(/[-_]/g," ")}r.push(this.createVertexTemplateEntry("image;html=1;labelBackgroundColor=#ffffff;image="+n+e+a,this.defaultImageWidth,this.defaultImageHeight,i[l],t,!1,!0,this.filterTags(o)))})(i[l],null!=o?o[l]:null,null!=s?s[i[l]]:null);this.addPaletteFunctions(e,t,!1,r)},"undefined"!=typeof html4&&(html4.ATTRIBS["a::target"]=0),mxConstants.SHADOW_OPACITY=.25,mxConstants.SHADOWCOLOR="#000000",mxConstants.VML_SHADOWCOLOR="#d0d0d0",mxGraph.prototype.pageBreakColor="#c0c0c0",mxGraph.prototype.pageScale=1,function(){try{if(null!=navigator&&null!=navigator.language){var e=navigator.language.toLowerCase();mxGraph.prototype.pageFormat="en-us"===e||"en-ca"===e||"es-mx"===e?mxConstants.PAGE_FORMAT_LETTER_PORTRAIT:mxConstants.PAGE_FORMAT_A4_PORTRAIT}}catch(e){}}(),mxText.prototype.baseSpacingTop=5,mxText.prototype.baseSpacingBottom=1,mxGraphModel.prototype.ignoreRelativeEdgeParent=!1,mxGraphView.prototype.gridImage=mxClient.IS_SVG?"data:image/gif;base64,R0lGODlhCgAKAJEAAAAAAP///8zMzP///yH5BAEAAAMALAAAAAAKAAoAAAIJ1I6py+0Po2wFADs=":IMAGE_PATH+"/grid.gif",mxGraphView.prototype.gridSteps=4,mxGraphView.prototype.minGridSize=4,mxGraphView.prototype.gridColor="#e0e0e0",mxSvgCanvas2D.prototype.foAltText="[Not supported by viewer]",Graph=function(e,t,n,a){mxGraph.call(this,e,t,n,a),this.setConnectable(!0),this.setDropEnabled(!1),this.setPanning(!0),this.setTooltips(!mxClient.IS_TOUCH),this.setAllowLoops(!1),this.setMultigraph(!1),this.allowAutoPanning=!0,this.resetEdgesOnConnect=!1,this.constrainChildren=!1,this.connectionHandler.targetConnectImage=!0,this.setAllowDanglingEdges(!1),this.connectionHandler.setCreateTarget(!1),this.connectionHandler.isValidSource=function(){return mxConnectionHandler.prototype.isValidSource.apply(this,arguments)&&"2"!=urlParams.connect},this.alternateEdgeStyle="vertical",null==a&&this.loadStylesheet();var i=new mxRubberband(this);this.getRubberband=function(){return i},this.panningHandler.addListener(mxEvent.PAN_START,mxUtils.bind(this,function(){this.container.style.cursor="pointer"})),this.panningHandler.addListener(mxEvent.PAN_END,mxUtils.bind(this,function(){this.container.style.cursor="default"})),this.isHtmlLabel=function(e){var t=this.view.getState(e),n=null!=t?t.style:this.getCellStyle(e);return"1"==n.html||"wrap"==n.whiteSpace},this.cellRenderer.getLabelValue=function(e){var t=mxCellRenderer.prototype.getLabelValue.apply(this,arguments);return"wrap"==e.style.whiteSpace&&1!=e.style.html&&(t=mxUtils.htmlEntities(t,!1)),t},this.isCellLocked=function(e){return!1},this.connectionHandler.tapAndHoldTolerance=16;var o=this.connectionHandler.tapAndHold;this.connectionHandler.tapAndHold=function(e,t){null==t?this.graph.panningHandler.active||(i.start(e.getGraphX(),e.getGraphY()),this.graph.panningHandler.panningTrigger=!1):tapAndHoldStartsConnection?o.apply(this,arguments):this.graph.isCellSelected(t.cell)&&this.graph.getSelectionCount()>1&&this.graph.removeSelectionCell(t.cell)},touchStyle&&this.initTouch()},mxUtils.extend(Graph,mxGraph),Graph.prototype.minFitScale=null,Graph.prototype.maxFitScale=null,Graph.prototype.loadStylesheet=function(){var e=mxUtils.load(STYLE_PATH+"/default.xml").getDocumentElement();new mxCodec(e.ownerDocument).decode(e,this.getStylesheet())},Graph.prototype.flipEdge=function(e){if(null!=e){var t=this.view.getState(e),n=null!=t?t.style:this.getCellStyle(e);if(null!=n){var a=mxUtils.getValue(n,mxConstants.STYLE_ELBOW,mxConstants.ELBOW_HORIZONTAL)==mxConstants.ELBOW_HORIZONTAL?mxConstants.ELBOW_VERTICAL:mxConstants.ELBOW_HORIZONTAL;this.setCellStyles(mxConstants.STYLE_ELBOW,a,[e])}}},Graph.prototype.setDefaultEdge=function(e){if(null!=e&&this.getModel().isEdge(e)){var t=this.getModel().cloneCells([e])[0];null!=t.geometry&&(t.geometry.points=null);var n=t.getStyle();n=mxUtils.setStyle(n,mxConstants.STYLE_ENTRY_X,null),n=mxUtils.setStyle(n,mxConstants.STYLE_ENTRY_Y,null),n=mxUtils.setStyle(n,mxConstants.STYLE_EXIT_X,null),n=mxUtils.setStyle(n,mxConstants.STYLE_EXIT_Y,null),t.setStyle(n),this.connectionHandler.createEdgeState=function(e){return this.graph.view.createState(t)},this.connectionHandler.factoryMethod=function(){return this.graph.cloneCells([t])[0]}}},Graph.prototype.isCellFoldable=function(e){return this.foldingEnabled&&this.isSwimlane(e)},Graph.prototype.isValidRoot=function(e){return this.isSwimlane(e)},Graph.prototype.createGroupCell=function(){var e=mxGraph.prototype.createGroupCell.apply(this,arguments);return e.setStyle("group"),e},Graph.prototype.getTooltipForCell=function(e){var t="";return this.getModel().isVertex(e)?t+=mxResources.get("description_"+e.value.nodeName)||"":this.getModel().isEdge(e)&&(t=mxGraph.prototype.getTooltipForCell.apply(this,arguments)),t},Graph.prototype.convertValueToString=function(e){return null!=e.value&&"object"==typeof e.value?e.value.getAttribute("label"):mxGraph.prototype.convertValueToString.apply(this,arguments)},Graph.prototype.cellLabelChanged=function(e,t,n){if(null!=e.value&&"object"==typeof e.value){var a=e.value.cloneNode(!0);a.setAttribute("label",t),t=a}mxGraph.prototype.cellLabelChanged.apply(this,arguments)},Graph.prototype.setLinkForCell=function(e,t){var n=null;null!=e.value&&"object"==typeof e.value?n=e.value.cloneNode(!0):(n=mxUtils.createXmlDocument().createElement("UserObject")).setAttribute("label",e.value),null!=t&&t.length>0?n.setAttribute("link",t):n.removeAttribute("link"),this.model.setValue(e,n)},Graph.prototype.getLinkForCell=function(e){return null!=e.value&&"object"==typeof e.value?e.value.getAttribute("link"):null},Graph.prototype.initTouch=function(){this.connectionHandler.marker.isEnabled=function(){return null!=this.graph.connectionHandler.first},this.addListener(mxEvent.START_EDITING,function(e,t){this.panningHandler.hideMenu()});var e=!1,t=null;this.updateMouseEvent=function(e){if(mxGraph.prototype.updateMouseEvent.apply(this,arguments),null==e.getState()){var t=this.getCellAt(e.graphX,e.graphY);this.getModel().isEdge(t)&&(e.state=this.view.getState(t),null!=e.state&&null!=e.state.shape&&(this.container.style.cursor=e.state.shape.node.style.cursor))}null==e.getState()&&(this.container.style.cursor="default")},this.fireMouseEvent=function(n,a,i){if(n==mxEvent.MOUSE_DOWN)this.panningHandler.isMenuShowing()?(e=!1,t=null):(t=a.getCell(),e=null!=t?this.isCellSelected(t):this.isSelectionEmpty());else if(n==mxEvent.MOUSE_UP){if(e&&!this.isEditing()){if(!this.panningHandler.isMenuShowing()){var o=mxEvent.getClientX(a.getEvent()),s=mxEvent.getClientY(a.getEvent());this.panningHandler.popup(o+16,s,t,a.getEvent())}return e=!1,t=null,void a.consume()}e=!1,t=null}mxGraph.prototype.fireMouseEvent.apply(this,arguments),n==mxEvent.MOUSE_MOVE&&a.isConsumed()&&(e=!1,t=null)}},function(){if(mxVertexHandler.prototype.rotationEnabled=!0,mxText.prototype.baseSpacingTop=5,mxText.prototype.baseSpacingBottom=1,touchStyle){mxConstants.HANDLE_SIZE=16,mxConstants.LABEL_HANDLE_SIZE=7,mxClient.IS_TOUCH&&(mxVertexHandler.prototype.tolerance=4,mxEdgeHandler.prototype.tolerance=6,Graph.prototype.tolerance=14,Graph.prototype.gridSize=20,mxPanningHandler.prototype.selectOnPopup=!1,mxPanningHandler.prototype.useLeftButtonForPanning=!0,mxPanningHandler.prototype.isPanningTrigger=function(e){var t=e.getEvent();return this.useLeftButtonForPanning&&(this.ignoreCell||null==e.getState())||mxEvent.isControlDown(t)&&mxEvent.isShiftDown(t)||this.usePopupTrigger&&mxEvent.isPopupTrigger(t)});var e=mxGraphHandler.prototype.mouseDown;mxGraphHandler.prototype.mouseDown=function(t,n){e.apply(this,arguments),this.graph.isCellSelected(n.getCell())&&this.graph.getSelectionCount()>1&&(this.delayedSelection=!1)},Graph.prototype.createHandlers=function(e){this.tooltipHandler=new mxTooltipHandler(this),this.tooltipHandler.setEnabled(!1),this.selectionCellsHandler=new mxSelectionCellsHandler(this),this.panningHandler=new mxPanningHandler(this),this.panningHandler.panningEnabled=!1,this.connectionHandler=new mxConnectionHandler(this),this.connectionHandler.setEnabled(!1),this.graphHandler=new mxGraphHandler(this)},mxConnectionHandler.prototype.selectCells=function(e,t){touchStyle&&null!=t?this.graph.setSelectionCell(t):this.graph.setSelectionCell(e)};var t=mxGraph.prototype.dblClick;Graph.prototype.dblClick=function(e,n){if(null==n){var a=mxUtils.convertPoint(this.container,mxEvent.getClientX(e),mxEvent.getClientY(e));n=this.getCellAt(a.x,a.y)}t.call(this,e,n)};var n=new mxImage(IMAGE_PATH+"/touch-handle.png",16,16);mxVertexHandler.prototype.handleImage=n,mxEdgeHandler.prototype.handleImage=n,mxOutline.prototype.sizerImage=n,(new Image).src=n.src;var a=IMAGE_PATH+"/touch-connector.png",i=mxVertexHandler.prototype.init;mxVertexHandler.prototype.init=function(){i.apply(this,arguments),showConnectorImg&&this.graph.connectionHandler.isEnabled()&&this.graph.isCellConnectable(this.state.cell)&&!this.graph.isValidRoot(this.state.cell)&&1==this.graph.getSelectionCount()&&(this.connectorImg=mxUtils.createImage(a),this.connectorImg.style.cursor="pointer",this.connectorImg.style.width="29px",this.connectorImg.style.height="29px",this.connectorImg.style.position="absolute",mxClient.IS_TOUCH||(this.connectorImg.setAttribute("title",mxResources.get("connect")),mxEvent.redirectMouseEvents(this.connectorImg,this.graph,this.state)),this.connectorImg.style.padding="2px",mxEvent.addGestureListeners(this.connectorImg,mxUtils.bind(this,function(e){this.graph.panningHandler.hideMenu();var t=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e));this.graph.connectionHandler.start(this.state,t.x,t.y),this.graph.isMouseDown=!0,mxEvent.consume(e)})),this.graph.container.appendChild(this.connectorImg)),this.redrawTools()};s=mxVertexHandler.prototype.redraw;mxVertexHandler.prototype.redraw=function(){s.apply(this),this.redrawTools()},mxVertexHandler.prototype.redrawTools=function(){null!=this.state&&null!=this.connectorImg&&(mxVertexHandler.prototype.singleSizer?(this.connectorImg.style.left=this.state.x+this.state.width-this.connectorImg.offsetWidth/2+"px",this.connectorImg.style.top=this.state.y-this.connectorImg.offsetHeight/2+"px"):(this.connectorImg.style.left=this.state.x+this.state.width+mxConstants.HANDLE_SIZE/2+4+"px",this.connectorImg.style.top=this.state.y+(this.state.height-this.connectorImg.offsetHeight)/2+"px"))};r=mxVertexHandler.prototype.destroy;mxVertexHandler.prototype.destroy=function(e,t){r.apply(this,arguments),null!=this.connectorImg&&(this.connectorImg.parentNode.removeChild(this.connectorImg),this.connectorImg=null)},(new Image).src=a}else{o=new mxImage(IMAGE_PATH+"/connector.png",15,15);if(mxConnectionHandler.prototype.connectImage=o,(new Image).src=o.src,"2"==urlParams.connect){var o=new mxImage(IMAGE_PATH+"/connector.png",15,15),i=mxVertexHandler.prototype.init;mxVertexHandler.prototype.init=function(){i.apply(this,arguments),showConnectorImg&&this.graph.connectionHandler.isEnabled()&&this.graph.isCellConnectable(this.state.cell)&&!this.graph.isValidRoot(this.state.cell)&&1==this.graph.getSelectionCount()&&(mxClient.IS_IE&&!mxClient.IS_SVG?(this.connectorImg=document.createElement("div"),this.connectorImg.style.backgroundImage="url("+o.src+")",this.connectorImg.style.backgroundPosition="center",this.connectorImg.style.backgroundRepeat="no-repeat",this.connectorImg.style.width=o.width+4+"px",this.connectorImg.style.height=o.height+4+"px",this.connectorImg.style.display=mxClient.IS_QUIRKS?"inline":"inline-block"):(this.connectorImg=mxUtils.createImage(o.src),this.connectorImg.style.width=o.width+"px",this.connectorImg.style.height=o.height+"px"),this.connectorImg.style.cursor="pointer",this.connectorImg.style.position="absolute",this.connectorImg.setAttribute("title",mxResources.get("connect")),mxEvent.redirectMouseEvents(this.connectorImg,this.graph,this.state),this.connectorImg.style.padding="2px",mxEvent.addListener(this.connectorImg,"mousedown",mxUtils.bind(this,function(e){this.graph.panningHandler.hideMenu();var t=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e));this.graph.connectionHandler.start(this.state,t.x,t.y),this.graph.isMouseDown=!0,mxEvent.consume(e)})),this.graph.container.appendChild(this.connectorImg)),this.redrawTools()};var s=mxVertexHandler.prototype.redraw;mxVertexHandler.prototype.redraw=function(){s.apply(this),this.redrawTools()},mxVertexHandler.prototype.redrawTools=function(){null!=this.state&&null!=this.connectorImg&&(mxVertexHandler.prototype.singleSizer?(this.connectorImg.style.left=this.state.x+this.state.width-this.connectorImg.offsetWidth/2+"px",this.connectorImg.style.top=this.state.y-this.connectorImg.offsetHeight/2+"px"):(this.connectorImg.style.left=this.state.x+this.state.width+mxConstants.HANDLE_SIZE/2+2+"px",this.connectorImg.style.top=this.state.y+(this.state.height-this.connectorImg.offsetHeight)/2+"px"))};var r=mxVertexHandler.prototype.destroy;mxVertexHandler.prototype.destroy=function(e,t){r.apply(this,arguments),null!=this.connectorImg&&(this.connectorImg.parentNode.removeChild(this.connectorImg),this.connectorImg=null)}}}}(),Actions.prototype.init=function(){var e=this.editorUi,t=e.editor,n=t.graph;this.addAction("new",function(){e.projectDesignController.newProject()}),this.addAction("open",function(){e.projectDesignController.openProject()}),this.addAction("save",function(){e.projectDesignController.saveOrPublishProject(mxUtils.getPrettyXml(t.getGraphXml())),e.editor.modified=!1},null,null,"Ctrl+S"),this.addAction("saveAs",function(){e.projectDesignController.saveProjectAs(mxUtils.getPrettyXml(t.getGraphXml()))},null,null,"Ctrl+Shift+S"),this.addAction("publish",function(){e.editor.setStatus(""),null===e.validate()?(e.projectDesignController.saveOrPublishProject(mxUtils.getPrettyXml(t.getGraphXml()),!0),e.editor.modified=!1):(e.editor.setStatus("...Error publishing! Please check the project and try again!"),setTimeout(function(){e.editor.setStatus("")},3e3))},null,null,"Ctrl+Shift+P"),this.addAction("variable",function(){e.projectDesignController.newVariable()}),this.addAction("import",function(){e.projectDesignController.importXML(function(e){t.setGraphXml(mxUtils.parseXml(e).documentElement)})}),this.addAction("export",function(){e.exportXML(mxUtils.getPrettyXml(t.getGraphXml()))},null,null,"Ctrl+E"),this.addAction("editFile",function(){e.projectDesignController.editXML(mxUtils.getPrettyXml(t.getGraphXml()),function(e){t.setGraphXml(mxUtils.parseXml(e).documentElement)})}),this.addAction("print",function(){mxUtils.printScreen(n)},null,"sprite-print","Ctrl+P"),this.addAction("preview",function(){mxUtils.show(n,null,10,10)}),this.addAction("undo",function(){t.undoManager.undo()},null,"sprite-undo","Ctrl+Z"),this.addAction("redo",function(){t.undoManager.redo()},null,"sprite-redo","Ctrl+Y"),this.addAction("cut",function(){mxClipboard.cut(n)},null,"sprite-cut","Ctrl+X"),this.addAction("copy",function(){mxClipboard.copy(n)},null,"sprite-copy","Ctrl+C"),this.addAction("paste",function(){mxClipboard.paste(n)},!1,"sprite-paste","Ctrl+V"),this.addAction("delete",function(){n.removeCells()},null,null,"Delete"),this.addAction("duplicate",function(){var e=n.gridSize;n.setSelectionCells(n.moveCells(n.getSelectionCells(),e,e,!0))},null,null,"Ctrl+D"),this.addAction("selectVertices",function(){n.selectVertices()},null,null,"Ctrl+Shift+V"),this.addAction("selectEdges",function(){n.selectEdges()},null,null,"Ctrl+Shift+E"),this.addAction("selectAll",function(){n.selectAll()},null,null,"Ctrl+A"),this.addAction("home",function(){n.home()},null,null,"Home"),this.addAction("exitGroup",function(){n.exitGroup()},null,null,"Page Up"),this.addAction("enterGroup",function(){n.enterGroup()},null,null,"Page Down"),this.addAction("expand",function(){n.foldCells(!1)},null,null,"Enter"),this.addAction("collapse",function(){n.foldCells(!0)},null,null,"Backspace"),this.addAction("toFront",function(){n.orderCells(!1)},null,null,"Ctrl+F"),this.addAction("toBack",function(){n.orderCells(!0)},null,null,"Ctrl+B"),this.addAction("group",function(){n.setSelectionCell(n.groupCells(null,0))},null,null,"Ctrl+G"),this.addAction("ungroup",function(){n.setSelectionCells(n.ungroupCells())},null,null,"Ctrl+U"),this.addAction("removeFromGroup",function(){n.removeCellsFromParent()}),this.addAction("editLink",function(){var e=n.getSelectionCell(),t=n.getLinkForCell(e);null==t&&(t=""),null!=(t=mxUtils.prompt(mxResources.get("enterValue"),t))&&n.setLinkForCell(e,t)}),this.addAction("openLink",function(){var e=n.getSelectionCell(),t=n.getLinkForCell(e);null!=t&&window.open(t)}),this.addAction("autosize",function(){var e=n.getSelectionCells();if(null!=e){n.getModel().beginUpdate();try{for(var t=0;t<e.length;t++){var a=e[t];n.getModel().getChildCount(a)?n.updateGroupBounds([a],20):n.updateCellSize(a)}}finally{n.getModel().endUpdate()}}}),this.addAction("wordWrap",function(){var e=n.getView().getState(n.getSelectionCell()),t="wrap";null!=e&&"wrap"==e.style[mxConstants.STYLE_WHITE_SPACE]&&(t=null),n.setCellStyles(mxConstants.STYLE_WHITE_SPACE,t)}),this.addAction("rotation",function(){var e="0",t=n.getView().getState(n.getSelectionCell());null!=t&&(e=t.style[mxConstants.STYLE_ROTATION]||e),null!=(e=mxUtils.prompt(mxResources.get("enterValue")+" ("+mxResources.get("rotation")+" 0-360)",e))&&n.setCellStyles(mxConstants.STYLE_ROTATION,e)}),this.addAction("tilt",function(){var e=n.getSelectionCells();if(null!=e){n.getModel().beginUpdate();try{for(var t=0;t<e.length;t++){var a=e[t];if(n.getModel().isVertex(a)&&0==n.getModel().getChildCount(a)){var i=n.getCellGeometry(a);if(null!=i){(i=i.clone()).x+=i.width/2-i.height/2,i.y+=i.height/2-i.width/2;var o=i.width;i.width=i.height,i.height=o,n.getModel().setGeometry(a,i);var s=n.view.getState(a);if(null!=s){var r=s.style[mxConstants.STYLE_DIRECTION]||"east";"east"==r?r="south":"south"==r?r="west":"west"==r?r="north":"north"==r&&(r="east"),n.setCellStyles(mxConstants.STYLE_DIRECTION,r,[a])}}}}}finally{n.getModel().endUpdate()}}},null,null,"Ctrl+R"),this.addAction("actualSize",function(){n.zoomTo(1)}),this.addAction("zoomIn",function(){n.zoomIn()},null,null,"Add"),this.addAction("zoomOut",function(){n.zoomOut()},null,null,"Subtract"),this.addAction("fitWindow",function(){n.fit()}),this.addAction("fitPage",mxUtils.bind(this,function(){n.pageVisible||this.get("pageView").funct();var e=n.pageFormat,t=n.pageScale,a=n.container.clientWidth-20,i=n.container.clientHeight-20,o=Math.floor(100*Math.min(a/e.width/t,i/e.height/t))/100;n.zoomTo(o),n.container.scrollLeft=Math.round(n.view.translate.x*o-Math.max(10,(n.container.clientWidth-e.width*t*o)/2)),n.container.scrollTop=Math.round(n.view.translate.y*o-Math.max(10,(n.container.clientHeight-e.height*t*o)/2))})),this.addAction("fitPageWidth",mxUtils.bind(this,function(){n.pageVisible||this.get("pageView").funct();var e=n.pageFormat,t=n.pageScale,a=n.container.clientWidth-20,i=Math.floor(100*a/e.width/t)/100;n.zoomTo(i),n.container.scrollLeft=Math.round(n.view.translate.x*i-Math.max(10,(n.container.clientWidth-e.width*t*i)/2)),n.container.scrollTop=Math.round(n.view.translate.y*i-Math.max(10,(n.container.clientHeight-e.height*t*i)/2))})),this.put("customZoom",new Action(mxResources.get("custom"),function(){var e=mxUtils.prompt(mxResources.get("enterValue")+" (%)",parseInt(100*n.getView().getScale()));null!=e&&e.length>0&&!isNaN(parseInt(e))&&n.zoomTo(parseInt(e)/100)}));var a=null;(a=this.addAction("grid",function(){n.setGridEnabled(!n.isGridEnabled()),t.updateGraphComponents()},null,null,"Ctrl+Shift+G")).setToggleAction(!0),a.setSelectedCallback(function(){return n.isGridEnabled()}),(a=this.addAction("guides",function(){n.graphHandler.guidesEnabled=!n.graphHandler.guidesEnabled})).setToggleAction(!0),a.setSelectedCallback(function(){return n.graphHandler.guidesEnabled}),(a=this.addAction("tooltips",function(){n.tooltipHandler.setEnabled(!n.tooltipHandler.isEnabled())})).setToggleAction(!0),a.setSelectedCallback(function(){return n.tooltipHandler.isEnabled()}),(a=this.addAction("navigation",function(){n.foldingEnabled=!n.foldingEnabled,n.view.revalidate()})).setToggleAction(!0),a.setSelectedCallback(function(){return n.foldingEnabled}),(a=this.addAction("scrollbars",function(){if(n.scrollbars=!n.scrollbars,t.updateGraphComponents(),n.scrollbars){var e=n.view.translate.x,a=n.view.translate.y;n.view.translate.x=0,n.view.translate.y=0,n.sizeDidChange(),n.container.scrollLeft-=Math.round(e*n.view.scale),n.container.scrollTop-=Math.round(a*n.view.scale)}else{var i=n.view.translate;n.view.setTranslate(i.x-n.container.scrollLeft/n.view.scale,i.y-n.container.scrollTop/n.view.scale),n.container.scrollLeft=0,n.container.scrollTop=0,n.sizeDidChange()}},!mxClient.IS_TOUCH)).setToggleAction(!0),a.setSelectedCallback(function(){return"auto"==n.container.style.overflow}),(a=this.addAction("pageView",mxUtils.bind(this,function(){n.pageVisible=!n.pageVisible,n.pageBreaksVisible=n.pageVisible,n.preferPageSize=n.pageBreaksVisible,n.view.validate(),n.sizeDidChange(),t.updateGraphComponents(),t.outline.update(),mxUtils.hasScrollbars(n.container)&&(n.pageVisible?(n.container.scrollLeft-=20,n.container.scrollTop-=20):(n.container.scrollLeft+=20,n.container.scrollTop+=20))}))).setToggleAction(!0),a.setSelectedCallback(function(){return n.pageVisible}),(a=this.addAction("connect",function(){n.setConnectable(!n.connectionHandler.isEnabled())},null,null,"Ctrl+Q")).setToggleAction(!0),a.setSelectedCallback(function(){return n.connectionHandler.isEnabled()}),(a=this.addAction("copyConnect",function(){n.connectionHandler.setCreateTarget(!n.connectionHandler.isCreateTarget())})).setToggleAction(!0),a.setSelectedCallback(function(){return n.connectionHandler.isCreateTarget()}),this.addAction("help",function(){window.open("https://wiki.xcallymotion.com/display/XMD/Cally+Square")}),this.put("about",new Action(mxResources.get("about")+" Cally Square",function(){window.open("http://callysquare.com/")},null,null,null));var i=mxUtils.bind(this,function(e,t){this.addAction(e,function(){n.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,t)})});i("bold",mxConstants.FONT_BOLD),i("italic",mxConstants.FONT_ITALIC),i("underline",mxConstants.FONT_UNDERLINE),this.addAction("shadow",function(){n.toggleCellStyles(mxConstants.STYLE_SHADOW)}),this.addAction("dashed",function(){n.toggleCellStyles(mxConstants.STYLE_DASHED)}),this.addAction("rounded",function(){n.toggleCellStyles(mxConstants.STYLE_ROUNDED)}),this.addAction("curved",function(){n.toggleCellStyles(mxConstants.STYLE_CURVED)}),this.addAction("style",function(){var e=n.getSelectionCells();if(null!=e&&e.length>0){var t=n.getModel(),a=mxUtils.prompt(mxResources.get("enterValue")+" ("+mxResources.get("style")+")",t.getStyle(e[0])||"");null!=a&&n.setCellStyle(a,e)}}),this.addAction("setAsDefaultEdge",function(){n.setDefaultEdge(n.getSelectionCell())}),this.addAction("addWaypoint",function(){var e=n.getSelectionCell();if(null!=e&&n.getModel().isEdge(e)){var a=t.graph.selectionCellsHandler.getHandler(e);if(a instanceof mxEdgeHandler){var i=n.view.translate,o=n.view.scale,s=i.x,r=i.y,l=n.getModel().getParent(e),d=n.getCellGeometry(l);n.getModel().isVertex(l)&&null!=d&&(s+=d.x,r+=d.y),a.addPointAt(a.state,n.panningHandler.triggerX/o-s,n.panningHandler.triggerY/o-r)}}}),this.addAction("removeWaypoint",function(){var t=e.actions.get("removeWaypoint");null!=t.handler&&t.handler.removePoint(t.handler.state,t.index)}),this.addAction("image",function(){function e(e,t,a){var i=null,o=n.getSelectionCells();n.getModel().beginUpdate();try{if(0==o.length){var s=n.getGridSize();i=o=[n.insertVertex(n.getDefaultParent(),null,"",s,s,t,a)]}if(n.setCellStyles(mxConstants.STYLE_IMAGE,e,o),n.setCellStyles(mxConstants.STYLE_SHAPE,"image",o),1==n.getSelectionCount()&&null!=t&&null!=a){var r=o[0],l=n.getModel().getGeometry(r);null!=l&&((l=l.clone()).width=t,l.height=a,n.getModel().setGeometry(r,l))}}finally{n.getModel().endUpdate()}null!=i&&(n.setSelectionCells(i),n.scrollCellToVisible(i[0]))}var t="",a=n.getView().getState(n.getSelectionCell());if(null!=a&&(t=a.style[mxConstants.STYLE_IMAGE]||t),null!=(t=mxUtils.prompt(mxResources.get("enterValue")+" ("+mxResources.get("url")+")",t))&&t.length>0){var i=new Image;i.onload=function(){e(t,i.width,i.height)},i.onerror=function(){mxUtils.alert(mxResources.get("fileNotFound"))},i.src=t}})},Actions.prototype.addAction=function(e,t,n,a,i){return this.put(e,new Action(mxResources.get(e),t,n,a,i))},Actions.prototype.put=function(e,t){return this.actions[e]=t,t},Actions.prototype.get=function(e){return this.actions[e]},mxUtils.extend(Action,mxEventSource),Action.prototype.setEnabled=function(e){this.enabled!=e&&(this.enabled=e,this.fireEvent(new mxEventObject("stateChanged")))},Action.prototype.setToggleAction=function(e){this.toggleAction=e},Action.prototype.setSelectedCallback=function(e){this.selectedCallback=e},Action.prototype.isSelected=function(){return this.selectedCallback()},Menus=function(e){this.editorUi=e,this.menus=new Object,this.init(),(new Image).src=IMAGE_PATH+"/checkmark.gif"},Menus.prototype.init=function(){var e=this.editorUi.editor.graph;this.put("fontFamily",new Menu(mxUtils.bind(this,function(e,t){for(var n=["Helvetica","Verdana","Times New Roman","Garamond","Comic Sans MS","Courier New","Georgia","Lucida Console","Tahoma"],a=0;a<n.length;a++)this.styleChange(e,n[a],[mxConstants.STYLE_FONTFAMILY],[n[a]],null,t).firstChild.nextSibling.style.fontFamily=n[a];e.addSeparator(t),this.promptChange(e,mxResources.get("custom"),"",mxConstants.DEFAULT_FONTFAMILY,mxConstants.STYLE_FONTFAMILY,t)}))),this.put("fontSize",new Menu(mxUtils.bind(this,function(e,t){for(var n=[6,8,9,10,11,12,14,18,24,36,48,72],a=0;a<n.length;a++)this.styleChange(e,n[a],[mxConstants.STYLE_FONTSIZE],[n[a]],null,t);e.addSeparator(t),this.promptChange(e,mxResources.get("custom"),"(pt)","12",mxConstants.STYLE_FONTSIZE,t)}))),this.put("linewidth",new Menu(mxUtils.bind(this,function(e,t){for(var n=[1,2,3,4,8,12,16,24],a=0;a<n.length;a++)this.styleChange(e,n[a]+"px",[mxConstants.STYLE_STROKEWIDTH],[n[a]],null,t);e.addSeparator(t),this.promptChange(e,mxResources.get("custom"),"(px)","1",mxConstants.STYLE_STROKEWIDTH,t)}))),this.put("line",new Menu(mxUtils.bind(this,function(e,t){this.styleChange(e,mxResources.get("straight"),[mxConstants.STYLE_EDGE],[null],null,t),this.styleChange(e,mxResources.get("entityRelation"),[mxConstants.STYLE_EDGE],["entityRelationEdgeStyle"],null,t),e.addSeparator(t),this.styleChange(e,mxResources.get("horizontal"),[mxConstants.STYLE_EDGE,mxConstants.STYLE_ELBOW],["elbowEdgeStyle","horizontal"],null,t),this.styleChange(e,mxResources.get("vertical"),[mxConstants.STYLE_EDGE,mxConstants.STYLE_ELBOW],["elbowEdgeStyle","vertical"],null,t),e.addSeparator(t),this.styleChange(e,mxResources.get("manual"),[mxConstants.STYLE_EDGE],["segmentEdgeStyle"],null,t),this.styleChange(e,mxResources.get("automatic"),[mxConstants.STYLE_EDGE],["orthogonalEdgeStyle"],null,t)}))),this.put("lineend",new Menu(mxUtils.bind(this,function(t,n){this.styleChange(t,mxResources.get("classic"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_CLASSIC],null,n),this.styleChange(t,mxResources.get("openArrow"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_OPEN],null,n),this.styleChange(t,mxResources.get("block"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_BLOCK],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("oval"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_OVAL],null,n),this.styleChange(t,mxResources.get("diamond"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_DIAMOND],null,n),this.styleChange(t,mxResources.get("diamondThin"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_DIAMOND_THIN],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("none"),[mxConstants.STYLE_ENDARROW],[mxConstants.NONE],null,n),t.addSeparator(n),t.addItem(mxResources.get("transparent"),null,function(){e.toggleCellStyles("endFill",!0)},n,null,!0),t.addSeparator(n),this.promptChange(t,mxResources.get("size"),"(px)",mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_ENDSIZE,n)}))),this.put("linestart",new Menu(mxUtils.bind(this,function(t,n){this.styleChange(t,mxResources.get("classic"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_CLASSIC],null,n),this.styleChange(t,mxResources.get("openArrow"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_OPEN],null,n),this.styleChange(t,mxResources.get("block"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_BLOCK],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("oval"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_OVAL],null,n),this.styleChange(t,mxResources.get("diamond"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_DIAMOND],null,n),this.styleChange(t,mxResources.get("diamondThin"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_DIAMOND_THIN],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("none"),[mxConstants.STYLE_STARTARROW],[mxConstants.NONE],null,n),t.addSeparator(n),t.addItem(mxResources.get("transparent"),null,function(){e.toggleCellStyles("startFill",!0)},n,null,!0),t.addSeparator(n),this.promptChange(t,mxResources.get("size"),"(px)",mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_STARTSIZE,n)}))),this.put("spacing",new Menu(mxUtils.bind(this,function(e,t){var n=this.editorUi.actions.get("shadow").enabled,a=this.get("line").enabled;(n||e.showDisabled)&&(this.promptChange(e,mxResources.get("top"),"(px)","0",mxConstants.STYLE_SPACING_TOP,t,n),this.promptChange(e,mxResources.get("right"),"(px)","0",mxConstants.STYLE_SPACING_RIGHT,t,n),this.promptChange(e,mxResources.get("bottom"),"(px)","0",mxConstants.STYLE_SPACING_BOTTOM,t,n),this.promptChange(e,mxResources.get("left"),"(px)","0",mxConstants.STYLE_SPACING_LEFT,t,n),e.addSeparator(t),this.promptChange(e,mxResources.get("global"),"(px)","0",mxConstants.STYLE_SPACING,t,n),this.promptChange(e,mxResources.get("perimeter"),"(px)","0",mxConstants.STYLE_PERIMETER_SPACING,t,n)),(a||e.showDisabled)&&(e.addSeparator(t),this.promptChange(e,mxResources.get("sourceSpacing"),"(px)","0",mxConstants.STYLE_SOURCE_PERIMETER_SPACING,t,a),this.promptChange(e,mxResources.get("targetSpacing"),"(px)","0",mxConstants.STYLE_TARGET_PERIMETER_SPACING,t,a))}))),this.put("format",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItem(e,"style",t)}))),this.put("text",new Menu(mxUtils.bind(this,function(t,n){var a=this.get("text").enabled;t.addSeparator(n),this.addSubmenu("fontFamily",t,n),this.addSubmenu("fontSize",t,n),this.addMenuItems(t,["-","bold","italic","underline","-"],n),this.addSubmenu("alignment",t,n),this.addMenuItem(t,"wordWrap",n),t.addSeparator(n),this.promptChange(t,mxResources.get("textOpacity"),"(%)","100",mxConstants.STYLE_TEXT_OPACITY,n,a),t.addItem(mxResources.get("hide"),null,function(){e.toggleCellStyles(mxConstants.STYLE_NOLABEL,!1)},n,null,a)}))),this.put("alignment",new Menu(mxUtils.bind(this,function(t,n){this.styleChange(t,mxResources.get("leftAlign"),[mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_LEFT],null,n),this.styleChange(t,mxResources.get("center"),[mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_CENTER],null,n),this.styleChange(t,mxResources.get("rightAlign"),[mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_RIGHT],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("topAlign"),[mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_TOP],null,n),this.styleChange(t,mxResources.get("middle"),[mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_MIDDLE],null,n),this.styleChange(t,mxResources.get("bottomAlign"),[mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_BOTTOM],null,n),t.addSeparator(n),this.addSubmenu("position",t,n),this.addSubmenu("spacing",t,n),t.addSeparator(n);var a=this.get("text").enabled;t.addItem(mxResources.get("vertical"),null,function(){e.toggleCellStyles(mxConstants.STYLE_HORIZONTAL,!0)},n,null,a)}))),this.put("position",new Menu(mxUtils.bind(this,function(e,t){this.styleChange(e,mxResources.get("left"),[mxConstants.STYLE_LABEL_POSITION,mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_LEFT,mxConstants.ALIGN_RIGHT],null,t),this.styleChange(e,mxResources.get("center"),[mxConstants.STYLE_LABEL_POSITION,mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_CENTER,mxConstants.ALIGN_CENTER],null,t),this.styleChange(e,mxResources.get("right"),[mxConstants.STYLE_LABEL_POSITION,mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_LEFT],null,t),e.addSeparator(t),this.styleChange(e,mxResources.get("top"),[mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_TOP,mxConstants.ALIGN_BOTTOM],null,t),this.styleChange(e,mxResources.get("middle"),[mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_MIDDLE,mxConstants.ALIGN_MIDDLE],null,t),this.styleChange(e,mxResources.get("bottom"),[mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_BOTTOM,mxConstants.ALIGN_TOP],null,t)}))),this.put("direction",new Menu(mxUtils.bind(this,function(t,n){t.addItem(mxResources.get("flipH"),null,function(){e.toggleCellStyles(mxConstants.STYLE_FLIPH,!1)},n),t.addItem(mxResources.get("flipV"),null,function(){e.toggleCellStyles(mxConstants.STYLE_FLIPV,!1)},n),this.addMenuItems(t,["-","tilt","rotation"],n)}))),this.put("align",new Menu(mxUtils.bind(this,function(t,n){t.addItem(mxResources.get("leftAlign"),null,function(){e.alignCells(mxConstants.ALIGN_LEFT)},n),t.addItem(mxResources.get("center"),null,function(){e.alignCells(mxConstants.ALIGN_CENTER)},n),t.addItem(mxResources.get("rightAlign"),null,function(){e.alignCells(mxConstants.ALIGN_RIGHT)},n),t.addSeparator(n),t.addItem(mxResources.get("topAlign"),null,function(){e.alignCells(mxConstants.ALIGN_TOP)},n),t.addItem(mxResources.get("middle"),null,function(){e.alignCells(mxConstants.ALIGN_MIDDLE)},n),t.addItem(mxResources.get("bottomAlign"),null,function(){e.alignCells(mxConstants.ALIGN_BOTTOM)},n)}))),this.put("layout",new Menu(mxUtils.bind(this,function(t,n){t.addItem(mxResources.get("horizontalFlow"),null,mxUtils.bind(this,function(){var t=new mxHierarchicalLayout(e,mxConstants.DIRECTION_WEST);this.editorUi.executeLayout(t,!0,!0)}),n),t.addItem(mxResources.get("verticalFlow"),null,mxUtils.bind(this,function(){var t=new mxHierarchicalLayout(e,mxConstants.DIRECTION_NORTH);this.editorUi.executeLayout(t,!0,!0)}),n)}))),this.put("navigation",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["home","-","exitGroup","enterGroup","-","expand","collapse"],t)}))),this.put("arrange",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["toFront","toBack","-"],t),this.addSubmenu("layout",e,t),e.addSeparator(t),this.addMenuItems(e,["-","group","ungroup","removeFromGroup"],t)}))),this.put("view",new Menu(mxUtils.bind(this,function(t,n){this.addMenuItems(t,["actualSize"],n),t.addSeparator();for(var a=[.25,.5,.75,1,2,4],i=0;i<a.length;i++)!function(a){t.addItem(100*a+"%",null,function(){e.zoomTo(a)},n)}(a[i]);this.addMenuItems(t,["-","zoomIn","zoomOut","-","fitWindow","customZoom","-","fitPage","fitPageWidth"],n)}))),this.put("file",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["new","open","-","save","saveAs","publish","-","variable","-","import","export","-","editFile","description","-","print"],t)}))),this.put("edit",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["undo","redo","-","cut","copy","paste","delete","-","duplicate","-","selectVertices","selectEdges","selectAll"])}))),this.put("help",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["help","-","about"])})))},Menus.prototype.put=function(e,t){this.menus[e]=t},Menus.prototype.get=function(e){return this.menus[e]},Menus.prototype.addSubmenu=function(e,t,n){var a=this.get(e).enabled;if(t.showDisabled||a){var i=t.addItem(mxResources.get(e),null,null,n,null,a);this.addMenu(e,t,i)}},Menus.prototype.addMenu=function(e,t,n){var a=this.get(e);null!=a&&(t.showDisabled||a.enabled)&&this.get(e).execute(t,n)},Menus.prototype.styleChange=function(e,t,n,a,i,o){return e.addItem(t,null,mxUtils.bind(this,function(){var e=this.editorUi.editor.graph;e.getModel().beginUpdate();try{for(var t=0;t<n.length;t++)e.setCellStyles(n[t],a[t])}finally{e.getModel().endUpdate()}}),o,i)},Menus.prototype.promptChange=function(e,t,n,a,i,o,s){return e.addItem(t,null,mxUtils.bind(this,function(){var e=this.editorUi.editor.graph,t=a,o=e.getView().getState(e.getSelectionCell());null!=o&&(t=o.style[i]||t),null!=(t=mxUtils.prompt(mxResources.get("enterValue")+(n.length>0?" "+n:""),t))&&t.length>0&&e.setCellStyles(i,t)}),o,null,s)},Menus.prototype.addMenuItem=function(e,t,n){var a=this.editorUi.actions.get(t);if(null!=a&&(e.showDisabled||a.enabled)){var i=e.addItem(a.label,null,a.funct,n,null,a.enabled);return a.toggleAction&&a.isSelected()&&this.addCheckmark(i),this.addShortcut(i,a),i}return null},Menus.prototype.addShortcut=function(e,t){if(null!=t.shortcut){var n=e.firstChild.nextSibling.nextSibling,a=document.createElement("span");a.style.color="gray",mxUtils.write(a,t.shortcut),n.appendChild(a)}},Menus.prototype.addCheckmark=function(e){var t=e.firstChild.nextSibling;t.style.backgroundImage="url("+IMAGE_PATH+"/checkmark.gif)",t.style.backgroundRepeat="no-repeat",t.style.backgroundPosition="2px 50%"},Menus.prototype.addMenuItems=function(e,t,n){for(var a=0;a<t.length;a++)"-"==t[a]?e.addSeparator(n):this.addMenuItem(e,t[a],n)},Menus.prototype.createPopupMenu=function(e,t,n){var a=this.editorUi.editor.graph;if(e.smartSeparators=!0,a.isSelectionEmpty()?this.addMenuItems(e,["undo","redo","-","paste","-"]):(this.addMenuItems(e,["delete","-","cut","copy","-","duplicate"]),1==a.getSelectionCount()&&a.getModel().isEdge(a.getSelectionCell())&&this.addMenuItems(e,["setAsDefaultEdge"]),e.addSeparator()),a.getSelectionCount()>0){if(this.addMenuItems(e,["toFront","toBack","-"]),a.getModel().isEdge(a.getSelectionCell())){var i=!1;if(null!=(t=a.getSelectionCell())&&a.getModel().isEdge(t)){var o=a.selectionCellsHandler.getHandler(t);if(o instanceof mxEdgeHandler&&null!=o.bends&&o.bends.length>2){var s=o.getHandleForEvent(new mxMouseEvent(n)),r=this.editorUi.actions.get("removeWaypoint");r.handler=o,r.index=s,i=s>0&&s<o.bends.length}}this.addMenuItems(e,["-",i?"removeWaypoint":"addWaypoint"])}else a.getSelectionCount()>1&&(e.addSeparator(),this.addMenuItems(e,["group"]));e.addSeparator(),1==a.getSelectionCount()&&null!=a.getLinkForCell(a.getSelectionCell())&&this.addMenuItems(e,["openLink"])}else this.addMenuItems(e,["-","selectVertices","selectEdges","-","selectAll"])},Menus.prototype.createMenubar=function(e){for(var t=new Menubar(this.editorUi,e),n=["file","edit","view","format","text","arrange","help"],a=0;a<n.length;a++)t.addMenu(mxResources.get(n[a]),this.get(n[a]).funct);return t},Menubar.prototype.hideMenu=function(){null!=this.currentMenu&&this.currentMenu.hideMenu()},Menubar.prototype.addMenu=function(e,t){var n=document.createElement("a");return n.setAttribute("href","javascript:void(0);"),n.className="geItem",mxUtils.write(n,e),this.addMenuHandler(n,t),this.container.appendChild(n),n},Menubar.prototype.getOffset=function(e){return e=e.getBoundingClientRect(),{left:e.left+window.scrollX,top:e.top+window.scrollY}},Menubar.prototype.addMenuHandler=function(e,t){if(null!=t){var n=!0,a=mxUtils.bind(this,function(a){if(n&&null==e.enabled||e.enabled){this.editorUi.editor.graph.panningHandler.hideMenu();var i=new mxPopupMenu(t);i.div.className+=" geMenubarMenu",i.smartSeparators=!0,i.showDisabled=!0,i.autoExpand=!0,i.hideMenu=mxUtils.bind(this,function(){mxPopupMenu.prototype.hideMenu.apply(i,arguments),i.destroy(),this.currentMenu=null,this.currentElt=null});var o=this.getOffset(e).left,s=this.getOffset(e).top+e.offsetHeight;i.popup(o,s,null,a),this.currentMenu=i,this.currentElt=e}n=!0,mxEvent.consume(a)});mxEvent.addListener(e,"mousemove",mxUtils.bind(this,function(t){null!=this.currentMenu&&this.currentElt!=e&&(this.hideMenu(),a(t))})),mxEvent.addListener(e,"mousedown",mxUtils.bind(this,function(){n=this.currentElt!=e})),mxEvent.addListener(e,"click",a)}},mxUtils.extend(Menu,mxEventSource),Menu.prototype.setEnabled=function(e){this.enabled!=e&&(this.enabled=e,this.fireEvent(new mxEventObject("stateChanged")))},Menu.prototype.execute=function(e,t){this.funct(e,t)},Toolbar.prototype.init=function(){this.addItems(["save","publish","-","print","undo","redo","-","copy","cut","paste","delete","-","duplicate","-","actualSize","zoomIn","zoomOut","-"]);this.editorUi.editor.graph},Toolbar.prototype.hideMenu=function(){null!=this.currentMenu&&(this.currentMenu.hideMenu(),this.currentMenu.destroy(),this.currentMenu=null)},Toolbar.prototype.addMenu=function(e,t,n,a){var i=this.editorUi.menus.get(a),o=this.addMenuFunction(e,t,n,i.funct);return i.addListener("stateChanged",function(){o.setEnabled(i.enabled)}),o},Toolbar.prototype.addMenuFunction=function(e,t,n,a){var i=n?this.createLabel(e):this.createButton(e);return this.initElement(i,t),this.addMenuHandler(i,n,a),this.container.appendChild(i),i},Toolbar.prototype.addSeparator=function(){var e=document.createElement("div");return e.className="geSeparator",this.container.appendChild(e),e},Toolbar.prototype.addItems=function(e){for(var t=0;t<e.length;t++){var n=e[t];"-"==n?this.addSeparator():this.addItem("geSprite-"+n.toLowerCase(),n)}},Toolbar.prototype.addItem=function(e,t){var n=this.editorUi.actions.get(t),a=null;return null!=n&&((a=this.addButton(e,n.label,n.funct)).setEnabled(n.enabled),n.addListener("stateChanged",function(){a.setEnabled(n.enabled)})),a},Toolbar.prototype.addButton=function(e,t,n){var a=this.createButton(e);return this.initElement(a,t),this.addClickHandler(a,n),this.container.appendChild(a),a},Toolbar.prototype.addSelectionHandler=function(e){var t=this.editorUi.editor.graph,n=function(){for(var n=!t.isSelectionEmpty(),a=0;a<e.length;a++)e[a].setEnabled(n)};t.getSelectionModel().addListener(mxEvent.CHANGE,n),n()},Toolbar.prototype.addEdgeSelectionHandler=function(e){var t=this.editorUi.editor.graph,n=function(){var n=!1;if(!t.isSelectionEmpty())for(var a=t.getSelectionCells(),i=0;i<a.length;i++)if(t.getModel().isEdge(a[i])){n=!0;break}for(i=0;i<e.length;i++)e[i].setEnabled(n)};t.getSelectionModel().addListener(mxEvent.CHANGE,n),n()},Toolbar.prototype.initElement=function(e,t){e.setAttribute("tabindex","0"),null!=t&&e.setAttribute("title",t),this.addEnabledState(e)},Toolbar.prototype.addEnabledState=function(e){var t=e.className;e.setEnabled=function(n){e.enabled=n,e.className=n?t:t+" geDisabled"},e.setEnabled(!0)},Toolbar.prototype.addClickHandler=function(e,t){null!=t&&mxEvent.addListener(e,"click",function(n){e.enabled&&t(n),mxEvent.consume(n)})},Toolbar.prototype.createButton=function(e){var t=document.createElement("a");t.setAttribute("href","javascript:void(0);"),t.className="geButton";var n=document.createElement("div");return n.className="geSprite "+e,t.appendChild(n),t},Toolbar.prototype.createLabel=function(e,t){var n=document.createElement("a");return n.setAttribute("href","javascript:void(0);"),n.className="geLabel",mxUtils.write(n,e),n},Toolbar.prototype.addMenuHandler=function(e,t,n,a){if(null!=n){var i=this.editorUi.editor.graph,o=null;mxEvent.addListener(e,"click",mxUtils.bind(this,function(s){(null==e.enabled||e.enabled)&&(i.panningHandler.hideMenu(),(o=new mxPopupMenu(n)).div.className+=" geToolbarMenu",o.showDisabled=a,o.labels=t,o.autoExpand=!0,o.popup(e.offsetLeft,e.offsetTop+e.offsetHeight+34,null,s),this.currentMenu=o),mxEvent.consume(s)}))}},Dialog.prototype.close=function(){null!=this.onDialogClose&&(this.onDialogClose(),this.onDialogClose=null),this.container.parentNode.removeChild(this.container),this.bg.parentNode.removeChild(this.bg)},angular.module("motion").run(["$templateCache",function(e){"use strict";e.put("app/core/directives/ms-card/templates/template-1/template-1.html",'<div class="template-1">\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n\n    <div class="content pv-24 ph-16">\n        <div class="title h1" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="subtitle secondary-text" ng-if="card.subtitle">\n            {{card.subtitle}}\n        </div>\n\n        <div class="text pt-16" ng-if="card.text">\n            {{card.text}}\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-10/template-10.html",'<div class="template-10 p-16">\n    <div class="pb-16" layout="row" layout-align="space-between center">\n        <div class="info">\n            <div class="title secondary-text" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle h2" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n        </div>\n\n        <div class="media ml-16">\n            <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n        </div>\n    </div>\n\n    <div class="text">\n        {{card.text}}\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-2/template-2.html",'<div class="template-2">\n    <div class="header p-16" layout="row" layout-align="start center">\n        <div ng-if="card.avatar">\n            <img class="avatar mr-16" ng-src="{{card.avatar.src}}" alt="{{card.avatar.alt}}">\n        </div>\n\n        <div class="info">\n            <div class="title" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle secondary-text" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n        </div>\n    </div>\n\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n\n    <div class="text p-16" ng-if="card.text">\n        {{card.text}}\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-3/template-3.html",'<div class="template-3 p-16 teal-bg white-fg" layout="row" layout-align="space-between">\n    <div layout="column" layout-align="space-between">\n        <div class="info">\n            <div class="title h1" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle h3 secondary-text" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n        </div>\n\n        <div class="cta">\n            <md-button class="m-0">{{card.cta}}</md-button>\n        </div>\n    </div>\n\n    <div class="media pl-16">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-4/template-4.html",'<div class="template-4">\n    <div class="info white-fg ph-16 pv-24">\n        <div class="title h1" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="text" ng-if="card.text">\n            {{card.text}}\n        </div>\n    </div>\n\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-5/template-5.html",'<div class="template-5 p-16" layout="row" layout-align="space-between start">\n    <div class="info">\n        <div class="title secondary-text" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="event h2" ng-if="card.event">\n            {{card.event}}\n        </div>\n    </div>\n\n    <div class="media ml-16">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-6/template-6.html",'<div class="template-6">\n    <div class="content pv-24 ph-16">\n        <div class="subtitle secondary-text" ng-if="card.subtitle">\n            {{card.subtitle}}\n        </div>\n\n        <div class="title h2" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="text pt-8" ng-if="card.text">\n            {{card.text}}\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-7/template-7.html",'<div class="template-7" layout="row" layout-align="space-between">\n    <div class="info" layout="column" layout-align="space-between" layout-fill flex>\n        <div class="p-16">\n            <div class="title h1" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle h4 secondary-text" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n\n            <div class="text h4 pt-8" ng-if="card.text">\n                {{card.text}}\n            </div>\n        </div>\n\n        <div>\n            <md-divider></md-divider>\n            <div class="p-8" layout="row">\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n            </div>\n        </div>\n    </div>\n\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-8/template-8.html",'<div class="template-8">\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n\n    <div class="content pv-24 ph-16">\n        <div class="title h1" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="subtitle secondary-text" ng-if="card.subtitle">\n            {{card.subtitle}}\n        </div>\n\n        <div class="buttons pt-16">\n            <md-button class="m-0">{{card.button1}}</md-button>\n            <md-button class="m-0 md-accent">{{card.button2}}</md-button>\n        </div>\n\n        <div class="text pt-16" ng-if="card.text">\n            {{card.text}}\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-9/template-9.html",'<div class="template-9">\n    <div class="header p-16" layout="row" layout-align="start center">\n        <div ng-if="card.avatar">\n            <img class="avatar mr-16" ng-src="{{card.avatar.src}}" alt="{{card.avatar.alt}}">\n        </div>\n\n        <div class="info">\n            <div class="title" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle secondary-text" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n\n        </div>\n    </div>\n\n    <div class="text ph-16 pb-16" ng-if="card.text">\n        {{card.text}}\n    </div>\n\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n\n    <div class="buttons m-8">\n        <md-button class="md-icon-button mr-16" aria-label="Favorite">\n            <md-icon md-font-icon="icon-heart-outline" class="s24"></md-icon>\n        </md-button>\n        <md-button class="md-icon-button" aria-label="Share">\n            <md-icon md-font-icon="icon-share" class="s24"></md-icon>\n        </md-button>\n    </div>\n\n</div>'),e.put("app/core/directives/ms-dash-clock/edit/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="TOOLS.EDIT_WIDGET">Edit Widget</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            \x3c!-- Theme START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.THEME">Theme</label>\n                <md-select ng-model="vm.options.data.theme" md-autofocus>\n                    <md-option value="light"> {{ \'TOOLS.LIGHT\' | translate }}</md-option>\n                    <md-option value="dark"> {{ \'TOOLS.DARK\' | translate }}</md-option>\n                </md-select>\n            </md-input-container>\n            \x3c!-- Theme END --\x3e\n\n            \x3c!-- Timezone START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TIMEZONE">Timezone</label>\n                <md-select ng-model="vm.options.data.gmtValue" md-autofocus>\n                    <md-option value="-12.00">−12.00</md-option>\n                    <md-option value="-11.00">−11.00</md-option>\n                    <md-option value="-10.00">−10.00</md-option>\n                    <md-option value="-9.30">−09.30</md-option>\n                    <md-option value="-9.00">−09.00</md-option>\n                    <md-option value="-8.00">−08.00</md-option>\n                    <md-option value="-7.00">−07.00</md-option>\n                    <md-option value="-6.00">−06.00</md-option>\n                    <md-option value="-5.00">−05.00</md-option>\n                    <md-option value="-4.3">−04.30</md-option>\n                    <md-option value="-4.00">−04.00</md-option>\n                    <md-option value="-3.3">−03.30</md-option>\n                    <md-option value="-3.00">−03.00</md-option>\n                    <md-option value="-2.00">−02.00</md-option>\n                    <md-option value="-1.00">−01.00</md-option>\n                    <md-option value="0.00">GMT (00.00)</md-option>\n                    <md-option value="1.00">+01.00</md-option>\n                    <md-option value="2.00">+02.00</md-option>\n                    <md-option value="3.00">+03.00</md-option>\n                    <md-option value="3.30">+03.30</md-option>\n                    <md-option value="4.00">+04.00</md-option>\n                    <md-option value="4.30">+04.30</md-option>\n                    <md-option value="5.00">+05.00</md-option>\n                    <md-option value="5.30">+05.30</md-option>\n                    <md-option value="5.45">+05.45</md-option>\n                    <md-option value="6.00">+06.00</md-option>\n                    <md-option value="6.30">+06.30</md-option>\n                    <md-option value="7.00">+07.00</md-option>\n                    <md-option value="8.00">+08.00</md-option>\n                    <md-option value="8.45">+08.45</md-option>\n                    <md-option value="9.00">+09.00</md-option>\n                    <md-option value="9.30">+09.30</md-option>\n                    <md-option value="10.00">+10.00</md-option>\n                    <md-option value="10.30">+10.30</md-option>\n                    <md-option value="11.00">+11.00</md-option>\n                    <md-option value="11.30">+11.30</md-option>\n                    <md-option value="12.00">+12.00</md-option>\n                    <md-option value="12.45">+12.45</md-option>\n                    <md-option value="13.00">+13.00</md-option>\n                    <md-option value="14.00">+14.00</md-option>\n                </md-select>\n            </md-input-container>\n            \x3c!-- Timezone END --\x3e\n\n            \x3c!-- Digital Format START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DIGITAL_FORMAT">Digital Format</label>\n                <input type="text" name="digitalFormat" ng-model="vm.options.data.digitalFormat">\n            </md-input-container>\n            \x3c!-- Digital Format END --\x3e\n\n\n            \x3c!-- Description START --\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.options.data.description">\n            </md-input-container>\n            \x3c!-- Description END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.updateItem()" ng-disabled="dashboarditemForm.$pristine || dashboarditemForm.$invalid" class="send-button md-accent md-raised" aria-label="UPDATE" translate="TOOLS.UPDATE" translate-attr-aria-label="TOOLS.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/core/directives/ms-dash-clock/ms-dash-clock.html",'\x3c!-- WIDGET --\x3e\n<ms-widget flippable="true" layout="column" flex="100" layout-fill>\n\n    \x3c!-- Front --\x3e\n    <ms-widget-front>\n        <div class="ph-8 pv-16 h-55" layout="row">\n            <div layout="row" layout-align="start center">\n                <md-menu>\n                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                    </md-button>\n\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="editItem()" translate="TOOLS.EDIT_WIDGET">\n                                Edit Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="deleteItem({id: options.id})" translate="TOOLS.DELETE_WIDGET">\n                                Delete Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="flipWidget()" translate="TOOLS.FLIP_WIDGET">\n                                Flip Widget\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n            <div layout="row" layout-align="end center" flex>\n                <span class="h3 secondary-text font-weight-500 text-truncate padding-right-20">{{ \'TOOLS.CLOCK\' | translate }}</span>\n            </div>\n        </div>\n\n        <div class="pt-16 pb-32" layout="column" layout-align="center center">\n            <div>\n                <ds-widget-clock theme="options.data.theme" digital-format="options.data.digitalFormat" gmt-offset="options.data.gmtValue" show-gmt-info></ds-widget-clock>\n            </div>\n        </div>\n    </ms-widget-front>\n    \x3c!-- / Front --\x3e\n\n    \x3c!-- Back --\x3e\n    <ms-widget-back class="p-16 white-bg">\n        <div class="flip-to-front">\n            <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n            </md-button>\n        </div>\n\n        <div>\n            {{ options.data.description || \'TOOLS.DESCRIPTION\' | translate }}\n        </div>\n    </ms-widget-back>\n    \x3c!-- / Back --\x3e\n\n</ms-widget>\n\x3c!-- / WIDGET --\x3e'),e.put("app/core/directives/ms-dash-counter/edit/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="TOOLS.EDIT_WIDGET">Edit Widget</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <md-tabs md-dynamic-height md-border-bottom>\n                \x3c!-- Layout Tab START --\x3e\n                <md-tab label="{{\'TOOLS.LAYOUT\' | translate}}">\n\n                    \x3c!-- Title START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.TITLE">Title</label>\n                        <input type="text" name="title" ng-model="vm.options.data.title" required>\n                        <div ng-messages="dashboarditemForm.title.$error" ng-show="dashboarditemForm.title.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="TOOLS.ERRORS.TITLE_REQUIRED">Title field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    \x3c!-- Title END --\x3e\n\n                    \x3c!-- Background START--\x3e\n                    <div flex md-color-picker ng-model="vm.options.data.background" label="{{\'TOOLS.BACKGROUND_COLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                        open-on-input="true"></div>\n                    \x3c!-- Background  END--\x3e\n\n                    \x3c!-- Foreground START--\x3e\n                    <div flex md-color-picker ng-model="vm.options.data.foreground" label="{{\'TOOLS.FOREGROUND_COLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                        open-on-input="true"></div>\n                    \x3c!-- Foreground END--\x3e\n\n                    \x3c!-- Foreground Title START--\x3e\n                    <div flex md-color-picker ng-model="vm.options.data.foregroundTitle" label="{{\'TOOLS.FOREGROUND_TITLE_COLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                        open-on-input="true"></div>\n                    \x3c!-- Foreground END--\x3e\n\n                    \x3c!-- Description Title START --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.DESCRIPTION">Description</label>\n                        <input type="text" name="description" ng-model="vm.options.data.description">\n                    </md-input-container>\n                    \x3c!-- Description END --\x3e\n\n                </md-tab>\n                \x3c!-- Layout Tab END --\x3e\n\n                \x3c!-- Query Tab START --\x3e\n                <md-tab label="{{\'TOOLS.TOOLS_QUERY\' | translate}}">\n                    \x3c!-- SELECT START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.SELECT">Select</label>\n                        <input type="text" name="select" ng-model="vm.options.data.query.fields" required>\n                    </md-input-container>\n                    \x3c!-- <md-chips placeholder="{{\'TOOLS.FIELDS\' | translate}}" ng-model="vm.options.data.query.fields" name="fields" md-max-chips="1" m d-enable-chip-edit="true"></md-chips> --\x3e\n                    \x3c!-- SELECT END --\x3e\n\n                    \x3c!-- FROM  START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.FROM">From</label>\n                        <input type="text" name="from" ng-model="vm.options.data.query.from" required>\n                    </md-input-container>\n                    \x3c!-- FROM END --\x3e\n\n                    \x3c!-- WHERE START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.WHERE">Where</label>\n                        <input type="text" name="where" ng-model="vm.options.data.query.where">\n                    </md-input-container>\n                    \x3c!-- WHERE END --\x3e\n\n                </md-tab>\n                \x3c!-- Query Tab END --\x3e\n            </md-tabs>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.updateItem()" ng-disabled="dashboarditemForm.$pristine || dashboarditemForm.$invalid" class="send-button md-accent md-raised" aria-label="UPDATE" translate="TOOLS.UPDATE" translate-attr-aria-label="TOOLS.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/core/directives/ms-dash-counter/ms-dash-counter.html",'\x3c!-- WIDGET --\x3e\n<ms-widget flippable="true" layout="column" flex="100" layout-fill>\n\n    \x3c!-- Front --\x3e\n    <ms-widget-front ng-style="{background: options.data.background}">\n        <div class="ph-8 pv-16 h-55" layout="row">\n            <div layout="row" layout-align="start center" flex="80">\n                <md-menu>\n                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                    </md-button>\n\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="editItem()" translate="TOOLS.EDIT_WIDGET">\n                                Edit Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="deleteItem({id: options.id})" translate="TOOLS.DELETE_WIDGET">\n                                Delete Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="flipWidget()" translate="TOOLS.FLIP_WIDGET">\n                                Flip Widget\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n            <div layout="row" layout-align="end center" flex="20" ng-switch="result.error">\n                <md-icon ng-switch-default md-font-icon="icon-timer-sand"></md-icon>\n                <md-icon ng-switch-when="false" class="green-fg" md-font-icon="icon-check"></md-icon>\n                <md-icon ng-switch-when="true" class="red-fg" md-font-icon="icon-block-helper"></md-icon>\n            </div>\n        </div>\n\n        <div class="pt-8 pb-32" layout="column" layout-align="center center">\n            <div ng-if="!result.error" class="font-size-52 line-height-72" ng-style="{color: options.data.foreground}">\n                {{ result.value || 0 }}\n            </div>\n            <div ng-if="!result.error" class="h3 secondary-text font-weight-500" ng-style="{color: options.data.foregroundTitle}">\n                {{ options.data.title || \'TOOLS.TITLE\' | translate }}\n            </div>\n            <div ng-if="result.error" class="padding-20">\n                <span>{{result.message}}</span>\n            </div>\n        </div>\n    </ms-widget-front>\n    \x3c!-- / Front --\x3e\n\n    \x3c!-- Back --\x3e\n    <ms-widget-back class="p-16 white-bg">\n        <div class="flip-to-front">\n            <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n            </md-button>\n        </div>\n\n        <div>\n            {{ options.data.description || \'TOOLS.DESCRIPTION\' | translate }}\n        </div>\n    </ms-widget-back>\n    \x3c!-- / Back --\x3e\n\n</ms-widget>\n\x3c!-- / WIDGET --\x3e'),e.put("app/core/directives/ms-dash-iframe/edit/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="TOOLS.EDIT_WIDGET">Edit Widget</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            \x3c!-- Title START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TITLE">Title</label>\n                <input type="text" name="title" ng-model="vm.options.data.title" required>\n                <div ng-messages="dashboarditemForm.title.$error" ng-show="dashboarditemForm.title.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TITLE_REQUIRED">Title field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            \x3c!-- Title END --\x3e\n\n            \x3c!-- Title START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.URL">Url</label>\n                <input type="url" name="url" ng-model="vm.options.data.url" required>\n                <div ng-messages="dashboarditemForm.url.$error" ng-show="dashboarditemForm.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.URL_REQUIRED">URL field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            \x3c!-- Title END --\x3e\n\n\n            \x3c!-- Description START --\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.options.data.description">\n            </md-input-container>\n            \x3c!-- Description END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.updateItem()" ng-disabled="dashboarditemForm.$pristine || dashboarditemForm.$invalid" class="send-button md-accent md-raised" aria-label="UPDATE" translate="TOOLS.UPDATE" translate-attr-aria-label="TOOLS.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/core/directives/ms-dash-iframe/ms-dash-iframe.html",'\x3c!-- WIDGET --\x3e\n<ms-widget flippable="true" layout="column" flex="100" layout-fill>\n\n    \x3c!-- Front --\x3e\n    <ms-widget-front>\n        <div class="ph-8 pv-16 h-55" layout="row">\n            <div layout="row" layout-align="start center" flex="80">\n                <md-menu>\n                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                    </md-button>\n\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="editItem()" translate="TOOLS.EDIT_WIDGET">\n                                Edit Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="deleteItem({id: options.id})" translate="TOOLS.DELETE_WIDGET">\n                                Delete Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="flipWidget()" translate="TOOLS.FLIP_WIDGET">\n                                Flip Widget\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n            <div layout="row" layout-align="end center" flex="20">\n                <span class="h3 secondary-text font-weight-500 text-truncate padding-right-20">{{ options.data.title || \'TOOLS.TITLE\' | translate }}</span>\n            </div>\n        </div>\n\n        <div layout="row" layout-fill style="min-height: 1000px">\n            <iframe flex ng-src="{{getTrustSrc(options.data.url)}}" allowfullscreen frameborder="0"></iframe>\n        </div>\n    </ms-widget-front>\n    \x3c!-- / Front --\x3e\n\n    \x3c!-- Back --\x3e\n    <ms-widget-back class="p-16 white-bg">\n        <div class="flip-to-front">\n            <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n            </md-button>\n        </div>\n\n        <div>\n            {{ options.data.description || \'TOOLS.DESCRIPTION\' | translate }}\n        </div>\n    </ms-widget-back>\n    \x3c!-- / Back --\x3e\n\n</ms-widget>\n\x3c!-- / WIDGET --\x3e'),e.put("app/core/directives/ms-dash-table/edit/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="TOOLS.EDIT_WIDGET">Edit Widget</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <md-tabs md-dynamic-height md-border-bottom>\n                \x3c!-- Layout Tab START --\x3e\n                <md-tab label="{{\'TOOLS.TOOLS_LAYOUT\' | translate}}">\n\n                    \x3c!-- Title START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.TITLE">Title</label>\n                        <input type="text" name="title" ng-model="vm.options.data.title" required>\n                        <div ng-messages="dashboarditemForm.title.$error" ng-show="dashboarditemForm.title.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="TOOLS.ERRORS.TITLE_REQUIRED">Title field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    \x3c!-- Title END --\x3e\n\n                    \x3c!-- Description START --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.DESCRIPTION">Description</label>\n                        <input type="text" name="description" ng-model="vm.options.data.description">\n                    </md-input-container>\n                    \x3c!-- Description END --\x3e\n\n                </md-tab>\n                \x3c!-- Layout Tab END --\x3e\n\n                \x3c!-- Query Tab START --\x3e\n                <md-tab label="{{\'TOOLS.TOOLS_QUERY\' | translate}}">\n\n                    \x3c!-- SELECT START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.SELECT">Select</label>\n                        <input type="text" name="select" ng-model="vm.options.data.query.fields" required>\n                    </md-input-container>\n                    \x3c!-- <md-chips placeholder="{{\'TOOLS.FIELDS\' | translate}}" ng-model="vm.options.data.query.fields" name="fields" md-max-chips="1" m d-enable-chip-edit="true"></md-chips> --\x3e\n                    \x3c!-- SELECT END --\x3e\n\n                    \x3c!-- FROM  START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.FROM">From</label>\n                        <input type="text" name="from" ng-model="vm.options.data.query.from" required>\n                    </md-input-container>\n                    \x3c!-- FROM END --\x3e\n\n                    \x3c!-- WHERE START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.WHERE">Where</label>\n                        <input type="text" name="where" ng-model="vm.options.data.query.where">\n                    </md-input-container>\n                    \x3c!-- WHERE END --\x3e\n\n                    \x3c!-- LIMIT START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.LIMIT">Limit</label>\n                        <input type="text" name="limit" ng-model="vm.options.data.query.limit">\n                    </md-input-container>\n                    \x3c!-- LIMIT END --\x3e\n\n                </md-tab>\n                \x3c!-- Query Tab END --\x3e\n            </md-tabs>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.updateItem()" ng-disabled="dashboarditemForm.$pristine || dashboarditemForm.$invalid" class="send-button md-accent md-raised" aria-label="UPDATE" translate="TOOLS.UPDATE" translate-attr-aria-label="TOOLS.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/core/directives/ms-dash-table/ms-dash-table.html",'\x3c!-- WIDGET --\x3e\n<ms-widget flippable="true" layout="column" flex="100" layout-fill>\n\n    \x3c!-- Front --\x3e\n    <ms-widget-front>\n        <div class="ph-8 pv-16 h-55" layout="row">\n            <div layout="row" layout-align="start center" flex="80">\n                <md-menu>\n                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                    </md-button>\n\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="editItem()" translate="TOOLS.EDIT_WIDGET">\n                                Edit Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="deleteItem({id: options.id})" translate="TOOLS.DELETE_WIDGET">\n                                Delete Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="flipWidget()" translate="TOOLS.FLIP_WIDGET">\n                                Flip Widget\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n            <div layout="row" layout-align="end center" flex="20" ng-switch="result.error">\n                <span class="h3 secondary-text font-weight-500 text-truncate padding-right-20">{{ options.data.title || \'TOOLS.TITLE\' | translate }}</span>\n                <md-icon ng-switch-default md-font-icon="icon-timer-sand"></md-icon>\n                <md-icon ng-switch-when="false" class="green-fg" md-font-icon="icon-check"></md-icon>\n                <md-icon ng-switch-when="true" class="red-fg" md-font-icon="icon-block-helper"></md-icon>\n            </div>\n        </div>\n\n        <div layout="row" ng-if="!result.error">\n            <table md-table>\n                <thead md-head>\n                    <tr md-row>\n                        <th md-column ng-repeat="field in result.fields"><span> {{ field }} </span></th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-repeat="row in result.rows">\n                        <td md-cell ng-repeat="(key, value) in row"> {{value}} </td>\n                    </tr>\n                </tbody>\n            </table>\n        </div>\n        <div layout="row" ng-if="result.error">\n            <span class="padding-20">{{result.message}}</span>\n        </div>\n    </ms-widget-front>\n    \x3c!-- / Front --\x3e\n\n    \x3c!-- Back --\x3e\n    <ms-widget-back class="p-16 white-bg">\n        <div class="flip-to-front">\n            <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n            </md-button>\n        </div>\n\n        <div>\n            {{ options.data.description || \'TOOLS.DESCRIPTION\' | translate }}\n            <md-tooltip>{{ message || \'TOOLS.TOOLS_VALID_QUERY\' | translate }}</md-tooltip>\n        </div>\n    </ms-widget-back>\n    \x3c!-- / Back --\x3e\n\n</ms-widget>\n\x3c!-- / WIDGET --\x3e'),e.put("app/core/directives/ms-dual-multiselect/ms-dual-multiselect.html",'<div ng-cloak layout-gt-sm="row" layout="column">\n    <div flex-gt-sm="50" flex="45">\n        <md-input-container class="md-icon-float md-block margin-0">\n            <md-icon md-font-icon="icon-magnify" aria-label="swap"></md-icon>\n            <input ng-model="query" type="text" placeholder="Search...">\n        </md-input-container>\n        <md-content class="border h-300">\n            <md-list class="md-dense" layout-fill layout-align="center center">\n                <md-list-item class="md-3-line" ng-repeat="item in options.items | filter: query | orderBy: options.orderBy" ng-click="transfer(options.items, options.selectedItems, options.items.indexOf(item), false)">\n                    <div class="md-list-item-text" layout="column">\n                        <h3 ng-if="options.line1">{{ item[options.line1] || \'\' }}</h3>\n                        <h4 ng-if="options.line2">{{ item[options.line2] || \'\' }}</h4>\n                        <p ng-if="options.line3">{{ item[options.line3] || \'\' }}</p>\n                    </div>\n                    <md-icon md-font-icon="icon-arrow-right-bold" aria-label="swap"></md-icon>\n                    <md-divider></md-divider>\n                </md-list-item>\n            </md-list>\n        </md-content>\n        <div class="margin-10" layout="row">\n            <span class="h4" flex>{{options.labelAll || \'All Items\'}} ({{options.items.length}})</span>\n            <md-icon md-font-icon="icon-chevron-double-right" aria-label="swap" ng-click="transfer(options.items, options.selectedItems, -1, false)"></md-icon>\n        </div>\n    </div>\n\n    <div flex="10" layout="row" layout-align="center center">\n        <md-icon md-font-icon="icon-swap-horizontal" aria-label="swap"></md-icon>\n    </div>\n\n    <div flex-gt-sm="50" flex="45">\n        <md-input-container class="md-icon-float md-block margin-0">\n            <md-icon md-font-icon="icon-magnify" aria-label="swap"></md-icon>\n            <input ng-model="selectedQuery" type="text" placeholder="Search...">\n        </md-input-container>\n        <md-content class="border h-300">\n            <md-list class="md-dense" layout-fill layout-align="center center">\n                <md-list-item class="md-3-line" ng-repeat="item in options.selectedItems | filter: selectedQuery | orderBy: options.orderBy" ng-click="transfer(options.selectedItems, options.items, options.selectedItems.indexOf(item), true)">\n                    <md-icon md-font-icon="icon-arrow-left-bold" aria-label="swap"></md-icon>\n                    <div class="md-list-item-text" layout="column">\n                        <h3 ng-if="options.line1">{{ item[options.line1] || \'\' }}</h3>\n                        <h4 ng-if="options.line2">{{ item[options.line2] || \'\' }}</h4>\n                        <p ng-if="options.line3">{{ item[options.line3] || \'\' }}</p>\n                    </div>\n                    <md-divider></md-divider>\n                </md-list-item>\n            </md-list>\n        </md-content>\n        <div class="margin-10" layout="row">\n            <md-icon md-font-icon="icon-chevron-double-left" aria-label="swap" flex ng-click="transfer(options.selectedItems, options.items, -1, true)"></md-icon>\n            <span class="h4">{{options.labelSelected || \'Selected Items\'}} ({{options.selectedItems.length}})</span>\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-info-bar/ms-info-bar.html",'<div id="ms-info-bar" layout="row" layout-align="start center" flex>\n    <div id="ms-info-bar-message" ng-transclude flex></div>\n    <md-button id="ms-info-bar-close" class="md-icon-button" aria-label="Close" ng-click="removeInfoBar()">\n        <md-icon md-font-icon="icon-close s24"></md-icon>\n    </md-button>\n</div>'),e.put("app/core/directives/ms-material-color-picker/ms-material-color-picker.html",'<md-menu md-position-mode="target-right target">\n\n    <div ng-click="$mdOpenMenu($event)">\n        <ms-color-picker-button>\n            <md-button aria-label="Row Color" md-menu-origin ng-click="$mdOpenMenu($event)" ng-class="vm.selectedColor.class">\n\n                <span ng-show="vm.selectedColor.palette">\n                    {{vm.selectedColor.palette}} {{vm.selectedColor.hue}}\n                </span>\n                <span ng-show="!vm.selectedColor.palette">\n                    Select Color\n                </span>\n            </md-button>\n        </ms-color-picker-button>\n    </div>\n\n    <md-menu-content class="ms-material-color-picker-menu-content" layout-column>\n\n        <header ng-class="vm.selectedColor.class || \'md-accent-bg\'" class="md-whiteframe-4dp" layout="row" layout-align="space-between center">\n            <md-button md-prevent-menu-close ng-click="vm.activateHueSelection(false,false)" class="md-icon-button" ng-class="{\'hidden\':!vm.selectedPalette}" aria-label="Palette">\n                <md-icon md-font-icon="icon-arrow-left" class="s20"></md-icon>\n            </md-button>\n\n            <span ng-if="vm.selectedColor.palette">\n                {{vm.selectedColor.palette}} {{vm.selectedColor.hue}}\n            </span>\n\n            <span ng-if="!vm.selectedColor.palette">\n                Select Color\n            </span>\n\n            <md-button class="remove-color-button md-icon-button" ng-click="vm.removeColor()" aria-label="Remove Color">\n                <md-icon md-font-icon="icon-delete" class="s20"></md-icon>\n            </md-button>\n        </header>\n\n        <div class="colors" ms-scroll>\n            <div ng-show="!vm.selectedPalette" layout="row" layout-wrap>\n                <div class="color" ng-class="\'md-\'+palette+\'-500-bg\'" ng-repeat="(palette, hues) in vm.palettes" ng-click="vm.activateHueSelection(palette,hues)" layout="row" layout-align="start end" md-prevent-menu-close md-ink-ripple>\n                    <span class="label">\n                        {{palette}}\n                    </span>\n                </div>\n            </div>\n\n            <div ng-show="vm.selectedPalette" layout="row" layout-wrap>\n                <div class="color" ng-class="\'md-\'+vm.selectedPalette+\'-\'+hue+\'-bg\'" ng-repeat="(hue, values) in vm.selectedHues" ng-click="vm.selectColor(vm.selectedPalette,hue)" layout="row" layout-align="start end" md-ink-ripple>\n                    <span class="label">\n                        {{hue}}\n                    </span>\n                    <i ng-if="vm.selectedPalette == vm.selectedColor.palette && hue == vm.selectedColor.hue" class="s16 icon-check">\n                    </i>\n                </div>\n            </div>\n\n        </div>\n\n    </md-menu-content>\n</md-menu>'),e.put("app/core/directives/ms-navigation/templates/horizontal.html",'<div class="navigation-toggle" hide-gt-sm>\n    <md-button class="md-icon-button" ng-click="vm.toggleHorizontalMobileMenu()" aria-label="Toggle Mobile Navigation">\n        <md-icon md-font-icon="icon-menu"></md-icon>\n    </md-button>\n</div>\n\n<ul class="horizontal">\n    <li ng-repeat="node in vm.navigation" ms-navigation-horizontal-node="node" ng-class="{\'has-children\': vm.hasChildren}" ng-include="\'navigation-horizontal-nested.html\'"></li>\n</ul>\n\n\x3c!-- Nested horizontal navigation template --\x3e\n<script type="text/ng-template" id="navigation-horizontal-nested.html">\n\n    <div ms-navigation-horizontal-item layout="row" ng-if="!vm.isHidden()">\n\n        <div class="ms-navigation-horizontal-button" ng-if="!node.uisref && node.title" ng-class="{\'active md-accent-bg md-accent-fg\': vm.isActive}">\n            <i class="icon s18 {{node.icon}}" ng-if="node.icon"></i>\n            <span class="title" translate="{{node.translate}}" flex>{{node.title}}</span>\n            <span class="badge white-fg" style="background: {{node.badge.color}}" ng-if="node.badge">{{node.badge.content}}</span>\n            <i class="icon-chevron-right s18 arrow" ng-if="vm.hasChildren"></i>\n        </div>\n\n        <a class="ms-navigation-horizontal-button" ui-sref="{{node.uisref}}" ui-sref-active="active md-accent-bg" ng-class="{\'active md-accent-bg md-accent-fg\': vm.isActive}" ng-if="node.uisref && node.title">\n            <i class="icon s18 {{node.icon}}" ng-if="node.icon"></i>\n            <span class="title" translate="{{node.translate}}" flex>{{node.title}}</span>\n            <span class="badge white-fg" style="background: {{node.badge.color}}" ng-if="node.badge">{{node.badge.content}}</span>\n            <i class="icon-chevron-right s18 arrow" ng-if="vm.hasChildren"></i>\n        </a>\n\n    </div>\n\n    <ul ng-if="vm.hasChildren && !vm.isHidden()">\n        <li ng-repeat="node in node.children" ms-navigation-horizontal-node="node" ng-class="{\'has-children\': vm.hasChildren}" ng-include="\'navigation-horizontal-nested.html\'"></li>\n    </ul>\n\n<\/script>\n\x3c!-- / Nested navigation template --\x3e'),e.put("app/core/directives/ms-navigation/templates/vertical.html",'<ul>\n    <li ng-repeat="node in vm.navigation" ms-navigation-node="node" ng-class="{\'collapsed\': vm.collapsed, \'has-children\': vm.hasChildren}" ng-include="\'navigation-nested.html\'"></li>\n</ul>\n\n\x3c!-- Nested navigation template --\x3e\n<script type="text/ng-template" id="navigation-nested.html">\n\n    <div ms-navigation-item layout="row" ng-if="!vm.isHidden()">\n\n        <div class="ms-navigation-button" ng-if="!node.uisref && node.title">\n            <i class="icon s16 {{node.icon}}" ng-if="node.icon"></i>\n            <span class="title" translate="{{node.translate}}" flex>{{node.title}}</span>\n            <span class="badge white-fg" ng-style="{\'background\': node.badge.color}" ng-if="node.badge">{{node.badge.content}}</span>\n            <i class="icon-chevron-right s16 arrow" ng-if="vm.collapsable && vm.hasChildren"></i>\n        </div>\n\n        <a class="ms-navigation-button" ui-sref="{{node.uisref}}" ui-sref-active="active md-accent-bg" ng-if="node.uisref && node.title">\n            <i class="icon s16 {{node.icon}}" ng-if="node.icon"></i>\n            <span class="title" translate="{{node.translate}}" flex>{{node.title}}</span>\n            <span class="badge white-fg" ng-style="{\'background\': node.badge.color}" ng-if="node.badge">{{node.badge.content}}</span>\n            <i class="icon-chevron-right s16 arrow" ng-if="vm.collapsable && vm.hasChildren"></i>\n        </a>\n\n    </div>\n\n    <ul ng-if="vm.hasChildren && !vm.isHidden()">\n        <li ng-repeat="node in node.children" ms-navigation-node="node" ng-class="{\'collapsed\': vm.collapsed, \'has-children\': vm.hasChildren}" ng-include="\'navigation-nested.html\'"></li>\n    </ul>\n\n<\/script>\n\x3c!-- / Nested navigation template --\x3e'),e.put("app/core/directives/ms-phonebar/ms-phonebar.html",'<div class="phonebar-container" layout="row" layout-align="space-between center" flex ng-class="{\'mobile-bar-active\': MsPhonebar.mobileBarActive}">\n\n    <div class="flex-noshrink" layout="row" layout-align="start center" flex>\n        <div class="phonebar hide show-gt-xs" layout="row" layout-align="start center">\n            <div layout="row" layout-align="center">\n                <md-input-container md-no-float>\n                    <input type="text" name="prefix" ng-model="vm.chanSpy.prefix" required placeholder="Insert Number">\n                </md-input-container>\n            </div>\n            <div layout="row" layout-align="center center">\n                <md-button class="md-icon-button">\n                    <md-icon md-font-icon="icon-phone" class="icon s24"></md-icon>\n                    <md-tooltip md-direction="bottom">CALL</md-tooltip>\n                </md-button>\n            </div>\n        </div>\n    </div>\n\n    <md-button class="md-icon-button toggle-mobile-menu hide-gt-xs" aria-label="Add shortcut" ng-click="MsPhonebar.toggleMobileBar()">\n        <md-icon md-menu-origin md-font-icon="icon-phone" class="icon s24" ng-hide="MsPhonebar.mobileBarActive"></md-icon>\n        <md-icon md-menu-origin md-font-icon="icon-close" class="icon s24" ng-hide="!MsPhonebar.mobileBarActive"></md-icon>\n    </md-button>\n</div>'),e.put("app/core/directives/ms-search-bar/ms-search-bar.html",'<div flex layout="row" layout-align="start center">\n    <label for="ms-search-bar-input">\n        <md-button class="ms-search-bar-expander md-icon-button" aria-label="Expand Search Bar"\n                   ng-click="MsSearchBar.expand()"\n                   ng-if="!MsSearchBar.resultsLoading || MsSearchBar.collapsed">\n            <md-icon md-font-icon="icon-magnify" class="icon s24"></md-icon>\n        </md-button>\n        <div class="ms-search-bar-loader" layout="row" layout-align="center center"\n             ng-if="MsSearchBar.resultsLoading && !MsSearchBar.collapsed">\n            <md-progress-circular class="md-accent" md-diameter="32" md-mode="indeterminate"></md-progress-circular>\n        </div>\n    </label>\n    <input id="ms-search-bar-input" type="text" placeholder="Search" flex ng-model="MsSearchBar.query" ng-model-options="MsSearchBar.queryOptions" ng-blur="MsSearchBar.blurCollapse()" ng-keydown="MsSearchBar.handleKeydown($event)">\n    <md-button class="ms-search-bar-collapser md-icon-button" ng-click="MsSearchBar.collapse()" aria-label="Collapse Search Bar">\n        <md-icon md-font-icon="icon-close" class="icon s24"></md-icon>\n    </md-button>\n\n    <div class="ms-search-bar-results" ng-if="MsSearchBar.results" ms-scroll>\n        <div class="no-results" ng-if="MsSearchBar.results.length === 0">No Results!</div>\n\n        <div class="result" ng-repeat="result in MsSearchBar.results" ng-click="MsSearchBar.handleResultClick(result)" ng-mouseenter="MsSearchBar.handleMouseenter($index)" ng-mousedown="MsSearchBar.absorbEvent($event)" ng-class="{\'selected\': $index == MsSearchBar.selectedResultIndex}"\n            md-ink-ripple>\n            <div layout="row" layout-align="start center">\n                <div class="icon-container" layout="row" layout-align="center center">\n                    <i ng-if="result.icon" class="icon {{result.icon}}"></i>\n                    <div ng-if="!result.icon" class="square md-accent-bg"></div>\n                </div>\n                <div>\n                    <div class="title">{{result.title}}</div>\n                    <div class="description" ng-if="result.description">{{result.description}}</div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-shortcuts/ms-shortcuts.html",'<div class="shortcuts-container" layout="row" layout-align="space-between center" flex ng-class="{\'mobile-bar-active\': MsShortcuts.mobileBarActive}">\n\n    <div class="flex-noshrink" layout="row" layout-align="start center" flex>\n        <div class="shortcuts hide show-gt-xs" layout="row" layout-align="start center" ms-scroll ng-if="MsShortcuts.shortcuts.length > 0" ng-sortable="MsShortcuts.sortableOptions">\n            <div ng-repeat="shortcut in MsShortcuts.shortcuts" layout="row" layout-align="center center">\n                <md-button class="md-icon-button shortcut" aria-label="{{shortcut.title}}" ui-sref="{{shortcut.uisref}}">\n                    <md-icon ng-if="shortcut.icon" md-font-icon="{{shortcut.icon}}" class="icon s24"></md-icon>\n                    <div ng-if="!shortcut.icon" class="first-letter">{{shortcut.title.charAt(0)}}</div>\n                    <md-tooltip md-direction="bottom">{{shortcut.title}}</md-tooltip>\n                </md-button>\n            </div>\n        </div>\n\n        <md-menu md-offset="8 56" class="shortcut-menu hide show-gt-xs">\n            <md-button class="md-icon-button add-shortcut-button" aria-label="Add shortcut" ng-click="$mdOpenMenu($event)">\n                <md-icon md-menu-origin md-font-icon="icon-star" class="icon amber-600-fg s24"></md-icon>\n                <md-tooltip md-direction="bottom">Click to add/remove shortcut</md-tooltip>\n            </md-button>\n\n            <md-menu-content>\n                <div id="ms-shortcut-add-menu">\n                    <div class="shortcut-search" layout="row" layout-align="start center">\n                        <div class="search-icon" layout="row" layout-align="center center" ng-if="!MsShortcuts.resultsLoading">\n                            <md-icon md-menu-align-target md-font-icon="icon-magnify" class="icon s24"></md-icon>\n                        </div>\n                        <div class="shortcut-loader" layout="row" layout-align="center center" ng-if="MsShortcuts.resultsLoading">\n                            <md-progress-circular class="md-accent" md-diameter="20" md-mode="indeterminate">\n                            </md-progress-circular>\n                        </div>\n\n                        <input type="text" placeholder="Search" flex ng-model="MsShortcuts.query" ng-model-options="MsShortcuts.queryOptions" ng-keydown="MsShortcuts.handleKeydown($event)">\n                    </div>\n\n                    <div class="results" ng-if="MsShortcuts.results" ms-scroll>\n                        <div class="no-results" ng-if="MsShortcuts.results.length === 0">No Results!</div>\n\n                        <div class="result" ng-repeat="result in MsShortcuts.results" ng-click="MsShortcuts.handleResultClick(result)" ng-mouseenter="MsShortcuts.handleMouseenter($index)" ng-mousedown="MsShortcuts.absorbEvent($event)" ng-class="{\'selected\': $index == MsShortcuts.selectedResultIndex}"\n                            md-prevent-menu-close="md-prevent-menu-close" md-ink-ripple>\n                            <div layout="row" layout-align="start space-between">\n                                <div layout="row" layout-align="start center" flex>\n                                    <div class="icon icon-container" layout="row" layout-align="center center">\n                                        <i ng-if="result.icon" class="{{result.icon}}"></i>\n                                        <div ng-if="!result.icon" class="square md-accent-bg"></div>\n                                    </div>\n                                    <div>\n                                        <div class="title">{{result.title}}</div>\n                                    </div>\n                                </div>\n                                <md-icon md-font-icon="icon-pin" class="icon s18" ng-class="{\'fade-text\': !result.hasShortcut}"></md-icon>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </md-menu-content>\n        </md-menu>\n    </div>\n\n    <md-button class="md-icon-button toggle-mobile-menu hide-gt-xs" aria-label="Add shortcut" ng-click="MsShortcuts.toggleMobileBar()">\n        <md-icon md-menu-origin md-font-icon="icon-star" class="icon amber-600-fg s24" ng-hide="MsShortcuts.mobileBarActive"></md-icon>\n        <md-icon md-menu-origin md-font-icon="icon-close" class="icon s24" ng-hide="!MsShortcuts.mobileBarActive"></md-icon>\n    </md-button>\n</div>'),e.put("app/core/directives/ms-stepper/templates/horizontal/horizontal.html",'<div class="ms-stepper-horizontal">\n    <div class="ms-stepper-navigation-wrapper">\n        <div class="ms-stepper-navigation" layout="row" layout-align="center center">\n            <md-button class="ms-stepper-navigation-item" ng-class="{\'current\': MsStepper.isStepCurrent(step.stepNumber), \'valid\': MsStepper.isStepValid(step.stepNumber), \'disabled\': MsStepper.isStepDisabled(step.stepNumber), \'optional\': MsStepper.isStepOptional(step.stepNumber)}"\n                ng-click="MsStepper.gotoStep(step.stepNumber)" ng-disabled="MsStepper.isStepDisabled(step.stepNumber)" ng-repeat="step in MsStepper.steps | filter:MsStepper.filterHiddenStep" layout="row" layout-align="start center">\n\n                <div class="step md-accent-bg" layout="row" layout-align="center center">\n                    <span ng-if="!MsStepper.isStepValid(step.stepNumber) || MsStepper.isStepOptional(step.stepNumber)">\n                    {{$index + 1}}\n                </span>\n                    <span ng-if="MsStepper.isStepValid(step.stepNumber) && !MsStepper.isStepOptional(step.stepNumber)">\n                    <i class="icon icon-check s18"></i>\n                </span>\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="title" translate="{{step.stepTitleTranslate}}">{{step.stepTitle}}</div>\n                    <div class="subtitle" ng-if="MsStepper.isStepOptional(step.stepNumber)">Optional</div>\n                </div>\n            </md-button>\n        </div>\n    </div>\n\n    <div class="ms-stepper-steps" ng-transclude></div>\n\n    <div class="ms-stepper-controls" layout="row" layout-align="center center">\n        <md-button class="md-accent md-raised" ng-disabled="MsStepper.isFirstStep()" ng-click="MsStepper.gotoPreviousStep()">\n            Back\n        </md-button>\n\n        <div class="ms-stepper-dots">\n            <span ng-repeat="step in MsStepper.steps" ng-hide="MsStepper.isStepHidden(step.stepNumber)" ng-class="{\'selected md-accent-bg\':MsStepper.currentStepNumber === $index + 1}">\n            </span>\n        </div>\n\n        <md-button class="md-accent md-raised" ng-if="!MsStepper.isLastStep()" ng-disabled="!MsStepper.isStepValid(MsStepper.currentStepNumber)" ng-click="MsStepper.gotoNextStep()">\n            Next\n        </md-button>\n\n        <md-button type="submit" class="md-accent md-raised" ng-click="MsStepper.resetForm()" ng-if="MsStepper.isLastStep()" ng-disabled="!MsStepper.isFormValid()">\n            Submit\n        </md-button>\n    </div>\n</div>'),e.put("app/core/directives/ms-stepper/templates/vertical/step/vertical-step.html","<md-button class=\"ms-stepper-navigation-item\" ng-class=\"{'current': MsStepper.isStepCurrent(stepInfo.stepNumber), 'valid': MsStepper.isStepValid(stepInfo.stepNumber), 'disabled': MsStepper.isStepDisabled(stepInfo.stepNumber), 'optional': MsStepper.isStepOptional(stepInfo.stepNumber)}\"\n"+'    ng-click="MsStepper.gotoStep(stepInfo.stepNumber)" ng-disabled="MsStepper.isStepDisabled(stepInfo.stepNumber)" ng-hide="MsStepper.isStepHidden(stepInfo.stepNumber)" aria-label="Stepper navigation button" layout="row" layout-align="start center">\n\n    <div class="step" layout="row" layout-align="center center">\n        <span ng-if="!MsStepper.isStepValid(stepInfo.stepNumber) || MsStepper.isStepOptional(stepInfo.stepNumber)">\n            <i class="icon icon-checkbox-blank-circle-outline s18 md-accent-fg"></i>\n        </span>\n        <span ng-if="MsStepper.isStepValid(stepInfo.stepNumber) && !MsStepper.isStepOptional(stepInfo.stepNumber)">\n            <i class="icon icon-check-circle s18 md-accent-fg"></i>\n        </span>\n    </div>\n\n    <div layout="column" layout-align="start start">\n        <div class="title" ng-if="stepInfo.stepTitleTranslate">{{stepInfo.stepTitleTranslate | translate }}</div>\n        <div class="title" ng-if="!stepInfo.stepTitleTranslate">{{stepInfo.stepTitle}}</div>\n        <div class="subtitle" ng-if="MsStepper.isStepOptional(stepInfo.stepNumber)">Optional</div>\n    </div>\n</md-button>\n\n<div class="ms-stepper-step-content" ng-transclude></div>\n\n<div class="ms-stepper-controls" layout="row" layout-align="start center" ng-show="MsStepper.isStepCurrent(stepInfo.stepNumber)">\n    <md-button class="md-accent md-raised" ng-disabled="MsStepper.isFirstStep()" ng-click="MsStepper.gotoPreviousStep()">\n        Back\n    </md-button>\n\n    <md-button class="md-accent md-raised" ng-if="!MsStepper.isLastStep()" ng-disabled="!MsStepper.isStepValid(MsStepper.currentStepNumber)" ng-click="MsStepper.gotoNextStep()">\n        Next\n    </md-button>\n\n    <md-button type="submit" class="md-accent md-raised" ng-click="MsStepper.resetForm()" ng-if="MsStepper.isLastStep()" ng-disabled="!MsStepper.isFormValid()">\n        Submit\n    </md-button>\n</div>'),e.put("app/core/directives/ms-stepper/templates/vertical/vertical.html",'<div class="ms-stepper-vertical">\n    <div class="ms-stepper-vertical-line"></div>\n    <div class="ms-stepper-steps" ng-transclude></div>\n</div>'),e.put("app/core/directives/ms-timezone/ms-timezone.html",'<md-select ng-model="ngModel">\n    <md-option ng-value="null">NONE</md-option>\n    <md-option ng-repeat="(key, value) in timezone" value="{{key}}">{{value.name}} ({{value.offsetStr}})</md-option>\n</md-select>'),e.put("app/core/layouts/content-only.html",'<div id="layout-content-only" class="template-layout" layout="column" flex>\n    <md-content id="content" class="animate-slide-up md-hue-2" ui-view="content" flex></md-content>\n</div>'),e.put("app/core/layouts/content-with-toolbar.html",'<div id="layout-content-with-toolbar" class="template-layout" layout="column" flex>\n    <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp" ui-view="toolbar"></md-toolbar>\n    <md-content id="content" class="animate-slide-up md-hue-2" ui-view="content" flex></md-content>\n\n    <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n</div>'),e.put("app/core/layouts/horizontal-navigation.html",'<div id="layout-horizontal-navigation" class="template-layout" layout="column" flex>\n\n    <div id="toolbar-navigation-container" class="md-whiteframe-1dp" layout="column" layout-align="space-between start">\n        <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp" ui-view="toolbar"></md-toolbar>\n        <div id="horizontal-navigation" ui-view="navigation" layout="row" layout-align="start end" flex></div>\n    </div>\n\n    <div id="content-container" flex layout="column">\n        <md-content id="content" class="animate-slide-up md-hue-2" ms-scroll ui-view="content" flex></md-content>\n    </div>\n\n    <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n\n</div>'),e.put("app/core/layouts/vertical-navigation-fullwidth-toolbar-2.html",'<div id="layout-vertical-navigation-fullwidth-toolbar-2" class="template-layout" layout="column" flex>\n\n    <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp md-accent" ui-view="toolbar"></md-toolbar>\n\n    <div id="main-container" layout="row" flex>\n        <md-sidenav id="vertical-navigation" class="md-primary-bg" md-is-locked-open="$mdMedia(\'gt-sm\')" md-component-id="navigation" ms-scroll ui-view="navigation"></md-sidenav>\n\n        <div id="content-container" flex layout="column">\n            <md-content id="content" class="animate-slide-up md-hue-2" ms-scroll ui-view="content" flex></md-content>\n        </div>\n\n        <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n    </div>\n\n\n</div>'),e.put("app/core/layouts/vertical-navigation-fullwidth-toolbar.html",'<div id="layout-vertical-navigation-fullwidth-toolbar" class="template-layout" layout="column" flex>\n\n    <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp md-accent" ui-view="toolbar"></md-toolbar>\n\n    <div id="main-container" layout="row" flex>\n        <md-sidenav id="vertical-navigation" class="md-primary-bg" md-is-locked-open="$mdMedia(\'gt-sm\')" md-component-id="navigation" ms-scroll ui-view="navigation"></md-sidenav>\n\n        <div id="content-container" flex layout="column">\n            <md-content id="content" class="animate-slide-up md-hue-2" ms-scroll ui-view="content" flex></md-content>\n        </div>\n\n        <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n    </div>\n\n\n</div>'),e.put("app/core/layouts/vertical-navigation.html",'<div id="layout-vertical-navigation" class="template-layout" layout="row" flex>\n\n    <md-sidenav id="vertical-navigation" class="md-primary-bg" md-is-locked-open="$mdMedia(\'gt-sm\')" md-component-id="navigation" ms-scroll ui-view="navigation" ng-if="!vm.isAgent()"></md-sidenav>\n\n    <div id="content-container" flex layout="column">\n        <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp" ui-view="toolbar"></md-toolbar>\n\n        <md-content id="content" class="animate-slide-up md-hue-2" ms-scroll ui-view="content" flex></md-content>\n    </div>\n\n    <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n\n</div>'),e.put("app/core/theme-options/theme-options.html",'<div class="ms-theme-options-button md-primary-bg" ng-click="toggleOptionsSidenav()">\n    <md-icon md-font-icon="icon-cog" class="white-text"></md-icon>\n</div>\n\n<md-sidenav md-component-id="motion-theme-options" class="md-sidenav-right">\n\n    <div class="ms-theme-options-list" layout="column">\n        <div class="theme-option layout-options">\n            <div class="option-title">Layout Style:</div>\n            <md-radio-group layout="row" layout-align="start start" layout-wrap ng-model="vm.layoutStyle" ng-change="vm.updateLayoutStyle()">\n                <md-radio-button ng-repeat="layoutStyle in vm.layoutStyles" ng-value="layoutStyle.value">\n                    <div layout="column" layout-align="center center">\n                        <img ng-src="{{layoutStyle.figure}}">\n                        <span class="text-center font-size-12 mt-8">{{layoutStyle.label}}</span>\n                    </div>\n                </md-radio-button>\n            </md-radio-group>\n        </div>\n\n        <md-divider></md-divider>\n\n        <div class="theme-option">\n            <div class="option-title">Layout Mode:</div>\n            <md-radio-group layout="row" layout-align="start center" ng-model="vm.layoutMode" ng-change="vm.updateLayoutMode()">\n                <md-radio-button ng-repeat="layoutMode in vm.layoutModes" ng-value="layoutMode.value">\n                    {{layoutMode.label}}\n                </md-radio-button>\n            </md-radio-group>\n        </div>\n\n        <md-divider></md-divider>\n\n        <div class="theme-option color-palettes">\n            <div class="option-title">Color Palette:</div>\n            <div layout="row" layout-align="start start" layout-wrap>\n                <md-button ng-repeat="(themeName, theme) in vm.themes.list" class="md-raised theme-button" layout="row" layout-align="center center" aria-label="{{themeName}}" ng-click="vm.setActiveTheme(themeName)" ng-style="{\'background-color\': theme.primary.color,\'border-color\': theme.accent.color,\'color\': theme.primary.contrast1}"\n                    ng-class="{active: vm.getActiveTheme().name === themeName}">\n                    <md-icon ng-style="{\'color\': theme.primary.contrast1}" md-font-icon="icon-palette" class="icon s32"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n</md-sidenav>'),e.put("app/errors/404/error-404.html",'<div id="error-404" layout="column" layout-align="center center">\n    <div class="content" layout="column" layout-align="center center">\n        <div class="error-code" translate="ERROR404.CODE">404</div>\n\n        <div class="message" translate="ERROR404.MESSAGE">Sorry but we couldn’t find the page you are looking for</div>\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300">Search for anything</ms-search-bar>\n\n        \x3c!-- <div class="search md-whiteframe-1dp" layout="row" layout-align="start center">\n            <md-icon md-font-icon="icon-magnify" class="icon s24"></md-icon>\n            <input ng-model="vm.search" type="text" placeholder="Search for anything" translate translate-attr-placeholder="ERROR404.SEARCH" flex>\n        </div> --\x3e\n\n        <a class="md-button md-raised md-primary back-link" href="/" translate="ERROR404.GO_BACK">Go back to dashboard</a>\n    </div>\n</div>'),e.put("app/errors/500/error-500.html",'<div id="error-500" layout="column" layout-align="center center">\n    <div ng-if="!vm.send" class="content" layout="column" layout-align="center center">\n        <div class="error-code" translate="ERROR500.CODE">500</div>\n        <div class="message" translate="ERROR500.MESSAGE">Well, you broke the internet!</div>\n        <div class="sub-message" translate="ERROR500.SUBMESSAGE">Just kidding, looks like we have an internal issue, please try again in couple minutes\n        </div>\n        <a class="md-button md-raised md-primary back-link" href="/" translate="ERROR500.GO_BACK">Go back to dashboard</a>\n        <md-button class="md-raised md-warn" ng-click="vm.sendReport()" translate="ERROR500.REPORT">Report this problem</md-button>\n    </div>\n    <pre ng-if="!vm.send">\n      {{vm.error}}\n    </pre>\n    <div ng-if="vm.send" class="content" layout="column" layout-align="center center">\n        <div class="error-code">#{{vm.code}}</div>\n        <div class="message" translate="ERROR500.JIRA_MESSAGE">Your request has been received and will be processed shortly.</div>\n        <div class="sub-message" translate="ERROR500.JIRA_SUBMESSAGE">Sorry for the inconvenience. If you have any questions or concerns, please do not hesitate to contact us.</div>\n        <a class="md-button md-raised md-primary back-link" href="/" translate="ERROR500.GO_BACK">Go back to dashboard</a>\n    </div>\n</div>'),e.put("app/login/login.html",'<div id="login" class="flex-scrollable" layout="column" ms-scroll>\n    <div id="login-form-wrapper" layout="column" layout-align="center center">\n        <div id="login-form" class="md-whiteframe-8dp">\n\n            <img src="/api/settings/1/logo_login" alt="logo_login" />\n            \x3c!-- <img src="assets/images/logos/login.png" alt="motion_logo_login" /> --\x3e\n\n            <div class="md-subhead padding-top-45" translate="LOGIN.TITLE">Log in to your account</div>\n\n            <form name="loginForm" novalidate>\n                <md-input-container class="md-block" md-no-float>\n                    <input type="input" name="name" ng-model="vm.form.name" autofocus aria-label="username" translate translate-attr-placeholder="LOGIN.USERNAME" required>\n                    <div ng-messages="loginForm.name.$error" role="alert" multiple>\n                        <div ng-message="required">\n                            <span translate="LOGIN.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n\n                <md-input-container class="md-block" md-no-float>\n                    <input type="password" name="password" ng-model="vm.form.password" aria-label="password" translate translate-attr-placeholder="LOGIN.PASSWORD" required>\n                    <div ng-messages="loginForm.password.$error" role="alert" multiple>\n                        <div ng-message="required">\n                            <span translate="LOGIN.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n\n                \x3c!-- <div class="remember-forgot-password" layout="row" layout-xs="column" layout-align="space-between center">\n                    <md-checkbox class="remember-me" ng-model="data.cb1" aria-label="Remember Me">\n                        <span translate="LOGIN.REMEMBER_ME">Remember Me</span>\n                    </md-checkbox>\n                    <a ui-sref="app.pages_auth_forgot-password" class="forgot-password md-accent-color" translate="LOGIN.FORGOT_PASSWORD">Forgot Password?</a>\n                </div> --\x3e\n\n                <b layout="row" layout-align="center center" class="md-padding" ng-if="vm.message"><font color="red">{{vm.message}}</font></b>\n                <md-button type="submit" ng-click="vm.login()" class="md-raised md-accent submit-button" aria-label="LOG IN" aria-label="LOGIN" translate="LOGIN.LOG_IN" translate-attr-aria-label="LOGIN.LOG_IN">\n                    LOG IN\n                </md-button>\n            </form>\n\n            <div class="separator">\n                <span class="text" translate="LOGIN.OR">OR</span>\n            </div>\n\n            <md-button ng-click="vm.loginOauth(\'google\')" class="md-raised google">\n                <div layout="row" layout-align="center center">\n                    <span>\n                        <md-icon md-font-icon="icon-google-plus" class="s16"></md-icon>\n                        <span translate="LOGIN.WITH_GOOGLE">Log in with Google</span>\n                    </span>\n                </div>\n            </md-button>\n        </div>\n    </div>\n</div>'),e.put("app/main/apps/analytics/views/extractedReports/create/dialog.html",'<md-dialog class="extractedReport-dialog" aria-label="New ExtractedReport">\n    <form name="extractedReportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.extractedReport.name" required autofocus>\n                <div ng-messages="extractedReportForm.name.$error" ng-show="extractedReportForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newExtractedReport" ng-click="vm.saveExtractedReport()" class="send-button md-accent md-raised" ng-disabled="extractedReportForm.$invalid || extractedReportForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE"\n                    translate-attr-aria-label="ANALYTICS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newExtractedReport" ng-click="vm.addNewExtractedReport()" class="send-button md-accent md-raised" ng-disabled="extractedReportForm.$invalid" aria-label="ADD" translate="ANALYTICS.ADD_EXTRACTEDREPORT" translate-attr-aria-label="ANALYTICS.ADD_EXTRACTEDREPORT">\n                    ADD EXTRACTEDREPORT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newExtractedReport" ng-click="vm.deleteExtractedReport($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/extractedReports/extractedReports.html",'<div id="extractedReports" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-chart-line" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="ANALYTICS.EXTRACTEDREPORTS">ExtractedReports</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="ANALYTICS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedExtractedReports.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedExtractedReports =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="ANALYTICS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-extractedReports-count">\n                    <span>{{vm.selectedExtractedReports.length}}</span>\n                <span translate="ANALYTICS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="EXTRACTEDREPORTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllExtractedReports()" translate="ANALYTICS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectExtractedReports()" translate="ANALYTICS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedExtractedReports" filename="extractedReports.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedExtractedReports($event)" aria-label="delete selected" translate translate-attr-label="EXTRACTEDREPORTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- EXTRACTEDREPORT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedExtractedReports" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getExtractedReports">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'ANALYTICS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'ANALYTICS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="type">{{ \'ANALYTICS.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="startDate">{{ \'ANALYTICS.DATE_RANGE_FROM\' | translate }}</th>\n                                <th md-column md-order-by="endDate">{{ \'ANALYTICS.DATE_RANGE_TO\' | translate }}</th>\n                                <th md-column md-order-by="createdAt">{{ \'ANALYTICS.GENERATED_AT\' | translate }}</th>\n                                <th md-column md-order-by="status">{{ \'ANALYTICS.STATUS\' | translate }}</th>\n                                <th md-column md-order-by="output">{{ \'ANALYTICS.OUTPUT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.extractedReports.rows.length">\n                                <td md-cell colspan="9">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="ANALYTICS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="extractedReport" md-select-id="id" ng-repeat="extractedReport in vm.extractedReports.rows">\n                                <td md-cell ng-if="extractedReport.userpic"><img class="avatar" alt="{{extractedReport.name}}" ng-src="api/users/{{extractedReport.id}}/avatar" /></td>\n                                <td md-cell ng-if="!extractedReport.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{extractedReport.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="id ">{{extractedReport.id}}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="name ">{{extractedReport.name}}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="type ">{{extractedReport.type}}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="startDate ">{{extractedReport.startDate | date:\'medium\' }}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="endDate ">{{extractedReport.endDate | date:\'medium\' }}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="createdAt ">{{extractedReport.createdAt | date:\'medium\' }}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="status ">{{extractedReport.status}}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="output ">{{extractedReport.output}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="ANALYTICS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(extractedReport, $event)" translate="ANALYTICS.EDIT_EXTRACTEDREPORT">\n                                                    Edit ExtractedReport\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.downloadfile(extractedReport, $event)" translate="ANALYTICS.DOWNLOAD_EXTRACTEDREPORT">\n                                                    Download ExtractedReport\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(extractedReport, $event)" translate="ANALYTICS.DELETE_EXTRACTEDREPORT">\n                                                    Delete ExtractedReport\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.extractedReports.count}}" md-on-paginate="vm.getExtractedReports" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / EXTRACTEDREPORT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/main/apps/analytics/views/metrics/create/dialog.html",'<md-dialog class="metric-dialog" aria-label="New Metric">\n    <form name="metricForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.metric.name" required autofocus>\n                <div ng-messages="metricForm.name.$error" ng-show="metricForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.TABLE">Table</label>\n                <md-select ng-model="vm.metric.table" required>\n                    <md-option ng-value="\'report_agent\'">Agent Report</md-option>\n                    <md-option ng-value="\'report_call\'">Call Report</md-option>\n                    <md-option ng-value="\'chat_messages\'">Chat Messages</md-option>\n                    <md-option ng-value="\'chat_rooms\'">Chat Rooms</md-option>\n                    <md-option ng-value="\'report_chat_session\'">Chat Session Report</md-option>\n                    <md-option ng-value="\'cm_contacts\'">Contacts</md-option>\n                    <md-option ng-value="\'report_square\'">CSquare Report</md-option>\n                    <md-option ng-value="\'report_square_details\'">CSquare Details Report</md-option>\n                    <md-option ng-value="\'fax_messages\'">Fax Messages</md-option>\n                    <md-option ng-value="\'fax_rooms\'">Fax Rooms</md-option>\n                    <md-option ng-value="\'report_fax_session\'">Fax Session Report</md-option>\n                    <md-option ng-value="\'report_integration\'">Integration Report</md-option>\n                    <md-option ng-value="\'mail_messages\'">Mail Messages</md-option>\n                    <md-option ng-value="\'mail_rooms\'">Mail Rooms</md-option>\n                    <md-option ng-value="\'report_mail_session\'">Mail Session Report</md-option>\n                    <md-option ng-value="\'report_member\'">Member Report</md-option>\n                    <md-option ng-value="\'openchannel_messages\'">Open Channel Messages</md-option>\n                    <md-option ng-value="\'openchannel_rooms\'">Open Channel Rooms</md-option>\n                    <md-option ng-value="\'report_openchannel_session\'">Open Channel Session Report</md-option>\n                    <md-option ng-value="\'report_queue\'">Queue Report</md-option>\n                    <md-option ng-value="\'sms_messages\'">Sms Messages</md-option>\n                    <md-option ng-value="\'sms_rooms\'">Sms Rooms</md-option>\n                    <md-option ng-value="\'report_sms_session\'">Sms Session Report</md-option>\n                    <md-option ng-value="\'users\'">Users</md-option>\n                    <md-option ng-value="\'voice_recordings\'">Voice Recordings</md-option>\n                    <md-option ng-value="\'cm_hopper\'">Dialer Hopper Processing</md-option>\n                    <md-option ng-value="\'cm_hopper_history\'">Dialer Hopper Logs</md-option>\n                    <md-option ng-value="\'cm_hopper_final\'">Dialer Hopper Final</md-option>\n                </md-select>\n                <div ng-messages="metricForm.table.$error" ng-show="metricForm.table.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.TABLE_REQUIRED">Table field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.METRIC">Metric</label>\n                <input type="text" name="metric" ng-model="vm.metric.metric" required>\n                <div ng-messages="metricForm.metric.$error" ng-show="metricForm.metric.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.METRIC_REQUIRED">Metric field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.metric.description">\n                <div ng-messages="metricForm.description.$error" ng-show="metricForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMetric" ng-click="vm.saveMetric()" class="send-button md-accent md-raised" ng-disabled="metricForm.$invalid || metricForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMetric" ng-click="vm.addNewMetric()" class="send-button md-accent md-raised" ng-disabled="metricForm.$invalid" aria-label="ADD" translate="ANALYTICS.ADD_METRIC" translate-attr-aria-label="ANALYTICS.ADD_METRIC">\n                    ADD METRIC\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMetric" ng-click="vm.deleteMetric($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/metrics/metrics.html",'<div id="metrics" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-chart-line" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="ANALYTICS.METRICS">Metrics</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="ANALYTICS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedMetrics.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedMetrics =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="ANALYTICS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-metrics-count">\n                    <span>{{vm.selectedMetrics.length}}</span>\n                <span translate="ANALYTICS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="METRICS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllMetrics()" translate="ANALYTICS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectMetrics()" translate="ANALYTICS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedMetrics" filename="metrics.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedMetrics($event)" aria-label="delete selected" translate translate-attr-label="METRICS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- METRIC TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedMetrics" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getMetrics">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'ANALYTICS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'ANALYTICS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="table">{{ \'ANALYTICS.TABLE\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'ANALYTICS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.metrics.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="ANALYTICS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="metric" md-select-id="id" ng-repeat="metric in vm.metrics.rows">\n                                <td md-cell ng-if="metric.userpic"><img class="avatar" alt="{{metric.name}}" ng-src="api/users/{{metric.id}}/avatar" /></td>\n                                <td md-cell ng-if="!metric.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{metric.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditMetric($event, metric)" md-cell class="id ">{{metric.id}}</td>\n                                <td ng-click="vm.createOrEditMetric($event, metric)" md-cell class="name ">{{metric.name}}</td>\n                                <td ng-click="vm.createOrEditMetric($event, metric)" md-cell class="table ">{{ vm.arraytable[metric.table].option }}</td>\n                                <td ng-click="vm.createOrEditMetric($event, metric)" md-cell class="description ">{{metric.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="ANALYTICS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(metric, $event)" translate="ANALYTICS.EDIT_METRIC">\n                                                    Edit Metric\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(metric, $event)" translate="ANALYTICS.DELETE_METRIC">\n                                                    Delete Metric\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.metrics.count}}" md-on-paginate="vm.getMetrics" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / METRIC TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD METRIC BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-metric-button" ng-click="vm.createOrEditMetric($event)" aria-label="add metric" translate translate-attr-aria-label="ANALYTICS.ADD_METRIC">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD METRIC BUTTON --\x3e\n</div>'),e.put("app/main/apps/analytics/views/reports/copy/dialog.html",'<md-dialog class="report-dialog" aria-label="Run Report">\n    <form name="reportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="ANALYTICS.COPY_REPORT">Copy Report</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input name="name" ng-model="vm.report.name" required md-autofocus>\n                <div ng-messages="reportForm.name.$error" ng-show="reportForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="md-block">\n                <label translate="ANALYTICS.SELECT_NODE">Select Node</label>\n                <div js-tree="vm.treeCustomConfig" tree-events-obj="vm.treeCustomEvents" ng-model="vm.treeCustomData" tree="vm.treeCustomInstance"></div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.copyReport()" class="send-button md-accent md-raised" ng-disabled="!vm.currentNode" aria-label="COPY" translate="ANALYTICS.COPY_REPORT" translate-attr-aria-label="ANALYTICS.COPY_REPORT">\n                    COPY REPORT\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/reports/create/dialog.html",'<md-dialog class="report-dialog" aria-label="New Report">\n    <form name="reportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.report.name" required md-autofocus>\n                <div ng-messages="reportForm.name.$error" ng-show="reportForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newReport">\n                <label translate="ANALYTICS.TABLE">Table</label>\n                <md-select ng-model="vm.report.table" required>\n                    <md-option value="report_agent">Agent Report</md-option>\n                    <md-option value="report_call">Call Report</md-option>\n                    <md-option value="chat_messages">Chat Messages</md-option>\n                    <md-option value="chat_rooms">Chat Rooms</md-option>\n                    <md-option value="report_chat_session">Chat Session Report</md-option>\n                    <md-option value="cm_contacts">Contacts</md-option>\n                    <md-option value="report_square">CSquare Report</md-option>\n                    <md-option value="report_square_details">CSquare Details Report</md-option>\n                    <md-option value="fax_messages">Fax Messages</md-option>\n                    <md-option value="fax_rooms">Fax Rooms</md-option>\n                    <md-option value="report_fax_session">Fax Session Report</md-option>\n                    <md-option value="report_integration">Integration Report</md-option>\n                    <md-option value="mail_messages">Mail Messages</md-option>\n                    <md-option value="mail_rooms">Mail Rooms</md-option>\n                    <md-option value="report_mail_session">Mail Session Report</md-option>\n                    <md-option value="report_member">Member Report</md-option>\n                    <md-option value="openchannel_messages">Open Channel Messages</md-option>\n                    <md-option value="openchannel_rooms">Open Channel Rooms</md-option>\n                    <md-option value="report_openchannel_session">Open Channel Session Report</md-option>\n                    <md-option value="report_queue">Queue Report</md-option>\n                    <md-option value="sms_messages">Sms Messages</md-option>\n                    <md-option value="sms_rooms">Sms Rooms</md-option>\n                    <md-option value="report_sms_session">Sms Session Report</md-option>\n                    <md-option value="users">Users</md-option>\n                    <md-option value="voice_recordings">Voice Recordings</md-option>\n                    <md-option value="cm_hopper">Dialer Hopper Processing</md-option>\n                    <md-option value="cm_hopper_history">Dialer Hopper Logs</md-option>\n                    <md-option value="cm_hopper_final">Dialer Hopper Final</md-option>\n                </md-select>\n                <div ng-messages="reportForm.table.$error" ng-show="reportForm.table.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.TABLE_REQUIRED">Table field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.report.description">\n                <div ng-messages="reportForm.description.$error" ng-show="reportForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newReport" ng-click="vm.saveReport()" class="send-button md-accent md-raised" ng-disabled="reportForm.$invalid || reportForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newReport" ng-click="vm.addNewReport()" class="send-button md-accent md-raised" ng-disabled="reportForm.$invalid || reportForm.$pristine" aria-label="ADD" translate="ANALYTICS.ADD_REPORT" translate-attr-aria-label="ANALYTICS.ADD_REPORT">\n                    ADD REPORT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newReport" ng-click="vm.deleteReport($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/reports/edit/condition/group.html",'<md-card class="padding-horizontal-15 padding-top-15">\n    <div layout="row">\n        <md-input-container class="md-block" flex>\n            <label translate="ANALYTICS.OPERATOR">Operator</label>\n            <md-select ng-model="group.operator" required>\n                <md-option value="AND">AND</md-option>\n                <md-option value="OR">OR</md-option>\n            </md-select>\n            <div ng-messages="conditionsForm.operator.$error" ng-show="conditionsForm.operator.$touched" role="alert">\n                <div ng-message="required">\n                    <span translate="ANALYTICS.ERRORS.OPERATOR_REQUIRED">Operator field is required</span>\n                </div>\n            </div>\n        </md-input-container>\n        <md-input-container class="md-block">\n            <md-button class="md-raised md-accent" ng-click="vm_rc.addCondition(group.rules)">\n                <md-icon md-font-icon="icon-plus"></md-icon> {{\'ANALYTICS.CONDITION\' | translate}}</md-button>\n        </md-input-container>\n        <md-input-container class="md-block">\n            <md-button class="md-raised md-accent" ng-click="vm_rc.addGroup(group.rules)">\n                <md-icon md-font-icon="icon-plus"></md-icon> {{\'ANALYTICS.GROUP\' | translate}}</md-button>\n        </md-input-container>\n        <div flex></div>\n        <md-input-container class="md-block" ng-if="parent">\n            <md-button class="md-raised md-warn" ng-click="vm_rc.deleteConfirm(parent, index, $event)">\n                <md-icon md-font-icon="icon-delete"></md-icon> {{\'ANALYTICS.GROUP\' | translate}}</md-button>\n        </md-input-container>\n    </div>\n    <div layout="column" ng-repeat="rule in group.rules track by $index">\n        <div layout="row" ng-if="!rule.group">\n            <md-input-container class="md-block" flex>\n                <label translate="ANALYTICS.COLUMN">COLUMN</label>\n                <md-select name="field" ng-model="rule.field" required>\n                    <md-option ng-repeat="column in vm_rc.columns" ng-value="column">{{column}}</md-option>\n                </md-select>\n                <div ng-messages="conditionsForm.field.$error" ng-show="conditionsForm.field.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.COLUMN_REQUIRED">Column field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" flex>\n                <label translate="ANALYTICS.CONDITION">CONDITION</label>\n                <md-select name="condition" ng-model="rule.condition" required>\n                    <md-option ng-repeat="condition in vm_rc.conditions" ng-value="condition">{{condition}}</md-option>\n                </md-select>\n                <div ng-messages="conditionsForm.condition.$error" ng-show="conditionsForm.condition.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.CONDITION_REQUIRED">Condition field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm_rc.isValueByCondition(rule.condition)" class="md-block" flex>\n                <label translate="ANALYTICS.VALUE">VALUE</label>\n                <input type="text" name="value" ng-model="rule.value" required md-autofocus>\n                <div ng-messages="conditionsForm.value.$error" ng-show="conditionsForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" flex>\n                <md-button class="md-fab md-mini md-warn" aria-label="Delete row" ng-click="vm_rc.deleteConfirm(group.rules, $index, $event)">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </md-input-container>\n        </div>\n        <div ng-if="rule.group" ng-include="\'app/main/apps/analytics/views/reports/edit/condition/group.html\'" ng-init="parent=group.rules;index=$index;group=rule.group"></div>\n    </div>\n</md-card>'),e.put("app/main/apps/analytics/views/reports/edit/field/dialog.html",'<md-dialog class="reportField-dialog" aria-label="New Report Field">\n    <form name="reportFieldForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{vm.title}}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.TYPE">Type</label>\n                <md-select name="type" ng-model="vm.reportField.type" ng-change="vm.reportField.field = undefined" required>\n                    <md-option value="column">Select a column</md-option>\n                    <md-option value="metric">Select an existing metric</md-option>\n                    <md-option value="custom">Write a custom metric</md-option>\n                </md-select>\n                <div ng-messages="reportForm.type.$error" ng-show="reportForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div ng-switch on="vm.reportField.type">\n                <md-input-container class="md-block" ng-switch-when="column">\n                    <label translate="ANALYTICS.COLUMN">Column Name</label>\n                    <md-select name="column" ng-model="vm.reportField.field" required>\n                        <md-option ng-repeat="column in vm.columns" ng-value="column">{{column}}</md-option>\n                    </md-select>\n                    <div ng-messages="reportForm.column.$error" ng-show="reportForm.column.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="ANALYTICS.ERRORS.COLUMN_REQUIRED">Column field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n                <md-input-container class="md-block" ng-switch-when="metric">\n                    <label translate="ANALYTICS.METRIC_NAME">Metric Name</label>\n                    <md-select name="metric" ng-model="vm.reportField.MetricId" required>\n                        <md-option ng-repeat="metric in vm.metrics" ng-value="metric.id">{{metric.name}}</md-option>\n                    </md-select>\n                    <div ng-messages="reportForm.metric.$error" ng-show="reportForm.metric.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="ANALYTICS.ERRORS.METRIC_REQUIRED">Metric field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n                <md-input-container class="md-block" ng-switch-when="custom">\n                    <label translate="ANALYTICS.CUSTOM_METRIC">Custom Metric</label>\n                    <input type="text" name="field" ng-model="vm.reportField.field" required md-autofocus>\n                    <div ng-messages="reportFieldForm.field.$error" ng-show="reportFieldForm.field.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="ANALYTICS.ERRORS.CUSTOM_METRIC_REQUIRED">Custom Metric field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.ALIAS">Alias</label>\n                <input type="text" name="alias" ng-model="vm.reportField.alias" ng-required="vm.reportField.type === \'custom\' || vm.reportField.type === \'metric\'">\n                <div ng-messages="reportFieldForm.alias.$error" ng-show="reportFieldForm.alias.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.ALIAS_REQUIRED">Alias field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.reportField.type !== \'metric\'">\n                <label translate="ANALYTICS.FUNCTION">Function</label>\n                <md-select name="function" ng-model="vm.reportField.function">\n                    <md-option ng-value="null">No Function</md-option>\n                    <md-option ng-repeat="function in vm.sqlUtil.getFunctions" ng-value="function.value">{{vm.reportField.field ? function.option(vm.reportField.field) : function.value}}</md-option>\n                </md-select>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.reportField.type !== \'metric\'">\n                <label translate="ANALYTICS.FORMAT">Format</label>\n                <md-select name="format" ng-model="vm.reportField.format">\n                    <md-option ng-value="null">No Format</md-option>\n                    <md-option ng-repeat="format in vm.sqlUtil.getFormats" ng-value="format.value">{{vm.reportField.field ? format.option(vm.reportField.field) : format.value}}</md-option>\n                </md-select>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.GROUP_BY">Group By</label>\n                <md-select name="groupBy" ng-model="vm.reportField.groupBy">\n                    <md-option ng-repeat="gb in vm.sqlUtil.getGroupBy" ng-value="gb.value">{{vm.reportField.field ? gb.option(vm.reportField.field) : gb.value}}</md-option>\n                </md-select>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.ORDER_BY">Order By</label>\n                <md-select name="orderBy" ng-model="vm.reportField.orderBy">\n                    <md-option ng-value="null">No Order</md-option>\n                    <md-option ng-repeat="ob in vm.sqlUtil.getOrderBy" ng-value="ob.value">{{vm.reportField.field ? ob.option(vm.reportField.field) : ob.value}}</md-option>\n                </md-select>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newReportField" ng-click="vm.saveReportField()" class="send-button md-accent md-raised" ng-disabled="reportFieldForm.$invalid || reportFieldForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newReportField" ng-click="vm.addNewReportField()" class="send-button md-accent md-raised" ng-disabled="reportFieldForm.$invalid || reportFieldForm.$pristine" aria-label="ADD" translate="ANALYTICS.ADD_REPORTFIELD" translate-attr-aria-label="ANALYTICS.ADD_REPORTFIELD">\n                    ADD REPORT FIELD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newReportField" ng-click="vm.deleteReportField($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/reports/edit/view.html",'<div id="analytics-report" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-reports-button md-icon-button" aria-label="Go to reports" ng-click="vm.gotoReports()" translate translate-attr-aria-label="ANALYTICS.GO_TO_ANALYTICSQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div class="report-image" hide-xs>\n                    <img ng-src="assets/images/business/reports.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.report.id}} {{vm.report.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="ANALYTICS.CREATED_AT"></span> <span>{{vm.report.createdAt | date:\'medium\'}}</span>\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span>{{vm.report.description}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveReport()" ng-disabled="generalForm.$pristine && conditionsForm.$pristine" class="send-button md-accent md-raised" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="ANALYTICS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="ANALYTICS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="ANALYTICS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.report.name" required md-autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="ANALYTICS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.report.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="ANALYTICS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="ANALYTICS.FIELDS">FIELDS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container fields md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ReportFieldsController as vm_rf" ng-init="vm_rf.init(vm.report)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_rf.selectedReportFields.length">\n                                <div class="md-toolbar-tools">\n                                    <div layout="row" layout-align="start center">\n                                        <div layout="column" layout-align="start start">\n                                            <div class="md-subhead" translate="ANALYTICS.FIELDS">\n                                                <span translate="ANALYTICS.FIELDS">FIELDS</span>\n                                            </div>\n                                            <div class="h4">\n                                                <span translate="ANALYTICS.TABLE">TABLE</span> <span class="text-bold">{{vm.report.table}}</span>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_rf.query.filter = query" on-collapse="vm_rf.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_rf.createOrEditReportField($event)" aria-label="add field" translate translate-attr-label="ANALYTICS.ADD_FIELD">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_rf.selectedReportFields.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_rf.selectedReportFields.length}} {{vm_rf.selectedReportFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_rf.deleteSelectedReportFields($event)" aria-label="delete selected" translate translate-attr-label="ANALYTICS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_rf.selectedReportFields" md-progress="vm_rf.promise">\n                                    <thead md-head md-order="vm_rf.query.sort" md-on-reorder="vm_rf.getReportFields">\n                                        <tr md-row>\n                                            <th md-column width="10px">\n                                                <md-icon md-font-icon="icon-drag-vertical"></md-icon>\n                                            </th>\n                                            <th md-column>Type</th>\n                                            <th md-column>Column or Metric</th>\n                                            <th md-column>Alias</th>\n                                            <th md-column>Function</th>\n                                            <th md-column>Format</th>\n                                            <th md-column>Group By</th>\n                                            <th md-column>Order By</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body ng-sortable="vm_rf.sortableTable">\n                                        <tr md-row md-select="reportField" md-select-id="id" ng-repeat="reportField in vm_rf.reportFields.rows">\n                                            <td md-cell class="handle">\n                                                <md-icon md-font-icon="icon-drag-vertical" class="s16">\n                                            </td>\n                                            <td md-cell>\n                                                <div ng-if="reportField.MetricId && !reportField.custom" ng-click="vm_rf.createOrEditReportField($event, reportField)" class="icon icon-shape-plus s16"></div>\n                                                <div ng-if="!reportField.MetricId && reportField.custom" ng-click="vm_rf.createOrEditReportField($event, reportField)" class="icon icon-pencil-box-outline s16"></div>\n                                                <div ng-if="!reportField.MetricId && !reportField.custom" ng-click="vm_rf.createOrEditReportField($event, reportField)" class="icon icon-view-column s16"></div>\n                                            </td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{reportField.MetricId ? vm_rf.getMetricName(reportField.MetricId) : reportField.field}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{reportField.alias}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{reportField.MetricId ? \'No Available\' : vm_rf.functions[reportField.function].option(reportField.field) || \'No\'}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{reportField.MetricId ? \'No Available\' : vm_rf.formats[reportField.format].option(reportField.field) || \'No\'}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{vm_rf.groupBy[reportField.groupBy].option(reportField.MetricId ? vm_rf.getMetricValue(reportField.MetricId) : reportField.field) || \'No\'}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{vm_rf.orderBy[reportField.orderBy].option(reportField.MetricId ? vm_rf.getMetricValue(reportField.MetricId) : reportField.field) || \'No\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="ANALYTICS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_rf.createOrEditReportField($event, reportField)" translate="ANALYTICS.EDIT_REPORTFIELD">\n                                                                Edit Report\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_rf.deleteConfirm(reportField, $event)" translate="ANALYTICS.DELETE_REPORTFIELD">\n                                                                Delete Report\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="ANALYTICS.CONDITIONS">CONDITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container conditions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ReportConditionsController as vm_rc" ng-init="vm_rc.init(vm.report)">\n                            <div class="pb-16" layout="row" layout-align="start center">\n                                <div class="h2 secondary-text" translate="ANALYTICS.CONDITION">CONDITION</div>\n                            </div>\n                            <form name="conditionsForm" novalidate>\n                                <div ng-if="vm_rc.report.condition.group" ng-include="\'app/main/apps/analytics/views/reports/edit/condition/group.html\'" ng-init="group=vm_rc.report.condition.group"></div>\n                            </form>\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab md-on-select="vm.previewReport()">\n                <md-tab-label>\n                    <span translate="ANALYTICS.PREVIEW">PREVIEW</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container result md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div ng-if="vm.error" class="h2 secondary-text" translate="ANALYTICS.ERROR">ERROR</div>\n                            <div ng-if="!vm.error" class="h2 secondary-text" translate="ANALYTICS.LIMITED_RESULT">LIMITED RESULT</div>\n                        </div>\n                        <dl ng-if="vm.error">\n                            <dt class="text-bold" translate="ANALYTICS.QUERY_ERROR">Query Error</dt>\n                            <dd>{{vm.error.sql}}</dd>\n                            <dt translate="ANALYTICS.MESSAGE">Message</dt>\n                            <dd>{{vm.error.msg}}</dd>\n                        </dl>\n                        <md-table-container ng-if="!vm.error">\n                            <table md-table>\n                                <thead md-head>\n                                    <tr md-row>\n                                        <th ng-repeat="column in vm.columns">{{column.alias || column.field}}</th>\n                                    </tr>\n                                </thead>\n                                <tbody md-body>\n                                    <tr md-row ng-repeat="row in vm.rows">\n                                        <td md-cell ng-repeat="(key, value) in row">{{value}}</td>\n                                    </tr>\n                                    <tr md-row ng-if="!vm.rows.length">\n                                        <td md-cell colspan="{{vm.columns.length}}"><span translate="ANALYTICS.NO_DATA">NO DATA</span></td>\n                                    </tr>\n                                </tbody>\n                            </table>\n                        </md-table-container>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab md-on-select="vm.queryReport()">\n                <md-tab-label>\n                    <span>Query</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container result md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div ng-if="vm.error" class="h2 secondary-text" translate="ANALYTICS.ERROR">ERROR</div>\n                            <div ng-if="!vm.error" class="h2 secondary-text">SQL</div>\n                        </div>\n                        <dl ng-if="vm.error">\n                            <dt class="text-bold" translate="ANALYTICS.QUERY_ERROR">Query Error</dt>\n                            <dd>{{vm.error.sql}}</dd>\n                            <dt translate="ANALYTICS.MESSAGE">Message</dt>\n                            <dd>{{vm.error.msg}}</dd>\n                        </dl>\n                        <div ng-if="!vm.error">\n                            {{vm.queryResult}}\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/analytics/views/reports/preview/dialog.html",'<md-dialog aria-label="Run Report">\n    <form name="reportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="ANALYTICS.PREVIEW_REPORT">Preview Report</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div class="md-block">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div ng-if="vm.error" class="h2 secondary-text" translate="ANALYTICS.ERROR">ERROR</div>\n                    <div ng-if="!vm.error" class="h2 secondary-text" translate="ANALYTICS.LIMITED_RESULT">LIMITED RESULT</div>\n                </div>\n                <dl ng-if="vm.error">\n                    <dt class="text-bold" translate="ANALYTICS.QUERY_ERROR">Query Error</dt>\n                    <dd>{{vm.error.sql}}</dd>\n                    <dt translate="ANALYTICS.MESSAGE">Message</dt>\n                    <dd>{{vm.error.msg}}</dd>\n                </dl>\n                <md-table-container ng-if="!vm.error">\n                    <table md-table>\n                        <thead md-head>\n                            <tr md-row>\n                                <th md-column ng-repeat="column in vm.columns">{{column.alias || column.field}}</th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-repeat="row in vm.rows">\n                                <td md-cell ng-repeat="(key, value) in row">{{value}}</td>\n                            </tr>\n                            <tr md-row ng-if="!vm.rows.length">\n                                <td md-cell colspan="{{vm.columns.length}}"><span translate="ANALYTICS.NO_DATA">NO DATA</span></td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div flex></div>\n            <md-button type="submit" ng-click="vm.closeDialog()" class="md-raised" aria-label="CLOSE" translate="ANALYTICS.CLOSE" translate-attr-aria-label="ANALYTICS.CLOSE">\n                CLOSE\n            </md-button>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/reports/reports.html",'<div id="reports" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-chart-line" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="ANALYTICS.REPORTS">Reports</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedReports.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedReports =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="ANALYTICS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-reports-count">\n                    <span>{{vm.selectedReports.length}}</span>\n                <span translate="ANALYTICS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="ANALYTICS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllReports()" translate="ANALYTICS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectReports()" translate="ANALYTICS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedReports" filename="reports.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedReports($event)" aria-label="delete selected" translate translate-attr-label="ANALYTICS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div layout="column" flex="30">\n            <md-card class="padding-top-5 padding-horizontal-10 padding-bottom-0">\n                \x3c!-- SEARCH --\x3e\n                <div layout="row" layout-align="start center">\n                    <label for="searchFolder" class="m-0">\n                        <md-icon md-font-icon="icon-magnify"></md-icon>\n                    </label>\n                    <md-input-container md-no-float class="margin-horizontal-0 margin-bottom-0 margin-top-10" flex>\n                        <input id="searchFolder" placeholder="Search folder" type="text" ng-model="vm.search" translate translate-attr-placeholder="ANALYTICS.SEARCH_FOR_FOLDER">\n                    </md-input-container>\n                </div>\n                \x3c!-- / SEARCH --\x3e\n            </md-card>\n            <md-card class="padding-10 scrollable" ms-scroll>\n                <div js-tree="vm.treeDefaultConfig" tree-events-obj="vm.treeDefaultEvents" ng-model="vm.treeDefaultData" tree="vm.treeDefaultInstance"></div>\n            </md-card>\n            <md-card class="padding-10 scrollable" ms-scroll>\n                <div js-tree="vm.treeCustomConfig" tree-events-obj="vm.treeCustomEvents" ng-model="vm.treeCustomData" tree="vm.treeCustomInstance"></div>\n            </md-card>\n        </div>\n        <md-card flex="70">\n            <md-toolbar class="md-table-toolbar md-default">\n                <div class="md-toolbar-tools">\n                    <span class="h2 secondary-text">{{vm.currentNode.text}}</span>\n                    <div flex></div>\n                    <ms-search-bar on-search="vm.query.filter = query" on-collapse="vm.query.filter = undefined" debounce="300"></ms-search-bar>\n                    <div flow-init flow-file-added="vm.importReport($file, $event, $flow)">\n                        <md-button ng-if="vm.currentNode.custom" class="md-icon-button" aria-label="import report" translate translate-attr-label="ANALYTICS.IMPORT_REPORT" flow-btn>\n                            <md-icon md-font-icon="icon-upload"></md-icon>\n                        </md-button>\n                    </div>\n                    <md-button ng-if="vm.currentNode.custom" class="md-icon-button" ng-click="vm.createOrEditReport($event)" aria-label="add report" translate translate-attr-label="ANALYTICS.ADD_REPORT">\n                        <md-icon md-font-icon="icon-plus"></md-icon>\n                    </md-button>\n                </div>\n            </md-toolbar>\n            <md-table-container>\n                <table md-table md-row-select multiple ng-model="vm.selectedReports" md-progress="vm.promise">\n                    <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getReports">\n                        <tr md-row>\n                            <th md-column md-order-by="id" width="10px">{{ \'ANALYTICS.ID\' | translate }}</th>\n                            <th md-column md-order-by="name">{{ \'ANALYTICS.NAME\' | translate }}</th>\n                            <th md-column md-order-by="description">{{ \'ANALYTICS.DESCRIPTION\' | translate }}</th>\n                            <th md-column md-order-by="createdAt">{{ \'ANALYTICS.CREATED_AT\' | translate }}</th>\n                            <th md-column width="10px"></th>\n                        </tr>\n                    </thead>\n                    <tbody md-body>\n                        <tr md-row ng-hide="vm.reports.rows.length">\n                            <td md-cell colspan="5">\n                                <div layout="row" layout-align="center center">\n                                    <span tranlsate="ANALYTICS.NO_AVAILABLE_INFO">No Available Info</span>\n                                </div>\n                            </td>\n                        </tr>\n                        <tr md-row md-select="report" md-select-id="id" ng-repeat="report in vm.reports.rows">\n                            <td ng-click="vm.createOrEditReport($event, report)" md-cell class="id">{{report.id}}</td>\n                            <td ng-click="vm.createOrEditReport($event, report)" md-cell class="name">{{report.name}}</td>\n                            <td ng-click="vm.createOrEditReport($event, report)" md-cell class="description">{{report.description}}</td>\n                            <td ng-click="vm.createOrEditReport($event, report)" md-cell class="createdAt">{{report.createdAt | date:\'medium\'}}</td>\n                            <td md-cell class="actions">\n                                <md-menu>\n                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="ANALYTICS.MORE">\n                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                    </md-button>\n\n                                    <md-menu-content width="3">\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.copydialog(report, $event)" translate="ANALYTICS.COPY_REPORT">\n                                                Copy Report\n                                            </md-button>\n                                        </md-menu-item>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.previewdialog(report, $event)" translate="ANALYTICS.PREVIEW_REPORT">\n                                                Preview Report\n                                            </md-button>\n                                        </md-menu-item>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.rundialog(report, $event)" translate="ANALYTICS.RUN_REPORT">\n                                                Run Report\n                                            </md-button>\n                                        </md-menu-item>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.downloadfile(report, $event)" translate="ANALYTICS.DOWNLOAD_JSON_REPORT">\n                                                Download Json Report\n                                            </md-button>\n                                        </md-menu-item>\n                                        <md-menu-divider ng-if="vm.currentNode.custom"></md-menu-divider>\n                                        <md-menu-item ng-if="vm.currentNode.custom">\n                                            <md-button ng-click="vm.editstate(report, $event)" translate="ANALYTICS.EDIT_REPORT">\n                                                Edit Report\n                                            </md-button>\n                                        </md-menu-item>\n\n                                        <md-menu-item ng-if="vm.currentNode.custom">\n                                            <md-button ng-click="vm.deleteconfirm(report, $event)" translate="ANALYTICS.DELETE_REPORT">\n                                                Delete Report\n                                            </md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </td>\n                        </tr>\n                    </tbody>\n                </table>\n            </md-table-container>\n\n            <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.reports.count}}" md-on-paginate="vm.getReports" md-page-select></md-table-pagination>\n        </md-card>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/main/apps/analytics/views/reports/run/dialog.html",'<md-dialog class="report-dialog" aria-label="Run Report">\n    <form name="reportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="ANALYTICS.RUN_REPORT">Run Report</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input name="name" ng-model="vm.export.name" required md-autofocus>\n                <div ng-messages="reportForm.name.$error" ng-show="reportForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.FORMAT">FORMAT</label>\n                <md-select name="format" ng-model="vm.export.output" required>\n                    <md-option value="csv">CSV</md-option>\n                    <md-option value="xls">Excel (XLS)</md-option>\n                    <md-option value="pdf">PDF</md-option>\n                </md-select>\n                <div ng-messages="reportForm.format.$error" ng-show="reportForm.format.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.FORMAT_REQUIRED">Format field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div layout="row">\n                <div class="md-block" flex>\n                    <mdp-date-picker mdp-open-on-click required name="dateRangeFrom" mdp-placeholder="Date Range From" mdp-format="YYYY-MM-DD" mdp-max-date="vm.dateRangeTo" ng-model="vm.export.startDate">\n                        <div ng-messages="reportForm.dateRangeFrom.$error" ng-show="reportForm.dateRangeFrom.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_FROM_REQUIRED">Date Range From field is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_FROM_INVALID">Date Range From field is invalid</span>\n                            </div>\n                            <div ng-message="maxDate">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_FROM_MAX_INVALID">Date Range From Max field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-date-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-date-picker mdp-open-on-click required name="dateRangeTo" mdp-placeholder="Date Range To" mdp-format="YYYY-MM-DD" mdp-min-date="vm.dateRangeFrom" ng-model="vm.export.endDate">\n                        <div ng-messages="reportForm.dateRangeTo.$error" ng-show="reportForm.dateRangeTo.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_TO_REQUIRED">Date Range From field is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_TO_INVALID">Date Range From field is invalid</span>\n                            </div>\n                            <div ng-message="minDate">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_FROM_MIN_INVALID">Date Range From Min field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-date-picker>\n                </div>\n            </div>\n            <div layout="row">\n                <div class="md-block" flex>\n                    <mdp-time-picker required name="timeRangeFrom" mdp-placeholder="Time Range From" mdp-format="HH:mm:ss" mdp-auto-switch="true" mdp-max-date="vm.dateRangeTo" ng-model="vm.export.startDate">\n                        <div ng-messages="reportForm.timeRangeFrom.$error" ng-show="reportForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="ANALYTICS.ERRORS.TIME_RANGE_FROM_REQUIRED">Time Range From field is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="ANALYTICS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker required name="timeRangeTo" mdp-placeholder="Time Range To" mdp-format="HH:mm:ss" mdp-auto-switch="true" mdp-min-date="vm.dateRangeFrom" ng-model="vm.export.endDate">\n                        <div ng-messages="reportForm.timeRangeTo.$error" ng-show="reportForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="ANALYTICS.ERRORS.TIME_RANGE_TO_REQUIRED">Time Range From field is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="ANALYTICS.ERRORS.TIME_RANGE_TO_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.runReport()" class="send-button md-accent md-raised" ng-disabled="reportForm.$invalid" aria-label="RUN" translate="ANALYTICS.RUN_REPORT" translate-attr-aria-label="ANALYTICS.RUN_REPORT">\n                    RUN REPORT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-click="vm.refreshDate()" aria-label="REFRESH" translate translate-attr-aria-label="ANALYTICS.REFRESH">\n                    <md-icon md-font-icon="icon-refresh"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.REFRESH">REFRESH</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/odbcs/create/dialog.html",'<md-dialog class="odbc-dialog" aria-label="New Odbc">\n    <form name="odbcForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.odbc.name" required autofocus>\n                <div ng-messages="odbcForm.name.$error" ng-show="odbcForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.DSN">DSN</label>\n                <input type="text" name="dsn" ng-model="vm.odbc.dsn" required>\n                <div class="hint"><span translate="CALLYSQUARE.HELP.DSN"></span></div>\n                <div ng-messages="odbcForm.dsn.$error" ng-show="odbcForm.dsn.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.DSN_REQUIRED">DSN field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.odbc.description">\n                <div ng-messages="odbcForm.description.$error" ng-show="odbcForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOdbc" ng-click="vm.saveOdbc()" class="send-button md-accent md-raised" ng-disabled="odbcForm.$invalid || odbcForm.$pristine" aria-label="SAVE" translate="CALLYSQUARE.SAVE" translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOdbc" ng-click="vm.addNewOdbc()" class="send-button md-accent md-raised" ng-disabled="odbcForm.$invalid" aria-label="ADD" translate="CALLYSQUARE.ADD_ODBC" translate-attr-aria-label="CALLYSQUARE.ADD_ODBC">\n                    ADD ODBC\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOdbc" ng-click="vm.deleteOdbc($event)" aria-label="DELETE" translate translate-attr-aria-label="CALLYSQUARE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CALLYSQUARE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/odbcs/odbcs.html",'<div id="odbcs" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-sitemap" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CALLYSQUARE.ODBC">ODBC</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CALLYSQUARE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedODBC.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedODBC =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CALLYSQUARE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-odbcs-count">\n                    <span>{{vm.selectedODBC.length}}</span>\n                <span translate="CALLYSQUARE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="ODBC.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllODBC()" translate="CALLYSQUARE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectODBC()" translate="CALLYSQUARE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedODBC" filename="odbcs.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedODBC($event)" aria-label="delete selected" translate translate-attr-label="ODBC.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- ODBC TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedODBC" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getODBC">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CALLYSQUARE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CALLYSQUARE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="dsn">{{ \'CALLYSQUARE.DSN\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CALLYSQUARE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.odbcs.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CALLYSQUARE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="odbc" md-select-id="id" ng-repeat="odbc in vm.odbcs.rows">\n                                <td md-cell ng-if="odbc.userpic"><img class="avatar" alt="{{odbc.name}}" ng-src="api/users/{{odbc.id}}/avatar" /></td>\n                                <td md-cell ng-if="!odbc.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{odbc.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditOdbc($event, odbc)" md-cell class="id ">{{odbc.id}}</td>\n                                <td ng-click="vm.createOrEditOdbc($event, odbc)" md-cell class="name ">{{odbc.name}}</td>\n                                <td ng-click="vm.createOrEditOdbc($event, odbc)" md-cell class="dsn ">{{odbc.dsn}}</td>\n                                <td ng-click="vm.createOrEditOdbc($event, odbc)" md-cell class="description ">{{odbc.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CALLYSQUARE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(odbc, $event)" translate="CALLYSQUARE.EDIT_ODBC">\n                                                    Edit Odbc\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(odbc, $event)" translate="CALLYSQUARE.DELETE_ODBC">\n                                                    Delete Odbc\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.testtestOdbc(odbc, $event)" translate="CALLYSQUARE.TEST_ODBC">\n                                                    Test Odbc\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.odbcs.count}}" md-on-paginate="vm.getODBC" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / ODBC TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD ODBC BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-odbc-button" ng-click="vm.createOrEditOdbc($event)" aria-label="add odbc" translate translate-attr-aria-label="CALLYSQUARE.ADD_ODBC">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD ODBC BUTTON --\x3e\n</div>'),e.put("app/main/apps/callysquare/views/projects/create/dialog.html",'<md-dialog class="project-dialog" aria-label="New Project">\n    <form name="projectForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{vm.title | translate}}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.NAME">Name</label>\n                <input name="name" ng-model="vm.project.name" required md-autofocus ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" ng-disabled="!vm.newProject">\n                <div ng-messages="projectForm.name.$error" ng-show="projectForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="VOICE.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.DESCRIPTION">Description</label>\n                <input name="description" ng-model="vm.project.description">\n                <div ng-messages="projectForm.description.$error" ng-show="projectForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.openFromEditor" class="md-block">\n                \x3c!-- Added to check if I\'m opening the dialog directly from the square editor --\x3e\n                <md-switch ng-model="vm.newWindow" aria-label="{{\'CALLYSQUARE.OPEN_NEW_WINDOW\' | translate }}"><span translate="CALLYSQUARE.OPEN_NEW_WINDOW"></span></md-switch>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newProject" ng-click="vm.saveProject()" class="send-button md-accent md-raised" ng-disabled="projectForm.$invalid || projectForm.$pristine" aria-label="SAVE" translate="CALLYSQUARE.SAVE" translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newProject" ng-click="vm.addNewProject()" class="send-button md-accent md-raised" ng-disabled="projectForm.$invalid || projectForm.$pristine" aria-label="ADD" translate="CALLYSQUARE.ADD_PROJECT" translate-attr-aria-label="CALLYSQUARE.ADD_PROJECT">\n                    ADD PROJECT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newProject" ng-click="vm.deleteProject($event)" aria-label="DELETE" translate translate-attr-aria-label="CALLYSQUARE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CALLYSQUARE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/dialog/dialog.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="dialogForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.EDIT"></span> <span translate="CALLYSQUARE.{{vm.cellName | uppercase}}"></span></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <md-input-container class="md-block" ng-repeat="attribute in vm.attributes" ng-switch="attribute.name">\n                <label translate="CALLYSQUARE.{{attribute.name | uppercase}}">{{attribute.name  | ucfirst }}</label>\n\n                \x3c!--  START SELECT INPUT --\x3e\n                <md-select name="{{attribute.name}}" ng-model="attribute.value" ng-switch-when-separator="|" ng-switch-when="answer|trunk_name|trunk_id|queue_id|file_id|variable_id|google_tts_language|ispeech_tts_language|ispeech_asr_language|hiddendigitspos|odbc_id|project_id|beep|account_id|interval_id|template_id|list_id"\n                    ng-required="attribute.required">\n                    <md-option ng-if="attribute.defaultValue" ng-value="\'\'"> - None - </md-option>\n                    <md-option value="{{v.value}}" ng-repeat="v in vm.values[attribute.name]">{{v.option}}</md-option>\n                    <md-option ng-if="!vm.values[attribute.name].length" value="-1">No {{attribute.name}} available!</md-option>\n                </md-select>\n                \x3c!--  END SELECT INPUT --\x3e\n\n                \x3c!--  START SELECT INPUT --\x3e\n                <md-select name="{{attribute.name}}" ng-model="attribute.value" ng-switch-when-separator="|" ng-switch-when="sip_id" ng-required="attribute.required">\n                    <md-optgroup label="{{\'CALLYSQUARE.AGENTS\' | translate}}">\n                        <md-option value="{{v.value}}" ng-repeat="v in vm.values[attribute.name]" ng-if="v.group === \'agent\'">{{v.option}}</md-option>\n                    </md-optgroup>\n                    <md-optgroup label="{{\'CALLYSQUARE.TELEPHONES\' | translate}}">\n                        <md-option value="{{v.value}}" ng-repeat="v in vm.values[attribute.name]" ng-if="v.group === \'telephone\'">{{v.option}}</md-option>\n                    </md-optgroup>\n                    <md-optgroup label="{{\'CALLYSQUARE.USERS\' | translate}}">\n                        <md-option value="{{v.value}}" ng-repeat="v in vm.values[attribute.name]" ng-if="v.group === \'admin\' || v.group === \'user\'">{{v.option}}</md-option>\n                    </md-optgroup>\n                    <md-option ng-if="!vm.values[attribute.name].length" value="-1">No {{attribute.name}} available!</md-option>\n                </md-select>\n                \x3c!--  END SELECT INPUT --\x3e\n\n                \x3c!--  START NUMBER INPUT --\x3e\n                <div ng-switch-when="timeout">\n                    <div ng-switch="vm.cellName">\n                        <input ng-switch-when-separator="|" ng-switch-when="answer|ext_dial|dial|queue" type="number" step="any" name="{{attribute.name}}" min="0" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                        <input ng-switch-when-separator="|" ng-switch-when="record|ispeechasr" type="number" step="any" name="{{attribute.name}}" min="-1" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                        <input ng-switch-default type="number" step="any" name="{{attribute.name}}" min="0" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                    </div>\n                </div>\n                <input ng-switch-when-separator="|" ng-switch-when="speed" type="number" step="any" name="{{attribute.name}}" min="-10" max="-10" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                <input ng-switch-when-separator="|" ng-switch-when="maxdigit|mindigit|digit" type="number" step="any" name="{{attribute.name}}" min="1" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                <input ng-switch-when-separator="|" ng-switch-when="retry|response|hiddendigitsnum|priority|delay" type="number" step="any" name="{{attribute.name}}" min="1" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                \x3c!--  END NUMBER INPUT --\x3e\n\n                \x3c!--  START TEXTAREA INPUT --\x3e\n                <textarea name="{{attribute.name}}" ng-model="attribute.value" ng-switch-when-separator="|" ng-switch-when="query|sms_text|condition" ng-required="attribute.required"></textarea>\n                \x3c!--  END TEXTAREA INPUT --\x3e\n\n                \x3c!--  START TEXT INPUT --\x3e\n                <input ng-switch-default name="{{attribute.name}}" ng-model="attribute.value" ng-required="attribute.required">\n                \x3c!--  END TEXT INPUT--\x3e\n\n                <div class="hint" ng-switch="attribute.name">\n                    <span ng-switch-when-separator="|" ng-switch-when="mailbox" translate="CALLYSQUARE.HELP.{{attribute.name | uppercase}}"></span>\n                </div>\n                <div ng-messages="dialogForm[attribute.name].$error" ng-show="dialogForm[attribute.name].$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.FIELD_REQUIRED">The field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.closeDialog(true)" class="send-button md-accent md-raised" ng-disabled="dialogForm.$invalid || dialogForm.$pristine" aria-label="SAVE" translate="CALLYSQUARE.SAVE" translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/edit/edit.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="editForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.EDIT_XML"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label>XML</label>\n                <textarea name="preproduction" ng-model="vm.project.preproduction"></textarea>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.closeDialog(true)" class="send-button md-accent md-raised" ng-disabled="editForm.$invalid" aria-label="SAVE" translate="CALLYSQUARE.SAVE" translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/import/import.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="importForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.IMPORT_XML"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div id="xml-uploader" flow-init="vm.ngFlowOptions" flow-name="vm.ngFlow.flow" flow-file-added="vm.fileAdded($file)" flow-drop flow-drag-enter="vm.dropping=true" flow-drag-leave="vm.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                <div class="drop-text hint-text" layout="row" layout-align="center center">\n                    <span translate="CALLYSQUARE.DROP_TO_UPLOAD">Drop to upload</span>\n                </div>\n\n                <div class="upload-button" layout="column" layout-align="center center">\n                    <md-button class="md-accent md-raised" flow-btn>\n                        Upload\n                    </md-button>\n                    <span class="secondary-text mt-8" translate="CALLYSQUARE.DROP_TO_UPLOAD_MESSAGE">You can also drop files here to upload. Only XML - Max. 5MB</span>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.closeDialog()" class="send-button md-accent md-raised" ng-disabled="importForm.$invalid" aria-label="CLOSE" translate="CALLYSQUARE.CLOSE" translate-attr-aria-label="CALLYSQUARE.CLOSE">\n                    CLOSE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/info/info.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="descriptionFrom" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.UPDATE_INFO"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.DESCRIPTION">Description</label>\n                <input name="description" ng-model="vm.project.description" md-autofocus>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.NOTES">Description</label>\n                <textarea name="notes" ng-model="vm.project.notes"></textarea>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.save()" class="send-button md-accent md-raised" ng-disabled="descriptionFrom.$invalid" aria-label="SAVE" translate="CALLYSQUARE.UPDATE_INFO" translate-attr-aria-label="CALLYSQUARE.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/open/open.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="openForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.OPEN_PROJECT"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.PROJECT">Project</label>\n                <md-select name="id" ng-model="vm.id" required>\n                    <md-option value="{{p.id}}" ng-repeat="p in vm.projects">{{p.name}}</md-option>\n                </md-select>\n                <div ng-messages="openForm.id.$error" ng-show="openForm.id.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.PROJECT_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.newWindow" aria-label="{{\'CALLYSQUARE.OPEN_NEW_WINDOW\' | translate }}"><span translate="CALLYSQUARE.OPEN_NEW_WINDOW"></span></md-switch>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.closeDialog(true)" class="send-button md-accent md-raised" ng-disabled="openForm.$invalid" aria-label="SAVE" translate="CALLYSQUARE.OPEN_PROJECT" translate-attr-aria-label="CALLYSQUARE.OPEN">\n                    OPEN\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/saveAs/saveAs.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="newForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.COPY_PROJECT"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.NAME">Name</label>\n                <input name="name" ng-model="vm.project.name" required md-autofocus>\n                <div ng-messages="newForm.name.$error" ng-show="newForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.newWindow" aria-label="{{\'CALLYSQUARE.OPEN_NEW_WINDOW\' | translate }}"><span translate="CALLYSQUARE.OPEN_NEW_WINDOW"></span></md-switch>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.save()" class="send-button md-accent md-raised" ng-disabled="newForm.$invalid" aria-label="SAVE" translate="CALLYSQUARE.COPY_PROJECT" translate-attr-aria-label="CALLYSQUARE.COPY">\n                    COPY\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/view.html",'<div id="callysquare-project" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-projects-button md-icon-button" aria-label="Go to projects" ng-click="vm.gotoProjects()" translate translate-attr-aria-label="CALLYSQUARE.GO_TO_PROJECTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div class="project-image" hide-xs>\n                    <img ng-src="assets/images/business/projects.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.project.id}} {{vm.project.name}}\n                    </div>\n                    <div class="subtitle secondary-text text-truncate">\n                        <span ng-if="vm.project.description">{{vm.project.description}}  - </span><span translate="CALLYSQUARE.CREATED_AT"></span> <span>{{vm.project.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.updateInfo($event)" class="md-fab md-yellow-700-bg md-icon-button" aria-label="edit">\n                <md-icon md-font-icon="icon-tooltip-edit"></md-icon>\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <md-content class="callysquare-content">\n\n        <div id="geEditor" class="geEditor"></div>\n\n    </md-content>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/callysquare/views/projects/projects.html",'<div id="projects" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-vector-square" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CALLYSQUARE.PROJECTS">Projects</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" translate translate-attr-placeholder="CALLYSQUARE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedProjects.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedProjects =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CALLYSQUARE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-projects-count">\n                    <span>{{vm.selectedProjects.length}}</span>\n                <span translate="CALLYSQUARE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CALLYSQUARE.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllProjects()" translate="CALLYSQUARE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectProjects()" translate="CALLYSQUARE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedProjects" filename="projects.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedProjects($event)" aria-label="delete selected" translate translate-attr-label="CALLYSQUARE.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- PROJECT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedProjects" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getProjects">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CALLYSQUARE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CALLYSQUARE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CALLYSQUARE.DESCRIPTION\' | translate }}</th>\n                                <th md-column md-order-by="notes">{{ \'CALLYSQUARE.NOTES\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.projects.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CALLYSQUARE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="project" md-select-id="id" ng-repeat="project in vm.projects.rows">\n                                <td md-cell ng-if="project.userpic"><img class="avatar" alt="{{project.name}}" ng-src="api/users/{{project.id}}/avatar" /></td>\n                                <td md-cell ng-if="!project.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{project.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditProject($event, project)" md-cell class="id ">{{project.id}}</td>\n                                <td ng-click="vm.createOrEditProject($event, project)" md-cell class="name ">{{project.name}}</td>\n                                <td ng-click="vm.createOrEditProject($event, project)" md-cell class="description ">{{project.description}}</td>\n                                <td ng-click="vm.createOrEditProject($event, project)" md-cell class="notes ">{{project.notes}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CALLYSQUARE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(project, ev)" translate="CALLYSQUARE.EDIT_PROJECT">\n                                                    Edit Project\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(project, ev)" translate="CALLYSQUARE.DELETE_PROJECT">\n                                                    Delete Project\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.projects.count}}" md-on-paginate="vm.getProjects" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / PROJECT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD PROJECT BUTTON --\x3e\n    <md-button class="md-fab md-accent md-icon-button" id="add-project-button" ng-click="vm.createOrEditProject($event)" aria-label="add project" translate translate-attr-aria-label="CALLYSQUARE.ADD_PROJECT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD PROJECT BUTTON --\x3e\n\n</div>'),e.put("app/main/apps/callysquare/views/squareRecordings/create/dialog.html",'<md-dialog class="squareRecording-dialog" aria-label="New SquareRecording">\n    <form name="squareRecordingForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSquareRecording" ng-click="vm.saveSquareRecording()" class="send-button md-accent md-raised" ng-disabled="squareRecordingForm.$invalid || squareRecordingForm.$pristine" aria-label="SAVE" translate="CALLYSQUARE.SAVE"\n                    translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSquareRecording" ng-click="vm.addNewSquareRecording()" class="send-button md-accent md-raised" ng-disabled="squareRecordingForm.$invalid" aria-label="ADD" translate="CALLYSQUARE.ADD_SQUARERECORDING" translate-attr-aria-label="CALLYSQUARE.ADD_SQUARERECORDING">\n                    ADD SQUARERECORDING\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSquareRecording" ng-click="vm.deleteSquareRecording($event)" aria-label="DELETE" translate translate-attr-aria-label="CALLYSQUARE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CALLYSQUARE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/squareRecordings/squareRecordings.html",'<div id="squareRecordings" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-sitemap" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CALLYSQUARE.SQUARERECORDINGS">SquareRecordings</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CALLYSQUARE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSquareRecordings.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSquareRecordings =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CALLYSQUARE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-squareRecordings-count">\n                    <span>{{vm.selectedSquareRecordings.length}}</span>\n                <span translate="CALLYSQUARE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SQUARERECORDINGS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSquareRecordings()" translate="CALLYSQUARE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSquareRecordings()" translate="CALLYSQUARE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSquareRecordings" filename="squareRecordings.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSquareRecordings($event)" aria-label="delete selected" translate translate-attr-label="SQUARERECORDINGS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SQUARERECORDING TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSquareRecordings" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSquareRecordings">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="projectName">{{ \'CALLYSQUARE.PROJECT\' | translate }}</th>\n                                <th md-column md-order-by="uniqueid">{{ \'CALLYSQUARE.UNIQUEID\' | translate }}</th>\n                                <th md-column md-order-by="callerid">{{ \'CALLYSQUARE.PHONE\' | translate }}</th>\n                                <th md-column md-order-by="extension">{{ \'CALLYSQUARE.EXTEN\' | translate }}</th>\n                                <th md-column md-order-by="audio">{{ \'CALLYSQUARE.AUDIO\' | translate }}</th>\n                                <th md-column md-order-by="createdAt">{{ \'CALLYSQUARE.CREATED_AT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.squareRecordings.rows.length">\n                                <td md-cell colspan="7">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CALLYSQUARE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="squareRecording" md-select-id="id" ng-repeat="squareRecording in vm.squareRecordings.rows">\n                                <td md-cell ng-if="squareRecording.userpic"><img class="avatar" alt="{{squareRecording.name}}" ng-src="api/users/{{squareRecording.id}}/avatar" /></td>\n                                <td md-cell ng-if="!squareRecording.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{squareRecording.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="projectName ">{{squareRecording.projectName}}</td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="uniqueid ">{{squareRecording.uniqueid}}</td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="callerid ">{{squareRecording.callerid}}</td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="extension ">{{squareRecording.extension}}</td>\n                                <td md-cell class="audio "><audio controls><source ng-src="{{\'api/square/recordings/\' + squareRecording.id + \'/download\'}}" type="audio/wav" preload="none"></source>Your browser does not support the audio element.</audio></td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="createdAt ">{{squareRecording.createdAt}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CALLYSQUARE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.downloadfile(squareRecording, $event)" translate="CALLYSQUARE.DOWNLOAD_SQUARERECORDING">\n                                                    Download SquareRecording\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(squareRecording, $event)" translate="CALLYSQUARE.DELETE_SQUARERECORDING">\n                                                    Delete SquareRecording\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.squareRecordings.count}}" md-on-paginate="vm.getSquareRecordings" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SQUARERECORDING TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/main/apps/chat/views/chatQueues/chatQueues.html",'<div id="chatQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-hangouts" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CHAT.CHATQUEUES">ChatQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CHAT.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedChatQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedChatQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CHAT.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-chatQueues-count">\n                    <span>{{vm.selectedChatQueues.length}}</span>\n                <span translate="CHAT.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CHATQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllChatQueues()" translate="CHAT.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectChatQueues()" translate="CHAT.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedChatQueues" filename="chatQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedChatQueues($event)" aria-label="delete selected" translate translate-attr-label="CHATQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CHATQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedChatQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getChatQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CHAT.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CHAT.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'CHAT.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.chatQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CHAT.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="chatQueue" md-select-id="id" ng-repeat="chatQueue in vm.chatQueues.rows">\n                                <td md-cell ng-if="chatQueue.userpic"><img class="avatar" alt="{{chatQueue.name}}" ng-src="api/users/{{chatQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!chatQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{chatQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditChatQueue($event, chatQueue)" md-cell class="id ">{{chatQueue.id}}</td>\n                                <td ng-click="vm.createOrEditChatQueue($event, chatQueue)" md-cell class="name ">{{chatQueue.name}}</td>\n                                <td ng-click="vm.createOrEditChatQueue($event, chatQueue)" md-cell class="strategy ">{{ vm.arraystrategy[chatQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CHAT.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(chatQueue, $event)" translate="CHAT.EDIT_CHATQUEUE">\n                                                    Edit ChatQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(chatQueue, $event)" translate="CHAT.DELETE_CHATQUEUE">\n                                                    Delete ChatQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.chatQueues.count}}" md-on-paginate="vm.getChatQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CHATQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CHATQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-chatQueue-button" ng-click="vm.createOrEditChatQueue($event)" aria-label="add chatQueue" translate translate-attr-aria-label="CHAT.ADD_CHATQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CHATQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/chat/views/chatQueues/create/dialog.html",'<md-dialog class="chatQueue-dialog" aria-label="New ChatQueue">\n    <form name="chatQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CHAT.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.chatQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="chatQueueForm.name.$error" ng-show="chatQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="CHAT.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.chatQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'roundrobun\'">Round Robin Memory</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="chatQueueForm.strategy.$error" ng-show="chatQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.chatQueue.timeout" required>\n                <div ng-messages="chatQueueForm.timeout.$error" ng-show="chatQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.chatQueue.description">\n                <div ng-messages="chatQueueForm.description.$error" ng-show="chatQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newChatQueue" ng-click="vm.saveChatQueue()" class="send-button md-accent md-raised" ng-disabled="chatQueueForm.$invalid || chatQueueForm.$pristine" aria-label="SAVE" translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newChatQueue" ng-click="vm.addNewChatQueue()" class="send-button md-accent md-raised" ng-disabled="chatQueueForm.$invalid" aria-label="ADD" translate="CHAT.ADD_CHATQUEUE" translate-attr-aria-label="CHAT.ADD_CHATQUEUE">\n                    ADD CHATQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newChatQueue" ng-click="vm.deleteChatQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="CHAT.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CHAT.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/chat/views/chatQueues/edit/teamadd/teamadd.html",'<md-dialog class="chatQueue-dialog" aria-label="chatQueue">\n    <form name="chatQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="CHAT.TEAMADD_CHATQUEUE">Add Team in CHATQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="CHAT.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="chatQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/chat/views/chatQueues/edit/view.html",'<div id="chat-chatQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-chatQueues-button md-icon-button" aria-label="Go to chatQueues" ng-click="vm.gotoChatQueues()" translate translate-attr-aria-label="CHAT.GO_TO_CHATQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.chatQueue.userpic" class="chatQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.chatQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.chatQueue.userpic" class="chatQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/chatQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.chatQueue.id}} {{vm.chatQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CHAT.CREATED_AT"></span> <span>{{vm.chatQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.chatQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="CHAT.TEAMADD_CHATQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveChatQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.chatQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="CHAT.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.chatQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'roundrobun\'">Round Robin Memory</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.chatQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.chatQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/chat/views/chatWebsites/chatWebsites.html",'<div id="chatWebsites" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-hangouts" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CHAT.CHATWEBSITES">ChatWebsites</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CHAT.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedChatWebsites.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedChatWebsites =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CHAT.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-chatWebsites-count">\n                    <span>{{vm.selectedChatWebsites.length}}</span>\n                <span translate="CHAT.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CHATWEBSITES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllChatWebsites()" translate="CHAT.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectChatWebsites()" translate="CHAT.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedChatWebsites" filename="chatWebsites.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedChatWebsites($event)" aria-label="delete selected" translate translate-attr-label="CHATWEBSITES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CHATWEBSITE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedChatWebsites" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getChatWebsites">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CHAT.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CHAT.NAME\' | translate }}</th>\n                                <th md-column md-order-by="address">{{ \'CHAT.ADDRESS\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CHAT.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.chatWebsites.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CHAT.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="chatWebsite" md-select-id="id" ng-repeat="chatWebsite in vm.chatWebsites.rows">\n                                <td md-cell ng-if="chatWebsite.userpic"><img class="avatar" alt="{{chatWebsite.name}}" ng-src="api/users/{{chatWebsite.id}}/avatar" /></td>\n                                <td md-cell ng-if="!chatWebsite.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{chatWebsite.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditChatWebsite($event, chatWebsite)" md-cell class="id ">{{chatWebsite.id}}</td>\n                                <td ng-click="vm.createOrEditChatWebsite($event, chatWebsite)" md-cell class="name ">{{chatWebsite.name}}</td>\n                                <td ng-click="vm.createOrEditChatWebsite($event, chatWebsite)" md-cell class="address ">{{chatWebsite.address}}</td>\n                                <td ng-click="vm.createOrEditChatWebsite($event, chatWebsite)" md-cell class="description ">{{chatWebsite.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CHAT.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(chatWebsite, $event)" translate="CHAT.EDIT_CHATWEBSITE">\n                                                    Edit ChatWebsite\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(chatWebsite, $event)" translate="CHAT.DELETE_CHATWEBSITE">\n                                                    Delete ChatWebsite\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.chatWebsites.count}}" md-on-paginate="vm.getChatWebsites" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CHATWEBSITE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CHATWEBSITE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-chatWebsite-button" ng-click="vm.createOrEditChatWebsite($event)" aria-label="add chatWebsite" translate translate-attr-aria-label="CHAT.ADD_CHATWEBSITE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CHATWEBSITE BUTTON --\x3e\n</div>'),e.put("app/main/apps/chat/views/chatWebsites/create/dialog.html",'<md-dialog class="chatWebsite-dialog" aria-label="New ChatWebsite">\n    <form name="chatWebsiteForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CHAT.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.chatWebsite.name" required autofocus>\n                <div ng-messages="chatWebsiteForm.name.$error" ng-show="chatWebsiteForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.ADDRESS">address</label>\n                <input type="url" name="address" ng-model="vm.chatWebsite.address" required>\n                <div ng-messages="chatWebsiteForm.address.$error" ng-show="chatWebsiteForm.address.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.ADDRESS_REQUIRED">address field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="CHAT.ERRORS.ADDRESS_MUST_VALID_URL">address must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.MOTIONADDRESS">MotionAddress</label>\n                <input type="url" name="remote" ng-model="vm.chatWebsite.remote" required>\n                <div class="hint"><span translate="CHAT.HELP.MOTIONADDRESS"></span></div>\n                <div ng-messages="chatWebsiteForm.remote.$error" ng-show="chatWebsiteForm.remote.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.MOTIONADDRESS_REQUIRED">MotionAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="CHAT.ERRORS.MOTIONADDRESS_MUST_VALID_URL">MotionAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.chatWebsite.description">\n                <div ng-messages="chatWebsiteForm.description.$error" ng-show="chatWebsiteForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newChatWebsite" ng-click="vm.saveChatWebsite()" class="send-button md-accent md-raised" ng-disabled="chatWebsiteForm.$invalid || chatWebsiteForm.$pristine" aria-label="SAVE" translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newChatWebsite" ng-click="vm.addNewChatWebsite()" class="send-button md-accent md-raised" ng-disabled="chatWebsiteForm.$invalid" aria-label="ADD" translate="CHAT.ADD_CHATWEBSITE" translate-attr-aria-label="CHAT.ADD_CHATWEBSITE">\n                    ADD CHATWEBSITE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newChatWebsite" ng-click="vm.deleteChatWebsite($event)" aria-label="DELETE" translate translate-attr-aria-label="CHAT.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CHAT.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/chat/views/chatWebsites/edit/chatDispositions/dialog.html",'<md-dialog class="chatDisposition-dialog" aria-label="New ChatDisposition">\n    <form name="chatDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CHAT.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.chatDisposition.name" required autofocus>\n                <div ng-messages="chatDispositionForm.name.$error" ng-show="chatDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newChatDisposition" ng-click="vm.saveChatDisposition()" class="send-button md-accent md-raised" ng-disabled="chatDispositionForm.$invalid || chatDispositionForm.$pristine" aria-label="SAVE" translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newChatDisposition" ng-click="vm.addNewChatDisposition()" class="send-button md-accent md-raised" ng-disabled="chatDispositionForm.$invalid" aria-label="ADD" translate="CHAT.ADD_CHATDISPOSITION" translate-attr-aria-label="CHAT.ADD_CHATDISPOSITION">\n                    ADD CHATDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newChatDisposition" ng-click="vm.deleteChatDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="CHAT.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CHAT.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/chat/views/chatWebsites/edit/view.html",'<div id="chat-chatWebsite" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-chatWebsites-button md-icon-button" aria-label="Go to chatWebsites" ng-click="vm.gotoChatWebsites()" translate translate-attr-aria-label="CHAT.GO_TO_CHATWEBSITES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.chatWebsite.userpic" class="chatWebsite-image" hide-xs>\n                    <img ng-src="api/users/{{vm.chatWebsite.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.chatWebsite.userpic" class="chatWebsite-image" hide-xs>\n                    <img ng-src="assets/images/business/chatWebsites.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.chatWebsite.id}} {{vm.chatWebsite.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CHAT.CREATED_AT"></span> <span>{{vm.chatWebsite.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveChatWebsite()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (embeddingForm.$invalid) || (appearanceForm.$invalid) || (whitelabelForm.$invalid) || (logoForm.$invalid) || (labelsForm.$invalid) || (onlinestateForm.$invalid) || (offlinestateForm.$invalid) || (ratingstateForm.$invalid) || (enquiryForm.$invalid) || (onlineForm.$invalid) || (offlineForm.$invalid) || (proactiveForm.$invalid) || (chatDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid)"\n                translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.chatWebsite.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ADDRESS">address</label>\n                                <input type="url" name="address" ng-model="vm.chatWebsite.address" required>\n                                <div ng-messages="generalForm.address.$error" ng-show="generalForm.address.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ADDRESS_REQUIRED">address field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.ADDRESS_MUST_VALID_URL">address must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.MOTIONADDRESS">MotionAddress</label>\n                                <input type="url" name="remote" ng-model="vm.chatWebsite.remote" required>\n                                <div class="hint"><span translate="CHAT.HELP.MOTIONADDRESS"></span></div>\n                                <div ng-messages="generalForm.remote.$error" ng-show="generalForm.remote.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.MOTIONADDRESS_REQUIRED">MotionAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.MOTIONADDRESS_MUST_VALID_URL">MotionAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.LIST">List</label>\n                                <md-select ng-model="vm.chatWebsite.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.fidelity" aria-label="Fidelity"><span translate="CHAT.FIDELITY">Fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chatWebsite.fidelity" class="md-block">\n                                <label translate="CHAT.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.chatWebsite.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.chatWebsite.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.EMBEDDING">EMBEDDING</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container embedding md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.EMBEDDING">EMBEDDING</div>\n                        </div>\n                        <form name="embeddingForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.SNIPPET">SNIPPET</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container appearance md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.APPEARANCE">APPEARANCE</div>\n                        </div>\n                        <form name="appearanceForm" novalidate>\n                            <div flex md-color-picker ng-model="vm.chatWebsite.color" label="{{\'CHAT.MAINCOLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                                open-on-input="true"></div>\n                            <div flex md-color-picker ng-model="vm.chatWebsite.color_focus" label="{{\'CHAT.FOCUSCOLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                                open-on-input="true"></div>\n                            <div flex md-color-picker ng-model="vm.chatWebsite.color_button" label="{{\'CHAT.BUTTONCOLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                                open-on-input="true"></div>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.HEADERSHAPE">headershape</label>\n                                <md-select ng-model="vm.chatWebsite.header_shape">\n\n                                    <md-option ng-value="\'rounded\'"> {{ \'CHAT.ROUNDED\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'squared\'"> {{ \'CHAT.SQUARED\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="appearanceForm.header_shape.$error" ng-show="appearanceForm.header_shape.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.HEADERSHAPE_REQUIRED">headershape field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.animation" aria-label="Animation"><span translate="CHAT.ANIMATION">Animation</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.download_transcript" aria-label="downloadTranscript"><span translate="CHAT.DOWNLOADTRANSCRIPT">downloadTranscript</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container whitelabel md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.WHITELABEL">WHITELABEL</div>\n                        </div>\n                        <form name="whitelabelForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.defaultWhiteLabel" aria-label="default"><span translate="CHAT.DEFAULT">default</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chatWebsite.defaultWhiteLabel" class="md-block">\n                                <label translate="CHAT.WHITELABEL">whiteLabel</label>\n                                <textarea ng-model="vm.chatWebsite.whiteLabel" md-maxlength="150" max-rows="5" required></textarea>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container logo md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.LOGO">LOGO</div>\n                        </div>\n                        <form name="logoForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.defaultLogo" aria-label="default"><span translate="CHAT.DEFAULT">default</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container labels md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.LABELS">LABELS</div>\n                        </div>\n                        <form name="labelsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.NAME_TITLE">name_title</label>\n                                <input type="text" name="name_title" ng-model="vm.chatWebsite.name_title" autofocus>\n                                <div ng-messages="labelsForm.name_title.$error" ng-show="labelsForm.name_title.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.NAME_TITLE_REQUIRED">name_title field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.USERNAME_PLACEHOLDER">username_placeholder</label>\n                                <input type="text" name="username_placeholder" ng-model="vm.chatWebsite.username_placeholder">\n                                <div ng-messages="labelsForm.username_placeholder.$error" ng-show="labelsForm.username_placeholder.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.USERNAME_PLACEHOLDER_REQUIRED">username_placeholder field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.EMAIL_TITLE">email_title</label>\n                                <input type="text" name="email_title" ng-model="vm.chatWebsite.email_title">\n                                <div ng-messages="labelsForm.email_title.$error" ng-show="labelsForm.email_title.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.EMAIL_TITLE_REQUIRED">email_title field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.EMAIL_PLACEHOLDER">email_placeholder</label>\n                                <input type="text" name="email_placeholder" ng-model="vm.chatWebsite.email_placeholder">\n                                <div ng-messages="labelsForm.email_placeholder.$error" ng-show="labelsForm.email_placeholder.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.EMAIL_PLACEHOLDER_REQUIRED">email_placeholder field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container onlinestate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ONLINESTATE">ONLINESTATE</div>\n                        </div>\n                        <form name="onlinestateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.HEADER_ONLINE">header_online</label>\n                                <input type="text" name="header_online" ng-model="vm.chatWebsite.header_online" autofocus>\n                                <div ng-messages="onlinestateForm.header_online.$error" ng-show="onlinestateForm.header_online.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.HEADER_ONLINE_REQUIRED">header_online field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ONLINE_MESSAGE">online_message</label>\n                                <input type="text" name="online_message" ng-model="vm.chatWebsite.online_message">\n                                <div ng-messages="onlinestateForm.online_message.$error" ng-show="onlinestateForm.online_message.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ONLINE_MESSAGE_REQUIRED">online_message field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.START_CHAT_BUTTON">start_chat_button</label>\n                                <input type="text" name="start_chat_button" ng-model="vm.chatWebsite.start_chat_button">\n                                <div ng-messages="onlinestateForm.start_chat_button.$error" ng-show="onlinestateForm.start_chat_button.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.START_CHAT_BUTTON_REQUIRED">start_chat_button field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.AGENTS_BUSY">agents_busy</label>\n                                <input type="text" name="agents_busy" ng-model="vm.chatWebsite.agents_busy">\n                                <div ng-messages="onlinestateForm.agents_busy.$error" ng-show="onlinestateForm.agents_busy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.AGENTS_BUSY_REQUIRED">agents_busy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container offlinestate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.OFFLINESTATE">OFFLINESTATE</div>\n                        </div>\n                        <form name="offlinestateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.HEADER_OFFLINE">header_offline</label>\n                                <input type="text" name="header_offline" ng-model="vm.chatWebsite.header_offline" autofocus>\n                                <div ng-messages="offlinestateForm.header_offline.$error" ng-show="offlinestateForm.header_offline.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.HEADER_OFFLINE_REQUIRED">header_offline field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.OFFLINE_MESSAGE">offline_message</label>\n                                <input type="text" name="offline_message" ng-model="vm.chatWebsite.offline_message">\n                                <div ng-messages="offlinestateForm.offline_message.$error" ng-show="offlinestateForm.offline_message.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.OFFLINE_MESSAGE_REQUIRED">offline_message field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.MESSAGE_TITLE">message_title</label>\n                                <input type="text" name="message_title" ng-model="vm.chatWebsite.message_title">\n                                <div ng-messages="offlinestateForm.message_title.$error" ng-show="offlinestateForm.message_title.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.MESSAGE_TITLE_REQUIRED">message_title field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ENQUIRY_MESSAGE_PLACEHOLDER">enquiry_message_placeholder</label>\n                                <input type="text" name="enquiry_message_placeholder" ng-model="vm.chatWebsite.enquiry_message_placeholder">\n                                <div ng-messages="offlinestateForm.enquiry_message_placeholder.$error" ng-show="offlinestateForm.enquiry_message_placeholder.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ENQUIRY_MESSAGE_PLACEHOLDER_REQUIRED">enquiry_message_placeholder field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ENQUIRY_BUTTON">enquiry_button</label>\n                                <input type="text" name="enquiry_button" ng-model="vm.chatWebsite.enquiry_button">\n                                <div ng-messages="offlinestateForm.enquiry_button.$error" ng-show="offlinestateForm.enquiry_button.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ENQUIRY_BUTTON_REQUIRED">enquiry_button field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container ratingstate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.RATINGSTATE">RATINGSTATE</div>\n                        </div>\n                        <form name="ratingstateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.RATING_MESSAGE">rating_message</label>\n                                <input type="text" name="rating_message" ng-model="vm.chatWebsite.rating_message" autofocus>\n                                <div ng-messages="ratingstateForm.rating_message.$error" ng-show="ratingstateForm.rating_message.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.RATING_MESSAGE_REQUIRED">rating_message field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.RATING_SEND">rating_send</label>\n                                <input type="text" name="rating_send" ng-model="vm.chatWebsite.rating_send">\n                                <div ng-messages="ratingstateForm.rating_send.$error" ng-show="ratingstateForm.rating_send.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.RATING_SEND_REQUIRED">rating_send field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.RATING_SKIP">rating_skip</label>\n                                <input type="text" name="rating_skip" ng-model="vm.chatWebsite.rating_skip">\n                                <div ng-messages="ratingstateForm.rating_skip.$error" ng-show="ratingstateForm.rating_skip.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.RATING_SKIP_REQUIRED">rating_skip field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container enquiry md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ENQUIRY">ENQUIRY</div>\n                        </div>\n                        <form name="enquiryForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.enquiry_enable" aria-label="enquiry_enable"><span translate="CHAT.ENQUIRY_ENABLE">enquiry_enable</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.enquiry_forwarding" aria-label="enquiry_forwarding"><span translate="CHAT.ENQUIRY_FORWARDING">enquiry_forwarding</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chatWebsite.enquiry_forwarding" class="md-block">\n                                <label translate="CHAT.ENQUIRY_FORWARDING_ADDRESS">enquiry_forwarding_address</label>\n                                <input type="text" name="enquiry_forwarding_address" ng-model="vm.chatWebsite.enquiry_forwarding_address" required>\n                                <div ng-messages="enquiryForm.enquiry_forwarding_address.$error" ng-show="enquiryForm.enquiry_forwarding_address.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ENQUIRY_FORWARDING_ADDRESS_REQUIRED">enquiry_forwarding_address field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chatWebsite.enquiry_forwarding" class="md-block">\n                                <label translate="CHAT.OFFLINETEMPLATE">OfflineTemplate</label>\n                                <md-select ng-model="vm.chatWebsite.OfflineTemplateId" required>\n                                    <md-option ng-value="OfflineTemplateId.id" ng-repeat="OfflineTemplateId in vm.templates">{{ OfflineTemplateId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="enquiryForm.OfflineTemplateId.$error" ng-show="enquiryForm.OfflineTemplateId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.OFFLINETEMPLATE_REQUIRED">OfflineTemplate field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.FORMS">FORMS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container online md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ONLINE">ONLINE</div>\n                        </div>\n                        <form name="onlineForm" novalidate>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container offline md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.OFFLINE">OFFLINE</div>\n                        </div>\n                        <form name="offlineForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.PROACTIVEACTIONS">PROACTIVEACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container proactive md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.PROACTIVE">PROACTIVE</div>\n                        </div>\n                        <form name="proactiveForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container chatdispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ChatWebsiteChatDispositionsController as vm_dc" ng-init="vm_dc.init(vm.chatWebsite)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedChatWebsiteChatDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CHAT.CHATDISPOSITIONS">ChatDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event)" aria-label="add chatDisposition" translate translate-attr-label="CHAT.ADD_CHATDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedChatWebsiteChatDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedChatWebsiteChatDispositions.length}} {{vm_dc.selectedChatWebsiteChatDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedChatWebsiteChatDispositions($event)" aria-label="delete selected" translate translate-attr-label="CHATWEBSITES.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedChatWebsiteChatDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getChatWebsiteChatDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'CHAT.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'CHAT.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'CHAT.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="chatDisposition" md-select-id="id" ng-repeat="chatDisposition in vm_dc.chatWebsiteChatDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event, chatDisposition)" md-cell>{{chatDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event, chatDisposition)" md-cell>{{chatDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event, chatDisposition)" md-cell>{{chatDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CHAT.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event, chatDisposition)" translate="CHAT.EDIT_CHATDISPOSITION">\n                                                                Edit ChatDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(chatDisposition, $event)" translate="CHAT.DELETE_CHATDISPOSITION">\n                                                                Delete ChatDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.chatWebsiteChatDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="CHAT.NO_CHATDISPOSITION_AVAILABLE">No chatdisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.chatWebsiteChatDispositions.count}}" md-on-paginate="vm_dc.getChatWebsiteChatDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.chatWebsite.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.chatWebsite.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.chatWebsite.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.chatWebsite.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.chatWebsite.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.chatWebsite.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/contactmanager/views/companies/companies.html",'<div id="companies" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-circle" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CONTACTMANAGER.COMPANIES">Companies</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CONTACTMANAGER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedCompanies.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedCompanies =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CONTACTMANAGER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-companies-count">\n                    <span>{{vm.selectedCompanies.length}}</span>\n                <span translate="CONTACTMANAGER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="COMPANIES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllCompanies()" translate="CONTACTMANAGER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectCompanies()" translate="CONTACTMANAGER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedCompanies" filename="companies.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedCompanies($event)" aria-label="delete selected" translate translate-attr-label="COMPANIES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- COMPANY TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedCompanies" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getCompanies">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CONTACTMANAGER.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CONTACTMANAGER.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.companies.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="company" md-select-id="id" ng-repeat="company in vm.companies.rows">\n                                <td md-cell ng-if="company.userpic"><img class="avatar" alt="{{company.name}}" ng-src="api/users/{{company.id}}/avatar" /></td>\n                                <td md-cell ng-if="!company.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{company.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditCompany($event, company)" md-cell class="id ">{{company.id}}</td>\n                                <td ng-click="vm.createOrEditCompany($event, company)" md-cell class="name ">{{company.name}}</td>\n                                <td ng-click="vm.createOrEditCompany($event, company)" md-cell class="description ">{{company.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(company, $event)" translate="CONTACTMANAGER.EDIT_COMPANY">\n                                                    Edit Company\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.gotocontactsgoto(company, $event)" translate="CONTACTMANAGER.GOTOCONTACTS_COMPANY">\n                                                    goToContacts Company\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(company, $event)" translate="CONTACTMANAGER.DELETE_COMPANY">\n                                                    Delete Company\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.companies.count}}" md-on-paginate="vm.getCompanies" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / COMPANY TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD COMPANY BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-company-button" ng-click="vm.createOrEditCompany($event)" aria-label="add company" translate translate-attr-aria-label="CONTACTMANAGER.ADD_COMPANY">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD COMPANY BUTTON --\x3e\n</div>'),e.put("app/main/apps/contactmanager/views/companies/create/dialog.html",'<md-dialog class="company-dialog" aria-label="New Company">\n    <form name="companyForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.company.name" required autofocus>\n                <div ng-messages="companyForm.name.$error" ng-show="companyForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.PHONE">Phone</label>\n                <input type="text" name="phone" ng-model="vm.company.phone">\n                <div ng-messages="companyForm.phone.$error" ng-show="companyForm.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.VAT">Vat</label>\n                <input type="text" name="vat" ng-model="vm.company.vat">\n                <div ng-messages="companyForm.vat.$error" ng-show="companyForm.vat.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.VAT_REQUIRED">Vat field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.FAX">Fax</label>\n                <input type="text" name="fax" ng-model="vm.company.fax">\n                <div ng-messages="companyForm.fax.$error" ng-show="companyForm.fax.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.FAX_REQUIRED">Fax field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.COMPANYID">CompanyId</label>\n                <input type="text" name="companyId" ng-model="vm.company.companyId">\n                <div ng-messages="companyForm.companyId.$error" ng-show="companyForm.companyId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.COMPANYID_REQUIRED">CompanyId field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.TYPE">Type</label>\n                <input type="text" name="type" ng-model="vm.company.type">\n                <div ng-messages="companyForm.type.$error" ng-show="companyForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.WEBSITE">Website</label>\n                <input type="text" name="website" ng-model="vm.company.website">\n                <div ng-messages="companyForm.website.$error" ng-show="companyForm.website.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.WEBSITE_REQUIRED">Website field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.EMAIL_DOMAIN">Email_Domain</label>\n                <input type="text" name="emailDomain" ng-model="vm.company.emailDomain">\n                <div ng-messages="companyForm.emailDomain.$error" ng-show="companyForm.emailDomain.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_DOMAIN_REQUIRED">Email_Domain field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.company.email">\n                <div ng-messages="companyForm.email.$error" ng-show="companyForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.company.description">\n                <div ng-messages="companyForm.description.$error" ng-show="companyForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCompany" ng-click="vm.saveCompany()" class="send-button md-accent md-raised" ng-disabled="companyForm.$invalid || companyForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCompany" ng-click="vm.addNewCompany()" class="send-button md-accent md-raised" ng-disabled="companyForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_COMPANY" translate-attr-aria-label="CONTACTMANAGER.ADD_COMPANY">\n                    ADD COMPANY\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCompany" ng-click="vm.deleteCompany($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/companies/edit/view.html",'<div id="contactmanager-company" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-companies-button md-icon-button" aria-label="Go to companies" ng-click="vm.gotoCompanies()" translate translate-attr-aria-label="CONTACTMANAGER.GO_TO_COMPANIES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.company.userpic" class="company-image" hide-xs>\n                    <img ng-src="api/users/{{vm.company.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.company.userpic" class="company-image" hide-xs>\n                    <img ng-src="assets/images/business/companies.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.company.id}} {{vm.company.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CONTACTMANAGER.CREATED_AT"></span> <span>{{vm.company.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.gotogoto(vm.company, $event)" class="md-fab md-warn md-icon-button" aria-label="goto">\n                <md-tooltip><span translate="CONTACTMANAGER.GOTO_COMPANY"></span></md-tooltip>\n                <md-icon md-font-icon="icon-forward"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveCompany()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (addressForm.$invalid) || (shipmentAddressForm.$invalid)" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.GENERAL">GENERAL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="company-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CONTACTMANAGER.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.company.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.PHONE">Phone</label>\n                                <input type="text" name="phone" ng-model="vm.company.phone">\n                                <div ng-messages="generalForm.phone.$error" ng-show="generalForm.phone.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.VAT">Vat</label>\n                                <input type="text" name="vat" ng-model="vm.company.vat">\n                                <div ng-messages="generalForm.vat.$error" ng-show="generalForm.vat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.VAT_REQUIRED">Vat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.FAX">Fax</label>\n                                <input type="text" name="fax" ng-model="vm.company.fax">\n                                <div ng-messages="generalForm.fax.$error" ng-show="generalForm.fax.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.FAX_REQUIRED">Fax field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.COMPANYID">CompanyId</label>\n                                <input type="text" name="companyId" ng-model="vm.company.companyId">\n                                <div ng-messages="generalForm.companyId.$error" ng-show="generalForm.companyId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.COMPANYID_REQUIRED">CompanyId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.TYPE">Type</label>\n                                <input type="text" name="type" ng-model="vm.company.type">\n                                <div ng-messages="generalForm.type.$error" ng-show="generalForm.type.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.WEBSITE">Website</label>\n                                <input type="text" name="website" ng-model="vm.company.website">\n                                <div ng-messages="generalForm.website.$error" ng-show="generalForm.website.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.WEBSITE_REQUIRED">Website field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.EMAIL_DOMAIN">Email_Domain</label>\n                                <input type="text" name="emailDomain" ng-model="vm.company.emailDomain">\n                                <div ng-messages="generalForm.emailDomain.$error" ng-show="generalForm.emailDomain.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_DOMAIN_REQUIRED">Email_Domain field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.company.email">\n                                <div ng-messages="generalForm.email.$error" ng-show="generalForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.company.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.ADDRESS">ADDRESS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="company-detail-form-container address md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CONTACTMANAGER.ADDRESS">ADDRESS</div>\n                        </div>\n                        <form name="addressForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.STREET">Street</label>\n                                <input type="text" name="street" ng-model="vm.company.street" autofocus>\n                                <div ng-messages="addressForm.street.$error" ng-show="addressForm.street.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.STREET_REQUIRED">Street field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.POSTAL_CODE">Postal_Code</label>\n                                <input type="text" name="postalCode" ng-model="vm.company.postalCode">\n                                <div ng-messages="addressForm.postalCode.$error" ng-show="addressForm.postalCode.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.POSTAL_CODE_REQUIRED">Postal_Code field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.CITY">City</label>\n                                <input type="text" name="city" ng-model="vm.company.city">\n                                <div ng-messages="addressForm.city.$error" ng-show="addressForm.city.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.CITY_REQUIRED">City field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.COUNTRY">Country</label>\n                                <input type="text" name="country" ng-model="vm.company.country">\n                                <div ng-messages="addressForm.country.$error" ng-show="addressForm.country.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.COUNTRY_REQUIRED">Country field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.SHIPMENTADDRESS">SHIPMENTADDRESS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="company-detail-form-container shipmentaddress md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CONTACTMANAGER.SHIPMENTADDRESS">SHIPMENTADDRESS</div>\n                        </div>\n                        <form name="shipmentAddressForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.STREET">Street</label>\n                                <input type="text" name="sStreet" ng-model="vm.company.sStreet" autofocus>\n                                <div ng-messages="shipmentAddressForm.sStreet.$error" ng-show="shipmentAddressForm.sStreet.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.STREET_REQUIRED">Street field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.POSTAL_CODE">Postal_Code</label>\n                                <input type="text" name="sPostalCode" ng-model="vm.company.sPostalCode">\n                                <div ng-messages="shipmentAddressForm.sPostalCode.$error" ng-show="shipmentAddressForm.sPostalCode.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.POSTAL_CODE_REQUIRED">Postal_Code field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.CITY">City</label>\n                                <input type="text" name="sCity" ng-model="vm.company.sCity">\n                                <div ng-messages="shipmentAddressForm.sCity.$error" ng-show="shipmentAddressForm.sCity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.CITY_REQUIRED">City field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.COUNTRY">Country</label>\n                                <input type="text" name="sCountry" ng-model="vm.company.sCountry">\n                                <div ng-messages="shipmentAddressForm.sCountry.$error" ng-show="shipmentAddressForm.sCountry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.COUNTRY_REQUIRED">Country field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/contactmanager/views/contacts/contacts.html",'<div id="cm-contacts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <md-button class="md-icon-button sidenav-toggle" hide-gt-md ng-click="vm.toggleSidenav(\'sidenav\')" aria-label="Toggle sidenav" translate translate-attr-aria-label="CONTACTMANAGER.TOGGLE_SIDENAV">\n                <md-icon md-font-icon="icon-menu" class="icon"></md-icon>\n            </md-button>\n\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n          <md-icon md-font-icon="icon-account-circle" class="s24"></md-icon>\n        </span>\n                <span class="logo-text" translate="CONTACTMANAGER.CONTACTS">Contacts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n        <md-icon md-font-icon="icon-magnify"></md-icon>\n      </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CONTACTMANAGER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedContacts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n        <div class="close-button-wrapper" ng-click="vm.selectedContacts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CONTACTMANAGER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n            <div>\n                <span class="selected-contacts-count">\n          <span>{{vm.selectedContacts.length}}</span>\n                <span translate="CONTACTMANAGER.SELECTED">Selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CONTACTMANAGER.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllContacts()" translate="CONTACTMANAGER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectContacts()" translate="CONTACTMANAGER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedContacts" filename="contacts.csv">\n          <md-icon md-font-icon="icon-download"></md-icon>\n        </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedContacts($event)" aria-label="delete selected" translate translate-attr-label="CONTACTMANAGER.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div md-background-bg layout="row" layout-align="start start">\n        <md-progress-linear ng-disabled="vm.disableDialog" md-mode="indeterminate" class="md-warn"></md-progress-linear>\n    </div>\n\n    <div layout="row">\n        <md-card ng-if="vm.hasPermission()" flex="25">\n            \x3c!-- SIDENAV --\x3e\n            <div ms-scroll class="content scrollable">\n                <md-list>\n                    <md-list-item ng-click="vm.selectedTags = []">\n                        <md-icon md-font-icon="icon-account-multiple"></md-icon>\n                        <p translate="CONTACTMANAGER.ALL_CONTACTS">\n                            All contacts\n                        </p>\n                    </md-list-item>\n\n                    <md-divider></md-divider>\n\n                    <md-list-item>\n                        <md-select placeholder="Select lists" flex="100" ng-model="vm.selectedList">\n                            <md-optgroup label="Lists">\n                                <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                            </md-optgroup>\n                        </md-select>\n                    </md-list-item>\n\n                    <md-list-item ng-click="vm.createList()">\n                        <p class="pl-8 md-accent-fg text-truncate" translate="CONTACTMANAGER.NEW_LIST">New List</p>\n                    </md-list-item>\n\n                    <md-divider></md-divider>\n\n                    <md-list-item>\n                        <md-select placeholder="Select companies" flex="100" ng-model="vm.selectedCompany">\n                            <md-optgroup label="Companies">\n                                <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                <md-option ng-value="company.id" ng-repeat="company in vm.companies.rows">{{company.name}}</md-option>\n                            </md-optgroup>\n                        </md-select>\n                    </md-list-item>\n\n                    <md-list-item ng-click="vm.createCompany()">\n                        <p class="pl-8 md-accent-fg text-truncate" translate="CONTACTMANAGER.NEW_COMPANY">New Company</p>\n                    </md-list-item>\n\n                    <md-divider></md-divider>\n\n                    <md-list-item>\n                        <md-select placeholder="Select tags" flex="100" ng-model="vm.selectedTags" multiple>\n                            <md-optgroup label="Tags">\n                                <md-option ng-value="tag.name" ng-repeat="tag in vm.tags.rows">{{tag.name}}</md-option>\n                            </md-optgroup>\n                        </md-select>\n                    </md-list-item>\n\n                    <md-list-item ng-click="vm.createTag()">\n                        <p class="pl-8 md-accent-fg text-truncate" translate="CONTACTMANAGER.NEW_TAG">New Tag</p>\n                    </md-list-item>\n\n                </md-list>\n            </div>\n            \x3c!-- / SIDENAV --\x3e\n        </md-card>\n\n        <md-card flex>\n            \x3c!-- MAIN --\x3e\n            <div class="main scrollable" ms-scroll>\n                \x3c!-- CONTACT LIST --\x3e\n                \x3c!-- <div class="contacts-list"> --\x3e\n                \x3c!-- CONTACTS TABLE --\x3e\n                <md-table-container class="md-white-bg">\n                    <table md-table md-row-select multiple ng-model="vm.selectedContacts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getContacts">\n                            <tr md-row>\n                                <th md-column md-order-by="id">ID</th>\n                                <th md-column md-order-by="firstName">{{\'CONTACTMANAGER.FULLNAME\' | translate}}</th>\n                                <th md-column md-order-by="phone">{{\'CONTACTMANAGER.PHONE\' | translate}}</th>\n                                <th md-column md-order-by="email">{{\'CONTACTMANAGER.EMAIL\' | translate}}</th>\n                                <th md-column md-order-by="list">{{\'CONTACTMANAGER.LIST\' | translate}}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.contacts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="contact" md-select-id="id" ng-repeat="contact in vm.contacts.rows">\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="id">{{contact.id}}</td>\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="firstName">{{contact.firstName}} {{contact.lastName}}</td>\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="phone">{{contact.phone}}</td>\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="email">{{contact.email}}</td>\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="list">{{vm.listsMap[contact.ListId]}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(contact, ev)" translate="CONTACTMANAGER.EDIT_CONTACT">\n                                                    Edit Contact\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.mergeContact(ev, contact)" translate="CONTACTMANAGER.MERGE_CONTACT">\n                                                    Merge Contact\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.duplicateContact(ev, contact)" translate="CONTACTMANAGER.DUPLICATE_CONTACT">\n                                                    Duplicate Contact\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-divider></md-menu-divider>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(contact, ev)" translate="CONTACTMANAGER.DELETE_CONTACT">\n                                                    Delete Contact\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination class="md-white-bg" md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.contacts.count}}" md-on-paginate="vm.getContacts" md-page-select></md-table-pagination>\n                \x3c!-- / CONTACTS TABLE --\x3e\n                \x3c!-- </div> --\x3e\n                \x3c!-- / CONTACT LIST --\x3e\n            </div>\n            \x3c!-- / MAIN --\x3e\n        </md-card>\n\n\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CONTACT BUTTON --\x3e\n    <div ng-cloak>\n        <md-fab-speed-dial id="add-contact-button" ng-hide="vm.options.hidden" md-direction="up" md-open="vm.options.isOpen" class="md-scale md-fab" ng-class="{ \'md-hover-full\': vm.options.hover }" ng-mouseenter="vm.options.isOpen=true" ng-mouseleave="vm.options.isOpen=false">\n            <md-fab-trigger>\n                <md-button aria-label="menu" class="md-fab md-accent">\n                    <md-icon md-font-icon="icon-plus"></md-icon>\n                </md-button>\n            </md-fab-trigger>\n            <md-fab-actions>\n                <md-button flow-init flow-btn flow-file-added="vm.uploadContacts($event, $file, $flow)" class="md-fab md-mini md-warn" aria-label="add contact" translate translate-attr-aria-label="CONTACTMANAGER.UPLOAD_CSV">\n                    <md-tooltip md-direction="left" md-visible="tooltipVisible" md-autohide="false">\n                        {{\'CONTACTMANAGER.UPLOAD_CSV\' | translate}}\n                    </md-tooltip>\n                    <md-icon md-font-icon="icon-upload"></md-icon>\n                </md-button>\n                <md-button class="md-fab md-mini md-accent" ng-click="vm.createOrEditContact($event)" aria-label="add contact" translate translate-attr-aria-label="CONTACTMANAGER.ADD_CONTACT">\n                    <md-tooltip md-direction="left" md-visible="tooltipVisible" md-autohide="false">\n                        {{\'CONTACTMANAGER.ADD_CONTACT\' | translate}}\n                    </md-tooltip>\n                    <md-icon md-font-icon="icon-account-plus"></md-icon>\n                </md-button>\n            </md-fab-actions>\n        </md-fab-speed-dial>\n    </div>\n</div>'),e.put("app/main/apps/contactmanager/views/contacts/create/dialog.html",'<md-dialog class="cm-contact-dialog" aria-label="New Contact">\n    <form name="contactForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.FIRSTNAME">First name</label>\n                <input name="firstName" ng-model="vm.contact.firstName" required md-autofocus>\n\n                <div ng-messages="contactForm.firstName.$error" ng-show="contactForm.firstName.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.FIRSTNAME_REQUIRED">First name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.LASTNAME">Last name</label>\n                <input name="lastName" ng-model="vm.contact.lastName">\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.PHONE">Phone</label>\n                <input name="phone" ng-model="vm.contact.phone" required>\n\n                <div ng-messages="contactForm.phone.$error" ng-show="contactForm.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.EMAIL">Email</label>\n                <input name="email" type="email" ng-model="vm.contact.email">\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.MOBILE">Mobile</label>\n                <input name="mobile" ng-model="vm.contact.mobile">\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.FAX">Fax</label>\n                <input name="fax" ng-model="vm.contact.fax">\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.LIST">List</label>\n                <md-select name="list" ng-model="vm.contact.ListId" ng-disabled="vm.contact.id && vm.contact.ListId" ng-init="vm.getCustomFields(vm.contact.ListId)" ng-change="vm.getCustomFields(vm.contact.ListId)" required>\n                    <md-optgroup label="Lists">\n                        <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                        <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                    </md-optgroup>\n                </md-select>\n\n                <div ng-messages="contactForm.list.$error" ng-show="contactForm.list.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.LIST_REQUIRED">List field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div ng-repeat="customField in vm.customFields.rows" class="md-block" ng-switch="customField.type">\n                <div ng-switch-when="datetime">\n                    <label>{{customField.alias}}</label>\n\n                    <div ng-init="vm.contact[\'cf_\' + customField.id] = vm.getDateFromString(vm.contact[\'cf_\' + customField.id])">\n                        <mdp-date-picker mdp-open-on-click mdp-placeholder="Date" ng-required="customField.required" mdp-format="YYYY-MM-DD" ng-model="vm.contact[\'cf_\' + customField.id]"></mdp-date-picker>\n                        <mdp-timne-picker mdp-open-on-click mdp-placeholder="Time" ng-required="customField.required" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.contact[\'cf_\' + customField.id]"></mdp-time-picker>\n                    </div>\n                </div>\n\n                <div ng-switch-when="select">\n                    <label>{{customField.alias}}</label>\n\n                    <md-select ng-model="vm.contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                        <md-option ng-repeat="value in customField.values" ng-value="value">{{value}}</md-option>\n                        <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                    </md-select>\n                </div>\n\n                <div ng-switch-when="switch">\n                    <md-switch aria-label="{{customField.alias}}" ng-model="vm.contact[\'cf_\' + customField.id]" ng-true-value="1" ng-false-value="0">\n                        {{customField.alias}}\n                    </md-switch>\n                </div>\n\n                <md-input-container ng-switch-default>\n                    <label>{{customField.alias}}</label>\n\n                    <input type="{{customField.type}}" ng-model="vm.contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                </md-input-container>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.COMPANY">Company</label>\n                <md-select name="company" ng-model="vm.contact.CompanyId">\n                    <md-optgroup label="Companies">\n                        <md-option ng-value="company.id" ng-repeat="company in vm.companies.rows">{{company.name}}</md-option>\n                    </md-optgroup>\n                </md-select>\n            </md-input-container>\n\n            <div ng-if="!vm.allFields" layout="row" layout-align="center center">\n                <md-button class="md-accent" ng-click="vm.allFields = true" translate="CONTACTMANAGER.SHOW_ALL_FIELDS">Show All Fields</md-button>\n            </div>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.DATE_OF_BIRTH">Date of Birth</label>\n                <md-icon md-font-icon="icon-calendar-blank"></md-icon>\n                <input type="date" name="dateOfBirth" ng-model="vm.contact.dateOfBirth" class="text-truncate">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.COUNTRY">Country</label>\n                <input type="text" name="country" ng-model="vm.contact.country">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.CITY">City</label>\n                <input type="text" name="city" ng-model="vm.contact.city">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.STREET">Street</label>\n                <input type="text" name="street" ng-model="vm.contact.street">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.POSTAL_CODE">Postal Code</label>\n                <input type="text" name="postalCode" ng-model="vm.contact.postalCode">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.NOTES">Notes</label>\n                <input type="text" name="description" ng-model="vm.contact.description">\n            </md-input-container>\n\n            <div ng-if="vm.allFields" layout="row" layout-align="center center">\n                <md-button class="md-accent" ng-click="vm.allFields = false" translate="CONTACTMANAGER.FEWER_FIELDS">Fewer Fields</md-button>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newContact" ng-click="vm.saveContact()" class="send-button md-accent md-raised" ng-disabled="contactForm.$invalid || contactForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newContact" ng-click="vm.addNewContact()" class="send-button md-accent md-raised" ng-disabled="contactForm.$invalid || contactForm.$pristine" aria-label="ADD" translate="CONTACTMANAGER.ADD_CONTACT" translate-attr-aria-label="CONTACTMANAGER.ADD_CONTACT">\n                    ADD CONTACT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newContact" ng-click="vm.deleteContact($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",'<md-dialog class="cm-contact-dialog" aria-label="{{ \'CONTACTMANAGER.DUPLICATE_CONTACT\' | translate }}">\n    <form name="contactForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.LIST">List</label>\n                <md-select name="list" ng-model="vm.contact.ListId">\n                    <md-optgroup label="Lists">\n                        <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                    </md-optgroup>\n                </md-select>\n\n                <div ng-messages="contactForm.list.$error" ng-show="contactForm.list.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.LIST_REQUIRED">List field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.addNewContact()" class="send-button md-accent md-raised" ng-disabled="contactForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_CONTACT" translate-attr-aria-label="CONTACTMANAGER.ADD_CONTACT">\n                    ADD CONTACT\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/contacts/edit/hoppers/dialog.html",'<md-dialog class="hopper-dialog" aria-label="New Hopper">\n    <form name="hopperForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div flex class="md-block">\n                <mdp-date-picker mdp-open-on-click name="scheduledatDate" mdp-placeholder="Date" mdp-format="YYYY-MM-DD" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.dateRangeFrom.$error" ng-show="hopperForm.dateRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="CONTACTMANAGER.ERRORS.DATE_REQUIRED">Date is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="CONTACTMANAGER.ERRORS.DATE_INVALID">Date is invalid</span>\n                        </div>\n                    </div>\n                </mdp-date-picker>\n            </div>\n\n            <div flex class="md-block">\n                <mdp-time-picker mdp-open-on-click name="scheduledatTime" mdp-placeholder="Time" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.timeRangeFrom.$error" ng-show="hopperForm.timeRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="CONTACTMANAGER.ERRORS.TIME_REQUIRED">Time is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="CONTACTMANAGER.ERRORS.TIME_INVALID">Time is invalid</span>\n                        </div>\n                    </div>\n                </mdp-time-picker>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newHopper" ng-click="vm.saveHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid || hopperForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newHopper" ng-click="vm.addNewHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_HOPPER" translate-attr-aria-label="CONTACTMANAGER.ADD_HOPPER">\n                    ADD HOPPER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newHopper" ng-click="vm.deleteHopper($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/contacts/edit/view.html",'<div id="cm-contact" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-contacts-button md-icon-button" aria-label="Go to contacts" ng-click="vm.gotoContacts()" translate translate-attr-aria-label="CONTACTMANAGER.GO_TO_CONTACTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div class="contact-image" hide-xs>\n                    <img ng-src="assets/images/business/contacts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.contact.id}} {{vm.contact.firstName}} {{vm.contact.lastName}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CONTACTMANAGER.CREATED_AT"></span> <span>{{vm.contact.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div ng-if="vm.contact.role && vm.contact.role !== \'admin\'" ng-controller="ContactQueueAddButtonController as vm_contact_qa" ng-cloak>\n            <md-fab-speed-dial ng-hide="vm_contact_qa.hidden" md-direction="left" md-open="vm_contact_qa.isOpen" class="md-scale md-fab" ng-class="{ \'md-hover-full\': vm_contact_qa.hover }" ng-mouseenter="vm_contact_qa.isOpen=true" ng-mouseleave="vm_contact_qa.isOpen=false">\n                <md-fab-trigger>\n                    <md-button aria-label="menu" class="md-fab md-primary md-icon-button">\n                        <md-tooltip md-direction="top" md-visible="tooltipVisible">Channels</md-tooltip>\n                        <md-icon md-font-icon="icon-eye" aria-label="channels"></md-icon>\n                    </md-button>\n                </md-fab-trigger>\n                <md-fab-actions>\n                    <div ng-repeat="channel in vm_contact_qa.channels">\n                        <md-button aria-label="{{channel.name}}" class="md-fab md-raised md-icon-button md-mini" ng-click="vm_contact_qa.openDialog($event, vm.contact, channel)">\n                            <md-tooltip md-direction="{{channel.direction}}" md-visible="tooltipVisible" md-autohide="false">\n                                {{channel.name}}\n                            </md-tooltip>\n                            <md-icon md-font-icon="{{channel.icon}}" aria-label="{{channel.name}}"></md-icon>\n                        </md-button>\n                    </div>\n                </md-fab-actions>\n            </md-fab-speed-dial>\n        </div>\n\n        <div>\n            <md-button ng-click="vm.duplicateContact($event)" class="md-fab md-warn md-icon-button" aria-label="DUPLICATE">\n                <md-icon md-font-icon="icon-file-multiple"></md-icon>\n            </md-button>\n            <md-button type="submit" ng-click="vm.saveContact()" class="send-button md-accent md-raised" ng-disabled="detailForm.$pristine && customFieldsForm.$pristine" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.DETAIL">DETAIL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div layout="row">\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex="70">\n                            <div class="pb-16" layout="row" layout-align="start center">\n                                <div class="h2 secondary-text text-truncate" translate="CONTACTMANAGER.PERSONAL_INFO">PERSONAL_INFO</div>\n                            </div>\n                            <form name="detailForm" novalidate>\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    \x3c!-- fistName --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.FIRSTNAME">First Name</label>\n                                        <md-icon md-font-icon="icon-account" class="firstname"></md-icon>\n                                        <input type="text" name="firstName" ng-model="vm.contact.firstName" class="text-truncate" required>\n\n                                        <div ng-messages="detailForm.firstName.$error" ng-show="detailForm.firstName.$touched" role="alert">\n                                            <div ng-message="required">\n                                                <span translate="CONTACTMANAGER.ERRORS.FIRSTNAME_REQUIRED">First name field is required</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    \x3c!-- lastName --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.LASTNAME">Last Name</label>\n                                        <input type="text" name="lastName" ng-model="vm.contact.lastName" class="text-truncate">\n                                    </md-input-container>\n\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    \x3c!-- phone --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.PHONE">Phone</label>\n                                        <md-icon md-font-icon="icon-phone"></md-icon>\n                                        <input type="text" name="phone" ng-model="vm.contact.phone" class="text-truncate" required>\n\n                                        <div ng-messages="detailForm.phone.$error" ng-show="detailForm.phone.$touched" role="alert">\n                                            <div ng-message="required">\n                                                <span translate="CONTACTMANAGER.ERRORS.PHONE_REQUIRED">Phone name field is required</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    \x3c!-- mobile --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.MOBILE">Mobile</label>\n                                        <md-icon md-font-icon="icon-cellphone-iphone"></md-icon>\n                                        <input type="text" name="mobile" ng-model="vm.contact.mobile" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    \x3c!-- email --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.EMAIL">Email</label>\n                                        <md-icon md-font-icon="icon-email" class="email"></md-icon>\n                                        <input type="email" name="email" ng-model="vm.contact.email" class="text-truncate">\n                                        <div ng-messages="detailForm.firstName.$error" ng-show="detailForm.firstName.$touched" role="alert">\n                                            <div ng-message="email">\n                                                <span translate="CONTACTMANAGER.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    \x3c!-- fax --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.FAX">Fax</label>\n                                        <md-icon md-font-icon="icon-deskphone"></md-icon>\n                                        <input type="text" name="fax" ng-model="vm.contact.fax">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    \x3c!-- date of birdth --\x3e\n                                    \x3c!-- <md-input-container class="md-block" flex-gt-sm="">\n                                      <mdp-date-picker mdp-open-on-click name="dateOfBirth" mdp-placeholder="Date Of Birth" mdp-format="YYYY-MM-DD" ng-model="vm.contact.dateOfBirth">\n                                          <div ng-messages="detailForm.dateOfBirth.$error" ng-show="reportForm.dateOfBirth.$touched" role="alert">\n                                              <div ng-message="format">\n                                                  <span translate="CONTACTMANAGER.ERRORS.DATE_OF_RANGE_FROM_INVALID">Date Range From field is invalid</span>\n                                              </div>\n                                          </div>\n                                      </mdp-date-picker>\n                                    </md-input-container> --\x3e\n\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.DATE_OF_BIRTH">Date of Birth</label>\n                                        <md-icon md-font-icon="icon-calendar-blank"></md-icon>\n                                        <input type="date" name="dateOfBirth" ng-model="vm.contact.dateOfBirth" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container ng-if="vm.companies.rows.length" class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.COMPANY">Company</label>\n                                        <md-icon md-font-icon="icon-domain"></md-icon>\n                                        <md-select name="company" ng-model="vm.contact.CompanyId">\n                                            <md-optgroup label="Companies">\n                                                <md-option ng-value="company.id" ng-repeat="company in vm.companies.rows">{{company.name}}</md-option>\n                                                <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                            </md-optgroup>\n                                        </md-select>\n                                        <md-icon class="pointer" ng-show="vm.contact.CompanyId" md-font-icon="icon-information-outline" ng-click="vm.editCompany($event, vm.contact.CompanyId)"></md-icon>\n                                    </md-input-container>\n                                    <section ng-if="!vm.companies.rows.length" flex-gt-sm="">\n                                        <md-icon md-font-icon="icon-briefcase"></md-icon>\n                                        <label translate="CONTACTMANAGER.NO_COMPANIES">No Companies</label>\n                                        <md-button class="md-accent" translate="CONTACTMANAGER.ADD_COMPANY">Add Company</md-button>\n                                    </section>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container ng-if="vm.tags.rows.length" class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.TAGS">Tags</label>\n                                        <md-icon md-font-icon="icon-tag"></md-icon>\n                                        <md-select ng-model="vm.contact.tags" multiple>\n                                            <md-optgroup label="Tags">\n                                                <md-option ng-value="tag.name" ng-repeat="tag in vm.tags.rows">{{tag.name}}</md-option>\n                                            </md-optgroup>\n                                        </md-select>\n                                    </md-input-container>\n                                    <section ng-if="!vm.tags.rows.length" flex-gt-sm="">\n                                        <md-icon md-font-icon="icon-tag"></md-icon>\n                                        <label translate="CONTACTMANAGER.NO_TAGS">No Tags</label>\n                                        <md-button class="md-accent" translate="CONTACTMANAGER.ADD_TAG">Add Tag</md-button>\n                                    </section>\n                                </div>\n\n                                <div ng-if="!vm.allFields" layout="row" layout-align="center center">\n                                    <md-button class="md-accent" ng-click="vm.allFields = true" translate="CONTACTMANAGER.SHOW_ALL_FIELDS">Show All Fields</md-button>\n                                </div>\n\n                                <div ng-if="vm.allFields">\n                                    <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                        \x3c!-- country --\x3e\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate="CONTACTMANAGER.COUNTRY">Country</label>\n                                            <md-icon md-font-icon="icon-home" class="country"></md-icon>\n                                            <input type="text" name="country" ng-model="vm.contact.country" class="text-truncate">\n                                        </md-input-container>\n                                        <div flex="5"></div>\n                                        \x3c!-- city --\x3e\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate="CONTACTMANAGER.CITY">City</label>\n                                            <input type="text" name="city" ng-model="vm.contact.city">\n                                        </md-input-container>\n                                    </div>\n\n                                    <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                        <div flex="5"></div>\n                                        \x3c!-- street --\x3e\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate="CONTACTMANAGER.STREET">Street</label>\n                                            <input type="text" name="street" ng-model="vm.contact.street">\n                                        </md-input-container>\n                                        <div flex="5"></div>\n                                        \x3c!-- postalCode --\x3e\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate="CONTACTMANAGER.POSTALCODE">Postal Code</label>\n                                            <input type="text" name="postalCode" ng-model="vm.contact.postalCode">\n                                        </md-input-container>\n                                    </div>\n\n                                    <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate translate-attr-placeholder="CONTACTMANAGER.NOTES">Notes</label>\n                                            <md-icon md-font-icon="icon-note"></md-icon>\n                                            <textarea ng-model="vm.contact.description" type="text" max-rows="4"></textarea>\n                                        </md-input-container>\n                                    </div>\n\n                                    <div layout="row" layout-align="center center">\n                                        <md-button class="md-accent" ng-click="vm.allFields = false" translate="CONTACTMANAGER.FEWER_FIELDS">Fewer Fields\n                                        </md-button>\n                                    </div>\n\n                                </div>\n                            </form>\n                        </div>\n\n                        <div flex></div>\n\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex="25">\n                            <div class="pb-16" layout="row" layout-align="start center">\n                                <div class="h2 secondary-text text-truncate" translate="CONTACTMANAGER.CUSTOM_FIELDS">CUSTOM FIELDS</div>\n                            </div>\n                            <form name="customFieldsForm" novalidate>\n                                <md-input-container class="md-block">\n                                    <label translate translate-attr-placeholder="CONTACTMANAGER.LIST">List</label>\n                                    <md-select name="list" ng-model="vm.contact.ListId" md-on-close="vm.onSelectList($event)" ng-disabled="vm.contact.ListId">\n                                        <md-optgroup label="Lists">\n                                            <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">#{{list.id}} - {{list.name}}</md-option>\n                                            <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                        </md-optgroup>\n                                    </md-select>\n                                </md-input-container>\n                                <div ng-repeat="customField in vm.customFields.rows" class="md-block" ng-switch="customField.type">\n                                    <div ng-switch-when="datetime">\n                                        <label>{{customField.alias}}</label>\n\n                                        <div ng-init="vm.contact[\'cf_\' + customField.id] = vm.getDateFromString(vm.contact[\'cf_\' + customField.id])">\n                                            <mdp-date-picker mdp-open-on-click mdp-placeholder="Date" ng-required="customField.required" mdp-format="YYYY-MM-DD" ng-model="vm.contact[\'cf_\' + customField.id]"></mdp-date-picker>\n                                            <mdp-time-picker mdp-open-on-click mdp-placeholder="Time" ng-required="customField.required" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.contact[\'cf_\' + customField.id]"></mdp-time-picker>\n                                        </div>\n                                    </div>\n\n                                    <div ng-switch-when="select">\n                                        <label>{{customField.alias}}</label>\n\n                                        <md-select ng-model="vm.contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                                            <md-option ng-repeat="value in customField.values" ng-value="value">{{value}}</md-option>\n                                            <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                        </md-select>\n                                    </div>\n\n                                    <md-input-container ng-switch-when="switch">\n                                        <md-switch aria-label="{{customField.alias}}" ng-model="vm.contact[\'cf_\' + customField.id]" ng-true-value="1" ng-false-value="0">\n                                            {{customField.alias}}\n                                        </md-switch>\n                                    </md-input-container>\n\n                                    <md-input-container ng-switch-default>\n                                        <label>{{customField.alias}}</label>\n\n                                        <input type="{{customField.type}}" ng-model="vm.contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                                    </md-input-container>\n                                </div>\n                            </form>\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.MOTION_BULL">MOTION BULL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div layout="row">\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.HOPPER">Hopper</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm.queryHopper.filter = query;" on-collapse="vm.queryHopper.filter = undefined;" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm.getHoppers()" aria-label="reload" translate translate-attr-label="CONTACTMANAGER.RELOAD">\n                                        <md-tooltip>{{\'CONTACTMANAGER.RELOAD\' | translate}}</md-tooltip>\n                                        <md-icon md-font-icon="icon-reload"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n\n                            \x3c!-- HOPPER TABLE --\x3e\n                            <md-table-container>\n                                <table md-table multiple md-progress="vm.promise">\n                                    <thead md-head md-order="vm.queryHopper.sort" md-on-reorder="vm.getHoppers">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'CONTACTMANAGER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row ng-hide="vm.hoppers.count">\n                                            <td md-cell colspan="4">\n                                                <div layout="row" layout-align="center center">\n                                                    <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                                </div>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-repeat="(id, hopper) in vm.hoppers.rows">\n                                            <td md-cell>{{hopper.id}}</td>\n                                            <td md-cell>{{hopper.phone}}</td>\n                                            <td md-cell>{{hopper.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="2">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm.editHopper($event, hopper)" translate="CONTACTMANAGER.EDIT_HOPPER">\n                                                                Edit Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm.deleteconfirm(hopper, $event)" translate="CONTACTMANAGER.DELETE_HOPPER">\n                                                                Delete Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n\n                            <md-table-pagination md-limit="vm.queryHopper.limit" md-limit-options="[10, 15, 20]" md-page="vm.queryHopper.page" md-total="{{vm.hoppers.count}}" md-on-paginate="vm.getHoppers" md-page-select></md-table-pagination>\n                            \x3c!-- / HOPPER TABLE --\x3e\n                        </div>\n                    </div>\n\n                    <div layout="row">\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.FINAL">Final</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm.queryFinal.filter = query;" on-collapse="vm.queryFinal.filter = undefined;" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm.getFinals()" aria-label="reload" translate translate-attr-label="CONTACTMANAGER.RELOAD">\n                                        <md-tooltip>{{\'CONTACTMANAGER.RELOAD\' | translate}}</md-tooltip>\n                                        <md-icon md-font-icon="icon-reload"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n\n                            \x3c!-- HOPPER TABLE --\x3e\n                            <md-table-container>\n                                <table md-table multiple md-progress="vm.promise">\n                                    <thead md-head md-order="vm.queryFinal.sort" md-on-reorder="vm.getFinals">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'CONTACTMANAGER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="state">{{ \'CONTACTMANAGER.STATE\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'CONTACTMANAGER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="disposition">{{ \'CONTACTMANAGER.DISPOSITION\' | translate }}</th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row ng-hide="vm.finals.count">\n                                            <td md-cell colspan="5">\n                                                <div layout="row" layout-align="center center">\n                                                    <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                                </div>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-repeat="(id, final) in vm.finals.rows">\n                                            <td md-cell>{{final.uniqueid}}</td>\n                                            <td md-cell>{{final.calleridnum}}</td>\n                                            <td md-cell>{{final.state}}</td>\n                                            <td md-cell>{{final.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{final.disposition}}</td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n\n                            <md-table-pagination md-limit="vm.queryFinal.limit" md-limit-options="[10, 15, 20]" md-page="vm.queryFinal.page" md-total="{{vm.finals.count}}" md-on-paginate="vm.getFinals" md-page-select></md-table-pagination>\n                            \x3c!-- / HOPPER TABLE --\x3e\n                        </div>\n                    </div>\n\n                    <div layout="row">\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.HISTORY">History</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm.queryHistory.filter = query;" on-collapse="vm.queryHistory.filter = undefined;" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm.getHistories()" aria-label="reload" translate translate-attr-label="CONTACTMANAGER.RELOAD">\n                                        <md-tooltip>{{\'CONTACTMANAGER.RELOAD\' | translate}}</md-tooltip>\n                                        <md-icon md-font-icon="icon-reload"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n\n                            \x3c!-- HOPPER TABLE --\x3e\n                            <md-table-container>\n                                <table md-table multiple md-progress="vm.promise">\n                                    <thead md-head md-order="vm.queryHistory.sort" md-on-reorder="vm.getHistories">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'CONTACTMANAGER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="state">{{ \'CONTACTMANAGER.STATE\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'CONTACTMANAGER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'CONTACTMANAGER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'CONTACTMANAGER.ENDTIME\' | translate }}</th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row ng-hide="vm.histories.count">\n                                            <td md-cell colspan="7">\n                                                <div layout="row" layout-align="center center">\n                                                    <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                                </div>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-repeat="(id, history) in vm.histories.rows">\n                                            <td md-cell>{{history.uniqueid}}</td>\n                                            <td md-cell>{{history.calleridnum}}</td>\n                                            <td md-cell>{{history.statedesc}}</td>\n                                            <td md-cell>{{history.scheduledat}}</td>\n                                            <td md-cell>{{history.starttime}}</td>\n                                            <td md-cell>{{history.endtime}}</td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n\n                            <md-table-pagination md-limit="vm.queryHistory.limit" md-limit-options="[10, 15, 20]" md-page="vm.queryHistory.page" md-total="{{vm.histories.count}}" md-on-paginate="vm.getHistories" md-page-select></md-table-pagination>\n                            \x3c!-- / HOPPER TABLE --\x3e\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/contactmanager/views/contacts/merge/dialog.html",'<md-dialog class="cm-contact-dialog" aria-label="Merge Contact">\n    <form name="contactForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <md-input-container class="md-block" flex-gt-sm>\n                <label>Filter</label>\n                <input ng-model="vm.searchTerm" name="searchTerm" ng-model-options="{ debounce: 300 }" ng-change="vm.change()">\n            </md-input-container>\n\n            <md-list flex>\n                <md-subheader class="md-no-sticky" ng-hide="vm.contacts.length"><em>Filter doesn\'t match any contact</em></md-subheader>\n                <md-list-item class="md-3-line" ng-repeat="contact in vm.contacts | filter:{ id: \'!\' + vm.contact.id}" ng-click="vm.showConfirm($event, vm.contact, contact)">\n                    <img ng-src="assets/images/avatars/profile.jpg" class="md-avatar" alt="{{contact.who}}" />\n                    <div class="md-list-item-text" layout="column">\n                        <h3>#{{ contact.id }} - {{ contact.firstName }} {{ contact.lastName }}</h3>\n                        <h4>{{ contact.email }}</h4>\n                        <p>{{ contact.phone }}</p>\n                    </div>\n                </md-list-item>\n            </md-list>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/contacts/upload/upload.html",'<md-dialog class="upload-dialog" aria-label="Upload contact">\n    <form name="uploadForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="CONTACTMANAGER.UPLOAD_CONTACTS">Upload Contacts</span>\n                <md-button ng-disabled="vm.uploading" class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <div md-background-bg layout="row" layout-align="start start">\n            <md-progress-linear ng-disabled="!vm.uploading" md-mode="indeterminate" class="md-warn"></md-progress-linear>\n        </div>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div>\n\n                <md-content ng-hide="vm.uploading || vm.stop">\n                    <md-input-container class="md-icon-float md-block" ng-repeat="contactField in vm.contactFields">\n                        <label>{{\'CONTACTMANAGER.\' + contactField.key | uppercase | translate}}</label>\n                        <md-select name="{{contactField.key}}" ng-model="vm.binding[contactField.key]" placeholder="{{\'CONTACTMANAGER.\' + contactField.key | uppercase | translate}}" ng-required="contactField.required">\n                            <md-option ng-value="field" ng-repeat="field in vm.fields">{{ field }}</md-option>\n                            <md-option ng-value="null" ng-hide="contactField.required"><em>{{ \'CONTACTMANAGER.NONE\' | translate }}</em></md-option>\n                        </md-select>\n                    </md-input-container>\n\n                    <md-input-container class="md-icon-float md-block">\n                        <label translate="CONTACTMANAGER.LIST">List</label>\n                        <md-select name="list" ng-model="vm.ListId" placeholder="Select a list" ng-change="vm.onChangeList()" required>\n                            <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                        </md-select>\n                    </md-input-container>\n\n                    <md-input-container class="md-icon-float md-block" ng-repeat="customField in vm.customFields.rows">\n                        <label>{{customField.alias}}</label>\n                        <md-select ng-model="vm.binding[\'cf_\' + customField.id]" placeholder="{{customField.alias}}" ng-required="customField.required">\n                            <md-option ng-value="field" ng-repeat="field in vm.fields">{{ field }}</md-option>\n                            <md-option ng-value="null" ng-hide="customField.required"><em>{{ \'CONTACTMANAGER.NONE\' | translate }}</em></md-option>\n                        </md-select>\n                    </md-input-container>\n\n                    <md-input-container class="md-icon-float md-block">\n                        <label translate="CONTACTMANAGER.COMPANY">Company</label>\n                        <md-select name="company" ng-model="vm.CompanyId" placeholder="Select a company">\n                            <md-option ng-value="company.id" ng-repeat="company in vm.companies.rows">{{company.name}}</md-option>\n                            <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                        </md-select>\n                    </md-input-container>\n\n                    <md-input-container class="md-icon-float md-block">\n                        <md-select ng-model="vm.duplicates" placeholder="{{ \'CONTACTMANAGER.CHECK_DUPLICATES\' | translate}}" multiple>\n                            <md-option ng-value="contactField.key" ng-repeat="contactField in vm.contactFields">{{ \'CONTACTMANAGER.\' + contactField.key | uppercase | translate}}</md-option>\n                        </md-select>\n                    </md-input-container>\n                </md-content>\n\n                <div layout="row" ng-if="vm.uploading || vm.stop">\n                    \x3c!-- WIDGET SUCCESS --\x3e\n                    <ms-widget class="h-140" flex>\n                        \x3c!-- Front --\x3e\n                        <ms-widget-front class="p-16 white-bg">\n                            <div class="pt-8 pb-8" layout="column" layout-align="center center" flex>\n                                <div class="md-display-1 pb-8 green-fg">{{vm.successAmount}}</div>\n                                <div class="font-weight-500 secondary-text" translate="CONTACTMANAGER.SUCCESS">Success</div>\n                            </div>\n                        </ms-widget-front>\n                        \x3c!-- / Front --\x3e\n                    </ms-widget>\n                    \x3c!-- / WIDGET SUCCESS --\x3e\n\n                    \x3c!-- WIDGET FAILURE --\x3e\n                    <ms-widget class="h-140" flex>\n                        \x3c!-- Front --\x3e\n                        <ms-widget-front class="p-16 white-bg">\n                            <div class="pt-8 pb-8" layout="column" layout-align="center center" flex>\n                                <div class="md-display-1 pb-8 red-fg">{{vm.failureAmount}}</div>\n                                <div class="font-weight-500 secondary-text" translate="CONTACTMANAGER.FAILURE">Failure</div>\n                            </div>\n                        </ms-widget-front>\n                        \x3c!-- / Front --\x3e\n                    </ms-widget>\n                    \x3c!-- / WIDGET FAILURE --\x3e\n\n                    \x3c!-- WIDGET DUPLICATES --\x3e\n                    <ms-widget class="h-140" flex ng-if="vm.duplicates.length">\n                        \x3c!-- Front --\x3e\n                        <ms-widget-front class="p-16 white-bg">\n                            <div class="pt-8 pb-8" layout="column" layout-align="center center" flex>\n                                <div class="md-display-1 pb-8 orange-fg">{{vm.duplicatesAmount}}</div>\n                                <div class="font-weight-500 secondary-text" translate="CONTACTMANAGER.DUPLICATES">Duplicates</div>\n                            </div>\n                        </ms-widget-front>\n                        \x3c!-- / Front --\x3e\n                    </ms-widget>\n                    \x3c!-- / WIDGET DUPLICATES --\x3e\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row">\n                <md-button aria-label="SAVE" ng-disabled="uploadForm.$invalid || uploadForm.$pristine || vm.uploading || vm.stop" ng-click="vm.upload()" class="md-accent md-raised" aria-label="UPLOAD" translate="CONTACTMANAGER.UPLOAD" translate-attr-aria-label="CONTACTMANAGER.UPLOAD">\n                    UPLOAD\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/globalCustomFields/create/dialog.html",'<md-dialog class="globalCustomField-dialog" aria-label="New GlobalCustomField">\n    <form name="globalCustomFieldForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.ALIAS">Alias</label>\n                <input type="" name="alias" ng-model="vm.globalCustomField.alias" required autofocus>\n                <div ng-messages="globalCustomFieldForm.alias.$error" ng-show="globalCustomFieldForm.alias.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.ALIAS_REQUIRED">Alias field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.TYPE">Type</label>\n                <md-select ng-model="vm.globalCustomField.type" required>\n                    <md-option ng-value="\'text\'">Text</md-option>\n                    <md-option ng-value="\'select\'">Select</md-option>\n                    <md-option ng-value="\'number\'">Number</md-option>\n                    <md-option ng-value="\'switch\'">Switch</md-option>\n                    <md-option ng-value="\'datetime\'">Datetime</md-option>\n                </md-select>\n                <div ng-messages="globalCustomFieldForm.type.$error" ng-show="globalCustomFieldForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.globalCustomField.type == \'select\'" class="md-block">\n                <label translate="CONTACTMANAGER.VALUE">Value</label>\n                <md-chips name="values" ng-model="vm.globalCustomField.values" placeholder="add value and type enter" required>\n                    <md-chip-template>\n                        <span>{{$chip}}</span>\n                    </md-chip-template>\n                </md-chips>\n                <div ng-messages="globalCustomFieldForm.values.$error" ng-show="globalCustomFieldForm.values.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.globalCustomField.required" aria-label="Required"><span translate="CONTACTMANAGER.REQUIRED">Required</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newGlobalCustomField" ng-click="vm.saveGlobalCustomField()" class="send-button md-accent md-raised" ng-disabled="globalCustomFieldForm.$invalid || globalCustomFieldForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE"\n                    translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newGlobalCustomField" ng-click="vm.addNewGlobalCustomField()" class="send-button md-accent md-raised" ng-disabled="globalCustomFieldForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_GLOBALCUSTOMFIELD" translate-attr-aria-label="CONTACTMANAGER.ADD_GLOBALCUSTOMFIELD">\n                    ADD GLOBALCUSTOMFIELD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newGlobalCustomField" ng-click="vm.deleteGlobalCustomField($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/globalCustomFields/globalCustomFields.html",'<div id="globalCustomFields" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-circle" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CONTACTMANAGER.GLOBALCUSTOMFIELDS">GlobalCustomFields</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CONTACTMANAGER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedGlobalCustomFields.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedGlobalCustomFields =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CONTACTMANAGER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-globalCustomFields-count">\n                    <span>{{vm.selectedGlobalCustomFields.length}}</span>\n                <span translate="CONTACTMANAGER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="GLOBALCUSTOMFIELDS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllGlobalCustomFields()" translate="CONTACTMANAGER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectGlobalCustomFields()" translate="CONTACTMANAGER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedGlobalCustomFields" filename="globalCustomFields.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedGlobalCustomFields($event)" aria-label="delete selected" translate translate-attr-label="GLOBALCUSTOMFIELDS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- GLOBALCUSTOMFIELD TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedGlobalCustomFields" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getGlobalCustomFields">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                <th md-column md-order-by="alias">{{ \'CONTACTMANAGER.ALIAS\' | translate }}</th>\n                                <th md-column md-order-by="type">{{ \'CONTACTMANAGER.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="required">{{ \'CONTACTMANAGER.REQUIRED\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.globalCustomFields.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="globalCustomField" md-select-id="id" ng-repeat="globalCustomField in vm.globalCustomFields.rows">\n                                <td md-cell ng-if="globalCustomField.userpic"><img class="avatar" alt="{{globalCustomField.name}}" ng-src="api/users/{{globalCustomField.id}}/avatar" /></td>\n                                <td md-cell ng-if="!globalCustomField.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{globalCustomField.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditGlobalCustomField($event, globalCustomField)" md-cell class="id ">{{globalCustomField.id}}</td>\n                                <td ng-click="vm.createOrEditGlobalCustomField($event, globalCustomField)" md-cell class="alias ">{{globalCustomField.alias}}</td>\n                                <td ng-click="vm.createOrEditGlobalCustomField($event, globalCustomField)" md-cell class="type ">{{ vm.arraytype[globalCustomField.type].option }}</td>\n                                <td ng-click="vm.createOrEditGlobalCustomField($event, globalCustomField)" md-cell class="required ">\n                                    <md-icon md-colors="{color: {{globalCustomField.required ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{globalCustomField.required ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(globalCustomField, $event)" translate="CONTACTMANAGER.EDIT_GLOBALCUSTOMFIELD">\n                                                    Edit GlobalCustomField\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(globalCustomField, $event)" translate="CONTACTMANAGER.DELETE_GLOBALCUSTOMFIELD">\n                                                    Delete GlobalCustomField\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.globalCustomFields.count}}" md-on-paginate="vm.getGlobalCustomFields" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / GLOBALCUSTOMFIELD TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD GLOBALCUSTOMFIELD BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-globalCustomField-button" ng-click="vm.createOrEditGlobalCustomField($event)" aria-label="add globalCustomField" translate translate-attr-aria-label="CONTACTMANAGER.ADD_GLOBALCUSTOMFIELD">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD GLOBALCUSTOMFIELD BUTTON --\x3e\n</div>'),e.put("app/main/apps/contactmanager/views/lists/create/dialog.html",'<md-dialog class="list-dialog" aria-label="New List">\n    <form name="listForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.list.name" required autofocus>\n                <div ng-messages="listForm.name.$error" ng-show="listForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.list.description">\n                <div ng-messages="listForm.description.$error" ng-show="listForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newList" ng-click="vm.saveList()" class="send-button md-accent md-raised" ng-disabled="listForm.$invalid || listForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newList" ng-click="vm.addNewList()" class="send-button md-accent md-raised" ng-disabled="listForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_LIST" translate-attr-aria-label="CONTACTMANAGER.ADD_LIST">\n                    ADD LIST\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newList" ng-click="vm.deleteList($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/lists/edit/agentadd/agentadd.html",'<md-dialog class="list-dialog" aria-label="list">\n    <form name="listForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="CONTACTMANAGER.AGENTADD_LIST">Add Agent to list</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/lists/edit/customFields/dialog.html",'<md-dialog class="customField-dialog" aria-label="New CustomField">\n    <form name="customFieldForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.ALIAS">Alias</label>\n                <input type="" name="alias" ng-model="vm.customField.alias" required autofocus>\n                <div ng-messages="customFieldForm.alias.$error" ng-show="customFieldForm.alias.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.ALIAS_REQUIRED">Alias field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.TYPE">Type</label>\n                <md-select ng-model="vm.customField.type" required>\n                    <md-option ng-value="\'text\'">Text</md-option>\n                    <md-option ng-value="\'select\'">Select</md-option>\n                    <md-option ng-value="\'number\'">Number</md-option>\n                    <md-option ng-value="\'switch\'">Switch</md-option>\n                    <md-option ng-value="\'datetime\'">Datetime</md-option>\n                </md-select>\n                <div ng-messages="customFieldForm.type.$error" ng-show="customFieldForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.customField.type == \'select\'" class="md-block">\n                <label translate="CONTACTMANAGER.VALUE">Value</label>\n                <md-chips name="values" ng-model="vm.customField.values" placeholder="add value and type enter" required>\n                    <md-chip-template>\n                        <span>{{$chip}}</span>\n                    </md-chip-template>\n                </md-chips>\n                <div ng-messages="customFieldForm.values.$error" ng-show="customFieldForm.values.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.customField.required" aria-label="Required"><span translate="CONTACTMANAGER.REQUIRED">Required</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCustomField" ng-click="vm.saveCustomField()" class="send-button md-accent md-raised" ng-disabled="customFieldForm.$invalid || customFieldForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCustomField" ng-click="vm.addNewCustomField()" class="send-button md-accent md-raised" ng-disabled="customFieldForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_CUSTOMFIELD" translate-attr-aria-label="CONTACTMANAGER.ADD_CUSTOMFIELD">\n                    ADD CUSTOMFIELD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCustomField" ng-click="vm.deleteCustomField($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/lists/edit/view.html",'<div id="contactmanager-list" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-lists-button md-icon-button" aria-label="Go to lists" ng-click="vm.gotoLists()" translate translate-attr-aria-label="CONTACTMANAGER.GO_TO_LISTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.list.userpic" class="list-image" hide-xs>\n                    <img ng-src="api/users/{{vm.list.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.list.userpic" class="list-image" hide-xs>\n                    <img ng-src="assets/images/business/lists.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.list.id}} {{vm.list.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CONTACTMANAGER.CREATED_AT"></span> <span>{{vm.list.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.gotogoto(vm.list, $event)" class="md-fab md-warn md-icon-button" aria-label="goto">\n                <md-tooltip><span translate="CONTACTMANAGER.GOTO_LIST"></span></md-tooltip>\n                <md-icon md-font-icon="icon-forward"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.agentadddialog(vm.list, $event)" class="md-fab md-warn md-icon-button" aria-label="agentadd">\n                <md-tooltip><span translate="CONTACTMANAGER.AGENTADD_LIST"></span></md-tooltip>\n                <md-icon md-font-icon="icon-eye"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveList()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (customFieldsForm.$invalid) || (voiceDispositionsForm.$invalid)" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="list-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CONTACTMANAGER.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.list.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.list.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.CUSTOMFIELDS">CUSTOMFIELDS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="list-detail-form-container customfields md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ListCustomFieldsController as vm_dc" ng-init="vm_dc.init(vm.list)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedListCustomFields.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.CUSTOMFIELDS">CustomFields</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditListCustomField($event)" aria-label="add customField" translate translate-attr-label="CONTACTMANAGER.ADD_CUSTOMFIELD">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedListCustomFields.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedListCustomFields.length}} {{vm_dc.selectedListCustomFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedListCustomFields($event)" aria-label="delete selected" translate translate-attr-label="LISTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedListCustomFields" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getListCustomFields">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                            <th md-column md-order-by="alias">{{ \'CONTACTMANAGER.ALIAS\' | translate }}</th>\n                                            <th md-column md-order-by="type">{{ \'CONTACTMANAGER.TYPE\' | translate }}</th>\n                                            <th md-column md-order-by="required">{{ \'CONTACTMANAGER.REQUIRED\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="customField" md-select-id="id" ng-repeat="customField in vm_dc.listCustomFields.rows">\n                                            <td ng-click="vm_dc.createOrEditListCustomField($event, customField)" md-cell>{{customField.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditListCustomField($event, customField)" md-cell>{{customField.alias}}</td>\n                                            <td ng-click="vm_dc.createOrEditListCustomField($event, customField)" md-cell>{{ vm_dc.arraytype[customField.type].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditListCustomField($event, customField)" md-cell>{{customField.required}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditListCustomField($event, customField)" translate="CONTACTMANAGER.EDIT_CUSTOMFIELD">\n                                                                Edit CustomField\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(customField, $event)" translate="CONTACTMANAGER.DELETE_CUSTOMFIELD">\n                                                                Delete CustomField\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.listCustomFields.rows.length">\n                                            <td md-cell colspan="7">\n                                                <span class="text-boxed-ligth" translate="CONTACTMANAGER.NO_CUSTOMFIELD_AVAILABLE">No customfield available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.listCustomFields.count}}" md-on-paginate="vm_dc.getListCustomFields" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="list-detail-form-container voicedispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ListVoiceDispositionsController as vm_dc" ng-init="vm_dc.init(vm.list)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedListVoiceDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.VOICEDISPOSITIONS">VoiceDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditListVoiceDisposition($event)" aria-label="add voiceDisposition" translate translate-attr-label="CONTACTMANAGER.ADD_VOICEDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedListVoiceDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedListVoiceDispositions.length}} {{vm_dc.selectedListVoiceDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedListVoiceDispositions($event)" aria-label="delete selected" translate translate-attr-label="LISTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedListVoiceDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getListVoiceDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'CONTACTMANAGER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'CONTACTMANAGER.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="voiceDisposition" md-select-id="id" ng-repeat="voiceDisposition in vm_dc.listVoiceDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditListVoiceDisposition($event, voiceDisposition)" md-cell>{{voiceDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditListVoiceDisposition($event, voiceDisposition)" md-cell>{{voiceDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditListVoiceDisposition($event, voiceDisposition)" md-cell>{{voiceDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditListVoiceDisposition($event, voiceDisposition)" translate="CONTACTMANAGER.EDIT_VOICEDISPOSITION">\n                                                                Edit VoiceDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(voiceDisposition, $event)" translate="CONTACTMANAGER.DELETE_VOICEDISPOSITION">\n                                                                Delete VoiceDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.listVoiceDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="CONTACTMANAGER.NO_VOICEDISPOSITION_AVAILABLE">No voicedisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.listVoiceDispositions.count}}" md-on-paginate="vm_dc.getListVoiceDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/contactmanager/views/lists/edit/voiceDispositions/dialog.html",'<md-dialog class="voiceDisposition-dialog" aria-label="New VoiceDisposition">\n    <form name="voiceDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.voiceDisposition.name" required autofocus>\n                <div ng-messages="voiceDispositionForm.name.$error" ng-show="voiceDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVoiceDisposition" ng-click="vm.saveVoiceDisposition()" class="send-button md-accent md-raised" ng-disabled="voiceDispositionForm.$invalid || voiceDispositionForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE"\n                    translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVoiceDisposition" ng-click="vm.addNewVoiceDisposition()" class="send-button md-accent md-raised" ng-disabled="voiceDispositionForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_VOICEDISPOSITION" translate-attr-aria-label="CONTACTMANAGER.ADD_VOICEDISPOSITION">\n                    ADD VOICEDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVoiceDisposition" ng-click="vm.deleteVoiceDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/lists/lists.html",'<div id="lists" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-circle" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CONTACTMANAGER.LISTS">Lists</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CONTACTMANAGER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedLists.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedLists =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CONTACTMANAGER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-lists-count">\n                    <span>{{vm.selectedLists.length}}</span>\n                <span translate="CONTACTMANAGER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="LISTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllLists()" translate="CONTACTMANAGER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectLists()" translate="CONTACTMANAGER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedLists" filename="lists.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedLists($event)" aria-label="delete selected" translate translate-attr-label="LISTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- LIST TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedLists" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getLists">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CONTACTMANAGER.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CONTACTMANAGER.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.lists.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="list" md-select-id="id" ng-repeat="list in vm.lists.rows">\n                                <td md-cell ng-if="list.userpic"><img class="avatar" alt="{{list.name}}" ng-src="api/users/{{list.id}}/avatar" /></td>\n                                <td md-cell ng-if="!list.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{list.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditList($event, list)" md-cell class="id ">{{list.id}}</td>\n                                <td ng-click="vm.createOrEditList($event, list)" md-cell class="name ">{{list.name}}</td>\n                                <td ng-click="vm.createOrEditList($event, list)" md-cell class="description ">{{list.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(list, $event)" translate="CONTACTMANAGER.EDIT_LIST">\n                                                    Edit List\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.gotocontactsgoto(list, $event)" translate="CONTACTMANAGER.GOTOCONTACTS_LIST">\n                                                    goToContacts List\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.exportcsvcontactsexport(list, $event)" translate="CONTACTMANAGER.EXPORTCSVCONTACTS_LIST">\n                                                    exportCsvContacts List\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.agentadddialog(list, $event)" translate="CONTACTMANAGER.AGENTADD_LIST">\n                                                    AgentAdd List\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(list, $event)" translate="CONTACTMANAGER.DELETE_LIST">\n                                                    Delete List\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.lists.count}}" md-on-paginate="vm.getLists" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / LIST TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD LIST BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-list-button" ng-click="vm.createOrEditList($event)" aria-label="add list" translate translate-attr-aria-label="CONTACTMANAGER.ADD_LIST">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD LIST BUTTON --\x3e\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/agent.general.html",'<div id="dashboard-general" class="page-layout simple right-sidenav" layout="row">\n    \x3c!-- CENTER --\x3e\n    <div class="center" flex ms-scroll>\n        \x3c!-- CONTENT --\x3e\n        <div class="content">\n            <md-tabs md-selected="vm.currentTab" md-dynamic-height>\n                <md-tab label="{{\'DASHBOARDS.DASHBOARD\' | translate}}" ui-sref="app.dashboards.general.dashboard">\n                    <div ui-view="dashboard"></div>\n                </md-tab>\n                <md-tab label="{{\'DASHBOARDS.RECORDINGS\' | translate}}" ui-sref="app.dashboards.general.recordings">\n                    <div ui-view="recordings"></div>\n                </md-tab>\n                <md-tab label="{{\'DASHBOARDS.CONTACTS\' | translate}}" ui-sref="app.dashboards.general.contacts({tab: vm})">\n                    <div ui-view="contacts"></div>\n                </md-tab>\n                <md-tab label="{{\'DASHBOARDS.MYCONTACTS\' | translate}}" ui-sref="app.dashboards.general.mycontacts">\n                    <div ui-view="mycontacts"></div>\n                </md-tab>\n\n                \x3c!-- TABS START --\x3e\n                <md-tab ng-repeat="tab in vm.tabs track by tab.id">\n                    <md-tab-label>\n                        <md-icon md-font-icon="{{tab.icon}}" class="icon s20"></md-icon>\n                        <span class="text-bold"> {{tab.title}} </span>\n                        <md-button class="md-icon-button md-warn" ng-click="vm.closeTab($index, tab)">\n                            <md-icon md-font-icon="icon-close-circle-outline" class="icon s20"></md-icon>\n                        </md-button>\n                    </md-tab-label>\n                    <md-tab-body ng-switch-when="contact">\n                        <contact tab="tab"></contact>\n                    </md-tab-body>\n                </md-tab>\n                \x3c!-- TABS END --\x3e\n            </md-tabs>\n        </div>\n        \x3c!-- / CONTENT --\x3e\n    </div>\n    \x3c!-- / CENTER --\x3e\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/contacts/agent.general.contacts.html",'<div layout="rows">\n    <md-card flex="25" layout-padding>\n        <md-button translate="CONTACTMANAGER.ALL_CONTACTS" ng-click="vm.refreshContacts()"> AllContacts </md-button>\n        <md-input-container>\n            <label>Select a list</label>\n            <md-select flex="100" ng-model="vm.query.ListId" ng-change="vm.getContacts()">\n                <md-optgroup label="Lists">\n                    <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                    <md-option ng-value="vm.defaultLists" ng-if="vm.lists.count > 1"><em translate="CONTACTMANAGER.ALL_CONTACTS">All</em></md-option>\n                </md-optgroup>\n            </md-select>\n        </md-input-container>\n    </md-card>\n    <md-card flex="75">\n        <md-toolbar class="md-table-toolbar md-default">\n            <div class="md-toolbar-tools">\n                <span class="md-subhead" translate="DASHBOARDS.CONTACTS">Contacts</span>\n                <div flex></div>\n                <ms-search-bar on-search="vm.query.filter = query" on-collapse="vm.query.filter = undefined" debounce="300"></ms-search-bar>\n                <md-button class="md-icon-button" ng-click="vm.openContact($event)" aria-label="add contact" translate translate-attr-label="DASHBOARDS.ADD_CONTACT">\n                    <md-icon md-font-icon="icon-plus"></md-icon>\n                </md-button>\n                <md-button class="md-icon-button" ng-click="vm.refreshContacts($event)" aria-label="refresh Contacts" translate translate-attr-label="DASHBOARDS.REFRESH_CONTACTS">\n                    <md-icon md-font-icon="icon-reload"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-table-container>\n            <table md-table md-progress="vm.promise">\n                <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getContacts">\n                    <tr md-row>\n                        <th md-column md-order-by="id">ID</th>\n                        <th md-column md-order-by="firstName">{{\'DASHBOARDS.FULLNAME\' | translate}}</th>\n                        <th md-column md-order-by="phone">{{\'DASHBOARDS.PHONE\' | translate}}</th>\n                        <th md-column md-order-by="email">{{\'DASHBOARDS.EMAIL\' | translate}}</th>\n                        <th md-column md-order-by="ListId">{{\'DASHBOARDS.LIST\' | translate}}</th>\n                        <th md-column width="10px"></th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-hide="vm.contacts.rows.length">\n                        <td md-cell colspan="10">\n                            <div layout="row" layout-align="center center">\n                                <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                            </div>\n                        </td>\n                    </tr>\n                    <tr md-row ng-repeat="contact in vm.contacts.rows">\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="id">{{contact.id}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="firstName">{{contact.firstName}} {{contact.lastName}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="phone">{{contact.phone}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="email">{{contact.email}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="list">{{vm.listsMap[contact.ListId]}}</td>\n                        <td md-cell class="actions">\n                            <md-menu>\n                                <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="DASHBOARDS.MORE">\n                                    <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                </md-button>\n\n                                <md-menu-content width="3">\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.openContact(ev, contact)" translate="DASHBOARDS.EDIT">\n                                            Edit Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.mergeContact(ev, contact)" translate="DASHBOARDS.MERGE">\n                                            Merge Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.duplicateContact(ev, contact)" translate="DASHBOARDS.DUPLICATE">\n                                            Duplicate Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                </md-menu-content>\n                            </md-menu>\n                        </td>\n                    </tr>\n                </tbody>\n            </table>\n        </md-table-container>\n\n        <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.contacts.count}}" md-on-paginate="vm.getContacts" md-page-select></md-table-pagination>\n    </md-card>\n\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/dashboard/agent.general.dashboard.html",'<div layout="row">\n    <md-card flex="50">\n        <md-toolbar class="md-table-toolbar md-default">\n            <div class="md-toolbar-tools">\n                <span class="md-subhead" translate="VOICE.QUEUES">Queues</span>\n                <div flex></div>\n            </div>\n        </md-toolbar>\n        <md-table-container>\n            <table md-table md-progress="vm.promise">\n                <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoiceQueues">\n                    <tr md-row>\n                        <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                        <th md-column md-order-by="waiting">{{ \'VOICE.WAITING\' | translate }}</th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-hide="vm.getSize(vm.voiceQueues)">\n                        <td md-cell colspan="2">\n                            <div layout="row" layout-align="center center">\n                                <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                            </div>\n                        </td>\n                    </tr>\n                    <tr md-row ng-repeat="(key, voiceQueue) in vm.voiceQueues">\n                        <td md-cell class="name">{{voiceQueue.name}}</td>\n                        <td md-cell class="waiting">{{voiceQueue.waiting || 0}}</td>\n                    </tr>\n                </tbody>\n            </table>\n        </md-table-container>\n\n        <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voiceQueuesTotal}}" md-on-paginate="vm.getVoiceQueues" md-page-select></md-table-pagination>\n    </md-card>\n    <md-card flex="50">\n        <md-toolbar class="md-table-toolbar md-default">\n            <div class="md-toolbar-tools">\n                <span class="md-subhead" translate="DASHBOARDS.WAITING_TEXT"></span>\n                <div flex></div>\n            </div>\n        </md-toolbar>\n        <md-table-container>\n            <table md-table>\n                <thead md-head>\n                    <tr md-row>\n                        <th md-column>{{ \'VOICE.DID\' | translate }}</th>\n                        <th md-column>{{ \'VOICE.QUEUE\' | translate }}</th>\n                        <th md-column>{{ \'VOICE.CALLER\' | translate }}</th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-hide="vm.getSize(vm.rpcVoiceQueuesChannels)">\n                        <td md-cell colspan="3">\n                            <div layout="row" layout-align="center center">\n                                <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                            </div>\n                        </td>\n                    </tr>\n                    <tr md-row ng-repeat="(key, channel) in vm.rpcVoiceQueuesChannels | limitObjectFromTo: vm.queryChannels.limit:(vm.queryChannels.page - 1) * vm.queryChannels.limit">\n                        <td md-cell>{{channel.exten}}</td>\n                        <td md-cell>{{channel.queue}}</td>\n                        <td md-cell>{{channel.calleridnum}}</td>\n                    </tr>\n                </tbody>\n            </table>\n        </md-table-container>\n\n        <md-table-pagination md-limit="vm.queryChannels.limit" md-page="vm.queryChannels.page" md-limit-options="[10, 15, 20]" md-total="{{vm.getSize(vm.rpcVoiceQueuesChannels)}}" md-page-select></md-table-pagination>\n    </md-card>\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/directives/contact/contact.html",'<md-content>\n    <md-tabs md-selected="currentTab" md-dynamic-height>\n        <md-tab>\n            <md-tab-label>\n                <span translate="DASHBOARDS.DETAIL">Detail</span>\n            </md-tab-label>\n            <md-tab-body>\n                <md-content>\n                    <div layout="row">\n                        \x3c!-- MS-CARD --\x3e\n                        <md-card class="template-7" layout="row" layout-align="space-between" ng-repeat="call in tab.calls track by call.uniqueid">\n                            <div class="info" layout="column" layout-align="space-between" layout-fill flex>\n                                <div layout="row">\n                                    <span class="text-boxed md-green-bg"><timer start-time="tab.openedAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>\n                                    <div flex></div>\n                                    <span ng-if="call.disposedAt" class="text-boxed md-yellow-bg"><timer start-time="call.disposedAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>\n                                </div>\n                                <div class="p-16">\n                                    <div class="title h1">\n                                        <md-icon md-font-icon="icon-phone-forward"></md-icon>\n                                        {{call.calleridnum}}\n                                    </div>\n\n                                    <div class="subtitle h4 secondary-text" ng-if="call.calleridname">\n                                        <md-icon md-font-icon="icon-account"></md-icon>\n                                        Name: {{call.calleridname}}\n                                    </div>\n\n                                    <div class="text h4 pt-8" ng-if="call.queue">\n                                        <md-icon md-font-icon="icon-stackoverflow"></md-icon>\n                                        Queue: {{call.queue}}\n                                    </div>\n                                    <div class="text h4 pt-8" ng-if="call.variables.extravar">\n                                        <md-icon md-font-icon="icon-minus"></md-icon>\n                                        Extra: {{call.variables.extravar}}\n                                    </div>\n                                </div>\n                                <div layout="row" layout-align="end center">\n                                    <md-button ng-if="call.disposedAt" type="submit" ng-click="disposeCall($event, call)" class="send-button md-accent md-raised">\n                                        {{ \'DASHBOARDS.DISPOSE\' | translate}}\n                                    </md-button>\n                                </div>\n                            </div>\n                        </md-card>\n                        \x3c!-- / MS-CARD --\x3e\n                        <div flex layout="row" layout-align="end center">\n                            <md-button type="submit" ng-click="mergeContact($event)" class="send-button md-raised md-teal-A700-bg" ng-if="!newContact" ng-disabled="detailForm.$invalid || customFieldsForm.$invalid">\n                                {{ \'DASHBOARDS.MERGE\' | translate}}\n                            </md-button>\n                            <md-button type="submit" ng-click="duplicateContact($event)" class="send-button md-raised md-cyan-A700-bg" ng-if="!newContact" ng-disabled="detailForm.$invalid || customFieldsForm.$invalid">\n                                {{ \'DASHBOARDS.DUPLICATE\' | translate}}\n                            </md-button>\n                            <md-button type="submit" ng-click="addNewContact($event)" class="send-button md-accent md-raised" ng-if="newContact" ng-disabled="detailForm.$invalid || customFieldsForm.$invalid">\n                                {{ \'DASHBOARDS.ADD\'| translate }}\n                            </md-button>\n                            <md-button type="submit" ng-click="saveContact($event)" class="send-button md-accent md-raised" ng-if="!newContact" ng-disabled="detailForm.$invalid || customFieldsForm.$invalid">\n                                {{ \'DASHBOARDS.SAVE\' | translate }}\n                            </md-button>\n                        </div>\n                    </div>\n                    <div layout="row">\n                        <md-card flex="75" layout-padding>\n                            <div class="h2 secondary-text text-truncate" translate="DASHBOARDS.PERSONAL_INFO">PERSONAL_INFO</div>\n                            <form name="detailForm" novalidate>\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.FIRSTNAME">First Name</label>\n                                        <md-icon md-font-icon="icon-account" class="firstname"></md-icon>\n                                        <input type="text" name="firstName" ng-model="contact.firstName" class="text-truncate" required>\n                                        <div ng-messages="detailForm.firstName.$error" ng-show="detailForm.firstName.$touched" role="alert">\n                                            <div ng-message="required">\n                                                <span translate="DASHBOARDS.ERRORS.FIRSTNAME_REQUIRED">First name field is required</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.LASTNAME">Last Name</label>\n                                        <input type="text" name="lastName" ng-model="contact.lastName" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.PHONE">Phone</label>\n                                        <md-icon md-font-icon="icon-phone"></md-icon>\n                                        <input type="text" name="phone" ng-model="contact.phone" class="text-truncate" required>\n                                        <div ng-messages="detailForm.phone.$error" ng-show="detailForm.phone.$touched" role="alert">\n                                            <div ng-message="required">\n                                                <span translate="DASHBOARDS.ERRORS.PHONE_REQUIRED">Phone name field is required</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.MOBILE">Mobile</label>\n                                        <md-icon md-font-icon="icon-cellphone-iphone"></md-icon>\n                                        <input type="text" name="mobile" ng-model="contact.mobile" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.EMAIL">Email</label>\n                                        <md-icon md-font-icon="icon-email" class="email"></md-icon>\n                                        <input type="email" name="email" ng-model="contact.email" class="text-truncate">\n                                        <div ng-messages="detailForm.firstName.$error" ng-show="detailForm.firstName.$touched" role="alert">\n                                            <div ng-message="email">\n                                                <span translate="DASHBOARDS.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.FAX">Fax</label>\n                                        <md-icon md-font-icon="icon-deskphone"></md-icon>\n                                        <input type="text" name="fax" ng-model="contact.fax">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.DATE_OF_BIRTH">Date of Birth</label>\n                                        <md-icon md-font-icon="icon-calendar-blank"></md-icon>\n                                        <input type="date" name="dateOfBirth" ng-model="contact.dateOfBirth" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.COMPANY">Company</label>\n                                        <md-icon md-font-icon="icon-domain" class="email"></md-icon>\n                                        <md-select name="company" ng-model="contact.CompanyId">\n                                            <md-option ng-value="company.id" ng-repeat="company in companies.rows">{{company.name}}</md-option>\n                                            <md-option ng-value="null"><em translate="DASHBOARDS.NONE">None</em></md-option>\n                                        </md-select>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.TAG">TAG</label>\n                                        <md-icon md-font-icon="icon-tag"></md-icon>\n                                        <md-select ng-model="contact.tags" multiple>\n                                            <md-option ng-value="tag.name" ng-repeat="tag in tab.tags.rows">{{tag.name}}</md-option>\n                                        </md-select>\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.COUNTRY">Country</label>\n                                        <md-icon md-font-icon="icon-home" class="country"></md-icon>\n                                        <input type="text" name="country" ng-model="contact.country" class="text-truncate">\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.CITY">City</label>\n                                        <input type="text" name="city" ng-model="contact.city">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.STREET">Street</label>\n                                        <input type="text" name="street" ng-model="contact.street">\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.POSTALCODE">Postal Code</label>\n                                        <input type="text" name="postalCode" ng-model="contact.postalCode">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate translate-attr-placeholder="DASHBOARDS.NOTES">Notes</label>\n                                        <md-icon md-font-icon="icon-note"></md-icon>\n                                        <textarea ng-model="contact.description" type="text" max-rows="4"></textarea>\n                                    </md-input-container>\n                                </div>\n                            </form>\n                        </md-card>\n                        <md-card flex="25" layout-padding>\n                            <div class="h2 secondary-text text-truncate" translate="DASHBOARDS.CUSTOM_FIELDS">CUSTOM FIELDS</div>\n                            <form name="customFieldsForm" novalidate>\n\n                                \x3c!-- START INPUT LIST --\x3e\n                                <md-input-container class="md-block" ng-if="newContact">\n                                    <label translate translate-attr-placeholder="DASHBOARDS.LIST">List</label>\n                                    <md-select name="list" ng-model="contact.ListId" ng-change="getCustomFields(contact.ListId)" required>\n                                        <md-optgroup label="Lists">\n                                            <md-option ng-value="list.id" ng-repeat="list in tab.userLists.rows">#{{list.id}} - {{list.name}}</md-option>\n                                        </md-optgroup>\n                                    </md-select>\n                                </md-input-container>\n                                <md-input-container class="md-block" ng-if="!newContact">\n                                    <label translate translate-attr-placeholder="DASHBOARDS.LIST">List</label>\n                                    <md-select ng-disabled="true" name="list" ng-model="contact.ListId" required>\n                                        <md-optgroup label="Lists">\n                                            <md-option ng-value="list.id" ng-repeat="list in tab.lists.rows">#{{list.id}} - {{list.name}}</md-option>\n                                        </md-optgroup>\n                                    </md-select>\n                                </md-input-container>\n                                \x3c!-- END INPUT LIST --\x3e\n\n                                <div ng-repeat="customField in tab.customFields.rows" class="md-block" ng-switch="customField.type">\n                                    <div ng-switch-when="datetime">\n                                        <label>{{customField.alias}}</label>\n                                        <div ng-init="contact[\'cf_\' + customField.id] = getDateFromString(contact[\'cf_\' + customField.id])">\n                                            <mdp-date-picker mdp-open-on-click mdp-placeholder="Date" ng-required="customField.required" mdp-format="YYYY-MM-DD" ng-model="contact[\'cf_\' + customField.id]"></mdp-date-picker>\n                                            <mdp-time-picker mdp-open-on-click mdp-placeholder="Time" ng-required="customField.required" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="contact[\'cf_\' + customField.id]"></mdp-time-picker>\n                                        </div>\n                                    </div>\n\n                                    <div ng-switch-when="select">\n                                        <label>{{customField.alias}}</label>\n                                        <md-select ng-model="contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                                            <md-option ng-repeat="value in customField.values" ng-value="value">{{value}}</md-option>\n                                            <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                        </md-select>\n                                    </div>\n\n                                    <md-input-container ng-switch-when="switch">\n                                        <md-switch aria-label="{{customField.alias}}" ng-model="contact[\'cf_\' + customField.id]" ng-true-value="1" ng-false-value="0">\n                                            {{customField.alias}}\n                                        </md-switch>\n                                    </md-input-container>\n\n                                    <md-input-container ng-switch-default>\n                                        <label>{{customField.alias}}</label>\n                                        <input type="{{customField.type}}" ng-model="contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                                    </md-input-container>\n                                </div>\n                            </form>\n                        </md-card>\n                    </div>\n                </md-content>\n            </md-tab-body>\n        </md-tab>\n\n        <md-tab ng-if="!newContact">\n            <md-tab-label>\n                <span translate="DASHBOARDS.MOTION_BULL">Motion Bull</span>\n            </md-tab-label>\n            <md-tab-body>\n                <md-card layout="row">\n                    <div class="md-background-bg" flex>\n                        <md-toolbar class="md-table-toolbar md-default">\n                            <div class="md-toolbar-tools">\n                                <span class="md-subhead" translate="CONTACTMANAGER.HOPPER">Hopper</span>\n                                <div flex></div>\n                                <ms-search-bar on-search="queryHopper.filter = query;" on-collapse="queryHopper.filter = undefined;" debounce="300"></ms-search-bar>\n                            </div>\n                        </md-toolbar>\n\n                        <md-table-container>\n                            <table md-table multiple md-progress="promise">\n                                <thead md-head md-order="queryHopper.sort" md-on-reorder="getHoppers">\n                                    <tr md-row>\n                                        <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                        <th md-column md-order-by="phone">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                        <th md-column md-order-by="scheduledat">{{ \'CONTACTMANAGER.SCHEDULEDAT\' | translate }}</th>\n                                    </tr>\n                                </thead>\n                                <tbody md-body>\n                                    <tr md-row ng-hide="hoppers.count">\n                                        <td md-cell colspan="3">\n                                            <div layout="row" layout-align="center center">\n                                                <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                            </div>\n                                        </td>\n                                    </tr>\n                                    <tr md-row ng-repeat="(id, hopper) in hoppers.rows">\n                                        <td md-cell>{{hopper.id}}</td>\n                                        <td md-cell>{{hopper.phone}}</td>\n                                        <td md-cell>{{hopper.scheduledat | date:\'medium\'}}</td>\n                                    </tr>\n                                </tbody>\n                            </table>\n                        </md-table-container>\n\n                        <md-table-pagination md-limit="queryHopper.limit" md-limit-options="[10, 15, 20]" md-page="queryHopper.page" md-total="{{hoppers.count}}" md-on-paginate="getHoppers" md-page-select></md-table-pagination>\n                    </div>\n                </md-card>\n\n                <md-card layout="row">\n                    <div class="md-background-bg" flex>\n                        <md-toolbar class="md-table-toolbar md-default">\n                            <div class="md-toolbar-tools">\n                                <span class="md-subhead" translate="CONTACTMANAGER.FINAL">Final</span>\n                                <div flex></div>\n                                <ms-search-bar on-search="queryFinal.filter = query;" on-collapse="queryFinal.filter = undefined;" debounce="300"></ms-search-bar>\n                            </div>\n                        </md-toolbar>\n\n                        <md-table-container>\n                            <table md-table multiple md-progress="promise">\n                                <thead md-head md-order="queryFinal.sort" md-on-reorder="getFinals">\n                                    <tr md-row>\n                                        <th md-column md-order-by="uniqueid">{{ \'CONTACTMANAGER.UNIQUEID\' | translate }}</th>\n                                        <th md-column md-order-by="calleridnum">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                        <th md-column md-order-by="statedesc">{{ \'CONTACTMANAGER.STATUS\' | translate }}</th>\n                                        <th md-column md-order-by="starttime">{{ \'CONTACTMANAGER.STARTTIME\' | translate }}</th>\n                                        <th md-column md-order-by="disposition">{{ \'CONTACTMANAGER.DISPOSITION\' | translate }}</th>\n                                    </tr>\n                                </thead>\n                                <tbody md-body>\n                                    <tr md-row ng-hide="finals.count">\n                                        <td md-cell colspan="5">\n                                            <div layout="row" layout-align="center center">\n                                                <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                            </div>\n                                        </td>\n                                    </tr>\n                                    <tr md-row ng-repeat="(id, final) in finals.rows">\n                                        <td md-cell>{{final.uniqueid}}</td>\n                                        <td md-cell>{{final.calleridnum}}</td>\n                                        <td md-cell>{{final.statedesc}}</td>\n                                        <td md-cell>{{final.starttime | date:\'medium\'}}</td>\n                                        <td md-cell>{{final.disposition}}</td>\n                                    </tr>\n                                </tbody>\n                            </table>\n                        </md-table-container>\n\n                        <md-table-pagination md-limit="queryFinal.limit" md-limit-options="[10, 15, 20]" md-page="queryFinal.page" md-total="{{finals.count}}" md-on-paginate="getFinals" md-page-select></md-table-pagination>\n                    </div>\n                </md-card>\n\n                <md-card layout="row">\n                    <div class="md-background-bg" flex>\n                        <md-toolbar class="md-table-toolbar md-default">\n                            <div class="md-toolbar-tools">\n                                <span class="md-subhead" translate="CONTACTMANAGER.HISTORY">History</span>\n                                <div flex></div>\n                                <ms-search-bar on-search="queryHistory.filter = query;" on-collapse="queryHistory.filter = undefined;" debounce="300"></ms-search-bar>\n                            </div>\n                        </md-toolbar>\n\n                        <md-table-container>\n                            <table md-table multiple md-progress="promise">\n                                <thead md-head md-order="queryHistory.sort" md-on-reorder="getHistories">\n                                    <tr md-row>\n                                        <th md-column md-order-by="uniqueid">{{ \'CONTACTMANAGER.UNIQUEID\' | translate }}</th>\n                                        <th md-column md-order-by="calleridnum">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                        <th md-column md-order-by="statedesc">{{ \'CONTACTMANAGER.STATE\' | translate }}</th>\n                                        <th md-column md-order-by="scheduledat">{{ \'CONTACTMANAGER.SCHEDULEDAT\' | translate }}</th>\n                                        <th md-column md-order-by="starttime">{{ \'CONTACTMANAGER.STARTTIME\' | translate }}</th>\n                                        <th md-column md-order-by="endtime">{{ \'CONTACTMANAGER.ENDTIME\' | translate }}</th>\n                                    </tr>\n                                </thead>\n                                <tbody md-body>\n                                    <tr md-row ng-hide="histories.count">\n                                        <td md-cell colspan="7">\n                                            <div layout="row" layout-align="center center">\n                                                <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                            </div>\n                                        </td>\n                                    </tr>\n                                    <tr md-row ng-repeat="(id, history) in histories.rows">\n                                        <td md-cell>{{history.uniqueid}}</td>\n                                        <td md-cell>{{history.calleridnum}}</td>\n                                        <td md-cell>{{history.statedesc}}</td>\n                                        <td md-cell>{{history.scheduledat}}</td>\n                                        <td md-cell>{{history.starttime}}</td>\n                                        <td md-cell>{{history.endtime}}</td>\n                                    </tr>\n                                </tbody>\n                            </table>\n                        </md-table-container>\n\n                        <md-table-pagination md-limit="queryHistory.limit" md-limit-options="[10, 15, 20]" md-page="queryHistory.page" md-total="{{histories.count}}" md-on-paginate="getHistories" md-page-select></md-table-pagination>\n\n                    </div>\n                </md-card>\n            </md-tab-body>\n        </md-tab>\n    </md-tabs>\n</md-content>'),e.put("app/main/apps/dashboards/views/general/agent/directives/contact/dispose/dialog.html",'<md-dialog class="agent-dialog" aria-label="New Agent">\n    <md-dialog-content ms-scroll>\n        <div layout="row">\n            <div flex>\n                <md-radio-group ng-model="vm.choice" ng-change="vm.saveDisposition()">\n                    <md-radio-button value="fax"><span translate="DASHBOARDS.FAX">Fax</span></md-radio-button>\n                    <md-radio-button value="amd"><span translate="DASHBOARDS.ANSWER_MACHINE">Answer Machine</span></md-radio-button>\n                    <md-radio-button value="interested"><span translate="DASHBOARDS.INTERESTED">Interested</span></md-radio-button>\n                    <md-radio-button value="notinterested"><span translate="DASHBOARDS.NOT_INTERESTED">Not Interested</span></md-radio-button>\n                    <md-radio-button value="sold"><span translate="DASHBOARDS.SOLD">Sold</span></md-radio-button>\n                    <md-radio-button value="special"><span translate="DASHBOARDS.SPECIAL">Special</span></md-radio-button>\n\n                    <md-radio-button value="blacklist"><span translate="DASHBOARDS.BLACKLIST">Blacklist</span></md-radio-button>\n                    <md-radio-button value="reschedule"><span translate="DASHBOARDS.RESCHEDULE">Reschedule</span></md-radio-button>\n                </md-radio-group>\n            </div>\n            <div flex>\n                <md-radio-group ng-model="vm.choice" ng-change="vm.saveDisposition()">\n                    <md-radio-button ng-repeat="disposition in vm.dispositions.rows" value="{{disposition.name}}">{{disposition.name}}</md-radio-button>\n                </md-radio-group>\n            </div>\n        </div>\n    </md-dialog-content>\n</md-dialog>'),e.put("app/main/apps/dashboards/views/general/agent/directives/contact/reschedule/dialog.html",'<md-dialog class="agent-dialog" aria-label="New Agent">\n    <form name="dateTime" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div layout="row">\n                <div flex class="md-block">\n                    <mdp-date-picker mdp-open-on-click required name="date" mdp-placeholder="Date" mdp-format="YYYY-MM-DD" mdp-min-date="vm.hopper.minDate" ng-model="vm.hopper.dateTime">\n                        <div ng-messages="dateTime.date.$error" ng-show="dateTime.date.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="DASHBOARDS.ERRORS.DATE_REQUIRED">Date is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="DASHBOARDS.ERRORS.DATE_INVALID">Date is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-date-picker>\n                </div>\n\n                <div flex class="md-block">\n                    <mdp-time-picker mdp-open-on-click required name="time" mdp-placeholder="Time" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.hopper.dateTime">\n                        <div ng-messages="dateTime.time.$error" ng-show="dateTime.time.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="DASHBOARDS.ERRORS.TIME_REQUIRED">Time is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="DASHBOARDS.ERRORS.TIME_INVALID">Time is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveDialog()" class="send-button md-accent md-raised" ng-disabled="dateTime.$invalid || dateTime.$pristine" aria-label="SAVE" translate="DASHBOARDS.SAVE" translate-attr-aria-label="DASHBOARDS.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/dashboards/views/general/agent/mycontacts/agent.general.mycontacts.html",'<div layout="rows">\n    <md-card flex="25" layout-padding>\n        <md-button translate="CONTACTMANAGER.ALL_CONTACTS" ng-click="vm.refreshContacts()"> AllContacts </md-button>\n        <md-input-container>\n            <label>Select a list</label>\n            <md-select flex="100" ng-model="vm.query.ListId" ng-change="vm.getContacts()">\n                <md-optgroup label="Lists">\n                    <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                    <md-option ng-value="vm.defaultLists" ng-if="vm.lists.count > 1"><em translate="CONTACTMANAGER.ALL_CONTACTS">All</em></md-option>\n                </md-optgroup>\n            </md-select>\n        </md-input-container>\n    </md-card>\n    <md-card flex="75">\n        <md-toolbar class="md-table-toolbar md-default">\n            <div class="md-toolbar-tools">\n                <span class="md-subhead" translate="DASHBOARDS.CONTACTS">Contacts</span>\n                <div flex></div>\n                \x3c!-- <ms-search-bar on-search="vm.query.filter = query" on-collapse="vm.query.filter = undefined" debounce="300"></ms-search-bar> --\x3e\n                <md-button class="md-icon-button" ng-click="vm.openContact($event)" aria-label="add contact" translate translate-attr-label="DASHBOARDS.ADD_CONTACT">\n                    <md-icon md-font-icon="icon-plus"></md-icon>\n                </md-button>\n                <md-button class="md-icon-button" ng-click="vm.refreshContacts($event)" aria-label="refresh Contacts" translate translate-attr-label="DASHBOARDS.REFRESH_CONTACTS">\n                    <md-icon md-font-icon="icon-reload"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-table-container>\n            <table md-table md-progress="vm.promise">\n                <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getContacts">\n                    <tr md-row>\n                        <th md-column md-order-by="id">ID</th>\n                        <th md-column md-order-by="firstName">{{\'DASHBOARDS.FULLNAME\' | translate}}</th>\n                        <th md-column md-order-by="phone">{{\'DASHBOARDS.PHONE\' | translate}}</th>\n                        <th md-column md-order-by="email">{{\'DASHBOARDS.EMAIL\' | translate}}</th>\n                        <th md-column md-order-by="ListId">{{\'DASHBOARDS.LIST\' | translate}}</th>\n                        <th md-column width="10px"></th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-hide="vm.contacts.rows.length">\n                        <td md-cell colspan="10">\n                            <div layout="row" layout-align="center center">\n                                <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                            </div>\n                        </td>\n                    </tr>\n                    <tr md-row ng-repeat="contact in vm.contacts.rows">\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="id">{{contact.id}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="firstName">{{contact.firstName}} {{contact.lastName}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="phone">{{contact.phone}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="email">{{contact.email}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="list">{{vm.listsMap[contact.ListId]}}</td>\n                        <td md-cell class="actions">\n                            <md-menu>\n                                <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="DASHBOARDS.MORE">\n                                    <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                </md-button>\n\n                                <md-menu-content width="3">\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.openContact(ev, contact)" translate="DASHBOARDS.EDIT">\n                                            Edit Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.mergeContact(ev, contact)" translate="DASHBOARDS.MERGE">\n                                            Merge Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.duplicateContact(ev, contact)" translate="DASHBOARDS.DUPLICATE">\n                                            Duplicate Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                </md-menu-content>\n                            </md-menu>\n                        </td>\n                    </tr>\n                </tbody>\n            </table>\n        </md-table-container>\n\n        <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.contacts.count}}" md-on-paginate="vm.getContacts" md-page-select></md-table-pagination>\n    </md-card>\n\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/recordings/agent.general.recordings.html",'<md-card>\n    <md-toolbar class="md-table-toolbar md-default">\n        <div class="md-toolbar-tools">\n            <span class="md-subhead" translate="VOICE.RECORDINGS">Recordings</span>\n            <div flex></div>\n        </div>\n    </md-toolbar>\n    <md-table-container>\n        <table md-table md-progress="vm.promise">\n            <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoiceRecordings">\n                <tr md-row>\n                    <th md-column md-order-by="type">{{ \'VOICE.TYPE\' | translate }}</th>\n                    <th md-column md-order-by="uniqueid">{{ \'VOICE.UNIQUEID\' | translate }}</th>\n                    <th md-column md-order-by="calleridnum">{{ \'VOICE.CALLER\' | translate }}</th>\n                    <th md-column md-order-by="exten">{{ \'VOICE.CALLED\' | translate }}</th>\n                    <th md-column md-order-by="connectedlinenum">{{ \'VOICE.CONNECTED\' | translate }}</th>\n                    <th md-column md-order-by="queue">{{ \'VOICE.QUEUE\' | translate }}</th>\n                    <th md-column md-order-by="rating">{{ \'VOICE.RATING\' | translate }}</th>\n                    <th md-column md-order-by="audio">{{ \'VOICE.AUDIO\' | translate }}</th>\n                    <th md-column md-order-by="createdAt">{{ \'VOICE.DATE\' | translate }}</th>\n                    <th md-column width="10px"></th>\n                </tr>\n            </thead>\n            <tbody md-body>\n                <tr md-row ng-hide="vm.voiceRecordings.rows.length">\n                    <td md-cell colspan="10">\n                        <div layout="row" layout-align="center center">\n                            <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                        </div>\n                    </td>\n                </tr>\n                <tr md-row ng-repeat="voiceRecording in vm.voiceRecordings.rows">\n                    <td md-cell class="type ">{{voiceRecording.type}}</td>\n                    <td md-cell class="uniqueid ">{{voiceRecording.uniqueid}}</td>\n                    <td md-cell class="calleridnum ">{{voiceRecording.calleridnum}}</td>\n                    <td md-cell class="exten ">{{voiceRecording.exten}}</td>\n                    <td md-cell class="connectedlinenum ">{{voiceRecording.connectedlinenum}}</td>\n                    <td md-cell class="queue ">{{voiceRecording.queue}}</td>\n                    <td md-cell class="rating ">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-show="voiceRecording.rating" ng-repeat="rating in [1,2,3,4,5] | limitTo:voiceRecording.rating"></md-icon><span ng-hide="voiceRecording.rating" translate="VOICE.NO_RATING">No rating</span></td>\n                    <td md-cell class="audio " ng-switch="voiceRecording.format">\n                        <audio controls ng-switch-when=".wav">\n                      <source ng-src="{{\'api/voice/recordings/\' + voiceRecording.id + \'/download\'}}" type="audio/wav" preload="none"></source> Your browser does not support the audio element.\n                     </audio>\n                        <span ng-switch-when=".gsm">\n                      <em>{{ \'VOICE.CANT_PLAY_GSM_AUDIO_FILES\' | translate }}</em>\n                     </span>\n                    </td>\n                    <td md-cell class="createdAt ">{{voiceRecording.createdAt | date:\'medium\' }}</td>\n                    <td md-cell class="actions">\n                        <md-menu>\n                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                            </md-button>\n\n                            <md-menu-content width="3">\n                                <md-menu-item>\n                                    <md-button ng-click="vm.downloadfile(voiceRecording, $event)" translate="VOICE.DOWNLOAD_VOICERECORDING">\n                                        Download VoiceRecording\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </td>\n                </tr>\n            </tbody>\n        </table>\n    </md-table-container>\n\n    <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voiceRecordings.count}}" md-on-paginate="vm.getVoiceRecordings" md-page-select></md-table-pagination>\n</md-card>'),e.put("app/main/apps/dashboards/views/general/user/dialer/user.general.dialer.html",'\x3c!-- WIDGET INBOUND --\x3e\n<div class="dashboard-container md-background-bg md-whiteframe-1dp">\n    <div class="pb-16" layout="row" layout-align="start center">\n        <md-icon md-font-icon="icon-phone-outgoing" class="m-0 mr-16"></md-icon>\n        <div class="h2 secondary-text" translate="DASHBOARDS.TODAY_MOTION_BULL_STATS">Today Motion Bull STATS</div>\n    </div>\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-timelapse"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-52 line-height-72">\n                        {{vm.inbound.waiting || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.WAITING\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.WAITING_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.WAITING\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-in-talk"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-52 line-height-72">\n                        {{vm.inbound.talking || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TALKING\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.TALKING_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TALKING\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-52 line-height-72">\n                        {{vm.inbound.answered || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.INBOUND_ANSWERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.INBOUND_ANSWERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.INBOUND_ANSWERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-missed"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-52 line-height-72">\n                        {{vm.inbound.abandoned || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ABANDONED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.ABANDONED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ABANDONED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-outgoing"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.inbound.total || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TOTAL_OFFERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.TOTAL_OFFERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TOTAL_OFFERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-timer-sand"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-42 line-height-72">\n                        {{ vm.inbound.avgHoldTime || \'00:00:00\' }}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_HOLD_TIME\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_HOLD_TIME_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_HOLD_TIME\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-in-talk"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-42 line-height-72">\n                        {{ vm.inbound.avgTalkTime || \'00:00:00\' }}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_TALK_TIME\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_TALK_TIME_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_TALK_TIME\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-42 line-height-72">\n                        {{ vm.inbound.answerRate || 0 }}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.INBOUND_ANSWER_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.INBOUND_ANSWER_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.INBOUND_ANSWER_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-42 line-height-72">\n                        {{ vm.inbound.abandonRate || 0 }}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ABANDON_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.ABANDON_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ABANDON_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-dots"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.inbound.originated || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ORIGINATED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.ORIGINATED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ORIGINATED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n</div>\n\x3c!-- / WIDGET OUTBOUND --\x3e\n\n\x3c!-- WIDGET INBOUND --\x3e\n<div class="dashboard-container md-background-bg md-whiteframe-1dp">\n    <div class="pb-16" layout="row" layout-align="start center">\n        <md-icon md-font-icon="icon-phone-outgoing" class="m-0 mr-16"></md-icon>\n        <div class="h2 secondary-text" translate="DASHBOARDS.TODAY_IVR_CAMPAIGNS_STATS">Today IVR campaigns stats</div>\n    </div>\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-dots"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.ivr.originated || 0}}/{{vm.ivr.limitCalls || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ORIGINATED\' | translate | uppercase}}/{{\'DASHBOARDS.LIMITED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.LIMITED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ORIGINATEDLIMITED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n</div>\n\x3c!-- / WIDGET IVR --\x3e'),e.put("app/main/apps/dashboards/views/general/user/user.general.html",'<div id="dashboard-general" class="page-layout simple right-sidenav" layout="row">\n    \x3c!-- CENTER --\x3e\n    <div class="center" flex ms-scroll>\n        \x3c!-- CONTENT --\x3e\n        <div class="content">\n            \x3c!--  NOTE: aggoiungere nel controller ng-if="vm.hasPermission()" --\x3e\n            <md-tabs md-selected="vm.currentTab" ng-if="vm.hasPermission()" md-dynamic-height>\n                <md-tab label="{{\'DASHBOARDS.VOICE\' | translate}}" ui-sref="app.dashboards.general.voice">\n                    <div ui-view="voice"></div>\n                </md-tab>\n                <md-tab label="{{\'DASHBOARDS.MOTIONDIALER\' | translate}}" ui-sref="app.dashboards.general.dialer">\n                    <div ui-view="dialer"></div>\n                </md-tab>\n            </md-tabs>\n        </div>\n        \x3c!-- END CONTENT --\x3e\n\n        <md-card ng-if="!vm.hasPermission()">\n            <md-card-header>\n                <md-card-header-text>\n                    <span class="md-title" translate="DASHBOARDS.WELCOME_TO_MOTION">Welcome to Motion</span>\n                </md-card-header-text>\n            </md-card-header>\n            <md-card-title>\n                <md-card-title-text>\n                    <span class="md-headline" translate="DASHBOARDS.WELCOME_MESSAGE">Use the left sidebar to navigate through sections.</span>\n                </md-card-title-text>\n            </md-card-title>\n            <md-card-content>\n            </md-card-content>\n        </md-card>\n    </div>\n</div>'),e.put("app/main/apps/dashboards/views/general/user/voice/user.general.voice.html",'\x3c!-- WIDGET INBOUND --\x3e\n<div class="dashboard-container md-background-bg md-whiteframe-1dp">\n    <div class="pb-16" layout="row" layout-align="start center">\n        <md-icon md-font-icon="icon-phone-incoming" class="m-0 mr-16"></md-icon>\n        <div class="h2 secondary-text" translate="DASHBOARDS.TODAY_INBOUND_STATS">Today Inbound STATS</div>\n    </div>\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-timelapse"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-52 line-height-72">\n                        {{vm.inbound.waiting || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.WAITING\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.WAITING_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.WAITING\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-in-talk"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-52 line-height-72">\n                        {{vm.inbound.talking || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TALKING\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.TALKING_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TALKING\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-52 line-height-72">\n                        {{vm.inbound.answered || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.INBOUND_ANSWERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.INBOUND_ANSWERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.INBOUND_ANSWERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-missed"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-52 line-height-72">\n                        {{vm.inbound.abandoned || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ABANDONED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.ABANDONED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ABANDONED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-incoming"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.inbound.total || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TOTAL_OFFERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.TOTAL_OFFERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TOTAL_OFFERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-timer-sand"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-42 line-height-72">\n                        {{ vm.inbound.avgHoldTime || \'00:00:00\' }}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_HOLD_TIME\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_HOLD_TIME_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_HOLD_TIME\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-in-talk"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-42 line-height-72">\n                        {{ vm.inbound.avgTalkTime || \'00:00:00\' }}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_TALK_TIME\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_TALK_TIME_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_TALK_TIME\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-42 line-height-72">\n                        {{ vm.inbound.answerRate || 0 }}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.INBOUND_ANSWER_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.INBOUND_ANSWER_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.INBOUND_ANSWER_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-42 line-height-72">\n                        {{ vm.inbound.abandonRate || 0 }}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ABANDON_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.ABANDON_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ABANDON_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-dots"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.inbound.unmanaged || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.UNMANAGED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.UNMANAGED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.UNMANAGED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n</div>\n\x3c!-- / WIDGET INBOUND --\x3e\n\n\x3c!-- WIDGET OUTBOUND --\x3e\n<div class="dashboard-container md-background-bg md-whiteframe-1dp">\n    <div class="pb-16" layout="row" layout-align="start center">\n        <md-icon md-font-icon="icon-phone-outgoing" class="m-0 mr-16"></md-icon>\n        <div class="h2 secondary-text" translate="DASHBOARDS.TODAY_OUTBOUND_STATS">Today Outbound STATS</div>\n    </div>\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-outgoing"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-52 line-height-72">\n                        {{vm.outbound.total || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TOTAL\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.TOTAL_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TOTAL\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-52 line-height-72">\n                        {{vm.outbound.answered || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.OUTBOUND_ANSWERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.OUTBOUND_ANSWERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.OUTBOUND_ANSWERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-clock"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-42 line-height-72">\n                        {{vm.outbound.sumDuration || 0 | secToTime | date:\'HH:mm:ss\'}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TOT_DURATION\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.TOT_DURATION_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TOT_DURATION\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-division"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-42 line-height-72">\n                        {{vm.outbound.total ? ((vm.outbound.sumDuration / vm.outbound.total) | number: 0) : 0 | secToTime | date:\'HH:mm:ss\'}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_DURATION\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_DURATION_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_DURATION\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-42 line-height-72">\n                        {{vm.outbound.total ? (vm.outbound.answered / vm.outbound.total * 100) : 0 | number: 1}}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.OUTBOUND_ANSWER_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.OUTBOUND_ANSWER_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.OUTBOUND_ANSWER_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n</div>\n\x3c!-- / WIDGET OUTBOUND --\x3e'),e.put("app/main/apps/fax/views/faxAccounts/create/dialog.html",'<md-dialog class="faxAccount-dialog" aria-label="New FaxAccount">\n    <form name="faxAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="FAX.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.faxAccount.name" required autofocus>\n                <div ng-messages="faxAccountForm.name.$error" ng-show="faxAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.TRUNK">trunk</label>\n                <md-select ng-model="vm.faxAccount.TrunkId" required>\n                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                </md-select>\n                <div ng-messages="faxAccountForm.TrunkId.$error" ng-show="faxAccountForm.TrunkId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.TRUNK_REQUIRED">trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.LOCALSTATIONID">localstationid</label>\n                <input type="text" name="localstationid" ng-model="vm.faxAccount.localstationid" required>\n                <div class="hint"><span translate="FAX.HELP.LOCALSTATIONID"></span></div>\n                <div ng-messages="faxAccountForm.localstationid.$error" ng-show="faxAccountForm.localstationid.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.LOCALSTATIONID_REQUIRED">localstationid field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.faxAccount.description">\n                <div ng-messages="faxAccountForm.description.$error" ng-show="faxAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFaxAccount" ng-click="vm.saveFaxAccount()" class="send-button md-accent md-raised" ng-disabled="faxAccountForm.$invalid || faxAccountForm.$pristine" aria-label="SAVE" translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFaxAccount" ng-click="vm.addNewFaxAccount()" class="send-button md-accent md-raised" ng-disabled="faxAccountForm.$invalid" aria-label="ADD" translate="FAX.ADD_FAXACCOUNT" translate-attr-aria-label="FAX.ADD_FAXACCOUNT">\n                    ADD FAXACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFaxAccount" ng-click="vm.deleteFaxAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="FAX.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="FAX.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/fax/views/faxAccounts/edit/faxDispositions/dialog.html",'<md-dialog class="faxDisposition-dialog" aria-label="New FaxDisposition">\n    <form name="faxDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="FAX.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.faxDisposition.name" required autofocus>\n                <div ng-messages="faxDispositionForm.name.$error" ng-show="faxDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFaxDisposition" ng-click="vm.saveFaxDisposition()" class="send-button md-accent md-raised" ng-disabled="faxDispositionForm.$invalid || faxDispositionForm.$pristine" aria-label="SAVE" translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFaxDisposition" ng-click="vm.addNewFaxDisposition()" class="send-button md-accent md-raised" ng-disabled="faxDispositionForm.$invalid" aria-label="ADD" translate="FAX.ADD_FAXDISPOSITION" translate-attr-aria-label="FAX.ADD_FAXDISPOSITION">\n                    ADD FAXDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFaxDisposition" ng-click="vm.deleteFaxDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="FAX.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="FAX.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/fax/views/faxAccounts/edit/view.html",'<div id="fax-faxAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-faxAccounts-button md-icon-button" aria-label="Go to faxAccounts" ng-click="vm.gotoFaxAccounts()" translate translate-attr-aria-label="FAX.GO_TO_FAXACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.faxAccount.userpic" class="faxAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.faxAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.faxAccount.userpic" class="faxAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/faxAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.faxAccount.id}} {{vm.faxAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="FAX.CREATED_AT"></span> <span>{{vm.faxAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveFaxAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (advancedForm.$invalid) || (faxDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid)"\n                translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.faxAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.HEADERINFO">headerinfo</label>\n                                <input type="text" name="headerinfo" ng-model="vm.faxAccount.headerinfo" required>\n                                <div class="hint"><span translate="FAX.HELP.HEADERINFO"></span></div>\n                                <div ng-messages="generalForm.headerinfo.$error" ng-show="generalForm.headerinfo.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.HEADERINFO_REQUIRED">headerinfo field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.TRUNK">trunk</label>\n                                <md-select ng-model="vm.faxAccount.TrunkId" required>\n                                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkId.$error" ng-show="generalForm.TrunkId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.TRUNK_REQUIRED">trunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.LOCALSTATIONID">localstationid</label>\n                                <input type="text" name="localstationid" ng-model="vm.faxAccount.localstationid" required>\n                                <div class="hint"><span translate="FAX.HELP.LOCALSTATIONID"></span></div>\n                                <div ng-messages="generalForm.localstationid.$error" ng-show="generalForm.localstationid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.LOCALSTATIONID_REQUIRED">localstationid field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.LIST">List</label>\n                                <md-select ng-model="vm.faxAccount.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.faxAccount.fidelity" aria-label="fidelity"><span translate="FAX.FIDELITY">fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.faxAccount.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.faxAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.faxAccount.ecm" aria-label="ECM"><span translate="FAX.ECM">ECM</span></md-switch>\n                                <div class="hint"><span translate="FAX.HELP.ECM"></span></div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.MINRATE">minrate</label>\n                                <md-select ng-model="vm.faxAccount.minrate" required>\n                                    <md-option ng-value="\'2400\'">2400</md-option>\n                                    <md-option ng-value="\'4800\'">4800</md-option>\n                                    <md-option ng-value="\'7200\'">7200</md-option>\n                                    <md-option ng-value="\'9600\'">9600</md-option>\n                                    <md-option ng-value="\'12000\'">12000</md-option>\n                                    <md-option ng-value="\'14400\'">14400</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="FAX.HELP.MINRATE"></span></div>\n                                <div ng-messages="advancedForm.minrate.$error" ng-show="advancedForm.minrate.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.MINRATE_REQUIRED">minrate field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.MAXRATE">maxrate</label>\n                                <md-select ng-model="vm.faxAccount.maxrate" required>\n                                    <md-option ng-value="\'2400\'">2400</md-option>\n                                    <md-option ng-value="\'4800\'">4800</md-option>\n                                    <md-option ng-value="\'7200\'">7200</md-option>\n                                    <md-option ng-value="\'9600\'">9600</md-option>\n                                    <md-option ng-value="\'12000\'">12000</md-option>\n                                    <md-option ng-value="\'14400\'">14400</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="FAX.HELP.MAXRATE"></span></div>\n                                <div ng-messages="advancedForm.maxrate.$error" ng-show="advancedForm.maxrate.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.MAXRATE_REQUIRED">maxrate field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.MODEM">modem</label>\n                                <input type="text" name="modem" ng-model="vm.faxAccount.modem" required>\n                                <div class="hint"><span translate="FAX.HELP.MODEM"></span></div>\n                                <div ng-messages="advancedForm.modem.$error" ng-show="advancedForm.modem.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.MODEM_REQUIRED">modem field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.GATEWAY">gateway</label>\n                                <input type="text" name="gateway" ng-model="vm.faxAccount.gateway" required>\n                                <div class="hint"><span translate="FAX.HELP.GATEWAY"></span></div>\n                                <div ng-messages="advancedForm.gateway.$error" ng-show="advancedForm.gateway.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.GATEWAY_REQUIRED">gateway field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.FAXDETECT">faxdetect</label>\n                                <input type="text" name="faxdetect" ng-model="vm.faxAccount.faxdetect" required>\n                                <div class="hint"><span translate="FAX.HELP.FAXDETECT"></span></div>\n                                <div ng-messages="advancedForm.faxdetect.$error" ng-show="advancedForm.faxdetect.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.FAXDETECT_REQUIRED">faxdetect field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.T38TIMEOUT">t38timeout</label>\n                                <input type="number" name="t38timeout" ng-model="vm.faxAccount.t38timeout" required>\n                                <div class="hint"><span translate="FAX.HELP.T38TIMEOUT"></span></div>\n                                <div ng-messages="advancedForm.t38timeout.$error" ng-show="advancedForm.t38timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.T38TIMEOUT_REQUIRED">t38timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.SIP">SIP</label>\n                                <md-select ng-model="vm.faxAccount.tech" required>\n                                    <md-option ng-value="\'SIP\'">SIP</md-option>\n                                    <md-option ng-value="\'IAX\'">IAX</md-option>\n                                    <md-option ng-value="\'DADHI\'">DADHI</md-option>\n                                    <md-option ng-value="\'KHOMP\'">KHOMP</md-option>\n                                </md-select>\n                                <div ng-messages="advancedForm.tech.$error" ng-show="advancedForm.tech.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.SIP_REQUIRED">SIP field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container faxdispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="FaxAccountFaxDispositionsController as vm_dc" ng-init="vm_dc.init(vm.faxAccount)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedFaxAccountFaxDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="FAX.FAXDISPOSITIONS">FaxDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event)" aria-label="add faxDisposition" translate translate-attr-label="FAX.ADD_FAXDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedFaxAccountFaxDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedFaxAccountFaxDispositions.length}} {{vm_dc.selectedFaxAccountFaxDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedFaxAccountFaxDispositions($event)" aria-label="delete selected" translate translate-attr-label="FAXACCOUNTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedFaxAccountFaxDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getFaxAccountFaxDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'FAX.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'FAX.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'FAX.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="faxDisposition" md-select-id="id" ng-repeat="faxDisposition in vm_dc.faxAccountFaxDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event, faxDisposition)" md-cell>{{faxDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event, faxDisposition)" md-cell>{{faxDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event, faxDisposition)" md-cell>{{faxDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="FAX.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event, faxDisposition)" translate="FAX.EDIT_FAXDISPOSITION">\n                                                                Edit FaxDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(faxDisposition, $event)" translate="FAX.DELETE_FAXDISPOSITION">\n                                                                Delete FaxDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.faxAccountFaxDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="FAX.NO_FAXDISPOSITION_AVAILABLE">No faxdisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.faxAccountFaxDispositions.count}}" md-on-paginate="vm_dc.getFaxAccountFaxDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.faxAccount.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.faxAccount.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="FAX.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="faxAccount-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.faxAccount.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.faxAccount.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="FAX.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="faxAccount-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.faxAccount.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.faxAccount.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="FAX.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/fax/views/faxAccounts/faxAccounts.html",'<div id="faxAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-deskphone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="FAX.FAXACCOUNTS">FaxAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="FAX.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedFaxAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedFaxAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="FAX.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-faxAccounts-count">\n                    <span>{{vm.selectedFaxAccounts.length}}</span>\n                <span translate="FAX.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="FAXACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllFaxAccounts()" translate="FAX.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectFaxAccounts()" translate="FAX.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedFaxAccounts" filename="faxAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedFaxAccounts($event)" aria-label="delete selected" translate translate-attr-label="FAXACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- FAXACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedFaxAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getFaxAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'FAX.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'FAX.NAME\' | translate }}</th>\n                                <th md-column md-order-by="TrunkId">{{ \'FAX.TRUNK\' | translate }}</th>\n                                <th md-column md-order-by="localstationid">{{ \'FAX.LOCALSTATIONID\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'FAX.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.faxAccounts.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="FAX.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="faxAccount" md-select-id="id" ng-repeat="faxAccount in vm.faxAccounts.rows">\n                                <td md-cell ng-if="faxAccount.userpic"><img class="avatar" alt="{{faxAccount.name}}" ng-src="api/users/{{faxAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!faxAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{faxAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="id ">{{faxAccount.id}}</td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="name ">{{faxAccount.name}}</td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="TrunkId ">{{ TrunkId = vm.trunks[faxAccount.TrunkId]; TrunkId.name }}</td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="localstationid ">{{faxAccount.localstationid}}</td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="description ">{{faxAccount.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="FAX.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(faxAccount, $event)" translate="FAX.EDIT_FAXACCOUNT">\n                                                    Edit FaxAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(faxAccount, $event)" translate="FAX.DELETE_FAXACCOUNT">\n                                                    Delete FaxAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.faxAccounts.count}}" md-on-paginate="vm.getFaxAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / FAXACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD FAXACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-faxAccount-button" ng-click="vm.createOrEditFaxAccount($event)" aria-label="add faxAccount" translate translate-attr-aria-label="FAX.ADD_FAXACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD FAXACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/fax/views/faxQueues/create/dialog.html",'<md-dialog class="faxQueue-dialog" aria-label="New FaxQueue">\n    <form name="faxQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="FAX.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.faxQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="faxQueueForm.name.$error" ng-show="faxQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="FAX.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.faxQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="faxQueueForm.strategy.$error" ng-show="faxQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.faxQueue.timeout" required>\n                <div ng-messages="faxQueueForm.timeout.$error" ng-show="faxQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.faxQueue.description">\n                <div ng-messages="faxQueueForm.description.$error" ng-show="faxQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFaxQueue" ng-click="vm.saveFaxQueue()" class="send-button md-accent md-raised" ng-disabled="faxQueueForm.$invalid || faxQueueForm.$pristine" aria-label="SAVE" translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFaxQueue" ng-click="vm.addNewFaxQueue()" class="send-button md-accent md-raised" ng-disabled="faxQueueForm.$invalid" aria-label="ADD" translate="FAX.ADD_FAXQUEUE" translate-attr-aria-label="FAX.ADD_FAXQUEUE">\n                    ADD FAXQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFaxQueue" ng-click="vm.deleteFaxQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="FAX.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="FAX.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/fax/views/faxQueues/edit/teamadd/teamadd.html",'<md-dialog class="faxQueue-dialog" aria-label="faxQueue">\n    <form name="faxQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="FAX.TEAMADD_FAXQUEUE">Add Team in FAXQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="FAX.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="faxQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/fax/views/faxQueues/edit/view.html",'<div id="fax-faxQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-faxQueues-button md-icon-button" aria-label="Go to faxQueues" ng-click="vm.gotoFaxQueues()" translate translate-attr-aria-label="FAX.GO_TO_FAXQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.faxQueue.userpic" class="faxQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.faxQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.faxQueue.userpic" class="faxQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/faxQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.faxQueue.id}} {{vm.faxQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="FAX.CREATED_AT"></span> <span>{{vm.faxQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.faxQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="FAX.TEAMADD_FAXQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveFaxQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.faxQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="FAX.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.faxQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.faxQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.faxQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/fax/views/faxQueues/faxQueues.html",'<div id="faxQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-deskphone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="FAX.FAXQUEUES">FaxQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="FAX.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedFaxQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedFaxQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="FAX.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-faxQueues-count">\n                    <span>{{vm.selectedFaxQueues.length}}</span>\n                <span translate="FAX.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="FAXQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllFaxQueues()" translate="FAX.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectFaxQueues()" translate="FAX.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedFaxQueues" filename="faxQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedFaxQueues($event)" aria-label="delete selected" translate translate-attr-label="FAXQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- FAXQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedFaxQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getFaxQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'FAX.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'FAX.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'FAX.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.faxQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="FAX.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="faxQueue" md-select-id="id" ng-repeat="faxQueue in vm.faxQueues.rows">\n                                <td md-cell ng-if="faxQueue.userpic"><img class="avatar" alt="{{faxQueue.name}}" ng-src="api/users/{{faxQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!faxQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{faxQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditFaxQueue($event, faxQueue)" md-cell class="id ">{{faxQueue.id}}</td>\n                                <td ng-click="vm.createOrEditFaxQueue($event, faxQueue)" md-cell class="name ">{{faxQueue.name}}</td>\n                                <td ng-click="vm.createOrEditFaxQueue($event, faxQueue)" md-cell class="strategy ">{{ vm.arraystrategy[faxQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="FAX.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(faxQueue, $event)" translate="FAX.EDIT_FAXQUEUE">\n                                                    Edit FaxQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(faxQueue, $event)" translate="FAX.DELETE_FAXQUEUE">\n                                                    Delete FaxQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.faxQueues.count}}" md-on-paginate="vm.getFaxQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / FAXQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD FAXQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-faxQueue-button" ng-click="vm.createOrEditFaxQueue($event)" aria-label="add faxQueue" translate translate-attr-aria-label="FAX.ADD_FAXQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD FAXQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/help/views/about/about.html",'<div id="maintenance" class="flex-scrollable" layout="column" ms-scroll>\n    <div id="maintenance-form-wrapper" layout="column" layout-align="center center">\n        <div id="maintenance-form" class="md-whiteframe-8dp">\n            <div>\n                <img src="assets/images/logos/login.png" alt="motion_logo_login" />\n            </div>\n\n            <br>\n\n            <div>\n                <div class="info-line">\n                    <div class="title">Useful pages</div>\n                </div>\n                <section layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                    <div layout="column">\n                        <a class="md-fab md-mini md-button grey-bg" href="https://wiki.xcallymotion.com/display/XMD/Welcome" target="_blank">\n                            <md-icon md-font-icon="icon-wikipedia"></md-icon>\n                        </a>\n                        <div class="info"><a href="https://wiki.xcallymotion.com/display/XMD/Welcome" target="_blank">Wiki</a></div>\n                    </div>\n\n                    <div layout="column">\n                        <a class="md-fab md-mini md-button md-accent" href="/apidoc" target="_blank">\n                            <md-icon md-font-icon="icon-apple-mobileme"></md-icon>\n                        </a>\n                        <div class="info"><a href="/apidoc" target="_blank">API</a></div>\n                    </div>\n\n                    <div layout="column">\n                        <a class="md-fab md-mini md-button orange-bg" href="http://www.xcally.com/bar/phonebar/Setup.msi" target="_blank">\n                            <md-icon md-font-icon="icon-headphones"></md-icon>\n                        </a>\n                        <div class="info"><a href="http://www.xcally.com/bar/phonebar/Setup.msi" target="_blank">Phonebar</a></div>\n                    </div>\n\n                    <div layout="column">\n                        <a class="md-fab md-mini md-button green-bg" href="/demo" target="_blank">\n                            <md-icon md-font-icon="icon-console"></md-icon>\n                        </a>\n                        <div class="info"><a href="/demo" target="_blank">Demo</a></div>\n                    </div>\n\n                </section>\n\n                <br>\n\n                <div class="info-line">\n                    <div class="title">Follow us on</div>\n                </div>\n                <section layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                    <a class="md-fab md-mini md-button blue-900-bg" href="https://www.facebook.com/xcallymotion" target="_blank">\n                        <md-icon md-font-icon="icon-facebook"></md-icon>\n                    </a>\n\n                    <a class="md-fab md-mini md-button" href="https://twitter.com/xcallymotion" target="_blank">\n                        <md-icon md-font-icon="icon-twitter"></md-icon>\n                    </a>\n                    <a class="md-fab md-mini md-button md-warn" href="https://plus.google.com/+Xcally" target="_blank">\n                        <md-icon md-font-icon="icon-google-plus"></md-icon>\n                    </a>\n                    <a class="md-fab md-mini md-button light-blue-800-bg" href="https://www.linkedin.com/company/xcally" target="_blank">\n                        <md-icon md-font-icon="icon-linkedin"></md-icon>\n                    </a>\n                </section>\n\n                <br>\n\n                <div class="info-line">\n                    <div class="title" translate="HELP.CONTACT_US">Contact Us</div>\n                </div>\n                <div class="info-line">\n                    <div class="info"><a href="mailto:support@xcally.com" target="_top">support@xcally.com</a></div>\n                </div>\n\n                <br>\n\n                <div class="info">xCALLY Motion <u>{{vm.info.current}}</u> | <a href="https://wiki.xcallymotion.com/display/XMV/Motion+GUI#MotionGUI-Version{{vm.info.current}}" target="_blank">Changelog</a></div>\n\n                <br>\n\n                <div class="info">xCALLY© 2016 - 2018 | Powered by Xenialab | <a href="http://www.xcally.com/support/eula-xcally-license-en.pdf" target="_blank">EULA</a></div>\n\n                <br>\n\n                <div class="info"><a href="https://www.xenialab.com/" target="_blank">www.xenialab.com</a> | <a href="https://www.xcallymotion.com/" target="_blank">www.xcallymotion.com</a></div>\n            </div>\n        </div>\n    </div>\n</div>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/create/dialog.html",'<md-dialog class="freshdeskAccount-dialog" aria-label="New FreshdeskAccount">\n    <form name="freshdeskAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.freshdeskAccount.name" required autofocus>\n                <div ng-messages="freshdeskAccountForm.name.$error" ng-show="freshdeskAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                <input type="text" name="username" ng-model="vm.freshdeskAccount.username" required>\n                <div ng-messages="freshdeskAccountForm.username.$error" ng-show="freshdeskAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.URI">Uri</label>\n                <input type="url" name="remoteUri" ng-model="vm.freshdeskAccount.remoteUri" required>\n                <div ng-messages="freshdeskAccountForm.remoteUri.$error" ng-show="freshdeskAccountForm.remoteUri.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.APIKEY">ApiKey</label>\n                <input type="text" name="apiKey" ng-model="vm.freshdeskAccount.apiKey" required>\n                <div ng-messages="freshdeskAccountForm.apiKey.$error" ng-show="freshdeskAccountForm.apiKey.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.APIKEY_REQUIRED">ApiKey field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                <input type="url" name="serverUrl" ng-model="vm.freshdeskAccount.serverUrl">\n                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                <div ng-messages="freshdeskAccountForm.serverUrl.$error" ng-show="freshdeskAccountForm.serverUrl.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.freshdeskAccount.description">\n                <div ng-messages="freshdeskAccountForm.description.$error" ng-show="freshdeskAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFreshdeskAccount" ng-click="vm.saveFreshdeskAccount()" class="send-button md-accent md-raised" ng-disabled="freshdeskAccountForm.$invalid || freshdeskAccountForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFreshdeskAccount" ng-click="vm.addNewFreshdeskAccount()" class="send-button md-accent md-raised" ng-disabled="freshdeskAccountForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_FRESHDESKACCOUNT" translate-attr-aria-label="INTEGRATIONS.ADD_FRESHDESKACCOUNT">\n                    ADD FRESHDESKACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFreshdeskAccount" ng-click="vm.deleteFreshdeskAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/edit/configurations/dialog.html",'<md-dialog class="freshdeskConfiguration-dialog" aria-label="New FreshdeskConfiguration">\n    <form name="freshdeskConfigurationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.freshdeskConfiguration.name" required autofocus>\n                <div ng-messages="freshdeskConfigurationForm.name.$error" ng-show="freshdeskConfigurationForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.freshdeskConfiguration.channel" required>\n\n                    <md-option ng-value="\'voice\'"> {{ \'INTEGRATIONS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="freshdeskConfigurationForm.channel.$error" ng-show="freshdeskConfigurationForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.TYPE">Type</label>\n                <md-select ng-model="vm.freshdeskConfiguration.type" required>\n\n                    <md-option ng-value="\'inbound\'"> {{ \'INTEGRATIONS.INBOUND_IN_QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'outbound\'"> {{ \'INTEGRATIONS.OUTBOUND_CALL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="freshdeskConfigurationForm.type.$error" ng-show="freshdeskConfigurationForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFreshdeskConfiguration" ng-click="vm.saveFreshdeskConfiguration()" class="send-button md-accent md-raised" ng-disabled="freshdeskConfigurationForm.$invalid || freshdeskConfigurationForm.$pristine" aria-label="SAVE"\n                    translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFreshdeskConfiguration" ng-click="vm.addNewFreshdeskConfiguration()" class="send-button md-accent md-raised" ng-disabled="freshdeskConfigurationForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_FRESHDESKCONFIGURATION"\n                    translate-attr-aria-label="INTEGRATIONS.ADD_FRESHDESKCONFIGURATION">\n                    ADD FRESHDESKCONFIGURATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFreshdeskConfiguration" ng-click="vm.deleteFreshdeskConfiguration($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/edit/item/dialog.html",'<md-dialog class="freshdeskAccount-item-dialog" aria-label="New Item">\n    <form name="freshdeskAccountItemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div ng-switch="vm.type">\n                <div ng-switch-when="subject">\n                    \x3c!-- SUBJECT SECTION --\x3e\n                    <div ng-include="\'/subject.html\'"></div>\n                    \x3c!-- / SUBJECT SECTION --\x3e\n                </div>\n                <div ng-switch-when="description">\n                    \x3c!-- DESCRIPTION SECTION --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="INTEGRATIONS.TYPE">Type</label>\n                        <md-select name="type" ng-model="vm.item.type" required>\n                            <md-option value="string">String</md-option>\n                            <md-option value="keyValue">Key Value</md-option>\n                        </md-select>\n                        <div ng-messages="freshdeskAccountItemForm.type.$error" ng-show="freshdeskAccountItemForm.type.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n                        <label translate="INTEGRATIONS.CONTENT">Content</label>\n                        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n                        <div ng-messages="freshdeskAccountItemForm.content.$error" ng-show="freshdeskAccountItemForm.content.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <div ng-if="vm.item.type == \'keyValue\'">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.KEY">Key</label>\n                            <input type="text" name="key" ng-model="vm.item.key" required md-autofocus>\n                            <div ng-messages="freshdeskAccountItemForm.key.$error" ng-show="freshdeskAccountItemForm.key.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.TYPE">Type</label>\n                            <md-select name="keyType" ng-model="vm.item.keyType" required>\n                                <md-option value="string">String</md-option>\n                                <md-option value="variable">Variable</md-option>\n                                <md-option value="customVariable">Custom Variable</md-option>\n                            </md-select>\n                            <div ng-messages="freshdeskAccountItemForm.keyType.$error" ng-show="freshdeskAccountItemForm.keyType.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'string\'">\n                            <label translate="INTEGRATIONS.CONTENT">Content</label>\n                            <input type="text" name="keyContent" ng-model="vm.item.keyContent" required md-autofocus>\n                            <div ng-messages="freshdeskAccountItemForm.keyContent.$error" ng-show="freshdeskAccountItemForm.keyContent.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'variable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n                                <md-optgroup label="Voice: Queue">\n                                    <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Voice: Outbound">\n                                    <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="freshdeskAccountItemForm.variableName.$error" ng-show="freshdeskAccountItemForm.variableName.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'customVariable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select ng-model="vm.item.VariableId" required>\n                                <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n                            </md-select>\n                        </md-input-container>\n                    </div>\n                    \x3c!-- / DESCRIPTION SECTION --\x3e\n                </div>\n                <div ng-switch-when="field">\n                    \x3c!-- FIELD SECTION --\x3e\n                    <div ng-if="vm.accountConnected">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.FIELD">FIELD</label>\n                            <md-select name="customField" ng-model="vm.customField" required>\n                                <md-optgroup label="Standard">\n                                    <md-option ng-value="standard" ng-repeat="standard in vm.fields | filter: {custom: false} ">{{standard.name}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Custom">\n                                    <md-option ng-value="custom" ng-repeat="custom in vm.fields | filter: {custom: true} ">{{custom.name}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="freshdeskAccountItemForm.customField.$error" ng-show="freshdeskAccountItemForm.customField.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.FIELD_REQUIRED">Field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- CUSTOM FIELD --\x3e\n                        <div ng-if="vm.customField && vm.customField.custom" ng-include="\'/subject.html\'"></div>\n                        \x3c!-- / CUSTOM FIELD --\x3e\n                        \x3c!-- STANDARD FIELD --\x3e\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="option" ng-model="vm.item.content" required>\n                                <md-option ng-value="option.value" ng-repeat="option in vm.customField.options">{{option.name}}</md-option>\n                            </md-select>\n                            <div ng-messages="freshdeskAccountItemForm.option.$error" ng-show="freshdeskAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && !vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <input type="text" name="option" ng-model="vm.item.content" required>\n                            <div ng-messages="freshdeskAccountItemForm.option.$error" ng-show="freshdeskAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- / STANDARD FIELD --\x3e\n                    </div>\n                    <div ng-if="!vm.accountConnected">\n                        <p>Account is not connected. Please check your configurations!</p>\n                    </div>\n                    \x3c!-- / FIELD SECTION --\x3e\n                </div>\n                <div ng-switch-default>\n                    <p>No Item</p>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newItem" ng-click="vm.saveItem()" class="send-button md-accent md-raised" ng-disabled="freshdeskAccountItemForm.$invalid || freshdeskAccountItemForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newItem" ng-click="vm.addNewItem()" class="send-button md-accent md-raised" ng-disabled="freshdeskAccountItemForm.$invalid || freshdeskAccountItemForm.$pristine" aria-label="ADD" translate="INTEGRATIONS.ADD" translate-attr-aria-label="INTEGRATIONS.ADD">\n                    ADD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newItem" ng-click="vm.deleteItem($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>\n\n<script type="text/ng-template" id="/subject.html">\n    <md-input-container class="md-block">\n        <label translate="INTEGRATIONS.TYPE">Type</label>\n        <md-select name="type" ng-model="vm.item.type" required>\n            <md-option value="string">String</md-option>\n            <md-option value="variable">Variable</md-option>\n            <md-option value="customVariable">Custom Variable</md-option>\n        </md-select>\n        <div ng-messages="freshdeskAccountItemForm.type.$error" ng-show="freshdeskAccountItemForm.type.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n        <label translate="INTEGRATIONS.CONTENT">Content</label>\n        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n        <div ng-messages="freshdeskAccountItemForm.content.$error" ng-show="freshdeskAccountItemForm.content.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'variable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n            <md-optgroup label="Voice: Queue">\n                <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n            </md-optgroup>\n            <md-optgroup label="Voice: Outbound">\n                <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n            </md-optgroup>\n        </md-select>\n        <div ng-messages="freshdeskAccountItemForm.variableName.$error" ng-show="freshdeskAccountItemForm.variableName.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'customVariable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select ng-model="vm.item.VariableId" required>\n            <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n        </md-select>\n    </md-input-container>\n<\/script>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/edit/view.html",'<div id="integrations-freshdeskAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-freshdeskAccounts-button md-icon-button" aria-label="Go to freshdeskAccounts" ng-click="vm.gotoFreshdeskAccounts()" translate translate-attr-aria-label="INTEGRATIONS.GO_TO_FRESHDESKACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.freshdeskAccount.userpic" class="freshdeskAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.freshdeskAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.freshdeskAccount.userpic" class="freshdeskAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/freshdeskAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.freshdeskAccount.id}} {{vm.freshdeskAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="INTEGRATIONS.CREATED_AT"></span> <span>{{vm.freshdeskAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveFreshdeskAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (configurationsForm.$invalid)" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="freshdeskAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.freshdeskAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                                <input type="text" name="username" ng-model="vm.freshdeskAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.URI">Uri</label>\n                                <input type="url" name="remoteUri" ng-model="vm.freshdeskAccount.remoteUri" required>\n                                <div ng-messages="generalForm.remoteUri.$error" ng-show="generalForm.remoteUri.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.APIKEY">ApiKey</label>\n                                <input type="text" name="apiKey" ng-model="vm.freshdeskAccount.apiKey" required>\n                                <div ng-messages="generalForm.apiKey.$error" ng-show="generalForm.apiKey.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.APIKEY_REQUIRED">ApiKey field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                                <input type="url" name="serverUrl" ng-model="vm.freshdeskAccount.serverUrl">\n                                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                                <div ng-messages="generalForm.serverUrl.$error" ng-show="generalForm.serverUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.freshdeskAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="freshdeskAccount-detail-form-container configurations md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</div>\n                        </div>\n                        <div ng-controller="FreshdeskAccountConfigurationsController as vm_cc" ng-init="vm_cc.init(vm.freshdeskAccount)" layout="row">\n                            <md-card class="md-whiteframe-1dp" flex="30">\n                                <div layout="row" layout-align="center center">\n                                    <md-subheader flex="75" class="md-no-sticky">{{ \'INTEGRATIONS.CONFIGURATIONS\' | translate }}</md-subheader>\n                                    <md-button flex="25" ng-click="vm_cc.createOrEditFreshdeskConfiguration($event)" class="md-icon-button" aria-label="create freshdeskConfiguration">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                                <md-list>\n                                    <md-list-item layout="row" layout-align="center center" ng-repeat="freshdeskConfiguration in vm_cc.configurations" class="border-top" md-colors="{background: (vm_cc.selectedFreshdeskConfiguration == $index ? \'accent\' : \'grey-A100\')}" ng-click="vm_cc.getFreshdeskConfiguration($index)">\n                                        <span class="text-truncate" flex="80">{{ freshdeskConfiguration.name }}</span>\n                                        <md-menu>\n                                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                            </md-button>\n                                            <md-menu-content width="3">\n                                                <md-menu-item>\n                                                    <md-button ng-click="vm_cc.deleteFreshdeskConfiguration($event, freshdeskConfiguration)" translate="INTEGRATIONS.DELETE_FRESHDESKCONFIGURATION">\n                                                        Delete FreshdeskConfiguration\n                                                    </md-button>\n                                                </md-menu-item>\n                                            </md-menu-content>\n                                        </md-menu>\n                                    </md-list-item>\n                                </md-list>\n                            </md-card>\n                            <div flex></div>\n                            <md-card class="md-whiteframe-1dp" flex="65">\n                                <md-tabs ng-if="vm_cc.configurations.length" md-dynamic-height>\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.SUBJECTS">SUBJECTS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.subject = query" on-collapse="vm_cc.query.subject = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditSubject($event)" aria-label="add subject" translate translate-attr-label="INTEGRATIONS.ADD_SUBJECT">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedSubjects.length}} {{vm_cc.selectedSubjects.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedSubjects($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedSubjects">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="subject" md-select-id="id" ng-repeat="subject in vm_cc.subjects | filter: vm_cc.query.subject">\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="id ">{{subject.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="type ">\n                                                                <span ng-if="subject.FieldId">{{subject.nameField}}</span>\n                                                                <span ng-if="!subject.FieldId">{{subject.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="subject.type" ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell>\n                                                                <span ng-switch-when="string">{{subject.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{subject.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{subject.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{subject.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditSubject($event, subject)" translate="INTEGRATIONS.EDIT_SUBJECT">\n                                                                                Edit Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteSubjectConfirm($event, subject)" translate="INTEGRATIONS.DELETE_SUBJECT">\n                                                                                Delete Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.DESCRIPTIONS">DESCRIPTIONS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.description = query" on-collapse="vm_cc.query.description = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditDescription($event)" aria-label="add description" translate translate-attr-label="INTEGRATIONS.ADD_DESCRIPTION">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedDescriptions.length}} {{vm_cc.selectedDescriptions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedDescriptions($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedDescriptions">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="description" md-select-id="id" ng-repeat="description in vm_cc.descriptions | filter: vm_cc.query.description">\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="id ">{{description.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="type ">\n                                                                <span ng-if="description.FieldId">{{description.nameField}}</span>\n                                                                <span ng-if="!description.FieldId">{{description.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="description.type" ng-click="vm_cc.createOrEditDescription($event, description)" md-cell>\n                                                                <span ng-switch-when="string">{{description.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{description.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{description.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{description.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditDescription($event, description)" translate="INTEGRATIONS.EDIT_DESCRIPTION">\n                                                                                Edit Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteDescriptionConfirm($event, description)" translate="INTEGRATIONS.DELETE_DESCRIPTION">\n                                                                                Delete Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.FIELDS">FIELDS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.field = query" on-collapse="vm_cc.query.field = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditField($event)" aria-label="add field" translate translate-attr-label="INTEGRATIONS.ADD_FIELD">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedFields.length}} {{vm_cc.selectedFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedFields($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedFields">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="field" md-select-id="id" ng-repeat="field in vm_cc.fields | filter: vm_cc.query.field">\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="id ">{{field.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="type ">\n                                                                <span ng-if="field.FieldId">{{field.nameField}}</span>\n                                                                <span ng-if="!field.FieldId">{{field.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="field.type" ng-click="vm_cc.createOrEditField($event, field)" md-cell>\n                                                                <span ng-switch-when="string">{{field.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{field.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{field.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{field.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditField($event, field)" translate="INTEGRATIONS.EDIT_FIELD">\n                                                                                Edit Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteFieldConfirm($event, field)" translate="INTEGRATIONS.DELETE_FIELD">\n                                                                                Delete Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.TAGS">TAGS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-table-container class="md-whiteframe-1dp padding-20">\n                                                <md-input-container class="md-block">\n                                                    <label translate="INTEGRATIONS.TAGS">Tags</label>\n                                                    <md-select ng-model="vm_cc.selectedTags" ng-change="vm_cc.selectTagsChanged($event)" multiple>\n                                                        <md-option ng-value="tag.id" ng-repeat="tag in vm_cc.tags">{{ tag.name }}</md-option>\n                                                    </md-select>\n                                                </md-input-container>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n                                </md-tabs>\n                                <div class="padding-20" ng-if="!vm_cc.configurations.length" ng-click="vm_cc.createOrEditFreshdeskConfiguration($event)" layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                                    <div class="padding-20 md-whiteframe-3dp md-accent-bg" layout="column" layout-align="center center">\n                                        <md-button class="md-icon-button">\n                                            <md-icon md-font-icon="icon-plus"></md-icon>\n                                        </md-button>\n                                        <span aria-label="add configuration" translate translate-attr-label="INTEGRATIONS.ADD_CONFIGURATION">ADD CONFIGURATION</span>\n                                    </div>\n                                </div>\n                            </md-card>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/freshdeskAccounts.html",'<div id="freshdeskAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-heart" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="INTEGRATIONS.FRESHDESKACCOUNTS">FreshdeskAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="INTEGRATIONS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedFreshdeskAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedFreshdeskAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="INTEGRATIONS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-freshdeskAccounts-count">\n                    <span>{{vm.selectedFreshdeskAccounts.length}}</span>\n                <span translate="INTEGRATIONS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="FRESHDESKACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllFreshdeskAccounts()" translate="INTEGRATIONS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectFreshdeskAccounts()" translate="INTEGRATIONS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedFreshdeskAccounts" filename="freshdeskAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedFreshdeskAccounts($event)" aria-label="delete selected" translate translate-attr-label="FRESHDESKACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- FRESHDESKACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedFreshdeskAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getFreshdeskAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'INTEGRATIONS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="username">{{ \'INTEGRATIONS.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="remoteUri">{{ \'INTEGRATIONS.URI\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.freshdeskAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="INTEGRATIONS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="freshdeskAccount" md-select-id="id" ng-repeat="freshdeskAccount in vm.freshdeskAccounts.rows">\n                                <td md-cell ng-if="freshdeskAccount.userpic"><img class="avatar" alt="{{freshdeskAccount.name}}" ng-src="api/users/{{freshdeskAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!freshdeskAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{freshdeskAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditFreshdeskAccount($event, freshdeskAccount)" md-cell class="id ">{{freshdeskAccount.id}}</td>\n                                <td ng-click="vm.createOrEditFreshdeskAccount($event, freshdeskAccount)" md-cell class="name ">{{freshdeskAccount.name}}</td>\n                                <td ng-click="vm.createOrEditFreshdeskAccount($event, freshdeskAccount)" md-cell class="username ">{{freshdeskAccount.username}}</td>\n                                <td ng-click="vm.createOrEditFreshdeskAccount($event, freshdeskAccount)" md-cell class="remoteUri ">{{freshdeskAccount.remoteUri}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(freshdeskAccount, $event)" translate="INTEGRATIONS.EDIT_FRESHDESKACCOUNT">\n                                                    Edit FreshdeskAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(freshdeskAccount, $event)" translate="INTEGRATIONS.DELETE_FRESHDESKACCOUNT">\n                                                    Delete FreshdeskAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.freshdeskAccounts.count}}" md-on-paginate="vm.getFreshdeskAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / FRESHDESKACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD FRESHDESKACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-freshdeskAccount-button" ng-click="vm.createOrEditFreshdeskAccount($event)" aria-label="add freshdeskAccount" translate translate-attr-aria-label="INTEGRATIONS.ADD_FRESHDESKACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD FRESHDESKACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/integrations/views/salesforceAccounts/create/dialog.html",'<md-dialog class="salesforceAccount-dialog" aria-label="New SalesforceAccount">\n    <form name="salesforceAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.salesforceAccount.name" required autofocus>\n                <div ng-messages="salesforceAccountForm.name.$error" ng-show="salesforceAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                <input type="text" name="username" ng-model="vm.salesforceAccount.username" required>\n                <div ng-messages="salesforceAccountForm.username.$error" ng-show="salesforceAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.URI">Uri</label>\n                <input type="url" name="remoteUri" ng-model="vm.salesforceAccount.remoteUri" required>\n                <div ng-messages="salesforceAccountForm.remoteUri.$error" ng-show="salesforceAccountForm.remoteUri.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.salesforceAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                <div ng-messages="salesforceAccountForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newSalesforceAccount ">\n                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="salesforceAccountForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CLIENTID">ClientId</label>\n                <input type="text" name="clientId" ng-model="vm.salesforceAccount.clientId" required>\n                <div ng-messages="salesforceAccountForm.clientId.$error" ng-show="salesforceAccountForm.clientId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CLIENTID_REQUIRED">ClientId field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CLIENTSECRET">ClientSecret</label>\n                <input type="text" name="clientSecret" ng-model="vm.salesforceAccount.clientSecret" required>\n                <div ng-messages="salesforceAccountForm.clientSecret.$error" ng-show="salesforceAccountForm.clientSecret.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CLIENTSECRET_REQUIRED">ClientSecret field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.SECURITYTOKEN">SecurityToken</label>\n                <input type="text" name="securityToken" ng-model="vm.salesforceAccount.securityToken" required>\n                <div ng-messages="salesforceAccountForm.securityToken.$error" ng-show="salesforceAccountForm.securityToken.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.SECURITYTOKEN_REQUIRED">SecurityToken field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                <input type="url" name="serverUrl" ng-model="vm.salesforceAccount.serverUrl">\n                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                <div ng-messages="salesforceAccountForm.serverUrl.$error" ng-show="salesforceAccountForm.serverUrl.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.salesforceAccount.description">\n                <div ng-messages="salesforceAccountForm.description.$error" ng-show="salesforceAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSalesforceAccount" ng-click="vm.saveSalesforceAccount()" class="send-button md-accent md-raised" ng-disabled="salesforceAccountForm.$invalid || salesforceAccountForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSalesforceAccount" ng-click="vm.addNewSalesforceAccount()" class="send-button md-accent md-raised" ng-disabled="salesforceAccountForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_SALESFORCEACCOUNT" translate-attr-aria-label="INTEGRATIONS.ADD_SALESFORCEACCOUNT">\n                    ADD SALESFORCEACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSalesforceAccount" ng-click="vm.deleteSalesforceAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/salesforceAccounts/edit/configurations/dialog.html",'<md-dialog class="salesforceConfiguration-dialog" aria-label="New SalesforceConfiguration">\n    <form name="salesforceConfigurationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.salesforceConfiguration.name" required autofocus>\n                <div ng-messages="salesforceConfigurationForm.name.$error" ng-show="salesforceConfigurationForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.salesforceConfiguration.channel" required>\n\n                    <md-option ng-value="\'voice\'"> {{ \'INTEGRATIONS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="salesforceConfigurationForm.channel.$error" ng-show="salesforceConfigurationForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.TYPE">Type</label>\n                <md-select ng-model="vm.salesforceConfiguration.type" required>\n\n                    <md-option ng-value="\'inbound\'"> {{ \'INTEGRATIONS.INBOUND_IN_QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'outbound\'"> {{ \'INTEGRATIONS.OUTBOUND_CALL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="salesforceConfigurationForm.type.$error" ng-show="salesforceConfigurationForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSalesforceConfiguration" ng-click="vm.saveSalesforceConfiguration()" class="send-button md-accent md-raised" ng-disabled="salesforceConfigurationForm.$invalid || salesforceConfigurationForm.$pristine" aria-label="SAVE"\n                    translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSalesforceConfiguration" ng-click="vm.addNewSalesforceConfiguration()" class="send-button md-accent md-raised" ng-disabled="salesforceConfigurationForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_SALESFORCECONFIGURATION"\n                    translate-attr-aria-label="INTEGRATIONS.ADD_SALESFORCECONFIGURATION">\n                    ADD SALESFORCECONFIGURATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSalesforceConfiguration" ng-click="vm.deleteSalesforceConfiguration($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/salesforceAccounts/edit/item/dialog.html",'<md-dialog class="salesforceAccount-item-dialog" aria-label="New Item">\n    <form name="salesforceAccountItemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div ng-switch="vm.type">\n                <div ng-switch-when="subject">\n                    \x3c!-- SUBJECT SECTION --\x3e\n                    <div ng-include="\'/subject.html\'"></div>\n                    \x3c!-- / SUBJECT SECTION --\x3e\n                </div>\n                <div ng-switch-when="description">\n                    \x3c!-- DESCRIPTION SECTION --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="INTEGRATIONS.TYPE">Type</label>\n                        <md-select name="type" ng-model="vm.item.type" required>\n                            <md-option value="string">String</md-option>\n                            <md-option value="keyValue">Key Value</md-option>\n                        </md-select>\n                        <div ng-messages="salesforceAccountItemForm.type.$error" ng-show="salesforceAccountItemForm.type.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n                        <label translate="INTEGRATIONS.CONTENT">Content</label>\n                        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n                        <div ng-messages="salesforceAccountItemForm.content.$error" ng-show="salesforceAccountItemForm.content.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <div ng-if="vm.item.type == \'keyValue\'">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.KEY">Key</label>\n                            <input type="text" name="key" ng-model="vm.item.key" required md-autofocus>\n                            <div ng-messages="salesforceAccountItemForm.key.$error" ng-show="salesforceAccountItemForm.key.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.TYPE">Type</label>\n                            <md-select name="keyType" ng-model="vm.item.keyType" required>\n                                <md-option value="string">String</md-option>\n                                <md-option value="variable">Variable</md-option>\n                                <md-option value="customVariable">Custom Variable</md-option>\n                            </md-select>\n                            <div ng-messages="salesforceAccountItemForm.keyType.$error" ng-show="salesforceAccountItemForm.keyType.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'string\'">\n                            <label translate="INTEGRATIONS.CONTENT">Content</label>\n                            <input type="text" name="keyContent" ng-model="vm.item.keyContent" required md-autofocus>\n                            <div ng-messages="salesforceAccountItemForm.keyContent.$error" ng-show="salesforceAccountItemForm.keyContent.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'variable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n                                <md-optgroup label="Voice: Queue">\n                                    <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Voice: Outbound">\n                                    <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="salesforceAccountItemForm.variableName.$error" ng-show="salesforceAccountItemForm.variableName.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'customVariable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select ng-model="vm.item.VariableId" required>\n                                <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n                            </md-select>\n                        </md-input-container>\n                    </div>\n                    \x3c!-- / DESCRIPTION SECTION --\x3e\n                </div>\n                <div ng-switch-when="field">\n                    \x3c!-- FIELD SECTION --\x3e\n                    <div ng-if="vm.accountConnected">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.FIELD">FIELD</label>\n                            <md-select name="customField" ng-model="vm.customField" required>\n                                <md-optgroup label="Standard">\n                                    <md-option ng-value="standard" ng-repeat="standard in vm.fields | filter: {custom: false} ">{{standard.name}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Custom">\n                                    <md-option ng-value="custom" ng-repeat="custom in vm.fields | filter: {custom: true} ">{{custom.name}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="salesforceAccountItemForm.customField.$error" ng-show="salesforceAccountItemForm.customField.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.FIELD_REQUIRED">Field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- CUSTOM FIELD --\x3e\n                        <div ng-if="vm.customField && vm.customField.custom" ng-include="\'/subject.html\'"></div>\n                        \x3c!-- / CUSTOM FIELD --\x3e\n                        \x3c!-- STANDARD FIELD --\x3e\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="option" ng-model="vm.item.content" required>\n                                <md-option ng-value="option.value" ng-repeat="option in vm.customField.options">{{option.name}}</md-option>\n                            </md-select>\n                            <div ng-messages="salesforceAccountItemForm.option.$error" ng-show="salesforceAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && !vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <input type="text" name="option" ng-model="vm.item.content" required>\n                            <div ng-messages="salesforceAccountItemForm.option.$error" ng-show="salesforceAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- / STANDARD FIELD --\x3e\n                    </div>\n                    <div ng-if="!vm.accountConnected">\n                        <p>Account is not connected. Please check your configurations!</p>\n                    </div>\n                    \x3c!-- / FIELD SECTION --\x3e\n                </div>\n                <div ng-switch-default>\n                    <p>No Item</p>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newItem" ng-click="vm.saveItem()" class="send-button md-accent md-raised" ng-disabled="salesforceAccountItemForm.$invalid || salesforceAccountItemForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newItem" ng-click="vm.addNewItem()" class="send-button md-accent md-raised" ng-disabled="salesforceAccountItemForm.$invalid || salesforceAccountItemForm.$pristine" aria-label="ADD" translate="INTEGRATIONS.ADD" translate-attr-aria-label="INTEGRATIONS.ADD">\n                    ADD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newItem" ng-click="vm.deleteItem($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>\n\n<script type="text/ng-template" id="/subject.html">\n    <md-input-container class="md-block">\n        <label translate="INTEGRATIONS.TYPE">Type</label>\n        <md-select name="type" ng-model="vm.item.type" required>\n            <md-option value="string">String</md-option>\n            <md-option value="variable">Variable</md-option>\n            <md-option value="customVariable">Custom Variable</md-option>\n        </md-select>\n        <div ng-messages="salesforceAccountItemForm.type.$error" ng-show="salesforceAccountItemForm.type.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n        <label translate="INTEGRATIONS.CONTENT">Content</label>\n        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n        <div ng-messages="salesforceAccountItemForm.content.$error" ng-show="salesforceAccountItemForm.content.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'variable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n            <md-optgroup label="Voice: Queue">\n                <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n            </md-optgroup>\n            <md-optgroup label="Voice: Outbound">\n                <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n            </md-optgroup>\n        </md-select>\n        <div ng-messages="salesforceAccountItemForm.variableName.$error" ng-show="salesforceAccountItemForm.variableName.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'customVariable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select ng-model="vm.item.VariableId" required>\n            <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n        </md-select>\n    </md-input-container>\n<\/script>'),e.put("app/main/apps/integrations/views/salesforceAccounts/edit/view.html",'<div id="integrations-salesforceAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-salesforceAccounts-button md-icon-button" aria-label="Go to salesforceAccounts" ng-click="vm.gotoSalesforceAccounts()" translate translate-attr-aria-label="INTEGRATIONS.GO_TO_SALESFORCEACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.salesforceAccount.userpic" class="salesforceAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.salesforceAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.salesforceAccount.userpic" class="salesforceAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/salesforceAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.salesforceAccount.id}} {{vm.salesforceAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="INTEGRATIONS.CREATED_AT"></span> <span>{{vm.salesforceAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveSalesforceAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (configurationsForm.$invalid)" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="salesforceAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.salesforceAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                                <input type="text" name="username" ng-model="vm.salesforceAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.URI">Uri</label>\n                                <input type="url" name="remoteUri" ng-model="vm.salesforceAccount.remoteUri" required>\n                                <div ng-messages="generalForm.remoteUri.$error" ng-show="generalForm.remoteUri.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.salesforceAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newSalesforceAccount ">\n                                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.CLIENTID">ClientId</label>\n                                <input type="text" name="clientId" ng-model="vm.salesforceAccount.clientId" required>\n                                <div ng-messages="generalForm.clientId.$error" ng-show="generalForm.clientId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CLIENTID_REQUIRED">ClientId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.CLIENTSECRET">ClientSecret</label>\n                                <input type="text" name="clientSecret" ng-model="vm.salesforceAccount.clientSecret" required>\n                                <div ng-messages="generalForm.clientSecret.$error" ng-show="generalForm.clientSecret.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CLIENTSECRET_REQUIRED">ClientSecret field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.SECURITYTOKEN">SecurityToken</label>\n                                <input type="text" name="securityToken" ng-model="vm.salesforceAccount.securityToken" required>\n                                <div ng-messages="generalForm.securityToken.$error" ng-show="generalForm.securityToken.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.SECURITYTOKEN_REQUIRED">SecurityToken field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                                <input type="url" name="serverUrl" ng-model="vm.salesforceAccount.serverUrl">\n                                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                                <div ng-messages="generalForm.serverUrl.$error" ng-show="generalForm.serverUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.salesforceAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="salesforceAccount-detail-form-container configurations md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</div>\n                        </div>\n                        <div ng-controller="SalesforceAccountConfigurationsController as vm_cc" ng-init="vm_cc.init(vm.salesforceAccount)" layout="row">\n                            <md-card class="md-whiteframe-1dp" flex="30">\n                                <div layout="row" layout-align="center center">\n                                    <md-subheader flex="75" class="md-no-sticky">{{ \'INTEGRATIONS.CONFIGURATIONS\' | translate }}</md-subheader>\n                                    <md-button flex="25" ng-click="vm_cc.createOrEditSalesforceConfiguration($event)" class="md-icon-button" aria-label="create salesforceConfiguration">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                                <md-list>\n                                    <md-list-item layout="row" layout-align="center center" ng-repeat="salesforceConfiguration in vm_cc.configurations" class="border-top" md-colors="{background: (vm_cc.selectedSalesforceConfiguration == $index ? \'accent\' : \'grey-A100\')}" ng-click="vm_cc.getSalesforceConfiguration($index)">\n                                        <span class="text-truncate" flex="80">{{ salesforceConfiguration.name }}</span>\n                                        <md-menu>\n                                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                            </md-button>\n                                            <md-menu-content width="3">\n                                                <md-menu-item>\n                                                    <md-button ng-click="vm_cc.deleteSalesforceConfiguration($event, salesforceConfiguration)" translate="INTEGRATIONS.DELETE_SALESFORCECONFIGURATION">\n                                                        Delete SalesforceConfiguration\n                                                    </md-button>\n                                                </md-menu-item>\n                                            </md-menu-content>\n                                        </md-menu>\n                                    </md-list-item>\n                                </md-list>\n                            </md-card>\n                            <div flex></div>\n                            <md-card class="md-whiteframe-1dp" flex="65">\n                                <md-tabs ng-if="vm_cc.configurations.length" md-dynamic-height>\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.SUBJECTS">SUBJECTS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.subject = query" on-collapse="vm_cc.query.subject = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditSubject($event)" aria-label="add subject" translate translate-attr-label="INTEGRATIONS.ADD_SUBJECT">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedSubjects.length}} {{vm_cc.selectedSubjects.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedSubjects($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedSubjects">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="subject" md-select-id="id" ng-repeat="subject in vm_cc.subjects | filter: vm_cc.query.subject">\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="id ">{{subject.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="type ">\n                                                                <span ng-if="subject.FieldId">{{subject.nameField}}</span>\n                                                                <span ng-if="!subject.FieldId">{{subject.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="subject.type" ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell>\n                                                                <span ng-switch-when="string">{{subject.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{subject.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{subject.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{subject.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditSubject($event, subject)" translate="INTEGRATIONS.EDIT_SUBJECT">\n                                                                                Edit Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteSubjectConfirm($event, subject)" translate="INTEGRATIONS.DELETE_SUBJECT">\n                                                                                Delete Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.DESCRIPTIONS">DESCRIPTIONS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.description = query" on-collapse="vm_cc.query.description = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditDescription($event)" aria-label="add description" translate translate-attr-label="INTEGRATIONS.ADD_DESCRIPTION">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedDescriptions.length}} {{vm_cc.selectedDescriptions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedDescriptions($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedDescriptions">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="description" md-select-id="id" ng-repeat="description in vm_cc.descriptions | filter: vm_cc.query.description">\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="id ">{{description.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="type ">\n                                                                <span ng-if="description.FieldId">{{description.nameField}}</span>\n                                                                <span ng-if="!description.FieldId">{{description.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="description.type" ng-click="vm_cc.createOrEditDescription($event, description)" md-cell>\n                                                                <span ng-switch-when="string">{{description.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{description.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{description.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{description.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditDescription($event, description)" translate="INTEGRATIONS.EDIT_DESCRIPTION">\n                                                                                Edit Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteDescriptionConfirm($event, description)" translate="INTEGRATIONS.DELETE_DESCRIPTION">\n                                                                                Delete Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.FIELDS">FIELDS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.field = query" on-collapse="vm_cc.query.field = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditField($event)" aria-label="add field" translate translate-attr-label="INTEGRATIONS.ADD_FIELD">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedFields.length}} {{vm_cc.selectedFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedFields($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedFields">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="field" md-select-id="id" ng-repeat="field in vm_cc.fields | filter: vm_cc.query.field">\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="id ">{{field.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="type ">\n                                                                <span ng-if="field.FieldId">{{field.nameField}}</span>\n                                                                <span ng-if="!field.FieldId">{{field.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="field.type" ng-click="vm_cc.createOrEditField($event, field)" md-cell>\n                                                                <span ng-switch-when="string">{{field.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{field.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{field.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{field.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditField($event, field)" translate="INTEGRATIONS.EDIT_FIELD">\n                                                                                Edit Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteFieldConfirm($event, field)" translate="INTEGRATIONS.DELETE_FIELD">\n                                                                                Delete Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                </md-tabs>\n                                <div class="padding-20" ng-if="!vm_cc.configurations.length" ng-click="vm_cc.createOrEditSalesforceConfiguration($event)" layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                                    <div class="padding-20 md-whiteframe-3dp md-accent-bg" layout="column" layout-align="center center">\n                                        <md-button class="md-icon-button">\n                                            <md-icon md-font-icon="icon-plus"></md-icon>\n                                        </md-button>\n                                        <span aria-label="add configuration" translate translate-attr-label="INTEGRATIONS.ADD_CONFIGURATION">ADD CONFIGURATION</span>\n                                    </div>\n                                </div>\n                            </md-card>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/integrations/views/salesforceAccounts/salesforceAccounts.html",'<div id="salesforceAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-heart" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="INTEGRATIONS.SALESFORCEACCOUNTS">SalesforceAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="INTEGRATIONS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSalesforceAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSalesforceAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="INTEGRATIONS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-salesforceAccounts-count">\n                    <span>{{vm.selectedSalesforceAccounts.length}}</span>\n                <span translate="INTEGRATIONS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SALESFORCEACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSalesforceAccounts()" translate="INTEGRATIONS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSalesforceAccounts()" translate="INTEGRATIONS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSalesforceAccounts" filename="salesforceAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSalesforceAccounts($event)" aria-label="delete selected" translate translate-attr-label="SALESFORCEACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SALESFORCEACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSalesforceAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSalesforceAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'INTEGRATIONS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="username">{{ \'INTEGRATIONS.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="remoteUri">{{ \'INTEGRATIONS.URI\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.salesforceAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="INTEGRATIONS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="salesforceAccount" md-select-id="id" ng-repeat="salesforceAccount in vm.salesforceAccounts.rows">\n                                <td md-cell ng-if="salesforceAccount.userpic"><img class="avatar" alt="{{salesforceAccount.name}}" ng-src="api/users/{{salesforceAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!salesforceAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{salesforceAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSalesforceAccount($event, salesforceAccount)" md-cell class="id ">{{salesforceAccount.id}}</td>\n                                <td ng-click="vm.createOrEditSalesforceAccount($event, salesforceAccount)" md-cell class="name ">{{salesforceAccount.name}}</td>\n                                <td ng-click="vm.createOrEditSalesforceAccount($event, salesforceAccount)" md-cell class="username ">{{salesforceAccount.username}}</td>\n                                <td ng-click="vm.createOrEditSalesforceAccount($event, salesforceAccount)" md-cell class="remoteUri ">{{salesforceAccount.remoteUri}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(salesforceAccount, $event)" translate="INTEGRATIONS.EDIT_SALESFORCEACCOUNT">\n                                                    Edit SalesforceAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(salesforceAccount, $event)" translate="INTEGRATIONS.DELETE_SALESFORCEACCOUNT">\n                                                    Delete SalesforceAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.salesforceAccounts.count}}" md-on-paginate="vm.getSalesforceAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SALESFORCEACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SALESFORCEACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-salesforceAccount-button" ng-click="vm.createOrEditSalesforceAccount($event)" aria-label="add salesforceAccount" translate translate-attr-aria-label="INTEGRATIONS.ADD_SALESFORCEACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SALESFORCEACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/create/dialog.html",'<md-dialog class="sugarcrmAccount-dialog" aria-label="New SugarcrmAccount">\n    <form name="sugarcrmAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.sugarcrmAccount.name" required autofocus>\n                <div ng-messages="sugarcrmAccountForm.name.$error" ng-show="sugarcrmAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                <input type="text" name="username" ng-model="vm.sugarcrmAccount.username" required>\n                <div ng-messages="sugarcrmAccountForm.username.$error" ng-show="sugarcrmAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.URI">Uri</label>\n                <input type="url" name="remoteUri" ng-model="vm.sugarcrmAccount.remoteUri" required>\n                <div ng-messages="sugarcrmAccountForm.remoteUri.$error" ng-show="sugarcrmAccountForm.remoteUri.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.sugarcrmAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                <div ng-messages="sugarcrmAccountForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newSugarcrmAccount ">\n                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="sugarcrmAccountForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                <input type="url" name="serverUrl" ng-model="vm.sugarcrmAccount.serverUrl">\n                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                <div ng-messages="sugarcrmAccountForm.serverUrl.$error" ng-show="sugarcrmAccountForm.serverUrl.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.sugarcrmAccount.description">\n                <div ng-messages="sugarcrmAccountForm.description.$error" ng-show="sugarcrmAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSugarcrmAccount" ng-click="vm.saveSugarcrmAccount()" class="send-button md-accent md-raised" ng-disabled="sugarcrmAccountForm.$invalid || sugarcrmAccountForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSugarcrmAccount" ng-click="vm.addNewSugarcrmAccount()" class="send-button md-accent md-raised" ng-disabled="sugarcrmAccountForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_SUGARCRMACCOUNT" translate-attr-aria-label="INTEGRATIONS.ADD_SUGARCRMACCOUNT">\n                    ADD SUGARCRMACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSugarcrmAccount" ng-click="vm.deleteSugarcrmAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/edit/configurations/dialog.html",'<md-dialog class="sugarcrmConfiguration-dialog" aria-label="New SugarcrmConfiguration">\n    <form name="sugarcrmConfigurationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.sugarcrmConfiguration.name" required autofocus>\n                <div ng-messages="sugarcrmConfigurationForm.name.$error" ng-show="sugarcrmConfigurationForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.sugarcrmConfiguration.channel" required>\n\n                    <md-option ng-value="\'voice\'"> {{ \'INTEGRATIONS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="sugarcrmConfigurationForm.channel.$error" ng-show="sugarcrmConfigurationForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.TYPE">Type</label>\n                <md-select ng-model="vm.sugarcrmConfiguration.type" required>\n\n                    <md-option ng-value="\'inbound\'"> {{ \'INTEGRATIONS.INBOUND_IN_QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'outbound\'"> {{ \'INTEGRATIONS.OUTBOUND_CALL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="sugarcrmConfigurationForm.type.$error" ng-show="sugarcrmConfigurationForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSugarcrmConfiguration" ng-click="vm.saveSugarcrmConfiguration()" class="send-button md-accent md-raised" ng-disabled="sugarcrmConfigurationForm.$invalid || sugarcrmConfigurationForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSugarcrmConfiguration" ng-click="vm.addNewSugarcrmConfiguration()" class="send-button md-accent md-raised" ng-disabled="sugarcrmConfigurationForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_SUGARCRMCONFIGURATION"\n                    translate-attr-aria-label="INTEGRATIONS.ADD_SUGARCRMCONFIGURATION">\n                    ADD SUGARCRMCONFIGURATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSugarcrmConfiguration" ng-click="vm.deleteSugarcrmConfiguration($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/edit/item/dialog.html",'<md-dialog class="sugarcrmAccount-item-dialog" aria-label="New Item">\n    <form name="sugarcrmAccountItemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div ng-switch="vm.type">\n                <div ng-switch-when="subject">\n                    \x3c!-- SUBJECT SECTION --\x3e\n                    <div ng-include="\'/subject.html\'"></div>\n                    \x3c!-- / SUBJECT SECTION --\x3e\n                </div>\n                <div ng-switch-when="description">\n                    \x3c!-- DESCRIPTION SECTION --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="INTEGRATIONS.TYPE">Type</label>\n                        <md-select name="type" ng-model="vm.item.type" required>\n                            <md-option value="string">String</md-option>\n                            <md-option value="keyValue">Key Value</md-option>\n                        </md-select>\n                        <div ng-messages="sugarcrmAccountItemForm.type.$error" ng-show="sugarcrmAccountItemForm.type.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n                        <label translate="INTEGRATIONS.CONTENT">Content</label>\n                        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n                        <div ng-messages="sugarcrmAccountItemForm.content.$error" ng-show="sugarcrmAccountItemForm.content.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <div ng-if="vm.item.type == \'keyValue\'">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.KEY">Key</label>\n                            <input type="text" name="key" ng-model="vm.item.key" required md-autofocus>\n                            <div ng-messages="sugarcrmAccountItemForm.key.$error" ng-show="sugarcrmAccountItemForm.key.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.TYPE">Type</label>\n                            <md-select name="keyType" ng-model="vm.item.keyType" required>\n                                <md-option value="string">String</md-option>\n                                <md-option value="variable">Variable</md-option>\n                                <md-option value="customVariable">Custom Variable</md-option>\n                            </md-select>\n                            <div ng-messages="sugarcrmAccountItemForm.keyType.$error" ng-show="sugarcrmAccountItemForm.keyType.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'string\'">\n                            <label translate="INTEGRATIONS.CONTENT">Content</label>\n                            <input type="text" name="keyContent" ng-model="vm.item.keyContent" required md-autofocus>\n                            <div ng-messages="sugarcrmAccountItemForm.keyContent.$error" ng-show="sugarcrmAccountItemForm.keyContent.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'variable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n                                <md-optgroup label="Voice: Queue">\n                                    <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Voice: Outbound">\n                                    <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="sugarcrmAccountItemForm.variableName.$error" ng-show="sugarcrmAccountItemForm.variableName.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'customVariable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select ng-model="vm.item.VariableId" required>\n                                <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n                            </md-select>\n                        </md-input-container>\n                    </div>\n                    \x3c!-- / DESCRIPTION SECTION --\x3e\n                </div>\n                <div ng-switch-when="field">\n                    \x3c!-- FIELD SECTION --\x3e\n                    <div ng-if="vm.accountConnected">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.FIELD">FIELD</label>\n                            <md-select name="customField" ng-model="vm.customField" required>\n                                <md-optgroup label="Standard">\n                                    <md-option ng-value="standard" ng-repeat="standard in vm.fields | filter: {custom: false} ">{{standard.name}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Custom">\n                                    <md-option ng-value="custom" ng-repeat="custom in vm.fields | filter: {custom: true} ">{{custom.name}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="sugarcrmAccountItemForm.customField.$error" ng-show="sugarcrmAccountItemForm.customField.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.FIELD_REQUIRED">Field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- CUSTOM FIELD --\x3e\n                        <div ng-if="vm.customField && vm.customField.custom" ng-include="\'/subject.html\'"></div>\n                        \x3c!-- / CUSTOM FIELD --\x3e\n                        \x3c!-- STANDARD FIELD --\x3e\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="option" ng-model="vm.item.content" required>\n                                <md-option ng-value="option.value" ng-repeat="option in vm.customField.options">{{option.name}}</md-option>\n                            </md-select>\n                            <div ng-messages="sugarcrmAccountItemForm.option.$error" ng-show="sugarcrmAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && !vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <input type="text" name="option" ng-model="vm.item.content" required>\n                            <div ng-messages="sugarcrmAccountItemForm.option.$error" ng-show="sugarcrmAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- / STANDARD FIELD --\x3e\n                    </div>\n                    <div ng-if="!vm.accountConnected">\n                        <p>Account is not connected. Please check your configurations!</p>\n                    </div>\n                    \x3c!-- / FIELD SECTION --\x3e\n                </div>\n                <div ng-switch-default>\n                    <p>No Item</p>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newItem" ng-click="vm.saveItem()" class="send-button md-accent md-raised" ng-disabled="sugarcrmAccountItemForm.$invalid || sugarcrmAccountItemForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newItem" ng-click="vm.addNewItem()" class="send-button md-accent md-raised" ng-disabled="sugarcrmAccountItemForm.$invalid || sugarcrmAccountItemForm.$pristine" aria-label="ADD" translate="INTEGRATIONS.ADD" translate-attr-aria-label="INTEGRATIONS.ADD">\n                    ADD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newItem" ng-click="vm.deleteItem($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>\n\n<script type="text/ng-template" id="/subject.html">\n    <md-input-container class="md-block">\n        <label translate="INTEGRATIONS.TYPE">Type</label>\n        <md-select name="type" ng-model="vm.item.type" required>\n            <md-option value="string">String</md-option>\n            <md-option value="variable">Variable</md-option>\n            <md-option value="customVariable">Custom Variable</md-option>\n        </md-select>\n        <div ng-messages="sugarcrmAccountItemForm.type.$error" ng-show="sugarcrmAccountItemForm.type.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n        <label translate="INTEGRATIONS.CONTENT">Content</label>\n        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n        <div ng-messages="sugarcrmAccountItemForm.content.$error" ng-show="sugarcrmAccountItemForm.content.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'variable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n            <md-optgroup label="Voice: Queue">\n                <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n            </md-optgroup>\n            <md-optgroup label="Voice: Outbound">\n                <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n            </md-optgroup>\n        </md-select>\n        <div ng-messages="sugarcrmAccountItemForm.variableName.$error" ng-show="sugarcrmAccountItemForm.variableName.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'customVariable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select ng-model="vm.item.VariableId" required>\n            <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n        </md-select>\n    </md-input-container>\n<\/script>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/edit/view.html",'<div id="integrations-sugarcrmAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-sugarcrmAccounts-button md-icon-button" aria-label="Go to sugarcrmAccounts" ng-click="vm.gotoSugarcrmAccounts()" translate translate-attr-aria-label="INTEGRATIONS.GO_TO_SUGARCRMACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.sugarcrmAccount.userpic" class="sugarcrmAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.sugarcrmAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.sugarcrmAccount.userpic" class="sugarcrmAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/sugarcrmAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.sugarcrmAccount.id}} {{vm.sugarcrmAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="INTEGRATIONS.CREATED_AT"></span> <span>{{vm.sugarcrmAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveSugarcrmAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (configurationsForm.$invalid)" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="sugarcrmAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.sugarcrmAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                                <input type="text" name="username" ng-model="vm.sugarcrmAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.URI">Uri</label>\n                                <input type="url" name="remoteUri" ng-model="vm.sugarcrmAccount.remoteUri" required>\n                                <div ng-messages="generalForm.remoteUri.$error" ng-show="generalForm.remoteUri.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.sugarcrmAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newSugarcrmAccount ">\n                                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                                <input type="url" name="serverUrl" ng-model="vm.sugarcrmAccount.serverUrl">\n                                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                                <div ng-messages="generalForm.serverUrl.$error" ng-show="generalForm.serverUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.sugarcrmAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="sugarcrmAccount-detail-form-container configurations md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</div>\n                        </div>\n                        <div ng-controller="SugarcrmAccountConfigurationsController as vm_cc" ng-init="vm_cc.init(vm.sugarcrmAccount)" layout="row">\n                            <md-card class="md-whiteframe-1dp" flex="30">\n                                <div layout="row" layout-align="center center">\n                                    <md-subheader flex="75" class="md-no-sticky">{{ \'INTEGRATIONS.CONFIGURATIONS\' | translate }}</md-subheader>\n                                    <md-button flex="25" ng-click="vm_cc.createOrEditSugarcrmConfiguration($event)" class="md-icon-button" aria-label="create sugarcrmConfiguration">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                                <md-list>\n                                    <md-list-item layout="row" layout-align="center center" ng-repeat="sugarcrmConfiguration in vm_cc.configurations" class="border-top" md-colors="{background: (vm_cc.selectedSugarcrmConfiguration == $index ? \'accent\' : \'grey-A100\')}" ng-click="vm_cc.getSugarcrmConfiguration($index)">\n                                        <span class="text-truncate" flex="80">{{ sugarcrmConfiguration.name }}</span>\n                                        <md-menu>\n                                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                            </md-button>\n                                            <md-menu-content width="3">\n                                                <md-menu-item>\n                                                    <md-button ng-click="vm_cc.deleteSugarcrmConfiguration($event, sugarcrmConfiguration)" translate="INTEGRATIONS.DELETE_SUGARCRMCONFIGURATION">\n                                                        Delete SugarcrmConfiguration\n                                                    </md-button>\n                                                </md-menu-item>\n                                            </md-menu-content>\n                                        </md-menu>\n                                    </md-list-item>\n                                </md-list>\n                            </md-card>\n                            <div flex></div>\n                            <md-card class="md-whiteframe-1dp" flex="65">\n                                <md-tabs ng-if="vm_cc.configurations.length" md-dynamic-height>\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.SUBJECTS">SUBJECTS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.subject = query" on-collapse="vm_cc.query.subject = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditSubject($event)" aria-label="add subject" translate translate-attr-label="INTEGRATIONS.ADD_SUBJECT">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedSubjects.length}} {{vm_cc.selectedSubjects.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedSubjects($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedSubjects">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="subject" md-select-id="id" ng-repeat="subject in vm_cc.subjects | filter: vm_cc.query.subject">\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="id ">{{subject.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="type ">\n                                                                <span ng-if="subject.FieldId">{{subject.nameField}}</span>\n                                                                <span ng-if="!subject.FieldId">{{subject.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="subject.type" ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell>\n                                                                <span ng-switch-when="string">{{subject.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{subject.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{subject.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{subject.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditSubject($event, subject)" translate="INTEGRATIONS.EDIT_SUBJECT">\n                                                                                Edit Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteSubjectConfirm($event, subject)" translate="INTEGRATIONS.DELETE_SUBJECT">\n                                                                                Delete Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.DESCRIPTIONS">DESCRIPTIONS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.description = query" on-collapse="vm_cc.query.description = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditDescription($event)" aria-label="add description" translate translate-attr-label="INTEGRATIONS.ADD_DESCRIPTION">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedDescriptions.length}} {{vm_cc.selectedDescriptions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedDescriptions($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedDescriptions">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="description" md-select-id="id" ng-repeat="description in vm_cc.descriptions | filter: vm_cc.query.description">\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="id ">{{description.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="type ">\n                                                                <span ng-if="description.FieldId">{{description.nameField}}</span>\n                                                                <span ng-if="!description.FieldId">{{description.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="description.type" ng-click="vm_cc.createOrEditDescription($event, description)" md-cell>\n                                                                <span ng-switch-when="string">{{description.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{description.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{description.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{description.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditDescription($event, description)" translate="INTEGRATIONS.EDIT_DESCRIPTION">\n                                                                                Edit Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteDescriptionConfirm($event, description)" translate="INTEGRATIONS.DELETE_DESCRIPTION">\n                                                                                Delete Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.FIELDS">FIELDS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.field = query" on-collapse="vm_cc.query.field = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditField($event)" aria-label="add field" translate translate-attr-label="INTEGRATIONS.ADD_FIELD">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedFields.length}} {{vm_cc.selectedFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedFields($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedFields">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="field" md-select-id="id" ng-repeat="field in vm_cc.fields | filter: vm_cc.query.field">\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="id ">{{field.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="type ">\n                                                                <span ng-if="field.FieldId">{{field.nameField}}</span>\n                                                                <span ng-if="!field.FieldId">{{field.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="field.type" ng-click="vm_cc.createOrEditField($event, field)" md-cell>\n                                                                <span ng-switch-when="string">{{field.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{field.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{field.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{field.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditField($event, field)" translate="INTEGRATIONS.EDIT_FIELD">\n                                                                                Edit Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteFieldConfirm($event, field)" translate="INTEGRATIONS.DELETE_FIELD">\n                                                                                Delete Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                </md-tabs>\n                                <div class="padding-20" ng-if="!vm_cc.configurations.length" ng-click="vm_cc.createOrEditSugarcrmConfiguration($event)" layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                                    <div class="padding-20 md-whiteframe-3dp md-accent-bg" layout="column" layout-align="center center">\n                                        <md-button class="md-icon-button">\n                                            <md-icon md-font-icon="icon-plus"></md-icon>\n                                        </md-button>\n                                        <span aria-label="add configuration" translate translate-attr-label="INTEGRATIONS.ADD_CONFIGURATION">ADD CONFIGURATION</span>\n                                    </div>\n                                </div>\n                            </md-card>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/sugarcrmAccounts.html",'<div id="sugarcrmAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-heart" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="INTEGRATIONS.SUGARCRMACCOUNTS">SugarcrmAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="INTEGRATIONS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSugarcrmAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSugarcrmAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="INTEGRATIONS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-sugarcrmAccounts-count">\n                    <span>{{vm.selectedSugarcrmAccounts.length}}</span>\n                <span translate="INTEGRATIONS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SUGARCRMACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSugarcrmAccounts()" translate="INTEGRATIONS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSugarcrmAccounts()" translate="INTEGRATIONS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSugarcrmAccounts" filename="sugarcrmAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSugarcrmAccounts($event)" aria-label="delete selected" translate translate-attr-label="SUGARCRMACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SUGARCRMACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSugarcrmAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSugarcrmAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'INTEGRATIONS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="username">{{ \'INTEGRATIONS.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="remoteUri">{{ \'INTEGRATIONS.URI\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.sugarcrmAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="INTEGRATIONS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="sugarcrmAccount" md-select-id="id" ng-repeat="sugarcrmAccount in vm.sugarcrmAccounts.rows">\n                                <td md-cell ng-if="sugarcrmAccount.userpic"><img class="avatar" alt="{{sugarcrmAccount.name}}" ng-src="api/users/{{sugarcrmAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!sugarcrmAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{sugarcrmAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSugarcrmAccount($event, sugarcrmAccount)" md-cell class="id ">{{sugarcrmAccount.id}}</td>\n                                <td ng-click="vm.createOrEditSugarcrmAccount($event, sugarcrmAccount)" md-cell class="name ">{{sugarcrmAccount.name}}</td>\n                                <td ng-click="vm.createOrEditSugarcrmAccount($event, sugarcrmAccount)" md-cell class="username ">{{sugarcrmAccount.username}}</td>\n                                <td ng-click="vm.createOrEditSugarcrmAccount($event, sugarcrmAccount)" md-cell class="remoteUri ">{{sugarcrmAccount.remoteUri}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(sugarcrmAccount, $event)" translate="INTEGRATIONS.EDIT_SUGARCRMACCOUNT">\n                                                    Edit SugarcrmAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(sugarcrmAccount, $event)" translate="INTEGRATIONS.DELETE_SUGARCRMACCOUNT">\n                                                    Delete SugarcrmAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.sugarcrmAccounts.count}}" md-on-paginate="vm.getSugarcrmAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SUGARCRMACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SUGARCRMACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-sugarcrmAccount-button" ng-click="vm.createOrEditSugarcrmAccount($event)" aria-label="add sugarcrmAccount" translate translate-attr-aria-label="INTEGRATIONS.ADD_SUGARCRMACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SUGARCRMACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/integrations/views/zendeskAccounts/create/dialog.html",'<md-dialog class="zendeskAccount-dialog" aria-label="New ZendeskAccount">\n    <form name="zendeskAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.zendeskAccount.name" required autofocus>\n                <div ng-messages="zendeskAccountForm.name.$error" ng-show="zendeskAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                <input type="text" name="username" ng-model="vm.zendeskAccount.username" required>\n                <div ng-messages="zendeskAccountForm.username.$error" ng-show="zendeskAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.URI">Uri</label>\n                <input type="url" name="remoteUri" ng-model="vm.zendeskAccount.remoteUri" required>\n                <div ng-messages="zendeskAccountForm.remoteUri.$error" ng-show="zendeskAccountForm.remoteUri.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.AUTHTYPE">AuthType</label>\n                <md-select ng-model="vm.zendeskAccount.authType" required>\n                    <md-option ng-value="\'password\'">Password</md-option>\n                    <md-option ng-value="\'token\'">Token</md-option>\n                </md-select>\n                <div ng-messages="zendeskAccountForm.authType.$error" ng-show="zendeskAccountForm.authType.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.AUTHTYPE_REQUIRED">AuthType field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.zendeskAccount.authType == \'password\'">\n                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.zendeskAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                <div ng-messages="zendeskAccountForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newZendeskAccount  && vm.zendeskAccount.authType == \'password\'">\n                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="zendeskAccountForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.zendeskAccount.authType == \'token\'" class="md-block">\n                <label translate="INTEGRATIONS.TOKEN">Token</label>\n                <input type="text" name="token" ng-model="vm.zendeskAccount.token" required>\n                <div ng-messages="zendeskAccountForm.token.$error" ng-show="zendeskAccountForm.token.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TOKEN_REQUIRED">Token field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                <input type="url" name="serverUrl" ng-model="vm.zendeskAccount.serverUrl">\n                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                <div ng-messages="zendeskAccountForm.serverUrl.$error" ng-show="zendeskAccountForm.serverUrl.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.zendeskAccount.description">\n                <div ng-messages="zendeskAccountForm.description.$error" ng-show="zendeskAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newZendeskAccount" ng-click="vm.saveZendeskAccount()" class="send-button md-accent md-raised" ng-disabled="zendeskAccountForm.$invalid || zendeskAccountForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newZendeskAccount" ng-click="vm.addNewZendeskAccount()" class="send-button md-accent md-raised" ng-disabled="zendeskAccountForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_ZENDESKACCOUNT" translate-attr-aria-label="INTEGRATIONS.ADD_ZENDESKACCOUNT">\n                    ADD ZENDESKACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newZendeskAccount" ng-click="vm.deleteZendeskAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/zendeskAccounts/edit/item/dialog.html",'<md-dialog class="zendeskAccount-item-dialog" aria-label="New Item">\n    <form name="zendeskAccountItemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div ng-switch="vm.type">\n                <div ng-switch-when="subject">\n                    \x3c!-- SUBJECT SECTION --\x3e\n                    <div ng-include="\'/subject.html\'"></div>\n                    \x3c!-- / SUBJECT SECTION --\x3e\n                </div>\n                <div ng-switch-when="description">\n                    \x3c!-- DESCRIPTION SECTION --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="INTEGRATIONS.TYPE">Type</label>\n                        <md-select name="type" ng-model="vm.item.type" required>\n                            <md-option value="string">String</md-option>\n                            <md-option value="keyValue">Key Value</md-option>\n                        </md-select>\n                        <div ng-messages="zendeskAccountItemForm.type.$error" ng-show="zendeskAccountItemForm.type.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n                        <label translate="INTEGRATIONS.CONTENT">Content</label>\n                        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n                        <div ng-messages="zendeskAccountItemForm.content.$error" ng-show="zendeskAccountItemForm.content.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <div ng-if="vm.item.type == \'keyValue\'">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.KEY">Key</label>\n                            <input type="text" name="key" ng-model="vm.item.key" required md-autofocus>\n                            <div ng-messages="zendeskAccountItemForm.key.$error" ng-show="zendeskAccountItemForm.key.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.TYPE">Type</label>\n                            <md-select name="keyType" ng-model="vm.item.keyType" required>\n                                <md-option value="string">String</md-option>\n                                <md-option value="variable">Variable</md-option>\n                                <md-option value="customVariable">Custom Variable</md-option>\n                            </md-select>\n                            <div ng-messages="zendeskAccountItemForm.keyType.$error" ng-show="zendeskAccountItemForm.keyType.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'string\'">\n                            <label translate="INTEGRATIONS.CONTENT">Content</label>\n                            <input type="text" name="keyContent" ng-model="vm.item.keyContent" required md-autofocus>\n                            <div ng-messages="zendeskAccountItemForm.keyContent.$error" ng-show="zendeskAccountItemForm.keyContent.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'variable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n                                <md-optgroup label="Voice: Queue">\n                                    <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Voice: Outbound">\n                                    <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="zendeskAccountItemForm.variableName.$error" ng-show="zendeskAccountItemForm.variableName.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'customVariable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select ng-model="vm.item.VariableId" required>\n                                <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n                            </md-select>\n                        </md-input-container>\n                    </div>\n                    \x3c!-- / DESCRIPTION SECTION --\x3e\n                </div>\n                <div ng-switch-when="field">\n                    \x3c!-- FIELD SECTION --\x3e\n                    <div ng-if="vm.accountConnected">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.FIELD">FIELD</label>\n                            <md-select name="customField" ng-model="vm.customField" required>\n                                <md-optgroup label="Standard">\n                                    <md-option ng-value="standard" ng-repeat="standard in vm.fields | filter: {custom: false} ">{{standard.name}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Custom">\n                                    <md-option ng-value="custom" ng-repeat="custom in vm.fields | filter: {custom: true} ">{{custom.name}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="zendeskAccountItemForm.customField.$error" ng-show="zendeskAccountItemForm.customField.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.FIELD_REQUIRED">Field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- CUSTOM FIELD --\x3e\n                        <div ng-if="vm.customField && vm.customField.custom" ng-include="\'/subject.html\'"></div>\n                        \x3c!-- / CUSTOM FIELD --\x3e\n                        \x3c!-- STANDARD FIELD --\x3e\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="option" ng-model="vm.item.content" required>\n                                <md-option ng-value="option.value" ng-repeat="option in vm.customField.options">{{option.name}}</md-option>\n                            </md-select>\n                            <div ng-messages="zendeskAccountItemForm.option.$error" ng-show="zendeskAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && !vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <input type="text" name="option" ng-model="vm.item.content" required>\n                            <div ng-messages="zendeskAccountItemForm.option.$error" ng-show="zendeskAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- / STANDARD FIELD --\x3e\n                    </div>\n                    <div ng-if="!vm.accountConnected">\n                        <p>Account is not connected. Please check your configurations!</p>\n                    </div>\n                    \x3c!-- / FIELD SECTION --\x3e\n                </div>\n                <div ng-switch-default>\n                    <p>No Item</p>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newItem" ng-click="vm.saveItem()" class="send-button md-accent md-raised" ng-disabled="zendeskAccountItemForm.$invalid || zendeskAccountItemForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newItem" ng-click="vm.addNewItem()" class="send-button md-accent md-raised" ng-disabled="zendeskAccountItemForm.$invalid || zendeskAccountItemForm.$pristine" aria-label="ADD" translate="INTEGRATIONS.ADD" translate-attr-aria-label="INTEGRATIONS.ADD">\n                    ADD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newItem" ng-click="vm.deleteItem($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>\n\n<script type="text/ng-template" id="/subject.html">\n    <md-input-container class="md-block">\n        <label translate="INTEGRATIONS.TYPE">Type</label>\n        <md-select name="type" ng-model="vm.item.type" required>\n            <md-option value="string">String</md-option>\n            <md-option value="variable">Variable</md-option>\n            <md-option value="customVariable">Custom Variable</md-option>\n        </md-select>\n        <div ng-messages="zendeskAccountItemForm.type.$error" ng-show="zendeskAccountItemForm.type.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n        <label translate="INTEGRATIONS.CONTENT">Content</label>\n        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n        <div ng-messages="zendeskAccountItemForm.content.$error" ng-show="zendeskAccountItemForm.content.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'variable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n            <md-optgroup label="Voice: Queue">\n                <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n            </md-optgroup>\n            <md-optgroup label="Voice: Outbound">\n                <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n            </md-optgroup>\n        </md-select>\n        <div ng-messages="zendeskAccountItemForm.variableName.$error" ng-show="zendeskAccountItemForm.variableName.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'customVariable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select ng-model="vm.item.VariableId" required>\n            <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n        </md-select>\n    </md-input-container>\n<\/script>'),e.put("app/main/apps/integrations/views/zendeskAccounts/edit/view.html",'<div id="integrations-zendeskAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-zendeskAccounts-button md-icon-button" aria-label="Go to zendeskAccounts" ng-click="vm.gotoZendeskAccounts()" translate translate-attr-aria-label="INTEGRATIONS.GO_TO_ZENDESKACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.zendeskAccount.userpic" class="zendeskAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.zendeskAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.zendeskAccount.userpic" class="zendeskAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/zendeskAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.zendeskAccount.id}} {{vm.zendeskAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="INTEGRATIONS.CREATED_AT"></span> <span>{{vm.zendeskAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveZendeskAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (zendeskConfigurationsForm.$invalid)" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="zendeskAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.zendeskAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                                <input type="text" name="username" ng-model="vm.zendeskAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.URI">Uri</label>\n                                <input type="url" name="remoteUri" ng-model="vm.zendeskAccount.remoteUri" required>\n                                <div ng-messages="generalForm.remoteUri.$error" ng-show="generalForm.remoteUri.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.AUTHTYPE">AuthType</label>\n                                <md-select ng-model="vm.zendeskAccount.authType" required>\n                                    <md-option ng-value="\'password\'">Password</md-option>\n                                    <md-option ng-value="\'token\'">Token</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.authType.$error" ng-show="generalForm.authType.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.AUTHTYPE_REQUIRED">AuthType field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.zendeskAccount.authType == \'password\'">\n                                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.zendeskAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newZendeskAccount  && vm.zendeskAccount.authType == \'password\'">\n                                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.zendeskAccount.authType == \'token\'" class="md-block">\n                                <label translate="INTEGRATIONS.TOKEN">Token</label>\n                                <input type="text" name="token" ng-model="vm.zendeskAccount.token" required>\n                                <div ng-messages="generalForm.token.$error" ng-show="generalForm.token.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.TOKEN_REQUIRED">Token field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                                <input type="url" name="serverUrl" ng-model="vm.zendeskAccount.serverUrl">\n                                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                                <div ng-messages="generalForm.serverUrl.$error" ng-show="generalForm.serverUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.zendeskAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="zendeskAccount-detail-form-container zendeskconfigurations md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.ZENDESKCONFIGURATIONS">ZENDESKCONFIGURATIONS</div>\n                        </div>\n                        <div ng-controller="ZendeskAccountConfigurationsController as vm_cc" ng-init="vm_cc.init(vm.zendeskAccount)" layout="row">\n                            <md-card class="md-whiteframe-1dp" flex="30">\n                                <div layout="row" layout-align="center center">\n                                    <md-subheader flex="75" class="md-no-sticky">{{ \'INTEGRATIONS.CONFIGURATIONS\' | translate }}</md-subheader>\n                                    <md-button flex="25" ng-click="vm_cc.createOrEditZendeskConfiguration($event)" class="md-icon-button" aria-label="create zendeskConfiguration">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                                <md-list>\n                                    <md-list-item layout="row" layout-align="center center" ng-repeat="zendeskConfiguration in vm_cc.zendeskConfigurations" class="border-top" md-colors="{background: (vm_cc.selectedZendeskConfiguration == $index ? \'accent\' : \'grey-A100\')}" ng-click="vm_cc.getZendeskConfiguration($index)">\n                                        <span class="text-truncate" flex="80">{{ zendeskConfiguration.name }}</span>\n                                        <md-menu>\n                                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                            </md-button>\n                                            <md-menu-content width="3">\n                                                <md-menu-item>\n                                                    <md-button ng-click="vm_cc.deleteZendeskConfiguration($event, zendeskConfiguration)" translate="INTEGRATIONS.DELETE_ZENDESKCONFIGURATION">\n                                                        Delete ZendeskConfiguration\n                                                    </md-button>\n                                                </md-menu-item>\n                                            </md-menu-content>\n                                        </md-menu>\n                                    </md-list-item>\n                                </md-list>\n                            </md-card>\n                            <div flex></div>\n                            <md-card class="md-whiteframe-1dp" flex="65">\n                                <md-tabs ng-if="vm_cc.zendeskConfigurations.length" md-dynamic-height>\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.SUBJECTS">SUBJECTS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.subject = query" on-collapse="vm_cc.query.subject = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditSubject($event)" aria-label="add subject" translate translate-attr-label="INTEGRATIONS.ADD_SUBJECT">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedSubjects.length}} {{vm_cc.selectedSubjects.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedSubjects($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedSubjects">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="subject" md-select-id="id" ng-repeat="subject in vm_cc.subjects | filter: vm_cc.query.subject">\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="id ">{{subject.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="type ">\n                                                                <span ng-if="subject.FieldId">{{subject.nameField}}</span>\n                                                                <span ng-if="!subject.FieldId">{{subject.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="subject.type" ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell>\n                                                                <span ng-switch-when="string">{{subject.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{subject.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{subject.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{subject.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditSubject($event, subject)" translate="INTEGRATIONS.EDIT_SUBJECT">\n                                                                                Edit Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteSubjectConfirm($event, subject)" translate="INTEGRATIONS.DELETE_SUBJECT">\n                                                                                Delete Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.DESCRIPTIONS">DESCRIPTIONS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.description = query" on-collapse="vm_cc.query.description = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditDescription($event)" aria-label="add description" translate translate-attr-label="INTEGRATIONS.ADD_DESCRIPTION">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedDescriptions.length}} {{vm_cc.selectedDescriptions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedDescriptions($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedDescriptions">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="description" md-select-id="id" ng-repeat="description in vm_cc.descriptions | filter: vm_cc.query.description">\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="id ">{{description.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="type ">\n                                                                <span ng-if="description.FieldId">{{description.nameField}}</span>\n                                                                <span ng-if="!description.FieldId">{{description.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="description.type" ng-click="vm_cc.createOrEditDescription($event, description)" md-cell>\n                                                                <span ng-switch-when="string">{{description.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{description.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{description.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{description.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditDescription($event, description)" translate="INTEGRATIONS.EDIT_DESCRIPTION">\n                                                                                Edit Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteDescriptionConfirm($event, description)" translate="INTEGRATIONS.DELETE_DESCRIPTION">\n                                                                                Delete Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.FIELDS">FIELDS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.field = query" on-collapse="vm_cc.query.field = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditField($event)" aria-label="add field" translate translate-attr-label="INTEGRATIONS.ADD_FIELD">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedFields.length}} {{vm_cc.selectedFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedFields($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedFields">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="field" md-select-id="id" ng-repeat="field in vm_cc.fields | filter: vm_cc.query.field">\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="id ">{{field.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="type ">\n                                                                <span ng-if="field.FieldId">{{field.nameField}}</span>\n                                                                <span ng-if="!field.FieldId">{{field.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="field.type" ng-click="vm_cc.createOrEditField($event, field)" md-cell>\n                                                                <span ng-switch-when="string">{{field.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{field.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{field.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{field.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditField($event, field)" translate="INTEGRATIONS.EDIT_FIELD">\n                                                                                Edit Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteFieldConfirm($event, field)" translate="INTEGRATIONS.DELETE_FIELD">\n                                                                                Delete Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.TAGS">TAGS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-table-container class="md-whiteframe-1dp padding-20">\n                                                <md-input-container class="md-block">\n                                                    <label translate="INTEGRATIONS.TAGS">Tags</label>\n                                                    <md-select ng-model="vm_cc.selectedTags" ng-change="vm_cc.selectTagsChanged($event)" multiple>\n                                                        <md-option ng-value="tag.id" ng-repeat="tag in vm_cc.tags">{{ tag.name }}</md-option>\n                                                    </md-select>\n                                                </md-input-container>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n                                </md-tabs>\n                                <div class="padding-20" ng-if="!vm_cc.zendeskConfigurations.length" ng-click="vm_cc.createOrEditZendeskConfiguration($event)" layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                                    <div class="padding-20 md-whiteframe-3dp md-accent-bg" layout="column" layout-align="center center">\n                                        <md-button class="md-icon-button">\n                                            <md-icon md-font-icon="icon-plus"></md-icon>\n                                        </md-button>\n                                        <span aria-label="add configuration" translate translate-attr-label="INTEGRATIONS.ADD_CONFIGURATION">ADD CONFIGURATION</span>\n                                    </div>\n                                </div>\n                            </md-card>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/integrations/views/zendeskAccounts/edit/zendeskConfigurations/dialog.html",'<md-dialog class="zendeskConfiguration-dialog" aria-label="New ZendeskConfiguration">\n    <form name="zendeskConfigurationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.zendeskConfiguration.name" required autofocus>\n                <div ng-messages="zendeskConfigurationForm.name.$error" ng-show="zendeskConfigurationForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.zendeskConfiguration.channel" required>\n\n                    <md-option ng-value="\'voice\'"> {{ \'INTEGRATIONS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="zendeskConfigurationForm.channel.$error" ng-show="zendeskConfigurationForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.TYPE">Type</label>\n                <md-select ng-model="vm.zendeskConfiguration.type" required>\n\n                    <md-option ng-value="\'inbound\'"> {{ \'INTEGRATIONS.INBOUND_IN_QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'outbound\'"> {{ \'INTEGRATIONS.OUTBOUND_CALL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="zendeskConfigurationForm.type.$error" ng-show="zendeskConfigurationForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newZendeskConfiguration" ng-click="vm.saveZendeskConfiguration()" class="send-button md-accent md-raised" ng-disabled="zendeskConfigurationForm.$invalid || zendeskConfigurationForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newZendeskConfiguration" ng-click="vm.addNewZendeskConfiguration()" class="send-button md-accent md-raised" ng-disabled="zendeskConfigurationForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_ZENDESKCONFIGURATION"\n                    translate-attr-aria-label="INTEGRATIONS.ADD_ZENDESKCONFIGURATION">\n                    ADD ZENDESKCONFIGURATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newZendeskConfiguration" ng-click="vm.deleteZendeskConfiguration($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/zendeskAccounts/zendeskAccounts.html",'<div id="zendeskAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-heart" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="INTEGRATIONS.ZENDESKACCOUNTS">ZendeskAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="INTEGRATIONS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedZendeskAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedZendeskAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="INTEGRATIONS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-zendeskAccounts-count">\n                    <span>{{vm.selectedZendeskAccounts.length}}</span>\n                <span translate="INTEGRATIONS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="ZENDESKACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllZendeskAccounts()" translate="INTEGRATIONS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectZendeskAccounts()" translate="INTEGRATIONS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedZendeskAccounts" filename="zendeskAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedZendeskAccounts($event)" aria-label="delete selected" translate translate-attr-label="ZENDESKACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- ZENDESKACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedZendeskAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getZendeskAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'INTEGRATIONS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="username">{{ \'INTEGRATIONS.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="remoteUri">{{ \'INTEGRATIONS.URI\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.zendeskAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="INTEGRATIONS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="zendeskAccount" md-select-id="id" ng-repeat="zendeskAccount in vm.zendeskAccounts.rows">\n                                <td md-cell ng-if="zendeskAccount.userpic"><img class="avatar" alt="{{zendeskAccount.name}}" ng-src="api/users/{{zendeskAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!zendeskAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{zendeskAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditZendeskAccount($event, zendeskAccount)" md-cell class="id ">{{zendeskAccount.id}}</td>\n                                <td ng-click="vm.createOrEditZendeskAccount($event, zendeskAccount)" md-cell class="name ">{{zendeskAccount.name}}</td>\n                                <td ng-click="vm.createOrEditZendeskAccount($event, zendeskAccount)" md-cell class="username ">{{zendeskAccount.username}}</td>\n                                <td ng-click="vm.createOrEditZendeskAccount($event, zendeskAccount)" md-cell class="remoteUri ">{{zendeskAccount.remoteUri}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(zendeskAccount, $event)" translate="INTEGRATIONS.EDIT_ZENDESKACCOUNT">\n                                                    Edit ZendeskAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(zendeskAccount, $event)" translate="INTEGRATIONS.DELETE_ZENDESKACCOUNT">\n                                                    Delete ZendeskAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.zendeskAccounts.count}}" md-on-paginate="vm.getZendeskAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / ZENDESKACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD ZENDESKACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-zendeskAccount-button" ng-click="vm.createOrEditZendeskAccount($event)" aria-label="add zendeskAccount" translate translate-attr-aria-label="INTEGRATIONS.ADD_ZENDESKACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD ZENDESKACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/mail/views/mailAccounts/create/dialog.html",'<md-dialog class="mailAccount-dialog" aria-label="New MailAccount">\n    <form name="mailAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MAIL.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.mailAccount.name" required autofocus>\n                <div ng-messages="mailAccountForm.name.$error" ng-show="mailAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.EMAIL_ADDRESS">Email_Address</label>\n                <input type="email" name="address" ng-model="vm.mailAccount.address" required>\n                <div ng-messages="mailAccountForm.address.$error" ng-show="mailAccountForm.address.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.EMAIL_ADDRESS_REQUIRED">Email_Address field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="MAIL.ERRORS.EMAIL_ADDRESS_MUST_VALID">Email_Address must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.mailAccount.description">\n                <div ng-messages="mailAccountForm.description.$error" ng-show="mailAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMailAccount" ng-click="vm.saveMailAccount()" class="send-button md-accent md-raised" ng-disabled="mailAccountForm.$invalid || mailAccountForm.$pristine" aria-label="SAVE" translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMailAccount" ng-click="vm.addNewMailAccount()" class="send-button md-accent md-raised" ng-disabled="mailAccountForm.$invalid" aria-label="ADD" translate="MAIL.ADD_MAILACCOUNT" translate-attr-aria-label="MAIL.ADD_MAILACCOUNT">\n                    ADD MAILACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMailAccount" ng-click="vm.deleteMailAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="MAIL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MAIL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/mail/views/mailAccounts/edit/mailDispositions/dialog.html",'<md-dialog class="mailDisposition-dialog" aria-label="New MailDisposition">\n    <form name="mailDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MAIL.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.mailDisposition.name" required autofocus>\n                <div ng-messages="mailDispositionForm.name.$error" ng-show="mailDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMailDisposition" ng-click="vm.saveMailDisposition()" class="send-button md-accent md-raised" ng-disabled="mailDispositionForm.$invalid || mailDispositionForm.$pristine" aria-label="SAVE" translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMailDisposition" ng-click="vm.addNewMailDisposition()" class="send-button md-accent md-raised" ng-disabled="mailDispositionForm.$invalid" aria-label="ADD" translate="MAIL.ADD_MAILDISPOSITION" translate-attr-aria-label="MAIL.ADD_MAILDISPOSITION">\n                    ADD MAILDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMailDisposition" ng-click="vm.deleteMailDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="MAIL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MAIL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/mail/views/mailAccounts/edit/view.html",'<div id="mail-mailAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-mailAccounts-button md-icon-button" aria-label="Go to mailAccounts" ng-click="vm.gotoMailAccounts()" translate translate-attr-aria-label="MAIL.GO_TO_MAILACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.mailAccount.userpic" class="mailAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.mailAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.mailAccount.userpic" class="mailAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/mailAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.mailAccount.id}} {{vm.mailAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="MAIL.CREATED_AT"></span> <span>{{vm.mailAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveMailAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (imapForm.$invalid) || (smtpForm.$invalid) || (mailDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid) || (whitelabelForm.$invalid) || (signatureForm.$invalid)"\n                translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.mailAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.EMAIL_ADDRESS">Email_Address</label>\n                                <input type="email" name="address" ng-model="vm.mailAccount.address" required>\n                                <div ng-messages="generalForm.address.$error" ng-show="generalForm.address.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.EMAIL_ADDRESS_REQUIRED">Email_Address field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="MAIL.ERRORS.EMAIL_ADDRESS_MUST_VALID">Email_Address must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.LIST">List</label>\n                                <md-select ng-model="vm.mailAccount.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.TEMPLATE">template</label>\n                                <md-select ng-model="vm.mailAccount.TemplateId">\n                                    <md-option ng-value="TemplateId.id" ng-repeat="TemplateId in vm.templates">{{ TemplateId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TemplateId.$error" ng-show="generalForm.TemplateId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.TEMPLATE_REQUIRED">template field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.fidelity" aria-label="Fidelity"><span translate="MAIL.FIDELITY">Fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.mailAccount.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.service" aria-label="service"><span translate="MAIL.SERVICE">service</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.mailAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.IMAP">IMAP</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container imap md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.IMAP">IMAP</div>\n                        </div>\n                        <form name="imapForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.HOST">host</label>\n                                <input type="text" name="Imap.host" ng-model="vm.mailAccount.Imap.host" required autofocus>\n                                <div ng-messages="imapForm.Imap.host.$error" ng-show="imapForm.Imap.host.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.HOST_REQUIRED">host field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.USERNAME">username</label>\n                                <input type="text" name="Imap.username" ng-model="vm.mailAccount.Imap.username" required>\n                                <div ng-messages="imapForm.Imap.username.$error" ng-show="imapForm.Imap.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.USERNAME_REQUIRED">username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.PASSWORD">password</label>\n                                <input type="password" name="Imap.password" ng-model="vm.mailAccount.Imap.password" placeholder="Password" translate translate-attr-placeholder="MAIL.PASSWORD" required>\n                                <div ng-messages="imapForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newMailAccount ">\n                                <label translate="MAIL.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="Imap.password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="imapForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="MAIL.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.PORT">port</label>\n                                <input type="number" name="Imap.port" ng-model="vm.mailAccount.Imap.port" required>\n                                <div ng-messages="imapForm.Imap.port.$error" ng-show="imapForm.Imap.port.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.PORT_REQUIRED">port field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.MAILBOX">mailbox</label>\n                                <input type="text" name="Imap.mailbox" ng-model="vm.mailAccount.Imap.mailbox">\n                                <div ng-messages="imapForm.Imap.mailbox.$error" ng-show="imapForm.Imap.mailbox.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.MAILBOX_REQUIRED">mailbox field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.CONNTIMEOUT">connTimeout</label>\n                                <input type="number" name="Imap.connTimeout" ng-model="vm.mailAccount.Imap.connTimeout" required>\n                                <div ng-messages="imapForm.Imap.connTimeout.$error" ng-show="imapForm.Imap.connTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CONNTIMEOUT_REQUIRED">connTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.AUTHTIMEOUT">authTimeout</label>\n                                <input type="number" name="Imap.authTimeout" ng-model="vm.mailAccount.Imap.authTimeout" required>\n                                <div ng-messages="imapForm.Imap.authTimeout.$error" ng-show="imapForm.Imap.authTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.AUTHTIMEOUT_REQUIRED">authTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.Imap.delete" aria-label="delete"><span translate="MAIL.DELETE">delete</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.Imap.ssl" aria-label="ssl"><span translate="MAIL.SSL">ssl</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.Imap.keepalive" aria-label="keepalive"><span translate="MAIL.KEEPALIVE">keepalive</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.SMTP">SMTP</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container smtp md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.SMTP">SMTP</div>\n                        </div>\n                        <form name="smtpForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.HOST">host</label>\n                                <input type="text" name="Smtp.host" ng-model="vm.mailAccount.Smtp.host" required autofocus>\n                                <div ng-messages="smtpForm.Smtp.host.$error" ng-show="smtpForm.Smtp.host.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.HOST_REQUIRED">host field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.USERNAME">username</label>\n                                <input type="text" name="Smtp.username" ng-model="vm.mailAccount.Smtp.username" required>\n                                <div ng-messages="smtpForm.Smtp.username.$error" ng-show="smtpForm.Smtp.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.USERNAME_REQUIRED">username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.PASSWORD">password</label>\n                                <input type="password" name="Smtp.password" ng-model="vm.mailAccount.Smtp.password" placeholder="Password" translate translate-attr-placeholder="MAIL.PASSWORD" required>\n                                <div ng-messages="smtpForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newMailAccount ">\n                                <label translate="MAIL.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="Smtp.password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="smtpForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="MAIL.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.PORT">port</label>\n                                <input type="number" name="Smtp.port" ng-model="vm.mailAccount.Smtp.port" required>\n                                <div ng-messages="smtpForm.Smtp.port.$error" ng-show="smtpForm.Smtp.port.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.PORT_REQUIRED">port field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.Smtp.ssl" aria-label="ssl"><span translate="MAIL.SSL">ssl</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container maildispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="MailAccountMailDispositionsController as vm_dc" ng-init="vm_dc.init(vm.mailAccount)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedMailAccountMailDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MAIL.MAILDISPOSITIONS">MailDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditMailAccountMailDisposition($event)" aria-label="add mailDisposition" translate translate-attr-label="MAIL.ADD_MAILDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedMailAccountMailDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedMailAccountMailDispositions.length}} {{vm_dc.selectedMailAccountMailDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedMailAccountMailDispositions($event)" aria-label="delete selected" translate translate-attr-label="MAILACCOUNTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedMailAccountMailDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getMailAccountMailDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'MAIL.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'MAIL.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'MAIL.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="mailDisposition" md-select-id="id" ng-repeat="mailDisposition in vm_dc.mailAccountMailDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditMailAccountMailDisposition($event, mailDisposition)" md-cell>{{mailDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditMailAccountMailDisposition($event, mailDisposition)" md-cell>{{mailDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditMailAccountMailDisposition($event, mailDisposition)" md-cell>{{mailDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MAIL.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditMailAccountMailDisposition($event, mailDisposition)" translate="MAIL.EDIT_MAILDISPOSITION">\n                                                                Edit MailDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(mailDisposition, $event)" translate="MAIL.DELETE_MAILDISPOSITION">\n                                                                Delete MailDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.mailAccountMailDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="MAIL.NO_MAILDISPOSITION_AVAILABLE">No maildisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.mailAccountMailDispositions.count}}" md-on-paginate="vm_dc.getMailAccountMailDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.mailAccount.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.mailAccount.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="MAIL.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="mailAccount-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.mailAccount.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.mailAccount.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="MAIL.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="mailAccount-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.mailAccount.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.mailAccount.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="MAIL.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.OTHERS">OTHERS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container whitelabel md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.WHITELABEL">WHITELABEL</div>\n                        </div>\n                        <form name="whitelabelForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.WHITELABEL">whiteLabel</label>\n                                <textarea ng-model="vm.mailAccount.whiteLabel" md-maxlength="150" max-rows="5" autofocus></textarea>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="mailAccount-detail-form-container signature md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.SIGNATURE">SIGNATURE</div>\n                        </div>\n                        <form name="signatureForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/mail/views/mailAccounts/mailAccounts.html",'<div id="mailAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-email" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="MAIL.MAILACCOUNTS">MailAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="MAIL.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedMailAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedMailAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="MAIL.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-mailAccounts-count">\n                    <span>{{vm.selectedMailAccounts.length}}</span>\n                <span translate="MAIL.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="MAILACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllMailAccounts()" translate="MAIL.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectMailAccounts()" translate="MAIL.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedMailAccounts" filename="mailAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedMailAccounts($event)" aria-label="delete selected" translate translate-attr-label="MAILACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- MAILACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedMailAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getMailAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'MAIL.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'MAIL.NAME\' | translate }}</th>\n                                <th md-column md-order-by="address">{{ \'MAIL.EMAIL_ADDRESS\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'MAIL.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.mailAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="MAIL.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="mailAccount" md-select-id="id" ng-repeat="mailAccount in vm.mailAccounts.rows">\n                                <td md-cell ng-if="mailAccount.userpic"><img class="avatar" alt="{{mailAccount.name}}" ng-src="api/users/{{mailAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!mailAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{mailAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditMailAccount($event, mailAccount)" md-cell class="id ">{{mailAccount.id}}</td>\n                                <td ng-click="vm.createOrEditMailAccount($event, mailAccount)" md-cell class="name ">{{mailAccount.name}}</td>\n                                <td ng-click="vm.createOrEditMailAccount($event, mailAccount)" md-cell class="address ">{{mailAccount.address}}</td>\n                                <td ng-click="vm.createOrEditMailAccount($event, mailAccount)" md-cell class="description ">{{mailAccount.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MAIL.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(mailAccount, $event)" translate="MAIL.EDIT_MAILACCOUNT">\n                                                    Edit MailAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(mailAccount, $event)" translate="MAIL.DELETE_MAILACCOUNT">\n                                                    Delete MailAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.mailAccounts.count}}" md-on-paginate="vm.getMailAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / MAILACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD MAILACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-mailAccount-button" ng-click="vm.createOrEditMailAccount($event)" aria-label="add mailAccount" translate translate-attr-aria-label="MAIL.ADD_MAILACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD MAILACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/mail/views/mailQueues/create/dialog.html",'<md-dialog class="mailQueue-dialog" aria-label="New MailQueue">\n    <form name="mailQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MAIL.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.mailQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="mailQueueForm.name.$error" ng-show="mailQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="MAIL.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.mailQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="mailQueueForm.strategy.$error" ng-show="mailQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.mailQueue.timeout" required>\n                <div ng-messages="mailQueueForm.timeout.$error" ng-show="mailQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.mailQueue.description">\n                <div ng-messages="mailQueueForm.description.$error" ng-show="mailQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMailQueue" ng-click="vm.saveMailQueue()" class="send-button md-accent md-raised" ng-disabled="mailQueueForm.$invalid || mailQueueForm.$pristine" aria-label="SAVE" translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMailQueue" ng-click="vm.addNewMailQueue()" class="send-button md-accent md-raised" ng-disabled="mailQueueForm.$invalid" aria-label="ADD" translate="MAIL.ADD_MAILQUEUE" translate-attr-aria-label="MAIL.ADD_MAILQUEUE">\n                    ADD MAILQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMailQueue" ng-click="vm.deleteMailQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="MAIL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MAIL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/mail/views/mailQueues/edit/teamadd/teamadd.html",'<md-dialog class="mailQueue-dialog" aria-label="mailQueue">\n    <form name="mailQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MAIL.TEAMADD_MAILQUEUE">Add Team in MAILQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="MAIL.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="mailQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/mail/views/mailQueues/edit/view.html",'<div id="mail-mailQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-mailQueues-button md-icon-button" aria-label="Go to mailQueues" ng-click="vm.gotoMailQueues()" translate translate-attr-aria-label="MAIL.GO_TO_MAILQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.mailQueue.userpic" class="mailQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.mailQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.mailQueue.userpic" class="mailQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/mailQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.mailQueue.id}} {{vm.mailQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="MAIL.CREATED_AT"></span> <span>{{vm.mailQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.mailQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="MAIL.TEAMADD_MAILQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveMailQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.mailQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="MAIL.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.mailQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.mailQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.mailQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/mail/views/mailQueues/mailQueues.html",'<div id="mailQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-email" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="MAIL.MAILQUEUES">MailQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="MAIL.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedMailQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedMailQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="MAIL.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-mailQueues-count">\n                    <span>{{vm.selectedMailQueues.length}}</span>\n                <span translate="MAIL.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="MAILQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllMailQueues()" translate="MAIL.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectMailQueues()" translate="MAIL.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedMailQueues" filename="mailQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedMailQueues($event)" aria-label="delete selected" translate translate-attr-label="MAILQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- MAILQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedMailQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getMailQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'MAIL.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'MAIL.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'MAIL.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.mailQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="MAIL.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="mailQueue" md-select-id="id" ng-repeat="mailQueue in vm.mailQueues.rows">\n                                <td md-cell ng-if="mailQueue.userpic"><img class="avatar" alt="{{mailQueue.name}}" ng-src="api/users/{{mailQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!mailQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{mailQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditMailQueue($event, mailQueue)" md-cell class="id ">{{mailQueue.id}}</td>\n                                <td ng-click="vm.createOrEditMailQueue($event, mailQueue)" md-cell class="name ">{{mailQueue.name}}</td>\n                                <td ng-click="vm.createOrEditMailQueue($event, mailQueue)" md-cell class="strategy ">{{ vm.arraystrategy[mailQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MAIL.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(mailQueue, $event)" translate="MAIL.EDIT_MAILQUEUE">\n                                                    Edit MailQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(mailQueue, $event)" translate="MAIL.DELETE_MAILQUEUE">\n                                                    Delete MailQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.mailQueues.count}}" md-on-paginate="vm.getMailQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / MAILQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD MAILQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-mailQueue-button" ng-click="vm.createOrEditMailQueue($event)" aria-label="add mailQueue" translate translate-attr-aria-label="MAIL.ADD_MAILQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD MAILQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/create/dialog.html",'<md-dialog class="ivrCampaign-dialog" aria-label="New IvrCampaign">\n    <form name="ivrCampaignForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.ivrCampaign.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="!vm.newIvrCampaign">\n                <div ng-messages="ivrCampaignForm.name.$error" ng-show="ivrCampaignForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.ivrCampaign.active" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.TRUNK">Trunk</label>\n                <md-select ng-model="vm.ivrCampaign.TrunkId" required>\n                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                </md-select>\n                <div ng-messages="ivrCampaignForm.TrunkId.$error" ng-show="ivrCampaignForm.TrunkId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.INTERVAL">Interval</label>\n                <md-select ng-model="vm.ivrCampaign.IntervalId" required>\n                    <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>\n                </md-select>\n                <div ng-messages="ivrCampaignForm.IntervalId.$error" ng-show="ivrCampaignForm.IntervalId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.CALLYSQUAREPROJECT">CallySquareProject</label>\n                <md-select ng-model="vm.ivrCampaign.SquareProjectId" required>\n                    <md-option ng-value="SquareProjectId.id" ng-repeat="SquareProjectId in vm.projects">{{ SquareProjectId.name }}</md-option>\n                </md-select>\n                <div ng-messages="ivrCampaignForm.SquareProjectId.$error" ng-show="ivrCampaignForm.SquareProjectId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.CALLYSQUAREPROJECT_REQUIRED">CallySquareProject field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.CONCURRENTCALLS">ConcurrentCalls</label>\n                <input type="number" name="limitCalls" ng-model="vm.ivrCampaign.limitCalls" min="1" max="200" required>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.CONCURRENTCALLS"></span></div>\n                <div ng-messages="ivrCampaignForm.limitCalls.$error" ng-show="ivrCampaignForm.limitCalls.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.CONCURRENTCALLS_REQUIRED">ConcurrentCalls field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.ivrCampaign.description">\n                <div ng-messages="ivrCampaignForm.description.$error" ng-show="ivrCampaignForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newIvrCampaign" ng-click="vm.saveIvrCampaign()" class="send-button md-accent md-raised" ng-disabled="ivrCampaignForm.$invalid || ivrCampaignForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newIvrCampaign" ng-click="vm.addNewIvrCampaign()" class="send-button md-accent md-raised" ng-disabled="ivrCampaignForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_IVRCAMPAIGN" translate-attr-aria-label="MOTIONDIALER.ADD_IVRCAMPAIGN">\n                    ADD IVRCAMPAIGN\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newIvrCampaign" ng-click="vm.deleteIvrCampaign($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/edit/blacklistadd/blacklistadd.html",'<md-dialog class="ivrCampaign-dialog" aria-label="ivrCampaign">\n    <form name="ivrCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.BLACKLISTADD_IVRCAMPAIGN">Add List in IVRCAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/edit/hoppers/dialog.html",'<md-dialog class="hopper-dialog" aria-label="New Hopper">\n    <form name="hopperForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div flex class="md-block">\n                <mdp-date-picker mdp-open-on-click name="scheduledatDate" mdp-placeholder="Date" mdp-format="YYYY-MM-DD" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.dateRangeFrom.$error" ng-show="hopperForm.dateRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="MOTIONDIALER.ERRORS.DATE_REQUIRED">Date is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="MOTIONDIALER.ERRORS.DATE_INVALID">Date is invalid</span>\n                        </div>\n                    </div>\n                </mdp-date-picker>\n            </div>\n\n            <div flex class="md-block">\n                <mdp-time-picker mdp-open-on-click name="scheduledatTime" mdp-placeholder="Time" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.timeRangeFrom.$error" ng-show="hopperForm.timeRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="MOTIONDIALER.ERRORS.TIME_REQUIRED">Time is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="MOTIONDIALER.ERRORS.TIME_INVALID">Time is invalid</span>\n                        </div>\n                    </div>\n                </mdp-time-picker>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newHopper" ng-click="vm.saveHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid || hopperForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newHopper" ng-click="vm.addNewHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_HOPPER" translate-attr-aria-label="MOTIONDIALER.ADD_HOPPER">\n                    ADD HOPPER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newHopper" ng-click="vm.deleteHopper($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/edit/listadd/listadd.html",'<md-dialog class="ivrCampaign-dialog" aria-label="ivrCampaign">\n    <form name="ivrCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.LISTADD_IVRCAMPAIGN">Add List in IVRCAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/edit/view.html",'<div id="motiondialer-ivrCampaign" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-ivrCampaigns-button md-icon-button" aria-label="Go to ivrCampaigns" ng-click="vm.gotoIvrCampaigns()" translate translate-attr-aria-label="MOTIONDIALER.GO_TO_IVRCAMPAIGNS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.ivrCampaign.userpic" class="ivrCampaign-image" hide-xs>\n                    <img ng-src="api/users/{{vm.ivrCampaign.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.ivrCampaign.userpic" class="ivrCampaign-image" hide-xs>\n                    <img ng-src="assets/images/business/ivrCampaigns.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.ivrCampaign.id}} {{vm.ivrCampaign.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="MOTIONDIALER.CREATED_AT"></span> <span>{{vm.ivrCampaign.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.listadddialog(vm.ivrCampaign, $event)" class="md-fab md-green-500-bg md-icon-button" aria-label="listadd">\n                <md-tooltip><span translate="MOTIONDIALER.LISTADD_IVRCAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-format-list-numbers"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.blacklistadddialog(vm.ivrCampaign, $event)" class="md-fab md-warn md-icon-button" aria-label="blacklistadd">\n                <md-tooltip><span translate="MOTIONDIALER.BLACKLISTADD_IVRCAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-block-helper"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveIvrCampaign()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (campaignForm.$invalid) || (originateForm.$invalid) || (globalForm.$invalid) || (congestionForm.$invalid) || (busyForm.$invalid) || (noanswerForm.$invalid) || (globalintervalForm.$invalid) || (timezoneForm.$invalid) || (hoppersForm.$invalid) || (hopperHistoriesForm.$invalid) || (hopperFinalsForm.$invalid) || (hopperBlacksForm.$invalid)"\n                translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.ivrCampaign.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.ivrCampaign.active" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TRUNK">Trunk</label>\n                                <md-select ng-model="vm.ivrCampaign.TrunkId" required>\n                                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkId.$error" ng-show="generalForm.TrunkId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BACKUPTRUNK">BackupTrunk</label>\n                                <md-select ng-model="vm.ivrCampaign.TrunkBackupId">\n                                    <md-option ng-value="TrunkBackupId.id" ng-repeat="TrunkBackupId in vm.trunks">{{ TrunkBackupId.name }}</md-option>\n                                    <md-option ng-value="null">None</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkBackupId.$error" ng-show="generalForm.TrunkBackupId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BACKUPTRUNK_REQUIRED">BackupTrunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.INTERVAL">Interval</label>\n                                <md-select ng-model="vm.ivrCampaign.IntervalId" required>\n                                    <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.IntervalId.$error" ng-show="generalForm.IntervalId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.ivrCampaign.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.CAMPAIGN">CAMPAIGN</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container campaign md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.CAMPAIGN">CAMPAIGN</div>\n                        </div>\n                        <form name="campaignForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CALLYSQUAREPROJECT">CallySquareProject</label>\n                                <md-select ng-model="vm.ivrCampaign.SquareProjectId" required autofocus>\n                                    <md-option ng-value="SquareProjectId.id" ng-repeat="SquareProjectId in vm.projects">{{ SquareProjectId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="campaignForm.SquareProjectId.$error" ng-show="campaignForm.SquareProjectId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CALLYSQUAREPROJECT_REQUIRED">CallySquareProject field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONCURRENTCALLS">ConcurrentCalls</label>\n                                <input type="number" name="limitCalls" ng-model="vm.ivrCampaign.limitCalls" min="1" max="200" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONCURRENTCALLS"></span></div>\n                                <div ng-messages="campaignForm.limitCalls.$error" ng-show="campaignForm.limitCalls.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONCURRENTCALLS_REQUIRED">ConcurrentCalls field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container originate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.ORIGINATE">ORIGINATE</div>\n                        </div>\n                        <form name="originateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATECALLERIDNAME">OriginateCallerIdName</label>\n                                <input type="text" name="dialOriginateCallerIdName" ng-model="vm.ivrCampaign.dialOriginateCallerIdName" autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATECALLERIDNAME"></span></div>\n                                <div ng-messages="originateForm.dialOriginateCallerIdName.$error" ng-show="originateForm.dialOriginateCallerIdName.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATECALLERIDNAME_REQUIRED">OriginateCallerIdName field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATECALLERIDNUMBER">OriginateCallerIdNumber</label>\n                                <input type="text" name="dialOriginateCallerIdNumber" ng-model="vm.ivrCampaign.dialOriginateCallerIdNumber">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATECALLERIDNUMBER"></span></div>\n                                <div ng-messages="originateForm.dialOriginateCallerIdNumber.$error" ng-show="originateForm.dialOriginateCallerIdNumber.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATECALLERIDNUMBER_REQUIRED">OriginateCallerIdNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATETIMEOUT">OriginateTimeout</label>\n                                <input type="number" name="dialOriginateTimeout" ng-model="vm.ivrCampaign.dialOriginateTimeout" min="1" max="999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATETIMEOUT"></span></div>\n                                <div ng-messages="originateForm.dialOriginateTimeout.$error" ng-show="originateForm.dialOriginateTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATETIMEOUT_REQUIRED">OriginateTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.RETRYANDFREQUENCY">RETRYANDFREQUENCY</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container global md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GLOBAL">GLOBAL</div>\n                        </div>\n                        <form name="globalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.GLOBALMAXRETRY">GlobalMaxRetry</label>\n                                <input type="number" name="dialGlobalMaxRetry" ng-model="vm.ivrCampaign.dialGlobalMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.GLOBALMAXRETRY"></span></div>\n                                <div ng-messages="globalForm.dialGlobalMaxRetry.$error" ng-show="globalForm.dialGlobalMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.GLOBALMAXRETRY_REQUIRED">GlobalMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container congestion md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.CONGESTION">CONGESTION</div>\n                        </div>\n                        <form name="congestionForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONGESTIONMAXRETRY">CongestionMaxRetry</label>\n                                <input type="number" name="dialCongestionMaxRetry" ng-model="vm.ivrCampaign.dialCongestionMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONGESTIONMAXRETRY"></span></div>\n                                <div ng-messages="congestionForm.dialCongestionMaxRetry.$error" ng-show="congestionForm.dialCongestionMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONGESTIONMAXRETRY_REQUIRED">CongestionMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONGESTIONRETRYTIME">CongestionRetryTime</label>\n                                <input type="number" name="dialCongestionRetryFrequency" ng-model="vm.ivrCampaign.dialCongestionRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONGESTIONRETRYTIME"></span></div>\n                                <div ng-messages="congestionForm.dialCongestionRetryFrequency.$error" ng-show="congestionForm.dialCongestionRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONGESTIONRETRYTIME_REQUIRED">CongestionRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container busy md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.BUSY">BUSY</div>\n                        </div>\n                        <form name="busyForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BUSYMAXRETRY">BusyMaxRetry</label>\n                                <input type="number" name="dialBusyMaxRetry" ng-model="vm.ivrCampaign.dialBusyMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.BUSYMAXRETRY"></span></div>\n                                <div ng-messages="busyForm.dialBusyMaxRetry.$error" ng-show="busyForm.dialBusyMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BUSYMAXRETRY_REQUIRED">BusyMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BUSYRETRYTIME">BusyRetryTime</label>\n                                <input type="number" name="dialBusyRetryFrequency" ng-model="vm.ivrCampaign.dialBusyRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.BUSYRETRYTIME"></span></div>\n                                <div ng-messages="busyForm.dialBusyRetryFrequency.$error" ng-show="busyForm.dialBusyRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BUSYRETRYTIME_REQUIRED">BusyRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container noanswer md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.NOANSWER">NOANSWER</div>\n                        </div>\n                        <form name="noanswerForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NOANSWERMAXRETRY">NoAnswerMaxRetry</label>\n                                <input type="number" name="dialNoAnswerMaxRetry" ng-model="vm.ivrCampaign.dialNoAnswerMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.NOANSWERMAXRETRY"></span></div>\n                                <div ng-messages="noanswerForm.dialNoAnswerMaxRetry.$error" ng-show="noanswerForm.dialNoAnswerMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NOANSWERMAXRETRY_REQUIRED">NoAnswerMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NOANSWERRETRYTIME">NoAnswerRetryTime</label>\n                                <input type="number" name="dialNoAnswerRetryFrequency" ng-model="vm.ivrCampaign.dialNoAnswerRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.NOANSWERRETRYTIME"></span></div>\n                                <div ng-messages="noanswerForm.dialNoAnswerRetryFrequency.$error" ng-show="noanswerForm.dialNoAnswerRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NOANSWERRETRYTIME_REQUIRED">NoAnswerRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container globalinterval md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GLOBALINTERVAL">GLOBALINTERVAL</div>\n                        </div>\n                        <form name="globalintervalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.GLOBALINTERVAL">GlobalInterval</label>\n                                <input type="text" name="dialGlobalInterval" ng-model="vm.ivrCampaign.dialGlobalInterval" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.GLOBALINTERVAL"></span></div>\n                                <div ng-messages="globalintervalForm.dialGlobalInterval.$error" ng-show="globalintervalForm.dialGlobalInterval.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.GLOBALINTERVAL_REQUIRED">GlobalInterval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container timezone md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.TIMEZONE">TIMEZONE</div>\n                        </div>\n                        <form name="timezoneForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TIMEZONE">Timezone</label>\n                                <ms-timezone name="dialTimezone" ng-model="vm.ivrCampaign.dialTimezone" autofocus>\n                                    <div class="hint"><span translate="MOTIONDIALER.HELP.TIMEZONE"></span></div>\n                                    <div ng-messages="timezoneForm.dialTimezone.$error" ng-show="timezoneForm.dialTimezone.$touched" role="alert">\n                                        <div ng-message="required">\n                                            <span translate="MOTIONDIALER.ERRORS.TIMEZONE_REQUIRED">Timezone field is required</span>\n                                        </div>\n                                    </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.HOPPERS">HOPPERS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container hoppers md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IvrCampaignHoppersController as vm_dc" ng-init="vm_dc.init(vm.ivrCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIvrCampaignHoppers.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERS">Hoppers</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditIvrCampaignHopper($event)" aria-label="add hopper" translate translate-attr-label="MOTIONDIALER.ADD_HOPPER">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIvrCampaignHoppers.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIvrCampaignHoppers.length}} {{vm_dc.selectedIvrCampaignHoppers.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIvrCampaignHoppers($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIvrCampaignHoppers" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIvrCampaignHoppers">\n                                        <tr md-row>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="countcongestionretry">{{ \'MOTIONDIALER.CONGESTION\' | translate }}</th>\n                                            <th md-column md-order-by="countbusyretry">{{ \'MOTIONDIALER.BUSY\' | translate }}</th>\n                                            <th md-column md-order-by="countnoanswerretry">{{ \'MOTIONDIALER.NOANSWER\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'MOTIONDIALER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopper" md-select-id="id" ng-repeat="hopper in vm_dc.ivrCampaignHoppers.rows">\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.ContactId}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.phone}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.countcongestionretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.countbusyretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.countnoanswerretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" translate="MOTIONDIALER.EDIT_HOPPER">\n                                                                Edit Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopper, $event)" translate="MOTIONDIALER.DELETE_HOPPER">\n                                                                Delete Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.ivrCampaignHoppers.rows.length">\n                                            <td md-cell colspan="9">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPER_AVAILABLE">No hopper available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.ivrCampaignHoppers.count}}" md-on-paginate="vm_dc.getIvrCampaignHoppers" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.HISTORY">HISTORY</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container hopperhistories md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IvrCampaignHopperHistoriesController as vm_dc" ng-init="vm_dc.init(vm.ivrCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIvrCampaignHopperHistories.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERHISTORIES">HopperHistories</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIvrCampaignHopperHistories.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIvrCampaignHopperHistories.length}} {{vm_dc.selectedIvrCampaignHopperHistories.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIvrCampaignHopperHistories($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIvrCampaignHopperHistories" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIvrCampaignHopperHistories">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'MOTIONDIALER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="calleridname">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="statedesc">{{ \'MOTIONDIALER.STATUS\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'MOTIONDIALER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'MOTIONDIALER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'MOTIONDIALER.ENDTIME\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperHistory" md-select-id="id" ng-repeat="hopperHistory in vm_dc.ivrCampaignHopperHistories.rows">\n                                            <td md-cell>{{hopperHistory.uniqueid}}</td>\n                                            <td md-cell>{{hopperHistory.ContactId}}</td>\n                                            <td md-cell>{{hopperHistory.calleridnum}}</td>\n                                            <td md-cell>{{hopperHistory.calleridname}}</td>\n                                            <td md-cell>{{hopperHistory.statedesc}}</td>\n                                            <td md-cell>{{hopperHistory.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperHistory.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperHistory.endtime | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperHistory, $event)" translate="MOTIONDIALER.DELETE_HOPPERHISTORY">\n                                                                Delete HopperHistory\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.ivrCampaignHopperHistories.rows.length">\n                                            <td md-cell colspan="11">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERHISTORY_AVAILABLE">No hopperhistory available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.ivrCampaignHopperHistories.count}}" md-on-paginate="vm_dc.getIvrCampaignHopperHistories" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.FINAL">FINAL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container hopperfinals md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IvrCampaignHopperFinalsController as vm_dc" ng-init="vm_dc.init(vm.ivrCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIvrCampaignHopperFinals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERFINALS">HopperFinals</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIvrCampaignHopperFinals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIvrCampaignHopperFinals.length}} {{vm_dc.selectedIvrCampaignHopperFinals.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIvrCampaignHopperFinals($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIvrCampaignHopperFinals" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIvrCampaignHopperFinals">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'MOTIONDIALER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="calleridname">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="statedesc">{{ \'MOTIONDIALER.STATUS\' | translate }}</th>\n                                            <th md-column md-order-by="countcongestionretry">{{ \'MOTIONDIALER.CONGESTION\' | translate }}</th>\n                                            <th md-column md-order-by="countbusyretry">{{ \'MOTIONDIALER.BUSY\' | translate }}</th>\n                                            <th md-column md-order-by="countnoanswerretry">{{ \'MOTIONDIALER.NOANSWER\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'MOTIONDIALER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'MOTIONDIALER.ENDTIME\' | translate }}</th>\n                                            <th md-column md-order-by="disposition">{{ \'MOTIONDIALER.DISPOSITION\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperFinal" md-select-id="id" ng-repeat="hopperFinal in vm_dc.ivrCampaignHopperFinals.rows">\n                                            <td md-cell>{{hopperFinal.uniqueid}}</td>\n                                            <td md-cell>{{hopperFinal.calleridnum}}</td>\n                                            <td md-cell>{{hopperFinal.calleridname}}</td>\n                                            <td md-cell>{{hopperFinal.statedesc}}</td>\n                                            <td md-cell>{{hopperFinal.countcongestionretry}}</td>\n                                            <td md-cell>{{hopperFinal.countbusyretry}}</td>\n                                            <td md-cell>{{hopperFinal.countnoanswerretry}}</td>\n                                            <td md-cell>{{hopperFinal.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperFinal.endtime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperFinal.disposition}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperFinal, $event)" translate="MOTIONDIALER.DELETE_HOPPERFINAL">\n                                                                Delete HopperFinal\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.ivrCampaignHopperFinals.rows.length">\n                                            <td md-cell colspan="15">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERFINAL_AVAILABLE">No hopperfinal available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.ivrCampaignHopperFinals.count}}" md-on-paginate="vm_dc.getIvrCampaignHopperFinals" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.BLACKLIST">BLACKLIST</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container hopperblacks md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IvrCampaignHopperBlacksController as vm_dc" ng-init="vm_dc.init(vm.ivrCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIvrCampaignHopperBlacks.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERBLACKS">HopperBlacks</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIvrCampaignHopperBlacks.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIvrCampaignHopperBlacks.length}} {{vm_dc.selectedIvrCampaignHopperBlacks.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIvrCampaignHopperBlacks($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIvrCampaignHopperBlacks" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIvrCampaignHopperBlacks">\n                                        <tr md-row>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperBlack" md-select-id="id" ng-repeat="hopperBlack in vm_dc.ivrCampaignHopperBlacks.rows">\n                                            <td md-cell>{{hopperBlack.ContactId}}</td>\n                                            <td md-cell>{{hopperBlack.phone}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperBlack, $event)" translate="MOTIONDIALER.DELETE_HOPPERBLACK">\n                                                                Delete HopperBlack\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.ivrCampaignHopperBlacks.rows.length">\n                                            <td md-cell colspan="4">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERBLACK_AVAILABLE">No hopperblack available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.ivrCampaignHopperBlacks.count}}" md-on-paginate="vm_dc.getIvrCampaignHopperBlacks" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/ivrCampaigns.html",'<div id="ivrCampaigns" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-fire" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="MOTIONDIALER.IVRCAMPAIGNS">IvrCampaigns</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="MOTIONDIALER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedIvrCampaigns.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedIvrCampaigns =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="MOTIONDIALER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-ivrCampaigns-count">\n                    <span>{{vm.selectedIvrCampaigns.length}}</span>\n                <span translate="MOTIONDIALER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="IVRCAMPAIGNS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllIvrCampaigns()" translate="MOTIONDIALER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectIvrCampaigns()" translate="MOTIONDIALER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedIvrCampaigns" filename="ivrCampaigns.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedIvrCampaigns($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- IVRCAMPAIGN TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedIvrCampaigns" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getIvrCampaigns">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'MOTIONDIALER.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                <th md-column md-order-by="active">{{ \'MOTIONDIALER.ACTIVE\' | translate }}</th>\n                                <th md-column md-order-by="TrunkId">{{ \'MOTIONDIALER.TRUNK\' | translate }}</th>\n                                <th md-column md-order-by="SquareProjectId">{{ \'MOTIONDIALER.CALLYSQUAREPROJECT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.ivrCampaigns.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="ivrCampaign" md-select-id="id" ng-repeat="ivrCampaign in vm.ivrCampaigns.rows">\n                                <td md-cell ng-if="ivrCampaign.userpic"><img class="avatar" alt="{{ivrCampaign.name}}" ng-src="api/users/{{ivrCampaign.id}}/avatar" /></td>\n                                <td md-cell ng-if="!ivrCampaign.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{ivrCampaign.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="id ">{{ivrCampaign.id}}</td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="name ">{{ivrCampaign.name}}</td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="active ">\n                                    <md-icon md-colors="{color: {{ivrCampaign.active ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{ivrCampaign.active ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="TrunkId ">{{ TrunkId = vm.trunks[ivrCampaign.TrunkId]; TrunkId.name }}</td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="SquareProjectId ">{{ SquareProjectId = vm.projects[ivrCampaign.SquareProjectId]; SquareProjectId.name }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(ivrCampaign, $event)" translate="MOTIONDIALER.EDIT_IVRCAMPAIGN">\n                                                    Edit IvrCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.listadddialog(ivrCampaign, $event)" translate="MOTIONDIALER.LISTADD_IVRCAMPAIGN">\n                                                    listadd IvrCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.blacklistadddialog(ivrCampaign, $event)" translate="MOTIONDIALER.BLACKLISTADD_IVRCAMPAIGN">\n                                                    blacklistadd IvrCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(ivrCampaign, $event)" translate="MOTIONDIALER.DELETE_IVRCAMPAIGN">\n                                                    Delete IvrCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.ivrCampaigns.count}}" md-on-paginate="vm.getIvrCampaigns" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / IVRCAMPAIGN TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD IVRCAMPAIGN BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-ivrCampaign-button" ng-click="vm.createOrEditIvrCampaign($event)" aria-label="add ivrCampaign" translate translate-attr-aria-label="MOTIONDIALER.ADD_IVRCAMPAIGN">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD IVRCAMPAIGN BUTTON --\x3e\n</div>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/create/dialog.html",'<md-dialog class="queueCampaign-dialog" aria-label="New QueueCampaign">\n    <form name="queueCampaignForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.queueCampaign.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="!vm.newQueueCampaign">\n                <div ng-messages="queueCampaignForm.name.$error" ng-show="queueCampaignForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.queueCampaign.dialActive" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.TRUNK">Trunk</label>\n                <md-select ng-model="vm.queueCampaign.TrunkId" required>\n                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                </md-select>\n                <div ng-messages="queueCampaignForm.TrunkId.$error" ng-show="queueCampaignForm.TrunkId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.INTERVAL">Interval</label>\n                <md-select ng-model="vm.queueCampaign.IntervalId" required>\n                    <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>\n                </md-select>\n                <div ng-messages="queueCampaignForm.IntervalId.$error" ng-show="queueCampaignForm.IntervalId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.METHOD">Method</label>\n                <md-select ng-model="vm.queueCampaign.dialMethod" required>\n                    <md-option ng-value="\'progressive\'">Progressive</md-option>\n                    <md-option ng-value="\'power\'">PowerDialing</md-option>\n                    <md-option ng-value="\'predictive\'">Predictive</md-option>\n                </md-select>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.METHOD"></span></div>\n                <div ng-messages="queueCampaignForm.dialMethod.$error" ng-show="queueCampaignForm.dialMethod.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.METHOD_REQUIRED">Method field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'power\'" class="md-block">\n                <span translate="MOTIONDIALER.POWERLEVEL">PowerLevel</span>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.POWERLEVEL"></span></div>\n                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPowerLevel" min="1" max="10" step="0.1" class="md-accent">\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                <label translate="MOTIONDIALER.PREDICTIVEOPTIMIZATION">PredictiveOptimization</label>\n                <md-select ng-model="vm.queueCampaign.dialPredictiveOptimization">\n\n                    <md-option ng-value="\'agentBusyFactor\'"> {{ \'MOTIONDIALER.AGENTBUSYFACTOR\' | translate }}</md-option>\n\n                    <md-option ng-value="\'dropRate\'"> {{ \'MOTIONDIALER.DROPRATE\' | translate }}</md-option>\n                </md-select>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEOPTIMIZATION"></span></div>\n                <div ng-messages="queueCampaignForm.dialPredictiveOptimization.$error" ng-show="queueCampaignForm.dialPredictiveOptimization.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.PREDICTIVEOPTIMIZATION_REQUIRED">PredictiveOptimization field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                <span translate="MOTIONDIALER.PREDICTIVEOPTIMIZATIONPERCENTAGE">PredictiveOptimizationPercentage</span>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEOPTIMIZATIONPERCENTAGE"></span></div>\n                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPredictiveOptimizationPercentage" min="1" max="95" step="0.1" class="md-accent">\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                <span translate="MOTIONDIALER.PREDICTIVEINTERVAL">PredictiveInterval</span>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEINTERVAL"></span></div>\n                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPredictiveInterval" min="5" max="30" step="1" class="md-accent">\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod != \'preview\'" class="md-block">\n                <label translate="MOTIONDIALER.MAXCONCURRENTCALLS">MaxConcurrentCalls</label>\n                <input type="number" name="dialLimitQueue" ng-model="vm.queueCampaign.dialLimitQueue" min="0" max="9999" required>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.MAXCONCURRENTCALLS"></span></div>\n                <div ng-messages="queueCampaignForm.dialLimitQueue.$error" ng-show="queueCampaignForm.dialLimitQueue.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.MAXCONCURRENTCALLS_REQUIRED">MaxConcurrentCalls field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.queueCampaign.description">\n                <div ng-messages="queueCampaignForm.description.$error" ng-show="queueCampaignForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newQueueCampaign" ng-click="vm.saveQueueCampaign()" class="send-button md-accent md-raised" ng-disabled="queueCampaignForm.$invalid || queueCampaignForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newQueueCampaign" ng-click="vm.addNewQueueCampaign()" class="send-button md-accent md-raised" ng-disabled="queueCampaignForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_QUEUECAMPAIGN" translate-attr-aria-label="MOTIONDIALER.ADD_QUEUECAMPAIGN">\n                    ADD QUEUECAMPAIGN\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newQueueCampaign" ng-click="vm.deleteQueueCampaign($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/agentadd/agentadd.html",'<md-dialog class="queueCampaign-dialog" aria-label="queueCampaign">\n    <form name="queueCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.AGENTADD_QUEUECAMPAIGN">Add Agent to queueCampaign</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="MOTIONDIALER.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="queueCampaignForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/blacklistadd/blacklistadd.html",'<md-dialog class="queueCampaign-dialog" aria-label="queueCampaign">\n    <form name="queueCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.BLACKLISTADD_QUEUECAMPAIGN">Add List in QUEUECAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/hoppers/dialog.html",'<md-dialog class="hopper-dialog" aria-label="New Hopper">\n    <form name="hopperForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div flex class="md-block">\n                <mdp-date-picker mdp-open-on-click name="scheduledatDate" mdp-placeholder="Date" mdp-format="YYYY-MM-DD" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.dateRangeFrom.$error" ng-show="hopperForm.dateRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="MOTIONDIALER.ERRORS.DATE_REQUIRED">Date is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="MOTIONDIALER.ERRORS.DATE_INVALID">Date is invalid</span>\n                        </div>\n                    </div>\n                </mdp-date-picker>\n            </div>\n\n            <div flex class="md-block">\n                <mdp-time-picker mdp-open-on-click name="scheduledatTime" mdp-placeholder="Time" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.timeRangeFrom.$error" ng-show="hopperForm.timeRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="MOTIONDIALER.ERRORS.TIME_REQUIRED">Time is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="MOTIONDIALER.ERRORS.TIME_INVALID">Time is invalid</span>\n                        </div>\n                    </div>\n                </mdp-time-picker>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newHopper" ng-click="vm.saveHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid || hopperForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newHopper" ng-click="vm.addNewHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_HOPPER" translate-attr-aria-label="MOTIONDIALER.ADD_HOPPER">\n                    ADD HOPPER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newHopper" ng-click="vm.deleteHopper($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/listadd/listadd.html",'<md-dialog class="queueCampaign-dialog" aria-label="queueCampaign">\n    <form name="queueCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.LISTADD_QUEUECAMPAIGN">Add List in QUEUECAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/teamadd/teamadd.html",'<md-dialog class="queueCampaign-dialog" aria-label="queueCampaign">\n    <form name="queueCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.TEAMADD_QUEUECAMPAIGN">Add Team in QUEUECAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="MOTIONDIALER.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="queueCampaignForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/view.html",'<div id="motiondialer-queueCampaign" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-queueCampaigns-button md-icon-button" aria-label="Go to queueCampaigns" ng-click="vm.gotoQueueCampaigns()" translate translate-attr-aria-label="MOTIONDIALER.GO_TO_QUEUECAMPAIGNS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.queueCampaign.userpic" class="queueCampaign-image" hide-xs>\n                    <img ng-src="api/users/{{vm.queueCampaign.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.queueCampaign.userpic" class="queueCampaign-image" hide-xs>\n                    <img ng-src="assets/images/business/queueCampaigns.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.queueCampaign.id}} {{vm.queueCampaign.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="MOTIONDIALER.CREATED_AT"></span> <span>{{vm.queueCampaign.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.listadddialog(vm.queueCampaign, $event)" class="md-fab md-green-500-bg md-icon-button" aria-label="listadd">\n                <md-tooltip><span translate="MOTIONDIALER.LISTADD_QUEUECAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-format-list-numbers"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.blacklistadddialog(vm.queueCampaign, $event)" class="md-fab md-warn md-icon-button" aria-label="blacklistadd">\n                <md-tooltip><span translate="MOTIONDIALER.BLACKLISTADD_QUEUECAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-block-helper"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.queueCampaign, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="MOTIONDIALER.TEAMADD_QUEUECAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.agentadddialog(vm.queueCampaign, $event)" class="md-fab md-purple-500-bg md-icon-button" aria-label="agentadd">\n                <md-tooltip><span translate="MOTIONDIALER.AGENTADD_QUEUECAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveQueueCampaign()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (campaignForm.$invalid) || (queueForm.$invalid) || (originateForm.$invalid) || (globalForm.$invalid) || (congestionForm.$invalid) || (busyForm.$invalid) || (noanswerForm.$invalid) || (advancedForm.$invalid) || (globalintervalForm.$invalid) || (timezoneForm.$invalid) || (hoppersForm.$invalid) || (hopperHistoriesForm.$invalid) || (hopperFinalsForm.$invalid) || (hopperBlacksForm.$invalid)"\n                translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.queueCampaign.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.queueCampaign.dialActive" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TRUNK">Trunk</label>\n                                <md-select ng-model="vm.queueCampaign.TrunkId" required>\n                                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkId.$error" ng-show="generalForm.TrunkId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BACKUPTRUNK">BackupTrunk</label>\n                                <md-select ng-model="vm.queueCampaign.TrunkBackupId">\n                                    <md-option ng-value="TrunkBackupId.id" ng-repeat="TrunkBackupId in vm.trunks">{{ TrunkBackupId.name }}</md-option>\n                                    <md-option ng-value="null">None</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkBackupId.$error" ng-show="generalForm.TrunkBackupId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BACKUPTRUNK_REQUIRED">BackupTrunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.INTERVAL">Interval</label>\n                                <md-select ng-model="vm.queueCampaign.IntervalId" required>\n                                    <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.IntervalId.$error" ng-show="generalForm.IntervalId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.queueCampaign.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.CAMPAIGN">CAMPAIGN</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container campaign md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.CAMPAIGN">CAMPAIGN</div>\n                        </div>\n                        <form name="campaignForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.METHOD">Method</label>\n                                <md-select ng-model="vm.queueCampaign.dialMethod" required autofocus>\n                                    <md-option ng-value="\'progressive\'">Progressive</md-option>\n                                    <md-option ng-value="\'power\'">PowerDialing</md-option>\n                                    <md-option ng-value="\'predictive\'">Predictive</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.METHOD"></span></div>\n                                <div ng-messages="campaignForm.dialMethod.$error" ng-show="campaignForm.dialMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.METHOD_REQUIRED">Method field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'power\'" class="md-block">\n                                <span translate="MOTIONDIALER.POWERLEVEL">PowerLevel</span>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.POWERLEVEL"></span></div>\n                                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPowerLevel" min="1" max="10" step="0.1" class="md-accent">\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                                <label translate="MOTIONDIALER.PREDICTIVEOPTIMIZATION">PredictiveOptimization</label>\n                                <md-select ng-model="vm.queueCampaign.dialPredictiveOptimization">\n\n                                    <md-option ng-value="\'agentBusyFactor\'"> {{ \'MOTIONDIALER.AGENTBUSYFACTOR\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'dropRate\'"> {{ \'MOTIONDIALER.DROPRATE\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEOPTIMIZATION"></span></div>\n                                <div ng-messages="campaignForm.dialPredictiveOptimization.$error" ng-show="campaignForm.dialPredictiveOptimization.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.PREDICTIVEOPTIMIZATION_REQUIRED">PredictiveOptimization field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                                <span translate="MOTIONDIALER.PREDICTIVEOPTIMIZATIONPERCENTAGE">PredictiveOptimizationPercentage</span>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEOPTIMIZATIONPERCENTAGE"></span></div>\n                                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPredictiveOptimizationPercentage" min="1" max="95" step="0.1" class="md-accent">\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                                <span translate="MOTIONDIALER.PREDICTIVEINTERVAL">PredictiveInterval</span>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEINTERVAL"></span></div>\n                                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPredictiveInterval" min="5" max="30" step="1" class="md-accent">\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod != \'preview\'" class="md-block">\n                                <label translate="MOTIONDIALER.MAXCONCURRENTCALLS">MaxConcurrentCalls</label>\n                                <input type="number" name="dialLimitQueue" ng-model="vm.queueCampaign.dialLimitQueue" min="0" max="9999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.MAXCONCURRENTCALLS"></span></div>\n                                <div ng-messages="campaignForm.dialLimitQueue.$error" ng-show="campaignForm.dialLimitQueue.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.MAXCONCURRENTCALLS_REQUIRED">MaxConcurrentCalls field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container queue md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.QUEUE">QUEUE</div>\n                        </div>\n                        <form name="queueForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.QUEUEOPTIONS">QueueOptions</label>\n                                <input type="text" name="dialQueueOptions" ng-model="vm.queueCampaign.dialQueueOptions" autofocus>\n                                <div ng-messages="queueForm.dialQueueOptions.$error" ng-show="queueForm.dialQueueOptions.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.QUEUEOPTIONS_REQUIRED">QueueOptions field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.QUEUETIMEOUT">QueueTimeout</label>\n                                <input type="number" name="dialQueueTimeout" ng-model="vm.queueCampaign.dialQueueTimeout" min="1" max="99" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.QUEUETIMEOUT"></span></div>\n                                <div ng-messages="queueForm.dialQueueTimeout.$error" ng-show="queueForm.dialQueueTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.QUEUETIMEOUT_REQUIRED">QueueTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.queueCampaign.strategy" required>\n                                    <md-option ng-value="\'rrmemory\'">Round Robin Memory</md-option>\n                                    <md-option ng-value="\'leastrecent\'">Least Recent</md-option>\n                                    <md-option ng-value="\'fewestcalls\'">Fewest Calls</md-option>\n                                    <md-option ng-value="\'random\'">Random</md-option>\n                                    <md-option ng-value="\'linear\'">Linear</md-option>\n                                    <md-option ng-value="\'wrandom\'">Weight Random</md-option>\n                                </md-select>\n                                <div ng-messages="queueForm.strategy.$error" ng-show="queueForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.AGENTTIMEOUT">AgentTimeout</label>\n                                <input type="number" name="timeout" ng-model="vm.queueCampaign.timeout" min="0" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.AGENTTIMEOUT"></span></div>\n                                <div ng-messages="queueForm.timeout.$error" ng-show="queueForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.AGENTTIMEOUT_REQUIRED">AgentTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.RETRY">Retry</label>\n                                <input type="number" name="retry" ng-model="vm.queueCampaign.retry" min="0">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.RETRY"></span></div>\n                                <div ng-messages="queueForm.retry.$error" ng-show="queueForm.retry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.RETRY_REQUIRED">Retry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.WRAPUPTIME">WrapupTime</label>\n                                <input type="number" name="wrapuptime" ng-model="vm.queueCampaign.wrapuptime" min="0">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.WRAPUPTIME"></span></div>\n                                <div ng-messages="queueForm.wrapuptime.$error" ng-show="queueForm.wrapuptime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.WRAPUPTIME_REQUIRED">WrapupTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.WEIGHT">Weight</label>\n                                <input type="number" name="weight" ng-model="vm.queueCampaign.weight" min="0">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.WEIGHT"></span></div>\n                                <div ng-messages="queueForm.weight.$error" ng-show="queueForm.weight.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.WEIGHT_REQUIRED">Weight field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.MUSICONHOLD">MusicOnHold</label>\n                                <md-select ng-model="vm.queueCampaign.musiconhold">\n                                    <md-option ng-value="musiconhold.name" ng-repeat="musiconhold in vm.musiconholds">{{ musiconhold.name }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.MUSICONHOLD"></span></div>\n                                <div ng-messages="queueForm.musiconhold.$error" ng-show="queueForm.musiconhold.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.MUSICONHOLD_REQUIRED">MusicOnHold field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CALLYSQUAREPROJECT">CallySquareProject</label>\n                                <md-select ng-model="vm.queueCampaign.dialQueueProject">\n                                    <md-option ng-value="dialQueueProject.name" ng-repeat="dialQueueProject in vm.projects">{{ dialQueueProject.name }}</md-option>\n                                    <md-option ng-value="null">None</md-option>\n                                </md-select>\n                                <div ng-messages="queueForm.dialQueueProject.$error" ng-show="queueForm.dialQueueProject.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CALLYSQUAREPROJECT_REQUIRED">CallySquareProject field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container originate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.ORIGINATE">ORIGINATE</div>\n                        </div>\n                        <form name="originateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATECALLERIDNAME">OriginateCallerIdName</label>\n                                <input type="text" name="dialOriginateCallerIdName" ng-model="vm.queueCampaign.dialOriginateCallerIdName" autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATECALLERIDNAME"></span></div>\n                                <div ng-messages="originateForm.dialOriginateCallerIdName.$error" ng-show="originateForm.dialOriginateCallerIdName.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATECALLERIDNAME_REQUIRED">OriginateCallerIdName field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATECALLERIDNUMBER">OriginateCallerIdNumber</label>\n                                <input type="text" name="dialOriginateCallerIdNumber" ng-model="vm.queueCampaign.dialOriginateCallerIdNumber">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATECALLERIDNUMBER"></span></div>\n                                <div ng-messages="originateForm.dialOriginateCallerIdNumber.$error" ng-show="originateForm.dialOriginateCallerIdNumber.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATECALLERIDNUMBER_REQUIRED">OriginateCallerIdNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATETIMEOUT">OriginateTimeout</label>\n                                <input type="number" name="dialOriginateTimeout" ng-model="vm.queueCampaign.dialOriginateTimeout" min="1" max="999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATETIMEOUT"></span></div>\n                                <div ng-messages="originateForm.dialOriginateTimeout.$error" ng-show="originateForm.dialOriginateTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATETIMEOUT_REQUIRED">OriginateTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.RETRYANDFREQUENCY">RETRYANDFREQUENCY</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container global md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GLOBAL">GLOBAL</div>\n                        </div>\n                        <form name="globalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.GLOBALMAXRETRY">GlobalMaxRetry</label>\n                                <input type="number" name="dialGlobalMaxRetry" ng-model="vm.queueCampaign.dialGlobalMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.GLOBALMAXRETRY"></span></div>\n                                <div ng-messages="globalForm.dialGlobalMaxRetry.$error" ng-show="globalForm.dialGlobalMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.GLOBALMAXRETRY_REQUIRED">GlobalMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container congestion md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.CONGESTION">CONGESTION</div>\n                        </div>\n                        <form name="congestionForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONGESTIONMAXRETRY">CongestionMaxRetry</label>\n                                <input type="number" name="dialCongestionMaxRetry" ng-model="vm.queueCampaign.dialCongestionMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONGESTIONMAXRETRY"></span></div>\n                                <div ng-messages="congestionForm.dialCongestionMaxRetry.$error" ng-show="congestionForm.dialCongestionMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONGESTIONMAXRETRY_REQUIRED">CongestionMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONGESTIONRETRYTIME">CongestionRetryTime</label>\n                                <input type="number" name="dialCongestionRetryFrequency" ng-model="vm.queueCampaign.dialCongestionRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONGESTIONRETRYTIME"></span></div>\n                                <div ng-messages="congestionForm.dialCongestionRetryFrequency.$error" ng-show="congestionForm.dialCongestionRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONGESTIONRETRYTIME_REQUIRED">CongestionRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container busy md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.BUSY">BUSY</div>\n                        </div>\n                        <form name="busyForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BUSYMAXRETRY">BusyMaxRetry</label>\n                                <input type="number" name="dialBusyMaxRetry" ng-model="vm.queueCampaign.dialBusyMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.BUSYMAXRETRY"></span></div>\n                                <div ng-messages="busyForm.dialBusyMaxRetry.$error" ng-show="busyForm.dialBusyMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BUSYMAXRETRY_REQUIRED">BusyMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BUSYRETRYTIME">BusyRetryTime</label>\n                                <input type="number" name="dialBusyRetryFrequency" ng-model="vm.queueCampaign.dialBusyRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.BUSYRETRYTIME"></span></div>\n                                <div ng-messages="busyForm.dialBusyRetryFrequency.$error" ng-show="busyForm.dialBusyRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BUSYRETRYTIME_REQUIRED">BusyRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container noanswer md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.NOANSWER">NOANSWER</div>\n                        </div>\n                        <form name="noanswerForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NOANSWERMAXRETRY">NoAnswerMaxRetry</label>\n                                <input type="number" name="dialNoAnswerMaxRetry" ng-model="vm.queueCampaign.dialNoAnswerMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.NOANSWERMAXRETRY"></span></div>\n                                <div ng-messages="noanswerForm.dialNoAnswerMaxRetry.$error" ng-show="noanswerForm.dialNoAnswerMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NOANSWERMAXRETRY_REQUIRED">NoAnswerMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NOANSWERRETRYTIME">NoAnswerRetryTime</label>\n                                <input type="number" name="dialNoAnswerRetryFrequency" ng-model="vm.queueCampaign.dialNoAnswerRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.NOANSWERRETRYTIME"></span></div>\n                                <div ng-messages="noanswerForm.dialNoAnswerRetryFrequency.$error" ng-show="noanswerForm.dialNoAnswerRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NOANSWERRETRYTIME_REQUIRED">NoAnswerRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.queueCampaign.acw" aria-label="AfterCallWork"><span translate="MOTIONDIALER.AFTERCALLWORK">AfterCallWork</span></md-switch>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.AFTERCALLWORK"></span></div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.acw" class="md-block">\n                                <label translate="MOTIONDIALER.AFTERCALLWORKDURATION">AfterCallWorkDuration</label>\n                                <input type="number" name="acwTimeout" ng-model="vm.queueCampaign.acwTimeout" min="0" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.AFTERCALLWORKDURATION"></span></div>\n                                <div ng-messages="advancedForm.acwTimeout.$error" ng-show="advancedForm.acwTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.AFTERCALLWORKDURATION_REQUIRED">AfterCallWorkDuration field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.AUTOPAUSE">AutoPause</label>\n                                <md-select ng-model="vm.queueCampaign.autopause">\n\n                                    <md-option ng-value="\'all\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.AUTOPAUSE"></span></div>\n                                <div ng-messages="advancedForm.autopause.$error" ng-show="advancedForm.autopause.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.AUTOPAUSE_REQUIRED">AutoPause field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.RINGINUSE">RingInUse</label>\n                                <md-select ng-model="vm.queueCampaign.ringinuse">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.RINGINUSE"></span></div>\n                                <div ng-messages="advancedForm.ringinuse.$error" ng-show="advancedForm.ringinuse.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.RINGINUSE_REQUIRED">RingInUse field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.MEMBERDELAY">MemberDelay</label>\n                                <input type="number" name="memberdelay" ng-model="vm.queueCampaign.memberdelay" min="0">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.MEMBERDELAY"></span></div>\n                                <div ng-messages="advancedForm.memberdelay.$error" ng-show="advancedForm.memberdelay.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.MEMBERDELAY_REQUIRED">MemberDelay field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TIMEOUTRESTART">TimeoutRestart</label>\n                                <md-select ng-model="vm.queueCampaign.timeoutrestart">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.TIMEOUTRESTART"></span></div>\n                                <div ng-messages="advancedForm.timeoutrestart.$error" ng-show="advancedForm.timeoutrestart.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.TIMEOUTRESTART_REQUIRED">TimeoutRestart field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.MONITORFORMAT">MonitorFormat</label>\n                                <md-select ng-model="vm.queueCampaign.monitor_format">\n                                    <md-option ng-value="\'\'">Inactive</md-option>\n                                    <md-option ng-value="\'wav\'">wav</md-option>\n                                    <md-option ng-value="\'wav49\'">wav49</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.MONITORFORMAT"></span></div>\n                                <div ng-messages="advancedForm.monitor_format.$error" ng-show="advancedForm.monitor_format.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.MONITORFORMAT_REQUIRED">MonitorFormat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONTEXT">Context</label>\n                                <input type="text" name="context" ng-model="vm.queueCampaign.context">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONTEXT"></span></div>\n                                <div ng-messages="advancedForm.context.$error" ng-show="advancedForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.SETINTERFACEVARIABLES">SetInterfaceVariables</label>\n                                <md-select ng-model="vm.queueCampaign.setinterfacevar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.SETINTERFACEVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setinterfacevar.$error" ng-show="advancedForm.setinterfacevar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.SETINTERFACEVARIABLES_REQUIRED">SetInterfaceVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.SETQUEUEVARIABLES">SetQueueVariables</label>\n                                <md-select ng-model="vm.queueCampaign.setqueuevar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.SETQUEUEVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setqueuevar.$error" ng-show="advancedForm.setqueuevar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.SETQUEUEVARIABLES_REQUIRED">SetQueueVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.SETQUEUEENTRYVARIABLES">SetQueueEntryVariables</label>\n                                <md-select ng-model="vm.queueCampaign.setqueueentryvar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.SETQUEUEENTRYVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setqueueentryvar.$error" ng-show="advancedForm.setqueueentryvar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.SETQUEUEENTRYVARIABLES_REQUIRED">SetQueueEntryVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container globalinterval md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GLOBALINTERVAL">GLOBALINTERVAL</div>\n                        </div>\n                        <form name="globalintervalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.GLOBALINTERVAL">GlobalInterval</label>\n                                <input type="text" name="dialGlobalInterval" ng-model="vm.queueCampaign.dialGlobalInterval" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.GLOBALINTERVAL"></span></div>\n                                <div ng-messages="globalintervalForm.dialGlobalInterval.$error" ng-show="globalintervalForm.dialGlobalInterval.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.GLOBALINTERVAL_REQUIRED">GlobalInterval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container timezone md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.TIMEZONE">TIMEZONE</div>\n                        </div>\n                        <form name="timezoneForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TIMEZONE">Timezone</label>\n                                <ms-timezone name="dialTimezone" ng-model="vm.queueCampaign.dialTimezone" autofocus>\n                                    <div class="hint"><span translate="MOTIONDIALER.HELP.TIMEZONE"></span></div>\n                                    <div ng-messages="timezoneForm.dialTimezone.$error" ng-show="timezoneForm.dialTimezone.$touched" role="alert">\n                                        <div ng-message="required">\n                                            <span translate="MOTIONDIALER.ERRORS.TIMEZONE_REQUIRED">Timezone field is required</span>\n                                        </div>\n                                    </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.HOPPERS">HOPPERS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container hoppers md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="QueueCampaignHoppersController as vm_dc" ng-init="vm_dc.init(vm.queueCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedQueueCampaignHoppers.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERS">Hoppers</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditQueueCampaignHopper($event)" aria-label="add hopper" translate translate-attr-label="MOTIONDIALER.ADD_HOPPER">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedQueueCampaignHoppers.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedQueueCampaignHoppers.length}} {{vm_dc.selectedQueueCampaignHoppers.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedQueueCampaignHoppers($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedQueueCampaignHoppers" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getQueueCampaignHoppers">\n                                        <tr md-row>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="countcongestionretry">{{ \'MOTIONDIALER.CONGESTION\' | translate }}</th>\n                                            <th md-column md-order-by="countbusyretry">{{ \'MOTIONDIALER.BUSY\' | translate }}</th>\n                                            <th md-column md-order-by="countnoanswerretry">{{ \'MOTIONDIALER.NOANSWER\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'MOTIONDIALER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopper" md-select-id="id" ng-repeat="hopper in vm_dc.queueCampaignHoppers.rows">\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.ContactId}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.phone}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.countcongestionretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.countbusyretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.countnoanswerretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" translate="MOTIONDIALER.EDIT_HOPPER">\n                                                                Edit Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopper, $event)" translate="MOTIONDIALER.DELETE_HOPPER">\n                                                                Delete Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.queueCampaignHoppers.rows.length">\n                                            <td md-cell colspan="9">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPER_AVAILABLE">No hopper available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.queueCampaignHoppers.count}}" md-on-paginate="vm_dc.getQueueCampaignHoppers" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.HISTORY">HISTORY</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container hopperhistories md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="QueueCampaignHopperHistoriesController as vm_dc" ng-init="vm_dc.init(vm.queueCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedQueueCampaignHopperHistories.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERHISTORIES">HopperHistories</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedQueueCampaignHopperHistories.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedQueueCampaignHopperHistories.length}} {{vm_dc.selectedQueueCampaignHopperHistories.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedQueueCampaignHopperHistories($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedQueueCampaignHopperHistories" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getQueueCampaignHopperHistories">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'MOTIONDIALER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="calleridname">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="statedesc">{{ \'MOTIONDIALER.STATUS\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'MOTIONDIALER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'MOTIONDIALER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'MOTIONDIALER.ENDTIME\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperHistory" md-select-id="id" ng-repeat="hopperHistory in vm_dc.queueCampaignHopperHistories.rows">\n                                            <td md-cell>{{hopperHistory.uniqueid}}</td>\n                                            <td md-cell>{{hopperHistory.ContactId}}</td>\n                                            <td md-cell>{{hopperHistory.calleridnum}}</td>\n                                            <td md-cell>{{hopperHistory.calleridname}}</td>\n                                            <td md-cell>{{hopperHistory.statedesc}}</td>\n                                            <td md-cell>{{hopperHistory.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperHistory.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperHistory.endtime | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperHistory, $event)" translate="MOTIONDIALER.DELETE_HOPPERHISTORY">\n                                                                Delete HopperHistory\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.queueCampaignHopperHistories.rows.length">\n                                            <td md-cell colspan="11">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERHISTORY_AVAILABLE">No hopperhistory available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.queueCampaignHopperHistories.count}}" md-on-paginate="vm_dc.getQueueCampaignHopperHistories" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.FINAL">FINAL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container hopperfinals md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="QueueCampaignHopperFinalsController as vm_dc" ng-init="vm_dc.init(vm.queueCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedQueueCampaignHopperFinals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERFINALS">HopperFinals</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedQueueCampaignHopperFinals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedQueueCampaignHopperFinals.length}} {{vm_dc.selectedQueueCampaignHopperFinals.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedQueueCampaignHopperFinals($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedQueueCampaignHopperFinals" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getQueueCampaignHopperFinals">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'MOTIONDIALER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="calleridname">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="statedesc">{{ \'MOTIONDIALER.STATUS\' | translate }}</th>\n                                            <th md-column md-order-by="countcongestionretry">{{ \'MOTIONDIALER.CONGESTION\' | translate }}</th>\n                                            <th md-column md-order-by="countbusyretry">{{ \'MOTIONDIALER.BUSY\' | translate }}</th>\n                                            <th md-column md-order-by="countnoanswerretry">{{ \'MOTIONDIALER.NOANSWER\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'MOTIONDIALER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'MOTIONDIALER.ENDTIME\' | translate }}</th>\n                                            <th md-column md-order-by="disposition">{{ \'MOTIONDIALER.DISPOSITION\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperFinal" md-select-id="id" ng-repeat="hopperFinal in vm_dc.queueCampaignHopperFinals.rows">\n                                            <td md-cell>{{hopperFinal.uniqueid}}</td>\n                                            <td md-cell>{{hopperFinal.calleridnum}}</td>\n                                            <td md-cell>{{hopperFinal.calleridname}}</td>\n                                            <td md-cell>{{hopperFinal.statedesc}}</td>\n                                            <td md-cell>{{hopperFinal.countcongestionretry}}</td>\n                                            <td md-cell>{{hopperFinal.countbusyretry}}</td>\n                                            <td md-cell>{{hopperFinal.countnoanswerretry}}</td>\n                                            <td md-cell>{{hopperFinal.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperFinal.endtime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperFinal.disposition}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperFinal, $event)" translate="MOTIONDIALER.DELETE_HOPPERFINAL">\n                                                                Delete HopperFinal\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.queueCampaignHopperFinals.rows.length">\n                                            <td md-cell colspan="15">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERFINAL_AVAILABLE">No hopperfinal available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.queueCampaignHopperFinals.count}}" md-on-paginate="vm_dc.getQueueCampaignHopperFinals" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.BLACKLIST">BLACKLIST</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container hopperblacks md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="QueueCampaignHopperBlacksController as vm_dc" ng-init="vm_dc.init(vm.queueCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedQueueCampaignHopperBlacks.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERBLACKS">HopperBlacks</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedQueueCampaignHopperBlacks.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedQueueCampaignHopperBlacks.length}} {{vm_dc.selectedQueueCampaignHopperBlacks.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedQueueCampaignHopperBlacks($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedQueueCampaignHopperBlacks" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getQueueCampaignHopperBlacks">\n                                        <tr md-row>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperBlack" md-select-id="id" ng-repeat="hopperBlack in vm_dc.queueCampaignHopperBlacks.rows">\n                                            <td md-cell>{{hopperBlack.ContactId}}</td>\n                                            <td md-cell>{{hopperBlack.phone}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperBlack, $event)" translate="MOTIONDIALER.DELETE_HOPPERBLACK">\n                                                                Delete HopperBlack\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.queueCampaignHopperBlacks.rows.length">\n                                            <td md-cell colspan="4">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERBLACK_AVAILABLE">No hopperblack available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.queueCampaignHopperBlacks.count}}" md-on-paginate="vm_dc.getQueueCampaignHopperBlacks" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/queueCampaigns.html",'<div id="queueCampaigns" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-fire" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="MOTIONDIALER.QUEUECAMPAIGNS">QueueCampaigns</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="MOTIONDIALER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedQueueCampaigns.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedQueueCampaigns =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="MOTIONDIALER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-queueCampaigns-count">\n                    <span>{{vm.selectedQueueCampaigns.length}}</span>\n                <span translate="MOTIONDIALER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="QUEUECAMPAIGNS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllQueueCampaigns()" translate="MOTIONDIALER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectQueueCampaigns()" translate="MOTIONDIALER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedQueueCampaigns" filename="queueCampaigns.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedQueueCampaigns($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- QUEUECAMPAIGN TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedQueueCampaigns" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueueCampaigns">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'MOTIONDIALER.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                <th md-column md-order-by="dialActive">{{ \'MOTIONDIALER.ACTIVE\' | translate }}</th>\n                                <th md-column md-order-by="TrunkId">{{ \'MOTIONDIALER.TRUNK\' | translate }}</th>\n                                <th md-column md-order-by="dialMethod">{{ \'MOTIONDIALER.METHOD\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'MOTIONDIALER.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.queueCampaigns.rows.length">\n                                <td md-cell colspan="7">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="queueCampaign" md-select-id="id" ng-repeat="queueCampaign in vm.queueCampaigns.rows">\n                                <td md-cell ng-if="queueCampaign.userpic"><img class="avatar" alt="{{queueCampaign.name}}" ng-src="api/users/{{queueCampaign.id}}/avatar" /></td>\n                                <td md-cell ng-if="!queueCampaign.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{queueCampaign.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="id ">{{queueCampaign.id}}</td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="name ">{{queueCampaign.name}}</td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="dialActive ">\n                                    <md-icon md-colors="{color: {{queueCampaign.dialActive ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{queueCampaign.dialActive ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="TrunkId ">{{ TrunkId = vm.trunks[queueCampaign.TrunkId]; TrunkId.name }}</td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="dialMethod ">{{ vm.arraydialMethod[queueCampaign.dialMethod].option }}</td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="strategy ">{{ vm.arraystrategy[queueCampaign.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(queueCampaign, $event)" translate="MOTIONDIALER.EDIT_QUEUECAMPAIGN">\n                                                    Edit QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.listadddialog(queueCampaign, $event)" translate="MOTIONDIALER.LISTADD_QUEUECAMPAIGN">\n                                                    listadd QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.blacklistadddialog(queueCampaign, $event)" translate="MOTIONDIALER.BLACKLISTADD_QUEUECAMPAIGN">\n                                                    blacklistadd QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.teamadddialog(queueCampaign, $event)" translate="MOTIONDIALER.TEAMADD_QUEUECAMPAIGN">\n                                                    teamadd QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.agentadddialog(queueCampaign, $event)" translate="MOTIONDIALER.AGENTADD_QUEUECAMPAIGN">\n                                                    agentadd QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(queueCampaign, $event)" translate="MOTIONDIALER.DELETE_QUEUECAMPAIGN">\n                                                    Delete QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.queueCampaigns.count}}" md-on-paginate="vm.getQueueCampaigns" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / QUEUECAMPAIGN TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD QUEUECAMPAIGN BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-queueCampaign-button" ng-click="vm.createOrEditQueueCampaign($event)" aria-label="add queueCampaign" translate translate-attr-aria-label="MOTIONDIALER.ADD_QUEUECAMPAIGN">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD QUEUECAMPAIGN BUTTON --\x3e\n</div>'),e.put("app/main/apps/motiondialer/views/realtime/agents/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.AGENTS">Agents</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n        <md-button class="md-icon-button" ng-click="vm.showInfo($event)">\n            <i class="icon-information-outline grey-600-fg">\n        <md-tooltip>{{\'MOTIONDIALER.INFO\' | translate}}</md-tooltip>\n      </i>\n        </md-button>\n    </div>\n</md-toolbar>\n\n\x3c!-- AGENT TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getAgents">\n            <tr md-row>\n                <th md-column width="20px"></th>\n                <th md-column md-order-by="fullname">{{ \'MOTIONDIALER.FULLNAME\' | translate }}</th>\n                <th md-column md-order-by="internal">{{ \'MOTIONDIALER.INTERNAL\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.PHONE_STATE\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.PHONE_STATUS\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.agents">\n                <td md-cell colspan="6">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="agent" md-select-id="id" ng-repeat="(id, agent) in vm.agents">\n                <td md-cell>\n                    <div class="avatar-wrapper">\n                        <img md-menu-align-target class="avatar" ng-src="{{agent.userpic && \'api/users/\'+agent.id+\'/avatar\' || \'assets/images/avatars/profile.jpg\'}}">\n                        <md-icon md-font-icon class="icon status s16 icon-checkbox-marked-circle" ng-class="agent.online ? \'green-300-fg\' : \'red-300-fg\'"></md-icon>\n                    </div>\n                </td>\n                <td md-cell>\n                    <div layout="column">\n                        <span class="text-truncate"><span ng-if="agent.online" class="text-boxed"><timer start-time="agent.lastLoginAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>{{agent.fullname}}</span>\n                        <span class="text-truncate" ng-if="agent.voicePause">\n              <span><span class="text-boxed"><timer start-time="agent.lastPauseAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></span><span class="blink red-fg">{{agent.pauseType || \'dafault\' | uppercase}}</span>\n                        </span>\n                    </div>\n                </td>\n                <td md-cell>\n                    {{agent.internal}}\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.stateClass[agent.state]">\n            <md-tooltip>{{\'MOTIONDIALER.\' + agent.state | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span class="text-boxed" ng-if="agent.stateTime && vm.isAvailableState(agent.state)">\n            <timer ng-if="agent.stateTime" start-time="agent.stateTime" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n          </span>\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.statusClass[agent.status]">\n            <md-tooltip>{{\'MOTIONDIALER.\' + agent.status | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span ng-if="agent.status === \'registered\'" class="text-boxed">{{agent.address}}</span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="4">\n                            <md-menu-item>\n                                <md-button ng-click="vm.logout(agent, $event)" translate="MOTIONDIALER.LOGOUT">\n                                    Logout\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.queueAdd(agent, $event)" translate="MOTIONDIALER.AGENTADD_QUEUE">\n                                    Add Agent In Queue\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-menu>\n                                    <md-button ng-click="$mdMenu.open()" translate="MOTIONDIALER.PAUSE">Pause</md-button>\n                                    <md-menu-content>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.pause(agent)"><em translate="MOTIONDIALER.DEFAULT_PAUSE">Default Pause</em></md-button>\n                                        </md-menu-item>\n                                        <md-menu-item ng-if="vm.pauses.rows.length" ng-repeat="pause in vm.pauses.rows">\n                                            <md-button ng-click="vm.pause(agent, pause.name)">{{pause.name}}</md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.unPause(agent)" translate="MOTIONDIALER.UNPAUSE">\n                                    Unpause\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getAgents" md-page-select></md-table-pagination>\n\x3c!-- / AGENT TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/ivr_campaigns/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.IVR_CAMPAIGNS">Ivr Campaigns</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getCampaigns">\n            <tr md-row>\n                <th md-column>{{\'MOTIONDIALER.NAME\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.TOTAL\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.TOTAL_MANAGED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.LIMITED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.ORIGINATED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.MESSAGE\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.CALLYSQUAREPROJECT\' | translate}}</th>\n                <th md-column>{{ \'MOTIONDIALER.TRUNK\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.ACTIVE\' | translate }}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.campaigns">\n                <td md-cell colspan="8">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="(id, campaign) in vm.campaigns">\n                <td md-cell>\n                    <span>{{campaign.name}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.ivrTotalCallsDays || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.ivrAnswerCallsDay || 0}} ({{(campaign.ivrTotalCallsDays) ? (campaign.ivrAnswerCallsDay || 0) * 100/(campaign.ivrTotalCallsDays ) : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.limitCalls || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.originated || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.message ? (\'MOTIONDIALER.\'+campaign.message | translate) : \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.dialQueueProject || \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{campaign.Trunk ? campaign.Trunk.name : \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <md-icon md-colors="{color: {{campaign.active ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{campaign.active ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="3">\n                            <md-menu-item>\n                                <md-button ng-click="vm.createOrEditIvrCampaign($event, campaign)" translate="MOTIONDIALER.EDIT_CAMPAIGN">\n                                    Edit Campaign\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getCampaigns" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/queue_calls/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.QUEUE_CALLS">Queue Calls</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUES TABLE --\x3e\n<md-table-container>\n    <table md-table>\n        <thead md-head>\n            <tr md-row>\n                <th md-column width="30px"></th>\n                <th md-column>{{ \'MOTIONDIALER.DID\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.QUEUE\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.CALLER\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.AGENT\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.DURATION\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.calls.rows.length">\n                <td md-cell colspan="7">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="call in vm.calls.rows | filter: vm.query.filter | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit">\n                \x3c!-- <tr md-row ng-repeat="(channel, call) in vm.calls.rows | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit"> --\x3e\n                <td md-cell>\n                    <i ng-class="vm.channelStatusClass[call.status.toLowerCase()]"></i>\n                </td>\n                <td md-cell>{{call.exten}}</td>\n                <td md-cell>{{call.queue}}</td>\n                <td md-cell><span ng-if="call.calleridname">{{call.calleridname}}, </span>{{call.calleridnum}}</td>\n                <td md-cell>\n                    <span ng-if="call.queuecallerleaveAt">\n            {{call.connectedlinename}}, {{call.connectedlinenum}}\n            <span class="text-boxed">\n              <timer start-time="call.queuecallerleaveAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            </span>\n                    </span>\n                    <span ng-if="!call.queuecallerleaveAt" class="text-boxed" translate="MOTIONDIALER.WAITING_FOR_AGENT">\n            Waiting for agent...\n            <span class="text-boxed">\n              <timer start-time="call.queuecallerjoinAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            </span>\n                    </span>\n                </td>\n                <td md-cell>\n                    <span class="text-boxed">\n            <timer ng-if="call.queuecallerjoinAt" start-time="call.queuecallerjoinAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            <span ng-if="call.queuecallercomplete || call.queuecallerabandon || call.queuecallerexit" translate="MOTIONDIALER.CLOSING">Closing</span>\n                    </span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="2">\n                            <md-menu-item>\n                                <md-button ng-click="vm.hangup(call.uniqueid)" translate="MOTIONDIALER.HANGUP">\n                                    Hangup\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.redirectToNumber($event, call.uniqueid)" translate="MOTIONDIALER.REDIRECT_TO_NUMBER">\n                                    Number\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-menu>\n                                    <md-button ng-click="$mdMenu.open()" translate="MOTIONDIALER.REDIRECT_TO_AGENT">Redirect to Agent</md-button>\n                                    <md-menu-content>\n                                        <md-menu-item ng-repeat="agent in vm.agents.rows">\n                                            <md-button ng-click="vm.redirectToAgent(call.uniqueid, agent.name)">{{agent.name}}</md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="vm.query.limitOptions" md-page="vm.query.page" md-total="{{vm.calls.count}}"></md-table-pagination>\n\x3c!-- / QUEUES TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/queue_params/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.QUEUE_PARAMETERS">Params</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueues">\n            <tr md-row>\n                <th md-column>{{\'MOTIONDIALER.NAME\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.TOTAL\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.TOTAL_OFFERED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.MANAGED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.ABANDONED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.DROPPED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.AVG_HOLD_TIME\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.AVG_DURATION\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.AVG_BILLABLE\' | translate}}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.queues">\n                <td md-cell colspan="8">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="(id, queue) in vm.queues">\n                <td md-cell>\n                    <span>{{queue.name}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.answered + queue.outboundNoAnswerCallsDay + queue.outboundBusyCallsDay + queue.outboundCongestionCallsDay + queue.outboundNoSuchCallsDay + queue.outboundUnknownCallsDay + queue.outboundDropCallsDayTimeout + queue.outboundDropCallsDayCallersExit + queue.outboundBlacklistCallsDay + queue.outboundOriginateFailureCallsDay + queue.outboundAnswerAgiCallsDay|| 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.total || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.answered || 0}} ({{(queue.total) ? (queue.answered || 0) * 100/(queue.total ) : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.outboundDropCallsDayCallersExit || 0}} ({{(queue.total) ? (queue.outboundDropCallsDayCallersExit || 0) * 100/(queue.total ) : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.outboundDropCallsDayTimeout || 0}} ({{(queue.total) ? (queue.outboundDropCallsDayTimeout || 0) * 100/(queue.total) : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.total ? (queue.sumHoldTime / queue.total) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.total ? (queue.sumDuration / queue.total) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.answered ? ((queue.sumBillable || 0) / queue.answered) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getQueues" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/queues/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.QUEUES">Queues</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueues">\n            <tr md-row>\n                <th md-column>{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.LOGGED_IN\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.PAUSED\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.READY\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.WAITING\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.TALKING\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.ORIGINATED\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.MESSAGE\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.METHOD\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.TRUNK\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.ACTIVE\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.queues">\n                <td md-cell colspan="12">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="queue" md-select-id="id" ng-repeat="(id, queue) in vm.queues">\n                <td md-cell>{{queue.name}}</td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.loggedInDb || 0}} ({{queue.loggedIn || 0}})</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.paused || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.available || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.waiting || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.talking || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.originated || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.message ? (\'MOTIONDIALER.\'+queue.message | translate) : \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.dialMethod || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.Trunk ? queue.Trunk.name : \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <md-icon md-colors="{color: {{queue.dialActive ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{queue.dialActive ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="3">\n                            <md-menu-item>\n                                <md-button ng-click="vm.createOrEditVoiceQueue($event, queue)" translate="MOTIONDIALER.EDIT_QUEUE">\n                                    Edit Queue\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.agentAdd($event, queue)" translate="MOTIONDIALER.AGENTSADD_QUEUE">\n                                    Add Agents to queue\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getQueues" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/realtime.html",'<div id="realtime" class="page-layout simple tabbed" layout="column" ng-cloak>\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.AGENTS">Agents</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.QUEUES">Queues</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.QUEUE_CALLS">Queue Calls</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.QUEUE_PARAMS">Queue Parameters</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.IVR_CAMPAIGNS">Ivr Campaigns</span>\n                </md-tab-label>\n            </md-tab>\n        </md-tabs>\n\n        <md-card ui-view></md-card>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/openchannel/views/openchannelAccounts/create/dialog.html",'<md-dialog class="openchannelAccount-dialog" aria-label="New OpenchannelAccount">\n    <form name="openchannelAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.openchannelAccount.name" required autofocus>\n                <div ng-messages="openchannelAccountForm.name.$error" ng-show="openchannelAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.MOTIONADDRESS">motionaddress</label>\n                <input type="url" name="remote" ng-model="vm.openchannelAccount.remote" required>\n                <div ng-messages="openchannelAccountForm.remote.$error" ng-show="openchannelAccountForm.remote.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.MOTIONADDRESS_REQUIRED">motionaddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="OPENCHANNEL.ERRORS.MOTIONADDRESS_MUST_VALID_URL">motionaddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.openchannelAccount.description">\n                <div ng-messages="openchannelAccountForm.description.$error" ng-show="openchannelAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOpenchannelAccount" ng-click="vm.saveOpenchannelAccount()" class="send-button md-accent md-raised" ng-disabled="openchannelAccountForm.$invalid || openchannelAccountForm.$pristine" aria-label="SAVE" translate="OPENCHANNEL.SAVE"\n                    translate-attr-aria-label="OPENCHANNEL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOpenchannelAccount" ng-click="vm.addNewOpenchannelAccount()" class="send-button md-accent md-raised" ng-disabled="openchannelAccountForm.$invalid" aria-label="ADD" translate="OPENCHANNEL.ADD_OPENCHANNELACCOUNT" translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELACCOUNT">\n                    ADD OPENCHANNELACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOpenchannelAccount" ng-click="vm.deleteOpenchannelAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="OPENCHANNEL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="OPENCHANNEL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/openchannel/views/openchannelAccounts/edit/openchannelDispositions/dialog.html",'<md-dialog class="openchannelDisposition-dialog" aria-label="New OpenchannelDisposition">\n    <form name="openchannelDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.openchannelDisposition.name" required autofocus>\n                <div ng-messages="openchannelDispositionForm.name.$error" ng-show="openchannelDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOpenchannelDisposition" ng-click="vm.saveOpenchannelDisposition()" class="send-button md-accent md-raised" ng-disabled="openchannelDispositionForm.$invalid || openchannelDispositionForm.$pristine" aria-label="SAVE"\n                    translate="OPENCHANNEL.SAVE" translate-attr-aria-label="OPENCHANNEL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOpenchannelDisposition" ng-click="vm.addNewOpenchannelDisposition()" class="send-button md-accent md-raised" ng-disabled="openchannelDispositionForm.$invalid" aria-label="ADD" translate="OPENCHANNEL.ADD_OPENCHANNELDISPOSITION"\n                    translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELDISPOSITION">\n                    ADD OPENCHANNELDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOpenchannelDisposition" ng-click="vm.deleteOpenchannelDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="OPENCHANNEL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="OPENCHANNEL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/openchannel/views/openchannelAccounts/edit/view.html",'<div id="openchannel-openchannelAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-openchannelAccounts-button md-icon-button" aria-label="Go to openchannelAccounts" ng-click="vm.gotoOpenchannelAccounts()" translate translate-attr-aria-label="OPENCHANNEL.GO_TO_OPENCHANNELACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.openchannelAccount.userpic" class="openchannelAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.openchannelAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.openchannelAccount.userpic" class="openchannelAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/openchannelAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.openchannelAccount.id}} {{vm.openchannelAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="OPENCHANNEL.CREATED_AT"></span> <span>{{vm.openchannelAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveOpenchannelAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (apiForm.$invalid) || (openchannelDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid)"\n                translate="OPENCHANNEL.SAVE" translate-attr-aria-label="OPENCHANNEL.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.openchannelAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.LIST">List</label>\n                                <md-select ng-model="vm.openchannelAccount.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.openchannelAccount.fidelity" aria-label="fidelity"><span translate="OPENCHANNEL.FIDELITY">fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.openchannelAccount.fidelity" class="md-block">\n                                <label translate="OPENCHANNEL.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.openchannelAccount.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.MOTIONADDRESS">motionaddress</label>\n                                <input type="url" name="remote" ng-model="vm.openchannelAccount.remote" required>\n                                <div ng-messages="generalForm.remote.$error" ng-show="generalForm.remote.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.MOTIONADDRESS_REQUIRED">motionaddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="OPENCHANNEL.ERRORS.MOTIONADDRESS_MUST_VALID_URL">motionaddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.openchannelAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.API">API</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container api md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.API">API</div>\n                        </div>\n                        <form name="apiForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container openchanneldispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="OpenchannelAccountOpenchannelDispositionsController as vm_dc" ng-init="vm_dc.init(vm.openchannelAccount)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedOpenchannelAccountOpenchannelDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="OPENCHANNEL.OPENCHANNELDISPOSITIONS">OpenchannelDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event)" aria-label="add openchannelDisposition" translate translate-attr-label="OPENCHANNEL.ADD_OPENCHANNELDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedOpenchannelAccountOpenchannelDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedOpenchannelAccountOpenchannelDispositions.length}} {{vm_dc.selectedOpenchannelAccountOpenchannelDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedOpenchannelAccountOpenchannelDispositions($event)" aria-label="delete selected" translate translate-attr-label="OPENCHANNELACCOUNTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedOpenchannelAccountOpenchannelDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getOpenchannelAccountOpenchannelDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'OPENCHANNEL.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'OPENCHANNEL.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'OPENCHANNEL.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="openchannelDisposition" md-select-id="id" ng-repeat="openchannelDisposition in vm_dc.openchannelAccountOpenchannelDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event, openchannelDisposition)" md-cell>{{openchannelDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event, openchannelDisposition)" md-cell>{{openchannelDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event, openchannelDisposition)" md-cell>{{openchannelDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="OPENCHANNEL.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event, openchannelDisposition)" translate="OPENCHANNEL.EDIT_OPENCHANNELDISPOSITION">\n                                                                Edit OpenchannelDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(openchannelDisposition, $event)" translate="OPENCHANNEL.DELETE_OPENCHANNELDISPOSITION">\n                                                                Delete OpenchannelDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.openchannelAccountOpenchannelDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="OPENCHANNEL.NO_OPENCHANNELDISPOSITION_AVAILABLE">No openchanneldisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.openchannelAccountOpenchannelDispositions.count}}" md-on-paginate="vm_dc.getOpenchannelAccountOpenchannelDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.openchannelAccount.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.openchannelAccount.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="OPENCHANNEL.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="openchannelAccount-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.openchannelAccount.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.openchannelAccount.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="OPENCHANNEL.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="openchannelAccount-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.openchannelAccount.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.openchannelAccount.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="OPENCHANNEL.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/openchannel/views/openchannelAccounts/openchannelAccounts.html",'<div id="openchannelAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-google-earth" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="OPENCHANNEL.OPENCHANNELACCOUNTS">OpenchannelAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="OPENCHANNEL.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedOpenchannelAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedOpenchannelAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="OPENCHANNEL.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-openchannelAccounts-count">\n                    <span>{{vm.selectedOpenchannelAccounts.length}}</span>\n                <span translate="OPENCHANNEL.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="OPENCHANNELACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllOpenchannelAccounts()" translate="OPENCHANNEL.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectOpenchannelAccounts()" translate="OPENCHANNEL.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedOpenchannelAccounts" filename="openchannelAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedOpenchannelAccounts($event)" aria-label="delete selected" translate translate-attr-label="OPENCHANNELACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- OPENCHANNELACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedOpenchannelAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getOpenchannelAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'OPENCHANNEL.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'OPENCHANNEL.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'OPENCHANNEL.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.openchannelAccounts.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="OPENCHANNEL.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="openchannelAccount" md-select-id="id" ng-repeat="openchannelAccount in vm.openchannelAccounts.rows">\n                                <td md-cell ng-if="openchannelAccount.userpic"><img class="avatar" alt="{{openchannelAccount.name}}" ng-src="api/users/{{openchannelAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!openchannelAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{openchannelAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditOpenchannelAccount($event, openchannelAccount)" md-cell class="id ">{{openchannelAccount.id}}</td>\n                                <td ng-click="vm.createOrEditOpenchannelAccount($event, openchannelAccount)" md-cell class="name ">{{openchannelAccount.name}}</td>\n                                <td ng-click="vm.createOrEditOpenchannelAccount($event, openchannelAccount)" md-cell class="description ">{{openchannelAccount.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="OPENCHANNEL.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(openchannelAccount, $event)" translate="OPENCHANNEL.EDIT_OPENCHANNELACCOUNT">\n                                                    Edit OpenchannelAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(openchannelAccount, $event)" translate="OPENCHANNEL.DELETE_OPENCHANNELACCOUNT">\n                                                    Delete OpenchannelAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.openchannelAccounts.count}}" md-on-paginate="vm.getOpenchannelAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / OPENCHANNELACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD OPENCHANNELACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-openchannelAccount-button" ng-click="vm.createOrEditOpenchannelAccount($event)" aria-label="add openchannelAccount" translate translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD OPENCHANNELACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/openchannel/views/openchannelQueues/create/dialog.html",'<md-dialog class="openchannelQueue-dialog" aria-label="New OpenchannelQueue">\n    <form name="openchannelQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.openchannelQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="openchannelQueueForm.name.$error" ng-show="openchannelQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="OPENCHANNEL.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.openchannelQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="openchannelQueueForm.strategy.$error" ng-show="openchannelQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.openchannelQueue.timeout" required>\n                <div ng-messages="openchannelQueueForm.timeout.$error" ng-show="openchannelQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.openchannelQueue.description">\n                <div ng-messages="openchannelQueueForm.description.$error" ng-show="openchannelQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOpenchannelQueue" ng-click="vm.saveOpenchannelQueue()" class="send-button md-accent md-raised" ng-disabled="openchannelQueueForm.$invalid || openchannelQueueForm.$pristine" aria-label="SAVE" translate="OPENCHANNEL.SAVE"\n                    translate-attr-aria-label="OPENCHANNEL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOpenchannelQueue" ng-click="vm.addNewOpenchannelQueue()" class="send-button md-accent md-raised" ng-disabled="openchannelQueueForm.$invalid" aria-label="ADD" translate="OPENCHANNEL.ADD_OPENCHANNELQUEUE" translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELQUEUE">\n                    ADD OPENCHANNELQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOpenchannelQueue" ng-click="vm.deleteOpenchannelQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="OPENCHANNEL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="OPENCHANNEL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/openchannel/views/openchannelQueues/edit/teamadd/teamadd.html",'<md-dialog class="openchannelQueue-dialog" aria-label="openchannelQueue">\n    <form name="openchannelQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="OPENCHANNEL.TEAMADD_OPENCHANNELQUEUE">Add Team in OPENCHANNELQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="OPENCHANNEL.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="openchannelQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/openchannel/views/openchannelQueues/edit/view.html",'<div id="openchannel-openchannelQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-openchannelQueues-button md-icon-button" aria-label="Go to openchannelQueues" ng-click="vm.gotoOpenchannelQueues()" translate translate-attr-aria-label="OPENCHANNEL.GO_TO_OPENCHANNELQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.openchannelQueue.userpic" class="openchannelQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.openchannelQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.openchannelQueue.userpic" class="openchannelQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/openchannelQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.openchannelQueue.id}} {{vm.openchannelQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="OPENCHANNEL.CREATED_AT"></span> <span>{{vm.openchannelQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.openchannelQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="OPENCHANNEL.TEAMADD_OPENCHANNELQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveOpenchannelQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="OPENCHANNEL.SAVE" translate-attr-aria-label="OPENCHANNEL.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.openchannelQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="OPENCHANNEL.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.openchannelQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.openchannelQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.openchannelQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/openchannel/views/openchannelQueues/openchannelQueues.html",'<div id="openchannelQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-google-earth" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="OPENCHANNEL.OPENCHANNELQUEUES">OpenchannelQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="OPENCHANNEL.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedOpenchannelQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedOpenchannelQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="OPENCHANNEL.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-openchannelQueues-count">\n                    <span>{{vm.selectedOpenchannelQueues.length}}</span>\n                <span translate="OPENCHANNEL.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="OPENCHANNELQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllOpenchannelQueues()" translate="OPENCHANNEL.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectOpenchannelQueues()" translate="OPENCHANNEL.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedOpenchannelQueues" filename="openchannelQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedOpenchannelQueues($event)" aria-label="delete selected" translate translate-attr-label="OPENCHANNELQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- OPENCHANNELQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedOpenchannelQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getOpenchannelQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'OPENCHANNEL.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'OPENCHANNEL.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'OPENCHANNEL.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.openchannelQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="OPENCHANNEL.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="openchannelQueue" md-select-id="id" ng-repeat="openchannelQueue in vm.openchannelQueues.rows">\n                                <td md-cell ng-if="openchannelQueue.userpic"><img class="avatar" alt="{{openchannelQueue.name}}" ng-src="api/users/{{openchannelQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!openchannelQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{openchannelQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditOpenchannelQueue($event, openchannelQueue)" md-cell class="id ">{{openchannelQueue.id}}</td>\n                                <td ng-click="vm.createOrEditOpenchannelQueue($event, openchannelQueue)" md-cell class="name ">{{openchannelQueue.name}}</td>\n                                <td ng-click="vm.createOrEditOpenchannelQueue($event, openchannelQueue)" md-cell class="strategy ">{{ vm.arraystrategy[openchannelQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="OPENCHANNEL.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(openchannelQueue, $event)" translate="OPENCHANNEL.EDIT_OPENCHANNELQUEUE">\n                                                    Edit OpenchannelQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(openchannelQueue, $event)" translate="OPENCHANNEL.DELETE_OPENCHANNELQUEUE">\n                                                    Delete OpenchannelQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.openchannelQueues.count}}" md-on-paginate="vm.getOpenchannelQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / OPENCHANNELQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD OPENCHANNELQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-openchannelQueue-button" ng-click="vm.createOrEditOpenchannelQueue($event)" aria-label="add openchannelQueue" translate translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD OPENCHANNELQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/settings/views/customizations/create/dialog.html",'<md-dialog class="customization-dialog" aria-label="New Customization">\n    <form name="customizationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.customization.defaultLogo" aria-label="Default_Logo"><span translate="SETTINGS.DEFAULT_LOGO">Default_Logo</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.customization.defaultLoginLogo" aria-label="Default_Login_Logo"><span translate="SETTINGS.DEFAULT_LOGIN_LOGO">Default_Login_Logo</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.customization.defaultHeaderWhiteLabel" aria-label="Default_Header_WhiteLabel"><span translate="SETTINGS.DEFAULT_HEADER_WHITELABEL">Default_Header_WhiteLabel</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="!vm.customization.defaultHeaderWhiteLabel" class="md-block">\n                <label translate="SETTINGS.HEADER_WHITELABEL">Header_WhiteLabel</label>\n                <input type="text" name="headerWhiteLabel" ng-model="vm.customization.headerWhiteLabel" required>\n                <div ng-messages="customizationForm.headerWhiteLabel.$error" ng-show="customizationForm.headerWhiteLabel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.HEADER_WHITELABEL_REQUIRED">Header_WhiteLabel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCustomization" ng-click="vm.saveCustomization()" class="send-button md-accent md-raised" ng-disabled="customizationForm.$invalid || customizationForm.$pristine" aria-label="SAVE" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCustomization" ng-click="vm.addNewCustomization()" class="send-button md-accent md-raised" ng-disabled="customizationForm.$invalid" aria-label="ADD" translate="SETTINGS.ADD_CUSTOMIZATION" translate-attr-aria-label="SETTINGS.ADD_CUSTOMIZATION">\n                    ADD CUSTOMIZATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCustomization" ng-click="vm.deleteCustomization($event)" aria-label="DELETE" translate translate-attr-aria-label="SETTINGS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SETTINGS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/customizations/customizations.html",'<div id="customizations" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.CUSTOMIZATIONS">Customizations</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveCustomization()" ng-disabled="customizationForm.$pristine || customizationForm.$invalid" class="send-button md-accent md-raised" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            <div class="customization-detail-form-container customizations md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.CUSTOMIZATIONS">CUSTOMIZATIONS</div>\n                </div>\n                <form name="customizationForm" novalidate>\n                    <md-input-container class="md-block">\n                        <md-switch ng-model="vm.customization.defaultLogo" aria-label="Default_Logo"><span translate="SETTINGS.DEFAULT_LOGO">Default_Logo</span></md-switch>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <md-switch ng-model="vm.customization.defaultLoginLogo" aria-label="Default_Login_Logo"><span translate="SETTINGS.DEFAULT_LOGIN_LOGO">Default_Login_Logo</span></md-switch>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <md-switch ng-model="vm.customization.defaultHeaderWhiteLabel" aria-label="Default_Header_WhiteLabel"><span translate="SETTINGS.DEFAULT_HEADER_WHITELABEL">Default_Header_WhiteLabel</span></md-switch>\n                    </md-input-container>\n                    <md-input-container ng-if="!vm.customization.defaultHeaderWhiteLabel" class="md-block">\n                        <label translate="SETTINGS.HEADER_WHITELABEL">Header_WhiteLabel</label>\n                        <input type="text" name="headerWhiteLabel" ng-model="vm.customization.headerWhiteLabel" required>\n                        <div ng-messages="customizationForm.headerWhiteLabel.$error" ng-show="customizationForm.headerWhiteLabel.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.HEADER_WHITELABEL_REQUIRED">Header_WhiteLabel field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n\n                </form>\n            </div>\n\n            <div ng-if="!vm.customization.defaultLogo" class="customization-detail-form-container logo md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.LOGO">LOGO</div>\n                </div>\n                <div ng-controller="CustomizationlogoController as vm_cl" ng-init="vm_cl.init(vm.customization)" class="customization-detail-form-container md-background-bg md-whiteframe-1dp">\n\n                    <div id="customization-image-uploader" flow-init="vm_cl.ngFlowOptions" flow-name="vm_cl.ngFlow.flow" flow-files-submitted="vm_cl.upload()" flow-file-added="vm_cl.fileAdded($file)" flow-file-success="vm_cl.fileSuccess($file, $message)" flow-complete="vm_cl.uploadComplete()"\n                        flow-drop flow-drag-enter="vm_cl.dropping=true" flow-drag-leave="vm_cl.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                        <div class="drop-text hint-text" layout="row" layout-align="center center">\n                            <span translate="EC.DROP_TO_UPLOAD">Drop to upload</span>\n                        </div>\n\n                        <div class="upload-button" layout="column" layout-align="center center">\n                            <md-button class="md-accent md-raised" flow-btn>\n                                Upload\n                            </md-button>\n                            <span class="secondary-text mt-8">You can also drop images here to upload. Only PNG, JPG - Max. 8MB</span>\n                        </div>\n\n                        <div layout="row" layout-align="start start" layout-wrap>\n                            <div ng-repeat="logoimage in vm_cl.customization.images" ng-switch="logoimage.type">\n                                <div class="customization-image uploading" ng-switch-when="uploading" layout="row" layout-align="center center">\n                                    <div class="overlay" layout="column" layout-align="center center">\n                                        <md-progress-linear md-mode="determinate" value="{{logoimage.file.progress() * 100}}">\n                                        </md-progress-linear>\n                                    </div>\n                                    <img class="media" flow-img="logoimage.file">\n                                </div>\n\n                                <div class="customization-image" ng-switch-when="image" layout="row" layout-align="center center">\n                                    <img class="media" ng-src="{{logoimage.url}}">\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n\n            </div>\n\n            <div ng-if="!vm.customization.defaultLoginLogo" class="customization-detail-form-container logologin md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.LOGOLOGIN">LOGOLOGIN</div>\n                </div>\n                <div ng-controller="CustomizationlogologinController as vm_cll" ng-init="vm_cll.init(vm.customization)" class="customization-detail-form-container md-background-bg md-whiteframe-1dp">\n\n                    <div id="customization-image-uploader" flow-init="vm_cll.ngFlowOptions" flow-name="vm_cll.ngFlow.flow" flow-files-submitted="vm_cll.upload()" flow-file-added="vm_cll.fileAdded($file)" flow-file-success="vm_cll.fileSuccess($file, $message)" flow-complete="vm_cll.uploadComplete()"\n                        flow-drop flow-drag-enter="vm_cll.dropping=true" flow-drag-leave="vm_cll.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                        <div class="drop-text hint-text" layout="row" layout-align="center center">\n                            <span translate="EC.DROP_TO_UPLOAD">Drop to upload</span>\n                        </div>\n\n                        <div class="upload-button" layout="column" layout-align="center center">\n                            <md-button class="md-accent md-raised" flow-btn>\n                                Upload\n                            </md-button>\n                            <span class="secondary-text mt-8">You can also drop images here to upload. Only PNG, JPG - Max. 8MB</span>\n                        </div>\n\n                        <div layout="row" layout-align="start start" layout-wrap>\n                            <div ng-repeat="logologinimage in vm_cll.customization.images" ng-switch="logologinimage.type">\n                                <div class="customization-image uploading" ng-switch-when="uploading" layout="row" layout-align="center center">\n                                    <div class="overlay" layout="column" layout-align="center center">\n                                        <md-progress-linear md-mode="determinate" value="{{logologinimage.file.progress() * 100}}">\n                                        </md-progress-linear>\n                                    </div>\n                                    <img class="media" flow-img="logologinimage.file">\n                                </div>\n\n                                <div class="customization-image" ng-switch-when="image" layout="row" layout-align="center center">\n                                    <img class="media" ng-src="{{logologinimage.url}}">\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n\n            </div>\n\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/settings/views/generals/create/dialog.html",'<md-dialog class="general-dialog" aria-label="New General">\n    <form name="generalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.MIN_INTERNAL">Min_Internal</label>\n                <input type="number" name="min_internal" ng-model="vm.general.min_internal" min="0" required autofocus>\n                <div ng-messages="generalForm.min_internal.$error" ng-show="generalForm.min_internal.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.MIN_INTERNAL_REQUIRED">Min_Internal field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.MIN_MAILBOX">Min_Mailbox</label>\n                <input type="number" name="min_mailbox" ng-model="vm.general.min_mailbox" min="0" required>\n                <div ng-messages="generalForm.min_mailbox.$error" ng-show="generalForm.min_mailbox.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.MIN_MAILBOX_REQUIRED">Min_Mailbox field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.general.securePassword" aria-label="Secure_Password"><span translate="SETTINGS.SECURE_PASSWORD">Secure_Password</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.STUNADDR">Stunaddr</label>\n                <input type="text" name="stunaddr" ng-model="vm.general.stunaddr">\n                <div ng-messages="generalForm.stunaddr.$error" ng-show="generalForm.stunaddr.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.STUNADDR_REQUIRED">Stunaddr field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newGeneral" ng-click="vm.saveGeneral()" class="send-button md-accent md-raised" ng-disabled="generalForm.$invalid || generalForm.$pristine" aria-label="SAVE" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newGeneral" ng-click="vm.addNewGeneral()" class="send-button md-accent md-raised" ng-disabled="generalForm.$invalid" aria-label="ADD" translate="SETTINGS.ADD_GENERAL" translate-attr-aria-label="SETTINGS.ADD_GENERAL">\n                    ADD GENERAL\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newGeneral" ng-click="vm.deleteGeneral($event)" aria-label="DELETE" translate translate-attr-aria-label="SETTINGS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SETTINGS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/generals/generals.html",'<div id="generals" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.GENERAL">General</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveGeneral()" ng-disabled="generalForm.$pristine || generalForm.$invalid" class="send-button md-accent md-raised" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            <div class="general-detail-form-container global md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.GLOBAL">GLOBAL</div>\n                </div>\n                <form name="generalForm" novalidate>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.MIN_INTERNAL">Min_Internal</label>\n                        <input type="number" name="min_internal" ng-model="vm.general.min_internal" min="0" required autofocus>\n                        <div ng-messages="generalForm.min_internal.$error" ng-show="generalForm.min_internal.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.MIN_INTERNAL_REQUIRED">Min_Internal field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.MIN_MAILBOX">Min_Mailbox</label>\n                        <input type="number" name="min_mailbox" ng-model="vm.general.min_mailbox" min="0" required>\n                        <div ng-messages="generalForm.min_mailbox.$error" ng-show="generalForm.min_mailbox.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.MIN_MAILBOX_REQUIRED">Min_Mailbox field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <md-switch ng-model="vm.general.securePassword" aria-label="Secure_Password"><span translate="SETTINGS.SECURE_PASSWORD">Secure_Password</span></md-switch>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.STUNADDR">Stunaddr</label>\n                        <input type="text" name="stunaddr" ng-model="vm.general.stunaddr">\n                        <div ng-messages="generalForm.stunaddr.$error" ng-show="generalForm.stunaddr.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.STUNADDR_REQUIRED">Stunaddr field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n\n                </form>\n            </div>\n\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/settings/views/license/license.html",'<div id="license" class="page-layout simple fullwidth doc-page">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.LICENSE">LICENSE</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n        <div>\n            <md-button type="submit" ng-click="vm.requestLicense()" class="send-button md-raised" translate="SETTINGS.REQUEST_LICENSE" translate-attr-aria-label="SETTINGS.REQUEST_LICENSE">\n                REQUEST LICENSE\n            </md-button>\n        </div>\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n            \x3c!-- LICENSE CARD --\x3e\n            <div layout="row" flex>\n                <md-card class="md-whiteframe-1dp padding-20" flex>\n                    <div layout="row" layout-align="center">\n                        <div flex layout="row" layout-align="start center">\n                            <div>\n                                <a href="https://www.xcallymotion.com/prices" target="_blank" class="md-button md-fab green-A700-bg" aria-label="Eat cake">\n                                    <md-tooltip><span translate="SETTINGS.PRICES">Prices</span></md-tooltip>\n                                    <md-icon md-font-icon="icon-coin"></md-icon>\n                                </a>\n                            </div>\n                        </div>\n                        <div flex>\n                            <div ng-switch="vm.license.months" class="text-center">\n                                <span ng-switch-when="1" class="md-title md-accent-fg text-bold">{{ \'SETTINGS.PLAN\' | translate }}: <span translate="SETTINGS.MONTH_TO_MONTH">MONTH TO MONTH</span></span>\n                                <span ng-switch-when="12" class="md-title md-accent-fg text-bold">{{ \'SETTINGS.PLAN\' | translate }}: <span translate="SETTINGS.ANNUALLY">ANNUALLY</span></span>\n                                <span ng-switch-when="36" class="md-title md-accent-fg text-bold">{{ \'SETTINGS.PLAN\' | translate }}: <span translate="SETTINGS.PERPETUAL">PERPETUAL</span></span>\n                            </div>\n                        </div>\n                        <div flex layout="row" layout-align="end center">\n                            <div>\n                                <md-button type="submit" ng-click="vm.updateLicense()" class="md-button md-fab md-accent">\n                                    <md-tooltip><span translate="SETTINGS.UPDATE_LICENSE">License</span></md-tooltip>\n                                    <md-icon md-font-icon="icon-pencil"></md-icon>\n                                </md-button>\n                            </div>\n                        </div>\n                    </div>\n\n                    <span class="md-subhead md-warn-fg text-center">{{ \'SETTINGS.EXPIRATION_DATE\' | translate }}: {{vm.license.expiration | date: \'longDate\'}}</span>\n                    <span class="text-center padding-bottom-10"> {{\'SETTINGS.TOKEN\' | translate }}: <span class="text-italic text-bold">{{vm.license.uuid}}</span></span>\n\n                    <div ng-if="vm.license.demo" layout="column">\n                        <span class="md-subhead md-warn-fg text-center">{{ \'SETTINGS.TRIAL_VERSION\' | translate }}</span>\n                        <span class="md-subhead md-warn-fg text-center"><a href="https://www.xcallymotion.com/prices" target="_blank">{{ \'SETTINGS.PRICES\' | translate}}</a></span>\n                    </div>\n\n                    <div ng-if="vm.license.machineUuid !== vm.license.uuid" layout="column">\n                        <span class="blink md-subhead md-warn-fg text-center">{{ \'SETTINGS.NEW_TOKEN_DETECTED\' | translate }}</span>\n                        <span ng-if="vm.license.gray" class="blink md-subhead md-warn-fg text-center">{{ \'SETTINGS.EXPIRATION_GRAY_PERIOD\' | translate }}: {{vm.license.deadline | date: \'longDate\'}}</span>\n                        <span class="text-center padding-bottom-10"> {{\'SETTINGS.NEW_TOKEN\' | translate }}: <span class="text-italic text-bold">{{vm.license.machineUuid}}</span></span>\n                        <span class="text-center padding-bottom-10"> {{\'SETTINGS.EXPIRATION_REASON\' | translate }} <span class="text-italic text-bold"><a href="mailto:license@xcally.com?subject=New%20token%20detected&body=Hi xCALLY, New Token: {{vm.license.machineUuid}}, Old token: {{vm.license.uuid}}">license@xcally.com</a>.</span></span>\n                    </div>\n\n                    <md-subheader class="md-no-sticky">{{ \'SETTINGS.STAFF\' | translate }}</md-subheader>\n                    <md-divider></md-divider>\n                    <md-list layout="row">\n                        <md-list-item class="md-2-line">\n                            <md-icon md-font-icon="icon-account" class="md-avatar-icon"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3>{{ vm.license.users || 0 }}</h3>\n                                <p translate="SETTINGS.USERS">Users</p>\n                            </div>\n                        </md-list-item>\n                        <md-list-item class="md-2-line">\n                            <md-icon md-font-icon="icon-headphones" class="md-avatar-icon"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3>{{ vm.license.agents || 0 }}</h3>\n                                <p translate="SETTINGS.AGENTS">Agents</p>\n                            </div>\n                        </md-list-item>\n                        <md-list-item class="md-2-line">\n                            <md-icon md-font-icon="icon-phone" class="md-avatar-icon"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3>{{ vm.license.telephones || 0 }}</h3>\n                                <p translate="SETTINGS.TELEPHONES">Telephones</p>\n                            </div>\n                        </md-list-item>\n                    </md-list>\n\n                    <md-subheader class="md-no-sticky">{{ \'SETTINGS.CHANNELS\' | translate }}</md-subheader>\n                    <md-divider></md-divider>\n                    <md-list layout="row">\n                        <md-list-item class="md-2-line" ng-repeat="channel in vm.channels">\n                            <md-icon md-font-icon="{{channel.icon}}" class="md-avatar-icon" ng-class="vm.license[channel.name] ? \'green-A700-bg\' : \'red-A700-bg\'"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3 translate="SETTINGS.{{channel.name | uppercase}}"></h3>\n                                <p ng-class="vm.license[channel.name] ? \'green-A700-fg\' : \'red-A700-fg\'">{{ vm.license[channel.name] ? \'ENABLED\' : \'DISABLED\' }}</p>\n                            </div>\n                        </md-list-item>\n                    </md-list>\n\n                    <md-subheader class="md-no-sticky">{{ \'SETTINGS.MODULES\' | translate }}</md-subheader>\n                    <md-divider></md-divider>\n                    <md-list layout="row">\n                        <md-list-item class="md-2-line" ng-repeat="module in vm.modules">\n                            <md-icon md-font-icon="{{module.icon}}" class="md-avatar-icon" ng-class="vm.license[module.name] ? \'green-A700-bg\' : \'red-A700-bg\'"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3 translate="SETTINGS.{{module.name | uppercase}}"></h3>\n                                <p ng-class="vm.license[module.name] ? \'green-A700-fg\' : \'red-A700-fg\'">{{ vm.license[module.name] ? \'ENABLED\' : \'DISABLED\' }}</p>\n                            </div>\n                        </md-list-item>\n                    </md-list>\n\n                    <md-subheader class="md-no-sticky">{{ \'SETTINGS.OTHERS\' | translate }}</md-subheader>\n                    <md-divider></md-divider>\n                    <md-list layout="row">\n                        <md-list-item class="md-2-line" ng-repeat="other in vm.others">\n                            <md-icon md-font-icon="{{other.icon}}" class="md-avatar-icon" ng-class="vm.license[other.name] ? \'green-A700-bg\' : \'red-A700-bg\'"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3 translate="SETTINGS.{{other.name | uppercase}}"></h3>\n'+"                                <p ng-class=\"vm.license[other.name] ? 'green-A700-fg' : 'red-A700-fg'\">{{ vm.license[other.name] ? 'ENABLED' : 'DISABLED' }}</p>\n                            </div>\n                        </md-list-item>\n                    </md-list>\n                </md-card>\n            </div>\n            \x3c!-- / LICENSE CARD --\x3e\n\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>"),e.put("app/main/apps/settings/views/license/request/dialog.html",'<md-dialog class="request-dialog" aria-label="Send Request">\n    <form name="requestForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="SETTINGS.REQUEST_LICENSE">Request License</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.license.name" required>\n                <div ng-messages="requestForm.name.$error" ng-show="requestForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.NAME_REQUIRED">Address field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.license.email" required>\n                <div ng-messages="requestForm.email.$error" ng-show="requestForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="SETTINGS.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-subheader class="md-no-sticky">{{ \'SETTINGS.STAFF\' | translate }}</md-subheader>\n            <div layout="row">\n                <md-input-container class="md-block" flex>\n                    <label translate="SETTINGS.USERS">Users</label>\n                    <input type="number" name="users" ng-model="vm.license.users" required>\n                    <div ng-messages="requestForm.users.$error" ng-show="requestForm.users.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="SETTINGS.ERRORS.USERS_REQUIRED">Users field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n                <md-input-container class="md-block" flex>\n                    <label translate="SETTINGS.AGENTS">Agents</label>\n                    <input type="number" name="agents" ng-model="vm.license.agents" required>\n                    <div ng-messages="requestForm.agents.$error" ng-show="requestForm.agents.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="SETTINGS.ERRORS.AGENTS_REQUIRED">Agents field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n                <md-input-container class="md-block" flex>\n                    <label translate="SETTINGS.TELEPHONES">Telephones</label>\n                    <input type="number" name="telephones" ng-model="vm.license.telephones" required>\n                    <div ng-messages="requestForm.telephones.$error" ng-show="requestForm.telephones.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="SETTINGS.ERRORS.TELEPHONES_REQUIRED">Telephones field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n            </div>\n\n            <md-subheader class="md-no-sticky">{{ \'SETTINGS.CHANNELS\' | translate }}</md-subheader>\n            <div layout="row">\n                <md-switch ng-model="vm.license[channel.name]" aria-label="{{channel.name}}" ng-repeat="channel in vm.channels"><span translate="SETTINGS.{{channel.name | uppercase}}"></span></md-switch>\n            </div>\n\n            <md-subheader class="md-no-sticky">{{ \'SETTINGS.MODULES\' | translate }}</md-subheader>\n            <div layout="row">\n                <md-switch ng-model="vm.license[module.name]" aria-label="{{module.name}}" ng-repeat="module in vm.modules"><span translate="SETTINGS.{{module.name | uppercase}}"></span></md-switch>\n            </div>\n\n            <md-subheader class="md-no-sticky">{{ \'SETTINGS.OTHERS\' | translate }}</md-subheader>\n            <div layout="row">\n                <md-switch ng-model="vm.license[other.name]" aria-label="{{other.name}}" ng-repeat="other in vm.others"><span translate="SETTINGS.{{other.name | uppercase}}"></span></md-switch>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.DESCRIPTION">Description</label>\n                <textarea name="description" ng-model="vm.license.description"></textarea>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.sendRequest()" class="send-button md-accent md-raised" ng-disabled="requestForm.$invalid || requestForm.$pristine" aria-label="SEND" translate="SETTINGS.SEND" translate-attr-aria-label="SETTINGS.SEND">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/networks/create/dialog.html",'<md-dialog class="network-dialog" aria-label="New Network">\n    <form name="networkForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.TYPE">Type</label>\n                <md-select ng-model="vm.network.type" required autofocus>\n                    <md-option ng-value="\'localnet\'">LocalNET</md-option>\n                    <md-option ng-value="\'externip\'">ExternIP</md-option>\n                </md-select>\n                <div ng-messages="networkForm.type.$error" ng-show="networkForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.network.type == \'localnet\'" class="md-block">\n                <label translate="SETTINGS.LOCALNETADDRESS">localNetAddress</label>\n                <input type="text" name="value" ng-model="vm.network.value" ng-pattern="/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/"\n                    required>\n                <div class="hint"><span translate="SETTINGS.HELP.LOCALNETADDRESS"></span></div>\n                <div ng-messages="networkForm.value.$error" ng-show="networkForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.LOCALNETADDRESS_REQUIRED">localNetAddress field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="SETTINGS.ERRORS.LOCALNETADDRESS_MUST_VALID_PATTERN" translate-values="{ regex: \'/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/\' }">localNetAddress must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.network.type == \'externip\'" class="md-block">\n                <label translate="SETTINGS.ADDRESS">Address</label>\n                <input type="text" name="value" ng-model="vm.network.value" ng-pattern="/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/" required>\n                <div class="hint"><span translate="SETTINGS.HELP.ADDRESS"></span></div>\n                <div ng-messages="networkForm.value.$error" ng-show="networkForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.ADDRESS_REQUIRED">Address field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="SETTINGS.ERRORS.ADDRESS_MUST_VALID_PATTERN" translate-values="{ regex: \'/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/\' }">Address must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newNetwork" ng-click="vm.saveNetwork()" class="send-button md-accent md-raised" ng-disabled="networkForm.$invalid || networkForm.$pristine" aria-label="SAVE" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newNetwork" ng-click="vm.addNewNetwork()" class="send-button md-accent md-raised" ng-disabled="networkForm.$invalid" aria-label="ADD" translate="SETTINGS.ADD_NETWORK" translate-attr-aria-label="SETTINGS.ADD_NETWORK">\n                    ADD NETWORK\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newNetwork" ng-click="vm.deleteNetwork($event)" aria-label="DELETE" translate translate-attr-aria-label="SETTINGS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SETTINGS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/networks/networks.html",'<div id="networks" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.NETWORKS">Networks</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="SETTINGS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedNetworks.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedNetworks =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="SETTINGS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-networks-count">\n                    <span>{{vm.selectedNetworks.length}}</span>\n                <span translate="SETTINGS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="NETWORKS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllNetworks()" translate="SETTINGS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectNetworks()" translate="SETTINGS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedNetworks" filename="networks.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedNetworks($event)" aria-label="delete selected" translate translate-attr-label="NETWORKS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- NETWORK TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedNetworks" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getNetworks">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'SETTINGS.ID\' | translate }}</th>\n                                <th md-column md-order-by="type">{{ \'SETTINGS.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="value">{{ \'SETTINGS.ADDRESS\' | translate }}</th>\n                                <th md-column md-order-by="createdAt">{{ \'SETTINGS.CREATED_AT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.networks.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="SETTINGS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="network" md-select-id="id" ng-repeat="network in vm.networks.rows">\n                                <td md-cell ng-if="network.userpic"><img class="avatar" alt="{{network.name}}" ng-src="api/users/{{network.id}}/avatar" /></td>\n                                <td md-cell ng-if="!network.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{network.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditNetwork($event, network)" md-cell class="id ">{{network.id}}</td>\n                                <td ng-click="vm.createOrEditNetwork($event, network)" md-cell class="type ">{{ vm.arraytype[network.type].option }}</td>\n                                <td ng-click="vm.createOrEditNetwork($event, network)" md-cell class="value ">{{network.value}}</td>\n                                <td ng-click="vm.createOrEditNetwork($event, network)" md-cell class="createdAt ">{{network.createdAt | date:\'medium\' }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="SETTINGS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(network, $event)" translate="SETTINGS.EDIT_NETWORK">\n                                                    Edit Network\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(network, $event)" translate="SETTINGS.DELETE_NETWORK">\n                                                    Delete Network\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.networks.count}}" md-on-paginate="vm.getNetworks" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / NETWORK TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD NETWORK BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-network-button" ng-click="vm.createOrEditNetwork($event)" aria-label="add network" translate translate-attr-aria-label="SETTINGS.ADD_NETWORK">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD NETWORK BUTTON --\x3e\n</div>'),e.put("app/main/apps/settings/views/smtps/create/dialog.html",'<md-dialog class="smtp-dialog" aria-label="New Smtp">\n    <form name="smtpForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.smtp.name" required autofocus>\n                <div ng-messages="smtpForm.name.$error" ng-show="smtpForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.SMTP_SERVICE">SMTP_Service</label>\n                <md-select ng-model="vm.smtp.Smtp.service" required>\n                    <md-option ng-value="null">None</md-option>\n                    <md-option ng-value="\'gmail\'">Gmail</md-option>\n                </md-select>\n                <div ng-messages="smtpForm.Smtp.service.$error" ng-show="smtpForm.Smtp.service.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.SMTP_SERVICE_REQUIRED">SMTP_Service field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                <label translate="SETTINGS.SMTP_HOST">SMTP_Host</label>\n                <input type="text" name="Smtp.host" ng-model="vm.smtp.Smtp.host" required>\n                <div ng-messages="smtpForm.Smtp.host.$error" ng-show="smtpForm.Smtp.host.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.SMTP_HOST_REQUIRED">SMTP_Host field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.SMTP_USERNAME">SMTP_Username</label>\n                <input type="text" name="Smtp.user" ng-model="vm.smtp.Smtp.user" required>\n                <div ng-messages="smtpForm.Smtp.user.$error" ng-show="smtpForm.Smtp.user.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.SMTP_USERNAME_REQUIRED">SMTP_Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.SMTP_PASSWORD">SMTP_Password</label>\n                <input type="password" name="Smtp.pass" ng-model="vm.smtp.Smtp.pass" placeholder="Password" translate translate-attr-placeholder="SETTINGS.PASSWORD" required>\n                <div ng-messages="smtpForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newSmtp ">\n                <label translate="SETTINGS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="Smtp.pass" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="smtpForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="SETTINGS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                <label translate="SETTINGS.SMTP_PORT">SMTP_Port</label>\n                <input type="number" name="Smtp.port" ng-model="vm.smtp.Smtp.port" required>\n                <div ng-messages="smtpForm.Smtp.port.$error" ng-show="smtpForm.Smtp.port.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.SMTP_PORT_REQUIRED">SMTP_Port field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                <md-switch ng-model="vm.smtp.Smtp.secure" aria-label="SMTP_Secure"><span translate="SETTINGS.SMTP_SECURE">SMTP_Secure</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.DESCRIPTION">Description</label>\n                <input type="" name="description" ng-model="vm.smtp.description">\n                <div ng-messages="smtpForm.description.$error" ng-show="smtpForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSmtp" ng-click="vm.saveSmtp()" class="send-button md-accent md-raised" ng-disabled="smtpForm.$invalid || smtpForm.$pristine" aria-label="SAVE" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSmtp" ng-click="vm.addNewSmtp()" class="send-button md-accent md-raised" ng-disabled="smtpForm.$invalid" aria-label="ADD" translate="SETTINGS.ADD_SMTP" translate-attr-aria-label="SETTINGS.ADD_SMTP">\n                    ADD SMTP\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSmtp" ng-click="vm.deleteSmtp($event)" aria-label="DELETE" translate translate-attr-aria-label="SETTINGS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SETTINGS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/smtps/smtps.html",'<div id="smtps" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.SMTP">Smtp</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        <div>\n            <md-button type="submit" ng-click="vm.verifySmtp()" ng-disabled="!vm.smtp.id" class="send-button md-accent md-raised" translate="SETTINGS.VERIFY" translate-attr-aria-label="SETTINGS.VERIFY">\n                VERIFY\n            </md-button>\n            <md-button type="submit" ng-click="vm.saveSmtp()" ng-disabled="smtpForm.$pristine || smtpForm.$invalid" class="send-button md-accent md-raised" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            <div class="smtp-detail-form-container general md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.GENERAL">GENERAL</div>\n                </div>\n                <form name="smtpForm" novalidate>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.NAME">Name</label>\n                        <input type="text" name="name" ng-model="vm.smtp.name" required autofocus>\n                        <div ng-messages="smtpForm.name.$error" ng-show="smtpForm.name.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.SMTP_SERVICE">SMTP_Service</label>\n                        <md-select ng-model="vm.smtp.Smtp.service" required>\n                            <md-option ng-value="null">None</md-option>\n                            <md-option ng-value="\'gmail\'">Gmail</md-option>\n                        </md-select>\n                        <div ng-messages="smtpForm.Smtp.service.$error" ng-show="smtpForm.Smtp.service.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.SMTP_SERVICE_REQUIRED">SMTP_Service field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                        <label translate="SETTINGS.SMTP_HOST">SMTP_Host</label>\n                        <input type="text" name="Smtp.host" ng-model="vm.smtp.Smtp.host" required>\n                        <div ng-messages="smtpForm.Smtp.host.$error" ng-show="smtpForm.Smtp.host.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.SMTP_HOST_REQUIRED">SMTP_Host field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.SMTP_USERNAME">SMTP_Username</label>\n                        <input type="text" name="Smtp.user" ng-model="vm.smtp.Smtp.user" required>\n                        <div ng-messages="smtpForm.Smtp.user.$error" ng-show="smtpForm.Smtp.user.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.SMTP_USERNAME_REQUIRED">SMTP_Username field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.SMTP_PASSWORD">SMTP_Password</label>\n                        <input type="password" name="Smtp.pass" ng-model="vm.smtp.Smtp.pass" placeholder="Password" translate translate-attr-placeholder="SETTINGS.PASSWORD" required>\n                        <div ng-messages="smtpForm.password.$error" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.newSmtp ">\n                        <label translate="SETTINGS.CONFIRM_PASSWORD">Confirm Password</label>\n                        <input type="password" match-password="Smtp.pass" name="confirmPassword" ng-model="confirmPassword">\n                        <div ng-messages="smtpForm.confirmPassword.$error" role="alert" multiple>\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                            </div>\n                            <div ng-message="passwordMatch">\n                                <span translate="SETTINGS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                        <label translate="SETTINGS.SMTP_PORT">SMTP_Port</label>\n                        <input type="number" name="Smtp.port" ng-model="vm.smtp.Smtp.port" required>\n                        <div ng-messages="smtpForm.Smtp.port.$error" ng-show="smtpForm.Smtp.port.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.SMTP_PORT_REQUIRED">SMTP_Port field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                        <md-switch ng-model="vm.smtp.Smtp.secure" aria-label="SMTP_Secure"><span translate="SETTINGS.SMTP_SECURE">SMTP_Secure</span></md-switch>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.DESCRIPTION">Description</label>\n                        <input type="" name="description" ng-model="vm.smtp.description">\n                        <div ng-messages="smtpForm.description.$error" ng-show="smtpForm.description.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n\n                </form>\n            </div>\n\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/settings/views/system/system.html",'<div id="system" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n          <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n        </span>\n                <span class="logo-text" translate="SETTINGS.SYSTEM">SYSTEM</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SETTINGS.GENERAL">GENERAL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="system-detail-form-container personal_info md-background-bg md-whiteframe-1dp">\n                        <md-card class="md-whiteframe-1dp padding-20" layout="row" layout-xs="column" layout-wrap>\n                            <ms-widget flex="50" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg">\n                                        <div class="h3">OS</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="h4">{{vm.system.system.manufacturer}} {{vm.system.system.model}}</div>\n                                                <div class="h4">{{vm.system.cpu.manufacturer}} {{vm.system.cpu.brand}} - {{vm.system.cpu.speed}} GHz - {{vm.system.cpu.cores}} Cores</div>\n                                                <div class="h4">{{vm.system.os.distro}} - {{vm.system.os.release}} - Kernel: {{vm.system.os.kernel}}</div>\n                                                <div class="h4">Node.js: {{vm.system.node}}</div>\n                                                <div class="h4">Host: {{vm.system.os.hostname}} - Uptime: {{vm.system.time.uptime / 60 | number:0}} m</div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                            <ms-widget flex="25" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg md-hue-1">\n                                        <div class="h3">CPU</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="pb-8" layout="row" layout-align="space-between start">\n                                                    <span class="h3" translate="SETTINGS.AVG_LOAD">AVG Load</span>\n                                                    <span class="h3 secondary-text font-weight-500">{{vm.system.currentLoad.avgload * 100 | number:0}}%</span>\n                                                </div>\n                                                <md-progress-linear class="red" md-mode="determinate" value="{{vm.system.currentLoad.avgload * 100 | number:0}}"></md-progress-linear>\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                            <ms-widget flex="25" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg md-hue-3">\n                                        <div class="h3">MEM</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="h4">{{\'SETTINGS.TOTAL\' | translate}}: {{vm.system.mem.used / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                                <div class="h4">{{\'SETTINGS.FREE\' | translate}}: {{vm.system.mem.available / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                                <div class="h4">{{\'SETTINGS.USED\' | translate}}: {{vm.system.mem.active / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                            </div>\n                                            <div class="p-16 pb-32">\n                                                <div class="pb-8" layout="row" layout-align="space-between start">\n                                                    <span class="h3" translate="SETTINGS.USED">Used</span>\n                                                    <span class="h3 secondary-text font-weight-500">{{(vm.system.mem.active / vm.system.mem.total) * 100 | number : 0}}%</span>\n                                                </div>\n                                                <md-progress-linear class="md-warn" md-mode="determinate" value="{{(vm.system.mem.active / vm.system.mem.total) * 100 | number : 0 }}"></md-progress-linear>\n\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                        </md-card>\n\n                        <md-card class="md-whiteframe-1dp padding-20" layout="row" layout-xs="column" layout-wrap>\n                            <ms-widget ng-repeat="disk in vm.system.fsSize" flex="25" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg md-hue-3">\n                                        <div class="h3">DISK {{$index + 1}}</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="h4">{{\'SETTINGS.FILE_SYSTEM\' | translate}}: {{disk.fs}}</div>\n                                                <div class="h4">{{\'SETTINGS.MOUNT_POINT\' | translate}}: "{{disk.mount}}"</div>\n                                                <div class="h4">{{\'SETTINGS.TOTAL\' | translate}}: {{disk.size / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                                <div class="h4">{{\'SETTINGS.USED\' | translate}}: {{disk.used / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                            </div>\n                                            <div class="p-16 pb-32">\n                                                <div class="pb-8" layout="row" layout-align="space-between start">\n                                                    <span class="h3" translate="SETTINGS.USED">Used</span>\n                                                    <span class="h4 secondary-text font-weight-500">{{disk.use | number:0}}%</span>\n                                                </div>\n                                                <md-progress-linear class="red" md-mode="determinate" value="{{disk.use | number:0}}"></md-progress-linear>\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                        </md-card>\n\n                        <md-card class="md-whiteframe-1dp padding-20" layout="row" layout-xs="column" layout-wrap>\n                            <ms-widget ng-repeat="net in vm.system.net" flex="25" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg md-hue-3">\n                                        <div class="h3">NET {{$index + 1}}</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="h4">{{\'SETTINGS.INTERFACE\' | translate}}: {{net.iface}}</div>\n                                                <div class="h4">IPv4: {{net.ip4}}</div>\n                                                <div class="h4">IPv6: {{net.ip6}}</div>\n                                                <div class="h4">MAC: {{net.mac}}</div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                        </md-card>\n\n                        <md-card class="md-whiteframe-1dp padding-20" layout="row">\n                            <div flex>\n                                <md-toolbar class="md-table-toolbar md-default">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead" translate="SETTINGS.TOP_N_PROCESSES" translate-values="{value: vm.processLimit}"></span>\n                                        <div flex></div>\n                                        <ms-search-bar on-search="vm.searchTerm1 = query" on-collapse="vm.searchTerm1 = undefined" debounce="300"></ms-search-bar>\n                                    </div>\n                                </md-toolbar>\n                                <md-table-container>\n                                    <table md-table>\n                                        <thead md-head>\n                                            <tr md-row>\n                                                <th md-column>pid</th>\n                                                <th md-column>{{\'SETTINGS.NAME\' | translate}}</th>\n                                                <th md-column>{{\'SETTINGS.STATE\' | translate}}</th>\n                                                <th md-column>pmem</th>\n                                                <th md-column>pcpu</th>\n                                            </tr>\n                                        </thead>\n                                        <tbody md-body>\n                                            <tr md-row ng-repeat="process in vm.system.processes.list | limitTo: vm.processLimit | filter: vm.searchTerm1 | orderBy:\'-pcpu\'">\n                                                <td md-cell>{{process.pid}}</td>\n                                                <td md-cell>{{process.command}}</td>\n                                                <td md-cell>\n                                                    <span class="text-boxed white-fg" ng-class="{\n                          \'green-600-bg\': process.state == \'running\',\n                          \'yellow-600-bg\': process.state == \'sleeping\',\n                          \'red-600-bg\': process.state == \'blocked\'}">{{process.state | uppercase}}</span>\n                                                </td>\n                                                <td md-cell>{{process.pmem}}%</td>\n                                                <td md-cell>{{process.pcpu}}%</td>\n                                            </tr>\n                                        </tbody>\n                                    </table>\n                                </md-table-container>\n                            </div>\n                        </md-card>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SETTINGS.PROCESSES">PROCESSES</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="system-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <md-card class="md-whiteframe-1dp padding-20" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="SETTINGS.MOTION_PROCESS_MANAGEMENT"></span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm.searchTerm2 = query" on-collapse="vm.searchTerm2 = undefined" debounce="300"></ms-search-bar>\n                                    <md-button ng-click="vm.getProcesses()" class="md-icon-button" aria-label="Reload">\n                                        <md-icon md-font-icon="icon-reload" class="s24"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table>\n                                    <thead md-head>\n                                        <tr md-row>\n                                            <th md-column>id</th>\n                                            <th md-column>pid</th>\n                                            <th md-column>{{\'SETTINGS.NAME\' | translate}}</th>\n                                            <th md-column>{{\'SETTINGS.STATE\' | translate}}</th>\n                                            <th md-column>MEM</th>\n                                            <th md-column>CPU</th>\n                                            <th md-column width="20px">Actions</th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row ng-repeat="process in vm.processes | filter: vm.searchTerm2 | orderBy:\'-monit.cpu\'">\n                                            <td md-cell>{{process.pm_id}}</td>\n                                            <td md-cell>{{process.pid}}</td>\n                                            <td md-cell>{{process.name}}</td>\n                                            <td md-cell>\n                                                <span class="text-boxed white-fg" ng-class="{\'green-600-bg\': process.pm2_env.status == \'online\', \'red-600-bg\': process.pm2_env.status == \'stopped\'}">{{process.pm2_env.status | uppercase}}</span>\n                                            </td>\n                                            <td md-cell>{{process.monit.memory / 1024 / 1024 | number:0}} MB</td>\n                                            <td md-cell>{{process.monit.cpu}}%</td>\n                                            <td md-cell>\n                                                <md-button ng-if="process.pm2_env.status !== \'online\'" ng-click="vm.updateProcess($event, process.pm_id, \'online\')" class="md-icon-button" aria-label="Play">\n                                                    <md-icon md-font-icon="icon-play" class="s24"></md-icon>\n                                                </md-button>\n                                                <md-button ng-if="process.pm2_env.status === \'online\'" ng-click="vm.updateProcess($event, process.pm_id, \'stopped\')" class="md-icon-button" aria-label="Stop">\n                                                    <md-icon md-font-icon="icon-stop" class="s24"></md-icon>\n                                                </md-button>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                    <tfoot md-foot>\n                                        <tr md-row>\n                                            <td md-cell></td>\n                                            <td md-cell></td>\n                                            <td md-cell></td>\n                                            <td md-cell></td>\n                                            <td md-cell>{{ (vm.processes | map: \'monit.memory\' | sum) / 1024 / 1024 | number:0 }} MB</td>\n                                            <td md-cell></td>\n                                            <td md-cell></td>\n                                        </tr>\n                                    </tfoot>\n                                </table>\n                            </md-table-container>\n                        </md-card>\n                        <md-card class="md-whiteframe-1dp padding-20" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="SETTINGS.USEFUL_COMMANDS"></span>\n                                    <div flex></div>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table>\n                                    <thead md-head>\n                                        <tr md-row>\n                                            <th md-column width="30%">{{\'SETTINGS.COMMAND\' | translate}}</th>\n                                            <th md-column>{{\'SETTINGS.DESCRIPTION\' | translate}}</th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 list</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_LIST\' | translate}}</td>\n                                        </tr>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 start &lt;id | name&gt;</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_START\' | translate}}</td>\n                                        </tr>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 stop &lt;id | name | all&gt;</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_STOP\' | translate}}</td>\n                                        </tr>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 restart &lt;id | name&gt;</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_RESTART\' | translate}}</td>\n                                        </tr>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 logs [id | name]</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_LOGS\' | translate}}</td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                        </md-card>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/settings/views/updates/update/dialog.html",'<md-dialog aria-label="Update">\n    <form name="updateForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n            </div>\n        </md-toolbar>\n\n        <div md-background-bg layout="row" layout-align="start start">\n            <md-progress-linear md-mode="determinate" value="{{vm.progress}}" class="md-warn"></md-progress-linear>\n        </div>\n\n        <md-dialog-content ms-scroll>\n            <div layout="row" layout-align="center center">\n                <div ng-if="vm.updating" layout="column" layout-align="center center">\n                    <span class="text-center md-title">Grab a quick coffee and</span>\n                    <span class="text-center md-title">get back here as soon as completed!</span>\n                    <span class="text-center md-title">{{vm.output}}</span>\n                </div>\n                <div ng-if="!vm.updating">\n                    <div ng-if="vm.success" layout="column" layout-align="center center">\n                        <span class="text-center md-title">Update Completed! Thank you for your time.</span>\n                        <span class="text-center md-title">In order to complete the update,</span>\n                        <span class="text-center md-title">please click on reload button</span>\n                    </div>\n                    <div ng-if="!vm.success" layout="column" layout-align="center center">\n                        <span class="text-center md-title">Update Error!</span>\n                        <span class="text-center md-title">Please contact your administrator!</span>\n                        <span class="text-center md-title">{{vm.output}}</span>\n                    </div>\n                </div>\n                <img src="assets/images/business/users.jpg" alt="" width="128" height="128" />\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions ng-if="!vm.updating" layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.reload()" class="send-button md-warm md-raised" aria-label="RELOAD" translate="SETTINGS.RELOAD" translate-attr-aria-label="SETTINGS.RELOAD">\n                    RELOAD\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/updates/updates.html",'<div id="updates" class="page-layout simple fullwidth doc-page">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.UPDATES">UPDATES</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- UPDATE CARD --\x3e\n            <div layout="row" ng-if="!vm.updating">\n                <md-card class="md-whiteframe-1dp padding-20" flex>\n                    <div layout="column" layout-align="center center">\n\n                        <span class="md-title md-accent-fg padding-20 text-bold" translate="SETTINGS.CURRENT_VERSION">CURRENT VERSION</span>\n\n                        <span class="md-display-3 padding-20">{{vm.version.current}}</span>\n\n                        <md-button href="https://wiki.xcallymotion.com/display/XMV/Motion+GUI#MotionGUI-Version{{vm.version.current}}" target="_blank" class="md-accent" title="CHANGELOG" aria-label="CHANGELOG" translate="SETTINGS.CHANGELOG" translate-attr-aria-label="SETTINGS.CHANGELOG">\n                            CHANGELOG\n                        </md-button>\n                    </div>\n                </md-card>\n                <md-card class="md-whiteframe-20dp padding-20" flex ng-if="vm.version.current != vm.version.latest">\n                    <div layout="column" layout-align="center center">\n\n                        <span class="md-title md-warn-fg padding-20 text-bold" translate="SETTINGS.NEW_VERSION">NEW VERSION</span>\n\n                        <span class="md-display-3 padding-20">{{vm.version.latest}}</span>\n\n                        <md-button href="https://wiki.xcallymotion.com/display/XMV/Motion+GUI#MotionGUI-Version{{vm.version.latest}}" target="_blank" class="md-accent" title="CHANGELOG" aria-label="CHANGELOG" translate="SETTINGS.CHANGELOG" translate-attr-aria-label="SETTINGS.CHANGELOG">\n                            CHANGELOG\n                        </md-button>\n                        <md-button ng-click="vm.updateConfirm($event)" class="md-raised md-warn" aria-label="CHANGELOG" translate="SETTINGS.UPDATE" translate-attr-aria-label="SETTINGS.UPDATE">UPDATE</md-button>\n                    </div>\n                </md-card>\n                <md-card class="md-whiteframe-1dp padding-20" flex ng-if="vm.version.current == vm.version.latest">\n                    <div layout="column" layout-align="center center">\n\n                        <span class="md-title md-warn-fg padding-20 text-bold" translate="SETTINGS.REMOTE_VERSION">REMOTE VERSION</span>\n\n                        <span class="md-subhead padding-20" translate="SETTINGS.NO_NEW_VERSION_AVAILABLE">NO NEW VERSION AVAILABLE</span>\n                    </div>\n                </md-card>\n            </div>\n            \x3c!-- / UPDATE CARD --\x3e\n\n            <div ng-if="vm.updating">\n                <md-card class="md-whiteframe-1dp padding-20" flex>\n                    <div layout="column" layout-align="center center">\n                        <span class="md-title md-accent-fg padding-20 text-bold" translate="SETTINGS.UPDATING">...</span>\n                        <md-progress-linear md-mode="determinate" class="md-accent padding-20" value="{{vm.progress}}"></md-progress-linear>\n                        <span class="md-display-1 padding-5 text-center">Grab a quick coffee and</span>\n                        <span class="md-display-1 padding-5 text-center">get back here as soon as completed</span>\n                        <img src="assets/images/business/users.jpg" alt="" width="40%" height="40%" />\n                    </div>\n                </md-card>\n            </div>\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/main/apps/sms/views/smsAccounts/create/dialog.html",'<md-dialog class="smsAccount-dialog" aria-label="New SmsAccount">\n    <form name="smsAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SMS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.smsAccount.name" required autofocus>\n                <div ng-messages="smsAccountForm.name.$error" ng-show="smsAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.TYPE">Type</label>\n                <md-select ng-model="vm.smsAccount.type" required>\n                    <md-option ng-value="\'twilio\'">Twilio</md-option>\n                    <md-option ng-value="\'skebby\'">Skebby</md-option>\n                </md-select>\n                <div ng-messages="smsAccountForm.type.$error" ng-show="smsAccountForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smsAccount.type == \'skebby\'" class="md-block">\n                <label translate="SMS.SMSTYPE">smstype</label>\n                <md-select ng-model="vm.smsAccount.smstype" required>\n                    <md-option ng-value="\'basic\'">Basic</md-option>\n                    <md-option ng-value="\'classic\'">Classic</md-option>\n                    <md-option ng-value="\'classic+\'">Classic+</md-option>\n                </md-select>\n                <div ng-messages="smsAccountForm.smstype.$error" ng-show="smsAccountForm.smstype.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.SMSTYPE_REQUIRED">smstype field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.PHONE">phone</label>\n                <input type="text" name="phone" ng-model="vm.smsAccount.phone" required>\n                <div ng-messages="smsAccountForm.phone.$error" ng-show="smsAccountForm.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.PHONE_REQUIRED">phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smsAccount.type == \'twilio\'" class="md-block">\n                <label translate="SMS.SID">sid</label>\n                <input type="text" name="sid" ng-model="vm.smsAccount.sid" required>\n                <div ng-messages="smsAccountForm.sid.$error" ng-show="smsAccountForm.sid.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.SID_REQUIRED">sid field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smsAccount.type == \'twilio\'" class="md-block">\n                <label translate="SMS.TOKEN">token</label>\n                <input type="text" name="token" ng-model="vm.smsAccount.token" required>\n                <div ng-messages="smsAccountForm.token.$error" ng-show="smsAccountForm.token.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.TOKEN_REQUIRED">token field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smsAccount.type == \'skebby\'" class="md-block">\n                <label translate="SMS.USERNAME">username</label>\n                <input type="text" name="username" ng-model="vm.smsAccount.username" required>\n                <div ng-messages="smsAccountForm.username.$error" ng-show="smsAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.USERNAME_REQUIRED">username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.smsAccount.type == \'skebby\'">\n                <label translate="SMS.PASSWORD">password</label>\n                <input type="password" name="password" ng-model="vm.smsAccount.password" placeholder="Password" translate translate-attr-placeholder="SMS.PASSWORD" required>\n                <div ng-messages="smsAccountForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newSmsAccount  && vm.smsAccount.type == \'skebby\'">\n                <label translate="SMS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="smsAccountForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="SMS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.MOTIONADDRESS">motionaddress</label>\n                <input type="url" name="remote" ng-model="vm.smsAccount.remote" required>\n                <div ng-messages="smsAccountForm.remote.$error" ng-show="smsAccountForm.remote.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.MOTIONADDRESS_REQUIRED">motionaddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="SMS.ERRORS.MOTIONADDRESS_MUST_VALID_URL">motionaddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.smsAccount.description">\n                <div ng-messages="smsAccountForm.description.$error" ng-show="smsAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSmsAccount" ng-click="vm.saveSmsAccount()" class="send-button md-accent md-raised" ng-disabled="smsAccountForm.$invalid || smsAccountForm.$pristine" aria-label="SAVE" translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSmsAccount" ng-click="vm.addNewSmsAccount()" class="send-button md-accent md-raised" ng-disabled="smsAccountForm.$invalid" aria-label="ADD" translate="SMS.ADD_SMSACCOUNT" translate-attr-aria-label="SMS.ADD_SMSACCOUNT">\n                    ADD SMSACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSmsAccount" ng-click="vm.deleteSmsAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="SMS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SMS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/sms/views/smsAccounts/edit/smsDispositions/dialog.html",'<md-dialog class="smsDisposition-dialog" aria-label="New SmsDisposition">\n    <form name="smsDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SMS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.smsDisposition.name" required autofocus>\n                <div ng-messages="smsDispositionForm.name.$error" ng-show="smsDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSmsDisposition" ng-click="vm.saveSmsDisposition()" class="send-button md-accent md-raised" ng-disabled="smsDispositionForm.$invalid || smsDispositionForm.$pristine" aria-label="SAVE" translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSmsDisposition" ng-click="vm.addNewSmsDisposition()" class="send-button md-accent md-raised" ng-disabled="smsDispositionForm.$invalid" aria-label="ADD" translate="SMS.ADD_SMSDISPOSITION" translate-attr-aria-label="SMS.ADD_SMSDISPOSITION">\n                    ADD SMSDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSmsDisposition" ng-click="vm.deleteSmsDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="SMS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SMS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/sms/views/smsAccounts/edit/view.html",'<div id="sms-smsAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-smsAccounts-button md-icon-button" aria-label="Go to smsAccounts" ng-click="vm.gotoSmsAccounts()" translate translate-attr-aria-label="SMS.GO_TO_SMSACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.smsAccount.userpic" class="smsAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.smsAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.smsAccount.userpic" class="smsAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/smsAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.smsAccount.id}} {{vm.smsAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="SMS.CREATED_AT"></span> <span>{{vm.smsAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveSmsAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (apiForm.$invalid) || (smsDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid)"\n                translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.smsAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.LIST">List</label>\n                                <md-select ng-model="vm.smsAccount.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.smsAccount.fidelity" aria-label="fidelity"><span translate="SMS.FIDELITY">fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.fidelity" class="md-block">\n                                <label translate="SMS.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.smsAccount.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.TYPE">Type</label>\n                                <md-select ng-model="vm.smsAccount.type" required>\n                                    <md-option ng-value="\'twilio\'">Twilio</md-option>\n                                    <md-option ng-value="\'skebby\'">Skebby</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.type.$error" ng-show="generalForm.type.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.type == \'skebby\'" class="md-block">\n                                <label translate="SMS.SMSTYPE">smstype</label>\n                                <md-select ng-model="vm.smsAccount.smstype" required>\n                                    <md-option ng-value="\'basic\'">Basic</md-option>\n                                    <md-option ng-value="\'classic\'">Classic</md-option>\n                                    <md-option ng-value="\'classic+\'">Classic+</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.smstype.$error" ng-show="generalForm.smstype.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.SMSTYPE_REQUIRED">smstype field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.PHONE">phone</label>\n                                <input type="text" name="phone" ng-model="vm.smsAccount.phone" required>\n                                <div ng-messages="generalForm.phone.$error" ng-show="generalForm.phone.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.PHONE_REQUIRED">phone field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.type == \'twilio\'" class="md-block">\n                                <label translate="SMS.SID">sid</label>\n                                <input type="text" name="sid" ng-model="vm.smsAccount.sid" required>\n                                <div ng-messages="generalForm.sid.$error" ng-show="generalForm.sid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.SID_REQUIRED">sid field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.type == \'twilio\'" class="md-block">\n                                <label translate="SMS.TOKEN">token</label>\n                                <input type="text" name="token" ng-model="vm.smsAccount.token" required>\n                                <div ng-messages="generalForm.token.$error" ng-show="generalForm.token.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.TOKEN_REQUIRED">token field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.type == \'skebby\'" class="md-block">\n                                <label translate="SMS.USERNAME">username</label>\n                                <input type="text" name="username" ng-model="vm.smsAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.USERNAME_REQUIRED">username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.smsAccount.type == \'skebby\'">\n                                <label translate="SMS.PASSWORD">password</label>\n                                <input type="password" name="password" ng-model="vm.smsAccount.password" placeholder="Password" translate translate-attr-placeholder="SMS.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newSmsAccount  && vm.smsAccount.type == \'skebby\'">\n                                <label translate="SMS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="SMS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.MOTIONADDRESS">motionaddress</label>\n                                <input type="url" name="remote" ng-model="vm.smsAccount.remote" required>\n                                <div ng-messages="generalForm.remote.$error" ng-show="generalForm.remote.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.MOTIONADDRESS_REQUIRED">motionaddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="SMS.ERRORS.MOTIONADDRESS_MUST_VALID_URL">motionaddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.smsAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.API">API</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container api md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.API">API</div>\n                        </div>\n                        <form name="apiForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container smsdispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="SmsAccountSmsDispositionsController as vm_dc" ng-init="vm_dc.init(vm.smsAccount)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedSmsAccountSmsDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="SMS.SMSDISPOSITIONS">SmsDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event)" aria-label="add smsDisposition" translate translate-attr-label="SMS.ADD_SMSDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedSmsAccountSmsDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedSmsAccountSmsDispositions.length}} {{vm_dc.selectedSmsAccountSmsDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedSmsAccountSmsDispositions($event)" aria-label="delete selected" translate translate-attr-label="SMSACCOUNTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedSmsAccountSmsDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getSmsAccountSmsDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'SMS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'SMS.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'SMS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="smsDisposition" md-select-id="id" ng-repeat="smsDisposition in vm_dc.smsAccountSmsDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event, smsDisposition)" md-cell>{{smsDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event, smsDisposition)" md-cell>{{smsDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event, smsDisposition)" md-cell>{{smsDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="SMS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event, smsDisposition)" translate="SMS.EDIT_SMSDISPOSITION">\n                                                                Edit SmsDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(smsDisposition, $event)" translate="SMS.DELETE_SMSDISPOSITION">\n                                                                Delete SmsDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.smsAccountSmsDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="SMS.NO_SMSDISPOSITION_AVAILABLE">No smsdisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.smsAccountSmsDispositions.count}}" md-on-paginate="vm_dc.getSmsAccountSmsDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.smsAccount.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.smsAccount.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="SMS.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="smsAccount-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.smsAccount.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.smsAccount.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="SMS.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="smsAccount-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.smsAccount.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.smsAccount.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="SMS.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/sms/views/smsAccounts/smsAccounts.html",'<div id="smsAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-message-text" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SMS.SMSACCOUNTS">SmsAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="SMS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSmsAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSmsAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="SMS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-smsAccounts-count">\n                    <span>{{vm.selectedSmsAccounts.length}}</span>\n                <span translate="SMS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SMSACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSmsAccounts()" translate="SMS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSmsAccounts()" translate="SMS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSmsAccounts" filename="smsAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSmsAccounts($event)" aria-label="delete selected" translate translate-attr-label="SMSACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SMSACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSmsAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSmsAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'SMS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'SMS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="type">{{ \'SMS.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'SMS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.smsAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="SMS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="smsAccount" md-select-id="id" ng-repeat="smsAccount in vm.smsAccounts.rows">\n                                <td md-cell ng-if="smsAccount.userpic"><img class="avatar" alt="{{smsAccount.name}}" ng-src="api/users/{{smsAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!smsAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{smsAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSmsAccount($event, smsAccount)" md-cell class="id ">{{smsAccount.id}}</td>\n                                <td ng-click="vm.createOrEditSmsAccount($event, smsAccount)" md-cell class="name ">{{smsAccount.name}}</td>\n                                <td ng-click="vm.createOrEditSmsAccount($event, smsAccount)" md-cell class="type ">{{ vm.arraytype[smsAccount.type].option }}</td>\n                                <td ng-click="vm.createOrEditSmsAccount($event, smsAccount)" md-cell class="description ">{{smsAccount.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="SMS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(smsAccount, $event)" translate="SMS.EDIT_SMSACCOUNT">\n                                                    Edit SmsAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(smsAccount, $event)" translate="SMS.DELETE_SMSACCOUNT">\n                                                    Delete SmsAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.smsAccounts.count}}" md-on-paginate="vm.getSmsAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SMSACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SMSACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-smsAccount-button" ng-click="vm.createOrEditSmsAccount($event)" aria-label="add smsAccount" translate translate-attr-aria-label="SMS.ADD_SMSACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SMSACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/sms/views/smsQueues/create/dialog.html",'<md-dialog class="smsQueue-dialog" aria-label="New SmsQueue">\n    <form name="smsQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SMS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.smsQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="smsQueueForm.name.$error" ng-show="smsQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="SMS.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.smsQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="smsQueueForm.strategy.$error" ng-show="smsQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.smsQueue.timeout" required>\n                <div ng-messages="smsQueueForm.timeout.$error" ng-show="smsQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.smsQueue.description">\n                <div ng-messages="smsQueueForm.description.$error" ng-show="smsQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSmsQueue" ng-click="vm.saveSmsQueue()" class="send-button md-accent md-raised" ng-disabled="smsQueueForm.$invalid || smsQueueForm.$pristine" aria-label="SAVE" translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSmsQueue" ng-click="vm.addNewSmsQueue()" class="send-button md-accent md-raised" ng-disabled="smsQueueForm.$invalid" aria-label="ADD" translate="SMS.ADD_SMSQUEUE" translate-attr-aria-label="SMS.ADD_SMSQUEUE">\n                    ADD SMSQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSmsQueue" ng-click="vm.deleteSmsQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="SMS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SMS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/sms/views/smsQueues/edit/teamadd/teamadd.html",'<md-dialog class="smsQueue-dialog" aria-label="smsQueue">\n    <form name="smsQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="SMS.TEAMADD_SMSQUEUE">Add Team in SMSQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="SMS.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="smsQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/sms/views/smsQueues/edit/view.html",'<div id="sms-smsQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-smsQueues-button md-icon-button" aria-label="Go to smsQueues" ng-click="vm.gotoSmsQueues()" translate translate-attr-aria-label="SMS.GO_TO_SMSQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.smsQueue.userpic" class="smsQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.smsQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.smsQueue.userpic" class="smsQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/smsQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.smsQueue.id}} {{vm.smsQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="SMS.CREATED_AT"></span> <span>{{vm.smsQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.smsQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="SMS.TEAMADD_SMSQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveSmsQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.smsQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="SMS.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.smsQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.smsQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.smsQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/sms/views/smsQueues/smsQueues.html",'<div id="smsQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-message-text" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SMS.SMSQUEUES">SmsQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="SMS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSmsQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSmsQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="SMS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-smsQueues-count">\n                    <span>{{vm.selectedSmsQueues.length}}</span>\n                <span translate="SMS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SMSQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSmsQueues()" translate="SMS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSmsQueues()" translate="SMS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSmsQueues" filename="smsQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSmsQueues($event)" aria-label="delete selected" translate translate-attr-label="SMSQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SMSQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSmsQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSmsQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'SMS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'SMS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'SMS.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.smsQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="SMS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="smsQueue" md-select-id="id" ng-repeat="smsQueue in vm.smsQueues.rows">\n                                <td md-cell ng-if="smsQueue.userpic"><img class="avatar" alt="{{smsQueue.name}}" ng-src="api/users/{{smsQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!smsQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{smsQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSmsQueue($event, smsQueue)" md-cell class="id ">{{smsQueue.id}}</td>\n                                <td ng-click="vm.createOrEditSmsQueue($event, smsQueue)" md-cell class="name ">{{smsQueue.name}}</td>\n                                <td ng-click="vm.createOrEditSmsQueue($event, smsQueue)" md-cell class="strategy ">{{ vm.arraystrategy[smsQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="SMS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(smsQueue, $event)" translate="SMS.EDIT_SMSQUEUE">\n                                                    Edit SmsQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(smsQueue, $event)" translate="SMS.DELETE_SMSQUEUE">\n                                                    Delete SmsQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.smsQueues.count}}" md-on-paginate="vm.getSmsQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SMSQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SMSQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-smsQueue-button" ng-click="vm.createOrEditSmsQueue($event)" aria-label="add smsQueue" translate translate-attr-aria-label="SMS.ADD_SMSQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SMSQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/staff/views/agents/agents.html",'<div id="agents" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-multiple" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="STAFF.AGENTS">Agents</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="STAFF.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedAgents.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedAgents =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="STAFF.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-agents-count">\n                    <span>{{vm.selectedAgents.length}}</span>\n                <span translate="STAFF.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="AGENTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllAgents()" translate="STAFF.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectAgents()" translate="STAFF.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedAgents" filename="agents.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedAgents($event)" aria-label="delete selected" translate translate-attr-label="AGENTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- AGENT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedAgents" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getAgents">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="fullname">{{ \'STAFF.FULLNAME\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'STAFF.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="email">{{ \'STAFF.EMAIL\' | translate }}</th>\n                                <th md-column md-order-by="internal">{{ \'STAFF.INTERNAL\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.agents.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="STAFF.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="agent" md-select-id="id" ng-repeat="agent in vm.agents.rows">\n                                <td md-cell ng-if="agent.userpic"><img class="avatar" alt="{{agent.name}}" ng-src="api/users/{{agent.id}}/avatar" /></td>\n                                <td md-cell ng-if="!agent.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{agent.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditAgent($event, agent)" md-cell class="fullname font-weight-600">{{agent.fullname}}</td>\n                                <td ng-click="vm.createOrEditAgent($event, agent)" md-cell class="name ">{{agent.name}}</td>\n                                <td ng-click="vm.createOrEditAgent($event, agent)" md-cell class="email ">{{agent.email}}</td>\n                                <td ng-click="vm.createOrEditAgent($event, agent)" md-cell class="internal ">{{agent.internal}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(agent, $event)" translate="STAFF.EDIT_AGENT">\n                                                    Edit Agent\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(agent, $event)" translate="STAFF.DELETE_AGENT">\n                                                    Delete Agent\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.agents.count}}" md-on-paginate="vm.getAgents" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / AGENT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD AGENT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-agent-button" ng-click="vm.createOrEditAgent($event)" aria-label="add agent" translate translate-attr-aria-label="STAFF.ADD_AGENT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD AGENT BUTTON --\x3e\n</div>'),e.put("app/main/apps/staff/views/agents/create/dialog.html",'<md-dialog class="agent-dialog" aria-label="New Agent">\n    <form name="agentForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.FULLNAME">Fullname</label>\n                <input type="text" name="fullname" ng-model="vm.agent.fullname" required autofocus>\n                <div ng-messages="agentForm.fullname.$error" ng-show="agentForm.fullname.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.FULLNAME_REQUIRED">Fullname field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.USERNAME">Username</label>\n                <input type="text" name="name" ng-model="vm.agent.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="!vm.newAgent">\n                <div ng-messages="agentForm.name.$error" ng-show="agentForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.agent.email" required>\n                <div ng-messages="agentForm.email.$error" ng-show="agentForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newAgent">\n                <label translate="STAFF.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.agent.password" placeholder="Password" translate translate-attr-placeholder="STAFF.PASSWORD" required>\n                <div ng-messages="agentForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newAgent  && vm.newAgent">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="agentForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.agent.description">\n                <div ng-messages="agentForm.description.$error" ng-show="agentForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newAgent" class="md-block">\n                <md-switch ng-model="vm.agent.autointernal" aria-label="AutoInternal"><span translate="STAFF.AUTOINTERNAL">AutoInternal</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="!vm.agent.autointernal" class="md-block">\n                <label translate="STAFF.INTERNAL">Internal</label>\n                <input type="text" name="internal" ng-model="vm.agent.internal" required ng-disabled="!vm.newAgent">\n                <div ng-messages="agentForm.internal.$error" ng-show="agentForm.internal.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newAgent" class="md-block">\n                <md-switch ng-model="vm.agent.voicemail" aria-label="Voicemail"><span translate="STAFF.VOICEMAIL">Voicemail</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newAgent" ng-click="vm.saveAgent()" class="send-button md-accent md-raised" ng-disabled="agentForm.$invalid || agentForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newAgent" ng-click="vm.addNewAgent()" class="send-button md-accent md-raised" ng-disabled="agentForm.$invalid" aria-label="ADD" translate="STAFF.ADD_AGENT" translate-attr-aria-label="STAFF.ADD_AGENT">\n                    ADD AGENT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newAgent" ng-click="vm.deleteAgent($event)" aria-label="DELETE" translate translate-attr-aria-label="STAFF.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="STAFF.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/agents/edit/changepassword/changepassword.html",'<md-dialog class="agent-dialog" aria-label="{{vm.name}}">\n    <form name="agentForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ \'STAFF.CHANGE_PASSWORD\' | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.NEW_PASSWORD">New Password</label>\n                <input type="password" name="password" ng-model="vm.password" placeholder="Password" translate translate-attr-placeholder="STAFF.NEW_PASSWORD" required>\n                <div ng-messages="agentForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="agentForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.savePassword()" class="send-button md-accent md-raised" ng-disabled="agentForm.$invalid || agentForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/agents/edit/queueadd/queueadd.html",'<md-dialog class="agent-dialog" aria-label="agent">\n    <form name="agentForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2>{{vm.title}}</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin" ng-if="vm.agent.role === \'agent\'">\n                <label translate="STAFF.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="agentForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/agents/edit/view.html",'<div id="staff-agent" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-agents-button md-icon-button" aria-label="Go to agents" ng-click="vm.gotoAgents()" translate translate-attr-aria-label="STAFF.GO_TO_AGENTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.agent.userpic" class="agent-image" hide-xs>\n                    <img ng-src="api/users/{{vm.agent.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.agent.userpic" class="agent-image" hide-xs>\n                    <img ng-src="assets/images/business/agents.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.agent.id}} {{vm.agent.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="STAFF.CREATED_AT"></span> <span>{{vm.agent.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div ng-cloak ng-if="vm.agent.role !== \'admin\'">\n            <md-fab-speed-dial md-direction="left" class="md-scale md-fab">\n                <md-fab-trigger>\n                    <md-button aria-label="menu" class="md-fab md-primary md-icon-button">\n                        <md-tooltip md-direction="top" md-visible="false">Channels</md-tooltip>\n                        <md-icon md-font-icon="icon-stackoverflow" aria-label="queueadd"></md-icon>\n                    </md-button>\n                </md-fab-trigger>\n                <md-fab-actions>\n                    <md-button aria-label="voice" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'voice\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Voice</md-tooltip>\n                        <md-icon md-font-icon="icon-phone" aria-label="voice"></md-icon>\n                    </md-button>\n                    <md-button aria-label="chat" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'chat\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Chat</md-tooltip>\n                        <md-icon md-font-icon="icon-hangouts" aria-label="chat"></md-icon>\n                    </md-button>\n                    <md-button aria-label="mail" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'mail\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Mail</md-tooltip>\n                        <md-icon md-font-icon="icon-email" aria-label="mail"></md-icon>\n                    </md-button>\n                    <md-button aria-label="sms" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'sms\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Sms</md-tooltip>\n                        <md-icon md-font-icon="icon-message-text" aria-label="sms"></md-icon>\n                    </md-button>\n                    <md-button aria-label="openchannel" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'openchannel\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Openchannel</md-tooltip>\n                        <md-icon md-font-icon="icon-google-earth" aria-label="openchannel"></md-icon>\n                    </md-button>\n                    <md-button aria-label="fax" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'fax\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Fax</md-tooltip>\n                        <md-icon md-font-icon="icon-deskphone" aria-label="fax"></md-icon>\n                    </md-button>\n                </md-fab-actions>\n            </md-fab-speed-dial>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.changepassworddialog(vm.agent, $event)" class="md-fab md-warn md-icon-button" aria-label="changepassword">\n                <md-tooltip><span translate="STAFF.CHANGEPASSWORD_AGENT"></span></md-tooltip>\n                <md-icon md-font-icon="icon-key-variant"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveAgent()" class="send-button md-accent md-raised" ng-disabled="(personal_infoForm.$invalid) || (change_avatarForm.$invalid) || (generalForm.$invalid) || (capacityForm.$invalid) || (settingsForm.$invalid) || (remote_controlForm.$invalid) || (sipForm.$invalid)"\n                translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="agent-detail-form-container personal_info md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.PERSONAL_INFO">PERSONAL_INFO</div>\n                        </div>\n                        <form name="personal_infoForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.FULLNAME">Fullname</label>\n                                <input type="text" name="fullname" ng-model="vm.agent.fullname" required autofocus>\n                                <div ng-messages="personal_infoForm.fullname.$error" ng-show="personal_infoForm.fullname.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.FULLNAME_REQUIRED">Fullname field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.USERNAME">Username</label>\n                                <input type="text" name="name" ng-model="vm.agent.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="true">\n                                <div ng-messages="personal_infoForm.name.$error" ng-show="personal_infoForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.agent.email" required>\n                                <div ng-messages="personal_infoForm.email.$error" ng-show="personal_infoForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.agent.description">\n                                <div ng-messages="personal_infoForm.description.$error" ng-show="personal_infoForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.loginInPause" aria-label="LoginInPause"><span translate="STAFF.LOGININPAUSE">LoginInPause</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="agent-detail-form-container change_avatar md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.CHANGE_AVATAR">CHANGE_AVATAR</div>\n                        </div>\n                        <div ng-controller="Agentchange_avatarController as vm_ca" ng-init="vm_ca.init(vm.agent)" class="agent-detail-form-container md-background-bg md-whiteframe-1dp">\n\n                            <div id="agent-image-uploader" flow-init="vm_ca.ngFlowOptions" flow-name="vm_ca.ngFlow.flow" flow-files-submitted="vm_ca.upload()" flow-file-added="vm_ca.fileAdded($file)" flow-file-success="vm_ca.fileSuccess($file, $message)" flow-complete="vm_ca.uploadComplete()"\n                                flow-drop flow-drag-enter="vm_ca.dropping=true" flow-drag-leave="vm_ca.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                                <div class="drop-text hint-text" layout="row" layout-align="center center">\n                                    <span translate="EC.DROP_TO_UPLOAD">Drop to upload</span>\n                                </div>\n\n                                <div class="upload-button" layout="column" layout-align="center center">\n                                    <md-button class="md-accent md-raised" flow-btn>\n                                        Upload\n                                    </md-button>\n                                    <span class="secondary-text mt-8">You can also drop images here to upload. Only PNG, JPG - Max. 8MB</span>\n                                </div>\n\n                                <div layout="row" layout-align="start start" layout-wrap>\n                                    <div ng-repeat="change_avatarimage in vm_ca.agent.images" ng-switch="change_avatarimage.type">\n                                        <div class="agent-image uploading" ng-switch-when="uploading" layout="row" layout-align="center center">\n                                            <div class="overlay" layout="column" layout-align="center center">\n                                                <md-progress-linear md-mode="determinate" value="{{change_avatarimage.file.progress() * 100}}">\n                                                </md-progress-linear>\n                                            </div>\n                                            <img class="media" flow-img="change_avatarimage.file">\n                                        </div>\n\n                                        <div class="agent-image" ng-switch-when="image" layout="row" layout-align="center center">\n                                            <img class="media" ng-src="{{change_avatarimage.url}}">\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.VOICE">VOICE</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="agent-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container ng-if="!vm.agent.autointernal" class="md-block">\n                                <label translate="STAFF.INTERNAL">Internal</label>\n                                <input type="text" name="internal" ng-model="vm.agent.internal" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.internal.$error" ng-show="generalForm.internal.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.TRANSPORT">Transport</label>\n                                <md-select ng-model="vm.agent.transport" multiple>\n                                    <md-option ng-value="\'udp\'">udp</md-option>\n                                    <md-option ng-value="\'tcp\'">tcp</md-option>\n                                    <md-option ng-value="\'ws\'">ws</md-option>\n                                    <md-option ng-value="\'wss\'">wss</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.TRANSPORT"></span></div>\n                                <div ng-messages="generalForm.transport.$error" ng-show="generalForm.transport.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.TRANSPORT_REQUIRED">Transport field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.HOST">Host</label>\n                                <input type="text" name="host" ng-model="vm.agent.host" required>\n                                <div class="hint"><span translate="STAFF.HELP.HOST"></span></div>\n                                <div ng-messages="generalForm.host.$error" ng-show="generalForm.host.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.HOST_REQUIRED">Host field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.NAT">NAT</label>\n                                <md-select ng-model="vm.agent.nat" required multiple>\n                                    <md-option ng-value="\'force_rport\'">force_rport</md-option>\n                                    <md-option ng-value="\'comedia\'">comedia</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'never\'">never</md-option>\n                                    <md-option ng-value="\'route\'">route</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.NAT"></span></div>\n                                <div ng-messages="generalForm.nat.$error" ng-show="generalForm.nat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.NAT_REQUIRED">NAT field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.TYPE">Type</label>\n                                <md-select ng-model="vm.agent.type">\n                                    <md-option ng-value="\'friend\'">Friend</md-option>\n                                    <md-option ng-value="\'user\'">User</md-option>\n                                    <md-option ng-value="\'peer\'">Peer</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.TYPE"></span></div>\n                                <div ng-messages="generalForm.type.$error" ng-show="generalForm.type.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ALLOWCODECS">AllowCodecs</label>\n                                <md-select ng-model="vm.agent.allow" required multiple>\n                                    <md-option ng-value="\'alaw\'">alaw</md-option>\n                                    <md-option ng-value="\'ulaw\'">ulaw</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                    <md-option ng-value="\'g729\'">g729</md-option>\n                                    <md-option ng-value="\'ilbc\'">ilbc</md-option>\n                                    <md-option ng-value="\'opus\'">opus</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.ALLOWCODECS"></span></div>\n                                <div ng-messages="generalForm.allow.$error" ng-show="generalForm.allow.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ALLOWCODECS_REQUIRED">AllowCodecs field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLERID">CallerId</label>\n                                <input type="text" name="callerid" ng-model="vm.agent.callerid">\n                                <div ng-messages="generalForm.callerid.$error" ng-show="generalForm.callerid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLERID_REQUIRED">CallerId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLGROUP">Callgroup</label>\n                                <input type="text" name="callgroup" ng-model="vm.agent.callgroup">\n                                <div class="hint"><span translate="STAFF.HELP.CALLGROUP"></span></div>\n                                <div ng-messages="generalForm.callgroup.$error" ng-show="generalForm.callgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLGROUP_REQUIRED">Callgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.PICKUPGROUP">Pickupgroup</label>\n                                <input type="text" name="pickupgroup" ng-model="vm.agent.pickupgroup">\n                                <div class="hint"><span translate="STAFF.HELP.PICKUPGROUP"></span></div>\n                                <div ng-messages="generalForm.pickupgroup.$error" ng-show="generalForm.pickupgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.PICKUPGROUP_REQUIRED">Pickupgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.chanspy" aria-label="chanSpy"><span translate="STAFF.CHANSPY">chanSpy</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.OTHER_CHANNELS">OTHER_CHANNELS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="agent-detail-form-container capacity md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.CAPACITY">CAPACITY</div>\n                        </div>\n                        <form name="capacityForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CHATCAPACITY">ChatCapacity</label>\n                                <input type="number" name="chatCapacity" ng-model="vm.agent.chatCapacity" min="0" required autofocus>\n                                <div class="hint"><span translate="STAFF.HELP.CHATCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.chatCapacity.$error" ng-show="capacityForm.chatCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CHATCAPACITY_REQUIRED">ChatCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.MAILCAPACITY">MailCapacity</label>\n                                <input type="number" name="mailCapacity" ng-model="vm.agent.mailCapacity" min="0" required>\n                                <div class="hint"><span translate="STAFF.HELP.MAILCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.mailCapacity.$error" ng-show="capacityForm.mailCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.MAILCAPACITY_REQUIRED">MailCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.FAXCAPACITY">FaxCapacity</label>\n                                <input type="number" name="faxCapacity" ng-model="vm.agent.faxCapacity" min="0" required>\n                                <div class="hint"><span translate="STAFF.HELP.FAXCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.faxCapacity.$error" ng-show="capacityForm.faxCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.FAXCAPACITY_REQUIRED">FaxCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.SMSCAPACITY">SMSCapacity</label>\n                                <input type="number" name="smsCapacity" ng-model="vm.agent.smsCapacity" min="0" required>\n                                <div class="hint"><span translate="STAFF.HELP.SMSCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.smsCapacity.$error" ng-show="capacityForm.smsCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.SMSCAPACITY_REQUIRED">SMSCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.OPENCHANNELCAPACITY">OpenchannelCapacity</label>\n                                <input type="number" name="openchannelCapacity" ng-model="vm.agent.openchannelCapacity" min="0" required>\n                                <div class="hint"><span translate="STAFF.HELP.OPENCHANNELCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.openchannelCapacity.$error" ng-show="capacityForm.openchannelCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.OPENCHANNELCAPACITY_REQUIRED">OpenchannelCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.MOTIONBAR">MOTIONBAR</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="agent-detail-form-container settings md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.SETTINGS">SETTINGS</div>\n                        </div>\n                        <form name="settingsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarEnableSettings" aria-label="EnableSettings"><span translate="STAFF.ENABLESETTINGS">EnableSettings</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarAutoAnswer" aria-label="AutoAnswer"><span translate="STAFF.AUTOANSWER">AutoAnswer</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarRingInUse" aria-label="RingInUse"><span translate="STAFF.RINGINUSE">RingInUse</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarEnableRecording" aria-label="EnableRecording"><span translate="STAFF.ENABLERECORDING">EnableRecording</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="agent-detail-form-container remote_control md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.REMOTE_CONTROL">REMOTE_CONTROL</div>\n                        </div>\n                        <form name="remote_controlForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarRemoteControl" aria-label="RemoteControl"><span translate="STAFF.REMOTECONTROL">RemoteControl</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.agent.phoneBarRemoteControl" class="md-block">\n                                <label translate="STAFF.REMOTECONTROLPORT">RemoteControlPort</label>\n                                <input type="number" name="phoneBarRemoteControlPort" ng-model="vm.agent.phoneBarRemoteControlPort" required>\n                                <div ng-messages="remote_controlForm.phoneBarRemoteControlPort.$error" ng-show="remote_controlForm.phoneBarRemoteControlPort.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.REMOTECONTROLPORT_REQUIRED">RemoteControlPort field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="agent-detail-form-container sip md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.SIP">SIP</div>\n                        </div>\n                        <form name="sipForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.SIPEXPIRES">SipExpires</label>\n                                <input type="number" name="phoneBarExpires" ng-model="vm.agent.phoneBarExpires" required autofocus>\n                                <div class="hint"><span translate="STAFF.HELP.SIPEXPIRES"></span></div>\n                                <div ng-messages="sipForm.phoneBarExpires.$error" ng-show="sipForm.phoneBarExpires.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.SIPEXPIRES_REQUIRED">SipExpires field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.SIPPORT">SipPort</label>\n                                <input type="number" name="phoneBarListenPort" ng-model="vm.agent.phoneBarListenPort" required>\n                                <div class="hint"><span translate="STAFF.HELP.SIPPORT"></span></div>\n                                <div ng-messages="sipForm.phoneBarListenPort.$error" ng-show="sipForm.phoneBarListenPort.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.SIPPORT_REQUIRED">SipPort field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/staff/views/teams/create/dialog.html",'<md-dialog class="team-dialog" aria-label="New Team">\n    <form name="teamForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.team.name" required autofocus>\n                <div ng-messages="teamForm.name.$error" ng-show="teamForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.team.description">\n                <div ng-messages="teamForm.description.$error" ng-show="teamForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTeam" ng-click="vm.saveTeam()" class="send-button md-accent md-raised" ng-disabled="teamForm.$invalid || teamForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTeam" ng-click="vm.addNewTeam()" class="send-button md-accent md-raised" ng-disabled="teamForm.$invalid" aria-label="ADD" translate="STAFF.ADD_TEAM" translate-attr-aria-label="STAFF.ADD_TEAM">\n                    ADD TEAM\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTeam" ng-click="vm.deleteTeam($event)" aria-label="DELETE" translate translate-attr-aria-label="STAFF.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="STAFF.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/teams/edit/agentadd/agentadd.html",'<md-dialog class="team-dialog" aria-label="team">\n    <form name="teamForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="STAFF.AGENTADD_TEAM">Add Agent to team</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/teams/teams.html",'<div id="teams" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-multiple" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="STAFF.TEAMS">Teams</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="STAFF.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTeams.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTeams =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="STAFF.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-teams-count">\n                    <span>{{vm.selectedTeams.length}}</span>\n                <span translate="STAFF.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TEAMS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTeams()" translate="STAFF.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTeams()" translate="STAFF.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTeams" filename="teams.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTeams($event)" aria-label="delete selected" translate translate-attr-label="TEAMS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TEAM TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTeams" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTeams">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'STAFF.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'STAFF.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'STAFF.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.teams.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="STAFF.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="team" md-select-id="id" ng-repeat="team in vm.teams.rows">\n                                <td md-cell ng-if="team.userpic"><img class="avatar" alt="{{team.name}}" ng-src="api/users/{{team.id}}/avatar" /></td>\n                                <td md-cell ng-if="!team.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{team.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTeam($event, team)" md-cell class="id ">{{team.id}}</td>\n                                <td ng-click="vm.createOrEditTeam($event, team)" md-cell class="name ">{{team.name}}</td>\n                                <td ng-click="vm.createOrEditTeam($event, team)" md-cell class="description ">{{team.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(team, $event)" translate="STAFF.EDIT_TEAM">\n                                                    Edit Team\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.agentadddialog(team, $event)" translate="STAFF.AGENTADD_TEAM">\n                                                    AgentAdd Team\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(team, $event)" translate="STAFF.DELETE_TEAM">\n                                                    Delete Team\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.teams.count}}" md-on-paginate="vm.getTeams" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TEAM TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TEAM BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-team-button" ng-click="vm.createOrEditTeam($event)" aria-label="add team" translate translate-attr-aria-label="STAFF.ADD_TEAM">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TEAM BUTTON --\x3e\n</div>'),e.put("app/main/apps/staff/views/telephones/create/dialog.html",'<md-dialog class="telephone-dialog" aria-label="New Telephone">\n    <form name="telephoneForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.ACCOUNTNAME">Accountname</label>\n                <input type="text" name="fullname" ng-model="vm.telephone.fullname" required autofocus>\n                <div ng-messages="telephoneForm.fullname.$error" ng-show="telephoneForm.fullname.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.ACCOUNTNAME_REQUIRED">Accountname field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.USERNAME">Username</label>\n                <input type="text" name="name" ng-model="vm.telephone.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="!vm.newTelephone">\n                <div ng-messages="telephoneForm.name.$error" ng-show="telephoneForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.telephone.email" required>\n                <div ng-messages="telephoneForm.email.$error" ng-show="telephoneForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newTelephone">\n                <label translate="STAFF.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.telephone.password" placeholder="Password" translate translate-attr-placeholder="STAFF.PASSWORD" required>\n                <div ng-messages="telephoneForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newTelephone  && vm.newTelephone">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="telephoneForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.telephone.description">\n                <div ng-messages="telephoneForm.description.$error" ng-show="telephoneForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newTelephone" class="md-block">\n                <md-switch ng-model="vm.telephone.autointernal" aria-label="AutoInternal"><span translate="STAFF.AUTOINTERNAL">AutoInternal</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="!vm.telephone.autointernal" class="md-block">\n                <label translate="STAFF.INTERNAL">Internal</label>\n                <input type="text" name="internal" ng-model="vm.telephone.internal" required ng-disabled="!vm.newTelephone">\n                <div ng-messages="telephoneForm.internal.$error" ng-show="telephoneForm.internal.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newTelephone" class="md-block">\n                <md-switch ng-model="vm.telephone.voicemail" aria-label="Voicemail"><span translate="STAFF.VOICEMAIL">Voicemail</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTelephone" ng-click="vm.saveTelephone()" class="send-button md-accent md-raised" ng-disabled="telephoneForm.$invalid || telephoneForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTelephone" ng-click="vm.addNewTelephone()" class="send-button md-accent md-raised" ng-disabled="telephoneForm.$invalid" aria-label="ADD" translate="STAFF.ADD_TELEPHONE" translate-attr-aria-label="STAFF.ADD_TELEPHONE">\n                    ADD TELEPHONE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTelephone" ng-click="vm.deleteTelephone($event)" aria-label="DELETE" translate translate-attr-aria-label="STAFF.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="STAFF.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/telephones/edit/changepassword/changepassword.html",'<md-dialog class="telephone-dialog" aria-label="{{vm.name}}">\n    <form name="telephoneForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ \'STAFF.CHANGE_PASSWORD\' | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.NEW_PASSWORD">New Password</label>\n                <input type="password" name="password" ng-model="vm.password" placeholder="Password" translate translate-attr-placeholder="STAFF.NEW_PASSWORD" required>\n                <div ng-messages="telephoneForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="telephoneForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.savePassword()" class="send-button md-accent md-raised" ng-disabled="telephoneForm.$invalid || telephoneForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/telephones/edit/view.html",'<div id="staff-telephone" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-telephones-button md-icon-button" aria-label="Go to telephones" ng-click="vm.gotoTelephones()" translate translate-attr-aria-label="STAFF.GO_TO_TELEPHONES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.telephone.userpic" class="telephone-image" hide-xs>\n                    <img ng-src="api/users/{{vm.telephone.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.telephone.userpic" class="telephone-image" hide-xs>\n                    <img ng-src="assets/images/business/telephones.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.telephone.id}} {{vm.telephone.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="STAFF.CREATED_AT"></span> <span>{{vm.telephone.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.changepassworddialog(vm.telephone, $event)" class="md-fab md-warn md-icon-button" aria-label="changepassword">\n                <md-tooltip><span translate="STAFF.CHANGEPASSWORD_TELEPHONE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-key-variant"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveTelephone()" class="send-button md-accent md-raised" ng-disabled="(accountForm.$invalid) || (generalForm.$invalid)" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="telephone-detail-form-container account md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.ACCOUNT">ACCOUNT</div>\n                        </div>\n                        <form name="accountForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ACCOUNTNAME">Accountname</label>\n                                <input type="text" name="fullname" ng-model="vm.telephone.fullname" required autofocus>\n                                <div ng-messages="accountForm.fullname.$error" ng-show="accountForm.fullname.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ACCOUNTNAME_REQUIRED">Accountname field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.USERNAME">Username</label>\n                                <input type="text" name="name" ng-model="vm.telephone.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="true">\n                                <div ng-messages="accountForm.name.$error" ng-show="accountForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.telephone.email" required>\n                                <div ng-messages="accountForm.email.$error" ng-show="accountForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.telephone.description">\n                                <div ng-messages="accountForm.description.$error" ng-show="accountForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.VOICE">VOICE</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="telephone-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container ng-if="!vm.telephone.autointernal" class="md-block">\n                                <label translate="STAFF.INTERNAL">Internal</label>\n                                <input type="text" name="internal" ng-model="vm.telephone.internal" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.internal.$error" ng-show="generalForm.internal.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.TRANSPORT">Transport</label>\n                                <md-select ng-model="vm.telephone.transport" required multiple>\n                                    <md-option ng-value="\'udp\'">udp</md-option>\n                                    <md-option ng-value="\'tcp\'">tcp</md-option>\n                                    <md-option ng-value="\'ws\'">ws</md-option>\n                                    <md-option ng-value="\'wss\'">wss</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.TRANSPORT"></span></div>\n                                <div ng-messages="generalForm.transport.$error" ng-show="generalForm.transport.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.TRANSPORT_REQUIRED">Transport field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.NAT">NAT</label>\n                                <md-select ng-model="vm.telephone.nat" required multiple>\n                                    <md-option ng-value="\'force_rport\'">force_rport</md-option>\n                                    <md-option ng-value="\'comedia\'">comedia</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'never\'">never</md-option>\n                                    <md-option ng-value="\'route\'">route</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.NAT"></span></div>\n                                <div ng-messages="generalForm.nat.$error" ng-show="generalForm.nat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.NAT_REQUIRED">NAT field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ALLOWCODECS">AllowCodecs</label>\n                                <md-select ng-model="vm.telephone.allow" required multiple>\n                                    <md-option ng-value="\'alaw\'">alaw</md-option>\n                                    <md-option ng-value="\'ulaw\'">ulaw</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                    <md-option ng-value="\'g729\'">g729</md-option>\n                                    <md-option ng-value="\'ilbc\'">ilbc</md-option>\n                                    <md-option ng-value="\'opus\'">opus</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.ALLOWCODECS"></span></div>\n                                <div ng-messages="generalForm.allow.$error" ng-show="generalForm.allow.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ALLOWCODECS_REQUIRED">AllowCodecs field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLERID">CallerId</label>\n                                <input type="text" name="callerid" ng-model="vm.telephone.callerid">\n                                <div ng-messages="generalForm.callerid.$error" ng-show="generalForm.callerid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLERID_REQUIRED">CallerId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLGROUP">Callgroup</label>\n                                <input type="text" name="callgroup" ng-model="vm.telephone.callgroup">\n                                <div class="hint"><span translate="STAFF.HELP.CALLGROUP"></span></div>\n                                <div ng-messages="generalForm.callgroup.$error" ng-show="generalForm.callgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLGROUP_REQUIRED">Callgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.PICKUPGROUP">Pickupgroup</label>\n                                <input type="text" name="pickupgroup" ng-model="vm.telephone.pickupgroup">\n                                <div class="hint"><span translate="STAFF.HELP.PICKUPGROUP"></span></div>\n                                <div ng-messages="generalForm.pickupgroup.$error" ng-show="generalForm.pickupgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.PICKUPGROUP_REQUIRED">Pickupgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/staff/views/telephones/telephones.html",'<div id="telephones" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-multiple" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="STAFF.TELEPHONES">Telephones</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="STAFF.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTelephones.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTelephones =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="STAFF.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-telephones-count">\n                    <span>{{vm.selectedTelephones.length}}</span>\n                <span translate="STAFF.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TELEPHONES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTelephones()" translate="STAFF.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTelephones()" translate="STAFF.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTelephones" filename="telephones.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTelephones($event)" aria-label="delete selected" translate translate-attr-label="TELEPHONES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TELEPHONE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTelephones" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTelephones">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="fullname">{{ \'STAFF.ACCOUNTNAME\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'STAFF.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="email">{{ \'STAFF.EMAIL\' | translate }}</th>\n                                <th md-column md-order-by="internal">{{ \'STAFF.INTERNAL\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.telephones.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="STAFF.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="telephone" md-select-id="id" ng-repeat="telephone in vm.telephones.rows">\n                                <td md-cell ng-if="telephone.userpic"><img class="avatar" alt="{{telephone.name}}" ng-src="api/users/{{telephone.id}}/avatar" /></td>\n                                <td md-cell ng-if="!telephone.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{telephone.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTelephone($event, telephone)" md-cell class="fullname font-weight-600">{{telephone.fullname}}</td>\n                                <td ng-click="vm.createOrEditTelephone($event, telephone)" md-cell class="name ">{{telephone.name}}</td>\n                                <td ng-click="vm.createOrEditTelephone($event, telephone)" md-cell class="email ">{{telephone.email}}</td>\n                                <td ng-click="vm.createOrEditTelephone($event, telephone)" md-cell class="internal ">{{telephone.internal}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(telephone, $event)" translate="STAFF.EDIT_TELEPHONE">\n                                                    Edit Telephone\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(telephone, $event)" translate="STAFF.DELETE_TELEPHONE">\n                                                    Delete Telephone\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.telephones.count}}" md-on-paginate="vm.getTelephones" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TELEPHONE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TELEPHONE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-telephone-button" ng-click="vm.createOrEditTelephone($event)" aria-label="add telephone" translate translate-attr-aria-label="STAFF.ADD_TELEPHONE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TELEPHONE BUTTON --\x3e\n</div>'),e.put("app/main/apps/staff/views/users/create/dialog.html",'<md-dialog class="user-dialog" aria-label="New User">\n    <form name="userForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.ROLE">Role</label>\n                <md-select ng-model="vm.user.role" required autofocus ng-disabled="!vm.newUser">\n                    <md-option ng-value="\'admin\'">Admin</md-option>\n                    <md-option ng-value="\'user\'">User</md-option>\n                </md-select>\n                <div ng-messages="userForm.role.$error" ng-show="userForm.role.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.ROLE_REQUIRED">Role field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.FULLNAME">Fullname</label>\n                <input type="text" name="fullname" ng-model="vm.user.fullname" required>\n                <div ng-messages="userForm.fullname.$error" ng-show="userForm.fullname.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.FULLNAME_REQUIRED">Fullname field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.USERNAME">Username</label>\n                <input type="text" name="name" ng-model="vm.user.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="!vm.newUser">\n                <div ng-messages="userForm.name.$error" ng-show="userForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.user.email" required>\n                <div ng-messages="userForm.email.$error" ng-show="userForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newUser">\n                <label translate="STAFF.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.user.password" placeholder="Password" translate translate-attr-placeholder="STAFF.PASSWORD" required>\n                <div ng-messages="userForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newUser  && vm.newUser">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="userForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.user.description">\n                <div ng-messages="userForm.description.$error" ng-show="userForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newUser" class="md-block">\n                <md-switch ng-model="vm.user.autointernal" aria-label="AutoInternal"><span translate="STAFF.AUTOINTERNAL">AutoInternal</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="!vm.user.autointernal" class="md-block">\n                <label translate="STAFF.INTERNAL">Internal</label>\n                <input type="text" name="internal" ng-model="vm.user.internal" required ng-disabled="!vm.newUser">\n                <div ng-messages="userForm.internal.$error" ng-show="userForm.internal.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newUser" class="md-block">\n                <md-switch ng-model="vm.user.voicemail" aria-label="Voicemail"><span translate="STAFF.VOICEMAIL">Voicemail</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newUser" ng-click="vm.saveUser()" class="send-button md-accent md-raised" ng-disabled="userForm.$invalid || userForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newUser" ng-click="vm.addNewUser()" class="send-button md-accent md-raised" ng-disabled="userForm.$invalid" aria-label="ADD" translate="STAFF.ADD_USER" translate-attr-aria-label="STAFF.ADD_USER">\n                    ADD USER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newUser" ng-click="vm.deleteUser($event)" aria-label="DELETE" translate translate-attr-aria-label="STAFF.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="STAFF.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/users/edit/changepassword/changepassword.html",'<md-dialog class="user-dialog" aria-label="{{vm.name}}">\n    <form name="userForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ \'STAFF.CHANGE_PASSWORD\' | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.NEW_PASSWORD">New Password</label>\n                <input type="password" name="password" ng-model="vm.password" placeholder="Password" translate translate-attr-placeholder="STAFF.NEW_PASSWORD" required>\n                <div ng-messages="userForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="userForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.savePassword()" class="send-button md-accent md-raised" ng-disabled="userForm.$invalid || userForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/users/edit/queueadd/queueadd.html",'<md-dialog class="user-dialog" aria-label="user">\n    <form name="userForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2>{{vm.title}}</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin" ng-if="vm.user.role === \'agent\'">\n                <label translate="STAFF.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="userForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/users/edit/view.html",'<div id="staff-user" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-users-button md-icon-button" aria-label="Go to users" ng-click="vm.gotoUsers()" translate translate-attr-aria-label="STAFF.GO_TO_USERS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.user.userpic" class="user-image" hide-xs>\n                    <img ng-src="api/users/{{vm.user.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.user.userpic" class="user-image" hide-xs>\n                    <img ng-src="assets/images/business/users.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.user.id}} {{vm.user.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="STAFF.CREATED_AT"></span> <span>{{vm.user.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div ng-cloak ng-if="vm.user.role !== \'admin\'">\n            <md-fab-speed-dial md-direction="left" class="md-scale md-fab">\n                <md-fab-trigger>\n                    <md-button aria-label="menu" class="md-fab md-primary md-icon-button">\n                        <md-tooltip md-direction="top" md-visible="false">Channels</md-tooltip>\n                        <md-icon md-font-icon="icon-eye" aria-label="queueadd"></md-icon>\n                    </md-button>\n                </md-fab-trigger>\n                <md-fab-actions>\n                    <md-button aria-label="voice" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'voice\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Voice</md-tooltip>\n                        <md-icon md-font-icon="icon-phone" aria-label="voice"></md-icon>\n                    </md-button>\n                    <md-button aria-label="chat" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'chat\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Chat</md-tooltip>\n                        <md-icon md-font-icon="icon-hangouts" aria-label="chat"></md-icon>\n                    </md-button>\n                    <md-button aria-label="mail" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'mail\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Mail</md-tooltip>\n                        <md-icon md-font-icon="icon-email" aria-label="mail"></md-icon>\n                    </md-button>\n                    <md-button aria-label="sms" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'sms\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Sms</md-tooltip>\n                        <md-icon md-font-icon="icon-message-text" aria-label="sms"></md-icon>\n                    </md-button>\n                    <md-button aria-label="openchannel" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'openchannel\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Openchannel</md-tooltip>\n                        <md-icon md-font-icon="icon-google-earth" aria-label="openchannel"></md-icon>\n                    </md-button>\n                    <md-button aria-label="fax" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'fax\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Fax</md-tooltip>\n                        <md-icon md-font-icon="icon-deskphone" aria-label="fax"></md-icon>\n                    </md-button>\n                </md-fab-actions>\n            </md-fab-speed-dial>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.changepassworddialog(vm.user, $event)" class="md-fab md-warn md-icon-button" aria-label="changepassword">\n                <md-tooltip><span translate="STAFF.CHANGEPASSWORD_USER"></span></md-tooltip>\n                <md-icon md-font-icon="icon-key-variant"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveUser()" class="send-button md-accent md-raised" ng-disabled="(personal_infoForm.$invalid) || (change_avatarForm.$invalid) || (generalForm.$invalid) || (permissionsForm.$invalid)" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="user-detail-form-container personal_info md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.PERSONAL_INFO">PERSONAL_INFO</div>\n                        </div>\n                        <form name="personal_infoForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ROLE">Role</label>\n                                <md-select ng-model="vm.user.role" required autofocus ng-disabled="true">\n                                    <md-option ng-value="\'admin\'">Admin</md-option>\n                                    <md-option ng-value="\'user\'">User</md-option>\n                                </md-select>\n                                <div ng-messages="personal_infoForm.role.$error" ng-show="personal_infoForm.role.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ROLE_REQUIRED">Role field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.FULLNAME">Fullname</label>\n                                <input type="text" name="fullname" ng-model="vm.user.fullname" required>\n                                <div ng-messages="personal_infoForm.fullname.$error" ng-show="personal_infoForm.fullname.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.FULLNAME_REQUIRED">Fullname field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.USERNAME">Username</label>\n                                <input type="text" name="name" ng-model="vm.user.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="true">\n                                <div ng-messages="personal_infoForm.name.$error" ng-show="personal_infoForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.user.email" required>\n                                <div ng-messages="personal_infoForm.email.$error" ng-show="personal_infoForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.user.description">\n                                <div ng-messages="personal_infoForm.description.$error" ng-show="personal_infoForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="user-detail-form-container change_avatar md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.CHANGE_AVATAR">CHANGE_AVATAR</div>\n                        </div>\n                        <div ng-controller="Userchange_avatarController as vm_ca" ng-init="vm_ca.init(vm.user)" class="user-detail-form-container md-background-bg md-whiteframe-1dp">\n\n                            <div id="user-image-uploader" flow-init="vm_ca.ngFlowOptions" flow-name="vm_ca.ngFlow.flow" flow-files-submitted="vm_ca.upload()" flow-file-added="vm_ca.fileAdded($file)" flow-file-success="vm_ca.fileSuccess($file, $message)" flow-complete="vm_ca.uploadComplete()"\n                                flow-drop flow-drag-enter="vm_ca.dropping=true" flow-drag-leave="vm_ca.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                                <div class="drop-text hint-text" layout="row" layout-align="center center">\n                                    <span translate="EC.DROP_TO_UPLOAD">Drop to upload</span>\n                                </div>\n\n                                <div class="upload-button" layout="column" layout-align="center center">\n                                    <md-button class="md-accent md-raised" flow-btn>\n                                        Upload\n                                    </md-button>\n                                    <span class="secondary-text mt-8">You can also drop images here to upload. Only PNG, JPG - Max. 8MB</span>\n                                </div>\n\n                                <div layout="row" layout-align="start start" layout-wrap>\n                                    <div ng-repeat="change_avatarimage in vm_ca.user.images" ng-switch="change_avatarimage.type">\n                                        <div class="user-image uploading" ng-switch-when="uploading" layout="row" layout-align="center center">\n                                            <div class="overlay" layout="column" layout-align="center center">\n                                                <md-progress-linear md-mode="determinate" value="{{change_avatarimage.file.progress() * 100}}">\n                                                </md-progress-linear>\n                                            </div>\n                                            <img class="media" flow-img="change_avatarimage.file">\n                                        </div>\n\n                                        <div class="user-image" ng-switch-when="image" layout="row" layout-align="center center">\n                                            <img class="media" ng-src="{{change_avatarimage.url}}">\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.VOICE">VOICE</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="user-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container ng-if="!vm.user.autointernal" class="md-block">\n                                <label translate="STAFF.INTERNAL">Internal</label>\n                                <input type="text" name="internal" ng-model="vm.user.internal" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.internal.$error" ng-show="generalForm.internal.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.TRANSPORT">Transport</label>\n                                <md-select ng-model="vm.user.transport" required multiple>\n                                    <md-option ng-value="\'udp\'">udp</md-option>\n                                    <md-option ng-value="\'tcp\'">tcp</md-option>\n                                    <md-option ng-value="\'ws\'">ws</md-option>\n                                    <md-option ng-value="\'wss\'">wss</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.transport.$error" ng-show="generalForm.transport.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.TRANSPORT_REQUIRED">Transport field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.NAT">NAT</label>\n                                <md-select ng-model="vm.user.nat" required multiple>\n                                    <md-option ng-value="\'force_rport\'">force_rport</md-option>\n                                    <md-option ng-value="\'comedia\'">comedia</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'never\'">never</md-option>\n                                    <md-option ng-value="\'route\'">route</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.NAT"></span></div>\n                                <div ng-messages="generalForm.nat.$error" ng-show="generalForm.nat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.NAT_REQUIRED">NAT field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ALLOWCODECS">AllowCodecs</label>\n                                <md-select ng-model="vm.user.allow" required multiple>\n                                    <md-option ng-value="\'alaw\'">alaw</md-option>\n                                    <md-option ng-value="\'ulaw\'">ulaw</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                    <md-option ng-value="\'g729\'">g729</md-option>\n                                    <md-option ng-value="\'ilbc\'">ilbc</md-option>\n                                    <md-option ng-value="\'opus\'">opus</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.ALLOWCODECS"></span></div>\n                                <div ng-messages="generalForm.allow.$error" ng-show="generalForm.allow.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ALLOWCODECS_REQUIRED">AllowCodecs field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLERID">CallerId</label>\n                                <input type="text" name="callerid" ng-model="vm.user.callerid">\n                                <div ng-messages="generalForm.callerid.$error" ng-show="generalForm.callerid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLERID_REQUIRED">CallerId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLGROUP">Callgroup</label>\n                                <input type="text" name="callgroup" ng-model="vm.user.callgroup">\n                                <div class="hint"><span translate="STAFF.HELP.CALLGROUP"></span></div>\n                                <div ng-messages="generalForm.callgroup.$error" ng-show="generalForm.callgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLGROUP_REQUIRED">Callgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.PICKUPGROUP">Pickupgroup</label>\n                                <input type="text" name="pickupgroup" ng-model="vm.user.pickupgroup">\n                                <div class="hint"><span translate="STAFF.HELP.PICKUPGROUP"></span></div>\n                                <div ng-messages="generalForm.pickupgroup.$error" ng-show="generalForm.pickupgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.PICKUPGROUP_REQUIRED">Pickupgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.PERMISSIONS">PERMISSIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="user-detail-form-container permissions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.PERMISSIONS">PERMISSIONS</div>\n                        </div>\n                        <div ng-controller="UserPermissionsController as vm_pc" ng-init="vm_pc.init(vm.user)" class="user-detail-form-container">\n                            <md-list ng-repeat="father in vm_pc.navigation[0].children" ng-include="\'permission-nested.html\'" ng-if="vm_pc.user.role !== \'admin\'"></md-list>\n\n                            \x3c!-- Nested navigation template --\x3e\n                            <script type="text/ng-template" id="permission-nested.html">\n                                <md-list-item>\n                                    <md-icon md-font-icon="{{father.icon}}"></md-icon>\n                                    <p translate="{{father.translate}}">{{ father.title }}</p>\n                                    <md-switch class="md-secondary" ng-model="father.enabled" ng-change="vm_pc.onChange(father)" ng-init="father.enabled = vm_pc.user.permissions.includes(father.id)"></md-switch>\n                                </md-list-item>\n\n                                <md-divider></md-divider>\n\n                                <md-list>\n                                    <md-list-item ng-repeat="child in father.children">\n                                        <md-switch class="md-secondary" ng-model="child.enabled" ng-change="vm_pc.onChange(father, child)" ng-init="child.enabled = vm_pc.user.permissions.includes(child.id)"></md-switch>\n                                        <p translate="{{child.translate}}">{{ child.title }}</p>\n                                    </md-list-item>\n                                </md-list>\n                            <\/script>\n                            \x3c!-- / Nested navigation template --\x3e\n\n                            <span ng-if="vm_pc.user.role === \'admin\'" class="md-headline" translate="STAFF.ALL_MODULES_AVAILABLE">All modules are already available.</span>\n\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/staff/views/users/users.html",'<div id="users" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-multiple" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="STAFF.USERS">Users</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="STAFF.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedUsers.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedUsers =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="STAFF.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-users-count">\n                    <span>{{vm.selectedUsers.length}}</span>\n                <span translate="STAFF.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="USERS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllUsers()" translate="STAFF.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectUsers()" translate="STAFF.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedUsers" filename="users.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedUsers($event)" aria-label="delete selected" translate translate-attr-label="USERS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- USER TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedUsers" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getUsers">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="role">{{ \'STAFF.ROLE\' | translate }}</th>\n                                <th md-column md-order-by="fullname">{{ \'STAFF.FULLNAME\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'STAFF.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="email">{{ \'STAFF.EMAIL\' | translate }}</th>\n                                <th md-column md-order-by="internal">{{ \'STAFF.INTERNAL\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.users.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="STAFF.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="user" md-select-id="id" ng-repeat="user in vm.users.rows">\n                                <td md-cell ng-if="user.userpic"><img class="avatar" alt="{{user.name}}" ng-src="api/users/{{user.id}}/avatar" /></td>\n                                <td md-cell ng-if="!user.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{user.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="role ">{{ vm.arrayrole[user.role].option }}</td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="fullname font-weight-600">{{user.fullname}}</td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="name ">{{user.name}}</td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="email ">{{user.email}}</td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="internal ">{{user.internal}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(user, $event)" translate="STAFF.EDIT_USER">\n                                                    Edit User\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(user, $event)" translate="STAFF.DELETE_USER">\n                                                    Delete User\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.users.count}}" md-on-paginate="vm.getUsers" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / USER TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD USER BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-user-button" ng-click="vm.createOrEditUser($event)" aria-label="add user" translate translate-attr-aria-label="STAFF.ADD_USER">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD USER BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/cannedAnswers/cannedAnswers.html",'<div id="cannedAnswers" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.CANNEDANSWERS">CannedAnswers</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedCannedAnswers.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedCannedAnswers =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-cannedAnswers-count">\n                    <span>{{vm.selectedCannedAnswers.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CANNEDANSWERS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllCannedAnswers()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectCannedAnswers()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedCannedAnswers" filename="cannedAnswers.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedCannedAnswers($event)" aria-label="delete selected" translate translate-attr-label="CANNEDANSWERS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CANNEDANSWER TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedCannedAnswers" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getCannedAnswers">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="key">{{ \'TOOLS.KEY\' | translate }}</th>\n                                <th md-column md-order-by="value">{{ \'TOOLS.VALUE\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.cannedAnswers.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="cannedAnswer" md-select-id="id" ng-repeat="cannedAnswer in vm.cannedAnswers.rows">\n                                <td md-cell ng-if="cannedAnswer.userpic"><img class="avatar" alt="{{cannedAnswer.name}}" ng-src="api/users/{{cannedAnswer.id}}/avatar" /></td>\n                                <td md-cell ng-if="!cannedAnswer.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{cannedAnswer.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditCannedAnswer($event, cannedAnswer)" md-cell class="id ">{{cannedAnswer.id}}</td>\n                                <td ng-click="vm.createOrEditCannedAnswer($event, cannedAnswer)" md-cell class="key ">{{cannedAnswer.key}}</td>\n                                <td ng-click="vm.createOrEditCannedAnswer($event, cannedAnswer)" md-cell class="value ">{{cannedAnswer.value}}</td>\n                                <td ng-click="vm.createOrEditCannedAnswer($event, cannedAnswer)" md-cell class="description ">{{cannedAnswer.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(cannedAnswer, $event)" translate="TOOLS.EDIT_CANNEDANSWER">\n                                                    Edit CannedAnswer\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(cannedAnswer, $event)" translate="TOOLS.DELETE_CANNEDANSWER">\n                                                    Delete CannedAnswer\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.cannedAnswers.count}}" md-on-paginate="vm.getCannedAnswers" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CANNEDANSWER TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CANNEDANSWER BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-cannedAnswer-button" ng-click="vm.createOrEditCannedAnswer($event)" aria-label="add cannedAnswer" translate translate-attr-aria-label="TOOLS.ADD_CANNEDANSWER">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CANNEDANSWER BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/cannedAnswers/create/dialog.html",'<md-dialog class="cannedAnswer-dialog" aria-label="New CannedAnswer">\n    <form name="cannedAnswerForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.KEY">Key</label>\n                <input type="text" name="key" ng-model="vm.cannedAnswer.key" required autofocus>\n                <div ng-messages="cannedAnswerForm.key.$error" ng-show="cannedAnswerForm.key.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.VALUE">Value</label>\n                <textarea ng-model="vm.cannedAnswer.value" md-maxlength="150" max-rows="5" required></textarea>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.cannedAnswer.description">\n                <div ng-messages="cannedAnswerForm.description.$error" ng-show="cannedAnswerForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCannedAnswer" ng-click="vm.saveCannedAnswer()" class="send-button md-accent md-raised" ng-disabled="cannedAnswerForm.$invalid || cannedAnswerForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCannedAnswer" ng-click="vm.addNewCannedAnswer()" class="send-button md-accent md-raised" ng-disabled="cannedAnswerForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_CANNEDANSWER" translate-attr-aria-label="TOOLS.ADD_CANNEDANSWER">\n                    ADD CANNEDANSWER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCannedAnswer" ng-click="vm.deleteCannedAnswer($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/customDashboards/create/dialog.html",'<md-dialog class="customDashboard-dialog" aria-label="New CustomDashboard">\n    <form name="customDashboardForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.customDashboard.name" required autofocus>\n                <div ng-messages="customDashboardForm.name.$error" ng-show="customDashboardForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.POLLING_INTERVAL">Polling_Interval</label>\n                <input type="number" name="interval" ng-model="vm.customDashboard.interval" min="5" required>\n                <div ng-messages="customDashboardForm.interval.$error" ng-show="customDashboardForm.interval.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.POLLING_INTERVAL_REQUIRED">Polling_Interval field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.customDashboard.description">\n                <div ng-messages="customDashboardForm.description.$error" ng-show="customDashboardForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCustomDashboard" ng-click="vm.saveCustomDashboard()" class="send-button md-accent md-raised" ng-disabled="customDashboardForm.$invalid || customDashboardForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCustomDashboard" ng-click="vm.addNewCustomDashboard()" class="send-button md-accent md-raised" ng-disabled="customDashboardForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_CUSTOMDASHBOARD" translate-attr-aria-label="TOOLS.ADD_CUSTOMDASHBOARD">\n                    ADD CUSTOMDASHBOARD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCustomDashboard" ng-click="vm.deleteCustomDashboard($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/customDashboards/customDashboards.html",'<div id="customDashboards" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.CUSTOMDASHBOARDS">CustomDashboards</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedCustomDashboards.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedCustomDashboards =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-customDashboards-count">\n                    <span>{{vm.selectedCustomDashboards.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CUSTOMDASHBOARDS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllCustomDashboards()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectCustomDashboards()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedCustomDashboards" filename="customDashboards.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedCustomDashboards($event)" aria-label="delete selected" translate translate-attr-label="CUSTOMDASHBOARDS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CUSTOMDASHBOARD TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedCustomDashboards" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getCustomDashboards">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="interval">{{ \'TOOLS.POLLING_INTERVAL\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.customDashboards.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="customDashboard" md-select-id="id" ng-repeat="customDashboard in vm.customDashboards.rows">\n                                <td md-cell ng-if="customDashboard.userpic"><img class="avatar" alt="{{customDashboard.name}}" ng-src="api/users/{{customDashboard.id}}/avatar" /></td>\n                                <td md-cell ng-if="!customDashboard.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{customDashboard.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditCustomDashboard($event, customDashboard)" md-cell class="id ">{{customDashboard.id}}</td>\n                                <td ng-click="vm.createOrEditCustomDashboard($event, customDashboard)" md-cell class="name ">{{customDashboard.name}}</td>\n                                <td ng-click="vm.createOrEditCustomDashboard($event, customDashboard)" md-cell class="interval ">{{customDashboard.interval}}</td>\n                                <td ng-click="vm.createOrEditCustomDashboard($event, customDashboard)" md-cell class="description ">{{customDashboard.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(customDashboard, $event)" translate="TOOLS.EDIT_CUSTOMDASHBOARD">\n                                                    Edit CustomDashboard\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(customDashboard, $event)" translate="TOOLS.DELETE_CUSTOMDASHBOARD">\n                                                    Delete CustomDashboard\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.customDashboards.count}}" md-on-paginate="vm.getCustomDashboards" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CUSTOMDASHBOARD TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CUSTOMDASHBOARD BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-customDashboard-button" ng-click="vm.createOrEditCustomDashboard($event)" aria-label="add customDashboard" translate translate-attr-aria-label="TOOLS.ADD_CUSTOMDASHBOARD">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CUSTOMDASHBOARD BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/customDashboards/edit/dashboard/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.dashboarditem.type" autofocus>\n\n                    <md-option ng-value="\'counter\'"> {{ \'TOOLS.COUNTER\' | translate }}</md-option>\n\n                    <md-option ng-value="\'iframe\'"> {{ \'TOOLS.IFRAME\' | translate }}</md-option>\n\n                    <md-option ng-value="\'clock\'"> {{ \'TOOLS.CLOCK\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="dashboarditemForm.type.$error" ng-show="dashboarditemForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newDashboardItem" ng-click="vm.saveDashboardItem()" class="send-button md-accent md-raised" ng-disabled="dashboarditemForm.$invalid || dashboarditemForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newDashboardItem" ng-click="vm.addNewDashboardItem()" class="send-button md-accent md-raised" ng-disabled="dashboarditemForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_DASHBOARDITEM" translate-attr-aria-label="TOOLS.ADD_DASHBOARDITEM">\n                    ADD DASHBOARDITEM\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newDashboardItem" ng-click="vm.deleteDashboardItem($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/customDashboards/edit/view.html",'<div id="tools-customDashboard" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-customDashboards-button md-icon-button" aria-label="Go to customDashboards" ng-click="vm.gotoCustomDashboards()" translate translate-attr-aria-label="TOOLS.GO_TO_CUSTOMDASHBOARDS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.customDashboard.userpic" class="customDashboard-image" hide-xs>\n                    <img ng-src="api/users/{{vm.customDashboard.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.customDashboard.userpic" class="customDashboard-image" hide-xs>\n                    <img ng-src="assets/images/business/customDashboards.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.customDashboard.id}} {{vm.customDashboard.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.customDashboard.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveCustomDashboard()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (dashboardForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="customDashboard-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.customDashboard.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.POLLING_INTERVAL">Polling_Interval</label>\n                                <input type="number" name="interval" ng-model="vm.customDashboard.interval" min="5" required>\n                                <div ng-messages="generalForm.interval.$error" ng-show="generalForm.interval.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.POLLING_INTERVAL_REQUIRED">Polling_Interval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.customDashboard.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.DASHBOARD">DASHBOARD</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="customDashboard-detail-form-container dashboard md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="CustomDashboardCustomDashboardController as vm_cd" ng-init="vm_cd.init(vm.customDashboard)" class="customDashboard-detail-form-container">\n                            <div layout="row" layout-align="end center">\n                                <md-button class="md-icon-button" ng-click="vm_cd.addItem()">\n                                    <md-icon md-font-icon="icon-plus"></md-icon>\n                                </md-button>\n                            </div>\n                            <div gridster="vm_cd.gridOptions">\n                                <div gridster-item="item" ng-repeat="item in vm_cd.items.rows" ng-switch="item.type">\n                                    <ms-dash-counter ng-switch-when="counter" options="item" on-delete-item="vm_cd.deleteItem(id)"></ms-dash-counter>\n                                    \x3c!-- <ms-dash-table ng-switch-when="table" options="item" on-delete-item="vm_cd.deleteItem(id)"></ms-dash-table> --\x3e\n                                    <ms-dash-iframe ng-switch-when="iframe" options="item" on-delete-item="vm_cd.deleteItem(id)"></ms-dash-iframe>\n                                    <ms-dash-clock ng-switch-when="clock" options="item" on-delete-item="vm_cd.deleteItem(id)"></ms-dash-clock>\n                                </div>\n                            </div>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/intervals/create/dialog.html",'<md-dialog class="interval-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.interval.name" required autofocus>\n                <div ng-messages="intervalForm.name.$error" ng-show="intervalForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.interval.description">\n                <div ng-messages="intervalForm.description.$error" ng-show="intervalForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newInterval" ng-click="vm.deleteInterval($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/intervals/edit/apps/interval/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input ng-model="vm.interval.name" type="text" name="name" placeholder="{{\'TOOLS.NAME\' | translate}}" md-autofocus required>\n                <div ng-messages="intervalForm.name.$error" ng-show="intervalForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.type">\n                    <md-option ng-value="type" ng-repeat=\'type in vm.types\'>{{ type | ucfirst }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.type === \'list\'">\n                <label translate="TOOLS.INTERVALS">Intervals</label>\n                <md-select ng-model="vm.interval.IntervalId">\n                    <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            \x3c!-- TIMERANGE START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.TIME_RANGE">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n            \x3c!-- TIMERANGE END --\x3e\n\n            \x3c!-- DAYSOFWEEK START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.WEEK_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.dayOfWeekFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.dayOfWeekTo">\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- DAYSOFWEEK END --\x3e\n\n            \x3c!-- MONTHDAY START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTH_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthDayFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthDayTo">\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTHDAY END --\x3e\n\n            \x3c!-- MONTH START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTHS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthTo">\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTH END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/intervals/edit/intervals/dialog.html",'<md-dialog class="interval-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.interval.name" required autofocus>\n                <div ng-messages="intervalForm.name.$error" ng-show="intervalForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newInterval" ng-click="vm.deleteInterval($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/intervals/edit/view.html",'<div id="tools-interval" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-intervals-button md-icon-button" aria-label="Go to intervals" ng-click="vm.gotoIntervals()" translate translate-attr-aria-label="TOOLS.GO_TO_INTERVALS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.interval.userpic" class="interval-image" hide-xs>\n                    <img ng-src="api/users/{{vm.interval.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.interval.userpic" class="interval-image" hide-xs>\n                    <img ng-src="assets/images/business/intervals.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.interval.id}} {{vm.interval.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.interval.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (intervalsForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="interval-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.interval.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.interval.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.INTERVALS">INTERVALS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="interval-detail-form-container intervals md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IntervalIntervalsController as vm_dc" ng-init="vm_dc.init(vm.interval)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIntervalIntervals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="TOOLS.INTERVALS">Intervals</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditIntervalInterval($event)" aria-label="add interval" translate translate-attr-label="TOOLS.ADD_INTERVAL">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIntervalIntervals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIntervalIntervals.length}} {{vm_dc.selectedIntervalIntervals.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIntervalIntervals($event)" aria-label="delete selected" translate translate-attr-label="INTERVALS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIntervalIntervals" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIntervalIntervals">\n                                        <tr md-row>\n                                            <th md-column width="10px"></th>\n                                            <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="interval">{{ \'TOOLS.INTERVAL\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'TOOLS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body ng-sortable="vm_dc.sortableTable">\n                                        <tr md-row md-select="interval" md-select-id="id" ng-repeat="interval in vm_dc.intervalIntervals.rows">\n                                            <td md-cell>\n                                                <md-icon md-font-icon="icon-drag-vertical" class="s16 handle"></md-icon>\n                                            </td>\n                                            <td ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" md-cell>{{interval.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" md-cell>{{interval.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" md-cell>{{interval.interval}}</td>\n                                            <td ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" md-cell>{{interval.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" translate="TOOLS.EDIT_INTERVAL">\n                                                                Edit Interval\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(interval, $event)" translate="TOOLS.DELETE_INTERVAL">\n                                                                Delete Interval\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.intervalIntervals.rows.length">\n                                            <td md-cell colspan="7">\n                                                <span class="text-boxed-ligth" translate="TOOLS.NO_INTERVALS_AVAILABLE">No intervals available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/intervals/intervals.html",'<div id="intervals" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.INTERVALS">Intervals</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedIntervals.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedIntervals =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-intervals-count">\n                    <span>{{vm.selectedIntervals.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="INTERVALS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllIntervals()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectIntervals()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedIntervals" filename="intervals.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedIntervals($event)" aria-label="delete selected" translate translate-attr-label="INTERVALS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- INTERVAL TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedIntervals" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getIntervals">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.intervals.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="interval" md-select-id="id" ng-repeat="interval in vm.intervals.rows">\n                                <td md-cell ng-if="interval.userpic"><img class="avatar" alt="{{interval.name}}" ng-src="api/users/{{interval.id}}/avatar" /></td>\n                                <td md-cell ng-if="!interval.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{interval.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditInterval($event, interval)" md-cell class="id ">{{interval.id}}</td>\n                                <td ng-click="vm.createOrEditInterval($event, interval)" md-cell class="name ">{{interval.name}}</td>\n                                <td ng-click="vm.createOrEditInterval($event, interval)" md-cell class="description ">{{interval.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(interval, $event)" translate="TOOLS.EDIT_INTERVAL">\n                                                    Edit Interval\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(interval, $event)" translate="TOOLS.DELETE_INTERVAL">\n                                                    Delete Interval\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.intervals.count}}" md-on-paginate="vm.getIntervals" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / INTERVAL TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD INTERVAL BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-interval-button" ng-click="vm.createOrEditInterval($event)" aria-label="add interval" translate translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD INTERVAL BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/pauses/create/dialog.html",'<md-dialog class="pause-dialog" aria-label="New Pause">\n    <form name="pauseForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.pause.name" required autofocus>\n                <div ng-messages="pauseForm.name.$error" ng-show="pauseForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.pause.description">\n                <div ng-messages="pauseForm.description.$error" ng-show="pauseForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newPause" ng-click="vm.savePause()" class="send-button md-accent md-raised" ng-disabled="pauseForm.$invalid || pauseForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newPause" ng-click="vm.addNewPause()" class="send-button md-accent md-raised" ng-disabled="pauseForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_PAUSE" translate-attr-aria-label="TOOLS.ADD_PAUSE">\n                    ADD PAUSE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newPause" ng-click="vm.deletePause($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/pauses/pauses.html",'<div id="pauses" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.PAUSES">Pauses</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedPauses.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedPauses =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-pauses-count">\n                    <span>{{vm.selectedPauses.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="PAUSES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllPauses()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectPauses()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedPauses" filename="pauses.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedPauses($event)" aria-label="delete selected" translate translate-attr-label="PAUSES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- PAUSE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedPauses" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getPauses">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.pauses.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="pause" md-select-id="id" ng-repeat="pause in vm.pauses.rows">\n                                <td md-cell ng-if="pause.userpic"><img class="avatar" alt="{{pause.name}}" ng-src="api/users/{{pause.id}}/avatar" /></td>\n                                <td md-cell ng-if="!pause.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{pause.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditPause($event, pause)" md-cell class="id ">{{pause.id}}</td>\n                                <td ng-click="vm.createOrEditPause($event, pause)" md-cell class="name ">{{pause.name}}</td>\n                                <td ng-click="vm.createOrEditPause($event, pause)" md-cell class="description ">{{pause.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(pause, $event)" translate="TOOLS.EDIT_PAUSE">\n                                                    Edit Pause\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(pause, $event)" translate="TOOLS.DELETE_PAUSE">\n                                                    Delete Pause\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.pauses.count}}" md-on-paginate="vm.getPauses" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / PAUSE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD PAUSE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-pause-button" ng-click="vm.createOrEditPause($event)" aria-label="add pause" translate translate-attr-aria-label="TOOLS.ADD_PAUSE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD PAUSE BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/schedules/create/dialog.html",'<md-dialog class="schedule-dialog" aria-label="New Schedule">\n    <form name="scheduleForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.schedule.name" required autofocus>\n                <div ng-messages="scheduleForm.name.$error" ng-show="scheduleForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.schedule.type">\n                    <md-option ng-value="\'report\'">Report</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.type.$error" ng-show="scheduleForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.REPORTTYPE">ReportType</label>\n                <md-select ng-model="vm.schedule.reportType" required>\n                    <md-option ng-value="\'default\'">Default</md-option>\n                    <md-option ng-value="\'custom\'">Custom</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportType.$error" ng-show="scheduleForm.reportType.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REPORTTYPE_REQUIRED">ReportType field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.reportType == \'default\'" class="md-block">\n                <label translate="TOOLS.REPORT">Report</label>\n                <md-select ng-model="vm.schedule.reportId" required>\n                    <md-option ng-value="reportId.id" ng-repeat="reportId in vm.defaultReports">{{ reportId.name }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportId.$error" ng-show="scheduleForm.reportId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REPORT_REQUIRED">Report field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.reportType == \'custom\'" class="md-block">\n                <label translate="TOOLS.REPORT">Report</label>\n                <md-select ng-model="vm.schedule.reportId" required>\n                    <md-option ng-value="reportId.id" ng-repeat="reportId in vm.customReports">{{ reportId.name }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportId.$error" ng-show="scheduleForm.reportId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REPORT_REQUIRED">Report field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.OUTPUT">Output</label>\n                <md-select ng-model="vm.schedule.reportOutput" required>\n                    <md-option ng-value="\'CSV\'">CSV</md-option>\n                    <md-option ng-value="\'PDF\'">PDF</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportOutput.$error" ng-show="scheduleForm.reportOutput.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OUTPUT_REQUIRED">Output field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.EXECUTEON">ExecuteOn</label>\n                <md-select ng-model="vm.schedule.cronType" required>\n\n                    <md-option ng-value="\'currentDay\'"> {{ \'TOOLS.CURRENTDAY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'daily\'"> {{ \'TOOLS.DAILY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'weekly\'"> {{ \'TOOLS.WEEKLY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'monthly\'"> {{ \'TOOLS.MONTHLY\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.cronType.$error" ng-show="scheduleForm.cronType.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.EXECUTEON_REQUIRED">ExecuteOn field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                <label translate="TOOLS.VALIDITYSTART">ValidityStart</label>\n                <input type="number" name="validityStart" ng-model="vm.schedule.validityStart" min="0" max="24" required>\n                <div ng-messages="scheduleForm.validityStart.$error" ng-show="scheduleForm.validityStart.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.VALIDITYSTART_REQUIRED">ValidityStart field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                <label translate="TOOLS.VALIDITYEND">ValidityEnd</label>\n                <input type="number" name="validityEnd" ng-model="vm.schedule.validityEnd" min="0" max="24" required>\n                <div ng-messages="scheduleForm.validityEnd.$error" ng-show="scheduleForm.validityEnd.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.VALIDITYEND_REQUIRED">ValidityEnd field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                <label translate="TOOLS.EXECUTEEVERY">ExecuteEvery</label>\n                <md-select ng-model="vm.schedule.cron" required>\n\n                    <md-option ng-value="\'*/15 * * * *\'"> {{ \'TOOLS.15MIN\' | translate }}</md-option>\n\n                    <md-option ng-value="\'*/30 * * * *\'"> {{ \'TOOLS.30MIN\' | translate }}</md-option>\n\n                    <md-option ng-value="\'0 * * * *\'"> {{ \'TOOLS.1H\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.cron.$error" ng-show="scheduleForm.cron.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.EXECUTEEVERY_REQUIRED">ExecuteEvery field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'weekly\'" class="md-block">\n                <label translate="TOOLS.WEEKDAYS">WeekDays</label>\n                <md-select ng-model="vm.schedule.weekDays" required multiple>\n\n                    <md-option ng-value="\'monday\'"> {{ \'TOOLS.MON\' | translate }}</md-option>\n\n                    <md-option ng-value="\'tuesday\'"> {{ \'TOOLS.TUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'wednesday\'"> {{ \'TOOLS.WED\' | translate }}</md-option>\n\n                    <md-option ng-value="\'thursday\'"> {{ \'TOOLS.THU\' | translate }}</md-option>\n\n                    <md-option ng-value="\'friday\'"> {{ \'TOOLS.FRI\' | translate }}</md-option>\n\n                    <md-option ng-value="\'saturday\'"> {{ \'TOOLS.SAT\' | translate }}</md-option>\n\n                    <md-option ng-value="\'sunday\'"> {{ \'TOOLS.SUN\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.weekDays.$error" ng-show="scheduleForm.weekDays.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.WEEKDAYS_REQUIRED">WeekDays field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'monthly\'" class="md-block">\n                <label translate="TOOLS.MONTHDAY">MonthDay</label>\n                <input type="number" name="monthDay" ng-model="vm.schedule.monthDay" min="1" max="31" required>\n                <div ng-messages="scheduleForm.monthDay.$error" ng-show="scheduleForm.monthDay.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.MONTHDAY_REQUIRED">MonthDay field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType != \'currentDay\'" class="md-block">\n                <label translate="TOOLS.HOUR">Hour</label>\n                <input type="number" name="hour" ng-model="vm.schedule.hour" min="0" max="23" required>\n                <div ng-messages="scheduleForm.hour.$error" ng-show="scheduleForm.hour.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.HOUR_REQUIRED">Hour field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType != \'currentDay\'" class="md-block">\n                <label translate="TOOLS.REPORTRANGE">ReportRange</label>\n                <md-select ng-model="vm.schedule.reportRange" required>\n\n                    <md-option ng-value="\'yesterday\'"> {{ \'TOOLS.PREVIOUS_DAY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'last7\'"> {{ \'TOOLS.LAST_SEVEN_DAYS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'last30\'"> {{ \'TOOLS.LAST_THIRTY_DAYS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'lastMonth\'"> {{ \'TOOLS.LAST_MONTH\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportRange.$error" ng-show="scheduleForm.reportRange.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REPORTRANGE_REQUIRED">ReportRange field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.schedule.sendMail" aria-label="SendMail"><span translate="TOOLS.SENDMAIL">SendMail</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.sendMail" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.schedule.MailServerOutId" required>\n                    <md-option ng-value="MailServerOutId.id" ng-repeat="MailServerOutId in vm.mailServerOut">{{ MailServerOutId.name }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.MailServerOutId.$error" ng-show="scheduleForm.MailServerOutId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.sendMail" class="md-block">\n                <label translate="TOOLS.EMAILADDRESS">EmailAddress</label>\n                <input type="email" name="email" ng-model="vm.schedule.email" required>\n                <div ng-messages="scheduleForm.email.$error" ng-show="scheduleForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.EMAILADDRESS_REQUIRED">EmailAddress field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="TOOLS.ERRORS.EMAILADDRESS_MUST_VALID">EmailAddress must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.schedule.active" aria-label="Active"><span translate="TOOLS.ACTIVE">Active</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="" name="description" ng-model="vm.schedule.description">\n                <div ng-messages="scheduleForm.description.$error" ng-show="scheduleForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSchedule" ng-click="vm.saveSchedule()" class="send-button md-accent md-raised" ng-disabled="scheduleForm.$invalid || scheduleForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSchedule" ng-click="vm.addNewSchedule()" class="send-button md-accent md-raised" ng-disabled="scheduleForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_SCHEDULE" translate-attr-aria-label="TOOLS.ADD_SCHEDULE">\n                    ADD SCHEDULE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSchedule" ng-click="vm.deleteSchedule($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/schedules/edit/view.html",'<div id="tools-schedule" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-schedules-button md-icon-button" aria-label="Go to schedules" ng-click="vm.gotoScheduler()" translate translate-attr-aria-label="TOOLS.GO_TO_SCHEDULER">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.schedule.userpic" class="schedule-image" hide-xs>\n                    <img ng-src="api/users/{{vm.schedule.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.schedule.userpic" class="schedule-image" hide-xs>\n                    <img ng-src="assets/images/business/schedules.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.schedule.id}} {{vm.schedule.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.schedule.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveSchedule()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (configurationForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="schedule-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.schedule.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.schedule.active" aria-label="Active"><span translate="TOOLS.ACTIVE">Active</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="" name="description" ng-model="vm.schedule.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.CONFIGURATION">CONFIGURATION</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="schedule-detail-form-container configuration md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.CONFIGURATION">CONFIGURATION</div>\n                        </div>\n                        <form name="configurationForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.REPORTTYPE">ReportType</label>\n                                <md-select ng-model="vm.schedule.reportType" required autofocus>\n                                    <md-option ng-value="\'default\'">Default</md-option>\n                                    <md-option ng-value="\'custom\'">Custom</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportType.$error" ng-show="configurationForm.reportType.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REPORTTYPE_REQUIRED">ReportType field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.reportType == \'default\'" class="md-block">\n                                <label translate="TOOLS.REPORT">Report</label>\n                                <md-select ng-model="vm.schedule.reportId" required>\n                                    <md-option ng-value="reportId.id" ng-repeat="reportId in vm.defaultReports">{{ reportId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportId.$error" ng-show="configurationForm.reportId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REPORT_REQUIRED">Report field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.reportType == \'custom\'" class="md-block">\n                                <label translate="TOOLS.REPORT">Report</label>\n                                <md-select ng-model="vm.schedule.reportId" required>\n                                    <md-option ng-value="reportId.id" ng-repeat="reportId in vm.customReports">{{ reportId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportId.$error" ng-show="configurationForm.reportId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REPORT_REQUIRED">Report field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.OUTPUT">Output</label>\n                                <md-select ng-model="vm.schedule.reportOutput" required>\n                                    <md-option ng-value="\'CSV\'">CSV</md-option>\n                                    <md-option ng-value="\'PDF\'">PDF</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportOutput.$error" ng-show="configurationForm.reportOutput.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.OUTPUT_REQUIRED">Output field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.EXECUTEON">ExecuteOn</label>\n                                <md-select ng-model="vm.schedule.cronType" required>\n\n                                    <md-option ng-value="\'currentDay\'"> {{ \'TOOLS.CURRENTDAY\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'daily\'"> {{ \'TOOLS.DAILY\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'weekly\'"> {{ \'TOOLS.WEEKLY\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'monthly\'"> {{ \'TOOLS.MONTHLY\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.cronType.$error" ng-show="configurationForm.cronType.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.EXECUTEON_REQUIRED">ExecuteOn field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.VALIDITYSTART">ValidityStart</label>\n                                <input type="number" name="validityStart" ng-model="vm.schedule.validityStart" min="0" max="24" required>\n                                <div ng-messages="configurationForm.validityStart.$error" ng-show="configurationForm.validityStart.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.VALIDITYSTART_REQUIRED">ValidityStart field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.VALIDITYEND">ValidityEnd</label>\n                                <input type="number" name="validityEnd" ng-model="vm.schedule.validityEnd" min="0" max="24" required>\n                                <div ng-messages="configurationForm.validityEnd.$error" ng-show="configurationForm.validityEnd.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.VALIDITYEND_REQUIRED">ValidityEnd field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.EXECUTEEVERY">ExecuteEvery</label>\n                                <md-select ng-model="vm.schedule.cron" required>\n\n                                    <md-option ng-value="\'*/15 * * * *\'"> {{ \'TOOLS.15MIN\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'*/30 * * * *\'"> {{ \'TOOLS.30MIN\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'0 * * * *\'"> {{ \'TOOLS.1H\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.cron.$error" ng-show="configurationForm.cron.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.EXECUTEEVERY_REQUIRED">ExecuteEvery field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'weekly\'" class="md-block">\n                                <label translate="TOOLS.WEEKDAYS">WeekDays</label>\n                                <md-select ng-model="vm.schedule.weekDays" required multiple>\n\n                                    <md-option ng-value="\'monday\'"> {{ \'TOOLS.MON\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'tuesday\'"> {{ \'TOOLS.TUE\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'wednesday\'"> {{ \'TOOLS.WED\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'thursday\'"> {{ \'TOOLS.THU\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'friday\'"> {{ \'TOOLS.FRI\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'saturday\'"> {{ \'TOOLS.SAT\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'sunday\'"> {{ \'TOOLS.SUN\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.weekDays.$error" ng-show="configurationForm.weekDays.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.WEEKDAYS_REQUIRED">WeekDays field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'monthly\'" class="md-block">\n                                <label translate="TOOLS.MONTHDAY">MonthDay</label>\n                                <input type="number" name="monthDay" ng-model="vm.schedule.monthDay" min="1" max="31" required>\n                                <div ng-messages="configurationForm.monthDay.$error" ng-show="configurationForm.monthDay.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.MONTHDAY_REQUIRED">MonthDay field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType != \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.HOUR">Hour</label>\n                                <input type="number" name="hour" ng-model="vm.schedule.hour" min="0" max="23" required>\n                                <div ng-messages="configurationForm.hour.$error" ng-show="configurationForm.hour.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.HOUR_REQUIRED">Hour field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType != \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.REPORTRANGE">ReportRange</label>\n                                <md-select ng-model="vm.schedule.reportRange" required>\n\n                                    <md-option ng-value="\'yesterday\'"> {{ \'TOOLS.PREVIOUS_DAY\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'last7\'"> {{ \'TOOLS.LAST_SEVEN_DAYS\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'last30\'"> {{ \'TOOLS.LAST_THIRTY_DAYS\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'lastMonth\'"> {{ \'TOOLS.LAST_MONTH\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportRange.$error" ng-show="configurationForm.reportRange.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REPORTRANGE_REQUIRED">ReportRange field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.schedule.sendMail" aria-label="SendMail"><span translate="TOOLS.SENDMAIL">SendMail</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.sendMail" class="md-block">\n                                <label translate="TOOLS.ACCOUNT">Account</label>\n                                <md-select ng-model="vm.schedule.MailServerOutId" required>\n                                    <md-option ng-value="MailServerOutId.id" ng-repeat="MailServerOutId in vm.mailServerOut">{{ MailServerOutId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.MailServerOutId.$error" ng-show="configurationForm.MailServerOutId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.sendMail" class="md-block">\n                                <label translate="TOOLS.EMAILADDRESS">EmailAddress</label>\n                                <input type="email" name="email" ng-model="vm.schedule.email" required>\n                                <div ng-messages="configurationForm.email.$error" ng-show="configurationForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.EMAILADDRESS_REQUIRED">EmailAddress field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="TOOLS.ERRORS.EMAILADDRESS_MUST_VALID">EmailAddress must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/schedules/schedules.html",'<div id="schedules" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.SCHEDULER">Scheduler</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedScheduler.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedScheduler =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-schedules-count">\n                    <span>{{vm.selectedScheduler.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SCHEDULER.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllScheduler()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectScheduler()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedScheduler" filename="schedules.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedScheduler($event)" aria-label="delete selected" translate translate-attr-label="SCHEDULER.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SCHEDULE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedScheduler" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getScheduler">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="sendMail">{{ \'TOOLS.SENDMAIL\' | translate }}</th>\n                                <th md-column md-order-by="active">{{ \'TOOLS.ACTIVE\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.schedules.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="schedule" md-select-id="id" ng-repeat="schedule in vm.schedules.rows">\n                                <td md-cell ng-if="schedule.userpic"><img class="avatar" alt="{{schedule.name}}" ng-src="api/users/{{schedule.id}}/avatar" /></td>\n                                <td md-cell ng-if="!schedule.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{schedule.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="id ">{{schedule.id}}</td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="name ">{{schedule.name}}</td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="sendMail ">\n                                    <md-icon md-colors="{color: {{schedule.sendMail ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{schedule.sendMail ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="active ">\n                                    <md-icon md-colors="{color: {{schedule.active ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{schedule.active ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="description ">{{schedule.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(schedule, $event)" translate="TOOLS.EDIT_SCHEDULE">\n                                                    Edit Schedule\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(schedule, $event)" translate="TOOLS.DELETE_SCHEDULE">\n                                                    Delete Schedule\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.schedules.count}}" md-on-paginate="vm.getScheduler" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SCHEDULE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SCHEDULE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-schedule-button" ng-click="vm.createOrEditSchedule($event)" aria-label="add schedule" translate translate-attr-aria-label="TOOLS.ADD_SCHEDULE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SCHEDULE BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/sounds/create/dialog.html",'<md-dialog class="sound-dialog" aria-label="New Sound">\n    <form name="soundForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.sound.name" required autofocus>\n                <div ng-messages="soundForm.name.$error" ng-show="soundForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.sound.description">\n                <div ng-messages="soundForm.description.$error" ng-show="soundForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSound" ng-click="vm.saveSound()" class="send-button md-accent md-raised" ng-disabled="soundForm.$invalid || soundForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSound" ng-click="vm.addNewSound()" class="send-button md-accent md-raised" ng-disabled="soundForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_SOUND" translate-attr-aria-label="TOOLS.ADD_SOUND">\n                    ADD SOUND\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSound" ng-click="vm.deleteSound($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/sounds/sounds.html",'<div id="sounds" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.SOUNDS">Sounds</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSounds.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSounds =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-sounds-count">\n                    <span>{{vm.selectedSounds.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SOUNDS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSounds()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSounds()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSounds" filename="sounds.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSounds($event)" aria-label="delete selected" translate translate-attr-label="SOUNDS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SOUND TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSounds" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSounds">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="audio">{{ \'TOOLS.AUDIO\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.sounds.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="sound" md-select-id="id" ng-repeat="sound in vm.sounds.rows">\n                                <td md-cell ng-if="sound.userpic"><img class="avatar" alt="{{sound.name}}" ng-src="api/users/{{sound.id}}/avatar" /></td>\n                                <td md-cell ng-if="!sound.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{sound.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSound($event, sound)" md-cell class="id ">{{sound.id}}</td>\n                                <td ng-click="vm.createOrEditSound($event, sound)" md-cell class="name ">{{sound.name}}</td>\n                                <td md-cell class="audio "><audio controls><source ng-src="{{\'api/sounds/\' + sound.id + \'/download\'}}" type="audio/wav" preload="none"></source>Your browser does not support the audio element.</audio></td>\n                                <td ng-click="vm.createOrEditSound($event, sound)" md-cell class="description ">{{sound.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(sound, $event)" translate="TOOLS.EDIT_SOUND">\n                                                    Edit Sound\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.downloadfile(sound, $event)" translate="TOOLS.DOWNLOAD_SOUND">\n                                                    Download Sound\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(sound, $event)" translate="TOOLS.DELETE_SOUND">\n                                                    Delete Sound\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.sounds.count}}" md-on-paginate="vm.getSounds" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SOUND TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SOUND BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-sound-button" ng-click="vm.uploadSound($event)" aria-label="add sound" translate translate-attr-aria-label="SOUNDS.ADD_SOUND">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SOUND BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/sounds/uploadsound/dialog.html",'<md-dialog class="upload-dialog" aria-label="Upload Sound">\n    <form name="uploadForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div id="agent-image-uploader" flow-init="vm.ngFlowOptions" flow-name="vm.ngFlow.flow" flow-files-submitted="vm.upload()" flow-file-added="vm.fileAdded($file)" flow-file-success="vm.fileSuccess($file, $message)" flow-complete="vm.uploadComplete()" flow-drop\n                flow-drag-enter="vm.dropping=true" flow-drag-leave="vm.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                <div class="drop-text hint-text" layout="row" layout-align="center center">\n                    <span translate="TOOLS.DROP_TO_UPLOAD">Drop to upload</span>\n                </div>\n\n                <div class="upload-button" layout="column" layout-align="center center">\n                    <md-button class="md-accent md-raised" flow-btn>\n                        Upload\n                    </md-button>\n                    <span class="secondary-text mt-8" translate="TOOLS.DROP_TO_UPLOAD_MESSAGE">You can also drop audio here to upload. Only MP3, WAV, GSM - Max. 15MB</span>\n                </div>\n\n                <div layout="row" layout-align="start start" ng-repeat="sound in vm.uploadSounds" ng-switch="sound.type">\n                    <div class="sound-image" ng-switch-when="uploading" flex>\n                        <img class="media" src="assets/images/music-player/uploading.png">\n                        <md-progress-linear md-mode="indeterminate"></md-progress-linear>\n                        <span class="text-truncate">{{sound.file.name}}</span>\n                    </div>\n                    <div class="sound-image" ng-switch-when="sound" flex>\n                        <img class="media" src="assets/images/music-player/success.png">\n                        <span class="text-truncate">{{sound.file.name}}</span>\n                    </div>\n                </div>\n\n\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center"></div>\n            <div layout="row">\n                <md-button ng-click="vm.closeDialog()" class="md-accent md-raised" aria-label="FINISH" translate="TOOLS.FINISH" translate-attr-aria-label="TOOLS.FINISH">\n                    FINISH\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/tags/create/dialog.html",'<md-dialog class="tag-dialog" aria-label="New Tag">\n    <form name="tagForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.tag.name" required autofocus>\n                <div ng-messages="tagForm.name.$error" ng-show="tagForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.tag.description">\n                <div ng-messages="tagForm.description.$error" ng-show="tagForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTag" ng-click="vm.saveTag()" class="send-button md-accent md-raised" ng-disabled="tagForm.$invalid || tagForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTag" ng-click="vm.addNewTag()" class="send-button md-accent md-raised" ng-disabled="tagForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_TAG" translate-attr-aria-label="TOOLS.ADD_TAG">\n                    ADD TAG\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTag" ng-click="vm.deleteTag($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/tags/tags.html",'<div id="tags" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.TAGS">Tags</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTags.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTags =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-tags-count">\n                    <span>{{vm.selectedTags.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TAGS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTags()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTags()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTags" filename="tags.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTags($event)" aria-label="delete selected" translate translate-attr-label="TAGS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TAG TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTags" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTags">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.tags.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="tag" md-select-id="id" ng-repeat="tag in vm.tags.rows">\n                                <td md-cell ng-if="tag.userpic"><img class="avatar" alt="{{tag.name}}" ng-src="api/users/{{tag.id}}/avatar" /></td>\n                                <td md-cell ng-if="!tag.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{tag.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTag($event, tag)" md-cell class="id ">{{tag.id}}</td>\n                                <td ng-click="vm.createOrEditTag($event, tag)" md-cell class="name ">{{tag.name}}</td>\n                                <td ng-click="vm.createOrEditTag($event, tag)" md-cell class="description ">{{tag.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(tag, $event)" translate="TOOLS.EDIT_TAG">\n                                                    Edit Tag\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(tag, $event)" translate="TOOLS.DELETE_TAG">\n                                                    Delete Tag\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.tags.count}}" md-on-paginate="vm.getTags" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TAG TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TAG BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-tag-button" ng-click="vm.createOrEditTag($event)" aria-label="add tag" translate translate-attr-aria-label="TOOLS.ADD_TAG">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TAG BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/templates/create/dialog.html",'<md-dialog class="template-dialog" aria-label="New Template">\n    <form name="templateForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.template.name" required autofocus>\n                <div ng-messages="templateForm.name.$error" ng-show="templateForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.SUBJECT">Subject</label>\n                <input type="text" name="subject" ng-model="vm.template.subject">\n                <div ng-messages="templateForm.subject.$error" ng-show="templateForm.subject.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.SUBJECT_REQUIRED">Subject field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <text-angular ng-model="vm.template.html"></text-angular>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.template.description">\n                <div ng-messages="templateForm.description.$error" ng-show="templateForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTemplate" ng-click="vm.saveTemplate()" class="send-button md-accent md-raised" ng-disabled="templateForm.$invalid || templateForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTemplate" ng-click="vm.addNewTemplate()" class="send-button md-accent md-raised" ng-disabled="templateForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_TEMPLATE" translate-attr-aria-label="TOOLS.ADD_TEMPLATE">\n                    ADD TEMPLATE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTemplate" ng-click="vm.deleteTemplate($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/templates/templates.html",'<div id="templates" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.TEMPLATES">Templates</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTemplates.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTemplates =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-templates-count">\n                    <span>{{vm.selectedTemplates.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TEMPLATES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTemplates()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTemplates()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTemplates" filename="templates.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTemplates($event)" aria-label="delete selected" translate translate-attr-label="TEMPLATES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TEMPLATE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTemplates" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTemplates">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.templates.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="template" md-select-id="id" ng-repeat="template in vm.templates.rows">\n                                <td md-cell ng-if="template.userpic"><img class="avatar" alt="{{template.name}}" ng-src="api/users/{{template.id}}/avatar" /></td>\n                                <td md-cell ng-if="!template.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{template.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTemplate($event, template)" md-cell class="id ">{{template.id}}</td>\n                                <td ng-click="vm.createOrEditTemplate($event, template)" md-cell class="name ">{{template.name}}</td>\n                                <td ng-click="vm.createOrEditTemplate($event, template)" md-cell class="description ">{{template.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(template, $event)" translate="TOOLS.EDIT_TEMPLATE">\n                                                    Edit Template\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(template, $event)" translate="TOOLS.DELETE_TEMPLATE">\n                                                    Delete Template\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.templates.count}}" md-on-paginate="vm.getTemplates" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TEMPLATE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TEMPLATE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-template-button" ng-click="vm.createOrEditTemplate($event)" aria-label="add template" translate translate-attr-aria-label="TOOLS.ADD_TEMPLATE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TEMPLATE BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/triggers/create/dialog.html",'<md-dialog class="trigger-dialog" aria-label="New Trigger">\n    <form name="triggerForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.trigger.name" required autofocus>\n                <div ng-messages="triggerForm.name.$error" ng-show="triggerForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.trigger.channel" required ng-disabled="!vm.newTrigger">\n\n                    <md-option ng-value="\'voice\'"> {{ \'TOOLS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="triggerForm.channel.$error" ng-show="triggerForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.trigger.description">\n                <div ng-messages="triggerForm.description.$error" ng-show="triggerForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTrigger" ng-click="vm.saveTrigger()" class="send-button md-accent md-raised" ng-disabled="triggerForm.$invalid || triggerForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTrigger" ng-click="vm.addNewTrigger()" class="send-button md-accent md-raised" ng-disabled="triggerForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_TRIGGER" translate-attr-aria-label="TOOLS.ADD_TRIGGER">\n                    ADD TRIGGER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTrigger" ng-click="vm.deleteTrigger($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/triggers/edit/actions/dialog.html",'<md-dialog class="action-dialog" aria-label="New Action">\n    <form name="actionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.ACTION">Action</label>\n                <md-select ng-model="vm.action.action" required autofocus>\n\n                    <md-option ng-value="\'contactManager\'"> {{ \'TOOLS.CONTACT_MANAGER\' | translate }}</md-option>\n\n                    <md-option ng-value="\'integration\'"> {{ \'TOOLS.INTEGRATIONS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'motionbar\'"> {{ \'TOOLS.MOTION_BAR\' | translate }}</md-option>\n\n                    <md-option ng-value="\'jscripty\'"> {{ \'TOOLS.JSCRIPTY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'urlForward\'"> {{ \'TOOLS.URL_FORWARD\' | translate }}</md-option>\n\n                    <md-option ng-value="\'browser\'"> {{ \'TOOLS.BROWSER\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.action.$error" ng-show="actionForm.action.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACTION_REQUIRED">Action field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'browser\'" class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="\'0\'">Web Popup</md-option>\n                    <md-option ng-value="\'1\'">Web Tab</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'contactManager\'" class="md-block">\n                <label translate="TOOLS.LIST">List</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="data1.id" ng-repeat="data1 in vm.lists">{{ data1.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.LIST_REQUIRED">List field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'urlForward\'" class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="\'GET\'">GET</md-option>\n                    <md-option ng-value="\'POST\'">POST</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'urlForward\'" class="md-block">\n                <label translate="TOOLS.URL">Url</label>\n                <input type="url" name="data2" ng-model="vm.action.data2" required>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="TOOLS.ERRORS.URL_MUST_VALID_URL">Url must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\'" class="md-block">\n                <label translate="TOOLS.INTEGRATION">Integration</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="\'zendesk\'">Zendesk</md-option>\n                    <md-option ng-value="\'salesforce\'">Salesforce</md-option>\n                    <md-option ng-value="\'sugarcrm\'">SugarCRM</md-option>\n                    <md-option ng-value="\'freshdesk\'">Freshdesk</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.INTEGRATION_REQUIRED">Integration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'zendesk\'" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.zendeskAccounts">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'salesforce\'" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.salesforceAccounts">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'sugarcrm\'" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.sugarcrmAccounts">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'freshdesk\'" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.freshdeskAccounts">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'zendesk\' && vm.action.data2" class="md-block">\n                <label translate="TOOLS.CONFIGURATION">Configuration</label>\n                <md-select ng-model="vm.action.data3" required>\n                    <md-option ng-value="data3.id" ng-repeat="data3 in vm.zendeskConfigurations | filter:{AccountId:vm.action.data2}">{{ data3.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIGURATION_REQUIRED">Configuration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'salesforce\' && vm.action.data2" class="md-block">\n                <label translate="TOOLS.CONFIGURATION">Configuration</label>\n                <md-select ng-model="vm.action.data3" required>\n                    <md-option ng-value="data3.id" ng-repeat="data3 in vm.salesforceConfigurations | filter:{AccountId:vm.action.data2}">{{ data3.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIGURATION_REQUIRED">Configuration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'sugarcrm\' && vm.action.data2" class="md-block">\n                <label translate="TOOLS.CONFIGURATION">Configuration</label>\n                <md-select ng-model="vm.action.data3" required>\n                    <md-option ng-value="data3.id" ng-repeat="data3 in vm.sugarcrmConfigurations | filter:{AccountId:vm.action.data2}">{{ data3.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIGURATION_REQUIRED">Configuration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'freshdesk\' && vm.action.data2" class="md-block">\n                <label translate="TOOLS.CONFIGURATION">Configuration</label>\n                <md-select ng-model="vm.action.data3" required>\n                    <md-option ng-value="data3.id" ng-repeat="data3 in vm.freshdeskConfigurations | filter:{AccountId:vm.action.data2}">{{ data3.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIGURATION_REQUIRED">Configuration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\'" class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="\'0\'">Popup</md-option>\n                    <md-option ng-value="\'1\'">URL</md-option>\n                    <md-option ng-value="\'2\'">Windows App</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\' && vm.action.data1 == \'1\'" class="md-block">\n                <label translate="TOOLS.URL">Url</label>\n                <input type="url" name="data2" ng-model="vm.action.data2" required>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="TOOLS.ERRORS.URL_MUST_VALID_URL">Url must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\' && vm.action.data1 == \'2\'" class="md-block">\n                <label translate="TOOLS.APPLICATION">Application</label>\n                <input type="text" name="data2" ng-model="vm.action.data2" required>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.APPLICATION_REQUIRED">Application field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\' && vm.action.data1 == \'2\'" class="md-block">\n                <label translate="TOOLS.ARGUMENTS">Arguments</label>\n                <input type="text" name="data3" ng-model="vm.action.data3">\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ARGUMENTS_REQUIRED">Arguments field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\' && vm.action.data1 == \'0\'" class="md-block">\n                <label translate="TOOLS.TEMPLATE">Template</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.templates">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TEMPLATE_REQUIRED">Template field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'browser\' && vm.action.data1 == \'0\'" class="md-block">\n                <label translate="TOOLS.TEMPLATE">Template</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.templates">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TEMPLATE_REQUIRED">Template field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'browser\' && vm.action.data1 == \'1\'" class="md-block">\n                <label translate="TOOLS.URL">Url</label>\n                <input type="url" name="data2" ng-model="vm.action.data2" required>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="TOOLS.ERRORS.URL_MUST_VALID_URL">Url must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newAction" ng-click="vm.saveAction()" class="send-button md-accent md-raised" ng-disabled="actionForm.$invalid || actionForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newAction" ng-click="vm.addNewAction()" class="send-button md-accent md-raised" ng-disabled="actionForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_ACTION" translate-attr-aria-label="TOOLS.ADD_ACTION">\n                    ADD ACTION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newAction" ng-click="vm.deleteAction($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/triggers/edit/allconditions/dialog.html",'<md-dialog class="allCondition-dialog" aria-label="New AllCondition">\n    <form name="allConditionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.FIELD">Field</label>\n                <md-select ng-model="vm.allCondition.field" required autofocus>\n\n                    <md-option ng-value="\'queue\'"> {{ \'TOOLS.QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'lastevent\'"> {{ \'TOOLS.CALL_STATUS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'routeId\'"> {{ \'TOOLS.OUTBOUNDROUTE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.field.$error" ng-show="allConditionForm.field.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.FIELD_REQUIRED">Field field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.OPERATOR">Operator</label>\n                <md-select ng-model="vm.allCondition.operator" required>\n\n                    <md-option ng-value="\'equals\'"> {{ \'TOOLS.EQUALS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'not_equals\'"> {{ \'TOOLS.NOT_EQUALS\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.operator.$error" ng-show="allConditionForm.operator.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OPERATOR_REQUIRED">Operator field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.allCondition.field == \'queue\'" class="md-block">\n                <label translate="TOOLS.QUEUE">Queue</label>\n                <md-select ng-model="vm.allCondition.value" required>\n                    <md-option ng-value="value.name" ng-repeat="value in vm.queues">{{ value.name }}</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.value.$error" ng-show="allConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.allCondition.field == \'routeId\'" class="md-block">\n                <label translate="TOOLS.OUTBOUNDROUTE">OutboundRoute</label>\n                <md-select ng-model="vm.allCondition.value" required>\n                    <md-option ng-value="value.id" ng-repeat="value in vm.outboundRoutes">{{ value.exten }}</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.value.$error" ng-show="allConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OUTBOUNDROUTE_REQUIRED">OutboundRoute field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.allCondition.field == \'lastevent\'" class="md-block">\n                <label translate="TOOLS.VALUE">Value</label>\n                <md-select ng-model="vm.allCondition.value" required>\n                    <md-option ng-value="\'abandoned\'">Abandoned</md-option>\n                    <md-option ng-value="\'complete\'">Hangup</md-option>\n                    <md-option ng-value="\'rejected\'">Rejected</md-option>\n                    <md-option ng-value="\'called\'">Ringing</md-option>\n                    <md-option ng-value="\'connect\'">Up</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.value.$error" ng-show="allConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newAllCondition" ng-click="vm.saveAllCondition()" class="send-button md-accent md-raised" ng-disabled="allConditionForm.$invalid || allConditionForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newAllCondition" ng-click="vm.addNewAllCondition()" class="send-button md-accent md-raised" ng-disabled="allConditionForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_ALLCONDITION" translate-attr-aria-label="TOOLS.ADD_ALLCONDITION">\n                    ADD ALLCONDITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newAllCondition" ng-click="vm.deleteAllCondition($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/triggers/edit/anyconditions/dialog.html",'<md-dialog class="anyCondition-dialog" aria-label="New AnyCondition">\n    <form name="anyConditionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.FIELD">Field</label>\n                <md-select ng-model="vm.anyCondition.field" required autofocus>\n\n                    <md-option ng-value="\'queue\'"> {{ \'TOOLS.QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'lastevent\'"> {{ \'TOOLS.CALL_STATUS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'routeId\'"> {{ \'TOOLS.OUTBOUNDROUTE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.field.$error" ng-show="anyConditionForm.field.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.FIELD_REQUIRED">Field field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.OPERATOR">Operator</label>\n                <md-select ng-model="vm.anyCondition.operator" required>\n\n                    <md-option ng-value="\'equals\'"> {{ \'TOOLS.EQUALS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'not_equals\'"> {{ \'TOOLS.NOT_EQUALS\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.operator.$error" ng-show="anyConditionForm.operator.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OPERATOR_REQUIRED">Operator field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.anyCondition.field == \'queue\'" class="md-block">\n                <label translate="TOOLS.QUEUE">Queue</label>\n                <md-select ng-model="vm.anyCondition.value" required>\n                    <md-option ng-value="value.name" ng-repeat="value in vm.queues">{{ value.name }}</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.value.$error" ng-show="anyConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.anyCondition.field == \'routeId\'" class="md-block">\n                <label translate="TOOLS.OUTBOUNDROUTE">OutboundRoute</label>\n                <md-select ng-model="vm.anyCondition.value" required>\n                    <md-option ng-value="value.id" ng-repeat="value in vm.outboundRoutes">{{ value.exten }}</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.value.$error" ng-show="anyConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OUTBOUNDROUTE_REQUIRED">OutboundRoute field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.anyCondition.field == \'lastevent\'" class="md-block">\n                <label translate="TOOLS.VALUE">Value</label>\n                <md-select ng-model="vm.anyCondition.value" required>\n                    <md-option ng-value="\'abandoned\'">Abandoned</md-option>\n                    <md-option ng-value="\'complete\'">Hangup</md-option>\n                    <md-option ng-value="\'rejected\'">Rejected</md-option>\n                    <md-option ng-value="\'called\'">Ringing</md-option>\n                    <md-option ng-value="\'connect\'">Up</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.value.$error" ng-show="anyConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newAnyCondition" ng-click="vm.saveAnyCondition()" class="send-button md-accent md-raised" ng-disabled="anyConditionForm.$invalid || anyConditionForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newAnyCondition" ng-click="vm.addNewAnyCondition()" class="send-button md-accent md-raised" ng-disabled="anyConditionForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_ANYCONDITION" translate-attr-aria-label="TOOLS.ADD_ANYCONDITION">\n                    ADD ANYCONDITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newAnyCondition" ng-click="vm.deleteAnyCondition($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/triggers/edit/view.html",'<div id="tools-trigger" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-triggers-button md-icon-button" aria-label="Go to triggers" ng-click="vm.gotoTriggers()" translate translate-attr-aria-label="TOOLS.GO_TO_TRIGGERS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.trigger.userpic" class="trigger-image" hide-xs>\n                    <img ng-src="api/users/{{vm.trigger.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.trigger.userpic" class="trigger-image" hide-xs>\n                    <img ng-src="assets/images/business/triggers.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.trigger.id}} {{vm.trigger.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.trigger.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveTrigger()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (allconditionsForm.$invalid) || (anyconditionsForm.$invalid) || (actionsForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trigger-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.trigger.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CHANNEL">Channel</label>\n                                <md-select ng-model="vm.trigger.channel" required ng-disabled="true">\n\n                                    <md-option ng-value="\'voice\'"> {{ \'TOOLS.VOICE\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.channel.$error" ng-show="generalForm.channel.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.trigger.status" aria-label="Status"><span translate="TOOLS.STATUS">Status</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.trigger.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.CONDITIONS&ACTIONS">CONDITIONS&ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trigger-detail-form-container allconditions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="TriggerAllConditionsController as vm_dc" ng-init="vm_dc.init(vm.trigger)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedTriggerAllConditions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="TOOLS.ALLCONDITIONS">AllConditions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditTriggerAllCondition($event)" aria-label="add allCondition" translate translate-attr-label="TOOLS.ADD_ALLCONDITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedTriggerAllConditions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedTriggerAllConditions.length}} {{vm_dc.selectedTriggerAllConditions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedTriggerAllConditions($event)" aria-label="delete selected" translate translate-attr-label="TRIGGERS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedTriggerAllConditions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getTriggerAllConditions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="field">{{ \'TOOLS.FIELD\' | translate }}</th>\n                                            <th md-column md-order-by="operator">{{ \'TOOLS.OPERATOR\' | translate }}</th>\n                                            <th md-column md-order-by="value">{{ \'TOOLS.VALUE\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'TOOLS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="allCondition" md-select-id="id" ng-repeat="allCondition in vm_dc.triggerAllConditions.rows">\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" md-cell>{{allCondition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayfield[allCondition.field].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayoperator[allCondition.operator].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" ng-if="allCondition.field == \'queue\'" md-cell>{{ value = vm_dc.queues[allCondition.value]; value.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" ng-if="allCondition.field == \'routeId\'" md-cell>{{ value = vm_dc.outboundRoutes[allCondition.value]; value.exten }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" ng-if="allCondition.field == \'lastevent\'" md-cell>{{ vm_dc.arrayvalue[allCondition.value].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" md-cell>{{allCondition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" translate="TOOLS.EDIT_ALLCONDITION">\n                                                                Edit AllCondition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(allCondition, $event)" translate="TOOLS.DELETE_ALLCONDITION">\n                                                                Delete AllCondition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.triggerAllConditions.rows.length">\n                                            <td md-cell colspan="9">\n                                                <span class="text-boxed-ligth" translate="TOOLS.NO_ALLCONDITION_AVAILABLE">No allcondition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.triggerAllConditions.count}}" md-on-paginate="vm_dc.getTriggerAllConditions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                    <div class="trigger-detail-form-container anyconditions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="TriggerAnyConditionsController as vm_dc" ng-init="vm_dc.init(vm.trigger)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedTriggerAnyConditions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="TOOLS.ANYCONDITIONS">AnyConditions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditTriggerAnyCondition($event)" aria-label="add anyCondition" translate translate-attr-label="TOOLS.ADD_ANYCONDITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedTriggerAnyConditions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedTriggerAnyConditions.length}} {{vm_dc.selectedTriggerAnyConditions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedTriggerAnyConditions($event)" aria-label="delete selected" translate translate-attr-label="TRIGGERS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedTriggerAnyConditions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getTriggerAnyConditions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="field">{{ \'TOOLS.FIELD\' | translate }}</th>\n                                            <th md-column md-order-by="operator">{{ \'TOOLS.OPERATOR\' | translate }}</th>\n                                            <th md-column md-order-by="value">{{ \'TOOLS.VALUE\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'TOOLS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="anyCondition" md-select-id="id" ng-repeat="anyCondition in vm_dc.triggerAnyConditions.rows">\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" md-cell>{{anyCondition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayfield[anyCondition.field].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayoperator[anyCondition.operator].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" ng-if="anyCondition.field == \'queue\'" md-cell>{{ value = vm_dc.queues[anyCondition.value]; value.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" ng-if="anyCondition.field == \'routeId\'" md-cell>{{ value = vm_dc.outboundRoutes[anyCondition.value]; value.exten }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" ng-if="anyCondition.field == \'lastevent\'" md-cell>{{ vm_dc.arrayvalue[anyCondition.value].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" md-cell>{{anyCondition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" translate="TOOLS.EDIT_ANYCONDITION">\n                                                                Edit AnyCondition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(anyCondition, $event)" translate="TOOLS.DELETE_ANYCONDITION">\n                                                                Delete AnyCondition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.triggerAnyConditions.rows.length">\n                                            <td md-cell colspan="9">\n                                                <span class="text-boxed-ligth" translate="TOOLS.NO_ANYCONDITION_AVAILABLE">No anycondition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.triggerAnyConditions.count}}" md-on-paginate="vm_dc.getTriggerAnyConditions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                    <div class="trigger-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="TriggerActionsController as vm_dc" ng-init="vm_dc.init(vm.trigger)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedTriggerActions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="TOOLS.ACTIONS">Actions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditTriggerAction($event)" aria-label="add action" translate translate-attr-label="TOOLS.ADD_ACTION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedTriggerActions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedTriggerActions.length}} {{vm_dc.selectedTriggerActions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedTriggerActions($event)" aria-label="delete selected" translate translate-attr-label="TRIGGERS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedTriggerActions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getTriggerActions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="action">{{ \'TOOLS.ACTION\' | translate }}</th>\n                                            <th md-column md-order-by="data1">{{ \'TOOLS.TYPE\' | translate }}</th>\n                                            <th md-column md-order-by="data2">{{ \'TOOLS.INFO\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'TOOLS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="action" md-select-id="id" ng-repeat="action in vm_dc.triggerActions.rows">\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" md-cell>{{action.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayaction[action.action].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'browser\'" md-cell>{{ vm_dc.browserValues[action.data1].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'contactManager\'" md-cell>{{ data1 = vm_dc.lists[action.data1]; data1.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'urlForward\'" md-cell>{{ vm_dc.urlForwardValues[action.data1].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="!action.data2" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'urlForward\'" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\'" md-cell>{{ vm_dc.integrationValues[action.data1].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\' && action.data1 == \'zendesk\'" md-cell>{{ data2 = vm_dc.zendeskAccounts[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\' && action.data1 == \'salesforce\'" md-cell>{{ data2 = vm_dc.salesforceAccounts[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\' && action.data1 == \'sugarcrm\'" md-cell>{{ data2 = vm_dc.sugarcrmAccounts[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\' && action.data1 == \'freshdesk\'" md-cell>{{ data2 = vm_dc.freshdeskAccounts[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'motionbar\'" md-cell>{{ vm_dc.motionbarValues[action.data1].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'motionbar\' && action.data1 == \'1\'" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'motionbar\' && action.data1 == \'2\'" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'motionbar\' && action.data1 == \'0\'" md-cell>{{ data2 = vm_dc.templates[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'browser\' && action.data1 == \'0\'" md-cell>{{ data2 = vm_dc.templates[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'browser\' && action.data1 == \'1\'" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" md-cell>{{action.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditTriggerAction($event, action)" translate="TOOLS.EDIT_ACTION">\n                                                                Edit Action\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(action, $event)" translate="TOOLS.DELETE_ACTION">\n                                                                Delete Action\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.triggerActions.rows.length">\n                                            <td md-cell colspan="26">\n                                                <span class="text-boxed-ligth" translate="TOOLS.NO_ACTION_AVAILABLE">No action available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.triggerActions.count}}" md-on-paginate="vm_dc.getTriggerActions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/triggers/triggers.html",'<div id="triggers" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.TRIGGERS">Triggers</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTriggers.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTriggers =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-triggers-count">\n                    <span>{{vm.selectedTriggers.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TRIGGERS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTriggers()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTriggers()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTriggers" filename="triggers.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTriggers($event)" aria-label="delete selected" translate translate-attr-label="TRIGGERS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TRIGGER TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTriggers" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTriggers">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="channel">{{ \'TOOLS.CHANNEL\' | translate }}</th>\n                                <th md-column md-order-by="status">{{ \'TOOLS.STATUS\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.triggers.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="trigger" md-select-id="id" ng-repeat="trigger in vm.triggers.rows">\n                                <td md-cell ng-if="trigger.userpic"><img class="avatar" alt="{{trigger.name}}" ng-src="api/users/{{trigger.id}}/avatar" /></td>\n                                <td md-cell ng-if="!trigger.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{trigger.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="id ">{{trigger.id}}</td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="name ">{{trigger.name}}</td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="channel ">{{ \'TOOLS.\' + vm.arraychannel[trigger.channel].option | uppercase | translate }}</td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="status ">\n                                    <md-icon md-colors="{color: {{trigger.status ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{trigger.status ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="description ">{{trigger.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(trigger, $event)" translate="TOOLS.EDIT_TRIGGER">\n                                                    Edit Trigger\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(trigger, $event)" translate="TOOLS.DELETE_TRIGGER">\n                                                    Delete Trigger\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.triggers.count}}" md-on-paginate="vm.getTriggers" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TRIGGER TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TRIGGER BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-trigger-button" ng-click="vm.createOrEditTrigger($event)" aria-label="add trigger" translate translate-attr-aria-label="TOOLS.ADD_TRIGGER">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TRIGGER BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/trunks/create/dialog.html",'<md-dialog class="trunk-dialog" aria-label="New Trunk">\n    <form name="trunkForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.trunk.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="!vm.newTrunk">\n                <div ng-messages="trunkForm.name.$error" ng-show="trunkForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="TOOLS.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.trunk.active" aria-label="active"><span translate="TOOLS.ACTIVE">active</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.HOST">host</label>\n                <input type="text" name="host" ng-model="vm.trunk.host" required>\n                <div class="hint"><span translate="TOOLS.HELP.HOST"></span></div>\n                <div ng-messages="trunkForm.host.$error" ng-show="trunkForm.host.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.HOST_REQUIRED">host field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.SECRET">secret</label>\n                <input type="password" name="secret" ng-model="vm.trunk.secret" placeholder="Password" translate translate-attr-placeholder="TOOLS.PASSWORD">\n                <div class="hint"><span translate="TOOLS.HELP.SECRET"></span></div>\n                <div ng-messages="trunkForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newTrunk ">\n                <label translate="TOOLS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="secret" name="confirmPassword" ng-model="confirmPassword">\n                <div class="hint"><span translate="TOOLS.HELP.SECRET"></span></div>\n                <div ng-messages="trunkForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="TOOLS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DEFAULTUSER">defaultuser</label>\n                <input type="text" name="defaultuser" ng-model="vm.trunk.defaultuser" required>\n                <div class="hint"><span translate="TOOLS.HELP.DEFAULTUSER"></span></div>\n                <div ng-messages="trunkForm.defaultuser.$error" ng-show="trunkForm.defaultuser.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DEFAULTUSER_REQUIRED">defaultuser field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.REGISTRY">registry</label>\n                <input type="text" name="registry" ng-model="vm.trunk.registry">\n                <div class="hint"><span translate="TOOLS.HELP.REGISTRY"></span></div>\n                <div ng-messages="trunkForm.registry.$error" ng-show="trunkForm.registry.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REGISTRY_REQUIRED">registry field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.trunk.description">\n                <div ng-messages="trunkForm.description.$error" ng-show="trunkForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTrunk" ng-click="vm.saveTrunk()" class="send-button md-accent md-raised" ng-disabled="trunkForm.$invalid || trunkForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTrunk" ng-click="vm.addNewTrunk()" class="send-button md-accent md-raised" ng-disabled="trunkForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_TRUNK" translate-attr-aria-label="TOOLS.ADD_TRUNK">\n                    ADD TRUNK\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTrunk" ng-click="vm.deleteTrunk($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/trunks/edit/view.html",'<div id="tools-trunk" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-trunks-button md-icon-button" aria-label="Go to trunks" ng-click="vm.gotoTrunks()" translate translate-attr-aria-label="TOOLS.GO_TO_TRUNKS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.trunk.userpic" class="trunk-image" hide-xs>\n                    <img ng-src="api/users/{{vm.trunk.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.trunk.userpic" class="trunk-image" hide-xs>\n                    <img ng-src="assets/images/business/trunks.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.trunk.id}} {{vm.trunk.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.trunk.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveTrunk()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (advancedForm.$invalid) || (otherFieldsForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trunk-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.trunk.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="TOOLS.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.trunk.active" aria-label="active"><span translate="TOOLS.ACTIVE">active</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.HOST">host</label>\n                                <input type="text" name="host" ng-model="vm.trunk.host" required>\n                                <div class="hint"><span translate="TOOLS.HELP.HOST"></span></div>\n                                <div ng-messages="generalForm.host.$error" ng-show="generalForm.host.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.HOST_REQUIRED">host field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.SECRET">secret</label>\n                                <input type="password" name="secret" ng-model="vm.trunk.secret" placeholder="Password" translate translate-attr-placeholder="TOOLS.PASSWORD">\n                                <div class="hint"><span translate="TOOLS.HELP.SECRET"></span></div>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newTrunk ">\n                                <label translate="TOOLS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="secret" name="confirmPassword" ng-model="confirmPassword">\n                                <div class="hint"><span translate="TOOLS.HELP.SECRET"></span></div>\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="TOOLS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DEFAULTUSER">defaultuser</label>\n                                <input type="text" name="defaultuser" ng-model="vm.trunk.defaultuser" required>\n                                <div class="hint"><span translate="TOOLS.HELP.DEFAULTUSER"></span></div>\n                                <div ng-messages="generalForm.defaultuser.$error" ng-show="generalForm.defaultuser.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DEFAULTUSER_REQUIRED">defaultuser field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CONTEXT">context</label>\n                                <md-select ng-model="vm.trunk.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.CONTEXT"></span></div>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CONTEXT_REQUIRED">context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CALLERID">callerid</label>\n                                <input type="text" name="callerid" ng-model="vm.trunk.callerid" required>\n                                <div class="hint"><span translate="TOOLS.HELP.CALLERID"></span></div>\n                                <div ng-messages="generalForm.callerid.$error" ng-show="generalForm.callerid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CALLERID_REQUIRED">callerid field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.TYPE">Type</label>\n                                <md-select ng-model="vm.trunk.type" required>\n                                    <md-option ng-value="\'friend\'">Friend</md-option>\n                                    <md-option ng-value="\'user\'">User</md-option>\n                                    <md-option ng-value="\'peer\'">Peer</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.TYPE"></span></div>\n                                <div ng-messages="generalForm.type.$error" ng-show="generalForm.type.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DTMFMODE">dtmfmode</label>\n                                <md-select ng-model="vm.trunk.dtmfmode" required>\n                                    <md-option ng-value="\'rfc2833\'">rfc2833</md-option>\n                                    <md-option ng-value="\'info\'">info</md-option>\n                                    <md-option ng-value="\'shortinfo\'">shortinfo</md-option>\n                                    <md-option ng-value="\'inband\'">inband</md-option>\n                                    <md-option ng-value="\'auto\'">auto</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.DTMFMODE"></span></div>\n                                <div ng-messages="generalForm.dtmfmode.$error" ng-show="generalForm.dtmfmode.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DTMFMODE_REQUIRED">dtmfmode field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAT">nat</label>\n                                <md-select ng-model="vm.trunk.nat" required multiple>\n                                    <md-option ng-value="\'force_rport\'">force_rport</md-option>\n                                    <md-option ng-value="\'comedia\'">comedia</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'never\'">never</md-option>\n                                    <md-option ng-value="\'route\'">route</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.NAT"></span></div>\n                                <div ng-messages="generalForm.nat.$error" ng-show="generalForm.nat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAT_REQUIRED">nat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.QUALIFY">qualify</label>\n                                <md-select ng-model="vm.trunk.qualify" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'user\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.QUALIFY"></span></div>\n                                <div ng-messages="generalForm.qualify.$error" ng-show="generalForm.qualify.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.QUALIFY_REQUIRED">qualify field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.ALLOWCODECS">AllowCodecs</label>\n                                <md-select ng-model="vm.trunk.allow" required multiple>\n                                    <md-option ng-value="\'alaw\'">alaw</md-option>\n                                    <md-option ng-value="\'ulaw\'">ulaw</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                    <md-option ng-value="\'g723\'">g723</md-option>\n                                    <md-option ng-value="\'g726\'">g726</md-option>\n                                    <md-option ng-value="\'g722\'">g722</md-option>\n                                    <md-option ng-value="\'g729\'">g729</md-option>\n                                    <md-option ng-value="\'ilbc\'">ilbc</md-option>\n                                    <md-option ng-value="\'opus\'">opus</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.ALLOWCODECS"></span></div>\n                                <div ng-messages="generalForm.allow.$error" ng-show="generalForm.allow.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.ALLOWCODECS_REQUIRED">AllowCodecs field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.INSECURE">insecure</label>\n                                <md-select ng-model="vm.trunk.insecure" required multiple>\n                                    <md-option ng-value="\'port\'">port</md-option>\n                                    <md-option ng-value="\'invite\'">invite</md-option>\n                                    <md-option ng-value="\'very\'">very</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.INSECURE"></span></div>\n                                <div ng-messages="generalForm.insecure.$error" ng-show="generalForm.insecure.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.INSECURE_REQUIRED">insecure field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CALL_LIMIT">call_limit</label>\n                                <input type="number" name="call_limit" ng-model="vm.trunk.call_limit">\n                                <div class="hint"><span translate="TOOLS.HELP.CALL_LIMIT"></span></div>\n                                <div ng-messages="generalForm.call_limit.$error" ng-show="generalForm.call_limit.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CALL_LIMIT_REQUIRED">call_limit field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.trunk.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trunk-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.REGISTRY">registry</label>\n                                <input type="text" name="registry" ng-model="vm.trunk.registry" autofocus>\n                                <div class="hint"><span translate="TOOLS.HELP.REGISTRY"></span></div>\n                                <div ng-messages="advancedForm.registry.$error" ng-show="advancedForm.registry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REGISTRY_REQUIRED">registry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DIRECTMEDIA">directmedia</label>\n                                <md-select ng-model="vm.trunk.directmedia" required>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'nonat\'">nonat</md-option>\n                                    <md-option ng-value="\'update\'">update</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.DIRECTMEDIA"></span></div>\n                                <div ng-messages="advancedForm.directmedia.$error" ng-show="advancedForm.directmedia.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DIRECTMEDIA_REQUIRED">directmedia field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CALLCOUNTER">callcounter</label>\n                                <md-select ng-model="vm.trunk.callcounter" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.CALLCOUNTER"></span></div>\n                                <div ng-messages="advancedForm.callcounter.$error" ng-show="advancedForm.callcounter.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CALLCOUNTER_REQUIRED">callcounter field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.FROMDOMAIN">fromdomain</label>\n                                <input type="text" name="fromdomain" ng-model="vm.trunk.fromdomain">\n                                <div class="hint"><span translate="TOOLS.HELP.FROMDOMAIN"></span></div>\n                                <div ng-messages="advancedForm.fromdomain.$error" ng-show="advancedForm.fromdomain.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.FROMDOMAIN_REQUIRED">fromdomain field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.FROMUSER">fromuser</label>\n                                <input type="text" name="fromuser" ng-model="vm.trunk.fromuser">\n                                <div class="hint"><span translate="TOOLS.HELP.FROMUSER"></span></div>\n                                <div ng-messages="advancedForm.fromuser.$error" ng-show="advancedForm.fromuser.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.FROMUSER_REQUIRED">fromuser field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.OUTBOUNDPROXY">outboundproxy</label>\n                                <input type="text" name="outboundproxy" ng-model="vm.trunk.outboundproxy">\n                                <div class="hint"><span translate="TOOLS.HELP.OUTBOUNDPROXY"></span></div>\n                                <div ng-messages="advancedForm.outboundproxy.$error" ng-show="advancedForm.outboundproxy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.OUTBOUNDPROXY_REQUIRED">outboundproxy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.ADD_PHONE_TO_URI">Add_phone_to_URI</label>\n                                <md-select ng-model="vm.trunk.usereqphone" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.ADD_PHONE_TO_URI"></span></div>\n                                <div ng-messages="advancedForm.usereqphone.$error" ng-show="advancedForm.usereqphone.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.ADD_PHONE_TO_URI_REQUIRED">Add_phone_to_URI field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.TRUST_REMOTE_PARTY_ID">Trust_Remote_Party_ID</label>\n                                <md-select ng-model="vm.trunk.trustrpid" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.TRUST_REMOTE_PARTY_ID"></span></div>\n                                <div ng-messages="advancedForm.trustrpid.$error" ng-show="advancedForm.trustrpid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.TRUST_REMOTE_PARTY_ID_REQUIRED">Trust_Remote_Party_ID field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.SEND_REMOTE_PARTY_ID_HEADER">Send_Remote_Party_ID_header</label>\n                                <md-select ng-model="vm.trunk.sendrpid" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.SEND_REMOTE_PARTY_ID_HEADER"></span></div>\n                                <div ng-messages="advancedForm.sendrpid.$error" ng-show="advancedForm.sendrpid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.SEND_REMOTE_PARTY_ID_HEADER_REQUIRED">Send_Remote_Party_ID_header field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.ENCRYPTION">encryption</label>\n                                <md-select ng-model="vm.trunk.encryption" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.ENCRYPTION"></span></div>\n                                <div ng-messages="advancedForm.encryption.$error" ng-show="advancedForm.encryption.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.ENCRYPTION_REQUIRED">encryption field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.PORT">port</label>\n                                <input type="number" name="port" ng-model="vm.trunk.port">\n                                <div class="hint"><span translate="TOOLS.HELP.PORT"></span></div>\n                                <div ng-messages="advancedForm.port.$error" ng-show="advancedForm.port.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.PORT_REQUIRED">port field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.TRANSPORT">Transport</label>\n                                <md-select ng-model="vm.trunk.transport" required multiple>\n                                    <md-option ng-value="\'udp\'">udp</md-option>\n                                    <md-option ng-value="\'tcp\'">tcp</md-option>\n                                    <md-option ng-value="\'ws\'">ws</md-option>\n                                    <md-option ng-value="\'wss\'">wss</md-option>\n                                    <md-option ng-value="\'tls\'">tls</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.TRANSPORT"></span></div>\n                                <div ng-messages="advancedForm.transport.$error" ng-show="advancedForm.transport.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.TRANSPORT_REQUIRED">Transport field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.OTHERFIELDS">OTHERFIELDS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trunk-detail-form-container otherfields md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.OTHERFIELDS">OTHERFIELDS</div>\n                        </div>\n                        <form name="otherFieldsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.OTHERFIELDS">otherFields</label>\n                                <textarea ng-model="vm.trunk.otherFields" md-maxlength="150" max-rows="5" autofocus></textarea>\n                                <div class="hint"><span translate="TOOLS.HELP.OTHERFIELDS"></span></div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/trunks/trunks.html",'<div id="trunks" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.TRUNKS">Trunks</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTrunks.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTrunks =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-trunks-count">\n                    <span>{{vm.selectedTrunks.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TRUNKS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTrunks()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTrunks()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTrunks" filename="trunks.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTrunks($event)" aria-label="delete selected" translate translate-attr-label="TRUNKS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TRUNK TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTrunks" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTrunks">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="active">{{ \'TOOLS.ACTIVE\' | translate }}</th>\n                                <th md-column md-order-by="host">{{ \'TOOLS.HOST\' | translate }}</th>\n                                <th md-column md-order-by="registry">{{ \'TOOLS.REGISTRY\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.trunks.rows.length">\n                                <td md-cell colspan="7">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="trunk" md-select-id="id" ng-repeat="trunk in vm.trunks.rows">\n                                <td md-cell ng-if="trunk.userpic"><img class="avatar" alt="{{trunk.name}}" ng-src="api/users/{{trunk.id}}/avatar" /></td>\n                                <td md-cell ng-if="!trunk.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{trunk.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="id ">{{trunk.id}}</td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="name ">{{trunk.name}}</td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="active ">\n                                    <md-icon md-colors="{color: {{trunk.active ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{trunk.active ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="host ">{{trunk.host}}</td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="registry ">{{trunk.registry}}</td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="description ">{{trunk.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(trunk, $event)" translate="TOOLS.EDIT_TRUNK">\n                                                    Edit Trunk\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(trunk, $event)" translate="TOOLS.DELETE_TRUNK">\n                                                    Delete Trunk\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.trunks.count}}" md-on-paginate="vm.getTrunks" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TRUNK TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TRUNK BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-trunk-button" ng-click="vm.createOrEditTrunk($event)" aria-label="add trunk" translate translate-attr-aria-label="TOOLS.ADD_TRUNK">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TRUNK BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/variables/create/dialog.html",'<md-dialog class="variable-dialog" aria-label="New Variable">\n    <form name="variableForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.variable.name" required autofocus>\n                <div ng-messages="variableForm.name.$error" ng-show="variableForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.variable.description">\n                <div ng-messages="variableForm.description.$error" ng-show="variableForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVariable" ng-click="vm.saveVariable()" class="send-button md-accent md-raised" ng-disabled="variableForm.$invalid || variableForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVariable" ng-click="vm.addNewVariable()" class="send-button md-accent md-raised" ng-disabled="variableForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_VARIABLE" translate-attr-aria-label="TOOLS.ADD_VARIABLE">\n                    ADD VARIABLE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVariable" ng-click="vm.deleteVariable($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/variables/variables.html",'<div id="variables" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.VARIABLES">Variables</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedVariables.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedVariables =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-variables-count">\n                    <span>{{vm.selectedVariables.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="VARIABLES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllVariables()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectVariables()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedVariables" filename="variables.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedVariables($event)" aria-label="delete selected" translate translate-attr-label="VARIABLES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- VARIABLE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedVariables" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVariables">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.variables.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="variable" md-select-id="id" ng-repeat="variable in vm.variables.rows">\n                                <td md-cell ng-if="variable.userpic"><img class="avatar" alt="{{variable.name}}" ng-src="api/users/{{variable.id}}/avatar" /></td>\n                                <td md-cell ng-if="!variable.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{variable.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditVariable($event, variable)" md-cell class="id ">{{variable.id}}</td>\n                                <td ng-click="vm.createOrEditVariable($event, variable)" md-cell class="name ">{{variable.name}}</td>\n                                <td ng-click="vm.createOrEditVariable($event, variable)" md-cell class="description ">{{variable.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(variable, $event)" translate="TOOLS.EDIT_VARIABLE">\n                                                    Edit Variable\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(variable, $event)" translate="TOOLS.DELETE_VARIABLE">\n                                                    Delete Variable\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.variables.count}}" md-on-paginate="vm.getVariables" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / VARIABLE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD VARIABLE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-variable-button" ng-click="vm.createOrEditVariable($event)" aria-label="add variable" translate translate-attr-aria-label="TOOLS.ADD_VARIABLE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD VARIABLE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/chanSpies/chanSpies.html",'<div id="chanSpies" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.CHANSPIES">ChanSpies</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedChanSpies.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedChanSpies =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-chanSpies-count">\n                    <span>{{vm.selectedChanSpies.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CHANSPIES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllChanSpies()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectChanSpies()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedChanSpies" filename="chanSpies.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedChanSpies($event)" aria-label="delete selected" translate translate-attr-label="CHANSPIES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CHANSPY TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedChanSpies" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getChanSpies">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="prefix">{{ \'VOICE.PREFIX\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.chanSpies.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="chanSpy" md-select-id="id" ng-repeat="chanSpy in vm.chanSpies.rows">\n                                <td md-cell ng-if="chanSpy.userpic"><img class="avatar" alt="{{chanSpy.name}}" ng-src="api/users/{{chanSpy.id}}/avatar" /></td>\n                                <td md-cell ng-if="!chanSpy.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{chanSpy.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditchanSpy($event, chanSpy)" md-cell class="id ">{{chanSpy.id}}</td>\n                                <td ng-click="vm.createOrEditchanSpy($event, chanSpy)" md-cell class="name ">{{chanSpy.name}}</td>\n                                <td ng-click="vm.createOrEditchanSpy($event, chanSpy)" md-cell class="prefix ">{{chanSpy.prefix}}</td>\n                                <td ng-click="vm.createOrEditchanSpy($event, chanSpy)" md-cell class="description ">{{chanSpy.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(chanSpy, $event)" translate="VOICE.EDIT_CHANSPY">\n                                                    Edit chanSpy\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(chanSpy, $event)" translate="VOICE.DELETE_CHANSPY">\n                                                    Delete chanSpy\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.chanSpies.count}}" md-on-paginate="vm.getChanSpies" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CHANSPY TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CHANSPY BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-chanSpy-button" ng-click="vm.createOrEditchanSpy($event)" aria-label="add chanSpy" translate translate-attr-aria-label="VOICE.ADD_CHANSPY">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CHANSPY BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/chanSpies/create/dialog.html",'<md-dialog class="chanSpy-dialog" aria-label="New chanSpy">\n    <form name="chanSpyForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.chanSpy.name" required autofocus>\n                <div ng-messages="chanSpyForm.name.$error" ng-show="chanSpyForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PREFIX">Prefix</label>\n                <input type="text" name="prefix" ng-model="vm.chanSpy.prefix" required>\n                <div ng-messages="chanSpyForm.prefix.$error" ng-show="chanSpyForm.prefix.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PREFIX_REQUIRED">Prefix field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <md-select ng-model="vm.chanSpy.options" required multiple>\n                    <md-option ng-value="\'b\'">b: Only spy on channels involved in a bridged call.</md-option>\n                    <md-option ng-value="\'B\'">B: Instead of whispering on a single channel barge in on both channels involved in the call.</md-option>\n                    <md-option ng-value="\'E\'">E: Exit when the spied-on channel hangs up.</md-option>\n                    <md-option ng-value="\'o\'">o: Only listen to audio coming from this channel.</md-option>\n                    <md-option ng-value="\'q\'">q: Don\'t play a beep when beginning to spy on a channel, or speak the selected channel name.</md-option>\n                    <md-option ng-value="\'s\'">s: Skip the playback of the channel type (i.e. SIP, IAX, etc) when speaking the selected channel name.</md-option>\n                    <md-option ng-value="\'S\'">S: Stop when no more channels are left to spy on.</md-option>\n                    <md-option ng-value="\'w\'">w: Enable whisper mode, so the spying channel can talk to the spied-on channel.</md-option>\n                    <md-option ng-value="\'W\'">W: Enable private whisper mode, so the spying channel can talk to the spied-on channel but cannot listen to that channel.</md-option>\n                </md-select>\n                <div ng-messages="chanSpyForm.options.$error" ng-show="chanSpyForm.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.chanSpy.description">\n                <div ng-messages="chanSpyForm.description.$error" ng-show="chanSpyForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newchanSpy" ng-click="vm.savechanSpy()" class="send-button md-accent md-raised" ng-disabled="chanSpyForm.$invalid || chanSpyForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newchanSpy" ng-click="vm.addNewchanSpy()" class="send-button md-accent md-raised" ng-disabled="chanSpyForm.$invalid" aria-label="ADD" translate="VOICE.ADD_CHANSPY" translate-attr-aria-label="VOICE.ADD_CHANSPY">\n                    ADD CHANSPY\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newchanSpy" ng-click="vm.deletechanSpy($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/chanSpies/edit/view.html",'<div id="voice-chanSpy" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-chanSpies-button md-icon-button" aria-label="Go to chanSpies" ng-click="vm.gotoChanSpies()" translate translate-attr-aria-label="VOICE.GO_TO_CHANSPIES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.chanSpy.userpic" class="chanSpy-image" hide-xs>\n                    <img ng-src="api/users/{{vm.chanSpy.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.chanSpy.userpic" class="chanSpy-image" hide-xs>\n                    <img ng-src="assets/images/business/chanSpies.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.chanSpy.id}} {{vm.chanSpy.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.chanSpy.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.savechanSpy()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chanSpy-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.chanSpy.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PREFIX">Prefix</label>\n                                <input type="text" name="prefix" ng-model="vm.chanSpy.prefix" required>\n                                <div ng-messages="generalForm.prefix.$error" ng-show="generalForm.prefix.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PREFIX_REQUIRED">Prefix field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.OPTIONS">Options</label>\n                                <md-select ng-model="vm.chanSpy.options" required multiple>\n                                    <md-option ng-value="\'b\'">b: Only spy on channels involved in a bridged call.</md-option>\n                                    <md-option ng-value="\'B\'">B: Instead of whispering on a single channel barge in on both channels involved in the call.</md-option>\n                                    <md-option ng-value="\'E\'">E: Exit when the spied-on channel hangs up.</md-option>\n                                    <md-option ng-value="\'o\'">o: Only listen to audio coming from this channel.</md-option>\n                                    <md-option ng-value="\'q\'">q: Don\'t play a beep when beginning to spy on a channel, or speak the selected channel name.</md-option>\n                                    <md-option ng-value="\'s\'">s: Skip the playback of the channel type (i.e. SIP, IAX, etc) when speaking the selected channel name.</md-option>\n                                    <md-option ng-value="\'S\'">S: Stop when no more channels are left to spy on.</md-option>\n                                    <md-option ng-value="\'w\'">w: Enable whisper mode, so the spying channel can talk to the spied-on channel.</md-option>\n                                    <md-option ng-value="\'W\'">W: Enable private whisper mode, so the spying channel can talk to the spied-on channel but cannot listen to that channel.</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.options.$error" ng-show="generalForm.options.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chanSpy.auth" aria-label="Auth"><span translate="VOICE.AUTH">Auth</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.chanSpy.auth">\n                                <label translate="VOICE.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.chanSpy.password" placeholder="Password" translate translate-attr-placeholder="VOICE.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newchanSpy  && vm.chanSpy.auth">\n                                <label translate="VOICE.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="VOICE.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chanSpy.record" aria-label="Record"><span translate="VOICE.RECORD">Record</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chanSpy.record" class="md-block">\n                                <label translate="VOICE.RECORDINGFORMAT">recordingFormat</label>\n                                <md-select ng-model="vm.chanSpy.recordingFormat" required>\n                                    <md-option ng-value="\'wav\'">wav</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.recordingFormat.$error" ng-show="generalForm.recordingFormat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.RECORDINGFORMAT_REQUIRED">recordingFormat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.chanSpy.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/contexts/contexts.html",'<div id="contexts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.CONTEXTS">Contexts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedContexts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedContexts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-contexts-count">\n                    <span>{{vm.selectedContexts.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CONTEXTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllContexts()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectContexts()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedContexts" filename="contexts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedContexts($event)" aria-label="delete selected" translate translate-attr-label="CONTEXTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CONTEXT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedContexts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getContexts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.contexts.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="context" md-select-id="id" ng-repeat="context in vm.contexts.rows">\n                                <td md-cell ng-if="context.userpic"><img class="avatar" alt="{{context.name}}" ng-src="api/users/{{context.id}}/avatar" /></td>\n                                <td md-cell ng-if="!context.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{context.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditContext($event, context)" md-cell class="id ">{{context.id}}</td>\n                                <td ng-click="vm.createOrEditContext($event, context)" md-cell class="name ">{{context.name}}</td>\n                                <td ng-click="vm.createOrEditContext($event, context)" md-cell class="description ">{{context.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(context, $event)" translate="VOICE.EDIT_CONTEXT">\n                                                    Edit Context\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(context, $event)" translate="VOICE.DELETE_CONTEXT">\n                                                    Delete Context\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.contexts.count}}" md-on-paginate="vm.getContexts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CONTEXT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CONTEXT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-context-button" ng-click="vm.createOrEditContext($event)" aria-label="add context" translate translate-attr-aria-label="VOICE.ADD_CONTEXT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CONTEXT BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/contexts/create/dialog.html",'<md-dialog class="context-dialog" aria-label="New Context">\n    <form name="contextForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.context.name" required autofocus>\n                <div ng-messages="contextForm.name.$error" ng-show="contextForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.context.description">\n                <div ng-messages="contextForm.description.$error" ng-show="contextForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newContext" ng-click="vm.saveContext()" class="send-button md-accent md-raised" ng-disabled="contextForm.$invalid || contextForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newContext" ng-click="vm.addNewContext()" class="send-button md-accent md-raised" ng-disabled="contextForm.$invalid" aria-label="ADD" translate="VOICE.ADD_CONTEXT" translate-attr-aria-label="VOICE.ADD_CONTEXT">\n                    ADD CONTEXT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newContext" ng-click="vm.deleteContext($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/create/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                <input type="text" name="exten" ng-model="vm.inboundroute.exten" required autofocus>\n                <div ng-messages="inboundrouteForm.exten.$error" ng-show="inboundrouteForm.exten.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.inboundroute.context" required>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteForm.context.$error" ng-show="inboundrouteForm.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.inboundroute.description">\n                <div ng-messages="inboundrouteForm.description.$error" ng-show="inboundrouteForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInboundRoute" ng-click="vm.saveInboundRoute()" class="send-button md-accent md-raised" ng-disabled="inboundrouteForm.$invalid || inboundrouteForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInboundRoute" ng-click="vm.addNewInboundRoute()" class="send-button md-accent md-raised" ng-disabled="inboundrouteForm.$invalid" aria-label="ADD" translate="VOICE.ADD_INBOUNDROUTE" translate-attr-aria-label="VOICE.ADD_INBOUNDROUTE">\n                    ADD INBOUNDROUTE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newInboundRoute" ng-click="vm.deleteInboundRoute($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/agi/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PROJECT">Project</label>\n                <md-select ng-model="vm.agi.project" required autofocus>\n                    <md-option ng-value="\'agi://127.0.0.1/square,{{project.name}}\'" ng-repeat="project in vm.projects">{{ project.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.project.$error" ng-show="inboundrouteFormApp.project.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PROJECT_REQUIRED">Project field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/custom/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.APPLICATION_NAME">Application_Name</label>\n                <input type="text" name="app" ng-model="vm.custom.app" required autofocus>\n                <div ng-messages="inboundrouteFormApp.app.$error" ng-show="inboundrouteFormApp.app.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.APPLICATION_NAME_REQUIRED">Application_Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ARGUMENTS">Arguments</label>\n                <input type="text" name="appdata" ng-model="vm.custom.appdata">\n                <div ng-messages="inboundrouteFormApp.appdata.$error" ng-show="inboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ARGUMENTS_REQUIRED">Arguments field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/dial/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TECHNOLOGY/RESOURCE">Technology/Resource</label>\n                <input type="text" name="tech" ng-model="vm.dial.tech" required autofocus>\n                <div ng-messages="inboundrouteFormApp.tech.$error" ng-show="inboundrouteFormApp.tech.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TECHNOLOGY/RESOURCE_REQUIRED">Technology/Resource field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.dial.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.dial.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.dial.url">\n                <div ng-messages="inboundrouteFormApp.url.$error" ng-show="inboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/externaldial/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TRUNK">Trunk</label>\n                <md-select ng-model="vm.externaldial.trunk" required autofocus>\n                    <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.trunk.$error" ng-show="inboundrouteFormApp.trunk.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONE">Phone</label>\n                <input type="text" name="phone" ng-model="vm.externaldial.phone" required>\n                <div ng-messages="inboundrouteFormApp.phone.$error" ng-show="inboundrouteFormApp.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.externaldial.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.externaldial.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.externaldial.url">\n                <div ng-messages="inboundrouteFormApp.url.$error" ng-show="inboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/goto/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.goto.context" required autofocus>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.context.$error" ng-show="inboundrouteFormApp.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.EXTENSION">Extension</label>\n                <input type="text" name="extension" ng-model="vm.goto.extension" required>\n                <div ng-messages="inboundrouteFormApp.extension.$error" ng-show="inboundrouteFormApp.extension.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.EXTENSION_REQUIRED">Extension field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PRIORITY">Priority</label>\n                <input type="text" name="priority" ng-model="vm.goto.priority" required>\n                <div ng-messages="inboundrouteFormApp.priority.$error" ng-show="inboundrouteFormApp.priority.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PRIORITY_REQUIRED">Priority field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/hangup/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.HANGUP_CAUSE">Hangup_Cause</label>\n                <md-select ng-model="vm.hangup.appdata" required autofocus>\n\n                    <md-option ng-value="\'1\'"> {{ \'VOICE.HANGUPCAUSE_1\' | translate }}</md-option>\n\n                    <md-option ng-value="\'16\'"> {{ \'VOICE.HANGUPCAUSE_16\' | translate }}</md-option>\n\n                    <md-option ng-value="\'17\'"> {{ \'VOICE.HANGUPCAUSE_17\' | translate }}</md-option>\n\n                    <md-option ng-value="\'18\'"> {{ \'VOICE.HANGUPCAUSE_18\' | translate }}</md-option>\n\n                    <md-option ng-value="\'21\'"> {{ \'VOICE.HANGUPCAUSE_21\' | translate }}</md-option>\n\n                    <md-option ng-value="\'22\'"> {{ \'VOICE.HANGUPCAUSE_22\' | translate }}</md-option>\n\n                    <md-option ng-value="\'27\'"> {{ \'VOICE.HANGUPCAUSE_27\' | translate }}</md-option>\n\n                    <md-option ng-value="\'38\'"> {{ \'VOICE.HANGUPCAUSE_38\' | translate }}</md-option>\n\n                    <md-option ng-value="\'41\'"> {{ \'VOICE.HANGUPCAUSE_41\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.appdata.$error" ng-show="inboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.HANGUP_CAUSE_REQUIRED">Hangup_Cause field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/internaldial/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.internaldial.user" required autofocus>\n                    <md-option ng-value="\'SIP/{{user.name}}\'" ng-repeat="user in vm.users">{{ user.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.user.$error" ng-show="inboundrouteFormApp.user.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.internaldial.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.internaldial.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.internaldial.url">\n                <div ng-messages="inboundrouteFormApp.url.$error" ng-show="inboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/interval/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.type">\n                    <md-option ng-value="type" ng-repeat=\'type in vm.types\'>{{ type | ucfirst }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.type === \'list\'">\n                <label translate="TOOLS.INTERVALS">Intervals</label>\n                <md-select ng-model="vm.interval.IntervalId">\n                    <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            \x3c!-- TIMERANGE START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.TIME_RANGE">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n            \x3c!-- TIMERANGE END --\x3e\n\n            \x3c!-- DAYSOFWEEK START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.WEEK_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.dayOfWeekFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.dayOfWeekTo">\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- DAYSOFWEEK END --\x3e\n\n            \x3c!-- MONTHDAY START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTH_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthDayFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthDayTo">\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTHDAY END --\x3e\n\n            \x3c!-- MONTH START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTHS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthTo">\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTH END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/playback/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AUDIO_FILES">Audio_Files</label>\n                <md-select ng-model="vm.playback.appdata" required autofocus>\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}\'" ng-repeat="appdata in vm.sounds">{{ appdata.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.appdata.$error" ng-show="inboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AUDIO_FILES_REQUIRED">Audio_Files field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.playback.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.playback.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/queue/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.QUEUE">Queue</label>\n                <md-select ng-model="vm.queue.queue" required autofocus>\n                    <md-option ng-value="queue.name" ng-repeat="queue in vm.queues">{{ queue.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.queue.$error" ng-show="inboundrouteFormApp.queue.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.queue.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="URL" ng-model="vm.queue.URL">\n                <div ng-messages="inboundrouteFormApp.URL.$error" ng-show="inboundrouteFormApp.URL.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ANNOUNCE_OVERRIDES">Announce_Overrides</label>\n                <md-select ng-model="vm.queue.sound">\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}\'" ng-repeat="sound in vm.sounds">{{ sound.name }}</md-option>\n                    <md-option ng-value="\'\'">None</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.sound.$error" ng-show="inboundrouteFormApp.sound.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ANNOUNCE_OVERRIDES_REQUIRED">Announce_Overrides field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.queue.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AGI">Agi</label>\n                <input type="text" name="agi" ng-model="vm.queue.agi">\n                <div ng-messages="inboundrouteFormApp.agi.$error" ng-show="inboundrouteFormApp.agi.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AGI_REQUIRED">Agi field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MACRO">Macro</label>\n                <input type="text" name="macro" ng-model="vm.queue.macro">\n                <div ng-messages="inboundrouteFormApp.macro.$error" ng-show="inboundrouteFormApp.macro.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MACRO_REQUIRED">Macro field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.GOSUB">GoSub</label>\n                <input type="text" name="gosub" ng-model="vm.queue.gosub">\n                <div ng-messages="inboundrouteFormApp.gosub.$error" ng-show="inboundrouteFormApp.gosub.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.GOSUB_REQUIRED">GoSub field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RULE">Rule</label>\n                <input type="text" name="rule" ng-model="vm.queue.rule">\n                <div ng-messages="inboundrouteFormApp.rule.$error" ng-show="inboundrouteFormApp.rule.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RULE_REQUIRED">Rule field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.POSITION">Position</label>\n                <input type="number" name="position" ng-model="vm.queue.position" min="0">\n                <div ng-messages="inboundrouteFormApp.position.$error" ng-show="inboundrouteFormApp.position.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.POSITION_REQUIRED">Position field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.queue.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/ringgroup/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.ringgroup.multipleUsers" required autofocus multiple>\n                    <md-option ng-value="\'SIP/{{multipleUsers.name}}\'" ng-repeat="multipleUsers in vm.users">{{ multipleUsers.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.multipleUsers.$error" ng-show="inboundrouteFormApp.multipleUsers.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.ringgroup.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.ringgroup.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.ringgroup.url">\n                <div ng-messages="inboundrouteFormApp.url.$error" ng-show="inboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/set/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VARIABLE">Variable</label>\n                <input type="text" name="name" ng-model="vm.set.name" required autofocus>\n                <div ng-messages="inboundrouteFormApp.name.$error" ng-show="inboundrouteFormApp.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VARIABLE_REQUIRED">Variable field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VALUE">Value</label>\n                <input type="text" name="value" ng-model="vm.set.value" required>\n                <div ng-messages="inboundrouteFormApp.value.$error" ng-show="inboundrouteFormApp.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/voicemail/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MAILBOX@CONTEXT">Mailbox@Context</label>\n                <md-select ng-model="vm.voicemail.voiceMail" required autofocus>\n                    <md-option ng-value="\'{{voiceMail.mailbox}}@from-voicemail\'" ng-repeat="voiceMail in vm.voiceMails">{{ voiceMail.mailbox }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.voiceMail.$error" ng-show="inboundrouteFormApp.voiceMail.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MAILBOX@CONTEXT_REQUIRED">Mailbox@Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.voicemail.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/view.html",'<div id="voice-inboundroute" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-inboundroutes-button md-icon-button" aria-label="Go to inboundroutes" ng-click="vm.gotoInboundRoutes()" translate translate-attr-aria-label="VOICE.GO_TO_INBOUNDROUTES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.inboundroute.userpic" class="inboundroute-image" hide-xs>\n                    <img ng-src="api/users/{{vm.inboundroute.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.inboundroute.userpic" class="inboundroute-image" hide-xs>\n                    <img ng-src="assets/images/business/inboundroutes.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.inboundroute.id}} {{vm.inboundroute.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.inboundroute.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveInboundRoute()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (actionsForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="inboundroute-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                                <input type="text" name="exten" ng-model="vm.inboundroute.exten" required autofocus>\n                                <div ng-messages="generalForm.exten.$error" ng-show="generalForm.exten.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.CONTEXT">Context</label>\n                                <md-select ng-model="vm.inboundroute.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.inboundroute.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="inboundroute-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="InboundRouteActionsController as vm_ac" ng-init="vm_ac.init(vm.inboundroute)" class="content" md-background-bg layout="row" layout-align="start start">\n                            \x3c!-- SIDENAV --\x3e\n                            <div class="navigation-simple sidenav main-sidenav md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="20">\n                                \x3c!-- SIDENAV CONTENT --\x3e\n                                <md-list class="no-padding">\n                                    <md-subheader class="md-no-sticky">\n                                        <span>\n          Applications List\n        </span>\n                                    </md-subheader>\n                                </md-list>\n                                <md-divider></md-divider>\n                                <md-list ng-sortable="vm_ac.list">\n                                    <md-list-item class="handle" ng-repeat="a in vm_ac.apps">\n                                        <md-icon md-font-icon="{{a.icon}}" class="s16"></md-icon>\n                                        <p class="text-truncate" translate="VOICE.{{(a.alias || a.appType) | uppercase}}">{{a.alias || a.appType}}</p>\n                                    </md-list-item>\n                                </md-list>\n                                \x3c!-- / SIDENAV CONTENT --\x3e\n                            </div>\n                            \x3c!-- / SIDENAV --\x3e\n                            <div flex></div>\n                            \x3c!-- MAIN --\x3e\n                            <div class="main scrollable md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="75">\n                                <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_ac.selectedInboundRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">Drag & Drop Routing</span>\n                                        <div flex></div>\n                                        <ms-search-bar on-search="vm_ac.query.filter = query" on-collapse="vm_ac.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    </div>\n                                </md-toolbar>\n                                <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_ac.selectedInboundRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">{{vm_ac.selectedInboundRouteApps.length}} {{vm_ac.selectedInboundRouteApps.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                        <div flex></div>\n                                        <md-button class="md-icon-button" ng-click="vm_ac.deleteSelectedInboundRouteApps($event)" aria-label="delete selected" translate translate-attr-label="VOICE.DELETE_SELECTED">\n                                            <md-icon md-font-icon="icon-delete"></md-icon>\n                                        </md-button>\n                                    </div>\n                                </md-toolbar>\n\n                                \x3c!-- QUEUES TABLE --\x3e\n                                <md-table-container>\n                                    <table md-table md-row-select multiple ng-model="vm_ac.selectedInboundRouteApps">\n                                        <thead md-head>\n                                            <tr md-row>\n                                                <th md-column width="10px"></th>\n                                                <th md-column>Type</th>\n                                                <th md-column>Appdata</th>\n                                                <th md-column>Interval</th>\n                                                <th md-column width="10px"></th>\n                                                <th md-column width="10px"></th>\n                                            </tr>\n                                        </thead>\n                                        <tbody md-body ng-sortable="vm_ac.applications">\n                                            <tr md-row md-select="app" md-select-id="id" ng-repeat="app in vm_ac.inboundrouteApps.rows | filter: vm_ac.query.filter">\n                                                <td md-cell>\n                                                    <md-icon md-font-icon="icon-drag-vertical" class="s16 handle"></md-icon>\n                                                </td>\n                                                <td md-cell ng-click="vm_ac.editInboundRouteApp($event, $index)">{{app.app.toLowerCase() === \'agi\' ? \'Cally-Square\' : app.app | ucfirst}}<span ng-if="app.appType.toLowerCase() === \'custom\'">*</span></td>\n                                                <td md-cell ng-click="vm_ac.editInboundRouteApp($event, $index)"><span class="text-truncate" style="width:200px">{{app.appdata}}</span></td>\n                                                <td md-cell ng-click="vm_ac.editInterval($event, $index)">{{app.IntervalId ? \'From List\' : app.interval}}</td>\n                                                <td md-cell>\n                                                    <md-button ng-click="vm_ac.editInterval($event, $index)" class="md-icon-button" aria-label="Interval">\n                                                        <md-icon md-font-icon="icon-timer"></md-icon>\n                                                        <md-tooltip>\n                                                            {{app.IntervalId ? \'From List\' : (app.interval === \'*,*,*,*\' ? \'Always\' : \'Custom\')}}\n                                                        </md-tooltip>\n                                                    </md-button>\n                                                </td>\n                                                <td md-cell class="actions">\n                                                    <md-menu>\n                                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                        </md-button>\n\n                                                        <md-menu-content width="3">\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInboundRouteApp($event, $index)" translate="VOICE.EDIT_APP">\n                                                                    Edit App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInterval($event, $index)" translate="VOICE.EDIT_INTERVAL">\n                                                                    Edit Interval\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.deleteConfirm(app, $index, $event)" translate="VOICE.DELETE_APP">\n                                                                    Delete App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                        </md-menu-content>\n                                                    </md-menu>\n                                                </td>\n                                            </tr>\n                                            <tr md-row ng-hide="vm_ac.inboundrouteApps.rows.length">\n                                                <td md-cell colspan="6">\n                                                    <span class="text-boxed-ligth" translate="VOICE.NO_APPS_AVAILABLE">No apps available</span>\n                                                </td>\n                                            </tr>\n                                        </tbody>\n                                        <tfoot md-foot>\n                                            <tr md-row>\n                                                <td md-cell colspan="7">\n                                                    <span><em translate="VOICE.LEGEND.CUSTOM_APPLICATION">(*) - Custom application.</em></span>\n                                                </td>\n                                            </tr>\n                                        </tfoot>\n                                    </table>\n                                </md-table-container>\n                                \x3c!-- / QUEUES TABLE --\x3e\n\n                                \x3c!-- NO RESULTS --\x3e\n\n                                \x3c!-- / NO RESULTS --\x3e\n                            </div>\n                            \x3c!-- / MAIN --\x3e\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/inboundroutes/inboundroutes.html",'<div id="inboundroutes" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.INBOUNDROUTES">InboundRoutes</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedInboundRoutes.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedInboundRoutes =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-inboundroutes-count">\n                    <span>{{vm.selectedInboundRoutes.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="INBOUNDROUTES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllInboundRoutes()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectInboundRoutes()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedInboundRoutes" filename="inboundroutes.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedInboundRoutes($event)" aria-label="delete selected" translate translate-attr-label="INBOUNDROUTES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- INBOUNDROUTE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedInboundRoutes" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getInboundRoutes">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="exten">{{ \'VOICE.PHONENUMBER\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.inboundroutes.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="inboundroute" md-select-id="id" ng-repeat="inboundroute in vm.inboundroutes.rows">\n                                <td md-cell ng-if="inboundroute.userpic"><img class="avatar" alt="{{inboundroute.name}}" ng-src="api/users/{{inboundroute.id}}/avatar" /></td>\n                                <td md-cell ng-if="!inboundroute.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{inboundroute.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditInboundRoute($event, inboundroute)" md-cell class="id ">{{inboundroute.id}}</td>\n                                <td ng-click="vm.createOrEditInboundRoute($event, inboundroute)" md-cell class="exten ">{{inboundroute.exten}}</td>\n                                <td ng-click="vm.createOrEditInboundRoute($event, inboundroute)" md-cell class="description ">{{inboundroute.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(inboundroute, $event)" translate="VOICE.EDIT_INBOUNDROUTE">\n                                                    Edit InboundRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(inboundroute, $event)" translate="VOICE.DELETE_INBOUNDROUTE">\n                                                    Delete InboundRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.inboundroutes.count}}" md-on-paginate="vm.getInboundRoutes" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / INBOUNDROUTE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD INBOUNDROUTE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-inboundroute-button" ng-click="vm.createOrEditInboundRoute($event)" aria-label="add inboundroute" translate translate-attr-aria-label="VOICE.ADD_INBOUNDROUTE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD INBOUNDROUTE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/internalroutes/create/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                <input type="text" name="exten" ng-model="vm.internalroute.exten" required autofocus>\n                <div ng-messages="internalrouteForm.exten.$error" ng-show="internalrouteForm.exten.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.internalroute.context" required>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteForm.context.$error" ng-show="internalrouteForm.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.internalroute.description">\n                <div ng-messages="internalrouteForm.description.$error" ng-show="internalrouteForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInternalRoute" ng-click="vm.saveInternalRoute()" class="send-button md-accent md-raised" ng-disabled="internalrouteForm.$invalid || internalrouteForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInternalRoute" ng-click="vm.addNewInternalRoute()" class="send-button md-accent md-raised" ng-disabled="internalrouteForm.$invalid" aria-label="ADD" translate="VOICE.ADD_INTERNALROUTE" translate-attr-aria-label="VOICE.ADD_INTERNALROUTE">\n                    ADD INTERNALROUTE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newInternalRoute" ng-click="vm.deleteInternalRoute($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/agi/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PROJECT">Project</label>\n                <md-select ng-model="vm.agi.project" required autofocus>\n                    <md-option ng-value="\'agi://127.0.0.1/square,{{project.name}}\'" ng-repeat="project in vm.projects">{{ project.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.project.$error" ng-show="internalrouteFormApp.project.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PROJECT_REQUIRED">Project field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/custom/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.APPLICATION_NAME">Application_Name</label>\n                <input type="text" name="app" ng-model="vm.custom.app" required autofocus>\n                <div ng-messages="internalrouteFormApp.app.$error" ng-show="internalrouteFormApp.app.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.APPLICATION_NAME_REQUIRED">Application_Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ARGUMENTS">Arguments</label>\n                <input type="text" name="appdata" ng-model="vm.custom.appdata">\n                <div ng-messages="internalrouteFormApp.appdata.$error" ng-show="internalrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ARGUMENTS_REQUIRED">Arguments field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/dial/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TECHNOLOGY/RESOURCE">Technology/Resource</label>\n                <input type="text" name="tech" ng-model="vm.dial.tech" required autofocus>\n                <div ng-messages="internalrouteFormApp.tech.$error" ng-show="internalrouteFormApp.tech.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TECHNOLOGY/RESOURCE_REQUIRED">Technology/Resource field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.dial.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.dial.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.dial.url">\n                <div ng-messages="internalrouteFormApp.url.$error" ng-show="internalrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/externaldial/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TRUNK">Trunk</label>\n                <md-select ng-model="vm.externaldial.trunk" required autofocus>\n                    <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.trunk.$error" ng-show="internalrouteFormApp.trunk.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONE">Phone</label>\n                <input type="text" name="phone" ng-model="vm.externaldial.phone">\n                <div ng-messages="internalrouteFormApp.phone.$error" ng-show="internalrouteFormApp.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.externaldial.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.externaldial.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.externaldial.url">\n                <div ng-messages="internalrouteFormApp.url.$error" ng-show="internalrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/goto/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.goto.context" required autofocus>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.context.$error" ng-show="internalrouteFormApp.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.EXTENSION">Extension</label>\n                <input type="text" name="extension" ng-model="vm.goto.extension" required>\n                <div ng-messages="internalrouteFormApp.extension.$error" ng-show="internalrouteFormApp.extension.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.EXTENSION_REQUIRED">Extension field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PRIORITY">Priority</label>\n                <input type="text" name="priority" ng-model="vm.goto.priority" required>\n                <div ng-messages="internalrouteFormApp.priority.$error" ng-show="internalrouteFormApp.priority.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PRIORITY_REQUIRED">Priority field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/hangup/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.HANGUP_CAUSE">Hangup_Cause</label>\n                <md-select ng-model="vm.hangup.appdata" required autofocus>\n\n                    <md-option ng-value="\'1\'"> {{ \'VOICE.HANGUPCAUSE_1\' | translate }}</md-option>\n\n                    <md-option ng-value="\'16\'"> {{ \'VOICE.HANGUPCAUSE_16\' | translate }}</md-option>\n\n                    <md-option ng-value="\'17\'"> {{ \'VOICE.HANGUPCAUSE_17\' | translate }}</md-option>\n\n                    <md-option ng-value="\'18\'"> {{ \'VOICE.HANGUPCAUSE_18\' | translate }}</md-option>\n\n                    <md-option ng-value="\'21\'"> {{ \'VOICE.HANGUPCAUSE_21\' | translate }}</md-option>\n\n                    <md-option ng-value="\'22\'"> {{ \'VOICE.HANGUPCAUSE_22\' | translate }}</md-option>\n\n                    <md-option ng-value="\'27\'"> {{ \'VOICE.HANGUPCAUSE_27\' | translate }}</md-option>\n\n                    <md-option ng-value="\'38\'"> {{ \'VOICE.HANGUPCAUSE_38\' | translate }}</md-option>\n\n                    <md-option ng-value="\'41\'"> {{ \'VOICE.HANGUPCAUSE_41\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.appdata.$error" ng-show="internalrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.HANGUP_CAUSE_REQUIRED">Hangup_Cause field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/internaldial/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.internaldial.user" required autofocus>\n                    <md-option ng-value="\'SIP/{{user.name}}\'" ng-repeat="user in vm.users">{{ user.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.user.$error" ng-show="internalrouteFormApp.user.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.internaldial.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.internaldial.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.internaldial.url">\n                <div ng-messages="internalrouteFormApp.url.$error" ng-show="internalrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/interval/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.type">\n                    <md-option ng-value="type" ng-repeat=\'type in vm.types\'>{{ type | ucfirst }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.type === \'list\'">\n                <label translate="TOOLS.INTERVALS">Intervals</label>\n                <md-select ng-model="vm.interval.IntervalId">\n                    <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            \x3c!-- TIMERANGE START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.TIME_RANGE">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n            \x3c!-- TIMERANGE END --\x3e\n\n            \x3c!-- DAYSOFWEEK START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.WEEK_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.dayOfWeekFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.dayOfWeekTo">\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- DAYSOFWEEK END --\x3e\n\n            \x3c!-- MONTHDAY START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTH_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthDayFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthDayTo">\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTHDAY END --\x3e\n\n            \x3c!-- MONTH START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTHS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthTo">\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTH END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/playback/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AUDIO_FILES">Audio_Files</label>\n                <md-select ng-model="vm.playback.appdata" required autofocus>\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}\'" ng-repeat="appdata in vm.sounds">{{ appdata.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.appdata.$error" ng-show="internalrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AUDIO_FILES_REQUIRED">Audio_Files field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.playback.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.playback.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/queue/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.QUEUE">Queue</label>\n                <md-select ng-model="vm.queue.queue" required autofocus>\n                    <md-option ng-value="queue.name" ng-repeat="queue in vm.queues">{{ queue.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.queue.$error" ng-show="internalrouteFormApp.queue.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.queue.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="URL" ng-model="vm.queue.URL">\n                <div ng-messages="internalrouteFormApp.URL.$error" ng-show="internalrouteFormApp.URL.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ANNOUNCE_OVERRIDES">Announce_Overrides</label>\n                <md-select ng-model="vm.queue.sound">\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}\'" ng-repeat="sound in vm.sounds">{{ sound.name }}</md-option>\n                    <md-option ng-value="\'\'">None</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.sound.$error" ng-show="internalrouteFormApp.sound.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ANNOUNCE_OVERRIDES_REQUIRED">Announce_Overrides field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.queue.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AGI">Agi</label>\n                <input type="text" name="agi" ng-model="vm.queue.agi">\n                <div ng-messages="internalrouteFormApp.agi.$error" ng-show="internalrouteFormApp.agi.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AGI_REQUIRED">Agi field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MACRO">Macro</label>\n                <input type="text" name="macro" ng-model="vm.queue.macro">\n                <div ng-messages="internalrouteFormApp.macro.$error" ng-show="internalrouteFormApp.macro.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MACRO_REQUIRED">Macro field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.GOSUB">GoSub</label>\n                <input type="text" name="gosub" ng-model="vm.queue.gosub">\n                <div ng-messages="internalrouteFormApp.gosub.$error" ng-show="internalrouteFormApp.gosub.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.GOSUB_REQUIRED">GoSub field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RULE">Rule</label>\n                <input type="text" name="rule" ng-model="vm.queue.rule">\n                <div ng-messages="internalrouteFormApp.rule.$error" ng-show="internalrouteFormApp.rule.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RULE_REQUIRED">Rule field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.POSITION">Position</label>\n                <input type="number" name="position" ng-model="vm.queue.position" min="0">\n                <div ng-messages="internalrouteFormApp.position.$error" ng-show="internalrouteFormApp.position.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.POSITION_REQUIRED">Position field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.queue.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/ringgroup/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.ringgroup.multipleUsers" required autofocus multiple>\n                    <md-option ng-value="\'SIP/{{multipleUsers.name}}\'" ng-repeat="multipleUsers in vm.users">{{ multipleUsers.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.multipleUsers.$error" ng-show="internalrouteFormApp.multipleUsers.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.ringgroup.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.ringgroup.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.ringgroup.url">\n                <div ng-messages="internalrouteFormApp.url.$error" ng-show="internalrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/set/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VARIABLE">Variable</label>\n                <input type="text" name="name" ng-model="vm.set.name" required autofocus>\n                <div ng-messages="internalrouteFormApp.name.$error" ng-show="internalrouteFormApp.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VARIABLE_REQUIRED">Variable field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VALUE">Value</label>\n                <input type="text" name="value" ng-model="vm.set.value" required>\n                <div ng-messages="internalrouteFormApp.value.$error" ng-show="internalrouteFormApp.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/voicemail/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MAILBOX@CONTEXT">Mailbox@Context</label>\n                <md-select ng-model="vm.voicemail.voiceMail" required autofocus>\n                    <md-option ng-value="\'{{voiceMail.mailbox}}@from-voicemail\'" ng-repeat="voiceMail in vm.voiceMails">{{ voiceMail.mailbox }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.voiceMail.$error" ng-show="internalrouteFormApp.voiceMail.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MAILBOX@CONTEXT_REQUIRED">Mailbox@Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.voicemail.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/view.html",'<div id="voice-internalroute" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-internalroutes-button md-icon-button" aria-label="Go to internalroutes" ng-click="vm.gotoInternalRoutes()" translate translate-attr-aria-label="VOICE.GO_TO_INTERNALROUTES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.internalroute.userpic" class="internalroute-image" hide-xs>\n                    <img ng-src="api/users/{{vm.internalroute.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.internalroute.userpic" class="internalroute-image" hide-xs>\n                    <img ng-src="assets/images/business/internalroutes.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.internalroute.id}} {{vm.internalroute.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.internalroute.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveInternalRoute()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (actionsForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="internalroute-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                                <input type="text" name="exten" ng-model="vm.internalroute.exten" required autofocus>\n                                <div ng-messages="generalForm.exten.$error" ng-show="generalForm.exten.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.CONTEXT">Context</label>\n                                <md-select ng-model="vm.internalroute.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.internalroute.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="internalroute-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="InternalRouteActionsController as vm_ac" ng-init="vm_ac.init(vm.internalroute)" class="content" md-background-bg layout="row" layout-align="start start">\n                            \x3c!-- SIDENAV --\x3e\n                            <div class="navigation-simple sidenav main-sidenav md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="20">\n                                \x3c!-- SIDENAV CONTENT --\x3e\n                                <md-list class="no-padding">\n                                    <md-subheader class="md-no-sticky">\n                                        <span>\n          Applications List\n        </span>\n                                    </md-subheader>\n                                </md-list>\n                                <md-divider></md-divider>\n                                <md-list ng-sortable="vm_ac.list">\n                                    <md-list-item class="handle" ng-repeat="a in vm_ac.apps">\n                                        <md-icon md-font-icon="{{a.icon}}" class="s16"></md-icon>\n                                        <p class="text-truncate" translate="VOICE.{{(a.alias || a.appType) | uppercase}}">{{a.alias || a.appType}}</p>\n                                    </md-list-item>\n                                </md-list>\n                                \x3c!-- / SIDENAV CONTENT --\x3e\n                            </div>\n                            \x3c!-- / SIDENAV --\x3e\n                            <div flex></div>\n                            \x3c!-- MAIN --\x3e\n                            <div class="main scrollable md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="75">\n                                <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_ac.selectedInternalRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">Drag & Drop Routing</span>\n                                        <div flex></div>\n                                        <ms-search-bar on-search="vm_ac.query.filter = query" on-collapse="vm_ac.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    </div>\n                                </md-toolbar>\n                                <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_ac.selectedInternalRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">{{vm_ac.selectedInternalRouteApps.length}} {{vm_ac.selectedInternalRouteApps.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                        <div flex></div>\n                                        <md-button class="md-icon-button" ng-click="vm_ac.deleteSelectedInternalRouteApps($event)" aria-label="delete selected" translate translate-attr-label="VOICE.DELETE_SELECTED">\n                                            <md-icon md-font-icon="icon-delete"></md-icon>\n                                        </md-button>\n                                    </div>\n                                </md-toolbar>\n\n                                \x3c!-- QUEUES TABLE --\x3e\n                                <md-table-container>\n                                    <table md-table md-row-select multiple ng-model="vm_ac.selectedInternalRouteApps">\n                                        <thead md-head>\n                                            <tr md-row>\n                                                <th md-column width="10px"></th>\n                                                <th md-column>Type</th>\n                                                <th md-column>Appdata</th>\n                                                <th md-column>Interval</th>\n                                                <th md-column width="10px"></th>\n                                                <th md-column width="10px"></th>\n                                            </tr>\n                                        </thead>\n                                        <tbody md-body ng-sortable="vm_ac.applications">\n                                            <tr md-row md-select="app" md-select-id="id" ng-repeat="app in vm_ac.internalrouteApps.rows | filter: vm_ac.query.filter">\n                                                <td md-cell>\n                                                    <md-icon md-font-icon="icon-drag-vertical" class="s16 handle"></md-icon>\n                                                </td>\n                                                <td md-cell ng-click="vm_ac.editInternalRouteApp($event, $index)">{{app.app.toLowerCase() === \'agi\' ? \'Cally-Square\' : app.app | ucfirst}}<span ng-if="app.appType.toLowerCase() === \'custom\'">*</span></td>\n                                                <td md-cell ng-click="vm_ac.editInternalRouteApp($event, $index)"><span class="text-truncate" style="width:200px">{{app.appdata}}</span></td>\n                                                <td md-cell ng-click="vm_ac.editInterval($event, $index)">{{app.IntervalId ? \'From List\' : app.interval}}</td>\n                                                <td md-cell>\n                                                    <md-button ng-click="vm_ac.editInterval($event, $index)" class="md-icon-button" aria-label="Interval">\n                                                        <md-icon md-font-icon="icon-timer"></md-icon>\n                                                        <md-tooltip>\n                                                            {{app.IntervalId ? \'From List\' : (app.interval === \'*,*,*,*\' ? \'Always\' : \'Custom\')}}\n                                                        </md-tooltip>\n                                                    </md-button>\n                                                </td>\n                                                <td md-cell class="actions">\n                                                    <md-menu>\n                                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                        </md-button>\n\n                                                        <md-menu-content width="3">\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInternalRouteApp($event, $index)" translate="VOICE.EDIT_APP">\n                                                                    Edit App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInterval($event, $index)" translate="VOICE.EDIT_INTERVAL">\n                                                                    Edit Interval\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.deleteConfirm(app, $index, $event)" translate="VOICE.DELETE_APP">\n                                                                    Delete App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                        </md-menu-content>\n                                                    </md-menu>\n                                                </td>\n                                            </tr>\n                                            <tr md-row ng-hide="vm_ac.internalrouteApps.rows.length">\n                                                <td md-cell colspan="6">\n                                                    <span class="text-boxed-ligth" translate="VOICE.NO_APPS_AVAILABLE">No apps available</span>\n                                                </td>\n                                            </tr>\n                                        </tbody>\n                                        <tfoot md-foot>\n                                            <tr md-row>\n                                                <td md-cell colspan="7">\n                                                    <span><em translate="VOICE.LEGEND.CUSTOM_APPLICATION">(*) - Custom application.</em></span>\n                                                </td>\n                                            </tr>\n                                        </tfoot>\n                                    </table>\n                                </md-table-container>\n                                \x3c!-- / QUEUES TABLE --\x3e\n\n                                \x3c!-- NO RESULTS --\x3e\n\n                                \x3c!-- / NO RESULTS --\x3e\n                            </div>\n                            \x3c!-- / MAIN --\x3e\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/internalroutes/internalroutes.html",'<div id="internalroutes" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.INTERNALROUTES">InternalRoutes</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedInternalRoutes.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedInternalRoutes =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-internalroutes-count">\n                    <span>{{vm.selectedInternalRoutes.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="INTERNALROUTES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllInternalRoutes()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectInternalRoutes()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedInternalRoutes" filename="internalroutes.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedInternalRoutes($event)" aria-label="delete selected" translate translate-attr-label="INTERNALROUTES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- INTERNALROUTE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedInternalRoutes" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getInternalRoutes">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="exten">{{ \'VOICE.PHONENUMBER\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.internalroutes.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="internalroute" md-select-id="id" ng-repeat="internalroute in vm.internalroutes.rows">\n                                <td md-cell ng-if="internalroute.userpic"><img class="avatar" alt="{{internalroute.name}}" ng-src="api/users/{{internalroute.id}}/avatar" /></td>\n                                <td md-cell ng-if="!internalroute.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{internalroute.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditInternalRoute($event, internalroute)" md-cell class="id ">{{internalroute.id}}</td>\n                                <td ng-click="vm.createOrEditInternalRoute($event, internalroute)" md-cell class="exten ">{{internalroute.exten}}</td>\n                                <td ng-click="vm.createOrEditInternalRoute($event, internalroute)" md-cell class="description ">{{internalroute.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(internalroute, $event)" translate="VOICE.EDIT_INTERNALROUTE">\n                                                    Edit InternalRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(internalroute, $event)" translate="VOICE.DELETE_INTERNALROUTE">\n                                                    Delete InternalRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.internalroutes.count}}" md-on-paginate="vm.getInternalRoutes" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / INTERNALROUTE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD INTERNALROUTE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-internalroute-button" ng-click="vm.createOrEditInternalRoute($event)" aria-label="add internalroute" translate translate-attr-aria-label="VOICE.ADD_INTERNALROUTE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD INTERNALROUTE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/musiconholds/create/dialog.html",'<md-dialog class="musiconhold-dialog" aria-label="New MusicOnHold">\n    <form name="musiconholdForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.musiconhold.name" required autofocus ng-disabled="!vm.newMusicOnHold">\n                <div ng-messages="musiconholdForm.name.$error" ng-show="musiconholdForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MODE">Mode</label>\n                <md-select ng-model="vm.musiconhold.mode" required ng-disabled="!vm.newMusicOnHold">\n\n                    <md-option ng-value="\'files\'"> {{ \'VOICE.FILES\' | translate }}</md-option>\n\n                    <md-option ng-value="\'custom\'"> {{ \'VOICE.CUSTOM\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="musiconholdForm.mode.$error" ng-show="musiconholdForm.mode.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MODE_REQUIRED">Mode field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.musiconhold.mode == \'custom\'" class="md-block">\n                <label translate="VOICE.APPLICATION">Application</label>\n                <input type="text" name="application" ng-model="vm.musiconhold.application" required>\n                <div ng-messages="musiconholdForm.application.$error" ng-show="musiconholdForm.application.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.APPLICATION_REQUIRED">Application field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.musiconhold.mode == \'files\'" class="md-block">\n                <label translate="VOICE.SORT">Sort</label>\n                <md-select ng-model="vm.musiconhold.sort">\n\n                    <md-option ng-value="\'random\'"> {{ \'VOICE.RANDOM\' | translate }}</md-option>\n\n                    <md-option ng-value="\'alpha\'"> {{ \'VOICE.ALPHABETICAL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="musiconholdForm.sort.$error" ng-show="musiconholdForm.sort.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.SORT_REQUIRED">Sort field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMusicOnHold" ng-click="vm.saveMusicOnHold()" class="send-button md-accent md-raised" ng-disabled="musiconholdForm.$invalid || musiconholdForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMusicOnHold" ng-click="vm.addNewMusicOnHold()" class="send-button md-accent md-raised" ng-disabled="musiconholdForm.$invalid" aria-label="ADD" translate="VOICE.ADD_MUSICONHOLD" translate-attr-aria-label="VOICE.ADD_MUSICONHOLD">\n                    ADD MUSICONHOLD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMusicOnHold" ng-click="vm.deleteMusicOnHold($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/musiconholds/edit/mohSounds/dialog.html",'<md-dialog class="mohSound-dialog" aria-label="New MohSound">\n    <form name="mohSoundForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.FILE">File</label>\n                <md-select ng-model="vm.mohSound.id" autofocus>\n                    <md-option ng-value="id.id" ng-repeat="id in vm.sounds">{{ id.name }}</md-option>\n                </md-select>\n                <div ng-messages="mohSoundForm.id.$error" ng-show="mohSoundForm.id.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.FILE_REQUIRED">File field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMohSound" ng-click="vm.saveMohSound()" class="send-button md-accent md-raised" ng-disabled="mohSoundForm.$invalid || mohSoundForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMohSound" ng-click="vm.addNewMohSound()" class="send-button md-accent md-raised" ng-disabled="mohSoundForm.$invalid" aria-label="ADD" translate="VOICE.ADD_MOHSOUND" translate-attr-aria-label="VOICE.ADD_MOHSOUND">\n                    ADD MOHSOUND\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMohSound" ng-click="vm.deleteMohSound($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/musiconholds/edit/view.html",'<div id="voice-musiconhold" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-musiconholds-button md-icon-button" aria-label="Go to musiconholds" ng-click="vm.gotoMusicOnHolds()" translate translate-attr-aria-label="VOICE.GO_TO_MUSICONHOLDS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.musiconhold.userpic" class="musiconhold-image" hide-xs>\n                    <img ng-src="api/users/{{vm.musiconhold.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.musiconhold.userpic" class="musiconhold-image" hide-xs>\n                    <img ng-src="assets/images/business/musiconholds.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.musiconhold.id}} {{vm.musiconhold.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.musiconhold.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveMusicOnHold()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (mohSoundsForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="musiconhold-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.musiconhold.name" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MODE">Mode</label>\n                                <md-select ng-model="vm.musiconhold.mode" required ng-disabled="true">\n\n                                    <md-option ng-value="\'files\'"> {{ \'VOICE.FILES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'custom\'"> {{ \'VOICE.CUSTOM\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.mode.$error" ng-show="generalForm.mode.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MODE_REQUIRED">Mode field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.musiconhold.mode == \'custom\'" class="md-block">\n                                <label translate="VOICE.APPLICATION">Application</label>\n                                <input type="text" name="application" ng-model="vm.musiconhold.application" required>\n                                <div ng-messages="generalForm.application.$error" ng-show="generalForm.application.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.APPLICATION_REQUIRED">Application field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.musiconhold.mode == \'files\'" class="md-block">\n                                <label translate="VOICE.SORT">Sort</label>\n                                <md-select ng-model="vm.musiconhold.sort">\n\n                                    <md-option ng-value="\'random\'"> {{ \'VOICE.RANDOM\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'alpha\'"> {{ \'VOICE.ALPHABETICAL\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.sort.$error" ng-show="generalForm.sort.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SORT_REQUIRED">Sort field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.AUDIOFILES">AUDIOFILES</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="musiconhold-detail-form-container mohsounds md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="MusicOnHoldMohSoundsController as vm_dc" ng-init="vm_dc.init(vm.musiconhold)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedMusicOnHoldMohSounds.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="VOICE.MOHSOUNDS">MohSounds</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditMusicOnHoldMohSound($event)" aria-label="add mohSound" translate translate-attr-label="VOICE.ADD_MOHSOUND">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedMusicOnHoldMohSounds.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedMusicOnHoldMohSounds.length}} {{vm_dc.selectedMusicOnHoldMohSounds.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedMusicOnHoldMohSounds($event)" aria-label="delete selected" translate translate-attr-label="MUSICONHOLDS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedMusicOnHoldMohSounds" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getMusicOnHoldMohSounds">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                            <th md-column md-order-by="audio">{{ \'VOICE.AUDIO\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'VOICE.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="mohSound" md-select-id="id" ng-repeat="mohSound in vm_dc.musiconholdMohSounds.rows">\n                                            <td md-cell>{{mohSound.id}}</td>\n                                            <td md-cell><audio controls><source ng-src="{{\'api/sounds/\' + mohSound.id + \'/download\'}}" type="audio/wav" preload="none"></source>Your browser does not support the audio element.</audio></td>\n                                            <td md-cell>{{mohSound.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-href="api/mohs/{{mohSound.id}}/download" target="_blank" translate="VOICE.DOWNLOAD_MOHSOUND">\n                                                                Download MohSound\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(mohSound, $event)" translate="VOICE.DELETE_MOHSOUND">\n                                                                Delete MohSound\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.musiconholdMohSounds.rows.length">\n                                            <td md-cell colspan="6">\n                                                <span class="text-boxed-ligth" translate="VOICE.NO_MOHSOUND_AVAILABLE">No mohsound available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.musiconholdMohSounds.count}}" md-on-paginate="vm_dc.getMusicOnHoldMohSounds" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/musiconholds/musiconholds.html",'<div id="musiconholds" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.MUSICONHOLDS">MusicOnHolds</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedMusicOnHolds.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedMusicOnHolds =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-musiconholds-count">\n                    <span>{{vm.selectedMusicOnHolds.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="MUSICONHOLDS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllMusicOnHolds()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectMusicOnHolds()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedMusicOnHolds" filename="musiconholds.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedMusicOnHolds($event)" aria-label="delete selected" translate translate-attr-label="MUSICONHOLDS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- MUSICONHOLD TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedMusicOnHolds" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getMusicOnHolds">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="mode">{{ \'VOICE.MODE\' | translate }}</th>\n                                <th md-column md-order-by="sort">{{ \'VOICE.SORT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.musiconholds.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="musiconhold" md-select-id="id" ng-repeat="musiconhold in vm.musiconholds.rows">\n                                <td md-cell ng-if="musiconhold.userpic"><img class="avatar" alt="{{musiconhold.name}}" ng-src="api/users/{{musiconhold.id}}/avatar" /></td>\n                                <td md-cell ng-if="!musiconhold.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{musiconhold.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditMusicOnHold($event, musiconhold)" md-cell class="id ">{{musiconhold.id}}</td>\n                                <td ng-click="vm.createOrEditMusicOnHold($event, musiconhold)" md-cell class="name ">{{musiconhold.name}}</td>\n                                <td ng-click="vm.createOrEditMusicOnHold($event, musiconhold)" md-cell class="mode ">{{ \'VOICE.\' + vm.arraymode[musiconhold.mode].option | uppercase | translate }}</td>\n                                <td ng-click="vm.createOrEditMusicOnHold($event, musiconhold)" md-cell class="sort ">{{ \'VOICE.\' + vm.arraysort[musiconhold.sort].option | uppercase | translate }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(musiconhold, $event)" translate="VOICE.EDIT_MUSICONHOLD">\n                                                    Edit MusicOnHold\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(musiconhold, $event)" translate="VOICE.DELETE_MUSICONHOLD">\n                                                    Delete MusicOnHold\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.musiconholds.count}}" md-on-paginate="vm.getMusicOnHolds" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / MUSICONHOLD TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD MUSICONHOLD BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-musiconhold-button" ng-click="vm.createOrEditMusicOnHold($event)" aria-label="add musiconhold" translate translate-attr-aria-label="VOICE.ADD_MUSICONHOLD">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD MUSICONHOLD BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/outboundroutes/create/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                <input type="text" name="exten" ng-model="vm.outboundroute.exten" required autofocus>\n                <div ng-messages="outboundrouteForm.exten.$error" ng-show="outboundrouteForm.exten.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.outboundroute.context" required>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteForm.context.$error" ng-show="outboundrouteForm.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.outboundroute.description">\n                <div ng-messages="outboundrouteForm.description.$error" ng-show="outboundrouteForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOutboundRoute" ng-click="vm.saveOutboundRoute()" class="send-button md-accent md-raised" ng-disabled="outboundrouteForm.$invalid || outboundrouteForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOutboundRoute" ng-click="vm.addNewOutboundRoute()" class="send-button md-accent md-raised" ng-disabled="outboundrouteForm.$invalid" aria-label="ADD" translate="VOICE.ADD_OUTBOUNDROUTE" translate-attr-aria-label="VOICE.ADD_OUTBOUNDROUTE">\n                    ADD OUTBOUNDROUTE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOutboundRoute" ng-click="vm.deleteOutboundRoute($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/agi/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PROJECT">Project</label>\n                <md-select ng-model="vm.agi.project" required autofocus>\n                    <md-option ng-value="\'agi://127.0.0.1/square,{{project.name}}\'" ng-repeat="project in vm.projects">{{ project.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.project.$error" ng-show="outboundrouteFormApp.project.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PROJECT_REQUIRED">Project field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/custom/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.APPLICATION_NAME">Application_Name</label>\n                <input type="text" name="app" ng-model="vm.custom.app" required autofocus>\n                <div ng-messages="outboundrouteFormApp.app.$error" ng-show="outboundrouteFormApp.app.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.APPLICATION_NAME_REQUIRED">Application_Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ARGUMENTS">Arguments</label>\n                <input type="text" name="appdata" ng-model="vm.custom.appdata">\n                <div ng-messages="outboundrouteFormApp.appdata.$error" ng-show="outboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ARGUMENTS_REQUIRED">Arguments field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/dial/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TECHNOLOGY/RESOURCE">Technology/Resource</label>\n                <input type="text" name="tech" ng-model="vm.dial.tech" required autofocus>\n                <div ng-messages="outboundrouteFormApp.tech.$error" ng-show="outboundrouteFormApp.tech.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TECHNOLOGY/RESOURCE_REQUIRED">Technology/Resource field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.dial.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.dial.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.dial.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/externaldial/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TRUNK">Trunk</label>\n                <md-select ng-model="vm.externaldial.trunk" required autofocus>\n                    <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.trunk.$error" ng-show="outboundrouteFormApp.trunk.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONE">Phone</label>\n                <input type="text" name="phone" ng-model="vm.externaldial.phone">\n                <div ng-messages="outboundrouteFormApp.phone.$error" ng-show="outboundrouteFormApp.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.externaldial.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.externaldial.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.externaldial.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/goto/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.goto.context" required autofocus>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.context.$error" ng-show="outboundrouteFormApp.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.EXTENSION">Extension</label>\n                <input type="text" name="extension" ng-model="vm.goto.extension" required>\n                <div ng-messages="outboundrouteFormApp.extension.$error" ng-show="outboundrouteFormApp.extension.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.EXTENSION_REQUIRED">Extension field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PRIORITY">Priority</label>\n                <input type="text" name="priority" ng-model="vm.goto.priority" required>\n                <div ng-messages="outboundrouteFormApp.priority.$error" ng-show="outboundrouteFormApp.priority.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PRIORITY_REQUIRED">Priority field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/hangup/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.HANGUP_CAUSE">Hangup_Cause</label>\n                <md-select ng-model="vm.hangup.appdata" required autofocus>\n\n                    <md-option ng-value="\'1\'"> {{ \'VOICE.HANGUPCAUSE_1\' | translate }}</md-option>\n\n                    <md-option ng-value="\'16\'"> {{ \'VOICE.HANGUPCAUSE_16\' | translate }}</md-option>\n\n                    <md-option ng-value="\'17\'"> {{ \'VOICE.HANGUPCAUSE_17\' | translate }}</md-option>\n\n                    <md-option ng-value="\'18\'"> {{ \'VOICE.HANGUPCAUSE_18\' | translate }}</md-option>\n\n                    <md-option ng-value="\'21\'"> {{ \'VOICE.HANGUPCAUSE_21\' | translate }}</md-option>\n\n                    <md-option ng-value="\'22\'"> {{ \'VOICE.HANGUPCAUSE_22\' | translate }}</md-option>\n\n                    <md-option ng-value="\'27\'"> {{ \'VOICE.HANGUPCAUSE_27\' | translate }}</md-option>\n\n                    <md-option ng-value="\'38\'"> {{ \'VOICE.HANGUPCAUSE_38\' | translate }}</md-option>\n\n                    <md-option ng-value="\'41\'"> {{ \'VOICE.HANGUPCAUSE_41\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.appdata.$error" ng-show="outboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.HANGUP_CAUSE_REQUIRED">Hangup_Cause field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/internaldial/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.internaldial.user" required autofocus>\n                    <md-option ng-value="\'SIP/{{user.name}}\'" ng-repeat="user in vm.users">{{ user.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.user.$error" ng-show="outboundrouteFormApp.user.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.internaldial.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.internaldial.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.internaldial.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/interval/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.type">\n                    <md-option ng-value="type" ng-repeat=\'type in vm.types\'>{{ type | ucfirst }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.type === \'list\'">\n                <label translate="TOOLS.INTERVALS">Intervals</label>\n                <md-select ng-model="vm.interval.IntervalId">\n                    <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            \x3c!-- TIMERANGE START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.TIME_RANGE">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n            \x3c!-- TIMERANGE END --\x3e\n\n            \x3c!-- DAYSOFWEEK START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.WEEK_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.dayOfWeekFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.dayOfWeekTo">\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- DAYSOFWEEK END --\x3e\n\n            \x3c!-- MONTHDAY START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTH_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthDayFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthDayTo">\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTHDAY END --\x3e\n\n            \x3c!-- MONTH START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTHS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthTo">\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTH END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/outbounddial/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TRUNK">Trunk</label>\n                <md-select ng-model="vm.outbounddial.trunk" required autofocus>\n                    <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.trunk.$error" ng-show="outboundrouteFormApp.trunk.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CALLER_ID">Caller_ID</label>\n                <input type="text" name="callerID" ng-model="vm.outbounddial.callerID">\n                <div ng-messages="outboundrouteFormApp.callerID.$error" ng-show="outboundrouteFormApp.callerID.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CALLER_ID_REQUIRED">Caller_ID field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PREFIX">Prefix</label>\n                <input type="text" name="prefix" ng-model="vm.outbounddial.prefix">\n                <div ng-messages="outboundrouteFormApp.prefix.$error" ng-show="outboundrouteFormApp.prefix.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PREFIX_REQUIRED">Prefix field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CUTDIGITS">CutDigits</label>\n                <input type="number" name="cutdigits" ng-model="vm.outbounddial.cutdigits" min="0">\n                <div ng-messages="outboundrouteFormApp.cutdigits.$error" ng-show="outboundrouteFormApp.cutdigits.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CUTDIGITS_REQUIRED">CutDigits field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RECORDING">Recording</label>\n                <md-select ng-model="vm.outbounddial.recordingFormat" required>\n                    <md-option ng-value="\'none\'">none</md-option>\n                    <md-option ng-value="\'wav\'">wav</md-option>\n                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                </md-select>\n                <div class="hint"><span translate="VOICE.HELP.RECORDING"></span></div>\n                <div ng-messages="outboundrouteFormApp.recordingFormat.$error" ng-show="outboundrouteFormApp.recordingFormat.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RECORDING_REQUIRED">Recording field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TAGS">Tags</label>\n                <md-select ng-model="vm.outbounddial.tag">\n                    <md-option ng-value="tag.name" ng-repeat="tag in vm.tags">{{ tag.name }}</md-option>\n                    <md-option ng-value="\'--\'">None</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.tag.$error" ng-show="outboundrouteFormApp.tag.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TAGS_REQUIRED">Tags field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.outbounddial.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.outbounddial.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.outbounddial.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/playback/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AUDIO_FILES">Audio_Files</label>\n                <md-select ng-model="vm.playback.appdata" required autofocus>\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}\'" ng-repeat="appdata in vm.sounds">{{ appdata.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.appdata.$error" ng-show="outboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AUDIO_FILES_REQUIRED">Audio_Files field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.playback.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.playback.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/queue/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.QUEUE">Queue</label>\n                <md-select ng-model="vm.queue.queue" required autofocus>\n                    <md-option ng-value="queue.name" ng-repeat="queue in vm.queues">{{ queue.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.queue.$error" ng-show="outboundrouteFormApp.queue.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.queue.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="URL" ng-model="vm.queue.URL">\n                <div ng-messages="outboundrouteFormApp.URL.$error" ng-show="outboundrouteFormApp.URL.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ANNOUNCE_OVERRIDES">Announce_Overrides</label>\n                <md-select ng-model="vm.queue.sound">\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}\'" ng-repeat="sound in vm.sounds">{{ sound.name }}</md-option>\n                    <md-option ng-value="\'\'">None</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.sound.$error" ng-show="outboundrouteFormApp.sound.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ANNOUNCE_OVERRIDES_REQUIRED">Announce_Overrides field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.queue.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AGI">Agi</label>\n                <input type="text" name="agi" ng-model="vm.queue.agi">\n                <div ng-messages="outboundrouteFormApp.agi.$error" ng-show="outboundrouteFormApp.agi.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AGI_REQUIRED">Agi field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MACRO">Macro</label>\n                <input type="text" name="macro" ng-model="vm.queue.macro">\n                <div ng-messages="outboundrouteFormApp.macro.$error" ng-show="outboundrouteFormApp.macro.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MACRO_REQUIRED">Macro field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.GOSUB">GoSub</label>\n                <input type="text" name="gosub" ng-model="vm.queue.gosub">\n                <div ng-messages="outboundrouteFormApp.gosub.$error" ng-show="outboundrouteFormApp.gosub.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.GOSUB_REQUIRED">GoSub field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RULE">Rule</label>\n                <input type="text" name="rule" ng-model="vm.queue.rule">\n                <div ng-messages="outboundrouteFormApp.rule.$error" ng-show="outboundrouteFormApp.rule.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RULE_REQUIRED">Rule field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.POSITION">Position</label>\n                <input type="number" name="position" ng-model="vm.queue.position" min="0">\n                <div ng-messages="outboundrouteFormApp.position.$error" ng-show="outboundrouteFormApp.position.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.POSITION_REQUIRED">Position field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.queue.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/ringgroup/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.ringgroup.multipleUsers" required autofocus multiple>\n                    <md-option ng-value="\'SIP/{{multipleUsers.name}}\'" ng-repeat="multipleUsers in vm.users">{{ multipleUsers.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.multipleUsers.$error" ng-show="outboundrouteFormApp.multipleUsers.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.ringgroup.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.ringgroup.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.ringgroup.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/set/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VARIABLE">Variable</label>\n                <input type="text" name="name" ng-model="vm.set.name" required autofocus>\n                <div ng-messages="outboundrouteFormApp.name.$error" ng-show="outboundrouteFormApp.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VARIABLE_REQUIRED">Variable field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VALUE">Value</label>\n                <input type="text" name="value" ng-model="vm.set.value" required>\n                <div ng-messages="outboundrouteFormApp.value.$error" ng-show="outboundrouteFormApp.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/voicemail/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MAILBOX@CONTEXT">Mailbox@Context</label>\n                <md-select ng-model="vm.voicemail.voiceMail" required autofocus>\n                    <md-option ng-value="\'{{voiceMail.mailbox}}@from-voicemail\'" ng-repeat="voiceMail in vm.voiceMails">{{ voiceMail.mailbox }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.voiceMail.$error" ng-show="outboundrouteFormApp.voiceMail.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MAILBOX@CONTEXT_REQUIRED">Mailbox@Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.voicemail.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/view.html",'<div id="voice-outboundroute" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-outboundroutes-button md-icon-button" aria-label="Go to outboundroutes" ng-click="vm.gotoOutboundRoutes()" translate translate-attr-aria-label="VOICE.GO_TO_OUTBOUNDROUTES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.outboundroute.userpic" class="outboundroute-image" hide-xs>\n                    <img ng-src="api/users/{{vm.outboundroute.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.outboundroute.userpic" class="outboundroute-image" hide-xs>\n                    <img ng-src="assets/images/business/outboundroutes.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.outboundroute.id}} {{vm.outboundroute.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.outboundroute.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveOutboundRoute()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (actionsForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="outboundroute-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                                <input type="text" name="exten" ng-model="vm.outboundroute.exten" required autofocus>\n                                <div ng-messages="generalForm.exten.$error" ng-show="generalForm.exten.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.CONTEXT">Context</label>\n                                <md-select ng-model="vm.outboundroute.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.outboundroute.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="outboundroute-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="OutboundRouteActionsController as vm_ac" ng-init="vm_ac.init(vm.outboundroute)" class="content" md-background-bg layout="row" layout-align="start start">\n                            \x3c!-- SIDENAV --\x3e\n                            <div class="navigation-simple sidenav main-sidenav md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="20">\n                                \x3c!-- SIDENAV CONTENT --\x3e\n                                <md-list class="no-padding">\n                                    <md-subheader class="md-no-sticky">\n                                        <span>\n          Applications List\n        </span>\n                                    </md-subheader>\n                                </md-list>\n                                <md-divider></md-divider>\n                                <md-list ng-sortable="vm_ac.list">\n                                    <md-list-item class="handle" ng-repeat="a in vm_ac.apps">\n                                        <md-icon md-font-icon="{{a.icon}}" class="s16"></md-icon>\n                                        <p class="text-truncate" translate="VOICE.{{(a.alias || a.appType) | uppercase}}">{{a.alias || a.appType}}</p>\n                                    </md-list-item>\n                                </md-list>\n                                \x3c!-- / SIDENAV CONTENT --\x3e\n                            </div>\n                            \x3c!-- / SIDENAV --\x3e\n                            <div flex></div>\n                            \x3c!-- MAIN --\x3e\n                            <div class="main scrollable md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="75">\n                                <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_ac.selectedOutboundRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">Drag & Drop Routing</span>\n                                        <div flex></div>\n                                        <ms-search-bar on-search="vm_ac.query.filter = query" on-collapse="vm_ac.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    </div>\n                                </md-toolbar>\n                                <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_ac.selectedOutboundRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">{{vm_ac.selectedOutboundRouteApps.length}} {{vm_ac.selectedOutboundRouteApps.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                        <div flex></div>\n                                        <md-button class="md-icon-button" ng-click="vm_ac.deleteSelectedOutboundRouteApps($event)" aria-label="delete selected" translate translate-attr-label="VOICE.DELETE_SELECTED">\n                                            <md-icon md-font-icon="icon-delete"></md-icon>\n                                        </md-button>\n                                    </div>\n                                </md-toolbar>\n\n                                \x3c!-- QUEUES TABLE --\x3e\n                                <md-table-container>\n                                    <table md-table md-row-select multiple ng-model="vm_ac.selectedOutboundRouteApps">\n                                        <thead md-head>\n                                            <tr md-row>\n                                                <th md-column width="10px"></th>\n                                                <th md-column>Type</th>\n                                                <th md-column>Appdata</th>\n                                                <th md-column>Interval</th>\n                                                <th md-column width="10px"></th>\n                                                <th md-column width="10px"></th>\n                                            </tr>\n                                        </thead>\n                                        <tbody md-body ng-sortable="vm_ac.applications">\n                                            <tr md-row md-select="app" md-select-id="id" ng-repeat="app in vm_ac.outboundrouteApps.rows | filter: vm_ac.query.filter">\n                                                <td md-cell>\n                                                    <md-icon md-font-icon="icon-drag-vertical" class="s16 handle"></md-icon>\n                                                </td>\n                                                <td md-cell ng-click="vm_ac.editOutboundRouteApp($event, $index)">{{app.app.toLowerCase() === \'agi\' ? \'Cally-Square\' : app.app | ucfirst}}<span ng-if="app.appType.toLowerCase() === \'custom\'">*</span></td>\n                                                <td md-cell ng-click="vm_ac.editOutboundRouteApp($event, $index)"><span class="text-truncate" style="width:200px">{{app.appdata}}</span></td>\n                                                <td md-cell ng-click="vm_ac.editInterval($event, $index)">{{app.IntervalId ? \'From List\' : app.interval}}</td>\n                                                <td md-cell>\n                                                    <md-button ng-click="vm_ac.editInterval($event, $index)" class="md-icon-button" aria-label="Interval">\n                                                        <md-icon md-font-icon="icon-timer"></md-icon>\n                                                        <md-tooltip>\n                                                            {{app.IntervalId ? \'From List\' : (app.interval === \'*,*,*,*\' ? \'Always\' : \'Custom\')}}\n                                                        </md-tooltip>\n                                                    </md-button>\n                                                </td>\n                                                <td md-cell class="actions">\n                                                    <md-menu>\n                                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                        </md-button>\n\n                                                        <md-menu-content width="3">\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editOutboundRouteApp($event, $index)" translate="VOICE.EDIT_APP">\n                                                                    Edit App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInterval($event, $index)" translate="VOICE.EDIT_INTERVAL">\n                                                                    Edit Interval\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.deleteConfirm(app, $index, $event)" translate="VOICE.DELETE_APP">\n                                                                    Delete App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                        </md-menu-content>\n                                                    </md-menu>\n                                                </td>\n                                            </tr>\n                                            <tr md-row ng-hide="vm_ac.outboundrouteApps.rows.length">\n                                                <td md-cell colspan="6">\n                                                    <span class="text-boxed-ligth" translate="VOICE.NO_APPS_AVAILABLE">No apps available</span>\n                                                </td>\n                                            </tr>\n                                        </tbody>\n                                        <tfoot md-foot>\n                                            <tr md-row>\n                                                <td md-cell colspan="7">\n                                                    <span><em translate="VOICE.LEGEND.CUSTOM_APPLICATION">(*) - Custom application.</em></span>\n                                                </td>\n                                            </tr>\n                                        </tfoot>\n                                    </table>\n                                </md-table-container>\n                                \x3c!-- / QUEUES TABLE --\x3e\n\n                                \x3c!-- NO RESULTS --\x3e\n\n                                \x3c!-- / NO RESULTS --\x3e\n                            </div>\n                            \x3c!-- / MAIN --\x3e\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/outboundroutes/outboundroutes.html",'<div id="outboundroutes" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.OUTBOUNDROUTES">OutboundRoutes</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedOutboundRoutes.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedOutboundRoutes =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-outboundroutes-count">\n                    <span>{{vm.selectedOutboundRoutes.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="OUTBOUNDROUTES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllOutboundRoutes()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectOutboundRoutes()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedOutboundRoutes" filename="outboundroutes.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedOutboundRoutes($event)" aria-label="delete selected" translate translate-attr-label="OUTBOUNDROUTES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- OUTBOUNDROUTE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedOutboundRoutes" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getOutboundRoutes">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="exten">{{ \'VOICE.PHONENUMBER\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.outboundroutes.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="outboundroute" md-select-id="id" ng-repeat="outboundroute in vm.outboundroutes.rows">\n                                <td md-cell ng-if="outboundroute.userpic"><img class="avatar" alt="{{outboundroute.name}}" ng-src="api/users/{{outboundroute.id}}/avatar" /></td>\n                                <td md-cell ng-if="!outboundroute.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{outboundroute.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditOutboundRoute($event, outboundroute)" md-cell class="id ">{{outboundroute.id}}</td>\n                                <td ng-click="vm.createOrEditOutboundRoute($event, outboundroute)" md-cell class="exten ">{{outboundroute.exten}}</td>\n                                <td ng-click="vm.createOrEditOutboundRoute($event, outboundroute)" md-cell class="description ">{{outboundroute.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(outboundroute, $event)" translate="VOICE.EDIT_OUTBOUNDROUTE">\n                                                    Edit OutboundRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(outboundroute, $event)" translate="VOICE.DELETE_OUTBOUNDROUTE">\n                                                    Delete OutboundRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.outboundroutes.count}}" md-on-paginate="vm.getOutboundRoutes" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / OUTBOUNDROUTE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD OUTBOUNDROUTE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-outboundroute-button" ng-click="vm.createOrEditOutboundRoute($event)" aria-label="add outboundroute" translate translate-attr-aria-label="VOICE.ADD_OUTBOUNDROUTE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD OUTBOUNDROUTE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/realtime/agents/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.AGENTS">Agents</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n        <md-button class="md-icon-button" ng-click="vm.showInfo($event)">\n            <i class="icon-information-outline grey-600-fg">\n        <md-tooltip>{{\'VOICE.INFO\' | translate}}</md-tooltip>\n      </i>\n        </md-button>\n    </div>\n</md-toolbar>\n\n\x3c!-- AGENT TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getAgents">\n            <tr md-row>\n                <th md-column width="20px"></th>\n                <th md-column md-order-by="fullname">{{ \'VOICE.FULLNAME\' | translate }}</th>\n                <th md-column md-order-by="internal">{{ \'VOICE.INTERNAL\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PHONE_STATE\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PHONE_STATUS\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.agents">\n                <td md-cell colspan="6">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="agent" md-select-id="id" ng-repeat="(id, agent) in vm.agents">\n                <td md-cell>\n                    <div class="avatar-wrapper">\n                        <img md-menu-align-target class="avatar" ng-src="{{agent.userpic && \'api/users/\'+agent.id+\'/avatar\' || \'assets/images/avatars/profile.jpg\'}}">\n                        <md-icon md-font-icon class="icon status s16 icon-checkbox-marked-circle" ng-class="agent.online ? \'green-300-fg\' : \'red-300-fg\'"></md-icon>\n                    </div>\n                </td>\n                <td md-cell>\n                    <div layout="column">\n                        <span class="text-truncate"><span ng-if="agent.online" class="text-boxed"><timer start-time="agent.lastLoginAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>{{agent.fullname}}</span>\n                        <span class="text-truncate" ng-if="agent.voicePause">\n              <span><span class="text-boxed"><timer start-time="agent.lastPauseAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></span><span class="blink red-fg">{{agent.pauseType || \'dafault\' | uppercase}}</span>\n                        </span>\n                    </div>\n                </td>\n                <td md-cell>\n                    {{agent.internal}}\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.stateClass[agent.state]">\n            <md-tooltip>{{\'VOICE.\' + agent.state | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span class="text-boxed" ng-if="agent.stateTime && vm.isAvailableState(agent.state)">\n            <timer ng-if="agent.stateTime" start-time="agent.stateTime" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n          </span>\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.statusClass[agent.status]">\n            <md-tooltip>{{\'VOICE.\' + agent.status | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span ng-if="agent.status === \'registered\'" class="text-boxed">{{agent.address}}</span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="4">\n                            <md-menu-item>\n                                <md-button ng-click="vm.logout(agent, $event)" translate="VOICE.LOGOUT">\n                                    Logout\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.queueAdd(agent, $event)" translate="VOICE.AGENTADD_QUEUE">\n                                    Add Agent In Queue\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-menu>\n                                    <md-button ng-click="$mdMenu.open()" translate="VOICE.PAUSE">Pause</md-button>\n                                    <md-menu-content>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.pause(agent)"><em translate="VOICE.DEFAULT_PAUSE">Default Pause</em></md-button>\n                                        </md-menu-item>\n                                        <md-menu-item ng-if="vm.pauses.rows.length" ng-repeat="pause in vm.pauses.rows">\n                                            <md-button ng-click="vm.pause(agent, pause.name)">{{pause.name}}</md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.unPause(agent)" translate="VOICE.UNPAUSE">\n                                    Unpause\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getAgents" md-page-select></md-table-pagination>\n\x3c!-- / AGENT TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/outbound_calls/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.OUTBOUND_CALLS">Ooutbound Calls</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- OUTBOUNDS TABLE --\x3e\n<md-table-container>\n    <table md-table>\n        <thead md-head>\n            <tr md-row>\n                <th md-column width="30px"></th>\n                <th md-column>{{ \'VOICE.SOURCE\' | translate }}</th>\n                <th md-column>{{ \'VOICE.DESTINATION\' | translate }}</th>\n                <th md-column>{{ \'VOICE.DURATION\' | translate }}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.calls.count">\n                <td md-cell colspan="4">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="call in vm.calls.rows | filter: vm.query.filter | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit">\n                <td md-cell>\n                    <i ng-class="vm.channelStatus[call.channelstatedesc.toLowerCase()]"></i>\n                </td>\n                <td md-cell>\n                    {{call.calleridname}}, {{call.calleridnum}} <span class="text-boxed" ng-if="call.answered"><timer ng-if="call.answertime" start-time="call.answertime" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>\n                </td>\n                <td md-cell>{{call.exten}}</td>\n                <td md-cell>\n                    <span class="text-boxed" ng-if="call.channelstatedesc.toLowerCase() !== \'hangup\'">\n                      <timer ng-if="call.starttime" start-time="call.starttime" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n                    </span>\n                    <span class="text-boxed" ng-if="call.channelstatedesc.toLowerCase() === \'hangup\'" translate="VOICE.CLOSING">Closing</span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="vm.query.limitOptions" md-page="vm.query.page" md-total="{{vm.calls.count}}"></md-table-pagination>\n\x3c!-- / OUTBOUNDS TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/queue_calls/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.QUEUE_CALLS">Queue Calls</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUES TABLE --\x3e\n<md-table-container>\n    <table md-table>\n        <thead md-head>\n            <tr md-row>\n                <th md-column width="30px"></th>\n                <th md-column>{{ \'VOICE.DID\' | translate }}</th>\n                <th md-column>{{ \'VOICE.QUEUE\' | translate }}</th>\n                <th md-column>{{ \'VOICE.CALLER\' | translate }}</th>\n                <th md-column>{{ \'VOICE.AGENT\' | translate }}</th>\n                <th md-column>{{ \'VOICE.DURATION\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.calls.rows.length">\n                <td md-cell colspan="7">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="call in vm.calls.rows | filter: vm.query.filter | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit">\n                \x3c!-- <tr md-row ng-repeat="(channel, call) in vm.calls.rows | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit"> --\x3e\n                <td md-cell>\n                    <i ng-class="vm.channelStatusClass[call.status.toLowerCase()]"></i>\n                </td>\n                <td md-cell>{{call.exten}}</td>\n                <td md-cell>{{call.queue}}</td>\n                <td md-cell><span ng-if="call.calleridname">{{call.calleridname}}, </span>{{call.calleridnum}}</td>\n                <td md-cell>\n                    <span ng-if="call.queuecallerleaveAt">\n            {{call.connectedlinename}}, {{call.connectedlinenum}}\n            <span class="text-boxed">\n              <timer start-time="call.queuecallerleaveAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            </span>\n                    </span>\n                    <span ng-if="!call.queuecallerleaveAt" class="text-boxed" translate="VOICE.WAITING_FOR_AGENT">\n            Waiting for agent...\n            <span class="text-boxed">\n              <timer start-time="call.queuecallerjoinAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            </span>\n                    </span>\n                </td>\n                <td md-cell>\n                    <span class="text-boxed">\n            <timer ng-if="call.queuecallerjoinAt" start-time="call.queuecallerjoinAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            <span ng-if="call.queuecallercomplete || call.queuecallerabandon || call.queuecallerexit" translate="VOICE.CLOSING">Closing</span>\n                    </span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="2">\n                            <md-menu-item>\n                                <md-button ng-click="vm.hangup(call.uniqueid)" translate="VOICE.HANGUP">\n                                    Hangup\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.redirectToNumber($event, call.uniqueid)" translate="VOICE.REDIRECT_TO_NUMBER">\n                                    Number\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-menu>\n                                    <md-button ng-click="$mdMenu.open()" translate="VOICE.REDIRECT_TO_AGENT">Redirect to Agent</md-button>\n                                    <md-menu-content>\n                                        <md-menu-item ng-repeat="agent in vm.agents.rows">\n                                            <md-button ng-click="vm.redirectToAgent(call.uniqueid, agent.name)">{{agent.name}}</md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="vm.query.limitOptions" md-page="vm.query.page" md-total="{{vm.calls.count}}"></md-table-pagination>\n\x3c!-- / QUEUES TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/queue_params/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.QUEUE_PARAMETERS">Params</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueues">\n            <tr md-row>\n                <th md-column>{{\'VOICE.NAME\' | translate}}</th>\n                <th md-column>{{\'VOICE.TOTAL_OFFERED\' | translate}}</th>\n                <th md-column>{{\'VOICE.ANSWERED\' | translate}}</th>\n                <th md-column>{{\'VOICE.ABANDONED\' | translate}}</th>\n                <th md-column>{{\'VOICE.UNMANAGED\' | translate}}</th>\n                <th md-column>{{\'VOICE.AVG_HOLD_TIME\' | translate}}</th>\n                <th md-column>{{\'VOICE.AVG_DURATION\' | translate}}</th>\n                <th md-column>{{\'VOICE.AVG_BILLABLE\' | translate}}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.queues">\n                <td md-cell colspan="8">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="(id, queue) in vm.queues">\n                <td md-cell>\n                    <span>{{queue.name}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.total || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.answered || 0}} ({{(queue.total) ? (queue.answered || 0) * 100/queue.total : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{(queue.total - queue.answered) || 0}} ({{(queue.total) ? ((queue.total - queue.answered) || 0) * 100/queue.total : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.unmanaged || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.total ? (queue.sumHoldTime / queue.total) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.total ? (queue.sumDuration / queue.total) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.answered ? ((queue.sumBillable || 0) / queue.answered) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getQueues" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/queues/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.QUEUES">Queues</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueues">\n            <tr md-row>\n                <th md-column>{{ \'VOICE.NAME\' | translate }}</th>\n                <th md-column>{{ \'VOICE.LOGGED_IN\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PAUSED\' | translate }}</th>\n                <th md-column>{{ \'VOICE.READY\' | translate }}</th>\n                <th md-column>{{ \'VOICE.WAITING\' | translate }}</th>\n                <th md-column>{{ \'VOICE.TALKING\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.queues">\n                <td md-cell colspan="7">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="queue" md-select-id="id" ng-repeat="(id, queue) in vm.queues">\n                <td md-cell>{{queue.name}}</td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.loggedInDb || 0}} ({{queue.loggedIn || 0}})</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.paused || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.available || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.waiting || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.talking || 0}}</span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="3">\n                            <md-menu-item>\n                                <md-button ng-click="vm.createOrEditVoiceQueue($event, queue)" translate="VOICE.EDIT_QUEUE">\n                                    Edit Queue\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.agentAdd($event, queue)" translate="VOICE.AGENTSADD_QUEUE">\n                                    Add Agents to queue\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getQueues" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/realtime.html",'<div id="realtime" class="page-layout simple tabbed" layout="column" ng-cloak>\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.AGENTS">Agents</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.TELEPHONES">Telephones</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.TRUNKS">Trunks</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.QUEUES">Queues</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.QUEUE_CALLS">Queue Calls</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.QUEUE_PARAMS">Queue Parameters</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.OUTBOUND_CALLS">Outbound Calls</span>\n                </md-tab-label>\n            </md-tab>\n        </md-tabs>\n\n        <md-card ui-view></md-card>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/voice/views/realtime/telephones/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.TELEPHONES">Telephones</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n        <md-button class="md-icon-button" ng-click="vm.showInfo($event)">\n            <i class="icon-information-outline grey-600-fg">\n              <md-tooltip>{{\'VOICE.INFO\' | translate}}</md-tooltip>\n            </i>\n        </md-button>\n    </div>\n</md-toolbar>\n\n\x3c!-- AGENT TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTelephones">\n            <tr md-row>\n                <th md-column md-order-by="fullname">{{ \'VOICE.ACCOUNTNAME\' | translate }}</th>\n                <th md-column md-order-by="internal">{{ \'VOICE.INTERNAL\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PHONE_STATE\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PHONE_STATUS\' | translate }}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.telephones">\n                <td md-cell colspan="4">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="telephone" md-select-id="id" ng-repeat="(id, telephone) in vm.telephones">\n                <td md-cell>{{telephone.fullname}}</td>\n                <td md-cell>{{telephone.internal}}</td>\n                <td md-cell>\n                    <i ng-class="vm.stateClass[telephone.state]">\n                    <md-tooltip>{{\'VOICE.\' + telephone.state | uppercase | translate}}</md-tooltip>\n                  </i>\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.statusClass[telephone.status]">\n                    <md-tooltip>{{\'VOICE.\' + telephone.status | uppercase | translate}}</md-tooltip>\n                  </i>\n                    <span ng-if="telephone.status === \'registered\'" class="text-boxed">{{telephone.address}}</span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getTelephones" md-page-select></md-table-pagination>\n\x3c!-- / AGENT TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/trunks/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.TRUNKS">Telephones</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n        <md-button class="md-icon-button" ng-click="vm.showInfo($event)">\n            <i class="icon-information-outline grey-600-fg">\n        <md-tooltip>{{\'VOICE.INFO\' | translate}}</md-tooltip>\n      </i>\n        </md-button>\n    </div>\n</md-toolbar>\n\n\x3c!-- TRUNKS TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTelephones">\n            <tr md-row>\n                <th md-column md-order-by="fullname">{{ \'VOICE.NAME\' | translate }}</th>\n                <th md-column>{{ \'VOICE.TRUNK_STATUS\' | translate }}</th>\n                <th md-column>{{ \'VOICE.REGISTRY\' | translate }}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.trunks">\n                <td md-cell colspan="3">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="(id, trunk) in vm.trunks">\n                <td md-cell>{{trunk.name}}</td>\n                <td md-cell>\n                    <i ng-class="vm.statusClass[trunk.status.toLowerCase()]">\n            <md-tooltip>{{\'VOICE.\' + trunk.status | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span ng-if="trunk.status === \'registered\'" class="text-boxed">{{trunk.address}}</span>\n                </td>\n                <td md-cell>\n                    <i ng-if="trunk.registry" ng-class="(trunk.stateRegistry.toLowerCase() === \'registered\') ? \'green-300-fg icon-checkbox-marked-circle\' : \'red-300-fg icon-close-circle\'">\n            <md-tooltip>{{\'VOICE.\' + trunk.stateRegistry | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span ng-if="trunk.registry && trunk.host && trunk.port" class="text-boxed">{{trunk.host}}:{{trunk.port}}</span>\n                    <span ng-if="!trunk.registry" translate="VOICE.NO_REGISTRY">\n            No Registry\n          </span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getTelephones" md-page-select></md-table-pagination>\n\x3c!-- / TRUNKS TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/voicemails/create/dialog.html",'<md-dialog class="voicemail-dialog" aria-label="New Voicemail">\n    <form name="voicemailForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.FULLNAME">FullName</label>\n                <input type="text" name="fullname" ng-model="vm.voicemail.fullname" required autofocus>\n                <div ng-messages="voicemailForm.fullname.$error" ng-show="voicemailForm.fullname.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.FULLNAME_REQUIRED">FullName field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.voicemail.email" required>\n                <div ng-messages="voicemailForm.email.$error" ng-show="voicemailForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="VOICE.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.voicemail.password" placeholder="Password" translate translate-attr-placeholder="VOICE.PASSWORD" required>\n                <div ng-messages="voicemailForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newVoicemail ">\n                <label translate="VOICE.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="voicemailForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="VOICE.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MAILBOX">MailBox</label>\n                <input type="text" name="mailbox" ng-model="vm.voicemail.mailbox" required ng-disabled="!vm.newVoicemail">\n                <div ng-messages="voicemailForm.mailbox.$error" ng-show="voicemailForm.mailbox.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MAILBOX_REQUIRED">MailBox field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVoicemail" ng-click="vm.saveVoicemail()" class="send-button md-accent md-raised" ng-disabled="voicemailForm.$invalid || voicemailForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVoicemail" ng-click="vm.addNewVoicemail()" class="send-button md-accent md-raised" ng-disabled="voicemailForm.$invalid" aria-label="ADD" translate="VOICE.ADD_VOICEMAIL" translate-attr-aria-label="VOICE.ADD_VOICEMAIL">\n                    ADD VOICEMAIL\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVoicemail" ng-click="vm.deleteVoicemail($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voicemails/edit/view.html",'<div id="voice-voicemail" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-voicemails-button md-icon-button" aria-label="Go to voicemails" ng-click="vm.gotoVoicemails()" translate translate-attr-aria-label="VOICE.GO_TO_VOICEMAILS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.voicemail.userpic" class="voicemail-image" hide-xs>\n                    <img ng-src="api/users/{{vm.voicemail.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.voicemail.userpic" class="voicemail-image" hide-xs>\n                    <img ng-src="assets/images/business/voicemails.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.voicemail.id}} {{vm.voicemail.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.voicemail.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveVoicemail()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (advancedForm.$invalid) || (messagesForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voicemail-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.FULLNAME">FullName</label>\n                                <input type="text" name="fullname" ng-model="vm.voicemail.fullname" required autofocus>\n                                <div ng-messages="generalForm.fullname.$error" ng-show="generalForm.fullname.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.FULLNAME_REQUIRED">FullName field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.voicemail.email" required>\n                                <div ng-messages="generalForm.email.$error" ng-show="generalForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="VOICE.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.voicemail.password" placeholder="Password" translate translate-attr-placeholder="VOICE.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newVoicemail ">\n                                <label translate="VOICE.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="VOICE.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MAILBOX">MailBox</label>\n                                <input type="text" name="mailbox" ng-model="vm.voicemail.mailbox" required ng-disabled="true">\n                                <div ng-messages="generalForm.mailbox.$error" ng-show="generalForm.mailbox.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MAILBOX_REQUIRED">MailBox field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.VOICEMAIL_CONTEXT">Voicemail_Context</label>\n                                <md-select ng-model="vm.voicemail.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.VOICEMAIL_CONTEXT"></span></div>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.VOICEMAIL_CONTEXT_REQUIRED">Voicemail_Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voicemail-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.TIMEZONE">TimeZone</label>\n                                <input type="text" name="tz" ng-model="vm.voicemail.tz" required autofocus>\n                                <div ng-messages="advancedForm.tz.$error" ng-show="advancedForm.tz.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.TIMEZONE_REQUIRED">TimeZone field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ATTACH">Attach</label>\n                                <md-select ng-model="vm.voicemail.attach">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="advancedForm.attach.$error" ng-show="advancedForm.attach.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ATTACH_REQUIRED">Attach field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ENVELOPE">Envelope</label>\n                                <md-select ng-model="vm.voicemail.envelope">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="advancedForm.envelope.$error" ng-show="advancedForm.envelope.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ENVELOPE_REQUIRED">Envelope field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DELETE">Delete</label>\n                                <md-select ng-model="vm.voicemail.delete">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="advancedForm.delete.$error" ng-show="advancedForm.delete.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DELETE_REQUIRED">Delete field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.EMAILBODY">EmailBody</label>\n                                <input type="text" name="emailbody" ng-model="vm.voicemail.emailbody">\n                                <div ng-messages="advancedForm.emailbody.$error" ng-show="advancedForm.emailbody.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.EMAILBODY_REQUIRED">EmailBody field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.EMAILSUBJECT">EmailSubject</label>\n                                <input type="text" name="emailsubject" ng-model="vm.voicemail.emailsubject">\n                                <div ng-messages="advancedForm.emailsubject.$error" ng-show="advancedForm.emailsubject.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.EMAILSUBJECT_REQUIRED">EmailSubject field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MAXSECONDS">MaxSeconds</label>\n                                <input type="number" name="maxsecs" ng-model="vm.voicemail.maxsecs" min="0">\n                                <div ng-messages="advancedForm.maxsecs.$error" ng-show="advancedForm.maxsecs.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MAXSECONDS_REQUIRED">MaxSeconds field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MAXMESSAGES">MaxMessages</label>\n                                <input type="number" name="maxmsg" ng-model="vm.voicemail.maxmsg" min="0" max="9999">\n                                <div ng-messages="advancedForm.maxmsg.$error" ng-show="advancedForm.maxmsg.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MAXMESSAGES_REQUIRED">MaxMessages field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.MESSAGES">MESSAGES</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voicemail-detail-form-container messages md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="VoicemailMessagesController as vm_dc" ng-init="vm_dc.init(vm.voicemail)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedVoicemailMessages.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="VOICE.MESSAGES">Messages</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedVoicemailMessages.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedVoicemailMessages.length}} {{vm_dc.selectedVoicemailMessages.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedVoicemailMessages($event)" aria-label="delete selected" translate translate-attr-label="VOICEMAILS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedVoicemailMessages" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getVoicemailMessages">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                            <th md-column md-order-by="callerid">{{ \'VOICE.CALLER_ID\' | translate }}</th>\n                                            <th md-column md-order-by="duration">{{ \'VOICE.DURATION\' | translate }}</th>\n                                            <th md-column md-order-by="audio">{{ \'VOICE.AUDIO\' | translate }}</th>\n                                            <th md-column md-order-by="stamp">{{ \'VOICE.RECEIVED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="message" md-select-id="id" ng-repeat="message in vm_dc.voicemailMessages.rows">\n                                            <td md-cell>{{message.id}}</td>\n                                            <td md-cell>{{message.callerid}}</td>\n                                            <td md-cell>{{message.duration}}</td>\n                                            <td md-cell><audio controls><source ng-src="{{\'api/voice/mails/messages/\' + message.id + \'/download\'}}" type="audio/wav" preload="none"></source>Your browser does not support the audio element.</audio></td>\n                                            <td md-cell>{{message.stamp | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-href="api/voice/mails/messages/{{message.id}}/download" target="_blank" translate="VOICE.DOWNLOAD_MESSAGE">\n                                                                Download Message\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(message, $event)" translate="VOICE.DELETE_MESSAGE">\n                                                                Delete Message\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.voicemailMessages.rows.length">\n                                            <td md-cell colspan="7">\n                                                <span class="text-boxed-ligth" translate="VOICE.NO_MESSAGE_AVAILABLE">No message available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.voicemailMessages.count}}" md-on-paginate="vm_dc.getVoicemailMessages" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/voicemails/voicemails.html",'<div id="voicemails" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.VOICEMAILS">Voicemails</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedVoicemails.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedVoicemails =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-voicemails-count">\n                    <span>{{vm.selectedVoicemails.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="VOICEMAILS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllVoicemails()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectVoicemails()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedVoicemails" filename="voicemails.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedVoicemails($event)" aria-label="delete selected" translate translate-attr-label="VOICEMAILS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- VOICEMAIL TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedVoicemails" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoicemails">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="fullname">{{ \'VOICE.FULLNAME\' | translate }}</th>\n                                <th md-column md-order-by="email">{{ \'VOICE.EMAIL\' | translate }}</th>\n                                <th md-column md-order-by="mailbox">{{ \'VOICE.MAILBOX\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.voicemails.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="voicemail" md-select-id="id" ng-repeat="voicemail in vm.voicemails.rows">\n                                <td md-cell ng-if="voicemail.userpic"><img class="avatar" alt="{{voicemail.name}}" ng-src="api/users/{{voicemail.id}}/avatar" /></td>\n                                <td md-cell ng-if="!voicemail.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{voicemail.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditVoicemail($event, voicemail)" md-cell class="id ">{{voicemail.id}}</td>\n                                <td ng-click="vm.createOrEditVoicemail($event, voicemail)" md-cell class="fullname ">{{voicemail.fullname}}</td>\n                                <td ng-click="vm.createOrEditVoicemail($event, voicemail)" md-cell class="email ">{{voicemail.email}}</td>\n                                <td ng-click="vm.createOrEditVoicemail($event, voicemail)" md-cell class="mailbox ">{{voicemail.mailbox}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(voicemail, $event)" translate="VOICE.EDIT_VOICEMAIL">\n                                                    Edit Voicemail\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(voicemail, $event)" translate="VOICE.DELETE_VOICEMAIL">\n                                                    Delete Voicemail\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voicemails.count}}" md-on-paginate="vm.getVoicemails" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / VOICEMAIL TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD VOICEMAIL BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-voicemail-button" ng-click="vm.createOrEditVoicemail($event)" aria-label="add voicemail" translate translate-attr-aria-label="VOICE.ADD_VOICEMAIL">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD VOICEMAIL BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/voiceQueues/create/dialog.html",'<md-dialog class="voiceQueue-dialog" aria-label="New VoiceQueue">\n    <form name="voiceQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.voiceQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="!vm.newVoiceQueue">\n                <div ng-messages="voiceQueueForm.name.$error" ng-show="voiceQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="VOICE.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.voiceQueue.strategy" required>\n                    <md-option ng-value="\'ringall\'">Ringall</md-option>\n                    <md-option ng-value="\'rrmemory\'">Round Robin Memory</md-option>\n                    <md-option ng-value="\'leastrecent\'">Least Recent</md-option>\n                    <md-option ng-value="\'fewestcalls\'">Fewest Calls</md-option>\n                    <md-option ng-value="\'random\'">Random</md-option>\n                    <md-option ng-value="\'linear\'">Linear</md-option>\n                    <md-option ng-value="\'wrandom\'">Weight Random</md-option>\n                </md-select>\n                <div ng-messages="voiceQueueForm.strategy.$error" ng-show="voiceQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.voiceQueue.description">\n                <div ng-messages="voiceQueueForm.description.$error" ng-show="voiceQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVoiceQueue" ng-click="vm.saveVoiceQueue()" class="send-button md-accent md-raised" ng-disabled="voiceQueueForm.$invalid || voiceQueueForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVoiceQueue" ng-click="vm.addNewVoiceQueue()" class="send-button md-accent md-raised" ng-disabled="voiceQueueForm.$invalid" aria-label="ADD" translate="VOICE.ADD_VOICEQUEUE" translate-attr-aria-label="VOICE.ADD_VOICEQUEUE">\n                    ADD VOICEQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVoiceQueue" ng-click="vm.deleteVoiceQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",'<md-dialog class="voiceQueue-dialog" aria-label="voiceQueue">\n    <form name="voiceQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="VOICE.AGENTADD_VOICEQUEUE">Add Agent to voiceQueue</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="VOICE.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="voiceQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voiceQueues/edit/teamadd/teamadd.html",'<md-dialog class="voiceQueue-dialog" aria-label="voiceQueue">\n    <form name="voiceQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="VOICE.TEAMADD_VOICEQUEUE">Add Team in VOICEQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="VOICE.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="voiceQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voiceQueues/edit/view.html",'<div id="voice-voiceQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-voiceQueues-button md-icon-button" aria-label="Go to voiceQueues" ng-click="vm.gotoVoiceQueues()" translate translate-attr-aria-label="VOICE.GO_TO_VOICEQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.voiceQueue.userpic" class="voiceQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.voiceQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.voiceQueue.userpic" class="voiceQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/voiceQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.voiceQueue.id}} {{vm.voiceQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.voiceQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.voiceQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="VOICE.TEAMADD_VOICEQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.agentadddialog(vm.voiceQueue, $event)" class="md-fab md-purple-500-bg md-icon-button" aria-label="agentadd">\n                <md-tooltip><span translate="VOICE.AGENTADD_VOICEQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveVoiceQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (settingsForm.$invalid) || (announcementsForm.$invalid) || (advancedForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voiceQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.voiceQueue.strategy" required autofocus>\n                                    <md-option ng-value="\'ringall\'">Ringall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">Round Robin Memory</md-option>\n                                    <md-option ng-value="\'leastrecent\'">Least Recent</md-option>\n                                    <md-option ng-value="\'fewestcalls\'">Fewest Calls</md-option>\n                                    <md-option ng-value="\'random\'">Random</md-option>\n                                    <md-option ng-value="\'linear\'">Linear</md-option>\n                                    <md-option ng-value="\'wrandom\'">Weight Random</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.voiceQueue.timeout" min="0" required>\n                                <div class="hint"><span translate="VOICE.HELP.TIMEOUT"></span></div>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MAXLENGTH">MaxLength</label>\n                                <input type="number" name="maxlen" ng-model="vm.voiceQueue.maxlen" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.MAXLENGTH"></span></div>\n                                <div ng-messages="generalForm.maxlen.$error" ng-show="generalForm.maxlen.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MAXLENGTH_REQUIRED">MaxLength field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.RETRY">Retry</label>\n                                <input type="number" name="retry" ng-model="vm.voiceQueue.retry" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.RETRY"></span></div>\n                                <div ng-messages="generalForm.retry.$error" ng-show="generalForm.retry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.RETRY_REQUIRED">Retry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.WRAPUPTIME">WrapupTime</label>\n                                <input type="number" name="wrapuptime" ng-model="vm.voiceQueue.wrapuptime" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.WRAPUPTIME"></span></div>\n                                <div ng-messages="generalForm.wrapuptime.$error" ng-show="generalForm.wrapuptime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.WRAPUPTIME_REQUIRED">WrapupTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.WEIGHT">Weight</label>\n                                <input type="number" name="weight" ng-model="vm.voiceQueue.weight" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.WEIGHT"></span></div>\n                                <div ng-messages="generalForm.weight.$error" ng-show="generalForm.weight.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.WEIGHT_REQUIRED">Weight field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.JOINWHENEMPTY">JoinWhenEmpty</label>\n                                <md-select ng-model="vm.voiceQueue.joinempty" multiple>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'strict\'">strict</md-option>\n                                    <md-option ng-value="\'loose\'">loose</md-option>\n                                    <md-option ng-value="\'paused\'">paused</md-option>\n                                    <md-option ng-value="\'penalty\'">penalty</md-option>\n                                    <md-option ng-value="\'inuse\'">inuse</md-option>\n                                    <md-option ng-value="\'ringing\'">ringing</md-option>\n                                    <md-option ng-value="\'unavailable\'">unavailable</md-option>\n                                    <md-option ng-value="\'invalid\'">invalid</md-option>\n                                    <md-option ng-value="\'unknown\'">unknoww</md-option>\n                                    <md-option ng-value="\'wrapup\'">wrapup</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.JOINWHENEMPTY"></span></div>\n                                <div ng-messages="generalForm.joinempty.$error" ng-show="generalForm.joinempty.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.JOINWHENEMPTY_REQUIRED">JoinWhenEmpty field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.LEAVEWHENEMPTY">LeaveWhenEmpty</label>\n                                <md-select ng-model="vm.voiceQueue.leavewhenempty" multiple>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'strict\'">strict</md-option>\n                                    <md-option ng-value="\'loose\'">loose</md-option>\n                                    <md-option ng-value="\'paused\'">paused</md-option>\n                                    <md-option ng-value="\'penalty\'">penalty</md-option>\n                                    <md-option ng-value="\'inuse\'">inuse</md-option>\n                                    <md-option ng-value="\'ringing\'">ringing</md-option>\n                                    <md-option ng-value="\'unavailable\'">unavailable</md-option>\n                                    <md-option ng-value="\'invalid\'">invalid</md-option>\n                                    <md-option ng-value="\'unknown\'">unknoww</md-option>\n                                    <md-option ng-value="\'wrapup\'">wrapup</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.LEAVEWHENEMPTY"></span></div>\n                                <div ng-messages="generalForm.leavewhenempty.$error" ng-show="generalForm.leavewhenempty.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.LEAVEWHENEMPTY_REQUIRED">LeaveWhenEmpty field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MUSICONHOLD">MusicOnHold</label>\n                                <md-select ng-model="vm.voiceQueue.musiconhold">\n                                    <md-option ng-value="musiconhold.name" ng-repeat="musiconhold in vm.musiconholds">{{ musiconhold.name }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.MUSICONHOLD"></span></div>\n                                <div ng-messages="generalForm.musiconhold.$error" ng-show="generalForm.musiconhold.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MUSICONHOLD_REQUIRED">MusicOnHold field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCETOAGENT">AnnounceToAgent</label>\n                                <md-select ng-model="vm.voiceQueue.announce">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + announce.save_name" ng-repeat="announce in vm.sounds">{{ announce.name }}</md-option>\n                                    <md-option ng-value="\'\'">None</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCETOAGENT"></span></div>\n                                <div ng-messages="generalForm.announce.$error" ng-show="generalForm.announce.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCETOAGENT_REQUIRED">AnnounceToAgent field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.voiceQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ANNOUNCEMENTS">ANNOUNCEMENTS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voiceQueue-detail-form-container settings md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.SETTINGS">SETTINGS</div>\n                        </div>\n                        <form name="settingsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCEFREQUENCY">AnnounceFrequency</label>\n                                <input type="number" name="announce_frequency" ng-model="vm.voiceQueue.announce_frequency" min="0" autofocus>\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCEFREQUENCY"></span></div>\n                                <div ng-messages="settingsForm.announce_frequency.$error" ng-show="settingsForm.announce_frequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCEFREQUENCY_REQUIRED">AnnounceFrequency field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MINANNOUNCEFREQUENCY">MinAnnounceFrequency</label>\n                                <input type="number" name="min_announce_frequency" ng-model="vm.voiceQueue.min_announce_frequency" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.MINANNOUNCEFREQUENCY"></span></div>\n                                <div ng-messages="settingsForm.min_announce_frequency.$error" ng-show="settingsForm.min_announce_frequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MINANNOUNCEFREQUENCY_REQUIRED">MinAnnounceFrequency field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PERIODICANNOUNCEFREQUENCY">PeriodicAnnounceFrequency</label>\n                                <input type="number" name="periodic_announce_frequency" ng-model="vm.voiceQueue.periodic_announce_frequency" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.PERIODICANNOUNCEFREQUENCY"></span></div>\n                                <div ng-messages="settingsForm.periodic_announce_frequency.$error" ng-show="settingsForm.periodic_announce_frequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PERIODICANNOUNCEFREQUENCY_REQUIRED">PeriodicAnnounceFrequency field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.RANDOMPERIODICANNOUNCE">RandomPeriodicAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.random_periodic_announce">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.RANDOMPERIODICANNOUNCE"></span></div>\n                                <div ng-messages="settingsForm.random_periodic_announce.$error" ng-show="settingsForm.random_periodic_announce.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.RANDOMPERIODICANNOUNCE_REQUIRED">RandomPeriodicAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCEHOLDTIME">AnnounceHoldtime</label>\n                                <md-select ng-model="vm.voiceQueue.announce_holdtime">\n                                    <md-option ng-value="\'yes\'">Yes</md-option>\n                                    <md-option ng-value="\'no\'">No</md-option>\n                                    <md-option ng-value="\'once\'">Once</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCEHOLDTIME"></span></div>\n                                <div ng-messages="settingsForm.announce_holdtime.$error" ng-show="settingsForm.announce_holdtime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCEHOLDTIME_REQUIRED">AnnounceHoldtime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCECALLERPOSITION">AnnounceCallerPosition</label>\n                                <md-select ng-model="vm.voiceQueue.announce_position">\n                                    <md-option ng-value="\'yes\'">Yes</md-option>\n                                    <md-option ng-value="\'no\'">No</md-option>\n                                    <md-option ng-value="\'limit\'">Limit</md-option>\n                                    <md-option ng-value="\'more\'">More</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCECALLERPOSITION"></span></div>\n                                <div ng-messages="settingsForm.announce_position.$error" ng-show="settingsForm.announce_position.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCECALLERPOSITION_REQUIRED">AnnounceCallerPosition field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCEPOSITIONLIMIT">AnnouncePositionLimit</label>\n                                <input type="number" name="announce_position_limit" ng-model="vm.voiceQueue.announce_position_limit">\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCEPOSITIONLIMIT"></span></div>\n                                <div ng-messages="settingsForm.announce_position_limit.$error" ng-show="settingsForm.announce_position_limit.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCEPOSITIONLIMIT_REQUIRED">AnnouncePositionLimit field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.REPORTHOLDTIMEAGENT">ReportHoldtimeAgent</label>\n                                <md-select ng-model="vm.voiceQueue.reportholdtime">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.REPORTHOLDTIMEAGENT"></span></div>\n                                <div ng-messages="settingsForm.reportholdtime.$error" ng-show="settingsForm.reportholdtime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.REPORTHOLDTIMEAGENT_REQUIRED">ReportHoldtimeAgent field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="voiceQueue-detail-form-container announcements md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.ANNOUNCEMENTS">ANNOUNCEMENTS</div>\n                        </div>\n                        <form name="announcementsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PERIODICANNOUNCE">PeriodicAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.periodic_announce" autofocus>\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + periodic_announce.save_name" ng-repeat="periodic_announce in vm.sounds">{{ periodic_announce.name }}</md-option>\n                                    <md-option ng-value="\'\'">Default</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.PERIODICANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.periodic_announce.$error" ng-show="announcementsForm.periodic_announce.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PERIODICANNOUNCE_REQUIRED">PeriodicAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.HOLDTIMEANNOUNCE">HoldTimeAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_reporthold">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_reporthold.save_name" ng-repeat="queue_reporthold in vm.sounds">{{ queue_reporthold.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.HOLDTIMEANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_reporthold.$error" ng-show="announcementsForm.queue_reporthold.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.HOLDTIMEANNOUNCE_REQUIRED">HoldTimeAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.YOUARENEXTANNOUNCE">YouareNextAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_youarenext">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_youarenext.save_name" ng-repeat="queue_youarenext in vm.sounds">{{ queue_youarenext.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.YOUARENEXTANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_youarenext.$error" ng-show="announcementsForm.queue_youarenext.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.YOUARENEXTANNOUNCE_REQUIRED">YouareNextAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.THEREAREANNOUNCE">ThereareAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_thereare">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_thereare.save_name" ng-repeat="queue_thereare in vm.sounds">{{ queue_thereare.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.THEREAREANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_thereare.$error" ng-show="announcementsForm.queue_thereare.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.THEREAREANNOUNCE_REQUIRED">ThereareAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.WAITINGCALLSANNOUNCE">WaitingCallsAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_callswaiting">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_callswaiting.save_name" ng-repeat="queue_callswaiting in vm.sounds">{{ queue_callswaiting.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.WAITINGCALLSANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_callswaiting.$error" ng-show="announcementsForm.queue_callswaiting.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.WAITINGCALLSANNOUNCE_REQUIRED">WaitingCallsAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ESTIMATEDHOLDTIMEANNOUNCE">EstimatedHoldTimeAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_holdtime">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_holdtime.save_name" ng-repeat="queue_holdtime in vm.sounds">{{ queue_holdtime.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.ESTIMATEDHOLDTIMEANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_holdtime.$error" ng-show="announcementsForm.queue_holdtime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ESTIMATEDHOLDTIMEANNOUNCE_REQUIRED">EstimatedHoldTimeAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MINUTESANNOUNCE">MinutesAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_minutes">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_minutes.save_name" ng-repeat="queue_minutes in vm.sounds">{{ queue_minutes.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.MINUTESANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_minutes.$error" ng-show="announcementsForm.queue_minutes.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MINUTESANNOUNCE_REQUIRED">MinutesAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MINUTEANNOUNCE">MinuteAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_minute">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_minute.save_name" ng-repeat="queue_minute in vm.sounds">{{ queue_minute.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.MINUTEANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_minute.$error" ng-show="announcementsForm.queue_minute.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MINUTEANNOUNCE_REQUIRED">MinuteAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.SECONDSANNOUNCE">SecondsAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_seconds">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_seconds.save_name" ng-repeat="queue_seconds in vm.sounds">{{ queue_seconds.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.SECONDSANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_seconds.$error" ng-show="announcementsForm.queue_seconds.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SECONDSANNOUNCE_REQUIRED">SecondsAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.THANKYOUANNOUNCE">ThankYouAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_thankyou">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_thankyou.save_name" ng-repeat="queue_thankyou in vm.sounds">{{ queue_thankyou.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.THANKYOUANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_thankyou.$error" ng-show="announcementsForm.queue_thankyou.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.THANKYOUANNOUNCE_REQUIRED">ThankYouAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voiceQueue-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.voiceQueue.acw" aria-label="AfterCallWork"><span translate="VOICE.AFTERCALLWORK">AfterCallWork</span></md-switch>\n                                <div class="hint"><span translate="VOICE.HELP.AFTERCALLWORK"></span></div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.voiceQueue.acw" class="md-block">\n                                <label translate="VOICE.AFTERCALLWORKDURATION">AfterCallWorkDuration</label>\n                                <input type="number" name="acwTimeout" ng-model="vm.voiceQueue.acwTimeout" min="0" required>\n                                <div class="hint"><span translate="VOICE.HELP.AFTERCALLWORKDURATION"></span></div>\n                                <div ng-messages="advancedForm.acwTimeout.$error" ng-show="advancedForm.acwTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.AFTERCALLWORKDURATION_REQUIRED">AfterCallWorkDuration field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.AUTOPAUSE">AutoPause</label>\n                                <md-select ng-model="vm.voiceQueue.autopause">\n\n                                    <md-option ng-value="\'all\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.AUTOPAUSE"></span></div>\n                                <div ng-messages="advancedForm.autopause.$error" ng-show="advancedForm.autopause.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.AUTOPAUSE_REQUIRED">AutoPause field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.RINGINUSE">RingInUse</label>\n                                <md-select ng-model="vm.voiceQueue.ringinuse">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.RINGINUSE"></span></div>\n                                <div ng-messages="advancedForm.ringinuse.$error" ng-show="advancedForm.ringinuse.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.RINGINUSE_REQUIRED">RingInUse field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MEMBERDELAY">MemberDelay</label>\n                                <input type="number" name="memberdelay" ng-model="vm.voiceQueue.memberdelay" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.MEMBERDELAY"></span></div>\n                                <div ng-messages="advancedForm.memberdelay.$error" ng-show="advancedForm.memberdelay.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MEMBERDELAY_REQUIRED">MemberDelay field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.TIMEOUTRESTART">TimeoutRestart</label>\n                                <md-select ng-model="vm.voiceQueue.timeoutrestart">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.TIMEOUTRESTART"></span></div>\n                                <div ng-messages="advancedForm.timeoutrestart.$error" ng-show="advancedForm.timeoutrestart.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.TIMEOUTRESTART_REQUIRED">TimeoutRestart field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MONITORFORMAT">MonitorFormat</label>\n                                <md-select ng-model="vm.voiceQueue.monitor_format">\n                                    <md-option ng-value="\'\'">Inactive</md-option>\n                                    <md-option ng-value="\'wav\'">wav</md-option>\n                                    <md-option ng-value="\'wav49\'">wav49</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.MONITORFORMAT"></span></div>\n                                <div ng-messages="advancedForm.monitor_format.$error" ng-show="advancedForm.monitor_format.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MONITORFORMAT_REQUIRED">MonitorFormat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.CONTEXT">Context</label>\n                                <input type="text" name="context" ng-model="vm.voiceQueue.context">\n                                <div class="hint"><span translate="VOICE.HELP.CONTEXT"></span></div>\n                                <div ng-messages="advancedForm.context.$error" ng-show="advancedForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.SETINTERFACEVARIABLES">SetInterfaceVariables</label>\n                                <md-select ng-model="vm.voiceQueue.setinterfacevar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.SETINTERFACEVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setinterfacevar.$error" ng-show="advancedForm.setinterfacevar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SETINTERFACEVARIABLES_REQUIRED">SetInterfaceVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.SETQUEUEVARIABLES">SetQueueVariables</label>\n                                <md-select ng-model="vm.voiceQueue.setqueuevar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.SETQUEUEVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setqueuevar.$error" ng-show="advancedForm.setqueuevar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SETQUEUEVARIABLES_REQUIRED">SetQueueVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.SETQUEUEENTRYVARIABLES">SetQueueEntryVariables</label>\n                                <md-select ng-model="vm.voiceQueue.setqueueentryvar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.SETQUEUEENTRYVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setqueueentryvar.$error" ng-show="advancedForm.setqueueentryvar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SETQUEUEENTRYVARIABLES_REQUIRED">SetQueueEntryVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/voiceQueues/voiceQueues.html",'<div id="voiceQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.VOICEQUEUES">VoiceQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedVoiceQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedVoiceQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-voiceQueues-count">\n                    <span>{{vm.selectedVoiceQueues.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="VOICEQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllVoiceQueues()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectVoiceQueues()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedVoiceQueues" filename="voiceQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedVoiceQueues($event)" aria-label="delete selected" translate translate-attr-label="VOICEQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- VOICEQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedVoiceQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoiceQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'VOICE.STRATEGY\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.voiceQueues.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="voiceQueue" md-select-id="id" ng-repeat="voiceQueue in vm.voiceQueues.rows">\n                                <td md-cell ng-if="voiceQueue.userpic"><img class="avatar" alt="{{voiceQueue.name}}" ng-src="api/users/{{voiceQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!voiceQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{voiceQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditVoiceQueue($event, voiceQueue)" md-cell class="id ">{{voiceQueue.id}}</td>\n                                <td ng-click="vm.createOrEditVoiceQueue($event, voiceQueue)" md-cell class="name ">{{voiceQueue.name}}</td>\n                                <td ng-click="vm.createOrEditVoiceQueue($event, voiceQueue)" md-cell class="strategy ">{{ vm.arraystrategy[voiceQueue.strategy].option }}</td>\n                                <td ng-click="vm.createOrEditVoiceQueue($event, voiceQueue)" md-cell class="description ">{{voiceQueue.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(voiceQueue, $event)" translate="VOICE.EDIT_VOICEQUEUE">\n                                                    Edit VoiceQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.teamadddialog(voiceQueue, $event)" translate="VOICE.TEAMADD_VOICEQUEUE">\n                                                    teamadd VoiceQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.agentadddialog(voiceQueue, $event)" translate="VOICE.AGENTADD_VOICEQUEUE">\n                                                    agentadd VoiceQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(voiceQueue, $event)" translate="VOICE.DELETE_VOICEQUEUE">\n                                                    Delete VoiceQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voiceQueues.count}}" md-on-paginate="vm.getVoiceQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / VOICEQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD VOICEQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-voiceQueue-button" ng-click="vm.createOrEditVoiceQueue($event)" aria-label="add voiceQueue" translate translate-attr-aria-label="VOICE.ADD_VOICEQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD VOICEQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/voiceRecordings/create/dialog.html",'<md-dialog class="voiceRecording-dialog" aria-label="New VoiceRecording">\n    <form name="voiceRecordingForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RATING">Rating</label>\n                <md-select ng-model="vm.voiceRecording.rating" autofocus>\n                    <md-option ng-value="null">{{\'VOICE.NO_RATING\' | translate}}</md-option>\n                    <md-option value="1">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1]"></md-icon>\n                    </md-option>\n                    <md-option value="2">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1,2]"></md-icon>\n                    </md-option>\n                    <md-option value="3">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1,2,3]"></md-icon>\n                    </md-option>\n                    <md-option value="4">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1,2,3,4]"></md-icon>\n                    </md-option>\n                    <md-option value="5">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1,2,3,4,5]"></md-icon>\n                    </md-option>\n                </md-select>\n                <div ng-messages="voiceRecordingForm.rating.$error" ng-show="voiceRecordingForm.rating.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RATING_REQUIRED">Rating field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVoiceRecording" ng-click="vm.saveVoiceRecording()" class="send-button md-accent md-raised" ng-disabled="voiceRecordingForm.$invalid || voiceRecordingForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVoiceRecording" ng-click="vm.addNewVoiceRecording()" class="send-button md-accent md-raised" ng-disabled="voiceRecordingForm.$invalid" aria-label="ADD" translate="VOICE.ADD_VOICERECORDING" translate-attr-aria-label="VOICE.ADD_VOICERECORDING">\n                    ADD VOICERECORDING\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVoiceRecording" ng-click="vm.deleteVoiceRecording($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voiceRecordings/voiceRecordings.html",'<div id="voiceRecordings" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.VOICERECORDINGS">VoiceRecordings</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedVoiceRecordings.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedVoiceRecordings =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-voiceRecordings-count">\n                    <span>{{vm.selectedVoiceRecordings.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="VOICERECORDINGS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllVoiceRecordings()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectVoiceRecordings()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedVoiceRecordings" filename="voiceRecordings.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedVoiceRecordings($event)" aria-label="delete selected" translate translate-attr-label="VOICERECORDINGS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- VOICERECORDING TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedVoiceRecordings" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoiceRecordings">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="type">{{ \'VOICE.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="uniqueid">{{ \'VOICE.UNIQUEID\' | translate }}</th>\n                                <th md-column md-order-by="calleridnum">{{ \'VOICE.CALLER\' | translate }}</th>\n                                <th md-column md-order-by="exten">{{ \'VOICE.CALLED\' | translate }}</th>\n                                <th md-column md-order-by="connectedlinenum">{{ \'VOICE.CONNECTED\' | translate }}</th>\n                                <th md-column md-order-by="queue">{{ \'VOICE.QUEUE\' | translate }}</th>\n                                <th md-column md-order-by="rating">{{ \'VOICE.RATING\' | translate }}</th>\n                                <th md-column md-order-by="audio">{{ \'VOICE.AUDIO\' | translate }}</th>\n                                <th md-column md-order-by="createdAt">{{ \'VOICE.DATE\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.voiceRecordings.rows.length">\n                                <td md-cell colspan="10">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="voiceRecording" md-select-id="id" ng-repeat="voiceRecording in vm.voiceRecordings.rows">\n                                <td md-cell ng-if="voiceRecording.userpic"><img class="avatar" alt="{{voiceRecording.name}}" ng-src="api/users/{{voiceRecording.id}}/avatar" /></td>\n                                <td md-cell ng-if="!voiceRecording.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{voiceRecording.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="type ">{{voiceRecording.type}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="uniqueid ">{{voiceRecording.uniqueid}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="calleridnum ">{{voiceRecording.calleridnum}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="exten ">{{voiceRecording.exten}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="connectedlinenum ">{{voiceRecording.connectedlinenum}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="queue ">{{voiceRecording.queue}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="rating ">\n                                    <md-icon md-font-icon="icon-star" style="color:red" ng-show="voiceRecording.rating" ng-repeat="rating in [1,2,3,4,5] | limitTo:voiceRecording.rating"></md-icon><span ng-hide="voiceRecording.rating" translate="VOICE.NO_RATING">No rating</span></td>\n                                <td md-cell class="audio " ng-switch="voiceRecording.format">\n                                    <audio controls ng-switch-when=".wav">\n                                  <source ng-src="{{\'api/voice/recordings/\' + voiceRecording.id + \'/download\'}}" type="audio/wav" preload="none"></source> Your browser does not support the audio element.\n                                 </audio>\n                                    <span ng-switch-when=".gsm">\n                                  <em>{{ \'VOICE.CANT_PLAY_GSM_AUDIO_FILES\' | translate }}</em>\n                                 </span>\n                                </td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="createdAt ">{{voiceRecording.createdAt | date:\'medium\' }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.downloadfile(voiceRecording, $event)" translate="VOICE.DOWNLOAD_VOICERECORDING">\n                                                    Download VoiceRecording\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(voiceRecording, $event)" translate="VOICE.DELETE_VOICERECORDING">\n                                                    Delete VoiceRecording\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voiceRecordings.count}}" md-on-paginate="vm.getVoiceRecordings" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / VOICERECORDING TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/navigation/layouts/horizontal-navigation/navigation.html",'<div layout="row" layout-align="start center">\n    <ms-navigation-horizontal></ms-navigation-horizontal>\n</div>'),e.put("app/navigation/layouts/vertical-navigation-fullwidth-toolbar-2/navigation.html",'<ms-navigation class="scrollable" folded="vm.folded" ms-scroll="vm.msScrollOptions">\n</ms-navigation>'),e.put("app/navigation/layouts/vertical-navigation/navigation.html",'<md-toolbar class="navigation-header md-whiteframe-1dp" layout="row" layout-align="space-between center">\n    <div class="logo" layout="row" layout-align="start center">\n        <span class="logo-image"><img src="/api/settings/1/logo" alt="logo" /></span>\n        \x3c!-- <span class="logo-image"><img src="assets/images/logos/whisker_32x32.png" alt="motion_whisker_32x32" /></span> --\x3e\n        <span class="logo-text text-truncate">{{vm.getLogo() | uppercase}}</span>\n    </div>\n    <md-icon class="fold-toggle s18" md-font-icon="icon-backburger" hide show-gt-sm ng-click="vm.toggleMsNavigationFolded()"></md-icon>\n</md-toolbar>\n\n<ms-navigation class="scrollable" folded="vm.folded" ms-scroll="vm.msScrollOptions"></ms-navigation>'),e.put("app/quick-panel/quick-panel.html",'<md-content>\n    <md-tabs md-no-pagination md-swipe-content md-stretch-tabs="always">\n        <md-tab ng-if="vm.license.gray">\n            <md-tab-label>\n                <md-icon md-font-icon="icon-alert" class="icon md-warn blink"></md-icon>\n                <span translate="QUICKPANEL.LICENSE">LICENSE</span>\n            </md-tab-label>\n            <md-tab-body>\n                <md-list-item>\n                    <dl>\n                        <dt translate="QUICKPANEL.EXPIRATION_REASON"> Expiration reason </dt>\n\n                        <dt translate="QUICKPANEL.EXPIRATION_DATE"> Expiration date </dt>\n                        <dd>{{ vm.license.deadline }}</dd>\n\n                        <dt translate="QUICKPANEL.OLD_TOKEN"> Old Token </dt>\n                        <dd>{{ vm.license.uuid }}</dd>\n\n                        <dt translate="QUICKPANEL.NEW_TOKEN"> New Token </dt>\n                        <dd>{{ vm.license.machineUuid }}</dd>\n\n                        <dt translate="QUICKPANEL.CONTACT_XCALLY_MOTION_SUPPORT"> Contact xCALLY MOTION Support </dt>\n                        <dd>\n                            {{ \'QUICKPANEL.SEND_EMAIL_TO\' | translate }} <a href="mailto:license@xcally.com?subject=New%20token%20detected&body=Hi xCALLY, New Token: {{vm.license.machineUuid}}, Old token: {{vm.license.uuid}}">license@xcally.com</a>.\n                        </dd>\n                    </dl>\n                </md-list-item>\n            </md-tab-body>\n        </md-tab>\n\n        <md-tab>\n            <md-tab-label>\n                <span translate="QUICKPANEL.TODAY">TODAY</span>\n            </md-tab-label>\n            <md-tab-body>\n                <md-content class="today-tab scrollable" ms-scroll ng-include="\'app/quick-panel/tabs/today/today-tab.html\'">\n                </md-content>\n            </md-tab-body>\n        </md-tab>\n        \x3c!-- <md-tab>\n  <md-tab-label>\n  <span translate="QUICKPANEL.CHAT">CHAT</span>\n</md-tab-label>\n<md-tab-body>\n<md-content class="chat-tab scrollable" ms-scroll\nng-include="\'app/quick-panel/tabs/chat/chat-tab.html\'"\nng-controller="ChatTabController as vm">\n</md-content>\n</md-tab-body>\n</md-tab>\n<md-tab>\n<md-tab-label>\n<span translate="QUICKPANEL.ACTIVITY">ACTIVITY</span>\n</md-tab-label>\n<md-tab-body>\n<md-content class="activity-tab scrollable" ms-scroll\nng-include="\'app/quick-panel/tabs/activity/activity-tab.html\'">\n</md-content>\n</md-tab-body>\n</md-tab> --\x3e\n    </md-tabs>\n</md-content>'),e.put("app/quick-panel/tabs/activity/activity-tab.html",'<md-list class="friends">\n    <md-subheader class="md-no-sticky">\n        <span translate="QUICKPANEL.FRIENDS">Friends</span>\n    </md-subheader>\n\n    <md-list-item class="friend md-3-line" ng-repeat="friend in vm.activities.friends">\n        <img ng-src="{{friend.avatar}}" class="md-avatar" alt="{{friend.name}}" />\n\n        <div class="status {{friend.status}}"></div>\n\n        <div ng-if="contact.unread" class="md-accent-bg unread-message-count">{{contact.unread}}</div>\n\n        <div class="md-list-item-text">\n            <h3 class="message">{{friend.message}}</h3>\n            <p class="time">{{friend.time}}</p>\n        </div>\n    </md-list-item>\n</md-list>\n\n<md-divider></md-divider>\n\n<md-list class="servers">\n    <md-subheader class="md-no-sticky">\n        <span translate="QUICKPANEL.APP_SERVERS">Application Servers</span>\n    </md-subheader>\n\n    <md-list-item class="server md-3-line" ng-repeat="server in vm.activities.servers">\n        <md-icon md-font-icon="icon-checkbox-blank-circle" class="s16 status" ng-class="server.status"></md-icon>\n\n        <div class="md-list-item-text">\n            <h3>{{server.location}}</h3>\n            <p>{{server.detail}}</p>\n        </div>\n    </md-list-item>\n</md-list>\n\n<md-divider></md-divider>\n\n<md-list class="stats">\n    <md-subheader class="md-no-sticky">\n        <span translate="QUICKPANEL.USER_STATS">User Stats</span>\n    </md-subheader>\n\n    <md-list-item class="stat md-2-line" ng-repeat="stat in vm.activities.stats">\n        <div class="md-list-item-text">\n            <span>{{stat.title}} ({{stat.current}} / {{stat.total}})</span>\n            <md-progress-linear ng-class="stat.status" md-mode="determinate" value="{{stat.percent}}"></md-progress-linear>\n        </div>\n    </md-list-item>\n</md-list>'),e.put("app/quick-panel/tabs/chat/chat-tab.html",'<div class="main animate-slide-left" ng-hide="vm.chatActive">\n    <md-list class="recent">\n        <md-subheader class="md-no-sticky">\n            <span translate="QUICKPANEL.RECENT">Recent</span>\n        </md-subheader>\n\n        <md-list-item class="contact md-3-line" ng-repeat="contact in vm.contacts.recent" ng-click="vm.toggleChat(contact)">\n            <img ng-src="{{contact.avatar}}" class="md-avatar" alt="{{contact.name}}" />\n\n            <div class="status  {{contact.status}}"></div>\n\n            <div ng-if="contact.unread" class="md-accent-bg unread-message-count">{{contact.unread}}</div>\n\n            <div class="md-list-item-text">\n                <h3>{{contact.name}}</h3>\n                <p class="last-message">{{contact.lastMessage}}</p>\n            </div>\n        </md-list-item>\n    </md-list>\n\n    <md-divider></md-divider>\n\n    <md-list class="all">\n        <md-subheader class="md-no-sticky">\n            <span translate="QUICKPANEL.START_NEW_CHAT">Start New Chat</span>\n        </md-subheader>\n\n        <md-list-item class="contact" ng-repeat="contact in vm.contacts.all" ng-click="vm.toggleChat(contact)">\n            <img ng-src="{{contact.avatar}}" class="md-avatar" alt="{{contact.name}}" />\n\n            <div class="status {{contact.status}}"></div>\n\n            <div class="md-list-item-text">\n                <h3>{{contact.name}}</h3>\n            </div>\n        </md-list-item>\n    </md-list>\n\n    <md-divider></md-divider>\n</div>\n\n<div class="chat animate-slide-right" ng-show="vm.chatActive" layout="column">\n    <md-toolbar class="md-accent">\n        <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n\n            <div layout="row" layout-align="start center">\n                <md-button class="md-icon-button" ng-click="vm.toggleChat()" aria-label="Back" translate translate-attr-aria-label="QUICKPANEL.BACK">\n                    <md-icon md-font-icon="icon-keyboard-backspace"></md-icon>\n                </md-button>\n                <h4>\n                    <span>{{vm.chat.contact.name}}</span>\n                </h4>\n            </div>\n\n            <div layout="row" layout-align="end center">\n                <md-button class="md-icon-button" aria-label="Call" translate translate-attr-aria-label="QUICKPANEL.CALL">\n                    <md-icon md-font-icon="icon-phone"></md-icon>\n                </md-button>\n\n                <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="QUICKPANEL.MORE">\n                    <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                </md-button>\n            </div>\n        </div>\n\n    </md-toolbar>\n    <md-content flex layout-paddings ms-scroll id="chat-dialog">\n        <div layout="row" ng-repeat="dialog in vm.chat.contact.dialog" class="md-padding message-row" ng-class="dialog.who">\n            <img ng-if="dialog.who ===\'contact\'" ng-src="{{vm.chat.contact.avatar}}" class="avatar" alt="{{vm.chat.contact.name}}" />\n            <img ng-if="dialog.who ===\'user\'" class="avatar" src="assets/images/avatars/profile.jpg">\n\n            <div class="bubble" flex>\n                <div class="message">{{dialog.message}}</div>\n                <div class="time secondary-text">{{dialog.time}}</div>\n            </div>\n        </div>\n    </md-content>\n\n    <form ng-submit="vm.reply()" layout="row" class="reply" layout-align="start center">\n        <textarea ng-keyup="$event.keyCode == 13 ? vm.reply() : null" flex ng-model="vm.replyMessage" placeholder="Type and hit enter to send message" translate translate-attr-placeholder="QUICKPANEL.REPLY_PLACEHOLDER"></textarea>\n\n        <md-button class="md-fab md-mini" type="submit" aria-label="Send message" translate translate-attr-aria-label="QUICKPANEL.SEND_MESSAGE">\n            <md-icon md-font-icon="icon-send"></md-icon>\n        </md-button>\n    </form>\n</div>'),e.put("app/quick-panel/tabs/today/today-tab.html",'<md-list class="date">\n    <md-subheader class="md-no-sticky"><span translate="QUICKPANEL.TODAY">Today</span></md-subheader>\n    <md-list-item class="md-display-1 md-2-line">\n        <div class="secondary-text">\n            <div translate="QUICKPANEL.{{ (vm.date | date:\'EEEE\').toUpperCase() }}"></div>\n            <div layout="row" layout-align="start start">\n                <span> {{vm.date | date:\'d\'}}</span>\n                <span class="md-subhead">th</span>\n                <span translate="QUICKPANEL.{{ (vm.date | date:\'MMMM\').toUpperCase() }}"></span>\n            </div>\n        </div>\n    </md-list-item>\n</md-list>\n\n\x3c!-- <md-divider></md-divider>\n\n<md-list>\n    <md-subheader class="md-no-sticky"><span translate="QUICKPANEL.EVENTS">Events</span></md-subheader>\n\n    <md-list-item class="md-2-line" ng-repeat="event in vm.events" ng-click="dummyFunction()">\n        <div class="md-list-item-text">\n            <h3>{{event.title}}</h3>\n\n            <p>{{event.detail}}</p>\n        </div>\n    </md-list-item>\n</md-list>\n\n<md-divider></md-divider>\n\n<md-list>\n    <md-subheader class="md-no-sticky"><span translate="QUICKPANEL.NOTES">Notes</span></md-subheader>\n    <md-list-item class="md-2-line" ng-repeat="note in vm.notes" ng-click="dummyFunction()">\n        <div class="md-list-item-text">\n            <h3>{{note.title}}</h3>\n\n            <p>{{note.detail}}</p>\n        </div>\n    </md-list-item>\n</md-list>\n\n<md-divider></md-divider>\n\n<md-list>\n    <md-subheader class="md-no-sticky"><span translate="QUICKPANEL.QUICK_SETTINGS">Quick Settings</span></md-subheader>\n\n    <md-list-item>\n        <h3 translate="QUICKPANEL.NOTIFICATIONS">Notifications</h3>\n        <md-switch class="md-secondary" ng-model="vm.settings.notify" aria-label="Notifications" translate\n                   translate-attr-aria-label="QUICKPANEL.NOTIFICATIONS"></md-switch>\n    </md-list-item>\n\n    <md-list-item>\n        <h3 translate="QUICKPANEL.CLOUD_SYNC">Cloud Sync</h3>\n        <md-switch class="md-secondary" ng-model="vm.settings.cloud" aria-label="Cloud Sync" translate\n                   translate-attr-aria-label="QUICKPANEL.CLOUD_SYNC"></md-switch>\n    </md-list-item>\n\n    <md-list-item>\n        <h3 translate="QUICKPANEL.RETRO_THRUSTERS">Retro Thrusters</h3>\n        <md-switch class="md-secondary md-warn" ng-model="vm.settings.retro" aria-label="Retro Thrusters" translate\n                   translate-attr-aria-label="QUICKPANEL.RETRO_THRUSTERS"></md-switch>\n    </md-list-item>\n</md-list> --\x3e'),e.put("app/toolbar/changepassword/changepassword.html",'<md-dialog class="user-dialog" aria-label="{{vm.name}}">\n    <form name="changePasswordForm" class="md-inline-form" novalidate>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2>Change Password</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block" ng-if="vm.user.role == \'agent\'">\n                <label translate="TOOLBAR.OLD_PASSWORD">Old Password</label>\n                <input type="password" name="oldPassword" ng-model="vm.oldPassword" placeholder="Password" translate translate-attr-placeholder="TOOLBAR.OLD_PASSWORD" required>\n                <div ng-messages="changePasswordForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLBAR.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLBAR.NEW_PASSWORD">New Password</label>\n                <input type="password" name="password" ng-model="vm.password" placeholder="Password" translate translate-attr-placeholder="TOOLBAR.NEW_PASSWORD" required>\n                <div ng-messages="changePasswordForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLBAR.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLBAR.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="changePasswordForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="TOOLBAR.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="TOOLBAR.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.savePassword()" class="send-button md-accent md-raised" ng-disabled="changePasswordForm.$invalid || changePasswordForm.$pristine" aria-label="SAVE" translate="TOOLBAR.SAVE" translate-attr-aria-label="TOOLBAR.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/toolbar/layouts/content-with-toolbar/toolbar.html",'<div layout="row" layout-align="space-between center">\n\n    <div layout="row" layout-align="start center">\n        <div class="logo" layout="row" layout-align="start center">\n            <span class="logo-image">F</span>\n            <span class="logo-text">MOTION</span>\n        </div>\n\n        <div class="toolbar-separator"></div>\n\n        <ms-shortcuts></ms-shortcuts>\n\n        <div class="toolbar-separator"></div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n\n        <md-progress-circular id="toolbar-progress" ng-if="$root.loadingProgress" class="md-accent" md-mode="indeterminate" md-diameter="32">\n        </md-progress-circular>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide-sm>John Doe</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-sm></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent" ui-sref="app.pages_profile">\n                        <md-icon md-font-icon="icon-account" class="icon"></md-icon>\n                        <md-button>My Profile</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent" ui-sref="app.mail">\n                        <md-icon md-font-icon="icon-email" class="icon"></md-icon>\n                        <md-button>Inbox</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon"></md-icon>\n                        <md-menu id="user-status-menu">\n                            <md-button ng-click="$mdOpenMenu()" class="status" ng-class="vm.userStatus.class">\n                                {{vm.userStatus.title}}\n                            </md-button>\n                            <md-menu-content width="2">\n                                <md-menu-item class="status md-indent" ng-class="{\'selected\': status === vm.userStatus}" ng-repeat="status in vm.userStatusOptions">\n                                    <md-icon md-font-icon="{{status.icon}}" ng-style="{\'color\': status.color }" class="icon"></md-icon>\n                                    <md-button ng-click="vm.setUserStatus(status)">\n                                        {{status.title}}\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n                            <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n                            <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n        </md-button>\n    </div>\n</div>'),e.put("app/toolbar/layouts/horizontal-navigation/toolbar.html",'<div class="top-row" layout="row" layout-align="space-between center">\n\n    <div layout="row" layout-align="start center">\n        <div class="navigation-toggle" hide-gt-sm>\n            <md-button class="md-icon-button" ng-click="vm.toggleHorizontalMobileMenu()" aria-label="Toggle Mobile Navigation">\n                <md-icon md-font-icon="icon-menu"></md-icon>\n            </md-button>\n        </div>\n\n        <div class="logo" layout="row" layout-align="start center">\n            <span class="logo-image">F</span>\n            <span class="logo-text">MOTION</span>\n        </div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n        <md-progress-circular id="toolbar-progress" ng-if="$root.loadingProgress" class="md-accent" md-mode="indeterminate" md-diameter="32">\n        </md-progress-circular>\n\n        <ms-shortcuts></ms-shortcuts>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide-sm>John Doe</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-sm></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent" ui-sref="app.pages_profile">\n                        <md-icon md-font-icon="icon-account" class="icon"></md-icon>\n                        <md-button>My Profile</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent" ui-sref="app.mail">\n                        <md-icon md-font-icon="icon-email" class="icon"></md-icon>\n                        <md-button>Inbox</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon"></md-icon>\n                        <md-menu id="user-status-menu">\n                            <md-button ng-click="$mdOpenMenu()" class="status" ng-class="vm.userStatus.class">\n                                {{vm.userStatus.title}}\n                            </md-button>\n                            <md-menu-content width="2">\n                                <md-menu-item class="status md-indent" ng-class="{\'selected\': status === vm.userStatus}" ng-repeat="status in vm.userStatusOptions">\n                                    <md-icon md-font-icon="{{status.icon}}" ng-style="{\'color\': status.color }" class="icon"></md-icon>\n                                    <md-button ng-click="vm.setUserStatus(status)">\n                                        {{status.title}}\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n                            <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n                            <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n        </md-button>\n    </div>\n</div>'),e.put("app/toolbar/layouts/vertical-navigation-fullwidth-toolbar-2/toolbar.html",'<div layout="row" layout-align="start center">\n    <div layout="row" layout-align="start center" flex>\n\n        <div class="logo" layout="row" layout-align="start center">\n            <span class="logo-image">F</span>\n            <span class="logo-text">MOTION</span>\n        </div>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="navigation-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'navigation\')" hide-gt-sm aria-label="Toggle navigation" translate translate-attr-aria-label="TOOLBAR.TOGGLE_NAVIGATION">\n            <md-icon md-font-icon="icon-menu" class="icon"></md-icon>\n        </md-button>\n\n        <md-button class="md-icon-button navigation-fold-toggle" hide show-gt-sm aria-label="Toggle navigation fold" translate translate-attr-aria-label="TOOLBAR.TOGGLE_NAVIGATION_FOLD" ng-click="vm.toggleMsNavigationFolded()">\n            <md-icon class="s18" md-font-icon="icon-backburger"></md-icon>\n        </md-button>\n\n        <ms-shortcuts></ms-shortcuts>\n\n        <div class="toolbar-separator"></div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n        <md-progress-circular id="toolbar-progress" ng-if="$root.loadingProgress" class="md-accent" md-mode="indeterminate" md-diameter="32">\n        </md-progress-circular>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide-sm>John Doe</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-sm></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent" ui-sref="app.pages_profile">\n                        <md-icon md-font-icon="icon-account" class="icon"></md-icon>\n                        <md-button>My Profile</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent" ui-sref="app.mail">\n                        <md-icon md-font-icon="icon-email" class="icon"></md-icon>\n                        <md-button>Inbox</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon"></md-icon>\n                        <md-menu id="user-status-menu">\n                            <md-button ng-click="$mdOpenMenu()" class="status" ng-class="vm.userStatus.class">\n                                {{vm.userStatus.title}}\n                            </md-button>\n                            <md-menu-content width="2">\n                                <md-menu-item class="status md-indent" ng-class="{\'selected\': status === vm.userStatus}" ng-repeat="status in vm.userStatusOptions">\n                                    <md-icon md-font-icon="{{status.icon}}" ng-style="{\'color\': status.color }" class="icon"></md-icon>\n                                    <md-button ng-click="vm.setUserStatus(status)">\n                                        {{status.title}}\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n                            <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n                            <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n        </md-button>\n    </div>\n</div>'),e.put("app/toolbar/layouts/vertical-navigation-fullwidth-toolbar/toolbar.html",'<div layout="row" layout-align="start center">\n    <div layout="row" layout-align="start center" flex>\n        <md-button id="navigation-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'navigation\')" hide-gt-sm aria-label="Toggle navigation" translate translate-attr-aria-label="TOOLBAR.TOGGLE_NAVIGATION">\n            <md-icon md-font-icon="icon-menu" class="icon"></md-icon>\n        </md-button>\n\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <ms-shortcuts></ms-shortcuts>\n\n        <div class="toolbar-separator"></div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n        <md-progress-circular id="toolbar-progress" ng-if="$root.loadingProgress" class="md-accent" md-mode="indeterminate" md-diameter="32">\n        </md-progress-circular>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide-sm>John Doe</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-sm></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent" ui-sref="app.pages_profile">\n                        <md-icon md-font-icon="icon-account" class="icon"></md-icon>\n                        <md-button>My Profile</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent" ui-sref="app.mail">\n                        <md-icon md-font-icon="icon-email" class="icon"></md-icon>\n                        <md-button>Inbox</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon"></md-icon>\n                        <md-menu id="user-status-menu">\n                            <md-button ng-click="$mdOpenMenu()" class="status" ng-class="vm.userStatus.class">\n                                {{vm.userStatus.title}}\n                            </md-button>\n                            <md-menu-content width="2">\n                                <md-menu-item class="status md-indent" ng-class="{\'selected\': status === vm.userStatus}" ng-repeat="status in vm.userStatusOptions">\n                                    <md-icon md-font-icon="{{status.icon}}" ng-style="{\'color\': status.color }" class="icon"></md-icon>\n                                    <md-button ng-click="vm.setUserStatus(status)">\n                                        {{status.title}}\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n                            <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n                            <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n        </md-button>\n    </div>\n</div>'),e.put("app/toolbar/layouts/vertical-navigation/toolbar.html",'<div layout="row" layout-align="start center">\n    <div layout="row" layout-align="start center" flex>\n        <md-button id="navigation-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'navigation\')" hide-gt-sm aria-label="Toggle navigation" translate translate-attr-aria-label="TOOLBAR.TOGGLE_NAVIGATION">\n            <md-icon md-font-icon="icon-menu" class="icon"></md-icon>\n        </md-button>\n\n        <ms-shortcuts ng-if="!vm.isAgent()"></ms-shortcuts>\n\n        <div class="toolbar-separator"></div>\n\n        <div ng-if="vm.license.demo" class="blink md-padding">\n            <span class="md-warn-fg" translate="TOOLBAR.TRIAL_VERSION">Trial Version</span>\n        </div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n        \x3c!-- <md-progress-circular id="toolbar-progress" ng-disabled="!$root.loadingProgress" class="md-accent" md-diameter="32"></md-progress-circular> --\x3e\n\n        <div class="h5 padding-10" ng-if="vm.isAgent()">\n            <div>\n                <timer ng-if="vm.user.lastLoginAt" start-time="vm.user.lastLoginAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n                <md-tooltip>{{\'TOOLBAR.LOGIN_TIME\' | translate}}</md-tooltip>\n                <md-icon md-font-icon="icon-timelapse" class="icon s16"></md-icon>\n            </div>\n            <div ng-if="vm.user.voicePause">\n                <timer start-time="vm.user.lastPauseAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n                <md-tooltip>{{\'TOOLBAR.PAUSE_TIME\' | translate}}</md-tooltip>\n                <md-icon md-font-icon="icon-coffee" class="icon s16"></md-icon>\n            </div>\n            <div ng-if="vm.user.voicePause">\n                <span class="blink red-fg">{{vm.user.pauseType || \'dafault\' | uppercase}}</span>\n            </div>\n        </div>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg" ng-if="!vm.user.userpic">\n                            <img md-menu-align-target class="avatar" ng-src="api/users/{{vm.user.id}}/avatar" ng-if="vm.user.userpic">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide show-gt-sm>{{vm.user.fullname}}</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-xs></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-key-variant" class="icon"></md-icon>\n                        <md-button ng-click="vm.changePassword($event)">Change Password</md-button>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button ng-if="vm.user.role === \'agent\'" class="language-button" ng-click="vm.preview($event)" aria-label="Language" md-menu-origin md-menu-align-target>\n            <md-icon md-font-icon="icon-fire" class="icon"></md-icon>\n            <md-tooltip><span translate="TOOLBAR.PREVIEW">Preview</span></md-tooltip>\n        </md-button>\n\n        <ms-search-bar ng-if="vm.user.role !== \'agent\'" on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n              <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n              <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon ng-if="!vm.license.gray" md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n            <md-icon ng-if="vm.license.gray" md-font-icon="icon-alert" class="icon md-warn blink"></md-icon>\n        </md-button>\n    </div>\n</div>')}]);
\ No newline at end of file
diff --git a/public/scripts/app.c298f8c5.js b/public/scripts/app.c298f8c5.js
deleted file mode 100644 (file)
index 34a68c8..0000000
+++ /dev/null
@@ -1 +0,0 @@
-function mxDictionary(){this.clear()}function mxPoint(e,t){this.x=null!=e?e:0,this.y=null!=t?t:0}function mxRectangle(e,t,n,a){mxPoint.call(this,e,t),this.width=null!=n?n:0,this.height=null!=a?a:0}function mxEventObject(e){this.name=e,this.properties=[];for(var t=1;t<arguments.length;t+=2)null!=arguments[t+1]&&(this.properties[arguments[t]]=arguments[t+1])}function mxMouseEvent(e,t){this.evt=e,this.state=t}function mxEventSource(e){this.setEventSource(e)}function mxXmlRequest(e,t,n,a,i,o){this.url=e,this.params=t,this.method=n||"POST",this.async=null==a||a,this.username=i,this.password=o}function mxWindow(e,t,n,a,i,o,s,r,l,d){null!=t&&(s=null==s||s,this.content=t,this.init(n,a,i,o,d),this.installMaximizeHandler(),this.installMinimizeHandler(),this.installCloseHandler(),this.setMinimizable(s),this.setTitle(e),(null==r||r)&&this.installMoveHandler(),null!=l&&null!=l.parentNode?l.parentNode.replaceChild(this.div,l):document.body.appendChild(this.div))}function mxForm(e){this.table=document.createElement("table"),this.table.className=e,this.body=document.createElement("tbody"),this.table.appendChild(this.body)}function mxImage(e,t,n){this.src=e,this.width=t,this.height=n}function mxDivResizer(e,t){if("div"==e.nodeName.toLowerCase()){null==t&&(t=window),this.div=e;var n=mxUtils.getCurrentStyle(e);null!=n&&(this.resizeWidth="auto"==n.width,this.resizeHeight="auto"==n.height),mxEvent.addListener(t,"resize",mxUtils.bind(this,function(e){this.handlingResize||(this.handlingResize=!0,this.resize(),this.handlingResize=!1)})),this.resize()}}function mxDragSource(e,t){this.element=e,this.dropHandler=t,mxEvent.addGestureListeners(e,mxUtils.bind(this,this.mouseDown))}function mxToolbar(e){this.container=e}function mxSession(e,t,n,a){this.model=e,this.urlInit=t,this.urlPoll=n,this.urlNotify=a,null!=e&&(this.codec=new mxCodec,this.codec.lookup=function(t){return e.getCell(t)}),e.addListener(mxEvent.NOTIFY,mxUtils.bind(this,function(e,t){var n=t.getProperty("edit");(null!=n&&this.debug||this.connected&&!this.suspended)&&this.notify("<edit>"+this.encodeChanges(n.changes,n.undone)+"</edit>")}))}function mxUndoableEdit(e,t){this.source=e,this.changes=[],this.significant=null==t||t}function mxUndoManager(e){this.size=null!=e?e:100,this.clear()}function mxPanningManager(e){this.thread=null,this.active=!1,this.dy=this.dx=this.t0y=this.t0x=this.tdy=this.tdx=0,this.scrollbars=!1,this.scrollTop=this.scrollLeft=0,this.mouseListener={mouseDown:function(e,t){},mouseMove:function(e,t){},mouseUp:mxUtils.bind(this,function(e,t){this.active&&this.stop()})},e.addMouseListener(this.mouseListener),mxEvent.addListener(document,"mouseup",mxUtils.bind(this,function(){this.active&&this.stop()}));var t=mxUtils.bind(this,function(){return this.scrollbars=mxUtils.hasScrollbars(e.container),this.scrollLeft=e.container.scrollLeft,this.scrollTop=e.container.scrollTop,window.setInterval(mxUtils.bind(this,function(){if(this.tdx-=this.dx,this.tdy-=this.dy,this.scrollbars){var t=-e.container.scrollLeft-Math.ceil(this.dx),n=-e.container.scrollTop-Math.ceil(this.dy);e.panGraph(t,n),e.panDx=this.scrollLeft-e.container.scrollLeft,e.panDy=this.scrollTop-e.container.scrollTop,e.fireEvent(new mxEventObject(mxEvent.PAN))}else e.panGraph(this.getDx(),this.getDy())}),this.delay)});this.isActive=function(){return active},this.getDx=function(){return Math.round(this.tdx)},this.getDy=function(){return Math.round(this.tdy)},this.start=function(){this.t0x=e.view.translate.x,this.t0y=e.view.translate.y,this.active=!0},this.panTo=function(n,a,i,o){this.active||this.start(),this.scrollLeft=e.container.scrollLeft,this.scrollTop=e.container.scrollTop,o=null!=o?o:0;var s=e.container;this.dx=n+(null!=i?i:0)-s.scrollLeft-s.clientWidth,0>this.dx&&Math.abs(this.dx)<this.border?this.dx=this.border+this.dx:this.dx=this.handleMouseOut?Math.max(this.dx,0):0,0==this.dx&&(this.dx=n-s.scrollLeft,this.dx=0<this.dx&&this.dx<this.border?this.dx-this.border:this.handleMouseOut?Math.min(0,this.dx):0),this.dy=a+o-s.scrollTop-s.clientHeight,0>this.dy&&Math.abs(this.dy)<this.border?this.dy=this.border+this.dy:this.dy=this.handleMouseOut?Math.max(this.dy,0):0,0==this.dy&&(this.dy=a-s.scrollTop,this.dy=0<this.dy&&this.dy<this.border?this.dy-this.border:this.handleMouseOut?Math.min(0,this.dy):0),0!=this.dx||0!=this.dy?(this.dx*=this.damper,this.dy*=this.damper,null==this.thread&&(this.thread=t())):null!=this.thread&&(window.clearInterval(this.thread),this.thread=null)},this.stop=function(){if(this.active)if(this.active=!1,null!=this.thread&&(window.clearInterval(this.thread),this.thread=null),this.tdy=this.tdx=0,this.scrollbars)e.panDx=0,e.panDy=0,e.fireEvent(new mxEventObject(mxEvent.PAN));else{var t=e.panDx,n=e.panDy;0==t&&0==n||(e.panGraph(0,0),e.view.setTranslate(this.t0x+t/e.view.scale,this.t0y+n/e.view.scale))}},this.destroy=function(){e.removeMouseListener(this.mouseListener)}}function mxPopupMenu(e){this.factoryMethod=e,null!=e&&this.init()}function mxAutoSaveManager(e){this.changeHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.graphModelChanged(t.getProperty("edit").changes)}),this.setGraph(e)}function mxAnimation(e){this.delay=null!=e?e:20}function mxMorphing(e,t,n,a){mxAnimation.call(this,a),this.graph=e,this.steps=null!=t?t:6,this.ease=null!=n?n:1.5}function mxImageBundle(e){this.images=[],this.alt=null!=e&&e}function mxImageExport(){}function mxAbstractCanvas2D(){this.converter=this.createUrlConverter(),this.reset()}function mxXmlCanvas2D(e){mxAbstractCanvas2D.call(this),this.root=e,this.writeDefaults()}function mxSvgCanvas2D(e,t){mxAbstractCanvas2D.call(this),this.root=e,this.gradients=[],this.defs=null,this.styleEnabled=null!=t&&t;var n=null;if(e.ownerDocument!=document)for(n=e;null!=n&&"svg"!=n.nodeName;)n=n.parentNode;null!=n&&(0<n.getElementsByTagName("defs").length&&(this.defs=n.getElementsByTagName("defs")[0]),null==this.defs&&(this.defs=this.createElement("defs"),null!=n.firstChild?n.insertBefore(this.defs,n.firstChild):n.appendChild(this.defs)),this.styleEnabled&&this.defs.appendChild(this.createStyle()))}function mxGuide(e,t){this.graph=e,this.setStates(t)}function mxStencil(e){this.desc=e,this.parseDescription(),this.parseConstraints()}function mxShape(e){this.stencil=e,this.strokewidth=1,this.rotation=0,this.opacity=100,this.flipV=this.flipH=!1}function mxActor(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxCloud(e,t,n,a){mxActor.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxRectangleShape(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxEllipse(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxDoubleEllipse(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxRhombus(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxPolyline(e,t,n){mxShape.call(this),this.points=e,this.stroke=t,this.strokewidth=null!=n?n:1}function mxArrow(e,t,n,a,i,o,s){mxShape.call(this),this.points=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1,this.arrowWidth=null!=i?i:mxConstants.ARROW_WIDTH,this.spacing=null!=o?o:mxConstants.ARROW_SPACING,this.endSize=null!=s?s:mxConstants.ARROW_SIZE}function mxText(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h,v,b,f,E){mxShape.call(this),this.value=e,this.bounds=t,this.color=null!=i?i:"black",this.align=null!=n?n:"",this.valign=null!=a?a:"",this.family=null!=o?o:mxConstants.DEFAULT_FONTFAMILY,this.size=null!=s?s:mxConstants.DEFAULT_FONTSIZE,this.fontStyle=null!=r?r:mxConstants.DEFAULT_FONTSTYLE,this.spacing=parseInt(l||2),this.spacingTop=this.spacing+parseInt(d||0),this.spacingRight=this.spacing+parseInt(c||0),this.spacingBottom=this.spacing+parseInt(m||0),this.spacingLeft=this.spacing+parseInt(u||0),this.horizontal=null==p||p,this.background=g,this.border=h,this.wrap=null!=v&&v,this.clipped=null!=b&&b,this.overflow=null!=f?f:"visible",this.labelPadding=null!=E?E:0,this.rotation=0}function mxTriangle(){mxActor.call(this)}function mxHexagon(){mxActor.call(this)}function mxLine(e,t,n){mxShape.call(this),this.bounds=e,this.stroke=t,this.strokewidth=null!=n?n:1}function mxImageShape(e,t,n,a,i){mxShape.call(this),this.bounds=e,this.image=t,this.fill=n,this.stroke=a,this.strokewidth=null!=i?i:1,this.shadow=!1}function mxLabel(e,t,n,a){mxRectangleShape.call(this,e,t,n,a)}function mxCylinder(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxConnector(e,t,n){mxPolyline.call(this,e,t,n)}function mxSwimlane(e,t,n,a){mxShape.call(this),this.bounds=e,this.fill=t,this.stroke=n,this.strokewidth=null!=a?a:1}function mxGraphLayout(e){this.graph=e}function mxStackLayout(e,t,n,a,i,o){mxGraphLayout.call(this,e),this.horizontal=null==t||t,this.spacing=null!=n?n:0,this.x0=null!=a?a:0,this.y0=null!=i?i:0,this.border=null!=o?o:0}function mxPartitionLayout(e,t,n,a){mxGraphLayout.call(this,e),this.horizontal=null==t||t,this.spacing=n||0,this.border=a||0}function mxCompactTreeLayout(e,t,n){mxGraphLayout.call(this,e),this.horizontal=null==t||t,this.invert=null!=n&&n}function WeightedCellSorter(e,t){this.cell=e,this.weightedValue=t}function mxFastOrganicLayout(e){mxGraphLayout.call(this,e)}function mxCircleLayout(e,t){mxGraphLayout.call(this,e),this.radius=null!=t?t:100}function mxParallelEdgeLayout(e){mxGraphLayout.call(this,e)}function mxCompositeLayout(e,t,n){mxGraphLayout.call(this,e),this.layouts=t,this.master=n}function mxEdgeLabelLayout(e,t){mxGraphLayout.call(this,e)}function mxGraphAbstractHierarchyCell(){this.x=[],this.y=[],this.temp=[]}function mxGraphHierarchyNode(e){mxGraphAbstractHierarchyCell.apply(this,arguments),this.cell=e}function mxGraphHierarchyEdge(e){mxGraphAbstractHierarchyCell.apply(this,arguments),this.edges=e}function mxGraphHierarchyModel(e,t,n,a,i){for(e.getGraph(),this.tightenToSource=i,this.roots=n,this.parent=a,this.vertexMapper={},this.edgeMapper={},this.maxRank=0,n=[],null==t&&(t=this.graph.getChildVertices(a)),this.maxRank=this.SOURCESCANSTARTRANK,this.createInternalCells(e,t,n),a=0;a<t.length;a++){i=n[a].connectsAsSource;for(var o=0;o<i.length;o++){var s=i[o];if(null!=(r=s.edges)&&0<r.length){var r=r[0],l=e.getVisibleTerminal(r,!1),l=mxCellPath.create(l),l=this.vertexMapper[l];n[a]==l&&(l=e.getVisibleTerminal(r,!0),l=mxCellPath.create(l),l=this.vertexMapper[l]),null!=l&&n[a]!=l&&(s.target=l,0==l.connectsAsTarget.length&&(l.connectsAsTarget=[]),0>mxUtils.indexOf(l.connectsAsTarget,s)&&l.connectsAsTarget.push(s))}}n[a].temp[0]=1}}function mxHierarchicalLayoutStage(){}function mxMedianHybridCrossingReduction(e){this.layout=e}function MedianCellSorter(){}function mxMinimumCycleRemover(e){this.layout=e}function mxCoordinateAssignment(e,t,n,a,i,o){this.layout=e,this.intraCellSpacing=t,this.interRankCellSpacing=n,this.orientation=a,this.initialX=i,this.parallelEdgeSpacing=o}function WeightedCellSorter(e,t){this.cell=e,this.weightedValue=t}function mxHierarchicalLayout(e,t,n){mxGraphLayout.call(this,e),this.orientation=null!=t?t:mxConstants.DIRECTION_NORTH,this.deterministic=null==n||n}function mxGraphModel(e){this.currentEdit=this.createUndoableEdit(),null!=e?this.setRoot(e):this.clear()}function mxRootChange(e,t){this.model=e,this.previous=this.root=t}function mxChildChange(e,t,n,a){this.model=e,this.previous=this.parent=t,this.child=n,this.previousIndex=this.index=a}function mxTerminalChange(e,t,n,a){this.model=e,this.cell=t,this.previous=this.terminal=n,this.source=a}function mxValueChange(e,t,n){this.model=e,this.cell=t,this.previous=this.value=n}function mxStyleChange(e,t,n){this.model=e,this.cell=t,this.previous=this.style=n}function mxGeometryChange(e,t,n){this.model=e,this.cell=t,this.previous=this.geometry=n}function mxCollapseChange(e,t,n){this.model=e,this.cell=t,this.previous=this.collapsed=n}function mxVisibleChange(e,t,n){this.model=e,this.cell=t,this.previous=this.visible=n}function mxCellAttributeChange(e,t,n){this.cell=e,this.attribute=t,this.previous=this.value=n}function mxCell(e,t,n){this.value=e,this.setGeometry(t),this.setStyle(n),null!=this.onInit&&this.onInit()}function mxGeometry(e,t,n,a){mxRectangle.call(this,e,t,n,a)}function mxPrintPreview(e,t,n,a,i,o,s,r,l){this.graph=e,this.scale=null!=t?t:1/e.pageScale,this.border=null!=a?a:0,this.pageFormat=null!=n?n:e.pageFormat,this.title=null!=r?r:"Printer-friendly version",this.x0=null!=i?i:0,this.y0=null!=o?o:0,this.borderColor=s,this.pageSelector=null==l||l}function mxStylesheet(){this.styles={},this.putDefaultVertexStyle(this.createDefaultVertexStyle()),this.putDefaultEdgeStyle(this.createDefaultEdgeStyle())}function mxCellState(e,t,n){this.view=e,this.cell=t,this.style=n,this.origin=new mxPoint,this.absoluteOffset=new mxPoint}function mxGraphSelectionModel(e){this.graph=e,this.cells=[]}function mxSelectionChange(e,t,n){this.selectionModel=e,this.added=null!=t?t.slice():null,this.removed=null!=n?n.slice():null}function mxCellEditor(e){this.graph=e}function mxCellRenderer(){}function mxGraphView(e){this.graph=e,this.translate=new mxPoint,this.graphBounds=new mxRectangle,this.states=new mxDictionary}function mxCurrentRootChange(e,t){if(this.view=e,this.previous=this.root=t,this.isUp=null==t,!this.isUp)for(var n=this.view.currentRoot,a=this.view.graph.getModel();null!=n;){if(n==t){this.isUp=!0;break}n=a.getParent(n)}}function mxGraph(e,t,n,a){this.mouseListeners=null,this.renderHint=n,this.dialect=mxClient.IS_SVG?mxConstants.DIALECT_SVG:n==mxConstants.RENDERING_HINT_EXACT&&mxClient.IS_VML?mxConstants.DIALECT_VML:n==mxConstants.RENDERING_HINT_FASTEST?mxConstants.DIALECT_STRICTHTML:n==mxConstants.RENDERING_HINT_FASTER?mxConstants.DIALECT_PREFERHTML:mxConstants.DIALECT_MIXEDHTML,this.model=null!=t?t:new mxGraphModel,this.multiplicities=[],this.imageBundles=[],this.cellRenderer=this.createCellRenderer(),this.setSelectionModel(this.createSelectionModel()),this.setStylesheet(null!=a?a:this.createStylesheet()),this.view=this.createGraphView(),this.graphModelChangeListener=mxUtils.bind(this,function(e,t){this.graphModelChanged(t.getProperty("edit").changes)}),this.model.addListener(mxEvent.CHANGE,this.graphModelChangeListener),this.createHandlers(),null!=e&&this.init(e),this.view.revalidate()}function mxCellOverlay(e,t,n,a,i,o){this.image=e,this.tooltip=t,this.align=null!=n?n:this.align,this.verticalAlign=null!=a?a:this.verticalAlign,this.offset=null!=i?i:new mxPoint,this.cursor=null!=o?o:"help"}function mxOutline(e,t){this.source=e,null!=t&&this.init(t)}function mxMultiplicity(e,t,n,a,i,o,s,r,l,d){this.source=e,this.type=t,this.attr=n,this.value=a,this.min=null!=i?i:0,this.max=null!=o?o:"n",this.validNeighbors=s,this.countError=mxResources.get(r)||r,this.typeError=mxResources.get(l)||l,this.validNeighborsAllowed=null==d||d}function mxLayoutManager(e){this.undoHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.beforeUndo(t.getProperty("edit"))}),this.moveHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsMoved(t.getProperty("cells"),t.getProperty("event"))}),this.setGraph(e)}function mxSpaceManager(e,t,n,a){this.resizeHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.foldHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.shiftRightwards=null==t||t,this.shiftDownwards=null==n||n,this.extendParents=null==a||a,this.setGraph(e)}function mxSwimlaneManager(e,t,n,a){this.horizontal=null==t||t,this.addEnabled=null==n||n,this.resizeEnabled=null==a||a,this.addHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.isAddEnabled()&&this.cellsAdded(t.getProperty("cells"))}),this.resizeHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.isResizeEnabled()&&this.cellsResized(t.getProperty("cells"))}),this.setGraph(e)}function mxTemporaryCellStates(e,t,n){if(this.view=e,t=null!=t?t:1,this.oldBounds=e.getGraphBounds(),this.oldStates=e.getStates(),this.oldScale=e.getScale(),e.setStates(new mxDictionary),e.setScale(t),null!=n){t=e.createState(new mxCell);for(i=0;i<n.length;i++)e.validateBounds(t,n[i]);for(var a=null,i=0;i<n.length;i++){var o=e.validatePoints(t,n[i]);null==a?a=o:a.add(o)}null==a&&(a=new mxRectangle),e.setGraphBounds(a)}}function mxCellStatePreview(e){this.graph=e,this.deltas={}}function mxConnectionConstraint(e,t){this.point=e,this.perimeter=null==t||t}function mxGraphHandler(e){this.graph=e,this.graph.addMouseListener(this),this.panHandler=mxUtils.bind(this,function(){this.updatePreviewShape()}),this.graph.addListener(mxEvent.PAN,this.panHandler)}function mxPanningHandler(e,t){null!=e&&(this.graph=e,this.factoryMethod=t,this.graph.addMouseListener(this),this.init())}function mxCellMarker(e,t,n,a){mxEventSource.call(this),null!=e&&(this.graph=e,this.validColor=null!=t?t:mxConstants.DEFAULT_VALID_COLOR,this.invalidColor=null!=t?n:mxConstants.DEFAULT_INVALID_COLOR,this.hotspot=null!=a?a:mxConstants.DEFAULT_HOTSPOT,this.highlight=new mxCellHighlight(e))}function mxSelectionCellsHandler(e){mxEventSource.call(this),this.graph=e,this.handlers=new mxDictionary,this.graph.addMouseListener(this),this.refreshHandler=mxUtils.bind(this,function(e,t){this.isEnabled()&&this.refresh()}),this.graph.getSelectionModel().addListener(mxEvent.CHANGE,this.refreshHandler),this.graph.getModel().addListener(mxEvent.CHANGE,this.refreshHandler),this.graph.getView().addListener(mxEvent.SCALE,this.refreshHandler),this.graph.getView().addListener(mxEvent.TRANSLATE,this.refreshHandler),this.graph.getView().addListener(mxEvent.SCALE_AND_TRANSLATE,this.refreshHandler),this.graph.getView().addListener(mxEvent.DOWN,this.refreshHandler),this.graph.getView().addListener(mxEvent.UP,this.refreshHandler)}function mxConnectionHandler(e,t){mxEventSource.call(this),null!=e&&(this.graph=e,this.factoryMethod=t,this.init())}function mxConstraintHandler(e){this.graph=e}function mxRubberband(e){null!=e&&(this.graph=e,this.graph.addMouseListener(this),this.panHandler=mxUtils.bind(this,function(){this.repaint()}),this.graph.addListener(mxEvent.PAN,this.panHandler),mxClient.IS_IE&&mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()})))}function mxVertexHandler(e){null!=e&&(this.state=e,this.init())}function mxEdgeHandler(e){null!=e&&(this.state=e,this.init())}function mxElbowEdgeHandler(e){mxEdgeHandler.call(this,e)}function mxEdgeSegmentHandler(e){mxEdgeHandler.call(this,e)}function mxKeyHandler(e,t){null!=e&&(this.graph=e,this.target=t||document.documentElement,this.normalKeys=[],this.shiftKeys=[],this.controlKeys=[],this.controlShiftKeys=[],mxEvent.addListener(this.target,"keydown",mxUtils.bind(this,function(e){this.keyDown(e)})),mxClient.IS_IE&&mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()})))}function mxTooltipHandler(e,t){null!=e&&(this.graph=e,this.delay=t||500,this.graph.addMouseListener(this))}function mxCellTracker(e,t,n){mxCellMarker.call(this,e,t),this.graph.addMouseListener(this),null!=n&&(this.getCell=n),mxClient.IS_IE&&mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()}))}function mxCellHighlight(e,t,n,a){null!=e&&(this.graph=e,this.highlightColor=null!=t?t:mxConstants.DEFAULT_VALID_COLOR,this.strokeWidth=null!=n?n:mxConstants.HIGHLIGHT_STROKEWIDTH,this.dashed=null!=a&&a,this.repaintHandler=mxUtils.bind(this,function(){this.repaint()}),this.graph.getView().addListener(mxEvent.SCALE,this.repaintHandler),this.graph.getView().addListener(mxEvent.TRANSLATE,this.repaintHandler),this.graph.getView().addListener(mxEvent.SCALE_AND_TRANSLATE,this.repaintHandler),this.graph.getModel().addListener(mxEvent.CHANGE,this.repaintHandler),this.resetHandler=mxUtils.bind(this,function(){this.hide()}),this.graph.getView().addListener(mxEvent.DOWN,this.resetHandler),this.graph.getView().addListener(mxEvent.UP,this.resetHandler))}function mxDefaultKeyHandler(e){if(null!=e){this.editor=e,this.handler=new mxKeyHandler(e.graph);var t=this.handler.escape;this.handler.escape=function(n){t.apply(this,arguments),e.hideProperties(),e.fireEvent(new mxEventObject(mxEvent.ESCAPE,"event",n))}}}function mxDefaultPopupMenu(e){this.config=e}function mxDefaultToolbar(e,t){this.editor=t,null!=e&&null!=t&&this.init(e)}function mxEditor(e){this.actions=[],this.addActions(),null!=document.body&&(this.cycleAttributeValues=[],this.popupHandler=new mxDefaultPopupMenu,this.undoManager=new mxUndoManager,this.graph=this.createGraph(),this.toolbar=this.createToolbar(),this.keyHandler=new mxDefaultKeyHandler(this),this.configure(e),this.graph.swimlaneIndicatorColorAttribute=this.cycleAttributeName,!mxClient.IS_LOCAL&&null!=this.urlInit&&(this.session=this.createSession()),null!=this.onInit&&this.onInit(),mxClient.IS_IE&&mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()})))}function mxCodec(e){this.document=e||mxUtils.createXmlDocument(),this.objects=[]}function mxObjectCodec(e,t,n,a){this.template=e,this.exclude=null!=t?t:[],this.idrefs=null!=n?n:[],this.mapping=null!=a?a:[],this.reverse={};for(var i in this.mapping)this.reverse[this.mapping[i]]=i}function Sidebar(e,t){this.editorUi=e,this.container=t,this.palettes=new Object,this.taglist=new Object,this.showTooltips=!0,this.graph=new Graph(document.createElement("div"),null,null,this.editorUi.editor.graph.getStylesheet()),this.graph.resetViewOnRootChange=!1,this.graph.foldingEnabled=!1,this.graph.setConnectable(!1),this.graph.autoScroll=!1,this.graph.setTooltips(!1),this.graph.setEnabled(!1),this.graph.container.style.visibility="hidden",this.graph.container.style.position="absolute",this.graph.container.style.overflow="hidden",this.graph.container.style.height="1px",this.graph.container.style.width="1px",mxClient.IS_IE||mxClient.IS_IE11||(this.graph.container.style.display="none"),document.body.appendChild(this.graph.container),this.pointerUpHandler=mxUtils.bind(this,function(){this.showTooltips=!0}),mxEvent.addListener(document,mxClient.IS_POINTER?"pointerup":"mouseup",this.pointerUpHandler),this.pointerDownHandler=mxUtils.bind(this,function(){this.showTooltips=!1,this.hideTooltip()}),mxEvent.addListener(document,mxClient.IS_POINTER?"pointerdown":"mousedown",this.pointerDownHandler),this.pointerMoveHandler=mxUtils.bind(this,function(e){for(var t=mxEvent.getSource(e);null!=t;){if(t==this.currentElt)return;t=t.parentNode}this.hideTooltip()}),mxEvent.addListener(document,mxClient.IS_POINTER?"pointermove":"mousemove",this.pointerMoveHandler),this.pointerOutHandler=mxUtils.bind(this,function(e){null==e.toElement&&null==e.relatedTarget&&this.hideTooltip()}),mxEvent.addListener(document,mxClient.IS_POINTER?"pointerout":"mouseout",this.pointerOutHandler),mxEvent.addListener(t,"scroll",mxUtils.bind(this,function(){this.showTooltips=!0})),this.init(),mxClient.IS_SVG||((new Image).src=IMAGE_PATH+"/tooltip.png")}function Actions(e){this.editorUi=e,this.actions=new Object,this.init()}function Action(e,t,n,a,i){mxEventSource.call(this),this.label=e,this.funct=t,this.enabled=null==n||n,this.iconCls=a,this.shortcut=i}function Menubar(e,t){this.editorUi=e,this.container=t,mxEvent.addGestureListeners(document,mxUtils.bind(this,function(e){this.hideMenu()}))}function Menu(e,t){mxEventSource.call(this),this.funct=e,this.enabled=null==t||t}function Toolbar(e,t){this.editorUi=e,this.container=t,this.init(),mxEvent.addGestureListeners(document,mxUtils.bind(this,function(e){this.hideMenu()}))}function createCheckbox(e){var t=document.createElement("input");return t.setAttribute("type","checkbox"),e&&t.setAttribute("checked",!0),t}function createDropdownFromApi(e,t,n,a,i,o,s,r){var l=new XMLHttpRequest;l.open("GET",e,!1),l.setRequestHeader("Authorization","Bearer "+i.editor.data.token),l.send(null);var d=[];200===l.status&&(d=JSON.parse(l.response));var c=document.createElement("select"),m=document.createElement("option");return m.text="-- None --",m.value="-1",c.appendChild(m),d.rows.forEach(function(e){r&&e[n]==r||((m=document.createElement("option")).text=e[n],o&&s?(m.value=s,o.forEach(function(t){m.value=m.value.replace("%"+t+"%",e[t])}),m.selected=m.value==t):(m.value=e[a],m.selected=e[a]==t),c.appendChild(m))}),c.className="form-control select2",c}function createDropdownWithOptgroupFromApi(e,t,n,a,i,o){var s=new XMLHttpRequest;s.open("GET",e,!1),s.setRequestHeader("Authorization","Bearer "+i.editor.data.token),s.send(null);var r=[];200===s.status&&(r=JSON.parse(s.response));var l=document.createElement("select"),d=document.createElement("option");d.text="-- None --",d.value="-1",l.appendChild(d);var c=_.groupBy(r.rows,o);for(var m in c)if(c.hasOwnProperty(m)){var u=document.createElement("optgroup");u.label=_.capitalize(m),c[m].forEach(function(e){(d=document.createElement("option")).text=e[n],d.value=e[a],d.selected=e[a]==t,u.appendChild(d)}),l.appendChild(u)}return l.className="form-control select2",l}function createGroupedDropdownFromApi(e,t,n,a,i,o){var s=new XMLHttpRequest;s.open("GET",e,!1),s.setRequestHeader("Authorization","Bearer "+i.editor.data.token),s.send(null);var r=[];200===s.status&&(r=JSON.parse(s.response));var l=document.createElement("select"),d=document.createElement("option");return d.text="-- None --",d.value="0",l.appendChild(d),r.rows.forEach(function(e){(d=document.createElement("option")).className="select-group-father",d.text=e[n].toUpperCase(),d.value=e[a],d.selected=e[a]==t,l.appendChild(d),e[o].forEach(function(e){(d=document.createElement("option")).className="select-group-son",d.text="-"+_.capitalize(e[n]),d.value=e[a],d.selected=e[a]==t,l.appendChild(d)})}),l.className="form-control select2",l}function createDropdownFromArray(e,t){var n=document.createElement("select");for(var a in e){var i=document.createElement("option");i.text=e[a],i.value=a,(t>0||""!=t)&&(i.selected=t===a),n.appendChild(i)}return n.className="form-control select2",n}function createDropdownFromTigerDialList(e){var t=document.createElement("select"),n=[],a=new XMLHttpRequest;try{if(a.open("POST","/api/rest/list/list",!1),a.send(JSON.stringify({page:1,size:6e5})),200===a.status){var i=JSON.parse(a.response);if(i.status>0){var o=i.response.RMI.rows;for(var s in o)n[o[s].id]=o[s].name}}}catch(e){console.log(e)}for(var r in n){var l=document.createElement("option");l.text=n[r],l.value=r,(e>0||""!=e)&&(l.selected=e===r),t.appendChild(l)}return t.className="form-control select2",t}function Dialog(e,t,n,a,i,o,s){var r=0;mxClient.IS_IE&&9!=document.documentMode&&(r=60),n+=r,a+=r;Math.max(0,Math.round((document.body.scrollWidth-n)/2)),Math.max(0,Math.round((Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)-a)/3));var l=e.createDiv("geDialog");l.className="modal fade in center",l.style.display="block",l.style.paddingRight="12px";var d=e.createDiv("geModalDialog");d.className="modal-dialog",d.appendChild(t),l.appendChild(d),null==this.bg&&(this.bg=e.createDiv("background"),this.bg.className="modal-backdrop fade in",mxClient.IS_QUIRKS&&new mxDivResizer(this.bg)),i&&document.body.appendChild(this.bg),document.body.appendChild(l),this.onDialogClose=s,this.container=l}function ImportDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("import")+" XML");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("row"),l=e.createDiv("col-md-12"),d=document.createElement("textarea");d.style.width="100%",d.style.height="374px";var c=document.createElement("input");c.type="file",c.setAttribute("accept","text/xml"),c.addEventListener("change",function(e){var t=e.target.files[0];if(console.log(t),t)if("text/xml"===t.type){var n=new FileReader;n.onload=function(e){var t=e.target.result;mxUtils.write(d,t)},n.readAsText(t)}else alert("Failed to load format file");else alert("Failed to load file")},!1),l.appendChild(c),l.appendChild(d),r.appendChild(l),a.appendChild(r);var m=mxUtils.button(mxResources.get("import"),mxUtils.bind(this,function(t){var n=mxUtils.parseXml(d.value);e.editor.setGraphXml(n.documentElement),e.hideDialog()}));m.className="btn blue";var u=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});u.className="btn default",i.appendChild(m),i.appendChild(u),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function AboutDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("about")+" Cally Square");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=document.createElement("img");r.style.border="0px",r.setAttribute("width","176"),r.setAttribute("width","151"),r.setAttribute("src",IMAGE_PATH+"/logo.png"),a.appendChild(r),mxUtils.br(a),mxUtils.write(a,"Powered by Xenialab "+mxClient.VERSION),mxUtils.br(a);var l=document.createElement("a");l.setAttribute("href","http://www.callysquare.com/"),l.setAttribute("target","_blank"),mxUtils.write(l,"www.callysquare.com"),a.appendChild(l),mxUtils.br(a),mxUtils.br(a);var d=mxUtils.button(mxResources.get("close"),function(){e.hideDialog()});d.className="btn default",i.appendChild(d),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function SaveDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("saveAs"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.editor.getOrCreateFilename(),l=e.createDiv("row"),d=e.createDiv("col-md-4"),c=e.createDiv("col-md-8"),m=document.createElement("label");m.className="control-label pull-right",mxUtils.write(m,mxResources.get("name")),d.appendChild(m);var u=document.createElement("input");u.setAttribute("value",r+"_copy"),u.setAttribute("id","_name"),u.className="form-control",c.appendChild(u),l.appendChild(d),l.appendChild(c),a.appendChild(l);var p=mxUtils.button(mxResources.get("save"),function(){e.saveAs(u.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",i.appendChild(p),i.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function NewDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("new"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.editor.getOrCreateFilename(),l=e.createDiv("row"),d=e.createDiv("col-md-4"),c=e.createDiv("col-md-8"),m=document.createElement("label");m.className="control-label pull-right",mxUtils.write(m,mxResources.get("name")),d.appendChild(m);var u=document.createElement("input");u.setAttribute("value",r+"_new"),u.setAttribute("id","_name"),u.className="form-control",c.appendChild(u),l.appendChild(d),l.appendChild(c),a.appendChild(l);var p=mxUtils.button(mxResources.get("new"),function(){e.new(u.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",i.appendChild(p),i.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function DescriptionDialog(e){console.log(e.editor.data);var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("description"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("form-horizontal form-row-seperated"),l=e.editor.data.description||"",d=e.createDiv("form-group"),c=document.createElement("label");c.className="col-sm-4 control-label",mxUtils.write(c,mxResources.get("description")),d.appendChild(c);var m=document.createElement("input");m.setAttribute("value",l),m.className="form-control",m.setAttribute("id","_description");var u=e.createDiv("col-sm-8");u.appendChild(m),d.appendChild(u),r.appendChild(d),a.appendChild(r);var p=mxUtils.button(mxResources.get("update"),function(){e.description(m.value),e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",i.appendChild(p),i.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function VariableDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("variable"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("form-horizontal form-row-seperated"),l="name",d="_"+l,c="variable name",m=e.createDiv("form-group"),u=document.createElement("label");u.className="col-sm-4 control-label",mxUtils.write(u,mxResources.get(l)),m.appendChild(u);var p=document.createElement("input");p.setAttribute("value",c),p.className="form-control",p.setAttribute("id",d);var g=e.createDiv("col-sm-8");g.appendChild(p),m.appendChild(g),r.appendChild(m),d="_"+(l="description"),c="variable description",m=e.createDiv("form-group last"),(u=document.createElement("label")).className="col-sm-4 control-label",mxUtils.write(u,mxResources.get(l)),m.appendChild(u);var h=document.createElement("input");h.setAttribute("value",c),h.className="form-control",h.setAttribute("id",d),(g=e.createDiv("col-sm-8")).appendChild(h),m.appendChild(g),r.appendChild(m),a.appendChild(r);var v=mxUtils.button(mxResources.get("new"),function(){e.variable(p.value,h.value),e.hideDialog()});v.className="btn blue";var b=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});b.className="btn default",i.appendChild(v),i.appendChild(b),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function OpenDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("open"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("row"),l=e.createDiv("col-md-4"),d=e.createDiv("col-md-8"),c=document.createElement("label");c.className="control-label pull-right",mxUtils.write(c,mxResources.get("name")),l.appendChild(c);var m=new XMLHttpRequest;m.open("GET","/api/square/projects",!1),m.setRequestHeader("Authorization","Bearer "+e.editor.data.token),m.send(null);var u=[];200===m.status&&(u=JSON.parse(m.response));for(var p=document.createElement("select"),g=0;g<u.length;g++){var h=document.createElement("option");h.text=u[g].name,h.value=u[g].id,p.appendChild(h)}p.className="form-control",d.appendChild(p),r.appendChild(l),r.appendChild(d),a.appendChild(r);var v=mxUtils.button(mxResources.get("open"),function(){console.log(p),console.log(p.value),window.open("square/project/"+p.value,"_blank"),e.hideDialog()});v.className="btn blue";var b=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});b.className="btn default",i.appendChild(v),i.appendChild(b),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function RenameDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("rename"));var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("row"),l=e.createDiv("col-md-4"),d=e.createDiv("col-md-8"),c=document.createElement("label");c.className="control-label pull-right",mxUtils.write(c,mxResources.get("name")),l.appendChild(c);var m=e.editor.filename,u=document.createElement("input");u.setAttribute("value",m),u.className="form-control",d.appendChild(u),r.appendChild(l),r.appendChild(d),a.appendChild(r);var p=mxUtils.button(mxResources.get("save"),function(){var t=new XMLHttpRequest;t.open("PUT",SAVE_URL+e.editor.data.id,!0),t.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),t.setRequestHeader("Authorization","Bearer "+e.editor.data.token),t.send("name="+u.value),t.onload=function(n){200===t.status?(e.editor.setStatus("Project successfully renamed"),e.editor.filename=u.value):(console.log(t.response),e.editor.setStatus(JSON.parse(t.response).errors[0].message))},t.onerror=function(e){mxUtils.alert(t.statusText)},e.hideDialog()});p.className="btn blue";var g=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});g.className="btn default",i.appendChild(p),i.appendChild(g),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function EditFileDialog(e){function t(e){if(e.stopPropagation(),e.preventDefault(),e.dataTransfer.files.length>0){var t=e.dataTransfer.files[0],n=new FileReader;n.onload=function(e){m.value=e.target.result},n.readAsText(t)}}function n(e){e.stopPropagation(),e.preventDefault()}var a=e.createDiv("modal-content"),i=e.createDiv("modal-header"),o=e.createDiv("modal-body"),s=e.createDiv("modal-footer"),r=e.createHeader("h4");mxUtils.write(r,mxResources.get("edit"));var l=mxUtils.button("",function(){e.hideDialog()});l.className="close",i.appendChild(l),i.appendChild(r);var d=e.createDiv("row"),c=e.createDiv("col-md-12"),m=document.createElement("textarea");m.style.width="100%",m.style.height="374px",m.value=mxUtils.getPrettyXml(e.editor.getGraphXml()),fileSupport&&(m.addEventListener("dragover",n,!1),m.addEventListener("drop",t,!1)),c.appendChild(m),d.appendChild(c),o.appendChild(d);var u=mxUtils.button(mxResources.get("save"),function(){var t=mxUtils.parseXml(m.value);e.editor.setGraphXml(t.documentElement),e.hideDialog()});u.className="btn blue";var p=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});p.className="btn default",s.appendChild(u),s.appendChild(p),a.appendChild(i),a.appendChild(o),a.appendChild(s),this.container=a}function ExportDialog(e){var t=e.createDiv("modal-content"),n=e.createDiv("modal-header"),a=e.createDiv("modal-body form"),i=e.createDiv("modal-footer"),o=e.createHeader("h4");mxUtils.write(o,mxResources.get("export")+" XML");var s=mxUtils.button("",function(){e.hideDialog()});s.className="close",n.appendChild(s),n.appendChild(o);var r=e.createDiv("form-horizontal form-row-seperated"),l=e.createDiv("form-group last"),d=document.createElement("label");d.className="col-sm-4 control-label",mxUtils.write(d,mxResources.get("filename"));var c=document.createElement("input");c.setAttribute("value",e.editor.getOrCreateFilename()),c.className="form-control";var m=e.createDiv("col-sm-8");m.appendChild(c),l.appendChild(d),l.appendChild(m),r.appendChild(l),a.appendChild(r);var u=mxUtils.button(mxResources.get("export"),mxUtils.bind(this,function(t){e.save(!1);encodeURIComponent(mxUtils.getXml(e.editor.getGraphXml()));new mxXmlRequest(SAVE_URL+e.editor.data.id+"/download","filename="+c.value,"GET").simulate(document,"_blank"),e.hideDialog()}));u.className="btn blue";var p=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});p.className="btn default",i.appendChild(u),i.appendChild(p),t.appendChild(n),t.appendChild(a),t.appendChild(i),this.container=t}function GeneralDialog(e,t){console.log("general");var n=e.editor.graph,a=e.createDiv("md-dialog"),i=e.createDiv("md-toolbar"),o=e.createDiv("md-dialog-content"),s=e.createDiv("md-dialog-actions"),r=e.createHeader("h4");mxUtils.write(r,mxResources.get("edit")+" "+mxResources.get(t.value.nodeName));var l=mxUtils.button("",function(){e.hideDialog()});l.className="close",i.appendChild(l),i.appendChild(r);for(var d=t.value.attributes.length,c=e.createDiv("form-horizontal form-row-seperated"),m=0;m<d;m++){var u=t.value.attributes[m].name,p="_"+u,g=t.value.attributes[m].value,h=e.createDiv(m==d-1?"form-group last":"form-group"),v=document.createElement("label");v.className="col-sm-4 control-label",mxUtils.write(v,mxResources.get(u)),h.appendChild(v);var b;switch(u){case"sip_id":b=createDropdownWithOptgroupFromApi("/api/users/all",g,"fullname","id",e,"role");break;case"queue_id":b=createDropdownFromApi("/api/voice/queues",g,"name","name",e);break;case"trunk_name":b=createDropdownFromApi("/api/trunks",g,"name","name",e);break;case"variable_id":b=createDropdownFromApi("/api/variables",g,"name","id",e);break;case"account_id":b="sendMail"==t.value.nodeName?createDropdownFromApi("/api/mail/servers/out",g,"username","id",e):createDropdownFromApi("/api/sms/accounts",g,"name","id",e);break;case"template_id":b=createDropdownFromApi("/api/templates",g,"name","id",e);break;case"context":b=createDropdownFromApi("/api/voice/contexts",g,"name","name",e);break;case"mailbox":b=createDropdownFromApi("/api/voice/voicemails",g,"mailbox","id",e,["mailbox","context"],"%mailbox%@%context%");break;case"model":b=createDropdownFromArray(ISPEECHASRMODEL,g);break;case"ispeech_asr_language":b=createDropdownFromArray(ISPEECHASRLANG,g);break;case"beep":b=createDropdownFromArray(ISPEECHBEEP,g);break;case"hiddendigitspos":b=createDropdownFromArray(SECRETDIGITSPOS,g);break;case"ispeech_tts_language":b=createDropdownFromArray(ISPEECHLANG,g);break;case"google_tts_language":b=createDropdownFromArray(GOOGLETTSLANG,g);break;case"intKey":b=createDropdownFromArray(ASRINTKEYS,g);break;case"recordingFormat":b=createDropdownFromArray(RECORDINGFORMAT,g);break;case"answer":b=createDropdownFromArray(BOOLSELECT,g);break;case"list_id":b=createDropdownFromTigerDialList(g);break;case"interval_id":b=createGroupedDropdownFromApi("/api/intervals",g,"name","id",e,"SubIntervals");break;case"project_id":b=createDropdownFromApi("/api/square/projects",g,"name","id",e,null,null,e.editor.getOrCreateFilename());break;case"odbc_id":b=createDropdownFromApi("/api/square/odbc",g,"name","id",e);break;case"file_id":b=createDropdownFromApi("/api/sounds",g,"display_name","id",e);break;case"timeout":case"digit":case"mindigit":case"maxdigit":case"response":case"retry":case"speed":(b=document.createElement("input")).setAttribute("type","number"),b.setAttribute("min",0),b.setAttribute("max",1e3),b.setAttribute("value",g),b.className="form-control";break;case"text":case"key":case"query":case"condition":case"command":case"body":(b=document.createElement("textarea")).innerHTML=g,b.className="form-control";break;case"sms_text":(b=document.createElement("textarea")).innerHTML=g,b.className="form-control",b.setAttribute("maxlength","160");break;default:(b=document.createElement("input")).setAttribute("value",g),b.className="form-control"}b.setAttribute("id",p);var f=e.createDiv("col-sm-8");if(f.appendChild(b),mxResources.get("help_"+u)){var E=e.createDiv("p");E.className="help-block",mxUtils.write(E,mxResources.get("help_"+u)),f.appendChild(E)}h.appendChild(f),c.appendChild(h)}o.appendChild(c);var y=mxUtils.button(mxResources.get("save"),mxUtils.bind(this,function(a){for(var i=0;i<t.value.attributes.length;i++){var o="_"+t.value.attributes[i].name,s=t.value.attributes[i].name;t.setAttribute(s,document.getElementById(o).value)}n.refresh(t),e.hideDialog()}));y.className="btn blue";var A=mxUtils.button(mxResources.get("cancel"),function(){e.hideDialog()});A.className="btn default",s.appendChild(y),s.appendChild(A),a.appendChild(i),a.appendChild(o),a.appendChild(s),this.container=a}!function(){"use strict";angular.module("app.auth",[])}(),function(){"use strict";angular.module("app.core",["ngAnimate","ngAria","ngCookies","ngMessages","ngResource","ngSanitize","ngMaterial","pascalprecht.translate","ui.router"])}(),function(){"use strict";function e(e,t){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"}),t.addPart("app/errors/404")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.errors.error-404",[]).config(e)}(),function(){"use strict";function e(e,t){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"}),t.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";angular.module("motion",["angular-toasty","app.core","app.auth","app.navigation","app.toolbar","app.quick-panel","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.help","app.motiondialer","app.login","app.errors"])}(),function(){"use strict";function e(e,t){e.state("app.login",{url:"/login",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"}),t.addPart("app/login")}e.$inject=["$stateProvider","$translatePartialLoaderProvider"],angular.module("app.login",[]).config(e)}(),function(){"use strict";function e(e,t,n,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",function(e){return e.resolve("analyticMetric@get",{fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,offset:0})}]},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",function(e){return e.resolve("analyticExtractedReport@get",{fields:"createdAt,updatedAt,id,name,type,startDate,endDate,createdAt,status,output",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1202,bodyClass:"analytics"}),t.addPart("app/main/apps/analytics")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.analytics",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","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})}]},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",function(e,t){return e.resolve("analyticCustomReport@get",{fields:"createdAt,updatedAt,id,name,description,table,conditions",id:t.id})}]},authenticate:!0,permissionId:1203,bodyClass:"analytics"})}e.$inject=["$stateProvider"],angular.module("app.analytics.reports",["ngJsTree"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.callysquare",{abstract:!0,url:"/callysquare"}).state("app.callysquare.odbcs",{url:"/odbcs",views:{"content@app":{templateUrl:"app/main/apps/callysquare/views/odbcs/odbcs.html",controller:"OdbcsController as vm"}},resolve:{odbcs:["apiResolver",function(e){return e.resolve("squareOdbc@get",{fields:"createdAt,updatedAt,id,name,dsn,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1101,bodyClass:"callysquare"}).state("app.callysquare.squareRecordings",{url:"/squareRecordings",views:{"content@app":{templateUrl:"app/main/apps/callysquare/views/squareRecordings/squareRecordings.html",controller:"SquareRecordingsController as vm"}},resolve:{squareRecordings:["apiResolver",function(e){return e.resolve("squareRecording@get",{fields:"createdAt,updatedAt,id,projectName,uniqueid,callerid,extension,audio,createdAt",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1102,bodyClass:"callysquare"}),t.addPart("app/main/apps/callysquare")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.callysquare",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.callysquare.projects"]).config(e)}(),function(){"use strict";function e(e){e.state("app.callysquare.projects",{url:"/projects",views:{"content@app":{templateUrl:"app/main/apps/callysquare/views/projects/projects.html",controller:"ProjectsController as vm"}},resolve:{projects:["apiResolver",function(e){return e.resolve("squareProject@get",{fields:"id,name,description,notes",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1103,bodyClass:"callysquare"}).state("app.callysquare.projects.edit",{url:"/:id?tab",views:{"content@app":{templateUrl:"app/main/apps/callysquare/views/projects/edit/view.html",controller:"ProjectController as vm"}},resolve:{project:["apiResolver","$stateParams",function(e,t){return e.resolve("squareProject@get",{id:t.id})}],users:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,role",sort:"name",nolimit:!1})}],trunks:["apiResolver",function(e){return e.resolve("trunk@get",{fields:"id,name",sort:"name",nolimit:!1})}],queues:["apiResolver",function(e){return e.resolve("voiceQueue@get",{type:"inbound",fields:"id,name",sort:"name",nolimit:!1})}],sounds:["apiResolver",function(e){return e.resolve("sound@get",{fields:"id,name",sort:"name",nolimit:!1})}],variables:["apiResolver",function(e){return e.resolve("variable@get",{fields:"id,name",sort:"name",nolimit:!1})}],databases:["apiResolver",function(e){return e.resolve("squareOdbc@get",{fields:"id,name",sort:"name",nolimit:!1})}],projects:["apiResolver",function(e){return e.resolve("squareProject@get",{fields:"id,name",sort:"name",nolimit:!1})}],contexts:["apiResolver",function(e){return e.resolve("voiceContext@get",{fields:"id,name",sort:"name",nolimit:!1})}],intervals:["apiResolver",function(e){return e.resolve("interval@get",{fields:"id,name,IntervalId",sort:"name",nolimit:!1})}],mailAccounts:["apiResolver",function(e){return e.resolve("mailAccount@get",{fields:"id,name",sort:"name",nolimit:!1})}],templates:["apiResolver",function(e){return e.resolve("template@get",{fields:"id,name",sort:"name",nolimit:!1})}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name",sort:"name",nolimit:!1})}]},authenticate:!0,permissionId:1103,bodyClass:"callysquare"})}e.$inject=["$stateProvider"],angular.module("app.callysquare.projects",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.chat",{abstract:!0,url:"/chat"}).state("app.chat.chatQueues",{url:"/chatQueues",views:{"content@app":{templateUrl:"app/main/apps/chat/views/chatQueues/chatQueues.html",controller:"ChatQueuesController as vm"}},resolve:{chatQueues:["apiResolver",function(e){return e.resolve("chatQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:501,bodyClass:"chat"}).state("app.chat.chatQueues.edit",{url:"/:id?tab",params:{chatQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/chat/views/chatQueues/edit/view.html",controller:"ChatQueueController as vm"}},resolve:{chatQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("chatQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:501,bodyClass:"chat"}).state("app.chat.chatWebsites",{url:"/chatWebsites",views:{"content@app":{templateUrl:"app/main/apps/chat/views/chatWebsites/chatWebsites.html",controller:"ChatWebsitesController as vm"}},resolve:{chatWebsites:["apiResolver",function(e){return e.resolve("chatWebsite@get",{fields:"createdAt,updatedAt,id,name,address,remote,ListId,fidelity,timeout,description,color,color_focus,color_button,header_shape,animation,defaultWhiteLabel,whiteLabel,defaultLogo,download_transcript,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,OfflineTemplateId,name_title,username_placeholder,email_title,email_placeholder,header_online,online_message,start_chat_button,agents_busy,header_offline,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:502,bodyClass:"chat"}).state("app.chat.chatWebsites.edit",{url:"/:id?tab",params:{chatWebsite:void 0},views:{"content@app":{templateUrl:"app/main/apps/chat/views/chatWebsites/edit/view.html",controller:"ChatWebsiteController as vm"}},resolve:{chatWebsite:["apiResolver","$stateParams",function(e,t){return e.resolve("chatWebsite@get",{fields:"createdAt,updatedAt,id,name,address,remote,ListId,fidelity,timeout,description,color,color_focus,color_button,header_shape,animation,defaultWhiteLabel,whiteLabel,defaultLogo,download_transcript,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,OfflineTemplateId,name_title,username_placeholder,email_title,email_placeholder,header_online,online_message,start_chat_button,agents_busy,header_offline,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",id:t.id})}]},authenticate:!0,permissionId:502,bodyClass:"chat"}),t.addPart("app/main/apps/chat")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.chat",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.contactmanager",{abstract:!0,url:"/contactmanager"}).state("app.contactmanager.lists",{url:"/lists",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/lists/lists.html",controller:"ListsController as vm"}},resolve:{lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:301,bodyClass:"contactmanager"}).state("app.contactmanager.lists.edit",{url:"/:id?tab",params:{list:void 0},views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/lists/edit/view.html",controller:"ListController as vm"}},resolve:{list:["apiResolver","$stateParams",function(e,t){return e.resolve("cmList@get",{fields:"createdAt,updatedAt,id,name,description",id:t.id})}]},authenticate:!0,permissionId:301,bodyClass:"contactmanager"}).state("app.contactmanager.companies",{url:"/companies",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/companies/companies.html",controller:"CompaniesController as vm"}},resolve:{companies:["apiResolver",function(e){return e.resolve("cmCompany@get",{fields:"createdAt,updatedAt,id,name,phone,vat,fax,companyId,type,website,emailDomain,email,description,sStreet,sPostalCode,sCity,sCountry,street,postalCode,city,country",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:302,bodyClass:"contactmanager"}).state("app.contactmanager.companies.edit",{url:"/:id?tab",params:{company:void 0},views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/companies/edit/view.html",controller:"CompanyController as vm"}},resolve:{company:["apiResolver","$stateParams",function(e,t){return e.resolve("cmCompany@get",{fields:"createdAt,updatedAt,id,name,phone,vat,fax,companyId,type,website,emailDomain,email,description,sStreet,sPostalCode,sCity,sCountry,street,postalCode,city,country",id:t.id})}]},authenticate:!0,permissionId:302,bodyClass:"contactmanager"}).state("app.contactmanager.globalCustomFields",{url:"/globalCustomFields",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/globalCustomFields/globalCustomFields.html",controller:"GlobalCustomFieldsController as vm"}},resolve:{globalCustomFields:["apiResolver",function(e){return e.resolve("cmCustomField@get",{fields:"createdAt,updatedAt,id,alias,type,values,required",sort:"-updatedAt",ListId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:304,bodyClass:"contactmanager"}),t.addPart("app/main/apps/contactmanager")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.contactmanager",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.contactmanager.contacts"]).config(e)}(),function(){"use strict";function e(e){e.state("app.contactmanager.contacts",{url:"/contacts?ListId&CompanyId",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/contacts/contacts.html",controller:"ContactsController as vm"}},resolve:{contacts:["apiResolver","$stateParams",function(e,t){return e.resolve("cmContact@get",_.merge({sort:"-updatedAt",limit:10,offset:0},t))}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name",sort:"-updatedAt",nolimit:!0})}],listsMap:["lists",function(e){for(var t={},n=0;n<e.rows.length;n++)t[e.rows[n].id]=e.rows[n].name;return t}],companies:["apiResolver",function(e){return e.resolve("cmCompany@get",{fields:"id,name",sort:"-updatedAt",nolimit:!0})}],tags:["apiResolver",function(e){return e.resolve("tag@get",{fields:"id,name",sort:"-updatedAt",nolimit:!0})}]},authenticate:!0,permissionId:300,bodyClass:"contactmanager"}).state("app.contactmanager.contacts.edit",{url:"/:id?tab",views:{"content@app":{templateUrl:"app/main/apps/contactmanager/views/contacts/edit/view.html",controller:"ContactController as vm"}},resolve:{contact:["apiResolver","$stateParams",function(e,t){return e.resolve("cmContact@get",{id:t.id}).then(function(e){return e.dateOfBirth&&(e.dateOfBirth=new Date(e.dateOfBirth)),e}).catch(function(e){console.error(e)})}],hoppers:["apiResolver","contact",function(e,t){return e.resolve("cmHopper@get",{ContactId:t.id,fields:"id,phone,scheduledat",sort:"-updatedAt",limit:10,offset:0})}],finals:["apiResolver","contact",function(e,t){return e.resolve("cmHopperFinal@get",{ContactId:t.id,fields:"uniqueid,phone,status,starttime,disposition",sort:"-updatedAt",limit:10,offset:0})}],histories:["apiResolver","contact",function(e,t){return e.resolve("cmHopperHistory@get",{ContactId:t.id,fields:"uniqueid,ContactId,phone,status,starttime,disposition",sort:"-updatedAt",limit:10,offset:0})}],companies:["apiResolver","$stateParams",function(e,t){return e.resolve("cmCompany@get")}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name",sort:"-updatedAt",nolimit:!0})}],customFields:["apiResolver","contact",function(e,t){return t.ListId?e.resolve("cmList@getCustomFields",{id:t.ListId}):null}],tags:["apiResolver","$stateParams",function(e,t){return e.resolve("tag@get")}]},authenticate:!0,permissionId:300,bodyClass:"contactmanager"})}e.$inject=["$stateProvider"],angular.module("app.contactmanager.contacts",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.dashboards",{abstract:!0,url:"/dashboards"}),t.addPart("app/main/apps/dashboards")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.dashboards",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.dashboards.general"]).config(e)}(),function(){"use strict";function e(e){e.state("app.dashboards.general.dashboard",{url:"/dashboard",data:{selectedTab:0},views:{dashboard:{templateUrl:"app/main/apps/dashboards/views/general/agent/dashboard/agent.general.dashboard.html",controller:"AgentDashboardDashboardGeneralController as vm"}},resolve:{rpcVoiceQueuesChannels:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueuesChannels")}],rpcVoiceQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}],voiceQueues:["apiResolver","Auth",function(e,t){return e.resolve("user@getQueues",{id:t.getCurrentUser().id,fields:"id,name",channel:"voice",limit:10,page:1})}]},authenticate:!0,bodyClass:"dashboards"}).state("app.dashboards.general.recordings",{url:"/recordings",data:{selectedTab:1},views:{recordings:{templateUrl:"app/main/apps/dashboards/views/general/agent/recordings/agent.general.recordings.html",controller:"AgentRecordigsDashboardGeneralController as vm"}},resolve:{voiceRecordings:["apiResolver","Auth",function(e,t){return e.resolve("user@getRecordings",{id:t.getCurrentUser().id,fields:"createdAt,updatedAt,id,format,value,type,uniqueid,calleridnum,exten,connectedlinenum,queue,rating,audio,createdAt",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,bodyClass:"dashboards"}).state("app.dashboards.general.contacts",{url:"/contacts",data:{selectedTab:2},views:{contacts:{templateUrl:"app/main/apps/dashboards/views/general/agent/contacts/agent.general.contacts.html",controller:"AgentContactsDashboardGeneralController as vm"}},resolve:{lists:["apiResolver","Auth",function(e,t){return e.resolve("user@getLists",{id:t.getCurrentUser().id,fields:"id,name",sort:"name",nolimit:!0})}]},authenticate:!0,bodyClass:"dashboards"}).state("app.dashboards.general.mycontacts",{url:"/mycontacts",data:{selectedTab:3},views:{mycontacts:{templateUrl:"app/main/apps/dashboards/views/general/agent/mycontacts/agent.general.mycontacts.html",controller:"AgentMyContactsDashboardGeneralController as vm"}},resolve:{lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name",sort:"name",nolimit:!0})}]},authenticate:!0,bodyClass:"dashboards"})}e.$inject=["$stateProvider"],angular.module("app.dashboards.general.agent",[]).config(e)}(),function(){"use strict";function e(e){e.state("app.dashboards.general",{url:"/general",data:{selectedTab:0},views:{"content@app":{templateProvider:["$stateParams","$templateFactory","Auth",function(e,t,n){var a=n.getCurrentUser();return a&&"agent"===a.role?t.fromUrl("app/main/apps/dashboards/views/general/agent/agent.general.html",e):t.fromUrl("app/main/apps/dashboards/views/general/user/user.general.html",e)}],controllerProvider:["Auth",function(e){var t=e.getCurrentUser();return t&&"agent"===t.role?"AgentDashboardGeneralController as vm":"UserDashboardGeneralController as vm"}]}},resolve:{globalUserLists:["apiResolver","Auth",function(e,t){return e.resolve("user@getLists",{id:t.getCurrentUser().id,sort:"name",nolimit:!0})}],globalLists:["apiResolver","Auth",function(e,t){return e.resolve("cmList@get",{sort:"name",nolimit:!0})}],globalTags:["apiResolver",function(e){return e.resolve("tag@get",{sort:"name",nolimit:!0})}],globalCompanies:["apiResolver",function(e){return e.resolve("cmCompany@get",{sort:"name",nolimit:!0})}]},authenticate:!0,bodyClass:"dashboards"})}e.$inject=["$stateProvider"],angular.module("app.dashboards.general",["app.dashboards.general.user","app.dashboards.general.agent"]).config(e)}(),function(){"use strict";function e(e){e.state("app.dashboards.general.voice",{url:"/voice",data:{selectedTab:0},views:{voice:{templateUrl:"app/main/apps/dashboards/views/general/user/voice/user.general.voice.html",controller:"UserVoiceDashboardGeneralController as vm"}},resolve:{rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}],inboundQueues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{fields:"id,name",type:"inbound"}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,fields:"id,name",channel:"voice",type:"inbound"})}],outbound:["apiResolver",function(e){return e.resolve("rpc@getOutbound")}]},authenticate:!0,bodyClass:"dashboards"}).state("app.dashboards.general.dialer",{url:"/dialer",data:{selectedTab:1},views:{dialer:{templateUrl:"app/main/apps/dashboards/views/general/user/dialer/user.general.dialer.html",controller:"UserVoiceDashboardDialerController as vm"}},resolve:{rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}],outboundQueues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{fields:"id,name",type:"outbound"}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,fields:"id,name",channel:"voice",type:"outbound"})}],rpcCampaigns:["apiResolver",function(e){return e.resolve("rpc@getCampaigns")}]},authenticate:!0,bodyClass:"dashboards"})}e.$inject=["$stateProvider"],angular.module("app.dashboards.general.user",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.fax",{abstract:!0,url:"/fax"}).state("app.fax.faxQueues",{url:"/faxQueues",views:{"content@app":{templateUrl:"app/main/apps/fax/views/faxQueues/faxQueues.html",controller:"FaxQueuesController as vm"}},resolve:{faxQueues:["apiResolver",function(e){return e.resolve("faxQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:901,bodyClass:"fax"}).state("app.fax.faxQueues.edit",{url:"/:id?tab",params:{faxQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/fax/views/faxQueues/edit/view.html",controller:"FaxQueueController as vm"}},resolve:{faxQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("faxQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:901,bodyClass:"fax"}).state("app.fax.faxAccounts",{url:"/faxAccounts",views:{"content@app":{templateUrl:"app/main/apps/fax/views/faxAccounts/faxAccounts.html",controller:"FaxAccountsController as vm"}},resolve:{faxAccounts:["apiResolver",function(e){return e.resolve("faxAccount@get",{fields:"createdAt,updatedAt,id,name,headerinfo,TrunkId,localstationid,ListId,fidelity,timeout,description,ecm,minrate,maxrate,modem,gateway,faxdetect,t38timeout,tech,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:902,bodyClass:"fax"}).state("app.fax.faxAccounts.edit",{url:"/:id?tab",params:{faxAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/fax/views/faxAccounts/edit/view.html",controller:"FaxAccountController as vm"}},resolve:{faxAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("faxAccount@get",{fields:"createdAt,updatedAt,id,name,headerinfo,TrunkId,localstationid,ListId,fidelity,timeout,description,ecm,minrate,maxrate,modem,gateway,faxdetect,t38timeout,tech,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",id:t.id})}]},authenticate:!0,permissionId:902,bodyClass:"fax"}),t.addPart("app/main/apps/fax")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.fax",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.help",{abstract:!0,url:"/help"}),t.addPart("app/main/apps/help")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.help",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.help.about"]).config(e)}(),function(){"use strict";function e(e){e.state("app.help.about",{url:"/about",views:{"content@app":{templateUrl:"app/main/apps/help/views/about/about.html",controller:"AboutController as vm"}},resolve:{info:["apiResolver",function(e){return e.resolve("version@get")}]},authenticate:!0,permissionId:1405,bodyClass:"help"})}e.$inject=["$stateProvider"],angular.module("app.help.about",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.integrations",{abstract:!0,url:"/integrations"}).state("app.integrations.zendeskAccounts",{url:"/zendeskAccounts",views:{"content@app":{templateUrl:"app/main/apps/integrations/views/zendeskAccounts/zendeskAccounts.html",controller:"ZendeskAccountsController as vm"}},resolve:{zendeskAccounts:["apiResolver",function(e){return e.resolve("intZendeskAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,authType,password,token,serverUrl,description",limit:10,offset:0})}]},authenticate:!0,permissionId:1301,bodyClass:"integrations"}).state("app.integrations.zendeskAccounts.edit",{url:"/:id?tab",params:{zendeskAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/view.html",controller:"ZendeskAccountController as vm"}},resolve:{zendeskAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("intZendeskAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,authType,password,token,serverUrl,description",id:t.id})}]},authenticate:!0,permissionId:1301,bodyClass:"integrations"}).state("app.integrations.salesforceAccounts",{url:"/salesforceAccounts",views:{"content@app":{templateUrl:"app/main/apps/integrations/views/salesforceAccounts/salesforceAccounts.html",controller:"SalesforceAccountsController as vm"}},resolve:{salesforceAccounts:["apiResolver",function(e){return e.resolve("intSalesforceAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,password,clientId,clientSecret,securityToken,serverUrl,description",limit:10,offset:0})}]},authenticate:!0,permissionId:1302,bodyClass:"integrations"}).state("app.integrations.salesforceAccounts.edit",{url:"/:id?tab",params:{salesforceAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/view.html",controller:"SalesforceAccountController as vm"}},resolve:{salesforceAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("intSalesforceAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,password,clientId,clientSecret,securityToken,serverUrl,description",id:t.id})}]},authenticate:!0,permissionId:1302,bodyClass:"integrations"}).state("app.integrations.freshdeskAccounts",{url:"/freshdeskAccounts",views:{"content@app":{templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/freshdeskAccounts.html",controller:"FreshdeskAccountsController as vm"}},resolve:{freshdeskAccounts:["apiResolver",function(e){return e.resolve("intFreshdeskAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,apiKey,serverUrl,description",limit:10,offset:0})}]},authenticate:!0,permissionId:1303,bodyClass:"integrations"}).state("app.integrations.freshdeskAccounts.edit",{url:"/:id?tab",params:{freshdeskAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/view.html",controller:"FreshdeskAccountController as vm"}},resolve:{freshdeskAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("intFreshdeskAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,apiKey,serverUrl,description",id:t.id})}]},authenticate:!0,permissionId:1303,bodyClass:"integrations"}).state("app.integrations.sugarcrmAccounts",{url:"/sugarcrmAccounts",views:{"content@app":{templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/sugarcrmAccounts.html",controller:"SugarcrmAccountsController as vm"}},resolve:{sugarcrmAccounts:["apiResolver",function(e){return e.resolve("intSugarcrmAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,password,serverUrl,description",limit:10,offset:0})}]},authenticate:!0,permissionId:1304,bodyClass:"integrations"}).state("app.integrations.sugarcrmAccounts.edit",{url:"/:id?tab",params:{sugarcrmAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/view.html",controller:"SugarcrmAccountController as vm"}},resolve:{sugarcrmAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("intSugarcrmAccount@get",{fields:"createdAt,updatedAt,id,name,username,remoteUri,password,serverUrl,description",id:t.id})}]},authenticate:!0,permissionId:1304,bodyClass:"integrations"}),t.addPart("app/main/apps/integrations")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.integrations",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.mail",{abstract:!0,url:"/mail"}).state("app.mail.mailQueues",{url:"/mailQueues",views:{"content@app":{templateUrl:"app/main/apps/mail/views/mailQueues/mailQueues.html",controller:"MailQueuesController as vm"}},resolve:{mailQueues:["apiResolver",function(e){return e.resolve("mailQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:601,bodyClass:"mail"}).state("app.mail.mailQueues.edit",{url:"/:id?tab",params:{mailQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/mail/views/mailQueues/edit/view.html",controller:"MailQueueController as vm"}},resolve:{mailQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("mailQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:601,bodyClass:"mail"}).state("app.mail.mailAccounts",{url:"/mailAccounts",views:{"content@app":{templateUrl:"app/main/apps/mail/views/mailAccounts/mailAccounts.html",controller:"MailAccountsController as vm"}},resolve:{mailAccounts:["apiResolver",function(e){return e.resolve("mailAccount@get",{fields:"createdAt,updatedAt,id,name,address,ListId,TemplateId,fidelity,timeout,service,description,Imap.host,Imap.username,Imap.password,Imap.port,Imap.mailbox,Imap.connTimeout,Imap.authTimeout,Imap.delete,Imap.ssl,Imap.keepalive,Smtp.host,Smtp.username,Smtp.password,Smtp.port,Smtp.ssl,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl,whiteLabel",limit:10,offset:0})}]},authenticate:!0,permissionId:602,bodyClass:"mail"}).state("app.mail.mailAccounts.edit",{url:"/:id?tab",params:{mailAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/mail/views/mailAccounts/edit/view.html",controller:"MailAccountController as vm"}},resolve:{mailAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("mailAccount@get",{fields:"createdAt,updatedAt,id,name,address,ListId,TemplateId,fidelity,timeout,service,description,Imap.host,Imap.username,Imap.password,Imap.port,Imap.mailbox,Imap.connTimeout,Imap.authTimeout,Imap.delete,Imap.ssl,Imap.keepalive,Smtp.host,Smtp.username,Smtp.password,Smtp.port,Smtp.ssl,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl,whiteLabel",id:t.id})}]},authenticate:!0,permissionId:602,bodyClass:"mail"}),t.addPart("app/main/apps/mail")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.mail",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.motiondialer",{abstract:!0,url:"/motiondialer"}).state("app.motiondialer.queueCampaigns",{url:"/queueCampaigns",views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/queueCampaigns.html",controller:"QueueCampaignsController as vm"}},resolve:{queueCampaigns:["apiResolver",function(e){return e.resolve("voiceQueue@get",{fields:"createdAt,updatedAt,id,name,dialActive,TrunkId,TrunkBackupId,type,IntervalId,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar,dialGlobalInterval,dialTimezone,dialMethod,dialPowerLevel,dialPredictiveOptimization,dialPredictiveOptimizationPercentage,dialPredictiveInterval,dialLimitQueue,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialQueueOptions,dialQueueTimeout,strategy,timeout,retry,wrapuptime,weight,musiconhold,dialQueueProject,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,description",type:"outbound",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1501,bodyClass:"motiondialer"}).state("app.motiondialer.queueCampaigns.edit",{url:"/:id?tab",params:{queueCampaign:void 0},views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/view.html",controller:"QueueCampaignController as vm"}},resolve:{queueCampaign:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceQueue@get",{fields:"createdAt,updatedAt,id,name,dialActive,TrunkId,TrunkBackupId,type,IntervalId,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar,dialGlobalInterval,dialTimezone,dialMethod,dialPowerLevel,dialPredictiveOptimization,dialPredictiveOptimizationPercentage,dialPredictiveInterval,dialLimitQueue,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialQueueOptions,dialQueueTimeout,strategy,timeout,retry,wrapuptime,weight,musiconhold,dialQueueProject,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,description",id:t.id})}]},authenticate:!0,permissionId:1501,bodyClass:"motiondialer"}).state("app.motiondialer.ivrCampaigns",{url:"/ivrCampaigns",views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/ivrCampaigns.html",controller:"IvrCampaignsController as vm"}},resolve:{ivrCampaigns:["apiResolver",function(e){return e.resolve("campaign@get",{fields:"createdAt,updatedAt,id,name,active,TrunkId,TrunkBackupId,type,IntervalId,SquareProjectId,limitCalls,description,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,dialGlobalInterval,dialTimezone",type:"ivr",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1502,bodyClass:"motiondialer"}).state("app.motiondialer.ivrCampaigns.edit",{url:"/:id?tab",params:{ivrCampaign:void 0},views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/view.html",controller:"IvrCampaignController as vm"}},resolve:{ivrCampaign:["apiResolver","$stateParams",function(e,t){return e.resolve("campaign@get",{fields:"createdAt,updatedAt,id,name,active,TrunkId,TrunkBackupId,type,IntervalId,SquareProjectId,limitCalls,description,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,dialGlobalInterval,dialTimezone",id:t.id})}]},authenticate:!0,permissionId:1502,bodyClass:"motiondialer"}),t.addPart("app/main/apps/motiondialer")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.motiondialer",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.motiondialer.realtime"]).config(e)}(),function(){"use strict";function e(e){e.state("app.motiondialer.realtime",{url:"/realtime",views:{"content@app":{templateUrl:"app/main/apps/motiondialer/views/realtime/realtime.html",controller:"MotionDialerRealtimeController as vm"}},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.agents",{url:"/agents",controller:"AgentsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/agents/view.html",resolve:{pauses:["apiResolver",function(e){return e.resolve("pause@get",{nolimit:!0})}],agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,role,userpic,internal,online,motiondialerPause,pauseType,lastLoginAt,lastPauseAt",role:"agent",sort:"-updatedAt",limit:10,offset:0})}],rpcAgents:["apiResolver",function(e){return e.resolve("rpc@getAgents")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.telephones",{url:"/telephones",controller:"TelephonesMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/telephones/view.html",resolve:{telephones:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,userpic,internal",role:"telephone",sort:"-updatedAt",limit:10,offset:0})}],rpcTelephones:["apiResolver",function(e){return e.resolve("rpc@getTelephones")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.trunks",{url:"/trunks",controller:"TrunksMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/trunks/view.html",resolve:{trunks:["apiResolver",function(e){return e.resolve("trunk@get",{fields:"id,name",active:!0,sort:"-updatedAt",limit:10,offset:0})}],rpcTrunks:["apiResolver",function(e){return e.resolve("rpc@getTrunks")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.queues",{url:"/queues",controller:"QueuesMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/queues/view.html",resolve:{queues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{type:"outbound",sort:"-updatedAt",limit:10,offset:0}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,channel:"voice",type:"outbound",sort:"-updatedAt",limit:10,page:1})}],rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.queue_calls",{url:"/queue_calls",controller:"QueueCallsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/queue_calls/view.html",resolve:{agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,name,role",role:"agent",nolimit:!0})}],rpcCalls:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueuesChannels")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.queue_params",{url:"/queue_params",controller:"QueueParamsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/queue_params/view.html",resolve:{queues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{type:"outbound",fields:"id,name",sort:"-updatedAt",limit:10,offset:0}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,channel:"voice",type:"outbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1})}],rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.ivr_campaigns",{url:"/ivr_campaigns",controller:"IvrCampaignsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/ivr_campaigns/view.html",resolve:{campaigns:["apiResolver",function(e){return e.resolve("campaign@get",{sort:"-updatedAt",limit:10,offset:0})}],rpcCampaigns:["apiResolver",function(e){return e.resolve("rpc@getCampaigns")}]},authenticate:!0,permissionId:410}).state("app.motiondialer.realtime.outbound_calls",{url:"/outbound_calls",controller:"OutboundCallsMotionDialerRealtimeController as vm",templateUrl:"app/main/apps/motiondialer/views/realtime/outbound_calls/view.html",resolve:{rpcCalls:["apiResolver",function(e){return e.resolve("rpc@getOutboundChannels")}]},authenticate:!0,permissionId:410})}e.$inject=["$stateProvider"],angular.module("app.motiondialer.realtime",["timer"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.openchannel",{abstract:!0,url:"/openchannel"}).state("app.openchannel.openchannelQueues",{url:"/openchannelQueues",views:{"content@app":{templateUrl:"app/main/apps/openchannel/views/openchannelQueues/openchannelQueues.html",controller:"OpenchannelQueuesController as vm"}},resolve:{openchannelQueues:["apiResolver",function(e){return e.resolve("openchannelQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:801,bodyClass:"openchannel"}).state("app.openchannel.openchannelQueues.edit",{url:"/:id?tab",params:{openchannelQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/openchannel/views/openchannelQueues/edit/view.html",controller:"OpenchannelQueueController as vm"}},resolve:{openchannelQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("openchannelQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:801,bodyClass:"openchannel"}).state("app.openchannel.openchannelAccounts",{url:"/openchannelAccounts",views:{"content@app":{templateUrl:"app/main/apps/openchannel/views/openchannelAccounts/openchannelAccounts.html",controller:"OpenchannelAccountsController as vm"}},resolve:{openchannelAccounts:["apiResolver",function(e){return e.resolve("openchannelAccount@get",{fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:802,bodyClass:"openchannel"}).state("app.openchannel.openchannelAccounts.edit",{url:"/:id?tab",params:{openchannelAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/openchannel/views/openchannelAccounts/edit/view.html",controller:"OpenchannelAccountController as vm"}},resolve:{openchannelAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("openchannelAccount@get",{fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",id:t.id})}]},authenticate:!0,permissionId:802,bodyClass:"openchannel"}),t.addPart("app/main/apps/openchannel")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.openchannel",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.settings",{abstract:!0,url:"/settings"}).state("app.settings.generals",{url:"/generals",views:{"content@app":{templateUrl:"app/main/apps/settings/views/generals/generals.html",controller:"GeneralsController as vm"}},resolve:{generals:["apiResolver",function(e){return e.resolve("setting@get",{fields:"createdAt,updatedAt,id,min_internal,min_mailbox,securePassword,stunaddr",limit:10,offset:0})}]},authenticate:!0,permissionId:1401,bodyClass:"settings"}).state("app.settings.smtps",{url:"/smtps",views:{"content@app":{templateUrl:"app/main/apps/settings/views/smtps/smtps.html",controller:"SmtpController as vm"}},resolve:{smtps:["apiResolver",function(e){return e.resolve("mailAccount@get",{fields:"createdAt,updatedAt,id,service,name,Smtp.service,Smtp.host,Smtp.user,Smtp.pass,Smtp.port,Smtp.secure,description",service:"1",limit:10,offset:0})}]},authenticate:!0,permissionId:1402,bodyClass:"settings"}).state("app.settings.networks",{url:"/networks",views:{"content@app":{templateUrl:"app/main/apps/settings/views/networks/networks.html",controller:"NetworksController as vm"}},resolve:{networks:["apiResolver",function(e){return e.resolve("network@get",{fields:"createdAt,updatedAt,id,type,value,value,createdAt",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1403,bodyClass:"settings"}).state("app.settings.customizations",{url:"/customizations",views:{"content@app":{templateUrl:"app/main/apps/settings/views/customizations/customizations.html",controller:"CustomizationsController as vm"}},resolve:{customizations:["apiResolver",function(e){return e.resolve("setting@get",{fields:"createdAt,updatedAt,id,defaultLogo,defaultLoginLogo,defaultHeaderWhiteLabel,headerWhiteLabel",limit:10,offset:0})}]},authenticate:!0,permissionId:1407,bodyClass:"settings"}),t.addPart("app/main/apps/settings")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.settings",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.settings.updates","app.settings.license","app.settings.system"]).config(e)}(),function(){"use strict";function e(e){e.state("app.settings.license",{url:"/license",views:{"content@app":{templateUrl:"app/main/apps/settings/views/license/license.html",controller:"LicenseController as vm"}},authenticate:!0,permissionId:1405,bodyClass:"settings"})}e.$inject=["$stateProvider"],angular.module("app.settings.license",[]).config(e)}(),function(){"use strict";function e(e){e.state("app.settings.system",{url:"/system",views:{"content@app":{templateUrl:"app/main/apps/settings/views/system/system.html",controller:"SystemController as vm"}},resolve:{system:["apiResolver",function(e){return e.resolve("system@get")}],processes:["apiResolver",function(e){return e.resolve("pm2@get")}]},authenticate:!0,permissionId:1406,bodyClass:"settings"})}e.$inject=["$stateProvider"],angular.module("app.settings.system",[]).config(e)}(),function(){"use strict";function e(e){e.state("app.settings.updates",{url:"/updates",views:{"content@app":{templateUrl:"app/main/apps/settings/views/updates/updates.html",controller:"UpdatesController as vm"}},resolve:{version:["apiResolver",function(e){return e.resolve("version@get")}]},authenticate:!0,permissionId:1404,bodyClass:"settings"})}e.$inject=["$stateProvider"],angular.module("app.settings.updates",[]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.sms",{abstract:!0,url:"/sms"}).state("app.sms.smsQueues",{url:"/smsQueues",views:{"content@app":{templateUrl:"app/main/apps/sms/views/smsQueues/smsQueues.html",controller:"SmsQueuesController as vm"}},resolve:{smsQueues:["apiResolver",function(e){return e.resolve("smsQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:701,bodyClass:"sms"}).state("app.sms.smsQueues.edit",{url:"/:id?tab",params:{smsQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/sms/views/smsQueues/edit/view.html",controller:"SmsQueueController as vm"}},resolve:{smsQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("smsQueue@get",{fields:"createdAt,updatedAt,id,name,strategy,timeout,description",id:t.id})}]},authenticate:!0,permissionId:701,bodyClass:"sms"}).state("app.sms.smsAccounts",{url:"/smsAccounts",views:{"content@app":{templateUrl:"app/main/apps/sms/views/smsAccounts/smsAccounts.html",controller:"SmsAccountsController as vm"}},resolve:{smsAccounts:["apiResolver",function(e){return e.resolve("smsAccount@get",{fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,type,smstype,phone,sid,token,username,password,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:702,bodyClass:"sms"}).state("app.sms.smsAccounts.edit",{url:"/:id?tab",params:{smsAccount:void 0},views:{"content@app":{templateUrl:"app/main/apps/sms/views/smsAccounts/edit/view.html",controller:"SmsAccountController as vm"}},resolve:{smsAccount:["apiResolver","$stateParams",function(e,t){return e.resolve("smsAccount@get",{fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,type,smstype,phone,sid,token,username,password,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",id:t.id})}]},authenticate:!0,permissionId:702,bodyClass:"sms"}),t.addPart("app/main/apps/sms")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.sms",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.staff",{abstract:!0,url:"/staff"}).state("app.staff.users",{url:"/users",views:{"content@app":{templateUrl:"app/main/apps/staff/views/users/users.html",controller:"UsersController as vm"}},resolve:{users:["apiResolver",function(e){return e.resolve("user@get",{fields:"createdAt,updatedAt,role,id,fullname,name,email,userpic,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup,permissions",role:"admin,user",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:201,bodyClass:"staff"}).state("app.staff.users.edit",{url:"/:id?tab",params:{user:void 0},views:{"content@app":{templateUrl:"app/main/apps/staff/views/users/edit/view.html",controller:"UserController as vm"}},resolve:{user:["apiResolver","$stateParams",function(e,t){return e.resolve("user@get",{fields:"createdAt,updatedAt,role,id,fullname,name,email,userpic,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup,permissions",id:t.id})}]},authenticate:!0,permissionId:201,bodyClass:"staff"}).state("app.staff.agents",{url:"/agents",views:{"content@app":{templateUrl:"app/main/apps/staff/views/agents/agents.html",controller:"AgentsController as vm"}},resolve:{agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"createdAt,updatedAt,id,role,fullname,name,email,userpic,password,description,autointernal,internal,loginInPause,voicemail,transport,host,nat,type,allow,callerid,callgroup,pickupgroup,chanspy,chatCapacity,mailCapacity,faxCapacity,smsCapacity,openchannelCapacity,phoneBarEnableSettings,phoneBarAutoAnswer,phoneBarRingInUse,phoneBarEnableRecording,phoneBarUnconditional,phoneBarUnconditionalNumber,phoneBarNoReply,phoneBarNoReplyNumber,phoneBarBusy,phoneBarBusyNumber,phoneBarRemoteControl,phoneBarRemoteControlPort,phoneBarExpires,phoneBarListenPort",role:"agent",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:202,bodyClass:"staff"}).state("app.staff.agents.edit",{url:"/:id?tab",params:{agent:void 0},views:{"content@app":{templateUrl:"app/main/apps/staff/views/agents/edit/view.html",controller:"AgentController as vm"}},resolve:{agent:["apiResolver","$stateParams",function(e,t){return e.resolve("user@get",{fields:"createdAt,updatedAt,id,role,fullname,name,email,userpic,password,description,autointernal,internal,loginInPause,voicemail,transport,host,nat,type,allow,callerid,callgroup,pickupgroup,chanspy,chatCapacity,mailCapacity,faxCapacity,smsCapacity,openchannelCapacity,phoneBarEnableSettings,phoneBarAutoAnswer,phoneBarRingInUse,phoneBarEnableRecording,phoneBarUnconditional,phoneBarUnconditionalNumber,phoneBarNoReply,phoneBarNoReplyNumber,phoneBarBusy,phoneBarBusyNumber,phoneBarRemoteControl,phoneBarRemoteControlPort,phoneBarExpires,phoneBarListenPort",id:t.id})}]},authenticate:!0,permissionId:202,bodyClass:"staff"}).state("app.staff.telephones",{url:"/telephones",views:{"content@app":{templateUrl:"app/main/apps/staff/views/telephones/telephones.html",controller:"TelephonesController as vm"}},resolve:{telephones:["apiResolver",function(e){return e.resolve("user@get",{fields:"createdAt,updatedAt,id,role,fullname,name,email,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup",role:"telephone",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:203,bodyClass:"staff"}).state("app.staff.telephones.edit",{url:"/:id?tab",params:{telephone:void 0},views:{"content@app":{templateUrl:"app/main/apps/staff/views/telephones/edit/view.html",controller:"TelephoneController as vm"}},resolve:{telephone:["apiResolver","$stateParams",function(e,t){return e.resolve("user@get",{fields:"createdAt,updatedAt,id,role,fullname,name,email,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup",id:t.id})}]},authenticate:!0,permissionId:203,bodyClass:"staff"}).state("app.staff.teams",{url:"/teams",views:{"content@app":{templateUrl:"app/main/apps/staff/views/teams/teams.html",controller:"TeamsController as vm"}},resolve:{teams:["apiResolver",function(e){return e.resolve("team@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:204,bodyClass:"staff"}),t.addPart("app/main/apps/staff")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.staff",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.tools",{abstract:!0,url:"/tools"}).state("app.tools.cannedAnswers",{url:"/cannedAnswers",views:{"content@app":{templateUrl:"app/main/apps/tools/views/cannedAnswers/cannedAnswers.html",controller:"CannedAnswersController as vm"}},resolve:{cannedAnswers:["apiResolver",function(e){return e.resolve("cannedAnswer@get",{fields:"createdAt,updatedAt,id,key,value,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1002,bodyClass:"tools"}).state("app.tools.customDashboards",{url:"/customDashboards",views:{"content@app":{templateUrl:"app/main/apps/tools/views/customDashboards/customDashboards.html",controller:"CustomDashboardsController as vm"}},resolve:{customDashboards:["apiResolver",function(e){return e.resolve("dashboard@get",{fields:"createdAt,updatedAt,id,name,interval,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1003,bodyClass:"tools"}).state("app.tools.customDashboards.edit",{url:"/:id?tab",params:{customDashboard:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/customDashboards/edit/view.html",controller:"CustomDashboardController as vm"}},resolve:{customDashboard:["apiResolver","$stateParams",function(e,t){return e.resolve("dashboard@get",{fields:"createdAt,updatedAt,id,name,interval,description",id:t.id})}]},authenticate:!0,permissionId:1003,bodyClass:"tools"}).state("app.tools.intervals",{url:"/intervals",views:{"content@app":{templateUrl:"app/main/apps/tools/views/intervals/intervals.html",controller:"IntervalsController as vm"}},resolve:{intervals:["apiResolver",function(e){return e.resolve("interval@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",IntervalId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:1004,bodyClass:"tools"}).state("app.tools.intervals.edit",{url:"/:id?tab",params:{interval:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/intervals/edit/view.html",controller:"IntervalController as vm"}},resolve:{interval:["apiResolver","$stateParams",function(e,t){return e.resolve("interval@get",{fields:"createdAt,updatedAt,id,name,description",id:t.id})}]},authenticate:!0,permissionId:1004,bodyClass:"tools"}).state("app.tools.pauses",{url:"/pauses",views:{"content@app":{templateUrl:"app/main/apps/tools/views/pauses/pauses.html",controller:"PausesController as vm"}},resolve:{pauses:["apiResolver",function(e){return e.resolve("pause@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1005,bodyClass:"tools"}).state("app.tools.schedules",{url:"/schedules",views:{"content@app":{templateUrl:"app/main/apps/tools/views/schedules/schedules.html",controller:"SchedulesController as vm"}},resolve:{schedules:["apiResolver",function(e){return e.resolve("schedule@get",{fields:"createdAt,updatedAt,id,name,type,reportType,reportId,reportId,reportOutput,cronType,validityStart,validityEnd,cron,weekDays,monthDay,hour,reportRange,sendMail,MailServerOutId,email,active,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:42,bodyClass:"tools"}).state("app.tools.schedules.edit",{url:"/:id?tab",params:{schedule:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/schedules/edit/view.html",controller:"ScheduleController as vm"}},resolve:{schedule:["apiResolver","$stateParams",function(e,t){return e.resolve("schedule@get",{fields:"createdAt,updatedAt,id,name,type,reportType,reportId,reportId,reportOutput,cronType,validityStart,validityEnd,cron,weekDays,monthDay,hour,reportRange,sendMail,MailServerOutId,email,active,description",id:t.id})}]},authenticate:!0,permissionId:42,bodyClass:"tools"}).state("app.tools.sounds",{url:"/sounds",views:{"content@app":{templateUrl:"app/main/apps/tools/views/sounds/sounds.html",controller:"SoundsController as vm"}},resolve:{sounds:["apiResolver",function(e){return e.resolve("sound@get",{fields:"createdAt,updatedAt,id,name,audio,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1006,bodyClass:"tools"}).state("app.tools.tags",{url:"/tags",views:{"content@app":{templateUrl:"app/main/apps/tools/views/tags/tags.html",controller:"TagsController as vm"}},resolve:{tags:["apiResolver",function(e){return e.resolve("tag@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1007,bodyClass:"tools"}).state("app.tools.templates",{url:"/templates",views:{"content@app":{templateUrl:"app/main/apps/tools/views/templates/templates.html",controller:"TemplatesController as vm"}},resolve:{templates:["apiResolver",function(e){return e.resolve("template@get",{fields:"createdAt,updatedAt,id,name,subject,html,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1008,bodyClass:"tools"}).state("app.tools.triggers",{url:"/triggers",views:{"content@app":{templateUrl:"app/main/apps/tools/views/triggers/triggers.html",controller:"TriggersController as vm"}},resolve:{triggers:["apiResolver",function(e){return e.resolve("trigger@get",{fields:"createdAt,updatedAt,id,name,channel,status,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1009,bodyClass:"tools"}).state("app.tools.triggers.edit",{url:"/:id?tab",params:{trigger:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/triggers/edit/view.html",controller:"TriggerController as vm"}},resolve:{trigger:["apiResolver","$stateParams",function(e,t){return e.resolve("trigger@get",{fields:"createdAt,updatedAt,id,name,channel,status,description",id:t.id})}]},authenticate:!0,permissionId:1009,bodyClass:"tools"}).state("app.tools.trunks",{url:"/trunks",views:{"content@app":{templateUrl:"app/main/apps/tools/views/trunks/trunks.html",controller:"TrunksController as vm"}},resolve:{trunks:["apiResolver",function(e){return e.resolve("trunk@get",{fields:"createdAt,updatedAt,id,name,active,host,secret,defaultuser,context,callerid,type,dtmfmode,nat,qualify,allow,insecure,call_limit,registry,description,directmedia,callcounter,fromdomain,fromuser,outboundproxy,usereqphone,trustrpid,sendrpid,encryption,port,transport,otherFields",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1010,bodyClass:"tools"}).state("app.tools.trunks.edit",{url:"/:id?tab",params:{trunk:void 0},views:{"content@app":{templateUrl:"app/main/apps/tools/views/trunks/edit/view.html",controller:"TrunkController as vm"}},resolve:{trunk:["apiResolver","$stateParams",function(e,t){return e.resolve("trunk@get",{fields:"createdAt,updatedAt,id,name,active,host,secret,defaultuser,context,callerid,type,dtmfmode,nat,qualify,allow,insecure,call_limit,registry,description,directmedia,callcounter,fromdomain,fromuser,outboundproxy,usereqphone,trustrpid,sendrpid,encryption,port,transport,otherFields",id:t.id})}]},authenticate:!0,permissionId:1010,bodyClass:"tools"}).state("app.tools.variables",{url:"/variables",views:{"content@app":{templateUrl:"app/main/apps/tools/views/variables/variables.html",controller:"VariablesController as vm"}},resolve:{variables:["apiResolver",function(e){return e.resolve("variable@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:1011,bodyClass:"tools"}),t.addPart("app/main/apps/tools")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.tools",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter"]).config(e)}(),function(){"use strict";function e(e){e.state("app.voice.realtime",{url:"/realtime",views:{"content@app":{templateUrl:"app/main/apps/voice/views/realtime/realtime.html",controller:"VoiceRealtimeController as vm"}},authenticate:!0,permissionId:410}).state("app.voice.realtime.agents",{url:"/agents",controller:"AgentsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/agents/view.html",resolve:{pauses:["apiResolver",function(e){return e.resolve("pause@get",{nolimit:!0})}],agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,role,userpic,internal,online,voicePause,pauseType,lastLoginAt,lastPauseAt",role:"agent",sort:"-updatedAt",limit:10,offset:0})}],rpcAgents:["apiResolver",function(e){return e.resolve("rpc@getAgents")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.telephones",{url:"/telephones",controller:"TelephonesVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/telephones/view.html",resolve:{telephones:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,fullname,userpic,internal",role:"telephone",sort:"-updatedAt",limit:10,offset:0})}],rpcTelephones:["apiResolver",function(e){return e.resolve("rpc@getTelephones")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.trunks",{url:"/trunks",controller:"TrunksVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/trunks/view.html",resolve:{trunks:["apiResolver",function(e){return e.resolve("trunk@get",{fields:"id,name",active:!0,sort:"-updatedAt",limit:10,offset:0})}],rpcTrunks:["apiResolver",function(e){return e.resolve("rpc@getTrunks")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.queues",{url:"/queues",controller:"QueuesVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/queues/view.html",resolve:{queues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{type:"inbound",sort:"-updatedAt",limit:10,offset:0}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,channel:"voice",type:"inbound",sort:"-updatedAt",limit:10,page:1})}],rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.queue_calls",{url:"/queue_calls",controller:"QueueCallsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/queue_calls/view.html",resolve:{agents:["apiResolver",function(e){return e.resolve("user@get",{fields:"id,name,role",role:"agent",nolimit:!0})}],rpcCalls:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueuesChannels")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.queue_params",{url:"/queue_params",controller:"QueueParamsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/queue_params/view.html",resolve:{queues:["apiResolver","Auth",function(e,t){return t.hasRole("admin")?e.resolve("voiceQueue@get",{type:"inbound",fields:"id,name",sort:"-updatedAt",limit:10,offset:0}):e.resolve("user@getQueues",{id:t.getCurrentUser().id,channel:"voice",type:"inbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1})}],rpcQueues:["apiResolver",function(e){return e.resolve("rpc@getVoiceQueues")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.ivr_campaigns",{url:"/ivr_campaigns",controller:"IvrCampaignsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/ivr_campaigns/view.html",resolve:{campaigns:["apiResolver",function(e){return e.resolve("campaign@get",{sort:"-updatedAt",limit:10,offset:0})}],rpcCampaigns:["apiResolver",function(e){return e.resolve("rpc@getCampaigns")}]},authenticate:!0,permissionId:410}).state("app.voice.realtime.outbound_calls",{url:"/outbound_calls",controller:"OutboundCallsVoiceRealtimeController as vm",templateUrl:"app/main/apps/voice/views/realtime/outbound_calls/view.html",resolve:{rpcCalls:["apiResolver",function(e){return e.resolve("rpc@getOutboundChannels")}]},authenticate:!0,permissionId:410})}e.$inject=["$stateProvider"],angular.module("app.voice.realtime",["timer"]).config(e)}(),function(){"use strict";function e(e,t,n,a){e.state("app.voice",{abstract:!0,url:"/voice"}).state("app.voice.voiceQueues",{url:"/voiceQueues",views:{"content@app":{templateUrl:"app/main/apps/voice/views/voiceQueues/voiceQueues.html",controller:"VoiceQueuesController as vm"}},resolve:{voiceQueues:["apiResolver",function(e){return e.resolve("voiceQueue@get",{fields:"createdAt,updatedAt,id,name,type,strategy,timeout,maxlen,retry,wrapuptime,weight,joinempty,leavewhenempty,musiconhold,announce,description,periodic_announce,queue_reporthold,queue_youarenext,queue_thereare,queue_callswaiting,queue_holdtime,queue_minutes,queue_minute,queue_seconds,queue_thankyou,announce_frequency,min_announce_frequency,periodic_announce_frequency,random_periodic_announce,announce_holdtime,announce_position,announce_position_limit,reportholdtime,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar",type:"inbound",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:401,bodyClass:"voice"}).state("app.voice.voiceQueues.edit",{url:"/:id?tab",params:{voiceQueue:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/voiceQueues/edit/view.html",controller:"VoiceQueueController as vm"}},resolve:{voiceQueue:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceQueue@get",{fields:"createdAt,updatedAt,id,name,type,strategy,timeout,maxlen,retry,wrapuptime,weight,joinempty,leavewhenempty,musiconhold,announce,description,periodic_announce,queue_reporthold,queue_youarenext,queue_thereare,queue_callswaiting,queue_holdtime,queue_minutes,queue_minute,queue_seconds,queue_thankyou,announce_frequency,min_announce_frequency,periodic_announce_frequency,random_periodic_announce,announce_holdtime,announce_position,announce_position_limit,reportholdtime,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar",id:t.id})}]},authenticate:!0,permissionId:401,bodyClass:"voice"}).state("app.voice.inboundroutes",{url:"/inboundroutes",views:{"content@app":{templateUrl:"app/main/apps/voice/views/inboundroutes/inboundroutes.html",controller:"InboundRoutesController as vm"}},resolve:{inboundroutes:["apiResolver",function(e){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"inbound",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:402,bodyClass:"voice"}).state("app.voice.inboundroutes.edit",{url:"/:id?tab",params:{inboundroute:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/inboundroutes/edit/view.html",controller:"InboundRouteController as vm"}},resolve:{inboundroute:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",id:t.id})}]},authenticate:!0,permissionId:402,bodyClass:"voice"}).state("app.voice.outboundroutes",{url:"/outboundroutes",views:{"content@app":{templateUrl:"app/main/apps/voice/views/outboundroutes/outboundroutes.html",controller:"OutboundRoutesController as vm"}},resolve:{outboundroutes:["apiResolver",function(e){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"Outbound",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:403,bodyClass:"voice"}).state("app.voice.outboundroutes.edit",{url:"/:id?tab",params:{outboundroute:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/outboundroutes/edit/view.html",controller:"OutboundRouteController as vm"}},resolve:{outboundroute:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",id:t.id})}]},authenticate:!0,permissionId:403,bodyClass:"voice"}).state("app.voice.internalroutes",{url:"/internalroutes",views:{"content@app":{templateUrl:"app/main/apps/voice/views/internalroutes/internalroutes.html",controller:"InternalRoutesController as vm"}},resolve:{internalroutes:["apiResolver",function(e){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"internal",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,offset:0})}]},authenticate:!0,permissionId:404,bodyClass:"voice"}).state("app.voice.internalroutes.edit",{url:"/:id?tab",params:{internalroute:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/internalroutes/edit/view.html",controller:"InternalRouteController as vm"}},resolve:{internalroute:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceExtension@get",{fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",id:t.id})}]},authenticate:!0,permissionId:404,bodyClass:"voice"}).state("app.voice.contexts",{url:"/contexts",views:{"content@app":{templateUrl:"app/main/apps/voice/views/contexts/contexts.html",controller:"ContextsController as vm"}},resolve:{contexts:["apiResolver",function(e){return e.resolve("voiceContext@get",{fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",defaultEntry:"false",limit:10,offset:0})}]},authenticate:!0,permissionId:405,bodyClass:"voice"}).state("app.voice.voicemails",{url:"/voicemails",views:{"content@app":{templateUrl:"app/main/apps/voice/views/voicemails/voicemails.html",controller:"VoicemailsController as vm"}},resolve:{voicemails:["apiResolver",function(e){return e.resolve("voiceMail@get",{fields:"createdAt,updatedAt,id,customer_id,fullname,email,password,mailbox,context,tz,attach,envelope,delete,emailbody,emailsubject,maxsecs,maxmsg",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:406,bodyClass:"voice"}).state("app.voice.voicemails.edit",{url:"/:id?tab",params:{voicemail:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/voicemails/edit/view.html",controller:"VoicemailController as vm"}},resolve:{voicemail:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceMail@get",{fields:"createdAt,updatedAt,id,customer_id,fullname,email,password,mailbox,context,tz,attach,envelope,delete,emailbody,emailsubject,maxsecs,maxmsg",id:t.id})}]},authenticate:!0,permissionId:406,bodyClass:"voice"}).state("app.voice.musiconholds",{url:"/musiconholds",views:{"content@app":{templateUrl:"app/main/apps/voice/views/musiconholds/musiconholds.html",controller:"MusicOnHoldsController as vm"}},resolve:{musiconholds:["apiResolver",function(e){return e.resolve("voiceMusicOnHold@get",{fields:"createdAt,updatedAt,id,name,mode,directory,application,format,sort",sort:"-updatedAt",defaultEntry:"false",limit:10,offset:0})}]},authenticate:!0,permissionId:407,bodyClass:"voice"}).state("app.voice.musiconholds.edit",{url:"/:id?tab",params:{musiconhold:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/musiconholds/edit/view.html",controller:"MusicOnHoldController as vm"}},resolve:{musiconhold:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceMusicOnHold@get",{fields:"createdAt,updatedAt,id,name,mode,directory,application,format,sort",id:t.id})}]},authenticate:!0,permissionId:407,bodyClass:"voice"}).state("app.voice.voiceRecordings",{url:"/voiceRecordings",views:{"content@app":{templateUrl:"app/main/apps/voice/views/voiceRecordings/voiceRecordings.html",controller:"VoiceRecordingsController as vm"}},resolve:{voiceRecordings:["apiResolver",function(e){return e.resolve("voiceRecording@get",{fields:"createdAt,updatedAt,id,format,value,type,uniqueid,calleridnum,exten,connectedlinenum,queue,rating,audio,createdAt",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:408,bodyClass:"voice"}).state("app.voice.chanSpies",{url:"/chanSpies",views:{"content@app":{templateUrl:"app/main/apps/voice/views/chanSpies/chanSpies.html",controller:"ChanSpiesController as vm"}},resolve:{chanSpies:["apiResolver",function(e){return e.resolve("voiceChanSpy@get",{fields:"createdAt,updatedAt,id,name,prefix,options,auth,password,record,recordingFormat,description",sort:"-updatedAt",limit:10,offset:0})}]},authenticate:!0,permissionId:409,bodyClass:"voice"}).state("app.voice.chanSpies.edit",{url:"/:id?tab",params:{chanSpy:void 0},views:{"content@app":{templateUrl:"app/main/apps/voice/views/chanSpies/edit/view.html",controller:"ChanSpyController as vm"}},resolve:{chanSpy:["apiResolver","$stateParams",function(e,t){return e.resolve("voiceChanSpy@get",{fields:"createdAt,updatedAt,id,name,prefix,options,auth,password,record,recordingFormat,description",id:t.id})}]},authenticate:!0,permissionId:409,bodyClass:"voice"}),t.addPart("app/main/apps/voice")}e.$inject=["$stateProvider","$translatePartialLoaderProvider","msApiProvider","msNavigationServiceProvider"],angular.module("app.voice",["ngCsv","ngPassword","md.data.table","flow","mdColorPicker","textAngular","ng-sortable","ngAria","ngAnimate","mdPickers","textAngular","gridster","ds.clock","angular.filter","app.voice.realtime"]).config(e)}(),function(){"use strict";function e(){}angular.module("app.navigation",[]).config(e)}(),function(){"use strict";function e(e,t){e.addPart("app/quick-panel"),t.register("quickPanel.activities",["app/data/quick-panel/activities.json"]),t.register("quickPanel.contacts",["app/data/quick-panel/contacts.json"]),t.register("quickPanel.events",["app/data/quick-panel/events.json"]),t.register("quickPanel.notes",["app/data/quick-panel/notes.json"])}e.$inject=["$translatePartialLoaderProvider","msApiProvider"],angular.module("app.quick-panel",[]).config(e)}(),function(){"use strict";function e(e){e.addPart("app/toolbar")}e.$inject=["$translatePartialLoaderProvider"],angular.module("app.toolbar",[]).config(e)}(),function(){"use strict";function e(e){e.interceptors.push("authInterceptor")}e.$inject=["$httpProvider"],angular.module("app.auth").config(e)}(),function(){"use strict";function e(e,t,n,a){e.$on("$stateChangeStart",function(e,i){i.hasOwnProperty("authenticate")&&i.authenticate&&!a.isLoggedIn()&&(e.preventDefault(),t.go("app.login").then(function(){n.location.reload()})),a.isLoggedIn()&&i.hasOwnProperty("permissionId")&&(!i.permissionId||a.hasPermission(i.permissionId)||a.hasRole("admin")||(e.preventDefault(),t.go("app.dashboards.general",{},{reload:!0,notify:!0})))})}e.$inject=["$rootScope","$state","$window","Auth"],angular.module("app.auth").run(e)}(),function(){"use strict";function e(e,t,n,a){function i(){var e=n.defer();return c("agent")?a.user.login({id:h.id}).$promise.then(function(){console.log("AGENT LOGGED IN"),e.resolve()}).catch(function(t){e.reject(t)}):e.resolve(),e.promise}function o(e){var o=n.defer();return a.auth.local(e).$promise.then(function(e){return t.put("motion.token",e.token),a.user.get({id:e.id,fields:"id,role,fullname,name,internal,email,userpic,permissions,voicePause,pauseType"}).$promise}).then(function(e){return h=e,h.lastLoginAt=moment(),t.put("motion.user",JSON.stringify(e)),i()}).then(function(){o.resolve()}).catch(function(e){o.reject(e.data)}),o.promise}function s(){var e=n.defer();return c("agent")?a.user.logout({id:h.id}).$promise.then(function(){console.log("AGENT LOGGED OUT")}).catch(function(e){console.log(e)}).finally(function(){e.resolve()}):e.resolve(),e.promise}function r(){h=null,t.remove("motion.user"),t.remove("motion.token")}function l(e){n.defer();return e?(r(),n.resolve()):s().then(r).catch(function(e){console.error(e)})}function d(){return!(!h||!u())}function c(e){return!!h&&h.role===e}function m(e){return!!h&&_.includes(h.permissions,e)}function u(){return t.get("motion.token")}function p(){return h}function g(e){return h=e,t.put("motion.user",JSON.stringify(e)),h}var h;return function(){t.get("motion.user")&&(h=JSON.parse(t.get("motion.user")))}(),{login:o,logout:l,queueLogin:i,isLoggedIn:d,hasRole:c,hasPermission:m,getToken:u,getCurrentUser:p,updateCurrentUser:g}}e.$inject=["$location","$cookies","$q","api"],angular.module("app.auth").factory("Auth",e)}(),function(){"use strict";function e(e,t,n,a,i){var o;return{request:function(e){var t=n.get("motion.token");return e.headers=e.headers||{},i.isSameOrigin(e.url)&&t&&(e.headers.Authorization="Bearer "+t),e},responseError:function(e){switch(e.status){case 401:n.remove("motion.user"),n.remove("motion.token"),(o||(o=a.get("$state"))).go("app.login")}return t.reject(e)}}}e.$inject=["$rootScope","$q","$cookies","$injector","Util"],angular.module("app.auth").factory("authInterceptor",e)}(),function(){"use strict";function e(e){var t={safeCb:function(e){return angular.isFunction(e)?e:angular.noop},urlParse:function(e){var t=document.createElement("a");return t.href=e,""===t.host&&(t.href=t.href),t},isSameOrigin:function(n,a){return n=t.urlParse(n),a=a&&[].concat(a)||[],(a=a.map(t.urlParse)).push(e.location),(a=a.filter(function(e){var t=n.hostname===e.hostname,a=n.protocol===e.protocol,i=n.port===e.port||""===e.port&&("80"===n.port||"443"===n.port);return t&&a&&i})).length>=1}};return t}e.$inject=["$window"],angular.module("app.auth").factory("Util",e)}(),function(){"use strict";function e(){function e(e){t=angular.extend({},t,e)}var t={disableCustomScrollbars:!1,disableMdInkRippleOnMobile:!0,disableCustomScrollbarsOnMobile:!0};this.config=e,this.$get=function(){function e(e){return!angular.isUndefined(t[e])&&t[e]}function n(e,n){t[e]=n}return{getConfig:e,setConfig:n}}}angular.module("app.core").provider("motionConfig",e)}(),function(){"use strict";function e(e,t,n,a){t.debugEnabled(!0),e.config({tabindex:!1}),a.config({disableCustomScrollbars:!1,disableCustomScrollbarsOnMobile:!0,disableMdInkRippleOnMobile:!0}),n.config({wheelPropagation:!0})}e.$inject=["$ariaProvider","$logProvider","msScrollConfigProvider","motionConfigProvider"],angular.module("app.core").config(e)}(),function(){"use strict";function e(e,t,n){t.generate(),n.getConfig("disableMdInkRippleOnMobile")&&e.isMobile()&&angular.element("body").attr("md-no-ink",!0),e.isMobile()&&angular.element("html").addClass("is-mobile");var a=e.detectBrowser();if(a){var i=a.browser+" "+a.version+" "+a.os;angular.element("html").addClass(i)}}e.$inject=["msUtils","motionGenerator","motionConfig"],angular.module("app.core").run(e)}(),function(){"use strict";function e(e,t,n){return{restrict:"E",compile:function(a,i){var o;return i.code||(o=a.html(),a.empty()),function(a,i,s){function r(e,t){var n=t.find("code"),a=e.split("\n"),i=(a=a.filter(function(e){return e.trim().length}))[0].match(/^\s*/)[0],o=new RegExp("^"+i);a=a.map(function(e){return e.replace(o,"").replace(/\s+$/,"")});var r=hljs.highlight(s.language||s.lang,a.join("\n"),!0);r.value=r.value.replace(/=<span class="hljs-value">""<\/span>/gi,"").replace("<head>","").replace("<head/>",""),n.append(r.value).addClass("highlight")}s.code&&(o=a.$eval(s.code));var l=a.$eval(s.shouldInterpolate);t.when(o).then(function(t){if(t){l&&(t=n(t)(a));var o=angular.element('<pre><code class="highlight" ng-non-bindable></code></pre>');i.append(o),e(function(){r(t,o)},34,!1)}})}}}}e.$inject=["$timeout","$q","$interpolate"],angular.module("app.core").directive("hljs",e)}(),function(){"use strict";function e(){return{restrict:"E",scope:{templatePath:"=template",card:"=ngModel",vm:"=viewModel"},template:'<div class="ms-card-content-wrapper" ng-include="templatePath" onload="cardTemplateLoaded()"></div>',compile:function(e){return e.addClass("ms-card"),function(e,t){function n(){e.$emit("msCard::cardTemplateLoaded",t)}e.cardTemplateLoaded=n}}}}angular.module("app.core").directive("msCard",e)}(),function(){"use strict";function e(e,t,n,a){function i(){return n.dashboardItem.update(s.options).$promise.then(function(e){o(e)}).catch(function(e){console.error(e)})}function o(e){t.hide(e)}var s=this;s.options=a,s.closeDialog=o,s.updateItem=i}e.$inject=["$scope","$mdDialog","api","options"],angular.module("app.tools").controller("EditClockItemDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(a,i,o){function s(n){e.show({controller:"EditClockItemDashboardDialogController",controllerAs:"vm",templateUrl:"app/core/directives/ms-dash-clock/edit/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{options:a.options}})}function r(e){return n.trustAsResourceUrl(e)}a.options?a.options.data||(a.options.data={theme:"light",digitalFormat:"hh:mm:ss"}):a.options={},a.options.sizeX=a.options.sizeX<=1?2:a.options.sizeX,a.options.sizeY=a.options.sizeY<=1?2:a.options.sizeY,a.editItem=s,a.getTrustSrc=r}return{restrict:"E",scope:{options:"=",deleteItem:"&onDeleteItem"},link:i,templateUrl:"app/core/directives/ms-dash-clock/ms-dash-clock.html"}}e.$inject=["$mdDialog","$document","$sce","api"],angular.module("app.core").directive("msDashClock",e)}(),function(){"use strict";function e(e,t,n,a){function i(){return n.dashboardItem.update(s.options).$promise.then(function(e){o(e)}).catch(function(e){console.error(e)})}function o(e){t.hide(e)}var s=this;s.options=a,s.closeDialog=o,s.updateItem=i}e.$inject=["$scope","$mdDialog","api","options"],angular.module("app.tools").controller("EditCounterItemDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(n,i){function o(e){n.result=e}function s(a){e.show({controller:"EditCounterItemDashboardDialogController",controllerAs:"vm",templateUrl:"app/core/directives/ms-dash-counter/edit/dialog.html",parent:angular.element(t.body),targetEvent:a,clickOutsideToClose:!0,locals:{options:n.options}})}n.options&&!n.options.data&&(n.options.data={background:"#FFFFFF",foreground:"#03A9F4",foregroundTitle:"#7f7f7f",query:{fields:[],limit:1}}),a.on("widget:"+n.options.id,o),n.editItem=s,n.onWidgetUpdate=o}return{restrict:"E",scope:{options:"=",deleteItem:"&onDeleteItem"},link:o,templateUrl:"app/core/directives/ms-dash-counter/ms-dash-counter.html"}}e.$inject=["$mdDialog","$document","$interval","socket","api"],angular.module("app.core").directive("msDashCounter",e)}(),function(){"use strict";function e(e,t,n,a){function i(){return n.dashboardItem.update(s.options).$promise.then(function(e){o(e)}).catch(function(e){console.error(e)})}function o(e){t.hide(e)}var s=this;s.options=a,s.closeDialog=o,s.updateItem=i}e.$inject=["$scope","$mdDialog","api","options"],angular.module("app.tools").controller("EditIframeItemDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(a,i,o){function s(n){e.show({controller:"EditIframeItemDashboardDialogController",controllerAs:"vm",templateUrl:"app/core/directives/ms-dash-iframe/edit/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{options:a.options}})}function r(e){return n.trustAsResourceUrl(e)}a.options&&!a.options.data&&(a.options.data={url:"https://www.xcallymotion.com/"}),a.editItem=s,a.getTrustSrc=r}return{restrict:"E",scope:{options:"=",deleteItem:"&onDeleteItem"},link:i,templateUrl:"app/core/directives/ms-dash-iframe/ms-dash-iframe.html"}}e.$inject=["$mdDialog","$document","$sce","api"],angular.module("app.core").directive("msDashIframe",e)}(),function(){"use strict";function e(e,t,n,a){function i(){return n.dashboardItem.update(s.options).$promise.then(function(e){o(e)}).catch(function(e){console.error(e)})}function o(e){t.hide(e)}var s=this;s.options=a,s.closeDialog=o,s.updateItem=i}e.$inject=["$scope","$mdDialog","api","options"],angular.module("app.tools").controller("EditTableItemDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(n,a,o){function s(e){n.result=e}function r(a){e.show({controller:"EditTableItemDashboardDialogController",controllerAs:"vm",templateUrl:"app/core/directives/ms-dash-table/edit/dialog.html",parent:angular.element(t.body),targetEvent:a,clickOutsideToClose:!0,locals:{options:n.options}})}n.options&&!n.options.data&&(n.options.data={query:{}}),i.on("widget:"+n.options.id,s),n.editItem=r,n.onWidgetUpdate=s}return{restrict:"E",scope:{options:"=",deleteItem:"&onDeleteItem"},link:o,templateUrl:"app/core/directives/ms-dash-table/ms-dash-table.html"}}e.$inject=["$mdDialog","$document","$interval","api","socket"],angular.module("app.core").directive("msDashTable",e)}(),function(){"use strict";function e(){function e(e){n=angular.extend({},n,e)}var t=this,n={formatter:function(e){return e?""===e?e:new Date(e):""},parser:function(e){return e?moment(e).add(moment(e).utcOffset(),"m").toDate():""}};t.config=e,t.$get=function(){return n}}function t(e){return{require:"ngModel",priority:1,link:function(t,n,a,i){i.$formatters.push(e.formatter),i.$parsers.push(e.parser)}}}t.$inject=["msDatepickerFixConfig"],angular.module("app.core").provider("msDatepickerFixConfig",e).directive("msDatepickerFix",t)}(),function(){"use strict";function e(){return{restrict:"E",scope:{options:"="},controller:["$scope",function(e){e.transfer=function(t,n,a,i){var o=[];if(a>=0)o.push(t[a]),n.push(t[a]),t.splice(a,1);else{for(var s=0;s<t.length;s+=1)n.push(t[s]);t.length=0,o=n}e.options.transferCallback&&e.options.transferCallback(o,i)}}],templateUrl:"app/core/directives/ms-dual-multiselect/ms-dual-multiselect.html"}}angular.module("app.core").directive("msDualMultiselect",e)}(),function(){"use strict";function e(){function e(e){u.forms.push(e)}function t(){s()||u.selectedIndex--}function n(){r()||u.selectedIndex++}function a(){u.selectedIndex=0}function i(){u.selectedIndex=o()-1}function o(){return u.forms.length}function s(){return 0===u.selectedIndex}function r(){return u.selectedIndex===o()-1}function l(){return angular.isDefined(u.forms[u.selectedIndex])&&u.forms[u.selectedIndex].$invalid}function d(){return u.selectedIndex>0&&angular.isDefined(u.forms[u.selectedIndex-1])&&u.forms[u.selectedIndex-1].$invalid}function c(){for(var e=0;e<u.forms.length;e++)if(u.forms[e].$invalid)return!0;return!1}function m(){u.selectedIndex=0;for(var e=0;e<u.forms.length;e++)u.forms[e].$setPristine(),u.forms[e].$setUntouched()}var u=this;u.forms=[],u.selectedIndex=0,u.registerForm=e,u.previousStep=t,u.nextStep=n,u.firstStep=a,u.lastStep=i,u.totalSteps=o,u.isFirstStep=s,u.isLastStep=r,u.currentStepInvalid=l,u.previousStepInvalid=d,u.formsIncomplete=c,u.resetForm=m}function t(){return{restrict:"E",scope:!0,controller:"MsFormWizardController as msWizard",compile:function(e){return e.addClass("ms-form-wizard"),function(){}}}}function n(){return{restrict:"A",require:["form","^msFormWizard"],compile:function(e){return e.addClass("ms-form-wizard-form"),function(e,t,n,a){var i=a[0];a[1].registerForm(i)}}}}angular.module("app.core").controller("MsFormWizardController",e).directive("msFormWizard",t).directive("msFormWizardForm",n)}(),function(){"use strict";function e(e){return{restrict:"E",scope:{},transclude:!0,templateUrl:"app/core/directives/ms-info-bar/ms-info-bar.html",link:function(t,n){function a(){i.removeClass(o),n.remove(),t.$destroy()}var i=e.find("body"),o="ms-info-bar-active";i.addClass(o),t.removeInfoBar=a}}}e.$inject=["$document"],angular.module("app.core").directive("msInfoBar",e)}(),function(){"use strict";function e(e,t,n,a){function i(){d.options=d.options?angular.extend(c,d.options):c,s()}function o(e,n){"undefined"!=typeof imagesLoaded?t.imagesLoaded(e).on("done",function(){n()}):n()}function s(){e.$watch(function(){return d.container.width()},function(e,t){e!==t&&r()})}function r(){function t(){d.containerPos=d.container[0].getBoundingClientRect(),l(),e.$broadcast("msMasonry:relayoutStarted"),d.items=d.container.find("ms-masonry-item");for(var t=Array.apply(null,new Array(d.columnCount)).map(function(){return 0}),n=0;n<d.items.length;n++){var a,i,o,s,r=d.items[n];(r=angular.element(r)).scope()&&r.scope().$broadcast("msMasonryItem:startReLayout"),r.css({width:d.columnWidth}),d.options.respectItemOrder?s=t[o=n%d.columnCount]:(s=Math.min.apply(Math,t),o=t.indexOf(s)),t[o]=s+r[0].getBoundingClientRect().height,a=Math.round(o*d.columnWidth),i=s,r.css({transform:"translate3d("+a+"px,"+i+"px,0px)"}),r.addClass("placed"),r.scope()&&r.scope().$broadcast("msMasonryItem:finishReLayout")}}m&&a.cancel(m),m=a(function(){t(),e.$broadcast("msMasonry:relayoutFinished")},d.options.reLayoutDebounce)}function l(){d.columnCount=d.options.columnCount,n("gt-md")?d.columnCount=d.options.columnCount:n("md")?d.columnCount=d.columnCount>d.options.responsive.md?d.options.responsive.md:d.columnCount:n("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}var d=this,c={columnCount:5,respectItemOrder:!1,reLayoutDebounce:400,responsive:{md:3,sm:2,xs:1}},m=!0;d.options=null,d.container=[],d.containerPos="",d.columnWidth="",d.items=[],d.reLayout=r,d.initialize=i,d.waitImagesLoaded=o,e.$on("msMasonry:relayout",function(){r()})}function t(e){function t(t,n){return{pre:function(e,a,i,o){o.options=angular.fromJson(n.options||"{}"),o.container=t},post:function(t,n,a,i){e(function(){i.initialize()})}}}return{restrict:"AEC",controller:"msMasonryController",compile:t}}function n(){function e(e,t,n,a){a.waitImagesLoaded(t,function(){a.reLayout()}),e.$on("msMasonryItem:finishReLayout",function(){e.$watch(function(){return t.height()},function(e,t){e!==t&&a.reLayout()})}),t.on("$destroy",function(){a.reLayout()})}return{restrict:"AEC",require:"^msMasonry",priority:1,link:e}}e.$inject=["$scope","$window","$mdMedia","$timeout"],t.$inject=["$timeout"],angular.module("app.core").controller("msMasonryController",e).directive("msMasonry",t).directive("msMasonryItem",n)}(),function(){"use strict";function e(e,t,n,a){function i(e,t){c.selectedPalette=e,c.selectedHues=t}function o(e,t){l(e,t),d(),n.hide()}function s(){c.selectedColor={palette:"",hue:"",class:""},i(!1,!1),d()}function r(){if(c.modelCtrl.$viewValue&&""!==c.modelCtrl.$viewValue){var e,t;if("class"===c.msModelType){var n=c.modelCtrl.$viewValue.split("-");n.length>=5?(e=n[1]+"-"+n[2],t=n[3]):(e=n[1],t=n[2])}else"obj"===c.msModelType&&(e=c.modelCtrl.$viewValue.palette,t=c.modelCtrl.$viewValue.hue||500);l(e,t)}else s()}function l(t,n){c.selectedColor={palette:t,hue:n,class:"md-"+t+"-"+n+"-bg",bgColorValue:a.rgba(c.palettes[t][n].value),fgColorValue:a.rgba(c.palettes[t][n].contrast)},"obj"!==c.msModelType||angular.equals(c.selectedColor,c.modelCtrl.$viewValue)||d(),i(t,c.palettes[t]),e.$selectedColor=c.selectedColor}function d(){"class"===c.msModelType?c.modelCtrl.$setViewValue(c.selectedColor.class):"obj"===c.msModelType&&c.modelCtrl.$setViewValue(c.selectedColor)}var c=this;c.palettes=t,c.selectedPalette=!1,c.selectedHues=!1,e.$selectedColor={},c.activateHueSelection=i,c.selectColor=o,c.removeColor=s,e.$watch("ngModel",r)}function t(){return{require:["msMaterialColorPicker","ngModel"],restrict:"E",scope:{ngModel:"=",msModelType:"@?"},controller:"msMaterialColorPickerController as vm",transclude:!0,templateUrl:"app/core/directives/ms-material-color-picker/ms-material-color-picker.html",link:function(e,t,n,a,i){var o=a[0];o.modelCtrl=a[1],o.msModelType=e.msModelType||"class",i(e,function(e){(e=e.filter(function(e,t){return 1===t.nodeType})).length&&t.find("ms-color-picker-button").replaceWith(e)})}}}e.$inject=["$scope","$mdColorPalette","$mdMenu","motionGenerator"],angular.module("app.core").controller("msMaterialColorPickerController",e).directive("msMaterialColorPicker",t)}(),function(){"use strict";function e(){function e(e,t){o={scope:e,element:t}}function t(){return o.scope.isNavFoldedOpen()}function n(){o.scope.toggleFold()}function a(){o.scope.openFolded()}function i(){o.scope.closeFolded()}var o={};return{setFoldable:e,isNavFoldedOpen:t,toggleFold:n,openFolded:a,closeFolded:i}}function t(e,t,n){return{restrict:"A",link:function(a,i,o){function s(){return p}function r(){(u=!u)?l():m()}function l(){g.addClass("ms-nav-folded"),t.$broadcast("msNav::forceCollapse"),i.scrollTop(0),b.append(h),h.on("mouseenter touchstart",function(e){d(e),p=!0})}function d(e){angular.isDefined(e)&&e.preventDefault(),g.addClass("ms-nav-folded-open"),t.$broadcast("msNav::expandMatchingToggles"),b.find(h).remove(),b.parent().append(v),v.on("mouseenter touchstart",function(e){c(e),p=!1})}function c(e){angular.isDefined(e)&&e.preventDefault(),t.$broadcast("msNav::forceCollapse"),i.scrollTop(0),g.removeClass("ms-nav-folded-open"),b.parent().find(v).remove(),b.append(h),h.on("mouseenter touchstart",function(e){d(e),p=!0})}function m(){g.removeClass("ms-nav-folded ms-nav-folded-open"),t.$broadcast("msNav::expandMatchingToggles"),i.off("mouseenter mouseleave")}var u="true"===o.msNavIsFolded,p=!1,g=angular.element(e[0].body),h=angular.element('<div id="ms-nav-fold-open-overlay"></div>'),v=angular.element('<div id="ms-nav-fold-close-overlay"></div>'),b=i.parent();n.setFoldable(a,i,u),u?l():m(),a.toggleFold=r,a.openFolded=d,a.closeFolded=c,a.isNavFoldedOpen=s,a.$on("$destroy",function(){h.off("mouseenter touchstart"),v.off("mouseenter touchstart"),i.off("mouseenter mouseleave")})}}}function n(){function e(){return l}function t(){l=!0}function n(){l=!1}function a(e,t){d.push({element:e,scope:t})}function i(){return c}function o(e,t){c.push({element:e,scope:t})}function s(){c=[]}var r=this,l=!1,d=[],c=[];r.isDisabled=e,r.enable=n,r.disable=t,r.setToggleItem=a,r.getLockedItems=i,r.setLockedItem=o,r.clearLockedItems=s}function a(e,t,n){return{restrict:"E",scope:{},controller:"MsNavController",compile:function(a){return a.addClass("ms-nav"),function(a){e.$broadcast("msNav::expandMatchingToggles");var i=e.$on("$stateChangeSuccess",function(){e.$broadcast("msNav::expandMatchingToggles"),t.when("navigation").then(function(e){e.close(),n.isNavFoldedOpen()&&n.closeFolded()})});a.$on("$destroy",function(){i()})}}}}function i(){return{restrict:"A",compile:function(e){return e.addClass("ms-nav-title"),function(){}}}}function o(){return{restrict:"AE",compile:function(e){return e.addClass("ms-nav-button"),function(){}}}}function s(e,t,n,a){return{restrict:"A",require:"^msNav",scope:!0,compile:function(i,o){return i.addClass("ms-nav-toggle"),angular.isUndefined(o.collapsed)&&(o.collapsed=!0),i.attr("collapsed",o.collapsed),function(i,o,s,r){function l(){r.isDisabled()||(r.disable(),d()?(r.clearLockedItems(),i.$emit("msNav::pushToLockedList"),e.$broadcast("msNav::collapse"),m().then(function(){r.enable()})):i.$broadcast("msNav::forceCollapse"))}function d(){return"true"===o.attr("collapsed")}function c(){return!d()}function m(){var e=t.defer();if(c())return e.reject({error:!0}),e.promise;o.attr("collapsed",!1);var a=angular.element(o.find("ms-nav-toggle-items")[0]);a.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var s=a[0].offsetHeight;return a.css({position:"",visibility:"",display:"",height:""}),i.$evalAsync(function(){n.animate(a,{display:"block",height:"0px"},{height:s+"px"},p.expandAnimation).then(function(){a.addClass(p.expanded),a.css({height:""}),e.resolve({success:!0})})}),e.promise}function u(){var e=t.defer();if(d())return e.reject({error:!0}),e.promise;o.attr("collapsed",!0);var a=angular.element(o.find("ms-nav-toggle-items")[0]),s=a[0].offsetHeight;return i.$evalAsync(function(){n.animate(a,{height:s+"px"},{height:"0px"},p.collapseAnimation).then(function(){a.removeClass(p.expanded),a.css({display:"",height:""}),e.resolve({success:!0})})}),e.promise}var p={expanded:"expanded",expandAnimation:"expand-animation",collapseAnimation:"collapse-animation"},g=o.find("a"),h=[],v=/\(.*\)/g;angular.forEach(g,function(e){var t=angular.element(e).attr("ui-sref");angular.isUndefined(t)||(t=t.replace(v,""),h.push(t))}),r.setToggleItem(o,i),o.children(".ms-nav-button").on("click",l),i.$on("$destroy",function(){o.children(".ms-nav-button").off("click")}),i.$on("msNav::collapse",function(){var e=r.getLockedItems(),t=!1;angular.forEach(e,function(e){angular.equals(e.scope,i)&&(t=!0)}),t||u().then(function(){r.enable()})}),i.$on("msNav::forceCollapse",function(){u().then(function(){r.enable()})}),i.$on("msNav::expandMatchingToggles",function(){var e=a.current.name,t=!1;angular.forEach(h,function(n){e===n&&(t=!0)}),t?m():u()}),i.$on("msNav::pushToLockedList",function(){r.setLockedItem(o,i)})}}}}t.$inject=["$document","$rootScope","msNavFoldService"],a.$inject=["$rootScope","$mdComponentRegistry","msNavFoldService"],s.$inject=["$rootScope","$q","$animate","$state"],angular.module("app.core").factory("msNavFoldService",e).directive("msNavIsFolded",t).controller("MsNavController",n).directive("msNav",a).directive("msNavTitle",i).directive("msNavButton",o).directive("msNavToggle",s)}(),function(){"use strict";function e(){function e(e,t){if(angular.isString(e)){for(var n=e.split("."),i=n[n.length-1],r=a(n),l=!1,d=0;d<r.length;d++)if(r[d]._id===i){l=r[d];break}l?(angular.extend(l,t),l.uisref=o(l)):(t.children=[],!angular.isUndefined(t.weight)&&angular.isNumber(t.weight)||(t.weight=1),t._id=i,t._path=e,t.uisref=o(t),r.push(t))}else s.error("path must be a string (eg. `dashboard.project`)")}function t(e){if(angular.isString(e)){for(var t=r,n=e.split("."),a=0;a<n.length;a++)for(var i=n[a],o=0;o<t.length;o++)if(t[o]._id===i){if(t[o]._path===e)return t.splice(o,1),!0;t=t[o].children;break}return!1}s.error("path must be a string (eg. `dashboard.project`)")}function n(e){e||(e=r).sort(i);for(var t=0;t<e.length;t++){var a=e[t].children;a.length>1&&a.sort(i),a.length>0&&n(a)}}function a(e){var t=r;if(1===e.length)return t;e.pop();for(var n=0;n<e.length;n++){for(var a=e[n],i=!0,o=0;o<t.length;o++)if(t[o]._id===a){t=t[o].children,i=!1;break}if(i){var s={_id:a,_path:e.join("."),title:a,weight:1,children:[]};t.push(s),t=s.children}}return t}function i(e,t){return parseInt(e.weight)-parseInt(t.weight)}function o(e){var t="";return angular.isDefined(e.state)&&(t=e.state,angular.isDefined(e.stateParams)&&angular.isObject(e.stateParams)&&(t=t+"("+angular.toJson(e.stateParams)+")")),t}var s=angular.injector(["ng"]).get("$log"),r=[],l=this;l.saveItem=e,l.deleteItem=t,l.sortByWeight=n,this.$get=function(){function a(){r=[],b&&(b.vm.navigation=r)}function i(e,t){v={node:e,scope:t}}function o(){return v}function s(e){if(e){for(var t=0;t<r.length;t++)if(r[t]._id===e)return[r[t]];return null}return r}function l(e){return h(s(e))}function d(e){b=e}function c(e){f=e}function m(){return f}function u(e){E=e}function p(){return E}function g(){b.toggleFolded()}function h(e){for(var t=[],n=0;n<e.length;n++){var a=angular.copy(e[n]);a.children=[],t.push(a),e[n].children.length>0&&(t=t.concat(h(e[n].children)))}return t}var v=null,b=null,f=null,E=null;return{saveItem:e,deleteItem:t,sort:n,clearNavigation:a,setActiveItem:i,getActiveItem:o,getNavigation:s,getFlatNavigation:l,setNavigationScope:d,setFolded:c,getFolded:m,setFoldedOpen:u,getFoldedOpen:p,toggleFolded:g}}}function t(e,t){function n(){angular.element("body").toggleClass("ms-navigation-horizontal-mobile-menu-active")}var a=this;e.root?a.navigation=t.getNavigation(e.root):a.navigation=t.getNavigation(),a.toggleHorizontalMobileMenu=n,function(){t.sort()}()}function n(e,t,n,a){return{restrict:"E",scope:{folded:"=",root:"@"},controller:"MsNavigationController as vm",templateUrl:"app/core/directives/ms-navigation/templates/vertical.html",transclude:!0,compile:function(i){return i.addClass("ms-navigation"),function(i,o){function s(t){if(a.setFolded(t),t)e.$broadcast("msNavigation::collapse"),u.addClass("ms-navigation-folded"),r();else{var n=a.getActiveItem();n&&n.scope.$emit("msNavigation::stateMatched"),u.removeClass("ms-navigation-folded ms-navigation-folded-open"),d()}}function r(){o.parent().append(p),t(function(){p.on("mouseenter touchstart",c)})}function l(){u.find("#main").append(g),g.on("mouseenter touchstart",m)}function d(){g.remove()}function c(e){e&&e.preventDefault(),a.setFoldedOpen(!0);var t=a.getActiveItem();t&&t.scope.$emit("msNavigation::stateMatched"),u.addClass("ms-navigation-folded-open"),p.remove(),l()}function m(t){t&&t.preventDefault(),a.setFoldedOpen(!1),e.$broadcast("msNavigation::collapse"),u.removeClass("ms-navigation-folded-open"),g.remove(),r()}var u=angular.element("body"),p=angular.element('<div id="ms-navigation-fold-expander"></div>'),g=angular.element('<div id="ms-navigation-fold-collapser"></div>'),h=n("navigation");a.setNavigationScope(i),function(){null===a.getFolded()&&a.setFolded(i.folded),a.getFolded()&&(t(function(){e.$broadcast("msNavigation::collapse")}),u.addClass("ms-navigation-folded"),r())}(),i.$watch(function(){return h.isLockedOpen()},function(t,n){if(!angular.isUndefined(t)&&!angular.equals(t,n)&&a.getFolded())if(t)e.$broadcast("msNavigation::collapse");else{var i=a.getActiveItem();i&&i.scope.$emit("msNavigation::stateMatched")}}),i.$watch("folded",function(e,t){angular.isUndefined(e)||angular.equals(e,t)||s(e)}),i.toggleFolded=function(){s(!a.getFolded())},i.$on("$stateChangeStart",function(){h.close()}),i.$on("$destroy",function(){g.off("mouseenter touchstart"),p.off("mouseenter touchstart")})}}}}function a(e,t,n,a,i,o){function s(){m.collapsed?m.expand():m.collapse()}function r(){var t=m.element.children("ul"),n=t[0].offsetHeight;e.$evalAsync(function(){m.collapsed=!0,m.element.addClass("collapsing"),a.animate(t,{display:"block",height:n+"px"},{height:"0px"},m.animateHeightClass).then(function(){t.css({display:"",height:""}),m.element.removeClass("collapsing")}),e.$broadcast("msNavigation::collapse")})}function l(){var t=m.element.children("ul");t.css({position:"absolute",visibility:"hidden",display:"block",height:"auto"});var i=t[0].offsetHeight;t.css({position:"",visibility:"",display:"",height:""}),e.$evalAsync(function(){m.collapsed=!1,m.element.addClass("expanding"),a.animate(t,{display:"block",height:"0px"},{height:i+"px"},m.animateHeightClass).then(function(){t.css({height:""}),m.element.removeClass("expanding")}),n.$broadcast("msNavigation::collapse",m.node._path)})}function d(){return m.node.class}function c(){return!(!angular.isDefined(m.node.hidden)||!angular.isFunction(m.node.hidden))&&m.node.hidden()}var m=this;m.element=t,m.node=e.node,m.hasChildren=void 0,m.collapsed=void 0,m.collapsable=void 0,m.group=void 0,m.animateHeightClass="animate-height",m.toggleCollapsed=s,m.collapse=r,m.expand=l,m.getClass=d,m.isHidden=c,function(){if(m.hasChildren=m.node.children.length>0,m.group=!(!angular.isDefined(m.node.group)||!0!==m.node.group),!m.hasChildren||m.group?m.collapsable=!1:m.collapsable=!(!angular.isUndefined(m.node.collapsable)&&"boolean"==typeof m.node.collapsable&&!0!==m.node.collapsable),m.collapsable?m.collapsed=!(!angular.isUndefined(m.node.collapsed)&&"boolean"==typeof m.node.collapsed&&!0!==m.node.collapsed):m.collapsed=!1,m.node.state===i.current.name||i.includes(m.node.state)){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(i.params)&&!angular.equals(m.node.stateParams,i.params))return;e.$emit("msNavigation::stateMatched"),o.setActiveItem(m.node,e)}e.$on("msNavigation::stateMatched",function(){m.collapsable&&m.collapsed&&e.$evalAsync(function(){m.collapsed=!1})}),e.$on("msNavigation::collapse",function(e,t){if(!m.collapsed&&m.collapsable)if(angular.isUndefined(t))m.collapse();else{var n=t.split("."),a=[],i=o.getActiveItem();if(i&&(a=i.node._path.split(".")),n.indexOf(m.node._id)>-1)return;if(a.indexOf(m.node._id)>-1)return;m.collapse()}}),e.$on("$stateChangeSuccess",function(){if(m.node.state===i.current.name){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(i.params)&&!angular.equals(m.node.stateParams,i.params))return;o.setActiveItem(m.node,e),n.$broadcast("msNavigation::collapse",m.node._path)}if(i.includes(m.node.state)){if(angular.isDefined(m.node.stateParams)&&angular.isDefined(i.params)&&!angular.equals(m.node.stateParams,i.params))return;e.$emit("msNavigation::stateMatched")}})}()}function i(){return{restrict:"A",bindToController:{node:"=msNavigationNode"},controller:"MsNavigationNodeController as vm",compile:function(e){return e.addClass("ms-navigation-node"),function(e,t,n,a){t.addClass(a.getClass()),a.group&&t.addClass("group")}}}}function o(){return{restrict:"A",require:"^msNavigationNode",compile:function(e){return e.addClass("ms-navigation-item"),function(e,t,n,a){a.collapsable&&t.on("click",a.toggleCollapsed),e.$on("$destroy",function(){t.off("click")})}}}}function s(e){return{restrict:"E",scope:{root:"@"},controller:"MsNavigationController as vm",templateUrl:"app/core/directives/ms-navigation/templates/horizontal.html",transclude:!0,compile:function(t){return t.addClass("ms-navigation-horizontal"),function(t){e.setNavigationScope(t)}}}}function r(e,t,n,a,i){function o(){return s.node.class}var s=this;s.element=t,s.node=e.node,s.hasChildren=void 0,s.group=void 0,s.getClass=o,function(){if(s.isActive=!1,s.hasChildren=s.node.children.length>0,s.group=!(!angular.isDefined(s.node.group)||!0!==s.node.group),s.node.state===a.current.name||a.includes(s.node.state)){if(angular.isDefined(s.node.stateParams)&&angular.isDefined(a.params)&&!angular.equals(s.node.stateParams,a.params))return;e.$emit("msNavigation::stateMatched"),i.setActiveItem(s.node,e)}e.$on("msNavigation::stateMatched",function(){s.hasChildren&&e.$evalAsync(function(){s.isActive=!0})}),e.$on("msNavigation::clearActive",function(){if(s.hasChildren){var t=[],n=i.getActiveItem();n&&(t=n.node._path.split(".")),t.indexOf(s.node._id)>-1?e.$evalAsync(function(){s.isActive=!0}):e.$evalAsync(function(){s.isActive=!1})}}),e.$on("$stateChangeSuccess",function(){if(s.node.state===a.current.name||a.includes(s.node.state)){if(angular.isDefined(s.node.stateParams)&&angular.isDefined(a.params)&&!angular.equals(s.node.stateParams,a.params))return;i.setActiveItem(s.node,e),n.$broadcast("msNavigation::clearActive")}})}()}function l(){return{restrict:"A",bindToController:{node:"=msNavigationHorizontalNode"},controller:"MsNavigationHorizontalNodeController as vm",compile:function(e){return e.addClass("ms-navigation-horizontal-node"),function(e,t,n,a){t.addClass(a.getClass()),a.group&&t.addClass("group")}}}}function d(e){return{restrict:"A",require:"^msNavigationHorizontalNode",compile:function(t){return t.addClass("ms-navigation-horizontal-item"),function(t,n,a,i){function o(){i.hasChildren&&!e("gt-md")&&n.toggleClass("expanded")}n.on("click",o),t.$on("$destroy",function(){n.off("click")})}}}}t.$inject=["$scope","msNavigationService"],n.$inject=["$rootScope","$timeout","$mdSidenav","msNavigationService"],a.$inject=["$scope","$element","$rootScope","$animate","$state","msNavigationService"],s.$inject=["msNavigationService"],r.$inject=["$scope","$element","$rootScope","$state","msNavigationService"],d.$inject=["$mdMedia"],angular.module("app.core").provider("msNavigationService",e).controller("MsNavigationController",t).directive("msNavigation",n).controller("MsNavigationNodeController",a).directive("msNavigationNode",i).directive("msNavigationItem",o).directive("msNavigationHorizontal",s).controller("MsNavigationHorizontalNodeController",r).directive("msNavigationHorizontalNode",l).directive("msNavigationHorizontalItem",d)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){r.mobileBarActive=!r.mobileBarActive}var r=this;r.mobileBarActive=!1,r.toggleMobileBar=s}function t(){return{restrict:"E",scope:{},require:"msPhonebar",controller:"MsPhonebarController as MsPhonebar",bindToController:{},templateUrl:"app/core/directives/ms-phonebar/ms-phonebar.html",compile:function(e){return e.addClass("ms-phonebar"),function(e,t){}}}}e.$inject=["$scope","$cookies","$document","$timeout","$q","msNavigationService"],angular.module("app.core").controller("MsPhonebarController",e).directive("msPhonebar",t)}(),function(){"use strict";function e(){return{restrict:"A",scope:{msRandomClass:"="},link:function(e,t){var n=e.msRandomClass[Math.floor(Math.random()*e.msRandomClass.length)];t.addClass(n)}}}angular.module("app.core").directive("msRandomClass",e)}(),function(){"use strict";function e(){return{restrict:"A",link:function(e,t){var n=angular.element('<div class="ms-responsive-table-wrapper"></div>');t.after(n),n.append(t)}}}angular.module("app.core").directive("msResponsiveTable",e)}(),function(){"use strict";function e(){function e(e){t=angular.extend({},t,e)}var t={wheelSpeed:1,wheelPropagation:!1,swipePropagation:!0,minScrollbarLength:null,maxScrollbarLength:null,useBothWheelAxes:!1,useKeyboard:!0,suppressScrollX:!1,suppressScrollY:!1,scrollXMarginOffset:0,scrollYMarginOffset:0,stopPropagationOnClick:!0};this.config=e,this.$get=function(){function e(){return t}return{getConfig:e}}}function t(e,t,n,a){return{restrict:"AE",compile:function(i){if(!(a.getConfig("disableCustomScrollbars")||a.getConfig("disableCustomScrollbarsOnMobile")&&n.isMobile()))return i.addClass("ms-scroll"),function(n,a,i){function o(){PerfectScrollbar.update(a[0])}var s={};i.msScroll&&(s=n.$eval(i.msScroll)),s=angular.extend({},t.getConfig(),s),e(function(){PerfectScrollbar.initialize(a[0],s)},0),a.on("mouseenter",o),n.$watch(function(){return a.prop("scrollHeight")},function(e,t){angular.isUndefined(e)||angular.equals(e,t)||o()}),n.$watch(function(){return a.prop("scrollWidth")},function(e,t){angular.isUndefined(e)||angular.equals(e,t)||o()}),n.$on("$destroy",function(){a.off("mouseenter"),PerfectScrollbar.destroy(a[0])})}}}}t.$inject=["$timeout","msScrollConfig","msUtils","motionConfig"],angular.module("app.core").provider("msScrollConfig",e).directive("msScroll",t)}(),function(){"use strict";function e(e,t,n){function a(e){if(!p.collapsed){var t=null===e;(angular.isArray(e)||t)&&(p.selectedResultIndex=0,p.results=e)}}function i(){p.collapsed=!1,e.expand(),p.onExpand&&angular.isFunction(p.onExpand)&&p.onExpand()}function o(){p.query="",p.populateResults(null),p.collapsed=!0,e.collapse(),p.onCollapse&&angular.isFunction(p.onCollapse)&&p.onCollapse()}function s(){g&&p.collapse()}function r(e){e.preventDefault()}function l(e){var t=e.keyCode;switch([27,38,40].indexOf(t)>-1&&e.preventDefault(),t){case 13:if(!p.results)return;p.handleResultClick(p.results[p.selectedResultIndex]);break;case 27:p.collapse();break;case 38:p.selectedResultIndex-1>=0&&(p.selectedResultIndex--,p.ensureSelectedResultIsVisible());break;case 40:if(!p.results)return;p.selectedResultIndex+1<p.results.length&&(p.selectedResultIndex++,p.ensureSelectedResultIsVisible())}}function d(e){p.ignoreMouseEvents||(p.selectedResultIndex=e)}function c(){p.ignoreMouseEvents=!0,n.cancel(p.mouseEventIgnoreTimeout),p.mouseEventIgnoreTimeout=n(function(){p.ignoreMouseEvents=!1},250)}function m(e){p.onResultClick&&p.onResultClick({item:e}),p.collapse()}function u(){var e=t.find(".ms-search-bar-results"),n=angular.element(e.find(".result")[p.selectedResultIndex]);if(e&&n){var a=n.position().top-8,i=n.position().top+n.outerHeight()+8;p.temporarilyIgnoreMouseEvents(),e.scrollTop()>a&&e.scrollTop(a),i>e.height()+e.scrollTop()&&e.scrollTop(i-e.height())}}var p=this;p.collapsed=!0,p.query="",p.queryOptions={debounce:p.debounce||0};var g=!(!p.collapseOnBlur||"true"!=p.collapseOnBlur);p.resultsLoading=!1,p.results=null,p.selectedResultIndex=0,p.ignoreMouseEvents=!1,p.populateResults=a,p.expand=i,p.collapse=o,p.blurCollapse=s,p.absorbEvent=r,p.handleKeydown=l,p.handleMouseenter=d,p.temporarilyIgnoreMouseEvents=c,p.handleResultClick=m,p.ensureSelectedResultIsVisible=u,function(){e.$watch("MsSearchBar.query",function(t,n){if(!angular.isUndefined(t)&&!angular.equals(t,n)&&!p.collapsed){var a=e.$parent.$eval(p.onSearch,{query:t}),i=angular.isArray(a),o=a&&!!a.then;i&&p.populateResults(a),o&&(p.resultsLoading=!0,a.then(function(e){p.populateResults(e)},function(){p.populateResults([])}).finally(function(){p.resultsLoading=!1}))}})}()}function t(e){return{restrict:"E",scope:{},require:"msSearchBar",controller:"MsSearchBarController as MsSearchBar",bindToController:{debounce:"=?",onSearch:"@",onResultClick:"&?",onExpand:"&?",onCollapse:"&?",collapseOnBlur:"@"},templateUrl:"app/core/directives/ms-search-bar/ms-search-bar.html",compile:function(t){return t.addClass("ms-search-bar"),function(t,n){function a(){n.addClass("expanded"),s.addClass("ms-search-bar-expanded"),o.focus()}function i(){n.removeClass("expanded"),s.removeClass("ms-search-bar-expanded")}var o,s=e.find("body");t.collapse=i,t.expand=a,function(){o=n.find("#ms-search-bar-input")}()}}}}e.$inject=["$scope","$element","$timeout"],t.$inject=["$document"],angular.module("app.core").controller("MsSearchBarController",e).directive("msSearchBar",t)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){for(var e=[],t=o.getFlatNavigation(),n=i.defer(),s=0;s<t.length;s++)t[s].uisref&&e.push(t[s]);if(f.query){e=e.filter(function(e){if(angular.lowercase(e.title).search(angular.lowercase(f.query))>-1)return!0});for(var r=0;r<e.length;r++){e[r].hasShortcut=!1;for(var l=0;l<f.shortcuts.length;l++)if(f.shortcuts[l]._id===e[r]._id){e[r].hasShortcut=!0;break}}}else f.shortcuts.length>0&&(e=f.shortcuts);return f.selectedResultIndex=0,a(function(){n.resolve(e)},250),n.promise}function r(){var e=i.defer(),n=angular.fromJson(t.get("motion.shortcuts"));return angular.isUndefined(n)&&(n=[{title:"Agents",icon:"icon-account-multiple",state:"app.staff.agents",weight:5,children:[],uisref:"app.staff.agents",hasShortcut:!0},{title:"License",icon:"icon-cog",state:"app.settings.license",weight:10,children:[],uisref:"app.settings.license",hasShortcut:!0}],t.put("motion.shortcuts",angular.toJson(n))),e.resolve(n),e.promise}function l(){var e=i.defer();return t.put("motion.shortcuts",angular.toJson(f.shortcuts)),a(function(){e.resolve({success:!0})},250),e.promise}function d(e){e.hasShortcut=!0,f.shortcuts.push(e),f.saveShortcuts()}function c(e){e.hasShortcut=!1;for(var t=0;t<f.shortcuts.length;t++)f.shortcuts[t]._id===e._id&&(f.shortcuts.splice(t,1),f.query||(0===f.shortcuts.length?f.results=null:t>=f.shortcuts.length&&(f.selectedResultIndex=f.shortcuts.length-1)));f.saveShortcuts()}function m(e){e.hasShortcut?f.removeShortcut(e):f.addShortcut(e)}function u(e){e.preventDefault()}function p(e){var t=e.keyCode;switch([38,40].indexOf(t)>-1&&e.preventDefault(),t){case 13:f.handleResultClick(f.results[f.selectedResultIndex]);break;case 38:f.selectedResultIndex-1>=0&&(f.selectedResultIndex--,f.ensureSelectedResultIsVisible());break;case 40:f.selectedResultIndex+1<f.results.length&&(f.selectedResultIndex++,f.ensureSelectedResultIsVisible())}}function g(e){f.ignoreMouseEvents||(f.selectedResultIndex=e)}function h(){f.ignoreMouseEvents=!0,a.cancel(f.mouseEventIgnoreTimeout),f.mouseEventIgnoreTimeout=a(function(){f.ignoreMouseEvents=!1},250)}function v(){var e=n.find("#ms-shortcut-add-menu").find(".results"),t=angular.element(e.find(".result")[f.selectedResultIndex]);if(e&&t){var a=t.position().top-8,i=t.position().top+t.outerHeight()+8;f.temporarilyIgnoreMouseEvents(),e.scrollTop()>a&&e.scrollTop(a),i>e.height()+e.scrollTop()&&e.scrollTop(i-e.height())}}function b(){f.mobileBarActive=!f.mobileBarActive}var f=this;f.query="",f.queryOptions={debounce:300},f.resultsLoading=!1,f.selectedResultIndex=0,f.ignoreMouseEvents=!1,f.mobileBarActive=!1,f.results=null,f.shortcuts=[],f.sortableOptions={ghostClass:"ghost",forceFallback:!0,fallbackClass:"dragging",onSort:function(){f.saveShortcuts()}},f.populateResults=s,f.loadShortcuts=r,f.saveShortcuts=l,f.addShortcut=d,f.removeShortcut=c,f.handleResultClick=m,f.absorbEvent=u,f.handleKeydown=p,f.handleMouseenter=g,f.temporarilyIgnoreMouseEvents=h,f.ensureSelectedResultIsVisible=v,f.toggleMobileBar=b,function(){f.loadShortcuts().then(function(e){f.shortcuts=e,f.shortcuts.length>0&&(f.results=e)}),e.$watch("MsShortcuts.query",function(e,t){angular.isUndefined(e)||angular.equals(e,t)||(f.resultsLoading=!0,f.populateResults().then(function(e){f.results=e},function(){f.results=[]}).finally(function(){f.resultsLoading=!1}))})}()}function t(){return{restrict:"E",scope:{},require:"msShortcuts",controller:"MsShortcutsController as MsShortcuts",bindToController:{},templateUrl:"app/core/directives/ms-shortcuts/ms-shortcuts.html",compile:function(e){return e.addClass("ms-shortcuts"),function(e,t){}}}}e.$inject=["$scope","$cookies","$document","$timeout","$q","msNavigationService"],angular.module("app.core").controller("MsShortcutsController",e).directive("msShortcuts",t)}(),function(){"use strict";function e(){return{restrict:"A",require:"^mdSidenav",link:function(e,t,n,a){e.$watch(function(){return a.isOpen()&&!a.isLockedOpen()},function(e){angular.isUndefined(e)||(t.parent().toggleClass("full-height",e),angular.element("html").toggleClass("sidenav-open",e))})}}}angular.module("app.core").directive("msSidenavHelper",e)}(),function(){"use strict";function e(e){return{restrict:"E",link:function(t,n){var a=t.$on("msSplashScreen::remove",function(){e.leave(n).then(function(){a(),t=n=null})})}}}e.$inject=["$animate"],angular.module("app.core").directive("msSplashScreen",e)}(),function(){"use strict";function e(e){function t(e){C.orientation=e||"horizontal"}function n(e){C.mainForm=e}function a(e,t,n){var a={element:e,scope:t,form:n,stepNumber:t.step||C.steps.length+1,stepTitle:t.stepTitle,stepTitleTranslate:t.stepTitleTranslate};return C.steps.push(a),C.steps.sort(function(e,t){return e.stepNumber-t.stepNumber}),a}function i(){C.setCurrentStep(C.currentStepNumber)}function o(){e(function(){for(var e=0;e<C.steps.length;e++)C.steps[e].form.$setPristine(),C.steps[e].form.$setUntouched();C.mainForm.$setPristine(),C.mainForm.$setUntouched(),c()})}function s(e){if(y(e))if(C.currentStepNumber=e,"horizontal"===C.orientation){for(var t=0;t<C.steps.length;t++)C.steps[t].element.hide();C.steps[C.currentStepNumber-1].element.show()}else if("vertical"===C.orientation){for(var n=0;n<C.steps.length;n++)C.steps[n].element.find(".ms-stepper-step-content").hide();C.steps[C.currentStepNumber-1].element.find(".ms-stepper-step-content").show()}}function r(e){b(e)||C.setCurrentStep(e)}function l(){for(var e=C.currentStepNumber-1,t=e;t>=1;t--)if(!b(t)){e=t;break}C.setCurrentStep(e)}function d(){for(var e=C.currentStepNumber+1,t=e;t<=C.steps.length;t++)if(!b(t)){e=t;break}C.setCurrentStep(e)}function c(){C.setCurrentStep(1)}function m(){C.setCurrentStep(C.steps.length)}function u(){return 1===C.currentStepNumber}function p(){return C.currentStepNumber===C.steps.length}function g(e){return y(e)?C.currentStepNumber===e:null}function h(e){if(!y(e))return null;for(var t=!1,n=1;n<e;n++)if(!E(n)){t=!0;break}return t}function v(e){return y(e)?C.steps[e-1].scope.optionalStep:null}function b(e){return y(e)?!!C.steps[e-1].scope.hideStep:null}function f(e){return!b(e.stepNumber)}function E(e){return y(e)?!!v(e)||C.steps[e-1].form.$valid:null}function y(e){return!(angular.isUndefined(e)||e<1||e>C.steps.length)}function A(){return C.mainForm.$valid}var C=this;C.mainForm=void 0,C.orientation="horizontal",C.steps=[],C.currentStep=void 0,C.currentStepNumber=1,C.setOrientation=t,C.registerMainForm=n,C.registerStep=a,C.setupSteps=i,C.resetForm=o,C.setCurrentStep=s,C.gotoStep=r,C.gotoPreviousStep=l,C.gotoNextStep=d,C.gotoFirstStep=c,C.gotoLastStep=m,C.isFirstStep=u,C.isLastStep=p,C.isStepCurrent=g,C.isStepDisabled=h,C.isStepOptional=v,C.isStepHidden=b,C.filterHiddenStep=f,C.isStepValid=E,C.isStepNumberValid=y,C.isFormValid=A}function t(){return{restrict:"A",scope:{},require:["form","msHorizontalStepper"],priority:1001,controller:"MsStepperController as MsStepper",bindToController:{model:"=ngModel"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/horizontal/horizontal.html",compile:function(e){return e.addClass("ms-stepper"),function(e,t,n,a){var i=a[0],o=a[1];o.setOrientation("horizontal"),o.registerMainForm(i),o.setupSteps()}}}}function n(){return{restrict:"E",require:["form","^msHorizontalStepper"],priority:1e3,scope:{step:"=?",stepTitle:"=?",stepTitleTranslate:"=?",optionalStep:"=?",hideStep:"=?"},compile:function(e){return e.addClass("ms-stepper-step"),function(e,t,n,a){var i=a[0],o=a[1];e.optionalStep=angular.isDefined(n.optionalStep),o.registerStep(t,e,i),t.hide()}}}}function a(e){return{restrict:"A",scope:{},require:["form","msVerticalStepper"],priority:1001,controller:"MsStepperController as MsStepper",bindToController:{model:"=ngModel"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/vertical/vertical.html",compile:function(t){return t.addClass("ms-stepper"),function(t,n,a,i){var o=i[0],s=i[1];e(function(){s.setOrientation("vertical"),s.registerMainForm(o),s.setupSteps()})}}}}function i(){return{restrict:"E",require:["form","^msVerticalStepper"],priority:1e3,scope:{step:"=?",stepTitle:"=?",stepTitleTranslate:"=?",optionalStep:"=?",hideStep:"=?"},transclude:!0,templateUrl:"app/core/directives/ms-stepper/templates/vertical/step/vertical-step.html",compile:function(e){return e.addClass("ms-stepper-step"),function(e,t,n,a){var i=a[0],o=a[1];e.optionalStep=angular.isDefined(n.optionalStep),e.stepInfo=o.registerStep(t,e,i),e.MsStepper=o,t.find(".ms-stepper-step-content").hide()}}}}e.$inject=["$timeout"],a.$inject=["$timeout"],angular.module("app.core").controller("MsStepperController",e).directive("msHorizontalStepper",t).directive("msHorizontalStepperStep",n).directive("msVerticalStepper",a).directive("msVerticalStepperStep",i)}(),function(){"use strict";function e(){function e(e){n.scrollEl=e}function t(){return n.scrollEl}var n=this;n.scrollEl=void 0,n.setScrollEl=e,n.getScrollEl=t}function t(){return{scope:{msTimeline:"=?",loadMore:"&?msTimelineLoadMore"},controller:"MsTimelineController",compile:function(e){return e.addClass("ms-timeline"),function(e,t,n,a){function i(){d.scrollTop()+d.height()+c>r.position().top&&(r.addClass("show"),s(),e.loadMore().then(function(){r.removeClass("show"),o()},function(){r.remove()}))}function o(){d.on("scroll",i)}function s(){d.off("scroll",i)}var r=angular.element('<div class="ms-timeline-loader md-accent-bg md-whiteframe-4dp"><span class="spinner animate-rotate"></span></div>');t.append(r);var l={scrollEl:"#content"};l=angular.extend(l,e.msTimeline,{});var d=angular.element(l.scrollEl);a.setScrollEl(d);var c=144;o(),e.$on("$destroy",function(){s()})}}}}function n(e,t){return{scope:!0,require:"^msTimeline",compile:function(n){return n.addClass("ms-timeline-item").addClass("hidden"),function(n,a,i,o){function s(e){var n=t.defer(),a=e.find("img");return a.length>0?a.on("load",function(){n.resolve("Image is loaded")}):n.resolve("No images"),n.promise}function r(){m.scrollTop()+m.height()>a.position().top+l&&(e(function(){c=!0}),m.off("scroll",r))}var l=72,d=!1,c=!1,m=o.getScrollEl();!function(){a.find("ms-card")?n.$on("msCard::cardTemplateLoaded",function(t,n){s(angular.element(n[0])).then(function(){e(function(){d=!0})})}):s(a).then(function(){e(function(){d=!0})}),m.on("scroll",r),r()}();var u=n.$watch(function(){return d&&c},function(e,t){angular.equals(e,t)||e&&(a.removeClass("hidden").addClass("animate"),u())},!0)}}}}n.$inject=["$timeout","$q"],angular.module("app.core").controller("MsTimelineController",e).directive("msTimeline",t).directive("msTimelineItem",n)}(),function(){"use strict";function e(){return{restrict:"E",scope:{ngModel:"="},controller:["$scope",function(e){e.timezone={"Europe/Andorra":{name:"Europe/Andorra",utcOffset:60,offsetStr:"+01:00",countries:["AD"]},"Asia/Dubai":{name:"Asia/Dubai",utcOffset:240,offsetStr:"+04:00",countries:["AE","OM"]},"Asia/Kabul":{name:"Asia/Kabul",utcOffset:270,offsetStr:"+04:30",countries:["AF"]},"Europe/Tirane":{name:"Europe/Tirane",utcOffset:60,offsetStr:"+01:00",countries:["AL"]},"Asia/Yerevan":{name:"Asia/Yerevan",utcOffset:240,offsetStr:"+04:00",countries:["AM"]},"Antarctica/Rothera":{name:"Antarctica/Rothera",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},"Antarctica/Palmer":{name:"Antarctica/Palmer",utcOffset:-180,offsetStr:"-03:00",countries:["AQ"]},"Antarctica/Mawson":{name:"Antarctica/Mawson",utcOffset:300,offsetStr:"+05:00",countries:["AQ"]},"Antarctica/Davis":{name:"Antarctica/Davis",utcOffset:420,offsetStr:"+07:00",countries:["AQ"]},"Antarctica/Casey":{name:"Antarctica/Casey",utcOffset:480,offsetStr:"+08:00",countries:["AQ"]},"Antarctica/Vostok":{name:"Antarctica/Vostok",utcOffset:360,offsetStr:"+06:00",countries:["AQ"]},"Antarctica/DumontDUrville":{name:"Antarctica/DumontDUrville",utcOffset:600,offsetStr:"+10:00",countries:["AQ"]},"Antarctica/Syowa":{name:"Antarctica/Syowa",utcOffset:180,offsetStr:"+03:00",countries:["AQ"]},"Antarctica/Troll":{name:"Antarctica/Troll",utcOffset:0,offsetStr:"+00:00",countries:["AQ"]},"America/Argentina/Buenos_Aires":{name:"America/Argentina/Buenos_Aires",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Cordoba":{name:"America/Argentina/Cordoba",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Salta":{name:"America/Argentina/Salta",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Jujuy":{name:"America/Argentina/Jujuy",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Tucuman":{name:"America/Argentina/Tucuman",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Catamarca":{name:"America/Argentina/Catamarca",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/La_Rioja":{name:"America/Argentina/La_Rioja",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/San_Juan":{name:"America/Argentina/San_Juan",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Mendoza":{name:"America/Argentina/Mendoza",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/San_Luis":{name:"America/Argentina/San_Luis",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Rio_Gallegos":{name:"America/Argentina/Rio_Gallegos",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"America/Argentina/Ushuaia":{name:"America/Argentina/Ushuaia",utcOffset:-180,offsetStr:"-03:00",countries:["AR"]},"Pacific/Pago_Pago":{name:"Pacific/Pago_Pago",utcOffset:-660,offsetStr:"-11:00",countries:["AS","UM"]},"Europe/Vienna":{name:"Europe/Vienna",utcOffset:60,offsetStr:"+01:00",countries:["AT"]},"Australia/Lord_Howe":{name:"Australia/Lord_Howe",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Antarctica/Macquarie":{name:"Antarctica/Macquarie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Hobart":{name:"Australia/Hobart",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Currie":{name:"Australia/Currie",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Melbourne":{name:"Australia/Melbourne",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Sydney":{name:"Australia/Sydney",utcOffset:660,offsetStr:"+11:00",countries:["AU"]},"Australia/Broken_Hill":{name:"Australia/Broken_Hill",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},"Australia/Brisbane":{name:"Australia/Brisbane",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},"Australia/Lindeman":{name:"Australia/Lindeman",utcOffset:600,offsetStr:"+10:00",countries:["AU"]},"Australia/Adelaide":{name:"Australia/Adelaide",utcOffset:630,offsetStr:"+10:30",countries:["AU"]},"Australia/Darwin":{name:"Australia/Darwin",utcOffset:570,offsetStr:"+09:30",countries:["AU"]},"Australia/Perth":{name:"Australia/Perth",utcOffset:480,offsetStr:"+08:00",countries:["AU"]},"Australia/Eucla":{name:"Australia/Eucla",utcOffset:525,offsetStr:"+08:45",countries:["AU"]},"Asia/Baku":{name:"Asia/Baku",utcOffset:240,offsetStr:"+04:00",countries:["AZ"]},"America/Barbados":{name:"America/Barbados",utcOffset:-240,offsetStr:"-04:00",countries:["BB"]},"Asia/Dhaka":{name:"Asia/Dhaka",utcOffset:360,offsetStr:"+06:00",countries:["BD"]},"Europe/Brussels":{name:"Europe/Brussels",utcOffset:60,offsetStr:"+01:00",countries:["BE"]},"Europe/Sofia":{name:"Europe/Sofia",utcOffset:120,offsetStr:"+02:00",countries:["BG"]},"Atlantic/Bermuda":{name:"Atlantic/Bermuda",utcOffset:-240,offsetStr:"-04:00",countries:["BM"]},"Asia/Brunei":{name:"Asia/Brunei",utcOffset:480,offsetStr:"+08:00",countries:["BN"]},"America/La_Paz":{name:"America/La_Paz",utcOffset:-240,offsetStr:"-04:00",countries:["BO"]},"America/Noronha":{name:"America/Noronha",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},"America/Belem":{name:"America/Belem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Fortaleza":{name:"America/Fortaleza",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Recife":{name:"America/Recife",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Araguaina":{name:"America/Araguaina",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Maceio":{name:"America/Maceio",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Bahia":{name:"America/Bahia",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Sao_Paulo":{name:"America/Sao_Paulo",utcOffset:-120,offsetStr:"-02:00",countries:["BR"]},"America/Campo_Grande":{name:"America/Campo_Grande",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Cuiaba":{name:"America/Cuiaba",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Santarem":{name:"America/Santarem",utcOffset:-180,offsetStr:"-03:00",countries:["BR"]},"America/Porto_Velho":{name:"America/Porto_Velho",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},"America/Boa_Vista":{name:"America/Boa_Vista",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},"America/Manaus":{name:"America/Manaus",utcOffset:-240,offsetStr:"-04:00",countries:["BR"]},"America/Eirunepe":{name:"America/Eirunepe",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},"America/Rio_Branco":{name:"America/Rio_Branco",utcOffset:-300,offsetStr:"-05:00",countries:["BR"]},"America/Nassau":{name:"America/Nassau",utcOffset:-300,offsetStr:"-05:00",countries:["BS"]},"Asia/Thimphu":{name:"Asia/Thimphu",utcOffset:360,offsetStr:"+06:00",countries:["BT"]},"Europe/Minsk":{name:"Europe/Minsk",utcOffset:180,offsetStr:"+03:00",countries:["BY"]},"America/Belize":{name:"America/Belize",utcOffset:-360,offsetStr:"-06:00",countries:["BZ"]},"America/St_Johns":{name:"America/St_Johns",utcOffset:-210,offsetStr:"-03:30",countries:["CA"]},"America/Halifax":{name:"America/Halifax",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Glace_Bay":{name:"America/Glace_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Moncton":{name:"America/Moncton",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Goose_Bay":{name:"America/Goose_Bay",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Blanc-Sablon":{name:"America/Blanc-Sablon",utcOffset:-240,offsetStr:"-04:00",countries:["CA"]},"America/Toronto":{name:"America/Toronto",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Nipigon":{name:"America/Nipigon",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Thunder_Bay":{name:"America/Thunder_Bay",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Iqaluit":{name:"America/Iqaluit",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Pangnirtung":{name:"America/Pangnirtung",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Resolute":{name:"America/Resolute",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Atikokan":{name:"America/Atikokan",utcOffset:-300,offsetStr:"-05:00",countries:["CA"]},"America/Rankin_Inlet":{name:"America/Rankin_Inlet",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Winnipeg":{name:"America/Winnipeg",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Rainy_River":{name:"America/Rainy_River",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Regina":{name:"America/Regina",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Swift_Current":{name:"America/Swift_Current",utcOffset:-360,offsetStr:"-06:00",countries:["CA"]},"America/Edmonton":{name:"America/Edmonton",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Cambridge_Bay":{name:"America/Cambridge_Bay",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Yellowknife":{name:"America/Yellowknife",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Inuvik":{name:"America/Inuvik",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Creston":{name:"America/Creston",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Dawson_Creek":{name:"America/Dawson_Creek",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Fort_Nelson":{name:"America/Fort_Nelson",utcOffset:-420,offsetStr:"-07:00",countries:["CA"]},"America/Vancouver":{name:"America/Vancouver",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},"America/Whitehorse":{name:"America/Whitehorse",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},"America/Dawson":{name:"America/Dawson",utcOffset:-480,offsetStr:"-08:00",countries:["CA"]},"Indian/Cocos":{name:"Indian/Cocos",utcOffset:390,offsetStr:"+06:30",countries:["CC"]},"Europe/Zurich":{name:"Europe/Zurich",utcOffset:60,offsetStr:"+01:00",countries:["CH","DE","LI"]},"Africa/Abidjan":{name:"Africa/Abidjan",utcOffset:0,offsetStr:"+00:00",countries:["CI","BF","GM","GN","ML","MR","SH","SL","SN","ST","TG"]},"Pacific/Rarotonga":{name:"Pacific/Rarotonga",utcOffset:-600,offsetStr:"-10:00",countries:["CK"]},"America/Santiago":{name:"America/Santiago",utcOffset:-180,offsetStr:"-03:00",countries:["CL"]},"Pacific/Easter":{name:"Pacific/Easter",utcOffset:-300,offsetStr:"-05:00",countries:["CL"]},"Asia/Shanghai":{name:"Asia/Shanghai",utcOffset:480,offsetStr:"+08:00",countries:["CN"]},"Asia/Urumqi":{name:"Asia/Urumqi",utcOffset:360,offsetStr:"+06:00",countries:["CN"]},"America/Bogota":{name:"America/Bogota",utcOffset:-300,offsetStr:"-05:00",countries:["CO"]},"America/Costa_Rica":{name:"America/Costa_Rica",utcOffset:-360,offsetStr:"-06:00",countries:["CR"]},"America/Havana":{name:"America/Havana",utcOffset:-300,offsetStr:"-05:00",countries:["CU"]},"Atlantic/Cape_Verde":{name:"Atlantic/Cape_Verde",utcOffset:-60,offsetStr:"-01:00",countries:["CV"]},"America/Curacao":{name:"America/Curacao",utcOffset:-240,offsetStr:"-04:00",countries:["CW","AW","BQ","SX"]},"Indian/Christmas":{name:"Indian/Christmas",utcOffset:420,offsetStr:"+07:00",countries:["CX"]},"Asia/Nicosia":{name:"Asia/Nicosia",utcOffset:120,offsetStr:"+02:00",countries:["CY"]},"Europe/Prague":{name:"Europe/Prague",utcOffset:60,offsetStr:"+01:00",countries:["CZ","SK"]},"Europe/Berlin":{name:"Europe/Berlin",utcOffset:60,offsetStr:"+01:00",countries:["DE"]},"Europe/Copenhagen":{name:"Europe/Copenhagen",utcOffset:60,offsetStr:"+01:00",countries:["DK"]},"America/Santo_Domingo":{name:"America/Santo_Domingo",utcOffset:-240,offsetStr:"-04:00",countries:["DO"]},"Africa/Algiers":{name:"Africa/Algiers",utcOffset:60,offsetStr:"+01:00",countries:["DZ"]},"America/Guayaquil":{name:"America/Guayaquil",utcOffset:-300,offsetStr:"-05:00",countries:["EC"]},"Pacific/Galapagos":{name:"Pacific/Galapagos",utcOffset:-360,offsetStr:"-06:00",countries:["EC"]},"Europe/Tallinn":{name:"Europe/Tallinn",utcOffset:120,offsetStr:"+02:00",countries:["EE"]},"Africa/Cairo":{name:"Africa/Cairo",utcOffset:120,offsetStr:"+02:00",countries:["EG"]},"Africa/El_Aaiun":{name:"Africa/El_Aaiun",utcOffset:0,offsetStr:"+00:00",countries:["EH"]},"Europe/Madrid":{name:"Europe/Madrid",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},"Africa/Ceuta":{name:"Africa/Ceuta",utcOffset:60,offsetStr:"+01:00",countries:["ES"]},"Atlantic/Canary":{name:"Atlantic/Canary",utcOffset:0,offsetStr:"+00:00",countries:["ES"]},"Europe/Helsinki":{name:"Europe/Helsinki",utcOffset:120,offsetStr:"+02:00",countries:["FI","AX"]},"Pacific/Fiji":{name:"Pacific/Fiji",utcOffset:720,offsetStr:"+12:00",countries:["FJ"]},"Atlantic/Stanley":{name:"Atlantic/Stanley",utcOffset:-180,offsetStr:"-03:00",countries:["FK"]},"Pacific/Chuuk":{name:"Pacific/Chuuk",utcOffset:600,offsetStr:"+10:00",countries:["FM"]},"Pacific/Pohnpei":{name:"Pacific/Pohnpei",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},"Pacific/Kosrae":{name:"Pacific/Kosrae",utcOffset:660,offsetStr:"+11:00",countries:["FM"]},"Atlantic/Faroe":{name:"Atlantic/Faroe",utcOffset:0,offsetStr:"+00:00",countries:["FO"]},"Europe/Paris":{name:"Europe/Paris",utcOffset:60,offsetStr:"+01:00",countries:["FR"]},"Europe/London":{name:"Europe/London",utcOffset:0,offsetStr:"+00:00",countries:["GB","GG","IM","JE"]},"Asia/Tbilisi":{name:"Asia/Tbilisi",utcOffset:240,offsetStr:"+04:00",countries:["GE"]},"America/Cayenne":{name:"America/Cayenne",utcOffset:-180,offsetStr:"-03:00",countries:["GF"]},"Africa/Accra":{name:"Africa/Accra",utcOffset:0,offsetStr:"+00:00",countries:["GH"]},"Europe/Gibraltar":{name:"Europe/Gibraltar",utcOffset:60,offsetStr:"+01:00",countries:["GI"]},"America/Godthab":{name:"America/Godthab",utcOffset:-180,offsetStr:"-03:00",countries:["GL"]},"America/Danmarkshavn":{name:"America/Danmarkshavn",utcOffset:0,offsetStr:"+00:00",countries:["GL"]},"America/Scoresbysund":{name:"America/Scoresbysund",utcOffset:-60,offsetStr:"-01:00",countries:["GL"]},"America/Thule":{name:"America/Thule",utcOffset:-240,offsetStr:"-04:00",countries:["GL"]},"Europe/Athens":{name:"Europe/Athens",utcOffset:120,offsetStr:"+02:00",countries:["GR"]},"Atlantic/South_Georgia":{name:"Atlantic/South_Georgia",utcOffset:-120,offsetStr:"-02:00",countries:["GS"]},"America/Guatemala":{name:"America/Guatemala",utcOffset:-360,offsetStr:"-06:00",countries:["GT"]},"Pacific/Guam":{name:"Pacific/Guam",utcOffset:600,offsetStr:"+10:00",countries:["GU","MP"]},"Africa/Bissau":{name:"Africa/Bissau",utcOffset:0,offsetStr:"+00:00",countries:["GW"]},"America/Guyana":{name:"America/Guyana",utcOffset:-240,offsetStr:"-04:00",countries:["GY"]},"Asia/Hong_Kong":{name:"Asia/Hong_Kong",utcOffset:480,offsetStr:"+08:00",countries:["HK"]},"America/Tegucigalpa":{name:"America/Tegucigalpa",utcOffset:-360,offsetStr:"-06:00",countries:["HN"]},"America/Port-au-Prince":{name:"America/Port-au-Prince",utcOffset:-300,offsetStr:"-05:00",countries:["HT"]},"Europe/Budapest":{name:"Europe/Budapest",utcOffset:60,offsetStr:"+01:00",countries:["HU"]},"Asia/Jakarta":{name:"Asia/Jakarta",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},"Asia/Pontianak":{name:"Asia/Pontianak",utcOffset:420,offsetStr:"+07:00",countries:["ID"]},"Asia/Makassar":{name:"Asia/Makassar",utcOffset:480,offsetStr:"+08:00",countries:["ID"]},"Asia/Jayapura":{name:"Asia/Jayapura",utcOffset:540,offsetStr:"+09:00",countries:["ID"]},"Europe/Dublin":{name:"Europe/Dublin",utcOffset:0,offsetStr:"+00:00",countries:["IE"]},"Asia/Jerusalem":{name:"Asia/Jerusalem",utcOffset:120,offsetStr:"+02:00",countries:["IL"]},"Asia/Kolkata":{name:"Asia/Kolkata",utcOffset:330,offsetStr:"+05:30",countries:["IN"]},"Indian/Chagos":{name:"Indian/Chagos",utcOffset:360,offsetStr:"+06:00",countries:["IO"]},"Asia/Baghdad":{name:"Asia/Baghdad",utcOffset:180,offsetStr:"+03:00",countries:["IQ"]},"Asia/Tehran":{name:"Asia/Tehran",utcOffset:210,offsetStr:"+03:30",countries:["IR"]},"Atlantic/Reykjavik":{name:"Atlantic/Reykjavik",utcOffset:0,offsetStr:"+00:00",countries:["IS"]},"Europe/Rome":{name:"Europe/Rome",utcOffset:60,offsetStr:"+01:00",countries:["IT","SM","VA"]},"America/Jamaica":{name:"America/Jamaica",utcOffset:-300,offsetStr:"-05:00",countries:["JM"]},"Asia/Amman":{name:"Asia/Amman",utcOffset:120,offsetStr:"+02:00",countries:["JO"]},"Asia/Tokyo":{name:"Asia/Tokyo",utcOffset:540,offsetStr:"+09:00",countries:["JP"]},"Africa/Nairobi":{name:"Africa/Nairobi",utcOffset:180,offsetStr:"+03:00",countries:["KE","DJ","ER","ET","KM","MG","SO","TZ","UG","YT"]},"Asia/Bishkek":{name:"Asia/Bishkek",utcOffset:360,offsetStr:"+06:00",countries:["KG"]},"Pacific/Tarawa":{name:"Pacific/Tarawa",utcOffset:720,offsetStr:"+12:00",countries:["KI"]},"Pacific/Enderbury":{name:"Pacific/Enderbury",utcOffset:780,offsetStr:"+13:00",countries:["KI"]},"Pacific/Kiritimati":{name:"Pacific/Kiritimati",utcOffset:840,offsetStr:"+14:00",countries:["KI"]},"Asia/Pyongyang":{name:"Asia/Pyongyang",utcOffset:510,offsetStr:"+08:30",countries:["KP"]},"Asia/Seoul":{name:"Asia/Seoul",utcOffset:540,offsetStr:"+09:00",countries:["KR"]},"America/Cayman":{name:"America/Cayman",utcOffset:-300,offsetStr:"-05:00",countries:["KY"]},"Asia/Almaty":{name:"Asia/Almaty",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},"Asia/Qyzylorda":{name:"Asia/Qyzylorda",utcOffset:360,offsetStr:"+06:00",countries:["KZ"]},"Asia/Aqtobe":{name:"Asia/Aqtobe",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},"Asia/Aqtau":{name:"Asia/Aqtau",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},"Asia/Oral":{name:"Asia/Oral",utcOffset:300,offsetStr:"+05:00",countries:["KZ"]},"Asia/Beirut":{name:"Asia/Beirut",utcOffset:120,offsetStr:"+02:00",countries:["LB"]},"Asia/Colombo":{name:"Asia/Colombo",utcOffset:330,offsetStr:"+05:30",countries:["LK"]},"Africa/Monrovia":{name:"Africa/Monrovia",utcOffset:0,offsetStr:"+00:00",countries:["LR"]},"Europe/Vilnius":{name:"Europe/Vilnius",utcOffset:120,offsetStr:"+02:00",countries:["LT"]},"Europe/Luxembourg":{name:"Europe/Luxembourg",utcOffset:60,offsetStr:"+01:00",countries:["LU"]},"Europe/Riga":{name:"Europe/Riga",utcOffset:120,offsetStr:"+02:00",countries:["LV"]},"Africa/Tripoli":{name:"Africa/Tripoli",utcOffset:120,offsetStr:"+02:00",countries:["LY"]},"Africa/Casablanca":{name:"Africa/Casablanca",utcOffset:0,offsetStr:"+00:00",countries:["MA"]},"Europe/Monaco":{name:"Europe/Monaco",utcOffset:60,offsetStr:"+01:00",countries:["MC"]},"Europe/Chisinau":{name:"Europe/Chisinau",utcOffset:120,offsetStr:"+02:00",countries:["MD"]},"Pacific/Majuro":{name:"Pacific/Majuro",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},"Pacific/Kwajalein":{name:"Pacific/Kwajalein",utcOffset:720,offsetStr:"+12:00",countries:["MH"]},"Asia/Rangoon":{name:"Asia/Rangoon",utcOffset:390,offsetStr:"+06:30",countries:["MM"]},"Asia/Ulaanbaatar":{name:"Asia/Ulaanbaatar",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},"Asia/Hovd":{name:"Asia/Hovd",utcOffset:420,offsetStr:"+07:00",countries:["MN"]},"Asia/Choibalsan":{name:"Asia/Choibalsan",utcOffset:480,offsetStr:"+08:00",countries:["MN"]},"Asia/Macau":{name:"Asia/Macau",utcOffset:480,offsetStr:"+08:00",countries:["MO"]},"America/Martinique":{name:"America/Martinique",utcOffset:-240,offsetStr:"-04:00",countries:["MQ"]},"Europe/Malta":{name:"Europe/Malta",utcOffset:60,offsetStr:"+01:00",countries:["MT"]},"Indian/Mauritius":{name:"Indian/Mauritius",utcOffset:240,offsetStr:"+04:00",countries:["MU"]},"Indian/Maldives":{name:"Indian/Maldives",utcOffset:300,offsetStr:"+05:00",countries:["MV"]},"America/Mexico_City":{name:"America/Mexico_City",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"America/Cancun":{name:"America/Cancun",utcOffset:-300,offsetStr:"-05:00",countries:["MX"]},"America/Merida":{name:"America/Merida",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"America/Monterrey":{name:"America/Monterrey",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"America/Matamoros":{name:"America/Matamoros",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"America/Mazatlan":{name:"America/Mazatlan",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},"America/Chihuahua":{name:"America/Chihuahua",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},"America/Ojinaga":{name:"America/Ojinaga",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},"America/Hermosillo":{name:"America/Hermosillo",utcOffset:-420,offsetStr:"-07:00",countries:["MX"]},"America/Tijuana":{name:"America/Tijuana",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},"America/Santa_Isabel":{name:"America/Santa_Isabel",utcOffset:-480,offsetStr:"-08:00",countries:["MX"]},"America/Bahia_Banderas":{name:"America/Bahia_Banderas",utcOffset:-360,offsetStr:"-06:00",countries:["MX"]},"Asia/Kuala_Lumpur":{name:"Asia/Kuala_Lumpur",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},"Asia/Kuching":{name:"Asia/Kuching",utcOffset:480,offsetStr:"+08:00",countries:["MY"]},"Africa/Maputo":{name:"Africa/Maputo",utcOffset:120,offsetStr:"+02:00",countries:["MZ","BI","BW","CD","MW","RW","ZM","ZW"]},"Africa/Windhoek":{name:"Africa/Windhoek",utcOffset:120,offsetStr:"+02:00",countries:["NA"]},"Pacific/Noumea":{name:"Pacific/Noumea",utcOffset:660,offsetStr:"+11:00",countries:["NC"]},"Pacific/Norfolk":{name:"Pacific/Norfolk",utcOffset:660,offsetStr:"+11:00",countries:["NF"]},"Africa/Lagos":{name:"Africa/Lagos",utcOffset:60,offsetStr:"+01:00",countries:["NG","AO","BJ","CD","CF","CG","CM","GA","GQ","NE"]},"America/Managua":{name:"America/Managua",utcOffset:-360,offsetStr:"-06:00",countries:["NI"]},"Europe/Amsterdam":{name:"Europe/Amsterdam",utcOffset:60,offsetStr:"+01:00",countries:["NL"]},"Europe/Oslo":{name:"Europe/Oslo",utcOffset:60,offsetStr:"+01:00",countries:["NO","SJ"]},"Asia/Kathmandu":{name:"Asia/Kathmandu",utcOffset:345,offsetStr:"+05:45",countries:["NP"]},"Pacific/Nauru":{name:"Pacific/Nauru",utcOffset:720,offsetStr:"+12:00",countries:["NR"]},"Pacific/Niue":{name:"Pacific/Niue",utcOffset:-660,offsetStr:"-11:00",countries:["NU"]},"Pacific/Auckland":{name:"Pacific/Auckland",utcOffset:780,offsetStr:"+13:00",countries:["NZ","AQ"]},"Pacific/Chatham":{name:"Pacific/Chatham",utcOffset:825,offsetStr:"+13:45",countries:["NZ"]},"America/Panama":{name:"America/Panama",utcOffset:-300,offsetStr:"-05:00",countries:["PA"]},"America/Lima":{name:"America/Lima",utcOffset:-300,offsetStr:"-05:00",countries:["PE"]},"Pacific/Tahiti":{name:"Pacific/Tahiti",utcOffset:-600,offsetStr:"-10:00",countries:["PF"]},"Pacific/Marquesas":{name:"Pacific/Marquesas",utcOffset:-570,offsetStr:"-09:30",countries:["PF"]},"Pacific/Gambier":{name:"Pacific/Gambier",utcOffset:-540,offsetStr:"-09:00",countries:["PF"]},"Pacific/Port_Moresby":{name:"Pacific/Port_Moresby",utcOffset:600,offsetStr:"+10:00",countries:["PG"]},"Pacific/Bougainville":{name:"Pacific/Bougainville",utcOffset:660,offsetStr:"+11:00",countries:["PG"]},"Asia/Manila":{name:"Asia/Manila",utcOffset:480,offsetStr:"+08:00",countries:["PH"]},"Asia/Karachi":{name:"Asia/Karachi",utcOffset:300,offsetStr:"+05:00",countries:["PK"]},"Europe/Warsaw":{name:"Europe/Warsaw",utcOffset:60,offsetStr:"+01:00",countries:["PL"]},"America/Miquelon":{name:"America/Miquelon",utcOffset:-180,offsetStr:"-03:00",countries:["PM"]},"Pacific/Pitcairn":{name:"Pacific/Pitcairn",utcOffset:-480,offsetStr:"-08:00",countries:["PN"]},"America/Puerto_Rico":{name:"America/Puerto_Rico",utcOffset:-240,offsetStr:"-04:00",countries:["PR"]},"Asia/Gaza":{name:"Asia/Gaza",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},"Asia/Hebron":{name:"Asia/Hebron",utcOffset:120,offsetStr:"+02:00",countries:["PS"]},"Europe/Lisbon":{name:"Europe/Lisbon",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},"Atlantic/Madeira":{name:"Atlantic/Madeira",utcOffset:0,offsetStr:"+00:00",countries:["PT"]},"Atlantic/Azores":{name:"Atlantic/Azores",utcOffset:-60,offsetStr:"-01:00",countries:["PT"]},"Pacific/Palau":{name:"Pacific/Palau",utcOffset:540,offsetStr:"+09:00",countries:["PW"]},"America/Asuncion":{name:"America/Asuncion",utcOffset:-180,offsetStr:"-03:00",countries:["PY"]},"Asia/Qatar":{name:"Asia/Qatar",utcOffset:180,offsetStr:"+03:00",countries:["QA","BH"]},"Indian/Reunion":{name:"Indian/Reunion",utcOffset:240,offsetStr:"+04:00",countries:["RE","TF"]},"Europe/Bucharest":{name:"Europe/Bucharest",utcOffset:120,offsetStr:"+02:00",countries:["RO"]},"Europe/Belgrade":{name:"Europe/Belgrade",utcOffset:60,offsetStr:"+01:00",countries:["RS","BA","HR","ME","MK","SI"]},"Europe/Kaliningrad":{name:"Europe/Kaliningrad",utcOffset:120,offsetStr:"+02:00",countries:["RU"]},"Europe/Moscow":{name:"Europe/Moscow",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},"Europe/Simferopol":{name:"Europe/Simferopol",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},"Europe/Volgograd":{name:"Europe/Volgograd",utcOffset:180,offsetStr:"+03:00",countries:["RU"]},"Europe/Samara":{name:"Europe/Samara",utcOffset:240,offsetStr:"+04:00",countries:["RU"]},"Asia/Yekaterinburg":{name:"Asia/Yekaterinburg",utcOffset:300,offsetStr:"+05:00",countries:["RU"]},"Asia/Omsk":{name:"Asia/Omsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},"Asia/Novosibirsk":{name:"Asia/Novosibirsk",utcOffset:360,offsetStr:"+06:00",countries:["RU"]},"Asia/Novokuznetsk":{name:"Asia/Novokuznetsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},"Asia/Krasnoyarsk":{name:"Asia/Krasnoyarsk",utcOffset:420,offsetStr:"+07:00",countries:["RU"]},"Asia/Irkutsk":{name:"Asia/Irkutsk",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},"Asia/Chita":{name:"Asia/Chita",utcOffset:480,offsetStr:"+08:00",countries:["RU"]},"Asia/Yakutsk":{name:"Asia/Yakutsk",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},"Asia/Khandyga":{name:"Asia/Khandyga",utcOffset:540,offsetStr:"+09:00",countries:["RU"]},"Asia/Vladivostok":{name:"Asia/Vladivostok",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},"Asia/Sakhalin":{name:"Asia/Sakhalin",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},"Asia/Ust-Nera":{name:"Asia/Ust-Nera",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},"Asia/Magadan":{name:"Asia/Magadan",utcOffset:600,offsetStr:"+10:00",countries:["RU"]},"Asia/Srednekolymsk":{name:"Asia/Srednekolymsk",utcOffset:660,offsetStr:"+11:00",countries:["RU"]},"Asia/Kamchatka":{name:"Asia/Kamchatka",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},"Asia/Anadyr":{name:"Asia/Anadyr",utcOffset:720,offsetStr:"+12:00",countries:["RU"]},"Asia/Riyadh":{name:"Asia/Riyadh",utcOffset:180,offsetStr:"+03:00",countries:["SA","KW","YE"]},"Pacific/Guadalcanal":{name:"Pacific/Guadalcanal",utcOffset:660,offsetStr:"+11:00",countries:["SB"]},"Indian/Mahe":{name:"Indian/Mahe",utcOffset:240,offsetStr:"+04:00",countries:["SC"]},"Africa/Khartoum":{name:"Africa/Khartoum",utcOffset:180,offsetStr:"+03:00",countries:["SD","SS"]},"Europe/Stockholm":{name:"Europe/Stockholm",utcOffset:60,offsetStr:"+01:00",countries:["SE"]},"Asia/Singapore":{name:"Asia/Singapore",utcOffset:480,offsetStr:"+08:00",countries:["SG"]},"America/Paramaribo":{name:"America/Paramaribo",utcOffset:-180,offsetStr:"-03:00",countries:["SR"]},"America/El_Salvador":{name:"America/El_Salvador",utcOffset:-360,offsetStr:"-06:00",countries:["SV"]},"Asia/Damascus":{name:"Asia/Damascus",utcOffset:120,offsetStr:"+02:00",countries:["SY"]},"America/Grand_Turk":{name:"America/Grand_Turk",utcOffset:-240,offsetStr:"-04:00",countries:["TC"]},"Africa/Ndjamena":{name:"Africa/Ndjamena",utcOffset:60,offsetStr:"+01:00",countries:["TD"]},"Indian/Kerguelen":{name:"Indian/Kerguelen",utcOffset:300,offsetStr:"+05:00",countries:["TF"]},"Asia/Bangkok":{name:"Asia/Bangkok",utcOffset:420,offsetStr:"+07:00",countries:["TH","KH","LA","VN"]},"Asia/Dushanbe":{name:"Asia/Dushanbe",utcOffset:300,offsetStr:"+05:00",countries:["TJ"]},"Pacific/Fakaofo":{name:"Pacific/Fakaofo",utcOffset:780,offsetStr:"+13:00",countries:["TK"]},"Asia/Dili":{name:"Asia/Dili",utcOffset:540,offsetStr:"+09:00",countries:["TL"]},"Asia/Ashgabat":{name:"Asia/Ashgabat",utcOffset:300,offsetStr:"+05:00",countries:["TM"]},"Africa/Tunis":{name:"Africa/Tunis",utcOffset:60,offsetStr:"+01:00",countries:["TN"]},"Pacific/Tongatapu":{name:"Pacific/Tongatapu",utcOffset:780,offsetStr:"+13:00",countries:["TO"]},"Europe/Istanbul":{name:"Europe/Istanbul",utcOffset:120,offsetStr:"+02:00",countries:["TR"]},"America/Port_of_Spain":{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"]},"Pacific/Funafuti":{name:"Pacific/Funafuti",utcOffset:720,offsetStr:"+12:00",countries:["TV"]},"Asia/Taipei":{name:"Asia/Taipei",utcOffset:480,offsetStr:"+08:00",countries:["TW"]},"Europe/Kiev":{name:"Europe/Kiev",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},"Europe/Uzhgorod":{name:"Europe/Uzhgorod",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},"Europe/Zaporozhye":{name:"Europe/Zaporozhye",utcOffset:120,offsetStr:"+02:00",countries:["UA"]},"Pacific/Wake":{name:"Pacific/Wake",utcOffset:720,offsetStr:"+12:00",countries:["UM"]},"America/New_York":{name:"America/New_York",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Detroit":{name:"America/Detroit",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Kentucky/Louisville":{name:"America/Kentucky/Louisville",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Kentucky/Monticello":{name:"America/Kentucky/Monticello",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Indianapolis":{name:"America/Indiana/Indianapolis",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Vincennes":{name:"America/Indiana/Vincennes",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Winamac":{name:"America/Indiana/Winamac",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Marengo":{name:"America/Indiana/Marengo",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Petersburg":{name:"America/Indiana/Petersburg",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Indiana/Vevay":{name:"America/Indiana/Vevay",utcOffset:-300,offsetStr:"-05:00",countries:["US"]},"America/Chicago":{name:"America/Chicago",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/Indiana/Tell_City":{name:"America/Indiana/Tell_City",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/Indiana/Knox":{name:"America/Indiana/Knox",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/Menominee":{name:"America/Menominee",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/North_Dakota/Center":{name:"America/North_Dakota/Center",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/North_Dakota/New_Salem":{name:"America/North_Dakota/New_Salem",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/North_Dakota/Beulah":{name:"America/North_Dakota/Beulah",utcOffset:-360,offsetStr:"-06:00",countries:["US"]},"America/Denver":{name:"America/Denver",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},"America/Boise":{name:"America/Boise",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},"America/Phoenix":{name:"America/Phoenix",utcOffset:-420,offsetStr:"-07:00",countries:["US"]},"America/Los_Angeles":{name:"America/Los_Angeles",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},"America/Metlakatla":{name:"America/Metlakatla",utcOffset:-480,offsetStr:"-08:00",countries:["US"]},"America/Anchorage":{name:"America/Anchorage",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Juneau":{name:"America/Juneau",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Sitka":{name:"America/Sitka",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Yakutat":{name:"America/Yakutat",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Nome":{name:"America/Nome",utcOffset:-540,offsetStr:"-09:00",countries:["US"]},"America/Adak":{name:"America/Adak",utcOffset:-600,offsetStr:"-10:00",countries:["US"]},"Pacific/Honolulu":{name:"Pacific/Honolulu",utcOffset:-600,offsetStr:"-10:00",countries:["US","UM"]},"America/Montevideo":{name:"America/Montevideo",utcOffset:-180,offsetStr:"-03:00",countries:["UY"]},"Asia/Samarkand":{name:"Asia/Samarkand",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},"Asia/Tashkent":{name:"Asia/Tashkent",utcOffset:300,offsetStr:"+05:00",countries:["UZ"]},"America/Caracas":{name:"America/Caracas",utcOffset:-270,offsetStr:"-04:30",countries:["VE"]},"Asia/Ho_Chi_Minh":{name:"Asia/Ho_Chi_Minh",utcOffset:420,offsetStr:"+07:00",countries:["VN"]},"Pacific/Efate":{name:"Pacific/Efate",utcOffset:660,offsetStr:"+11:00",countries:["VU"]},"Pacific/Wallis":{name:"Pacific/Wallis",utcOffset:720,offsetStr:"+12:00",countries:["WF"]},"Pacific/Apia":{name:"Pacific/Apia",utcOffset:840,offsetStr:"+14:00",countries:["WS"]},"Africa/Johannesburg":{name:"Africa/Johannesburg",utcOffset:120,offsetStr:"+02:00",countries:["ZA","LS","SZ"]}}}],templateUrl:"app/core/directives/ms-timezone/ms-timezone.html"}}angular.module("app.core").directive("msTimezone",e)}(),function(){"use strict";function e(e,t){function n(){a()&&(i.flipped=!i.flipped,t.toggleClass("flipped",i.flipped))}function a(){return angular.isDefined(e.flippable)&&!0===e.flippable}var i=this;i.flipped=!1,i.flip=n}function t(){return{restrict:"E",scope:{flippable:"=?"},controller:"MsWidgetController",transclude:!0,compile:function(e){return e.addClass("ms-widget"),function(e,t,n,a,i){i(function(e){t.empty(),t.append(e)})}}}}function n(){return{restrict:"E",require:"^msWidget",transclude:!0,compile:function(e){return e.addClass("ms-widget-front"),function(e,t,n,a,i){i(function(e){t.empty(),t.append(e)}),e.flipWidget=a.flip}}}}function a(){return{restrict:"E",require:"^msWidget",transclude:!0,compile:function(e){return e.addClass("ms-widget-back"),function(e,t,n,a,i){i(function(e){t.empty(),t.append(e)}),e.flipWidget=a.flip}}}}e.$inject=["$scope","$element"],angular.module("app.core").controller("MsWidgetController",e).directive("msWidget",t).directive("msWidgetFront",n).directive("msWidgetBack",a)}(),function(){"use strict";function e(){return function(e){var t=Date.now()-new Date(e);return t<36e5?moment(e).fromNow():t<864e5?moment(e).format("HH:mm"):t<6048e5?moment(e).format("dddd"):moment(e).calendar()}}angular.module("app.core").filter("altDate",e)}(),function(){"use strict";function e(e){return function(t){return e.trustAsHtml(t)}}function t(){return function(e){return String(e).replace(/<[^>]+>/gm,"")}}function n(){return function(e){return e?e.replace(/ /g,""):""}}function a(){return function(e){if(e)return"directive"===e.type?e.name.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()}):e.label||e.name}}e.$inject=["$sce"],angular.module("app.core").filter("toTrusted",e).filter("htmlToPlaintext",t).filter("nospace",n).filter("humanizeDoc",a)}(),function(){"use strict";function e(){return function(e,t){if(0===e.length||!t)return e;if(0===t.length)return[];for(var n=[],a=0;a<e.length;a++){for(var i=e[a],o=!1,s=0;s<t.length;s++){var r=t[s];if(i.id===r){o=!0;break}}o&&n.push(i)}return n}}angular.module("app.core").filter("filterByIds",e)}(),function(){"use strict";function e(){return function(e,t,n){if(0===e.length||!n||0===n.length)return e;for(var a=[],i=0;i<e.length;i++){for(var o=e[i],s=!1,r=0;r<n.length;r++){var l=n[r];if(o[t].indexOf(l)>-1){s=!0;break}}s&&a.push(o)}return a}}angular.module("app.core").filter("filterByPropIds",e)}(),function(){"use strict";function e(){return function(e,t){if(0===e.length||0===t.length)return e;var n=[];return e.forEach(function(e){t.every(function(t){var n=!1;return e.tags.forEach(function(e){e.name!==t.name||(n=!0)}),n})&&n.push(e)}),n}}function t(){return function(e,t){if(0!==e.length&&0!==t.length){if(e.length<t.length)return[];var n=[];return t.every(function(t){var n=!1;return e.forEach(function(e){e.name!==t.name||(n=!0)}),n})&&n.push(e),n}}}angular.module("app.core").filter("filterByTags",e).filter("filterSingleByTags",t)}(),function(){"use strict";function e(e,t,n){function a(n,a){var o=n.split("@"),s=o[0],r=o[1],l=a||{};if(!s||!r)return t.error("apiResolver.resolve requires correct action parameter (ResourceName@methodName)"),!1;var d=e.defer(),c=i(s);return c?c[r](l,function(e){d.resolve(e)},function(e){d.reject(e)}):(t.error('Resource "'+s+'" is not defined in the api service!'),d.reject('Resource "'+s+'" is not defined in the api service!')),d.promise}function i(e){for(var a=e.split("."),i=n,o=0;o<a.length;o++){if(angular.isUndefined(i[a[o]])){t.error('Resource part "'+a[o]+'" is not defined!'),i=!1;break}i=i[a[o]]}return i||!1}return{resolve:a}}e.$inject=["$q","$log","api"],angular.module("app.core").factory("apiResolver",e)}(),function(){"use strict";function e(){function e(e){s=e}function t(){return s}function n(){return r}function a(e,t){angular.isString(e)?angular.isArray(t)?r[e]={url:s+(t[0]||""),paramDefaults:t[1]||[],actions:t[2]||[],options:t[3]||{}}:o.error('"resource" must be an array and it must follow $resource definition'):o.error('"path" must be a string (eg. `dashboard.project`)')}var i=this,o=angular.injector(["ng"]).get("$log"),s="",r=[];i.setBaseUrl=e,i.getBaseUrl=t,i.getApiObject=n,i.register=a,this.$get=["$log","$q","$resource","$rootScope",function(n,i,o,s){function l(e,t){s.$broadcast("msApi::resolveStart");var a=e.split("@"),l=a[0],d=a[1],c=t||{};if(!l||!d)return n.error("msApi.resolve requires correct action parameter (resourceName@methodName)"),!1;var m=i.defer(),u=r[l];return u?o(u.url,u.paramDefaults,u.actions,u.options)[d](c,function(e){m.resolve(e),s.$broadcast("msApi::resolveSuccess")},function(e){m.reject(e),s.$broadcast("msApi::resolveError")}):(n.error('Resource "'+l+'" is not defined in the api service!'),m.reject('Resource "'+l+'" is not defined in the api service!')),m.promise}function d(e,t,a,l){s.$broadcast("msApi::requestStart");var d=e.split("@"),c=d[0],m=d[1],u=t||{};if(!c||!m)return n.error("msApi.resolve requires correct action parameter (resourceName@methodName)"),!1;var p=i.defer(),g=r[c];return g?o(g.url,g.paramDefaults,g.actions,g.options)[m](u,function(e){s.$broadcast("msApi::requestSuccess"),p.resolve(e),angular.isDefined(a)&&angular.isFunction(a)&&a(e)},function(e){s.$broadcast("msApi::requestError"),p.reject(e),angular.isDefined(l)&&angular.isFunction(l)&&l(e)}):(n.error('Resource "'+c+'" is not defined in the api service!'),p.reject('Resource "'+c+'" is not defined in the api service!')),p.promise}return{setBaseUrl:e,getBaseUrl:t,register:a,resolve:l,request:d}}]}angular.module("app.core").provider("msApi",e)}(),function(){"use strict";function e(e){function t(e,t){return t.indexOf(e)>-1}function n(){function t(e){for(var t=0;t<e.length;t++){var n=e[t].string,a=e[t].prop;if(o=e[t].versionSearch||e[t].identity,n){if(-1!==n.indexOf(e[t].subString))return e[t].identity}else if(a)return e[t].identity}}function n(e){var t=e.indexOf(o);if(-1!==t)return parseInt(e.substring(t+o.length+1))}if(r)return r;var a=[{string:e.navigator.userAgent,subString:"Edge",versionSearch:"Edge",identity:"Edge"},{string:e.navigator.userAgent,subString:"Chrome",identity:"Chrome"},{string:e.navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:e.navigator.vendor,subString:"Apple",versionSearch:"Version",identity:"Safari"},{prop:e.opera,identity:"Opera"},{string:e.navigator.vendor,subString:"iCab",identity:"iCab"},{string:e.navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:e.navigator.userAgent,subString:"Firefox",identity:"Firefox"},{string:e.navigator.vendor,subString:"Camino",identity:"Camino"},{string:e.navigator.userAgent,subString:"Netscape",identity:"Netscape"},{string:e.navigator.userAgent,subString:"MSIE",identity:"Explorer",versionSearch:"MSIE"},{string:e.navigator.userAgent,subString:"Trident/7",identity:"Explorer",versionSearch:"rv"},{string:e.navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:e.navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla"}],i=[{string:e.navigator.platform,subString:"Win",identity:"Windows"},{string:e.navigator.platform,subString:"Mac",identity:"Mac"},{string:e.navigator.platform,subString:"Linux",identity:"Linux"},{string:e.navigator.platform,subString:"iPhone",identity:"iPhone"},{string:e.navigator.platform,subString:"iPod",identity:"iPod"},{string:e.navigator.platform,subString:"iPad",identity:"iPad"},{string:e.navigator.platform,subString:"Android",identity:"Android"}],o="",s=t(a)||"unknown-browser",l=n(e.navigator.userAgent)||n(e.navigator.appVersion)||"unknown-version",d=t(i)||"unknown-os";return s=s.toLowerCase(),l=s+"-"+l,d=d.toLowerCase(),r={browser:s,version:l,os:d}}function a(){var e=function(){return(65536*(1+Math.random())||0).toString(16).substring(1)};return e()+e()+e()+e()+e()+e()}function i(){return s.mobile()}function o(e,t){-1===t.indexOf(e)?t.push(e):t.splice(t.indexOf(e),1)}var s=new MobileDetect(e.navigator.userAgent),r=null;return{exists:t,detectBrowser:n,guidGenerator:a,isMobile:i,toggleInArray:o}}e.$inject=["$window"],angular.module("app.core").factory("msUtils",e)}(),function(){"use strict";function e(e,t){function n(e){t.setActiveTheme(e)}function a(){return t.themes.active}function i(){angular.element("body").toggleClass("boxed","boxed"===s.layoutMode)}function o(){e.put("motion.layoutStyle",s.layoutStyle),location.reload()}var s=this;s.themes=t.themes,s.layoutModes=[{label:"Boxed",value:"boxed"},{label:"Wide",value:"wide"}],s.layoutStyles=[{label:"Vertical Navigation",value:"verticalNavigation",figure:"/assets/images/theme-options/vertical-nav.jpg"},{label:"Vertical Navigation with Fullwidth Toolbar",value:"verticalNavigationFullwidthToolbar",figure:"/assets/images/theme-options/vertical-nav-with-full-toolbar.jpg"},{label:"Vertical Navigation with Fullwidth Toolbar 2",value:"verticalNavigationFullwidthToolbar2",figure:"/assets/images/theme-options/vertical-nav-with-full-toolbar-2.jpg"},{label:"Horizontal Navigation",value:"horizontalNavigation",figure:"/assets/images/theme-options/horizontal-nav.jpg"},{label:"Content with Toolbar",value:"contentWithToolbar",figure:"/assets/images/theme-options/content-with-toolbar.jpg"},{label:"Content Only",value:"contentOnly",figure:"/assets/images/theme-options/content-only.jpg"}],s.layoutMode="wide",s.layoutStyle=e.get("motion.layoutStyle")||"verticalNavigation",s.setActiveTheme=n,s.getActiveTheme=a,s.updateLayoutMode=i,s.updateLayoutStyle=o}function t(e){return{restrict:"E",scope:{},controller:"MsThemeOptionsController as vm",templateUrl:"app/core/theme-options/theme-options.html",compile:function(t){return t.addClass("ms-theme-options"),function(t){function n(){e("motion-theme-options").toggle()}t.toggleOptionsSidenav=n}}}}e.$inject=["$cookies","motionTheming"],t.$inject=["$mdSidenav"],angular.module("app.core").controller("MsThemeOptionsController",e).directive("msThemeOptions",t)}(),function(){"use strict";function e(e,t,n){function a(){var e=angular.copy(n.getRegisteredThemes()),t=angular.copy(n.getRegisteredPalettes());angular.forEach(e,function(e){d[e.name]={},angular.forEach(e.colors,function(n,a){d[e.name][a]={name:n.name,levels:{default:{color:s(t[n.name][n.hues.default].value),contrast1:s(t[n.name][n.hues.default].contrast,1),contrast2:s(t[n.name][n.hues.default].contrast,2),contrast3:s(t[n.name][n.hues.default].contrast,3),contrast4:s(t[n.name][n.hues.default].contrast,4)},hue1:{color:s(t[n.name][n.hues["hue-1"]].value),contrast1:s(t[n.name][n.hues["hue-1"]].contrast,1),contrast2:s(t[n.name][n.hues["hue-1"]].contrast,2),contrast3:s(t[n.name][n.hues["hue-1"]].contrast,3),contrast4:s(t[n.name][n.hues["hue-1"]].contrast,4)},hue2:{color:s(t[n.name][n.hues["hue-2"]].value),contrast1:s(t[n.name][n.hues["hue-2"]].contrast,1),contrast2:s(t[n.name][n.hues["hue-2"]].contrast,2),contrast3:s(t[n.name][n.hues["hue-2"]].contrast,3),contrast4:s(t[n.name][n.hues["hue-2"]].contrast,4)},hue3:{color:s(t[n.name][n.hues["hue-3"]].value),contrast1:s(t[n.name][n.hues["hue-3"]].contrast,1),contrast2:s(t[n.name][n.hues["hue-3"]].contrast,2),contrast3:s(t[n.name][n.hues["hue-3"]].contrast,3),contrast4:s(t[n.name][n.hues["hue-3"]].contrast,4)}}}})}),i(d);var a={};angular.forEach(d,function(e,t){(a={})["@themeName"]=t,angular.forEach(e,function(e,t){angular.forEach(e.levels,function(e,n){angular.forEach(e,function(e,i){a["@"+t+l(n)+l(i)]=e})})}),o(a)})}function i(t){var a=angular.copy(t);angular.forEach(a,function(e){angular.forEach(e,function(t,n){e[n]=t.levels,e[n].color=t.levels.default.color,e[n].contrast1=t.levels.default.contrast1,e[n].contrast2=t.levels.default.contrast2,e[n].contrast3=t.levels.default.contrast3,e[n].contrast4=t.levels.default.contrast4,delete e[n].default})}),n.setThemesList(a);var i=e.get("motion.selectedTheme");i?n.setActiveTheme(i):n.setActiveTheme("default")}function o(e){var t=new RegExp(Object.keys(e).join("|"),"gi"),n='/* Content hack because they wont fix */\n/* https://github.com/angular/material/pull/8067 */\n[md-theme="@themeName"] md-content.md-hue-1,\nmd-content.md-@themeName-theme.md-hue-1 {\n    color: @backgroundHue1Contrast1;\n    background-color: @backgroundHue1Color;\n}\n\n[md-theme="@themeName"] md-content.md-hue-2,\nmd-content.md-@themeName-theme.md-hue-2 {\n    color: @backgroundHue2Contrast1;\n    background-color: @backgroundHue2Color;\n}\n\n[md-theme="@themeName"] md-content.md-hue-3,\n md-content.md-@themeName-theme.md-hue-3 {\n    color: @backgroundHue3Contrast1;\n    background-color: @backgroundHue3Color;\n}\n\n/* Text Colors */\n[md-theme="@themeName"] a {\n    color: @accentDefaultColor;\n}\n\n[md-theme="@themeName"] .secondary-text,\n[md-theme="@themeName"] .icon {\n    color: @backgroundDefaultContrast2;\n}\n\n[md-theme="@themeName"] .hint-text,\n[md-theme="@themeName"] .disabled-text {\n    color: @backgroundDefaultContrast3;\n}\n\n[md-theme="@themeName"] .fade-text,\n[md-theme="@themeName"] .divider {\n    color: @backgroundDefaultContrast4;\n}\n\n/* Primary */\n[md-theme="@themeName"] .md-primary-bg {\n    background-color: @primaryDefaultColor;\n    color: @primaryDefaultContrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg .secondary-text,\n[md-theme="@themeName"] .md-primary-bg .icon {\n    color: @primaryDefaultContrast2;\n}\n\n[md-theme="@themeName"] .md-primary-bg .hint-text,\n[md-theme="@themeName"] .md-primary-bg .disabled-text {\n    color: @primaryDefaultContrast3;\n}\n\n[md-theme="@themeName"] .md-primary-bg .fade-text,\n[md-theme="@themeName"] .md-primary-bg .divider {\n    color: @primaryDefaultContrast4;\n}\n\n/* Primary, Hue-1 */\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 {\n    background-color: @primaryHue1Color;\n    color: @primaryHue1Contrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .secondary-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .icon {\n    color: @primaryHue1Contrast2;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .hint-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .disabled-text {\n    color: @primaryHue1Contrast3;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .fade-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-1 .divider {\n    color: @primaryHue1Contrast4;\n}\n\n/* Primary, Hue-2 */\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 {\n    background-color: @primaryHue2Color;\n    color: @primaryHue2Contrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .secondary-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .icon {\n    color: @primaryHue2Contrast2;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .hint-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .disabled-text {\n    color: @primaryHue2Contrast3;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .fade-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-2 .divider {\n    color: @primaryHue2Contrast4;\n}\n\n/* Primary, Hue-3 */\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 {\n    background-color: @primaryHue3Color;\n    color: @primaryHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .secondary-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .icon {\n    color: @primaryHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .hint-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .disabled-text {\n    color: @primaryHue3Contrast3;\n}\n\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .fade-text,\n[md-theme="@themeName"] .md-primary-bg.md-hue-3 .divider {\n    color: @primaryHue3Contrast4;\n}\n\n/* Primary foreground */\n[md-theme="@themeName"] .md-primary-fg {\n    color: @primaryDefaultColor !important;\n}\n\n/* Primary foreground, Hue-1 */\n[md-theme="@themeName"] .md-primary-fg.md-hue-1 {\n    color: @primaryHue1Color !important;\n}\n\n/* Primary foreground, Hue-2 */\n[md-theme="@themeName"] .md-primary-fg.md-hue-2 {\n    color: @primaryHue2Color !important;\n}\n\n/* Primary foreground, Hue-3 */\n[md-theme="@themeName"] .md-primary-fg.md-hue-3 {\n    color: @primaryHue3Color !important;\n}\n\n/* Accent */\n[md-theme="@themeName"] .md-accent-bg {\n    background-color: @accentDefaultColor;\n    color: @accentDefaultContrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg .secondary-text,\n[md-theme="@themeName"] .md-accent-bg .icon {\n    color: @accentDefaultContrast2;\n}\n\n[md-theme="@themeName"] .md-accent-bg .hint-text,\n[md-theme="@themeName"] .md-accent-bg .disabled-text {\n    color: @accentDefaultContrast3;\n}\n\n[md-theme="@themeName"] .md-accent-bg .fade-text,\n[md-theme="@themeName"] .md-accent-bg .divider {\n    color: @accentDefaultContrast4;\n}\n\n/* Accent, Hue-1 */\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 {\n    background-color: @accentHue1Color;\n    color: @accentHue1Contrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .secondary-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .icon {\n    color: @accentHue1Contrast2;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .hint-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .disabled-text {\n    color: @accentHue1Contrast3;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .fade-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-1 .divider {\n    color: @accentHue1Contrast4;\n}\n\n/* Accent, Hue-2 */\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 {\n    background-color: @accentHue2Color;\n    color: @accentHue2Contrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .secondary-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .icon {\n    color: @accentHue2Contrast2;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .hint-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .disabled-text {\n    color: @accentHue2Contrast3;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .fade-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-2 .divider {\n    color: @accentHue2Contrast4;\n}\n\n/* Accent, Hue-3 */\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 {\n    background-color: @accentHue3Color;\n    color: @accentHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .secondary-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .icon {\n    color: @accentHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .hint-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .disabled-text {\n    color: @accentHue3Contrast3;\n}\n\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .fade-text,\n[md-theme="@themeName"] .md-accent-bg.md-hue-3 .divider {\n    color: @accentHue3Contrast4;\n}\n\n/* Accent foreground */\n[md-theme="@themeName"] .md-accent-fg {\n    color: @accentDefaultColor !important;\n}\n\n/* Accent foreground, Hue-1 */\n[md-theme="@themeName"] .md-accent-fg.md-hue-1 {\n    color: @accentHue1Color !important;\n}\n\n/* Accent foreground, Hue-2 */\n[md-theme="@themeName"] .md-accent-fg.md-hue-2 {\n    color: @accentHue2Color !important;\n}\n\n/* Accent foreground, Hue-3 */\n[md-theme="@themeName"] .md-accent-fg.md-hue-3 {\n    color: @accentHue3Color !important;\n}\n\n/* Warn */\n[md-theme="@themeName"] .md-warn-bg {\n    background-color: @warnDefaultColor;\n    color: @warnDefaultContrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg .secondary-text,\n[md-theme="@themeName"] .md-warn-bg .icon {\n    color: @warnDefaultContrast2;\n}\n\n[md-theme="@themeName"] .md-warn-bg .hint-text,\n[md-theme="@themeName"] .md-warn-bg .disabled-text {\n    color: @warnDefaultContrast3;\n}\n\n[md-theme="@themeName"] .md-warn-bg .fade-text,\n[md-theme="@themeName"] .md-warn-bg .divider {\n    color: @warnDefaultContrast4;\n}\n\n/* Warn, Hue-1 */\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 {\n    background-color: @warnHue1Color;\n    color: @warnHue1Contrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .secondary-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .icon {\n    color: @warnHue1Contrast2;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .hint-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .disabled-text {\n    color: @warnHue1Contrast3;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .fade-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-1 .divider {\n    color: @warnHue1Contrast4;\n}\n\n/* Warn, Hue-2 */\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 {\n    background-color: @warnHue2Color;\n    color: @warnHue2Contrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .secondary-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .icon {\n    color: @warnHue2Contrast2;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .hint-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .disabled-text {\n    color: @warnHue2Contrast3;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .fade-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-2 .divider {\n    color: @warnHue2Contrast4;\n}\n\n/* Warn, Hue-3 */\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 {\n    background-color: @warnHue3Color;\n    color: @warnHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .secondary-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .icon {\n    color: @warnHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .hint-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .disabled-text {\n    color: @warnHue3Contrast3;\n}\n\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .fade-text,\n[md-theme="@themeName"] .md-warn-bg.md-hue-3 .divider {\n    color: @warnHue3Contrast4;\n}\n\n/* Warn foreground */\n[md-theme="@themeName"] .md-warn-fg {\n    color: @warnDefaultColor !important;\n}\n\n/* Warn foreground, Hue-1 */\n[md-theme="@themeName"] .md-warn-fg.md-hue-1 {\n    color: @warnHue1Color !important;\n}\n\n/* Warn foreground, Hue-2 */\n[md-theme="@themeName"] .md-warn-fg.md-hue-2 {\n    color: @warnHue2Color !important;\n}\n\n/* Warn foreground, Hue-3 */\n[md-theme="@themeName"] .md-warn-fg.md-hue-3 {\n    color: @warnHue3Color !important;\n}\n\n/* Background */\n[md-theme="@themeName"] .md-background-bg {\n    background-color: @backgroundDefaultColor;\n    color: @backgroundDefaultContrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg .secondary-text,\n[md-theme="@themeName"] .md-background-bg .icon {\n    color: @backgroundDefaultContrast2;\n}\n\n[md-theme="@themeName"] .md-background-bg .hint-text,\n[md-theme="@themeName"] .md-background-bg .disabled-text {\n    color: @backgroundDefaultContrast3;\n}\n\n[md-theme="@themeName"] .md-background-bg .fade-text,\n[md-theme="@themeName"] .md-background-bg .divider {\n    color: @backgroundDefaultContrast4;\n}\n\n/* Background, Hue-1 */\n[md-theme="@themeName"] .md-background-bg.md-hue-1 {\n    background-color: @backgroundHue1Color;\n    color: @backgroundHue1Contrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .secondary-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .icon {\n    color: @backgroundHue1Contrast2;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .hint-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .disabled-text {\n    color: @backgroundHue1Contrast3;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .fade-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-1 .divider {\n    color: @backgroundHue1Contrast4;\n}\n\n/* Background, Hue-2 */\n[md-theme="@themeName"] .md-background-bg.md-hue-2 {\n    background-color: @backgroundHue2Color;\n    color: @backgroundHue2Contrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .secondary-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .icon {\n    color: @backgroundHue2Contrast2;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .hint-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .disabled-text {\n    color: @backgroundHue2Contrast3;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .fade-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-2 .divider {\n    color: @backgroundHue2Contrast4;\n}\n\n/* Background, Hue-3 */\n[md-theme="@themeName"] .md-background-bg.md-hue-3 {\n    background-color: @backgroundHue3Color;\n    color: @backgroundHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .secondary-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .icon {\n    color: @backgroundHue3Contrast1;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .hint-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .disabled-text {\n    color: @backgroundHue3Contrast3;\n}\n\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .fade-text,\n[md-theme="@themeName"] .md-background-bg.md-hue-3 .divider {\n    color: @backgroundHue3Contrast4;\n}\n\n/* Background foreground */\n[md-theme="@themeName"] .md-background-fg {\n    color: @backgroundDefaultColor !important;\n}\n\n/* Background foreground, Hue-1 */\n[md-theme="@themeName"] .md-background-fg.md-hue-1 {\n    color: @backgroundHue1Color !important;\n}\n\n/* Background foreground, Hue-2 */\n[md-theme="@themeName"] .md-background-fg.md-hue-2 {\n    color: @backgroundHue2Color !important;\n}\n\n/* Background foreground, Hue-3 */\n[md-theme="@themeName"] .md-background-fg.md-hue-3 {\n    color: @backgroundHue3Color !important;\n}'.replace(t,function(t){return e[t]}),a=angular.element("head"),i=angular.element('<style type="text/css"></style>');i.html(n),a.append(i)}function s(e,n){var a=n||!1;return 4===e.length&&255===e[0]&&255===e[1]&&255===e[2]&&e.splice(3,4),a&&(e=r(e,a)),3===e.length?"rgb("+e.join(",")+")":4===e.length?"rgba("+e.join(",")+")":void t.error("Invalid number of arguments supplied in the color array: "+e.length+"\nThe array must have 3 or 4 colors.")}function r(e,t){var n={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"}};return 255===e[0]&&255===e[1]&&255===e[2]?e[3]=n.white[t]:0===e[0]&&0===e[1]&&0===e[2]&&(e[3]=n.black[t]),e}function l(e){return e.charAt(0).toUpperCase()+e.slice(1)}var d={};return{generate:a,rgba:s}}e.$inject=["$cookies","$log","motionTheming"],angular.module("app.core").factory("motionGenerator",e)}(),function(){"use strict";var e=[{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"}}];angular.module("app.core").constant("motionPalettes",e)}(),function(){"use strict";var e={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"}}}};angular.module("app.core").constant("motionThemes",e)}(),function(){"use strict";function e(e,t,n){var a;angular.injector(["ngCookies"]).invoke(["$cookies",function(e){a=e}]);var i=a.getObject("motion.customTheme");i&&(n.custom=i),e.alwaysWatchTheme(!0),angular.forEach(t,function(t){e.definePalette(t.name,t.options)}),angular.forEach(n,function(t,n){e.theme(n).primaryPalette(t.primary.name,t.primary.hues).accentPalette(t.accent.name,t.accent.hues).warnPalette(t.warn.name,t.warn.hues).backgroundPalette(t.background.name,t.background.hues)})}e.$inject=["$mdThemingProvider","motionPalettes","motionThemes"],angular.module("app.core").config(e)}(),function(){"use strict";function e(e,t,n){function a(){return n.PALETTES}function i(){return n.THEMES}function o(n){if(angular.isUndefined(r.themes.list[n]))return angular.isUndefined(r.themes.list.default)?void t.error('You must have at least one theme named "default"'):(t.warn('The theme "'+n+'" does not exist! Falling back to the "default" theme.'),r.themes.active.name="default",r.themes.active.theme=r.themes.list.default,void e.put("motion.selectedTheme",r.themes.active.name));r.themes.active.name=n,r.themes.active.theme=r.themes.list[n],e.put("motion.selectedTheme",n)}function s(e){r.themes.list=e}var r={getRegisteredPalettes:a,getRegisteredThemes:i,setActiveTheme:o,setThemesList:s,themes:{list:{},active:{name:"",theme:{}}}};return r}e.$inject=["$cookies","$log","$mdTheming"],angular.module("app.core").service("motionTheming",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){for(var i=[],o=a.getFlatNavigation(),s=n.defer(),r=0;r<o.length;r+=1)o[r].uisref&&i.push(o[r]);return e&&(i=i.filter(function(t){if(angular.lowercase(t.title).search(angular.lowercase(e))>-1)return!0})),t(function(){s.resolve(i)},1e3),s.promise}function o(t){t.uisref&&(t.stateParams?e.go(t.state,t.stateParams):e.go(t.state))}var s=this;s.search=i,s.searchResultClick=o}e.$inject=["$state","$timeout","$q","msNavigationService"],angular.module("app.errors.error-404").controller("Error404Controller",e)}(),function(){"use strict";function e(e,t){function n(){t.post("/api/jira",a.error).then(function(e){a.send=!0,e.data&&(a.code=e.data.id)},function(e){a.send=!1})}var a=this;a.code="",a.send=!1,a.error=e.params,a.sendReport=n}e.$inject=["$state","$http"],angular.module("app.errors.error-500").controller("Error500Controller",e)}(),function(){"use strict";function e(e){var t={};return t.baseUrl="api/",t.auth=e(t.baseUrl+"auth/local",{},{local:{method:"post",url:t.baseUrl+"auth/local"},google:{method:"post",url:t.baseUrl+"auth/google"}}),t.jira=e(t.baseUrl+"jira"),t.rpc=e(t.baseUrl+"rpc",{},{getVoiceQueues:{method:"get",url:t.baseUrl+"rpc/voice/queues"},getVoiceQueuesChannels:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels"},getVoiceQueuesChannel:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid"},getVoiceQueuesChannelHangup:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid/hangup"},getVoiceQueuesChannelRedirect:{method:"get",url:t.baseUrl+"rpc/voice/queues/channels/:uniqueid/redirect/:exten"},getOutbound:{method:"get",url:t.baseUrl+"rpc/outbound"},getOutboundChannels:{method:"get",url:t.baseUrl+"rpc/outbound/channels"},getAgents:{method:"get",url:t.baseUrl+"rpc/agents"},getTelephones:{method:"get",url:t.baseUrl+"rpc/telephones"},getTrunks:{method:"get",url:t.baseUrl+"rpc/trunks"},getCampaigns:{method:"get",url:t.baseUrl+"rpc/campaigns"}}),t.version=e(t.baseUrl+"version",{},{fetch:{method:"get",url:t.baseUrl+"version/fetch"},reset:{method:"get",url:t.baseUrl+"version/reset"},pull:{method:"get",url:t.baseUrl+"version/pull"},restart:{method:"get",url:t.baseUrl+"version/restart"},migrations:{method:"get",url:t.baseUrl+"version/migrations"}}),t.system=e(t.baseUrl+"system"),t.pm2=e(t.baseUrl+"pm2/:id",{id:"@id"},{update:{method:"put",isArray:!0}}),t.user=e(t.baseUrl+"users/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"users/describe"},bulkCreate:{method:"post",url:t.baseUrl+"users/create_many",isArray:!0},bulkDestroy:{method:"delete",url:t.baseUrl+"users/destroy_many",isArray:!0},addContacts:{isArray:!0,method:"post",url:t.baseUrl+"users/:id/contacts"},changePassword:{isArray:!1,method:"put",url:t.baseUrl+"users/:id/password"},addQueues:{isArray:!0,method:"post",url:t.baseUrl+"users/:id/queues"},removeQueues:{isArray:!1,method:"delete",url:t.baseUrl+"users/:id/queues"},addAvatar:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/avatar"},getAvatar:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/avatar"},getContacts:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/contacts"},getQueues:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/queues"},getVoiceQueuesRt:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/queues_rt"},getRecordings:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/recordings"},login:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/login"},logout:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/logout"},pause:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/pause"},unpause:{isArray:!1,method:"post",url:t.baseUrl+"users/:id/unpause"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/teams"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"users/:id/lists"}}),t.voiceChanSpy=e(t.baseUrl+"voice/chanspy/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/chanspy/describe"}}),t.voiceContext=e(t.baseUrl+"voice/contexts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/contexts/describe"}}),t.voiceDisposition=e(t.baseUrl+"voice/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/dispositions/describe"}}),t.voiceExtension=e(t.baseUrl+"voice/extensions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/extensions/describe"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"voice/extensions/:id/applications"}}),t.voiceMusicOnHold=e(t.baseUrl+"voice/mohs/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mohs/describe"},addSound:{isArray:!1,method:"post",url:t.baseUrl+"voice/mohs/:id/sounds"},removeSound:{isArray:!1,method:"delete",url:t.baseUrl+"voice/mohs/:id/sounds/:id2"},getSounds:{isArray:!1,method:"get",url:t.baseUrl+"voice/mohs/:id/sounds"}}),t.voiceQueue=e(t.baseUrl+"voice/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/queues/describe"},getHoppers:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hoppers"},getHopperHistories:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_histories"},getHopperFinals:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_finals"},getHopperBlacks:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/hopper_black"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"voice/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"voice/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/users"},getMembers:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/members"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/lists"},addLists:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/lists"},addBlackLists:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/black_lists"},removeBlackLists:{isArray:!0,method:"delete",url:t.baseUrl+"voice/queues/:id/black_lists"},removeLists:{isArray:!0,method:"delete",url:t.baseUrl+"voice/queues/:id/lists"},getBlackLists:{isArray:!1,method:"get",url:t.baseUrl+"voice/queues/:id/blacklists"},addBlackLists:{isArray:!0,method:"post",url:t.baseUrl+"voice/queues/:id/blacklists"},removeBlackLists:{isArray:!0,method:"delete",url:t.baseUrl+"voice/queues/:id/blacklists"}}),t.voiceRecording=e(t.baseUrl+"voice/recordings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/recordings/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"voice/recordings/:id/download"}}),t.voiceMail=e(t.baseUrl+"voice/mails/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mails/describe"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"voice/mails/:id/messages"}}),t.voiceMailMessage=e(t.baseUrl+"voice/mails/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/mails/messages/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"voice/mails/messages/:id/download"}}),t.voiceCallReport=e(t.baseUrl+"voice/calls/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/calls/reports/describe"}}),t.voiceDialReport=e(t.baseUrl+"voice/dials/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/dials/reports/describe"}}),t.voiceAgentReport=e(t.baseUrl+"voice/agents/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/agents/reports/describe"}}),t.voiceQueueReport=e(t.baseUrl+"voice/queues/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/queues/reports/describe"}}),t.memberReport=e(t.baseUrl+"members/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"members/reports/describe"}}),t.trunk=e(t.baseUrl+"trunks/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"trunks/describe"}}),t.voiceTransferReport=e(t.baseUrl+"voice/transfers/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voice/transfers/reports/describe"}}),t.mailServerOut=e(t.baseUrl+"mail/out_servers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/out_servers/describe"}}),t.mailAccount=e(t.baseUrl+"mail/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/accounts/describe"},getImap:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/in_servers"},addImap:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/in_servers"},removeImap:{isArray:!1,method:"delete",url:t.baseUrl+"mail/accounts/:id/in_servers"},getSmtp:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/out_servers"},addSmtp:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/out_servers"},removeSmtp:{isArray:!1,method:"delete",url:t.baseUrl+"mail/accounts/:id/out_servers"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/dispositions"},sendMail:{isArray:!1,method:"post",url:t.baseUrl+"mail/accounts/:id/send"},verifySmtp:{isArray:!1,method:"get",url:t.baseUrl+"mail/accounts/:id/verify"}}),t.mailQueue=e(t.baseUrl+"mail/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"mail/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"mail/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"mail/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"mail/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"mail/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"mail/queues/:id/users"}}),t.mailInteraction=e(t.baseUrl+"mail/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"mail/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"mail/interactions/:id/messages"}}),t.mailMessage=e(t.baseUrl+"mail/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/messages/describe"}}),t.mailApplication=e(t.baseUrl+"mail/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/applications/describe"}}),t.mailDisposition=e(t.baseUrl+"mail/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/dispositions/describe"}}),t.mailAttachment=e(t.baseUrl+"mail/attachments/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/attachments/describe"}}),t.mailSessionReport=e(t.baseUrl+"mail/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/sessions/reports/describe"}}),t.mailReport=e(t.baseUrl+"mail/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"mail/reports/describe"}}),t.openchannelSessionReport=e(t.baseUrl+"openchannel/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/sessions/reports/describe"}}),t.dashboard=e(t.baseUrl+"dashboards/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"dashboards/describe"},run:{isArray:!1,method:"get",url:t.baseUrl+"dashboards/:id/run"},addItem:{isArray:!1,method:"post",url:t.baseUrl+"dashboards/:id/items"},getItems:{isArray:!1,method:"get",url:t.baseUrl+"dashboards/:id/items"}}),t.dashboardItem=e(t.baseUrl+"dashboards/items/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"dashboards/items/describe"}}),t.faxAccount=e(t.baseUrl+"fax/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/accounts/describe"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"fax/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"fax/accounts/:id/dispositions"}}),t.faxApplication=e(t.baseUrl+"fax/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/applications/describe"}}),t.faxDisposition=e(t.baseUrl+"fax/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/dispositions/describe"}}),t.faxAttachment=e(t.baseUrl+"fax/attachments/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/attachments/describe"}}),t.faxInteraction=e(t.baseUrl+"fax/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"fax/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"fax/interactions/:id/messages"}}),t.faxMessage=e(t.baseUrl+"fax/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/messages/describe"}}),t.faxQueue=e(t.baseUrl+"fax/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"fax/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"fax/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"fax/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"fax/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"fax/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"fax/queues/:id/users"}}),t.faxSessionReport=e(t.baseUrl+"fax/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/sessions/reports/describe"}}),t.smsAccount=e(t.baseUrl+"sms/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/accounts/describe"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"sms/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"sms/accounts/:id/dispositions"}}),t.smsApplication=e(t.baseUrl+"sms/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/applications/describe"}}),t.smsDisposition=e(t.baseUrl+"sms/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/dispositions/describe"}}),t.smsInteraction=e(t.baseUrl+"sms/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"sms/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"sms/interactions/:id/messages"}}),t.smsMessage=e(t.baseUrl+"sms/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/messages/describe"}}),t.smsQueue=e(t.baseUrl+"sms/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"sms/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"sms/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"sms/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"sms/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"sms/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"sms/queues/:id/users"}}),t.openchannelAccount=e(t.baseUrl+"openchannel/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/accounts/describe"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/accounts/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/accounts/:id/dispositions"}}),t.openchannelApplication=e(t.baseUrl+"openchannel/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/applications/describe"}}),t.openchannelDisposition=e(t.baseUrl+"openchannel/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/dispositions/describe"}}),t.openchannelInteraction=e(t.baseUrl+"openchannel/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"openchannel/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/interactions/:id/messages"}}),t.openchannelMessage=e(t.baseUrl+"openchannel/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/messages/describe"}}),t.openchannelQueue=e(t.baseUrl+"openchannel/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"openchannel/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"openchannel/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"openchannel/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"openchannel/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"openchannel/queues/:id/users"}}),t.chatWebsite=e(t.baseUrl+"chat/websites/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/websites/describe"},addInteraction:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/interactions"},getInteractions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/interactions"},addApplications:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/applications"},getApplications:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/applications"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/dispositions"},addDispositions:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/dispositions"},addProactiveActions:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/proactive_actions"},getProactiveActions:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/proactive_actions"},addWebsiteFields:{isArray:!1,method:"post",url:t.baseUrl+"chat/websites/:id/fields"},getWebsiteFields:{isArray:!1,method:"get",url:t.baseUrl+"chat/websites/:id/fields"}}),t.openchannelReport=e(t.baseUrl+"openchannel/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"openchannel/reports/describe"}}),t.chatApplication=e(t.baseUrl+"chat/applications/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/applications/describe"}}),t.chatDisposition=e(t.baseUrl+"chat/dispositions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/dispositions/describe"}}),t.chatInteraction=e(t.baseUrl+"chat/interactions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/interactions/describe"},addMessage:{isArray:!1,method:"post",url:t.baseUrl+"chat/interactions/:id/messages"},getMessages:{isArray:!1,method:"get",url:t.baseUrl+"chat/interactions/:id/messages"}}),t.chatMessage=e(t.baseUrl+"chat/messages/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/messages/describe"}}),t.chatQueue=e(t.baseUrl+"chat/queues/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/queues/describe"},getTeams:{isArray:!1,method:"get",url:t.baseUrl+"chat/queues/:id/teams"},addTeams:{isArray:!0,method:"post",url:t.baseUrl+"chat/queues/:id/teams"},removeTeams:{isArray:!1,method:"delete",url:t.baseUrl+"chat/queues/:id/teams"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"chat/queues/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"chat/queues/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"chat/queues/:id/users"}}),t.chatEnquiry=e(t.baseUrl+"chat/enquiries/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/enquiries/describe"}}),t.chatProactiveAction=e(t.baseUrl+"chat/proactive_actions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/proactive_actions/describe"}}),t.chatVisitor=e(t.baseUrl+"chat/visitors/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/visitors/describe"}}),t.chatWebsiteField=e(t.baseUrl+"chat/website_fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/website_fields/describe"}}),t.cmCompany=e(t.baseUrl+"cm/companies/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/companies/describe"},addContacts:{isArray:!1,method:"post",url:t.baseUrl+"cm/companies/:id/contacts"},getContacts:{isArray:!1,method:"get",url:t.baseUrl+"cm/companies/:id/contacts"}}),t.cmContact=e(t.baseUrl+"cm/contacts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/contacts/describe"},bulkCreate:{isArray:!1,method:"post",url:t.baseUrl+"cm/contacts/create_many"}}),t.cmHopper=e(t.baseUrl+"cm/hopper/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper/describe"},getDialerContacts:{isArray:!1,method:"get",url:t.baseUrl+"cm/hopper/preview"},callDialerContact:{isArray:!1,method:"get",url:t.baseUrl+"cm/hopper/preview/:id"}}),t.cmHopperBlack=e(t.baseUrl+"cm/hopper_black/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_black/describe"}}),t.cmHopperFinal=e(t.baseUrl+"cm/hopper_final/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_final/describe"}}),t.cmHopperHistory=e(t.baseUrl+"cm/hopper_history/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/hopper_history/describe"}}),t.cmCustomField=e(t.baseUrl+"cm/custom_fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/custom_fields/describe"}}),t.cmList=e(t.baseUrl+"cm/lists/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cm/lists/describe"},addDisposition:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/dispositions"},getDispositions:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/dispositions"},addContacts:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/contacts"},getContacts:{isArray:!0,method:"get",url:t.baseUrl+"cm/lists/:id/contacts"},getContactsCsv:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/contacts/csv"},addCustomField:{isArray:!1,method:"post",url:t.baseUrl+"cm/lists/:id/fields"},getCustomFields:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/fields"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"cm/lists/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"cm/lists/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"cm/lists/:id/users"}}),t.action=e(t.baseUrl+"actions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"actions/describe"}}),t.automation=e(t.baseUrl+"automations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"automations/describe"},addConditions:{isArray:!1,method:"post",url:t.baseUrl+"automations/:id/conditions"},getConditions:{isArray:!1,method:"get",url:t.baseUrl+"automations/:id/conditions"},addActions:{isArray:!1,method:"post",url:t.baseUrl+"automations/:id/actions"},getActions:{isArray:!1,method:"get",url:t.baseUrl+"automations/:id/actions"}}),t.cannedAnswer=e(t.baseUrl+"canned_answers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"canned_answers/describe"}}),t.condition=e(t.baseUrl+"conditions/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"conditions/describe"}}),t.interval=e(t.baseUrl+"intervals/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"intervals/describe"},addInterval:{isArray:!1,method:"post",url:t.baseUrl+"intervals/:id/sub_intervals"},getIntervals:{isArray:!1,method:"get",url:t.baseUrl+"intervals/:id/sub_intervals"},addIntervals:{isArray:!0,method:"post",url:t.baseUrl+"intervals/:id/sub_intervals/create_many"}}),t.pause=e(t.baseUrl+"pauses/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"pauses/describe"}}),t.cdr=e(t.baseUrl+"cdr/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"cdr/describe"}}),t.voiceQueuesLog=e(t.baseUrl+"voiceQueuesLog/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"voiceQueuesLog/describe"}}),t.schedule=e(t.baseUrl+"schedules/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"schedules/describe"}}),t.sound=e(t.baseUrl+"sounds/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sounds/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"sounds/:id/download"},delete:{isArray:!1,method:"delete",url:t.baseUrl+"sounds/:id"}}),t.tag=e(t.baseUrl+"tags/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"tags/describe"}}),t.template=e(t.baseUrl+"templates/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"templates/describe"}}),t.trigger=e(t.baseUrl+"triggers/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"triggers/describe"},addAllCondition:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/all_conditions"},addAnyCondition:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/any_conditions"},getAllConditions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/all_conditions"},getAnyConditions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/any_conditions"},addAction:{isArray:!1,method:"post",url:t.baseUrl+"triggers/:id/actions"},getActions:{isArray:!1,method:"get",url:t.baseUrl+"triggers/:id/actions"}}),t.variable=e(t.baseUrl+"variables/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"variables/describe"}}),t.integration=e(t.baseUrl+"integrations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/describe"}}),t.integrationReport=e(t.baseUrl+"integrations/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/reports/describe"}}),t.analyticCustomReport=e(t.baseUrl+"analytics/custom_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/custom_reports/describe"},preview:{isArray:!0,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/preview"},run:{isArray:!1,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/run"},query:{isArray:!1,method:"get",url:t.baseUrl+"analytics/custom_reports/:id/query"}}),t.analyticDefaultReport=e(t.baseUrl+"analytics/default_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/default_reports/describe"},preview:{isArray:!0,method:"get",url:t.baseUrl+"analytics/default_reports/:id/preview"},run:{isArray:!1,method:"get",url:t.baseUrl+"analytics/default_reports/:id/run"},query:{isArray:!1,method:"get",url:t.baseUrl+"analytics/default_reports/:id/query"}}),t.analyticExtractedReport=e(t.baseUrl+"analytics/extracted_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/extracted_reports/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"analytics/extracted_reports/:id/download"}}),t.analyticMetric=e(t.baseUrl+"analytics/metrics/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/metrics/describe"}}),t.analyticFieldReport=e(t.baseUrl+"analytics/field_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/field_reports/describe"},bulkCreate:{method:"post",url:t.baseUrl+"analytics/field_reports/create_many",isArray:!0},bulkDestroy:{method:"delete",url:t.baseUrl+"analytics/field_reports/destroy_many",isArray:!0},addFields:{isArray:!0,method:"post",url:t.baseUrl+"analytics/field_reports/:id/create_many"}}),t.analyticTreeReport=e(t.baseUrl+"analytics/tree_reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"analytics/tree_reports/describe"}}),t.intSalesforceAccount=e(t.baseUrl+"integrations/salesforce/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/accounts/describe"},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/salesforce/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/accounts/:id/fields"}}),t.intSalesforceConfiguration=e(t.baseUrl+"integrations/salesforce/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/configurations/describe"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/salesforce/configurations/:id/descriptions"}}),t.intSalesforceField=e(t.baseUrl+"integrations/salesforce/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/salesforce/fields/describe"}}),t.intSugarcrmAccount=e(t.baseUrl+"integrations/sugarcrm/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/describe"},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/accounts/:id/fields"}}),t.intSugarcrmConfiguration=e(t.baseUrl+"integrations/sugarcrm/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/describe"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/sugarcrm/configurations/:id/descriptions"}}),t.intSugarcrmField=e(t.baseUrl+"integrations/sugarcrm/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/sugarcrm/fields/describe"}}),t.intZendeskAccount=e(t.baseUrl+"integrations/zendesk/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/accounts/describe"},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/zendesk/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/accounts/:id/fields"}}),t.intZendeskConfiguration=e(t.baseUrl+"integrations/zendesk/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/configurations/describe"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/descriptions"},getTags:{isArray:!1,method:"get",url:t.baseUrl+"integrations/zendesk/configurations/:id/tags"},setTags:{isArray:!0,method:"post",url:t.baseUrl+"integrations/zendesk/configurations/:id/tags"}}),t.intZendeskField=e(t.baseUrl+"integrations/zendesk/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/zendesk/fields/describe"}}),t.intFreshdeskAccount=e(t.baseUrl+"integrations/freshdesk/accounts/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/describe"},getConfigurations:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/:id/configurations"},addConfiguration:{isArray:!1,method:"post",url:t.baseUrl+"integrations/freshdesk/accounts/:id/configurations"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/accounts/:id/fields"}}),t.intFreshdeskConfiguration=e(t.baseUrl+"integrations/freshdesk/configurations/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/describe"},getFields:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/fields"},getSubjects:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/subjects"},getDescriptions:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/descriptions"},getTags:{isArray:!1,method:"get",url:t.baseUrl+"integrations/freshdesk/configurations/:id/tags"},setTags:{isArray:!0,method:"post",url:t.baseUrl+"integrations/freshdesk/configurations/:id/tags"}}),t.intFreshdeskField=e(t.baseUrl+"integrations/freshdesk/fields/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"integrations/freshdesk/fields/describe"}}),t.network=e(t.baseUrl+"networks/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"networks/describe"}}),t.chatReport=e(t.baseUrl+"chat/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/reports/describe"}}),t.chatSessionReport=e(t.baseUrl+"chat/session/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"chat/session/reports/describe"}}),t.faxReport=e(t.baseUrl+"fax/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"fax/reports/describe"}}),t.jscriptyInputReport=e(t.baseUrl+"jscripty/inputs/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/inputs/reports/describe"}}),t.jscriptyQuestionReport=e(t.baseUrl+"jscripty/questions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/questions/reports/describe"}}),t.jscriptySessionReport=e(t.baseUrl+"jscripty/sessions/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/sessions/reports/describe"}}),t.smsReport=e(t.baseUrl+"sms/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/reports/describe"}}),t.smsSessionReport=e(t.baseUrl+"sms/session/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"sms/session/reports/describe"}}),t.squareReport=e(t.baseUrl+"square/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/reports/describe"}}),t.squareReportDetail=e(t.baseUrl+"square/details/reports/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/details/reports/describe"}}),t.jscriptyProject=e(t.baseUrl+"jscripty/projects/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"jscripty/projects/describe"}}),t.setting=e(t.baseUrl+"settings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"settings/describe"},addLogo:{isArray:!1,method:"post",url:t.baseUrl+"settings/:id/logo"},addLogoLogin:{isArray:!1,method:"post",url:t.baseUrl+"settings/:id/logo_login"},getLogo:{isArray:!1,method:"get",url:t.baseUrl+"settings/:id/logo"},getLogoLogin:{isArray:!1,method:"get",url:t.baseUrl+"settings/:id/logo_login"}}),t.squareOdbc=e(t.baseUrl+"square/odbc/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/odbc/describe"},test:{isArray:!1,method:"get",url:t.baseUrl+"square/odbc/:id/test"}}),t.squareProject=e(t.baseUrl+"square/projects/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/projects/describe"}}),t.squareRecording=e(t.baseUrl+"square/recordings/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"square/recordings/describe"},download:{isArray:!1,method:"get",url:t.baseUrl+"square/recordings/:id/download"}}),t.team=e(t.baseUrl+"teams/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"teams/describe"},getQueues:{isArray:!0,method:"get",url:t.baseUrl+"teams/:id/queues"},addQueues:{isArray:!0,method:"post",url:t.baseUrl+"teams/:id/queues"},removeQueues:{isArray:!1,method:"delete",url:t.baseUrl+"teams/:id/queues"},addAgents:{isArray:!0,method:"post",url:t.baseUrl+"teams/:id/users"},removeAgents:{isArray:!1,method:"delete",url:t.baseUrl+"teams/:id/users"},getAgents:{isArray:!1,method:"get",url:t.baseUrl+"teams/:id/users"}}),t.license=e(t.baseUrl+"license/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"license/describe"}}),t.campaign=e(t.baseUrl+"campaigns/:id",{id:"@id"},{update:{method:"put"},describe:{method:"get",url:t.baseUrl+"campaigns/describe"},getHoppers:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hoppers"},getHopperHistories:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_histories"},getHopperFinals:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_finals"},getHopperBlacks:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/hopper_black"},getLists:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/lists"},addLists:{isArray:!0,method:"post",url:t.baseUrl+"campaigns/:id/lists"},removeLists:{isArray:!0,method:"delete",url:t.baseUrl+"campaigns/:id/lists"},getBlackLists:{isArray:!1,method:"get",url:t.baseUrl+"campaigns/:id/blacklists"},addBlackLists:{isArray:!0,method:"post",url:t.baseUrl+"campaigns/:id/blacklists"},removeBlackLists:{isArray:!0,method:"delete",url:t.baseUrl+"campaigns/:id/blacklists"}}),t}e.$inject=["$resource"],angular.module("motion").factory("api",e)}(),function(){"use strict";function e(e,t,n){n.setConfig({position:"top-right",sound:!1,html:!0,theme:"material"}),e.useLoader("$translatePartialLoader",{urlTemplate:"{part}/i18n/{lang}.json"}),e.preferredLanguage("en"),e.useSanitizeValueStrategy("sanitize"),t.decorator("taOptions",["$delegate",function(e){return e.toolbar=[["bold","italics","underline","ul","ol","quote","justifyLeft","justifyCenter","justifyRight","html","insertImage","insertLink"]],e.classes={focussed:"focussed",toolbar:"ta-toolbar",toolbarGroup:"ta-group",toolbarButton:"md-button",toolbarButtonActive:"active",disabled:"",textEditor:"form-control",htmlEditor:"form-control"},e}]),t.decorator("taTools",["$delegate",function(e){return e.quote.iconclass="icon-format-quote",e.bold.iconclass="icon-format-bold",e.italics.iconclass="icon-format-italic",e.underline.iconclass="icon-format-underline",e.strikeThrough.iconclass="icon-format-strikethrough",e.ul.iconclass="icon-format-list-bulleted",e.ol.iconclass="icon-format-list-numbers",e.redo.iconclass="icon-redo",e.undo.iconclass="icon-undo",e.clear.iconclass="icon-close-circle-outline",e.justifyLeft.iconclass="icon-format-align-left",e.justifyCenter.iconclass="icon-format-align-center",e.justifyRight.iconclass="icon-format-align-right",e.justifyFull.iconclass="icon-format-align-justify",e.indent.iconclass="icon-format-indent-increase",e.outdent.iconclass="icon-format-indent-decrease",e.html.iconclass="icon-code-tags",e.insertImage.iconclass="icon-file-image-box",e.insertLink.iconclass="icon-link",e.insertVideo.iconclass="icon-filmstrip",e}])}e.$inject=["$translateProvider","$provide","toastyConfigProvider"],angular.module("motion").config(e)}(),function(){"use strict";angular.module("motion")}(),function(){"use strict";function e(e){this.themes=e.themes}e.$inject=["motionTheming"],angular.module("motion").controller("IndexController",e)}(),function(){"use strict";function e(){return function(e,t,n){var a,i={},o=0;for(a in e)if(o>=n&&(i[a]=e[a]),++o===n+t)break;return i}}function t(){var e=[{value:"jan"},{value:"feb"},{value:"mar"},{value:"apr"},{value:"may"},{value:"jun"},{value:"jul"},{value:"aug"},{value:"sep"},{value:"oct"},{value:"nov"},{value:"dec"}],t=[{value:"1"},{value:"2"},{value:"3"},{value:"4"},{value:"5"},{value:"6"},{value:"7"},{value:"8"},{value:"9"},{value:"10"},{value:"11"},{value:"12"}],n=[{value:"mon"},{value:"tue"},{value:"wed"},{value:"thu"},{value:"fri"},{value:"sat"},{value:"sun"}],a=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31];return{getMonthName:function(){return e},getMonthNumber:function(){return t},getDaysOfWeek:function(){return n},getDaysOfMonth:function(){return a}}}angular.module("motion").filter("limitObjectFromTo",e).factory("IndexFactory",t)}(),function(){"use strict";function e(e,t,n){n.html5Mode(!0),t.otherwise("/dashboards/general");var a;angular.injector(["ngCookies"]).invoke(["$cookies",function(e){a=e}]);var i=a.get("motion.layoutStyle")||"verticalNavigation",o={verticalNavigation:{main:"app/core/layouts/vertical-navigation.html",toolbar:"app/toolbar/layouts/vertical-navigation/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation/navigation.html"},verticalNavigationFullwidthToolbar:{main:"app/core/layouts/vertical-navigation-fullwidth-toolbar.html",toolbar:"app/toolbar/layouts/vertical-navigation-fullwidth-toolbar/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation/navigation.html"},verticalNavigationFullwidthToolbar2:{main:"app/core/layouts/vertical-navigation-fullwidth-toolbar-2.html",toolbar:"app/toolbar/layouts/vertical-navigation-fullwidth-toolbar-2/toolbar.html",navigation:"app/navigation/layouts/vertical-navigation-fullwidth-toolbar-2/navigation.html"},horizontalNavigation:{main:"app/core/layouts/horizontal-navigation.html",toolbar:"app/toolbar/layouts/horizontal-navigation/toolbar.html",navigation:"app/navigation/layouts/horizontal-navigation/navigation.html"},contentOnly:{main:"app/core/layouts/content-only.html",toolbar:"",navigation:""},contentWithToolbar:{main:"app/core/layouts/content-with-toolbar.html",toolbar:"app/toolbar/layouts/content-with-toolbar/toolbar.html",navigation:""}};e.state("app",{abstract:!0,views:{"main@":{templateUrl:o[i].main,controller:"MainController as vm"},"toolbar@app":{templateUrl:o[i].toolbar,controller:"ToolbarController as vm"},"navigation@app":{templateUrl:o[i].navigation,controller:"NavigationController as vm"},"quickPanel@app":{templateUrl:"app/quick-panel/quick-panel.html",controller:"QuickPanelController as vm"}},resolve:{license:["apiResolver",function(e){return e.resolve("license@get")}],setting:["apiResolver",function(e){return e.resolve("setting@get",{id:1})}]}})}e.$inject=["$stateProvider","$urlRouterProvider","$locationProvider"],angular.module("motion").config(e)}(),function(){"use strict";function e(e,t,n){var a=e.$on("$stateChangeStart",function(){e.loadingProgress=!0}),i=e.$on("$stateChangeSuccess",function(){t(function(){e.loadingProgress=!1})});e.state=n,e.$on("$destroy",function(){a(),i()})}e.$inject=["$rootScope","$timeout","$state"],angular.module("motion").run(e)}(),function(){"use strict";function e(e,t){function n(){a=io({query:"id="+t.getCurrentUser().id,transports:["websocket","polling"]})}var a;return{connect:n,on:function(t,i){i=i||angular.noop,a||n(),a.on(t,function(){var t=arguments;e.$apply(function(){i.apply(a,t)})})},emit:function(t,i,o){o=o||angular.noop,a||n(),a.emit(t,i,function(){var t=arguments;e.$apply(function(){o.apply(a,t)})})},removeAllListeners:function(e){a||n(),a.removeAllListeners(e)},disconnect:function(){a||n(),a.disconnect()}}}e.$inject=["$rootScope","Auth"],angular.module("motion").factory("socket",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){i.isLoggedIn()&&e.go("app.dashboards.general")}function s(){return i.login(l.form).then(function(){return e.go("app.dashboards.general")}).catch(function(e){l.message=e.message})}function r(e){t.location.href="/api/auth/"+e}var l=this;l.login=s,l.loginOauth=r,l.$onInit=o}e.$inject=["$state","$window","$cookies","api","Auth"],angular.module("app.login").controller("LoginController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.analyticExtractedReport.save(p.extractedReport).$promise.then(function(e){p.extractedReports.unshift(e),i.success({title:"ExtractedReport properly created",msg:p.extractedReport.name?p.extractedReport.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticExtractedReport.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticExtractedReport.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.analyticExtractedReport.update({id:p.extractedReport.id},p.extractedReport).$promise.then(function(e){var t=_.find(p.extractedReports,{id:e.id});t&&_.merge(t,e),i.success({title:"ExtractedReport properly saved!",msg:p.extractedReport.name?p.extractedReport.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticExtractedReport.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticExtractedReport.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The extractedReport will be deleted.").ariaLabel("Delete ExtractedReport").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.analyticExtractedReport.delete({id:p.extractedReport.id}).$promise.then(function(){_.remove(p.extractedReports,{id:p.extractedReport.id}),i.success({title:"ExtractedReport properly deleted!",msg:(p.extractedReport.name||"extractedReport")+" has been deleted!"}),u(p.extractedReport)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticExtractedReport.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="ANALYTICS.EDIT_EXTRACTEDREPORT",p.extractedReport=angular.copy(s),p.extractedReports=o,p.newExtractedReport=!1,p.extractedReport||(p.extractedReport={},p.title="ANALYTICS.NEW_EXTRACTEDREPORT",p.newExtractedReport=!0),p.addNewExtractedReport=l,p.saveExtractedReport=d,p.deleteExtractedReport=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","extractedReports","extractedReport","api"],angular.module("app.analytics").controller("CreateOrEditExtractedReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditExtractedReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/extractedReports/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{extractedReport:e,extractedReports:C.extractedReports.rows}})}function u(e,n){return l.analyticExtractedReport.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/analytics/extracted_reports/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticExtractedReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function p(e,t){var n=i.confirm().title("Are you sure want to delete the extractedReport?").htmlContent("<b>"+(e.name||"extractedReport")+"</b> will be deleted.").ariaLabel("delete extractedReport").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function g(e){C.extractedReports=e||{count:0,rows:[]}}function h(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.analyticExtractedReport.get(C.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditExtractedReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/extractedReports/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{extractedReport:t,extractedReports:C.extractedReports.rows}})}function b(e){l.analyticExtractedReport.delete({id:e.id}).$promise.then(function(){_.remove(C.extractedReports.rows,{id:e.id}),C.extractedReports.count-=1,C.extractedReports.rows.length||C.getExtractedReports(),c.success({title:"ExtractedReport deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticExtractedReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(C.selectedExtractedReports);return C.selectedExtractedReports=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected extractedReports?").htmlContent("<b>"+C.selectedExtractedReports.length+" selected</b> will be deleted.").ariaLabel("delete ExtractedReports").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){C.selectedExtractedReports.forEach(function(e){b(e)}),C.selectedExtractedReports=[]})}function y(){C.selectedExtractedReports=[]}function A(){C.selectedExtractedReports=C.extractedReports.rows}var C=this;C.extractedReports=r||{count:0,rows:[]},C.table="extractedReports",C.listOrder="",C.listOrderAsc=null,C.selectedExtractedReports=[],C.query={fields:"createdAt,updatedAt,id,name,type,startDate,endDate,createdAt,status,output",sort:"-updatedAt",limit:10,page:1},C.editdialog=m,C.downloadfile=u,C.deleteconfirm=p,C.success=g,C.getExtractedReports=h,C.createOrEditExtractedReport=v,C.deleteExtractedReport=b,C.exportSelectedExtractedReports=f,C.deleteSelectedExtractedReports=E,C.deselectExtractedReports=y,C.selectAllExtractedReports=A;var x=!0,T=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(T=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=T),C.getExtractedReports())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","extractedReports","api","msUtils","toasty"],angular.module("app.analytics").controller("ExtractedReportsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.analyticMetric.save(p.metric).$promise.then(function(e){p.metrics.unshift(e),i.success({title:"Metric properly created",msg:p.metric.name?p.metric.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticMetric.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticMetric.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.analyticMetric.update({id:p.metric.id},p.metric).$promise.then(function(e){var t=_.find(p.metrics,{id:e.id});t&&_.merge(t,e),i.success({title:"Metric properly saved!",msg:p.metric.name?p.metric.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticMetric.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticMetric.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The metric will be deleted.").ariaLabel("Delete Metric").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.analyticMetric.delete({id:p.metric.id}).$promise.then(function(){_.remove(p.metrics,{id:p.metric.id}),i.success({title:"Metric properly deleted!",msg:(p.metric.name||"metric")+" has been deleted!"}),u(p.metric)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.analyticMetric.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="ANALYTICS.EDIT_METRIC",p.metric=angular.copy(s),p.metrics=o,p.newMetric=!1,p.metric||(p.metric={table:"report_agent"},p.title="ANALYTICS.NEW_METRIC",p.newMetric=!0),p.addNewMetric=l,p.saveMetric=d,p.deleteMetric=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","metrics","metric","api"],angular.module("app.analytics").controller("CreateOrEditMetricDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditMetricDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/metrics/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{metric:e,metrics:A.metrics.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the metric?").htmlContent("<b>"+(e.name||"metric")+"</b> will be deleted.").ariaLabel("delete metric").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.metrics=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.analyticMetric.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditMetricDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/metrics/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{metric:t,metrics:A.metrics.rows}})}function v(e){l.analyticMetric.delete({id:e.id}).$promise.then(function(){_.remove(A.metrics.rows,{id:e.id}),A.metrics.count-=1,A.metrics.rows.length||A.getMetrics(),c.success({title:"Metric deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticMetric",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedMetrics);return A.selectedMetrics=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected metrics?").htmlContent("<b>"+A.selectedMetrics.length+" selected</b> will be deleted.").ariaLabel("delete Metrics").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedMetrics.forEach(function(e){v(e)}),A.selectedMetrics=[]})}function E(){A.selectedMetrics=[]}function y(){A.selectedMetrics=A.metrics.rows}var A=this;A.metrics=r||{count:0,rows:[]},A.table="metrics",A.listOrder="",A.listOrderAsc=null,A.selectedMetrics=[],A.query={fields:"createdAt,updatedAt,id,name,table,metric,description",sort:"-updatedAt",limit:10,page:1},A.arraytable=_.keyBy([{option:"Agent Report",value:"'report_agent'"},{option:"Call Report",value:"'report_call'"},{option:"Chat Messages",value:"'chat_messages'"},{option:"Chat Rooms",value:"'chat_rooms'"},{option:"Chat Session Report",value:"'report_chat_session'"},{option:"Contacts",value:"'cm_contacts'"},{option:"CSquare Report",value:"'report_square'"},{option:"CSquare Details Report",value:"'report_square_details'"},{option:"Fax Messages",value:"'fax_messages'"},{option:"Fax Rooms",value:"'fax_rooms'"},{option:"Fax Session Report",value:"'report_fax_session'"},{option:"Integration Report",value:"'report_integration'"},{option:"Mail Messages",value:"'mail_messages'"},{option:"Mail Rooms",value:"'mail_rooms'"},{option:"Mail Session Report",value:"'report_mail_session'"},{option:"Member Report",value:"'report_member'"},{option:"Open Channel Messages",value:"'openchannel_messages'"},{option:"Open Channel Rooms",value:"'openchannel_rooms'"},{option:"Open Channel Session Report",value:"'report_openchannel_session'"},{option:"Queue Report",value:"'report_queue'"},{option:"Sms Messages",value:"'sms_messages'"},{option:"Sms Rooms",value:"'sms_rooms'"},{option:"Sms Session Report",value:"'report_sms_session'"},{option:"Users",value:"'users'"},{option:"Voice Recordings",value:"'voice_recordings'"},{option:"Dialer Hopper Processing",value:"'cm_hopper'"},{option:"Dialer Hopper Logs",value:"'cm_hopper_history'"},{option:"Dialer Hopper Final",value:"'cm_hopper_final'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getMetrics=g,A.createOrEditMetric=h,A.deleteMetric=v,A.exportSelectedMetrics=b,A.deleteSelectedMetrics=f,A.deselectMetrics=E,A.selectAllMetrics=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getMetrics())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","metrics","api","msUtils","toasty"],angular.module("app.analytics").controller("MetricsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){c.errors=[];var e;i.analyticCustomReport.save({name:c.report.name,description:c.report.description,table:c.report.table,conditions:c.report.conditions,parent:c.currentNode.id}).$promise.then(function(t){e=t,n.success({title:"Report properly copied!",msg:c.report.name?c.report.name+" has been copied!":""});var a={fields:"field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0};return a["analyticCustomReport"===o?"CustomReportId":"DefaultReportId"]=c.report.id,i.analyticFieldReport.get(a).$promise}).then(function(t){var t=_.map(t.rows,function(t){return _.extend({},t,{CustomReportId:e.id})});return i.analyticFieldReport.bulkCreate(t).$promise}).then(function(){n.success({title:"Fields copied!",msg:"Fields has been copied!"}),d()}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:COPYREPORT",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function l(e,t){c.currentNode=t.node}function d(){t.hide()}var c=this;c.errors=[],c.report=angular.copy(a),c.report.name+="-copy",c.treeCustomData=s,c.treeCustomConfig={core:{multiple:!1,animation:!0,error:function(e){console.error("treeCtrl: error from js tree - "+angular.toJson(e))},check_callback:!0,worker:!0},version:1,plugins:["wholerow"]},c.treeCustomEvents={select_node:l},c.copyReport=r,c.closeDialog=d}e.$inject=["$location","$mdDialog","toasty","report","api","apiName","treeCustomData"],angular.module("app.analytics").controller("CopyReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){u.errors=[],o[s].save(u.report).$promise.then(function(e){u.reports.unshift(e),n.success({title:"Report properly created",msg:u.report.name?u.report.name+" has been created!":""}),m()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReport.save"}];for(var t=0;t<e.data.errors.length;t++)n.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticReport.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){u.errors=[],o[s].update({id:u.report.id},u.report).$promise.then(function(e){var t=_.find(u.reports,{id:e.id});t&&_.merge(t,e),n.success({title:"Report properly saved!",msg:u.report.name?u.report.name+" has been saved!":""}),m()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReport.update"}];for(var t=0;t<e.data.errors.length;t++)n.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.analyticReport.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){u.errors=[];var e=t.confirm().title("Are you sure?").content("The report will be deleted.").ariaLabel("Delete Report").ok("Delete").cancel("Cancel").targetEvent(event);t.show(e).then(function(){o[s].delete({id:u.report.id}).$promise.then(function(){_.remove(u.reports,{id:u.report.id}),n.success({title:"Report properly deleted!",msg:u.report.name?u.report.name+" has been deleted!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReport.delete"}]})},function(){})}function m(){t.hide()}var u=this;u.errors=[],u.title="ANALYTICS.EDIT_REPORT",u.report=angular.copy(i),u.reports=a,u.newReport=!1,u.report||(u.report={name:"",table:"report_agent",description:"",parent:r.id},u.title="ANALYTICS.NEW_REPORT",u.newReport=!0),u.addNewReport=l,u.saveReport=d,u.deleteReport=c,u.closeDialog=m}e.$inject=["$location","$mdDialog","toasty","reports","report","api","apiName","currentNode"],angular.module("app.analytics").controller("CreateOrEditReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){d.report=e,d.report.condition=angular.fromJson(e.conditions)||{group:{operator:"AND",rules:[]}},t.getColumns(d.report.table).then(function(e){d.columns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt"])}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){e.unshift({condition:"=",field:"",value:""})}function s(e){e.push({group:{operator:"AND",rules:[]}})}function r(t,n,a){var i=e.confirm().title("Are you sure want to delete the item?").htmlContent("The item will be deleted.").ariaLabel("delete item").targetEvent(a).ok("OK").cancel("CANCEL");e.show(i).then(function(){t.splice(n,1)},function(){console.log("CANCEL")})}function l(e){return!_.includes(["IS NULL","IS NOT NULL","IS EMPTY","IS NOT EMPTY"],e)}var d=this;d.report={},d.conditions=a.getConditions,d.init=i,d.addCondition=o,d.addGroup=s,d.deleteConfirm=r,d.isValueByCondition=l}e.$inject=["$mdDialog","describeTable","toasty","sqlUtil"],angular.module("app.analytics").controller("ReportConditionsController",e)}(),function(){"use strict";function e(e){var t={report_agent:"voiceAgentReport",report_call:"voiceCallReport",chat_messages:"chatMessage",chat_rooms:"chatInteraction",report_chat_session:"chatSessionReport",cm_contacts:"cmContact",report_square:"squareReport",report_square_details:"squareReportDetail",fax_messages:"faxMessage",fax_rooms:"faxInteraction",report_fax_session:"faxSessionReport",report_integration:"integrationReport",mail_messages:"mailMessage",mail_rooms:"mailInteraction",report_mail_session:"mailSessionReport",report_member:"memberReport",openchannel_messages:"openchannelMessage",openchannel_rooms:"openchannelInteraction",report_openchannel_session:"openchannelSessionReport",report_queue:"voiceQueueReport",sms_messages:"smsMessage",sms_rooms:"smsInteraction",report_sms_session:"smsSessionReport",users:"user",voice_recordings:"voiceRecording",cm_hopper:"cmHopper",cm_hopper_final:"cmHopperFinal",cm_hopper_history:"cmHopperHistory"};return{getColumns:function(n){return e[t[n]].describe().$promise}}}e.$inject=["api"],angular.module("app.analytics").factory("describeTable",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(){g.errors=[],g.reportField.custom="custom"===g.reportField.type,g.reportField.MetricId="metric"===g.reportField.type?g.reportField.MetricId:null,g.reportField.CustomReportId=g.report.id,d.analyticFieldReport.save(g.reportField).$promise.then(function(e){g.reportFields.push(e),n.success({title:"Report field properly created",msg:g.reportField.field?g.reportField.field+" has been created!":g.reportField.type+" has been created!"}),p()}).catch(function(e){g.errors=e.data.errors||[{message:e.toString(),type:"api.analyticFieldReport.save"}]})}function m(){g.errors=[],g.reportField.custom="custom"===g.reportField.type,g.reportField.MetricId="metric"===g.reportField.type?g.reportField.MetricId:null,d.analyticFieldReport.update({id:g.reportField.id},g.reportField).$promise.then(function(e){var t=_.find(g.reportFields,{id:e.id});t&&_.merge(t,e),n.success({title:"Report Field properly saved!",msg:g.reportField.field?g.reportField.field+" has been saved!":""}),p()}).catch(function(e){g.errors=e.data.errors||[{message:e.toString(),type:"api.analyticFieldReport.update"}]})}function u(e){g.errors=[];var a=t.confirm().title("Are you sure?").content("The field will be deleted.").ariaLabel("Delete Report").ok("Delete").cancel("Cancel").targetEvent(e);t.show(a).then(function(){d.analyticFieldReport.delete({id:g.reportField.id}).$promise.then(function(){_.remove(g.reportFields,{id:g.reportField.id}),n.success({title:"Report Field properly deleted!",msg:g.reportField.field?g.reportField.field+" has been deleted!":""}),p()}).catch(function(e){g.errors=e.data.errors||[{message:e.toString(),type:"api.analyticReportField.delete"}]})},function(){})}function p(){t.hide()}var g=this;g.errors=[],g.title="Edit Report Field",g.report=a,g.reportField=angular.copy(o),g.reportFields=i,g.metrics=s,g.columns=r,g.sqlUtil=l,g.newReportField=!1,g.reportField?g.reportField.type=g.reportField.custom?"custom":g.reportField.MetricId?"metric":"column":(g.reportField={type:"column",function:null,format:null,groupBy:!1,orderBy:null},g.title="New Report Field",g.newReportField=!0),g.addNewReportField=c,g.saveReportField=m,g.deleteReportField=u,g.closeDialog=p}e.$inject=["$location","$mdDialog","toasty","report","reportFields","reportField","metrics","columns","sqlUtil","api"],angular.module("app.analytics").controller("CreateOrEditReportFieldDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(e){E.report=e,E.query.CustomReportId=E.report.id,r.getColumns(E.report.table).then(function(e){return E.columns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt"]),s.analyticMetric.get({fields:"id,name,metric,table",nolimit:!0}).$promise}).then(function(e){E.metrics=e.rows}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data):e.toString()})}),E.getReportFields()}function m(e,t){var n=a.confirm().title("Are you sure want to delete the field?").htmlContent("<b>"+e.field+"</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");a.show(n).then(function(){h(e)},function(){console.log("CANCEL")})}function u(e){E.reportFields=e||{count:0,rows:[]}}function p(){E.promise=s.analyticFieldReport.get(E.query,u).$promise}function g(e,t){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:E.report,reportField:t,reportFields:E.reportFields.rows,metrics:E.metrics,columns:E.columns}})}function h(e){s.analyticFieldReport.delete({id:e.id}).$promise.then(function(){E.selectedReportFields=[],_.remove(E.reportFields.rows,{id:e.id}),E.reportFields.count-=1,E.reportFields.rows.length||E.getReportFields(),o.success({title:"Field deleted!",msg:e.field?e.field+" has been deleted!":""})}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function v(e){var t=a.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+E.selectedReportFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(e).ok("OK").cancel("CANCEL");a.show(t).then(function(){E.selectedReportFields.forEach(function(e){h(e)}),E.selectedReportFields=[]})}function b(e){var t=_.find(E.metrics,{id:e});return t?t.name:d.instant("ANALYTICS.NO_METRIC_FOUND")}function f(e){var t=_.find(E.metrics,{id:e});return t?t.metric:d.instant("ANALYTICS.NO_METRIC_FOUND")}var E=this;E.report={},E.reportFields={count:0,rows:[]},E.functions=_.keyBy(l.getFunctions,"value"),E.formats=_.keyBy(l.getFormats,"value"),E.groupBy=_.keyBy(l.getGroupBy,"value"),E.orderBy=_.keyBy(l.getOrderBy,"value"),E.selectedReportFields=[],E.query={fields:"createdAt,updatedAt,id,field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0},E.sortableTable={animation:100,onSort:function(e){s.analyticFieldReport.addFields({id:E.report.id},e.models).$promise.then(function(e){E.reportFields.rows=e}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ADDFIELDS"})})}},E.init=c,E.deleteConfirm=m,E.success=u,E.getReportFields=p,E.createOrEditReportField=g,E.deleteReportField=h,E.deleteSelectedReportFields=v,E.getMetricName=b,E.getMetricValue=f;var y=!0;t.$watch("vm_rf.query.filter",function(e,t){y?n(function(){y=!1}):E.getReportFields()})}e.$inject=["$cookies","$scope","$timeout","$mdDialog","$document","toasty","api","describeTable","sqlUtil","$translate"],angular.module("app.analytics").controller("ReportFieldsController",e)}(),function(){"use strict";function e(){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"]}}angular.module("app.analytics").factory("sqlUtil",e)}(),function(){"use strict";function e(e,t,n,a){function i(){e.go("app.analytics.reports")}function o(){l.report.conditions=angular.toJson(l.report.condition),n.analyticCustomReport.update({id:l.report.id},l.report).$promise.then(function(){t.success({title:"Report updated!",msg:l.report.name?l.report.name+" has been updated!":""})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETreport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(){l.columns=[],l.rows=[],l.error=!1,n.analyticFieldReport.get({fields:"field,alias",nolimit:!0,CustomReportId:l.report.id}).$promise.then(function(e){return l.columns=e?e.rows:[],n.analyticCustomReport.preview({id:l.report.id}).$promise}).then(function(e){l.rows=e}).catch(function(e){console.log(e),l.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(l.error)})}function r(){return l.queryResult="Loading...",n.analyticCustomReport.query({id:l.report.id}).$promise.then(function(e){l.queryResult=e.sql}).catch(function(e){l.queryResult="",console.log(e),l.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(l.error)})}var l=this;l.report=a||{},l.selectedTab=e.params.tab||0,l.gotoReports=i,l.saveReport=o,l.previewReport=s,l.queryReport=r}e.$inject=["$state","toasty","api","report"],angular.module("app.analytics").controller("ReportController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){t.hide()}var r=this;r.errors=[],r.report=angular.copy(a),r.closeDialog=s,function(){r.columns=[],r.rows=[],r.error=!1;var e={fields:"field,alias",nolimit:!0};e["analyticCustomReport"===o?"CustomReportId":"DefaultReportId"]=r.report.id,i.analyticFieldReport.get(e).$promise.then(function(e){return r.columns=e?e.rows:[],i[o].preview({id:r.report.id}).$promise}).then(function(e){r.rows=e}).catch(function(e){console.log(e),r.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(r.error)})}()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName"],angular.module("app.analytics").controller("PreviewReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(e,t){i.go("app.analytics.reports.edit",{id:e.id})}function m(e,t){a.show({controller:"CopyReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/copy/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:N.apiName,treeCustomData:N.treeCustomInstance.jstree(!0).get_json("#",{flat:!0})}}).finally(function(){N.treeCustomInstance.jstree(!0).refresh()})}function u(e,t){a.show({controller:"PreviewReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/preview/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:N.apiName}})}function p(e,t){a.show({controller:"RunReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/run/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!0,locals:{report:e,apiName:N.apiName}})}function g(e,t){var n;r.analyticMetric.get({fields:"id,name,metric,table",nolimit:!0}).$promise.then(function(t){n=_.keyBy(t.rows,"id");var a={fields:"field,alias,function,format,groupBy,orderBy,custom,MetricId",nolimit:!0};return a["analyticCustomReport"===N.apiName?"CustomReportId":"DefaultReportId"]=e.id,r.analyticFieldReport.get(a).$promise}).then(function(t){for(var a=0;a<t.rows.length;a+=1)t.rows[a].MetricId&&(t.rows[a].field=n[t.rows[a].MetricId].metric,t.rows[a].custom=!0),delete t.rows[a].MetricId;var i=o.document.createElement("a");i.href="data:text/json;charset=utf-8,"+o.encodeURIComponent(angular.toJson({name:e.name,description:e.description,table:e.table,conditions:e.conditions,fields:t.rows})),i.download=e.name+".json",i.target="_self",i.click(),d.success({title:"Report downloaded!",msg:e.name?e.name+" has been downloaded!":""})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DOWNLOADJSON",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(e,t){var n=a.confirm().title("Are you sure want to delete the report?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete report").targetEvent(t).ok("OK").cancel("CANCEL");a.show(n).then(function(){y(e)},function(){console.log("CANCEL")})}function v(e){N.reports=e||{count:0,rows:[]}}function b(){N.query.offset=(N.query.page-1)*N.query.limit,N.apiName&&(N.promise=r[N.apiName].get(N.query,v).$promise)}function f(e,t){a.show({controller:"CreateOrEditReportDialogController",controllerAs:"vm",templateUrl:"app/main/apps/analytics/views/reports/create/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{report:t,reports:N.reports.rows,apiName:N.apiName,currentNode:N.currentNode}})}function E(e,t,n){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),r.analyticCustomReport.save({name:t.name,description:t.description,table:t.table,conditions:t.conditions,parent:N.currentNode.id}).$promise.then(function(e){N.reports.rows.unshift(e),d.success({title:"Report saved!",msg:e.name?e.name+" has been saved!":""});var n=_.map(t.fields,function(t){return _.extend({},t,{CustomReportId:e.id})});return r.analyticFieldReport.bulkCreate(n).$promise}).then(function(e){d.success({title:"Fields saved!",msg:"Fields has been saved!"})}).catch(function(e){d.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),d.error({title:"Decode File Error",msg:e.toString()})}},a.readAsDataURL(e.file)}else d.error({title:"Format Error",msg:"Please use only json files"})}function y(e){N.apiName&&r[N.apiName].delete({id:e.id}).$promise.then(function(){_.remove(N.reports.rows,{id:e.id}),N.reports.count-=1,N.reports.rows.length||N.getReports(),d.success({title:"Report deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETanalyticReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function A(){var e=_.clone(N.selectedReports);return N.selectedReports=[],e}function C(e){var t=a.confirm().title("Are you sure want to delete the selected reports?").htmlContent("<b>"+N.selectedReports.length+" selected</b> will be deleted.").ariaLabel("delete Reports").targetEvent(e).ok("OK").cancel("CANCEL");a.show(t).then(function(){N.selectedReports.forEach(function(e){y(e)}),N.selectedReports=[]})}function x(){N.selectedReports=[]}function T(){N.selectedReports=N.reports.rows}function S(e,t){N.treeDefaultInstance.jstree(!0).deselect_all(),N.treeDefaultInstance.jstree(!0).close_all(),N.currentNode=t.node,N.currentNode.custom=!0,N.apiName="analyticCustomReport",N.query.parent=t.node.id,b()}function O(e,t){N.treeCustomInstance.jstree(!0).deselect_all(),N.treeCustomInstance.jstree(!0).close_all(),N.currentNode=t.node,N.currentNode.custom=!1,N.apiName="analyticDefaultReport",N.query.parent=t.node.id,b()}function w(e,t){r.analyticTreeReport.update({id:2,tree:angular.toJson(N.treeCustomInstance.jstree(!0).get_json("#",{flat:!0}))}).$promise.then(function(){d.success({title:"Node Updated",msg:t.node.text?t.node.text+" has been updated!":"Node has been updated!"})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEanalyticTreeReport",msg:e.data?JSON.stringify(e.data):e.toString()})})}function R(e){return{core:{multiple:!1,animation:!0,error:function(e){console.error("treeCtrl: error from js tree - "+angular.toJson(e))},check_callback:!0,worker:!0},version:1,plugins:e?["contextmenu","dnd","search","state","wholerow"]:["search","state","wholerow"],contextmenu:{items:function(e){return{create:{label:s.instant("ANALYTICS.CREATE"),action:function(){e=N.treeCustomInstance.jstree(!0).create_node(e),N.treeCustomInstance.jstree(!0).edit(e)}},rename:{_disabled:"#"===e.parent,label:s.instant("ANALYTICS.RENAME"),action:function(){N.treeCustomInstance.jstree(!0).edit(e)}},remove:{_disabled:"#"===e.parent,label:s.instant("ANALYTICS.REMOVE"),action:function(){var t=a.confirm().title("Are you sure want to delete the node?").htmlContent("<b>"+(e.text?e.text:"Node")+"</b> and its subnode will be deleted.").ariaLabel("delete node").ok("OK").cancel("CANCEL");a.show(t).then(function(){N.treeCustomInstance.jstree(!0).delete_node(e)})}}}}}}}function I(e){return e?{create_node:w,rename_node:w,move_node:w,delete_node:w,select_node:S}:{select_node:O}}var N=this;N.reports={count:0,rows:[]},N.selectedReports=[],N.query={fields:"createdAt,updatedAt,id,name,description,table,parent,conditions",limit:10,page:1,sort:"-updatedAt"},N.apiName=null,N.currentPath="",N.customTree=!0,N.editstate=c,N.copydialog=m,N.previewdialog=u,N.rundialog=p,N.downloadfile=g,N.deleteconfirm=h,N.success=v,N.getReports=b,N.createOrEditReport=f,N.importReport=E,N.deleteReport=y,N.exportSelectedReports=A,N.deleteSelectedReports=C,N.deselectReports=x,N.selectAllReports=T,N.treeDefaultData=l.rows[0]?angular.fromJson(l.rows[0].tree):[],N.treeCustomData=l.rows[1]?angular.fromJson(l.rows[1].tree):[],N.treeDefaultConfig=R(!1),N.treeCustomConfig=R(!0),N.treeDefaultEvents=I(!1),N.treeCustomEvents=I(!0);var D=!0,L=1;e.$watch("vm.query.filter",function(e,n){D?t(function(){D=!1}):(n||(L=N.query.page),e!==n&&(N.query.page=1),e||(N.query.page=L),N.getReports())}),e.$watch("vm.search",function(e,t){N.treeDefaultInstance&&N.treeDefaultInstance.jstree(!0).search(e),N.treeCustomInstance&&N.treeCustomInstance.jstree(!0).search(e)})}e.$inject=["$scope","$timeout","$document","$mdDialog","$state","$window","$translate","api","treeReports","toasty"],angular.module("app.analytics").controller("ReportsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){d.export={id:d.report.id,name:d.report.name,startDate:new Date(moment().startOf("day")),endDate:new Date(moment().endOf("day")),output:"csv"}}function r(){d.errors=[],i[o].run(_.merge(d.export,{startDate:moment(d.export.startDate).format("YYYY-MM-DD HH:mm:ss"),endDate:moment(d.export.endDate).format("YYYY-MM-DD HH:mm:ss")})).$promise.then(function(e){n.success({title:"Report properly run!",msg:d.report.name?d.report.name+" has been run!":""}),l()}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DESCRIBE",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function l(){t.hide()}var d=this;d.errors=[],d.report=angular.copy(a),d.export={},d.runReport=r,d.closeDialog=l,d.refreshDate=s,s()}e.$inject=["$location","$mdDialog","toasty","report","api","apiName"],angular.module("app.analytics").controller("RunReportDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.squareOdbc.save(p.odbc).$promise.then(function(e){p.odbcs.unshift(e),i.success({title:"Odbc properly created",msg:p.odbc.name?p.odbc.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareOdbc.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.squareOdbc.update({id:p.odbc.id},p.odbc).$promise.then(function(e){var t=_.find(p.odbcs,{id:e.id});t&&_.merge(t,e),i.success({title:"Odbc properly saved!",msg:p.odbc.name?p.odbc.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareOdbc.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The odbc will be deleted.").ariaLabel("Delete Odbc").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.squareOdbc.delete({id:p.odbc.id}).$promise.then(function(){_.remove(p.odbcs,{id:p.odbc.id}),i.success({title:"Odbc properly deleted!",msg:(p.odbc.name||"odbc")+" has been deleted!"}),u(p.odbc)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.squareOdbc.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CALLYSQUARE.EDIT_ODBC",p.odbc=angular.copy(s),p.odbcs=o,p.newOdbc=!1,p.odbc||(p.odbc={},p.title="CALLYSQUARE.NEW_ODBC",p.newOdbc=!0),p.addNewOdbc=l,p.saveOdbc=d,p.deleteOdbc=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","odbcs","odbc","api"],angular.module("app.callysquare").controller("CreateOrEditOdbcDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditOdbcDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/odbcs/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{odbc:e,odbcs:C.odbcs.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the odbc?").htmlContent("<b>"+(e.name||"odbc")+"</b> will be deleted.").ariaLabel("delete odbc").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function p(e,t){return l.squareOdbc.test({id:e.id}).$promise.then(function(){c.success({title:"Square ODBC properly tested",msg:"Connection succeded!"})}).catch(function(e){c.error({title:"Square ODBC properly tested",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){C.odbcs=e||{count:0,rows:[]}}function h(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.squareOdbc.get(C.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditOdbcDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/odbcs/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{odbc:t,odbcs:C.odbcs.rows}})}function b(e){l.squareOdbc.delete({id:e.id}).$promise.then(function(){_.remove(C.odbcs.rows,{id:e.id}),C.odbcs.count-=1,C.odbcs.rows.length||C.getODBC(),c.success({title:"Odbc deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareOdbc",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(C.selectedODBC);return C.selectedODBC=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected odbcs?").htmlContent("<b>"+C.selectedODBC.length+" selected</b> will be deleted.").ariaLabel("delete Odbcs").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){C.selectedODBC.forEach(function(e){b(e)}),C.selectedODBC=[]})}function y(){C.selectedODBC=[]}function A(){C.selectedODBC=C.odbcs.rows}var C=this;C.odbcs=r||{count:0,rows:[]},C.table="odbcs",C.listOrder="",C.listOrderAsc=null,C.selectedODBC=[],C.query={fields:"createdAt,updatedAt,id,name,dsn,description",sort:"-updatedAt",limit:10,page:1},C.editdialog=m,C.deleteconfirm=u,C.testtestOdbc=p,C.success=g,C.getODBC=h,C.createOrEditOdbc=v,C.deleteOdbc=b,C.exportSelectedODBC=f,C.deleteSelectedODBC=E,C.deselectODBC=y,C.selectAllODBC=A;var x=!0,T=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(T=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=T),C.getODBC())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","odbcs","api","msUtils","toasty"],angular.module("app.callysquare").controller("OdbcsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){u.errors=[],i.squareProject.save(u.project).$promise.then(function(e){u.projects.unshift(e),t.success({title:"Project properly created",msg:u.project.name?u.project.name+" has been created!":""}),m(e),u.openFromEditor&&(u.newWindow?s.open("/callysquare/projects/"+e.id,"_blank"):r.go("app.callysquare.projects.edit",{id:e.id}))}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.save"}];for(var n=0;n<e.data.errors.length;n++)t.error({title:e.data.errors[n].type,msg:e.data.errors[n].message})}else t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareProject.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){u.errors=[],i.squareProject.update({id:u.project.id},u.project).$promise.then(function(e){var n=_.find(u.projects,{id:e.id});n&&_.merge(n,e),t.success({title:"Project properly saved!",msg:u.project.name?u.project.name+" has been saved!":""}),m(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){u.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.update"}];for(var n=0;n<e.data.errors.length;n++)t.error({title:e.data.errors[n].type,msg:e.data.errors[n].message})}else t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareProject.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){u.errors=[];var n=e.confirm().title("Are you sure?").content("The project will be deleted.").ariaLabel("Delete Project").ok("Delete").cancel("Cancel").targetEvent(event);e.show(n).then(function(){i.squareProject.delete({id:u.project.id}).$promise.then(function(){_.remove(u.projects,{id:u.project.id}),t.success({title:"Project properly deleted!",msg:u.project.name?u.project.name+" has been deleted!":""}),m(u.project)}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.delete"}]})},function(){})}function m(t){e.hide(t)}var u=this;u.errors=[],u.title="CALLYSQUARE.EDIT_PROJECT",u.project=angular.copy(a),u.newWindow=!0,u.projects=n,u.newProject=!1,u.openFromEditor=o,u.project||(u.project={name:"",description:""},u.title="CALLYSQUARE.NEW_PROJECT",u.newProject=!0),u.addNewProject=l,u.saveProject=d,u.deleteProject=c,u.closeDialog=m}e.$inject=["$mdDialog","toasty","projects","project","api","openFromEditor","$window","$state"],angular.module("app.callysquare").controller("CreateOrEditProjectDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h,v,b,f,E){function y(e,t,n,a){return _.map(e,function(e){return{value:e[t],option:e[n],group:a?e[a]:void 0}})}function A(t){t&&E(C.attributes),e.hide()}var C=this,x={playback:["file_id"],answer:["timeout"],menu:["file_id","digit","response","retry"],getdigits:["file_id","variable_id","mindigit","maxdigit","retry"],getsecretdigits:["file_id","variable_id","mindigit","maxdigit","hiddendigitsnum","retry"],vswitch:["variable_id"],database:["odbc_id","query"],ext_dial:["trunk_name","phone","timeout"],set:["variable_id"],math:["variable_id"],gotoc:["context","extension","priority"],system:["command"],agi:["command"],gotoif:["condition"],saydigits:["digits"],saynumber:["number"],sayphonetic:["text"],record:["file","timeout"],goal:["goalname"],dial:["sip_id","timeout"],queue:["queue_id","timeout"],callback:["list_id","name","phone","delay"],gotoiftime:["interval_id"],voicemail:["mailbox"],subproject:["project_id"],sendSMS:["account_id","to","sms_text"],sendMail:["account_id","to"],sendFax:["account_id","to","attachment_path"],tts:["text"],ispeechtts:["text","key","speed"],ispeechasr:["key","timeout"],custom_app:["application"]},T={queue:["file_id"],database:["variable_id"]};C.cellName=f.tagName,C.attributes=_.map(f.attributes,function(e){return{name:e.name,value:e.value,defaultValue:T[C.cellName]&&_.includes(T[C.cellName],e.name),required:x[C.cellName]&&_.includes(x[C.cellName],e.name)}}),C.values={sip_id:y(s,"id","fullname","role"),trunk_name:y(r,"name","name"),trunk_id:y(r,"id","name"),queue_id:y(l,"id","name"),file_id:y(d,"id","name"),variable_id:y(c,"id","name"),odbc_id:y(m,"id","name"),project_id:y(u,"id","name"),context:y(p,"id","name"),interval_id:function(e,t,n,a){var i=_.filter(e,function(e){return null===e[a]}),o=[];return _.forEach(i,function(i){o.push({value:i[t],option:i[n]});var s=_.filter(e,function(e){return e[a]===i.id});_.forEach(s,function(e){o.push({value:e[t],option:" - "+e[n]})})}),o}(g,"id","name","IntervalId"),account_id:y(h,"id","name"),template_id:y(v,"id","name"),list_id:y(b,"id","name"),answer:[{value:"yes",option:"Yes"},{value:"no",option:"No"}],hiddendigitspos:[{value:"first",option:"First"},{value:"last",option:"Last"}],recordingformat:[{value:"wav",option:"Wav"},{value:"gsm",option:"Gms"}],intkey:[{value:"#",option:"#"},{value:"*",option:"*"}],beep:[{value:"BEEP",option:"Yes"},{value:"NOBEEP",option:"No"}],model:n,ispeech_asr_language:a,ispeech_tts_language:i,google_tts_language:o},C.closeDialog=A,C.getMap=y}e.$inject=["$mdDialog","toasty","ispeechAsrModel","ispeechAsrLanguage","ispeechTtsLanguage","googleTtsLanguage","users","trunks","queues","sounds","variables","databases","projects","contexts","intervals","mailAccounts","templates","lists","cell","saveCallback"],angular.module("app.callysquare").controller("MxGraphDialogController",e)}(),function(){"use strict";function e(){return{require:"ngModel",link:function(e,t,n,a){a.$parsers.push(function(e){return""+e}),a.$formatters.push(function(e){return parseFloat(e)})}}}angular.module("app.callysquare").directive("stringToNumber",e)}(),function(){"use strict";function e(){return[{value:"af",option:"Afrikaans"},{value:"sq",option:"Albanian"},{value:"am",option:"Amharic"},{value:"ar",option:"Arabic"},{value:"hy",option:"Armenian"},{value:"az",option:"Azerbaijani"},{value:"eu",option:"Basque"},{value:"be",option:"Belarusian"},{value:"bn",option:"Bengali"},{value:"bh",option:"Bihari"},{value:"bs",option:"Bosnian"},{value:"br",option:"Breton"},{value:"bg",option:"Bulgarian"},{value:"km",option:"Cambodian"},{value:"ca",option:"Catalan"},{value:"zh-CN",option:"Chinese (Simplified)"},{value:"zh-TW",option:"Chinese (Traditional)"},{value:"co",option:"Corsican"},{value:"hr",option:"Croatian"},{value:"cs",option:"Czech"},{value:"da",option:"Danish"},{value:"nl",option:"Dutch"},{value:"en",option:"English"},{value:"eo",option:"Esperanto"},{value:"et",option:"Estonian"},{value:"fo",option:"Faroese"},{value:"tl",option:"Filipino"},{value:"fi",option:"Finnish"},{value:"fr",option:"French"},{value:"fy",option:"Frisian"},{value:"gl",option:"Galician"},{value:"ka",option:"Georgian"},{value:"de",option:"German"},{value:"el",option:"Greek"},{value:"gn",option:"Guarani"},{value:"gu",option:"Gujarati"},{value:"xx-hacker",option:"Hacker"},{value:"ha",option:"Hausa"},{value:"iw",option:"Hebrew"},{value:"hi",option:"Hindi"},{value:"hu",option:"Hungarian"},{value:"is",option:"Icelandic"},{value:"id",option:"Indonesian"},{value:"ia",option:"Interlingua"},{value:"ga",option:"Irish"},{value:"it",option:"Italian"},{value:"jw",option:"Javanese"},{value:"ja",option:"Japanese"},{value:"kn",option:"Kannada"},{value:"kk",option:"Kazakh"},{value:"rw",option:"Kinyarwanda"},{value:"rn",option:"Kirundi"},{value:"xx-klingon",option:"Klingon"},{value:"ku",option:"Kurdish"},{value:"ko",option:"Korean"},{value:"ky",option:"Kyrgyz"},{value:"lo",option:"Laothian"},{value:"la",option:"Latin"},{value:"lv",option:"Latvian"},{value:"ln",option:"Lingala"},{value:"lt",option:"Lithuanian"},{value:"mk",option:"Macedonian"},{value:"mg",option:"Malagasy"},{value:"ml",option:"Malayalam"},{value:"mt",option:"Maltese"},{value:"mi",option:"Maori"},{value:"mr",option:"Marathi"},{value:"mo",option:"Moldavian"},{value:"mn",option:"Mongolian"},{value:"sr-ME",option:"Montenegrin"},{value:"ne",option:"Nepali"},{value:"no",option:"Norwegian"},{value:"nn",option:"Norwegian (Nynorsk)"},{value:"oc",option:"Occitan"},{value:"or",option:"Oriya"},{value:"om",option:"Oromo"},{value:"ps",option:"Pashto"},{value:"fa",option:"Persian"},{value:"xx-pirate",option:"Pirate"},{value:"pl",option:"Polish"},{value:"pt-BR",option:"Portuguese (Brazil)"},{value:"pt-PT",option:"Portuguese (Portugal)"},{value:"pa",option:"Punjabi"},{value:"qu",option:"Quechua"},{value:"ro",option:"Romanian"},{value:"rm",option:"Romansh"},{value:"ru",option:"Russian"},{value:"gd",option:"Scots Gaelic"},{value:"sr",option:"Serbian"},{value:"sh",option:"Serbo-Croatian"},{value:"st",option:"Sesotho"},{value:"sn",option:"Shona"},{value:"sd",option:"Sindhi"},{value:"si",option:"Sinhalese"},{value:"sk",option:"Slovak"},{value:"sl",option:"Slovenian"},{value:"so",option:"Somali"},{value:"es",option:"Spanish"},{value:"su",option:"Sundanese"},{value:"sw",option:"Swahili"},{value:"sv",option:"Swedish"},{value:"tg",option:"Tajik"},{value:"ta",option:"Tamil"},{value:"tt",option:"Tatar"},{value:"te",option:"Telugu"},{value:"th",option:"Thai"},{value:"ti",option:"Tigrinya"},{value:"to",option:"Tonga"},{value:"tr",option:"Turkish"},{value:"tk",option:"Turkmen"},{value:"tw",option:"Twi"},{value:"ug",option:"Uighur"},{value:"uk",option:"Ukrainian"},{value:"ur",option:"Urdu"},{value:"uz",option:"Uzbek"},{value:"vi",option:"Vietnamese"},{value:"cy",option:"Welsh"},{value:"xh",option:"Xhosa"},{value:"yi",option:"Yiddish"},{value:"yo",option:"Yoruba"},{value:"zu",option:"Zulu"}]}function t(){return[{value:"usenglishfemale",option:"US English Female"},{value:"usenglishmale",option:"US English Male"},{value:"ukenglishfemale",option:"UK English Female"},{value:"ukenglishmale",option:"UK English Male"},{value:"auenglishfemale",option:"Australian English"},{value:"usspanishfemale",option:"US Spanish Female"},{value:"usspanishmale",option:"US Spanish Male"},{value:"chchinesefemale",option:"Chinese Female"},{value:"chchinesemale",option:"Chinese Male"},{value:"hkchinesefemale",option:"Hong Kong Cantonese Female"},{value:"twchinesefemale",option:"Taiwan Chinese Female"},{value:"jpjapanesefemale",option:"Japanese Female"},{value:"jpjapanesemale",option:"Japanese Male"},{value:"krkoreanfemale",option:"Korean Female"},{value:"krkoreanmale",option:"Korean Male"},{value:"caenglishfemale",option:"Canadian English Female"},{value:"huhungarianfemale",option:"Hungarian Female"},{value:"brportuguesefemale",option:"Brazilian Portuguese Female"},{value:"eurportuguesefemale",option:"European Portuguese Female"},{value:"eurportuguesemale",option:"European Portuguese Male"},{value:"eurspanishfemale",option:"European Spanish Female"},{value:"eurspanishmale",option:"European Spanish Male"},{value:"eurcatalanfemale",option:"European Catalan Female"},{value:"eurczechfemale",option:"European Czech Female"},{value:"eurdanishfemale",option:"European Danish Female"},{value:"eurfinnishfemale",option:"European Finnish Female"},{value:"eurfrenchfemale",option:"European French Female"},{value:"eurfrenchmale",option:"European French Male"},{value:"eurnorwegianfemale",option:"European Norwegian Female"},{value:"eurdutchfemale",option:"European Dutch Female"},{value:"eurpolishfemale",option:"European Polish Female"},{value:"euritalianfemale",option:"European Italian Female"},{value:"euritalianmale",option:"European Italian Male"},{value:"eurturkishfemale",option:"European Turkish Female"},{value:"eurturkishmale",option:"European Turkish Male"},{value:"eurgermanfemale",option:"European German Female"},{value:"eurgermanmale",option:"European German Male"},{value:"rurussianfemale",option:"Russian Female"},{value:"rurussianmale",option:"Russian Male"},{value:"swswedishfemale",option:"Swedish Female"},{value:"cafrenchfemale",option:"Canadian French Female"},{value:"cafrenchmale",option:"Canadian French Male"}]}function n(){return[{value:"en-US",option:"English (US)"},{value:"en-CA",option:"English (Canada)"},{value:"en-GB",option:"English (UK)"},{value:"en-AU",option:"English (Australia)"},{value:"es-ES",option:"Spanish (Spain)"},{value:"es-MX",option:"Spanish (Mexico)"},{value:"it-IT",option:"Italian (Italy) / Finnish (Finland)"},{value:"fr-FR",option:"German (Germany)"},{value:"fr-CA",option:"French (Canada)"},{value:"pl-PL",option:"Polish (Poland)"},{value:"pt-PT",option:"Portuguese (Portugal)"},{value:"ca-ES",option:"Catalan (Catalan)"},{value:"zh-TW",option:"Chinese (Taiwan)"},{value:"da-DK",option:"Danish (Denmark)"},{value:"ja-JP",option:"Japanese (Japan)"},{value:"ko-KR",option:"Korean (Korea)"},{value:"nl-NL",option:"Dutch (Netherlands)"},{value:"nb-NO",option:"Norwegian (Norway)"},{value:"pt-BR",option:"Portuguese (Brazil)"},{value:"ru-RU",option:"Russian (Russia)"},{value:"sv-SE",option:"Swedish (Sweden)"},{value:"zh-CN",option:"Chinese (China)"},{value:"zh-HK",option:"Chinese (Hong Kong)"}]}function a(){return[{value:"0",option:"Default"},{value:"date",option:"Date"},{value:"usmoney",option:"US Money"},{value:"numbersto9",option:"Numbers to 9"},{value:"numbersto99",option:"Numbers to 99"},{value:"numbersto999",option:"Numbers to 999"},{value:"time",option:"Time"},{value:"phonenumber",option:"Phone number"},{value:"streets",option:"Streets"},{value:"citystate",option:"US City/States"}]}angular.module("app.callysquare").factory("ispeechAsrModel",a).factory("ispeechAsrLanguage",n).factory("ispeechTtsLanguage",t).factory("googleTtsLanguage",e)}(),function(){"use strict";function e(e,t,n,a){function i(t){t?(a(o.project.preproduction),e.hide(o.project.preproduction)):e.hide()}var o=this;o.project={preproduction:n},o.closeDialog=i}e.$inject=["$mdDialog","toasty","currentXML","saveCallback"],angular.module("app.callysquare").controller("MxGraphEditXMLController",e)}(),function(){"use strict";function e(e,t){function n(e){if(i.errors=[],"text/xml"!==e.file.type&&i.errors.push({message:"The format "+e.file.type+" is not supported!"}),e.file.size>5242880&&i.errors.push({message:"The file is too big. Max 5MB files are supported!"}),!i.errors.length){var t=new FileReader;t.onload=function(e){a(e.target.result)},t.readAsText(e.file)}}function a(n){n?(t(n),e.hide(n)):e.hide()}var i=this;i.errors=[],i.ngFlowOptions={chunkSize:5242880,maxChunkRetries:1,singleFile:!0,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},i.ngFlow={flow:{}},i.dropping=!1,i.closeDialog=a,i.fileAdded=n}e.$inject=["$mdDialog","saveCallback"],angular.module("app.callysquare").controller("MxGraphImportXMLController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],a.squareProject.update({id:s.project.id},{notes:s.project.notes,description:s.project.description}).$promise.then(function(n){t.success({title:"Project updated!",msg:s.project.name?s.project.name+" has been updated!":""}),e.hide(n)}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.update"}]})}function o(){e.hide()}var s=this;s.project=_.clone(n),s.closeDialog=o,s.save=i}e.$inject=["$mdDialog","toasty","project","api"],angular.module("app.callysquare").controller("MxGraphUpdateInfoController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(t){s.errors=[],t?(e.hide(),s.newWindow?a.open("/callysquare/projects/"+s.id,"_blank"):i.go("app.callysquare.projects.edit",{id:s.id})):e.hide()}var s=this;s.projects=n,s.id="",s.newWindow=!0,s.closeDialog=o}e.$inject=["$mdDialog","toasty","projects","$window","$state"],angular.module("app.callysquare").controller("MxGraphOpenProjectController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){delete d.project.id,i.squareProject.save(d.project).$promise.then(function(n){t.success({title:"Project properly created",msg:d.project.name?d.project.name+" has been created!":""}),e.hide(n),d.newWindow?o.open("/callysquare/projects/"+n.id,"_blank"):s.go("app.callysquare.projects.edit",{id:n.id})}).catch(function(e){console.error(e),d.errors=e.data.errors||[{message:e.toString(),type:"api.squareProject.save"}]})}function l(){e.hide()}var d=this;d.project=angular.copy(n),d.project.name+="_new",d.project.preproduction=a,d.newWindow=!0,d.closeDialog=l,d.save=r}e.$inject=["$mdDialog","toasty","project","currentXML","api","$window","$state"],angular.module("app.callysquare").controller("MxGraphSaveProjectAsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h,v,b,f){function E(){new EditorUi(N,new Editor,document.getElementById("geEditor")).openString(N.project.preproduction,N.project.name,N.project)}function y(e,a){n.show({controller:"MxGraphDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/dialog/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{users:s.rows||[],trunks:r.rows||[],queues:l.rows||[],sounds:d.rows||[],variables:c.rows||[],databases:m.rows||[],contexts:u.rows||[],projects:p.rows||[],intervals:g.rows||[],mailAccounts:h.rows||[],templates:v.rows||[],lists:b.rows||[],cell:e,saveCallback:a}})}function A(e){n.show({controller:"CreateOrEditProjectDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/create/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{project:e,projects:p.rows,openFromEditor:!0}})}function C(){n.show({controller:"MxGraphOpenProjectController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/open/open.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{projects:p.rows||[]}})}function x(e){n.show({controller:"MxGraphSaveProjectAsController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/saveAs/saveAs.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{project:N.project,currentXML:e}}).then(function(e){e&&p.rows.push(e)})}function T(e){n.show({controller:"CreateOrEditVariableDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/variables/create/dialog.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{variable:e,variables:c.rows}})}function S(e){n.show({controller:"MxGraphUpdateInfoController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/info/info.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,locals:{project:N.project}}).then(function(e){e&&_.merge(N.project,e)})}function O(e,a){n.show({controller:"MxGraphEditXMLController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/edit/edit.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{currentXML:e,saveCallback:a}}).then(function(e){e&&(N.project.preproduction=e)})}function w(e){n.show({controller:"MxGraphImportXMLController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/edit/import/import.html",parent:angular.element(t.body),clickOutsideToClose:!0,locals:{saveCallback:e}}).then(function(e){e&&(N.project.preproduction=e)})}function R(e,t){var n={preproduction:e};t&&(n.production=e),i.squareProject.update({id:N.project.id},n).$promise.then(function(e){a.success({title:"Project "+(t?"published":"saved")+"!",msg:N.project.name?N.project.name+" has been "+(t?"published":"saved")+"!":""}),N.project.preproduction=e.preproduction}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareProject",msg:e.data?JSON.stringify(e.data):e.toString()})})}function I(){e.go("app.callysquare.projects")}var N=this;N.project=o||{},N.saveOrPublishProject=R,N.$onInit=E,N.openDialog=y,N.newProject=A,N.openProject=C,N.saveProjectAs=x,N.newVariable=T,N.updateInfo=S,N.editXML=O,N.importXML=w,N.gotoProjects=I}e.$inject=["$state","$document","$mdDialog","toasty","api","project","users","trunks","queues","sounds","variables","databases","contexts","projects","intervals","mailAccounts","templates","lists","$window"],angular.module("app.callysquare").controller("ProjectController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(e,n){t.go("app.callysquare.projects.edit",{id:e.id})}function m(e,t){var n=s.confirm().title("Are you sure want to delete the project?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete project").targetEvent(t).ok("OK").cancel("CANCEL");s.show(n).then(function(){h(e)},function(){console.log("CANCEL")})}function u(e){y.projects=e||{count:0,rows:[]}}function p(){y.query.offset=y.query.page-1,y.promise=i.squareProject.get(y.query,u).$promise}function g(e,t){s.show({controller:"CreateOrEditProjectDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/projects/create/dialog.html",parent:angular.element(r.body),targetEvent:e,clickOutsideToClose:!0,locals:{project:t,projects:y.projects.rows,openFromEditor:null}})}function h(e){i.squareProject.delete({id:e.id}).$promise.then(function(){_.remove(y.projects.rows,{id:e.id}),y.projects.count-=1,y.projects.rows.length||y.getProjects(),d.success({title:"Project deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareProject",msg:e.data?JSON.stringify(e.data):e.toString()})})}function v(){var e=_.clone(y.selectedProjects);return y.selectedProjects=[],e}function b(e){var t=s.confirm().title("Are you sure want to delete the selected projects?").htmlContent("<b>"+y.selectedProjects.length+" selected</b> will be deleted.").ariaLabel("delete Projects").targetEvent(e).ok("OK").cancel("CANCEL");s.show(t).then(function(){y.selectedProjects.forEach(function(e){h(e)}),y.selectedProjects=[]})}function f(){y.selectedProjects=[]}function E(){y.selectedProjects=y.projects.rows}var y=this;y.projects=a||{count:0,rows:[]},y.table="projects",y.listOrder="",y.listOrderAsc=null,y.selectedProjects=[],y.query={fields:"id,name,description,notes",sort:"-updatedAt",limit:10,page:1},y.editstate=c,y.deleteconfirm=m,y.success=u,y.getProjects=p,y.createOrEditProject=g,y.deleteProject=h,y.exportSelectedProjects=v,y.deleteSelectedProjects=b,y.deselectProjects=f,y.selectAllProjects=E;var A=!0,C=1;e.$watch("vm.query.filter",function(e,t){A?l(function(){A=!1}):(t||(C=y.query.page),e!==t&&(y.query.page=1),e||(y.query.page=C),y.getProjects())})}e.$inject=["$scope","$state","$mdSidenav","projects","api","msUtils","$mdDialog","$document","$timeout","toasty"],angular.module("app.callysquare").controller("ProjectsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.squareRecording.save(p.squareRecording).$promise.then(function(e){p.squareRecordings.unshift(e),i.success({title:"SquareRecording properly created",msg:p.squareRecording.name?p.squareRecording.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.squareRecording.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareRecording.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.squareRecording.update({id:p.squareRecording.id},p.squareRecording).$promise.then(function(e){var t=_.find(p.squareRecordings,{id:e.id});t&&_.merge(t,e),i.success({title:"SquareRecording properly saved!",msg:p.squareRecording.name?p.squareRecording.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.squareRecording.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.squareRecording.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The squareRecording will be deleted.").ariaLabel("Delete SquareRecording").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.squareRecording.delete({id:p.squareRecording.id}).$promise.then(function(){_.remove(p.squareRecordings,{id:p.squareRecording.id}),i.success({title:"SquareRecording properly deleted!",msg:(p.squareRecording.name||"squareRecording")+" has been deleted!"}),u(p.squareRecording)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.squareRecording.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CALLYSQUARE.EDIT_SQUARERECORDING",p.squareRecording=angular.copy(s),p.squareRecordings=o,p.newSquareRecording=!1,p.squareRecording||(p.squareRecording={},p.title="CALLYSQUARE.NEW_SQUARERECORDING",p.newSquareRecording=!0),p.addNewSquareRecording=l,p.saveSquareRecording=d,p.deleteSquareRecording=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","squareRecordings","squareRecording","api"],angular.module("app.callysquare").controller("CreateOrEditSquareRecordingDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,n){return l.squareRecording.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/square/recordings/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the squareRecording?").htmlContent("<b>"+(e.name||"squareRecording")+"</b> will be deleted.").ariaLabel("delete squareRecording").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.squareRecordings=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.squareRecording.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSquareRecordingDialogController",controllerAs:"vm",templateUrl:"app/main/apps/callysquare/views/squareRecordings/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{squareRecording:t,squareRecordings:A.squareRecordings.rows}})}function v(e){l.squareRecording.delete({id:e.id}).$promise.then(function(){_.remove(A.squareRecordings.rows,{id:e.id}),A.squareRecordings.count-=1,A.squareRecordings.rows.length||A.getSquareRecordings(),c.success({title:"SquareRecording deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsquareRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSquareRecordings);return A.selectedSquareRecordings=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected squareRecordings?").htmlContent("<b>"+A.selectedSquareRecordings.length+" selected</b> will be deleted.").ariaLabel("delete SquareRecordings").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSquareRecordings.forEach(function(e){v(e)}),A.selectedSquareRecordings=[]})}function E(){A.selectedSquareRecordings=[]}function y(){A.selectedSquareRecordings=A.squareRecordings.rows}var A=this;A.squareRecordings=r||{count:0,rows:[]},A.table="squareRecordings",A.listOrder="",A.listOrderAsc=null,A.selectedSquareRecordings=[],A.query={fields:"createdAt,updatedAt,id,projectName,uniqueid,callerid,extension,audio,createdAt",sort:"-updatedAt",limit:10,page:1},A.downloadfile=m,A.deleteconfirm=u,A.success=p,A.getSquareRecordings=g,A.createOrEditSquareRecording=h,A.deleteSquareRecording=v,A.exportSelectedSquareRecordings=b,A.deleteSelectedSquareRecordings=f,A.deselectSquareRecordings=E,A.selectAllSquareRecordings=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSquareRecordings())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","squareRecordings","api","msUtils","toasty"],angular.module("app.callysquare").controller("SquareRecordingsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.chat.chatQueues.edit",{id:e.id,chatQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the chatQueue?").htmlContent("<b>"+(e.name||"chatQueue")+"</b> will be deleted.").ariaLabel("delete chatQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.chatQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.chatQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditChatQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatQueue:t,chatQueues:A.chatQueues.rows}})}function v(e){l.chatQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.chatQueues.rows,{id:e.id}),A.chatQueues.count-=1,A.chatQueues.rows.length||A.getChatQueues(),c.success({title:"ChatQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedChatQueues);return A.selectedChatQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected chatQueues?").htmlContent("<b>"+A.selectedChatQueues.length+" selected</b> will be deleted.").ariaLabel("delete ChatQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedChatQueues.forEach(function(e){v(e)}),A.selectedChatQueues=[]})}function E(){A.selectedChatQueues=[]}function y(){A.selectedChatQueues=A.chatQueues.rows}var A=this;A.chatQueues=r||{count:0,rows:[]},A.table="chatQueues",A.listOrder="",A.listOrderAsc=null,A.selectedChatQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"Round Robin Memory",value:"'roundrobun'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getChatQueues=g,A.createOrEditChatQueue=h,A.deleteChatQueue=v,A.exportSelectedChatQueues=b,A.deleteSelectedChatQueues=f,A.deselectChatQueues=E,A.selectAllChatQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getChatQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","chatQueues","api","msUtils","toasty"],angular.module("app.chat").controller("ChatQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.chatQueue.save(p.chatQueue).$promise.then(function(e){p.chatQueues.unshift(e),i.success({title:"ChatQueue properly created",msg:p.chatQueue.name?p.chatQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.chatQueue.update({id:p.chatQueue.id},p.chatQueue).$promise.then(function(e){var t=_.find(p.chatQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"ChatQueue properly saved!",msg:p.chatQueue.name?p.chatQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The chatQueue will be deleted.").ariaLabel("Delete ChatQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.chatQueue.delete({id:p.chatQueue.id}).$promise.then(function(){_.remove(p.chatQueues,{id:p.chatQueue.id}),i.success({title:"ChatQueue properly deleted!",msg:(p.chatQueue.name||"chatQueue")+" has been deleted!"}),u(p.chatQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.chatQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CHAT.EDIT_CHATQUEUE",p.chatQueue=angular.copy(s),p.chatQueues=o,p.newChatQueue=!1,p.chatQueue||(p.chatQueue={strategy:"beepall"},p.title="CHAT.NEW_CHATQUEUE",p.newChatQueue=!0),p.addNewChatQueue=l,p.saveChatQueue=d,p.deleteChatQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","chatQueues","chatQueue","api"],angular.module("app.chat").controller("CreateOrEditChatQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.chatQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("CHAT.ALL_TEAMS"),labelSelected:i.instant("CHAT.SELECTED_TEAMS"),transferCallback:function(e,a){n.chatQueue[a?"removeTeams":"addTeams"]({id:s.chatQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:chatQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.chatQueue.getTeams({id:s.chatQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","chatQueue","$translate"],angular.module("app.chat").controller("ChatQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"ChatQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{chatQueue:e,chatQueues:d.chatQueues?d.chatQueues.rows:[]}})}function r(){e.go("app.chat.chatQueues")}function l(){i.chatQueue.update({id:d.chatQueue.id},d.chatQueue).$promise.then(function(){a.success({title:"ChatQueue updated!",msg:d.chatQueue.name?d.chatQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.chatQueue=e.params.chatQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoChatQueues=r,d.saveChatQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","chatQueue"],angular.module("app.chat").controller("ChatQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.chat.chatWebsites.edit",{id:e.id,chatWebsite:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the chatWebsite?").htmlContent("<b>"+(e.name||"chatWebsite")+"</b> will be deleted.").ariaLabel("delete chatWebsite").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.chatWebsites=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.chatWebsite.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditChatWebsiteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatWebsite:t,chatWebsites:A.chatWebsites.rows}})}function v(e){l.chatWebsite.delete({id:e.id}).$promise.then(function(){_.remove(A.chatWebsites.rows,{id:e.id}),A.chatWebsites.count-=1,A.chatWebsites.rows.length||A.getChatWebsites(),c.success({title:"ChatWebsite deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatWebsite",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedChatWebsites);return A.selectedChatWebsites=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected chatWebsites?").htmlContent("<b>"+A.selectedChatWebsites.length+" selected</b> will be deleted.").ariaLabel("delete ChatWebsites").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedChatWebsites.forEach(function(e){v(e)}),A.selectedChatWebsites=[]})}function E(){A.selectedChatWebsites=[]}function y(){A.selectedChatWebsites=A.chatWebsites.rows}var A=this;A.chatWebsites=r||{count:0,rows:[]},A.table="chatWebsites",A.listOrder="",A.listOrderAsc=null,A.selectedChatWebsites=[],A.query={fields:"createdAt,updatedAt,id,name,address,remote,ListId,fidelity,timeout,description,color,color_focus,color_button,header_shape,animation,defaultWhiteLabel,whiteLabel,defaultLogo,download_transcript,enquiry_enable,enquiry_forwarding,enquiry_forwarding_address,OfflineTemplateId,name_title,username_placeholder,email_title,email_placeholder,header_online,online_message,start_chat_button,agents_busy,header_offline,offline_message,message_title,enquiry_message_placeholder,enquiry_button,rating_message,rating_send,rating_skip,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,page:1},A.arrayheader_shape=_.keyBy([{option:"Rounded",value:"'rounded'"},{option:"Squared",value:"'squared'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getChatWebsites=g,A.createOrEditChatWebsite=h,A.deleteChatWebsite=v,A.exportSelectedChatWebsites=b,A.deleteSelectedChatWebsites=f,A.deselectChatWebsites=E,A.selectAllChatWebsites=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getChatWebsites())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","chatWebsites","api","msUtils","toasty"],angular.module("app.chat").controller("ChatWebsitesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.chatWebsite.save(p.chatWebsite).$promise.then(function(e){p.chatWebsites.unshift(e),i.success({title:"ChatWebsite properly created",msg:p.chatWebsite.name?p.chatWebsite.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatWebsite.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatWebsite.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.chatWebsite.update({id:p.chatWebsite.id},p.chatWebsite).$promise.then(function(e){var t=_.find(p.chatWebsites,{id:e.id});t&&_.merge(t,e),i.success({title:"ChatWebsite properly saved!",msg:p.chatWebsite.name?p.chatWebsite.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatWebsite.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatWebsite.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The chatWebsite will be deleted.").ariaLabel("Delete ChatWebsite").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.chatWebsite.delete({id:p.chatWebsite.id}).$promise.then(function(){_.remove(p.chatWebsites,{id:p.chatWebsite.id}),i.success({title:"ChatWebsite properly deleted!",msg:(p.chatWebsite.name||"chatWebsite")+" has been deleted!"}),u(p.chatWebsite)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.chatWebsite.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CHAT.EDIT_CHATWEBSITE",p.chatWebsite=angular.copy(s),p.chatWebsites=o,p.newChatWebsite=!1,p.chatWebsite||(p.chatWebsite={remote:n.protocol()+"://"+n.host()+":"+n.port(),header_shape:"rounded"},p.title="CHAT.NEW_CHATWEBSITE",p.newChatWebsite=!0),p.addNewChatWebsite=l,p.saveChatWebsite=d,p.deleteChatWebsite=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","chatWebsites","chatWebsite","api"],angular.module("app.chat").controller("CreateOrEditChatWebsiteDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.chatWebsite=e,h.query.id=h.chatWebsite.id,h.query.ChatWebsiteId=h.chatWebsite.id,h.getChatWebsiteChatDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the chatDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete chatDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.chatWebsiteChatDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.chatWebsite.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditChatDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/chat/views/chatWebsites/edit/chatDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{chatDisposition:t,chatDispositions:h.chatWebsiteChatDispositions.rows}})}function p(e){r.chatDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.chatWebsiteChatDispositions.rows,{id:e.id}),h.chatWebsiteChatDispositions.count-=1,h.chatWebsiteChatDispositions.rows.length||h.getChatWebsiteChatDispositions(),s.success({title:"ChatDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatWebsite",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected chatDispositions?").htmlContent("<b>"+h.selectedChatWebsiteChatDispositions.length+" selected</b> will be deleted.").ariaLabel("delete chatDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedChatWebsiteChatDispositions.forEach(function(e){p(e)}),h.selectedChatWebsiteChatDispositions=[]})}var h=this;h.chatWebsite={},h.chatWebsiteChatDispositions={count:0,rows:[]},h.selectedChatWebsiteChatDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getChatWebsiteChatDispositions=m,h.createOrEditChatWebsiteChatDisposition=u,h.deleteChatWebsiteChatDisposition=p,h.deleteSelectedChatWebsiteChatDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getChatWebsiteChatDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.chat").controller("ChatWebsiteChatDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.chatDisposition.save(p.chatDisposition).$promise.then(function(e){p.chatDispositions.unshift(e),i.success({title:"ChatDisposition properly created",msg:p.chatDisposition.name?p.chatDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.chatDisposition.update({id:p.chatDisposition.id},p.chatDisposition).$promise.then(function(e){var t=_.find(p.chatDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"ChatDisposition properly saved!",msg:p.chatDisposition.name?p.chatDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.chatDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.chatDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The chatDisposition will be deleted.").ariaLabel("Delete ChatDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.chatDisposition.delete({id:p.chatDisposition.id}).$promise.then(function(){_.remove(p.chatDispositions,{id:p.chatDisposition.id}),i.success({title:"ChatDisposition properly deleted!",msg:(p.chatDisposition.name||"chatDisposition")+" has been deleted!"}),u(p.chatDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.chatDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CHAT.EDIT_CHATDISPOSITION",p.chatDisposition=angular.copy(s),p.chatDispositions=o,p.newChatDisposition=!1,p.chatDisposition||(p.chatDisposition={},p.title="CHAT.NEW_CHATDISPOSITION",p.newChatDisposition=!0),t.params.id&&(p.chatDisposition.ChatWebsiteId=t.params.id),p.addNewChatDisposition=l,p.saveChatDisposition=d,p.deleteChatDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","chatDispositions","chatDisposition","api"],angular.module("app.chat").controller("CreateOrEditChatDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.chat.chatWebsites")}function r(){i.chatWebsite.update({id:l.chatWebsite.id},l.chatWebsite).$promise.then(function(){a.success({title:"ChatWebsite updated!",msg:l.chatWebsite.name?l.chatWebsite.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETchatWebsite",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.chatWebsite=e.params.chatWebsite||o||{},l.selectedTab=e.params.tab||0,l.gotoChatWebsites=s,l.saveChatWebsite=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.template.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.templates=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplates",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","chatWebsite"],angular.module("app.chat").controller("ChatWebsiteController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.contactmanager.companies.edit",{id:e.id,company:e})}function u(e,t){n.go("app.contactmanager.contacts",{CompanyId:e.id})}function p(e,t){var n=i.confirm().title("Are you sure want to delete the company?").htmlContent("<b>"+(e.name||"company")+"</b> will be deleted.").ariaLabel("delete company").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function g(e){C.companies=e||{count:0,rows:[]}}function h(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.cmCompany.get(C.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditCompanyDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/companies/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{company:t,companies:C.companies.rows}})}function b(e){l.cmCompany.delete({id:e.id}).$promise.then(function(){_.remove(C.companies.rows,{id:e.id}),C.companies.count-=1,C.companies.rows.length||C.getCompanies(),c.success({title:"Company deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmCompany",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(C.selectedCompanies);return C.selectedCompanies=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected companies?").htmlContent("<b>"+C.selectedCompanies.length+" selected</b> will be deleted.").ariaLabel("delete Companys").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){C.selectedCompanies.forEach(function(e){b(e)}),C.selectedCompanies=[]})}function y(){C.selectedCompanies=[]}function A(){C.selectedCompanies=C.companies.rows}var C=this;C.companies=r||{count:0,rows:[]},C.table="companies",C.listOrder="",C.listOrderAsc=null,C.selectedCompanies=[],C.query={fields:"createdAt,updatedAt,id,name,phone,vat,fax,companyId,type,website,emailDomain,email,description,sStreet,sPostalCode,sCity,sCountry,street,postalCode,city,country",sort:"-updatedAt",limit:10,page:1},C.editstate=m,C.gotocontactsgoto=u,C.deleteconfirm=p,C.success=g,C.getCompanies=h,C.createOrEditCompany=v,C.deleteCompany=b,C.exportSelectedCompanies=f,C.deleteSelectedCompanies=E,C.deselectCompanies=y,C.selectAllCompanies=A;var x=!0,T=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(T=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=T),C.getCompanies())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","companies","api","msUtils","toasty"],angular.module("app.contactmanager").controller("CompaniesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmCompany.save(p.company).$promise.then(function(e){p.companies.unshift(e),i.success({title:"Company properly created",msg:p.company.name?p.company.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCompany.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCompany.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmCompany.update({id:p.company.id},p.company).$promise.then(function(e){var t=_.find(p.companies,{id:e.id});t&&_.merge(t,e),i.success({title:"Company properly saved!",msg:p.company.name?p.company.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCompany.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCompany.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The company will be deleted.").ariaLabel("Delete Company").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmCompany.delete({id:p.company.id}).$promise.then(function(){_.remove(p.companies,{id:p.company.id}),i.success({title:"Company properly deleted!",msg:(p.company.name||"company")+" has been deleted!"}),u(p.company)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCompany.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_COMPANY",p.company=angular.copy(s),p.companies=o,p.newCompany=!1,p.company||(p.company={},p.title="CONTACTMANAGER.NEW_COMPANY",p.newCompany=!0),p.addNewCompany=l,p.saveCompany=d,p.deleteCompany=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","companies","company","api"],angular.module("app.contactmanager").controller("CreateOrEditCompanyDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(t,n){e.go("app.contactmanager.contacts",{CompanyId:t.id})}function r(){e.go("app.contactmanager.companies")}function l(){i.cmCompany.update({id:d.company.id},d.company).$promise.then(function(){a.success({title:"Company updated!",msg:d.company.name?d.company.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmCompany",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.company=e.params.company||o||{},d.selectedTab=e.params.tab||0,d.gotogoto=s,d.gotoCompanies=r,d.saveCompany=l}e.$inject=["$state","$mdDialog","$document","toasty","api","company"],angular.module("app.contactmanager").controller("CompanyController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u){function p(e){var t=i.prompt().title("What would you name your list?").placeholder("List name").ariaLabel("List name").targetEvent(e).ok("Ok").cancel("Cancel");return i.show(t).then(function(e){if(e)return o.cmList.save({name:e});m.error({title:"Error creating list!",msg:"Invalid list name."})}).then(function(e){e&&(N.lists.rows.push(e),m.success({title:"List properly created!",msg:e.name?e.name+" has been created!":""}))})}function g(){return u.hasPermission(303)||u.hasRole("admin")}function h(e){var t=i.prompt().title("What would you name your company?").placeholder("Company name").ariaLabel("Company name").targetEvent(e).ok("Ok").cancel("Cancel");return i.show(t).then(function(e){if(e)return o.cmCompany.save({name:e});m.error({title:"Error creating company!",msg:"Invalid company name."})}).then(function(e){e&&(N.companies.rows.push(e),m.success({title:"Company properly created!",msg:e.name?e.name+" has been created!":""}))})}function v(e){var t=i.prompt().title("What would you name your tag?").placeholder("Tag name").ariaLabel("Tag name").targetEvent(e).ok("Ok").cancel("Cancel");return i.show(t).then(function(e){if(e)return o.tag.save({name:e});m.error({title:"Error creating tag!",msg:"Invalid tag name."})}).then(function(e){e&&(N.tags.rows.push(e),m.success({title:"Tag properly created!",msg:e.tag?e.name+" has been created!":""}))})}function b(e,n,a){N.disableDialog=!1,Papa.parse(n.file,{skipEmptyLines:!0,header:!0,woerker:!0,complete:function(n){a.files=[],N.disableDialog=!0,i.show({controller:"UploadContactsDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/upload/upload.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!1,locals:{lists:r,companies:d,contacts:n.data,fields:n.meta.fields}}).then(function(){N.getContacts()}).catch(function(e){console.error()})}})}function f(e,t){a.go("app.contactmanager.contacts.edit",{id:e.id})}function E(e,t){var n=i.confirm().title("Are you sure want to delete the contact?").htmlContent("<b>"+(e.firstName||e.email||e.phone||"Contact")+"</b> will be deleted.").ariaLabel("delete contact").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){S(e)})}function y(e){N.contacts=e||{count:0,rows:[]}}function A(){N.query.offset=(N.query.page-1)*N.query.limit,N.promise=o.cmContact.get(N.query,y).$promise}function C(e,n){n&&n.dateOfBirth&&(n.dateOfBirth=new Date(n.dateOfBirth)),i.show({controller:"CreateOrEditContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/create/dialog.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,locals:{ListId:N.query.ListId||a.params.ListId,CompanyId:N.query.CompanyId||a.params.CompanyId,contact:n,contacts:N.contacts.rows},resolve:{lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name"})}],companies:["apiResolver",function(e){return e.resolve("cmCompany@get",{fields:"id,name"})}]}})}function x(e,n){i.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name"})}]},locals:{contacts:N.contacts.rows}})}function T(e,n){i.show({controller:"MergeContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/merge/dialog.html",parent:angular.element(t.body),targetEvent:e,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name"})}]},locals:{contacts:N.contacts.rows}})}function S(e){o.cmContact.delete({id:e.id}).$promise.then(function(){_.remove(N.contacts.rows,{id:e.id}),N.contacts.count-=1,N.contacts.rows.length||N.getContacts(),m.success({title:"Contact deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){m.error({title:e.status+" - "+e.statusText,msg:JSON.stringify(e.data)||e.message.join(" ")})})}function O(){var e=_.clone(N.selectedContacts);return N.selectedContacts=[],e}function w(e){var t=i.confirm().title("Are you sure want to delete the selected contacts?").htmlContent("<b>"+N.selectedContacts.length+" selected</b> will be deleted.").ariaLabel("delete Contacts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){N.selectedContacts.forEach(function(e){S(e)}),N.selectedContacts=[]})}function R(){N.selectedContacts=[]}function I(){N.selectedContacts=N.contacts.rows}var N=this;u.getCurrentUser();N.contacts=s||{count:0,rows:[]},N.options={hidden:!1,hover:!1,isOpen:!1},N.table="cm_contacts",N.listOrder="",N.listOrderAsc=null,N.disableDialog=!0,N.selectedContacts=[],N.lists=r||{rows:[],count:0},N.companies=d||{rows:[],count:0},N.tags=c||{rows:[],count:0},N.listsMap=l,N.selectedTags=[],N.selectedList=null,N.selectedCompany=null,N.query={fields:"id,firstName,lastName,phone,email,updatedAt",sort:"-updatedAt",limit:10,page:1},N.editdialog=f,N.deleteconfirm=E,N.success=y,N.getContacts=A,N.mergeContact=T,N.duplicateContact=x,N.createOrEditContact=C,N.deleteContact=S,N.exportSelectedContacts=O,N.deleteSelectedContacts=w,N.deselectContacts=R,N.selectAllContacts=I,N.createTag=v,N.createList=p,N.createCompany=h,N.uploadContacts=b,N.hasPermission=g,a.params.ListId&&(N.selectedList=a.params.ListId),a.params.CompanyId&&(N.selectedCompany=a.params.CompanyId),e.$watch("vm.options.isOpen",function(t){t?n(function(){e.tooltipVisible=N.options.isOpen},600):e.tooltipVisible=N.options.isOpen});var D=!0,L=1;e.$watch("vm.query.filter",function(e,t){D?n(function(){D=!1}):(t||(L=N.query.page),e!==t&&(N.query.page=1),e||(N.query.page=L),N.getContacts())},!0),e.$watch("vm.selectedList",function(e,t){e!==t&&(N.query.ListId=N.selectedList||void 0,N.getContacts())}),e.$watch("vm.selectedCompany",function(e,t){e!==t&&(N.query.CompanyId=N.selectedCompany||void 0,N.getContacts())}),e.$watch("vm.selectedTags",function(e,t){(e.length||t.length)&&(N.query.tags=N.selectedTags.length?N.selectedTags.join():void 0,N.getContacts())})}e.$inject=["$scope","$document","$timeout","$state","$mdDialog","api","contacts","lists","listsMap","companies","tags","toasty","Auth"],angular.module("app.contactmanager").controller("ContactsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l){function d(){h.errors=[],l.cmContact.save(h.contact).$promise.then(function(e){h.contacts.unshift(e),t.success({title:"Contact properly created",msg:h.contact.name?h.contact.name+" has been created!":""}),g()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){h.errors=e.data.errors||[{message:e.toString(),type:"api.user.save"}];for(var n=0;n<e.data.errors.length;n++)t.error({title:e.data.errors[n].type,msg:e.data.errors[n].message})}else t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.contacts.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){h.errors=[],l.cmContact.update({id:h.contact.id},h.contact).$promise.then(function(e){var n=_.find(h.contacts,{id:e.id});n&&_.merge(n,e),t.success({title:"Contact properly saved!",msg:h.contact.name?h.contact.name+" has been saved!":""}),g()}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){h.errors=e.data.errors||[{message:e.toString(),type:"api.contact.update"}];for(var n=0;n<e.data.errors.length;n++)t.error({title:e.data.errors[n].type,msg:e.data.errors[n].message})}else t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.contact.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function m(e){if(e)return l.cmList.getCustomFields({id:e}).$promise.then(function(e){e&&(h.customFields=e)}).catch(function(e){console.error(e)});h.customFields={rows:[],count:0}}function u(n){h.errors=[];var a=e.confirm().title("Are you sure?").content("The contact will be deleted.").ariaLabel("Delete Contact").ok("Delete").cancel("Cancel").targetEvent(n);e.show(a).then(function(){l.cmContact.delete({id:h.contact.id}).$promise.then(function(){_.remove(h.contacts,{id:h.contact.id}),t.success({title:"Contact properly deleted!",msg:h.contact.name?h.contact.name+" has been deleted!":""}),g()}).catch(function(e){console.error(e),h.errors=e.data.errors||[{message:e.toString(),type:"api.contact.delete"}]})},function(){})}function p(e){return new Date(e)}function g(){e.hide()}var h=this;h.errors=[],h.title="CONTACTMANAGER.EDIT_CONTACT",h.contact=angular.copy(o),h.contacts=n||{rows:[],count:0},h.lists=a||{rows:[],count:0},h.companies=i||{rows:[],count:0},h.customFields={rows:[],count:0},h.newContact=!1,h.contact?(delete h.contact.List,h.ListId=h.contact.ListId||void 0):(h.contact={ListId:s||void 0,CompanyId:r||void 0},h.title="CONTACTMANAGER.NEW_CONTACT",h.newContact=!0),h.addNewContact=d,h.saveContact=c,h.deleteContact=u,h.closeDialog=g,h.getCustomFields=m,h.getDateFromString=p}e.$inject=["$mdDialog","toasty","contacts","lists","companies","contact","ListId","CompanyId","api"],angular.module("app.tools").controller("CreateOrEditContactDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){l.errors=[],delete l.contact.id,o.cmContact.save(l.contact).$promise.then(function(e){a.unshift(e),t.success({title:"Contact properly created",msg:l.contact.name?l.contact.name+" has been created!":""}),r()}).catch(function(e){console.error(e),l.errors=e.data.errors||[{message:e.toString(),type:"api.contact.save"}]})}function r(){e.hide()}var l=this;l.errors=[],l.title="CONTACTMANAGER.COPY_CONTACT",l.contact=angular.copy(n),l.lists=i||{rows:[],count:0},l.addNewContact=s,l.closeDialog=r}e.$inject=["$mdDialog","toasty","contact","contacts","lists","api"],angular.module("app.tools").controller("DuplicateContactDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){m.errors=[],r.cmHopper.update({id:m.hopper.id},m.hopper).$promise.then(function(e){var t=_.find(m.hoppers,{id:e.id});t&&_.merge(t,e),i.success({title:"Hopper properly saved!",msg:m.hopper.name?m.hopper.name+" has been saved!":""}),c(e)}).catch(function(e){console.error(e),m.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.update"}]})}function d(e){return new Date(e)}function c(e){a.hide(e)}var m=this;m.errors=[],m.title="CONTACTMANAGER.EDIT_HOPPER",m.hopper=angular.copy(s),m.hoppers=o,m.newHopper=!1,m.hopper||(m.hopper={},m.title="CONTACTMANAGER.NEW_HOPPER",m.newHopper=!0),m.saveHopper=l,m.getDateFromString=d,m.closeDialog=c}e.$inject=["$scope","$state","$location","$mdDialog","toasty","hoppers","hopper","api"],angular.module("app.contactmanager.contacts").controller("EditHopperDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h){function v(e){return function(t){N[e]=t||{count:0,rows:[]}}}function b(e,t){i.show({controller:"EditHopperDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/edit/hoppers/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopper:t,hoppers:N.hoppers.rows}})}function f(e,t){var n=i.confirm().title("Are you sure want to delete the agent?").htmlContent("<b>"+(e.phone||"hopper")+"</b> will be deleted.").ariaLabel("delete hopper").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){E(e)},function(){console.log("CANCEL")})}function E(e){return s.cmHopper.delete({id:e.id}).$promise.then(function(){_.remove(N.hoppers.rows,{id:e.id}),N.hoppers.count--,N.hoppers.rows.length||N.getHoppers(),o.success({title:"Hopper deleted!",msg:e.phone?e.phone+" has been deleted!":""})}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETEhopper",msg:e.data?JSON.stringify(e.data):e.toString()})})}function y(){console.log("getHoppers"),N.queryHopper.offset=(N.queryHopper.page-1)*N.queryHopper.limit,N.promise=s.cmHopper.get(N.queryHopper,v("hoppers")).$promise}function A(){N.queryFinal.offset=(N.queryFinal.page-1)*N.queryFinal.limit,N.promise=s.cmHopperFinal.get(N.queryFinal,v("finals")).$promise}function C(){N.queryHistory.offset=(N.queryHistory.page-1)*N.queryHistory.limit,N.promise=s.cmHopperHistory.get(N.queryHistory,v("histories")).$promise}function x(e){if(N.contact.ListId){var t=i.confirm().title("You are selecting the list number: "+N.contact.ListId).textContent("Warning! You won't select a different list for the contact "+N.contact.firstName||N.contact.lastName||N.contact.id).targetEvent(e).ok("Ok").cancel("Cancel");return i.show(t).then(N.onSelectListSuccess).catch(function(){N.contact.ListId=null})}}function T(){return s.cmList.getCustomFields({id:N.contact.ListId}).$promise.then(function(e){N.customFields=e||{rows:[],count:0}}).catch(function(e){console.error(e)})}function S(e,t){i.show({controller:"CreateOrEditCompanyDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/companies/create/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{companies:[]},resolve:{company:["apiResolver",function(e){return e.resolve("cmCompany@get",{id:t})}]}})}function O(e){i.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,resolve:{lists:["apiResolver",function(e){return e.resolve("cmList@get",{fields:"id,name"})}]},locals:{contacts:m.rows,contact:r}})}function w(){s.cmContact.update({id:N.contact.id},N.contact).$promise.then(function(){o.success({title:"Contact updated!",msg:N.contact.name?N.contact.name+" has been updated!":""})}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEcontact",msg:e.data?JSON.stringify(e.data):e.toString()})})}function R(e){return new Date(e)}function I(){n.go("app.contactmanager.contacts",{},{reload:!0,notify:!0})}var N=this;N.contact=r||{},N.hoppers=l||{rows:[],count:0},N.finals=d||{rows:[],count:0},N.histories=c||{rows:[],count:0},N.companies=u||{rows:[],count:0},N.lists=p||{rows:[],count:0},N.customFields=g||{rows:[],count:0},N.tags=h||{rows:[],count:0},N.queryHopper={ContactId:N.contact.id,fields:"id,phone,scheduledat",sort:"-updatedAt",limit:10,page:1},N.queryFinal={ContactId:N.contact.id,fields:"uniqueid,phone,status,starttime,disposition",sort:"-updatedAt",limit:10,page:1},N.queryHistory={ContactId:N.contact.id,fields:"id,ContactId,phone,scheduledat,starttime,endtime",sort:"-updatedAt",limit:10,page:1},N.selectedTab=n.params.tab||0,N.gotoContacts=I,N.duplicateContact=O,N.saveContact=w,N.editCompany=S,N.onSelectList=x,N.onSelectListSuccess=T,N.getDateFromString=R,N.getHoppers=y,N.getFinals=A,N.getHistories=C,N.deleteconfirm=f,N.editHopper=b;var D=!0,L=1;e.$watch("vm.queryHopper.filter",function(e,n){D?t(function(){D=!1}):(n||(L=N.queryHopper.page),e!==n&&(N.queryHopper.page=1),e||(N.queryHopper.page=L),N.getHoppers())}),e.$watch("vm.queryFinal.filter",function(e,n){D?t(function(){D=!1}):(n||(L=N.queryFinal.page),e!==n&&(N.queryFinal.page=1),e||(N.queryFinal.page=L),N.getFinals())}),e.$watch("vm.queryHistory.filter",function(e,n){D?t(function(){D=!1}):(n||(L=N.queryHistory.page),e!==n&&(N.queryHistory.page=1),e||(N.queryHistory.page=L),N.getHistories())})}e.$inject=["$scope","$timeout","$state","$document","$mdDialog","toasty","api","contact","hoppers","finals","histories","contacts","companies","lists","customFields","tags"],angular.module("app.contactmanager.contacts").controller("ContactController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(t,a,o){_.remove(c.contacts,{id:a.id});var r=e.confirm().title("Would you like to merge your contacs?").textContent("All unfilled values of the contact #"+o.id+" will be overwritten by the fields of the contact #"+a.id+".").targetEvent(t).ok("Ok").cancel("Cancel");e.show(r).then(function(){var e=a.id,t=o.id,r=_.mergeWith(a,o,function(e,t){return Array.isArray(t)&&!t.length?e:t||e});s.cmContact.update({id:r.id},r).$promise.then(function(){return s.cmContact.delete({id:e})}).then(function(){_.remove(i,{id:e}),_.merge(_.find(i,{id:t}),r),n.success({title:"Contact properly merged!"})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:MERGE_CONTACT",msg:e.data?JSON.stringify(e.data):e.toString()})})})}function l(){c.errors=[],delete c.contact.id,s.cmContact.save(c.contact).$promise.then(function(e){i.unshift(e),n.success({title:"Contact properly created",msg:c.contact.name?c.contact.name+" has been created!":""}),d()}).catch(function(e){console.error(e),c.errors=e.data.errors||[{message:e.toString(),type:"api.contact.save"}]})}function d(){e.hide()}var c=this;c.errors=[],c.title="CONTACTMANAGER.MERGE_CONTACT",c.contact=angular.copy(a),c.lists=o||[],c.change=function(){c.searchTerm?s.cmContact.get({fields:"id,firstName,lastName,phone,email",filter:c.searchTerm,ListId:a.ListId}).$promise.then(function(e){c.contacts=e.rows}).catch(function(e){console.error(e)}):c.contacts=[]},c.addNewContact=l,c.showConfirm=r,c.closeDialog=d}e.$inject=["$mdDialog","$scope","toasty","contact","contacts","lists","api"],angular.module("app.tools").controller("MergeContactDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(){return d.cmList.getCustomFields({id:g.ListId}).$promise.then(function(e){g.customFields=e}).catch(function(e){console.error(e)})}function m(){g.uploading=!0,u(g.contacts.length-1)}function u(e){if(e<0)return g.stop=!0,void(g.uploading=!1);for(var t=[];e>=0&&t.length<h;){var n={};for(var a in g.binding)g.binding.hasOwnProperty(a)&&(n[a]=g.contacts[e][g.binding[a]]),n.ListId=g.ListId,n.CompanyId=g.CompanyId,n.duplicates=g.duplicates;t.push(n),e--}return d.cmContact.bulkCreate(t).$promise.then(function(e){g.successAmount+=e.success,g.failureAmount+=e.failure,g.duplicatesAmount+=e.duplicates}).catch(function(e){console.error(e)}).finally(function(){u(e)})}function p(){t.hide()}var g=this,h=50;g.successAmount=0,g.failureAmount=0,g.duplicatesAmount=0,g.uploading=!1,g.stop=!1,g.contactFields=[{key:"firstName",required:!0},{key:"lastName",required:!1},{key:"phone",required:!0},{key:"mobile",required:!1},{key:"email",required:!1},{key:"dateOfBirth",required:!1},{key:"country",required:!1},{key:"city",required:!1},{key:"street",required:!1},{key:"postalCode",required:!1},{key:"fax",required:!1}],g.contacts=s,g.binding={},g.fields=r,g.lists=i||{rows:[],count:0},g.companies=o||{rows:[],count:0},g.customFields={rows:[],count:0},g.closeDialog=p,g.onChangeList=c,g.upload=m}e.$inject=["$cookies","$mdDialog","$interval","$q","lists","companies","contacts","fields","toasty","api"],angular.module("app.tools").controller("UploadContactsDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmCustomField.save(p.globalCustomField).$promise.then(function(e){p.globalCustomFields.unshift(e),i.success({title:"GlobalCustomField properly created",msg:p.globalCustomField.name?p.globalCustomField.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCustomField.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmCustomField.update({id:p.globalCustomField.id},p.globalCustomField).$promise.then(function(e){var t=_.find(p.globalCustomFields,{id:e.id});t&&_.merge(t,e),i.success({title:"GlobalCustomField properly saved!",msg:p.globalCustomField.name?p.globalCustomField.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCustomField.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The globalCustomField will be deleted.").ariaLabel("Delete GlobalCustomField").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmCustomField.delete({id:p.globalCustomField.id}).$promise.then(function(){_.remove(p.globalCustomFields,{id:p.globalCustomField.id}),i.success({title:"GlobalCustomField properly deleted!",msg:(p.globalCustomField.name||"globalCustomField")+" has been deleted!"}),u(p.globalCustomField)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_GLOBALCUSTOMFIELD",p.globalCustomField=angular.copy(s),p.globalCustomFields=o,p.newGlobalCustomField=!1,p.globalCustomField||(p.globalCustomField={type:"text"},p.title="CONTACTMANAGER.NEW_GLOBALCUSTOMFIELD",p.newGlobalCustomField=!0),p.addNewGlobalCustomField=l,p.saveGlobalCustomField=d,p.deleteGlobalCustomField=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","globalCustomFields","globalCustomField","api"],angular.module("app.contactmanager").controller("CreateOrEditGlobalCustomFieldDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditGlobalCustomFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/globalCustomFields/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{globalCustomField:e,globalCustomFields:A.globalCustomFields.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the globalCustomField?").htmlContent("<b>"+(e.name||"globalCustomField")+"</b> will be deleted.").ariaLabel("delete globalCustomField").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.globalCustomFields=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.cmCustomField.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditGlobalCustomFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/globalCustomFields/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{globalCustomField:t,globalCustomFields:A.globalCustomFields.rows}})}function v(e){l.cmCustomField.delete({id:e.id}).$promise.then(function(){_.remove(A.globalCustomFields.rows,{id:e.id}),A.globalCustomFields.count-=1,A.globalCustomFields.rows.length||A.getGlobalCustomFields(),c.success({title:"GlobalCustomField deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmCustomField",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedGlobalCustomFields);return A.selectedGlobalCustomFields=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected globalCustomFields?").htmlContent("<b>"+A.selectedGlobalCustomFields.length+" selected</b> will be deleted.").ariaLabel("delete GlobalCustomFields").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedGlobalCustomFields.forEach(function(e){v(e)}),A.selectedGlobalCustomFields=[]})}function E(){A.selectedGlobalCustomFields=[]}function y(){A.selectedGlobalCustomFields=A.globalCustomFields.rows}var A=this;A.globalCustomFields=r||{count:0,rows:[]},A.table="globalCustomFields",A.listOrder="",A.listOrderAsc=null,A.selectedGlobalCustomFields=[],A.query={fields:"createdAt,updatedAt,id,alias,type,values,required",sort:"-updatedAt",ListId:"null",limit:10,page:1},A.arraytype=_.keyBy([{option:"Text",value:"'text'"},{option:"Select",value:"'select'"},{option:"Number",value:"'number'"},{option:"Switch",value:"'switch'"},{option:"Datetime",value:"'datetime'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getGlobalCustomFields=g,A.createOrEditGlobalCustomField=h,A.deleteGlobalCustomField=v,A.exportSelectedGlobalCustomFields=b,A.deleteSelectedGlobalCustomFields=f,A.deselectGlobalCustomFields=E,A.selectAllGlobalCustomFields=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getGlobalCustomFields())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","globalCustomFields","api","msUtils","toasty"],angular.module("app.contactmanager").controller("GlobalCustomFieldsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmList.save(p.list).$promise.then(function(e){p.lists.unshift(e),i.success({title:"List properly created",msg:p.list.name?p.list.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmList.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmList.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmList.update({id:p.list.id},p.list).$promise.then(function(e){var t=_.find(p.lists,{id:e.id});t&&_.merge(t,e),i.success({title:"List properly saved!",msg:p.list.name?p.list.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmList.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmList.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The list will be deleted.").ariaLabel("Delete List").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmList.delete({id:p.list.id}).$promise.then(function(){_.remove(p.lists,{id:p.list.id}),i.success({title:"List properly deleted!",msg:(p.list.name||"list")+" has been deleted!"}),u(p.list)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmList.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_LIST",p.list=angular.copy(s),p.lists=o,p.newList=!1,p.list||(p.list={},p.title="CONTACTMANAGER.NEW_LIST",p.newList=!0),p.addNewList=l,p.saveList=d,p.deleteList=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","lists","list","api"],angular.module("app.contactmanager").controller("CreateOrEditListDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){return n.cmList[c.isVoiceRealtime()?"getMembers":"getAgents"]({id:c.list.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){return c.isVoiceRealtime()?c.selectedItems=e.rows?_.map(e.rows,function(e){return e.id=e.UserId,e.fullname=e.membername,e.penalty=e.hasOwnProperty("penalty")?"penalty "+e.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[]:c.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserList?"penalty "+e.UserList.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.selectedItems=c.selectedItems,n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){c.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserList?"penalty "+e.UserList.penalty:"",e.internal=e.internal?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.items=_.differenceBy(c.items,c.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function l(){return o}function d(){e.hide()}var c=this;c.list=a,c.penalty=0,c.items=[],c.selectedItems=[],c.closeDialog=d,c.isVoiceRealtime=l,c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:"internal",line3:"penalty",labelAll:s.instant("CONTACTMANAGER.ALL_AGENTS"),labelSelected:s.instant("CONTACTMANAGER.SELECTED_AGENTS"),transferCallback:function(e,a){n.cmList[a?"removeAgents":"addAgents"]({id:c.list.id,ids:_.map(e,c.isVoiceRealtime()&&a?"UserId":"id"),penalty:c.penalty||0,realtime:o||!1}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"}),a||r()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:cmList.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},r()}e.$inject=["$mdDialog","toasty","api","list","lists","realtime","$translate"],angular.module("app.contactmanager").controller("ListagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.list=e,h.query.id=h.list.id,h.query.ListId=h.list.id,h.getListCustomFields()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the customField?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete customField").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.listCustomFields=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.cmList.getCustomFields(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditCustomFieldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/edit/customFields/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{customField:t,customFields:h.listCustomFields.rows}})}function p(e){r.cmCustomField.delete({id:e.id}).$promise.then(function(){_.remove(h.listCustomFields.rows,{id:e.id}),h.listCustomFields.count-=1,h.listCustomFields.rows.length||h.getListCustomFields(),s.success({title:"CustomField deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmList",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected customFields?").htmlContent("<b>"+h.selectedListCustomFields.length+" selected</b> will be deleted.").ariaLabel("delete customFields").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedListCustomFields.forEach(function(e){p(e)}),h.selectedListCustomFields=[]})}var h=this;h.list={},h.listCustomFields={count:0,rows:[]},h.selectedListCustomFields=[],h.query={fields:"createdAt,updatedAt,id,alias,type,values,required",limit:10,page:1},h.arraytype=_.keyBy([{option:"Text",value:"'text'"},{option:"Select",value:"'select'"},{option:"Number",value:"'number'"},{option:"Switch",value:"'switch'"},{option:"Datetime",value:"'datetime'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.init=l,h.deleteConfirm=d,h.success=c,h.getListCustomFields=m,h.createOrEditListCustomField=u,h.deleteListCustomField=p,h.deleteSelectedListCustomFields=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getListCustomFields())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.contactmanager").controller("ListCustomFieldsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmList.addCustomField({id:t.params.id},p.customField).$promise.then(function(e){p.customFields.unshift(e),i.success({title:"CustomField properly created",msg:p.customField.name?p.customField.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCustomField.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmCustomField.update({id:p.customField.id},p.customField).$promise.then(function(e){var t=_.find(p.customFields,{id:e.id});t&&_.merge(t,e),i.success({title:"CustomField properly saved!",msg:p.customField.name?p.customField.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmCustomField.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The customField will be deleted.").ariaLabel("Delete CustomField").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmCustomField.delete({id:p.customField.id}).$promise.then(function(){_.remove(p.customFields,{id:p.customField.id}),i.success({title:"CustomField properly deleted!",msg:(p.customField.name||"customField")+" has been deleted!"}),u(p.customField)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmCustomField.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_CUSTOMFIELD",p.customField=angular.copy(s),p.customFields=o,p.newCustomField=!1,p.customField||(p.customField={type:"text"},p.title="CONTACTMANAGER.NEW_CUSTOMFIELD",p.newCustomField=!0),t.params.id&&(p.customField.ListId=t.params.id),e.$watch("vm.customField.type",function(e,t){if(e!==t)switch(e){case"text":p.customField.values="";break;case"select":p.customField.values=[]}}),p.addNewCustomField=l,p.saveCustomField=d,p.deleteCustomField=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","customFields","customField","api"],angular.module("app.contactmanager").controller("CreateOrEditCustomFieldDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(t,n){e.go("app.contactmanager.contacts",{ListId:t.id})}function r(e,a){t.show({controller:"ListagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/edit/agentadd/agentadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{list:e,lists:c.lists?c.lists.rows:[],realtime:!1}})}function l(){e.go("app.contactmanager.lists")}function d(){i.cmList.update({id:c.list.id},c.list).$promise.then(function(){a.success({title:"List updated!",msg:c.list.name?c.list.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmList",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.list=e.params.list||o||{},c.selectedTab=e.params.tab||0,c.gotogoto=s,c.agentadddialog=r,c.gotoLists=l,c.saveList=d}e.$inject=["$state","$mdDialog","$document","toasty","api","list"],angular.module("app.contactmanager").controller("ListController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.list=e,h.query.id=h.list.id,h.query.ListId=h.list.id,h.getListVoiceDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the voiceDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete voiceDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.listVoiceDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.cmList.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditVoiceDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/edit/voiceDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceDisposition:t,voiceDispositions:h.listVoiceDispositions.rows}})}function p(e){r.voiceDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.listVoiceDispositions.rows,{id:e.id}),h.listVoiceDispositions.count-=1,h.listVoiceDispositions.rows.length||h.getListVoiceDispositions(),s.success({title:"VoiceDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmList",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected voiceDispositions?").htmlContent("<b>"+h.selectedListVoiceDispositions.length+" selected</b> will be deleted.").ariaLabel("delete voiceDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedListVoiceDispositions.forEach(function(e){p(e)}),h.selectedListVoiceDispositions=[]})}var h=this;h.list={},h.listVoiceDispositions={count:0,rows:[]},h.selectedListVoiceDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getListVoiceDispositions=m,h.createOrEditListVoiceDisposition=u,h.deleteListVoiceDisposition=p,h.deleteSelectedListVoiceDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getListVoiceDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.contactmanager").controller("ListVoiceDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceDisposition.save(p.voiceDisposition).$promise.then(function(e){p.voiceDispositions.unshift(e),i.success({title:"VoiceDisposition properly created",msg:p.voiceDisposition.name?p.voiceDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceDisposition.update({id:p.voiceDisposition.id},p.voiceDisposition).$promise.then(function(e){var t=_.find(p.voiceDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"VoiceDisposition properly saved!",msg:p.voiceDisposition.name?p.voiceDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The voiceDisposition will be deleted.").ariaLabel("Delete VoiceDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceDisposition.delete({id:p.voiceDisposition.id}).$promise.then(function(){_.remove(p.voiceDispositions,{id:p.voiceDisposition.id}),i.success({title:"VoiceDisposition properly deleted!",msg:(p.voiceDisposition.name||"voiceDisposition")+" has been deleted!"}),u(p.voiceDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="CONTACTMANAGER.EDIT_VOICEDISPOSITION",p.voiceDisposition=angular.copy(s),p.voiceDispositions=o,p.newVoiceDisposition=!1,p.voiceDisposition||(p.voiceDisposition={},p.title="CONTACTMANAGER.NEW_VOICEDISPOSITION",p.newVoiceDisposition=!0),t.params.id&&(p.voiceDisposition.ListId=t.params.id),p.addNewVoiceDisposition=l,p.saveVoiceDisposition=d,p.deleteVoiceDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","voiceDispositions","voiceDisposition","api"],angular.module("app.contactmanager").controller("CreateOrEditVoiceDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.contactmanager.lists.edit",{id:e.id,list:e})}function u(e,t){n.go("app.contactmanager.contacts",{ListId:e.id})}function p(e,n){var a=t.document.createElement("a");a.href="/api/cm/lists/"+e.id+"/contacts/csv",a.target="_self",a.click()}function g(e,t){i.show({controller:"ListagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/edit/agentadd/agentadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{list:e,lists:T.lists?T.lists.rows:[],realtime:!1}})}function h(e,t){var n=i.confirm().title("Are you sure want to delete the list?").htmlContent("<b>"+(e.name||"list")+"</b> will be deleted.").ariaLabel("delete list").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){E(e)},function(){console.log("CANCEL")})}function v(e){T.lists=e||{count:0,rows:[]}}function b(){T.query.offset=(T.query.page-1)*T.query.limit,T.promise=l.cmList.get(T.query,v).$promise}function f(e,t){i.show({controller:"CreateOrEditListDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/lists/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{list:t,lists:T.lists.rows}})}function E(e){l.cmList.delete({id:e.id}).$promise.then(function(){_.remove(T.lists.rows,{id:e.id}),T.lists.count-=1,T.lists.rows.length||T.getLists(),c.success({title:"List deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcmList",msg:e.data?JSON.stringify(e.data):e.toString()})})}function y(){var e=_.clone(T.selectedLists);return T.selectedLists=[],e}function A(e){var t=i.confirm().title("Are you sure want to delete the selected lists?").htmlContent("<b>"+T.selectedLists.length+" selected</b> will be deleted.").ariaLabel("delete Lists").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){T.selectedLists.forEach(function(e){E(e)}),T.selectedLists=[]})}function C(){T.selectedLists=[]}function x(){T.selectedLists=T.lists.rows}var T=this;T.lists=r||{count:0,rows:[]},T.table="lists",T.listOrder="",T.listOrderAsc=null,T.selectedLists=[],T.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},T.editstate=m,T.gotocontactsgoto=u,T.exportcsvcontactsexport=p,T.agentadddialog=g,T.deleteconfirm=h,T.success=v,T.getLists=b,T.createOrEditList=f,T.deleteList=E,T.exportSelectedLists=y,T.deleteSelectedLists=A,T.deselectLists=C,T.selectAllLists=x;var S=!0,O=1;e.$watch("vm.query.filter",function(e,t){S?s(function(){S=!1}):(t||(O=T.query.page),e!==t&&(T.query.page=1),e||(T.query.page=O),T.getLists())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","lists","api","msUtils","toasty"],angular.module("app.contactmanager").controller("ListsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p){function g(e){e.id=_.random(1e10),e.openedAt=new Date,e.saved=!1;var t=A.tabs.length;A.tabs.push(e),A.currentTab=C+t}function h(e,t){var n={type:"contact",title:e?e.firstName||e.phone:i.instant("DASHBOARDS.NEW_CONTACT"),icon:"icon-account-circle",contact:e,userLists:c,lists:m,companies:u,tags:p,calls:t?[t]:[]};if(e){var a=_.findLastIndex(A.tabs,function(t){return"contact"===t.type&&t.contact&&t.contact.id===e.id});if(a<0){if(e.ListId)return r.cmList.getDispositions({id:e.ListId}).$promise.then(function(t){return n.dispositions=t,r.cmList.getCustomFields({id:e.ListId}).$promise}).then(function(e){n.customFields=e}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEcontact",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){g(n)});g(n)}else t&&A.tabs[a].calls.push(t),A.currentTab=C+a}else g(n)}function v(e){e&&e.uri&&a.open(e.uri)}function b(e){e&&e.html&&n.show({template:e.html,clickOutsideToClose:!0})}function f(e){return r.cmContact.get({ListId:e.ListId,phone:e.calleridnum,nolimit:!0}).$promise.then(function(t){if(t.count)for(var n=0;n<t.rows.length;n+=1)A.addContactTab(t.rows[n],e);else A.addContactTab({firstName:e.calleridname||e.calleridnum||e.uniqueid,ListId:e.ListId,phone:e.calleridnum},e)}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontact",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(e,t){var a=n.confirm().title("Are you sure want to close the contact?").ariaLabel("Close Contact").ok("OK").cancel("CANCEL");t.saved?A.tabs.splice(e,1):n.show(a).then(function(){A.tabs.splice(e,1)})}function y(){a.localStorage.setItem("motion.user:"+A.user.id,JSON.stringify({tabs:A.tabs}))}var A=this,C=4;A.tabs=[],A.user=s.getCurrentUser(),A.currentTab=0,A.globalUserLists=c||{count:0,rows:[]},A.globalLists=m||{count:0,rows:[]},A.globalCompanies=u||{count:0,rows:[]},A.globalTags=p||{count:0,rows:[]},A.localStorageSet=y,A.onContactManager=f,A.onBrowserUrl=v,A.onBrowserPopup=b,A.addContactTab=h,A.closeTab=E,A.motionUser=a.localStorage.getItem("motion.user:"+A.user.id),A.motionUser&&(A.motionUser=JSON.parse(A.motionUser),A.tabs=A.motionUser.tabs),l.on("trigger:contactmanager",A.onContactManager),l.on("trigger:browser:url",A.onBrowserUrl),l.on("trigger:browser:popup",A.onBrowserPopup);var x=o(A.localStorageSet,1500);e.$watch("vm.currentTab",function(e,n){switch(A.currentTab){case 3:t.go("app.dashboards.general.mycontacts");break;case 2:t.go("app.dashboards.general.contacts");break;case 1:t.go("app.dashboards.general.recordings");break;case 0:t.go("app.dashboards.general.dashboard")}}),e.$on("$stateChangeSuccess",function(e,t,n,a,i){t.data&&(A.currentTab=t.data.selectedTab)}),e.$on("$destroy",function(){l.removeAllListeners("trigger:contactmanager"),l.removeAllListeners("trigger:browser:url"),l.removeAllListeners("trigger:browser:popup"),o.cancel(x)})}e.$inject=["$scope","$state","$mdDialog","$window","$translate","$interval","Auth","api","socket","toasty","globalUserLists","globalLists","globalCompanies","globalTags"],angular.module("app.dashboards").controller("AgentDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){g.contacts=e||{count:0,rows:[]}}function d(){g.query.offset=(g.query.page-1)*g.query.limit,g.promise=s.cmContact.get(g.query,l).$promise}function c(e,n){t.$parent.vm.addContactTab(n)}function m(){g.query.ListId=g.defaultLists,g.getContacts()}function u(t,n){a.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(e.body),targetEvent:t,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:o.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:g.contacts.rows}})}function p(t,n){a.show({controller:"MergeContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/merge/dialog.html",parent:angular.element(e.body),targetEvent:t,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:o.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:g.contacts.rows}})}var g=this;g.contacts={count:0,rows:[]},g.lists=r||{count:0,rows:[]},g.listsMap=_.mapValues(_.keyBy(r.rows,"id"),"name"),g.defaultLists=g.lists.rows?_.map(g.lists.rows,"id").join(","):void 0,g.query={sort:"-updatedAt",limit:10,page:1,ListId:g.defaultLists},g.getContacts=d,g.refreshContacts=m,g.mergeContact=p,g.duplicateContact=u,g.openContact=c,g.getContacts();var h=!0,v=1;t.$watch("vm.query.filter",function(e,t){h?n(function(){h=!1}):(t||(v=g.query.page),e!==t&&(g.query.page=1),e||(g.query.page=v),g.getContacts())})}e.$inject=["$document","$scope","$timeout","$mdDialog","$stateParams","Auth","api","lists"],angular.module("app.dashboards").controller("AgentContactsDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){g.voiceQueues=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function d(){g.query.offset=(g.query.page-1)*g.query.limit,g.promise=n.user.getQueues(g.query,l).$promise}function c(e){return _.size(e)}function m(){_.forIn(g.voiceQueues,function(e,t){g.rpcVoiceQueues[t]&&(g.voiceQueues[t].waiting=g.rpcVoiceQueues[t].waiting||0)})}function u(e){g.voiceQueues[e.id]&&g.rpcVoiceQueues[e.id]&&(g.rpcVoiceQueues[e.id]=e,g.voiceQueues[e.id].waiting=e.waiting||0)}function p(e){g.rpcVoiceQueuesChannels[e.uniqueid]&&e.queuecallerleaveAt?delete g.rpcVoiceQueuesChannels[e.uniqueid]:g.rpcVoiceQueuesChannels[e.uniqueid]=e}var g=this;g.voiceQueuesTotal=o.count?o.count:0,g.voiceQueues=o?_.keyBy(o.rows?o.rows:[],"id"):{},g.rpcVoiceQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},g.query={id:a.getCurrentUser().id,fields:"id,name",channel:"voice",limit:10,page:1},g.rpcVoiceQueuesChannels=r?_.keyBy(r.rows?r.rows:[],"uniqueid"):{},g.queryChannels={limit:10,page:1},g.success=l,g.getVoiceQueues=d,g.getSize=c,g.onSaveQueue=u,g.onSaveChannel=p,i.on("voice_queue:save",g.onSaveQueue),i.on("voice_queue_channel:save",g.onSaveChannel),m();var h=!0,v=1;e.$watch("vm_dc.query.filter",function(e,n){h?t(function(){h=!1}):(n||(v=g.query.page),e!==n&&(g.query.page=1),e||(g.query.page=v),g.getVoiceQueues())}),e.$on("$destroy",function(){i.removeAllListeners("voice_queue:save"),i.removeAllListeners("voice_queue_channel:save")})}e.$inject=["$scope","$timeout","api","Auth","socket","voiceQueues","rpcVoiceQueues","rpcVoiceQueuesChannels"],angular.module("app.dashboards").controller("AgentDashboardDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(n,l,d){function c(){C.errors=[],i.cmContact.save(C.contact).$promise.then(function(e){return C.newContact=!1,C.tab.title=e.firstName||e.phone,C.tab.contact=C.contact,i.user.addContacts({id:s.getCurrentUser().id,ids:[e.id]})}).then(function(){C.tab.saved=!0,o.success({title:"Contact properly created",msg:C.contact.firstName?C.contact.firstName+" has been created!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){C.errors=e.data.errors||[{message:e.toString(),type:"api.contact.save"}];for(var t=0;t<e.data.errors.length;t+=1)o.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.contact.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function m(){C.errors=[],i.cmContact.update({id:C.contact.id},C.contact).$promise.then(function(e){return C.tab.title=e.firstName||e.phone,C.tab.contact=C.contact,i.user.addContacts({id:s.getCurrentUser().id,ids:[e.id]})}).then(function(){C.tab.saved=!0,o.success({title:"Contact properly updated!",msg:C.contact.name?C.contact.name+" has been updated!":""})}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){C.errors=e.data.errors||[{message:e.toString(),type:"api.contact.save"}];for(var t=0;t<e.data.errors.length;t+=1)o.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.contact.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function u(e){return function(t){n[e]=t||{count:0,rows:[]}}}function p(){C.queryHopper.offset=(C.queryHopper.page-1)*C.queryHopper.limit,C.promise=i.cmHopper.get(C.queryHopper,u("hoppers")).$promise}function g(){C.queryFinal.offset=(C.queryFinal.page-1)*C.queryFinal.limit,C.promise=i.cmHopperFinal.get(C.queryFinal,u("finals")).$promise}function h(){C.queryHistory.offset=(C.queryHistory.page-1)*C.queryHistory.limit,C.promise=i.cmHopperHistory.get(C.queryHistory,u("histories")).$promise}function v(n){e.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:C.contact.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:s.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:[]}})}function b(n){e.show({controller:"MergeContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/merge/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:C.contact.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:s.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:[]}})}function f(e){var t=_.findLastIndex(C.tab.calls,function(t){return t.uniqueid===e.uniqueid});t>=0&&(C.tab.calls[t].disposedAt=new Date)}function E(n,a){C.newContact?o.error({title:"ATTENTION",msg:"Before to dispose, please save the contact!"}):e.show({controller:"DisposeCallDialogController",controllerAs:"vm",templateUrl:"app/main/apps/dashboards/views/general/agent/directives/contact/dispose/dialog.html",parent:angular.element(t.body),targetEvent:a,clickOutsideToClose:!1,locals:{dispositions:C.tab.dispositions,contact:C.contact,call:a}}).then(function(e){o.success({title:"Call properly disposed",msg:"Call has been disposed "+e})}).finally(function(){_.remove(C.tab.calls,function(e){return e.uniqueid==a.uniqueid})})}function y(e){return i.cmList.getCustomFields({id:e}).$promise.then(function(e){C.tab.customFields=e}).catch(function(e){o.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEcontact",msg:e.data?JSON.stringify(e.data):e.toString()})})}function A(e){return new Date(e)}var C=n;if(C.contact=C.tab.contact,C.newContact=!1,C.currentTab=0,C.contact&&C.contact.id||(C.newContact=!0),C.contact&&C.contact.id)return i.user.addContacts({id:s.getCurrentUser().id,ids:[C.contact.id]});C.queryHopper={ContactId:C.contact.id,fields:"id,phone,scheduledat",sort:"-updatedAt",limit:10,page:1},C.queryFinal={ContactId:C.contact.id,fields:"uniqueid,calleridnum,statedesc,starttime,disposition",sort:"-updatedAt",limit:10,page:1},C.queryHistory={ContactId:C.contact.id,fields:"uniqueid,calleridnum,statedesc,scheduledat,starttime,endtime",sort:"-updatedAt",limit:10,page:1},C.hoppers={rows:[],count:0},C.finals={rows:[],count:0},C.histories={rows:[],count:0},C.addNewContact=c,C.saveContact=m,C.getCustomFields=y,C.disposeCall=E,C.duplicateContact=v,C.mergeContact=b,C.getDateFromString=A,C.getHoppers=p,C.getFinals=g,C.getHistories=h,r.on("voice_queue_channel:remove",f),function(){C.getHoppers(),C.getFinals(),C.getHistories()}(),C.$watch("currentTab",function(e,t){console.log("current tab",e),1===C.currentTab&&(console.log("test"),C.getHoppers(),C.getFinals(),C.getHistories())});var x=!0,T=1;C.$watch("queryHopper.filter",function(e,t){x?a(function(){x=!1}):(t||(T=C.queryHopper.page),e!==t&&(C.queryHopper.page=1),e||(C.queryHopper.page=T),C.getHoppers())}),C.$watch("queryFinal.filter",function(e,t){x?a(function(){x=!1}):(t||(T=C.queryFinal.page),e!==t&&(C.queryFinal.page=1),e||(C.queryFinal.page=T),C.getFinals())}),C.$watch("queryHistory.filter",function(e,t){x?a(function(){x=!1}):(t||(T=C.queryHistory.page),e!==t&&(C.queryHistory.page=1),e||(C.queryHistory.page=T),C.getHistories())})}return{restrict:"E",transclude:!0,scope:{localStorageSet:"&onLocalStorageSet",tab:"="},link:l,templateUrl:"app/main/apps/dashboards/views/general/agent/directives/contact/contact.html"}}e.$inject=["$mdDialog","$document","$window","$timeout","api","toasty","Auth","socket"],angular.module("app.dashboards").directive("contact",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u){function p(){var e=y.choice.toLowerCase();return{id:y.call.uniqueid,disposition:y.choice,dispositionat:moment(),amd:"amd"===e,fax:"fax"===e,blacklist:"blacklist"===e}}function g(){return l.voiceCallReport.update({id:y.call.uniqueid,userDisposition:y.choice,UserId:u.getCurrentUser().id,ContactId:y.contact.id}).$promise.catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEVOICECALLREPORT",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(){return l.cmHopperFinal.update(p()).$promise.catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATECMHOPPERFINAL",msg:e.data?JSON.stringify(e.data):e.toString()})})}function v(){return l.cmHopperHistory.update(p()).$promise.catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATECMHOPPERHISTORY",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(e){if(e)return l.voiceQueue.getBlackLists({id:e,type:"outbound",fields:"id"}).$promise.then(function(e){for(var t=[],n=0;n<e.rows.length;n+=1){var a=angular.copy(y.contact);delete a.id,a.ListId=e.rows[n].id,t.push(l.cmContact.save(a).$promise)}return o.all(t)}).catch(function(e){r.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATEBLACKLIST",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){return a.show({controller:"RescheduleCallDialogController",controllerAs:"vm",templateUrl:"app/main/apps/dashboards/views/general/agent/directives/contact/reschedule/dialog.html",parent:angular.element(s.body),clickOutsideToClose:!0,locals:{contact:y.contact,call:y.call}})}function E(){if(console.log(y.call),g(),y.dialerCall)switch(h(),v(),y.choice.toLowerCase()){case"blacklist":y.call&&y.call.variables&&y.call.variables["xmd-voicequeueid"]&&b(y.call.variables["xmd-voicequeueid"]);break;case"reschedule":f()}a.hide(y.choice.toUpperCase())}var y=this;y.choice=void 0,y.dispositions=d,y.contact=m,y.call=c,y.dialerCall=!1,y.call&&y.call.variables&&y.call.variables["xmd-queue"]&&(y.dialerCall=!0),y.saveDisposition=E}e.$inject=["$scope","$state","$location","$mdDialog","$timeout","$q","$document","toasty","api","dispositions","call","contact","Auth"],angular.module("app.staff").controller("DisposeCallDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(){return s.cmHopper.save({phone:u.contact.phone,ContactId:u.contact.id,ListId:u.contact.ListId,VoiceQueueId:Number(u.call["xmd-voicequeueid"]),scheduledat:moment(u.hopper.dateTime).format("YYYY-MM-DD HH:mm:ss")}).$promise.then(function(){return s.cmHopperFinal.update({id:u.call.uniqueid,rescheduled:!0,rescheduledat:moment(u.hopper.dateTime).format("YYYY-MM-DD HH:mm:ss")}).$promise}).then(function(){a.hide()}).catch(function(e){a.cancel(e)})}function m(){a.cancel()}var u=this;u.call=l,u.contact=r,u.hopper={minDate:new Date,dateTime:new Date},u.closeDialog=m,u.saveDialog=c}e.$inject=["$scope","$state","$location","$mdDialog","$timeout","toasty","api","contact","call","Auth"],angular.module("app.staff").controller("RescheduleCallDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(e){p.contacts=e||{count:0,rows:[]}}function l(){p.query.offset=(p.query.page-1)*p.query.limit,p.promise=o.user.getContacts(p.query,r).$promise}function d(e,n){t.$parent.vm.addContactTab(n)}function c(){p.query.ListId=p.defaultLists,p.getContacts()}function m(t,n){a.show({controller:"DuplicateContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",parent:angular.element(e.body),targetEvent:t,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:i.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:p.contacts.rows}})}function u(t,n){a.show({controller:"MergeContactDialogController",controllerAs:"vm",templateUrl:"app/main/apps/contactmanager/views/contacts/merge/dialog.html",parent:angular.element(e.body),targetEvent:t,clickOutsideToClose:!0,resolve:{contact:["apiResolver",function(e){return e.resolve("cmContact@get",{id:n.id})}],lists:["apiResolver",function(e){return e.resolve("user@getLists",{id:i.getCurrentUser().id,fields:"id,name"})}]},locals:{contacts:p.contacts.rows}})}var p=this;p.contacts={count:0,rows:[]},p.lists=s||{count:0,rows:[]},p.listsMap=_.mapValues(_.keyBy(s.rows,"id"),"name"),p.defaultLists=p.lists.rows?_.map(p.lists.rows,"id").join(","):void 0,p.query={id:i.getCurrentUser().id,sort:"-updatedAt",limit:10,page:1,ListId:p.defaultLists},p.getContacts=l,p.refreshContacts=c,p.mergeContact=u,p.duplicateContact=m,p.openContact=d,p.getContacts()}e.$inject=["$document","$scope","$timeout","$mdDialog","Auth","api","lists"],angular.module("app.dashboards").controller("AgentMyContactsDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m){function u(e,n){return l.voiceRecording.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/voice/recordings/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function p(e){h.voiceRecordings=e||{count:0,rows:[]}}function g(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=l.user.getRecordings(h.query,p).$promise}var h=this;h.voiceRecordings=r||{count:0,rows:[]},h.table="voiceRecordings",h.query={id:m.getCurrentUser().id,fields:"createdAt,updatedAt,id,format,value,type,uniqueid,calleridnum,exten,connectedlinenum,queue,rating,audio,createdAt",sort:"-updatedAt",limit:10,page:1},h.downloadfile=u,h.success=p,h.getVoiceRecordings=g}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","voiceRecordings","api","msUtils","toasty","Auth"],angular.module("app.dashboards").controller("AgentRecordigsDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){l({queues:h.outboundQueues,rpcQueues:h.rpcQueues}).then(function(e){h.inbound=e})}function u(){d({rpcCampaigns:h.rpcCampaigns}).then(function(e){h.ivr=e})}function p(e){h.outboundQueues[e.id]&&h.rpcQueues[e.id]&&(h.rpcQueues[e.id]=e,m())}function g(e){h.rpcCampaigns[e.id]&&(h.rpcCampaigns[e.id]=e,u())}var h=this;h.outboundQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},h.rpcQueues=r?_.keyBy(r.rows?r.rows:[],"id"):{},h.rpcCampaigns=c?_.keyBy(c.rows?c.rows:[],"id"):{},h.inbound={waiting:0,talking:0,answered:0,abandoned:0,unmanaged:0,sumHoldTime:0,sumBillable:0,total:0,avgHoldTime:"00:00:00",avgTalkTime:"00:00:00",answerRate:0,abandonRate:0},h.ivr={originated:0,limitCalls:0},h.onSaveQueue=p,h.onSaveCampaign=g,i.on("voice_queue:save",h.onSaveQueue),i.on("campaign:save",h.onSaveCampaign),m(),u(),e.$on("$destroy",function(){i.removeAllListeners("voice_queue:save"),i.removeAllListeners("campaign:save")})}e.$inject=["$scope","$interval","$mdSidenav","Auth","socket","api","outboundQueues","rpcQueues","initializeRealtimeQueue","initializeRealtimeCampaign","rpcCampaigns"],angular.module("app.dashboards").controller("UserVoiceDashboardDialerController",e)}(),function(){"use strict";function e(e){var t=[],n=function(){var e=t[0],a={waiting:0,talking:0,answered:0,abandoned:0,unmanaged:0,sumHoldTime:0,sumBillable:0,total:0,avgHoldTime:"00:00:00",avgTalkTime:"00:00:00",answerRate:0,abandonRate:0,originated:0};_.forIn(e.queues,function(t,n){if(e.rpcQueues[n]){a.waiting+=e.rpcQueues[n].waiting||0,a.talking+=e.rpcQueues[n].talking||0,a.answered+=e.rpcQueues[n].answered||0,a.unmanaged+=e.rpcQueues[n].unmanaged||0,a.sumHoldTime+=e.rpcQueues[n].sumHoldTime||0,a.sumBillable+=e.rpcQueues[n].sumBillable||0,a.total+=e.rpcQueues[n].total||0,a.originated+=e.rpcQueues[n].originated||0;var i=e.rpcQueues[n].total-e.rpcQueues[n].answered;a.abandoned+=i>0?i:0}}),a.avgHoldTime=Math.round(a.total>0?a.sumHoldTime/a.total:0),a.avgHoldTime=new Date(1e3*a.avgHoldTime).toISOString().substr(11,8),a.avgTalkTime=Math.round(a.answered>0?a.sumBillable/a.answered:0),a.avgTalkTime=new Date(1e3*a.avgTalkTime).toISOString().substr(11,8),a.answerRate=Math.round((a.total>0?a.answered/a.total*100:0)*Math.pow(10,1))/Math.pow(10,1),a.abandonRate=Math.round((a.total>0?a.abandoned/a.total*100:0)*Math.pow(10,1))/Math.pow(10,1),t.shift(),e.defer.resolve(a),t.length>0&&n()};return function(a){var i=e.defer();return t.push({queues:a.queues,rpcQueues:a.rpcQueues,defer:i}),1===t.length&&n(),i.promise}}function t(e){var t=[],n=function(){var e=t[0],a={originated:0,limitCalls:0};_.forIn(e.rpcCampaigns,function(t,n){e.rpcCampaigns[n]&&(a.originated+=e.rpcCampaigns[n].originated||0,a.limitCalls+=e.rpcCampaigns[n].limitCalls||0)}),t.shift(),e.defer.resolve(a),t.length>0&&n()};return function(a){var i=e.defer();return t.push({rpcCampaigns:a.rpcCampaigns,defer:i}),1===t.length&&n(),i.promise}}function n(){return function(e){return new Date(1e3*e).toISOString().substr(11,8)}}function a(e,t,n){function a(){return n.hasPermission(101)||n.hasRole("admin")}var i=this;i.hasPermission=a,e.$on("$stateChangeSuccess",function(e,n,a,o,s){if(n.data)switch(i.currentTab=n.data.selectedTab,i.currentTab){case 1:t.go("app.dashboards.general.dialer");break;default:t.go("app.dashboards.general.voice")}})}e.$inject=["$q"],t.$inject=["$q"],a.$inject=["$scope","$state","Auth"],angular.module("app.dashboards").filter("secToTime",n).factory("initializeRealtimeQueue",e).factory("initializeRealtimeCampaign",t).controller("UserDashboardGeneralController",a)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d){function c(){d({queues:p.inboundQueues,rpcQueues:p.rpcQueues}).then(function(e){p.inbound=e})}function m(e){p.inboundQueues[e.id]&&p.rpcQueues[e.id]&&(p.rpcQueues[e.id]=e,c())}function u(e){p.outbound=e}var p=this;p.inboundQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},p.rpcQueues=r?_.keyBy(r.rows?r.rows:[],"id"):{},p.inbound={waiting:0,talking:0,answered:0,abandoned:0,unmanaged:0,sumHoldTime:0,sumBillable:0,total:0,avgHoldTime:"00:00:00",avgTalkTime:"00:00:00",answerRate:0,abandonRate:0},p.outbound=l||{answered:0,sumBillable:0,sumDuration:0,sumHoldTime:0,total:0},p.onSaveQueue=m,p.onSaveOutbound=u,i.on("voice_queue:save",p.onSaveQueue),i.on("voice_outbound:save",p.onSaveOutbound),c(),e.$on("$destroy",function(){i.removeAllListeners("voice_queue:save"),i.removeAllListeners("voice_outbound:save")})}e.$inject=["$scope","$interval","$mdSidenav","Auth","socket","api","inboundQueues","rpcQueues","outbound","initializeRealtimeQueue"],angular.module("app.dashboards").controller("UserVoiceDashboardGeneralController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.faxAccount.save(p.faxAccount).$promise.then(function(e){p.faxAccounts.unshift(e),i.success({title:"FaxAccount properly created",msg:p.faxAccount.name?p.faxAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.faxAccount.update({id:p.faxAccount.id},p.faxAccount).$promise.then(function(e){var t=_.find(p.faxAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"FaxAccount properly saved!",msg:p.faxAccount.name?p.faxAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The faxAccount will be deleted.").ariaLabel("Delete FaxAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.faxAccount.delete({id:p.faxAccount.id}).$promise.then(function(){_.remove(p.faxAccounts,{id:p.faxAccount.id}),i.success({title:"FaxAccount properly deleted!",msg:(p.faxAccount.name||"faxAccount")+" has been deleted!"}),u(p.faxAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.faxAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="FAX.EDIT_FAXACCOUNT",p.faxAccount=angular.copy(s),p.faxAccounts=o,p.newFaxAccount=!1,p.faxAccount||(p.faxAccount={},p.title="FAX.NEW_FAXACCOUNT",p.newFaxAccount=!0),p.addNewFaxAccount=l,p.saveFaxAccount=d,p.deleteFaxAccount=c,p.getDateFromString=m,p.closeDialog=u,r.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.trunks=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","faxAccounts","faxAccount","api"],angular.module("app.fax").controller("CreateOrEditFaxAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.faxAccount=e,h.query.id=h.faxAccount.id,h.query.FaxAccountId=h.faxAccount.id,h.getFaxAccountFaxDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the faxDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete faxDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.faxAccountFaxDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.faxAccount.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditFaxDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/fax/views/faxAccounts/edit/faxDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{faxDisposition:t,faxDispositions:h.faxAccountFaxDispositions.rows}})}function p(e){r.faxDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.faxAccountFaxDispositions.rows,{id:e.id}),h.faxAccountFaxDispositions.count-=1,h.faxAccountFaxDispositions.rows.length||h.getFaxAccountFaxDispositions(),s.success({title:"FaxDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected faxDispositions?").htmlContent("<b>"+h.selectedFaxAccountFaxDispositions.length+" selected</b> will be deleted.").ariaLabel("delete faxDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedFaxAccountFaxDispositions.forEach(function(e){p(e)}),h.selectedFaxAccountFaxDispositions=[]})}var h=this;h.faxAccount={},h.faxAccountFaxDispositions={count:0,rows:[]},h.selectedFaxAccountFaxDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getFaxAccountFaxDispositions=m,h.createOrEditFaxAccountFaxDisposition=u,h.deleteFaxAccountFaxDisposition=p,h.deleteSelectedFaxAccountFaxDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getFaxAccountFaxDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.fax").controller("FaxAccountFaxDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.faxDisposition.save(p.faxDisposition).$promise.then(function(e){p.faxDispositions.unshift(e),i.success({title:"FaxDisposition properly created",msg:p.faxDisposition.name?p.faxDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.faxDisposition.update({id:p.faxDisposition.id},p.faxDisposition).$promise.then(function(e){var t=_.find(p.faxDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"FaxDisposition properly saved!",msg:p.faxDisposition.name?p.faxDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The faxDisposition will be deleted.").ariaLabel("Delete FaxDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.faxDisposition.delete({id:p.faxDisposition.id}).$promise.then(function(){_.remove(p.faxDispositions,{id:p.faxDisposition.id}),i.success({title:"FaxDisposition properly deleted!",msg:(p.faxDisposition.name||"faxDisposition")+" has been deleted!"}),u(p.faxDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.faxDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="FAX.EDIT_FAXDISPOSITION",p.faxDisposition=angular.copy(s),p.faxDispositions=o,p.newFaxDisposition=!1,p.faxDisposition||(p.faxDisposition={},p.title="FAX.NEW_FAXDISPOSITION",p.newFaxDisposition=!0),t.params.id&&(p.faxDisposition.FaxAccountId=t.params.id),p.addNewFaxDisposition=l,p.saveFaxDisposition=d,p.deleteFaxDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","faxDispositions","faxDisposition","api"],angular.module("app.fax").controller("CreateOrEditFaxDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.fax.faxAccounts")}function r(){i.faxAccount.update({id:l.faxAccount.id},l.faxAccount).$promise.then(function(){a.success({title:"FaxAccount updated!",msg:l.faxAccount.name?l.faxAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.faxAccount=e.params.faxAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoFaxAccounts=s,l.saveFaxAccount=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.trunks=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","faxAccount"],angular.module("app.fax").controller("FaxAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.fax.faxAccounts.edit",{id:e.id,faxAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the faxAccount?").htmlContent("<b>"+(e.name||"faxAccount")+"</b> will be deleted.").ariaLabel("delete faxAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.faxAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.faxAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditFaxAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/fax/views/faxAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{faxAccount:t,faxAccounts:A.faxAccounts.rows}})}function v(e){l.faxAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.faxAccounts.rows,{id:e.id}),A.faxAccounts.count-=1,A.faxAccounts.rows.length||A.getFaxAccounts(),c.success({title:"FaxAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedFaxAccounts);return A.selectedFaxAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected faxAccounts?").htmlContent("<b>"+A.selectedFaxAccounts.length+" selected</b> will be deleted.").ariaLabel("delete FaxAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedFaxAccounts.forEach(function(e){v(e)}),A.selectedFaxAccounts=[]})}function E(){A.selectedFaxAccounts=[]}function y(){A.selectedFaxAccounts=A.faxAccounts.rows}var A=this;A.faxAccounts=r||{count:0,rows:[]},A.table="faxAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedFaxAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,headerinfo,TrunkId,localstationid,ListId,fidelity,timeout,description,ecm,minrate,maxrate,modem,gateway,faxdetect,t38timeout,tech,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,page:1},A.arrayminrate=_.keyBy([{option:"2400",value:"'2400'"},{option:"4800",value:"'4800'"},{option:"7200",value:"'7200'"},{option:"9600",value:"'9600'"},{option:"12000",value:"'12000'"},{option:"14400",value:"'14400'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraymaxrate=_.keyBy([{option:"2400",value:"'2400'"},{option:"4800",value:"'4800'"},{option:"7200",value:"'7200'"},{option:"9600",value:"'9600'"},{option:"12000",value:"'12000'"},{option:"14400",value:"'14400'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytech=_.keyBy([{option:"SIP",value:"'SIP'"},{option:"IAX",value:"'IAX'"},{option:"DADHI",value:"'DADHI'"},{option:"KHOMP",value:"'KHOMP'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getFaxAccounts=g,A.createOrEditFaxAccount=h,A.deleteFaxAccount=v,A.exportSelectedFaxAccounts=b,A.deleteSelectedFaxAccounts=f,A.deselectFaxAccounts=E,A.selectAllFaxAccounts=y,l.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){A.trunks=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getFaxAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","faxAccounts","api","msUtils","toasty"],angular.module("app.fax").controller("FaxAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.faxQueue.save(p.faxQueue).$promise.then(function(e){p.faxQueues.unshift(e),i.success({title:"FaxQueue properly created",msg:p.faxQueue.name?p.faxQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.faxQueue.update({id:p.faxQueue.id},p.faxQueue).$promise.then(function(e){var t=_.find(p.faxQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"FaxQueue properly saved!",msg:p.faxQueue.name?p.faxQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.faxQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.faxQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The faxQueue will be deleted.").ariaLabel("Delete FaxQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.faxQueue.delete({id:p.faxQueue.id}).$promise.then(function(){_.remove(p.faxQueues,{id:p.faxQueue.id}),i.success({title:"FaxQueue properly deleted!",msg:(p.faxQueue.name||"faxQueue")+" has been deleted!"}),u(p.faxQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.faxQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="FAX.EDIT_FAXQUEUE",p.faxQueue=angular.copy(s),p.faxQueues=o,p.newFaxQueue=!1,p.faxQueue||(p.faxQueue={strategy:"beepall"},p.title="FAX.NEW_FAXQUEUE",p.newFaxQueue=!0),p.addNewFaxQueue=l,p.saveFaxQueue=d,p.deleteFaxQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","faxQueues","faxQueue","api"],angular.module("app.fax").controller("CreateOrEditFaxQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.faxQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("FAX.ALL_TEAMS"),labelSelected:i.instant("FAX.SELECTED_TEAMS"),transferCallback:function(e,a){n.faxQueue[a?"removeTeams":"addTeams"]({id:s.faxQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:faxQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.faxQueue.getTeams({id:s.faxQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","faxQueue","$translate"],angular.module("app.fax").controller("FaxQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"FaxQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/fax/views/faxQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{faxQueue:e,faxQueues:d.faxQueues?d.faxQueues.rows:[]}})}function r(){e.go("app.fax.faxQueues")}function l(){i.faxQueue.update({id:d.faxQueue.id},d.faxQueue).$promise.then(function(){a.success({title:"FaxQueue updated!",msg:d.faxQueue.name?d.faxQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.faxQueue=e.params.faxQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoFaxQueues=r,d.saveFaxQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","faxQueue"],angular.module("app.fax").controller("FaxQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.fax.faxQueues.edit",{id:e.id,faxQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the faxQueue?").htmlContent("<b>"+(e.name||"faxQueue")+"</b> will be deleted.").ariaLabel("delete faxQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.faxQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.faxQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditFaxQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/fax/views/faxQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{faxQueue:t,faxQueues:A.faxQueues.rows}})}function v(e){l.faxQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.faxQueues.rows,{id:e.id}),A.faxQueues.count-=1,A.faxQueues.rows.length||A.getFaxQueues(),c.success({title:"FaxQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfaxQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedFaxQueues);return A.selectedFaxQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected faxQueues?").htmlContent("<b>"+A.selectedFaxQueues.length+" selected</b> will be deleted.").ariaLabel("delete FaxQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedFaxQueues.forEach(function(e){v(e)}),A.selectedFaxQueues=[]})}function E(){A.selectedFaxQueues=[]}function y(){A.selectedFaxQueues=A.faxQueues.rows}var A=this;A.faxQueues=r||{count:0,rows:[]},A.table="faxQueues",A.listOrder="",A.listOrderAsc=null,A.selectedFaxQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getFaxQueues=g,A.createOrEditFaxQueue=h,A.deleteFaxQueue=v,A.exportSelectedFaxQueues=b,A.deleteSelectedFaxQueues=f,A.deselectFaxQueues=E,A.selectAllFaxQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getFaxQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","faxQueues","api","msUtils","toasty"],angular.module("app.fax").controller("FaxQueuesController",e)}(),function(){"use strict";function e(e){this.info=e}e.$inject=["info"],angular.module("app.help.about").controller("AboutController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intFreshdeskAccount.save(p.freshdeskAccount).$promise.then(function(e){p.freshdeskAccounts.unshift(e),i.success({title:"FreshdeskAccount properly created",msg:p.freshdeskAccount.name?p.freshdeskAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intFreshdeskAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intFreshdeskAccount.update({id:p.freshdeskAccount.id},p.freshdeskAccount).$promise.then(function(e){var t=_.find(p.freshdeskAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"FreshdeskAccount properly saved!",msg:p.freshdeskAccount.name?p.freshdeskAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intFreshdeskAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The freshdeskAccount will be deleted.").ariaLabel("Delete FreshdeskAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intFreshdeskAccount.delete({id:p.freshdeskAccount.id}).$promise.then(function(){_.remove(p.freshdeskAccounts,{id:p.freshdeskAccount.id}),i.success({title:"FreshdeskAccount properly deleted!",msg:(p.freshdeskAccount.name||"freshdeskAccount")+" has been deleted!"}),u(p.freshdeskAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_FRESHDESKACCOUNT",p.freshdeskAccount=angular.copy(s),p.freshdeskAccounts=o,p.newFreshdeskAccount=!1,p.freshdeskAccount||(p.freshdeskAccount={serverUrl:n.protocol()+"://"+n.host()+":"+n.port()},p.title="INTEGRATIONS.NEW_FRESHDESKACCOUNT",p.newFreshdeskAccount=!0),p.addNewFreshdeskAccount=l,p.saveFreshdeskAccount=d,p.deleteFreshdeskAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","freshdeskAccounts","freshdeskAccount","api"],angular.module("app.integrations").controller("CreateOrEditFreshdeskAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){n.intFreshdeskConfiguration.setTags({id:A.freshdeskConfiguration.id,ids:A.selectedTags}).$promise.then(function(){a.success({title:"Tags set!",msg:"Tags has been set!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ADDTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){A.freshdeskAccount=e,n.intFreshdeskAccount.getConfigurations({id:A.freshdeskAccount.id,sort:"-updatedAt"}).$promise.then(function(e){return A.configurations=e.rows?e.rows:[],A.configurations.length&&A.getFreshdeskConfiguration(0),n.variable.get({nolimit:!0,sort:"name"}).$promise}).then(function(e){A.variables=e.rows?e.rows:[],A.variablesById=_.keyBy(A.variables,"id")}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETCONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(e){A.freshdeskConfiguration=A.configurations[e],A.selectedFreshdeskConfiguration=e,n.intFreshdeskConfiguration.getSubjects({id:A.freshdeskConfiguration.id}).$promise.then(function(e){return A.subjects=e.rows?e.rows:[],n.intFreshdeskConfiguration.getDescriptions({id:A.freshdeskConfiguration.id}).$promise}).then(function(e){return A.descriptions=e.rows?e.rows:[],n.intFreshdeskConfiguration.getFields({id:A.freshdeskConfiguration.id}).$promise}).then(function(e){A.fields=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),n.intFreshdeskConfiguration.getTags({id:A.freshdeskConfiguration.id}).$promise.then(function(e){A.selectedTags=e.rows?_.map(e.rows,"id"):[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})})}function r(n,a){e.show({controller:"CreateOrEditFreshdeskConfigurationDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/configurations/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{freshdeskConfiguration:a,configurations:A.configurations}}).finally(function(){A.getFreshdeskConfiguration(0)})}function l(t,i){var o=e.confirm().title("Are you sure want to delete the freshdeskConfiguration?").htmlContent("<b>"+(i.name||"freshdeskConfiguration")+"</b> will be deleted.").ariaLabel("delete freshdeskConfiguration").targetEvent(t).ok("OK").cancel("CANCEL");e.show(o).then(function(){n.intFreshdeskConfiguration.delete({id:i.id}).$promise.then(function(){_.remove(A.configurations,{id:i.id}),a.success({title:"FreshdeskConfiguration deleted!",msg:i.name?i.name+" has been deleted!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){A.getFreshdeskConfiguration(0)})},function(){console.log("CANCEL")})}function d(n,a){e.show({controller:"CreateOrEditFreshdeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"subject",item:a,items:A.subjects,configuration:A.freshdeskConfiguration,account:A.freshdeskAccount}})}function c(e){n.intFreshdeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.subjects,{id:e.id}),a.success({title:"Subject deleted!",msg:"Subject has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function m(t,n){var a=e.confirm().title("Are you sure want to delete the subject?").htmlContent("<b>Subject</b> will be deleted.").ariaLabel("delete subject").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){c(n)},function(){console.log("CANCEL")})}function u(t){var n=e.confirm().title("Are you sure want to delete the selected subjects?").htmlContent("<b>"+A.selectedSubjects.length+" selected</b> will be deleted.").ariaLabel("delete subjects").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedSubjects.forEach(function(e){c(e)}),A.selectedSubjects=[]})}function p(n,a){e.show({controller:"CreateOrEditFreshdeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"description",item:a,items:A.descriptions,configuration:A.freshdeskConfiguration,account:A.freshdeskAccount}})}function g(e){n.intFreshdeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.descriptions,{id:e.id}),a.success({title:"Description deleted!",msg:"Description has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(t,n){var a=e.confirm().title("Are you sure want to delete the description?").htmlContent("<b>Description</b> will be deleted.").ariaLabel("delete description").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){g(n)},function(){console.log("CANCEL")})}function v(t){var n=e.confirm().title("Are you sure want to delete the selected descriptions?").htmlContent("<b>"+A.selectedDescriptions.length+" selected</b> will be deleted.").ariaLabel("delete descriptions").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedDescriptions.forEach(function(e){g(e)}),A.selectedDescriptions=[]})}function b(n,a){e.show({controller:"CreateOrEditFreshdeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"field",item:a,items:A.fields,configuration:A.freshdeskConfiguration,account:A.freshdeskAccount}})}function f(e){n.intFreshdeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.fields,{id:e.id}),a.success({title:"Field deleted!",msg:"Field has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(t,n){var a=e.confirm().title("Are you sure want to delete the field?").htmlContent("<b>Field</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){f(n)},function(){console.log("CANCEL")})}function y(t){var n=e.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+A.selectedFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedFields.forEach(function(e){f(e)}),A.selectedFields=[]})}var A=this;A.freshdeskAccount={},A.freshdeskConfiguration={},A.configurations=[],A.selectedFreshdeskConfiguration=-1,A.init=o,A.getFreshdeskConfiguration=s,A.createOrEditFreshdeskConfiguration=r,A.deleteFreshdeskConfiguration=l,A.selectedTags=[],A.selectTagsChanged=i,n.tag.get({nolimit:!0,sort:"name"}).$promise.then(function(e){A.tags=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})}),A.selectedSubjects=[],A.createOrEditSubject=d,A.deleteSubjectConfirm=m,A.deleteSelectedSubjects=u,A.selectedDescriptions=[],A.createOrEditDescription=p,A.deleteDescriptionConfirm=h,A.deleteSelectedDescriptions=v,A.selectedFields=[],A.createOrEditField=b,A.deleteFieldConfirm=E,A.deleteSelectedFields=y}e.$inject=["$mdDialog","$document","api","toasty"],angular.module("app.integrations").controller("FreshdeskAccountConfigurationsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intFreshdeskAccount.addConfiguration({id:t.params.id},p.freshdeskConfiguration).$promise.then(function(e){p.configurations.unshift(e),i.success({title:"FreshdeskConfiguration properly created",msg:p.freshdeskConfiguration.name?p.freshdeskConfiguration.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskConfiguration.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intFreshdeskConfiguration.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intFreshdeskConfiguration.update({id:p.freshdeskConfiguration.id},p.freshdeskConfiguration).$promise.then(function(e){var t=_.find(p.configurations,{id:e.id});t&&_.merge(t,e),i.success({title:"FreshdeskConfiguration properly saved!",msg:p.freshdeskConfiguration.name?p.freshdeskConfiguration.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskConfiguration.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intFreshdeskConfiguration.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The freshdeskConfiguration will be deleted.").ariaLabel("Delete FreshdeskConfiguration").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intFreshdeskConfiguration.delete({id:p.freshdeskConfiguration.id}).$promise.then(function(){_.remove(p.configurations,{id:p.freshdeskConfiguration.id}),i.success({title:"FreshdeskConfiguration properly deleted!",msg:(p.freshdeskConfiguration.name||"freshdeskConfiguration")+" has been deleted!"}),u(p.freshdeskConfiguration)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intFreshdeskConfiguration.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_FRESHDESKCONFIGURATION",p.freshdeskConfiguration=angular.copy(s),p.configurations=o,p.newFreshdeskConfiguration=!1,p.freshdeskConfiguration||(p.freshdeskConfiguration={channel:"voice",type:"inbound"},p.title="INTEGRATIONS.NEW_FRESHDESKCONFIGURATION",p.newFreshdeskConfiguration=!0),p.addNewFreshdeskConfiguration=l,p.saveFreshdeskConfiguration=d,p.deleteFreshdeskConfiguration=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configurations","freshdeskConfiguration","api"],angular.module("app.integrations").controller("CreateOrEditFreshdeskConfigurationDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intFreshdeskField.save(v.item).$promise.then(function(e){v.items.unshift(e),i.success({title:_.capitalize(d)+" properly created",msg:_.capitalize(d)+" has been created!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.save"}]})}function u(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intFreshdeskField.update({id:v.item.id},v.item).$promise.then(function(e){var t=_.find(v.items,{id:e.id});t&&_.merge(t,e),i.success({title:_.capitalize(d)+" properly saved!",msg:_.capitalize(d)+" has been saved!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.intItem.update"}]})}function p(e){v.errors=[];var t=a.confirm().title("Are you sure?").content("The "+d+" will be deleted.").ariaLabel("Delete "+_.capitalize(d)).ok("Delete").cancel("Cancel").targetEvent(e);a.show(t).then(function(){c.intFreshdeskField.delete({id:v.item.id}).$promise.then(function(){_.remove(v.items,{id:v.item.id}),i.success({title:_.capitalize(d)+" properly deleted!",msg:_.capitalize(d)+" has been deleted!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.delete"}]})},function(){})}function g(){return void 0!==v.item.variableName?v.item.variableName:"Please select a variable"}function h(){a.hide()}var v=this;v.errors=[],v.title="INTEGRATIONS.EDIT_"+_.toUpper(d),v.item=angular.copy(r),v.items=s,v.type=d,v.newItem=!1,v.item||(v.item={type:"string"},v.item[_.capitalize(d)+"Id"]=o.id,v.title="INTEGRATIONS.NEW_"+_.toUpper(d),v.newItem=!0),v.addNewItem=m,v.saveItem=u,v.deleteItem=p,v.getSelectedVariable=g,v.closeDialog=h,c.variable.get({nolimit:!0}).$promise.then(function(e){return v.variables=e.rows?e.rows:[],c.voiceAgentReport.describe().$promise}).then(function(e){return v.voiceAgentReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"]),c.voiceDialReport.describe().$promise}).then(function(e){v.voiceDialReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"])}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETVARIABLES",msg:e.data?JSON.stringify(e.data):e.toString()})}),c.intFreshdeskAccount.getFields({id:l.id}).$promise.then(function(e){v.accountConnected=!0,v.fields=e.rows?e.rows:[],v.item.idField&&(v.customField=_.find(v.fields,{id:v.item.idField}))}).catch(function(e){v.accountConnected=!1,console.error(e)})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configuration","items","item","account","type","api"],angular.module("app.integrations").controller("CreateOrEditFreshdeskAccountItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.integrations.freshdeskAccounts")}function r(){i.intFreshdeskAccount.update({id:l.freshdeskAccount.id},l.freshdeskAccount).$promise.then(function(){a.success({title:"FreshdeskAccount updated!",msg:l.freshdeskAccount.name?l.freshdeskAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintFreshdeskAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.freshdeskAccount=e.params.freshdeskAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoFreshdeskAccounts=s,l.saveFreshdeskAccount=r}e.$inject=["$state","$mdDialog","$document","toasty","api","freshdeskAccount"],angular.module("app.integrations").controller("FreshdeskAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.integrations.freshdeskAccounts.edit",{id:e.id,freshdeskAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the freshdeskAccount?").htmlContent("<b>"+(e.name||"freshdeskAccount")+"</b> will be deleted.").ariaLabel("delete freshdeskAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.freshdeskAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.intFreshdeskAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditFreshdeskAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/freshdeskAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{freshdeskAccount:t,freshdeskAccounts:A.freshdeskAccounts.rows}})}function v(e){l.intFreshdeskAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.freshdeskAccounts.rows,{id:e.id}),A.freshdeskAccounts.count-=1,A.freshdeskAccounts.rows.length||A.getFreshdeskAccounts(),c.success({title:"FreshdeskAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintFreshdeskAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedFreshdeskAccounts);return A.selectedFreshdeskAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected freshdeskAccounts?").htmlContent("<b>"+A.selectedFreshdeskAccounts.length+" selected</b> will be deleted.").ariaLabel("delete FreshdeskAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedFreshdeskAccounts.forEach(function(e){v(e)}),A.selectedFreshdeskAccounts=[]})}function E(){A.selectedFreshdeskAccounts=[]}function y(){A.selectedFreshdeskAccounts=A.freshdeskAccounts.rows}var A=this;A.freshdeskAccounts=r||{count:0,rows:[]},A.table="freshdeskAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedFreshdeskAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,username,remoteUri,apiKey,serverUrl,description",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getFreshdeskAccounts=g,A.createOrEditFreshdeskAccount=h,A.deleteFreshdeskAccount=v,A.exportSelectedFreshdeskAccounts=b,A.deleteSelectedFreshdeskAccounts=f,A.deselectFreshdeskAccounts=E,A.selectAllFreshdeskAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getFreshdeskAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","freshdeskAccounts","api","msUtils","toasty"],angular.module("app.integrations").controller("FreshdeskAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intSalesforceAccount.save(p.salesforceAccount).$promise.then(function(e){p.salesforceAccounts.unshift(e),i.success({title:"SalesforceAccount properly created",msg:p.salesforceAccount.name?p.salesforceAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSalesforceAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intSalesforceAccount.update({id:p.salesforceAccount.id},p.salesforceAccount).$promise.then(function(e){var t=_.find(p.salesforceAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"SalesforceAccount properly saved!",msg:p.salesforceAccount.name?p.salesforceAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSalesforceAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The salesforceAccount will be deleted.").ariaLabel("Delete SalesforceAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intSalesforceAccount.delete({id:p.salesforceAccount.id}).$promise.then(function(){_.remove(p.salesforceAccounts,{id:p.salesforceAccount.id}),i.success({title:"SalesforceAccount properly deleted!",msg:(p.salesforceAccount.name||"salesforceAccount")+" has been deleted!"}),u(p.salesforceAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_SALESFORCEACCOUNT",p.salesforceAccount=angular.copy(s),p.salesforceAccounts=o,p.newSalesforceAccount=!1,p.salesforceAccount||(p.salesforceAccount={serverUrl:n.protocol()+"://"+n.host()+":"+n.port()},p.title="INTEGRATIONS.NEW_SALESFORCEACCOUNT",p.newSalesforceAccount=!0),p.addNewSalesforceAccount=l,p.saveSalesforceAccount=d,p.deleteSalesforceAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","salesforceAccounts","salesforceAccount","api"],angular.module("app.integrations").controller("CreateOrEditSalesforceAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){y.salesforceAccount=e,n.intSalesforceAccount.getConfigurations({id:y.salesforceAccount.id,sort:"-updatedAt"}).$promise.then(function(e){return y.configurations=e.rows?e.rows:[],y.configurations.length&&y.getSalesforceConfiguration(0),n.variable.get({nolimit:!0,sort:"name"}).$promise}).then(function(e){y.variables=e.rows?e.rows:[],y.variablesById=_.keyBy(y.variables,"id")}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETCONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){y.salesforceConfiguration=y.configurations[e],y.selectedSalesforceConfiguration=e,n.intSalesforceConfiguration.getSubjects({id:y.salesforceConfiguration.id}).$promise.then(function(e){return y.subjects=e.rows?e.rows:[],n.intSalesforceConfiguration.getDescriptions({id:y.salesforceConfiguration.id}).$promise}).then(function(e){return y.descriptions=e.rows?e.rows:[],n.intSalesforceConfiguration.getFields({id:y.salesforceConfiguration.id}).$promise}).then(function(e){y.fields=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(n,a){e.show({controller:"CreateOrEditSalesforceConfigurationDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/configurations/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{salesforceConfiguration:a,configurations:y.configurations}}).finally(function(){y.getSalesforceConfiguration(0)})}function r(t,i){var o=e.confirm().title("Are you sure want to delete the salesforceConfiguration?").htmlContent("<b>"+(i.name||"salesforceConfiguration")+"</b> will be deleted.").ariaLabel("delete salesforceConfiguration").targetEvent(t).ok("OK").cancel("CANCEL");e.show(o).then(function(){n.intSalesforceConfiguration.delete({id:i.id}).$promise.then(function(){_.remove(y.configurations,{id:i.id}),a.success({title:"SalesforceConfiguration deleted!",msg:i.name?i.name+" has been deleted!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){y.getSalesforceConfiguration(0)})},function(){console.log("CANCEL")})}function l(n,a){e.show({controller:"CreateOrEditSalesforceAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"subject",item:a,items:y.subjects,configuration:y.salesforceConfiguration,account:y.salesforceAccount}})}function d(e){n.intSalesforceField.delete({id:e.id}).$promise.then(function(){_.remove(y.subjects,{id:e.id}),a.success({title:"Subject deleted!",msg:"Subject has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function c(t,n){var a=e.confirm().title("Are you sure want to delete the subject?").htmlContent("<b>Subject</b> will be deleted.").ariaLabel("delete subject").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){d(n)},function(){console.log("CANCEL")})}function m(t){var n=e.confirm().title("Are you sure want to delete the selected subjects?").htmlContent("<b>"+y.selectedSubjects.length+" selected</b> will be deleted.").ariaLabel("delete subjects").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedSubjects.forEach(function(e){d(e)}),y.selectedSubjects=[]})}function u(n,a){e.show({controller:"CreateOrEditSalesforceAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"description",item:a,items:y.descriptions,configuration:y.salesforceConfiguration,account:y.salesforceAccount}})}function p(e){n.intSalesforceField.delete({id:e.id}).$promise.then(function(){_.remove(y.descriptions,{id:e.id}),a.success({title:"Description deleted!",msg:"Description has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(t,n){var a=e.confirm().title("Are you sure want to delete the description?").htmlContent("<b>Description</b> will be deleted.").ariaLabel("delete description").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){p(n)},function(){console.log("CANCEL")})}function h(t){var n=e.confirm().title("Are you sure want to delete the selected descriptions?").htmlContent("<b>"+y.selectedDescriptions.length+" selected</b> will be deleted.").ariaLabel("delete descriptions").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedDescriptions.forEach(function(e){p(e)}),y.selectedDescriptions=[]})}function v(n,a){e.show({controller:"CreateOrEditSalesforceAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"field",item:a,items:y.fields,configuration:y.salesforceConfiguration,account:y.salesforceAccount}})}function b(e){n.intSalesforceField.delete({id:e.id}).$promise.then(function(){_.remove(y.fields,{id:e.id}),a.success({title:"Field deleted!",msg:"Field has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(t,n){var a=e.confirm().title("Are you sure want to delete the field?").htmlContent("<b>Field</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){b(n)},function(){console.log("CANCEL")})}function E(t){var n=e.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+y.selectedFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedFields.forEach(function(e){b(e)}),y.selectedFields=[]})}var y=this;y.salesforceAccount={},y.salesforceConfiguration={},y.configurations=[],y.selectedSalesforceConfiguration=-1,y.init=i,y.getSalesforceConfiguration=o,y.createOrEditSalesforceConfiguration=s,y.deleteSalesforceConfiguration=r,y.selectedSubjects=[],y.createOrEditSubject=l,y.deleteSubjectConfirm=c,y.deleteSelectedSubjects=m,y.selectedDescriptions=[],y.createOrEditDescription=u,y.deleteDescriptionConfirm=g,y.deleteSelectedDescriptions=h,y.selectedFields=[],y.createOrEditField=v,y.deleteFieldConfirm=f,y.deleteSelectedFields=E}e.$inject=["$mdDialog","$document","api","toasty"],angular.module("app.integrations").controller("SalesforceAccountConfigurationsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intSalesforceAccount.addConfiguration({id:t.params.id},p.salesforceConfiguration).$promise.then(function(e){p.configurations.unshift(e),i.success({title:"SalesforceConfiguration properly created",msg:p.salesforceConfiguration.name?p.salesforceConfiguration.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceConfiguration.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSalesforceConfiguration.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intSalesforceConfiguration.update({id:p.salesforceConfiguration.id},p.salesforceConfiguration).$promise.then(function(e){var t=_.find(p.configurations,{id:e.id});t&&_.merge(t,e),i.success({title:"SalesforceConfiguration properly saved!",msg:p.salesforceConfiguration.name?p.salesforceConfiguration.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceConfiguration.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSalesforceConfiguration.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The salesforceConfiguration will be deleted.").ariaLabel("Delete SalesforceConfiguration").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intSalesforceConfiguration.delete({id:p.salesforceConfiguration.id}).$promise.then(function(){_.remove(p.configurations,{id:p.salesforceConfiguration.id}),i.success({title:"SalesforceConfiguration properly deleted!",msg:(p.salesforceConfiguration.name||"salesforceConfiguration")+" has been deleted!"}),u(p.salesforceConfiguration)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intSalesforceConfiguration.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_SALESFORCECONFIGURATION",p.salesforceConfiguration=angular.copy(s),p.configurations=o,p.newSalesforceConfiguration=!1,p.salesforceConfiguration||(p.salesforceConfiguration={channel:"voice",type:"inbound"},p.title="INTEGRATIONS.NEW_SALESFORCECONFIGURATION",p.newSalesforceConfiguration=!0),p.addNewSalesforceConfiguration=l,p.saveSalesforceConfiguration=d,p.deleteSalesforceConfiguration=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configurations","salesforceConfiguration","api"],angular.module("app.integrations").controller("CreateOrEditSalesforceConfigurationDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intSalesforceField.save(v.item).$promise.then(function(e){v.items.unshift(e),i.success({title:_.capitalize(d)+" properly created",msg:_.capitalize(d)+" has been created!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.save"}]})}function u(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intSalesforceField.update({id:v.item.id},v.item).$promise.then(function(e){var t=_.find(v.items,{id:e.id});t&&_.merge(t,e),i.success({title:_.capitalize(d)+" properly saved!",msg:_.capitalize(d)+" has been saved!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.intItem.update"}]})}function p(e){v.errors=[];var t=a.confirm().title("Are you sure?").content("The "+d+" will be deleted.").ariaLabel("Delete "+_.capitalize(d)).ok("Delete").cancel("Cancel").targetEvent(e);a.show(t).then(function(){c.intSalesforceField.delete({id:v.item.id}).$promise.then(function(){_.remove(v.items,{id:v.item.id}),i.success({title:_.capitalize(d)+" properly deleted!",msg:_.capitalize(d)+" has been deleted!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.delete"}]})},function(){})}function g(){return void 0!==v.item.variableName?v.item.variableName:"Please select a variable"}function h(){a.hide()}var v=this;v.errors=[],v.title="INTEGRATIONS.EDIT_"+_.toUpper(d),v.item=angular.copy(r),v.items=s,v.type=d,v.newItem=!1,v.item||(v.item={type:"string"},v.item[_.capitalize(d)+"Id"]=o.id,v.title="INTEGRATIONS.NEW_"+_.toUpper(d),v.newItem=!0),v.addNewItem=m,v.saveItem=u,v.deleteItem=p,v.getSelectedVariable=g,v.closeDialog=h,c.variable.get({nolimit:!0}).$promise.then(function(e){return v.variables=e.rows?e.rows:[],c.voiceAgentReport.describe().$promise}).then(function(e){return v.voiceAgentReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"]),c.voiceDialReport.describe().$promise}).then(function(e){v.voiceDialReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"])}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETVARIABLES",msg:e.data?JSON.stringify(e.data):e.toString()})}),c.intSalesforceAccount.getFields({id:l.id}).$promise.then(function(e){v.accountConnected=!0,v.fields=e.rows?e.rows:[],v.item.idField&&(v.customField=_.find(v.fields,{id:v.item.idField}))}).catch(function(e){v.accountConnected=!1,console.error(e)})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configuration","items","item","account","type","api"],angular.module("app.integrations").controller("CreateOrEditSalesforceAccountItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.integrations.salesforceAccounts")}function r(){i.intSalesforceAccount.update({id:l.salesforceAccount.id},l.salesforceAccount).$promise.then(function(){a.success({title:"SalesforceAccount updated!",msg:l.salesforceAccount.name?l.salesforceAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintSalesforceAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.salesforceAccount=e.params.salesforceAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoSalesforceAccounts=s,l.saveSalesforceAccount=r}e.$inject=["$state","$mdDialog","$document","toasty","api","salesforceAccount"],angular.module("app.integrations").controller("SalesforceAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.integrations.salesforceAccounts.edit",{id:e.id,salesforceAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the salesforceAccount?").htmlContent("<b>"+(e.name||"salesforceAccount")+"</b> will be deleted.").ariaLabel("delete salesforceAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.salesforceAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.intSalesforceAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSalesforceAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/salesforceAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{salesforceAccount:t,salesforceAccounts:A.salesforceAccounts.rows}})}function v(e){l.intSalesforceAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.salesforceAccounts.rows,{id:e.id}),A.salesforceAccounts.count-=1,A.salesforceAccounts.rows.length||A.getSalesforceAccounts(),c.success({title:"SalesforceAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintSalesforceAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSalesforceAccounts);return A.selectedSalesforceAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected salesforceAccounts?").htmlContent("<b>"+A.selectedSalesforceAccounts.length+" selected</b> will be deleted.").ariaLabel("delete SalesforceAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSalesforceAccounts.forEach(function(e){v(e)}),A.selectedSalesforceAccounts=[]})}function E(){A.selectedSalesforceAccounts=[]}function y(){A.selectedSalesforceAccounts=A.salesforceAccounts.rows}var A=this;A.salesforceAccounts=r||{count:0,rows:[]},A.table="salesforceAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedSalesforceAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,username,remoteUri,password,clientId,clientSecret,securityToken,serverUrl,description",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getSalesforceAccounts=g,A.createOrEditSalesforceAccount=h,A.deleteSalesforceAccount=v,A.exportSelectedSalesforceAccounts=b,A.deleteSelectedSalesforceAccounts=f,A.deselectSalesforceAccounts=E,A.selectAllSalesforceAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSalesforceAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","salesforceAccounts","api","msUtils","toasty"],angular.module("app.integrations").controller("SalesforceAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intSugarcrmAccount.save(p.sugarcrmAccount).$promise.then(function(e){p.sugarcrmAccounts.unshift(e),i.success({title:"SugarcrmAccount properly created",msg:p.sugarcrmAccount.name?p.sugarcrmAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSugarcrmAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intSugarcrmAccount.update({id:p.sugarcrmAccount.id},p.sugarcrmAccount).$promise.then(function(e){var t=_.find(p.sugarcrmAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"SugarcrmAccount properly saved!",msg:p.sugarcrmAccount.name?p.sugarcrmAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSugarcrmAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The sugarcrmAccount will be deleted.").ariaLabel("Delete SugarcrmAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intSugarcrmAccount.delete({id:p.sugarcrmAccount.id}).$promise.then(function(){_.remove(p.sugarcrmAccounts,{id:p.sugarcrmAccount.id}),i.success({title:"SugarcrmAccount properly deleted!",msg:(p.sugarcrmAccount.name||"sugarcrmAccount")+" has been deleted!"}),u(p.sugarcrmAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_SUGARCRMACCOUNT",p.sugarcrmAccount=angular.copy(s),p.sugarcrmAccounts=o,p.newSugarcrmAccount=!1,p.sugarcrmAccount||(p.sugarcrmAccount={serverUrl:n.protocol()+"://"+n.host()+":"+n.port()},p.title="INTEGRATIONS.NEW_SUGARCRMACCOUNT",p.newSugarcrmAccount=!0),p.addNewSugarcrmAccount=l,p.saveSugarcrmAccount=d,p.deleteSugarcrmAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","sugarcrmAccounts","sugarcrmAccount","api"],angular.module("app.integrations").controller("CreateOrEditSugarcrmAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){y.sugarcrmAccount=e,n.intSugarcrmAccount.getConfigurations({id:y.sugarcrmAccount.id,sort:"-updatedAt"}).$promise.then(function(e){return y.configurations=e.rows?e.rows:[],y.configurations.length&&y.getSugarcrmConfiguration(0),n.variable.get({nolimit:!0,sort:"name"}).$promise}).then(function(e){y.variables=e.rows?e.rows:[],y.variablesById=_.keyBy(y.variables,"id")}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETCONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){y.sugarcrmConfiguration=y.configurations[e],y.selectedSugarcrmConfiguration=e,n.intSugarcrmConfiguration.getSubjects({id:y.sugarcrmConfiguration.id}).$promise.then(function(e){return y.subjects=e.rows?e.rows:[],n.intSugarcrmConfiguration.getDescriptions({id:y.sugarcrmConfiguration.id}).$promise}).then(function(e){return y.descriptions=e.rows?e.rows:[],n.intSugarcrmConfiguration.getFields({id:y.sugarcrmConfiguration.id}).$promise}).then(function(e){y.fields=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(n,a){e.show({controller:"CreateOrEditSugarcrmConfigurationDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/configurations/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{sugarcrmConfiguration:a,configurations:y.configurations}}).finally(function(){y.getSugarcrmConfiguration(0)})}function r(t,i){var o=e.confirm().title("Are you sure want to delete the sugarcrmConfiguration?").htmlContent("<b>"+(i.name||"sugarcrmConfiguration")+"</b> will be deleted.").ariaLabel("delete sugarcrmConfiguration").targetEvent(t).ok("OK").cancel("CANCEL");e.show(o).then(function(){n.intSugarcrmConfiguration.delete({id:i.id}).$promise.then(function(){_.remove(y.configurations,{id:i.id}),a.success({title:"SugarcrmConfiguration deleted!",msg:i.name?i.name+" has been deleted!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){y.getSugarcrmConfiguration(0)})},function(){console.log("CANCEL")})}function l(n,a){e.show({controller:"CreateOrEditSugarcrmAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"subject",item:a,items:y.subjects,configuration:y.sugarcrmConfiguration,account:y.sugarcrmAccount}})}function d(e){n.intSugarcrmField.delete({id:e.id}).$promise.then(function(){_.remove(y.subjects,{id:e.id}),a.success({title:"Subject deleted!",msg:"Subject has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function c(t,n){var a=e.confirm().title("Are you sure want to delete the subject?").htmlContent("<b>Subject</b> will be deleted.").ariaLabel("delete subject").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){d(n)},function(){console.log("CANCEL")})}function m(t){var n=e.confirm().title("Are you sure want to delete the selected subjects?").htmlContent("<b>"+y.selectedSubjects.length+" selected</b> will be deleted.").ariaLabel("delete subjects").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedSubjects.forEach(function(e){d(e)}),y.selectedSubjects=[]})}function u(n,a){e.show({controller:"CreateOrEditSugarcrmAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"description",item:a,items:y.descriptions,configuration:y.sugarcrmConfiguration,account:y.sugarcrmAccount}})}function p(e){n.intSugarcrmField.delete({id:e.id}).$promise.then(function(){_.remove(y.descriptions,{id:e.id}),a.success({title:"Description deleted!",msg:"Description has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(t,n){var a=e.confirm().title("Are you sure want to delete the description?").htmlContent("<b>Description</b> will be deleted.").ariaLabel("delete description").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){p(n)},function(){console.log("CANCEL")})}function h(t){var n=e.confirm().title("Are you sure want to delete the selected descriptions?").htmlContent("<b>"+y.selectedDescriptions.length+" selected</b> will be deleted.").ariaLabel("delete descriptions").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedDescriptions.forEach(function(e){p(e)}),y.selectedDescriptions=[]})}function v(n,a){e.show({controller:"CreateOrEditSugarcrmAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"field",item:a,items:y.fields,configuration:y.sugarcrmConfiguration,account:y.sugarcrmAccount}})}function b(e){n.intSugarcrmField.delete({id:e.id}).$promise.then(function(){_.remove(y.fields,{id:e.id}),a.success({title:"Field deleted!",msg:"Field has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(t,n){var a=e.confirm().title("Are you sure want to delete the field?").htmlContent("<b>Field</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){b(n)},function(){console.log("CANCEL")})}function E(t){var n=e.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+y.selectedFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){y.selectedFields.forEach(function(e){b(e)}),y.selectedFields=[]})}var y=this;y.sugarcrmAccount={},y.sugarcrmConfiguration={},y.configurations=[],y.selectedSugarcrmConfiguration=-1,y.init=i,y.getSugarcrmConfiguration=o,y.createOrEditSugarcrmConfiguration=s,y.deleteSugarcrmConfiguration=r,y.selectedSubjects=[],y.createOrEditSubject=l,y.deleteSubjectConfirm=c,y.deleteSelectedSubjects=m,y.selectedDescriptions=[],y.createOrEditDescription=u,y.deleteDescriptionConfirm=g,y.deleteSelectedDescriptions=h,y.selectedFields=[],y.createOrEditField=v,y.deleteFieldConfirm=f,y.deleteSelectedFields=E}e.$inject=["$mdDialog","$document","api","toasty"],angular.module("app.integrations").controller("SugarcrmAccountConfigurationsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intSugarcrmAccount.addConfiguration({id:t.params.id},p.sugarcrmConfiguration).$promise.then(function(e){p.configurations.unshift(e),i.success({title:"SugarcrmConfiguration properly created",msg:p.sugarcrmConfiguration.name?p.sugarcrmConfiguration.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmConfiguration.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSugarcrmConfiguration.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intSugarcrmConfiguration.update({id:p.sugarcrmConfiguration.id},p.sugarcrmConfiguration).$promise.then(function(e){var t=_.find(p.configurations,{id:e.id});t&&_.merge(t,e),i.success({title:"SugarcrmConfiguration properly saved!",msg:p.sugarcrmConfiguration.name?p.sugarcrmConfiguration.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmConfiguration.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intSugarcrmConfiguration.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The sugarcrmConfiguration will be deleted.").ariaLabel("Delete SugarcrmConfiguration").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intSugarcrmConfiguration.delete({id:p.sugarcrmConfiguration.id}).$promise.then(function(){_.remove(p.configurations,{id:p.sugarcrmConfiguration.id}),i.success({title:"SugarcrmConfiguration properly deleted!",msg:(p.sugarcrmConfiguration.name||"sugarcrmConfiguration")+" has been deleted!"}),u(p.sugarcrmConfiguration)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intSugarcrmConfiguration.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_SUGARCRMCONFIGURATION",p.sugarcrmConfiguration=angular.copy(s),p.configurations=o,p.newSugarcrmConfiguration=!1,p.sugarcrmConfiguration||(p.sugarcrmConfiguration={channel:"voice",type:"inbound"},p.title="INTEGRATIONS.NEW_SUGARCRMCONFIGURATION",p.newSugarcrmConfiguration=!0),p.addNewSugarcrmConfiguration=l,p.saveSugarcrmConfiguration=d,p.deleteSugarcrmConfiguration=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configurations","sugarcrmConfiguration","api"],angular.module("app.integrations").controller("CreateOrEditSugarcrmConfigurationDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intSugarcrmField.save(v.item).$promise.then(function(e){v.items.unshift(e),i.success({title:_.capitalize(d)+" properly created",msg:_.capitalize(d)+" has been created!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.save"}]})}function u(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intSugarcrmField.update({id:v.item.id},v.item).$promise.then(function(e){var t=_.find(v.items,{id:e.id});t&&_.merge(t,e),i.success({title:_.capitalize(d)+" properly saved!",msg:_.capitalize(d)+" has been saved!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.intItem.update"}]})}function p(e){v.errors=[];var t=a.confirm().title("Are you sure?").content("The "+d+" will be deleted.").ariaLabel("Delete "+_.capitalize(d)).ok("Delete").cancel("Cancel").targetEvent(e);a.show(t).then(function(){c.intSugarcrmField.delete({id:v.item.id}).$promise.then(function(){_.remove(v.items,{id:v.item.id}),i.success({title:_.capitalize(d)+" properly deleted!",msg:_.capitalize(d)+" has been deleted!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.delete"}]})},function(){})}function g(){return void 0!==v.item.variableName?v.item.variableName:"Please select a variable"}function h(){a.hide()}var v=this;v.errors=[],v.title="INTEGRATIONS.EDIT_"+_.toUpper(d),v.item=angular.copy(r),v.items=s,v.type=d,v.newItem=!1,v.item||(v.item={type:"string"},v.item[_.capitalize(d)+"Id"]=o.id,v.title="INTEGRATIONS.NEW_"+_.toUpper(d),v.newItem=!0),v.addNewItem=m,v.saveItem=u,v.deleteItem=p,v.getSelectedVariable=g,v.closeDialog=h,c.variable.get({nolimit:!0}).$promise.then(function(e){return v.variables=e.rows?e.rows:[],c.voiceAgentReport.describe().$promise}).then(function(e){return v.voiceAgentReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"]),c.voiceDialReport.describe().$promise}).then(function(e){v.voiceDialReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"])}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETVARIABLES",msg:e.data?JSON.stringify(e.data):e.toString()})}),c.intSugarcrmAccount.getFields({id:l.id}).$promise.then(function(e){v.accountConnected=!0,v.fields=e.rows?e.rows:[],v.item.idField&&(v.customField=_.find(v.fields,{id:v.item.idField}))}).catch(function(e){v.accountConnected=!1,console.error(e)})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configuration","items","item","account","type","api"],angular.module("app.integrations").controller("CreateOrEditSugarcrmAccountItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.integrations.sugarcrmAccounts")}function r(){i.intSugarcrmAccount.update({id:l.sugarcrmAccount.id},l.sugarcrmAccount).$promise.then(function(){a.success({title:"SugarcrmAccount updated!",msg:l.sugarcrmAccount.name?l.sugarcrmAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintSugarcrmAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.sugarcrmAccount=e.params.sugarcrmAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoSugarcrmAccounts=s,l.saveSugarcrmAccount=r}e.$inject=["$state","$mdDialog","$document","toasty","api","sugarcrmAccount"],angular.module("app.integrations").controller("SugarcrmAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.integrations.sugarcrmAccounts.edit",{id:e.id,sugarcrmAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the sugarcrmAccount?").htmlContent("<b>"+(e.name||"sugarcrmAccount")+"</b> will be deleted.").ariaLabel("delete sugarcrmAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.sugarcrmAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.intSugarcrmAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSugarcrmAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/sugarcrmAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{sugarcrmAccount:t,sugarcrmAccounts:A.sugarcrmAccounts.rows}})}function v(e){l.intSugarcrmAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.sugarcrmAccounts.rows,{id:e.id}),A.sugarcrmAccounts.count-=1,A.sugarcrmAccounts.rows.length||A.getSugarcrmAccounts(),c.success({title:"SugarcrmAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintSugarcrmAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSugarcrmAccounts);return A.selectedSugarcrmAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected sugarcrmAccounts?").htmlContent("<b>"+A.selectedSugarcrmAccounts.length+" selected</b> will be deleted.").ariaLabel("delete SugarcrmAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSugarcrmAccounts.forEach(function(e){v(e)}),A.selectedSugarcrmAccounts=[]})}function E(){A.selectedSugarcrmAccounts=[]}function y(){A.selectedSugarcrmAccounts=A.sugarcrmAccounts.rows}var A=this;A.sugarcrmAccounts=r||{count:0,rows:[]},A.table="sugarcrmAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedSugarcrmAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,username,remoteUri,password,serverUrl,description",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getSugarcrmAccounts=g,A.createOrEditSugarcrmAccount=h,A.deleteSugarcrmAccount=v,A.exportSelectedSugarcrmAccounts=b,A.deleteSelectedSugarcrmAccounts=f,A.deselectSugarcrmAccounts=E,A.selectAllSugarcrmAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSugarcrmAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","sugarcrmAccounts","api","msUtils","toasty"],angular.module("app.integrations").controller("SugarcrmAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intZendeskAccount.save(p.zendeskAccount).$promise.then(function(e){p.zendeskAccounts.unshift(e),i.success({title:"ZendeskAccount properly created",msg:p.zendeskAccount.name?p.zendeskAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intZendeskAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intZendeskAccount.update({id:p.zendeskAccount.id},p.zendeskAccount).$promise.then(function(e){var t=_.find(p.zendeskAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"ZendeskAccount properly saved!",msg:p.zendeskAccount.name?p.zendeskAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intZendeskAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The zendeskAccount will be deleted.").ariaLabel("Delete ZendeskAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intZendeskAccount.delete({id:p.zendeskAccount.id}).$promise.then(function(){_.remove(p.zendeskAccounts,{id:p.zendeskAccount.id}),i.success({title:"ZendeskAccount properly deleted!",msg:(p.zendeskAccount.name||"zendeskAccount")+" has been deleted!"}),u(p.zendeskAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_ZENDESKACCOUNT",p.zendeskAccount=angular.copy(s),p.zendeskAccounts=o,p.newZendeskAccount=!1,p.zendeskAccount||(p.zendeskAccount={authType:"password",serverUrl:n.protocol()+"://"+n.host()+":"+n.port()},p.title="INTEGRATIONS.NEW_ZENDESKACCOUNT",p.newZendeskAccount=!0),p.addNewZendeskAccount=l,p.saveZendeskAccount=d,p.deleteZendeskAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","zendeskAccounts","zendeskAccount","api"],angular.module("app.integrations").controller("CreateOrEditZendeskAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intZendeskField.save(v.item).$promise.then(function(e){v.items.unshift(e),i.success({title:_.capitalize(d)+" properly created",msg:_.capitalize(d)+" has been created!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.save"}]})}function u(){v.errors=[],v.customField&&(v.item.idField=v.customField.id,v.item.nameField=v.customField.name,v.item.customField=v.customField.custom),c.intZendeskField.update({id:v.item.id},v.item).$promise.then(function(e){var t=_.find(v.items,{id:e.id});t&&_.merge(t,e),i.success({title:_.capitalize(d)+" properly saved!",msg:_.capitalize(d)+" has been saved!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.intItem.update"}]})}function p(e){v.errors=[];var t=a.confirm().title("Are you sure?").content("The "+d+" will be deleted.").ariaLabel("Delete "+_.capitalize(d)).ok("Delete").cancel("Cancel").targetEvent(e);a.show(t).then(function(){c.intZendeskField.delete({id:v.item.id}).$promise.then(function(){_.remove(v.items,{id:v.item.id}),i.success({title:_.capitalize(d)+" properly deleted!",msg:_.capitalize(d)+" has been deleted!"}),h()}).catch(function(e){console.error(e),v.errors=e.data.errors||[{message:e.toString(),type:"api.item.delete"}]})},function(){})}function g(){return void 0!==v.item.variableName?v.item.variableName:"Please select a variable"}function h(){a.hide()}var v=this;v.errors=[],v.title="INTEGRATIONS.EDIT_"+_.toUpper(d),v.item=angular.copy(r),v.items=s,v.type=d,v.newItem=!1,v.item||(v.item={type:"string"},v.item[_.capitalize(d)+"Id"]=o.id,v.title="INTEGRATIONS.NEW_"+_.toUpper(d),v.newItem=!0),v.addNewItem=m,v.saveItem=u,v.deleteItem=p,v.getSelectedVariable=g,v.closeDialog=h,c.variable.get({nolimit:!0}).$promise.then(function(e){return v.variables=e.rows?e.rows:[],c.voiceAgentReport.describe().$promise}).then(function(e){return v.voiceAgentReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"]),c.voiceDialReport.describe().$promise}).then(function(e){v.voiceDialReportColumns=_.difference(_.keys(e),["$promise","$resolved","createdAt","updatedAt","sourceid"])}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETVARIABLES",msg:e.data?JSON.stringify(e.data):e.toString()})}),c.intZendeskAccount.getFields({id:l.id}).$promise.then(function(e){v.accountConnected=!0,v.fields=e.rows?e.rows:[],v.item.idField&&(v.customField=_.find(v.fields,{id:v.item.idField}))}).catch(function(e){v.accountConnected=!1,console.error(e)})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","configuration","items","item","account","type","api"],angular.module("app.integrations").controller("CreateOrEditZendeskAccountItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.integrations.zendeskAccounts")}function r(){i.intZendeskAccount.update({id:l.zendeskAccount.id},l.zendeskAccount).$promise.then(function(){a.success({title:"ZendeskAccount updated!",msg:l.zendeskAccount.name?l.zendeskAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintZendeskAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.zendeskAccount=e.params.zendeskAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoZendeskAccounts=s,l.saveZendeskAccount=r}e.$inject=["$state","$mdDialog","$document","toasty","api","zendeskAccount"],angular.module("app.integrations").controller("ZendeskAccountController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){n.intZendeskConfiguration.setTags({id:A.zendeskConfiguration.id,ids:A.selectedTags}).$promise.then(function(){a.success({title:"Tags set!",msg:"Tags has been set!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ADDTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})})}function o(e){A.zendeskAccount=e,n.intZendeskAccount.getConfigurations({id:A.zendeskAccount.id,sort:"-updatedAt"}).$promise.then(function(e){return A.zendeskConfigurations=e.rows?e.rows:[],A.zendeskConfigurations.length&&A.getZendeskConfiguration(0),n.variable.get({nolimit:!0,sort:"name"}).$promise}).then(function(e){A.variables=e.rows?e.rows:[],A.variablesById=_.keyBy(A.variables,"id")}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETCONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})})}function s(e){A.zendeskConfiguration=A.zendeskConfigurations[e],A.selectedZendeskConfiguration=e,n.intZendeskConfiguration.getSubjects({id:A.zendeskConfiguration.id}).$promise.then(function(e){return A.subjects=e.rows?e.rows:[],n.intZendeskConfiguration.getDescriptions({id:A.zendeskConfiguration.id}).$promise}).then(function(e){return A.descriptions=e.rows?e.rows:[],n.intZendeskConfiguration.getFields({id:A.zendeskConfiguration.id}).$promise}).then(function(e){A.fields=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),n.intZendeskConfiguration.getTags({id:A.zendeskConfiguration.id}).$promise.then(function(e){A.selectedTags=e.rows?_.map(e.rows,"id"):[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})})}function r(n,a){e.show({controller:"CreateOrEditZendeskConfigurationDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/zendeskConfigurations/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{zendeskConfiguration:a,zendeskConfigurations:A.zendeskConfigurations}}).finally(function(){A.getZendeskConfiguration(0)})}function l(t,i){var o=e.confirm().title("Are you sure want to delete the zendeskConfiguration?").htmlContent("<b>"+(i.name||"zendeskConfiguration")+"</b> will be deleted.").ariaLabel("delete zendeskConfiguration").targetEvent(t).ok("OK").cancel("CANCEL");e.show(o).then(function(){n.intZendeskConfiguration.delete({id:i.id}).$promise.then(function(){_.remove(A.zendeskConfigurations,{id:i.id}),a.success({title:"ZendeskConfiguration deleted!",msg:i.name?i.name+" has been deleted!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATION",msg:e.data?JSON.stringify(e.data):e.toString()})}).finally(function(){A.getZendeskConfiguration(0)})},function(){console.log("CANCEL")})}function d(n,a){e.show({controller:"CreateOrEditZendeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"subject",item:a,items:A.subjects,configuration:A.zendeskConfiguration,account:A.zendeskAccount}})}function c(e){n.intZendeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.subjects,{id:e.id}),a.success({title:"Subject deleted!",msg:"Subject has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function m(t,n){var a=e.confirm().title("Are you sure want to delete the subject?").htmlContent("<b>Subject</b> will be deleted.").ariaLabel("delete subject").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){c(n)},function(){console.log("CANCEL")})}function u(t){var n=e.confirm().title("Are you sure want to delete the selected subjects?").htmlContent("<b>"+A.selectedSubjects.length+" selected</b> will be deleted.").ariaLabel("delete subjects").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedSubjects.forEach(function(e){c(e)}),A.selectedSubjects=[]})}function p(n,a){e.show({controller:"CreateOrEditZendeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"description",item:a,items:A.descriptions,configuration:A.zendeskConfiguration,account:A.zendeskAccount}})}function g(e){n.intZendeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.descriptions,{id:e.id}),a.success({title:"Description deleted!",msg:"Description has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function h(t,n){var a=e.confirm().title("Are you sure want to delete the description?").htmlContent("<b>Description</b> will be deleted.").ariaLabel("delete description").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){g(n)},function(){console.log("CANCEL")})}function v(t){var n=e.confirm().title("Are you sure want to delete the selected descriptions?").htmlContent("<b>"+A.selectedDescriptions.length+" selected</b> will be deleted.").ariaLabel("delete descriptions").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedDescriptions.forEach(function(e){g(e)}),A.selectedDescriptions=[]})}function b(n,a){e.show({controller:"CreateOrEditZendeskAccountItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/edit/item/dialog.html",parent:angular.element(t.body),targetEvent:n,clickOutsideToClose:!0,locals:{type:"field",item:a,items:A.fields,configuration:A.zendeskConfiguration,account:A.zendeskAccount}})}function f(e){n.intZendeskField.delete({id:e.id}).$promise.then(function(){_.remove(A.fields,{id:e.id}),a.success({title:"Field deleted!",msg:"Field has been deleted!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:DELETECONFIGURATIONFIELD",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(t,n){var a=e.confirm().title("Are you sure want to delete the field?").htmlContent("<b>Field</b> will be deleted.").ariaLabel("delete field").targetEvent(t).ok("OK").cancel("CANCEL");e.show(a).then(function(){f(n)},function(){console.log("CANCEL")})}function y(t){var n=e.confirm().title("Are you sure want to delete the selected fields?").htmlContent("<b>"+A.selectedFields.length+" selected</b> will be deleted.").ariaLabel("delete fields").targetEvent(t).ok("OK").cancel("CANCEL");e.show(n).then(function(){A.selectedFields.forEach(function(e){f(e)}),A.selectedFields=[]})}var A=this;A.zendeskAccount={},A.zendeskConfiguration={},A.zendeskConfigurations=[],A.selectedZendeskConfiguration=-1,A.init=o,A.getZendeskConfiguration=s,A.createOrEditZendeskConfiguration=r,A.deleteZendeskConfiguration=l,A.selectedTags=[],A.selectTagsChanged=i,n.tag.get({nolimit:!0,sort:"name"}).$promise.then(function(e){A.tags=e.rows?e.rows:[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTAGS",msg:e.data?JSON.stringify(e.data):e.toString()})}),A.selectedSubjects=[],A.createOrEditSubject=d,A.deleteSubjectConfirm=m,A.deleteSelectedSubjects=u,A.selectedDescriptions=[],A.createOrEditDescription=p,A.deleteDescriptionConfirm=h,A.deleteSelectedDescriptions=v,A.selectedFields=[],A.createOrEditField=b,A.deleteFieldConfirm=E,A.deleteSelectedFields=y}e.$inject=["$mdDialog","$document","api","toasty"],angular.module("app.integrations").controller("ZendeskAccountConfigurationsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.intZendeskAccount.addConfiguration({id:t.params.id},p.zendeskConfiguration).$promise.then(function(e){p.zendeskConfigurations.unshift(e),i.success({title:"ZendeskConfiguration properly created",msg:p.zendeskConfiguration.name?p.zendeskConfiguration.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskConfiguration.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intZendeskConfiguration.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.intZendeskConfiguration.update({id:p.zendeskConfiguration.id},p.zendeskConfiguration).$promise.then(function(e){var t=_.find(p.zendeskConfigurations,{id:e.id});t&&_.merge(t,e),i.success({title:"ZendeskConfiguration properly saved!",msg:p.zendeskConfiguration.name?p.zendeskConfiguration.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskConfiguration.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.intZendeskConfiguration.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The zendeskConfiguration will be deleted.").ariaLabel("Delete ZendeskConfiguration").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.intZendeskConfiguration.delete({id:p.zendeskConfiguration.id}).$promise.then(function(){_.remove(p.zendeskConfigurations,{id:p.zendeskConfiguration.id}),i.success({title:"ZendeskConfiguration properly deleted!",msg:(p.zendeskConfiguration.name||"zendeskConfiguration")+" has been deleted!"}),u(p.zendeskConfiguration)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.intZendeskConfiguration.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="INTEGRATIONS.EDIT_ZENDESKCONFIGURATION",p.zendeskConfiguration=angular.copy(s),p.zendeskConfigurations=o,p.newZendeskConfiguration=!1,p.zendeskConfiguration||(p.zendeskConfiguration={channel:"voice",type:"inbound"},p.title="INTEGRATIONS.NEW_ZENDESKCONFIGURATION",p.newZendeskConfiguration=!0),p.addNewZendeskConfiguration=l,p.saveZendeskConfiguration=d,p.deleteZendeskConfiguration=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","zendeskConfigurations","zendeskConfiguration","api"],angular.module("app.integrations").controller("CreateOrEditZendeskConfigurationDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.integrations.zendeskAccounts.edit",{id:e.id,zendeskAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the zendeskAccount?").htmlContent("<b>"+(e.name||"zendeskAccount")+"</b> will be deleted.").ariaLabel("delete zendeskAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.zendeskAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.intZendeskAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditZendeskAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/integrations/views/zendeskAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{zendeskAccount:t,zendeskAccounts:A.zendeskAccounts.rows}})}function v(e){l.intZendeskAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.zendeskAccounts.rows,{id:e.id}),A.zendeskAccounts.count-=1,A.zendeskAccounts.rows.length||A.getZendeskAccounts(),c.success({title:"ZendeskAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETintZendeskAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedZendeskAccounts);return A.selectedZendeskAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected zendeskAccounts?").htmlContent("<b>"+A.selectedZendeskAccounts.length+" selected</b> will be deleted.").ariaLabel("delete ZendeskAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedZendeskAccounts.forEach(function(e){v(e)}),A.selectedZendeskAccounts=[]})}function E(){A.selectedZendeskAccounts=[]}function y(){A.selectedZendeskAccounts=A.zendeskAccounts.rows}var A=this;A.zendeskAccounts=r||{count:0,rows:[]},A.table="zendeskAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedZendeskAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,username,remoteUri,authType,password,token,serverUrl,description",limit:10,page:1},A.arrayauthType=_.keyBy([{option:"Password",value:"'password'"},{option:"Token",value:"'token'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getZendeskAccounts=g,A.createOrEditZendeskAccount=h,A.deleteZendeskAccount=v,A.exportSelectedZendeskAccounts=b,A.deleteSelectedZendeskAccounts=f,A.deselectZendeskAccounts=E,A.selectAllZendeskAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getZendeskAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","zendeskAccounts","api","msUtils","toasty"],angular.module("app.integrations").controller("ZendeskAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.mailAccount.save(p.mailAccount).$promise.then(function(e){p.mailAccounts.unshift(e),i.success({title:"MailAccount properly created",msg:p.mailAccount.name?p.mailAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.mailAccount.update({id:p.mailAccount.id},p.mailAccount).$promise.then(function(e){var t=_.find(p.mailAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"MailAccount properly saved!",msg:p.mailAccount.name?p.mailAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The mailAccount will be deleted.").ariaLabel("Delete MailAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.mailAccount.delete({id:p.mailAccount.id}).$promise.then(function(){_.remove(p.mailAccounts,{id:p.mailAccount.id}),i.success({title:"MailAccount properly deleted!",msg:(p.mailAccount.name||"mailAccount")+" has been deleted!"}),u(p.mailAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MAIL.EDIT_MAILACCOUNT",p.mailAccount=angular.copy(s),p.mailAccounts=o,p.newMailAccount=!1,p.mailAccount||(p.mailAccount={},p.title="MAIL.NEW_MAILACCOUNT",p.newMailAccount=!0),p.addNewMailAccount=l,p.saveMailAccount=d,p.deleteMailAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","mailAccounts","mailAccount","api"],angular.module("app.mail").controller("CreateOrEditMailAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.mailAccount=e,h.query.id=h.mailAccount.id,h.query.MailAccountId=h.mailAccount.id,h.getMailAccountMailDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the mailDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete mailDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.mailAccountMailDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.mailAccount.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditMailDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/mail/views/mailAccounts/edit/mailDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{mailDisposition:t,mailDispositions:h.mailAccountMailDispositions.rows}})}function p(e){r.mailDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.mailAccountMailDispositions.rows,{id:e.id}),h.mailAccountMailDispositions.count-=1,h.mailAccountMailDispositions.rows.length||h.getMailAccountMailDispositions(),s.success({title:"MailDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected mailDispositions?").htmlContent("<b>"+h.selectedMailAccountMailDispositions.length+" selected</b> will be deleted.").ariaLabel("delete mailDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedMailAccountMailDispositions.forEach(function(e){p(e)}),h.selectedMailAccountMailDispositions=[]})}var h=this;h.mailAccount={},h.mailAccountMailDispositions={count:0,rows:[]},h.selectedMailAccountMailDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getMailAccountMailDispositions=m,h.createOrEditMailAccountMailDisposition=u,h.deleteMailAccountMailDisposition=p,h.deleteSelectedMailAccountMailDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getMailAccountMailDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.mail").controller("MailAccountMailDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.mailDisposition.save(p.mailDisposition).$promise.then(function(e){p.mailDispositions.unshift(e),i.success({title:"MailDisposition properly created",msg:p.mailDisposition.name?p.mailDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.mailDisposition.update({id:p.mailDisposition.id},p.mailDisposition).$promise.then(function(e){var t=_.find(p.mailDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"MailDisposition properly saved!",msg:p.mailDisposition.name?p.mailDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The mailDisposition will be deleted.").ariaLabel("Delete MailDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.mailDisposition.delete({id:p.mailDisposition.id}).$promise.then(function(){_.remove(p.mailDispositions,{id:p.mailDisposition.id}),i.success({title:"MailDisposition properly deleted!",msg:(p.mailDisposition.name||"mailDisposition")+" has been deleted!"}),u(p.mailDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.mailDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MAIL.EDIT_MAILDISPOSITION",p.mailDisposition=angular.copy(s),p.mailDispositions=o,p.newMailDisposition=!1,p.mailDisposition||(p.mailDisposition={},p.title="MAIL.NEW_MAILDISPOSITION",p.newMailDisposition=!0),t.params.id&&(p.mailDisposition.MailAccountId=t.params.id),p.addNewMailDisposition=l,p.saveMailDisposition=d,p.deleteMailDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","mailDispositions","mailDisposition","api"],angular.module("app.mail").controller("CreateOrEditMailDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.mail.mailAccounts")}function r(){i.mailAccount.update({id:l.mailAccount.id},l.mailAccount).$promise.then(function(){a.success({title:"MailAccount updated!",msg:l.mailAccount.name?l.mailAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.mailAccount=e.params.mailAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoMailAccounts=s,l.saveMailAccount=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.template.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.templates=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplates",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","mailAccount"],angular.module("app.mail").controller("MailAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.mail.mailAccounts.edit",{id:e.id,mailAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the mailAccount?").htmlContent("<b>"+(e.name||"mailAccount")+"</b> will be deleted.").ariaLabel("delete mailAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.mailAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.mailAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditMailAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/mail/views/mailAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{mailAccount:t,mailAccounts:A.mailAccounts.rows}})}function v(e){l.mailAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.mailAccounts.rows,{id:e.id}),A.mailAccounts.count-=1,A.mailAccounts.rows.length||A.getMailAccounts(),c.success({title:"MailAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedMailAccounts);return A.selectedMailAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected mailAccounts?").htmlContent("<b>"+A.selectedMailAccounts.length+" selected</b> will be deleted.").ariaLabel("delete MailAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedMailAccounts.forEach(function(e){v(e)}),A.selectedMailAccounts=[]})}function E(){A.selectedMailAccounts=[]}function y(){A.selectedMailAccounts=A.mailAccounts.rows}var A=this;A.mailAccounts=r||{count:0,rows:[]},A.table="mailAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedMailAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,address,ListId,TemplateId,fidelity,timeout,service,description,Imap.host,Imap.username,Imap.password,Imap.port,Imap.mailbox,Imap.connTimeout,Imap.authTimeout,Imap.delete,Imap.ssl,Imap.keepalive,Smtp.host,Smtp.username,Smtp.password,Smtp.port,Smtp.ssl,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl,whiteLabel",limit:10,page:1},A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getMailAccounts=g,A.createOrEditMailAccount=h,A.deleteMailAccount=v,A.exportSelectedMailAccounts=b,A.deleteSelectedMailAccounts=f,A.deselectMailAccounts=E,A.selectAllMailAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getMailAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","mailAccounts","api","msUtils","toasty"],angular.module("app.mail").controller("MailAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.mailQueue.save(p.mailQueue).$promise.then(function(e){p.mailQueues.unshift(e),i.success({title:"MailQueue properly created",msg:p.mailQueue.name?p.mailQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.mailQueue.update({id:p.mailQueue.id},p.mailQueue).$promise.then(function(e){var t=_.find(p.mailQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"MailQueue properly saved!",msg:p.mailQueue.name?p.mailQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The mailQueue will be deleted.").ariaLabel("Delete MailQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.mailQueue.delete({id:p.mailQueue.id}).$promise.then(function(){_.remove(p.mailQueues,{id:p.mailQueue.id}),i.success({title:"MailQueue properly deleted!",msg:(p.mailQueue.name||"mailQueue")+" has been deleted!"}),u(p.mailQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.mailQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MAIL.EDIT_MAILQUEUE",p.mailQueue=angular.copy(s),p.mailQueues=o,p.newMailQueue=!1,p.mailQueue||(p.mailQueue={strategy:"beepall"},p.title="MAIL.NEW_MAILQUEUE",p.newMailQueue=!0),p.addNewMailQueue=l,p.saveMailQueue=d,p.deleteMailQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","mailQueues","mailQueue","api"],angular.module("app.mail").controller("CreateOrEditMailQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.mailQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MAIL.ALL_TEAMS"),labelSelected:i.instant("MAIL.SELECTED_TEAMS"),transferCallback:function(e,a){n.mailQueue[a?"removeTeams":"addTeams"]({id:s.mailQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:mailQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.mailQueue.getTeams({id:s.mailQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","mailQueue","$translate"],angular.module("app.mail").controller("MailQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"MailQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/mail/views/mailQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{mailQueue:e,mailQueues:d.mailQueues?d.mailQueues.rows:[]}})}function r(){e.go("app.mail.mailQueues")}function l(){i.mailQueue.update({id:d.mailQueue.id},d.mailQueue).$promise.then(function(){a.success({title:"MailQueue updated!",msg:d.mailQueue.name?d.mailQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.mailQueue=e.params.mailQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoMailQueues=r,d.saveMailQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","mailQueue"],angular.module("app.mail").controller("MailQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.mail.mailQueues.edit",{id:e.id,mailQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the mailQueue?").htmlContent("<b>"+(e.name||"mailQueue")+"</b> will be deleted.").ariaLabel("delete mailQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.mailQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.mailQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditMailQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/mail/views/mailQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{mailQueue:t,mailQueues:A.mailQueues.rows}})}function v(e){l.mailQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.mailQueues.rows,{id:e.id}),A.mailQueues.count-=1,A.mailQueues.rows.length||A.getMailQueues(),c.success({title:"MailQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedMailQueues);return A.selectedMailQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected mailQueues?").htmlContent("<b>"+A.selectedMailQueues.length+" selected</b> will be deleted.").ariaLabel("delete MailQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedMailQueues.forEach(function(e){v(e)}),A.selectedMailQueues=[]})}function E(){A.selectedMailQueues=[]}function y(){A.selectedMailQueues=A.mailQueues.rows}var A=this;A.mailQueues=r||{count:0,rows:[]},A.table="mailQueues",A.listOrder="",A.listOrderAsc=null,A.selectedMailQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getMailQueues=g,A.createOrEditMailQueue=h,A.deleteMailQueue=v,A.exportSelectedMailQueues=b,A.deleteSelectedMailQueues=f,A.deselectMailQueues=E,A.selectAllMailQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getMailQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","mailQueues","api","msUtils","toasty"],angular.module("app.mail").controller("MailQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.campaign.save(p.ivrCampaign).$promise.then(function(e){p.ivrCampaigns.unshift(e),i.success({title:"IvrCampaign properly created",msg:p.ivrCampaign.name?p.ivrCampaign.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.campaign.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.campaign.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.campaign.update({id:p.ivrCampaign.id},p.ivrCampaign).$promise.then(function(e){var t=_.find(p.ivrCampaigns,{id:e.id});t&&_.merge(t,e),i.success({title:"IvrCampaign properly saved!",msg:p.ivrCampaign.name?p.ivrCampaign.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.campaign.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.campaign.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The ivrCampaign will be deleted.").ariaLabel("Delete IvrCampaign").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.campaign.delete({id:p.ivrCampaign.id}).$promise.then(function(){_.remove(p.ivrCampaigns,{id:p.ivrCampaign.id}),i.success({title:"IvrCampaign properly deleted!",msg:(p.ivrCampaign.name||"ivrCampaign")+" has been deleted!"}),u(p.ivrCampaign)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.campaign.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MOTIONDIALER.EDIT_IVRCAMPAIGN",p.ivrCampaign=angular.copy(s),p.ivrCampaigns=o,p.newIvrCampaign=!1,p.ivrCampaign||(p.ivrCampaign={active:!0,type:"ivr",limitCalls:30,dialOriginateTimeout:30,dialGlobalMaxRetry:4,dialCongestionMaxRetry:3,dialCongestionRetryFrequency:150,dialBusyMaxRetry:3,dialBusyRetryFrequency:150,dialNoAnswerMaxRetry:3,dialNoAnswerRetryFrequency:150,dialGlobalInterval:"07:00-22:00,*,*,*"},p.title="MOTIONDIALER.NEW_IVRCAMPAIGN",p.newIvrCampaign=!0),p.addNewIvrCampaign=l,p.saveIvrCampaign=d,p.deleteIvrCampaign=c,p.getDateFromString=m,p.closeDialog=u,r.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.trunks=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.squareProject.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.projects=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){p.interval=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","ivrCampaigns","ivrCampaign","api"],angular.module("app.motiondialer").controller("CreateOrEditIvrCampaignDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.ivrCampaign=a,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_LISTS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_LISTS"),transferCallback:function(e,a){n.campaign[a?"removeBlackLists":"addBlackLists"]({id:s.ivrCampaign.id,ids:_.map(e,"id")}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ivrCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.campaign.getBlackLists({id:s.ivrCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.cmList.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","ivrCampaign","$translate"],angular.module("app.motiondialer").controller("IvrCampaignblacklistaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.ivrCampaign=e,h.query.id=h.ivrCampaign.id,h.query.CampaignId=h.ivrCampaign.id,h.getIvrCampaignHopperBlacks()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperBlack?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperBlack").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.ivrCampaignHopperBlacks=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.campaign.getHopperBlacks(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperBlackDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/hopperBlacks/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperBlack:t,hopperBlacks:h.ivrCampaignHopperBlacks.rows}})}function p(e){r.hopperBlack.delete({id:e.id}).$promise.then(function(){_.remove(h.ivrCampaignHopperBlacks.rows,{id:e.id}),h.ivrCampaignHopperBlacks.count-=1,h.ivrCampaignHopperBlacks.rows.length||h.getIvrCampaignHopperBlacks(),s.success({title:"HopperBlack deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperBlacks?").htmlContent("<b>"+h.selectedIvrCampaignHopperBlacks.length+" selected</b> will be deleted.").ariaLabel("delete hopperBlacks").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIvrCampaignHopperBlacks.forEach(function(e){p(e)}),h.selectedIvrCampaignHopperBlacks=[]})}var h=this;h.ivrCampaign={},h.ivrCampaignHopperBlacks={count:0,rows:[]},h.selectedIvrCampaignHopperBlacks=[],h.query={fields:"createdAt,updatedAt,ContactId,phone",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIvrCampaignHopperBlacks=m,h.createOrEditIvrCampaignHopperBlack=u,h.deleteIvrCampaignHopperBlack=p,h.deleteSelectedIvrCampaignHopperBlacks=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIvrCampaignHopperBlacks())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("IvrCampaignHopperBlacksController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.ivrCampaign=e,h.query.id=h.ivrCampaign.id,h.query.CampaignId=h.ivrCampaign.id,h.getIvrCampaignHopperFinals()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperFinal?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperFinal").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.ivrCampaignHopperFinals=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.campaign.getHopperFinals(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperFinalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/hopperFinals/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperFinal:t,hopperFinals:h.ivrCampaignHopperFinals.rows}})}function p(e){r.hopperFinal.delete({id:e.id}).$promise.then(function(){_.remove(h.ivrCampaignHopperFinals.rows,{id:e.id}),h.ivrCampaignHopperFinals.count-=1,h.ivrCampaignHopperFinals.rows.length||h.getIvrCampaignHopperFinals(),s.success({title:"HopperFinal deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperFinals?").htmlContent("<b>"+h.selectedIvrCampaignHopperFinals.length+" selected</b> will be deleted.").ariaLabel("delete hopperFinals").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIvrCampaignHopperFinals.forEach(function(e){p(e)}),h.selectedIvrCampaignHopperFinals=[]})}var h=this;h.ivrCampaign={},h.ivrCampaignHopperFinals={count:0,rows:[]},h.selectedIvrCampaignHopperFinals=[],h.query={fields:"createdAt,updatedAt,uniqueid,calleridnum,calleridname,statedesc,countcongestionretry,countbusyretry,countnoanswerretry,countglobal,scheduledat,starttime,responsetime,endtime,disposition",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIvrCampaignHopperFinals=m,h.createOrEditIvrCampaignHopperFinal=u,h.deleteIvrCampaignHopperFinal=p,h.deleteSelectedIvrCampaignHopperFinals=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIvrCampaignHopperFinals())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("IvrCampaignHopperFinalsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.ivrCampaign=e,h.query.id=h.ivrCampaign.id,h.query.CampaignId=h.ivrCampaign.id,h.getIvrCampaignHopperHistories()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperHistory?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperHistory").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.ivrCampaignHopperHistories=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.campaign.getHopperHistories(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperHistoryDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/hopperHistories/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperHistory:t,hopperHistories:h.ivrCampaignHopperHistories.rows}})}function p(e){r.hopperHistory.delete({id:e.id}).$promise.then(function(){_.remove(h.ivrCampaignHopperHistories.rows,{id:e.id}),h.ivrCampaignHopperHistories.count-=1,h.ivrCampaignHopperHistories.rows.length||h.getIvrCampaignHopperHistories(),s.success({title:"HopperHistory deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperHistories?").htmlContent("<b>"+h.selectedIvrCampaignHopperHistories.length+" selected</b> will be deleted.").ariaLabel("delete hopperHistories").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIvrCampaignHopperHistories.forEach(function(e){p(e)}),h.selectedIvrCampaignHopperHistories=[]})}var h=this;h.ivrCampaign={},h.ivrCampaignHopperHistories={count:0,rows:[]},h.selectedIvrCampaignHopperHistories=[],h.query={fields:"createdAt,updatedAt,uniqueid,ContactId,calleridnum,calleridname,statedesc,scheduledat,starttime,responsetime,endtime",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIvrCampaignHopperHistories=m,h.createOrEditIvrCampaignHopperHistory=u,h.deleteIvrCampaignHopperHistory=p,h.deleteSelectedIvrCampaignHopperHistories=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIvrCampaignHopperHistories())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("IvrCampaignHopperHistoriesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.ivrCampaign=e,h.query.id=h.ivrCampaign.id,h.query.CampaignId=h.ivrCampaign.id,h.getIvrCampaignHoppers()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopper?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopper").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.ivrCampaignHoppers=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.campaign.getHoppers(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/hoppers/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopper:t,hoppers:h.ivrCampaignHoppers.rows}})}function p(e){r.cmHopper.delete({id:e.id}).$promise.then(function(){_.remove(h.ivrCampaignHoppers.rows,{id:e.id}),h.ivrCampaignHoppers.count-=1,h.ivrCampaignHoppers.rows.length||h.getIvrCampaignHoppers(),s.success({title:"Hopper deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hoppers?").htmlContent("<b>"+h.selectedIvrCampaignHoppers.length+" selected</b> will be deleted.").ariaLabel("delete hoppers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIvrCampaignHoppers.forEach(function(e){p(e)}),h.selectedIvrCampaignHoppers=[]})}var h=this;h.ivrCampaign={},h.ivrCampaignHoppers={count:0,rows:[]},h.selectedIvrCampaignHoppers=[],h.query={fields:"createdAt,updatedAt,id,ContactId,phone,countcongestionretry,countbusyretry,countnoanswerretry,scheduledat",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIvrCampaignHoppers=m,h.createOrEditIvrCampaignHopper=u,h.deleteIvrCampaignHopper=p,h.deleteSelectedIvrCampaignHoppers=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIvrCampaignHoppers())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("IvrCampaignHoppersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmHopper.save(p.hopper).$promise.then(function(e){p.hoppers.unshift(e),i.success({title:"Hopper properly created",msg:p.hopper.name?p.hopper.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmHopper.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmHopper.update({id:p.hopper.id},p.hopper).$promise.then(function(e){var t=_.find(p.hoppers,{id:e.id});t&&_.merge(t,e),i.success({title:"Hopper properly saved!",msg:p.hopper.name?p.hopper.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmHopper.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The hopper will be deleted.").ariaLabel("Delete Hopper").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmHopper.delete({id:p.hopper.id}).$promise.then(function(){_.remove(p.hoppers,{id:p.hopper.id}),i.success({title:"Hopper properly deleted!",msg:(p.hopper.name||"hopper")+" has been deleted!"}),u(p.hopper)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MOTIONDIALER.EDIT_HOPPER",p.hopper=angular.copy(s),p.hoppers=o,p.newHopper=!1,p.hopper||(p.hopper={},p.title="MOTIONDIALER.NEW_HOPPER",p.newHopper=!0),t.params.id&&(p.hopper.CampaignId=t.params.id),p.addNewHopper=l,p.saveHopper=d,p.deleteHopper=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","hoppers","hopper","api"],angular.module("app.motiondialer").controller("CreateOrEditHopperDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.ivrCampaign=a,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_LISTS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_LISTS"),transferCallback:function(e,a){n.campaign[a?"removeLists":"addLists"]({id:s.ivrCampaign.id,ids:_.map(e,"id")}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:ivrCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.campaign.getLists({id:s.ivrCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.cmList.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","ivrCampaign","$translate"],angular.module("app.motiondialer").controller("IvrCampaignlistaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"IvrCampaignlistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/listadd/listadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{ivrCampaign:e,ivrCampaigns:c.ivrCampaigns?c.ivrCampaigns.rows:[]}})}function r(e,a){t.show({controller:"IvrCampaignblacklistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/blacklistadd/blacklistadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{ivrCampaign:e,ivrCampaigns:c.ivrCampaigns?c.ivrCampaigns.rows:[]}})}function l(){e.go("app.motiondialer.ivrCampaigns")}function d(){i.campaign.update({id:c.ivrCampaign.id},c.ivrCampaign).$promise.then(function(){a.success({title:"IvrCampaign updated!",msg:c.ivrCampaign.name?c.ivrCampaign.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.ivrCampaign=e.params.ivrCampaign||o||{},c.selectedTab=e.params.tab||0,c.listadddialog=s,c.blacklistadddialog=r,c.gotoIvrCampaigns=l,c.saveIvrCampaign=d,i.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){c.trunks=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.squareProject.get({fields:"id,name",sort:"name"}).$promise.then(function(e){c.projects=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){c.interval=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","ivrCampaign"],angular.module("app.motiondialer").controller("IvrCampaignController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.motiondialer.ivrCampaigns.edit",{id:e.id,ivrCampaign:e})}function u(e,t){i.show({controller:"IvrCampaignlistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/listadd/listadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{ivrCampaign:e,ivrCampaigns:x.ivrCampaigns?x.ivrCampaigns.rows:[]}})}function p(e,t){i.show({controller:"IvrCampaignblacklistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/edit/blacklistadd/blacklistadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{ivrCampaign:e,ivrCampaigns:x.ivrCampaigns?x.ivrCampaigns.rows:[]}})}function g(e,t){var n=i.confirm().title("Are you sure want to delete the ivrCampaign?").htmlContent("<b>"+(e.name||"ivrCampaign")+"</b> will be deleted.").ariaLabel("delete ivrCampaign").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){f(e)},function(){console.log("CANCEL")})}function h(e){x.ivrCampaigns=e||{count:0,rows:[]}}function v(){x.query.offset=(x.query.page-1)*x.query.limit,x.promise=l.campaign.get(x.query,h).$promise}function b(e,t){i.show({controller:"CreateOrEditIvrCampaignDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{ivrCampaign:t,ivrCampaigns:x.ivrCampaigns.rows}})}function f(e){l.campaign.delete({id:e.id}).$promise.then(function(){_.remove(x.ivrCampaigns.rows,{id:e.id}),x.ivrCampaigns.count-=1,x.ivrCampaigns.rows.length||x.getIvrCampaigns(),c.success({title:"IvrCampaign deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcampaign",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(){var e=_.clone(x.selectedIvrCampaigns);return x.selectedIvrCampaigns=[],e}function y(e){var t=i.confirm().title("Are you sure want to delete the selected ivrCampaigns?").htmlContent("<b>"+x.selectedIvrCampaigns.length+" selected</b> will be deleted.").ariaLabel("delete IvrCampaigns").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){x.selectedIvrCampaigns.forEach(function(e){f(e)}),x.selectedIvrCampaigns=[]})}function A(){x.selectedIvrCampaigns=[]}function C(){x.selectedIvrCampaigns=x.ivrCampaigns.rows}var x=this;x.ivrCampaigns=r||{count:0,rows:[]},x.table="ivrCampaigns",x.listOrder="",x.listOrderAsc=null,x.selectedIvrCampaigns=[],x.query={fields:"createdAt,updatedAt,id,name,active,TrunkId,TrunkBackupId,type,IntervalId,SquareProjectId,limitCalls,description,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,dialGlobalInterval,dialTimezone",type:"ivr",sort:"-updatedAt",limit:10,page:1},x.editstate=m,x.listadddialog=u,x.blacklistadddialog=p,x.deleteconfirm=g,x.success=h,x.getIvrCampaigns=v,x.createOrEditIvrCampaign=b,x.deleteIvrCampaign=f,x.exportSelectedIvrCampaigns=E,x.deleteSelectedIvrCampaigns=y,x.deselectIvrCampaigns=A,x.selectAllIvrCampaigns=C,l.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){x.trunks=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.squareProject.get({fields:"id,name",sort:"name"}).$promise.then(function(e){x.projects=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){x.interval=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})});var T=!0,S=1;e.$watch("vm.query.filter",function(e,t){T?s(function(){T=!1}):(t||(S=x.query.page),e!==t&&(x.query.page=1),e||(x.query.page=S),x.getIvrCampaigns())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","ivrCampaigns","api","msUtils","toasty"],angular.module("app.motiondialer").controller("IvrCampaignsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceQueue.save(p.queueCampaign).$promise.then(function(e){p.queueCampaigns.unshift(e),i.success({title:"QueueCampaign properly created",msg:p.queueCampaign.name?p.queueCampaign.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceQueue.update({id:p.queueCampaign.id},p.queueCampaign).$promise.then(function(e){var t=_.find(p.queueCampaigns,{id:e.id});t&&_.merge(t,e),i.success({title:"QueueCampaign properly saved!",msg:p.queueCampaign.name?p.queueCampaign.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The queueCampaign will be deleted.").ariaLabel("Delete QueueCampaign").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceQueue.delete({id:p.queueCampaign.id}).$promise.then(function(){_.remove(p.queueCampaigns,{id:p.queueCampaign.id}),i.success({title:"QueueCampaign properly deleted!",msg:(p.queueCampaign.name||"queueCampaign")+" has been deleted!"}),u(p.queueCampaign)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MOTIONDIALER.EDIT_QUEUECAMPAIGN",p.queueCampaign=angular.copy(s),p.queueCampaigns=o,p.newQueueCampaign=!1,p.queueCampaign||(p.queueCampaign={dialActive:!0,type:"outbound",autopause:"no",ringinuse:"no",timeoutrestart:"no",setinterfacevar:"no",setqueuevar:"no",setqueueentryvar:"no",dialGlobalInterval:"07:00-22:00,*,*,*",dialMethod:"progressive",dialPowerLevel:1,dialPredictiveOptimization:"dropRate",dialPredictiveOptimizationPercentage:3,dialPredictiveInterval:10,dialLimitQueue:0,dialOriginateTimeout:30,dialQueueOptions:"tTxX",dialQueueTimeout:3,strategy:"rrmemory",timeout:3,retry:2,weight:1,dialGlobalMaxRetry:4,dialCongestionMaxRetry:3,dialCongestionRetryFrequency:150,dialBusyMaxRetry:3,dialBusyRetryFrequency:150,dialNoAnswerMaxRetry:3,dialNoAnswerRetryFrequency:150},p.title="MOTIONDIALER.NEW_QUEUECAMPAIGN",p.newQueueCampaign=!0),p.addNewQueueCampaign=l,p.saveQueueCampaign=d,p.deleteQueueCampaign=c,p.getDateFromString=m,p.closeDialog=u,r.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.trunks=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){p.interval=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","queueCampaigns","queueCampaign","api"],angular.module("app.motiondialer").controller("CreateOrEditQueueCampaignDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){return n.voiceQueue[c.isVoiceRealtime()?"getMembers":"getAgents"]({id:c.queueCampaign.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){return c.isVoiceRealtime()?c.selectedItems=e.rows?_.map(e.rows,function(e){return e.id=e.UserId,e.fullname=e.membername,e.penalty=e.hasOwnProperty("penalty")?"penalty "+e.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[]:c.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserQueueCampaign?"penalty "+e.UserQueueCampaign.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.selectedItems=c.selectedItems,n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){c.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserQueueCampaign?"penalty "+e.UserQueueCampaign.penalty:"",e.internal=e.internal?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.items=_.differenceBy(c.items,c.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function l(){return o}function d(){e.hide()}var c=this;c.queueCampaign=a,c.penalty=0,c.items=[],c.selectedItems=[],c.closeDialog=d,c.isVoiceRealtime=l,c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:"internal",line3:"penalty",labelAll:s.instant("MOTIONDIALER.ALL_AGENTS"),labelSelected:s.instant("MOTIONDIALER.SELECTED_AGENTS"),transferCallback:function(e,a){n.voiceQueue[a?"removeAgents":"addAgents"]({id:c.queueCampaign.id,ids:_.map(e,c.isVoiceRealtime()&&a?"UserId":"id"),penalty:c.penalty||0,realtime:o||!1}).$promise.then(function(){t.success({title:"QueueCampaign properly "+(a?"removed":"added"),msg:"QueueCampaign has been "+(a?"removed":"added")+"!"}),a||r()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:voiceQueue.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},r()}e.$inject=["$mdDialog","toasty","api","queueCampaign","queueCampaigns","realtime","$translate"],angular.module("app.motiondialer").controller("QueueCampaignagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.queueCampaign=a,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_LISTS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_LISTS"),transferCallback:function(e,a){n.voiceQueue[a?"removeBlackLists":"addBlackLists"]({id:s.queueCampaign.id,ids:_.map(e,"id")}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:queueCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.voiceQueue.getBlackLists({id:s.queueCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.cmList.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","queueCampaign","$translate"],angular.module("app.motiondialer").controller("QueueCampaignblacklistaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.queueCampaign=e,h.query.id=h.queueCampaign.id,h.query.VoiceQueueId=h.queueCampaign.id,h.getQueueCampaignHopperBlacks()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperBlack?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperBlack").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.queueCampaignHopperBlacks=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceQueue.getHopperBlacks(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperBlackDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/hopperBlacks/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperBlack:t,hopperBlacks:h.queueCampaignHopperBlacks.rows}})}function p(e){r.hopperBlack.delete({id:e.id}).$promise.then(function(){_.remove(h.queueCampaignHopperBlacks.rows,{id:e.id}),h.queueCampaignHopperBlacks.count-=1,h.queueCampaignHopperBlacks.rows.length||h.getQueueCampaignHopperBlacks(),s.success({title:"HopperBlack deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperBlacks?").htmlContent("<b>"+h.selectedQueueCampaignHopperBlacks.length+" selected</b> will be deleted.").ariaLabel("delete hopperBlacks").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedQueueCampaignHopperBlacks.forEach(function(e){p(e)}),h.selectedQueueCampaignHopperBlacks=[]})}var h=this;h.queueCampaign={},h.queueCampaignHopperBlacks={count:0,rows:[]},h.selectedQueueCampaignHopperBlacks=[],h.query={fields:"createdAt,updatedAt,ContactId,phone",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getQueueCampaignHopperBlacks=m,h.createOrEditQueueCampaignHopperBlack=u,h.deleteQueueCampaignHopperBlack=p,h.deleteSelectedQueueCampaignHopperBlacks=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getQueueCampaignHopperBlacks())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("QueueCampaignHopperBlacksController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.queueCampaign=e,h.query.id=h.queueCampaign.id,h.query.VoiceQueueId=h.queueCampaign.id,h.getQueueCampaignHopperFinals()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperFinal?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperFinal").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.queueCampaignHopperFinals=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceQueue.getHopperFinals(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperFinalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/hopperFinals/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperFinal:t,hopperFinals:h.queueCampaignHopperFinals.rows}})}function p(e){r.hopperFinal.delete({id:e.id}).$promise.then(function(){_.remove(h.queueCampaignHopperFinals.rows,{id:e.id}),h.queueCampaignHopperFinals.count-=1,h.queueCampaignHopperFinals.rows.length||h.getQueueCampaignHopperFinals(),s.success({title:"HopperFinal deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperFinals?").htmlContent("<b>"+h.selectedQueueCampaignHopperFinals.length+" selected</b> will be deleted.").ariaLabel("delete hopperFinals").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedQueueCampaignHopperFinals.forEach(function(e){p(e)}),h.selectedQueueCampaignHopperFinals=[]})}var h=this;h.queueCampaign={},h.queueCampaignHopperFinals={count:0,rows:[]},h.selectedQueueCampaignHopperFinals=[],h.query={fields:"createdAt,updatedAt,uniqueid,calleridnum,calleridname,statedesc,countcongestionretry,countbusyretry,countnoanswerretry,countglobal,scheduledat,starttime,responsetime,endtime,disposition",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getQueueCampaignHopperFinals=m,h.createOrEditQueueCampaignHopperFinal=u,h.deleteQueueCampaignHopperFinal=p,h.deleteSelectedQueueCampaignHopperFinals=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getQueueCampaignHopperFinals())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("QueueCampaignHopperFinalsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.queueCampaign=e,h.query.id=h.queueCampaign.id,h.query.VoiceQueueId=h.queueCampaign.id,h.getQueueCampaignHopperHistories()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopperHistory?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopperHistory").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.queueCampaignHopperHistories=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceQueue.getHopperHistories(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperHistoryDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/hopperHistories/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopperHistory:t,hopperHistories:h.queueCampaignHopperHistories.rows}})}function p(e){r.hopperHistory.delete({id:e.id}).$promise.then(function(){_.remove(h.queueCampaignHopperHistories.rows,{id:e.id}),h.queueCampaignHopperHistories.count-=1,h.queueCampaignHopperHistories.rows.length||h.getQueueCampaignHopperHistories(),s.success({title:"HopperHistory deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hopperHistories?").htmlContent("<b>"+h.selectedQueueCampaignHopperHistories.length+" selected</b> will be deleted.").ariaLabel("delete hopperHistories").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedQueueCampaignHopperHistories.forEach(function(e){p(e)}),h.selectedQueueCampaignHopperHistories=[]})}var h=this;h.queueCampaign={},h.queueCampaignHopperHistories={count:0,rows:[]},h.selectedQueueCampaignHopperHistories=[],h.query={fields:"createdAt,updatedAt,uniqueid,ContactId,calleridnum,calleridname,statedesc,scheduledat,starttime,responsetime,endtime",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getQueueCampaignHopperHistories=m,h.createOrEditQueueCampaignHopperHistory=u,h.deleteQueueCampaignHopperHistory=p,h.deleteSelectedQueueCampaignHopperHistories=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getQueueCampaignHopperHistories())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("QueueCampaignHopperHistoriesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.queueCampaign=e,h.query.id=h.queueCampaign.id,h.query.VoiceQueueId=h.queueCampaign.id,h.getQueueCampaignHoppers()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the hopper?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete hopper").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.queueCampaignHoppers=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceQueue.getHoppers(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditHopperDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/hoppers/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{hopper:t,hoppers:h.queueCampaignHoppers.rows}})}function p(e){r.cmHopper.delete({id:e.id}).$promise.then(function(){_.remove(h.queueCampaignHoppers.rows,{id:e.id}),h.queueCampaignHoppers.count-=1,h.queueCampaignHoppers.rows.length||h.getQueueCampaignHoppers(),s.success({title:"Hopper deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected hoppers?").htmlContent("<b>"+h.selectedQueueCampaignHoppers.length+" selected</b> will be deleted.").ariaLabel("delete hoppers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedQueueCampaignHoppers.forEach(function(e){p(e)}),h.selectedQueueCampaignHoppers=[]})}var h=this;h.queueCampaign={},h.queueCampaignHoppers={count:0,rows:[]},h.selectedQueueCampaignHoppers=[],h.query={fields:"createdAt,updatedAt,id,ContactId,phone,countcongestionretry,countbusyretry,countnoanswerretry,scheduledat",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getQueueCampaignHoppers=m,h.createOrEditQueueCampaignHopper=u,h.deleteQueueCampaignHopper=p,h.deleteSelectedQueueCampaignHoppers=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getQueueCampaignHoppers())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.motiondialer").controller("QueueCampaignHoppersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cmHopper.save(p.hopper).$promise.then(function(e){p.hoppers.unshift(e),i.success({title:"Hopper properly created",msg:p.hopper.name?p.hopper.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmHopper.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cmHopper.update({id:p.hopper.id},p.hopper).$promise.then(function(e){var t=_.find(p.hoppers,{id:e.id});t&&_.merge(t,e),i.success({title:"Hopper properly saved!",msg:p.hopper.name?p.hopper.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cmHopper.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The hopper will be deleted.").ariaLabel("Delete Hopper").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cmHopper.delete({id:p.hopper.id}).$promise.then(function(){_.remove(p.hoppers,{id:p.hopper.id}),i.success({title:"Hopper properly deleted!",msg:(p.hopper.name||"hopper")+" has been deleted!"}),u(p.hopper)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cmHopper.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="MOTIONDIALER.EDIT_HOPPER",p.hopper=angular.copy(s),p.hoppers=o,p.newHopper=!1,p.hopper||(p.hopper={},p.title="MOTIONDIALER.NEW_HOPPER",p.newHopper=!0),t.params.id&&(p.hopper.VoiceQueueId=t.params.id),p.addNewHopper=l,p.saveHopper=d,p.deleteHopper=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","hoppers","hopper","api"],angular.module("app.motiondialer").controller("CreateOrEditHopperDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.queueCampaign=a,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_LISTS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_LISTS"),transferCallback:function(e,a){n.voiceQueue[a?"removeLists":"addLists"]({id:s.queueCampaign.id,ids:_.map(e,"id")}).$promise.then(function(){t.success({title:"List properly "+(a?"removed":"added"),msg:"List has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:queueCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.voiceQueue.getLists({id:s.queueCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.cmList.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","queueCampaign","$translate"],angular.module("app.motiondialer").controller("QueueCampaignlistaddController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.queueCampaign=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("MOTIONDIALER.ALL_TEAMS"),labelSelected:i.instant("MOTIONDIALER.SELECTED_TEAMS"),transferCallback:function(e,a){n.voiceQueue[a?"removeTeams":"addTeams"]({id:s.queueCampaign.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:queueCampaign.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.voiceQueue.getTeams({id:s.queueCampaign.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","queueCampaign","$translate"],angular.module("app.motiondialer").controller("QueueCampaignteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"QueueCampaignlistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/listadd/listadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:u.queueCampaigns?u.queueCampaigns.rows:[]}})}function r(e,a){t.show({controller:"QueueCampaignblacklistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/blacklistadd/blacklistadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:u.queueCampaigns?u.queueCampaigns.rows:[]}})}function l(e,a){t.show({controller:"QueueCampaignteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:u.queueCampaigns?u.queueCampaigns.rows:[]}})}function d(e,a){t.show({controller:"QueueCampaignagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/agentadd/agentadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:u.queueCampaigns?u.queueCampaigns.rows:[],realtime:!1}})}function c(){e.go("app.motiondialer.queueCampaigns")}function m(){i.voiceQueue.update({id:u.queueCampaign.id},u.queueCampaign).$promise.then(function(){a.success({title:"QueueCampaign updated!",msg:u.queueCampaign.name?u.queueCampaign.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var u=this;u.queueCampaign=e.params.queueCampaign||o||{},u.selectedTab=e.params.tab||0,u.listadddialog=s,u.blacklistadddialog=r,u.teamadddialog=l,u.agentadddialog=d,u.gotoQueueCampaigns=c,u.saveQueueCampaign=m,i.voiceMusicOnHold.get({fields:"name",nolimit:"true"}).$promise.then(function(e){u.musiconholds=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmusiconholds",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){u.trunks=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.squareProject.get({fields:"name",sort:"name"}).$promise.then(function(e){u.projects=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){u.interval=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","queueCampaign"],angular.module("app.motiondialer").controller("QueueCampaignController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.motiondialer.queueCampaigns.edit",{id:e.id,queueCampaign:e})}function u(e,t){i.show({controller:"QueueCampaignlistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/listadd/listadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:S.queueCampaigns?S.queueCampaigns.rows:[]}})}function p(e,t){i.show({controller:"QueueCampaignblacklistaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/blacklistadd/blacklistadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:S.queueCampaigns?S.queueCampaigns.rows:[]}})}function g(e,t){i.show({controller:"QueueCampaignteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/teamadd/teamadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:S.queueCampaigns?S.queueCampaigns.rows:[]}})}function h(e,t){i.show({controller:"QueueCampaignagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/edit/agentadd/agentadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{queueCampaign:e,queueCampaigns:S.queueCampaigns?S.queueCampaigns.rows:[],realtime:!1}})}function v(e,t){var n=i.confirm().title("Are you sure want to delete the queueCampaign?").htmlContent("<b>"+(e.name||"queueCampaign")+"</b> will be deleted.").ariaLabel("delete queueCampaign").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){y(e)},function(){console.log("CANCEL")})}function b(e){S.queueCampaigns=e||{count:0,rows:[]}}function f(){S.query.offset=(S.query.page-1)*S.query.limit,S.promise=l.voiceQueue.get(S.query,b).$promise}function E(e,t){i.show({controller:"CreateOrEditQueueCampaignDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{queueCampaign:t,queueCampaigns:S.queueCampaigns.rows}})}function y(e){l.voiceQueue.delete({id:e.id}).$promise.then(function(){_.remove(S.queueCampaigns.rows,{id:e.id}),S.queueCampaigns.count-=1,S.queueCampaigns.rows.length||S.getQueueCampaigns(),c.success({title:"QueueCampaign deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function A(){var e=_.clone(S.selectedQueueCampaigns);return S.selectedQueueCampaigns=[],e}function C(e){var t=i.confirm().title("Are you sure want to delete the selected queueCampaigns?").htmlContent("<b>"+S.selectedQueueCampaigns.length+" selected</b> will be deleted.").ariaLabel("delete QueueCampaigns").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){S.selectedQueueCampaigns.forEach(function(e){y(e)}),S.selectedQueueCampaigns=[]})}function x(){S.selectedQueueCampaigns=[]}function T(){S.selectedQueueCampaigns=S.queueCampaigns.rows}var S=this;S.queueCampaigns=r||{count:0,rows:[]},S.table="queueCampaigns",S.listOrder="",S.listOrderAsc=null,S.selectedQueueCampaigns=[],S.query={fields:"createdAt,updatedAt,id,name,dialActive,TrunkId,TrunkBackupId,type,IntervalId,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar,dialGlobalInterval,dialTimezone,dialMethod,dialPowerLevel,dialPredictiveOptimization,dialPredictiveOptimizationPercentage,dialPredictiveInterval,dialLimitQueue,dialOriginateCallerIdName,dialOriginateCallerIdNumber,dialOriginateTimeout,dialQueueOptions,dialQueueTimeout,strategy,timeout,retry,wrapuptime,weight,musiconhold,dialQueueProject,dialGlobalMaxRetry,dialCongestionMaxRetry,dialCongestionRetryFrequency,dialBusyMaxRetry,dialBusyRetryFrequency,dialNoAnswerMaxRetry,dialNoAnswerRetryFrequency,description",type:"outbound",sort:"-updatedAt",limit:10,page:1},S.arrayautopause=_.keyBy([{option:"Yes",value:"'all'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arrayringinuse=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraytimeoutrestart=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraymonitor_format=_.keyBy([{option:"Inactive",value:"''"},{option:"wav",value:"'wav'"},{option:"wav49",value:"'wav49'"},{option:"gsm",value:"'gsm'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraysetinterfacevar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraysetqueuevar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraysetqueueentryvar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraydialMethod=_.keyBy([{option:"Progressive",value:"'progressive'"},{option:"PowerDialing",value:"'power'"},{option:"Predictive",value:"'predictive'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraydialPredictiveOptimization=_.keyBy([{option:"AgentBusyFactor",value:"'agentBusyFactor'"},{option:"DropRate",value:"'dropRate'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.arraystrategy=_.keyBy([{option:"Round Robin Memory",value:"'rrmemory'"},{option:"Least Recent",value:"'leastrecent'"},{option:"Fewest Calls",value:"'fewestcalls'"},{option:"Random",value:"'random'"},{option:"Linear",value:"'linear'"},{option:"Weight Random",value:"'wrandom'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),S.editstate=m,S.listadddialog=u,S.blacklistadddialog=p,S.teamadddialog=g,S.agentadddialog=h,S.deleteconfirm=v,S.success=b,S.getQueueCampaigns=f,S.createOrEditQueueCampaign=E,S.deleteQueueCampaign=y,S.exportSelectedQueueCampaigns=A,S.deleteSelectedQueueCampaigns=C,S.deselectQueueCampaigns=x,S.selectAllQueueCampaigns=T,l.trunk.get({fields:"id,name",sort:"name"}).$promise.then(function(e){S.trunks=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.interval.get({fields:"id,name",sort:"name",IntervalId:"null"}).$promise.then(function(e){S.interval=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})});var O=!0,w=1;e.$watch("vm.query.filter",function(e,t){O?s(function(){O=!1}):(t||(w=S.query.page),e!==t&&(S.query.page=1),e||(S.query.page=w),S.getQueueCampaigns())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","queueCampaigns","api","msUtils","toasty"],angular.module("app.motiondialer").controller("QueueCampaignsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){_.forIn(A.agents,function(e,t){A.rpcAgents[t]&&_.merge(e,_.pick(A.rpcAgents[t],C))})}function u(e,t){return r.user.logout({id:e.id}).$promise.then(function(){d.success({title:"Agent logout",msg:e.fullname+"  properly logout"})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.staff.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function p(e,t){n.show({controller:"AgentqueueaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/edit/queueadd/queueadd.html",parent:angular.element(a.body),targetEvent:t,clickOutsideToClose:!0,locals:{agent:e,agents:[],channel:"voice",realtime:!0,direction:"outbound"}})}function g(e,t){return r.user.pause({id:e.id,type:t})}function h(e){return r.user.unpause({id:e.id})}function v(e){return _.includes(A.availableStates,e)}function b(e){A.agents[e.id]&&_.merge(A.agents[e.id],_.pick(e,C))}function f(e){n.show(n.alert().clickOutsideToClose(!0).title("Legend").htmlContent("<div>TODO legend status + state</div>").ok("Ok").targetEvent(e))}function E(e){A.count=e.count,A.agents=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function y(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=r.user.get(A.query,E).$promise}var A=this,C=["userpic","online","voicePause","lastLoginAt","lastPauseAt","pauseType","internal","state","stateTime","status","address"];A.availableStates=["ringing","inuse","busy","onhold","not_inuse"],A.pauses=i||{count:0,rows:[]},A.count=o.count,A.agents=o?_.keyBy(o.rows?o.rows:[],"id"):{},A.rpcAgents=s?_.keyBy(s.rows?s.rows:[],"id"):{},A.query={fields:"id,fullname,userpic,role,internal,online,voicePause,pauseType,lastLoginAt",role:"agent",sort:"-updatedAt",limit:10,page:1},A.statusClass=c.status,A.stateClass=c.state,A.pause=g,A.unPause=h,A.onSave=b,A.$onInit=m,A.success=E,A.showInfo=f,A.queueAdd=p,A.getAgents=y,A.isAvailableState=v,A.logout=u,l.on("user:save",A.onSave),l.on("user:update",A.onSave);var x=!0,T=1;e.$watch("vm.query.filter",function(e,n){x?t(function(){x=!1}):(n||(T=A.query.page),e!==n&&(A.query.page=1),e||(A.query.page=T),A.getAgents())}),e.$on("$destroy",function(){l.removeAllListeners("user:save"),l.removeAllListeners("user:update")})}e.$inject=["$scope","$timeout","$mdDialog","$document","pauses","agents","rpcAgents","api","socket","toasty","helperClasses"],angular.module("app.motiondialer").controller("AgentsMotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l){function d(){_.forIn(g.campaigns,function(e,t){g.rpcCampaigns[t]&&_.merge(e,_.pick(g.rpcCampaigns[t],h))})}function c(e){g.campaigns[e.id]&&(_.merge(g.campaigns[e.id],_.pick(e,h)),_.merge(g.rpcCampaigns[e.id],_.pick(e,h)))}function m(e){g.count=e.count,g.campaigns=e?_.keyBy(e.rows?e.rows:[],"id"):{},d()}function u(){g.query.offset=(g.query.page-1)*g.query.limit,g.promise=s.campaign.get(g.query,m).$promise}function p(e,t){n.show({controller:"CreateOrEditIvrCampaignDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/ivrCampaigns/create/dialog.html",parent:angular.element(a.body),targetEvent:e,clickOutsideToClose:!0,locals:{ivrCampaign:t,ivrCampaigns:_.values(g.campaigns)}})}var g=this,h=["name","active","limitCalls","message","originated","IntervalId","SquareProjectId","Trunk","TrunkId","ivrAnswerCallsDay","dialQueueProject","ivrTotalCallsDays","description"];g.count=o.count,g.campaigns=o?_.keyBy(o.rows?o.rows:[],"id"):{},g.rpcCampaigns=i?_.keyBy(i.rows?i.rows:[],"id"):{},g.query={sort:"-updatedAt",limit:10,page:1},g.success=m,g.getCampaigns=u,g.onSave=c,g.$onInit=d,g.createOrEditIvrCampaign=p,r.on("campaign:save",g.onSave);var v=!0,b=1;e.$watch("vm.query.filter",function(e,n){v?t(function(){v=!1}):(n||(b=g.query.page),e!==n&&(g.query.page=1),e||(g.query.page=b),g.getCampaigns())}),e.$on("$destroy",function(){r.removeAllListeners("campaign:save")})}e.$inject=["$scope","$timeout","$mdDialog","$document","rpcCampaigns","campaigns","api","socket","Auth"],angular.module("app.motiondialer").controller("IvrCampaignsMotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l){function d(e){return o.rpc.getVoiceQueuesChannelHangup({uniqueid:e}).$promise.then(function(t){l.success({title:"Channel "+e+" properly hangup!",msg:t.message||""})}).catch(function(e){console.error(e)})}function c(e,t){return o.rpc.getVoiceQueuesChannelRedirect({uniqueid:e,exten:t}).$promise.then(function(t){l.success({title:"Channel "+e+" properly redirect!",msg:t.message||""})}).catch(function(e){console.error(e)})}function m(e,t){var a=n.prompt().title("Which number do you want transfer the call to?").placeholder("Number").targetEvent(e).ok("Ok").cancel("Cancel");return n.show(a).then(function(e){return o.rpc.getVoiceQueuesChannelRedirect({uniqueid:t,exten:e}).$promise.then(function(e){l.success({title:"Channel "+t+" properly redirect!",msg:e.message||""})}).catch(function(e){console.error(e)})}).catch(function(e){console.error(e)})}function u(e){var t=_.find(g.calls.rows,{channel:e.channel});e.status=e.queuecallerleaveAt?"up":"ring",t?_.merge(t,e):g.calls.rows.push(e)}function p(e){var n=_.findIndex(g.calls.rows,{channel:e.channel});n>=0&&(g.calls.rows[n].status="hangup"),t(function(){g.calls.rows.splice(n,1)},5e3)}var g=this;g.calls=i||{rows:[],count:0},g.agents=a||{count:0,rows:[]},g.query={limit:10,page:1,limitOptions:[10,15,20]},g.channelStatusClass=r.channelStatus,g.onSave=u,g.onRemove=p,g.hangup=d,g.redirectToAgent=c,g.redirectToNumber=m,s.on("voice_queue_channel:save",g.onSave),s.on("voice_queue_channel:remove",g.onRemove),e.$on("$destroy",function(){s.removeAllListeners("voice_queue_channel:save"),s.removeAllListeners("voice_queue_channel:remove")})}e.$inject=["$scope","$timeout","$mdDialog","agents","rpcCalls","api","socket","helperClasses","toasty"],angular.module("app.motiondialer").controller("QueueCallsMotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){_.forIn(m.queues,function(e,t){m.rpcQueues[t]&&_.merge(e,_.pick(m.rpcQueues[t],u))})}function l(e){m.queues[e.id]&&_.merge(m.queues[e.id],_.pick(e,u))}function d(e){m.count=e.count,m.queues=e?_.keyBy(e.rows?e.rows:[],"id"):{},r()}function c(){m.query.offset=(m.query.page-1)*m.query.limit,s.hasRole("admin")?m.promise=i.voiceQueue.get(m.query,d).$promise:m.promise=i.user.getQueues(m.query,d).$promise}var m=this,u=["total","answered","sumHoldTime","sumDuration","sumBillable","outboundNoAnswerCallsDay","outboundBusyCallsDay","outboundCongestionCallsDay","outboundNoSuchCallsDay","outboundUnknownCallsDay","outboundDropCallsDayTimeout","outboundDropCallsDayCallersExit","outboundBlacklistCallsDay","outboundOriginateFailureCallsDay","outboundAnswerAgiCallsDay"];m.count=n.count,m.queues=n?_.keyBy(n.rows?n.rows:[],"id"):{},m.rpcQueues=a?_.keyBy(a.rows?a.rows:[],"id"):{},s.hasRole("admin")?m.query={type:"outbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1}:m.query={id:s.getCurrentUser().id,channel:"voice",type:"outbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1},m.success=d,m.getQueues=c,m.onSave=l,m.$onInit=r,o.on("voice_queue:save",m.onSave);var p=!0,g=1;e.$watch("vm.query.filter",function(e,n){p?t(function(){p=!1}):(n||(g=m.query.page),e!==n&&(m.query.page=1),e||(m.query.page=g),m.getQueues())}),e.$on("$destroy",function(){o.removeAllListeners("voice_queue:save")})}e.$inject=["$scope","$timeout","queues","rpcQueues","api","socket","Auth"],angular.module("app.motiondialer").controller("QueueParamsMotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){var e=[];return _.forIn(E.queues,function(t,n){t.paused=0,t.loggedInDb=0,e.push(r.voiceQueue.getMembers({id:n}).$promise),E.rpcQueues[n]&&_.merge(t,_.pick(E.rpcQueues[n],y))}),a.all(e).then(function(e){for(var t=0;t<e.length;t+=1)for(var n=0;n<e[t].rows.length;n++)e[t].rows[n].paused&&E.queues[e[t].rows[n].VoiceQueueId].paused++,E.queues[e[t].rows[n].VoiceQueueId].loggedInDb++}).catch(function(e){console.error(e)})}function u(e){E.queues[e.id]&&_.merge(E.queues[e.id],_.pick(e,y))}function p(e){}function g(e){E.count=e.count,E.queues=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function h(){E.query.offset=(E.query.page-1)*E.query.limit,c.hasRole("admin")?E.promise=r.voiceQueue.get(E.query,g).$promise:E.promise=r.user.getQueues(E.query,g).$promise}function v(e,t){n.show({controller:"CreateOrEditQueueCampaignDialogController",controllerAs:"vm",templateUrl:"app/main/apps/motiondialer/views/queueCampaigns/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{queueCampaign:t,queueCampaigns:_.values(E.queues)}})}function b(e,t){n.show({controller:"VoiceQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceQueue:t,voiceQueues:E.queues?E.queues.rows:[],realtime:!0}})}function f(e){return r.voiceQueue.update(e).$promise.then(function(){d.success({title:"Queue properly updated!",msg:e.name?e.name+" has been updated!":""})}).catch(function(e){d.error({title:"Error creating queue!",msg:e.message})})}var E=this,y=["loggedIn","available","waiting","talking","originated","message","dialActive","dialMethod","Trunk"];E.count=o.count,E.queues=o?_.keyBy(o.rows?o.rows:[],"id"):{},E.rpcQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},c.hasRole("admin")?E.query={type:"outbound",sort:"-updatedAt",limit:10,page:1}:E.query={id:c.getCurrentUser().id,channel:"voice",type:"outbound",sort:"-updatedAt",limit:10,page:1},E.success=g,E.getQueues=h,E.createOrEditVoiceQueue=v,E.agentAdd=b,E.updateQueue=f,E.onSave=u,E.onSaveMember=p,E.$onInit=m,l.on("voice_queue:save",E.onSave),l.on("userVoiceQueueRt:save",E.onSaveMember),l.on("userVoiceQueueRt:update",E.onSaveMember);var A=!0,C=1;e.$watch("vm.query.filter",function(e,n){A?t(function(){A=!1}):(n||(C=E.query.page),e!==n&&(E.query.page=1),e||(E.query.page=C),E.getQueues())}),e.$on("$destroy",function(){l.removeAllListeners("voice_queue:save"),l.removeAllListeners("userVoiceQueueRt:save"),l.removeAllListeners("userVoiceQueueRt:update")})}e.$inject=["$scope","$timeout","$mdDialog","$q","$document","queues","rpcQueues","api","socket","toasty","Auth"],angular.module("app.motiondialer").controller("QueuesMotionDialerRealtimeController",e)}(),function(){"use strict";function e(){return{status:{registered:"green-300-fg icon-checkbox-marked-circle",unregistered:"red-300-fg icon-close-circle",lagged:"red-300-fg icon-close-circle",reachable:"green-300-fg icon-checkbox-marked-circle",unreachable:"red-300-fg icon-close-circle",unknown:"grey-fg icon-minus-circle"},state:{unknown:"grey-fg icon-phone-hangup",not_inuse:"green-300-fg icon-phone-hangup",inuse:"red-300-fg icon-phone-in-talk",busy:"red-300-fg icon-phone-locked",invalid:"grey-fg icon-phone-hangup",unavailable:"grey-fg icon-phone-hangup",ringing:"blue-300-fg icon-phone-incoming",ringinuse:"blue-300-fg icon-phone-incoming",onhold:"blue-300-fg icon-phone-paused"},channelStatus:{ring:"blue-300-fg icon-phone-incoming",up:"green-300-fg icon-phone-in-talk",hangup:"red-300-fg icon-phone-hangup"},channelStatusOut:{ring:"blue-300-fg icon-phone-outgoing",up:"green-300-fg icon-phone-in-talk",hangup:"red-300-fg icon-phone-hangup"}}}angular.module("app.auth").factory("helperClasses",e)}(),function(){"use strict";function e(e,t,n){var a=this;switch(n.disconnect(),n.connect(),a.selectedTab=0,t.current.name){case"app.motiondialer.realtime.agents":a.selectedTab=0;break;case"app.motiondialer.realtime.queues":a.selectedTab=1;break;case"app.motiondialer.realtime.queue_calls":a.selectedTab=2;break;case"app.motiondialer.realtime.queue_params":a.selectedTab=3;break;case"app.motiondialer.realtime.ivr_campaigns":a.selectedTab=4;break;default:a.selectedTab=0,t.go("app.motiondialer.realtime.agents")}e.$watch("vm.selectedTab",function(e,n){if(e!==n)switch(e){case 0:t.go("app.motiondialer.realtime.agents");break;case 1:t.go("app.motiondialer.realtime.queues");break;case 2:t.go("app.motiondialer.realtime.queue_calls");break;case 3:t.go("app.motiondialer.realtime.queue_params");break;case 4:t.go("app.motiondialer.realtime.ivr_campaigns");break;default:t.go("app.motiondialer.realtime.agents")}})}e.$inject=["$scope","$state","socket"],angular.module("app.motiondialer").controller("MotionDialerRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.openchannelAccount.save(p.openchannelAccount).$promise.then(function(e){p.openchannelAccounts.unshift(e),i.success({title:"OpenchannelAccount properly created",msg:p.openchannelAccount.name?p.openchannelAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.openchannelAccount.update({id:p.openchannelAccount.id},p.openchannelAccount).$promise.then(function(e){var t=_.find(p.openchannelAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"OpenchannelAccount properly saved!",msg:p.openchannelAccount.name?p.openchannelAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The openchannelAccount will be deleted.").ariaLabel("Delete OpenchannelAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.openchannelAccount.delete({id:p.openchannelAccount.id}).$promise.then(function(){_.remove(p.openchannelAccounts,{id:p.openchannelAccount.id}),i.success({title:"OpenchannelAccount properly deleted!",msg:(p.openchannelAccount.name||"openchannelAccount")+" has been deleted!"}),u(p.openchannelAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="OPENCHANNEL.EDIT_OPENCHANNELACCOUNT",p.openchannelAccount=angular.copy(s),p.openchannelAccounts=o,p.newOpenchannelAccount=!1,p.openchannelAccount||(p.openchannelAccount={remote:n.protocol()+"://"+n.host()+":"+n.port()},p.title="OPENCHANNEL.NEW_OPENCHANNELACCOUNT",p.newOpenchannelAccount=!0),p.addNewOpenchannelAccount=l,p.saveOpenchannelAccount=d,p.deleteOpenchannelAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","openchannelAccounts","openchannelAccount","api"],angular.module("app.openchannel").controller("CreateOrEditOpenchannelAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.openchannelAccount=e,h.query.id=h.openchannelAccount.id,h.query.OpenchannelAccountId=h.openchannelAccount.id,h.getOpenchannelAccountOpenchannelDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the openchannelDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete openchannelDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.openchannelAccountOpenchannelDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.openchannelAccount.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditOpenchannelDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/openchannel/views/openchannelAccounts/edit/openchannelDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{openchannelDisposition:t,openchannelDispositions:h.openchannelAccountOpenchannelDispositions.rows}})}function p(e){r.openchannelDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.openchannelAccountOpenchannelDispositions.rows,{id:e.id}),h.openchannelAccountOpenchannelDispositions.count-=1,h.openchannelAccountOpenchannelDispositions.rows.length||h.getOpenchannelAccountOpenchannelDispositions(),s.success({title:"OpenchannelDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected openchannelDispositions?").htmlContent("<b>"+h.selectedOpenchannelAccountOpenchannelDispositions.length+" selected</b> will be deleted.").ariaLabel("delete openchannelDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedOpenchannelAccountOpenchannelDispositions.forEach(function(e){p(e)}),h.selectedOpenchannelAccountOpenchannelDispositions=[]})}var h=this;h.openchannelAccount={},h.openchannelAccountOpenchannelDispositions={count:0,rows:[]},h.selectedOpenchannelAccountOpenchannelDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getOpenchannelAccountOpenchannelDispositions=m,h.createOrEditOpenchannelAccountOpenchannelDisposition=u,h.deleteOpenchannelAccountOpenchannelDisposition=p,h.deleteSelectedOpenchannelAccountOpenchannelDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getOpenchannelAccountOpenchannelDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.openchannel").controller("OpenchannelAccountOpenchannelDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.openchannelDisposition.save(p.openchannelDisposition).$promise.then(function(e){p.openchannelDispositions.unshift(e),i.success({title:"OpenchannelDisposition properly created",msg:p.openchannelDisposition.name?p.openchannelDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.openchannelDisposition.update({id:p.openchannelDisposition.id},p.openchannelDisposition).$promise.then(function(e){var t=_.find(p.openchannelDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"OpenchannelDisposition properly saved!",msg:p.openchannelDisposition.name?p.openchannelDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The openchannelDisposition will be deleted.").ariaLabel("Delete OpenchannelDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.openchannelDisposition.delete({id:p.openchannelDisposition.id}).$promise.then(function(){_.remove(p.openchannelDispositions,{id:p.openchannelDisposition.id}),i.success({title:"OpenchannelDisposition properly deleted!",msg:(p.openchannelDisposition.name||"openchannelDisposition")+" has been deleted!"}),u(p.openchannelDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="OPENCHANNEL.EDIT_OPENCHANNELDISPOSITION",p.openchannelDisposition=angular.copy(s),p.openchannelDispositions=o,p.newOpenchannelDisposition=!1,p.openchannelDisposition||(p.openchannelDisposition={},p.title="OPENCHANNEL.NEW_OPENCHANNELDISPOSITION",p.newOpenchannelDisposition=!0),t.params.id&&(p.openchannelDisposition.OpenchannelAccountId=t.params.id),p.addNewOpenchannelDisposition=l,p.saveOpenchannelDisposition=d,p.deleteOpenchannelDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","openchannelDispositions","openchannelDisposition","api"],angular.module("app.openchannel").controller("CreateOrEditOpenchannelDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.openchannel.openchannelAccounts")}function r(){i.openchannelAccount.update({id:l.openchannelAccount.id},l.openchannelAccount).$promise.then(function(){a.success({title:"OpenchannelAccount updated!",msg:l.openchannelAccount.name?l.openchannelAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.openchannelAccount=e.params.openchannelAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoOpenchannelAccounts=s,l.saveOpenchannelAccount=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","openchannelAccount"],angular.module("app.openchannel").controller("OpenchannelAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.openchannel.openchannelAccounts.edit",{id:e.id,openchannelAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the openchannelAccount?").htmlContent("<b>"+(e.name||"openchannelAccount")+"</b> will be deleted.").ariaLabel("delete openchannelAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.openchannelAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.openchannelAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditOpenchannelAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/openchannel/views/openchannelAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{openchannelAccount:t,openchannelAccounts:A.openchannelAccounts.rows}})}function v(e){l.openchannelAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.openchannelAccounts.rows,{id:e.id}),A.openchannelAccounts.count-=1,A.openchannelAccounts.rows.length||A.getOpenchannelAccounts(),c.success({title:"OpenchannelAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedOpenchannelAccounts);return A.selectedOpenchannelAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected openchannelAccounts?").htmlContent("<b>"+A.selectedOpenchannelAccounts.length+" selected</b> will be deleted.").ariaLabel("delete OpenchannelAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedOpenchannelAccounts.forEach(function(e){v(e)}),A.selectedOpenchannelAccounts=[]})}function E(){A.selectedOpenchannelAccounts=[]}function y(){A.selectedOpenchannelAccounts=A.openchannelAccounts.rows}var A=this;A.openchannelAccounts=r||{count:0,rows:[]},A.table="openchannelAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedOpenchannelAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,page:1},A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getOpenchannelAccounts=g,A.createOrEditOpenchannelAccount=h,A.deleteOpenchannelAccount=v,A.exportSelectedOpenchannelAccounts=b,A.deleteSelectedOpenchannelAccounts=f,A.deselectOpenchannelAccounts=E,A.selectAllOpenchannelAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getOpenchannelAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","openchannelAccounts","api","msUtils","toasty"],angular.module("app.openchannel").controller("OpenchannelAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.openchannelQueue.save(p.openchannelQueue).$promise.then(function(e){p.openchannelQueues.unshift(e),i.success({title:"OpenchannelQueue properly created",msg:p.openchannelQueue.name?p.openchannelQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.openchannelQueue.update({id:p.openchannelQueue.id},p.openchannelQueue).$promise.then(function(e){var t=_.find(p.openchannelQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"OpenchannelQueue properly saved!",msg:p.openchannelQueue.name?p.openchannelQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.openchannelQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The openchannelQueue will be deleted.").ariaLabel("Delete OpenchannelQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.openchannelQueue.delete({id:p.openchannelQueue.id}).$promise.then(function(){_.remove(p.openchannelQueues,{id:p.openchannelQueue.id}),i.success({title:"OpenchannelQueue properly deleted!",msg:(p.openchannelQueue.name||"openchannelQueue")+" has been deleted!"}),u(p.openchannelQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.openchannelQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="OPENCHANNEL.EDIT_OPENCHANNELQUEUE",p.openchannelQueue=angular.copy(s),p.openchannelQueues=o,p.newOpenchannelQueue=!1,p.openchannelQueue||(p.openchannelQueue={strategy:"beepall"},p.title="OPENCHANNEL.NEW_OPENCHANNELQUEUE",p.newOpenchannelQueue=!0),p.addNewOpenchannelQueue=l,p.saveOpenchannelQueue=d,p.deleteOpenchannelQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","openchannelQueues","openchannelQueue","api"],angular.module("app.openchannel").controller("CreateOrEditOpenchannelQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.openchannelQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("OPENCHANNEL.ALL_TEAMS"),labelSelected:i.instant("OPENCHANNEL.SELECTED_TEAMS"),transferCallback:function(e,a){n.openchannelQueue[a?"removeTeams":"addTeams"]({id:s.openchannelQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:openchannelQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.openchannelQueue.getTeams({id:s.openchannelQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","openchannelQueue","$translate"],angular.module("app.openchannel").controller("OpenchannelQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"OpenchannelQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/openchannel/views/openchannelQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{openchannelQueue:e,openchannelQueues:d.openchannelQueues?d.openchannelQueues.rows:[]}})}function r(){e.go("app.openchannel.openchannelQueues")}function l(){i.openchannelQueue.update({id:d.openchannelQueue.id},d.openchannelQueue).$promise.then(function(){a.success({title:"OpenchannelQueue updated!",msg:d.openchannelQueue.name?d.openchannelQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.openchannelQueue=e.params.openchannelQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoOpenchannelQueues=r,d.saveOpenchannelQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","openchannelQueue"],angular.module("app.openchannel").controller("OpenchannelQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.openchannel.openchannelQueues.edit",{id:e.id,openchannelQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the openchannelQueue?").htmlContent("<b>"+(e.name||"openchannelQueue")+"</b> will be deleted.").ariaLabel("delete openchannelQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.openchannelQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.openchannelQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditOpenchannelQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/openchannel/views/openchannelQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{openchannelQueue:t,openchannelQueues:A.openchannelQueues.rows}})}function v(e){l.openchannelQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.openchannelQueues.rows,{id:e.id}),A.openchannelQueues.count-=1,A.openchannelQueues.rows.length||A.getOpenchannelQueues(),c.success({title:"OpenchannelQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETopenchannelQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedOpenchannelQueues);return A.selectedOpenchannelQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected openchannelQueues?").htmlContent("<b>"+A.selectedOpenchannelQueues.length+" selected</b> will be deleted.").ariaLabel("delete OpenchannelQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedOpenchannelQueues.forEach(function(e){v(e)}),A.selectedOpenchannelQueues=[]})}function E(){A.selectedOpenchannelQueues=[]}function y(){A.selectedOpenchannelQueues=A.openchannelQueues.rows}var A=this;A.openchannelQueues=r||{count:0,rows:[]},A.table="openchannelQueues",A.listOrder="",A.listOrderAsc=null,A.selectedOpenchannelQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getOpenchannelQueues=g,A.createOrEditOpenchannelQueue=h,A.deleteOpenchannelQueue=v,A.exportSelectedOpenchannelQueues=b,A.deleteSelectedOpenchannelQueues=f,A.deselectOpenchannelQueues=E,A.selectAllOpenchannelQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getOpenchannelQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","openchannelQueues","api","msUtils","toasty"],angular.module("app.openchannel").controller("OpenchannelQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.setting.save(p.customization).$promise.then(function(e){p.customizations.unshift(e),i.success({title:"Customization properly created",msg:p.customization.name?p.customization.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.setting.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.setting.update({id:p.customization.id},p.customization).$promise.then(function(e){var t=_.find(p.customizations,{id:e.id});t&&_.merge(t,e),i.success({title:"Customization properly saved!",msg:p.customization.name?p.customization.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.setting.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The customization will be deleted.").ariaLabel("Delete Customization").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.setting.delete({id:p.customization.id}).$promise.then(function(){_.remove(p.customizations,{id:p.customization.id}),i.success({title:"Customization properly deleted!",msg:(p.customization.name||"customization")+" has been deleted!"}),u(p.customization)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SETTINGS.EDIT_CUSTOMIZATION",p.customization=angular.copy(s),p.customizations=o,p.newCustomization=!1,p.customization||(p.customization={},p.title="SETTINGS.NEW_CUSTOMIZATION",p.newCustomization=!0),p.addNewCustomization=l,p.saveCustomization=d,p.deleteCustomization=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","customizations","customization","api"],angular.module("app.settings").controller("CreateOrEditCustomizationDialogController",e)}(),function(){"use strict";function e(e,t,n){function a(){i.customization.id?t.setting.update({id:i.customization.id},i.customization).$promise.then(function(){n.success({title:"Customization updated!",msg:i.customization.name?i.customization.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsetting",msg:e.data?JSON.stringify(e.data):e.toString()})}):t.setting.save(i.customization).$promise.then(function(e){_.merge(i.customization,e),n.success({title:"Customization updated!",msg:i.customization.name?i.customization.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsetting",msg:e.data?JSON.stringify(e.data):e.toString()})})}var i=this;i.customizations=e,i.customization={},i.customizations&&i.customizations.rows&&i.customizations.rows.length&&(i.customization=i.customizations.rows[0]),i.saveCustomization=a}e.$inject=["customizations","api","toasty"],angular.module("app.settings").controller("CustomizationsController",e)}(),function(){"use strict";function e(e,t){function n(e){s.customization=angular.copy(e),s.ngFlowOptions.target="/api/settings/1/logo",s.customization.images=[]}function a(e){var n=["png","jpg"];if(_.includes(n,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.customization.images.unshift(a),!0}return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1}function i(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function o(e,t){angular.forEach(s.customization.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.customization={},s.ngFlowOptions={chunkSize:8388608,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=i,s.fileSuccess=o,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.settings").controller("CustomizationlogoController",e)}(),function(){"use strict";function e(e,t){function n(e){s.customization=angular.copy(e),s.ngFlowOptions.target="/api/settings/1/logo_login",s.customization.images=[]}function a(e){var n=["png","jpg"];if(_.includes(n,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.customization.images.unshift(a),!0}return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1}function i(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function o(e,t){angular.forEach(s.customization.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.customization={},s.ngFlowOptions={chunkSize:8388608,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=i,s.fileSuccess=o,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.settings").controller("CustomizationlogologinController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.setting.save(p.general).$promise.then(function(e){p.generals.unshift(e),i.success({title:"General properly created",msg:p.general.name?p.general.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.setting.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.setting.update({id:p.general.id},p.general).$promise.then(function(e){var t=_.find(p.generals,{id:e.id});t&&_.merge(t,e),i.success({title:"General properly saved!",msg:p.general.name?p.general.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.setting.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The general will be deleted.").ariaLabel("Delete General").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.setting.delete({id:p.general.id}).$promise.then(function(){_.remove(p.generals,{id:p.general.id}),i.success({title:"General properly deleted!",msg:(p.general.name||"general")+" has been deleted!"}),u(p.general)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.setting.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SETTINGS.EDIT_GENERAL",p.general=angular.copy(s),p.generals=o,p.newGeneral=!1,p.general||(p.general={min_internal:1e3,min_mailbox:1e3},p.title="SETTINGS.NEW_GENERAL",p.newGeneral=!0),p.addNewGeneral=l,p.saveGeneral=d,p.deleteGeneral=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","generals","general","api"],angular.module("app.settings").controller("CreateOrEditGeneralDialogController",e)}(),function(){"use strict";function e(e,t,n){function a(){i.general.id?t.setting.update({id:i.general.id},i.general).$promise.then(function(){n.success({title:"General updated!",msg:i.general.name?i.general.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsetting",msg:e.data?JSON.stringify(e.data):e.toString()})}):t.setting.save(i.general).$promise.then(function(e){_.merge(i.general,e),n.success({title:"General updated!",msg:i.general.name?i.general.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsetting",msg:e.data?JSON.stringify(e.data):e.toString()})})}var i=this;i.generals=e,i.general={},i.generals&&i.generals.rows&&i.generals.rows.length&&(i.general=i.generals.rows[0]),i.saveGeneral=a}e.$inject=["generals","api","toasty"],angular.module("app.settings").controller("GeneralsController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(e){var n=t.prompt().title("Do you want update manually your license?").textContent("Enter your license.").targetEvent(e).ok("Ok").cancel("Cancel");t.show(n).then(function(e){if(e)return i.license.update({id:1,license:e}).$promise.then(function(){a.success({title:"License properly updated!",msg:"The license has been updated!"})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:UPDATElicense",msg:e.data?JSON.stringify(e.data):e.toString()})})}).catch(function(e){console.error(e)})}function s(a){t.show({controller:"RequestLicenseDialogController",controllerAs:"vm",templateUrl:"app/main/apps/settings/views/license/request/dialog.html",parent:angular.element(e.body),targetEvent:a,clickOutsideToClose:!0,locals:{license:n,channels:r.channels,modules:r.modules,others:r.others}})}var r=this;r.license=n||{},r.license.gray&&(r.license.deadline=moment(r.license.gray).add(7,"days").format("MMMM Do YYYY, HH:MM")),r.channels=[{name:"chat",icon:"icon-hangouts"},{name:"mail",icon:"icon-email"},{name:"messaging",icon:"icon-message-text"},{name:"fax",icon:"icon-deskphone"},{name:"openchannel",icon:"icon-google-earth"}],r.modules=[{name:"cm",icon:"icon-account-circle"},{name:"dialer",icon:"icon-crosshairs"},{name:"jscripty",icon:"icon-console"}],r.others=[{name:"custom",icon:"icon-table-edit"},{name:"update",icon:"icon-cloud-download"}],r.requestLicense=s,r.updateLicense=o}e.$inject=["$document","$mdDialog","license","toasty","api"],angular.module("app.settings.license").controller("LicenseController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){c.errors=[],c.table="||FIELD||VALUE||\n";for(var e in c.license)c.license.hasOwnProperty(e)&&!_.includes(["$promise","$resolved"],e)&&(c.table+="|"+e+"|"+c.license[e]+"\n");s.jira.save({key:"MOTLICENSE",summary:"Motion License Request",description:c.table,issuetype:"Task"}).$promise.then(function(e){t.success({title:"Request "+e.id+" sent!",msg:"The license request has been sent! We will respond as soon as possible."}),d()}).catch(function(e){console.error(e),c.errors=e.data.errors||[{message:e.toString(),type:"api.jira"}]})}function d(){e.hide()}var c=this;c.errors=[],c.user=r.getCurrentUser(),c.license=angular.copy(n),c.channels=a,c.modules=i,c.others=o,c.license.name=c.user.fullname,c.license.email=c.user.email,c.sendRequest=l,c.closeDialog=d}e.$inject=["$mdDialog","toasty","license","channels","modules","others","api","Auth"],angular.module("app.settings.license").controller("RequestLicenseDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.network.save(p.network).$promise.then(function(e){p.networks.unshift(e),i.success({title:"Network properly created",msg:p.network.name?p.network.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.network.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.network.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.network.update({id:p.network.id},p.network).$promise.then(function(e){var t=_.find(p.networks,{id:e.id});t&&_.merge(t,e),i.success({title:"Network properly saved!",msg:p.network.name?p.network.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.network.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.network.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The network will be deleted.").ariaLabel("Delete Network").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.network.delete({id:p.network.id}).$promise.then(function(){_.remove(p.networks,{id:p.network.id}),i.success({title:"Network properly deleted!",msg:(p.network.name||"network")+" has been deleted!"}),u(p.network)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.network.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SETTINGS.EDIT_NETWORK",p.network=angular.copy(s),p.networks=o,p.newNetwork=!1,p.network||(p.network={type:"localnet"},p.title="SETTINGS.NEW_NETWORK",p.newNetwork=!0),p.addNewNetwork=l,p.saveNetwork=d,p.deleteNetwork=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","networks","network","api"],angular.module("app.settings").controller("CreateOrEditNetworkDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditNetworkDialogController",controllerAs:"vm",templateUrl:"app/main/apps/settings/views/networks/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{network:e,networks:A.networks.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the network?").htmlContent("<b>"+(e.name||"network")+"</b> will be deleted.").ariaLabel("delete network").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.networks=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.network.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditNetworkDialogController",controllerAs:"vm",templateUrl:"app/main/apps/settings/views/networks/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{network:t,networks:A.networks.rows}})}function v(e){l.network.delete({id:e.id}).$promise.then(function(){_.remove(A.networks.rows,{id:e.id}),A.networks.count-=1,A.networks.rows.length||A.getNetworks(),c.success({title:"Network deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETnetwork",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedNetworks);return A.selectedNetworks=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected networks?").htmlContent("<b>"+A.selectedNetworks.length+" selected</b> will be deleted.").ariaLabel("delete Networks").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedNetworks.forEach(function(e){v(e)}),A.selectedNetworks=[]})}function E(){A.selectedNetworks=[]}function y(){A.selectedNetworks=A.networks.rows}var A=this;A.networks=r||{count:0,rows:[]},A.table="networks",A.listOrder="",A.listOrderAsc=null,A.selectedNetworks=[],A.query={fields:"createdAt,updatedAt,id,type,value,value,createdAt",sort:"-updatedAt",limit:10,page:1},A.arraytype=_.keyBy([{option:"LocalNET",value:"'localnet'"},{option:"ExternIP",value:"'externip'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getNetworks=g,A.createOrEditNetwork=h,A.deleteNetwork=v,A.exportSelectedNetworks=b,A.deleteSelectedNetworks=f,A.deselectNetworks=E,A.selectAllNetworks=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getNetworks())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","networks","api","msUtils","toasty"],angular.module("app.settings").controller("NetworksController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.mailAccount.save(p.smtp).$promise.then(function(e){p.smtps.unshift(e),i.success({title:"Smtp properly created",msg:p.smtp.name?p.smtp.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.mailAccount.update({id:p.smtp.id},p.smtp).$promise.then(function(e){var t=_.find(p.smtps,{id:e.id});t&&_.merge(t,e),i.success({title:"Smtp properly saved!",msg:p.smtp.name?p.smtp.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.mailAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The smtp will be deleted.").ariaLabel("Delete Smtp").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.mailAccount.delete({id:p.smtp.id}).$promise.then(function(){_.remove(p.smtps,{id:p.smtp.id}),i.success({title:"Smtp properly deleted!",msg:(p.smtp.name||"smtp")+" has been deleted!"}),u(p.smtp)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.mailAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SETTINGS.EDIT_SMTP",p.smtp=angular.copy(s),p.smtps=o,p.newSmtp=!1,p.smtp||(p.smtp={service:"true"},p.title="SETTINGS.NEW_SMTP",p.newSmtp=!0),p.addNewSmtp=l,p.saveSmtp=d,p.deleteSmtp=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","smtps","smtp","api"],angular.module("app.settings").controller("CreateOrEditSmtpDialogController",e)}(),function(){"use strict";function e(e,t,n){function a(){o.smtp.id&&t.mailAccount.verifySmtp({id:o.smtp.id}).$promise.then(function(){n.success({title:"Smtp verified!",msg:o.smtp.name?o.smtp.name+" has been verified!":""})}).catch(function(e){n.error({title:"Smtp not verified! Remember to save before to verify!",msg:e.data?JSON.stringify(e.data):e.toString(),timeout:1e4})})}function i(){o.smtp.id?t.mailAccount.update({id:o.smtp.id},o.smtp).$promise.then(function(){n.success({title:"Smtp updated!",msg:o.smtp.name?o.smtp.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})}):t.mailAccount.save(o.smtp).$promise.then(function(e){_.merge(o.smtp,e),n.success({title:"Smtp updated!",msg:o.smtp.name?o.smtp.name+" has been updated!":""})}).catch(function(e){n.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmailAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var o=this;o.smtps=e,o.smtp={},o.smtps&&o.smtps.rows&&o.smtps.rows.length?o.smtp=o.smtps.rows[0]:o.smtp={service:!0,Smtp:{service:null}},o.saveSmtp=i,o.verifySmtp=a}e.$inject=["smtps","api","toasty"],angular.module("app.settings").controller("SmtpController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(e){t.cancel(m)}function l(e,a,i){var r=n.confirm().title("Would you like to change the status of the process #"+a+"?").textContent("The status will be changed to: "+i.toUpperCase()).ariaLabel("Lucky day").targetEvent(e).ok("Ok").cancel("Cancel");n.show(r).then(function(){return s.pm2.update({id:a,status:i})}).then(function(){t(u.getProcesses,1e3,1)}).then(function(){o.success({title:"Process updated!",msg:"Status properly changed to: "+i})})}function d(){return s.system.get().$promise.then(function(e){_.merge(u.system,e)}).catch(u.cancelInterval)}function c(){return s.pm2.get().$promise.then(function(e){_.merge(u.processes,e?e.rows:[])}).catch(u.cancelInterval)}var m,u=this;u.system=a||{},u.processes=i?i.rows:[],u.processLimit=7,u.getInfo=d,u.getProcesses=c,u.cancelInterval=r,u.updateProcess=l,m=t(u.getInfo,5e3),e.$on("$destroy",function(){u.cancelInterval()})}e.$inject=["$scope","$interval","$mdDialog","system","processes","toasty","api"],angular.module("app.settings.system").controller("SystemController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){angular.isDefined(r.interval)&&(t.cancel(r.interval),r.interval=void 0),r.progress=100,r.updating=!1}function o(){n.location.reload()}function s(){e.hide()}var r=this;r.title="SETTINGS.UPDATE",r.progress=0,r.updating=!0,r.output="Waiting...",r.success=!0,r.interval=t(function(){r.progress<90&&(r.progress+=1)},1e3),r.closeDialog=s,r.reload=o,r.stopInterval=i,a.version.fetch().$promise.then(function(e){return r.output=e.output+"...",a.version.reset().$promise}).then(function(e){return r.output=e.output+"...",a.version.pull().$promise}).then(function(e){return r.output=e.output+"...",a.version.migrations().$promise}).then(function(e){return r.output=e.output+"...",a.version.restart().$promise}).then(function(e){r.output=e.output+"...",r.stopInterval()}).catch(function(e){r.success=!1,r.stopInterval(),r.output=JSON.stringify(e)})}e.$inject=["$mdDialog","$interval","$window","api"],angular.module("app.settings").controller("UpdateDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(t){var a=e.confirm().title("Would you like to update your system?").htmlContent('The system request time for the update should be below 1 minute.<br><br>Do you agree the terms of this <a href="http://www.xcally.com/support/eula-xcally-license-en.pdf" target="_blank">End User License Agreement<a>?').ariaLabel("").targetEvent(t).clickOutsideToClose(!0).parent(angular.element(n.body)).ok("I agree").cancel("Disagree");e.show(a).then(function(){e.show({controller:"UpdateDialogController",controllerAs:"vm",templateUrl:"app/main/apps/settings/views/updates/update/dialog.html",parent:angular.element(n.body),targetEvent:t,clickOutsideToClose:!1})})}var s=this;s.version=a||{},s.updateConfirm=o}e.$inject=["$mdDialog","$interval","$document","version","toasty"],angular.module("app.settings").controller("UpdatesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.smsAccount.save(p.smsAccount).$promise.then(function(e){p.smsAccounts.unshift(e),i.success({title:"SmsAccount properly created",msg:p.smsAccount.name?p.smsAccount.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsAccount.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsAccount.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.smsAccount.update({id:p.smsAccount.id},p.smsAccount).$promise.then(function(e){var t=_.find(p.smsAccounts,{id:e.id});t&&_.merge(t,e),i.success({title:"SmsAccount properly saved!",msg:p.smsAccount.name?p.smsAccount.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsAccount.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsAccount.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The smsAccount will be deleted.").ariaLabel("Delete SmsAccount").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.smsAccount.delete({id:p.smsAccount.id}).$promise.then(function(){_.remove(p.smsAccounts,{id:p.smsAccount.id}),i.success({title:"SmsAccount properly deleted!",msg:(p.smsAccount.name||"smsAccount")+" has been deleted!"}),u(p.smsAccount)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.smsAccount.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SMS.EDIT_SMSACCOUNT",p.smsAccount=angular.copy(s),p.smsAccounts=o,p.newSmsAccount=!1,p.smsAccount||(p.smsAccount={smstype:"basic",remote:n.protocol()+"://"+n.host()+":"+n.port()},p.title="SMS.NEW_SMSACCOUNT",p.newSmsAccount=!0),p.addNewSmsAccount=l,p.saveSmsAccount=d,p.deleteSmsAccount=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","smsAccounts","smsAccount","api"],angular.module("app.sms").controller("CreateOrEditSmsAccountDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.smsAccount=e,h.query.id=h.smsAccount.id,h.query.SmsAccountId=h.smsAccount.id,h.getSmsAccountSmsDispositions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the smsDisposition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete smsDisposition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.smsAccountSmsDispositions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.smsAccount.getDispositions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditSmsDispositionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/sms/views/smsAccounts/edit/smsDispositions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{smsDisposition:t,smsDispositions:h.smsAccountSmsDispositions.rows}})}function p(e){r.smsDisposition.delete({id:e.id}).$promise.then(function(){_.remove(h.smsAccountSmsDispositions.rows,{id:e.id}),h.smsAccountSmsDispositions.count-=1,h.smsAccountSmsDispositions.rows.length||h.getSmsAccountSmsDispositions(),s.success({title:"SmsDisposition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected smsDispositions?").htmlContent("<b>"+h.selectedSmsAccountSmsDispositions.length+" selected</b> will be deleted.").ariaLabel("delete smsDispositions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedSmsAccountSmsDispositions.forEach(function(e){p(e)}),h.selectedSmsAccountSmsDispositions=[]})}var h=this;h.smsAccount={},h.smsAccountSmsDispositions={count:0,rows:[]},h.selectedSmsAccountSmsDispositions=[],h.query={fields:"createdAt,updatedAt,id,name,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getSmsAccountSmsDispositions=m,h.createOrEditSmsAccountSmsDisposition=u,h.deleteSmsAccountSmsDisposition=p,h.deleteSelectedSmsAccountSmsDispositions=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getSmsAccountSmsDispositions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.sms").controller("SmsAccountSmsDispositionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.smsDisposition.save(p.smsDisposition).$promise.then(function(e){p.smsDispositions.unshift(e),i.success({title:"SmsDisposition properly created",msg:p.smsDisposition.name?p.smsDisposition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsDisposition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsDisposition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.smsDisposition.update({id:p.smsDisposition.id},p.smsDisposition).$promise.then(function(e){var t=_.find(p.smsDispositions,{id:e.id});t&&_.merge(t,e),i.success({title:"SmsDisposition properly saved!",msg:p.smsDisposition.name?p.smsDisposition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsDisposition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsDisposition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The smsDisposition will be deleted.").ariaLabel("Delete SmsDisposition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.smsDisposition.delete({id:p.smsDisposition.id}).$promise.then(function(){_.remove(p.smsDispositions,{id:p.smsDisposition.id}),i.success({title:"SmsDisposition properly deleted!",msg:(p.smsDisposition.name||"smsDisposition")+" has been deleted!"}),u(p.smsDisposition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.smsDisposition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SMS.EDIT_SMSDISPOSITION",p.smsDisposition=angular.copy(s),p.smsDispositions=o,p.newSmsDisposition=!1,p.smsDisposition||(p.smsDisposition={},p.title="SMS.NEW_SMSDISPOSITION",p.newSmsDisposition=!0),t.params.id&&(p.smsDisposition.SmsAccountId=t.params.id),p.addNewSmsDisposition=l,p.saveSmsDisposition=d,p.deleteSmsDisposition=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","smsDispositions","smsDisposition","api"],angular.module("app.sms").controller("CreateOrEditSmsDispositionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.sms.smsAccounts")}function r(){i.smsAccount.update({id:l.smsAccount.id},l.smsAccount).$promise.then(function(){a.success({title:"SmsAccount updated!",msg:l.smsAccount.name?l.smsAccount.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.smsAccount=e.params.smsAccount||o||{},l.selectedTab=e.params.tab||0,l.gotoSmsAccounts=s,l.saveSmsAccount=r,i.cmList.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.lists=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","smsAccount"],angular.module("app.sms").controller("SmsAccountController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.sms.smsAccounts.edit",{id:e.id,smsAccount:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the smsAccount?").htmlContent("<b>"+(e.name||"smsAccount")+"</b> will be deleted.").ariaLabel("delete smsAccount").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.smsAccounts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.smsAccount.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSmsAccountDialogController",controllerAs:"vm",templateUrl:"app/main/apps/sms/views/smsAccounts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{smsAccount:t,smsAccounts:A.smsAccounts.rows}})}function v(e){l.smsAccount.delete({id:e.id}).$promise.then(function(){_.remove(A.smsAccounts.rows,{id:e.id}),A.smsAccounts.count-=1,A.smsAccounts.rows.length||A.getSmsAccounts(),c.success({title:"SmsAccount deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsAccount",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSmsAccounts);return A.selectedSmsAccounts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected smsAccounts?").htmlContent("<b>"+A.selectedSmsAccounts.length+" selected</b> will be deleted.").ariaLabel("delete SmsAccounts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSmsAccounts.forEach(function(e){v(e)}),A.selectedSmsAccounts=[]})}function E(){A.selectedSmsAccounts=[]}function y(){A.selectedSmsAccounts=A.smsAccounts.rows}var A=this;A.smsAccounts=r||{count:0,rows:[]},A.table="smsAccounts",A.listOrder="",A.listOrderAsc=null,A.selectedSmsAccounts=[],A.query={fields:"createdAt,updatedAt,id,name,ListId,fidelity,timeout,type,smstype,phone,sid,token,username,password,remote,description,acceptMethod,acceptUrl,rejectMethod,rejectUrl,closeMethod,closeUrl",sort:"-updatedAt",limit:10,page:1},A.arraytype=_.keyBy([{option:"Twilio",value:"'twilio'"},{option:"Skebby",value:"'skebby'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraysmstype=_.keyBy([{option:"Basic",value:"'basic'"},{option:"Classic",value:"'classic'"},{option:"Classic+",value:"'classic+'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayacceptMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrejectMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycloseMethod=_.keyBy([{option:"HTTP GET",value:"'GET'"},{option:"HTTP POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getSmsAccounts=g,A.createOrEditSmsAccount=h,A.deleteSmsAccount=v,A.exportSelectedSmsAccounts=b,A.deleteSelectedSmsAccounts=f,A.deselectSmsAccounts=E,A.selectAllSmsAccounts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSmsAccounts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","smsAccounts","api","msUtils","toasty"],angular.module("app.sms").controller("SmsAccountsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.smsQueue.save(p.smsQueue).$promise.then(function(e){p.smsQueues.unshift(e),i.success({title:"SmsQueue properly created",msg:p.smsQueue.name?p.smsQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.smsQueue.update({id:p.smsQueue.id},p.smsQueue).$promise.then(function(e){var t=_.find(p.smsQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"SmsQueue properly saved!",msg:p.smsQueue.name?p.smsQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.smsQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.smsQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The smsQueue will be deleted.").ariaLabel("Delete SmsQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.smsQueue.delete({id:p.smsQueue.id}).$promise.then(function(){_.remove(p.smsQueues,{id:p.smsQueue.id}),i.success({title:"SmsQueue properly deleted!",msg:(p.smsQueue.name||"smsQueue")+" has been deleted!"}),u(p.smsQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.smsQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="SMS.EDIT_SMSQUEUE",p.smsQueue=angular.copy(s),p.smsQueues=o,p.newSmsQueue=!1,p.smsQueue||(p.smsQueue={strategy:"beepall"},p.title="SMS.NEW_SMSQUEUE",p.newSmsQueue=!0),p.addNewSmsQueue=l,p.saveSmsQueue=d,p.deleteSmsQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","smsQueues","smsQueue","api"],angular.module("app.sms").controller("CreateOrEditSmsQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.smsQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("SMS.ALL_TEAMS"),labelSelected:i.instant("SMS.SELECTED_TEAMS"),transferCallback:function(e,a){n.smsQueue[a?"removeTeams":"addTeams"]({id:s.smsQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:smsQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.smsQueue.getTeams({id:s.smsQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","smsQueue","$translate"],angular.module("app.sms").controller("SmsQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"SmsQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/sms/views/smsQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{smsQueue:e,smsQueues:d.smsQueues?d.smsQueues.rows:[]}})}function r(){e.go("app.sms.smsQueues")}function l(){i.smsQueue.update({id:d.smsQueue.id},d.smsQueue).$promise.then(function(){a.success({title:"SmsQueue updated!",msg:d.smsQueue.name?d.smsQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.smsQueue=e.params.smsQueue||o||{},d.selectedTab=e.params.tab||0,d.teamadddialog=s,d.gotoSmsQueues=r,d.saveSmsQueue=l}e.$inject=["$state","$mdDialog","$document","toasty","api","smsQueue"],angular.module("app.sms").controller("SmsQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.sms.smsQueues.edit",{id:e.id,smsQueue:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the smsQueue?").htmlContent("<b>"+(e.name||"smsQueue")+"</b> will be deleted.").ariaLabel("delete smsQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.smsQueues=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.smsQueue.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditSmsQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/sms/views/smsQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{smsQueue:t,smsQueues:A.smsQueues.rows}})}function v(e){l.smsQueue.delete({id:e.id}).$promise.then(function(){_.remove(A.smsQueues.rows,{id:e.id}),A.smsQueues.count-=1,A.smsQueues.rows.length||A.getSmsQueues(),c.success({title:"SmsQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsmsQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedSmsQueues);return A.selectedSmsQueues=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected smsQueues?").htmlContent("<b>"+A.selectedSmsQueues.length+" selected</b> will be deleted.").ariaLabel("delete SmsQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedSmsQueues.forEach(function(e){v(e)}),A.selectedSmsQueues=[]})}function E(){A.selectedSmsQueues=[]}function y(){A.selectedSmsQueues=A.smsQueues.rows}var A=this;A.smsQueues=r||{count:0,rows:[]},A.table="smsQueues",A.listOrder="",A.listOrderAsc=null,A.selectedSmsQueues=[],A.query={fields:"createdAt,updatedAt,id,name,strategy,timeout,description",sort:"-updatedAt",limit:10,page:1},A.arraystrategy=_.keyBy([{option:"Beepall",value:"'beepall'"},{option:"RR Memory",value:"'rrmemory'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getSmsQueues=g,A.createOrEditSmsQueue=h,A.deleteSmsQueue=v,A.exportSelectedSmsQueues=b,A.deleteSelectedSmsQueues=f,A.deselectSmsQueues=E,A.selectAllSmsQueues=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getSmsQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","smsQueues","api","msUtils","toasty"],angular.module("app.sms").controller("SmsQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.staff.agents.edit",{id:e.id,agent:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the agent?").htmlContent("<b>"+(e.name||"agent")+"</b> will be deleted.").ariaLabel("delete agent").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.agents=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.user.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditAgentDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{agent:t,agents:A.agents.rows}})}function v(e){l.user.delete({id:e.id}).$promise.then(function(){_.remove(A.agents.rows,{id:e.id}),A.agents.count-=1,A.agents.rows.length||A.getAgents(),c.success({title:"Agent deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedAgents);return A.selectedAgents=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected agents?").htmlContent("<b>"+A.selectedAgents.length+" selected</b> will be deleted.").ariaLabel("delete Agents").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedAgents.forEach(function(e){v(e)}),A.selectedAgents=[]})}function E(){A.selectedAgents=[]}function y(){A.selectedAgents=A.agents.rows}var A=this;A.agents=r||{count:0,rows:[]},A.table="agents",A.listOrder="",A.listOrderAsc=null,A.selectedAgents=[],A.query={fields:"createdAt,updatedAt,id,role,fullname,name,email,userpic,password,description,autointernal,internal,loginInPause,voicemail,transport,host,nat,type,allow,callerid,callgroup,pickupgroup,chanspy,chatCapacity,mailCapacity,faxCapacity,smsCapacity,openchannelCapacity,phoneBarEnableSettings,phoneBarAutoAnswer,phoneBarRingInUse,phoneBarEnableRecording,phoneBarUnconditional,phoneBarUnconditionalNumber,phoneBarNoReply,phoneBarNoReplyNumber,phoneBarBusy,phoneBarBusyNumber,phoneBarRemoteControl,phoneBarRemoteControlPort,phoneBarExpires,phoneBarListenPort",role:"agent",sort:"-updatedAt",limit:10,page:1},A.arraytransport=_.keyBy([{option:"udp",value:"'udp'"},{option:"tcp",value:"'tcp'"},{option:"ws",value:"'ws'"},{option:"wss",value:"'wss'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraynat=_.keyBy([{option:"force_rport",value:"'force_rport'"},{option:"comedia",value:"'comedia'"},{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"never",value:"'never'"},{option:"route",value:"'route'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytype=_.keyBy([{option:"Friend",value:"'friend'"},{option:"User",value:"'user'"},{option:"Peer",value:"'peer'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayallow=_.keyBy([{option:"alaw",value:"'alaw'"},{option:"ulaw",value:"'ulaw'"},{option:"gsm",value:"'gsm'"},{option:"g729",value:"'g729'"},{option:"ilbc",value:"'ilbc'"},{option:"opus",value:"'opus'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getAgents=g,A.createOrEditAgent=h,A.deleteAgent=v,A.exportSelectedAgents=b,A.deleteSelectedAgents=f,A.deselectAgents=E,A.selectAllAgents=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getAgents())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","agents","api","msUtils","toasty"],angular.module("app.staff").controller("AgentsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.user.save(p.agent).$promise.then(function(e){p.agents.unshift(e),i.success({title:"Agent properly created",msg:p.agent.name?p.agent.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.user.update({id:p.agent.id},p.agent).$promise.then(function(e){var t=_.find(p.agents,{id:e.id});t&&_.merge(t,e),i.success({title:"Agent properly saved!",msg:p.agent.name?p.agent.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The agent will be deleted.").ariaLabel("Delete Agent").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.user.delete({id:p.agent.id}).$promise.then(function(){_.remove(p.agents,{id:p.agent.id}),i.success({title:"Agent properly deleted!",msg:(p.agent.name||"agent")+" has been deleted!"}),u(p.agent)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.user.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="STAFF.EDIT_AGENT",p.agent=angular.copy(s),p.agents=o,p.newAgent=!1,p.agent||(p.agent={role:"agent",autointernal:!0,type:"friend"},p.title="STAFF.NEW_AGENT",p.newAgent=!0),p.addNewAgent=l,p.saveAgent=d,p.deleteAgent=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","agents","agent","api"],angular.module("app.staff").controller("CreateOrEditAgentDialogController",e)}(),function(){"use strict";function e(e,t){function n(e){s.agent=angular.copy(e),s.ngFlowOptions.target="api/users/"+s.agent.id+"/avatar",s.agent.images=[]}function a(e){var n=["png","jpg"];if(_.includes(n,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.agent.images.unshift(a),!0}return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1}function i(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function o(e,t){angular.forEach(s.agent.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.agent={},s.ngFlowOptions={chunkSize:8388608,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=i,s.fileSuccess=o,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.staff").controller("Agentchange_avatarController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],n.user.changePassword({id:s.agent.id,newPassword:s.password}).$promise.then(function(){t.success({title:"Agent password properly updated!"}),o()}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.agent.changePassword"}]})}function o(){e.hide()}var s=this;s.errors=[],s.agent=a,s.password="",s.savePassword=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","api","agent"],angular.module("app.staff").controller("AgentchangepasswordController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){n.user[m.isVoiceRealtime()?"getVoiceQueuesRt":"getQueues"]({id:m.agent.id,fields:m.isVoiceRealtime()?"VoiceQueueId,queue_name,penalty":"id,name,strategy",channel:i,nolimit:!0}).$promise.then(function(e){return m.isVoiceRealtime()?m.selectedItems=e.rows?_.map(e.rows,function(e){return{id:e.VoiceQueueId,name:e.queue_name,penalty:e.hasOwnProperty("penalty")?"penalty "+e.penalty:"penalty 0",strategy:""}}):[]:m.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserVoiceQueue?"penalty "+e.UserVoiceQueue.penalty:"",e}):[],n[m.apiname].get({fields:"id,name,strategy",nolimit:!0,type:s}).$promise}).then(function(e){m.items=e.rows?e.rows:[],m.selectedItems=_.intersectionBy(m.selectedItems,m.items,"id"),m.dualMultiselectOptions.selectedItems=m.selectedItems,m.dualMultiselectOptions.items=_.differenceBy(m.items,m.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETQUEUES",msg:e.status?JSON.stringify(e.data):e.toString()})})}function d(){return o&&"voice"===i}function c(){e.hide()}var m=this;m.agent=a,m.penalty=0,m.apiname=i+"Queue",m.title=r.instant("STAFF.QUEUEADD_AGENT_"+i.toUpperCase()+"_"+s.toUpperCase()),m.items=[],m.selectedItems=[],m.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"strategy",line3:"penalty",labelAll:r.instant("STAFF.ALL_QUEUES_"+i.toUpperCase()+"_"+s.toUpperCase()),labelSelected:r.instant("STAFF.SELECTED_QUEUES_"+i.toUpperCase()+"_"+s.toUpperCase()),transferCallback:function(e,a){n.user[a?"removeQueues":"addQueues"]({id:m.agent.id,ids:_.map(e,"id"),channel:i,penalty:m.penalty||0,realtime:o}).$promise.then(function(){l(),t.success({title:"Queue properly "+(a?"removed":"added"),msg:"Queue has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:USER.ADDQUEUES",msg:e.status?JSON.stringify(e.data):e.toString()})})}},m.closeDialog=c,m.isVoiceRealtime=d,l()}e.$inject=["$mdDialog","toasty","api","agent","channel","realtime","direction","$translate"],angular.module("app.staff").controller("AgentqueueaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a,i){t.show({controller:"AgentqueueaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/edit/queueadd/queueadd.html",parent:angular.element(n.body),targetEvent:i,clickOutsideToClose:!0,locals:{agent:e,agents:c.agents?c.agents.rows:[],channel:a,realtime:!1,direction:"inbound"}})}function r(e,a){t.show({controller:"AgentchangepasswordController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/edit/changepassword/changepassword.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{agent:e,agents:c.agents?c.agents.rows:[]}})}function l(){e.go("app.staff.agents")}function d(){i.user.update({id:c.agent.id},c.agent).$promise.then(function(){a.success({title:"Agent updated!",msg:c.agent.name?c.agent.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.agent=e.params.agent||o||{},c.selectedTab=e.params.tab||0,c.queueaddchannel=s,c.changepassworddialog=r,c.gotoAgents=l,c.saveAgent=d}e.$inject=["$state","$mdDialog","$document","toasty","api","agent"],angular.module("app.staff").controller("AgentController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.team.save(p.team).$promise.then(function(e){p.teams.unshift(e),i.success({title:"Team properly created",msg:p.team.name?p.team.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.team.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.team.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.team.update({id:p.team.id},p.team).$promise.then(function(e){var t=_.find(p.teams,{id:e.id});t&&_.merge(t,e),i.success({title:"Team properly saved!",msg:p.team.name?p.team.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.team.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.team.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The team will be deleted.").ariaLabel("Delete Team").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.team.delete({id:p.team.id}).$promise.then(function(){_.remove(p.teams,{id:p.team.id}),i.success({title:"Team properly deleted!",msg:(p.team.name||"team")+" has been deleted!"}),u(p.team)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.team.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="STAFF.EDIT_TEAM",p.team=angular.copy(s),p.teams=o,p.newTeam=!1,p.team||(p.team={},p.title="STAFF.NEW_TEAM",p.newTeam=!0),p.addNewTeam=l,p.saveTeam=d,p.deleteTeam=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","teams","team","api"],angular.module("app.staff").controller("CreateOrEditTeamDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){return n.team[c.isVoiceRealtime()?"getMembers":"getAgents"]({id:c.team.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){return c.isVoiceRealtime()?c.selectedItems=e.rows?_.map(e.rows,function(e){return e.id=e.UserId,e.fullname=e.membername,e.penalty=e.hasOwnProperty("penalty")?"penalty "+e.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[]:c.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserTeam?"penalty "+e.UserTeam.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.selectedItems=c.selectedItems,n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){c.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserTeam?"penalty "+e.UserTeam.penalty:"",e.internal=e.internal?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.items=_.differenceBy(c.items,c.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function l(){return o}function d(){e.hide()}var c=this;c.team=a,c.penalty=0,c.items=[],c.selectedItems=[],c.closeDialog=d,c.isVoiceRealtime=l,c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:"internal",line3:"penalty",labelAll:s.instant("STAFF.ALL_AGENTS"),labelSelected:s.instant("STAFF.SELECTED_AGENTS"),transferCallback:function(e,a){n.team[a?"removeAgents":"addAgents"]({id:c.team.id,ids:_.map(e,c.isVoiceRealtime()&&a?"UserId":"id"),penalty:c.penalty||0,realtime:o||!1}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"}),a||r()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:team.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},r()}e.$inject=["$mdDialog","toasty","api","team","teams","realtime","$translate"],angular.module("app.staff").controller("TeamagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditTeamDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/teams/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{team:e,teams:C.teams.rows}})}function u(e,t){i.show({controller:"TeamagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/teams/edit/agentadd/agentadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{team:e,teams:C.teams?C.teams.rows:[],realtime:!1}})}function p(e,t){var n=i.confirm().title("Are you sure want to delete the team?").htmlContent("<b>"+(e.name||"team")+"</b> will be deleted.").ariaLabel("delete team").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function g(e){C.teams=e||{count:0,rows:[]}}function h(){C.query.offset=(C.query.page-1)*C.query.limit,C.promise=l.team.get(C.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditTeamDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/teams/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{team:t,teams:C.teams.rows}})}function b(e){l.team.delete({id:e.id}).$promise.then(function(){_.remove(C.teams.rows,{id:e.id}),C.teams.count-=1,C.teams.rows.length||C.getTeams(),c.success({title:"Team deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETteam",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(C.selectedTeams);return C.selectedTeams=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected teams?").htmlContent("<b>"+C.selectedTeams.length+" selected</b> will be deleted.").ariaLabel("delete Teams").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){C.selectedTeams.forEach(function(e){b(e)}),C.selectedTeams=[]})}function y(){C.selectedTeams=[]}function A(){C.selectedTeams=C.teams.rows}var C=this;C.teams=r||{count:0,rows:[]},C.table="teams",C.listOrder="",C.listOrderAsc=null,C.selectedTeams=[],C.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},C.editdialog=m,C.agentadddialog=u,C.deleteconfirm=p,C.success=g,C.getTeams=h,C.createOrEditTeam=v,C.deleteTeam=b,C.exportSelectedTeams=f,C.deleteSelectedTeams=E,C.deselectTeams=y,C.selectAllTeams=A;var x=!0,T=1;e.$watch("vm.query.filter",function(e,t){x?s(function(){x=!1}):(t||(T=C.query.page),e!==t&&(C.query.page=1),e||(C.query.page=T),C.getTeams())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","teams","api","msUtils","toasty"],angular.module("app.staff").controller("TeamsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.user.save(p.telephone).$promise.then(function(e){p.telephones.unshift(e),i.success({title:"Telephone properly created",msg:p.telephone.name?p.telephone.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.user.update({id:p.telephone.id},p.telephone).$promise.then(function(e){var t=_.find(p.telephones,{id:e.id});t&&_.merge(t,e),i.success({title:"Telephone properly saved!",msg:p.telephone.name?p.telephone.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The telephone will be deleted.").ariaLabel("Delete Telephone").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.user.delete({id:p.telephone.id}).$promise.then(function(){_.remove(p.telephones,{id:p.telephone.id}),i.success({title:"Telephone properly deleted!",msg:(p.telephone.name||"telephone")+" has been deleted!"}),u(p.telephone)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.user.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="STAFF.EDIT_TELEPHONE",p.telephone=angular.copy(s),p.telephones=o,p.newTelephone=!1,p.telephone||(p.telephone={role:"telephone",autointernal:!0},p.title="STAFF.NEW_TELEPHONE",p.newTelephone=!0),p.addNewTelephone=l,p.saveTelephone=d,p.deleteTelephone=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","telephones","telephone","api"],angular.module("app.staff").controller("CreateOrEditTelephoneDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],n.user.changePassword({id:s.telephone.id,newPassword:s.password}).$promise.then(function(){t.success({title:"Telephone password properly updated!"}),o()}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.telephone.changePassword"}]})}function o(){e.hide()}var s=this;s.errors=[],s.telephone=a,s.password="",s.savePassword=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","api","telephone"],angular.module("app.staff").controller("TelephonechangepasswordController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"TelephonechangepasswordController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/telephones/edit/changepassword/changepassword.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{telephone:e,telephones:d.telephones?d.telephones.rows:[]}})}function r(){e.go("app.staff.telephones")}function l(){i.user.update({id:d.telephone.id},d.telephone).$promise.then(function(){a.success({title:"Telephone updated!",msg:d.telephone.name?d.telephone.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}var d=this;d.telephone=e.params.telephone||o||{},d.selectedTab=e.params.tab||0,d.changepassworddialog=s,d.gotoTelephones=r,d.saveTelephone=l}e.$inject=["$state","$mdDialog","$document","toasty","api","telephone"],angular.module("app.staff").controller("TelephoneController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.staff.telephones.edit",{id:e.id,telephone:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the telephone?").htmlContent("<b>"+(e.name||"telephone")+"</b> will be deleted.").ariaLabel("delete telephone").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.telephones=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.user.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTelephoneDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/telephones/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{telephone:t,telephones:A.telephones.rows}})}function v(e){l.user.delete({id:e.id}).$promise.then(function(){_.remove(A.telephones.rows,{id:e.id}),A.telephones.count-=1,A.telephones.rows.length||A.getTelephones(),c.success({title:"Telephone deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTelephones);return A.selectedTelephones=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected telephones?").htmlContent("<b>"+A.selectedTelephones.length+" selected</b> will be deleted.").ariaLabel("delete Telephones").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTelephones.forEach(function(e){v(e)}),A.selectedTelephones=[]})}function E(){A.selectedTelephones=[]}function y(){A.selectedTelephones=A.telephones.rows}var A=this;A.telephones=r||{count:0,rows:[]},A.table="telephones",A.listOrder="",A.listOrderAsc=null,A.selectedTelephones=[],A.query={fields:"createdAt,updatedAt,id,role,fullname,name,email,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup",role:"telephone",sort:"-updatedAt",limit:10,page:1},A.arraytransport=_.keyBy([{option:"udp",value:"'udp'"},{option:"tcp",value:"'tcp'"},{option:"ws",value:"'ws'"},{option:"wss",value:"'wss'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraynat=_.keyBy([{option:"force_rport",value:"'force_rport'"},{option:"comedia",value:"'comedia'"},{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"never",value:"'never'"},{option:"route",value:"'route'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayallow=_.keyBy([{option:"alaw",value:"'alaw'"},{option:"ulaw",value:"'ulaw'"},{option:"gsm",value:"'gsm'"},{option:"g729",value:"'g729'"},{option:"ilbc",value:"'ilbc'"},{option:"opus",value:"'opus'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getTelephones=g,A.createOrEditTelephone=h,A.deleteTelephone=v,A.exportSelectedTelephones=b,A.deleteSelectedTelephones=f,A.deselectTelephones=E,A.selectAllTelephones=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTelephones())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","telephones","api","msUtils","toasty"],angular.module("app.staff").controller("TelephonesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.user.save(p.user).$promise.then(function(e){p.users.unshift(e),i.success({title:"User properly created",msg:p.user.name?p.user.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.user.update({id:p.user.id},p.user).$promise.then(function(e){var t=_.find(p.users,{id:e.id});t&&_.merge(t,e),i.success({title:"User properly saved!",msg:p.user.name?p.user.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.user.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.user.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The user will be deleted.").ariaLabel("Delete User").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.user.delete({id:p.user.id}).$promise.then(function(){_.remove(p.users,{id:p.user.id}),i.success({title:"User properly deleted!",msg:(p.user.name||"user")+" has been deleted!"}),u(p.user)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.user.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="STAFF.EDIT_USER",p.user=angular.copy(s),p.users=o,p.newUser=!1,p.user||(p.user={role:"user",autointernal:!0},p.title="STAFF.NEW_USER",p.newUser=!0),p.addNewUser=l,p.saveUser=d,p.deleteUser=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","users","user","api"],angular.module("app.staff").controller("CreateOrEditUserDialogController",e)}(),function(){"use strict";function e(e,t){function n(e){s.user=angular.copy(e),s.ngFlowOptions.target="api/users/"+s.user.id+"/avatar",s.user.images=[]}function a(e){var n=["png","jpg"];if(_.includes(n,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return s.user.images.unshift(a),!0}return t.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+n.join()}),!1}function i(){s.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},s.ngFlow.flow.upload()}function o(e,t){angular.forEach(s.user.images,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="image"}})}var s=this;s.user={},s.ngFlowOptions={chunkSize:8388608,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3},s.ngFlow={flow:{}},s.dropping=!1,s.fileAdded=a,s.upload=i,s.fileSuccess=o,s.init=n}e.$inject=["$cookies","toasty"],angular.module("app.staff").controller("Userchange_avatarController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],n.user.changePassword({id:s.user.id,newPassword:s.password}).$promise.then(function(){t.success({title:"User password properly updated!"}),o()}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.user.changePassword"}]})}function o(){e.hide()}var s=this;s.errors=[],s.user=a,s.password="",s.savePassword=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","api","user"],angular.module("app.staff").controller("UserchangepasswordController",e)}(),function(){"use strict";function e(e,t,n){function a(e){o.user=e}function i(t,a){if((a||t).enabled){if(a)a.enabled=!0,o.user.permissions.push(a.id);else for(var i=0;i<t.children.length;i++)t.children[i].enabled=!0,o.user.permissions.push(t.children[i].id);t.enabled=!0,o.user.permissions.push(t.id)}else if(a)a.enabled=!1,_.remove(o.user.permissions,function(e){return a.id===e}),_.filter(t.children,{enabled:!1}).length===t.children.length&&(t.enabled=!1,_.remove(o.user.permissions,function(e){return t.id===e}));else{t.enabled=!1,_.remove(o.user.permissions,function(e){return t.id===e});for(var s=0;s<t.children.length;s++)t.children[s].enabled=!1,_.remove(o.user.permissions,function(e){return t.children[s].id===e})}return e.user.update({id:o.user.id,permissions:_.uniq(o.user.permissions)}).$promise.then(function(){n.success({title:"user updated!",msg:o.user.name?o.user.name+" has been updated!":""})}).catch(function(e){console.error(e)})}var o=this;o.user={},o.navigation=t.getNavigation(),o.init=a,o.onChange=i}e.$inject=["api","msNavigationService","toasty"],angular.module("app.staff").controller("UserPermissionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){n.user[m.isVoiceRealtime()?"getVoiceQueuesRt":"getQueues"]({id:m.user.id,fields:m.isVoiceRealtime()?"VoiceQueueId,queue_name,penalty":"id,name,strategy",channel:i,nolimit:!0}).$promise.then(function(e){return m.isVoiceRealtime()?m.selectedItems=e.rows?_.map(e.rows,function(e){return{id:e.VoiceQueueId,name:e.queue_name,penalty:e.hasOwnProperty("penalty")?"penalty "+e.penalty:"penalty 0",strategy:""}}):[]:m.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserVoiceQueue?"penalty "+e.UserVoiceQueue.penalty:"",e}):[],n[m.apiname].get({fields:"id,name,strategy",nolimit:!0,type:s}).$promise}).then(function(e){m.items=e.rows?e.rows:[],m.selectedItems=_.intersectionBy(m.selectedItems,m.items,"id"),m.dualMultiselectOptions.selectedItems=m.selectedItems,m.dualMultiselectOptions.items=_.differenceBy(m.items,m.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETQUEUES",msg:e.status?JSON.stringify(e.data):e.toString()})})}function d(){return o&&"voice"===i}function c(){e.hide()}var m=this;m.user=a,m.penalty=0,m.apiname=i+"Queue",m.title=r.instant("STAFF.QUEUEADD_USER_"+i.toUpperCase()+"_"+s.toUpperCase()),m.items=[],m.selectedItems=[],m.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"strategy",line3:"penalty",labelAll:r.instant("STAFF.ALL_QUEUES_"+i.toUpperCase()+"_"+s.toUpperCase()),labelSelected:r.instant("STAFF.SELECTED_QUEUES_"+i.toUpperCase()+"_"+s.toUpperCase()),transferCallback:function(e,a){n.user[a?"removeQueues":"addQueues"]({id:m.user.id,ids:_.map(e,"id"),channel:i,penalty:m.penalty||0,realtime:o}).$promise.then(function(){l(),t.success({title:"Queue properly "+(a?"removed":"added"),msg:"Queue has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:USER.ADDQUEUES",msg:e.status?JSON.stringify(e.data):e.toString()})})}},m.closeDialog=c,m.isVoiceRealtime=d,l()}e.$inject=["$mdDialog","toasty","api","user","channel","realtime","direction","$translate"],angular.module("app.staff").controller("UserqueueaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a,i){t.show({controller:"UserqueueaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/users/edit/queueadd/queueadd.html",parent:angular.element(n.body),targetEvent:i,clickOutsideToClose:!0,locals:{user:e,users:c.users?c.users.rows:[],channel:a,realtime:!1,direction:"inbound"}})}function r(e,a){t.show({controller:"UserchangepasswordController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/users/edit/changepassword/changepassword.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{user:e,users:c.users?c.users.rows:[]}})}function l(){e.go("app.staff.users")}function d(){i.user.update({id:c.user.id},c.user).$promise.then(function(){a.success({title:"User updated!",msg:c.user.name?c.user.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.user=e.params.user||o||{},c.selectedTab=e.params.tab||0,c.queueaddchannel=s,c.changepassworddialog=r,c.gotoUsers=l,c.saveUser=d}e.$inject=["$state","$mdDialog","$document","toasty","api","user"],angular.module("app.staff").controller("UserController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.staff.users.edit",{id:e.id,user:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the user?").htmlContent("<b>"+(e.name||"user")+"</b> will be deleted.").ariaLabel("delete user").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.users=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.user.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditUserDialogController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/users/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{user:t,users:A.users.rows}})}function v(e){l.user.delete({id:e.id}).$promise.then(function(){_.remove(A.users.rows,{id:e.id}),A.users.count-=1,A.users.rows.length||A.getUsers(),c.success({title:"User deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETuser",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedUsers);return A.selectedUsers=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected users?").htmlContent("<b>"+A.selectedUsers.length+" selected</b> will be deleted.").ariaLabel("delete Users").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedUsers.forEach(function(e){v(e)}),A.selectedUsers=[]})}function E(){A.selectedUsers=[]}function y(){A.selectedUsers=A.users.rows}var A=this;A.users=r||{count:0,rows:[]},A.table="users",A.listOrder="",A.listOrderAsc=null,A.selectedUsers=[],A.query={fields:"createdAt,updatedAt,role,id,fullname,name,email,userpic,password,description,autointernal,internal,voicemail,transport,nat,allow,callerid,callgroup,pickupgroup,permissions",role:"admin,user",sort:"-updatedAt",limit:10,page:1},A.arrayrole=_.keyBy([{option:"Admin",value:"'admin'"},{option:"User",value:"'user'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytransport=_.keyBy([{option:"udp",value:"'udp'"},{option:"tcp",value:"'tcp'"},{option:"ws",value:"'ws'"},{option:"wss",value:"'wss'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraynat=_.keyBy([{option:"force_rport",value:"'force_rport'"},{option:"comedia",value:"'comedia'"},{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"never",value:"'never'"},{option:"route",value:"'route'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayallow=_.keyBy([{option:"alaw",value:"'alaw'"},{option:"ulaw",value:"'ulaw'"},{option:"gsm",value:"'gsm'"},{option:"g729",value:"'g729'"},{option:"ilbc",value:"'ilbc'"},{option:"opus",value:"'opus'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getUsers=g,A.createOrEditUser=h,A.deleteUser=v,A.exportSelectedUsers=b,A.deleteSelectedUsers=f,A.deselectUsers=E,A.selectAllUsers=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getUsers())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","users","api","msUtils","toasty"],angular.module("app.staff").controller("UsersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditCannedAnswerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/cannedAnswers/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{cannedAnswer:e,cannedAnswers:A.cannedAnswers.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the cannedAnswer?").htmlContent("<b>"+(e.name||"cannedAnswer")+"</b> will be deleted.").ariaLabel("delete cannedAnswer").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.cannedAnswers=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.cannedAnswer.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditCannedAnswerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/cannedAnswers/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{cannedAnswer:t,cannedAnswers:A.cannedAnswers.rows}})}function v(e){l.cannedAnswer.delete({id:e.id}).$promise.then(function(){_.remove(A.cannedAnswers.rows,{id:e.id}),A.cannedAnswers.count-=1,A.cannedAnswers.rows.length||A.getCannedAnswers(),c.success({title:"CannedAnswer deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcannedAnswer",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedCannedAnswers);return A.selectedCannedAnswers=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected cannedAnswers?").htmlContent("<b>"+A.selectedCannedAnswers.length+" selected</b> will be deleted.").ariaLabel("delete CannedAnswers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedCannedAnswers.forEach(function(e){v(e)}),A.selectedCannedAnswers=[]})}function E(){A.selectedCannedAnswers=[]}function y(){A.selectedCannedAnswers=A.cannedAnswers.rows}var A=this;A.cannedAnswers=r||{count:0,rows:[]},A.table="cannedAnswers",A.listOrder="",A.listOrderAsc=null,A.selectedCannedAnswers=[],A.query={fields:"createdAt,updatedAt,id,key,value,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getCannedAnswers=g,A.createOrEditCannedAnswer=h,A.deleteCannedAnswer=v,A.exportSelectedCannedAnswers=b,A.deleteSelectedCannedAnswers=f,A.deselectCannedAnswers=E,A.selectAllCannedAnswers=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getCannedAnswers())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","cannedAnswers","api","msUtils","toasty"],angular.module("app.tools").controller("CannedAnswersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.cannedAnswer.save(p.cannedAnswer).$promise.then(function(e){p.cannedAnswers.unshift(e),i.success({title:"CannedAnswer properly created",msg:p.cannedAnswer.name?p.cannedAnswer.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cannedAnswer.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.cannedAnswer.update({id:p.cannedAnswer.id},p.cannedAnswer).$promise.then(function(e){var t=_.find(p.cannedAnswers,{id:e.id});t&&_.merge(t,e),i.success({title:"CannedAnswer properly saved!",msg:p.cannedAnswer.name?p.cannedAnswer.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.cannedAnswer.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The cannedAnswer will be deleted.").ariaLabel("Delete CannedAnswer").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.cannedAnswer.delete({id:p.cannedAnswer.id}).$promise.then(function(){_.remove(p.cannedAnswers,{id:p.cannedAnswer.id}),i.success({title:"CannedAnswer properly deleted!",msg:(p.cannedAnswer.name||"cannedAnswer")+" has been deleted!"}),u(p.cannedAnswer)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.cannedAnswer.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_CANNEDANSWER",p.cannedAnswer=angular.copy(s),p.cannedAnswers=o,p.newCannedAnswer=!1,p.cannedAnswer||(p.cannedAnswer={},p.title="TOOLS.NEW_CANNEDANSWER",p.newCannedAnswer=!0),p.addNewCannedAnswer=l,p.saveCannedAnswer=d,p.deleteCannedAnswer=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","cannedAnswers","cannedAnswer","api"],angular.module("app.tools").controller("CreateOrEditCannedAnswerDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.dashboard.save(p.customDashboard).$promise.then(function(e){p.customDashboards.unshift(e),i.success({title:"CustomDashboard properly created",msg:p.customDashboard.name?p.customDashboard.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboard.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.dashboard.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.dashboard.update({id:p.customDashboard.id},p.customDashboard).$promise.then(function(e){var t=_.find(p.customDashboards,{id:e.id});t&&_.merge(t,e),i.success({title:"CustomDashboard properly saved!",msg:p.customDashboard.name?p.customDashboard.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboard.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.dashboard.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The customDashboard will be deleted.").ariaLabel("Delete CustomDashboard").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.dashboard.delete({id:p.customDashboard.id}).$promise.then(function(){_.remove(p.customDashboards,{id:p.customDashboard.id}),i.success({title:"CustomDashboard properly deleted!",msg:(p.customDashboard.name||"customDashboard")+" has been deleted!"}),u(p.customDashboard)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboard.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_CUSTOMDASHBOARD",p.customDashboard=angular.copy(s),p.customDashboards=o,p.newCustomDashboard=!1,p.customDashboard||(p.customDashboard={interval:5},p.title="TOOLS.NEW_CUSTOMDASHBOARD",p.newCustomDashboard=!0),p.addNewCustomDashboard=l,p.saveCustomDashboard=d,p.deleteCustomDashboard=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","customDashboards","customDashboard","api"],angular.module("app.tools").controller("CreateOrEditCustomDashboardDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.customDashboards.edit",{id:e.id,customDashboard:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the customDashboard?").htmlContent("<b>"+(e.name||"customDashboard")+"</b> will be deleted.").ariaLabel("delete customDashboard").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.customDashboards=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.dashboard.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditCustomDashboardDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/customDashboards/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{customDashboard:t,customDashboards:A.customDashboards.rows}})}function v(e){l.dashboard.delete({id:e.id}).$promise.then(function(){_.remove(A.customDashboards.rows,{id:e.id}),A.customDashboards.count-=1,A.customDashboards.rows.length||A.getCustomDashboards(),c.success({title:"CustomDashboard deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdashboard",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedCustomDashboards);return A.selectedCustomDashboards=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected customDashboards?").htmlContent("<b>"+A.selectedCustomDashboards.length+" selected</b> will be deleted.").ariaLabel("delete CustomDashboards").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedCustomDashboards.forEach(function(e){v(e)}),A.selectedCustomDashboards=[]})}function E(){A.selectedCustomDashboards=[]}function y(){A.selectedCustomDashboards=A.customDashboards.rows}var A=this;A.customDashboards=r||{count:0,rows:[]},A.table="customDashboards",A.listOrder="",A.listOrderAsc=null,A.selectedCustomDashboards=[],A.query={fields:"createdAt,updatedAt,id,name,interval,description",sort:"-updatedAt",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getCustomDashboards=g,A.createOrEditCustomDashboard=h,A.deleteCustomDashboard=v,A.exportSelectedCustomDashboards=b,A.deleteSelectedCustomDashboards=f,A.deselectCustomDashboards=E,A.selectAllCustomDashboards=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getCustomDashboards())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","customDashboards","api","msUtils","toasty"],angular.module("app.tools").controller("CustomDashboardsController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(e){return console.log(e),i.dashboardItem.delete({id:e}).$promise.then(function(t){_.remove(c.items.rows,{id:e})}).catch(function(e){console.error(e)})}function s(e,t,n){return i.dashboardItem.update(n).$promise.catch(function(e){console.error(e)})}function r(e){t.show({controller:"CreateOrEditDashboardItemDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/customDashboards/edit/dashboard/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{dashboarditem:null,dashboard:c.items.rows}})}function l(e){return c.customDashboard=e,d=a(function(){return i.dashboard.run({id:c.customDashboard.id})},1e3*c.customDashboard.interval),i.dashboard.getItems({id:e.id,fields:"id,type,sizeX,sizeY,row,col,data"}).$promise.then(function(e){c.items=e}).catch(function(e){console.error(e)})}var d,c=this;c.customDashboard={},c.gridOptions={resizable:{enabled:!0,stop:s},draggable:{enabled:!0,stop:s}},c.items={rows:[],count:0},c.init=l,c.addItem=r,c.updateItem=s,c.deleteItem=o,e.$on("$destroy",function(){a.cancel(d)})}e.$inject=["$scope","$mdDialog","$document","$interval","api"],angular.module("app.tools").controller("CustomDashboardCustomDashboardController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.dashboard.addItem({id:t.params.id},p.dashboarditem).$promise.then(function(e){p.dashboard.unshift(e),i.success({title:"DashboardItem properly created",msg:p.dashboarditem.name?p.dashboarditem.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboardItem.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.dashboardItem.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.dashboardItem.update({id:p.dashboarditem.id},p.dashboarditem).$promise.then(function(e){var t=_.find(p.dashboard,{id:e.id});t&&_.merge(t,e),i.success({title:"DashboardItem properly saved!",msg:p.dashboarditem.name?p.dashboarditem.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboardItem.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.dashboardItem.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The dashboarditem will be deleted.").ariaLabel("Delete DashboardItem").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.dashboardItem.delete({id:p.dashboarditem.id}).$promise.then(function(){_.remove(p.dashboard,{id:p.dashboarditem.id}),i.success({title:"DashboardItem properly deleted!",msg:(p.dashboarditem.name||"dashboarditem")+" has been deleted!"}),u(p.dashboarditem)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.dashboardItem.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_DASHBOARDITEM",p.dashboarditem=angular.copy(s),p.dashboard=o,p.newDashboardItem=!1,p.dashboarditem||(p.dashboarditem={type:"counter"},p.title="TOOLS.NEW_DASHBOARDITEM",p.newDashboardItem=!0),p.addNewDashboardItem=l,p.saveDashboardItem=d,p.deleteDashboardItem=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","dashboard","dashboarditem","api"],angular.module("app.tools").controller("CreateOrEditDashboardItemDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.customDashboards")}function r(){i.dashboard.update({id:l.customDashboard.id},l.customDashboard).$promise.then(function(){a.success({title:"CustomDashboard updated!",msg:l.customDashboard.name?l.customDashboard.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdashboard",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.customDashboard=e.params.customDashboard||o||{},l.selectedTab=e.params.tab||0,l.gotoCustomDashboards=s,l.saveCustomDashboard=r}e.$inject=["$state","$mdDialog","$document","toasty","api","customDashboard"],angular.module("app.tools").controller("CustomDashboardController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.interval.save(p.interval).$promise.then(function(e){p.intervals.unshift(e),i.success({title:"Interval properly created",msg:p.interval.name?p.interval.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.interval.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.interval.update({id:p.interval.id},p.interval).$promise.then(function(e){var t=_.find(p.intervals,{id:e.id});t&&_.merge(t,e),i.success({title:"Interval properly saved!",msg:p.interval.name?p.interval.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.interval.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The interval will be deleted.").ariaLabel("Delete Interval").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.interval.delete({id:p.interval.id}).$promise.then(function(){_.remove(p.intervals,{id:p.interval.id}),i.success({title:"Interval properly deleted!",msg:(p.interval.name||"interval")+" has been deleted!"}),u(p.interval)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_INTERVAL",p.interval=angular.copy(s),p.intervals=o,p.newInterval=!1,p.interval||(p.interval={},p.title="TOOLS.NEW_INTERVAL",p.newInterval=!0),p.addNewInterval=l,p.saveInterval=d,p.deleteInterval=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","intervals","interval","api"],angular.module("app.tools").controller("CreateOrEditIntervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom&&u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push("*"),u.monthDayFrom&&u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push("*"),u.monthFrom&&u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(i),u.intervals=o,u.newInterval=!1,u.types=["always","custom"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],h=p[1],v=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],y=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(y.split(":")[0])),f.setMinutes(Number(y.split(":")[1])),u.timeRangeTo=f}"*"!==h&&(u.dayOfWeekFrom=h.split("-")[0],u.dayOfWeekTo=h.split("-")[1]),"*"!==v&&(u.monthDayFrom=v.split("-")[0],u.monthDayTo=v.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditIntervalAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.interval=e,h.query.id=h.interval.id,h.getIntervalIntervals()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the interval?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete interval").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.intervalIntervals=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.interval.getIntervals(h.query,c).$promise}function u(e,t){i.show({controller:"EditIntervalAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/intervals/edit/apps/interval/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:t,intervals:h.intervalIntervals.rows}})}function p(e){r.interval.delete({id:e.id}).$promise.then(function(){_.remove(h.intervalIntervals.rows,{id:e.id}),h.intervalIntervals.count-=1,h.intervalIntervals.rows.length||h.getIntervalIntervals(),s.success({title:"Interval deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected intervals?").htmlContent("<b>"+h.selectedIntervalIntervals.length+" selected</b> will be deleted.").ariaLabel("delete intervals").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedIntervalIntervals.forEach(function(e){p(e)}),h.selectedIntervalIntervals=[]})}var h=this;h.interval={},h.intervalIntervals={count:0,rows:[]},h.selectedIntervalIntervals=[],h.sortableTable={animation:100,onSort:function(e){r.interval.addIntervals({id:h.interval.id},e.models).$promise.then(function(e){h.intervalIntervals.rows=e}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:SORTABLETABLE",msg:e.data?JSON.stringify(e.data):e.toString()})})}},h.query={fields:"createdAt,updatedAt,id,name,interval,createdAt",nolimit:"true",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getIntervalIntervals=m,h.createOrEditIntervalInterval=u,h.deleteIntervalInterval=p,h.deleteSelectedIntervalIntervals=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getIntervalIntervals())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.tools").controller("IntervalIntervalsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.interval.save(p.interval).$promise.then(function(e){p.intervals.unshift(e),i.success({title:"Interval properly created",msg:p.interval.name?p.interval.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.interval.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.interval.update({id:p.interval.id},p.interval).$promise.then(function(e){var t=_.find(p.intervals,{id:e.id});t&&_.merge(t,e),i.success({title:"Interval properly saved!",msg:p.interval.name?p.interval.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.interval.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The interval will be deleted.").ariaLabel("Delete Interval").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.interval.delete({id:p.interval.id}).$promise.then(function(){_.remove(p.intervals,{id:p.interval.id}),i.success({title:"Interval properly deleted!",msg:(p.interval.name||"interval")+" has been deleted!"}),u(p.interval)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.interval.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_INTERVAL",p.interval=angular.copy(s),p.intervals=o,p.newInterval=!1,p.interval||(p.interval={},p.title="TOOLS.NEW_INTERVAL",p.newInterval=!0),p.addNewInterval=l,p.saveInterval=d,p.deleteInterval=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","intervals","interval","api"],angular.module("app.tools").controller("CreateOrEditIntervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.intervals")}function r(){i.interval.update({id:l.interval.id},l.interval).$promise.then(function(){a.success({title:"Interval updated!",msg:l.interval.name?l.interval.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.interval=e.params.interval||o||{},l.selectedTab=e.params.tab||0,l.gotoIntervals=s,l.saveInterval=r}e.$inject=["$state","$mdDialog","$document","toasty","api","interval"],angular.module("app.tools").controller("IntervalController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.intervals.edit",{id:e.id,interval:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the interval?").htmlContent("<b>"+(e.name||"interval")+"</b> will be deleted.").ariaLabel("delete interval").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.intervals=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.interval.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditIntervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/intervals/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:t,intervals:A.intervals.rows}})}function v(e){l.interval.delete({id:e.id}).$promise.then(function(){_.remove(A.intervals.rows,{id:e.id}),A.intervals.count-=1,A.intervals.rows.length||A.getIntervals(),c.success({title:"Interval deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETinterval",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedIntervals);return A.selectedIntervals=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected intervals?").htmlContent("<b>"+A.selectedIntervals.length+" selected</b> will be deleted.").ariaLabel("delete Intervals").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedIntervals.forEach(function(e){v(e)}),A.selectedIntervals=[]})}function E(){A.selectedIntervals=[]}function y(){A.selectedIntervals=A.intervals.rows}var A=this;A.intervals=r||{count:0,rows:[]},A.table="intervals",A.listOrder="",A.listOrderAsc=null,A.selectedIntervals=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",IntervalId:"null",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getIntervals=g,A.createOrEditInterval=h,A.deleteInterval=v,A.exportSelectedIntervals=b,A.deleteSelectedIntervals=f,A.deselectIntervals=E,A.selectAllIntervals=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getIntervals())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","intervals","api","msUtils","toasty"],angular.module("app.tools").controller("IntervalsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.pause.save(p.pause).$promise.then(function(e){p.pauses.unshift(e),i.success({title:"Pause properly created",msg:p.pause.name?p.pause.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.pause.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.pause.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.pause.update({id:p.pause.id},p.pause).$promise.then(function(e){var t=_.find(p.pauses,{id:e.id});t&&_.merge(t,e),i.success({title:"Pause properly saved!",msg:p.pause.name?p.pause.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.pause.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.pause.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The pause will be deleted.").ariaLabel("Delete Pause").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.pause.delete({id:p.pause.id}).$promise.then(function(){_.remove(p.pauses,{id:p.pause.id}),i.success({title:"Pause properly deleted!",msg:(p.pause.name||"pause")+" has been deleted!"}),u(p.pause)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.pause.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_PAUSE",p.pause=angular.copy(s),p.pauses=o,p.newPause=!1,p.pause||(p.pause={},p.title="TOOLS.NEW_PAUSE",p.newPause=!0),p.addNewPause=l,p.savePause=d,p.deletePause=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","pauses","pause","api"],angular.module("app.tools").controller("CreateOrEditPauseDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditPauseDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/pauses/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{pause:e,pauses:A.pauses.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the pause?").htmlContent("<b>"+(e.name||"pause")+"</b> will be deleted.").ariaLabel("delete pause").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.pauses=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.pause.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditPauseDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/pauses/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{pause:t,pauses:A.pauses.rows}})}function v(e){l.pause.delete({id:e.id}).$promise.then(function(){_.remove(A.pauses.rows,{id:e.id}),A.pauses.count-=1,A.pauses.rows.length||A.getPauses(),c.success({title:"Pause deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETpause",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedPauses);return A.selectedPauses=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected pauses?").htmlContent("<b>"+A.selectedPauses.length+" selected</b> will be deleted.").ariaLabel("delete Pauses").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedPauses.forEach(function(e){v(e)}),A.selectedPauses=[]})}function E(){A.selectedPauses=[]}function y(){A.selectedPauses=A.pauses.rows}var A=this;A.pauses=r||{count:0,rows:[]},A.table="pauses",A.listOrder="",A.listOrderAsc=null,A.selectedPauses=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getPauses=g,A.createOrEditPause=h,A.deletePause=v,A.exportSelectedPauses=b,A.deleteSelectedPauses=f,A.deselectPauses=E,A.selectAllPauses=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getPauses())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","pauses","api","msUtils","toasty"],angular.module("app.tools").controller("PausesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.schedule.save(p.schedule).$promise.then(function(e){p.schedules.unshift(e),i.success({title:"Schedule properly created",msg:p.schedule.name?p.schedule.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.schedule.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.schedule.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.schedule.update({id:p.schedule.id},p.schedule).$promise.then(function(e){var t=_.find(p.schedules,{id:e.id});t&&_.merge(t,e),i.success({title:"Schedule properly saved!",msg:p.schedule.name?p.schedule.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.schedule.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.schedule.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The schedule will be deleted.").ariaLabel("Delete Schedule").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.schedule.delete({id:p.schedule.id}).$promise.then(function(){_.remove(p.schedules,{id:p.schedule.id}),i.success({title:"Schedule properly deleted!",msg:(p.schedule.name||"schedule")+" has been deleted!"}),u(p.schedule)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.schedule.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_SCHEDULE",p.schedule=angular.copy(s),p.schedules=o,p.newSchedule=!1,p.schedule||(p.schedule={type:"report",reportType:"default",reportOutput:"CSV",cronType:"currentDay",cron:"*/15 * * * *",weekDays:"monday",reportRange:"last30",sendMail:!1,active:!0},p.title="TOOLS.NEW_SCHEDULE",p.newSchedule=!0),p.addNewSchedule=l,p.saveSchedule=d,p.deleteSchedule=c,p.getDateFromString=m,p.closeDialog=u,r.analyticCustomReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.customReports=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcustomReports",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.analyticDefaultReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){p.defaultReports=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdefaultReports",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","schedules","schedule","api"],angular.module("app.tools").controller("CreateOrEditScheduleDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.schedules")}function r(){i.schedule.update({id:l.schedule.id},l.schedule).$promise.then(function(){a.success({title:"Schedule updated!",msg:l.schedule.name?l.schedule.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETschedule",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.schedule=e.params.schedule||o||{},l.selectedTab=e.params.tab||0,l.gotoScheduler=s,l.saveSchedule=r,i.analyticCustomReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.customReports=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcustomReports",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.analyticDefaultReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.defaultReports=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdefaultReports",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","schedule"],angular.module("app.tools").controller("ScheduleController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.schedules.edit",{id:e.id,schedule:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the schedule?").htmlContent("<b>"+(e.name||"schedule")+"</b> will be deleted.").ariaLabel("delete schedule").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.schedules=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.schedule.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditScheduleDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/schedules/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{schedule:t,schedules:A.schedules.rows}})}function v(e){l.schedule.delete({id:e.id}).$promise.then(function(){_.remove(A.schedules.rows,{id:e.id}),A.schedules.count-=1,A.schedules.rows.length||A.getScheduler(),c.success({title:"Schedule deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETschedule",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedScheduler);return A.selectedScheduler=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected schedules?").htmlContent("<b>"+A.selectedScheduler.length+" selected</b> will be deleted.").ariaLabel("delete Schedules").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedScheduler.forEach(function(e){v(e)}),A.selectedScheduler=[]})}function E(){A.selectedScheduler=[]}function y(){A.selectedScheduler=A.schedules.rows}var A=this;A.schedules=r||{count:0,rows:[]},A.table="schedules",A.listOrder="",A.listOrderAsc=null,A.selectedScheduler=[],A.query={fields:"createdAt,updatedAt,id,name,type,reportType,reportId,reportId,reportOutput,cronType,validityStart,validityEnd,cron,weekDays,monthDay,hour,reportRange,sendMail,MailServerOutId,email,active,description",sort:"-updatedAt",limit:10,page:1},A.arraytype=_.keyBy([{option:"Report",value:"'report'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayreportType=_.keyBy([{option:"Default",value:"'default'"},{option:"Custom",value:"'custom'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayreportOutput=_.keyBy([{option:"CSV",value:"'CSV'"},{option:"PDF",value:"'PDF'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycronType=_.keyBy([{option:"CurrentDay",value:"'currentDay'"},{option:"Daily",value:"'daily'"},{option:"Weekly",value:"'weekly'"},{option:"Monthly",value:"'monthly'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycron=_.keyBy([{option:"15min",value:"'*/15 * * * *'"},{option:"30min",value:"'*/30 * * * *'"},{option:"1h",value:"'0 * * * *'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayweekDays=_.keyBy([{option:"MON",value:"'monday'"},{option:"TUE",value:"'tuesday'"},{option:"WED",value:"'wednesday'"},{option:"THU",value:"'thursday'"},{option:"FRI",value:"'friday'"},{option:"SAT",value:"'saturday'"},{option:"SUN",value:"'sunday'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayreportRange=_.keyBy([{option:"PREVIOUS_DAY",value:"'yesterday'"},{option:"LAST_SEVEN_DAYS",value:"'last7'"},{option:"LAST_THIRTY_DAYS",value:"'last30'"},{option:"LAST_MONTH",value:"'lastMonth'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getScheduler=g,A.createOrEditSchedule=h,A.deleteSchedule=v,A.exportSelectedScheduler=b,A.deleteSelectedScheduler=f,A.deselectScheduler=E,A.selectAllScheduler=y,l.analyticCustomReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){A.customReports=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcustomReports",msg:e.data?JSON.stringify(e.data):e.toString()})}),l.analyticDefaultReport.get({fields:"id,name",sort:"name"}).$promise.then(function(e){A.defaultReports=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETdefaultReports",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getScheduler())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","schedules","api","msUtils","toasty"],angular.module("app.tools").controller("SchedulesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.sound.save(p.sound).$promise.then(function(e){p.sounds.unshift(e),i.success({title:"Sound properly created",msg:p.sound.name?p.sound.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.sound.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.sound.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.sound.update({id:p.sound.id},p.sound).$promise.then(function(e){var t=_.find(p.sounds,{id:e.id});t&&_.merge(t,e),i.success({title:"Sound properly saved!",msg:p.sound.name?p.sound.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.sound.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.sound.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The sound will be deleted.").ariaLabel("Delete Sound").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.sound.delete({id:p.sound.id}).$promise.then(function(){_.remove(p.sounds,{id:p.sound.id}),i.success({title:"Sound properly deleted!",msg:(p.sound.name||"sound")+" has been deleted!"}),u(p.sound)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.sound.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_SOUND",p.sound=angular.copy(s),p.sounds=o,p.newSound=!1,p.sound||(p.sound={},p.title="TOOLS.NEW_SOUND",p.newSound=!0),p.addNewSound=l,p.saveSound=d,p.deleteSound=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","sounds","sound","api"],angular.module("app.tools").controller("CreateOrEditSoundDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditSoundDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/sounds/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{sound:e,sounds:x.sounds.rows}})}function u(e,n){return l.sound.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/sounds/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsound",msg:e.data?JSON.stringify(e.data):e.toString()})})}function p(e,t){var n=i.confirm().title("Are you sure want to delete the sound?").htmlContent("<b>"+(e.name||"sound")+"</b> will be deleted.").ariaLabel("delete sound").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){b(e)},function(){console.log("CANCEL")})}function g(e){x.sounds=e||{count:0,rows:[]}}function h(){x.query.offset=(x.query.page-1)*x.query.limit,x.promise=l.sound.get(x.query,g).$promise}function v(e,t){i.show({controller:"CreateOrEditSoundDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/sounds/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{sound:t,sounds:x.sounds.rows}})}function b(e){l.sound.delete({id:e.id}).$promise.then(function(){_.remove(x.sounds.rows,{id:e.id}),x.sounds.count-=1,x.sounds.rows.length||x.getSounds(),c.success({title:"Sound deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsound",msg:e.data?JSON.stringify(e.data):e.toString()})})}function f(){var e=_.clone(x.selectedSounds);return x.selectedSounds=[],e}function E(e){var t=i.confirm().title("Are you sure want to delete the selected sounds?").htmlContent("<b>"+x.selectedSounds.length+" selected</b> will be deleted.").ariaLabel("delete Sounds").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){x.selectedSounds.forEach(function(e){b(e)}),x.selectedSounds=[]})}function y(){x.selectedSounds=[]}function A(){x.selectedSounds=x.sounds.rows}function C(e){i.show({controller:"UploadSoundDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/sounds/uploadsound/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{sounds:x.sounds.rows}})}var x=this;x.sounds=r||{count:0,rows:[]},x.table="sounds",x.listOrder="",x.listOrderAsc=null,x.selectedSounds=[],x.query={fields:"createdAt,updatedAt,id,name,audio,description",sort:"-updatedAt",limit:10,page:1},x.editdialog=m,x.downloadfile=u,x.deleteconfirm=p,x.success=g,x.getSounds=h,x.createOrEditSound=v,x.deleteSound=b,x.exportSelectedSounds=f,x.deleteSelectedSounds=E,x.deselectSounds=y,x.selectAllSounds=A,x.uploadSound=C;var T=!0,S=1;e.$watch("vm.query.filter",function(e,t){T?s(function(){T=!1}):(t||(S=x.query.page),e!==t&&(x.query.page=1),e||(x.query.page=S),x.getSounds())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","sounds","api","msUtils","toasty"],angular.module("app.tools").controller("SoundsController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(e){var t=["wav","mp3","gsm"];if(_.includes(t,e.getExtension())){var a={id:e.uniqueIdentifier,file:e,type:"uploading"};return d.uploadSounds.unshift(a),!0}return n.error({title:"Invalid extension: "+e.getExtension(),msg:"Supported only: "+t.join()}),!1}function s(){d.ngFlow.flow.opts.headers={"X-Requested-With":"XMLHttpRequest",Authorization:"Bearer "+e.get("motion.token")},d.ngFlow.flow.upload()}function r(e,t){d.sounds.unshift(JSON.parse(t)),angular.forEach(d.uploadSounds,function(t,n){if(t.id===e.uniqueIdentifier){var a=new FileReader;a.readAsDataURL(t.file.file),a.onload=function(e){t.url=e.target.result},t.type="sound"}})}function l(){t.hide()}var d=this;d.errors=[],d.title="TOOLS.UPLOAD_SOUND",d.sounds=a,d.uploadSounds=[],d.sound={},d.ngFlowOptions={chunkSize:15728640,maxChunkRetries:1,simultaneousUploads:1,testChunks:!1,progressCallbacksInterval:1e3,target:"api/sounds"},d.ngFlow={flow:{}},d.dropping=!1,d.fileAdded=o,d.upload=s,d.fileSuccess=r,d.closeDialog=l}e.$inject=["$cookies","$mdDialog","toasty","sounds","api"],angular.module("app.tools").controller("UploadSoundDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.tag.save(p.tag).$promise.then(function(e){p.tags.unshift(e),i.success({title:"Tag properly created",msg:p.tag.name?p.tag.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.tag.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.tag.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.tag.update({id:p.tag.id},p.tag).$promise.then(function(e){var t=_.find(p.tags,{id:e.id});t&&_.merge(t,e),i.success({title:"Tag properly saved!",msg:p.tag.name?p.tag.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.tag.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.tag.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The tag will be deleted.").ariaLabel("Delete Tag").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.tag.delete({id:p.tag.id}).$promise.then(function(){_.remove(p.tags,{id:p.tag.id}),i.success({title:"Tag properly deleted!",msg:(p.tag.name||"tag")+" has been deleted!"}),u(p.tag)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.tag.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_TAG",p.tag=angular.copy(s),p.tags=o,p.newTag=!1,p.tag||(p.tag={},p.title="TOOLS.NEW_TAG",p.newTag=!0),p.addNewTag=l,p.saveTag=d,p.deleteTag=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","tags","tag","api"],angular.module("app.tools").controller("CreateOrEditTagDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditTagDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/tags/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{tag:e,tags:A.tags.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the tag?").htmlContent("<b>"+(e.name||"tag")+"</b> will be deleted.").ariaLabel("delete tag").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.tags=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.tag.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTagDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/tags/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{tag:t,tags:A.tags.rows}})}function v(e){l.tag.delete({id:e.id}).$promise.then(function(){_.remove(A.tags.rows,{id:e.id}),A.tags.count-=1,A.tags.rows.length||A.getTags(),c.success({title:"Tag deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtag",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTags);return A.selectedTags=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected tags?").htmlContent("<b>"+A.selectedTags.length+" selected</b> will be deleted.").ariaLabel("delete Tags").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTags.forEach(function(e){v(e)}),A.selectedTags=[]})}function E(){A.selectedTags=[]}function y(){A.selectedTags=A.tags.rows}var A=this;A.tags=r||{count:0,rows:[]},A.table="tags",A.listOrder="",A.listOrderAsc=null,A.selectedTags=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getTags=g,A.createOrEditTag=h,A.deleteTag=v,A.exportSelectedTags=b,A.deleteSelectedTags=f,A.deselectTags=E,A.selectAllTags=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTags())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","tags","api","msUtils","toasty"],angular.module("app.tools").controller("TagsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.template.save(p.template).$promise.then(function(e){p.templates.unshift(e),i.success({title:"Template properly created",msg:p.template.name?p.template.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.template.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.template.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.template.update({id:p.template.id},p.template).$promise.then(function(e){var t=_.find(p.templates,{id:e.id});t&&_.merge(t,e),i.success({title:"Template properly saved!",msg:p.template.name?p.template.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.template.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.template.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The template will be deleted.").ariaLabel("Delete Template").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.template.delete({id:p.template.id}).$promise.then(function(){_.remove(p.templates,{id:p.template.id}),i.success({title:"Template properly deleted!",msg:(p.template.name||"template")+" has been deleted!"}),u(p.template)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.template.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_TEMPLATE",p.template=angular.copy(s),p.templates=o,p.newTemplate=!1,p.template||(p.template={},p.title="TOOLS.NEW_TEMPLATE",p.newTemplate=!0),p.addNewTemplate=l,p.saveTemplate=d,p.deleteTemplate=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","templates","template","api"],angular.module("app.tools").controller("CreateOrEditTemplateDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditTemplateDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/templates/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{template:e,templates:A.templates.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the template?").htmlContent("<b>"+(e.name||"template")+"</b> will be deleted.").ariaLabel("delete template").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.templates=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.template.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTemplateDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/templates/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{template:t,templates:A.templates.rows}})}function v(e){l.template.delete({id:e.id}).$promise.then(function(){_.remove(A.templates.rows,{id:e.id}),A.templates.count-=1,A.templates.rows.length||A.getTemplates(),c.success({title:"Template deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplate",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTemplates);return A.selectedTemplates=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected templates?").htmlContent("<b>"+A.selectedTemplates.length+" selected</b> will be deleted.").ariaLabel("delete Templates").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTemplates.forEach(function(e){v(e)}),A.selectedTemplates=[]})}function E(){A.selectedTemplates=[]}function y(){A.selectedTemplates=A.templates.rows}var A=this;A.templates=r||{count:0,rows:[]},A.table="templates",A.listOrder="",A.listOrderAsc=null,A.selectedTemplates=[],A.query={fields:"createdAt,updatedAt,id,name,subject,html,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getTemplates=g,A.createOrEditTemplate=h,A.deleteTemplate=v,A.exportSelectedTemplates=b,A.deleteSelectedTemplates=f,A.deselectTemplates=E,A.selectAllTemplates=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTemplates())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","templates","api","msUtils","toasty"],angular.module("app.tools").controller("TemplatesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trigger.save(p.trigger).$promise.then(function(e){p.triggers.unshift(e),i.success({title:"Trigger properly created",msg:p.trigger.name?p.trigger.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.trigger.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.trigger.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.trigger.update({id:p.trigger.id},p.trigger).$promise.then(function(e){var t=_.find(p.triggers,{id:e.id});t&&_.merge(t,e),i.success({title:"Trigger properly saved!",msg:p.trigger.name?p.trigger.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.trigger.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.trigger.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The trigger will be deleted.").ariaLabel("Delete Trigger").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.trigger.delete({id:p.trigger.id}).$promise.then(function(){_.remove(p.triggers,{id:p.trigger.id}),i.success({title:"Trigger properly deleted!",msg:(p.trigger.name||"trigger")+" has been deleted!"}),u(p.trigger)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.trigger.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_TRIGGER",p.trigger=angular.copy(s),p.triggers=o,p.newTrigger=!1,p.trigger||(p.trigger={channel:"voice"},p.title="TOOLS.NEW_TRIGGER",p.newTrigger=!0),p.addNewTrigger=l,p.saveTrigger=d,p.deleteTrigger=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","triggers","trigger","api"],angular.module("app.tools").controller("CreateOrEditTriggerDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.trigger=e,h.query.id=h.trigger.id,h.query.ActionId=h.trigger.id,h.getTriggerActions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the action?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete action").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.triggerActions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.trigger.getActions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditActionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/triggers/edit/actions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{action:t,actions:h.triggerActions.rows}})}function p(e){r.action.delete({id:e.id}).$promise.then(function(){_.remove(h.triggerActions.rows,{id:e.id}),h.triggerActions.count-=1,h.triggerActions.rows.length||h.getTriggerActions(),s.success({title:"Action deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected actions?").htmlContent("<b>"+h.selectedTriggerActions.length+" selected</b> will be deleted.").ariaLabel("delete actions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedTriggerActions.forEach(function(e){p(e)}),h.selectedTriggerActions=[]})}var h=this;h.trigger={},h.triggerActions={count:0,rows:[]},h.selectedTriggerActions=[],h.query={fields:"createdAt,updatedAt,id,action,data1,data1,data1,data2,data2,data1,data2,data2,data2,data2,data3,data3,data3,data3,data1,data2,data2,data3,data2,data2,data2,createdAt",limit:10,page:1},h.arrayaction=_.keyBy([{option:"CONTACT_MANAGER",value:"'contactManager'"},{option:"INTEGRATIONS",value:"'integration'"},{option:"MOTION_BAR",value:"'motionbar'"},{option:"JSCRIPTY",value:"'jscripty'"},{option:"URL_FORWARD",value:"'urlForward'"},{option:"BROWSER",value:"'browser'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.browserValues=_.keyBy([{option:"Web Popup",value:"'0'"},{option:"Web Tab",value:"'1'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.urlForwardValues=_.keyBy([{option:"GET",value:"'GET'"},{option:"POST",value:"'POST'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.integrationValues=_.keyBy([{option:"Zendesk",value:"'zendesk'"},{option:"Salesforce",value:"'salesforce'"},{option:"SugarCRM",value:"'sugarcrm'"},{option:"Freshdesk",value:"'freshdesk'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.motionbarValues=_.keyBy([{option:"Popup",value:"'0'"},{option:"URL",value:"'1'"},{option:"Windows App",value:"'2'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.init=l,h.deleteConfirm=d,h.success=c,h.getTriggerActions=m,h.createOrEditTriggerAction=u,h.deleteTriggerAction=p,h.deleteSelectedTriggerActions=g,r.cmList.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.lists=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intZendeskAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.zendeskAccounts=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETzendeskAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSalesforceAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.salesforceAccounts=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsalesforceAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSugarcrmAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.sugarcrmAccounts=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsugarcrmAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intFreshdeskAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.freshdeskAccounts=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfreshdeskAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intZendeskConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){h.zendeskConfigurations=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETzendeskConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSalesforceConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){h.salesforceConfigurations=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsalesforceConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSugarcrmConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){h.sugarcrmConfigurations=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsugarcrmConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intFreshdeskConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){h.freshdeskConfigurations=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfreshdeskConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.template.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){h.templates=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplates",msg:e.data?JSON.stringify(e.data):e.toString()})});var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getTriggerActions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.tools").controller("TriggerActionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trigger.addAction({id:t.params.id},p.action).$promise.then(function(e){p.actions.unshift(e),i.success({title:"Action properly created",msg:p.action.name?p.action.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.action.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.action.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.action.update({id:p.action.id},p.action).$promise.then(function(e){var t=_.find(p.actions,{id:e.id});t&&_.merge(t,e),i.success({title:"Action properly saved!",msg:p.action.name?p.action.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.action.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.action.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The action will be deleted.").ariaLabel("Delete Action").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.action.delete({id:p.action.id}).$promise.then(function(){_.remove(p.actions,{id:p.action.id}),i.success({title:"Action properly deleted!",msg:(p.action.name||"action")+" has been deleted!"}),u(p.action)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.action.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_ACTION",p.action=angular.copy(s),p.actions=o,p.newAction=!1,p.action||(p.action={},p.title="TOOLS.NEW_ACTION",p.newAction=!0),t.params.id&&(p.action.ActionId=t.params.id),p.addNewAction=l,p.saveAction=d,p.deleteAction=c,p.getDateFromString=m,p.closeDialog=u,r.cmList.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.lists=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETlists",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intZendeskAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.zendeskAccounts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETzendeskAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSalesforceAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.salesforceAccounts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsalesforceAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSugarcrmAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.sugarcrmAccounts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsugarcrmAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intFreshdeskAccount.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.freshdeskAccounts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfreshdeskAccounts",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intZendeskConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){p.zendeskConfigurations=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETzendeskConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSalesforceConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){p.salesforceConfigurations=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsalesforceConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intSugarcrmConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){p.sugarcrmConfigurations=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsugarcrmConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.intFreshdeskConfiguration.get({fields:"id,name,AccountId",sort:"id",nolimit:"true"}).$promise.then(function(e){p.freshdeskConfigurations=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETfreshdeskConfigurations",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.template.get({fields:"id,name",sort:"id",nolimit:"true"}).$promise.then(function(e){p.templates=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtemplates",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","actions","action","api"],angular.module("app.tools").controller("CreateOrEditActionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.trigger=e,h.query.id=h.trigger.id,h.query.TriggerAllId=h.trigger.id,h.getTriggerAllConditions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the allCondition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete allCondition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.triggerAllConditions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.trigger.getAllConditions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditAllConditionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/triggers/edit/allconditions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{allCondition:t,allconditions:h.triggerAllConditions.rows}})}function p(e){r.condition.delete({id:e.id}).$promise.then(function(){_.remove(h.triggerAllConditions.rows,{id:e.id}),h.triggerAllConditions.count-=1,h.triggerAllConditions.rows.length||h.getTriggerAllConditions(),s.success({title:"AllCondition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected allconditions?").htmlContent("<b>"+h.selectedTriggerAllConditions.length+" selected</b> will be deleted.").ariaLabel("delete allconditions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedTriggerAllConditions.forEach(function(e){p(e)}),h.selectedTriggerAllConditions=[]})}var h=this;h.trigger={},h.triggerAllConditions={count:0,rows:[]},h.selectedTriggerAllConditions=[],h.query={fields:"createdAt,updatedAt,id,field,operator,value,value,value,createdAt",limit:10,page:1},h.arrayfield=_.keyBy([{option:"Queue",value:"'queue'"},{option:"Call_Status",value:"'lastevent'"},{option:"OutboundRoute",value:"'routeId'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.arrayoperator=_.keyBy([{option:"Equals",value:"'equals'"},{option:"Not_Equals",value:"'not_equals'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.arrayvalue=_.keyBy([{option:"Abandoned",value:"'abandoned'"},{option:"Hangup",value:"'complete'"},{option:"Rejected",value:"'rejected'"},{option:"Ringing",value:"'called'"},{option:"Up",value:"'connect'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.init=l,h.deleteConfirm=d,h.success=c,h.getTriggerAllConditions=m,h.createOrEditTriggerAllCondition=u,h.deleteTriggerAllCondition=p,h.deleteSelectedTriggerAllConditions=g,r.voiceQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){h.queues=_.keyBy(e.rows||[],"name")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.voiceExtension.get({fields:"id,exten",type:"outbound",VoiceExtensionId:"null",nolimit:"true"}).$promise.then(function(e){h.outboundRoutes=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GEToutboundRoutes",msg:e.data?JSON.stringify(e.data):e.toString()})});var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getTriggerAllConditions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.tools").controller("TriggerAllConditionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trigger.addAllCondition({id:t.params.id},p.allCondition).$promise.then(function(e){p.allconditions.unshift(e),i.success({title:"AllCondition properly created",msg:p.allCondition.name?p.allCondition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.condition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.condition.update({id:p.allCondition.id},p.allCondition).$promise.then(function(e){var t=_.find(p.allconditions,{id:e.id});t&&_.merge(t,e),i.success({title:"AllCondition properly saved!",msg:p.allCondition.name?p.allCondition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.condition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The allCondition will be deleted.").ariaLabel("Delete AllCondition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.condition.delete({id:p.allCondition.id}).$promise.then(function(){_.remove(p.allconditions,{id:p.allCondition.id}),i.success({title:"AllCondition properly deleted!",msg:(p.allCondition.name||"allCondition")+" has been deleted!"}),u(p.allCondition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_ALLCONDITION",p.allCondition=angular.copy(s),p.allconditions=o,p.newAllCondition=!1,p.allCondition||(p.allCondition={field:"queue",operator:"equals",value:"equals"},p.title="TOOLS.NEW_ALLCONDITION",p.newAllCondition=!0),t.params.id&&(p.allCondition.TriggerAllId=t.params.id),p.addNewAllCondition=l,p.saveAllCondition=d,p.deleteAllCondition=c,p.getDateFromString=m,p.closeDialog=u,r.voiceQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){p.queues=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.voiceExtension.get({fields:"id,exten",type:"outbound",VoiceExtensionId:"null",nolimit:"true"}).$promise.then(function(e){p.outboundRoutes=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GEToutboundRoutes",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","allconditions","allCondition","api"],angular.module("app.tools").controller("CreateOrEditAllConditionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.trigger=e,h.query.id=h.trigger.id,h.query.TriggerAnyId=h.trigger.id,h.getTriggerAnyConditions()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the anyCondition?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete anyCondition").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.triggerAnyConditions=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.trigger.getAnyConditions(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditAnyConditionDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/triggers/edit/anyconditions/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{anyCondition:t,anyconditions:h.triggerAnyConditions.rows}})}function p(e){r.condition.delete({id:e.id}).$promise.then(function(){_.remove(h.triggerAnyConditions.rows,{id:e.id}),h.triggerAnyConditions.count-=1,h.triggerAnyConditions.rows.length||h.getTriggerAnyConditions(),s.success({title:"AnyCondition deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected anyconditions?").htmlContent("<b>"+h.selectedTriggerAnyConditions.length+" selected</b> will be deleted.").ariaLabel("delete anyconditions").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedTriggerAnyConditions.forEach(function(e){p(e)}),h.selectedTriggerAnyConditions=[]})}var h=this;h.trigger={},h.triggerAnyConditions={count:0,rows:[]},h.selectedTriggerAnyConditions=[],h.query={fields:"createdAt,updatedAt,id,field,operator,value,value,value,createdAt",limit:10,page:1},h.arrayfield=_.keyBy([{option:"Queue",value:"'queue'"},{option:"Call_Status",value:"'lastevent'"},{option:"OutboundRoute",value:"'routeId'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.arrayoperator=_.keyBy([{option:"Equals",value:"'equals'"},{option:"Not_Equals",value:"'not_equals'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.arrayvalue=_.keyBy([{option:"Abandoned",value:"'abandoned'"},{option:"Hangup",value:"'complete'"},{option:"Rejected",value:"'rejected'"},{option:"Ringing",value:"'called'"},{option:"Up",value:"'connect'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),h.init=l,h.deleteConfirm=d,h.success=c,h.getTriggerAnyConditions=m,h.createOrEditTriggerAnyCondition=u,h.deleteTriggerAnyCondition=p,h.deleteSelectedTriggerAnyConditions=g,r.voiceQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){h.queues=_.keyBy(e.rows||[],"name")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.voiceExtension.get({fields:"id,exten",type:"outbound",VoiceExtensionId:"null",nolimit:"true"}).$promise.then(function(e){h.outboundRoutes=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GEToutboundRoutes",msg:e.data?JSON.stringify(e.data):e.toString()})});var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getTriggerAnyConditions())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.tools").controller("TriggerAnyConditionsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trigger.addAnyCondition({id:t.params.id},p.anyCondition).$promise.then(function(e){p.anyconditions.unshift(e),i.success({title:"AnyCondition properly created",msg:p.anyCondition.name?p.anyCondition.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.condition.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.condition.update({id:p.anyCondition.id},p.anyCondition).$promise.then(function(e){var t=_.find(p.anyconditions,{id:e.id});t&&_.merge(t,e),i.success({title:"AnyCondition properly saved!",msg:p.anyCondition.name?p.anyCondition.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.condition.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The anyCondition will be deleted.").ariaLabel("Delete AnyCondition").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.condition.delete({id:p.anyCondition.id}).$promise.then(function(){_.remove(p.anyconditions,{id:p.anyCondition.id}),i.success({title:"AnyCondition properly deleted!",msg:(p.anyCondition.name||"anyCondition")+" has been deleted!"}),u(p.anyCondition)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.condition.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_ANYCONDITION",p.anyCondition=angular.copy(s),p.anyconditions=o,p.newAnyCondition=!1,p.anyCondition||(p.anyCondition={field:"queue",operator:"equals",value:"equals"},p.title="TOOLS.NEW_ANYCONDITION",p.newAnyCondition=!0),t.params.id&&(p.anyCondition.TriggerAnyId=t.params.id),p.addNewAnyCondition=l,p.saveAnyCondition=d,p.deleteAnyCondition=c,p.getDateFromString=m,p.closeDialog=u,r.voiceQueue.get({fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){p.queues=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})}),r.voiceExtension.get({fields:"id,exten",type:"outbound",VoiceExtensionId:"null",nolimit:"true"}).$promise.then(function(e){p.outboundRoutes=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GEToutboundRoutes",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","anyconditions","anyCondition","api"],angular.module("app.tools").controller("CreateOrEditAnyConditionDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.triggers")}function r(){i.trigger.update({id:l.trigger.id},l.trigger).$promise.then(function(){a.success({title:"Trigger updated!",msg:l.trigger.name?l.trigger.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.trigger=e.params.trigger||o||{},l.selectedTab=e.params.tab||0,l.gotoTriggers=s,l.saveTrigger=r}e.$inject=["$state","$mdDialog","$document","toasty","api","trigger"],angular.module("app.tools").controller("TriggerController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.triggers.edit",{id:e.id,trigger:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the trigger?").htmlContent("<b>"+(e.name||"trigger")+"</b> will be deleted.").ariaLabel("delete trigger").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.triggers=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.trigger.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTriggerDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/triggers/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{trigger:t,triggers:A.triggers.rows}})}function v(e){l.trigger.delete({id:e.id}).$promise.then(function(){_.remove(A.triggers.rows,{id:e.id}),A.triggers.count-=1,A.triggers.rows.length||A.getTriggers(),c.success({title:"Trigger deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrigger",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTriggers);return A.selectedTriggers=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected triggers?").htmlContent("<b>"+A.selectedTriggers.length+" selected</b> will be deleted.").ariaLabel("delete Triggers").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTriggers.forEach(function(e){v(e)}),A.selectedTriggers=[]})}function E(){A.selectedTriggers=[]}function y(){A.selectedTriggers=A.triggers.rows}var A=this;A.triggers=r||{count:0,rows:[]},A.table="triggers",A.listOrder="",A.listOrderAsc=null,A.selectedTriggers=[],A.query={fields:"createdAt,updatedAt,id,name,channel,status,description",sort:"-updatedAt",limit:10,page:1},A.arraychannel=_.keyBy([{option:"Voice",value:"'voice'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getTriggers=g,A.createOrEditTrigger=h,A.deleteTrigger=v,A.exportSelectedTriggers=b,A.deleteSelectedTriggers=f,A.deselectTriggers=E,A.selectAllTriggers=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTriggers())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","triggers","api","msUtils","toasty"],angular.module("app.tools").controller("TriggersController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.trunk.save(p.trunk).$promise.then(function(e){p.trunks.unshift(e),i.success({title:"Trunk properly created",msg:p.trunk.name?p.trunk.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.trunk.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.trunk.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.trunk.update({id:p.trunk.id},p.trunk).$promise.then(function(e){var t=_.find(p.trunks,{id:e.id});t&&_.merge(t,e),i.success({title:"Trunk properly saved!",msg:p.trunk.name?p.trunk.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.trunk.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.trunk.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The trunk will be deleted.").ariaLabel("Delete Trunk").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.trunk.delete({id:p.trunk.id}).$promise.then(function(){_.remove(p.trunks,{id:p.trunk.id}),i.success({title:"Trunk properly deleted!",msg:(p.trunk.name||"trunk")+" has been deleted!"}),u(p.trunk)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.trunk.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_TRUNK",p.trunk=angular.copy(s),p.trunks=o,p.newTrunk=!1,p.trunk||(p.trunk={type:"friend",dtmfmode:"rfc2833",qualify:"yes"},p.title="TOOLS.NEW_TRUNK",p.newTrunk=!0),p.addNewTrunk=l,p.saveTrunk=d,p.deleteTrunk=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","trunks","trunk","api"],angular.module("app.tools").controller("CreateOrEditTrunkDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.tools.trunks")}function r(){i.trunk.update({id:l.trunk.id},l.trunk).$promise.then(function(){a.success({title:"Trunk updated!",msg:l.trunk.name?l.trunk.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunk",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.trunk=e.params.trunk||o||{},l.selectedTab=e.params.tab||0,l.gotoTrunks=s,l.saveTrunk=r,i.voiceContext.get({fields:"id,name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","trunk"],angular.module("app.tools").controller("TrunkController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.tools.trunks.edit",{id:e.id,trunk:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the trunk?").htmlContent("<b>"+(e.name||"trunk")+"</b> will be deleted.").ariaLabel("delete trunk").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.trunks=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.trunk.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditTrunkDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/trunks/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{trunk:t,trunks:A.trunks.rows}})}function v(e){l.trunk.delete({id:e.id}).$promise.then(function(){_.remove(A.trunks.rows,{id:e.id}),A.trunks.count-=1,A.trunks.rows.length||A.getTrunks(),c.success({title:"Trunk deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunk",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedTrunks);return A.selectedTrunks=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected trunks?").htmlContent("<b>"+A.selectedTrunks.length+" selected</b> will be deleted.").ariaLabel("delete Trunks").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedTrunks.forEach(function(e){v(e)}),A.selectedTrunks=[]})}function E(){A.selectedTrunks=[]}function y(){A.selectedTrunks=A.trunks.rows}var A=this;A.trunks=r||{count:0,rows:[]},A.table="trunks",A.listOrder="",A.listOrderAsc=null,A.selectedTrunks=[],A.query={fields:"createdAt,updatedAt,id,name,active,host,secret,defaultuser,context,callerid,type,dtmfmode,nat,qualify,allow,insecure,call_limit,registry,description,directmedia,callcounter,fromdomain,fromuser,outboundproxy,usereqphone,trustrpid,sendrpid,encryption,port,transport,otherFields",sort:"-updatedAt",limit:10,page:1},A.arraytype=_.keyBy([{option:"Friend",value:"'friend'"},{option:"User",value:"'user'"},{option:"Peer",value:"'peer'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraydtmfmode=_.keyBy([{option:"rfc2833",value:"'rfc2833'"},{option:"info",value:"'info'"},{option:"shortinfo",value:"'shortinfo'"},{option:"inband",value:"'inband'"},{option:"auto",value:"'auto'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraynat=_.keyBy([{option:"force_rport",value:"'force_rport'"},{option:"comedia",value:"'comedia'"},{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"never",value:"'never'"},{option:"route",value:"'route'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayqualify=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'user'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayallow=_.keyBy([{option:"alaw",value:"'alaw'"},{option:"ulaw",value:"'ulaw'"},{option:"gsm",value:"'gsm'"},{option:"g723",value:"'g723'"},{option:"g726",value:"'g726'"},{option:"g722",value:"'g722'"},{option:"g729",value:"'g729'"},{option:"ilbc",value:"'ilbc'"},{option:"opus",value:"'opus'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayinsecure=_.keyBy([{option:"port",value:"'port'"},{option:"invite",value:"'invite'"},{option:"very",value:"'very'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraydirectmedia=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"},{option:"nonat",value:"'nonat'"},{option:"update",value:"'update'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraycallcounter=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayusereqphone=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytrustrpid=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraysendrpid=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayencryption=_.keyBy([{option:"yes",value:"'yes'"},{option:"no",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraytransport=_.keyBy([{option:"udp",value:"'udp'"},{option:"tcp",value:"'tcp'"},{option:"ws",value:"'ws'"},{option:"wss",value:"'wss'"},{option:"tls",value:"'tls'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getTrunks=g,A.createOrEditTrunk=h,A.deleteTrunk=v,A.exportSelectedTrunks=b,A.deleteSelectedTrunks=f,A.deselectTrunks=E,A.selectAllTrunks=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getTrunks())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","trunks","api","msUtils","toasty"],angular.module("app.tools").controller("TrunksController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.variable.save(p.variable).$promise.then(function(e){p.variables.unshift(e),i.success({title:"Variable properly created",msg:p.variable.name?p.variable.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.variable.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.variable.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.variable.update({id:p.variable.id},p.variable).$promise.then(function(e){var t=_.find(p.variables,{id:e.id});t&&_.merge(t,e),i.success({title:"Variable properly saved!",msg:p.variable.name?p.variable.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.variable.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.variable.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The variable will be deleted.").ariaLabel("Delete Variable").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.variable.delete({id:p.variable.id}).$promise.then(function(){_.remove(p.variables,{id:p.variable.id}),i.success({title:"Variable properly deleted!",msg:(p.variable.name||"variable")+" has been deleted!"}),u(p.variable)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.variable.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="TOOLS.EDIT_VARIABLE",p.variable=angular.copy(s),p.variables=o,p.newVariable=!1,p.variable||(p.variable={},p.title="TOOLS.NEW_VARIABLE",p.newVariable=!0),p.addNewVariable=l,p.saveVariable=d,p.deleteVariable=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","variables","variable","api"],angular.module("app.tools").controller("CreateOrEditVariableDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditVariableDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/variables/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{variable:e,variables:A.variables.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the variable?").htmlContent("<b>"+(e.name||"variable")+"</b> will be deleted.").ariaLabel("delete variable").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.variables=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.variable.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditVariableDialogController",controllerAs:"vm",templateUrl:"app/main/apps/tools/views/variables/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{variable:t,variables:A.variables.rows}})}function v(e){l.variable.delete({id:e.id}).$promise.then(function(){_.remove(A.variables.rows,{id:e.id}),A.variables.count-=1,A.variables.rows.length||A.getVariables(),c.success({title:"Variable deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvariable",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedVariables);return A.selectedVariables=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected variables?").htmlContent("<b>"+A.selectedVariables.length+" selected</b> will be deleted.").ariaLabel("delete Variables").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedVariables.forEach(function(e){v(e)}),A.selectedVariables=[]})}function E(){A.selectedVariables=[]}function y(){A.selectedVariables=A.variables.rows}var A=this;A.variables=r||{count:0,rows:[]},A.table="variables",A.listOrder="",A.listOrderAsc=null,A.selectedVariables=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getVariables=g,A.createOrEditVariable=h,A.deleteVariable=v,A.exportSelectedVariables=b,A.deleteSelectedVariables=f,A.deselectVariables=E,A.selectAllVariables=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getVariables())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","variables","api","msUtils","toasty"],angular.module("app.tools").controller("VariablesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.chanSpies.edit",{id:e.id,chanSpy:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the chanSpy?").htmlContent("<b>"+(e.name||"chanSpy")+"</b> will be deleted.").ariaLabel("delete chanSpy").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.chanSpies=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceChanSpy.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditchanSpyDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/chanSpies/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{chanSpy:t,chanSpies:A.chanSpies.rows}})}function v(e){l.voiceChanSpy.delete({id:e.id}).$promise.then(function(){_.remove(A.chanSpies.rows,{id:e.id}),A.chanSpies.count-=1,A.chanSpies.rows.length||A.getChanSpies(),c.success({title:"chanSpy deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceChanSpy",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedChanSpies);return A.selectedChanSpies=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected chanSpies?").htmlContent("<b>"+A.selectedChanSpies.length+" selected</b> will be deleted.").ariaLabel("delete chanSpys").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedChanSpies.forEach(function(e){v(e)}),A.selectedChanSpies=[]})}function E(){A.selectedChanSpies=[]}function y(){A.selectedChanSpies=A.chanSpies.rows}var A=this;A.chanSpies=r||{count:0,rows:[]},A.table="chanSpies",A.listOrder="",A.listOrderAsc=null,A.selectedChanSpies=[],A.query={fields:"createdAt,updatedAt,id,name,prefix,options,auth,password,record,recordingFormat,description",sort:"-updatedAt",limit:10,page:1},A.arrayoptions=_.keyBy([{option:"b: Only spy on channels involved in a bridged call.",value:"'b'"},{option:"B: Instead of whispering on a single channel barge in on both channels involved in the call.",value:"'B'"},{option:"E: Exit when the spied-on channel hangs up.",value:"'E'"},{option:"o: Only listen to audio coming from this channel.",value:"'o'"},{option:"q: Don't play a beep when beginning to spy on a channel, or speak the selected channel name.",value:"'q'"},{option:"s: Skip the playback of the channel type (i.e. SIP, IAX, etc) when speaking the selected channel name.",value:"'s'"},{option:"S: Stop when no more channels are left to spy on.",value:"'S'"},{option:"w: Enable whisper mode, so the spying channel can talk to the spied-on channel.",value:"'w'"},{option:"W: Enable private whisper mode, so the spying channel can talk to the spied-on channel but cannot listen to that channel.",value:"'W'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayrecordingFormat=_.keyBy([{option:"wav",value:"'wav'"},{option:"gsm",value:"'gsm'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getChanSpies=g,A.createOrEditchanSpy=h,A.deletechanSpy=v,A.exportSelectedChanSpies=b,A.deleteSelectedChanSpies=f,A.deselectChanSpies=E,A.selectAllChanSpies=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getChanSpies())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","chanSpies","api","msUtils","toasty"],angular.module("app.voice").controller("ChanSpiesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceChanSpy.save(p.chanSpy).$promise.then(function(e){p.chanSpies.unshift(e),i.success({title:"chanSpy properly created",msg:p.chanSpy.name?p.chanSpy.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceChanSpy.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceChanSpy.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceChanSpy.update({id:p.chanSpy.id},p.chanSpy).$promise.then(function(e){var t=_.find(p.chanSpies,{id:e.id});t&&_.merge(t,e),i.success({title:"chanSpy properly saved!",msg:p.chanSpy.name?p.chanSpy.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceChanSpy.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceChanSpy.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The chanSpy will be deleted.").ariaLabel("Delete chanSpy").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceChanSpy.delete({id:p.chanSpy.id}).$promise.then(function(){_.remove(p.chanSpies,{id:p.chanSpy.id}),i.success({title:"chanSpy properly deleted!",msg:(p.chanSpy.name||"chanSpy")+" has been deleted!"}),u(p.chanSpy)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceChanSpy.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_CHANSPY",p.chanSpy=angular.copy(s),p.chanSpies=o,p.newchanSpy=!1,p.chanSpy||(p.chanSpy={},p.title="VOICE.NEW_CHANSPY",p.newchanSpy=!0),p.addNewchanSpy=l,p.savechanSpy=d,p.deletechanSpy=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","chanSpies","chanSpy","api"],angular.module("app.voice").controller("CreateOrEditchanSpyDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.chanSpies")}function r(){i.voiceChanSpy.update({id:l.chanSpy.id},l.chanSpy).$promise.then(function(){a.success({title:"chanSpy updated!",msg:l.chanSpy.name?l.chanSpy.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceChanSpy",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.chanSpy=e.params.chanSpy||o||{},l.selectedTab=e.params.tab||0,l.gotoChanSpies=s,l.savechanSpy=r}e.$inject=["$state","$mdDialog","$document","toasty","api","chanSpy"],angular.module("app.voice").controller("ChanSpyController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){i.show({controller:"CreateOrEditContextDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/contexts/create/dialog.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{context:e,contexts:A.contexts.rows}})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the context?").htmlContent("<b>"+(e.name||"context")+"</b> will be deleted.").ariaLabel("delete context").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.contexts=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceContext.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditContextDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/contexts/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{context:t,contexts:A.contexts.rows}})}function v(e){l.voiceContext.delete({id:e.id}).$promise.then(function(){_.remove(A.contexts.rows,{id:e.id}),A.contexts.count-=1,A.contexts.rows.length||A.getContexts(),c.success({title:"Context deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceContext",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedContexts);return A.selectedContexts=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected contexts?").htmlContent("<b>"+A.selectedContexts.length+" selected</b> will be deleted.").ariaLabel("delete Contexts").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedContexts.forEach(function(e){v(e)}),A.selectedContexts=[]})}function E(){A.selectedContexts=[]}function y(){A.selectedContexts=A.contexts.rows}var A=this;A.contexts=r||{count:0,rows:[]},A.table="contexts",A.listOrder="",A.listOrderAsc=null,A.selectedContexts=[],A.query={fields:"createdAt,updatedAt,id,name,description",sort:"-updatedAt",defaultEntry:"false",limit:10,page:1},A.editdialog=m,A.deleteconfirm=u,A.success=p,A.getContexts=g,A.createOrEditContext=h,A.deleteContext=v,A.exportSelectedContexts=b,A.deleteSelectedContexts=f,A.deselectContexts=E,A.selectAllContexts=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getContexts())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","contexts","api","msUtils","toasty"],angular.module("app.voice").controller("ContextsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceContext.save(p.context).$promise.then(function(e){p.contexts.unshift(e),i.success({title:"Context properly created",msg:p.context.name?p.context.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceContext.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceContext.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceContext.update({id:p.context.id},p.context).$promise.then(function(e){var t=_.find(p.contexts,{id:e.id});t&&_.merge(t,e),i.success({title:"Context properly saved!",msg:p.context.name?p.context.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceContext.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceContext.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The context will be deleted.").ariaLabel("Delete Context").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceContext.delete({id:p.context.id}).$promise.then(function(){_.remove(p.contexts,{id:p.context.id}),i.success({title:"Context properly deleted!",msg:(p.context.name||"context")+" has been deleted!"}),u(p.context)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceContext.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_CONTEXT",p.context=angular.copy(s),p.contexts=o,p.newContext=!1,p.context||(p.context={},p.title="VOICE.NEW_CONTEXT",p.newContext=!0),p.addNewContext=l,p.saveContext=d,p.deleteContext=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","contexts","context","api"],angular.module("app.voice").controller("CreateOrEditContextDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceExtension.save(p.inboundroute).$promise.then(function(e){p.inboundroutes.unshift(e),i.success({title:"InboundRoute properly created",msg:p.inboundroute.name?p.inboundroute.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceExtension.update({id:p.inboundroute.id},p.inboundroute).$promise.then(function(e){var t=_.find(p.inboundroutes,{id:e.id});t&&_.merge(t,e),i.success({title:"InboundRoute properly saved!",msg:p.inboundroute.name?p.inboundroute.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The inboundroute will be deleted.").ariaLabel("Delete InboundRoute").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceExtension.delete({id:p.inboundroute.id}).$promise.then(function(){_.remove(p.inboundroutes,{id:p.inboundroute.id}),i.success({title:"InboundRoute properly deleted!",msg:(p.inboundroute.name||"inboundroute")+" has been deleted!"}),u(p.inboundroute)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_INBOUNDROUTE",p.inboundroute=angular.copy(s),p.inboundroutes=o,p.newInboundRoute=!1,p.inboundroute||(p.inboundroute={appdata:"Inbound Call",type:"inbound",context:"from-voip-provider"},p.title="VOICE.NEW_INBOUNDROUTE",p.newInboundRoute=!0),p.addNewInboundRoute=l,p.saveInboundRoute=d,p.deleteInboundRoute=c,p.getDateFromString=m,p.closeDialog=u,r.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){p.contexts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","inboundroutes","inboundroute","api"],angular.module("app.voice").controller("CreateOrEditInboundRouteDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){g.inboundroute=e,g.query.VoiceExtensionId=e.id,g.query.isApp=!0,g.query.nolimit=!0,g.getInboundRouteApps(),g.getIntervals()}function o(e,n,a){var i=t.confirm().title("Are you sure want to delete the application?").htmlContent("<b>"+e.app+"</b> will be deleted.").ariaLabel("delete application").targetEvent(a).ok("OK").cancel("CANCEL");t.show(i).then(function(){g.inboundrouteApps.rows.splice(n,1),l()},function(){console.log("CANCEL")})}function s(e,i){if(g.inboundrouteApps.rows.length){var o=g.inboundrouteApps.rows[i]?g.inboundrouteApps.rows[i]:g.inboundrouteApps.rows[0];t.show({controller:"EditInboundRouteApp"+(o.appType||o.app).toLowerCase()+"DialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/inboundroutes/edit/apps/"+(o.appType||o.app).toLowerCase()+"/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{inboundrouteApp:o}}).then(function(e){e&&(e.id?g.inboundrouteApps.rows[i]=e:g.inboundrouteApps.rows.splice(i,0,e),l())}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:EDITMODALSHOW",msg:e.data?JSON.stringify(e.data):e.toString()})})}}function r(e,a){if(g.inboundrouteApps.rows.length){var i=g.inboundrouteApps.rows[a]?g.inboundrouteApps.rows[a]:g.inboundrouteApps.rows[0];t.show({controller:"EditInboundRouteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/inboundroutes/edit/apps/interval/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:i.interval,IntervalId:i.IntervalId,application:!0},intervals:[]}}).then(function(e){e&&(i.interval=e.interval||"*,*,*,*",i.IntervalId=e.IntervalId||null,l())})}}function l(){var t=["queue","playback"],n=!1,a=!1,i=2,o=[];o.push({type:"inbound",app:"Set",appdata:"CDR(type)=inbound",context:g.inboundroute.context,exten:g.inboundroute.exten,priority:i++,VoiceExtensionId:g.inboundroute.id});for(var s=0,r=0;s<g.inboundrouteApps.rows.length;s++,r=0){var l=g.inboundrouteApps.rows[s],d=[],c=[];l.intervals="*,*,*,*"!==l.interval?[l.interval]:l.IntervalId?_.map(_.filter(g.intervals.rows,{IntervalId:l.IntervalId}),"interval"):[],l.context=g.inboundroute.context,l.exten=g.inboundroute.exten,l.hasOwnProperty("answer")&&t.includes(l.app.toLowerCase())&&"custom"!==l.appType&&(!n&&l.answer&&(n=!0,d.push({type:l.type,app:"Answer",context:g.inboundroute.context,exten:g.inboundroute.exten,priority:l.intervals.length+i+r++,VoiceExtensionId:g.inboundroute.id})),n||a||l.answer||(a=!0,d.push({type:l.type,app:"Progress",context:g.inboundroute.context,exten:g.inboundroute.exten,priority:l.intervals.length+i+r++,VoiceExtensionId:g.inboundroute.id})));for(var m=0;m<l.intervals.length;m++){var u=i+l.intervals.length,p=m===l.intervals.length-1?i+d.length+c.length+2:i+m+1;d.splice(m,0,{type:"inbound",app:"GotoIfTime",appdata:l.intervals[m]+"?"+g.inboundroute.context+",${EXTEN},"+u+":"+g.inboundroute.context+",${EXTEN},"+p,exten:g.inboundroute.exten,context:g.inboundroute.context,priority:i+m,VoiceExtensionId:g.inboundroute.id})}l.priority=d.length?_.last(d).priority+1:i,i=(c.length?_.last(c).priority:l.priority)+1,o=_.concat(o,d,[l],c)}o.push({type:"inbound",app:"Hangup",exten:g.inboundroute.exten,context:g.inboundroute.context,priority:i,VoiceExtensionId:g.inboundroute.id}),e.voiceExtension.addApplications({id:g.inboundroute.id},_.sortBy(o,"priority")).$promise.then(function(e){g.inboundrouteApps.rows=e.rows}).catch(function(e){console.error(e)})}function d(e){g.inboundrouteApps=e||{count:0,rows:[]}}function c(){return e.interval.get({fields:"id,interval,IntervalId"}).$promise.then(function(e){g.intervals=e}).catch(function(e){console.error(e)})}function m(){g.promise=e.voiceExtension.get(g.query,d).$promise}function u(e){_.remove(g.inboundrouteApps.rows,{id:e.id}),l(),a.success({title:"App deleted!",msg:e.app?e.app+" has been deleted!":""})}function p(e){var n=t.confirm().title("Are you sure want to delete the selected applications?").htmlContent("<b>"+g.selectedInboundRouteApps.length+" selected</b> will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");t.show(n).then(function(){g.selectedInboundRouteApps.forEach(function(e){_.remove(g.inboundrouteApps.rows,{id:e.id})}),g.selectedInboundRouteApps=[],l()})}var g=this;g.inboundroute={},g.inboundrouteApps={count:0,rows:[]},g.selectedInboundRouteApps=[],g.query={sort:"priority"},g.apps=_.reject(_.sortBy([{app:"Interval",appType:"interval",types:["always","custom","list"],fields:[],isApp:!1},{app:"Queue",appType:"queue",context:"from-voip-provider",type:"Inbound",appdata:",xX,,,300,,,,,",icon:"icon-apps",options:"xX",interval:"*,*,*,*",answer:!0,isApp:!0,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}},{name:"queues",route:"voiceQueue",filters:{type:"inbound",fields:"id,name,type",sort:"name",nolimit:!0}}],fields:[{title:"Queue",name:"queue",type:"apiselect",values:"queues",value:"queue.name",option:"queue.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Url",name:"URL",type:"text",param:2},{title:"Announce_Overrides",name:"sound",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}'",option:"sound.name",defaultValues:[{value:"''",option:"None"}],param:3},{title:"Timeout",name:"timeout",type:"number",min:0,param:4},{title:"Agi",name:"agi",type:"text",param:5},{title:"Macro",name:"macro",type:"text",param:6},{title:"GoSub",name:"gosub",type:"text",param:7},{title:"Rule",name:"rule",type:"text",param:8},{title:"Position",name:"position",type:"number",min:0,param:9},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Playback",appType:"playback",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",answer:!0,isApp:!0,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}}],fields:[{title:"Audio_Files",name:"appdata",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}'",option:"appdata.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Dial",appType:"dial",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,fields:[{title:"Technology/Resource",name:"tech",type:"text",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"internalDial",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"user",type:"apiselect",values:"users",value:"'SIP/{{user.name}}'",option:"user.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"externalDial",context:"from-voip-provider",type:"inbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"trunks",route:"trunk",filters:{fields:"name",sort:"name"}}],fields:[{title:"Trunk",name:"trunk",type:"apiselect",values:"trunks",value:"trunk.name",option:"trunk.name",required:!0,param:0},{title:"Phone",name:"phone",required:!0,type:"text"},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"ringGroup",context:"from-voip-provider",type:"inbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"multipleUsers",type:"apiselect",multiple:!0,values:"users",value:"'SIP/{{multipleUsers.name}}'",option:"multipleUsers.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"AGI",appType:"agi",context:"from-voip-provider",type:"inbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"projects",route:"squareProject",filters:{fields:"name",sort:"name"}}],fields:[{title:"Project",name:"project",type:"apiselect",values:"projects",value:"'agi://127.0.0.1/square,{{project.name}}'",option:"project.name",required:!0,param:0}]},{app:"goto",appType:"goTo",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"contexts",route:"voiceContext",filters:{fields:"name",sort:"name"}}],fields:[{title:"Context",name:"context",type:"apiselect",values:"contexts",value:"context.name",option:"context.name",required:!0,param:0},{title:"Extension",name:"extension",type:"text",required:!0,param:1},{title:"Priority",name:"priority",type:"text",required:!0,param:2}]},{app:"hangup",appType:"hangup",context:"from-voip-provider",type:"Inbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Hangup_Cause",name:"appdata",type:"select",param:0,values:[{option:"HANGUPCAUSE_1",value:"'1'"},{option:"HANGUPCAUSE_16",value:"'16'"},{option:"HANGUPCAUSE_17",value:"'17'"},{option:"HANGUPCAUSE_18",value:"'18'"},{option:"HANGUPCAUSE_21",value:"'21'"},{option:"HANGUPCAUSE_22",value:"'22'"},{option:"HANGUPCAUSE_27",value:"'27'"},{option:"HANGUPCAUSE_38",value:"'38'"},{option:"HANGUPCAUSE_41",value:"'41'"}],translate:!0,required:!0,general:!0}]},{app:"Set",appType:"set",context:"from-voip-provider",type:"Inbound",separator:"=",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Variable",name:"name",type:"text",required:!0,param:0},{title:"Value",name:"value",type:"text",required:!0,param:1}]},{app:null,appType:"custom",icon:"icon-apps",type:"Inbound",interval:"*,*,*,*",isApp:!0,fields:[{title:"Application_Name",name:"app",type:"text",required:!0,param:0},{title:"Arguments",name:"appdata",type:"text",param:1}]},{app:"Voicemail",appType:"voicemail",context:"from-voip-provider",icon:"icon-apps",type:"Inbound",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"voiceMails",route:"voiceMail",filters:{fields:"mailbox",sort:"mailbox"}}],fields:[{title:"Mailbox@Context",name:"voiceMail",type:"apiselect",values:"voiceMails",value:"'{{voiceMail.mailbox}}@from-voicemail'",option:"voiceMail.mailbox",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1}]}],["app"]),{isApp:!1}),g.list={group:{name:"opt1",pull:"clone"},animation:100,sort:!1},g.applications={group:{name:"opt2",put:"opt1"},animation:100,onAdd:function(e){s(e,e.newIndex)},onSort:function(e){l()}},g.init=i,g.deleteConfirm=o,g.getInboundRouteApps=m,g.editInboundRouteApp=s,g.editInterval=r,g.deleteInboundRouteApp=u,g.deleteSelectedInboundRouteApps=p,g.rewriteRouting=l,g.getIntervals=c}e.$inject=["api","$mdDialog","$document","toasty"],angular.module("app.voice").controller("InboundRouteActionsController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.agi.type.toLowerCase()&&"outboundDial"===s.agi.appType&&(s.agi.phone=s.agi.cutdigits?(s.agi.prefix||"")+"${EXTEN:"+s.agi.cutdigits+"}":(s.agi.prefix||"")+"${EXTEN}",s.agi.record="none"!==s.agi.recordingFormat,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:null),s.agi.appType.toLowerCase()){case"set":s.agi.appdata=s.agi.name+"="+s.agi.value;break;case"custom":break;default:e[0]=s.agi.project,s.agi.appdata=e.join(",")}o(s.agi)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.agi=angular.copy(n),s.agi.appdata)switch(s.agi.appType?s.agi.appType.toLowerCase():s.agi.app.toLowerCase()){case"custom":break;case"set":s.agi.name=s.agi.appdata.split("=")[0],s.agi.value=s.agi.appdata.split("=")[1];break;case"agi":s.agi.project=s.agi.appdata;break;default:var r=s.agi.appdata.split(",");s.agi.project=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.agi.type.toLowerCase()&&"outbounddial"===s.agi.appType.toLowerCase()&&(s.agi.prefix=s.agi.phone?s.agi.phone.split("$")[0]:void 0,s.agi.callerId=s.agi.callerID?"CALLERID(all)="+s.agi.callerID:void 0,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.squareProject.get({fields:"name",sort:"name"}).$promise.then(function(e){s.projects=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppagiDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.custom.type.toLowerCase()&&"outboundDial"===s.custom.appType&&(s.custom.phone=s.custom.cutdigits?(s.custom.prefix||"")+"${EXTEN:"+s.custom.cutdigits+"}":(s.custom.prefix||"")+"${EXTEN}",s.custom.record="none"!==s.custom.recordingFormat,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:null),s.custom.appType.toLowerCase()){case"set":s.custom.appdata=s.custom.name+"="+s.custom.value;break;case"custom":break;default:e[0]=s.custom.app,e[1]=s.custom.appdata,s.custom.appdata=e.join(",")}o(s.custom)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.custom=angular.copy(n),s.custom.appdata)switch(s.custom.appType?s.custom.appType.toLowerCase():s.custom.app.toLowerCase()){case"custom":break;case"set":s.custom.name=s.custom.appdata.split("=")[0],s.custom.value=s.custom.appdata.split("=")[1];break;case"agi":s.custom.project=s.custom.appdata;break;default:var r=s.custom.appdata.split(",");s.custom.app=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.custom.appdata=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.custom.type.toLowerCase()&&"outbounddial"===s.custom.appType.toLowerCase()&&(s.custom.prefix=s.custom.phone?s.custom.phone.split("$")[0]:void 0,s.custom.callerId=s.custom.callerID?"CALLERID(all)="+s.custom.callerID:void 0,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppcustomDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.dial.type.toLowerCase()&&"outboundDial"===s.dial.appType&&(s.dial.phone=s.dial.cutdigits?(s.dial.prefix||"")+"${EXTEN:"+s.dial.cutdigits+"}":(s.dial.prefix||"")+"${EXTEN}",s.dial.record="none"!==s.dial.recordingFormat,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:null),s.dial.appType.toLowerCase()){case"set":s.dial.appdata=s.dial.name+"="+s.dial.value;break;case"custom":break;default:e[0]=s.dial.tech,e[1]=s.dial.timeout,e[2]=s.dial.options,e[3]=s.dial.url,s.dial.appdata=e.join(",")}o(s.dial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.dial=angular.copy(n),s.dial.appdata)switch(s.dial.appType?s.dial.appType.toLowerCase():s.dial.app.toLowerCase()){case"custom":break;case"set":s.dial.name=s.dial.appdata.split("=")[0],s.dial.value=s.dial.appdata.split("=")[1];break;case"agi":s.dial.project=s.dial.appdata;break;default:var r=s.dial.appdata.split(",");s.dial.tech=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.dial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.dial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.dial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.dial.type.toLowerCase()&&"outbounddial"===s.dial.appType.toLowerCase()&&(s.dial.prefix=s.dial.phone?s.dial.phone.split("$")[0]:void 0,s.dial.callerId=s.dial.callerID?"CALLERID(all)="+s.dial.callerID:void 0,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppdialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.externaldial.type.toLowerCase()&&"outboundDial"===s.externaldial.appType&&(s.externaldial.phone=s.externaldial.cutdigits?(s.externaldial.prefix||"")+"${EXTEN:"+s.externaldial.cutdigits+"}":(s.externaldial.prefix||"")+"${EXTEN}",s.externaldial.record="none"!==s.externaldial.recordingFormat,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:null),s.externaldial.appType.toLowerCase()){case"set":s.externaldial.appdata=s.externaldial.name+"="+s.externaldial.value;break;case"custom":break;default:e[0]=["SIP",s.externaldial.trunk,s.externaldial.phone].join("/"),e[1]=s.externaldial.timeout,e[2]=s.externaldial.options,e[3]=s.externaldial.url,s.externaldial.appdata=e.join(",")}o(s.externaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.externaldial=angular.copy(n),s.externaldial.appdata)switch(s.externaldial.appType?s.externaldial.appType.toLowerCase():s.externaldial.app.toLowerCase()){case"custom":break;case"set":s.externaldial.name=s.externaldial.appdata.split("=")[0],s.externaldial.value=s.externaldial.appdata.split("=")[1];break;case"agi":s.externaldial.project=s.externaldial.appdata;break;default:var r=s.externaldial.appdata.split(",");s.externaldial.trunk=r[0].split("/")[1],s.externaldial.phone=r[0].split("/")[2],s.externaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.externaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.externaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.externaldial.type.toLowerCase()&&"outbounddial"===s.externaldial.appType.toLowerCase()&&(s.externaldial.prefix=s.externaldial.phone?s.externaldial.phone.split("$")[0]:void 0,s.externaldial.callerId=s.externaldial.callerID?"CALLERID(all)="+s.externaldial.callerID:void 0,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.trunk.get({fields:"name",sort:"name"}).$promise.then(function(e){s.trunks=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppexternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.goto.type.toLowerCase()&&"outboundDial"===s.goto.appType&&(s.goto.phone=s.goto.cutdigits?(s.goto.prefix||"")+"${EXTEN:"+s.goto.cutdigits+"}":(s.goto.prefix||"")+"${EXTEN}",s.goto.record="none"!==s.goto.recordingFormat,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:null),s.goto.appType.toLowerCase()){case"set":s.goto.appdata=s.goto.name+"="+s.goto.value;break;case"custom":break;default:e[0]=s.goto.context,e[1]=s.goto.extension,e[2]=s.goto.priority,s.goto.appdata=e.join(",")}o(s.goto)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.goto=angular.copy(n),s.goto.appdata)switch(s.goto.appType?s.goto.appType.toLowerCase():s.goto.app.toLowerCase()){case"custom":break;case"set":s.goto.name=s.goto.appdata.split("=")[0],s.goto.value=s.goto.appdata.split("=")[1];break;case"agi":s.goto.project=s.goto.appdata;break;default:var r=s.goto.appdata.split(",");s.goto.context=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.goto.extension=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.goto.priority=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10)}"outbound"===s.goto.type.toLowerCase()&&"outbounddial"===s.goto.appType.toLowerCase()&&(s.goto.prefix=s.goto.phone?s.goto.phone.split("$")[0]:void 0,s.goto.callerId=s.goto.callerID?"CALLERID(all)="+s.goto.callerID:void 0,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){s.contexts=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppgotoDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.hangup.type.toLowerCase()&&"outboundDial"===s.hangup.appType&&(s.hangup.phone=s.hangup.cutdigits?(s.hangup.prefix||"")+"${EXTEN:"+s.hangup.cutdigits+"}":(s.hangup.prefix||"")+"${EXTEN}",s.hangup.record="none"!==s.hangup.recordingFormat,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:null),s.hangup.appType.toLowerCase()){case"set":s.hangup.appdata=s.hangup.name+"="+s.hangup.value;break;case"custom":break;default:e[0]=s.hangup.appdata,s.hangup.appdata=e.join(",")}o(s.hangup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.hangup=angular.copy(n),s.hangup.appdata)switch(s.hangup.appType?s.hangup.appType.toLowerCase():s.hangup.app.toLowerCase()){case"custom":break;case"set":s.hangup.name=s.hangup.appdata.split("=")[0],s.hangup.value=s.hangup.appdata.split("=")[1];break;case"agi":s.hangup.project=s.hangup.appdata;break;default:var r=s.hangup.appdata.split(",");s.hangup.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.hangup.type.toLowerCase()&&"outbounddial"===s.hangup.appType.toLowerCase()&&(s.hangup.prefix=s.hangup.phone?s.hangup.phone.split("$")[0]:void 0,s.hangup.callerId=s.hangup.callerID?"CALLERID(all)="+s.hangup.callerID:void 0,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteApphangupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.internaldial.type.toLowerCase()&&"outboundDial"===s.internaldial.appType&&(s.internaldial.phone=s.internaldial.cutdigits?(s.internaldial.prefix||"")+"${EXTEN:"+s.internaldial.cutdigits+"}":(s.internaldial.prefix||"")+"${EXTEN}",s.internaldial.record="none"!==s.internaldial.recordingFormat,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:null),s.internaldial.appType.toLowerCase()){case"set":s.internaldial.appdata=s.internaldial.name+"="+s.internaldial.value;break;case"custom":break;default:e[0]=s.internaldial.user,e[1]=s.internaldial.timeout,e[2]=s.internaldial.options,e[3]=s.internaldial.url,s.internaldial.appdata=e.join(",")}o(s.internaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.internaldial=angular.copy(n),s.internaldial.appdata)switch(s.internaldial.appType?s.internaldial.appType.toLowerCase():s.internaldial.app.toLowerCase()){case"custom":break;case"set":s.internaldial.name=s.internaldial.appdata.split("=")[0],s.internaldial.value=s.internaldial.appdata.split("=")[1];break;case"agi":s.internaldial.project=s.internaldial.appdata;break;default:var r=s.internaldial.appdata.split(",");s.internaldial.user=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.internaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.internaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.internaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.internaldial.type.toLowerCase()&&"outbounddial"===s.internaldial.appType.toLowerCase()&&(s.internaldial.prefix=s.internaldial.phone?s.internaldial.phone.split("$")[0]:void 0,s.internaldial.callerId=s.internaldial.callerID?"CALLERID(all)="+s.internaldial.callerID:void 0,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppinternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom&&u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push("*"),u.monthDayFrom&&u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push("*"),u.monthFrom&&u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(i),u.intervals=o,u.newInterval=!1,u.types=["always","custom","list"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],h=p[1],v=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],y=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(y.split(":")[0])),f.setMinutes(Number(y.split(":")[1])),u.timeRangeTo=f}"*"!==h&&(u.dayOfWeekFrom=h.split("-")[0],u.dayOfWeekTo=h.split("-")[1]),"*"!==v&&(u.monthDayFrom=v.split("-")[0],u.monthDayTo=v.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditInboundRouteAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.playback.type.toLowerCase()&&"outboundDial"===s.playback.appType&&(s.playback.phone=s.playback.cutdigits?(s.playback.prefix||"")+"${EXTEN:"+s.playback.cutdigits+"}":(s.playback.prefix||"")+"${EXTEN}",s.playback.record="none"!==s.playback.recordingFormat,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:null),s.playback.appType.toLowerCase()){case"set":s.playback.appdata=s.playback.name+"="+s.playback.value;break;case"custom":break;default:e[0]=s.playback.appdata,e[1]=s.playback.options,s.playback.appdata=e.join(",")}o(s.playback)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.playback=angular.copy(n),s.playback.appdata)switch(s.playback.appType?s.playback.appType.toLowerCase():s.playback.app.toLowerCase()){case"custom":break;case"set":s.playback.name=s.playback.appdata.split("=")[0],s.playback.value=s.playback.appdata.split("=")[1];break;case"agi":s.playback.project=s.playback.appdata;break;default:var r=s.playback.appdata.split(",");s.playback.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.playback.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.playback.type.toLowerCase()&&"outbounddial"===s.playback.appType.toLowerCase()&&(s.playback.prefix=s.playback.phone?s.playback.phone.split("$")[0]:void 0,s.playback.callerId=s.playback.callerID?"CALLERID(all)="+s.playback.callerID:void 0,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppplaybackDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.queue.type.toLowerCase()&&"outboundDial"===s.queue.appType&&(s.queue.phone=s.queue.cutdigits?(s.queue.prefix||"")+"${EXTEN:"+s.queue.cutdigits+"}":(s.queue.prefix||"")+"${EXTEN}",s.queue.record="none"!==s.queue.recordingFormat,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:null),s.queue.appType.toLowerCase()){case"set":s.queue.appdata=s.queue.name+"="+s.queue.value;break;case"custom":break;default:e[0]=s.queue.queue,e[1]=s.queue.options,e[2]=s.queue.URL,e[3]=s.queue.sound,e[4]=s.queue.timeout,e[5]=s.queue.agi,e[6]=s.queue.macro,e[7]=s.queue.gosub,e[8]=s.queue.rule,e[9]=s.queue.position,s.queue.appdata=e.join(",")}o(s.queue)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.queue=angular.copy(n),s.queue.appdata)switch(s.queue.appType?s.queue.appType.toLowerCase():s.queue.app.toLowerCase()){case"custom":break;case"set":s.queue.name=s.queue.appdata.split("=")[0],s.queue.value=s.queue.appdata.split("=")[1];break;case"agi":s.queue.project=s.queue.appdata;break;default:var r=s.queue.appdata.split(",");s.queue.queue=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.queue.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.queue.URL=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.queue.sound=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10),s.queue.timeout=_.isEmpty(r[4])?r[4]:isNaN(r[4])?r[4]:parseInt(r[4],10),s.queue.agi=_.isEmpty(r[5])?r[5]:isNaN(r[5])?r[5]:parseInt(r[5],10),s.queue.macro=_.isEmpty(r[6])?r[6]:isNaN(r[6])?r[6]:parseInt(r[6],10),s.queue.gosub=_.isEmpty(r[7])?r[7]:isNaN(r[7])?r[7]:parseInt(r[7],10),s.queue.rule=_.isEmpty(r[8])?r[8]:isNaN(r[8])?r[8]:parseInt(r[8],10),s.queue.position=_.isEmpty(r[9])?r[9]:isNaN(r[9])?r[9]:parseInt(r[9],10)}"outbound"===s.queue.type.toLowerCase()&&"outbounddial"===s.queue.appType.toLowerCase()&&(s.queue.prefix=s.queue.phone?s.queue.phone.split("$")[0]:void 0,s.queue.callerId=s.queue.callerID?"CALLERID(all)="+s.queue.callerID:void 0,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})}),a.voiceQueue.get({type:"inbound",fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){s.queues=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppqueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.ringgroup.type.toLowerCase()&&"outboundDial"===s.ringgroup.appType&&(s.ringgroup.phone=s.ringgroup.cutdigits?(s.ringgroup.prefix||"")+"${EXTEN:"+s.ringgroup.cutdigits+"}":(s.ringgroup.prefix||"")+"${EXTEN}",s.ringgroup.record="none"!==s.ringgroup.recordingFormat,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:null),s.ringgroup.appType.toLowerCase()){case"set":s.ringgroup.appdata=s.ringgroup.name+"="+s.ringgroup.value;break;case"custom":break;default:e[0]=s.ringgroup.multipleUsers.join("&"),e[1]=s.ringgroup.timeout,e[2]=s.ringgroup.options,e[3]=s.ringgroup.url,s.ringgroup.appdata=e.join(",")}o(s.ringgroup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.ringgroup=angular.copy(n),s.ringgroup.appdata)switch(s.ringgroup.appType?s.ringgroup.appType.toLowerCase():s.ringgroup.app.toLowerCase()){case"custom":break;case"set":s.ringgroup.name=s.ringgroup.appdata.split("=")[0],s.ringgroup.value=s.ringgroup.appdata.split("=")[1];break;case"agi":s.ringgroup.project=s.ringgroup.appdata;break;default:var r=s.ringgroup.appdata.split(",");s.ringgroup.multipleUsers=r[0].split("&"),s.ringgroup.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.ringgroup.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.ringgroup.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.ringgroup.type.toLowerCase()&&"outbounddial"===s.ringgroup.appType.toLowerCase()&&(s.ringgroup.prefix=s.ringgroup.phone?s.ringgroup.phone.split("$")[0]:void 0,s.ringgroup.callerId=s.ringgroup.callerID?"CALLERID(all)="+s.ringgroup.callerID:void 0,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppringgroupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.set.type.toLowerCase()&&"outboundDial"===s.set.appType&&(s.set.phone=s.set.cutdigits?(s.set.prefix||"")+"${EXTEN:"+s.set.cutdigits+"}":(s.set.prefix||"")+"${EXTEN}",s.set.record="none"!==s.set.recordingFormat,s.set.recordingFormat=s.set.record?s.set.recordingFormat:null),s.set.appType.toLowerCase()){case"set":s.set.appdata=s.set.name+"="+s.set.value;break;case"custom":break;default:e[0]=s.set.name,e[1]=s.set.value,s.set.appdata=e.join("=")}o(s.set)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.set=angular.copy(n),s.set.appdata)switch(s.set.appType?s.set.appType.toLowerCase():s.set.app.toLowerCase()){case"custom":break;case"set":s.set.name=s.set.appdata.split("=")[0],s.set.value=s.set.appdata.split("=")[1];break;case"agi":s.set.project=s.set.appdata;break;default:var r=s.set.appdata.split("=");s.set.name=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.set.value=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.set.type.toLowerCase()&&"outbounddial"===s.set.appType.toLowerCase()&&(s.set.prefix=s.set.phone?s.set.phone.split("$")[0]:void 0,s.set.callerId=s.set.callerID?"CALLERID(all)="+s.set.callerID:void 0,s.set.recordingFormat=s.set.record?s.set.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppsetDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.voicemail.type.toLowerCase()&&"outboundDial"===s.voicemail.appType&&(s.voicemail.phone=s.voicemail.cutdigits?(s.voicemail.prefix||"")+"${EXTEN:"+s.voicemail.cutdigits+"}":(s.voicemail.prefix||"")+"${EXTEN}",s.voicemail.record="none"!==s.voicemail.recordingFormat,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:null),s.voicemail.appType.toLowerCase()){case"set":s.voicemail.appdata=s.voicemail.name+"="+s.voicemail.value;break;case"custom":break;default:e[0]=s.voicemail.voiceMail,e[1]=s.voicemail.options,s.voicemail.appdata=e.join(",")}o(s.voicemail)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.voicemail=angular.copy(n),s.voicemail.appdata)switch(s.voicemail.appType?s.voicemail.appType.toLowerCase():s.voicemail.app.toLowerCase()){case"custom":break;case"set":s.voicemail.name=s.voicemail.appdata.split("=")[0],s.voicemail.value=s.voicemail.appdata.split("=")[1];break;case"agi":s.voicemail.project=s.voicemail.appdata;break;default:var r=s.voicemail.appdata.split(",");s.voicemail.voiceMail=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.voicemail.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.voicemail.type.toLowerCase()&&"outbounddial"===s.voicemail.appType.toLowerCase()&&(s.voicemail.prefix=s.voicemail.phone?s.voicemail.phone.split("$")[0]:void 0,s.voicemail.callerId=s.voicemail.callerID?"CALLERID(all)="+s.voicemail.callerID:void 0,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:"none"),s.saveInboundRouteApp=i,s.closeDialog=o,a.voiceMail.get({fields:"mailbox",sort:"mailbox"}).$promise.then(function(e){s.voiceMails=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMails",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","inboundrouteApp","api"],angular.module("app.voice").controller("EditInboundRouteAppvoicemailDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.inboundroutes")}function r(){i.voiceExtension.update({id:l.inboundroute.id},l.inboundroute).$promise.then(function(){a.success({title:"InboundRoute updated!",msg:l.inboundroute.name?l.inboundroute.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.inboundroute=e.params.inboundroute||o||{},l.selectedTab=e.params.tab||0,l.gotoInboundRoutes=s,l.saveInboundRoute=r,i.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","inboundroute"],angular.module("app.voice").controller("InboundRouteController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.inboundroutes.edit",{id:e.id,inboundroute:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the inboundroute?").htmlContent("<b>"+(e.name||"inboundroute")+"</b> will be deleted.").ariaLabel("delete inboundroute").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.inboundroutes=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceExtension.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditInboundRouteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/inboundroutes/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{inboundroute:t,inboundroutes:A.inboundroutes.rows}})}function v(e){l.voiceExtension.delete({id:e.id}).$promise.then(function(){_.remove(A.inboundroutes.rows,{id:e.id}),A.inboundroutes.count-=1,A.inboundroutes.rows.length||A.getInboundRoutes(),c.success({title:"InboundRoute deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedInboundRoutes);return A.selectedInboundRoutes=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected inboundroutes?").htmlContent("<b>"+A.selectedInboundRoutes.length+" selected</b> will be deleted.").ariaLabel("delete InboundRoutes").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedInboundRoutes.forEach(function(e){v(e)}),A.selectedInboundRoutes=[]})}function E(){A.selectedInboundRoutes=[]}function y(){A.selectedInboundRoutes=A.inboundroutes.rows}var A=this;A.inboundroutes=r||{count:0,rows:[]},A.table="inboundroutes",A.listOrder="",A.listOrderAsc=null,A.selectedInboundRoutes=[],A.query={fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"inbound",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getInboundRoutes=g,A.createOrEditInboundRoute=h,A.deleteInboundRoute=v,A.exportSelectedInboundRoutes=b,A.deleteSelectedInboundRoutes=f,A.deselectInboundRoutes=E,A.selectAllInboundRoutes=y,l.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){A.contexts=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getInboundRoutes())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","inboundroutes","api","msUtils","toasty"],angular.module("app.voice").controller("InboundRoutesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceExtension.save(p.internalroute).$promise.then(function(e){p.internalroutes.unshift(e),i.success({title:"InternalRoute properly created",msg:p.internalroute.name?p.internalroute.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceExtension.update({id:p.internalroute.id},p.internalroute).$promise.then(function(e){var t=_.find(p.internalroutes,{id:e.id});t&&_.merge(t,e),i.success({title:"InternalRoute properly saved!",msg:p.internalroute.name?p.internalroute.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The internalroute will be deleted.").ariaLabel("Delete InternalRoute").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceExtension.delete({id:p.internalroute.id}).$promise.then(function(){_.remove(p.internalroutes,{id:p.internalroute.id}),i.success({title:"InternalRoute properly deleted!",msg:(p.internalroute.name||"internalroute")+" has been deleted!"}),u(p.internalroute)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_INTERNALROUTE",p.internalroute=angular.copy(s),p.internalroutes=o,p.newInternalRoute=!1,p.internalroute||(p.internalroute={appdata:"Internal Call",type:"internal",context:"from-sip"},p.title="VOICE.NEW_INTERNALROUTE",p.newInternalRoute=!0),p.addNewInternalRoute=l,p.saveInternalRoute=d,p.deleteInternalRoute=c,p.getDateFromString=m,p.closeDialog=u,r.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){p.contexts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","internalroutes","internalroute","api"],angular.module("app.voice").controller("CreateOrEditInternalRouteDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){g.internalroute=e,g.query.VoiceExtensionId=e.id,g.query.isApp=!0,g.query.nolimit=!0,g.getInternalRouteApps(),g.getIntervals()}function o(e,n,a){var i=t.confirm().title("Are you sure want to delete the application?").htmlContent("<b>"+e.app+"</b> will be deleted.").ariaLabel("delete application").targetEvent(a).ok("OK").cancel("CANCEL");t.show(i).then(function(){g.internalrouteApps.rows.splice(n,1),l()},function(){console.log("CANCEL")})}function s(e,i){if(g.internalrouteApps.rows.length){var o=g.internalrouteApps.rows[i]?g.internalrouteApps.rows[i]:g.internalrouteApps.rows[0];t.show({controller:"EditInternalRouteApp"+(o.appType||o.app).toLowerCase()+"DialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/internalroutes/edit/apps/"+(o.appType||o.app).toLowerCase()+"/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{internalrouteApp:o}}).then(function(e){e&&(e.id?g.internalrouteApps.rows[i]=e:g.internalrouteApps.rows.splice(i,0,e),l())}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:EDITMODALSHOW",msg:e.data?JSON.stringify(e.data):e.toString()})})}}function r(e,a){if(g.internalrouteApps.rows.length){var i=g.internalrouteApps.rows[a]?g.internalrouteApps.rows[a]:g.internalrouteApps.rows[0];t.show({controller:"EditInternalRouteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/internalroutes/edit/apps/interval/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:i.interval,IntervalId:i.IntervalId,application:!0},intervals:[]}}).then(function(e){e&&(i.interval=e.interval||"*,*,*,*",i.IntervalId=e.IntervalId||null,l())})}}function l(){var t=["queue","playback"],n=!1,a=!1,i=2,o=[];o.push({type:"internal",app:"Set",appdata:"CDR(type)=internal",context:g.internalroute.context,exten:g.internalroute.exten,priority:i++,VoiceExtensionId:g.internalroute.id});for(var s=0,r=0;s<g.internalrouteApps.rows.length;s++,r=0){var l=g.internalrouteApps.rows[s],d=[],c=[];l.intervals="*,*,*,*"!==l.interval?[l.interval]:l.IntervalId?_.map(_.filter(g.intervals.rows,{IntervalId:l.IntervalId}),"interval"):[],l.context=g.internalroute.context,l.exten=g.internalroute.exten,l.hasOwnProperty("answer")&&t.includes(l.app.toLowerCase())&&"custom"!==l.appType&&(!n&&l.answer&&(n=!0,d.push({type:l.type,app:"Answer",context:g.internalroute.context,exten:g.internalroute.exten,priority:l.intervals.length+i+r++,VoiceExtensionId:g.internalroute.id})),n||a||l.answer||(a=!0,d.push({type:l.type,app:"Progress",context:g.internalroute.context,exten:g.internalroute.exten,priority:l.intervals.length+i+r++,VoiceExtensionId:g.internalroute.id})));for(var m=0;m<l.intervals.length;m++){var u=i+l.intervals.length,p=m===l.intervals.length-1?i+d.length+c.length+2:i+m+1;d.splice(m,0,{type:"internal",app:"GotoIfTime",appdata:l.intervals[m]+"?"+g.internalroute.context+",${EXTEN},"+u+":"+g.internalroute.context+",${EXTEN},"+p,exten:g.internalroute.exten,context:g.internalroute.context,priority:i+m,VoiceExtensionId:g.internalroute.id})}l.priority=d.length?_.last(d).priority+1:i,i=(c.length?_.last(c).priority:l.priority)+1,o=_.concat(o,d,[l],c)}o.push({type:"internal",app:"Hangup",exten:g.internalroute.exten,context:g.internalroute.context,priority:i,VoiceExtensionId:g.internalroute.id}),e.voiceExtension.addApplications({id:g.internalroute.id},_.sortBy(o,"priority")).$promise.then(function(e){g.internalrouteApps.rows=e.rows}).catch(function(e){console.error(e)})}function d(e){g.internalrouteApps=e||{count:0,rows:[]}}function c(){return e.interval.get({fields:"id,interval,IntervalId"}).$promise.then(function(e){g.intervals=e}).catch(function(e){console.error(e)})}function m(){g.promise=e.voiceExtension.get(g.query,d).$promise}function u(e){_.remove(g.internalrouteApps.rows,{id:e.id}),l(),a.success({title:"App deleted!",msg:e.app?e.app+" has been deleted!":""})}function p(e){var n=t.confirm().title("Are you sure want to delete the selected applications?").htmlContent("<b>"+g.selectedInternalRouteApps.length+" selected</b> will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");t.show(n).then(function(){g.selectedInternalRouteApps.forEach(function(e){_.remove(g.internalrouteApps.rows,{id:e.id})}),g.selectedInternalRouteApps=[],l()})}var g=this;g.internalroute={},g.internalrouteApps={count:0,rows:[]},g.selectedInternalRouteApps=[],g.query={sort:"priority"},g.apps=_.reject(_.sortBy([{app:"Interval",appType:"interval",type:"Internal",types:["always","custom","list"],fields:[],isApp:!1},{app:"Queue",appType:"queue",context:"from-sip",type:"Internal",options:"xX",appdata:",xX,,,300,,,,,",icon:"icon-apps",interval:"*,*,*,*",answer:!0,isApp:!0,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}},{name:"queues",route:"voiceQueue",filters:{type:"inbound",fields:"id,name,type",sort:"name",nolimit:!0}}],fields:[{title:"Queue",name:"queue",type:"apiselect",values:"queues",value:"queue.name",option:"queue.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Url",name:"URL",type:"text",param:2},{title:"Announce_Overrides",name:"sound",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}'",option:"sound.name",defaultValues:[{value:"''",option:"None"}],param:3},{title:"Timeout",name:"timeout",type:"number",min:0,param:4},{title:"Agi",name:"agi",type:"text",param:5},{title:"Macro",name:"macro",type:"text",param:6},{title:"GoSub",name:"gosub",type:"text",param:7},{title:"Rule",name:"rule",type:"text",param:8},{title:"Position",name:"position",type:"number",min:0,param:9},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Playback",appType:"playback",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",answer:!0,isApp:!0,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}}],fields:[{title:"Audio_Files",name:"appdata",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}'",option:"appdata.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Dial",appType:"dial",context:"from-sip",type:"Internal",icon:"icon-apps",options:"xX",interval:"*,*,*,*",isApp:!0,fields:[{title:"Technology/Resource",name:"tech",type:"text",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"internalDial",context:"from-sip",type:"Internal",icon:"icon-apps",options:"xX",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"user",type:"apiselect",values:"users",value:"'SIP/{{user.name}}'",option:"user.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"externalDial",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"trunks",route:"trunk",filters:{fields:"name",sort:"name"}}],fields:[{title:"Trunk",name:"trunk",type:"apiselect",values:"trunks",value:"trunk.name",option:"trunk.name",required:!0,param:0},{title:"Phone",name:"phone",type:"text"},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"ringGroup",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"multipleUsers",type:"apiselect",multiple:!0,values:"users",value:"'SIP/{{multipleUsers.name}}'",option:"multipleUsers.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"AGI",alias:"CallySquare",appType:"agi",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"projects",route:"squareProject",filters:{fields:"name",sort:"name"}}],fields:[{title:"Project",name:"project",type:"apiselect",values:"projects",value:"'agi://127.0.0.1/square,{{project.name}}'",option:"project.name",required:!0,param:0}]},{app:"goto",appType:"goTo",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"contexts",route:"voiceContext",filters:{fields:"name",sort:"name"}}],fields:[{title:"Context",name:"context",type:"apiselect",values:"contexts",value:"context.name",option:"context.name",required:!0,param:0},{title:"Extension",name:"extension",type:"text",required:!0,param:1},{title:"Priority",name:"priority",type:"text",required:!0,param:2}]},{app:"hangup",appType:"hangup",context:"from-sip",type:"Internal",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Hangup_Cause",name:"appdata",type:"select",param:0,values:[{option:"HANGUPCAUSE_1",value:"'1'"},{option:"HANGUPCAUSE_16",value:"'16'"},{option:"HANGUPCAUSE_17",value:"'17'"},{option:"HANGUPCAUSE_18",value:"'18'"},{option:"HANGUPCAUSE_21",value:"'21'"},{option:"HANGUPCAUSE_22",value:"'22'"},{option:"HANGUPCAUSE_27",value:"'27'"},{option:"HANGUPCAUSE_38",value:"'38'"},{option:"HANGUPCAUSE_41",value:"'41'"}],translate:!0,required:!0,general:!0}]},{app:"Set",appType:"set",context:"from-sip",type:"Internal",separator:"=",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Variable",name:"name",type:"text",required:!0,param:0},{title:"Value",name:"value",type:"text",required:!0,param:1}]},{app:null,appType:"Custom",icon:"icon-apps",type:"Internal",interval:"*,*,*,*",isApp:!0,fields:[{title:"Application_Name",name:"app",type:"text",required:!0,param:0},{title:"Arguments",name:"appdata",type:"text",param:1}]},{app:"Voicemail",appType:"voicemail",context:"from-sip",icon:"icon-apps",type:"Internal",interval:"*,*,*,*",isApp:!0,extraApi:[{name:"voiceMails",route:"voiceMail",filters:{fields:"mailbox",sort:"mailbox"}}],fields:[{title:"Mailbox@Context",name:"voiceMail",type:"apiselect",values:"voiceMails",value:"'{{voiceMail.mailbox}}@from-voicemail'",option:"voiceMail.mailbox",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1}]}],["app"]),{isApp:!1}),g.list={group:{name:"opt1",pull:"clone"},animation:100,sort:!1},g.applications={group:{name:"opt2",put:"opt1"},animation:100,onAdd:function(e){s(e,e.newIndex)},onSort:function(e){l()}},g.init=i,g.deleteConfirm=o,g.getInternalRouteApps=m,g.editInternalRouteApp=s,g.editInterval=r,g.deleteInternalRouteApp=u,g.deleteSelectedInternalRouteApps=p,g.rewriteRouting=l,g.getIntervals=c}e.$inject=["api","$mdDialog","$document","toasty"],angular.module("app.voice").controller("InternalRouteActionsController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.agi.type.toLowerCase()&&"outboundDial"===s.agi.appType&&(s.agi.phone=s.agi.cutdigits?(s.agi.prefix||"")+"${EXTEN:"+s.agi.cutdigits+"}":(s.agi.prefix||"")+"${EXTEN}",s.agi.record="none"!==s.agi.recordingFormat,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:null),s.agi.appType.toLowerCase()){case"set":s.agi.appdata=s.agi.name+"="+s.agi.value;break;case"custom":break;default:e[0]=s.agi.project,s.agi.appdata=e.join(",")}o(s.agi)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.agi=angular.copy(n),s.agi.appdata)switch(s.agi.appType?s.agi.appType.toLowerCase():s.agi.app.toLowerCase()){case"custom":break;case"set":s.agi.name=s.agi.appdata.split("=")[0],s.agi.value=s.agi.appdata.split("=")[1];break;case"agi":s.agi.project=s.agi.appdata;break;default:var r=s.agi.appdata.split(",");s.agi.project=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.agi.type.toLowerCase()&&"outbounddial"===s.agi.appType.toLowerCase()&&(s.agi.prefix=s.agi.phone?s.agi.phone.split("$")[0]:void 0,s.agi.callerId=s.agi.callerID?"CALLERID(all)="+s.agi.callerID:void 0,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.squareProject.get({fields:"name",sort:"name"}).$promise.then(function(e){s.projects=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppagiDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.custom.type.toLowerCase()&&"outboundDial"===s.custom.appType&&(s.custom.phone=s.custom.cutdigits?(s.custom.prefix||"")+"${EXTEN:"+s.custom.cutdigits+"}":(s.custom.prefix||"")+"${EXTEN}",s.custom.record="none"!==s.custom.recordingFormat,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:null),s.custom.appType.toLowerCase()){case"set":s.custom.appdata=s.custom.name+"="+s.custom.value;break;case"custom":break;default:e[0]=s.custom.app,e[1]=s.custom.appdata,s.custom.appdata=e.join(",")}o(s.custom)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.custom=angular.copy(n),s.custom.appdata)switch(s.custom.appType?s.custom.appType.toLowerCase():s.custom.app.toLowerCase()){case"custom":break;case"set":s.custom.name=s.custom.appdata.split("=")[0],s.custom.value=s.custom.appdata.split("=")[1];break;case"agi":s.custom.project=s.custom.appdata;break;default:var r=s.custom.appdata.split(",");s.custom.app=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.custom.appdata=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.custom.type.toLowerCase()&&"outbounddial"===s.custom.appType.toLowerCase()&&(s.custom.prefix=s.custom.phone?s.custom.phone.split("$")[0]:void 0,s.custom.callerId=s.custom.callerID?"CALLERID(all)="+s.custom.callerID:void 0,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppcustomDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.dial.type.toLowerCase()&&"outboundDial"===s.dial.appType&&(s.dial.phone=s.dial.cutdigits?(s.dial.prefix||"")+"${EXTEN:"+s.dial.cutdigits+"}":(s.dial.prefix||"")+"${EXTEN}",s.dial.record="none"!==s.dial.recordingFormat,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:null),s.dial.appType.toLowerCase()){case"set":s.dial.appdata=s.dial.name+"="+s.dial.value;break;case"custom":break;default:e[0]=s.dial.tech,e[1]=s.dial.timeout,e[2]=s.dial.options,e[3]=s.dial.url,s.dial.appdata=e.join(",")}o(s.dial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.dial=angular.copy(n),s.dial.appdata)switch(s.dial.appType?s.dial.appType.toLowerCase():s.dial.app.toLowerCase()){case"custom":break;case"set":s.dial.name=s.dial.appdata.split("=")[0],s.dial.value=s.dial.appdata.split("=")[1];break;case"agi":s.dial.project=s.dial.appdata;break;default:var r=s.dial.appdata.split(",");s.dial.tech=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.dial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.dial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.dial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.dial.type.toLowerCase()&&"outbounddial"===s.dial.appType.toLowerCase()&&(s.dial.prefix=s.dial.phone?s.dial.phone.split("$")[0]:void 0,s.dial.callerId=s.dial.callerID?"CALLERID(all)="+s.dial.callerID:void 0,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppdialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.externaldial.type.toLowerCase()&&"outboundDial"===s.externaldial.appType&&(s.externaldial.phone=s.externaldial.cutdigits?(s.externaldial.prefix||"")+"${EXTEN:"+s.externaldial.cutdigits+"}":(s.externaldial.prefix||"")+"${EXTEN}",s.externaldial.record="none"!==s.externaldial.recordingFormat,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:null),s.externaldial.appType.toLowerCase()){case"set":s.externaldial.appdata=s.externaldial.name+"="+s.externaldial.value;break;case"custom":break;default:e[0]=["SIP",s.externaldial.trunk,s.externaldial.phone].join("/"),e[1]=s.externaldial.timeout,e[2]=s.externaldial.options,e[3]=s.externaldial.url,s.externaldial.appdata=e.join(",")}o(s.externaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.externaldial=angular.copy(n),s.externaldial.appdata)switch(s.externaldial.appType?s.externaldial.appType.toLowerCase():s.externaldial.app.toLowerCase()){case"custom":break;case"set":s.externaldial.name=s.externaldial.appdata.split("=")[0],s.externaldial.value=s.externaldial.appdata.split("=")[1];break;case"agi":s.externaldial.project=s.externaldial.appdata;break;default:var r=s.externaldial.appdata.split(",");s.externaldial.trunk=r[0].split("/")[1],s.externaldial.phone=r[0].split("/")[2],s.externaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.externaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.externaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.externaldial.type.toLowerCase()&&"outbounddial"===s.externaldial.appType.toLowerCase()&&(s.externaldial.prefix=s.externaldial.phone?s.externaldial.phone.split("$")[0]:void 0,s.externaldial.callerId=s.externaldial.callerID?"CALLERID(all)="+s.externaldial.callerID:void 0,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.trunk.get({fields:"name",sort:"name"}).$promise.then(function(e){s.trunks=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppexternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.goto.type.toLowerCase()&&"outboundDial"===s.goto.appType&&(s.goto.phone=s.goto.cutdigits?(s.goto.prefix||"")+"${EXTEN:"+s.goto.cutdigits+"}":(s.goto.prefix||"")+"${EXTEN}",s.goto.record="none"!==s.goto.recordingFormat,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:null),s.goto.appType.toLowerCase()){case"set":s.goto.appdata=s.goto.name+"="+s.goto.value;break;case"custom":break;default:e[0]=s.goto.context,e[1]=s.goto.extension,e[2]=s.goto.priority,s.goto.appdata=e.join(",")}o(s.goto)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.goto=angular.copy(n),s.goto.appdata)switch(s.goto.appType?s.goto.appType.toLowerCase():s.goto.app.toLowerCase()){case"custom":break;case"set":s.goto.name=s.goto.appdata.split("=")[0],s.goto.value=s.goto.appdata.split("=")[1];break;case"agi":s.goto.project=s.goto.appdata;break;default:var r=s.goto.appdata.split(",");s.goto.context=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.goto.extension=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.goto.priority=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10)}"outbound"===s.goto.type.toLowerCase()&&"outbounddial"===s.goto.appType.toLowerCase()&&(s.goto.prefix=s.goto.phone?s.goto.phone.split("$")[0]:void 0,s.goto.callerId=s.goto.callerID?"CALLERID(all)="+s.goto.callerID:void 0,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){s.contexts=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppgotoDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.hangup.type.toLowerCase()&&"outboundDial"===s.hangup.appType&&(s.hangup.phone=s.hangup.cutdigits?(s.hangup.prefix||"")+"${EXTEN:"+s.hangup.cutdigits+"}":(s.hangup.prefix||"")+"${EXTEN}",s.hangup.record="none"!==s.hangup.recordingFormat,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:null),s.hangup.appType.toLowerCase()){case"set":s.hangup.appdata=s.hangup.name+"="+s.hangup.value;break;case"custom":break;default:e[0]=s.hangup.appdata,s.hangup.appdata=e.join(",")}o(s.hangup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.hangup=angular.copy(n),s.hangup.appdata)switch(s.hangup.appType?s.hangup.appType.toLowerCase():s.hangup.app.toLowerCase()){case"custom":break;case"set":s.hangup.name=s.hangup.appdata.split("=")[0],s.hangup.value=s.hangup.appdata.split("=")[1];break;case"agi":s.hangup.project=s.hangup.appdata;break;default:var r=s.hangup.appdata.split(",");s.hangup.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.hangup.type.toLowerCase()&&"outbounddial"===s.hangup.appType.toLowerCase()&&(s.hangup.prefix=s.hangup.phone?s.hangup.phone.split("$")[0]:void 0,s.hangup.callerId=s.hangup.callerID?"CALLERID(all)="+s.hangup.callerID:void 0,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteApphangupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.internaldial.type.toLowerCase()&&"outboundDial"===s.internaldial.appType&&(s.internaldial.phone=s.internaldial.cutdigits?(s.internaldial.prefix||"")+"${EXTEN:"+s.internaldial.cutdigits+"}":(s.internaldial.prefix||"")+"${EXTEN}",s.internaldial.record="none"!==s.internaldial.recordingFormat,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:null),s.internaldial.appType.toLowerCase()){case"set":s.internaldial.appdata=s.internaldial.name+"="+s.internaldial.value;break;case"custom":break;default:e[0]=s.internaldial.user,e[1]=s.internaldial.timeout,e[2]=s.internaldial.options,e[3]=s.internaldial.url,s.internaldial.appdata=e.join(",")}o(s.internaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.internaldial=angular.copy(n),s.internaldial.appdata)switch(s.internaldial.appType?s.internaldial.appType.toLowerCase():s.internaldial.app.toLowerCase()){case"custom":break;case"set":s.internaldial.name=s.internaldial.appdata.split("=")[0],s.internaldial.value=s.internaldial.appdata.split("=")[1];break;case"agi":s.internaldial.project=s.internaldial.appdata;break;default:var r=s.internaldial.appdata.split(",");s.internaldial.user=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.internaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.internaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.internaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.internaldial.type.toLowerCase()&&"outbounddial"===s.internaldial.appType.toLowerCase()&&(s.internaldial.prefix=s.internaldial.phone?s.internaldial.phone.split("$")[0]:void 0,s.internaldial.callerId=s.internaldial.callerID?"CALLERID(all)="+s.internaldial.callerID:void 0,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppinternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom&&u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push("*"),u.monthDayFrom&&u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push("*"),u.monthFrom&&u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(i),u.intervals=o,u.newInterval=!1,u.types=["always","custom","list"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],h=p[1],v=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],y=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(y.split(":")[0])),f.setMinutes(Number(y.split(":")[1])),u.timeRangeTo=f}"*"!==h&&(u.dayOfWeekFrom=h.split("-")[0],u.dayOfWeekTo=h.split("-")[1]),"*"!==v&&(u.monthDayFrom=v.split("-")[0],u.monthDayTo=v.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditInternalRouteAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.playback.type.toLowerCase()&&"outboundDial"===s.playback.appType&&(s.playback.phone=s.playback.cutdigits?(s.playback.prefix||"")+"${EXTEN:"+s.playback.cutdigits+"}":(s.playback.prefix||"")+"${EXTEN}",s.playback.record="none"!==s.playback.recordingFormat,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:null),s.playback.appType.toLowerCase()){case"set":s.playback.appdata=s.playback.name+"="+s.playback.value;break;case"custom":break;default:e[0]=s.playback.appdata,e[1]=s.playback.options,s.playback.appdata=e.join(",")}o(s.playback)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.playback=angular.copy(n),s.playback.appdata)switch(s.playback.appType?s.playback.appType.toLowerCase():s.playback.app.toLowerCase()){case"custom":break;case"set":s.playback.name=s.playback.appdata.split("=")[0],s.playback.value=s.playback.appdata.split("=")[1];break;case"agi":s.playback.project=s.playback.appdata;break;default:var r=s.playback.appdata.split(",");s.playback.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.playback.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.playback.type.toLowerCase()&&"outbounddial"===s.playback.appType.toLowerCase()&&(s.playback.prefix=s.playback.phone?s.playback.phone.split("$")[0]:void 0,s.playback.callerId=s.playback.callerID?"CALLERID(all)="+s.playback.callerID:void 0,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppplaybackDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.queue.type.toLowerCase()&&"outboundDial"===s.queue.appType&&(s.queue.phone=s.queue.cutdigits?(s.queue.prefix||"")+"${EXTEN:"+s.queue.cutdigits+"}":(s.queue.prefix||"")+"${EXTEN}",s.queue.record="none"!==s.queue.recordingFormat,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:null),s.queue.appType.toLowerCase()){case"set":s.queue.appdata=s.queue.name+"="+s.queue.value;break;case"custom":break;default:e[0]=s.queue.queue,e[1]=s.queue.options,e[2]=s.queue.URL,e[3]=s.queue.sound,e[4]=s.queue.timeout,e[5]=s.queue.agi,e[6]=s.queue.macro,e[7]=s.queue.gosub,e[8]=s.queue.rule,e[9]=s.queue.position,s.queue.appdata=e.join(",")}o(s.queue)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.queue=angular.copy(n),s.queue.appdata)switch(s.queue.appType?s.queue.appType.toLowerCase():s.queue.app.toLowerCase()){case"custom":break;case"set":s.queue.name=s.queue.appdata.split("=")[0],s.queue.value=s.queue.appdata.split("=")[1];break;case"agi":s.queue.project=s.queue.appdata;break;default:var r=s.queue.appdata.split(",");s.queue.queue=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.queue.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.queue.URL=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.queue.sound=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10),s.queue.timeout=_.isEmpty(r[4])?r[4]:isNaN(r[4])?r[4]:parseInt(r[4],10),s.queue.agi=_.isEmpty(r[5])?r[5]:isNaN(r[5])?r[5]:parseInt(r[5],10),s.queue.macro=_.isEmpty(r[6])?r[6]:isNaN(r[6])?r[6]:parseInt(r[6],10),s.queue.gosub=_.isEmpty(r[7])?r[7]:isNaN(r[7])?r[7]:parseInt(r[7],10),s.queue.rule=_.isEmpty(r[8])?r[8]:isNaN(r[8])?r[8]:parseInt(r[8],10),s.queue.position=_.isEmpty(r[9])?r[9]:isNaN(r[9])?r[9]:parseInt(r[9],10)}"outbound"===s.queue.type.toLowerCase()&&"outbounddial"===s.queue.appType.toLowerCase()&&(s.queue.prefix=s.queue.phone?s.queue.phone.split("$")[0]:void 0,s.queue.callerId=s.queue.callerID?"CALLERID(all)="+s.queue.callerID:void 0,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})}),a.voiceQueue.get({type:"inbound",fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){s.queues=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppqueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.ringgroup.type.toLowerCase()&&"outboundDial"===s.ringgroup.appType&&(s.ringgroup.phone=s.ringgroup.cutdigits?(s.ringgroup.prefix||"")+"${EXTEN:"+s.ringgroup.cutdigits+"}":(s.ringgroup.prefix||"")+"${EXTEN}",s.ringgroup.record="none"!==s.ringgroup.recordingFormat,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:null),s.ringgroup.appType.toLowerCase()){case"set":s.ringgroup.appdata=s.ringgroup.name+"="+s.ringgroup.value;break;case"custom":break;default:e[0]=s.ringgroup.multipleUsers.join("&"),e[1]=s.ringgroup.timeout,e[2]=s.ringgroup.options,e[3]=s.ringgroup.url,s.ringgroup.appdata=e.join(",")}o(s.ringgroup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.ringgroup=angular.copy(n),s.ringgroup.appdata)switch(s.ringgroup.appType?s.ringgroup.appType.toLowerCase():s.ringgroup.app.toLowerCase()){case"custom":break;case"set":s.ringgroup.name=s.ringgroup.appdata.split("=")[0],s.ringgroup.value=s.ringgroup.appdata.split("=")[1];break;case"agi":s.ringgroup.project=s.ringgroup.appdata;break;default:var r=s.ringgroup.appdata.split(",");s.ringgroup.multipleUsers=r[0].split("&"),s.ringgroup.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.ringgroup.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.ringgroup.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.ringgroup.type.toLowerCase()&&"outbounddial"===s.ringgroup.appType.toLowerCase()&&(s.ringgroup.prefix=s.ringgroup.phone?s.ringgroup.phone.split("$")[0]:void 0,s.ringgroup.callerId=s.ringgroup.callerID?"CALLERID(all)="+s.ringgroup.callerID:void 0,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppringgroupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.set.type.toLowerCase()&&"outboundDial"===s.set.appType&&(s.set.phone=s.set.cutdigits?(s.set.prefix||"")+"${EXTEN:"+s.set.cutdigits+"}":(s.set.prefix||"")+"${EXTEN}",s.set.record="none"!==s.set.recordingFormat,s.set.recordingFormat=s.set.record?s.set.recordingFormat:null),s.set.appType.toLowerCase()){case"set":s.set.appdata=s.set.name+"="+s.set.value;break;case"custom":break;default:e[0]=s.set.name,e[1]=s.set.value,s.set.appdata=e.join("=")}o(s.set)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.set=angular.copy(n),s.set.appdata)switch(s.set.appType?s.set.appType.toLowerCase():s.set.app.toLowerCase()){case"custom":break;case"set":s.set.name=s.set.appdata.split("=")[0],s.set.value=s.set.appdata.split("=")[1];break;case"agi":s.set.project=s.set.appdata;break;default:var r=s.set.appdata.split("=");s.set.name=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.set.value=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.set.type.toLowerCase()&&"outbounddial"===s.set.appType.toLowerCase()&&(s.set.prefix=s.set.phone?s.set.phone.split("$")[0]:void 0,s.set.callerId=s.set.callerID?"CALLERID(all)="+s.set.callerID:void 0,s.set.recordingFormat=s.set.record?s.set.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppsetDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.voicemail.type.toLowerCase()&&"outboundDial"===s.voicemail.appType&&(s.voicemail.phone=s.voicemail.cutdigits?(s.voicemail.prefix||"")+"${EXTEN:"+s.voicemail.cutdigits+"}":(s.voicemail.prefix||"")+"${EXTEN}",s.voicemail.record="none"!==s.voicemail.recordingFormat,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:null),s.voicemail.appType.toLowerCase()){case"set":s.voicemail.appdata=s.voicemail.name+"="+s.voicemail.value;break;case"custom":break;default:e[0]=s.voicemail.voiceMail,e[1]=s.voicemail.options,s.voicemail.appdata=e.join(",")}o(s.voicemail)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.voicemail=angular.copy(n),s.voicemail.appdata)switch(s.voicemail.appType?s.voicemail.appType.toLowerCase():s.voicemail.app.toLowerCase()){case"custom":break;case"set":s.voicemail.name=s.voicemail.appdata.split("=")[0],s.voicemail.value=s.voicemail.appdata.split("=")[1];break;case"agi":s.voicemail.project=s.voicemail.appdata;break;default:var r=s.voicemail.appdata.split(",");s.voicemail.voiceMail=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.voicemail.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.voicemail.type.toLowerCase()&&"outbounddial"===s.voicemail.appType.toLowerCase()&&(s.voicemail.prefix=s.voicemail.phone?s.voicemail.phone.split("$")[0]:void 0,s.voicemail.callerId=s.voicemail.callerID?"CALLERID(all)="+s.voicemail.callerID:void 0,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:"none"),s.saveInternalRouteApp=i,s.closeDialog=o,a.voiceMail.get({fields:"mailbox",sort:"mailbox"}).$promise.then(function(e){s.voiceMails=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMails",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","internalrouteApp","api"],angular.module("app.voice").controller("EditInternalRouteAppvoicemailDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.internalroutes")}function r(){i.voiceExtension.update({id:l.internalroute.id},l.internalroute).$promise.then(function(){a.success({title:"InternalRoute updated!",msg:l.internalroute.name?l.internalroute.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.internalroute=e.params.internalroute||o||{},l.selectedTab=e.params.tab||0,l.gotoInternalRoutes=s,l.saveInternalRoute=r,i.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","internalroute"],angular.module("app.voice").controller("InternalRouteController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.internalroutes.edit",{id:e.id,internalroute:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the internalroute?").htmlContent("<b>"+(e.name||"internalroute")+"</b> will be deleted.").ariaLabel("delete internalroute").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.internalroutes=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceExtension.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditInternalRouteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/internalroutes/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{internalroute:t,internalroutes:A.internalroutes.rows}})}function v(e){l.voiceExtension.delete({id:e.id}).$promise.then(function(){_.remove(A.internalroutes.rows,{id:e.id}),A.internalroutes.count-=1,A.internalroutes.rows.length||A.getInternalRoutes(),c.success({title:"InternalRoute deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedInternalRoutes);return A.selectedInternalRoutes=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected internalroutes?").htmlContent("<b>"+A.selectedInternalRoutes.length+" selected</b> will be deleted.").ariaLabel("delete InternalRoutes").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedInternalRoutes.forEach(function(e){v(e)}),A.selectedInternalRoutes=[]})}function E(){A.selectedInternalRoutes=[]}function y(){A.selectedInternalRoutes=A.internalroutes.rows}var A=this;A.internalroutes=r||{count:0,rows:[]},A.table="internalroutes",A.listOrder="",A.listOrderAsc=null,A.selectedInternalRoutes=[],A.query={fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"internal",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getInternalRoutes=g,A.createOrEditInternalRoute=h,A.deleteInternalRoute=v,A.exportSelectedInternalRoutes=b,A.deleteSelectedInternalRoutes=f,A.deselectInternalRoutes=E,A.selectAllInternalRoutes=y,l.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){A.contexts=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getInternalRoutes())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","internalroutes","api","msUtils","toasty"],angular.module("app.voice").controller("InternalRoutesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceMusicOnHold.save(p.musiconhold).$promise.then(function(e){p.musiconholds.unshift(e),i.success({title:"MusicOnHold properly created",msg:p.musiconhold.name?p.musiconhold.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMusicOnHold.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceMusicOnHold.update({id:p.musiconhold.id},p.musiconhold).$promise.then(function(e){var t=_.find(p.musiconholds,{id:e.id});t&&_.merge(t,e),i.success({title:"MusicOnHold properly saved!",msg:p.musiconhold.name?p.musiconhold.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMusicOnHold.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The musiconhold will be deleted.").ariaLabel("Delete MusicOnHold").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceMusicOnHold.delete({id:p.musiconhold.id}).$promise.then(function(){_.remove(p.musiconholds,{id:p.musiconhold.id}),i.success({title:"MusicOnHold properly deleted!",msg:(p.musiconhold.name||"musiconhold")+" has been deleted!"}),u(p.musiconhold)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_MUSICONHOLD",p.musiconhold=angular.copy(s),p.musiconholds=o,p.newMusicOnHold=!1,p.musiconhold||(p.musiconhold={mode:"files"},p.title="VOICE.NEW_MUSICONHOLD",p.newMusicOnHold=!0),p.addNewMusicOnHold=l,p.saveMusicOnHold=d,p.deleteMusicOnHold=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","musiconholds","musiconhold","api"],angular.module("app.voice").controller("CreateOrEditMusicOnHoldDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.musiconhold=e,h.query.id=h.musiconhold.id,h.query.VoiceMusicOnHoldId=h.musiconhold.id,h.getMusicOnHoldMohSounds()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the mohSound?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete mohSound").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.musiconholdMohSounds=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceMusicOnHold.getSounds(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditMohSoundDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/musiconholds/edit/mohSounds/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{mohSound:t,mohSounds:h.musiconholdMohSounds.rows}})}function p(e){r.voiceMusicOnHold.removeSound({id:n.params.id,id2:e.id}).$promise.then(function(){_.remove(h.musiconholdMohSounds.rows,{id:e.id}),h.musiconholdMohSounds.count-=1,h.musiconholdMohSounds.rows.length||h.getMusicOnHoldMohSounds(),s.success({title:"MohSound deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMusicOnHold",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected mohSounds?").htmlContent("<b>"+h.selectedMusicOnHoldMohSounds.length+" selected</b> will be deleted.").ariaLabel("delete mohSounds").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedMusicOnHoldMohSounds.forEach(function(e){p(e)}),h.selectedMusicOnHoldMohSounds=[]})}var h=this;h.musiconhold={},h.musiconholdMohSounds={count:0,rows:[]},h.selectedMusicOnHoldMohSounds=[],h.query={fields:"createdAt,updatedAt,id,audio,id,createdAt",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getMusicOnHoldMohSounds=m,h.createOrEditMusicOnHoldMohSound=u,h.deleteMusicOnHoldMohSound=p,h.deleteSelectedMusicOnHoldMohSounds=g,r.sound.get({fields:"name,id",sort:"name"}).$promise.then(function(e){h.sounds=_.keyBy(e.rows||[],"id")}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})});var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getMusicOnHoldMohSounds())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.voice").controller("MusicOnHoldMohSoundsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceMusicOnHold.addSound({id:t.params.id},p.mohSound).$promise.then(function(e){p.mohSounds.unshift(e),i.success({title:"MohSound properly created",msg:p.mohSound.name?p.mohSound.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMusicOnHold.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceMusicOnHold.update({id:p.mohSound.id},p.mohSound).$promise.then(function(e){var t=_.find(p.mohSounds,{id:e.id});t&&_.merge(t,e),i.success({title:"MohSound properly saved!",msg:p.mohSound.name?p.mohSound.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMusicOnHold.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The mohSound will be deleted.").ariaLabel("Delete MohSound").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceMusicOnHold.delete({id:p.mohSound.id}).$promise.then(function(){_.remove(p.mohSounds,{id:p.mohSound.id}),i.success({title:"MohSound properly deleted!",msg:(p.mohSound.name||"mohSound")+" has been deleted!"}),u(p.mohSound)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMusicOnHold.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_MOHSOUND",p.mohSound=angular.copy(s),p.mohSounds=o,p.newMohSound=!1,p.mohSound||(p.mohSound={},p.title="VOICE.NEW_MOHSOUND",p.newMohSound=!0),t.params.id&&(p.mohSound.VoiceMusicOnHoldId=t.params.id),p.addNewMohSound=l,p.saveMohSound=d,p.deleteMohSound=c,p.getDateFromString=m,p.closeDialog=u,r.sound.get({fields:"name,id",sort:"name"}).$promise.then(function(e){p.sounds=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","mohSounds","mohSound","api"],angular.module("app.voice").controller("CreateOrEditMohSoundDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.musiconholds")}function r(){i.voiceMusicOnHold.update({id:l.musiconhold.id},l.musiconhold).$promise.then(function(){a.success({title:"MusicOnHold updated!",msg:l.musiconhold.name?l.musiconhold.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMusicOnHold",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.musiconhold=e.params.musiconhold||o||{},l.selectedTab=e.params.tab||0,l.gotoMusicOnHolds=s,l.saveMusicOnHold=r}e.$inject=["$state","$mdDialog","$document","toasty","api","musiconhold"],angular.module("app.voice").controller("MusicOnHoldController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.musiconholds.edit",{id:e.id,musiconhold:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the musiconhold?").htmlContent("<b>"+(e.name||"musiconhold")+"</b> will be deleted.").ariaLabel("delete musiconhold").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.musiconholds=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceMusicOnHold.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditMusicOnHoldDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/musiconholds/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{musiconhold:t,musiconholds:A.musiconholds.rows}})}function v(e){l.voiceMusicOnHold.delete({id:e.id}).$promise.then(function(){_.remove(A.musiconholds.rows,{id:e.id}),A.musiconholds.count-=1,A.musiconholds.rows.length||A.getMusicOnHolds(),c.success({title:"MusicOnHold deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMusicOnHold",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedMusicOnHolds);return A.selectedMusicOnHolds=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected musiconholds?").htmlContent("<b>"+A.selectedMusicOnHolds.length+" selected</b> will be deleted.").ariaLabel("delete MusicOnHolds").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedMusicOnHolds.forEach(function(e){v(e)}),A.selectedMusicOnHolds=[]})}function E(){A.selectedMusicOnHolds=[]}function y(){A.selectedMusicOnHolds=A.musiconholds.rows}var A=this;A.musiconholds=r||{count:0,rows:[]},A.table="musiconholds",A.listOrder="",A.listOrderAsc=null,A.selectedMusicOnHolds=[],A.query={fields:"createdAt,updatedAt,id,name,mode,directory,application,format,sort",sort:"-updatedAt",defaultEntry:"false",limit:10,page:1},A.arraymode=_.keyBy([{option:"Files",value:"'files'"},{option:"Custom",value:"'custom'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraysort=_.keyBy([{option:"Random",value:"'random'"},{option:"Alphabetical",value:"'alpha'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getMusicOnHolds=g,A.createOrEditMusicOnHold=h,A.deleteMusicOnHold=v,A.exportSelectedMusicOnHolds=b,A.deleteSelectedMusicOnHolds=f,A.deselectMusicOnHolds=E,A.selectAllMusicOnHolds=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getMusicOnHolds())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","musiconholds","api","msUtils","toasty"],angular.module("app.voice").controller("MusicOnHoldsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceExtension.save(p.outboundroute).$promise.then(function(e){p.outboundroutes.unshift(e),i.success({title:"OutboundRoute properly created",msg:p.outboundroute.name?p.outboundroute.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceExtension.update({id:p.outboundroute.id},p.outboundroute).$promise.then(function(e){var t=_.find(p.outboundroutes,{id:e.id});t&&_.merge(t,e),i.success({title:"OutboundRoute properly saved!",msg:p.outboundroute.name?p.outboundroute.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceExtension.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The outboundroute will be deleted.").ariaLabel("Delete OutboundRoute").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceExtension.delete({id:p.outboundroute.id}).$promise.then(function(){_.remove(p.outboundroutes,{id:p.outboundroute.id}),i.success({title:"OutboundRoute properly deleted!",msg:(p.outboundroute.name||"outboundroute")+" has been deleted!"}),u(p.outboundroute)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceExtension.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_OUTBOUNDROUTE",p.outboundroute=angular.copy(s),p.outboundroutes=o,p.newOutboundRoute=!1,p.outboundroute||(p.outboundroute={appdata:"Outbound Call",type:"outbound",context:"from-sip"},p.title="VOICE.NEW_OUTBOUNDROUTE",p.newOutboundRoute=!0),p.addNewOutboundRoute=l,p.saveOutboundRoute=d,p.deleteOutboundRoute=c,p.getDateFromString=m,p.closeDialog=u,r.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){p.contexts=e.rows||[]}).catch(function(e){i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$scope","$state","$location","$mdDialog","toasty","outboundroutes","outboundroute","api"],angular.module("app.voice").controller("CreateOrEditOutboundRouteDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(e){g.outboundroute=e,g.query.VoiceExtensionId=e.id,g.query.isApp=!0,g.query.nolimit=!0,g.getOutboundRouteApps(),g.getIntervals()}function o(e,n,a){var i=t.confirm().title("Are you sure want to delete the application?").htmlContent("<b>"+e.app+"</b> will be deleted.").ariaLabel("delete application").targetEvent(a).ok("OK").cancel("CANCEL");t.show(i).then(function(){g.outboundrouteApps.rows.splice(n,1),l()},function(){console.log("CANCEL")})}function s(e,i){if(g.outboundrouteApps.rows.length){var o=g.outboundrouteApps.rows[i]?g.outboundrouteApps.rows[i]:g.outboundrouteApps.rows[0];t.show({controller:"EditOutboundRouteApp"+(o.appType||o.app).toLowerCase()+"DialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/outboundroutes/edit/apps/"+(o.appType||o.app).toLowerCase()+"/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{outboundrouteApp:o}}).then(function(e){e&&(e.id?g.outboundrouteApps.rows[i]=e:g.outboundrouteApps.rows.splice(i,0,e),l())}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:EDITMODALSHOW",msg:e.data?JSON.stringify(e.data):e.toString()})})}}function r(e,a){if(g.outboundrouteApps.rows.length){var i=g.outboundrouteApps.rows[a]?g.outboundrouteApps.rows[a]:g.outboundrouteApps.rows[0];t.show({controller:"EditOutboundRouteAppintervalDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/outboundroutes/edit/apps/interval/dialog.html",parent:angular.element(n.body),targetEvent:e,clickOutsideToClose:!0,locals:{interval:{interval:i.interval,IntervalId:i.IntervalId,application:!0},intervals:[]}}).then(function(e){e&&(i.interval=e.interval||"*,*,*,*",i.IntervalId=e.IntervalId||null,l())})}}function l(){var t=2,n=[];n.push({type:"outbound",app:"Set",appdata:"CDR(type)=outbound",context:g.outboundroute.context,exten:g.outboundroute.exten,priority:t++,VoiceExtensionId:g.outboundroute.id}),n.push({type:"outbound",app:"Set",appdata:"outboundrouteid="+g.outboundroute.id,context:g.outboundroute.context,exten:g.outboundroute.exten,priority:t++,VoiceExtensionId:g.outboundroute.id});for(var a=0,i=0;a<g.outboundrouteApps.rows.length;a++,i=0){var o=g.outboundrouteApps.rows[a],s=[],r=[];o.intervals="*,*,*,*"!==o.interval?[o.interval]:o.IntervalId?_.map(_.filter(g.intervals.rows,{IntervalId:o.IntervalId}),"interval"):[],o.context=g.outboundroute.context,o.exten=g.outboundroute.exten,o.hasOwnProperty("tag")&&o.tag&&"--"!==o.tag&&s.push({type:o.type,app:"Set",appdata:"CDR(tag)="+o.tag,context:g.outboundroute.context,exten:g.outboundroute.exten,priority:o.intervals.length+t+i++,VoiceExtensionId:g.outboundroute.id}),o.hasOwnProperty("callerID")&&o.callerID&&s.push({type:o.type,app:"Set",appdata:"CALLERID(all)="+o.callerID,context:g.outboundroute.context,exten:g.outboundroute.exten,priority:o.intervals.length+t+i++,VoiceExtensionId:g.outboundroute.id}),o.hasOwnProperty("record")&&o.hasOwnProperty("recordingFormat")&&o.record&&s.push({type:o.type,app:"MixMonitor",appdata:"${UNIQUEID}."+o.recordingFormat+",ab",context:g.outboundroute.context,exten:g.outboundroute.exten,priority:o.intervals.length+t+i++,VoiceExtensionId:g.outboundroute.id}),o.hasOwnProperty("record")&&o.hasOwnProperty("recordingFormat")&&o.record&&r.push({type:o.type,app:"StopMixMonitor",appdata:null,context:g.outboundroute.context,exten:g.outboundroute.exten,priority:o.intervals.length+t+i+++1,VoiceExtensionId:g.outboundroute.id});for(var l=0;l<o.intervals.length;l++){var d=t+o.intervals.length,c=l===o.intervals.length-1?t+s.length+r.length+2:t+l+1;s.splice(l,0,{type:"outbound",app:"GotoIfTime",appdata:o.intervals[l]+"?"+g.outboundroute.context+",${EXTEN},"+d+":"+g.outboundroute.context+",${EXTEN},"+c,exten:g.outboundroute.exten,context:g.outboundroute.context,priority:t+l,VoiceExtensionId:g.outboundroute.id})}o.priority=s.length?_.last(s).priority+1:t,t=(r.length?_.last(r).priority:o.priority)+1,n=_.concat(n,s,[o],r)}n.push({type:"outbound",app:"Hangup",exten:g.outboundroute.exten,context:g.outboundroute.context,priority:t,VoiceExtensionId:g.outboundroute.id}),e.voiceExtension.addApplications({id:g.outboundroute.id},_.sortBy(n,"priority")).$promise.then(function(e){g.outboundrouteApps.rows=e.rows}).catch(function(e){console.error(e)})}function d(e){g.outboundrouteApps=e||{count:0,rows:[]}}function c(){return e.interval.get({fields:"id,interval,IntervalId"}).$promise.then(function(e){g.intervals=e}).catch(function(e){console.error(e)})}function m(){g.promise=e.voiceExtension.get(g.query,d).$promise}function u(e){_.remove(g.outboundrouteApps.rows,{id:e.id}),l(),a.success({title:"App deleted!",msg:e.app?e.app+" has been deleted!":""})}function p(e){var n=t.confirm().title("Are you sure want to delete the selected applications?").htmlContent("<b>"+g.selectedOutboundRouteApps.length+" selected</b> will be deleted.").ariaLabel("delete applications").targetEvent(e).ok("OK").cancel("CANCEL");t.show(n).then(function(){g.selectedOutboundRouteApps.forEach(function(e){_.remove(g.outboundrouteApps.rows,{id:e.id})}),g.selectedOutboundRouteApps=[],l()})}var g=this;g.outboundroute={},g.outboundrouteApps={count:0,rows:[]},g.selectedOutboundRouteApps=[],g.query={sort:"priority"},g.apps=_.reject(_.sortBy([{app:"Interval",appType:"interval",type:"Outbound",types:["always","custom","list"],fields:[],isApp:!1},{app:"Queue",appType:"queue",context:"from-sip",type:"Outbound",appdata:",xX,,,300,,,,,",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}},{name:"queues",route:"voiceQueue",filters:{type:"inbound",fields:"id,name,type",sort:"name",nolimit:!0}}],fields:[{title:"Queue",name:"queue",type:"apiselect",values:"queues",value:"queue.name",option:"queue.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Url",name:"URL",type:"text",param:2},{title:"Announce_Overrides",name:"sound",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}'",option:"sound.name",defaultValues:[{value:"''",option:"None"}],param:3},{title:"Timeout",name:"timeout",type:"number",min:0,param:4},{title:"Agi",name:"agi",type:"text",param:5},{title:"Macro",name:"macro",type:"text",param:6},{title:"GoSub",name:"gosub",type:"text",param:7},{title:"Rule",name:"rule",type:"text",param:8},{title:"Position",name:"position",type:"number",min:0,param:9},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Playback",appType:"playback",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"sounds",route:"sound",filters:{fields:"name,save_name",sort:"name"}}],fields:[{title:"Audio_Files",name:"appdata",type:"apiselect",values:"sounds",value:"'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}'",option:"appdata.name",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1},{title:"Answer",name:"answer",type:"switch",general:!0}]},{app:"Dial",appType:"dial",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!1,fields:[{title:"Technology/Resource",name:"tech",type:"text",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"internalDial",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!1,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"user",type:"apiselect",values:"users",value:"'SIP/{{user.name}}'",option:"user.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"externalDial",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!1,extraApi:[{name:"trunks",route:"trunk",filters:{fields:"name",sort:"name"}}],fields:[{title:"Trunk",name:"trunk",type:"apiselect",values:"trunks",value:"trunk.name",option:"trunk.name",required:!0,param:0},{title:"Phone",name:"phone",type:"text"},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"Dial",appType:"ringGroup",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!1,extraApi:[{name:"users",route:"user",filters:{fields:"name",sort:"name"}}],fields:[{title:"User",name:"multipleUsers",type:"apiselect",multiple:!0,values:"users",value:"'SIP/{{multipleUsers.name}}'",option:"multipleUsers.name",required:!0,param:0},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:"AGI",appType:"agi",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"projects",route:"squareProject",filters:{fields:"name",sort:"name"}}],fields:[{title:"Project",name:"project",type:"apiselect",values:"projects",value:"'agi://127.0.0.1/square,{{project.name}}'",option:"project.name",required:!0,param:0}]},{app:"goto",appType:"goTo",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"contexts",route:"voiceContext",filters:{fields:"name",sort:"name"}}],fields:[{title:"Context",name:"context",type:"apiselect",values:"contexts",value:"context.name",option:"context.name",required:!0,param:0},{title:"Extension",name:"extension",type:"text",required:!0,param:1},{title:"Priority",name:"priority",type:"text",required:!0,param:2}]},{app:"hangup",appType:"hangup",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,fields:[{title:"Hangup_Cause",name:"appdata",type:"select",param:0,values:[{option:"HANGUPCAUSE_1",value:"'1'"},{option:"HANGUPCAUSE_16",value:"'16'"},{option:"HANGUPCAUSE_17",value:"'17'"},{option:"HANGUPCAUSE_18",value:"'18'"},{option:"HANGUPCAUSE_21",value:"'21'"},{option:"HANGUPCAUSE_22",value:"'22'"},{option:"HANGUPCAUSE_27",value:"'27'"},{option:"HANGUPCAUSE_38",value:"'38'"},{option:"HANGUPCAUSE_41",value:"'41'"}],translate:!0,required:!0,general:!0}]},{app:"Set",appType:"set",context:"from-sip",type:"Outbound",separator:"=",icon:"icon-apps",interval:"*,*,*,*",isApp:!1,fields:[{title:"Variable",name:"name",type:"text",required:!0,param:0},{title:"Value",name:"value",type:"text",required:!0,param:1}]},{app:"Voicemail",appType:"voicemail",context:"from-sip",icon:"icon-apps",type:"Outbound",interval:"*,*,*,*",isApp:!1,extraApi:[{name:"voiceMails",route:"voiceMail",filters:{fields:"mailbox",sort:"mailbox"}}],fields:[{title:"Mailbox@Context",name:"voiceMail",type:"apiselect",values:"voiceMails",value:"'{{voiceMail.mailbox}}@from-voicemail'",option:"voiceMail.mailbox",required:!0,param:0},{title:"Options",name:"options",type:"text",param:1}]},{app:"Dial",appType:"outboundDial",context:"from-sip",type:"Outbound",icon:"icon-apps",interval:"*,*,*,*",options:"xX",isApp:!0,extraApi:[{name:"trunks",route:"trunk",filters:{fields:"name",sort:"name"}},{name:"tags",route:"tag",filters:{fields:"name",sort:"name"}}],fields:[{title:"Trunk",name:"trunk",type:"apiselect",values:"trunks",value:"trunk.name",option:"trunk.name",required:!0,param:0},{title:"Caller_ID",name:"callerID",type:"text"},{title:"Prefix",name:"prefix",type:"text"},{title:"CutDigits",name:"cutdigits",type:"number",min:0},{title:"Recording",name:"recordingFormat",type:"select",values:[{option:"none",value:"'none'"},{option:"wav",value:"'wav'"},{option:"gsm",value:"'gsm'"}],defaultValue:"none",required:!0,general:!0,help:!0},{title:"Tags",name:"tag",type:"apiselect",values:"tags",value:"tag.name",option:"tag.name",defaultValues:[{value:"'--'",option:"None"}]},{title:"Timeout",name:"timeout",type:"number",min:0,param:1},{title:"Options",name:"options",type:"text",param:2},{title:"Url",name:"url",type:"text",param:3}]},{app:null,type:"Outbound",appType:"Custom",icon:"icon-apps",interval:"*,*,*,*",isApp:!0,fields:[{title:"Application_Name",name:"app",type:"text",required:!0,param:0},{title:"Arguments",name:"appdata",type:"text",param:1}]}],["app"]),{isApp:!1}),g.list={group:{name:"opt1",pull:"clone"},animation:100,sort:!1},g.applications={group:{name:"opt2",put:"opt1"},animation:100,onAdd:function(e){s(e,e.newIndex)},onSort:function(e){l()}},g.init=i,g.deleteConfirm=o,g.getOutboundRouteApps=m,g.editOutboundRouteApp=s,g.editInterval=r,g.deleteOutboundRouteApp=u,g.deleteSelectedOutboundRouteApps=p,g.rewriteRouting=l,g.getIntervals=c}e.$inject=["api","$mdDialog","$document","toasty"],angular.module("app.voice").controller("OutboundRouteActionsController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.agi.type.toLowerCase()&&"outboundDial"===s.agi.appType&&(s.agi.phone=s.agi.cutdigits?(s.agi.prefix||"")+"${EXTEN:"+s.agi.cutdigits+"}":(s.agi.prefix||"")+"${EXTEN}",s.agi.record="none"!==s.agi.recordingFormat,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:null),s.agi.appType.toLowerCase()){case"set":s.agi.appdata=s.agi.name+"="+s.agi.value;break;case"custom":break;default:e[0]=s.agi.project,s.agi.appdata=e.join(",")}o(s.agi)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.agi=angular.copy(n),s.agi.appdata)switch(s.agi.appType?s.agi.appType.toLowerCase():s.agi.app.toLowerCase()){case"custom":break;case"set":s.agi.name=s.agi.appdata.split("=")[0],s.agi.value=s.agi.appdata.split("=")[1];break;case"agi":s.agi.project=s.agi.appdata;break;default:var r=s.agi.appdata.split(",");s.agi.project=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.agi.type.toLowerCase()&&"outbounddial"===s.agi.appType.toLowerCase()&&(s.agi.prefix=s.agi.phone?s.agi.phone.split("$")[0]:void 0,s.agi.callerId=s.agi.callerID?"CALLERID(all)="+s.agi.callerID:void 0,s.agi.recordingFormat=s.agi.record?s.agi.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.squareProject.get({fields:"name",sort:"name"}).$promise.then(function(e){s.projects=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETprojects",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppagiDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.custom.type.toLowerCase()&&"outboundDial"===s.custom.appType&&(s.custom.phone=s.custom.cutdigits?(s.custom.prefix||"")+"${EXTEN:"+s.custom.cutdigits+"}":(s.custom.prefix||"")+"${EXTEN}",s.custom.record="none"!==s.custom.recordingFormat,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:null),s.custom.appType.toLowerCase()){case"set":s.custom.appdata=s.custom.name+"="+s.custom.value;break;case"custom":break;default:e[0]=s.custom.app,e[1]=s.custom.appdata,s.custom.appdata=e.join(",")}o(s.custom)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.custom=angular.copy(n),s.custom.appdata)switch(s.custom.appType?s.custom.appType.toLowerCase():s.custom.app.toLowerCase()){case"custom":break;case"set":s.custom.name=s.custom.appdata.split("=")[0],s.custom.value=s.custom.appdata.split("=")[1];break;case"agi":s.custom.project=s.custom.appdata;break;default:var r=s.custom.appdata.split(",");s.custom.app=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.custom.appdata=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.custom.type.toLowerCase()&&"outbounddial"===s.custom.appType.toLowerCase()&&(s.custom.prefix=s.custom.phone?s.custom.phone.split("$")[0]:void 0,s.custom.callerId=s.custom.callerID?"CALLERID(all)="+s.custom.callerID:void 0,s.custom.recordingFormat=s.custom.record?s.custom.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppcustomDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.dial.type.toLowerCase()&&"outboundDial"===s.dial.appType&&(s.dial.phone=s.dial.cutdigits?(s.dial.prefix||"")+"${EXTEN:"+s.dial.cutdigits+"}":(s.dial.prefix||"")+"${EXTEN}",s.dial.record="none"!==s.dial.recordingFormat,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:null),s.dial.appType.toLowerCase()){case"set":s.dial.appdata=s.dial.name+"="+s.dial.value;break;case"custom":break;default:e[0]=s.dial.tech,e[1]=s.dial.timeout,e[2]=s.dial.options,e[3]=s.dial.url,s.dial.appdata=e.join(",")}o(s.dial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.dial=angular.copy(n),s.dial.appdata)switch(s.dial.appType?s.dial.appType.toLowerCase():s.dial.app.toLowerCase()){case"custom":break;case"set":s.dial.name=s.dial.appdata.split("=")[0],s.dial.value=s.dial.appdata.split("=")[1];break;case"agi":s.dial.project=s.dial.appdata;break;default:var r=s.dial.appdata.split(",");s.dial.tech=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.dial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.dial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.dial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.dial.type.toLowerCase()&&"outbounddial"===s.dial.appType.toLowerCase()&&(s.dial.prefix=s.dial.phone?s.dial.phone.split("$")[0]:void 0,s.dial.callerId=s.dial.callerID?"CALLERID(all)="+s.dial.callerID:void 0,s.dial.recordingFormat=s.dial.record?s.dial.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppdialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.externaldial.type.toLowerCase()&&"outboundDial"===s.externaldial.appType&&(s.externaldial.phone=s.externaldial.cutdigits?(s.externaldial.prefix||"")+"${EXTEN:"+s.externaldial.cutdigits+"}":(s.externaldial.prefix||"")+"${EXTEN}",s.externaldial.record="none"!==s.externaldial.recordingFormat,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:null),s.externaldial.appType.toLowerCase()){case"set":s.externaldial.appdata=s.externaldial.name+"="+s.externaldial.value;break;case"custom":break;default:e[0]=["SIP",s.externaldial.trunk,s.externaldial.phone].join("/"),e[1]=s.externaldial.timeout,e[2]=s.externaldial.options,e[3]=s.externaldial.url,s.externaldial.appdata=e.join(",")}o(s.externaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.externaldial=angular.copy(n),s.externaldial.appdata)switch(s.externaldial.appType?s.externaldial.appType.toLowerCase():s.externaldial.app.toLowerCase()){case"custom":break;case"set":s.externaldial.name=s.externaldial.appdata.split("=")[0],s.externaldial.value=s.externaldial.appdata.split("=")[1];break;case"agi":s.externaldial.project=s.externaldial.appdata;break;default:var r=s.externaldial.appdata.split(",");s.externaldial.trunk=r[0].split("/")[1],s.externaldial.phone=r[0].split("/")[2],s.externaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.externaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.externaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.externaldial.type.toLowerCase()&&"outbounddial"===s.externaldial.appType.toLowerCase()&&(s.externaldial.prefix=s.externaldial.phone?s.externaldial.phone.split("$")[0]:void 0,s.externaldial.callerId=s.externaldial.callerID?"CALLERID(all)="+s.externaldial.callerID:void 0,s.externaldial.recordingFormat=s.externaldial.record?s.externaldial.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.trunk.get({fields:"name",sort:"name"}).$promise.then(function(e){s.trunks=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppexternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.goto.type.toLowerCase()&&"outboundDial"===s.goto.appType&&(s.goto.phone=s.goto.cutdigits?(s.goto.prefix||"")+"${EXTEN:"+s.goto.cutdigits+"}":(s.goto.prefix||"")+"${EXTEN}",s.goto.record="none"!==s.goto.recordingFormat,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:null),s.goto.appType.toLowerCase()){case"set":s.goto.appdata=s.goto.name+"="+s.goto.value;break;case"custom":break;default:e[0]=s.goto.context,e[1]=s.goto.extension,e[2]=s.goto.priority,s.goto.appdata=e.join(",")}o(s.goto)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.goto=angular.copy(n),s.goto.appdata)switch(s.goto.appType?s.goto.appType.toLowerCase():s.goto.app.toLowerCase()){case"custom":break;case"set":s.goto.name=s.goto.appdata.split("=")[0],s.goto.value=s.goto.appdata.split("=")[1];break;case"agi":s.goto.project=s.goto.appdata;break;default:var r=s.goto.appdata.split(",");s.goto.context=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.goto.extension=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.goto.priority=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10)}"outbound"===s.goto.type.toLowerCase()&&"outbounddial"===s.goto.appType.toLowerCase()&&(s.goto.prefix=s.goto.phone?s.goto.phone.split("$")[0]:void 0,s.goto.callerId=s.goto.callerID?"CALLERID(all)="+s.goto.callerID:void 0,s.goto.recordingFormat=s.goto.record?s.goto.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){s.contexts=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppgotoDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.hangup.type.toLowerCase()&&"outboundDial"===s.hangup.appType&&(s.hangup.phone=s.hangup.cutdigits?(s.hangup.prefix||"")+"${EXTEN:"+s.hangup.cutdigits+"}":(s.hangup.prefix||"")+"${EXTEN}",s.hangup.record="none"!==s.hangup.recordingFormat,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:null),s.hangup.appType.toLowerCase()){case"set":s.hangup.appdata=s.hangup.name+"="+s.hangup.value;break;case"custom":break;default:e[0]=s.hangup.appdata,s.hangup.appdata=e.join(",")}o(s.hangup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.hangup=angular.copy(n),s.hangup.appdata)switch(s.hangup.appType?s.hangup.appType.toLowerCase():s.hangup.app.toLowerCase()){case"custom":break;case"set":s.hangup.name=s.hangup.appdata.split("=")[0],s.hangup.value=s.hangup.appdata.split("=")[1];break;case"agi":s.hangup.project=s.hangup.appdata;break;default:var r=s.hangup.appdata.split(",");s.hangup.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10)}"outbound"===s.hangup.type.toLowerCase()&&"outbounddial"===s.hangup.appType.toLowerCase()&&(s.hangup.prefix=s.hangup.phone?s.hangup.phone.split("$")[0]:void 0,s.hangup.callerId=s.hangup.callerID?"CALLERID(all)="+s.hangup.callerID:void 0,s.hangup.recordingFormat=s.hangup.record?s.hangup.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteApphangupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.internaldial.type.toLowerCase()&&"outboundDial"===s.internaldial.appType&&(s.internaldial.phone=s.internaldial.cutdigits?(s.internaldial.prefix||"")+"${EXTEN:"+s.internaldial.cutdigits+"}":(s.internaldial.prefix||"")+"${EXTEN}",s.internaldial.record="none"!==s.internaldial.recordingFormat,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:null),s.internaldial.appType.toLowerCase()){case"set":s.internaldial.appdata=s.internaldial.name+"="+s.internaldial.value;break;case"custom":break;default:e[0]=s.internaldial.user,e[1]=s.internaldial.timeout,e[2]=s.internaldial.options,e[3]=s.internaldial.url,s.internaldial.appdata=e.join(",")}o(s.internaldial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.internaldial=angular.copy(n),s.internaldial.appdata)switch(s.internaldial.appType?s.internaldial.appType.toLowerCase():s.internaldial.app.toLowerCase()){case"custom":break;case"set":s.internaldial.name=s.internaldial.appdata.split("=")[0],s.internaldial.value=s.internaldial.appdata.split("=")[1];break;case"agi":s.internaldial.project=s.internaldial.appdata;break;default:var r=s.internaldial.appdata.split(",");s.internaldial.user=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.internaldial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.internaldial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.internaldial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.internaldial.type.toLowerCase()&&"outbounddial"===s.internaldial.appType.toLowerCase()&&(s.internaldial.prefix=s.internaldial.phone?s.internaldial.phone.split("$")[0]:void 0,s.internaldial.callerId=s.internaldial.callerID?"CALLERID(all)="+s.internaldial.callerID:void 0,s.internaldial.recordingFormat=s.internaldial.record?s.internaldial.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppinternaldialDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){switch(u.type){case"always":case"list":return"*,*,*,*";case"custom":var e=[];if("*"!==u.timeRangeFrom&&u.timeRangeFrom&&u.timeRangeTo){var t=(u.timeRangeFrom.getHours()<10?"0":"")+u.timeRangeFrom.getHours()+":"+(u.timeRangeFrom.getMinutes()<10?"0":"")+u.timeRangeFrom.getMinutes(),n=(u.timeRangeTo.getHours()<10?"0":"")+u.timeRangeTo.getHours()+":"+(u.timeRangeTo.getMinutes()<10?"0":"")+u.timeRangeTo.getMinutes();e.push(t+"-"+n)}else e.push("*");return u.dayOfWeekFrom&&u.dayOfWeekTo?e.push(u.dayOfWeekFrom+"-"+u.dayOfWeekTo):e.push("*"),u.monthDayFrom&&u.monthDayTo?e.push(u.monthDayFrom+"-"+u.monthDayTo):e.push("*"),u.monthFrom&&u.monthTo?e.push(u.monthFrom+"-"+u.monthTo):e.push("*"),e.join()}}function d(){u.errors=[],u.interval.interval=l(),r.interval.save(u.interval).$promise.then(function(e){u.intervals.push(e),s.success({title:"Interval properly created",msg:u.interval.name?u.interval.name+" has been created!":""}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.save"}]})}function c(){u.errors=[],u.interval.interval=l(),u.interval.application?("list"!==u.type&&(u.interval.IntervalId=null),m(u.interval)):r.interval.update({id:u.interval.id},u.interval).$promise.then(function(e){var t=_.find(u.intervals,{id:e.id});t&&_.merge(t,e),s.success({title:"Interval properly saved!",msg:"Interval has been saved!"}),m()}).catch(function(e){console.error(e),u.errors=e.data.errors||[{message:e.toString(),type:"api.interval.update"}]})}function m(e){t.hide(e)}var u=this;if(u.errors=[],u.title="TOOLS.EDIT_INTERVAL",u.interval=angular.copy(i),u.intervals=o,u.newInterval=!1,u.types=["always","custom","list"],u.daysOfWeek=a.getDaysOfWeek(),u.monthNumber=a.getMonthNumber(),u.monthName=a.getMonthName(),u.daysOfMonth=a.getDaysOfMonth(),u.interval)if("*,*,*,*"!==u.interval.interval){u.type="custom";var p=u.interval.interval.split(","),g=p[0],h=p[1],v=p[2],b=p[3];if("*"!==g){var f,E=g.split("-")[0],y=g.split("-")[1];(f=new Date).setHours(Number(E.split(":")[0])),f.setMinutes(Number(E.split(":")[1])),u.timeRangeFrom=f,(f=new Date).setHours(Number(y.split(":")[0])),f.setMinutes(Number(y.split(":")[1])),u.timeRangeTo=f}"*"!==h&&(u.dayOfWeekFrom=h.split("-")[0],u.dayOfWeekTo=h.split("-")[1]),"*"!==v&&(u.monthDayFrom=v.split("-")[0],u.monthDayTo=v.split("-")[1]),"*"!==b&&(u.monthFrom=b.split("-")[0],u.monthTo=b.split("-")[1])}else u.type="always";else u.interval={interval:"*,*,*,*"},u.type="always",u.title="TOOLS.NEW_INTERVAL",u.newInterval=!0;e.params.id&&!u.interval.application&&(u.interval.IntervalId=e.params.id),u.interval.IntervalId&&u.interval.application&&(u.type="list"),u.addNewInterval=d,u.saveInterval=c,u.closeDialog=m,u.interval.application&&r.interval.get({fields:"id,name,interval,IntervalId",IntervalId:"null",nolimit:!0}).$promise.then(function(e){u.intervals=e}).catch(function(e){console.error(e)})}e.$inject=["$state","$mdDialog","$mdToast","IndexFactory","interval","intervals","toasty","api"],angular.module("app.voice").controller("EditOutboundRouteAppintervalDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.outbounddial.type.toLowerCase()&&"outboundDial"===s.outbounddial.appType&&(s.outbounddial.phone=s.outbounddial.cutdigits?(s.outbounddial.prefix||"")+"${EXTEN:"+s.outbounddial.cutdigits+"}":(s.outbounddial.prefix||"")+"${EXTEN}",s.outbounddial.record="none"!==s.outbounddial.recordingFormat,s.outbounddial.recordingFormat=s.outbounddial.record?s.outbounddial.recordingFormat:null),s.outbounddial.appType.toLowerCase()){case"set":s.outbounddial.appdata=s.outbounddial.name+"="+s.outbounddial.value;break;case"custom":break;default:e[0]=["SIP",s.outbounddial.trunk,s.outbounddial.phone].join("/"),e[1]=s.outbounddial.timeout,e[2]=s.outbounddial.options,e[3]=s.outbounddial.url,s.outbounddial.appdata=e.join(",")}o(s.outbounddial)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.outbounddial=angular.copy(n),s.outbounddial.appdata)switch(s.outbounddial.appType?s.outbounddial.appType.toLowerCase():s.outbounddial.app.toLowerCase()){case"custom":break;case"set":s.outbounddial.name=s.outbounddial.appdata.split("=")[0],s.outbounddial.value=s.outbounddial.appdata.split("=")[1];break;case"agi":s.outbounddial.project=s.outbounddial.appdata;break;default:var r=s.outbounddial.appdata.split(",");s.outbounddial.trunk=r[0].split("/")[1],s.outbounddial.phone=r[0].split("/")[2],s.outbounddial.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.outbounddial.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.outbounddial.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.outbounddial.type.toLowerCase()&&"outbounddial"===s.outbounddial.appType.toLowerCase()&&(s.outbounddial.prefix=s.outbounddial.phone?s.outbounddial.phone.split("$")[0]:void 0,s.outbounddial.callerId=s.outbounddial.callerID?"CALLERID(all)="+s.outbounddial.callerID:void 0,s.outbounddial.recordingFormat=s.outbounddial.record?s.outbounddial.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.trunk.get({fields:"name",sort:"name"}).$promise.then(function(e){s.trunks=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtrunks",msg:e.data?JSON.stringify(e.data):e.toString()})}),a.tag.get({fields:"name",sort:"name"}).$promise.then(function(e){s.tags=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETtags",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppoutbounddialDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.playback.type.toLowerCase()&&"outboundDial"===s.playback.appType&&(s.playback.phone=s.playback.cutdigits?(s.playback.prefix||"")+"${EXTEN:"+s.playback.cutdigits+"}":(s.playback.prefix||"")+"${EXTEN}",s.playback.record="none"!==s.playback.recordingFormat,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:null),s.playback.appType.toLowerCase()){case"set":s.playback.appdata=s.playback.name+"="+s.playback.value;break;case"custom":break;default:e[0]=s.playback.appdata,e[1]=s.playback.options,s.playback.appdata=e.join(",")}o(s.playback)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.playback=angular.copy(n),s.playback.appdata)switch(s.playback.appType?s.playback.appType.toLowerCase():s.playback.app.toLowerCase()){case"custom":break;case"set":s.playback.name=s.playback.appdata.split("=")[0],s.playback.value=s.playback.appdata.split("=")[1];break;case"agi":s.playback.project=s.playback.appdata;break;default:var r=s.playback.appdata.split(",");s.playback.appdata=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.playback.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.playback.type.toLowerCase()&&"outbounddial"===s.playback.appType.toLowerCase()&&(s.playback.prefix=s.playback.phone?s.playback.phone.split("$")[0]:void 0,s.playback.callerId=s.playback.callerID?"CALLERID(all)="+s.playback.callerID:void 0,s.playback.recordingFormat=s.playback.record?s.playback.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppplaybackDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.queue.type.toLowerCase()&&"outboundDial"===s.queue.appType&&(s.queue.phone=s.queue.cutdigits?(s.queue.prefix||"")+"${EXTEN:"+s.queue.cutdigits+"}":(s.queue.prefix||"")+"${EXTEN}",s.queue.record="none"!==s.queue.recordingFormat,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:null),s.queue.appType.toLowerCase()){case"set":s.queue.appdata=s.queue.name+"="+s.queue.value;break;case"custom":break;default:e[0]=s.queue.queue,e[1]=s.queue.options,e[2]=s.queue.URL,e[3]=s.queue.sound,e[4]=s.queue.timeout,e[5]=s.queue.agi,e[6]=s.queue.macro,e[7]=s.queue.gosub,e[8]=s.queue.rule,e[9]=s.queue.position,s.queue.appdata=e.join(",")}o(s.queue)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.queue=angular.copy(n),s.queue.appdata)switch(s.queue.appType?s.queue.appType.toLowerCase():s.queue.app.toLowerCase()){case"custom":break;case"set":s.queue.name=s.queue.appdata.split("=")[0],s.queue.value=s.queue.appdata.split("=")[1];break;case"agi":s.queue.project=s.queue.appdata;break;default:var r=s.queue.appdata.split(",");s.queue.queue=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.queue.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.queue.URL=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.queue.sound=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10),s.queue.timeout=_.isEmpty(r[4])?r[4]:isNaN(r[4])?r[4]:parseInt(r[4],10),s.queue.agi=_.isEmpty(r[5])?r[5]:isNaN(r[5])?r[5]:parseInt(r[5],10),s.queue.macro=_.isEmpty(r[6])?r[6]:isNaN(r[6])?r[6]:parseInt(r[6],10),s.queue.gosub=_.isEmpty(r[7])?r[7]:isNaN(r[7])?r[7]:parseInt(r[7],10),s.queue.rule=_.isEmpty(r[8])?r[8]:isNaN(r[8])?r[8]:parseInt(r[8],10),s.queue.position=_.isEmpty(r[9])?r[9]:isNaN(r[9])?r[9]:parseInt(r[9],10)}"outbound"===s.queue.type.toLowerCase()&&"outbounddial"===s.queue.appType.toLowerCase()&&(s.queue.prefix=s.queue.phone?s.queue.phone.split("$")[0]:void 0,s.queue.callerId=s.queue.callerID?"CALLERID(all)="+s.queue.callerID:void 0,s.queue.recordingFormat=s.queue.record?s.queue.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.sound.get({fields:"name,save_name",sort:"name"}).$promise.then(function(e){s.sounds=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})}),a.voiceQueue.get({type:"inbound",fields:"id,name,type",sort:"name",nolimit:"true"}).$promise.then(function(e){s.queues=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETqueues",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppqueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.ringgroup.type.toLowerCase()&&"outboundDial"===s.ringgroup.appType&&(s.ringgroup.phone=s.ringgroup.cutdigits?(s.ringgroup.prefix||"")+"${EXTEN:"+s.ringgroup.cutdigits+"}":(s.ringgroup.prefix||"")+"${EXTEN}",s.ringgroup.record="none"!==s.ringgroup.recordingFormat,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:null),s.ringgroup.appType.toLowerCase()){case"set":s.ringgroup.appdata=s.ringgroup.name+"="+s.ringgroup.value;break;case"custom":break;default:e[0]=s.ringgroup.multipleUsers.join("&"),e[1]=s.ringgroup.timeout,e[2]=s.ringgroup.options,e[3]=s.ringgroup.url,s.ringgroup.appdata=e.join(",")}o(s.ringgroup)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.ringgroup=angular.copy(n),s.ringgroup.appdata)switch(s.ringgroup.appType?s.ringgroup.appType.toLowerCase():s.ringgroup.app.toLowerCase()){case"custom":break;case"set":s.ringgroup.name=s.ringgroup.appdata.split("=")[0],s.ringgroup.value=s.ringgroup.appdata.split("=")[1];break;case"agi":s.ringgroup.project=s.ringgroup.appdata;break;default:var r=s.ringgroup.appdata.split(",");s.ringgroup.multipleUsers=r[0].split("&"),s.ringgroup.timeout=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10),s.ringgroup.options=_.isEmpty(r[2])?r[2]:isNaN(r[2])?r[2]:parseInt(r[2],10),s.ringgroup.url=_.isEmpty(r[3])?r[3]:isNaN(r[3])?r[3]:parseInt(r[3],10)}"outbound"===s.ringgroup.type.toLowerCase()&&"outbounddial"===s.ringgroup.appType.toLowerCase()&&(s.ringgroup.prefix=s.ringgroup.phone?s.ringgroup.phone.split("$")[0]:void 0,s.ringgroup.callerId=s.ringgroup.callerID?"CALLERID(all)="+s.ringgroup.callerID:void 0,s.ringgroup.recordingFormat=s.ringgroup.record?s.ringgroup.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.user.get({fields:"name",sort:"name"}).$promise.then(function(e){s.users=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETusers",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppringgroupDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.set.type.toLowerCase()&&"outboundDial"===s.set.appType&&(s.set.phone=s.set.cutdigits?(s.set.prefix||"")+"${EXTEN:"+s.set.cutdigits+"}":(s.set.prefix||"")+"${EXTEN}",s.set.record="none"!==s.set.recordingFormat,s.set.recordingFormat=s.set.record?s.set.recordingFormat:null),s.set.appType.toLowerCase()){case"set":s.set.appdata=s.set.name+"="+s.set.value;break;case"custom":break;default:e[0]=s.set.name,e[1]=s.set.value,s.set.appdata=e.join("=")}o(s.set)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.set=angular.copy(n),s.set.appdata)switch(s.set.appType?s.set.appType.toLowerCase():s.set.app.toLowerCase()){case"custom":break;case"set":s.set.name=s.set.appdata.split("=")[0],s.set.value=s.set.appdata.split("=")[1];break;case"agi":s.set.project=s.set.appdata;break;default:var r=s.set.appdata.split("=");s.set.name=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.set.value=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.set.type.toLowerCase()&&"outbounddial"===s.set.appType.toLowerCase()&&(s.set.prefix=s.set.phone?s.set.phone.split("$")[0]:void 0,s.set.callerId=s.set.callerID?"CALLERID(all)="+s.set.callerID:void 0,s.set.recordingFormat=s.set.record?s.set.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppsetDialogController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[];var e=[];switch("outbound"===s.voicemail.type.toLowerCase()&&"outboundDial"===s.voicemail.appType&&(s.voicemail.phone=s.voicemail.cutdigits?(s.voicemail.prefix||"")+"${EXTEN:"+s.voicemail.cutdigits+"}":(s.voicemail.prefix||"")+"${EXTEN}",s.voicemail.record="none"!==s.voicemail.recordingFormat,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:null),s.voicemail.appType.toLowerCase()){case"set":s.voicemail.appdata=s.voicemail.name+"="+s.voicemail.value;break;case"custom":break;default:e[0]=s.voicemail.voiceMail,e[1]=s.voicemail.options,s.voicemail.appdata=e.join(",")}o(s.voicemail)}function o(t){e.hide(t)}var s=this;if(s.errors=[],s.title="VOICE.EDIT_"+(n.appType||n.app).toUpperCase(),s.voicemail=angular.copy(n),s.voicemail.appdata)switch(s.voicemail.appType?s.voicemail.appType.toLowerCase():s.voicemail.app.toLowerCase()){case"custom":break;case"set":s.voicemail.name=s.voicemail.appdata.split("=")[0],s.voicemail.value=s.voicemail.appdata.split("=")[1];break;case"agi":s.voicemail.project=s.voicemail.appdata;break;default:var r=s.voicemail.appdata.split(",");s.voicemail.voiceMail=_.isEmpty(r[0])?r[0]:isNaN(r[0])?r[0]:parseInt(r[0],10),s.voicemail.options=_.isEmpty(r[1])?r[1]:isNaN(r[1])?r[1]:parseInt(r[1],10)}"outbound"===s.voicemail.type.toLowerCase()&&"outbounddial"===s.voicemail.appType.toLowerCase()&&(s.voicemail.prefix=s.voicemail.phone?s.voicemail.phone.split("$")[0]:void 0,s.voicemail.callerId=s.voicemail.callerID?"CALLERID(all)="+s.voicemail.callerID:void 0,s.voicemail.recordingFormat=s.voicemail.record?s.voicemail.recordingFormat:"none"),s.saveOutboundRouteApp=i,s.closeDialog=o,a.voiceMail.get({fields:"mailbox",sort:"mailbox"}).$promise.then(function(e){s.voiceMails=e.rows||[]}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMails",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","outboundrouteApp","api"],angular.module("app.voice").controller("EditOutboundRouteAppvoicemailDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.outboundroutes")}function r(){i.voiceExtension.update({id:l.outboundroute.id},l.outboundroute).$promise.then(function(){a.success({title:"OutboundRoute updated!",msg:l.outboundroute.name?l.outboundroute.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.outboundroute=e.params.outboundroute||o||{},l.selectedTab=e.params.tab||0,l.gotoOutboundRoutes=s,l.saveOutboundRoute=r,i.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","outboundroute"],angular.module("app.voice").controller("OutboundRouteController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.outboundroutes.edit",{id:e.id,outboundroute:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the outboundroute?").htmlContent("<b>"+(e.name||"outboundroute")+"</b> will be deleted.").ariaLabel("delete outboundroute").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.outboundroutes=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceExtension.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditOutboundRouteDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/outboundroutes/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{outboundroute:t,outboundroutes:A.outboundroutes.rows}})}function v(e){l.voiceExtension.delete({id:e.id}).$promise.then(function(){_.remove(A.outboundroutes.rows,{id:e.id}),A.outboundroutes.count-=1,A.outboundroutes.rows.length||A.getOutboundRoutes(),c.success({title:"OutboundRoute deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceExtension",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedOutboundRoutes);return A.selectedOutboundRoutes=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected outboundroutes?").htmlContent("<b>"+A.selectedOutboundRoutes.length+" selected</b> will be deleted.").ariaLabel("delete OutboundRoutes").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedOutboundRoutes.forEach(function(e){v(e)}),A.selectedOutboundRoutes=[]})}function E(){A.selectedOutboundRoutes=[]}function y(){A.selectedOutboundRoutes=A.outboundroutes.rows}var A=this;A.outboundroutes=r||{count:0,rows:[]},A.table="outboundroutes",A.listOrder="",A.listOrderAsc=null,A.selectedOutboundRoutes=[],A.query={fields:"createdAt,updatedAt,id,appdata,type,exten,context,description",type:"Outbound",sort:"-updatedAt",VoiceExtensionId:"null",limit:10,page:1},A.editstate=m,A.deleteconfirm=u,A.success=p,A.getOutboundRoutes=g,A.createOrEditOutboundRoute=h,A.deleteOutboundRoute=v,A.exportSelectedOutboundRoutes=b,A.deleteSelectedOutboundRoutes=f,A.deselectOutboundRoutes=E,A.selectAllOutboundRoutes=y,l.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){A.contexts=_.keyBy(e.rows||[],"id")}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})});var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getOutboundRoutes())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","outboundroutes","api","msUtils","toasty"],angular.module("app.voice").controller("OutboundRoutesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){_.forIn(A.agents,function(e,t){A.rpcAgents[t]&&_.merge(e,_.pick(A.rpcAgents[t],C))})}function u(e,t){return r.user.logout({id:e.id}).$promise.then(function(){d.success({title:"Agent logout",msg:e.fullname+"  properly logout"})}).catch(function(e){d.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.staff.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function p(e,t){n.show({controller:"AgentqueueaddController",controllerAs:"vm",templateUrl:"app/main/apps/staff/views/agents/edit/queueadd/queueadd.html",parent:angular.element(a.body),targetEvent:t,clickOutsideToClose:!0,locals:{agent:e,agents:[],channel:"voice",realtime:!0,direction:"inbound"}})}function g(e,t){return r.user.pause({id:e.id,type:t})}function h(e){return r.user.unpause({id:e.id})}function v(e){return _.includes(A.availableStates,e)}function b(e){A.agents[e.id]&&_.merge(A.agents[e.id],_.pick(e,C))}function f(e){n.show(n.alert().clickOutsideToClose(!0).title("Legend").htmlContent("<div>TODO legend status + state</div>").ok("Ok").targetEvent(e))}function E(e){A.count=e.count,A.agents=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function y(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=r.user.get(A.query,E).$promise}var A=this,C=["userpic","online","voicePause","lastLoginAt","lastPauseAt","pauseType","internal","state","stateTime","status","address"];A.availableStates=["ringing","inuse","busy","onhold","not_inuse"],A.pauses=i||{count:0,rows:[]},A.count=o.count,A.agents=o?_.keyBy(o.rows?o.rows:[],"id"):{},A.rpcAgents=s?_.keyBy(s.rows?s.rows:[],"id"):{},A.query={fields:"id,fullname,userpic,role,internal,online,voicePause,pauseType,lastLoginAt",role:"agent",sort:"-updatedAt",limit:10,page:1},A.statusClass=c.status,A.stateClass=c.state,A.pause=g,A.unPause=h,A.onSave=b,A.$onInit=m,A.success=E,A.showInfo=f,A.queueAdd=p,A.getAgents=y,A.isAvailableState=v,A.logout=u,l.on("user:save",A.onSave),l.on("user:update",A.onSave);var x=!0,T=1;e.$watch("vm.query.filter",function(e,n){x?t(function(){x=!1}):(n||(T=A.query.page),e!==n&&(A.query.page=1),e||(A.query.page=T),A.getAgents())}),e.$on("$destroy",function(){l.removeAllListeners("user:save"),l.removeAllListeners("user:update")})}e.$inject=["$scope","$timeout","$mdDialog","$document","pauses","agents","rpcAgents","api","socket","toasty","helperClasses"],angular.module("app.voice").controller("AgentsVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e){var t=_.find(l.calls.rows,{channel:e.channel});e.channelstatedesc=e.answered?"up":"ring",t?_.merge(t,e):l.calls.rows.push(e)}function r(e){var n=_.findIndex(l.calls.rows,{channel:e.channel});n>=0&&(l.calls.rows[n].status="hangup"),t(function(){l.calls.rows.splice(n,1)},5e3)}var l=this;l.calls=i||{rows:[],count:0},l.query={limit:10,page:1,limitOptions:[10,20,30]},l.channelStatus=o.channelStatusOut,l.onSave=s,l.onRemove=r,a.on("voice_outbound_channel:save",l.onSave),a.on("voice_outbound_channel:remove",l.onRemove),e.$on("$destroy",function(){a.removeAllListeners("voice_outbound_channel:save"),a.removeAllListeners("voice_outbound_channel:remove")})}e.$inject=["$scope","$timeout","api","socket","rpcCalls","helperClasses"],angular.module("app.voice").controller("OutboundCallsVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l){function d(e){return o.rpc.getVoiceQueuesChannelHangup({uniqueid:e}).$promise.then(function(t){l.success({title:"Channel "+e+" properly hangup!",msg:t.message||""})}).catch(function(e){console.error(e)})}function c(e,t){return o.rpc.getVoiceQueuesChannelRedirect({uniqueid:e,exten:t}).$promise.then(function(t){l.success({title:"Channel "+e+" properly redirect!",msg:t.message||""})}).catch(function(e){console.error(e)})}function m(e,t){var a=n.prompt().title("Which number do you want transfer the call to?").placeholder("Number").targetEvent(e).ok("Ok").cancel("Cancel");return n.show(a).then(function(e){return o.rpc.getVoiceQueuesChannelRedirect({uniqueid:t,exten:e}).$promise.then(function(e){l.success({title:"Channel "+t+" properly redirect!",msg:e.message||""})}).catch(function(e){console.error(e)})}).catch(function(e){console.error(e)})}function u(e){var t=_.find(g.calls.rows,{channel:e.channel});e.status=e.queuecallerleaveAt?"up":"ring",t?_.merge(t,e):g.calls.rows.push(e)}function p(e){var n=_.findIndex(g.calls.rows,{channel:e.channel});n>=0&&(g.calls.rows[n].status="hangup"),t(function(){g.calls.rows.splice(n,1)},5e3)}var g=this;g.calls=i||{rows:[],count:0},g.agents=a||{count:0,rows:[]},g.query={limit:10,page:1,limitOptions:[10,15,20]},g.channelStatusClass=r.channelStatus,g.onSave=u,g.onRemove=p,g.hangup=d,g.redirectToAgent=c,g.redirectToNumber=m,s.on("voice_queue_channel:save",g.onSave),s.on("voice_queue_channel:remove",g.onRemove),e.$on("$destroy",function(){s.removeAllListeners("voice_queue_channel:save"),s.removeAllListeners("voice_queue_channel:remove")})}e.$inject=["$scope","$timeout","$mdDialog","agents","rpcCalls","api","socket","helperClasses","toasty"],angular.module("app.voice").controller("QueueCallsVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){_.forIn(m.queues,function(e,t){m.rpcQueues[t]&&_.merge(e,_.pick(m.rpcQueues[t],u))})}function l(e){m.queues[e.id]&&_.merge(m.queues[e.id],_.pick(e,u))}function d(e){m.count=e.count,m.queues=e?_.keyBy(e.rows?e.rows:[],"id"):{},r()}function c(){m.query.offset=(m.query.page-1)*m.query.limit,s.hasRole("admin")?m.promise=i.voiceQueue.get(m.query,d).$promise:m.promise=i.user.getQueues(m.query,d).$promise}var m=this,u=["total","answered","unmanaged","sumHoldTime","sumDuration","sumBillable"];m.count=n.count,m.queues=n?_.keyBy(n.rows?n.rows:[],"id"):{},m.rpcQueues=a?_.keyBy(a.rows?a.rows:[],"id"):{},s.hasRole("admin")?m.query={type:"inbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1}:m.query={id:s.getCurrentUser().id,channel:"voice",type:"inbound",fields:"id,name",sort:"-updatedAt",limit:10,page:1},m.success=d,m.getQueues=c,m.onSave=l,m.$onInit=r,o.on("voice_queue:save",m.onSave);var p=!0,g=1;e.$watch("vm.query.filter",function(e,n){p?t(function(){p=!1}):(n||(g=m.query.page),e!==n&&(m.query.page=1),e||(m.query.page=g),m.getQueues())}),e.$on("$destroy",function(){o.removeAllListeners("voice_queue:save")})}e.$inject=["$scope","$timeout","queues","rpcQueues","api","socket","Auth"],angular.module("app.voice").controller("QueueParamsVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(){var e=[];return _.forIn(E.queues,function(t,n){t.paused=0,t.loggedInDb=0,e.push(r.voiceQueue.getMembers({id:n}).$promise),E.rpcQueues[n]&&_.merge(t,_.pick(E.rpcQueues[n],y))}),a.all(e).then(function(e){for(var t=0;t<e.length;t+=1)for(var n=0;n<e[t].rows.length;n++)e[t].rows[n].paused&&E.queues[e[t].rows[n].VoiceQueueId].paused++,E.queues[e[t].rows[n].VoiceQueueId].loggedInDb++}).catch(function(e){console.error(e)})}function u(e){E.queues[e.id]&&_.merge(E.queues[e.id],_.pick(e,y))}function p(e){}function g(e){E.count=e.count,E.queues=e?_.keyBy(e.rows?e.rows:[],"id"):{},m()}function h(){E.query.offset=(E.query.page-1)*E.query.limit,c.hasRole("admin")?E.promise=r.voiceQueue.get(E.query,g).$promise:E.promise=r.user.getQueues(E.query,g).$promise}function v(e,t){n.show({controller:"CreateOrEditVoiceQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/create/dialog.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceQueue:t,voiceQueues:_.values(E.queues)}})}function b(e,t){n.show({controller:"VoiceQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",parent:angular.element(i.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceQueue:t,voiceQueues:E.queues?E.queues.rows:[],realtime:!0}})}function f(e){return r.voiceQueue.update(e).$promise.then(function(){d.success({title:"Queue properly updated!",msg:e.name?e.name+" has been updated!":""})}).catch(function(e){d.error({title:"Error creating queue!",msg:e.message})})}var E=this,y=["loggedIn","available","waiting","talking","originated","message","dialActive","dialMethod","Trunk"];E.count=o.count,E.queues=o?_.keyBy(o.rows?o.rows:[],"id"):{},E.rpcQueues=s?_.keyBy(s.rows?s.rows:[],"id"):{},c.hasRole("admin")?E.query={type:"inbound",sort:"-updatedAt",limit:10,page:1}:E.query={id:c.getCurrentUser().id,channel:"voice",type:"inbound",sort:"-updatedAt",limit:10,page:1},E.success=g,E.getQueues=h,E.createOrEditVoiceQueue=v,E.agentAdd=b,E.updateQueue=f,E.onSave=u,E.onSaveMember=p,E.$onInit=m,l.on("voice_queue:save",E.onSave),l.on("userVoiceQueueRt:save",E.onSaveMember),l.on("userVoiceQueueRt:update",E.onSaveMember);var A=!0,C=1;e.$watch("vm.query.filter",function(e,n){A?t(function(){A=!1}):(n||(C=E.query.page),e!==n&&(E.query.page=1),e||(E.query.page=C),E.getQueues())}),e.$on("$destroy",function(){l.removeAllListeners("voice_queue:save"),l.removeAllListeners("userVoiceQueueRt:save"),l.removeAllListeners("userVoiceQueueRt:update")})}e.$inject=["$scope","$timeout","$mdDialog","$q","$document","queues","rpcQueues","api","socket","toasty","Auth"],angular.module("app.voice").controller("QueuesVoiceRealtimeController",e)}(),function(){"use strict";function e(){return{status:{registered:"green-300-fg icon-checkbox-marked-circle",unregistered:"red-300-fg icon-close-circle",lagged:"red-300-fg icon-close-circle",reachable:"green-300-fg icon-checkbox-marked-circle",unreachable:"red-300-fg icon-close-circle",unknown:"grey-fg icon-minus-circle"},state:{unknown:"grey-fg icon-phone-hangup",not_inuse:"green-300-fg icon-phone-hangup",inuse:"red-300-fg icon-phone-in-talk",busy:"red-300-fg icon-phone-locked",invalid:"grey-fg icon-phone-hangup",unavailable:"grey-fg icon-phone-hangup",ringing:"blue-300-fg icon-phone-incoming",ringinuse:"blue-300-fg icon-phone-incoming",onhold:"blue-300-fg icon-phone-paused"},channelStatus:{ring:"blue-300-fg icon-phone-incoming",up:"green-300-fg icon-phone-in-talk",hangup:"red-300-fg icon-phone-hangup"},channelStatusOut:{ring:"blue-300-fg icon-phone-outgoing",up:"green-300-fg icon-phone-in-talk",hangup:"red-300-fg icon-phone-hangup"}}}angular.module("app.auth").factory("helperClasses",e)}(),function(){"use strict";function e(e,t,n){var a=this;switch(n.disconnect(),n.connect(),a.selectedTab=0,t.current.name){case"app.voice.realtime.agents":a.selectedTab=0;break;case"app.voice.realtime.telephones":a.selectedTab=1;break;case"app.voice.realtime.trunks":a.selectedTab=2;break;case"app.voice.realtime.queues":a.selectedTab=3;break;case"app.voice.realtime.queue_calls":a.selectedTab=4;break;case"app.voice.realtime.queue_params":a.selectedTab=5;break;case"app.voice.realtime.outbound_calls":a.selectedTab=6;break;default:a.selectedTab=0,t.go("app.voice.realtime.agents")}e.$watch("vm.selectedTab",function(e,n){if(e!==n)switch(e){case 0:t.go("app.voice.realtime.agents");break;case 1:t.go("app.voice.realtime.telephones");break;case 2:t.go("app.voice.realtime.trunks");break;case 3:t.go("app.voice.realtime.queues");break;case 4:t.go("app.voice.realtime.queue_calls");break;case 5:t.go("app.voice.realtime.queue_params");break;case 6:t.go("app.voice.realtime.outbound_calls");break;default:t.go("app.voice.realtime.agents")}})}e.$inject=["$scope","$state","socket"],angular.module("app.voice").controller("VoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){_.forIn(p.telephones,function(e,t){p.rpcTelephones[t]&&_.merge(e,_.pick(p.rpcTelephones[t],g))})}function d(e){n.show(n.alert().clickOutsideToClose(!0).title("Legend").htmlContent("<div>TODO legend status + state</div>").ok("Ok").targetEvent(e))}function c(e){p.telephones[e.id]&&_.merge(p.telephones[e.id],_.pick(e,g))}function m(e){p.telephones=e?_.keyBy(e.rows?e.rows:[],"id"):{},l()}function u(){p.query.offset=(p.query.page-1)*p.query.limit,p.promise=o.user.get(p.query,m).$promise}var p=this,g=["fullname","internal","state","status"];p.count=a.count,p.attributes=["fullname","internal","state","status","address"],p.telephones=a?_.keyBy(a.rows?a.rows:[],"id"):{},p.rpcTelephones=i?_.keyBy(i.rows?i.rows:[],"id"):{},p.query={fields:"id,fullname,internal",role:"telephone",sort:"-updatedAt",limit:10,page:1},p.statusClass=r.status,p.stateClass=r.state,p.success=m,p.$onInit=l,p.showInfo=d,p.getTelephones=u,p.onSave=c,s.on("telephone:save",p.onSave);var h=!0,v=1;e.$watch("vm.query.filter",function(e,n){h?t(function(){h=!1}):(n||(v=p.query.page),e!==n&&(p.query.page=1),e||(p.query.page=v),p.getTelephones())}),e.$on("$destroy",function(){s.removeAllListeners("telephone:save")})}e.$inject=["$scope","$timeout","$mdDialog","telephones","rpcTelephones","api","socket","helperClasses"],angular.module("app.voice").controller("TelephonesVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){_.forIn(p.trunks,function(e,t){p.rpcTrunks[t]&&_.merge(e,_.pick(p.rpcTrunks[t],g))})}function d(e){n.show(n.alert().clickOutsideToClose(!0).title("Legend").htmlContent("<div>TODO legend status + state</div>").ok("Ok").targetEvent(e))}function c(e){p.trunks[e.id]&&_.merge(p.trunks[e.id],_.pick(e,g))}function m(e){p.count=e.count,p.trunks=e?_.keyBy(e.rows?e.rows:[],"id"):{},l()}function u(){p.query.offset=(p.query.page-1)*p.query.limit,p.promise=o.trunk.get(p.query,m).$promise}var p=this,g=["status","stateRegistry","registry","host","port","internal","state","status"];p.count=a.count,p.trunks=a?_.keyBy(a.rows?a.rows:[],"id"):{},p.rpcTrunks=i?_.keyBy(i.rows?i.rows:[],"id"):{},p.query={fields:"id,name",active:!0,sort:"-updatedAt",limit:10,page:1},p.statusClass=r.status,p.stateClass=r.state,p.success=m,p.$onInit=l,p.showInfo=d,p.getTrunks=u,p.onSave=c,s.on("trunk:save",p.onSave);var h=!0,v=1;e.$watch("vm.query.filter",function(e,n){h?t(function(){h=!1}):(n||(v=p.query.page),e!==n&&(p.query.page=1),e||(p.query.page=v),p.getTrunks())}),e.$on("$destroy",function(){s.removeAllListeners("trunk:save")})}e.$inject=["$scope","$timeout","$mdDialog","trunks","rpcTrunks","api","socket","helperClasses"],angular.module("app.voice").controller("TrunksVoiceRealtimeController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceMail.save(p.voicemail).$promise.then(function(e){p.voicemails.unshift(e),i.success({title:"Voicemail properly created",msg:p.voicemail.name?p.voicemail.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMail.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMail.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceMail.update({id:p.voicemail.id},p.voicemail).$promise.then(function(e){var t=_.find(p.voicemails,{id:e.id});t&&_.merge(t,e),i.success({title:"Voicemail properly saved!",msg:p.voicemail.name?p.voicemail.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMail.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceMail.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The voicemail will be deleted.").ariaLabel("Delete Voicemail").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceMail.delete({id:p.voicemail.id}).$promise.then(function(){_.remove(p.voicemails,{id:p.voicemail.id}),i.success({title:"Voicemail properly deleted!",msg:(p.voicemail.name||"voicemail")+" has been deleted!"}),u(p.voicemail)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceMail.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_VOICEMAIL",p.voicemail=angular.copy(s),p.voicemails=o,p.newVoicemail=!1,p.voicemail||(p.voicemail={},p.title="VOICE.NEW_VOICEMAIL",p.newVoicemail=!0),p.addNewVoicemail=l,p.saveVoicemail=d,p.deleteVoicemail=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","voicemails","voicemail","api"],angular.module("app.voice").controller("CreateOrEditVoicemailDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(e){h.voicemail=e,h.query.id=h.voicemail.id,h.getVoicemailMessages()}function d(e,t){var n=i.confirm().title("Are you sure want to delete the message?").htmlContent("<b>"+e.name+"</b> will be deleted.").ariaLabel("delete message").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){p(e)},function(){console.log("CANCEL")})}function c(e){h.voicemailMessages=e||{count:0,rows:[]}}function m(){h.query.offset=(h.query.page-1)*h.query.limit,h.promise=r.voiceMail.getMessages(h.query,c).$promise}function u(e,t){i.show({controller:"CreateOrEditMessageDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voicemails/edit/messages/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{message:t,messages:h.voicemailMessages.rows}})}function p(e){r.voiceMailMessage.delete({id:e.id}).$promise.then(function(){_.remove(h.voicemailMessages.rows,{id:e.id}),h.voicemailMessages.count-=1,h.voicemailMessages.rows.length||h.getVoicemailMessages(),s.success({title:"Message deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){s.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMail",msg:e.data?JSON.stringify(e.data):e.toString()})})}function g(e){var t=i.confirm().title("Are you sure want to delete the selected messages?").htmlContent("<b>"+h.selectedVoicemailMessages.length+" selected</b> will be deleted.").ariaLabel("delete messages").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){h.selectedVoicemailMessages.forEach(function(e){p(e)}),h.selectedVoicemailMessages=[]})}var h=this;h.voicemail={},h.voicemailMessages={count:0,rows:[]},h.selectedVoicemailMessages=[],h.query={fields:"createdAt,updatedAt,id,callerid,duration,audio,stamp",limit:10,page:1},h.init=l,h.deleteConfirm=d,h.success=c,h.getVoicemailMessages=m,h.createOrEditVoicemailMessage=u,h.deleteVoicemailMessage=p,h.deleteSelectedVoicemailMessages=g;var v=!0,b=1;t.$watch("vm_dc.query.filter",function(e,t){v?a(function(){v=!1}):(t||(b=h.query.page),e!==t&&(h.query.page=1),e||(h.query.page=b),h.getVoicemailMessages())})}e.$inject=["$cookies","$scope","$state","$timeout","$mdDialog","$document","toasty","api"],angular.module("app.voice").controller("VoicemailMessagesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(){e.go("app.voice.voicemails")}function r(){i.voiceMail.update({id:l.voicemail.id},l.voicemail).$promise.then(function(){a.success({title:"Voicemail updated!",msg:l.voicemail.name?l.voicemail.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMail",msg:e.data?JSON.stringify(e.data):e.toString()})})}var l=this;l.voicemail=e.params.voicemail||o||{},l.selectedTab=e.params.tab||0,l.gotoVoicemails=s,l.saveVoicemail=r,i.voiceContext.get({fields:"name",sort:"name"}).$promise.then(function(e){l.contexts=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETcontexts",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","voicemail"],angular.module("app.voice").controller("VoicemailController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.voicemails.edit",{id:e.id,voicemail:e})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the voicemail?").htmlContent("<b>"+(e.name||"voicemail")+"</b> will be deleted.").ariaLabel("delete voicemail").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.voicemails=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceMail.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditVoicemailDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voicemails/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{voicemail:t,voicemails:A.voicemails.rows}})}function v(e){l.voiceMail.delete({id:e.id}).$promise.then(function(){_.remove(A.voicemails.rows,{id:e.id}),A.voicemails.count-=1,A.voicemails.rows.length||A.getVoicemails(),c.success({title:"Voicemail deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceMail",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedVoicemails);return A.selectedVoicemails=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected voicemails?").htmlContent("<b>"+A.selectedVoicemails.length+" selected</b> will be deleted.").ariaLabel("delete Voicemails").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedVoicemails.forEach(function(e){v(e)}),A.selectedVoicemails=[]})}function E(){A.selectedVoicemails=[]}function y(){A.selectedVoicemails=A.voicemails.rows}var A=this;A.voicemails=r||{count:0,rows:[]},A.table="voicemails",A.listOrder="",A.listOrderAsc=null,A.selectedVoicemails=[],A.query={fields:"createdAt,updatedAt,id,customer_id,fullname,email,password,mailbox,context,tz,attach,envelope,delete,emailbody,emailsubject,maxsecs,maxmsg",sort:"-updatedAt",limit:10,page:1},A.arrayattach=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arrayenvelope=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.arraydelete=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),A.editstate=m,A.deleteconfirm=u,A.success=p,A.getVoicemails=g,A.createOrEditVoicemail=h,A.deleteVoicemail=v,A.exportSelectedVoicemails=b,A.deleteSelectedVoicemails=f,A.deselectVoicemails=E,A.selectAllVoicemails=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getVoicemails())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","voicemails","api","msUtils","toasty"],angular.module("app.voice").controller("VoicemailsController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceQueue.save(p.voiceQueue).$promise.then(function(e){p.voiceQueues.unshift(e),i.success({title:"VoiceQueue properly created",msg:p.voiceQueue.name?p.voiceQueue.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceQueue.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceQueue.update({id:p.voiceQueue.id},p.voiceQueue).$promise.then(function(e){var t=_.find(p.voiceQueues,{id:e.id});t&&_.merge(t,e),i.success({title:"VoiceQueue properly saved!",msg:p.voiceQueue.name?p.voiceQueue.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceQueue.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The voiceQueue will be deleted.").ariaLabel("Delete VoiceQueue").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceQueue.delete({id:p.voiceQueue.id}).$promise.then(function(){_.remove(p.voiceQueues,{id:p.voiceQueue.id}),i.success({title:"VoiceQueue properly deleted!",msg:(p.voiceQueue.name||"voiceQueue")+" has been deleted!"}),u(p.voiceQueue)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceQueue.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_VOICEQUEUE",p.voiceQueue=angular.copy(s),p.voiceQueues=o,p.newVoiceQueue=!1,p.voiceQueue||(p.voiceQueue={type:"inbound",strategy:"ringall",timeout:15,retry:2,random_periodic_announce:"no",announce_holdtime:"no",announce_position:"no",reportholdtime:"no",autopause:"no",ringinuse:"no",timeoutrestart:"no",setinterfacevar:"no",setqueuevar:"no",setqueueentryvar:"no"},p.title="VOICE.NEW_VOICEQUEUE",p.newVoiceQueue=!0),p.addNewVoiceQueue=l,p.saveVoiceQueue=d,p.deleteVoiceQueue=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","voiceQueues","voiceQueue","api"],angular.module("app.voice").controller("CreateOrEditVoiceQueueDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s){function r(){return n.voiceQueue[c.isVoiceRealtime()?"getMembers":"getAgents"]({id:c.voiceQueue.id,fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise.then(function(e){return c.isVoiceRealtime()?c.selectedItems=e.rows?_.map(e.rows,function(e){return e.id=e.UserId,e.fullname=e.membername,e.penalty=e.hasOwnProperty("penalty")?"penalty "+e.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[]:c.selectedItems=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserVoiceQueue?"penalty "+e.UserVoiceQueue.penalty:"",e.internal=e.hasOwnProperty("internal")?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.selectedItems=c.selectedItems,n.user.get({fields:"id,name,internal,fullname",nolimit:!0,role:"agent"}).$promise}).then(function(e){c.items=e.rows?_.map(e.rows,function(e){return e.penalty=e.UserVoiceQueue?"penalty "+e.UserVoiceQueue.penalty:"",e.internal=e.internal?"internal "+e.internal:"",e}):[],c.dualMultiselectOptions.items=_.differenceBy(c.items,c.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETUSERS.GETAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}function l(){return o}function d(){e.hide()}var c=this;c.voiceQueue=a,c.penalty=0,c.items=[],c.selectedItems=[],c.closeDialog=d,c.isVoiceRealtime=l,c.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"fullname",line2:"internal",line3:"penalty",labelAll:s.instant("VOICE.ALL_AGENTS"),labelSelected:s.instant("VOICE.SELECTED_AGENTS"),transferCallback:function(e,a){n.voiceQueue[a?"removeAgents":"addAgents"]({id:c.voiceQueue.id,ids:_.map(e,c.isVoiceRealtime()&&a?"UserId":"id"),penalty:c.penalty||0,realtime:o||!1}).$promise.then(function(){t.success({title:"VoiceQueue properly "+(a?"removed":"added"),msg:"VoiceQueue has been "+(a?"removed":"added")+"!"}),a||r()}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:voiceQueue.ADDAGENTS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},r()}e.$inject=["$mdDialog","toasty","api","voiceQueue","voiceQueues","realtime","$translate"],angular.module("app.voice").controller("VoiceQueueagentaddController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){e.hide()}var s=this;s.voiceQueue=a,s.penalty=0,s.items=[],s.selectedItems=[],s.dualMultiselectOptions={items:[],selectedItems:[],orderBy:"name",line1:"name",line2:"",line3:"",labelAll:i.instant("VOICE.ALL_TEAMS"),labelSelected:i.instant("VOICE.SELECTED_TEAMS"),transferCallback:function(e,a){n.voiceQueue[a?"removeTeams":"addTeams"]({id:s.voiceQueue.id,ids:_.map(e,"id"),penalty:s.penalty||0}).$promise.then(function(){t.success({title:"Team properly "+(a?"removed":"added"),msg:"Team has been "+(a?"removed":"added")+"!"})}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:voiceQueue.ADDTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}},s.closeDialog=o,n.voiceQueue.getTeams({id:s.voiceQueue.id,fields:"id,name",nolimit:!0}).$promise.then(function(e){return s.selectedItems=e.rows?e.rows:[],s.dualMultiselectOptions.selectedItems=s.selectedItems,n.team.get({fields:"id,name",nolimit:!0}).$promise}).then(function(e){s.items=e.rows?e.rows:[],s.dualMultiselectOptions.items=_.differenceBy(s.items,s.selectedItems,"id")}).catch(function(e){t.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETTEAMS",msg:e.status?JSON.stringify(e.data):e.toString()})})}e.$inject=["$mdDialog","toasty","api","voiceQueue","$translate"],angular.module("app.voice").controller("VoiceQueueteamaddController",e)}(),function(){"use strict";function e(e,t,n,a,i,o){function s(e,a){t.show({controller:"VoiceQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/teamadd/teamadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{voiceQueue:e,voiceQueues:c.voiceQueues?c.voiceQueues.rows:[]}})}function r(e,a){t.show({controller:"VoiceQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",parent:angular.element(n.body),targetEvent:a,clickOutsideToClose:!0,locals:{voiceQueue:e,voiceQueues:c.voiceQueues?c.voiceQueues.rows:[],realtime:!1}})}function l(){e.go("app.voice.voiceQueues")}function d(){i.voiceQueue.update({id:c.voiceQueue.id},c.voiceQueue).$promise.then(function(){a.success({title:"VoiceQueue updated!",msg:c.voiceQueue.name?c.voiceQueue.name+" has been updated!":""})}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}var c=this;c.voiceQueue=e.params.voiceQueue||o||{},c.selectedTab=e.params.tab||0,c.teamadddialog=s,c.agentadddialog=r,c.gotoVoiceQueues=l,c.saveVoiceQueue=d,i.voiceMusicOnHold.get({fields:"name",nolimit:"true"}).$promise.then(function(e){c.musiconholds=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETmusiconholds",msg:e.data?JSON.stringify(e.data):e.toString()})}),i.sound.get({fields:"name,save_name",sort:"name",nolimit:"true"}).$promise.then(function(e){c.sounds=e.rows||[]}).catch(function(e){a.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETsounds",msg:e.data?JSON.stringify(e.data):e.toString()})})}e.$inject=["$state","$mdDialog","$document","toasty","api","voiceQueue"],angular.module("app.voice").controller("VoiceQueueController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,t){n.go("app.voice.voiceQueues.edit",{id:e.id,voiceQueue:e})}function u(e,t){i.show({controller:"VoiceQueueteamaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/teamadd/teamadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{voiceQueue:e,voiceQueues:x.voiceQueues?x.voiceQueues.rows:[]}})}function p(e,t){i.show({controller:"VoiceQueueagentaddController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",parent:angular.element(o.body),targetEvent:t,clickOutsideToClose:!0,locals:{voiceQueue:e,voiceQueues:x.voiceQueues?x.voiceQueues.rows:[],realtime:!1}})}function g(e,t){var n=i.confirm().title("Are you sure want to delete the voiceQueue?").htmlContent("<b>"+(e.name||"voiceQueue")+"</b> will be deleted.").ariaLabel("delete voiceQueue").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){f(e)},function(){console.log("CANCEL")})}function h(e){x.voiceQueues=e||{count:0,rows:[]}}function v(){x.query.offset=(x.query.page-1)*x.query.limit,x.promise=l.voiceQueue.get(x.query,h).$promise}function b(e,t){i.show({controller:"CreateOrEditVoiceQueueDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceQueues/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceQueue:t,voiceQueues:x.voiceQueues.rows}})}function f(e){l.voiceQueue.delete({id:e.id}).$promise.then(function(){_.remove(x.voiceQueues.rows,{id:e.id}),x.voiceQueues.count-=1,x.voiceQueues.rows.length||x.getVoiceQueues(),c.success({title:"VoiceQueue deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceQueue",msg:e.data?JSON.stringify(e.data):e.toString()})})}function E(){var e=_.clone(x.selectedVoiceQueues);return x.selectedVoiceQueues=[],e}function y(e){var t=i.confirm().title("Are you sure want to delete the selected voiceQueues?").htmlContent("<b>"+x.selectedVoiceQueues.length+" selected</b> will be deleted.").ariaLabel("delete VoiceQueues").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){x.selectedVoiceQueues.forEach(function(e){f(e)}),x.selectedVoiceQueues=[]})}function A(){x.selectedVoiceQueues=[]}function C(){x.selectedVoiceQueues=x.voiceQueues.rows}var x=this;x.voiceQueues=r||{count:0,rows:[]},x.table="voiceQueues",x.listOrder="",x.listOrderAsc=null,x.selectedVoiceQueues=[],x.query={fields:"createdAt,updatedAt,id,name,type,strategy,timeout,maxlen,retry,wrapuptime,weight,joinempty,leavewhenempty,musiconhold,announce,description,periodic_announce,queue_reporthold,queue_youarenext,queue_thereare,queue_callswaiting,queue_holdtime,queue_minutes,queue_minute,queue_seconds,queue_thankyou,announce_frequency,min_announce_frequency,periodic_announce_frequency,random_periodic_announce,announce_holdtime,announce_position,announce_position_limit,reportholdtime,acw,acwTimeout,autopause,ringinuse,memberdelay,timeoutrestart,monitor_format,context,setinterfacevar,setqueuevar,setqueueentryvar",type:"inbound",sort:"-updatedAt",limit:10,page:1},x.arraystrategy=_.keyBy([{option:"Ringall",value:"'ringall'"},{option:"Round Robin Memory",value:"'rrmemory'"},{option:"Least Recent",value:"'leastrecent'"},{option:"Fewest Calls",value:"'fewestcalls'"},{option:"Random",value:"'random'"},{option:"Linear",value:"'linear'"},{option:"Weight Random",value:"'wrandom'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayjoinempty=_.keyBy([{option:"no",value:"'no'"},{option:"yes",value:"'yes'"},{option:"strict",value:"'strict'"},{option:"loose",value:"'loose'"},{option:"paused",value:"'paused'"},{option:"penalty",value:"'penalty'"},{option:"inuse",value:"'inuse'"},{option:"ringing",value:"'ringing'"},{option:"unavailable",value:"'unavailable'"},{option:"invalid",value:"'invalid'"},{option:"unknoww",value:"'unknown'"},{option:"wrapup",value:"'wrapup'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayleavewhenempty=_.keyBy([{option:"no",value:"'no'"},{option:"yes",value:"'yes'"},{option:"strict",value:"'strict'"},{option:"loose",value:"'loose'"},{option:"paused",value:"'paused'"},{option:"penalty",value:"'penalty'"},{option:"inuse",value:"'inuse'"},{option:"ringing",value:"'ringing'"},{option:"unavailable",value:"'unavailable'"},{option:"invalid",value:"'invalid'"},{option:"unknoww",value:"'unknown'"},{option:"wrapup",value:"'wrapup'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayrandom_periodic_announce=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayannounce_holdtime=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"},{option:"Once",value:"'once'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayannounce_position=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"},{option:"Limit",value:"'limit'"},{option:"More",value:"'more'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayreportholdtime=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayautopause=_.keyBy([{option:"Yes",value:"'all'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arrayringinuse=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraytimeoutrestart=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraymonitor_format=_.keyBy([{option:"Inactive",value:"''"},{option:"wav",value:"'wav'"},{option:"wav49",value:"'wav49'"},{option:"gsm",value:"'gsm'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraysetinterfacevar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraysetqueuevar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.arraysetqueueentryvar=_.keyBy([{option:"Yes",value:"'yes'"},{option:"No",value:"'no'"}],function(e){return _.replace(e.value,new RegExp("'","g"),"")}),x.editstate=m,x.teamadddialog=u,x.agentadddialog=p,x.deleteconfirm=g,x.success=h,x.getVoiceQueues=v,x.createOrEditVoiceQueue=b,x.deleteVoiceQueue=f,x.exportSelectedVoiceQueues=E,x.deleteSelectedVoiceQueues=y,x.deselectVoiceQueues=A,x.selectAllVoiceQueues=C;var T=!0,S=1;e.$watch("vm.query.filter",function(e,t){T?s(function(){T=!1}):(t||(S=x.query.page),e!==t&&(x.query.page=1),e||(x.query.page=S),x.getVoiceQueues())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","voiceQueues","api","msUtils","toasty"],angular.module("app.voice").controller("VoiceQueuesController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r){function l(){p.errors=[],r.voiceRecording.save(p.voiceRecording).$promise.then(function(e){p.voiceRecordings.unshift(e),i.success({title:"VoiceRecording properly created",msg:p.voiceRecording.name?p.voiceRecording.name+" has been created!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceRecording.save"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceRecording.save",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function d(){p.errors=[],r.voiceRecording.update({id:p.voiceRecording.id},p.voiceRecording).$promise.then(function(e){var t=_.find(p.voiceRecordings,{id:e.id});t&&_.merge(t,e),i.success({title:"VoiceRecording properly saved!",msg:p.voiceRecording.name?p.voiceRecording.name+" has been saved!":""}),u(e)}).catch(function(e){if(e.data&&e.data.errors&&e.data.errors.length){p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceRecording.update"}];for(var t=0;t<e.data.errors.length;t++)i.error({title:e.data.errors[t].type,msg:e.data.errors[t].message})}else i.error({title:e.status?"API:"+e.status+" - "+e.statusText:"api.voiceRecording.update",msg:e.data?JSON.stringify(e.data.message):e.toString()})})}function c(){p.errors=[];var e=a.confirm().title("Are you sure?").content("The voiceRecording will be deleted.").ariaLabel("Delete VoiceRecording").ok("Delete").cancel("Cancel").targetEvent(event);a.show(e).then(function(){r.voiceRecording.delete({id:p.voiceRecording.id}).$promise.then(function(){_.remove(p.voiceRecordings,{id:p.voiceRecording.id}),i.success({title:"VoiceRecording properly deleted!",msg:(p.voiceRecording.name||"voiceRecording")+" has been deleted!"}),u(p.voiceRecording)}).catch(function(e){console.error(e),p.errors=e.data.errors||[{message:e.toString(),type:"api.voiceRecording.delete"}]})},function(){})}function m(e){return new Date(e)}function u(e){a.hide(e)}var p=this;p.errors=[],p.title="VOICE.EDIT_VOICERECORDING",p.voiceRecording=angular.copy(s),p.voiceRecordings=o,p.newVoiceRecording=!1,p.voiceRecording||(p.voiceRecording={},p.title="VOICE.NEW_VOICERECORDING",p.newVoiceRecording=!0),p.addNewVoiceRecording=l,p.saveVoiceRecording=d,p.deleteVoiceRecording=c,p.getDateFromString=m,p.closeDialog=u}e.$inject=["$scope","$state","$location","$mdDialog","toasty","voiceRecordings","voiceRecording","api"],angular.module("app.voice").controller("CreateOrEditVoiceRecordingDialogController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c){function m(e,n){return l.voiceRecording.download({id:e.id,exists:!0}).$promise.then(function(){var n=t.document.createElement("a");n.href="api/voice/recordings/"+e.id+"/download",n.target="_self",n.click()}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function u(e,t){var n=i.confirm().title("Are you sure want to delete the voiceRecording?").htmlContent("<b>"+(e.name||"voiceRecording")+"</b> will be deleted.").ariaLabel("delete voiceRecording").targetEvent(t).ok("OK").cancel("CANCEL");i.show(n).then(function(){v(e)},function(){console.log("CANCEL")})}function p(e){A.voiceRecordings=e||{count:0,rows:[]}}function g(){A.query.offset=(A.query.page-1)*A.query.limit,A.promise=l.voiceRecording.get(A.query,p).$promise}function h(e,t){i.show({controller:"CreateOrEditVoiceRecordingDialogController",controllerAs:"vm",templateUrl:"app/main/apps/voice/views/voiceRecordings/create/dialog.html",parent:angular.element(o.body),targetEvent:e,clickOutsideToClose:!0,locals:{voiceRecording:t,voiceRecordings:A.voiceRecordings.rows}})}function v(e){l.voiceRecording.delete({id:e.id}).$promise.then(function(){_.remove(A.voiceRecordings.rows,{id:e.id}),A.voiceRecordings.count-=1,A.voiceRecordings.rows.length||A.getVoiceRecordings(),c.success({title:"VoiceRecording deleted!",msg:e.name?e.name+" has been deleted!":""})}).catch(function(e){c.error({title:e.status?"API:"+e.status+" - "+e.statusText:"SYSTEM:GETvoiceRecording",msg:e.data?JSON.stringify(e.data):e.toString()})})}function b(){var e=_.clone(A.selectedVoiceRecordings);return A.selectedVoiceRecordings=[],e}function f(e){var t=i.confirm().title("Are you sure want to delete the selected voiceRecordings?").htmlContent("<b>"+A.selectedVoiceRecordings.length+" selected</b> will be deleted.").ariaLabel("delete VoiceRecordings").targetEvent(e).ok("OK").cancel("CANCEL");i.show(t).then(function(){A.selectedVoiceRecordings.forEach(function(e){v(e)}),A.selectedVoiceRecordings=[]})}function E(){A.selectedVoiceRecordings=[]}function y(){A.selectedVoiceRecordings=A.voiceRecordings.rows}var A=this;A.voiceRecordings=r||{count:0,rows:[]},A.table="voiceRecordings",A.listOrder="",A.listOrderAsc=null,A.selectedVoiceRecordings=[],A.query={fields:"createdAt,updatedAt,id,format,value,type,uniqueid,calleridnum,exten,connectedlinenum,queue,rating,audio,createdAt",sort:"-updatedAt",limit:10,page:1},A.downloadfile=m,A.deleteconfirm=u,A.success=p,A.getVoiceRecordings=g,A.createOrEditVoiceRecording=h,A.deleteVoiceRecording=v,A.exportSelectedVoiceRecordings=b,A.deleteSelectedVoiceRecordings=f,A.deselectVoiceRecordings=E,A.selectAllVoiceRecordings=y;var C=!0,x=1;e.$watch("vm.query.filter",function(e,t){C?s(function(){C=!1}):(t||(x=A.query.page),e!==t&&(A.query.page=1),e||(A.query.page=x),A.getVoiceRecordings())})}e.$inject=["$scope","$window","$state","$mdSidenav","$mdDialog","$document","$timeout","voiceRecordings","api","msUtils","toasty"],angular.module("app.voice").controller("VoiceRecordingsController",e)}(),function(){"use strict";function e(e,t,n,a,i){function o(){return a.getCurrentUser()&&a.hasRole("agent")}this.isAgent=o,n.saveItem("apps",{title:"APPS",group:!0,weight:1,hidden:function(){return a.hasRole("agent")}}),n.saveItem("apps.dashboards",{id:100,title:"Dashboards",translate:"DASHBOARDS.DASHBOARDS",icon:"icon-tile-four",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(100)&&!a.hasRole("admin")}}),n.saveItem("apps.dashboards.general",{id:101,title:"General",translate:"DASHBOARDS.GENERAL",state:"app.dashboards.general",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(101)&&!a.hasRole("admin")}}),n.saveItem("apps.staff",{id:200,title:"Staff",translate:"STAFF.STAFF",icon:"icon-account-multiple",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(200)&&!a.hasRole("admin")}}),n.saveItem("apps.staff.users",{id:201,title:"Users",translate:"STAFF.USERS",state:"app.staff.users",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(201)&&!a.hasRole("admin")}}),n.saveItem("apps.staff.agents",{id:202,title:"Agents",translate:"STAFF.AGENTS",state:"app.staff.agents",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(202)&&!a.hasRole("admin")}}),n.saveItem("apps.staff.telephones",{id:203,title:"Telephones",translate:"STAFF.TELEPHONES",state:"app.staff.telephones",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(203)&&!a.hasRole("admin")}}),n.saveItem("apps.staff.teams",{id:204,title:"Teams",translate:"STAFF.TEAMS",state:"app.staff.teams",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(204)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager",{id:300,title:"ContactManager",translate:"CONTACTMANAGER.CONTACTMANAGER",icon:"icon-account-circle",weight:4,hidden:function(){return!i.cm||a.hasRole("agent")||!a.hasPermission(300)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager.lists",{id:301,title:"Lists",translate:"CONTACTMANAGER.LISTS",state:"app.contactmanager.lists",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(301)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager.companies",{id:302,title:"Companies",translate:"CONTACTMANAGER.COMPANIES",state:"app.contactmanager.companies",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(302)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager.globalCustomFields",{id:304,title:"GlobalCustomFields",translate:"CONTACTMANAGER.GLOBALCUSTOMFIELDS",state:"app.contactmanager.globalCustomFields",weight:4,hidden:function(){return a.hasRole("agent")||!a.hasPermission(304)&&!a.hasRole("admin")}}),n.saveItem("apps.contactmanager.contacts",{id:303,title:"Contacts",translate:"CONTACTMANAGER.CONTACTS",state:"app.contactmanager.contacts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(303)&&!a.hasRole("admin")}}),n.saveItem("apps.voice",{id:400,title:"Voice",translate:"VOICE.VOICE",icon:"icon-phone",weight:5,hidden:function(){return a.hasRole("agent")||!a.hasPermission(400)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.voiceQueues",{id:401,title:"VoiceQueues",translate:"VOICE.VOICEQUEUES",state:"app.voice.voiceQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(401)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.inboundroutes",{id:402,title:"InboundRoutes",translate:"VOICE.INBOUNDROUTES",state:"app.voice.inboundroutes",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(402)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.outboundroutes",{id:403,title:"OutboundRoutes",translate:"VOICE.OUTBOUNDROUTES",state:"app.voice.outboundroutes",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(403)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.internalroutes",{id:404,title:"InternalRoutes",translate:"VOICE.INTERNALROUTES",state:"app.voice.internalroutes",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(404)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.contexts",{id:405,title:"Contexts",translate:"VOICE.CONTEXTS",state:"app.voice.contexts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(405)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.voicemails",{id:406,title:"Voicemails",translate:"VOICE.VOICEMAILS",state:"app.voice.voicemails",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(406)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.musiconholds",{id:407,title:"MusicOnHolds",translate:"VOICE.MUSICONHOLDS",state:"app.voice.musiconholds",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(407)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.voiceRecordings",{id:408,title:"VoiceRecordings",translate:"VOICE.VOICERECORDINGS",state:"app.voice.voiceRecordings",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(408)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.chanSpies",{id:409,title:"ChanSpies",translate:"VOICE.CHANSPIES",state:"app.voice.chanSpies",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(409)&&!a.hasRole("admin")}}),n.saveItem("apps.voice.realtime",{id:410,title:"Realtime",translate:"VOICE.REALTIME",state:"app.voice.realtime",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(410)&&!a.hasRole("admin")}}),n.saveItem("apps.chat",{id:500,title:"Chat",translate:"CHAT.CHAT",icon:"icon-hangouts",weight:6,hidden:function(){return!i.chat||a.hasRole("agent")||!a.hasPermission(500)&&!a.hasRole("admin")}}),n.saveItem("apps.chat.chatQueues",{id:501,title:"ChatQueues",translate:"CHAT.CHATQUEUES",state:"app.chat.chatQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(501)&&!a.hasRole("admin")}}),n.saveItem("apps.chat.chatWebsites",{id:502,title:"ChatWebsites",translate:"CHAT.CHATWEBSITES",state:"app.chat.chatWebsites",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(502)&&!a.hasRole("admin")}}),n.saveItem("apps.mail",{id:600,title:"Mail",translate:"MAIL.MAIL",icon:"icon-email",weight:7,hidden:function(){return!i.license||a.hasRole("agent")||!a.hasPermission(600)&&!a.hasRole("admin")}}),n.saveItem("apps.mail.mailQueues",{id:601,title:"MailQueues",translate:"MAIL.MAILQUEUES",state:"app.mail.mailQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(601)&&!a.hasRole("admin")}}),n.saveItem("apps.mail.mailAccounts",{id:602,title:"MailAccounts",translate:"MAIL.MAILACCOUNTS",state:"app.mail.mailAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(602)&&!a.hasRole("admin")}}),n.saveItem("apps.sms",{id:700,title:"Sms",translate:"SMS.SMS",icon:"icon-message-text",weight:8,hidden:function(){return!i.messaging||a.hasRole("agent")||!a.hasPermission(700)&&!a.hasRole("admin")}}),n.saveItem("apps.sms.smsQueues",{id:701,title:"SmsQueues",translate:"SMS.SMSQUEUES",state:"app.sms.smsQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(701)&&!a.hasRole("admin")}}),n.saveItem("apps.sms.smsAccounts",{id:702,title:"SmsAccounts",translate:"SMS.SMSACCOUNTS",state:"app.sms.smsAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(702)&&!a.hasRole("admin")}}),n.saveItem("apps.openchannel",{id:800,title:"Openchannel",translate:"OPENCHANNEL.OPENCHANNEL",icon:"icon-google-earth",weight:9,hidden:function(){return!i.openchannel||a.hasRole("agent")||!a.hasPermission(800)&&!a.hasRole("admin")}}),n.saveItem("apps.openchannel.openchannelQueues",{id:801,title:"OpenchannelQueues",translate:"OPENCHANNEL.OPENCHANNELQUEUES",state:"app.openchannel.openchannelQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(801)&&!a.hasRole("admin")}}),n.saveItem("apps.openchannel.openchannelAccounts",{id:802,title:"OpenchannelAccounts",translate:"OPENCHANNEL.OPENCHANNELACCOUNTS",state:"app.openchannel.openchannelAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(802)&&!a.hasRole("admin")}}),n.saveItem("apps.fax",{id:900,title:"Fax",translate:"FAX.FAX",icon:"icon-deskphone",weight:10,hidden:function(){return!i.fax||a.hasRole("agent")||!a.hasPermission(900)&&!a.hasRole("admin")}}),n.saveItem("apps.fax.faxQueues",{id:901,title:"FaxQueues",translate:"FAX.FAXQUEUES",state:"app.fax.faxQueues",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(901)&&!a.hasRole("admin")}}),n.saveItem("apps.fax.faxAccounts",{id:902,title:"FaxAccounts",translate:"FAX.FAXACCOUNTS",state:"app.fax.faxAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(902)&&!a.hasRole("admin")}}),n.saveItem("apps.tools",{id:1e3,title:"Tools",translate:"TOOLS.TOOLS",icon:"icon-auto-fix",weight:11,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1e3)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.cannedAnswers",{id:1002,title:"CannedAnswers",translate:"TOOLS.CANNEDANSWERS",state:"app.tools.cannedAnswers",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1002)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.customDashboards",{id:1003,title:"CustomDashboards",translate:"TOOLS.CUSTOMDASHBOARDS",state:"app.tools.customDashboards",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1003)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.intervals",{id:1004,title:"Intervals",translate:"TOOLS.INTERVALS",state:"app.tools.intervals",weight:4,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1004)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.pauses",{id:1005,title:"Pauses",translate:"TOOLS.PAUSES",state:"app.tools.pauses",weight:5,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1005)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.schedules",{id:42,title:"Scheduler",translate:"TOOLS.SCHEDULER",state:"app.tools.schedules",weight:6,hidden:function(){return a.hasRole("agent")||!a.hasPermission(42)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.sounds",{id:1006,title:"Sounds",translate:"TOOLS.SOUNDS",state:"app.tools.sounds",weight:7,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1006)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.tags",{id:1007,title:"Tags",translate:"TOOLS.TAGS",state:"app.tools.tags",weight:8,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1007)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.templates",{id:1008,title:"Templates",translate:"TOOLS.TEMPLATES",state:"app.tools.templates",weight:9,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1008)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.triggers",{id:1009,title:"Triggers",translate:"TOOLS.TRIGGERS",state:"app.tools.triggers",weight:10,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1009)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.trunks",{id:1010,title:"Trunks",translate:"TOOLS.TRUNKS",state:"app.tools.trunks",weight:11,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1010)&&!a.hasRole("admin")}}),n.saveItem("apps.tools.variables",{id:1011,title:"Variables",translate:"TOOLS.VARIABLES",state:"app.tools.variables",weight:12,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1011)&&!a.hasRole("admin")}}),n.saveItem("apps.callysquare",{id:1100,title:"CallySquare",translate:"CALLYSQUARE.CALLYSQUARE",icon:"icon-sitemap",weight:12,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1100)&&!a.hasRole("admin")}}),n.saveItem("apps.callysquare.odbcs",{id:1101,title:"ODBC",translate:"CALLYSQUARE.ODBC",state:"app.callysquare.odbcs",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1101)&&!a.hasRole("admin")}}),n.saveItem("apps.callysquare.squareRecordings",{id:1102,title:"SquareRecordings",translate:"CALLYSQUARE.SQUARERECORDINGS",state:"app.callysquare.squareRecordings",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1102)&&!a.hasRole("admin")}}),n.saveItem("apps.callysquare.projects",{id:1103,title:"Projects",translate:"CALLYSQUARE.PROJECTS",state:"app.callysquare.projects",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1103)&&!a.hasRole("admin")}}),n.saveItem("apps.analytics",{id:1200,title:"Analytics",translate:"ANALYTICS.ANALYTICS",icon:"icon-chart-line",weight:13,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1200)&&!a.hasRole("admin")}}),n.saveItem("apps.analytics.metrics",{id:1201,title:"Metrics",translate:"ANALYTICS.METRICS",state:"app.analytics.metrics",weight:3,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1201)&&!a.hasRole("admin")}}),n.saveItem("apps.analytics.extractedReports",{id:1202,title:"ExtractedReports",translate:"ANALYTICS.EXTRACTEDREPORTS",state:"app.analytics.extractedReports",weight:2,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1202)&&!a.hasRole("admin")}}),n.saveItem("apps.analytics.reports",{id:1203,title:"Reports",translate:"ANALYTICS.REPORTS",state:"app.analytics.reports",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1203)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations",{id:1300,title:"Integrations",translate:"INTEGRATIONS.INTEGRATIONS",icon:"icon-heart",weight:14,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1300)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations.zendeskAccounts",{id:1301,title:"ZendeskAccounts",translate:"INTEGRATIONS.ZENDESKACCOUNTS",state:"app.integrations.zendeskAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1301)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations.salesforceAccounts",{id:1302,title:"SalesforceAccounts",translate:"INTEGRATIONS.SALESFORCEACCOUNTS",state:"app.integrations.salesforceAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1302)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations.freshdeskAccounts",{id:1303,title:"FreshdeskAccounts",translate:"INTEGRATIONS.FRESHDESKACCOUNTS",state:"app.integrations.freshdeskAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1303)&&!a.hasRole("admin")}}),n.saveItem("apps.integrations.sugarcrmAccounts",{id:1304,title:"SugarcrmAccounts",translate:"INTEGRATIONS.SUGARCRMACCOUNTS",state:"app.integrations.sugarcrmAccounts",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1304)&&!a.hasRole("admin")}}),n.saveItem("apps.settings",{id:1400,title:"Settings",translate:"SETTINGS.SETTINGS",icon:"icon-cog",weight:15,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1400)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.generals",{id:1401,title:"General",translate:"SETTINGS.GENERAL",state:"app.settings.generals",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1401)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.smtps",{id:1402,title:"Smtp",translate:"SETTINGS.SMTP",state:"app.settings.smtps",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1402)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.networks",{id:1403,title:"Networks",translate:"SETTINGS.NETWORKS",state:"app.settings.networks",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1403)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.customizations",{id:1407,title:"Customizations",translate:"SETTINGS.CUSTOMIZATIONS",state:"app.settings.customizations",weight:1,hidden:function(){return!i.custom||a.hasRole("agent")||!a.hasPermission(1407)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.updates",{id:1404,title:"Updates",translate:"SETTINGS.UPDATES",state:"app.settings.updates",weight:1,hidden:function(){return!i.update||a.hasRole("agent")||!a.hasPermission(1404)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.license",{id:1405,title:"License",translate:"SETTINGS.LICENSE",state:"app.settings.license",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1405)&&!a.hasRole("admin")}}),n.saveItem("apps.settings.system",{id:1406,title:"System",translate:"SETTINGS.SYSTEM",state:"app.settings.system",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1406)&&!a.hasRole("admin")}}),n.saveItem("apps.help",{id:1600,title:"Help",translate:"HELP.HELP",icon:"icon-help",weight:16,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1600)&&!a.hasRole("admin")}}),n.saveItem("apps.help.about",{id:1601,title:"About",translate:"HELP.ABOUT",state:"app.help.about",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1601)&&!a.hasRole("admin")}}),n.saveItem("apps.motiondialer",{id:1500,title:"MotionDialer",translate:"MOTIONDIALER.MOTIONDIALER",icon:"icon-fire",weight:5,hidden:function(){return!i.dialer||a.hasRole("agent")||!a.hasPermission(1500)&&!a.hasRole("admin")}}),n.saveItem("apps.motiondialer.queueCampaigns",{id:1501,title:"QueueCampaigns",translate:"MOTIONDIALER.QUEUECAMPAIGNS",state:"app.motiondialer.queueCampaigns",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1501)&&!a.hasRole("admin")}}),n.saveItem("apps.motiondialer.ivrCampaigns",{id:1502,title:"IvrCampaigns",translate:"MOTIONDIALER.IVRCAMPAIGNS",state:"app.motiondialer.ivrCampaigns",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1502)&&!a.hasRole("admin")}}),n.saveItem("apps.motiondialer.realtime",{id:1510,title:"Realtime",translate:"MOTIONDIALER.REALTIME",state:"app.motiondialer.realtime",weight:1,hidden:function(){return a.hasRole("agent")||!a.hasPermission(1510)&&!a.hasRole("admin")}}),e.$on("$viewContentAnimationEnded",function(n){n.targetScope.$id===e.$id&&t.$broadcast("msSplashScreen::remove")})}e.$inject=["$scope","$rootScope","msNavigationService","Auth","license"],angular.module("motion").controller("MainController",e)}(),function(){"use strict";function e(e,t){function n(){i.folded=!i.folded}function a(){return i.setting.defaultHeaderWhiteLabel?"Motion":i.setting.headerWhiteLabel}var i=this;i.bodyEl=angular.element("body"),i.folded=!1,i.msScrollOptions={suppressScrollX:!0},i.setting=t,i.toggleMsNavigationFolded=n,i.getLogo=a,e.$on("$stateChangeSuccess",function(){i.bodyEl.removeClass("ms-navigation-horizontal-mobile-menu-active")})}e.$inject=["$scope","setting"],angular.module("app.navigation").controller("NavigationController",e)}(),function(){"use strict";function e(e,t){var n=this;n.date=new Date,n.license=t,n.license.gray&&(n.license.deadline=moment(n.license.gray).add(7,"days").format("MMMM Do YYYY, HH:MM"))}e.$inject=["msApi","license"],angular.module("app.quick-panel").controller("QuickPanelController",e)}(),function(){"use strict";function e(e,t){function n(e){o.chatActive=!o.chatActive,o.chatActive&&(o.replyMessage="",o.chat.contact=e,i(0))}function a(){""!==o.replyMessage&&(o.chat.contact.dialog||(o.chat.contact.dialog=[]),o.chat.contact.dialog.push({who:"user",message:o.replyMessage,time:"Just now"}),o.replyMessage="",i(400))}function i(e){var n=angular.element("#chat-dialog");t(function(){n.animate({scrollTop:n[0].scrollHeight},e)},0)}var o=this;o.chat={},o.chatActive=!1,o.replyMessage="",e.request("quickPanel.contacts@get",{},function(e){o.contacts=e.data}),o.toggleChat=n,o.reply=a}e.$inject=["msApi","$timeout"],angular.module("app.quick-panel").controller("ChatTabController",e)}(),function(){"use strict";function e(e,t,n,a){function i(){s.errors=[],n.user.changePassword({id:s.user.id},{oldPassword:s.oldPassword,newPassword:s.password}).$promise.then(function(){t.show(t.simple().textContent("Your password properly updated").position("top right").hideDelay(5e3)),o()}).catch(function(e){console.error(e),s.errors=e.data.errors||[{message:e.toString(),type:"api.user.changePassword"}]})}function o(){e.hide()}var s=this;s.errors=[],s.user=a,s.savePassword=i,s.closeDialog=o}e.$inject=["$mdDialog","$mdToast","api","user"],angular.module("app.toolbar").controller("ChangePasswordController",e)}(),function(){"use strict";function e(e,t,n,a,i,o,s,r,l,d,c,m,u,p,g,h,v){function b(e){return h.cmHopper.getDialerContacts({limit:1}).$promise.then(function(t){if(t&&t.count){var n=t.rows[0],a=n.Contact,i=a.fullName||a.lastName||a.phone,o=a.phone,s=l.confirm().title("Preview Call").clickOutsideToClose(!0).textContent("Do you want to call the contact "+i+" ("+o+")?").ariaLabel("Lucky day").targetEvent(e).ok("Ok").cancel("Cancel");l.show(s).then(function(){return h.cmHopper.callDialerContact({id:n.id}).$promise.then(function(e){console.log("data",e)}).catch(function(e){console.error(e)})}).catch(function(e){return h.cmHopper.update({id:n.id,active:!1}).$promise.then(function(){m.success({title:"Contact rejected",msg:"Contact "+a.phone+" properly rejected"})}).catch(function(e){m.error({title:e.message,msg:e.message})})})}else m.info({title:"No available contacts",msg:"No contacts found"})}).catch(function(e){console.error(e)})}function f(e){i(e).toggle()}function E(e){I.userStatus=e}function y(e){return p.logout(e).then(function(){return g.disconnect(),n.go("app.login")}).catch(function(e){console.error(e)})}function A(e){if(I.languages.hasOwnProperty(e.code))I.selectedLanguage=e,c.put("motion.language",e.code),o.use(e.code),"app.callysquare.projects.edit"===n.current.name&&r.location.reload();else{s.show({template:'<md-toast id="language-message" layout="column" layout-align="center start"><div class="md-toast-content">Motion supports multiple translations through angular-translate module, but currently we do not support the selected language. If you want to help us, send us a message.</div></md-toast>',hideDelay:7e3,position:"top right",parent:"#content"})}}function C(){I.bodyEl.toggleClass("ms-navigation-horizontal-mobile-menu-active")}function x(){u.toggleFolded()}function T(e){for(var n=[],i=u.getFlatNavigation(),o=t.defer(),s=0;s<i.length;s++)i[s].uisref&&n.push(i[s]);return e&&(n=n.filter(function(t){if(angular.lowercase(t.title).search(angular.lowercase(e))>-1)return!0})),a(function(){o.resolve(n)},1e3),o.promise}function S(e){e.uisref&&(e.stateParams?n.go(e.state,e.stateParams):n.go(e.state))}function O(e){l.show({controller:"ChangePasswordController",controllerAs:"vm",templateUrl:"app/toolbar/changepassword/changepassword.html",parent:angular.element(d.body),targetEvent:e,clickOutsideToClose:!0,locals:{user:I.user}})}function w(){return p.getCurrentUser()&&p.hasRole("agent")}function R(e){if(e.id===I.user.id)if(e.online)_.merge(I.user,e),p.updateCurrentUser(I.user);else{var t=l.confirm().title(o.instant("TOOLBAR.WARNING")+"!").textContent(o.instant("TOOLBAR.SOMEONE_LOGGED_YOU_OUT")).ariaLabel(o.instant("TOOLBAR.WARNING")+"!").ok(o.instant("TOOLBAR.STAY_LOGGED")).cancel("Logout");l.show(t).then(function(){p.queueLogin()}).catch(function(e){y(!0)}).finally(function(){_.merge(I.user,e),p.updateCurrentUser(I.user)})}}var I=this;e.global={search:""},I.license=v,I.bodyEl=angular.element("body"),I.userStatusOptions=[{title:"Online",icon:"icon-checkbox-marked-circle",color:"#4CAF50"},{title:"Away",icon:"icon-clock",color:"#FFC107"},{title:"Do not Disturb",icon:"icon-minus-circle",color:"#F44336"},{title:"Invisible",icon:"icon-checkbox-blank-circle-outline",color:"#BDBDBD"},{title:"Offline",icon:"icon-checkbox-blank-circle-outline",color:"#616161"}],I.languages={en:{title:"English",translation:"TOOLBAR.ENGLISH",code:"en",flag:"us"},it:{title:"Italian",translation:"TOOLBAR.ITALIAN",code:"it",flag:"it"},fr:{title:"French",translation:"TOOLBAR.FRENCH",code:"fr",flag:"fr"},ko:{title:"Korean",translation:"TOOLBAR.KOREAN",code:"ko",flag:"ko"},es:{title:"Spanish",translation:"TOOLBAR.SPANISH",code:"es",flag:"es"},sv:{title:"Swedish",translation:"TOOLBAR.SWEDISH",code:"sv",flag:"sv"},ru:{title:"Russian",translation:"TOOLBAR.RUSSIAN",code:"ru",flag:"ru"},de:{title:"German",translation:"TOOLBAR.GERMAN",code:"de",flag:"de"},ja:{title:"Japanese",translation:"TOOLBAR.JAPANESE",code:"ja",flag:"ja"},"zh-CN":{title:"ChineseSimplified",translation:"TOOLBAR.CHINESESIMPLIFIED",code:"zh-CN",flag:"zh-CN"},"zh-TW":{title:"ChineseTraditional",translation:"TOOLBAR.CHINESETRADITIONAL",code:"zh-TW",flag:"zh-TW"},nl:{title:"Dutch",translation:"TOOLBAR.DUTCH",code:"nl",flag:"nl"},fi:{title:"Finnish",translation:"TOOLBAR.FINNISH",code:"fi",flag:"fi"},da:{title:"Danish",translation:"TOOLBAR.DANISH",code:"da",flag:"da"},"pt-PT":{title:"Portuguese",translation:"TOOLBAR.PORTUGUESE",code:"pt-PT",flag:"pt-PT"},no:{title:"Norwegian",translation:"TOOLBAR.NORWEGIAN",code:"no",flag:"no"},hi:{title:"Hindi",translation:"TOOLBAR.HINDI",code:"hi",flag:"hi"},tr:{title:"Turkish",translation:"TOOLBAR.TURKISH",code:"tr",flag:"tr"},fa:{title:"Persian",translation:"TOOLBAR.PERSIAN",code:"fa",flag:"fa"}},I.toggleSidenav=f,I.logout=y,I.changeLanguage=A,I.setUserStatus=E,I.toggleHorizontalMobileMenu=C,I.toggleMsNavigationFolded=x,I.search=T,I.searchResultClick=S,I.changePassword=O,I.isAgent=w,I.onUserUpdate=R,I.preview=b,g.connect(),g.on("user:update",I.onUserUpdate),function(){I.user=p.getCurrentUser(),I.userStatus=I.userStatusOptions[0];var e=c.get("motion.language");e&&I.languages.hasOwnProperty(e)?I.selectedLanguage=I.languages[e]:I.selectedLanguage=I.languages[o.preferredLanguage()]}()}e.$inject=["$rootScope","$q","$state","$timeout","$mdSidenav","$translate","$mdToast","$window","$mdDialog","$document","$cookies","toasty","msNavigationService","Auth","socket","api","license"],angular.module("app.toolbar").controller("ToolbarController",e)}();var urlParams=function(e){var t=new Object,n=e.lastIndexOf("?");if(n>0)for(var a=e.substring(n+1).split("&"),i=0;i<a.length;i++)(n=a[i].indexOf("="))>0&&(t[a[i].substring(0,n)]=a[i].substring(n+1));return t}(window.location.href),t0=new Date,MAX_REQUEST_SIZE=10485760,MAX_WIDTH=12e3,MAX_HEIGHT=12e3,EXPORT_URL="http://exp.draw.io/ImageExport2/export",SHARE_HOST="http://localhost:3000",SAVE_URL="api/square/projects/",VARIABLE_URL="/api/variables",STENCIL_PATH="/assets/plugins/square/stencils",SHAPES_PATH="/assets/plugins/square/shapes",IMAGE_PATH="/assets/plugins/square/images",STYLE_PATH="/assets/plugins/square/styles",CSS_PATH="/assets/plugins/square/styles",OPEN_FORM="api/square/projects/open",TEMPLATE_PATH="/assets/plugins/square/templates",RESOURCES_PATH="/assets/plugins/square/resources",RESOURCE_BASE=RESOURCES_PATH+"/grapheditor",tapAndHoldStartsConnection=!0,showConnectorImg=!0,mxLoadResources=!1,mxLanguages=["it","fr","ko","es","sv","ru","de","ja","zh-CN","zh-TW","nl","fi","da","pt-PT","no","hi","tr","fa"],mxLanguage="en",match=document.cookie.match(new RegExp("(^| )motion.language=([^;]+)"));match&&mxLanguages.includes(match[2])&&(mxLanguage=match[2]);var mxBasePath="assets/plugins/mxgraph",mxClient={VERSION:"2.0.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE"),IS_OP:0<=navigator.userAgent.indexOf("Opera/"),IS_OT:0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&0>navigator.userAgent.indexOf("Chrome/"),IS_GC:0<=navigator.userAgent.indexOf("Chrome/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||0<=navigator.userAgent.indexOf("Epiphany/")||0<=navigator.userAgent.indexOf("AppleWebKit/")||0<=navigator.userAgent.indexOf("Gecko/")||0<=navigator.userAgent.indexOf("Opera/"),NO_FO:0<=navigator.userAgent.indexOf("Firefox/1.")||0<=navigator.userAgent.indexOf("Iceweasel/1.")||0<=navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/1.")||0<=navigator.userAgent.indexOf("Camino/1.")||0<=navigator.userAgent.indexOf("Epiphany/2.")||0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("MSIE")||0<=navigator.userAgent.indexOf("Mozilla/2."),IS_VML:"MICROSOFT INTERNET EXPLORER"==navigator.appName.toUpperCase(),IS_MAC:0<navigator.userAgent.toUpperCase().indexOf("MACINTOSH"),IS_TOUCH:0<navigator.userAgent.toUpperCase().indexOf("IPAD")||0<navigator.userAgent.toUpperCase().indexOf("IPOD")||0<navigator.userAgent.toUpperCase().indexOf("IPHONE")||0<navigator.userAgent.toUpperCase().indexOf("ANDROID"),IS_LOCAL:0>document.location.href.indexOf("http://")&&0>document.location.href.indexOf("https://"),isBrowserSupported:function(){return mxClient.IS_VML||mxClient.IS_SVG},link:function(e,t,n){if(n=n||document,mxClient.IS_IE6)n.write('<link rel="'+e+'" href="'+t+'" charset="ISO-8859-1" type="text/css"/>');else{var a=n.createElement("link");a.setAttribute("rel",e),a.setAttribute("href",t),a.setAttribute("charset","ISO-8859-1"),a.setAttribute("type","text/css"),n.getElementsByTagName("head")[0].appendChild(a)}},include:function(e){document.write('<script src="'+e+'"><\/script>')},dispose:function(){for(var e=0;e<mxEvent.objects.length;e++)null!=mxEvent.objects[e].mxListenerList&&mxEvent.removeAllListeners(mxEvent.objects[e])}};if(mxClient.IS_OP&&mxClient.IS_OT?mxClient.CSS_PREFIX="O":mxClient.IS_SF||mxClient.IS_GC?mxClient.CSS_PREFIX="Webkit":mxClient.IS_MT?mxClient.CSS_PREFIX="Moz":mxClient.IS_IE&&9<=document.documentMode&&(mxClient.CSS_PREFIX="ms"),void 0===mxLoadResources&&(mxLoadResources=!0),"undefined"==typeof mxResourceExtension&&(mxResourceExtension=".txt"),"undefined"==typeof mxLoadStylesheets&&(mxLoadStylesheets=!0),void 0!==mxBasePath&&0<mxBasePath.length?("/"==mxBasePath.substring(mxBasePath.length-1)&&(mxBasePath=mxBasePath.substring(0,mxBasePath.length-1)),mxClient.basePath=mxBasePath):mxClient.basePath=".","undefined"!=typeof mxImageBasePath&&0<mxImageBasePath.length?("/"==mxImageBasePath.substring(mxImageBasePath.length-1)&&(mxImageBasePath=mxImageBasePath.substring(0,mxImageBasePath.length-1)),mxClient.imageBasePath=mxImageBasePath):mxClient.imageBasePath=mxClient.basePath+"/images",mxClient.language=void 0!==mxLanguage?mxLanguage:mxClient.IS_IE?navigator.userLanguage:navigator.language,mxClient.defaultLanguage="undefined"!=typeof mxDefaultLanguage?mxDefaultLanguage:"en",mxLoadStylesheets&&mxClient.link("stylesheet",mxClient.basePath+"/css/common.css"),void 0!==mxLanguages&&(mxClient.languages=mxLanguages),mxClient.IS_IE){if(9<=document.documentMode)mxClient.IS_VML=!1,mxClient.IS_SVG=!0;else{8==document.documentMode?(document.namespaces.add(mxClient.VML_PREFIX,"urn:schemas-microsoft-com:vml","#default#VML"),document.namespaces.add(mxClient.OFFICE_PREFIX,"urn:schemas-microsoft-com:office:office","#default#VML")):(document.namespaces.add(mxClient.VML_PREFIX,"urn:schemas-microsoft-com:vml"),document.namespaces.add(mxClient.OFFICE_PREFIX,"urn:schemas-microsoft-com:office:office"));var ss=document.createStyleSheet();ss.cssText="v\\:*{behavior:url(#default#VML)}o\\:*{behavior:url(#default#VML)}",mxLoadStylesheets&&mxClient.link("stylesheet",mxClient.basePath+"/css/explorer.css")}window.attachEvent("onunload",mxClient.dispose)}var mxLog={consoleName:"Console",TRACE:!1,DEBUG:!0,WARN:!0,buffer:"",init:function(){if(null==mxLog.window&&null!=document.body){var e=mxLog.consoleName+" - mxGraph "+mxClient.VERSION,t=document.createElement("table");t.setAttribute("width","100%"),t.setAttribute("height","100%");var n=document.createElement("tbody"),a=document.createElement("tr"),i=document.createElement("td");if(i.style.verticalAlign="top",mxLog.textarea=document.createElement("textarea"),mxLog.textarea.setAttribute("readOnly","true"),mxLog.textarea.style.height="100%",mxLog.textarea.style.resize="none",mxLog.textarea.value=mxLog.buffer,mxLog.textarea.style.width=mxClient.IS_NS&&"BackCompat"!=document.compatMode?"99%":"100%",i.appendChild(mxLog.textarea),a.appendChild(i),n.appendChild(a),a=document.createElement("tr"),mxLog.td=document.createElement("td"),mxLog.td.style.verticalAlign="top",mxLog.td.setAttribute("height","30px"),a.appendChild(mxLog.td),n.appendChild(a),t.appendChild(n),mxLog.addButton("Info",function(e){mxLog.info()}),mxLog.addButton("DOM",function(e){e=mxUtils.getInnerHtml(document.body),mxLog.debug(e)}),mxLog.addButton("Trace",function(e){mxLog.TRACE=!mxLog.TRACE,mxLog.TRACE?mxLog.debug("Tracing enabled"):mxLog.debug("Tracing disabled")}),mxLog.addButton("Copy",function(e){try{mxUtils.copy(mxLog.textarea.value)}catch(e){mxUtils.alert(e)}}),mxLog.addButton("Show",function(e){try{mxUtils.popup(mxLog.textarea.value)}catch(e){mxUtils.alert(e)}}),mxLog.addButton("Clear",function(e){mxLog.textarea.value=""}),a=n=0,"number"==typeof window.innerWidth?(n=window.innerHeight,a=window.innerWidth):(n=document.documentElement.clientHeight||document.body.clientHeight,a=document.body.clientWidth),mxLog.window=new mxWindow(e,t,Math.max(0,a-320),Math.max(0,n-210),300,160),mxLog.window.setMaximizable(!0),mxLog.window.setScrollable(!1),mxLog.window.setResizable(!0),mxLog.window.setClosable(!0),mxLog.window.destroyOnClose=!1,(mxClient.IS_NS||mxClient.IS_IE)&&!mxClient.IS_GC&&!mxClient.IS_SF&&"BackCompat"!=document.compatMode){var o=mxLog.window.getElement(),e=function(e,t){mxLog.textarea.style.height=Math.max(0,o.offsetHeight-70)+"px"};mxLog.window.addListener(mxEvent.RESIZE_END,e),mxLog.window.addListener(mxEvent.MAXIMIZE,e),mxLog.window.addListener(mxEvent.NORMALIZE,e),mxLog.textarea.style.height="92px"}}},info:function(){mxLog.writeln(mxUtils.toString(navigator))},addButton:function(e,t){var n=document.createElement("button");mxUtils.write(n,e),mxEvent.addListener(n,"click",t),mxLog.td.appendChild(n)},isVisible:function(){return null!=mxLog.window&&mxLog.window.isVisible()},show:function(){mxLog.setVisible(!0)},setVisible:function(e){null==mxLog.window&&mxLog.init(),null!=mxLog.window&&mxLog.window.setVisible(e)},enter:function(e){if(mxLog.TRACE)return mxLog.writeln("Entering "+e),(new Date).getTime()},leave:function(e,t){if(mxLog.TRACE){var n=0!=t?" ("+((new Date).getTime()-t)+" ms)":"";mxLog.writeln("Leaving "+e+n)}},debug:function(){mxLog.DEBUG&&mxLog.writeln.apply(this,arguments)},warn:function(){mxLog.WARN&&mxLog.writeln.apply(this,arguments)},write:function(){for(var e="",t=0;t<arguments.length;t++)e+=arguments[t],t<arguments.length-1&&(e+=" ");null!=mxLog.textarea?(mxLog.textarea.value+=e,0<=navigator.userAgent.indexOf("Presto/2.5")&&(mxLog.textarea.style.visibility="hidden",mxLog.textarea.style.visibility="visible"),mxLog.textarea.scrollTop=mxLog.textarea.scrollHeight):mxLog.buffer+=e},writeln:function(){for(var e="",t=0;t<arguments.length;t++)e+=arguments[t],t<arguments.length-1&&(e+=" ");mxLog.write(e+"\n")}},mxObjectIdentity={FIELD_NAME:"mxObjectId",counter:0,get:function(e){if("object"==typeof e&&null==e[mxObjectIdentity.FIELD_NAME]){var t=mxUtils.getFunctionName(e.constructor);e[mxObjectIdentity.FIELD_NAME]=t+"#"+mxObjectIdentity.counter++}return e[mxObjectIdentity.FIELD_NAME]},clear:function(e){"object"==typeof e&&delete e[mxObjectIdentity.FIELD_NAME]}};mxDictionary.prototype.map=null,mxDictionary.prototype.clear=function(){this.map={}},mxDictionary.prototype.get=function(e){return e=mxObjectIdentity.get(e),this.map[e]},mxDictionary.prototype.put=function(e,t){var n=mxObjectIdentity.get(e),a=this.map[n];return this.map[n]=t,a},mxDictionary.prototype.remove=function(e){e=mxObjectIdentity.get(e);var t=this.map[e];return delete this.map[e],t},mxDictionary.prototype.getKeys=function(){var e,t=[];for(e in this.map)t.push(e);return t},mxDictionary.prototype.getValues=function(){var e,t=[];for(e in this.map)t.push(this.map[e]);return t},mxDictionary.prototype.visit=function(e){for(var t in this.map)e(t,this.map[t])};var mxResources={resources:[],extension:mxResourceExtension,resourcesEncoded:!1,loadDefaultBundle:!0,loadSpecialBundle:!0,isLanguageSupported:function(e){return null==mxClient.languages||0<=mxUtils.indexOf(mxClient.languages,e)},getDefaultBundle:function(e,t){return mxResources.loadDefaultBundle||!mxResources.isLanguageSupported(t)?e+mxResources.extension:null},getSpecialBundle:function(e,t){if(null==mxClient.languages||!this.isLanguageSupported(t)){var n=t.indexOf("-");0<n&&(t=t.substring(0,n))}return mxResources.loadSpecialBundle&&mxResources.isLanguageSupported(t)&&t!=mxClient.defaultLanguage?e+"_"+t+mxResources.extension:null},add:function(e,t){if((t=null!=t?t:mxClient.language.toLowerCase())!=mxConstants.NONE){var n=mxResources.getDefaultBundle(e,t);if(null!=n)try{var a=mxUtils.load(n);a.isReady()&&mxResources.parse(a.getText())}catch(e){}if(null!=(n=mxResources.getSpecialBundle(e,t)))try{(a=mxUtils.load(n)).isReady()&&mxResources.parse(a.getText())}catch(e){}}},parse:function(e){if(null!=e){e=e.split("\n");for(var t=0;t<e.length;t++)if("#"!=e[t].charAt(0)){var n=e[t].indexOf("=");if(0<n){var a=e[t].substring(0,n),i=e[t].length;13==e[t].charCodeAt(i-1)&&i--,n=e[t].substring(n+1,i),this.resourcesEncoded?(n=n.replace(/\\(?=u[a-fA-F\d]{4})/g,"%"),mxResources.resources[a]=unescape(n)):mxResources.resources[a]=n}}}},get:function(e,t,n){if(null==(e=mxResources.resources[e])&&(e=n),null!=e&&null!=t){n=[];for(var a=null,i=0;i<e.length;i++){var o=e.charAt(i);"{"==o?a="":null!=a&&"}"==o?(0<=(a=parseInt(a)-1)&&a<t.length&&n.push(t[a]),a=null):null!=a?a+=o:n.push(o)}e=n.join("")}return e}};mxPoint.prototype.x=null,mxPoint.prototype.y=null,mxPoint.prototype.equals=function(e){return e.x==this.x&&e.y==this.y},mxPoint.prototype.clone=function(){return mxUtils.clone(this)},mxRectangle.prototype=new mxPoint,mxRectangle.prototype.constructor=mxRectangle,mxRectangle.prototype.width=null,mxRectangle.prototype.height=null,mxRectangle.prototype.setRect=function(e,t,n,a){this.x=e,this.y=t,this.width=n,this.height=a},mxRectangle.prototype.getCenterX=function(){return this.x+this.width/2},mxRectangle.prototype.getCenterY=function(){return this.y+this.height/2},mxRectangle.prototype.add=function(e){if(null!=e){var t=Math.min(this.x,e.x),n=Math.min(this.y,e.y),a=Math.max(this.x+this.width,e.x+e.width);e=Math.max(this.y+this.height,e.y+e.height),this.x=t,this.y=n,this.width=a-t,this.height=e-n}},mxRectangle.prototype.grow=function(e){this.x-=e,this.y-=e,this.width+=2*e,this.height+=2*e},mxRectangle.prototype.getPoint=function(){return new mxPoint(this.x,this.y)},mxRectangle.prototype.equals=function(e){return e.x==this.x&&e.y==this.y&&e.width==this.width&&e.height==this.height};var mxEffects={animateChanges:function(e,t,n){var a=0,i=function(){for(var s=!1,r=0;r<t.length;r++){var l=t[r];if(l instanceof mxGeometryChange||l instanceof mxTerminalChange||l instanceof mxValueChange||l instanceof mxChildChange||l instanceof mxStyleChange){var d=e.getView().getState(l.cell||l.child,!1);if(null!=d)if(s=!0,l.constructor!=mxGeometryChange||e.model.isEdge(l.cell))mxUtils.setOpacity(d.shape.node,100*a/10);else{var c=e.getView().scale,m=(l.geometry.x-l.previous.x)*c,u=(l.geometry.y-l.previous.y)*c,p=(l.geometry.width-l.previous.width)*c,c=(l.geometry.height-l.previous.height)*c;0==a?(d.x-=m,d.y-=u,d.width-=p,d.height-=c):(d.x+=m/10,d.y+=u/10,d.width+=p/10,d.height+=c/10),e.cellRenderer.redraw(d),mxEffects.cascadeOpacity(e,l.cell,100*a/10)}}}10>a&&s?(a++,window.setTimeout(i,o)):null!=n&&n()},o=30;i()},cascadeOpacity:function(e,t,n){for(var a=e.model.getChildCount(t),i=0;i<a;i++){var o=e.model.getChildAt(t,i),s=e.getView().getState(o);null!=s&&(mxUtils.setOpacity(s.shape.node,n),mxEffects.cascadeOpacity(e,o,n))}if(null!=(t=e.model.getEdges(t)))for(i=0;i<t.length;i++)null!=(a=e.getView().getState(t[i]))&&mxUtils.setOpacity(a.shape.node,n)},fadeOut:function(e,t,n,a,i,o){a=a||40,i=i||30;var s=t||100;if(mxUtils.setOpacity(e,s),o||null==o){var r=function(){s=Math.max(s-a,0),mxUtils.setOpacity(e,s),0<s?window.setTimeout(r,i):(e.style.visibility="hidden",n&&e.parentNode&&e.parentNode.removeChild(e))};window.setTimeout(r,i)}else e.style.visibility="hidden",n&&e.parentNode&&e.parentNode.removeChild(e)}},mxUtils={errorResource:"none"!=mxClient.language?"error":"",closeResource:"none"!=mxClient.language?"close":"",errorImage:mxClient.imageBasePath+"/error.gif",removeCursors:function(e){if(null!=e.style&&(e.style.cursor=""),null!=(e=e.childNodes))for(var t=e.length,n=0;n<t;n+=1)mxUtils.removeCursors(e[n])},getCurrentStyle:function(){return mxClient.IS_IE?function(e){return null!=e?e.currentStyle:null}:function(e){return null!=e?window.getComputedStyle(e,""):null}}(),hasScrollbars:function(e){return null!=(e=mxUtils.getCurrentStyle(e))&&("scroll"==e.overflow||"auto"==e.overflow)},bind:function(e,t){return function(){return t.apply(e,arguments)}},eval:function(a){var b=null;if(0<=a.indexOf("function"))try{eval("var _mxJavaScriptExpression="+a),b=_mxJavaScriptExpression,_mxJavaScriptExpression=null}catch(e){mxLog.warn(e.message+" while evaluating "+a)}else try{b=eval(a)}catch(e){mxLog.warn(e.message+" while evaluating "+a)}return b},findNode:function(e,t,n){var a=e.getAttribute(t);if(null!=a&&a==n)return e;for(e=e.firstChild;null!=e;){if(null!=(a=mxUtils.findNode(e,t,n)))return a;e=e.nextSibling}return null},findNodeByAttribute:function(){return 9<=document.documentMode?function(e,t,n){var a=null;if(null!=e)if(e.nodeType==mxConstants.NODETYPE_ELEMENT&&e.getAttribute(t)==n)a=e;else for(e=e.firstChild;null!=e&&null==a;)a=mxUtils.findNodeByAttribute(e,t,n),e=e.nextSibling;return a}:mxClient.IS_IE?function(e,t,n){return null==e?null:e.ownerDocument.selectSingleNode("//*[@"+t+"='"+n+"']")}:function(e,t,n){return null==e?null:e.ownerDocument.evaluate("//*[@"+t+"='"+n+"']",e.ownerDocument,null,XPathResult.ANY_TYPE,null).iterateNext()}}(),getFunctionName:function(e){n=null;if(null!=e)if(null!=e.name)n=e.name;else{for(e=e.toString(),n=9;" "==e.charAt(n);)n++;var t=e.indexOf("(",n),n=e.substring(n,t)}return n},indexOf:function(e,t){if(null!=e&&null!=t)for(var n=0;n<e.length;n++)if(e[n]==t)return n;return-1},remove:function(e,t){var n=null;if("object"==typeof t)for(var a=mxUtils.indexOf(t,e);0<=a;)t.splice(a,1),n=e,a=mxUtils.indexOf(t,e);for(var i in t)t[i]==e&&(delete t[i],n=e);return n},isNode:function(e,t,n,a){return!(null==e||isNaN(e.nodeType)||null!=t&&e.nodeName.toLowerCase()!=t.toLowerCase())&&(null==n||e.getAttribute(n)==a)},getChildNodes:function(e,t){t=t||mxConstants.NODETYPE_ELEMENT;for(var n=[],a=e.firstChild;null!=a;)a.nodeType==t&&n.push(a),a=a.nextSibling;return n},createXmlDocument:function(){var e=null;return document.implementation&&document.implementation.createDocument?e=document.implementation.createDocument("","",null):window.ActiveXObject&&(e=new ActiveXObject("Microsoft.XMLDOM")),e},parseXml:function(){return mxClient.IS_IE&&(void 0===document.documentMode||9>document.documentMode)?function(e){var t=mxUtils.createXmlDocument();return t.async="false",t.loadXML(e),t}:function(e){return(new DOMParser).parseFromString(e,"text/xml")}}(),clearSelection:function(){return document.selection?function(){document.selection.empty()}:window.getSelection?function(){window.getSelection().removeAllRanges()}:void 0}(),getPrettyXml:function(e,t,n){var a=[];if(null!=e)if(t=t||"  ",n=n||"",e.nodeType==mxConstants.NODETYPE_TEXT)a.push(e.nodeValue);else{a.push(n+"<"+e.nodeName);var i=e.attributes;if(null!=i)for(var o=0;o<i.length;o++){var s=mxUtils.htmlEntities(i[o].nodeValue);a.push(" "+i[o].nodeName+'="'+s+'"')}if(null!=(i=e.firstChild)){for(a.push(">\n");null!=i;)a.push(mxUtils.getPrettyXml(i,t,n+t)),i=i.nextSibling;a.push(n+"</"+e.nodeName+">\n")}else a.push("/>\n")}return a.join("")},removeWhitespace:function(e,t){for(var n=t?e.previousSibling:e.nextSibling;null!=n&&n.nodeType==mxConstants.NODETYPE_TEXT;){var a=t?n.previousSibling:n.nextSibling,i=mxUtils.getTextContent(n);0==mxUtils.trim(i).length&&n.parentNode.removeChild(n),n=a}},htmlEntities:function(e,t){return e=(e||"").replace(/&/g,"&amp;"),e=e.replace(/"/g,"&quot;"),e=e.replace(/\'/g,"&#39;"),e=e.replace(/</g,"&lt;"),e=e.replace(/>/g,"&gt;"),(null==t||t)&&(e=e.replace(/\n/g,"&#xa;")),e},isVml:function(e){return null!=e&&"urn:schemas-microsoft-com:vml"==e.tagUrn},getXml:function(e,t){var n="";return null!=e&&(n=e.xml,n=null==n?e.innerHTML?e.innerHTML:(new XMLSerializer).serializeToString(e):n.replace(/\r\n\t[\t]*/g,"").replace(/>\r\n/g,">").replace(/\r\n/g,"\n")),n=n.replace(/\n/g,t||"&#xa;")},getTextContent:function(e){var t="";return null!=e&&(null!=e.firstChild&&(e=e.firstChild),t=e.nodeValue||""),t},getInnerHtml:function(){return mxClient.IS_IE?function(e){return null!=e?e.innerHTML:""}:function(e){return null!=e?(new XMLSerializer).serializeToString(e):""}}(),getOuterHtml:function(){return mxClient.IS_IE?function(e){if(null!=e){if(null!=e.outerHTML)return e.outerHTML;var t=[];t.push("<"+e.nodeName);var n=e.attributes;if(null!=n)for(var a=0;a<n.length;a++){var i=n[a].nodeValue;null!=i&&0<i.length&&(t.push(" "),t.push(n[a].nodeName),t.push('="'),t.push(i),t.push('"'))}return 0==e.innerHTML.length?t.push("/>"):(t.push(">"),t.push(e.innerHTML),t.push("</"+e.nodeName+">")),t.join("")}return""}:function(e){return null!=e?(new XMLSerializer).serializeToString(e):""}}(),write:function(e,t){var n=e.ownerDocument.createTextNode(t);return null!=e&&e.appendChild(n),n},writeln:function(e,t){var n=e.ownerDocument.createTextNode(t);return null!=e&&(e.appendChild(n),e.appendChild(document.createElement("br"))),n},br:function(e,t){t=t||1;for(var n=null,a=0;a<t;a++)null!=e&&(n=e.ownerDocument.createElement("br"),e.appendChild(n));return n},button:function(e,t,n){return n=null!=n?n:document,n=n.createElement("button"),mxUtils.write(n,e),mxEvent.addListener(n,"click",function(e){t(e)}),n},para:function(e,t){var n=document.createElement("p");return mxUtils.write(n,t),null!=e&&e.appendChild(n),n},addTransparentBackgroundFilter:function(e){e.style.filter+="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+mxClient.imageBasePath+"/transparent.gif', sizingMethod='scale')"},linkAction:function(e,t,n,a,i){return mxUtils.link(e,t,function(){n.execute(a)},i)},linkInvoke:function(e,t,n,a,i,o){return mxUtils.link(e,t,function(){n[a](i)},o)},link:function(e,t,n,a){var i=document.createElement("span");return i.style.color="blue",i.style.textDecoration="underline",i.style.cursor="pointer",null!=a&&(i.style.paddingLeft=a+"px"),mxEvent.addListener(i,"click",n),mxUtils.write(i,t),null!=e&&e.appendChild(i),i},fit:function(e){var t=parseInt(e.offsetLeft),n=parseInt(e.offsetWidth),a=document.body,i=document.documentElement,o=(a.scrollLeft||i.scrollLeft)+(a.clientWidth||i.clientWidth);t+n>o&&(e.style.left=Math.max(a.scrollLeft||i.scrollLeft,o-n)+"px"),(t=parseInt(e.offsetTop))+(n=parseInt(e.offsetHeight))>(o=(a.scrollTop||i.scrollTop)+Math.max(a.clientHeight||0,i.clientHeight))&&(e.style.top=Math.max(a.scrollTop||i.scrollTop,o-n)+"px")},open:function(e){if(mxClient.IS_NS){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect")}catch(e){return mxUtils.alert("Permission to read file denied."),""}var t=Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);return t.initWithPath(e),t.exists()?((e=Components.classes["@mozilla.org/network/file-input-stream;1"].createInstance(Components.interfaces.nsIFileInputStream)).init(t,1,4,null),(t=Components.classes["@mozilla.org/scriptableinputstream;1"].createInstance(Components.interfaces.nsIScriptableInputStream)).init(e),t.read(t.available())):(mxUtils.alert("File not found."),"")}return t=new ActiveXObject("Scripting.FileSystemObject").OpenTextFile(e,1),e=t.readAll(),t.close(),e},save:function(e,t){if(mxClient.IS_NS){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect")}catch(e){return void mxUtils.alert("Permission to write file denied.")}var n=Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);n.initWithPath(e),n.exists()||n.create(0,420);var a=Components.classes["@mozilla.org/network/file-output-stream;1"].createInstance(Components.interfaces.nsIFileOutputStream);a.init(n,34,4,null),a.write(t,t.length),a.flush(),a.close()}else(n=new ActiveXObject("Scripting.FileSystemObject").CreateTextFile(e,!0)).Write(t),n.Close()},saveAs:function(e){var t=document.createElement("iframe");t.setAttribute("src",""),t.style.visibility="hidden",document.body.appendChild(t);try{if(mxClient.IS_NS){var n=t.contentDocument;n.open(),n.write(e),n.close();try{netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"),t.focus(),saveDocument(n)}catch(e){mxUtils.alert("Permission to save document denied.")}}else(n=t.contentWindow.document).write(e),n.execCommand("SaveAs",!1,document.location)}finally{document.body.removeChild(t)}},copy:function(e){if(window.clipboardData)window.clipboardData.setData("Text",e);else{netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");var t=Components.classes["@mozilla.org/widget/clipboard;1"].createInstance(Components.interfaces.nsIClipboard);if(t){var n=Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);if(n){n.addDataFlavor("text/unicode");var a=Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);a.data=e,n.setTransferData("text/unicode",a,2*e.length),t.setData(n,null,Components.interfaces.nsIClipboard.kGlobalClipboard)}}}},load:function(e){return(e=new mxXmlRequest(e,null,"GET",!1)).send(),e},get:function(e,t,n){return new mxXmlRequest(e,null,"GET").send(t,n)},post:function(e,t,n,a){return new mxXmlRequest(e,t).send(n,a)},submit:function(e,t,n,a){return new mxXmlRequest(e,t).simulate(n,a)},loadInto:function(e,t,n){mxClient.IS_IE?t.onreadystatechange=function(){4==t.readyState&&n()}:t.addEventListener("load",n,!1),t.load(e)},getValue:function(e,t,n){return null==(e=null!=e?e[t]:null)&&(e=n),e},getNumber:function(e,t,n){return null==(e=null!=e?e[t]:null)&&(e=n||0),Number(e)},getColor:function(e,t,n){return e=null!=e?e[t]:null,null==e?e=n:e==mxConstants.NONE&&(e=null),e},clone:function(e,t,n){n=null!=n&&n;i=null;if(null!=e&&"function"==typeof e.constructor){var a,i=new e.constructor;for(a in e)a!=mxObjectIdentity.FIELD_NAME&&(null==t||0>mxUtils.indexOf(t,a))&&(i[a]=n||"object"!=typeof e[a]?e[a]:mxUtils.clone(e[a]))}return i},equalPoints:function(e,t){if(null==e&&null!=t||null!=e&&null==t||null!=e&&null!=t&&e.length!=t.length)return!1;if(null!=e&&null!=t)for(var n=0;n<e.length;n++)if(e[n]==t[n]||null!=e[n]&&!e[n].equals(t[n]))return!1;return!0},equalEntries:function(e,t){if(null==e&&null!=t||null!=e&&null==t||null!=e&&null!=t&&e.length!=t.length)return!1;if(null!=e&&null!=t)for(var n in e)if(e[n]!=t[n])return!1;return!0},extend:function(e,t){var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e},toString:function(e){var t,n="";for(t in e)try{if(null==e[t])n+=t+" = [null]\n";else if("function"==typeof e[t])n+=t+" => [Function]\n";else if("object"==typeof e[t])var a=mxUtils.getFunctionName(e[t].constructor),n=n+(t+" => [")+a+"]\n";else n+=t+" = "+e[t]+"\n"}catch(e){n+=t+"="+e.message}return n},toRadians:function(e){return Math.PI*e/180},arcToCurves:function(e,t,n,a,i,o,s,r,l){if(r-=e,l-=t,0===n||0===a)return b;n=Math.abs(n),a=Math.abs(a);var d=-r/2,c=-l/2,m=Math.cos(i*Math.PI/180);i=m*d+(b=Math.sin(i*Math.PI/180))*c;d=-1*b*d+m*c;1<(v=(c=i*i)/(h=n*n)+(g=d*d)/(E=a*a))?(n*=Math.sqrt(v),a*=Math.sqrt(v),o=0):(v=1,o===s&&(v=-1),o=v*Math.sqrt((h*E-h*g-E*c)/(h*g+E*c))),r=m*(c=o*n*d/a)-b*(g=-1*o*a*i/n)+r/2,l=b*c+m*g+l/2,o=0<=(h=Math.atan2((d-g)/a,(i-c)/n)-Math.atan2(0,1))?h:2*Math.PI+h,i=0<=(h=Math.atan2((-d-g)/a,(-i-c)/n)-Math.atan2((d-g)/a,(i-c)/n))?h:2*Math.PI+h,0==s&&0<i?i-=2*Math.PI:0!=s&&0>i&&(i+=2*Math.PI),s=2*i/Math.PI,i/=s=Math.ceil(0>s?-1*s:s),d=8/3*Math.sin(i/4)*Math.sin(i/4)/Math.sin(i/2),c=m*n,m*=a,n*=b,a*=b;for(var u=Math.cos(o),p=Math.sin(o),g=-d*(c*p+a*u),h=-d*(n*p-m*u),v=E=0,b=[],f=0;f<s;++f){o+=i;var E=c*(u=Math.cos(o))-a*(p=Math.sin(o))+r,v=n*u+m*p+l,y=-d*(c*p+a*u),u=-d*(n*p-m*u);b[p=6*f]=Number(g+e),b[p+1]=Number(h+t),b[p+2]=Number(E-y+e),b[p+3]=Number(v-u+t),b[p+4]=Number(E+e),b[p+5]=Number(v+t),g=E+y,h=v+u}return b},getBoundingBox:function(e,t){a=null;if(null!=e&&null!=t&&0!=t){var n=mxUtils.toRadians(t),a=Math.cos(n),i=Math.sin(n),o=new mxPoint(e.x+e.width/2,e.y+e.height/2),s=new mxPoint(e.x,e.y),r=new mxPoint((n=new mxPoint(e.x+e.width,e.y)).x,e.y+e.height),l=new mxPoint(e.x,r.y),s=mxUtils.getRotatedPoint(s,a,i,o),n=mxUtils.getRotatedPoint(n,a,i,o),r=mxUtils.getRotatedPoint(r,a,i,o),l=mxUtils.getRotatedPoint(l,a,i,o);(a=new mxRectangle(s.x,s.y,0,0)).add(new mxRectangle(n.x,n.y,0,0)),a.add(new mxRectangle(r.x,r.y,0,0)),a.add(new mxRectangle(l.x,l.y,0,0))}return a},getRotatedPoint:function(e,t,n,a){a=null!=a?a:new mxPoint;var i=e.x-a.x;return e=e.y-a.y,new mxPoint(i*t-e*n+a.x,e*t+i*n+a.y)},getPortConstraints:function(e,t,n,a){return null==(e=mxUtils.getValue(e.style,mxConstants.STYLE_PORT_CONSTRAINT,null))?a:(a=e.toString(),e=mxConstants.DIRECTION_MASK_NONE,0<=a.indexOf(mxConstants.DIRECTION_NORTH)&&(e|=mxConstants.DIRECTION_MASK_NORTH),0<=a.indexOf(mxConstants.DIRECTION_WEST)&&(e|=mxConstants.DIRECTION_MASK_WEST),0<=a.indexOf(mxConstants.DIRECTION_SOUTH)&&(e|=mxConstants.DIRECTION_MASK_SOUTH),0<=a.indexOf(mxConstants.DIRECTION_EAST)&&(e|=mxConstants.DIRECTION_MASK_EAST),e)},reversePortConstraints:function(e){var t=0,t=(t=(t=(e&mxConstants.DIRECTION_MASK_WEST)<<3)|(e&mxConstants.DIRECTION_MASK_NORTH)<<1)|(e&mxConstants.DIRECTION_MASK_SOUTH)>>1;return t|=(e&mxConstants.DIRECTION_MASK_EAST)>>3},findNearestSegment:function(e,t,n){var a=-1;if(0<e.absolutePoints.length)for(var i=e.absolutePoints[0],o=null,s=1;s<e.absolutePoints.length;s++){var r=e.absolutePoints[s],i=mxUtils.ptSegDistSq(i.x,i.y,r.x,r.y,t,n);(null==o||i<o)&&(o=i,a=s-1),i=r}return a},rectangleIntersectsSegment:function(e,t,n){var a=e.y,i=e.x,o=a+e.height,s=i+e.width;e=t.x;var r=n.x;if(t.x>n.x&&(e=n.x,r=t.x),r>s&&(r=s),e<i&&(e=i),e>r)return!1;var i=t.y,s=n.y,l=n.x-t.x;return 1e-7<Math.abs(l)&&(n=(n.y-t.y)/l,t=t.y-n*t.x,i=n*e+t,s=n*r+t),i>s&&(t=s,s=i,i=t),s>o&&(s=o),i<a&&(i=a),!(i>s)},contains:function(e,t,n){return e.x<=t&&e.x+e.width>=t&&e.y<=n&&e.y+e.height>=n},intersects:function(e,t){var n=e.width,a=e.height,i=t.width,o=t.height;if(0>=i||0>=o||0>=n||0>=a)return!1;var s=e.x,r=e.y,l=t.x,d=t.y,o=o+d,n=n+s,a=a+r;return((i=i+l)<l||i>s)&&(o<d||o>r)&&(n<s||n>l)&&(a<r||a>d)},intersectsHotspot:function(e,t,n,a,i,o){if(a=null!=a?a:1,i=null!=i?i:0,o=null!=o?o:0,0<a){var s=e.getCenterX(),r=e.getCenterY(),l=e.width,d=e.height,c=mxUtils.getValue(e.style,mxConstants.STYLE_STARTSIZE)*e.view.scale;return 0<c&&(mxUtils.getValue(e.style,mxConstants.STYLE_HORIZONTAL,!0)?(r=e.y+c/2,d=c):(s=e.x+c/2,l=c)),l=Math.max(i,l*a),d=Math.max(i,d*a),0<o&&(l=Math.min(l,o),d=Math.min(d,o)),a=new mxRectangle(s-l/2,r-d/2,l,d),0!=(s=mxUtils.toRadians(mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION)||0))&&(i=Math.cos(-s),o=Math.sin(-s),s=new mxPoint(e.getCenterX(),e.getCenterY()),e=mxUtils.getRotatedPoint(new mxPoint(t,n),i,o,s),t=e.x,n=e.y),mxUtils.contains(a,t,n)}return!0},getOffset:function(e,t){var n=0,a=0;if(null!=t&&t)var i=document.body,o=document.documentElement,n=n+(i.scrollLeft||o.scrollLeft),a=a+(i.scrollTop||o.scrollTop);for(;e.offsetParent;)n+=e.offsetLeft,a+=e.offsetTop,e=e.offsetParent;return new mxPoint(n,a)},getScrollOrigin:function(e){for(var t=document.body,n=document.documentElement,a=new mxPoint(t.scrollLeft||n.scrollLeft,t.scrollTop||n.scrollTop);null!=e&&e!=t&&e!=n;)!isNaN(e.scrollLeft)&&!isNaN(e.scrollTop)&&(a.x+=e.scrollLeft,a.y+=e.scrollTop),e=e.parentNode;return a},convertPoint:function(e,t,n){var a=mxUtils.getScrollOrigin(e);return e=mxUtils.getOffset(e),e.x-=a.x,e.y-=a.y,new mxPoint(t-e.x,n-e.y)},ltrim:function(e,t){return e.replace(RegExp("^["+(t||"\\s")+"]+","g"),"")},rtrim:function(e,t){return e.replace(RegExp("["+(t||"\\s")+"]+$","g"),"")},trim:function(e,t){return mxUtils.ltrim(mxUtils.rtrim(e,t),t)},isNumeric:function(e){return null!=e&&(null==e.length||0<e.length&&0>e.indexOf("0x")&&0>e.indexOf("0X"))&&!isNaN(e)},mod:function(e,t){return(e%t+t)%t},intersection:function(e,t,n,a,i,o,s,r){var l=(r-o)*(n-e)-(s-i)*(a-t);return s=((s-i)*(t-o)-(r-o)*(e-i))/l,i=((n-e)*(t-o)-(a-t)*(e-i))/l,0<=s&&1>=s&&0<=i&&1>=i?new mxPoint(e+s*(n-e),t+s*(a-t)):null},ptSegDistSq:function(e,t,n,a,i,o){return n-=e,a-=t,i-=e,o-=t,0>=i*n+o*a?n=0:(i=n-i,o=a-o,e=i*n+o*a,n=0>=e?0:e*e/(n*n+a*a)),0>(i=i*i+o*o-n)&&(i=0),i},relativeCcw:function(e,t,n,a,i,o){return n-=e,a-=t,i-=e,o-=t,0==(e=i*a-o*n)&&0<(e=i*n+o*a)&&0>(e=(i-n)*n+(o-a)*a)&&(e=0),0>e?-1:0<e?1:0},animateChanges:function(e,t){mxEffects.animateChanges.apply(this,arguments)},cascadeOpacity:function(e,t,n){mxEffects.cascadeOpacity.apply(this,arguments)},fadeOut:function(e,t,n,a,i,o){mxEffects.fadeOut.apply(this,arguments)},setOpacity:function(e,t){mxUtils.isVml(e)?e.style.filter=100<=t?null:"alpha(opacity="+t/5+")":mxClient.IS_IE&&(void 0===document.documentMode||9>document.documentMode)?e.style.filter=100<=t?null:"alpha(opacity="+t+")":e.style.opacity=t/100},createImage:function(e){var t=null;return mxClient.IS_IE6&&"CSS1Compat"!=document.compatMode?((t=document.createElement(mxClient.VML_PREFIX+":image")).setAttribute("src",e),t.style.borderStyle="none"):((t=document.createElement("img")).setAttribute("src",e),t.setAttribute("border","0")),t},sortCells:function(e,t){t=null==t||t;var n=new mxDictionary;return e.sort(function(e,a){var i=n.get(e);null==i&&(i=mxCellPath.create(e).split(mxCellPath.PATH_SEPARATOR),n.put(e,i));var o=n.get(a);return null==o&&(o=mxCellPath.create(a).split(mxCellPath.PATH_SEPARATOR),n.put(a,o)),i=mxCellPath.compare(i,o),0==i?0:0<i==t?1:-1}),e},getStylename:function(e){return null!=e&&0>(e=e.split(";")[0]).indexOf("=")?e:""},getStylenames:function(e){var t=[];if(null!=e){e=e.split(";");for(var n=0;n<e.length;n++)0>e[n].indexOf("=")&&t.push(e[n])}return t},indexOfStylename:function(e,t){if(null!=e&&null!=t)for(var n=e.split(";"),a=0,i=0;i<n.length;i++){if(n[i]==t)return a;a+=n[i].length+1}return-1},addStylename:function(e,t){return 0>mxUtils.indexOfStylename(e,t)&&(null==e?e="":0<e.length&&";"!=e.charAt(e.length-1)&&(e+=";"),e+=t),e},removeStylename:function(e,t){var n=[];if(null!=e)for(var a=e.split(";"),i=0;i<a.length;i++)a[i]!=t&&n.push(a[i]);return n.join(";")},removeAllStylenames:function(e){var t=[];if(null!=e){e=e.split(";");for(var n=0;n<e.length;n++)0<=e[n].indexOf("=")&&t.push(e[n])}return t.join(";")},setCellStyles:function(e,t,n,a){if(null!=t&&0<t.length){e.beginUpdate();try{for(var i=0;i<t.length;i++)if(null!=t[i]){var o=mxUtils.setStyle(e.getStyle(t[i]),n,a);e.setStyle(t[i],o)}}finally{e.endUpdate()}}},setStyle:function(e,t,n){var a=null!=n&&(void 0===n.length||0<n.length);if(null==e||0==e.length)a&&(e=t+"="+n);else{var i=e.indexOf(t+"=");0>i?a&&(a=";"==e.charAt(e.length-1)?"":";",e=e+a+t+"="+n):(t=a?t+"="+n:"",n=e.indexOf(";",i),a||n++,e=e.substring(0,i)+t+(n>i?e.substring(n):""))}return e},setCellStyleFlags:function(e,t,n,a,i){if(null!=t&&0<t.length){e.beginUpdate();try{for(var o=0;o<t.length;o++)if(null!=t[o]){var s=mxUtils.setStyleFlag(e.getStyle(t[o]),n,a,i);e.setStyle(t[o],s)}}finally{e.endUpdate()}}},setStyleFlag:function(e,t,n,a){if(null==e||0==e.length)e=a||null==a?t+"="+n:t+"=0";else{var i=e.indexOf(t+"=");if(0>i)i=";"==e.charAt(e.length-1)?"":";",e=a||null==a?e+i+t+"="+n:e+i+t+"=0";else{var o=e.indexOf(";",i),s="",s=0>o?e.substring(i+t.length+1):e.substring(i+t.length+1,o),s=null==a?parseInt(s)^n:a?parseInt(s)|n:parseInt(s)&~n;e=e.substring(0,i)+t+"="+s+(0<=o?e.substring(o):"")}}return e},getAlignmentAsPoint:function(e,t){var n=0,a=0;return e==mxConstants.ALIGN_CENTER?n=-.5:e==mxConstants.ALIGN_RIGHT&&(n=-1),t==mxConstants.ALIGN_MIDDLE?a=-.5:t==mxConstants.ALIGN_BOTTOM&&(a=-1),new mxPoint(n,a)},getSizeForString:function(e,t,n){t=null!=t?t:mxConstants.DEFAULT_FONTSIZE,n=null!=n?n:mxConstants.DEFAULT_FONTFAMILY;var a=document.createElement("div");return a.style.fontFamily=n,a.style.fontSize=Math.round(t)+"px",a.style.lineHeight=Math.round(t*mxConstants.LINE_HEIGHT)+"px",a.style.position="absolute",a.style.whiteSpace="nowrap",a.style.visibility="hidden",a.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",a.style.zoom="1",a.innerHTML=e,document.body.appendChild(a),e=new mxRectangle(0,0,a.offsetWidth,a.offsetHeight),document.body.removeChild(a),e},getViewXml:function(e,t,n,a,i){a=null!=a?a:0,i=null!=i?i:0,t=null!=t?t:1,null==n&&(n=[e.getModel().getRoot()]);var o=e.getView(),s=null,r=o.isEventsEnabled();o.setEventsEnabled(!1);var l=o.drawPane,d=o.overlayPane;e.dialect==mxConstants.DIALECT_SVG?(o.drawPane=document.createElementNS(mxConstants.NS_SVG,"g"),o.canvas.appendChild(o.drawPane),o.overlayPane=document.createElementNS(mxConstants.NS_SVG,"g")):(o.drawPane=o.drawPane.cloneNode(!1),o.canvas.appendChild(o.drawPane),o.overlayPane=o.overlayPane.cloneNode(!1)),o.canvas.appendChild(o.overlayPane);var c=o.getTranslate();o.translate=new mxPoint(a,i),t=new mxTemporaryCellStates(e.getView(),t,n);try{s=(new mxCodec).encode(e.getView())}finally{t.destroy(),o.translate=c,o.canvas.removeChild(o.drawPane),o.canvas.removeChild(o.overlayPane),o.drawPane=l,o.overlayPane=d,o.setEventsEnabled(r)}return s},getScaleForPageCount:function(e,t,n,a){if(1>e)return 1;n=null!=n?n:mxConstants.PAGE_FORMAT_A4_PORTRAIT,a=null!=a?a:0;var i=n.width-2*a;n=n.height-2*a,a=t.getGraphBounds().clone(),t=t.getView().getScale(),a.width/=t,a.height/=t,n=(t=a.width)/a.height/(i/n),a=Math.sqrt(e);var o=Math.sqrt(n);if(n=a*o,a/=o,1>n&&a>e){s=a/e;a=e,n/=s}for(1>a&&n>e&&(s=n/e,n=e,a/=s),s=Math.ceil(n)*Math.ceil(a),o=0;s>e;){var s=Math.floor(n)/n,r=Math.floor(a)/a;if(1==s&&(s=Math.floor(n-1)/n),1==r&&(r=Math.floor(a-1)/a),s=s>r?s:r,n*=s,a*=s,s=Math.ceil(n)*Math.ceil(a),10<++o)break}return i*n/t*.99999},show:function(e,t,n,a){if(n=null!=n?n:0,a=null!=a?a:0,null==t?t=window.open().document:t.open(),n=-(i=e.getGraphBounds()).x+n,a=-i.y+a,mxClient.IS_IE){for(var i="<html><head>",o=document.getElementsByTagName("base"),s=0;s<o.length;s++)i+=o[s].outerHTML;for(i+="<style>",s=0;s<document.styleSheets.length;s++)try{i+=document.styleSheets(s).cssText}catch(e){}i+="</style></head>",i+="<body>",i+=e.container.innerHTML,i+="</body>",i+="<html>",t.writeln(i),t.close(),null!=(e=t.body.getElementsByTagName("DIV")[0])&&(e.style.position="absolute",e.style.left=n+"px",e.style.top=a+"px")}else{for(t.writeln("<html"),t.writeln("<head>"),o=document.getElementsByTagName("base"),s=0;s<o.length;s++)t.writeln(mxUtils.getOuterHtml(o[s]));for(o=document.getElementsByTagName("link"),s=0;s<o.length;s++)t.writeln(mxUtils.getOuterHtml(o[s]));for(o=document.getElementsByTagName("style"),s=0;s<o.length;s++)t.writeln(mxUtils.getOuterHtml(o[s]));for(t.writeln("</head>"),t.writeln("</html>"),t.close(),null==t.body&&t.documentElement.appendChild(t.createElement("body")),t.body.style.overflow="auto",e=e.container.firstChild;null!=e;)s=e.cloneNode(!0),t.body.appendChild(s),e=e.nextSibling;null!=(e=t.getElementsByTagName("g")[0])&&(e.setAttribute("transform","translate("+n+","+a+")"),(n=e.ownerSVGElement).setAttribute("width",i.width+Math.max(i.x,0)+3),n.setAttribute("height",i.height+Math.max(i.y,0)+3))}return mxUtils.removeCursors(t.body),t},printScreen:function(e){var t=window.open();mxUtils.show(e,t.document),e=function(){t.focus(),t.print(),t.close()},mxClient.IS_GC?t.setTimeout(e,500):e()},popup:function(e,t){if(t){var n=document.createElement("div");n.style.overflow="scroll",n.style.width="636px",n.style.height="460px";var a=document.createElement("pre");a.innerHTML=mxUtils.htmlEntities(e,!1).replace(/\n/g,"<br>").replace(/ /g,"&nbsp;"),n.appendChild(a),(n=new mxWindow("Popup Window",n,document.body.clientWidth/2-320,(document.body.clientHeight||document.documentElement.clientHeight)/2-240,640,480,!1,!0)).setClosable(!0),n.setVisible(!0)}else mxClient.IS_NS?((n=window.open()).document.writeln("<pre>"+mxUtils.htmlEntities(e)+"</pre"),n.document.close()):(n=window.open(),a=n.document.createElement("pre"),a.innerHTML=mxUtils.htmlEntities(e,!1).replace(/\n/g,"<br>").replace(/ /g,"&nbsp;"),n.document.body.appendChild(a))},alert:function(e){alert(e)},prompt:function(e,t){return prompt(e,t)},confirm:function(e){return confirm(e)},error:function(e,t,n,a){var i=document.createElement("div");i.style.padding="20px";var o=document.createElement("img");o.setAttribute("src",a||mxUtils.errorImage),o.setAttribute("valign","bottom"),o.style.verticalAlign="middle",i.appendChild(o),i.appendChild(document.createTextNode(" ")),i.appendChild(document.createTextNode(" ")),i.appendChild(document.createTextNode(" ")),mxUtils.write(i,e),e=document.body.clientWidth,a=document.body.clientHeight||document.documentElement.clientHeight;var s=new mxWindow(mxResources.get(mxUtils.errorResource)||mxUtils.errorResource,i,(e-t)/2,a/4,t,null,!1,!0);return n&&(mxUtils.br(i),t=document.createElement("p"),n=document.createElement("button"),mxClient.IS_IE?n.style.cssText="float:right":n.setAttribute("style","float:right"),mxEvent.addListener(n,"click",function(e){s.destroy()}),mxUtils.write(n,mxResources.get(mxUtils.closeResource)||mxUtils.closeResource),t.appendChild(n),i.appendChild(t),mxUtils.br(i),s.setClosable(!0)),s.setVisible(!0),s},makeDraggable:function(e,t,n,a,i,o,s,r,l,d){return e=new mxDragSource(e,n),e.dragOffset=new mxPoint(null!=i?i:0,null!=o?o:mxConstants.TOOLTIP_VERTICAL_OFFSET),e.autoscroll=s,e.setGuidesEnabled(!1),null!=l&&(e.highlightDropTargets=l),null!=d&&(e.getDropTarget=d),e.getGraphForEvent=function(e){return"function"==typeof t?t(e):t},null!=a&&(e.createDragElement=function(){return a.cloneNode(!0)},r&&(e.createPreviewElement=function(e){var t=a.cloneNode(!0),n=parseInt(t.style.width),i=parseInt(t.style.height);return t.style.width=Math.round(n*e.view.scale)+"px",t.style.height=Math.round(i*e.view.scale)+"px",t})),e}},mxConstants={DEFAULT_HOTSPOT:.3,MIN_HOTSPOT_SIZE:8,MAX_HOTSPOT_SIZE:0,RENDERING_HINT_EXACT:"exact",RENDERING_HINT_FASTER:"faster",RENDERING_HINT_FASTEST:"fastest",DIALECT_SVG:"svg",DIALECT_VML:"vml",DIALECT_MIXEDHTML:"mixedHtml",DIALECT_PREFERHTML:"preferHtml",DIALECT_STRICTHTML:"strictHtml",NS_SVG:"http://www.w3.org/2000/svg",NS_XHTML:"http://www.w3.org/1999/xhtml",NS_XLINK:"http://www.w3.org/1999/xlink",SHADOWCOLOR:"gray",SHADOW_OFFSET_X:2,SHADOW_OFFSET_Y:3,SHADOW_OPACITY:1,NODETYPE_ELEMENT:1,NODETYPE_ATTRIBUTE:2,NODETYPE_TEXT:3,NODETYPE_CDATA:4,NODETYPE_ENTITY_REFERENCE:5,NODETYPE_ENTITY:6,NODETYPE_PROCESSING_INSTRUCTION:7,NODETYPE_COMMENT:8,NODETYPE_DOCUMENT:9,NODETYPE_DOCUMENTTYPE:10,NODETYPE_DOCUMENT_FRAGMENT:11,NODETYPE_NOTATION:12,TOOLTIP_VERTICAL_OFFSET:16,DEFAULT_VALID_COLOR:"#00FF00",DEFAULT_INVALID_COLOR:"#FF0000",HIGHLIGHT_STROKEWIDTH:3,CURSOR_MOVABLE_VERTEX:"move",CURSOR_MOVABLE_EDGE:"move",CURSOR_LABEL_HANDLE:"default",CURSOR_BEND_HANDLE:"pointer",CURSOR_CONNECT:"pointer",HIGHLIGHT_COLOR:"#00FF00",CONNECT_TARGET_COLOR:"#0000FF",INVALID_CONNECT_TARGET_COLOR:"#FF0000",DROP_TARGET_COLOR:"#0000FF",VALID_COLOR:"#00FF00",INVALID_COLOR:"#FF0000",EDGE_SELECTION_COLOR:"#00FF00",VERTEX_SELECTION_COLOR:"#00FF00",VERTEX_SELECTION_STROKEWIDTH:1,EDGE_SELECTION_STROKEWIDTH:1,VERTEX_SELECTION_DASHED:!0,EDGE_SELECTION_DASHED:!0,GUIDE_COLOR:"#FF0000",GUIDE_STROKEWIDTH:1,OUTLINE_COLOR:"#0099FF",OUTLINE_STROKEWIDTH:mxClient.IS_IE?2:3,HANDLE_SIZE:7,LABEL_HANDLE_SIZE:4,HANDLE_FILLCOLOR:"#00FF00",HANDLE_STROKECOLOR:"black",LABEL_HANDLE_FILLCOLOR:"yellow",CONNECT_HANDLE_FILLCOLOR:"#0000FF",LOCKED_HANDLE_FILLCOLOR:"#FF0000",OUTLINE_HANDLE_FILLCOLOR:"#00FFFF",OUTLINE_HANDLE_STROKECOLOR:"#0033FF",DEFAULT_FONTFAMILY:"Arial,Helvetica",DEFAULT_FONTSIZE:11,LINE_HEIGHT:1.2,DEFAULT_FONTSTYLE:0,DEFAULT_STARTSIZE:40,DEFAULT_MARKERSIZE:6,DEFAULT_IMAGESIZE:24,ENTITY_SEGMENT:30,RECTANGLE_ROUNDING_FACTOR:.15,LINE_ARCSIZE:20,ARROW_SPACING:10,ARROW_WIDTH:30,ARROW_SIZE:30,PAGE_FORMAT_A4_PORTRAIT:new mxRectangle(0,0,826,1169),PAGE_FORMAT_A4_LANDSCAPE:new mxRectangle(0,0,1169,826),PAGE_FORMAT_LETTER_PORTRAIT:new mxRectangle(0,0,850,1100),PAGE_FORMAT_LETTER_LANDSCAPE:new mxRectangle(0,0,1100,850),NONE:"none",STYLE_PERIMETER:"perimeter",STYLE_SOURCE_PORT:"sourcePort",STYLE_TARGET_PORT:"targetPort",STYLE_PORT_CONSTRAINT:"portConstraint",STYLE_OPACITY:"opacity",STYLE_TEXT_OPACITY:"textOpacity",STYLE_OVERFLOW:"overflow",STYLE_ORTHOGONAL:"orthogonal",STYLE_EXIT_X:"exitX",STYLE_EXIT_Y:"exitY",STYLE_EXIT_PERIMETER:"exitPerimeter",STYLE_ENTRY_X:"entryX",STYLE_ENTRY_Y:"entryY",STYLE_ENTRY_PERIMETER:"entryPerimeter",STYLE_WHITE_SPACE:"whiteSpace",STYLE_ROTATION:"rotation",STYLE_FILLCOLOR:"fillColor",STYLE_SWIMLANE_FILLCOLOR:"swimlaneFillColor",STYLE_GRADIENTCOLOR:"gradientColor",STYLE_GRADIENT_DIRECTION:"gradientDirection",STYLE_STROKECOLOR:"strokeColor",STYLE_SEPARATORCOLOR:"separatorColor",STYLE_STROKEWIDTH:"strokeWidth",STYLE_ALIGN:"align",STYLE_VERTICAL_ALIGN:"verticalAlign",STYLE_LABEL_POSITION:"labelPosition",STYLE_VERTICAL_LABEL_POSITION:"verticalLabelPosition",STYLE_IMAGE_ASPECT:"imageAspect",STYLE_IMAGE_ALIGN:"imageAlign",STYLE_IMAGE_VERTICAL_ALIGN:"imageVerticalAlign",STYLE_GLASS:"glass",STYLE_IMAGE:"image",STYLE_IMAGE_WIDTH:"imageWidth",STYLE_IMAGE_HEIGHT:"imageHeight",STYLE_IMAGE_BACKGROUND:"imageBackground",STYLE_IMAGE_BORDER:"imageBorder",STYLE_FLIPH:"flipH",STYLE_FLIPV:"flipV",STYLE_NOLABEL:"noLabel",STYLE_NOEDGESTYLE:"noEdgeStyle",STYLE_LABEL_BACKGROUNDCOLOR:"labelBackgroundColor",STYLE_LABEL_BORDERCOLOR:"labelBorderColor",STYLE_LABEL_PADDING:"labelPadding",STYLE_INDICATOR_SHAPE:"indicatorShape",STYLE_INDICATOR_IMAGE:"indicatorImage",STYLE_INDICATOR_COLOR:"indicatorColor",STYLE_INDICATOR_STROKECOLOR:"indicatorStrokeColor",STYLE_INDICATOR_GRADIENTCOLOR:"indicatorGradientColor",STYLE_INDICATOR_SPACING:"indicatorSpacing",STYLE_INDICATOR_WIDTH:"indicatorWidth",STYLE_INDICATOR_HEIGHT:"indicatorHeight",STYLE_INDICATOR_DIRECTION:"indicatorDirection",STYLE_SHADOW:"shadow",STYLE_SEGMENT:"segment",STYLE_ENDARROW:"endArrow",STYLE_STARTARROW:"startArrow",STYLE_ENDSIZE:"endSize",STYLE_STARTSIZE:"startSize",STYLE_SWIMLANE_LINE:"swimlaneLine",STYLE_ENDFILL:"endFill",STYLE_STARTFILL:"startFill",STYLE_DASHED:"dashed",STYLE_DASH_PATTERN:"dashPattern",STYLE_ROUNDED:"rounded",STYLE_CURVED:"curved",STYLE_ARCSIZE:"arcSize",STYLE_SMOOTH:"smooth",STYLE_SOURCE_PERIMETER_SPACING:"sourcePerimeterSpacing",STYLE_TARGET_PERIMETER_SPACING:"targetPerimeterSpacing",STYLE_PERIMETER_SPACING:"perimeterSpacing",STYLE_SPACING:"spacing",STYLE_SPACING_TOP:"spacingTop",STYLE_SPACING_LEFT:"spacingLeft",STYLE_SPACING_BOTTOM:"spacingBottom",STYLE_SPACING_RIGHT:"spacingRight",STYLE_HORIZONTAL:"horizontal",STYLE_DIRECTION:"direction",STYLE_ELBOW:"elbow",STYLE_FONTCOLOR:"fontColor",STYLE_FONTFAMILY:"fontFamily",STYLE_FONTSIZE:"fontSize",STYLE_FONTSTYLE:"fontStyle",STYLE_AUTOSIZE:"autosize",STYLE_FOLDABLE:"foldable",STYLE_EDITABLE:"editable",STYLE_BENDABLE:"bendable",STYLE_MOVABLE:"movable",STYLE_RESIZABLE:"resizable",STYLE_CLONEABLE:"cloneable",STYLE_DELETABLE:"deletable",STYLE_SHAPE:"shape",STYLE_EDGE:"edgeStyle",STYLE_LOOP:"loopStyle",STYLE_ROUTING_CENTER_X:"routingCenterX",STYLE_ROUTING_CENTER_Y:"routingCenterY",FONT_BOLD:1,FONT_ITALIC:2,FONT_UNDERLINE:4,FONT_SHADOW:8,SHAPE_RECTANGLE:"rectangle",SHAPE_ELLIPSE:"ellipse",SHAPE_DOUBLE_ELLIPSE:"doubleEllipse",SHAPE_RHOMBUS:"rhombus",SHAPE_LINE:"line",SHAPE_IMAGE:"image",SHAPE_ARROW:"arrow",SHAPE_LABEL:"label",SHAPE_CYLINDER:"cylinder",SHAPE_SWIMLANE:"swimlane",SHAPE_CONNECTOR:"connector",SHAPE_ACTOR:"actor",SHAPE_CLOUD:"cloud",SHAPE_TRIANGLE:"triangle",SHAPE_HEXAGON:"hexagon",ARROW_CLASSIC:"classic",ARROW_BLOCK:"block",ARROW_OPEN:"open",ARROW_OVAL:"oval",ARROW_DIAMOND:"diamond",ARROW_DIAMOND_THIN:"diamondThin",ALIGN_LEFT:"left",ALIGN_CENTER:"center",ALIGN_RIGHT:"right",ALIGN_TOP:"top",ALIGN_MIDDLE:"middle",ALIGN_BOTTOM:"bottom",DIRECTION_NORTH:"north",DIRECTION_SOUTH:"south",DIRECTION_EAST:"east",DIRECTION_WEST:"west",DIRECTION_MASK_NONE:0,DIRECTION_MASK_WEST:1,DIRECTION_MASK_NORTH:2,DIRECTION_MASK_SOUTH:4,DIRECTION_MASK_EAST:8,DIRECTION_MASK_ALL:15,ELBOW_VERTICAL:"vertical",ELBOW_HORIZONTAL:"horizontal",EDGESTYLE_ELBOW:"elbowEdgeStyle",EDGESTYLE_ENTITY_RELATION:"entityRelationEdgeStyle",EDGESTYLE_LOOP:"loopEdgeStyle",EDGESTYLE_SIDETOSIDE:"sideToSideEdgeStyle",EDGESTYLE_TOPTOBOTTOM:"topToBottomEdgeStyle",EDGESTYLE_ORTHOGONAL:"orthogonalEdgeStyle",EDGESTYLE_SEGMENT:"segmentEdgeStyle",PERIMETER_ELLIPSE:"ellipsePerimeter",PERIMETER_RECTANGLE:"rectanglePerimeter",PERIMETER_RHOMBUS:"rhombusPerimeter",PERIMETER_TRIANGLE:"trianglePerimeter"};mxEventObject.prototype.name=null,mxEventObject.prototype.properties=null,mxEventObject.prototype.consumed=!1,mxEventObject.prototype.getName=function(){return this.name},mxEventObject.prototype.getProperties=function(){return this.properties},mxEventObject.prototype.getProperty=function(e){return this.properties[e]},mxEventObject.prototype.isConsumed=function(){return this.consumed},mxEventObject.prototype.consume=function(){this.consumed=!0},mxMouseEvent.prototype.consumed=!1,mxMouseEvent.prototype.evt=null,mxMouseEvent.prototype.graphX=null,mxMouseEvent.prototype.graphY=null,mxMouseEvent.prototype.state=null,mxMouseEvent.prototype.getEvent=function(){return this.evt},mxMouseEvent.prototype.getSource=function(){return mxEvent.getSource(this.evt)},mxMouseEvent.prototype.isSource=function(e){if(null!=e)for(var t=this.getSource();null!=t;){if(t==e.node)return!0;t=t.parentNode}return!1},mxMouseEvent.prototype.getX=function(){return mxEvent.getClientX(this.getEvent())},mxMouseEvent.prototype.getY=function(){return mxEvent.getClientY(this.getEvent())},mxMouseEvent.prototype.getGraphX=function(){return this.graphX},mxMouseEvent.prototype.getGraphY=function(){return this.graphY},mxMouseEvent.prototype.getState=function(){return this.state},mxMouseEvent.prototype.getCell=function(){var e=this.getState();return null!=e?e.cell:null},mxMouseEvent.prototype.isPopupTrigger=function(){return mxEvent.isPopupTrigger(this.getEvent())},mxMouseEvent.prototype.isConsumed=function(){return this.consumed},mxMouseEvent.prototype.consume=function(e){(null!=e?e:1)&&this.evt.preventDefault&&this.evt.preventDefault(),this.evt.returnValue=!1,this.consumed=!0},mxEventSource.prototype.eventListeners=null,mxEventSource.prototype.eventsEnabled=!0,mxEventSource.prototype.eventSource=null,mxEventSource.prototype.isEventsEnabled=function(){return this.eventsEnabled},mxEventSource.prototype.setEventsEnabled=function(e){this.eventsEnabled=e},mxEventSource.prototype.getEventSource=function(){return this.eventSource},mxEventSource.prototype.setEventSource=function(e){this.eventSource=e},mxEventSource.prototype.addListener=function(e,t){null==this.eventListeners&&(this.eventListeners=[]),this.eventListeners.push(e),this.eventListeners.push(t)},mxEventSource.prototype.removeListener=function(e){if(null!=this.eventListeners)for(var t=0;t<this.eventListeners.length;)this.eventListeners[t+1]==e?this.eventListeners.splice(t,2):t+=2},mxEventSource.prototype.fireEvent=function(e,t){if(null!=this.eventListeners&&this.isEventsEnabled()){null==e&&(e=new mxEventObject),null==t&&(t=this.getEventSource()),null==t&&(t=this);for(var n=[t,e],a=0;a<this.eventListeners.length;a+=2){var i=this.eventListeners[a];(null==i||i==e.getName())&&this.eventListeners[a+1].apply(this,n)}}};var mxEvent={objects:[],addListener:function(){var e=function(e,t,n){null==e.mxListenerList&&(e.mxListenerList=[],mxEvent.objects.push(e)),e.mxListenerList.push({name:t,f:n})};return window.addEventListener?function(t,n,a){t.addEventListener(n,a,!1),e(t,n,a)}:function(t,n,a){t.attachEvent("on"+n,a),e(t,n,a)}}(),removeListener:function(){var e=function(e,t,n){if(null!=e.mxListenerList){t=e.mxListenerList.length;for(var a=0;a<t;a++)if(e.mxListenerList[a].f==n){e.mxListenerList.splice(a,1);break}0==e.mxListenerList.length&&(e.mxListenerList=null)}};return window.removeEventListener?function(t,n,a){t.removeEventListener(n,a,!1),e(t,n,a)}:function(t,n,a){t.detachEvent("on"+n,a),e(t,n,a)}}(),removeAllListeners:function(e){var t=e.mxListenerList;if(null!=t)for(;0<t.length;){var n=t[0];mxEvent.removeListener(e,n.name,n.f)}},addGestureListeners:function(e,t,n,a){null!=t&&mxEvent.addListener(e,"mousedown",t),null!=n&&mxEvent.addListener(e,"mousemove",n),null!=a&&mxEvent.addListener(e,"mouseup",a),mxClient.IS_TOUCH&&(null!=t&&mxEvent.addListener(e,"touchstart",t),null!=n&&mxEvent.addListener(e,"touchmove",n),null!=a&&mxEvent.addListener(e,"touchend",a))},removeGestureListeners:function(e,t,n,a){null!=t&&mxEvent.removeListener(e,"mousedown",t),null!=n&&mxEvent.removeListener(e,"mousemove",n),null!=a&&mxEvent.removeListener(e,"mouseup",a),mxClient.IS_TOUCH&&(null!=t&&mxEvent.removeListener(e,"touchstart",t),null!=n&&mxEvent.removeListener(e,"touchmove",n),null!=a&&mxEvent.removeListener(e,"touchend",a))},redirectMouseEvents:function(e,t,n,a,i,o,s){var r=function(e){return"function"==typeof n?n(e):n};mxEvent.addGestureListeners(e,function(e){null!=a?a(e):mxEvent.isConsumed(e)||t.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e,r(e)))},function(e){null!=i?i(e):mxEvent.isConsumed(e)||t.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(e,r(e)))},function(e){null!=o?o(e):mxEvent.isConsumed(e)||t.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(e,r(e)))}),mxEvent.addListener(e,"dblclick",function(e){if(null!=s)s(e);else if(!mxEvent.isConsumed(e)){var n=r(e);t.dblClick(e,null!=n?n.cell:null)}})},release:function(e){if(null!=e&&(mxEvent.removeAllListeners(e),null!=(e=e.childNodes)))for(var t=e.length,n=0;n<t;n+=1)mxEvent.release(e[n])},addMouseWheelListener:function(e){if(null!=e){var t=function(t){null==t&&(t=window.event);var n=0;0!=(n=!mxClient.IS_NS||mxClient.IS_SF||mxClient.IS_GC?t.wheelDelta/120:-t.detail/2)&&e(t,0<n)};mxClient.IS_NS?mxEvent.addListener(window,mxClient.IS_SF||mxClient.IS_GC?"mousewheel":"DOMMouseScroll",t):mxEvent.addListener(document,"mousewheel",t)}},disableContextMenu:function(){return mxClient.IS_IE&&(void 0===document.documentMode||9>document.documentMode)?function(e){mxEvent.addListener(e,"contextmenu",function(){return!1})}:function(e){e.setAttribute("oncontextmenu","return false;")}}(),getSource:function(e){return null!=e.srcElement?e.srcElement:e.target},isConsumed:function(e){return null!=e.isConsumed&&e.isConsumed},isLeftMouseButton:function(e){return e.button==(mxClient.IS_IE&&(void 0===document.documentMode||9>document.documentMode)?1:0)},isRightMouseButton:function(e){return 2==e.button},isPopupTrigger:function(e){return mxEvent.isRightMouseButton(e)||mxEvent.isShiftDown(e)&&!mxEvent.isControlDown(e)},isShiftDown:function(e){return null!=e&&e.shiftKey},isAltDown:function(e){return null!=e&&e.altKey},isControlDown:function(e){return null!=e&&e.ctrlKey},isMetaDown:function(e){return null!=e&&e.metaKey},getMainEvent:function(e){return"touchstart"!=e.type&&"touchmove"!=e.type||null==e.touches||null==e.touches[0]?"touchend"==e.type&&null!=e.changedTouches&&null!=e.changedTouches[0]&&(e=e.changedTouches[0]):e=e.touches[0],e},getClientX:function(e){return mxEvent.getMainEvent(e).clientX},getClientY:function(e){return mxEvent.getMainEvent(e).clientY},consume:function(e,t,n){n=null==n||n,(null!=t?t:1)&&(e.preventDefault?(n&&e.stopPropagation(),e.preventDefault()):n&&(e.cancelBubble=!0)),e.isConsumed=!0,e.returnValue=!1},LABEL_HANDLE:-1,ROTATION_HANDLE:-2,MOUSE_DOWN:"mouseDown",MOUSE_MOVE:"mouseMove",MOUSE_UP:"mouseUp",ACTIVATE:"activate",RESIZE_START:"resizeStart",RESIZE:"resize",RESIZE_END:"resizeEnd",MOVE_START:"moveStart",MOVE:"move",MOVE_END:"moveEnd",PAN_START:"panStart",PAN:"pan",PAN_END:"panEnd",MINIMIZE:"minimize",NORMALIZE:"normalize",MAXIMIZE:"maximize",HIDE:"hide",SHOW:"show",CLOSE:"close",DESTROY:"destroy",REFRESH:"refresh",SIZE:"size",SELECT:"select",FIRED:"fired",GET:"get",RECEIVE:"receive",CONNECT:"connect",DISCONNECT:"disconnect",SUSPEND:"suspend",RESUME:"resume",MARK:"mark",SESSION:"session",ROOT:"root",POST:"post",OPEN:"open",SAVE:"save",BEFORE_ADD_VERTEX:"beforeAddVertex",ADD_VERTEX:"addVertex",AFTER_ADD_VERTEX:"afterAddVertex",DONE:"done",EXECUTE:"execute",EXECUTED:"executed",BEGIN_UPDATE:"beginUpdate",START_EDIT:"startEdit",END_UPDATE:"endUpdate",END_EDIT:"endEdit",BEFORE_UNDO:"beforeUndo",UNDO:"undo",REDO:"redo",CHANGE:"change",NOTIFY:"notify",LAYOUT_CELLS:"layoutCells",CLICK:"click",SCALE:"scale",TRANSLATE:"translate",SCALE_AND_TRANSLATE:"scaleAndTranslate",UP:"up",DOWN:"down",ADD:"add",REMOVE:"remove",CLEAR:"clear",ADD_CELLS:"addCells",CELLS_ADDED:"cellsAdded",MOVE_CELLS:"moveCells",CELLS_MOVED:"cellsMoved",RESIZE_CELLS:"resizeCells",CELLS_RESIZED:"cellsResized",TOGGLE_CELLS:"toggleCells",CELLS_TOGGLED:"cellsToggled",ORDER_CELLS:"orderCells",CELLS_ORDERED:"cellsOrdered",REMOVE_CELLS:"removeCells",CELLS_REMOVED:"cellsRemoved",GROUP_CELLS:"groupCells",UNGROUP_CELLS:"ungroupCells",REMOVE_CELLS_FROM_PARENT:"removeCellsFromParent",FOLD_CELLS:"foldCells",CELLS_FOLDED:"cellsFolded",ALIGN_CELLS:"alignCells",LABEL_CHANGED:"labelChanged",CONNECT_CELL:"connectCell",CELL_CONNECTED:"cellConnected",SPLIT_EDGE:"splitEdge",FLIP_EDGE:"flipEdge",START_EDITING:"startEditing",ADD_OVERLAY:"addOverlay",REMOVE_OVERLAY:"removeOverlay",UPDATE_CELL_SIZE:"updateCellSize",ESCAPE:"escape",CLICK:"click",DOUBLE_CLICK:"doubleClick",START:"start",RESET:"reset"};mxXmlRequest.prototype.url=null,mxXmlRequest.prototype.params=null,mxXmlRequest.prototype.method=null,mxXmlRequest.prototype.async=null,mxXmlRequest.prototype.binary=!1,mxXmlRequest.prototype.username=null,mxXmlRequest.prototype.password=null,mxXmlRequest.prototype.request=null,mxXmlRequest.prototype.isBinary=function(){return this.binary},mxXmlRequest.prototype.setBinary=function(e){this.binary=e},mxXmlRequest.prototype.getText=function(){return this.request.responseText},mxXmlRequest.prototype.isReady=function(){return 4==this.request.readyState},mxXmlRequest.prototype.getDocumentElement=function(){var e=this.getXml();return null!=e?e.documentElement:null},mxXmlRequest.prototype.getXml=function(){var e=this.request.responseXML;return(9<=document.documentMode||null==e||null==e.documentElement)&&(e=mxUtils.parseXml(this.request.responseText)),e},mxXmlRequest.prototype.getText=function(){return this.request.responseText},mxXmlRequest.prototype.getStatus=function(){return this.request.status},mxXmlRequest.prototype.create=function(){return window.XMLHttpRequest?function(){var e=new XMLHttpRequest;return this.isBinary()&&e.overrideMimeType&&e.overrideMimeType("text/plain; charset=x-user-defined"),e}:"undefined"!=typeof ActiveXObject?function(){return new ActiveXObject("Microsoft.XMLHTTP")}:void 0}(),mxXmlRequest.prototype.send=function(e,t){this.request=this.create(),null!=this.request&&(null!=e&&(this.request.onreadystatechange=mxUtils.bind(this,function(){this.isReady()&&(e(this),this.onreadystatechaange=null)})),this.request.open(this.method,this.url,this.async,this.username,this.password),this.setRequestHeaders(this.request,this.params),this.request.send(this.params))},mxXmlRequest.prototype.setRequestHeaders=function(e,t){null!=t&&e.setRequestHeader("Content-Type","application/x-www-form-urlencoded")},mxXmlRequest.prototype.simulate=function(e,t){var n=null;(e=e||document)==document&&(n=window.onbeforeunload,window.onbeforeunload=null);var a=e.createElement("form");a.setAttribute("method",this.method),a.setAttribute("action",this.url),null!=t&&a.setAttribute("target",t),a.style.display="none",a.style.visibility="hidden";for(var i=0<this.params.indexOf("&")?this.params.split("&"):this.params.split(),o=0;o<i.length;o++){var s=i[o].indexOf("=");if(0<s){var r=i[o].substring(0,s),l=i[o].substring(s+1);(s=e.createElement("textarea")).setAttribute("name",r),l=l.replace(/\n/g,"&#xa;"),r=e.createTextNode(l),s.appendChild(r),a.appendChild(s)}}e.body.appendChild(a),a.submit(),e.body.removeChild(a),null!=n&&(window.onbeforeunload=n)};var mxClipboard={STEPSIZE:10,insertCount:1,cells:null,isEmpty:function(){return null==mxClipboard.cells},cut:function(e,t){return t=mxClipboard.copy(e,t),mxClipboard.insertCount=0,mxClipboard.removeCells(e,t),t},removeCells:function(e,t){e.removeCells(t)},copy:function(e,t){t=t||e.getSelectionCells();var n=e.getExportableCells(t);return mxClipboard.insertCount=1,mxClipboard.cells=e.cloneCells(n),n},paste:function(e){if(null!=mxClipboard.cells){var t=e.getImportableCells(mxClipboard.cells),n=mxClipboard.insertCount*mxClipboard.STEPSIZE,a=e.getDefaultParent(),t=e.importCells(t,n,n,a);mxClipboard.insertCount++,e.setSelectionCells(t)}}};mxWindow.prototype=new mxEventSource,mxWindow.prototype.constructor=mxWindow,mxWindow.prototype.closeImage=mxClient.imageBasePath+"/close.gif",mxWindow.prototype.minimizeImage=mxClient.imageBasePath+"/minimize.gif",mxWindow.prototype.normalizeImage=mxClient.imageBasePath+"/normalize.gif",mxWindow.prototype.maximizeImage=mxClient.imageBasePath+"/maximize.gif",mxWindow.prototype.resizeImage=mxClient.imageBasePath+"/resize.gif",mxWindow.prototype.visible=!1,mxWindow.prototype.content=!1,mxWindow.prototype.minimumSize=new mxRectangle(0,0,50,40),mxWindow.prototype.title=!1,mxWindow.prototype.content=!1,mxWindow.prototype.destroyOnClose=!0,mxWindow.prototype.init=function(e,t,n,a,i){i=null!=i?i:"mxWindow",this.div=document.createElement("div"),this.div.className=i,this.div.style.left=e+"px",this.div.style.top=t+"px",this.table=document.createElement("table"),this.table.className=i,null!=n&&(mxClient.IS_IE||(this.div.style.width=n+"px"),this.table.style.width=n+"px"),null!=a&&(mxClient.IS_IE||(this.div.style.height=a+"px"),this.table.style.height=a+"px"),e=document.createElement("tbody"),t=document.createElement("tr"),this.title=document.createElement("td"),this.title.className=i+"Title",t.appendChild(this.title),e.appendChild(t),t=document.createElement("tr"),this.td=document.createElement("td"),this.td.className=i+"Pane",this.contentWrapper=document.createElement("div"),this.contentWrapper.className=i+"Pane",this.contentWrapper.style.width="100%",this.contentWrapper.appendChild(this.content),(mxClient.IS_IE||"DIV"!=this.content.nodeName.toUpperCase())&&(this.contentWrapper.style.height="100%"),this.td.appendChild(this.contentWrapper),t.appendChild(this.td),e.appendChild(t),this.table.appendChild(e),this.div.appendChild(this.table),i=mxUtils.bind(this,function(e){this.activate()}),mxEvent.addListener(this.title,"mousedown",i),mxEvent.addListener(this.table,"mousedown",i),mxClient.IS_TOUCH&&(mxEvent.addListener(this.title,"touchstart",i),mxEvent.addListener(this.table,"touchstart",i)),this.hide()},mxWindow.prototype.setTitle=function(e){for(var t=this.title.firstChild;null!=t;){var n=t.nextSibling;t.nodeType==mxConstants.NODETYPE_TEXT&&t.parentNode.removeChild(t),t=n}mxUtils.write(this.title,e||"")},mxWindow.prototype.setScrollable=function(e){0>navigator.userAgent.indexOf("Presto/2.5")&&(this.contentWrapper.style.overflow=e?"auto":"hidden")},mxWindow.prototype.activate=function(){if(mxWindow.activeWindow!=this){var e=null!=(e=mxUtils.getCurrentStyle(this.getElement()))?e.zIndex:3;if(mxWindow.activeWindow){var t=mxWindow.activeWindow.getElement();null!=t&&null!=t.style&&(t.style.zIndex=e)}t=mxWindow.activeWindow,this.getElement().style.zIndex=parseInt(e)+1,mxWindow.activeWindow=this,this.fireEvent(new mxEventObject(mxEvent.ACTIVATE,"previousWindow",t))}},mxWindow.prototype.getElement=function(){return this.div},mxWindow.prototype.fit=function(){mxUtils.fit(this.div)},mxWindow.prototype.isResizable=function(){return null!=this.resize&&"none"!=this.resize.style.display},mxWindow.prototype.setResizable=function(e){e?null==this.resize?(this.resize=document.createElement("img"),this.resize.style.position="absolute",this.resize.style.bottom="2px",this.resize.style.right="2px",this.resize.setAttribute("src",mxClient.imageBasePath+"/resize.gif"),this.resize.style.cursor="nw-resize",mxEvent.addGestureListeners(this.resize,mxUtils.bind(this,function(e){this.activate();var t=mxEvent.getClientX(e),n=mxEvent.getClientY(e),a=this.div.offsetWidth,i=this.div.offsetHeight,o=mxUtils.bind(this,function(e){var o=mxEvent.getClientX(e)-t,s=mxEvent.getClientY(e)-n;this.setSize(a+o,i+s),this.fireEvent(new mxEventObject(mxEvent.RESIZE,"event",e)),mxEvent.consume(e)}),s=mxUtils.bind(this,function(e){mxEvent.removeGestureListeners(document,null,o,s),this.fireEvent(new mxEventObject(mxEvent.RESIZE_END,"event",e)),mxEvent.consume(e)});mxEvent.addGestureListeners(document,null,o,s),this.fireEvent(new mxEventObject(mxEvent.RESIZE_START,"event",e)),mxEvent.consume(e)}),null,null),this.div.appendChild(this.resize)):this.resize.style.display="inline":null!=this.resize&&(this.resize.style.display="none")},mxWindow.prototype.setSize=function(e,t){e=Math.max(this.minimumSize.width,e),t=Math.max(this.minimumSize.height,t),mxClient.IS_IE||(this.div.style.width=e+"px",this.div.style.height=t+"px"),this.table.style.width=e+"px",this.table.style.height=t+"px",mxClient.IS_IE||(this.contentWrapper.style.height=this.div.offsetHeight-this.title.offsetHeight-2+"px")},mxWindow.prototype.setMinimizable=function(e){this.minimize.style.display=e?"":"none"},mxWindow.prototype.getMinimumSize=function(){return new mxRectangle(0,0,0,this.title.offsetHeight)},mxWindow.prototype.installMinimizeHandler=function(){this.minimize=document.createElement("img"),this.minimize.setAttribute("src",this.minimizeImage),this.minimize.setAttribute("align","right"),this.minimize.setAttribute("title","Minimize"),this.minimize.style.cursor="pointer",this.minimize.style.marginRight="1px",this.minimize.style.display="none",this.title.appendChild(this.minimize);var e=!1,t=null,n=null,a=mxUtils.bind(this,function(a){if(this.activate(),e)e=!1,this.minimize.setAttribute("src",this.minimizeImage),this.minimize.setAttribute("title","Minimize"),this.contentWrapper.style.display="",this.maximize.style.display=t,mxClient.IS_IE||(this.div.style.height=n),this.table.style.height=n,null!=this.resize&&(this.resize.style.visibility=""),this.fireEvent(new mxEventObject(mxEvent.NORMALIZE,"event",a));else{e=!0,this.minimize.setAttribute("src",this.normalizeImage),this.minimize.setAttribute("title","Normalize"),this.contentWrapper.style.display="none",t=this.maximize.style.display,this.maximize.style.display="none",n=this.table.style.height;var i=this.getMinimumSize();0<i.height&&(mxClient.IS_IE||(this.div.style.height=i.height+"px"),this.table.style.height=i.height+"px"),0<i.width&&(mxClient.IS_IE||(this.div.style.width=i.width+"px"),this.table.style.width=i.width+"px"),null!=this.resize&&(this.resize.style.visibility="hidden"),this.fireEvent(new mxEventObject(mxEvent.MINIMIZE,"event",a))}mxEvent.consume(a)});mxEvent.addListener(this.minimize,"mousedown",a),mxClient.IS_TOUCH&&mxEvent.addListener(this.minimize,"touchstart",a)},mxWindow.prototype.setMaximizable=function(e){this.maximize.style.display=e?"":"none"},mxWindow.prototype.installMaximizeHandler=function(){this.maximize=document.createElement("img"),this.maximize.setAttribute("src",this.maximizeImage),this.maximize.setAttribute("align","right"),this.maximize.setAttribute("title","Maximize"),this.maximize.style.cursor="default",this.maximize.style.marginLeft="1px",this.maximize.style.cursor="pointer",this.maximize.style.display="none",this.title.appendChild(this.maximize);var e=!1,t=null,n=null,a=null,i=null,o=mxUtils.bind(this,function(o){if(this.activate(),"none"!=this.maximize.style.display){if(e)e=!1,this.maximize.setAttribute("src",this.maximizeImage),this.maximize.setAttribute("title","Maximize"),this.contentWrapper.style.display="",this.minimize.style.visibility="",this.div.style.left=t+"px",this.div.style.top=n+"px",mxClient.IS_IE||(this.div.style.height=a,this.div.style.width=i,"auto"!=(s=mxUtils.getCurrentStyle(this.contentWrapper)).overflow&&null==this.resize)||(this.contentWrapper.style.height=this.div.offsetHeight-this.title.offsetHeight-2+"px"),this.table.style.height=a,this.table.style.width=i,null!=this.resize&&(this.resize.style.visibility=""),this.fireEvent(new mxEventObject(mxEvent.NORMALIZE,"event",o));else{if(e=!0,this.maximize.setAttribute("src",this.normalizeImage),this.maximize.setAttribute("title","Normalize"),this.contentWrapper.style.display="",this.minimize.style.visibility="hidden",t=parseInt(this.div.style.left),n=parseInt(this.div.style.top),a=this.table.style.height,i=this.table.style.width,this.div.style.left="0px",this.div.style.top="0px",mxClient.IS_IE||(this.div.style.height=document.body.clientHeight-2+"px",this.div.style.width=document.body.clientWidth-2+"px"),this.table.style.width=document.body.clientWidth-2+"px",this.table.style.height=document.body.clientHeight-2+"px",null!=this.resize&&(this.resize.style.visibility="hidden"),!mxClient.IS_IE){var s=mxUtils.getCurrentStyle(this.contentWrapper);"auto"!=s.overflow&&null==this.resize||(this.contentWrapper.style.height=this.div.offsetHeight-this.title.offsetHeight-2+"px")}this.fireEvent(new mxEventObject(mxEvent.MAXIMIZE,"event",o))}mxEvent.consume(o)}});mxEvent.addGestureListeners(this.maximize,o),mxEvent.addListener(this.title,"dblclick",o)},mxWindow.prototype.installMoveHandler=function(){this.title.style.cursor="move",mxEvent.addGestureListeners(this.title,mxUtils.bind(this,function(e){var t=mxEvent.getClientX(e),n=mxEvent.getClientY(e),a=this.getX(),i=this.getY(),o=mxUtils.bind(this,function(e){var o=mxEvent.getClientX(e)-t,s=mxEvent.getClientY(e)-n;this.setLocation(a+o,i+s),this.fireEvent(new mxEventObject(mxEvent.MOVE,"event",e)),mxEvent.consume(e)}),s=mxUtils.bind(this,function(e){mxEvent.removeGestureListeners(document,null,o,s),this.fireEvent(new mxEventObject(mxEvent.MOVE_END,"event",e)),mxEvent.consume(e)});mxEvent.addGestureListeners(document,null,o,s),this.fireEvent(new mxEventObject(mxEvent.MOVE_START,"event",e)),mxEvent.consume(e)}))},mxWindow.prototype.setLocation=function(e,t){this.div.style.left=e+"px",this.div.style.top=t+"px"},mxWindow.prototype.getX=function(){return parseInt(this.div.style.left)},mxWindow.prototype.getY=function(){return parseInt(this.div.style.top)},mxWindow.prototype.installCloseHandler=function(){this.closeImg=document.createElement("img"),this.closeImg.setAttribute("src",this.closeImage),this.closeImg.setAttribute("align","right"),this.closeImg.setAttribute("title","Close"),this.closeImg.style.marginLeft="2px",this.closeImg.style.cursor="pointer",this.closeImg.style.display="none",this.title.insertBefore(this.closeImg,this.title.firstChild),mxEvent.addGestureListeners(this.closeImg,mxUtils.bind(this,function(e){this.fireEvent(new mxEventObject(mxEvent.CLOSE,"event",e)),this.destroyOnClose?this.destroy():this.setVisible(!1),mxEvent.consume(e)}))},mxWindow.prototype.setImage=function(e){this.image=document.createElement("img"),this.image.setAttribute("src",e),this.image.setAttribute("align","left"),this.image.style.marginRight="4px",this.image.style.marginLeft="0px",this.image.style.marginTop="-2px",this.title.insertBefore(this.image,this.title.firstChild)},mxWindow.prototype.setClosable=function(e){this.closeImg.style.display=e?"":"none"},mxWindow.prototype.isVisible=function(){return null!=this.div&&"hidden"!=this.div.style.visibility},mxWindow.prototype.setVisible=function(e){null!=this.div&&this.isVisible()!=e&&(e?this.show():this.hide())},mxWindow.prototype.show=function(){this.div.style.visibility="",this.activate();var e=mxUtils.getCurrentStyle(this.contentWrapper);mxClient.IS_IE||"auto"!=e.overflow&&null==this.resize||(this.contentWrapper.style.height=this.div.offsetHeight-this.title.offsetHeight-2+"px"),this.fireEvent(new mxEventObject(mxEvent.SHOW))},mxWindow.prototype.hide=function(){this.div.style.visibility="hidden",this.fireEvent(new mxEventObject(mxEvent.HIDE))},mxWindow.prototype.destroy=function(){this.fireEvent(new mxEventObject(mxEvent.DESTROY)),null!=this.div&&(mxEvent.release(this.div),this.div.parentNode.removeChild(this.div),this.div=null),this.contentWrapper=this.content=this.title=null},mxForm.prototype.table=null,mxForm.prototype.body=!1,mxForm.prototype.getTable=function(){return this.table},mxForm.prototype.addButtons=function(e,t){var n=document.createElement("tr"),a=document.createElement("td");n.appendChild(a);var a=document.createElement("td"),i=document.createElement("button");mxUtils.write(i,mxResources.get("ok")||"OK"),a.appendChild(i),mxEvent.addListener(i,"click",function(){e()}),i=document.createElement("button"),mxUtils.write(i,mxResources.get("cancel")||"Cancel"),a.appendChild(i),mxEvent.addListener(i,"click",function(){t()}),n.appendChild(a),this.body.appendChild(n)},mxForm.prototype.addText=function(e,t){var n=document.createElement("input");return n.setAttribute("type","text"),n.value=t,this.addField(e,n)},mxForm.prototype.addCheckbox=function(e,t){var n=document.createElement("input");return n.setAttribute("type","checkbox"),this.addField(e,n),t&&(n.checked=!0),n},mxForm.prototype.addTextarea=function(e,t,n){var a=document.createElement("textarea");return mxClient.IS_NS&&n--,a.setAttribute("rows",n||2),a.value=t,this.addField(e,a)},mxForm.prototype.addCombo=function(e,t,n){var a=document.createElement("select");return null!=n&&a.setAttribute("size",n),t&&a.setAttribute("multiple","true"),this.addField(e,a)},mxForm.prototype.addOption=function(e,t,n,a){var i=document.createElement("option");mxUtils.writeln(i,t),i.setAttribute("value",n),a&&i.setAttribute("selected",a),e.appendChild(i)},mxForm.prototype.addField=function(e,t){var n=document.createElement("tr"),a=document.createElement("td");return mxUtils.write(a,e),n.appendChild(a),(a=document.createElement("td")).appendChild(t),n.appendChild(a),this.body.appendChild(n),t},mxImage.prototype.src=null,mxImage.prototype.width=null,mxImage.prototype.height=null,mxDivResizer.prototype.resizeWidth=!0,mxDivResizer.prototype.resizeHeight=!0,mxDivResizer.prototype.handlingResize=!1,mxDivResizer.prototype.resize=function(){var e=this.getDocumentWidth(),t=this.getDocumentHeight(),n=parseInt(this.div.style.left),a=parseInt(this.div.style.right),i=parseInt(this.div.style.top),o=parseInt(this.div.style.bottom);this.resizeWidth&&!isNaN(n)&&!isNaN(a)&&0<=n&&0<=a&&0<e-a-n&&(this.div.style.width=e-a-n+"px"),this.resizeHeight&&!isNaN(i)&&!isNaN(o)&&0<=i&&0<=o&&0<t-i-o&&(this.div.style.height=t-i-o+"px")},mxDivResizer.prototype.getDocumentWidth=function(){return document.body.clientWidth},mxDivResizer.prototype.getDocumentHeight=function(){return document.body.clientHeight},mxDragSource.prototype.element=null,mxDragSource.prototype.dropHandler=null,mxDragSource.prototype.dragOffset=null,mxDragSource.prototype.dragElement=null,mxDragSource.prototype.previewElement=null,mxDragSource.prototype.enabled=!0,mxDragSource.prototype.currentGraph=null,mxDragSource.prototype.currentDropTarget=null,mxDragSource.prototype.currentPoint=null,mxDragSource.prototype.currentGuide=null,mxDragSource.prototype.currentHighlight=null,mxDragSource.prototype.autoscroll=!0,mxDragSource.prototype.guidesEnabled=!0,mxDragSource.prototype.gridEnabled=!0,mxDragSource.prototype.highlightDropTargets=!0,mxDragSource.prototype.dragElementZIndex=100,mxDragSource.prototype.dragElementOpacity=70,mxDragSource.prototype.isEnabled=function(){return this.enabled},mxDragSource.prototype.setEnabled=function(e){this.enabled=e},mxDragSource.prototype.isGuidesEnabled=function(){return this.guidesEnabled},mxDragSource.prototype.setGuidesEnabled=function(e){this.guidesEnabled=e},mxDragSource.prototype.isGridEnabled=function(){return this.gridEnabled},mxDragSource.prototype.setGridEnabled=function(e){this.gridEnabled=e},mxDragSource.prototype.getGraphForEvent=function(e){return null},mxDragSource.prototype.getDropTarget=function(e,t,n){return e.getCellAt(t,n)},mxDragSource.prototype.createDragElement=function(e){return this.element.cloneNode(!0)},mxDragSource.prototype.createPreviewElement=function(e){return null},mxDragSource.prototype.mouseDown=function(e){this.enabled&&!mxEvent.isConsumed(e)&&null==this.mouseMoveHandler&&(this.startDrag(e),this.mouseMoveHandler=mxUtils.bind(this,this.mouseMove),this.mouseUpHandler=mxUtils.bind(this,this.mouseUp),mxEvent.addGestureListeners(document,null,this.mouseMoveHandler,this.mouseUpHandler),mxEvent.consume(e,!0,!1))},mxDragSource.prototype.startDrag=function(e){this.dragElement=this.createDragElement(e),this.dragElement.style.position="absolute",this.dragElement.style.zIndex=this.dragElementZIndex,mxUtils.setOpacity(this.dragElement,this.dragElementOpacity)},mxDragSource.prototype.stopDrag=function(e){null!=this.dragElement&&(null!=this.dragElement.parentNode&&this.dragElement.parentNode.removeChild(this.dragElement),this.dragElement=null)},mxDragSource.prototype.graphContainsEvent=function(e,t){var n=mxEvent.getClientX(t),a=mxEvent.getClientY(t),i=mxUtils.getOffset(e.container),o=mxUtils.getScrollOrigin();return n>=i.x-o.x&&a>=i.y-o.y&&n<=i.x-o.x+e.container.offsetWidth&&a<=i.y-o.y+e.container.offsetHeight},mxDragSource.prototype.mouseMove=function(e){if(null!=(t=this.getGraphForEvent(e))&&!this.graphContainsEvent(t,e)&&(t=null),t!=this.currentGraph&&(null!=this.currentGraph&&this.dragExit(this.currentGraph),this.currentGraph=t,null!=this.currentGraph&&this.dragEnter(this.currentGraph)),null!=this.currentGraph&&this.dragOver(this.currentGraph,e),null==this.dragElement||null!=this.previewElement&&"visible"==this.previewElement.style.visibility)null!=this.dragElement&&(this.dragElement.style.visibility="hidden");else{var t=mxEvent.getClientX(e),n=mxEvent.getClientY(e);null==this.dragElement.parentNode&&document.body.appendChild(this.dragElement),this.dragElement.style.visibility="visible",null!=this.dragOffset&&(t+=this.dragOffset.x,n+=this.dragOffset.y),t+=document.body.scrollLeft||document.documentElement.scrollLeft,n+=document.body.scrollTop||document.documentElement.scrollTop,this.dragElement.style.left=t+"px",this.dragElement.style.top=n+"px"}mxEvent.consume(e)},mxDragSource.prototype.mouseUp=function(e){if(null!=this.currentGraph){if(null!=this.currentPoint&&(null==this.previewElement||"hidden"!=this.previewElement.style.visibility)){var t=this.currentGraph.view.scale,n=this.currentGraph.view.translate;this.drop(this.currentGraph,e,this.currentDropTarget,this.currentPoint.x/t-n.x,this.currentPoint.y/t-n.y)}this.dragExit(this.currentGraph)}this.stopDrag(e),mxEvent.removeGestureListeners(document,null,this.mouseMoveHandler,this.mouseUpHandler),this.currentGraph=this.mouseUpHandler=this.mouseMoveHandler=null,mxEvent.consume(e)},mxDragSource.prototype.dragEnter=function(e){e.isMouseDown=!0,this.previewElement=this.createPreviewElement(e),this.isGuidesEnabled()&&null!=this.previewElement&&(this.currentGuide=new mxGuide(e,e.graphHandler.getGuideStates())),this.highlightDropTargets&&(this.currentHighlight=new mxCellHighlight(e,mxConstants.DROP_TARGET_COLOR))},mxDragSource.prototype.dragExit=function(e){this.currentPoint=this.currentDropTarget=null,e.isMouseDown=!1,null!=this.previewElement&&(null!=this.previewElement.parentNode&&this.previewElement.parentNode.removeChild(this.previewElement),this.previewElement=null),null!=this.currentGuide&&(this.currentGuide.destroy(),this.currentGuide=null),null!=this.currentHighlight&&(this.currentHighlight.destroy(),this.currentHighlight=null)},mxDragSource.prototype.dragOver=function(e,t){var n=mxUtils.getOffset(e.container),a=mxUtils.getScrollOrigin(e.container),i=mxEvent.getClientX(t)-n.x+a.x,n=mxEvent.getClientY(t)-n.y+a.y;if(e.autoScroll&&(null==this.autoscroll||this.autoscroll)&&e.scrollPointToVisible(i,n,e.autoExtend),null!=this.currentHighlight&&e.isDropEnabled()&&(this.currentDropTarget=this.getDropTarget(e,i,n),a=e.getView().getState(this.currentDropTarget),this.currentHighlight.highlight(a)),null!=this.previewElement){null==this.previewElement.parentNode&&(e.container.appendChild(this.previewElement),this.previewElement.style.zIndex="3",this.previewElement.style.position="absolute");var a=this.isGridEnabled()&&e.isGridEnabledEvent(t),o=!0;if(null!=this.currentGuide&&this.currentGuide.isEnabledForEvent(t))var o=parseInt(this.previewElement.style.width),s=parseInt(this.previewElement.style.height),o=new mxRectangle(0,0,o,s),n=new mxPoint(i,n),n=this.currentGuide.move(o,n,a),o=!1,i=n.x,n=n.y;else if(a)var a=e.view.scale,s=e.view.translate,r=e.gridSize/2,i=(e.snap(i/a-s.x-r)+s.x)*a,n=(e.snap(n/a-s.y-r)+s.y)*a;null!=this.currentGuide&&o&&this.currentGuide.hide(),null!=this.previewOffset&&(i+=this.previewOffset.x,n+=this.previewOffset.y),this.previewElement.style.left=Math.round(i)+"px",this.previewElement.style.top=Math.round(n)+"px",this.previewElement.style.visibility="visible"}this.currentPoint=new mxPoint(i,n)},mxDragSource.prototype.drop=function(e,t,n,a,i){this.dropHandler(e,t,n,a,i),e.container.focus()},mxToolbar.prototype=new mxEventSource,mxToolbar.prototype.constructor=mxToolbar,mxToolbar.prototype.container=null,mxToolbar.prototype.enabled=!0,mxToolbar.prototype.noReset=!1,mxToolbar.prototype.updateDefaultMode=!0,mxToolbar.prototype.addItem=function(e,t,n,a,i,o){var s=document.createElement(null!=t?"img":"button"),r=i||(null!=o?"mxToolbarMode":"mxToolbarItem");return s.className=r,s.setAttribute("src",t),null!=e&&(null!=t?s.setAttribute("title",e):mxUtils.write(s,e)),this.container.appendChild(s),null!=n&&(mxEvent.addListener(s,"click",n),mxClient.IS_TOUCH&&mxEvent.addListener(s,"touchend",n)),e=mxUtils.bind(this,function(e){null!=a?s.setAttribute("src",t):s.style.backgroundColor=""}),mxEvent.addGestureListeners(s,mxUtils.bind(this,function(e){if(null!=a?s.setAttribute("src",a):s.style.backgroundColor="gray",null!=o){null==this.menu&&(this.menu=new mxPopupMenu,this.menu.init());var t=this.currentImg;this.menu.isMenuShowing()&&this.menu.hideMenu(),t!=s&&(this.currentImg=s,this.menu.factoryMethod=o,t=new mxPoint(s.offsetLeft,s.offsetTop+s.offsetHeight),this.menu.popup(t.x,t.y,null,e),this.menu.isMenuShowing()&&(s.className=r+"Selected",this.menu.hideMenu=function(){mxPopupMenu.prototype.hideMenu.apply(this),s.className=r,this.currentImg=null}))}}),null,e),mxEvent.addListener(s,"mouseout",e),s},mxToolbar.prototype.addCombo=function(e){var t=document.createElement("div");t.style.display="inline",t.className="mxToolbarComboContainer";var n=document.createElement("select");return n.className=e||"mxToolbarCombo",t.appendChild(n),this.container.appendChild(t),n},mxToolbar.prototype.addActionCombo=function(e,t){var n=document.createElement("select");return n.className=t||"mxToolbarCombo",this.addOption(n,e,null),mxEvent.addListener(n,"change",function(e){var t=n.options[n.selectedIndex];n.selectedIndex=0,null!=t.funct&&t.funct(e)}),this.container.appendChild(n),n},mxToolbar.prototype.addOption=function(e,t,n){var a=document.createElement("option");return mxUtils.writeln(a,t),"function"==typeof n?a.funct=n:a.setAttribute("value",n),e.appendChild(a),a},mxToolbar.prototype.addSwitchMode=function(e,t,n,a,i){var o=document.createElement("img");return o.initialClassName=i||"mxToolbarMode",o.className=o.initialClassName,o.setAttribute("src",t),o.altIcon=a,null!=e&&o.setAttribute("title",e),mxEvent.addListener(o,"click",mxUtils.bind(this,function(e){null!=(e=this.selectedMode.altIcon)?(this.selectedMode.altIcon=this.selectedMode.getAttribute("src"),this.selectedMode.setAttribute("src",e)):this.selectedMode.className=this.selectedMode.initialClassName,this.updateDefaultMode&&(this.defaultMode=o),this.selectedMode=o,null!=(e=o.altIcon)?(o.altIcon=o.getAttribute("src"),o.setAttribute("src",e)):o.className=o.initialClassName+"Selected",this.fireEvent(new mxEventObject(mxEvent.SELECT)),n()})),this.container.appendChild(o),null==this.defaultMode&&(this.defaultMode=o,this.selectMode(o),n()),o},mxToolbar.prototype.addMode=function(e,t,n,a,i,o){o=null==o||o;var s=document.createElement(null!=t?"img":"button");return s.initialClassName=i||"mxToolbarMode",s.className=s.initialClassName,s.setAttribute("src",t),s.altIcon=a,null!=e&&s.setAttribute("title",e),this.enabled&&o&&(mxEvent.addListener(s,"click",mxUtils.bind(this,function(e){this.selectMode(s,n),this.noReset=!1})),mxEvent.addListener(s,"dblclick",mxUtils.bind(this,function(e){this.selectMode(s,n),this.noReset=!0})),null==this.defaultMode&&(this.defaultMode=s,this.defaultFunction=n,this.selectMode(s,n))),this.container.appendChild(s),s},mxToolbar.prototype.selectMode=function(e,t){if(this.selectedMode!=e){if(null!=this.selectedMode){var n=this.selectedMode.altIcon;null!=n?(this.selectedMode.altIcon=this.selectedMode.getAttribute("src"),this.selectedMode.setAttribute("src",n)):this.selectedMode.className=this.selectedMode.initialClassName}this.selectedMode=e,null!=(n=this.selectedMode.altIcon)?(this.selectedMode.altIcon=this.selectedMode.getAttribute("src"),this.selectedMode.setAttribute("src",n)):this.selectedMode.className=this.selectedMode.initialClassName+"Selected",this.fireEvent(new mxEventObject(mxEvent.SELECT,"function",t))}},mxToolbar.prototype.resetMode=function(e){(e||!this.noReset)&&this.selectedMode!=this.defaultMode&&this.selectMode(this.defaultMode,this.defaultFunction)},mxToolbar.prototype.addSeparator=function(e){return this.addItem(null,e,null)},mxToolbar.prototype.addBreak=function(){mxUtils.br(this.container)},mxToolbar.prototype.addLine=function(){var e=document.createElement("hr");e.style.marginRight="6px",e.setAttribute("size","1"),this.container.appendChild(e)},mxToolbar.prototype.destroy=function(){mxEvent.release(this.container),this.selectedMode=this.defaultFunction=this.defaultMode=this.container=null,null!=this.menu&&this.menu.destroy()},mxSession.prototype=new mxEventSource,mxSession.prototype.constructor=mxSession,mxSession.prototype.model=null,mxSession.prototype.urlInit=null,mxSession.prototype.urlPoll=null,mxSession.prototype.urlNotify=null,mxSession.prototype.codec=null,mxSession.prototype.linefeed="&#xa;",mxSession.prototype.escapePostData=!0,mxSession.prototype.significantRemoteChanges=!0,mxSession.prototype.sent=0,mxSession.prototype.received=0,mxSession.prototype.debug=!1,mxSession.prototype.connected=!1,mxSession.prototype.suspended=!1,mxSession.prototype.polling=!1,mxSession.prototype.start=function(){this.debug?(this.connected=!0,this.fireEvent(new mxEventObject(mxEvent.CONNECT))):this.connected||this.get(this.urlInit,mxUtils.bind(this,function(e){this.connected=!0,this.fireEvent(new mxEventObject(mxEvent.CONNECT)),this.poll()}))},mxSession.prototype.suspend=function(){this.connected&&!this.suspended&&(this.suspended=!0,this.fireEvent(new mxEventObject(mxEvent.SUSPEND)))},mxSession.prototype.resume=function(e,t,n){this.connected&&this.suspended&&(this.suspended=!1,this.fireEvent(new mxEventObject(mxEvent.RESUME)),this.polling||this.poll())},mxSession.prototype.stop=function(e){this.connected&&(this.connected=!1),this.fireEvent(new mxEventObject(mxEvent.DISCONNECT,"reason",e))},mxSession.prototype.poll=function(){this.connected&&!this.suspended&&null!=this.urlPoll?(this.polling=!0,this.get(this.urlPoll,mxUtils.bind(this,function(){this.poll()}))):this.polling=!1},mxSession.prototype.notify=function(e,t,n){null!=e&&0<e.length&&(null!=this.urlNotify&&(this.debug?(mxLog.show(),mxLog.debug("mxSession.notify: "+this.urlNotify+" xml="+e)):(e="<message><delta>"+e+"</delta></message>",this.escapePostData&&(e=encodeURIComponent(e)),mxUtils.post(this.urlNotify,"xml="+e,t,n))),this.sent+=e.length,this.fireEvent(new mxEventObject(mxEvent.NOTIFY,"url",this.urlNotify,"xml",e)))},mxSession.prototype.get=function(e,t,n){if(void 0!==mxUtils){var a=mxUtils.bind(this,function(e){null!=n?n(e):this.stop(e)});mxUtils.get(e,mxUtils.bind(this,function(n){if(void 0!==mxUtils)if(n.isReady()&&404!=n.getStatus()){if(this.received+=n.getText().length,this.fireEvent(new mxEventObject(mxEvent.GET,"url",e,"request",n)),this.isValidResponse(n)){if(0<n.getText().length){var i=n.getDocumentElement();null==i?a("Invalid response: "+n.getText()):this.receive(i)}null!=t&&t(n)}}else a("Response not ready")}),function(e){a("Transmission error")})}},mxSession.prototype.isValidResponse=function(e){return 0>e.getText().indexOf("<?php")},mxSession.prototype.encodeChanges=function(e,t){for(var n="",a=t?-1:1,i=t?e.length-1:0;0<=i&&i<e.length;i+=a)var o=this.codec.encode(e[i]),n=n+mxUtils.getXml(o,this.linefeed);return n},mxSession.prototype.receive=function(e){if(null!=e&&e.nodeType==mxConstants.NODETYPE_ELEMENT){var t=e.getAttribute("namespace");for(null!=t&&(this.model.prefix=t+"-"),t=e.firstChild;null!=t;){var n=t.nodeName.toLowerCase();"state"==n?this.processState(t):"delta"==n&&this.processDelta(t),t=t.nextSibling}this.fireEvent(new mxEventObject(mxEvent.RECEIVE,"node",e))}},mxSession.prototype.processState=function(e){new mxCodec(e.ownerDocument).decode(e.firstChild,this.model)},mxSession.prototype.processDelta=function(e){for(e=e.firstChild;null!=e;)"edit"==e.nodeName&&this.processEdit(e),e=e.nextSibling},mxSession.prototype.processEdit=function(e){if(0<(e=this.decodeChanges(e)).length){var t=this.createUndoableEdit(e);this.model.fireEvent(new mxEventObject(mxEvent.CHANGE,"edit",t,"changes",e)),this.model.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",t)),this.fireEvent(new mxEventObject(mxEvent.FIRED,"edit",t))}},mxSession.prototype.createUndoableEdit=function(e){var t=new mxUndoableEdit(this.model,this.significantRemoteChanges);return t.changes=e,t.notify=function(){t.source.fireEvent(new mxEventObject(mxEvent.CHANGE,"edit",t,"changes",t.changes)),t.source.fireEvent(new mxEventObject(mxEvent.NOTIFY,"edit",t,"changes",t.changes))},t},mxSession.prototype.decodeChanges=function(e){this.codec.document=e.ownerDocument;var t=[];for(e=e.firstChild;null!=e;){var n=this.decodeChange(e);null!=n&&t.push(n),e=e.nextSibling}return t},mxSession.prototype.decodeChange=function(e){var t=null;return e.nodeType==mxConstants.NODETYPE_ELEMENT&&null!=(t="mxRootChange"==e.nodeName?new mxCodec(e.ownerDocument).decode(e):this.codec.decode(e))&&(t.model=this.model,t.execute(),"mxChildChange"==e.nodeName&&null==t.parent&&this.cellRemoved(t.child)),t},mxSession.prototype.cellRemoved=function(e,t){this.codec.putObject(e.getId(),e);for(var n=this.model.getChildCount(e),a=0;a<n;a++)this.cellRemoved(this.model.getChildAt(e,a))},mxUndoableEdit.prototype.source=null,mxUndoableEdit.prototype.changes=null,mxUndoableEdit.prototype.significant=null,mxUndoableEdit.prototype.undone=!1,mxUndoableEdit.prototype.redone=!1,mxUndoableEdit.prototype.isEmpty=function(){return 0==this.changes.length},mxUndoableEdit.prototype.isSignificant=function(){return this.significant},mxUndoableEdit.prototype.add=function(e){this.changes.push(e)},mxUndoableEdit.prototype.notify=function(){},mxUndoableEdit.prototype.die=function(){},mxUndoableEdit.prototype.undo=function(){if(!this.undone){this.source.fireEvent(new mxEventObject(mxEvent.START_EDIT));for(var e=this.changes.length-1;0<=e;e--){var t=this.changes[e];null!=t.execute?t.execute():null!=t.undo&&t.undo(),this.source.fireEvent(new mxEventObject(mxEvent.EXECUTED,"change",t))}this.undone=!0,this.redone=!1,this.source.fireEvent(new mxEventObject(mxEvent.END_EDIT))}this.notify()},mxUndoableEdit.prototype.redo=function(){if(!this.redone){this.source.fireEvent(new mxEventObject(mxEvent.START_EDIT));for(var e=this.changes.length,t=0;t<e;t++){var n=this.changes[t];null!=n.execute?n.execute():null!=n.redo&&n.redo(),this.source.fireEvent(new mxEventObject(mxEvent.EXECUTED,"change",n))}this.undone=!1,this.redone=!0,this.source.fireEvent(new mxEventObject(mxEvent.END_EDIT))}this.notify()},mxUndoManager.prototype=new mxEventSource,mxUndoManager.prototype.constructor=mxUndoManager,mxUndoManager.prototype.size=null,mxUndoManager.prototype.history=null,mxUndoManager.prototype.indexOfNextAdd=0,mxUndoManager.prototype.isEmpty=function(){return 0==this.history.length},mxUndoManager.prototype.clear=function(){this.history=[],this.indexOfNextAdd=0,this.fireEvent(new mxEventObject(mxEvent.CLEAR))},mxUndoManager.prototype.canUndo=function(){return 0<this.indexOfNextAdd},mxUndoManager.prototype.undo=function(){for(;0<this.indexOfNextAdd;){var e=this.history[--this.indexOfNextAdd];if(e.undo(),e.isSignificant()){this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",e));break}}},mxUndoManager.prototype.canRedo=function(){return this.indexOfNextAdd<this.history.length},mxUndoManager.prototype.redo=function(){for(var e=this.history.length;this.indexOfNextAdd<e;){var t=this.history[this.indexOfNextAdd++];if(t.redo(),t.isSignificant()){this.fireEvent(new mxEventObject(mxEvent.REDO,"edit",t));break}}},mxUndoManager.prototype.undoableEditHappened=function(e){this.trim(),0<this.size&&this.size==this.history.length&&this.history.shift(),this.history.push(e),this.indexOfNextAdd=this.history.length,this.fireEvent(new mxEventObject(mxEvent.ADD,"edit",e))},mxUndoManager.prototype.trim=function(){if(this.history.length>this.indexOfNextAdd)for(var e=this.history.splice(this.indexOfNextAdd,this.history.length-this.indexOfNextAdd),t=0;t<e.length;t++)e[t].die()};var mxUrlConverter=function(e){var t=!0,n=null,a=null;return{isEnabled:function(){return t},setEnabled:function(e){t=e},getBaseUrl:function(){return n},setBaseUrl:function(e){n=e},getBaseDomain:function(){return n},setBaseDomain:function(e){n=e},isRelativeUrl:function(e){return"http://"!=e.substring(0,7)&&"https://"!=e.substring(0,8)&&"data:image"!=e.substring(0,10)},convert:function(e){if(t&&this.isRelativeUrl(e)){if(null==n){a=location.protocol+"//"+location.host;var i=(n=a+location.pathname).lastIndexOf("/");0<i&&(n=n.substring(0,i+1))}e="/"==e.charAt(0)?a+e:n+e}return e}}};mxPanningManager.prototype.damper=1/6,mxPanningManager.prototype.delay=10,mxPanningManager.prototype.handleMouseOut=!0,mxPanningManager.prototype.border=0,mxPopupMenu.prototype=new mxEventSource,mxPopupMenu.prototype.constructor=mxPopupMenu,mxPopupMenu.prototype.submenuImage=mxClient.imageBasePath+"/submenu.gif",mxPopupMenu.prototype.zIndex=10006,mxPopupMenu.prototype.factoryMethod=null,mxPopupMenu.prototype.useLeftButtonForPopup=!1,mxPopupMenu.prototype.enabled=!0,mxPopupMenu.prototype.itemCount=0,mxPopupMenu.prototype.autoExpand=!1,mxPopupMenu.prototype.smartSeparators=!1,mxPopupMenu.prototype.labels=!0,mxPopupMenu.prototype.init=function(){this.table=document.createElement("table"),this.table.className="mxPopupMenu",this.tbody=document.createElement("tbody"),this.table.appendChild(this.tbody),this.div=document.createElement("div"),this.div.className="mxPopupMenu",this.div.style.display="inline",this.div.style.zIndex=this.zIndex,this.div.appendChild(this.table),mxEvent.disableContextMenu(this.div)},mxPopupMenu.prototype.isEnabled=function(){return this.enabled},mxPopupMenu.prototype.setEnabled=function(e){this.enabled=e},mxPopupMenu.prototype.isPopupTrigger=function(e){return e.isPopupTrigger()||this.useLeftButtonForPopup&&mxEvent.isLeftMouseButton(e.getEvent())},mxPopupMenu.prototype.addItem=function(e,t,n,a,i,o){a=a||this,this.itemCount++,a.willAddSeparator&&(a.containsItems&&this.addSeparator(a,!0),a.willAddSeparator=!1),a.containsItems=!0;var s=document.createElement("tr");s.className="mxPopupMenuItem";var r=document.createElement("td");return r.className="mxPopupMenuIcon",null!=t?(i=document.createElement("img"),i.src=t,r.appendChild(i)):null!=i&&(t=document.createElement("div"),t.className=i,r.appendChild(t)),s.appendChild(r),this.labels&&(r=document.createElement("td"),r.className="mxPopupMenuItem"+(null==o||o?"":" disabled"),mxUtils.write(r,e),r.align="left",s.appendChild(r),e=document.createElement("td"),e.className="mxPopupMenuItem"+(null==o||o?"":" disabled"),e.style.paddingRight="6px",e.style.textAlign="right",s.appendChild(e),null==a.div&&this.createSubmenu(a)),a.tbody.appendChild(s),(null==o||o)&&(mxEvent.addGestureListeners(s,mxUtils.bind(this,function(e){this.eventReceiver=s,a.activeRow!=s&&a.activeRow!=a&&(null!=a.activeRow&&null!=a.activeRow.div.parentNode&&this.hideSubmenu(a),null!=s.div&&(this.showSubmenu(a,s),a.activeRow=s)),mxEvent.consume(e)}),mxUtils.bind(this,function(e){a.activeRow!=s&&a.activeRow!=a&&(null!=a.activeRow&&null!=a.activeRow.div.parentNode&&this.hideSubmenu(a),this.autoExpand&&null!=s.div&&(this.showSubmenu(a,s),a.activeRow=s)),s.className="mxPopupMenuItemHover"}),mxUtils.bind(this,function(e){this.eventReceiver==s&&(a.activeRow!=s&&this.hideMenu(),null!=n&&n(e)),this.eventReceiver=null,mxEvent.consume(e)})),mxEvent.addListener(s,"mouseout",mxUtils.bind(this,function(e){s.className="mxPopupMenuItem"}))),s},mxPopupMenu.prototype.createSubmenu=function(e){e.table=document.createElement("table"),e.table.className="mxPopupMenu",e.tbody=document.createElement("tbody"),e.table.appendChild(e.tbody),e.div=document.createElement("div"),e.div.className="mxPopupMenu",e.div.style.position="absolute",e.div.style.display="inline",e.div.style.zIndex=this.zIndex,e.div.appendChild(e.table);var t=document.createElement("img");t.setAttribute("src",this.submenuImage),td=e.firstChild.nextSibling.nextSibling,td.appendChild(t)},mxPopupMenu.prototype.showSubmenu=function(e,t){if(null!=t.div){t.div.style.left=e.div.offsetLeft+t.offsetLeft+t.offsetWidth-1+"px",t.div.style.top=e.div.offsetTop+t.offsetTop+"px",document.body.appendChild(t.div);var n=parseInt(t.div.offsetLeft),a=parseInt(t.div.offsetWidth),i=document.body,o=document.documentElement;n+a>(i.scrollLeft||o.scrollLeft)+(i.clientWidth||o.clientWidth)&&(t.div.style.left=e.div.offsetLeft-a+(mxClient.IS_IE?6:-6)+"px"),mxUtils.fit(t.div)}},mxPopupMenu.prototype.addSeparator=function(e,t){if(e=e||this,this.smartSeparators&&!t)e.willAddSeparator=!0;else if(null!=e.tbody){e.willAddSeparator=!1;var n=document.createElement("tr"),a=document.createElement("td");a.className="mxPopupMenuIcon",a.style.padding="0 0 0 0px",n.appendChild(a),(a=document.createElement("td")).style.padding="0 0 0 0px",a.setAttribute("colSpan","2");var i=document.createElement("hr");i.setAttribute("size","1"),a.appendChild(i),n.appendChild(a),e.tbody.appendChild(n)}},mxPopupMenu.prototype.popup=function(e,t,n,a){if(null!=this.div&&null!=this.tbody&&null!=this.factoryMethod){for(this.div.style.left=e+"px",this.div.style.top=t+"px";null!=this.tbody.firstChild;)mxEvent.release(this.tbody.firstChild),this.tbody.removeChild(this.tbody.firstChild);this.itemCount=0,this.factoryMethod(this,n,a),0<this.itemCount&&(this.showMenu(),this.fireEvent(new mxEventObject(mxEvent.SHOW)))}},mxPopupMenu.prototype.isMenuShowing=function(){return null!=this.div&&this.div.parentNode==document.body},mxPopupMenu.prototype.showMenu=function(){9<=document.documentMode&&(this.div.style.filter="none"),document.body.appendChild(this.div),mxUtils.fit(this.div)},mxPopupMenu.prototype.hideMenu=function(){null!=this.div&&(null!=this.div.parentNode&&this.div.parentNode.removeChild(this.div),this.hideSubmenu(this),this.containsItems=!1)},mxPopupMenu.prototype.hideSubmenu=function(e){null!=e.activeRow&&(this.hideSubmenu(e.activeRow),null!=e.activeRow.div.parentNode&&e.activeRow.div.parentNode.removeChild(e.activeRow.div),e.activeRow=null)},mxPopupMenu.prototype.destroy=function(){null!=this.div&&(mxEvent.release(this.div),null!=this.div.parentNode&&this.div.parentNode.removeChild(this.div),this.div=null)},mxAutoSaveManager.prototype=new mxEventSource,mxAutoSaveManager.prototype.constructor=mxAutoSaveManager,mxAutoSaveManager.prototype.graph=null,mxAutoSaveManager.prototype.autoSaveDelay=10,mxAutoSaveManager.prototype.autoSaveThrottle=2,mxAutoSaveManager.prototype.autoSaveThreshold=5,mxAutoSaveManager.prototype.ignoredChanges=0,mxAutoSaveManager.prototype.lastSnapshot=0,mxAutoSaveManager.prototype.enabled=!0,mxAutoSaveManager.prototype.changeHandler=null,mxAutoSaveManager.prototype.isEnabled=function(){return this.enabled},mxAutoSaveManager.prototype.setEnabled=function(e){this.enabled=e},mxAutoSaveManager.prototype.setGraph=function(e){null!=this.graph&&this.graph.getModel().removeListener(this.changeHandler),this.graph=e,null!=this.graph&&this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler)},mxAutoSaveManager.prototype.save=function(){},mxAutoSaveManager.prototype.graphModelChanged=function(e){(e=((new Date).getTime()-this.lastSnapshot)/1e3)>this.autoSaveDelay||this.ignoredChanges>=this.autoSaveThreshold&&e>this.autoSaveThrottle?(this.save(),this.reset()):this.ignoredChanges++},mxAutoSaveManager.prototype.reset=function(){this.lastSnapshot=(new Date).getTime(),this.ignoredChanges=0},mxAutoSaveManager.prototype.destroy=function(){this.setGraph(null)},mxAnimation.prototype=new mxEventSource,mxAnimation.prototype.constructor=mxAnimation,mxAnimation.prototype.delay=null,mxAnimation.prototype.thread=null,mxAnimation.prototype.startAnimation=function(){null==this.thread&&(this.thread=window.setInterval(mxUtils.bind(this,this.updateAnimation),this.delay))},mxAnimation.prototype.updateAnimation=function(){this.fireEvent(new mxEventObject(mxEvent.EXECUTE))},mxAnimation.prototype.stopAnimation=function(){null!=this.thread&&(window.clearInterval(this.thread),this.thread=null,this.fireEvent(new mxEventObject(mxEvent.DONE)))},mxMorphing.prototype=new mxAnimation,mxMorphing.prototype.constructor=mxMorphing,mxMorphing.prototype.graph=null,mxMorphing.prototype.steps=null,mxMorphing.prototype.step=0,mxMorphing.prototype.ease=null,mxMorphing.prototype.cells=null,mxMorphing.prototype.updateAnimation=function(){var e=new mxCellStatePreview(this.graph);if(null!=this.cells)for(var t=0;t<this.cells.length;t++)this.animateCell(cells[t],e,!1);else this.animateCell(this.graph.getModel().getRoot(),e,!0);this.show(e),(e.isEmpty()||this.step++>=this.steps)&&this.stopAnimation()},mxMorphing.prototype.show=function(e){e.show()},mxMorphing.prototype.animateCell=function(e,t,n){var a=this.graph.getView().getState(e),i=null;if(null!=a&&(i=this.getDelta(a),this.graph.getModel().isVertex(e)&&(0!=i.x||0!=i.y))){var o=this.graph.view.getTranslate(),s=this.graph.view.getScale();i.x+=o.x*s,i.y+=o.y*s,t.moveState(a,-i.x/this.ease,-i.y/this.ease)}if(n&&!this.stopRecursion(a,i))for(a=this.graph.getModel().getChildCount(e),i=0;i<a;i++)this.animateCell(this.graph.getModel().getChildAt(e,i),t,n)},mxMorphing.prototype.stopRecursion=function(e,t){return null!=t&&(0!=t.x||0!=t.y)},mxMorphing.prototype.getDelta=function(e){var t=this.getOriginForCell(e.cell),n=this.graph.getView().getTranslate(),a=this.graph.getView().getScale();return e=new mxPoint(e.x/a-n.x,e.y/a-n.y),new mxPoint((t.x-e.x)*a,(t.y-e.y)*a)},mxMorphing.prototype.getOriginForCell=function(e){var t=null;return null!=e&&(t=this.getOriginForCell(this.graph.getModel().getParent(e)),null!=(e=this.graph.getCellGeometry(e))&&(t.x+=e.x,t.y+=e.y)),null==t&&(t=this.graph.view.getTranslate(),t=new mxPoint(-t.x,-t.y)),t},mxImageBundle.prototype.images=null,mxImageBundle.prototype.images=null,mxImageBundle.prototype.putImage=function(e,t,n){this.images[e]={value:t,fallback:n}},mxImageBundle.prototype.getImage=function(e){var t=null;return null!=e&&null!=(e=this.images[e])&&(t=this.alt?e.fallback:e.value),t},mxImageExport.prototype.includeOverlays=!1,mxImageExport.prototype.drawState=function(e,t){null!=e&&(this.visitStatesRecursive(e,t,this.drawCellState),this.includeOverlays&&this.visitStatesRecursive(e,t,this.drawOverlays))},mxImageExport.prototype.visitStatesRecursive=function(e,t,n){if(null!=e){n(e,t);for(var a=e.view.graph,i=a.model.getChildCount(e.cell),o=0;o<i;o++){var s=a.view.getState(a.model.getChildAt(e.cell,o));this.visitStatesRecursive(s,t,n)}}},mxImageExport.prototype.drawCellState=function(e,t){e.shape instanceof mxShape&&(t.save(),e.shape.paint(t),t.restore()),null!=e.text&&(t.save(),e.text.paint(t),t.restore())},mxImageExport.prototype.drawOverlays=function(e,t){null!=e.overlays&&e.overlays.visit(function(e,n){n instanceof mxShape&&n.paint(t)})},mxAbstractCanvas2D.prototype.state=null,mxAbstractCanvas2D.prototype.states=null,mxAbstractCanvas2D.prototype.path=null,mxAbstractCanvas2D.prototype.rotateHtml=!0,mxAbstractCanvas2D.prototype.lastX=0,mxAbstractCanvas2D.prototype.lastY=0,mxAbstractCanvas2D.prototype.moveOp="M",mxAbstractCanvas2D.prototype.lineOp="L",mxAbstractCanvas2D.prototype.quadOp="Q",mxAbstractCanvas2D.prototype.curveOp="C",mxAbstractCanvas2D.prototype.closeOp="Z",mxAbstractCanvas2D.prototype.pointerEvents=!1,mxAbstractCanvas2D.prototype.createUrlConverter=function(){return new mxUrlConverter},mxAbstractCanvas2D.prototype.reset=function(){this.state=this.createState(),this.states=[]},mxAbstractCanvas2D.prototype.createState=function(){return{dx:0,dy:0,scale:1,alpha:1,fillColor:null,fillAlpha:1,gradientColor:null,gradientAlpha:1,gradientDirection:null,strokeColor:null,strokeWidth:1,dashed:!1,dashPattern:"3 3",lineCap:"flat",lineJoin:"miter",miterLimit:10,fontColor:"#000000",fontBackgroundColor:null,fontBorderColor:null,fontSize:mxConstants.DEFAULT_FONTSIZE,fontFamily:mxConstants.DEFAULT_FONTFAMILY,fontStyle:0,shadow:!1,shadowColor:mxConstants.SHADOWCOLOR,shadowAlpha:mxConstants.SHADOW_OPACITY,shadowDx:mxConstants.SHADOW_OFFSET_X,shadowDy:mxConstants.SHADOW_OFFSET_Y,rotation:0,rotationCx:0,rotationCy:0}},mxAbstractCanvas2D.prototype.format=function(e){return Math.round(parseFloat(e))},mxAbstractCanvas2D.prototype.addOp=function(){if(null!=this.path&&(this.path.push(arguments[0]),2<arguments.length))for(var e=this.state,t=2;t<arguments.length;t+=2)this.lastX=arguments[t-1],this.lastY=arguments[t],this.path.push(this.format((this.lastX+e.dx)*e.scale)),this.path.push(this.format((this.lastY+e.dy)*e.scale))},mxAbstractCanvas2D.prototype.rotatePoint=function(e,t,n,a,i){return n*=Math.PI/180,mxUtils.getRotatedPoint(new mxPoint(e,t),Math.cos(n),Math.sin(n),new mxPoint(a,i))},mxAbstractCanvas2D.prototype.save=function(){this.states.push(this.state),this.state=mxUtils.clone(this.state)},mxAbstractCanvas2D.prototype.restore=function(){this.state=this.states.pop()},mxAbstractCanvas2D.prototype.scale=function(e){this.state.scale*=e,this.state.strokeWidth*=e},mxAbstractCanvas2D.prototype.translate=function(e,t){this.state.dx+=e,this.state.dy+=t},mxAbstractCanvas2D.prototype.setAlpha=function(e){this.state.alpha=e},mxAbstractCanvas2D.prototype.setFillColor=function(e){e==mxConstants.NONE&&(e=null),this.state.fillColor=e,this.state.gradientColor=null},mxAbstractCanvas2D.prototype.setGradient=function(e,t,n,a,i,o,s,r,l){(n=this.state).fillColor=e,n.fillAlpha=null!=r?r:1,n.gradientColor=t,n.gradientAlpha=null!=l?l:1,n.gradientDirection=s},mxAbstractCanvas2D.prototype.setStrokeColor=function(e){e==mxConstants.NONE&&(e=null),this.state.strokeColor=e},mxAbstractCanvas2D.prototype.setStrokeWidth=function(e){this.state.strokeWidth=e},mxAbstractCanvas2D.prototype.setDashed=function(e){this.state.dashed=e},mxAbstractCanvas2D.prototype.setDashPattern=function(e){this.state.dashPattern=e},mxAbstractCanvas2D.prototype.setLineCap=function(e){this.state.lineCap=e},mxAbstractCanvas2D.prototype.setLineJoin=function(e){this.state.lineJoin=e},mxAbstractCanvas2D.prototype.setMiterLimit=function(e){this.state.miterLimit=e},mxAbstractCanvas2D.prototype.setFontColor=function(e){e==mxConstants.NONE&&(e=null),this.state.fontColor=e},mxAbstractCanvas2D.prototype.setFontBackgroundColor=function(e){e==mxConstants.NONE&&(e=null),this.state.fontBackgroundColor=e},mxAbstractCanvas2D.prototype.setFontBorderColor=function(e){e==mxConstants.NONE&&(e=null),this.state.fontBorderColor=e},mxAbstractCanvas2D.prototype.setFontSize=function(e){this.state.fontSize=e},mxAbstractCanvas2D.prototype.setFontFamily=function(e){this.state.fontFamily=e},mxAbstractCanvas2D.prototype.setFontStyle=function(e){null==e&&(e=0),this.state.fontStyle=e},mxAbstractCanvas2D.prototype.setShadow=function(e){this.state.shadow=e},mxAbstractCanvas2D.prototype.setShadowColor=function(e){e==mxConstants.NONE&&(e=null),this.state.shadowColor=e},mxAbstractCanvas2D.prototype.setShadowAlpha=function(e){this.state.shadowAlpha=e},mxAbstractCanvas2D.prototype.setShadowOffset=function(e,t){this.state.shadowDx=e,this.state.shadowDy=t},mxAbstractCanvas2D.prototype.begin=function(){this.lastY=this.lastX=0,this.path=[]},mxAbstractCanvas2D.prototype.moveTo=function(e,t){this.addOp(this.moveOp,e,t)},mxAbstractCanvas2D.prototype.lineTo=function(e,t){this.addOp(this.lineOp,e,t)},mxAbstractCanvas2D.prototype.quadTo=function(e,t,n,a){this.addOp(this.quadOp,e,t,n,a)},mxAbstractCanvas2D.prototype.curveTo=function(e,t,n,a,i,o){this.addOp(this.curveOp,e,t,n,a,i,o)},mxAbstractCanvas2D.prototype.arcTo=function(e,t,n,a,i,o,s){for(e=mxUtils.arcToCurves(this.lastX,this.lastY,e,t,n,a,i,o,s),t=0;t<e.length;t+=6)this.curveTo(e[t],e[t+1],e[t+2],e[t+3],e[t+4],e[t+5])},mxAbstractCanvas2D.prototype.close=function(e,t,n,a,i,o){this.addOp(this.closeOp)},mxAbstractCanvas2D.prototype.end=function(){},mxUtils.extend(mxXmlCanvas2D,mxAbstractCanvas2D),mxXmlCanvas2D.prototype.textEnabled=!0,mxXmlCanvas2D.prototype.compressed=!0,mxXmlCanvas2D.prototype.writeDefaults=function(){var e;(e=this.createElement("fontfamily")).setAttribute("family",mxConstants.DEFAULT_FONTFAMILY),this.root.appendChild(e),(e=this.createElement("fontsize")).setAttribute("size",mxConstants.DEFAULT_FONTSIZE),this.root.appendChild(e),(e=this.createElement("shadowcolor")).setAttribute("color",mxConstants.SHADOWCOLOR),this.root.appendChild(e),(e=this.createElement("shadowalpha")).setAttribute("alpha",mxConstants.SHADOW_OPACITY),this.root.appendChild(e),(e=this.createElement("shadowoffset")).setAttribute("dx",mxConstants.SHADOW_OFFSET_X),e.setAttribute("dy",mxConstants.SHADOW_OFFSET_Y),this.root.appendChild(e)},mxXmlCanvas2D.prototype.format=function(e){return parseFloat(parseFloat(e).toFixed(2))},mxXmlCanvas2D.prototype.createElement=function(e){return this.root.ownerDocument.createElement(e)},mxXmlCanvas2D.prototype.save=function(){this.compressed&&mxAbstractCanvas2D.prototype.save.apply(this,arguments),this.root.appendChild(this.createElement("save"))},mxXmlCanvas2D.prototype.restore=function(){this.compressed&&mxAbstractCanvas2D.prototype.restore.apply(this,arguments),this.root.appendChild(this.createElement("restore"))},mxXmlCanvas2D.prototype.scale=function(e){if(this.compressed){if(this.state.scale==e)return;mxAbstractCanvas2D.prototype.setAlpha.apply(this,arguments)}var t=this.createElement("scale");t.setAttribute("scale",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.translate=function(e,t){var n=this.createElement("translate");n.setAttribute("dx",this.format(e)),n.setAttribute("dy",this.format(t)),this.root.appendChild(n)},mxXmlCanvas2D.prototype.rotate=function(e,t,n,a,i){var o=this.createElement("rotate");(0!=e||t||n)&&(o.setAttribute("theta",this.format(e)),o.setAttribute("flipH",t?"1":"0"),o.setAttribute("flipV",n?"1":"0"),o.setAttribute("cx",this.format(a)),o.setAttribute("cy",this.format(i)),this.root.appendChild(o))},mxXmlCanvas2D.prototype.setAlpha=function(e){if(this.compressed){if(this.state.alpha==e)return;mxAbstractCanvas2D.prototype.setAlpha.apply(this,arguments)}var t=this.createElement("alpha");t.setAttribute("alpha",this.format(e)),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setFillColor=function(e){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.fillColor==e)return;mxAbstractCanvas2D.prototype.setFillColor.apply(this,arguments)}var t=this.createElement("fillcolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setGradient=function(e,t,n,a,i,o,s,r,l){if(null!=e&&null!=t){mxAbstractCanvas2D.prototype.setGradient.apply(this,arguments);var d=this.createElement("gradient");d.setAttribute("c1",e),d.setAttribute("c2",t),d.setAttribute("x",this.format(n)),d.setAttribute("y",this.format(a)),d.setAttribute("w",this.format(i)),d.setAttribute("h",this.format(o)),null!=s&&d.setAttribute("direction",s),null!=r&&d.setAttribute("alpha1",r),null!=l&&d.setAttribute("alpha2",l),this.root.appendChild(d)}},mxXmlCanvas2D.prototype.setStrokeColor=function(e){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.strokeColor==e)return;mxAbstractCanvas2D.prototype.setStrokeColor.apply(this,arguments)}var t=this.createElement("strokecolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setStrokeWidth=function(e){if(this.compressed){if(this.state.strokeWidth==e)return;mxAbstractCanvas2D.prototype.setStrokeWidth.apply(this,arguments)}var t=this.createElement("strokewidth");t.setAttribute("width",this.format(e)),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setDashed=function(e){if(this.compressed){if(this.state.dashed==e)return;mxAbstractCanvas2D.prototype.setDashed.apply(this,arguments)}var t=this.createElement("dashed");t.setAttribute("dashed",e?"1":"0"),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setDashPattern=function(e){if(this.compressed){if(this.state.dashPattern==e)return;mxAbstractCanvas2D.prototype.setDashPattern.apply(this,arguments)}var t=this.createElement("dashpattern");t.setAttribute("pattern",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setLineCap=function(e){if(this.compressed){if(this.state.lineCap==e)return;mxAbstractCanvas2D.prototype.setLineCap.apply(this,arguments)}var t=this.createElement("linecap");t.setAttribute("cap",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setLineJoin=function(e){if(this.compressed){if(this.state.lineJoin==e)return;mxAbstractCanvas2D.prototype.setLineJoin.apply(this,arguments)}var t=this.createElement("linejoin");t.setAttribute("join",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setMiterLimit=function(e){if(this.compressed){if(this.state.miterLimit==e)return;mxAbstractCanvas2D.prototype.setMiterLimit.apply(this,arguments)}var t=this.createElement("miterlimit");t.setAttribute("limit",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setFontColor=function(e){if(this.textEnabled){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.fontColor==e)return;mxAbstractCanvas2D.prototype.setFontColor.apply(this,arguments)}var t=this.createElement("fontcolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontBackgroundColor=function(e){if(this.textEnabled){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.fontBackgroundColor==e)return;mxAbstractCanvas2D.prototype.setFontBackgroundColor.apply(this,arguments)}var t=this.createElement("fontbackgroundcolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontBorderColor=function(e){if(this.textEnabled){if(e==mxConstants.NONE&&(e=null),this.compressed){if(this.state.fontBorderColor==e)return;mxAbstractCanvas2D.prototype.setFontBorderColor.apply(this,arguments)}var t=this.createElement("fontbordercolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontSize=function(e){if(this.textEnabled){if(this.compressed){if(this.state.fontSize==e)return;mxAbstractCanvas2D.prototype.setFontSize.apply(this,arguments)}var t=this.createElement("fontsize");t.setAttribute("size",e),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontFamily=function(e){if(this.textEnabled){if(this.compressed){if(this.state.fontFamily==e)return;mxAbstractCanvas2D.prototype.setFontFamily.apply(this,arguments)}var t=this.createElement("fontfamily");t.setAttribute("family",e),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setFontStyle=function(e){if(this.textEnabled){if(null==e&&(e=0),this.compressed){if(this.state.fontStyle==e)return;mxAbstractCanvas2D.prototype.setFontStyle.apply(this,arguments)}var t=this.createElement("fontstyle");t.setAttribute("style",e),this.root.appendChild(t)}},mxXmlCanvas2D.prototype.setShadow=function(e){if(this.compressed){if(this.state.shadow==e)return;mxAbstractCanvas2D.prototype.setShadow.apply(this,arguments)}var t=this.createElement("shadow");t.setAttribute("enabled",e?"1":"0"),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setShadowColor=function(e){if(this.compressed){if(e==mxConstants.NONE&&(e=null),this.state.shadowColor==e)return;mxAbstractCanvas2D.prototype.setShadowColor.apply(this,arguments)}var t=this.createElement("shadowcolor");t.setAttribute("color",null!=e?e:mxConstants.NONE),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setShadowAlpha=function(e){if(this.compressed){if(this.state.shadowAlpha==e)return;mxAbstractCanvas2D.prototype.setShadowAlpha.apply(this,arguments)}var t=this.createElement("shadowalpha");t.setAttribute("alpha",e),this.root.appendChild(t)},mxXmlCanvas2D.prototype.setShadowOffset=function(e,t){if(this.compressed){if(this.state.shadowDx==e&&this.state.shadowDy==t)return;mxAbstractCanvas2D.prototype.setShadowOffset.apply(this,arguments)}var n=this.createElement("shadowoffset");n.setAttribute("dx",e),n.setAttribute("dy",t),this.root.appendChild(n)},mxXmlCanvas2D.prototype.rect=function(e,t,n,a){var i=this.createElement("rect");i.setAttribute("x",this.format(e)),i.setAttribute("y",this.format(t)),i.setAttribute("w",this.format(n)),i.setAttribute("h",this.format(a)),this.root.appendChild(i)},mxXmlCanvas2D.prototype.roundrect=function(e,t,n,a,i,o){var s=this.createElement("roundrect");s.setAttribute("x",this.format(e)),s.setAttribute("y",this.format(t)),s.setAttribute("w",this.format(n)),s.setAttribute("h",this.format(a)),s.setAttribute("dx",this.format(i)),s.setAttribute("dy",this.format(o)),this.root.appendChild(s)},mxXmlCanvas2D.prototype.ellipse=function(e,t,n,a){var i=this.createElement("ellipse");i.setAttribute("x",this.format(e)),i.setAttribute("y",this.format(t)),i.setAttribute("w",this.format(n)),i.setAttribute("h",this.format(a)),this.root.appendChild(i)},mxXmlCanvas2D.prototype.image=function(e,t,n,a,i,o,s,r){i=this.converter.convert(i);var l=this.createElement("image");l.setAttribute("x",this.format(e)),l.setAttribute("y",this.format(t)),l.setAttribute("w",this.format(n)),l.setAttribute("h",this.format(a)),l.setAttribute("src",i),l.setAttribute("aspect",o?"1":"0"),l.setAttribute("flipH",s?"1":"0"),l.setAttribute("flipV",r?"1":"0"),this.root.appendChild(l)},mxXmlCanvas2D.prototype.begin=function(){this.root.appendChild(this.createElement("begin")),this.lastY=this.lastX=0},mxXmlCanvas2D.prototype.moveTo=function(e,t){var n=this.createElement("move");n.setAttribute("x",this.format(e)),n.setAttribute("y",this.format(t)),this.root.appendChild(n),this.lastX=e,this.lastY=t},mxXmlCanvas2D.prototype.lineTo=function(e,t){var n=this.createElement("line");n.setAttribute("x",this.format(e)),n.setAttribute("y",this.format(t)),this.root.appendChild(n),this.lastX=e,this.lastY=t},mxXmlCanvas2D.prototype.quadTo=function(e,t,n,a){var i=this.createElement("quad");i.setAttribute("x1",this.format(e)),i.setAttribute("y1",this.format(t)),i.setAttribute("x2",this.format(n)),i.setAttribute("y2",this.format(a)),this.root.appendChild(i),this.lastX=n,this.lastY=a},mxXmlCanvas2D.prototype.curveTo=function(e,t,n,a,i,o){var s=this.createElement("curve");s.setAttribute("x1",this.format(e)),s.setAttribute("y1",this.format(t)),s.setAttribute("x2",this.format(n)),s.setAttribute("y2",this.format(a)),s.setAttribute("x3",this.format(i)),s.setAttribute("y3",this.format(o)),this.root.appendChild(s),this.lastX=i,this.lastY=o},mxXmlCanvas2D.prototype.close=function(){this.root.appendChild(this.createElement("close"))},mxXmlCanvas2D.prototype.text=function(e,t,n,a,i,o,s,r,l,d,c,m){if(this.textEnabled&&null!=i){mxUtils.isNode(i)&&(i=mxUtils.getOuterHtml(i));var u=this.createElement("text");u.setAttribute("x",this.format(e)),u.setAttribute("y",this.format(t)),u.setAttribute("w",this.format(n)),u.setAttribute("h",this.format(a)),u.setAttribute("str",i),null!=o&&u.setAttribute("align",o),null!=s&&u.setAttribute("valign",s),u.setAttribute("wrap",r?"1":"0"),null==l&&(l=""),u.setAttribute("format",l),null!=d&&u.setAttribute("fill",d?"1":"0"),null!=c&&u.setAttribute("clip",c?"1":"0"),null!=m&&u.setAttribute("rotation",m),this.root.appendChild(u)}},mxXmlCanvas2D.prototype.stroke=function(){this.root.appendChild(this.createElement("stroke"))},mxXmlCanvas2D.prototype.fill=function(){this.root.appendChild(this.createElement("fill"))},mxXmlCanvas2D.prototype.fillAndStroke=function(){this.root.appendChild(this.createElement("fillstroke"))},mxUtils.extend(mxSvgCanvas2D,mxAbstractCanvas2D),mxSvgCanvas2D.prototype.node=null,mxSvgCanvas2D.prototype.matchHtmlAlignment=!0,mxSvgCanvas2D.prototype.textEnabled=!0,mxSvgCanvas2D.prototype.foEnabled=!0,mxSvgCanvas2D.prototype.strokeTolerance=0,mxSvgCanvas2D.prototype.refCount=0,mxSvgCanvas2D.prototype.blockImagePointerEvents=!1,mxSvgCanvas2D.prototype.reset=function(){mxAbstractCanvas2D.prototype.reset.apply(this,arguments),this.gradients=[]},mxSvgCanvas2D.prototype.createStyle=function(e){return(e=this.createElement("style")).setAttribute("type","text/css"),mxUtils.write(e,"svg{font-family:"+mxConstants.DEFAULT_FONTFAMILY+";font-size:"+mxConstants.DEFAULT_FONTSIZE+";fill:none;stroke-miterlimit:10}"),e},mxSvgCanvas2D.prototype.createElement=function(e,t){if(null!=this.root.ownerDocument.createElementNS)return this.root.ownerDocument.createElementNS(t||mxConstants.NS_SVG,e);var n=this.root.ownerDocument.createElement(e);return null!=t&&n.setAttribute("xmlns",t),n},mxSvgCanvas2D.prototype.createGradientId=function(e,t,n,a,i){return"#"==e.charAt(0)&&(e=e.substring(1)),"#"==t.charAt(0)&&(t=t.substring(1)),e=e.toLowerCase()+"-"+n,t=t.toLowerCase()+"-"+a,n=null,null==i||i==mxConstants.DIRECTION_SOUTH?n="s":i==mxConstants.DIRECTION_EAST?n="e":(a=e,e=t,t=a,i==mxConstants.DIRECTION_NORTH?n="s":i==mxConstants.DIRECTION_WEST&&(n="e")),"mx-gradient-"+e+"-"+t+"-"+n},mxSvgCanvas2D.prototype.getSvgGradient=function(e,t,n,a,i){var o=this.createGradientId(e,t,n,a,i),s=this.gradients[o];if(null==s){var r=this.root.ownerSVGElement,l=0,d=o+"-"+l;if(null!=r)for(s=r.ownerDocument.getElementById(d);null!=s&&s.ownerSVGElement!=r;)d=o+"-"+l++,s=r.ownerDocument.getElementById(d);else d="id"+ ++this.refCount;null==s&&((s=this.createSvgGradient(e,t,n,a,i)).setAttribute("id",d),null!=this.defs?this.defs.appendChild(s):r.appendChild(s)),this.gradients[o]=s}return s.getAttribute("id")},mxSvgCanvas2D.prototype.createSvgGradient=function(e,t,n,a,i){var o=this.createElement("linearGradient");return o.setAttribute("x1","0%"),o.setAttribute("y1","0%"),o.setAttribute("x2","0%"),o.setAttribute("y2","0%"),null==i||i==mxConstants.DIRECTION_SOUTH?o.setAttribute("y2","100%"):i==mxConstants.DIRECTION_EAST?o.setAttribute("x2","100%"):i==mxConstants.DIRECTION_NORTH?o.setAttribute("y1","100%"):i==mxConstants.DIRECTION_WEST&&o.setAttribute("x1","100%"),n=1>n?";stop-opacity:"+n:"",(i=this.createElement("stop")).setAttribute("offset","0%"),i.setAttribute("style","stop-color:"+e+n),o.appendChild(i),n=1>a?";stop-opacity:"+a:"",(i=this.createElement("stop")).setAttribute("offset","100%"),i.setAttribute("style","stop-color:"+t+n),o.appendChild(i),o},mxSvgCanvas2D.prototype.addNode=function(e,t){var n=this.node,a=this.state;if(null!=n){if("path"==n.nodeName){if(!(null!=this.path&&0<this.path.length))return;n.setAttribute("d",this.path.join(" "))}e&&null!=a.fillColor?this.updateFill():this.styleEnabled||("ellipse"!=n.nodeName||!mxClient.IS_NS||mxClient.IS_GC||mxClient.IS_SF?n.setAttribute("fill","none"):n.setAttribute("fill","transparent"),e=!1),t&&null!=a.strokeColor?this.updateStroke():this.styleEnabled||n.setAttribute("stroke","none"),null!=a.transform&&0<a.transform.length&&n.setAttribute("transform",a.transform),a.shadow&&this.root.appendChild(this.createShadow(n)),0<this.strokeTolerance&&!e&&this.root.appendChild(this.createTolerance(n)),this.pointerEvents&&("path"!=n.nodeName||this.path[this.path.length-1]==this.closeOp)&&n.setAttribute("pointer-events","all"),this.root.appendChild(n)}},mxSvgCanvas2D.prototype.updateFill=function(){var e=this.state;1>e.alpha&&this.node.setAttribute("fill-opacity",e.alpha),null!=e.fillColor&&(null!=e.gradientColor?(e=this.getSvgGradient(e.fillColor,e.gradientColor,e.fillAlpha,e.gradientAlpha,e.gradientDirection),this.node.setAttribute("fill","url(#"+e+")")):this.node.setAttribute("fill",e.fillColor.toLowerCase()))},mxSvgCanvas2D.prototype.updateStroke=function(){var e=this.state;this.node.setAttribute("stroke",e.strokeColor.toLowerCase()),1>e.alpha&&this.node.setAttribute("stroke-opacity",e.alpha);var t=Math.max(1,this.format(e.strokeWidth*e.scale));1!=t&&this.node.setAttribute("stroke-width",t),"path"==this.node.nodeName&&this.updateStrokeAttributes(),e.dashed&&this.node.setAttribute("stroke-dasharray",this.createDashPattern(t))},mxSvgCanvas2D.prototype.updateStrokeAttributes=function(){var e=this.state;if(null!=e.lineJoin&&"miter"!=e.lineJoin&&this.node.setAttribute("stroke-linejoin",e.lineJoin),null!=e.lineCap){var t=e.lineCap;"flat"==t&&(t="butt"),"butt"!=t&&this.node.setAttribute("stroke-linecap",t)}null!=e.miterLimit&&(!this.styleEnabled||10!=e.miterLimit)&&this.node.setAttribute("stroke-miterlimit",e.miterLimit)},mxSvgCanvas2D.prototype.createDashPattern=function(e){var t=this.state.dashPattern.split(" "),n=[];if(0<t.length)for(var a=0;a<t.length;a++)n[a]=Number(t[a])*e;return n.join(" ")},mxSvgCanvas2D.prototype.createTolerance=function(e){e=e.cloneNode(!0);var t=parseFloat(e.getAttribute("stroke-width")||1)+this.strokeTolerance;return e.setAttribute("pointer-events","stroke"),e.setAttribute("visibility","hidden"),e.removeAttribute("stroke-dasharray"),e.setAttribute("stroke-width",t),e.setAttribute("fill","none"),e.setAttribute("stroke",mxClient.IS_OP?"none":"white"),e},mxSvgCanvas2D.prototype.createShadow=function(e){e=e.cloneNode(!0);var t=this.state;return"none"!=e.getAttribute("fill")&&e.setAttribute("fill",t.shadowColor),"none"!=e.getAttribute("stroke")&&e.setAttribute("stroke",t.shadowColor),e.setAttribute("transform","translate("+this.format(t.shadowDx*t.scale)+","+this.format(t.shadowDy*t.scale)+")"+(t.transform||"")),e.setAttribute("opacity",t.shadowAlpha),e},mxSvgCanvas2D.prototype.rotate=function(e,t,n,a,i){if(0!=e||t||n){var o=this.state;if(a+=o.dx,i+=o.dy,a*=o.scale,i*=o.scale,o.transform=o.transform||"",t&&n)e+=180;else if(t^n){var s=t?a:0,r=t?-1:1,l=n?i:0,d=n?-1:1;o.transform+="translate("+this.format(s)+","+this.format(l)+")scale("+this.format(r)+","+this.format(d)+")translate("+this.format(-s)+","+this.format(-l)+")"}(t?!n:n)&&(e*=-1),0!=e&&(o.transform+="rotate("+this.format(e)+","+this.format(a)+","+this.format(i)+")"),o.rotation+=e,o.rotationCx=a,o.rotationCy=i}},mxSvgCanvas2D.prototype.begin=function(){mxAbstractCanvas2D.prototype.begin.apply(this,arguments),this.node=this.createElement("path")},mxSvgCanvas2D.prototype.rect=function(e,t,n,a){var i=this.state,o=this.createElement("rect");o.setAttribute("x",this.format((e+i.dx)*i.scale)),o.setAttribute("y",this.format((t+i.dy)*i.scale)),o.setAttribute("width",this.format(n*i.scale)),o.setAttribute("height",this.format(a*i.scale)),this.node=o},mxSvgCanvas2D.prototype.roundrect=function(e,t,n,a,i,o){this.rect(e,t,n,a),0<i&&this.node.setAttribute("rx",this.format(i*this.state.scale)),0<o&&this.node.setAttribute("ry",this.format(o*this.state.scale))},mxSvgCanvas2D.prototype.ellipse=function(e,t,n,a){var i=this.state,o=this.createElement("ellipse");o.setAttribute("cx",Math.round((e+n/2+i.dx)*i.scale)),o.setAttribute("cy",Math.round((t+a/2+i.dy)*i.scale)),o.setAttribute("rx",n/2*i.scale),o.setAttribute("ry",a/2*i.scale),this.node=o},mxSvgCanvas2D.prototype.image=function(e,t,n,a,i,o,s,r){i=this.converter.convert(i),o=null==o||o,s=null!=s&&s,r=null!=r&&r;var l=this.state;e+=l.dx,t+=l.dy;var d=this.createElement("image");if(d.setAttribute("x",this.format(e*l.scale)),d.setAttribute("y",this.format(t*l.scale)),d.setAttribute("width",this.format(n*l.scale)),d.setAttribute("height",this.format(a*l.scale)),null==d.setAttributeNS?d.setAttribute("xlink:href",i):d.setAttributeNS(mxConstants.NS_XLINK,"href",i),o||d.setAttribute("preserveAspectRatio","none"),1>l.alpha&&d.setAttribute("opacity",l.alpha),i=this.state.transform||"",s||r){var c=o=1,m=0,u=0;s&&(o=-1,m=-n-2*e),r&&(c=-1,u=-a-2*t),i+="scale("+o+","+c+")translate("+m+","+u+")"}0<i.length&&d.setAttribute("transform",i),this.root.appendChild(d),this.blockImagePointerEvents&&(d.setAttribute("style","pointer-events:none"),(d=this.createElement("rect")).setAttribute("visibility","hidden"),d.setAttribute("pointer-events","fill"),d.setAttribute("x",this.format(e*l.scale)),d.setAttribute("y",this.format(t*l.scale)),d.setAttribute("width",this.format(n*l.scale)),d.setAttribute("height",this.format(a*l.scale)),this.root.appendChild(d))},mxSvgCanvas2D.prototype.createDiv=function(e,t,n,a,i){return n=this.state,a="display:inline-block;font-size:"+Math.round(n.fontSize)+"px;font-family:"+n.fontFamily+";color:"+n.fontColor+";line-height:"+Math.round(n.fontSize*mxConstants.LINE_HEIGHT)+"px;"+a,(n.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&(a+="font-weight:bold;"),(n.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&(a+="font-style:italic;"),(n.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&(a+="font-decoration:underline;"),t==mxConstants.ALIGN_CENTER?a+="text-align:center;":t==mxConstants.ALIGN_RIGHT&&(a+="text-align:right;"),t="",null!=n.fontBackgroundColor&&(t+="background-color:"+n.fontBackgroundColor+";"),null!=n.fontBorderColor&&(t+="border:1px solid "+n.fontBorderColor+";"),mxUtils.isNode(e)||(n=document.createElement("textarea"),n.innerHTML=e.replace(/&lt;/g,"&amp;lt;").replace(/&gt;/g,"&amp;gt;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),e=n.value,i?a+=t:0<t.length&&(e='<div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;'+t+'">'+e+"</div>")),!mxClient.IS_IE&&document.createElementNS?((i=document.createElementNS("http://www.w3.org/1999/xhtml","div")).setAttribute("style",a),mxUtils.isNode(e)?this.root.ownerDocument!=document?i.appendChild(e.cloneNode(!0)):i.appendChild(e):i.innerHTML=e,i):(mxUtils.isNode(e)&&this.root.ownerDocument!=document&&(e=e.outerHTML),e=e.replace(/<br>/g,"<br />").replace(/<hr>/g,"<hr />"),mxUtils.parseXml('<div xmlns="http://www.w3.org/1999/xhtml" style="'+a+'">'+e+"</div>").documentElement)},mxSvgCanvas2D.prototype.text=function(e,t,n,a,i,o,s,r,l,d,c,m){if(this.textEnabled&&null!=i){m=null!=m?m:0;var u=this.state;if(e+=u.dx,t+=u.dy,this.foEnabled&&"html"==l){var p="vertical-align:top;";if(c?(p+="overflow:hidden;",0<a&&(p+="max-height:"+Math.round(a)+"px;"),0<n&&(p+="width:"+Math.round(n)+"px;")):d&&(p+="width:"+Math.round(n)+"px;",0<a&&(p+="max-height:"+Math.round(a)+"px;")),r?(!c&&0<n&&(p+="width:"+Math.round(n)+"px;"),p+="white-space:normal;"):p+="white-space:nowrap;",r=this.createElement("g"),1>u.alpha&&r.setAttribute("opacity",u.alpha),(l=this.createElement("foreignObject")).setAttribute("pointer-events","all"),null!=(p=this.createDiv(i,o,s,p,d))){r.appendChild(l),this.root.appendChild(r);var g=0;if(mxClient.IS_IE&&!mxClient.IS_SVG){var h=document.createElement("div");h.style.cssText=p.getAttribute("style"),h.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",h.style.visibility="hidden",h.innerHTML=mxUtils.isNode(i)?i.outerHTML:i,document.body.appendChild(h),g=h.offsetWidth,a=mxClient.IS_QUIRKS&&0<a&&c?Math.min(a,h.offsetHeight+2):h.offsetHeight,h.parentNode.removeChild(h),l.appendChild(p)}else this.root.ownerDocument!=document?(p.style.visibility="hidden",document.body.appendChild(p),g=p.offsetWidth,a=p.offsetHeight,l.appendChild(p),p.style.visibility=""):(l.appendChild(p),g=p.offsetWidth,a=p.offsetHeight);n=d?Math.max(n,g):g,1>u.alpha&&r.setAttribute("opacity",u.alpha),d=i=0,o==mxConstants.ALIGN_CENTER?i-=n/2:o==mxConstants.ALIGN_RIGHT&&(i-=n),e+=i,s==mxConstants.ALIGN_MIDDLE?d-=a/2:s==mxConstants.ALIGN_BOTTOM&&(d-=a),t+=d,o=1!=u.scale?"scale("+u.scale+")":"",0!=u.rotation&&this.rotateHtml?(o+="rotate("+u.rotation+","+n/2+","+a/2+")",t=this.rotatePoint((e+n/2)*u.scale,(t+a/2)*u.scale,u.rotation,u.rotationCx,u.rotationCy),e=t.x-n*u.scale/2,t=t.y-a*u.scale/2):(e*=u.scale,t*=u.scale),0!=m&&(o+="rotate("+m+","+-i+","+-d+")"),r.setAttribute("transform","translate("+Math.round(e)+","+Math.round(t)+")"+o),l.setAttribute("width",Math.round(Math.max(1,n))),l.setAttribute("height",Math.round(Math.max(1,a)))}}else this.plainText(e,t,n,a,i,o,s,r,d,c,m)}},mxSvgCanvas2D.prototype.createClip=function(e,t,n,a){for(var i="mx-clip-"+(e=Math.round(e))+"-"+(t=Math.round(t))+"-"+(n=Math.round(n))+"-"+(a=Math.round(a)),o=0,s=i+"-"+o;null!=document.getElementById(s);)s=i+"-"+ ++o;return clip=this.createElement("clipPath"),clip.setAttribute("id",s),(i=this.createElement("rect")).setAttribute("x",e),i.setAttribute("y",t),i.setAttribute("width",n),i.setAttribute("height",a),clip.appendChild(i),clip},mxSvgCanvas2D.prototype.plainText=function(e,t,n,a,i,o,s,r,l,d,c){c=null!=c?c:0,r=this.state;var m=Math.round(r.fontSize),u=this.createElement("g"),p=r.transform||"";if(0!=c&&(p+="rotate("+c+","+this.format(e*r.scale)+","+this.format(t*r.scale)+")"),d&&0<n&&0<a){g=e;c=t,o==mxConstants.ALIGN_CENTER?g-=n/2:o==mxConstants.ALIGN_RIGHT&&(g-=n),s==mxConstants.ALIGN_MIDDLE?c-=a/2:s==mxConstants.ALIGN_BOTTOM&&(c-=a),c=this.createClip(g*r.scale-2,c*r.scale-2,n*r.scale+4,a*r.scale+4),null!=this.defs?this.defs.appendChild(c):this.root.appendChild(c),u.setAttribute("clip-path","url(#"+c.getAttribute("id")+")")}this.updateFont(u,o),"start"!=(c=o==mxConstants.ALIGN_RIGHT?"end":o==mxConstants.ALIGN_CENTER?"middle":"start")&&u.setAttribute("text-anchor",c),(!this.styleEnabled||m!=mxConstants.DEFAULT_FONTSIZE)&&u.setAttribute("font-size",Math.round(m*r.scale)+"px"),0<p.length&&u.setAttribute("transform",p),1>r.alpha&&u.setAttribute("opacity",r.alpha);var p=i.split("\n"),g=Math.round(m*mxConstants.LINE_HEIGHT),h=m+(p.length-1)*g;for(c=t+m-1,s==mxConstants.ALIGN_MIDDLE?(a=(this.matchHtmlAlignment&&d&&0<a?Math.min(h,a):h)/2,c-=a+1):s==mxConstants.ALIGN_BOTTOM&&(a=this.matchHtmlAlignment&&d&&0<a?Math.min(h,a):h,c-=a+2),a=0;a<p.length;a++)0<p[a].length&&0<mxUtils.trim(p[a]).length&&((d=this.createElement("text")).setAttribute("x",this.format(e*r.scale)),d.setAttribute("y",this.format(c*r.scale)),mxUtils.write(d,p[a]),u.appendChild(d)),c+=g;this.root.appendChild(u),this.addTextBackground(u,i,e,t,n,h,o,s,l)},mxSvgCanvas2D.prototype.updateFont=function(e){var t=this.state;e.setAttribute("fill",t.fontColor),(!this.styleEnabled||t.fontFamily!=mxConstants.DEFAULT_FONTFAMILY)&&e.setAttribute("font-family",t.fontFamily),(t.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&e.setAttribute("font-weight","bold"),(t.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&e.setAttribute("font-style","italic"),(t.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&e.setAttribute("text-decoration","underline")},mxSvgCanvas2D.prototype.addTextBackground=function(e,t,n,a,i,o,s,r,l){var d=this.state;if(null!=d.fontBackgroundColor||null!=d.fontBorderColor){var c=null;l?(s==mxConstants.ALIGN_CENTER?n-=i/2:s==mxConstants.ALIGN_RIGHT&&(n-=i),r==mxConstants.ALIGN_MIDDLE?a-=o/2:r==mxConstants.ALIGN_BOTTOM&&(a-=o),c=new mxRectangle((n+1)*d.scale,a*d.scale,(i-2)*d.scale,(o+2)*d.scale)):null!=e.getBBox&&this.root.ownerDocument==document?(c=e.getBBox(),t=mxClient.IS_IE&&mxClient.IS_SVG,c=new mxRectangle(c.x,c.y+(t?0:1),c.width,c.height+(t?1:0))):(c=document.createElement("div"),c.style.lineHeight=Math.round(d.fontSize*mxConstants.LINE_HEIGHT)+"px",c.style.fontSize=Math.round(d.fontSize)+"px",c.style.fontFamily=d.fontFamily,c.style.whiteSpace="nowrap",c.style.position="absolute",c.style.visibility="hidden",c.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",c.style.zoom="1",(d.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&(c.style.fontWeight="bold"),(d.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&(c.style.fontStyle="italic"),t=mxUtils.htmlEntities(t,!1),c.innerHTML=t.replace(/\n/g,"<br/>"),document.body.appendChild(c),i=c.offsetWidth,o=c.offsetHeight,c.parentNode.removeChild(c),s==mxConstants.ALIGN_CENTER?n-=i/2:s==mxConstants.ALIGN_RIGHT&&(n-=i),r==mxConstants.ALIGN_MIDDLE?a-=o/2:r==mxConstants.ALIGN_BOTTOM&&(a-=o),c=new mxRectangle((n+1)*d.scale,(a+2)*d.scale,i*d.scale,(o+1)*d.scale)),null!=c&&((t=this.createElement("rect")).setAttribute("fill",d.fontBackgroundColor||"none"),t.setAttribute("stroke",d.fontBorderColor||"none"),t.setAttribute("x",Math.floor(c.x-1)),t.setAttribute("y",Math.floor(c.y-1)),t.setAttribute("width",Math.ceil(c.width+2)),t.setAttribute("height",Math.ceil(c.height)),d=null!=d.fontBorderColor?Math.max(1,this.format(d.scale)):0,t.setAttribute("stroke-width",d),this.root.ownerDocument==document&&1==mxUtils.mod(d,2)&&t.setAttribute("transform","translate(0.5, 0.5)"),e.insertBefore(t,e.firstChild))}},mxSvgCanvas2D.prototype.stroke=function(){this.addNode(!1,!0)},mxSvgCanvas2D.prototype.fill=function(){this.addNode(!0,!1)},mxSvgCanvas2D.prototype.fillAndStroke=function(){this.addNode(!0,!0)};var mxVmlCanvas2D=function(e){mxAbstractCanvas2D.call(this),this.root=e};mxUtils.extend(mxVmlCanvas2D,mxAbstractCanvas2D),mxVmlCanvas2D.prototype.node=null,mxVmlCanvas2D.prototype.textEnabled=!0,mxVmlCanvas2D.prototype.moveOp="m",mxVmlCanvas2D.prototype.lineOp="l",mxVmlCanvas2D.prototype.curveOp="c",mxVmlCanvas2D.prototype.closeOp="x",mxVmlCanvas2D.prototype.rotatedHtmlBackground="",mxVmlCanvas2D.prototype.vmlScale=1,mxVmlCanvas2D.prototype.addNode=function(e,t){var n=this.node,a=this.state;if(null!=n){if("shape"==n.nodeName){if(!(null!=this.path&&0<this.path.length))return;n.path=this.path.join(" ")+" e",n.style.width=this.root.style.width,n.style.height=this.root.style.height,n.coordsize=parseInt(n.style.width)+" "+parseInt(n.style.height)}n.strokeweight=this.format(Math.max(1,a.strokeWidth*a.scale/this.vmlScale))+"px",a.shadow&&this.root.appendChild(this.createShadow(n,e&&null!=a.fillColor,t&&null!=a.strokeColor)),t&&null!=a.strokeColor?(n.stroked="true",n.strokecolor=a.strokeColor):n.stroked="false",n.appendChild(this.createStroke()),e&&null!=a.fillColor?n.appendChild(this.createFill()):!this.pointerEvents||"shape"==n.nodeName&&this.path[this.path.length-1]!=this.closeOp?n.filled="false":n.appendChild(this.createTransparentFill()),this.root.appendChild(n)}},mxVmlCanvas2D.prototype.createTransparentFill=function(){var e=document.createElement(mxClient.VML_PREFIX+":fill");return e.src=mxClient.imageBasePath+"/transparent.gif",e.type="tile",e},mxVmlCanvas2D.prototype.createFill=function(){var e=this.state,t=document.createElement(mxClient.VML_PREFIX+":fill");if(t.color=e.fillColor,null!=e.gradientColor){t.type="gradient",t.method="none",t.color2=e.gradientColor;var n=180-e.rotation,n=e.gradientDirection==mxConstants.DIRECTION_WEST?n-(90+("x"==this.root.style.flip?180:0)):e.gradientDirection==mxConstants.DIRECTION_EAST?n+(90+("x"==this.root.style.flip?180:0)):e.gradientDirection==mxConstants.DIRECTION_NORTH?n-(180+("y"==this.root.style.flip?-180:0)):n+("y"==this.root.style.flip?-180:0);"x"!=this.root.style.flip&&"y"!=this.root.style.flip||(n*=-1),t.angle=mxUtils.mod(n,360),t.opacity=100*e.alpha*e.fillAlpha+"%",t.setAttribute(mxClient.OFFICE_PREFIX+":opacity2",100*e.alpha*e.gradientAlpha+"%")}else 1>e.alpha&&(t.opacity=100*e.alpha+"%");return t},mxVmlCanvas2D.prototype.createStroke=function(){var e=this.state,t=document.createElement(mxClient.VML_PREFIX+":stroke");return t.endcap=e.lineCap||"flat",t.joinstyle=e.lineJoin||"miter",t.miterlimit=e.miterLimit||"10",1>e.alpha&&(t.opacity=100*e.alpha+"%"),e.dashed&&(t.dashstyle=this.getVmlDashStyle()),t},mxVmlCanvas2D.prototype.getVmlDashStyle=function(){var e="dash";if(null!=this.state.dashPattern){var t=this.state.dashPattern.split(" ");0<t.length&&1==t[0]&&(e="0 2")}return e},mxVmlCanvas2D.prototype.createShadow=function(e,t,n){var a=this.state,i=-a.rotation*(Math.PI/180),o=Math.cos(i),i=Math.sin(i),s=a.shadowDx*a.scale,r=a.shadowDy*a.scale;"x"==this.root.style.flip?s*=-1:"y"==this.root.style.flip&&(r*=-1);var l=e.cloneNode(!0);return l.style.marginLeft=Math.round(s*o-r*i)+"px",l.style.marginTop=Math.round(s*i+r*o)+"px",8==document.documentMode&&(l.strokeweight=e.strokeweight,"shape"==e.nodeName&&(l.path=this.path.join(" ")+" e",l.style.width=this.root.style.width,l.style.height=this.root.style.height,l.coordsize=parseInt(e.style.width)+" "+parseInt(e.style.height))),n?(l.strokecolor=a.shadowColor,l.appendChild(this.createShadowStroke())):l.stroked="false",t?l.appendChild(this.createShadowFill()):l.filled="false",l},mxVmlCanvas2D.prototype.createShadowFill=function(){var e=document.createElement(mxClient.VML_PREFIX+":fill");return e.color=this.state.shadowColor,e.opacity=100*this.state.alpha*this.state.shadowAlpha+"%",e},mxVmlCanvas2D.prototype.createShadowStroke=function(){var e=this.createStroke();return e.opacity=100*this.state.alpha*this.state.shadowAlpha+"%",e},mxVmlCanvas2D.prototype.rotate=function(e,t,n,a,i){t&&n?e+=180:t?this.root.style.flip="x":n&&(this.root.style.flip="y"),(t?!n:n)&&(e*=-1),this.root.style.rotation=e,this.state.rotation+=e,this.state.rotationCx=a,this.state.rotationCy=i},mxVmlCanvas2D.prototype.begin=function(){mxAbstractCanvas2D.prototype.begin.apply(this,arguments),this.node=document.createElement(mxClient.VML_PREFIX+":shape"),this.node.style.position="absolute"},mxVmlCanvas2D.prototype.quadTo=function(e,t,n,a){var i=this.state,o=(this.lastX+i.dx)*i.scale,s=(this.lastY+i.dy)*i.scale;e=(e+i.dx)*i.scale;var s=s+2/3*((t=(t+i.dy)*i.scale)-s),r=(n=(n+i.dx)*i.scale)+2/3*(e-n);t=(a=(a+i.dy)*i.scale)+2/3*(t-a),this.path.push("c "+this.format(o+2/3*(e-o))+" "+this.format(s)+" "+this.format(r)+" "+this.format(t)+" "+this.format(n)+" "+this.format(a)),this.lastX=n/i.scale-i.dx,this.lastY=a/i.scale-i.dy},mxVmlCanvas2D.prototype.createRect=function(e,t,n,a,i){var o=this.state;return e=document.createElement(e),e.style.position="absolute",e.style.left=this.format((t+o.dx)*o.scale)+"px",e.style.top=this.format((n+o.dy)*o.scale)+"px",e.style.width=this.format(a*o.scale)+"px",e.style.height=this.format(i*o.scale)+"px",e},mxVmlCanvas2D.prototype.rect=function(e,t,n,a){this.node=this.createRect(mxClient.VML_PREFIX+":rect",e,t,n,a)},mxVmlCanvas2D.prototype.roundrect=function(e,t,n,a,i,o){this.node=this.createRect(mxClient.VML_PREFIX+":roundrect",e,t,n,a),this.node.setAttribute("arcsize",Math.max(100*i/n,100*o/a)+"%")},mxVmlCanvas2D.prototype.ellipse=function(e,t,n,a){this.node=this.createRect(mxClient.VML_PREFIX+":oval",e,t,n,a)},mxVmlCanvas2D.prototype.image=function(e,t,n,a,i,o,s,r){var l=null;o?(l=this.createRect(mxClient.VML_PREFIX+":rect",e,t,n,a),l.stroked="false",e=document.createElement(mxClient.VML_PREFIX+":fill"),e.aspect=o?"atmost":"ignore",e.rotate="true",e.type="frame",e.src=i,l.appendChild(e)):(l=this.createRect(mxClient.VML_PREFIX+":image",e,t,n,a),l.src=i),s&&r?l.style.rotation="180":s?l.style.flip="x":r&&(l.style.flip="y"),1>this.state.alpha&&(l.style.filter+="alpha(opacity="+100*this.state.alpha+")"),this.root.appendChild(l)},mxVmlCanvas2D.prototype.createDiv=function(e,t,n,a){n=document.createElement("div");var i=this.state,o="";return null!=i.fontBackgroundColor&&(o+="background-color:"+i.fontBackgroundColor+";"),null!=i.fontBorderColor&&(o+="border:1px solid "+i.fontBorderColor+";"),mxUtils.isNode(e)?n.appendChild(e):0<o.length&&!a?(a=document.createElement("div"),a.style.cssText=o,a.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",a.style.zoom="1",a.innerHTML=e,n.appendChild(a)):(n.style.cssText=o,n.innerHTML=e),e=n.style,e.fontSize=Math.round(i.fontSize/this.vmlScale)+"px",e.fontFamily=i.fontFamily,e.color=i.fontColor,e.verticalAlign="top",e.textAlign=t||"left",e.lineHeight=Math.round(i.fontSize*mxConstants.LINE_HEIGHT/this.vmlScale)+"px",(i.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&(e.fontWeight="bold"),(i.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&(e.fontStyle="italic"),(i.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&(e.fontDecoration="underline"),n},mxVmlCanvas2D.prototype.text=function(e,t,n,a,i,o,s,r,l,d,c,m){if(this.textEnabled&&null!=i){var u=this.state;if("html"==l){null!=u.rotation&&(t=this.rotatePoint(e,t,u.rotation,u.rotationCx,u.rotationCy),e=t.x,t=t.y),8==document.documentMode?(e+=u.dx,t+=u.dy):(e*=u.scale,t*=u.scale),(l=8==document.documentMode?document.createElement(mxClient.VML_PREFIX+":group"):document.createElement("div")).style.position="absolute",l.style.display="inline",l.style.left=this.format(e)+"px",l.style.top=this.format(t)+"px",l.style.zoom=u.scale;var p=document.createElement("div");p.style.position="relative",p.style.display="inline";var g=(h=mxUtils.getAlignmentAsPoint(o,s)).x,h=h.y;if(i=this.createDiv(i,o,s,d),o=document.createElement("div"),r?(!c&&0<n&&(i.style.width=Math.round(n)+"px"),i.style.whiteSpace="normal"):i.style.whiteSpace="nowrap",r=u.rotation+(m||0),this.rotateHtml&&0!=r?(o.style.display="inline",o.style.zoom="1",o.appendChild(i),8==document.documentMode&&"DIV"!=this.root.nodeName?(p.appendChild(o),l.appendChild(p)):l.appendChild(o)):8==document.documentMode?(p.appendChild(i),l.appendChild(p)):(i.style.display="inline",l.appendChild(i)),"DIV"!=this.root.nodeName?(m=document.createElement(mxClient.VML_PREFIX+":rect"),m.stroked="false",m.filled="false",m.appendChild(l),this.root.appendChild(m)):this.root.appendChild(l),c?(i.style.overflow="hidden",0<n&&(i.style.width=Math.round(n)+"px"),0<a&&8==document.documentMode&&(i.style.maxHeight=Math.round(a)+"px")):d&&(i.style.width=n+"px",0<a&&(i.style.maxHeight=Math.round(a)+"px")),this.rotateHtml&&0!=r){n=r*(Math.PI/180),r=parseFloat(parseFloat(Math.cos(n)).toFixed(8)),m=parseFloat(parseFloat(Math.sin(-n)).toFixed(8)),0>(n%=2*Math.PI)&&(n+=2*Math.PI),(n%=Math.PI)>Math.PI/2&&(n=Math.PI-n),s=Math.cos(n);var v=Math.sin(n);8==document.documentMode&&(i.style.display="inline-block",o.style.display="inline-block",p.style.display="inline-block"),i.style.visibility="hidden",document.body.appendChild(i),n=i.offsetWidth,p=i.offsetHeight,mxClient.IS_QUIRKS&&(c||d)&&p>a&&(p=a,i.style.height=p+"px"),c=((a=p)-a*s+n*-v)/2-m*n*(g+.5)+r*a*(h+.5),d=(n-n*s+a*-v)/2+r*n*(g+.5)+m*a*(h+.5),"group"==l.nodeName&&"DIV"==this.root.nodeName?(g=document.createElement("div"),g.style.display="inline-block",g.style.position="absolute",g.style.left=this.format(e+(d-n/2)*u.scale)+"px",g.style.top=this.format(t+(c-a/2)*u.scale)+"px",l.parentNode.appendChild(g),g.appendChild(l)):(u=8==document.documentMode?1:u.scale,l.style.left=this.format(e+(d-n/2)*u)+"px",l.style.top=this.format(t+(c-a/2)*u)+"px"),o.style.filter="progid:DXImageTransform.Microsoft.Matrix(M11="+r+", M12="+m+", M21="+-m+", M22="+r+", sizingMethod='auto expand')",o.style.backgroundColor=this.rotatedHtmlBackground,1>this.state.alpha&&(o.style.filter+="alpha(opacity="+100*this.state.alpha+")"),i.style.visibility="",o.appendChild(i)}else 8!=document.documentMode?(i.style.verticalAlign="top",1>this.state.alpha&&(l.style.filter="alpha(opacity="+100*this.state.alpha+")"),u=i.parentNode,i.style.visibility="hidden",document.body.appendChild(i),n=i.offsetWidth,p=i.offsetHeight,mxClient.IS_QUIRKS&&c&&p>a&&(p=a,i.style.height=p+"px"),a=p,i.style.visibility="",u.appendChild(i),l.style.left=this.format(e+n*g*this.state.scale)+"px",l.style.top=this.format(t+a*h*this.state.scale)+"px"):(1>this.state.alpha&&(i.style.filter="alpha(opacity="+100*this.state.alpha+")"),p.style.left=100*g+"%",p.style.top=100*h+"%")}else this.plainText(e,t,n,a,mxUtils.htmlEntities(i,!1),o,s,r,l,d,c,m)}},mxVmlCanvas2D.prototype.plainText=function(e,t,n,a,i,o,s,r,l,d,c,m){e=(e+(a=this.state).dx)*a.scale,t=(t+a.dy)*a.scale,(n=document.createElement(mxClient.VML_PREFIX+":shape")).style.width="1px",n.style.height="1px",n.stroked="false",(d=document.createElement(mxClient.VML_PREFIX+":fill")).color=a.fontColor,d.opacity=100*a.alpha+"%",n.appendChild(d),(d=document.createElement(mxClient.VML_PREFIX+":path")).textpathok="true",d.v="m "+this.format(0)+" "+this.format(0)+" l "+this.format(1)+" "+this.format(0),n.appendChild(d),(d=document.createElement(mxClient.VML_PREFIX+":textpath")).style.cssText="v-text-align:"+o,d.style.align=o,d.style.fontFamily=a.fontFamily,d.string=i,d.on="true",o=Math.round(a.fontSize*a.scale/this.vmlScale),d.style.fontSize=o+"px",(a.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD&&(d.style.fontWeight="bold"),(a.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC&&(d.style.fontStyle="italic"),(a.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&(d.style.textDecoration="underline"),a=o+((i=i.split("\n")).length-1)*o*mxConstants.LINE_HEIGHT,o=i=0,s==mxConstants.ALIGN_BOTTOM?o=-a/2:s!=mxConstants.ALIGN_MIDDLE&&(o=a/2),null!=m&&(n.style.rotation=m,s=m*(Math.PI/180),i=Math.sin(s)*o,o*=Math.cos(s)),n.appendChild(d),n.style.left=this.format(e-i)+"px",n.style.top=this.format(t+o)+"px",this.root.appendChild(n)},mxVmlCanvas2D.prototype.stroke=function(){this.addNode(!1,!0)},mxVmlCanvas2D.prototype.fill=function(){this.addNode(!0,!1)},mxVmlCanvas2D.prototype.fillAndStroke=function(){this.addNode(!0,!0)},mxGuide.prototype.graph=null,mxGuide.prototype.states=null,mxGuide.prototype.horizontal=!0,mxGuide.prototype.vertical=!0,mxGuide.prototype.guideX=null,mxGuide.prototype.guideY=null,mxGuide.prototype.setStates=function(e){this.states=e},mxGuide.prototype.isEnabledForEvent=function(e){return!0},mxGuide.prototype.getGuideTolerance=function(){return this.graph.gridSize*this.graph.view.scale/2},mxGuide.prototype.createGuideShape=function(e){return e=new mxPolyline([],mxConstants.GUIDE_COLOR,mxConstants.GUIDE_STROKEWIDTH),e.isDashed=!0,e},mxGuide.prototype.move=function(e,t,n){if(null!=this.states&&(this.horizontal||this.vertical)&&null!=e&&null!=t){var a=this.graph.getView().translate,i=this.graph.getView().scale,o=t.x,s=t.y,r=!1,l=!1,d=b=this.getGuideTolerance(),c=b;(b=e.clone()).x+=t.x,b.y+=t.y;var m=b.x,u=b.x+b.width,p=b.getCenterX(),g=b.y,h=b.y+b.height,v=b.getCenterY();t=function(t){t+=this.graph.panDx;var n=!1;if(Math.abs(t-p)<d?(o=t-e.getCenterX(),d=Math.abs(t-p),n=!0):Math.abs(t-m)<d?(o=t-e.x,d=Math.abs(t-m),n=!0):Math.abs(t-u)<d&&(o=t-e.x-e.width,d=Math.abs(t-u),n=!0),n){null==this.guideX&&(this.guideX=this.createGuideShape(!0),this.guideX.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.guideX.pointerEvents=!1,this.guideX.init(this.graph.getView().getOverlayPane()));var a=this.graph.container;t-=this.graph.panDx,this.guideX.points=[new mxPoint(t,-this.graph.panDy),new mxPoint(t,a.scrollHeight-3-this.graph.panDy)]}r=r||n};for(var b=function(t){t+=this.graph.panDy;var n=!1;if(Math.abs(t-v)<c?(s=t-e.getCenterY(),c=Math.abs(t-v),n=!0):Math.abs(t-g)<c?(s=t-e.y,c=Math.abs(t-g),n=!0):Math.abs(t-h)<c&&(s=t-e.y-e.height,c=Math.abs(t-h),n=!0),n){null==this.guideY&&(this.guideY=this.createGuideShape(!1),this.guideY.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.guideY.pointerEvents=!1,this.guideY.init(this.graph.getView().getOverlayPane()));var a=this.graph.container;t-=this.graph.panDy,this.guideY.points=[new mxPoint(-this.graph.panDx,t),new mxPoint(a.scrollWidth-3-this.graph.panDx,t)]}l=l||n},f=0;f<this.states.length;f++){var E=this.states[f];null!=E&&(this.horizontal&&(t.call(this,E.getCenterX()),t.call(this,E.x),t.call(this,E.x+E.width)),this.vertical&&(b.call(this,E.getCenterY()),b.call(this,E.y),b.call(this,E.y+E.height)))}r||null==this.guideX?null!=this.guideX&&(this.guideX.node.style.visibility="visible",this.guideX.redraw()):this.guideX.node.style.visibility="hidden",l||null==this.guideY?null!=this.guideY&&(this.guideY.node.style.visibility="visible",this.guideY.redraw()):this.guideY.node.style.visibility="hidden",n&&(r||(n=e.x-(this.graph.snap(e.x/i-a.x)+a.x)*i,o=this.graph.snap(o/i)*i-n),l||(a=e.y-(this.graph.snap(e.y/i-a.y)+a.y)*i,s=this.graph.snap(s/i)*i-a)),t=new mxPoint(o,s)}return t},mxGuide.prototype.hide=function(){null!=this.guideX&&(this.guideX.node.style.visibility="hidden"),null!=this.guideY&&(this.guideY.node.style.visibility="hidden")},mxGuide.prototype.destroy=function(){null!=this.guideX&&(this.guideX.destroy(),this.guideX=null),null!=this.guideY&&(this.guideY.destroy(),this.guideY=null)},mxStencil.defaultLocalized=!1,mxStencil.prototype.desc=null,mxStencil.prototype.constraints=null,mxStencil.prototype.aspect=null,mxStencil.prototype.w0=null,mxStencil.prototype.h0=null,mxStencil.prototype.bgNode=null,mxStencil.prototype.fgNode=null,mxStencil.prototype.strokewidth=null,mxStencil.prototype.parseDescription=function(){this.fgNode=this.desc.getElementsByTagName("foreground")[0],this.bgNode=this.desc.getElementsByTagName("background")[0],this.w0=Number(this.desc.getAttribute("w")||100),this.h0=Number(this.desc.getAttribute("h")||100);var e=this.desc.getAttribute("aspect");this.aspect=null!=e?e:"variable",e=this.desc.getAttribute("strokewidth"),this.strokewidth=null!=e?e:"1"},mxStencil.prototype.parseConstraints=function(){var e=this.desc.getElementsByTagName("connections")[0];if(null!=e&&null!=(e=mxUtils.getChildNodes(e))&&0<e.length){this.constraints=[];for(var t=0;t<e.length;t++)this.constraints.push(this.parseConstraint(e[t]))}},mxStencil.prototype.parseConstraint=function(e){var t=Number(e.getAttribute("x")),n=Number(e.getAttribute("y"));return e="1"==e.getAttribute("perimeter"),new mxConnectionConstraint(new mxPoint(t,n),e)},mxStencil.prototype.evaluateTextAttribute=function(e,t,n){return t=this.evaluateAttribute(e,t,n),e=e.getAttribute("localized"),(mxStencil.defaultLocalized&&null==e||"1"==e)&&(t=mxResources.get(t)),t},mxStencil.prototype.evaluateAttribute=function(e,t,n){return null==(t=e.getAttribute(t))&&null!=(e=mxUtils.getTextContent(e))&&"function"==typeof(e=mxUtils.eval(e))&&(t=e(n)),t},mxStencil.prototype.drawShape=function(e,t,n,a,i,o){this.drawChildren(e,t,n,a,i,o,this.bgNode,!1),this.drawChildren(e,t,n,a,i,o,this.fgNode,!0)},mxStencil.prototype.drawChildren=function(e,t,n,a,i,o,s,r){if(null!=s){var l=mxUtils.getValue(t.style,mxConstants.STYLE_DIRECTION,null);for(n=this.computeAspect(t.style,n,a,i,o,l),a=Math.min(n.width,n.height),a="inherit"==this.strokewidth?Number(mxUtils.getNumber(t.style,mxConstants.STYLE_STROKEWIDTH,1)):Number(this.strokewidth)*a,e.setStrokeWidth(a),s=s.firstChild;null!=s;)s.nodeType==mxConstants.NODETYPE_ELEMENT&&this.drawNode(e,t,s,n,r),s=s.nextSibling}},mxStencil.prototype.computeAspect=function(e,t,n,a,i,o){e=t,t=a/this.w0;var s=i/this.h0;if(o="north"==o||"south"==o){s=a/this.h0,t=i/this.w0;var r=(a-i)/2;e+=r,n-=r}return"fixed"==this.aspect&&(t=s=Math.min(t,s),o?(e+=(i-this.w0*t)/2,n+=(a-this.h0*s)/2):(e+=(a-this.w0*t)/2,n+=(i-this.h0*s)/2)),new mxRectangle(e,n,t,s)},mxStencil.prototype.drawNode=function(e,t,n,a,i){var o=n.nodeName,s=a.x,r=a.y,l=a.width,d=a.height,c=Math.min(l,d);if("save"==o)e.save();else if("restore"==o)e.restore();else if("path"==o)for(e.begin(),n=n.firstChild;null!=n;)n.nodeType==mxConstants.NODETYPE_ELEMENT&&this.drawNode(e,t,n,a,i),n=n.nextSibling;else if("close"==o)e.close();else if("move"==o)e.moveTo(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d);else if("line"==o)e.lineTo(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d);else if("quad"==o)e.quadTo(s+Number(n.getAttribute("x1"))*l,r+Number(n.getAttribute("y1"))*d,s+Number(n.getAttribute("x2"))*l,r+Number(n.getAttribute("y2"))*d);else if("curve"==o)e.curveTo(s+Number(n.getAttribute("x1"))*l,r+Number(n.getAttribute("y1"))*d,s+Number(n.getAttribute("x2"))*l,r+Number(n.getAttribute("y2"))*d,s+Number(n.getAttribute("x3"))*l,r+Number(n.getAttribute("y3"))*d);else if("arc"==o)e.arcTo(Number(n.getAttribute("rx"))*l,Number(n.getAttribute("ry"))*d,Number(n.getAttribute("x-axis-rotation")),Number(n.getAttribute("large-arc-flag")),Number(n.getAttribute("sweep-flag")),s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d);else if("rect"==o)e.rect(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,Number(n.getAttribute("w"))*l,Number(n.getAttribute("h"))*d);else if("roundrect"==o)0==(t=n.getAttribute("arcsize"))&&(t=100*mxConstants.RECTANGLE_ROUNDING_FACTOR),c=Number(n.getAttribute("w"))*l,a=Number(n.getAttribute("h"))*d,t=Number(t)/100,t=Math.min(c*t,a*t),e.roundrect(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,c,a,t,t);else if("ellipse"==o)e.ellipse(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,Number(n.getAttribute("w"))*l,Number(n.getAttribute("h"))*d);else if("image"==o)t=this.evaluateAttribute(n,"src",t),e.image(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,Number(n.getAttribute("w"))*l,Number(n.getAttribute("h"))*d,t,!1,"1"==n.getAttribute("flipH"),"1"==n.getAttribute("flipV"));else if("text"==o){if(c=this.evaluateTextAttribute(n,"str",t),a="1"==n.getAttribute("vertical")?-90:0,"0"==n.getAttribute("align-shape")){var m=t.rotation,u=1==mxUtils.getValue(t.style,mxConstants.STYLE_FLIPH,0);t=1==mxUtils.getValue(t.style,mxConstants.STYLE_FLIPV,0),a=u&&t?a-m:u||t?a+m:a-m}a-=n.getAttribute("rotation"),e.text(s+Number(n.getAttribute("x"))*l,r+Number(n.getAttribute("y"))*d,0,0,c,n.getAttribute("align")||"left",n.getAttribute("valign")||"top",!1,"",!1,!1,a)}else if("include-shape"==o)null!=(m=mxStencilRegistry.getStencil(n.getAttribute("name")))&&(s+=Number(n.getAttribute("x"))*l,r+=Number(n.getAttribute("y"))*d,c=Number(n.getAttribute("w"))*l,a=Number(n.getAttribute("h"))*d,m.drawShape(e,t,s,r,c,a));else if("fillstroke"==o)e.fillAndStroke();else if("fill"==o)e.fill();else if("stroke"==o)e.stroke();else if("strokewidth"==o)e.setStrokeWidth(Number(n.getAttribute("width"))*c);else if("dashed"==o)e.setDashed("1"==n.getAttribute("dashed"));else if("dashpattern"==o){if(null!=(n=n.getAttribute("pattern"))){for(n=n.split(" "),l=[],d=0;d<n.length;d++)0<n[d].length&&l.push(Number(n[d])*c);n=l.join(" "),e.setDashPattern(n)}}else"strokecolor"==o?e.setStrokeColor(n.getAttribute("color")):"linecap"==o?e.setLineCap(n.getAttribute("cap")):"linejoin"==o?e.setLineJoin(n.getAttribute("join")):"miterlimit"==o?e.setMiterLimit(Number(n.getAttribute("limit"))):"fillcolor"==o?e.setFillColor(n.getAttribute("color")):"alpha"==o?e.setAlpha(n.getAttribute("alpha")):"fontcolor"==o?e.setFontColor(n.getAttribute("color")):"fontstyle"==o?e.setFontStyle(n.getAttribute("style")):"fontfamily"==o?e.setFontFamily(n.getAttribute("family")):"fontsize"==o&&e.setFontSize(Number(n.getAttribute("size"))*c);i&&("fillstroke"==o||"fill"==o||"stroke"==o)&&e.setShadow(!1)},mxShape.prototype.dialect=null,mxShape.prototype.scale=1,mxShape.prototype.bounds=null,mxShape.prototype.points=null,mxShape.prototype.node=null,mxShape.prototype.style=null,mxShape.prototype.style=null,mxShape.prototype.boundingBox=null,mxShape.prototype.stencil=null,mxShape.prototype.svgStrokeTolerance=6,mxShape.prototype.pointerEvents=!0,mxShape.prototype.stencilPointerEvents=!1,mxShape.prototype.vmlScale=1,mxShape.prototype.init=function(e){null==this.node&&(this.node=this.create(e),null!=e&&e.appendChild(this.node))},mxShape.prototype.isParseVml=function(){return!0},mxShape.prototype.isHtmlAllowed=function(){return!1},mxShape.prototype.getSvgScreenOffset=function(){return 1==mxUtils.mod(Math.max(1,Math.round(this.strokewidth*this.scale)),2)?.5:0},mxShape.prototype.create=function(e){return null!=e.ownerSVGElement?this.createSvg(e):8==document.documentMode||this.dialect==mxConstants.DIALECT_SVG||this.dialect!=mxConstants.DIALECT_VML&&this.isHtmlAllowed()?this.createHtml(e):this.createVml(e)},mxShape.prototype.createSvg=function(){return document.createElementNS(mxConstants.NS_SVG,"g")},mxShape.prototype.createVml=function(){var e=document.createElement(mxClient.VML_PREFIX+":group");return e.style.position="absolute",e},mxShape.prototype.createHtml=function(){var e=document.createElement("div");return e.style.position="absolute",e},mxShape.prototype.reconfigure=function(){this.redraw()},mxShape.prototype.redraw=function(){this.updateBoundsFromPoints(),this.checkBounds()?(this.node.style.visibility="","DIV"==this.node.nodeName&&this.isHtmlAllowed()?this.redrawHtmlShape():this.redrawShape(),this.updateBoundingBox()):(this.node.style.visibility="hidden",this.boundingBox=null)},mxShape.prototype.updateBoundsFromPoints=function(){var e=this.points;if(null!=e&&0<e.length&&null!=e[0]){this.bounds=new mxRectangle(Number(e[0].x),Number(e[0].y),1,1);for(var t=1;t<this.points.length;t++)null!=e[t]&&this.bounds.add(new mxRectangle(Number(e[t].x),Number(e[t].y),1,1))}},mxShape.prototype.checkBounds=function(){return null!=this.bounds&&!isNaN(this.bounds.x)&&!isNaN(this.bounds.y)&&!isNaN(this.bounds.width)&&!isNaN(this.bounds.height)&&0<this.bounds.width&&0<this.bounds.height},mxShape.prototype.createVmlGroup=function(){var e=document.createElement(mxClient.VML_PREFIX+":group");return e.style.position="absolute",e.style.width=this.node.style.width,e.style.height=this.node.style.height,e},mxShape.prototype.redrawShape=function(){var e=this.createCanvas();for(e.pointerEvents=this.pointerEvents;this.node.hasChildNodes();)this.node.removeChild(this.node.lastChild);this.paint(e),this.node!=e.root&&this.node.insertAdjacentHTML("beforeend",e.root.outerHTML),"DIV"==this.node.nodeName&&8==document.documentMode&&(this.node.style.filter="",(null==this.stencil||!this.stencilPointerEvents)&&mxUtils.addTransparentBackgroundFilter(this.node)),this.destroyCanvas(e)},mxShape.prototype.createCanvas=function(){var e=null,t=null;if(null!=this.node.ownerSVGElement)e=new mxSvgCanvas2D(this.node,!1),e.strokeTolerance=this.svgStrokeTolerance,e.blockImagePointerEvents=mxClient.IS_NS&&!mxClient.IS_SF&&!mxClient.IS_GC,t=this.getSvgScreenOffset(),0!=t?this.node.setAttribute("transform","translate("+t+","+t+")"):this.node.removeAttribute("transform");else{this.updateVmlContainer();var n=Math.max(1,Math.round(this.bounds.width)),a=Math.max(1,Math.round(this.bounds.height)),t=8==document.documentMode&&this.isParseVml()?this.createVmlGroup():this.node,e=new mxVmlCanvas2D(t,!1);""!=t.tagUrn&&(t.coordsize=n*this.vmlScale+","+a*this.vmlScale,e.scale(this.vmlScale),e.vmlScale=this.vmlScale),t=this.scale,e.translate(-Math.round(this.bounds.x/t),-Math.round(this.bounds.y/t))}return e},mxShape.prototype.updateVmlContainer=function(){this.node.style.left=Math.round(this.bounds.x)+"px",this.node.style.top=Math.round(this.bounds.y)+"px";var e=Math.max(1,Math.round(this.bounds.width)),t=Math.max(1,Math.round(this.bounds.height));this.node.style.width=e+"px",this.node.style.height=t+"px",this.node.style.overflow="visible"},mxShape.prototype.destroyCanvas=function(e){if(e instanceof mxSvgCanvas2D){for(var t in e.gradients){var n=e.gradients[t];n.mxRefCount=(n.mxRefCount||0)+1}this.releaseSvgGradients(this.oldGradients),this.oldGradients=e.gradients}},mxShape.prototype.paint=function(e){var t=this.scale,n=this.bounds.x/t,a=this.bounds.y/t,i=this.bounds.width/t,o=this.bounds.height/t;if(this.isPaintBoundsInverted())var s=(i-o)/2,n=n+s,a=a-s,s=i,i=o,o=s;if(this.updateTransform(e,n,a,i,o),this.configureCanvas(e,n,a,i,o),null!=this.stencil)this.paintStencilShape(e,n,a,i,o);else if(e.setStrokeWidth(this.strokewidth),null!=this.points){for(n=[],a=0;a<this.points.length;a++)n.push(new mxPoint(this.points[a].x/t,this.points[a].y/t));this.paintEdgeShape(e,n)}else this.paintVertexShape(e,n,a,i,o)},mxShape.prototype.configureCanvas=function(e,t,n,a,i){var o=null;null!=this.style&&(o=this.style.dashPattern),e.setAlpha(this.opacity/100),null!=this.isShadow&&e.setShadow(this.isShadow),null!=this.isDashed&&e.setDashed(this.isDashed),null!=o&&e.setDashPattern(o),null!=this.gradient?(t=this.getGradientBounds(e,t,n,a,i),e.setGradient(this.fill,this.gradient,t.x,t.y,t.width,t.height,this.gradientDirection)):e.setFillColor(this.fill),e.setStrokeColor(this.stroke)},mxShape.prototype.getGradientBounds=function(e,t,n,a,i){return new mxRectangle(t,n,a,i)},mxShape.prototype.updateTransform=function(e,t,n,a,i){e.scale(this.scale),e.rotate(this.getShapeRotation(),this.flipH,this.flipV,t+a/2,n+i/2)},mxShape.prototype.paintStencilShape=function(e,t,n,a,i){this.stencilPointerEvents&&(this.dialect==mxConstants.DIALECT_SVG?this.addTransparentBackgroundRectangle(this.node,t,n,a,i):8!=document.documentMode&&this.setTransparentBackgroundImage(this.node)),this.stencil.drawShape(e,this,t,n,a,i)},mxShape.prototype.paintVertexShape=function(e,t,n,a,i){this.paintBackground(e,t,n,a,i),e.setShadow(!1),this.paintForeground(e,t,n,a,i)},mxShape.prototype.paintBackground=function(e,t,n,a,i){},mxShape.prototype.paintForeground=function(e,t,n,a,i){},mxShape.prototype.paintEdgeShape=function(e,t){},mxShape.prototype.getArcSize=function(e,t){var n=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100;return Math.min(e*n,t*n)},mxShape.prototype.paintGlassEffect=function(e,t,n,a,i,o){var s=Math.ceil(this.strokewidth/2);e.setGradient("#ffffff","#ffffff",t,n,a,.6*i,"south",.9,.1),e.begin(),o+=2*s,this.isRounded?(e.moveTo(t-s+o,n-s),e.quadTo(t-s,n-s,t-s,n-s+o),e.lineTo(t-s,n+.4*i),e.quadTo(t+.5*a,n+.7*i,t+a+s,n+.4*i),e.lineTo(t+a+s,n-s+o),e.quadTo(t+a+s,n-s,t+a+s-o,n-s)):(e.moveTo(t-s,n-s),e.lineTo(t-s,n+.4*i),e.quadTo(t+.5*a,n+.7*i,t+a+s,n+.4*i),e.lineTo(t+a+s,n-s)),e.close(),e.fill()},mxShape.prototype.apply=function(e){this.state=e,this.style=e.style,null!=this.style&&(this.fill=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,this.fill),this.gradient=mxUtils.getValue(this.style,mxConstants.STYLE_GRADIENTCOLOR,this.gradient),this.gradientDirection=mxUtils.getValue(this.style,mxConstants.STYLE_GRADIENT_DIRECTION,this.gradientDirection),this.opacity=mxUtils.getValue(this.style,mxConstants.STYLE_OPACITY,this.opacity),this.stroke=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,this.stroke),this.strokewidth=mxUtils.getNumber(this.style,mxConstants.STYLE_STROKEWIDTH,this.strokewidth),this.spacing=mxUtils.getValue(this.style,mxConstants.STYLE_SPACING,this.spacing),this.startSize=mxUtils.getNumber(this.style,mxConstants.STYLE_STARTSIZE,this.startSize),this.endSize=mxUtils.getNumber(this.style,mxConstants.STYLE_ENDSIZE,this.endSize),this.startArrow=mxUtils.getValue(this.style,mxConstants.STYLE_STARTARROW,this.startArrow),this.endArrow=mxUtils.getValue(this.style,mxConstants.STYLE_ENDARROW,this.endArrow),this.rotation=mxUtils.getValue(this.style,mxConstants.STYLE_ROTATION,this.rotation),this.direction=mxUtils.getValue(this.style,mxConstants.STYLE_DIRECTION,this.direction),this.flipH=1==mxUtils.getValue(this.style,mxConstants.STYLE_FLIPH,0),this.flipV=1==mxUtils.getValue(this.style,mxConstants.STYLE_FLIPV,0),null!=this.stencil&&(this.flipH=1==mxUtils.getValue(this.style,"stencilFlipH",0)||this.flipH,this.flipV=1==mxUtils.getValue(this.style,"stencilFlipV",0)||this.flipV),"north"!=this.direction&&"south"!=this.direction||(e=this.flipH,this.flipH=this.flipV,this.flipV=e),this.isShadow=1==mxUtils.getValue(this.style,mxConstants.STYLE_SHADOW,this.isShadow),this.isDashed=1==mxUtils.getValue(this.style,mxConstants.STYLE_DASHED,this.isDashed),this.isRounded=1==mxUtils.getValue(this.style,mxConstants.STYLE_ROUNDED,this.isRounded),this.glass=1==mxUtils.getValue(this.style,mxConstants.STYLE_GLASS,this.glass),"none"==this.fill&&(this.fill=null),"none"==this.gradient&&(this.gradient=null),"none"==this.stroke&&(this.stroke=null))},mxShape.prototype.setCursor=function(e){null==e&&(e=""),this.cursor=e,null!=this.node&&(this.node.style.cursor=e)},mxShape.prototype.getCursor=function(){return this.cursor},mxShape.prototype.updateBoundingBox=function(){if(null!=this.bounds){var e=this.createBoundingBox();if(null!=e){this.augmentBoundingBox(e);var t=this.getShapeRotation();0!=t&&(e=mxUtils.getBoundingBox(e,t)),e.x=Math.floor(e.x),e.y=Math.floor(e.y),e.width=Math.ceil(e.width),e.height=Math.ceil(e.height)}this.boundingBox=e}},mxShape.prototype.createBoundingBox=function(){var e=this.bounds.clone();if(this.isPaintBoundsInverted()){var t=(e.width-e.height)/2;e.x+=t,e.y-=t,t=e.width,e.width=e.height,e.height=t}return e},mxShape.prototype.augmentBoundingBox=function(e){this.isShadow&&(e.width+=Math.ceil(mxConstants.SHADOW_OFFSET_X*this.scale),e.height+=Math.ceil(mxConstants.SHADOW_OFFSET_Y*this.scale));var t=Math.ceil(this.strokewidth*this.scale);e.grow(Math.ceil(t/2))},mxShape.prototype.isPaintBoundsInverted=function(){return null==this.stencil&&("north"==this.direction||"south"==this.direction)},mxShape.prototype.getRotation=function(){return null!=this.rotation?this.rotation:0},mxShape.prototype.getTextRotation=function(){var e=this.getRotation();return 1!=mxUtils.getValue(this.style,mxConstants.STYLE_HORIZONTAL,1)&&(e+=mxText.prototype.verticalTextRotation),e},mxShape.prototype.getShapeRotation=function(){var e=this.getRotation();return null!=this.direction&&("north"==this.direction?e+=270:"west"==this.direction?e+=180:"south"==this.direction&&(e+=90)),e},mxShape.prototype.addTransparentBackgroundRectangle=function(e,t,n,a,i){(e=document.createElementNS(mxConstants.NS_SVG,"rect")).setAttribute("x",t),e.setAttribute("y",n),e.setAttribute("width",a),e.setAttribute("height",i),e.setAttribute("fill","none"),e.setAttribute("stroke","none"),e.setAttribute("pointer-events","all"),this.node.appendChild(e)},mxShape.prototype.setTransparentBackgroundImage=function(e){e.style.backgroundImage="url('"+mxClient.imageBasePath+"/transparent.gif')"},mxShape.prototype.releaseSvgGradients=function(e){if(null!=e)for(var t in e){var n=e[t];n.mxRefCount=(n.mxRefCount||0)-1,0==n.mxRefCount&&null!=n.parentNode&&n.parentNode.removeChild(n)}},mxShape.prototype.destroy=function(){null!=this.node&&(mxEvent.release(this.node),null!=this.node.parentNode&&this.node.parentNode.removeChild(this.node),this.node=null),this.releaseSvgGradients(this.oldGradients),this.oldGradients=null};var mxStencilRegistry={stencils:[],addStencil:function(e,t){mxStencilRegistry.stencils[e]=t},getStencil:function(e){return mxStencilRegistry.stencils[e]}},mxMarker={markers:[],addMarker:function(e,t){mxMarker.markers[e]=t},createMarker:function(e,t,n,a,i,o,s,r,l,d){var c=mxMarker.markers[n];return null!=c?c(e,t,n,a,i,o,s,r,l,d):null}};!function(){function e(e,t,n,a,i,o,s,r,l,d){t=1.118*i*l,r=1.118*o*l,i*=s+l,o*=s+l;var c=a.clone();return c.x-=t,c.y-=r,s=n!=mxConstants.ARROW_CLASSIC?1:.75,a.x+=-i*s-t,a.y+=-o*s-r,function(){e.begin(),e.moveTo(c.x,c.y),e.lineTo(c.x-i-o/2,c.y-o+i/2),n==mxConstants.ARROW_CLASSIC&&e.lineTo(c.x-3*i/4,c.y-3*o/4),e.lineTo(c.x+o/2-i,c.y-o-i/2),e.close(),d?e.fillAndStroke():e.stroke()}}function t(e,t,n,a,i,o,s,r,l,d){r=n==mxConstants.ARROW_DIAMOND?.7071:.9862,t=i*l*r,r*=o*l,i*=s+l,o*=s+l;var c=a.clone();c.x-=t,c.y-=r,a.x+=-i-t,a.y+=-o-r;var m=n==mxConstants.ARROW_DIAMOND?2:3.4;return function(){e.begin(),e.moveTo(c.x,c.y),e.lineTo(c.x-i/2-o/m,c.y+i/m-o/2),e.lineTo(c.x-i,c.y-o),e.lineTo(c.x-i/2+o/m,c.y-o/2-i/m),e.close(),d?e.fillAndStroke():e.stroke()}}mxMarker.addMarker("classic",e),mxMarker.addMarker("block",e),mxMarker.addMarker("open",function(e,t,n,a,i,o,s,r,l,d){t=1.118*i*l,n=1.118*o*l,i*=s+l,o*=s+l;var c=a.clone();return c.x-=t,c.y-=n,a.x+=2*-t,a.y+=2*-n,function(){e.begin(),e.moveTo(c.x-i-o/2,c.y-o+i/2),e.lineTo(c.x,c.y),e.lineTo(c.x+o/2-i,c.y-o-i/2),e.stroke()}}),mxMarker.addMarker("oval",function(e,t,n,a,i,o,s,r,l,d){var c=s/2,m=a.clone();return a.x-=i*c,a.y-=o*c,function(){e.ellipse(m.x-c,m.y-c,s,s),d?e.fillAndStroke():e.stroke()}}),mxMarker.addMarker("diamond",t),mxMarker.addMarker("diamondThin",t)}(),mxUtils.extend(mxActor,mxShape),mxActor.prototype.paintVertexShape=function(e,t,n,a,i){e.translate(t,n),e.begin(),this.redrawPath(e,t,n,a,i),e.fillAndStroke()},mxActor.prototype.redrawPath=function(e,t,n,a,i){t=a/3,e.moveTo(0,i),e.curveTo(0,3*i/5,0,2*i/5,a/2,2*i/5),e.curveTo(a/2-t,2*i/5,a/2-t,0,a/2,0),e.curveTo(a/2+t,0,a/2+t,2*i/5,a/2,2*i/5),e.curveTo(a,2*i/5,a,3*i/5,a,i),e.close()},mxUtils.extend(mxCloud,mxActor),mxCloud.prototype.redrawPath=function(e,t,n,a,i){e.moveTo(.25*a,.25*i),e.curveTo(.05*a,.25*i,0,.5*i,.16*a,.55*i),e.curveTo(0,.66*i,.18*a,.9*i,.31*a,.8*i),e.curveTo(.4*a,i,.7*a,i,.8*a,.8*i),e.curveTo(a,.8*i,a,.6*i,.875*a,.5*i),e.curveTo(a,.3*i,.8*a,.1*i,.625*a,.2*i),e.curveTo(.5*a,.05*i,.3*a,.05*i,.25*a,.25*i),e.close()},mxUtils.extend(mxRectangleShape,mxShape),mxRectangleShape.prototype.isHtmlAllowed=function(){return!this.isRounded&&!this.glass&&0==this.rotation},mxRectangleShape.prototype.paintBackground=function(e,t,n,a,i){if(this.isRounded){var o=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,o=Math.min(a*o,i*o);e.roundrect(t,n,a,i,o,o)}else e.rect(t,n,a,i);e.fillAndStroke()},mxRectangleShape.prototype.paintForeground=function(e,t,n,a,i){this.glass&&this.paintGlassEffect(e,t,n,a,i,this.getArcSize(a+this.strokewidth,i+this.strokewidth))},mxRectangleShape.prototype.redrawHtmlShape=function(){this.updateHtmlBounds(this.node),this.updateHtmlFilters(this.node),this.updateHtmlColors(this.node)},mxRectangleShape.prototype.updateHtmlBounds=function(e){var t=9<=document.documentMode?0:Math.ceil(this.strokewidth*this.scale);e.style.borderWidth=Math.max(1,t)+"px",e.style.overflow="hidden",e.style.left=Math.round(this.bounds.x-t/2)+"px",e.style.top=Math.round(this.bounds.y-t/2)+"px","CSS1Compat"==document.compatMode&&(t=-t),e.style.width=Math.round(Math.max(0,this.bounds.width+t))+"px",e.style.height=Math.round(Math.max(0,this.bounds.height+t))+"px"},mxRectangleShape.prototype.updateHtmlColors=function(e){var t=this.stroke;null!=t&&t!=mxConstants.NONE?(e.style.borderColor=t,this.isDashed?e.style.borderStyle="dashed":0<this.strokewidth&&(e.style.borderStyle="solid"),e.style.borderWidth=Math.max(1,Math.ceil(this.strokewidth*this.scale))+"px"):e.style.borderWidth="0px",null!=(t=this.fill)&&t!=mxConstants.NONE?(e.style.backgroundColor=t,e.style.backgroundImage="none"):this.pointerEvents?e.style.backgroundColor="transparent":8==document.documentMode?mxUtils.addTransparentBackgroundFilter(e):this.setTransparentBackgroundImage(e)},mxRectangleShape.prototype.updateHtmlFilters=function(e){var t="";if(100>this.opacity&&(t+="alpha(opacity="+this.opacity+")"),this.isShadow&&(t+="progid:DXImageTransform.Microsoft.dropShadow (OffX='"+Math.round(mxConstants.SHADOW_OFFSET_X*this.scale)+"', OffY='"+Math.round(mxConstants.SHADOW_OFFSET_Y*this.scale)+"', Color='"+mxConstants.SHADOWCOLOR+"')"),this.gradient){var n=this.fill,a=this.gradient,i="0",o={east:0,south:1,west:2,north:3},s=null!=this.direction?o[this.direction]:0;null!=this.gradientDirection&&(s=mxUtils.mod(s+o[this.gradientDirection]-1,4)),1==s?(i="1",o=n,n=a,a=o):2==s?(o=n,n=a,a=o):3==s&&(i="1"),t+="progid:DXImageTransform.Microsoft.gradient(startColorStr='"+n+"', endColorStr='"+a+"', gradientType='"+i+"')"}e.style.filter=t},mxUtils.extend(mxEllipse,mxShape),mxEllipse.prototype.paintVertexShape=function(e,t,n,a,i){e.ellipse(t,n,a,i),e.fillAndStroke()},mxUtils.extend(mxDoubleEllipse,mxShape),mxDoubleEllipse.prototype.vmlScale=10,mxDoubleEllipse.prototype.paintBackground=function(e,t,n,a,i){e.ellipse(t,n,a,i),e.fillAndStroke()},mxDoubleEllipse.prototype.paintForeground=function(e,t,n,a,i){var o=Math.min(4,Math.min(a/5,i/5));i-=2*o,0<(a-=2*o)&&0<i&&e.ellipse(t+o,n+o,a,i),e.stroke()},mxUtils.extend(mxRhombus,mxShape),mxRhombus.prototype.paintVertexShape=function(e,t,n,a,i){var o=a/2,s=i/2;e.begin(),e.moveTo(t+o,n),e.lineTo(t+a,n+s),e.lineTo(t+o,n+i),e.lineTo(t,n+s),e.close(),e.fillAndStroke()},mxUtils.extend(mxPolyline,mxShape),mxPolyline.prototype.getRotation=function(){return 0},mxPolyline.prototype.paintEdgeShape=function(e,t){this.paintLine(e,t,this.isRounded)},mxPolyline.prototype.paintLine=function(e,t,n){var a=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2,i=t[0],o=t[t.length-1];e.begin(),e.moveTo(i.x,i.y);for(var s=1;s<t.length-1;s++){var r=t[s],l=i.x-r.x,i=i.y-r.y;if(n&&s<t.length-1&&(0!=l||0!=i)){var d=Math.sqrt(l*l+i*i),l=l*Math.min(a,d/2)/d,i=i*Math.min(a,d/2)/d;e.lineTo(r.x+l,r.y+i),l=(i=t[s+1]).x-r.x,i=i.y-r.y,d=Math.max(1,Math.sqrt(l*l+i*i)),l=l*Math.min(a,d/2)/d,i=i*Math.min(a,d/2)/d,l=r.x+l,i=r.y+i,e.quadTo(r.x,r.y,l,i),r=new mxPoint(l,i)}else e.lineTo(r.x,r.y);i=r}e.lineTo(o.x,o.y),e.stroke()},mxUtils.extend(mxArrow,mxShape),mxArrow.prototype.paintEdgeShape=function(e,t){var n=mxConstants.ARROW_SPACING,a=mxConstants.ARROW_WIDTH,i=mxConstants.ARROW_SIZE,o=t[0],s=t[t.length-1],r=s.x-o.x,l=s.y-o.y,d=(c=Math.sqrt(r*r+l*l))-2*n-i,r=r/c,c=a*(l=l/c)/3,a=-a*r/3,m=(i=o.x-c/2+n*r)+c,u=(o=o.y-a/2+n*l)+a,p=m+d*r,g=p+c,h=(d=u+d*l)+a,v=g-3*c,b=h-3*a;e.begin(),e.moveTo(i,o),e.lineTo(m,u),e.lineTo(p,d),e.lineTo(g,h),e.lineTo(s.x-n*r,s.y-n*l),e.lineTo(v,b),e.lineTo(v+c,b+a),e.close(),e.fillAndStroke()},mxUtils.extend(mxText,mxShape),mxText.prototype.baseSpacingTop=0,mxText.prototype.baseSpacingBottom=0,mxText.prototype.baseSpacingLeft=0,mxText.prototype.baseSpacingRight=0,mxText.prototype.replaceLinefeeds=!0,mxText.prototype.verticalTextRotation=-90,mxText.prototype.ignoreClippedStringSize=!0,mxText.prototype.ignoreStringSize=!1,mxText.prototype.isParseVml=function(){return!1},mxText.prototype.isHtmlAllowed=function(){return 8!=document.documentMode},mxText.prototype.getSvgScreenOffset=function(){return 0},mxText.prototype.checkBounds=function(){return!(null==this.bounds||isNaN(this.bounds.x)||isNaN(this.bounds.y)||isNaN(this.bounds.width)||isNaN(this.bounds.height))},mxText.prototype.updateBoundingBox=function(){var e=this.node;8==document.documentMode&&null!=e.firstChild&&null!=(e=e.firstChild).firstChild&&(e=e.firstChild),this.boundingBox=this.bounds.clone();var t=this.getTextRotation();if(this.ignoreStringSize||null==e||"fill"==this.overflow||this.clipped&&this.ignoreClippedStringSize)this.boundingBox.x+=this.margin.x*this.boundingBox.width,this.boundingBox.y+=this.margin.y*this.boundingBox.height;else{var n=null,a=null;if(null!=e.ownerSVGElement)if(null!=e.firstChild&&null!=e.firstChild.firstChild&&"foreignObject"==e.firstChild.firstChild.nodeName)e=e.firstChild.firstChild,n=this.wrap?this.bounds.width:parseInt(e.getAttribute("width"))*this.scale,a=parseInt(e.getAttribute("height"))*this.scale;else{if(0==(t=e.getBBox()).width&&0==t.height)return;this.boundingBox=new mxRectangle(t.x,t.y,t.width,t.height),t=0}else a=this.state.view.textDiv,null!=this.offsetWidth&&null!=this.offsetHeight?(n=this.wrap?this.bounds.width:this.offsetWidth*this.scale,a=this.offsetHeight*this.scale):null!=a?(this.updateFont(a),this.updateSize(a),mxUtils.isNode(this.value)?a.innerHTML=this.value.outerHTML:(n=this.replaceLinefeeds?this.value.replace(/\n/g,"<br/>"):this.value,a.innerHTML=n),n=this.wrap?this.bounds.width:a.offsetWidth*this.scale,a=a.offsetHeight*this.scale):(n=this.wrap?this.bounds.width:e.offsetWidth*this.scale,a=e.offsetHeight*this.scale);null!=n&&null!=a&&(this.boundingBox=new mxRectangle(this.bounds.x+this.margin.x*n,this.bounds.y+this.margin.y*a,n,a))}null!=this.boundingBox&&(0!=t&&(t=mxUtils.getBoundingBox(this.boundingBox,t),this.boundingBox.x=t.x,this.boundingBox.y=t.y,mxClient.IS_QUIRKS||(this.boundingBox.width=t.width,this.boundingBox.height=t.height)),this.boundingBox.x=Math.floor(this.boundingBox.x),this.boundingBox.y=Math.floor(this.boundingBox.y),this.boundingBox.width=Math.ceil(this.boundingBox.width),this.boundingBox.height=Math.ceil(this.boundingBox.height))},mxText.prototype.getShapeRotation=function(){return 0},mxText.prototype.getTextRotation=function(){return null!=this.state&&null!=this.state.shape?this.state.shape.getTextRotation():0},mxText.prototype.isPaintBoundsInverted=function(){return!this.horizontal&&null!=this.state&&this.state.view.graph.model.isVertex(this.state.cell)},mxText.prototype.configureCanvas=function(e,t,n,a,i){mxShape.prototype.configureCanvas.apply(this,arguments),e.setFontColor(this.color),e.setFontBackgroundColor(this.background),e.setFontBorderColor(this.border),e.setFontFamily(this.family),e.setFontSize(this.size),e.setFontStyle(this.fontStyle)},mxText.prototype.updateVmlContainer=function(){this.node.style.left=Math.round(this.bounds.x)+"px",this.node.style.top=Math.round(this.bounds.y)+"px",this.node.style.width="1px",this.node.style.height="1px",this.node.style.overflow="visible"},mxText.prototype.paint=function(e){var t=this.scale,n=this.bounds.x/t,a=this.bounds.y/t,i=this.bounds.width/t,t=this.bounds.height/t;this.updateTransform(e,n,a,i,t),this.configureCanvas(e,n,a,i,t);var o=mxUtils.isNode(this.value)||this.dialect==mxConstants.DIALECT_STRICTHTML,s=o||e instanceof mxVmlCanvas2D?"html":"",r=this.value;!o&&"html"==s&&(r=mxUtils.htmlEntities(r,!1)),r=!mxUtils.isNode(this.value)&&this.replaceLinefeeds&&"html"==s?r.replace(/\n/g,"<br/>"):r,e.text(n,a,i,t,r,this.align,this.valign,this.wrap,s,"fill"==this.overflow,this.clipped,this.getTextRotation())},mxText.prototype.redrawHtmlShape=function(){var e=this.node.style;e.opacity=1>this.opacity?this.opacity:"",e.overflow="",e.width="",e.height="",this.updateFont(this.node),this.updateSize(this.node),this.updateValue(),this.offsetHeight=this.offsetWidth=null,null!=mxClient.CSS_PREFIX?this.updateHtmlTransform():this.updateHtmlFilter()},mxText.prototype.updateHtmlTransform=function(){var e=this.getTextRotation(),t=this.node.style,n=this.margin.x,a=this.margin.y;0!=e?(t[mxClient.CSS_PREFIX+"TransformOrigin"]=100*-n+"% "+100*-a+"%",t[mxClient.CSS_PREFIX+"Transform"]="translate("+100*n+"%,"+100*a+"%)scale("+this.scale+") rotate("+e+"deg)"):(t[mxClient.CSS_PREFIX+"TransformOrigin"]="0% 0%",t[mxClient.CSS_PREFIX+"Transform"]="scale("+this.scale+")translate("+100*n+"%,"+100*a+"%)"),t.left=Math.round(this.bounds.x)+"px",t.top=Math.round(this.bounds.y)+"px"},mxText.prototype.updateHtmlFilter=function(){var e=this.node.style,t=this.margin.x,n=this.margin.y,a=this.scale;e.filter="";var i=0,o=0;if(null!=(r=null!=this.state?this.state.view.textDiv:null)){if(r.style.overflow="",r.style.height="",r.style.width="",this.updateFont(r),this.updateSize(r),mxUtils.isNode(this.value))r.innerHTML=this.value.outerHTML;else{s=this.value;this.dialect!=mxConstants.DIALECT_STRICTHTML&&(s=mxUtils.htmlEntities(s,!1)),s=this.replaceLinefeeds?s.replace(/\n/g,"<br/>"):s,r.innerHTML=s}i=r.offsetWidth+2,o=r.offsetHeight+2}else i=this.node.offsetWidth,o=this.node.offsetHeight+1;this.offsetWidth=i,this.offsetHeight=o,r=this.bounds.width/a,s=this.bounds.height/a,mxClient.IS_QUIRKS&&(this.clipped||"fill"==this.overflow)&&0<s?(s=Math.min(s,o),e.height=Math.round(s+1)+"px"):s=o,"fill"!=this.overflow&&(mxClient.IS_QUIRKS&&(this.clipped||this.wrap)&&0<r?(r=Math.min(r,i),e.width=Math.round(r)+"px"):r=i);var s=s*a,r=r*a,i=this.getTextRotation()*(Math.PI/180),o=parseFloat(parseFloat(Math.cos(i)).toFixed(8)),l=parseFloat(parseFloat(Math.sin(-i)).toFixed(8));0>(i=i%(2*Math.PI))&&(i+=2*Math.PI),(i%=Math.PI)>Math.PI/2&&(i=Math.PI-i);var d=Math.cos(i),c=Math.sin(-i),m=(s-s*d+r*c)/2+l*(t=r*-(t+.5))-o*(n=s*-(n+.5));0!=i&&(e.filter="progid:DXImageTransform.Microsoft.Matrix(M11="+o+", M12="+l+", M21="+-l+", M22="+o+", sizingMethod='auto expand')"),e.zoom=a,e.left=Math.round(this.bounds.x+((r-r*d+s*c)/2-o*t-l*n)-r/2)+"px",e.top=Math.round(this.bounds.y+m-s/2)+"px"},mxText.prototype.updateValue=function(){if(mxUtils.isNode(this.value))this.node.innerHTML="",this.node.appendChild(this.value);else{e=this.value;this.dialect!=mxConstants.DIALECT_STRICTHTML&&(e=mxUtils.htmlEntities(e,!1));var e=this.replaceLinefeeds?e.replace(/\n/g,"<br/>"):e,t=null!=this.background&&this.background!=mxConstants.NONE?this.background:null,n=null!=this.border&&this.border!=mxConstants.NONE?this.border:null;if(null!=t||null!=n)if("fill"==this.overflow)null!=t&&(this.node.style.backgroundColor=t),null!=n&&(this.node.style.border="1px solid "+n);else{var a="";null!=t&&(a+="background-color:"+t+";"),null!=n&&(a+="border:1px solid "+n+";"),e='<div style="zoom:1;'+a+"display:inline-block;_display:inline;padding-bottom:1px;padding-right:1px;line-height:"+this.node.style.lineHeight+'">'+e+"</div>",this.node.style.lineHeight=""}this.node.innerHTML=e}},mxText.prototype.updateFont=function(e){(e=e.style).lineHeight=Math.round(this.size*mxConstants.LINE_HEIGHT)+"px",e.fontSize=Math.round(this.size)+"px",e.fontFamily=this.family,e.verticalAlign="top",e.color=this.color,e.fontWeight=(this.fontStyle&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD?"bold":"",e.fontStyle=(this.fontStyle&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC?"italic":"",e.fontDecoration=(this.fontStyle&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE?"underline":"",e.textAlign=this.align==mxConstants.ALIGN_CENTER?"center":this.align==mxConstants.ALIGN_RIGHT?"right":"left"},mxText.prototype.updateSize=function(e){var t=Math.round(this.bounds.width/this.scale),n=Math.round(this.bounds.height/this.scale);e=e.style,this.clipped?(e.overflow="hidden",0<n&&(e.maxHeight=n+"px"),0<t&&(e.width=t+"px")):"fill"==this.overflow&&(e.width=t+"px",0<n&&(e.maxHeight=n+"px")),this.wrap?(!this.clipped&&0<t&&(e.width=t+"px"),e.whiteSpace="normal"):e.whiteSpace="nowrap"},mxText.prototype.updateMargin=function(){this.margin=mxUtils.getAlignmentAsPoint(this.align,this.valign)},mxText.prototype.getSpacing=function(){return new mxPoint(this.align==mxConstants.ALIGN_CENTER?(this.spacingLeft-this.spacingRight)/2:this.align==mxConstants.ALIGN_RIGHT?-this.spacingRight-this.baseSpacingRight:this.spacingLeft+this.baseSpacingLeft,this.valign==mxConstants.ALIGN_MIDDLE?(this.spacingTop-this.spacingBottom)/2:this.valign==mxConstants.ALIGN_BOTTOM?-this.spacingBottom-this.baseSpacingBottom:this.spacingTop+this.baseSpacingTop)},mxUtils.extend(mxTriangle,mxActor),mxTriangle.prototype.redrawPath=function(e,t,n,a,i){e.moveTo(0,0),e.lineTo(a,.5*i),e.lineTo(0,i),e.close()},mxUtils.extend(mxHexagon,mxActor),mxHexagon.prototype.redrawPath=function(e,t,n,a,i){e.moveTo(.25*a,0),e.lineTo(.75*a,0),e.lineTo(a,.5*i),e.lineTo(.75*a,i),e.lineTo(.25*a,i),e.lineTo(0,.5*i),e.close()},mxUtils.extend(mxLine,mxShape),mxLine.prototype.paintVertexShape=function(e,t,n,a,i){n+=i/2,e.begin(),e.moveTo(t,n),e.lineTo(t+a,n),e.stroke()},mxUtils.extend(mxImageShape,mxRectangleShape),mxImageShape.prototype.preserveImageAspect=!0,mxImageShape.prototype.getSvgScreenOffset=function(){return mxClient.IS_IE?0:.5},mxImageShape.prototype.apply=function(e){mxShape.prototype.apply.apply(this,arguments),this.gradient=this.stroke=this.fill=null,null!=this.style&&(this.fill=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_BACKGROUND),this.stroke=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_BORDER),this.preserveImageAspect=1==mxUtils.getNumber(this.style,mxConstants.STYLE_IMAGE_ASPECT,1),this.flipH=this.flipH||1==mxUtils.getValue(this.style,"imageFlipH",0),this.flipV=this.flipV||1==mxUtils.getValue(this.style,"imageFlipV",0))},mxImageShape.prototype.isHtmlAllowed=function(){return!this.preserveImageAspect},mxImageShape.prototype.createHtml=function(){var e=document.createElement("div");return e.style.position="absolute",e},mxImageShape.prototype.paintVertexShape=function(e,t,n,a,i){if(null!=this.image){var o=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_BACKGROUND,null),s=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_BORDER,null);null==o&&null==s||(e.setFillColor(o),e.setStrokeColor(s),e.rect(t,n,a,i),e.fillAndStroke()),e.image(t,n,a,i,this.image,this.preserveImageAspect,!1,!1)}else mxRectangleShape.prototype.paintBackground.apply(this,arguments)},mxImageShape.prototype.redrawHtmlShape=function(){if(this.node.style.left=Math.round(this.bounds.x)+"px",this.node.style.top=Math.round(this.bounds.y)+"px",this.node.style.width=Math.max(0,Math.round(this.bounds.width))+"px",this.node.style.height=Math.max(0,Math.round(this.bounds.height))+"px",this.node.style.backgroundColor=this.fill||"",this.node.style.borderColor=this.stroke||"",this.node.innerHTML="",null!=this.image){var e=document.createElement(mxClient.IS_IE6||null==mxClient.CSS_PREFIX&&0!=this.rotation?mxClient.VML_PREFIX+":image":"img");e.style.position="absolute",e.src=this.image;var t=100>this.opacity?"alpha(opacity="+this.opacity+")":"";this.node.style.filter=t,this.flipH&&this.flipV?t+="progid:DXImageTransform.Microsoft.BasicImage(rotation=2)":this.flipH?t+="progid:DXImageTransform.Microsoft.BasicImage(mirror=1)":this.flipV&&(t+="progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"),e.style.filter!=t&&(e.style.filter=t),"image"==e.nodeName?e.style.rotation=this.rotation:e.style[mxClient.CSS_PREFIX+"Transform"]="rotate("+this.rotation+"deg)",e.style.width=this.node.style.width,e.style.height=this.node.style.height,this.node.style.backgroundImage="",this.node.appendChild(e)}else this.setTransparentBackgroundImage(this.node)},mxUtils.extend(mxLabel,mxRectangleShape),mxLabel.prototype.imageSize=mxConstants.DEFAULT_IMAGESIZE,mxLabel.prototype.spacing=2,mxLabel.prototype.indicatorSize=10,mxLabel.prototype.indicatorSpacing=2,mxLabel.prototype.init=function(e){mxShape.prototype.init.apply(this,arguments),null!=this.indicatorColor&&null!=this.indicatorShape&&(this.indicator=new this.indicatorShape,this.indicator.dialect=this.dialect,this.indicator.bounds=this.bounds,this.indicator.fill=this.indicatorColor,this.indicator.stroke=this.indicatorColor,this.indicator.gradient=this.indicatorGradientColor,this.indicator.direction=this.indicatorDirection,this.indicator.init(this.node))},mxLabel.prototype.redraw=function(){null!=this.indicator&&(this.indicator.fill=this.indicatorColor,this.indicator.stroke=this.indicatorColor,this.indicator.gradient=this.indicatorGradientColor,this.indicator.direction=this.indicatorDirection),mxShape.prototype.redraw.apply(this,arguments)},mxLabel.prototype.isHtmlAllowed=function(){return mxRectangleShape.prototype.isHtmlAllowed.apply(this,arguments)&&null==this.indicatorColor&&null==this.indicatorShape},mxLabel.prototype.paintForeground=function(e,t,n,a,i){this.paintImage(e,t,n,a,i),this.paintIndicator(e,t,n,a,i),mxRectangleShape.prototype.paintForeground.apply(this,arguments)},mxLabel.prototype.paintImage=function(e,t,n,a,i){null!=this.image&&(t=this.getImageBounds(t,n,a,i),e.image(t.x,t.y,t.width,t.height,this.image,!1,!1,!1))},mxLabel.prototype.getImageBounds=function(e,t,n,a){var i=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_ALIGN,mxConstants.ALIGN_LEFT),o=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),s=mxUtils.getNumber(this.style,mxConstants.STYLE_IMAGE_WIDTH,mxConstants.DEFAULT_IMAGESIZE),r=mxUtils.getNumber(this.style,mxConstants.STYLE_IMAGE_HEIGHT,mxConstants.DEFAULT_IMAGESIZE),l=mxUtils.getNumber(this.style,mxConstants.STYLE_SPACING,this.spacing)+5;return e=i==mxConstants.ALIGN_CENTER?e+(n-s)/2:i==mxConstants.ALIGN_RIGHT?e+(n-s-l):e+l,t=o==mxConstants.ALIGN_TOP?t+l:o==mxConstants.ALIGN_BOTTOM?t+(a-r-l):t+(a-r)/2,new mxRectangle(e,t,s,r)},mxLabel.prototype.paintIndicator=function(e,t,n,a,i){null!=this.indicator?(this.indicator.bounds=this.getIndicatorBounds(t,n,a,i),this.indicator.paint(e)):null!=this.indicatorImage&&(t=this.getIndicatorBounds(t,n,a,i),e.image(t.x,t.y,t.width,t.height,this.indicatorImage,!1,!1,!1))},mxLabel.prototype.getIndicatorBounds=function(e,t,n,a){var i=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_ALIGN,mxConstants.ALIGN_LEFT),o=mxUtils.getValue(this.style,mxConstants.STYLE_IMAGE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),s=mxUtils.getNumber(this.style,mxConstants.STYLE_INDICATOR_WIDTH,this.indicatorSize),r=mxUtils.getNumber(this.style,mxConstants.STYLE_INDICATOR_HEIGHT,this.indicatorSize),l=this.spacing+5;return e=i==mxConstants.ALIGN_RIGHT?e+(n-s-l):i==mxConstants.ALIGN_CENTER?e+(n-s)/2:e+l,t=o==mxConstants.ALIGN_BOTTOM?t+(a-r-l):o==mxConstants.ALIGN_TOP?t+l:t+(a-r)/2,new mxRectangle(e,t,s,r)},mxLabel.prototype.redrawHtmlShape=function(){for(mxRectangleShape.prototype.redrawHtmlShape.apply(this,arguments);this.node.hasChildNodes();)this.node.removeChild(this.node.lastChild);if(null!=this.image){var e=document.createElement("img");e.style.position="relative",e.setAttribute("border","0");var t=this.getImageBounds(this.bounds.x,this.bounds.y,this.bounds.width,this.bounds.height);t.x-=this.bounds.x,t.y-=this.bounds.y,e.style.left=Math.round(t.x)+"px",e.style.top=Math.round(t.y)+"px",e.style.width=Math.round(t.width)+"px",e.style.height=Math.round(t.height)+"px",e.src=this.image,this.node.appendChild(e)}},mxUtils.extend(mxCylinder,mxShape),mxCylinder.prototype.maxHeight=40,mxCylinder.prototype.svgStrokeTolerance=0,mxCylinder.prototype.paintVertexShape=function(e,t,n,a,i){e.translate(t,n),e.begin(),this.redrawPath(e,t,n,a,i,!1),e.fillAndStroke(),e.setShadow(!1),e.begin(),this.redrawPath(e,t,n,a,i,!0),e.stroke()},mxCylinder.prototype.redrawPath=function(e,t,n,a,i,o){t=Math.min(this.maxHeight,Math.round(i/5)),(o&&null!=this.fill||!o&&null==this.fill)&&(e.moveTo(0,t),e.curveTo(0,2*t,a,2*t,a,t),o||(e.stroke(),e.begin())),o||(e.moveTo(0,t),e.curveTo(0,-t/3,a,-t/3,a,t),e.lineTo(a,i-t),e.curveTo(a,i+t/3,0,i+t/3,0,i-t),e.close())},mxUtils.extend(mxConnector,mxPolyline),mxConnector.prototype.paintEdgeShape=function(e,t){var n=this.createMarker(e,t,!0),a=this.createMarker(e,t,!1);null==this.style||1!=this.style[mxConstants.STYLE_CURVED]?this.paintLine(e,t,this.isRounded):this.paintCurvedLine(e,t),e.setFillColor(this.stroke),e.setShadow(!1),e.setDashed(!1),null!=n&&n(),null!=a&&a()},mxConnector.prototype.paintCurvedLine=function(e,t){e.begin();var n=t[0],a=t.length;for(e.moveTo(n.x,n.y),n=1;n<a-2;n++){var i=t[n],o=t[n+1];e.quadTo(i.x,i.y,(i.x+o.x)/2,(i.y+o.y)/2)}i=t[a-2],o=t[a-1],e.quadTo(i.x,i.y,o.x,o.y),e.stroke()},mxConnector.prototype.createMarker=function(e,t,n){var a=t.length,i=n?t[1]:t[a-2],a=(t=n?t[0]:t[a-1]).x-i.x,o=t.y-i.y,i=a/(s=Math.max(1,Math.sqrt(a*a+o*o))),a=o/s,o=mxUtils.getNumber(this.style,n?mxConstants.STYLE_STARTSIZE:mxConstants.STYLE_ENDSIZE,mxConstants.DEFAULT_MARKERSIZE),s=mxUtils.getValue(this.style,n?mxConstants.STYLE_STARTARROW:mxConstants.STYLE_ENDARROW);return mxMarker.createMarker(e,this,s,t,i,a,o,n,this.strokewidth,0!=this.style[n?mxConstants.STYLE_STARTFILL:mxConstants.STYLE_ENDFILL])},mxConnector.prototype.augmentBoundingBox=function(e){mxShape.prototype.augmentBoundingBox.apply(this,arguments);var t=0;mxUtils.getValue(this.style,mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants.NONE&&(t=mxUtils.getNumber(this.style,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_MARKERSIZE)+1),mxUtils.getValue(this.style,mxConstants.STYLE_ENDARROW,mxConstants.NONE)!=mxConstants.NONE&&(t=Math.max(t,mxUtils.getNumber(this.style,mxConstants.STYLE_ENDSIZE,mxConstants.DEFAULT_MARKERSIZE))+1),e.grow(Math.ceil(t*this.scale))},mxUtils.extend(mxSwimlane,mxShape),mxSwimlane.prototype.imageSize=16,mxSwimlane.prototype.getGradientBounds=function(e,t,n,a,i){return e=Math.min(i,mxUtils.getValue(this.style,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),new mxRectangle(t,n,a,e)},mxSwimlane.prototype.getRotation=function(){var e=mxShape.prototype.getRotation.apply(this,arguments);return 1!=mxUtils.getValue(this.style,mxConstants.STYLE_HORIZONTAL,1)&&(e+=mxText.prototype.verticalTextRotation),e},mxSwimlane.prototype.getTextRotation=function(){return this.getRotation()},mxSwimlane.prototype.isPaintBoundsInverted=function(){return mxShape.prototype.isPaintBoundsInverted.apply(this,arguments)||1!=mxUtils.getValue(this.style,mxConstants.STYLE_HORIZONTAL,1)},mxSwimlane.prototype.getArcSize=function(e,t,n){return e=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,100*mxConstants.RECTANGLE_ROUNDING_FACTOR)/100,3*n*e},mxSwimlane.prototype.paintVertexShape=function(e,t,n,a,i){var o=Math.min(i,mxUtils.getValue(this.style,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),s=mxUtils.getValue(this.style,mxConstants.STYLE_SWIMLANE_FILLCOLOR,mxConstants.NONE),r=1==mxUtils.getValue(this.style,mxConstants.STYLE_SWIMLANE_LINE,1),l=0;e.translate(t,n),this.isRounded?(l=this.getArcSize(a,i,o),this.paintRoundedSwimlane(e,t,n,a,i,o,l,s,r)):this.paintSwimlane(e,t,n,a,i,o,s,r),s=mxUtils.getValue(this.style,mxConstants.STYLE_SEPARATORCOLOR,mxConstants.NONE),this.paintSeparator(e,a,o,i,s),null!=this.image&&(i=this.getImageBounds(t,o,a,i),e.image(i.x-t,i.y-n,i.width,i.height,this.image,!1,!1,!1)),this.glass&&(e.setShadow(!1),this.paintGlassEffect(e,0,0,a,o,l))},mxSwimlane.prototype.paintSwimlane=function(e,t,n,a,i,o,s,r){s!=mxConstants.NONE&&(e.save(),e.setFillColor(s),e.rect(0,0,a,i),e.fillAndStroke(),e.restore(),e.setShadow(!1)),e.begin(),e.moveTo(0,o),e.lineTo(0,0),e.lineTo(a,0),e.lineTo(a,o),r&&e.close(),e.fillAndStroke(),o<i&&s==mxConstants.NONE&&(e.pointerEvents=!1,e.begin(),e.moveTo(0,o),e.lineTo(0,i),e.lineTo(a,i),e.lineTo(a,o),e.stroke())},mxSwimlane.prototype.paintRoundedSwimlane=function(e,t,n,a,i,o,s,r,l){r!=mxConstants.NONE&&(e.save(),e.setFillColor(r),e.roundrect(0,0,a,i,s,s),e.fillAndStroke(),e.restore(),e.setShadow(!1)),e.begin(),e.moveTo(a,o),e.lineTo(a,s),e.quadTo(a,0,a-Math.min(a/2,s),0),e.lineTo(Math.min(a/2,s),0),e.quadTo(0,0,0,s),e.lineTo(0,o),l&&e.close(),e.fillAndStroke(),o<i&&r==mxConstants.NONE&&(e.pointerEvents=!1,e.begin(),e.moveTo(0,o),e.lineTo(0,i-s),e.quadTo(0,i,Math.min(a/2,s),i),e.lineTo(a-Math.min(a/2,s),i),e.quadTo(a,i,a,i-s),e.lineTo(a,o),e.stroke())},mxSwimlane.prototype.paintSeparator=function(e,t,n,a,i){i!=mxConstants.NONE&&(e.setStrokeColor(i),e.setDashed(!0),e.begin(),e.moveTo(t,n),e.lineTo(t,a),e.stroke(),e.setDashed(!1))},mxSwimlane.prototype.getImageBounds=function(e,t,n,a){return new mxRectangle(e+n-this.imageSize,t,this.imageSize,this.imageSize)},mxGraphLayout.prototype.graph=null,mxGraphLayout.prototype.useBoundingBox=!0,mxGraphLayout.prototype.parent=null,mxGraphLayout.prototype.moveCell=function(e,t,n){},mxGraphLayout.prototype.execute=function(e){},mxGraphLayout.prototype.getGraph=function(){return this.graph},mxGraphLayout.prototype.getConstraint=function(e,t,n,a){return n=this.graph.view.getState(t),t=null!=n?n.style:this.graph.getCellStyle(t),null!=t?t[e]:null},mxGraphLayout.traverse=function(e,t,n,a,i){if(null!=n&&null!=e){t=null==t||t,i=i||[];var o=mxCellPath.create(e);if(null==i[o]&&(i[o]=e,null==(a=n(e,a))||a)&&0<(a=this.graph.model.getEdgeCount(e)))for(o=0;o<a;o++){var s=this.graph.model.getEdgeAt(e,o),r=this.graph.model.getTerminal(s,!0)==e;t&&!r||(r=this.graph.view.getVisibleTerminal(s,!r),this.traverse(r,t,n,s,i))}}},mxGraphLayout.prototype.isVertexMovable=function(e){return this.graph.isCellMovable(e)},mxGraphLayout.prototype.isVertexIgnored=function(e){return!this.graph.getModel().isVertex(e)||!this.graph.isCellVisible(e)},mxGraphLayout.prototype.isEdgeIgnored=function(e){var t=this.graph.getModel();return!t.isEdge(e)||!this.graph.isCellVisible(e)||null==t.getTerminal(e,!0)||null==t.getTerminal(e,!1)},mxGraphLayout.prototype.setEdgeStyleEnabled=function(e,t){this.graph.setCellStyles(mxConstants.STYLE_NOEDGESTYLE,t?"0":"1",[e])},mxGraphLayout.prototype.setOrthogonalEdge=function(e,t){this.graph.setCellStyles(mxConstants.STYLE_ORTHOGONAL,t?"1":"0",[e])},mxGraphLayout.prototype.getParentOffset=function(e){var t=new mxPoint;if(null!=e&&e!=this.parent){var n=this.graph.getModel();if(n.isAncestor(this.parent,e))for(var a=n.getGeometry(e);e!=this.parent;)t.x+=a.x,t.y+=a.y,e=n.getParent(e),a=n.getGeometry(e)}return t},mxGraphLayout.prototype.setEdgePoints=function(e,t){if(null!=e){var n=this.graph.model,a=n.getGeometry(e);if(null==a?(a=new mxGeometry).setRelative(!0):a=a.clone(),null!=this.parent&&null!=t)for(var i=n.getParent(e),i=this.getParentOffset(i),o=0;o<t.length;o++)t[o].x-=i.x,t[o].y-=i.y;a.points=t,n.setGeometry(e,a)}},mxGraphLayout.prototype.setVertexLocation=function(e,t,n){var a=this.graph.getModel(),i=a.getGeometry(e),o=null;if(null!=i){if(o=new mxRectangle(t,n,i.width,i.height),this.useBoundingBox){var s=this.graph.getView().getState(e);if(null!=s&&null!=s.text&&null!=s.text.boundingBox){var r=this.graph.getView().scale,l=s.text.boundingBox;s.text.boundingBox.x<s.x&&(t+=(s.x-l.x)/r,o.width=l.width),s.text.boundingBox.y<s.y&&(n+=(s.y-l.y)/r,o.height=l.height)}}null!=this.parent&&null!=(s=a.getParent(e))&&s!=this.parent&&(s=this.getParentOffset(s),t-=s.x,n-=s.y),i.x==t&&i.y==n||(i=i.clone(),i.x=t,i.y=n,a.setGeometry(e,i))}return o},mxGraphLayout.prototype.getVertexBounds=function(e){r=this.graph.getModel().getGeometry(e);if(this.useBoundingBox&&null!=(s=this.graph.getView().getState(e))&&null!=s.text&&null!=s.text.boundingBox)var t=this.graph.getView().scale,n=s.text.boundingBox,a=Math.max(s.x-n.x,0)/t,i=Math.max(s.y-n.y,0)/t,o=Math.max(n.x+n.width-(s.x+s.width),0)/t,s=Math.max(n.y+n.height-(s.y+s.height),0)/t,r=new mxRectangle(r.x-a,r.y-i,r.width+a+o,r.height+i+s);return null!=this.parent&&(e=this.graph.getModel().getParent(e),r=r.clone(),null!=e&&e!=this.parent&&(e=this.getParentOffset(e),r.x+=e.x,r.y+=e.y)),new mxRectangle(r.x,r.y,r.width,r.height)},mxGraphLayout.prototype.arrangeGroups=function(e,t){this.graph.getModel().beginUpdate();try{for(var n=e.length-1;0<=n;n--){var a=e[n],i=this.graph.getChildVertices(a),o=this.graph.getBoundingBoxFromGeometry(i),s=this.graph.getCellGeometry(a),r=0,l=0;if(this.graph.isSwimlane(a))var d=this.graph.getStartSize(a),r=d.width,l=d.height;null!=o&&null!=s&&(s=s.clone(),s.x=s.x+o.x-t-r,s.y=s.y+o.y-t-l,s.width=o.width+2*t+r,s.height=o.height+2*t+l,this.graph.getModel().setGeometry(a,s),this.graph.moveCells(i,t+r-o.x,t+l-o.y))}}finally{this.graph.getModel().endUpdate()}},mxStackLayout.prototype=new mxGraphLayout,mxStackLayout.prototype.constructor=mxStackLayout,mxStackLayout.prototype.horizontal=null,mxStackLayout.prototype.spacing=null,mxStackLayout.prototype.x0=null,mxStackLayout.prototype.y0=null,mxStackLayout.prototype.border=0,mxStackLayout.prototype.keepFirstLocation=!1,mxStackLayout.prototype.fill=!1,mxStackLayout.prototype.resizeParent=!1,mxStackLayout.prototype.resizeLast=!1,mxStackLayout.prototype.wrap=null,mxStackLayout.prototype.isHorizontal=function(){return this.horizontal},mxStackLayout.prototype.moveCell=function(e,t,n){var a=this.graph.getModel(),i=a.getParent(e),o=this.isHorizontal();if(null!=e&&null!=i){var s=0,r=0,l=a.getChildCount(i);for(t=o?t:n,null!=(s=this.graph.getView().getState(i))&&(t-=o?s.x:s.y),s=0;s<l;s++)if((n=a.getChildAt(i,s))!=e&&null!=(n=a.getGeometry(n))){if(n=o?n.x+n.width/2:n.y+n.height/2,r<t&&n>t)break;r=n}o=i.getIndex(e),o=Math.max(0,s-(s>o?1:0)),a.add(i,e,o)}},mxStackLayout.prototype.getParentSize=function(e){var t=this.graph.getModel(),n=t.getGeometry(e);return null!=this.graph.container&&(null==n&&t.isLayer(e)||e==this.graph.getView().currentRoot)&&(n=new mxRectangle(0,0,this.graph.container.offsetWidth-1,this.graph.container.offsetHeight-1)),n},mxStackLayout.prototype.execute=function(e){if(null!=e){var t=this.isHorizontal(),n=this.graph.getModel(),a=this.getParentSize(e),i=0;null!=a&&(i=t?a.height:a.width);var i=i-(2*this.spacing+2*this.border),o=this.x0+this.border,s=this.y0+this.border;if(this.graph.isSwimlane(e)){var r=this.graph.getCellStyle(e),l=mxUtils.getValue(r,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE);t==(r=mxUtils.getValue(r,mxConstants.STYLE_HORIZONTAL,!0))&&(i-=l),t?s+=l:o+=l}n.beginUpdate();try{for(var l=0,r=null,d=n.getChildCount(e),c=0;c<d;c++){var m=n.getChildAt(e,c);if(!this.isVertexIgnored(m)&&this.isVertexMovable(m)){var u=n.getGeometry(m);null!=u&&(u=u.clone(),null!=this.wrap&&null!=r&&(t&&r.x+r.width+u.width+2*this.spacing>this.wrap||!t&&r.y+r.height+u.height+2*this.spacing>this.wrap)&&(r=null,t?s+=l+this.spacing:o+=l+this.spacing,l=0),l=Math.max(l,t?u.height:u.width),null!=r?t?u.x=r.x+r.width+this.spacing:u.y=r.y+r.height+this.spacing:this.keepFirstLocation||(t?u.x=o:u.y=s),t?u.y=s:u.x=o,this.fill&&0<i&&(t?u.height=i:u.width=i),n.setGeometry(m,u),r=u)}}this.resizeParent&&null!=a&&null!=r&&!this.graph.isCellCollapsed(e)?(a=a.clone(),t?a.width=r.x+r.width+this.spacing:a.height=r.y+r.height+this.spacing,n.setGeometry(e,a)):this.resizeLast&&null!=a&&null!=r&&(t?r.width=a.width-r.x-this.spacing:r.height=a.height-r.y-this.spacing)}finally{n.endUpdate()}}},mxPartitionLayout.prototype=new mxGraphLayout,mxPartitionLayout.prototype.constructor=mxPartitionLayout,mxPartitionLayout.prototype.horizontal=null,mxPartitionLayout.prototype.spacing=null,mxPartitionLayout.prototype.border=null,mxPartitionLayout.prototype.resizeVertices=!0,mxPartitionLayout.prototype.isHorizontal=function(){return this.horizontal},mxPartitionLayout.prototype.moveCell=function(e,t,n){var a=(n=this.graph.getModel()).getParent(e);if(null!=e&&null!=a){for(var i=0,o=0,s=n.getChildCount(a),i=0;i<s;i++){var r=n.getChildAt(a,i);if(null!=(r=this.getVertexBounds(r))){if(r=r.x+r.width/2,o<t&&r>t)break;o=r}}t=a.getIndex(e),t=Math.max(0,i-(i>t?1:0)),n.add(a,e,t)}},mxPartitionLayout.prototype.execute=function(e){var t=this.isHorizontal(),n=this.graph.getModel(),a=n.getGeometry(e);if(null!=this.graph.container&&(null==a&&n.isLayer(e)||e==this.graph.getView().currentRoot)&&(a=new mxRectangle(0,0,this.graph.container.offsetWidth-1,this.graph.container.offsetHeight-1)),null!=a){for(var i=[],o=n.getChildCount(e),s=0;s<o;s++){c=n.getChildAt(e,s);!this.isVertexIgnored(c)&&this.isVertexMovable(c)&&i.push(c)}if(0<(o=i.length)){var r=this.border,l=this.border,d=(d=t?a.height:a.width)-2*this.border;if(e=this.graph.isSwimlane(e)?this.graph.getStartSize(e):new mxRectangle,d-=t?e.height:e.width,r+=e.width,l+=e.height,e=this.border+(o-1)*this.spacing,0<(a=t?(a.width-r-e)/o:(a.height-l-e)/o)){n.beginUpdate();try{for(s=0;s<o;s++){var c=i[s],m=n.getGeometry(c);null!=m&&(m=m.clone(),m.x=r,m.y=l,t?(this.resizeVertices&&(m.width=a,m.height=d),r+=a+this.spacing):(this.resizeVertices&&(m.height=a,m.width=d),l+=a+this.spacing),n.setGeometry(c,m))}}finally{n.endUpdate()}}}}},mxCompactTreeLayout.prototype=new mxGraphLayout,mxCompactTreeLayout.prototype.constructor=mxCompactTreeLayout,mxCompactTreeLayout.prototype.horizontal=null,mxCompactTreeLayout.prototype.invert=null,mxCompactTreeLayout.prototype.resizeParent=!0,mxCompactTreeLayout.prototype.groupPadding=10,mxCompactTreeLayout.prototype.parentsChanged=null,mxCompactTreeLayout.prototype.moveTree=!1,mxCompactTreeLayout.prototype.levelDistance=10,mxCompactTreeLayout.prototype.nodeDistance=20,mxCompactTreeLayout.prototype.resetEdges=!0,mxCompactTreeLayout.prototype.prefHozEdgeSep=5,mxCompactTreeLayout.prototype.prefVertEdgeOff=4,mxCompactTreeLayout.prototype.minEdgeJetty=8,mxCompactTreeLayout.prototype.channelBuffer=4,mxCompactTreeLayout.prototype.edgeRouting=!0,mxCompactTreeLayout.prototype.isVertexIgnored=function(e){return mxGraphLayout.prototype.isVertexIgnored.apply(this,arguments)||0==this.graph.getConnections(e).length},mxCompactTreeLayout.prototype.isHorizontal=function(){return this.horizontal},mxCompactTreeLayout.prototype.execute=function(e,t){this.parent=e;var n=this.graph.getModel();if(null==t)if(0<this.graph.getEdges(e,n.getParent(e),this.invert,!this.invert,!1).length)t=e;else if(0<(s=this.graph.findTreeRoots(e,!0,this.invert)).length)for(var a=0;a<s.length;a++)if(!this.isVertexIgnored(s[a])&&0<this.graph.getEdges(s[a],null,this.invert,!this.invert,!1).length){t=s[a];break}if(null!=t){this.parentsChanged=this.resizeParent?{}:null,n.beginUpdate();try{var i=this.dfs(t,e);if(null!=i){this.layout(i);var o=this.graph.gridSize,s=o;if(!this.moveTree){var r=this.getVertexBounds(t);null!=r&&(o=r.x,s=r.y)}if(r=null,null!=(r=this.isHorizontal()?this.horizontalLayout(i,o,s):this.verticalLayout(i,null,o,s))){var l=a=0;0>r.x&&(a=Math.abs(o-r.x)),0>r.y&&(l=Math.abs(s-r.y)),(0!=a||0!=l)&&this.moveNode(i,a,l),this.resizeParent&&this.adjustParents(),this.edgeRouting&&this.localEdgeProcessing(i)}}}finally{n.endUpdate()}}},mxCompactTreeLayout.prototype.moveNode=function(e,t,n){for(e.x+=t,e.y+=n,this.apply(e),e=e.child;null!=e;)this.moveNode(e,t,n),e=e.next},mxCompactTreeLayout.prototype.dfs=function(e,t,n){n=null!=n?n:[];var a=mxCellPath.create(e),i=null;if(null!=e&&null==n[a]&&!this.isVertexIgnored(e)){n[a]=e;var i=this.createNode(e),a=this.graph.getModel(),o=null;e=this.graph.getEdges(e,t,this.invert,!this.invert,!1,!0);for(var s=this.graph.getView(),r=0;r<e.length;r++){d=e[r];if(!this.isEdgeIgnored(d)){this.resetEdges&&this.setEdgePoints(d,null),this.edgeRouting&&(this.setEdgeStyleEnabled(d,!1),this.setEdgePoints(d,null));var l=s.getState(d),d=null!=l?l.getVisibleTerminal(this.invert):s.getVisibleTerminal(d,this.invert);null!=(l=this.dfs(d,t,n))&&null!=a.getGeometry(d)&&(null==o?i.child=l:o.next=l,o=l)}}}return i},mxCompactTreeLayout.prototype.layout=function(e){if(null!=e){for(var t=e.child;null!=t;)this.layout(t),t=t.next;null!=e.child?this.attachParent(e,this.join(e)):this.layoutLeaf(e)}},mxCompactTreeLayout.prototype.horizontalLayout=function(e,t,n,a){if(e.x+=t+e.offsetX,e.y+=n+e.offsetY,a=this.apply(e,a),null!=(t=e.child)){a=this.horizontalLayout(t,e.x,e.y,a),n=e.y+t.offsetY;for(var i=t.next;null!=i;)a=this.horizontalLayout(i,e.x+t.offsetX,n,a),n+=i.offsetY,i=i.next}return a},mxCompactTreeLayout.prototype.verticalLayout=function(e,t,n,a,i){if(e.x+=n+e.offsetY,e.y+=a+e.offsetX,i=this.apply(e,i),null!=(t=e.child))for(i=this.verticalLayout(t,e,e.x,e.y,i),n=e.x+t.offsetY,a=t.next;null!=a;)i=this.verticalLayout(a,e,n,e.y+t.offsetX,i),n+=a.offsetY,a=a.next;return i},mxCompactTreeLayout.prototype.attachParent=function(e,t){var n=this.nodeDistance+this.levelDistance,a=(t-e.width)/2-this.nodeDistance,i=a+e.width+2*this.nodeDistance-t;e.child.offsetX=n+e.height,e.child.offsetY=i,e.contour.upperHead=this.createLine(e.height,0,this.createLine(n,i,e.contour.upperHead)),e.contour.lowerHead=this.createLine(e.height,0,this.createLine(n,a,e.contour.lowerHead))},mxCompactTreeLayout.prototype.layoutLeaf=function(e){var t=2*this.nodeDistance;e.contour.upperTail=this.createLine(e.height+t,0),e.contour.upperHead=e.contour.upperTail,e.contour.lowerTail=this.createLine(0,-e.width-t),e.contour.lowerHead=this.createLine(e.height+t,0,e.contour.lowerTail)},mxCompactTreeLayout.prototype.join=function(e){var t=2*this.nodeDistance,n=e.child;e.contour=n.contour;for(var a=n.width+t,i=a,n=n.next;null!=n;){var o=this.merge(e.contour,n.contour);n.offsetY=o+a,n.offsetX=0,i+=o+(a=n.width+t),n=n.next}return i},mxCompactTreeLayout.prototype.merge=function(e,t){for(var n=0,a=0,i=0,o=e.lowerHead,s=t.upperHead;null!=s&&null!=o;){var r=this.offset(n,a,s.dx,s.dy,o.dx,o.dy),a=a+r,i=i+r;n+s.dx<=o.dx?(n+=s.dx,a+=s.dy,s=s.next):(n-=o.dx,a-=o.dy,o=o.next)}return null!=s?(n=this.bridge(e.upperTail,0,0,s,n,a),e.upperTail=null!=n.next?t.upperTail:n,e.lowerTail=t.lowerTail):null==(n=this.bridge(t.lowerTail,n,a,o,0,0)).next&&(e.lowerTail=n),e.lowerHead=t.lowerHead,i},mxCompactTreeLayout.prototype.offset=function(e,t,n,a,i,o){var s=0;return i<=e||0>=e+n?0:(s=0<i*a-n*o?0>e?e*a/n-t:0<e?e*o/i-t:-t:i<e+n?o-(t+(i-e)*a/n):i>e+n?(n+e)*o/i-(t+a):o-(t+a),0<s?s:0)},mxCompactTreeLayout.prototype.bridge=function(e,t,n,a,i,o){return t=i+a.dx-t,i=i=0,0==a.dx?i=a.dy:(i=t*a.dy,i/=a.dx),t=this.createLine(t,i,a.next),e.next=this.createLine(0,o+a.dy-i-n,t),t},mxCompactTreeLayout.prototype.createNode=function(e){var t={};return t.cell=e,t.x=0,t.y=0,t.width=0,t.height=0,null!=(e=this.getVertexBounds(e))&&(this.isHorizontal()?(t.width=e.height,t.height=e.width):(t.width=e.width,t.height=e.height)),t.offsetX=0,t.offsetY=0,t.contour={},t},mxCompactTreeLayout.prototype.apply=function(e,t){var n=this.graph.getModel(),a=e.cell,i=n.getGeometry(a);return null!=a&&null!=i&&(this.isVertexMovable(a)&&(i=this.setVertexLocation(a,e.x,e.y),this.resizeParent&&(n=n.getParent(a),a=mxCellPath.create(n),null==this.parentsChanged[a]&&(this.parentsChanged[a]=n))),t=null==t?new mxRectangle(i.x,i.y,i.width,i.height):new mxRectangle(Math.min(t.x,i.x),Math.min(t.y,i.y),Math.max(t.x+t.width,i.x+i.width),Math.max(t.y+t.height,i.y+i.height))),t},mxCompactTreeLayout.prototype.createLine=function(e,t,n){var a={};return a.dx=e,a.dy=t,a.next=n,a},mxCompactTreeLayout.prototype.adjustParents=function(){var e,t=[];for(e in this.parentsChanged)t.push(this.parentsChanged[e]);this.arrangeGroups(mxUtils.sortCells(t,!0),this.groupPadding)},mxCompactTreeLayout.prototype.localEdgeProcessing=function(e){for(this.processNodeOutgoing(e),e=e.child;null!=e;)this.localEdgeProcessing(e),e=e.next},mxCompactTreeLayout.prototype.processNodeOutgoing=function(e){for(var t=e.child,n=e.cell,a=0,i=[];null!=t;){a++;o=t.x;this.horizontal&&(o=t.y),i.push(new WeightedCellSorter(t,o)),t=t.next}i.sort(WeightedCellSorter.prototype.compare),(o=e.width)>(s=(a+1)*this.prefHozEdgeSep)+2*this.prefHozEdgeSep&&(o-=2*this.prefHozEdgeSep),t=(e=o/a)/2,o>s+2*this.prefHozEdgeSep&&(t+=this.prefHozEdgeSep);for(var o=this.minEdgeJetty-this.prefVertEdgeOff,s=0,r=this.getVertexBounds(n),l=0;l<i.length;l++){for(var d=i[l].cell.cell,c=this.getVertexBounds(d),d=this.graph.getEdgesBetween(n,d,!1),m=[],u=0,p=0,g=0;g<d.length;g++)this.horizontal?(u=r.x+r.width,p=r.y+t,m.push(new mxPoint(u,p)),u=r.x+r.width+o,m.push(new mxPoint(u,p)),p=c.y+c.height/2):(u=r.x+t,p=r.y+r.height,m.push(new mxPoint(u,p)),p=r.y+r.height+o,m.push(new mxPoint(u,p)),u=c.x+c.width/2),m.push(new mxPoint(u,p)),this.setEdgePoints(d[g],m);l<a/2?o+=this.prefVertEdgeOff:l>a/2&&(o-=this.prefVertEdgeOff),t+=e,s=Math.max(s,o)}},WeightedCellSorter.prototype.weightedValue=0,WeightedCellSorter.prototype.nudge=!1,WeightedCellSorter.prototype.visited=!1,WeightedCellSorter.prototype.rankIndex=null,WeightedCellSorter.prototype.cell=null,WeightedCellSorter.prototype.compare=function(e,t){return null!=e&&null!=t?t.weightedValue>e.weightedValue?1:t.weightedValue<e.weightedValue?-1:t.nudge?1:-1:0},mxFastOrganicLayout.prototype=new mxGraphLayout,mxFastOrganicLayout.prototype.constructor=mxFastOrganicLayout,mxFastOrganicLayout.prototype.useInputOrigin=!0,mxFastOrganicLayout.prototype.resetEdges=!0,mxFastOrganicLayout.prototype.disableEdgeStyle=!0,mxFastOrganicLayout.prototype.forceConstant=50,mxFastOrganicLayout.prototype.forceConstantSquared=0,mxFastOrganicLayout.prototype.minDistanceLimit=2,mxFastOrganicLayout.prototype.maxDistanceLimit=500,mxFastOrganicLayout.prototype.minDistanceLimitSquared=4,mxFastOrganicLayout.prototype.initialTemp=200,mxFastOrganicLayout.prototype.temperature=0,mxFastOrganicLayout.prototype.maxIterations=0,mxFastOrganicLayout.prototype.iteration=0,mxFastOrganicLayout.prototype.allowedToRun=!0,mxFastOrganicLayout.prototype.isVertexIgnored=function(e){return mxGraphLayout.prototype.isVertexIgnored.apply(this,arguments)||0==this.graph.getConnections(e).length},mxFastOrganicLayout.prototype.execute=function(e){var t=this.graph.getModel();this.vertexArray=[];for(var n=this.graph.getChildVertices(e),a=0;a<n.length;a++)this.isVertexIgnored(n[a])||this.vertexArray.push(n[a]);var i=this.useInputOrigin?this.graph.view.getBounds(this.vertexArray):null,o=this.vertexArray.length;for(this.indices=[],this.dispX=[],this.dispY=[],this.cellLocation=[],this.isMoveable=[],this.neighbours=[],this.radius=[],this.radiusSquared=[],.001>this.forceConstant&&(this.forceConstant=.001),this.forceConstantSquared=this.forceConstant*this.forceConstant,a=0;a<this.vertexArray.length;a++){var s=this.vertexArray[a];this.cellLocation[a]=[];p=mxCellPath.create(s);this.indices[p]=a;var r=this.getVertexBounds(s),l=r.width,d=r.height,c=r.x,m=r.y;this.cellLocation[a][0]=c+l/2,this.cellLocation[a][1]=m+d/2,this.radius[a]=Math.min(l,d),this.radiusSquared[a]=this.radius[a]*this.radius[a]}t.beginUpdate();try{for(a=0;a<o;a++){this.dispX[a]=0,this.dispY[a]=0,this.isMoveable[a]=this.isVertexMovable(this.vertexArray[a]);var u=this.graph.getConnections(this.vertexArray[a],e),n=this.graph.getOpposites(u,this.vertexArray[a]);for(this.neighbours[a]=[],l=0;l<n.length;l++){this.resetEdges&&this.graph.resetEdge(u[l]),this.disableEdgeStyle&&this.setEdgeStyleEnabled(u[l],!1);var p=mxCellPath.create(n[l]),g=this.indices[p];this.neighbours[a][l]=null!=g?g:a}}for(this.temperature=this.initialTemp,0==this.maxIterations&&(this.maxIterations=20*Math.sqrt(o)),this.iteration=0;this.iteration<this.maxIterations;this.iteration++){if(!this.allowedToRun)return;this.calcRepulsion(),this.calcAttraction(),this.calcPositions(),this.reduceTemperature()}for(e=n=null,a=0;a<this.vertexArray.length;a++)s=this.vertexArray[a],this.isVertexMovable(s)&&null!=(r=this.getVertexBounds(s))&&(this.cellLocation[a][0]-=r.width/2,this.cellLocation[a][1]-=r.height/2,c=this.graph.snap(this.cellLocation[a][0]),m=this.graph.snap(this.cellLocation[a][1]),this.setVertexLocation(s,c,m),n=null==n?c:Math.min(n,c),e=null==e?m:Math.min(e,m));a=1-(n||0),s=1-(e||0),null!=i&&(a+=i.x,s+=i.y),this.graph.moveCells(this.vertexArray,a,s)}finally{t.endUpdate()}},mxFastOrganicLayout.prototype.calcPositions=function(){for(var e=0;e<this.vertexArray.length;e++)if(this.isMoveable[e]){.001>(n=Math.sqrt(this.dispX[e]*this.dispX[e]+this.dispY[e]*this.dispY[e]))&&(n=.001);var t=this.dispX[e]/n*Math.min(n,this.temperature),n=this.dispY[e]/n*Math.min(n,this.temperature);this.dispX[e]=0,this.dispY[e]=0,this.cellLocation[e][0]+=t,this.cellLocation[e][1]+=n}},mxFastOrganicLayout.prototype.calcAttraction=function(){for(var e=0;e<this.vertexArray.length;e++)for(var t=0;t<this.neighbours[e].length;t++){var n=this.neighbours[e][t];if(e!=n&&this.isMoveable[e]&&this.isMoveable[n]){var a=(o=this.cellLocation[e][0]-this.cellLocation[n][0])*o+(s=this.cellLocation[e][1]-this.cellLocation[n][1])*s-this.radiusSquared[e]-this.radiusSquared[n];a<this.minDistanceLimitSquared&&(a=this.minDistanceLimitSquared);var i=Math.sqrt(a),o=o/i*(a=a/this.forceConstant),s=s/i*a;this.dispX[e]-=o,this.dispY[e]-=s,this.dispX[n]+=o,this.dispY[n]+=s}}},mxFastOrganicLayout.prototype.calcRepulsion=function(){for(var e=this.vertexArray.length,t=0;t<e;t++)for(var n=t;n<e;n++){if(!this.allowedToRun)return;if(n!=t&&this.isMoveable[t]&&this.isMoveable[n]){var a=this.cellLocation[t][0]-this.cellLocation[n][0],i=this.cellLocation[t][1]-this.cellLocation[n][1];0==a&&(a=.01+Math.random()),0==i&&(i=.01+Math.random());var o=Math.sqrt(a*a+i*i),s=o-this.radius[t]-this.radius[n];s>this.maxDistanceLimit||(s<this.minDistanceLimit&&(s=this.minDistanceLimit),s=this.forceConstantSquared/s,a=a/o*s,i=i/o*s,this.dispX[t]+=a,this.dispY[t]+=i,this.dispX[n]-=a,this.dispY[n]-=i)}}},mxFastOrganicLayout.prototype.reduceTemperature=function(){this.temperature=this.initialTemp*(1-this.iteration/this.maxIterations)},mxCircleLayout.prototype=new mxGraphLayout,mxCircleLayout.prototype.constructor=mxCircleLayout,mxCircleLayout.prototype.radius=null,mxCircleLayout.prototype.moveCircle=!1,mxCircleLayout.prototype.x0=0,mxCircleLayout.prototype.y0=0,mxCircleLayout.prototype.resetEdges=!0,mxCircleLayout.prototype.disableEdgeStyle=!0,mxCircleLayout.prototype.execute=function(e){var t=this.graph.getModel();t.beginUpdate();try{for(var n=0,a=null,i=null,o=[],s=t.getChildCount(e),r=0;r<s;r++){var l=t.getChildAt(e,r);if(this.isVertexIgnored(l))this.isEdgeIgnored(l)||(this.resetEdges&&this.graph.resetEdge(l),this.disableEdgeStyle&&this.setEdgeStyleEnabled(l,!1));else{o.push(l);var d=this.getVertexBounds(l),a=null==a?d.y:Math.min(a,d.y),i=null==i?d.x:Math.min(i,d.x),n=Math.max(n,Math.max(d.width,d.height))}}var c=this.getRadius(o.length,n);this.moveCircle&&(i=this.x0,a=this.y0),this.circle(o,c,i,a)}finally{t.endUpdate()}},mxCircleLayout.prototype.getRadius=function(e,t){return Math.max(e*t/Math.PI,this.radius)},mxCircleLayout.prototype.circle=function(e,t,n,a){for(var i=e.length,o=2*Math.PI/i,s=0;s<i;s++)this.isVertexMovable(e[s])&&this.setVertexLocation(e[s],n+t+t*Math.sin(s*o),a+t+t*Math.cos(s*o))},mxParallelEdgeLayout.prototype=new mxGraphLayout,mxParallelEdgeLayout.prototype.constructor=mxParallelEdgeLayout,mxParallelEdgeLayout.prototype.spacing=20,mxParallelEdgeLayout.prototype.execute=function(e){e=this.findParallels(e),this.graph.model.beginUpdate();try{for(var t in e){var n=e[t];1<n.length&&this.layout(n)}}finally{this.graph.model.endUpdate()}},mxParallelEdgeLayout.prototype.findParallels=function(e){for(var t=this.graph.getModel(),n=[],a=t.getChildCount(e),i=0;i<a;i++){var o=t.getChildAt(e,i);if(!this.isEdgeIgnored(o)){var s=this.getEdgeId(o);null!=s&&(null==n[s]&&(n[s]=[]),n[s].push(o))}}return n},mxParallelEdgeLayout.prototype.getEdgeId=function(e){var t=this.graph.getView(),n=t.getState(e),a=null!=n?n.getVisibleTerminal(!0):t.getVisibleTerminal(e,!0);return e=null!=n?n.getVisibleTerminal(!1):t.getVisibleTerminal(e,!1),null!=a&&null!=e?(a=mxCellPath.create(a),e=mxCellPath.create(e),a>e?e+"-"+a:a+"-"+e):null},mxParallelEdgeLayout.prototype.layout=function(e){t=e[0];if((s=(n=this.graph.getModel()).getGeometry(n.getTerminal(t,!0)))==(o=n.getGeometry(n.getTerminal(t,!1))))for(var t=s.x+s.width+this.spacing,n=s.y+s.height/2,a=0;a<e.length;a++)this.route(e[a],t,n),t+=this.spacing;else if(null!=s&&null!=o)for(var t=s.x+s.width/2,n=s.y+s.height/2,a=o.x+o.width/2-t,i=o.y+o.height/2-n,o=Math.sqrt(a*a+i*i),s=i*this.spacing/o,o=a*this.spacing/o,t=t+a/2+s*(e.length-1)/2,n=n+i/2-o*(e.length-1)/2,a=0;a<e.length;a++)this.route(e[a],t,n),t-=s,n+=o},mxParallelEdgeLayout.prototype.route=function(e,t,n){this.graph.isCellMovable(e)&&this.setEdgePoints(e,[new mxPoint(t,n)])},mxCompositeLayout.prototype=new mxGraphLayout,mxCompositeLayout.prototype.constructor=mxCompositeLayout,mxCompositeLayout.prototype.layouts=null,mxCompositeLayout.prototype.master=null,mxCompositeLayout.prototype.moveCell=function(e,t,n){null!=this.master?this.master.move.apply(this.master,arguments):this.layouts[0].move.apply(this.layouts[0],arguments)},mxCompositeLayout.prototype.execute=function(e){var t=this.graph.getModel();t.beginUpdate();try{for(var n=0;n<this.layouts.length;n++)this.layouts[n].execute.apply(this.layouts[n],arguments)}finally{t.endUpdate()}},mxEdgeLabelLayout.prototype=new mxGraphLayout,mxEdgeLabelLayout.prototype.constructor=mxEdgeLabelLayout,mxEdgeLabelLayout.prototype.execute=function(e){for(var t=this.graph.view,n=this.graph.getModel(),a=[],i=[],o=n.getChildCount(e),s=0;s<o;s++){var r=n.getChildAt(e,s),l=t.getState(r);null!=l&&(this.isVertexIgnored(r)?this.isEdgeIgnored(r)||a.push(l):i.push(l))}this.placeLabels(i,a)},mxEdgeLabelLayout.prototype.placeLabels=function(e,t){var n=this.graph.getModel();n.beginUpdate();try{for(var a=0;a<t.length;a++){var i=t[a];if(null!=i&&null!=i.text&&null!=i.text.boundingBox)for(var o=0;o<e.length;o++){var s=e[o];null!=s&&this.avoid(i,s)}}}finally{n.endUpdate()}},mxEdgeLabelLayout.prototype.avoid=function(e,t){var n=this.graph.getModel(),a=e.text.boundingBox;if(mxUtils.intersects(a,t)){var i=-a.y-a.height+t.y,o=-a.y+t.y+t.height,i=Math.abs(i)<Math.abs(o)?i:o,o=-a.x-a.width+t.x,a=-a.x+t.x+t.width,a=Math.abs(o)<Math.abs(a)?o:a;Math.abs(a)<Math.abs(i)?i=0:a=0,null!=(o=n.getGeometry(e.cell))&&(o=o.clone(),null!=o.offset?(o.offset.x+=a,o.offset.y+=i):o.offset=new mxPoint(a,i),n.setGeometry(e.cell,o))}},mxGraphAbstractHierarchyCell.prototype.maxRank=-1,mxGraphAbstractHierarchyCell.prototype.minRank=-1,mxGraphAbstractHierarchyCell.prototype.x=null,mxGraphAbstractHierarchyCell.prototype.y=null,mxGraphAbstractHierarchyCell.prototype.width=0,mxGraphAbstractHierarchyCell.prototype.height=0,mxGraphAbstractHierarchyCell.prototype.nextLayerConnectedCells=null,mxGraphAbstractHierarchyCell.prototype.previousLayerConnectedCells=null,mxGraphAbstractHierarchyCell.prototype.temp=null,mxGraphAbstractHierarchyCell.prototype.getNextLayerConnectedCells=function(e){return null},mxGraphAbstractHierarchyCell.prototype.getPreviousLayerConnectedCells=function(e){return null},mxGraphAbstractHierarchyCell.prototype.isEdge=function(){return!1},mxGraphAbstractHierarchyCell.prototype.isVertex=function(){return!1},mxGraphAbstractHierarchyCell.prototype.getGeneralPurposeVariable=function(e){return null},mxGraphAbstractHierarchyCell.prototype.setGeneralPurposeVariable=function(e,t){return null},mxGraphAbstractHierarchyCell.prototype.setX=function(e,t){this.isVertex()?this.x[0]=t:this.isEdge()&&(this.x[e-this.minRank-1]=t)},mxGraphAbstractHierarchyCell.prototype.getX=function(e){return this.isVertex()?this.x[0]:this.isEdge()?this.x[e-this.minRank-1]:0},mxGraphAbstractHierarchyCell.prototype.setY=function(e,t){this.isVertex()?this.y[0]=t:this.isEdge()&&(this.y[e-this.minRank-1]=t)},mxGraphHierarchyNode.prototype=new mxGraphAbstractHierarchyCell,mxGraphHierarchyNode.prototype.constructor=mxGraphHierarchyNode,mxGraphHierarchyNode.prototype.cell=null,mxGraphHierarchyNode.prototype.connectsAsTarget=[],mxGraphHierarchyNode.prototype.connectsAsSource=[],mxGraphHierarchyNode.prototype.hashCode=!1,mxGraphHierarchyNode.prototype.getRankValue=function(e){return this.maxRank},mxGraphHierarchyNode.prototype.getNextLayerConnectedCells=function(e){if(null==this.nextLayerConnectedCells){this.nextLayerConnectedCells=[],this.nextLayerConnectedCells[0]=[];for(var t=0;t<this.connectsAsTarget.length;t++){var n=this.connectsAsTarget[t];-1==n.maxRank||n.maxRank==e+1?this.nextLayerConnectedCells[0].push(n.source):this.nextLayerConnectedCells[0].push(n)}}return this.nextLayerConnectedCells[0]},mxGraphHierarchyNode.prototype.getPreviousLayerConnectedCells=function(e){if(null==this.previousLayerConnectedCells){this.previousLayerConnectedCells=[],this.previousLayerConnectedCells[0]=[];for(var t=0;t<this.connectsAsSource.length;t++){var n=this.connectsAsSource[t];-1==n.minRank||n.minRank==e-1?this.previousLayerConnectedCells[0].push(n.target):this.previousLayerConnectedCells[0].push(n)}}return this.previousLayerConnectedCells[0]},mxGraphHierarchyNode.prototype.isVertex=function(){return!0},mxGraphHierarchyNode.prototype.getGeneralPurposeVariable=function(e){return this.temp[0]},mxGraphHierarchyNode.prototype.setGeneralPurposeVariable=function(e,t){this.temp[0]=t},mxGraphHierarchyNode.prototype.isAncestor=function(e){if(null!=e&&null!=this.hashCode&&null!=e.hashCode&&this.hashCode.length<e.hashCode.length){if(this.hashCode==e.hashCode)return!0;if(null==this.hashCode||null==this.hashCode)return!1;for(var t=0;t<this.hashCode.length;t++)if(this.hashCode[t]!=e.hashCode[t])return!1;return!0}return!1},mxGraphHierarchyNode.prototype.getCoreCell=function(){return this.cell},mxGraphHierarchyEdge.prototype=new mxGraphAbstractHierarchyCell,mxGraphHierarchyEdge.prototype.constructor=mxGraphHierarchyEdge,mxGraphHierarchyEdge.prototype.edges=null,mxGraphHierarchyEdge.prototype.source=null,mxGraphHierarchyEdge.prototype.target=null,mxGraphHierarchyEdge.prototype.isReversed=!1,mxGraphHierarchyEdge.prototype.invert=function(e){e=this.source,this.source=this.target,this.target=e,this.isReversed=!this.isReversed},mxGraphHierarchyEdge.prototype.getNextLayerConnectedCells=function(e){if(null==this.nextLayerConnectedCells){this.nextLayerConnectedCells=[];for(var t=0;t<this.temp.length;t++)this.nextLayerConnectedCells[t]=[],t==this.temp.length-1?this.nextLayerConnectedCells[t].push(this.source):this.nextLayerConnectedCells[t].push(this)}return this.nextLayerConnectedCells[e-this.minRank-1]},mxGraphHierarchyEdge.prototype.getPreviousLayerConnectedCells=function(e){if(null==this.previousLayerConnectedCells){this.previousLayerConnectedCells=[];for(var t=0;t<this.temp.length;t++)this.previousLayerConnectedCells[t]=[],0==t?this.previousLayerConnectedCells[t].push(this.target):this.previousLayerConnectedCells[t].push(this)}return this.previousLayerConnectedCells[e-this.minRank-1]},mxGraphHierarchyEdge.prototype.isEdge=function(){return!0},mxGraphHierarchyEdge.prototype.getGeneralPurposeVariable=function(e){return this.temp[e-this.minRank-1]},mxGraphHierarchyEdge.prototype.setGeneralPurposeVariable=function(e,t){this.temp[e-this.minRank-1]=t},mxGraphHierarchyEdge.prototype.getCoreCell=function(){return null!=this.edges&&0<this.edges.length?this.edges[0]:null},mxGraphHierarchyModel.prototype.maxRank=null,mxGraphHierarchyModel.prototype.vertexMapper=null,mxGraphHierarchyModel.prototype.edgeMapper=null,mxGraphHierarchyModel.prototype.ranks=null,mxGraphHierarchyModel.prototype.roots=null,mxGraphHierarchyModel.prototype.parent=null,mxGraphHierarchyModel.prototype.dfsCount=0,mxGraphHierarchyModel.prototype.SOURCESCANSTARTRANK=1e8,mxGraphHierarchyModel.prototype.tightenToSource=!1,mxGraphHierarchyModel.prototype.createInternalCells=function(e,t,n){for(var a=e.getGraph(),i=0;i<t.length;i++){n[i]=new mxGraphHierarchyNode(t[i]);var o=mxCellPath.create(t[i]);this.vertexMapper[o]=n[i],o=e.getEdges(t[i]),n[i].connectsAsSource=[];for(var s=0;s<o.length;s++)if((d=e.getVisibleTerminal(o[s],!1))!=t[i]&&d!=t[i]&&e.graph.model.isVertex(d)&&!e.isVertexIgnored(d)){var r=e.getEdgesBetween(t[i],d,!1),l=e.getEdgesBetween(t[i],d,!0),d=mxCellPath.create(r[0]);if(null!=r&&0<r.length&&null==this.edgeMapper[d]&&2*l.length>=r.length){for(var l=new mxGraphHierarchyEdge(r),c=0;c<r.length;c++){var m=r[c],d=mxCellPath.create(m);this.edgeMapper[d]=l,a.resetEdge(m),e.disableEdgeStyle&&(e.setEdgeStyleEnabled(m,!1),e.setOrthogonalEdge(m,!0))}l.source=n[i],0>mxUtils.indexOf(n[i].connectsAsSource,l)&&n[i].connectsAsSource.push(l)}}n[i].temp[0]=0}},mxGraphHierarchyModel.prototype.initialRank=function(){var e=[];if(null!=this.roots)for(l=0;l<this.roots.length;l++){var t=mxCellPath.create(this.roots[l]);null!=(t=this.vertexMapper[t])&&e.push(t)}for(var n in this.vertexMapper)t=this.vertexMapper[n],t.temp[0]=-1;for(var a=e.slice();0<e.length;){var i,o;i=(t=e[0]).connectsAsTarget,o=t.connectsAsSource;for(var s=!0,r=this.SOURCESCANSTARTRANK,l=0;l<i.length;l++){var d=i[l];if(5270620!=d.temp[0]){s=!1;break}d=d.source,r=Math.min(r,d.temp[0]-1)}if(s){if(t.temp[0]=r,this.maxRank=Math.min(this.maxRank,r),null!=o)for(l=0;l<o.length;l++)d=o[l],d.temp[0]=5270620,-1==(d=d.target).temp[0]&&(e.push(d),d.temp[0]=-2);e.shift()}else if(l=e.shift(),e.push(t),l==t&&1==e.length)break}for(n in this.vertexMapper)t=this.vertexMapper[n],t.temp[0]-=this.maxRank;for(l=0;l<a.length;l++)for(e=0,i=(t=a[l]).connectsAsSource,n=0;n<i.length;n++)d=i[n],d=d.target,t.temp[0]=Math.max(e,d.temp[0]+1),e=t.temp[0];this.maxRank=this.SOURCESCANSTARTRANK-this.maxRank},mxGraphHierarchyModel.prototype.fixRanks=function(){var e=[];this.ranks=[];for(a=0;a<this.maxRank+1;a++)e[a]=[],this.ranks[a]=e[a];n=null;if(null!=this.roots)for(var t=this.roots,n=[],a=0;a<t.length;a++){var i=mxCellPath.create(t[a]);n[a]=this.vertexMapper[i]}this.visit(function(t,n,a,i,o){if(0==o&&0>n.maxRank&&0>n.minRank&&(e[n.temp[0]].push(n),n.maxRank=n.temp[0],n.minRank=n.temp[0],n.temp[0]=e[n.maxRank].length-1),null!=t&&null!=a&&1<t.maxRank-n.maxRank)for(a.maxRank=t.maxRank,a.minRank=n.maxRank,a.temp=[],a.x=[],a.y=[],t=a.minRank+1;t<a.maxRank;t++)e[t].push(a),a.setGeneralPurposeVariable(t,e[t].length-1)},n,!1,null)},mxGraphHierarchyModel.prototype.visit=function(e,t,n,a){if(null!=t){for(var i=0;i<t.length;i++){var o=t[i];null!=o&&(null==a&&(a={}),n?(o.hashCode=[],o.hashCode[0]=this.dfsCount,o.hashCode[1]=i,this.extendedDfs(null,o,null,e,a,o.hashCode,i,0)):this.dfs(null,o,null,e,a,0))}this.dfsCount++}},mxGraphHierarchyModel.prototype.dfs=function(e,t,n,a,i,o){if(null!=t){var s=mxCellPath.create(t.cell);if(null==i[s])for(i[s]=t,a(e,t,n,o,0),e=t.connectsAsSource.slice(),n=0;n<e.length;n++)s=e[n],this.dfs(t,s.target,s,a,i,o+1);else a(e,t,n,o,1)}},mxGraphHierarchyModel.prototype.extendedDfs=function(e,t,n,a,i,o,s,r){if(null!=t)if(null==e||null!=t.hashCode&&t.hashCode[0]==e.hashCode[0]||(o=e.hashCode.length+1,t.hashCode=e.hashCode.slice(),t.hashCode[o-1]=s),s=mxCellPath.create(t.cell),null==i[s])for(i[s]=t,a(e,t,n,r,0),e=t.connectsAsSource.slice(),n=0;n<e.length;n++)s=e[n],this.extendedDfs(t,s.target,s,a,i,t.hashCode,n,r+1);else a(e,t,n,r,1)},mxHierarchicalLayoutStage.prototype.execute=function(e){},mxMedianHybridCrossingReduction.prototype=new mxHierarchicalLayoutStage,mxMedianHybridCrossingReduction.prototype.constructor=mxMedianHybridCrossingReduction,mxMedianHybridCrossingReduction.prototype.layout=null,mxMedianHybridCrossingReduction.prototype.maxIterations=24,mxMedianHybridCrossingReduction.prototype.nestedBestRanks=null,mxMedianHybridCrossingReduction.prototype.currentBestCrossings=0,mxMedianHybridCrossingReduction.prototype.iterationsWithoutImprovement=0,mxMedianHybridCrossingReduction.prototype.maxNoImprovementIterations=2,mxMedianHybridCrossingReduction.prototype.execute=function(e){e=this.layout.getModel(),this.nestedBestRanks=[];for(a=0;a<e.ranks.length;a++)this.nestedBestRanks[a]=e.ranks[a].slice();for(var t=0,n=this.calculateCrossings(e),a=0;a<this.maxIterations&&t<this.maxNoImprovementIterations;a++){this.weightedMedian(a,e),this.transpose(a,e);var i=this.calculateCrossings(e);if(i<n)for(n=i,i=t=0;i<this.nestedBestRanks.length;i++)for(var o=e.ranks[i],s=0;s<o.length;s++){var r=o[s];this.nestedBestRanks[i][r.getGeneralPurposeVariable(i)]=r}else for(t++,i=0;i<this.nestedBestRanks.length;i++)for(o=e.ranks[i],s=0;s<o.length;s++)(r=o[s]).setGeneralPurposeVariable(i,s);if(0==n)break}for(t=[],n=[],a=0;a<e.maxRank+1;a++)n[a]=[],t[a]=n[a];for(a=0;a<this.nestedBestRanks.length;a++)for(i=0;i<this.nestedBestRanks[a].length;i++)n[a].push(this.nestedBestRanks[a][i]);e.ranks=t},mxMedianHybridCrossingReduction.prototype.calculateCrossings=function(e){for(var t=e.ranks.length,n=0,a=1;a<t;a++)n+=this.calculateRankCrossing(a,e);return n},mxMedianHybridCrossingReduction.prototype.calculateRankCrossing=function(e,t){for(var n=0,a=t.ranks[e],i=a.length,o=t.ranks[e-1].length,s=[],r=0;r<i;r++)s[r]=[];for(r=0;r<a.length;r++)for(var l=a[r],d=l.getGeneralPurposeVariable(e),c=l.getPreviousLayerConnectedCells(e),l=0;l<c.length;l++){var m=c[l].getGeneralPurposeVariable(e-1);s[d][m]=201207}for(r=0;r<i;r++)for(l=0;l<o;l++)if(201207==s[r][l]){for(a=r+1;a<i;a++)for(d=0;d<l;d++)201207==s[a][d]&&n++;for(a=0;a<r;a++)for(d=l+1;d<o;d++)201207==s[a][d]&&n++}return n/2},mxMedianHybridCrossingReduction.prototype.transpose=function(e,t){for(var n=!0,a=0;n&&10>a++;)for(var i=1==e%2&&1==a%2,n=!1,o=0;o<t.ranks.length;o++){for(var s=t.ranks[o],r=[],l=0;l<s.length;l++)0>(f=(b=s[l]).getGeneralPurposeVariable(o))&&(f=l),r[f]=b;for(var d=f=b=null,c=null,m=null,u=null,p=null,g=null,h=null,v=null,l=0;l<s.length-1;l++){if(0==l){for(var b=(h=r[l]).getNextLayerConnectedCells(o),f=h.getPreviousLayerConnectedCells(o),m=[],u=[],E=0;E<b.length;E++)m[E]=b[E].getGeneralPurposeVariable(o+1);for(E=0;E<f.length;E++)u[E]=f[E].getGeneralPurposeVariable(o-1)}else b=d,f=c,m=p,u=g,h=v;for(d=(v=r[l+1]).getNextLayerConnectedCells(o),c=v.getPreviousLayerConnectedCells(o),p=[],g=[],E=0;E<d.length;E++)p[E]=d[E].getGeneralPurposeVariable(o+1);for(E=0;E<c.length;E++)g[E]=c[E].getGeneralPurposeVariable(o-1);for(var y=0,A=0,E=0;E<m.length;E++)for(var C=0;C<p.length;C++)m[E]>p[C]&&y++,m[E]<p[C]&&A++;for(E=0;E<u.length;E++)for(C=0;C<g.length;C++)u[E]>g[C]&&y++,u[E]<g[C]&&A++;(A<y||A==y&&i)&&(d=h.getGeneralPurposeVariable(o),h.setGeneralPurposeVariable(o,v.getGeneralPurposeVariable(o)),v.setGeneralPurposeVariable(o,d),d=b,c=f,p=m,g=u,v=h,i||(n=!0))}}},mxMedianHybridCrossingReduction.prototype.weightedMedian=function(e,t){var n=0==e%2;if(n)for(var a=t.maxRank-1;0<=a;a--)this.medianRank(a,n);else for(a=1;a<t.maxRank;a++)this.medianRank(a,n)},mxMedianHybridCrossingReduction.prototype.medianRank=function(e,t){for(var n=this.nestedBestRanks[e].length,a=[],i=[],o=0;o<n;o++){var s=this.nestedBestRanks[e][o],r=new MedianCellSorter;r.cell=s;var l;l=t?s.getNextLayerConnectedCells(e):s.getPreviousLayerConnectedCells(e);var d;d=t?e+1:e-1,null!=l&&0!=l.length?(r.medianValue=this.medianValue(l,d),a.push(r)):i[s.getGeneralPurposeVariable(e)]=!0}for(a.sort(MedianCellSorter.prototype.compare),o=0;o<n;o++)null==i[o]&&(s=a.shift().cell).setGeneralPurposeVariable(e,o)},mxMedianHybridCrossingReduction.prototype.medianValue=function(e,t){for(var n=[],a=0,i=0;i<e.length;i++){var o=e[i];n[a++]=o.getGeneralPurposeVariable(t)}return n.sort(function(e,t){return e-t}),1==a%2?n[Math.floor(a/2)]:2==a?(n[0]+n[1])/2:(i=a/2,o=n[i-1]-n[0],a=n[a-1]-n[i],(n[i-1]*a+n[i]*o)/(o+a))},MedianCellSorter.prototype.medianValue=0,MedianCellSorter.prototype.cell=!1,MedianCellSorter.prototype.compare=function(e,t){return null!=e&&null!=t?t.medianValue>e.medianValue?-1:t.medianValue<e.medianValue?1:0:0},mxMinimumCycleRemover.prototype=new mxHierarchicalLayoutStage,mxMinimumCycleRemover.prototype.constructor=mxMinimumCycleRemover,mxMinimumCycleRemover.prototype.layout=null,mxMinimumCycleRemover.prototype.execute=function(e){var t=this.layout.getModel(),n={},a=mxUtils.clone(t.vertexMapper,null,!0),i=null;if(null!=t.roots){var o=t.roots,i=[];for(e=0;e<o.length;e++){var s=mxCellPath.create(o[e]);i[e]=t.vertexMapper[s]}}if(t.visit(function(e,t,i,o,s){t.isAncestor(e)&&(i.invert(),mxUtils.remove(i,e.connectsAsSource),e.connectsAsTarget.push(i),mxUtils.remove(i,t.connectsAsTarget),t.connectsAsSource.push(i)),e=mxCellPath.create(t.cell),n[e]=t,delete a[e]},i,!0,null),i=null,0<a.lenth&&(i=mxUtils.clone(a,null,!0)),e=mxUtils.clone(n,null,!0),t.visit(function(e,t,i,o,s){t.isAncestor(e)&&(i.invert(),mxUtils.remove(i,e.connectsAsSource),t.connectsAsSource.push(i),e.connectsAsTarget.push(i),mxUtils.remove(i,t.connectsAsTarget)),e=mxCellPath.create(t.cell),n[e]=t,delete a[e]},a,!0,e),o=this.layout.getGraph(),null!=i&&0<i.length)for(t=t.roots,e=0;e<i.length;e++)s=i[e].cell,0==o.getIncomingEdges(s).length&&t.push(s)};var mxHierarchicalEdgeStyle={ORTHOGONAL:1,POLYLINE:2,STRAIGHT:3,CURVE:4};mxCoordinateAssignment.prototype=new mxHierarchicalLayoutStage,mxCoordinateAssignment.prototype.constructor=mxCoordinateAssignment,mxCoordinateAssignment.prototype.layout=null,mxCoordinateAssignment.prototype.intraCellSpacing=30,mxCoordinateAssignment.prototype.interRankCellSpacing=100,mxCoordinateAssignment.prototype.parallelEdgeSpacing=10,mxCoordinateAssignment.prototype.maxIterations=8,mxCoordinateAssignment.prototype.prefHozEdgeSep=5,mxCoordinateAssignment.prototype.prefVertEdgeOff=2,mxCoordinateAssignment.prototype.minEdgeJetty=12,mxCoordinateAssignment.prototype.channelBuffer=4,mxCoordinateAssignment.prototype.jettyPositions=null,mxCoordinateAssignment.prototype.orientation=mxConstants.DIRECTION_NORTH,mxCoordinateAssignment.prototype.initialX=null,mxCoordinateAssignment.prototype.limitX=null,mxCoordinateAssignment.prototype.currentXDelta=null,mxCoordinateAssignment.prototype.widestRank=null,mxCoordinateAssignment.prototype.rankTopY=null,mxCoordinateAssignment.prototype.rankBottomY=null,mxCoordinateAssignment.prototype.widestRankValue=null,mxCoordinateAssignment.prototype.rankWidths=null,mxCoordinateAssignment.prototype.rankY=null,mxCoordinateAssignment.prototype.fineTuning=!0,mxCoordinateAssignment.prototype.edgeStyle=mxHierarchicalEdgeStyle.POLYLINE,mxCoordinateAssignment.prototype.nextLayerConnectedCache=null,mxCoordinateAssignment.prototype.previousLayerConnectedCache=null,mxCoordinateAssignment.prototype.groupPadding=10,mxCoordinateAssignment.prototype.printStatus=function(){var e=this.layout.getModel();mxLog.show(),mxLog.writeln("======Coord assignment debug=======");for(var t=0;t<e.ranks.length;t++){mxLog.write("Rank ",t," : ");for(var n=e.ranks[t],a=0;a<n.length;a++)mxLog.write(n[a].getGeneralPurposeVariable(t),"  ");mxLog.writeln()}mxLog.writeln("====================================")},mxCoordinateAssignment.prototype.execute=function(e){this.jettyPositions=[],e=this.layout.getModel(),this.currentXDelta=0,this.initialCoords(this.layout.getGraph(),e),this.fineTuning&&this.minNode(e);var t=1e8;if(this.fineTuning)for(var n=0;n<this.maxIterations;n++){if(0!=n&&(this.medianPos(n,e),this.minNode(e)),this.currentXDelta<t){for(var a=0;a<e.ranks.length;a++)for(var i=e.ranks[a],o=0;o<i.length;o++){var s=i[o];s.setX(a,s.getGeneralPurposeVariable(a))}t=this.currentXDelta}else for(a=0;a<e.ranks.length;a++)for(i=e.ranks[a],o=0;o<i.length;o++)(s=i[o]).setGeneralPurposeVariable(a,s.getX(a));this.minPath(this.layout.getGraph(),e),this.currentXDelta=0}this.setCellLocations(this.layout.getGraph(),e)},mxCoordinateAssignment.prototype.minNode=function(e){for(var t=[],n=[],a=[],i=0;i<=e.maxRank;i++){a[i]=e.ranks[i];for(var o=0;o<a[i].length;o++){d=a[i][o];(s=new WeightedCellSorter(d,i)).rankIndex=o,s.visited=!0,t.push(s),n[d=mxCellPath.create(d.getCoreCell())]=s}}for(e=10*t.length,o=0;0<t.length&&o<=e;){var s=t.shift(),i=s.cell,r=s.weightedValue,l=parseInt(s.rankIndex),d=i.getNextLayerConnectedCells(r),c=i.getPreviousLayerConnectedCells(r),m=d.length,u=c.length,p=this.medianXValue(d,r+1),g=this.medianXValue(c,r-1),h=m+u,v=i.getGeneralPurposeVariable(r),b=v;if(0<h&&(b=(p*m+g*u)/h),m=!1,b<v-1?0==l?(i.setGeneralPurposeVariable(r,b),m=!0):(l=a[r][l-1],v=l.getGeneralPurposeVariable(r),v=v+l.width/2+this.intraCellSpacing+i.width/2,v<b?(i.setGeneralPurposeVariable(r,b),m=!0):v<i.getGeneralPurposeVariable(r)-1&&(i.setGeneralPurposeVariable(r,v),m=!0)):b>v+1&&(l==a[r].length-1?(i.setGeneralPurposeVariable(r,b),m=!0):(l=a[r][l+1],v=l.getGeneralPurposeVariable(r),v=v-l.width/2-this.intraCellSpacing-i.width/2,v>b?(i.setGeneralPurposeVariable(r,b),m=!0):v>i.getGeneralPurposeVariable(r)+1&&(i.setGeneralPurposeVariable(r,v),m=!0))),m){for(i=0;i<d.length;i++)r=d[i],r=mxCellPath.create(r.getCoreCell()),null!=(r=n[r])&&0==r.visited&&(r.visited=!0,t.push(r));for(i=0;i<c.length;i++)r=c[i],r=mxCellPath.create(r.getCoreCell()),null!=(r=n[r])&&0==r.visited&&(r.visited=!0,t.push(r))}s.visited=!1,o++}},mxCoordinateAssignment.prototype.medianPos=function(e,t){if(0==e%2)for(var n=t.maxRank;0<n;n--)this.rankMedianPosition(n-1,t,n);else for(n=0;n<t.maxRank-1;n++)this.rankMedianPosition(n+1,t,n)},mxCoordinateAssignment.prototype.rankMedianPosition=function(e,t,n){t=t.ranks[e];for(var a=[],i=[],o=0;o<t.length;o++){var s=t[o];a[o]=new WeightedCellSorter,a[o].cell=s,a[o].rankIndex=o;var r=mxCellPath.create(s.getCoreCell());i[r]=a[o];var l=null,l=n<e?s.getPreviousLayerConnectedCells(e):s.getNextLayerConnectedCells(e);a[o].weightedValue=this.calculatedWeightedValue(s,l)}for(a.sort(WeightedCellSorter.prototype.compare),o=0;o<a.length;o++){r=0,s=a[o].cell,r=0,null!=(l=n<e?s.getPreviousLayerConnectedCells(e).slice():s.getNextLayerConnectedCells(e).slice())&&(r=l.length,r=0<r?this.medianXValue(l,n):s.getGeneralPurposeVariable(e));for(var d=0,l=-1e8,c=a[o].rankIndex-1;0<=c;){var m=mxCellPath.create(t[c].getCoreCell());if(null!=(m=i[m])){var u=m.cell;m.visited?(l=u.getGeneralPurposeVariable(e)+u.width/2+this.intraCellSpacing+d+s.width/2,c=-1):(d+=u.width+this.intraCellSpacing,c--)}}for(d=0,u=1e8,c=a[o].rankIndex+1;c<a.length;)if(m=mxCellPath.create(t[c].getCoreCell()),null!=(m=i[m])){var p=m.cell;m.visited?(u=p.getGeneralPurposeVariable(e)-p.width/2-this.intraCellSpacing-d-s.width/2,c=a.length):(d+=p.width+this.intraCellSpacing,c++)}r>=l&&r<=u?s.setGeneralPurposeVariable(e,r):r<l?(s.setGeneralPurposeVariable(e,l),this.currentXDelta+=l-r):r>u&&(s.setGeneralPurposeVariable(e,u),this.currentXDelta+=r-u),a[o].visited=!0}},mxCoordinateAssignment.prototype.calculatedWeightedValue=function(e,t){for(var n=0,a=0;a<t.length;a++){var i=t[a];e.isVertex()&&i.isVertex()?n++:n=e.isEdge()&&i.isEdge()?n+8:n+2}return n},mxCoordinateAssignment.prototype.medianXValue=function(e,t){if(0==e.length)return 0;for(var n=[],a=0;a<e.length;a++)n[a]=e[a].getGeneralPurposeVariable(t);return n.sort(function(e,t){return e-t}),1==e.length%2?n[Math.floor(e.length/2)]:(a=e.length/2,(n[a-1]+n[a])/2)},mxCoordinateAssignment.prototype.initialCoords=function(e,t){this.calculateWidestRank(e,t);for(var n=this.widestRank;0<=n;n--)n<t.maxRank&&this.rankCoordinates(n,e,t);for(n=this.widestRank+1;n<=t.maxRank;n++)0<n&&this.rankCoordinates(n,e,t)},mxCoordinateAssignment.prototype.rankCoordinates=function(e,t,n){t=n.ranks[e],n=0;for(var a=this.initialX+(this.widestRankValue-this.rankWidths[e])/2,i=!1,o=0;o<t.length;o++){var s=t[o];if(s.isVertex()){var r=this.layout.getVertexBounds(s.cell);null!=r?this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(s.width=r.width,s.height=r.height):(s.width=r.height,s.height=r.width):i=!0,n=Math.max(n,s.height)}else s.isEdge()&&(r=1,null!=s.edges?r=s.edges.length:mxLog.warn("edge.edges is null"),s.width=(r-1)*this.parallelEdgeSpacing);a+=s.width/2,s.setX(e,a),s.setGeneralPurposeVariable(e,a),a+=s.width/2,a+=this.intraCellSpacing}1==i&&mxLog.warn("At least one cell has no bounds")},mxCoordinateAssignment.prototype.calculateWidestRank=function(e,t){var n=-this.interRankCellSpacing,a=0;this.rankWidths=[],this.rankY=[];for(var i=t.maxRank;0<=i;i--){for(var o=0,s=t.ranks[i],r=this.initialX,l=!1,d=0;d<s.length;d++){var c=s[d];if(c.isVertex()){var m=this.layout.getVertexBounds(c.cell);null!=m?this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(c.width=m.width,c.height=m.height):(c.width=m.height,c.height=m.width):l=!0,o=Math.max(o,c.height)}else c.isEdge()&&(m=1,null!=c.edges?m=c.edges.length:mxLog.warn("edge.edges is null"),c.width=(m-1)*this.parallelEdgeSpacing);r+=c.width/2,c.setX(i,r),c.setGeneralPurposeVariable(i,r),r+=c.width/2,(r+=this.intraCellSpacing)>this.widestRankValue&&(this.widestRankValue=r,this.widestRank=i),this.rankWidths[i]=r}for(1==l&&mxLog.warn("At least one cell has no bounds"),this.rankY[i]=n,r=o/2+a/2+this.interRankCellSpacing,a=o,n=this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_WEST?n+r:n-r,d=0;d<s.length;d++)s[d].setY(i,n)}},mxCoordinateAssignment.prototype.minPath=function(e,t){var n,a=t.edgeMapper;for(n in a){var i=a[n];if(!(1>i.maxRank-i.minRank-1)){for(var o=i.getGeneralPurposeVariable(i.minRank+1),s=!0,r=0,l=i.minRank+2;l<i.maxRank;l++)o!=(d=i.getGeneralPurposeVariable(l))?(s=!1,o=d):r++;if(!s){for(var s=o=0,d=[],c=[],m=i.getGeneralPurposeVariable(i.minRank+1),l=i.minRank+1;l<i.maxRank-1;l++){var u=i.getX(l+1);m==u?(d[l-i.minRank-1]=m,o++):this.repositionValid(t,i,l+1,m)?(d[l-i.minRank-1]=m,o++):m=d[l-i.minRank-1]=u}for(m=i.getX(l),l=i.maxRank-1;l>i.minRank+1;l--)u=i.getX(l-1),m==u?(c[l-i.minRank-2]=m,s++):this.repositionValid(t,i,l-1,m)?(c[l-i.minRank-2]=m,s++):(c[l-i.minRank-2]=i.getX(l-1),m=u);if(s>r||o>r)if(s>=o)for(l=i.maxRank-2;l>i.minRank;l--)i.setX(l,c[l-i.minRank-1]);else if(o>s)for(l=i.minRank+2;l<i.maxRank;l++)i.setX(l,d[l-i.minRank-2])}}}},mxCoordinateAssignment.prototype.repositionValid=function(e,t,n,a){e=e.ranks[n];for(var i=-1,o=0;o<e.length;o++)if(t==e[o]){i=o;break}if(0>i)return!1;if(o=t.getGeneralPurposeVariable(n),a<o){if(0==i)return!0;if(e=e[i-1],n=e.getGeneralPurposeVariable(n),!((n=n+e.width/2+this.intraCellSpacing+t.width/2)<=a))return!1}else if(a>o){if(i==e.length-1)return!0;if(e=e[i+1],n=e.getGeneralPurposeVariable(n),!((n=n-e.width/2-this.intraCellSpacing-t.width/2)>=a))return!1}return!0},mxCoordinateAssignment.prototype.setCellLocations=function(e,t){this.rankTopY=[],this.rankBottomY=[];for(var n=0;n<t.ranks.length;n++)this.rankTopY[n]=Number.MAX_VALUE,this.rankBottomY[n]=0;n=null,this.layout.resizeParent&&(n={});var a,i=t.edgeMapper,o=t.vertexMapper;for(a in o){s=o[a];if(this.setVertexLocation(s),this.layout.resizeParent){var s=e.model.getParent(s.cell),r=mxCellPath.create(s);null==n[r]&&(n[r]=s)}}this.layout.resizeParent&&null!=n&&this.adjustParents(n),(this.edgeStyle==mxHierarchicalEdgeStyle.ORTHOGONAL||this.edgeStyle==mxHierarchicalEdgeStyle.POLYLINE||this.edgeStyle==mxHierarchicalEdgeStyle.CURVE)&&this.localEdgeProcessing(t);for(a in i)this.setEdgePosition(i[a])},mxCoordinateAssignment.prototype.adjustParents=function(e){var t,n=[];for(t in e)n.push(e[t]);this.layout.arrangeGroups(mxUtils.sortCells(n,!0),this.groupPadding)},mxCoordinateAssignment.prototype.localEdgeProcessing=function(e){for(var t=0;t<e.ranks.length;t++)for(var n=e.ranks[t],a=0;a<n.length;a++){var i=n[a];if(i.isVertex())for(var o=i.getPreviousLayerConnectedCells(t),s=t-1,r=0;2>r;r++){if(-1<s&&s<e.ranks.length&&null!=o&&0<o.length){for(var l=[],d=0;d<o.length;d++){var c=new WeightedCellSorter(o[d],o[d].getX(s));l.push(c)}l.sort(WeightedCellSorter.prototype.compare);for(var m=(c=i.x[0]-i.width/2)+i.width,u=o=0,s=[],d=0;d<l.length;d++){var p,g=l[d].cell;if(g.isVertex()){p=0==r?i.connectsAsSource:i.connectsAsTarget;for(var h=0;h<p.length;h++)p[h].source!=g&&p[h].target!=g||(o+=p[h].edges.length,u++,s.push(p[h]))}else o+=g.edges.length,u++,s.push(g)}for(i.width>(o+1)*this.prefHozEdgeSep+2*this.prefHozEdgeSep&&(c+=this.prefHozEdgeSep,m-=this.prefHozEdgeSep),c+=(l=(m-c)/o)/2,m=this.minEdgeJetty-this.prefVertEdgeOff,d=u=0;d<s.length;d++){for(g=s[d].edges.length,h=mxCellPath.create(s[d].edges[0]),null==(p=this.jettyPositions[h])&&(p=[],this.jettyPositions[h]=p),d<o/2?m+=this.prefVertEdgeOff:d>o/2&&(m-=this.prefVertEdgeOff),h=0;h<g;h++)p[4*h+2*r]=c,c+=l,p[4*h+2*r+1]=m;u=Math.max(u,m)}}o=i.getNextLayerConnectedCells(t),s=t+1}}},mxCoordinateAssignment.prototype.setEdgePosition=function(e){var t=0;if(101207!=e.temp[0]){var n=e.maxRank,a=e.minRank;n==a&&(n=e.source.maxRank,a=e.target.minRank);for(var i=0,o=mxCellPath.create(e.edges[0]),o=this.jettyPositions[o],s=e.isReversed?e.target.cell:e.source.cell,r=this.layout.graph,l=0;l<e.edges.length;l++){var d=e.edges[l],c=this.layout.getVisibleTerminal(d,!0),m=r.model.getTerminal(d,!0),u=[],p=e.isReversed;if(c!=s&&(p=!p),null!=o){var g=p?2:0,h=p?this.rankTopY[a]:this.rankBottomY[n],v=o[4*i+1+g];p&&(v=-v),h+=v,g=o[4*i+g],m=r.model.getTerminal(d,!0),this.layout.isPort(m)&&r.model.getParent(m)==c&&(g=r.view.getState(m),g=null!=g?g.x:c.geometry.x+e.source.width*m.geometry.x),this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(u.push(new mxPoint(g,h)),this.edgeStyle==mxHierarchicalEdgeStyle.CURVE&&u.push(new mxPoint(g,h+v))):(u.push(new mxPoint(h,g)),this.edgeStyle==mxHierarchicalEdgeStyle.CURVE&&u.push(new mxPoint(h+v,g)))}for(g=e.x.length-1,h=v=-1,c=e.maxRank-1,p&&(g=0,v=e.x.length,h=1,c=e.minRank+1);e.maxRank!=e.minRank&&g!=v;g+=h){var m=e.x[g]+t,b=(this.rankTopY[c]+this.rankBottomY[c+1])/2,f=(this.rankTopY[c-1]+this.rankBottomY[c])/2;if(p)var E=b,b=f,f=E;this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(u.push(new mxPoint(m,b)),u.push(new mxPoint(m,f))):(u.push(new mxPoint(b,m)),u.push(new mxPoint(f,m))),this.limitX=Math.max(this.limitX,m),c+=h}null!=o&&(g=p?2:0,h=p?this.rankBottomY[n]:this.rankTopY[a],v=o[4*i+3-g],p&&(v=-v),h-=v,g=o[4*i+2-g],p=r.model.getTerminal(d,!1),c=this.layout.getVisibleTerminal(d,!1),this.layout.isPort(p)&&r.model.getParent(p)==c&&(g=r.view.getState(p),g=null!=g?g.x:c.geometry.x+e.target.width*p.geometry.x),this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?(this.edgeStyle==mxHierarchicalEdgeStyle.CURVE&&u.push(new mxPoint(g,h-v)),u.push(new mxPoint(g,h))):(this.edgeStyle==mxHierarchicalEdgeStyle.CURVE&&u.push(new mxPoint(h-v,g)),u.push(new mxPoint(h,g)))),e.isReversed&&this.processReversedEdge(e,d),this.layout.setEdgePoints(d,u),t=0==t?this.parallelEdgeSpacing:0<t?-t:-t+this.parallelEdgeSpacing,i++}e.temp[0]=101207}},mxCoordinateAssignment.prototype.setVertexLocation=function(e){var t=e.cell,n=e.x[0]-e.width/2,a=e.y[0]-e.height/2;this.rankTopY[e.minRank]=Math.min(this.rankTopY[e.minRank],a),this.rankBottomY[e.minRank]=Math.max(this.rankBottomY[e.minRank],a+e.height),this.orientation==mxConstants.DIRECTION_NORTH||this.orientation==mxConstants.DIRECTION_SOUTH?this.layout.setVertexLocation(t,n,a):this.layout.setVertexLocation(t,a,n),this.limitX=Math.max(this.limitX,n+e.width)},mxCoordinateAssignment.prototype.processReversedEdge=function(e,t){},WeightedCellSorter.prototype.weightedValue=0,WeightedCellSorter.prototype.nudge=!1,WeightedCellSorter.prototype.visited=!1,WeightedCellSorter.prototype.rankIndex=null,WeightedCellSorter.prototype.cell=null,WeightedCellSorter.prototype.compare=function(e,t){return null!=e&&null!=t?t.weightedValue>e.weightedValue?-1:t.weightedValue<e.weightedValue?1:t.nudge?-1:1:0},mxHierarchicalLayout.prototype=new mxGraphLayout,mxHierarchicalLayout.prototype.constructor=mxHierarchicalLayout,mxHierarchicalLayout.prototype.roots=null,mxHierarchicalLayout.prototype.resizeParent=!1,mxHierarchicalLayout.prototype.moveParent=!1,mxHierarchicalLayout.prototype.parentBorder=0,mxHierarchicalLayout.prototype.intraCellSpacing=30,mxHierarchicalLayout.prototype.interRankCellSpacing=100,mxHierarchicalLayout.prototype.interHierarchySpacing=60,mxHierarchicalLayout.prototype.parallelEdgeSpacing=10,mxHierarchicalLayout.prototype.orientation=mxConstants.DIRECTION_NORTH,mxHierarchicalLayout.prototype.fineTuning=!0,mxHierarchicalLayout.prototype.tightenToSource=!0,mxHierarchicalLayout.prototype.disableEdgeStyle=!0,mxHierarchicalLayout.prototype.traverseAncestors=!0,mxHierarchicalLayout.prototype.model=null,mxHierarchicalLayout.prototype.edgesCache=null,mxHierarchicalLayout.prototype.getModel=function(){return this.model},mxHierarchicalLayout.prototype.execute=function(e,t){this.parent=e;var n=this.graph.model;if(this.edgesCache={},null!=t||null!=e){if(null!=t&&null!=e){for(var a=[],i=0;i<t.length;i++)n.isAncestor(e,t[i])&&a.push(t[i]);this.roots=a}else this.roots=t;n.beginUpdate();try{this.run(e),this.resizeParent&&!this.graph.isCellCollapsed(e)&&this.graph.updateGroupBounds([e],this.parentBorder,this.moveParent)}finally{n.endUpdate()}}},mxHierarchicalLayout.prototype.findRoots=function(e,t){var n=[];if(null!=e&&null!=t){var a,i=this.graph.model,o=null,s=-1e5;for(a in t){var r=t[a];if(i.isVertex(r)&&this.graph.isCellVisible(r)){for(var l=this.getEdges(r),d=0,c=0,m=0;m<l.length;m++)this.getVisibleTerminal(l[m],!0)==r?d++:c++;0==c&&0<d&&n.push(r),(l=d-c)>s&&(s=l,o=r)}}0==n.length&&null!=o&&n.push(o)}return n},mxHierarchicalLayout.prototype.getEdges=function(e){var t=mxCellPath.create(e);if(null!=this.edgesCache[t])return this.edgesCache[t];for(var n=this.graph.model,a=[],i=this.graph.isCellCollapsed(e),o=n.getChildCount(e),s=0;s<o;s++){var r=n.getChildAt(e,s);this.isPort(r)?a=a.concat(n.getEdges(r,!0,!0)):!i&&this.graph.isCellVisible(r)||(a=a.concat(n.getEdges(r,!0,!0)))}for(a=a.concat(n.getEdges(e,!0,!0)),n=[],s=0;s<a.length;s++)i=this.getVisibleTerminal(a[s],!0),o=this.getVisibleTerminal(a[s],!1),(i==o||i!=o&&(o==e&&(null==this.parent||this.graph.isValidAncestor(i,this.parent,this.traverseAncestors))||i==e&&(null==this.parent||this.graph.isValidAncestor(o,this.parent,this.traverseAncestors))))&&n.push(a[s]);return this.edgesCache[t]=n},mxHierarchicalLayout.prototype.getVisibleTerminal=function(e,t){var n=null!=(n=this.graph.view.getState(e))?n.getVisibleTerminal(t):this.graph.view.getVisibleTerminal(e,t);return this.isPort(n)&&(n=this.graph.model.getParent(n)),n},mxHierarchicalLayout.prototype.run=function(e){var t=[],n=[];if(null==this.roots&&null!=e){var a={};this.filterDescendants(e,a),this.roots=[];var i,o=!0;for(i in a)if(null!=a[i]){o=!1;break}for(;!o;){for(var s=this.findRoots(e,a),o=0;o<s.length;o++){var r=[];t.push(r),this.traverse(s[o],!0,null,n,r,t,a)}for(o=0;o<s.length;o++)this.roots.push(s[o]);o=!0;for(i in a)if(null!=a[i]){o=!1;break}}}else for(o=0;o<roots.length;o++)r=[],t.push(r),traverse(roots.get(o),!0,null,n,r,t,null);for(o=n=0;o<t.length;o++){r=t[o],a=[];for(i in r)a.push(r[i]);this.model=new mxGraphHierarchyModel(this,a,this.roots,e,this.tightenToSource),this.cycleStage(e),this.layeringStage(),this.crossingStage(e),n=this.placementStage(n,e)}},mxHierarchicalLayout.prototype.filterDescendants=function(e,t){var n=this.graph.model;if(n.isVertex(e)&&e!=this.parent&&this.graph.isCellVisible(e)&&(t[mxCellPath.create(e)]=e),this.traverseAncestors||e==this.parent&&this.graph.isCellVisible(e))for(var a=n.getChildCount(e),i=0;i<a;i++){var o=n.getChildAt(e,i);this.isPort(o)||this.filterDescendants(o,t)}},mxHierarchicalLayout.prototype.isPort=function(e){return!!e.geometry.relative},mxHierarchicalLayout.prototype.getEdgesBetween=function(e,t,n){n=null!=n&&n;for(var a=this.getEdges(e),i=[],o=0;o<a.length;o++){var s=this.getVisibleTerminal(a[o],!0),r=this.getVisibleTerminal(a[o],!1);(s==e&&r==t||!n&&s==t&&r==e)&&i.push(a[o])}return i},mxHierarchicalLayout.prototype.traverse=function(e,t,n,a,i,o,s){if(null!=e&&null!=a){var r=mxCellPath.create(e);if(null!=a[r]||null!=s&&null==s[r]){if(null==i[r])for(n=0;n<o.length;n++)if(null!=(e=o[n])[r]){for(l in i)e[l]=i[l];return o.pop(),e}}else{null==i[r]&&(i[r]=e),null==a[r]&&(a[r]=e),delete s[r];var l=this.getEdges(e);for(n=0;n<l.length;n++)r=this.getVisibleTerminal(l[n],!0)==e,(!t||r)&&(r=this.getVisibleTerminal(l[n],!r),i=this.traverse(r,t,l[n],a,i,o,s))}}return i},mxHierarchicalLayout.prototype.cycleStage=function(e){new mxMinimumCycleRemover(this).execute(e)},mxHierarchicalLayout.prototype.layeringStage=function(){this.model.initialRank(),this.model.fixRanks()},mxHierarchicalLayout.prototype.crossingStage=function(e){new mxMedianHybridCrossingReduction(this).execute(e)},mxHierarchicalLayout.prototype.placementStage=function(e,t){var n=new mxCoordinateAssignment(this,this.intraCellSpacing,this.interRankCellSpacing,this.orientation,e,this.parallelEdgeSpacing);return n.fineTuning=this.fineTuning,n.execute(t),n.limitX+this.interHierarchySpacing},mxGraphModel.prototype=new mxEventSource,mxGraphModel.prototype.constructor=mxGraphModel,mxGraphModel.prototype.root=null,mxGraphModel.prototype.cells=null,mxGraphModel.prototype.maintainEdgeParent=!0,mxGraphModel.prototype.createIds=!0,mxGraphModel.prototype.prefix="",mxGraphModel.prototype.postfix="",mxGraphModel.prototype.nextId=0,mxGraphModel.prototype.currentEdit=null,mxGraphModel.prototype.updateLevel=0,mxGraphModel.prototype.endingUpdate=!1,mxGraphModel.prototype.clear=function(){this.setRoot(this.createRoot())},mxGraphModel.prototype.isCreateIds=function(){return this.createIds},mxGraphModel.prototype.setCreateIds=function(e){this.createIds=e},mxGraphModel.prototype.createRoot=function(){var e=new mxCell;return e.insert(new mxCell),e},mxGraphModel.prototype.getCell=function(e){return null!=this.cells?this.cells[e]:null},mxGraphModel.prototype.filterCells=function(e,t){n=null;if(null!=e)for(var n=[],a=0;a<e.length;a++)t(e[a])&&n.push(e[a]);return n},mxGraphModel.prototype.getDescendants=function(e){return this.filterDescendants(null,e)},mxGraphModel.prototype.filterDescendants=function(e,t){o=[];t=t||this.getRoot(),(null==e||e(t))&&o.push(t);for(var n=this.getChildCount(t),a=0;a<n;a++)var i=this.getChildAt(t,a),o=o.concat(this.filterDescendants(e,i));return o},mxGraphModel.prototype.getRoot=function(e){var t=e||this.root;if(null!=e)for(;null!=e;)t=e,e=this.getParent(e);return t},mxGraphModel.prototype.setRoot=function(e){return this.execute(new mxRootChange(this,e)),e},mxGraphModel.prototype.rootChanged=function(e){var t=this.root;return this.root=e,this.nextId=0,this.cells=null,this.cellAdded(e),t},mxGraphModel.prototype.isRoot=function(e){return null!=e&&this.root==e},mxGraphModel.prototype.isLayer=function(e){return this.isRoot(this.getParent(e))},mxGraphModel.prototype.isAncestor=function(e,t){for(;null!=t&&t!=e;)t=this.getParent(t);return t==e},mxGraphModel.prototype.contains=function(e){return this.isAncestor(this.root,e)},mxGraphModel.prototype.getParent=function(e){return null!=e?e.getParent():null},mxGraphModel.prototype.add=function(e,t,n){if(t!=e&&null!=e&&null!=t){null==n&&(n=this.getChildCount(e));var a=e!=this.getParent(t);this.execute(new mxChildChange(this,e,t,n)),this.maintainEdgeParent&&a&&this.updateEdgeParents(t)}return t},mxGraphModel.prototype.cellAdded=function(e){if(null!=e){if(null==e.getId()&&this.createIds&&e.setId(this.createId(e)),null!=e.getId()&&(t=this.getCell(e.getId()))!=e){for(;null!=t;)e.setId(this.createId(e)),t=this.getCell(e.getId());null==this.cells&&(this.cells={}),this.cells[e.getId()]=e}mxUtils.isNumeric(e.getId())&&(this.nextId=Math.max(this.nextId,e.getId()));for(var t=this.getChildCount(e),n=0;n<t;n++)this.cellAdded(this.getChildAt(e,n))}},mxGraphModel.prototype.createId=function(e){return e=this.nextId,this.nextId++,this.prefix+e+this.postfix},mxGraphModel.prototype.updateEdgeParents=function(e,t){t=t||this.getRoot(e);for(var n=this.getChildCount(e),a=0;a<n;a++){var i=this.getChildAt(e,a);this.updateEdgeParents(i,t)}for(i=this.getEdgeCount(e),n=[],a=0;a<i;a++)n.push(this.getEdgeAt(e,a));for(a=0;a<n.length;a++)i=n[a],this.isAncestor(t,i)&&this.updateEdgeParent(i,t)},mxGraphModel.prototype.updateEdgeParent=function(e,t){for(var n=this.getTerminal(e,!0),a=this.getTerminal(e,!1),i=null;null!=n&&!this.isEdge(n)&&null!=n.geometry&&n.geometry.relative;)n=this.getParent(n);for(;null!=a&&!this.isEdge(a)&&null!=a.geometry&&a.geometry.relative;)a=this.getParent(a);if(this.isAncestor(t,n)&&this.isAncestor(t,a)&&null!=(i=n==a?this.getParent(n):this.getNearestCommonAncestor(n,a))&&(this.getParent(i)!=this.root||this.isAncestor(i,e))&&this.getParent(e)!=i){if(null!=(n=this.getGeometry(e))){var o=this.getOrigin(this.getParent(e)),s=this.getOrigin(i),a=s.x-o.x,o=s.y-o.y;(n=n.clone()).translate(-a,-o),this.setGeometry(e,n)}this.add(i,e,this.getChildCount(i))}},mxGraphModel.prototype.getOrigin=function(e){var t=null;return null!=e?(t=this.getOrigin(this.getParent(e)),this.isEdge(e)||null!=(e=this.getGeometry(e))&&(t.x+=e.x,t.y+=e.y)):t=new mxPoint,t},mxGraphModel.prototype.getNearestCommonAncestor=function(e,t){if(null!=e&&null!=t&&null!=(o=mxCellPath.create(t))&&0<o.length){var n=e,a=mxCellPath.create(n);if(o.length<a.length)var n=t,i=a,a=o,o=i;for(;null!=n;){if(i=this.getParent(n),0==o.indexOf(a+mxCellPath.PATH_SEPARATOR)&&null!=i)return n;a=mxCellPath.getParentPath(a),n=i}}return null},mxGraphModel.prototype.remove=function(e){return e==this.root?this.setRoot(null):null!=this.getParent(e)&&this.execute(new mxChildChange(this,null,e)),e},mxGraphModel.prototype.cellRemoved=function(e){if(null!=e&&null!=this.cells){for(var t=this.getChildCount(e)-1;0<=t;t--)this.cellRemoved(this.getChildAt(e,t));null!=this.cells&&null!=e.getId()&&delete this.cells[e.getId()]}},mxGraphModel.prototype.parentForCellChanged=function(e,t,n){var a=this.getParent(e);return null!=t?(t!=a||a.getIndex(e)!=n)&&t.insert(e,n):null!=a&&(n=a.getIndex(e),a.remove(n)),this.contains(a)||null==t?null==t&&this.cellRemoved(e):this.cellAdded(e),a},mxGraphModel.prototype.getChildCount=function(e){return null!=e?e.getChildCount():0},mxGraphModel.prototype.getChildAt=function(e,t){return null!=e?e.getChildAt(t):null},mxGraphModel.prototype.getChildren=function(e){return null!=e?e.children:null},mxGraphModel.prototype.getChildVertices=function(e){return this.getChildCells(e,!0,!1)},mxGraphModel.prototype.getChildEdges=function(e){return this.getChildCells(e,!1,!0)},mxGraphModel.prototype.getChildCells=function(e,t,n){t=null!=t&&t,n=null!=n&&n;for(var a=this.getChildCount(e),i=[],o=0;o<a;o++){var s=this.getChildAt(e,o);(!n&&!t||n&&this.isEdge(s)||t&&this.isVertex(s))&&i.push(s)}return i},mxGraphModel.prototype.getTerminal=function(e,t){return null!=e?e.getTerminal(t):null},mxGraphModel.prototype.setTerminal=function(e,t,n){var a=t!=this.getTerminal(e,n);return this.execute(new mxTerminalChange(this,e,t,n)),this.maintainEdgeParent&&a&&this.updateEdgeParent(e,this.getRoot()),t},mxGraphModel.prototype.setTerminals=function(e,t,n){this.beginUpdate();try{this.setTerminal(e,t,!0),this.setTerminal(e,n,!1)}finally{this.endUpdate()}},mxGraphModel.prototype.terminalForCellChanged=function(e,t,n){var a=this.getTerminal(e,n);return null!=t?t.insertEdge(e,n):null!=a&&a.removeEdge(e,n),a},mxGraphModel.prototype.getEdgeCount=function(e){return null!=e?e.getEdgeCount():0},mxGraphModel.prototype.getEdgeAt=function(e,t){return null!=e?e.getEdgeAt(t):null},mxGraphModel.prototype.getDirectedEdgeCount=function(e,t,n){for(var a=0,i=this.getEdgeCount(e),o=0;o<i;o++){var s=this.getEdgeAt(e,o);s!=n&&this.getTerminal(s,t)==e&&a++}return a},mxGraphModel.prototype.getConnections=function(e){return this.getEdges(e,!0,!0,!1)},mxGraphModel.prototype.getIncomingEdges=function(e){return this.getEdges(e,!0,!1,!1)},mxGraphModel.prototype.getOutgoingEdges=function(e){return this.getEdges(e,!1,!0,!1)},mxGraphModel.prototype.getEdges=function(e,t,n,a){t=null==t||t,n=null==n||n,a=null==a||a;for(var i=this.getEdgeCount(e),o=[],s=0;s<i;s++){var r=this.getEdgeAt(e,s),l=this.getTerminal(r,!0),d=this.getTerminal(r,!1);(a&&l==d||l!=d&&(t&&d==e||n&&l==e))&&o.push(r)}return o},mxGraphModel.prototype.getEdgesBetween=function(e,t,n){n=null!=n&&n;var a=this.getEdgeCount(e),i=this.getEdgeCount(t),o=e,s=a;for(i<a&&(s=i,o=t),a=[],i=0;i<s;i++){var r=this.getEdgeAt(o,i),l=this.getTerminal(r,!0),d=this.getTerminal(r,!1),c=d==e&&l==t;(l==e&&d==t||!n&&c)&&a.push(r)}return a},mxGraphModel.prototype.getOpposites=function(e,t,n,a){n=null==n||n,a=null==a||a;var i=[];if(null!=e)for(var o=0;o<e.length;o++){var s=this.getTerminal(e[o],!0),r=this.getTerminal(e[o],!1);s==t&&null!=r&&r!=t&&a?i.push(r):r==t&&null!=s&&s!=t&&n&&i.push(s)}return i},mxGraphModel.prototype.getTopmostCells=function(e){for(var t=[],n=0;n<e.length;n++){for(var a=e[n],i=!0,o=this.getParent(a);null!=o;){if(0<=mxUtils.indexOf(e,o)){i=!1;break}o=this.getParent(o)}i&&t.push(a)}return t},mxGraphModel.prototype.isVertex=function(e){return null!=e&&e.isVertex()},mxGraphModel.prototype.isEdge=function(e){return null!=e&&e.isEdge()},mxGraphModel.prototype.isConnectable=function(e){return null!=e&&e.isConnectable()},mxGraphModel.prototype.getValue=function(e){return null!=e?e.getValue():null},mxGraphModel.prototype.setValue=function(e,t){return this.execute(new mxValueChange(this,e,t)),t},mxGraphModel.prototype.valueForCellChanged=function(e,t){return e.valueChanged(t)},mxGraphModel.prototype.getGeometry=function(e,t){return null!=e?e.getGeometry():null},mxGraphModel.prototype.setGeometry=function(e,t){return t!=this.getGeometry(e)&&this.execute(new mxGeometryChange(this,e,t)),t},mxGraphModel.prototype.geometryForCellChanged=function(e,t){var n=this.getGeometry(e);return e.setGeometry(t),n},mxGraphModel.prototype.getStyle=function(e){return null!=e?e.getStyle():null},mxGraphModel.prototype.setStyle=function(e,t){return t!=this.getStyle(e)&&this.execute(new mxStyleChange(this,e,t)),t},mxGraphModel.prototype.styleForCellChanged=function(e,t){var n=this.getStyle(e);return e.setStyle(t),n},mxGraphModel.prototype.isCollapsed=function(e){return null!=e&&e.isCollapsed()},mxGraphModel.prototype.setCollapsed=function(e,t){return t!=this.isCollapsed(e)&&this.execute(new mxCollapseChange(this,e,t)),t},mxGraphModel.prototype.collapsedStateForCellChanged=function(e,t){var n=this.isCollapsed(e);return e.setCollapsed(t),n},mxGraphModel.prototype.isVisible=function(e){return null!=e&&e.isVisible()},mxGraphModel.prototype.setVisible=function(e,t){return t!=this.isVisible(e)&&this.execute(new mxVisibleChange(this,e,t)),t},mxGraphModel.prototype.visibleStateForCellChanged=function(e,t){var n=this.isVisible(e);return e.setVisible(t),n},mxGraphModel.prototype.execute=function(e){e.execute(),this.beginUpdate(),this.currentEdit.add(e),this.fireEvent(new mxEventObject(mxEvent.EXECUTE,"change",e)),this.fireEvent(new mxEventObject(mxEvent.EXECUTED,"change",e)),this.endUpdate()},mxGraphModel.prototype.beginUpdate=function(){this.updateLevel++,this.fireEvent(new mxEventObject(mxEvent.BEGIN_UPDATE)),1==this.updateLevel&&this.fireEvent(new mxEventObject(mxEvent.START_EDIT))},mxGraphModel.prototype.endUpdate=function(){if(0==--this.updateLevel&&this.fireEvent(new mxEventObject(mxEvent.END_EDIT)),!this.endingUpdate){this.endingUpdate=0==this.updateLevel,this.fireEvent(new mxEventObject(mxEvent.END_UPDATE,"edit",this.currentEdit));try{if(this.endingUpdate&&!this.currentEdit.isEmpty()){this.fireEvent(new mxEventObject(mxEvent.BEFORE_UNDO,"edit",this.currentEdit));var e=this.currentEdit;this.currentEdit=this.createUndoableEdit(),e.notify(),this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",e))}}finally{this.endingUpdate=!1}}},mxGraphModel.prototype.createUndoableEdit=function(){var e=new mxUndoableEdit(this,!0);return e.notify=function(){e.source.fireEvent(new mxEventObject(mxEvent.CHANGE,"edit",e,"changes",e.changes)),e.source.fireEvent(new mxEventObject(mxEvent.NOTIFY,"edit",e,"changes",e.changes))},e},mxGraphModel.prototype.mergeChildren=function(e,t,n){n=null==n||n,this.beginUpdate();try{var a={};this.mergeChildrenImpl(e,t,n,a);for(var i in a){var o=a[i],s=this.getTerminal(o,!0);null!=s&&(s=a[mxCellPath.create(s)],this.setTerminal(o,s,!0)),null!=(s=this.getTerminal(o,!1))&&(s=a[mxCellPath.create(s)],this.setTerminal(o,s,!1))}}finally{this.endUpdate()}},mxGraphModel.prototype.mergeChildrenImpl=function(e,t,n,a){this.beginUpdate();try{for(var i=e.getChildCount(),o=0;o<i;o++){var s=e.getChildAt(o);if("function"==typeof s.getId){var r=s.getId(),l=null==r||this.isEdge(s)&&n?null:this.getCell(r);if(null==l){var d=s.clone();d.setId(r),d.setTerminal(s.getTerminal(!0),!0),d.setTerminal(s.getTerminal(!1),!1),l=t.insert(d),this.cellAdded(l)}a[mxCellPath.create(s)]=l,this.mergeChildrenImpl(s,l,n,a)}}}finally{this.endUpdate()}},mxGraphModel.prototype.getParents=function(e){var t=[];if(null!=e)for(var n={},a=0;a<e.length;a++){var i=this.getParent(e[a]);if(null!=i){var o=mxCellPath.create(i);null==n[o]&&(n[o]=i,t.push(i))}}return t},mxGraphModel.prototype.cloneCell=function(e){return null!=e?this.cloneCells([e],!0)[0]:null},mxGraphModel.prototype.cloneCells=function(e,t){for(var n={},a=[],i=0;i<e.length;i++)null!=e[i]?a.push(this.cloneCellImpl(e[i],n,t)):a.push(null);for(i=0;i<a.length;i++)null!=a[i]&&this.restoreClone(a[i],e[i],n);return a},mxGraphModel.prototype.cloneCellImpl=function(e,t,n){var a=this.cellCloned(e);if(t[mxObjectIdentity.get(e)]=a,n){n=this.getChildCount(e);for(var i=0;i<n;i++){var o=this.cloneCellImpl(this.getChildAt(e,i),t,!0);a.insert(o)}}return a},mxGraphModel.prototype.cellCloned=function(e){return e.clone()},mxGraphModel.prototype.restoreClone=function(e,t,n){null!=(a=this.getTerminal(t,!0))&&null!=(a=n[mxObjectIdentity.get(a)])&&a.insertEdge(e,!0),null!=(a=this.getTerminal(t,!1))&&null!=(a=n[mxObjectIdentity.get(a)])&&a.insertEdge(e,!1);for(var a=this.getChildCount(e),i=0;i<a;i++)this.restoreClone(this.getChildAt(e,i),this.getChildAt(t,i),n)},mxRootChange.prototype.execute=function(){this.root=this.previous,this.previous=this.model.rootChanged(this.previous)},mxChildChange.prototype.execute=function(){var e=this.model.getParent(this.child),t=null!=e?e.getIndex(this.child):0;null==this.previous&&this.connect(this.child,!1),e=this.model.parentForCellChanged(this.child,this.previous,this.previousIndex),null!=this.previous&&this.connect(this.child,!0),this.parent=this.previous,this.previous=e,this.index=this.previousIndex,this.previousIndex=t},mxChildChange.prototype.connect=function(e,t){t=null==t||t;var n=e.getTerminal(!0),a=e.getTerminal(!1);for(null!=n&&(t?this.model.terminalForCellChanged(e,n,!0):this.model.terminalForCellChanged(e,null,!0)),null!=a&&(t?this.model.terminalForCellChanged(e,a,!1):this.model.terminalForCellChanged(e,null,!1)),e.setTerminal(n,!0),e.setTerminal(a,!1),n=this.model.getChildCount(e),a=0;a<n;a++)this.connect(this.model.getChildAt(e,a),t)},mxTerminalChange.prototype.execute=function(){this.terminal=this.previous,this.previous=this.model.terminalForCellChanged(this.cell,this.previous,this.source)},mxValueChange.prototype.execute=function(){this.value=this.previous,this.previous=this.model.valueForCellChanged(this.cell,this.previous)},mxStyleChange.prototype.execute=function(){this.style=this.previous,this.previous=this.model.styleForCellChanged(this.cell,this.previous)},mxGeometryChange.prototype.execute=function(){this.geometry=this.previous,this.previous=this.model.geometryForCellChanged(this.cell,this.previous)},mxCollapseChange.prototype.execute=function(){this.collapsed=this.previous,this.previous=this.model.collapsedStateForCellChanged(this.cell,this.previous)},mxVisibleChange.prototype.execute=function(){this.visible=this.previous,this.previous=this.model.visibleStateForCellChanged(this.cell,this.previous)},mxCellAttributeChange.prototype.execute=function(){var e=this.cell.getAttribute(this.attribute);null==this.previous?this.cell.value.removeAttribute(this.attribute):this.cell.setAttribute(this.attribute,this.previous),this.previous=e},mxCell.prototype.id=null,mxCell.prototype.value=null,mxCell.prototype.geometry=null,mxCell.prototype.style=null,mxCell.prototype.vertex=!1,mxCell.prototype.edge=!1,mxCell.prototype.connectable=!0,mxCell.prototype.visible=!0,mxCell.prototype.collapsed=!1,mxCell.prototype.parent=null,mxCell.prototype.source=null,mxCell.prototype.target=null,mxCell.prototype.children=null,mxCell.prototype.edges=null,mxCell.prototype.mxTransient="id value parent source target children edges".split(" "),mxCell.prototype.getId=function(){return this.id},mxCell.prototype.setId=function(e){this.id=e},mxCell.prototype.getValue=function(){return this.value},mxCell.prototype.setValue=function(e){this.value=e},mxCell.prototype.valueChanged=function(e){var t=this.getValue();return this.setValue(e),t},mxCell.prototype.getGeometry=function(){return this.geometry},mxCell.prototype.setGeometry=function(e){this.geometry=e},mxCell.prototype.getStyle=function(){return this.style},mxCell.prototype.setStyle=function(e){this.style=e},mxCell.prototype.isVertex=function(){return this.vertex},mxCell.prototype.setVertex=function(e){this.vertex=e},mxCell.prototype.isEdge=function(){return this.edge},mxCell.prototype.setEdge=function(e){this.edge=e},mxCell.prototype.isConnectable=function(){return this.connectable},mxCell.prototype.setConnectable=function(e){this.connectable=e},mxCell.prototype.isVisible=function(){return this.visible},mxCell.prototype.setVisible=function(e){this.visible=e},mxCell.prototype.isCollapsed=function(){return this.collapsed},mxCell.prototype.setCollapsed=function(e){this.collapsed=e},mxCell.prototype.getParent=function(){return this.parent},mxCell.prototype.setParent=function(e){this.parent=e},mxCell.prototype.getTerminal=function(e){return e?this.source:this.target},mxCell.prototype.setTerminal=function(e,t){return t?this.source=e:this.target=e,e},mxCell.prototype.getChildCount=function(){return null==this.children?0:this.children.length},mxCell.prototype.getIndex=function(e){return mxUtils.indexOf(this.children,e)},mxCell.prototype.getChildAt=function(e){return null==this.children?null:this.children[e]},mxCell.prototype.insert=function(e,t){return null!=e&&(null==t&&(t=this.getChildCount(),e.getParent()==this&&t--),e.removeFromParent(),e.setParent(this),null==this.children?(this.children=[],this.children.push(e)):this.children.splice(t,0,e)),e},mxCell.prototype.remove=function(e){var t=null;return null!=this.children&&0<=e&&null!=(t=this.getChildAt(e))&&(this.children.splice(e,1),t.setParent(null)),t},mxCell.prototype.removeFromParent=function(){if(null!=this.parent){var e=this.parent.getIndex(this);this.parent.remove(e)}},mxCell.prototype.getEdgeCount=function(){return null==this.edges?0:this.edges.length},mxCell.prototype.getEdgeIndex=function(e){return mxUtils.indexOf(this.edges,e)},mxCell.prototype.getEdgeAt=function(e){return null==this.edges?null:this.edges[e]},mxCell.prototype.insertEdge=function(e,t){return null!=e&&(e.removeFromTerminal(t),e.setTerminal(this,t),null==this.edges||e.getTerminal(!t)!=this||0>mxUtils.indexOf(this.edges,e))&&(null==this.edges&&(this.edges=[]),this.edges.push(e)),e},mxCell.prototype.removeEdge=function(e,t){if(null!=e){if(e.getTerminal(!t)!=this&&null!=this.edges){var n=this.getEdgeIndex(e);0<=n&&this.edges.splice(n,1)}e.setTerminal(null,t)}return e},mxCell.prototype.removeFromTerminal=function(e){var t=this.getTerminal(e);null!=t&&t.removeEdge(this,e)},mxCell.prototype.getAttribute=function(e,t){var n=this.getValue();return(null!=n&&n.nodeType==mxConstants.NODETYPE_ELEMENT?n.getAttribute(e):null)||t},mxCell.prototype.setAttribute=function(e,t){var n=this.getValue();null!=n&&n.nodeType==mxConstants.NODETYPE_ELEMENT&&n.setAttribute(e,t)},mxCell.prototype.clone=function(){var e=mxUtils.clone(this,this.mxTransient);return e.setValue(this.cloneValue()),e},mxCell.prototype.cloneValue=function(){var e=this.getValue();return null!=e&&("function"==typeof e.clone?e=e.clone():isNaN(e.nodeType)||(e=e.cloneNode(!0))),e},mxGeometry.prototype=new mxRectangle,mxGeometry.prototype.constructor=mxGeometry,mxGeometry.prototype.TRANSLATE_CONTROL_POINTS=!0,mxGeometry.prototype.alternateBounds=null,mxGeometry.prototype.sourcePoint=null,mxGeometry.prototype.targetPoint=null,mxGeometry.prototype.points=null,mxGeometry.prototype.offset=null,mxGeometry.prototype.relative=!1,mxGeometry.prototype.swap=function(){if(null!=this.alternateBounds){var e=new mxRectangle(this.x,this.y,this.width,this.height);this.x=this.alternateBounds.x,this.y=this.alternateBounds.y,this.width=this.alternateBounds.width,this.height=this.alternateBounds.height,this.alternateBounds=e}},mxGeometry.prototype.getTerminalPoint=function(e){return e?this.sourcePoint:this.targetPoint},mxGeometry.prototype.setTerminalPoint=function(e,t){return t?this.sourcePoint=e:this.targetPoint=e,e},mxGeometry.prototype.translate=function(e,t){if(this.clone(),this.relative||(this.x+=e,this.y+=t),null!=this.sourcePoint&&(this.sourcePoint.x+=e,this.sourcePoint.y+=t),null!=this.targetPoint&&(this.targetPoint.x+=e,this.targetPoint.y+=t),this.TRANSLATE_CONTROL_POINTS&&null!=this.points)for(var n=this.points.length,a=0;a<n;a++){var i=this.points[a];null!=i&&(i.x+=e,i.y+=t)}};var mxCellPath={PATH_SEPARATOR:".",create:function(e){var t="";if(null!=e)for(var n=e.getParent();null!=n;)t=n.getIndex(e)+mxCellPath.PATH_SEPARATOR+t,e=n,n=e.getParent();return 1<(e=t.length)&&(t=t.substring(0,e-1)),t},getParentPath:function(e){if(null!=e){var t=e.lastIndexOf(mxCellPath.PATH_SEPARATOR);if(0<=t)return e.substring(0,t);if(0<e.length)return""}return null},resolve:function(e,t){var n=e;if(null!=t)for(var a=t.split(mxCellPath.PATH_SEPARATOR),i=0;i<a.length;i++)n=n.getChildAt(parseInt(a[i]));return n},compare:function(e,t){for(var n=Math.min(e.length,t.length),a=0,i=0;i<n;i++)if(e[i]!=t[i]){0==e[i].length||0==t[i].length?a=e[i]==t[i]?0:e[i]>t[i]?1:-1:(n=parseInt(e[i]),i=parseInt(t[i]),a=n==i?0:n>i?1:-1);break}return 0==a&&(n=e.length,i=t.length,n!=i&&(a=n>i?1:-1)),a}},mxPerimeter={RectanglePerimeter:function(e,t,n,a){t=e.getCenterX();var i=e.getCenterY(),o=Math.atan2(n.y-i,n.x-t),s=new mxPoint(0,0),r=Math.PI,l=Math.PI/2-o,d=Math.atan2(e.height,e.width);return o<-r+d||o>r-d?(s.x=e.x,s.y=i-e.width*Math.tan(o)/2):o<-d?(s.y=e.y,s.x=t-e.height*Math.tan(l)/2):o<d?(s.x=e.x+e.width,s.y=i+e.width*Math.tan(o)/2):(s.y=e.y+e.height,s.x=t+e.height*Math.tan(l)/2),a&&(n.x>=e.x&&n.x<=e.x+e.width?s.x=n.x:n.y>=e.y&&n.y<=e.y+e.height&&(s.y=n.y),n.x<e.x?s.x=e.x:n.x>e.x+e.width&&(s.x=e.x+e.width),n.y<e.y?s.y=e.y:n.y>e.y+e.height&&(s.y=e.y+e.height)),s},EllipsePerimeter:function(e,t,n,a){var i=e.x,o=e.y,s=e.width/2,r=e.height/2,l=i+s,d=o+r;t=n.x,n=n.y;var c=parseInt(t-l),m=parseInt(n-d);if(0==c&&0!=m)return new mxPoint(l,d+r*m/Math.abs(m));if(0==c&&0==m)return new mxPoint(t,n);if(a){if(n>=o&&n<=o+e.height)return e=n-d,e=Math.sqrt(s*s*(1-e*e/(r*r)))||0,t<=i&&(e=-e),new mxPoint(l+e,n);if(t>=i&&t<=i+e.width)return e=t-l,e=Math.sqrt(r*r*(1-e*e/(s*s)))||0,n<=o&&(e=-e),new mxPoint(t,d+e)}return i=m/c,d-=i*l,o=s*s*i*i+r*r,e=-2*l*o,r=Math.sqrt(e*e-4*o*(s*s*i*i*l*l+r*r*l*l-s*s*r*r)),s=(-e+r)/(2*o),r=(-e-r)/(2*o),l=i*s+d,d=i*r+d,i=Math.sqrt(Math.pow(s-t,2)+Math.pow(l-n,2)),t=Math.sqrt(Math.pow(r-t,2)+Math.pow(d-n,2)),o=n=0,i<t?(n=s,o=l):(n=r,o=d),new mxPoint(n,o)},RhombusPerimeter:function(e,t,n,a){t=e.x;var i=e.y,o=e.width,s=t+o/2,r=i+(e=e.height)/2,l=n.x;if(n=n.y,s==l)return r>n?new mxPoint(s,i):new mxPoint(s,i+e);if(r==n)return s>l?new mxPoint(t,r):new mxPoint(t+o,r);var d=s,c=r;return a&&(l>=t&&l<=t+o?d=l:n>=i&&n<=i+e&&(c=n)),l<s?n<r?mxUtils.intersection(l,n,d,c,s,i,t,r):mxUtils.intersection(l,n,d,c,s,i+e,t,r):n<r?mxUtils.intersection(l,n,d,c,s,i,t+o,r):mxUtils.intersection(l,n,d,c,s,i+e,t+o,r)},TrianglePerimeter:function(e,t,n,a){var i=(t=null!=t?t.style[mxConstants.STYLE_DIRECTION]:null)==mxConstants.DIRECTION_NORTH||t==mxConstants.DIRECTION_SOUTH,o=e.x,s=e.y,r=e.width,l=o+r/2,d=s+(e=e.height)/2,c=new mxPoint(o,s),m=new mxPoint(o+r,d),u=new mxPoint(o,s+e);t==mxConstants.DIRECTION_NORTH?(c=u,m=new mxPoint(l,s),u=new mxPoint(o+r,s+e)):t==mxConstants.DIRECTION_SOUTH?(m=new mxPoint(l,s+e),u=new mxPoint(o+r,s)):t==mxConstants.DIRECTION_WEST&&(c=new mxPoint(o+r,s),m=new mxPoint(o,d),u=new mxPoint(o+r,s+e));var p=n.x-l,g=n.y-d,p=i?Math.atan2(p,g):Math.atan2(g,p),h=i?Math.atan2(r,e):Math.atan2(e,r),g=!1,g=t==mxConstants.DIRECTION_NORTH||t==mxConstants.DIRECTION_WEST?p>-h&&p<h:p<-Math.PI+h||p>Math.PI-h,h=null;return g?h=a&&(i&&n.x>=c.x&&n.x<=u.x||!i&&n.y>=c.y&&n.y<=u.y)?i?new mxPoint(n.x,c.y):new mxPoint(c.x,n.y):t==mxConstants.DIRECTION_NORTH?new mxPoint(o+r/2+e*Math.tan(p)/2,s+e):t==mxConstants.DIRECTION_SOUTH?new mxPoint(o+r/2-e*Math.tan(p)/2,s):t==mxConstants.DIRECTION_WEST?new mxPoint(o+r,s+e/2+r*Math.tan(p)/2):new mxPoint(o,s+e/2-r*Math.tan(p)/2):(a&&(a=new mxPoint(l,d),n.y>=s&&n.y<=s+e?(a.x=i?l:t==mxConstants.DIRECTION_WEST?o+r:o,a.y=n.y):n.x>=o&&n.x<=o+r&&(a.x=n.x,a.y=i?t==mxConstants.DIRECTION_NORTH?s+e:s:d),l=a.x,d=a.y),h=i&&n.x<=o+r/2||!i&&n.y<=s+e/2?mxUtils.intersection(n.x,n.y,l,d,c.x,c.y,m.x,m.y):mxUtils.intersection(n.x,n.y,l,d,m.x,m.y,u.x,u.y)),null==h&&(h=new mxPoint(l,d)),h}};mxPrintPreview.prototype.graph=null,mxPrintPreview.prototype.pageFormat=null,mxPrintPreview.prototype.scale=null,mxPrintPreview.prototype.border=0,mxPrintPreview.prototype.x0=0,mxPrintPreview.prototype.y0=0,mxPrintPreview.prototype.autoOrigin=!0,mxPrintPreview.prototype.printOverlays=!1,mxPrintPreview.prototype.borderColor=null,mxPrintPreview.prototype.title=null,mxPrintPreview.prototype.pageSelector=null,mxPrintPreview.prototype.wnd=null,mxPrintPreview.prototype.pageCount=0,mxPrintPreview.prototype.getWindow=function(){return this.wnd},mxPrintPreview.prototype.getDoctype=function(){var e="";return 8==document.documentMode&&(e='<meta http-equiv="X-UA-Compatible" content="IE=8">'),e},mxPrintPreview.prototype.open=function(e){var t=this.graph.cellRenderer.initializeOverlay,n=null;try{if(this.printOverlays&&(this.graph.cellRenderer.initializeOverlay=function(e,t){t.init(e.view.getDrawPane())}),null==this.wnd){this.wnd=window.open();var a=this.wnd.document,i=this.getDoctype();null!=i&&0<i.length&&a.writeln(i),a.writeln("<html>"),a.writeln("<head>"),this.writeHead(a,e),a.writeln("</head>"),a.writeln('<body class="mxPage">'),mxClient.link("stylesheet",mxClient.basePath+"/css/common.css",a),mxClient.IS_VML&&(a.namespaces.add("v","urn:schemas-microsoft-com:vml"),a.namespaces.add("o","urn:schemas-microsoft-com:office:office"),a.createStyleSheet().cssText="v\\:*{behavior:url(#default#VML)}o\\:*{behavior:url(#default#VML)}",mxClient.link("stylesheet",mxClient.basePath+"/css/explorer.css",a));var o=this.graph.getGraphBounds().clone(),s=this.graph.getView().getScale(),r=s/this.scale,l=this.graph.getView().getTranslate();this.autoOrigin||(this.x0=-l.x*this.scale,this.y0=-l.y*this.scale,o.width+=o.x,o.height+=o.y,o.x=0,this.border=o.y=0),o.width/=r,o.height/=r;var d=this.pageFormat.width-2*this.border,c=this.pageFormat.height-2*this.border,m=Math.max(1,Math.ceil((o.width+this.x0)/d)),u=Math.max(1,Math.ceil((o.height+this.y0)/c));this.pageCount=m*u;var p=mxUtils.bind(this,function(){if(this.pageSelector&&(1<u||1<m)){var e=this.createPageSelector(u,m);if(a.body.appendChild(e),mxClient.IS_IE){e.style.position="absolute";var t=function(){e.style.top=a.body.scrollTop+10+"px"};mxEvent.addListener(this.wnd,"scroll",function(e){t()}),mxEvent.addListener(this.wnd,"resize",function(e){t()})}}});if(e=function(e,t){if(null!=this.borderColor&&(e.style.borderColor=this.borderColor,e.style.borderStyle="solid",e.style.borderWidth="1px"),e.style.background="white",t&&(e.style.pageBreakAfter="always"),mxClient.IS_IE?(a.writeln(e.outerHTML),e.parentNode.removeChild(e)):(e.parentNode.removeChild(e),a.body.appendChild(e)),t){var n=a.createElement("hr");n.className="mxPageBreak",a.body.appendChild(n)}},null!=(b=this.getCoverPages(this.pageFormat.width,this.pageFormat.height)))for(h=0;h<b.length;h++)e(b[h],!0);for(var g=this.getAppendices(this.pageFormat.width,this.pageFormat.height),h=0;h<u;h++)for(var v=h*c/this.scale-this.y0/this.scale+(o.y-l.y*s)/s,b=0;b<m;b++){if(null==this.wnd)return null;var f=b*d/this.scale-this.x0/this.scale+(o.x-l.x*s)/s,E=h*m+b+1;(n=this.renderPage(this.pageFormat.width,this.pageFormat.height,mxUtils.bind(this,function(e){this.addGraphFragment(-f,-v,this.scale,E,e)}))).setAttribute("id","mxPage-"+E),e(n,null!=g||h<u-1||b<m-1)}if(null!=g)for(h=0;h<g.length;h++)e(g[h],h<g.length);a.writeln("</body>"),a.writeln("</html>"),a.close(),p(),mxEvent.release(a.body)}this.wnd.focus()}catch(e){null!=n&&null!=n.parentNode&&n.parentNode.removeChild(n)}finally{this.graph.cellRenderer.initializeOverlay=t}return this.wnd},mxPrintPreview.prototype.writeHead=function(e,t){null!=this.title&&e.writeln("<title>"+this.title+"</title>"),e.writeln('<style type="text/css">'),e.writeln("@media print {"),e.writeln("  table.mxPageSelector { display: none; }"),e.writeln("  hr.mxPageBreak { display: none; }"),e.writeln("}"),e.writeln("@media screen {"),e.writeln("  table.mxPageSelector { position: fixed; right: 10px; top: 10px;font-family: Arial; font-size:10pt; border: solid 1px darkgray;background: white; border-collapse:collapse; }"),e.writeln("  table.mxPageSelector td { border: solid 1px gray; padding:4px; }"),e.writeln("  body.mxPage { background: gray; }"),e.writeln("}"),null!=t&&e.writeln(t),e.writeln("</style>")},mxPrintPreview.prototype.createPageSelector=function(e,t){var n=this.wnd.document,a=n.createElement("table");a.className="mxPageSelector",a.setAttribute("border","0");for(var i=n.createElement("tbody"),o=0;o<e;o++){for(var s=n.createElement("tr"),r=0;r<t;r++){var l=o*t+r+1,d=n.createElement("td");if(!mxClient.IS_NS||mxClient.IS_SF||mxClient.IS_GC){var c=n.createElement("a");c.setAttribute("href","#mxPage-"+l),mxUtils.write(c,l,n),d.appendChild(c)}else mxUtils.write(d,l,n);s.appendChild(d)}i.appendChild(s)}return a.appendChild(i),a},mxPrintPreview.prototype.renderPage=function(e,t,n){var a=document.createElement("div");try{a.style.width=e+"px",a.style.height=t+"px",a.style.overflow="hidden",a.style.pageBreakInside="avoid",a.style.position="relative";var i=document.createElement("div");i.style.top=this.border+"px",i.style.left=this.border+"px",i.style.width=e-2*this.border+"px",i.style.height=t-2*this.border+"px",i.style.overflow="hidden",this.graph.dialect==mxConstants.DIALECT_VML&&(i.style.position="absolute"),a.appendChild(i),document.body.appendChild(a),n(i)}catch(e){throw a.parentNode.removeChild(a),e}return a},mxPrintPreview.prototype.addGraphFragment=function(e,t,n,a,i){a=this.graph.getView();var o=this.graph.container;this.graph.container=i;var s=a.getCanvas(),r=a.getBackgroundPane(),l=a.getDrawPane(),d=a.getOverlayPane();this.graph.dialect==mxConstants.DIALECT_SVG?a.createSvg():this.graph.dialect==mxConstants.DIALECT_VML?a.createVml():a.createHtml();var c=a.isEventsEnabled();a.setEventsEnabled(!1);var m=this.graph.isEnabled();this.graph.setEnabled(!1);var u=a.getTranslate();a.translate=new mxPoint(e,t),e=null;try{var p=[this.graph.getModel().getRoot()];e=new mxTemporaryCellStates(a,n,p)}finally{if(mxClient.IS_IE)a.overlayPane.innerHTML="";else for(n=i.firstChild;null!=n;)p=n.nextSibling,t=n.nodeName.toLowerCase(),"svg"==t?(n.setAttribute("width",parseInt(i.style.width)),n.setAttribute("height",parseInt(i.style.height))):"default"!=n.style.cursor&&"table"!=t&&n.parentNode.removeChild(n),n=p;a.overlayPane.parentNode.removeChild(a.overlayPane),this.graph.setEnabled(m),this.graph.container=o,a.canvas=s,a.backgroundPane=r,a.drawPane=l,a.overlayPane=d,a.translate=u,e.destroy(),a.setEventsEnabled(c)}},mxPrintPreview.prototype.getCoverPages=function(){return null},mxPrintPreview.prototype.getAppendices=function(){return null},mxPrintPreview.prototype.print=function(){var e=this.open();null!=e&&e.print()},mxPrintPreview.prototype.close=function(){null!=this.wnd&&(this.wnd.close(),this.wnd=null)},mxStylesheet.prototype.createDefaultVertexStyle=function(){var e={};return e[mxConstants.STYLE_SHAPE]=mxConstants.SHAPE_RECTANGLE,e[mxConstants.STYLE_PERIMETER]=mxPerimeter.RectanglePerimeter,e[mxConstants.STYLE_VERTICAL_ALIGN]=mxConstants.ALIGN_MIDDLE,e[mxConstants.STYLE_ALIGN]=mxConstants.ALIGN_CENTER,e[mxConstants.STYLE_FILLCOLOR]="#C3D9FF",e[mxConstants.STYLE_STROKECOLOR]="#6482B9",e[mxConstants.STYLE_FONTCOLOR]="#774400",e},mxStylesheet.prototype.createDefaultEdgeStyle=function(){var e={};return e[mxConstants.STYLE_SHAPE]=mxConstants.SHAPE_CONNECTOR,e[mxConstants.STYLE_ENDARROW]=mxConstants.ARROW_CLASSIC,e[mxConstants.STYLE_VERTICAL_ALIGN]=mxConstants.ALIGN_MIDDLE,e[mxConstants.STYLE_ALIGN]=mxConstants.ALIGN_CENTER,e[mxConstants.STYLE_STROKECOLOR]="#6482B9",e[mxConstants.STYLE_FONTCOLOR]="#446299",e},mxStylesheet.prototype.putDefaultVertexStyle=function(e){this.putCellStyle("defaultVertex",e)},mxStylesheet.prototype.putDefaultEdgeStyle=function(e){this.putCellStyle("defaultEdge",e)},mxStylesheet.prototype.getDefaultVertexStyle=function(){return this.styles.defaultVertex},mxStylesheet.prototype.getDefaultEdgeStyle=function(){return this.styles.defaultEdge},mxStylesheet.prototype.putCellStyle=function(e,t){this.styles[e]=t},mxStylesheet.prototype.getCellStyle=function(e,t){a=t;if(null!=e&&0<e.length)for(var n=e.split(";"),a=null!=a&&";"!=e.charAt(0)?mxUtils.clone(a):{},i=0;i<n.length;i++){var o=n[i],s=o.indexOf("=");if(0<=s){var r=o.substring(0,s);(o=o.substring(s+1))==mxConstants.NONE?delete a[r]:mxUtils.isNumeric(o)?a[r]=parseFloat(o):a[r]=o}else if(null!=(o=this.styles[o]))for(r in o)a[r]=o[r]}return a},mxCellState.prototype=new mxRectangle,mxCellState.prototype.constructor=mxCellState,mxCellState.prototype.view=null,mxCellState.prototype.cell=null,mxCellState.prototype.style=null,mxCellState.prototype.invalid=!0,mxCellState.prototype.invalidOrder=!1,mxCellState.prototype.orderChanged=!1,mxCellState.prototype.origin=null,mxCellState.prototype.absolutePoints=null,mxCellState.prototype.absoluteOffset=null,mxCellState.prototype.visibleSourceState=null,mxCellState.prototype.visibleTargetState=null,mxCellState.prototype.terminalDistance=0,mxCellState.prototype.length=0,mxCellState.prototype.segments=null,mxCellState.prototype.shape=null,mxCellState.prototype.text=null,mxCellState.prototype.getPerimeterBounds=function(e,t){if(e=e||0,t=null!=t?t:new mxRectangle(this.x,this.y,this.width,this.height),null!=this.shape&&null!=this.shape.stencil){var n=this.shape.stencil.computeAspect(this.style,t.x,t.y,t.width,t.height);t.x=n.x,t.y=n.y,t.width=this.shape.stencil.w0*n.width,t.height=this.shape.stencil.h0*n.height}return 0!=e&&t.grow(e),t},mxCellState.prototype.setAbsoluteTerminalPoint=function(e,t){t?(null==this.absolutePoints&&(this.absolutePoints=[]),0==this.absolutePoints.length?this.absolutePoints.push(e):this.absolutePoints[0]=e):null==this.absolutePoints?(this.absolutePoints=[],this.absolutePoints.push(null),this.absolutePoints.push(e)):1==this.absolutePoints.length?this.absolutePoints.push(e):this.absolutePoints[this.absolutePoints.length-1]=e},mxCellState.prototype.setCursor=function(e){null!=this.shape&&this.shape.setCursor(e),null!=this.text&&this.text.setCursor(e)},mxCellState.prototype.getVisibleTerminal=function(e){return e=this.getVisibleTerminalState(e),null!=e?e.cell:null},mxCellState.prototype.getVisibleTerminalState=function(e){return e?this.visibleSourceState:this.visibleTargetState},mxCellState.prototype.setVisibleTerminalState=function(e,t){t?this.visibleSourceState=e:this.visibleTargetState=e},mxCellState.prototype.destroy=function(){this.view.graph.cellRenderer.destroy(this)},mxCellState.prototype.clone=function(){var e=new mxCellState(this.view,this.cell,this.style);if(null!=this.absolutePoints){e.absolutePoints=[];for(var t=0;t<this.absolutePoints.length;t++)e.absolutePoints[t]=this.absolutePoints[t].clone()}return null!=this.origin&&(e.origin=this.origin.clone()),null!=this.absoluteOffset&&(e.absoluteOffset=this.absoluteOffset.clone()),null!=this.boundingBox&&(e.boundingBox=this.boundingBox.clone()),e.terminalDistance=this.terminalDistance,e.segments=this.segments,e.length=this.length,e.x=this.x,e.y=this.y,e.width=this.width,e.height=this.height,e},mxGraphSelectionModel.prototype=new mxEventSource,mxGraphSelectionModel.prototype.constructor=mxGraphSelectionModel,mxGraphSelectionModel.prototype.doneResource="none"!=mxClient.language?"done":"",mxGraphSelectionModel.prototype.updatingSelectionResource="none"!=mxClient.language?"updatingSelection":"",mxGraphSelectionModel.prototype.graph=null,mxGraphSelectionModel.prototype.singleSelection=!1,mxGraphSelectionModel.prototype.isSingleSelection=function(){return this.singleSelection},mxGraphSelectionModel.prototype.setSingleSelection=function(e){this.singleSelection=e},mxGraphSelectionModel.prototype.isSelected=function(e){return null!=e&&0<=mxUtils.indexOf(this.cells,e)},mxGraphSelectionModel.prototype.isEmpty=function(){return 0==this.cells.length},mxGraphSelectionModel.prototype.clear=function(){this.changeSelection(null,this.cells)},mxGraphSelectionModel.prototype.setCell=function(e){null!=e&&this.setCells([e])},mxGraphSelectionModel.prototype.setCells=function(e){if(null!=e){this.singleSelection&&(e=[this.getFirstSelectableCell(e)]);for(var t=[],n=0;n<e.length;n++)this.graph.isCellSelectable(e[n])&&t.push(e[n]);this.changeSelection(t,this.cells)}},mxGraphSelectionModel.prototype.getFirstSelectableCell=function(e){if(null!=e)for(var t=0;t<e.length;t++)if(this.graph.isCellSelectable(e[t]))return e[t];return null},mxGraphSelectionModel.prototype.addCell=function(e){null!=e&&this.addCells([e])},mxGraphSelectionModel.prototype.addCells=function(e){if(null!=e){var t=null;this.singleSelection&&(t=this.cells,e=[this.getFirstSelectableCell(e)]);for(var n=[],a=0;a<e.length;a++)!this.isSelected(e[a])&&this.graph.isCellSelectable(e[a])&&n.push(e[a]);this.changeSelection(n,t)}},mxGraphSelectionModel.prototype.removeCell=function(e){null!=e&&this.removeCells([e])},mxGraphSelectionModel.prototype.removeCells=function(e){if(null!=e){for(var t=[],n=0;n<e.length;n++)this.isSelected(e[n])&&t.push(e[n]);this.changeSelection(null,t)}},mxGraphSelectionModel.prototype.changeSelection=function(e,t){if(null!=e&&0<e.length&&null!=e[0]||null!=t&&0<t.length&&null!=t[0]){var n=new mxSelectionChange(this,e,t);n.execute();var a=new mxUndoableEdit(this,!1);a.add(n),this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",a))}},mxGraphSelectionModel.prototype.cellAdded=function(e){null!=e&&!this.isSelected(e)&&this.cells.push(e)},mxGraphSelectionModel.prototype.cellRemoved=function(e){null!=e&&0<=(e=mxUtils.indexOf(this.cells,e))&&this.cells.splice(e,1)},mxSelectionChange.prototype.execute=function(){var e=mxLog.enter("mxSelectionChange.execute");if(window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource,null!=this.removed)for(var t=0;t<this.removed.length;t++)this.selectionModel.cellRemoved(this.removed[t]);if(null!=this.added)for(t=0;t<this.added.length;t++)this.selectionModel.cellAdded(this.added[t]);t=this.added,this.added=this.removed,this.removed=t,window.status=mxResources.get(this.selectionModel.doneResource)||this.selectionModel.doneResource,mxLog.leave("mxSelectionChange.execute",e),this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))},mxCellEditor.prototype.graph=null,mxCellEditor.prototype.textarea=null,mxCellEditor.prototype.editingCell=null,mxCellEditor.prototype.trigger=null,mxCellEditor.prototype.modified=!1,mxCellEditor.prototype.autoSize=!0,mxCellEditor.prototype.emptyLabelText="",mxCellEditor.prototype.textNode="",mxCellEditor.prototype.init=function(){this.textarea=document.createElement("textarea"),this.textarea.className="mxCellEditor",this.textarea.style.position="absolute",this.textarea.style.overflow="visible",this.textarea.setAttribute("cols","20"),this.textarea.setAttribute("rows","4"),mxClient.IS_NS&&(this.textarea.style.resize="none"),mxEvent.addListener(this.textarea,"blur",mxUtils.bind(this,function(e){this.focusLost()})),mxEvent.addListener(this.textarea,"keydown",mxUtils.bind(this,function(e){mxEvent.isConsumed(e)||(113==e.keyCode||this.graph.isEnterStopsCellEditing()&&13==e.keyCode&&!mxEvent.isControlDown(e)&&!mxEvent.isShiftDown(e)?(this.graph.stopEditing(!1),mxEvent.consume(e)):27==e.keyCode?(this.graph.stopEditing(!0),mxEvent.consume(e)):(this.clearOnChange&&(this.clearOnChange=!1,this.textarea.value=""),this.setModified(!0)))})),mxEvent.addListener(this.textarea,"keypress",mxUtils.bind(this,function(e){this.autoSize&&!mxEvent.isConsumed(e)&&setTimeout(mxUtils.bind(this,function(){this.resize()}),0)}))},mxCellEditor.prototype.resize=function(){if(null!=this.textDiv){var e=this.graph.getView().getState(this.editingCell),t=this.graph.isLabelClipped(e.cell),n=this.graph.isWrapping(e.cell);this.graph.getModel().isEdge(e.cell)?(this.bounds.x=e.absoluteOffset.x,this.bounds.y=e.absoluteOffset.y,this.bounds.width=0,this.bounds.height=0):null!=this.bounds&&(this.bounds.x=e.x,this.bounds.y=e.y,this.bounds.width=e.width,this.bounds.height=e.height,(a=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER))==mxConstants.ALIGN_LEFT?this.bounds.x-=e.width:a==mxConstants.ALIGN_RIGHT&&(this.bounds.x+=e.width),(a=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE))==mxConstants.ALIGN_TOP?this.bounds.y-=e.height:a==mxConstants.ALIGN_BOTTOM&&(this.bounds.y+=e.height)),"\n"!=(a=this.textarea.value).charAt(a.length-1)&&""!=a||(a+="&nbsp;"),a=mxUtils.htmlEntities(a,!1),n?(this.textDiv.style.whiteSpace="normal",this.textDiv.style.width=this.bounds.width+"px"):a=a.replace(/ /g,"&nbsp;"),a=a.replace(/\n/g,"<br/>"),this.textDiv.innerHTML=a;var a=this.textDiv.offsetWidth+30,i=this.textDiv.offsetHeight+16,a=Math.max(a,40),i=Math.max(i,20);t&&(a=Math.min(this.bounds.width-4,a),i=Math.min(this.bounds.height,i));var o=null!=e.text?e.text.margin:null;null==o&&(o=mxUtils.getValue(e.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),e=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),o=mxUtils.getAlignmentAsPoint(o,e)),null!=o&&(!t&&n||(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-o.x*this.bounds.width+o.x*a)-3)+"px"),this.textarea.style.top=Math.max(0,Math.round(this.bounds.y-o.y*this.bounds.height+o.y*i)+4)+"px"),!t&&n||(this.textarea.style.width=a+"px"),this.textarea.style.height=i+"px"}},mxCellEditor.prototype.isModified=function(){return this.modified},mxCellEditor.prototype.setModified=function(e){this.modified=e},mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())},mxCellEditor.prototype.startEditing=function(e,t){null==this.textarea&&this.init(),this.stopEditing(!0);var n=this.graph.getView().getState(e);if(null!=n){this.editingCell=e,this.trigger=t,this.textNode=null,null!=n.text&&this.isHideLabel(n)&&(this.textNode=n.text.node,this.textNode.style.visibility="hidden");var a=this.graph.getView().scale,a=mxUtils.getValue(n.style,mxConstants.STYLE_FONTSIZE,mxConstants.DEFAULT_FONTSIZE)*a,i=mxUtils.getValue(n.style,mxConstants.STYLE_FONTFAMILY,mxConstants.DEFAULT_FONTFAMILY),o=mxUtils.getValue(n.style,mxConstants.STYLE_FONTCOLOR,"black"),s=mxUtils.getValue(n.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT),r=(mxUtils.getValue(n.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD,l=(mxUtils.getValue(n.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC,d=(mxUtils.getValue(n.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE;this.textarea.style.fontSize=Math.round(a)+"px",this.textarea.style.lineHeight=Math.round(a*mxConstants.LINE_HEIGHT)+"px",this.textarea.style.fontFamily=i,this.textarea.style.textAlign=s,this.textarea.style.color=o,this.textarea.style.fontWeight=r?"bold":"normal",this.textarea.style.fontStyle=l?"italic":"",this.textarea.style.textDecoration=d?"underline":"",this.textarea.style.overflow="auto",this.textarea.style.outline="none",this.bounds=a=this.getEditorBounds(n),this.textarea.style.left=a.x+"px",this.textarea.style.top=a.y+"px",this.textarea.style.width=a.width+"px",this.textarea.style.height=a.height+"px",this.textarea.style.zIndex=5,null==(n=this.getInitialValue(n,t))||0==n.length?(n=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=!1,this.setModified(!1),this.textarea.value=n,this.graph.container.appendChild(this.textarea),"none"!=this.textarea.style.display&&(this.autoSize&&(this.textDiv=this.createTextDiv(),document.body.appendChild(this.textDiv),this.resize()),this.textarea.focus(),this.textarea.select())}},mxCellEditor.prototype.createTextDiv=function(){var e=document.createElement("div"),t=e.style;return t.position="absolute",t.whiteSpace="nowrap",t.visibility="hidden",t.display=mxClient.IS_QUIRKS?"inline":"inline-block",t.zoom="1",t.verticalAlign="top",t.lineHeight=this.textarea.style.lineHeight,t.fontSize=this.textarea.style.fontSize,t.fontFamily=this.textarea.style.fontFamily,t.fontWeight=this.textarea.style.fontWeight,t.textAlign=this.textarea.style.textAlign,t.fontStyle=this.textarea.style.fontStyle,t.textDecoration=this.textarea.style.textDecoration,e},mxCellEditor.prototype.stopEditing=function(e){null!=this.editingCell&&(null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null),!e&&this.isModified()&&this.graph.labelChanged(this.editingCell,this.getCurrentValue(),this.trigger),null!=this.textDiv&&(document.body.removeChild(this.textDiv),this.textDiv=null),this.bounds=this.trigger=this.editingCell=null,this.textarea.blur(),this.textarea.parentNode.removeChild(this.textarea))},mxCellEditor.prototype.getInitialValue=function(e,t){return this.graph.getEditingValue(e.cell,t)},mxCellEditor.prototype.getCurrentValue=function(){return this.textarea.value.replace(/\r/g,"")},mxCellEditor.prototype.isHideLabel=function(e){return!0},mxCellEditor.prototype.getMinimumSize=function(e){var t=this.graph.getView().scale;return new mxRectangle(0,0,null==e.text?30:e.text.size*t+20,"left"==this.textarea.style.textAlign?120:40)},mxCellEditor.prototype.getEditorBounds=function(e){var t=this.graph.getModel().isEdge(e.cell),n=this.graph.getView().scale,a=(i=this.getMinimumSize(e)).width,i=i.height,o=parseInt(e.style[mxConstants.STYLE_SPACING]||2)*n,s=parseInt(e.style[mxConstants.STYLE_SPACING_TOP]||0)*n+o,r=parseInt(e.style[mxConstants.STYLE_SPACING_RIGHT]||0)*n+o,l=parseInt(e.style[mxConstants.STYLE_SPACING_BOTTOM]||0)*n+o,n=parseInt(e.style[mxConstants.STYLE_SPACING_LEFT]||0)*n+o,r=new mxRectangle(e.x,e.y,Math.max(a,e.width-n-r),Math.max(i,e.height-s-l));return t?(r.x=e.absoluteOffset.x,r.y=e.absoluteOffset.y,null!=e.text&&null!=e.text.boundingBox&&(0<e.text.boundingBox.x&&(r.x=e.text.boundingBox.x),0<e.text.boundingBox.y&&(r.y=e.text.boundingBox.y))):null!=e.text&&null!=e.text.boundingBox&&(r.x=Math.min(r.x,e.text.boundingBox.x),r.y=Math.min(r.y,e.text.boundingBox.y)),r.x+=n,r.y+=s,null!=e.text&&null!=e.text.boundingBox&&(t?(r.width=Math.max(a,e.text.boundingBox.width),r.height=Math.max(i,e.text.boundingBox.height)):(r.width=Math.max(r.width,e.text.boundingBox.width),r.height=Math.max(r.height,e.text.boundingBox.height))),this.graph.getModel().isVertex(e.cell)&&(t=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),t==mxConstants.ALIGN_LEFT?r.x-=e.width:t==mxConstants.ALIGN_RIGHT&&(r.x+=e.width),t=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),t==mxConstants.ALIGN_TOP?r.y-=e.height:t==mxConstants.ALIGN_BOTTOM&&(r.y+=e.height)),r},mxCellEditor.prototype.getEmptyLabelText=function(e){return this.emptyLabelText},mxCellEditor.prototype.getEditingCell=function(){return this.editingCell},mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null)},mxCellRenderer.prototype.defaultEdgeShape=mxConnector,mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape,mxCellRenderer.prototype.defaultTextShape=mxText,mxCellRenderer.prototype.legacyControlPosition=!0,mxCellRenderer.prototype.defaultShapes={},mxCellRenderer.registerShape=function(e,t){mxCellRenderer.prototype.defaultShapes[e]=t},mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape),mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse),mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus),mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder),mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector),mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor),mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle),mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon),mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud),mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine),mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow),mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse),mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane),mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape),mxCellRenderer.registerShape(mxConstants.SHAPE_LABEL,mxLabel),mxCellRenderer.prototype.initialize=function(e,t){var n=e.view.graph.getModel();null!=e.view.graph.container&&null==e.shape&&e.cell!=e.view.currentRoot&&(n.isVertex(e.cell)||n.isEdge(e.cell))&&(this.createShape(e),null==e.shape||null!=t&&!t||(this.initializeShape(e),e.view.graph.ordered||n.isEdge(e.cell)?e.invalidOrder=!0:e.view.graph.keepEdgesInForeground&&null!=this.firstEdge&&(this.firstEdge.parentNode==e.shape.node.parentNode?this.insertState(e,this.firstEdge):this.firstEdge=null),e.shape.scale=e.view.scale,this.createCellOverlays(e),this.installListeners(e)))},mxCellRenderer.prototype.initializeShape=function(e){e.shape.init(e.view.getDrawPane())},mxCellRenderer.prototype.getPreviousStateInContainer=function(e,t){for(var n=null,a=e.view.graph,i=a.getModel(),o=e.cell,s=i.getParent(o);null!=s&&null==n;)n=this.findPreviousStateInContainer(a,s,o,t),o=s,s=i.getParent(o);return n},mxCellRenderer.prototype.findPreviousStateInContainer=function(e,t,n,a){var i=null,o=e.getModel();for(n=null!=n?t.getIndex(n)-1:o.getChildCount(t)-1;0<=n&&null==i;n--)i=this.findPreviousStateInContainer(e,o.getChildAt(t,n),null,a);return null!=i||null==(i=e.view.getState(t))||null!=i.shape&&null!=i.shape.node&&i.shape.node.parentNode==a||(i=null),i},mxCellRenderer.prototype.order=function(e){var t=e.shape.node.parentNode,n=this.getPreviousStateInContainer(e,t),a=t.firstChild;null!=n&&(a=n.shape.node,null!=n.text&&null!=n.text.node&&n.text.node.parentNode==t&&(a=n.text.node),a=a.nextSibling),this.insertState(e,a)},mxCellRenderer.prototype.orderEdge=function(e){var t=e.view,n=t.graph.getModel();if(t.graph.keepEdgesInForeground)null!=this.firstEdge&&null!=this.firstEdge.parentNode&&this.firstEdge.parentNode==e.shape.node.parentNode||(this.firstEdge=e.shape.node);else if(t.graph.keepEdgesInBackground){var a=e.shape.node,i=a.parentNode,n=n.getParent(e.cell);null!=(i=null!=(t=t.getState(n))&&null!=t.shape&&null!=t.shape.node?t.shape.node.nextSibling:i.firstChild)&&i!=a&&this.insertState(e,i)}},mxCellRenderer.prototype.insertState=function(e,t){e.shape.node.parentNode.insertBefore(e.shape.node,t),null!=e.text&&null!=e.text.node&&e.text.node.parentNode==e.shape.node.parentNode&&e.shape.node.parentNode.insertBefore(e.text.node,e.shape.node.nextSibling)},mxCellRenderer.prototype.createShape=function(e){if(null!=e.style){var t=mxStencilRegistry.getStencil(e.style[mxConstants.STYLE_SHAPE]);null!=t?e.shape=new mxShape(t):(t=this.getShapeConstructor(e),e.shape=new t),e.shape.points=e.absolutePoints,e.shape.bounds=new mxRectangle(e.x,e.y,e.width,e.height),e.shape.dialect=e.view.graph.dialect,this.configureShape(e)}},mxCellRenderer.prototype.getShape=function(e){return null!=e?mxCellRenderer.prototype.defaultShapes[e]:null},mxCellRenderer.prototype.getShapeConstructor=function(e){var t=this.getShape(e.style[mxConstants.STYLE_SHAPE]);return null==t&&(t=e.view.graph.getModel().isEdge(e.cell)?this.defaultEdgeShape:this.defaultVertexShape),t},mxCellRenderer.prototype.configureShape=function(e){e.shape.apply(e),e.shape.image=e.view.graph.getImage(e),e.shape.indicatorShape=this.getShape(e.view.graph.getIndicatorShape(e)),e.shape.indicatorColor=e.view.graph.getIndicatorColor(e),e.shape.indicatorGradientColor=e.view.graph.getIndicatorGradientColor(e),e.shape.indicatorDirection=e.style[mxConstants.STYLE_INDICATOR_DIRECTION],e.shape.indicatorImage=e.view.graph.getIndicatorImage(e),this.postConfigureShape(e)},mxCellRenderer.prototype.postConfigureShape=function(e){null!=e.shape&&(this.resolveColor(e,"indicatorColor",mxConstants.STYLE_FILLCOLOR),this.resolveColor(e,"indicatorGradientColor",mxConstants.STYLE_GRADIENTCOLOR),this.resolveColor(e,"fill",mxConstants.STYLE_FILLCOLOR),this.resolveColor(e,"stroke",mxConstants.STYLE_STROKECOLOR),this.resolveColor(e,"gradient",mxConstants.STYLE_GRADIENTCOLOR))},mxCellRenderer.prototype.resolveColor=function(e,t,n){var a=e.shape[t],i=e.view.graph,o=null;"inherit"==a?o=i.model.getParent(e.cell):"swimlane"==a?(o=null!=i.model.getTerminal(e.cell,!1)?i.model.getTerminal(e.cell,!1):e.cell,o=i.getSwimlane(o),n=i.swimlaneIndicatorColorAttribute):"indicated"==a&&(e.shape[t]=e.shape.indicatorColor),null!=o&&(a=i.getView().getState(o),e.shape[t]=null,null!=a&&(e.shape[t]=null!=a.shape&&"indicatorColor"!=t?a.shape[t]:a.style[n]))},mxCellRenderer.prototype.getLabelValue=function(e){return e.view.graph.getLabel(e.cell)},mxCellRenderer.prototype.createLabel=function(e,t){var n=e.view.graph;if(n.getModel().isEdge(e.cell),0<e.style[mxConstants.STYLE_FONTSIZE]||null==e.style[mxConstants.STYLE_FONTSIZE]){var a=n.isHtmlLabel(e.cell)||null!=t&&mxUtils.isNode(t);e.text=new this.defaultTextShape(t,new mxRectangle,e.style[mxConstants.STYLE_ALIGN]||mxConstants.ALIGN_CENTER,n.getVerticalAlign(e),e.style[mxConstants.STYLE_FONTCOLOR],e.style[mxConstants.STYLE_FONTFAMILY],e.style[mxConstants.STYLE_FONTSIZE],e.style[mxConstants.STYLE_FONTSTYLE],e.style[mxConstants.STYLE_SPACING],e.style[mxConstants.STYLE_SPACING_TOP],e.style[mxConstants.STYLE_SPACING_RIGHT],e.style[mxConstants.STYLE_SPACING_BOTTOM],e.style[mxConstants.STYLE_SPACING_LEFT],e.style[mxConstants.STYLE_HORIZONTAL],e.style[mxConstants.STYLE_LABEL_BACKGROUNDCOLOR],e.style[mxConstants.STYLE_LABEL_BORDERCOLOR],n.isWrapping(e.cell)&&n.isHtmlLabel(e.cell),n.isLabelClipped(e.cell),e.style[mxConstants.STYLE_OVERFLOW],e.style[mxConstants.STYLE_LABEL_PADDING]),e.text.opacity=mxUtils.getValue(e.style,mxConstants.STYLE_TEXT_OPACITY,100),e.text.dialect=a?mxConstants.DIALECT_STRICTHTML:e.view.graph.dialect,e.text.state=e,this.initializeLabel(e);var i=!1,o=function(t){var a=e;return(mxClient.IS_TOUCH||i)&&(a=mxEvent.getClientX(t),t=mxEvent.getClientY(t),t=mxUtils.convertPoint(n.container,a,t),a=n.view.getState(n.getCellAt(t.x,t.y))),a};mxEvent.addGestureListeners(e.text.node,mxUtils.bind(this,function(t){this.isLabelEvent(e,t)&&(n.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(t,e)),i=n.dialect!=mxConstants.DIALECT_SVG&&"IMG"==mxEvent.getSource(t).nodeName)}),mxUtils.bind(this,function(t){this.isLabelEvent(e,t)&&n.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t,o(t)))}),mxUtils.bind(this,function(t){this.isLabelEvent(e,t)&&(n.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(t,o(t))),i=!1)})),mxEvent.addListener(e.text.node,"dblclick",mxUtils.bind(this,function(t){this.isLabelEvent(e,t)&&(n.dblClick(t,e.cell),mxEvent.consume(t))}))}},mxCellRenderer.prototype.initializeLabel=function(e){var t=e.view.graph;e.text.dialect!=mxConstants.DIALECT_SVG&&(mxClient.IS_SVG&&mxClient.NO_FO?e.text.init(t.container):mxUtils.isVml(e.view.getDrawPane())&&(null!=e.shape.label?e.text.init(e.shape.label):e.text.init(e.shape.node))),null==e.text.node&&(e.text.init(e.view.getDrawPane()),null!=e.shape&&null!=e.text&&e.shape.node.parentNode.insertBefore(e.text.node,e.shape.node.nextSibling))},mxCellRenderer.prototype.createCellOverlays=function(e){var t=e.view.graph.getCellOverlays(e.cell),n=null;if(null!=t)for(var n=new mxDictionary,a=0;a<t.length;a++){var i=null!=e.overlays?e.overlays.remove(t[a]):null;null==i&&(i=new mxImageShape(new mxRectangle,t[a].image.src),i.dialect=e.view.graph.dialect,i.preserveImageAspect=!1,i.overlay=t[a],this.initializeOverlay(e,i),this.installCellOverlayListeners(e,t[a],i),null!=t[a].cursor&&(i.node.style.cursor=t[a].cursor)),n.put(t[a],i)}null!=e.overlays&&e.overlays.visit(function(e,t){t.destroy()}),e.overlays=n},mxCellRenderer.prototype.initializeOverlay=function(e,t){t.init(e.view.getOverlayPane())},mxCellRenderer.prototype.installCellOverlayListeners=function(e,t,n){var a=e.view.graph;mxEvent.addListener(n.node,"click",function(n){a.isEditing()&&a.stopEditing(!a.isInvokesStopCellEditing()),t.fireEvent(new mxEventObject(mxEvent.CLICK,"event",n,"cell",e.cell))}),mxEvent.addGestureListeners(n.node,function(e){mxEvent.consume(e)},function(t){a.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t,e))}),mxClient.IS_TOUCH&&mxEvent.addListener(n.node,"touchend",function(n){t.fireEvent(new mxEventObject(mxEvent.CLICK,"event",n,"cell",e.cell))})},mxCellRenderer.prototype.createControl=function(e){var t=e.view.graph,n=t.getFoldingImage(e);if(t.foldingEnabled&&null!=n){if(null==e.control){var a=new mxRectangle(0,0,n.width,n.height);e.control=new mxImageShape(a,n.src),e.control.preserveImageAspect=!1,e.control.dialect=t.dialect,this.initControl(e,e.control,!0,function(n){if(t.isEnabled()){var a=!t.isCellCollapsed(e.cell);t.foldCells(a,!1,[e.cell]),mxEvent.consume(n)}})}}else null!=e.control&&(e.control.destroy(),e.control=null)},mxCellRenderer.prototype.initControl=function(e,t,n,a){var i=e.view.graph;return i.isHtmlLabel(e.cell)&&mxClient.NO_FO&&i.dialect==mxConstants.DIALECT_SVG?(t.dialect=mxConstants.DIALECT_PREFERHTML,t.init(i.container),t.node.style.zIndex=1):t.init(e.view.getOverlayPane()),t=t.innerNode||t.node,a&&(i.isEnabled()&&(t.style.cursor="pointer"),mxEvent.addListener(t,"click",a)),n&&mxEvent.addGestureListeners(t,function(t){i.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(t,e)),mxEvent.consume(t)},function(t){i.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t,e))}),t},mxCellRenderer.prototype.isShapeEvent=function(e,t){return!0},mxCellRenderer.prototype.isLabelEvent=function(e,t){return!0},mxCellRenderer.prototype.installListeners=function(e){var t=e.view.graph,n=function(n){var a=e;return(t.dialect!=mxConstants.DIALECT_SVG&&"IMG"==mxEvent.getSource(n).nodeName||mxClient.IS_TOUCH)&&(a=mxEvent.getClientX(n),n=mxEvent.getClientY(n),n=mxUtils.convertPoint(t.container,a,n),a=t.view.getState(t.getCellAt(n.x,n.y))),a},a=!1;mxEvent.addListener(e.shape.node,"gesturestart",mxUtils.bind(this,function(e){t.lastTouchTime=0,a=!0,mxEvent.consume(e)})),mxEvent.addGestureListeners(e.shape.node,mxUtils.bind(this,function(n){this.isShapeEvent(e,n)&&!a?t.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(n,null!=e.shape&&mxEvent.getSource(n)==e.shape.content?null:e)):a&&mxEvent.consume(n)}),mxUtils.bind(this,function(i){this.isShapeEvent(e,i)&&!a?t.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(i,null!=e.shape&&mxEvent.getSource(i)==e.shape.content?null:n(i))):a&&mxEvent.consume(i)}),mxUtils.bind(this,function(i){this.isShapeEvent(e,i)&&!a?t.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(i,null!=e.shape&&mxEvent.getSource(i)==e.shape.content?null:n(i))):a&&mxEvent.consume(i)}));var i=mxClient.IS_TOUCH?"gestureend":"dblclick";mxEvent.addListener(e.shape.node,i,mxUtils.bind(this,function(n){a=!1,"gestureend"==i?(t.lastTouchTime=0,t.gestureEnabled&&(t.handleGesture(e,n),mxEvent.consume(n))):this.isShapeEvent(e,n)&&(t.dblClick(n,null!=e.shape&&mxEvent.getSource(n)==e.shape.content?null:e.cell),mxEvent.consume(n))}))},mxCellRenderer.prototype.redrawLabel=function(e,t){var n=this.getLabelValue(e);if(null==e.text&&null!=n&&(mxUtils.isNode(n)||0<n.length)?this.createLabel(e,n):null==e.text||null!=n&&0!=n.length||(e.text.destroy(),e.text=null),null!=e.text){var a=(i=e.view.graph).isWrapping(e.cell),i=i.isLabelClipped(e.cell),o=this.getLabelBounds(e);!t&&e.text.value==n&&e.text.isWrapping==a&&e.text.isClipping==i&&e.text.scale==e.view.scale&&e.text.bounds.equals(o)||(e.text.value=n,e.text.bounds=o,e.text.scale=this.getTextScale(e),e.text.isWrapping=a,e.text.isClipping=i,e.text.redraw())}},mxCellRenderer.prototype.getTextScale=function(e){return e.view.scale},mxCellRenderer.prototype.getLabelBounds=function(e){var t=e.view.graph,n=e.view.scale,a=t.getModel().isEdge(e.cell),i=new mxRectangle(e.absoluteOffset.x,e.absoluteOffset.y);return e.text.updateMargin(),a?(a=e.text.getSpacing(),i.x+=a.x*n,i.y+=a.y*n,null!=(t=t.getCellGeometry(e.cell))&&(i.width=Math.max(0,e.text.margin.x*t.width*n-e.text.spacingLeft*n-e.text.spacingRight*n),i.height=Math.max(0,e.text.margin.y*t.height*n-e.text.spacingTop*n-e.text.spacingBottom*n))):(e.text.isPaintBoundsInverted()&&(a=i.x,i.x=i.y,i.y=a),i.x+=e.x,i.y+=e.y,i.width=Math.max(1,e.width),i.height=Math.max(1,e.height),t.isSwimlane(e.cell)&&(t=t.getStartSize(e.cell),0<t.width?(a=Math.min(i.width,t.width*n),e.shape.flipH&&(i.x+=i.width-a),i.width=a):0<t.height&&(a=Math.min(i.height,t.height*n),e.shape.flipV&&(i.y+=i.height-a),i.height=a)),this.rotateLabelBounds(e,i)),i},mxCellRenderer.prototype.rotateLabelBounds=function(e,t){if(e.text.isPaintBoundsInverted()){n=(e.width-e.height)/2;t.x+=n,t.y-=n,n=t.width,t.width=t.height,t.height=n}if(t.x-=e.text.margin.x*t.width,t.y-=e.text.margin.y*t.height,"fill"!=e.style[mxConstants.STYLE_OVERFLOW]){var n=e.view.scale,a=e.text.getSpacing();t.x+=a.x*n,t.y+=a.y*n,t.width=Math.max(0,t.width-e.text.spacingLeft*n-e.text.spacingRight*n),t.height=Math.max(0,t.height-e.text.spacingTop*n-e.text.spacingBottom*n)}var i=e.text.getTextRotation();0!=i&&null!=e&&e.view.graph.model.isVertex(e.cell)&&(n=e.getCenterX(),a=e.getCenterY(),t.x!=n||t.y!=a)&&(i*=Math.PI/180,pt=mxUtils.getRotatedPoint(new mxPoint(t.x,t.y),Math.cos(i),Math.sin(i),new mxPoint(n,a)),t.x=pt.x,t.y=pt.y)},mxCellRenderer.prototype.redrawCellOverlays=function(e,t){if(this.createCellOverlays(e),null!=e.overlays){var n=mxUtils.mod(mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION,0),90),a=mxUtils.toRadians(n),i=Math.cos(a),o=Math.sin(a);e.overlays.visit(function(a,s){var r=s.overlay.getBounds(e);if(!e.view.graph.getModel().isEdge(e.cell)&&null!=e.shape&&0!=n){var l=r.getCenterX(),d=r.getCenterY(),l=(d=mxUtils.getRotatedPoint(new mxPoint(l,d),i,o,new mxPoint(e.getCenterX(),e.getCenterY()))).x,d=d.y;r.x=Math.round(l-r.width/2),r.y=Math.round(d-r.height/2)}!t&&null!=s.bounds&&s.scale==e.view.scale&&s.bounds.equals(r)||(s.bounds=r,s.scale=e.view.scale,s.redraw())})}},mxCellRenderer.prototype.redrawControl=function(e,t){if(null!=e.control){var n=this.getControlBounds(e),a=this.legacyControlPosition?mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION,0):e.shape.getTextRotation(),i=e.view.scale;!t&&e.control.scale==i&&e.control.bounds.equals(n)&&e.control.rotation==a||(e.control.rotation=a,e.control.bounds=n,e.control.scale=i,e.control.redraw())}},mxCellRenderer.prototype.getControlBounds=function(e){if(null!=e.control){var t=e.control.scale,n=e.control.bounds.width/t,t=e.control.bounds.height/t,a=e.view.scale,i=e.getCenterX(),o=e.getCenterY();if(!e.view.graph.getModel().isEdge(e.cell)&&(i=e.x+n*a,o=e.y+t*a,null!=e.shape)){var s=e.shape.getShapeRotation();if(this.legacyControlPosition)s=mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION,0);else if(e.shape.isPaintBoundsInverted())var r=(e.width-e.height)/2,i=i+r,o=o-r;0!=s&&(r=mxUtils.toRadians(s),s=Math.cos(r),r=Math.sin(r),o=mxUtils.getRotatedPoint(new mxPoint(i,o),s,r,new mxPoint(e.getCenterX(),e.getCenterY())),i=o.x,o=o.y)}return e.view.graph.getModel().isEdge(e.cell),new mxRectangle(Math.round(i-n/2*a),Math.round(o-t/2*a),Math.round(n*a),Math.round(t*a))}return null},mxCellRenderer.prototype.redraw=function(e,t,n){if(null!=e.shape){var a=!1;e.view.graph.getModel().isEdge(e.cell),reconfigure=null!=t&&t,this.createControl(e),(e.orderChanged||e.invalidOrder)&&(e.view.graph.ordered?this.order(e):this.orderEdge(e)),!e.orderChanged&&mxUtils.equalEntries(e.shape.style,e.style)||(this.configureShape(e),t=!0),delete e.invalidOrder,delete e.orderChanged,!t&&null!=e.shape.bounds&&e.shape.scale==e.view.scale&&e.shape.bounds.equals(e)&&mxUtils.equalPoints(e.shape.points,e.absolutePoints)||(a=!0,e.shape.points=null!=e.absolutePoints?e.absolutePoints.slice():null,e.shape.bounds=new mxRectangle(e.x,e.y,e.width,e.height),e.shape.scale=e.view.scale,null==n||n?e.shape.redraw():e.shape.updateBoundingBox()),(null==n||n)&&(this.redrawLabel(e,a),this.redrawCellOverlays(e,a),this.redrawControl(e,a))}},mxCellRenderer.prototype.destroy=function(e){null!=e.shape&&(null!=e.text&&(e.text.destroy(),e.text=null),null!=e.overlays&&(e.overlays.visit(function(e,t){t.destroy()}),e.overlays=null),null!=e.control&&(e.control.destroy(),e.control=null),e.shape.destroy(),e.shape=null)};var mxEdgeStyle={EntityRelation:function(e,t,n,a,i){var o=e.view,s=o.graph;a=mxUtils.getValue(e.style,mxConstants.STYLE_SEGMENT,mxConstants.ENTITY_SEGMENT)*o.scale;var r=(d=e.absolutePoints)[0],l=d[d.length-1],d=!1;if(null!=r)t=new mxCellState,t.x=r.x,t.y=r.y;else{if(null==t)return;var c=mxUtils.getPortConstraints(t,e,!0,mxConstants.DIRECTION_MASK_NONE);c!=mxConstants.DIRECTION_MASK_NONE?d=c==mxConstants.DIRECTION_MASK_WEST:(r=s.getCellGeometry(t.cell),r.relative?d=.5>=r.x:null!=n&&(d=n.x+n.width<t.x))}r=!0,null!=l?(n=new mxCellState,n.x=l.x,n.y=l.y):null!=n&&(c=mxUtils.getPortConstraints(n,e,!1,mxConstants.DIRECTION_MASK_NONE),c!=mxConstants.DIRECTION_MASK_NONE?r=c==mxConstants.DIRECTION_MASK_WEST:(e=s.getCellGeometry(n.cell),e.relative?r=.5>=e.x:null!=t&&(r=t.x+t.width<n.x))),null!=t&&null!=n&&(e=d?t.x:t.x+t.width,t=o.getRoutingCenterY(t),s=r?n.x:n.x+n.width,n=o.getRoutingCenterY(n),o=new mxPoint(e+(d?-a:a),t),l=new mxPoint(s+(r?-a:a),n),d==r?(a=d?Math.min(e,s)-a:Math.max(e,s)+a,i.push(new mxPoint(a,t)),i.push(new mxPoint(a,n))):(o.x<l.x==d?(a=t+(n-t)/2,i.push(o),i.push(new mxPoint(o.x,a)),i.push(new mxPoint(l.x,a))):i.push(o),i.push(l)))},Loop:function(e,t,n,a,i){if(null!=t){d=(n=e.view).graph;null!=(a=null!=a&&0<a.length?a[0]:null)&&(a=n.transformControlPoint(e,a),mxUtils.contains(t,a.x,a.y)&&(a=null));var o=0,s=0,r=0,l=0,d=mxUtils.getValue(e.style,mxConstants.STYLE_SEGMENT,d.gridSize)*n.scale;(e=mxUtils.getValue(e.style,mxConstants.STYLE_DIRECTION,mxConstants.DIRECTION_WEST))==mxConstants.DIRECTION_NORTH||e==mxConstants.DIRECTION_SOUTH?(o=n.getRoutingCenterX(t),s=d):(r=n.getRoutingCenterY(t),l=d),null==a||a.x<t.x||a.x>t.x+t.width?null!=a?(o=a.x,l=Math.max(Math.abs(r-a.y),l)):e==mxConstants.DIRECTION_NORTH?r=t.y-2*s:e==mxConstants.DIRECTION_SOUTH?r=t.y+t.height+2*s:o=e==mxConstants.DIRECTION_EAST?t.x-2*l:t.x+t.width+2*l:null!=a&&(o=n.getRoutingCenterX(t),s=Math.max(Math.abs(o-a.x),l),r=a.y,l=0),i.push(new mxPoint(o-s,r-l)),i.push(new mxPoint(o+s,r+l))}},ElbowConnector:function(e,t,n,a,i){var o=null!=a&&0<a.length?a[0]:null,s=!1,r=!1;if(null!=t&&null!=n)if(null!=o)var l=Math.min(t.x,n.x),d=Math.max(t.x+t.width,n.x+n.width),r=Math.min(t.y,n.y),c=Math.max(t.y+t.height,n.y+n.height),o=e.view.transformControlPoint(e,o),s=o.y<r||o.y>c,r=o.x<l||o.x>d;else l=Math.max(t.x,n.x),d=Math.min(t.x+t.width,n.x+n.width),(s=l==d)||(r=Math.max(t.y,n.y),c=Math.min(t.y+t.height,n.y+n.height),r=r==c);r||!s&&e.style[mxConstants.STYLE_ELBOW]!=mxConstants.ELBOW_VERTICAL?mxEdgeStyle.SideToSide(e,t,n,a,i):mxEdgeStyle.TopToBottom(e,t,n,a,i)},SideToSide:function(e,t,n,a,i){var o=e.view;a=null!=a&&0<a.length?a[0]:null;var s=(r=e.absolutePoints)[0],r=r[r.length-1];null!=a&&(a=o.transformControlPoint(e,a)),null!=s&&(t=new mxCellState,t.x=s.x,t.y=s.y),null!=r&&(n=new mxCellState,n.x=r.x,n.y=r.y),null!=t&&null!=n&&(e=Math.max(t.x,n.x),s=Math.min(t.x+t.width,n.x+n.width),e=null!=a?a.x:s+(e-s)/2,s=o.getRoutingCenterY(t),o=o.getRoutingCenterY(n),null!=a&&(a.y>=t.y&&a.y<=t.y+t.height&&(s=a.y),a.y>=n.y&&a.y<=n.y+n.height&&(o=a.y)),!mxUtils.contains(n,e,s)&&!mxUtils.contains(t,e,s)&&i.push(new mxPoint(e,s)),!mxUtils.contains(n,e,o)&&!mxUtils.contains(t,e,o)&&i.push(new mxPoint(e,o)),1==i.length&&(null!=a?!mxUtils.contains(n,e,a.y)&&!mxUtils.contains(t,e,a.y)&&i.push(new mxPoint(e,a.y)):(o=Math.max(t.y,n.y),t=Math.min(t.y+t.height,n.y+n.height),i.push(new mxPoint(e,o+(t-o)/2)))))},TopToBottom:function(e,t,n,a,i){var o=e.view;a=null!=a&&0<a.length?a[0]:null;var s=(r=e.absolutePoints)[0],r=r[r.length-1];null!=a&&(a=o.transformControlPoint(e,a)),null!=s&&(t=new mxCellState,t.x=s.x,t.y=s.y),null!=r&&(n=new mxCellState,n.x=r.x,n.y=r.y),null!=t&&null!=n&&(s=Math.max(t.y,n.y),r=Math.min(t.y+t.height,n.y+n.height),e=o.getRoutingCenterX(t),null!=a&&a.x>=t.x&&a.x<=t.x+t.width&&(e=a.x),s=null!=a?a.y:r+(s-r)/2,!mxUtils.contains(n,e,s)&&!mxUtils.contains(t,e,s)&&i.push(new mxPoint(e,s)),e=null!=a&&a.x>=n.x&&a.x<=n.x+n.width?a.x:o.getRoutingCenterX(n),!mxUtils.contains(n,e,s)&&!mxUtils.contains(t,e,s)&&i.push(new mxPoint(e,s)),1==i.length&&(null!=a&&1==i.length?!mxUtils.contains(n,a.x,s)&&!mxUtils.contains(t,a.x,s)&&i.push(new mxPoint(a.x,s)):(o=Math.max(t.x,n.x),t=Math.min(t.x+t.width,n.x+n.width),i.push(new mxPoint(o+(t-o)/2,s)))))},SegmentConnector:function(e,t,n,a,i){var o=e.absolutePoints,s=!0,r=null,l=o[0];null==l&&null!=t?l=new mxPoint(e.view.getRoutingCenterX(t),e.view.getRoutingCenterY(t)):null!=l&&(l=l.clone());var d=o.length-1;if(null!=a&&0<a.length){for(var r=e.view.transformControlPoint(e,a[0]),c=t,m=o[0],u=!1,p=!1,u=r,g=a.length,h=0;2>h;h++){var v=null!=m&&m.x==u.x,b=null!=m&&m.y==u.y,f=null!=c&&u.y>=c.y&&u.y<=c.y+c.height,c=null!=c&&u.x>=c.x&&u.x<=c.x+c.width,u=b||null==m&&f,p=v||null==m&&c;if(null!=m&&!b&&!v&&(f||c)){s=!f;break}if(p||u){s=u,1==h&&(s=0==a.length%2?u:p);break}c=n,m=o[d],u=e.view.transformControlPoint(e,a[g-1])}for(s&&(null!=o[0]&&o[0].y!=r.y||null==o[0]&&null!=t&&(r.y<t.y||r.y>t.y+t.height))?i.push(new mxPoint(l.x,r.y)):!s&&(null!=o[0]&&o[0].x!=r.x||null==o[0]&&null!=t&&(r.x<t.x||r.x>t.x+t.width))&&i.push(new mxPoint(r.x,l.y)),s?l.y=r.y:l.x=r.x,h=0;h<a.length;h++)s=!s,r=e.view.transformControlPoint(e,a[h]),s?l.y=r.y:l.x=r.x,i.push(l.clone())}else r=l,s=!0;if(null==(l=o[d])&&null!=n&&(l=new mxPoint(e.view.getRoutingCenterX(n),e.view.getRoutingCenterY(n))),s&&(null!=o[d]&&o[d].y!=r.y||null==o[d]&&null!=n&&(r.y<n.y||r.y>n.y+n.height))?i.push(new mxPoint(l.x,r.y)):!s&&(null!=o[d]&&o[d].x!=r.x||null==o[d]&&null!=n&&(r.x<n.x||r.x>n.x+n.width))&&i.push(new mxPoint(r.x,l.y)),null==o[0]&&null!=t)for(;1<i.length&&mxUtils.contains(t,i[1].x,i[1].y);)i=i.splice(1,1);if(null==o[d]&&null!=n)for(;1<i.length&&mxUtils.contains(n,i[i.length-1].x,i[i.length-1].y);)i=i.splice(i.length-1,1)},orthBuffer:10,dirVectors:[[-1,0],[0,-1],[1,0],[0,1],[-1,0],[0,-1],[1,0]],wayPoints1:[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],routePatterns:[[[513,2308,2081,2562],[513,1090,514,2184,2114,2561],[513,1090,514,2564,2184,2562],[513,2308,2561,1090,514,2568,2308]],[[514,1057,513,2308,2081,2562],[514,2184,2114,2561],[514,2184,2562,1057,513,2564,2184],[514,1057,513,2568,2308,2561]],[[1090,514,1057,513,2308,2081,2562],[2114,2561],[1090,2562,1057,513,2564,2184],[1090,514,1057,513,2308,2561,2568]],[[2081,2562],[1057,513,1090,514,2184,2114,2561],[1057,513,1090,514,2184,2562,2564],[1057,2561,1090,514,2568,2308]]],inlineRoutePatterns:[[null,[2114,2568],null,null],[null,[514,2081,2114,2568],null,null],[null,[2114,2561],null,null],[[2081,2562],[1057,2114,2568],[2184,2562],null]],vertexSeperations:[],limits:[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]],LEFT_MASK:32,TOP_MASK:64,RIGHT_MASK:128,BOTTOM_MASK:256,LEFT:1,TOP:2,RIGHT:4,BOTTOM:8,SIDE_MASK:480,CENTER_MASK:512,SOURCE_MASK:1024,TARGET_MASK:2048,VERTEX_MASK:3072,OrthConnector:function(e,t,n,a,i){var o=e.view.graph,s=null!=t&&o.getModel().isEdge(t.cell),o=null!=n&&o.getModel().isEdge(n.cell);if(null!=a&&0<a.length||s||o)mxEdgeStyle.SegmentConnector(e,t,n,a,i);else{var r=(a=e.absolutePoints)[0],l=a[a.length-1];a=null!=t?t.x:r.x;var s=null!=t?t.y:r.y,d=null!=t?t.width:1,c=null!=t?t.height:1,m=null!=n?n.x:l.x,u=null!=n?n.y:l.y,p=null!=n?n.width:1,g=null!=n?n.height:1,o=e.view.scale*mxEdgeStyle.orthBuffer,h=[mxConstants.DIRECTION_MASK_ALL,mxConstants.DIRECTION_MASK_ALL];for(null!=t&&(h[0]=mxUtils.getPortConstraints(t,e,!0,mxConstants.DIRECTION_MASK_ALL)),null!=n&&(h[1]=mxUtils.getPortConstraints(n,e,!1,mxConstants.DIRECTION_MASK_ALL)),e=[0,0],a=[[a,s,d,c],[m,u,p,g]],d=0;2>d;d++)mxEdgeStyle.limits[d][1]=a[d][0]-o,mxEdgeStyle.limits[d][2]=a[d][1]-o,mxEdgeStyle.limits[d][4]=a[d][0]+a[d][2]+o,mxEdgeStyle.limits[d][8]=a[d][1]+a[d][3]+o;for(d=a[0][0]+a[0][2]/2-(a[1][0]+a[1][2]/2),c=a[0][1]+a[0][3]/2-(a[1][1]+a[1][3]/2),s=0,0>d?s=0>c?2:1:0>=c&&(s=3,0==d&&(s=2)),c=null,null!=t&&(c=r),t=[[.5,.5],[.5,.5]],d=0;2>d;d++)null!=c&&(t[d][0]=(c.x-a[d][0])/a[d][2],.01>t[d][0]?e[d]=mxConstants.DIRECTION_MASK_WEST:.99<t[d][0]&&(e[d]=mxConstants.DIRECTION_MASK_EAST),t[d][1]=(c.y-a[d][1])/a[d][3],.01>t[d][1]?e[d]=mxConstants.DIRECTION_MASK_NORTH:.99<t[d][1]&&(e[d]=mxConstants.DIRECTION_MASK_SOUTH)),c=null,null!=n&&(c=l);for(d=a[0][1]-(a[1][1]+a[1][3]),c=a[0][0]-(a[1][0]+a[1][2]),m=a[1][1]-(a[0][1]+a[0][3]),u=a[1][0]-(a[0][0]+a[0][2]),mxEdgeStyle.vertexSeperations[1]=Math.max(c-2*o,0),mxEdgeStyle.vertexSeperations[2]=Math.max(d-2*o,0),mxEdgeStyle.vertexSeperations[4]=Math.max(m-2*o,0),mxEdgeStyle.vertexSeperations[3]=Math.max(u-2*o,0),n=[],l=[],(r=[])[0]=c>=u?mxConstants.DIRECTION_MASK_WEST:mxConstants.DIRECTION_MASK_EAST,l[0]=d>=m?mxConstants.DIRECTION_MASK_NORTH:mxConstants.DIRECTION_MASK_SOUTH,r[1]=mxUtils.reversePortConstraints(r[0]),l[1]=mxUtils.reversePortConstraints(l[0]),c=c>=u?c:u,m=d>=m?d:m,u=[[0,0],[0,0]],p=!1,d=0;2>d;d++)0==e[d]&&(0==(r[d]&h[d])&&(r[d]=mxUtils.reversePortConstraints(r[d])),0==(l[d]&h[d])&&(l[d]=mxUtils.reversePortConstraints(l[d])),u[d][0]=l[d],u[d][1]=r[d]);for(m>2*o&&c>2*o&&(0<(r[0]&h[0])&&0<(l[1]&h[1])?(u[0][0]=r[0],u[0][1]=l[0],u[1][0]=l[1],u[1][1]=r[1],p=!0):0<(l[0]&h[0])&&0<(r[1]&h[1])&&(u[0][0]=l[0],u[0][1]=r[0],u[1][0]=r[1],u[1][1]=l[1],p=!0)),m>2*o&&!p&&(u[0][0]=l[0],u[0][1]=r[0],u[1][0]=l[1],u[1][1]=r[1],p=!0),c>2*o&&!p&&(u[0][0]=r[0],u[0][1]=l[0],u[1][0]=r[1],u[1][1]=l[1]),d=0;2>d;d++)0==e[d]&&(0==(u[d][0]&h[d])&&(u[d][0]=u[d][1]),n[d]=u[d][0]&h[d],n[d]|=(u[d][1]&h[d])<<8,n[d]|=(u[1-d][d]&h[d])<<16,n[d]|=(u[1-d][1-d]&h[d])<<24,0==(15&n[d])&&(n[d]<<=8),0==(3840&n[d])&&(n[d]=15&n[d]|n[d]>>8),0==(983040&n[d])&&(n[d]=65535&n[d]|(251658240&n[d])>>8),e[d]=15&n[d],h[d]==mxConstants.DIRECTION_MASK_WEST||h[d]==mxConstants.DIRECTION_MASK_NORTH||h[d]==mxConstants.DIRECTION_MASK_EAST||h[d]==mxConstants.DIRECTION_MASK_SOUTH)&&(e[d]=h[d]);switch(d=e[0]==mxConstants.DIRECTION_MASK_EAST?3:e[0],h=e[1]==mxConstants.DIRECTION_MASK_EAST?3:e[1],d-=s,h-=s,1>d&&(d+=4),1>h&&(h+=4),h=mxEdgeStyle.routePatterns[d-1][h-1],mxEdgeStyle.wayPoints1[0][0]=a[0][0],mxEdgeStyle.wayPoints1[0][1]=a[0][1],e[0]){case mxConstants.DIRECTION_MASK_WEST:mxEdgeStyle.wayPoints1[0][0]-=o,mxEdgeStyle.wayPoints1[0][1]+=t[0][1]*a[0][3];break;case mxConstants.DIRECTION_MASK_SOUTH:mxEdgeStyle.wayPoints1[0][0]+=t[0][0]*a[0][2],mxEdgeStyle.wayPoints1[0][1]+=a[0][3]+o;break;case mxConstants.DIRECTION_MASK_EAST:mxEdgeStyle.wayPoints1[0][0]+=a[0][2]+o,mxEdgeStyle.wayPoints1[0][1]+=t[0][1]*a[0][3];break;case mxConstants.DIRECTION_MASK_NORTH:mxEdgeStyle.wayPoints1[0][0]+=t[0][0]*a[0][2],mxEdgeStyle.wayPoints1[0][1]-=o}for(o=0,r=n=0<(e[0]&(mxConstants.DIRECTION_MASK_EAST|mxConstants.DIRECTION_MASK_WEST))?0:1,d=l=0;d<h.length;d++){g=(l=15&h[d])==mxConstants.DIRECTION_MASK_EAST?3:l,4<(g+=s)&&(g-=4),c=mxEdgeStyle.dirVectors[g-1],(l=0<g%2?0:1)!=n&&(o++,mxEdgeStyle.wayPoints1[o][0]=mxEdgeStyle.wayPoints1[o-1][0],mxEdgeStyle.wayPoints1[o][1]=mxEdgeStyle.wayPoints1[o-1][1]);var v=0<(h[d]&mxEdgeStyle.TARGET_MASK),p=0<(h[d]&mxEdgeStyle.SOURCE_MASK);15<(m=(m=(h[d]&mxEdgeStyle.SIDE_MASK)>>5)<<s)&&(m>>=4),u=0<(h[d]&mxEdgeStyle.CENTER_MASK),(p||v)&&9>m?(g=0,p=p?0:1,g=u&&0==l?a[p][0]+t[p][0]*a[p][2]:u?a[p][1]+t[p][1]*a[p][3]:mxEdgeStyle.limits[p][m],0==l?0<(m=(g-mxEdgeStyle.wayPoints1[o][0])*c[0])&&(mxEdgeStyle.wayPoints1[o][0]+=c[0]*m):0<(m=(g-mxEdgeStyle.wayPoints1[o][1])*c[1])&&(mxEdgeStyle.wayPoints1[o][1]+=c[1]*m)):u&&(mxEdgeStyle.wayPoints1[o][0]+=c[0]*Math.abs(mxEdgeStyle.vertexSeperations[g]/2),mxEdgeStyle.wayPoints1[o][1]+=c[1]*Math.abs(mxEdgeStyle.vertexSeperations[g]/2)),0<o&&mxEdgeStyle.wayPoints1[o][l]==mxEdgeStyle.wayPoints1[o-1][l]?o--:n=l}for(d=0;d<=o&&(d!=o||((0<(e[1]&(mxConstants.DIRECTION_MASK_EAST|mxConstants.DIRECTION_MASK_WEST))?0:1)==r?0:1)==(o+1)%2);d++)i.push(new mxPoint(mxEdgeStyle.wayPoints1[d][0],mxEdgeStyle.wayPoints1[d][1]))}},getRoutePattern:function(e,t,n,a){var i=e[0]==mxConstants.DIRECTION_MASK_EAST?3:e[0];return e=e[1]==mxConstants.DIRECTION_MASK_EAST?3:e[1],i-=t,e-=t,1>i&&(i+=4),1>e&&(e+=4),t=routePatterns[i-1][e-1],0!=n&&0!=a||null!=inlineRoutePatterns[i-1][e-1]&&(t=inlineRoutePatterns[i-1][e-1]),t}},mxStyleRegistry={values:[],putValue:function(e,t){mxStyleRegistry.values[e]=t},getValue:function(e){return mxStyleRegistry.values[e]},getName:function(e){for(var t in mxStyleRegistry.values)if(mxStyleRegistry.values[t]==e)return t;return null}};mxStyleRegistry.putValue(mxConstants.EDGESTYLE_ELBOW,mxEdgeStyle.ElbowConnector),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_ENTITY_RELATION,mxEdgeStyle.EntityRelation),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_LOOP,mxEdgeStyle.Loop),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_SIDETOSIDE,mxEdgeStyle.SideToSide),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_TOPTOBOTTOM,mxEdgeStyle.TopToBottom),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_ORTHOGONAL,mxEdgeStyle.OrthConnector),mxStyleRegistry.putValue(mxConstants.EDGESTYLE_SEGMENT,mxEdgeStyle.SegmentConnector),mxStyleRegistry.putValue(mxConstants.PERIMETER_ELLIPSE,mxPerimeter.EllipsePerimeter),mxStyleRegistry.putValue(mxConstants.PERIMETER_RECTANGLE,mxPerimeter.RectanglePerimeter),mxStyleRegistry.putValue(mxConstants.PERIMETER_RHOMBUS,mxPerimeter.RhombusPerimeter),mxStyleRegistry.putValue(mxConstants.PERIMETER_TRIANGLE,mxPerimeter.TrianglePerimeter),mxGraphView.prototype=new mxEventSource,mxGraphView.prototype.constructor=mxGraphView,mxGraphView.prototype.EMPTY_POINT=new mxPoint,mxGraphView.prototype.doneResource="none"!=mxClient.language?"done":"",mxGraphView.prototype.updatingDocumentResource="none"!=mxClient.language?"updatingDocument":"",mxGraphView.prototype.allowEval=!1,mxGraphView.prototype.captureDocumentGesture=!0,mxGraphView.prototype.optimizeVmlReflows=!0,mxGraphView.prototype.rendering=!0,mxGraphView.prototype.graph=null,mxGraphView.prototype.currentRoot=null,mxGraphView.prototype.graphBounds=null,mxGraphView.prototype.scale=1,mxGraphView.prototype.translate=null,mxGraphView.prototype.updateStyle=!1,mxGraphView.prototype.getGraphBounds=function(){return this.graphBounds},mxGraphView.prototype.setGraphBounds=function(e){this.graphBounds=e},mxGraphView.prototype.getBounds=function(e){var t=null;if(null!=e&&0<e.length)for(var n=this.graph.getModel(),a=0;a<e.length;a++)if(n.isVertex(e[a])||n.isEdge(e[a])){var i=this.getState(e[a]);null!=i&&(null==t?t=new mxRectangle(i.x,i.y,i.width,i.height):t.add(i))}return t},mxGraphView.prototype.setCurrentRoot=function(e){if(this.currentRoot!=e){var t=new mxCurrentRootChange(this,e);t.execute();var n=new mxUndoableEdit(this,!1);n.add(t),this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",n)),this.graph.sizeDidChange()}return e},mxGraphView.prototype.scaleAndTranslate=function(e,t,n){var a=this.scale,i=new mxPoint(this.translate.x,this.translate.y);this.scale==e&&this.translate.x==t&&this.translate.y==n||(this.scale=e,this.translate.x=t,this.translate.y=n,this.isEventsEnabled()&&(this.revalidate(),this.graph.sizeDidChange())),this.fireEvent(new mxEventObject(mxEvent.SCALE_AND_TRANSLATE,"scale",e,"previousScale",a,"translate",this.translate,"previousTranslate",i))},mxGraphView.prototype.getScale=function(){return this.scale},mxGraphView.prototype.setScale=function(e){var t=this.scale;this.scale!=e&&(this.scale=e,this.isEventsEnabled()&&(this.revalidate(),this.graph.sizeDidChange())),this.fireEvent(new mxEventObject(mxEvent.SCALE,"scale",e,"previousScale",t))},mxGraphView.prototype.getTranslate=function(){return this.translate},mxGraphView.prototype.setTranslate=function(e,t){var n=new mxPoint(this.translate.x,this.translate.y);this.translate.x==e&&this.translate.y==t||(this.translate.x=e,this.translate.y=t,this.isEventsEnabled()&&(this.revalidate(),this.graph.sizeDidChange())),this.fireEvent(new mxEventObject(mxEvent.TRANSLATE,"translate",this.translate,"previousTranslate",n))},mxGraphView.prototype.refresh=function(){null!=this.currentRoot&&this.clear(),this.revalidate()},mxGraphView.prototype.revalidate=function(){this.invalidate(),this.validate()},mxGraphView.prototype.clear=function(e,t,n){var a=this.graph.getModel();if(e=e||a.getRoot(),t=null!=t&&t,n=null==n||n,this.removeState(e),n&&(t||e!=this.currentRoot)){n=a.getChildCount(e);for(var i=0;i<n;i++)this.clear(a.getChildAt(e,i),t)}else this.invalidate(e)},mxGraphView.prototype.invalidate=function(e,t,n,a){var i=this.graph.getModel();if(e=e||i.getRoot(),t=null==t||t,n=null==n||n,a=null!=a&&a,null!=(s=this.getState(e))&&(s.invalid=!0,a&&(s.orderChanged=!0)),t)for(var o=i.getChildCount(e),s=0;s<o;s++){var r=i.getChildAt(e,s);this.invalidate(r,t,n,a)}if(n)for(a=i.getEdgeCount(e),s=0;s<a;s++)this.invalidate(i.getEdgeAt(e,s),t,n)},mxGraphView.prototype.validate=function(e){var t=mxLog.enter("mxGraphView.validate");window.status=mxResources.get(this.updatingDocumentResource)||this.updatingDocumentResource;var n=null;if(this.optimizeVmlReflows&&null!=this.canvas&&null==this.textDiv&&(8==document.documentMode||mxClient.IS_QUIRKS)){n=this.canvas.style.display,this.canvas.style.display="none";var a=document.createElement("div");a.style.position="absolute",a.style.whiteSpace="nowrap",a.style.visibility="hidden",a.style.display=mxClient.IS_QUIRKS?"inline":"inline-block",a.style.zoom="1",document.body.appendChild(a),this.textDiv=a}e=e||(null!=this.currentRoot?this.currentRoot:this.graph.getModel().getRoot()),this.validateBounds(null,e),null==(e=this.validatePoints(null,e))&&(e=new mxRectangle),this.setGraphBounds(e),this.validateBackground(),null!=n&&(this.canvas.style.display=n,document.body.removeChild(this.textDiv),this.textDiv=null),window.status=mxResources.get(this.doneResource)||this.doneResource,mxLog.leave("mxGraphView.validate",t)},mxGraphView.prototype.createBackgroundPageShape=function(e){return new mxRectangleShape(e,"white","black")},mxGraphView.prototype.validateBackground=function(){var e=this.graph.getBackgroundImage();if(null!=e){if(null==this.backgroundImage||this.backgroundImage.image!=e.src){null!=this.backgroundImage&&this.backgroundImage.destroy();var t=new mxRectangle(0,0,1,1);this.backgroundImage=new mxImageShape(t,e.src),this.backgroundImage.dialect=this.graph.dialect,this.backgroundImage.init(this.backgroundPane),this.backgroundImage.redraw()}this.redrawBackgroundImage(this.backgroundImage,e)}else null!=this.backgroundImage&&(this.backgroundImage.destroy(),this.backgroundImage=null);this.graph.pageVisible?(t=this.getBackgroundPageBounds(),null==this.backgroundPageShape?(this.backgroundPageShape=this.createBackgroundPageShape(t),this.backgroundPageShape.scale=this.scale,this.backgroundPageShape.isShadow=!0,this.backgroundPageShape.dialect=this.graph.dialect,this.backgroundPageShape.init(this.backgroundPane),this.backgroundPageShape.redraw(),mxEvent.addListener(this.backgroundPageShape.node,"dblclick",mxUtils.bind(this,function(e){this.graph.dblClick(e)})),mxEvent.addGestureListeners(this.backgroundPageShape.node,mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e))}),mxUtils.bind(this,function(e){null!=this.graph.tooltipHandler&&this.graph.tooltipHandler.isHideOnHover()&&this.graph.tooltipHandler.hide(),this.graph.isMouseDown&&!mxEvent.isConsumed(e)&&this.graph.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(e))}),mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(e))}))):(this.backgroundPageShape.scale=this.scale,this.backgroundPageShape.bounds=t,this.backgroundPageShape.redraw())):null!=this.backgroundPageShape&&(this.backgroundPageShape.destroy(),this.backgroundPageShape=null)},mxGraphView.prototype.getBackgroundPageBounds=function(){var e=this.graph.pageFormat,t=this.scale*this.graph.pageScale;return new mxRectangle(this.scale*this.translate.x,this.scale*this.translate.y,e.width*t,e.height*t)},mxGraphView.prototype.redrawBackgroundImage=function(e,t){e.scale=this.scale,e.bounds.x=this.scale*this.translate.x,e.bounds.y=this.scale*this.translate.y,e.bounds.width=this.scale*t.width,e.bounds.height=this.scale*t.height,e.redraw()},mxGraphView.prototype.validateBounds=function(e,t){var n=this.graph.getModel(),a=this.getState(t,!0);if(null!=a&&a.invalid){if(this.graph.isCellVisible(t)){if(t!=this.currentRoot&&null!=e&&(a.absoluteOffset.x=0,a.absoluteOffset.y=0,a.origin.x=e.origin.x,a.origin.y=e.origin.y,null!=(i=this.graph.getCellGeometry(t)))){if(!n.isEdge(t)){o=i.offset||this.EMPTY_POINT;i.relative?(a.origin.x+=i.x*e.width/this.scale+o.x,a.origin.y+=i.y*e.height/this.scale+o.y):(a.absoluteOffset.x=this.scale*o.x,a.absoluteOffset.y=this.scale*o.y,a.origin.x+=i.x,a.origin.y+=i.y)}if(a.x=this.scale*(this.translate.x+a.origin.x),a.y=this.scale*(this.translate.y+a.origin.y),a.width=this.scale*i.width,a.height=this.scale*i.height,n.isVertex(t)){if(i.relative&&0!=(o=mxUtils.toRadians(e.style[mxConstants.STYLE_ROTATION]||"0"))){var i=Math.cos(o),o=Math.sin(o),s=new mxPoint(a.getCenterX(),a.getCenterY()),r=new mxPoint(e.getCenterX(),e.getCenterY()),i=mxUtils.getRotatedPoint(s,i,o,r);a.x=i.x-a.width/2,a.y=i.y-a.height/2}this.updateVertexLabelOffset(a)}}}else this.removeState(t);null!=(o=this.graph.getChildOffsetForCell(t))&&(a.origin.x+=o.x,a.origin.y+=o.y)}if(null!=a&&(!this.graph.isCellCollapsed(t)||t==this.currentRoot))for(i=n.getChildCount(t),o=0;o<i;o++)s=n.getChildAt(t,o),this.validateBounds(a,s)},mxGraphView.prototype.updateVertexLabelOffset=function(e){var t=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);t==mxConstants.ALIGN_LEFT?e.absoluteOffset.x-=e.width:t==mxConstants.ALIGN_RIGHT&&(e.absoluteOffset.x+=e.width),(t=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE))==mxConstants.ALIGN_TOP?e.absoluteOffset.y-=e.height:t==mxConstants.ALIGN_BOTTOM&&(e.absoluteOffset.y+=e.height)},mxGraphView.prototype.validatePoints=function(e,t){var n=this.graph.getModel(),a=this.getState(t),i=null;if(null!=a){if(a.invalid){var o=this.graph.getCellGeometry(t);if(null!=o&&n.isEdge(t)){var s=this.getState(this.getVisibleTerminal(t,!0));if(a.setVisibleTerminalState(s,!0),null!=s&&n.isEdge(s.cell)&&!n.isAncestor(s.cell,t)){var r=this.getState(n.getParent(s.cell));this.validatePoints(r,s.cell)}var l=this.getState(this.getVisibleTerminal(t,!1));a.setVisibleTerminalState(l,!1),null!=l&&n.isEdge(l.cell)&&!n.isAncestor(l.cell,t)&&(r=this.getState(n.getParent(l.cell)),this.validatePoints(r,l.cell)),this.updateFixedTerminalPoints(a,s,l),this.updatePoints(a,o.points,s,l),this.updateFloatingTerminalPoints(a,s,l),this.updateEdgeBounds(a),this.updateEdgeLabelOffset(a)}else null!=o&&o.relative&&null!=e&&n.isEdge(e.cell)&&null!=(o=this.getPoint(e,o))&&(a.x=o.x,a.y=o.y,o.x=o.x/this.scale-this.translate.x,o.y=o.y/this.scale-this.translate.y,a.origin=o,this.childMoved(e,a));a.invalid=!1,t!=this.currentRoot&&this.graph.cellRenderer.redraw(a,!1,this.isRendering())}(n.isEdge(t)||n.isVertex(t))&&(null!=a.shape&&null!=a.shape.boundingBox&&(i=a.shape.boundingBox.clone()),null!=a.text&&!this.graph.isLabelClipped(a.cell)&&null!=a.text.boundingBox&&(null!=i?i.add(a.text.boundingBox):i=a.text.boundingBox.clone()))}if(null!=a&&(!this.graph.isCellCollapsed(t)||t==this.currentRoot))for(o=n.getChildCount(t),s=0;s<o;s++)r=n.getChildAt(t,s),null!=(r=this.validatePoints(a,r))&&(null==i?i=r:i.add(r));return i},mxGraphView.prototype.childMoved=function(e,t){var n=t.cell;if(!this.graph.isCellCollapsed(n)||n==this.currentRoot)for(var a=this.graph.getModel(),i=a.getChildCount(n),o=0;o<i;o++)this.validateBounds(t,a.getChildAt(n,o))},mxGraphView.prototype.updateFixedTerminalPoints=function(e,t,n){this.updateFixedTerminalPoint(e,t,!0,this.graph.getConnectionConstraint(e,t,!0)),this.updateFixedTerminalPoint(e,n,!1,this.graph.getConnectionConstraint(e,n,!1))},mxGraphView.prototype.updateFixedTerminalPoint=function(e,t,n,a){var i=null;if(null!=a&&(i=this.graph.getConnectionPoint(t,a)),null==i&&null==t){t=this.scale,a=this.translate;var o=e.origin;null!=(i=this.graph.getCellGeometry(e.cell).getTerminalPoint(n))&&(i=new mxPoint(t*(a.x+i.x+o.x),t*(a.y+i.y+o.y)))}e.setAbsoluteTerminalPoint(i,n)},mxGraphView.prototype.updatePoints=function(e,t,n,a){if(null!=e){var i=[];i.push(e.absolutePoints[0]);var o=this.getEdgeStyle(e,t,n,a);if(null!=o)n=this.getTerminalPort(e,n,!0),a=this.getTerminalPort(e,a,!1),o(e,n,a,t,i);else if(null!=t)for(o=0;o<t.length;o++)null!=t[o]&&(a=mxUtils.clone(t[o]),i.push(this.transformControlPoint(e,a)));t=e.absolutePoints,i.push(t[t.length-1]),e.absolutePoints=i}},mxGraphView.prototype.transformControlPoint=function(e,t){var n=e.origin;return new mxPoint(this.scale*(t.x+this.translate.x+n.x),this.scale*(t.y+this.translate.y+n.y))},mxGraphView.prototype.getEdgeStyle=function(e,t,n,a){return"string"==typeof(e=null!=n&&n==a?mxUtils.getValue(e.style,mxConstants.STYLE_LOOP,this.graph.defaultLoopStyle):mxUtils.getValue(e.style,mxConstants.STYLE_NOEDGESTYLE,!1)?null:e.style[mxConstants.STYLE_EDGE])&&(null==(t=mxStyleRegistry.getValue(e))&&this.isAllowEval()&&(t=mxUtils.eval(e)),e=t),"function"==typeof e?e:null},mxGraphView.prototype.updateFloatingTerminalPoints=function(e,t,n){var a=e.absolutePoints,i=a[0];null==a[a.length-1]&&null!=n&&this.updateFloatingTerminalPoint(e,n,t,!1),null==i&&null!=t&&this.updateFloatingTerminalPoint(e,t,n,!0)},mxGraphView.prototype.updateFloatingTerminalPoint=function(e,t,n,a){t=this.getTerminalPort(e,t,a);var i=this.getNextPoint(e,n,a),o=this.graph.isOrthogonal(e);n=mxUtils.toRadians(Number(t.style[mxConstants.STYLE_ROTATION]||"0"));var s=new mxPoint(t.getCenterX(),t.getCenterY());if(0!=n)var r=Math.cos(-n),l=Math.sin(-n),i=mxUtils.getRotatedPoint(i,r,l,s);r=parseFloat(e.style[mxConstants.STYLE_PERIMETER_SPACING]||0),r+=parseFloat(e.style[a?mxConstants.STYLE_SOURCE_PERIMETER_SPACING:mxConstants.STYLE_TARGET_PERIMETER_SPACING]||0),t=this.getPerimeterPoint(t,i,0==n&&o,r),0!=n&&(r=Math.cos(n),l=Math.sin(n),t=mxUtils.getRotatedPoint(t,r,l,s)),e.setAbsoluteTerminalPoint(t,a)},mxGraphView.prototype.getTerminalPort=function(e,t,n){return null!=(e=mxUtils.getValue(e.style,n?mxConstants.STYLE_SOURCE_PORT:mxConstants.STYLE_TARGET_PORT))&&null!=(e=this.getState(this.graph.getModel().getCell(e)))&&(t=e),t},mxGraphView.prototype.getPerimeterPoint=function(e,t,n,a){var i=null;if(null!=e){var o=this.getPerimeterFunction(e);null!=o&&null!=t&&(0<(a=this.getPerimeterBounds(e,a)).width||0<a.height)&&(i=o(a,e,t,n)),null==i&&(i=this.getPoint(e))}return i},mxGraphView.prototype.getRoutingCenterX=function(e){var t=null!=e.style?parseFloat(e.style[mxConstants.STYLE_ROUTING_CENTER_X])||0:0;return e.getCenterX()+t*e.width},mxGraphView.prototype.getRoutingCenterY=function(e){var t=null!=e.style?parseFloat(e.style[mxConstants.STYLE_ROUTING_CENTER_Y])||0:0;return e.getCenterY()+t*e.height},mxGraphView.prototype.getPerimeterBounds=function(e,t){return t=null!=t?t:0,null!=e&&(t+=parseFloat(e.style[mxConstants.STYLE_PERIMETER_SPACING]||0)),e.getPerimeterBounds(t*this.scale)},mxGraphView.prototype.getPerimeterFunction=function(e){if("string"==typeof(e=e.style[mxConstants.STYLE_PERIMETER])){var t=mxStyleRegistry.getValue(e);null==t&&this.isAllowEval()&&(t=mxUtils.eval(e)),e=t}return"function"==typeof e?e:null},mxGraphView.prototype.getNextPoint=function(e,t,n){var a=null;return null!=(e=e.absolutePoints)&&(n||2<e.length||null==t)&&(a=e.length,a=e[n?Math.min(1,a-1):Math.max(0,a-2)]),null==a&&null!=t&&(a=new mxPoint(t.getCenterX(),t.getCenterY())),a},mxGraphView.prototype.getVisibleTerminal=function(e,t){for(var n=this.graph.getModel(),a=n.getTerminal(e,t),i=a;null!=a&&a!=this.currentRoot;)this.graph.isCellVisible(i)&&!this.graph.isCellCollapsed(a)||(i=a),a=n.getParent(a);return n.getParent(i)==n.getRoot()&&(i=null),i},mxGraphView.prototype.updateEdgeBounds=function(e){var t=e.absolutePoints;if(e.length=0,null!=t&&0<t.length){var n=t[0],a=t[t.length-1];if(null==n||null==a)e.cell!=this.currentRoot&&this.clear(e.cell,!0);else{if(n.x!=a.x||n.y!=a.y){var i=a.x-n.x,o=a.y-n.y;e.terminalDistance=Math.sqrt(i*i+o*o)}else e.terminalDistance=0;var a=0,s=[];if(null!=(o=n)){for(var n=o.x,r=o.y,l=n,d=r,c=1;c<t.length;c++){var m=t[c];null!=m&&(i=o.x-m.x,o=o.y-m.y,i=Math.sqrt(i*i+o*o),s.push(i),a+=i,o=m,n=Math.min(o.x,n),r=Math.min(o.y,r),l=Math.max(o.x,l),d=Math.max(o.y,d))}e.length=a,e.segments=s,e.x=n,e.y=r,e.width=Math.max(1,l-n),e.height=Math.max(1,d-r)}}}},mxGraphView.prototype.getPoint=function(e,t){var n=e.getCenterX(),a=e.getCenterY();if(null==e.segments||null!=t&&!t.relative)null!=t&&null!=(d=t.offset)&&(n+=d.x,a+=d.y);else{for(var i=e.absolutePoints.length,o=(.5+(null!=t?t.x/2:0))*e.length,s=e.segments[0],r=0,l=1;o>r+s&&l<i-1;)r+=s,s=e.segments[l++];if(i=0==s?0:(o-r)/s,o=e.absolutePoints[l-1],l=e.absolutePoints[l],null!=o&&null!=l){if(r=n=a=0,null!=t){var a=t.y,d=t.offset;null!=d&&(n=d.x,r=d.y)}d=l.x-o.x,l=l.y-o.y,n=o.x+d*i+((0==s?0:l/s)*a+n)*this.scale,a=o.y+l*i-((0==s?0:d/s)*a-r)*this.scale}}return new mxPoint(n,a)},mxGraphView.prototype.getRelativePoint=function(e,t,n){if(null!=(i=this.graph.getModel().getGeometry(e.cell))){var a=e.absolutePoints.length;if(i.relative&&1<a){for(var i=e.length,o=e.segments,s=e.absolutePoints[0],r=e.absolutePoints[1],l=mxUtils.ptSegDistSq(s.x,s.y,r.x,r.y,t,n),d=0,c=0,m=0,u=2;u<a;u++)c+=o[u-2],r=e.absolutePoints[u],(s=mxUtils.ptSegDistSq(s.x,s.y,r.x,r.y,t,n))<=l&&(l=s,d=u-1,m=c),s=r;return a=o[d],s=e.absolutePoints[d],r=e.absolutePoints[d+1],l=r.x,o=r.y,e=s.x-l,d=s.y-o,l=t-l,o=n-o,l=e-l,o=d-o,o=l*e+o*d,(e=Math.sqrt(0>=o?0:o*o/(e*e+d*d)))>a&&(e=a),a=Math.sqrt(mxUtils.ptSegDistSq(s.x,s.y,r.x,r.y,t,n)),-1==mxUtils.relativeCcw(s.x,s.y,r.x,r.y,t,n)&&(a=-a),new mxPoint((i/2-m-e)/i*-2,a/this.scale)}}return new mxPoint},mxGraphView.prototype.updateEdgeLabelOffset=function(e){i=e.absolutePoints;if(e.absoluteOffset.x=e.getCenterX(),e.absoluteOffset.y=e.getCenterY(),null!=i&&0<i.length&&null!=e.segments){var t=this.graph.getCellGeometry(e.cell);if(t.relative)null!=(n=this.getPoint(e,t))&&(e.absoluteOffset=n);else{var n=i[0],a=i[i.length-1];if(null!=n&&null!=a){var i=a.x-n.x,o=a.y-n.y,s=a=0;null!=(t=t.offset)&&(a=t.x,s=t.y),t=n.y+o/2+s*this.scale,e.absoluteOffset.x=n.x+i/2+a*this.scale,e.absoluteOffset.y=t}}}},mxGraphView.prototype.getState=function(e,t){t=t||!1;var n=null;return null!=e&&(n=this.states.get(e),this.graph.isCellVisible(e)&&(null==n&&t&&this.graph.isCellVisible(e)?(n=this.createState(e),this.states.put(e,n)):t&&null!=n&&this.updateStyle&&(n.style=this.graph.getCellStyle(e)))),n},mxGraphView.prototype.isRendering=function(){return this.rendering},mxGraphView.prototype.setRendering=function(e){this.rendering=e},mxGraphView.prototype.isAllowEval=function(){return this.allowEval},mxGraphView.prototype.setAllowEval=function(e){this.allowEval=e},mxGraphView.prototype.getStates=function(){return this.states},mxGraphView.prototype.setStates=function(e){this.states=e},mxGraphView.prototype.getCellStates=function(e){if(null==e)return this.states;for(var t=[],n=0;n<e.length;n++){var a=this.getState(e[n]);null!=a&&t.push(a)}return t},mxGraphView.prototype.removeState=function(e){var t=null;return null!=e&&null!=(t=this.states.remove(e))&&(this.graph.cellRenderer.destroy(t),t.destroy()),t},mxGraphView.prototype.createState=function(e){return e=new mxCellState(this,e,this.graph.getCellStyle(e)),this.graph.cellRenderer.initialize(e,this.isRendering()),e},mxGraphView.prototype.getCanvas=function(){return this.canvas},mxGraphView.prototype.getBackgroundPane=function(){return this.backgroundPane},mxGraphView.prototype.getDrawPane=function(){return this.drawPane},mxGraphView.prototype.getOverlayPane=function(){return this.overlayPane},mxGraphView.prototype.isContainerEvent=function(e){return(e=mxEvent.getSource(e))==this.graph.container||e.parentNode==this.backgroundPane||null!=e.parentNode&&e.parentNode.parentNode==this.backgroundPane||e==this.canvas.parentNode||e==this.canvas||e==this.backgroundPane||e==this.drawPane||e==this.overlayPane},mxGraphView.prototype.isScrollEvent=function(e){t=mxUtils.getOffset(this.graph.container);e=new mxPoint(e.clientX-t.x,e.clientY-t.y);var t=this.graph.container.offsetWidth,n=this.graph.container.clientWidth;return t>n&&e.x>n+2&&e.x<=t||(t=this.graph.container.offsetHeight,n=this.graph.container.clientHeight,t>n&&e.y>n+2&&e.y<=t)},mxGraphView.prototype.init=function(){this.installListeners();var e=this.graph;e.dialect==mxConstants.DIALECT_SVG?this.createSvg():e.dialect==mxConstants.DIALECT_VML?this.createVml():this.createHtml()},mxGraphView.prototype.installListeners=function(){var e=this.graph,t=e.container;if(null!=t){mxEvent.addGestureListeners(t,mxUtils.bind(this,function(t){mxClient.IS_TOUCH&&e.isEditing()&&e.stopEditing(!e.isInvokesStopCellEditing()),this.isContainerEvent(t)&&(!mxClient.IS_IE&&!mxClient.IS_GC&&!mxClient.IS_OP&&!mxClient.IS_SF||!this.isScrollEvent(t))&&e.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(t))}),mxUtils.bind(this,function(t){this.isContainerEvent(t)&&e.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t))}),mxUtils.bind(this,function(t){this.isContainerEvent(t)&&e.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(t))})),mxEvent.addListener(t,"dblclick",mxUtils.bind(this,function(t){e.dblClick(t)}));var n=function(n){var a=null;return mxClient.IS_TOUCH&&(a=mxEvent.getClientX(n),n=mxEvent.getClientY(n),n=mxUtils.convertPoint(t,a,n),a=e.view.getState(e.getCellAt(n.x,n.y))),a};e.addMouseListener({mouseDown:function(t,n){e.panningHandler.hideMenu()},mouseMove:function(){},mouseUp:function(){}}),this.moveHandler=mxUtils.bind(this,function(t){null!=e.tooltipHandler&&e.tooltipHandler.isHideOnHover()&&e.tooltipHandler.hide(),this.captureDocumentGesture&&e.isMouseDown&&!mxEvent.isConsumed(t)&&e.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(t,n(t)))}),this.endHandler=mxUtils.bind(this,function(t){this.captureDocumentGesture&&e.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(t))}),mxEvent.addGestureListeners(document,null,this.moveHandler,this.endHandler)}},mxGraphView.prototype.createHtml=function(){var e=this.graph.container;null!=e&&(this.canvas=this.createHtmlPane("100%","100%"),this.backgroundPane=this.createHtmlPane("1px","1px"),this.drawPane=this.createHtmlPane("1px","1px"),this.overlayPane=this.createHtmlPane("1px","1px"),this.canvas.appendChild(this.backgroundPane),this.canvas.appendChild(this.drawPane),this.canvas.appendChild(this.overlayPane),e.appendChild(this.canvas),mxClient.IS_QUIRKS&&(e=mxUtils.bind(this,function(e){e=this.getGraphBounds(),this.updateHtmlCanvasSize(e.x+e.width+this.graph.border,e.y+e.height+this.graph.border)}),mxEvent.addListener(window,"resize",e)))},mxGraphView.prototype.updateHtmlCanvasSize=function(e,t){if(null!=this.graph.container){var n=this.graph.container.offsetHeight;this.canvas.style.width=this.graph.container.offsetWidth<e?e+"px":"100%",this.canvas.style.height=n<t?t+"px":"100%"}},mxGraphView.prototype.createHtmlPane=function(e,t){var n=document.createElement("DIV");return null!=e&&null!=t?(n.style.position="absolute",n.style.left="0px",n.style.top="0px",n.style.width=e,n.style.height=t):n.style.position="relative",n},mxGraphView.prototype.createVml=function(){var e=this.graph.container;if(null!=e){var t=e.offsetWidth,n=e.offsetHeight;this.canvas=this.createVmlPane(t,n),this.backgroundPane=this.createVmlPane(t,n),this.drawPane=this.createVmlPane(t,n),this.overlayPane=this.createVmlPane(t,n),this.canvas.appendChild(this.backgroundPane),this.canvas.appendChild(this.drawPane),this.canvas.appendChild(this.overlayPane),e.appendChild(this.canvas)}},mxGraphView.prototype.createVmlPane=function(e,t){var n=document.createElement(mxClient.VML_PREFIX+":group");return n.style.position="absolute",n.style.left="0px",n.style.top="0px",n.style.width=e+"px",n.style.height=t+"px",n.setAttribute("coordsize",e+","+t),n.setAttribute("coordorigin","0,0"),n},mxGraphView.prototype.createSvg=function(){var e=this.graph.container;this.canvas=document.createElementNS(mxConstants.NS_SVG,"g"),this.backgroundPane=document.createElementNS(mxConstants.NS_SVG,"g"),this.canvas.appendChild(this.backgroundPane),this.drawPane=document.createElementNS(mxConstants.NS_SVG,"g"),this.canvas.appendChild(this.drawPane),this.overlayPane=document.createElementNS(mxConstants.NS_SVG,"g"),this.canvas.appendChild(this.overlayPane);var t=document.createElementNS(mxConstants.NS_SVG,"svg");t.style.width="100%",t.style.height="100%",t.style.display="block",t.appendChild(this.canvas),null!=e&&(e.appendChild(t),"static"==mxUtils.getCurrentStyle(e).position&&(e.style.position="relative"))},mxGraphView.prototype.destroy=function(){var e=null!=this.canvas?this.canvas.ownerSVGElement:null;null==e&&(e=this.canvas),null!=e&&null!=e.parentNode&&(this.clear(this.currentRoot,!0),mxEvent.removeGestureListeners(document,null,this.moveHandler,this.endHandler),mxEvent.release(this.graph.container),e.parentNode.removeChild(e),this.overlayPane=this.drawPane=this.backgroundPane=this.canvas=this.endHandler=this.moveHandler=null)},mxCurrentRootChange.prototype.execute=function(){var e=this.view.currentRoot;this.view.currentRoot=this.previous,this.previous=e,null!=(e=this.view.graph.getTranslateForRoot(this.view.currentRoot))&&(this.view.translate=new mxPoint(-e.x,-e.y)),this.view.fireEvent(new mxEventObject(this.isUp?mxEvent.UP:mxEvent.DOWN,"root",this.view.currentRoot,"previous",this.previous)),this.isUp?(this.view.clear(this.view.currentRoot,!0),this.view.validate()):this.view.refresh(),this.isUp=!this.isUp},mxLoadResources&&mxResources.add(mxClient.basePath+"/resources/graph"),mxGraph.prototype=new mxEventSource,mxGraph.prototype.constructor=mxGraph,mxGraph.prototype.EMPTY_ARRAY=[],mxGraph.prototype.mouseListeners=null,mxGraph.prototype.isMouseDown=!1,mxGraph.prototype.model=null,mxGraph.prototype.view=null,mxGraph.prototype.stylesheet=null,mxGraph.prototype.selectionModel=null,mxGraph.prototype.cellEditor=null,mxGraph.prototype.cellRenderer=null,mxGraph.prototype.multiplicities=null,mxGraph.prototype.renderHint=null,mxGraph.prototype.dialect=null,mxGraph.prototype.gridSize=10,mxGraph.prototype.gridEnabled=!0,mxGraph.prototype.portsEnabled=!0,mxGraph.prototype.doubleTapEnabled=!0,mxGraph.prototype.doubleTapTimeout=700,mxGraph.prototype.doubleTapTolerance=25,mxGraph.prototype.lastTouchY=0,mxGraph.prototype.lastTouchY=0,mxGraph.prototype.lastTouchTime=0,mxGraph.prototype.gestureEnabled=!0,mxGraph.prototype.tolerance=4,mxGraph.prototype.defaultOverlap=.5,mxGraph.prototype.defaultParent=null,mxGraph.prototype.alternateEdgeStyle=null,mxGraph.prototype.backgroundImage=null,mxGraph.prototype.pageVisible=!1,mxGraph.prototype.pageBreaksVisible=!1,mxGraph.prototype.pageBreakColor="gray",mxGraph.prototype.pageBreakDashed=!0,mxGraph.prototype.minPageBreakDist=20,mxGraph.prototype.preferPageSize=!1,mxGraph.prototype.pageFormat=mxConstants.PAGE_FORMAT_A4_PORTRAIT,mxGraph.prototype.pageScale=1.5,mxGraph.prototype.enabled=!0,mxGraph.prototype.escapeEnabled=!0,mxGraph.prototype.invokesStopCellEditing=!0,mxGraph.prototype.enterStopsCellEditing=!1,mxGraph.prototype.useScrollbarsForPanning=!0,mxGraph.prototype.exportEnabled=!0,mxGraph.prototype.importEnabled=!0,mxGraph.prototype.cellsLocked=!1,mxGraph.prototype.cellsCloneable=!0,mxGraph.prototype.foldingEnabled=!0,mxGraph.prototype.cellsEditable=!0,mxGraph.prototype.cellsDeletable=!0,mxGraph.prototype.cellsMovable=!0,mxGraph.prototype.edgeLabelsMovable=!0,mxGraph.prototype.vertexLabelsMovable=!1,mxGraph.prototype.dropEnabled=!1,mxGraph.prototype.splitEnabled=!0,mxGraph.prototype.cellsResizable=!0,mxGraph.prototype.cellsBendable=!0,mxGraph.prototype.cellsSelectable=!0,mxGraph.prototype.cellsDisconnectable=!0,mxGraph.prototype.autoSizeCells=!1,mxGraph.prototype.autoScroll=!0,mxGraph.prototype.timerAutoScroll=!1,mxGraph.prototype.allowAutoPanning=!1,mxGraph.prototype.ignoreScrollbars=!1,mxGraph.prototype.autoExtend=!0,mxGraph.prototype.maximumGraphBounds=null,mxGraph.prototype.minimumGraphSize=null,mxGraph.prototype.minimumContainerSize=null,mxGraph.prototype.maximumContainerSize=null,mxGraph.prototype.resizeContainer=!1,mxGraph.prototype.border=0,mxGraph.prototype.ordered=!0,mxGraph.prototype.keepEdgesInForeground=!1,mxGraph.prototype.keepEdgesInBackground=!0,mxGraph.prototype.allowNegativeCoordinates=!0,mxGraph.prototype.constrainChildren=!0,mxGraph.prototype.extendParents=!0,mxGraph.prototype.extendParentsOnAdd=!0,mxGraph.prototype.collapseToPreferredSize=!0,mxGraph.prototype.zoomFactor=1.2,mxGraph.prototype.keepSelectionVisibleOnZoom=!1,mxGraph.prototype.centerZoom=!0,mxGraph.prototype.resetViewOnRootChange=!0,mxGraph.prototype.resetEdgesOnResize=!1,mxGraph.prototype.resetEdgesOnMove=!1,mxGraph.prototype.resetEdgesOnConnect=!0,mxGraph.prototype.allowLoops=!1,mxGraph.prototype.defaultLoopStyle=mxEdgeStyle.Loop,mxGraph.prototype.multigraph=!0,mxGraph.prototype.connectableEdges=!1,mxGraph.prototype.allowDanglingEdges=!0,mxGraph.prototype.cloneInvalidEdges=!1,mxGraph.prototype.disconnectOnMove=!0,mxGraph.prototype.labelsVisible=!0,mxGraph.prototype.htmlLabels=!1,mxGraph.prototype.swimlaneSelectionEnabled=!0,mxGraph.prototype.swimlaneNesting=!0,mxGraph.prototype.swimlaneIndicatorColorAttribute=mxConstants.STYLE_FILLCOLOR,mxGraph.prototype.imageBundles=null,mxGraph.prototype.minFitScale=.1,mxGraph.prototype.maxFitScale=8,mxGraph.prototype.panDx=0,mxGraph.prototype.panDy=0,mxGraph.prototype.collapsedImage=new mxImage(mxClient.imageBasePath+"/collapsed.gif",9,9),mxGraph.prototype.expandedImage=new mxImage(mxClient.imageBasePath+"/expanded.gif",9,9),mxGraph.prototype.warningImage=new mxImage("/assets/plugins/mxgraph/images/warning.gif",16,16),mxGraph.prototype.alreadyConnectedResource="none"!=mxClient.language?"alreadyConnected":"",mxGraph.prototype.containsValidationErrorsResource="none"!=mxClient.language?"containsValidationErrors":"",mxGraph.prototype.collapseExpandResource="none"!=mxClient.language?"collapse-expand":"",mxGraph.prototype.init=function(e){this.container=e,this.cellEditor=this.createCellEditor(),this.view.init(),this.sizeDidChange(),mxClient.IS_IE&&(mxEvent.addListener(window,"unload",mxUtils.bind(this,function(){this.destroy()})),mxEvent.addListener(e,"selectstart",mxUtils.bind(this,function(){return this.isEditing()}))),8==document.documentMode&&e.insertAdjacentHTML("beforeend",'<v:group style="DISPLAY: none;"></v:group>')},mxGraph.prototype.createHandlers=function(e){this.tooltipHandler=new mxTooltipHandler(this),this.tooltipHandler.setEnabled(!1),this.panningHandler=new mxPanningHandler(this),this.panningHandler.panningEnabled=!1,this.selectionCellsHandler=new mxSelectionCellsHandler(this),this.connectionHandler=new mxConnectionHandler(this),this.connectionHandler.setEnabled(!1),this.graphHandler=new mxGraphHandler(this)},mxGraph.prototype.createSelectionModel=function(){return new mxGraphSelectionModel(this)},mxGraph.prototype.createStylesheet=function(){return new mxStylesheet},mxGraph.prototype.createGraphView=function(){return new mxGraphView(this)},mxGraph.prototype.createCellRenderer=function(){return new mxCellRenderer},mxGraph.prototype.createCellEditor=function(){return new mxCellEditor(this)},mxGraph.prototype.getModel=function(){return this.model},mxGraph.prototype.getView=function(){return this.view},mxGraph.prototype.getStylesheet=function(){return this.stylesheet},mxGraph.prototype.setStylesheet=function(e){this.stylesheet=e},mxGraph.prototype.getSelectionModel=function(){return this.selectionModel},mxGraph.prototype.setSelectionModel=function(e){this.selectionModel=e},mxGraph.prototype.getSelectionCellsForChanges=function(e){for(var t=[],n=0;n<e.length;n++){var a=e[n];if(a.constructor!=mxRootChange){var i=null;a instanceof mxChildChange&&null==a.previous?i=a.child:null!=a.cell&&a.cell instanceof mxCell&&(i=a.cell),null!=i&&0>mxUtils.indexOf(t,i)&&t.push(i)}}return this.getModel().getTopmostCells(t)},mxGraph.prototype.graphModelChanged=function(e){for(var t=0;t<e.length;t++)this.processChange(e[t]);this.removeSelectionCells(this.getRemovedCellsForChanges(e)),this.view.validate(),this.sizeDidChange()},mxGraph.prototype.getRemovedCellsForChanges=function(e){for(var t=[],n=0;n<e.length;n++){var a=e[n];if(a instanceof mxRootChange)break;a instanceof mxChildChange?null!=a.previous&&null==a.parent&&(t=t.concat(this.model.getDescendants(a.child))):a instanceof mxVisibleChange&&(t=t.concat(this.model.getDescendants(a.cell)))}return t},mxGraph.prototype.processChange=function(e){if(e instanceof mxRootChange)this.clearSelection(),this.removeStateForCell(e.previous),this.resetViewOnRootChange&&(this.view.scale=1,this.view.translate.x=0,this.view.translate.y=0),this.fireEvent(new mxEventObject(mxEvent.ROOT));else if(e instanceof mxChildChange){var t=this.model.getParent(e.child);null!=t?this.view.invalidate(e.child,!0,!1,null!=e.previous):(this.removeStateForCell(e.child),this.view.currentRoot==e.child&&this.home()),t!=e.previous&&(null!=t&&this.view.invalidate(t,!1,!1),null!=e.previous&&this.view.invalidate(e.previous,!1,!1))}else e instanceof mxTerminalChange||e instanceof mxGeometryChange?this.view.invalidate(e.cell):e instanceof mxValueChange?this.view.invalidate(e.cell,!1,!1):e instanceof mxStyleChange?(this.view.invalidate(e.cell,!0,!0,!1),this.view.removeState(e.cell)):null!=e.cell&&e.cell instanceof mxCell&&this.removeStateForCell(e.cell)},mxGraph.prototype.removeStateForCell=function(e){for(var t=this.model.getChildCount(e),n=0;n<t;n++)this.removeStateForCell(this.model.getChildAt(e,n));this.view.removeState(e)},mxGraph.prototype.addCellOverlay=function(e,t){null==e.overlays&&(e.overlays=[]),e.overlays.push(t);var n=this.view.getState(e);return null!=n&&this.cellRenderer.redraw(n),this.fireEvent(new mxEventObject(mxEvent.ADD_OVERLAY,"cell",e,"overlay",t)),t},mxGraph.prototype.getCellOverlays=function(e){return e.overlays},mxGraph.prototype.removeCellOverlay=function(e,t){if(null==t)this.removeCellOverlays(e);else{var n=mxUtils.indexOf(e.overlays,t);0<=n?(e.overlays.splice(n,1),0==e.overlays.length&&(e.overlays=null),null!=(n=this.view.getState(e))&&this.cellRenderer.redraw(n),this.fireEvent(new mxEventObject(mxEvent.REMOVE_OVERLAY,"cell",e,"overlay",t))):t=null}return t},mxGraph.prototype.removeCellOverlays=function(e){var t=e.overlays;if(null!=t){e.overlays=null;var n=this.view.getState(e);for(null!=n&&this.cellRenderer.redraw(n),n=0;n<t.length;n++)this.fireEvent(new mxEventObject(mxEvent.REMOVE_OVERLAY,"cell",e,"overlay",t[n]))}return t},mxGraph.prototype.clearCellOverlays=function(e){e=null!=e?e:this.model.getRoot(),this.removeCellOverlays(e);for(var t=this.model.getChildCount(e),n=0;n<t;n++){var a=this.model.getChildAt(e,n);this.clearCellOverlays(a)}},mxGraph.prototype.setCellWarning=function(e,t,n,a){return null!=t&&0<t.length?(n=null!=n?n:this.warningImage,t=new mxCellOverlay(n,"<font color=red>"+t+"</font>"),a&&t.addListener(mxEvent.CLICK,mxUtils.bind(this,function(t,n){this.isEnabled()&&this.setSelectionCell(e)})),this.addCellOverlay(e,t)):(this.removeCellOverlays(e),null)},mxGraph.prototype.startEditing=function(e){this.startEditingAtCell(null,e)},mxGraph.prototype.startEditingAtCell=function(e,t){null==e&&null!=(e=this.getSelectionCell())&&!this.isCellEditable(e)&&(e=null),null!=e&&(this.fireEvent(new mxEventObject(mxEvent.START_EDITING,"cell",e,"event",t)),this.cellEditor.startEditing(e,t))},mxGraph.prototype.getEditingValue=function(e,t){return this.convertValueToString(e)},mxGraph.prototype.stopEditing=function(e){this.cellEditor.stopEditing(e)},mxGraph.prototype.labelChanged=function(e,t,n){this.model.beginUpdate();try{this.cellLabelChanged(e,t,this.isAutoSizeCell(e)),this.fireEvent(new mxEventObject(mxEvent.LABEL_CHANGED,"cell",e,"value",t,"event",n))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellLabelChanged=function(e,t,n){this.model.beginUpdate();try{this.model.setValue(e,t),n&&this.cellSizeUpdated(e,!1)}finally{this.model.endUpdate()}},mxGraph.prototype.escape=function(e){this.stopEditing(!0),this.connectionHandler.reset(),this.graphHandler.reset(),e=this.getSelectionCells();for(var t=0;t<e.length;t++){var n=this.view.getState(e[t]);null!=n&&null!=n.handler&&n.handler.reset()}},mxGraph.prototype.click=function(e){var t=e.getEvent(),n=e.getCell(),a=new mxEventObject(mxEvent.CLICK,"event",t,"cell",n);e.isConsumed()&&a.consume(),this.fireEvent(a),this.isEnabled()&&!mxEvent.isConsumed(t)&&!a.isConsumed()&&(null!=n?this.selectCellForEvent(n,t):(n=null,this.isSwimlaneSelectionEnabled()&&(n=this.getSwimlaneAt(e.getGraphX(),e.getGraphY())),null!=n?this.selectCellForEvent(n,t):this.isToggleEvent(t)||this.clearSelection()))},mxGraph.prototype.dblClick=function(e,t){var n=new mxEventObject(mxEvent.DOUBLE_CLICK,"event",e,"cell",t);this.fireEvent(n),this.isEnabled()&&!mxEvent.isConsumed(e)&&!n.isConsumed()&&null!=t&&this.isCellEditable(t)&&this.startEditingAtCell(t,e)},mxGraph.prototype.scrollPointToVisible=function(e,t,n,a){if(this.timerAutoScroll||!this.ignoreScrollbars&&!mxUtils.hasScrollbars(this.container))this.allowAutoPanning&&!this.panningHandler.active&&(null==this.panningManager&&(this.panningManager=this.createPanningManager()),this.panningManager.panTo(e+this.panDx,t+this.panDy));else{var i=this.container;if(a=null!=a?a:20,e>=i.scrollLeft&&t>=i.scrollTop&&e<=i.scrollLeft+i.clientWidth&&t<=i.scrollTop+i.clientHeight){var o=i.scrollLeft+i.clientWidth-e;if(o<a){if(e=i.scrollLeft,i.scrollLeft+=a-o,n&&e==i.scrollLeft){if(this.dialect==mxConstants.DIALECT_SVG){e=this.view.getDrawPane().ownerSVGElement;var s=this.container.scrollWidth+a-o}else s=Math.max(i.clientWidth,i.scrollWidth)+a-o,e=this.view.getCanvas();e.style.width=s+"px",i.scrollLeft+=a-o}}else(o=e-i.scrollLeft)<a&&(i.scrollLeft-=a-o);(o=i.scrollTop+i.clientHeight-t)<a?(e=i.scrollTop,i.scrollTop+=a-o,e==i.scrollTop&&n&&(this.dialect==mxConstants.DIALECT_SVG?(e=this.view.getDrawPane().ownerSVGElement,t=this.container.scrollHeight+a-o):(t=Math.max(i.clientHeight,i.scrollHeight)+a-o,e=this.view.getCanvas()),e.style.height=t+"px",i.scrollTop+=a-o)):(o=t-i.scrollTop)<a&&(i.scrollTop-=a-o)}}},mxGraph.prototype.createPanningManager=function(){return new mxPanningManager(this)},mxGraph.prototype.getBorderSizes=function(){function e(e){var t=0,t="thin"==e?2:"medium"==e?4:"thick"==e?6:parseInt(e);return isNaN(t)&&(t=0),t}var t=mxUtils.getCurrentStyle(this.container),n=new mxRectangle;return n.x=e(t.borderLeftWidth)+parseInt(t.paddingLeft||0),n.y=e(t.borderTopWidth)+parseInt(t.paddingTop||0),n.width=e(t.borderRightWidth)+parseInt(t.paddingRight||0),n.height=e(t.borderBottomWidth)+parseInt(t.paddingBottom||0),n},mxGraph.prototype.getPreferredPageSize=function(e,t,n){e=this.view.scale;var a=this.view.translate,i=this.pageFormat,o=e*this.pageScale,i=new mxRectangle(0,0,i.width*o,i.height*o);return t=this.pageBreaksVisible?Math.ceil(t/i.width):1,n=this.pageBreaksVisible?Math.ceil(n/i.height):1,new mxRectangle(0,0,t*i.width+2+a.x/e,n*i.height+2+a.y/e)},mxGraph.prototype.sizeDidChange=function(){var e=this.getGraphBounds();if(null!=this.container){var t=this.getBorder(),n=Math.max(0,e.x+e.width+1+t),t=Math.max(0,e.y+e.height+1+t);if(null!=this.minimumContainerSize&&(n=Math.max(n,this.minimumContainerSize.width),t=Math.max(t,this.minimumContainerSize.height)),this.resizeContainer&&this.doResizeContainer(n,t),this.preferPageSize||!mxClient.IS_IE&&this.pageVisible){var a=this.getPreferredPageSize(e,n,t);null!=a&&(n=a.width,t=a.height)}null!=this.minimumGraphSize&&(n=Math.max(n,this.minimumGraphSize.width*this.view.scale),t=Math.max(t,this.minimumGraphSize.height*this.view.scale)),n=Math.ceil(n-1),t=Math.ceil(t-1),this.dialect==mxConstants.DIALECT_SVG?(a=this.view.getDrawPane().ownerSVGElement,a.style.minWidth=Math.max(1,n)+"px",a.style.minHeight=Math.max(1,t)+"px",a.style.width="100%",a.style.height="100%"):mxClient.IS_QUIRKS?this.view.updateHtmlCanvasSize(Math.max(1,n),Math.max(1,t)):(this.view.canvas.style.minWidth=Math.max(1,n)+"px",this.view.canvas.style.minHeight=Math.max(1,t)+"px"),this.updatePageBreaks(this.pageBreaksVisible,n-1,t-1)}this.fireEvent(new mxEventObject(mxEvent.SIZE,"bounds",e))},mxGraph.prototype.doResizeContainer=function(e,t){if(mxClient.IS_IE)if(mxClient.IS_QUIRKS){var n=this.getBorderSizes();e+=Math.max(2,n.x+n.width+1),t+=Math.max(2,n.y+n.height+1)}else 9<=document.documentMode?(e+=3,t+=5):(e+=1,t+=1);else t+=1;null!=this.maximumContainerSize&&(e=Math.min(this.maximumContainerSize.width,e),t=Math.min(this.maximumContainerSize.height,t)),this.container.style.width=Math.ceil(e)+"px",this.container.style.height=Math.ceil(t)+"px"},mxGraph.prototype.updatePageBreaks=function(e,t,n){var a=this.view.scale,i=this.view.translate,o=this.pageFormat,s=a*this.pageScale,i=new mxRectangle(a*i.x,a*i.y,o.width*s,o.height*s);if(e=e&&Math.min(i.width,i.height)>this.minPageBreakDist,i.x=mxUtils.mod(i.x,i.width),i.y=mxUtils.mod(i.y,i.height),o=e?Math.ceil((t-i.x)/i.width):0,e=e?Math.ceil((n-i.y)/i.height):0,null==this.horizontalPageBreaks&&0<o&&(this.horizontalPageBreaks=[]),null!=this.horizontalPageBreaks){for(s=0;s<=o;s++){var r=[new mxPoint(i.x+s*i.width,1),new mxPoint(i.x+s*i.width,n)];null!=this.horizontalPageBreaks[s]?(this.horizontalPageBreaks[s].scale=1,this.horizontalPageBreaks[s].points=r,this.horizontalPageBreaks[s].redraw()):(r=new mxPolyline(r,this.pageBreakColor,this.scale),r.dialect=this.dialect,r.isDashed=this.pageBreakDashed,r.scale=a,r.init(this.view.backgroundPane),r.redraw(),this.horizontalPageBreaks[s]=r)}for(s=o;s<this.horizontalPageBreaks.length;s++)this.horizontalPageBreaks[s].destroy();this.horizontalPageBreaks.splice(o,this.horizontalPageBreaks.length-o)}if(null==this.verticalPageBreaks&&0<e&&(this.verticalPageBreaks=[]),null!=this.verticalPageBreaks){for(s=0;s<=e;s++)r=[new mxPoint(1,i.y+s*i.height),new mxPoint(t,i.y+s*i.height)],null!=this.verticalPageBreaks[s]?(this.verticalPageBreaks[s].scale=1,this.verticalPageBreaks[s].points=r,this.verticalPageBreaks[s].redraw()):(r=new mxPolyline(r,this.pageBreakColor,a),r.dialect=this.dialect,r.isDashed=this.pageBreakDashed,r.scale=a,r.init(this.view.backgroundPane),r.redraw(),this.verticalPageBreaks[s]=r);for(s=e;s<this.verticalPageBreaks.length;s++)this.verticalPageBreaks[s].destroy();this.verticalPageBreaks.splice(e,this.verticalPageBreaks.length-e)}},mxGraph.prototype.getCellStyle=function(e){var t=this.model.getStyle(e),n=null,n=this.model.isEdge(e)?this.stylesheet.getDefaultEdgeStyle():this.stylesheet.getDefaultVertexStyle();return null!=t&&(n=this.postProcessCellStyle(this.stylesheet.getCellStyle(t,n))),null==n&&(n=mxGraph.prototype.EMPTY_ARRAY),n},mxGraph.prototype.postProcessCellStyle=function(e){if(null!=e){var t=e[mxConstants.STYLE_IMAGE],n=this.getImageFromBundles(t);null!=n?e[mxConstants.STYLE_IMAGE]=n:n=t,null!=n&&"data:image/"==n.substring(0,11)&&(0<(t=n.indexOf(","))&&(n=n.substring(0,t)+";base64,"+n.substring(t+1)),e[mxConstants.STYLE_IMAGE]=n)}return e},mxGraph.prototype.setCellStyle=function(e,t){if(null!=(t=t||this.getSelectionCells())){this.model.beginUpdate();try{for(var n=0;n<t.length;n++)this.model.setStyle(t[n],e)}finally{this.model.endUpdate()}}},mxGraph.prototype.toggleCellStyle=function(e,t,n){n=n||this.getSelectionCell(),this.toggleCellStyles(e,t,[n])},mxGraph.prototype.toggleCellStyles=function(e,t,n){if(t=null!=t&&t,null!=(n=n||this.getSelectionCells())&&0<n.length){var a=this.view.getState(n[0]);null!=(a=null!=a?a.style:this.getCellStyle(n[0]))&&(t=mxUtils.getValue(a,e,t)?0:1,this.setCellStyles(e,t,n))}},mxGraph.prototype.setCellStyles=function(e,t,n){n=n||this.getSelectionCells(),mxUtils.setCellStyles(this.model,n,e,t)},mxGraph.prototype.toggleCellStyleFlags=function(e,t,n){this.setCellStyleFlags(e,t,null,n)},mxGraph.prototype.setCellStyleFlags=function(e,t,n,a){if(null!=(a=a||this.getSelectionCells())&&0<a.length){if(null==n){var i=this.view.getState(a[0]);null!=(i=null!=i?i.style:this.getCellStyle(a[0]))&&(n=(parseInt(i[e]||0)&t)!=t)}mxUtils.setCellStyleFlags(this.model,a,e,t,n)}},mxGraph.prototype.alignCells=function(e,t,n){if(null==t&&(t=this.getSelectionCells()),null!=t&&1<t.length){if(null==n)for(var a=0;a<t.length;a++){var i=this.getCellGeometry(t[a]);if(null!=i&&!this.model.isEdge(t[a]))if(null==n){if(e==mxConstants.ALIGN_CENTER){n=i.x+i.width/2;break}if(e==mxConstants.ALIGN_RIGHT)n=i.x+i.width;else if(e==mxConstants.ALIGN_TOP)n=i.y;else{if(e==mxConstants.ALIGN_MIDDLE){n=i.y+i.height/2;break}n=e==mxConstants.ALIGN_BOTTOM?i.y+i.height:i.x}}else n=e==mxConstants.ALIGN_RIGHT?Math.max(n,i.x+i.width):e==mxConstants.ALIGN_TOP?Math.min(n,i.y):e==mxConstants.ALIGN_BOTTOM?Math.max(n,i.y+i.height):Math.min(n,i.x)}if(null!=n){this.model.beginUpdate();try{for(a=0;a<t.length;a++)null!=(i=this.getCellGeometry(t[a]))&&!this.model.isEdge(t[a])&&(i=i.clone(),e==mxConstants.ALIGN_CENTER?i.x=n-i.width/2:e==mxConstants.ALIGN_RIGHT?i.x=n-i.width:e==mxConstants.ALIGN_TOP?i.y=n:e==mxConstants.ALIGN_MIDDLE?i.y=n-i.height/2:e==mxConstants.ALIGN_BOTTOM?i.y=n-i.height:i.x=n,this.model.setGeometry(t[a],i));this.fireEvent(new mxEventObject(mxEvent.ALIGN_CELLS,"align",e,"cells",t))}finally{this.model.endUpdate()}}}return t},mxGraph.prototype.flipEdge=function(e){if(null!=e&&null!=this.alternateEdgeStyle){this.model.beginUpdate();try{var t=this.model.getStyle(e);null==t||0==t.length?this.model.setStyle(e,this.alternateEdgeStyle):this.model.setStyle(e,null),this.resetEdge(e),this.fireEvent(new mxEventObject(mxEvent.FLIP_EDGE,"edge",e))}finally{this.model.endUpdate()}}return e},mxGraph.prototype.addImageBundle=function(e){this.imageBundles.push(e)},mxGraph.prototype.removeImageBundle=function(e){for(var t=[],n=0;n<this.imageBundles.length;n++)this.imageBundles[n]!=e&&t.push(this.imageBundles[n]);this.imageBundles=t},mxGraph.prototype.getImageFromBundles=function(e){if(null!=e)for(var t=0;t<this.imageBundles.length;t++){var n=this.imageBundles[t].getImage(e);if(null!=n)return n}return null},mxGraph.prototype.orderCells=function(e,t){null==t&&(t=mxUtils.sortCells(this.getSelectionCells(),!0)),this.model.beginUpdate();try{this.cellsOrdered(t,e),this.fireEvent(new mxEventObject(mxEvent.ORDER_CELLS,"back",e,"cells",t))}finally{this.model.endUpdate()}return t},mxGraph.prototype.cellsOrdered=function(e,t){if(null!=e){this.model.beginUpdate();try{for(var n=0;n<e.length;n++){var a=this.model.getParent(e[n]);t?this.model.add(a,e[n],n):this.model.add(a,e[n],this.model.getChildCount(a)-1)}this.fireEvent(new mxEventObject(mxEvent.CELLS_ORDERED,"back",t,"cells",e))}finally{this.model.endUpdate()}}},mxGraph.prototype.groupCells=function(e,t,n){null==n&&(n=mxUtils.sortCells(this.getSelectionCells(),!0)),n=this.getCellsForGroup(n),null==e&&(e=this.createGroupCell(n));var a=this.getBoundsForGroup(e,n,t);if(0<n.length&&null!=a){var i=this.model.getParent(e);null==i&&(i=this.model.getParent(n[0])),this.model.beginUpdate();try{null==this.getCellGeometry(e)&&this.model.setGeometry(e,new mxGeometry);var o=this.model.getChildCount(i);this.cellsAdded([e],i,o,null,null,!1),o=this.model.getChildCount(e),this.cellsAdded(n,e,o,null,null,!1,!1),this.cellsMoved(n,-a.x,-a.y,!1,!0),this.cellsResized([e],[a]),this.fireEvent(new mxEventObject(mxEvent.GROUP_CELLS,"group",e,"border",t,"cells",n))}finally{this.model.endUpdate()}}return e},mxGraph.prototype.getCellsForGroup=function(e){var t=[];if(null!=e&&0<e.length){var n=this.model.getParent(e[0]);t.push(e[0]);for(var a=1;a<e.length;a++)this.model.getParent(e[a])==n&&t.push(e[a])}return t},mxGraph.prototype.getBoundsForGroup=function(e,t,n){return null!=(t=this.getBoundingBoxFromGeometry(t))&&(this.isSwimlane(e)&&(e=this.getStartSize(e),t.x-=e.width,t.y-=e.height,t.width+=e.width,t.height+=e.height),t.x-=n,t.y-=n,t.width+=2*n,t.height+=2*n),t},mxGraph.prototype.createGroupCell=function(e){return(e=new mxCell("")).setVertex(!0),e.setConnectable(!1),e},mxGraph.prototype.ungroupCells=function(e){var t=[];if(null==e){e=this.getSelectionCells();for(var n=[],a=0;a<e.length;a++)0<this.model.getChildCount(e[a])&&n.push(e[a]);e=n}if(null!=e&&0<e.length){this.model.beginUpdate();try{for(a=0;a<e.length;a++)if(null!=(i=this.model.getChildren(e[a]))&&0<i.length){var i=i.slice(),o=this.model.getParent(e[a]),s=this.model.getChildCount(o);this.cellsAdded(i,o,s,null,null,!0),t=t.concat(i)}this.cellsRemoved(this.addAllEdges(e)),this.fireEvent(new mxEventObject(mxEvent.UNGROUP_CELLS,"cells",e))}finally{this.model.endUpdate()}}return t},mxGraph.prototype.removeCellsFromParent=function(e){null==e&&(e=this.getSelectionCells()),this.model.beginUpdate();try{var t=this.getDefaultParent(),n=this.model.getChildCount(t);this.cellsAdded(e,t,n,null,null,!0),this.fireEvent(new mxEventObject(mxEvent.REMOVE_CELLS_FROM_PARENT,"cells",e))}finally{this.model.endUpdate()}return e},mxGraph.prototype.updateGroupBounds=function(e,t,n){null==e&&(e=this.getSelectionCells()),t=null!=t?t:0,n=null!=n&&n,this.model.beginUpdate();try{for(var a=0;a<e.length;a++)if(null!=(r=this.getCellGeometry(e[a]))){var i=this.getChildCells(e[a]);if(null!=i&&0<i.length){var o=this.getBoundingBoxFromGeometry(i);if(0<o.width&&0<o.height){var s=this.isSwimlane(e[a])?this.getStartSize(e[a]):new mxRectangle,r=r.clone();n&&(r.x+=o.x-s.width-t,r.y+=o.y-s.height-t),r.width=o.width+s.width+2*t,r.height=o.height+s.height+2*t,this.model.setGeometry(e[a],r),this.moveCells(i,-o.x+s.width+t,-o.y+s.height+t)}}}}finally{this.model.endUpdate()}return e},mxGraph.prototype.cloneCells=function(e,t){t=null==t||t;a=null;if(null!=e){for(var n={},a=[],i=0;i<e.length;i++)n[o=mxCellPath.create(e[i])]=e[i],a.push(e[i]);if(0<a.length)for(var o=this.view.scale,s=this.view.translate,a=this.model.cloneCells(e,!0),i=0;i<e.length;i++)if(!t&&this.model.isEdge(a[i])&&null!=this.getEdgeValidationError(a[i],this.model.getTerminal(a[i],!0),this.model.getTerminal(a[i],!1)))a[i]=null;else{var r=this.model.getGeometry(a[i]);if(null!=r){var l=this.view.getState(e[i]),d=this.view.getState(this.model.getParent(e[i]));if(null!=l&&null!=d){var c=d.origin.x,d=d.origin.y;if(this.model.isEdge(a[i])){for(var l=l.absolutePoints,m=this.model.getTerminal(e[i],!0),u=mxCellPath.create(m);null!=m&&null==n[u];)m=this.model.getParent(m),u=mxCellPath.create(m);for(null==m&&r.setTerminalPoint(new mxPoint(l[0].x/o-s.x,l[0].y/o-s.y),!0),m=this.model.getTerminal(e[i],!1),u=mxCellPath.create(m);null!=m&&null==n[u];)m=this.model.getParent(m),u=mxCellPath.create(m);if(null==m&&(m=l.length-1,r.setTerminalPoint(new mxPoint(l[m].x/o-s.x,l[m].y/o-s.y),!1)),null!=(r=r.points))for(l=0;l<r.length;l++)r[l].x+=c,r[l].y+=d}else r.x+=c,r.y+=d}}}else a=[]}return a},mxGraph.prototype.insertVertex=function(e,t,n,a,i,o,s,r,l){return t=this.createVertex(e,t,n,a,i,o,s,r,l),this.addCell(t,e)},mxGraph.prototype.createVertex=function(e,t,n,a,i,o,s,r,l){return e=new mxGeometry(a,i,o,s),e.relative=null!=l&&l,(n=new mxCell(n,e,r)).setId(t),n.setVertex(!0),n.setConnectable(!0),n},mxGraph.prototype.insertEdge=function(e,t,n,a,i,o){return t=this.createEdge(e,t,n,a,i,o),this.addEdge(t,e,a,i)},mxGraph.prototype.createEdge=function(e,t,n,a,i,o){return(e=new mxCell(n,new mxGeometry,o)).setId(t),e.setEdge(!0),e.geometry.relative=!0,e},mxGraph.prototype.addEdge=function(e,t,n,a,i){return this.addCell(e,t,i,n,a)},mxGraph.prototype.addCell=function(e,t,n,a,i){return this.addCells([e],t,n,a,i)[0]},mxGraph.prototype.addCells=function(e,t,n,a,i){null==t&&(t=this.getDefaultParent()),null==n&&(n=this.model.getChildCount(t)),this.model.beginUpdate();try{this.cellsAdded(e,t,n,a,i,!1,!0),this.fireEvent(new mxEventObject(mxEvent.ADD_CELLS,"cells",e,"parent",t,"index",n,"source",a,"target",i))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellsAdded=function(e,t,n,a,i,o,s){if(null!=e&&null!=t&&null!=n){this.model.beginUpdate();try{for(var r=null!=(d=o?this.view.getState(t):null)?d.origin:null,l=new mxPoint(0,0),d=0;d<e.length;d++)if(null==e[d])n--;else{var c=this.model.getParent(e[d]);if(null!=r&&e[d]!=t&&t!=c){var m=this.view.getState(c),u=null!=m?m.origin:l,p=this.model.getGeometry(e[d]);if(null!=p){var g=u.x-r.x,h=u.y-r.y;(p=p.clone()).translate(g,h),!p.relative&&this.model.isVertex(e[d])&&!this.isAllowNegativeCoordinates()&&(p.x=Math.max(0,p.x),p.y=Math.max(0,p.y)),this.model.setGeometry(e[d],p)}}t==c&&n+d>this.model.getChildCount(t)&&n--,this.model.add(t,e[d],n+d),this.isExtendParentsOnAdd()&&this.isExtendParent(e[d])&&this.extendParent(e[d]),(null==s||s)&&this.constrainChild(e[d]),null!=a&&this.cellConnected(e[d],a,!0),null!=i&&this.cellConnected(e[d],i,!1)}this.fireEvent(new mxEventObject(mxEvent.CELLS_ADDED,"cells",e,"parent",t,"index",n,"source",a,"target",i,"absolute",o))}finally{this.model.endUpdate()}}},mxGraph.prototype.removeCells=function(e,t){t=null==t||t,null==e&&(e=this.getDeletableCells(this.getSelectionCells())),t&&(e=this.getDeletableCells(this.addAllEdges(e))),this.model.beginUpdate();try{this.cellsRemoved(e),this.fireEvent(new mxEventObject(mxEvent.REMOVE_CELLS,"cells",e,"includeEdges",t))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellsRemoved=function(e){if(null!=e&&0<e.length){var t=this.view.scale,n=this.view.translate;this.model.beginUpdate();try{for(var a={},i=0;i<e.length;i++){var o=mxCellPath.create(e[i]);a[o]=e[i]}for(i=0;i<e.length;i++){for(var s=this.getConnections(e[i]),r=0;r<s.length;r++)if(o=mxCellPath.create(s[r]),null==a[o]&&null!=(d=this.model.getGeometry(s[r]))){var l=this.view.getState(s[r]);if(null!=l){var d=d.clone(),c=l.getVisibleTerminal(!0)==e[i],m=l.absolutePoints,u=c?0:m.length-1;d.setTerminalPoint(new mxPoint(m[u].x/t-n.x,m[u].y/t-n.y),c),this.model.setTerminal(s[r],null,c),this.model.setGeometry(s[r],d)}}this.model.remove(e[i])}this.fireEvent(new mxEventObject(mxEvent.CELLS_REMOVED,"cells",e))}finally{this.model.endUpdate()}}},mxGraph.prototype.splitEdge=function(e,t,n,a,i){a=a||0,i=i||0,null==n&&(n=this.cloneCells([e])[0]);var o=this.model.getParent(e),s=this.model.getTerminal(e,!0);this.model.beginUpdate();try{this.cellsMoved(t,a,i,!1,!1),this.cellsAdded(t,o,this.model.getChildCount(o),null,null,!0),this.cellsAdded([n],o,this.model.getChildCount(o),s,t[0],!1),this.cellConnected(e,t[0],!0),this.fireEvent(new mxEventObject(mxEvent.SPLIT_EDGE,"edge",e,"cells",t,"newEdge",n,"dx",a,"dy",i))}finally{this.model.endUpdate()}return n},mxGraph.prototype.toggleCells=function(e,t,n){null==t&&(t=this.getSelectionCells()),n&&(t=this.addAllEdges(t)),this.model.beginUpdate();try{this.cellsToggled(t,e),this.fireEvent(new mxEventObject(mxEvent.TOGGLE_CELLS,"show",e,"cells",t,"includeEdges",n))}finally{this.model.endUpdate()}return t},mxGraph.prototype.cellsToggled=function(e,t){if(null!=e&&0<e.length){this.model.beginUpdate();try{for(var n=0;n<e.length;n++)this.model.setVisible(e[n],t)}finally{this.model.endUpdate()}}},mxGraph.prototype.foldCells=function(e,t,n,a){t=null!=t&&t,null==n&&(n=this.getFoldableCells(this.getSelectionCells(),e)),this.stopEditing(!1),this.model.beginUpdate();try{this.cellsFolded(n,e,t,a),this.fireEvent(new mxEventObject(mxEvent.FOLD_CELLS,"collapse",e,"recurse",t,"cells",n))}finally{this.model.endUpdate()}return n},mxGraph.prototype.cellsFolded=function(e,t,n,a){if(null!=e&&0<e.length){this.model.beginUpdate();try{for(var i=0;i<e.length;i++)if((!a||this.isCellFoldable(e[i],t))&&t!=this.isCellCollapsed(e[i])&&(this.model.setCollapsed(e[i],t),this.swapBounds(e[i],t),this.isExtendParent(e[i])&&this.extendParent(e[i]),n)){var o=this.model.getChildren(e[i]);this.foldCells(o,t,n)}this.fireEvent(new mxEventObject(mxEvent.CELLS_FOLDED,"cells",e,"collapse",t,"recurse",n))}finally{this.model.endUpdate()}}},mxGraph.prototype.swapBounds=function(e,t){if(null!=e){var n=this.model.getGeometry(e);null!=n&&(n=n.clone(),this.updateAlternateBounds(e,n,t),n.swap(),this.model.setGeometry(e,n))}},mxGraph.prototype.updateAlternateBounds=function(e,t,n){if(null!=e&&null!=t){if(n=this.view.getState(e),n=null!=n?n.style:this.getCellStyle(e),null==t.alternateBounds){var a=t;this.collapseToPreferredSize&&null!=(e=this.getPreferredSizeForCell(e))&&(a=e,0<(e=mxUtils.getValue(n,mxConstants.STYLE_STARTSIZE))&&(a.height=Math.max(a.height,e))),t.alternateBounds=new mxRectangle(0,0,a.width,a.height)}if(null!=t.alternateBounds){t.alternateBounds.x=t.x,t.alternateBounds.y=t.y;var i=mxUtils.toRadians(n[mxConstants.STYLE_ROTATION]||"0");0!=i&&(e=t.alternateBounds.getCenterX()-t.getCenterX(),n=t.alternateBounds.getCenterY()-t.getCenterY(),a=Math.cos(i),i=Math.sin(i),t.alternateBounds.x+=a*e-i*n-e,t.alternateBounds.y+=i*e+a*n-n)}}},mxGraph.prototype.addAllEdges=function(e){var t=e.slice();return t=t.concat(this.getAllEdges(e))},mxGraph.prototype.getAllEdges=function(e){var t=[];if(null!=e)for(var n=0;n<e.length;n++){for(var a=this.model.getEdgeCount(e[n]),i=0;i<a;i++)t.push(this.model.getEdgeAt(e[n],i));a=this.model.getChildren(e[n]),t=t.concat(this.getAllEdges(a))}return t},mxGraph.prototype.updateCellSize=function(e,t){t=null!=t&&t,this.model.beginUpdate();try{this.cellSizeUpdated(e,t),this.fireEvent(new mxEventObject(mxEvent.UPDATE_CELL_SIZE,"cell",e,"ignoreChildren",t))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellSizeUpdated=function(e,t){if(null!=e){this.model.beginUpdate();try{var n=this.getPreferredSizeForCell(e),a=this.model.getGeometry(e);if(null!=n&&null!=a){var i=this.isCellCollapsed(e),a=a.clone();if(this.isSwimlane(e)){var o=this.view.getState(e),s=null!=o?o.style:this.getCellStyle(e),r=this.model.getStyle(e);null==r&&(r=""),mxUtils.getValue(s,mxConstants.STYLE_HORIZONTAL,!0)?(r=mxUtils.setStyle(r,mxConstants.STYLE_STARTSIZE,n.height+8),i&&(a.height=n.height+8),a.width=n.width):(r=mxUtils.setStyle(r,mxConstants.STYLE_STARTSIZE,n.width+8),i&&(a.width=n.width+8),a.height=n.height),this.model.setStyle(e,r)}else a.width=n.width,a.height=n.height;if(!t&&!i){var l=this.view.getBounds(this.model.getChildren(e));if(null!=l){var d=this.view.translate,c=this.view.scale,m=(l.y+l.height)/c-a.y-d.y;a.width=Math.max(a.width,(l.x+l.width)/c-a.x-d.x),a.height=Math.max(a.height,m)}}this.cellsResized([e],[a])}}finally{this.model.endUpdate()}}},mxGraph.prototype.getPreferredSizeForCell=function(e){o=null;if(null!=e){var t=this.view.getState(e),n=null!=t?t.style:this.getCellStyle(e);if(null!=n&&!this.model.isEdge(e)){var a=n[mxConstants.STYLE_FONTSIZE]||mxConstants.DEFAULT_FONTSIZE,i=0,o=0;null==this.getImage(t)&&null==n[mxConstants.STYLE_IMAGE]||n[mxConstants.STYLE_SHAPE]!=mxConstants.SHAPE_LABEL||(n[mxConstants.STYLE_VERTICAL_ALIGN]==mxConstants.ALIGN_MIDDLE&&(i+=parseFloat(n[mxConstants.STYLE_IMAGE_WIDTH])||mxLabel.prototype.imageSize),n[mxConstants.STYLE_ALIGN]!=mxConstants.ALIGN_CENTER&&(o+=parseFloat(n[mxConstants.STYLE_IMAGE_HEIGHT])||mxLabel.prototype.imageSize)),i+=2*(n[mxConstants.STYLE_SPACING]||0),i+=n[mxConstants.STYLE_SPACING_LEFT]||0,i+=n[mxConstants.STYLE_SPACING_RIGHT]||0,o+=2*(n[mxConstants.STYLE_SPACING]||0),o+=n[mxConstants.STYLE_SPACING_TOP]||0,o+=n[mxConstants.STYLE_SPACING_BOTTOM]||0,null!=(t=this.getFoldingImage(t))&&(i+=t.width+8),null!=(t=this.getLabel(e))&&0<t.length?(this.isHtmlLabel(e)||(t=t.replace(/\n/g,"<br>")),a=mxUtils.getSizeForString(t,a,n[mxConstants.STYLE_FONTFAMILY]),e=a.width+i,o=a.height+o,mxUtils.getValue(n,mxConstants.STYLE_HORIZONTAL,!0)||(n=o,o=e,e=n),this.gridEnabled&&(e=this.snap(e+this.gridSize/2),o=this.snap(o+this.gridSize/2)),o=new mxRectangle(0,0,e,o)):(n=4*this.gridSize,o=new mxRectangle(0,0,n,n))}}return o},mxGraph.prototype.handleGesture=function(e,t){if(.2<Math.abs(1-t.scale)){var n=this.view.scale,a=this.view.translate,i=e.width*t.scale,o=e.height*t.scale,s=e.y-(o-e.height)/2,n=new mxRectangle(this.snap((e.x-(i-e.width)/2)/n)-a.x,this.snap(s/n)-a.y,this.snap(i/n),this.snap(o/n));this.resizeCell(e.cell,n)}},mxGraph.prototype.resizeCell=function(e,t){return this.resizeCells([e],[t])[0]},mxGraph.prototype.resizeCells=function(e,t){this.model.beginUpdate();try{this.cellsResized(e,t),this.fireEvent(new mxEventObject(mxEvent.RESIZE_CELLS,"cells",e,"bounds",t))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellsResized=function(e,t){if(null!=e&&null!=t&&e.length==t.length){this.model.beginUpdate();try{for(var n=0;n<e.length;n++){var a=t[n],i=this.model.getGeometry(e[n]);if(null!=i&&(i.x!=a.x||i.y!=a.y||i.width!=a.width||i.height!=a.height)){if((i=i.clone()).relative){var o=i.offset;null!=o&&(o.x+=a.x-i.x,o.y+=a.y-i.y)}else i.x=a.x,i.y=a.y;i.width=a.width,i.height=a.height,!i.relative&&this.model.isVertex(e[n])&&!this.isAllowNegativeCoordinates()&&(i.x=Math.max(0,i.x),i.y=Math.max(0,i.y)),this.model.setGeometry(e[n],i),this.isExtendParent(e[n])&&this.extendParent(e[n])}}this.resetEdgesOnResize&&this.resetEdges(e),this.fireEvent(new mxEventObject(mxEvent.CELLS_RESIZED,"cells",e,"bounds",t))}finally{this.model.endUpdate()}}},mxGraph.prototype.extendParent=function(e){if(null!=e){var t=this.model.getParent(e),n=this.model.getGeometry(t);null!=t&&null!=n&&!this.isCellCollapsed(t)&&null!=(e=this.model.getGeometry(e))&&(n.width<e.x+e.width||n.height<e.y+e.height)&&(n=n.clone(),n.width=Math.max(n.width,e.x+e.width),n.height=Math.max(n.height,e.y+e.height),this.cellsResized([t],[n]))}},mxGraph.prototype.importCells=function(e,t,n,a,i){return this.moveCells(e,t,n,!0,a,i)},mxGraph.prototype.moveCells=function(e,t,n,a,i,o){if(t=null!=t?t:0,n=null!=n?n:0,a=null!=a&&a,null!=e&&(0!=t||0!=n||a||null!=i)){this.model.beginUpdate();try{a&&(e=this.cloneCells(e,this.isCloneInvalidEdges()),null==i&&(i=this.getDefaultParent()));var s=this.isAllowNegativeCoordinates();if(null!=i&&this.setAllowNegativeCoordinates(!0),this.cellsMoved(e,t,n,!a&&this.isDisconnectOnMove()&&this.isAllowDanglingEdges(),null==i),this.setAllowNegativeCoordinates(s),null!=i){var r=this.model.getChildCount(i);this.cellsAdded(e,i,r,null,null,!0)}this.fireEvent(new mxEventObject(mxEvent.MOVE_CELLS,"cells",e,"dx",t,"dy",n,"clone",a,"target",i,"event",o))}finally{this.model.endUpdate()}}return e},mxGraph.prototype.cellsMoved=function(e,t,n,a,i){if(null!=e&&(0!=t||0!=n)){this.model.beginUpdate();try{a&&this.disconnectGraph(e);for(var o=0;o<e.length;o++)this.translateCell(e[o],t,n),i&&this.constrainChild(e[o]);this.resetEdgesOnMove&&this.resetEdges(e),this.fireEvent(new mxEventObject(mxEvent.CELLS_MOVED,"cells",e,"dx",n,"dy",n,"disconnect",a))}finally{this.model.endUpdate()}}},mxGraph.prototype.translateCell=function(e,t,n){var a=this.model.getGeometry(e);null!=a&&((a=a.clone()).translate(t,n),!a.relative&&this.model.isVertex(e)&&!this.isAllowNegativeCoordinates()&&(a.x=Math.max(0,a.x),a.y=Math.max(0,a.y)),a.relative&&!this.model.isEdge(e)&&(null==a.offset?a.offset=new mxPoint(t,n):(a.offset.x+=t,a.offset.y+=n)),this.model.setGeometry(e,a))},mxGraph.prototype.getCellContainmentArea=function(e){if(null!=e&&!this.model.isEdge(e)){var t=this.model.getParent(e);if(t==this.getDefaultParent()||t==this.getCurrentRoot())return this.getMaximumGraphBounds();if(null!=t&&t!=this.getDefaultParent()&&null!=(i=this.model.getGeometry(t))){var n=e=0,a=i.width,i=i.height;return this.isSwimlane(t)&&(t=this.getStartSize(t),e=t.width,a-=t.width,n=t.height,i-=t.height),new mxRectangle(e,n,a,i)}}return null},mxGraph.prototype.getMaximumGraphBounds=function(){return this.maximumGraphBounds},mxGraph.prototype.constrainChild=function(e){if(null!=e){var t=this.model.getGeometry(e),n=this.isConstrainChild(e)?this.getCellContainmentArea(e):this.getMaximumGraphBounds();null!=t&&null!=n&&!t.relative&&(t.x<n.x||t.y<n.y||n.width<t.x+t.width||n.height<t.y+t.height)&&(e=this.getOverlap(e),0<n.width&&(t.x=Math.min(t.x,n.x+n.width-(1-e)*t.width)),0<n.height&&(t.y=Math.min(t.y,n.y+n.height-(1-e)*t.height)),t.x=Math.max(t.x,n.x-t.width*e),t.y=Math.max(t.y,n.y-t.height*e))}},mxGraph.prototype.resetEdges=function(e){if(null!=e){for(var t={},n=0;n<e.length;n++){var a=mxCellPath.create(e[n]);t[a]=e[n]}this.model.beginUpdate();try{for(n=0;n<e.length;n++){var i=this.model.getEdges(e[n]);if(null!=i)for(a=0;a<i.length;a++){var o=this.view.getState(i[a]),s=null!=o?o.getVisibleTerminal(!0):this.view.getVisibleTerminal(i[a],!0),r=null!=o?o.getVisibleTerminal(!1):this.view.getVisibleTerminal(i[a],!1),l=mxCellPath.create(s),d=mxCellPath.create(r);(null==t[l]||null==t[d])&&this.resetEdge(i[a])}this.resetEdges(this.model.getChildren(e[n]))}}finally{this.model.endUpdate()}}},mxGraph.prototype.resetEdge=function(e){var t=this.model.getGeometry(e);return null!=t&&null!=t.points&&0<t.points.length&&(t=t.clone(),t.points=[],this.model.setGeometry(e,t)),e},mxGraph.prototype.getAllConnectionConstraints=function(e,t){return null!=e&&null!=e.shape&&null!=e.shape.stencil?e.shape.stencil.constraints:null},mxGraph.prototype.getConnectionConstraint=function(e,t,n){t=null;var a=e.style[n?mxConstants.STYLE_EXIT_X:mxConstants.STYLE_ENTRY_X];if(null!=a){var i=e.style[n?mxConstants.STYLE_EXIT_Y:mxConstants.STYLE_ENTRY_Y];null!=i&&(t=new mxPoint(parseFloat(a),parseFloat(i)))}return a=!1,null!=t&&(a=mxUtils.getValue(e.style,n?mxConstants.STYLE_EXIT_PERIMETER:mxConstants.STYLE_ENTRY_PERIMETER,!0)),new mxConnectionConstraint(t,a)},mxGraph.prototype.setConnectionConstraint=function(e,t,n,a){if(null!=a){this.model.beginUpdate();try{null==a||null==a.point?(this.setCellStyles(n?mxConstants.STYLE_EXIT_X:mxConstants.STYLE_ENTRY_X,null,[e]),this.setCellStyles(n?mxConstants.STYLE_EXIT_Y:mxConstants.STYLE_ENTRY_Y,null,[e]),this.setCellStyles(n?mxConstants.STYLE_EXIT_PERIMETER:mxConstants.STYLE_ENTRY_PERIMETER,null,[e])):null!=a.point&&(this.setCellStyles(n?mxConstants.STYLE_EXIT_X:mxConstants.STYLE_ENTRY_X,a.point.x,[e]),this.setCellStyles(n?mxConstants.STYLE_EXIT_Y:mxConstants.STYLE_ENTRY_Y,a.point.y,[e]),a.perimeter?this.setCellStyles(n?mxConstants.STYLE_EXIT_PERIMETER:mxConstants.STYLE_ENTRY_PERIMETER,null,[e]):this.setCellStyles(n?mxConstants.STYLE_EXIT_PERIMETER:mxConstants.STYLE_ENTRY_PERIMETER,"0",[e]))}finally{this.model.endUpdate()}}},mxGraph.prototype.getConnectionPoint=function(e,t){var n=null;if(null!=e){var a=this.view.getPerimeterBounds(e),i=new mxPoint(a.getCenterX(),a.getCenterY()),o=e.style[mxConstants.STYLE_DIRECTION],s=0;if(null!=o&&("north"==o?s+=270:"west"==o?s+=180:"south"==o&&(s+=90),"north"==o||"south"==o)){a.x+=a.width/2-a.height/2,a.y+=a.height/2-a.width/2;var r=a.width;a.width=a.height,a.height=r}if(null!=t.point){var l=n=1,d=0,c=0;if(this.getModel().isVertex(e.cell)){var m=e.style[mxConstants.STYLE_FLIPH],u=e.style[mxConstants.STYLE_FLIPV];null!=e.shape.stencil&&(m=1==mxUtils.getValue(e.style,"stencilFlipH",0)||m,u=1==mxUtils.getValue(e.style,"stencilFlipV",0)||u),"north"!=o&&"south"!=o||(r=m,m=u,u=r),m&&(n=-1,d=-a.width),u&&(l=-1,c=-a.height)}n=new mxPoint(a.x+t.point.x*a.width*n-d,a.y+t.point.y*a.height*l-c)}o=e.style[mxConstants.STYLE_ROTATION]||0,t.perimeter?(0!=s&&null!=n&&(r=a=0,90==s?r=1:180==s?a=-1:270==o&&(r=-1),n=mxUtils.getRotatedPoint(n,a,r,i)),null!=n&&t.perimeter&&(n=this.view.getPerimeterPoint(e,n,!1))):o+=s,0!=o&&null!=n&&(s=mxUtils.toRadians(o),a=Math.cos(s),r=Math.sin(s),n=mxUtils.getRotatedPoint(n,a,r,i))}return n},mxGraph.prototype.connectCell=function(e,t,n,a){this.model.beginUpdate();try{var i=this.model.getTerminal(e,n);this.cellConnected(e,t,n,a),this.fireEvent(new mxEventObject(mxEvent.CONNECT_CELL,"edge",e,"terminal",t,"source",n,"previous",i))}finally{this.model.endUpdate()}return e},mxGraph.prototype.cellConnected=function(e,t,n,a){if(null!=e){this.model.beginUpdate();try{var i=this.model.getTerminal(e,n);this.setConnectionConstraint(e,t,n,a),this.isPortsEnabled()&&(a=null,this.isPort(t)&&(a=t.getId(),t=this.getTerminalForPort(t,n)),this.setCellStyles(n?mxConstants.STYLE_SOURCE_PORT:mxConstants.STYLE_TARGET_PORT,a,[e])),this.model.setTerminal(e,t,n),this.resetEdgesOnConnect&&this.resetEdge(e),this.fireEvent(new mxEventObject(mxEvent.CELL_CONNECTED,"edge",e,"terminal",t,"source",n,"previous",i))}finally{this.model.endUpdate()}}},mxGraph.prototype.disconnectGraph=function(e){if(null!=e){this.model.beginUpdate();try{for(var t=this.view.scale,n=this.view.translate,a={},i=0;i<e.length;i++)a[mxCellPath.create(e[i])]=e[i];for(i=0;i<e.length;i++)if(this.model.isEdge(e[i])&&null!=(r=this.model.getGeometry(e[i]))){var o=this.view.getState(e[i]),s=this.view.getState(this.model.getParent(e[i]));if(null!=o&&null!=s){var r=r.clone(),l=-s.origin.x,d=-s.origin.y,c=o.absolutePoints,m=this.model.getTerminal(e[i],!0);if(null!=m&&this.isCellDisconnectable(e[i],m,!0)){for(var u=mxCellPath.create(m);null!=m&&null==a[u];)m=this.model.getParent(m),u=mxCellPath.create(m);null==m&&(r.setTerminalPoint(new mxPoint(c[0].x/t-n.x+l,c[0].y/t-n.y+d),!0),this.model.setTerminal(e[i],null,!0))}var p=this.model.getTerminal(e[i],!1);if(null!=p&&this.isCellDisconnectable(e[i],p,!1)){for(var g=mxCellPath.create(p);null!=p&&null==a[g];)p=this.model.getParent(p),g=mxCellPath.create(p);if(null==p){var h=c.length-1;r.setTerminalPoint(new mxPoint(c[h].x/t-n.x+l,c[h].y/t-n.y+d),!1),this.model.setTerminal(e[i],null,!1)}}this.model.setGeometry(e[i],r)}}}finally{this.model.endUpdate()}}},mxGraph.prototype.getCurrentRoot=function(){return this.view.currentRoot},mxGraph.prototype.getTranslateForRoot=function(e){return null},mxGraph.prototype.isPort=function(e){return!1},mxGraph.prototype.getTerminalForPort=function(e,t){return this.model.getParent(e)},mxGraph.prototype.getChildOffsetForCell=function(e){return null},mxGraph.prototype.enterGroup=function(e){null!=(e=e||this.getSelectionCell())&&this.isValidRoot(e)&&(this.view.setCurrentRoot(e),this.clearSelection())},mxGraph.prototype.exitGroup=function(){var e=this.model.getRoot(),t=this.getCurrentRoot();if(null!=t){for(var n=this.model.getParent(t);n!=e&&!this.isValidRoot(n)&&this.model.getParent(n)!=e;)n=this.model.getParent(n);n==e||this.model.getParent(n)==e?this.view.setCurrentRoot(null):this.view.setCurrentRoot(n),null!=this.view.getState(t)&&this.setSelectionCell(t)}},mxGraph.prototype.home=function(){var e=this.getCurrentRoot();null!=e&&(this.view.setCurrentRoot(null),null!=this.view.getState(e)&&this.setSelectionCell(e))},mxGraph.prototype.isValidRoot=function(e){return null!=e},mxGraph.prototype.getGraphBounds=function(){return this.view.getGraphBounds()},mxGraph.prototype.getCellBounds=function(e,t,n){var a=[e];if(t&&(a=a.concat(this.model.getEdges(e))),a=this.view.getBounds(a),n){n=this.model.getChildCount(e);for(var i=0;i<n;i++){var o=this.getCellBounds(this.model.getChildAt(e,i),t,!0);null!=a?a.add(o):a=o}}return a},mxGraph.prototype.getBoundingBoxFromGeometry=function(e,t){t=null!=t&&t;var n=null;if(null!=e)for(var a=0;a<e.length;a++)if(t||this.model.isVertex(e[a])){var i=this.getCellGeometry(e[a]);if(null!=i){var o=i.points;if(null!=o&&0<o.length){for(var s=new mxRectangle(o[0].x,o[0].y,0,0),r=function(e){null!=e&&s.add(new mxRectangle(e.x,e.y,0,0))},l=1;l<o.length;l++)r(o[l]);r(i.getTerminalPoint(!0)),r(i.getTerminalPoint(!1))}null==n?n=new mxRectangle(i.x,i.y,i.width,i.height):n.add(i)}}return n},mxGraph.prototype.refresh=function(e){this.view.clear(e,null==e),this.view.validate(),this.sizeDidChange(),this.fireEvent(new mxEventObject(mxEvent.REFRESH))},mxGraph.prototype.snap=function(e){return this.gridEnabled&&(e=Math.round(e/this.gridSize)*this.gridSize),e},mxGraph.prototype.panGraph=function(e,t){if(this.useScrollbarsForPanning&&mxUtils.hasScrollbars(this.container))this.container.scrollLeft=-e,this.container.scrollTop=-t;else{var n=this.view.getCanvas();if(this.dialect==mxConstants.DIALECT_SVG)if(0==e&&0==t){if(mxClient.IS_IE?n.setAttribute("transform","translate("+e+","+t+")"):n.removeAttribute("transform"),null!=this.shiftPreview1){for(o=this.shiftPreview1.firstChild;null!=o;){var a=o.nextSibling;this.container.appendChild(o),o=a}for(this.shiftPreview1.parentNode.removeChild(this.shiftPreview1),this.shiftPreview1=null,this.container.appendChild(n.parentNode),o=this.shiftPreview2.firstChild;null!=o;)a=o.nextSibling,this.container.appendChild(o),o=a;this.shiftPreview2.parentNode.removeChild(this.shiftPreview2),this.shiftPreview2=null}}else{if(n.setAttribute("transform","translate("+e+","+t+")"),null==this.shiftPreview1){this.shiftPreview1=document.createElement("div"),this.shiftPreview1.style.position="absolute",this.shiftPreview1.style.overflow="visible",this.shiftPreview2=document.createElement("div"),this.shiftPreview2.style.position="absolute",this.shiftPreview2.style.overflow="visible";for(var i=this.shiftPreview1,o=this.container.firstChild;null!=o;)a=o.nextSibling,o!=n.parentNode?i.appendChild(o):i=this.shiftPreview2,o=a;this.container.insertBefore(this.shiftPreview1,n.parentNode),this.container.appendChild(this.shiftPreview2)}this.shiftPreview1.style.left=e+"px",this.shiftPreview1.style.top=t+"px",this.shiftPreview2.style.left=e+"px",this.shiftPreview2.style.top=t+"px"}else n.style.left=e+"px",n.style.top=t+"px";this.panDx=e,this.panDy=t,this.fireEvent(new mxEventObject(mxEvent.PAN))}},mxGraph.prototype.zoomIn=function(){this.zoom(this.zoomFactor)},mxGraph.prototype.zoomOut=function(){this.zoom(1/this.zoomFactor)},mxGraph.prototype.zoomActual=function(){1==this.view.scale?this.view.setTranslate(0,0):(this.view.translate.x=0,this.view.translate.y=0,this.view.setScale(1))},mxGraph.prototype.zoomTo=function(e,t){this.zoom(e/this.view.scale,t)},mxGraph.prototype.zoom=function(e,t){t=null!=t?t:this.centerZoom;var n=this.view.scale*e,a=this.view.getState(this.getSelectionCell());if(this.keepSelectionVisibleOnZoom&&null!=a)a=new mxRectangle(a.x*e,a.y*e,a.width*e,a.height*e),this.view.scale=n,this.scrollRectToVisible(a)||(this.view.revalidate(),this.view.setScale(n));else if(t&&!mxUtils.hasScrollbars(this.container)){var a=this.container.offsetWidth,i=this.container.offsetHeight;if(1<e)var o=(e-1)/(2*n),a=a*-o,i=i*-o;else o=(1/e-1)/(2*this.view.scale),a*=o,i*=o;this.view.scaleAndTranslate(n,this.view.translate.x+a,this.view.translate.y+i)}else this.view.setScale(n),mxUtils.hasScrollbars(this.container)&&(i=a=0,t&&(a=this.container.offsetWidth*(e-1)/2,i=this.container.offsetHeight*(e-1)/2),this.container.scrollLeft=Math.round(this.container.scrollLeft*e+a),this.container.scrollTop=Math.round(this.container.scrollTop*e+i))},mxGraph.prototype.zoomToRect=function(e){var t=this.container.clientWidth/e.width/(this.container.clientHeight/e.height);e.x=Math.max(0,e.x),e.y=Math.max(0,e.y);var n=Math.min(this.container.scrollWidth,e.x+e.width),a=Math.min(this.container.scrollHeight,e.y+e.height);e.width=n-e.x,e.height=a-e.y,1>t?(t=e.height/t,n=(t-e.height)/2,e.height=t,t=Math.min(e.y,n),e.y-=t,a=Math.min(this.container.scrollHeight,e.y+e.height),e.height=a-e.y):(t*=e.width,n=(t-e.width)/2,e.width=t,t=Math.min(e.x,n),e.x-=t,n=Math.min(this.container.scrollWidth,e.x+e.width),e.width=n-e.x),t=this.container.clientWidth/e.width,n=this.view.scale*t,mxUtils.hasScrollbars(this.container)?(this.view.setScale(n),this.container.scrollLeft=Math.round(e.x*t),this.container.scrollTop=Math.round(e.y*t)):this.view.scaleAndTranslate(n,this.view.translate.x-e.x/this.view.scale,this.view.translate.y-e.y/this.view.scale)},mxGraph.prototype.fit=function(e,t){if(null!=this.container){e=null!=e?e:0,t=null!=t&&t;var n=this.container.clientWidth,a=this.container.clientHeight,i=this.view.getGraphBounds();t&&null!=i.x&&null!=i.y&&(i.width+=i.x,i.height+=i.y,i.x=0,i.y=0);var o=this.view.scale,s=i.width/o,r=i.height/o;null!=this.backgroundImage&&(s=Math.max(s,this.backgroundImage.width-i.x/o),r=Math.max(r,this.backgroundImage.height-i.y/o));var l=t?e:2*e,n=Math.floor(100*Math.min(n/(s+l),a/(r+l)))/100;null!=this.minFitScale&&(n=Math.max(n,this.minFitScale)),null!=this.maxFitScale&&(n=Math.min(n,this.maxFitScale)),t?this.view.scale!=n&&this.view.setScale(n):mxUtils.hasScrollbars(this.container)?(this.view.setScale(n),null!=i.x&&(this.container.scrollLeft=Math.round(i.x/o)*n-e-Math.max(0,(this.container.clientWidth-s*n)/2)),null!=i.y&&(this.container.scrollTop=Math.round(i.y/o)*n-e-Math.max(0,(this.container.clientHeight-r*n)/2))):this.view.scaleAndTranslate(n,null!=i.x?Math.floor(this.view.translate.x-i.x/o+e+1):e,null!=i.y?Math.floor(this.view.translate.y-i.y/o+e+1):e)}return this.view.scale},mxGraph.prototype.scrollCellToVisible=function(e,t){var n=-this.view.translate.x,a=-this.view.translate.y,i=this.view.getState(e);null!=i&&(n=new mxRectangle(n+i.x,a+i.y,i.width,i.height),t&&null!=this.container&&(a=this.container.clientWidth,i=this.container.clientHeight,n.x=n.getCenterX()-a/2,n.width=a,n.y=n.getCenterY()-i/2,n.height=i),this.scrollRectToVisible(n)&&this.view.setTranslate(this.view.translate.x,this.view.translate.y))},mxGraph.prototype.scrollRectToVisible=function(e){var t=!1;if(null!=e){var n=this.container.offsetWidth,a=this.container.offsetHeight,i=Math.min(n,e.width),o=Math.min(a,e.height);if(mxUtils.hasScrollbars(this.container)){n=this.container,e.x+=this.view.translate.x,e.y+=this.view.translate.y;var s=n.scrollLeft-e.x,a=Math.max(s-n.scrollLeft,0);0<s?n.scrollLeft-=s+2:0<(s=e.x+i-n.scrollLeft-n.clientWidth)&&(n.scrollLeft+=s+2),i=n.scrollTop-e.y,s=Math.max(0,i-n.scrollTop),0<i?n.scrollTop-=i+2:0<(i=e.y+o-n.scrollTop-n.clientHeight)&&(n.scrollTop+=i+2),!this.useScrollbarsForPanning&&(0!=a||0!=s)&&this.view.setTranslate(a,s)}else{var s=-this.view.translate.x,r=-this.view.translate.y,l=this.view.scale;e.x+i>s+n&&(this.view.translate.x-=(e.x+i-n-s)/l,t=!0),e.y+o>r+a&&(this.view.translate.y-=(e.y+o-a-r)/l,t=!0),e.x<s&&(this.view.translate.x+=(s-e.x)/l,t=!0),e.y<r&&(this.view.translate.y+=(r-e.y)/l,t=!0),t&&(this.view.refresh(),null!=this.selectionCellsHandler&&this.selectionCellsHandler.refresh())}}return t},mxGraph.prototype.getCellGeometry=function(e){return this.model.getGeometry(e)},mxGraph.prototype.isCellVisible=function(e){return this.model.isVisible(e)},mxGraph.prototype.isCellCollapsed=function(e){return this.model.isCollapsed(e)},mxGraph.prototype.isCellConnectable=function(e){return this.model.isConnectable(e)},mxGraph.prototype.isOrthogonal=function(e){var t=e.style[mxConstants.STYLE_ORTHOGONAL];return null!=t?t:(e=this.view.getEdgeStyle(e))==mxEdgeStyle.SegmentConnector||e==mxEdgeStyle.ElbowConnector||e==mxEdgeStyle.SideToSide||e==mxEdgeStyle.TopToBottom||e==mxEdgeStyle.EntityRelation||e==mxEdgeStyle.OrthConnector},mxGraph.prototype.isLoop=function(e){var t=e.getVisibleTerminalState(!0);return e=e.getVisibleTerminalState(!1),null!=t&&t==e},mxGraph.prototype.isCloneEvent=function(e){return mxEvent.isControlDown(e)},mxGraph.prototype.isToggleEvent=function(e){return mxClient.IS_MAC?mxEvent.isMetaDown(e):mxEvent.isControlDown(e)},mxGraph.prototype.isGridEnabledEvent=function(e){return null!=e&&!mxEvent.isAltDown(e)},mxGraph.prototype.isConstrainedEvent=function(e){return mxEvent.isShiftDown(e)},mxGraph.prototype.isForceMarqueeEvent=function(e){return mxEvent.isAltDown(e)},mxGraph.prototype.validationAlert=function(e){mxUtils.alert(e)},mxGraph.prototype.isEdgeValid=function(e,t,n){return null==this.getEdgeValidationError(e,t,n)},mxGraph.prototype.getEdgeValidationError=function(e,t,n){if(null!=e&&!this.isAllowDanglingEdges()&&(null==t||null==n))return"";if(null!=e&&null==this.model.getTerminal(e,!0)&&null==this.model.getTerminal(e,!1))return null;if(!this.allowLoops&&t==n&&null!=t||!this.isValidConnection(t,n))return"";if(null!=t&&null!=n){var a="";this.multigraph||(1<(i=this.model.getEdgesBetween(t,n,!0)).length||1==i.length&&i[0]!=e)&&(a+=(mxResources.get(this.alreadyConnectedResource)||this.alreadyConnectedResource)+"\n");var i=this.model.getDirectedEdgeCount(t,!0,e),o=this.model.getDirectedEdgeCount(n,!1,e);if(null!=this.multiplicities)for(var s=0;s<this.multiplicities.length;s++){var r=this.multiplicities[s].check(this,e,t,n,i,o);null!=r&&(a+=r)}return null!=(r=this.validateEdge(e,t,n))&&(a+=r),0<a.length?a:null}return this.allowDanglingEdges?null:""},mxGraph.prototype.validateEdge=function(e,t,n){return null},mxGraph.prototype.validateGraph=function(e,t){e=null!=e?e:this.model.getRoot(),t=null!=t?t:{};for(var n=!0,a=this.model.getChildCount(e),i=0;i<a;i++){var o=this.model.getChildAt(e,i),s=t;this.isValidRoot(o)&&(s={}),null!=(s=this.validateGraph(o,s))?this.setCellWarning(o,s.replace(/\n/g,"<br>")):this.setCellWarning(o,null),n=n&&null==s}return a="",this.isCellCollapsed(e)&&!n&&(a+=(mxResources.get(this.containsValidationErrorsResource)||this.containsValidationErrorsResource)+"\n"),a=this.model.isEdge(e)?a+(this.getEdgeValidationError(e,this.model.getTerminal(e,!0),this.model.getTerminal(e,!1))||""):a+(this.getCellValidationError(e)||""),null!=(i=this.validateCell(e,t))&&(a+=i),null==this.model.getParent(e)&&this.view.validate(),0<a.length||!n?a:null},mxGraph.prototype.getCellValidationError=function(e){var t=this.model.getDirectedEdgeCount(e,!0),n=this.model.getDirectedEdgeCount(e,!1);e=this.model.getValue(e);var a="";if(null!=this.multiplicities)for(var i=0;i<this.multiplicities.length;i++){var o=this.multiplicities[i];o.source&&mxUtils.isNode(e,o.type,o.attr,o.value)&&(0==o.max&&0<t||1==o.min&&0==t||1==o.max&&1<t)?a+=o.countError+"\n":!o.source&&mxUtils.isNode(e,o.type,o.attr,o.value)&&(0==o.max&&0<n||1==o.min&&0==n||1==o.max&&1<n)&&(a+=o.countError+"\n")}return 0<a.length?a:null},mxGraph.prototype.validateCell=function(e,t){return null},mxGraph.prototype.getBackgroundImage=function(){return this.backgroundImage},mxGraph.prototype.setBackgroundImage=function(e){this.backgroundImage=e},mxGraph.prototype.getFoldingImage=function(e){if(null!=e&&this.foldingEnabled&&!this.getModel().isEdge(e.cell)){var t=this.isCellCollapsed(e.cell);if(this.isCellFoldable(e.cell,!t))return t?this.collapsedImage:this.expandedImage}return null},mxGraph.prototype.convertValueToString=function(e){if(null!=(e=this.model.getValue(e))){if(mxUtils.isNode(e))return e.nodeName;if("function"==typeof e.toString)return e.toString()}return""},mxGraph.prototype.getLabel=function(e){var t="";if(this.labelsVisible&&null!=e){var n=null!=(n=this.view.getState(e))?n.style:this.getCellStyle(e);mxUtils.getValue(n,mxConstants.STYLE_NOLABEL,!1)||(t=this.convertValueToString(e))}return t},mxGraph.prototype.isHtmlLabel=function(e){return this.isHtmlLabels()},mxGraph.prototype.isHtmlLabels=function(){return this.htmlLabels},mxGraph.prototype.setHtmlLabels=function(e){this.htmlLabels=e},mxGraph.prototype.isWrapping=function(e){var t=this.view.getState(e);return null!=(e=null!=t?t.style:this.getCellStyle(e))&&"wrap"==e[mxConstants.STYLE_WHITE_SPACE]},mxGraph.prototype.isLabelClipped=function(e){var t=this.view.getState(e);return null!=(e=null!=t?t.style:this.getCellStyle(e))&&"hidden"==e[mxConstants.STYLE_OVERFLOW]},mxGraph.prototype.getTooltip=function(e,t,n,a){var i=null;return null!=e&&(null==e.control||t!=e.control.node&&t.parentNode!=e.control.node||(i=this.collapseExpandResource,i=mxResources.get(i)||i),null==i&&null!=e.overlays&&e.overlays.visit(function(e,n){null!=i||t!=n.node&&t.parentNode!=n.node||(i=n.overlay.toString())}),null==i&&null!=(n=this.selectionCellsHandler.getHandler(e.cell))&&"function"==typeof n.getTooltipForNode&&(i=n.getTooltipForNode(t)),null==i&&(i=this.getTooltipForCell(e.cell))),i},mxGraph.prototype.getTooltipForCell=function(e){return null!=e&&null!=e.getTooltip?e.getTooltip():this.convertValueToString(e)},mxGraph.prototype.getCursorForCell=function(e){return null},mxGraph.prototype.getStartSize=function(e){var t=new mxRectangle,n=this.view.getState(e);return null!=(e=null!=n?n.style:this.getCellStyle(e))&&(n=parseInt(mxUtils.getValue(e,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),mxUtils.getValue(e,mxConstants.STYLE_HORIZONTAL,!0)?t.height=n:t.width=n),t},mxGraph.prototype.getImage=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_IMAGE]:null},mxGraph.prototype.getVerticalAlign=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_VERTICAL_ALIGN]||mxConstants.ALIGN_MIDDLE:null},mxGraph.prototype.getIndicatorColor=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_INDICATOR_COLOR]:null},mxGraph.prototype.getIndicatorGradientColor=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_INDICATOR_GRADIENTCOLOR]:null},mxGraph.prototype.getIndicatorShape=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_INDICATOR_SHAPE]:null},mxGraph.prototype.getIndicatorImage=function(e){return null!=e&&null!=e.style?e.style[mxConstants.STYLE_INDICATOR_IMAGE]:null},mxGraph.prototype.getBorder=function(){return this.border},mxGraph.prototype.setBorder=function(e){this.border=e},mxGraph.prototype.isSwimlane=function(e){if(null!=e&&this.model.getParent(e)!=this.model.getRoot()){var t=this.view.getState(e);if(null!=(t=null!=t?t.style:this.getCellStyle(e))&&!this.model.isEdge(e))return t[mxConstants.STYLE_SHAPE]==mxConstants.SHAPE_SWIMLANE}return!1},mxGraph.prototype.isResizeContainer=function(){return this.resizeContainer},mxGraph.prototype.setResizeContainer=function(e){this.resizeContainer=e},mxGraph.prototype.isEnabled=function(){return this.enabled},mxGraph.prototype.setEnabled=function(e){this.enabled=e},mxGraph.prototype.isEscapeEnabled=function(){return this.escapeEnabled},mxGraph.prototype.setEscapeEnabled=function(e){this.escapeEnabled=e},mxGraph.prototype.isInvokesStopCellEditing=function(){return this.invokesStopCellEditing},mxGraph.prototype.setInvokesStopCellEditing=function(e){this.invokesStopCellEditing=e},mxGraph.prototype.isEnterStopsCellEditing=function(){return this.enterStopsCellEditing},mxGraph.prototype.setEnterStopsCellEditing=function(e){this.enterStopsCellEditing=e},mxGraph.prototype.isCellLocked=function(e){var t=this.model.getGeometry(e);return this.isCellsLocked()||null!=t&&this.model.isVertex(e)&&t.relative},mxGraph.prototype.isCellsLocked=function(){return this.cellsLocked},mxGraph.prototype.setCellsLocked=function(e){this.cellsLocked=e},mxGraph.prototype.getCloneableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.isCellCloneable(e)}))},mxGraph.prototype.isCellCloneable=function(e){var t=this.view.getState(e);return e=null!=t?t.style:this.getCellStyle(e),this.isCellsCloneable()&&0!=e[mxConstants.STYLE_CLONEABLE]},mxGraph.prototype.isCellsCloneable=function(){return this.cellsCloneable},mxGraph.prototype.setCellsCloneable=function(e){this.cellsCloneable=e},mxGraph.prototype.getExportableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.canExportCell(e)}))},mxGraph.prototype.canExportCell=function(e){return this.exportEnabled},mxGraph.prototype.getImportableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.canImportCell(e)}))},mxGraph.prototype.canImportCell=function(e){return this.importEnabled},mxGraph.prototype.isCellSelectable=function(e){return this.isCellsSelectable()},mxGraph.prototype.isCellsSelectable=function(){return this.cellsSelectable},mxGraph.prototype.setCellsSelectable=function(e){this.cellsSelectable=e},mxGraph.prototype.getDeletableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.isCellDeletable(e)}))},mxGraph.prototype.isCellDeletable=function(e){var t=this.view.getState(e);return e=null!=t?t.style:this.getCellStyle(e),this.isCellsDeletable()&&0!=e[mxConstants.STYLE_DELETABLE]},mxGraph.prototype.isCellsDeletable=function(){return this.cellsDeletable},mxGraph.prototype.setCellsDeletable=function(e){this.cellsDeletable=e},mxGraph.prototype.isLabelMovable=function(e){return!this.isCellLocked(e)&&(this.model.isEdge(e)&&this.edgeLabelsMovable||this.model.isVertex(e)&&this.vertexLabelsMovable)},mxGraph.prototype.getMovableCells=function(e){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.isCellMovable(e)}))},mxGraph.prototype.isCellMovable=function(e){var t=null!=(t=this.view.getState(e))?t.style:this.getCellStyle(e);return this.isCellsMovable()&&!this.isCellLocked(e)&&0!=t[mxConstants.STYLE_MOVABLE]},mxGraph.prototype.isCellsMovable=function(){return this.cellsMovable},mxGraph.prototype.setCellsMovable=function(e){this.cellsMovable=e},mxGraph.prototype.isGridEnabled=function(){return this.gridEnabled},mxGraph.prototype.setGridEnabled=function(e){this.gridEnabled=e},mxGraph.prototype.isPortsEnabled=function(){return this.portsEnabled},mxGraph.prototype.setPortsEnabled=function(e){this.portsEnabled=e},mxGraph.prototype.getGridSize=function(){return this.gridSize},mxGraph.prototype.setGridSize=function(e){this.gridSize=e},mxGraph.prototype.getTolerance=function(){return this.tolerance},mxGraph.prototype.setTolerance=function(e){this.tolerance=e},mxGraph.prototype.isVertexLabelsMovable=function(){return this.vertexLabelsMovable},mxGraph.prototype.setVertexLabelsMovable=function(e){this.vertexLabelsMovable=e},mxGraph.prototype.isEdgeLabelsMovable=function(){return this.edgeLabelsMovable},mxGraph.prototype.setEdgeLabelsMovable=function(e){this.edgeLabelsMovable=e},mxGraph.prototype.isSwimlaneNesting=function(){return this.swimlaneNesting},mxGraph.prototype.setSwimlaneNesting=function(e){this.swimlaneNesting=e},mxGraph.prototype.isSwimlaneSelectionEnabled=function(){return this.swimlaneSelectionEnabled},mxGraph.prototype.setSwimlaneSelectionEnabled=function(e){this.swimlaneSelectionEnabled=e},mxGraph.prototype.isMultigraph=function(){return this.multigraph},mxGraph.prototype.setMultigraph=function(e){this.multigraph=e},mxGraph.prototype.isAllowLoops=function(){return this.allowLoops},mxGraph.prototype.setAllowDanglingEdges=function(e){this.allowDanglingEdges=e},mxGraph.prototype.isAllowDanglingEdges=function(){return this.allowDanglingEdges},mxGraph.prototype.setConnectableEdges=function(e){this.connectableEdges=e},mxGraph.prototype.isConnectableEdges=function(){return this.connectableEdges},mxGraph.prototype.setCloneInvalidEdges=function(e){this.cloneInvalidEdges=e},mxGraph.prototype.isCloneInvalidEdges=function(){return this.cloneInvalidEdges},mxGraph.prototype.setAllowLoops=function(e){this.allowLoops=e},mxGraph.prototype.isDisconnectOnMove=function(){return this.disconnectOnMove},mxGraph.prototype.setDisconnectOnMove=function(e){this.disconnectOnMove=e},mxGraph.prototype.isDropEnabled=function(){return this.dropEnabled},mxGraph.prototype.setDropEnabled=function(e){this.dropEnabled=e},mxGraph.prototype.isSplitEnabled=function(){return this.splitEnabled},mxGraph.prototype.setSplitEnabled=function(e){this.splitEnabled=e},mxGraph.prototype.isCellResizable=function(e){var t=null!=(t=this.view.getState(e))?t.style:this.getCellStyle(e);return this.isCellsResizable()&&!this.isCellLocked(e)&&0!=t[mxConstants.STYLE_RESIZABLE]},mxGraph.prototype.isCellsResizable=function(){return this.cellsResizable},mxGraph.prototype.setCellsResizable=function(e){this.cellsResizable=e},mxGraph.prototype.isTerminalPointMovable=function(e,t){return!0},mxGraph.prototype.isCellBendable=function(e){var t=null!=(t=this.view.getState(e))?t.style:this.getCellStyle(e);return this.isCellsBendable()&&!this.isCellLocked(e)&&0!=t[mxConstants.STYLE_BENDABLE]},mxGraph.prototype.isCellsBendable=function(){return this.cellsBendable},mxGraph.prototype.setCellsBendable=function(e){this.cellsBendable=e},mxGraph.prototype.isCellEditable=function(e){var t=null!=(t=this.view.getState(e))?t.style:this.getCellStyle(e);return this.isCellsEditable()&&!this.isCellLocked(e)&&0!=t[mxConstants.STYLE_EDITABLE]},mxGraph.prototype.isCellsEditable=function(){return this.cellsEditable},mxGraph.prototype.setCellsEditable=function(e){this.cellsEditable=e},mxGraph.prototype.isCellDisconnectable=function(e,t,n){return this.isCellsDisconnectable()&&!this.isCellLocked(e)},mxGraph.prototype.isCellsDisconnectable=function(){return this.cellsDisconnectable},mxGraph.prototype.setCellsDisconnectable=function(e){this.cellsDisconnectable=e},mxGraph.prototype.isValidSource=function(e){return null==e&&this.allowDanglingEdges||null!=e&&(!this.model.isEdge(e)||this.connectableEdges)&&this.isCellConnectable(e)},mxGraph.prototype.isValidTarget=function(e){return this.isValidSource(e)},mxGraph.prototype.isValidConnection=function(e,t){return this.isValidSource(e)&&this.isValidTarget(t)},mxGraph.prototype.setConnectable=function(e){this.connectionHandler.setEnabled(e)},mxGraph.prototype.isConnectable=function(e){return this.connectionHandler.isEnabled()},mxGraph.prototype.setTooltips=function(e){this.tooltipHandler.setEnabled(e)},mxGraph.prototype.setPanning=function(e){this.panningHandler.panningEnabled=e},mxGraph.prototype.isEditing=function(e){if(null!=this.cellEditor){var t=this.cellEditor.getEditingCell();return null==e?null!=t:e==t}return!1},mxGraph.prototype.isAutoSizeCell=function(e){var t=this.view.getState(e);return e=null!=t?t.style:this.getCellStyle(e),this.isAutoSizeCells()||1==e[mxConstants.STYLE_AUTOSIZE]},mxGraph.prototype.isAutoSizeCells=function(){return this.autoSizeCells},mxGraph.prototype.setAutoSizeCells=function(e){this.autoSizeCells=e},mxGraph.prototype.isExtendParent=function(e){return!this.getModel().isEdge(e)&&this.isExtendParents()},mxGraph.prototype.isExtendParents=function(){return this.extendParents},mxGraph.prototype.setExtendParents=function(e){this.extendParents=e},mxGraph.prototype.isExtendParentsOnAdd=function(){return this.extendParentsOnAdd},mxGraph.prototype.setExtendParentsOnAdd=function(e){this.extendParentsOnAdd=e},mxGraph.prototype.isConstrainChild=function(e){return this.isConstrainChildren()&&!this.getModel().isEdge(this.getModel().getParent(e))},mxGraph.prototype.isConstrainChildren=function(){return this.constrainChildren},mxGraph.prototype.setConstrainChildren=function(e){this.constrainChildren=e},mxGraph.prototype.isAllowNegativeCoordinates=function(){return this.allowNegativeCoordinates},mxGraph.prototype.setAllowNegativeCoordinates=function(e){this.allowNegativeCoordinates=e},mxGraph.prototype.getOverlap=function(e){return this.isAllowOverlapParent(e)?this.defaultOverlap:0},mxGraph.prototype.isAllowOverlapParent=function(e){return!1},mxGraph.prototype.getFoldableCells=function(e,t){return this.model.filterCells(e,mxUtils.bind(this,function(e){return this.isCellFoldable(e,t)}))},mxGraph.prototype.isCellFoldable=function(e,t){var n=null!=(n=this.view.getState(e))?n.style:this.getCellStyle(e);return 0<this.model.getChildCount(e)&&0!=n[mxConstants.STYLE_FOLDABLE]},mxGraph.prototype.isValidDropTarget=function(e,t,n){return null!=e&&(this.isSplitEnabled()&&this.isSplitTarget(e,t,n)||!this.model.isEdge(e)&&(this.isSwimlane(e)||0<this.model.getChildCount(e)&&!this.isCellCollapsed(e)))},mxGraph.prototype.isSplitTarget=function(e,t,n){return!(!this.model.isEdge(e)||null==t||1!=t.length||!this.isCellConnectable(t[0])||null!=this.getEdgeValidationError(e,this.model.getTerminal(e,!0),t[0]))&&(n=this.model.getTerminal(e,!0),e=this.model.getTerminal(e,!1),!this.model.isAncestor(t[0],n)&&!this.model.isAncestor(t[0],e))},mxGraph.prototype.getDropTarget=function(e,t,n){if(!this.isSwimlaneNesting())for(var a=0;a<e.length;a++)if(this.isSwimlane(e[a]))return null;if(a=mxUtils.convertPoint(this.container,mxEvent.getClientX(t),mxEvent.getClientY(t)),a.x-=this.panDx,a.y-=this.panDy,a=this.getSwimlaneAt(a.x,a.y),null==n)n=a;else if(null!=a){for(var i=this.model.getParent(a);null!=i&&this.isSwimlane(i)&&i!=n;)i=this.model.getParent(i);i==n&&(n=a)}for(;null!=n&&!this.isValidDropTarget(n,e,t)&&!this.model.isLayer(n);)n=this.model.getParent(n);return!this.model.isLayer(n)&&0>mxUtils.indexOf(e,n)?n:null},mxGraph.prototype.getDefaultParent=function(){var e=this.defaultParent;return null==e&&null==(e=this.getCurrentRoot())&&(e=this.model.getRoot(),e=this.model.getChildAt(e,0)),e},mxGraph.prototype.setDefaultParent=function(e){this.defaultParent=e},mxGraph.prototype.getSwimlane=function(e){for(;null!=e&&!this.isSwimlane(e);)e=this.model.getParent(e);return e},mxGraph.prototype.getSwimlaneAt=function(e,t,n){if(null!=(n=n||this.getDefaultParent()))for(var a=this.model.getChildCount(n),i=0;i<a;i++){var o=this.model.getChildAt(n,i),s=this.getSwimlaneAt(e,t,o);if(null!=s)return s;if(this.isSwimlane(o)&&(s=this.view.getState(o),this.intersects(s,e,t)))return o}return null},mxGraph.prototype.getCellAt=function(e,t,n,a,i){if(a=null==a||a,i=null==i||i,null!=(n=null!=n?n:this.getDefaultParent()))for(var o=this.model.getChildCount(n)-1;0<=o;o--){var s=this.model.getChildAt(n,o),r=this.getCellAt(e,t,s,a,i);if(null!=r)return r;if(this.isCellVisible(s)&&(i&&this.model.isEdge(s)||a&&this.model.isVertex(s))&&(r=this.view.getState(s),this.intersects(r,e,t)))return s}return null},mxGraph.prototype.intersects=function(e,t,n){if(null!=e){var a=e.absolutePoints;if(null!=a){e=this.tolerance*this.tolerance;for(var i=a[0],o=1;o<a.length;o++){var s=a[o];if(mxUtils.ptSegDistSq(i.x,i.y,s.x,s.y,t,n)<=e)return!0;i=s}}else if(0!=(i=mxUtils.toRadians(mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION)||0))&&(a=Math.cos(-i),i=Math.sin(-i),o=new mxPoint(e.getCenterX(),e.getCenterY()),i=mxUtils.getRotatedPoint(new mxPoint(t,n),a,i,o),t=i.x,n=i.y),mxUtils.contains(e,t,n))return!0}return!1},mxGraph.prototype.hitsSwimlaneContent=function(e,t,n){var a=this.getView().getState(e);if(e=this.getStartSize(e),null!=a){var i=this.getView().getScale();if(t-=a.x,n-=a.y,0<e.width&&0<t&&t>e.width*i||0<e.height&&0<n&&n>e.height*i)return!0}return!1},mxGraph.prototype.getChildVertices=function(e){return this.getChildCells(e,!0,!1)},mxGraph.prototype.getChildEdges=function(e){return this.getChildCells(e,!1,!0)},mxGraph.prototype.getChildCells=function(e,t,n){for(e=null!=e?e:this.getDefaultParent(),e=this.model.getChildCells(e,null!=t&&t,null!=n&&n),t=[],n=0;n<e.length;n++)this.isCellVisible(e[n])&&t.push(e[n]);return t},mxGraph.prototype.getConnections=function(e,t){return this.getEdges(e,t,!0,!0,!1)},mxGraph.prototype.getIncomingEdges=function(e,t){return this.getEdges(e,t,!0,!1,!1)},mxGraph.prototype.getOutgoingEdges=function(e,t){return this.getEdges(e,t,!1,!0,!1)},mxGraph.prototype.getEdges=function(e,t,n,a,i,o){n=null==n||n,a=null==a||a,i=null==i||i,o=null!=o&&o;for(var s=[],r=this.isCellCollapsed(e),l=this.model.getChildCount(e),d=0;d<l;d++){var c=this.model.getChildAt(e,d);!r&&this.isCellVisible(c)||(s=s.concat(this.model.getEdges(c,n,a)))}for(s=s.concat(this.model.getEdges(e,n,a)),r=[],d=0;d<s.length;d++)c=this.view.getState(s[d]),l=null!=c?c.getVisibleTerminal(!0):this.view.getVisibleTerminal(s[d],!0),c=null!=c?c.getVisibleTerminal(!1):this.view.getVisibleTerminal(s[d],!1),(i&&l==c||l!=c&&(n&&c==e&&(null==t||this.isValidAncestor(l,t,o))||a&&l==e&&(null==t||this.isValidAncestor(c,t,o))))&&r.push(s[d]);return r},mxGraph.prototype.isValidAncestor=function(e,t,n){return n?this.model.isAncestor(t,e):this.model.getParent(e)==t},mxGraph.prototype.getOpposites=function(e,t,n,a){n=null==n||n,a=null==a||a;var i=[],o={};if(null!=e)for(var s=0;s<e.length;s++){var r=null!=(l=this.view.getState(e[s]))?l.getVisibleTerminal(!0):this.view.getVisibleTerminal(e[s],!0),l=null!=l?l.getVisibleTerminal(!1):this.view.getVisibleTerminal(e[s],!1);if(r==t&&null!=l&&l!=t&&a){var d=mxCellPath.create(l);null==o[d]&&(o[d]=l,i.push(l))}else l==t&&null!=r&&r!=t&&n&&(d=mxCellPath.create(r),null==o[d]&&(o[d]=r,i.push(r)))}return i},mxGraph.prototype.getEdgesBetween=function(e,t,n){n=null!=n&&n;for(var a=this.getEdges(e),i=[],o=0;o<a.length;o++){var s=null!=(r=this.view.getState(a[o]))?r.getVisibleTerminal(!0):this.view.getVisibleTerminal(a[o],!0),r=null!=r?r.getVisibleTerminal(!1):this.view.getVisibleTerminal(a[o],!1);(s==e&&r==t||!n&&s==t&&r==e)&&i.push(a[o])}return i},mxGraph.prototype.getPointForEvent=function(e,t){var n=mxUtils.convertPoint(this.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),a=this.view.scale,i=this.view.translate,o=0!=t?this.gridSize/2:0;return n.x=this.snap(n.x/a-i.x-o),n.y=this.snap(n.y/a-i.y-o),n},mxGraph.prototype.getCells=function(e,t,n,a,i,o){if(o=null!=o?o:[],0<n||0<a){var s=e+n,r=t+a;if(null!=(i=i||this.getDefaultParent()))for(var l=this.model.getChildCount(i),d=0;d<l;d++){var c=this.model.getChildAt(i,d),m=this.view.getState(c);if(this.isCellVisible(c)&&null!=m){var u=m;0!=(m=mxUtils.getValue(m.style,mxConstants.STYLE_ROTATION)||0)&&(u=mxUtils.getBoundingBox(u,m)),u.x>=e&&u.y+u.height<=r&&u.y>=t&&u.x+u.width<=s?o.push(c):this.getCells(e,t,n,a,c,o)}}}return o},mxGraph.prototype.getCellsBeyond=function(e,t,n,a,i){var o=[];if((a||i)&&(null==n&&(n=this.getDefaultParent()),null!=n))for(var s=this.model.getChildCount(n),r=0;r<s;r++){var l=this.model.getChildAt(n,r),d=this.view.getState(l);this.isCellVisible(l)&&null!=d&&(!a||d.x>=e)&&(!i||d.y>=t)&&o.push(l)}return o},mxGraph.prototype.findTreeRoots=function(e,t,n){t=null!=t&&t,n=null!=n&&n;var a=[];if(null!=e){for(var i=this.getModel(),o=i.getChildCount(e),s=null,r=0,l=0;l<o;l++){var d=i.getChildAt(e,l);if(this.model.isVertex(d)&&this.isCellVisible(d)){for(var c=this.getConnections(d,t?e:null),m=0,u=0,p=0;p<c.length;p++)this.view.getVisibleTerminal(c[p],!0)==d?m++:u++;(n&&0==m&&0<u||!n&&0==u&&0<m)&&a.push(d),(c=n?u-m:m-u)>r&&(r=c,s=d)}}0==a.length&&null!=s&&a.push(s)}return a},mxGraph.prototype.traverse=function(e,t,n,a,i){if(null!=n&&null!=e){t=null==t||t,i=i||[];var o=mxCellPath.create(e);if(null==i[o]&&(i[o]=e,null==(a=n(e,a))||a)&&0<(a=this.model.getEdgeCount(e)))for(o=0;o<a;o++){var s=this.model.getEdgeAt(e,o),r=this.model.getTerminal(s,!0)==e;t&&!r||(r=this.model.getTerminal(s,!r),this.traverse(r,t,n,s,i))}}},mxGraph.prototype.isCellSelected=function(e){return this.getSelectionModel().isSelected(e)},mxGraph.prototype.isSelectionEmpty=function(){return this.getSelectionModel().isEmpty()},mxGraph.prototype.clearSelection=function(){return this.getSelectionModel().clear()},mxGraph.prototype.getSelectionCount=function(){return this.getSelectionModel().cells.length},mxGraph.prototype.getSelectionCell=function(){return this.getSelectionModel().cells[0]},mxGraph.prototype.getSelectionCells=function(){return this.getSelectionModel().cells.slice()},mxGraph.prototype.setSelectionCell=function(e){this.getSelectionModel().setCell(e)},mxGraph.prototype.setSelectionCells=function(e){this.getSelectionModel().setCells(e)},mxGraph.prototype.addSelectionCell=function(e){this.getSelectionModel().addCell(e)},mxGraph.prototype.addSelectionCells=function(e){this.getSelectionModel().addCells(e)},mxGraph.prototype.removeSelectionCell=function(e){this.getSelectionModel().removeCell(e)},mxGraph.prototype.removeSelectionCells=function(e){this.getSelectionModel().removeCells(e)},mxGraph.prototype.selectRegion=function(e,t){var n=this.getCells(e.x,e.y,e.width,e.height);return this.selectCellsForEvent(n,t),n},mxGraph.prototype.selectNextCell=function(){this.selectCell(!0)},mxGraph.prototype.selectPreviousCell=function(){this.selectCell()},mxGraph.prototype.selectParentCell=function(){this.selectCell(!1,!0)},mxGraph.prototype.selectChildCell=function(){this.selectCell(!1,!1,!0)},mxGraph.prototype.selectCell=function(e,t,n){var a=0<(i=this.selectionModel).cells.length?i.cells[0]:null;1<i.cells.length&&i.clear();var i=null!=a?this.model.getParent(a):this.getDefaultParent(),o=this.model.getChildCount(i);null==a&&0<o?(e=this.model.getChildAt(i,0),this.setSelectionCell(e)):null!=a&&!t||null==this.view.getState(i)||null==this.model.getGeometry(i)?null!=a&&n?0<this.model.getChildCount(a)&&(e=this.model.getChildAt(a,0),this.setSelectionCell(e)):0<o&&(t=i.getIndex(a),e?(t++,e=this.model.getChildAt(i,t%o)):(t--,e=this.model.getChildAt(i,0>t?o-1:t)),this.setSelectionCell(e)):this.getCurrentRoot()!=i&&this.setSelectionCell(i)},mxGraph.prototype.selectAll=function(e){e=e||this.getDefaultParent(),null!=(e=this.model.getChildren(e))&&this.setSelectionCells(e)},mxGraph.prototype.selectVertices=function(e){this.selectCells(!0,!1,e)},mxGraph.prototype.selectEdges=function(e){this.selectCells(!1,!0,e)},mxGraph.prototype.selectCells=function(e,t,n){n=n||this.getDefaultParent();var a=mxUtils.bind(this,function(n){return null!=this.view.getState(n)&&0==this.model.getChildCount(n)&&(this.model.isVertex(n)&&e||this.model.isEdge(n)&&t)});n=this.model.filterDescendants(a,n),this.setSelectionCells(n)},mxGraph.prototype.selectCellForEvent=function(e,t){var n=this.isCellSelected(e);this.isToggleEvent(t)?n?this.removeSelectionCell(e):this.addSelectionCell(e):(!n||1!=this.getSelectionCount())&&this.setSelectionCell(e)},mxGraph.prototype.selectCellsForEvent=function(e,t){this.isToggleEvent(t)?this.addSelectionCells(e):this.setSelectionCells(e)},mxGraph.prototype.createHandler=function(e){var t=null;return null!=e&&(this.model.isEdge(e.cell)?(t=this.view.getEdgeStyle(e),t=this.isLoop(e)||t==mxEdgeStyle.ElbowConnector||t==mxEdgeStyle.SideToSide||t==mxEdgeStyle.TopToBottom?new mxElbowEdgeHandler(e):t==mxEdgeStyle.SegmentConnector||t==mxEdgeStyle.OrthConnector?new mxEdgeSegmentHandler(e):new mxEdgeHandler(e)):t=new mxVertexHandler(e)),t},mxGraph.prototype.addMouseListener=function(e){null==this.mouseListeners&&(this.mouseListeners=[]),this.mouseListeners.push(e)},mxGraph.prototype.removeMouseListener=function(e){if(null!=this.mouseListeners)for(var t=0;t<this.mouseListeners.length;t++)if(this.mouseListeners[t]==e){this.mouseListeners.splice(t,1);break}},mxGraph.prototype.updateMouseEvent=function(e){if(null==e.graphX||null==e.graphY){var t=mxUtils.convertPoint(this.container,e.getX(),e.getY());e.graphX=t.x-this.panDx,e.graphY=t.y-this.panDy}},mxGraph.prototype.fireMouseEvent=function(e,t,n){if(null==n&&(n=this),this.updateMouseEvent(t),e==mxEvent.MOUSE_DOWN&&(this.isMouseDown=!0),mxClient.IS_TOUCH&&this.doubleTapEnabled&&e==mxEvent.MOUSE_DOWN){var a=(new Date).getTime();a-this.lastTouchTime<this.doubleTapTimeout&&Math.abs(this.lastTouchX-t.getX())<this.doubleTapTolerance&&Math.abs(this.lastTouchY-t.getY())<this.doubleTapTolerance?(this.lastTouchTime=0,this.dblClick(t.getEvent(),t.getCell()),t.getEvent().cancelBubble=!0):(this.lastTouchX=t.getX(),this.lastTouchY=t.getY(),this.lastTouchTime=a)}if(a=2!=t.getEvent().detail,mxClient.IS_IE&&"CSS1Compat"==document.compatMode&&((null!=this.lastMouseX&&Math.abs(this.lastMouseX-t.getX())>this.doubleTapTolerance||null!=this.lastMouseY&&Math.abs(this.lastMouseY-t.getY())>this.doubleTapTolerance)&&(a=!0),e==mxEvent.MOUSE_UP&&(this.lastMouseX=t.getX(),this.lastMouseY=t.getY())),(e!=mxEvent.MOUSE_UP||this.isMouseDown)&&a){if(e==mxEvent.MOUSE_UP&&(this.isMouseDown=!1),!this.isEditing()&&(mxClient.IS_OP||mxClient.IS_SF||mxClient.IS_GC||mxClient.IS_IE&&mxClient.IS_SVG||t.getEvent().target!=this.container)){if(e==mxEvent.MOUSE_MOVE&&this.isMouseDown&&this.autoScroll&&this.scrollPointToVisible(t.getGraphX(),t.getGraphY(),this.autoExtend),null!=this.mouseListeners)for(n=[n,t],t.getEvent().returnValue=!0,a=0;a<this.mouseListeners.length;a++){var i=this.mouseListeners[a];e==mxEvent.MOUSE_DOWN?i.mouseDown.apply(i,n):e==mxEvent.MOUSE_MOVE?i.mouseMove.apply(i,n):e==mxEvent.MOUSE_UP&&i.mouseUp.apply(i,n)}e==mxEvent.MOUSE_UP&&this.click(t)}}else e==mxEvent.MOUSE_UP&&(this.isMouseDown=!1)},mxGraph.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,null!=this.tooltipHandler&&this.tooltipHandler.destroy(),null!=this.selectionCellsHandler&&this.selectionCellsHandler.destroy(),null!=this.panningHandler&&this.panningHandler.destroy(),null!=this.connectionHandler&&this.connectionHandler.destroy(),null!=this.graphHandler&&this.graphHandler.destroy(),null!=this.cellEditor&&this.cellEditor.destroy(),null!=this.view&&this.view.destroy(),null!=this.model&&null!=this.graphModelChangeListener&&(this.model.removeListener(this.graphModelChangeListener),this.graphModelChangeListener=null),this.container=null)},mxCellOverlay.prototype=new mxEventSource,mxCellOverlay.prototype.constructor=mxCellOverlay,mxCellOverlay.prototype.image=null,mxCellOverlay.prototype.tooltip=null,mxCellOverlay.prototype.align=mxConstants.ALIGN_RIGHT,mxCellOverlay.prototype.verticalAlign=mxConstants.ALIGN_BOTTOM,mxCellOverlay.prototype.offset=null,mxCellOverlay.prototype.cursor=null,mxCellOverlay.prototype.defaultOverlap=.5,mxCellOverlay.prototype.getBounds=function(e){var t=e.view.graph.getModel().isEdge(e.cell),n=e.view.scale,a=null,i=this.image.width,o=this.image.height;return t?(t=e.absolutePoints,1==t.length%2?a=t[Math.floor(t.length/2)]:(a=t.length/2,e=t[a-1],t=t[a],a=new mxPoint(e.x+(t.x-e.x)/2,e.y+(t.y-e.y)/2))):(a=new mxPoint,a.x=this.align==mxConstants.ALIGN_LEFT?e.x:this.align==mxConstants.ALIGN_CENTER?e.x+e.width/2:e.x+e.width,a.y=this.verticalAlign==mxConstants.ALIGN_TOP?e.y:this.verticalAlign==mxConstants.ALIGN_MIDDLE?e.y+e.height/2:e.y+e.height),new mxRectangle(Math.round(a.x-(i*this.defaultOverlap-this.offset.x)*n),Math.round(a.y-(o*this.defaultOverlap-this.offset.y)*n),i*n,o*n)},mxCellOverlay.prototype.toString=function(){return this.tooltip},mxOutline.prototype.source=null,mxOutline.prototype.outline=null,mxOutline.prototype.graphRenderHint=mxConstants.RENDERING_HINT_FASTER,mxOutline.prototype.enabled=!0,mxOutline.prototype.showViewport=!0,mxOutline.prototype.border=10,mxOutline.prototype.sizerSize=8,mxOutline.prototype.updateOnPan=!1,mxOutline.prototype.sizerImage=null,mxOutline.prototype.suspended=!1,mxOutline.prototype.init=function(e){this.outline=new mxGraph(e,this.source.getModel(),this.graphRenderHint,this.source.getStylesheet()),this.outline.foldingEnabled=!1,this.outline.autoScroll=!1;var t=this.outline.graphModelChanged;this.outline.graphModelChanged=mxUtils.bind(this,function(e){!this.suspended&&null!=this.outline&&t.apply(this.outline,arguments)}),mxClient.IS_SVG&&((e=this.outline.getView().getCanvas().parentNode).setAttribute("shape-rendering","optimizeSpeed"),e.setAttribute("image-rendering","optimizeSpeed")),this.outline.labelsVisible=!1,this.outline.setEnabled(!1),this.updateHandler=mxUtils.bind(this,function(e,t){!this.suspended&&!this.active&&this.update()}),this.source.getModel().addListener(mxEvent.CHANGE,this.updateHandler),this.outline.addMouseListener(this),(e=this.source.getView()).addListener(mxEvent.SCALE,this.updateHandler),e.addListener(mxEvent.TRANSLATE,this.updateHandler),e.addListener(mxEvent.SCALE_AND_TRANSLATE,this.updateHandler),e.addListener(mxEvent.DOWN,this.updateHandler),e.addListener(mxEvent.UP,this.updateHandler),mxEvent.addListener(this.source.container,"scroll",this.updateHandler),this.panHandler=mxUtils.bind(this,function(e){this.updateOnPan&&this.updateHandler.apply(this,arguments)}),this.source.addListener(mxEvent.PAN,this.panHandler),this.refreshHandler=mxUtils.bind(this,function(e){this.outline.setStylesheet(this.source.getStylesheet()),this.outline.refresh()}),this.source.addListener(mxEvent.REFRESH,this.refreshHandler),this.bounds=new mxRectangle(0,0,0,0),this.selectionBorder=new mxRectangleShape(this.bounds,null,mxConstants.OUTLINE_COLOR,mxConstants.OUTLINE_STROKEWIDTH),this.selectionBorder.dialect=this.outline.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.selectionBorder.init(this.outline.getView().getOverlayPane()),mxEvent.redirectMouseEvents(this.selectionBorder.node,this.outline),this.selectionBorder.node.style.background="",this.sizer=this.createSizer(),this.sizer.init(this.outline.getView().getOverlayPane()),this.enabled&&(this.sizer.node.style.cursor="pointer"),mxEvent.addListener(this.sizer.node,mxClient.IS_TOUCH?"touchstart":"mousedown",mxUtils.bind(this,function(e){this.outline.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e))})),this.selectionBorder.node.style.display=this.showViewport?"":"none",this.sizer.node.style.display=this.selectionBorder.node.style.display,this.selectionBorder.node.style.cursor="move",this.update(!1)},mxOutline.prototype.isEnabled=function(){return this.enabled},mxOutline.prototype.setEnabled=function(e){this.enabled=e},mxOutline.prototype.setZoomEnabled=function(e){this.sizer.node.style.visibility=e?"visible":"hidden"},mxOutline.prototype.refresh=function(){this.update(!0)},mxOutline.prototype.createSizer=function(){var e=null!=this.sizerImage?new mxImageShape(new mxRectangle(0,0,this.sizerImage.width,this.sizerImage.height),this.sizerImage.src):new mxRectangleShape(new mxRectangle(0,0,this.sizerSize,this.sizerSize),mxConstants.OUTLINE_HANDLE_FILLCOLOR,mxConstants.OUTLINE_HANDLE_STROKECOLOR);return e.dialect=this.outline.dialect,e},mxOutline.prototype.getSourceContainerSize=function(){return new mxRectangle(0,0,this.source.container.scrollWidth,this.source.container.scrollHeight)},mxOutline.prototype.getOutlineOffset=function(e){return null},mxOutline.prototype.update=function(e){if(null!=this.source){var t=this.source.view.scale,n=new mxRectangle((n=this.source.getGraphBounds()).x/t+this.source.panDx,n.y/t+this.source.panDy,n.width/t,n.height/t),a=new mxRectangle(0,0,this.source.container.clientWidth/t,this.source.container.clientHeight/t);(o=n.clone()).add(a);var i=this.getSourceContainerSize(),a=Math.max(i.width/t,o.width),t=Math.max(i.height/t,o.height),o=Math.max(0,this.outline.container.clientWidth-this.border),i=Math.max(0,this.outline.container.clientHeight-this.border);if(0<(o=Math.min(o/a,i/t))){this.outline.getView().scale!=o&&(this.outline.getView().scale=o,e=!0),(a=this.outline.getView()).currentRoot!=this.source.getView().currentRoot&&a.setCurrentRoot(this.source.getView().currentRoot);var i=(t=this.source.view.translate).x+this.source.panDx,s=t.y+this.source.panDy;null!=(o=this.getOutlineOffset(o))&&(i+=o.x,s+=o.y),0>n.x&&(i-=n.x),0>n.y&&(s-=n.y),a.translate.x==i&&a.translate.y==s||(a.translate.x=i,a.translate.y=s,e=!0);var n=a.translate,i=(o=this.source.getView().scale)/a.scale,s=1/a.scale,r=this.source.container;this.bounds=new mxRectangle((n.x-t.x-this.source.panDx)/s,(n.y-t.y-this.source.panDy)/s,r.clientWidth/i,r.clientHeight/i),this.bounds.x+=this.source.container.scrollLeft*a.scale/o,this.bounds.y+=this.source.container.scrollTop*a.scale/o,(n=this.selectionBorder.bounds).x==this.bounds.x&&n.y==this.bounds.y&&n.width==this.bounds.width&&n.height==this.bounds.height||(this.selectionBorder.bounds=this.bounds,this.selectionBorder.redraw()),n=this.sizer.bounds,a=new mxRectangle(this.bounds.x+this.bounds.width-n.width/2,this.bounds.y+this.bounds.height-n.height/2,n.width,n.height),n.x==a.x&&n.y==a.y&&n.width==a.width&&n.height==a.height||(this.sizer.bounds=a,"hidden"!=this.sizer.node.style.visibility&&this.sizer.redraw()),e&&this.outline.view.revalidate()}}},mxOutline.prototype.mouseDown=function(e,t){this.enabled&&this.showViewport&&(this.zoom=t.isSource(this.sizer),this.startX=t.getX(),this.startY=t.getY(),this.active=!0,this.source.useScrollbarsForPanning&&mxUtils.hasScrollbars(this.source.container)?(this.dx0=this.source.container.scrollLeft,this.dy0=this.source.container.scrollTop):this.dy0=this.dx0=0),t.consume()},mxOutline.prototype.mouseMove=function(e,t){if(this.active){this.selectionBorder.node.style.display=this.showViewport?"":"none",this.sizer.node.style.display=this.selectionBorder.node.style.display;var n=t.getX()-this.startX,a=t.getY()-this.startY,i=null;if(this.zoom)i=this.source.container,a=n/(i.clientWidth/i.clientHeight),i=new mxRectangle(this.bounds.x,this.bounds.y,Math.max(1,this.bounds.width+n),Math.max(1,this.bounds.height+a)),this.selectionBorder.bounds=i,this.selectionBorder.redraw();else{var o=this.outline.getView().scale,i=new mxRectangle(this.bounds.x+n,this.bounds.y+a,this.bounds.width,this.bounds.height);this.selectionBorder.bounds=i,this.selectionBorder.redraw(),n=n/o*this.source.getView().scale,a=a/o*this.source.getView().scale,this.source.panGraph(-n-this.dx0,-a-this.dy0)}n=this.sizer.bounds,this.sizer.bounds=new mxRectangle(i.x+i.width-n.width/2,i.y+i.height-n.height/2,n.width,n.height),"hidden"!=this.sizer.node.style.visibility&&this.sizer.redraw(),t.consume()}},mxOutline.prototype.mouseUp=function(e,t){if(this.active){var n=t.getX()-this.startX,a=t.getY()-this.startY;if(0<Math.abs(n)||0<Math.abs(a)){if(this.zoom){var a=this.selectionBorder.bounds.width,i=this.source.getView().scale;this.source.zoomTo(i-n*i/a,!1)}else this.source.useScrollbarsForPanning&&mxUtils.hasScrollbars(this.source.container)||(this.source.panGraph(0,0),n/=this.outline.getView().scale,a/=this.outline.getView().scale,i=this.source.getView().translate,this.source.getView().setTranslate(i.x-n,i.y-a));this.update(),t.consume()}this.index=null,this.active=!1}},mxOutline.prototype.destroy=function(){null!=this.source&&(this.source.removeListener(this.panHandler),this.source.removeListener(this.refreshHandler),this.source.getModel().removeListener(this.updateHandler),this.source.getView().removeListener(this.updateHandler),mxEvent.addListener(this.source.container,"scroll",this.updateHandler),this.source=null),null!=this.outline&&(this.outline.removeMouseListener(this),this.outline.destroy(),this.outline=null),null!=this.selectionBorder&&(this.selectionBorder.destroy(),this.selectionBorder=null),null!=this.sizer&&(this.sizer.destroy(),this.sizer=null)},mxMultiplicity.prototype.type=null,mxMultiplicity.prototype.attr=null,mxMultiplicity.prototype.value=null,mxMultiplicity.prototype.source=null,mxMultiplicity.prototype.min=null,mxMultiplicity.prototype.max=null,mxMultiplicity.prototype.validNeighbors=null,mxMultiplicity.prototype.validNeighborsAllowed=!0,mxMultiplicity.prototype.countError=null,mxMultiplicity.prototype.typeError=null,mxMultiplicity.prototype.check=function(e,t,n,a,i,o){var s="";return(this.source&&this.checkTerminal(e,n,t)||!this.source&&this.checkTerminal(e,a,t))&&(null!=this.countError&&(this.source&&(0==this.max||i>=this.max)||!this.source&&(0==this.max||o>=this.max))&&(s+=this.countError+"\n"),null!=this.validNeighbors&&null!=this.typeError&&0<this.validNeighbors.length&&(this.checkNeighbors(e,t,n,a)||(s+=this.typeError+"\n"))),0<s.length?s:null},mxMultiplicity.prototype.checkNeighbors=function(e,t,n,a){t=e.model.getValue(n),a=e.model.getValue(a),n=!this.validNeighborsAllowed;for(var i=this.validNeighbors,o=0;o<i.length;o++){if(this.source&&this.checkType(e,a,i[o])){n=this.validNeighborsAllowed;break}if(!this.source&&this.checkType(e,t,i[o])){n=this.validNeighborsAllowed;break}}return n},mxMultiplicity.prototype.checkTerminal=function(e,t,n){return t=e.model.getValue(t),this.checkType(e,t,this.type,this.attr,this.value)},mxMultiplicity.prototype.checkType=function(e,t,n,a,i){return null!=t&&(isNaN(t.nodeType)?t==n:mxUtils.isNode(t,n,a,i))},mxLayoutManager.prototype=new mxEventSource,mxLayoutManager.prototype.constructor=mxLayoutManager,mxLayoutManager.prototype.graph=null,mxLayoutManager.prototype.bubbling=!0,mxLayoutManager.prototype.enabled=!0,mxLayoutManager.prototype.updateHandler=null,mxLayoutManager.prototype.moveHandler=null,mxLayoutManager.prototype.isEnabled=function(){return this.enabled},mxLayoutManager.prototype.setEnabled=function(e){this.enabled=e},mxLayoutManager.prototype.isBubbling=function(){return this.bubbling},mxLayoutManager.prototype.setBubbling=function(e){this.bubbling=e},mxLayoutManager.prototype.getGraph=function(){return this.graph},mxLayoutManager.prototype.setGraph=function(e){if(null!=this.graph){var t=this.graph.getModel();t.removeListener(this.undoHandler),this.graph.removeListener(this.moveHandler)}this.graph=e,null!=this.graph&&((t=this.graph.getModel()).addListener(mxEvent.BEFORE_UNDO,this.undoHandler),this.graph.addListener(mxEvent.MOVE_CELLS,this.moveHandler))},mxLayoutManager.prototype.getLayout=function(e){return null},mxLayoutManager.prototype.beforeUndo=function(e){e=this.getCellsForChanges(e.changes);var t=this.getGraph().getModel();if(this.isBubbling())for(var n=t.getParents(e);0<n.length;)e=e.concat(n),n=t.getParents(n);this.layoutCells(mxUtils.sortCells(e,!1))},mxLayoutManager.prototype.cellsMoved=function(e,t){if(null!=e&&null!=t)for(var n=mxUtils.convertPoint(this.getGraph().container,mxEvent.getClientX(t),mxEvent.getClientY(t)),a=this.getGraph().getModel(),i=0;i<e.length;i++){var o=this.getLayout(a.getParent(e[i]));null!=o&&o.moveCell(e[i],n.x,n.y)}},mxLayoutManager.prototype.getCellsForChanges=function(e){for(var t=[],n={},a=0;a<e.length;a++){if((i=e[a])instanceof mxRootChange)return[];for(var i=this.getCellsForChange(i),o=0;o<i.length;o++)if(null!=i[o]){var s=mxCellPath.create(i[o]);null==n[s]&&(n[s]=i[o],t.push(i[o]))}}return t},mxLayoutManager.prototype.getCellsForChange=function(e){var t=this.getGraph().getModel();return e instanceof mxChildChange?[e.child,e.previous,t.getParent(e.child)]:e instanceof mxTerminalChange||e instanceof mxGeometryChange?[e.cell,t.getParent(e.cell)]:[]},mxLayoutManager.prototype.layoutCells=function(e){if(0<e.length){var t=this.getGraph().getModel();t.beginUpdate();try{for(var n=null,a=0;a<e.length;a++)e[a]!=t.getRoot()&&e[a]!=n&&(n=e[a],this.executeLayout(this.getLayout(n),n));this.fireEvent(new mxEventObject(mxEvent.LAYOUT_CELLS,"cells",e))}finally{t.endUpdate()}}},mxLayoutManager.prototype.executeLayout=function(e,t){null!=e&&null!=t&&e.execute(t)},mxLayoutManager.prototype.destroy=function(){this.setGraph(null)},mxSpaceManager.prototype=new mxEventSource,mxSpaceManager.prototype.constructor=mxSpaceManager,mxSpaceManager.prototype.graph=null,mxSpaceManager.prototype.enabled=!0,mxSpaceManager.prototype.shiftRightwards=!0,mxSpaceManager.prototype.shiftDownwards=!0,mxSpaceManager.prototype.extendParents=!0,mxSpaceManager.prototype.resizeHandler=null,mxSpaceManager.prototype.foldHandler=null,mxSpaceManager.prototype.isCellIgnored=function(e){return!this.getGraph().getModel().isVertex(e)},mxSpaceManager.prototype.isCellShiftable=function(e){return this.getGraph().getModel().isVertex(e)&&this.getGraph().isCellMovable(e)},mxSpaceManager.prototype.isEnabled=function(){return this.enabled},mxSpaceManager.prototype.setEnabled=function(e){this.enabled=e},mxSpaceManager.prototype.isShiftRightwards=function(){return this.shiftRightwards},mxSpaceManager.prototype.setShiftRightwards=function(e){this.shiftRightwards=e},mxSpaceManager.prototype.isShiftDownwards=function(){return this.shiftDownwards},mxSpaceManager.prototype.setShiftDownwards=function(e){this.shiftDownwards=e},mxSpaceManager.prototype.isExtendParents=function(){return this.extendParents},mxSpaceManager.prototype.setExtendParents=function(e){this.extendParents=e},mxSpaceManager.prototype.getGraph=function(){return this.graph},mxSpaceManager.prototype.setGraph=function(e){null!=this.graph&&(this.graph.removeListener(this.resizeHandler),this.graph.removeListener(this.foldHandler)),this.graph=e,null!=this.graph&&(this.graph.addListener(mxEvent.RESIZE_CELLS,this.resizeHandler),this.graph.addListener(mxEvent.FOLD_CELLS,this.foldHandler))},mxSpaceManager.prototype.cellsResized=function(e){if(null!=e){var t=this.graph.getModel();t.beginUpdate();try{for(var n=0;n<e.length;n++)if(!this.isCellIgnored(e[n])){this.cellResized(e[n]);break}}finally{t.endUpdate()}}},mxSpaceManager.prototype.cellResized=function(e){var t=this.getGraph(),n=t.getView(),a=t.getModel(),i=n.getState(e),o=n.getState(a.getParent(e));if(null!=i&&null!=o){var s=this.getCellsToShift(i),r=a.getGeometry(e);if(null!=s&&null!=r){var l=n.translate,d=n.scale,n=i.x-o.origin.x-l.x*d,o=i.y-o.origin.y-l.y*d,l=i.x+i.width,c=i.y+i.height,m=i.width-r.width*d+n-r.x*d,u=i.height-r.height*d+o-r.y*d,p=1-r.width*d/i.width,i=1-r.height*d/i.height;a.beginUpdate();try{for(r=0;r<s.length;r++)s[r]!=e&&this.isCellShiftable(s[r])&&this.shiftCell(s[r],m,u,n,o,l,c,p,i,this.isExtendParents()&&t.isExtendParent(s[r]))}finally{a.endUpdate()}}}},mxSpaceManager.prototype.shiftCell=function(e,t,n,a,i,o,s,r,l,d){var c=(a=this.getGraph()).getView().getState(e);if(null!=c){var m=a.getModel(),u=m.getGeometry(e);if(null!=u){m.beginUpdate();try{if(this.isShiftRightwards())if(c.x>=o)(u=u.clone()).translate(-t,0);else{var p=Math.max(0,c.x-x0);(u=u.clone()).translate(-r*p,0)}if(this.isShiftDownwards())if(c.y>=s)(u=u.clone()).translate(0,-n);else{var g=Math.max(0,c.y-i);(u=u.clone()).translate(0,-l*g)}u!=m.getGeometry(e)&&(m.setGeometry(e,u),d&&a.extendParent(e))}finally{m.endUpdate()}}}},mxSpaceManager.prototype.getCellsToShift=function(e){var t=this.getGraph(),n=t.getModel().getParent(e.cell),a=this.isShiftDownwards(),i=this.isShiftRightwards();return t.getCellsBeyond(e.x+(a?0:e.width),e.y+(a&&i?0:e.height),n,i,a)},mxSpaceManager.prototype.destroy=function(){this.setGraph(null)},mxSwimlaneManager.prototype=new mxEventSource,mxSwimlaneManager.prototype.constructor=mxSwimlaneManager,mxSwimlaneManager.prototype.graph=null,mxSwimlaneManager.prototype.enabled=!0,mxSwimlaneManager.prototype.horizontal=!0,mxSwimlaneManager.prototype.addEnabled=!0,mxSwimlaneManager.prototype.resizeEnabled=!0,mxSwimlaneManager.prototype.addHandler=null,mxSwimlaneManager.prototype.resizeHandler=null,mxSwimlaneManager.prototype.isEnabled=function(){return this.enabled},mxSwimlaneManager.prototype.setEnabled=function(e){this.enabled=e},mxSwimlaneManager.prototype.isHorizontal=function(){return this.horizontal},mxSwimlaneManager.prototype.setHorizontal=function(e){this.horizontal=e},mxSwimlaneManager.prototype.isAddEnabled=function(){return this.addEnabled},mxSwimlaneManager.prototype.setAddEnabled=function(e){this.addEnabled=e},mxSwimlaneManager.prototype.isResizeEnabled=function(){return this.resizeEnabled},mxSwimlaneManager.prototype.setResizeEnabled=function(e){this.resizeEnabled=e},mxSwimlaneManager.prototype.getGraph=function(){return this.graph},mxSwimlaneManager.prototype.setGraph=function(e){null!=this.graph&&(this.graph.removeListener(this.addHandler),this.graph.removeListener(this.resizeHandler)),this.graph=e,null!=this.graph&&(this.graph.addListener(mxEvent.ADD_CELLS,this.addHandler),this.graph.addListener(mxEvent.CELLS_RESIZED,this.resizeHandler))},mxSwimlaneManager.prototype.isSwimlaneIgnored=function(e){return!this.getGraph().isSwimlane(e)},mxSwimlaneManager.prototype.isCellHorizontal=function(e){if(this.graph.isSwimlane(e)){var t=this.graph.view.getState(e);return e=null!=t?t.style:this.graph.getCellStyle(e),1==mxUtils.getValue(e,mxConstants.STYLE_HORIZONTAL,1)}return!this.isHorizontal()},mxSwimlaneManager.prototype.cellsAdded=function(e){if(null!=e){var t=this.getGraph().getModel();t.beginUpdate();try{for(var n=0;n<e.length;n++)this.isSwimlaneIgnored(e[n])||this.swimlaneAdded(e[n])}finally{t.endUpdate()}}},mxSwimlaneManager.prototype.swimlaneAdded=function(e){for(var t=this.getGraph().getModel(),n=t.getParent(e),a=t.getChildCount(n),i=null,o=0;o<a;o++){var s=t.getChildAt(n,o);if(s!=e&&!this.isSwimlaneIgnored(s)&&null!=(i=t.getGeometry(s)))break}null!=i&&this.resizeSwimlane(e,i.width,i.height)},mxSwimlaneManager.prototype.cellsResized=function(e){if(null!=e){var t=this.getGraph().getModel();t.beginUpdate();try{for(var n=0;n<e.length;n++)if(!this.isSwimlaneIgnored(e[n])){var a=t.getGeometry(e[n]);if(null!=a){for(var i=new mxRectangle(0,0,a.width,a.height),o=s=e[n];null!=o;){var s=o,o=t.getParent(o),r=this.graph.isSwimlane(o)?this.graph.getStartSize(o):new mxRectangle;i.width+=r.width,i.height+=r.height}this.resizeSwimlane(s,i.width,i.height)}}}finally{t.endUpdate()}}},mxSwimlaneManager.prototype.resizeSwimlane=function(e,t,n){var a=this.getGraph().getModel();a.beginUpdate();try{if(!this.isSwimlaneIgnored(e)&&null!=(r=a.getGeometry(e))){var i=this.isCellHorizontal(e);(i&&r.height!=n||!i&&r.width!=t)&&(r=r.clone(),i?r.height=n:r.width=t,a.setGeometry(e,r))}var o=this.graph.isSwimlane(e)?this.graph.getStartSize(e):new mxRectangle;t-=o.width,n-=o.height;for(var s=a.getChildCount(e),r=0;r<s;r++){var l=a.getChildAt(e,r);this.resizeSwimlane(l,t,n)}}finally{a.endUpdate()}},mxSwimlaneManager.prototype.destroy=function(){this.setGraph(null)},mxTemporaryCellStates.prototype.view=null,mxTemporaryCellStates.prototype.oldStates=null,mxTemporaryCellStates.prototype.oldBounds=null,mxTemporaryCellStates.prototype.oldScale=null,mxTemporaryCellStates.prototype.destroy=function(){this.view.setScale(this.oldScale),this.view.setStates(this.oldStates),this.view.setGraphBounds(this.oldBounds)},mxCellStatePreview.prototype.graph=null,mxCellStatePreview.prototype.deltas=null,mxCellStatePreview.prototype.count=0,mxCellStatePreview.prototype.isEmpty=function(){return 0==this.count},mxCellStatePreview.prototype.moveState=function(e,t,n,a,i){a=null==a||a,i=null==i||i;var o=mxCellPath.create(e.cell),s=this.deltas[o];return null==s?(s=new mxPoint(t,n),this.deltas[o]=s,this.count++):a?(s.X+=t,s.Y+=n):(s.X=t,s.Y=n),i&&this.addEdges(e),s},mxCellStatePreview.prototype.show=function(e){var t,n=this.graph.getModel(),a=n.getRoot();for(t in this.deltas){var i=mxCellPath.resolve(a,t),o=this.graph.view.getState(i),s=this.deltas[t],i=this.graph.view.getState(n.getParent(i));this.translateState(i,o,s.x,s.y)}for(t in this.deltas)i=mxCellPath.resolve(a,t),o=this.graph.view.getState(i),s=this.deltas[t],i=this.graph.view.getState(n.getParent(i)),this.revalidateState(i,o,s.x,s.y,e)},mxCellStatePreview.prototype.translateState=function(e,t,n,a){if(null!=t){var i=this.graph.getModel();if(i.isVertex(t.cell)){t.invalid=!0,this.graph.view.validateBounds(e,t.cell),e=i.getGeometry(t.cell);var o=mxCellPath.create(t.cell);0==n&&0==a||null==e||e.relative&&null==this.deltas[o]||(t.x+=n,t.y+=a)}for(e=i.getChildCount(t.cell),o=0;o<e;o++)this.translateState(t,this.graph.view.getState(i.getChildAt(t.cell,o)),n,a)}},mxCellStatePreview.prototype.revalidateState=function(e,t,n,a,i){if(null!=t){t.invalid=!0,this.graph.view.validatePoints(e,t.cell);var o=mxCellPath.create(t.cell),s=this.graph.getModel(),r=this.graph.getCellGeometry(t.cell);for(0==n&&0==a||null==r||!r.relative||!s.isVertex(t.cell)||null!=e&&!s.isVertex(e.cell)&&null==this.deltas[o]||(t.x+=n,t.y+=a,this.graph.cellRenderer.redraw(t)),null!=i&&i(t),e=s.getChildCount(t.cell),o=0;o<e;o++)this.revalidateState(t,this.graph.view.getState(s.getChildAt(t.cell,o)),n,a,i)}},mxCellStatePreview.prototype.addEdges=function(e){for(var t=this.graph.getModel(),n=t.getEdgeCount(e.cell),a=0;a<n;a++){var i=this.graph.view.getState(t.getEdgeAt(e.cell,a));null!=i&&this.moveState(i,0,0)}},mxConnectionConstraint.prototype.point=null,mxConnectionConstraint.prototype.perimeter=null,mxGraphHandler.prototype.graph=null,mxGraphHandler.prototype.maxCells=mxClient.IS_IE?20:50,mxGraphHandler.prototype.enabled=!0,mxGraphHandler.prototype.highlightEnabled=!0,mxGraphHandler.prototype.cloneEnabled=!0,mxGraphHandler.prototype.moveEnabled=!0,mxGraphHandler.prototype.guidesEnabled=!1,mxGraphHandler.prototype.guide=null,mxGraphHandler.prototype.currentDx=null,mxGraphHandler.prototype.currentDy=null,mxGraphHandler.prototype.updateCursor=!0,mxGraphHandler.prototype.selectEnabled=!0,mxGraphHandler.prototype.removeCellsFromParent=!0,mxGraphHandler.prototype.connectOnDrop=!1,mxGraphHandler.prototype.scrollOnMove=!0,mxGraphHandler.prototype.minimumSize=6,mxGraphHandler.prototype.previewColor="black",mxGraphHandler.prototype.htmlPreview=!1,mxGraphHandler.prototype.shape=null,mxGraphHandler.prototype.scaleGrid=!1,mxGraphHandler.prototype.rotationEnabled=!0,mxGraphHandler.prototype.isEnabled=function(){return this.enabled},mxGraphHandler.prototype.setEnabled=function(e){this.enabled=e},mxGraphHandler.prototype.isCloneEnabled=function(){return this.cloneEnabled},mxGraphHandler.prototype.setCloneEnabled=function(e){this.cloneEnabled=e},mxGraphHandler.prototype.isMoveEnabled=function(){return this.moveEnabled},mxGraphHandler.prototype.setMoveEnabled=function(e){this.moveEnabled=e},mxGraphHandler.prototype.isSelectEnabled=function(){return this.selectEnabled},mxGraphHandler.prototype.setSelectEnabled=function(e){this.selectEnabled=e},mxGraphHandler.prototype.isRemoveCellsFromParent=function(){return this.removeCellsFromParent},mxGraphHandler.prototype.setRemoveCellsFromParent=function(e){this.removeCellsFromParent=e},mxGraphHandler.prototype.getInitialCellForEvent=function(e){return e.getCell()},mxGraphHandler.prototype.isDelayedSelection=function(e){return this.graph.isCellSelected(e)},mxGraphHandler.prototype.mouseDown=function(e,t){if(!t.isConsumed()&&this.isEnabled()&&this.graph.isEnabled()&&!this.graph.isForceMarqueeEvent(t.getEvent())&&null!=t.getState()){var n=this.getInitialCellForEvent(t);if(this.cell=null,this.delayedSelection=this.isDelayedSelection(n),this.isSelectEnabled()&&!this.delayedSelection&&this.graph.selectCellForEvent(n,t.getEvent()),this.isMoveEnabled()){var a=this.graph.model,i=a.getGeometry(n);this.graph.isCellMovable(n)&&(!a.isEdge(n)||1<this.graph.getSelectionCount()||null!=i.points&&0<i.points.length||null==a.getTerminal(n,!0)||null==a.getTerminal(n,!1)||this.graph.allowDanglingEdges||this.graph.isCloneEvent(t.getEvent())&&this.graph.isCellsCloneable())&&this.start(n,t.getX(),t.getY()),this.cellWasClicked=!0,!mxClient.IS_SF&&!mxClient.IS_GC||"SELECT"!=t.getSource().nodeName?t.consume():mxClient.IS_SF&&"SELECT"==t.getSource().nodeName&&(this.cellWasClicked=!1,this.first=null)}}},mxGraphHandler.prototype.getGuideStates=function(){var e=this.graph.getDefaultParent(),t=this.graph.getModel(),n=mxUtils.bind(this,function(e){return null!=this.graph.view.getState(e)&&t.isVertex(e)&&null!=t.getGeometry(e)&&!t.getGeometry(e).relative});return this.graph.view.getCellStates(t.filterDescendants(n,e))},mxGraphHandler.prototype.getCells=function(e){return!this.delayedSelection&&this.graph.isCellMovable(e)?[e]:this.graph.getMovableCells(this.graph.getSelectionCells())},mxGraphHandler.prototype.getPreviewBounds=function(e){return null!=(e=this.getBoundingBox(e))&&(e.grow(-1,-1),e.width<this.minimumSize&&(e.x-=(this.minimumSize-e.width)/2,e.width=this.minimumSize),e.height<this.minimumSize&&(e.y-=(this.minimumSize-e.height)/2,e.height=this.minimumSize)),e},mxGraphHandler.prototype.getBoundingBox=function(e){var t=null;if(null!=e&&0<e.length)for(var n=this.graph.getModel(),a=0;a<e.length;a++)if(n.isVertex(e[a])||n.isEdge(e[a])){var i=this.graph.view.getState(e[a]);if(null!=i){var o=i;n.isVertex(e[a])&&null!=i.shape&&null!=i.shape.boundingBox&&(o=i.shape.boundingBox),null==t?t=new mxRectangle(o.x,o.y,o.width,o.height):t.add(o)}}return t},mxGraphHandler.prototype.createPreviewShape=function(e){return e=new mxRectangleShape(e,null,this.previewColor),e.isDashed=!0,this.htmlPreview?(e.dialect=mxConstants.DIALECT_STRICTHTML,e.init(this.graph.container)):(e.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,e.init(this.graph.getView().getOverlayPane()),e.pointerEvents=!1),e},mxGraphHandler.prototype.start=function(e,t,n){this.cell=e,this.first=mxUtils.convertPoint(this.graph.container,t,n),this.cells=this.getCells(this.cell),this.bounds=this.graph.getView().getBounds(this.cells),this.pBounds=this.getPreviewBounds(this.cells),this.guidesEnabled&&(this.guide=new mxGuide(this.graph,this.getGuideStates()))},mxGraphHandler.prototype.useGuidesForEvent=function(e){return null==this.guide||this.guide.isEnabledForEvent(e.getEvent())},mxGraphHandler.prototype.snap=function(e){var t=this.scaleGrid?this.graph.view.scale:1;return e.x=this.graph.snap(e.x/t)*t,e.y=this.graph.snap(e.y/t)*t,e},mxGraphHandler.prototype.mouseMove=function(e,t){var n=this.graph;if(!t.isConsumed()&&n.isMouseDown&&null!=this.cell&&null!=this.first&&null!=this.bounds){var a=(o=mxUtils.convertPoint(n.container,t.getX(),t.getY())).x-this.first.x,i=o.y-this.first.y,o=n.tolerance;if(null!=this.shape||Math.abs(a)>o||Math.abs(i)>o){null==this.highlight&&(this.highlight=new mxCellHighlight(this.graph,mxConstants.DROP_TARGET_COLOR,3)),null==this.shape&&(this.shape=this.createPreviewShape(this.bounds));var s=n.isGridEnabledEvent(t.getEvent()),o=!0;if(null!=this.guide&&this.useGuidesForEvent(t))i=this.guide.move(this.bounds,new mxPoint(a,i),s),o=!1,a=i.x,i=i.y;else if(s)var r=n.getView().translate,l=n.getView().scale,s=this.bounds.x-(n.snap(this.bounds.x/l-r.x)+r.x)*l,r=this.bounds.y-(n.snap(this.bounds.y/l-r.y)+r.y)*l,i=this.snap(new mxPoint(a,i)),a=i.x-s,i=i.y-r;for(null!=this.guide&&o&&this.guide.hide(),n.isConstrainedEvent(t.getEvent())&&(Math.abs(a)>Math.abs(i)?i=0:a=0),this.currentDx=a,this.currentDy=i,this.updatePreviewShape(),o=null,i=t.getCell(),n.isDropEnabled()&&this.highlightEnabled&&(o=n.getDropTarget(this.cells,t.getEvent(),i)),s=o,r=n.getModel();null!=s&&s!=this.cells[0];)s=r.getParent(s);var l=n.isCloneEvent(t.getEvent())&&n.isCellsCloneable()&&this.isCloneEnabled(),d=!1;null==(a=n.getView().getState(o))||null!=s||r.getParent(this.cell)==o&&!l?(this.target=null,this.connectOnDrop&&null!=i&&1==this.cells.length&&n.getModel().isVertex(i)&&n.isCellConnectable(i)&&null!=(a=n.getView().getState(i))&&(n=null==n.getEdgeValidationError(null,this.cell,i)?mxConstants.VALID_COLOR:mxConstants.INVALID_CONNECT_TARGET_COLOR,this.setHighlightColor(n),d=!0)):(this.target!=o&&(this.target=o,this.setHighlightColor(mxConstants.DROP_TARGET_COLOR)),d=!0),null!=a&&d?this.highlight.highlight(a):this.highlight.hide()}t.consume(),mxEvent.consume(t.getEvent())}else!this.isMoveEnabled()&&!this.isCloneEnabled()||!this.updateCursor||t.isConsumed()||null==t.getState()||n.isMouseDown||(null==(a=n.getCursorForCell(t.getCell()))&&n.isEnabled()&&n.isCellMovable(t.getCell())&&(a=n.getModel().isEdge(t.getCell())?mxConstants.CURSOR_MOVABLE_EDGE:mxConstants.CURSOR_MOVABLE_VERTEX),t.getState().setCursor(a),t.consume())},mxGraphHandler.prototype.updatePreviewShape=function(){null!=this.shape&&(this.shape.bounds=new mxRectangle(Math.round(this.pBounds.x+this.currentDx-this.graph.panDx),Math.round(this.pBounds.y+this.currentDy-this.graph.panDy),this.pBounds.width,this.pBounds.height),this.shape.redraw())},mxGraphHandler.prototype.setHighlightColor=function(e){null!=this.highlight&&this.highlight.setHighlightColor(e)},mxGraphHandler.prototype.mouseUp=function(e,t){if(!t.isConsumed()){var n=this.graph;if(null!=this.cell&&null!=this.first&&null!=this.shape&&null!=this.currentDx&&null!=this.currentDy){var a=n.getView().scale,i=n.isCloneEvent(t.getEvent())&&n.isCellsCloneable()&&this.isCloneEnabled(),o=this.currentDx/a,a=this.currentDy/a,s=t.getCell();this.connectOnDrop&&null==this.target&&null!=s&&n.getModel().isVertex(s)&&n.isCellConnectable(s)&&n.isEdgeValid(null,this.cell,s)?n.connectionHandler.connect(this.cell,s,t.getEvent()):(s=this.target,n.isSplitEnabled()&&n.isSplitTarget(s,this.cells,t.getEvent())?n.splitEdge(s,this.cells,null,o,a):this.moveCells(this.cells,o,a,i,this.target,t.getEvent()))}else this.isSelectEnabled()&&this.delayedSelection&&null!=this.cell&&this.selectDelayed(t)}this.cellWasClicked&&t.consume(),this.reset()},mxGraphHandler.prototype.selectDelayed=function(e){this.graph.selectCellForEvent(this.cell,e.getEvent())},mxGraphHandler.prototype.reset=function(){this.destroyShapes(),this.delayedSelection=this.cellWasClicked=!1,this.target=this.cell=this.first=this.guides=this.currentDy=this.currentDx=null},mxGraphHandler.prototype.shouldRemoveCellsFromParent=function(e,t,n){if(this.graph.getModel().isVertex(e)){if(e=this.graph.getView().getState(e),n=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(n),mxEvent.getClientY(n)),0!=(a=mxUtils.toRadians(mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION)||0))){t=Math.cos(-a);var a=Math.sin(-a),i=new mxPoint(e.getCenterX(),e.getCenterY());n=mxUtils.getRotatedPoint(n,t,a,i)}return null!=e&&!mxUtils.contains(e,n.x,n.y)}return!1},mxGraphHandler.prototype.moveCells=function(e,t,n,a,i,o){a&&(e=this.graph.getCloneableCells(e)),null==i&&this.isRemoveCellsFromParent()&&this.shouldRemoveCellsFromParent(this.graph.getModel().getParent(this.cell),e,o)&&(i=this.graph.getDefaultParent()),e=this.graph.moveCells(e,t-this.graph.panDx/this.graph.view.scale,n-this.graph.panDy/this.graph.view.scale,a,i,o),this.isSelectEnabled()&&this.scrollOnMove&&this.graph.scrollCellToVisible(e[0]),a&&this.graph.setSelectionCells(e)},mxGraphHandler.prototype.destroyShapes=function(){null!=this.shape&&(this.shape.destroy(),this.shape=null),null!=this.guide&&(this.guide.destroy(),this.guide=null),null!=this.highlight&&(this.highlight.destroy(),this.highlight=null)},mxGraphHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),this.graph.removeListener(this.panHandler),this.destroyShapes()},mxPanningHandler.prototype=new mxPopupMenu,mxPanningHandler.prototype.constructor=mxPanningHandler,mxPanningHandler.prototype.graph=null,mxPanningHandler.prototype.triggerX=null,mxPanningHandler.prototype.triggerY=null,mxPanningHandler.prototype.usePopupTrigger=!0,mxPanningHandler.prototype.useLeftButtonForPanning=!1,mxPanningHandler.prototype.selectOnPopup=!0,mxPanningHandler.prototype.clearSelectionOnBackground=!0,mxPanningHandler.prototype.ignoreCell=!1,mxPanningHandler.prototype.previewEnabled=!0,mxPanningHandler.prototype.useGrid=!1,mxPanningHandler.prototype.panningEnabled=!0,mxPanningHandler.prototype.isPanningEnabled=function(){return this.panningEnabled},mxPanningHandler.prototype.setPanningEnabled=function(e){this.panningEnabled=e},mxPanningHandler.prototype.init=function(){mxPopupMenu.prototype.init.apply(this),mxEvent.addListener(this.div,mxClient.IS_TOUCH?"touchmove":"mousemove",mxUtils.bind(this,function(e){this.graph.tooltipHandler.hide()}))},mxPanningHandler.prototype.isPanningTrigger=function(e){var t=e.getEvent();return this.useLeftButtonForPanning&&(this.ignoreCell||null==e.getState())&&mxEvent.isLeftMouseButton(t)||mxEvent.isControlDown(t)&&mxEvent.isShiftDown(t)||this.usePopupTrigger&&mxEvent.isPopupTrigger(t)},mxPanningHandler.prototype.mouseDown=function(e,t){if(!t.isConsumed()&&this.isEnabled()){this.hideMenu(),this.dx0=-this.graph.container.scrollLeft,this.dy0=-this.graph.container.scrollTop;var n=mxUtils.convertPoint(this.graph.container,t.getX(),t.getY());this.triggerX=n.x,this.triggerY=n.y,this.popupTrigger=this.isPopupTrigger(t),this.panningTrigger=this.isPanningEnabled()&&this.isPanningTrigger(t),this.startX=t.getX(),this.startY=t.getY(),this.panningTrigger&&this.consumePanningTrigger(t)}},mxPanningHandler.prototype.consumePanningTrigger=function(e){e.consume()},mxPanningHandler.prototype.mouseMove=function(e,t){var n=t.getX()-this.startX,a=t.getY()-this.startY;if(this.active)this.previewEnabled&&(this.useGrid&&(n=this.graph.snap(n),a=this.graph.snap(a)),this.graph.panGraph(n+this.dx0,a+this.dy0)),this.fireEvent(new mxEventObject(mxEvent.PAN,"event",t)),t.consume();else if(this.panningTrigger){var i=this.active;this.active=Math.abs(n)>this.graph.tolerance||Math.abs(a)>this.graph.tolerance,!i&&this.active&&this.fireEvent(new mxEventObject(mxEvent.PAN_START,"event",t))}},mxPanningHandler.prototype.mouseUp=function(e,t){var n=Math.abs(t.getX()-this.startX),a=Math.abs(t.getY()-this.startY);if(this.active){if(!this.graph.useScrollbarsForPanning||!mxUtils.hasScrollbars(this.graph.container)){n=t.getX()-this.startX,a=t.getY()-this.startY,this.useGrid&&(n=this.graph.snap(n),a=this.graph.snap(a));var i=this.graph.getView().scale,o=this.graph.getView().translate;this.graph.panGraph(0,0),this.panGraph(o.x+n/i,o.y+a/i)}this.active=!1,this.fireEvent(new mxEventObject(mxEvent.PAN_END,"event",t)),t.consume()}else this.popupTrigger&&n<this.graph.tolerance&&a<this.graph.tolerance&&(n=this.getCellForPopupEvent(t),this.graph.isEnabled()&&this.selectOnPopup&&null!=n&&!this.graph.isCellSelected(n)?this.graph.setSelectionCell(n):this.clearSelectionOnBackground&&null==n&&this.graph.clearSelection(),this.graph.tooltipHandler.hide(),a=mxUtils.getScrollOrigin(),a=new mxPoint(t.getX()+a.x,t.getY()+a.y),this.popup(a.x+1,a.y+1,n,t.getEvent()),t.consume());this.popupTrigger=this.panningTrigger=!1},mxPanningHandler.prototype.getCellForPopupEvent=function(e){return e.getCell()},mxPanningHandler.prototype.panGraph=function(e,t){this.graph.getView().setTranslate(e,t)},mxPanningHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),mxPopupMenu.prototype.destroy.apply(this)},mxUtils.extend(mxCellMarker,mxEventSource),mxCellMarker.prototype.graph=null,mxCellMarker.prototype.enabled=!0,mxCellMarker.prototype.hotspot=mxConstants.DEFAULT_HOTSPOT,mxCellMarker.prototype.hotspotEnabled=!1,mxCellMarker.prototype.validColor=null,mxCellMarker.prototype.invalidColor=null,mxCellMarker.prototype.currentColor=null,mxCellMarker.prototype.validState=null,mxCellMarker.prototype.markedState=null,mxCellMarker.prototype.setEnabled=function(e){this.enabled=e},mxCellMarker.prototype.isEnabled=function(){return this.enabled},mxCellMarker.prototype.setHotspot=function(e){this.hotspot=e},mxCellMarker.prototype.getHotspot=function(){return this.hotspot},mxCellMarker.prototype.setHotspotEnabled=function(e){this.hotspotEnabled=e},mxCellMarker.prototype.isHotspotEnabled=function(){return this.hotspotEnabled},mxCellMarker.prototype.hasValidState=function(){return null!=this.validState},mxCellMarker.prototype.getValidState=function(){return this.validState},mxCellMarker.prototype.getMarkedState=function(){return this.markedState},mxCellMarker.prototype.reset=function(){this.validState=null,null!=this.markedState&&(this.markedState=null,this.unmark())},mxCellMarker.prototype.process=function(e){var t=null;if(this.isEnabled()){var n=null!=(t=this.getState(e))&&this.isValidState(t);e=this.getMarkerColor(e.getEvent(),t,n),this.validState=n?t:null,t==this.markedState&&e==this.currentColor||(this.currentColor=e,null!=t&&null!=this.currentColor?(this.markedState=t,this.mark()):null!=this.markedState&&(this.markedState=null,this.unmark()))}return t},mxCellMarker.prototype.markCell=function(e,t){var n=this.graph.getView().getState(e);null!=n&&(this.currentColor=null!=t?t:this.validColor,this.markedState=n,this.mark())},mxCellMarker.prototype.mark=function(){this.highlight.setHighlightColor(this.currentColor),this.highlight.highlight(this.markedState),this.fireEvent(new mxEventObject(mxEvent.MARK,"state",this.markedState))},mxCellMarker.prototype.unmark=function(){this.mark()},mxCellMarker.prototype.isValidState=function(e){return!0},mxCellMarker.prototype.getMarkerColor=function(e,t,n){return n?this.validColor:this.invalidColor},mxCellMarker.prototype.getState=function(e){var t=this.graph.getView();return cell=this.getCell(e),t=this.getStateToMark(t.getState(cell)),null!=t&&this.intersects(t,e)?t:null},mxCellMarker.prototype.getCell=function(e){return e.getCell()},mxCellMarker.prototype.getStateToMark=function(e){return e},mxCellMarker.prototype.intersects=function(e,t){return!this.hotspotEnabled||mxUtils.intersectsHotspot(e,t.getGraphX(),t.getGraphY(),this.hotspot,mxConstants.MIN_HOTSPOT_SIZE,mxConstants.MAX_HOTSPOT_SIZE)},mxCellMarker.prototype.destroy=function(){this.graph.getView().removeListener(this.resetHandler),this.graph.getModel().removeListener(this.resetHandler),this.highlight.destroy()},mxUtils.extend(mxSelectionCellsHandler,mxEventSource),mxSelectionCellsHandler.prototype.graph=null,mxSelectionCellsHandler.prototype.enabled=!0,mxSelectionCellsHandler.prototype.refreshHandler=null,mxSelectionCellsHandler.prototype.maxHandlers=100,mxSelectionCellsHandler.prototype.handlers=null,mxSelectionCellsHandler.prototype.isEnabled=function(){return this.enabled},mxSelectionCellsHandler.prototype.setEnabled=function(e){this.enabled=e},mxSelectionCellsHandler.prototype.getHandler=function(e){return this.handlers.get(e)},mxSelectionCellsHandler.prototype.reset=function(){this.handlers.visit(function(e,t){t.reset.apply(t)})},mxSelectionCellsHandler.prototype.refresh=function(){var e=this.handlers;this.handlers=new mxDictionary;for(var t=this.graph.getSelectionCells(),n=0;n<t.length;n++){var a=this.graph.view.getState(t[n]);if(null!=a){var i=e.remove(t[n]);null!=i&&(i.state!=a?(i.destroy(),i=null):i.redraw()),null==i&&(i=this.graph.createHandler(a),this.fireEvent(new mxEventObject(mxEvent.ADD,"state",a))),null!=i&&this.handlers.put(t[n],i)}}e.visit(mxUtils.bind(this,function(e,t){this.fireEvent(new mxEventObject(mxEvent.REMOVE,"state",t.state)),t.destroy()}))},mxSelectionCellsHandler.prototype.mouseDown=function(e,t){if(this.graph.isEnabled()&&this.isEnabled()){var n=[e,t];this.handlers.visit(function(e,t){t.mouseDown.apply(t,n)})}},mxSelectionCellsHandler.prototype.mouseMove=function(e,t){if(this.graph.isEnabled()&&this.isEnabled()){var n=[e,t];this.handlers.visit(function(e,t){t.mouseMove.apply(t,n)})}},mxSelectionCellsHandler.prototype.mouseUp=function(e,t){if(this.graph.isEnabled()&&this.isEnabled()){var n=[e,t];this.handlers.visit(function(e,t){t.mouseUp.apply(t,n)})}},mxSelectionCellsHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),null!=this.refreshHandler&&(this.graph.getSelectionModel().removeListener(this.refreshHandler),this.graph.getModel().removeListener(this.refreshHandler),this.graph.getView().removeListener(this.refreshHandler),this.refreshHandler=null)},mxUtils.extend(mxConnectionHandler,mxEventSource),mxConnectionHandler.prototype.graph=null,mxConnectionHandler.prototype.factoryMethod=!0,mxConnectionHandler.prototype.moveIconFront=!1,mxConnectionHandler.prototype.moveIconBack=!1,mxConnectionHandler.prototype.connectImage=null,mxConnectionHandler.prototype.targetConnectImage=!1,mxConnectionHandler.prototype.enabled=!0,mxConnectionHandler.prototype.select=!0,mxConnectionHandler.prototype.createTarget=!1;mxConnectionHandler.prototype.marker=null,mxConnectionHandler.prototype.constraintHandler=null,mxConnectionHandler.prototype.error=null,mxConnectionHandler.prototype.waypointsEnabled=!1,mxConnectionHandler.prototype.tapAndHoldEnabled=!0,mxConnectionHandler.prototype.tapAndHoldDelay=500,mxConnectionHandler.prototype.tapAndHoldInProgress=!1,mxConnectionHandler.prototype.tapAndHoldValid=!1,mxConnectionHandler.prototype.tapAndHoldTolerance=4,mxConnectionHandler.prototype.initialTouchX=0,mxConnectionHandler.prototype.initialTouchY=0,mxConnectionHandler.prototype.ignoreMouseDown=!1,mxConnectionHandler.prototype.first=null,mxConnectionHandler.prototype.connectIconOffset=new mxPoint(0,mxConstants.TOOLTIP_VERTICAL_OFFSET),mxConnectionHandler.prototype.edgeState=null,mxConnectionHandler.prototype.changeHandler=null,mxConnectionHandler.prototype.drillHandler=null,mxConnectionHandler.prototype.mouseDownCounter=0,mxConnectionHandler.prototype.movePreviewAway=mxClient.IS_VML,mxConnectionHandler.prototype.isEnabled=function(){return this.enabled},mxConnectionHandler.prototype.setEnabled=function(e){this.enabled=e},mxConnectionHandler.prototype.isCreateTarget=function(){return this.createTarget},mxConnectionHandler.prototype.setCreateTarget=function(e){this.createTarget=e},mxConnectionHandler.prototype.createShape=function(){var e=new mxPolyline([],mxConstants.INVALID_COLOR);if(e.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,e.init(this.graph.getView().getOverlayPane()),e.svgStrokeTolerance=0,e.pointerEvents=!1,e.isDashed=!0,this.graph.dialect==mxConstants.DIALECT_SVG)e.node.setAttribute("pointer-events","none");else{var t=mxUtils.bind(this,function(e){return e=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),this.graph.view.getState(this.graph.getCellAt(e.x,e.y))});mxEvent.redirectMouseEvents(e.node,this.graph,t)}return e},mxConnectionHandler.prototype.init=function(){this.graph.addMouseListener(this),this.marker=this.createMarker(),this.constraintHandler=new mxConstraintHandler(this.graph),this.changeHandler=mxUtils.bind(this,function(e){null!=this.iconState&&(this.iconState=this.graph.getView().getState(this.iconState.cell)),null!=this.iconState?this.redrawIcons(this.icons,this.iconState):(this.destroyIcons(this.icons),this.previous=null),this.constraintHandler.reset()}),this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler),this.graph.getView().addListener(mxEvent.SCALE,this.changeHandler),this.graph.getView().addListener(mxEvent.TRANSLATE,this.changeHandler),this.graph.getView().addListener(mxEvent.SCALE_AND_TRANSLATE,this.changeHandler),this.drillHandler=mxUtils.bind(this,function(e){this.destroyIcons(this.icons)}),this.graph.addListener(mxEvent.START_EDITING,this.drillHandler),this.graph.getView().addListener(mxEvent.DOWN,this.drillHandler),this.graph.getView().addListener(mxEvent.UP,this.drillHandler)},mxConnectionHandler.prototype.isConnectableCell=function(e){return!0},mxConnectionHandler.prototype.createMarker=function(){var e=new mxCellMarker(this.graph);return e.hotspotEnabled=!0,e.getCell=mxUtils.bind(this,function(t,n){return n=mxCellMarker.prototype.getCell.apply(e,arguments),this.error=null,this.isConnectableCell(n)?(null!=n?this.isConnecting()?null!=this.previous&&(this.error=this.validateConnection(this.previous.cell,n),null!=this.error&&0==this.error.length&&(n=null,this.isCreateTarget()&&(this.error=null))):this.isValidSource(n)||(n=null):this.isConnecting()&&!this.isCreateTarget()&&!this.graph.allowDanglingEdges&&(this.error=""),n):null}),e.isValidState=mxUtils.bind(this,function(t){return this.isConnecting()?null==this.error:mxCellMarker.prototype.isValidState.apply(e,arguments)}),e.getMarkerColor=mxUtils.bind(this,function(t,n,a){return null==this.connectImage||this.isConnecting()?mxCellMarker.prototype.getMarkerColor.apply(e,arguments):null}),e.intersects=mxUtils.bind(this,function(t,n){return!(null==this.connectImage&&!this.isConnecting())||mxCellMarker.prototype.intersects.apply(e,arguments)}),e},mxConnectionHandler.prototype.start=function(e,t,n,a){this.previous=e,this.first=new mxPoint(t,n),this.edgeState=null!=a?a:this.createEdgeState(null),this.marker.currentColor=this.marker.validColor,this.marker.markedState=e,this.marker.mark(),this.fireEvent(new mxEventObject(mxEvent.START,"state",this.previous))},mxConnectionHandler.prototype.isConnecting=function(){return null!=this.first&&null!=this.shape},mxConnectionHandler.prototype.isValidSource=function(e){return this.graph.isValidSource(e)},mxConnectionHandler.prototype.isValidTarget=function(e){return!0},mxConnectionHandler.prototype.validateConnection=function(e,t){return this.isValidTarget(t)?this.graph.getEdgeValidationError(null,e,t):""},mxConnectionHandler.prototype.getConnectImage=function(e){return this.connectImage},mxConnectionHandler.prototype.isMoveIconToFrontForState=function(e){return null!=e.text&&e.text.node.parentNode==this.graph.container||this.moveIconFront},mxConnectionHandler.prototype.createIcons=function(e){if(null!=(i=this.getConnectImage(e))&&null!=e){this.iconState=e;var t=[],n=new mxImageShape(new mxRectangle(0,0,i.width,i.height),i.src,null,null,0);n.preserveImageAspect=!1,this.isMoveIconToFrontForState(e)?(n.dialect=mxConstants.DIALECT_STRICTHTML,n.init(this.graph.container)):(n.dialect=this.graph.dialect==mxConstants.DIALECT_SVG?mxConstants.DIALECT_SVG:mxConstants.DIALECT_VML,n.init(this.graph.getView().getOverlayPane()),this.moveIconBack&&null!=n.node.previousSibling&&n.node.parentNode.insertBefore(n.node,n.node.parentNode.firstChild)),n.node.style.cursor=mxConstants.CURSOR_CONNECT;var a=mxUtils.bind(this,function(){return null!=this.currentState?this.currentState:e}),i=mxUtils.bind(this,function(e){mxEvent.isConsumed(e)||(this.icon=n,this.graph.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e,a())))});return mxEvent.redirectMouseEvents(n.node,this.graph,a,i),t.push(n),this.redrawIcons(t,this.iconState),t}return null},mxConnectionHandler.prototype.redrawIcons=function(e,t){if(null!=e&&null!=e[0]&&null!=t){var n=this.getIconPosition(e[0],t);e[0].bounds.x=n.x,e[0].bounds.y=n.y,e[0].redraw()}},mxConnectionHandler.prototype.getIconPosition=function(e,t){var n=this.graph.getView().scale,a=t.getCenterX(),i=t.getCenterY();if(this.graph.isSwimlane(t.cell)){var a=0!=(o=this.graph.getStartSize(t.cell)).width?t.x+o.width*n/2:a,i=0!=o.height?t.y+o.height*n/2:i;if(0!=(o=mxUtils.toRadians(mxUtils.getValue(t.style,mxConstants.STYLE_ROTATION)||0)))var n=Math.cos(o),o=Math.sin(o),s=new mxPoint(t.getCenterX(),t.getCenterY()),i=mxUtils.getRotatedPoint(new mxPoint(a,i),n,o,s),a=i.x,i=i.y}return new mxPoint(a-e.bounds.width/2,i-e.bounds.height/2)},mxConnectionHandler.prototype.destroyIcons=function(e){if(null!=e){this.iconState=null;for(var t=0;t<e.length;t++)e[t].destroy()}},mxConnectionHandler.prototype.isStartEvent=function(e){return!this.graph.isForceMarqueeEvent(e.getEvent())&&(null!=this.constraintHandler.currentFocus&&null!=this.constraintHandler.currentConstraint||null!=this.previous&&null==this.error&&(null==this.icons||null!=this.icons&&null!=this.icon))},mxConnectionHandler.prototype.mouseDown=function(e,t){if(this.mouseDownCounter++,this.isEnabled()&&this.graph.isEnabled()&&!t.isConsumed()&&!this.isConnecting()&&this.isStartEvent(t)){if(null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&null!=this.constraintHandler.currentPoint?(this.sourceConstraint=this.constraintHandler.currentConstraint,this.previous=this.constraintHandler.currentFocus,this.first=this.constraintHandler.currentPoint.clone()):this.first=new mxPoint(t.getGraphX(),t.getGraphY()),this.edgeState=this.createEdgeState(t),this.mouseDownCounter=1,this.waypointsEnabled&&null==this.shape&&(this.waypoints=null,this.shape=this.createShape()),null==this.previous&&null!=this.edgeState){var n=this.graph.getPointForEvent(t.getEvent());this.edgeState.cell.geometry.setTerminalPoint(n,!0)}this.fireEvent(new mxEventObject(mxEvent.START,"state",this.previous)),t.consume()}else if(mxClient.IS_TOUCH&&this.tapAndHoldEnabled&&!this.tapAndHoldInProgress&&this.isEnabled()&&this.graph.isEnabled()&&!this.isConnecting()){this.tapAndHoldInProgress=!0,this.initialTouchX=t.getX(),this.initialTouchY=t.getY();var a=this.graph.view.getState(this.marker.getCell(t));this.tapAndHoldThread&&window.clearTimeout(this.tapAndHoldThread),this.tapAndHoldThread=window.setTimeout(mxUtils.bind(this,function(){this.tapAndHoldValid&&this.tapAndHold(t,a),this.tapAndHoldValid=this.tapAndHoldInProgress=!1}),this.tapAndHoldDelay),this.tapAndHoldValid=!0}this.selectedIcon=this.icon,this.icon=null},mxConnectionHandler.prototype.tapAndHold=function(e,t){null!=t&&(this.marker.currentColor=this.marker.validColor,this.marker.markedState=t,this.marker.mark(),this.first=new mxPoint(e.getGraphX(),e.getGraphY()),this.edgeState=this.createEdgeState(e),this.previous=t,this.fireEvent(new mxEventObject(mxEvent.START,"state",this.previous)))},mxConnectionHandler.prototype.isImmediateConnectSource=function(e){return!this.graph.isCellMovable(e.cell)},mxConnectionHandler.prototype.createEdgeState=function(e){return null},mxConnectionHandler.prototype.updateCurrentState=function(e){var t=this.marker.process(e);this.constraintHandler.update(e,null==this.first),this.currentState=t},mxConnectionHandler.prototype.convertWaypoint=function(e){var t=this.graph.getView().getScale(),n=this.graph.getView().getTranslate();e.x=e.x/t-n.x,e.y=e.y/t-n.y},mxConnectionHandler.prototype.mouseMove=function(e,t){if(this.tapAndHoldValid&&(this.tapAndHoldValid=Math.abs(this.initialTouchX-t.getX())<this.tapAndHoldTolerance&&Math.abs(this.initialTouchY-t.getY())<this.tapAndHoldTolerance),t.isConsumed()||!this.ignoreMouseDown&&null==this.first&&this.graph.isMouseDown)this.constraintHandler.reset();else{if(!this.isEnabled()&&null!=this.currentState&&(this.destroyIcons(this.icons),this.currentState=null),(null!=this.first||this.isEnabled()&&this.graph.isEnabled())&&this.updateCurrentState(t),null!=this.first){var n=this.graph.getView().scale,a=null,i=n=new mxPoint(this.graph.snap(t.getGraphX()/n)*n,this.graph.snap(t.getGraphY()/n)*n);null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&null!=this.constraintHandler.currentPoint&&(a=this.constraintHandler.currentConstraint,i=this.constraintHandler.currentPoint.clone());var o=this.first;if(null!=this.selectedIcon){var s=this.selectedIcon.bounds.width,r=this.selectedIcon.bounds.height;null!=this.currentState&&this.targetConnectImage?(s=this.getIconPosition(this.selectedIcon,this.currentState),this.selectedIcon.bounds.x=s.x,this.selectedIcon.bounds.y=s.y):(s=new mxRectangle(t.getGraphX()+this.connectIconOffset.x,t.getGraphY()+this.connectIconOffset.y,s,r),this.selectedIcon.bounds=s),this.selectedIcon.redraw()}if(null!=this.edgeState){if(this.edgeState.absolutePoints=[null,null!=this.currentState?null:i],this.graph.view.updateFixedTerminalPoint(this.edgeState,this.previous,!0,this.sourceConstraint),null!=this.currentState&&(null==a&&(a=this.graph.getConnectionConstraint(this.edgeState,this.previous,!1)),this.edgeState.setAbsoluteTerminalPoint(null,!1),this.graph.view.updateFixedTerminalPoint(this.edgeState,this.currentState,!1,a)),o=null,null!=this.waypoints)for(o=[],i=0;i<this.waypoints.length;i++)a=this.waypoints[i].clone(),this.convertWaypoint(a),o[i]=a;this.graph.view.updatePoints(this.edgeState,o,this.previous,this.currentState),this.graph.view.updateFloatingTerminalPoints(this.edgeState,this.previous,this.currentState),i=this.edgeState.absolutePoints[this.edgeState.absolutePoints.length-1],o=this.edgeState.absolutePoints[0]}else null!=this.currentState&&null==this.constraintHandler.currentConstraint&&null!=(s=this.getTargetPerimeterPoint(this.currentState,t))&&(i=s),null==this.sourceConstraint&&null!=this.previous&&null!=(s=this.getSourcePerimeterPoint(this.previous,null!=this.waypoints&&0<this.waypoints.length?this.waypoints[0]:i,t))&&(o=s);if(null==this.currentState&&this.movePreviewAway){if(s=o,null!=this.edgeState&&2<this.edgeState.absolutePoints.length&&null!=(a=this.edgeState.absolutePoints[this.edgeState.absolutePoints.length-2])&&(s=a),a=i.x-s.x,s=i.y-s.y,0==(r=Math.sqrt(a*a+s*s)))return;i.x-=4*a/r,i.y-=4*s/r}null==this.shape&&(a=Math.abs(n.x-this.first.x),s=Math.abs(n.y-this.first.y),a>this.graph.tolerance||s>this.graph.tolerance)&&(this.shape=this.createShape(),this.updateCurrentState(t)),null!=this.shape&&(null!=this.edgeState?this.shape.points=this.edgeState.absolutePoints:(n=[o],null!=this.waypoints&&(n=n.concat(this.waypoints)),n.push(i),this.shape.points=n),this.drawPreview()),mxEvent.consume(t.getEvent()),t.consume()}else this.isEnabled()&&this.graph.isEnabled()?this.previous!=this.currentState&&null==this.edgeState?(this.destroyIcons(this.icons),this.icons=null,null!=this.currentState&&null==this.error&&(this.icons=this.createIcons(this.currentState),null==this.icons&&(this.currentState.setCursor(mxConstants.CURSOR_CONNECT),t.consume())),this.previous=this.currentState):this.previous==this.currentState&&null!=this.currentState&&null==this.icons&&!this.graph.isMouseDown&&t.consume():this.constraintHandler.reset();if(null!=this.constraintHandler.currentConstraint&&this.marker.reset(),!this.graph.isMouseDown&&null!=this.currentState&&null!=this.icons){for(n=!1,o=t.getSource(),i=0;i<this.icons.length&&!n;i++)n=o==this.icons[i].node||o.parentNode==this.icons[i].node;n||this.updateIcons(this.currentState,this.icons,t)}}},mxConnectionHandler.prototype.getTargetPerimeterPoint=function(e,t){var n=null,a=e.view,i=a.getPerimeterFunction(e);if(null!=i){var o=null!=this.waypoints&&0<this.waypoints.length?this.waypoints[this.waypoints.length-1]:new mxPoint(this.previous.getCenterX(),this.previous.getCenterY());null!=(a=i(a.getPerimeterBounds(e),this.edgeState,o,!1))&&(n=a)}else n=new mxPoint(e.getCenterX(),e.getCenterY());return n},mxConnectionHandler.prototype.getSourcePerimeterPoint=function(e,t,n){n=null;var a=e.view,i=a.getPerimeterFunction(e),o=new mxPoint(e.getCenterX(),e.getCenterY());if(null!=i){var s=mxUtils.getValue(e.style,mxConstants.STYLE_ROTATION,0),r=-s*(Math.PI/180);0!=s&&(t=mxUtils.getRotatedPoint(new mxPoint(t.x,t.y),Math.cos(r),Math.sin(r),o)),null!=(e=i(a.getPerimeterBounds(e),e,t,!1))&&(0!=s&&(e=mxUtils.getRotatedPoint(new mxPoint(e.x,e.y),Math.cos(-r),Math.sin(-r),o)),n=e)}else n=o;return n},mxConnectionHandler.prototype.updateIcons=function(e,t,n){},mxConnectionHandler.prototype.isStopEvent=function(e){return null!=e.getState()},mxConnectionHandler.prototype.addWaypointForEvent=function(e){var t=mxUtils.convertPoint(this.graph.container,e.getX(),e.getY()),n=Math.abs(t.x-this.first.x),t=Math.abs(t.y-this.first.y);(null!=this.waypoints||1<this.mouseDownCounter&&(n>this.graph.tolerance||t>this.graph.tolerance))&&(null==this.waypoints&&(this.waypoints=[]),n=this.graph.view.scale,t=new mxPoint(this.graph.snap(e.getGraphX()/n)*n,this.graph.snap(e.getGraphY()/n)*n),this.waypoints.push(t))},mxConnectionHandler.prototype.mouseUp=function(e,t){if(!t.isConsumed()&&this.isConnecting()){if(this.waypointsEnabled&&!this.isStopEvent(t))return this.addWaypointForEvent(t),void t.consume();if(null==this.error){var n=null!=this.previous?this.previous.cell:null,a=null;null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&(a=this.constraintHandler.currentFocus.cell),null==a&&this.marker.hasValidState()&&(a=this.marker.validState.cell),this.connect(n,a,t.getEvent(),t.getCell())}else null!=this.previous&&null!=this.marker.validState&&this.previous.cell==this.marker.validState.cell&&this.graph.selectCellForEvent(this.marker.source,evt),0<this.error.length&&this.graph.validationAlert(this.error);this.destroyIcons(this.icons),t.consume()}null!=this.first&&this.reset(),this.tapAndHoldValid=this.tapAndHoldInProgress=!1},mxConnectionHandler.prototype.reset=function(){null!=this.shape&&(this.shape.destroy(),this.shape=null),this.destroyIcons(this.icons),this.icons=null,this.marker.reset(),this.constraintHandler.reset(),this.sourceConstraint=this.error=this.previous=this.edgeState=this.selectedIcon=null,this.mouseDownCounter=0,this.icon=this.first=null,this.fireEvent(new mxEventObject(mxEvent.RESET))},mxConnectionHandler.prototype.drawPreview=function(){var e=null==this.error;this.shape.strokewidth=this.getEdgeWidth(e),e=this.getEdgeColor(e),this.shape.stroke=e,this.shape.redraw()},mxConnectionHandler.prototype.getEdgeColor=function(e){return e?mxConstants.VALID_COLOR:mxConstants.INVALID_COLOR},mxConnectionHandler.prototype.getEdgeWidth=function(e){return e?3:1},mxConnectionHandler.prototype.connect=function(e,t,n,a){if(null!=t||this.isCreateTarget()||this.graph.allowDanglingEdges){var i=this.graph.getModel(),o=null;i.beginUpdate();try{if(null!=e&&null==t&&this.isCreateTarget()&&null!=(t=this.createTargetVertex(n,e))){if(null!=(a=this.graph.getDropTarget([t],n,a))&&this.graph.getModel().isEdge(a))a=this.graph.getDefaultParent();else{var s=this.graph.getView().getState(a);if(null!=s){var r=i.getGeometry(t);r.x-=s.origin.x,r.y-=s.origin.y}}this.graph.addCell(t,a)}var l=this.graph.getDefaultParent();if(null!=e&&null!=t&&i.getParent(e)==i.getParent(t)&&i.getParent(i.getParent(e))!=i.getRoot()&&(l=i.getParent(e),null!=e.geometry&&e.geometry.relative&&null!=t.geometry&&t.geometry.relative&&(l=i.getParent(l))),r=s=null,null!=this.edgeState&&(s=this.edgeState.cell.value,r=this.edgeState.cell.style),null!=(o=this.insertEdge(l,null,s,e,t,r))){this.graph.setConnectionConstraint(o,e,!0,this.sourceConstraint),this.graph.setConnectionConstraint(o,t,!1,this.constraintHandler.currentConstraint),null!=this.edgeState&&i.setGeometry(o,this.edgeState.cell.geometry);var d=i.getGeometry(o);if(null==d&&(d=new mxGeometry,d.relative=!0,i.setGeometry(o,d)),null!=this.waypoints&&0<this.waypoints.length){var c=this.graph.view.scale,m=this.graph.view.translate;for(d.points=[],e=0;e<this.waypoints.length;e++){var u=this.waypoints[e];d.points.push(new mxPoint(u.x/c-m.x,u.y/c-m.y))}}null==t&&(u=this.graph.getPointForEvent(n,!1),u.x-=this.graph.panDx/this.graph.view.scale,u.y-=this.graph.panDy/this.graph.view.scale,d.setTerminalPoint(u,!1)),this.fireEvent(new mxEventObject(mxEvent.CONNECT,"cell",o,"event",n,"target",a))}}catch(e){mxLog.show(),mxLog.debug(e.message)}finally{i.endUpdate()}this.select&&this.selectCells(o,t)}},mxConnectionHandler.prototype.selectCells=function(e,t){this.graph.setSelectionCell(e)},mxConnectionHandler.prototype.insertEdge=function(e,t,n,a,i,o){return null==this.factoryMethod?this.graph.insertEdge(e,t,n,a,i,o):(t=this.createEdge(n,a,i,o),t=this.graph.addEdge(t,e,a,i))},mxConnectionHandler.prototype.createTargetVertex=function(e,t){for(var n=this.graph.getCellGeometry(t);null!=n&&n.relative;)t=this.graph.getModel().getParent(t),n=this.graph.getCellGeometry(t);var a=this.graph.cloneCells([t])[0];if(null!=(n=this.graph.getModel().getGeometry(a))){var i=this.graph.getPointForEvent(e);if(n.x=this.graph.snap(i.x-n.width/2)-this.graph.panDx/this.graph.view.scale,n.y=this.graph.snap(i.y-n.height/2)-this.graph.panDy/this.graph.view.scale,null!=this.first){var o=this.graph.view.getState(t);if(null!=o){var s=this.getAlignmentTolerance();Math.abs(this.graph.snap(this.first.x)-this.graph.snap(i.x))<=s?n.x=o.x:Math.abs(this.graph.snap(this.first.y)-this.graph.snap(i.y))<=s&&(n.y=o.y)}}}return a},mxConnectionHandler.prototype.getAlignmentTolerance=function(){return this.graph.isGridEnabled()?this.graph.gridSize:this.graph.tolerance},mxConnectionHandler.prototype.createEdge=function(e,t,n,a){var i=null;return null!=this.factoryMethod&&(i=this.factoryMethod(t,n,a)),null==i&&((i=new mxCell(e||"")).setEdge(!0),i.setStyle(a),e=new mxGeometry,e.relative=!0,i.setGeometry(e)),i},mxConnectionHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),null!=this.shape&&(this.shape.destroy(),this.shape=null),null!=this.marker&&(this.marker.destroy(),this.marker=null),null!=this.constraintHandler&&(this.constraintHandler.destroy(),this.constraintHandler=null),null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.graph.getView().removeListener(this.changeHandler),this.changeHandler=null),null!=this.drillHandler&&(this.graph.removeListener(this.drillHandler),this.graph.getView().removeListener(this.drillHandler),this.drillHandler=null)},mxConstraintHandler.prototype.pointImage=new mxImage(mxClient.imageBasePath+"/point.gif",5,5),mxConstraintHandler.prototype.graph=null,mxConstraintHandler.prototype.enabled=!0,mxConstraintHandler.prototype.highlightColor=mxConstants.DEFAULT_VALID_COLOR,mxConstraintHandler.prototype.isEnabled=function(){return this.enabled},mxConstraintHandler.prototype.setEnabled=function(e){this.enabled=e},mxConstraintHandler.prototype.reset=function(){if(null!=this.focusIcons){for(var e=0;e<this.focusIcons.length;e++)this.focusIcons[e].destroy();this.focusIcons=null}null!=this.focusHighlight&&(this.focusHighlight.destroy(),this.focusHighlight=null),this.focusPoints=this.currentFocus=this.currentPoint=this.currentFocusArea=this.currentConstraint=null},mxConstraintHandler.prototype.getTolerance=function(){return this.graph.getTolerance()},mxConstraintHandler.prototype.getImageForConstraint=function(e,t,n){return this.pointImage},mxConstraintHandler.prototype.isEventIgnored=function(e,t){return!1},mxConstraintHandler.prototype.update=function(e,t){if(this.isEnabled()&&!this.isEventIgnored(e)){var n=this.getTolerance(),a=new mxRectangle(e.getGraphX()-n,e.getGraphY()-n,2*n,2*n),i=null!=e.getCell()&&this.graph.isCellConnectable(e.getCell());if((null==this.currentFocusArea||!mxUtils.intersects(this.currentFocusArea,a)||null!=e.getState()&&null!=this.currentFocus&&i)&&(this.currentFocusArea=null,e.getState()!=this.currentFocus))if(this.currentFocus=null,this.constraints=null!=e.getState()&&i?this.graph.getAllConnectionConstraints(e.getState(),t):null,null!=this.constraints){if(this.currentFocus=e.getState(),this.currentFocusArea=new mxRectangle(e.getState().x,e.getState().y,e.getState().width,e.getState().height),null!=this.focusIcons){for(i=0;i<this.focusIcons.length;i++)this.focusIcons[i].destroy();this.focusPoints=this.focusIcons=null}for(this.focusIcons=[],this.focusPoints=[],i=0;i<this.constraints.length;i++){var o=this.graph.getConnectionPoint(e.getState(),this.constraints[i]),s=this.getImageForConstraint(e.getState(),this.constraints[i],o),r=s.src;(s=new mxImageShape(s=new mxRectangle(o.x-s.width/2,o.y-s.height/2,s.width,s.height),r)).dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_MIXEDHTML:mxConstants.DIALECT_SVG,s.preserveImageAspect=!1,s.init(this.graph.getView().getOverlayPane()),null!=s.node.previousSibling&&s.node.parentNode.insertBefore(s.node,s.node.parentNode.firstChild),r=mxUtils.bind(this,function(){return null!=this.currentFocus?this.currentFocus:e.getState()}),s.redraw(),mxEvent.redirectMouseEvents(s.node,this.graph,r),this.currentFocusArea.add(s.bounds),this.focusIcons.push(s),this.focusPoints.push(o)}this.currentFocusArea.grow(n)}else if(null!=this.focusIcons){for(null!=this.focusHighlight&&(this.focusHighlight.destroy(),this.focusHighlight=null),i=0;i<this.focusIcons.length;i++)this.focusIcons[i].destroy();this.focusPoints=this.focusIcons=null}if(this.currentPoint=this.currentConstraint=null,null!=this.focusIcons&&null!=this.constraints&&(null==e.getState()||this.currentFocus==e.getState()))for(i=0;i<this.focusIcons.length;i++)if(mxUtils.intersects(this.focusIcons[i].bounds,a)){this.currentConstraint=this.constraints[i],this.currentPoint=this.focusPoints[i],(n=this.focusIcons[i].bounds.clone()).grow(mxClient.IS_IE?3:2),mxClient.IS_IE&&(n.width-=1,n.height-=1),null==this.focusHighlight?(n=new mxRectangleShape(n,null,this.highlightColor,3),n.dialect=this.graph.dialect==mxConstants.DIALECT_SVG?mxConstants.DIALECT_SVG:mxConstants.DIALECT_VML,n.init(this.graph.getView().getOverlayPane()),this.focusHighlight=n,r=mxUtils.bind(this,function(){return null!=this.currentFocus?this.currentFocus:e.getState()}),mxEvent.redirectMouseEvents(n.node,this.graph,r)):(this.focusHighlight.bounds=n,this.focusHighlight.redraw());break}null==this.currentConstraint&&null!=this.focusHighlight&&(this.focusHighlight.destroy(),this.focusHighlight=null)}},mxConstraintHandler.prototype.destroy=function(){this.reset()},mxRubberband.prototype.defaultOpacity=20,mxRubberband.prototype.enabled=!0,mxRubberband.prototype.div=null,mxRubberband.prototype.sharedDiv=null,mxRubberband.prototype.currentX=0,mxRubberband.prototype.currentY=0,mxRubberband.prototype.isEnabled=function(){return this.enabled},mxRubberband.prototype.setEnabled=function(e){this.enabled=e},mxRubberband.prototype.mouseDown=function(e,t){if(!t.isConsumed()&&this.isEnabled()&&this.graph.isEnabled()&&(this.graph.isForceMarqueeEvent(t.getEvent())||null==t.getState())){var n=mxUtils.getOffset(this.graph.container),a=mxUtils.getScrollOrigin(this.graph.container);if(a.x-=n.x,a.y-=n.y,this.start(t.getX()+a.x,t.getY()+a.y),mxClient.IS_NS&&!mxClient.IS_SF&&!mxClient.IS_GC){var i=this.graph.container,o=function(e){e=new mxMouseEvent(e);var t=mxUtils.convertPoint(i,e.getX(),e.getY());return e.graphX=t.x,e.graphY=t.y,e};this.dragHandler=mxUtils.bind(this,function(e){this.mouseMove(this.graph,o(e))}),this.dropHandler=mxUtils.bind(this,function(e){this.mouseUp(this.graph,o(e))}),mxEvent.addListener(document,"mousemove",this.dragHandler),mxEvent.addListener(document,"mouseup",this.dropHandler)}t.consume(!1)}},mxRubberband.prototype.start=function(e,t){this.first=new mxPoint(e,t)},mxRubberband.prototype.mouseMove=function(e,t){if(!t.isConsumed()&&null!=this.first){var n=mxUtils.getScrollOrigin(this.graph.container),a=mxUtils.getOffset(this.graph.container);n.x-=a.x,n.y-=a.y;var a=t.getX()+n.x,n=t.getY()+n.y,i=this.first.x-a,o=this.first.y-n,s=this.graph.tolerance;(null!=this.div||Math.abs(i)>s||Math.abs(o)>s)&&(null==this.div&&(this.div=this.createShape()),mxUtils.clearSelection(),this.update(a,n),t.consume())}},mxRubberband.prototype.createShape=function(){return null==this.sharedDiv&&(this.sharedDiv=document.createElement("div"),this.sharedDiv.className="mxRubberband",mxUtils.setOpacity(this.sharedDiv,this.defaultOpacity)),this.graph.container.appendChild(this.sharedDiv),this.sharedDiv},mxRubberband.prototype.mouseUp=function(e,t){var n=null!=this.div;this.reset(),n&&(n=new mxRectangle(this.x,this.y,this.width,this.height),this.graph.selectRegion(n,t.getEvent()),t.consume())},mxRubberband.prototype.reset=function(){null!=this.div&&this.div.parentNode.removeChild(this.div),null!=this.dragHandler&&(mxEvent.removeListener(document,"mousemove",this.dragHandler),this.dragHandler=null),null!=this.dropHandler&&(mxEvent.removeListener(document,"mouseup",this.dropHandler),this.dropHandler=null),this.currentY=this.currentX=0,this.div=this.first=null},mxRubberband.prototype.update=function(e,t){this.currentX=e,this.currentY=t,this.repaint()},mxRubberband.prototype.repaint=function(){if(null!=this.div){var e=this.currentX-this.graph.panDx,t=this.currentY-this.graph.panDy;this.x=Math.min(this.first.x,e),this.y=Math.min(this.first.y,t),this.width=Math.max(this.first.x,e)-this.x,this.height=Math.max(this.first.y,t)-this.y,e=mxClient.IS_VML?this.graph.panDy:0,this.div.style.left=this.x+(mxClient.IS_VML?this.graph.panDx:0)+"px",this.div.style.top=this.y+e+"px",this.div.style.width=Math.max(1,this.width)+"px",this.div.style.height=Math.max(1,this.height)+"px"}},mxRubberband.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,this.graph.removeMouseListener(this),this.graph.removeListener(this.panHandler),this.reset(),null!=this.sharedDiv&&(this.sharedDiv=null))},mxVertexHandler.prototype.graph=null,mxVertexHandler.prototype.state=null,mxVertexHandler.prototype.singleSizer=!1,mxVertexHandler.prototype.index=null,mxVertexHandler.prototype.allowHandleBoundsCheck=!0,mxVertexHandler.prototype.handleImage=null,mxVertexHandler.prototype.tolerance=0,mxVertexHandler.prototype.rotationEnabled=!1,mxVertexHandler.prototype.rotationRaster=!0,mxVertexHandler.prototype.init=function(){if(this.graph=this.state.view.graph,this.selectionBounds=this.getSelectionBounds(this.state),this.bounds=new mxRectangle(this.selectionBounds.x,this.selectionBounds.y,this.selectionBounds.width,this.selectionBounds.height),this.selectionBorder=this.createSelectionShape(this.bounds),this.selectionBorder.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.selectionBorder.pointerEvents=!1,this.selectionBorder.init(this.graph.getView().getOverlayPane()),this.graph.isCellMovable(this.state.cell)&&(this.selectionBorder.node.style.cursor=mxConstants.CURSOR_MOVABLE_VERTEX),mxEvent.redirectMouseEvents(this.selectionBorder.node,this.graph,this.state),0>=mxGraphHandler.prototype.maxCells||this.graph.getSelectionCount()<mxGraphHandler.prototype.maxCells){var e=this.graph.isCellResizable(this.state.cell);if(this.sizers=[],e||this.graph.isLabelMovable(this.state.cell)&&2<=this.state.width&&2<=this.state.height){var t=0;e&&(this.singleSizer||(this.sizers.push(this.createSizer("nw-resize",t++)),this.sizers.push(this.createSizer("n-resize",t++)),this.sizers.push(this.createSizer("ne-resize",t++)),this.sizers.push(this.createSizer("w-resize",t++)),this.sizers.push(this.createSizer("e-resize",t++)),this.sizers.push(this.createSizer("sw-resize",t++)),this.sizers.push(this.createSizer("s-resize",t++))),this.sizers.push(this.createSizer("se-resize",t++))),null!=(e=this.graph.model.getGeometry(this.state.cell))&&!e.relative&&!this.graph.isSwimlane(this.state.cell)&&this.graph.isLabelMovable(this.state.cell)&&(this.labelShape=this.createSizer(mxConstants.CURSOR_LABEL_HANDLE,mxEvent.LABEL_HANDLE,mxConstants.LABEL_HANDLE_SIZE,mxConstants.LABEL_HANDLE_FILLCOLOR),this.sizers.push(this.labelShape))}else this.graph.isCellMovable(this.state.cell)&&!this.graph.isCellResizable(this.state.cell)&&2>this.state.width&&2>this.state.height&&(this.labelShape=this.createSizer(mxConstants.CURSOR_MOVABLE_VERTEX,null,null,mxConstants.LABEL_HANDLE_FILLCOLOR),this.sizers.push(this.labelShape))}this.rotationEnabled&&(0>=mxGraphHandler.prototype.maxCells||this.graph.getSelectionCount()<mxGraphHandler.prototype.maxCells)&&(this.rotationShape=this.createSizer("pointer",mxEvent.ROTATION_HANDLE,mxConstants.HANDLE_SIZE+3,mxConstants.HANDLE_FILLCOLOR),this.sizers.push(this.rotationShape)),this.redraw()},mxVertexHandler.prototype.getSelectionBounds=function(e){return new mxRectangle(Math.round(e.x),Math.round(e.y),Math.round(e.width),Math.round(e.height))},mxVertexHandler.prototype.createSelectionShape=function(e){return e=new mxRectangleShape(e,null,this.getSelectionColor()),e.strokewidth=this.getSelectionStrokeWidth(),e.isDashed=this.isSelectionDashed(),e},mxVertexHandler.prototype.getSelectionColor=function(){return mxConstants.VERTEX_SELECTION_COLOR},mxVertexHandler.prototype.getSelectionStrokeWidth=function(){return mxConstants.VERTEX_SELECTION_STROKEWIDTH},mxVertexHandler.prototype.isSelectionDashed=function(){return mxConstants.VERTEX_SELECTION_DASHED},mxVertexHandler.prototype.createSizer=function(e,t,n,a){return n=n||mxConstants.HANDLE_SIZE,n=new mxRectangle(0,0,n,n),a=this.createSizerShape(n,t,a),a.isHtmlAllowed()&&null!=this.state.text&&this.state.text.node.parentNode==this.graph.container?(a.bounds.height-=1,a.bounds.width-=1,a.dialect=mxConstants.DIALECT_STRICTHTML,a.init(this.graph.container)):(a.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_MIXEDHTML:mxConstants.DIALECT_SVG,a.init(this.graph.getView().getOverlayPane())),mxEvent.redirectMouseEvents(a.node,this.graph,this.state),this.graph.isEnabled()&&(a.node.style.cursor=e),this.isSizerVisible(t)||(a.node.style.visibility="hidden"),a},mxVertexHandler.prototype.isSizerVisible=function(e){return!0},mxVertexHandler.prototype.createSizerShape=function(e,t,n){return null!=this.handleImage?(e.width=this.handleImage.width,e.height=this.handleImage.height,new mxImageShape(e,this.handleImage.src)):t==mxEvent.ROTATION_HANDLE?new mxEllipse(e,n||mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR):new mxRectangleShape(e,n||mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR)},mxVertexHandler.prototype.moveSizerTo=function(e,t,n){null!=e&&(e.bounds.x=Math.round(t-e.bounds.width/2),e.bounds.y=Math.round(n-e.bounds.height/2),e.redraw())},mxVertexHandler.prototype.getHandleForEvent=function(e){if(e.isSource(this.rotationShape))return mxEvent.ROTATION_HANDLE;if(e.isSource(this.labelShape))return mxEvent.LABEL_HANDLE;if(null!=this.sizers)for(var t=this.tolerance,t=this.allowHandleBoundsCheck&&(mxClient.IS_IE||0<t)?new mxRectangle(e.getGraphX()-t,e.getGraphY()-t,2*t,2*t):null,n=0;n<this.sizers.length;n++)if(e.isSource(this.sizers[n])||null!=t&&mxUtils.intersects(this.sizers[n].bounds,t))return n;return null},mxVertexHandler.prototype.mouseDown=function(e,t){if(!t.isConsumed()&&this.graph.isEnabled()&&!this.graph.isForceMarqueeEvent(t.getEvent())&&(0<this.tolerance||t.getState()==this.state)){var n=this.getHandleForEvent(t);null!=n&&(this.start(t.getX(),t.getY(),n),t.consume())}},mxVertexHandler.prototype.start=function(e,t,n){e=mxUtils.convertPoint(this.graph.container,e,t),this.startX=e.x,this.startY=e.y,this.index=n,this.selectionBorder.node.style.display=n==mxEvent.ROTATION_HANDLE?"inline":"none",this.preview=this.createSelectionShape(this.bounds),mxClient.IS_SVG&&0!=Number(this.state.style[mxConstants.STYLE_ROTATION]||"0")||null==this.state.text||this.state.text.node.parentNode!=this.graph.container?(this.preview.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,this.preview.init(this.graph.view.getOverlayPane())):(this.preview.dialect=mxConstants.DIALECT_STRICTHTML,this.preview.init(this.graph.container))},mxVertexHandler.prototype.mouseMove=function(e,t){if(t.isConsumed()||null==this.index)null!=this.getHandleForEvent(t)&&t.consume(!1);else{var n=new mxPoint(t.getGraphX(),t.getGraphY()),a=this.graph.isGridEnabledEvent(t.getEvent()),i=this.graph.getView().scale;if(this.index==mxEvent.LABEL_HANDLE)a&&(n.x=this.graph.snap(n.x/i)*i,n.y=this.graph.snap(n.y/i)*i),this.moveSizerTo(this.sizers[this.sizers.length-1],n.x,n.y);else if(this.index==mxEvent.ROTATION_HANDLE){var o=this.state.x+this.state.width/2-n.x,s=this.state.y+this.state.height/2-n.y;this.currentAlpha=0!=o?180*Math.atan(s/o)/Math.PI+90:0>s?180:0,0<o&&(this.currentAlpha-=180),this.rotationRaster&&(o=n.x-this.state.getCenterX(),s=n.y-this.state.getCenterY(),o=Math.abs(Math.sqrt(o*o+s*s)-this.state.height/2-20),o=Math.max(1,5*Math.min(3,Math.max(0,Math.round(80/Math.abs(o))))),this.currentAlpha=Math.round(this.currentAlpha/o)*o),this.selectionBorder.rotation=this.currentAlpha,this.selectionBorder.redraw()}else{var r=mxUtils.toRadians(this.state.style[mxConstants.STYLE_ROTATION]||"0"),l=Math.cos(-r),d=Math.sin(-r),c=new mxPoint(this.state.getCenterX(),this.state.getCenterY()),o=n.x-this.startX,s=n.y-this.startY,n=this.graph.view.translate,m=d*o+l*s,o=l*o-d*s;this.bounds=this.union(this.selectionBounds,o,m,this.index,a,i,n),l=Math.cos(r),c=(d=Math.sin(r))*(o=(s=new mxPoint(this.bounds.getCenterX(),this.bounds.getCenterY())).x-c.x)+l*(s=s.y-c.y)-s,this.bounds.x+=l*o-d*s-o,this.bounds.y+=c,this.drawPreview()}t.consume()}},mxVertexHandler.prototype.mouseUp=function(e,t){if(!t.isConsumed()&&null!=this.index&&null!=this.state){s=new mxPoint(t.getGraphX(),t.getGraphY());this.graph.getModel().beginUpdate();try{if(this.index==mxEvent.ROTATION_HANDLE)null!=this.currentAlpha&&this.rotateCell(this.state.cell,this.currentAlpha-(this.state.style[mxConstants.STYLE_ROTATION]||0));else{var n=this.graph.isGridEnabledEvent(t.getEvent()),a=mxUtils.toRadians(this.state.style[mxConstants.STYLE_ROTATION]||"0"),i=Math.cos(-a),o=Math.sin(-a),s=o*(r=s.x-this.startX)+i*(l=s.y-this.startY),r=i*r-o*l,l=s,d=this.graph.view.scale;this.resizeCell(this.state.cell,r/d,l/d,this.index,n)}}finally{this.graph.getModel().endUpdate()}this.reset(),t.consume()}},mxVertexHandler.prototype.rotateCell=function(e,t){var n=this.graph.getModel();if(n.isVertex(e)){var a=e==this.state?this.state:this.graph.view.getState(e);if(null!=a&&this.graph.setCellStyles(mxConstants.STYLE_ROTATION,(a.style[mxConstants.STYLE_ROTATION]||0)+t,[e]),this.state.cell!=e&&null!=(a=this.graph.getCellGeometry(e))&&!a.relative)if(0!=t){var i=this.graph.getModel().getParent(e),o=this.graph.getCellGeometry(i);if(!a.relative&&null!=o){var s=mxUtils.toRadians(t),i=Math.cos(s),s=Math.sin(s),r=new mxPoint(a.getCenterX(),a.getCenterY()),o=new mxPoint(o.width/2,o.height/2),i=mxUtils.getRotatedPoint(r,i,s,o);(a=a.clone()).x=i.x-a.width/2,a.y=i.y-a.height/2,n.setGeometry(e,a)}}else a=a.clone(),a.x+=dx,a.y+=dy,n.setGeometry(e,a);for(a=n.getChildCount(e),i=0;i<a;i++)this.rotateCell(n.getChildAt(e,i),t)}},mxVertexHandler.prototype.reset=function(){this.index=this.currentAlpha=null,null!=this.preview&&(this.preview.destroy(),this.preview=null),null!=this.selectionBorder&&(this.selectionBorder.node.style.display="inline",this.selectionBounds=this.getSelectionBounds(this.state),this.bounds=new mxRectangle(this.selectionBounds.x,this.selectionBounds.y,this.selectionBounds.width,this.selectionBounds.height),this.drawPreview())},mxVertexHandler.prototype.resizeCell=function(e,t,n,a,i){var o=this.graph.model.getGeometry(e);if(null!=o)if(a==mxEvent.LABEL_HANDLE)a=this.graph.view.scale,t=(this.labelShape.bounds.getCenterX()-this.startX)/a,n=(this.labelShape.bounds.getCenterY()-this.startY)/a,o=o.clone(),null==o.offset?o.offset=new mxPoint(t,n):(o.offset.x+=t,o.offset.y+=n),this.graph.model.setGeometry(e,o);else{if(a=this.union(o,t,n,a,i,1,new mxPoint(0,0)),0!=(r=mxUtils.toRadians(this.state.style[mxConstants.STYLE_ROTATION]||"0"))){t=a.getCenterX()-o.getCenterX(),n=a.getCenterY()-o.getCenterY(),i=Math.cos(r);var s=Math.sin(r),r=i*t-s*n-t;t=s*t+i*n-n,n=a.x-o.x;var l=a.y-o.y,d=i*n-s*l;i=s*n+i*l,a.x+=r,a.y+=t,this.graph.isCellCollapsed(e)||0==r&&0==t||(n=o.x-a.x+d,l=o.y-a.y+i,this.moveChildren(e,n,l))}this.graph.resizeCell(e,a)}},mxVertexHandler.prototype.moveChildren=function(e,t,n){for(var a=this.graph.getModel(),i=a.getChildCount(e),o=0;o<i;o++){var s=a.getChildAt(e,o);if(a.isVertex(s)){var r=this.graph.getCellGeometry(s);null!=r&&!r.relative&&(r=r.clone(),r.x+=t,r.y+=n,a.setGeometry(s,r))}}},mxVertexHandler.prototype.union=function(e,t,n,a,i,o,s){if(this.singleSizer){s=e.x+e.width+t;var r=e.y+e.height+n;return i&&(s=this.graph.snap(s/o)*o,r=this.graph.snap(r/o)*o),(o=new mxRectangle(e.x,e.y,0,0)).add(new mxRectangle(s,r,0,0)),o}var l=(r=e.x-s.x*o)+e.width,d=e.y-s.y*o;return e=d+e.height,4<a?(e+=n,i&&(e=this.graph.snap(e/o)*o)):3>a&&(d+=n,i&&(d=this.graph.snap(d/o)*o)),0==a||3==a||5==a?(r+=t,i&&(r=this.graph.snap(r/o)*o)):2!=a&&4!=a&&7!=a||(l+=t,i&&(l=this.graph.snap(l/o)*o)),i=l-r,e-=d,0>i&&(r+=i,i=Math.abs(i)),0>e&&(d+=e,e=Math.abs(e)),new mxRectangle(r+s.x*o,d+s.y*o,i,e)},mxVertexHandler.prototype.redraw=function(){this.selectionBounds=this.getSelectionBounds(this.state),this.bounds=new mxRectangle(this.state.x,this.state.y,this.state.width,this.state.height);var e=this.state;if(null!=this.sizers){var t=e.x+e.width,n=e.y+e.height;if(this.singleSizer)this.moveSizerTo(this.sizers[0],t,n);else{var a=e.x+e.width/2,i=e.y+e.height/2;if(1<this.sizers.length){var o=mxUtils.toRadians(e.style[mxConstants.STYLE_ROTATION]||"0"),s=Math.cos(o),o=Math.sin(o),r=new mxPoint(e.getCenterX(),e.getCenterY()),l=mxUtils.getRotatedPoint(new mxPoint(e.x,e.y),s,o,r);this.moveSizerTo(this.sizers[0],l.x,l.y),l.x=a,l.y=e.y,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[1],l.x,l.y),l.x=t,l.y=e.y,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[2],l.x,l.y),l.x=e.x,l.y=i,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[3],l.x,l.y),l.x=t,l.y=i,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[4],l.x,l.y),l.x=e.x,l.y=n,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[5],l.x,l.y),l.x=a,l.y=n,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[6],l.x,l.y),l.x=t,l.y=n,l=mxUtils.getRotatedPoint(l,s,o,r),this.moveSizerTo(this.sizers[7],l.x,l.y),this.moveSizerTo(this.sizers[8],a+e.absoluteOffset.x,i+e.absoluteOffset.y)}else 2<=this.state.width&&2<=this.state.height?this.moveSizerTo(this.sizers[0],a+e.absoluteOffset.x,i+e.absoluteOffset.y):this.moveSizerTo(this.sizers[0],e.x,e.y)}}null!=this.rotationShape&&(o=mxUtils.toRadians(this.state.style[mxConstants.STYLE_ROTATION]||"0"),s=Math.cos(o),o=Math.sin(o),r=new mxPoint(this.state.getCenterX(),this.state.getCenterY()),l=mxUtils.getRotatedPoint(new mxPoint(e.x+e.width/2,e.y-16),s,o,r),this.moveSizerTo(this.rotationShape,l.x,l.y)),this.selectionBorder.rotation=Number(this.state.style[mxConstants.STYLE_ROTATION]||"0"),this.drawPreview()},mxVertexHandler.prototype.drawPreview=function(){null!=this.preview&&(this.preview.bounds=this.bounds,this.preview.node.parentNode==this.graph.container&&(this.preview.bounds.width=Math.max(0,this.preview.bounds.width-1),this.preview.bounds.height=Math.max(0,this.preview.bounds.height-1)),this.preview.rotation=Number(this.state.style[mxConstants.STYLE_ROTATION]||"0"),this.preview.redraw()),this.selectionBorder.bounds=this.bounds,this.selectionBorder.redraw()},mxVertexHandler.prototype.destroy=function(){if(null!=this.preview&&(this.preview.destroy(),this.preview=null),this.selectionBorder.destroy(),this.labelShape=this.selectionBorder=null,null!=this.sizers)for(var e=0;e<this.sizers.length;e++)this.sizers[e].destroy(),this.sizers[e]=null},mxEdgeHandler.prototype.graph=null,mxEdgeHandler.prototype.state=null,mxEdgeHandler.prototype.marker=null,mxEdgeHandler.prototype.constraintHandler=null,mxEdgeHandler.prototype.error=null,mxEdgeHandler.prototype.shape=null,mxEdgeHandler.prototype.bends=null,mxEdgeHandler.prototype.labelShape=null,mxEdgeHandler.prototype.cloneEnabled=!0,mxEdgeHandler.prototype.addEnabled=!1,mxEdgeHandler.prototype.removeEnabled=!1,mxEdgeHandler.prototype.preferHtml=!1,mxEdgeHandler.prototype.allowHandleBoundsCheck=!0,mxEdgeHandler.prototype.snapToTerminals=!1,mxEdgeHandler.prototype.handleImage=null,mxEdgeHandler.prototype.tolerance=0,mxEdgeHandler.prototype.init=function(){if(this.graph=this.state.view.graph,this.marker=this.createMarker(),this.constraintHandler=new mxConstraintHandler(this.graph),this.points=[],this.abspoints=this.getSelectionPoints(this.state),this.shape=this.createSelectionShape(this.abspoints),this.shape.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_MIXEDHTML:mxConstants.DIALECT_SVG,this.shape.init(this.graph.getView().getOverlayPane()),this.shape.svgStrokeTolerance=0,this.shape.node.style.cursor=mxConstants.CURSOR_MOVABLE_EDGE,mxEvent.addListener(this.shape.node,"dblclick",mxUtils.bind(this,function(e){this.graph.dblClick(e,this.state.cell)})),mxEvent.addGestureListeners(this.shape.node,mxUtils.bind(this,function(e){this.addEnabled&&this.isAddPointEvent(e)?this.addPoint(this.state,e):this.graph.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e,this.state))}),mxUtils.bind(this,function(e){n=this.state.cell;if(null!=this.index){var t=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),n=this.graph.getCellAt(t.x,t.y);this.graph.isSwimlane(n)&&this.graph.hitsSwimlaneContent(n,t.x,t.y)&&(n=null)}this.graph.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(e,this.graph.getView().getState(n)))}),mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(e,this.state))})),this.preferHtml=null!=this.state.text&&this.state.text.node.parentNode==this.graph.container,!this.preferHtml){var e=this.state.getVisibleTerminalState(!0);null!=e&&(this.preferHtml=null!=e.text&&e.text.node.parentNode==this.graph.container),this.preferHtml||null!=(e=this.state.getVisibleTerminalState(!1))&&(this.preferHtml=null!=e.text&&e.text.node.parentNode==this.graph.container)}(this.graph.getSelectionCount()<mxGraphHandler.prototype.maxCells||0>=mxGraphHandler.prototype.maxCells)&&(this.bends=this.createBends()),this.label=new mxPoint(this.state.absoluteOffset.x,this.state.absoluteOffset.y),this.labelShape=new mxRectangleShape(new mxRectangle,mxConstants.LABEL_HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR),this.labelShape.pointerEvents=!1,this.initBend(this.labelShape),this.labelShape.node.style.cursor=mxConstants.CURSOR_LABEL_HANDLE,mxEvent.redirectMouseEvents(this.labelShape.node,this.graph,this.state),this.redraw()},mxEdgeHandler.prototype.isAddPointEvent=function(e){return mxEvent.isShiftDown(e)},mxEdgeHandler.prototype.isRemovePointEvent=function(e){return mxEvent.isShiftDown(e)},mxEdgeHandler.prototype.getSelectionPoints=function(e){return e.absolutePoints},mxEdgeHandler.prototype.createSelectionShape=function(e){return e=new mxPolyline(e,this.getSelectionColor()),e.strokewidth=this.getSelectionStrokeWidth(),e.isDashed=this.isSelectionDashed(),e},mxEdgeHandler.prototype.getSelectionColor=function(){return mxConstants.EDGE_SELECTION_COLOR},mxEdgeHandler.prototype.getSelectionStrokeWidth=function(){return mxConstants.EDGE_SELECTION_STROKEWIDTH},mxEdgeHandler.prototype.isSelectionDashed=function(){return mxConstants.EDGE_SELECTION_DASHED},mxEdgeHandler.prototype.isConnectableCell=function(e){return!0},mxEdgeHandler.prototype.createMarker=function(){var e=new mxCellMarker(this.graph),t=this;return e.getCell=function(e){var n=mxCellMarker.prototype.getCell.apply(this,arguments);if(!t.isConnectableCell(n))return null;var a=t.graph.getModel();return(n==t.state.cell||null!=n&&!t.graph.connectableEdges&&a.isEdge(n))&&(n=null),n},e.isValidState=function(e){var n=t.graph.getModel(),n=null!=(n=t.graph.view.getTerminalPort(e,t.graph.view.getState(n.getTerminal(t.state.cell,!t.isSource)),!t.isSource))?n.cell:null;return t.error=t.validateConnection(t.isSource?e.cell:n,t.isSource?n:e.cell),null==t.error},e},mxEdgeHandler.prototype.validateConnection=function(e,t){return this.graph.getEdgeValidationError(this.state.cell,e,t)},mxEdgeHandler.prototype.createBends=function(){for(var e=this.state.cell,t=[],n=0;n<this.abspoints.length;n++)if(this.isHandleVisible(n)){var a=n==this.abspoints.length-1;if((a=0==n||a)||this.graph.isCellBendable(e)){var i=this.createHandleShape(n);if(this.initBend(i),mxClient.IS_TOUCH&&i.node.setAttribute("pointer-events","none"),this.isHandleEnabled(n))if(mxClient.IS_TOUCH){var o=mxUtils.bind(this,function(e){return e=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),this.graph.view.getState(this.graph.getCellAt(e.x,e.y))});mxEvent.redirectMouseEvents(i.node,this.graph,o)}else i.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(i.node,this.graph,this.state);t.push(i),a||(this.points.push(new mxPoint(0,0)),i.node.style.visibility="hidden")}}return t},mxEdgeHandler.prototype.isHandleEnabled=function(e){return!0},mxEdgeHandler.prototype.isHandleVisible=function(e){return!0},mxEdgeHandler.prototype.createHandleShape=function(e){return null!=this.handleImage?new mxImageShape(new mxRectangle(0,0,this.handleImage.width,this.handleImage.height),this.handleImage.src):(e=mxConstants.HANDLE_SIZE,this.preferHtml&&(e-=1),new mxRectangleShape(new mxRectangle(0,0,e,e),mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR))},mxEdgeHandler.prototype.initBend=function(e){this.preferHtml?(e.dialect=mxConstants.DIALECT_STRICTHTML,e.init(this.graph.container)):(e.dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_MIXEDHTML:mxConstants.DIALECT_SVG,e.init(this.graph.getView().getOverlayPane()))},mxEdgeHandler.prototype.getHandleForEvent=function(e){if(null!=this.bends)for(var t=this.tolerance,t=this.allowHandleBoundsCheck&&(mxClient.IS_IE||0<t)?new mxRectangle(e.getGraphX()-t,e.getGraphY()-t,2*t,2*t):null,n=0;n<this.bends.length;n++)if((e.isSource(this.bends[n])||null!=t&&mxUtils.intersects(this.bends[n].bounds,t))&&"hidden"!=this.bends[n].node.style.visibility)return n;return!(e.isSource(this.labelShape)&&"hidden"!=this.labelShape.node.style.visibility||e.isSource(this.state.text))||(mxClient.IS_SF||mxClient.IS_GC)&&"SELECT"==e.getSource().nodeName?null:mxEvent.LABEL_HANDLE},mxEdgeHandler.prototype.mouseDown=function(e,t){var n=null;null!=(n=this.getHandleForEvent(t))&&!t.isConsumed()&&this.graph.isEnabled()&&!this.graph.isForceMarqueeEvent(t.getEvent())&&(this.removeEnabled&&this.isRemovePointEvent(t.getEvent())?this.removePoint(this.state,n):(n!=mxEvent.LABEL_HANDLE||this.graph.isLabelMovable(t.getCell()))&&this.start(t.getX(),t.getY(),n),t.consume())},mxEdgeHandler.prototype.start=function(e,t,n){this.startX=e,this.startY=t,this.isSource=null!=this.bends&&0==n,this.isTarget=null!=this.bends&&n==this.bends.length-1,this.isLabel=n==mxEvent.LABEL_HANDLE,this.isSource||this.isTarget?(e=this.state.cell,(null==(t=this.graph.model.getTerminal(e,this.isSource))&&this.graph.isTerminalPointMovable(e,this.isSource)||null!=t&&this.graph.isCellDisconnectable(e,t,this.isSource))&&(this.index=n)):this.index=n},mxEdgeHandler.prototype.clonePreviewState=function(e,t){return this.state.clone()},mxEdgeHandler.prototype.getSnapToTerminalTolerance=function(){return this.graph.gridSize*this.graph.view.scale/2},mxEdgeHandler.prototype.getPointForEvent=function(e){var t=new mxPoint(e.getGraphX(),e.getGraphY()),n=this.getSnapToTerminalTolerance(),a=this.graph.getView(),i=!1,o=!1;if(this.snapToTerminals&&0<n){var s=function(e){if(null!=e){var a=e.x;Math.abs(t.x-a)<n&&(t.x=a,i=!0),e=e.y,Math.abs(t.y-e)<n&&(t.y=e,o=!0)}},r=function(e){null!=e&&s.call(this,new mxPoint(a.getRoutingCenterX(e),a.getRoutingCenterY(e)))};if(r.call(this,this.state.getVisibleTerminalState(!0)),r.call(this,this.state.getVisibleTerminalState(!1)),null!=this.abspoints)for(r=0;r<this.abspoints;r++)r!=this.index&&s.call(this,this.abspoints[r])}return this.graph.isGridEnabledEvent(e.getEvent())&&(e=a.scale,r=a.translate,i||(t.x=(this.graph.snap(t.x/e-r.x)+r.x)*e),o||(t.y=(this.graph.snap(t.y/e-r.y)+r.y)*e)),t},mxEdgeHandler.prototype.getPreviewTerminalState=function(e){this.constraintHandler.update(e,this.isSource),this.marker.process(e),e=this.marker.getValidState();var t=null;return null!=this.constraintHandler.currentFocus&&null!=this.constraintHandler.currentConstraint&&this.marker.reset(),null!=e?t=e:null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&(t=this.constraintHandler.currentFocus),t},mxEdgeHandler.prototype.getPreviewPoints=function(e){var t=null!=(t=this.graph.getCellGeometry(this.state.cell)).points?t.points.slice():null;return this.isSource||this.isTarget?this.graph.resetEdgesOnConnect&&(t=null):(this.convertPoint(e,!1),null==t?t=[e]:t[this.index-1]=e),t},mxEdgeHandler.prototype.updatePreviewState=function(e,t,n){var a=this.isSource?n:this.state.getVisibleTerminalState(!0),i=this.isTarget?n:this.state.getVisibleTerminalState(!1),o=this.graph.getConnectionConstraint(e,a,!0),s=this.graph.getConnectionConstraint(e,i,!1),r=this.constraintHandler.currentConstraint;null==r&&(r=new mxConnectionConstraint),this.isSource?o=r:this.isTarget&&(s=r),(!this.isSource||null!=a)&&e.view.updateFixedTerminalPoint(e,a,!0,o),(!this.isTarget||null!=i)&&e.view.updateFixedTerminalPoint(e,i,!1,s),(this.isSource||this.isTarget)&&null==n&&(e.setAbsoluteTerminalPoint(t,this.isSource),null==this.marker.getMarkedState()&&(this.error=this.graph.allowDanglingEdges?null:"")),e.view.updatePoints(e,this.points,a,i),e.view.updateFloatingTerminalPoints(e,a,i)},mxEdgeHandler.prototype.mouseMove=function(e,t){if(null!=this.index&&null!=this.marker){var n=this.getPointForEvent(t);if(this.isLabel)this.label.x=n.x,this.label.y=n.y;else{this.points=this.getPreviewPoints(n);var a=this.isSource||this.isTarget?this.getPreviewTerminalState(t):null,i=this.clonePreviewState(n,null!=a?a.cell:null);this.updatePreviewState(i,n,a),this.setPreviewColor(null==this.error?this.marker.validColor:this.marker.invalidColor),this.abspoints=i.absolutePoints,this.active=!0}this.drawPreview(),mxEvent.consume(t.getEvent()),t.consume()}else mxClient.IS_IE&&null!=this.getHandleForEvent(t)&&t.consume(!1)},mxEdgeHandler.prototype.mouseUp=function(e,t){if(null!=this.index&&null!=this.marker){var n=this.state.cell;if(t.getX()!=this.startX||t.getY()!=this.startY)if(null!=this.error)0<this.error.length&&this.graph.validationAlert(this.error);else if(this.isLabel)this.moveLabel(this.state,this.label.x,this.label.y);else if(this.isSource||this.isTarget){var a=null;if(null!=this.constraintHandler.currentConstraint&&null!=this.constraintHandler.currentFocus&&(a=this.constraintHandler.currentFocus.cell),null==a&&this.marker.hasValidState()&&(a=this.marker.validState.cell),null!=a)n=this.connect(n,a,this.isSource,this.graph.isCloneEvent(t.getEvent())&&this.cloneEnabled&&this.graph.isCellsCloneable(),t);else if(this.graph.isAllowDanglingEdges()){(a=this.abspoints[this.isSource?0:this.abspoints.length-1]).x=a.x/this.graph.view.scale-this.graph.view.translate.x,a.y=a.y/this.graph.view.scale-this.graph.view.translate.y;var i=this.graph.getView().getState(this.graph.getModel().getParent(n));null!=i&&(a.x-=i.origin.x,a.y-=i.origin.y),a.x-=this.graph.panDx/this.graph.view.scale,a.y-=this.graph.panDy/this.graph.view.scale,this.changeTerminalPoint(n,a,this.isSource)}}else this.active?this.changePoints(n,this.points):(this.graph.getView().invalidate(this.state.cell),this.graph.getView().revalidate(this.state.cell));null!=this.marker&&(this.reset(),n!=this.state.cell&&this.graph.setSelectionCell(n)),t.consume()}},mxEdgeHandler.prototype.reset=function(){this.points=this.label=this.index=this.error=null,this.isTarget=this.isSource=this.isLabel=this.active=!1,this.marker.reset(),this.constraintHandler.reset(),this.setPreviewColor(mxConstants.EDGE_SELECTION_COLOR),this.redraw()},mxEdgeHandler.prototype.setPreviewColor=function(e){null!=this.shape&&(this.shape.stroke=e)},mxEdgeHandler.prototype.convertPoint=function(e,t){var n=this.graph.getView().getScale(),a=this.graph.getView().getTranslate();return t&&(e.x=this.graph.snap(e.x),e.y=this.graph.snap(e.y)),e.x=Math.round(e.x/n-a.x),e.y=Math.round(e.y/n-a.y),null!=(n=this.graph.getView().getState(this.graph.getModel().getParent(this.state.cell)))&&(e.x-=n.origin.x,e.y-=n.origin.y),e},mxEdgeHandler.prototype.moveLabel=function(e,t,n){var a=this.graph.getModel();if(null!=(i=a.getGeometry(e.cell))){var i=i.clone(),o=this.graph.getView().getRelativePoint(e,t,n);i.x=o.x,i.y=o.y;var s=this.graph.getView().scale;i.offset=new mxPoint(0,0),o=this.graph.view.getPoint(e,i),i.offset=new mxPoint((t-o.x)/s,(n-o.y)/s),a.setGeometry(e.cell,i)}},mxEdgeHandler.prototype.connect=function(e,t,n,a,i){var o=(i=this.graph.getModel()).getParent(e);i.beginUpdate();try{if(a){var s=e.clone();i.add(o,s,i.getChildCount(o));var r=i.getTerminal(e,!n);this.graph.connectCell(s,r,!n),e=s}var l=this.constraintHandler.currentConstraint;null==l&&(l=new mxConnectionConstraint),this.graph.connectCell(e,t,n,l)}finally{i.endUpdate()}return e},mxEdgeHandler.prototype.changeTerminalPoint=function(e,t,n){var a=this.graph.getModel(),i=a.getGeometry(e);if(null!=i){a.beginUpdate();try{(i=i.clone()).setTerminalPoint(t,n),a.setGeometry(e,i),this.graph.connectCell(e,null,n,new mxConnectionConstraint)}finally{a.endUpdate()}}},mxEdgeHandler.prototype.changePoints=function(e,t){var n=this.graph.getModel(),a=n.getGeometry(e);null!=a&&(a=a.clone(),a.points=t,n.setGeometry(e,a))},mxEdgeHandler.prototype.addPoint=function(e,t){var n=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(t),mxEvent.getClientY(t)),a=this.graph.isGridEnabledEvent(t);this.convertPoint(n,a),this.addPointAt(e,n.x,n.y),mxEvent.consume(t)},mxEdgeHandler.prototype.addPointAt=function(e,t,n){var a=this.graph.getCellGeometry(e.cell);if(t=new mxPoint(t,n),null!=a){a=a.clone(),n=this.graph.view.translate;var i=this.graph.view.scale;n=mxUtils.findNearestSegment(e,(t.x+n.x)*i,(t.y+n.y)*i),null==a.points?a.points=[t]:a.points.splice(n,0,t),this.graph.getModel().setGeometry(e.cell,a),this.destroy(),this.init()}},mxEdgeHandler.prototype.removePoint=function(e,t){if(0<t&&t<this.abspoints.length-1){var n=this.graph.getCellGeometry(this.state.cell);null!=n&&null!=n.points&&((n=n.clone()).points.splice(t-1,1),this.graph.getModel().setGeometry(e.cell,n),this.destroy(),this.init())}},mxEdgeHandler.prototype.getHandleFillColor=function(e){e=0==e;var t=this.state.cell,n=this.graph.getModel().getTerminal(t,e),a=mxConstants.HANDLE_FILLCOLOR;return null!=n&&!this.graph.isCellDisconnectable(t,n,e)||null==n&&!this.graph.isTerminalPointMovable(t,e)?a=mxConstants.LOCKED_HANDLE_FILLCOLOR:null!=n&&this.graph.isCellDisconnectable(t,n,e)&&(a=mxConstants.CONNECT_HANDLE_FILLCOLOR),a},mxEdgeHandler.prototype.redraw=function(){this.abspoints=this.state.absolutePoints.slice();var e=this.state.cell,t=mxConstants.LABEL_HANDLE_SIZE;if(this.label=new mxPoint(this.state.absoluteOffset.x,this.state.absoluteOffset.y),this.labelShape.bounds=new mxRectangle(Math.round(this.label.x-t/2),Math.round(this.label.y-t/2),t,t),this.labelShape.redraw(),t=this.graph.getLabel(e),null!=t&&0<t.length&&this.graph.isLabelMovable(e)?this.labelShape.node.style.visibility="visible":this.labelShape.node.style.visibility="hidden",null!=this.bends&&0<this.bends.length){var n=this.abspoints.length-1,e=this.abspoints[0],a=this.abspoints[0].y,t=this.bends[0].bounds;this.bends[0].bounds=new mxRectangle(Math.round(this.abspoints[0].x-t.width/2),Math.round(a-t.height/2),t.width,t.height),this.bends[0].fill=this.getHandleFillColor(0),this.bends[0].redraw();var a=this.abspoints[n],i=this.abspoints[n].x,n=this.abspoints[n].y,o=this.bends.length-1,t=this.bends[o].bounds;this.bends[o].bounds=new mxRectangle(Math.round(i-t.width/2),Math.round(n-t.height/2),t.width,t.height),this.bends[o].fill=this.getHandleFillColor(o),this.bends[o].redraw(),this.redrawInnerBends(e,a)}this.drawPreview()},mxEdgeHandler.prototype.redrawInnerBends=function(e,t){var n=this.graph.getModel().getGeometry(this.state.cell).points;if(null!=n){null==this.points&&(this.points=[]);for(var a=1;a<this.bends.length-1;a++)if(null!=this.bends[a])if(null!=this.abspoints[a]){var i=this.abspoints[a].x,o=this.abspoints[a].y,s=this.bends[a].bounds;this.bends[a].node.style.visibility="visible",this.bends[a].bounds=new mxRectangle(Math.round(i-s.width/2),Math.round(o-s.height/2),s.width,s.height),this.bends[a].redraw(),this.points[a-1]=n[a-1]}else this.bends[a].destroy(),this.bends[a]=null}},mxEdgeHandler.prototype.drawPreview=function(){if(this.isLabel){var e=mxConstants.LABEL_HANDLE_SIZE,e=new mxRectangle(Math.round(this.label.x-e/2),Math.round(this.label.y-e/2),e,e);this.labelShape.bounds=e,this.labelShape.redraw()}else this.shape.points=this.abspoints,this.shape.redraw()},mxEdgeHandler.prototype.destroy=function(){if(null!=this.marker&&(this.marker.destroy(),this.marker=null),null!=this.shape&&(this.shape.destroy(),this.shape=null),null!=this.labelShape&&(this.labelShape.destroy(),this.labelShape=null),null!=this.constraintHandler&&(this.constraintHandler.destroy(),this.constraintHandler=null),null!=this.bends)for(var e=0;e<this.bends.length;e++)null!=this.bends[e]&&(this.bends[e].destroy(),this.bends[e]=null)},mxUtils.extend(mxElbowEdgeHandler,mxEdgeHandler),mxElbowEdgeHandler.prototype=new mxEdgeHandler,mxElbowEdgeHandler.prototype.constructor=mxElbowEdgeHandler,mxElbowEdgeHandler.prototype.flipEnabled=!0,mxElbowEdgeHandler.prototype.doubleClickOrientationResource="none"!=mxClient.language?"doubleClickOrientation":"",mxElbowEdgeHandler.prototype.createBends=function(){var e=[],t=this.createHandleShape(0);return this.initBend(t),t.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(t.node,this.graph,this.state),e.push(t),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none"),e.push(this.createVirtualBend()),this.points.push(new mxPoint(0,0)),t=this.createHandleShape(2),this.initBend(t),t.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(t.node,this.graph,this.state),e.push(t),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none"),e},mxElbowEdgeHandler.prototype.createVirtualBend=function(){var e=this.createHandleShape();this.initBend(e);var t=this.getCursorForBend();return e.node.style.cursor=t,t=mxUtils.bind(this,function(e){!mxEvent.isConsumed(e)&&this.flipEnabled&&(this.graph.flipEdge(this.state.cell,e),mxEvent.consume(e))}),mxEvent.redirectMouseEvents(e.node,this.graph,this.state,null,null,null,t),this.graph.isCellBendable(this.state.cell)||(e.node.style.display="none"),e},mxElbowEdgeHandler.prototype.getCursorForBend=function(){return this.state.style[mxConstants.STYLE_EDGE]==mxEdgeStyle.TopToBottom||this.state.style[mxConstants.STYLE_EDGE]==mxConstants.EDGESTYLE_TOPTOBOTTOM||(this.state.style[mxConstants.STYLE_EDGE]==mxEdgeStyle.ElbowConnector||this.state.style[mxConstants.STYLE_EDGE]==mxConstants.EDGESTYLE_ELBOW)&&this.state.style[mxConstants.STYLE_ELBOW]==mxConstants.ELBOW_VERTICAL?"row-resize":"col-resize"},mxElbowEdgeHandler.prototype.getTooltipForNode=function(e){var t=null;return null==this.bends||null==this.bends[1]||e!=this.bends[1].node&&e.parentNode!=this.bends[1].node||(t=this.doubleClickOrientationResource,t=mxResources.get(t)||t),t},mxElbowEdgeHandler.prototype.convertPoint=function(e,t){var n=this.graph.getView().getScale(),a=this.graph.getView().getTranslate(),i=this.state.origin;t&&(e.x=this.graph.snap(e.x),e.y=this.graph.snap(e.y)),e.x=Math.round(e.x/n-a.x-i.x),e.y=Math.round(e.y/n-a.y-i.y)},mxElbowEdgeHandler.prototype.redrawInnerBends=function(e,t){var n=null==(n=null!=(n=this.graph.getModel().getGeometry(this.state.cell).points)?n[0]:null)?new mxPoint(e.x+(t.x-e.x)/2,e.y+(t.y-e.y)/2):new mxPoint(this.graph.getView().scale*(n.x+this.graph.getView().translate.x+this.state.origin.x),this.graph.getView().scale*(n.y+this.graph.getView().translate.y+this.state.origin.y)),a=(i=this.bends[1].bounds).width,i=i.height;null==this.handleImage&&(i=a=mxConstants.HANDLE_SIZE);var o=new mxRectangle(Math.round(n.x-a/2),Math.round(n.y-i/2),a,i);null==this.handleImage&&"hidden"!=this.labelShape.node.style.visibility&&mxUtils.intersects(o,this.labelShape.bounds)&&(a+=3,i+=3,o=new mxRectangle(Math.round(n.x-a/2),Math.round(n.y-i/2),a,i)),this.bends[1].bounds=o,this.bends[1].redraw()},mxUtils.extend(mxEdgeSegmentHandler,mxEdgeHandler),mxEdgeSegmentHandler.prototype=new mxElbowEdgeHandler,mxEdgeSegmentHandler.prototype.constructor=mxEdgeSegmentHandler,mxEdgeSegmentHandler.prototype.getPreviewPoints=function(e){if(this.isSource||this.isTarget)return mxElbowEdgeHandler.prototype.getPreviewPoints.apply(this,arguments);this.convertPoint(e,!1);var t=this.state.absolutePoints,n=t[0].clone();this.convertPoint(n,!1);for(var a=[],i=1;i<t.length;i++){var o=t[i].clone();this.convertPoint(o,!1),i==this.index&&(n.x==o.x?(n.x=e.x,o.x=e.x):(n.y=e.y,o.y=e.y)),i<t.length-1&&a.push(o),n=o}if(1==a.length){if(n=this.state.view,i=this.state.getVisibleTerminalState(!0),null!=(o=this.state.getVisibleTerminalState(!1))&null!=i){var s=this.state.origin.x,r=this.state.origin.y;mxUtils.contains(o,a[0].x+s,a[0].y+r)?t[1].y==t[2].y?a[0].y=n.getRoutingCenterY(i)-r:a[0].x=n.getRoutingCenterX(i)-s:mxUtils.contains(i,a[0].x+s,a[0].y+r)&&(t[1].y==t[0].y?a[0].y=n.getRoutingCenterY(o)-r:a[0].x=n.getRoutingCenterX(o)-s)}}else 0==a.length&&(a=[e]);return a},mxEdgeSegmentHandler.prototype.createBends=function(){var e=[],t=this.createHandleShape(0);this.initBend(t),t.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(t.node,this.graph,this.state),e.push(t),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none");var n=this.state.absolutePoints;if(this.graph.isCellBendable(this.state.cell)){null==this.points&&(this.points=[]);for(var a=0;a<n.length-1;a++)t=this.createVirtualBend(),e.push(t),t.node.style.cursor=0==n[a].x-n[a+1].x?"col-resize":"row-resize",this.points.push(new mxPoint(0,0)),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none")}return t=this.createHandleShape(n.length),this.initBend(t),t.node.style.cursor=mxConstants.CURSOR_BEND_HANDLE,mxEvent.redirectMouseEvents(t.node,this.graph,this.state),e.push(t),mxClient.IS_TOUCH&&t.node.setAttribute("pointer-events","none"),e},mxEdgeSegmentHandler.prototype.redraw=function(){this.refresh(),mxEdgeHandler.prototype.redraw.apply(this,arguments)},mxEdgeSegmentHandler.prototype.refresh=function(){if(null!=this.bends){for(var e=0;e<this.bends.length;e++)null!=this.bends[e]&&(this.bends[e].destroy(),this.bends[e]=null);this.bends=this.createBends()}},mxEdgeSegmentHandler.prototype.redrawInnerBends=function(e,t){if(this.graph.isCellBendable(this.state.cell)){var n=mxConstants.HANDLE_SIZE,a=this.state.absolutePoints;if(null!=a&&1<a.length)for(var i=0;i<this.state.absolutePoints.length-1;i++)if(null!=this.bends[i+1]){e=a[i],t=a[i+1];var o=new mxPoint(e.x+(t.x-e.x)/2,e.y+(t.y-e.y)/2);this.bends[i+1].bounds=new mxRectangle(Math.round(o.x-n/2),Math.round(o.y-n/2),n,n),this.bends[i+1].redraw()}}},mxEdgeSegmentHandler.prototype.changePoints=function(e,t){t=[];var n=this.abspoints;if(1<n.length)for(var a=n[0],i=n[1],o=2;o<n.length;o++){var s=n[o];Math.round(a.x)==Math.round(i.x)&&Math.round(i.x)==Math.round(s.x)||Math.round(a.y)==Math.round(i.y)&&Math.round(i.y)==Math.round(s.y)||(a=i,i=i.clone(),this.convertPoint(i,!1),t.push(i)),i=s}mxElbowEdgeHandler.prototype.changePoints.apply(this,arguments)},mxKeyHandler.prototype.graph=null,mxKeyHandler.prototype.target=null,mxKeyHandler.prototype.normalKeys=null,mxKeyHandler.prototype.shiftKeys=null,mxKeyHandler.prototype.controlKeys=null,mxKeyHandler.prototype.controlShiftKeys=null,mxKeyHandler.prototype.enabled=!0,mxKeyHandler.prototype.isEnabled=function(){return this.enabled},mxKeyHandler.prototype.setEnabled=function(e){this.enabled=e},mxKeyHandler.prototype.bindKey=function(e,t){this.normalKeys[e]=t},mxKeyHandler.prototype.bindShiftKey=function(e,t){this.shiftKeys[e]=t},mxKeyHandler.prototype.bindControlKey=function(e,t){this.controlKeys[e]=t},mxKeyHandler.prototype.bindControlShiftKey=function(e,t){this.controlShiftKeys[e]=t},mxKeyHandler.prototype.isControlDown=function(e){return mxEvent.isControlDown(e)},mxKeyHandler.prototype.getFunction=function(e){return null!=e?this.isControlDown(e)?mxEvent.isShiftDown(e)?this.controlShiftKeys[e.keyCode]:this.controlKeys[e.keyCode]:mxEvent.isShiftDown(e)?this.shiftKeys[e.keyCode]:this.normalKeys[e.keyCode]:null},mxKeyHandler.prototype.isGraphEvent=function(e){if((e=mxEvent.getSource(e))==this.target||e.parentNode==this.target||null!=this.graph.cellEditor&&e==this.graph.cellEditor.textarea)return!0;for(;null!=e;){if(e==this.graph.container)return!0;e=e.parentNode}return!1},mxKeyHandler.prototype.keyDown=function(e){if(this.graph.isEnabled()&&!mxEvent.isConsumed(e)&&this.isGraphEvent(e)&&this.isEnabled())if(27==e.keyCode)this.escape(e);else if(!this.graph.isEditing()){var t=this.getFunction(e);null!=t&&(t(e),mxEvent.consume(e))}},mxKeyHandler.prototype.escape=function(e){this.graph.isEscapeEnabled()&&this.graph.escape(e)},mxKeyHandler.prototype.destroy=function(){this.target=null},mxTooltipHandler.prototype.zIndex=10005,mxTooltipHandler.prototype.graph=null,mxTooltipHandler.prototype.delay=null,mxTooltipHandler.prototype.hideOnHover=!1,mxTooltipHandler.prototype.enabled=!0,mxTooltipHandler.prototype.isEnabled=function(){return this.enabled},mxTooltipHandler.prototype.setEnabled=function(e){this.enabled=e},mxTooltipHandler.prototype.isHideOnHover=function(){return this.hideOnHover},mxTooltipHandler.prototype.setHideOnHover=function(e){this.hideOnHover=e},mxTooltipHandler.prototype.init=function(){null!=document.body&&(this.div=document.createElement("div"),this.div.className="mxTooltip",this.div.style.visibility="hidden",this.div.style.zIndex=this.zIndex,document.body.appendChild(this.div),mxEvent.addListener(this.div,"mousedown",mxUtils.bind(this,function(e){this.hideTooltip()})))},mxTooltipHandler.prototype.mouseDown=function(e,t){this.reset(t,!1),this.hideTooltip()},mxTooltipHandler.prototype.mouseMove=function(e,t){t.getX()==this.lastX&&t.getY()==this.lastY||(this.reset(t,!0),(this.isHideOnHover()||t.getState()!=this.state||t.getSource()!=this.node&&(!this.stateSource||null!=t.getState()&&this.stateSource==(t.isSource(t.getState().shape)||!t.isSource(t.getState().text))))&&this.hideTooltip()),this.lastX=t.getX(),this.lastY=t.getY()},mxTooltipHandler.prototype.mouseUp=function(e,t){this.reset(t,!0),this.hideTooltip()},mxTooltipHandler.prototype.resetTimer=function(){null!=this.thread&&(window.clearTimeout(this.thread),this.thread=null)},mxTooltipHandler.prototype.reset=function(e,t){if(this.resetTimer(),t&&this.isEnabled()&&null!=e.getState()&&(null==this.div||"hidden"==this.div.style.visibility)){var n=e.getState(),a=e.getSource(),i=e.getX(),o=e.getY(),s=e.isSource(n.shape)||e.isSource(n.text);this.thread=window.setTimeout(mxUtils.bind(this,function(){if(!this.graph.isEditing()&&!this.graph.panningHandler.isMenuShowing()){var e=this.graph.getTooltip(n,a,i,o);this.show(e,i,o),this.state=n,this.node=a,this.stateSource=s}}),this.delay)}},mxTooltipHandler.prototype.hide=function(){this.resetTimer(),this.hideTooltip()},mxTooltipHandler.prototype.hideTooltip=function(){null!=this.div&&(this.div.style.visibility="hidden")},mxTooltipHandler.prototype.show=function(e,t,n){if(null!=e&&0<e.length){null==this.div&&this.init();var a=mxUtils.getScrollOrigin();this.div.style.left=t+a.x+"px",this.div.style.top=n+mxConstants.TOOLTIP_VERTICAL_OFFSET+a.y+"px",mxUtils.isNode(e)?(this.div.innerHTML="",this.div.appendChild(e)):this.div.innerHTML=e.replace(/\n/g,"<br>"),this.div.style.visibility="",mxUtils.fit(this.div)}},mxTooltipHandler.prototype.destroy=function(){this.graph.removeMouseListener(this),mxEvent.release(this.div),null!=this.div&&null!=this.div.parentNode&&this.div.parentNode.removeChild(this.div),this.div=null},mxUtils.extend(mxCellTracker,mxCellMarker),mxCellTracker.prototype.mouseDown=function(e,t){},mxCellTracker.prototype.mouseMove=function(e,t){this.isEnabled()&&this.process(t)},mxCellTracker.prototype.mouseUp=function(e,t){this.reset()},mxCellTracker.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,this.graph.removeMouseListener(this),mxCellMarker.prototype.destroy.apply(this))},mxCellHighlight.prototype.keepOnTop=!1,mxCellHighlight.prototype.graph=!0,mxCellHighlight.prototype.state=null,mxCellHighlight.prototype.spacing=2,mxCellHighlight.prototype.resetHandler=null,mxCellHighlight.prototype.setHighlightColor=function(e){this.highlightColor=e,null!=this.shape&&(this.shape.stroke=e)},mxCellHighlight.prototype.drawHighlight=function(){this.shape=this.createShape(),this.repaint(),!this.keepOnTop&&this.shape.node.parentNode.firstChild!=this.shape.node&&this.shape.node.parentNode.insertBefore(this.shape.node,this.shape.node.parentNode.firstChild)},mxCellHighlight.prototype.createShape=function(){var e=null;return(e=this.graph.model.isEdge(this.state.cell)?new mxPolyline(this.state.absolutePoints,this.highlightColor,this.strokeWidth):new mxRectangleShape(new mxRectangle,null,this.highlightColor,this.strokeWidth)).dialect=this.graph.dialect!=mxConstants.DIALECT_SVG?mxConstants.DIALECT_VML:mxConstants.DIALECT_SVG,e.init(this.graph.getView().getOverlayPane()),mxEvent.redirectMouseEvents(e.node,this.graph,this.state),e.svgStrokeTolerance=0,e.pointerEvents=!1,e.isDashed=this.dashed,e},mxCellHighlight.prototype.repaint=function(){if(null!=this.state&&null!=this.shape){var e=0;this.graph.model.isEdge(this.state.cell)?this.shape.points=this.state.absolutePoints:(this.shape.bounds=new mxRectangle(this.state.x-this.spacing,this.state.y-this.spacing,this.state.width+2*this.spacing,this.state.height+2*this.spacing),e=Number(this.state.style[mxConstants.STYLE_ROTATION]||"0")),null!=this.state.shape&&this.shape.setCursor(this.state.shape.getCursor()),0!=e&&(this.shape.rotation=e),this.shape.redraw()}},mxCellHighlight.prototype.hide=function(){this.highlight(null)},mxCellHighlight.prototype.highlight=function(e){this.state!=e&&(null!=this.shape&&(this.shape.destroy(),this.shape=null),this.state=e,null!=this.state&&this.drawHighlight())},mxCellHighlight.prototype.destroy=function(){this.graph.getView().removeListener(this.repaintHandler),this.graph.getModel().removeListener(this.repaintHandler),this.graph.getView().removeListener(this.resetHandler),this.graph.getModel().removeListener(this.resetHandler),null!=this.shape&&(this.shape.destroy(),this.shape=null)},mxDefaultKeyHandler.prototype.editor=null,mxDefaultKeyHandler.prototype.handler=null,mxDefaultKeyHandler.prototype.bindAction=function(e,t,n){var a=mxUtils.bind(this,function(){this.editor.execute(t)});n?this.handler.bindControlKey(e,a):this.handler.bindKey(e,a)},mxDefaultKeyHandler.prototype.destroy=function(){this.handler.destroy(),this.handler=null},mxDefaultPopupMenu.prototype.imageBasePath=null,mxDefaultPopupMenu.prototype.config=null,mxDefaultPopupMenu.prototype.createMenu=function(e,t,n,a){if(null!=this.config){var i=this.createConditions(e,n,a);this.addItems(e,t,n,a,i,this.config.firstChild,null)}},mxDefaultPopupMenu.prototype.addItems=function(e,t,n,a,i,o,s){for(var r=!1;null!=o;){if("add"==o.nodeName){if(null==(l=o.getAttribute("if"))||i[l]){var l=o.getAttribute("as"),l=mxResources.get(l)||l,d=mxUtils.eval(mxUtils.getTextContent(o)),c=o.getAttribute("action"),m=o.getAttribute("icon"),u=o.getAttribute("iconCls");r&&(t.addSeparator(s),r=!1),null!=m&&this.imageBasePath&&(m=this.imageBasePath+m),l=this.addAction(t,e,l,m,d,c,n,s,u),this.addItems(e,t,n,a,i,o.firstChild,l)}}else"separator"==o.nodeName&&(r=!0);o=o.nextSibling}},mxDefaultPopupMenu.prototype.addAction=function(e,t,n,a,i,o,s,r,l){return e.addItem(n,a,function(e){"function"==typeof i&&i.call(t,t,s,e),null!=o&&t.execute(o,s,e)},r,l)},mxDefaultPopupMenu.prototype.createConditions=function(e,t,n){var a=e.graph.getModel(),i=a.getChildCount(t),o=[];for(o.nocell=null==t,o.ncells=1<e.graph.getSelectionCount(),o.notRoot=a.getRoot()!=a.getParent(e.graph.getDefaultParent()),o.cell=null!=t,a=null!=t&&1==e.graph.getSelectionCount(),o.nonEmpty=a&&0<i,o.expandable=a&&e.graph.isCellFoldable(t,!1),o.collapsable=a&&e.graph.isCellFoldable(t,!0),o.validRoot=a&&e.graph.isValidRoot(t),o.emptyValidRoot=o.validRoot&&0==i,o.swimlane=a&&e.graph.isSwimlane(t),i=this.config.getElementsByTagName("condition"),a=0;a<i.length;a++){var s=mxUtils.eval(mxUtils.getTextContent(i[a])),r=i[a].getAttribute("name");null!=r&&"function"==typeof s&&(o[r]=s(e,t,n))}return o},mxDefaultToolbar.prototype.editor=null,mxDefaultToolbar.prototype.toolbar=null,mxDefaultToolbar.prototype.resetHandler=null,mxDefaultToolbar.prototype.spacing=4,mxDefaultToolbar.prototype.connectOnDrop=!1,mxDefaultToolbar.prototype.init=function(e){null!=e&&(this.toolbar=new mxToolbar(e),this.toolbar.addListener(mxEvent.SELECT,mxUtils.bind(this,function(e,t){var n=t.getProperty("function");this.editor.insertFunction=null!=n?mxUtils.bind(this,function(){n.apply(this,arguments),this.toolbar.resetMode()}):null})),this.resetHandler=mxUtils.bind(this,function(){null!=this.toolbar&&this.toolbar.resetMode(!0)}),this.editor.graph.addListener(mxEvent.DOUBLE_CLICK,this.resetHandler),this.editor.addListener(mxEvent.ESCAPE,this.resetHandler))},mxDefaultToolbar.prototype.addItem=function(e,t,n,a){var i=mxUtils.bind(this,function(){null!=n&&0<n.length&&this.editor.execute(n)});return this.toolbar.addItem(e,t,i,a)},mxDefaultToolbar.prototype.addSeparator=function(e){e=e||mxClient.imageBasePath+"/separator.gif",this.toolbar.addSeparator(e)},mxDefaultToolbar.prototype.addCombo=function(){return this.toolbar.addCombo()},mxDefaultToolbar.prototype.addActionCombo=function(e){return this.toolbar.addActionCombo(e)},mxDefaultToolbar.prototype.addActionOption=function(e,t,n){var a=mxUtils.bind(this,function(){this.editor.execute(n)});this.addOption(e,t,a)},mxDefaultToolbar.prototype.addOption=function(e,t,n){return this.toolbar.addOption(e,t,n)},mxDefaultToolbar.prototype.addMode=function(e,t,n,a,i){var o=mxUtils.bind(this,function(){this.editor.setMode(n),null!=i&&i(this.editor)});return this.toolbar.addSwitchMode(e,t,o,a)},mxDefaultToolbar.prototype.addPrototype=function(e,t,n,a,i,o){var s=function(){return"function"==typeof n?n():null!=n?n.clone():null},r=mxUtils.bind(this,function(e,t){"function"==typeof i?i(this.editor,s(),e,t):this.drop(s(),e,t),this.toolbar.resetMode(),mxEvent.consume(e)});return e=this.toolbar.addMode(e,t,r,a,null,o),this.installDropHandler(e,function(e,t,n){r(t,n)}),e},mxDefaultToolbar.prototype.drop=function(e,t,n){var a=this.editor.graph,i=a.getModel();if(null!=n&&!i.isEdge(n)&&this.connectOnDrop&&a.isCellConnectable(n))this.connect(e,t,n);else{for(;null!=n&&!a.isValidDropTarget(n,[e],t);)n=i.getParent(n);this.insert(e,t,n)}},mxDefaultToolbar.prototype.insert=function(e,t,n){var a=this.editor.graph;if(a.canImportCell(e)){var i=mxEvent.getClientX(t),o=mxEvent.getClientY(t),i=mxUtils.convertPoint(a.container,i,o);return a.isSplitEnabled()&&a.isSplitTarget(n,[e],t)?a.splitEdge(n,[e],null,i.x,i.y):this.editor.addVertex(n,e,i.x,i.y)}return null},mxDefaultToolbar.prototype.connect=function(e,t,n){var a=(t=this.editor.graph).getModel();if(null!=n&&t.isCellConnectable(e)&&t.isEdgeValid(null,n,e)){var i=null;a.beginUpdate();try{var o=a.getGeometry(n),s=a.getGeometry(e).clone();s.x=o.x+(o.width-s.width)/2,s.y=o.y+(o.height-s.height)/2;var r=this.spacing*t.gridSize,l=20*a.getDirectedEdgeCount(n,!0);this.editor.horizontalFlow?s.x+=(s.width+o.width)/2+r+l:s.y+=(s.height+o.height)/2+r+l,e.setGeometry(s);var d=a.getParent(n);if(t.addCell(e,d),t.constrainChild(e),i=this.editor.createEdge(n,e),null==a.getGeometry(i)){var c=new mxGeometry;c.relative=!0,a.setGeometry(i,c)}t.addEdge(i,d,n,e)}finally{a.endUpdate()}t.setSelectionCells([e,i]),t.scrollCellToVisible(e)}},mxDefaultToolbar.prototype.installDropHandler=function(e,t){var n=document.createElement("img");n.setAttribute("src",e.getAttribute("src"));var a=mxUtils.bind(this,function(i){n.style.width=2*e.offsetWidth+"px",n.style.height=2*e.offsetHeight+"px",mxUtils.makeDraggable(e,this.editor.graph,t,n),mxEvent.removeListener(n,"load",a)});mxClient.IS_IE?a():mxEvent.addListener(n,"load",a)},mxDefaultToolbar.prototype.destroy=function(){null!=this.resetHandler&&(this.editor.graph.removeListener("dblclick",this.resetHandler),this.editor.removeListener("escape",this.resetHandler),this.resetHandler=null),null!=this.toolbar&&(this.toolbar.destroy(),this.toolbar=null)},mxLoadResources&&mxResources.add(mxClient.basePath+"/resources/editor"),mxEditor.prototype=new mxEventSource,mxEditor.prototype.constructor=mxEditor,mxEditor.prototype.askZoomResource="none"!=mxClient.language?"askZoom":"",mxEditor.prototype.lastSavedResource="none"!=mxClient.language?"lastSaved":"",mxEditor.prototype.currentFileResource="none"!=mxClient.language?"currentFile":"",mxEditor.prototype.propertiesResource="none"!=mxClient.language?"properties":"",mxEditor.prototype.tasksResource="none"!=mxClient.language?"tasks":"",mxEditor.prototype.helpResource="none"!=mxClient.language?"help":"",mxEditor.prototype.outlineResource="none"!=mxClient.language?"outline":"",mxEditor.prototype.outline=null,mxEditor.prototype.graph=null,mxEditor.prototype.graphRenderHint=null,mxEditor.prototype.toolbar=null,mxEditor.prototype.session=null,mxEditor.prototype.status=null,mxEditor.prototype.popupHandler=null,mxEditor.prototype.undoManager=null,mxEditor.prototype.keyHandler=null,mxEditor.prototype.actions=null,mxEditor.prototype.dblClickAction="edit",mxEditor.prototype.swimlaneRequired=!1,mxEditor.prototype.disableContextMenu=!0,mxEditor.prototype.insertFunction=null,mxEditor.prototype.forcedInserting=!1,mxEditor.prototype.templates=null,mxEditor.prototype.defaultEdge=null,mxEditor.prototype.defaultEdgeStyle=null,mxEditor.prototype.defaultGroup=null,mxEditor.prototype.groupBorderSize=null,mxEditor.prototype.filename=null,mxEditor.prototype.linefeed="&#xa;",mxEditor.prototype.postParameterName="xml",mxEditor.prototype.escapePostData=!0,mxEditor.prototype.urlPost=null,mxEditor.prototype.urlImage=null,mxEditor.prototype.urlInit=null,mxEditor.prototype.urlNotify=null,mxEditor.prototype.urlPoll=null,mxEditor.prototype.horizontalFlow=!1,mxEditor.prototype.layoutDiagram=!1,mxEditor.prototype.swimlaneSpacing=0,mxEditor.prototype.maintainSwimlanes=!1,mxEditor.prototype.layoutSwimlanes=!1,mxEditor.prototype.cycleAttributeValues=null,mxEditor.prototype.cycleAttributeIndex=0,mxEditor.prototype.cycleAttributeName="fillColor",mxEditor.prototype.tasks=null,mxEditor.prototype.tasksWindowImage=null,mxEditor.prototype.tasksTop=20,mxEditor.prototype.help=null,mxEditor.prototype.helpWindowImage=null,mxEditor.prototype.urlHelp=null,mxEditor.prototype.helpWidth=300,mxEditor.prototype.helpHeight=260,mxEditor.prototype.propertiesWidth=240,mxEditor.prototype.propertiesHeight=null,mxEditor.prototype.movePropertiesDialog=!1,mxEditor.prototype.validating=!1,mxEditor.prototype.modified=!1,mxEditor.prototype.isModified=function(){return this.modified},mxEditor.prototype.setModified=function(e){this.modified=e},mxEditor.prototype.addActions=function(){this.addAction("save",function(e){e.save()}),this.addAction("print",function(e){new mxPrintPreview(e.graph,1).open()}),this.addAction("show",function(e){mxUtils.show(e.graph,null,10,10)}),this.addAction("exportImage",function(e){var t=e.getUrlImage();if(null==t||mxClient.IS_LOCAL)e.execute("show");else{var n=mxUtils.getViewXml(e.graph,1),n=mxUtils.getXml(n,"\n");mxUtils.submit(t,e.postParameterName+"="+encodeURIComponent(n),document,"_blank")}}),this.addAction("refresh",function(e){e.graph.refresh()}),this.addAction("cut",function(e){e.graph.isEnabled()&&mxClipboard.cut(e.graph)}),this.addAction("copy",function(e){e.graph.isEnabled()&&mxClipboard.copy(e.graph)}),this.addAction("paste",function(e){e.graph.isEnabled()&&mxClipboard.paste(e.graph)}),this.addAction("delete",function(e){e.graph.isEnabled()&&e.graph.removeCells()}),this.addAction("group",function(e){e.graph.isEnabled()&&e.graph.setSelectionCell(e.groupCells())}),this.addAction("ungroup",function(e){e.graph.isEnabled()&&e.graph.setSelectionCells(e.graph.ungroupCells())}),this.addAction("removeFromParent",function(e){e.graph.isEnabled()&&e.graph.removeCellsFromParent()}),this.addAction("undo",function(e){e.graph.isEnabled()&&e.undo()}),this.addAction("redo",function(e){e.graph.isEnabled()&&e.redo()}),this.addAction("zoomIn",function(e){e.graph.zoomIn()}),this.addAction("zoomOut",function(e){e.graph.zoomOut()}),this.addAction("actualSize",function(e){e.graph.zoomActual()}),this.addAction("fit",function(e){e.graph.fit()}),this.addAction("showProperties",function(e,t){e.showProperties(t)}),this.addAction("selectAll",function(e){e.graph.isEnabled()&&e.graph.selectAll()}),this.addAction("selectNone",function(e){e.graph.isEnabled()&&e.graph.clearSelection()}),this.addAction("selectVertices",function(e){e.graph.isEnabled()&&e.graph.selectVertices()}),this.addAction("selectEdges",function(e){e.graph.isEnabled()&&e.graph.selectEdges()}),this.addAction("edit",function(e,t){e.graph.isEnabled()&&e.graph.isCellEditable(t)&&e.graph.startEditingAtCell(t)}),this.addAction("toBack",function(e,t){e.graph.isEnabled()&&e.graph.orderCells(!0)}),this.addAction("toFront",function(e,t){e.graph.isEnabled()&&e.graph.orderCells(!1)}),this.addAction("enterGroup",function(e,t){e.graph.enterGroup(t)}),this.addAction("exitGroup",function(e){e.graph.exitGroup()}),this.addAction("home",function(e){e.graph.home()}),this.addAction("selectPrevious",function(e){e.graph.isEnabled()&&e.graph.selectPreviousCell()}),this.addAction("selectNext",function(e){e.graph.isEnabled()&&e.graph.selectNextCell()}),this.addAction("selectParent",function(e){e.graph.isEnabled()&&e.graph.selectParentCell()}),this.addAction("selectChild",function(e){e.graph.isEnabled()&&e.graph.selectChildCell()}),this.addAction("collapse",function(e){e.graph.isEnabled()&&e.graph.foldCells(!0)}),this.addAction("collapseAll",function(e){if(e.graph.isEnabled()){var t=e.graph.getChildVertices();e.graph.foldCells(!0,!1,t)}}),this.addAction("expand",function(e){e.graph.isEnabled()&&e.graph.foldCells(!1)}),this.addAction("expandAll",function(e){if(e.graph.isEnabled()){var t=e.graph.getChildVertices();e.graph.foldCells(!1,!1,t)}}),this.addAction("bold",function(e){e.graph.isEnabled()&&e.graph.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_BOLD)}),this.addAction("italic",function(e){e.graph.isEnabled()&&e.graph.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_ITALIC)}),this.addAction("underline",function(e){e.graph.isEnabled()&&e.graph.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_UNDERLINE)}),this.addAction("shadow",function(e){e.graph.isEnabled()&&e.graph.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_SHADOW)}),this.addAction("alignCellsLeft",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_LEFT)}),this.addAction("alignCellsCenter",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_CENTER)}),this.addAction("alignCellsRight",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_RIGHT)}),this.addAction("alignCellsTop",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_TOP)}),this.addAction("alignCellsMiddle",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_MIDDLE)}),this.addAction("alignCellsBottom",function(e){e.graph.isEnabled()&&e.graph.alignCells(mxConstants.ALIGN_BOTTOM)}),this.addAction("alignFontLeft",function(e){e.graph.setCellStyles(mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT)}),this.addAction("alignFontCenter",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER)}),this.addAction("alignFontRight",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_ALIGN,mxConstants.ALIGN_RIGHT)}),this.addAction("alignFontTop",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_TOP)}),this.addAction("alignFontMiddle",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)}),this.addAction("alignFontBottom",function(e){e.graph.isEnabled()&&e.graph.setCellStyles(mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_BOTTOM)}),this.addAction("zoom",function(e){var t=100*e.graph.getView().scale,t=parseFloat(mxUtils.prompt(mxResources.get(e.askZoomResource)||e.askZoomResource,t))/100;isNaN(t)||e.graph.getView().setScale(t)}),this.addAction("toggleTasks",function(e){null!=e.tasks?e.tasks.setVisible(!e.tasks.isVisible()):e.showTasks()}),this.addAction("toggleHelp",function(e){null!=e.help?e.help.setVisible(!e.help.isVisible()):e.showHelp()}),this.addAction("toggleOutline",function(e){null==e.outline?e.showOutline():e.outline.setVisible(!e.outline.isVisible())}),this.addAction("toggleConsole",function(e){mxLog.setVisible(!mxLog.isVisible())})},mxEditor.prototype.createSession=function(){var e=mxUtils.bind(this,function(e){this.fireEvent(new mxEventObject(mxEvent.SESSION,"session",e))});return this.connect(this.urlInit,this.urlPoll,this.urlNotify,e)},mxEditor.prototype.configure=function(e){null!=e&&(new mxCodec(e.ownerDocument).decode(e,this),this.resetHistory())},mxEditor.prototype.resetFirstTime=function(){document.cookie="mxgraph=seen; expires=Fri, 27 Jul 2001 02:47:11 UTC; path=/"},mxEditor.prototype.resetHistory=function(){this.lastSnapshot=(new Date).getTime(),this.undoManager.clear(),this.ignoredChanges=0,this.setModified(!1)},mxEditor.prototype.addAction=function(e,t){this.actions[e]=t},mxEditor.prototype.execute=function(e,t,n){var a=this.actions[e];if(null!=a)try{var i=arguments;i[0]=this,a.apply(this,i)}catch(t){throw mxUtils.error("Cannot execute "+e+": "+t.message,280,!0),t}else mxUtils.error("Cannot find action "+e,280,!0)},mxEditor.prototype.addTemplate=function(e,t){this.templates[e]=t},mxEditor.prototype.getTemplate=function(e){return this.templates[e]},mxEditor.prototype.createGraph=function(){var e=new mxGraph(null,null,this.graphRenderHint);return e.setTooltips(!0),e.setPanning(!0),this.installDblClickHandler(e),this.installUndoHandler(e),this.installDrillHandler(e),this.installChangeHandler(e),this.installInsertHandler(e),e.panningHandler.factoryMethod=mxUtils.bind(this,function(e,t,n){return this.createPopupMenu(e,t,n)}),e.connectionHandler.factoryMethod=mxUtils.bind(this,function(e,t){return this.createEdge(e,t)}),this.createSwimlaneManager(e),this.createLayoutManager(e),e},mxEditor.prototype.createSwimlaneManager=function(e){return e=new mxSwimlaneManager(e,!1),e.isHorizontal=mxUtils.bind(this,function(){return this.horizontalFlow}),e.isEnabled=mxUtils.bind(this,function(){return this.maintainSwimlanes}),e},mxEditor.prototype.createLayoutManager=function(e){var t=new mxLayoutManager(e),n=this;return t.getLayout=function(t){var a=null,i=n.graph.getModel();return null!=i.getParent(t)&&(n.layoutSwimlanes&&e.isSwimlane(t)?(null==n.swimlaneLayout&&(n.swimlaneLayout=n.createSwimlaneLayout()),a=n.swimlaneLayout):n.layoutDiagram&&(e.isValidRoot(t)||null==i.getParent(i.getParent(t)))&&(null==n.diagramLayout&&(n.diagramLayout=n.createDiagramLayout()),a=n.diagramLayout)),a},t},mxEditor.prototype.setGraphContainer=function(e){null==this.graph.container&&(this.graph.init(e),this.rubberband=new mxRubberband(this.graph),this.disableContextMenu&&mxEvent.disableContextMenu(e),mxClient.IS_QUIRKS&&new mxDivResizer(e))},mxEditor.prototype.installDblClickHandler=function(e){e.addListener(mxEvent.DOUBLE_CLICK,mxUtils.bind(this,function(t,n){var a=n.getProperty("cell");null!=a&&e.isEnabled()&&null!=this.dblClickAction&&(this.execute(this.dblClickAction,a),n.consume())}))},mxEditor.prototype.installUndoHandler=function(e){var t=mxUtils.bind(this,function(e,t){var n=t.getProperty("edit");this.undoManager.undoableEditHappened(n)});e.getModel().addListener(mxEvent.UNDO,t),e.getView().addListener(mxEvent.UNDO,t),t=function(t,n){var a=n.getProperty("edit").changes;e.setSelectionCells(e.getSelectionCellsForChanges(a))},this.undoManager.addListener(mxEvent.UNDO,t),this.undoManager.addListener(mxEvent.REDO,t)},mxEditor.prototype.installDrillHandler=function(e){var t=mxUtils.bind(this,function(e){this.fireEvent(new mxEventObject(mxEvent.ROOT))});e.getView().addListener(mxEvent.DOWN,t),e.getView().addListener(mxEvent.UP,t)},mxEditor.prototype.installChangeHandler=function(e){var t=mxUtils.bind(this,function(t,n){this.setModified(!0),1==this.validating&&e.validateGraph();for(var a=n.getProperty("edit").changes,i=0;i<a.length;i++){var o=a[i];if(o instanceof mxRootChange||o instanceof mxValueChange&&o.cell==this.graph.model.root||o instanceof mxCellAttributeChange&&o.cell==this.graph.model.root){this.fireEvent(new mxEventObject(mxEvent.ROOT));break}}});e.getModel().addListener(mxEvent.CHANGE,t)},mxEditor.prototype.installInsertHandler=function(e){var t=this;e.addMouseListener({mouseDown:function(e,n){null==t.insertFunction||n.isPopupTrigger()||!t.forcedInserting&&null!=n.getState()||(t.graph.clearSelection(),t.insertFunction(n.getEvent(),n.getCell()),this.isActive=!0,n.consume())},mouseMove:function(e,t){this.isActive&&t.consume()},mouseUp:function(e,t){this.isActive&&(this.isActive=!1,t.consume())}})},mxEditor.prototype.createDiagramLayout=function(){var e=this.graph.gridSize,t=new mxStackLayout(this.graph,!this.horizontalFlow,this.swimlaneSpacing,2*e,2*e);return t.isVertexIgnored=function(e){return!t.graph.isSwimlane(e)},t},mxEditor.prototype.createSwimlaneLayout=function(){return new mxCompactTreeLayout(this.graph,this.horizontalFlow)},mxEditor.prototype.createToolbar=function(){return new mxDefaultToolbar(null,this)},mxEditor.prototype.setToolbarContainer=function(e){this.toolbar.init(e),mxClient.IS_QUIRKS&&new mxDivResizer(e)},mxEditor.prototype.setStatusContainer=function(e){null==this.status&&(this.status=e,this.addListener(mxEvent.SAVE,mxUtils.bind(this,function(){var e=(new Date).toLocaleString();this.setStatus((mxResources.get(this.lastSavedResource)||this.lastSavedResource)+": "+e)})),this.addListener(mxEvent.OPEN,mxUtils.bind(this,function(){this.setStatus((mxResources.get(this.currentFileResource)||this.currentFileResource)+": "+this.filename)})),mxClient.IS_QUIRKS&&new mxDivResizer(e))},mxEditor.prototype.setStatus=function(e){null!=this.status&&null!=e&&(this.status.innerHTML=e)},mxEditor.prototype.setTitleContainer=function(e){this.addListener(mxEvent.ROOT,mxUtils.bind(this,function(t){e.innerHTML=this.getTitle()})),mxClient.IS_QUIRKS&&new mxDivResizer(e)},mxEditor.prototype.treeLayout=function(e,t){null!=e&&new mxCompactTreeLayout(this.graph,t).execute(e)},mxEditor.prototype.getTitle=function(){for(var e="",t=this.graph,n=t.getCurrentRoot();null!=n&&null!=t.getModel().getParent(t.getModel().getParent(n));)t.isValidRoot(n)&&(e=" > "+t.convertValueToString(n)+e),n=t.getModel().getParent(n);return this.getRootTitle()+e},mxEditor.prototype.getRootTitle=function(){var e=this.graph.getModel().getRoot();return this.graph.convertValueToString(e)},mxEditor.prototype.undo=function(){this.undoManager.undo()},mxEditor.prototype.redo=function(){this.undoManager.redo()},mxEditor.prototype.groupCells=function(){var e=null!=this.groupBorderSize?this.groupBorderSize:this.graph.gridSize;return this.graph.groupCells(this.createGroup(),e)},mxEditor.prototype.createGroup=function(){return this.graph.getModel().cloneCell(this.defaultGroup)},mxEditor.prototype.open=function(e){if(null!=e){var t=mxUtils.load(e).getXml();this.readGraphModel(t.documentElement),this.filename=e,this.fireEvent(new mxEventObject(mxEvent.OPEN,"filename",e))}},mxEditor.prototype.readGraphModel=function(e){new mxCodec(e.ownerDocument).decode(e,this.graph.getModel()),this.resetHistory()},mxEditor.prototype.save=function(e,t){if(null!=(e=e||this.getUrlPost())&&0<e.length){var n=this.writeGraphModel(t);this.postDiagram(e,n),this.setModified(!1)}this.fireEvent(new mxEventObject(mxEvent.SAVE,"url",e))},mxEditor.prototype.postDiagram=function(e,t){this.escapePostData&&(t=encodeURIComponent(t)),mxUtils.post(e,this.postParameterName+"="+t,mxUtils.bind(this,function(n){this.fireEvent(new mxEventObject(mxEvent.POST,"request",n,"url",e,"data",t))}))},mxEditor.prototype.writeGraphModel=function(e){e=null!=e?e:this.linefeed;var t=(new mxCodec).encode(this.graph.getModel());return mxUtils.getXml(t,e)},mxEditor.prototype.getUrlPost=function(){return this.urlPost},mxEditor.prototype.getUrlImage=function(){return this.urlImage},mxEditor.prototype.connect=function(e,t,n,a){var i=null;return mxClient.IS_LOCAL||((i=new mxSession(this.graph.getModel(),e,t,n)).addListener(mxEvent.RECEIVE,mxUtils.bind(this,function(e,t){null!=t.getProperty("node").getAttribute("namespace")&&this.resetHistory()})),i.addListener(mxEvent.DISCONNECT,a),i.addListener(mxEvent.CONNECT,a),i.addListener(mxEvent.NOTIFY,a),i.addListener(mxEvent.GET,a),i.start()),i},mxEditor.prototype.swapStyles=function(e,t){var n=this.graph.getStylesheet().styles[t];this.graph.getView().getStylesheet().putCellStyle(t,this.graph.getStylesheet().styles[e]),this.graph.getStylesheet().putCellStyle(e,n),this.graph.refresh()},mxEditor.prototype.showProperties=function(e){if(null==(e=e||this.graph.getSelectionCell())&&null==(e=this.graph.getCurrentRoot())&&(e=this.graph.getModel().getRoot()),null!=e){this.graph.stopEditing(!0);var t=(n=mxUtils.getOffset(this.graph.container)).x+10,n=n.y;if(null==this.properties||this.movePropertiesDialog){var a=this.graph.getCellBounds(e);null!=a&&(t+=a.x+Math.min(200,a.width),n+=a.y)}else t=this.properties.getX(),n=this.properties.getY();this.hideProperties(),null!=(e=this.createProperties(e))&&(this.properties=new mxWindow(mxResources.get(this.propertiesResource)||this.propertiesResource,e,t,n,this.propertiesWidth,this.propertiesHeight,!1),this.properties.setVisible(!0))}},mxEditor.prototype.isPropertiesVisible=function(){return null!=this.properties},mxEditor.prototype.createProperties=function(e){var t=this.graph.getModel(),n=t.getValue(e);if(mxUtils.isNode(n)){var a=new mxForm("properties");a.addText("ID",e.getId()).setAttribute("readonly","true");var i=null,o=null,s=null,r=null,l=null;t.isVertex(e)&&null!=(i=t.getGeometry(e))&&(o=a.addText("top",i.y),s=a.addText("left",i.x),r=a.addText("width",i.width),l=a.addText("height",i.height));for(var d=t.getStyle(e),c=a.addText("Style",d||""),m=n.attributes,u=[],n=0;n<m.length;n++)u[n]=a.addTextarea(m[n].nodeName,m[n].nodeValue,"label"==m[n].nodeName?4:2);return n=mxUtils.bind(this,function(){this.hideProperties(),t.beginUpdate();try{null!=i&&(i=i.clone(),i.x=parseFloat(s.value),i.y=parseFloat(o.value),i.width=parseFloat(r.value),i.height=parseFloat(l.value),t.setGeometry(e,i)),0<c.value.length?t.setStyle(e,c.value):t.setStyle(e,null);for(var n=0;n<m.length;n++){var a=new mxCellAttributeChange(e,m[n].nodeName,u[n].value);t.execute(a)}this.graph.isAutoSizeCell(e)&&this.graph.updateCellSize(e)}finally{t.endUpdate()}}),d=mxUtils.bind(this,function(){this.hideProperties()}),a.addButtons(n,d),a.table}return null},mxEditor.prototype.hideProperties=function(){null!=this.properties&&(this.properties.destroy(),this.properties=null)},mxEditor.prototype.showTasks=function(){if(null==this.tasks){var e=document.createElement("div");e.style.padding="4px",e.style.paddingLeft="20px";var t=document.body.clientWidth;(t=new mxWindow(mxResources.get(this.tasksResource)||this.tasksResource,e,t-220,this.tasksTop,200)).setClosable(!0),t.destroyOnClose=!1;var n=mxUtils.bind(this,function(t){mxEvent.release(e),e.innerHTML="",this.createTasks(e)});this.graph.getModel().addListener(mxEvent.CHANGE,n),this.graph.getSelectionModel().addListener(mxEvent.CHANGE,n),this.graph.addListener(mxEvent.ROOT,n),null!=this.tasksWindowImage&&t.setImage(this.tasksWindowImage),this.tasks=t,this.createTasks(e)}this.tasks.setVisible(!0)},mxEditor.prototype.refreshTasks=function(e){null!=this.tasks&&(e=this.tasks.content,mxEvent.release(e),e.innerHTML="",this.createTasks(e))},mxEditor.prototype.createTasks=function(e){},mxEditor.prototype.showHelp=function(e){if(null==this.help){var t=document.createElement("iframe");t.setAttribute("src",mxResources.get("urlHelp")||this.urlHelp),t.setAttribute("height","100%"),t.setAttribute("width","100%"),t.setAttribute("frameBorder","0"),t.style.backgroundColor="white",e=document.body.clientWidth;var n=document.body.clientHeight||document.documentElement.clientHeight,a=new mxWindow(mxResources.get(this.helpResource)||this.helpResource,t,(e-this.helpWidth)/2,(n-this.helpHeight)/3,this.helpWidth,this.helpHeight);a.setMaximizable(!0),a.setClosable(!0),a.destroyOnClose=!1,a.setResizable(!0),null!=this.helpWindowImage&&a.setImage(this.helpWindowImage),mxClient.IS_NS&&(e=function(e){t.setAttribute("height",a.div.offsetHeight-26+"px")},a.addListener(mxEvent.RESIZE_END,e),a.addListener(mxEvent.MAXIMIZE,e),a.addListener(mxEvent.NORMALIZE,e),a.addListener(mxEvent.SHOW,e)),this.help=a}this.help.setVisible(!0)},mxEditor.prototype.showOutline=function(){if(null==this.outline){var e=document.createElement("div");e.style.overflow="hidden",e.style.width="100%",e.style.height="100%",e.style.background="white",e.style.cursor="move";var t=new mxWindow(mxResources.get(this.outlineResource)||this.outlineResource,e,600,480,200,200,!1),n=new mxOutline(this.graph,e);t.setClosable(!0),t.setResizable(!0),t.destroyOnClose=!1,t.addListener(mxEvent.RESIZE_END,function(){n.update()}),this.outline=t,this.outline.outline=n}this.outline.setVisible(!0),this.outline.outline.update(!0)},mxEditor.prototype.setMode=function(e){"select"==e?(this.graph.panningHandler.useLeftButtonForPanning=!1,this.graph.setConnectable(!1)):"connect"==e?(this.graph.panningHandler.useLeftButtonForPanning=!1,this.graph.setConnectable(!0)):"pan"==e&&(this.graph.panningHandler.useLeftButtonForPanning=!0,this.graph.setConnectable(!1))},mxEditor.prototype.createPopupMenu=function(e,t,n){this.popupHandler.createMenu(this,e,t,n)},mxEditor.prototype.createEdge=function(e,t){var n=null;if(null!=this.defaultEdge)n=this.graph.getModel().cloneCell(this.defaultEdge);else{(n=new mxCell("")).setEdge(!0);var a=new mxGeometry;a.relative=!0,n.setGeometry(a)}return null!=(a=this.getEdgeStyle())&&n.setStyle(a),n},mxEditor.prototype.getEdgeStyle=function(){return this.defaultEdgeStyle},mxEditor.prototype.consumeCycleAttribute=function(e){return null!=this.cycleAttributeValues&&0<this.cycleAttributeValues.length&&this.graph.isSwimlane(e)?this.cycleAttributeValues[this.cycleAttributeIndex++%this.cycleAttributeValues.length]:null},mxEditor.prototype.cycleAttribute=function(e){if(null!=this.cycleAttributeName){var t=this.consumeCycleAttribute(e);null!=t&&e.setStyle(e.getStyle()+";"+this.cycleAttributeName+"="+t)}},mxEditor.prototype.addVertex=function(e,t,n,a){for(var i=this.graph.getModel();null!=e&&!this.graph.isValidDropTarget(e);)e=i.getParent(e);e=null!=e?e:this.graph.getSwimlaneAt(n,a);var o=this.graph.getView().scale,s=i.getGeometry(t),r=i.getGeometry(e);if(this.graph.isSwimlane(t)&&!this.graph.swimlaneNesting)e=null;else{if(null==e&&this.swimlaneRequired)return null;if(null!=e&&null!=r){var l=this.graph.getView().getState(e);if(null!=l){if(n-=l.origin.x*o,a-=l.origin.y*o,this.graph.isConstrainedMoving){var r=s.width,d=s.height,c=l.x+l.width;n+r>c&&(n-=n+r-c),a+d>(c=l.y+l.height)&&(a-=a+d-c)}}else null!=r&&(n-=r.x*o,a-=r.y*o)}}(s=s.clone()).x=this.graph.snap(n/o-this.graph.getView().translate.x-this.graph.gridSize/2),s.y=this.graph.snap(a/o-this.graph.getView().translate.y-this.graph.gridSize/2),t.setGeometry(s),null==e&&(e=this.graph.getDefaultParent()),this.cycleAttribute(t),this.fireEvent(new mxEventObject(mxEvent.BEFORE_ADD_VERTEX,"vertex",t,"parent",e)),i.beginUpdate();try{null!=(t=this.graph.addCell(t,e))&&(this.graph.constrainChild(t),this.fireEvent(new mxEventObject(mxEvent.ADD_VERTEX,"vertex",t)))}finally{i.endUpdate()}return null!=t&&(this.graph.setSelectionCell(t),this.graph.scrollCellToVisible(t),this.fireEvent(new mxEventObject(mxEvent.AFTER_ADD_VERTEX,"vertex",t))),t},mxEditor.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,null!=this.tasks&&this.tasks.destroy(),null!=this.outline&&this.outline.destroy(),null!=this.properties&&this.properties.destroy(),null!=this.keyHandler&&this.keyHandler.destroy(),null!=this.rubberband&&this.rubberband.destroy(),null!=this.toolbar&&this.toolbar.destroy(),null!=this.graph&&this.graph.destroy(),this.templates=this.status=null)};var mxCodecRegistry={codecs:[],aliases:[],register:function(e){if(null!=e){var t=e.getName();mxCodecRegistry.codecs[t]=e;var n=mxUtils.getFunctionName(e.template.constructor);n!=t&&mxCodecRegistry.addAlias(n,t)}return e},addAlias:function(e,t){mxCodecRegistry.aliases[e]=t},getCodec:function(e){t=null;if(null!=e){var t=mxUtils.getFunctionName(e),n=mxCodecRegistry.aliases[t];if(null!=n&&(t=n),null==(t=mxCodecRegistry.codecs[t]))try{t=new mxObjectCodec(new e),mxCodecRegistry.register(t)}catch(e){}}return t}};mxCodec.prototype.document=null,mxCodec.prototype.objects=null,mxCodec.prototype.encodeDefaults=!1,mxCodec.prototype.putObject=function(e,t){return this.objects[e]=t},mxCodec.prototype.getObject=function(e){var t=null;return null!=e&&null==(t=this.objects[e])&&null==(t=this.lookup(e))&&null!=(e=this.getElementById(e))&&(t=this.decode(e)),t},mxCodec.prototype.lookup=function(e){return null},mxCodec.prototype.getElementById=function(e,t){return mxUtils.findNodeByAttribute(this.document.documentElement,null!=t?t:"id",e)},mxCodec.prototype.getId=function(e){var t=null;return null!=e&&null==(t=this.reference(e))&&e instanceof mxCell&&null==(t=e.getId())&&0==(t=mxCellPath.create(e)).length&&(t="root"),t},mxCodec.prototype.reference=function(e){return null},mxCodec.prototype.encode=function(e){var t=null;if(null!=e&&null!=e.constructor){var n=mxCodecRegistry.getCodec(e.constructor);null!=n?t=n.encode(this,e):mxUtils.isNode(e)?t=mxClient.IS_IE?e.cloneNode(!0):this.document.importNode(e,!0):mxLog.warn("mxCodec.encode: No codec for "+mxUtils.getFunctionName(e.constructor))}return t},mxCodec.prototype.decode=function(a,b){var c=null;if(null!=a&&a.nodeType==mxConstants.NODETYPE_ELEMENT){var d=null;try{d=eval(a.nodeName)}catch(e){}try{var f=mxCodecRegistry.getCodec(d);null!=f?c=f.decode(this,a,b):(c=a.cloneNode(!0)).removeAttribute("as")}catch(e){mxLog.debug("Cannot decode "+a.nodeName+": "+e.message)}}return c},mxCodec.prototype.encodeCell=function(e,t,n){if(t.appendChild(this.encode(e)),null==n||n){n=e.getChildCount();for(var a=0;a<n;a++)this.encodeCell(e.getChildAt(a),t)}},mxCodec.prototype.isCellCodec=function(e){return null!=e&&"function"==typeof e.isCellCodec&&e.isCellCodec()},mxCodec.prototype.decodeCell=function(e,t){t=null==t||t;var n=null;if(null!=e&&e.nodeType==mxConstants.NODETYPE_ELEMENT){if(n=mxCodecRegistry.getCodec(e.nodeName),!this.isCellCodec(n))for(var a=e.firstChild;null!=a&&!this.isCellCodec(n);)n=mxCodecRegistry.getCodec(a.nodeName),a=a.nextSibling;this.isCellCodec(n)||(n=mxCodecRegistry.getCodec(mxCell)),n=n.decode(this,e),t&&this.insertIntoGraph(n)}return n},mxCodec.prototype.insertIntoGraph=function(e){var t=e.parent,n=e.getTerminal(!0),a=e.getTerminal(!1);e.setTerminal(null,!1),e.setTerminal(null,!0),e.parent=null,null!=t&&t.insert(e),null!=n&&n.insertEdge(e,!0),null!=a&&a.insertEdge(e,!1)},mxCodec.prototype.setAttribute=function(e,t,n){null!=t&&null!=n&&e.setAttribute(t,n)},mxObjectCodec.prototype.template=null,mxObjectCodec.prototype.exclude=null,mxObjectCodec.prototype.idrefs=null,mxObjectCodec.prototype.mapping=null,mxObjectCodec.prototype.reverse=null,mxObjectCodec.prototype.getName=function(){return mxUtils.getFunctionName(this.template.constructor)},mxObjectCodec.prototype.cloneTemplate=function(){return new this.template.constructor},mxObjectCodec.prototype.getFieldName=function(e){if(null!=e){var t=this.reverse[e];null!=t&&(e=t)}return e},mxObjectCodec.prototype.getAttributeName=function(e){if(null!=e){var t=this.mapping[e];null!=t&&(e=t)}return e},mxObjectCodec.prototype.isExcluded=function(e,t,n,a){return t==mxObjectIdentity.FIELD_NAME||0<=mxUtils.indexOf(this.exclude,t)},mxObjectCodec.prototype.isReference=function(e,t,n,a){return 0<=mxUtils.indexOf(this.idrefs,t)},mxObjectCodec.prototype.encode=function(e,t){var n=e.document.createElement(this.getName());return t=this.beforeEncode(e,t,n),this.encodeObject(e,t,n),this.afterEncode(e,t,n)},mxObjectCodec.prototype.encodeObject=function(e,t,n){e.setAttribute(n,"id",e.getId(t));for(var a in t){var i=a,o=t[i];null!=o&&!this.isExcluded(t,i,o,!0)&&(mxUtils.isNumeric(i)&&(i=null),this.encodeValue(e,t,i,o,n))}},mxObjectCodec.prototype.encodeValue=function(e,t,n,a,i){if(null!=a){if(this.isReference(t,n,a,!0)){var o=e.getId(a);if(null==o)return void mxLog.warn("mxObjectCodec.encode: No ID for "+this.getName()+"."+n+"="+a);a=o}o=this.template[n],(null==n||e.encodeDefaults||o!=a)&&(n=this.getAttributeName(n),this.writeAttribute(e,t,n,a,i))}},mxObjectCodec.prototype.writeAttribute=function(e,t,n,a,i){"object"!=typeof a?this.writePrimitiveAttribute(e,t,n,a,i):this.writeComplexAttribute(e,t,n,a,i)},mxObjectCodec.prototype.writePrimitiveAttribute=function(e,t,n,a,i){a=this.convertValueToXml(a),null==n?(t=e.document.createElement("add"),"function"==typeof a?t.appendChild(e.document.createTextNode(a)):e.setAttribute(t,"value",a),i.appendChild(t)):"function"!=typeof a&&e.setAttribute(i,n,a)},mxObjectCodec.prototype.writeComplexAttribute=function(e,t,n,a,i){null!=(e=e.encode(a))?(null!=n&&e.setAttribute("as",n),i.appendChild(e)):mxLog.warn("mxObjectCodec.encode: No node for "+this.getName()+"."+n+": "+a)},mxObjectCodec.prototype.convertValueToXml=function(e){return void 0!==e.length||1!=e&&0!=e||(e=1==e?"1":"0"),e},mxObjectCodec.prototype.convertValueFromXml=function(e){return mxUtils.isNumeric(e)&&(e=parseFloat(e)),e},mxObjectCodec.prototype.beforeEncode=function(e,t,n){return t},mxObjectCodec.prototype.afterEncode=function(e,t,n){return n},mxObjectCodec.prototype.decode=function(e,t,n){var a=t.getAttribute("id"),i=e.objects[a];return null==i&&(i=n||this.cloneTemplate(),null!=a&&e.putObject(a,i)),t=this.beforeDecode(e,t,i),this.decodeNode(e,t,i),this.afterDecode(e,t,i)},mxObjectCodec.prototype.decodeNode=function(e,t,n){null!=t&&(this.decodeAttributes(e,t,n),this.decodeChildren(e,t,n))},mxObjectCodec.prototype.decodeAttributes=function(e,t,n){if(null!=(t=t.attributes))for(var a=0;a<t.length;a++)this.decodeAttribute(e,t[a],n)},mxObjectCodec.prototype.decodeAttribute=function(e,t,n){var a=t.nodeName;if("as"!=a&&"id"!=a){t=this.convertValueFromXml(t.nodeValue);var i=this.getFieldName(a);if(this.isReference(n,i,t,!1)){if(null==(e=e.getObject(t)))return void mxLog.warn("mxObjectCodec.decode: No object for "+this.getName()+"."+a+"="+t);t=e}this.isExcluded(n,a,t,!1)||(n[a]=t)}},mxObjectCodec.prototype.decodeChildren=function(e,t,n){for(t=t.firstChild;null!=t;){var a=t.nextSibling;t.nodeType==mxConstants.NODETYPE_ELEMENT&&!this.processInclude(e,t,n)&&this.decodeChild(e,t,n),t=a}},mxObjectCodec.prototype.decodeChild=function(e,t,n){var a=this.getFieldName(t.getAttribute("as"));if(null==a||!this.isExcluded(n,a,t,!1)){var i=this.getFieldTemplate(n,a,t),o=null;"add"==t.nodeName?null==(o=t.getAttribute("value"))&&(o=mxUtils.eval(mxUtils.getTextContent(t))):o=e.decode(t,i),this.addObjectValue(n,a,o,i)}},mxObjectCodec.prototype.getFieldTemplate=function(e,t,n){return(e=e[t])instanceof Array&&0<e.length&&(e=null),e},mxObjectCodec.prototype.addObjectValue=function(e,t,n,a){null!=n&&n!=a&&(null!=t&&0<t.length?e[t]=n:e.push(n))},mxObjectCodec.prototype.processInclude=function(e,t,n){if("include"==t.nodeName){if(null!=(t=t.getAttribute("name")))try{var a=mxUtils.load(t).getDocumentElement();null!=a&&e.decode(a,n)}catch(e){}return!0}return!1},mxObjectCodec.prototype.beforeDecode=function(e,t,n){return t},mxObjectCodec.prototype.afterDecode=function(e,t,n){return n},mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxCell,["children","edges","overlays","mxTransient"],["parent","source","target"]);return e.isCellCodec=function(){return!0},e.isExcluded=function(e,t,n,a){return mxObjectCodec.prototype.isExcluded.apply(this,arguments)||a&&"value"==t&&n.nodeType==mxConstants.NODETYPE_ELEMENT},e.afterEncode=function(e,t,n){if(null!=t.value&&t.value.nodeType==mxConstants.NODETYPE_ELEMENT){var a=n;(n=mxClient.IS_IE?t.value.cloneNode(!0):e.document.importNode(t.value,!0)).appendChild(a),e=a.getAttribute("id"),n.setAttribute("id",e),a.removeAttribute("id")}return n},e.beforeDecode=function(e,t,n){var a=t,i=this.getName();if(t.nodeName!=i?(a=t.getElementsByTagName(i)[0],null!=a&&a.parentNode==t?(mxUtils.removeWhitespace(a,!0),mxUtils.removeWhitespace(a,!1),a.parentNode.removeChild(a)):a=null,n.value=t.cloneNode(!0),null!=(t=n.value.getAttribute("id"))&&(n.setId(t),n.value.removeAttribute("id"))):n.setId(t.getAttribute("id")),null!=a)for(t=0;t<this.idrefs.length;t++){var i=this.idrefs[t],o=a.getAttribute(i);if(null!=o){a.removeAttribute(i);var s=e.objects[o]||e.lookup(o);null==s&&null!=(o=e.getElementById(o))&&(s=(mxCodecRegistry.codecs[o.nodeName]||this).decode(e,o)),n[i]=s}}return a},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxGraphModel);return e.encodeObject=function(e,t,n){var a=e.document.createElement("root");e.encodeCell(t.getRoot(),a),n.appendChild(a)},e.decodeChild=function(e,t,n){"root"==t.nodeName?this.decodeRoot(e,t,n):mxObjectCodec.prototype.decodeChild.apply(this,arguments)},e.decodeRoot=function(e,t,n){var a=null;for(t=t.firstChild;null!=t;){var i=e.decodeCell(t);null!=i&&null==i.getParent()&&(a=i),t=t.nextSibling}null!=a&&n.setRoot(a)},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxRootChange,["model","previous","root"]);return e.afterEncode=function(e,t,n){return e.encodeCell(t.root,n),n},e.beforeDecode=function(e,t,n){if(null!=t.firstChild&&t.firstChild.nodeType==mxConstants.NODETYPE_ELEMENT){var a=(t=t.cloneNode(!0)).firstChild;for(n.root=e.decodeCell(a,!1),n=a.nextSibling,a.parentNode.removeChild(a),a=n;null!=a;)n=a.nextSibling,e.decodeCell(a),a.parentNode.removeChild(a),a=n}return t},e.afterDecode=function(e,t,n){return n.previous=n.root,n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxChildChange,["model","child","previousIndex"],["parent","previous"]);return e.isReference=function(e,t,n,a){return!("child"!=t||null==e.previous&&a)||0<=mxUtils.indexOf(this.idrefs,t)},e.afterEncode=function(e,t,n){return this.isReference(t,"child",t.child,!0)?n.setAttribute("child",e.getId(t.child)):e.encodeCell(t.child,n),n},e.beforeDecode=function(e,t,n){if(null!=t.firstChild&&t.firstChild.nodeType==mxConstants.NODETYPE_ELEMENT){var a=(t=t.cloneNode(!0)).firstChild;for(n.child=e.decodeCell(a,!1),n=a.nextSibling,a.parentNode.removeChild(a),a=n;null!=a;){if(n=a.nextSibling,a.nodeType==mxConstants.NODETYPE_ELEMENT){var i=a.getAttribute("id");null==e.lookup(i)&&e.decodeCell(a)}a.parentNode.removeChild(a),a=n}}else a=t.getAttribute("child"),n.child=e.getObject(a);return t},e.afterDecode=function(e,t,n){return n.child.parent=n.previous,n.previous=n.parent,n.previousIndex=n.index,n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxTerminalChange,["model","previous"],["cell","terminal"]);return e.afterDecode=function(e,t,n){return n.previous=n.terminal,n},e}());var mxGenericChangeCodec=function(e,t){var n=new mxObjectCodec(e,["model","previous"],["cell"]);return n.afterDecode=function(e,n,a){return mxUtils.isNode(a.cell)&&(a.cell=e.decodeCell(a.cell,!1)),a.previous=a[t],a},n};mxCodecRegistry.register(mxGenericChangeCodec(new mxValueChange,"value")),mxCodecRegistry.register(mxGenericChangeCodec(new mxStyleChange,"style")),mxCodecRegistry.register(mxGenericChangeCodec(new mxGeometryChange,"geometry")),mxCodecRegistry.register(mxGenericChangeCodec(new mxCollapseChange,"collapsed")),mxCodecRegistry.register(mxGenericChangeCodec(new mxVisibleChange,"visible")),mxCodecRegistry.register(mxGenericChangeCodec(new mxCellAttributeChange,"value")),mxCodecRegistry.register(function(){return new mxObjectCodec(new mxGraph,"graphListeners eventListeners view container cellRenderer editor selection".split(" "))}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxGraphView);return e.encode=function(e,t){return this.encodeCell(e,t,t.graph.getModel().getRoot())},e.encodeCell=function(e,t,n){var a=t.graph.getModel(),i=t.getState(n),o=a.getParent(n);if(null==o||null!=i){var s=a.getChildCount(n),r=t.graph.getCellGeometry(n),l=null;if(o==a.getRoot()?l="layer":null==o?l="graph":a.isEdge(n)?l="edge":0<s&&null!=r?l="group":a.isVertex(n)&&(l="vertex"),null!=l){var d=e.document.createElement(l);if(null!=t.graph.getLabel(n)&&(d.setAttribute("label",t.graph.getLabel(n)),t.graph.isHtmlLabel(n)&&d.setAttribute("html",!0)),null==o){var c=t.getGraphBounds();null!=c&&(d.setAttribute("x",Math.round(c.x)),d.setAttribute("y",Math.round(c.y)),d.setAttribute("width",Math.round(c.width)),d.setAttribute("height",Math.round(c.height))),d.setAttribute("scale",t.scale)}else if(null!=i&&null!=r){for(c in i.style)"function"==typeof(o=i.style[c])&&"object"==typeof o&&(o=mxStyleRegistry.getName(o)),null!=o&&"function"!=typeof o&&"object"!=typeof o&&d.setAttribute(c,o);if(null!=(o=i.absolutePoints)&&0<o.length){for(r=Math.round(o[0].x)+","+Math.round(o[0].y),c=1;c<o.length;c++)r+=" "+Math.round(o[c].x)+","+Math.round(o[c].y);d.setAttribute("points",r)}else d.setAttribute("x",Math.round(i.x)),d.setAttribute("y",Math.round(i.y)),d.setAttribute("width",Math.round(i.width)),d.setAttribute("height",Math.round(i.height));null!=(c=i.absoluteOffset)&&(0!=c.x&&d.setAttribute("dx",Math.round(c.x)),0!=c.y&&d.setAttribute("dy",Math.round(c.y)))}for(c=0;c<s;c++)null!=(i=this.encodeCell(e,t,a.getChildAt(n,c)))&&d.appendChild(i)}}return d},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxStylesheet);return e.encode=function(e,t){var n,a=e.document.createElement(this.getName());for(n in t.styles){var i=t.styles[n],o=e.document.createElement("add");if(null!=n){o.setAttribute("as",n);for(var s in i){var r=this.getStringValue(s,i[s]);if(null!=r){var l=e.document.createElement("add");l.setAttribute("value",r),l.setAttribute("as",s),o.appendChild(l)}}0<o.childNodes.length&&a.appendChild(o)}}return a},e.getStringValue=function(e,t){var n=typeof t;return"function"==n?t=mxStyleRegistry.getName(style[j]):"object"==n&&(t=null),t},e.decode=function(e,t,n){n=n||new this.template.constructor;var a=t.getAttribute("id");for(null!=a&&(e.objects[a]=n),t=t.firstChild;null!=t;){if(!this.processInclude(e,t,n)&&"add"==t.nodeName&&null!=(a=t.getAttribute("as"))){var i=t.getAttribute("extend"),o=null!=i?mxUtils.clone(n.styles[i]):null;for(null==o&&(null!=i&&mxLog.warn("mxStylesheetCodec.decode: stylesheet "+i+" not found to extend"),o={}),i=t.firstChild;null!=i;){if(i.nodeType==mxConstants.NODETYPE_ELEMENT){var s=i.getAttribute("as");if("add"==i.nodeName){var r=mxUtils.getTextContent(i),l=null;null!=r&&0<r.length?l=mxUtils.eval(r):(l=i.getAttribute("value"),mxUtils.isNumeric(l)&&(l=parseFloat(l))),null!=l&&(o[s]=l)}else"remove"==i.nodeName&&delete o[s]}i=i.nextSibling}n.putCellStyle(a,o)}t=t.nextSibling}return n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxDefaultKeyHandler);return e.encode=function(e,t){return null},e.decode=function(e,t,n){if(null!=n)for(t=t.firstChild;null!=t;){if(!this.processInclude(e,t,n)&&"add"==t.nodeName){var a=t.getAttribute("as"),i=t.getAttribute("action"),o=t.getAttribute("control");n.bindAction(a,i,o)}t=t.nextSibling}return n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxDefaultToolbar);return e.encode=function(e,t){return null},e.decode=function(e,t,n){if(null!=n){var a=n.editor;for(t=t.firstChild;null!=t;){if(t.nodeType==mxConstants.NODETYPE_ELEMENT&&!this.processInclude(e,t,n))if("separator"==t.nodeName)n.addSeparator();else if("br"==t.nodeName)n.toolbar.addBreak();else if("hr"==t.nodeName)n.toolbar.addLine();else if("add"==t.nodeName){var i=t.getAttribute("as"),i=mxResources.get(i)||i,o=t.getAttribute("icon"),s=t.getAttribute("pressedIcon"),r=t.getAttribute("action"),l=t.getAttribute("mode"),d=t.getAttribute("template"),c="0"!=t.getAttribute("toggle"),m=mxUtils.getTextContent(t),u=null;if(null!=r)u=n.addItem(i,o,r,s);else if(null!=l)var p=mxUtils.eval(m),u=n.addMode(i,o,l,s,p);else if(null!=d||null!=m&&0<m.length)u=a.templates[d],d=t.getAttribute("style"),null!=u&&null!=d&&(u=u.clone()).setStyle(d),d=null,null!=m&&0<m.length&&(d=mxUtils.eval(m)),u=n.addPrototype(i,o,u,s,d,c);else if(0<(s=mxUtils.getChildNodes(t)).length)if(null==o)for(d=n.addActionCombo(i),i=0;i<s.length;i++)c=s[i],"separator"==c.nodeName?n.addOption(d,"---"):"add"==c.nodeName&&(o=c.getAttribute("as"),c=c.getAttribute("action"),n.addActionOption(d,o,c));else{var g=null,h=n.addPrototype(i,o,function(){if(null!=(e=a.templates[g.value])){var e=e.clone(),t=g.options[g.selectedIndex].cellStyle;return null!=t&&e.setStyle(t),e}return mxLog.warn("Template "+e+" not found"),null},null,null,c),g=n.addCombo();for(mxEvent.addListener(g,"change",function(){n.toolbar.selectMode(h,function(e){return e=mxUtils.convertPoint(a.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e)),a.addVertex(null,p(),e.x,e.y)}),n.toolbar.noReset=!1}),i=0;i<s.length;i++)c=s[i],"separator"==c.nodeName?n.addOption(g,"---"):"add"==c.nodeName&&(o=c.getAttribute("as"),m=c.getAttribute("template"),n.addOption(g,o,m||d).cellStyle=c.getAttribute("style"))}null!=u&&null!=(d=t.getAttribute("id"))&&0<d.length&&u.setAttribute("id",d)}t=t.nextSibling}}return n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxDefaultPopupMenu);return e.encode=function(e,t){return null},e.decode=function(e,t,n){var a=t.getElementsByTagName("include")[0];return null!=a?this.processInclude(e,a,n):null!=n&&(n.config=t),n},e}()),mxCodecRegistry.register(function(){var e=new mxObjectCodec(new mxEditor,"modified lastSnapshot ignoredChanges undoManager graphContainer toolbarContainer".split(" "));return e.afterDecode=function(e,t,n){return null!=(e=t.getAttribute("defaultEdge"))&&(t.removeAttribute("defaultEdge"),n.defaultEdge=n.templates[e]),null!=(e=t.getAttribute("defaultGroup"))&&(t.removeAttribute("defaultGroup"),n.defaultGroup=n.templates[e]),n},e.decodeChild=function(e,t,n){if("Array"==t.nodeName){if("templates"==t.getAttribute("as"))return void this.decodeTemplates(e,t,n)}else if("ui"==t.nodeName)return void this.decodeUi(e,t,n);mxObjectCodec.prototype.decodeChild.apply(this,arguments)},e.decodeUi=function(e,t,n){for(e=t.firstChild;null!=e;){if("add"==e.nodeName){t=e.getAttribute("as");var a=e.getAttribute("element"),i=e.getAttribute("style"),o=null;if(null!=a)null!=(o=document.getElementById(a))&&null!=i&&(o.style.cssText+=";"+i);else{var a=parseInt(e.getAttribute("x")),s=parseInt(e.getAttribute("y")),r=e.getAttribute("width"),l=e.getAttribute("height");(o=document.createElement("div")).style.cssText=i,new mxWindow(mxResources.get(t)||t,o,a,s,r,l,!1,!0).setVisible(!0)}"graph"==t?n.setGraphContainer(o):"toolbar"==t?n.setToolbarContainer(o):"title"==t?n.setTitleContainer(o):"status"==t?n.setStatusContainer(o):"map"==t&&n.setMapContainer(o)}else"resource"==e.nodeName?mxResources.add(e.getAttribute("basename")):"stylesheet"==e.nodeName&&mxClient.link("stylesheet",e.getAttribute("name"));e=e.nextSibling}},e.decodeTemplates=function(e,t,n){null==n.templates&&(n.templates=[]),t=mxUtils.getChildNodes(t);for(var a=0;a<t.length;a++){for(var i=t[a].getAttribute("as"),o=t[a].firstChild;null!=o&&1!=o.nodeType;)o=o.nextSibling;null!=o&&(n.templates[i]=e.decodeCell(o))}},e}()),EditorUi=function(e,t,n){this.projectDesignController=e,this.editor=t||new Editor,this.container=n||document.body;var a=t.graph,i=this;(new Image).src=mxPopupMenu.prototype.submenuImage,null!=mxConnectionHandler.prototype.connectImage&&((new Image).src=mxConnectionHandler.prototype.connectImage.src),this.actions=new Actions(this),this.menus=new Menus(this),this.createDivs(),this.refresh(),this.createUi();var o=mxUtils.bind(this,function(e){return null==e&&(e=window.event),!!this.isSelectionAllowed(e)||a.isEditing()});this.container==document.body&&(this.menubarContainer.onselectstart=o,this.menubarContainer.onmousedown=o,this.toolbarContainer.onselectstart=o,this.toolbarContainer.onmousedown=o,this.diagramContainer.onselectstart=o,this.diagramContainer.onmousedown=o,this.sidebarContainer.onselectstart=o,this.sidebarContainer.onmousedown=o,this.footerContainer.onselectstart=o,this.footerContainer.onmousedown=o),mxClient.IS_IE&&(void 0===document.documentMode||document.documentMode<9)?(mxEvent.addListener(this.diagramContainer,"contextmenu",o),mxEvent.addListener(this.sidebarContainer,"contextmenu",o)):(this.diagramContainer.oncontextmenu=o,this.sidebarContainer.oncontextmenu=o),a.init(this.diagramContainer),a.refresh(),a.container.setAttribute("tabindex","0"),a.container.style.cursor="default",a.container.style.backgroundImage="url("+t.gridImage+")",a.container.style.backgroundPosition="-1px -1px",a.container.focus();var s=a.fireMouseEvent;a.fireMouseEvent=function(e,t,n){e==mxEvent.MOUSE_DOWN&&this.container.focus(),s.apply(this,arguments)},this.createMultiplicities(a.multiplicities,["start","finally","end"],[[1,1],[1,1],[0,0]],[[0,0],[0,0],[1,"n"]]),this.createMultiplicities(a.multiplicities,["answer","hangup","dial","ext_dial","queue","voicemail","callback"],[[1,1],[0,0],[0,1],[0,1],[0,1],[1,1],[0,1]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["set","math"],[[1,1],[1,1]],[[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["background","playback","menu","saydigits","saynumber","sayphonetic","tts","ispeechtts","getdigits","getsecretdigits"],[[1,"n"],[1,1],[1,"n"],[1,1],[1,1],[1,1],[1,1],[1,1],[1,"n"],[1,"n"]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["record"],[[1,1]],[[1,"n"]]),this.createMultiplicities(a.multiplicities,["database","ispeechasr","sendSMS","sendMail","sendFax"],[[1,1],[1,1],[1,1],[1,1],[1,1]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["gotoc","gotoif","gotoiftime","vswitch"],[[0,0],[1,2],[1,2],[1,"n"]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["queuelog","goal"],[[1,1],[1,1]],[[1,"n"],[1,"n"]]),this.createMultiplicities(a.multiplicities,["noop","system","agi","subproject","custom_app"],[[1,1],[1,1],[0,1],[0,1],[0,1]],[[1,"n"],[1,"n"],[1,"n"],[1,"n"],[1,"n"]]),a.dblClick=function(e,t){var n=["background","gotoif","gotoiftime","menu","getdigits","getsecretdigits","vswitch"],o=new mxEventObject(mxEvent.DOUBLE_CLICK,"event",e,"cell",t);this.fireEvent(o),!this.isEnabled()||mxEvent.isConsumed(e)||o.isConsumed()||(this.getModel().isEdge(t)?n.indexOf(t.source.value.tagName)>=0&&this.startEditingAtCell(t):this.getModel().isVertex(t)&&i.projectDesignController.openDialog(t.getValue(),function(e){for(var n=0;n<e.length;n+=1)t.setAttribute(e[n].name,e[n].value);a.refresh(t)}),o.consume())},a.panningHandler.autoExpand=!0,a.panningHandler.factoryMethod=mxUtils.bind(this,function(e,t,n){this.menus.createPopupMenu(e,t,n)}),t.outline.init(this.outlineContainer),mxEvent.addGestureListeners(document,mxUtils.bind(this,function(e){a.panningHandler.hideMenu()})),mxClient.IS_TOUCH&&(mxEvent.addListener(a.container,"gesturechange",mxUtils.bind(this,function(e){a.view.getDrawPane().setAttribute("transform","scale("+e.scale+")"),a.view.getOverlayPane().style.visibility="hidden"})),mxEvent.addListener(a.container,"gestureend",mxUtils.bind(this,function(e){a.view.getDrawPane().removeAttribute("transform"),a.zoomToCenter=!0,a.zoom(e.scale),a.view.getOverlayPane().style.visibility="visible"})));var r=this.createKeyHandler(t);this.getKeyHandler=function(){return r},mxEvent.addListener(window,"resize",mxUtils.bind(this,function(){this.refresh(),a.sizeDidChange(),this.editor.outline.update(!1),this.editor.outline.outline.sizeDidChange()})),this.init(),this.open()},EditorUi.prototype.splitSize=mxClient.IS_TOUCH?16:8,EditorUi.prototype.menubarHeight=33,EditorUi.prototype.toolbarHeight=36,EditorUi.prototype.footerHeight=0,EditorUi.prototype.hsplitPosition=204,EditorUi.prototype.vsplitPosition=100,EditorUi.prototype.init=function(){this.addUndoListener(),this.addSelectionListener();var e=this.actions.get("paste"),t=function(){e.setEnabled(!mxClipboard.isEmpty())},n=mxClipboard.cut;mxClipboard.cut=function(){n.apply(this,arguments),t()};var a=mxClipboard.copy;mxClipboard.copy=function(){a.apply(this,arguments),t()}},EditorUi.prototype.isSelectionAllowed=function(e){return!1},EditorUi.prototype.exportXML=function(e){var t=window.document.createElement("a");t.href="data:attachment/text;charset=utf-8,"+encodeURI(e),t.download=this.editor.filename+".xml",t.target="_self",t.click()},EditorUi.prototype.open=function(){try{null!=window.opener&&null!=window.opener.openFile&&window.opener.openFile.setConsumer(mxUtils.bind(this,function(e,t){try{var n=mxUtils.parseXml(e);this.editor.setGraphXml(n.documentElement),this.editor.modified=!1,this.editor.undoManager.clear(),null!=t&&(this.editor.filename=t)}catch(e){mxUtils.alert(mxResources.get("invalidOrMissingFile")+": "+e.message)}}))}catch(e){}},EditorUi.prototype.openString=function(e,t,n){try{var a=mxUtils.parseXml(e);this.editor.setGraphXml(a.documentElement),this.editor.modified=!1,this.editor.undoManager.clear(),null!=t&&(this.editor.filename=t),null!=n&&(this.editor.data=n)}catch(e){mxUtils.alert(mxResources.get("invalidOrMissingFile")+": "+e.message)}},EditorUi.prototype.validate=function(e,t){for(var n=this.editor.graph,e=null!=e?e:n.model.getRoot(),t=null!=t?t:{},a=!0,i=n.model.getChildCount(e),o=0;o<i;o++){var s=n.model.getChildAt(e,o),r=t;n.isValidRoot(s)&&(r={}),null!=(r=this.validate(s,r))?n.setCellWarning(s,r.replace(/\n/g,"<br>")):n.setCellWarning(s,null),a=a&&null==r}if(i="",n.model.isVertex(e))switch(e.value.nodeName){case"start":i=this.validateBlock("start")?"":"Only one Start block is allowed\n";break;case"finally":i=this.validateBlock("finally")?"":"Only one Finally block is allowed\n";break;case"playback":i=e.value.getAttribute("file_id")>0?"":mxResources.get("noAudioSelected")+"\n";break;case"answer":i=e.value.getAttribute("timeout")>=0?"":mxResources.get("invalidTimeout")+"\n";break;case"menu":i=e.value.getAttribute("file_id")>0?"":mxResources.get("noAudioSelected")+"\n",i+=e.value.getAttribute("digit")>0?"":mxResources.get("wrongMaxDigit")+"\n",i+=e.value.getAttribute("response")>=0?"":mxResources.get("invalidTimeout")+"\n",i+=e.value.getAttribute("retry")>=0?"":mxResources.get("invalidRetry")+"\n";break;case"getdigits":i=e.value.getAttribute("file_id")>0?"":mxResources.get("noAudioSelected")+"\n",i+=e.value.getAttribute("variable_id")>0?"":mxResources.get("noVariableSelected")+"\n",i+=e.value.getAttribute("mindigit")>0?"":mxResources.get("wrongMinDigit")+"\n",i+=e.value.getAttribute("maxdigit")>0?"":mxResources.get("wrongMaxDigit")+"\n",i+=e.value.getAttribute("retry")>=0?"":mxResources.get("invalidRetry")+"\n";break;case"getsecretdigits":i=e.value.getAttribute("file_id")>0?"":mxResources.get("noAudioSelected")+"\n",i+=e.value.getAttribute("variable_id")>0?"":mxResources.get("noVariableSelected")+"\n",i+=e.value.getAttribute("mindigit")>0?"":mxResources.get("wrongMinDigit")+"\n",i+=e.value.getAttribute("maxdigit")>0?"":mxResources.get("wrongMaxDigit")+"\n",i+=e.value.getAttribute("hiddendigitsnum")>=0?"":mxResources.get("wrongHiddenDigitsnum")+"\n",i+=e.value.getAttribute("retry")>=0?"":mxResources.get("invalidRetry")+"\n";break;case"vswitch":i=e.value.getAttribute("variable_id")>0?"":mxResources.get("noVariableSelected")+"\n";break;case"database":i=e.value.getAttribute("odbc_id")>0?"":mxResources.get("noDatabaseSelected")+"\n",i+=""!==e.value.getAttribute("query")?"":mxResources.get("missingQuery")+"\n";break;case"set":case"math":i=e.value.getAttribute("variable_id")>0?"":mxResources.get("noVariableSelected")+"\n";break;case"gotoc":i=""!==e.value.getAttribute("context")?"":mxResources.get("noContextSelected")+"\n",i+=""!==e.value.getAttribute("extension")?"":mxResources.get("noExtensionSelected")+"\n",i+=e.value.getAttribute("priority")>=1?"":mxResources.get("invalidPriority")+"\n";break;case"system":case"agi":i=""!==e.value.getAttribute("command")?"":mxResources.get("noCommandSelected")+"\n";break;case"gotoif":i=""!==e.value.getAttribute("condition")?"":mxResources.get("noConditionSelected")+"\n";break;case"saydigits":i=""!==e.value.getAttribute("digits")?"":mxResources.get("noDigitsSelected")+"\n";break;case"saynumber":i=""!==e.value.getAttribute("number")?"":mxResources.get("noNumberSelected")+"\n";break;case"sayphonetic":i=""!==e.value.getAttribute("text")?"":mxResources.get("noTextSelected")+"\n";break;case"record":i=""!==e.value.getAttribute("file")?"":mxResources.get("noFileSelected")+"\n",i+=e.value.getAttribute("timeout")>=-1?"":mxResources.get("invalidTimeout")+"\n";break;case"goal":i=""!==e.value.getAttribute("goalname")?"":mxResources.get("noGoalSelected")+"\n";break;case"ext_dial":i="-1"!==e.value.getAttribute("trunk_name")?"":mxResources.get("noTrunkSelected")+"\n",i+=""!==e.value.getAttribute("phone")?"":mxResources.get("noIdentifierSelected")+"\n",i+=e.value.getAttribute("timeout")>=0?"":mxResources.get("invalidTimeout")+"\n";break;case"dial":i=e.value.getAttribute("sip_id")>0?"":mxResources.get("noIdentifierSelected")+"\n",i+=e.value.getAttribute("timeout")>=0?"":mxResources.get("invalidTimeout")+"\n";break;case"queue":i="-1"!==e.value.getAttribute("queue_id")?"":mxResources.get("noQueueSelected")+"\n",i+=e.value.getAttribute("timeout")>=0?"":mxResources.get("invalidTimeout")+"\n";break;case"callback":i="-1"!==e.value.getAttribute("list_id")?"":mxResources.get("noListSelected")+"\n",i+=""!==e.value.getAttribute("name")?"":mxResources.get("noFirstNameSelected")+"\n",i+=""!==e.value.getAttribute("phone")?"":mxResources.get("noPhoneSelected")+"\n",i+=e.value.getAttribute("delay")>=0?"":mxResources.get("invalidDelay")+"\n";break;case"gotoiftime":i=e.value.getAttribute("interval_id")>0?"":mxResources.get("noIntervalSelected")+"\n";break;case"voicemail":i=""!==e.value.getAttribute("mailbox")?"":mxResources.get("noBoxNumberSelected")+"\n";break;case"subproject":i=e.value.getAttribute("project_id")>0?"":mxResources.get("noProjectSelected")+"\n";break;case"sendSMS":i=e.value.getAttribute("account_id")>0?"":mxResources.get("noAccountSelected")+"\n",i+=""!==e.value.getAttribute("to")?"":mxResources.get("noRecipientSelected")+"\n",i+=""!==e.value.getAttribute("sms_text")?"":mxResources.get("noTextSelected")+"\n";break;case"sendMail":i=e.value.getAttribute("account_id")>0?"":mxResources.get("noAccountSelected")+"\n",i+=""!==e.value.getAttribute("to")?"":mxResources.get("noRecipientSelected")+"\n";break;case"sendFax":i=e.value.getAttribute("account_id")>0?"":mxResources.get("noAccountSelected")+"\n",i+=""!==e.value.getAttribute("to")?"":mxResources.get("noRecipientSelected")+"\n",i+=""!==e.value.getAttribute("attachment_path")?"":mxResources.get("noAttachmentSelected")+"\n";break;case"tts":i=""!==e.value.getAttribute("text")?"":mxResources.get("noTextSelected")+"\n";break;case"ispeechtts":i=""!==e.value.getAttribute("text")?"":mxResources.get("noTextSelected")+"\n",i+=""!==e.value.getAttribute("key")?"":mxResources.get("noKeySelected")+"\n",i+=e.value.getAttribute("speed")>=-10&&e.value.getAttribute("speed")<=10?"":mxResources.get("invalidSpeed")+"\n";break;case"ispeechasr":i=""!==e.value.getAttribute("key")?"":mxResources.get("noKeySelected")+"\n",i+=e.value.getAttribute("timeout")>=-1?"":mxResources.get("invalidTimeout")+"\n";break;case"custom_app":i=""!==e.value.getAttribute("application")?"":mxResources.get("noApplicationSelected")+"\n"}if(n.model.isEdge(e))switch(n.model.getCell(e.source.getId()).value.nodeName){case"background":i+=(l=/^[0-9]{1,45}$|^[i]{1}$|^[t]{1}|^[#]{1}|^[*]{1}$/).test(String(e.getValue()))?"":mxResources.get("numberOrInvalidOrTimeout")+"\n";break;case"menu":l=/^[0-9]{1,45}$|^[-]{1}$|^[i]{1}$|^[t]{1}|^[#]{1}|^[*]{1}$/;(d=String(e.getValue())).split(",").forEach(function(e){i+=l.test(e)?"":mxResources.get("numberOrAll")+"\n"});break;case"getsecretdigits":case"getdigits":var l=/^(x|i|-)$/,d=String(e.getValue());i+=l.test(d)?"":mxResources.get("numberOrInvalidOrDefault")+"\n";break;case"gotoif":case"gotoiftime":i+=(l=/^(true){1}$|^(false){1}$/).test(String(e.getValue()))?"":mxResources.get("trueOrFalse")+"\n"}return n.isCellCollapsed(e)&&!a&&(i+=(mxResources.get(n.containsValidationErrorsResource)||n.containsValidationErrorsResource)+"\n"),i=n.model.isEdge(e)?i+(n.getEdgeValidationError(e,n.model.getTerminal(e,!0),n.model.getTerminal(e,!1))||""):i+(n.getCellValidationError(e)||""),null!=(o=n.validateCell(e,t))&&(i+=o),null==n.model.getParent(e)&&n.view.validate(),i.length>0||!a?i:null},EditorUi.prototype.validateBlock=function(e){var t=this.editor.graph,n=0;return t.getDefaultParent().children.forEach(function(a){t.model.isVertex(a)&&a.value.nodeName==e&&n++}),!(n>1)},EditorUi.prototype.getUrl=function(e){var t=null!=e?e:window.location.pathname,n=t.indexOf("?")>0?1:0;for(var a in urlParams)t+=0==n?"?":"&",t+=a+"="+urlParams[a],n++;return t},EditorUi.prototype.addUndoListener=function(){var e=this.actions.get("undo"),t=this.actions.get("redo"),n=this.editor.undoManager,a=function(){e.setEnabled(n.canUndo()),t.setEnabled(n.canRedo())};n.addListener(mxEvent.ADD,a),n.addListener(mxEvent.UNDO,a),n.addListener(mxEvent.REDO,a),n.addListener(mxEvent.CLEAR,a),a()},EditorUi.prototype.addSelectionListener=function(){var e=mxUtils.bind(this,function(){var e=this.editor.graph,t=!e.isSelectionEmpty(),n=!1,a=!1,i=e.getSelectionCells();if(null!=i)for(r=0;r<i.length;r++){var o=i[r];if(e.getModel().isEdge(o)&&(a=!0),e.getModel().isVertex(o)&&(n=!0),a&&n)break}for(var s=["cut","copy","delete","duplicate","bold","italic","style","underline","toFront","toBack","dashed","rounded","shadow","tilt","autosize"],r=0;r<s.length;r++)this.actions.get(s[r]).setEnabled(t);this.actions.get("curved").setEnabled(a),this.actions.get("rotation").setEnabled(n),this.actions.get("wordWrap").setEnabled(n),this.actions.get("group").setEnabled(e.getSelectionCount()>1),this.actions.get("ungroup").setEnabled(1==e.getSelectionCount()&&e.getModel().getChildCount(e.getSelectionCell())>0);var l=n&&1==e.getSelectionCount();this.actions.get("removeFromGroup").setEnabled(l&&e.getModel().isVertex(e.getModel().getParent(e.getSelectionCell())));for(var d=["fontFamily","fontSize","alignment","position","text","format","arrange","linewidth","spacing"],r=0;r<d.length;r++)this.menus.get(d[r]).setEnabled(t);d=["line","lineend","linestart"];for(r=0;r<d.length;r++)this.menus.get(d[r]).setEnabled(a);this.actions.get("setAsDefaultEdge").setEnabled(a),this.menus.get("align").setEnabled(e.getSelectionCount()>1),this.menus.get("direction").setEnabled(n||a&&e.isLoop(e.view.getState(e.getSelectionCell()))),this.menus.get("navigation").setEnabled(e.foldingEnabled&&(null!=e.view.currentRoot||1==e.getSelectionCount()&&e.isValidRoot(e.getSelectionCell()))),this.actions.get("home").setEnabled(null!=e.view.currentRoot),this.actions.get("exitGroup").setEnabled(null!=e.view.currentRoot);var c=1==e.getSelectionCount()&&e.isValidRoot(e.getSelectionCell());this.actions.get("enterGroup").setEnabled(c),this.actions.get("expand").setEnabled(c),this.actions.get("collapse").setEnabled(c),this.actions.get("editLink").setEnabled(1==e.getSelectionCount()),this.actions.get("openLink").setEnabled(1==e.getSelectionCount()&&null!=e.getLinkForCell(e.getSelectionCell()))});this.editor.graph.getSelectionModel().addListener(mxEvent.CHANGE,e),e()},EditorUi.prototype.refresh=function(){var e=mxClient.IS_IE&&(null==document.documentMode||5==document.documentMode),t=this.container.clientWidth,n=this.container.clientHeight;this.container==document.body&&(t=document.body.clientWidth||document.documentElement.clientWidth,n=e?document.body.clientHeight||document.documentElement.clientHeight:document.documentElement.clientHeight);var a=Math.max(0,Math.min(this.hsplitPosition,t-this.splitSize-20)),i=Math.max(0,Math.min(this.vsplitPosition,n-this.menubarHeight-this.toolbarHeight-this.footerHeight-this.splitSize-1));this.menubarContainer.style.height=this.menubarHeight+"px",this.toolbarContainer.style.top=this.menubarHeight+"px",this.toolbarContainer.style.height=this.toolbarHeight+"px";var o=this.menubarHeight+this.toolbarHeight;if(mxClient.IS_QUIRKS||(o+=1),this.sidebarContainer.style.top=o+"px",this.sidebarContainer.style.width=a+"px",this.outlineContainer.style.width=a+"px",this.outlineContainer.style.height=i+"px",this.outlineContainer.style.bottom=this.footerHeight+"px",this.diagramContainer.style.left=a+this.splitSize+"px",this.diagramContainer.style.top=this.sidebarContainer.style.top,this.footerContainer.style.height=this.footerHeight+"px",this.footerContainer.style.display="none",this.hsplit.style.top=this.sidebarContainer.style.top,this.hsplit.style.bottom=this.outlineContainer.style.bottom,this.hsplit.style.left=a+"px",this.vsplit.style.width=this.sidebarContainer.style.width,this.vsplit.style.bottom=i+this.footerHeight+"px",e){this.menubarContainer.style.width=t+"px",this.toolbarContainer.style.width=this.menubarContainer.style.width;var s=n-i-this.splitSize-this.footerHeight-this.menubarHeight-this.toolbarHeight;this.sidebarContainer.style.height=s+"px",this.diagramContainer.style.width=t-a-this.splitSize+"px";var r=n-this.footerHeight-this.menubarHeight-this.toolbarHeight;this.diagramContainer.style.height=r+"px",this.footerContainer.style.width=this.menubarContainer.style.width,this.hsplit.style.height=r+"px"}else this.sidebarContainer.style.bottom=i+this.splitSize+this.footerHeight+"px",this.diagramContainer.style.bottom=this.outlineContainer.style.bottom},EditorUi.prototype.createDivs=function(){this.menubarContainer=this.createDiv("geMenubarContainer"),this.toolbarContainer=this.createDiv("geToolbarContainer"),this.sidebarContainer=this.createDiv("geSidebarContainer"),this.outlineContainer=this.createDiv("geOutlineContainer"),this.diagramContainer=this.createDiv("geDiagramContainer"),this.footerContainer=this.createDiv("geFooterContainer"),this.hsplit=this.createDiv("geHsplit"),this.vsplit=this.createDiv("geVsplit"),this.menubarContainer.style.top="0px",this.menubarContainer.style.left="0px",this.menubarContainer.style.right="0px",this.toolbarContainer.style.left="0px",this.toolbarContainer.style.right="0px",this.sidebarContainer.style.left="0px",this.outlineContainer.style.left="0px",this.diagramContainer.style.right="0px",this.footerContainer.style.left="0px",this.footerContainer.style.right="0px",this.footerContainer.style.bottom="0px",this.vsplit.style.left="0px",this.vsplit.style.height=this.splitSize+"px",this.hsplit.style.width=this.splitSize+"px"},EditorUi.prototype.createUi=function(){this.menubar=this.menus.createMenubar(this.createDiv("geMenubar")),this.menubarContainer.appendChild(this.menubar.container),this.toolbar=this.createToolbar(this.createDiv("geToolbar")),this.toolbarContainer.appendChild(this.toolbar.container),this.sidebar=this.createSidebar(this.sidebarContainer),this.footerContainer.appendChild(this.createFooter()),this.statusContainer=this.createStatusContainer(),this.editor.addListener("statusChanged",mxUtils.bind(this,function(){this.setStatusText(this.editor.getStatus())})),this.setStatusText(this.editor.getStatus()),this.menubar.container.appendChild(this.statusContainer),this.container.appendChild(this.menubarContainer),this.container.appendChild(this.toolbarContainer),this.container.appendChild(this.sidebarContainer),this.container.appendChild(this.outlineContainer),this.container.appendChild(this.diagramContainer),this.container.appendChild(this.footerContainer),this.container.appendChild(this.hsplit),this.container.appendChild(this.vsplit),this.addSplitHandler(this.hsplit,!0,0,mxUtils.bind(this,function(e){this.hsplitPosition=e,this.refresh(),this.editor.graph.sizeDidChange(),this.editor.outline.update(!1),this.editor.outline.outline.sizeDidChange()})),this.addSplitHandler(this.vsplit,!1,this.footerHeight,mxUtils.bind(this,function(e){this.vsplitPosition=e,this.refresh(),this.editor.outline.update(!1),this.editor.outline.outline.sizeDidChange()}))},EditorUi.prototype.createStatusContainer=function(){var e=document.createElement("a");return e.className="geItem geStatus",e},EditorUi.prototype.createStatusContainer=function(){var e=document.createElement("a");return e.className="geItem geStatus",e},EditorUi.prototype.setStatusText=function(e){this.statusContainer.innerHTML=e},EditorUi.prototype.createToolbar=function(e){return new Toolbar(this,e)},EditorUi.prototype.createSidebar=function(e){return new Sidebar(this,e)},EditorUi.prototype.createFooter=function(){return this.createDiv("geFooter")},EditorUi.prototype.createDiv=function(e){var t=document.createElement("div");return t.className=e,t},EditorUi.prototype.createHeader=function(e){return document.createElement(e)},EditorUi.prototype.createForm=function(e){var t=document.createElement("form");return t.className=e,t},EditorUi.prototype.addSplitHandler=function(e,t,n,a){function i(){return parseInt(t?e.style.left:e.style.bottom)}function o(e){if(null!=r){var i=new mxPoint(mxEvent.getClientX(e),mxEvent.getClientY(e));a(Math.max(0,l+(t?i.x-r.x:r.y-i.y)-n)),mxEvent.consume(e)}}function s(e){o(e),r=null,l=null}var r=null,l=null;mxEvent.addGestureListeners(e,function(e){r=new mxPoint(mxEvent.getClientX(e),mxEvent.getClientY(e)),l=i(),mxEvent.consume(e)}),mxEvent.addListener(document,"mousemove",o),mxEvent.addListener(document,"touchmove",o),mxEvent.addListener(document,"mouseup",s),mxEvent.addListener(document,"touchend",s)},EditorUi.prototype.executeLayout=function(e,t,n){var a=this.editor.graph,i=a.getSelectionCell();t=null!=this.animate?this.animate:t,a.getModel().beginUpdate();try{e.execute(a.getDefaultParent(),i)}catch(e){throw e}finally{if(t&&navigator.userAgent.indexOf("Camino")<0){var o=new mxMorphing(a);o.addListener(mxEvent.DONE,mxUtils.bind(this,function(){a.getModel().endUpdate()})),o.startAnimation()}else a.getModel().endUpdate()}},EditorUi.prototype.createKeyHandler=function(e){function t(e){if(!n.isSelectionEmpty()){var t=0,a=0;37==e?t=-1:38==e?a=-1:39==e?t=1:40==e&&(a=1),n.moveCells(n.getSelectionCells(),t,a),n.scrollCellToVisible(n.getSelectionCell())}}var n=this.editor.graph,a=new mxKeyHandler(n);a.isControlDown=function(e){return mxEvent.isControlDown(e)||mxClient.IS_MAC&&e.metaKey};var i=mxUtils.bind(this,function(e,t,n,i){var o=this.actions.get(n);if(null!=o){var s=function(){o.enabled&&o.funct()};t?i?a.bindControlShiftKey(e,s):a.bindControlKey(e,s):i?a.bindShiftKey(e,s):a.bindKey(e,s)}});return a.enter=function(){},a.bindKey(8,function(){n.foldCells(!0)}),a.bindKey(13,function(){n.foldCells(!1)}),a.bindKey(33,function(){n.exitGroup()}),a.bindKey(34,function(){n.enterGroup()}),a.bindKey(36,function(){n.home()}),a.bindKey(35,function(){n.refresh()}),a.bindKey(37,function(){t(37)}),a.bindKey(38,function(){t(38)}),a.bindKey(39,function(){t(39)}),a.bindKey(40,function(){t(40)}),a.bindKey(113,function(){n.startEditingAtCell()}),i(46,!1,"delete"),i(82,!0,"tilt"),i(83,!0,"save"),i(83,!0,"saveAs",!0),i(107,!1,"zoomIn"),i(109,!1,"zoomOut"),i(65,!0,"selectAll"),i(86,!0,"selectVertices",!0),i(69,!0,"selectEdges",!0),i(69,!0,"export"),i(66,!0,"toBack"),i(70,!0,"toFront"),i(68,!0,"duplicate"),i(90,!0,"undo"),i(89,!0,"redo"),i(88,!0,"cut"),i(67,!0,"copy"),i(81,!0,"connect"),i(86,!0,"paste"),i(71,!0,"group"),i(71,!0,"grid",!0),i(85,!0,"ungroup"),i(112,!1,"about"),i(80,!0,"publish",!0),a},EditorUi.prototype.createMultiplicities=function(e,t,n,a){for(var i=0;i<t.length;i++)e.push(new mxMultiplicity(!0,t[i],null,null,n[i][0],n[i][1],null,mxResources.get(t[i])+mxResources.get("musthave")+n[i][0]+mxResources.get("outgoingedge"),null)),e.push(new mxMultiplicity(!1,t[i],null,null,a[i][0],a[i][1],null,mxResources.get(t[i])+mxResources.get("musthave")+a[i][0]+mxResources.get("incomingedge"),null))};var useLocalStorage=(mxClient.IS_TOUCH||"local"==urlParams.storage)&&"undefined"!=typeof localStorage,fileSupport=null!=window.File&&null!=window.FileReader&&null!=window.FileList,touchStyle=mxClient.IS_TOUCH||"1"==urlParams.touch,counter=0;try{for(var op=window;null!=op.opener&&!isNaN(op.opener.counter);)op=op.opener;null!=op&&(op.counter++,counter=op.counter)}catch(e){}Editor=function(){mxEventSource.call(this),this.init(),this.initStencilRegistry(),this.graph=new Graph,this.outline=new mxOutline(this.graph),this.outline.updateOnPan=!0,this.undoManager=this.createUndoManager(),this.status="",this.filename=null,this.getOrCreateFilename=function(){return this.filename||mxResources.get("drawing",[counter])+".xml"},this.getFilename=function(){return this.filename},this.setStatus=function(e){this.status=e,this.fireEvent(new mxEventObject("statusChanged"))},this.getStatus=function(){return this.status},this.modified=!1,this.graphChangeListener=function(){this.modified=!0},this.graph.getModel().addListener(mxEvent.CHANGE,mxUtils.bind(this,function(){this.graphChangeListener.apply(this,arguments)})),window.onbeforeunload=mxUtils.bind(this,function(){if(this.modified)return mxResources.get("allChangesLost")}),this.graph.resetViewOnRootChange=!1,this.graph.scrollbars=!0,this.graph.background=null},mxUtils.extend(Editor,mxEventSource),Editor.prototype.gridImage=IMAGE_PATH+"/grid.gif",Editor.prototype.transparentImage=IMAGE_PATH+"/transparent.gif",Editor.prototype.setGraphXml=function(e){var t=new mxCodec(e.ownerDocument);if("mxGraphModel"==e.nodeName){this.graph.view.scale=1,this.graph.gridEnabled="0"!=e.getAttribute("grid"),this.graph.graphHandler.guidesEnabled="0"!=e.getAttribute("guides"),this.graph.setTooltips("0"!=e.getAttribute("tooltips")),this.graph.setConnectable("0"!=e.getAttribute("connect")),this.graph.foldingEnabled="0"!=e.getAttribute("fold"),this.graph.scrollbars="0"!=e.getAttribute("scrollbars"),this.graph.scrollbars||(this.graph.container.scrollLeft=0,this.graph.container.scrollTop=0,this.graph.view.translate.x=Number(e.getAttribute("dx")||0),this.graph.view.translate.y=Number(e.getAttribute("dy")||0)),this.graph.pageVisible="1"==e.getAttribute("page"),this.graph.pageBreaksVisible=this.graph.pageVisible,this.graph.preferPageSize=this.graph.pageBreaksVisible;var n=e.getAttribute("pageScale");this.graph.pageScale=null!=n?n:1.5;var a=e.getAttribute("pageWidth"),i=e.getAttribute("pageHeight");null!=a&&null!=i&&(this.graph.pageFormat=new mxRectangle(0,0,parseFloat(a),parseFloat(i)),this.outline.outline.pageFormat=this.graph.pageFormat);var o=e.getAttribute("background");null!=o&&o.length>0&&(this.graph.background=o),t.decode(e,this.graph.getModel()),this.updateGraphComponents()}},Editor.prototype.getGraphXml=function(){var e=new mxCodec(mxUtils.createXmlDocument()).encode(this.graph.getModel());return 0==this.graph.view.translate.x&&0==this.graph.view.translate.y||(e.setAttribute("dx",Math.round(100*this.graph.view.translate.x)/100),e.setAttribute("dy",Math.round(100*this.graph.view.translate.y)/100)),e.setAttribute("grid",this.graph.isGridEnabled()?"1":"0"),e.setAttribute("guides",this.graph.graphHandler.guidesEnabled?"1":"0"),e.setAttribute("guides",this.graph.graphHandler.guidesEnabled?"1":"0"),e.setAttribute("tooltips",this.graph.tooltipHandler.isEnabled()?"1":"0"),e.setAttribute("connect",this.graph.connectionHandler.isEnabled()?"1":"0"),e.setAttribute("fold",this.graph.foldingEnabled?"1":"0"),e.setAttribute("page",this.graph.pageVisible?"1":"0"),e.setAttribute("pageScale",this.graph.pageScale),e.setAttribute("pageWidth",this.graph.pageFormat.width),e.setAttribute("pageHeight",this.graph.pageFormat.height),this.graph.scrollbars||e.setAttribute("scrollbars","0"),null!=this.graph.background&&e.setAttribute("background",this.graph.background),e},Editor.prototype.updateGraphComponents=function(){var e=this.graph,t=this.outline;if(null!=e.container&&null!=t.outline.container){null!=e.background?"none"==e.background?e.container.style.backgroundColor="transparent":(null!=e.view.backgroundPageShape&&(e.view.backgroundPageShape.fill=e.background,e.view.backgroundPageShape.reconfigure()),e.container.style.backgroundColor=e.background):e.container.style.backgroundColor="",e.pageVisible?(e.container.style.backgroundColor="#ebebeb",e.container.style.borderStyle="solid",e.container.style.borderColor="#e5e5e5",e.container.style.borderTopWidth="1px",e.container.style.borderLeftWidth="1px",e.container.style.borderRightWidth="0px",e.container.style.borderBottomWidth="0px"):e.container.style.border="",t.outline.container.style.backgroundColor=e.container.style.backgroundColor,t.outline.pageVisible==e.pageVisible&&t.outline.pageScale==e.pageScale||(t.outline.pageScale=e.pageScale,t.outline.pageVisible=e.pageVisible,t.outline.view.validate()),e.scrollbars&&"hidden"==e.container.style.overflow&&!touchStyle?e.container.style.overflow="auto":e.scrollbars&&!touchStyle||(e.container.style.overflow="hidden");var n=mxClient.IS_IE&&document.documentMode>=9?"url("+this.transparentImage+")":"none";e.container.style.backgroundImage=!e.pageVisible&&e.isGridEnabled()?"url("+this.gridImage+")":n,null!=e.view.backgroundPageShape&&(e.view.backgroundPageShape.node.style.backgroundImage=this.graph.isGridEnabled()?"url("+this.gridImage+")":"none")}},Editor.prototype.init=function(){mxClient.IS_IE6&&mxClient.link("stylesheet",CSS_PATH+"/grapheditor-ie6.css"),mxResources.loadDefaultBundle=!1,mxResources.add(RESOURCE_BASE),mxConstants.DEFAULT_HOTSPOT=.3;var e=mxConnectionHandler.prototype.createMarker;mxConnectionHandler.prototype.createMarker=function(){var t=e.apply(this,arguments);return t.intersects=mxUtils.bind(this,function(e,n){return!!this.isConnecting()||mxCellMarker.prototype.intersects.apply(t,arguments)}),t},mxConstants.SHADOWCOLOR="#d0d0d0",mxConstants.HANDLE_FILLCOLOR="#99ccff",mxConstants.HANDLE_STROKECOLOR="#0088cf",mxConstants.VERTEX_SELECTION_COLOR="#00a8ff",mxConstants.OUTLINE_COLOR="#00a8ff",mxConstants.OUTLINE_HANDLE_FILLCOLOR="#99ccff",mxConstants.OUTLINE_HANDLE_STROKECOLOR="#00a8ff",mxConstants.CONNECT_HANDLE_FILLCOLOR="#cee7ff",mxConstants.EDGE_SELECTION_COLOR="#00a8ff",mxConstants.DEFAULT_VALID_COLOR="#00a8ff",mxConstants.LABEL_HANDLE_FILLCOLOR="#cee7ff",mxConstants.GUIDE_COLOR="#0088cf",mxGraph.prototype.pageBreakColor="#c0c0c0",mxGraph.prototype.pageScale=1,mxRubberband.prototype.defaultOpacity=30,mxGraphView.prototype.createBackgroundPageShape=function(e){return new mxRectangleShape(e,this.graph.background||"white","#cacaca")},mxGraphView.prototype.getBackgroundPageBounds=function(){var e=this.getGraphBounds(),t=e.width>0?e.x/this.scale-this.translate.x:0,n=e.height>0?e.y/this.scale-this.translate.y:0,a=e.width/this.scale,i=e.height/this.scale,o=this.graph.pageFormat,s=this.graph.pageScale,r=o.width*s,l=o.height*s,d=Math.floor(Math.min(0,t)/r),c=Math.floor(Math.min(0,n)/l),m=Math.ceil(Math.max(1,t+a)/r)-d,u=Math.ceil(Math.max(1,n+i)/l)-c;return new mxRectangle(this.scale*(this.translate.x+d*r),this.scale*(this.translate.y+c*l),this.scale*m*r,this.scale*u*l)};var t=mxGraph.prototype.panGraph;mxGraph.prototype.panGraph=function(e,n){t.apply(this,arguments),this.dialect==mxConstants.DIALECT_SVG||null==this.view.backgroundPageShape||this.useScrollbarsForPanning&&mxUtils.hasScrollbars(this.container)||(this.view.backgroundPageShape.node.style.marginLeft=e+"px",this.view.backgroundPageShape.node.style.marginTop=n+"px")};var n=this;mxGraphView.prototype.validateBackground=function(){var e=this.graph.getBackgroundImage();if(null!=e){if(null==this.backgroundImage||this.backgroundImage.image!=e.src){null!=this.backgroundImage&&this.backgroundImage.destroy();t=new mxRectangle(0,0,1,1);this.backgroundImage=new mxImageShape(t,e.src),this.backgroundImage.dialect=this.graph.dialect,this.backgroundImage.init(this.backgroundPane),this.backgroundImage.redraw()}this.redrawBackgroundImage(this.backgroundImage,e)}else null!=this.backgroundImage&&(this.backgroundImage.destroy(),this.backgroundImage=null);if(this.graph.pageVisible){var t=this.getBackgroundPageBounds();null==this.backgroundPageShape?(this.backgroundPageShape=this.createBackgroundPageShape(t),this.backgroundPageShape.scale=1,this.backgroundPageShape.isShadow=!0,this.backgroundPageShape.dialect=mxConstants.DIALECT_STRICTHTML,this.backgroundPageShape.init(this.graph.container),this.graph.container.firstChild.style.position="absolute",this.graph.container.insertBefore(this.backgroundPageShape.node,this.graph.container.firstChild),this.backgroundPageShape.redraw(),this.backgroundPageShape.node.className="geBackgroundPage",this.backgroundPageShape.node.style.backgroundPosition="-1px -1px",mxEvent.addListener(this.backgroundPageShape.node,"dblclick",mxUtils.bind(this,function(e){this.graph.dblClick(e)})),mxEvent.addGestureListeners(this.backgroundPageShape.node,mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_DOWN,new mxMouseEvent(e))}),mxUtils.bind(this,function(e){null!=this.graph.tooltipHandler&&this.graph.tooltipHandler.isHideOnHover()&&this.graph.tooltipHandler.hide(),this.graph.isMouseDown&&!mxEvent.isConsumed(e)&&this.graph.fireMouseEvent(mxEvent.MOUSE_MOVE,new mxMouseEvent(e))}),mxUtils.bind(this,function(e){this.graph.fireMouseEvent(mxEvent.MOUSE_UP,new mxMouseEvent(e))}))):(this.backgroundPageShape.scale=1,this.backgroundPageShape.bounds=t,this.backgroundPageShape.redraw()),this.backgroundPageShape.node.style.backgroundImage=this.graph.isGridEnabled()?"url("+n.gridImage+")":"none"}else null!=this.backgroundPageShape&&(this.backgroundPageShape.destroy(),this.backgroundPageShape=null)},mxGraph.prototype.updatePageBreaks=function(e,t,n){var a=this.view.scale,i=this.view.translate,o=this.pageFormat,s=a*this.pageScale,r=this.view.getBackgroundPageBounds();t=r.width,n=r.height;var l=new mxRectangle(a*i.x,a*i.y,o.width*s,o.height*s),d=(e=e&&Math.min(l.width,l.height)>this.minPageBreakDist)?Math.ceil(t/l.width)-1:0,c=e?Math.ceil(n/l.height)-1:0,m=r.x+t,u=r.y+n;if(null==this.horizontalPageBreaks&&d>0&&(this.horizontalPageBreaks=[]),null!=this.horizontalPageBreaks){for(h=0;h<=d;h++){p=[new mxPoint(r.x+(h+1)*l.width,r.y),new mxPoint(r.x+(h+1)*l.width,u)];null!=this.horizontalPageBreaks[h]?(this.horizontalPageBreaks[h].scale=1,this.horizontalPageBreaks[h].points=p,this.horizontalPageBreaks[h].redraw()):((g=new mxPolyline(p,this.pageBreakColor,this.scale)).dialect=this.dialect,g.isDashed=this.pageBreakDashed,g.addPipe=!1,g.scale=a,g.init(this.view.backgroundPane),g.redraw(),this.horizontalPageBreaks[h]=g)}for(h=d;h<this.horizontalPageBreaks.length;h++)this.horizontalPageBreaks[h].destroy();this.horizontalPageBreaks.splice(d,this.horizontalPageBreaks.length-d)}if(null==this.verticalPageBreaks&&c>0&&(this.verticalPageBreaks=[]),null!=this.verticalPageBreaks){for(h=0;h<=c;h++){var p=[new mxPoint(r.x,r.y+(h+1)*l.height),new mxPoint(m,r.y+(h+1)*l.height)];if(null!=this.verticalPageBreaks[h])this.verticalPageBreaks[h].scale=1,this.verticalPageBreaks[h].points=p,this.verticalPageBreaks[h].redraw();else{var g=new mxPolyline(p,this.pageBreakColor,a);g.dialect=this.dialect,g.isDashed=this.pageBreakDashed,g.addPipe=!1,g.scale=a,g.init(this.view.backgroundPane),g.redraw(),this.verticalPageBreaks[h]=g}}for(var h=c;h<this.verticalPageBreaks.length;h++)this.verticalPageBreaks[h].destroy();this.verticalPageBreaks.splice(c,this.verticalPageBreaks.length-c)}},mxEdgeHandler.prototype.snapToTerminals=!0,mxGraphHandler.prototype.guidesEnabled=!0;var a=mxGraphHandler.prototype.shouldRemoveCellsFromParent;mxGraphHandler.prototype.shouldRemoveCellsFromParent=function(e,t,n){for(var i=0;i<t.length;i++)if(this.graph.getModel().isVertex(t[i])){var o=this.graph.getCellGeometry(t[i]);if(null!=o&&o.relative)return!1}return a.apply(this,arguments)},mxGuide.prototype.isEnabledForEvent=function(e){return!mxEvent.isAltDown(e)};var i=mxPopupMenu.prototype.addItem;mxPopupMenu.prototype.addItem=function(e,t,n,a,o,s){var r=i.apply(this,arguments);return null==s||s||mxEvent.addListener(r,"mousedown",function(e){mxEvent.consume(e)}),r};var o=mxGraphHandler.prototype.getInitialCellForEvent;mxGraphHandler.prototype.getInitialCellForEvent=function(e){var t=this.graph.getModel(),n=t.getParent(this.graph.getSelectionCell()),a=o.apply(this,arguments),i=t.getParent(a);if(null==n||n!=a&&n!=i)for(;!this.graph.isCellSelected(a)&&!this.graph.isCellSelected(i)&&t.isVertex(i)&&!this.graph.isValidRoot(i);)a=i,i=this.graph.getModel().getParent(a);return a};var s=mxGraphHandler.prototype.isDelayedSelection;mxGraphHandler.prototype.isDelayedSelection=function(e){var t=s.apply(this,arguments),n=this.graph.getModel(),a=n.getParent(this.graph.getSelectionCell()),i=n.getParent(e);return(null==a||a!=e&&a!=i)&&(this.graph.isCellSelected(e)||!n.isVertex(i)||this.graph.isValidRoot(i)||(t=!0)),t},mxGraphHandler.prototype.selectDelayed=function(e){var t=e.getCell();null==t&&(t=this.cell);for(var n=this.graph.getModel(),a=n.getParent(t);this.graph.isCellSelected(t)&&n.isVertex(a)&&!this.graph.isValidRoot(a);)t=a,a=n.getParent(t);this.graph.selectCellForEvent(t,e.getEvent())},mxPanningHandler.prototype.getCellForPopupEvent=function(e){for(var t=e.getCell(),n=this.graph.getModel(),a=n.getParent(t);n.isVertex(a)&&!this.graph.isValidRoot(a);)this.graph.isCellSelected(a)&&(t=a),a=n.getParent(a);return t}},Editor.prototype.createUndoManager=function(){var e=this.graph,t=new mxUndoManager,n=function(e,n){t.undoableEditHappened(n.getProperty("edit"))};e.getModel().addListener(mxEvent.UNDO,n),e.getView().addListener(mxEvent.UNDO,n);var a=function(t,n){for(var a=e.getSelectionCellsForChanges(n.getProperty("edit").changes),i=[],o=1;o<a.length;o++)null!=e.view.getState(a[o])&&i.push(a[o]);e.setSelectionCells(i)};return t.addListener(mxEvent.UNDO,a),t.addListener(mxEvent.REDO,a),t},Editor.prototype.initStencilRegistry=function(){mxStencilRegistry.loadStencilSet(STENCIL_PATH+"/general.xml")},function(){mxStencilRegistry.libraries={},mxStencilRegistry.packages=[],mxStencilRegistry.getStencil=function(e){var t=mxStencilRegistry.stencils[e];if(null==t){var n=mxStencilRegistry.getBasenameForStencil(e);if(null!=n){var a=mxStencilRegistry.libraries[n];if(null!=a){if(null==mxStencilRegistry.packages[n]){mxStencilRegistry.packages[n]=1;for(var i=0;i<a.length;i++){var o=a[i];if(".xml"==o.toLowerCase().substring(o.length-4,o.length))mxStencilRegistry.loadStencilSet(o,null);else if(".js"==o.toLowerCase().substring(o.length-3,o.length)){var s=mxUtils.load(o);null!=s&&eval.call(window,s.getText())}}}}else mxStencilRegistry.loadStencilSet(STENCIL_PATH+"/"+n+".xml",null);t=mxStencilRegistry.stencils[e]}}return t},mxStencilRegistry.getBasenameForStencil=function(e){var t=e.split("."),n=null;if(t.length>0&&"mxgraph"==t[0]){n=t[1];for(var a=2;a<t.length-1;a++)n+="/"+t[a]}return n},mxStencilRegistry.loadStencilSet=function(e,t,n){n=null!=n&&n;var a=mxStencilRegistry.packages[e];if(n||null==a){var i=!1;null==a&&(a=mxUtils.load(e).getXml(),mxStencilRegistry.packages[e]=a,i=!0),mxStencilRegistry.parseStencilSet(a,t,i)}},mxStencilRegistry.parseStencilSet=function(e,t,n){n=null==n||n;var a=e.documentElement,i=a.firstChild,o="",s=a.getAttribute("name");for(null!=s&&(o=s+".");null!=i;){if(i.nodeType==mxConstants.NODETYPE_ELEMENT&&null!=(s=i.getAttribute("name"))){o=o.toLowerCase();var r=s.replace(/ /g,"_");if(n&&mxStencilRegistry.addStencil(o+r.toLowerCase(),new mxStencil(i)),null!=t){var l=i.getAttribute("w"),d=i.getAttribute("h");t(o,r,s,l=null==l?80:parseInt(l,10),d=null==d?80:parseInt(d,10))}}i=i.nextSibling}}}(),OpenFile=function(e){this.producer=null,this.consumer=null,this.done=e},OpenFile.prototype.setConsumer=function(e){this.consumer=e,this.execute()},OpenFile.prototype.setData=function(e,t){this.data=e,this.filename=t,this.execute()},OpenFile.prototype.error=function(e){this.cancel(),mxUtils.alert(e)},OpenFile.prototype.execute=function(){null!=this.consumer&&null!=this.data&&(this.consumer(this.data,this.filename),this.cancel())},OpenFile.prototype.cancel=function(){null!=this.done&&this.done()},Sidebar.prototype.init=function(){var e=STENCIL_PATH;this.addSearchPalette(!0),this.addImagePalette("entry",mxResources.get("entry"),e+"/entry/","_128x128.png",["start","finally","end"],[mxResources.get("start"),mxResources.get("finally"),mxResources.get("end")]),this.addImagePalette("call_management",mxResources.get("call_management"),e+"/call_management/","_128x128.png",["answer","hangup","dial","ext_dial","queue","voicemail","callback"],[mxResources.get("answer"),mxResources.get("hangup"),mxResources.get("dial"),mxResources.get("ext_dial"),mxResources.get("queue"),mxResources.get("voicemail"),mxResources.get("callback")]),this.addImagePalette("variable",mxResources.get("variable"),e+"/variable/","_128x128.png",["set","math"],[mxResources.get("set"),mxResources.get("math")]),this.addImagePalette("playback",mxResources.get("playback"),e+"/playback/","_128x128.png",["playback","menu","saydigits","saynumber","sayphonetic","tts","ispeechtts","getdigits","getsecretdigits"],[mxResources.get("playback"),mxResources.get("menu"),mxResources.get("saydigits"),mxResources.get("saynumber"),mxResources.get("sayphonetic"),mxResources.get("tts"),mxResources.get("ispeechtts"),mxResources.get("getdigits"),mxResources.get("getsecretdigits")]),this.addImagePalette("recording",mxResources.get("recording"),e+"/recording/","_128x128.png",["record"],[mxResources.get("record")]),this.addImagePalette("integrationServer",mxResources.get("integrationServer"),e+"/integration_server/","_128x128.png",["database","ispeechasr"],[mxResources.get("database"),mxResources.get("ispeechasr")]),this.addImagePalette("callflow",mxResources.get("callflow"),e+"/callflow/","_128x128.png",["gotoc","gotoif","gotoiftime","vswitch"],[mxResources.get("gotoc"),mxResources.get("gotoif"),mxResources.get("gotoiftime"),mxResources.get("vswitch")]),this.addImagePalette("stats",mxResources.get("stats"),e+"/stats/","_128x128.png",["goal"],[mxResources.get("goal")]),this.addImagePalette("general",mxResources.get("general"),e+"/general/","_128x128.png",["noop","system","agi","subproject","custom_app"],[mxResources.get("noop"),mxResources.get("system"),mxResources.get("agi"),mxResources.get("subproject"),mxResources.get("custom_app")])},Sidebar.prototype.collapsedImage=mxClient.IS_SVG?"data:image/gif;base64,R0lGODlhDQANAIABAJmZmf///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozNUQyRTJFNjZGNUYxMUU1QjZEOThCNDYxMDQ2MzNCQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozNUQyRTJFNzZGNUYxMUU1QjZEOThCNDYxMDQ2MzNCQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjFERjc3MEUxNkY1RjExRTVCNkQ5OEI0NjEwNDYzM0JCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjFERjc3MEUyNkY1RjExRTVCNkQ5OEI0NjEwNDYzM0JCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAQAsAAAAAA0ADQAAAhSMj6lrwAjcC1GyahV+dcZJgeIIFgA7":IMAGE_PATH+"/collapsed.gif",Sidebar.prototype.expandedImage=mxClient.IS_SVG?"data:image/gif;base64,R0lGODlhDQANAIABAJmZmf///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxREY3NzBERjZGNUYxMUU1QjZEOThCNDYxMDQ2MzNCQiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxREY3NzBFMDZGNUYxMUU1QjZEOThCNDYxMDQ2MzNCQiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjFERjc3MERENkY1RjExRTVCNkQ5OEI0NjEwNDYzM0JCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjFERjc3MERFNkY1RjExRTVCNkQ5OEI0NjEwNDYzM0JCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAQAsAAAAAA0ADQAAAhGMj6nL3QAjVHIu6azbvPtWAAA7":IMAGE_PATH+"/expanded.gif",Sidebar.prototype.tooltipImage=mxClient.IS_SVG?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAbCAMAAAB7jU7LAAAACVBMVEX///+ZmZn///9Y2COLAAAAA3RSTlP//wDXyg1BAAAAOElEQVR42mXQMQ4AMAgDsWv//+iutcJmIQSk+9dJpVKpVCqVSqVSqZTdncWzF8/NeP7FkxWenPEDOnUBiL3jWx0AAAAASUVORK5CYII=":IMAGE_PATH+"/tooltip.png",Sidebar.prototype.searchImage=mxClient.IS_SVG?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAEaSURBVHjabNGxS5VxFIfxz71XaWuQUJCG/gCHhgTD9VpEETg4aMOlQRp0EoezObgcd220KQiXmpretTAHQRBdojlQEJyukPdt+b1ywfvAGc7wnHP4nlZd1yKijQW8xzNc4Su+ZOYfQ3T6/f4YNvEJYzjELXp4VVXVz263+7cR2niBxAFeZ2YPi3iHR/gYERPDwhpOsd6sz8x/mfkNG3iOlWFhFj8y89J9KvzGXER0GuEaD42mgwHqUtoljbcRsTBCeINpfM/MgZLKPpaxFxGbOCqDXmILN7hoJrTKH+axhxmcYRxP0MIDnOBDZv5q1XUNIuJxifJp+UNV7t7BFM6xeic0RMQ4Bpl5W/ol7GISx/eEUUTECrbx+f8A8xhiZht9zsgAAAAASUVORK5CYII=":IMAGE_PATH+"/search.png",Sidebar.prototype.enableTooltips=!0,Sidebar.prototype.tooltipBorder=16,Sidebar.prototype.tooltipDelay=300,Sidebar.prototype.dropTargetDelay=200,Sidebar.prototype.thumbWidth=36,Sidebar.prototype.thumbHeight=36,Sidebar.prototype.thumbPadding=document.documentMode>=5?0:1,Sidebar.prototype.thumbBorder=2,Sidebar.prototype.sidebarTitleSize=9,Sidebar.prototype.sidebarTitles=!1,Sidebar.prototype.tooltipTitles=!0,Sidebar.prototype.maxTooltipWidth=400,Sidebar.prototype.maxTooltipHeight=400,Sidebar.prototype.addStencilsToIndex=!0,Sidebar.prototype.defaultImageWidth=80,Sidebar.prototype.defaultImageHeight=80,Sidebar.prototype.getOffset=function(e){return e=e.getBoundingClientRect(),{left:e.left+window.scrollX,top:e.top+window.scrollY}},Sidebar.prototype.showTooltip=function(e,t,n,a,i,o){if(this.enableTooltips&&this.showTooltips&&this.currentElt!=e){null!=this.thread&&(window.clearTimeout(this.thread),this.thread=null);var s=mxUtils.bind(this,function(){null==this.tooltip&&(this.tooltip=document.createElement("div"),this.tooltip.className="geSidebarTooltip",this.tooltip.style.zIndex=mxPopupMenu.prototype.zIndex-1,document.body.appendChild(this.tooltip),this.graph2=new Graph(this.tooltip,null,null,this.editorUi.editor.graph.getStylesheet()),this.graph2.resetViewOnRootChange=!1,this.graph2.foldingEnabled=!1,this.graph2.gridEnabled=!1,this.graph2.autoScroll=!1,this.graph2.setTooltips(!1),this.graph2.setConnectable(!1),this.graph2.setEnabled(!1),mxClient.IS_SVG||(this.graph2.view.canvas.style.position="relative"),this.tooltipImage=mxUtils.createImage(this.tooltipImage),this.tooltipImage.className="geSidebarTooltipImage",this.tooltipImage.style.zIndex=mxPopupMenu.prototype.zIndex-1,this.tooltipImage.style.position="absolute",this.tooltipImage.style.width="14px",this.tooltipImage.style.height="27px",document.body.appendChild(this.tooltipImage)),this.graph2.model.clear(),this.graph2.view.setTranslate(this.tooltipBorder,this.tooltipBorder),n>this.maxTooltipWidth||a>this.maxTooltipHeight?this.graph2.view.scale=Math.round(100*Math.min(this.maxTooltipWidth/n,this.maxTooltipHeight/a))/100:this.graph2.view.scale=1,this.tooltip.style.display="block",this.graph2.labelsVisible=null==o||o,this.graph2.addCells(t);var s=this.graph2.getGraphBounds(),r=s.width+2*this.tooltipBorder+4,l=s.height+2*this.tooltipBorder;if(mxClient.IS_QUIRKS?(l+=4,this.tooltip.style.overflow="hidden"):this.tooltip.style.overflow="visible",this.tooltipImage.style.visibility="visible",this.tooltip.style.width=r+"px",this.tooltipTitles&&null!=i&&i.length>0){null==this.tooltipTitle?(this.tooltipTitle=document.createElement("div"),this.tooltipTitle.style.borderTop="1px solid gray",this.tooltipTitle.style.textAlign="center",this.tooltipTitle.style.width="100%",this.tooltipTitle.style.overflow="hidden",mxClient.IS_SVG?this.tooltipTitle.style.paddingTop="6px":(this.tooltipTitle.style.position="absolute",this.tooltipTitle.style.paddingTop="6px"),this.tooltip.appendChild(this.tooltipTitle)):this.tooltipTitle.innerHTML="",this.tooltipTitle.style.display="",mxUtils.write(this.tooltipTitle,i);var d=this.tooltipTitle.offsetHeight+10;l+=d,mxClient.IS_SVG?this.tooltipTitle.style.marginTop=2-d+"px":(l-=6,this.tooltipTitle.style.top=l-d+"px")}else null!=this.tooltipTitle&&null!=this.tooltipTitle.parentNode&&(this.tooltipTitle.style.display="none");this.tooltip.style.height=l+"px";var c=-Math.round(s.x-this.tooltipBorder),m=-Math.round(s.y-this.tooltipBorder),u=document.body,p=document.documentElement,g=(u.clientHeight||p.clientHeight,document.getElementById("vertical-navigation").offsetWidth+this.container.clientWidth),h=Math.max(0,this.getOffset(e).top-this.container.scrollTop-l/2+16);mxClient.IS_SVG?0!=c||0!=m?this.graph2.view.canvas.setAttribute("transform","translate("+c+","+m+")"):this.graph2.view.canvas.removeAttribute("transform"):(this.graph2.view.drawPane.style.left=c+"px",this.graph2.view.drawPane.style.top=m+"px"),this.tooltip.style.position="absolute",this.tooltip.style.left=g+"px",this.tooltip.style.top=h+"px",this.tooltipImage.style.left=g-13+"px",this.tooltipImage.style.top=h+l/2-13+"px"});null!=this.tooltip&&"none"!=this.tooltip.style.display?s():this.thread=window.setTimeout(s,this.tooltipDelay),this.currentElt=e}},Sidebar.prototype.hideTooltip=function(){null!=this.thread&&(window.clearTimeout(this.thread),this.thread=null),null!=this.tooltip&&(this.tooltip.style.display="none",this.tooltipImage.style.visibility="hidden",this.currentElt=null)},Sidebar.prototype.addEntry=function(e,t){if(null!=this.taglist&&null!=e&&e.length>0)for(var n=e.toLowerCase().replace(/[\/\,\(\)]/g," ").split(" "),a=0;a<n.length;a++)if(n[a]=n[a].replace(/\.*\d*$/,""),n[a].length>1){var i=this.taglist[n[a]];null==i&&(i={entries:[],dict:new mxDictionary},this.taglist[n[a]]=i),null==i.dict.get(t)&&(i.dict.put(t,t),i.entries.push(t))}return t},Sidebar.prototype.searchEntries=function(e,t,n,a,i){if(null!=this.taglist&&null!=e){for(var o=e.toLowerCase().split(" "),s=new mxDictionary,r=(n+1)*t,l=[],d=0,c=0;c<o.length;c++)if(o[c].length>0){var m=this.taglist[o[c]],u=new mxDictionary;if(null!=m){var p=m.entries;l=[];for(var g=0;g<p.length;g++){m=p[g];if(0==d==(null==s.get(m))&&(u.put(m,m),l.push(m),c==o.length-1&&l.length==r))return void a(l.slice(n*t,r),r,!0)}}else l=[];s=u,d++}var h=l.length;a(l.slice(n*t,(n+1)*t),h,!1)}else a([])},Sidebar.prototype.filterTags=function(e){if(null!=e){for(var t=e.split(" "),n=[],a={},i=0;i<t.length;i++)null==a[t[i]]&&(a[t[i]]="1",n.push(t[i]));return n.join(" ")}return null},Sidebar.prototype.cloneCell=function(e,t){var n=e.clone();return null!=t&&(n.value=t),n},Sidebar.prototype.addSearchPalette=function(e){var t=document.createElement("div");t.style.visibility="hidden",this.container.appendChild(t);var n=document.createElement("div");n.className="geSidebar",n.style.boxSizing="border-box",n.style.overflow="hidden",n.style.width="100%",n.style.padding="8px",n.style.paddingTop="14px",n.style.paddingBottom="0px",e||(n.style.display="none");var a=document.createElement("div");a.style.whiteSpace="nowrap",a.style.textOverflow="clip",a.style.paddingBottom="8px",a.style.cursor="default";var i=document.createElement("input");i.setAttribute("placeholder",mxResources.get("searchShapes")),i.setAttribute("type","text"),i.style.fontSize="12px",i.style.overflow="hidden",i.style.boxSizing="border-box",i.style.border="solid 1px #d5d5d5",i.style.borderRadius="4px",i.style.width="100%",i.style.outline="none",i.style.padding="6px",a.appendChild(i);var o=document.createElement("img");o.setAttribute("src",Sidebar.prototype.searchImage),o.setAttribute("title",mxResources.get("search")),o.style.position="relative",o.style.left="-18px",mxClient.IS_QUIRKS?(i.style.height="28px",o.style.top="-4px"):o.style.top="2px",o.style.background="url('"+this.editorUi.editor.transparentImage+"')";var s;a.appendChild(o),n.appendChild(a);var r=document.createElement("center"),l=mxUtils.button(mxResources.get("moreResults"),function(){s()});l.style.display="none",l.style.lineHeight="normal",l.style.marginTop="4px",l.style.marginBottom="8px",r.style.paddingTop="4px",r.style.paddingBottom="8px",r.appendChild(l),n.appendChild(r);var d="",c=!1,m=!1,u=0,p=new Object,g=12,h=mxUtils.bind(this,function(){c=!1,this.currentSearch=null;for(var e=n.firstChild;null!=e;){var t=e.nextSibling;e!=a&&e!=r&&e.parentNode.removeChild(e),e=t}});s=mxUtils.bind(this,function(){if(g=4*Math.max(1,Math.floor(this.container.clientWidth/(this.thumbWidth+10))),this.hideTooltip(),""!=i.value){if(null!=r.parentNode&&(d!=i.value&&(h(),d=i.value,p=new Object,m=!1,u=0),!c&&!m)){l.setAttribute("disabled","true"),l.style.display="",l.style.cursor="wait",l.innerHTML=mxResources.get("loading")+"...",c=!0;var e=new Object;this.currentSearch=e,this.searchEntries(d,g,u,mxUtils.bind(this,function(t,a,i){if(this.currentSearch==e){t=null!=t?t:[],c=!1,u++,r.parentNode.removeChild(r);for(var o=0;o<t.length;o++){var s=t[o]();null==p[s.innerHTML]&&(p[s.innerHTML]="1",n.appendChild(t[o]()))}if(i?(l.removeAttribute("disabled"),l.innerHTML=mxResources.get("moreResults")):(l.innerHTML=mxResources.get("reset"),l.style.display="none",m=!0),l.style.cursor="",0==t.length&&1==u){var g=document.createElement("div");g.className="geTitle",g.style.backgroundColor="transparent",g.style.borderColor="transparent",g.style.color="gray",g.style.padding="0px",g.style.margin="0px 8px 0px 8px",g.style.paddingTop="6px",g.style.textAlign="center",g.style.cursor="default",mxUtils.write(g,mxResources.get("noResultsFor",[d])),n.appendChild(g)}n.appendChild(r)}}),mxUtils.bind(this,function(){l.style.cursor=""}))}}else h(),i.value="",d="",p=new Object,l.style.display="none",m=!1,i.focus()}),mxEvent.addListener(i,"keydown",mxUtils.bind(this,function(e){13==e.keyCode&&s()})),mxEvent.addListener(i,"focus",function(){i.style.paddingRight="",o.style.display="none"}),mxEvent.addListener(i,"blur",function(){i.style.paddingRight="20px",o.style.display=""}),i.style.paddingRight="20px",mxEvent.addListener(i,"keyup",mxUtils.bind(this,function(e){""==i.value?(m=!0,l.style.display="none"):i.value!=d?(l.style.display="none",m=!1):c||(l.style.display=m?"none":"")})),mxEvent.addListener(i,"mousedown",function(e){e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0}),mxEvent.addListener(i,"selectstart",function(e){e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0});var v=document.createElement("div");v.appendChild(n),this.container.appendChild(v),this.palettes.search=[t,v]},Sidebar.prototype.createTitle=function(e){var t=document.createElement("a");return t.setAttribute("href","javascript:void(0);"),t.setAttribute("title",mxResources.get("sidebarTooltip")),t.className="geTitle",mxUtils.write(t,e),t},Sidebar.prototype.createThumb=function(e,t,n,a,i,o,s,r,l){this.graph.labelsVisible=null==o||o;var d=mxClient.NO_FO;mxClient.NO_FO=Editor.prototype.originalNoForeignObject;this.graph.view.scaleAndTranslate(1,0,0),this.graph.addCells(e);var c=this.graph.getGraphBounds(),m=Math.floor(100*Math.min((t-2*this.thumbBorder)/c.width,(n-2*this.thumbBorder)/c.height))/100;this.graph.view.scaleAndTranslate(m,Math.floor((t-c.width*m)/2/m-c.x),Math.floor((n-c.height*m)/2/m-c.y));var u=null;if(this.graph.dialect!=mxConstants.DIALECT_SVG||mxClient.NO_FO?(u=this.graph.container.cloneNode(!1)).innerHTML=this.graph.container.innerHTML:u=this.graph.view.getCanvas().ownerSVGElement.cloneNode(!0),this.graph.getModel().clear(),mxClient.NO_FO=d,mxClient.IS_IE6&&(a.style.backgroundImage="url("+this.editorUi.editor.transparentImage+")"),u.style.position="relative",u.style.overflow="hidden",u.style.cursor="move",u.style.left=this.thumbBorder+"px",u.style.top=this.thumbBorder+"px",u.style.width=t+"px",u.style.height=n+"px",u.style.visibility="",u.style.minWidth="",u.style.minHeight="",a.appendChild(u),this.sidebarTitles&&null!=i&&0!=s){var p=mxClient.IS_QUIRKS?2*this.thumbPadding+2:0;a.style.height=this.thumbHeight+p+this.sidebarTitleSize+8+"px";var g=document.createElement("div");g.style.fontSize=this.sidebarTitleSize+"px",g.style.color="#303030",g.style.textAlign="center",g.style.whiteSpace="nowrap",mxClient.IS_IE&&(g.style.height=this.sidebarTitleSize+12+"px"),g.style.paddingTop="4px",mxUtils.write(g,i),a.appendChild(g)}return c},Sidebar.prototype.createItem=function(e,t,n,a,i,o,s){var r=document.createElement("a");r.setAttribute("href","javascript:void(0);"),r.className="geItem",r.style.overflow="hidden";var l=mxClient.IS_QUIRKS?8+2*this.thumbPadding:2*this.thumbBorder;r.style.width=this.thumbWidth+l+"px",r.style.height=this.thumbHeight+l+"px",r.style.padding=this.thumbPadding+"px",mxEvent.addListener(r,"click",function(e){mxEvent.consume(e)}),this.createThumb(e,this.thumbWidth,this.thumbHeight,r,t,n,a,i,o);var d=new mxRectangle(0,0,i,o);if(e.length>1||e[0].vertex){c=this.createDragSource(r,this.createDropHandler(e,!0,s,d),this.createDragPreview(i,o),e,d);this.addClickHandler(r,c,e),c.isGuidesEnabled=mxUtils.bind(this,function(){return this.editorUi.editor.graph.graphHandler.guidesEnabled})}else if(null!=e[0]&&e[0].edge){var c=this.createDragSource(r,this.createDropHandler(e,!1,s,d),this.createDragPreview(i,o),e,d);this.addClickHandler(r,c,e)}return mxClient.IS_IOS||mxEvent.addGestureListeners(r,null,mxUtils.bind(this,function(a){this.showTooltip(r,e,d.width,d.height,t,n)})),r},Sidebar.prototype.createDropHandler=function(e,t,n,a){return n=null==n||n,mxUtils.bind(this,function(i,o,s,r,l){if(i.isEnabled()){if((e=i.getImportableCells(e)).length>0){i.stopEditing();var d=null!=s&&i.isValidDropTarget(s,e,o),c=null;if(null==s||d||(s=null),!i.isCellLocked(s||i.getDefaultParent())){i.model.beginUpdate();try{if(r=Math.round(r),l=Math.round(l),t&&i.isSplitTarget(s,e,o)){var m=i.cloneCells(e);i.splitEdge(s,m,null,r-a.width/2,l-a.height/2),c=m}else e.length>0&&(c=i.importCells(e,r,l,s));if(null!=i.layoutManager){var u=i.layoutManager.getLayout(s);if(null!=u)for(var p=i.view.scale,g=i.view.translate,h=(r+g.x)*p,v=(l+g.y)*p,b=0;b<c.length;b++)u.moveCell(c[b],h,v)}n&&i.fireEvent(new mxEventObject("cellsInserted","cells",c))}finally{i.model.endUpdate()}null!=c&&c.length>0&&(i.scrollCellToVisible(c[0]),i.setSelectionCells(c))}}mxEvent.consume(o)}})},Sidebar.prototype.createDragPreview=function(e,t){var n=document.createElement("div");return n.style.border="1px dashed black",n.style.width=e+"px",n.style.height=t+"px",n},Sidebar.prototype.createDragSource=function(e,t,n){var a=mxUtils.makeDraggable(e,this.editorUi.editor.graph,t,n,0,0,this.editorUi.editor.graph.autoscroll,!0,!0);return a.getDropTarget=function(e,t,n){var a=mxDragSource.prototype.getDropTarget.apply(this,arguments);return e.isValidRoot(a)||(a=null),a},a},Sidebar.prototype.addClickHandler=function(e,t){var n=this.editorUi.editor.graph,a=null;mxEvent.addGestureListeners(e,function(e){a=new mxPoint(mxEvent.getClientX(e),mxEvent.getClientY(e))});var i=t.mouseUp;t.mouseUp=function(e){if(!mxEvent.isPopupTrigger(e)&&null==this.currentGraph&&null!=a){var o=n.tolerance;if(Math.abs(a.x-mxEvent.getClientX(e))<=o&&Math.abs(a.y-mxEvent.getClientY(e))<=o){var s=n.getGridSize();t.drop(n,e,null,s,s)}}i.apply(this,arguments),a=null}},Sidebar.prototype.createVertexTemplateEntry=function(e,t,n,a,i,o,s,r){return r=null!=r&&r.length>0?r:i.toLowerCase(),this.addEntry(r,mxUtils.bind(this,function(){return this.createVertexTemplate(e,t,n,a,i,o,s)}))},Sidebar.prototype.createXmlDocument=function(e,t,n,a){var i=mxUtils.createXmlDocument().createElement(e);return i.setAttribute("label",t),n.forEach(function(e,t){i.setAttribute(e,a[t]?a[t]:"")}),i},Sidebar.prototype.createVertexTemplate=function(e,t,n,a,i,o,s,r){var l=[],d=[];switch(a){case"answer":l=["timeout"],d=["0"];break;case"start":l=["answer"],d=["yes"];break;case"ispeechasr":l=["key","model","ispeech_asr_language","timeout","intKey","beep"],d=["","","it-IT","1","#","BEEP"];break;case"playback":l=["file_id","opts"],d=["0"];break;case"background":l=["file_id","response","digit"],d=["0","5","1"];break;case"menu":l=["file_id","response","digit","retry","variable_id"],d=["0","5","1","1","0"];break;case"getdigits":l=["file_id","response","mindigit","maxdigit","retry","variable_id"],d=["0","5","1","10","1","0"];break;case"getsecretdigits":l=["file_id","response","mindigit","maxdigit","retry","hiddendigitsnum","hiddendigitspos","variable_id"],d=["0","5","1","10","1","0","first","0"];break;case"custom_app":l=["application","options"],d=["",""];break;case"set":l=["variable_id","variable_value"],d=["0",""];break;case"database":l=["odbc_id","query","variable_id"],d=["0","",""];break;case"noop":l=["output"],d=[];break;case"gotoc":l=["context","extension","priority"],d=["","","1"];break;case"system":l=["variable_id","command"],d=[];break;case"agi":l=["command","args"],d=[];break;case"gotoif":l=["condition"],d=[];break;case"gotoiftime":l=["interval_id"],d=["0"];break;case"vswitch":l=["variable_id"],d=["0"];break;case"saydigits":l=["digits","escape_digits"],d=["","#"];break;case"saynumber":l=["number","escape_digits"],d=["","#"];break;case"sayphonetic":l=["text","escape_digits"],d=["","#"];break;case"record":l=["file","recordingFormat","timeout","escape_digits"],d=["","wav","-1","#"];break;case"dial":l=["sip_id","timeout","opts","url"],d=["0","60"];break;case"ext_dial":l=["phone","trunk_name","timeout","opts","url"],d=["","-1","60"];break;case"tts":l=["text","google_tts_language"],d=["","it"];break;case"ispeechtts":l=["text","key","ispeech_tts_language","speed","intKey"],d=["","","euritalianfemale","0","#"];break;case"queue":l=["queue_id","opts","url","file_id","timeout","agi","macro","gosub","position"],d=["-1","xX","","","300"];break;case"voicemail":l=["mailbox","options"],d=["",""];break;case"subproject":l=["project_id"],d=["0"];break;case"math":l=["operation","variable_id"],d=["","0"];break;case"queuelog":l=["queuename","agent","queue_event","data1","data2","data3","data4","data5"],d=[];break;case"goal":l=["goalname"],d=[];break;case"callback":l=["name","lastName","phone","list_id","delay"],d=["{CALLERID(name)}","","{CALLERID(num)}","-1","5"];break;case"sendSMS":l=["account_id","to","sms_text"],d=["0"];break;case"sendMail":l=["account_id","template_id","to","cc","bcc","subject","text"],d=["0"];break;case"sendFax":l=["account_id","to","choose_attachment","attachment_name","attachment_type","attachment_path"],d=["0"];break;default:l=[],d=[]}var c=[new mxCell(this.createXmlDocument(a,i,l,d),new mxGeometry(0,0,t,n),e)];return c[0].vertex=!0,this.createVertexTemplateFromCells(c,t,n,i,o,s,r)},Sidebar.prototype.createVertexTemplateFromCells=function(e,t,n,a,i,o,s){return this.createItem(e,a,i,o,t,n,s)},Sidebar.prototype.createEdgeTemplate=function(e,t,n,a,i,o,s){var r=new mxCell(null!=a?a:"",new mxGeometry(0,0,t,n),e);return r.geometry.setTerminalPoint(new mxPoint(0,n),!0),r.geometry.setTerminalPoint(new mxPoint(t,0),!1),r.geometry.relative=!0,r.edge=!0,this.createEdgeTemplateFromCells([r],t,n,i,o,s)},Sidebar.prototype.createEdgeTemplateFromCells=function(e,t,n,a,i,o){return this.createItem(e,a,i,!0,t,n,o)},Sidebar.prototype.addPaletteFunctions=function(e,t,n,a){this.addPalette(e,t,n,mxUtils.bind(this,function(e){for(var t=0;t<a.length;t++)e.appendChild(a[t](e))}))},Sidebar.prototype.addPalette=function(e,t,n,a){var i=this.createTitle(t);this.container.appendChild(i);var o=document.createElement("div");o.className="geSidebar",mxClient.IS_POINTER&&(o.style.touchAction="none"),mxEvent.addListener(o,"mousemove",mxUtils.bind(this,function(e){mxEvent.getSource(e)==o?o.setAttribute("title",mxResources.get("sidebarTooltip")):o.removeAttribute("title")})),n?(a(o),a=null):o.style.display="none",this.addFoldingHandler(i,o,a);var s=document.createElement("div");return s.appendChild(o),this.container.appendChild(s),null!=e&&(this.palettes[e]=[i,s]),o},Sidebar.prototype.addFoldingHandler=function(e,t,n){var a=!1;(!mxClient.IS_IE||document.documentMode>=8)&&(e.style.backgroundImage="none"==t.style.display?"url('"+this.collapsedImage+"')":"url('"+this.expandedImage+"')"),e.style.backgroundRepeat="no-repeat",e.style.backgroundPosition="0% 50%",mxEvent.addListener(e,"click",mxUtils.bind(this,function(i){if("none"==t.style.display){if(a)t.style.display="block";else if(a=!0,null!=n){e.style.cursor="wait";var o=e.innerHTML;e.innerHTML=mxResources.get("loading")+"...",window.setTimeout(function(){var a=mxClient.NO_FO;mxClient.NO_FO=Editor.prototype.originalNoForeignObject,n(t),mxClient.NO_FO=a,t.style.display="block",e.style.cursor="",e.innerHTML=o},0)}else t.style.display="block";e.style.backgroundImage="url('"+this.expandedImage+"')"}else e.style.backgroundImage="url('"+this.collapsedImage+"')",t.style.display="none";mxEvent.consume(i)}))},Sidebar.prototype.addImagePalette=function(e,t,n,a,i,o,s){for(var r=[],l=0;l<i.length;l++)mxUtils.bind(this,function(e,t,o){if(null==o){var s=e.lastIndexOf("/"),d=e.lastIndexOf(".");o=e.substring(s>=0?s+1:0,d>=0?d:e.length).replace(/[-_]/g," ")}r.push(this.createVertexTemplateEntry("image;html=1;labelBackgroundColor=#ffffff;image="+n+e+a,this.defaultImageWidth,this.defaultImageHeight,i[l],t,!1,!0,this.filterTags(o)))})(i[l],null!=o?o[l]:null,null!=s?s[i[l]]:null);this.addPaletteFunctions(e,t,!1,r)},"undefined"!=typeof html4&&(html4.ATTRIBS["a::target"]=0),mxConstants.SHADOW_OPACITY=.25,mxConstants.SHADOWCOLOR="#000000",mxConstants.VML_SHADOWCOLOR="#d0d0d0",mxGraph.prototype.pageBreakColor="#c0c0c0",mxGraph.prototype.pageScale=1,function(){try{if(null!=navigator&&null!=navigator.language){var e=navigator.language.toLowerCase();mxGraph.prototype.pageFormat="en-us"===e||"en-ca"===e||"es-mx"===e?mxConstants.PAGE_FORMAT_LETTER_PORTRAIT:mxConstants.PAGE_FORMAT_A4_PORTRAIT}}catch(e){}}(),mxText.prototype.baseSpacingTop=5,mxText.prototype.baseSpacingBottom=1,mxGraphModel.prototype.ignoreRelativeEdgeParent=!1,mxGraphView.prototype.gridImage=mxClient.IS_SVG?"data:image/gif;base64,R0lGODlhCgAKAJEAAAAAAP///8zMzP///yH5BAEAAAMALAAAAAAKAAoAAAIJ1I6py+0Po2wFADs=":IMAGE_PATH+"/grid.gif",mxGraphView.prototype.gridSteps=4,mxGraphView.prototype.minGridSize=4,mxGraphView.prototype.gridColor="#e0e0e0",mxSvgCanvas2D.prototype.foAltText="[Not supported by viewer]",Graph=function(e,t,n,a){mxGraph.call(this,e,t,n,a),this.setConnectable(!0),this.setDropEnabled(!1),this.setPanning(!0),this.setTooltips(!mxClient.IS_TOUCH),this.setAllowLoops(!1),this.setMultigraph(!1),this.allowAutoPanning=!0,this.resetEdgesOnConnect=!1,this.constrainChildren=!1,this.connectionHandler.targetConnectImage=!0,this.setAllowDanglingEdges(!1),this.connectionHandler.setCreateTarget(!1),this.connectionHandler.isValidSource=function(){return mxConnectionHandler.prototype.isValidSource.apply(this,arguments)&&"2"!=urlParams.connect},this.alternateEdgeStyle="vertical",null==a&&this.loadStylesheet();var i=new mxRubberband(this);this.getRubberband=function(){return i},this.panningHandler.addListener(mxEvent.PAN_START,mxUtils.bind(this,function(){this.container.style.cursor="pointer"})),this.panningHandler.addListener(mxEvent.PAN_END,mxUtils.bind(this,function(){this.container.style.cursor="default"})),this.isHtmlLabel=function(e){var t=this.view.getState(e),n=null!=t?t.style:this.getCellStyle(e);return"1"==n.html||"wrap"==n.whiteSpace},this.cellRenderer.getLabelValue=function(e){var t=mxCellRenderer.prototype.getLabelValue.apply(this,arguments);return"wrap"==e.style.whiteSpace&&1!=e.style.html&&(t=mxUtils.htmlEntities(t,!1)),t},this.isCellLocked=function(e){return!1},this.connectionHandler.tapAndHoldTolerance=16;var o=this.connectionHandler.tapAndHold;this.connectionHandler.tapAndHold=function(e,t){null==t?this.graph.panningHandler.active||(i.start(e.getGraphX(),e.getGraphY()),this.graph.panningHandler.panningTrigger=!1):tapAndHoldStartsConnection?o.apply(this,arguments):this.graph.isCellSelected(t.cell)&&this.graph.getSelectionCount()>1&&this.graph.removeSelectionCell(t.cell)},touchStyle&&this.initTouch()},mxUtils.extend(Graph,mxGraph),Graph.prototype.minFitScale=null,Graph.prototype.maxFitScale=null,Graph.prototype.loadStylesheet=function(){var e=mxUtils.load(STYLE_PATH+"/default.xml").getDocumentElement();new mxCodec(e.ownerDocument).decode(e,this.getStylesheet())},Graph.prototype.flipEdge=function(e){if(null!=e){var t=this.view.getState(e),n=null!=t?t.style:this.getCellStyle(e);if(null!=n){var a=mxUtils.getValue(n,mxConstants.STYLE_ELBOW,mxConstants.ELBOW_HORIZONTAL)==mxConstants.ELBOW_HORIZONTAL?mxConstants.ELBOW_VERTICAL:mxConstants.ELBOW_HORIZONTAL;this.setCellStyles(mxConstants.STYLE_ELBOW,a,[e])}}},Graph.prototype.setDefaultEdge=function(e){if(null!=e&&this.getModel().isEdge(e)){var t=this.getModel().cloneCells([e])[0];null!=t.geometry&&(t.geometry.points=null);var n=t.getStyle();n=mxUtils.setStyle(n,mxConstants.STYLE_ENTRY_X,null),n=mxUtils.setStyle(n,mxConstants.STYLE_ENTRY_Y,null),n=mxUtils.setStyle(n,mxConstants.STYLE_EXIT_X,null),n=mxUtils.setStyle(n,mxConstants.STYLE_EXIT_Y,null),t.setStyle(n),this.connectionHandler.createEdgeState=function(e){return this.graph.view.createState(t)},this.connectionHandler.factoryMethod=function(){return this.graph.cloneCells([t])[0]}}},Graph.prototype.isCellFoldable=function(e){return this.foldingEnabled&&this.isSwimlane(e)},Graph.prototype.isValidRoot=function(e){return this.isSwimlane(e)},Graph.prototype.createGroupCell=function(){var e=mxGraph.prototype.createGroupCell.apply(this,arguments);return e.setStyle("group"),e},Graph.prototype.getTooltipForCell=function(e){var t="";return this.getModel().isVertex(e)?t+=mxResources.get("description_"+e.value.nodeName)||"":this.getModel().isEdge(e)&&(t=mxGraph.prototype.getTooltipForCell.apply(this,arguments)),t},Graph.prototype.convertValueToString=function(e){return null!=e.value&&"object"==typeof e.value?e.value.getAttribute("label"):mxGraph.prototype.convertValueToString.apply(this,arguments)},Graph.prototype.cellLabelChanged=function(e,t,n){if(null!=e.value&&"object"==typeof e.value){var a=e.value.cloneNode(!0);a.setAttribute("label",t),t=a}mxGraph.prototype.cellLabelChanged.apply(this,arguments)},Graph.prototype.setLinkForCell=function(e,t){var n=null;null!=e.value&&"object"==typeof e.value?n=e.value.cloneNode(!0):(n=mxUtils.createXmlDocument().createElement("UserObject")).setAttribute("label",e.value),null!=t&&t.length>0?n.setAttribute("link",t):n.removeAttribute("link"),this.model.setValue(e,n)},Graph.prototype.getLinkForCell=function(e){return null!=e.value&&"object"==typeof e.value?e.value.getAttribute("link"):null},Graph.prototype.initTouch=function(){this.connectionHandler.marker.isEnabled=function(){return null!=this.graph.connectionHandler.first},this.addListener(mxEvent.START_EDITING,function(e,t){this.panningHandler.hideMenu()});var e=!1,t=null;this.updateMouseEvent=function(e){if(mxGraph.prototype.updateMouseEvent.apply(this,arguments),null==e.getState()){var t=this.getCellAt(e.graphX,e.graphY);this.getModel().isEdge(t)&&(e.state=this.view.getState(t),null!=e.state&&null!=e.state.shape&&(this.container.style.cursor=e.state.shape.node.style.cursor))}null==e.getState()&&(this.container.style.cursor="default")},this.fireMouseEvent=function(n,a,i){if(n==mxEvent.MOUSE_DOWN)this.panningHandler.isMenuShowing()?(e=!1,t=null):(t=a.getCell(),e=null!=t?this.isCellSelected(t):this.isSelectionEmpty());else if(n==mxEvent.MOUSE_UP){if(e&&!this.isEditing()){if(!this.panningHandler.isMenuShowing()){var o=mxEvent.getClientX(a.getEvent()),s=mxEvent.getClientY(a.getEvent());this.panningHandler.popup(o+16,s,t,a.getEvent())}return e=!1,t=null,void a.consume()}e=!1,t=null}mxGraph.prototype.fireMouseEvent.apply(this,arguments),n==mxEvent.MOUSE_MOVE&&a.isConsumed()&&(e=!1,t=null)}},function(){if(mxVertexHandler.prototype.rotationEnabled=!0,mxText.prototype.baseSpacingTop=5,mxText.prototype.baseSpacingBottom=1,touchStyle){mxConstants.HANDLE_SIZE=16,mxConstants.LABEL_HANDLE_SIZE=7,mxClient.IS_TOUCH&&(mxVertexHandler.prototype.tolerance=4,mxEdgeHandler.prototype.tolerance=6,Graph.prototype.tolerance=14,Graph.prototype.gridSize=20,mxPanningHandler.prototype.selectOnPopup=!1,mxPanningHandler.prototype.useLeftButtonForPanning=!0,mxPanningHandler.prototype.isPanningTrigger=function(e){var t=e.getEvent();return this.useLeftButtonForPanning&&(this.ignoreCell||null==e.getState())||mxEvent.isControlDown(t)&&mxEvent.isShiftDown(t)||this.usePopupTrigger&&mxEvent.isPopupTrigger(t)});var e=mxGraphHandler.prototype.mouseDown;mxGraphHandler.prototype.mouseDown=function(t,n){e.apply(this,arguments),this.graph.isCellSelected(n.getCell())&&this.graph.getSelectionCount()>1&&(this.delayedSelection=!1)},Graph.prototype.createHandlers=function(e){this.tooltipHandler=new mxTooltipHandler(this),this.tooltipHandler.setEnabled(!1),this.selectionCellsHandler=new mxSelectionCellsHandler(this),this.panningHandler=new mxPanningHandler(this),this.panningHandler.panningEnabled=!1,this.connectionHandler=new mxConnectionHandler(this),this.connectionHandler.setEnabled(!1),this.graphHandler=new mxGraphHandler(this)},mxConnectionHandler.prototype.selectCells=function(e,t){touchStyle&&null!=t?this.graph.setSelectionCell(t):this.graph.setSelectionCell(e)};var t=mxGraph.prototype.dblClick;Graph.prototype.dblClick=function(e,n){if(null==n){var a=mxUtils.convertPoint(this.container,mxEvent.getClientX(e),mxEvent.getClientY(e));n=this.getCellAt(a.x,a.y)}t.call(this,e,n)};var n=new mxImage(IMAGE_PATH+"/touch-handle.png",16,16);mxVertexHandler.prototype.handleImage=n,mxEdgeHandler.prototype.handleImage=n,mxOutline.prototype.sizerImage=n,(new Image).src=n.src;var a=IMAGE_PATH+"/touch-connector.png",i=mxVertexHandler.prototype.init;mxVertexHandler.prototype.init=function(){i.apply(this,arguments),showConnectorImg&&this.graph.connectionHandler.isEnabled()&&this.graph.isCellConnectable(this.state.cell)&&!this.graph.isValidRoot(this.state.cell)&&1==this.graph.getSelectionCount()&&(this.connectorImg=mxUtils.createImage(a),this.connectorImg.style.cursor="pointer",this.connectorImg.style.width="29px",this.connectorImg.style.height="29px",this.connectorImg.style.position="absolute",mxClient.IS_TOUCH||(this.connectorImg.setAttribute("title",mxResources.get("connect")),mxEvent.redirectMouseEvents(this.connectorImg,this.graph,this.state)),this.connectorImg.style.padding="2px",mxEvent.addGestureListeners(this.connectorImg,mxUtils.bind(this,function(e){this.graph.panningHandler.hideMenu();var t=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e));this.graph.connectionHandler.start(this.state,t.x,t.y),this.graph.isMouseDown=!0,mxEvent.consume(e)})),this.graph.container.appendChild(this.connectorImg)),this.redrawTools()};s=mxVertexHandler.prototype.redraw;mxVertexHandler.prototype.redraw=function(){s.apply(this),this.redrawTools()},mxVertexHandler.prototype.redrawTools=function(){null!=this.state&&null!=this.connectorImg&&(mxVertexHandler.prototype.singleSizer?(this.connectorImg.style.left=this.state.x+this.state.width-this.connectorImg.offsetWidth/2+"px",this.connectorImg.style.top=this.state.y-this.connectorImg.offsetHeight/2+"px"):(this.connectorImg.style.left=this.state.x+this.state.width+mxConstants.HANDLE_SIZE/2+4+"px",this.connectorImg.style.top=this.state.y+(this.state.height-this.connectorImg.offsetHeight)/2+"px"))};r=mxVertexHandler.prototype.destroy;mxVertexHandler.prototype.destroy=function(e,t){r.apply(this,arguments),null!=this.connectorImg&&(this.connectorImg.parentNode.removeChild(this.connectorImg),this.connectorImg=null)},(new Image).src=a}else{o=new mxImage(IMAGE_PATH+"/connector.png",15,15);if(mxConnectionHandler.prototype.connectImage=o,(new Image).src=o.src,"2"==urlParams.connect){var o=new mxImage(IMAGE_PATH+"/connector.png",15,15),i=mxVertexHandler.prototype.init;mxVertexHandler.prototype.init=function(){i.apply(this,arguments),showConnectorImg&&this.graph.connectionHandler.isEnabled()&&this.graph.isCellConnectable(this.state.cell)&&!this.graph.isValidRoot(this.state.cell)&&1==this.graph.getSelectionCount()&&(mxClient.IS_IE&&!mxClient.IS_SVG?(this.connectorImg=document.createElement("div"),this.connectorImg.style.backgroundImage="url("+o.src+")",this.connectorImg.style.backgroundPosition="center",this.connectorImg.style.backgroundRepeat="no-repeat",this.connectorImg.style.width=o.width+4+"px",this.connectorImg.style.height=o.height+4+"px",this.connectorImg.style.display=mxClient.IS_QUIRKS?"inline":"inline-block"):(this.connectorImg=mxUtils.createImage(o.src),this.connectorImg.style.width=o.width+"px",this.connectorImg.style.height=o.height+"px"),this.connectorImg.style.cursor="pointer",this.connectorImg.style.position="absolute",this.connectorImg.setAttribute("title",mxResources.get("connect")),mxEvent.redirectMouseEvents(this.connectorImg,this.graph,this.state),this.connectorImg.style.padding="2px",mxEvent.addListener(this.connectorImg,"mousedown",mxUtils.bind(this,function(e){this.graph.panningHandler.hideMenu();var t=mxUtils.convertPoint(this.graph.container,mxEvent.getClientX(e),mxEvent.getClientY(e));this.graph.connectionHandler.start(this.state,t.x,t.y),this.graph.isMouseDown=!0,mxEvent.consume(e)})),this.graph.container.appendChild(this.connectorImg)),this.redrawTools()};var s=mxVertexHandler.prototype.redraw;mxVertexHandler.prototype.redraw=function(){s.apply(this),this.redrawTools()},mxVertexHandler.prototype.redrawTools=function(){null!=this.state&&null!=this.connectorImg&&(mxVertexHandler.prototype.singleSizer?(this.connectorImg.style.left=this.state.x+this.state.width-this.connectorImg.offsetWidth/2+"px",this.connectorImg.style.top=this.state.y-this.connectorImg.offsetHeight/2+"px"):(this.connectorImg.style.left=this.state.x+this.state.width+mxConstants.HANDLE_SIZE/2+2+"px",this.connectorImg.style.top=this.state.y+(this.state.height-this.connectorImg.offsetHeight)/2+"px"))};var r=mxVertexHandler.prototype.destroy;mxVertexHandler.prototype.destroy=function(e,t){r.apply(this,arguments),null!=this.connectorImg&&(this.connectorImg.parentNode.removeChild(this.connectorImg),this.connectorImg=null)}}}}(),Actions.prototype.init=function(){var e=this.editorUi,t=e.editor,n=t.graph;this.addAction("new",function(){e.projectDesignController.newProject()}),this.addAction("open",function(){e.projectDesignController.openProject()}),this.addAction("save",function(){e.projectDesignController.saveOrPublishProject(mxUtils.getPrettyXml(t.getGraphXml())),e.editor.modified=!1},null,null,"Ctrl+S"),this.addAction("saveAs",function(){e.projectDesignController.saveProjectAs(mxUtils.getPrettyXml(t.getGraphXml()))},null,null,"Ctrl+Shift+S"),this.addAction("publish",function(){e.editor.setStatus(""),null===e.validate()?(e.projectDesignController.saveOrPublishProject(mxUtils.getPrettyXml(t.getGraphXml()),!0),e.editor.modified=!1):(e.editor.setStatus("...Error publishing! Please check the project and try again!"),setTimeout(function(){e.editor.setStatus("")},3e3))},null,null,"Ctrl+Shift+P"),this.addAction("variable",function(){e.projectDesignController.newVariable()}),this.addAction("import",function(){e.projectDesignController.importXML(function(e){t.setGraphXml(mxUtils.parseXml(e).documentElement)})}),this.addAction("export",function(){e.exportXML(mxUtils.getPrettyXml(t.getGraphXml()))},null,null,"Ctrl+E"),this.addAction("editFile",function(){e.projectDesignController.editXML(mxUtils.getPrettyXml(t.getGraphXml()),function(e){t.setGraphXml(mxUtils.parseXml(e).documentElement)})}),this.addAction("print",function(){mxUtils.printScreen(n)},null,"sprite-print","Ctrl+P"),this.addAction("preview",function(){mxUtils.show(n,null,10,10)}),this.addAction("undo",function(){t.undoManager.undo()},null,"sprite-undo","Ctrl+Z"),this.addAction("redo",function(){t.undoManager.redo()},null,"sprite-redo","Ctrl+Y"),this.addAction("cut",function(){mxClipboard.cut(n)},null,"sprite-cut","Ctrl+X"),this.addAction("copy",function(){mxClipboard.copy(n)},null,"sprite-copy","Ctrl+C"),this.addAction("paste",function(){mxClipboard.paste(n)},!1,"sprite-paste","Ctrl+V"),this.addAction("delete",function(){n.removeCells()},null,null,"Delete"),this.addAction("duplicate",function(){var e=n.gridSize;n.setSelectionCells(n.moveCells(n.getSelectionCells(),e,e,!0))},null,null,"Ctrl+D"),this.addAction("selectVertices",function(){n.selectVertices()},null,null,"Ctrl+Shift+V"),this.addAction("selectEdges",function(){n.selectEdges()},null,null,"Ctrl+Shift+E"),this.addAction("selectAll",function(){n.selectAll()},null,null,"Ctrl+A"),this.addAction("home",function(){n.home()},null,null,"Home"),this.addAction("exitGroup",function(){n.exitGroup()},null,null,"Page Up"),this.addAction("enterGroup",function(){n.enterGroup()},null,null,"Page Down"),this.addAction("expand",function(){n.foldCells(!1)},null,null,"Enter"),this.addAction("collapse",function(){n.foldCells(!0)},null,null,"Backspace"),this.addAction("toFront",function(){n.orderCells(!1)},null,null,"Ctrl+F"),this.addAction("toBack",function(){n.orderCells(!0)},null,null,"Ctrl+B"),this.addAction("group",function(){n.setSelectionCell(n.groupCells(null,0))},null,null,"Ctrl+G"),this.addAction("ungroup",function(){n.setSelectionCells(n.ungroupCells())},null,null,"Ctrl+U"),this.addAction("removeFromGroup",function(){n.removeCellsFromParent()}),this.addAction("editLink",function(){var e=n.getSelectionCell(),t=n.getLinkForCell(e);null==t&&(t=""),null!=(t=mxUtils.prompt(mxResources.get("enterValue"),t))&&n.setLinkForCell(e,t)}),this.addAction("openLink",function(){var e=n.getSelectionCell(),t=n.getLinkForCell(e);null!=t&&window.open(t)}),this.addAction("autosize",function(){var e=n.getSelectionCells();if(null!=e){n.getModel().beginUpdate();try{for(var t=0;t<e.length;t++){var a=e[t];n.getModel().getChildCount(a)?n.updateGroupBounds([a],20):n.updateCellSize(a)}}finally{n.getModel().endUpdate()}}}),this.addAction("wordWrap",function(){var e=n.getView().getState(n.getSelectionCell()),t="wrap";null!=e&&"wrap"==e.style[mxConstants.STYLE_WHITE_SPACE]&&(t=null),n.setCellStyles(mxConstants.STYLE_WHITE_SPACE,t)}),this.addAction("rotation",function(){var e="0",t=n.getView().getState(n.getSelectionCell());null!=t&&(e=t.style[mxConstants.STYLE_ROTATION]||e),null!=(e=mxUtils.prompt(mxResources.get("enterValue")+" ("+mxResources.get("rotation")+" 0-360)",e))&&n.setCellStyles(mxConstants.STYLE_ROTATION,e)}),this.addAction("tilt",function(){var e=n.getSelectionCells();if(null!=e){n.getModel().beginUpdate();try{for(var t=0;t<e.length;t++){var a=e[t];if(n.getModel().isVertex(a)&&0==n.getModel().getChildCount(a)){var i=n.getCellGeometry(a);if(null!=i){(i=i.clone()).x+=i.width/2-i.height/2,i.y+=i.height/2-i.width/2;var o=i.width;i.width=i.height,i.height=o,n.getModel().setGeometry(a,i);var s=n.view.getState(a);if(null!=s){var r=s.style[mxConstants.STYLE_DIRECTION]||"east";"east"==r?r="south":"south"==r?r="west":"west"==r?r="north":"north"==r&&(r="east"),n.setCellStyles(mxConstants.STYLE_DIRECTION,r,[a])}}}}}finally{n.getModel().endUpdate()}}},null,null,"Ctrl+R"),this.addAction("actualSize",function(){n.zoomTo(1)}),this.addAction("zoomIn",function(){n.zoomIn()},null,null,"Add"),this.addAction("zoomOut",function(){n.zoomOut()},null,null,"Subtract"),this.addAction("fitWindow",function(){n.fit()}),this.addAction("fitPage",mxUtils.bind(this,function(){n.pageVisible||this.get("pageView").funct();var e=n.pageFormat,t=n.pageScale,a=n.container.clientWidth-20,i=n.container.clientHeight-20,o=Math.floor(100*Math.min(a/e.width/t,i/e.height/t))/100;n.zoomTo(o),n.container.scrollLeft=Math.round(n.view.translate.x*o-Math.max(10,(n.container.clientWidth-e.width*t*o)/2)),n.container.scrollTop=Math.round(n.view.translate.y*o-Math.max(10,(n.container.clientHeight-e.height*t*o)/2))})),this.addAction("fitPageWidth",mxUtils.bind(this,function(){n.pageVisible||this.get("pageView").funct();var e=n.pageFormat,t=n.pageScale,a=n.container.clientWidth-20,i=Math.floor(100*a/e.width/t)/100;n.zoomTo(i),n.container.scrollLeft=Math.round(n.view.translate.x*i-Math.max(10,(n.container.clientWidth-e.width*t*i)/2)),n.container.scrollTop=Math.round(n.view.translate.y*i-Math.max(10,(n.container.clientHeight-e.height*t*i)/2))})),this.put("customZoom",new Action(mxResources.get("custom"),function(){var e=mxUtils.prompt(mxResources.get("enterValue")+" (%)",parseInt(100*n.getView().getScale()));null!=e&&e.length>0&&!isNaN(parseInt(e))&&n.zoomTo(parseInt(e)/100)}));var a=null;(a=this.addAction("grid",function(){n.setGridEnabled(!n.isGridEnabled()),t.updateGraphComponents()},null,null,"Ctrl+Shift+G")).setToggleAction(!0),a.setSelectedCallback(function(){return n.isGridEnabled()}),(a=this.addAction("guides",function(){n.graphHandler.guidesEnabled=!n.graphHandler.guidesEnabled})).setToggleAction(!0),a.setSelectedCallback(function(){return n.graphHandler.guidesEnabled}),(a=this.addAction("tooltips",function(){n.tooltipHandler.setEnabled(!n.tooltipHandler.isEnabled())})).setToggleAction(!0),a.setSelectedCallback(function(){return n.tooltipHandler.isEnabled()}),(a=this.addAction("navigation",function(){n.foldingEnabled=!n.foldingEnabled,n.view.revalidate()})).setToggleAction(!0),a.setSelectedCallback(function(){return n.foldingEnabled}),(a=this.addAction("scrollbars",function(){if(n.scrollbars=!n.scrollbars,t.updateGraphComponents(),n.scrollbars){var e=n.view.translate.x,a=n.view.translate.y;n.view.translate.x=0,n.view.translate.y=0,n.sizeDidChange(),n.container.scrollLeft-=Math.round(e*n.view.scale),n.container.scrollTop-=Math.round(a*n.view.scale)}else{var i=n.view.translate;n.view.setTranslate(i.x-n.container.scrollLeft/n.view.scale,i.y-n.container.scrollTop/n.view.scale),n.container.scrollLeft=0,n.container.scrollTop=0,n.sizeDidChange()}},!mxClient.IS_TOUCH)).setToggleAction(!0),a.setSelectedCallback(function(){return"auto"==n.container.style.overflow}),(a=this.addAction("pageView",mxUtils.bind(this,function(){n.pageVisible=!n.pageVisible,n.pageBreaksVisible=n.pageVisible,n.preferPageSize=n.pageBreaksVisible,n.view.validate(),n.sizeDidChange(),t.updateGraphComponents(),t.outline.update(),mxUtils.hasScrollbars(n.container)&&(n.pageVisible?(n.container.scrollLeft-=20,n.container.scrollTop-=20):(n.container.scrollLeft+=20,n.container.scrollTop+=20))}))).setToggleAction(!0),a.setSelectedCallback(function(){return n.pageVisible}),(a=this.addAction("connect",function(){n.setConnectable(!n.connectionHandler.isEnabled())},null,null,"Ctrl+Q")).setToggleAction(!0),a.setSelectedCallback(function(){return n.connectionHandler.isEnabled()}),(a=this.addAction("copyConnect",function(){n.connectionHandler.setCreateTarget(!n.connectionHandler.isCreateTarget())})).setToggleAction(!0),a.setSelectedCallback(function(){return n.connectionHandler.isCreateTarget()}),this.addAction("help",function(){window.open("https://wiki.xcallymotion.com/display/XMD/Cally+Square")}),this.put("about",new Action(mxResources.get("about")+" Cally Square",function(){window.open("http://callysquare.com/")},null,null,null));var i=mxUtils.bind(this,function(e,t){this.addAction(e,function(){n.toggleCellStyleFlags(mxConstants.STYLE_FONTSTYLE,t)})});i("bold",mxConstants.FONT_BOLD),i("italic",mxConstants.FONT_ITALIC),i("underline",mxConstants.FONT_UNDERLINE),this.addAction("shadow",function(){n.toggleCellStyles(mxConstants.STYLE_SHADOW)}),this.addAction("dashed",function(){n.toggleCellStyles(mxConstants.STYLE_DASHED)}),this.addAction("rounded",function(){n.toggleCellStyles(mxConstants.STYLE_ROUNDED)}),this.addAction("curved",function(){n.toggleCellStyles(mxConstants.STYLE_CURVED)}),this.addAction("style",function(){var e=n.getSelectionCells();if(null!=e&&e.length>0){var t=n.getModel(),a=mxUtils.prompt(mxResources.get("enterValue")+" ("+mxResources.get("style")+")",t.getStyle(e[0])||"");null!=a&&n.setCellStyle(a,e)}}),this.addAction("setAsDefaultEdge",function(){n.setDefaultEdge(n.getSelectionCell())}),this.addAction("addWaypoint",function(){var e=n.getSelectionCell();if(null!=e&&n.getModel().isEdge(e)){var a=t.graph.selectionCellsHandler.getHandler(e);if(a instanceof mxEdgeHandler){var i=n.view.translate,o=n.view.scale,s=i.x,r=i.y,l=n.getModel().getParent(e),d=n.getCellGeometry(l);n.getModel().isVertex(l)&&null!=d&&(s+=d.x,r+=d.y),a.addPointAt(a.state,n.panningHandler.triggerX/o-s,n.panningHandler.triggerY/o-r)}}}),this.addAction("removeWaypoint",function(){var t=e.actions.get("removeWaypoint");null!=t.handler&&t.handler.removePoint(t.handler.state,t.index)}),this.addAction("image",function(){function e(e,t,a){var i=null,o=n.getSelectionCells();n.getModel().beginUpdate();try{if(0==o.length){var s=n.getGridSize();i=o=[n.insertVertex(n.getDefaultParent(),null,"",s,s,t,a)]}if(n.setCellStyles(mxConstants.STYLE_IMAGE,e,o),n.setCellStyles(mxConstants.STYLE_SHAPE,"image",o),1==n.getSelectionCount()&&null!=t&&null!=a){var r=o[0],l=n.getModel().getGeometry(r);null!=l&&((l=l.clone()).width=t,l.height=a,n.getModel().setGeometry(r,l))}}finally{n.getModel().endUpdate()}null!=i&&(n.setSelectionCells(i),n.scrollCellToVisible(i[0]))}var t="",a=n.getView().getState(n.getSelectionCell());if(null!=a&&(t=a.style[mxConstants.STYLE_IMAGE]||t),null!=(t=mxUtils.prompt(mxResources.get("enterValue")+" ("+mxResources.get("url")+")",t))&&t.length>0){var i=new Image;i.onload=function(){e(t,i.width,i.height)},i.onerror=function(){mxUtils.alert(mxResources.get("fileNotFound"))},i.src=t}})},Actions.prototype.addAction=function(e,t,n,a,i){return this.put(e,new Action(mxResources.get(e),t,n,a,i))},Actions.prototype.put=function(e,t){return this.actions[e]=t,t},Actions.prototype.get=function(e){return this.actions[e]},mxUtils.extend(Action,mxEventSource),Action.prototype.setEnabled=function(e){this.enabled!=e&&(this.enabled=e,this.fireEvent(new mxEventObject("stateChanged")))},Action.prototype.setToggleAction=function(e){this.toggleAction=e},Action.prototype.setSelectedCallback=function(e){this.selectedCallback=e},Action.prototype.isSelected=function(){return this.selectedCallback()},Menus=function(e){this.editorUi=e,this.menus=new Object,this.init(),(new Image).src=IMAGE_PATH+"/checkmark.gif"},Menus.prototype.init=function(){var e=this.editorUi.editor.graph;this.put("fontFamily",new Menu(mxUtils.bind(this,function(e,t){for(var n=["Helvetica","Verdana","Times New Roman","Garamond","Comic Sans MS","Courier New","Georgia","Lucida Console","Tahoma"],a=0;a<n.length;a++)this.styleChange(e,n[a],[mxConstants.STYLE_FONTFAMILY],[n[a]],null,t).firstChild.nextSibling.style.fontFamily=n[a];e.addSeparator(t),this.promptChange(e,mxResources.get("custom"),"",mxConstants.DEFAULT_FONTFAMILY,mxConstants.STYLE_FONTFAMILY,t)}))),this.put("fontSize",new Menu(mxUtils.bind(this,function(e,t){for(var n=[6,8,9,10,11,12,14,18,24,36,48,72],a=0;a<n.length;a++)this.styleChange(e,n[a],[mxConstants.STYLE_FONTSIZE],[n[a]],null,t);e.addSeparator(t),this.promptChange(e,mxResources.get("custom"),"(pt)","12",mxConstants.STYLE_FONTSIZE,t)}))),this.put("linewidth",new Menu(mxUtils.bind(this,function(e,t){for(var n=[1,2,3,4,8,12,16,24],a=0;a<n.length;a++)this.styleChange(e,n[a]+"px",[mxConstants.STYLE_STROKEWIDTH],[n[a]],null,t);e.addSeparator(t),this.promptChange(e,mxResources.get("custom"),"(px)","1",mxConstants.STYLE_STROKEWIDTH,t)}))),this.put("line",new Menu(mxUtils.bind(this,function(e,t){this.styleChange(e,mxResources.get("straight"),[mxConstants.STYLE_EDGE],[null],null,t),this.styleChange(e,mxResources.get("entityRelation"),[mxConstants.STYLE_EDGE],["entityRelationEdgeStyle"],null,t),e.addSeparator(t),this.styleChange(e,mxResources.get("horizontal"),[mxConstants.STYLE_EDGE,mxConstants.STYLE_ELBOW],["elbowEdgeStyle","horizontal"],null,t),this.styleChange(e,mxResources.get("vertical"),[mxConstants.STYLE_EDGE,mxConstants.STYLE_ELBOW],["elbowEdgeStyle","vertical"],null,t),e.addSeparator(t),this.styleChange(e,mxResources.get("manual"),[mxConstants.STYLE_EDGE],["segmentEdgeStyle"],null,t),this.styleChange(e,mxResources.get("automatic"),[mxConstants.STYLE_EDGE],["orthogonalEdgeStyle"],null,t)}))),this.put("lineend",new Menu(mxUtils.bind(this,function(t,n){this.styleChange(t,mxResources.get("classic"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_CLASSIC],null,n),this.styleChange(t,mxResources.get("openArrow"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_OPEN],null,n),this.styleChange(t,mxResources.get("block"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_BLOCK],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("oval"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_OVAL],null,n),this.styleChange(t,mxResources.get("diamond"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_DIAMOND],null,n),this.styleChange(t,mxResources.get("diamondThin"),[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_DIAMOND_THIN],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("none"),[mxConstants.STYLE_ENDARROW],[mxConstants.NONE],null,n),t.addSeparator(n),t.addItem(mxResources.get("transparent"),null,function(){e.toggleCellStyles("endFill",!0)},n,null,!0),t.addSeparator(n),this.promptChange(t,mxResources.get("size"),"(px)",mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_ENDSIZE,n)}))),this.put("linestart",new Menu(mxUtils.bind(this,function(t,n){this.styleChange(t,mxResources.get("classic"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_CLASSIC],null,n),this.styleChange(t,mxResources.get("openArrow"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_OPEN],null,n),this.styleChange(t,mxResources.get("block"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_BLOCK],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("oval"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_OVAL],null,n),this.styleChange(t,mxResources.get("diamond"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_DIAMOND],null,n),this.styleChange(t,mxResources.get("diamondThin"),[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_DIAMOND_THIN],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("none"),[mxConstants.STYLE_STARTARROW],[mxConstants.NONE],null,n),t.addSeparator(n),t.addItem(mxResources.get("transparent"),null,function(){e.toggleCellStyles("startFill",!0)},n,null,!0),t.addSeparator(n),this.promptChange(t,mxResources.get("size"),"(px)",mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_STARTSIZE,n)}))),this.put("spacing",new Menu(mxUtils.bind(this,function(e,t){var n=this.editorUi.actions.get("shadow").enabled,a=this.get("line").enabled;(n||e.showDisabled)&&(this.promptChange(e,mxResources.get("top"),"(px)","0",mxConstants.STYLE_SPACING_TOP,t,n),this.promptChange(e,mxResources.get("right"),"(px)","0",mxConstants.STYLE_SPACING_RIGHT,t,n),this.promptChange(e,mxResources.get("bottom"),"(px)","0",mxConstants.STYLE_SPACING_BOTTOM,t,n),this.promptChange(e,mxResources.get("left"),"(px)","0",mxConstants.STYLE_SPACING_LEFT,t,n),e.addSeparator(t),this.promptChange(e,mxResources.get("global"),"(px)","0",mxConstants.STYLE_SPACING,t,n),this.promptChange(e,mxResources.get("perimeter"),"(px)","0",mxConstants.STYLE_PERIMETER_SPACING,t,n)),(a||e.showDisabled)&&(e.addSeparator(t),this.promptChange(e,mxResources.get("sourceSpacing"),"(px)","0",mxConstants.STYLE_SOURCE_PERIMETER_SPACING,t,a),this.promptChange(e,mxResources.get("targetSpacing"),"(px)","0",mxConstants.STYLE_TARGET_PERIMETER_SPACING,t,a))}))),this.put("format",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItem(e,"style",t)}))),this.put("text",new Menu(mxUtils.bind(this,function(t,n){var a=this.get("text").enabled;t.addSeparator(n),this.addSubmenu("fontFamily",t,n),this.addSubmenu("fontSize",t,n),this.addMenuItems(t,["-","bold","italic","underline","-"],n),this.addSubmenu("alignment",t,n),this.addMenuItem(t,"wordWrap",n),t.addSeparator(n),this.promptChange(t,mxResources.get("textOpacity"),"(%)","100",mxConstants.STYLE_TEXT_OPACITY,n,a),t.addItem(mxResources.get("hide"),null,function(){e.toggleCellStyles(mxConstants.STYLE_NOLABEL,!1)},n,null,a)}))),this.put("alignment",new Menu(mxUtils.bind(this,function(t,n){this.styleChange(t,mxResources.get("leftAlign"),[mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_LEFT],null,n),this.styleChange(t,mxResources.get("center"),[mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_CENTER],null,n),this.styleChange(t,mxResources.get("rightAlign"),[mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_RIGHT],null,n),t.addSeparator(n),this.styleChange(t,mxResources.get("topAlign"),[mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_TOP],null,n),this.styleChange(t,mxResources.get("middle"),[mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_MIDDLE],null,n),this.styleChange(t,mxResources.get("bottomAlign"),[mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_BOTTOM],null,n),t.addSeparator(n),this.addSubmenu("position",t,n),this.addSubmenu("spacing",t,n),t.addSeparator(n);var a=this.get("text").enabled;t.addItem(mxResources.get("vertical"),null,function(){e.toggleCellStyles(mxConstants.STYLE_HORIZONTAL,!0)},n,null,a)}))),this.put("position",new Menu(mxUtils.bind(this,function(e,t){this.styleChange(e,mxResources.get("left"),[mxConstants.STYLE_LABEL_POSITION,mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_LEFT,mxConstants.ALIGN_RIGHT],null,t),this.styleChange(e,mxResources.get("center"),[mxConstants.STYLE_LABEL_POSITION,mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_CENTER,mxConstants.ALIGN_CENTER],null,t),this.styleChange(e,mxResources.get("right"),[mxConstants.STYLE_LABEL_POSITION,mxConstants.STYLE_ALIGN],[mxConstants.ALIGN_RIGHT,mxConstants.ALIGN_LEFT],null,t),e.addSeparator(t),this.styleChange(e,mxResources.get("top"),[mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_TOP,mxConstants.ALIGN_BOTTOM],null,t),this.styleChange(e,mxResources.get("middle"),[mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_MIDDLE,mxConstants.ALIGN_MIDDLE],null,t),this.styleChange(e,mxResources.get("bottom"),[mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.STYLE_VERTICAL_ALIGN],[mxConstants.ALIGN_BOTTOM,mxConstants.ALIGN_TOP],null,t)}))),this.put("direction",new Menu(mxUtils.bind(this,function(t,n){t.addItem(mxResources.get("flipH"),null,function(){e.toggleCellStyles(mxConstants.STYLE_FLIPH,!1)},n),t.addItem(mxResources.get("flipV"),null,function(){e.toggleCellStyles(mxConstants.STYLE_FLIPV,!1)},n),this.addMenuItems(t,["-","tilt","rotation"],n)}))),this.put("align",new Menu(mxUtils.bind(this,function(t,n){t.addItem(mxResources.get("leftAlign"),null,function(){e.alignCells(mxConstants.ALIGN_LEFT)},n),t.addItem(mxResources.get("center"),null,function(){e.alignCells(mxConstants.ALIGN_CENTER)},n),t.addItem(mxResources.get("rightAlign"),null,function(){e.alignCells(mxConstants.ALIGN_RIGHT)},n),t.addSeparator(n),t.addItem(mxResources.get("topAlign"),null,function(){e.alignCells(mxConstants.ALIGN_TOP)},n),t.addItem(mxResources.get("middle"),null,function(){e.alignCells(mxConstants.ALIGN_MIDDLE)},n),t.addItem(mxResources.get("bottomAlign"),null,function(){e.alignCells(mxConstants.ALIGN_BOTTOM)},n)}))),this.put("layout",new Menu(mxUtils.bind(this,function(t,n){t.addItem(mxResources.get("horizontalFlow"),null,mxUtils.bind(this,function(){var t=new mxHierarchicalLayout(e,mxConstants.DIRECTION_WEST);this.editorUi.executeLayout(t,!0,!0)}),n),t.addItem(mxResources.get("verticalFlow"),null,mxUtils.bind(this,function(){var t=new mxHierarchicalLayout(e,mxConstants.DIRECTION_NORTH);this.editorUi.executeLayout(t,!0,!0)}),n)}))),this.put("navigation",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["home","-","exitGroup","enterGroup","-","expand","collapse"],t)}))),this.put("arrange",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["toFront","toBack","-"],t),this.addSubmenu("layout",e,t),e.addSeparator(t),this.addMenuItems(e,["-","group","ungroup","removeFromGroup"],t)}))),this.put("view",new Menu(mxUtils.bind(this,function(t,n){this.addMenuItems(t,["actualSize"],n),t.addSeparator();for(var a=[.25,.5,.75,1,2,4],i=0;i<a.length;i++)!function(a){t.addItem(100*a+"%",null,function(){e.zoomTo(a)},n)}(a[i]);this.addMenuItems(t,["-","zoomIn","zoomOut","-","fitWindow","customZoom","-","fitPage","fitPageWidth"],n)}))),this.put("file",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["new","open","-","save","saveAs","publish","-","variable","-","import","export","-","editFile","description","-","print"],t)}))),this.put("edit",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["undo","redo","-","cut","copy","paste","delete","-","duplicate","-","selectVertices","selectEdges","selectAll"])}))),this.put("help",new Menu(mxUtils.bind(this,function(e,t){this.addMenuItems(e,["help","-","about"])})))},Menus.prototype.put=function(e,t){this.menus[e]=t},Menus.prototype.get=function(e){return this.menus[e]},Menus.prototype.addSubmenu=function(e,t,n){var a=this.get(e).enabled;if(t.showDisabled||a){var i=t.addItem(mxResources.get(e),null,null,n,null,a);this.addMenu(e,t,i)}},Menus.prototype.addMenu=function(e,t,n){var a=this.get(e);null!=a&&(t.showDisabled||a.enabled)&&this.get(e).execute(t,n)},Menus.prototype.styleChange=function(e,t,n,a,i,o){return e.addItem(t,null,mxUtils.bind(this,function(){var e=this.editorUi.editor.graph;e.getModel().beginUpdate();try{for(var t=0;t<n.length;t++)e.setCellStyles(n[t],a[t])}finally{e.getModel().endUpdate()}}),o,i)},Menus.prototype.promptChange=function(e,t,n,a,i,o,s){return e.addItem(t,null,mxUtils.bind(this,function(){var e=this.editorUi.editor.graph,t=a,o=e.getView().getState(e.getSelectionCell());null!=o&&(t=o.style[i]||t),null!=(t=mxUtils.prompt(mxResources.get("enterValue")+(n.length>0?" "+n:""),t))&&t.length>0&&e.setCellStyles(i,t)}),o,null,s)},Menus.prototype.addMenuItem=function(e,t,n){var a=this.editorUi.actions.get(t);if(null!=a&&(e.showDisabled||a.enabled)){var i=e.addItem(a.label,null,a.funct,n,null,a.enabled);return a.toggleAction&&a.isSelected()&&this.addCheckmark(i),this.addShortcut(i,a),i}return null},Menus.prototype.addShortcut=function(e,t){if(null!=t.shortcut){var n=e.firstChild.nextSibling.nextSibling,a=document.createElement("span");a.style.color="gray",mxUtils.write(a,t.shortcut),n.appendChild(a)}},Menus.prototype.addCheckmark=function(e){var t=e.firstChild.nextSibling;t.style.backgroundImage="url("+IMAGE_PATH+"/checkmark.gif)",t.style.backgroundRepeat="no-repeat",t.style.backgroundPosition="2px 50%"},Menus.prototype.addMenuItems=function(e,t,n){for(var a=0;a<t.length;a++)"-"==t[a]?e.addSeparator(n):this.addMenuItem(e,t[a],n)},Menus.prototype.createPopupMenu=function(e,t,n){var a=this.editorUi.editor.graph;if(e.smartSeparators=!0,a.isSelectionEmpty()?this.addMenuItems(e,["undo","redo","-","paste","-"]):(this.addMenuItems(e,["delete","-","cut","copy","-","duplicate"]),1==a.getSelectionCount()&&a.getModel().isEdge(a.getSelectionCell())&&this.addMenuItems(e,["setAsDefaultEdge"]),e.addSeparator()),a.getSelectionCount()>0){if(this.addMenuItems(e,["toFront","toBack","-"]),a.getModel().isEdge(a.getSelectionCell())){var i=!1;if(null!=(t=a.getSelectionCell())&&a.getModel().isEdge(t)){var o=a.selectionCellsHandler.getHandler(t);if(o instanceof mxEdgeHandler&&null!=o.bends&&o.bends.length>2){var s=o.getHandleForEvent(new mxMouseEvent(n)),r=this.editorUi.actions.get("removeWaypoint");r.handler=o,r.index=s,i=s>0&&s<o.bends.length}}this.addMenuItems(e,["-",i?"removeWaypoint":"addWaypoint"])}else a.getSelectionCount()>1&&(e.addSeparator(),this.addMenuItems(e,["group"]));e.addSeparator(),1==a.getSelectionCount()&&null!=a.getLinkForCell(a.getSelectionCell())&&this.addMenuItems(e,["openLink"])}else this.addMenuItems(e,["-","selectVertices","selectEdges","-","selectAll"])},Menus.prototype.createMenubar=function(e){for(var t=new Menubar(this.editorUi,e),n=["file","edit","view","format","text","arrange","help"],a=0;a<n.length;a++)t.addMenu(mxResources.get(n[a]),this.get(n[a]).funct);return t},Menubar.prototype.hideMenu=function(){null!=this.currentMenu&&this.currentMenu.hideMenu()},Menubar.prototype.addMenu=function(e,t){var n=document.createElement("a");return n.setAttribute("href","javascript:void(0);"),n.className="geItem",mxUtils.write(n,e),this.addMenuHandler(n,t),this.container.appendChild(n),n},Menubar.prototype.getOffset=function(e){return e=e.getBoundingClientRect(),{left:e.left+window.scrollX,top:e.top+window.scrollY}},Menubar.prototype.addMenuHandler=function(e,t){if(null!=t){var n=!0,a=mxUtils.bind(this,function(a){if(n&&null==e.enabled||e.enabled){this.editorUi.editor.graph.panningHandler.hideMenu();var i=new mxPopupMenu(t);i.div.className+=" geMenubarMenu",i.smartSeparators=!0,i.showDisabled=!0,i.autoExpand=!0,i.hideMenu=mxUtils.bind(this,function(){mxPopupMenu.prototype.hideMenu.apply(i,arguments),i.destroy(),this.currentMenu=null,this.currentElt=null});var o=this.getOffset(e).left,s=this.getOffset(e).top+e.offsetHeight;i.popup(o,s,null,a),this.currentMenu=i,this.currentElt=e}n=!0,mxEvent.consume(a)});mxEvent.addListener(e,"mousemove",mxUtils.bind(this,function(t){null!=this.currentMenu&&this.currentElt!=e&&(this.hideMenu(),a(t))})),mxEvent.addListener(e,"mousedown",mxUtils.bind(this,function(){n=this.currentElt!=e})),mxEvent.addListener(e,"click",a)}},mxUtils.extend(Menu,mxEventSource),Menu.prototype.setEnabled=function(e){this.enabled!=e&&(this.enabled=e,this.fireEvent(new mxEventObject("stateChanged")))},Menu.prototype.execute=function(e,t){this.funct(e,t)},Toolbar.prototype.init=function(){this.addItems(["save","publish","-","print","undo","redo","-","copy","cut","paste","delete","-","duplicate","-","actualSize","zoomIn","zoomOut","-"]);this.editorUi.editor.graph},Toolbar.prototype.hideMenu=function(){null!=this.currentMenu&&(this.currentMenu.hideMenu(),this.currentMenu.destroy(),this.currentMenu=null)},Toolbar.prototype.addMenu=function(e,t,n,a){var i=this.editorUi.menus.get(a),o=this.addMenuFunction(e,t,n,i.funct);return i.addListener("stateChanged",function(){o.setEnabled(i.enabled)}),o},Toolbar.prototype.addMenuFunction=function(e,t,n,a){var i=n?this.createLabel(e):this.createButton(e);return this.initElement(i,t),this.addMenuHandler(i,n,a),this.container.appendChild(i),i},Toolbar.prototype.addSeparator=function(){var e=document.createElement("div");return e.className="geSeparator",this.container.appendChild(e),e},Toolbar.prototype.addItems=function(e){for(var t=0;t<e.length;t++){var n=e[t];"-"==n?this.addSeparator():this.addItem("geSprite-"+n.toLowerCase(),n)}},Toolbar.prototype.addItem=function(e,t){var n=this.editorUi.actions.get(t),a=null;return null!=n&&((a=this.addButton(e,n.label,n.funct)).setEnabled(n.enabled),n.addListener("stateChanged",function(){a.setEnabled(n.enabled)})),a},Toolbar.prototype.addButton=function(e,t,n){var a=this.createButton(e);return this.initElement(a,t),this.addClickHandler(a,n),this.container.appendChild(a),a},Toolbar.prototype.addSelectionHandler=function(e){var t=this.editorUi.editor.graph,n=function(){for(var n=!t.isSelectionEmpty(),a=0;a<e.length;a++)e[a].setEnabled(n)};t.getSelectionModel().addListener(mxEvent.CHANGE,n),n()},Toolbar.prototype.addEdgeSelectionHandler=function(e){var t=this.editorUi.editor.graph,n=function(){var n=!1;if(!t.isSelectionEmpty())for(var a=t.getSelectionCells(),i=0;i<a.length;i++)if(t.getModel().isEdge(a[i])){n=!0;break}for(i=0;i<e.length;i++)e[i].setEnabled(n)};t.getSelectionModel().addListener(mxEvent.CHANGE,n),n()},Toolbar.prototype.initElement=function(e,t){e.setAttribute("tabindex","0"),null!=t&&e.setAttribute("title",t),this.addEnabledState(e)},Toolbar.prototype.addEnabledState=function(e){var t=e.className;e.setEnabled=function(n){e.enabled=n,e.className=n?t:t+" geDisabled"},e.setEnabled(!0)},Toolbar.prototype.addClickHandler=function(e,t){null!=t&&mxEvent.addListener(e,"click",function(n){e.enabled&&t(n),mxEvent.consume(n)})},Toolbar.prototype.createButton=function(e){var t=document.createElement("a");t.setAttribute("href","javascript:void(0);"),t.className="geButton";var n=document.createElement("div");return n.className="geSprite "+e,t.appendChild(n),t},Toolbar.prototype.createLabel=function(e,t){var n=document.createElement("a");return n.setAttribute("href","javascript:void(0);"),n.className="geLabel",mxUtils.write(n,e),n},Toolbar.prototype.addMenuHandler=function(e,t,n,a){if(null!=n){var i=this.editorUi.editor.graph,o=null;mxEvent.addListener(e,"click",mxUtils.bind(this,function(s){(null==e.enabled||e.enabled)&&(i.panningHandler.hideMenu(),(o=new mxPopupMenu(n)).div.className+=" geToolbarMenu",o.showDisabled=a,o.labels=t,o.autoExpand=!0,o.popup(e.offsetLeft,e.offsetTop+e.offsetHeight+34,null,s),this.currentMenu=o),mxEvent.consume(s)}))}},Dialog.prototype.close=function(){null!=this.onDialogClose&&(this.onDialogClose(),this.onDialogClose=null),this.container.parentNode.removeChild(this.container),this.bg.parentNode.removeChild(this.bg)},angular.module("motion").run(["$templateCache",function(e){"use strict";e.put("app/core/directives/ms-card/templates/template-1/template-1.html",'<div class="template-1">\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n\n    <div class="content pv-24 ph-16">\n        <div class="title h1" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="subtitle secondary-text" ng-if="card.subtitle">\n            {{card.subtitle}}\n        </div>\n\n        <div class="text pt-16" ng-if="card.text">\n            {{card.text}}\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-10/template-10.html",'<div class="template-10 p-16">\n    <div class="pb-16" layout="row" layout-align="space-between center">\n        <div class="info">\n            <div class="title secondary-text" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle h2" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n        </div>\n\n        <div class="media ml-16">\n            <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n        </div>\n    </div>\n\n    <div class="text">\n        {{card.text}}\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-2/template-2.html",'<div class="template-2">\n    <div class="header p-16" layout="row" layout-align="start center">\n        <div ng-if="card.avatar">\n            <img class="avatar mr-16" ng-src="{{card.avatar.src}}" alt="{{card.avatar.alt}}">\n        </div>\n\n        <div class="info">\n            <div class="title" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle secondary-text" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n        </div>\n    </div>\n\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n\n    <div class="text p-16" ng-if="card.text">\n        {{card.text}}\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-3/template-3.html",'<div class="template-3 p-16 teal-bg white-fg" layout="row" layout-align="space-between">\n    <div layout="column" layout-align="space-between">\n        <div class="info">\n            <div class="title h1" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle h3 secondary-text" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n        </div>\n\n        <div class="cta">\n            <md-button class="m-0">{{card.cta}}</md-button>\n        </div>\n    </div>\n\n    <div class="media pl-16">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-4/template-4.html",'<div class="template-4">\n    <div class="info white-fg ph-16 pv-24">\n        <div class="title h1" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="text" ng-if="card.text">\n            {{card.text}}\n        </div>\n    </div>\n\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-5/template-5.html",'<div class="template-5 p-16" layout="row" layout-align="space-between start">\n    <div class="info">\n        <div class="title secondary-text" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="event h2" ng-if="card.event">\n            {{card.event}}\n        </div>\n    </div>\n\n    <div class="media ml-16">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-6/template-6.html",'<div class="template-6">\n    <div class="content pv-24 ph-16">\n        <div class="subtitle secondary-text" ng-if="card.subtitle">\n            {{card.subtitle}}\n        </div>\n\n        <div class="title h2" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="text pt-8" ng-if="card.text">\n            {{card.text}}\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-7/template-7.html",'<div class="template-7" layout="row" layout-align="space-between">\n    <div class="info" layout="column" layout-align="space-between" layout-fill flex>\n        <div class="p-16">\n            <div class="title h1" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle h4 secondary-text" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n\n            <div class="text h4 pt-8" ng-if="card.text">\n                {{card.text}}\n            </div>\n        </div>\n\n        <div>\n            <md-divider></md-divider>\n            <div class="p-8" layout="row">\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n                <md-icon md-font-icon="icon-star-outline" class="mh-5"></md-icon>\n            </div>\n        </div>\n    </div>\n\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-8/template-8.html",'<div class="template-8">\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n\n    <div class="content pv-24 ph-16">\n        <div class="title h1" ng-if="card.title">\n            {{card.title}}\n        </div>\n\n        <div class="subtitle secondary-text" ng-if="card.subtitle">\n            {{card.subtitle}}\n        </div>\n\n        <div class="buttons pt-16">\n            <md-button class="m-0">{{card.button1}}</md-button>\n            <md-button class="m-0 md-accent">{{card.button2}}</md-button>\n        </div>\n\n        <div class="text pt-16" ng-if="card.text">\n            {{card.text}}\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-card/templates/template-9/template-9.html",'<div class="template-9">\n    <div class="header p-16" layout="row" layout-align="start center">\n        <div ng-if="card.avatar">\n            <img class="avatar mr-16" ng-src="{{card.avatar.src}}" alt="{{card.avatar.alt}}">\n        </div>\n\n        <div class="info">\n            <div class="title" ng-if="card.title">\n                {{card.title}}\n            </div>\n\n            <div class="subtitle secondary-text" ng-if="card.subtitle">\n                {{card.subtitle}}\n            </div>\n\n        </div>\n    </div>\n\n    <div class="text ph-16 pb-16" ng-if="card.text">\n        {{card.text}}\n    </div>\n\n    <div class="media">\n        <img class="image" ng-src="{{card.media.image.src}}" alt="{{card.media.image.alt}}" ng-show="card.media.image">\n    </div>\n\n    <div class="buttons m-8">\n        <md-button class="md-icon-button mr-16" aria-label="Favorite">\n            <md-icon md-font-icon="icon-heart-outline" class="s24"></md-icon>\n        </md-button>\n        <md-button class="md-icon-button" aria-label="Share">\n            <md-icon md-font-icon="icon-share" class="s24"></md-icon>\n        </md-button>\n    </div>\n\n</div>'),e.put("app/core/directives/ms-dash-clock/edit/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="TOOLS.EDIT_WIDGET">Edit Widget</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            \x3c!-- Theme START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.THEME">Theme</label>\n                <md-select ng-model="vm.options.data.theme" md-autofocus>\n                    <md-option value="light"> {{ \'TOOLS.LIGHT\' | translate }}</md-option>\n                    <md-option value="dark"> {{ \'TOOLS.DARK\' | translate }}</md-option>\n                </md-select>\n            </md-input-container>\n            \x3c!-- Theme END --\x3e\n\n            \x3c!-- Timezone START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TIMEZONE">Timezone</label>\n                <md-select ng-model="vm.options.data.gmtValue" md-autofocus>\n                    <md-option value="-12.00">−12.00</md-option>\n                    <md-option value="-11.00">−11.00</md-option>\n                    <md-option value="-10.00">−10.00</md-option>\n                    <md-option value="-9.30">−09.30</md-option>\n                    <md-option value="-9.00">−09.00</md-option>\n                    <md-option value="-8.00">−08.00</md-option>\n                    <md-option value="-7.00">−07.00</md-option>\n                    <md-option value="-6.00">−06.00</md-option>\n                    <md-option value="-5.00">−05.00</md-option>\n                    <md-option value="-4.3">−04.30</md-option>\n                    <md-option value="-4.00">−04.00</md-option>\n                    <md-option value="-3.3">−03.30</md-option>\n                    <md-option value="-3.00">−03.00</md-option>\n                    <md-option value="-2.00">−02.00</md-option>\n                    <md-option value="-1.00">−01.00</md-option>\n                    <md-option value="0.00">GMT (00.00)</md-option>\n                    <md-option value="1.00">+01.00</md-option>\n                    <md-option value="2.00">+02.00</md-option>\n                    <md-option value="3.00">+03.00</md-option>\n                    <md-option value="3.30">+03.30</md-option>\n                    <md-option value="4.00">+04.00</md-option>\n                    <md-option value="4.30">+04.30</md-option>\n                    <md-option value="5.00">+05.00</md-option>\n                    <md-option value="5.30">+05.30</md-option>\n                    <md-option value="5.45">+05.45</md-option>\n                    <md-option value="6.00">+06.00</md-option>\n                    <md-option value="6.30">+06.30</md-option>\n                    <md-option value="7.00">+07.00</md-option>\n                    <md-option value="8.00">+08.00</md-option>\n                    <md-option value="8.45">+08.45</md-option>\n                    <md-option value="9.00">+09.00</md-option>\n                    <md-option value="9.30">+09.30</md-option>\n                    <md-option value="10.00">+10.00</md-option>\n                    <md-option value="10.30">+10.30</md-option>\n                    <md-option value="11.00">+11.00</md-option>\n                    <md-option value="11.30">+11.30</md-option>\n                    <md-option value="12.00">+12.00</md-option>\n                    <md-option value="12.45">+12.45</md-option>\n                    <md-option value="13.00">+13.00</md-option>\n                    <md-option value="14.00">+14.00</md-option>\n                </md-select>\n            </md-input-container>\n            \x3c!-- Timezone END --\x3e\n\n            \x3c!-- Digital Format START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DIGITAL_FORMAT">Digital Format</label>\n                <input type="text" name="digitalFormat" ng-model="vm.options.data.digitalFormat">\n            </md-input-container>\n            \x3c!-- Digital Format END --\x3e\n\n\n            \x3c!-- Description START --\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.options.data.description">\n            </md-input-container>\n            \x3c!-- Description END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.updateItem()" ng-disabled="dashboarditemForm.$pristine || dashboarditemForm.$invalid" class="send-button md-accent md-raised" aria-label="UPDATE" translate="TOOLS.UPDATE" translate-attr-aria-label="TOOLS.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/core/directives/ms-dash-clock/ms-dash-clock.html",'\x3c!-- WIDGET --\x3e\n<ms-widget flippable="true" layout="column" flex="100" layout-fill>\n\n    \x3c!-- Front --\x3e\n    <ms-widget-front>\n        <div class="ph-8 pv-16 h-55" layout="row">\n            <div layout="row" layout-align="start center">\n                <md-menu>\n                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                    </md-button>\n\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="editItem()" translate="TOOLS.EDIT_WIDGET">\n                                Edit Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="deleteItem({id: options.id})" translate="TOOLS.DELETE_WIDGET">\n                                Delete Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="flipWidget()" translate="TOOLS.FLIP_WIDGET">\n                                Flip Widget\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n            <div layout="row" layout-align="end center" flex>\n                <span class="h3 secondary-text font-weight-500 text-truncate padding-right-20">{{ \'TOOLS.CLOCK\' | translate }}</span>\n            </div>\n        </div>\n\n        <div class="pt-16 pb-32" layout="column" layout-align="center center">\n            <div>\n                <ds-widget-clock theme="options.data.theme" digital-format="options.data.digitalFormat" gmt-offset="options.data.gmtValue" show-gmt-info></ds-widget-clock>\n            </div>\n        </div>\n    </ms-widget-front>\n    \x3c!-- / Front --\x3e\n\n    \x3c!-- Back --\x3e\n    <ms-widget-back class="p-16 white-bg">\n        <div class="flip-to-front">\n            <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n            </md-button>\n        </div>\n\n        <div>\n            {{ options.data.description || \'TOOLS.DESCRIPTION\' | translate }}\n        </div>\n    </ms-widget-back>\n    \x3c!-- / Back --\x3e\n\n</ms-widget>\n\x3c!-- / WIDGET --\x3e'),e.put("app/core/directives/ms-dash-counter/edit/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="TOOLS.EDIT_WIDGET">Edit Widget</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <md-tabs md-dynamic-height md-border-bottom>\n                \x3c!-- Layout Tab START --\x3e\n                <md-tab label="{{\'TOOLS.LAYOUT\' | translate}}">\n\n                    \x3c!-- Title START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.TITLE">Title</label>\n                        <input type="text" name="title" ng-model="vm.options.data.title" required>\n                        <div ng-messages="dashboarditemForm.title.$error" ng-show="dashboarditemForm.title.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="TOOLS.ERRORS.TITLE_REQUIRED">Title field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    \x3c!-- Title END --\x3e\n\n                    \x3c!-- Background START--\x3e\n                    <div flex md-color-picker ng-model="vm.options.data.background" label="{{\'TOOLS.BACKGROUND_COLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                        open-on-input="true"></div>\n                    \x3c!-- Background  END--\x3e\n\n                    \x3c!-- Foreground START--\x3e\n                    <div flex md-color-picker ng-model="vm.options.data.foreground" label="{{\'TOOLS.FOREGROUND_COLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                        open-on-input="true"></div>\n                    \x3c!-- Foreground END--\x3e\n\n                    \x3c!-- Foreground Title START--\x3e\n                    <div flex md-color-picker ng-model="vm.options.data.foregroundTitle" label="{{\'TOOLS.FOREGROUND_TITLE_COLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                        open-on-input="true"></div>\n                    \x3c!-- Foreground END--\x3e\n\n                    \x3c!-- Description Title START --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.DESCRIPTION">Description</label>\n                        <input type="text" name="description" ng-model="vm.options.data.description">\n                    </md-input-container>\n                    \x3c!-- Description END --\x3e\n\n                </md-tab>\n                \x3c!-- Layout Tab END --\x3e\n\n                \x3c!-- Query Tab START --\x3e\n                <md-tab label="{{\'TOOLS.TOOLS_QUERY\' | translate}}">\n                    \x3c!-- SELECT START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.SELECT">Select</label>\n                        <input type="text" name="select" ng-model="vm.options.data.query.fields" required>\n                    </md-input-container>\n                    \x3c!-- <md-chips placeholder="{{\'TOOLS.FIELDS\' | translate}}" ng-model="vm.options.data.query.fields" name="fields" md-max-chips="1" m d-enable-chip-edit="true"></md-chips> --\x3e\n                    \x3c!-- SELECT END --\x3e\n\n                    \x3c!-- FROM  START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.FROM">From</label>\n                        <input type="text" name="from" ng-model="vm.options.data.query.from" required>\n                    </md-input-container>\n                    \x3c!-- FROM END --\x3e\n\n                    \x3c!-- WHERE START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.WHERE">Where</label>\n                        <input type="text" name="where" ng-model="vm.options.data.query.where">\n                    </md-input-container>\n                    \x3c!-- WHERE END --\x3e\n\n                </md-tab>\n                \x3c!-- Query Tab END --\x3e\n            </md-tabs>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.updateItem()" ng-disabled="dashboarditemForm.$pristine || dashboarditemForm.$invalid" class="send-button md-accent md-raised" aria-label="UPDATE" translate="TOOLS.UPDATE" translate-attr-aria-label="TOOLS.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/core/directives/ms-dash-counter/ms-dash-counter.html",'\x3c!-- WIDGET --\x3e\n<ms-widget flippable="true" layout="column" flex="100" layout-fill>\n\n    \x3c!-- Front --\x3e\n    <ms-widget-front ng-style="{background: options.data.background}">\n        <div class="ph-8 pv-16 h-55" layout="row">\n            <div layout="row" layout-align="start center" flex="80">\n                <md-menu>\n                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                    </md-button>\n\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="editItem()" translate="TOOLS.EDIT_WIDGET">\n                                Edit Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="deleteItem({id: options.id})" translate="TOOLS.DELETE_WIDGET">\n                                Delete Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="flipWidget()" translate="TOOLS.FLIP_WIDGET">\n                                Flip Widget\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n            <div layout="row" layout-align="end center" flex="20" ng-switch="result.error">\n                <md-icon ng-switch-default md-font-icon="icon-timer-sand"></md-icon>\n                <md-icon ng-switch-when="false" class="green-fg" md-font-icon="icon-check"></md-icon>\n                <md-icon ng-switch-when="true" class="red-fg" md-font-icon="icon-block-helper"></md-icon>\n            </div>\n        </div>\n\n        <div class="pt-8 pb-32" layout="column" layout-align="center center">\n            <div ng-if="!result.error" class="font-size-52 line-height-72" ng-style="{color: options.data.foreground}">\n                {{ result.value || 0 }}\n            </div>\n            <div ng-if="!result.error" class="h3 secondary-text font-weight-500" ng-style="{color: options.data.foregroundTitle}">\n                {{ options.data.title || \'TOOLS.TITLE\' | translate }}\n            </div>\n            <div ng-if="result.error" class="padding-20">\n                <span>{{result.message}}</span>\n            </div>\n        </div>\n    </ms-widget-front>\n    \x3c!-- / Front --\x3e\n\n    \x3c!-- Back --\x3e\n    <ms-widget-back class="p-16 white-bg">\n        <div class="flip-to-front">\n            <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n            </md-button>\n        </div>\n\n        <div>\n            {{ options.data.description || \'TOOLS.DESCRIPTION\' | translate }}\n        </div>\n    </ms-widget-back>\n    \x3c!-- / Back --\x3e\n\n</ms-widget>\n\x3c!-- / WIDGET --\x3e'),e.put("app/core/directives/ms-dash-iframe/edit/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="TOOLS.EDIT_WIDGET">Edit Widget</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            \x3c!-- Title START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TITLE">Title</label>\n                <input type="text" name="title" ng-model="vm.options.data.title" required>\n                <div ng-messages="dashboarditemForm.title.$error" ng-show="dashboarditemForm.title.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TITLE_REQUIRED">Title field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            \x3c!-- Title END --\x3e\n\n            \x3c!-- Title START--\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.URL">Url</label>\n                <input type="url" name="url" ng-model="vm.options.data.url" required>\n                <div ng-messages="dashboarditemForm.url.$error" ng-show="dashboarditemForm.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.URL_REQUIRED">URL field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            \x3c!-- Title END --\x3e\n\n\n            \x3c!-- Description START --\x3e\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.options.data.description">\n            </md-input-container>\n            \x3c!-- Description END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.updateItem()" ng-disabled="dashboarditemForm.$pristine || dashboarditemForm.$invalid" class="send-button md-accent md-raised" aria-label="UPDATE" translate="TOOLS.UPDATE" translate-attr-aria-label="TOOLS.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/core/directives/ms-dash-iframe/ms-dash-iframe.html",'\x3c!-- WIDGET --\x3e\n<ms-widget flippable="true" layout="column" flex="100" layout-fill>\n\n    \x3c!-- Front --\x3e\n    <ms-widget-front>\n        <div class="ph-8 pv-16 h-55" layout="row">\n            <div layout="row" layout-align="start center" flex="80">\n                <md-menu>\n                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                    </md-button>\n\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="editItem()" translate="TOOLS.EDIT_WIDGET">\n                                Edit Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="deleteItem({id: options.id})" translate="TOOLS.DELETE_WIDGET">\n                                Delete Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="flipWidget()" translate="TOOLS.FLIP_WIDGET">\n                                Flip Widget\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n            <div layout="row" layout-align="end center" flex="20">\n                <span class="h3 secondary-text font-weight-500 text-truncate padding-right-20">{{ options.data.title || \'TOOLS.TITLE\' | translate }}</span>\n            </div>\n        </div>\n\n        <div layout="row" layout-fill style="min-height: 1000px">\n            <iframe flex ng-src="{{getTrustSrc(options.data.url)}}" allowfullscreen frameborder="0"></iframe>\n        </div>\n    </ms-widget-front>\n    \x3c!-- / Front --\x3e\n\n    \x3c!-- Back --\x3e\n    <ms-widget-back class="p-16 white-bg">\n        <div class="flip-to-front">\n            <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n            </md-button>\n        </div>\n\n        <div>\n            {{ options.data.description || \'TOOLS.DESCRIPTION\' | translate }}\n        </div>\n    </ms-widget-back>\n    \x3c!-- / Back --\x3e\n\n</ms-widget>\n\x3c!-- / WIDGET --\x3e'),e.put("app/core/directives/ms-dash-table/edit/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="TOOLS.EDIT_WIDGET">Edit Widget</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <md-tabs md-dynamic-height md-border-bottom>\n                \x3c!-- Layout Tab START --\x3e\n                <md-tab label="{{\'TOOLS.TOOLS_LAYOUT\' | translate}}">\n\n                    \x3c!-- Title START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.TITLE">Title</label>\n                        <input type="text" name="title" ng-model="vm.options.data.title" required>\n                        <div ng-messages="dashboarditemForm.title.$error" ng-show="dashboarditemForm.title.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="TOOLS.ERRORS.TITLE_REQUIRED">Title field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    \x3c!-- Title END --\x3e\n\n                    \x3c!-- Description START --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.DESCRIPTION">Description</label>\n                        <input type="text" name="description" ng-model="vm.options.data.description">\n                    </md-input-container>\n                    \x3c!-- Description END --\x3e\n\n                </md-tab>\n                \x3c!-- Layout Tab END --\x3e\n\n                \x3c!-- Query Tab START --\x3e\n                <md-tab label="{{\'TOOLS.TOOLS_QUERY\' | translate}}">\n\n                    \x3c!-- SELECT START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.SELECT">Select</label>\n                        <input type="text" name="select" ng-model="vm.options.data.query.fields" required>\n                    </md-input-container>\n                    \x3c!-- <md-chips placeholder="{{\'TOOLS.FIELDS\' | translate}}" ng-model="vm.options.data.query.fields" name="fields" md-max-chips="1" m d-enable-chip-edit="true"></md-chips> --\x3e\n                    \x3c!-- SELECT END --\x3e\n\n                    \x3c!-- FROM  START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.FROM">From</label>\n                        <input type="text" name="from" ng-model="vm.options.data.query.from" required>\n                    </md-input-container>\n                    \x3c!-- FROM END --\x3e\n\n                    \x3c!-- WHERE START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.WHERE">Where</label>\n                        <input type="text" name="where" ng-model="vm.options.data.query.where">\n                    </md-input-container>\n                    \x3c!-- WHERE END --\x3e\n\n                    \x3c!-- LIMIT START--\x3e\n                    <md-input-container class="md-block">\n                        <label translate="TOOLS.LIMIT">Limit</label>\n                        <input type="text" name="limit" ng-model="vm.options.data.query.limit">\n                    </md-input-container>\n                    \x3c!-- LIMIT END --\x3e\n\n                </md-tab>\n                \x3c!-- Query Tab END --\x3e\n            </md-tabs>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.updateItem()" ng-disabled="dashboarditemForm.$pristine || dashboarditemForm.$invalid" class="send-button md-accent md-raised" aria-label="UPDATE" translate="TOOLS.UPDATE" translate-attr-aria-label="TOOLS.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/core/directives/ms-dash-table/ms-dash-table.html",'\x3c!-- WIDGET --\x3e\n<ms-widget flippable="true" layout="column" flex="100" layout-fill>\n\n    \x3c!-- Front --\x3e\n    <ms-widget-front>\n        <div class="ph-8 pv-16 h-55" layout="row">\n            <div layout="row" layout-align="start center" flex="80">\n                <md-menu>\n                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                    </md-button>\n\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="editItem()" translate="TOOLS.EDIT_WIDGET">\n                                Edit Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="deleteItem({id: options.id})" translate="TOOLS.DELETE_WIDGET">\n                                Delete Widget\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="flipWidget()" translate="TOOLS.FLIP_WIDGET">\n                                Flip Widget\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n            <div layout="row" layout-align="end center" flex="20" ng-switch="result.error">\n                <span class="h3 secondary-text font-weight-500 text-truncate padding-right-20">{{ options.data.title || \'TOOLS.TITLE\' | translate }}</span>\n                <md-icon ng-switch-default md-font-icon="icon-timer-sand"></md-icon>\n                <md-icon ng-switch-when="false" class="green-fg" md-font-icon="icon-check"></md-icon>\n                <md-icon ng-switch-when="true" class="red-fg" md-font-icon="icon-block-helper"></md-icon>\n            </div>\n        </div>\n\n        <div layout="row" ng-if="!result.error">\n            <table md-table>\n                <thead md-head>\n                    <tr md-row>\n                        <th md-column ng-repeat="field in result.fields"><span> {{ field }} </span></th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-repeat="row in result.rows">\n                        <td md-cell ng-repeat="(key, value) in row"> {{value}} </td>\n                    </tr>\n                </tbody>\n            </table>\n        </div>\n        <div layout="row" ng-if="result.error">\n            <span class="padding-20">{{result.message}}</span>\n        </div>\n    </ms-widget-front>\n    \x3c!-- / Front --\x3e\n\n    \x3c!-- Back --\x3e\n    <ms-widget-back class="p-16 white-bg">\n        <div class="flip-to-front">\n            <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n            </md-button>\n        </div>\n\n        <div>\n            {{ options.data.description || \'TOOLS.DESCRIPTION\' | translate }}\n            <md-tooltip>{{ message || \'TOOLS.TOOLS_VALID_QUERY\' | translate }}</md-tooltip>\n        </div>\n    </ms-widget-back>\n    \x3c!-- / Back --\x3e\n\n</ms-widget>\n\x3c!-- / WIDGET --\x3e'),e.put("app/core/directives/ms-dual-multiselect/ms-dual-multiselect.html",'<div ng-cloak layout-gt-sm="row" layout="column">\n    <div flex-gt-sm="50" flex="45">\n        <md-input-container class="md-icon-float md-block margin-0">\n            <md-icon md-font-icon="icon-magnify" aria-label="swap"></md-icon>\n            <input ng-model="query" type="text" placeholder="Search...">\n        </md-input-container>\n        <md-content class="border h-300">\n            <md-list class="md-dense" layout-fill layout-align="center center">\n                <md-list-item class="md-3-line" ng-repeat="item in options.items | filter: query | orderBy: options.orderBy" ng-click="transfer(options.items, options.selectedItems, options.items.indexOf(item), false)">\n                    <div class="md-list-item-text" layout="column">\n                        <h3 ng-if="options.line1">{{ item[options.line1] || \'\' }}</h3>\n                        <h4 ng-if="options.line2">{{ item[options.line2] || \'\' }}</h4>\n                        <p ng-if="options.line3">{{ item[options.line3] || \'\' }}</p>\n                    </div>\n                    <md-icon md-font-icon="icon-arrow-right-bold" aria-label="swap"></md-icon>\n                    <md-divider></md-divider>\n                </md-list-item>\n            </md-list>\n        </md-content>\n        <div class="margin-10" layout="row">\n            <span class="h4" flex>{{options.labelAll || \'All Items\'}} ({{options.items.length}})</span>\n            <md-icon md-font-icon="icon-chevron-double-right" aria-label="swap" ng-click="transfer(options.items, options.selectedItems, -1, false)"></md-icon>\n        </div>\n    </div>\n\n    <div flex="10" layout="row" layout-align="center center">\n        <md-icon md-font-icon="icon-swap-horizontal" aria-label="swap"></md-icon>\n    </div>\n\n    <div flex-gt-sm="50" flex="45">\n        <md-input-container class="md-icon-float md-block margin-0">\n            <md-icon md-font-icon="icon-magnify" aria-label="swap"></md-icon>\n            <input ng-model="selectedQuery" type="text" placeholder="Search...">\n        </md-input-container>\n        <md-content class="border h-300">\n            <md-list class="md-dense" layout-fill layout-align="center center">\n                <md-list-item class="md-3-line" ng-repeat="item in options.selectedItems | filter: selectedQuery | orderBy: options.orderBy" ng-click="transfer(options.selectedItems, options.items, options.selectedItems.indexOf(item), true)">\n                    <md-icon md-font-icon="icon-arrow-left-bold" aria-label="swap"></md-icon>\n                    <div class="md-list-item-text" layout="column">\n                        <h3 ng-if="options.line1">{{ item[options.line1] || \'\' }}</h3>\n                        <h4 ng-if="options.line2">{{ item[options.line2] || \'\' }}</h4>\n                        <p ng-if="options.line3">{{ item[options.line3] || \'\' }}</p>\n                    </div>\n                    <md-divider></md-divider>\n                </md-list-item>\n            </md-list>\n        </md-content>\n        <div class="margin-10" layout="row">\n            <md-icon md-font-icon="icon-chevron-double-left" aria-label="swap" flex ng-click="transfer(options.selectedItems, options.items, -1, true)"></md-icon>\n            <span class="h4">{{options.labelSelected || \'Selected Items\'}} ({{options.selectedItems.length}})</span>\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-info-bar/ms-info-bar.html",'<div id="ms-info-bar" layout="row" layout-align="start center" flex>\n    <div id="ms-info-bar-message" ng-transclude flex></div>\n    <md-button id="ms-info-bar-close" class="md-icon-button" aria-label="Close" ng-click="removeInfoBar()">\n        <md-icon md-font-icon="icon-close s24"></md-icon>\n    </md-button>\n</div>'),e.put("app/core/directives/ms-material-color-picker/ms-material-color-picker.html",'<md-menu md-position-mode="target-right target">\n\n    <div ng-click="$mdOpenMenu($event)">\n        <ms-color-picker-button>\n            <md-button aria-label="Row Color" md-menu-origin ng-click="$mdOpenMenu($event)" ng-class="vm.selectedColor.class">\n\n                <span ng-show="vm.selectedColor.palette">\n                    {{vm.selectedColor.palette}} {{vm.selectedColor.hue}}\n                </span>\n                <span ng-show="!vm.selectedColor.palette">\n                    Select Color\n                </span>\n            </md-button>\n        </ms-color-picker-button>\n    </div>\n\n    <md-menu-content class="ms-material-color-picker-menu-content" layout-column>\n\n        <header ng-class="vm.selectedColor.class || \'md-accent-bg\'" class="md-whiteframe-4dp" layout="row" layout-align="space-between center">\n            <md-button md-prevent-menu-close ng-click="vm.activateHueSelection(false,false)" class="md-icon-button" ng-class="{\'hidden\':!vm.selectedPalette}" aria-label="Palette">\n                <md-icon md-font-icon="icon-arrow-left" class="s20"></md-icon>\n            </md-button>\n\n            <span ng-if="vm.selectedColor.palette">\n                {{vm.selectedColor.palette}} {{vm.selectedColor.hue}}\n            </span>\n\n            <span ng-if="!vm.selectedColor.palette">\n                Select Color\n            </span>\n\n            <md-button class="remove-color-button md-icon-button" ng-click="vm.removeColor()" aria-label="Remove Color">\n                <md-icon md-font-icon="icon-delete" class="s20"></md-icon>\n            </md-button>\n        </header>\n\n        <div class="colors" ms-scroll>\n            <div ng-show="!vm.selectedPalette" layout="row" layout-wrap>\n                <div class="color" ng-class="\'md-\'+palette+\'-500-bg\'" ng-repeat="(palette, hues) in vm.palettes" ng-click="vm.activateHueSelection(palette,hues)" layout="row" layout-align="start end" md-prevent-menu-close md-ink-ripple>\n                    <span class="label">\n                        {{palette}}\n                    </span>\n                </div>\n            </div>\n\n            <div ng-show="vm.selectedPalette" layout="row" layout-wrap>\n                <div class="color" ng-class="\'md-\'+vm.selectedPalette+\'-\'+hue+\'-bg\'" ng-repeat="(hue, values) in vm.selectedHues" ng-click="vm.selectColor(vm.selectedPalette,hue)" layout="row" layout-align="start end" md-ink-ripple>\n                    <span class="label">\n                        {{hue}}\n                    </span>\n                    <i ng-if="vm.selectedPalette == vm.selectedColor.palette && hue == vm.selectedColor.hue" class="s16 icon-check">\n                    </i>\n                </div>\n            </div>\n\n        </div>\n\n    </md-menu-content>\n</md-menu>'),e.put("app/core/directives/ms-navigation/templates/horizontal.html",'<div class="navigation-toggle" hide-gt-sm>\n    <md-button class="md-icon-button" ng-click="vm.toggleHorizontalMobileMenu()" aria-label="Toggle Mobile Navigation">\n        <md-icon md-font-icon="icon-menu"></md-icon>\n    </md-button>\n</div>\n\n<ul class="horizontal">\n    <li ng-repeat="node in vm.navigation" ms-navigation-horizontal-node="node" ng-class="{\'has-children\': vm.hasChildren}" ng-include="\'navigation-horizontal-nested.html\'"></li>\n</ul>\n\n\x3c!-- Nested horizontal navigation template --\x3e\n<script type="text/ng-template" id="navigation-horizontal-nested.html">\n\n    <div ms-navigation-horizontal-item layout="row" ng-if="!vm.isHidden()">\n\n        <div class="ms-navigation-horizontal-button" ng-if="!node.uisref && node.title" ng-class="{\'active md-accent-bg md-accent-fg\': vm.isActive}">\n            <i class="icon s18 {{node.icon}}" ng-if="node.icon"></i>\n            <span class="title" translate="{{node.translate}}" flex>{{node.title}}</span>\n            <span class="badge white-fg" style="background: {{node.badge.color}}" ng-if="node.badge">{{node.badge.content}}</span>\n            <i class="icon-chevron-right s18 arrow" ng-if="vm.hasChildren"></i>\n        </div>\n\n        <a class="ms-navigation-horizontal-button" ui-sref="{{node.uisref}}" ui-sref-active="active md-accent-bg" ng-class="{\'active md-accent-bg md-accent-fg\': vm.isActive}" ng-if="node.uisref && node.title">\n            <i class="icon s18 {{node.icon}}" ng-if="node.icon"></i>\n            <span class="title" translate="{{node.translate}}" flex>{{node.title}}</span>\n            <span class="badge white-fg" style="background: {{node.badge.color}}" ng-if="node.badge">{{node.badge.content}}</span>\n            <i class="icon-chevron-right s18 arrow" ng-if="vm.hasChildren"></i>\n        </a>\n\n    </div>\n\n    <ul ng-if="vm.hasChildren && !vm.isHidden()">\n        <li ng-repeat="node in node.children" ms-navigation-horizontal-node="node" ng-class="{\'has-children\': vm.hasChildren}" ng-include="\'navigation-horizontal-nested.html\'"></li>\n    </ul>\n\n<\/script>\n\x3c!-- / Nested navigation template --\x3e'),e.put("app/core/directives/ms-navigation/templates/vertical.html",'<ul>\n    <li ng-repeat="node in vm.navigation" ms-navigation-node="node" ng-class="{\'collapsed\': vm.collapsed, \'has-children\': vm.hasChildren}" ng-include="\'navigation-nested.html\'"></li>\n</ul>\n\n\x3c!-- Nested navigation template --\x3e\n<script type="text/ng-template" id="navigation-nested.html">\n\n    <div ms-navigation-item layout="row" ng-if="!vm.isHidden()">\n\n        <div class="ms-navigation-button" ng-if="!node.uisref && node.title">\n            <i class="icon s16 {{node.icon}}" ng-if="node.icon"></i>\n            <span class="title" translate="{{node.translate}}" flex>{{node.title}}</span>\n            <span class="badge white-fg" ng-style="{\'background\': node.badge.color}" ng-if="node.badge">{{node.badge.content}}</span>\n            <i class="icon-chevron-right s16 arrow" ng-if="vm.collapsable && vm.hasChildren"></i>\n        </div>\n\n        <a class="ms-navigation-button" ui-sref="{{node.uisref}}" ui-sref-active="active md-accent-bg" ng-if="node.uisref && node.title">\n            <i class="icon s16 {{node.icon}}" ng-if="node.icon"></i>\n            <span class="title" translate="{{node.translate}}" flex>{{node.title}}</span>\n            <span class="badge white-fg" ng-style="{\'background\': node.badge.color}" ng-if="node.badge">{{node.badge.content}}</span>\n            <i class="icon-chevron-right s16 arrow" ng-if="vm.collapsable && vm.hasChildren"></i>\n        </a>\n\n    </div>\n\n    <ul ng-if="vm.hasChildren && !vm.isHidden()">\n        <li ng-repeat="node in node.children" ms-navigation-node="node" ng-class="{\'collapsed\': vm.collapsed, \'has-children\': vm.hasChildren}" ng-include="\'navigation-nested.html\'"></li>\n    </ul>\n\n<\/script>\n\x3c!-- / Nested navigation template --\x3e'),e.put("app/core/directives/ms-phonebar/ms-phonebar.html",'<div class="phonebar-container" layout="row" layout-align="space-between center" flex ng-class="{\'mobile-bar-active\': MsPhonebar.mobileBarActive}">\n\n    <div class="flex-noshrink" layout="row" layout-align="start center" flex>\n        <div class="phonebar hide show-gt-xs" layout="row" layout-align="start center">\n            <div layout="row" layout-align="center">\n                <md-input-container md-no-float>\n                    <input type="text" name="prefix" ng-model="vm.chanSpy.prefix" required placeholder="Insert Number">\n                </md-input-container>\n            </div>\n            <div layout="row" layout-align="center center">\n                <md-button class="md-icon-button">\n                    <md-icon md-font-icon="icon-phone" class="icon s24"></md-icon>\n                    <md-tooltip md-direction="bottom">CALL</md-tooltip>\n                </md-button>\n            </div>\n        </div>\n    </div>\n\n    <md-button class="md-icon-button toggle-mobile-menu hide-gt-xs" aria-label="Add shortcut" ng-click="MsPhonebar.toggleMobileBar()">\n        <md-icon md-menu-origin md-font-icon="icon-phone" class="icon s24" ng-hide="MsPhonebar.mobileBarActive"></md-icon>\n        <md-icon md-menu-origin md-font-icon="icon-close" class="icon s24" ng-hide="!MsPhonebar.mobileBarActive"></md-icon>\n    </md-button>\n</div>'),e.put("app/core/directives/ms-search-bar/ms-search-bar.html",'<div flex layout="row" layout-align="start center">\n    <label for="ms-search-bar-input">\n        <md-button class="ms-search-bar-expander md-icon-button" aria-label="Expand Search Bar"\n                   ng-click="MsSearchBar.expand()"\n                   ng-if="!MsSearchBar.resultsLoading || MsSearchBar.collapsed">\n            <md-icon md-font-icon="icon-magnify" class="icon s24"></md-icon>\n        </md-button>\n        <div class="ms-search-bar-loader" layout="row" layout-align="center center"\n             ng-if="MsSearchBar.resultsLoading && !MsSearchBar.collapsed">\n            <md-progress-circular class="md-accent" md-diameter="32" md-mode="indeterminate"></md-progress-circular>\n        </div>\n    </label>\n    <input id="ms-search-bar-input" type="text" placeholder="Search" flex ng-model="MsSearchBar.query" ng-model-options="MsSearchBar.queryOptions" ng-blur="MsSearchBar.blurCollapse()" ng-keydown="MsSearchBar.handleKeydown($event)">\n    <md-button class="ms-search-bar-collapser md-icon-button" ng-click="MsSearchBar.collapse()" aria-label="Collapse Search Bar">\n        <md-icon md-font-icon="icon-close" class="icon s24"></md-icon>\n    </md-button>\n\n    <div class="ms-search-bar-results" ng-if="MsSearchBar.results" ms-scroll>\n        <div class="no-results" ng-if="MsSearchBar.results.length === 0">No Results!</div>\n\n        <div class="result" ng-repeat="result in MsSearchBar.results" ng-click="MsSearchBar.handleResultClick(result)" ng-mouseenter="MsSearchBar.handleMouseenter($index)" ng-mousedown="MsSearchBar.absorbEvent($event)" ng-class="{\'selected\': $index == MsSearchBar.selectedResultIndex}"\n            md-ink-ripple>\n            <div layout="row" layout-align="start center">\n                <div class="icon-container" layout="row" layout-align="center center">\n                    <i ng-if="result.icon" class="icon {{result.icon}}"></i>\n                    <div ng-if="!result.icon" class="square md-accent-bg"></div>\n                </div>\n                <div>\n                    <div class="title">{{result.title}}</div>\n                    <div class="description" ng-if="result.description">{{result.description}}</div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>'),e.put("app/core/directives/ms-shortcuts/ms-shortcuts.html",'<div class="shortcuts-container" layout="row" layout-align="space-between center" flex ng-class="{\'mobile-bar-active\': MsShortcuts.mobileBarActive}">\n\n    <div class="flex-noshrink" layout="row" layout-align="start center" flex>\n        <div class="shortcuts hide show-gt-xs" layout="row" layout-align="start center" ms-scroll ng-if="MsShortcuts.shortcuts.length > 0" ng-sortable="MsShortcuts.sortableOptions">\n            <div ng-repeat="shortcut in MsShortcuts.shortcuts" layout="row" layout-align="center center">\n                <md-button class="md-icon-button shortcut" aria-label="{{shortcut.title}}" ui-sref="{{shortcut.uisref}}">\n                    <md-icon ng-if="shortcut.icon" md-font-icon="{{shortcut.icon}}" class="icon s24"></md-icon>\n                    <div ng-if="!shortcut.icon" class="first-letter">{{shortcut.title.charAt(0)}}</div>\n                    <md-tooltip md-direction="bottom">{{shortcut.title}}</md-tooltip>\n                </md-button>\n            </div>\n        </div>\n\n        <md-menu md-offset="8 56" class="shortcut-menu hide show-gt-xs">\n            <md-button class="md-icon-button add-shortcut-button" aria-label="Add shortcut" ng-click="$mdOpenMenu($event)">\n                <md-icon md-menu-origin md-font-icon="icon-star" class="icon amber-600-fg s24"></md-icon>\n                <md-tooltip md-direction="bottom">Click to add/remove shortcut</md-tooltip>\n            </md-button>\n\n            <md-menu-content>\n                <div id="ms-shortcut-add-menu">\n                    <div class="shortcut-search" layout="row" layout-align="start center">\n                        <div class="search-icon" layout="row" layout-align="center center" ng-if="!MsShortcuts.resultsLoading">\n                            <md-icon md-menu-align-target md-font-icon="icon-magnify" class="icon s24"></md-icon>\n                        </div>\n                        <div class="shortcut-loader" layout="row" layout-align="center center" ng-if="MsShortcuts.resultsLoading">\n                            <md-progress-circular class="md-accent" md-diameter="20" md-mode="indeterminate">\n                            </md-progress-circular>\n                        </div>\n\n                        <input type="text" placeholder="Search" flex ng-model="MsShortcuts.query" ng-model-options="MsShortcuts.queryOptions" ng-keydown="MsShortcuts.handleKeydown($event)">\n                    </div>\n\n                    <div class="results" ng-if="MsShortcuts.results" ms-scroll>\n                        <div class="no-results" ng-if="MsShortcuts.results.length === 0">No Results!</div>\n\n                        <div class="result" ng-repeat="result in MsShortcuts.results" ng-click="MsShortcuts.handleResultClick(result)" ng-mouseenter="MsShortcuts.handleMouseenter($index)" ng-mousedown="MsShortcuts.absorbEvent($event)" ng-class="{\'selected\': $index == MsShortcuts.selectedResultIndex}"\n                            md-prevent-menu-close="md-prevent-menu-close" md-ink-ripple>\n                            <div layout="row" layout-align="start space-between">\n                                <div layout="row" layout-align="start center" flex>\n                                    <div class="icon icon-container" layout="row" layout-align="center center">\n                                        <i ng-if="result.icon" class="{{result.icon}}"></i>\n                                        <div ng-if="!result.icon" class="square md-accent-bg"></div>\n                                    </div>\n                                    <div>\n                                        <div class="title">{{result.title}}</div>\n                                    </div>\n                                </div>\n                                <md-icon md-font-icon="icon-pin" class="icon s18" ng-class="{\'fade-text\': !result.hasShortcut}"></md-icon>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </md-menu-content>\n        </md-menu>\n    </div>\n\n    <md-button class="md-icon-button toggle-mobile-menu hide-gt-xs" aria-label="Add shortcut" ng-click="MsShortcuts.toggleMobileBar()">\n        <md-icon md-menu-origin md-font-icon="icon-star" class="icon amber-600-fg s24" ng-hide="MsShortcuts.mobileBarActive"></md-icon>\n        <md-icon md-menu-origin md-font-icon="icon-close" class="icon s24" ng-hide="!MsShortcuts.mobileBarActive"></md-icon>\n    </md-button>\n</div>'),e.put("app/core/directives/ms-stepper/templates/horizontal/horizontal.html",'<div class="ms-stepper-horizontal">\n    <div class="ms-stepper-navigation-wrapper">\n        <div class="ms-stepper-navigation" layout="row" layout-align="center center">\n            <md-button class="ms-stepper-navigation-item" ng-class="{\'current\': MsStepper.isStepCurrent(step.stepNumber), \'valid\': MsStepper.isStepValid(step.stepNumber), \'disabled\': MsStepper.isStepDisabled(step.stepNumber), \'optional\': MsStepper.isStepOptional(step.stepNumber)}"\n                ng-click="MsStepper.gotoStep(step.stepNumber)" ng-disabled="MsStepper.isStepDisabled(step.stepNumber)" ng-repeat="step in MsStepper.steps | filter:MsStepper.filterHiddenStep" layout="row" layout-align="start center">\n\n                <div class="step md-accent-bg" layout="row" layout-align="center center">\n                    <span ng-if="!MsStepper.isStepValid(step.stepNumber) || MsStepper.isStepOptional(step.stepNumber)">\n                    {{$index + 1}}\n                </span>\n                    <span ng-if="MsStepper.isStepValid(step.stepNumber) && !MsStepper.isStepOptional(step.stepNumber)">\n                    <i class="icon icon-check s18"></i>\n                </span>\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="title" translate="{{step.stepTitleTranslate}}">{{step.stepTitle}}</div>\n                    <div class="subtitle" ng-if="MsStepper.isStepOptional(step.stepNumber)">Optional</div>\n                </div>\n            </md-button>\n        </div>\n    </div>\n\n    <div class="ms-stepper-steps" ng-transclude></div>\n\n    <div class="ms-stepper-controls" layout="row" layout-align="center center">\n        <md-button class="md-accent md-raised" ng-disabled="MsStepper.isFirstStep()" ng-click="MsStepper.gotoPreviousStep()">\n            Back\n        </md-button>\n\n        <div class="ms-stepper-dots">\n            <span ng-repeat="step in MsStepper.steps" ng-hide="MsStepper.isStepHidden(step.stepNumber)" ng-class="{\'selected md-accent-bg\':MsStepper.currentStepNumber === $index + 1}">\n            </span>\n        </div>\n\n        <md-button class="md-accent md-raised" ng-if="!MsStepper.isLastStep()" ng-disabled="!MsStepper.isStepValid(MsStepper.currentStepNumber)" ng-click="MsStepper.gotoNextStep()">\n            Next\n        </md-button>\n\n        <md-button type="submit" class="md-accent md-raised" ng-click="MsStepper.resetForm()" ng-if="MsStepper.isLastStep()" ng-disabled="!MsStepper.isFormValid()">\n            Submit\n        </md-button>\n    </div>\n</div>'),e.put("app/core/directives/ms-stepper/templates/vertical/step/vertical-step.html","<md-button class=\"ms-stepper-navigation-item\" ng-class=\"{'current': MsStepper.isStepCurrent(stepInfo.stepNumber), 'valid': MsStepper.isStepValid(stepInfo.stepNumber), 'disabled': MsStepper.isStepDisabled(stepInfo.stepNumber), 'optional': MsStepper.isStepOptional(stepInfo.stepNumber)}\"\n"+'    ng-click="MsStepper.gotoStep(stepInfo.stepNumber)" ng-disabled="MsStepper.isStepDisabled(stepInfo.stepNumber)" ng-hide="MsStepper.isStepHidden(stepInfo.stepNumber)" aria-label="Stepper navigation button" layout="row" layout-align="start center">\n\n    <div class="step" layout="row" layout-align="center center">\n        <span ng-if="!MsStepper.isStepValid(stepInfo.stepNumber) || MsStepper.isStepOptional(stepInfo.stepNumber)">\n            <i class="icon icon-checkbox-blank-circle-outline s18 md-accent-fg"></i>\n        </span>\n        <span ng-if="MsStepper.isStepValid(stepInfo.stepNumber) && !MsStepper.isStepOptional(stepInfo.stepNumber)">\n            <i class="icon icon-check-circle s18 md-accent-fg"></i>\n        </span>\n    </div>\n\n    <div layout="column" layout-align="start start">\n        <div class="title" ng-if="stepInfo.stepTitleTranslate">{{stepInfo.stepTitleTranslate | translate }}</div>\n        <div class="title" ng-if="!stepInfo.stepTitleTranslate">{{stepInfo.stepTitle}}</div>\n        <div class="subtitle" ng-if="MsStepper.isStepOptional(stepInfo.stepNumber)">Optional</div>\n    </div>\n</md-button>\n\n<div class="ms-stepper-step-content" ng-transclude></div>\n\n<div class="ms-stepper-controls" layout="row" layout-align="start center" ng-show="MsStepper.isStepCurrent(stepInfo.stepNumber)">\n    <md-button class="md-accent md-raised" ng-disabled="MsStepper.isFirstStep()" ng-click="MsStepper.gotoPreviousStep()">\n        Back\n    </md-button>\n\n    <md-button class="md-accent md-raised" ng-if="!MsStepper.isLastStep()" ng-disabled="!MsStepper.isStepValid(MsStepper.currentStepNumber)" ng-click="MsStepper.gotoNextStep()">\n        Next\n    </md-button>\n\n    <md-button type="submit" class="md-accent md-raised" ng-click="MsStepper.resetForm()" ng-if="MsStepper.isLastStep()" ng-disabled="!MsStepper.isFormValid()">\n        Submit\n    </md-button>\n</div>'),e.put("app/core/directives/ms-stepper/templates/vertical/vertical.html",'<div class="ms-stepper-vertical">\n    <div class="ms-stepper-vertical-line"></div>\n    <div class="ms-stepper-steps" ng-transclude></div>\n</div>'),e.put("app/core/directives/ms-timezone/ms-timezone.html",'<md-select ng-model="ngModel">\n    <md-option ng-value="null">NONE</md-option>\n    <md-option ng-repeat="(key, value) in timezone" value="{{key}}">{{value.name}} ({{value.offsetStr}})</md-option>\n</md-select>'),e.put("app/core/layouts/content-only.html",'<div id="layout-content-only" class="template-layout" layout="column" flex>\n    <md-content id="content" class="animate-slide-up md-hue-2" ui-view="content" flex></md-content>\n</div>'),e.put("app/core/layouts/content-with-toolbar.html",'<div id="layout-content-with-toolbar" class="template-layout" layout="column" flex>\n    <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp" ui-view="toolbar"></md-toolbar>\n    <md-content id="content" class="animate-slide-up md-hue-2" ui-view="content" flex></md-content>\n\n    <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n</div>'),e.put("app/core/layouts/horizontal-navigation.html",'<div id="layout-horizontal-navigation" class="template-layout" layout="column" flex>\n\n    <div id="toolbar-navigation-container" class="md-whiteframe-1dp" layout="column" layout-align="space-between start">\n        <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp" ui-view="toolbar"></md-toolbar>\n        <div id="horizontal-navigation" ui-view="navigation" layout="row" layout-align="start end" flex></div>\n    </div>\n\n    <div id="content-container" flex layout="column">\n        <md-content id="content" class="animate-slide-up md-hue-2" ms-scroll ui-view="content" flex></md-content>\n    </div>\n\n    <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n\n</div>'),e.put("app/core/layouts/vertical-navigation-fullwidth-toolbar-2.html",'<div id="layout-vertical-navigation-fullwidth-toolbar-2" class="template-layout" layout="column" flex>\n\n    <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp md-accent" ui-view="toolbar"></md-toolbar>\n\n    <div id="main-container" layout="row" flex>\n        <md-sidenav id="vertical-navigation" class="md-primary-bg" md-is-locked-open="$mdMedia(\'gt-sm\')" md-component-id="navigation" ms-scroll ui-view="navigation"></md-sidenav>\n\n        <div id="content-container" flex layout="column">\n            <md-content id="content" class="animate-slide-up md-hue-2" ms-scroll ui-view="content" flex></md-content>\n        </div>\n\n        <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n    </div>\n\n\n</div>'),e.put("app/core/layouts/vertical-navigation-fullwidth-toolbar.html",'<div id="layout-vertical-navigation-fullwidth-toolbar" class="template-layout" layout="column" flex>\n\n    <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp md-accent" ui-view="toolbar"></md-toolbar>\n\n    <div id="main-container" layout="row" flex>\n        <md-sidenav id="vertical-navigation" class="md-primary-bg" md-is-locked-open="$mdMedia(\'gt-sm\')" md-component-id="navigation" ms-scroll ui-view="navigation"></md-sidenav>\n\n        <div id="content-container" flex layout="column">\n            <md-content id="content" class="animate-slide-up md-hue-2" ms-scroll ui-view="content" flex></md-content>\n        </div>\n\n        <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n    </div>\n\n\n</div>'),e.put("app/core/layouts/vertical-navigation.html",'<div id="layout-vertical-navigation" class="template-layout" layout="row" flex>\n\n    <md-sidenav id="vertical-navigation" class="md-primary-bg" md-is-locked-open="$mdMedia(\'gt-sm\')" md-component-id="navigation" ms-scroll ui-view="navigation" ng-if="!vm.isAgent()"></md-sidenav>\n\n    <div id="content-container" flex layout="column">\n        <md-toolbar id="toolbar" class="md-menu-toolbar md-whiteframe-1dp" ui-view="toolbar"></md-toolbar>\n\n        <md-content id="content" class="animate-slide-up md-hue-2" ms-scroll ui-view="content" flex></md-content>\n    </div>\n\n    <md-sidenav id="quick-panel" class="md-sidenav-right md-whiteframe-4dp" md-component-id="quick-panel" ms-scroll ui-view="quickPanel"></md-sidenav>\n\n</div>'),e.put("app/core/theme-options/theme-options.html",'<div class="ms-theme-options-button md-primary-bg" ng-click="toggleOptionsSidenav()">\n    <md-icon md-font-icon="icon-cog" class="white-text"></md-icon>\n</div>\n\n<md-sidenav md-component-id="motion-theme-options" class="md-sidenav-right">\n\n    <div class="ms-theme-options-list" layout="column">\n        <div class="theme-option layout-options">\n            <div class="option-title">Layout Style:</div>\n            <md-radio-group layout="row" layout-align="start start" layout-wrap ng-model="vm.layoutStyle" ng-change="vm.updateLayoutStyle()">\n                <md-radio-button ng-repeat="layoutStyle in vm.layoutStyles" ng-value="layoutStyle.value">\n                    <div layout="column" layout-align="center center">\n                        <img ng-src="{{layoutStyle.figure}}">\n                        <span class="text-center font-size-12 mt-8">{{layoutStyle.label}}</span>\n                    </div>\n                </md-radio-button>\n            </md-radio-group>\n        </div>\n\n        <md-divider></md-divider>\n\n        <div class="theme-option">\n            <div class="option-title">Layout Mode:</div>\n            <md-radio-group layout="row" layout-align="start center" ng-model="vm.layoutMode" ng-change="vm.updateLayoutMode()">\n                <md-radio-button ng-repeat="layoutMode in vm.layoutModes" ng-value="layoutMode.value">\n                    {{layoutMode.label}}\n                </md-radio-button>\n            </md-radio-group>\n        </div>\n\n        <md-divider></md-divider>\n\n        <div class="theme-option color-palettes">\n            <div class="option-title">Color Palette:</div>\n            <div layout="row" layout-align="start start" layout-wrap>\n                <md-button ng-repeat="(themeName, theme) in vm.themes.list" class="md-raised theme-button" layout="row" layout-align="center center" aria-label="{{themeName}}" ng-click="vm.setActiveTheme(themeName)" ng-style="{\'background-color\': theme.primary.color,\'border-color\': theme.accent.color,\'color\': theme.primary.contrast1}"\n                    ng-class="{active: vm.getActiveTheme().name === themeName}">\n                    <md-icon ng-style="{\'color\': theme.primary.contrast1}" md-font-icon="icon-palette" class="icon s32"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n</md-sidenav>'),e.put("app/errors/404/error-404.html",'<div id="error-404" layout="column" layout-align="center center">\n    <div class="content" layout="column" layout-align="center center">\n        <div class="error-code" translate="ERROR404.CODE">404</div>\n\n        <div class="message" translate="ERROR404.MESSAGE">Sorry but we couldn’t find the page you are looking for</div>\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300">Search for anything</ms-search-bar>\n\n        \x3c!-- <div class="search md-whiteframe-1dp" layout="row" layout-align="start center">\n            <md-icon md-font-icon="icon-magnify" class="icon s24"></md-icon>\n            <input ng-model="vm.search" type="text" placeholder="Search for anything" translate translate-attr-placeholder="ERROR404.SEARCH" flex>\n        </div> --\x3e\n\n        <a class="md-button md-raised md-primary back-link" href="/" translate="ERROR404.GO_BACK">Go back to dashboard</a>\n    </div>\n</div>'),e.put("app/errors/500/error-500.html",'<div id="error-500" layout="column" layout-align="center center">\n    <div ng-if="!vm.send" class="content" layout="column" layout-align="center center">\n        <div class="error-code" translate="ERROR500.CODE">500</div>\n        <div class="message" translate="ERROR500.MESSAGE">Well, you broke the internet!</div>\n        <div class="sub-message" translate="ERROR500.SUBMESSAGE">Just kidding, looks like we have an internal issue, please try again in couple minutes\n        </div>\n        <a class="md-button md-raised md-primary back-link" href="/" translate="ERROR500.GO_BACK">Go back to dashboard</a>\n        <md-button class="md-raised md-warn" ng-click="vm.sendReport()" translate="ERROR500.REPORT">Report this problem</md-button>\n    </div>\n    <pre ng-if="!vm.send">\n      {{vm.error}}\n    </pre>\n    <div ng-if="vm.send" class="content" layout="column" layout-align="center center">\n        <div class="error-code">#{{vm.code}}</div>\n        <div class="message" translate="ERROR500.JIRA_MESSAGE">Your request has been received and will be processed shortly.</div>\n        <div class="sub-message" translate="ERROR500.JIRA_SUBMESSAGE">Sorry for the inconvenience. If you have any questions or concerns, please do not hesitate to contact us.</div>\n        <a class="md-button md-raised md-primary back-link" href="/" translate="ERROR500.GO_BACK">Go back to dashboard</a>\n    </div>\n</div>'),e.put("app/login/login.html",'<div id="login" class="flex-scrollable" layout="column" ms-scroll>\n    <div id="login-form-wrapper" layout="column" layout-align="center center">\n        <div id="login-form" class="md-whiteframe-8dp">\n\n            <img src="/api/settings/1/logo_login" alt="logo_login" />\n            \x3c!-- <img src="assets/images/logos/login.png" alt="motion_logo_login" /> --\x3e\n\n            <div class="md-subhead padding-top-45" translate="LOGIN.TITLE">Log in to your account</div>\n\n            <form name="loginForm" novalidate>\n                <md-input-container class="md-block" md-no-float>\n                    <input type="input" name="name" ng-model="vm.form.name" autofocus aria-label="username" translate translate-attr-placeholder="LOGIN.USERNAME" required>\n                    <div ng-messages="loginForm.name.$error" role="alert" multiple>\n                        <div ng-message="required">\n                            <span translate="LOGIN.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n\n                <md-input-container class="md-block" md-no-float>\n                    <input type="password" name="password" ng-model="vm.form.password" aria-label="password" translate translate-attr-placeholder="LOGIN.PASSWORD" required>\n                    <div ng-messages="loginForm.password.$error" role="alert" multiple>\n                        <div ng-message="required">\n                            <span translate="LOGIN.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n\n                \x3c!-- <div class="remember-forgot-password" layout="row" layout-xs="column" layout-align="space-between center">\n                    <md-checkbox class="remember-me" ng-model="data.cb1" aria-label="Remember Me">\n                        <span translate="LOGIN.REMEMBER_ME">Remember Me</span>\n                    </md-checkbox>\n                    <a ui-sref="app.pages_auth_forgot-password" class="forgot-password md-accent-color" translate="LOGIN.FORGOT_PASSWORD">Forgot Password?</a>\n                </div> --\x3e\n\n                <b layout="row" layout-align="center center" class="md-padding" ng-if="vm.message"><font color="red">{{vm.message}}</font></b>\n                <md-button type="submit" ng-click="vm.login()" class="md-raised md-accent submit-button" aria-label="LOG IN" aria-label="LOGIN" translate="LOGIN.LOG_IN" translate-attr-aria-label="LOGIN.LOG_IN">\n                    LOG IN\n                </md-button>\n            </form>\n\n            <div class="separator">\n                <span class="text" translate="LOGIN.OR">OR</span>\n            </div>\n\n            <md-button ng-click="vm.loginOauth(\'google\')" class="md-raised google">\n                <div layout="row" layout-align="center center">\n                    <span>\n                        <md-icon md-font-icon="icon-google-plus" class="s16"></md-icon>\n                        <span translate="LOGIN.WITH_GOOGLE">Log in with Google</span>\n                    </span>\n                </div>\n            </md-button>\n        </div>\n    </div>\n</div>'),e.put("app/main/apps/analytics/views/extractedReports/create/dialog.html",'<md-dialog class="extractedReport-dialog" aria-label="New ExtractedReport">\n    <form name="extractedReportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.extractedReport.name" required autofocus>\n                <div ng-messages="extractedReportForm.name.$error" ng-show="extractedReportForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newExtractedReport" ng-click="vm.saveExtractedReport()" class="send-button md-accent md-raised" ng-disabled="extractedReportForm.$invalid || extractedReportForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE"\n                    translate-attr-aria-label="ANALYTICS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newExtractedReport" ng-click="vm.addNewExtractedReport()" class="send-button md-accent md-raised" ng-disabled="extractedReportForm.$invalid" aria-label="ADD" translate="ANALYTICS.ADD_EXTRACTEDREPORT" translate-attr-aria-label="ANALYTICS.ADD_EXTRACTEDREPORT">\n                    ADD EXTRACTEDREPORT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newExtractedReport" ng-click="vm.deleteExtractedReport($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/extractedReports/extractedReports.html",'<div id="extractedReports" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-chart-line" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="ANALYTICS.EXTRACTEDREPORTS">ExtractedReports</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="ANALYTICS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedExtractedReports.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedExtractedReports =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="ANALYTICS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-extractedReports-count">\n                    <span>{{vm.selectedExtractedReports.length}}</span>\n                <span translate="ANALYTICS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="EXTRACTEDREPORTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllExtractedReports()" translate="ANALYTICS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectExtractedReports()" translate="ANALYTICS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedExtractedReports" filename="extractedReports.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedExtractedReports($event)" aria-label="delete selected" translate translate-attr-label="EXTRACTEDREPORTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- EXTRACTEDREPORT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedExtractedReports" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getExtractedReports">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'ANALYTICS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'ANALYTICS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="type">{{ \'ANALYTICS.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="startDate">{{ \'ANALYTICS.DATE_RANGE_FROM\' | translate }}</th>\n                                <th md-column md-order-by="endDate">{{ \'ANALYTICS.DATE_RANGE_TO\' | translate }}</th>\n                                <th md-column md-order-by="createdAt">{{ \'ANALYTICS.GENERATED_AT\' | translate }}</th>\n                                <th md-column md-order-by="status">{{ \'ANALYTICS.STATUS\' | translate }}</th>\n                                <th md-column md-order-by="output">{{ \'ANALYTICS.OUTPUT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.extractedReports.rows.length">\n                                <td md-cell colspan="9">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="ANALYTICS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="extractedReport" md-select-id="id" ng-repeat="extractedReport in vm.extractedReports.rows">\n                                <td md-cell ng-if="extractedReport.userpic"><img class="avatar" alt="{{extractedReport.name}}" ng-src="api/users/{{extractedReport.id}}/avatar" /></td>\n                                <td md-cell ng-if="!extractedReport.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{extractedReport.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="id ">{{extractedReport.id}}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="name ">{{extractedReport.name}}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="type ">{{extractedReport.type}}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="startDate ">{{extractedReport.startDate | date:\'medium\' }}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="endDate ">{{extractedReport.endDate | date:\'medium\' }}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="createdAt ">{{extractedReport.createdAt | date:\'medium\' }}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="status ">{{extractedReport.status}}</td>\n                                <td ng-click="vm.createOrEditExtractedReport($event, extractedReport)" md-cell class="output ">{{extractedReport.output}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="ANALYTICS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(extractedReport, $event)" translate="ANALYTICS.EDIT_EXTRACTEDREPORT">\n                                                    Edit ExtractedReport\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.downloadfile(extractedReport, $event)" translate="ANALYTICS.DOWNLOAD_EXTRACTEDREPORT">\n                                                    Download ExtractedReport\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(extractedReport, $event)" translate="ANALYTICS.DELETE_EXTRACTEDREPORT">\n                                                    Delete ExtractedReport\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.extractedReports.count}}" md-on-paginate="vm.getExtractedReports" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / EXTRACTEDREPORT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/main/apps/analytics/views/metrics/create/dialog.html",'<md-dialog class="metric-dialog" aria-label="New Metric">\n    <form name="metricForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.metric.name" required autofocus>\n                <div ng-messages="metricForm.name.$error" ng-show="metricForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.TABLE">Table</label>\n                <md-select ng-model="vm.metric.table" required>\n                    <md-option ng-value="\'report_agent\'">Agent Report</md-option>\n                    <md-option ng-value="\'report_call\'">Call Report</md-option>\n                    <md-option ng-value="\'chat_messages\'">Chat Messages</md-option>\n                    <md-option ng-value="\'chat_rooms\'">Chat Rooms</md-option>\n                    <md-option ng-value="\'report_chat_session\'">Chat Session Report</md-option>\n                    <md-option ng-value="\'cm_contacts\'">Contacts</md-option>\n                    <md-option ng-value="\'report_square\'">CSquare Report</md-option>\n                    <md-option ng-value="\'report_square_details\'">CSquare Details Report</md-option>\n                    <md-option ng-value="\'fax_messages\'">Fax Messages</md-option>\n                    <md-option ng-value="\'fax_rooms\'">Fax Rooms</md-option>\n                    <md-option ng-value="\'report_fax_session\'">Fax Session Report</md-option>\n                    <md-option ng-value="\'report_integration\'">Integration Report</md-option>\n                    <md-option ng-value="\'mail_messages\'">Mail Messages</md-option>\n                    <md-option ng-value="\'mail_rooms\'">Mail Rooms</md-option>\n                    <md-option ng-value="\'report_mail_session\'">Mail Session Report</md-option>\n                    <md-option ng-value="\'report_member\'">Member Report</md-option>\n                    <md-option ng-value="\'openchannel_messages\'">Open Channel Messages</md-option>\n                    <md-option ng-value="\'openchannel_rooms\'">Open Channel Rooms</md-option>\n                    <md-option ng-value="\'report_openchannel_session\'">Open Channel Session Report</md-option>\n                    <md-option ng-value="\'report_queue\'">Queue Report</md-option>\n                    <md-option ng-value="\'sms_messages\'">Sms Messages</md-option>\n                    <md-option ng-value="\'sms_rooms\'">Sms Rooms</md-option>\n                    <md-option ng-value="\'report_sms_session\'">Sms Session Report</md-option>\n                    <md-option ng-value="\'users\'">Users</md-option>\n                    <md-option ng-value="\'voice_recordings\'">Voice Recordings</md-option>\n                    <md-option ng-value="\'cm_hopper\'">Dialer Hopper Processing</md-option>\n                    <md-option ng-value="\'cm_hopper_history\'">Dialer Hopper Logs</md-option>\n                    <md-option ng-value="\'cm_hopper_final\'">Dialer Hopper Final</md-option>\n                </md-select>\n                <div ng-messages="metricForm.table.$error" ng-show="metricForm.table.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.TABLE_REQUIRED">Table field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.METRIC">Metric</label>\n                <input type="text" name="metric" ng-model="vm.metric.metric" required>\n                <div ng-messages="metricForm.metric.$error" ng-show="metricForm.metric.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.METRIC_REQUIRED">Metric field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.metric.description">\n                <div ng-messages="metricForm.description.$error" ng-show="metricForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMetric" ng-click="vm.saveMetric()" class="send-button md-accent md-raised" ng-disabled="metricForm.$invalid || metricForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMetric" ng-click="vm.addNewMetric()" class="send-button md-accent md-raised" ng-disabled="metricForm.$invalid" aria-label="ADD" translate="ANALYTICS.ADD_METRIC" translate-attr-aria-label="ANALYTICS.ADD_METRIC">\n                    ADD METRIC\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMetric" ng-click="vm.deleteMetric($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/metrics/metrics.html",'<div id="metrics" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-chart-line" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="ANALYTICS.METRICS">Metrics</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="ANALYTICS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedMetrics.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedMetrics =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="ANALYTICS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-metrics-count">\n                    <span>{{vm.selectedMetrics.length}}</span>\n                <span translate="ANALYTICS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="METRICS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllMetrics()" translate="ANALYTICS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectMetrics()" translate="ANALYTICS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedMetrics" filename="metrics.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedMetrics($event)" aria-label="delete selected" translate translate-attr-label="METRICS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- METRIC TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedMetrics" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getMetrics">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'ANALYTICS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'ANALYTICS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="table">{{ \'ANALYTICS.TABLE\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'ANALYTICS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.metrics.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="ANALYTICS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="metric" md-select-id="id" ng-repeat="metric in vm.metrics.rows">\n                                <td md-cell ng-if="metric.userpic"><img class="avatar" alt="{{metric.name}}" ng-src="api/users/{{metric.id}}/avatar" /></td>\n                                <td md-cell ng-if="!metric.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{metric.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditMetric($event, metric)" md-cell class="id ">{{metric.id}}</td>\n                                <td ng-click="vm.createOrEditMetric($event, metric)" md-cell class="name ">{{metric.name}}</td>\n                                <td ng-click="vm.createOrEditMetric($event, metric)" md-cell class="table ">{{ vm.arraytable[metric.table].option }}</td>\n                                <td ng-click="vm.createOrEditMetric($event, metric)" md-cell class="description ">{{metric.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="ANALYTICS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(metric, $event)" translate="ANALYTICS.EDIT_METRIC">\n                                                    Edit Metric\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(metric, $event)" translate="ANALYTICS.DELETE_METRIC">\n                                                    Delete Metric\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.metrics.count}}" md-on-paginate="vm.getMetrics" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / METRIC TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD METRIC BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-metric-button" ng-click="vm.createOrEditMetric($event)" aria-label="add metric" translate translate-attr-aria-label="ANALYTICS.ADD_METRIC">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD METRIC BUTTON --\x3e\n</div>'),e.put("app/main/apps/analytics/views/reports/copy/dialog.html",'<md-dialog class="report-dialog" aria-label="Run Report">\n    <form name="reportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="ANALYTICS.COPY_REPORT">Copy Report</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input name="name" ng-model="vm.report.name" required md-autofocus>\n                <div ng-messages="reportForm.name.$error" ng-show="reportForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="md-block">\n                <label translate="ANALYTICS.SELECT_NODE">Select Node</label>\n                <div js-tree="vm.treeCustomConfig" tree-events-obj="vm.treeCustomEvents" ng-model="vm.treeCustomData" tree="vm.treeCustomInstance"></div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.copyReport()" class="send-button md-accent md-raised" ng-disabled="!vm.currentNode" aria-label="COPY" translate="ANALYTICS.COPY_REPORT" translate-attr-aria-label="ANALYTICS.COPY_REPORT">\n                    COPY REPORT\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/reports/create/dialog.html",'<md-dialog class="report-dialog" aria-label="New Report">\n    <form name="reportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.report.name" required md-autofocus>\n                <div ng-messages="reportForm.name.$error" ng-show="reportForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newReport">\n                <label translate="ANALYTICS.TABLE">Table</label>\n                <md-select ng-model="vm.report.table" required>\n                    <md-option value="report_agent">Agent Report</md-option>\n                    <md-option value="report_call">Call Report</md-option>\n                    <md-option value="chat_messages">Chat Messages</md-option>\n                    <md-option value="chat_rooms">Chat Rooms</md-option>\n                    <md-option value="report_chat_session">Chat Session Report</md-option>\n                    <md-option value="cm_contacts">Contacts</md-option>\n                    <md-option value="report_square">CSquare Report</md-option>\n                    <md-option value="report_square_details">CSquare Details Report</md-option>\n                    <md-option value="fax_messages">Fax Messages</md-option>\n                    <md-option value="fax_rooms">Fax Rooms</md-option>\n                    <md-option value="report_fax_session">Fax Session Report</md-option>\n                    <md-option value="report_integration">Integration Report</md-option>\n                    <md-option value="mail_messages">Mail Messages</md-option>\n                    <md-option value="mail_rooms">Mail Rooms</md-option>\n                    <md-option value="report_mail_session">Mail Session Report</md-option>\n                    <md-option value="report_member">Member Report</md-option>\n                    <md-option value="openchannel_messages">Open Channel Messages</md-option>\n                    <md-option value="openchannel_rooms">Open Channel Rooms</md-option>\n                    <md-option value="report_openchannel_session">Open Channel Session Report</md-option>\n                    <md-option value="report_queue">Queue Report</md-option>\n                    <md-option value="sms_messages">Sms Messages</md-option>\n                    <md-option value="sms_rooms">Sms Rooms</md-option>\n                    <md-option value="report_sms_session">Sms Session Report</md-option>\n                    <md-option value="users">Users</md-option>\n                    <md-option value="voice_recordings">Voice Recordings</md-option>\n                    <md-option value="cm_hopper">Dialer Hopper Processing</md-option>\n                    <md-option value="cm_hopper_history">Dialer Hopper Logs</md-option>\n                    <md-option value="cm_hopper_final">Dialer Hopper Final</md-option>\n                </md-select>\n                <div ng-messages="reportForm.table.$error" ng-show="reportForm.table.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.TABLE_REQUIRED">Table field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.report.description">\n                <div ng-messages="reportForm.description.$error" ng-show="reportForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newReport" ng-click="vm.saveReport()" class="send-button md-accent md-raised" ng-disabled="reportForm.$invalid || reportForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newReport" ng-click="vm.addNewReport()" class="send-button md-accent md-raised" ng-disabled="reportForm.$invalid || reportForm.$pristine" aria-label="ADD" translate="ANALYTICS.ADD_REPORT" translate-attr-aria-label="ANALYTICS.ADD_REPORT">\n                    ADD REPORT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newReport" ng-click="vm.deleteReport($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/reports/edit/condition/group.html",'<md-card class="padding-horizontal-15 padding-top-15">\n    <div layout="row">\n        <md-input-container class="md-block" flex>\n            <label translate="ANALYTICS.OPERATOR">Operator</label>\n            <md-select ng-model="group.operator" required>\n                <md-option value="AND">AND</md-option>\n                <md-option value="OR">OR</md-option>\n            </md-select>\n            <div ng-messages="conditionsForm.operator.$error" ng-show="conditionsForm.operator.$touched" role="alert">\n                <div ng-message="required">\n                    <span translate="ANALYTICS.ERRORS.OPERATOR_REQUIRED">Operator field is required</span>\n                </div>\n            </div>\n        </md-input-container>\n        <md-input-container class="md-block">\n            <md-button class="md-raised md-accent" ng-click="vm_rc.addCondition(group.rules)">\n                <md-icon md-font-icon="icon-plus"></md-icon> {{\'ANALYTICS.CONDITION\' | translate}}</md-button>\n        </md-input-container>\n        <md-input-container class="md-block">\n            <md-button class="md-raised md-accent" ng-click="vm_rc.addGroup(group.rules)">\n                <md-icon md-font-icon="icon-plus"></md-icon> {{\'ANALYTICS.GROUP\' | translate}}</md-button>\n        </md-input-container>\n        <div flex></div>\n        <md-input-container class="md-block" ng-if="parent">\n            <md-button class="md-raised md-warn" ng-click="vm_rc.deleteConfirm(parent, index, $event)">\n                <md-icon md-font-icon="icon-delete"></md-icon> {{\'ANALYTICS.GROUP\' | translate}}</md-button>\n        </md-input-container>\n    </div>\n    <div layout="column" ng-repeat="rule in group.rules track by $index">\n        <div layout="row" ng-if="!rule.group">\n            <md-input-container class="md-block" flex>\n                <label translate="ANALYTICS.COLUMN">COLUMN</label>\n                <md-select name="field" ng-model="rule.field" required>\n                    <md-option ng-repeat="column in vm_rc.columns" ng-value="column">{{column}}</md-option>\n                </md-select>\n                <div ng-messages="conditionsForm.field.$error" ng-show="conditionsForm.field.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.COLUMN_REQUIRED">Column field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" flex>\n                <label translate="ANALYTICS.CONDITION">CONDITION</label>\n                <md-select name="condition" ng-model="rule.condition" required>\n                    <md-option ng-repeat="condition in vm_rc.conditions" ng-value="condition">{{condition}}</md-option>\n                </md-select>\n                <div ng-messages="conditionsForm.condition.$error" ng-show="conditionsForm.condition.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.CONDITION_REQUIRED">Condition field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm_rc.isValueByCondition(rule.condition)" class="md-block" flex>\n                <label translate="ANALYTICS.VALUE">VALUE</label>\n                <input type="text" name="value" ng-model="rule.value" required md-autofocus>\n                <div ng-messages="conditionsForm.value.$error" ng-show="conditionsForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" flex>\n                <md-button class="md-fab md-mini md-warn" aria-label="Delete row" ng-click="vm_rc.deleteConfirm(group.rules, $index, $event)">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </md-input-container>\n        </div>\n        <div ng-if="rule.group" ng-include="\'app/main/apps/analytics/views/reports/edit/condition/group.html\'" ng-init="parent=group.rules;index=$index;group=rule.group"></div>\n    </div>\n</md-card>'),e.put("app/main/apps/analytics/views/reports/edit/field/dialog.html",'<md-dialog class="reportField-dialog" aria-label="New Report Field">\n    <form name="reportFieldForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{vm.title}}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.TYPE">Type</label>\n                <md-select name="type" ng-model="vm.reportField.type" ng-change="vm.reportField.field = undefined" required>\n                    <md-option value="column">Select a column</md-option>\n                    <md-option value="metric">Select an existing metric</md-option>\n                    <md-option value="custom">Write a custom metric</md-option>\n                </md-select>\n                <div ng-messages="reportForm.type.$error" ng-show="reportForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div ng-switch on="vm.reportField.type">\n                <md-input-container class="md-block" ng-switch-when="column">\n                    <label translate="ANALYTICS.COLUMN">Column Name</label>\n                    <md-select name="column" ng-model="vm.reportField.field" required>\n                        <md-option ng-repeat="column in vm.columns" ng-value="column">{{column}}</md-option>\n                    </md-select>\n                    <div ng-messages="reportForm.column.$error" ng-show="reportForm.column.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="ANALYTICS.ERRORS.COLUMN_REQUIRED">Column field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n                <md-input-container class="md-block" ng-switch-when="metric">\n                    <label translate="ANALYTICS.METRIC_NAME">Metric Name</label>\n                    <md-select name="metric" ng-model="vm.reportField.MetricId" required>\n                        <md-option ng-repeat="metric in vm.metrics" ng-value="metric.id">{{metric.name}}</md-option>\n                    </md-select>\n                    <div ng-messages="reportForm.metric.$error" ng-show="reportForm.metric.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="ANALYTICS.ERRORS.METRIC_REQUIRED">Metric field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n                <md-input-container class="md-block" ng-switch-when="custom">\n                    <label translate="ANALYTICS.CUSTOM_METRIC">Custom Metric</label>\n                    <input type="text" name="field" ng-model="vm.reportField.field" required md-autofocus>\n                    <div ng-messages="reportFieldForm.field.$error" ng-show="reportFieldForm.field.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="ANALYTICS.ERRORS.CUSTOM_METRIC_REQUIRED">Custom Metric field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.ALIAS">Alias</label>\n                <input type="text" name="alias" ng-model="vm.reportField.alias" ng-required="vm.reportField.type === \'custom\' || vm.reportField.type === \'metric\'">\n                <div ng-messages="reportFieldForm.alias.$error" ng-show="reportFieldForm.alias.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.ALIAS_REQUIRED">Alias field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.reportField.type !== \'metric\'">\n                <label translate="ANALYTICS.FUNCTION">Function</label>\n                <md-select name="function" ng-model="vm.reportField.function">\n                    <md-option ng-value="null">No Function</md-option>\n                    <md-option ng-repeat="function in vm.sqlUtil.getFunctions" ng-value="function.value">{{vm.reportField.field ? function.option(vm.reportField.field) : function.value}}</md-option>\n                </md-select>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.reportField.type !== \'metric\'">\n                <label translate="ANALYTICS.FORMAT">Format</label>\n                <md-select name="format" ng-model="vm.reportField.format">\n                    <md-option ng-value="null">No Format</md-option>\n                    <md-option ng-repeat="format in vm.sqlUtil.getFormats" ng-value="format.value">{{vm.reportField.field ? format.option(vm.reportField.field) : format.value}}</md-option>\n                </md-select>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.GROUP_BY">Group By</label>\n                <md-select name="groupBy" ng-model="vm.reportField.groupBy">\n                    <md-option ng-repeat="gb in vm.sqlUtil.getGroupBy" ng-value="gb.value">{{vm.reportField.field ? gb.option(vm.reportField.field) : gb.value}}</md-option>\n                </md-select>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.ORDER_BY">Order By</label>\n                <md-select name="orderBy" ng-model="vm.reportField.orderBy">\n                    <md-option ng-value="null">No Order</md-option>\n                    <md-option ng-repeat="ob in vm.sqlUtil.getOrderBy" ng-value="ob.value">{{vm.reportField.field ? ob.option(vm.reportField.field) : ob.value}}</md-option>\n                </md-select>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newReportField" ng-click="vm.saveReportField()" class="send-button md-accent md-raised" ng-disabled="reportFieldForm.$invalid || reportFieldForm.$pristine" aria-label="SAVE" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newReportField" ng-click="vm.addNewReportField()" class="send-button md-accent md-raised" ng-disabled="reportFieldForm.$invalid || reportFieldForm.$pristine" aria-label="ADD" translate="ANALYTICS.ADD_REPORTFIELD" translate-attr-aria-label="ANALYTICS.ADD_REPORTFIELD">\n                    ADD REPORT FIELD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newReportField" ng-click="vm.deleteReportField($event)" aria-label="DELETE" translate translate-attr-aria-label="ANALYTICS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/reports/edit/view.html",'<div id="analytics-report" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-reports-button md-icon-button" aria-label="Go to reports" ng-click="vm.gotoReports()" translate translate-attr-aria-label="ANALYTICS.GO_TO_ANALYTICSQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div class="report-image" hide-xs>\n                    <img ng-src="assets/images/business/reports.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.report.id}} {{vm.report.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="ANALYTICS.CREATED_AT"></span> <span>{{vm.report.createdAt | date:\'medium\'}}</span>\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span>{{vm.report.description}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveReport()" ng-disabled="generalForm.$pristine && conditionsForm.$pristine" class="send-button md-accent md-raised" translate="ANALYTICS.SAVE" translate-attr-aria-label="ANALYTICS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="ANALYTICS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="ANALYTICS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="ANALYTICS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.report.name" required md-autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="ANALYTICS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.report.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="ANALYTICS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="ANALYTICS.FIELDS">FIELDS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container fields md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ReportFieldsController as vm_rf" ng-init="vm_rf.init(vm.report)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_rf.selectedReportFields.length">\n                                <div class="md-toolbar-tools">\n                                    <div layout="row" layout-align="start center">\n                                        <div layout="column" layout-align="start start">\n                                            <div class="md-subhead" translate="ANALYTICS.FIELDS">\n                                                <span translate="ANALYTICS.FIELDS">FIELDS</span>\n                                            </div>\n                                            <div class="h4">\n                                                <span translate="ANALYTICS.TABLE">TABLE</span> <span class="text-bold">{{vm.report.table}}</span>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_rf.query.filter = query" on-collapse="vm_rf.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_rf.createOrEditReportField($event)" aria-label="add field" translate translate-attr-label="ANALYTICS.ADD_FIELD">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_rf.selectedReportFields.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_rf.selectedReportFields.length}} {{vm_rf.selectedReportFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_rf.deleteSelectedReportFields($event)" aria-label="delete selected" translate translate-attr-label="ANALYTICS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_rf.selectedReportFields" md-progress="vm_rf.promise">\n                                    <thead md-head md-order="vm_rf.query.sort" md-on-reorder="vm_rf.getReportFields">\n                                        <tr md-row>\n                                            <th md-column width="10px">\n                                                <md-icon md-font-icon="icon-drag-vertical"></md-icon>\n                                            </th>\n                                            <th md-column>Type</th>\n                                            <th md-column>Column or Metric</th>\n                                            <th md-column>Alias</th>\n                                            <th md-column>Function</th>\n                                            <th md-column>Format</th>\n                                            <th md-column>Group By</th>\n                                            <th md-column>Order By</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body ng-sortable="vm_rf.sortableTable">\n                                        <tr md-row md-select="reportField" md-select-id="id" ng-repeat="reportField in vm_rf.reportFields.rows">\n                                            <td md-cell class="handle">\n                                                <md-icon md-font-icon="icon-drag-vertical" class="s16">\n                                            </td>\n                                            <td md-cell>\n                                                <div ng-if="reportField.MetricId && !reportField.custom" ng-click="vm_rf.createOrEditReportField($event, reportField)" class="icon icon-shape-plus s16"></div>\n                                                <div ng-if="!reportField.MetricId && reportField.custom" ng-click="vm_rf.createOrEditReportField($event, reportField)" class="icon icon-pencil-box-outline s16"></div>\n                                                <div ng-if="!reportField.MetricId && !reportField.custom" ng-click="vm_rf.createOrEditReportField($event, reportField)" class="icon icon-view-column s16"></div>\n                                            </td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{reportField.MetricId ? vm_rf.getMetricName(reportField.MetricId) : reportField.field}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{reportField.alias}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{reportField.MetricId ? \'No Available\' : vm_rf.functions[reportField.function].option(reportField.field) || \'No\'}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{reportField.MetricId ? \'No Available\' : vm_rf.formats[reportField.format].option(reportField.field) || \'No\'}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{vm_rf.groupBy[reportField.groupBy].option(reportField.MetricId ? vm_rf.getMetricValue(reportField.MetricId) : reportField.field) || \'No\'}}</td>\n                                            <td md-cell ng-click="vm_rf.createOrEditReportField($event, reportField)">{{vm_rf.orderBy[reportField.orderBy].option(reportField.MetricId ? vm_rf.getMetricValue(reportField.MetricId) : reportField.field) || \'No\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="ANALYTICS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_rf.createOrEditReportField($event, reportField)" translate="ANALYTICS.EDIT_REPORTFIELD">\n                                                                Edit Report\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_rf.deleteConfirm(reportField, $event)" translate="ANALYTICS.DELETE_REPORTFIELD">\n                                                                Delete Report\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="ANALYTICS.CONDITIONS">CONDITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container conditions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ReportConditionsController as vm_rc" ng-init="vm_rc.init(vm.report)">\n                            <div class="pb-16" layout="row" layout-align="start center">\n                                <div class="h2 secondary-text" translate="ANALYTICS.CONDITION">CONDITION</div>\n                            </div>\n                            <form name="conditionsForm" novalidate>\n                                <div ng-if="vm_rc.report.condition.group" ng-include="\'app/main/apps/analytics/views/reports/edit/condition/group.html\'" ng-init="group=vm_rc.report.condition.group"></div>\n                            </form>\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab md-on-select="vm.previewReport()">\n                <md-tab-label>\n                    <span translate="ANALYTICS.PREVIEW">PREVIEW</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container result md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div ng-if="vm.error" class="h2 secondary-text" translate="ANALYTICS.ERROR">ERROR</div>\n                            <div ng-if="!vm.error" class="h2 secondary-text" translate="ANALYTICS.LIMITED_RESULT">LIMITED RESULT</div>\n                        </div>\n                        <dl ng-if="vm.error">\n                            <dt class="text-bold" translate="ANALYTICS.QUERY_ERROR">Query Error</dt>\n                            <dd>{{vm.error.sql}}</dd>\n                            <dt translate="ANALYTICS.MESSAGE">Message</dt>\n                            <dd>{{vm.error.msg}}</dd>\n                        </dl>\n                        <md-table-container ng-if="!vm.error">\n                            <table md-table>\n                                <thead md-head>\n                                    <tr md-row>\n                                        <th ng-repeat="column in vm.columns">{{column.alias || column.field}}</th>\n                                    </tr>\n                                </thead>\n                                <tbody md-body>\n                                    <tr md-row ng-repeat="row in vm.rows">\n                                        <td md-cell ng-repeat="(key, value) in row">{{value}}</td>\n                                    </tr>\n                                    <tr md-row ng-if="!vm.rows.length">\n                                        <td md-cell colspan="{{vm.columns.length}}"><span translate="ANALYTICS.NO_DATA">NO DATA</span></td>\n                                    </tr>\n                                </tbody>\n                            </table>\n                        </md-table-container>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab md-on-select="vm.queryReport()">\n                <md-tab-label>\n                    <span>Query</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="report-detail-form-container result md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div ng-if="vm.error" class="h2 secondary-text" translate="ANALYTICS.ERROR">ERROR</div>\n                            <div ng-if="!vm.error" class="h2 secondary-text">SQL</div>\n                        </div>\n                        <dl ng-if="vm.error">\n                            <dt class="text-bold" translate="ANALYTICS.QUERY_ERROR">Query Error</dt>\n                            <dd>{{vm.error.sql}}</dd>\n                            <dt translate="ANALYTICS.MESSAGE">Message</dt>\n                            <dd>{{vm.error.msg}}</dd>\n                        </dl>\n                        <div ng-if="!vm.error">\n                            {{vm.queryResult}}\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/analytics/views/reports/preview/dialog.html",'<md-dialog aria-label="Run Report">\n    <form name="reportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="ANALYTICS.PREVIEW_REPORT">Preview Report</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div class="md-block">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div ng-if="vm.error" class="h2 secondary-text" translate="ANALYTICS.ERROR">ERROR</div>\n                    <div ng-if="!vm.error" class="h2 secondary-text" translate="ANALYTICS.LIMITED_RESULT">LIMITED RESULT</div>\n                </div>\n                <dl ng-if="vm.error">\n                    <dt class="text-bold" translate="ANALYTICS.QUERY_ERROR">Query Error</dt>\n                    <dd>{{vm.error.sql}}</dd>\n                    <dt translate="ANALYTICS.MESSAGE">Message</dt>\n                    <dd>{{vm.error.msg}}</dd>\n                </dl>\n                <md-table-container ng-if="!vm.error">\n                    <table md-table>\n                        <thead md-head>\n                            <tr md-row>\n                                <th md-column ng-repeat="column in vm.columns">{{column.alias || column.field}}</th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-repeat="row in vm.rows">\n                                <td md-cell ng-repeat="(key, value) in row">{{value}}</td>\n                            </tr>\n                            <tr md-row ng-if="!vm.rows.length">\n                                <td md-cell colspan="{{vm.columns.length}}"><span translate="ANALYTICS.NO_DATA">NO DATA</span></td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div flex></div>\n            <md-button type="submit" ng-click="vm.closeDialog()" class="md-raised" aria-label="CLOSE" translate="ANALYTICS.CLOSE" translate-attr-aria-label="ANALYTICS.CLOSE">\n                CLOSE\n            </md-button>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/analytics/views/reports/reports.html",'<div id="reports" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-chart-line" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="ANALYTICS.REPORTS">Reports</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedReports.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedReports =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="ANALYTICS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-reports-count">\n                    <span>{{vm.selectedReports.length}}</span>\n                <span translate="ANALYTICS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="ANALYTICS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllReports()" translate="ANALYTICS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectReports()" translate="ANALYTICS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedReports" filename="reports.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedReports($event)" aria-label="delete selected" translate translate-attr-label="ANALYTICS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div layout="column" flex="30">\n            <md-card class="padding-top-5 padding-horizontal-10 padding-bottom-0">\n                \x3c!-- SEARCH --\x3e\n                <div layout="row" layout-align="start center">\n                    <label for="searchFolder" class="m-0">\n                        <md-icon md-font-icon="icon-magnify"></md-icon>\n                    </label>\n                    <md-input-container md-no-float class="margin-horizontal-0 margin-bottom-0 margin-top-10" flex>\n                        <input id="searchFolder" placeholder="Search folder" type="text" ng-model="vm.search" translate translate-attr-placeholder="ANALYTICS.SEARCH_FOR_FOLDER">\n                    </md-input-container>\n                </div>\n                \x3c!-- / SEARCH --\x3e\n            </md-card>\n            <md-card class="padding-10 scrollable" ms-scroll>\n                <div js-tree="vm.treeDefaultConfig" tree-events-obj="vm.treeDefaultEvents" ng-model="vm.treeDefaultData" tree="vm.treeDefaultInstance"></div>\n            </md-card>\n            <md-card class="padding-10 scrollable" ms-scroll>\n                <div js-tree="vm.treeCustomConfig" tree-events-obj="vm.treeCustomEvents" ng-model="vm.treeCustomData" tree="vm.treeCustomInstance"></div>\n            </md-card>\n        </div>\n        <md-card flex="70">\n            <md-toolbar class="md-table-toolbar md-default">\n                <div class="md-toolbar-tools">\n                    <span class="h2 secondary-text">{{vm.currentNode.text}}</span>\n                    <div flex></div>\n                    <ms-search-bar on-search="vm.query.filter = query" on-collapse="vm.query.filter = undefined" debounce="300"></ms-search-bar>\n                    <div flow-init flow-file-added="vm.importReport($file, $event, $flow)">\n                        <md-button ng-if="vm.currentNode.custom" class="md-icon-button" aria-label="import report" translate translate-attr-label="ANALYTICS.IMPORT_REPORT" flow-btn>\n                            <md-icon md-font-icon="icon-upload"></md-icon>\n                        </md-button>\n                    </div>\n                    <md-button ng-if="vm.currentNode.custom" class="md-icon-button" ng-click="vm.createOrEditReport($event)" aria-label="add report" translate translate-attr-label="ANALYTICS.ADD_REPORT">\n                        <md-icon md-font-icon="icon-plus"></md-icon>\n                    </md-button>\n                </div>\n            </md-toolbar>\n            <md-table-container>\n                <table md-table md-row-select multiple ng-model="vm.selectedReports" md-progress="vm.promise">\n                    <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getReports">\n                        <tr md-row>\n                            <th md-column md-order-by="id" width="10px">{{ \'ANALYTICS.ID\' | translate }}</th>\n                            <th md-column md-order-by="name">{{ \'ANALYTICS.NAME\' | translate }}</th>\n                            <th md-column md-order-by="description">{{ \'ANALYTICS.DESCRIPTION\' | translate }}</th>\n                            <th md-column md-order-by="createdAt">{{ \'ANALYTICS.CREATED_AT\' | translate }}</th>\n                            <th md-column width="10px"></th>\n                        </tr>\n                    </thead>\n                    <tbody md-body>\n                        <tr md-row ng-hide="vm.reports.rows.length">\n                            <td md-cell colspan="5">\n                                <div layout="row" layout-align="center center">\n                                    <span tranlsate="ANALYTICS.NO_AVAILABLE_INFO">No Available Info</span>\n                                </div>\n                            </td>\n                        </tr>\n                        <tr md-row md-select="report" md-select-id="id" ng-repeat="report in vm.reports.rows">\n                            <td ng-click="vm.createOrEditReport($event, report)" md-cell class="id">{{report.id}}</td>\n                            <td ng-click="vm.createOrEditReport($event, report)" md-cell class="name">{{report.name}}</td>\n                            <td ng-click="vm.createOrEditReport($event, report)" md-cell class="description">{{report.description}}</td>\n                            <td ng-click="vm.createOrEditReport($event, report)" md-cell class="createdAt">{{report.createdAt | date:\'medium\'}}</td>\n                            <td md-cell class="actions">\n                                <md-menu>\n                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="ANALYTICS.MORE">\n                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                    </md-button>\n\n                                    <md-menu-content width="3">\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.copydialog(report, $event)" translate="ANALYTICS.COPY_REPORT">\n                                                Copy Report\n                                            </md-button>\n                                        </md-menu-item>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.previewdialog(report, $event)" translate="ANALYTICS.PREVIEW_REPORT">\n                                                Preview Report\n                                            </md-button>\n                                        </md-menu-item>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.rundialog(report, $event)" translate="ANALYTICS.RUN_REPORT">\n                                                Run Report\n                                            </md-button>\n                                        </md-menu-item>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.downloadfile(report, $event)" translate="ANALYTICS.DOWNLOAD_JSON_REPORT">\n                                                Download Json Report\n                                            </md-button>\n                                        </md-menu-item>\n                                        <md-menu-divider ng-if="vm.currentNode.custom"></md-menu-divider>\n                                        <md-menu-item ng-if="vm.currentNode.custom">\n                                            <md-button ng-click="vm.editstate(report, $event)" translate="ANALYTICS.EDIT_REPORT">\n                                                Edit Report\n                                            </md-button>\n                                        </md-menu-item>\n\n                                        <md-menu-item ng-if="vm.currentNode.custom">\n                                            <md-button ng-click="vm.deleteconfirm(report, $event)" translate="ANALYTICS.DELETE_REPORT">\n                                                Delete Report\n                                            </md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </td>\n                        </tr>\n                    </tbody>\n                </table>\n            </md-table-container>\n\n            <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.reports.count}}" md-on-paginate="vm.getReports" md-page-select></md-table-pagination>\n        </md-card>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/main/apps/analytics/views/reports/run/dialog.html",'<md-dialog class="report-dialog" aria-label="Run Report">\n    <form name="reportForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="ANALYTICS.RUN_REPORT">Run Report</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.NAME">Name</label>\n                <input name="name" ng-model="vm.export.name" required md-autofocus>\n                <div ng-messages="reportForm.name.$error" ng-show="reportForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="ANALYTICS.FORMAT">FORMAT</label>\n                <md-select name="format" ng-model="vm.export.output" required>\n                    <md-option value="csv">CSV</md-option>\n                    <md-option value="xls">Excel (XLS)</md-option>\n                    <md-option value="pdf">PDF</md-option>\n                </md-select>\n                <div ng-messages="reportForm.format.$error" ng-show="reportForm.format.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="ANALYTICS.ERRORS.FORMAT_REQUIRED">Format field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div layout="row">\n                <div class="md-block" flex>\n                    <mdp-date-picker mdp-open-on-click required name="dateRangeFrom" mdp-placeholder="Date Range From" mdp-format="YYYY-MM-DD" mdp-max-date="vm.dateRangeTo" ng-model="vm.export.startDate">\n                        <div ng-messages="reportForm.dateRangeFrom.$error" ng-show="reportForm.dateRangeFrom.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_FROM_REQUIRED">Date Range From field is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_FROM_INVALID">Date Range From field is invalid</span>\n                            </div>\n                            <div ng-message="maxDate">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_FROM_MAX_INVALID">Date Range From Max field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-date-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-date-picker mdp-open-on-click required name="dateRangeTo" mdp-placeholder="Date Range To" mdp-format="YYYY-MM-DD" mdp-min-date="vm.dateRangeFrom" ng-model="vm.export.endDate">\n                        <div ng-messages="reportForm.dateRangeTo.$error" ng-show="reportForm.dateRangeTo.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_TO_REQUIRED">Date Range From field is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_TO_INVALID">Date Range From field is invalid</span>\n                            </div>\n                            <div ng-message="minDate">\n                                <span translate="ANALYTICS.ERRORS.DATE_RANGE_FROM_MIN_INVALID">Date Range From Min field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-date-picker>\n                </div>\n            </div>\n            <div layout="row">\n                <div class="md-block" flex>\n                    <mdp-time-picker required name="timeRangeFrom" mdp-placeholder="Time Range From" mdp-format="HH:mm:ss" mdp-auto-switch="true" mdp-max-date="vm.dateRangeTo" ng-model="vm.export.startDate">\n                        <div ng-messages="reportForm.timeRangeFrom.$error" ng-show="reportForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="ANALYTICS.ERRORS.TIME_RANGE_FROM_REQUIRED">Time Range From field is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="ANALYTICS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker required name="timeRangeTo" mdp-placeholder="Time Range To" mdp-format="HH:mm:ss" mdp-auto-switch="true" mdp-min-date="vm.dateRangeFrom" ng-model="vm.export.endDate">\n                        <div ng-messages="reportForm.timeRangeTo.$error" ng-show="reportForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="ANALYTICS.ERRORS.TIME_RANGE_TO_REQUIRED">Time Range From field is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="ANALYTICS.ERRORS.TIME_RANGE_TO_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.runReport()" class="send-button md-accent md-raised" ng-disabled="reportForm.$invalid" aria-label="RUN" translate="ANALYTICS.RUN_REPORT" translate-attr-aria-label="ANALYTICS.RUN_REPORT">\n                    RUN REPORT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-click="vm.refreshDate()" aria-label="REFRESH" translate translate-attr-aria-label="ANALYTICS.REFRESH">\n                    <md-icon md-font-icon="icon-refresh"></md-icon>\n                    <md-tooltip><span translate="ANALYTICS.REFRESH">REFRESH</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/odbcs/create/dialog.html",'<md-dialog class="odbc-dialog" aria-label="New Odbc">\n    <form name="odbcForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.odbc.name" required autofocus>\n                <div ng-messages="odbcForm.name.$error" ng-show="odbcForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.DSN">DSN</label>\n                <input type="text" name="dsn" ng-model="vm.odbc.dsn" required>\n                <div class="hint"><span translate="CALLYSQUARE.HELP.DSN"></span></div>\n                <div ng-messages="odbcForm.dsn.$error" ng-show="odbcForm.dsn.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.DSN_REQUIRED">DSN field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.odbc.description">\n                <div ng-messages="odbcForm.description.$error" ng-show="odbcForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOdbc" ng-click="vm.saveOdbc()" class="send-button md-accent md-raised" ng-disabled="odbcForm.$invalid || odbcForm.$pristine" aria-label="SAVE" translate="CALLYSQUARE.SAVE" translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOdbc" ng-click="vm.addNewOdbc()" class="send-button md-accent md-raised" ng-disabled="odbcForm.$invalid" aria-label="ADD" translate="CALLYSQUARE.ADD_ODBC" translate-attr-aria-label="CALLYSQUARE.ADD_ODBC">\n                    ADD ODBC\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOdbc" ng-click="vm.deleteOdbc($event)" aria-label="DELETE" translate translate-attr-aria-label="CALLYSQUARE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CALLYSQUARE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/odbcs/odbcs.html",'<div id="odbcs" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-sitemap" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CALLYSQUARE.ODBC">ODBC</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CALLYSQUARE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedODBC.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedODBC =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CALLYSQUARE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-odbcs-count">\n                    <span>{{vm.selectedODBC.length}}</span>\n                <span translate="CALLYSQUARE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="ODBC.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllODBC()" translate="CALLYSQUARE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectODBC()" translate="CALLYSQUARE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedODBC" filename="odbcs.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedODBC($event)" aria-label="delete selected" translate translate-attr-label="ODBC.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- ODBC TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedODBC" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getODBC">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CALLYSQUARE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CALLYSQUARE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="dsn">{{ \'CALLYSQUARE.DSN\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CALLYSQUARE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.odbcs.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CALLYSQUARE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="odbc" md-select-id="id" ng-repeat="odbc in vm.odbcs.rows">\n                                <td md-cell ng-if="odbc.userpic"><img class="avatar" alt="{{odbc.name}}" ng-src="api/users/{{odbc.id}}/avatar" /></td>\n                                <td md-cell ng-if="!odbc.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{odbc.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditOdbc($event, odbc)" md-cell class="id ">{{odbc.id}}</td>\n                                <td ng-click="vm.createOrEditOdbc($event, odbc)" md-cell class="name ">{{odbc.name}}</td>\n                                <td ng-click="vm.createOrEditOdbc($event, odbc)" md-cell class="dsn ">{{odbc.dsn}}</td>\n                                <td ng-click="vm.createOrEditOdbc($event, odbc)" md-cell class="description ">{{odbc.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CALLYSQUARE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(odbc, $event)" translate="CALLYSQUARE.EDIT_ODBC">\n                                                    Edit Odbc\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(odbc, $event)" translate="CALLYSQUARE.DELETE_ODBC">\n                                                    Delete Odbc\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.testtestOdbc(odbc, $event)" translate="CALLYSQUARE.TEST_ODBC">\n                                                    Test Odbc\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.odbcs.count}}" md-on-paginate="vm.getODBC" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / ODBC TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD ODBC BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-odbc-button" ng-click="vm.createOrEditOdbc($event)" aria-label="add odbc" translate translate-attr-aria-label="CALLYSQUARE.ADD_ODBC">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD ODBC BUTTON --\x3e\n</div>'),e.put("app/main/apps/callysquare/views/projects/create/dialog.html",'<md-dialog class="project-dialog" aria-label="New Project">\n    <form name="projectForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{vm.title | translate}}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.NAME">Name</label>\n                <input name="name" ng-model="vm.project.name" required md-autofocus ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" ng-disabled="!vm.newProject">\n                <div ng-messages="projectForm.name.$error" ng-show="projectForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="VOICE.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.DESCRIPTION">Description</label>\n                <input name="description" ng-model="vm.project.description">\n                <div ng-messages="projectForm.description.$error" ng-show="projectForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.openFromEditor" class="md-block">\n                \x3c!-- Added to check if I\'m opening the dialog directly from the square editor --\x3e\n                <md-switch ng-model="vm.newWindow" aria-label="{{\'CALLYSQUARE.OPEN_NEW_WINDOW\' | translate }}"><span translate="CALLYSQUARE.OPEN_NEW_WINDOW"></span></md-switch>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newProject" ng-click="vm.saveProject()" class="send-button md-accent md-raised" ng-disabled="projectForm.$invalid || projectForm.$pristine" aria-label="SAVE" translate="CALLYSQUARE.SAVE" translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newProject" ng-click="vm.addNewProject()" class="send-button md-accent md-raised" ng-disabled="projectForm.$invalid || projectForm.$pristine" aria-label="ADD" translate="CALLYSQUARE.ADD_PROJECT" translate-attr-aria-label="CALLYSQUARE.ADD_PROJECT">\n                    ADD PROJECT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newProject" ng-click="vm.deleteProject($event)" aria-label="DELETE" translate translate-attr-aria-label="CALLYSQUARE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CALLYSQUARE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/dialog/dialog.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="dialogForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.EDIT"></span> <span translate="CALLYSQUARE.{{vm.cellName | uppercase}}"></span></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <md-input-container class="md-block" ng-repeat="attribute in vm.attributes" ng-switch="attribute.name">\n                <label translate="CALLYSQUARE.{{attribute.name | uppercase}}">{{attribute.name  | ucfirst }}</label>\n\n                \x3c!--  START SELECT INPUT --\x3e\n                <md-select name="{{attribute.name}}" ng-model="attribute.value" ng-switch-when-separator="|" ng-switch-when="answer|trunk_name|trunk_id|queue_id|file_id|variable_id|google_tts_language|ispeech_tts_language|ispeech_asr_language|hiddendigitspos|odbc_id|project_id|beep|account_id|interval_id|template_id|list_id"\n                    ng-required="attribute.required">\n                    <md-option ng-if="attribute.defaultValue" ng-value="\'\'"> - None - </md-option>\n                    <md-option value="{{v.value}}" ng-repeat="v in vm.values[attribute.name]">{{v.option}}</md-option>\n                    <md-option ng-if="!vm.values[attribute.name].length" value="-1">No {{attribute.name}} available!</md-option>\n                </md-select>\n                \x3c!--  END SELECT INPUT --\x3e\n\n                \x3c!--  START SELECT INPUT --\x3e\n                <md-select name="{{attribute.name}}" ng-model="attribute.value" ng-switch-when-separator="|" ng-switch-when="sip_id" ng-required="attribute.required">\n                    <md-optgroup label="{{\'CALLYSQUARE.AGENTS\' | translate}}">\n                        <md-option value="{{v.value}}" ng-repeat="v in vm.values[attribute.name]" ng-if="v.group === \'agent\'">{{v.option}}</md-option>\n                    </md-optgroup>\n                    <md-optgroup label="{{\'CALLYSQUARE.TELEPHONES\' | translate}}">\n                        <md-option value="{{v.value}}" ng-repeat="v in vm.values[attribute.name]" ng-if="v.group === \'telephone\'">{{v.option}}</md-option>\n                    </md-optgroup>\n                    <md-optgroup label="{{\'CALLYSQUARE.USERS\' | translate}}">\n                        <md-option value="{{v.value}}" ng-repeat="v in vm.values[attribute.name]" ng-if="v.group === \'admin\' || v.group === \'user\'">{{v.option}}</md-option>\n                    </md-optgroup>\n                    <md-option ng-if="!vm.values[attribute.name].length" value="-1">No {{attribute.name}} available!</md-option>\n                </md-select>\n                \x3c!--  END SELECT INPUT --\x3e\n\n                \x3c!--  START NUMBER INPUT --\x3e\n                <div ng-switch-when="timeout">\n                    <div ng-switch="vm.cellName">\n                        <input ng-switch-when-separator="|" ng-switch-when="answer|ext_dial|dial|queue" type="number" step="any" name="{{attribute.name}}" min="0" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                        <input ng-switch-when-separator="|" ng-switch-when="record|ispeechasr" type="number" step="any" name="{{attribute.name}}" min="-1" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                        <input ng-switch-default type="number" step="any" name="{{attribute.name}}" min="0" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                    </div>\n                </div>\n                <input ng-switch-when-separator="|" ng-switch-when="speed" type="number" step="any" name="{{attribute.name}}" min="-10" max="-10" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                <input ng-switch-when-separator="|" ng-switch-when="maxdigit|mindigit|digit" type="number" step="any" name="{{attribute.name}}" min="1" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                <input ng-switch-when-separator="|" ng-switch-when="retry|response|hiddendigitsnum|priority|delay" type="number" step="any" name="{{attribute.name}}" min="1" ng-model="attribute.value" ng-required="attribute.required" string-to-number>\n                \x3c!--  END NUMBER INPUT --\x3e\n\n                \x3c!--  START TEXTAREA INPUT --\x3e\n                <textarea name="{{attribute.name}}" ng-model="attribute.value" ng-switch-when-separator="|" ng-switch-when="query|sms_text|condition" ng-required="attribute.required"></textarea>\n                \x3c!--  END TEXTAREA INPUT --\x3e\n\n                \x3c!--  START TEXT INPUT --\x3e\n                <input ng-switch-default name="{{attribute.name}}" ng-model="attribute.value" ng-required="attribute.required">\n                \x3c!--  END TEXT INPUT--\x3e\n\n                <div class="hint" ng-switch="attribute.name">\n                    <span ng-switch-when-separator="|" ng-switch-when="mailbox" translate="CALLYSQUARE.HELP.{{attribute.name | uppercase}}"></span>\n                </div>\n                <div ng-messages="dialogForm[attribute.name].$error" ng-show="dialogForm[attribute.name].$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.FIELD_REQUIRED">The field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.closeDialog(true)" class="send-button md-accent md-raised" ng-disabled="dialogForm.$invalid || dialogForm.$pristine" aria-label="SAVE" translate="CALLYSQUARE.SAVE" translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/edit/edit.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="editForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.EDIT_XML"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label>XML</label>\n                <textarea name="preproduction" ng-model="vm.project.preproduction"></textarea>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.closeDialog(true)" class="send-button md-accent md-raised" ng-disabled="editForm.$invalid" aria-label="SAVE" translate="CALLYSQUARE.SAVE" translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/import/import.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="importForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.IMPORT_XML"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div id="xml-uploader" flow-init="vm.ngFlowOptions" flow-name="vm.ngFlow.flow" flow-file-added="vm.fileAdded($file)" flow-drop flow-drag-enter="vm.dropping=true" flow-drag-leave="vm.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                <div class="drop-text hint-text" layout="row" layout-align="center center">\n                    <span translate="CALLYSQUARE.DROP_TO_UPLOAD">Drop to upload</span>\n                </div>\n\n                <div class="upload-button" layout="column" layout-align="center center">\n                    <md-button class="md-accent md-raised" flow-btn>\n                        Upload\n                    </md-button>\n                    <span class="secondary-text mt-8" translate="CALLYSQUARE.DROP_TO_UPLOAD_MESSAGE">You can also drop files here to upload. Only XML - Max. 5MB</span>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.closeDialog()" class="send-button md-accent md-raised" ng-disabled="importForm.$invalid" aria-label="CLOSE" translate="CALLYSQUARE.CLOSE" translate-attr-aria-label="CALLYSQUARE.CLOSE">\n                    CLOSE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/info/info.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="descriptionFrom" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.UPDATE_INFO"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.DESCRIPTION">Description</label>\n                <input name="description" ng-model="vm.project.description" md-autofocus>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.NOTES">Description</label>\n                <textarea name="notes" ng-model="vm.project.notes"></textarea>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.save()" class="send-button md-accent md-raised" ng-disabled="descriptionFrom.$invalid" aria-label="SAVE" translate="CALLYSQUARE.UPDATE_INFO" translate-attr-aria-label="CALLYSQUARE.UPDATE">\n                    UPDATE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/open/open.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="openForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.OPEN_PROJECT"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.PROJECT">Project</label>\n                <md-select name="id" ng-model="vm.id" required>\n                    <md-option value="{{p.id}}" ng-repeat="p in vm.projects">{{p.name}}</md-option>\n                </md-select>\n                <div ng-messages="openForm.id.$error" ng-show="openForm.id.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.PROJECT_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.newWindow" aria-label="{{\'CALLYSQUARE.OPEN_NEW_WINDOW\' | translate }}"><span translate="CALLYSQUARE.OPEN_NEW_WINDOW"></span></md-switch>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.closeDialog(true)" class="send-button md-accent md-raised" ng-disabled="openForm.$invalid" aria-label="SAVE" translate="CALLYSQUARE.OPEN_PROJECT" translate-attr-aria-label="CALLYSQUARE.OPEN">\n                    OPEN\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/saveAs/saveAs.html",'<md-dialog class="project-dialog" aria-label="New dialog">\n    <form name="newForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title"><span translate="CALLYSQUARE.COPY_PROJECT"></span></span>\n                </span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CALLYSQUARE.NAME">Name</label>\n                <input name="name" ng-model="vm.project.name" required md-autofocus>\n                <div ng-messages="newForm.name.$error" ng-show="newForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CALLYSQUARE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.newWindow" aria-label="{{\'CALLYSQUARE.OPEN_NEW_WINDOW\' | translate }}"><span translate="CALLYSQUARE.OPEN_NEW_WINDOW"></span></md-switch>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.save()" class="send-button md-accent md-raised" ng-disabled="newForm.$invalid" aria-label="SAVE" translate="CALLYSQUARE.COPY_PROJECT" translate-attr-aria-label="CALLYSQUARE.COPY">\n                    COPY\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/projects/edit/view.html",'<div id="callysquare-project" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-projects-button md-icon-button" aria-label="Go to projects" ng-click="vm.gotoProjects()" translate translate-attr-aria-label="CALLYSQUARE.GO_TO_PROJECTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div class="project-image" hide-xs>\n                    <img ng-src="assets/images/business/projects.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.project.id}} {{vm.project.name}}\n                    </div>\n                    <div class="subtitle secondary-text text-truncate">\n                        <span ng-if="vm.project.description">{{vm.project.description}}  - </span><span translate="CALLYSQUARE.CREATED_AT"></span> <span>{{vm.project.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.updateInfo($event)" class="md-fab md-yellow-700-bg md-icon-button" aria-label="edit">\n                <md-icon md-font-icon="icon-tooltip-edit"></md-icon>\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <md-content class="callysquare-content">\n\n        <div id="geEditor" class="geEditor"></div>\n\n    </md-content>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/callysquare/views/projects/projects.html",'<div id="projects" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-vector-square" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CALLYSQUARE.PROJECTS">Projects</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" translate translate-attr-placeholder="CALLYSQUARE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedProjects.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedProjects =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CALLYSQUARE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-projects-count">\n                    <span>{{vm.selectedProjects.length}}</span>\n                <span translate="CALLYSQUARE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CALLYSQUARE.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllProjects()" translate="CALLYSQUARE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectProjects()" translate="CALLYSQUARE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedProjects" filename="projects.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedProjects($event)" aria-label="delete selected" translate translate-attr-label="CALLYSQUARE.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- PROJECT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedProjects" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getProjects">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CALLYSQUARE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CALLYSQUARE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CALLYSQUARE.DESCRIPTION\' | translate }}</th>\n                                <th md-column md-order-by="notes">{{ \'CALLYSQUARE.NOTES\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.projects.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CALLYSQUARE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="project" md-select-id="id" ng-repeat="project in vm.projects.rows">\n                                <td md-cell ng-if="project.userpic"><img class="avatar" alt="{{project.name}}" ng-src="api/users/{{project.id}}/avatar" /></td>\n                                <td md-cell ng-if="!project.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{project.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditProject($event, project)" md-cell class="id ">{{project.id}}</td>\n                                <td ng-click="vm.createOrEditProject($event, project)" md-cell class="name ">{{project.name}}</td>\n                                <td ng-click="vm.createOrEditProject($event, project)" md-cell class="description ">{{project.description}}</td>\n                                <td ng-click="vm.createOrEditProject($event, project)" md-cell class="notes ">{{project.notes}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CALLYSQUARE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(project, ev)" translate="CALLYSQUARE.EDIT_PROJECT">\n                                                    Edit Project\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(project, ev)" translate="CALLYSQUARE.DELETE_PROJECT">\n                                                    Delete Project\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.projects.count}}" md-on-paginate="vm.getProjects" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / PROJECT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD PROJECT BUTTON --\x3e\n    <md-button class="md-fab md-accent md-icon-button" id="add-project-button" ng-click="vm.createOrEditProject($event)" aria-label="add project" translate translate-attr-aria-label="CALLYSQUARE.ADD_PROJECT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD PROJECT BUTTON --\x3e\n\n</div>'),e.put("app/main/apps/callysquare/views/squareRecordings/create/dialog.html",'<md-dialog class="squareRecording-dialog" aria-label="New SquareRecording">\n    <form name="squareRecordingForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSquareRecording" ng-click="vm.saveSquareRecording()" class="send-button md-accent md-raised" ng-disabled="squareRecordingForm.$invalid || squareRecordingForm.$pristine" aria-label="SAVE" translate="CALLYSQUARE.SAVE"\n                    translate-attr-aria-label="CALLYSQUARE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSquareRecording" ng-click="vm.addNewSquareRecording()" class="send-button md-accent md-raised" ng-disabled="squareRecordingForm.$invalid" aria-label="ADD" translate="CALLYSQUARE.ADD_SQUARERECORDING" translate-attr-aria-label="CALLYSQUARE.ADD_SQUARERECORDING">\n                    ADD SQUARERECORDING\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSquareRecording" ng-click="vm.deleteSquareRecording($event)" aria-label="DELETE" translate translate-attr-aria-label="CALLYSQUARE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CALLYSQUARE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/callysquare/views/squareRecordings/squareRecordings.html",'<div id="squareRecordings" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-sitemap" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CALLYSQUARE.SQUARERECORDINGS">SquareRecordings</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CALLYSQUARE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSquareRecordings.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSquareRecordings =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CALLYSQUARE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-squareRecordings-count">\n                    <span>{{vm.selectedSquareRecordings.length}}</span>\n                <span translate="CALLYSQUARE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SQUARERECORDINGS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSquareRecordings()" translate="CALLYSQUARE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSquareRecordings()" translate="CALLYSQUARE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSquareRecordings" filename="squareRecordings.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSquareRecordings($event)" aria-label="delete selected" translate translate-attr-label="SQUARERECORDINGS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SQUARERECORDING TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSquareRecordings" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSquareRecordings">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="projectName">{{ \'CALLYSQUARE.PROJECT\' | translate }}</th>\n                                <th md-column md-order-by="uniqueid">{{ \'CALLYSQUARE.UNIQUEID\' | translate }}</th>\n                                <th md-column md-order-by="callerid">{{ \'CALLYSQUARE.PHONE\' | translate }}</th>\n                                <th md-column md-order-by="extension">{{ \'CALLYSQUARE.EXTEN\' | translate }}</th>\n                                <th md-column md-order-by="audio">{{ \'CALLYSQUARE.AUDIO\' | translate }}</th>\n                                <th md-column md-order-by="createdAt">{{ \'CALLYSQUARE.CREATED_AT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.squareRecordings.rows.length">\n                                <td md-cell colspan="7">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CALLYSQUARE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="squareRecording" md-select-id="id" ng-repeat="squareRecording in vm.squareRecordings.rows">\n                                <td md-cell ng-if="squareRecording.userpic"><img class="avatar" alt="{{squareRecording.name}}" ng-src="api/users/{{squareRecording.id}}/avatar" /></td>\n                                <td md-cell ng-if="!squareRecording.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{squareRecording.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="projectName ">{{squareRecording.projectName}}</td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="uniqueid ">{{squareRecording.uniqueid}}</td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="callerid ">{{squareRecording.callerid}}</td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="extension ">{{squareRecording.extension}}</td>\n                                <td md-cell class="audio "><audio controls><source ng-src="{{\'api/square/recordings/\' + squareRecording.id + \'/download\'}}" type="audio/wav" preload="none"></source>Your browser does not support the audio element.</audio></td>\n                                <td ng-click="vm.createOrEditSquareRecording($event, squareRecording)" md-cell class="createdAt ">{{squareRecording.createdAt}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CALLYSQUARE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.downloadfile(squareRecording, $event)" translate="CALLYSQUARE.DOWNLOAD_SQUARERECORDING">\n                                                    Download SquareRecording\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(squareRecording, $event)" translate="CALLYSQUARE.DELETE_SQUARERECORDING">\n                                                    Delete SquareRecording\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.squareRecordings.count}}" md-on-paginate="vm.getSquareRecordings" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SQUARERECORDING TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/main/apps/chat/views/chatQueues/chatQueues.html",'<div id="chatQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-hangouts" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CHAT.CHATQUEUES">ChatQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CHAT.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedChatQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedChatQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CHAT.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-chatQueues-count">\n                    <span>{{vm.selectedChatQueues.length}}</span>\n                <span translate="CHAT.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CHATQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllChatQueues()" translate="CHAT.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectChatQueues()" translate="CHAT.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedChatQueues" filename="chatQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedChatQueues($event)" aria-label="delete selected" translate translate-attr-label="CHATQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CHATQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedChatQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getChatQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CHAT.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CHAT.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'CHAT.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.chatQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CHAT.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="chatQueue" md-select-id="id" ng-repeat="chatQueue in vm.chatQueues.rows">\n                                <td md-cell ng-if="chatQueue.userpic"><img class="avatar" alt="{{chatQueue.name}}" ng-src="api/users/{{chatQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!chatQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{chatQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditChatQueue($event, chatQueue)" md-cell class="id ">{{chatQueue.id}}</td>\n                                <td ng-click="vm.createOrEditChatQueue($event, chatQueue)" md-cell class="name ">{{chatQueue.name}}</td>\n                                <td ng-click="vm.createOrEditChatQueue($event, chatQueue)" md-cell class="strategy ">{{ vm.arraystrategy[chatQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CHAT.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(chatQueue, $event)" translate="CHAT.EDIT_CHATQUEUE">\n                                                    Edit ChatQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(chatQueue, $event)" translate="CHAT.DELETE_CHATQUEUE">\n                                                    Delete ChatQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.chatQueues.count}}" md-on-paginate="vm.getChatQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CHATQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CHATQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-chatQueue-button" ng-click="vm.createOrEditChatQueue($event)" aria-label="add chatQueue" translate translate-attr-aria-label="CHAT.ADD_CHATQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CHATQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/chat/views/chatQueues/create/dialog.html",'<md-dialog class="chatQueue-dialog" aria-label="New ChatQueue">\n    <form name="chatQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CHAT.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.chatQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="chatQueueForm.name.$error" ng-show="chatQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="CHAT.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.chatQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'roundrobun\'">Round Robin Memory</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="chatQueueForm.strategy.$error" ng-show="chatQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.chatQueue.timeout" required>\n                <div ng-messages="chatQueueForm.timeout.$error" ng-show="chatQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.chatQueue.description">\n                <div ng-messages="chatQueueForm.description.$error" ng-show="chatQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newChatQueue" ng-click="vm.saveChatQueue()" class="send-button md-accent md-raised" ng-disabled="chatQueueForm.$invalid || chatQueueForm.$pristine" aria-label="SAVE" translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newChatQueue" ng-click="vm.addNewChatQueue()" class="send-button md-accent md-raised" ng-disabled="chatQueueForm.$invalid" aria-label="ADD" translate="CHAT.ADD_CHATQUEUE" translate-attr-aria-label="CHAT.ADD_CHATQUEUE">\n                    ADD CHATQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newChatQueue" ng-click="vm.deleteChatQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="CHAT.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CHAT.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/chat/views/chatQueues/edit/teamadd/teamadd.html",'<md-dialog class="chatQueue-dialog" aria-label="chatQueue">\n    <form name="chatQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="CHAT.TEAMADD_CHATQUEUE">Add Team in CHATQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="CHAT.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="chatQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/chat/views/chatQueues/edit/view.html",'<div id="chat-chatQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-chatQueues-button md-icon-button" aria-label="Go to chatQueues" ng-click="vm.gotoChatQueues()" translate translate-attr-aria-label="CHAT.GO_TO_CHATQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.chatQueue.userpic" class="chatQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.chatQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.chatQueue.userpic" class="chatQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/chatQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.chatQueue.id}} {{vm.chatQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CHAT.CREATED_AT"></span> <span>{{vm.chatQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.chatQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="CHAT.TEAMADD_CHATQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveChatQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.chatQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="CHAT.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.chatQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'roundrobun\'">Round Robin Memory</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.chatQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.chatQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/chat/views/chatWebsites/chatWebsites.html",'<div id="chatWebsites" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-hangouts" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CHAT.CHATWEBSITES">ChatWebsites</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CHAT.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedChatWebsites.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedChatWebsites =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CHAT.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-chatWebsites-count">\n                    <span>{{vm.selectedChatWebsites.length}}</span>\n                <span translate="CHAT.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CHATWEBSITES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllChatWebsites()" translate="CHAT.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectChatWebsites()" translate="CHAT.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedChatWebsites" filename="chatWebsites.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedChatWebsites($event)" aria-label="delete selected" translate translate-attr-label="CHATWEBSITES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CHATWEBSITE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedChatWebsites" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getChatWebsites">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CHAT.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CHAT.NAME\' | translate }}</th>\n                                <th md-column md-order-by="address">{{ \'CHAT.ADDRESS\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CHAT.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.chatWebsites.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CHAT.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="chatWebsite" md-select-id="id" ng-repeat="chatWebsite in vm.chatWebsites.rows">\n                                <td md-cell ng-if="chatWebsite.userpic"><img class="avatar" alt="{{chatWebsite.name}}" ng-src="api/users/{{chatWebsite.id}}/avatar" /></td>\n                                <td md-cell ng-if="!chatWebsite.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{chatWebsite.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditChatWebsite($event, chatWebsite)" md-cell class="id ">{{chatWebsite.id}}</td>\n                                <td ng-click="vm.createOrEditChatWebsite($event, chatWebsite)" md-cell class="name ">{{chatWebsite.name}}</td>\n                                <td ng-click="vm.createOrEditChatWebsite($event, chatWebsite)" md-cell class="address ">{{chatWebsite.address}}</td>\n                                <td ng-click="vm.createOrEditChatWebsite($event, chatWebsite)" md-cell class="description ">{{chatWebsite.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CHAT.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(chatWebsite, $event)" translate="CHAT.EDIT_CHATWEBSITE">\n                                                    Edit ChatWebsite\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(chatWebsite, $event)" translate="CHAT.DELETE_CHATWEBSITE">\n                                                    Delete ChatWebsite\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.chatWebsites.count}}" md-on-paginate="vm.getChatWebsites" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CHATWEBSITE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CHATWEBSITE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-chatWebsite-button" ng-click="vm.createOrEditChatWebsite($event)" aria-label="add chatWebsite" translate translate-attr-aria-label="CHAT.ADD_CHATWEBSITE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CHATWEBSITE BUTTON --\x3e\n</div>'),e.put("app/main/apps/chat/views/chatWebsites/create/dialog.html",'<md-dialog class="chatWebsite-dialog" aria-label="New ChatWebsite">\n    <form name="chatWebsiteForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CHAT.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.chatWebsite.name" required autofocus>\n                <div ng-messages="chatWebsiteForm.name.$error" ng-show="chatWebsiteForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.ADDRESS">address</label>\n                <input type="url" name="address" ng-model="vm.chatWebsite.address" required>\n                <div ng-messages="chatWebsiteForm.address.$error" ng-show="chatWebsiteForm.address.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.ADDRESS_REQUIRED">address field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="CHAT.ERRORS.ADDRESS_MUST_VALID_URL">address must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.MOTIONADDRESS">MotionAddress</label>\n                <input type="url" name="remote" ng-model="vm.chatWebsite.remote" required>\n                <div class="hint"><span translate="CHAT.HELP.MOTIONADDRESS"></span></div>\n                <div ng-messages="chatWebsiteForm.remote.$error" ng-show="chatWebsiteForm.remote.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.MOTIONADDRESS_REQUIRED">MotionAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="CHAT.ERRORS.MOTIONADDRESS_MUST_VALID_URL">MotionAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CHAT.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.chatWebsite.description">\n                <div ng-messages="chatWebsiteForm.description.$error" ng-show="chatWebsiteForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newChatWebsite" ng-click="vm.saveChatWebsite()" class="send-button md-accent md-raised" ng-disabled="chatWebsiteForm.$invalid || chatWebsiteForm.$pristine" aria-label="SAVE" translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newChatWebsite" ng-click="vm.addNewChatWebsite()" class="send-button md-accent md-raised" ng-disabled="chatWebsiteForm.$invalid" aria-label="ADD" translate="CHAT.ADD_CHATWEBSITE" translate-attr-aria-label="CHAT.ADD_CHATWEBSITE">\n                    ADD CHATWEBSITE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newChatWebsite" ng-click="vm.deleteChatWebsite($event)" aria-label="DELETE" translate translate-attr-aria-label="CHAT.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CHAT.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/chat/views/chatWebsites/edit/chatDispositions/dialog.html",'<md-dialog class="chatDisposition-dialog" aria-label="New ChatDisposition">\n    <form name="chatDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CHAT.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.chatDisposition.name" required autofocus>\n                <div ng-messages="chatDispositionForm.name.$error" ng-show="chatDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newChatDisposition" ng-click="vm.saveChatDisposition()" class="send-button md-accent md-raised" ng-disabled="chatDispositionForm.$invalid || chatDispositionForm.$pristine" aria-label="SAVE" translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newChatDisposition" ng-click="vm.addNewChatDisposition()" class="send-button md-accent md-raised" ng-disabled="chatDispositionForm.$invalid" aria-label="ADD" translate="CHAT.ADD_CHATDISPOSITION" translate-attr-aria-label="CHAT.ADD_CHATDISPOSITION">\n                    ADD CHATDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newChatDisposition" ng-click="vm.deleteChatDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="CHAT.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CHAT.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/chat/views/chatWebsites/edit/view.html",'<div id="chat-chatWebsite" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-chatWebsites-button md-icon-button" aria-label="Go to chatWebsites" ng-click="vm.gotoChatWebsites()" translate translate-attr-aria-label="CHAT.GO_TO_CHATWEBSITES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.chatWebsite.userpic" class="chatWebsite-image" hide-xs>\n                    <img ng-src="api/users/{{vm.chatWebsite.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.chatWebsite.userpic" class="chatWebsite-image" hide-xs>\n                    <img ng-src="assets/images/business/chatWebsites.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.chatWebsite.id}} {{vm.chatWebsite.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CHAT.CREATED_AT"></span> <span>{{vm.chatWebsite.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveChatWebsite()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (embeddingForm.$invalid) || (appearanceForm.$invalid) || (whitelabelForm.$invalid) || (logoForm.$invalid) || (labelsForm.$invalid) || (onlinestateForm.$invalid) || (offlinestateForm.$invalid) || (ratingstateForm.$invalid) || (enquiryForm.$invalid) || (onlineForm.$invalid) || (offlineForm.$invalid) || (proactiveForm.$invalid) || (chatDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid)"\n                translate="CHAT.SAVE" translate-attr-aria-label="CHAT.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.chatWebsite.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ADDRESS">address</label>\n                                <input type="url" name="address" ng-model="vm.chatWebsite.address" required>\n                                <div ng-messages="generalForm.address.$error" ng-show="generalForm.address.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ADDRESS_REQUIRED">address field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.ADDRESS_MUST_VALID_URL">address must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.MOTIONADDRESS">MotionAddress</label>\n                                <input type="url" name="remote" ng-model="vm.chatWebsite.remote" required>\n                                <div class="hint"><span translate="CHAT.HELP.MOTIONADDRESS"></span></div>\n                                <div ng-messages="generalForm.remote.$error" ng-show="generalForm.remote.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.MOTIONADDRESS_REQUIRED">MotionAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.MOTIONADDRESS_MUST_VALID_URL">MotionAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.LIST">List</label>\n                                <md-select ng-model="vm.chatWebsite.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.fidelity" aria-label="Fidelity"><span translate="CHAT.FIDELITY">Fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chatWebsite.fidelity" class="md-block">\n                                <label translate="CHAT.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.chatWebsite.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.chatWebsite.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.EMBEDDING">EMBEDDING</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container embedding md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.EMBEDDING">EMBEDDING</div>\n                        </div>\n                        <form name="embeddingForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.SNIPPET">SNIPPET</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container appearance md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.APPEARANCE">APPEARANCE</div>\n                        </div>\n                        <form name="appearanceForm" novalidate>\n                            <div flex md-color-picker ng-model="vm.chatWebsite.color" label="{{\'CHAT.MAINCOLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                                open-on-input="true"></div>\n                            <div flex md-color-picker ng-model="vm.chatWebsite.color_focus" label="{{\'CHAT.FOCUSCOLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                                open-on-input="true"></div>\n                            <div flex md-color-picker ng-model="vm.chatWebsite.color_button" label="{{\'CHAT.BUTTONCOLOR\' | translate}}" md-color-hex="true" md-color-rgb="false" md-color-hsl="false" md-color-history="false" md-color-material-palette="false" md-color-alpha-channel="false"\n                                open-on-input="true"></div>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.HEADERSHAPE">headershape</label>\n                                <md-select ng-model="vm.chatWebsite.header_shape">\n\n                                    <md-option ng-value="\'rounded\'"> {{ \'CHAT.ROUNDED\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'squared\'"> {{ \'CHAT.SQUARED\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="appearanceForm.header_shape.$error" ng-show="appearanceForm.header_shape.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.HEADERSHAPE_REQUIRED">headershape field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.animation" aria-label="Animation"><span translate="CHAT.ANIMATION">Animation</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.download_transcript" aria-label="downloadTranscript"><span translate="CHAT.DOWNLOADTRANSCRIPT">downloadTranscript</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container whitelabel md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.WHITELABEL">WHITELABEL</div>\n                        </div>\n                        <form name="whitelabelForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.defaultWhiteLabel" aria-label="default"><span translate="CHAT.DEFAULT">default</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chatWebsite.defaultWhiteLabel" class="md-block">\n                                <label translate="CHAT.WHITELABEL">whiteLabel</label>\n                                <textarea ng-model="vm.chatWebsite.whiteLabel" md-maxlength="150" max-rows="5" required></textarea>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container logo md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.LOGO">LOGO</div>\n                        </div>\n                        <form name="logoForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.defaultLogo" aria-label="default"><span translate="CHAT.DEFAULT">default</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container labels md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.LABELS">LABELS</div>\n                        </div>\n                        <form name="labelsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.NAME_TITLE">name_title</label>\n                                <input type="text" name="name_title" ng-model="vm.chatWebsite.name_title" autofocus>\n                                <div ng-messages="labelsForm.name_title.$error" ng-show="labelsForm.name_title.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.NAME_TITLE_REQUIRED">name_title field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.USERNAME_PLACEHOLDER">username_placeholder</label>\n                                <input type="text" name="username_placeholder" ng-model="vm.chatWebsite.username_placeholder">\n                                <div ng-messages="labelsForm.username_placeholder.$error" ng-show="labelsForm.username_placeholder.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.USERNAME_PLACEHOLDER_REQUIRED">username_placeholder field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.EMAIL_TITLE">email_title</label>\n                                <input type="text" name="email_title" ng-model="vm.chatWebsite.email_title">\n                                <div ng-messages="labelsForm.email_title.$error" ng-show="labelsForm.email_title.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.EMAIL_TITLE_REQUIRED">email_title field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.EMAIL_PLACEHOLDER">email_placeholder</label>\n                                <input type="text" name="email_placeholder" ng-model="vm.chatWebsite.email_placeholder">\n                                <div ng-messages="labelsForm.email_placeholder.$error" ng-show="labelsForm.email_placeholder.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.EMAIL_PLACEHOLDER_REQUIRED">email_placeholder field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container onlinestate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ONLINESTATE">ONLINESTATE</div>\n                        </div>\n                        <form name="onlinestateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.HEADER_ONLINE">header_online</label>\n                                <input type="text" name="header_online" ng-model="vm.chatWebsite.header_online" autofocus>\n                                <div ng-messages="onlinestateForm.header_online.$error" ng-show="onlinestateForm.header_online.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.HEADER_ONLINE_REQUIRED">header_online field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ONLINE_MESSAGE">online_message</label>\n                                <input type="text" name="online_message" ng-model="vm.chatWebsite.online_message">\n                                <div ng-messages="onlinestateForm.online_message.$error" ng-show="onlinestateForm.online_message.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ONLINE_MESSAGE_REQUIRED">online_message field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.START_CHAT_BUTTON">start_chat_button</label>\n                                <input type="text" name="start_chat_button" ng-model="vm.chatWebsite.start_chat_button">\n                                <div ng-messages="onlinestateForm.start_chat_button.$error" ng-show="onlinestateForm.start_chat_button.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.START_CHAT_BUTTON_REQUIRED">start_chat_button field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.AGENTS_BUSY">agents_busy</label>\n                                <input type="text" name="agents_busy" ng-model="vm.chatWebsite.agents_busy">\n                                <div ng-messages="onlinestateForm.agents_busy.$error" ng-show="onlinestateForm.agents_busy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.AGENTS_BUSY_REQUIRED">agents_busy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container offlinestate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.OFFLINESTATE">OFFLINESTATE</div>\n                        </div>\n                        <form name="offlinestateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.HEADER_OFFLINE">header_offline</label>\n                                <input type="text" name="header_offline" ng-model="vm.chatWebsite.header_offline" autofocus>\n                                <div ng-messages="offlinestateForm.header_offline.$error" ng-show="offlinestateForm.header_offline.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.HEADER_OFFLINE_REQUIRED">header_offline field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.OFFLINE_MESSAGE">offline_message</label>\n                                <input type="text" name="offline_message" ng-model="vm.chatWebsite.offline_message">\n                                <div ng-messages="offlinestateForm.offline_message.$error" ng-show="offlinestateForm.offline_message.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.OFFLINE_MESSAGE_REQUIRED">offline_message field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.MESSAGE_TITLE">message_title</label>\n                                <input type="text" name="message_title" ng-model="vm.chatWebsite.message_title">\n                                <div ng-messages="offlinestateForm.message_title.$error" ng-show="offlinestateForm.message_title.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.MESSAGE_TITLE_REQUIRED">message_title field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ENQUIRY_MESSAGE_PLACEHOLDER">enquiry_message_placeholder</label>\n                                <input type="text" name="enquiry_message_placeholder" ng-model="vm.chatWebsite.enquiry_message_placeholder">\n                                <div ng-messages="offlinestateForm.enquiry_message_placeholder.$error" ng-show="offlinestateForm.enquiry_message_placeholder.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ENQUIRY_MESSAGE_PLACEHOLDER_REQUIRED">enquiry_message_placeholder field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ENQUIRY_BUTTON">enquiry_button</label>\n                                <input type="text" name="enquiry_button" ng-model="vm.chatWebsite.enquiry_button">\n                                <div ng-messages="offlinestateForm.enquiry_button.$error" ng-show="offlinestateForm.enquiry_button.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ENQUIRY_BUTTON_REQUIRED">enquiry_button field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container ratingstate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.RATINGSTATE">RATINGSTATE</div>\n                        </div>\n                        <form name="ratingstateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.RATING_MESSAGE">rating_message</label>\n                                <input type="text" name="rating_message" ng-model="vm.chatWebsite.rating_message" autofocus>\n                                <div ng-messages="ratingstateForm.rating_message.$error" ng-show="ratingstateForm.rating_message.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.RATING_MESSAGE_REQUIRED">rating_message field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.RATING_SEND">rating_send</label>\n                                <input type="text" name="rating_send" ng-model="vm.chatWebsite.rating_send">\n                                <div ng-messages="ratingstateForm.rating_send.$error" ng-show="ratingstateForm.rating_send.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.RATING_SEND_REQUIRED">rating_send field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.RATING_SKIP">rating_skip</label>\n                                <input type="text" name="rating_skip" ng-model="vm.chatWebsite.rating_skip">\n                                <div ng-messages="ratingstateForm.rating_skip.$error" ng-show="ratingstateForm.rating_skip.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.RATING_SKIP_REQUIRED">rating_skip field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container enquiry md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ENQUIRY">ENQUIRY</div>\n                        </div>\n                        <form name="enquiryForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.enquiry_enable" aria-label="enquiry_enable"><span translate="CHAT.ENQUIRY_ENABLE">enquiry_enable</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chatWebsite.enquiry_forwarding" aria-label="enquiry_forwarding"><span translate="CHAT.ENQUIRY_FORWARDING">enquiry_forwarding</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chatWebsite.enquiry_forwarding" class="md-block">\n                                <label translate="CHAT.ENQUIRY_FORWARDING_ADDRESS">enquiry_forwarding_address</label>\n                                <input type="text" name="enquiry_forwarding_address" ng-model="vm.chatWebsite.enquiry_forwarding_address" required>\n                                <div ng-messages="enquiryForm.enquiry_forwarding_address.$error" ng-show="enquiryForm.enquiry_forwarding_address.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ENQUIRY_FORWARDING_ADDRESS_REQUIRED">enquiry_forwarding_address field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chatWebsite.enquiry_forwarding" class="md-block">\n                                <label translate="CHAT.OFFLINETEMPLATE">OfflineTemplate</label>\n                                <md-select ng-model="vm.chatWebsite.OfflineTemplateId" required>\n                                    <md-option ng-value="OfflineTemplateId.id" ng-repeat="OfflineTemplateId in vm.templates">{{ OfflineTemplateId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="enquiryForm.OfflineTemplateId.$error" ng-show="enquiryForm.OfflineTemplateId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.OFFLINETEMPLATE_REQUIRED">OfflineTemplate field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.FORMS">FORMS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container online md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ONLINE">ONLINE</div>\n                        </div>\n                        <form name="onlineForm" novalidate>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container offline md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.OFFLINE">OFFLINE</div>\n                        </div>\n                        <form name="offlineForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.PROACTIVEACTIONS">PROACTIVEACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container proactive md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.PROACTIVE">PROACTIVE</div>\n                        </div>\n                        <form name="proactiveForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container chatdispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ChatWebsiteChatDispositionsController as vm_dc" ng-init="vm_dc.init(vm.chatWebsite)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedChatWebsiteChatDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CHAT.CHATDISPOSITIONS">ChatDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event)" aria-label="add chatDisposition" translate translate-attr-label="CHAT.ADD_CHATDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedChatWebsiteChatDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedChatWebsiteChatDispositions.length}} {{vm_dc.selectedChatWebsiteChatDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedChatWebsiteChatDispositions($event)" aria-label="delete selected" translate translate-attr-label="CHATWEBSITES.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedChatWebsiteChatDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getChatWebsiteChatDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'CHAT.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'CHAT.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'CHAT.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="chatDisposition" md-select-id="id" ng-repeat="chatDisposition in vm_dc.chatWebsiteChatDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event, chatDisposition)" md-cell>{{chatDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event, chatDisposition)" md-cell>{{chatDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event, chatDisposition)" md-cell>{{chatDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CHAT.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditChatWebsiteChatDisposition($event, chatDisposition)" translate="CHAT.EDIT_CHATDISPOSITION">\n                                                                Edit ChatDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(chatDisposition, $event)" translate="CHAT.DELETE_CHATDISPOSITION">\n                                                                Delete ChatDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.chatWebsiteChatDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="CHAT.NO_CHATDISPOSITION_AVAILABLE">No chatdisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.chatWebsiteChatDispositions.count}}" md-on-paginate="vm_dc.getChatWebsiteChatDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.chatWebsite.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.chatWebsite.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.chatWebsite.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.chatWebsite.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="chatWebsite-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.chatWebsite.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CHAT.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.chatWebsite.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CHAT.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="CHAT.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CHAT.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chatWebsite-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CHAT.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/contactmanager/views/companies/companies.html",'<div id="companies" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-circle" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CONTACTMANAGER.COMPANIES">Companies</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CONTACTMANAGER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedCompanies.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedCompanies =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CONTACTMANAGER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-companies-count">\n                    <span>{{vm.selectedCompanies.length}}</span>\n                <span translate="CONTACTMANAGER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="COMPANIES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllCompanies()" translate="CONTACTMANAGER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectCompanies()" translate="CONTACTMANAGER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedCompanies" filename="companies.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedCompanies($event)" aria-label="delete selected" translate translate-attr-label="COMPANIES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- COMPANY TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedCompanies" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getCompanies">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CONTACTMANAGER.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CONTACTMANAGER.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.companies.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="company" md-select-id="id" ng-repeat="company in vm.companies.rows">\n                                <td md-cell ng-if="company.userpic"><img class="avatar" alt="{{company.name}}" ng-src="api/users/{{company.id}}/avatar" /></td>\n                                <td md-cell ng-if="!company.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{company.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditCompany($event, company)" md-cell class="id ">{{company.id}}</td>\n                                <td ng-click="vm.createOrEditCompany($event, company)" md-cell class="name ">{{company.name}}</td>\n                                <td ng-click="vm.createOrEditCompany($event, company)" md-cell class="description ">{{company.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(company, $event)" translate="CONTACTMANAGER.EDIT_COMPANY">\n                                                    Edit Company\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.gotocontactsgoto(company, $event)" translate="CONTACTMANAGER.GOTOCONTACTS_COMPANY">\n                                                    goToContacts Company\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(company, $event)" translate="CONTACTMANAGER.DELETE_COMPANY">\n                                                    Delete Company\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.companies.count}}" md-on-paginate="vm.getCompanies" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / COMPANY TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD COMPANY BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-company-button" ng-click="vm.createOrEditCompany($event)" aria-label="add company" translate translate-attr-aria-label="CONTACTMANAGER.ADD_COMPANY">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD COMPANY BUTTON --\x3e\n</div>'),e.put("app/main/apps/contactmanager/views/companies/create/dialog.html",'<md-dialog class="company-dialog" aria-label="New Company">\n    <form name="companyForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.company.name" required autofocus>\n                <div ng-messages="companyForm.name.$error" ng-show="companyForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.PHONE">Phone</label>\n                <input type="text" name="phone" ng-model="vm.company.phone">\n                <div ng-messages="companyForm.phone.$error" ng-show="companyForm.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.VAT">Vat</label>\n                <input type="text" name="vat" ng-model="vm.company.vat">\n                <div ng-messages="companyForm.vat.$error" ng-show="companyForm.vat.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.VAT_REQUIRED">Vat field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.FAX">Fax</label>\n                <input type="text" name="fax" ng-model="vm.company.fax">\n                <div ng-messages="companyForm.fax.$error" ng-show="companyForm.fax.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.FAX_REQUIRED">Fax field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.COMPANYID">CompanyId</label>\n                <input type="text" name="companyId" ng-model="vm.company.companyId">\n                <div ng-messages="companyForm.companyId.$error" ng-show="companyForm.companyId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.COMPANYID_REQUIRED">CompanyId field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.TYPE">Type</label>\n                <input type="text" name="type" ng-model="vm.company.type">\n                <div ng-messages="companyForm.type.$error" ng-show="companyForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.WEBSITE">Website</label>\n                <input type="text" name="website" ng-model="vm.company.website">\n                <div ng-messages="companyForm.website.$error" ng-show="companyForm.website.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.WEBSITE_REQUIRED">Website field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.EMAIL_DOMAIN">Email_Domain</label>\n                <input type="text" name="emailDomain" ng-model="vm.company.emailDomain">\n                <div ng-messages="companyForm.emailDomain.$error" ng-show="companyForm.emailDomain.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_DOMAIN_REQUIRED">Email_Domain field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.company.email">\n                <div ng-messages="companyForm.email.$error" ng-show="companyForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.company.description">\n                <div ng-messages="companyForm.description.$error" ng-show="companyForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCompany" ng-click="vm.saveCompany()" class="send-button md-accent md-raised" ng-disabled="companyForm.$invalid || companyForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCompany" ng-click="vm.addNewCompany()" class="send-button md-accent md-raised" ng-disabled="companyForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_COMPANY" translate-attr-aria-label="CONTACTMANAGER.ADD_COMPANY">\n                    ADD COMPANY\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCompany" ng-click="vm.deleteCompany($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/companies/edit/view.html",'<div id="contactmanager-company" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-companies-button md-icon-button" aria-label="Go to companies" ng-click="vm.gotoCompanies()" translate translate-attr-aria-label="CONTACTMANAGER.GO_TO_COMPANIES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.company.userpic" class="company-image" hide-xs>\n                    <img ng-src="api/users/{{vm.company.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.company.userpic" class="company-image" hide-xs>\n                    <img ng-src="assets/images/business/companies.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.company.id}} {{vm.company.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CONTACTMANAGER.CREATED_AT"></span> <span>{{vm.company.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.gotogoto(vm.company, $event)" class="md-fab md-warn md-icon-button" aria-label="goto">\n                <md-tooltip><span translate="CONTACTMANAGER.GOTO_COMPANY"></span></md-tooltip>\n                <md-icon md-font-icon="icon-forward"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveCompany()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (addressForm.$invalid) || (shipmentAddressForm.$invalid)" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.GENERAL">GENERAL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="company-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CONTACTMANAGER.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.company.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.PHONE">Phone</label>\n                                <input type="text" name="phone" ng-model="vm.company.phone">\n                                <div ng-messages="generalForm.phone.$error" ng-show="generalForm.phone.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.VAT">Vat</label>\n                                <input type="text" name="vat" ng-model="vm.company.vat">\n                                <div ng-messages="generalForm.vat.$error" ng-show="generalForm.vat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.VAT_REQUIRED">Vat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.FAX">Fax</label>\n                                <input type="text" name="fax" ng-model="vm.company.fax">\n                                <div ng-messages="generalForm.fax.$error" ng-show="generalForm.fax.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.FAX_REQUIRED">Fax field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.COMPANYID">CompanyId</label>\n                                <input type="text" name="companyId" ng-model="vm.company.companyId">\n                                <div ng-messages="generalForm.companyId.$error" ng-show="generalForm.companyId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.COMPANYID_REQUIRED">CompanyId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.TYPE">Type</label>\n                                <input type="text" name="type" ng-model="vm.company.type">\n                                <div ng-messages="generalForm.type.$error" ng-show="generalForm.type.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.WEBSITE">Website</label>\n                                <input type="text" name="website" ng-model="vm.company.website">\n                                <div ng-messages="generalForm.website.$error" ng-show="generalForm.website.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.WEBSITE_REQUIRED">Website field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.EMAIL_DOMAIN">Email_Domain</label>\n                                <input type="text" name="emailDomain" ng-model="vm.company.emailDomain">\n                                <div ng-messages="generalForm.emailDomain.$error" ng-show="generalForm.emailDomain.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_DOMAIN_REQUIRED">Email_Domain field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.company.email">\n                                <div ng-messages="generalForm.email.$error" ng-show="generalForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="CONTACTMANAGER.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.company.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.ADDRESS">ADDRESS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="company-detail-form-container address md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CONTACTMANAGER.ADDRESS">ADDRESS</div>\n                        </div>\n                        <form name="addressForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.STREET">Street</label>\n                                <input type="text" name="street" ng-model="vm.company.street" autofocus>\n                                <div ng-messages="addressForm.street.$error" ng-show="addressForm.street.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.STREET_REQUIRED">Street field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.POSTAL_CODE">Postal_Code</label>\n                                <input type="text" name="postalCode" ng-model="vm.company.postalCode">\n                                <div ng-messages="addressForm.postalCode.$error" ng-show="addressForm.postalCode.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.POSTAL_CODE_REQUIRED">Postal_Code field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.CITY">City</label>\n                                <input type="text" name="city" ng-model="vm.company.city">\n                                <div ng-messages="addressForm.city.$error" ng-show="addressForm.city.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.CITY_REQUIRED">City field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.COUNTRY">Country</label>\n                                <input type="text" name="country" ng-model="vm.company.country">\n                                <div ng-messages="addressForm.country.$error" ng-show="addressForm.country.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.COUNTRY_REQUIRED">Country field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.SHIPMENTADDRESS">SHIPMENTADDRESS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="company-detail-form-container shipmentaddress md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CONTACTMANAGER.SHIPMENTADDRESS">SHIPMENTADDRESS</div>\n                        </div>\n                        <form name="shipmentAddressForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.STREET">Street</label>\n                                <input type="text" name="sStreet" ng-model="vm.company.sStreet" autofocus>\n                                <div ng-messages="shipmentAddressForm.sStreet.$error" ng-show="shipmentAddressForm.sStreet.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.STREET_REQUIRED">Street field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.POSTAL_CODE">Postal_Code</label>\n                                <input type="text" name="sPostalCode" ng-model="vm.company.sPostalCode">\n                                <div ng-messages="shipmentAddressForm.sPostalCode.$error" ng-show="shipmentAddressForm.sPostalCode.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.POSTAL_CODE_REQUIRED">Postal_Code field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.CITY">City</label>\n                                <input type="text" name="sCity" ng-model="vm.company.sCity">\n                                <div ng-messages="shipmentAddressForm.sCity.$error" ng-show="shipmentAddressForm.sCity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.CITY_REQUIRED">City field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.COUNTRY">Country</label>\n                                <input type="text" name="sCountry" ng-model="vm.company.sCountry">\n                                <div ng-messages="shipmentAddressForm.sCountry.$error" ng-show="shipmentAddressForm.sCountry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.COUNTRY_REQUIRED">Country field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/contactmanager/views/contacts/contacts.html",'<div id="cm-contacts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <md-button class="md-icon-button sidenav-toggle" hide-gt-md ng-click="vm.toggleSidenav(\'sidenav\')" aria-label="Toggle sidenav" translate translate-attr-aria-label="CONTACTMANAGER.TOGGLE_SIDENAV">\n                <md-icon md-font-icon="icon-menu" class="icon"></md-icon>\n            </md-button>\n\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n          <md-icon md-font-icon="icon-account-circle" class="s24"></md-icon>\n        </span>\n                <span class="logo-text" translate="CONTACTMANAGER.CONTACTS">Contacts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n        <md-icon md-font-icon="icon-magnify"></md-icon>\n      </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CONTACTMANAGER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedContacts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n        <div class="close-button-wrapper" ng-click="vm.selectedContacts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CONTACTMANAGER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n            <div>\n                <span class="selected-contacts-count">\n          <span>{{vm.selectedContacts.length}}</span>\n                <span translate="CONTACTMANAGER.SELECTED">Selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CONTACTMANAGER.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllContacts()" translate="CONTACTMANAGER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectContacts()" translate="CONTACTMANAGER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedContacts" filename="contacts.csv">\n          <md-icon md-font-icon="icon-download"></md-icon>\n        </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedContacts($event)" aria-label="delete selected" translate translate-attr-label="CONTACTMANAGER.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div md-background-bg layout="row" layout-align="start start">\n        <md-progress-linear ng-disabled="vm.disableDialog" md-mode="indeterminate" class="md-warn"></md-progress-linear>\n    </div>\n\n    <div layout="row">\n        <md-card ng-if="vm.hasPermission()" flex="25">\n            \x3c!-- SIDENAV --\x3e\n            <div ms-scroll class="content scrollable">\n                <md-list>\n                    <md-list-item ng-click="vm.selectedTags = []">\n                        <md-icon md-font-icon="icon-account-multiple"></md-icon>\n                        <p translate="CONTACTMANAGER.ALL_CONTACTS">\n                            All contacts\n                        </p>\n                    </md-list-item>\n\n                    <md-divider></md-divider>\n\n                    <md-list-item>\n                        <md-select placeholder="Select lists" flex="100" ng-model="vm.selectedList">\n                            <md-optgroup label="Lists">\n                                <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                            </md-optgroup>\n                        </md-select>\n                    </md-list-item>\n\n                    <md-list-item ng-click="vm.createList()">\n                        <p class="pl-8 md-accent-fg text-truncate" translate="CONTACTMANAGER.NEW_LIST">New List</p>\n                    </md-list-item>\n\n                    <md-divider></md-divider>\n\n                    <md-list-item>\n                        <md-select placeholder="Select companies" flex="100" ng-model="vm.selectedCompany">\n                            <md-optgroup label="Companies">\n                                <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                <md-option ng-value="company.id" ng-repeat="company in vm.companies.rows">{{company.name}}</md-option>\n                            </md-optgroup>\n                        </md-select>\n                    </md-list-item>\n\n                    <md-list-item ng-click="vm.createCompany()">\n                        <p class="pl-8 md-accent-fg text-truncate" translate="CONTACTMANAGER.NEW_COMPANY">New Company</p>\n                    </md-list-item>\n\n                    <md-divider></md-divider>\n\n                    <md-list-item>\n                        <md-select placeholder="Select tags" flex="100" ng-model="vm.selectedTags" multiple>\n                            <md-optgroup label="Tags">\n                                <md-option ng-value="tag.name" ng-repeat="tag in vm.tags.rows">{{tag.name}}</md-option>\n                            </md-optgroup>\n                        </md-select>\n                    </md-list-item>\n\n                    <md-list-item ng-click="vm.createTag()">\n                        <p class="pl-8 md-accent-fg text-truncate" translate="CONTACTMANAGER.NEW_TAG">New Tag</p>\n                    </md-list-item>\n\n                </md-list>\n            </div>\n            \x3c!-- / SIDENAV --\x3e\n        </md-card>\n\n        <md-card flex>\n            \x3c!-- MAIN --\x3e\n            <div class="main scrollable" ms-scroll>\n                \x3c!-- CONTACT LIST --\x3e\n                \x3c!-- <div class="contacts-list"> --\x3e\n                \x3c!-- CONTACTS TABLE --\x3e\n                <md-table-container class="md-white-bg">\n                    <table md-table md-row-select multiple ng-model="vm.selectedContacts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getContacts">\n                            <tr md-row>\n                                <th md-column md-order-by="id">ID</th>\n                                <th md-column md-order-by="firstName">{{\'CONTACTMANAGER.FULLNAME\' | translate}}</th>\n                                <th md-column md-order-by="phone">{{\'CONTACTMANAGER.PHONE\' | translate}}</th>\n                                <th md-column md-order-by="email">{{\'CONTACTMANAGER.EMAIL\' | translate}}</th>\n                                <th md-column md-order-by="list">{{\'CONTACTMANAGER.LIST\' | translate}}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.contacts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="contact" md-select-id="id" ng-repeat="contact in vm.contacts.rows">\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="id">{{contact.id}}</td>\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="firstName">{{contact.firstName}} {{contact.lastName}}</td>\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="phone">{{contact.phone}}</td>\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="email">{{contact.email}}</td>\n                                <td ng-click="vm.createOrEditContact($event, contact)" md-cell class="list">{{vm.listsMap[contact.ListId]}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(contact, ev)" translate="CONTACTMANAGER.EDIT_CONTACT">\n                                                    Edit Contact\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.mergeContact(ev, contact)" translate="CONTACTMANAGER.MERGE_CONTACT">\n                                                    Merge Contact\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.duplicateContact(ev, contact)" translate="CONTACTMANAGER.DUPLICATE_CONTACT">\n                                                    Duplicate Contact\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-divider></md-menu-divider>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(contact, ev)" translate="CONTACTMANAGER.DELETE_CONTACT">\n                                                    Delete Contact\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination class="md-white-bg" md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.contacts.count}}" md-on-paginate="vm.getContacts" md-page-select></md-table-pagination>\n                \x3c!-- / CONTACTS TABLE --\x3e\n                \x3c!-- </div> --\x3e\n                \x3c!-- / CONTACT LIST --\x3e\n            </div>\n            \x3c!-- / MAIN --\x3e\n        </md-card>\n\n\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CONTACT BUTTON --\x3e\n    <div ng-cloak>\n        <md-fab-speed-dial id="add-contact-button" ng-hide="vm.options.hidden" md-direction="up" md-open="vm.options.isOpen" class="md-scale md-fab" ng-class="{ \'md-hover-full\': vm.options.hover }" ng-mouseenter="vm.options.isOpen=true" ng-mouseleave="vm.options.isOpen=false">\n            <md-fab-trigger>\n                <md-button aria-label="menu" class="md-fab md-accent">\n                    <md-icon md-font-icon="icon-plus"></md-icon>\n                </md-button>\n            </md-fab-trigger>\n            <md-fab-actions>\n                <md-button flow-init flow-btn flow-file-added="vm.uploadContacts($event, $file, $flow)" class="md-fab md-mini md-warn" aria-label="add contact" translate translate-attr-aria-label="CONTACTMANAGER.UPLOAD_CSV">\n                    <md-tooltip md-direction="left" md-visible="tooltipVisible" md-autohide="false">\n                        {{\'CONTACTMANAGER.UPLOAD_CSV\' | translate}}\n                    </md-tooltip>\n                    <md-icon md-font-icon="icon-upload"></md-icon>\n                </md-button>\n                <md-button class="md-fab md-mini md-accent" ng-click="vm.createOrEditContact($event)" aria-label="add contact" translate translate-attr-aria-label="CONTACTMANAGER.ADD_CONTACT">\n                    <md-tooltip md-direction="left" md-visible="tooltipVisible" md-autohide="false">\n                        {{\'CONTACTMANAGER.ADD_CONTACT\' | translate}}\n                    </md-tooltip>\n                    <md-icon md-font-icon="icon-account-plus"></md-icon>\n                </md-button>\n            </md-fab-actions>\n        </md-fab-speed-dial>\n    </div>\n</div>'),e.put("app/main/apps/contactmanager/views/contacts/create/dialog.html",'<md-dialog class="cm-contact-dialog" aria-label="New Contact">\n    <form name="contactForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.FIRSTNAME">First name</label>\n                <input name="firstName" ng-model="vm.contact.firstName" required md-autofocus>\n\n                <div ng-messages="contactForm.firstName.$error" ng-show="contactForm.firstName.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.FIRSTNAME_REQUIRED">First name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.LASTNAME">Last name</label>\n                <input name="lastName" ng-model="vm.contact.lastName">\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.PHONE">Phone</label>\n                <input name="phone" ng-model="vm.contact.phone" required>\n\n                <div ng-messages="contactForm.phone.$error" ng-show="contactForm.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.EMAIL">Email</label>\n                <input name="email" type="email" ng-model="vm.contact.email">\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.MOBILE">Mobile</label>\n                <input name="mobile" ng-model="vm.contact.mobile">\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.FAX">Fax</label>\n                <input name="fax" ng-model="vm.contact.fax">\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.LIST">List</label>\n                <md-select name="list" ng-model="vm.contact.ListId" ng-disabled="vm.contact.id && vm.contact.ListId" ng-init="vm.getCustomFields(vm.contact.ListId)" ng-change="vm.getCustomFields(vm.contact.ListId)" required>\n                    <md-optgroup label="Lists">\n                        <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                        <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                    </md-optgroup>\n                </md-select>\n\n                <div ng-messages="contactForm.list.$error" ng-show="contactForm.list.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.LIST_REQUIRED">List field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div ng-repeat="customField in vm.customFields.rows" class="md-block" ng-switch="customField.type">\n                <div ng-switch-when="datetime">\n                    <label>{{customField.alias}}</label>\n\n                    <div ng-init="vm.contact[\'cf_\' + customField.id] = vm.getDateFromString(vm.contact[\'cf_\' + customField.id])">\n                        <mdp-date-picker mdp-open-on-click mdp-placeholder="Date" ng-required="customField.required" mdp-format="YYYY-MM-DD" ng-model="vm.contact[\'cf_\' + customField.id]"></mdp-date-picker>\n                        <mdp-timne-picker mdp-open-on-click mdp-placeholder="Time" ng-required="customField.required" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.contact[\'cf_\' + customField.id]"></mdp-time-picker>\n                    </div>\n                </div>\n\n                <div ng-switch-when="select">\n                    <label>{{customField.alias}}</label>\n\n                    <md-select ng-model="vm.contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                        <md-option ng-repeat="value in customField.values" ng-value="value">{{value}}</md-option>\n                        <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                    </md-select>\n                </div>\n\n                <div ng-switch-when="switch">\n                    <md-switch aria-label="{{customField.alias}}" ng-model="vm.contact[\'cf_\' + customField.id]" ng-true-value="1" ng-false-value="0">\n                        {{customField.alias}}\n                    </md-switch>\n                </div>\n\n                <md-input-container ng-switch-default>\n                    <label>{{customField.alias}}</label>\n\n                    <input type="{{customField.type}}" ng-model="vm.contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                </md-input-container>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.COMPANY">Company</label>\n                <md-select name="company" ng-model="vm.contact.CompanyId">\n                    <md-optgroup label="Companies">\n                        <md-option ng-value="company.id" ng-repeat="company in vm.companies.rows">{{company.name}}</md-option>\n                    </md-optgroup>\n                </md-select>\n            </md-input-container>\n\n            <div ng-if="!vm.allFields" layout="row" layout-align="center center">\n                <md-button class="md-accent" ng-click="vm.allFields = true" translate="CONTACTMANAGER.SHOW_ALL_FIELDS">Show All Fields</md-button>\n            </div>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.DATE_OF_BIRTH">Date of Birth</label>\n                <md-icon md-font-icon="icon-calendar-blank"></md-icon>\n                <input type="date" name="dateOfBirth" ng-model="vm.contact.dateOfBirth" class="text-truncate">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.COUNTRY">Country</label>\n                <input type="text" name="country" ng-model="vm.contact.country">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.CITY">City</label>\n                <input type="text" name="city" ng-model="vm.contact.city">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.STREET">Street</label>\n                <input type="text" name="street" ng-model="vm.contact.street">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.POSTAL_CODE">Postal Code</label>\n                <input type="text" name="postalCode" ng-model="vm.contact.postalCode">\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.allFields">\n                <label translate="CONTACTMANAGER.NOTES">Notes</label>\n                <input type="text" name="description" ng-model="vm.contact.description">\n            </md-input-container>\n\n            <div ng-if="vm.allFields" layout="row" layout-align="center center">\n                <md-button class="md-accent" ng-click="vm.allFields = false" translate="CONTACTMANAGER.FEWER_FIELDS">Fewer Fields</md-button>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newContact" ng-click="vm.saveContact()" class="send-button md-accent md-raised" ng-disabled="contactForm.$invalid || contactForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newContact" ng-click="vm.addNewContact()" class="send-button md-accent md-raised" ng-disabled="contactForm.$invalid || contactForm.$pristine" aria-label="ADD" translate="CONTACTMANAGER.ADD_CONTACT" translate-attr-aria-label="CONTACTMANAGER.ADD_CONTACT">\n                    ADD CONTACT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newContact" ng-click="vm.deleteContact($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/contacts/duplicate/dialog.html",'<md-dialog class="cm-contact-dialog" aria-label="{{ \'CONTACTMANAGER.DUPLICATE_CONTACT\' | translate }}">\n    <form name="contactForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.LIST">List</label>\n                <md-select name="list" ng-model="vm.contact.ListId">\n                    <md-optgroup label="Lists">\n                        <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                    </md-optgroup>\n                </md-select>\n\n                <div ng-messages="contactForm.list.$error" ng-show="contactForm.list.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.LIST_REQUIRED">List field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.addNewContact()" class="send-button md-accent md-raised" ng-disabled="contactForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_CONTACT" translate-attr-aria-label="CONTACTMANAGER.ADD_CONTACT">\n                    ADD CONTACT\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/contacts/edit/hoppers/dialog.html",'<md-dialog class="hopper-dialog" aria-label="New Hopper">\n    <form name="hopperForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div flex class="md-block">\n                <mdp-date-picker mdp-open-on-click name="scheduledatDate" mdp-placeholder="Date" mdp-format="YYYY-MM-DD" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.dateRangeFrom.$error" ng-show="hopperForm.dateRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="CONTACTMANAGER.ERRORS.DATE_REQUIRED">Date is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="CONTACTMANAGER.ERRORS.DATE_INVALID">Date is invalid</span>\n                        </div>\n                    </div>\n                </mdp-date-picker>\n            </div>\n\n            <div flex class="md-block">\n                <mdp-time-picker mdp-open-on-click name="scheduledatTime" mdp-placeholder="Time" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.timeRangeFrom.$error" ng-show="hopperForm.timeRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="CONTACTMANAGER.ERRORS.TIME_REQUIRED">Time is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="CONTACTMANAGER.ERRORS.TIME_INVALID">Time is invalid</span>\n                        </div>\n                    </div>\n                </mdp-time-picker>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newHopper" ng-click="vm.saveHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid || hopperForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newHopper" ng-click="vm.addNewHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_HOPPER" translate-attr-aria-label="CONTACTMANAGER.ADD_HOPPER">\n                    ADD HOPPER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newHopper" ng-click="vm.deleteHopper($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/contacts/edit/view.html",'<div id="cm-contact" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-contacts-button md-icon-button" aria-label="Go to contacts" ng-click="vm.gotoContacts()" translate translate-attr-aria-label="CONTACTMANAGER.GO_TO_CONTACTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div class="contact-image" hide-xs>\n                    <img ng-src="assets/images/business/contacts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.contact.id}} {{vm.contact.firstName}} {{vm.contact.lastName}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CONTACTMANAGER.CREATED_AT"></span> <span>{{vm.contact.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div ng-if="vm.contact.role && vm.contact.role !== \'admin\'" ng-controller="ContactQueueAddButtonController as vm_contact_qa" ng-cloak>\n            <md-fab-speed-dial ng-hide="vm_contact_qa.hidden" md-direction="left" md-open="vm_contact_qa.isOpen" class="md-scale md-fab" ng-class="{ \'md-hover-full\': vm_contact_qa.hover }" ng-mouseenter="vm_contact_qa.isOpen=true" ng-mouseleave="vm_contact_qa.isOpen=false">\n                <md-fab-trigger>\n                    <md-button aria-label="menu" class="md-fab md-primary md-icon-button">\n                        <md-tooltip md-direction="top" md-visible="tooltipVisible">Channels</md-tooltip>\n                        <md-icon md-font-icon="icon-eye" aria-label="channels"></md-icon>\n                    </md-button>\n                </md-fab-trigger>\n                <md-fab-actions>\n                    <div ng-repeat="channel in vm_contact_qa.channels">\n                        <md-button aria-label="{{channel.name}}" class="md-fab md-raised md-icon-button md-mini" ng-click="vm_contact_qa.openDialog($event, vm.contact, channel)">\n                            <md-tooltip md-direction="{{channel.direction}}" md-visible="tooltipVisible" md-autohide="false">\n                                {{channel.name}}\n                            </md-tooltip>\n                            <md-icon md-font-icon="{{channel.icon}}" aria-label="{{channel.name}}"></md-icon>\n                        </md-button>\n                    </div>\n                </md-fab-actions>\n            </md-fab-speed-dial>\n        </div>\n\n        <div>\n            <md-button ng-click="vm.duplicateContact($event)" class="md-fab md-warn md-icon-button" aria-label="DUPLICATE">\n                <md-icon md-font-icon="icon-file-multiple"></md-icon>\n            </md-button>\n            <md-button type="submit" ng-click="vm.saveContact()" class="send-button md-accent md-raised" ng-disabled="detailForm.$pristine && customFieldsForm.$pristine" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.DETAIL">DETAIL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div layout="row">\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex="70">\n                            <div class="pb-16" layout="row" layout-align="start center">\n                                <div class="h2 secondary-text text-truncate" translate="CONTACTMANAGER.PERSONAL_INFO">PERSONAL_INFO</div>\n                            </div>\n                            <form name="detailForm" novalidate>\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    \x3c!-- fistName --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.FIRSTNAME">First Name</label>\n                                        <md-icon md-font-icon="icon-account" class="firstname"></md-icon>\n                                        <input type="text" name="firstName" ng-model="vm.contact.firstName" class="text-truncate" required>\n\n                                        <div ng-messages="detailForm.firstName.$error" ng-show="detailForm.firstName.$touched" role="alert">\n                                            <div ng-message="required">\n                                                <span translate="CONTACTMANAGER.ERRORS.FIRSTNAME_REQUIRED">First name field is required</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    \x3c!-- lastName --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.LASTNAME">Last Name</label>\n                                        <input type="text" name="lastName" ng-model="vm.contact.lastName" class="text-truncate">\n                                    </md-input-container>\n\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    \x3c!-- phone --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.PHONE">Phone</label>\n                                        <md-icon md-font-icon="icon-phone"></md-icon>\n                                        <input type="text" name="phone" ng-model="vm.contact.phone" class="text-truncate" required>\n\n                                        <div ng-messages="detailForm.phone.$error" ng-show="detailForm.phone.$touched" role="alert">\n                                            <div ng-message="required">\n                                                <span translate="CONTACTMANAGER.ERRORS.PHONE_REQUIRED">Phone name field is required</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    \x3c!-- mobile --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.MOBILE">Mobile</label>\n                                        <md-icon md-font-icon="icon-cellphone-iphone"></md-icon>\n                                        <input type="text" name="mobile" ng-model="vm.contact.mobile" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    \x3c!-- email --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.EMAIL">Email</label>\n                                        <md-icon md-font-icon="icon-email" class="email"></md-icon>\n                                        <input type="email" name="email" ng-model="vm.contact.email" class="text-truncate">\n                                        <div ng-messages="detailForm.firstName.$error" ng-show="detailForm.firstName.$touched" role="alert">\n                                            <div ng-message="email">\n                                                <span translate="CONTACTMANAGER.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    \x3c!-- fax --\x3e\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.FAX">Fax</label>\n                                        <md-icon md-font-icon="icon-deskphone"></md-icon>\n                                        <input type="text" name="fax" ng-model="vm.contact.fax">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    \x3c!-- date of birdth --\x3e\n                                    \x3c!-- <md-input-container class="md-block" flex-gt-sm="">\n                                      <mdp-date-picker mdp-open-on-click name="dateOfBirth" mdp-placeholder="Date Of Birth" mdp-format="YYYY-MM-DD" ng-model="vm.contact.dateOfBirth">\n                                          <div ng-messages="detailForm.dateOfBirth.$error" ng-show="reportForm.dateOfBirth.$touched" role="alert">\n                                              <div ng-message="format">\n                                                  <span translate="CONTACTMANAGER.ERRORS.DATE_OF_RANGE_FROM_INVALID">Date Range From field is invalid</span>\n                                              </div>\n                                          </div>\n                                      </mdp-date-picker>\n                                    </md-input-container> --\x3e\n\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.DATE_OF_BIRTH">Date of Birth</label>\n                                        <md-icon md-font-icon="icon-calendar-blank"></md-icon>\n                                        <input type="date" name="dateOfBirth" ng-model="vm.contact.dateOfBirth" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container ng-if="vm.companies.rows.length" class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.COMPANY">Company</label>\n                                        <md-icon md-font-icon="icon-domain"></md-icon>\n                                        <md-select name="company" ng-model="vm.contact.CompanyId">\n                                            <md-optgroup label="Companies">\n                                                <md-option ng-value="company.id" ng-repeat="company in vm.companies.rows">{{company.name}}</md-option>\n                                                <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                            </md-optgroup>\n                                        </md-select>\n                                        <md-icon class="pointer" ng-show="vm.contact.CompanyId" md-font-icon="icon-information-outline" ng-click="vm.editCompany($event, vm.contact.CompanyId)"></md-icon>\n                                    </md-input-container>\n                                    <section ng-if="!vm.companies.rows.length" flex-gt-sm="">\n                                        <md-icon md-font-icon="icon-briefcase"></md-icon>\n                                        <label translate="CONTACTMANAGER.NO_COMPANIES">No Companies</label>\n                                        <md-button class="md-accent" translate="CONTACTMANAGER.ADD_COMPANY">Add Company</md-button>\n                                    </section>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container ng-if="vm.tags.rows.length" class="md-block" flex-gt-sm="">\n                                        <label translate="CONTACTMANAGER.TAGS">Tags</label>\n                                        <md-icon md-font-icon="icon-tag"></md-icon>\n                                        <md-select ng-model="vm.contact.tags" multiple>\n                                            <md-optgroup label="Tags">\n                                                <md-option ng-value="tag.name" ng-repeat="tag in vm.tags.rows">{{tag.name}}</md-option>\n                                            </md-optgroup>\n                                        </md-select>\n                                    </md-input-container>\n                                    <section ng-if="!vm.tags.rows.length" flex-gt-sm="">\n                                        <md-icon md-font-icon="icon-tag"></md-icon>\n                                        <label translate="CONTACTMANAGER.NO_TAGS">No Tags</label>\n                                        <md-button class="md-accent" translate="CONTACTMANAGER.ADD_TAG">Add Tag</md-button>\n                                    </section>\n                                </div>\n\n                                <div ng-if="!vm.allFields" layout="row" layout-align="center center">\n                                    <md-button class="md-accent" ng-click="vm.allFields = true" translate="CONTACTMANAGER.SHOW_ALL_FIELDS">Show All Fields</md-button>\n                                </div>\n\n                                <div ng-if="vm.allFields">\n                                    <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                        \x3c!-- country --\x3e\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate="CONTACTMANAGER.COUNTRY">Country</label>\n                                            <md-icon md-font-icon="icon-home" class="country"></md-icon>\n                                            <input type="text" name="country" ng-model="vm.contact.country" class="text-truncate">\n                                        </md-input-container>\n                                        <div flex="5"></div>\n                                        \x3c!-- city --\x3e\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate="CONTACTMANAGER.CITY">City</label>\n                                            <input type="text" name="city" ng-model="vm.contact.city">\n                                        </md-input-container>\n                                    </div>\n\n                                    <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                        <div flex="5"></div>\n                                        \x3c!-- street --\x3e\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate="CONTACTMANAGER.STREET">Street</label>\n                                            <input type="text" name="street" ng-model="vm.contact.street">\n                                        </md-input-container>\n                                        <div flex="5"></div>\n                                        \x3c!-- postalCode --\x3e\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate="CONTACTMANAGER.POSTALCODE">Postal Code</label>\n                                            <input type="text" name="postalCode" ng-model="vm.contact.postalCode">\n                                        </md-input-container>\n                                    </div>\n\n                                    <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                        <md-input-container class="md-block" flex-gt-sm="">\n                                            <label translate translate-attr-placeholder="CONTACTMANAGER.NOTES">Notes</label>\n                                            <md-icon md-font-icon="icon-note"></md-icon>\n                                            <textarea ng-model="vm.contact.description" type="text" max-rows="4"></textarea>\n                                        </md-input-container>\n                                    </div>\n\n                                    <div layout="row" layout-align="center center">\n                                        <md-button class="md-accent" ng-click="vm.allFields = false" translate="CONTACTMANAGER.FEWER_FIELDS">Fewer Fields\n                                        </md-button>\n                                    </div>\n\n                                </div>\n                            </form>\n                        </div>\n\n                        <div flex></div>\n\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex="25">\n                            <div class="pb-16" layout="row" layout-align="start center">\n                                <div class="h2 secondary-text text-truncate" translate="CONTACTMANAGER.CUSTOM_FIELDS">CUSTOM FIELDS</div>\n                            </div>\n                            <form name="customFieldsForm" novalidate>\n                                <md-input-container class="md-block">\n                                    <label translate translate-attr-placeholder="CONTACTMANAGER.LIST">List</label>\n                                    <md-select name="list" ng-model="vm.contact.ListId" md-on-close="vm.onSelectList($event)" ng-disabled="vm.contact.ListId">\n                                        <md-optgroup label="Lists">\n                                            <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">#{{list.id}} - {{list.name}}</md-option>\n                                            <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                        </md-optgroup>\n                                    </md-select>\n                                </md-input-container>\n                                <div ng-repeat="customField in vm.customFields.rows" class="md-block" ng-switch="customField.type">\n                                    <div ng-switch-when="datetime">\n                                        <label>{{customField.alias}}</label>\n\n                                        <div ng-init="vm.contact[\'cf_\' + customField.id] = vm.getDateFromString(vm.contact[\'cf_\' + customField.id])">\n                                            <mdp-date-picker mdp-open-on-click mdp-placeholder="Date" ng-required="customField.required" mdp-format="YYYY-MM-DD" ng-model="vm.contact[\'cf_\' + customField.id]"></mdp-date-picker>\n                                            <mdp-time-picker mdp-open-on-click mdp-placeholder="Time" ng-required="customField.required" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.contact[\'cf_\' + customField.id]"></mdp-time-picker>\n                                        </div>\n                                    </div>\n\n                                    <div ng-switch-when="select">\n                                        <label>{{customField.alias}}</label>\n\n                                        <md-select ng-model="vm.contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                                            <md-option ng-repeat="value in customField.values" ng-value="value">{{value}}</md-option>\n                                            <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                        </md-select>\n                                    </div>\n\n                                    <md-input-container ng-switch-when="switch">\n                                        <md-switch aria-label="{{customField.alias}}" ng-model="vm.contact[\'cf_\' + customField.id]" ng-true-value="1" ng-false-value="0">\n                                            {{customField.alias}}\n                                        </md-switch>\n                                    </md-input-container>\n\n                                    <md-input-container ng-switch-default>\n                                        <label>{{customField.alias}}</label>\n\n                                        <input type="{{customField.type}}" ng-model="vm.contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                                    </md-input-container>\n                                </div>\n                            </form>\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.MOTION_BULL">MOTION BULL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div layout="row">\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.HOPPER">Hopper</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm.queryHopper.filter = query;" on-collapse="vm.queryHopper.filter = undefined;" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm.getHoppers()" aria-label="reload" translate translate-attr-label="CONTACTMANAGER.RELOAD">\n                                        <md-tooltip>{{\'CONTACTMANAGER.RELOAD\' | translate}}</md-tooltip>\n                                        <md-icon md-font-icon="icon-reload"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n\n                            \x3c!-- HOPPER TABLE --\x3e\n                            <md-table-container>\n                                <table md-table multiple md-progress="vm.promise">\n                                    <thead md-head md-order="vm.queryHopper.sort" md-on-reorder="vm.getHoppers">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'CONTACTMANAGER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row ng-hide="vm.hoppers.count">\n                                            <td md-cell colspan="4">\n                                                <div layout="row" layout-align="center center">\n                                                    <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                                </div>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-repeat="(id, hopper) in vm.hoppers.rows">\n                                            <td md-cell>{{hopper.id}}</td>\n                                            <td md-cell>{{hopper.phone}}</td>\n                                            <td md-cell>{{hopper.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="2">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm.editHopper($event, hopper)" translate="CONTACTMANAGER.EDIT_HOPPER">\n                                                                Edit Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm.deleteconfirm(hopper, $event)" translate="CONTACTMANAGER.DELETE_HOPPER">\n                                                                Delete Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n\n                            <md-table-pagination md-limit="vm.queryHopper.limit" md-limit-options="[10, 15, 20]" md-page="vm.queryHopper.page" md-total="{{vm.hoppers.count}}" md-on-paginate="vm.getHoppers" md-page-select></md-table-pagination>\n                            \x3c!-- / HOPPER TABLE --\x3e\n                        </div>\n                    </div>\n\n                    <div layout="row">\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.FINAL">Final</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm.queryFinal.filter = query;" on-collapse="vm.queryFinal.filter = undefined;" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm.getFinals()" aria-label="reload" translate translate-attr-label="CONTACTMANAGER.RELOAD">\n                                        <md-tooltip>{{\'CONTACTMANAGER.RELOAD\' | translate}}</md-tooltip>\n                                        <md-icon md-font-icon="icon-reload"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n\n                            \x3c!-- HOPPER TABLE --\x3e\n                            <md-table-container>\n                                <table md-table multiple md-progress="vm.promise">\n                                    <thead md-head md-order="vm.queryFinal.sort" md-on-reorder="vm.getFinals">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'CONTACTMANAGER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="state">{{ \'CONTACTMANAGER.STATE\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'CONTACTMANAGER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="disposition">{{ \'CONTACTMANAGER.DISPOSITION\' | translate }}</th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row ng-hide="vm.finals.count">\n                                            <td md-cell colspan="5">\n                                                <div layout="row" layout-align="center center">\n                                                    <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                                </div>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-repeat="(id, final) in vm.finals.rows">\n                                            <td md-cell>{{final.uniqueid}}</td>\n                                            <td md-cell>{{final.calleridnum}}</td>\n                                            <td md-cell>{{final.state}}</td>\n                                            <td md-cell>{{final.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{final.disposition}}</td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n\n                            <md-table-pagination md-limit="vm.queryFinal.limit" md-limit-options="[10, 15, 20]" md-page="vm.queryFinal.page" md-total="{{vm.finals.count}}" md-on-paginate="vm.getFinals" md-page-select></md-table-pagination>\n                            \x3c!-- / HOPPER TABLE --\x3e\n                        </div>\n                    </div>\n\n                    <div layout="row">\n                        <div class="contact-detail-form-container personal_info md-background-bg md-whiteframe-1dp" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.HISTORY">History</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm.queryHistory.filter = query;" on-collapse="vm.queryHistory.filter = undefined;" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm.getHistories()" aria-label="reload" translate translate-attr-label="CONTACTMANAGER.RELOAD">\n                                        <md-tooltip>{{\'CONTACTMANAGER.RELOAD\' | translate}}</md-tooltip>\n                                        <md-icon md-font-icon="icon-reload"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n\n                            \x3c!-- HOPPER TABLE --\x3e\n                            <md-table-container>\n                                <table md-table multiple md-progress="vm.promise">\n                                    <thead md-head md-order="vm.queryHistory.sort" md-on-reorder="vm.getHistories">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'CONTACTMANAGER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="state">{{ \'CONTACTMANAGER.STATE\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'CONTACTMANAGER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'CONTACTMANAGER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'CONTACTMANAGER.ENDTIME\' | translate }}</th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row ng-hide="vm.histories.count">\n                                            <td md-cell colspan="7">\n                                                <div layout="row" layout-align="center center">\n                                                    <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                                </div>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-repeat="(id, history) in vm.histories.rows">\n                                            <td md-cell>{{history.uniqueid}}</td>\n                                            <td md-cell>{{history.calleridnum}}</td>\n                                            <td md-cell>{{history.statedesc}}</td>\n                                            <td md-cell>{{history.scheduledat}}</td>\n                                            <td md-cell>{{history.starttime}}</td>\n                                            <td md-cell>{{history.endtime}}</td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n\n                            <md-table-pagination md-limit="vm.queryHistory.limit" md-limit-options="[10, 15, 20]" md-page="vm.queryHistory.page" md-total="{{vm.histories.count}}" md-on-paginate="vm.getHistories" md-page-select></md-table-pagination>\n                            \x3c!-- / HOPPER TABLE --\x3e\n                        </div>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/contactmanager/views/contacts/merge/dialog.html",'<md-dialog class="cm-contact-dialog" aria-label="Merge Contact">\n    <form name="contactForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <md-input-container class="md-block" flex-gt-sm>\n                <label>Filter</label>\n                <input ng-model="vm.searchTerm" name="searchTerm" ng-model-options="{ debounce: 300 }" ng-change="vm.change()">\n            </md-input-container>\n\n            <md-list flex>\n                <md-subheader class="md-no-sticky" ng-hide="vm.contacts.length"><em>Filter doesn\'t match any contact</em></md-subheader>\n                <md-list-item class="md-3-line" ng-repeat="contact in vm.contacts | filter:{ id: \'!\' + vm.contact.id}" ng-click="vm.showConfirm($event, vm.contact, contact)">\n                    <img ng-src="assets/images/avatars/profile.jpg" class="md-avatar" alt="{{contact.who}}" />\n                    <div class="md-list-item-text" layout="column">\n                        <h3>#{{ contact.id }} - {{ contact.firstName }} {{ contact.lastName }}</h3>\n                        <h4>{{ contact.email }}</h4>\n                        <p>{{ contact.phone }}</p>\n                    </div>\n                </md-list-item>\n            </md-list>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/contacts/upload/upload.html",'<md-dialog class="upload-dialog" aria-label="Upload contact">\n    <form name="uploadForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="CONTACTMANAGER.UPLOAD_CONTACTS">Upload Contacts</span>\n                <md-button ng-disabled="vm.uploading" class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <div md-background-bg layout="row" layout-align="start start">\n            <md-progress-linear ng-disabled="!vm.uploading" md-mode="indeterminate" class="md-warn"></md-progress-linear>\n        </div>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div>\n\n                <md-content ng-hide="vm.uploading || vm.stop">\n                    <md-input-container class="md-icon-float md-block" ng-repeat="contactField in vm.contactFields">\n                        <label>{{\'CONTACTMANAGER.\' + contactField.key | uppercase | translate}}</label>\n                        <md-select name="{{contactField.key}}" ng-model="vm.binding[contactField.key]" placeholder="{{\'CONTACTMANAGER.\' + contactField.key | uppercase | translate}}" ng-required="contactField.required">\n                            <md-option ng-value="field" ng-repeat="field in vm.fields">{{ field }}</md-option>\n                            <md-option ng-value="null" ng-hide="contactField.required"><em>{{ \'CONTACTMANAGER.NONE\' | translate }}</em></md-option>\n                        </md-select>\n                    </md-input-container>\n\n                    <md-input-container class="md-icon-float md-block">\n                        <label translate="CONTACTMANAGER.LIST">List</label>\n                        <md-select name="list" ng-model="vm.ListId" placeholder="Select a list" ng-change="vm.onChangeList()" required>\n                            <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                        </md-select>\n                    </md-input-container>\n\n                    <md-input-container class="md-icon-float md-block" ng-repeat="customField in vm.customFields.rows">\n                        <label>{{customField.alias}}</label>\n                        <md-select ng-model="vm.binding[\'cf_\' + customField.id]" placeholder="{{customField.alias}}" ng-required="customField.required">\n                            <md-option ng-value="field" ng-repeat="field in vm.fields">{{ field }}</md-option>\n                            <md-option ng-value="null" ng-hide="customField.required"><em>{{ \'CONTACTMANAGER.NONE\' | translate }}</em></md-option>\n                        </md-select>\n                    </md-input-container>\n\n                    <md-input-container class="md-icon-float md-block">\n                        <label translate="CONTACTMANAGER.COMPANY">Company</label>\n                        <md-select name="company" ng-model="vm.CompanyId" placeholder="Select a company">\n                            <md-option ng-value="company.id" ng-repeat="company in vm.companies.rows">{{company.name}}</md-option>\n                            <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                        </md-select>\n                    </md-input-container>\n\n                    <md-input-container class="md-icon-float md-block">\n                        <md-select ng-model="vm.duplicates" placeholder="{{ \'CONTACTMANAGER.CHECK_DUPLICATES\' | translate}}" multiple>\n                            <md-option ng-value="contactField.key" ng-repeat="contactField in vm.contactFields">{{ \'CONTACTMANAGER.\' + contactField.key | uppercase | translate}}</md-option>\n                        </md-select>\n                    </md-input-container>\n                </md-content>\n\n                <div layout="row" ng-if="vm.uploading || vm.stop">\n                    \x3c!-- WIDGET SUCCESS --\x3e\n                    <ms-widget class="h-140" flex>\n                        \x3c!-- Front --\x3e\n                        <ms-widget-front class="p-16 white-bg">\n                            <div class="pt-8 pb-8" layout="column" layout-align="center center" flex>\n                                <div class="md-display-1 pb-8 green-fg">{{vm.successAmount}}</div>\n                                <div class="font-weight-500 secondary-text" translate="CONTACTMANAGER.SUCCESS">Success</div>\n                            </div>\n                        </ms-widget-front>\n                        \x3c!-- / Front --\x3e\n                    </ms-widget>\n                    \x3c!-- / WIDGET SUCCESS --\x3e\n\n                    \x3c!-- WIDGET FAILURE --\x3e\n                    <ms-widget class="h-140" flex>\n                        \x3c!-- Front --\x3e\n                        <ms-widget-front class="p-16 white-bg">\n                            <div class="pt-8 pb-8" layout="column" layout-align="center center" flex>\n                                <div class="md-display-1 pb-8 red-fg">{{vm.failureAmount}}</div>\n                                <div class="font-weight-500 secondary-text" translate="CONTACTMANAGER.FAILURE">Failure</div>\n                            </div>\n                        </ms-widget-front>\n                        \x3c!-- / Front --\x3e\n                    </ms-widget>\n                    \x3c!-- / WIDGET FAILURE --\x3e\n\n                    \x3c!-- WIDGET DUPLICATES --\x3e\n                    <ms-widget class="h-140" flex ng-if="vm.duplicates.length">\n                        \x3c!-- Front --\x3e\n                        <ms-widget-front class="p-16 white-bg">\n                            <div class="pt-8 pb-8" layout="column" layout-align="center center" flex>\n                                <div class="md-display-1 pb-8 orange-fg">{{vm.duplicatesAmount}}</div>\n                                <div class="font-weight-500 secondary-text" translate="CONTACTMANAGER.DUPLICATES">Duplicates</div>\n                            </div>\n                        </ms-widget-front>\n                        \x3c!-- / Front --\x3e\n                    </ms-widget>\n                    \x3c!-- / WIDGET DUPLICATES --\x3e\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row">\n                <md-button aria-label="SAVE" ng-disabled="uploadForm.$invalid || uploadForm.$pristine || vm.uploading || vm.stop" ng-click="vm.upload()" class="md-accent md-raised" aria-label="UPLOAD" translate="CONTACTMANAGER.UPLOAD" translate-attr-aria-label="CONTACTMANAGER.UPLOAD">\n                    UPLOAD\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/globalCustomFields/create/dialog.html",'<md-dialog class="globalCustomField-dialog" aria-label="New GlobalCustomField">\n    <form name="globalCustomFieldForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.ALIAS">Alias</label>\n                <input type="" name="alias" ng-model="vm.globalCustomField.alias" required autofocus>\n                <div ng-messages="globalCustomFieldForm.alias.$error" ng-show="globalCustomFieldForm.alias.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.ALIAS_REQUIRED">Alias field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.TYPE">Type</label>\n                <md-select ng-model="vm.globalCustomField.type" required>\n                    <md-option ng-value="\'text\'">Text</md-option>\n                    <md-option ng-value="\'select\'">Select</md-option>\n                    <md-option ng-value="\'number\'">Number</md-option>\n                    <md-option ng-value="\'switch\'">Switch</md-option>\n                    <md-option ng-value="\'datetime\'">Datetime</md-option>\n                </md-select>\n                <div ng-messages="globalCustomFieldForm.type.$error" ng-show="globalCustomFieldForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.globalCustomField.type == \'select\'" class="md-block">\n                <label translate="CONTACTMANAGER.VALUE">Value</label>\n                <md-chips name="values" ng-model="vm.globalCustomField.values" placeholder="add value and type enter" required>\n                    <md-chip-template>\n                        <span>{{$chip}}</span>\n                    </md-chip-template>\n                </md-chips>\n                <div ng-messages="globalCustomFieldForm.values.$error" ng-show="globalCustomFieldForm.values.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.globalCustomField.required" aria-label="Required"><span translate="CONTACTMANAGER.REQUIRED">Required</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newGlobalCustomField" ng-click="vm.saveGlobalCustomField()" class="send-button md-accent md-raised" ng-disabled="globalCustomFieldForm.$invalid || globalCustomFieldForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE"\n                    translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newGlobalCustomField" ng-click="vm.addNewGlobalCustomField()" class="send-button md-accent md-raised" ng-disabled="globalCustomFieldForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_GLOBALCUSTOMFIELD" translate-attr-aria-label="CONTACTMANAGER.ADD_GLOBALCUSTOMFIELD">\n                    ADD GLOBALCUSTOMFIELD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newGlobalCustomField" ng-click="vm.deleteGlobalCustomField($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/globalCustomFields/globalCustomFields.html",'<div id="globalCustomFields" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-circle" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CONTACTMANAGER.GLOBALCUSTOMFIELDS">GlobalCustomFields</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CONTACTMANAGER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedGlobalCustomFields.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedGlobalCustomFields =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CONTACTMANAGER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-globalCustomFields-count">\n                    <span>{{vm.selectedGlobalCustomFields.length}}</span>\n                <span translate="CONTACTMANAGER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="GLOBALCUSTOMFIELDS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllGlobalCustomFields()" translate="CONTACTMANAGER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectGlobalCustomFields()" translate="CONTACTMANAGER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedGlobalCustomFields" filename="globalCustomFields.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedGlobalCustomFields($event)" aria-label="delete selected" translate translate-attr-label="GLOBALCUSTOMFIELDS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- GLOBALCUSTOMFIELD TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedGlobalCustomFields" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getGlobalCustomFields">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                <th md-column md-order-by="alias">{{ \'CONTACTMANAGER.ALIAS\' | translate }}</th>\n                                <th md-column md-order-by="type">{{ \'CONTACTMANAGER.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="required">{{ \'CONTACTMANAGER.REQUIRED\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.globalCustomFields.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="globalCustomField" md-select-id="id" ng-repeat="globalCustomField in vm.globalCustomFields.rows">\n                                <td md-cell ng-if="globalCustomField.userpic"><img class="avatar" alt="{{globalCustomField.name}}" ng-src="api/users/{{globalCustomField.id}}/avatar" /></td>\n                                <td md-cell ng-if="!globalCustomField.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{globalCustomField.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditGlobalCustomField($event, globalCustomField)" md-cell class="id ">{{globalCustomField.id}}</td>\n                                <td ng-click="vm.createOrEditGlobalCustomField($event, globalCustomField)" md-cell class="alias ">{{globalCustomField.alias}}</td>\n                                <td ng-click="vm.createOrEditGlobalCustomField($event, globalCustomField)" md-cell class="type ">{{ vm.arraytype[globalCustomField.type].option }}</td>\n                                <td ng-click="vm.createOrEditGlobalCustomField($event, globalCustomField)" md-cell class="required ">\n                                    <md-icon md-colors="{color: {{globalCustomField.required ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{globalCustomField.required ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(globalCustomField, $event)" translate="CONTACTMANAGER.EDIT_GLOBALCUSTOMFIELD">\n                                                    Edit GlobalCustomField\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(globalCustomField, $event)" translate="CONTACTMANAGER.DELETE_GLOBALCUSTOMFIELD">\n                                                    Delete GlobalCustomField\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.globalCustomFields.count}}" md-on-paginate="vm.getGlobalCustomFields" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / GLOBALCUSTOMFIELD TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD GLOBALCUSTOMFIELD BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-globalCustomField-button" ng-click="vm.createOrEditGlobalCustomField($event)" aria-label="add globalCustomField" translate translate-attr-aria-label="CONTACTMANAGER.ADD_GLOBALCUSTOMFIELD">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD GLOBALCUSTOMFIELD BUTTON --\x3e\n</div>'),e.put("app/main/apps/contactmanager/views/lists/create/dialog.html",'<md-dialog class="list-dialog" aria-label="New List">\n    <form name="listForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.list.name" required autofocus>\n                <div ng-messages="listForm.name.$error" ng-show="listForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.list.description">\n                <div ng-messages="listForm.description.$error" ng-show="listForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newList" ng-click="vm.saveList()" class="send-button md-accent md-raised" ng-disabled="listForm.$invalid || listForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newList" ng-click="vm.addNewList()" class="send-button md-accent md-raised" ng-disabled="listForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_LIST" translate-attr-aria-label="CONTACTMANAGER.ADD_LIST">\n                    ADD LIST\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newList" ng-click="vm.deleteList($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/lists/edit/agentadd/agentadd.html",'<md-dialog class="list-dialog" aria-label="list">\n    <form name="listForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="CONTACTMANAGER.AGENTADD_LIST">Add Agent to list</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/lists/edit/customFields/dialog.html",'<md-dialog class="customField-dialog" aria-label="New CustomField">\n    <form name="customFieldForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.ALIAS">Alias</label>\n                <input type="" name="alias" ng-model="vm.customField.alias" required autofocus>\n                <div ng-messages="customFieldForm.alias.$error" ng-show="customFieldForm.alias.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.ALIAS_REQUIRED">Alias field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.TYPE">Type</label>\n                <md-select ng-model="vm.customField.type" required>\n                    <md-option ng-value="\'text\'">Text</md-option>\n                    <md-option ng-value="\'select\'">Select</md-option>\n                    <md-option ng-value="\'number\'">Number</md-option>\n                    <md-option ng-value="\'switch\'">Switch</md-option>\n                    <md-option ng-value="\'datetime\'">Datetime</md-option>\n                </md-select>\n                <div ng-messages="customFieldForm.type.$error" ng-show="customFieldForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.customField.type == \'select\'" class="md-block">\n                <label translate="CONTACTMANAGER.VALUE">Value</label>\n                <md-chips name="values" ng-model="vm.customField.values" placeholder="add value and type enter" required>\n                    <md-chip-template>\n                        <span>{{$chip}}</span>\n                    </md-chip-template>\n                </md-chips>\n                <div ng-messages="customFieldForm.values.$error" ng-show="customFieldForm.values.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.customField.required" aria-label="Required"><span translate="CONTACTMANAGER.REQUIRED">Required</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCustomField" ng-click="vm.saveCustomField()" class="send-button md-accent md-raised" ng-disabled="customFieldForm.$invalid || customFieldForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCustomField" ng-click="vm.addNewCustomField()" class="send-button md-accent md-raised" ng-disabled="customFieldForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_CUSTOMFIELD" translate-attr-aria-label="CONTACTMANAGER.ADD_CUSTOMFIELD">\n                    ADD CUSTOMFIELD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCustomField" ng-click="vm.deleteCustomField($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/lists/edit/view.html",'<div id="contactmanager-list" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-lists-button md-icon-button" aria-label="Go to lists" ng-click="vm.gotoLists()" translate translate-attr-aria-label="CONTACTMANAGER.GO_TO_LISTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.list.userpic" class="list-image" hide-xs>\n                    <img ng-src="api/users/{{vm.list.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.list.userpic" class="list-image" hide-xs>\n                    <img ng-src="assets/images/business/lists.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.list.id}} {{vm.list.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="CONTACTMANAGER.CREATED_AT"></span> <span>{{vm.list.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.gotogoto(vm.list, $event)" class="md-fab md-warn md-icon-button" aria-label="goto">\n                <md-tooltip><span translate="CONTACTMANAGER.GOTO_LIST"></span></md-tooltip>\n                <md-icon md-font-icon="icon-forward"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.agentadddialog(vm.list, $event)" class="md-fab md-warn md-icon-button" aria-label="agentadd">\n                <md-tooltip><span translate="CONTACTMANAGER.AGENTADD_LIST"></span></md-tooltip>\n                <md-icon md-font-icon="icon-eye"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveList()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (customFieldsForm.$invalid) || (voiceDispositionsForm.$invalid)" translate="CONTACTMANAGER.SAVE" translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="list-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="CONTACTMANAGER.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.list.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="CONTACTMANAGER.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.list.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="CONTACTMANAGER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.CUSTOMFIELDS">CUSTOMFIELDS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="list-detail-form-container customfields md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ListCustomFieldsController as vm_dc" ng-init="vm_dc.init(vm.list)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedListCustomFields.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.CUSTOMFIELDS">CustomFields</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditListCustomField($event)" aria-label="add customField" translate translate-attr-label="CONTACTMANAGER.ADD_CUSTOMFIELD">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedListCustomFields.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedListCustomFields.length}} {{vm_dc.selectedListCustomFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedListCustomFields($event)" aria-label="delete selected" translate translate-attr-label="LISTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedListCustomFields" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getListCustomFields">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                            <th md-column md-order-by="alias">{{ \'CONTACTMANAGER.ALIAS\' | translate }}</th>\n                                            <th md-column md-order-by="type">{{ \'CONTACTMANAGER.TYPE\' | translate }}</th>\n                                            <th md-column md-order-by="required">{{ \'CONTACTMANAGER.REQUIRED\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="customField" md-select-id="id" ng-repeat="customField in vm_dc.listCustomFields.rows">\n                                            <td ng-click="vm_dc.createOrEditListCustomField($event, customField)" md-cell>{{customField.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditListCustomField($event, customField)" md-cell>{{customField.alias}}</td>\n                                            <td ng-click="vm_dc.createOrEditListCustomField($event, customField)" md-cell>{{ vm_dc.arraytype[customField.type].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditListCustomField($event, customField)" md-cell>{{customField.required}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditListCustomField($event, customField)" translate="CONTACTMANAGER.EDIT_CUSTOMFIELD">\n                                                                Edit CustomField\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(customField, $event)" translate="CONTACTMANAGER.DELETE_CUSTOMFIELD">\n                                                                Delete CustomField\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.listCustomFields.rows.length">\n                                            <td md-cell colspan="7">\n                                                <span class="text-boxed-ligth" translate="CONTACTMANAGER.NO_CUSTOMFIELD_AVAILABLE">No customfield available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.listCustomFields.count}}" md-on-paginate="vm_dc.getListCustomFields" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="CONTACTMANAGER.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="list-detail-form-container voicedispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="ListVoiceDispositionsController as vm_dc" ng-init="vm_dc.init(vm.list)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedListVoiceDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="CONTACTMANAGER.VOICEDISPOSITIONS">VoiceDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditListVoiceDisposition($event)" aria-label="add voiceDisposition" translate translate-attr-label="CONTACTMANAGER.ADD_VOICEDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedListVoiceDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedListVoiceDispositions.length}} {{vm_dc.selectedListVoiceDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedListVoiceDispositions($event)" aria-label="delete selected" translate translate-attr-label="LISTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedListVoiceDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getListVoiceDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'CONTACTMANAGER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'CONTACTMANAGER.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="voiceDisposition" md-select-id="id" ng-repeat="voiceDisposition in vm_dc.listVoiceDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditListVoiceDisposition($event, voiceDisposition)" md-cell>{{voiceDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditListVoiceDisposition($event, voiceDisposition)" md-cell>{{voiceDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditListVoiceDisposition($event, voiceDisposition)" md-cell>{{voiceDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditListVoiceDisposition($event, voiceDisposition)" translate="CONTACTMANAGER.EDIT_VOICEDISPOSITION">\n                                                                Edit VoiceDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(voiceDisposition, $event)" translate="CONTACTMANAGER.DELETE_VOICEDISPOSITION">\n                                                                Delete VoiceDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.listVoiceDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="CONTACTMANAGER.NO_VOICEDISPOSITION_AVAILABLE">No voicedisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.listVoiceDispositions.count}}" md-on-paginate="vm_dc.getListVoiceDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/contactmanager/views/lists/edit/voiceDispositions/dialog.html",'<md-dialog class="voiceDisposition-dialog" aria-label="New VoiceDisposition">\n    <form name="voiceDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="CONTACTMANAGER.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.voiceDisposition.name" required autofocus>\n                <div ng-messages="voiceDispositionForm.name.$error" ng-show="voiceDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="CONTACTMANAGER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVoiceDisposition" ng-click="vm.saveVoiceDisposition()" class="send-button md-accent md-raised" ng-disabled="voiceDispositionForm.$invalid || voiceDispositionForm.$pristine" aria-label="SAVE" translate="CONTACTMANAGER.SAVE"\n                    translate-attr-aria-label="CONTACTMANAGER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVoiceDisposition" ng-click="vm.addNewVoiceDisposition()" class="send-button md-accent md-raised" ng-disabled="voiceDispositionForm.$invalid" aria-label="ADD" translate="CONTACTMANAGER.ADD_VOICEDISPOSITION" translate-attr-aria-label="CONTACTMANAGER.ADD_VOICEDISPOSITION">\n                    ADD VOICEDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVoiceDisposition" ng-click="vm.deleteVoiceDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="CONTACTMANAGER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="CONTACTMANAGER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/contactmanager/views/lists/lists.html",'<div id="lists" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-circle" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="CONTACTMANAGER.LISTS">Lists</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="CONTACTMANAGER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedLists.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedLists =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="CONTACTMANAGER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-lists-count">\n                    <span>{{vm.selectedLists.length}}</span>\n                <span translate="CONTACTMANAGER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="LISTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllLists()" translate="CONTACTMANAGER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectLists()" translate="CONTACTMANAGER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedLists" filename="lists.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedLists($event)" aria-label="delete selected" translate translate-attr-label="LISTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- LIST TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedLists" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getLists">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'CONTACTMANAGER.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'CONTACTMANAGER.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.lists.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="list" md-select-id="id" ng-repeat="list in vm.lists.rows">\n                                <td md-cell ng-if="list.userpic"><img class="avatar" alt="{{list.name}}" ng-src="api/users/{{list.id}}/avatar" /></td>\n                                <td md-cell ng-if="!list.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{list.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditList($event, list)" md-cell class="id ">{{list.id}}</td>\n                                <td ng-click="vm.createOrEditList($event, list)" md-cell class="name ">{{list.name}}</td>\n                                <td ng-click="vm.createOrEditList($event, list)" md-cell class="description ">{{list.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="CONTACTMANAGER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(list, $event)" translate="CONTACTMANAGER.EDIT_LIST">\n                                                    Edit List\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.gotocontactsgoto(list, $event)" translate="CONTACTMANAGER.GOTOCONTACTS_LIST">\n                                                    goToContacts List\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.exportcsvcontactsexport(list, $event)" translate="CONTACTMANAGER.EXPORTCSVCONTACTS_LIST">\n                                                    exportCsvContacts List\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.agentadddialog(list, $event)" translate="CONTACTMANAGER.AGENTADD_LIST">\n                                                    AgentAdd List\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(list, $event)" translate="CONTACTMANAGER.DELETE_LIST">\n                                                    Delete List\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.lists.count}}" md-on-paginate="vm.getLists" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / LIST TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD LIST BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-list-button" ng-click="vm.createOrEditList($event)" aria-label="add list" translate translate-attr-aria-label="CONTACTMANAGER.ADD_LIST">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD LIST BUTTON --\x3e\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/agent.general.html",'<div id="dashboard-general" class="page-layout simple right-sidenav" layout="row">\n    \x3c!-- CENTER --\x3e\n    <div class="center" flex ms-scroll>\n        \x3c!-- CONTENT --\x3e\n        <div class="content">\n            <md-tabs md-selected="vm.currentTab" md-dynamic-height>\n                <md-tab label="{{\'DASHBOARDS.DASHBOARD\' | translate}}" ui-sref="app.dashboards.general.dashboard">\n                    <div ui-view="dashboard"></div>\n                </md-tab>\n                <md-tab label="{{\'DASHBOARDS.RECORDINGS\' | translate}}" ui-sref="app.dashboards.general.recordings">\n                    <div ui-view="recordings"></div>\n                </md-tab>\n                <md-tab label="{{\'DASHBOARDS.CONTACTS\' | translate}}" ui-sref="app.dashboards.general.contacts({tab: vm})">\n                    <div ui-view="contacts"></div>\n                </md-tab>\n                <md-tab label="{{\'DASHBOARDS.MYCONTACTS\' | translate}}" ui-sref="app.dashboards.general.mycontacts">\n                    <div ui-view="mycontacts"></div>\n                </md-tab>\n\n                \x3c!-- TABS START --\x3e\n                <md-tab ng-repeat="tab in vm.tabs track by tab.id">\n                    <md-tab-label>\n                        <md-icon md-font-icon="{{tab.icon}}" class="icon s20"></md-icon>\n                        <span class="text-bold"> {{tab.title}} </span>\n                        <md-button class="md-icon-button md-warn" ng-click="vm.closeTab($index, tab)">\n                            <md-icon md-font-icon="icon-close-circle-outline" class="icon s20"></md-icon>\n                        </md-button>\n                    </md-tab-label>\n                    <md-tab-body ng-switch-when="contact">\n                        <contact tab="tab"></contact>\n                    </md-tab-body>\n                </md-tab>\n                \x3c!-- TABS END --\x3e\n            </md-tabs>\n        </div>\n        \x3c!-- / CONTENT --\x3e\n    </div>\n    \x3c!-- / CENTER --\x3e\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/contacts/agent.general.contacts.html",'<div layout="rows">\n    <md-card flex="25" layout-padding>\n        <md-button translate="CONTACTMANAGER.ALL_CONTACTS" ng-click="vm.refreshContacts()"> AllContacts </md-button>\n        <md-input-container>\n            <label>Select a list</label>\n            <md-select flex="100" ng-model="vm.query.ListId" ng-change="vm.getContacts()">\n                <md-optgroup label="Lists">\n                    <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                    <md-option ng-value="vm.defaultLists" ng-if="vm.lists.count > 1"><em translate="CONTACTMANAGER.ALL_CONTACTS">All</em></md-option>\n                </md-optgroup>\n            </md-select>\n        </md-input-container>\n    </md-card>\n    <md-card flex="75">\n        <md-toolbar class="md-table-toolbar md-default">\n            <div class="md-toolbar-tools">\n                <span class="md-subhead" translate="DASHBOARDS.CONTACTS">Contacts</span>\n                <div flex></div>\n                <ms-search-bar on-search="vm.query.filter = query" on-collapse="vm.query.filter = undefined" debounce="300"></ms-search-bar>\n                <md-button class="md-icon-button" ng-click="vm.openContact($event)" aria-label="add contact" translate translate-attr-label="DASHBOARDS.ADD_CONTACT">\n                    <md-icon md-font-icon="icon-plus"></md-icon>\n                </md-button>\n                <md-button class="md-icon-button" ng-click="vm.refreshContacts($event)" aria-label="refresh Contacts" translate translate-attr-label="DASHBOARDS.REFRESH_CONTACTS">\n                    <md-icon md-font-icon="icon-reload"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-table-container>\n            <table md-table md-progress="vm.promise">\n                <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getContacts">\n                    <tr md-row>\n                        <th md-column md-order-by="id">ID</th>\n                        <th md-column md-order-by="firstName">{{\'DASHBOARDS.FULLNAME\' | translate}}</th>\n                        <th md-column md-order-by="phone">{{\'DASHBOARDS.PHONE\' | translate}}</th>\n                        <th md-column md-order-by="email">{{\'DASHBOARDS.EMAIL\' | translate}}</th>\n                        <th md-column md-order-by="ListId">{{\'DASHBOARDS.LIST\' | translate}}</th>\n                        <th md-column width="10px"></th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-hide="vm.contacts.rows.length">\n                        <td md-cell colspan="10">\n                            <div layout="row" layout-align="center center">\n                                <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                            </div>\n                        </td>\n                    </tr>\n                    <tr md-row ng-repeat="contact in vm.contacts.rows">\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="id">{{contact.id}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="firstName">{{contact.firstName}} {{contact.lastName}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="phone">{{contact.phone}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="email">{{contact.email}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="list">{{vm.listsMap[contact.ListId]}}</td>\n                        <td md-cell class="actions">\n                            <md-menu>\n                                <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="DASHBOARDS.MORE">\n                                    <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                </md-button>\n\n                                <md-menu-content width="3">\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.openContact(ev, contact)" translate="DASHBOARDS.EDIT">\n                                            Edit Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.mergeContact(ev, contact)" translate="DASHBOARDS.MERGE">\n                                            Merge Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.duplicateContact(ev, contact)" translate="DASHBOARDS.DUPLICATE">\n                                            Duplicate Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                </md-menu-content>\n                            </md-menu>\n                        </td>\n                    </tr>\n                </tbody>\n            </table>\n        </md-table-container>\n\n        <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.contacts.count}}" md-on-paginate="vm.getContacts" md-page-select></md-table-pagination>\n    </md-card>\n\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/dashboard/agent.general.dashboard.html",'<div layout="row">\n    <md-card flex="50">\n        <md-toolbar class="md-table-toolbar md-default">\n            <div class="md-toolbar-tools">\n                <span class="md-subhead" translate="VOICE.QUEUES">Queues</span>\n                <div flex></div>\n            </div>\n        </md-toolbar>\n        <md-table-container>\n            <table md-table md-progress="vm.promise">\n                <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoiceQueues">\n                    <tr md-row>\n                        <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                        <th md-column md-order-by="waiting">{{ \'VOICE.WAITING\' | translate }}</th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-hide="vm.getSize(vm.voiceQueues)">\n                        <td md-cell colspan="2">\n                            <div layout="row" layout-align="center center">\n                                <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                            </div>\n                        </td>\n                    </tr>\n                    <tr md-row ng-repeat="(key, voiceQueue) in vm.voiceQueues">\n                        <td md-cell class="name">{{voiceQueue.name}}</td>\n                        <td md-cell class="waiting">{{voiceQueue.waiting || 0}}</td>\n                    </tr>\n                </tbody>\n            </table>\n        </md-table-container>\n\n        <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voiceQueuesTotal}}" md-on-paginate="vm.getVoiceQueues" md-page-select></md-table-pagination>\n    </md-card>\n    <md-card flex="50">\n        <md-toolbar class="md-table-toolbar md-default">\n            <div class="md-toolbar-tools">\n                <span class="md-subhead" translate="DASHBOARDS.WAITING_TEXT"></span>\n                <div flex></div>\n            </div>\n        </md-toolbar>\n        <md-table-container>\n            <table md-table>\n                <thead md-head>\n                    <tr md-row>\n                        <th md-column>{{ \'VOICE.DID\' | translate }}</th>\n                        <th md-column>{{ \'VOICE.QUEUE\' | translate }}</th>\n                        <th md-column>{{ \'VOICE.CALLER\' | translate }}</th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-hide="vm.getSize(vm.rpcVoiceQueuesChannels)">\n                        <td md-cell colspan="3">\n                            <div layout="row" layout-align="center center">\n                                <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                            </div>\n                        </td>\n                    </tr>\n                    <tr md-row ng-repeat="(key, channel) in vm.rpcVoiceQueuesChannels | limitObjectFromTo: vm.queryChannels.limit:(vm.queryChannels.page - 1) * vm.queryChannels.limit">\n                        <td md-cell>{{channel.exten}}</td>\n                        <td md-cell>{{channel.queue}}</td>\n                        <td md-cell>{{channel.calleridnum}}</td>\n                    </tr>\n                </tbody>\n            </table>\n        </md-table-container>\n\n        <md-table-pagination md-limit="vm.queryChannels.limit" md-page="vm.queryChannels.page" md-limit-options="[10, 15, 20]" md-total="{{vm.getSize(vm.rpcVoiceQueuesChannels)}}" md-page-select></md-table-pagination>\n    </md-card>\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/directives/contact/contact.html",'<md-content>\n    <md-tabs md-selected="currentTab" md-dynamic-height>\n        <md-tab>\n            <md-tab-label>\n                <span translate="DASHBOARDS.DETAIL">Detail</span>\n            </md-tab-label>\n            <md-tab-body>\n                <md-content>\n                    <div layout="row">\n                        \x3c!-- MS-CARD --\x3e\n                        <md-card class="template-7" layout="row" layout-align="space-between" ng-repeat="call in tab.calls track by call.uniqueid">\n                            <div class="info" layout="column" layout-align="space-between" layout-fill flex>\n                                <div layout="row">\n                                    <span class="text-boxed md-green-bg"><timer start-time="tab.openedAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>\n                                    <div flex></div>\n                                    <span ng-if="call.disposedAt" class="text-boxed md-yellow-bg"><timer start-time="call.disposedAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>\n                                </div>\n                                <div class="p-16">\n                                    <div class="title h1">\n                                        <md-icon md-font-icon="icon-phone-forward"></md-icon>\n                                        {{call.calleridnum}}\n                                    </div>\n\n                                    <div class="subtitle h4 secondary-text" ng-if="call.calleridname">\n                                        <md-icon md-font-icon="icon-account"></md-icon>\n                                        Name: {{call.calleridname}}\n                                    </div>\n\n                                    <div class="text h4 pt-8" ng-if="call.queue">\n                                        <md-icon md-font-icon="icon-stackoverflow"></md-icon>\n                                        Queue: {{call.queue}}\n                                    </div>\n                                    <div class="text h4 pt-8" ng-if="call.variables.extravar">\n                                        <md-icon md-font-icon="icon-minus"></md-icon>\n                                        Extra: {{call.variables.extravar}}\n                                    </div>\n                                </div>\n                                <div layout="row" layout-align="end center">\n                                    <md-button ng-if="call.disposedAt" type="submit" ng-click="disposeCall($event, call)" class="send-button md-accent md-raised">\n                                        {{ \'DASHBOARDS.DISPOSE\' | translate}}\n                                    </md-button>\n                                </div>\n                            </div>\n                        </md-card>\n                        \x3c!-- / MS-CARD --\x3e\n                        <div flex layout="row" layout-align="end center">\n                            <md-button type="submit" ng-click="mergeContact($event)" class="send-button md-raised md-teal-A700-bg" ng-if="!newContact" ng-disabled="detailForm.$invalid || customFieldsForm.$invalid">\n                                {{ \'DASHBOARDS.MERGE\' | translate}}\n                            </md-button>\n                            <md-button type="submit" ng-click="duplicateContact($event)" class="send-button md-raised md-cyan-A700-bg" ng-if="!newContact" ng-disabled="detailForm.$invalid || customFieldsForm.$invalid">\n                                {{ \'DASHBOARDS.DUPLICATE\' | translate}}\n                            </md-button>\n                            <md-button type="submit" ng-click="addNewContact($event)" class="send-button md-accent md-raised" ng-if="newContact" ng-disabled="detailForm.$invalid || customFieldsForm.$invalid">\n                                {{ \'DASHBOARDS.ADD\'| translate }}\n                            </md-button>\n                            <md-button type="submit" ng-click="saveContact($event)" class="send-button md-accent md-raised" ng-if="!newContact" ng-disabled="detailForm.$invalid || customFieldsForm.$invalid">\n                                {{ \'DASHBOARDS.SAVE\' | translate }}\n                            </md-button>\n                        </div>\n                    </div>\n                    <div layout="row">\n                        <md-card flex="75" layout-padding>\n                            <div class="h2 secondary-text text-truncate" translate="DASHBOARDS.PERSONAL_INFO">PERSONAL_INFO</div>\n                            <form name="detailForm" novalidate>\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.FIRSTNAME">First Name</label>\n                                        <md-icon md-font-icon="icon-account" class="firstname"></md-icon>\n                                        <input type="text" name="firstName" ng-model="contact.firstName" class="text-truncate" required>\n                                        <div ng-messages="detailForm.firstName.$error" ng-show="detailForm.firstName.$touched" role="alert">\n                                            <div ng-message="required">\n                                                <span translate="DASHBOARDS.ERRORS.FIRSTNAME_REQUIRED">First name field is required</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.LASTNAME">Last Name</label>\n                                        <input type="text" name="lastName" ng-model="contact.lastName" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.PHONE">Phone</label>\n                                        <md-icon md-font-icon="icon-phone"></md-icon>\n                                        <input type="text" name="phone" ng-model="contact.phone" class="text-truncate" required>\n                                        <div ng-messages="detailForm.phone.$error" ng-show="detailForm.phone.$touched" role="alert">\n                                            <div ng-message="required">\n                                                <span translate="DASHBOARDS.ERRORS.PHONE_REQUIRED">Phone name field is required</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.MOBILE">Mobile</label>\n                                        <md-icon md-font-icon="icon-cellphone-iphone"></md-icon>\n                                        <input type="text" name="mobile" ng-model="contact.mobile" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.EMAIL">Email</label>\n                                        <md-icon md-font-icon="icon-email" class="email"></md-icon>\n                                        <input type="email" name="email" ng-model="contact.email" class="text-truncate">\n                                        <div ng-messages="detailForm.firstName.$error" ng-show="detailForm.firstName.$touched" role="alert">\n                                            <div ng-message="email">\n                                                <span translate="DASHBOARDS.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                            </div>\n                                        </div>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.FAX">Fax</label>\n                                        <md-icon md-font-icon="icon-deskphone"></md-icon>\n                                        <input type="text" name="fax" ng-model="contact.fax">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.DATE_OF_BIRTH">Date of Birth</label>\n                                        <md-icon md-font-icon="icon-calendar-blank"></md-icon>\n                                        <input type="date" name="dateOfBirth" ng-model="contact.dateOfBirth" class="text-truncate">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.COMPANY">Company</label>\n                                        <md-icon md-font-icon="icon-domain" class="email"></md-icon>\n                                        <md-select name="company" ng-model="contact.CompanyId">\n                                            <md-option ng-value="company.id" ng-repeat="company in companies.rows">{{company.name}}</md-option>\n                                            <md-option ng-value="null"><em translate="DASHBOARDS.NONE">None</em></md-option>\n                                        </md-select>\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.TAG">TAG</label>\n                                        <md-icon md-font-icon="icon-tag"></md-icon>\n                                        <md-select ng-model="contact.tags" multiple>\n                                            <md-option ng-value="tag.name" ng-repeat="tag in tab.tags.rows">{{tag.name}}</md-option>\n                                        </md-select>\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.COUNTRY">Country</label>\n                                        <md-icon md-font-icon="icon-home" class="country"></md-icon>\n                                        <input type="text" name="country" ng-model="contact.country" class="text-truncate">\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.CITY">City</label>\n                                        <input type="text" name="city" ng-model="contact.city">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.STREET">Street</label>\n                                        <input type="text" name="street" ng-model="contact.street">\n                                    </md-input-container>\n                                    <div flex="5"></div>\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate="DASHBOARDS.POSTALCODE">Postal Code</label>\n                                        <input type="text" name="postalCode" ng-model="contact.postalCode">\n                                    </md-input-container>\n                                </div>\n\n                                <div layout-gt-sm="row" class="layout-gt-sm-row">\n                                    <md-input-container class="md-block" flex-gt-sm="">\n                                        <label translate translate-attr-placeholder="DASHBOARDS.NOTES">Notes</label>\n                                        <md-icon md-font-icon="icon-note"></md-icon>\n                                        <textarea ng-model="contact.description" type="text" max-rows="4"></textarea>\n                                    </md-input-container>\n                                </div>\n                            </form>\n                        </md-card>\n                        <md-card flex="25" layout-padding>\n                            <div class="h2 secondary-text text-truncate" translate="DASHBOARDS.CUSTOM_FIELDS">CUSTOM FIELDS</div>\n                            <form name="customFieldsForm" novalidate>\n\n                                \x3c!-- START INPUT LIST --\x3e\n                                <md-input-container class="md-block" ng-if="newContact">\n                                    <label translate translate-attr-placeholder="DASHBOARDS.LIST">List</label>\n                                    <md-select name="list" ng-model="contact.ListId" ng-change="getCustomFields(contact.ListId)" required>\n                                        <md-optgroup label="Lists">\n                                            <md-option ng-value="list.id" ng-repeat="list in tab.userLists.rows">#{{list.id}} - {{list.name}}</md-option>\n                                        </md-optgroup>\n                                    </md-select>\n                                </md-input-container>\n                                <md-input-container class="md-block" ng-if="!newContact">\n                                    <label translate translate-attr-placeholder="DASHBOARDS.LIST">List</label>\n                                    <md-select ng-disabled="true" name="list" ng-model="contact.ListId" required>\n                                        <md-optgroup label="Lists">\n                                            <md-option ng-value="list.id" ng-repeat="list in tab.lists.rows">#{{list.id}} - {{list.name}}</md-option>\n                                        </md-optgroup>\n                                    </md-select>\n                                </md-input-container>\n                                \x3c!-- END INPUT LIST --\x3e\n\n                                <div ng-repeat="customField in tab.customFields.rows" class="md-block" ng-switch="customField.type">\n                                    <div ng-switch-when="datetime">\n                                        <label>{{customField.alias}}</label>\n                                        <div ng-init="contact[\'cf_\' + customField.id] = getDateFromString(contact[\'cf_\' + customField.id])">\n                                            <mdp-date-picker mdp-open-on-click mdp-placeholder="Date" ng-required="customField.required" mdp-format="YYYY-MM-DD" ng-model="contact[\'cf_\' + customField.id]"></mdp-date-picker>\n                                            <mdp-time-picker mdp-open-on-click mdp-placeholder="Time" ng-required="customField.required" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="contact[\'cf_\' + customField.id]"></mdp-time-picker>\n                                        </div>\n                                    </div>\n\n                                    <div ng-switch-when="select">\n                                        <label>{{customField.alias}}</label>\n                                        <md-select ng-model="contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                                            <md-option ng-repeat="value in customField.values" ng-value="value">{{value}}</md-option>\n                                            <md-option ng-value="null"><em translate="CONTACTMANAGER.NONE">None</em></md-option>\n                                        </md-select>\n                                    </div>\n\n                                    <md-input-container ng-switch-when="switch">\n                                        <md-switch aria-label="{{customField.alias}}" ng-model="contact[\'cf_\' + customField.id]" ng-true-value="1" ng-false-value="0">\n                                            {{customField.alias}}\n                                        </md-switch>\n                                    </md-input-container>\n\n                                    <md-input-container ng-switch-default>\n                                        <label>{{customField.alias}}</label>\n                                        <input type="{{customField.type}}" ng-model="contact[\'cf_\' + customField.id]" ng-required="customField.required">\n                                    </md-input-container>\n                                </div>\n                            </form>\n                        </md-card>\n                    </div>\n                </md-content>\n            </md-tab-body>\n        </md-tab>\n\n        <md-tab ng-if="!newContact">\n            <md-tab-label>\n                <span translate="DASHBOARDS.MOTION_BULL">Motion Bull</span>\n            </md-tab-label>\n            <md-tab-body>\n                <md-card layout="row">\n                    <div class="md-background-bg" flex>\n                        <md-toolbar class="md-table-toolbar md-default">\n                            <div class="md-toolbar-tools">\n                                <span class="md-subhead" translate="CONTACTMANAGER.HOPPER">Hopper</span>\n                                <div flex></div>\n                                <ms-search-bar on-search="queryHopper.filter = query;" on-collapse="queryHopper.filter = undefined;" debounce="300"></ms-search-bar>\n                            </div>\n                        </md-toolbar>\n\n                        <md-table-container>\n                            <table md-table multiple md-progress="promise">\n                                <thead md-head md-order="queryHopper.sort" md-on-reorder="getHoppers">\n                                    <tr md-row>\n                                        <th md-column md-order-by="id">{{ \'CONTACTMANAGER.ID\' | translate }}</th>\n                                        <th md-column md-order-by="phone">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                        <th md-column md-order-by="scheduledat">{{ \'CONTACTMANAGER.SCHEDULEDAT\' | translate }}</th>\n                                    </tr>\n                                </thead>\n                                <tbody md-body>\n                                    <tr md-row ng-hide="hoppers.count">\n                                        <td md-cell colspan="3">\n                                            <div layout="row" layout-align="center center">\n                                                <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                            </div>\n                                        </td>\n                                    </tr>\n                                    <tr md-row ng-repeat="(id, hopper) in hoppers.rows">\n                                        <td md-cell>{{hopper.id}}</td>\n                                        <td md-cell>{{hopper.phone}}</td>\n                                        <td md-cell>{{hopper.scheduledat | date:\'medium\'}}</td>\n                                    </tr>\n                                </tbody>\n                            </table>\n                        </md-table-container>\n\n                        <md-table-pagination md-limit="queryHopper.limit" md-limit-options="[10, 15, 20]" md-page="queryHopper.page" md-total="{{hoppers.count}}" md-on-paginate="getHoppers" md-page-select></md-table-pagination>\n                    </div>\n                </md-card>\n\n                <md-card layout="row">\n                    <div class="md-background-bg" flex>\n                        <md-toolbar class="md-table-toolbar md-default">\n                            <div class="md-toolbar-tools">\n                                <span class="md-subhead" translate="CONTACTMANAGER.FINAL">Final</span>\n                                <div flex></div>\n                                <ms-search-bar on-search="queryFinal.filter = query;" on-collapse="queryFinal.filter = undefined;" debounce="300"></ms-search-bar>\n                            </div>\n                        </md-toolbar>\n\n                        <md-table-container>\n                            <table md-table multiple md-progress="promise">\n                                <thead md-head md-order="queryFinal.sort" md-on-reorder="getFinals">\n                                    <tr md-row>\n                                        <th md-column md-order-by="uniqueid">{{ \'CONTACTMANAGER.UNIQUEID\' | translate }}</th>\n                                        <th md-column md-order-by="calleridnum">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                        <th md-column md-order-by="statedesc">{{ \'CONTACTMANAGER.STATUS\' | translate }}</th>\n                                        <th md-column md-order-by="starttime">{{ \'CONTACTMANAGER.STARTTIME\' | translate }}</th>\n                                        <th md-column md-order-by="disposition">{{ \'CONTACTMANAGER.DISPOSITION\' | translate }}</th>\n                                    </tr>\n                                </thead>\n                                <tbody md-body>\n                                    <tr md-row ng-hide="finals.count">\n                                        <td md-cell colspan="5">\n                                            <div layout="row" layout-align="center center">\n                                                <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                            </div>\n                                        </td>\n                                    </tr>\n                                    <tr md-row ng-repeat="(id, final) in finals.rows">\n                                        <td md-cell>{{final.uniqueid}}</td>\n                                        <td md-cell>{{final.calleridnum}}</td>\n                                        <td md-cell>{{final.statedesc}}</td>\n                                        <td md-cell>{{final.starttime | date:\'medium\'}}</td>\n                                        <td md-cell>{{final.disposition}}</td>\n                                    </tr>\n                                </tbody>\n                            </table>\n                        </md-table-container>\n\n                        <md-table-pagination md-limit="queryFinal.limit" md-limit-options="[10, 15, 20]" md-page="queryFinal.page" md-total="{{finals.count}}" md-on-paginate="getFinals" md-page-select></md-table-pagination>\n                    </div>\n                </md-card>\n\n                <md-card layout="row">\n                    <div class="md-background-bg" flex>\n                        <md-toolbar class="md-table-toolbar md-default">\n                            <div class="md-toolbar-tools">\n                                <span class="md-subhead" translate="CONTACTMANAGER.HISTORY">History</span>\n                                <div flex></div>\n                                <ms-search-bar on-search="queryHistory.filter = query;" on-collapse="queryHistory.filter = undefined;" debounce="300"></ms-search-bar>\n                            </div>\n                        </md-toolbar>\n\n                        <md-table-container>\n                            <table md-table multiple md-progress="promise">\n                                <thead md-head md-order="queryHistory.sort" md-on-reorder="getHistories">\n                                    <tr md-row>\n                                        <th md-column md-order-by="uniqueid">{{ \'CONTACTMANAGER.UNIQUEID\' | translate }}</th>\n                                        <th md-column md-order-by="calleridnum">{{ \'CONTACTMANAGER.PHONE\' | translate }}</th>\n                                        <th md-column md-order-by="statedesc">{{ \'CONTACTMANAGER.STATE\' | translate }}</th>\n                                        <th md-column md-order-by="scheduledat">{{ \'CONTACTMANAGER.SCHEDULEDAT\' | translate }}</th>\n                                        <th md-column md-order-by="starttime">{{ \'CONTACTMANAGER.STARTTIME\' | translate }}</th>\n                                        <th md-column md-order-by="endtime">{{ \'CONTACTMANAGER.ENDTIME\' | translate }}</th>\n                                    </tr>\n                                </thead>\n                                <tbody md-body>\n                                    <tr md-row ng-hide="histories.count">\n                                        <td md-cell colspan="7">\n                                            <div layout="row" layout-align="center center">\n                                                <span tranlsate="CONTACTMANAGER.NO_AVAILABLE_INFO">No Available Info</span>\n                                            </div>\n                                        </td>\n                                    </tr>\n                                    <tr md-row ng-repeat="(id, history) in histories.rows">\n                                        <td md-cell>{{history.uniqueid}}</td>\n                                        <td md-cell>{{history.calleridnum}}</td>\n                                        <td md-cell>{{history.statedesc}}</td>\n                                        <td md-cell>{{history.scheduledat}}</td>\n                                        <td md-cell>{{history.starttime}}</td>\n                                        <td md-cell>{{history.endtime}}</td>\n                                    </tr>\n                                </tbody>\n                            </table>\n                        </md-table-container>\n\n                        <md-table-pagination md-limit="queryHistory.limit" md-limit-options="[10, 15, 20]" md-page="queryHistory.page" md-total="{{histories.count}}" md-on-paginate="getHistories" md-page-select></md-table-pagination>\n\n                    </div>\n                </md-card>\n            </md-tab-body>\n        </md-tab>\n    </md-tabs>\n</md-content>'),e.put("app/main/apps/dashboards/views/general/agent/directives/contact/dispose/dialog.html",'<md-dialog class="agent-dialog" aria-label="New Agent">\n    <md-dialog-content ms-scroll>\n        <div layout="row">\n            <div flex>\n                <md-radio-group ng-model="vm.choice" ng-change="vm.saveDisposition()">\n                    <md-radio-button value="fax"><span translate="DASHBOARDS.FAX">Fax</span></md-radio-button>\n                    <md-radio-button value="amd"><span translate="DASHBOARDS.ANSWER_MACHINE">Answer Machine</span></md-radio-button>\n                    <md-radio-button value="interested"><span translate="DASHBOARDS.INTERESTED">Interested</span></md-radio-button>\n                    <md-radio-button value="notinterested"><span translate="DASHBOARDS.NOT_INTERESTED">Not Interested</span></md-radio-button>\n                    <md-radio-button value="sold"><span translate="DASHBOARDS.SOLD">Sold</span></md-radio-button>\n                    <md-radio-button value="special"><span translate="DASHBOARDS.SPECIAL">Special</span></md-radio-button>\n\n                    <md-radio-button value="blacklist"><span translate="DASHBOARDS.BLACKLIST">Blacklist</span></md-radio-button>\n                    <md-radio-button value="reschedule"><span translate="DASHBOARDS.RESCHEDULE">Reschedule</span></md-radio-button>\n                </md-radio-group>\n            </div>\n            <div flex>\n                <md-radio-group ng-model="vm.choice" ng-change="vm.saveDisposition()">\n                    <md-radio-button ng-repeat="disposition in vm.dispositions.rows" value="{{disposition.name}}">{{disposition.name}}</md-radio-button>\n                </md-radio-group>\n            </div>\n        </div>\n    </md-dialog-content>\n</md-dialog>'),e.put("app/main/apps/dashboards/views/general/agent/directives/contact/reschedule/dialog.html",'<md-dialog class="agent-dialog" aria-label="New Agent">\n    <form name="dateTime" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div layout="row">\n                <div flex class="md-block">\n                    <mdp-date-picker mdp-open-on-click required name="date" mdp-placeholder="Date" mdp-format="YYYY-MM-DD" mdp-min-date="vm.hopper.minDate" ng-model="vm.hopper.dateTime">\n                        <div ng-messages="dateTime.date.$error" ng-show="dateTime.date.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="DASHBOARDS.ERRORS.DATE_REQUIRED">Date is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="DASHBOARDS.ERRORS.DATE_INVALID">Date is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-date-picker>\n                </div>\n\n                <div flex class="md-block">\n                    <mdp-time-picker mdp-open-on-click required name="time" mdp-placeholder="Time" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.hopper.dateTime">\n                        <div ng-messages="dateTime.time.$error" ng-show="dateTime.time.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="DASHBOARDS.ERRORS.TIME_REQUIRED">Time is required</span>\n                            </div>\n                            <div ng-message="format">\n                                <span translate="DASHBOARDS.ERRORS.TIME_INVALID">Time is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveDialog()" class="send-button md-accent md-raised" ng-disabled="dateTime.$invalid || dateTime.$pristine" aria-label="SAVE" translate="DASHBOARDS.SAVE" translate-attr-aria-label="DASHBOARDS.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/dashboards/views/general/agent/mycontacts/agent.general.mycontacts.html",'<div layout="rows">\n    <md-card flex="25" layout-padding>\n        <md-button translate="CONTACTMANAGER.ALL_CONTACTS" ng-click="vm.refreshContacts()"> AllContacts </md-button>\n        <md-input-container>\n            <label>Select a list</label>\n            <md-select flex="100" ng-model="vm.query.ListId" ng-change="vm.getContacts()">\n                <md-optgroup label="Lists">\n                    <md-option ng-value="list.id" ng-repeat="list in vm.lists.rows">{{list.name}}</md-option>\n                    <md-option ng-value="vm.defaultLists" ng-if="vm.lists.count > 1"><em translate="CONTACTMANAGER.ALL_CONTACTS">All</em></md-option>\n                </md-optgroup>\n            </md-select>\n        </md-input-container>\n    </md-card>\n    <md-card flex="75">\n        <md-toolbar class="md-table-toolbar md-default">\n            <div class="md-toolbar-tools">\n                <span class="md-subhead" translate="DASHBOARDS.CONTACTS">Contacts</span>\n                <div flex></div>\n                \x3c!-- <ms-search-bar on-search="vm.query.filter = query" on-collapse="vm.query.filter = undefined" debounce="300"></ms-search-bar> --\x3e\n                <md-button class="md-icon-button" ng-click="vm.openContact($event)" aria-label="add contact" translate translate-attr-label="DASHBOARDS.ADD_CONTACT">\n                    <md-icon md-font-icon="icon-plus"></md-icon>\n                </md-button>\n                <md-button class="md-icon-button" ng-click="vm.refreshContacts($event)" aria-label="refresh Contacts" translate translate-attr-label="DASHBOARDS.REFRESH_CONTACTS">\n                    <md-icon md-font-icon="icon-reload"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-table-container>\n            <table md-table md-progress="vm.promise">\n                <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getContacts">\n                    <tr md-row>\n                        <th md-column md-order-by="id">ID</th>\n                        <th md-column md-order-by="firstName">{{\'DASHBOARDS.FULLNAME\' | translate}}</th>\n                        <th md-column md-order-by="phone">{{\'DASHBOARDS.PHONE\' | translate}}</th>\n                        <th md-column md-order-by="email">{{\'DASHBOARDS.EMAIL\' | translate}}</th>\n                        <th md-column md-order-by="ListId">{{\'DASHBOARDS.LIST\' | translate}}</th>\n                        <th md-column width="10px"></th>\n                    </tr>\n                </thead>\n                <tbody md-body>\n                    <tr md-row ng-hide="vm.contacts.rows.length">\n                        <td md-cell colspan="10">\n                            <div layout="row" layout-align="center center">\n                                <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                            </div>\n                        </td>\n                    </tr>\n                    <tr md-row ng-repeat="contact in vm.contacts.rows">\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="id">{{contact.id}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="firstName">{{contact.firstName}} {{contact.lastName}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="phone">{{contact.phone}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="email">{{contact.email}}</td>\n                        <td ng-click="vm.openContact(ev, contact)" md-cell class="list">{{vm.listsMap[contact.ListId]}}</td>\n                        <td md-cell class="actions">\n                            <md-menu>\n                                <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="DASHBOARDS.MORE">\n                                    <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                </md-button>\n\n                                <md-menu-content width="3">\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.openContact(ev, contact)" translate="DASHBOARDS.EDIT">\n                                            Edit Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.mergeContact(ev, contact)" translate="DASHBOARDS.MERGE">\n                                            Merge Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                    <md-menu-item>\n                                        <md-button ng-click="vm.duplicateContact(ev, contact)" translate="DASHBOARDS.DUPLICATE">\n                                            Duplicate Contact\n                                        </md-button>\n                                    </md-menu-item>\n                                </md-menu-content>\n                            </md-menu>\n                        </td>\n                    </tr>\n                </tbody>\n            </table>\n        </md-table-container>\n\n        <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.contacts.count}}" md-on-paginate="vm.getContacts" md-page-select></md-table-pagination>\n    </md-card>\n\n</div>'),e.put("app/main/apps/dashboards/views/general/agent/recordings/agent.general.recordings.html",'<md-card>\n    <md-toolbar class="md-table-toolbar md-default">\n        <div class="md-toolbar-tools">\n            <span class="md-subhead" translate="VOICE.RECORDINGS">Recordings</span>\n            <div flex></div>\n        </div>\n    </md-toolbar>\n    <md-table-container>\n        <table md-table md-progress="vm.promise">\n            <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoiceRecordings">\n                <tr md-row>\n                    <th md-column md-order-by="type">{{ \'VOICE.TYPE\' | translate }}</th>\n                    <th md-column md-order-by="uniqueid">{{ \'VOICE.UNIQUEID\' | translate }}</th>\n                    <th md-column md-order-by="calleridnum">{{ \'VOICE.CALLER\' | translate }}</th>\n                    <th md-column md-order-by="exten">{{ \'VOICE.CALLED\' | translate }}</th>\n                    <th md-column md-order-by="connectedlinenum">{{ \'VOICE.CONNECTED\' | translate }}</th>\n                    <th md-column md-order-by="queue">{{ \'VOICE.QUEUE\' | translate }}</th>\n                    <th md-column md-order-by="rating">{{ \'VOICE.RATING\' | translate }}</th>\n                    <th md-column md-order-by="audio">{{ \'VOICE.AUDIO\' | translate }}</th>\n                    <th md-column md-order-by="createdAt">{{ \'VOICE.DATE\' | translate }}</th>\n                    <th md-column width="10px"></th>\n                </tr>\n            </thead>\n            <tbody md-body>\n                <tr md-row ng-hide="vm.voiceRecordings.rows.length">\n                    <td md-cell colspan="10">\n                        <div layout="row" layout-align="center center">\n                            <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                        </div>\n                    </td>\n                </tr>\n                <tr md-row ng-repeat="voiceRecording in vm.voiceRecordings.rows">\n                    <td md-cell class="type ">{{voiceRecording.type}}</td>\n                    <td md-cell class="uniqueid ">{{voiceRecording.uniqueid}}</td>\n                    <td md-cell class="calleridnum ">{{voiceRecording.calleridnum}}</td>\n                    <td md-cell class="exten ">{{voiceRecording.exten}}</td>\n                    <td md-cell class="connectedlinenum ">{{voiceRecording.connectedlinenum}}</td>\n                    <td md-cell class="queue ">{{voiceRecording.queue}}</td>\n                    <td md-cell class="rating ">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-show="voiceRecording.rating" ng-repeat="rating in [1,2,3,4,5] | limitTo:voiceRecording.rating"></md-icon><span ng-hide="voiceRecording.rating" translate="VOICE.NO_RATING">No rating</span></td>\n                    <td md-cell class="audio " ng-switch="voiceRecording.format">\n                        <audio controls ng-switch-when=".wav">\n                      <source ng-src="{{\'api/voice/recordings/\' + voiceRecording.id + \'/download\'}}" type="audio/wav" preload="none"></source> Your browser does not support the audio element.\n                     </audio>\n                        <span ng-switch-when=".gsm">\n                      <em>{{ \'VOICE.CANT_PLAY_GSM_AUDIO_FILES\' | translate }}</em>\n                     </span>\n                    </td>\n                    <td md-cell class="createdAt ">{{voiceRecording.createdAt | date:\'medium\' }}</td>\n                    <td md-cell class="actions">\n                        <md-menu>\n                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                            </md-button>\n\n                            <md-menu-content width="3">\n                                <md-menu-item>\n                                    <md-button ng-click="vm.downloadfile(voiceRecording, $event)" translate="VOICE.DOWNLOAD_VOICERECORDING">\n                                        Download VoiceRecording\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </td>\n                </tr>\n            </tbody>\n        </table>\n    </md-table-container>\n\n    <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voiceRecordings.count}}" md-on-paginate="vm.getVoiceRecordings" md-page-select></md-table-pagination>\n</md-card>'),e.put("app/main/apps/dashboards/views/general/user/dialer/user.general.dialer.html",'\x3c!-- WIDGET INBOUND --\x3e\n<div class="dashboard-container md-background-bg md-whiteframe-1dp">\n    <div class="pb-16" layout="row" layout-align="start center">\n        <md-icon md-font-icon="icon-phone-outgoing" class="m-0 mr-16"></md-icon>\n        <div class="h2 secondary-text" translate="DASHBOARDS.TODAY_MOTION_BULL_STATS">Today Motion Bull STATS</div>\n    </div>\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-timelapse"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-52 line-height-72">\n                        {{vm.inbound.waiting || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.WAITING\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.WAITING_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.WAITING\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-in-talk"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-52 line-height-72">\n                        {{vm.inbound.talking || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TALKING\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.TALKING_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TALKING\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-52 line-height-72">\n                        {{vm.inbound.answered || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.INBOUND_ANSWERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.INBOUND_ANSWERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.INBOUND_ANSWERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-missed"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-52 line-height-72">\n                        {{vm.inbound.abandoned || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ABANDONED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.ABANDONED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ABANDONED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-outgoing"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.inbound.total || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TOTAL_OFFERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.TOTAL_OFFERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TOTAL_OFFERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-timer-sand"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-42 line-height-72">\n                        {{ vm.inbound.avgHoldTime || \'00:00:00\' }}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_HOLD_TIME\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_HOLD_TIME_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_HOLD_TIME\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-in-talk"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-42 line-height-72">\n                        {{ vm.inbound.avgTalkTime || \'00:00:00\' }}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_TALK_TIME\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_TALK_TIME_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_TALK_TIME\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-42 line-height-72">\n                        {{ vm.inbound.answerRate || 0 }}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.INBOUND_ANSWER_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.INBOUND_ANSWER_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.INBOUND_ANSWER_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-42 line-height-72">\n                        {{ vm.inbound.abandonRate || 0 }}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ABANDON_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.ABANDON_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ABANDON_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-dots"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.inbound.originated || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ORIGINATED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.ORIGINATED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ORIGINATED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n</div>\n\x3c!-- / WIDGET OUTBOUND --\x3e\n\n\x3c!-- WIDGET INBOUND --\x3e\n<div class="dashboard-container md-background-bg md-whiteframe-1dp">\n    <div class="pb-16" layout="row" layout-align="start center">\n        <md-icon md-font-icon="icon-phone-outgoing" class="m-0 mr-16"></md-icon>\n        <div class="h2 secondary-text" translate="DASHBOARDS.TODAY_IVR_CAMPAIGNS_STATS">Today IVR campaigns stats</div>\n    </div>\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-dots"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.ivr.originated || 0}}/{{vm.ivr.limitCalls || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ORIGINATED\' | translate | uppercase}}/{{\'DASHBOARDS.LIMITED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.LIMITED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ORIGINATEDLIMITED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n</div>\n\x3c!-- / WIDGET IVR --\x3e'),e.put("app/main/apps/dashboards/views/general/user/user.general.html",'<div id="dashboard-general" class="page-layout simple right-sidenav" layout="row">\n    \x3c!-- CENTER --\x3e\n    <div class="center" flex ms-scroll>\n        \x3c!-- CONTENT --\x3e\n        <div class="content">\n            \x3c!--  NOTE: aggoiungere nel controller ng-if="vm.hasPermission()" --\x3e\n            <md-tabs md-selected="vm.currentTab" ng-if="vm.hasPermission()" md-dynamic-height>\n                <md-tab label="{{\'DASHBOARDS.VOICE\' | translate}}" ui-sref="app.dashboards.general.voice">\n                    <div ui-view="voice"></div>\n                </md-tab>\n                <md-tab label="{{\'DASHBOARDS.MOTIONDIALER\' | translate}}" ui-sref="app.dashboards.general.dialer">\n                    <div ui-view="dialer"></div>\n                </md-tab>\n            </md-tabs>\n        </div>\n        \x3c!-- END CONTENT --\x3e\n\n        <md-card ng-if="!vm.hasPermission()">\n            <md-card-header>\n                <md-card-header-text>\n                    <span class="md-title" translate="DASHBOARDS.WELCOME_TO_MOTION">Welcome to Motion</span>\n                </md-card-header-text>\n            </md-card-header>\n            <md-card-title>\n                <md-card-title-text>\n                    <span class="md-headline" translate="DASHBOARDS.WELCOME_MESSAGE">Use the left sidebar to navigate through sections.</span>\n                </md-card-title-text>\n            </md-card-title>\n            <md-card-content>\n            </md-card-content>\n        </md-card>\n    </div>\n</div>'),e.put("app/main/apps/dashboards/views/general/user/voice/user.general.voice.html",'\x3c!-- WIDGET INBOUND --\x3e\n<div class="dashboard-container md-background-bg md-whiteframe-1dp">\n    <div class="pb-16" layout="row" layout-align="start center">\n        <md-icon md-font-icon="icon-phone-incoming" class="m-0 mr-16"></md-icon>\n        <div class="h2 secondary-text" translate="DASHBOARDS.TODAY_INBOUND_STATS">Today Inbound STATS</div>\n    </div>\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-timelapse"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-52 line-height-72">\n                        {{vm.inbound.waiting || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.WAITING\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.WAITING_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.WAITING\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-in-talk"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-52 line-height-72">\n                        {{vm.inbound.talking || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TALKING\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.TALKING_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TALKING\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-52 line-height-72">\n                        {{vm.inbound.answered || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.INBOUND_ANSWERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.INBOUND_ANSWERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.INBOUND_ANSWERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-missed"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-52 line-height-72">\n                        {{vm.inbound.abandoned || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ABANDONED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.ABANDONED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ABANDONED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-incoming"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.inbound.total || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TOTAL_OFFERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.TOTAL_OFFERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TOTAL_OFFERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-timer-sand"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-42 line-height-72">\n                        {{ vm.inbound.avgHoldTime || \'00:00:00\' }}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_HOLD_TIME\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_HOLD_TIME_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_HOLD_TIME\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-in-talk"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-42 line-height-72">\n                        {{ vm.inbound.avgTalkTime || \'00:00:00\' }}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_TALK_TIME\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_TALK_TIME_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_TALK_TIME\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-42 line-height-72">\n                        {{ vm.inbound.answerRate || 0 }}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.INBOUND_ANSWER_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.INBOUND_ANSWER_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.INBOUND_ANSWER_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-42 line-height-72">\n                        {{ vm.inbound.abandonRate || 0 }}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.ABANDON_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.ABANDON_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.ABANDON_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-dots"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-52 line-height-72">\n                        {{vm.inbound.unmanaged || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.UNMANAGED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.UNMANAGED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.UNMANAGED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n</div>\n\x3c!-- / WIDGET INBOUND --\x3e\n\n\x3c!-- WIDGET OUTBOUND --\x3e\n<div class="dashboard-container md-background-bg md-whiteframe-1dp">\n    <div class="pb-16" layout="row" layout-align="start center">\n        <md-icon md-font-icon="icon-phone-outgoing" class="m-0 mr-16"></md-icon>\n        <div class="h2 secondary-text" translate="DASHBOARDS.TODAY_OUTBOUND_STATS">Today Outbound STATS</div>\n    </div>\n    \x3c!-- WIDGET GROUP --\x3e\n    <div class="widget-group" layout="row" flex="100" layout-wrap>\n\n        \x3c!-- WIDGET 1 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone-outgoing"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="light-blue-fg font-size-52 line-height-72">\n                        {{vm.outbound.total || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TOTAL\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 light-blue-fg secondary-text text-truncate">{{\'DASHBOARDS.TOTAL_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TOTAL\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 1 --\x3e\n\n        \x3c!-- WIDGET 2 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="ph-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-phone"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="red-fg font-size-52 line-height-72">\n                        {{vm.outbound.answered || 0}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.OUTBOUND_ANSWERED\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 red-fg secondary-text text-truncate">{{\'DASHBOARDS.OUTBOUND_ANSWERED_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.OUTBOUND_ANSWERED\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 2 --\x3e\n\n        \x3c!-- WIDGET 3 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-clock"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="orange-fg font-size-42 line-height-72">\n                        {{vm.outbound.sumDuration || 0 | secToTime | date:\'HH:mm:ss\'}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.TOT_DURATION\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 orange-fg secondary-text text-truncate">{{\'DASHBOARDS.TOT_DURATION_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.TOT_DURATION\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 3 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-division"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-grey-fg font-size-42 line-height-72">\n                        {{vm.outbound.total ? ((vm.outbound.sumDuration / vm.outbound.total) | number: 0) : 0 | secToTime | date:\'HH:mm:ss\'}}\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.AVG_DURATION\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-grey-fg secondary-text text-truncate">{{\'DASHBOARDS.AVG_DURATION_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.AVG_DURATION\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n        \x3c!-- WIDGET 4 --\x3e\n        <ms-widget flippable="true" layout="column" flex="100" flex-gt-xs="50" flex-gt-md="20">\n\n            \x3c!-- Front --\x3e\n            <ms-widget-front class="grey-50-bg">\n                <div class="pl-16 pr-8 pv-16 h-55" layout="row" layout-align="space-between center">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="more">\n                        <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                    </md-button>\n                    <md-button style="cursor:auto" class="md-icon-button" aria-label="more">\n                        <md-icon md-font-icon="icon-percent"></md-icon>\n                    </md-button>\n                </div>\n\n                <div class="pt-8 pb-32" layout="column" layout-align="center center">\n                    <div class="blue-green-fg font-size-42 line-height-72">\n                        {{vm.outbound.total ? (vm.outbound.answered / vm.outbound.total * 100) : 0 | number: 1}}%\n                    </div>\n                    <div class="h3 secondary-text font-weight-500">{{\'DASHBOARDS.OUTBOUND_ANSWER_RATE\' | translate | uppercase}}</div>\n                </div>\n\n                <div class="p-16 grey-200-bg text-center border-top" layout-align="start center">\n                    <span class="h6 blue-green-fg secondary-text text-truncate">{{\'DASHBOARDS.OUTBOUND_ANSWER_RATE_TEXT\' | translate | uppercase}}</span>\n                </div>\n            </ms-widget-front>\n            \x3c!-- / Front --\x3e\n\n            \x3c!-- Back --\x3e\n            <ms-widget-back class="p-16 grey-50-bg">\n                <div class="flip-to-front">\n                    <md-button class="md-icon-button" ng-click="flipWidget()" aria-label="Flip widget">\n                        <md-icon md-font-icon="icon-close" class="s16"></md-icon>\n                    </md-button>\n                </div>\n\n                <div>\n                    {{\'DASHBOARDS.HELP.OUTBOUND_ANSWER_RATE\' | translate}}\n                </div>\n            </ms-widget-back>\n            \x3c!-- / Back --\x3e\n\n        </ms-widget>\n        \x3c!-- / WIDGET 4 --\x3e\n\n    </div>\n    \x3c!-- / WIDGET GROUP --\x3e\n</div>\n\x3c!-- / WIDGET OUTBOUND --\x3e'),e.put("app/main/apps/fax/views/faxAccounts/create/dialog.html",'<md-dialog class="faxAccount-dialog" aria-label="New FaxAccount">\n    <form name="faxAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="FAX.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.faxAccount.name" required autofocus>\n                <div ng-messages="faxAccountForm.name.$error" ng-show="faxAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.TRUNK">trunk</label>\n                <md-select ng-model="vm.faxAccount.TrunkId" required>\n                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                </md-select>\n                <div ng-messages="faxAccountForm.TrunkId.$error" ng-show="faxAccountForm.TrunkId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.TRUNK_REQUIRED">trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.LOCALSTATIONID">localstationid</label>\n                <input type="text" name="localstationid" ng-model="vm.faxAccount.localstationid" required>\n                <div class="hint"><span translate="FAX.HELP.LOCALSTATIONID"></span></div>\n                <div ng-messages="faxAccountForm.localstationid.$error" ng-show="faxAccountForm.localstationid.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.LOCALSTATIONID_REQUIRED">localstationid field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.faxAccount.description">\n                <div ng-messages="faxAccountForm.description.$error" ng-show="faxAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFaxAccount" ng-click="vm.saveFaxAccount()" class="send-button md-accent md-raised" ng-disabled="faxAccountForm.$invalid || faxAccountForm.$pristine" aria-label="SAVE" translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFaxAccount" ng-click="vm.addNewFaxAccount()" class="send-button md-accent md-raised" ng-disabled="faxAccountForm.$invalid" aria-label="ADD" translate="FAX.ADD_FAXACCOUNT" translate-attr-aria-label="FAX.ADD_FAXACCOUNT">\n                    ADD FAXACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFaxAccount" ng-click="vm.deleteFaxAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="FAX.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="FAX.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/fax/views/faxAccounts/edit/faxDispositions/dialog.html",'<md-dialog class="faxDisposition-dialog" aria-label="New FaxDisposition">\n    <form name="faxDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="FAX.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.faxDisposition.name" required autofocus>\n                <div ng-messages="faxDispositionForm.name.$error" ng-show="faxDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFaxDisposition" ng-click="vm.saveFaxDisposition()" class="send-button md-accent md-raised" ng-disabled="faxDispositionForm.$invalid || faxDispositionForm.$pristine" aria-label="SAVE" translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFaxDisposition" ng-click="vm.addNewFaxDisposition()" class="send-button md-accent md-raised" ng-disabled="faxDispositionForm.$invalid" aria-label="ADD" translate="FAX.ADD_FAXDISPOSITION" translate-attr-aria-label="FAX.ADD_FAXDISPOSITION">\n                    ADD FAXDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFaxDisposition" ng-click="vm.deleteFaxDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="FAX.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="FAX.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/fax/views/faxAccounts/edit/view.html",'<div id="fax-faxAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-faxAccounts-button md-icon-button" aria-label="Go to faxAccounts" ng-click="vm.gotoFaxAccounts()" translate translate-attr-aria-label="FAX.GO_TO_FAXACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.faxAccount.userpic" class="faxAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.faxAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.faxAccount.userpic" class="faxAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/faxAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.faxAccount.id}} {{vm.faxAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="FAX.CREATED_AT"></span> <span>{{vm.faxAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveFaxAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (advancedForm.$invalid) || (faxDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid)"\n                translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.faxAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.HEADERINFO">headerinfo</label>\n                                <input type="text" name="headerinfo" ng-model="vm.faxAccount.headerinfo" required>\n                                <div class="hint"><span translate="FAX.HELP.HEADERINFO"></span></div>\n                                <div ng-messages="generalForm.headerinfo.$error" ng-show="generalForm.headerinfo.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.HEADERINFO_REQUIRED">headerinfo field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.TRUNK">trunk</label>\n                                <md-select ng-model="vm.faxAccount.TrunkId" required>\n                                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkId.$error" ng-show="generalForm.TrunkId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.TRUNK_REQUIRED">trunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.LOCALSTATIONID">localstationid</label>\n                                <input type="text" name="localstationid" ng-model="vm.faxAccount.localstationid" required>\n                                <div class="hint"><span translate="FAX.HELP.LOCALSTATIONID"></span></div>\n                                <div ng-messages="generalForm.localstationid.$error" ng-show="generalForm.localstationid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.LOCALSTATIONID_REQUIRED">localstationid field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.LIST">List</label>\n                                <md-select ng-model="vm.faxAccount.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.faxAccount.fidelity" aria-label="fidelity"><span translate="FAX.FIDELITY">fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.faxAccount.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.faxAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.faxAccount.ecm" aria-label="ECM"><span translate="FAX.ECM">ECM</span></md-switch>\n                                <div class="hint"><span translate="FAX.HELP.ECM"></span></div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.MINRATE">minrate</label>\n                                <md-select ng-model="vm.faxAccount.minrate" required>\n                                    <md-option ng-value="\'2400\'">2400</md-option>\n                                    <md-option ng-value="\'4800\'">4800</md-option>\n                                    <md-option ng-value="\'7200\'">7200</md-option>\n                                    <md-option ng-value="\'9600\'">9600</md-option>\n                                    <md-option ng-value="\'12000\'">12000</md-option>\n                                    <md-option ng-value="\'14400\'">14400</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="FAX.HELP.MINRATE"></span></div>\n                                <div ng-messages="advancedForm.minrate.$error" ng-show="advancedForm.minrate.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.MINRATE_REQUIRED">minrate field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.MAXRATE">maxrate</label>\n                                <md-select ng-model="vm.faxAccount.maxrate" required>\n                                    <md-option ng-value="\'2400\'">2400</md-option>\n                                    <md-option ng-value="\'4800\'">4800</md-option>\n                                    <md-option ng-value="\'7200\'">7200</md-option>\n                                    <md-option ng-value="\'9600\'">9600</md-option>\n                                    <md-option ng-value="\'12000\'">12000</md-option>\n                                    <md-option ng-value="\'14400\'">14400</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="FAX.HELP.MAXRATE"></span></div>\n                                <div ng-messages="advancedForm.maxrate.$error" ng-show="advancedForm.maxrate.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.MAXRATE_REQUIRED">maxrate field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.MODEM">modem</label>\n                                <input type="text" name="modem" ng-model="vm.faxAccount.modem" required>\n                                <div class="hint"><span translate="FAX.HELP.MODEM"></span></div>\n                                <div ng-messages="advancedForm.modem.$error" ng-show="advancedForm.modem.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.MODEM_REQUIRED">modem field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.GATEWAY">gateway</label>\n                                <input type="text" name="gateway" ng-model="vm.faxAccount.gateway" required>\n                                <div class="hint"><span translate="FAX.HELP.GATEWAY"></span></div>\n                                <div ng-messages="advancedForm.gateway.$error" ng-show="advancedForm.gateway.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.GATEWAY_REQUIRED">gateway field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.FAXDETECT">faxdetect</label>\n                                <input type="text" name="faxdetect" ng-model="vm.faxAccount.faxdetect" required>\n                                <div class="hint"><span translate="FAX.HELP.FAXDETECT"></span></div>\n                                <div ng-messages="advancedForm.faxdetect.$error" ng-show="advancedForm.faxdetect.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.FAXDETECT_REQUIRED">faxdetect field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.T38TIMEOUT">t38timeout</label>\n                                <input type="number" name="t38timeout" ng-model="vm.faxAccount.t38timeout" required>\n                                <div class="hint"><span translate="FAX.HELP.T38TIMEOUT"></span></div>\n                                <div ng-messages="advancedForm.t38timeout.$error" ng-show="advancedForm.t38timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.T38TIMEOUT_REQUIRED">t38timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.SIP">SIP</label>\n                                <md-select ng-model="vm.faxAccount.tech" required>\n                                    <md-option ng-value="\'SIP\'">SIP</md-option>\n                                    <md-option ng-value="\'IAX\'">IAX</md-option>\n                                    <md-option ng-value="\'DADHI\'">DADHI</md-option>\n                                    <md-option ng-value="\'KHOMP\'">KHOMP</md-option>\n                                </md-select>\n                                <div ng-messages="advancedForm.tech.$error" ng-show="advancedForm.tech.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.SIP_REQUIRED">SIP field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container faxdispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="FaxAccountFaxDispositionsController as vm_dc" ng-init="vm_dc.init(vm.faxAccount)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedFaxAccountFaxDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="FAX.FAXDISPOSITIONS">FaxDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event)" aria-label="add faxDisposition" translate translate-attr-label="FAX.ADD_FAXDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedFaxAccountFaxDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedFaxAccountFaxDispositions.length}} {{vm_dc.selectedFaxAccountFaxDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedFaxAccountFaxDispositions($event)" aria-label="delete selected" translate translate-attr-label="FAXACCOUNTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedFaxAccountFaxDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getFaxAccountFaxDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'FAX.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'FAX.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'FAX.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="faxDisposition" md-select-id="id" ng-repeat="faxDisposition in vm_dc.faxAccountFaxDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event, faxDisposition)" md-cell>{{faxDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event, faxDisposition)" md-cell>{{faxDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event, faxDisposition)" md-cell>{{faxDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="FAX.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditFaxAccountFaxDisposition($event, faxDisposition)" translate="FAX.EDIT_FAXDISPOSITION">\n                                                                Edit FaxDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(faxDisposition, $event)" translate="FAX.DELETE_FAXDISPOSITION">\n                                                                Delete FaxDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.faxAccountFaxDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="FAX.NO_FAXDISPOSITION_AVAILABLE">No faxdisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.faxAccountFaxDispositions.count}}" md-on-paginate="vm_dc.getFaxAccountFaxDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.faxAccount.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.faxAccount.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="FAX.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="faxAccount-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.faxAccount.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.faxAccount.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="FAX.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="faxAccount-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.faxAccount.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.faxAccount.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="FAX.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxAccount-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/fax/views/faxAccounts/faxAccounts.html",'<div id="faxAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-deskphone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="FAX.FAXACCOUNTS">FaxAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="FAX.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedFaxAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedFaxAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="FAX.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-faxAccounts-count">\n                    <span>{{vm.selectedFaxAccounts.length}}</span>\n                <span translate="FAX.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="FAXACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllFaxAccounts()" translate="FAX.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectFaxAccounts()" translate="FAX.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedFaxAccounts" filename="faxAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedFaxAccounts($event)" aria-label="delete selected" translate translate-attr-label="FAXACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- FAXACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedFaxAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getFaxAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'FAX.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'FAX.NAME\' | translate }}</th>\n                                <th md-column md-order-by="TrunkId">{{ \'FAX.TRUNK\' | translate }}</th>\n                                <th md-column md-order-by="localstationid">{{ \'FAX.LOCALSTATIONID\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'FAX.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.faxAccounts.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="FAX.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="faxAccount" md-select-id="id" ng-repeat="faxAccount in vm.faxAccounts.rows">\n                                <td md-cell ng-if="faxAccount.userpic"><img class="avatar" alt="{{faxAccount.name}}" ng-src="api/users/{{faxAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!faxAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{faxAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="id ">{{faxAccount.id}}</td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="name ">{{faxAccount.name}}</td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="TrunkId ">{{ TrunkId = vm.trunks[faxAccount.TrunkId]; TrunkId.name }}</td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="localstationid ">{{faxAccount.localstationid}}</td>\n                                <td ng-click="vm.createOrEditFaxAccount($event, faxAccount)" md-cell class="description ">{{faxAccount.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="FAX.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(faxAccount, $event)" translate="FAX.EDIT_FAXACCOUNT">\n                                                    Edit FaxAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(faxAccount, $event)" translate="FAX.DELETE_FAXACCOUNT">\n                                                    Delete FaxAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.faxAccounts.count}}" md-on-paginate="vm.getFaxAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / FAXACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD FAXACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-faxAccount-button" ng-click="vm.createOrEditFaxAccount($event)" aria-label="add faxAccount" translate translate-attr-aria-label="FAX.ADD_FAXACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD FAXACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/fax/views/faxQueues/create/dialog.html",'<md-dialog class="faxQueue-dialog" aria-label="New FaxQueue">\n    <form name="faxQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="FAX.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.faxQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="faxQueueForm.name.$error" ng-show="faxQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="FAX.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.faxQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="faxQueueForm.strategy.$error" ng-show="faxQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.faxQueue.timeout" required>\n                <div ng-messages="faxQueueForm.timeout.$error" ng-show="faxQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="FAX.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.faxQueue.description">\n                <div ng-messages="faxQueueForm.description.$error" ng-show="faxQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="FAX.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFaxQueue" ng-click="vm.saveFaxQueue()" class="send-button md-accent md-raised" ng-disabled="faxQueueForm.$invalid || faxQueueForm.$pristine" aria-label="SAVE" translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFaxQueue" ng-click="vm.addNewFaxQueue()" class="send-button md-accent md-raised" ng-disabled="faxQueueForm.$invalid" aria-label="ADD" translate="FAX.ADD_FAXQUEUE" translate-attr-aria-label="FAX.ADD_FAXQUEUE">\n                    ADD FAXQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFaxQueue" ng-click="vm.deleteFaxQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="FAX.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="FAX.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/fax/views/faxQueues/edit/teamadd/teamadd.html",'<md-dialog class="faxQueue-dialog" aria-label="faxQueue">\n    <form name="faxQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="FAX.TEAMADD_FAXQUEUE">Add Team in FAXQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="FAX.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="faxQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/fax/views/faxQueues/edit/view.html",'<div id="fax-faxQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-faxQueues-button md-icon-button" aria-label="Go to faxQueues" ng-click="vm.gotoFaxQueues()" translate translate-attr-aria-label="FAX.GO_TO_FAXQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.faxQueue.userpic" class="faxQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.faxQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.faxQueue.userpic" class="faxQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/faxQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.faxQueue.id}} {{vm.faxQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="FAX.CREATED_AT"></span> <span>{{vm.faxQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.faxQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="FAX.TEAMADD_FAXQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveFaxQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="FAX.SAVE" translate-attr-aria-label="FAX.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="FAX.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="faxQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="FAX.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.faxQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="FAX.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.faxQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.faxQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="FAX.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.faxQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="FAX.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/fax/views/faxQueues/faxQueues.html",'<div id="faxQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-deskphone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="FAX.FAXQUEUES">FaxQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="FAX.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedFaxQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedFaxQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="FAX.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-faxQueues-count">\n                    <span>{{vm.selectedFaxQueues.length}}</span>\n                <span translate="FAX.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="FAXQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllFaxQueues()" translate="FAX.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectFaxQueues()" translate="FAX.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedFaxQueues" filename="faxQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedFaxQueues($event)" aria-label="delete selected" translate translate-attr-label="FAXQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- FAXQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedFaxQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getFaxQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'FAX.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'FAX.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'FAX.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.faxQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="FAX.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="faxQueue" md-select-id="id" ng-repeat="faxQueue in vm.faxQueues.rows">\n                                <td md-cell ng-if="faxQueue.userpic"><img class="avatar" alt="{{faxQueue.name}}" ng-src="api/users/{{faxQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!faxQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{faxQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditFaxQueue($event, faxQueue)" md-cell class="id ">{{faxQueue.id}}</td>\n                                <td ng-click="vm.createOrEditFaxQueue($event, faxQueue)" md-cell class="name ">{{faxQueue.name}}</td>\n                                <td ng-click="vm.createOrEditFaxQueue($event, faxQueue)" md-cell class="strategy ">{{ vm.arraystrategy[faxQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="FAX.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(faxQueue, $event)" translate="FAX.EDIT_FAXQUEUE">\n                                                    Edit FaxQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(faxQueue, $event)" translate="FAX.DELETE_FAXQUEUE">\n                                                    Delete FaxQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.faxQueues.count}}" md-on-paginate="vm.getFaxQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / FAXQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD FAXQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-faxQueue-button" ng-click="vm.createOrEditFaxQueue($event)" aria-label="add faxQueue" translate translate-attr-aria-label="FAX.ADD_FAXQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD FAXQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/help/views/about/about.html",'<div id="maintenance" class="flex-scrollable" layout="column" ms-scroll>\n    <div id="maintenance-form-wrapper" layout="column" layout-align="center center">\n        <div id="maintenance-form" class="md-whiteframe-8dp">\n            <div>\n                <img src="assets/images/logos/login.png" alt="motion_logo_login" />\n            </div>\n\n            <br>\n\n            <div>\n                <div class="info-line">\n                    <div class="title">Useful pages</div>\n                </div>\n                <section layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                    <div layout="column">\n                        <a class="md-fab md-mini md-button grey-bg" href="https://wiki.xcallymotion.com/display/XMD/Welcome" target="_blank">\n                            <md-icon md-font-icon="icon-wikipedia"></md-icon>\n                        </a>\n                        <div class="info"><a href="https://wiki.xcallymotion.com/display/XMD/Welcome" target="_blank">Wiki</a></div>\n                    </div>\n\n                    <div layout="column">\n                        <a class="md-fab md-mini md-button md-accent" href="/apidoc" target="_blank">\n                            <md-icon md-font-icon="icon-apple-mobileme"></md-icon>\n                        </a>\n                        <div class="info"><a href="/apidoc" target="_blank">API</a></div>\n                    </div>\n\n                    <div layout="column">\n                        <a class="md-fab md-mini md-button orange-bg" href="http://www.xcally.com/bar/phonebar/Setup.msi" target="_blank">\n                            <md-icon md-font-icon="icon-headphones"></md-icon>\n                        </a>\n                        <div class="info"><a href="http://www.xcally.com/bar/phonebar/Setup.msi" target="_blank">Phonebar</a></div>\n                    </div>\n\n                    <div layout="column">\n                        <a class="md-fab md-mini md-button green-bg" href="/demo" target="_blank">\n                            <md-icon md-font-icon="icon-console"></md-icon>\n                        </a>\n                        <div class="info"><a href="/demo" target="_blank">Demo</a></div>\n                    </div>\n\n                </section>\n\n                <br>\n\n                <div class="info-line">\n                    <div class="title">Follow us on</div>\n                </div>\n                <section layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                    <a class="md-fab md-mini md-button blue-900-bg" href="https://www.facebook.com/xcallymotion" target="_blank">\n                        <md-icon md-font-icon="icon-facebook"></md-icon>\n                    </a>\n\n                    <a class="md-fab md-mini md-button" href="https://twitter.com/xcallymotion" target="_blank">\n                        <md-icon md-font-icon="icon-twitter"></md-icon>\n                    </a>\n                    <a class="md-fab md-mini md-button md-warn" href="https://plus.google.com/+Xcally" target="_blank">\n                        <md-icon md-font-icon="icon-google-plus"></md-icon>\n                    </a>\n                    <a class="md-fab md-mini md-button light-blue-800-bg" href="https://www.linkedin.com/company/xcally" target="_blank">\n                        <md-icon md-font-icon="icon-linkedin"></md-icon>\n                    </a>\n                </section>\n\n                <br>\n\n                <div class="info-line">\n                    <div class="title" translate="HELP.CONTACT_US">Contact Us</div>\n                </div>\n                <div class="info-line">\n                    <div class="info"><a href="mailto:support@xcally.com" target="_top">support@xcally.com</a></div>\n                </div>\n\n                <br>\n\n                <div class="info">xCALLY Motion <u>{{vm.info.current}}</u> | <a href="https://wiki.xcallymotion.com/display/XMV/Motion+GUI#MotionGUI-Version{{vm.info.current}}" target="_blank">Changelog</a></div>\n\n                <br>\n\n                <div class="info">xCALLY© 2016 - 2018 | Powered by Xenialab | <a href="http://www.xcally.com/support/eula-xcally-license-en.pdf" target="_blank">EULA</a></div>\n\n                <br>\n\n                <div class="info"><a href="https://www.xenialab.com/" target="_blank">www.xenialab.com</a> | <a href="https://www.xcallymotion.com/" target="_blank">www.xcallymotion.com</a></div>\n            </div>\n        </div>\n    </div>\n</div>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/create/dialog.html",'<md-dialog class="freshdeskAccount-dialog" aria-label="New FreshdeskAccount">\n    <form name="freshdeskAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.freshdeskAccount.name" required autofocus>\n                <div ng-messages="freshdeskAccountForm.name.$error" ng-show="freshdeskAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                <input type="text" name="username" ng-model="vm.freshdeskAccount.username" required>\n                <div ng-messages="freshdeskAccountForm.username.$error" ng-show="freshdeskAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.URI">Uri</label>\n                <input type="url" name="remoteUri" ng-model="vm.freshdeskAccount.remoteUri" required>\n                <div ng-messages="freshdeskAccountForm.remoteUri.$error" ng-show="freshdeskAccountForm.remoteUri.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.APIKEY">ApiKey</label>\n                <input type="text" name="apiKey" ng-model="vm.freshdeskAccount.apiKey" required>\n                <div ng-messages="freshdeskAccountForm.apiKey.$error" ng-show="freshdeskAccountForm.apiKey.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.APIKEY_REQUIRED">ApiKey field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                <input type="url" name="serverUrl" ng-model="vm.freshdeskAccount.serverUrl">\n                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                <div ng-messages="freshdeskAccountForm.serverUrl.$error" ng-show="freshdeskAccountForm.serverUrl.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.freshdeskAccount.description">\n                <div ng-messages="freshdeskAccountForm.description.$error" ng-show="freshdeskAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFreshdeskAccount" ng-click="vm.saveFreshdeskAccount()" class="send-button md-accent md-raised" ng-disabled="freshdeskAccountForm.$invalid || freshdeskAccountForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFreshdeskAccount" ng-click="vm.addNewFreshdeskAccount()" class="send-button md-accent md-raised" ng-disabled="freshdeskAccountForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_FRESHDESKACCOUNT" translate-attr-aria-label="INTEGRATIONS.ADD_FRESHDESKACCOUNT">\n                    ADD FRESHDESKACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFreshdeskAccount" ng-click="vm.deleteFreshdeskAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/edit/configurations/dialog.html",'<md-dialog class="freshdeskConfiguration-dialog" aria-label="New FreshdeskConfiguration">\n    <form name="freshdeskConfigurationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.freshdeskConfiguration.name" required autofocus>\n                <div ng-messages="freshdeskConfigurationForm.name.$error" ng-show="freshdeskConfigurationForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.freshdeskConfiguration.channel" required>\n\n                    <md-option ng-value="\'voice\'"> {{ \'INTEGRATIONS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="freshdeskConfigurationForm.channel.$error" ng-show="freshdeskConfigurationForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.TYPE">Type</label>\n                <md-select ng-model="vm.freshdeskConfiguration.type" required>\n\n                    <md-option ng-value="\'inbound\'"> {{ \'INTEGRATIONS.INBOUND_IN_QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'outbound\'"> {{ \'INTEGRATIONS.OUTBOUND_CALL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="freshdeskConfigurationForm.type.$error" ng-show="freshdeskConfigurationForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newFreshdeskConfiguration" ng-click="vm.saveFreshdeskConfiguration()" class="send-button md-accent md-raised" ng-disabled="freshdeskConfigurationForm.$invalid || freshdeskConfigurationForm.$pristine" aria-label="SAVE"\n                    translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newFreshdeskConfiguration" ng-click="vm.addNewFreshdeskConfiguration()" class="send-button md-accent md-raised" ng-disabled="freshdeskConfigurationForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_FRESHDESKCONFIGURATION"\n                    translate-attr-aria-label="INTEGRATIONS.ADD_FRESHDESKCONFIGURATION">\n                    ADD FRESHDESKCONFIGURATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newFreshdeskConfiguration" ng-click="vm.deleteFreshdeskConfiguration($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/edit/item/dialog.html",'<md-dialog class="freshdeskAccount-item-dialog" aria-label="New Item">\n    <form name="freshdeskAccountItemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div ng-switch="vm.type">\n                <div ng-switch-when="subject">\n                    \x3c!-- SUBJECT SECTION --\x3e\n                    <div ng-include="\'/subject.html\'"></div>\n                    \x3c!-- / SUBJECT SECTION --\x3e\n                </div>\n                <div ng-switch-when="description">\n                    \x3c!-- DESCRIPTION SECTION --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="INTEGRATIONS.TYPE">Type</label>\n                        <md-select name="type" ng-model="vm.item.type" required>\n                            <md-option value="string">String</md-option>\n                            <md-option value="keyValue">Key Value</md-option>\n                        </md-select>\n                        <div ng-messages="freshdeskAccountItemForm.type.$error" ng-show="freshdeskAccountItemForm.type.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n                        <label translate="INTEGRATIONS.CONTENT">Content</label>\n                        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n                        <div ng-messages="freshdeskAccountItemForm.content.$error" ng-show="freshdeskAccountItemForm.content.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <div ng-if="vm.item.type == \'keyValue\'">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.KEY">Key</label>\n                            <input type="text" name="key" ng-model="vm.item.key" required md-autofocus>\n                            <div ng-messages="freshdeskAccountItemForm.key.$error" ng-show="freshdeskAccountItemForm.key.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.TYPE">Type</label>\n                            <md-select name="keyType" ng-model="vm.item.keyType" required>\n                                <md-option value="string">String</md-option>\n                                <md-option value="variable">Variable</md-option>\n                                <md-option value="customVariable">Custom Variable</md-option>\n                            </md-select>\n                            <div ng-messages="freshdeskAccountItemForm.keyType.$error" ng-show="freshdeskAccountItemForm.keyType.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'string\'">\n                            <label translate="INTEGRATIONS.CONTENT">Content</label>\n                            <input type="text" name="keyContent" ng-model="vm.item.keyContent" required md-autofocus>\n                            <div ng-messages="freshdeskAccountItemForm.keyContent.$error" ng-show="freshdeskAccountItemForm.keyContent.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'variable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n                                <md-optgroup label="Voice: Queue">\n                                    <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Voice: Outbound">\n                                    <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="freshdeskAccountItemForm.variableName.$error" ng-show="freshdeskAccountItemForm.variableName.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'customVariable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select ng-model="vm.item.VariableId" required>\n                                <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n                            </md-select>\n                        </md-input-container>\n                    </div>\n                    \x3c!-- / DESCRIPTION SECTION --\x3e\n                </div>\n                <div ng-switch-when="field">\n                    \x3c!-- FIELD SECTION --\x3e\n                    <div ng-if="vm.accountConnected">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.FIELD">FIELD</label>\n                            <md-select name="customField" ng-model="vm.customField" required>\n                                <md-optgroup label="Standard">\n                                    <md-option ng-value="standard" ng-repeat="standard in vm.fields | filter: {custom: false} ">{{standard.name}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Custom">\n                                    <md-option ng-value="custom" ng-repeat="custom in vm.fields | filter: {custom: true} ">{{custom.name}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="freshdeskAccountItemForm.customField.$error" ng-show="freshdeskAccountItemForm.customField.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.FIELD_REQUIRED">Field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- CUSTOM FIELD --\x3e\n                        <div ng-if="vm.customField && vm.customField.custom" ng-include="\'/subject.html\'"></div>\n                        \x3c!-- / CUSTOM FIELD --\x3e\n                        \x3c!-- STANDARD FIELD --\x3e\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="option" ng-model="vm.item.content" required>\n                                <md-option ng-value="option.value" ng-repeat="option in vm.customField.options">{{option.name}}</md-option>\n                            </md-select>\n                            <div ng-messages="freshdeskAccountItemForm.option.$error" ng-show="freshdeskAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && !vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <input type="text" name="option" ng-model="vm.item.content" required>\n                            <div ng-messages="freshdeskAccountItemForm.option.$error" ng-show="freshdeskAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- / STANDARD FIELD --\x3e\n                    </div>\n                    <div ng-if="!vm.accountConnected">\n                        <p>Account is not connected. Please check your configurations!</p>\n                    </div>\n                    \x3c!-- / FIELD SECTION --\x3e\n                </div>\n                <div ng-switch-default>\n                    <p>No Item</p>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newItem" ng-click="vm.saveItem()" class="send-button md-accent md-raised" ng-disabled="freshdeskAccountItemForm.$invalid || freshdeskAccountItemForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newItem" ng-click="vm.addNewItem()" class="send-button md-accent md-raised" ng-disabled="freshdeskAccountItemForm.$invalid || freshdeskAccountItemForm.$pristine" aria-label="ADD" translate="INTEGRATIONS.ADD" translate-attr-aria-label="INTEGRATIONS.ADD">\n                    ADD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newItem" ng-click="vm.deleteItem($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>\n\n<script type="text/ng-template" id="/subject.html">\n    <md-input-container class="md-block">\n        <label translate="INTEGRATIONS.TYPE">Type</label>\n        <md-select name="type" ng-model="vm.item.type" required>\n            <md-option value="string">String</md-option>\n            <md-option value="variable">Variable</md-option>\n            <md-option value="customVariable">Custom Variable</md-option>\n        </md-select>\n        <div ng-messages="freshdeskAccountItemForm.type.$error" ng-show="freshdeskAccountItemForm.type.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n        <label translate="INTEGRATIONS.CONTENT">Content</label>\n        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n        <div ng-messages="freshdeskAccountItemForm.content.$error" ng-show="freshdeskAccountItemForm.content.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'variable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n            <md-optgroup label="Voice: Queue">\n                <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n            </md-optgroup>\n            <md-optgroup label="Voice: Outbound">\n                <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n            </md-optgroup>\n        </md-select>\n        <div ng-messages="freshdeskAccountItemForm.variableName.$error" ng-show="freshdeskAccountItemForm.variableName.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'customVariable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select ng-model="vm.item.VariableId" required>\n            <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n        </md-select>\n    </md-input-container>\n<\/script>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/edit/view.html",'<div id="integrations-freshdeskAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-freshdeskAccounts-button md-icon-button" aria-label="Go to freshdeskAccounts" ng-click="vm.gotoFreshdeskAccounts()" translate translate-attr-aria-label="INTEGRATIONS.GO_TO_FRESHDESKACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.freshdeskAccount.userpic" class="freshdeskAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.freshdeskAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.freshdeskAccount.userpic" class="freshdeskAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/freshdeskAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.freshdeskAccount.id}} {{vm.freshdeskAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="INTEGRATIONS.CREATED_AT"></span> <span>{{vm.freshdeskAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveFreshdeskAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (configurationsForm.$invalid)" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="freshdeskAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.freshdeskAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                                <input type="text" name="username" ng-model="vm.freshdeskAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.URI">Uri</label>\n                                <input type="url" name="remoteUri" ng-model="vm.freshdeskAccount.remoteUri" required>\n                                <div ng-messages="generalForm.remoteUri.$error" ng-show="generalForm.remoteUri.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.APIKEY">ApiKey</label>\n                                <input type="text" name="apiKey" ng-model="vm.freshdeskAccount.apiKey" required>\n                                <div ng-messages="generalForm.apiKey.$error" ng-show="generalForm.apiKey.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.APIKEY_REQUIRED">ApiKey field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                                <input type="url" name="serverUrl" ng-model="vm.freshdeskAccount.serverUrl">\n                                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                                <div ng-messages="generalForm.serverUrl.$error" ng-show="generalForm.serverUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.freshdeskAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="freshdeskAccount-detail-form-container configurations md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</div>\n                        </div>\n                        <div ng-controller="FreshdeskAccountConfigurationsController as vm_cc" ng-init="vm_cc.init(vm.freshdeskAccount)" layout="row">\n                            <md-card class="md-whiteframe-1dp" flex="30">\n                                <div layout="row" layout-align="center center">\n                                    <md-subheader flex="75" class="md-no-sticky">{{ \'INTEGRATIONS.CONFIGURATIONS\' | translate }}</md-subheader>\n                                    <md-button flex="25" ng-click="vm_cc.createOrEditFreshdeskConfiguration($event)" class="md-icon-button" aria-label="create freshdeskConfiguration">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                                <md-list>\n                                    <md-list-item layout="row" layout-align="center center" ng-repeat="freshdeskConfiguration in vm_cc.configurations" class="border-top" md-colors="{background: (vm_cc.selectedFreshdeskConfiguration == $index ? \'accent\' : \'grey-A100\')}" ng-click="vm_cc.getFreshdeskConfiguration($index)">\n                                        <span class="text-truncate" flex="80">{{ freshdeskConfiguration.name }}</span>\n                                        <md-menu>\n                                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                            </md-button>\n                                            <md-menu-content width="3">\n                                                <md-menu-item>\n                                                    <md-button ng-click="vm_cc.deleteFreshdeskConfiguration($event, freshdeskConfiguration)" translate="INTEGRATIONS.DELETE_FRESHDESKCONFIGURATION">\n                                                        Delete FreshdeskConfiguration\n                                                    </md-button>\n                                                </md-menu-item>\n                                            </md-menu-content>\n                                        </md-menu>\n                                    </md-list-item>\n                                </md-list>\n                            </md-card>\n                            <div flex></div>\n                            <md-card class="md-whiteframe-1dp" flex="65">\n                                <md-tabs ng-if="vm_cc.configurations.length" md-dynamic-height>\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.SUBJECTS">SUBJECTS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.subject = query" on-collapse="vm_cc.query.subject = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditSubject($event)" aria-label="add subject" translate translate-attr-label="INTEGRATIONS.ADD_SUBJECT">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedSubjects.length}} {{vm_cc.selectedSubjects.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedSubjects($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedSubjects">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="subject" md-select-id="id" ng-repeat="subject in vm_cc.subjects | filter: vm_cc.query.subject">\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="id ">{{subject.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="type ">\n                                                                <span ng-if="subject.FieldId">{{subject.nameField}}</span>\n                                                                <span ng-if="!subject.FieldId">{{subject.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="subject.type" ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell>\n                                                                <span ng-switch-when="string">{{subject.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{subject.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{subject.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{subject.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditSubject($event, subject)" translate="INTEGRATIONS.EDIT_SUBJECT">\n                                                                                Edit Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteSubjectConfirm($event, subject)" translate="INTEGRATIONS.DELETE_SUBJECT">\n                                                                                Delete Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.DESCRIPTIONS">DESCRIPTIONS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.description = query" on-collapse="vm_cc.query.description = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditDescription($event)" aria-label="add description" translate translate-attr-label="INTEGRATIONS.ADD_DESCRIPTION">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedDescriptions.length}} {{vm_cc.selectedDescriptions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedDescriptions($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedDescriptions">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="description" md-select-id="id" ng-repeat="description in vm_cc.descriptions | filter: vm_cc.query.description">\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="id ">{{description.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="type ">\n                                                                <span ng-if="description.FieldId">{{description.nameField}}</span>\n                                                                <span ng-if="!description.FieldId">{{description.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="description.type" ng-click="vm_cc.createOrEditDescription($event, description)" md-cell>\n                                                                <span ng-switch-when="string">{{description.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{description.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{description.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{description.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditDescription($event, description)" translate="INTEGRATIONS.EDIT_DESCRIPTION">\n                                                                                Edit Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteDescriptionConfirm($event, description)" translate="INTEGRATIONS.DELETE_DESCRIPTION">\n                                                                                Delete Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.FIELDS">FIELDS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.field = query" on-collapse="vm_cc.query.field = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditField($event)" aria-label="add field" translate translate-attr-label="INTEGRATIONS.ADD_FIELD">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedFields.length}} {{vm_cc.selectedFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedFields($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedFields">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="field" md-select-id="id" ng-repeat="field in vm_cc.fields | filter: vm_cc.query.field">\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="id ">{{field.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="type ">\n                                                                <span ng-if="field.FieldId">{{field.nameField}}</span>\n                                                                <span ng-if="!field.FieldId">{{field.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="field.type" ng-click="vm_cc.createOrEditField($event, field)" md-cell>\n                                                                <span ng-switch-when="string">{{field.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{field.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{field.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{field.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditField($event, field)" translate="INTEGRATIONS.EDIT_FIELD">\n                                                                                Edit Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteFieldConfirm($event, field)" translate="INTEGRATIONS.DELETE_FIELD">\n                                                                                Delete Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.TAGS">TAGS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-table-container class="md-whiteframe-1dp padding-20">\n                                                <md-input-container class="md-block">\n                                                    <label translate="INTEGRATIONS.TAGS">Tags</label>\n                                                    <md-select ng-model="vm_cc.selectedTags" ng-change="vm_cc.selectTagsChanged($event)" multiple>\n                                                        <md-option ng-value="tag.id" ng-repeat="tag in vm_cc.tags">{{ tag.name }}</md-option>\n                                                    </md-select>\n                                                </md-input-container>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n                                </md-tabs>\n                                <div class="padding-20" ng-if="!vm_cc.configurations.length" ng-click="vm_cc.createOrEditFreshdeskConfiguration($event)" layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                                    <div class="padding-20 md-whiteframe-3dp md-accent-bg" layout="column" layout-align="center center">\n                                        <md-button class="md-icon-button">\n                                            <md-icon md-font-icon="icon-plus"></md-icon>\n                                        </md-button>\n                                        <span aria-label="add configuration" translate translate-attr-label="INTEGRATIONS.ADD_CONFIGURATION">ADD CONFIGURATION</span>\n                                    </div>\n                                </div>\n                            </md-card>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/integrations/views/freshdeskAccounts/freshdeskAccounts.html",'<div id="freshdeskAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-heart" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="INTEGRATIONS.FRESHDESKACCOUNTS">FreshdeskAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="INTEGRATIONS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedFreshdeskAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedFreshdeskAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="INTEGRATIONS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-freshdeskAccounts-count">\n                    <span>{{vm.selectedFreshdeskAccounts.length}}</span>\n                <span translate="INTEGRATIONS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="FRESHDESKACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllFreshdeskAccounts()" translate="INTEGRATIONS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectFreshdeskAccounts()" translate="INTEGRATIONS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedFreshdeskAccounts" filename="freshdeskAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedFreshdeskAccounts($event)" aria-label="delete selected" translate translate-attr-label="FRESHDESKACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- FRESHDESKACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedFreshdeskAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getFreshdeskAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'INTEGRATIONS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="username">{{ \'INTEGRATIONS.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="remoteUri">{{ \'INTEGRATIONS.URI\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.freshdeskAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="INTEGRATIONS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="freshdeskAccount" md-select-id="id" ng-repeat="freshdeskAccount in vm.freshdeskAccounts.rows">\n                                <td md-cell ng-if="freshdeskAccount.userpic"><img class="avatar" alt="{{freshdeskAccount.name}}" ng-src="api/users/{{freshdeskAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!freshdeskAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{freshdeskAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditFreshdeskAccount($event, freshdeskAccount)" md-cell class="id ">{{freshdeskAccount.id}}</td>\n                                <td ng-click="vm.createOrEditFreshdeskAccount($event, freshdeskAccount)" md-cell class="name ">{{freshdeskAccount.name}}</td>\n                                <td ng-click="vm.createOrEditFreshdeskAccount($event, freshdeskAccount)" md-cell class="username ">{{freshdeskAccount.username}}</td>\n                                <td ng-click="vm.createOrEditFreshdeskAccount($event, freshdeskAccount)" md-cell class="remoteUri ">{{freshdeskAccount.remoteUri}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(freshdeskAccount, $event)" translate="INTEGRATIONS.EDIT_FRESHDESKACCOUNT">\n                                                    Edit FreshdeskAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(freshdeskAccount, $event)" translate="INTEGRATIONS.DELETE_FRESHDESKACCOUNT">\n                                                    Delete FreshdeskAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.freshdeskAccounts.count}}" md-on-paginate="vm.getFreshdeskAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / FRESHDESKACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD FRESHDESKACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-freshdeskAccount-button" ng-click="vm.createOrEditFreshdeskAccount($event)" aria-label="add freshdeskAccount" translate translate-attr-aria-label="INTEGRATIONS.ADD_FRESHDESKACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD FRESHDESKACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/integrations/views/salesforceAccounts/create/dialog.html",'<md-dialog class="salesforceAccount-dialog" aria-label="New SalesforceAccount">\n    <form name="salesforceAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.salesforceAccount.name" required autofocus>\n                <div ng-messages="salesforceAccountForm.name.$error" ng-show="salesforceAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                <input type="text" name="username" ng-model="vm.salesforceAccount.username" required>\n                <div ng-messages="salesforceAccountForm.username.$error" ng-show="salesforceAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.URI">Uri</label>\n                <input type="url" name="remoteUri" ng-model="vm.salesforceAccount.remoteUri" required>\n                <div ng-messages="salesforceAccountForm.remoteUri.$error" ng-show="salesforceAccountForm.remoteUri.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.salesforceAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                <div ng-messages="salesforceAccountForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newSalesforceAccount ">\n                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="salesforceAccountForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CLIENTID">ClientId</label>\n                <input type="text" name="clientId" ng-model="vm.salesforceAccount.clientId" required>\n                <div ng-messages="salesforceAccountForm.clientId.$error" ng-show="salesforceAccountForm.clientId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CLIENTID_REQUIRED">ClientId field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CLIENTSECRET">ClientSecret</label>\n                <input type="text" name="clientSecret" ng-model="vm.salesforceAccount.clientSecret" required>\n                <div ng-messages="salesforceAccountForm.clientSecret.$error" ng-show="salesforceAccountForm.clientSecret.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CLIENTSECRET_REQUIRED">ClientSecret field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.SECURITYTOKEN">SecurityToken</label>\n                <input type="text" name="securityToken" ng-model="vm.salesforceAccount.securityToken" required>\n                <div ng-messages="salesforceAccountForm.securityToken.$error" ng-show="salesforceAccountForm.securityToken.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.SECURITYTOKEN_REQUIRED">SecurityToken field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                <input type="url" name="serverUrl" ng-model="vm.salesforceAccount.serverUrl">\n                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                <div ng-messages="salesforceAccountForm.serverUrl.$error" ng-show="salesforceAccountForm.serverUrl.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.salesforceAccount.description">\n                <div ng-messages="salesforceAccountForm.description.$error" ng-show="salesforceAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSalesforceAccount" ng-click="vm.saveSalesforceAccount()" class="send-button md-accent md-raised" ng-disabled="salesforceAccountForm.$invalid || salesforceAccountForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSalesforceAccount" ng-click="vm.addNewSalesforceAccount()" class="send-button md-accent md-raised" ng-disabled="salesforceAccountForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_SALESFORCEACCOUNT" translate-attr-aria-label="INTEGRATIONS.ADD_SALESFORCEACCOUNT">\n                    ADD SALESFORCEACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSalesforceAccount" ng-click="vm.deleteSalesforceAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/salesforceAccounts/edit/configurations/dialog.html",'<md-dialog class="salesforceConfiguration-dialog" aria-label="New SalesforceConfiguration">\n    <form name="salesforceConfigurationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.salesforceConfiguration.name" required autofocus>\n                <div ng-messages="salesforceConfigurationForm.name.$error" ng-show="salesforceConfigurationForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.salesforceConfiguration.channel" required>\n\n                    <md-option ng-value="\'voice\'"> {{ \'INTEGRATIONS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="salesforceConfigurationForm.channel.$error" ng-show="salesforceConfigurationForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.TYPE">Type</label>\n                <md-select ng-model="vm.salesforceConfiguration.type" required>\n\n                    <md-option ng-value="\'inbound\'"> {{ \'INTEGRATIONS.INBOUND_IN_QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'outbound\'"> {{ \'INTEGRATIONS.OUTBOUND_CALL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="salesforceConfigurationForm.type.$error" ng-show="salesforceConfigurationForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSalesforceConfiguration" ng-click="vm.saveSalesforceConfiguration()" class="send-button md-accent md-raised" ng-disabled="salesforceConfigurationForm.$invalid || salesforceConfigurationForm.$pristine" aria-label="SAVE"\n                    translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSalesforceConfiguration" ng-click="vm.addNewSalesforceConfiguration()" class="send-button md-accent md-raised" ng-disabled="salesforceConfigurationForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_SALESFORCECONFIGURATION"\n                    translate-attr-aria-label="INTEGRATIONS.ADD_SALESFORCECONFIGURATION">\n                    ADD SALESFORCECONFIGURATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSalesforceConfiguration" ng-click="vm.deleteSalesforceConfiguration($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/salesforceAccounts/edit/item/dialog.html",'<md-dialog class="salesforceAccount-item-dialog" aria-label="New Item">\n    <form name="salesforceAccountItemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div ng-switch="vm.type">\n                <div ng-switch-when="subject">\n                    \x3c!-- SUBJECT SECTION --\x3e\n                    <div ng-include="\'/subject.html\'"></div>\n                    \x3c!-- / SUBJECT SECTION --\x3e\n                </div>\n                <div ng-switch-when="description">\n                    \x3c!-- DESCRIPTION SECTION --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="INTEGRATIONS.TYPE">Type</label>\n                        <md-select name="type" ng-model="vm.item.type" required>\n                            <md-option value="string">String</md-option>\n                            <md-option value="keyValue">Key Value</md-option>\n                        </md-select>\n                        <div ng-messages="salesforceAccountItemForm.type.$error" ng-show="salesforceAccountItemForm.type.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n                        <label translate="INTEGRATIONS.CONTENT">Content</label>\n                        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n                        <div ng-messages="salesforceAccountItemForm.content.$error" ng-show="salesforceAccountItemForm.content.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <div ng-if="vm.item.type == \'keyValue\'">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.KEY">Key</label>\n                            <input type="text" name="key" ng-model="vm.item.key" required md-autofocus>\n                            <div ng-messages="salesforceAccountItemForm.key.$error" ng-show="salesforceAccountItemForm.key.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.TYPE">Type</label>\n                            <md-select name="keyType" ng-model="vm.item.keyType" required>\n                                <md-option value="string">String</md-option>\n                                <md-option value="variable">Variable</md-option>\n                                <md-option value="customVariable">Custom Variable</md-option>\n                            </md-select>\n                            <div ng-messages="salesforceAccountItemForm.keyType.$error" ng-show="salesforceAccountItemForm.keyType.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'string\'">\n                            <label translate="INTEGRATIONS.CONTENT">Content</label>\n                            <input type="text" name="keyContent" ng-model="vm.item.keyContent" required md-autofocus>\n                            <div ng-messages="salesforceAccountItemForm.keyContent.$error" ng-show="salesforceAccountItemForm.keyContent.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'variable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n                                <md-optgroup label="Voice: Queue">\n                                    <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Voice: Outbound">\n                                    <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="salesforceAccountItemForm.variableName.$error" ng-show="salesforceAccountItemForm.variableName.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'customVariable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select ng-model="vm.item.VariableId" required>\n                                <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n                            </md-select>\n                        </md-input-container>\n                    </div>\n                    \x3c!-- / DESCRIPTION SECTION --\x3e\n                </div>\n                <div ng-switch-when="field">\n                    \x3c!-- FIELD SECTION --\x3e\n                    <div ng-if="vm.accountConnected">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.FIELD">FIELD</label>\n                            <md-select name="customField" ng-model="vm.customField" required>\n                                <md-optgroup label="Standard">\n                                    <md-option ng-value="standard" ng-repeat="standard in vm.fields | filter: {custom: false} ">{{standard.name}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Custom">\n                                    <md-option ng-value="custom" ng-repeat="custom in vm.fields | filter: {custom: true} ">{{custom.name}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="salesforceAccountItemForm.customField.$error" ng-show="salesforceAccountItemForm.customField.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.FIELD_REQUIRED">Field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- CUSTOM FIELD --\x3e\n                        <div ng-if="vm.customField && vm.customField.custom" ng-include="\'/subject.html\'"></div>\n                        \x3c!-- / CUSTOM FIELD --\x3e\n                        \x3c!-- STANDARD FIELD --\x3e\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="option" ng-model="vm.item.content" required>\n                                <md-option ng-value="option.value" ng-repeat="option in vm.customField.options">{{option.name}}</md-option>\n                            </md-select>\n                            <div ng-messages="salesforceAccountItemForm.option.$error" ng-show="salesforceAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && !vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <input type="text" name="option" ng-model="vm.item.content" required>\n                            <div ng-messages="salesforceAccountItemForm.option.$error" ng-show="salesforceAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- / STANDARD FIELD --\x3e\n                    </div>\n                    <div ng-if="!vm.accountConnected">\n                        <p>Account is not connected. Please check your configurations!</p>\n                    </div>\n                    \x3c!-- / FIELD SECTION --\x3e\n                </div>\n                <div ng-switch-default>\n                    <p>No Item</p>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newItem" ng-click="vm.saveItem()" class="send-button md-accent md-raised" ng-disabled="salesforceAccountItemForm.$invalid || salesforceAccountItemForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newItem" ng-click="vm.addNewItem()" class="send-button md-accent md-raised" ng-disabled="salesforceAccountItemForm.$invalid || salesforceAccountItemForm.$pristine" aria-label="ADD" translate="INTEGRATIONS.ADD" translate-attr-aria-label="INTEGRATIONS.ADD">\n                    ADD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newItem" ng-click="vm.deleteItem($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>\n\n<script type="text/ng-template" id="/subject.html">\n    <md-input-container class="md-block">\n        <label translate="INTEGRATIONS.TYPE">Type</label>\n        <md-select name="type" ng-model="vm.item.type" required>\n            <md-option value="string">String</md-option>\n            <md-option value="variable">Variable</md-option>\n            <md-option value="customVariable">Custom Variable</md-option>\n        </md-select>\n        <div ng-messages="salesforceAccountItemForm.type.$error" ng-show="salesforceAccountItemForm.type.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n        <label translate="INTEGRATIONS.CONTENT">Content</label>\n        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n        <div ng-messages="salesforceAccountItemForm.content.$error" ng-show="salesforceAccountItemForm.content.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'variable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n            <md-optgroup label="Voice: Queue">\n                <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n            </md-optgroup>\n            <md-optgroup label="Voice: Outbound">\n                <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n            </md-optgroup>\n        </md-select>\n        <div ng-messages="salesforceAccountItemForm.variableName.$error" ng-show="salesforceAccountItemForm.variableName.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'customVariable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select ng-model="vm.item.VariableId" required>\n            <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n        </md-select>\n    </md-input-container>\n<\/script>'),e.put("app/main/apps/integrations/views/salesforceAccounts/edit/view.html",'<div id="integrations-salesforceAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-salesforceAccounts-button md-icon-button" aria-label="Go to salesforceAccounts" ng-click="vm.gotoSalesforceAccounts()" translate translate-attr-aria-label="INTEGRATIONS.GO_TO_SALESFORCEACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.salesforceAccount.userpic" class="salesforceAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.salesforceAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.salesforceAccount.userpic" class="salesforceAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/salesforceAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.salesforceAccount.id}} {{vm.salesforceAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="INTEGRATIONS.CREATED_AT"></span> <span>{{vm.salesforceAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveSalesforceAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (configurationsForm.$invalid)" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="salesforceAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.salesforceAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                                <input type="text" name="username" ng-model="vm.salesforceAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.URI">Uri</label>\n                                <input type="url" name="remoteUri" ng-model="vm.salesforceAccount.remoteUri" required>\n                                <div ng-messages="generalForm.remoteUri.$error" ng-show="generalForm.remoteUri.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.salesforceAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newSalesforceAccount ">\n                                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.CLIENTID">ClientId</label>\n                                <input type="text" name="clientId" ng-model="vm.salesforceAccount.clientId" required>\n                                <div ng-messages="generalForm.clientId.$error" ng-show="generalForm.clientId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CLIENTID_REQUIRED">ClientId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.CLIENTSECRET">ClientSecret</label>\n                                <input type="text" name="clientSecret" ng-model="vm.salesforceAccount.clientSecret" required>\n                                <div ng-messages="generalForm.clientSecret.$error" ng-show="generalForm.clientSecret.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CLIENTSECRET_REQUIRED">ClientSecret field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.SECURITYTOKEN">SecurityToken</label>\n                                <input type="text" name="securityToken" ng-model="vm.salesforceAccount.securityToken" required>\n                                <div ng-messages="generalForm.securityToken.$error" ng-show="generalForm.securityToken.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.SECURITYTOKEN_REQUIRED">SecurityToken field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                                <input type="url" name="serverUrl" ng-model="vm.salesforceAccount.serverUrl">\n                                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                                <div ng-messages="generalForm.serverUrl.$error" ng-show="generalForm.serverUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.salesforceAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="salesforceAccount-detail-form-container configurations md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</div>\n                        </div>\n                        <div ng-controller="SalesforceAccountConfigurationsController as vm_cc" ng-init="vm_cc.init(vm.salesforceAccount)" layout="row">\n                            <md-card class="md-whiteframe-1dp" flex="30">\n                                <div layout="row" layout-align="center center">\n                                    <md-subheader flex="75" class="md-no-sticky">{{ \'INTEGRATIONS.CONFIGURATIONS\' | translate }}</md-subheader>\n                                    <md-button flex="25" ng-click="vm_cc.createOrEditSalesforceConfiguration($event)" class="md-icon-button" aria-label="create salesforceConfiguration">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                                <md-list>\n                                    <md-list-item layout="row" layout-align="center center" ng-repeat="salesforceConfiguration in vm_cc.configurations" class="border-top" md-colors="{background: (vm_cc.selectedSalesforceConfiguration == $index ? \'accent\' : \'grey-A100\')}" ng-click="vm_cc.getSalesforceConfiguration($index)">\n                                        <span class="text-truncate" flex="80">{{ salesforceConfiguration.name }}</span>\n                                        <md-menu>\n                                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                            </md-button>\n                                            <md-menu-content width="3">\n                                                <md-menu-item>\n                                                    <md-button ng-click="vm_cc.deleteSalesforceConfiguration($event, salesforceConfiguration)" translate="INTEGRATIONS.DELETE_SALESFORCECONFIGURATION">\n                                                        Delete SalesforceConfiguration\n                                                    </md-button>\n                                                </md-menu-item>\n                                            </md-menu-content>\n                                        </md-menu>\n                                    </md-list-item>\n                                </md-list>\n                            </md-card>\n                            <div flex></div>\n                            <md-card class="md-whiteframe-1dp" flex="65">\n                                <md-tabs ng-if="vm_cc.configurations.length" md-dynamic-height>\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.SUBJECTS">SUBJECTS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.subject = query" on-collapse="vm_cc.query.subject = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditSubject($event)" aria-label="add subject" translate translate-attr-label="INTEGRATIONS.ADD_SUBJECT">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedSubjects.length}} {{vm_cc.selectedSubjects.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedSubjects($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedSubjects">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="subject" md-select-id="id" ng-repeat="subject in vm_cc.subjects | filter: vm_cc.query.subject">\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="id ">{{subject.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="type ">\n                                                                <span ng-if="subject.FieldId">{{subject.nameField}}</span>\n                                                                <span ng-if="!subject.FieldId">{{subject.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="subject.type" ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell>\n                                                                <span ng-switch-when="string">{{subject.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{subject.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{subject.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{subject.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditSubject($event, subject)" translate="INTEGRATIONS.EDIT_SUBJECT">\n                                                                                Edit Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteSubjectConfirm($event, subject)" translate="INTEGRATIONS.DELETE_SUBJECT">\n                                                                                Delete Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.DESCRIPTIONS">DESCRIPTIONS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.description = query" on-collapse="vm_cc.query.description = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditDescription($event)" aria-label="add description" translate translate-attr-label="INTEGRATIONS.ADD_DESCRIPTION">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedDescriptions.length}} {{vm_cc.selectedDescriptions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedDescriptions($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedDescriptions">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="description" md-select-id="id" ng-repeat="description in vm_cc.descriptions | filter: vm_cc.query.description">\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="id ">{{description.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="type ">\n                                                                <span ng-if="description.FieldId">{{description.nameField}}</span>\n                                                                <span ng-if="!description.FieldId">{{description.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="description.type" ng-click="vm_cc.createOrEditDescription($event, description)" md-cell>\n                                                                <span ng-switch-when="string">{{description.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{description.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{description.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{description.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditDescription($event, description)" translate="INTEGRATIONS.EDIT_DESCRIPTION">\n                                                                                Edit Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteDescriptionConfirm($event, description)" translate="INTEGRATIONS.DELETE_DESCRIPTION">\n                                                                                Delete Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.FIELDS">FIELDS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.field = query" on-collapse="vm_cc.query.field = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditField($event)" aria-label="add field" translate translate-attr-label="INTEGRATIONS.ADD_FIELD">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedFields.length}} {{vm_cc.selectedFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedFields($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedFields">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="field" md-select-id="id" ng-repeat="field in vm_cc.fields | filter: vm_cc.query.field">\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="id ">{{field.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="type ">\n                                                                <span ng-if="field.FieldId">{{field.nameField}}</span>\n                                                                <span ng-if="!field.FieldId">{{field.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="field.type" ng-click="vm_cc.createOrEditField($event, field)" md-cell>\n                                                                <span ng-switch-when="string">{{field.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{field.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{field.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{field.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditField($event, field)" translate="INTEGRATIONS.EDIT_FIELD">\n                                                                                Edit Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteFieldConfirm($event, field)" translate="INTEGRATIONS.DELETE_FIELD">\n                                                                                Delete Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                </md-tabs>\n                                <div class="padding-20" ng-if="!vm_cc.configurations.length" ng-click="vm_cc.createOrEditSalesforceConfiguration($event)" layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                                    <div class="padding-20 md-whiteframe-3dp md-accent-bg" layout="column" layout-align="center center">\n                                        <md-button class="md-icon-button">\n                                            <md-icon md-font-icon="icon-plus"></md-icon>\n                                        </md-button>\n                                        <span aria-label="add configuration" translate translate-attr-label="INTEGRATIONS.ADD_CONFIGURATION">ADD CONFIGURATION</span>\n                                    </div>\n                                </div>\n                            </md-card>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/integrations/views/salesforceAccounts/salesforceAccounts.html",'<div id="salesforceAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-heart" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="INTEGRATIONS.SALESFORCEACCOUNTS">SalesforceAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="INTEGRATIONS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSalesforceAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSalesforceAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="INTEGRATIONS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-salesforceAccounts-count">\n                    <span>{{vm.selectedSalesforceAccounts.length}}</span>\n                <span translate="INTEGRATIONS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SALESFORCEACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSalesforceAccounts()" translate="INTEGRATIONS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSalesforceAccounts()" translate="INTEGRATIONS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSalesforceAccounts" filename="salesforceAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSalesforceAccounts($event)" aria-label="delete selected" translate translate-attr-label="SALESFORCEACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SALESFORCEACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSalesforceAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSalesforceAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'INTEGRATIONS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="username">{{ \'INTEGRATIONS.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="remoteUri">{{ \'INTEGRATIONS.URI\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.salesforceAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="INTEGRATIONS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="salesforceAccount" md-select-id="id" ng-repeat="salesforceAccount in vm.salesforceAccounts.rows">\n                                <td md-cell ng-if="salesforceAccount.userpic"><img class="avatar" alt="{{salesforceAccount.name}}" ng-src="api/users/{{salesforceAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!salesforceAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{salesforceAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSalesforceAccount($event, salesforceAccount)" md-cell class="id ">{{salesforceAccount.id}}</td>\n                                <td ng-click="vm.createOrEditSalesforceAccount($event, salesforceAccount)" md-cell class="name ">{{salesforceAccount.name}}</td>\n                                <td ng-click="vm.createOrEditSalesforceAccount($event, salesforceAccount)" md-cell class="username ">{{salesforceAccount.username}}</td>\n                                <td ng-click="vm.createOrEditSalesforceAccount($event, salesforceAccount)" md-cell class="remoteUri ">{{salesforceAccount.remoteUri}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(salesforceAccount, $event)" translate="INTEGRATIONS.EDIT_SALESFORCEACCOUNT">\n                                                    Edit SalesforceAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(salesforceAccount, $event)" translate="INTEGRATIONS.DELETE_SALESFORCEACCOUNT">\n                                                    Delete SalesforceAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.salesforceAccounts.count}}" md-on-paginate="vm.getSalesforceAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SALESFORCEACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SALESFORCEACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-salesforceAccount-button" ng-click="vm.createOrEditSalesforceAccount($event)" aria-label="add salesforceAccount" translate translate-attr-aria-label="INTEGRATIONS.ADD_SALESFORCEACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SALESFORCEACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/create/dialog.html",'<md-dialog class="sugarcrmAccount-dialog" aria-label="New SugarcrmAccount">\n    <form name="sugarcrmAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.sugarcrmAccount.name" required autofocus>\n                <div ng-messages="sugarcrmAccountForm.name.$error" ng-show="sugarcrmAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                <input type="text" name="username" ng-model="vm.sugarcrmAccount.username" required>\n                <div ng-messages="sugarcrmAccountForm.username.$error" ng-show="sugarcrmAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.URI">Uri</label>\n                <input type="url" name="remoteUri" ng-model="vm.sugarcrmAccount.remoteUri" required>\n                <div ng-messages="sugarcrmAccountForm.remoteUri.$error" ng-show="sugarcrmAccountForm.remoteUri.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.sugarcrmAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                <div ng-messages="sugarcrmAccountForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newSugarcrmAccount ">\n                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="sugarcrmAccountForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                <input type="url" name="serverUrl" ng-model="vm.sugarcrmAccount.serverUrl">\n                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                <div ng-messages="sugarcrmAccountForm.serverUrl.$error" ng-show="sugarcrmAccountForm.serverUrl.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.sugarcrmAccount.description">\n                <div ng-messages="sugarcrmAccountForm.description.$error" ng-show="sugarcrmAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSugarcrmAccount" ng-click="vm.saveSugarcrmAccount()" class="send-button md-accent md-raised" ng-disabled="sugarcrmAccountForm.$invalid || sugarcrmAccountForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSugarcrmAccount" ng-click="vm.addNewSugarcrmAccount()" class="send-button md-accent md-raised" ng-disabled="sugarcrmAccountForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_SUGARCRMACCOUNT" translate-attr-aria-label="INTEGRATIONS.ADD_SUGARCRMACCOUNT">\n                    ADD SUGARCRMACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSugarcrmAccount" ng-click="vm.deleteSugarcrmAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/edit/configurations/dialog.html",'<md-dialog class="sugarcrmConfiguration-dialog" aria-label="New SugarcrmConfiguration">\n    <form name="sugarcrmConfigurationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.sugarcrmConfiguration.name" required autofocus>\n                <div ng-messages="sugarcrmConfigurationForm.name.$error" ng-show="sugarcrmConfigurationForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.sugarcrmConfiguration.channel" required>\n\n                    <md-option ng-value="\'voice\'"> {{ \'INTEGRATIONS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="sugarcrmConfigurationForm.channel.$error" ng-show="sugarcrmConfigurationForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.TYPE">Type</label>\n                <md-select ng-model="vm.sugarcrmConfiguration.type" required>\n\n                    <md-option ng-value="\'inbound\'"> {{ \'INTEGRATIONS.INBOUND_IN_QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'outbound\'"> {{ \'INTEGRATIONS.OUTBOUND_CALL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="sugarcrmConfigurationForm.type.$error" ng-show="sugarcrmConfigurationForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSugarcrmConfiguration" ng-click="vm.saveSugarcrmConfiguration()" class="send-button md-accent md-raised" ng-disabled="sugarcrmConfigurationForm.$invalid || sugarcrmConfigurationForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSugarcrmConfiguration" ng-click="vm.addNewSugarcrmConfiguration()" class="send-button md-accent md-raised" ng-disabled="sugarcrmConfigurationForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_SUGARCRMCONFIGURATION"\n                    translate-attr-aria-label="INTEGRATIONS.ADD_SUGARCRMCONFIGURATION">\n                    ADD SUGARCRMCONFIGURATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSugarcrmConfiguration" ng-click="vm.deleteSugarcrmConfiguration($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/edit/item/dialog.html",'<md-dialog class="sugarcrmAccount-item-dialog" aria-label="New Item">\n    <form name="sugarcrmAccountItemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div ng-switch="vm.type">\n                <div ng-switch-when="subject">\n                    \x3c!-- SUBJECT SECTION --\x3e\n                    <div ng-include="\'/subject.html\'"></div>\n                    \x3c!-- / SUBJECT SECTION --\x3e\n                </div>\n                <div ng-switch-when="description">\n                    \x3c!-- DESCRIPTION SECTION --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="INTEGRATIONS.TYPE">Type</label>\n                        <md-select name="type" ng-model="vm.item.type" required>\n                            <md-option value="string">String</md-option>\n                            <md-option value="keyValue">Key Value</md-option>\n                        </md-select>\n                        <div ng-messages="sugarcrmAccountItemForm.type.$error" ng-show="sugarcrmAccountItemForm.type.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n                        <label translate="INTEGRATIONS.CONTENT">Content</label>\n                        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n                        <div ng-messages="sugarcrmAccountItemForm.content.$error" ng-show="sugarcrmAccountItemForm.content.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <div ng-if="vm.item.type == \'keyValue\'">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.KEY">Key</label>\n                            <input type="text" name="key" ng-model="vm.item.key" required md-autofocus>\n                            <div ng-messages="sugarcrmAccountItemForm.key.$error" ng-show="sugarcrmAccountItemForm.key.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.TYPE">Type</label>\n                            <md-select name="keyType" ng-model="vm.item.keyType" required>\n                                <md-option value="string">String</md-option>\n                                <md-option value="variable">Variable</md-option>\n                                <md-option value="customVariable">Custom Variable</md-option>\n                            </md-select>\n                            <div ng-messages="sugarcrmAccountItemForm.keyType.$error" ng-show="sugarcrmAccountItemForm.keyType.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'string\'">\n                            <label translate="INTEGRATIONS.CONTENT">Content</label>\n                            <input type="text" name="keyContent" ng-model="vm.item.keyContent" required md-autofocus>\n                            <div ng-messages="sugarcrmAccountItemForm.keyContent.$error" ng-show="sugarcrmAccountItemForm.keyContent.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'variable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n                                <md-optgroup label="Voice: Queue">\n                                    <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Voice: Outbound">\n                                    <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="sugarcrmAccountItemForm.variableName.$error" ng-show="sugarcrmAccountItemForm.variableName.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'customVariable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select ng-model="vm.item.VariableId" required>\n                                <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n                            </md-select>\n                        </md-input-container>\n                    </div>\n                    \x3c!-- / DESCRIPTION SECTION --\x3e\n                </div>\n                <div ng-switch-when="field">\n                    \x3c!-- FIELD SECTION --\x3e\n                    <div ng-if="vm.accountConnected">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.FIELD">FIELD</label>\n                            <md-select name="customField" ng-model="vm.customField" required>\n                                <md-optgroup label="Standard">\n                                    <md-option ng-value="standard" ng-repeat="standard in vm.fields | filter: {custom: false} ">{{standard.name}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Custom">\n                                    <md-option ng-value="custom" ng-repeat="custom in vm.fields | filter: {custom: true} ">{{custom.name}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="sugarcrmAccountItemForm.customField.$error" ng-show="sugarcrmAccountItemForm.customField.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.FIELD_REQUIRED">Field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- CUSTOM FIELD --\x3e\n                        <div ng-if="vm.customField && vm.customField.custom" ng-include="\'/subject.html\'"></div>\n                        \x3c!-- / CUSTOM FIELD --\x3e\n                        \x3c!-- STANDARD FIELD --\x3e\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="option" ng-model="vm.item.content" required>\n                                <md-option ng-value="option.value" ng-repeat="option in vm.customField.options">{{option.name}}</md-option>\n                            </md-select>\n                            <div ng-messages="sugarcrmAccountItemForm.option.$error" ng-show="sugarcrmAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && !vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <input type="text" name="option" ng-model="vm.item.content" required>\n                            <div ng-messages="sugarcrmAccountItemForm.option.$error" ng-show="sugarcrmAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- / STANDARD FIELD --\x3e\n                    </div>\n                    <div ng-if="!vm.accountConnected">\n                        <p>Account is not connected. Please check your configurations!</p>\n                    </div>\n                    \x3c!-- / FIELD SECTION --\x3e\n                </div>\n                <div ng-switch-default>\n                    <p>No Item</p>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newItem" ng-click="vm.saveItem()" class="send-button md-accent md-raised" ng-disabled="sugarcrmAccountItemForm.$invalid || sugarcrmAccountItemForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newItem" ng-click="vm.addNewItem()" class="send-button md-accent md-raised" ng-disabled="sugarcrmAccountItemForm.$invalid || sugarcrmAccountItemForm.$pristine" aria-label="ADD" translate="INTEGRATIONS.ADD" translate-attr-aria-label="INTEGRATIONS.ADD">\n                    ADD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newItem" ng-click="vm.deleteItem($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>\n\n<script type="text/ng-template" id="/subject.html">\n    <md-input-container class="md-block">\n        <label translate="INTEGRATIONS.TYPE">Type</label>\n        <md-select name="type" ng-model="vm.item.type" required>\n            <md-option value="string">String</md-option>\n            <md-option value="variable">Variable</md-option>\n            <md-option value="customVariable">Custom Variable</md-option>\n        </md-select>\n        <div ng-messages="sugarcrmAccountItemForm.type.$error" ng-show="sugarcrmAccountItemForm.type.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n        <label translate="INTEGRATIONS.CONTENT">Content</label>\n        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n        <div ng-messages="sugarcrmAccountItemForm.content.$error" ng-show="sugarcrmAccountItemForm.content.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'variable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n            <md-optgroup label="Voice: Queue">\n                <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n            </md-optgroup>\n            <md-optgroup label="Voice: Outbound">\n                <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n            </md-optgroup>\n        </md-select>\n        <div ng-messages="sugarcrmAccountItemForm.variableName.$error" ng-show="sugarcrmAccountItemForm.variableName.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'customVariable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select ng-model="vm.item.VariableId" required>\n            <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n        </md-select>\n    </md-input-container>\n<\/script>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/edit/view.html",'<div id="integrations-sugarcrmAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-sugarcrmAccounts-button md-icon-button" aria-label="Go to sugarcrmAccounts" ng-click="vm.gotoSugarcrmAccounts()" translate translate-attr-aria-label="INTEGRATIONS.GO_TO_SUGARCRMACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.sugarcrmAccount.userpic" class="sugarcrmAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.sugarcrmAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.sugarcrmAccount.userpic" class="sugarcrmAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/sugarcrmAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.sugarcrmAccount.id}} {{vm.sugarcrmAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="INTEGRATIONS.CREATED_AT"></span> <span>{{vm.sugarcrmAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveSugarcrmAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (configurationsForm.$invalid)" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="sugarcrmAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.sugarcrmAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                                <input type="text" name="username" ng-model="vm.sugarcrmAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.URI">Uri</label>\n                                <input type="url" name="remoteUri" ng-model="vm.sugarcrmAccount.remoteUri" required>\n                                <div ng-messages="generalForm.remoteUri.$error" ng-show="generalForm.remoteUri.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.sugarcrmAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newSugarcrmAccount ">\n                                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                                <input type="url" name="serverUrl" ng-model="vm.sugarcrmAccount.serverUrl">\n                                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                                <div ng-messages="generalForm.serverUrl.$error" ng-show="generalForm.serverUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.sugarcrmAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="sugarcrmAccount-detail-form-container configurations md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</div>\n                        </div>\n                        <div ng-controller="SugarcrmAccountConfigurationsController as vm_cc" ng-init="vm_cc.init(vm.sugarcrmAccount)" layout="row">\n                            <md-card class="md-whiteframe-1dp" flex="30">\n                                <div layout="row" layout-align="center center">\n                                    <md-subheader flex="75" class="md-no-sticky">{{ \'INTEGRATIONS.CONFIGURATIONS\' | translate }}</md-subheader>\n                                    <md-button flex="25" ng-click="vm_cc.createOrEditSugarcrmConfiguration($event)" class="md-icon-button" aria-label="create sugarcrmConfiguration">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                                <md-list>\n                                    <md-list-item layout="row" layout-align="center center" ng-repeat="sugarcrmConfiguration in vm_cc.configurations" class="border-top" md-colors="{background: (vm_cc.selectedSugarcrmConfiguration == $index ? \'accent\' : \'grey-A100\')}" ng-click="vm_cc.getSugarcrmConfiguration($index)">\n                                        <span class="text-truncate" flex="80">{{ sugarcrmConfiguration.name }}</span>\n                                        <md-menu>\n                                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                            </md-button>\n                                            <md-menu-content width="3">\n                                                <md-menu-item>\n                                                    <md-button ng-click="vm_cc.deleteSugarcrmConfiguration($event, sugarcrmConfiguration)" translate="INTEGRATIONS.DELETE_SUGARCRMCONFIGURATION">\n                                                        Delete SugarcrmConfiguration\n                                                    </md-button>\n                                                </md-menu-item>\n                                            </md-menu-content>\n                                        </md-menu>\n                                    </md-list-item>\n                                </md-list>\n                            </md-card>\n                            <div flex></div>\n                            <md-card class="md-whiteframe-1dp" flex="65">\n                                <md-tabs ng-if="vm_cc.configurations.length" md-dynamic-height>\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.SUBJECTS">SUBJECTS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.subject = query" on-collapse="vm_cc.query.subject = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditSubject($event)" aria-label="add subject" translate translate-attr-label="INTEGRATIONS.ADD_SUBJECT">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedSubjects.length}} {{vm_cc.selectedSubjects.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedSubjects($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedSubjects">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="subject" md-select-id="id" ng-repeat="subject in vm_cc.subjects | filter: vm_cc.query.subject">\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="id ">{{subject.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="type ">\n                                                                <span ng-if="subject.FieldId">{{subject.nameField}}</span>\n                                                                <span ng-if="!subject.FieldId">{{subject.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="subject.type" ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell>\n                                                                <span ng-switch-when="string">{{subject.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{subject.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{subject.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{subject.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditSubject($event, subject)" translate="INTEGRATIONS.EDIT_SUBJECT">\n                                                                                Edit Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteSubjectConfirm($event, subject)" translate="INTEGRATIONS.DELETE_SUBJECT">\n                                                                                Delete Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.DESCRIPTIONS">DESCRIPTIONS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.description = query" on-collapse="vm_cc.query.description = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditDescription($event)" aria-label="add description" translate translate-attr-label="INTEGRATIONS.ADD_DESCRIPTION">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedDescriptions.length}} {{vm_cc.selectedDescriptions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedDescriptions($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedDescriptions">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="description" md-select-id="id" ng-repeat="description in vm_cc.descriptions | filter: vm_cc.query.description">\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="id ">{{description.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="type ">\n                                                                <span ng-if="description.FieldId">{{description.nameField}}</span>\n                                                                <span ng-if="!description.FieldId">{{description.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="description.type" ng-click="vm_cc.createOrEditDescription($event, description)" md-cell>\n                                                                <span ng-switch-when="string">{{description.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{description.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{description.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{description.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditDescription($event, description)" translate="INTEGRATIONS.EDIT_DESCRIPTION">\n                                                                                Edit Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteDescriptionConfirm($event, description)" translate="INTEGRATIONS.DELETE_DESCRIPTION">\n                                                                                Delete Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.FIELDS">FIELDS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.field = query" on-collapse="vm_cc.query.field = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditField($event)" aria-label="add field" translate translate-attr-label="INTEGRATIONS.ADD_FIELD">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedFields.length}} {{vm_cc.selectedFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedFields($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedFields">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="field" md-select-id="id" ng-repeat="field in vm_cc.fields | filter: vm_cc.query.field">\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="id ">{{field.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="type ">\n                                                                <span ng-if="field.FieldId">{{field.nameField}}</span>\n                                                                <span ng-if="!field.FieldId">{{field.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="field.type" ng-click="vm_cc.createOrEditField($event, field)" md-cell>\n                                                                <span ng-switch-when="string">{{field.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{field.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{field.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{field.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditField($event, field)" translate="INTEGRATIONS.EDIT_FIELD">\n                                                                                Edit Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteFieldConfirm($event, field)" translate="INTEGRATIONS.DELETE_FIELD">\n                                                                                Delete Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                </md-tabs>\n                                <div class="padding-20" ng-if="!vm_cc.configurations.length" ng-click="vm_cc.createOrEditSugarcrmConfiguration($event)" layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                                    <div class="padding-20 md-whiteframe-3dp md-accent-bg" layout="column" layout-align="center center">\n                                        <md-button class="md-icon-button">\n                                            <md-icon md-font-icon="icon-plus"></md-icon>\n                                        </md-button>\n                                        <span aria-label="add configuration" translate translate-attr-label="INTEGRATIONS.ADD_CONFIGURATION">ADD CONFIGURATION</span>\n                                    </div>\n                                </div>\n                            </md-card>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/integrations/views/sugarcrmAccounts/sugarcrmAccounts.html",'<div id="sugarcrmAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-heart" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="INTEGRATIONS.SUGARCRMACCOUNTS">SugarcrmAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="INTEGRATIONS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSugarcrmAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSugarcrmAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="INTEGRATIONS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-sugarcrmAccounts-count">\n                    <span>{{vm.selectedSugarcrmAccounts.length}}</span>\n                <span translate="INTEGRATIONS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SUGARCRMACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSugarcrmAccounts()" translate="INTEGRATIONS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSugarcrmAccounts()" translate="INTEGRATIONS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSugarcrmAccounts" filename="sugarcrmAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSugarcrmAccounts($event)" aria-label="delete selected" translate translate-attr-label="SUGARCRMACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SUGARCRMACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSugarcrmAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSugarcrmAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'INTEGRATIONS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="username">{{ \'INTEGRATIONS.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="remoteUri">{{ \'INTEGRATIONS.URI\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.sugarcrmAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="INTEGRATIONS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="sugarcrmAccount" md-select-id="id" ng-repeat="sugarcrmAccount in vm.sugarcrmAccounts.rows">\n                                <td md-cell ng-if="sugarcrmAccount.userpic"><img class="avatar" alt="{{sugarcrmAccount.name}}" ng-src="api/users/{{sugarcrmAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!sugarcrmAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{sugarcrmAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSugarcrmAccount($event, sugarcrmAccount)" md-cell class="id ">{{sugarcrmAccount.id}}</td>\n                                <td ng-click="vm.createOrEditSugarcrmAccount($event, sugarcrmAccount)" md-cell class="name ">{{sugarcrmAccount.name}}</td>\n                                <td ng-click="vm.createOrEditSugarcrmAccount($event, sugarcrmAccount)" md-cell class="username ">{{sugarcrmAccount.username}}</td>\n                                <td ng-click="vm.createOrEditSugarcrmAccount($event, sugarcrmAccount)" md-cell class="remoteUri ">{{sugarcrmAccount.remoteUri}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(sugarcrmAccount, $event)" translate="INTEGRATIONS.EDIT_SUGARCRMACCOUNT">\n                                                    Edit SugarcrmAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(sugarcrmAccount, $event)" translate="INTEGRATIONS.DELETE_SUGARCRMACCOUNT">\n                                                    Delete SugarcrmAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.sugarcrmAccounts.count}}" md-on-paginate="vm.getSugarcrmAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SUGARCRMACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SUGARCRMACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-sugarcrmAccount-button" ng-click="vm.createOrEditSugarcrmAccount($event)" aria-label="add sugarcrmAccount" translate translate-attr-aria-label="INTEGRATIONS.ADD_SUGARCRMACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SUGARCRMACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/integrations/views/zendeskAccounts/create/dialog.html",'<md-dialog class="zendeskAccount-dialog" aria-label="New ZendeskAccount">\n    <form name="zendeskAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.zendeskAccount.name" required autofocus>\n                <div ng-messages="zendeskAccountForm.name.$error" ng-show="zendeskAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                <input type="text" name="username" ng-model="vm.zendeskAccount.username" required>\n                <div ng-messages="zendeskAccountForm.username.$error" ng-show="zendeskAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.URI">Uri</label>\n                <input type="url" name="remoteUri" ng-model="vm.zendeskAccount.remoteUri" required>\n                <div ng-messages="zendeskAccountForm.remoteUri.$error" ng-show="zendeskAccountForm.remoteUri.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.AUTHTYPE">AuthType</label>\n                <md-select ng-model="vm.zendeskAccount.authType" required>\n                    <md-option ng-value="\'password\'">Password</md-option>\n                    <md-option ng-value="\'token\'">Token</md-option>\n                </md-select>\n                <div ng-messages="zendeskAccountForm.authType.$error" ng-show="zendeskAccountForm.authType.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.AUTHTYPE_REQUIRED">AuthType field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.zendeskAccount.authType == \'password\'">\n                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.zendeskAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                <div ng-messages="zendeskAccountForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newZendeskAccount  && vm.zendeskAccount.authType == \'password\'">\n                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="zendeskAccountForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.zendeskAccount.authType == \'token\'" class="md-block">\n                <label translate="INTEGRATIONS.TOKEN">Token</label>\n                <input type="text" name="token" ng-model="vm.zendeskAccount.token" required>\n                <div ng-messages="zendeskAccountForm.token.$error" ng-show="zendeskAccountForm.token.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TOKEN_REQUIRED">Token field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                <input type="url" name="serverUrl" ng-model="vm.zendeskAccount.serverUrl">\n                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                <div ng-messages="zendeskAccountForm.serverUrl.$error" ng-show="zendeskAccountForm.serverUrl.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.zendeskAccount.description">\n                <div ng-messages="zendeskAccountForm.description.$error" ng-show="zendeskAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newZendeskAccount" ng-click="vm.saveZendeskAccount()" class="send-button md-accent md-raised" ng-disabled="zendeskAccountForm.$invalid || zendeskAccountForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newZendeskAccount" ng-click="vm.addNewZendeskAccount()" class="send-button md-accent md-raised" ng-disabled="zendeskAccountForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_ZENDESKACCOUNT" translate-attr-aria-label="INTEGRATIONS.ADD_ZENDESKACCOUNT">\n                    ADD ZENDESKACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newZendeskAccount" ng-click="vm.deleteZendeskAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/zendeskAccounts/edit/item/dialog.html",'<md-dialog class="zendeskAccount-item-dialog" aria-label="New Item">\n    <form name="zendeskAccountItemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <div ng-switch="vm.type">\n                <div ng-switch-when="subject">\n                    \x3c!-- SUBJECT SECTION --\x3e\n                    <div ng-include="\'/subject.html\'"></div>\n                    \x3c!-- / SUBJECT SECTION --\x3e\n                </div>\n                <div ng-switch-when="description">\n                    \x3c!-- DESCRIPTION SECTION --\x3e\n                    <md-input-container class="md-block">\n                        <label translate="INTEGRATIONS.TYPE">Type</label>\n                        <md-select name="type" ng-model="vm.item.type" required>\n                            <md-option value="string">String</md-option>\n                            <md-option value="keyValue">Key Value</md-option>\n                        </md-select>\n                        <div ng-messages="zendeskAccountItemForm.type.$error" ng-show="zendeskAccountItemForm.type.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n                        <label translate="INTEGRATIONS.CONTENT">Content</label>\n                        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n                        <div ng-messages="zendeskAccountItemForm.content.$error" ng-show="zendeskAccountItemForm.content.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <div ng-if="vm.item.type == \'keyValue\'">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.KEY">Key</label>\n                            <input type="text" name="key" ng-model="vm.item.key" required md-autofocus>\n                            <div ng-messages="zendeskAccountItemForm.key.$error" ng-show="zendeskAccountItemForm.key.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.TYPE">Type</label>\n                            <md-select name="keyType" ng-model="vm.item.keyType" required>\n                                <md-option value="string">String</md-option>\n                                <md-option value="variable">Variable</md-option>\n                                <md-option value="customVariable">Custom Variable</md-option>\n                            </md-select>\n                            <div ng-messages="zendeskAccountItemForm.keyType.$error" ng-show="zendeskAccountItemForm.keyType.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'string\'">\n                            <label translate="INTEGRATIONS.CONTENT">Content</label>\n                            <input type="text" name="keyContent" ng-model="vm.item.keyContent" required md-autofocus>\n                            <div ng-messages="zendeskAccountItemForm.keyContent.$error" ng-show="zendeskAccountItemForm.keyContent.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'variable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n                                <md-optgroup label="Voice: Queue">\n                                    <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Voice: Outbound">\n                                    <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="zendeskAccountItemForm.variableName.$error" ng-show="zendeskAccountItemForm.variableName.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n\n                        <md-input-container class="md-block" ng-if="vm.item.keyType == \'customVariable\'">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select ng-model="vm.item.VariableId" required>\n                                <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n                            </md-select>\n                        </md-input-container>\n                    </div>\n                    \x3c!-- / DESCRIPTION SECTION --\x3e\n                </div>\n                <div ng-switch-when="field">\n                    \x3c!-- FIELD SECTION --\x3e\n                    <div ng-if="vm.accountConnected">\n                        <md-input-container class="md-block">\n                            <label translate="INTEGRATIONS.FIELD">FIELD</label>\n                            <md-select name="customField" ng-model="vm.customField" required>\n                                <md-optgroup label="Standard">\n                                    <md-option ng-value="standard" ng-repeat="standard in vm.fields | filter: {custom: false} ">{{standard.name}}</md-option>\n                                </md-optgroup>\n                                <md-optgroup label="Custom">\n                                    <md-option ng-value="custom" ng-repeat="custom in vm.fields | filter: {custom: true} ">{{custom.name}}</md-option>\n                                </md-optgroup>\n                            </md-select>\n                            <div ng-messages="zendeskAccountItemForm.customField.$error" ng-show="zendeskAccountItemForm.customField.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.FIELD_REQUIRED">Field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- CUSTOM FIELD --\x3e\n                        <div ng-if="vm.customField && vm.customField.custom" ng-include="\'/subject.html\'"></div>\n                        \x3c!-- / CUSTOM FIELD --\x3e\n                        \x3c!-- STANDARD FIELD --\x3e\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <md-select name="option" ng-model="vm.item.content" required>\n                                <md-option ng-value="option.value" ng-repeat="option in vm.customField.options">{{option.name}}</md-option>\n                            </md-select>\n                            <div ng-messages="zendeskAccountItemForm.option.$error" ng-show="zendeskAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        <md-input-container class="md-block" ng-if="vm.customField && !vm.customField.custom && !vm.customField.options.length">\n                            <label translate="INTEGRATIONS.VALUE">Value</label>\n                            <input type="text" name="option" ng-model="vm.item.content" required>\n                            <div ng-messages="zendeskAccountItemForm.option.$error" ng-show="zendeskAccountItemForm.option.$touched" role="alert">\n                                <div ng-message="required">\n                                    <span translate="INTEGRATIONS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                                </div>\n                            </div>\n                        </md-input-container>\n                        \x3c!-- / STANDARD FIELD --\x3e\n                    </div>\n                    <div ng-if="!vm.accountConnected">\n                        <p>Account is not connected. Please check your configurations!</p>\n                    </div>\n                    \x3c!-- / FIELD SECTION --\x3e\n                </div>\n                <div ng-switch-default>\n                    <p>No Item</p>\n                </div>\n            </div>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newItem" ng-click="vm.saveItem()" class="send-button md-accent md-raised" ng-disabled="zendeskAccountItemForm.$invalid || zendeskAccountItemForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newItem" ng-click="vm.addNewItem()" class="send-button md-accent md-raised" ng-disabled="zendeskAccountItemForm.$invalid || zendeskAccountItemForm.$pristine" aria-label="ADD" translate="INTEGRATIONS.ADD" translate-attr-aria-label="INTEGRATIONS.ADD">\n                    ADD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newItem" ng-click="vm.deleteItem($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>\n\n<script type="text/ng-template" id="/subject.html">\n    <md-input-container class="md-block">\n        <label translate="INTEGRATIONS.TYPE">Type</label>\n        <md-select name="type" ng-model="vm.item.type" required>\n            <md-option value="string">String</md-option>\n            <md-option value="variable">Variable</md-option>\n            <md-option value="customVariable">Custom Variable</md-option>\n        </md-select>\n        <div ng-messages="zendeskAccountItemForm.type.$error" ng-show="zendeskAccountItemForm.type.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'string\'">\n        <label translate="INTEGRATIONS.CONTENT">Content</label>\n        <input type="text" name="content" ng-model="vm.item.content" required md-autofocus>\n        <div ng-messages="zendeskAccountItemForm.content.$error" ng-show="zendeskAccountItemForm.content.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.CONTENT_REQUIRED">Content field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'variable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select name="variableName" ng-model="vm.item.variableName" md-selected-text="vm.getSelectedVariable()" required>\n            <md-optgroup label="Voice: Queue">\n                <md-option ng-value="agentColumn" ng-repeat="agentColumn in vm.voiceAgentReportColumns">{{agentColumn}}</md-option>\n            </md-optgroup>\n            <md-optgroup label="Voice: Outbound">\n                <md-option ng-value="dialColumn" ng-repeat="dialColumn in vm.voiceDialReportColumns">{{dialColumn}}</md-option>\n            </md-optgroup>\n        </md-select>\n        <div ng-messages="zendeskAccountItemForm.variableName.$error" ng-show="zendeskAccountItemForm.variableName.$touched" role="alert">\n            <div ng-message="required">\n                <span translate="INTEGRATIONS.ERRORS.VARIABLENAME_REQUIRED">Variable name field is required</span>\n            </div>\n        </div>\n    </md-input-container>\n\n    <md-input-container class="md-block" ng-if="vm.item.type == \'customVariable\'">\n        <label translate="INTEGRATIONS.VALUE">Value</label>\n        <md-select ng-model="vm.item.VariableId" required>\n            <md-option ng-value="variable.id" ng-repeat="variable in vm.variables">{{variable.name}}</md-option>\n        </md-select>\n    </md-input-container>\n<\/script>'),e.put("app/main/apps/integrations/views/zendeskAccounts/edit/view.html",'<div id="integrations-zendeskAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-zendeskAccounts-button md-icon-button" aria-label="Go to zendeskAccounts" ng-click="vm.gotoZendeskAccounts()" translate translate-attr-aria-label="INTEGRATIONS.GO_TO_ZENDESKACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.zendeskAccount.userpic" class="zendeskAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.zendeskAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.zendeskAccount.userpic" class="zendeskAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/zendeskAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.zendeskAccount.id}} {{vm.zendeskAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="INTEGRATIONS.CREATED_AT"></span> <span>{{vm.zendeskAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveZendeskAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (zendeskConfigurationsForm.$invalid)" translate="INTEGRATIONS.SAVE" translate-attr-aria-label="INTEGRATIONS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="zendeskAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.zendeskAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.USERNAME">Username</label>\n                                <input type="text" name="username" ng-model="vm.zendeskAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.URI">Uri</label>\n                                <input type="url" name="remoteUri" ng-model="vm.zendeskAccount.remoteUri" required>\n                                <div ng-messages="generalForm.remoteUri.$error" ng-show="generalForm.remoteUri.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_REQUIRED">Uri field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.URI_MUST_VALID_URL">Uri must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.AUTHTYPE">AuthType</label>\n                                <md-select ng-model="vm.zendeskAccount.authType" required>\n                                    <md-option ng-value="\'password\'">Password</md-option>\n                                    <md-option ng-value="\'token\'">Token</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.authType.$error" ng-show="generalForm.authType.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.AUTHTYPE_REQUIRED">AuthType field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.zendeskAccount.authType == \'password\'">\n                                <label translate="INTEGRATIONS.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.zendeskAccount.password" placeholder="Password" translate translate-attr-placeholder="INTEGRATIONS.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newZendeskAccount  && vm.zendeskAccount.authType == \'password\'">\n                                <label translate="INTEGRATIONS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="INTEGRATIONS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.zendeskAccount.authType == \'token\'" class="md-block">\n                                <label translate="INTEGRATIONS.TOKEN">Token</label>\n                                <input type="text" name="token" ng-model="vm.zendeskAccount.token" required>\n                                <div ng-messages="generalForm.token.$error" ng-show="generalForm.token.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.TOKEN_REQUIRED">Token field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.MOTIONPROXYADDRESS">MotionProxyAddress</label>\n                                <input type="url" name="serverUrl" ng-model="vm.zendeskAccount.serverUrl">\n                                <div class="hint"><span translate="INTEGRATIONS.HELP.MOTIONPROXYADDRESS"></span></div>\n                                <div ng-messages="generalForm.serverUrl.$error" ng-show="generalForm.serverUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_REQUIRED">MotionProxyAddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="INTEGRATIONS.ERRORS.MOTIONPROXYADDRESS_MUST_VALID_URL">MotionProxyAddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="INTEGRATIONS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.zendeskAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="INTEGRATIONS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="INTEGRATIONS.CONFIGURATIONS">CONFIGURATIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="zendeskAccount-detail-form-container zendeskconfigurations md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="INTEGRATIONS.ZENDESKCONFIGURATIONS">ZENDESKCONFIGURATIONS</div>\n                        </div>\n                        <div ng-controller="ZendeskAccountConfigurationsController as vm_cc" ng-init="vm_cc.init(vm.zendeskAccount)" layout="row">\n                            <md-card class="md-whiteframe-1dp" flex="30">\n                                <div layout="row" layout-align="center center">\n                                    <md-subheader flex="75" class="md-no-sticky">{{ \'INTEGRATIONS.CONFIGURATIONS\' | translate }}</md-subheader>\n                                    <md-button flex="25" ng-click="vm_cc.createOrEditZendeskConfiguration($event)" class="md-icon-button" aria-label="create zendeskConfiguration">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                                <md-list>\n                                    <md-list-item layout="row" layout-align="center center" ng-repeat="zendeskConfiguration in vm_cc.zendeskConfigurations" class="border-top" md-colors="{background: (vm_cc.selectedZendeskConfiguration == $index ? \'accent\' : \'grey-A100\')}" ng-click="vm_cc.getZendeskConfiguration($index)">\n                                        <span class="text-truncate" flex="80">{{ zendeskConfiguration.name }}</span>\n                                        <md-menu>\n                                            <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                            </md-button>\n                                            <md-menu-content width="3">\n                                                <md-menu-item>\n                                                    <md-button ng-click="vm_cc.deleteZendeskConfiguration($event, zendeskConfiguration)" translate="INTEGRATIONS.DELETE_ZENDESKCONFIGURATION">\n                                                        Delete ZendeskConfiguration\n                                                    </md-button>\n                                                </md-menu-item>\n                                            </md-menu-content>\n                                        </md-menu>\n                                    </md-list-item>\n                                </md-list>\n                            </md-card>\n                            <div flex></div>\n                            <md-card class="md-whiteframe-1dp" flex="65">\n                                <md-tabs ng-if="vm_cc.zendeskConfigurations.length" md-dynamic-height>\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.SUBJECTS">SUBJECTS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.subject = query" on-collapse="vm_cc.query.subject = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditSubject($event)" aria-label="add subject" translate translate-attr-label="INTEGRATIONS.ADD_SUBJECT">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedSubjects.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedSubjects.length}} {{vm_cc.selectedSubjects.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedSubjects($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedSubjects">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="subject" md-select-id="id" ng-repeat="subject in vm_cc.subjects | filter: vm_cc.query.subject">\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="id ">{{subject.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell class="type ">\n                                                                <span ng-if="subject.FieldId">{{subject.nameField}}</span>\n                                                                <span ng-if="!subject.FieldId">{{subject.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="subject.type" ng-click="vm_cc.createOrEditSubject($event, subject)" md-cell>\n                                                                <span ng-switch-when="string">{{subject.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{subject.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{subject.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{subject.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[subject.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{subject.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditSubject($event, subject)" translate="INTEGRATIONS.EDIT_SUBJECT">\n                                                                                Edit Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteSubjectConfirm($event, subject)" translate="INTEGRATIONS.DELETE_SUBJECT">\n                                                                                Delete Subject\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.DESCRIPTIONS">DESCRIPTIONS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.description = query" on-collapse="vm_cc.query.description = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditDescription($event)" aria-label="add description" translate translate-attr-label="INTEGRATIONS.ADD_DESCRIPTION">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedDescriptions.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedDescriptions.length}} {{vm_cc.selectedDescriptions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedDescriptions($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedDescriptions">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="description" md-select-id="id" ng-repeat="description in vm_cc.descriptions | filter: vm_cc.query.description">\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="id ">{{description.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditDescription($event, description)" md-cell class="type ">\n                                                                <span ng-if="description.FieldId">{{description.nameField}}</span>\n                                                                <span ng-if="!description.FieldId">{{description.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="description.type" ng-click="vm_cc.createOrEditDescription($event, description)" md-cell>\n                                                                <span ng-switch-when="string">{{description.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{description.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{description.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{description.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[description.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{description.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditDescription($event, description)" translate="INTEGRATIONS.EDIT_DESCRIPTION">\n                                                                                Edit Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteDescriptionConfirm($event, description)" translate="INTEGRATIONS.DELETE_DESCRIPTION">\n                                                                                Delete Description\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.FIELDS">FIELDS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-toolbar class="md-table-toolbar md-default no-padding" ng-hide="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <div flex></div>\n                                                    <ms-search-bar on-search="vm_cc.query.field = query" on-collapse="vm_cc.query.field = undefined" debounce="300"></ms-search-bar>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.createOrEditField($event)" aria-label="add field" translate translate-attr-label="INTEGRATIONS.ADD_FIELD">\n                                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_cc.selectedFields.length">\n                                                <div class="md-toolbar-tools">\n                                                    <span class="md-subhead">{{vm_cc.selectedFields.length}} {{vm_cc.selectedFields.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                                    <div flex></div>\n                                                    <md-button class="md-icon-button" ng-click="vm_cc.deleteSelectedFields($event)" aria-label="delete selected" translate translate-attr-label="INTEGRATIONS.DELETE_SELECTED">\n                                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                                    </md-button>\n                                                </div>\n                                            </md-toolbar>\n                                            <md-table-container class="md-whiteframe-1dp padding-horizontal">\n                                                <table md-table md-row-select multiple ng-model="vm_cc.selectedFields">\n                                                    <thead md-head md-order="vm.query.sort">\n                                                        <tr md-row>\n                                                            <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                                            <th md-column md-order-by="type">{{ \'INTEGRATIONS.TYPE\' | translate }}</th>\n                                                            <th md-column>{{ \'INTEGRATIONS.CONTENT\' | translate }}</th>\n                                                            <th md-column width="10px"></th>\n                                                        </tr>\n                                                    </thead>\n                                                    <tbody md-body>\n                                                        <tr md-row md-select="field" md-select-id="id" ng-repeat="field in vm_cc.fields | filter: vm_cc.query.field">\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="id ">{{field.id}}</td>\n                                                            <td ng-click="vm_cc.createOrEditField($event, field)" md-cell class="type ">\n                                                                <span ng-if="field.FieldId">{{field.nameField}}</span>\n                                                                <span ng-if="!field.FieldId">{{field.type}}</span>\n                                                            </td>\n                                                            <td ng-switch="field.type" ng-click="vm_cc.createOrEditField($event, field)" md-cell>\n                                                                <span ng-switch-when="string">{{field.content}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                <span ng-switch-when="keyValue">\n                                {{field.key}}\n                                <span ng-switch="description.keyType">\n                                    <span ng-switch-when="string">{{field.keyContent}}</span>\n                                                                <span ng-switch-when="variable" class="text-boxed">{{field.variableName}}</span>\n                                                                <span ng-switch-when="customVariable" class="text-boxed">{{ vm_cc.variablesById[field.VariableId].name }}</span>\n                                                                </span>\n                                                                </span>\n                                                                <span ng-switch-default>{{field.content}}</span>\n                                                            </td>\n                                                            <td md-cell class="actions">\n                                                                <md-menu>\n                                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                                    </md-button>\n\n                                                                    <md-menu-content width="3">\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.createOrEditField($event, field)" translate="INTEGRATIONS.EDIT_FIELD">\n                                                                                Edit Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                        <md-menu-item>\n                                                                            <md-button ng-click="vm_cc.deleteFieldConfirm($event, field)" translate="INTEGRATIONS.DELETE_FIELD">\n                                                                                Delete Field\n                                                                            </md-button>\n                                                                        </md-menu-item>\n                                                                    </md-menu-content>\n                                                                </md-menu>\n                                                            </td>\n                                                        </tr>\n                                                    </tbody>\n                                                </table>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n\n                                    <md-tab>\n                                        <md-tab-label>\n                                            <span translate="INTEGRATIONS.TAGS">TAGS</span>\n                                        </md-tab-label>\n                                        <md-tab-body>\n                                            <md-table-container class="md-whiteframe-1dp padding-20">\n                                                <md-input-container class="md-block">\n                                                    <label translate="INTEGRATIONS.TAGS">Tags</label>\n                                                    <md-select ng-model="vm_cc.selectedTags" ng-change="vm_cc.selectTagsChanged($event)" multiple>\n                                                        <md-option ng-value="tag.id" ng-repeat="tag in vm_cc.tags">{{ tag.name }}</md-option>\n                                                    </md-select>\n                                                </md-input-container>\n                                            </md-table-container>\n                                        </md-tab-body>\n                                    </md-tab>\n                                </md-tabs>\n                                <div class="padding-20" ng-if="!vm_cc.zendeskConfigurations.length" ng-click="vm_cc.createOrEditZendeskConfiguration($event)" layout="row" layout-sm="column" layout-align="center center" layout-wrap>\n                                    <div class="padding-20 md-whiteframe-3dp md-accent-bg" layout="column" layout-align="center center">\n                                        <md-button class="md-icon-button">\n                                            <md-icon md-font-icon="icon-plus"></md-icon>\n                                        </md-button>\n                                        <span aria-label="add configuration" translate translate-attr-label="INTEGRATIONS.ADD_CONFIGURATION">ADD CONFIGURATION</span>\n                                    </div>\n                                </div>\n                            </md-card>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/integrations/views/zendeskAccounts/edit/zendeskConfigurations/dialog.html",'<md-dialog class="zendeskConfiguration-dialog" aria-label="New ZendeskConfiguration">\n    <form name="zendeskConfigurationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.zendeskConfiguration.name" required autofocus>\n                <div ng-messages="zendeskConfigurationForm.name.$error" ng-show="zendeskConfigurationForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.zendeskConfiguration.channel" required>\n\n                    <md-option ng-value="\'voice\'"> {{ \'INTEGRATIONS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="zendeskConfigurationForm.channel.$error" ng-show="zendeskConfigurationForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="INTEGRATIONS.TYPE">Type</label>\n                <md-select ng-model="vm.zendeskConfiguration.type" required>\n\n                    <md-option ng-value="\'inbound\'"> {{ \'INTEGRATIONS.INBOUND_IN_QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'outbound\'"> {{ \'INTEGRATIONS.OUTBOUND_CALL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="zendeskConfigurationForm.type.$error" ng-show="zendeskConfigurationForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="INTEGRATIONS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newZendeskConfiguration" ng-click="vm.saveZendeskConfiguration()" class="send-button md-accent md-raised" ng-disabled="zendeskConfigurationForm.$invalid || zendeskConfigurationForm.$pristine" aria-label="SAVE" translate="INTEGRATIONS.SAVE"\n                    translate-attr-aria-label="INTEGRATIONS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newZendeskConfiguration" ng-click="vm.addNewZendeskConfiguration()" class="send-button md-accent md-raised" ng-disabled="zendeskConfigurationForm.$invalid" aria-label="ADD" translate="INTEGRATIONS.ADD_ZENDESKCONFIGURATION"\n                    translate-attr-aria-label="INTEGRATIONS.ADD_ZENDESKCONFIGURATION">\n                    ADD ZENDESKCONFIGURATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newZendeskConfiguration" ng-click="vm.deleteZendeskConfiguration($event)" aria-label="DELETE" translate translate-attr-aria-label="INTEGRATIONS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="INTEGRATIONS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/integrations/views/zendeskAccounts/zendeskAccounts.html",'<div id="zendeskAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-heart" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="INTEGRATIONS.ZENDESKACCOUNTS">ZendeskAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="INTEGRATIONS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedZendeskAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedZendeskAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="INTEGRATIONS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-zendeskAccounts-count">\n                    <span>{{vm.selectedZendeskAccounts.length}}</span>\n                <span translate="INTEGRATIONS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="ZENDESKACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllZendeskAccounts()" translate="INTEGRATIONS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectZendeskAccounts()" translate="INTEGRATIONS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedZendeskAccounts" filename="zendeskAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedZendeskAccounts($event)" aria-label="delete selected" translate translate-attr-label="ZENDESKACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- ZENDESKACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedZendeskAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getZendeskAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'INTEGRATIONS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'INTEGRATIONS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="username">{{ \'INTEGRATIONS.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="remoteUri">{{ \'INTEGRATIONS.URI\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.zendeskAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="INTEGRATIONS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="zendeskAccount" md-select-id="id" ng-repeat="zendeskAccount in vm.zendeskAccounts.rows">\n                                <td md-cell ng-if="zendeskAccount.userpic"><img class="avatar" alt="{{zendeskAccount.name}}" ng-src="api/users/{{zendeskAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!zendeskAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{zendeskAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditZendeskAccount($event, zendeskAccount)" md-cell class="id ">{{zendeskAccount.id}}</td>\n                                <td ng-click="vm.createOrEditZendeskAccount($event, zendeskAccount)" md-cell class="name ">{{zendeskAccount.name}}</td>\n                                <td ng-click="vm.createOrEditZendeskAccount($event, zendeskAccount)" md-cell class="username ">{{zendeskAccount.username}}</td>\n                                <td ng-click="vm.createOrEditZendeskAccount($event, zendeskAccount)" md-cell class="remoteUri ">{{zendeskAccount.remoteUri}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="INTEGRATIONS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(zendeskAccount, $event)" translate="INTEGRATIONS.EDIT_ZENDESKACCOUNT">\n                                                    Edit ZendeskAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(zendeskAccount, $event)" translate="INTEGRATIONS.DELETE_ZENDESKACCOUNT">\n                                                    Delete ZendeskAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.zendeskAccounts.count}}" md-on-paginate="vm.getZendeskAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / ZENDESKACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD ZENDESKACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-zendeskAccount-button" ng-click="vm.createOrEditZendeskAccount($event)" aria-label="add zendeskAccount" translate translate-attr-aria-label="INTEGRATIONS.ADD_ZENDESKACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD ZENDESKACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/mail/views/mailAccounts/create/dialog.html",'<md-dialog class="mailAccount-dialog" aria-label="New MailAccount">\n    <form name="mailAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MAIL.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.mailAccount.name" required autofocus>\n                <div ng-messages="mailAccountForm.name.$error" ng-show="mailAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.EMAIL_ADDRESS">Email_Address</label>\n                <input type="email" name="address" ng-model="vm.mailAccount.address" required>\n                <div ng-messages="mailAccountForm.address.$error" ng-show="mailAccountForm.address.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.EMAIL_ADDRESS_REQUIRED">Email_Address field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="MAIL.ERRORS.EMAIL_ADDRESS_MUST_VALID">Email_Address must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.mailAccount.description">\n                <div ng-messages="mailAccountForm.description.$error" ng-show="mailAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMailAccount" ng-click="vm.saveMailAccount()" class="send-button md-accent md-raised" ng-disabled="mailAccountForm.$invalid || mailAccountForm.$pristine" aria-label="SAVE" translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMailAccount" ng-click="vm.addNewMailAccount()" class="send-button md-accent md-raised" ng-disabled="mailAccountForm.$invalid" aria-label="ADD" translate="MAIL.ADD_MAILACCOUNT" translate-attr-aria-label="MAIL.ADD_MAILACCOUNT">\n                    ADD MAILACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMailAccount" ng-click="vm.deleteMailAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="MAIL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MAIL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/mail/views/mailAccounts/edit/mailDispositions/dialog.html",'<md-dialog class="mailDisposition-dialog" aria-label="New MailDisposition">\n    <form name="mailDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MAIL.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.mailDisposition.name" required autofocus>\n                <div ng-messages="mailDispositionForm.name.$error" ng-show="mailDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMailDisposition" ng-click="vm.saveMailDisposition()" class="send-button md-accent md-raised" ng-disabled="mailDispositionForm.$invalid || mailDispositionForm.$pristine" aria-label="SAVE" translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMailDisposition" ng-click="vm.addNewMailDisposition()" class="send-button md-accent md-raised" ng-disabled="mailDispositionForm.$invalid" aria-label="ADD" translate="MAIL.ADD_MAILDISPOSITION" translate-attr-aria-label="MAIL.ADD_MAILDISPOSITION">\n                    ADD MAILDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMailDisposition" ng-click="vm.deleteMailDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="MAIL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MAIL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/mail/views/mailAccounts/edit/view.html",'<div id="mail-mailAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-mailAccounts-button md-icon-button" aria-label="Go to mailAccounts" ng-click="vm.gotoMailAccounts()" translate translate-attr-aria-label="MAIL.GO_TO_MAILACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.mailAccount.userpic" class="mailAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.mailAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.mailAccount.userpic" class="mailAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/mailAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.mailAccount.id}} {{vm.mailAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="MAIL.CREATED_AT"></span> <span>{{vm.mailAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveMailAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (imapForm.$invalid) || (smtpForm.$invalid) || (mailDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid) || (whitelabelForm.$invalid) || (signatureForm.$invalid)"\n                translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.mailAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.EMAIL_ADDRESS">Email_Address</label>\n                                <input type="email" name="address" ng-model="vm.mailAccount.address" required>\n                                <div ng-messages="generalForm.address.$error" ng-show="generalForm.address.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.EMAIL_ADDRESS_REQUIRED">Email_Address field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="MAIL.ERRORS.EMAIL_ADDRESS_MUST_VALID">Email_Address must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.LIST">List</label>\n                                <md-select ng-model="vm.mailAccount.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.TEMPLATE">template</label>\n                                <md-select ng-model="vm.mailAccount.TemplateId">\n                                    <md-option ng-value="TemplateId.id" ng-repeat="TemplateId in vm.templates">{{ TemplateId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TemplateId.$error" ng-show="generalForm.TemplateId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.TEMPLATE_REQUIRED">template field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.fidelity" aria-label="Fidelity"><span translate="MAIL.FIDELITY">Fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.mailAccount.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.service" aria-label="service"><span translate="MAIL.SERVICE">service</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.mailAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.IMAP">IMAP</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container imap md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.IMAP">IMAP</div>\n                        </div>\n                        <form name="imapForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.HOST">host</label>\n                                <input type="text" name="Imap.host" ng-model="vm.mailAccount.Imap.host" required autofocus>\n                                <div ng-messages="imapForm.Imap.host.$error" ng-show="imapForm.Imap.host.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.HOST_REQUIRED">host field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.USERNAME">username</label>\n                                <input type="text" name="Imap.username" ng-model="vm.mailAccount.Imap.username" required>\n                                <div ng-messages="imapForm.Imap.username.$error" ng-show="imapForm.Imap.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.USERNAME_REQUIRED">username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.PASSWORD">password</label>\n                                <input type="password" name="Imap.password" ng-model="vm.mailAccount.Imap.password" placeholder="Password" translate translate-attr-placeholder="MAIL.PASSWORD" required>\n                                <div ng-messages="imapForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newMailAccount ">\n                                <label translate="MAIL.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="Imap.password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="imapForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="MAIL.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.PORT">port</label>\n                                <input type="number" name="Imap.port" ng-model="vm.mailAccount.Imap.port" required>\n                                <div ng-messages="imapForm.Imap.port.$error" ng-show="imapForm.Imap.port.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.PORT_REQUIRED">port field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.MAILBOX">mailbox</label>\n                                <input type="text" name="Imap.mailbox" ng-model="vm.mailAccount.Imap.mailbox">\n                                <div ng-messages="imapForm.Imap.mailbox.$error" ng-show="imapForm.Imap.mailbox.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.MAILBOX_REQUIRED">mailbox field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.CONNTIMEOUT">connTimeout</label>\n                                <input type="number" name="Imap.connTimeout" ng-model="vm.mailAccount.Imap.connTimeout" required>\n                                <div ng-messages="imapForm.Imap.connTimeout.$error" ng-show="imapForm.Imap.connTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CONNTIMEOUT_REQUIRED">connTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.AUTHTIMEOUT">authTimeout</label>\n                                <input type="number" name="Imap.authTimeout" ng-model="vm.mailAccount.Imap.authTimeout" required>\n                                <div ng-messages="imapForm.Imap.authTimeout.$error" ng-show="imapForm.Imap.authTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.AUTHTIMEOUT_REQUIRED">authTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.Imap.delete" aria-label="delete"><span translate="MAIL.DELETE">delete</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.Imap.ssl" aria-label="ssl"><span translate="MAIL.SSL">ssl</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.Imap.keepalive" aria-label="keepalive"><span translate="MAIL.KEEPALIVE">keepalive</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.SMTP">SMTP</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container smtp md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.SMTP">SMTP</div>\n                        </div>\n                        <form name="smtpForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.HOST">host</label>\n                                <input type="text" name="Smtp.host" ng-model="vm.mailAccount.Smtp.host" required autofocus>\n                                <div ng-messages="smtpForm.Smtp.host.$error" ng-show="smtpForm.Smtp.host.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.HOST_REQUIRED">host field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.USERNAME">username</label>\n                                <input type="text" name="Smtp.username" ng-model="vm.mailAccount.Smtp.username" required>\n                                <div ng-messages="smtpForm.Smtp.username.$error" ng-show="smtpForm.Smtp.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.USERNAME_REQUIRED">username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.PASSWORD">password</label>\n                                <input type="password" name="Smtp.password" ng-model="vm.mailAccount.Smtp.password" placeholder="Password" translate translate-attr-placeholder="MAIL.PASSWORD" required>\n                                <div ng-messages="smtpForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newMailAccount ">\n                                <label translate="MAIL.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="Smtp.password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="smtpForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="MAIL.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.PORT">port</label>\n                                <input type="number" name="Smtp.port" ng-model="vm.mailAccount.Smtp.port" required>\n                                <div ng-messages="smtpForm.Smtp.port.$error" ng-show="smtpForm.Smtp.port.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.PORT_REQUIRED">port field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.mailAccount.Smtp.ssl" aria-label="ssl"><span translate="MAIL.SSL">ssl</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container maildispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="MailAccountMailDispositionsController as vm_dc" ng-init="vm_dc.init(vm.mailAccount)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedMailAccountMailDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MAIL.MAILDISPOSITIONS">MailDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditMailAccountMailDisposition($event)" aria-label="add mailDisposition" translate translate-attr-label="MAIL.ADD_MAILDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedMailAccountMailDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedMailAccountMailDispositions.length}} {{vm_dc.selectedMailAccountMailDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedMailAccountMailDispositions($event)" aria-label="delete selected" translate translate-attr-label="MAILACCOUNTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedMailAccountMailDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getMailAccountMailDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'MAIL.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'MAIL.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'MAIL.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="mailDisposition" md-select-id="id" ng-repeat="mailDisposition in vm_dc.mailAccountMailDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditMailAccountMailDisposition($event, mailDisposition)" md-cell>{{mailDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditMailAccountMailDisposition($event, mailDisposition)" md-cell>{{mailDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditMailAccountMailDisposition($event, mailDisposition)" md-cell>{{mailDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MAIL.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditMailAccountMailDisposition($event, mailDisposition)" translate="MAIL.EDIT_MAILDISPOSITION">\n                                                                Edit MailDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(mailDisposition, $event)" translate="MAIL.DELETE_MAILDISPOSITION">\n                                                                Delete MailDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.mailAccountMailDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="MAIL.NO_MAILDISPOSITION_AVAILABLE">No maildisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.mailAccountMailDispositions.count}}" md-on-paginate="vm_dc.getMailAccountMailDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.mailAccount.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.mailAccount.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="MAIL.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="mailAccount-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.mailAccount.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.mailAccount.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="MAIL.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="mailAccount-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.mailAccount.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.mailAccount.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="MAIL.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.OTHERS">OTHERS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailAccount-detail-form-container whitelabel md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.WHITELABEL">WHITELABEL</div>\n                        </div>\n                        <form name="whitelabelForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.WHITELABEL">whiteLabel</label>\n                                <textarea ng-model="vm.mailAccount.whiteLabel" md-maxlength="150" max-rows="5" autofocus></textarea>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="mailAccount-detail-form-container signature md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.SIGNATURE">SIGNATURE</div>\n                        </div>\n                        <form name="signatureForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/mail/views/mailAccounts/mailAccounts.html",'<div id="mailAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-email" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="MAIL.MAILACCOUNTS">MailAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="MAIL.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedMailAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedMailAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="MAIL.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-mailAccounts-count">\n                    <span>{{vm.selectedMailAccounts.length}}</span>\n                <span translate="MAIL.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="MAILACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllMailAccounts()" translate="MAIL.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectMailAccounts()" translate="MAIL.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedMailAccounts" filename="mailAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedMailAccounts($event)" aria-label="delete selected" translate translate-attr-label="MAILACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- MAILACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedMailAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getMailAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'MAIL.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'MAIL.NAME\' | translate }}</th>\n                                <th md-column md-order-by="address">{{ \'MAIL.EMAIL_ADDRESS\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'MAIL.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.mailAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="MAIL.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="mailAccount" md-select-id="id" ng-repeat="mailAccount in vm.mailAccounts.rows">\n                                <td md-cell ng-if="mailAccount.userpic"><img class="avatar" alt="{{mailAccount.name}}" ng-src="api/users/{{mailAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!mailAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{mailAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditMailAccount($event, mailAccount)" md-cell class="id ">{{mailAccount.id}}</td>\n                                <td ng-click="vm.createOrEditMailAccount($event, mailAccount)" md-cell class="name ">{{mailAccount.name}}</td>\n                                <td ng-click="vm.createOrEditMailAccount($event, mailAccount)" md-cell class="address ">{{mailAccount.address}}</td>\n                                <td ng-click="vm.createOrEditMailAccount($event, mailAccount)" md-cell class="description ">{{mailAccount.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MAIL.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(mailAccount, $event)" translate="MAIL.EDIT_MAILACCOUNT">\n                                                    Edit MailAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(mailAccount, $event)" translate="MAIL.DELETE_MAILACCOUNT">\n                                                    Delete MailAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.mailAccounts.count}}" md-on-paginate="vm.getMailAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / MAILACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD MAILACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-mailAccount-button" ng-click="vm.createOrEditMailAccount($event)" aria-label="add mailAccount" translate translate-attr-aria-label="MAIL.ADD_MAILACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD MAILACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/mail/views/mailQueues/create/dialog.html",'<md-dialog class="mailQueue-dialog" aria-label="New MailQueue">\n    <form name="mailQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MAIL.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.mailQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="mailQueueForm.name.$error" ng-show="mailQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="MAIL.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.mailQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="mailQueueForm.strategy.$error" ng-show="mailQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.mailQueue.timeout" required>\n                <div ng-messages="mailQueueForm.timeout.$error" ng-show="mailQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MAIL.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.mailQueue.description">\n                <div ng-messages="mailQueueForm.description.$error" ng-show="mailQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MAIL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMailQueue" ng-click="vm.saveMailQueue()" class="send-button md-accent md-raised" ng-disabled="mailQueueForm.$invalid || mailQueueForm.$pristine" aria-label="SAVE" translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMailQueue" ng-click="vm.addNewMailQueue()" class="send-button md-accent md-raised" ng-disabled="mailQueueForm.$invalid" aria-label="ADD" translate="MAIL.ADD_MAILQUEUE" translate-attr-aria-label="MAIL.ADD_MAILQUEUE">\n                    ADD MAILQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMailQueue" ng-click="vm.deleteMailQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="MAIL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MAIL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/mail/views/mailQueues/edit/teamadd/teamadd.html",'<md-dialog class="mailQueue-dialog" aria-label="mailQueue">\n    <form name="mailQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MAIL.TEAMADD_MAILQUEUE">Add Team in MAILQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="MAIL.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="mailQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/mail/views/mailQueues/edit/view.html",'<div id="mail-mailQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-mailQueues-button md-icon-button" aria-label="Go to mailQueues" ng-click="vm.gotoMailQueues()" translate translate-attr-aria-label="MAIL.GO_TO_MAILQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.mailQueue.userpic" class="mailQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.mailQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.mailQueue.userpic" class="mailQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/mailQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.mailQueue.id}} {{vm.mailQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="MAIL.CREATED_AT"></span> <span>{{vm.mailQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.mailQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="MAIL.TEAMADD_MAILQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveMailQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="MAIL.SAVE" translate-attr-aria-label="MAIL.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MAIL.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="mailQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MAIL.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.mailQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="MAIL.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.mailQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.mailQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MAIL.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.mailQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MAIL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/mail/views/mailQueues/mailQueues.html",'<div id="mailQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-email" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="MAIL.MAILQUEUES">MailQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="MAIL.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedMailQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedMailQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="MAIL.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-mailQueues-count">\n                    <span>{{vm.selectedMailQueues.length}}</span>\n                <span translate="MAIL.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="MAILQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllMailQueues()" translate="MAIL.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectMailQueues()" translate="MAIL.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedMailQueues" filename="mailQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedMailQueues($event)" aria-label="delete selected" translate translate-attr-label="MAILQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- MAILQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedMailQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getMailQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'MAIL.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'MAIL.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'MAIL.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.mailQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="MAIL.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="mailQueue" md-select-id="id" ng-repeat="mailQueue in vm.mailQueues.rows">\n                                <td md-cell ng-if="mailQueue.userpic"><img class="avatar" alt="{{mailQueue.name}}" ng-src="api/users/{{mailQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!mailQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{mailQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditMailQueue($event, mailQueue)" md-cell class="id ">{{mailQueue.id}}</td>\n                                <td ng-click="vm.createOrEditMailQueue($event, mailQueue)" md-cell class="name ">{{mailQueue.name}}</td>\n                                <td ng-click="vm.createOrEditMailQueue($event, mailQueue)" md-cell class="strategy ">{{ vm.arraystrategy[mailQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MAIL.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(mailQueue, $event)" translate="MAIL.EDIT_MAILQUEUE">\n                                                    Edit MailQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(mailQueue, $event)" translate="MAIL.DELETE_MAILQUEUE">\n                                                    Delete MailQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.mailQueues.count}}" md-on-paginate="vm.getMailQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / MAILQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD MAILQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-mailQueue-button" ng-click="vm.createOrEditMailQueue($event)" aria-label="add mailQueue" translate translate-attr-aria-label="MAIL.ADD_MAILQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD MAILQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/create/dialog.html",'<md-dialog class="ivrCampaign-dialog" aria-label="New IvrCampaign">\n    <form name="ivrCampaignForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.ivrCampaign.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="!vm.newIvrCampaign">\n                <div ng-messages="ivrCampaignForm.name.$error" ng-show="ivrCampaignForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.ivrCampaign.active" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.TRUNK">Trunk</label>\n                <md-select ng-model="vm.ivrCampaign.TrunkId" required>\n                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                </md-select>\n                <div ng-messages="ivrCampaignForm.TrunkId.$error" ng-show="ivrCampaignForm.TrunkId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.INTERVAL">Interval</label>\n                <md-select ng-model="vm.ivrCampaign.IntervalId" required>\n                    <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>\n                </md-select>\n                <div ng-messages="ivrCampaignForm.IntervalId.$error" ng-show="ivrCampaignForm.IntervalId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.CALLYSQUAREPROJECT">CallySquareProject</label>\n                <md-select ng-model="vm.ivrCampaign.SquareProjectId" required>\n                    <md-option ng-value="SquareProjectId.id" ng-repeat="SquareProjectId in vm.projects">{{ SquareProjectId.name }}</md-option>\n                </md-select>\n                <div ng-messages="ivrCampaignForm.SquareProjectId.$error" ng-show="ivrCampaignForm.SquareProjectId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.CALLYSQUAREPROJECT_REQUIRED">CallySquareProject field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.CONCURRENTCALLS">ConcurrentCalls</label>\n                <input type="number" name="limitCalls" ng-model="vm.ivrCampaign.limitCalls" min="1" max="200" required>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.CONCURRENTCALLS"></span></div>\n                <div ng-messages="ivrCampaignForm.limitCalls.$error" ng-show="ivrCampaignForm.limitCalls.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.CONCURRENTCALLS_REQUIRED">ConcurrentCalls field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.ivrCampaign.description">\n                <div ng-messages="ivrCampaignForm.description.$error" ng-show="ivrCampaignForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newIvrCampaign" ng-click="vm.saveIvrCampaign()" class="send-button md-accent md-raised" ng-disabled="ivrCampaignForm.$invalid || ivrCampaignForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newIvrCampaign" ng-click="vm.addNewIvrCampaign()" class="send-button md-accent md-raised" ng-disabled="ivrCampaignForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_IVRCAMPAIGN" translate-attr-aria-label="MOTIONDIALER.ADD_IVRCAMPAIGN">\n                    ADD IVRCAMPAIGN\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newIvrCampaign" ng-click="vm.deleteIvrCampaign($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/edit/blacklistadd/blacklistadd.html",'<md-dialog class="ivrCampaign-dialog" aria-label="ivrCampaign">\n    <form name="ivrCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.BLACKLISTADD_IVRCAMPAIGN">Add List in IVRCAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/edit/hoppers/dialog.html",'<md-dialog class="hopper-dialog" aria-label="New Hopper">\n    <form name="hopperForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div flex class="md-block">\n                <mdp-date-picker mdp-open-on-click name="scheduledatDate" mdp-placeholder="Date" mdp-format="YYYY-MM-DD" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.dateRangeFrom.$error" ng-show="hopperForm.dateRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="MOTIONDIALER.ERRORS.DATE_REQUIRED">Date is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="MOTIONDIALER.ERRORS.DATE_INVALID">Date is invalid</span>\n                        </div>\n                    </div>\n                </mdp-date-picker>\n            </div>\n\n            <div flex class="md-block">\n                <mdp-time-picker mdp-open-on-click name="scheduledatTime" mdp-placeholder="Time" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.timeRangeFrom.$error" ng-show="hopperForm.timeRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="MOTIONDIALER.ERRORS.TIME_REQUIRED">Time is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="MOTIONDIALER.ERRORS.TIME_INVALID">Time is invalid</span>\n                        </div>\n                    </div>\n                </mdp-time-picker>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newHopper" ng-click="vm.saveHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid || hopperForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newHopper" ng-click="vm.addNewHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_HOPPER" translate-attr-aria-label="MOTIONDIALER.ADD_HOPPER">\n                    ADD HOPPER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newHopper" ng-click="vm.deleteHopper($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/edit/listadd/listadd.html",'<md-dialog class="ivrCampaign-dialog" aria-label="ivrCampaign">\n    <form name="ivrCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.LISTADD_IVRCAMPAIGN">Add List in IVRCAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/edit/view.html",'<div id="motiondialer-ivrCampaign" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-ivrCampaigns-button md-icon-button" aria-label="Go to ivrCampaigns" ng-click="vm.gotoIvrCampaigns()" translate translate-attr-aria-label="MOTIONDIALER.GO_TO_IVRCAMPAIGNS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.ivrCampaign.userpic" class="ivrCampaign-image" hide-xs>\n                    <img ng-src="api/users/{{vm.ivrCampaign.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.ivrCampaign.userpic" class="ivrCampaign-image" hide-xs>\n                    <img ng-src="assets/images/business/ivrCampaigns.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.ivrCampaign.id}} {{vm.ivrCampaign.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="MOTIONDIALER.CREATED_AT"></span> <span>{{vm.ivrCampaign.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.listadddialog(vm.ivrCampaign, $event)" class="md-fab md-green-500-bg md-icon-button" aria-label="listadd">\n                <md-tooltip><span translate="MOTIONDIALER.LISTADD_IVRCAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-format-list-numbers"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.blacklistadddialog(vm.ivrCampaign, $event)" class="md-fab md-warn md-icon-button" aria-label="blacklistadd">\n                <md-tooltip><span translate="MOTIONDIALER.BLACKLISTADD_IVRCAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-block-helper"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveIvrCampaign()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (campaignForm.$invalid) || (originateForm.$invalid) || (globalForm.$invalid) || (congestionForm.$invalid) || (busyForm.$invalid) || (noanswerForm.$invalid) || (globalintervalForm.$invalid) || (timezoneForm.$invalid) || (hoppersForm.$invalid) || (hopperHistoriesForm.$invalid) || (hopperFinalsForm.$invalid) || (hopperBlacksForm.$invalid)"\n                translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.ivrCampaign.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.ivrCampaign.active" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TRUNK">Trunk</label>\n                                <md-select ng-model="vm.ivrCampaign.TrunkId" required>\n                                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkId.$error" ng-show="generalForm.TrunkId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BACKUPTRUNK">BackupTrunk</label>\n                                <md-select ng-model="vm.ivrCampaign.TrunkBackupId">\n                                    <md-option ng-value="TrunkBackupId.id" ng-repeat="TrunkBackupId in vm.trunks">{{ TrunkBackupId.name }}</md-option>\n                                    <md-option ng-value="null">None</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkBackupId.$error" ng-show="generalForm.TrunkBackupId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BACKUPTRUNK_REQUIRED">BackupTrunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.INTERVAL">Interval</label>\n                                <md-select ng-model="vm.ivrCampaign.IntervalId" required>\n                                    <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.IntervalId.$error" ng-show="generalForm.IntervalId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.ivrCampaign.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.CAMPAIGN">CAMPAIGN</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container campaign md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.CAMPAIGN">CAMPAIGN</div>\n                        </div>\n                        <form name="campaignForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CALLYSQUAREPROJECT">CallySquareProject</label>\n                                <md-select ng-model="vm.ivrCampaign.SquareProjectId" required autofocus>\n                                    <md-option ng-value="SquareProjectId.id" ng-repeat="SquareProjectId in vm.projects">{{ SquareProjectId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="campaignForm.SquareProjectId.$error" ng-show="campaignForm.SquareProjectId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CALLYSQUAREPROJECT_REQUIRED">CallySquareProject field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONCURRENTCALLS">ConcurrentCalls</label>\n                                <input type="number" name="limitCalls" ng-model="vm.ivrCampaign.limitCalls" min="1" max="200" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONCURRENTCALLS"></span></div>\n                                <div ng-messages="campaignForm.limitCalls.$error" ng-show="campaignForm.limitCalls.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONCURRENTCALLS_REQUIRED">ConcurrentCalls field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container originate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.ORIGINATE">ORIGINATE</div>\n                        </div>\n                        <form name="originateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATECALLERIDNAME">OriginateCallerIdName</label>\n                                <input type="text" name="dialOriginateCallerIdName" ng-model="vm.ivrCampaign.dialOriginateCallerIdName" autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATECALLERIDNAME"></span></div>\n                                <div ng-messages="originateForm.dialOriginateCallerIdName.$error" ng-show="originateForm.dialOriginateCallerIdName.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATECALLERIDNAME_REQUIRED">OriginateCallerIdName field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATECALLERIDNUMBER">OriginateCallerIdNumber</label>\n                                <input type="text" name="dialOriginateCallerIdNumber" ng-model="vm.ivrCampaign.dialOriginateCallerIdNumber">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATECALLERIDNUMBER"></span></div>\n                                <div ng-messages="originateForm.dialOriginateCallerIdNumber.$error" ng-show="originateForm.dialOriginateCallerIdNumber.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATECALLERIDNUMBER_REQUIRED">OriginateCallerIdNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATETIMEOUT">OriginateTimeout</label>\n                                <input type="number" name="dialOriginateTimeout" ng-model="vm.ivrCampaign.dialOriginateTimeout" min="1" max="999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATETIMEOUT"></span></div>\n                                <div ng-messages="originateForm.dialOriginateTimeout.$error" ng-show="originateForm.dialOriginateTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATETIMEOUT_REQUIRED">OriginateTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.RETRYANDFREQUENCY">RETRYANDFREQUENCY</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container global md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GLOBAL">GLOBAL</div>\n                        </div>\n                        <form name="globalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.GLOBALMAXRETRY">GlobalMaxRetry</label>\n                                <input type="number" name="dialGlobalMaxRetry" ng-model="vm.ivrCampaign.dialGlobalMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.GLOBALMAXRETRY"></span></div>\n                                <div ng-messages="globalForm.dialGlobalMaxRetry.$error" ng-show="globalForm.dialGlobalMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.GLOBALMAXRETRY_REQUIRED">GlobalMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container congestion md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.CONGESTION">CONGESTION</div>\n                        </div>\n                        <form name="congestionForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONGESTIONMAXRETRY">CongestionMaxRetry</label>\n                                <input type="number" name="dialCongestionMaxRetry" ng-model="vm.ivrCampaign.dialCongestionMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONGESTIONMAXRETRY"></span></div>\n                                <div ng-messages="congestionForm.dialCongestionMaxRetry.$error" ng-show="congestionForm.dialCongestionMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONGESTIONMAXRETRY_REQUIRED">CongestionMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONGESTIONRETRYTIME">CongestionRetryTime</label>\n                                <input type="number" name="dialCongestionRetryFrequency" ng-model="vm.ivrCampaign.dialCongestionRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONGESTIONRETRYTIME"></span></div>\n                                <div ng-messages="congestionForm.dialCongestionRetryFrequency.$error" ng-show="congestionForm.dialCongestionRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONGESTIONRETRYTIME_REQUIRED">CongestionRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container busy md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.BUSY">BUSY</div>\n                        </div>\n                        <form name="busyForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BUSYMAXRETRY">BusyMaxRetry</label>\n                                <input type="number" name="dialBusyMaxRetry" ng-model="vm.ivrCampaign.dialBusyMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.BUSYMAXRETRY"></span></div>\n                                <div ng-messages="busyForm.dialBusyMaxRetry.$error" ng-show="busyForm.dialBusyMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BUSYMAXRETRY_REQUIRED">BusyMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BUSYRETRYTIME">BusyRetryTime</label>\n                                <input type="number" name="dialBusyRetryFrequency" ng-model="vm.ivrCampaign.dialBusyRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.BUSYRETRYTIME"></span></div>\n                                <div ng-messages="busyForm.dialBusyRetryFrequency.$error" ng-show="busyForm.dialBusyRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BUSYRETRYTIME_REQUIRED">BusyRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container noanswer md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.NOANSWER">NOANSWER</div>\n                        </div>\n                        <form name="noanswerForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NOANSWERMAXRETRY">NoAnswerMaxRetry</label>\n                                <input type="number" name="dialNoAnswerMaxRetry" ng-model="vm.ivrCampaign.dialNoAnswerMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.NOANSWERMAXRETRY"></span></div>\n                                <div ng-messages="noanswerForm.dialNoAnswerMaxRetry.$error" ng-show="noanswerForm.dialNoAnswerMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NOANSWERMAXRETRY_REQUIRED">NoAnswerMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NOANSWERRETRYTIME">NoAnswerRetryTime</label>\n                                <input type="number" name="dialNoAnswerRetryFrequency" ng-model="vm.ivrCampaign.dialNoAnswerRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.NOANSWERRETRYTIME"></span></div>\n                                <div ng-messages="noanswerForm.dialNoAnswerRetryFrequency.$error" ng-show="noanswerForm.dialNoAnswerRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NOANSWERRETRYTIME_REQUIRED">NoAnswerRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container globalinterval md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GLOBALINTERVAL">GLOBALINTERVAL</div>\n                        </div>\n                        <form name="globalintervalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.GLOBALINTERVAL">GlobalInterval</label>\n                                <input type="text" name="dialGlobalInterval" ng-model="vm.ivrCampaign.dialGlobalInterval" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.GLOBALINTERVAL"></span></div>\n                                <div ng-messages="globalintervalForm.dialGlobalInterval.$error" ng-show="globalintervalForm.dialGlobalInterval.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.GLOBALINTERVAL_REQUIRED">GlobalInterval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="ivrCampaign-detail-form-container timezone md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.TIMEZONE">TIMEZONE</div>\n                        </div>\n                        <form name="timezoneForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TIMEZONE">Timezone</label>\n                                <ms-timezone name="dialTimezone" ng-model="vm.ivrCampaign.dialTimezone" autofocus>\n                                    <div class="hint"><span translate="MOTIONDIALER.HELP.TIMEZONE"></span></div>\n                                    <div ng-messages="timezoneForm.dialTimezone.$error" ng-show="timezoneForm.dialTimezone.$touched" role="alert">\n                                        <div ng-message="required">\n                                            <span translate="MOTIONDIALER.ERRORS.TIMEZONE_REQUIRED">Timezone field is required</span>\n                                        </div>\n                                    </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.HOPPERS">HOPPERS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container hoppers md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IvrCampaignHoppersController as vm_dc" ng-init="vm_dc.init(vm.ivrCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIvrCampaignHoppers.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERS">Hoppers</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditIvrCampaignHopper($event)" aria-label="add hopper" translate translate-attr-label="MOTIONDIALER.ADD_HOPPER">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIvrCampaignHoppers.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIvrCampaignHoppers.length}} {{vm_dc.selectedIvrCampaignHoppers.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIvrCampaignHoppers($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIvrCampaignHoppers" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIvrCampaignHoppers">\n                                        <tr md-row>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="countcongestionretry">{{ \'MOTIONDIALER.CONGESTION\' | translate }}</th>\n                                            <th md-column md-order-by="countbusyretry">{{ \'MOTIONDIALER.BUSY\' | translate }}</th>\n                                            <th md-column md-order-by="countnoanswerretry">{{ \'MOTIONDIALER.NOANSWER\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'MOTIONDIALER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopper" md-select-id="id" ng-repeat="hopper in vm_dc.ivrCampaignHoppers.rows">\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.ContactId}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.phone}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.countcongestionretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.countbusyretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.countnoanswerretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" md-cell>{{hopper.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditIvrCampaignHopper($event, hopper)" translate="MOTIONDIALER.EDIT_HOPPER">\n                                                                Edit Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopper, $event)" translate="MOTIONDIALER.DELETE_HOPPER">\n                                                                Delete Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.ivrCampaignHoppers.rows.length">\n                                            <td md-cell colspan="9">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPER_AVAILABLE">No hopper available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.ivrCampaignHoppers.count}}" md-on-paginate="vm_dc.getIvrCampaignHoppers" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.HISTORY">HISTORY</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container hopperhistories md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IvrCampaignHopperHistoriesController as vm_dc" ng-init="vm_dc.init(vm.ivrCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIvrCampaignHopperHistories.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERHISTORIES">HopperHistories</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIvrCampaignHopperHistories.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIvrCampaignHopperHistories.length}} {{vm_dc.selectedIvrCampaignHopperHistories.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIvrCampaignHopperHistories($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIvrCampaignHopperHistories" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIvrCampaignHopperHistories">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'MOTIONDIALER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="calleridname">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="statedesc">{{ \'MOTIONDIALER.STATUS\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'MOTIONDIALER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'MOTIONDIALER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'MOTIONDIALER.ENDTIME\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperHistory" md-select-id="id" ng-repeat="hopperHistory in vm_dc.ivrCampaignHopperHistories.rows">\n                                            <td md-cell>{{hopperHistory.uniqueid}}</td>\n                                            <td md-cell>{{hopperHistory.ContactId}}</td>\n                                            <td md-cell>{{hopperHistory.calleridnum}}</td>\n                                            <td md-cell>{{hopperHistory.calleridname}}</td>\n                                            <td md-cell>{{hopperHistory.statedesc}}</td>\n                                            <td md-cell>{{hopperHistory.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperHistory.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperHistory.endtime | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperHistory, $event)" translate="MOTIONDIALER.DELETE_HOPPERHISTORY">\n                                                                Delete HopperHistory\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.ivrCampaignHopperHistories.rows.length">\n                                            <td md-cell colspan="11">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERHISTORY_AVAILABLE">No hopperhistory available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.ivrCampaignHopperHistories.count}}" md-on-paginate="vm_dc.getIvrCampaignHopperHistories" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.FINAL">FINAL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container hopperfinals md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IvrCampaignHopperFinalsController as vm_dc" ng-init="vm_dc.init(vm.ivrCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIvrCampaignHopperFinals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERFINALS">HopperFinals</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIvrCampaignHopperFinals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIvrCampaignHopperFinals.length}} {{vm_dc.selectedIvrCampaignHopperFinals.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIvrCampaignHopperFinals($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIvrCampaignHopperFinals" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIvrCampaignHopperFinals">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'MOTIONDIALER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="calleridname">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="statedesc">{{ \'MOTIONDIALER.STATUS\' | translate }}</th>\n                                            <th md-column md-order-by="countcongestionretry">{{ \'MOTIONDIALER.CONGESTION\' | translate }}</th>\n                                            <th md-column md-order-by="countbusyretry">{{ \'MOTIONDIALER.BUSY\' | translate }}</th>\n                                            <th md-column md-order-by="countnoanswerretry">{{ \'MOTIONDIALER.NOANSWER\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'MOTIONDIALER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'MOTIONDIALER.ENDTIME\' | translate }}</th>\n                                            <th md-column md-order-by="disposition">{{ \'MOTIONDIALER.DISPOSITION\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperFinal" md-select-id="id" ng-repeat="hopperFinal in vm_dc.ivrCampaignHopperFinals.rows">\n                                            <td md-cell>{{hopperFinal.uniqueid}}</td>\n                                            <td md-cell>{{hopperFinal.calleridnum}}</td>\n                                            <td md-cell>{{hopperFinal.calleridname}}</td>\n                                            <td md-cell>{{hopperFinal.statedesc}}</td>\n                                            <td md-cell>{{hopperFinal.countcongestionretry}}</td>\n                                            <td md-cell>{{hopperFinal.countbusyretry}}</td>\n                                            <td md-cell>{{hopperFinal.countnoanswerretry}}</td>\n                                            <td md-cell>{{hopperFinal.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperFinal.endtime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperFinal.disposition}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperFinal, $event)" translate="MOTIONDIALER.DELETE_HOPPERFINAL">\n                                                                Delete HopperFinal\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.ivrCampaignHopperFinals.rows.length">\n                                            <td md-cell colspan="15">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERFINAL_AVAILABLE">No hopperfinal available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.ivrCampaignHopperFinals.count}}" md-on-paginate="vm_dc.getIvrCampaignHopperFinals" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.BLACKLIST">BLACKLIST</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="ivrCampaign-detail-form-container hopperblacks md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IvrCampaignHopperBlacksController as vm_dc" ng-init="vm_dc.init(vm.ivrCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIvrCampaignHopperBlacks.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERBLACKS">HopperBlacks</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIvrCampaignHopperBlacks.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIvrCampaignHopperBlacks.length}} {{vm_dc.selectedIvrCampaignHopperBlacks.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIvrCampaignHopperBlacks($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIvrCampaignHopperBlacks" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIvrCampaignHopperBlacks">\n                                        <tr md-row>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperBlack" md-select-id="id" ng-repeat="hopperBlack in vm_dc.ivrCampaignHopperBlacks.rows">\n                                            <td md-cell>{{hopperBlack.ContactId}}</td>\n                                            <td md-cell>{{hopperBlack.phone}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperBlack, $event)" translate="MOTIONDIALER.DELETE_HOPPERBLACK">\n                                                                Delete HopperBlack\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.ivrCampaignHopperBlacks.rows.length">\n                                            <td md-cell colspan="4">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERBLACK_AVAILABLE">No hopperblack available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.ivrCampaignHopperBlacks.count}}" md-on-paginate="vm_dc.getIvrCampaignHopperBlacks" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/motiondialer/views/ivrCampaigns/ivrCampaigns.html",'<div id="ivrCampaigns" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-fire" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="MOTIONDIALER.IVRCAMPAIGNS">IvrCampaigns</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="MOTIONDIALER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedIvrCampaigns.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedIvrCampaigns =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="MOTIONDIALER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-ivrCampaigns-count">\n                    <span>{{vm.selectedIvrCampaigns.length}}</span>\n                <span translate="MOTIONDIALER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="IVRCAMPAIGNS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllIvrCampaigns()" translate="MOTIONDIALER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectIvrCampaigns()" translate="MOTIONDIALER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedIvrCampaigns" filename="ivrCampaigns.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedIvrCampaigns($event)" aria-label="delete selected" translate translate-attr-label="IVRCAMPAIGNS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- IVRCAMPAIGN TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedIvrCampaigns" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getIvrCampaigns">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'MOTIONDIALER.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                <th md-column md-order-by="active">{{ \'MOTIONDIALER.ACTIVE\' | translate }}</th>\n                                <th md-column md-order-by="TrunkId">{{ \'MOTIONDIALER.TRUNK\' | translate }}</th>\n                                <th md-column md-order-by="SquareProjectId">{{ \'MOTIONDIALER.CALLYSQUAREPROJECT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.ivrCampaigns.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="ivrCampaign" md-select-id="id" ng-repeat="ivrCampaign in vm.ivrCampaigns.rows">\n                                <td md-cell ng-if="ivrCampaign.userpic"><img class="avatar" alt="{{ivrCampaign.name}}" ng-src="api/users/{{ivrCampaign.id}}/avatar" /></td>\n                                <td md-cell ng-if="!ivrCampaign.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{ivrCampaign.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="id ">{{ivrCampaign.id}}</td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="name ">{{ivrCampaign.name}}</td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="active ">\n                                    <md-icon md-colors="{color: {{ivrCampaign.active ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{ivrCampaign.active ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="TrunkId ">{{ TrunkId = vm.trunks[ivrCampaign.TrunkId]; TrunkId.name }}</td>\n                                <td ng-click="vm.createOrEditIvrCampaign($event, ivrCampaign)" md-cell class="SquareProjectId ">{{ SquareProjectId = vm.projects[ivrCampaign.SquareProjectId]; SquareProjectId.name }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(ivrCampaign, $event)" translate="MOTIONDIALER.EDIT_IVRCAMPAIGN">\n                                                    Edit IvrCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.listadddialog(ivrCampaign, $event)" translate="MOTIONDIALER.LISTADD_IVRCAMPAIGN">\n                                                    listadd IvrCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.blacklistadddialog(ivrCampaign, $event)" translate="MOTIONDIALER.BLACKLISTADD_IVRCAMPAIGN">\n                                                    blacklistadd IvrCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(ivrCampaign, $event)" translate="MOTIONDIALER.DELETE_IVRCAMPAIGN">\n                                                    Delete IvrCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.ivrCampaigns.count}}" md-on-paginate="vm.getIvrCampaigns" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / IVRCAMPAIGN TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD IVRCAMPAIGN BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-ivrCampaign-button" ng-click="vm.createOrEditIvrCampaign($event)" aria-label="add ivrCampaign" translate translate-attr-aria-label="MOTIONDIALER.ADD_IVRCAMPAIGN">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD IVRCAMPAIGN BUTTON --\x3e\n</div>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/create/dialog.html",'<md-dialog class="queueCampaign-dialog" aria-label="New QueueCampaign">\n    <form name="queueCampaignForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.queueCampaign.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="!vm.newQueueCampaign">\n                <div ng-messages="queueCampaignForm.name.$error" ng-show="queueCampaignForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.queueCampaign.dialActive" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.TRUNK">Trunk</label>\n                <md-select ng-model="vm.queueCampaign.TrunkId" required>\n                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                </md-select>\n                <div ng-messages="queueCampaignForm.TrunkId.$error" ng-show="queueCampaignForm.TrunkId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.INTERVAL">Interval</label>\n                <md-select ng-model="vm.queueCampaign.IntervalId" required>\n                    <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>\n                </md-select>\n                <div ng-messages="queueCampaignForm.IntervalId.$error" ng-show="queueCampaignForm.IntervalId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.METHOD">Method</label>\n                <md-select ng-model="vm.queueCampaign.dialMethod" required>\n                    <md-option ng-value="\'progressive\'">Progressive</md-option>\n                    <md-option ng-value="\'power\'">PowerDialing</md-option>\n                    <md-option ng-value="\'predictive\'">Predictive</md-option>\n                </md-select>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.METHOD"></span></div>\n                <div ng-messages="queueCampaignForm.dialMethod.$error" ng-show="queueCampaignForm.dialMethod.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.METHOD_REQUIRED">Method field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'power\'" class="md-block">\n                <span translate="MOTIONDIALER.POWERLEVEL">PowerLevel</span>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.POWERLEVEL"></span></div>\n                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPowerLevel" min="1" max="10" step="0.1" class="md-accent">\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                <label translate="MOTIONDIALER.PREDICTIVEOPTIMIZATION">PredictiveOptimization</label>\n                <md-select ng-model="vm.queueCampaign.dialPredictiveOptimization">\n\n                    <md-option ng-value="\'agentBusyFactor\'"> {{ \'MOTIONDIALER.AGENTBUSYFACTOR\' | translate }}</md-option>\n\n                    <md-option ng-value="\'dropRate\'"> {{ \'MOTIONDIALER.DROPRATE\' | translate }}</md-option>\n                </md-select>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEOPTIMIZATION"></span></div>\n                <div ng-messages="queueCampaignForm.dialPredictiveOptimization.$error" ng-show="queueCampaignForm.dialPredictiveOptimization.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.PREDICTIVEOPTIMIZATION_REQUIRED">PredictiveOptimization field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                <span translate="MOTIONDIALER.PREDICTIVEOPTIMIZATIONPERCENTAGE">PredictiveOptimizationPercentage</span>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEOPTIMIZATIONPERCENTAGE"></span></div>\n                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPredictiveOptimizationPercentage" min="1" max="95" step="0.1" class="md-accent">\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                <span translate="MOTIONDIALER.PREDICTIVEINTERVAL">PredictiveInterval</span>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEINTERVAL"></span></div>\n                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPredictiveInterval" min="5" max="30" step="1" class="md-accent">\n            </md-input-container>\n            <md-input-container ng-if="vm.queueCampaign.dialMethod != \'preview\'" class="md-block">\n                <label translate="MOTIONDIALER.MAXCONCURRENTCALLS">MaxConcurrentCalls</label>\n                <input type="number" name="dialLimitQueue" ng-model="vm.queueCampaign.dialLimitQueue" min="0" max="9999" required>\n                <div class="hint"><span translate="MOTIONDIALER.HELP.MAXCONCURRENTCALLS"></span></div>\n                <div ng-messages="queueCampaignForm.dialLimitQueue.$error" ng-show="queueCampaignForm.dialLimitQueue.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.MAXCONCURRENTCALLS_REQUIRED">MaxConcurrentCalls field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="MOTIONDIALER.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.queueCampaign.description">\n                <div ng-messages="queueCampaignForm.description.$error" ng-show="queueCampaignForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newQueueCampaign" ng-click="vm.saveQueueCampaign()" class="send-button md-accent md-raised" ng-disabled="queueCampaignForm.$invalid || queueCampaignForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newQueueCampaign" ng-click="vm.addNewQueueCampaign()" class="send-button md-accent md-raised" ng-disabled="queueCampaignForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_QUEUECAMPAIGN" translate-attr-aria-label="MOTIONDIALER.ADD_QUEUECAMPAIGN">\n                    ADD QUEUECAMPAIGN\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newQueueCampaign" ng-click="vm.deleteQueueCampaign($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/agentadd/agentadd.html",'<md-dialog class="queueCampaign-dialog" aria-label="queueCampaign">\n    <form name="queueCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.AGENTADD_QUEUECAMPAIGN">Add Agent to queueCampaign</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="MOTIONDIALER.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="queueCampaignForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/blacklistadd/blacklistadd.html",'<md-dialog class="queueCampaign-dialog" aria-label="queueCampaign">\n    <form name="queueCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.BLACKLISTADD_QUEUECAMPAIGN">Add List in QUEUECAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/hoppers/dialog.html",'<md-dialog class="hopper-dialog" aria-label="New Hopper">\n    <form name="hopperForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div flex class="md-block">\n                <mdp-date-picker mdp-open-on-click name="scheduledatDate" mdp-placeholder="Date" mdp-format="YYYY-MM-DD" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.dateRangeFrom.$error" ng-show="hopperForm.dateRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="MOTIONDIALER.ERRORS.DATE_REQUIRED">Date is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="MOTIONDIALER.ERRORS.DATE_INVALID">Date is invalid</span>\n                        </div>\n                    </div>\n                </mdp-date-picker>\n            </div>\n\n            <div flex class="md-block">\n                <mdp-time-picker mdp-open-on-click name="scheduledatTime" mdp-placeholder="Time" mdp-format="HH:mm:ss" mdp-auto-switch="true" ng-model="vm.hopper.scheduledat" ng-init="vm.hopper.scheduledat = vm.getDateFromString(vm.hopper.scheduledat)">\n                    <div ng-messages="hopperForm.timeRangeFrom.$error" ng-show="hopperForm.timeRangeFrom.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="MOTIONDIALER.ERRORS.TIME_REQUIRED">Time is required</span>\n                        </div>\n                        <div ng-message="format">\n                            <span translate="MOTIONDIALER.ERRORS.TIME_INVALID">Time is invalid</span>\n                        </div>\n                    </div>\n                </mdp-time-picker>\n            </div>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newHopper" ng-click="vm.saveHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid || hopperForm.$pristine" aria-label="SAVE" translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newHopper" ng-click="vm.addNewHopper()" class="send-button md-accent md-raised" ng-disabled="hopperForm.$invalid" aria-label="ADD" translate="MOTIONDIALER.ADD_HOPPER" translate-attr-aria-label="MOTIONDIALER.ADD_HOPPER">\n                    ADD HOPPER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newHopper" ng-click="vm.deleteHopper($event)" aria-label="DELETE" translate translate-attr-aria-label="MOTIONDIALER.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="MOTIONDIALER.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/listadd/listadd.html",'<md-dialog class="queueCampaign-dialog" aria-label="queueCampaign">\n    <form name="queueCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.LISTADD_QUEUECAMPAIGN">Add List in QUEUECAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/teamadd/teamadd.html",'<md-dialog class="queueCampaign-dialog" aria-label="queueCampaign">\n    <form name="queueCampaignForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="MOTIONDIALER.TEAMADD_QUEUECAMPAIGN">Add Team in QUEUECAMPAIGN</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="MOTIONDIALER.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="queueCampaignForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/edit/view.html",'<div id="motiondialer-queueCampaign" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-queueCampaigns-button md-icon-button" aria-label="Go to queueCampaigns" ng-click="vm.gotoQueueCampaigns()" translate translate-attr-aria-label="MOTIONDIALER.GO_TO_QUEUECAMPAIGNS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.queueCampaign.userpic" class="queueCampaign-image" hide-xs>\n                    <img ng-src="api/users/{{vm.queueCampaign.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.queueCampaign.userpic" class="queueCampaign-image" hide-xs>\n                    <img ng-src="assets/images/business/queueCampaigns.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.queueCampaign.id}} {{vm.queueCampaign.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="MOTIONDIALER.CREATED_AT"></span> <span>{{vm.queueCampaign.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.listadddialog(vm.queueCampaign, $event)" class="md-fab md-green-500-bg md-icon-button" aria-label="listadd">\n                <md-tooltip><span translate="MOTIONDIALER.LISTADD_QUEUECAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-format-list-numbers"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.blacklistadddialog(vm.queueCampaign, $event)" class="md-fab md-warn md-icon-button" aria-label="blacklistadd">\n                <md-tooltip><span translate="MOTIONDIALER.BLACKLISTADD_QUEUECAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-block-helper"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.queueCampaign, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="MOTIONDIALER.TEAMADD_QUEUECAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.agentadddialog(vm.queueCampaign, $event)" class="md-fab md-purple-500-bg md-icon-button" aria-label="agentadd">\n                <md-tooltip><span translate="MOTIONDIALER.AGENTADD_QUEUECAMPAIGN"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveQueueCampaign()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (campaignForm.$invalid) || (queueForm.$invalid) || (originateForm.$invalid) || (globalForm.$invalid) || (congestionForm.$invalid) || (busyForm.$invalid) || (noanswerForm.$invalid) || (advancedForm.$invalid) || (globalintervalForm.$invalid) || (timezoneForm.$invalid) || (hoppersForm.$invalid) || (hopperHistoriesForm.$invalid) || (hopperFinalsForm.$invalid) || (hopperBlacksForm.$invalid)"\n                translate="MOTIONDIALER.SAVE" translate-attr-aria-label="MOTIONDIALER.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.queueCampaign.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="MOTIONDIALER.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.queueCampaign.dialActive" aria-label="Active"><span translate="MOTIONDIALER.ACTIVE">Active</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TRUNK">Trunk</label>\n                                <md-select ng-model="vm.queueCampaign.TrunkId" required>\n                                    <md-option ng-value="TrunkId.id" ng-repeat="TrunkId in vm.trunks">{{ TrunkId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkId.$error" ng-show="generalForm.TrunkId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BACKUPTRUNK">BackupTrunk</label>\n                                <md-select ng-model="vm.queueCampaign.TrunkBackupId">\n                                    <md-option ng-value="TrunkBackupId.id" ng-repeat="TrunkBackupId in vm.trunks">{{ TrunkBackupId.name }}</md-option>\n                                    <md-option ng-value="null">None</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.TrunkBackupId.$error" ng-show="generalForm.TrunkBackupId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BACKUPTRUNK_REQUIRED">BackupTrunk field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.INTERVAL">Interval</label>\n                                <md-select ng-model="vm.queueCampaign.IntervalId" required>\n                                    <md-option ng-value="IntervalId.id" ng-repeat="IntervalId in vm.interval">{{ IntervalId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.IntervalId.$error" ng-show="generalForm.IntervalId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.INTERVAL_REQUIRED">Interval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.queueCampaign.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.CAMPAIGN">CAMPAIGN</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container campaign md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.CAMPAIGN">CAMPAIGN</div>\n                        </div>\n                        <form name="campaignForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.METHOD">Method</label>\n                                <md-select ng-model="vm.queueCampaign.dialMethod" required autofocus>\n                                    <md-option ng-value="\'progressive\'">Progressive</md-option>\n                                    <md-option ng-value="\'power\'">PowerDialing</md-option>\n                                    <md-option ng-value="\'predictive\'">Predictive</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.METHOD"></span></div>\n                                <div ng-messages="campaignForm.dialMethod.$error" ng-show="campaignForm.dialMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.METHOD_REQUIRED">Method field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'power\'" class="md-block">\n                                <span translate="MOTIONDIALER.POWERLEVEL">PowerLevel</span>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.POWERLEVEL"></span></div>\n                                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPowerLevel" min="1" max="10" step="0.1" class="md-accent">\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                                <label translate="MOTIONDIALER.PREDICTIVEOPTIMIZATION">PredictiveOptimization</label>\n                                <md-select ng-model="vm.queueCampaign.dialPredictiveOptimization">\n\n                                    <md-option ng-value="\'agentBusyFactor\'"> {{ \'MOTIONDIALER.AGENTBUSYFACTOR\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'dropRate\'"> {{ \'MOTIONDIALER.DROPRATE\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEOPTIMIZATION"></span></div>\n                                <div ng-messages="campaignForm.dialPredictiveOptimization.$error" ng-show="campaignForm.dialPredictiveOptimization.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.PREDICTIVEOPTIMIZATION_REQUIRED">PredictiveOptimization field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                                <span translate="MOTIONDIALER.PREDICTIVEOPTIMIZATIONPERCENTAGE">PredictiveOptimizationPercentage</span>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEOPTIMIZATIONPERCENTAGE"></span></div>\n                                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPredictiveOptimizationPercentage" min="1" max="95" step="0.1" class="md-accent">\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod == \'predictive\'" class="md-block">\n                                <span translate="MOTIONDIALER.PREDICTIVEINTERVAL">PredictiveInterval</span>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.PREDICTIVEINTERVAL"></span></div>\n                                <md-slider md-discrete flex ng-model="vm.queueCampaign.dialPredictiveInterval" min="5" max="30" step="1" class="md-accent">\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.dialMethod != \'preview\'" class="md-block">\n                                <label translate="MOTIONDIALER.MAXCONCURRENTCALLS">MaxConcurrentCalls</label>\n                                <input type="number" name="dialLimitQueue" ng-model="vm.queueCampaign.dialLimitQueue" min="0" max="9999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.MAXCONCURRENTCALLS"></span></div>\n                                <div ng-messages="campaignForm.dialLimitQueue.$error" ng-show="campaignForm.dialLimitQueue.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.MAXCONCURRENTCALLS_REQUIRED">MaxConcurrentCalls field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container queue md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.QUEUE">QUEUE</div>\n                        </div>\n                        <form name="queueForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.QUEUEOPTIONS">QueueOptions</label>\n                                <input type="text" name="dialQueueOptions" ng-model="vm.queueCampaign.dialQueueOptions" autofocus>\n                                <div ng-messages="queueForm.dialQueueOptions.$error" ng-show="queueForm.dialQueueOptions.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.QUEUEOPTIONS_REQUIRED">QueueOptions field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.QUEUETIMEOUT">QueueTimeout</label>\n                                <input type="number" name="dialQueueTimeout" ng-model="vm.queueCampaign.dialQueueTimeout" min="1" max="99" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.QUEUETIMEOUT"></span></div>\n                                <div ng-messages="queueForm.dialQueueTimeout.$error" ng-show="queueForm.dialQueueTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.QUEUETIMEOUT_REQUIRED">QueueTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.queueCampaign.strategy" required>\n                                    <md-option ng-value="\'rrmemory\'">Round Robin Memory</md-option>\n                                    <md-option ng-value="\'leastrecent\'">Least Recent</md-option>\n                                    <md-option ng-value="\'fewestcalls\'">Fewest Calls</md-option>\n                                    <md-option ng-value="\'random\'">Random</md-option>\n                                    <md-option ng-value="\'linear\'">Linear</md-option>\n                                    <md-option ng-value="\'wrandom\'">Weight Random</md-option>\n                                </md-select>\n                                <div ng-messages="queueForm.strategy.$error" ng-show="queueForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.AGENTTIMEOUT">AgentTimeout</label>\n                                <input type="number" name="timeout" ng-model="vm.queueCampaign.timeout" min="0" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.AGENTTIMEOUT"></span></div>\n                                <div ng-messages="queueForm.timeout.$error" ng-show="queueForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.AGENTTIMEOUT_REQUIRED">AgentTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.RETRY">Retry</label>\n                                <input type="number" name="retry" ng-model="vm.queueCampaign.retry" min="0">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.RETRY"></span></div>\n                                <div ng-messages="queueForm.retry.$error" ng-show="queueForm.retry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.RETRY_REQUIRED">Retry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.WRAPUPTIME">WrapupTime</label>\n                                <input type="number" name="wrapuptime" ng-model="vm.queueCampaign.wrapuptime" min="0">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.WRAPUPTIME"></span></div>\n                                <div ng-messages="queueForm.wrapuptime.$error" ng-show="queueForm.wrapuptime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.WRAPUPTIME_REQUIRED">WrapupTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.WEIGHT">Weight</label>\n                                <input type="number" name="weight" ng-model="vm.queueCampaign.weight" min="0">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.WEIGHT"></span></div>\n                                <div ng-messages="queueForm.weight.$error" ng-show="queueForm.weight.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.WEIGHT_REQUIRED">Weight field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.MUSICONHOLD">MusicOnHold</label>\n                                <md-select ng-model="vm.queueCampaign.musiconhold">\n                                    <md-option ng-value="musiconhold.name" ng-repeat="musiconhold in vm.musiconholds">{{ musiconhold.name }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.MUSICONHOLD"></span></div>\n                                <div ng-messages="queueForm.musiconhold.$error" ng-show="queueForm.musiconhold.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.MUSICONHOLD_REQUIRED">MusicOnHold field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CALLYSQUAREPROJECT">CallySquareProject</label>\n                                <md-select ng-model="vm.queueCampaign.dialQueueProject">\n                                    <md-option ng-value="dialQueueProject.name" ng-repeat="dialQueueProject in vm.projects">{{ dialQueueProject.name }}</md-option>\n                                    <md-option ng-value="null">None</md-option>\n                                </md-select>\n                                <div ng-messages="queueForm.dialQueueProject.$error" ng-show="queueForm.dialQueueProject.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CALLYSQUAREPROJECT_REQUIRED">CallySquareProject field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container originate md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.ORIGINATE">ORIGINATE</div>\n                        </div>\n                        <form name="originateForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATECALLERIDNAME">OriginateCallerIdName</label>\n                                <input type="text" name="dialOriginateCallerIdName" ng-model="vm.queueCampaign.dialOriginateCallerIdName" autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATECALLERIDNAME"></span></div>\n                                <div ng-messages="originateForm.dialOriginateCallerIdName.$error" ng-show="originateForm.dialOriginateCallerIdName.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATECALLERIDNAME_REQUIRED">OriginateCallerIdName field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATECALLERIDNUMBER">OriginateCallerIdNumber</label>\n                                <input type="text" name="dialOriginateCallerIdNumber" ng-model="vm.queueCampaign.dialOriginateCallerIdNumber">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATECALLERIDNUMBER"></span></div>\n                                <div ng-messages="originateForm.dialOriginateCallerIdNumber.$error" ng-show="originateForm.dialOriginateCallerIdNumber.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATECALLERIDNUMBER_REQUIRED">OriginateCallerIdNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.ORIGINATETIMEOUT">OriginateTimeout</label>\n                                <input type="number" name="dialOriginateTimeout" ng-model="vm.queueCampaign.dialOriginateTimeout" min="1" max="999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.ORIGINATETIMEOUT"></span></div>\n                                <div ng-messages="originateForm.dialOriginateTimeout.$error" ng-show="originateForm.dialOriginateTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.ORIGINATETIMEOUT_REQUIRED">OriginateTimeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.RETRYANDFREQUENCY">RETRYANDFREQUENCY</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container global md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GLOBAL">GLOBAL</div>\n                        </div>\n                        <form name="globalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.GLOBALMAXRETRY">GlobalMaxRetry</label>\n                                <input type="number" name="dialGlobalMaxRetry" ng-model="vm.queueCampaign.dialGlobalMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.GLOBALMAXRETRY"></span></div>\n                                <div ng-messages="globalForm.dialGlobalMaxRetry.$error" ng-show="globalForm.dialGlobalMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.GLOBALMAXRETRY_REQUIRED">GlobalMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container congestion md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.CONGESTION">CONGESTION</div>\n                        </div>\n                        <form name="congestionForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONGESTIONMAXRETRY">CongestionMaxRetry</label>\n                                <input type="number" name="dialCongestionMaxRetry" ng-model="vm.queueCampaign.dialCongestionMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONGESTIONMAXRETRY"></span></div>\n                                <div ng-messages="congestionForm.dialCongestionMaxRetry.$error" ng-show="congestionForm.dialCongestionMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONGESTIONMAXRETRY_REQUIRED">CongestionMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONGESTIONRETRYTIME">CongestionRetryTime</label>\n                                <input type="number" name="dialCongestionRetryFrequency" ng-model="vm.queueCampaign.dialCongestionRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONGESTIONRETRYTIME"></span></div>\n                                <div ng-messages="congestionForm.dialCongestionRetryFrequency.$error" ng-show="congestionForm.dialCongestionRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONGESTIONRETRYTIME_REQUIRED">CongestionRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container busy md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.BUSY">BUSY</div>\n                        </div>\n                        <form name="busyForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BUSYMAXRETRY">BusyMaxRetry</label>\n                                <input type="number" name="dialBusyMaxRetry" ng-model="vm.queueCampaign.dialBusyMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.BUSYMAXRETRY"></span></div>\n                                <div ng-messages="busyForm.dialBusyMaxRetry.$error" ng-show="busyForm.dialBusyMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BUSYMAXRETRY_REQUIRED">BusyMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.BUSYRETRYTIME">BusyRetryTime</label>\n                                <input type="number" name="dialBusyRetryFrequency" ng-model="vm.queueCampaign.dialBusyRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.BUSYRETRYTIME"></span></div>\n                                <div ng-messages="busyForm.dialBusyRetryFrequency.$error" ng-show="busyForm.dialBusyRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.BUSYRETRYTIME_REQUIRED">BusyRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container noanswer md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.NOANSWER">NOANSWER</div>\n                        </div>\n                        <form name="noanswerForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NOANSWERMAXRETRY">NoAnswerMaxRetry</label>\n                                <input type="number" name="dialNoAnswerMaxRetry" ng-model="vm.queueCampaign.dialNoAnswerMaxRetry" min="1" max="999" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.NOANSWERMAXRETRY"></span></div>\n                                <div ng-messages="noanswerForm.dialNoAnswerMaxRetry.$error" ng-show="noanswerForm.dialNoAnswerMaxRetry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NOANSWERMAXRETRY_REQUIRED">NoAnswerMaxRetry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.NOANSWERRETRYTIME">NoAnswerRetryTime</label>\n                                <input type="number" name="dialNoAnswerRetryFrequency" ng-model="vm.queueCampaign.dialNoAnswerRetryFrequency" min="1" max="99999" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.NOANSWERRETRYTIME"></span></div>\n                                <div ng-messages="noanswerForm.dialNoAnswerRetryFrequency.$error" ng-show="noanswerForm.dialNoAnswerRetryFrequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.NOANSWERRETRYTIME_REQUIRED">NoAnswerRetryTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.queueCampaign.acw" aria-label="AfterCallWork"><span translate="MOTIONDIALER.AFTERCALLWORK">AfterCallWork</span></md-switch>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.AFTERCALLWORK"></span></div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.queueCampaign.acw" class="md-block">\n                                <label translate="MOTIONDIALER.AFTERCALLWORKDURATION">AfterCallWorkDuration</label>\n                                <input type="number" name="acwTimeout" ng-model="vm.queueCampaign.acwTimeout" min="0" required>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.AFTERCALLWORKDURATION"></span></div>\n                                <div ng-messages="advancedForm.acwTimeout.$error" ng-show="advancedForm.acwTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.AFTERCALLWORKDURATION_REQUIRED">AfterCallWorkDuration field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.AUTOPAUSE">AutoPause</label>\n                                <md-select ng-model="vm.queueCampaign.autopause">\n\n                                    <md-option ng-value="\'all\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.AUTOPAUSE"></span></div>\n                                <div ng-messages="advancedForm.autopause.$error" ng-show="advancedForm.autopause.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.AUTOPAUSE_REQUIRED">AutoPause field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.RINGINUSE">RingInUse</label>\n                                <md-select ng-model="vm.queueCampaign.ringinuse">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.RINGINUSE"></span></div>\n                                <div ng-messages="advancedForm.ringinuse.$error" ng-show="advancedForm.ringinuse.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.RINGINUSE_REQUIRED">RingInUse field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.MEMBERDELAY">MemberDelay</label>\n                                <input type="number" name="memberdelay" ng-model="vm.queueCampaign.memberdelay" min="0">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.MEMBERDELAY"></span></div>\n                                <div ng-messages="advancedForm.memberdelay.$error" ng-show="advancedForm.memberdelay.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.MEMBERDELAY_REQUIRED">MemberDelay field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TIMEOUTRESTART">TimeoutRestart</label>\n                                <md-select ng-model="vm.queueCampaign.timeoutrestart">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.TIMEOUTRESTART"></span></div>\n                                <div ng-messages="advancedForm.timeoutrestart.$error" ng-show="advancedForm.timeoutrestart.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.TIMEOUTRESTART_REQUIRED">TimeoutRestart field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.MONITORFORMAT">MonitorFormat</label>\n                                <md-select ng-model="vm.queueCampaign.monitor_format">\n                                    <md-option ng-value="\'\'">Inactive</md-option>\n                                    <md-option ng-value="\'wav\'">wav</md-option>\n                                    <md-option ng-value="\'wav49\'">wav49</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.MONITORFORMAT"></span></div>\n                                <div ng-messages="advancedForm.monitor_format.$error" ng-show="advancedForm.monitor_format.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.MONITORFORMAT_REQUIRED">MonitorFormat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.CONTEXT">Context</label>\n                                <input type="text" name="context" ng-model="vm.queueCampaign.context">\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.CONTEXT"></span></div>\n                                <div ng-messages="advancedForm.context.$error" ng-show="advancedForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.SETINTERFACEVARIABLES">SetInterfaceVariables</label>\n                                <md-select ng-model="vm.queueCampaign.setinterfacevar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.SETINTERFACEVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setinterfacevar.$error" ng-show="advancedForm.setinterfacevar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.SETINTERFACEVARIABLES_REQUIRED">SetInterfaceVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.SETQUEUEVARIABLES">SetQueueVariables</label>\n                                <md-select ng-model="vm.queueCampaign.setqueuevar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.SETQUEUEVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setqueuevar.$error" ng-show="advancedForm.setqueuevar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.SETQUEUEVARIABLES_REQUIRED">SetQueueVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.SETQUEUEENTRYVARIABLES">SetQueueEntryVariables</label>\n                                <md-select ng-model="vm.queueCampaign.setqueueentryvar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'MOTIONDIALER.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'MOTIONDIALER.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.SETQUEUEENTRYVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setqueueentryvar.$error" ng-show="advancedForm.setqueueentryvar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.SETQUEUEENTRYVARIABLES_REQUIRED">SetQueueEntryVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container globalinterval md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.GLOBALINTERVAL">GLOBALINTERVAL</div>\n                        </div>\n                        <form name="globalintervalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.GLOBALINTERVAL">GlobalInterval</label>\n                                <input type="text" name="dialGlobalInterval" ng-model="vm.queueCampaign.dialGlobalInterval" required autofocus>\n                                <div class="hint"><span translate="MOTIONDIALER.HELP.GLOBALINTERVAL"></span></div>\n                                <div ng-messages="globalintervalForm.dialGlobalInterval.$error" ng-show="globalintervalForm.dialGlobalInterval.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="MOTIONDIALER.ERRORS.GLOBALINTERVAL_REQUIRED">GlobalInterval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="queueCampaign-detail-form-container timezone md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="MOTIONDIALER.TIMEZONE">TIMEZONE</div>\n                        </div>\n                        <form name="timezoneForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="MOTIONDIALER.TIMEZONE">Timezone</label>\n                                <ms-timezone name="dialTimezone" ng-model="vm.queueCampaign.dialTimezone" autofocus>\n                                    <div class="hint"><span translate="MOTIONDIALER.HELP.TIMEZONE"></span></div>\n                                    <div ng-messages="timezoneForm.dialTimezone.$error" ng-show="timezoneForm.dialTimezone.$touched" role="alert">\n                                        <div ng-message="required">\n                                            <span translate="MOTIONDIALER.ERRORS.TIMEZONE_REQUIRED">Timezone field is required</span>\n                                        </div>\n                                    </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.HOPPERS">HOPPERS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container hoppers md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="QueueCampaignHoppersController as vm_dc" ng-init="vm_dc.init(vm.queueCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedQueueCampaignHoppers.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERS">Hoppers</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditQueueCampaignHopper($event)" aria-label="add hopper" translate translate-attr-label="MOTIONDIALER.ADD_HOPPER">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedQueueCampaignHoppers.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedQueueCampaignHoppers.length}} {{vm_dc.selectedQueueCampaignHoppers.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedQueueCampaignHoppers($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedQueueCampaignHoppers" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getQueueCampaignHoppers">\n                                        <tr md-row>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="countcongestionretry">{{ \'MOTIONDIALER.CONGESTION\' | translate }}</th>\n                                            <th md-column md-order-by="countbusyretry">{{ \'MOTIONDIALER.BUSY\' | translate }}</th>\n                                            <th md-column md-order-by="countnoanswerretry">{{ \'MOTIONDIALER.NOANSWER\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'MOTIONDIALER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopper" md-select-id="id" ng-repeat="hopper in vm_dc.queueCampaignHoppers.rows">\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.ContactId}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.phone}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.countcongestionretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.countbusyretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.countnoanswerretry}}</td>\n                                            <td ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" md-cell>{{hopper.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditQueueCampaignHopper($event, hopper)" translate="MOTIONDIALER.EDIT_HOPPER">\n                                                                Edit Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopper, $event)" translate="MOTIONDIALER.DELETE_HOPPER">\n                                                                Delete Hopper\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.queueCampaignHoppers.rows.length">\n                                            <td md-cell colspan="9">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPER_AVAILABLE">No hopper available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.queueCampaignHoppers.count}}" md-on-paginate="vm_dc.getQueueCampaignHoppers" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.HISTORY">HISTORY</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container hopperhistories md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="QueueCampaignHopperHistoriesController as vm_dc" ng-init="vm_dc.init(vm.queueCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedQueueCampaignHopperHistories.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERHISTORIES">HopperHistories</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedQueueCampaignHopperHistories.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedQueueCampaignHopperHistories.length}} {{vm_dc.selectedQueueCampaignHopperHistories.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedQueueCampaignHopperHistories($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedQueueCampaignHopperHistories" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getQueueCampaignHopperHistories">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'MOTIONDIALER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="calleridname">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="statedesc">{{ \'MOTIONDIALER.STATUS\' | translate }}</th>\n                                            <th md-column md-order-by="scheduledat">{{ \'MOTIONDIALER.SCHEDULEDAT\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'MOTIONDIALER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'MOTIONDIALER.ENDTIME\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperHistory" md-select-id="id" ng-repeat="hopperHistory in vm_dc.queueCampaignHopperHistories.rows">\n                                            <td md-cell>{{hopperHistory.uniqueid}}</td>\n                                            <td md-cell>{{hopperHistory.ContactId}}</td>\n                                            <td md-cell>{{hopperHistory.calleridnum}}</td>\n                                            <td md-cell>{{hopperHistory.calleridname}}</td>\n                                            <td md-cell>{{hopperHistory.statedesc}}</td>\n                                            <td md-cell>{{hopperHistory.scheduledat | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperHistory.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperHistory.endtime | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperHistory, $event)" translate="MOTIONDIALER.DELETE_HOPPERHISTORY">\n                                                                Delete HopperHistory\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.queueCampaignHopperHistories.rows.length">\n                                            <td md-cell colspan="11">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERHISTORY_AVAILABLE">No hopperhistory available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.queueCampaignHopperHistories.count}}" md-on-paginate="vm_dc.getQueueCampaignHopperHistories" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.FINAL">FINAL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container hopperfinals md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="QueueCampaignHopperFinalsController as vm_dc" ng-init="vm_dc.init(vm.queueCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedQueueCampaignHopperFinals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERFINALS">HopperFinals</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedQueueCampaignHopperFinals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedQueueCampaignHopperFinals.length}} {{vm_dc.selectedQueueCampaignHopperFinals.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedQueueCampaignHopperFinals($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedQueueCampaignHopperFinals" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getQueueCampaignHopperFinals">\n                                        <tr md-row>\n                                            <th md-column md-order-by="uniqueid">{{ \'MOTIONDIALER.UNIQUEID\' | translate }}</th>\n                                            <th md-column md-order-by="calleridnum">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column md-order-by="calleridname">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="statedesc">{{ \'MOTIONDIALER.STATUS\' | translate }}</th>\n                                            <th md-column md-order-by="countcongestionretry">{{ \'MOTIONDIALER.CONGESTION\' | translate }}</th>\n                                            <th md-column md-order-by="countbusyretry">{{ \'MOTIONDIALER.BUSY\' | translate }}</th>\n                                            <th md-column md-order-by="countnoanswerretry">{{ \'MOTIONDIALER.NOANSWER\' | translate }}</th>\n                                            <th md-column md-order-by="starttime">{{ \'MOTIONDIALER.STARTTIME\' | translate }}</th>\n                                            <th md-column md-order-by="endtime">{{ \'MOTIONDIALER.ENDTIME\' | translate }}</th>\n                                            <th md-column md-order-by="disposition">{{ \'MOTIONDIALER.DISPOSITION\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperFinal" md-select-id="id" ng-repeat="hopperFinal in vm_dc.queueCampaignHopperFinals.rows">\n                                            <td md-cell>{{hopperFinal.uniqueid}}</td>\n                                            <td md-cell>{{hopperFinal.calleridnum}}</td>\n                                            <td md-cell>{{hopperFinal.calleridname}}</td>\n                                            <td md-cell>{{hopperFinal.statedesc}}</td>\n                                            <td md-cell>{{hopperFinal.countcongestionretry}}</td>\n                                            <td md-cell>{{hopperFinal.countbusyretry}}</td>\n                                            <td md-cell>{{hopperFinal.countnoanswerretry}}</td>\n                                            <td md-cell>{{hopperFinal.starttime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperFinal.endtime | date:\'medium\'}}</td>\n                                            <td md-cell>{{hopperFinal.disposition}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperFinal, $event)" translate="MOTIONDIALER.DELETE_HOPPERFINAL">\n                                                                Delete HopperFinal\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.queueCampaignHopperFinals.rows.length">\n                                            <td md-cell colspan="15">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERFINAL_AVAILABLE">No hopperfinal available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.queueCampaignHopperFinals.count}}" md-on-paginate="vm_dc.getQueueCampaignHopperFinals" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.BLACKLIST">BLACKLIST</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="queueCampaign-detail-form-container hopperblacks md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="QueueCampaignHopperBlacksController as vm_dc" ng-init="vm_dc.init(vm.queueCampaign)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedQueueCampaignHopperBlacks.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="MOTIONDIALER.HOPPERBLACKS">HopperBlacks</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedQueueCampaignHopperBlacks.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedQueueCampaignHopperBlacks.length}} {{vm_dc.selectedQueueCampaignHopperBlacks.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedQueueCampaignHopperBlacks($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedQueueCampaignHopperBlacks" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getQueueCampaignHopperBlacks">\n                                        <tr md-row>\n                                            <th md-column md-order-by="ContactId">{{ \'MOTIONDIALER.CONTACTID\' | translate }}</th>\n                                            <th md-column md-order-by="phone">{{ \'MOTIONDIALER.PHONE\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="hopperBlack" md-select-id="id" ng-repeat="hopperBlack in vm_dc.queueCampaignHopperBlacks.rows">\n                                            <td md-cell>{{hopperBlack.ContactId}}</td>\n                                            <td md-cell>{{hopperBlack.phone}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(hopperBlack, $event)" translate="MOTIONDIALER.DELETE_HOPPERBLACK">\n                                                                Delete HopperBlack\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.queueCampaignHopperBlacks.rows.length">\n                                            <td md-cell colspan="4">\n                                                <span class="text-boxed-ligth" translate="MOTIONDIALER.NO_HOPPERBLACK_AVAILABLE">No hopperblack available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.queueCampaignHopperBlacks.count}}" md-on-paginate="vm_dc.getQueueCampaignHopperBlacks" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/motiondialer/views/queueCampaigns/queueCampaigns.html",'<div id="queueCampaigns" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-fire" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="MOTIONDIALER.QUEUECAMPAIGNS">QueueCampaigns</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="MOTIONDIALER.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedQueueCampaigns.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedQueueCampaigns =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="MOTIONDIALER.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-queueCampaigns-count">\n                    <span>{{vm.selectedQueueCampaigns.length}}</span>\n                <span translate="MOTIONDIALER.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="QUEUECAMPAIGNS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllQueueCampaigns()" translate="MOTIONDIALER.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectQueueCampaigns()" translate="MOTIONDIALER.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedQueueCampaigns" filename="queueCampaigns.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedQueueCampaigns($event)" aria-label="delete selected" translate translate-attr-label="QUEUECAMPAIGNS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- QUEUECAMPAIGN TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedQueueCampaigns" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueueCampaigns">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'MOTIONDIALER.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                                <th md-column md-order-by="dialActive">{{ \'MOTIONDIALER.ACTIVE\' | translate }}</th>\n                                <th md-column md-order-by="TrunkId">{{ \'MOTIONDIALER.TRUNK\' | translate }}</th>\n                                <th md-column md-order-by="dialMethod">{{ \'MOTIONDIALER.METHOD\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'MOTIONDIALER.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.queueCampaigns.rows.length">\n                                <td md-cell colspan="7">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="queueCampaign" md-select-id="id" ng-repeat="queueCampaign in vm.queueCampaigns.rows">\n                                <td md-cell ng-if="queueCampaign.userpic"><img class="avatar" alt="{{queueCampaign.name}}" ng-src="api/users/{{queueCampaign.id}}/avatar" /></td>\n                                <td md-cell ng-if="!queueCampaign.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{queueCampaign.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="id ">{{queueCampaign.id}}</td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="name ">{{queueCampaign.name}}</td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="dialActive ">\n                                    <md-icon md-colors="{color: {{queueCampaign.dialActive ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{queueCampaign.dialActive ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="TrunkId ">{{ TrunkId = vm.trunks[queueCampaign.TrunkId]; TrunkId.name }}</td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="dialMethod ">{{ vm.arraydialMethod[queueCampaign.dialMethod].option }}</td>\n                                <td ng-click="vm.createOrEditQueueCampaign($event, queueCampaign)" md-cell class="strategy ">{{ vm.arraystrategy[queueCampaign.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(queueCampaign, $event)" translate="MOTIONDIALER.EDIT_QUEUECAMPAIGN">\n                                                    Edit QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.listadddialog(queueCampaign, $event)" translate="MOTIONDIALER.LISTADD_QUEUECAMPAIGN">\n                                                    listadd QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.blacklistadddialog(queueCampaign, $event)" translate="MOTIONDIALER.BLACKLISTADD_QUEUECAMPAIGN">\n                                                    blacklistadd QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.teamadddialog(queueCampaign, $event)" translate="MOTIONDIALER.TEAMADD_QUEUECAMPAIGN">\n                                                    teamadd QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.agentadddialog(queueCampaign, $event)" translate="MOTIONDIALER.AGENTADD_QUEUECAMPAIGN">\n                                                    agentadd QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(queueCampaign, $event)" translate="MOTIONDIALER.DELETE_QUEUECAMPAIGN">\n                                                    Delete QueueCampaign\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.queueCampaigns.count}}" md-on-paginate="vm.getQueueCampaigns" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / QUEUECAMPAIGN TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD QUEUECAMPAIGN BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-queueCampaign-button" ng-click="vm.createOrEditQueueCampaign($event)" aria-label="add queueCampaign" translate translate-attr-aria-label="MOTIONDIALER.ADD_QUEUECAMPAIGN">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD QUEUECAMPAIGN BUTTON --\x3e\n</div>'),e.put("app/main/apps/motiondialer/views/realtime/agents/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.AGENTS">Agents</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n        <md-button class="md-icon-button" ng-click="vm.showInfo($event)">\n            <i class="icon-information-outline grey-600-fg">\n        <md-tooltip>{{\'MOTIONDIALER.INFO\' | translate}}</md-tooltip>\n      </i>\n        </md-button>\n    </div>\n</md-toolbar>\n\n\x3c!-- AGENT TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getAgents">\n            <tr md-row>\n                <th md-column width="20px"></th>\n                <th md-column md-order-by="fullname">{{ \'MOTIONDIALER.FULLNAME\' | translate }}</th>\n                <th md-column md-order-by="internal">{{ \'MOTIONDIALER.INTERNAL\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.PHONE_STATE\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.PHONE_STATUS\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.agents">\n                <td md-cell colspan="6">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="agent" md-select-id="id" ng-repeat="(id, agent) in vm.agents">\n                <td md-cell>\n                    <div class="avatar-wrapper">\n                        <img md-menu-align-target class="avatar" ng-src="{{agent.userpic && \'api/users/\'+agent.id+\'/avatar\' || \'assets/images/avatars/profile.jpg\'}}">\n                        <md-icon md-font-icon class="icon status s16 icon-checkbox-marked-circle" ng-class="agent.online ? \'green-300-fg\' : \'red-300-fg\'"></md-icon>\n                    </div>\n                </td>\n                <td md-cell>\n                    <div layout="column">\n                        <span class="text-truncate"><span ng-if="agent.online" class="text-boxed"><timer start-time="agent.lastLoginAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>{{agent.fullname}}</span>\n                        <span class="text-truncate" ng-if="agent.voicePause">\n              <span><span class="text-boxed"><timer start-time="agent.lastPauseAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></span><span class="blink red-fg">{{agent.pauseType || \'dafault\' | uppercase}}</span>\n                        </span>\n                    </div>\n                </td>\n                <td md-cell>\n                    {{agent.internal}}\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.stateClass[agent.state]">\n            <md-tooltip>{{\'MOTIONDIALER.\' + agent.state | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span class="text-boxed" ng-if="agent.stateTime && vm.isAvailableState(agent.state)">\n            <timer ng-if="agent.stateTime" start-time="agent.stateTime" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n          </span>\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.statusClass[agent.status]">\n            <md-tooltip>{{\'MOTIONDIALER.\' + agent.status | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span ng-if="agent.status === \'registered\'" class="text-boxed">{{agent.address}}</span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="4">\n                            <md-menu-item>\n                                <md-button ng-click="vm.logout(agent, $event)" translate="MOTIONDIALER.LOGOUT">\n                                    Logout\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.queueAdd(agent, $event)" translate="MOTIONDIALER.AGENTADD_QUEUE">\n                                    Add Agent In Queue\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-menu>\n                                    <md-button ng-click="$mdMenu.open()" translate="MOTIONDIALER.PAUSE">Pause</md-button>\n                                    <md-menu-content>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.pause(agent)"><em translate="MOTIONDIALER.DEFAULT_PAUSE">Default Pause</em></md-button>\n                                        </md-menu-item>\n                                        <md-menu-item ng-if="vm.pauses.rows.length" ng-repeat="pause in vm.pauses.rows">\n                                            <md-button ng-click="vm.pause(agent, pause.name)">{{pause.name}}</md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.unPause(agent)" translate="MOTIONDIALER.UNPAUSE">\n                                    Unpause\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getAgents" md-page-select></md-table-pagination>\n\x3c!-- / AGENT TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/ivr_campaigns/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.IVR_CAMPAIGNS">Ivr Campaigns</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getCampaigns">\n            <tr md-row>\n                <th md-column>{{\'MOTIONDIALER.NAME\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.TOTAL\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.TOTAL_MANAGED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.LIMITED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.ORIGINATED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.MESSAGE\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.CALLYSQUAREPROJECT\' | translate}}</th>\n                <th md-column>{{ \'MOTIONDIALER.TRUNK\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.ACTIVE\' | translate }}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.campaigns">\n                <td md-cell colspan="8">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="(id, campaign) in vm.campaigns">\n                <td md-cell>\n                    <span>{{campaign.name}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.ivrTotalCallsDays || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.ivrAnswerCallsDay || 0}} ({{(campaign.ivrTotalCallsDays) ? (campaign.ivrAnswerCallsDay || 0) * 100/(campaign.ivrTotalCallsDays ) : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.limitCalls || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.originated || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.message ? (\'MOTIONDIALER.\'+campaign.message | translate) : \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{campaign.dialQueueProject || \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{campaign.Trunk ? campaign.Trunk.name : \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <md-icon md-colors="{color: {{campaign.active ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{campaign.active ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="3">\n                            <md-menu-item>\n                                <md-button ng-click="vm.createOrEditIvrCampaign($event, campaign)" translate="MOTIONDIALER.EDIT_CAMPAIGN">\n                                    Edit Campaign\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getCampaigns" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/queue_calls/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.QUEUE_CALLS">Queue Calls</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUES TABLE --\x3e\n<md-table-container>\n    <table md-table>\n        <thead md-head>\n            <tr md-row>\n                <th md-column width="30px"></th>\n                <th md-column>{{ \'MOTIONDIALER.DID\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.QUEUE\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.CALLER\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.AGENT\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.DURATION\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.calls.rows.length">\n                <td md-cell colspan="7">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="call in vm.calls.rows | filter: vm.query.filter | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit">\n                \x3c!-- <tr md-row ng-repeat="(channel, call) in vm.calls.rows | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit"> --\x3e\n                <td md-cell>\n                    <i ng-class="vm.channelStatusClass[call.status.toLowerCase()]"></i>\n                </td>\n                <td md-cell>{{call.exten}}</td>\n                <td md-cell>{{call.queue}}</td>\n                <td md-cell><span ng-if="call.calleridname">{{call.calleridname}}, </span>{{call.calleridnum}}</td>\n                <td md-cell>\n                    <span ng-if="call.queuecallerleaveAt">\n            {{call.connectedlinename}}, {{call.connectedlinenum}}\n            <span class="text-boxed">\n              <timer start-time="call.queuecallerleaveAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            </span>\n                    </span>\n                    <span ng-if="!call.queuecallerleaveAt" class="text-boxed" translate="MOTIONDIALER.WAITING_FOR_AGENT">\n            Waiting for agent...\n            <span class="text-boxed">\n              <timer start-time="call.queuecallerjoinAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            </span>\n                    </span>\n                </td>\n                <td md-cell>\n                    <span class="text-boxed">\n            <timer ng-if="call.queuecallerjoinAt" start-time="call.queuecallerjoinAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            <span ng-if="call.queuecallercomplete || call.queuecallerabandon || call.queuecallerexit" translate="MOTIONDIALER.CLOSING">Closing</span>\n                    </span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="2">\n                            <md-menu-item>\n                                <md-button ng-click="vm.hangup(call.uniqueid)" translate="MOTIONDIALER.HANGUP">\n                                    Hangup\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.redirectToNumber($event, call.uniqueid)" translate="MOTIONDIALER.REDIRECT_TO_NUMBER">\n                                    Number\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-menu>\n                                    <md-button ng-click="$mdMenu.open()" translate="MOTIONDIALER.REDIRECT_TO_AGENT">Redirect to Agent</md-button>\n                                    <md-menu-content>\n                                        <md-menu-item ng-repeat="agent in vm.agents.rows">\n                                            <md-button ng-click="vm.redirectToAgent(call.uniqueid, agent.name)">{{agent.name}}</md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="vm.query.limitOptions" md-page="vm.query.page" md-total="{{vm.calls.count}}"></md-table-pagination>\n\x3c!-- / QUEUES TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/queue_params/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.QUEUE_PARAMETERS">Params</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueues">\n            <tr md-row>\n                <th md-column>{{\'MOTIONDIALER.NAME\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.TOTAL\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.TOTAL_OFFERED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.MANAGED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.ABANDONED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.DROPPED\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.AVG_HOLD_TIME\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.AVG_DURATION\' | translate}}</th>\n                <th md-column>{{\'MOTIONDIALER.AVG_BILLABLE\' | translate}}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.queues">\n                <td md-cell colspan="8">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="(id, queue) in vm.queues">\n                <td md-cell>\n                    <span>{{queue.name}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.answered + queue.outboundNoAnswerCallsDay + queue.outboundBusyCallsDay + queue.outboundCongestionCallsDay + queue.outboundNoSuchCallsDay + queue.outboundUnknownCallsDay + queue.outboundDropCallsDayTimeout + queue.outboundDropCallsDayCallersExit + queue.outboundBlacklistCallsDay + queue.outboundOriginateFailureCallsDay + queue.outboundAnswerAgiCallsDay|| 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.total || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.answered || 0}} ({{(queue.total) ? (queue.answered || 0) * 100/(queue.total ) : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.outboundDropCallsDayCallersExit || 0}} ({{(queue.total) ? (queue.outboundDropCallsDayCallersExit || 0) * 100/(queue.total ) : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.outboundDropCallsDayTimeout || 0}} ({{(queue.total) ? (queue.outboundDropCallsDayTimeout || 0) * 100/(queue.total) : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.total ? (queue.sumHoldTime / queue.total) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.total ? (queue.sumDuration / queue.total) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.answered ? ((queue.sumBillable || 0) / queue.answered) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getQueues" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/queues/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.QUEUES">Queues</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueues">\n            <tr md-row>\n                <th md-column>{{ \'MOTIONDIALER.NAME\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.LOGGED_IN\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.PAUSED\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.READY\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.WAITING\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.TALKING\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.ORIGINATED\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.MESSAGE\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.METHOD\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.TRUNK\' | translate }}</th>\n                <th md-column>{{ \'MOTIONDIALER.ACTIVE\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.queues">\n                <td md-cell colspan="12">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="queue" md-select-id="id" ng-repeat="(id, queue) in vm.queues">\n                <td md-cell>{{queue.name}}</td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.loggedInDb || 0}} ({{queue.loggedIn || 0}})</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.paused || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.available || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.waiting || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.talking || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.originated || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.message ? (\'MOTIONDIALER.\'+queue.message | translate) : \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.dialMethod || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.Trunk ? queue.Trunk.name : \'--\'}}</span>\n                </td>\n                <td md-cell>\n                    <md-icon md-colors="{color: {{queue.dialActive ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{queue.dialActive ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="MOTIONDIALER.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="3">\n                            <md-menu-item>\n                                <md-button ng-click="vm.createOrEditVoiceQueue($event, queue)" translate="MOTIONDIALER.EDIT_QUEUE">\n                                    Edit Queue\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.agentAdd($event, queue)" translate="MOTIONDIALER.AGENTSADD_QUEUE">\n                                    Add Agents to queue\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getQueues" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/motiondialer/views/realtime/realtime.html",'<div id="realtime" class="page-layout simple tabbed" layout="column" ng-cloak>\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.AGENTS">Agents</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.QUEUES">Queues</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.QUEUE_CALLS">Queue Calls</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.QUEUE_PARAMS">Queue Parameters</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="MOTIONDIALER.IVR_CAMPAIGNS">Ivr Campaigns</span>\n                </md-tab-label>\n            </md-tab>\n        </md-tabs>\n\n        <md-card ui-view></md-card>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/openchannel/views/openchannelAccounts/create/dialog.html",'<md-dialog class="openchannelAccount-dialog" aria-label="New OpenchannelAccount">\n    <form name="openchannelAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.openchannelAccount.name" required autofocus>\n                <div ng-messages="openchannelAccountForm.name.$error" ng-show="openchannelAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.MOTIONADDRESS">motionaddress</label>\n                <input type="url" name="remote" ng-model="vm.openchannelAccount.remote" required>\n                <div ng-messages="openchannelAccountForm.remote.$error" ng-show="openchannelAccountForm.remote.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.MOTIONADDRESS_REQUIRED">motionaddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="OPENCHANNEL.ERRORS.MOTIONADDRESS_MUST_VALID_URL">motionaddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.openchannelAccount.description">\n                <div ng-messages="openchannelAccountForm.description.$error" ng-show="openchannelAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOpenchannelAccount" ng-click="vm.saveOpenchannelAccount()" class="send-button md-accent md-raised" ng-disabled="openchannelAccountForm.$invalid || openchannelAccountForm.$pristine" aria-label="SAVE" translate="OPENCHANNEL.SAVE"\n                    translate-attr-aria-label="OPENCHANNEL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOpenchannelAccount" ng-click="vm.addNewOpenchannelAccount()" class="send-button md-accent md-raised" ng-disabled="openchannelAccountForm.$invalid" aria-label="ADD" translate="OPENCHANNEL.ADD_OPENCHANNELACCOUNT" translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELACCOUNT">\n                    ADD OPENCHANNELACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOpenchannelAccount" ng-click="vm.deleteOpenchannelAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="OPENCHANNEL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="OPENCHANNEL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/openchannel/views/openchannelAccounts/edit/openchannelDispositions/dialog.html",'<md-dialog class="openchannelDisposition-dialog" aria-label="New OpenchannelDisposition">\n    <form name="openchannelDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.openchannelDisposition.name" required autofocus>\n                <div ng-messages="openchannelDispositionForm.name.$error" ng-show="openchannelDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOpenchannelDisposition" ng-click="vm.saveOpenchannelDisposition()" class="send-button md-accent md-raised" ng-disabled="openchannelDispositionForm.$invalid || openchannelDispositionForm.$pristine" aria-label="SAVE"\n                    translate="OPENCHANNEL.SAVE" translate-attr-aria-label="OPENCHANNEL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOpenchannelDisposition" ng-click="vm.addNewOpenchannelDisposition()" class="send-button md-accent md-raised" ng-disabled="openchannelDispositionForm.$invalid" aria-label="ADD" translate="OPENCHANNEL.ADD_OPENCHANNELDISPOSITION"\n                    translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELDISPOSITION">\n                    ADD OPENCHANNELDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOpenchannelDisposition" ng-click="vm.deleteOpenchannelDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="OPENCHANNEL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="OPENCHANNEL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/openchannel/views/openchannelAccounts/edit/view.html",'<div id="openchannel-openchannelAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-openchannelAccounts-button md-icon-button" aria-label="Go to openchannelAccounts" ng-click="vm.gotoOpenchannelAccounts()" translate translate-attr-aria-label="OPENCHANNEL.GO_TO_OPENCHANNELACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.openchannelAccount.userpic" class="openchannelAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.openchannelAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.openchannelAccount.userpic" class="openchannelAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/openchannelAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.openchannelAccount.id}} {{vm.openchannelAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="OPENCHANNEL.CREATED_AT"></span> <span>{{vm.openchannelAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveOpenchannelAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (apiForm.$invalid) || (openchannelDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid)"\n                translate="OPENCHANNEL.SAVE" translate-attr-aria-label="OPENCHANNEL.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.openchannelAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.LIST">List</label>\n                                <md-select ng-model="vm.openchannelAccount.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.openchannelAccount.fidelity" aria-label="fidelity"><span translate="OPENCHANNEL.FIDELITY">fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.openchannelAccount.fidelity" class="md-block">\n                                <label translate="OPENCHANNEL.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.openchannelAccount.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.MOTIONADDRESS">motionaddress</label>\n                                <input type="url" name="remote" ng-model="vm.openchannelAccount.remote" required>\n                                <div ng-messages="generalForm.remote.$error" ng-show="generalForm.remote.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.MOTIONADDRESS_REQUIRED">motionaddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="OPENCHANNEL.ERRORS.MOTIONADDRESS_MUST_VALID_URL">motionaddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.openchannelAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.API">API</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container api md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.API">API</div>\n                        </div>\n                        <form name="apiForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container openchanneldispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="OpenchannelAccountOpenchannelDispositionsController as vm_dc" ng-init="vm_dc.init(vm.openchannelAccount)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedOpenchannelAccountOpenchannelDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="OPENCHANNEL.OPENCHANNELDISPOSITIONS">OpenchannelDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event)" aria-label="add openchannelDisposition" translate translate-attr-label="OPENCHANNEL.ADD_OPENCHANNELDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedOpenchannelAccountOpenchannelDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedOpenchannelAccountOpenchannelDispositions.length}} {{vm_dc.selectedOpenchannelAccountOpenchannelDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedOpenchannelAccountOpenchannelDispositions($event)" aria-label="delete selected" translate translate-attr-label="OPENCHANNELACCOUNTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedOpenchannelAccountOpenchannelDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getOpenchannelAccountOpenchannelDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'OPENCHANNEL.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'OPENCHANNEL.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'OPENCHANNEL.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="openchannelDisposition" md-select-id="id" ng-repeat="openchannelDisposition in vm_dc.openchannelAccountOpenchannelDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event, openchannelDisposition)" md-cell>{{openchannelDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event, openchannelDisposition)" md-cell>{{openchannelDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event, openchannelDisposition)" md-cell>{{openchannelDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="OPENCHANNEL.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditOpenchannelAccountOpenchannelDisposition($event, openchannelDisposition)" translate="OPENCHANNEL.EDIT_OPENCHANNELDISPOSITION">\n                                                                Edit OpenchannelDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(openchannelDisposition, $event)" translate="OPENCHANNEL.DELETE_OPENCHANNELDISPOSITION">\n                                                                Delete OpenchannelDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.openchannelAccountOpenchannelDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="OPENCHANNEL.NO_OPENCHANNELDISPOSITION_AVAILABLE">No openchanneldisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.openchannelAccountOpenchannelDispositions.count}}" md-on-paginate="vm_dc.getOpenchannelAccountOpenchannelDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.openchannelAccount.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.openchannelAccount.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="OPENCHANNEL.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="openchannelAccount-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.openchannelAccount.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.openchannelAccount.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="OPENCHANNEL.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="openchannelAccount-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.openchannelAccount.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.openchannelAccount.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="OPENCHANNEL.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelAccount-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/openchannel/views/openchannelAccounts/openchannelAccounts.html",'<div id="openchannelAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-google-earth" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="OPENCHANNEL.OPENCHANNELACCOUNTS">OpenchannelAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="OPENCHANNEL.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedOpenchannelAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedOpenchannelAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="OPENCHANNEL.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-openchannelAccounts-count">\n                    <span>{{vm.selectedOpenchannelAccounts.length}}</span>\n                <span translate="OPENCHANNEL.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="OPENCHANNELACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllOpenchannelAccounts()" translate="OPENCHANNEL.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectOpenchannelAccounts()" translate="OPENCHANNEL.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedOpenchannelAccounts" filename="openchannelAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedOpenchannelAccounts($event)" aria-label="delete selected" translate translate-attr-label="OPENCHANNELACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- OPENCHANNELACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedOpenchannelAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getOpenchannelAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'OPENCHANNEL.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'OPENCHANNEL.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'OPENCHANNEL.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.openchannelAccounts.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="OPENCHANNEL.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="openchannelAccount" md-select-id="id" ng-repeat="openchannelAccount in vm.openchannelAccounts.rows">\n                                <td md-cell ng-if="openchannelAccount.userpic"><img class="avatar" alt="{{openchannelAccount.name}}" ng-src="api/users/{{openchannelAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!openchannelAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{openchannelAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditOpenchannelAccount($event, openchannelAccount)" md-cell class="id ">{{openchannelAccount.id}}</td>\n                                <td ng-click="vm.createOrEditOpenchannelAccount($event, openchannelAccount)" md-cell class="name ">{{openchannelAccount.name}}</td>\n                                <td ng-click="vm.createOrEditOpenchannelAccount($event, openchannelAccount)" md-cell class="description ">{{openchannelAccount.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="OPENCHANNEL.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(openchannelAccount, $event)" translate="OPENCHANNEL.EDIT_OPENCHANNELACCOUNT">\n                                                    Edit OpenchannelAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(openchannelAccount, $event)" translate="OPENCHANNEL.DELETE_OPENCHANNELACCOUNT">\n                                                    Delete OpenchannelAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.openchannelAccounts.count}}" md-on-paginate="vm.getOpenchannelAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / OPENCHANNELACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD OPENCHANNELACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-openchannelAccount-button" ng-click="vm.createOrEditOpenchannelAccount($event)" aria-label="add openchannelAccount" translate translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD OPENCHANNELACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/openchannel/views/openchannelQueues/create/dialog.html",'<md-dialog class="openchannelQueue-dialog" aria-label="New OpenchannelQueue">\n    <form name="openchannelQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.openchannelQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="openchannelQueueForm.name.$error" ng-show="openchannelQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="OPENCHANNEL.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.openchannelQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="openchannelQueueForm.strategy.$error" ng-show="openchannelQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.openchannelQueue.timeout" required>\n                <div ng-messages="openchannelQueueForm.timeout.$error" ng-show="openchannelQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="OPENCHANNEL.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.openchannelQueue.description">\n                <div ng-messages="openchannelQueueForm.description.$error" ng-show="openchannelQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="OPENCHANNEL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOpenchannelQueue" ng-click="vm.saveOpenchannelQueue()" class="send-button md-accent md-raised" ng-disabled="openchannelQueueForm.$invalid || openchannelQueueForm.$pristine" aria-label="SAVE" translate="OPENCHANNEL.SAVE"\n                    translate-attr-aria-label="OPENCHANNEL.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOpenchannelQueue" ng-click="vm.addNewOpenchannelQueue()" class="send-button md-accent md-raised" ng-disabled="openchannelQueueForm.$invalid" aria-label="ADD" translate="OPENCHANNEL.ADD_OPENCHANNELQUEUE" translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELQUEUE">\n                    ADD OPENCHANNELQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOpenchannelQueue" ng-click="vm.deleteOpenchannelQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="OPENCHANNEL.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="OPENCHANNEL.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/openchannel/views/openchannelQueues/edit/teamadd/teamadd.html",'<md-dialog class="openchannelQueue-dialog" aria-label="openchannelQueue">\n    <form name="openchannelQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="OPENCHANNEL.TEAMADD_OPENCHANNELQUEUE">Add Team in OPENCHANNELQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="OPENCHANNEL.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="openchannelQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/openchannel/views/openchannelQueues/edit/view.html",'<div id="openchannel-openchannelQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-openchannelQueues-button md-icon-button" aria-label="Go to openchannelQueues" ng-click="vm.gotoOpenchannelQueues()" translate translate-attr-aria-label="OPENCHANNEL.GO_TO_OPENCHANNELQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.openchannelQueue.userpic" class="openchannelQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.openchannelQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.openchannelQueue.userpic" class="openchannelQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/openchannelQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.openchannelQueue.id}} {{vm.openchannelQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="OPENCHANNEL.CREATED_AT"></span> <span>{{vm.openchannelQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.openchannelQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="OPENCHANNEL.TEAMADD_OPENCHANNELQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveOpenchannelQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="OPENCHANNEL.SAVE" translate-attr-aria-label="OPENCHANNEL.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="OPENCHANNEL.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="openchannelQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="OPENCHANNEL.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.openchannelQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="OPENCHANNEL.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.openchannelQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.openchannelQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="OPENCHANNEL.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.openchannelQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="OPENCHANNEL.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/openchannel/views/openchannelQueues/openchannelQueues.html",'<div id="openchannelQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-google-earth" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="OPENCHANNEL.OPENCHANNELQUEUES">OpenchannelQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="OPENCHANNEL.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedOpenchannelQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedOpenchannelQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="OPENCHANNEL.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-openchannelQueues-count">\n                    <span>{{vm.selectedOpenchannelQueues.length}}</span>\n                <span translate="OPENCHANNEL.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="OPENCHANNELQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllOpenchannelQueues()" translate="OPENCHANNEL.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectOpenchannelQueues()" translate="OPENCHANNEL.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedOpenchannelQueues" filename="openchannelQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedOpenchannelQueues($event)" aria-label="delete selected" translate translate-attr-label="OPENCHANNELQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- OPENCHANNELQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedOpenchannelQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getOpenchannelQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'OPENCHANNEL.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'OPENCHANNEL.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'OPENCHANNEL.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.openchannelQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="OPENCHANNEL.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="openchannelQueue" md-select-id="id" ng-repeat="openchannelQueue in vm.openchannelQueues.rows">\n                                <td md-cell ng-if="openchannelQueue.userpic"><img class="avatar" alt="{{openchannelQueue.name}}" ng-src="api/users/{{openchannelQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!openchannelQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{openchannelQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditOpenchannelQueue($event, openchannelQueue)" md-cell class="id ">{{openchannelQueue.id}}</td>\n                                <td ng-click="vm.createOrEditOpenchannelQueue($event, openchannelQueue)" md-cell class="name ">{{openchannelQueue.name}}</td>\n                                <td ng-click="vm.createOrEditOpenchannelQueue($event, openchannelQueue)" md-cell class="strategy ">{{ vm.arraystrategy[openchannelQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="OPENCHANNEL.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(openchannelQueue, $event)" translate="OPENCHANNEL.EDIT_OPENCHANNELQUEUE">\n                                                    Edit OpenchannelQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(openchannelQueue, $event)" translate="OPENCHANNEL.DELETE_OPENCHANNELQUEUE">\n                                                    Delete OpenchannelQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.openchannelQueues.count}}" md-on-paginate="vm.getOpenchannelQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / OPENCHANNELQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD OPENCHANNELQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-openchannelQueue-button" ng-click="vm.createOrEditOpenchannelQueue($event)" aria-label="add openchannelQueue" translate translate-attr-aria-label="OPENCHANNEL.ADD_OPENCHANNELQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD OPENCHANNELQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/settings/views/customizations/create/dialog.html",'<md-dialog class="customization-dialog" aria-label="New Customization">\n    <form name="customizationForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.customization.defaultLogo" aria-label="Default_Logo"><span translate="SETTINGS.DEFAULT_LOGO">Default_Logo</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.customization.defaultLoginLogo" aria-label="Default_Login_Logo"><span translate="SETTINGS.DEFAULT_LOGIN_LOGO">Default_Login_Logo</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.customization.defaultHeaderWhiteLabel" aria-label="Default_Header_WhiteLabel"><span translate="SETTINGS.DEFAULT_HEADER_WHITELABEL">Default_Header_WhiteLabel</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="!vm.customization.defaultHeaderWhiteLabel" class="md-block">\n                <label translate="SETTINGS.HEADER_WHITELABEL">Header_WhiteLabel</label>\n                <input type="text" name="headerWhiteLabel" ng-model="vm.customization.headerWhiteLabel" required>\n                <div ng-messages="customizationForm.headerWhiteLabel.$error" ng-show="customizationForm.headerWhiteLabel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.HEADER_WHITELABEL_REQUIRED">Header_WhiteLabel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCustomization" ng-click="vm.saveCustomization()" class="send-button md-accent md-raised" ng-disabled="customizationForm.$invalid || customizationForm.$pristine" aria-label="SAVE" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCustomization" ng-click="vm.addNewCustomization()" class="send-button md-accent md-raised" ng-disabled="customizationForm.$invalid" aria-label="ADD" translate="SETTINGS.ADD_CUSTOMIZATION" translate-attr-aria-label="SETTINGS.ADD_CUSTOMIZATION">\n                    ADD CUSTOMIZATION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCustomization" ng-click="vm.deleteCustomization($event)" aria-label="DELETE" translate translate-attr-aria-label="SETTINGS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SETTINGS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/customizations/customizations.html",'<div id="customizations" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.CUSTOMIZATIONS">Customizations</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveCustomization()" ng-disabled="customizationForm.$pristine || customizationForm.$invalid" class="send-button md-accent md-raised" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            <div class="customization-detail-form-container customizations md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.CUSTOMIZATIONS">CUSTOMIZATIONS</div>\n                </div>\n                <form name="customizationForm" novalidate>\n                    <md-input-container class="md-block">\n                        <md-switch ng-model="vm.customization.defaultLogo" aria-label="Default_Logo"><span translate="SETTINGS.DEFAULT_LOGO">Default_Logo</span></md-switch>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <md-switch ng-model="vm.customization.defaultLoginLogo" aria-label="Default_Login_Logo"><span translate="SETTINGS.DEFAULT_LOGIN_LOGO">Default_Login_Logo</span></md-switch>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <md-switch ng-model="vm.customization.defaultHeaderWhiteLabel" aria-label="Default_Header_WhiteLabel"><span translate="SETTINGS.DEFAULT_HEADER_WHITELABEL">Default_Header_WhiteLabel</span></md-switch>\n                    </md-input-container>\n                    <md-input-container ng-if="!vm.customization.defaultHeaderWhiteLabel" class="md-block">\n                        <label translate="SETTINGS.HEADER_WHITELABEL">Header_WhiteLabel</label>\n                        <input type="text" name="headerWhiteLabel" ng-model="vm.customization.headerWhiteLabel" required>\n                        <div ng-messages="customizationForm.headerWhiteLabel.$error" ng-show="customizationForm.headerWhiteLabel.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.HEADER_WHITELABEL_REQUIRED">Header_WhiteLabel field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n\n                </form>\n            </div>\n\n            <div ng-if="!vm.customization.defaultLogo" class="customization-detail-form-container logo md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.LOGO">LOGO</div>\n                </div>\n                <div ng-controller="CustomizationlogoController as vm_cl" ng-init="vm_cl.init(vm.customization)" class="customization-detail-form-container md-background-bg md-whiteframe-1dp">\n\n                    <div id="customization-image-uploader" flow-init="vm_cl.ngFlowOptions" flow-name="vm_cl.ngFlow.flow" flow-files-submitted="vm_cl.upload()" flow-file-added="vm_cl.fileAdded($file)" flow-file-success="vm_cl.fileSuccess($file, $message)" flow-complete="vm_cl.uploadComplete()"\n                        flow-drop flow-drag-enter="vm_cl.dropping=true" flow-drag-leave="vm_cl.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                        <div class="drop-text hint-text" layout="row" layout-align="center center">\n                            <span translate="EC.DROP_TO_UPLOAD">Drop to upload</span>\n                        </div>\n\n                        <div class="upload-button" layout="column" layout-align="center center">\n                            <md-button class="md-accent md-raised" flow-btn>\n                                Upload\n                            </md-button>\n                            <span class="secondary-text mt-8">You can also drop images here to upload. Only PNG, JPG - Max. 8MB</span>\n                        </div>\n\n                        <div layout="row" layout-align="start start" layout-wrap>\n                            <div ng-repeat="logoimage in vm_cl.customization.images" ng-switch="logoimage.type">\n                                <div class="customization-image uploading" ng-switch-when="uploading" layout="row" layout-align="center center">\n                                    <div class="overlay" layout="column" layout-align="center center">\n                                        <md-progress-linear md-mode="determinate" value="{{logoimage.file.progress() * 100}}">\n                                        </md-progress-linear>\n                                    </div>\n                                    <img class="media" flow-img="logoimage.file">\n                                </div>\n\n                                <div class="customization-image" ng-switch-when="image" layout="row" layout-align="center center">\n                                    <img class="media" ng-src="{{logoimage.url}}">\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n\n            </div>\n\n            <div ng-if="!vm.customization.defaultLoginLogo" class="customization-detail-form-container logologin md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.LOGOLOGIN">LOGOLOGIN</div>\n                </div>\n                <div ng-controller="CustomizationlogologinController as vm_cll" ng-init="vm_cll.init(vm.customization)" class="customization-detail-form-container md-background-bg md-whiteframe-1dp">\n\n                    <div id="customization-image-uploader" flow-init="vm_cll.ngFlowOptions" flow-name="vm_cll.ngFlow.flow" flow-files-submitted="vm_cll.upload()" flow-file-added="vm_cll.fileAdded($file)" flow-file-success="vm_cll.fileSuccess($file, $message)" flow-complete="vm_cll.uploadComplete()"\n                        flow-drop flow-drag-enter="vm_cll.dropping=true" flow-drag-leave="vm_cll.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                        <div class="drop-text hint-text" layout="row" layout-align="center center">\n                            <span translate="EC.DROP_TO_UPLOAD">Drop to upload</span>\n                        </div>\n\n                        <div class="upload-button" layout="column" layout-align="center center">\n                            <md-button class="md-accent md-raised" flow-btn>\n                                Upload\n                            </md-button>\n                            <span class="secondary-text mt-8">You can also drop images here to upload. Only PNG, JPG - Max. 8MB</span>\n                        </div>\n\n                        <div layout="row" layout-align="start start" layout-wrap>\n                            <div ng-repeat="logologinimage in vm_cll.customization.images" ng-switch="logologinimage.type">\n                                <div class="customization-image uploading" ng-switch-when="uploading" layout="row" layout-align="center center">\n                                    <div class="overlay" layout="column" layout-align="center center">\n                                        <md-progress-linear md-mode="determinate" value="{{logologinimage.file.progress() * 100}}">\n                                        </md-progress-linear>\n                                    </div>\n                                    <img class="media" flow-img="logologinimage.file">\n                                </div>\n\n                                <div class="customization-image" ng-switch-when="image" layout="row" layout-align="center center">\n                                    <img class="media" ng-src="{{logologinimage.url}}">\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n\n            </div>\n\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/settings/views/generals/create/dialog.html",'<md-dialog class="general-dialog" aria-label="New General">\n    <form name="generalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.MIN_INTERNAL">Min_Internal</label>\n                <input type="number" name="min_internal" ng-model="vm.general.min_internal" min="0" required autofocus>\n                <div ng-messages="generalForm.min_internal.$error" ng-show="generalForm.min_internal.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.MIN_INTERNAL_REQUIRED">Min_Internal field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.MIN_MAILBOX">Min_Mailbox</label>\n                <input type="number" name="min_mailbox" ng-model="vm.general.min_mailbox" min="0" required>\n                <div ng-messages="generalForm.min_mailbox.$error" ng-show="generalForm.min_mailbox.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.MIN_MAILBOX_REQUIRED">Min_Mailbox field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.general.securePassword" aria-label="Secure_Password"><span translate="SETTINGS.SECURE_PASSWORD">Secure_Password</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.STUNADDR">Stunaddr</label>\n                <input type="text" name="stunaddr" ng-model="vm.general.stunaddr">\n                <div ng-messages="generalForm.stunaddr.$error" ng-show="generalForm.stunaddr.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.STUNADDR_REQUIRED">Stunaddr field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newGeneral" ng-click="vm.saveGeneral()" class="send-button md-accent md-raised" ng-disabled="generalForm.$invalid || generalForm.$pristine" aria-label="SAVE" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newGeneral" ng-click="vm.addNewGeneral()" class="send-button md-accent md-raised" ng-disabled="generalForm.$invalid" aria-label="ADD" translate="SETTINGS.ADD_GENERAL" translate-attr-aria-label="SETTINGS.ADD_GENERAL">\n                    ADD GENERAL\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newGeneral" ng-click="vm.deleteGeneral($event)" aria-label="DELETE" translate translate-attr-aria-label="SETTINGS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SETTINGS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/generals/generals.html",'<div id="generals" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.GENERAL">General</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveGeneral()" ng-disabled="generalForm.$pristine || generalForm.$invalid" class="send-button md-accent md-raised" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            <div class="general-detail-form-container global md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.GLOBAL">GLOBAL</div>\n                </div>\n                <form name="generalForm" novalidate>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.MIN_INTERNAL">Min_Internal</label>\n                        <input type="number" name="min_internal" ng-model="vm.general.min_internal" min="0" required autofocus>\n                        <div ng-messages="generalForm.min_internal.$error" ng-show="generalForm.min_internal.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.MIN_INTERNAL_REQUIRED">Min_Internal field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.MIN_MAILBOX">Min_Mailbox</label>\n                        <input type="number" name="min_mailbox" ng-model="vm.general.min_mailbox" min="0" required>\n                        <div ng-messages="generalForm.min_mailbox.$error" ng-show="generalForm.min_mailbox.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.MIN_MAILBOX_REQUIRED">Min_Mailbox field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <md-switch ng-model="vm.general.securePassword" aria-label="Secure_Password"><span translate="SETTINGS.SECURE_PASSWORD">Secure_Password</span></md-switch>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.STUNADDR">Stunaddr</label>\n                        <input type="text" name="stunaddr" ng-model="vm.general.stunaddr">\n                        <div ng-messages="generalForm.stunaddr.$error" ng-show="generalForm.stunaddr.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.STUNADDR_REQUIRED">Stunaddr field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n\n                </form>\n            </div>\n\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/settings/views/license/license.html",'<div id="license" class="page-layout simple fullwidth doc-page">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.LICENSE">LICENSE</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n        <div>\n            <md-button type="submit" ng-click="vm.requestLicense()" class="send-button md-raised" translate="SETTINGS.REQUEST_LICENSE" translate-attr-aria-label="SETTINGS.REQUEST_LICENSE">\n                REQUEST LICENSE\n            </md-button>\n        </div>\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n            \x3c!-- LICENSE CARD --\x3e\n            <div layout="row" flex>\n                <md-card class="md-whiteframe-1dp padding-20" flex>\n                    <div layout="row" layout-align="center">\n                        <div flex layout="row" layout-align="start center">\n                            <div>\n                                <a href="https://www.xcallymotion.com/prices" target="_blank" class="md-button md-fab green-A700-bg" aria-label="Eat cake">\n                                    <md-tooltip><span translate="SETTINGS.PRICES">Prices</span></md-tooltip>\n                                    <md-icon md-font-icon="icon-coin"></md-icon>\n                                </a>\n                            </div>\n                        </div>\n                        <div flex>\n                            <div ng-switch="vm.license.months" class="text-center">\n                                <span ng-switch-when="1" class="md-title md-accent-fg text-bold">{{ \'SETTINGS.PLAN\' | translate }}: <span translate="SETTINGS.MONTH_TO_MONTH">MONTH TO MONTH</span></span>\n                                <span ng-switch-when="12" class="md-title md-accent-fg text-bold">{{ \'SETTINGS.PLAN\' | translate }}: <span translate="SETTINGS.ANNUALLY">ANNUALLY</span></span>\n                                <span ng-switch-when="36" class="md-title md-accent-fg text-bold">{{ \'SETTINGS.PLAN\' | translate }}: <span translate="SETTINGS.PERPETUAL">PERPETUAL</span></span>\n                            </div>\n                        </div>\n                        <div flex layout="row" layout-align="end center">\n                            <div>\n                                <md-button type="submit" ng-click="vm.updateLicense()" class="md-button md-fab md-accent">\n                                    <md-tooltip><span translate="SETTINGS.UPDATE_LICENSE">License</span></md-tooltip>\n                                    <md-icon md-font-icon="icon-pencil"></md-icon>\n                                </md-button>\n                            </div>\n                        </div>\n                    </div>\n\n                    <span class="md-subhead md-warn-fg text-center">{{ \'SETTINGS.EXPIRATION_DATE\' | translate }}: {{vm.license.expiration | date: \'longDate\'}}</span>\n                    <span class="text-center padding-bottom-10"> {{\'SETTINGS.TOKEN\' | translate }}: <span class="text-italic text-bold">{{vm.license.uuid}}</span></span>\n\n                    <div ng-if="vm.license.demo" layout="column">\n                        <span class="md-subhead md-warn-fg text-center">{{ \'SETTINGS.TRIAL_VERSION\' | translate }}</span>\n                        <span class="md-subhead md-warn-fg text-center"><a href="https://www.xcallymotion.com/prices" target="_blank">{{ \'SETTINGS.PRICES\' | translate}}</a></span>\n                    </div>\n\n                    <div ng-if="vm.license.machineUuid !== vm.license.uuid" layout="column">\n                        <span class="blink md-subhead md-warn-fg text-center">{{ \'SETTINGS.NEW_TOKEN_DETECTED\' | translate }}</span>\n                        <span ng-if="vm.license.gray" class="blink md-subhead md-warn-fg text-center">{{ \'SETTINGS.EXPIRATION_GRAY_PERIOD\' | translate }}: {{vm.license.deadline | date: \'longDate\'}}</span>\n                        <span class="text-center padding-bottom-10"> {{\'SETTINGS.NEW_TOKEN\' | translate }}: <span class="text-italic text-bold">{{vm.license.machineUuid}}</span></span>\n                        <span class="text-center padding-bottom-10"> {{\'SETTINGS.EXPIRATION_REASON\' | translate }} <span class="text-italic text-bold"><a href="mailto:license@xcally.com?subject=New%20token%20detected&body=Hi xCALLY, New Token: {{vm.license.machineUuid}}, Old token: {{vm.license.uuid}}">license@xcally.com</a>.</span></span>\n                    </div>\n\n                    <md-subheader class="md-no-sticky">{{ \'SETTINGS.STAFF\' | translate }}</md-subheader>\n                    <md-divider></md-divider>\n                    <md-list layout="row">\n                        <md-list-item class="md-2-line">\n                            <md-icon md-font-icon="icon-account" class="md-avatar-icon"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3>{{ vm.license.users || 0 }}</h3>\n                                <p translate="SETTINGS.USERS">Users</p>\n                            </div>\n                        </md-list-item>\n                        <md-list-item class="md-2-line">\n                            <md-icon md-font-icon="icon-headphones" class="md-avatar-icon"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3>{{ vm.license.agents || 0 }}</h3>\n                                <p translate="SETTINGS.AGENTS">Agents</p>\n                            </div>\n                        </md-list-item>\n                        <md-list-item class="md-2-line">\n                            <md-icon md-font-icon="icon-phone" class="md-avatar-icon"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3>{{ vm.license.telephones || 0 }}</h3>\n                                <p translate="SETTINGS.TELEPHONES">Telephones</p>\n                            </div>\n                        </md-list-item>\n                    </md-list>\n\n                    <md-subheader class="md-no-sticky">{{ \'SETTINGS.CHANNELS\' | translate }}</md-subheader>\n                    <md-divider></md-divider>\n                    <md-list layout="row">\n                        <md-list-item class="md-2-line" ng-repeat="channel in vm.channels">\n                            <md-icon md-font-icon="{{channel.icon}}" class="md-avatar-icon" ng-class="vm.license[channel.name] ? \'green-A700-bg\' : \'red-A700-bg\'"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3 translate="SETTINGS.{{channel.name | uppercase}}"></h3>\n                                <p ng-class="vm.license[channel.name] ? \'green-A700-fg\' : \'red-A700-fg\'">{{ vm.license[channel.name] ? \'ENABLED\' : \'DISABLED\' }}</p>\n                            </div>\n                        </md-list-item>\n                    </md-list>\n\n                    <md-subheader class="md-no-sticky">{{ \'SETTINGS.MODULES\' | translate }}</md-subheader>\n                    <md-divider></md-divider>\n                    <md-list layout="row">\n                        <md-list-item class="md-2-line" ng-repeat="module in vm.modules">\n                            <md-icon md-font-icon="{{module.icon}}" class="md-avatar-icon" ng-class="vm.license[module.name] ? \'green-A700-bg\' : \'red-A700-bg\'"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3 translate="SETTINGS.{{module.name | uppercase}}"></h3>\n                                <p ng-class="vm.license[module.name] ? \'green-A700-fg\' : \'red-A700-fg\'">{{ vm.license[module.name] ? \'ENABLED\' : \'DISABLED\' }}</p>\n                            </div>\n                        </md-list-item>\n                    </md-list>\n\n                    <md-subheader class="md-no-sticky">{{ \'SETTINGS.OTHERS\' | translate }}</md-subheader>\n                    <md-divider></md-divider>\n                    <md-list layout="row">\n                        <md-list-item class="md-2-line" ng-repeat="other in vm.others">\n                            <md-icon md-font-icon="{{other.icon}}" class="md-avatar-icon" ng-class="vm.license[other.name] ? \'green-A700-bg\' : \'red-A700-bg\'"></md-icon>\n                            <div class="md-list-item-text">\n                                <h3 translate="SETTINGS.{{other.name | uppercase}}"></h3>\n'+"                                <p ng-class=\"vm.license[other.name] ? 'green-A700-fg' : 'red-A700-fg'\">{{ vm.license[other.name] ? 'ENABLED' : 'DISABLED' }}</p>\n                            </div>\n                        </md-list-item>\n                    </md-list>\n                </md-card>\n            </div>\n            \x3c!-- / LICENSE CARD --\x3e\n\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>"),e.put("app/main/apps/settings/views/license/request/dialog.html",'<md-dialog class="request-dialog" aria-label="Send Request">\n    <form name="requestForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title" translate="SETTINGS.REQUEST_LICENSE">Request License</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.license.name" required>\n                <div ng-messages="requestForm.name.$error" ng-show="requestForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.NAME_REQUIRED">Address field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.license.email" required>\n                <div ng-messages="requestForm.email.$error" ng-show="requestForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="SETTINGS.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-subheader class="md-no-sticky">{{ \'SETTINGS.STAFF\' | translate }}</md-subheader>\n            <div layout="row">\n                <md-input-container class="md-block" flex>\n                    <label translate="SETTINGS.USERS">Users</label>\n                    <input type="number" name="users" ng-model="vm.license.users" required>\n                    <div ng-messages="requestForm.users.$error" ng-show="requestForm.users.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="SETTINGS.ERRORS.USERS_REQUIRED">Users field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n                <md-input-container class="md-block" flex>\n                    <label translate="SETTINGS.AGENTS">Agents</label>\n                    <input type="number" name="agents" ng-model="vm.license.agents" required>\n                    <div ng-messages="requestForm.agents.$error" ng-show="requestForm.agents.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="SETTINGS.ERRORS.AGENTS_REQUIRED">Agents field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n                <md-input-container class="md-block" flex>\n                    <label translate="SETTINGS.TELEPHONES">Telephones</label>\n                    <input type="number" name="telephones" ng-model="vm.license.telephones" required>\n                    <div ng-messages="requestForm.telephones.$error" ng-show="requestForm.telephones.$touched" role="alert">\n                        <div ng-message="required">\n                            <span translate="SETTINGS.ERRORS.TELEPHONES_REQUIRED">Telephones field is required</span>\n                        </div>\n                    </div>\n                </md-input-container>\n            </div>\n\n            <md-subheader class="md-no-sticky">{{ \'SETTINGS.CHANNELS\' | translate }}</md-subheader>\n            <div layout="row">\n                <md-switch ng-model="vm.license[channel.name]" aria-label="{{channel.name}}" ng-repeat="channel in vm.channels"><span translate="SETTINGS.{{channel.name | uppercase}}"></span></md-switch>\n            </div>\n\n            <md-subheader class="md-no-sticky">{{ \'SETTINGS.MODULES\' | translate }}</md-subheader>\n            <div layout="row">\n                <md-switch ng-model="vm.license[module.name]" aria-label="{{module.name}}" ng-repeat="module in vm.modules"><span translate="SETTINGS.{{module.name | uppercase}}"></span></md-switch>\n            </div>\n\n            <md-subheader class="md-no-sticky">{{ \'SETTINGS.OTHERS\' | translate }}</md-subheader>\n            <div layout="row">\n                <md-switch ng-model="vm.license[other.name]" aria-label="{{other.name}}" ng-repeat="other in vm.others"><span translate="SETTINGS.{{other.name | uppercase}}"></span></md-switch>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.DESCRIPTION">Description</label>\n                <textarea name="description" ng-model="vm.license.description"></textarea>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.sendRequest()" class="send-button md-accent md-raised" ng-disabled="requestForm.$invalid || requestForm.$pristine" aria-label="SEND" translate="SETTINGS.SEND" translate-attr-aria-label="SETTINGS.SEND">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/networks/create/dialog.html",'<md-dialog class="network-dialog" aria-label="New Network">\n    <form name="networkForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.TYPE">Type</label>\n                <md-select ng-model="vm.network.type" required autofocus>\n                    <md-option ng-value="\'localnet\'">LocalNET</md-option>\n                    <md-option ng-value="\'externip\'">ExternIP</md-option>\n                </md-select>\n                <div ng-messages="networkForm.type.$error" ng-show="networkForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.network.type == \'localnet\'" class="md-block">\n                <label translate="SETTINGS.LOCALNETADDRESS">localNetAddress</label>\n                <input type="text" name="value" ng-model="vm.network.value" ng-pattern="/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/"\n                    required>\n                <div class="hint"><span translate="SETTINGS.HELP.LOCALNETADDRESS"></span></div>\n                <div ng-messages="networkForm.value.$error" ng-show="networkForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.LOCALNETADDRESS_REQUIRED">localNetAddress field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="SETTINGS.ERRORS.LOCALNETADDRESS_MUST_VALID_PATTERN" translate-values="{ regex: \'/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/\' }">localNetAddress must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.network.type == \'externip\'" class="md-block">\n                <label translate="SETTINGS.ADDRESS">Address</label>\n                <input type="text" name="value" ng-model="vm.network.value" ng-pattern="/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/" required>\n                <div class="hint"><span translate="SETTINGS.HELP.ADDRESS"></span></div>\n                <div ng-messages="networkForm.value.$error" ng-show="networkForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.ADDRESS_REQUIRED">Address field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="SETTINGS.ERRORS.ADDRESS_MUST_VALID_PATTERN" translate-values="{ regex: \'/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/\' }">Address must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newNetwork" ng-click="vm.saveNetwork()" class="send-button md-accent md-raised" ng-disabled="networkForm.$invalid || networkForm.$pristine" aria-label="SAVE" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newNetwork" ng-click="vm.addNewNetwork()" class="send-button md-accent md-raised" ng-disabled="networkForm.$invalid" aria-label="ADD" translate="SETTINGS.ADD_NETWORK" translate-attr-aria-label="SETTINGS.ADD_NETWORK">\n                    ADD NETWORK\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newNetwork" ng-click="vm.deleteNetwork($event)" aria-label="DELETE" translate translate-attr-aria-label="SETTINGS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SETTINGS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/networks/networks.html",'<div id="networks" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.NETWORKS">Networks</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="SETTINGS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedNetworks.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedNetworks =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="SETTINGS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-networks-count">\n                    <span>{{vm.selectedNetworks.length}}</span>\n                <span translate="SETTINGS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="NETWORKS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllNetworks()" translate="SETTINGS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectNetworks()" translate="SETTINGS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedNetworks" filename="networks.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedNetworks($event)" aria-label="delete selected" translate translate-attr-label="NETWORKS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- NETWORK TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedNetworks" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getNetworks">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'SETTINGS.ID\' | translate }}</th>\n                                <th md-column md-order-by="type">{{ \'SETTINGS.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="value">{{ \'SETTINGS.ADDRESS\' | translate }}</th>\n                                <th md-column md-order-by="createdAt">{{ \'SETTINGS.CREATED_AT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.networks.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="SETTINGS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="network" md-select-id="id" ng-repeat="network in vm.networks.rows">\n                                <td md-cell ng-if="network.userpic"><img class="avatar" alt="{{network.name}}" ng-src="api/users/{{network.id}}/avatar" /></td>\n                                <td md-cell ng-if="!network.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{network.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditNetwork($event, network)" md-cell class="id ">{{network.id}}</td>\n                                <td ng-click="vm.createOrEditNetwork($event, network)" md-cell class="type ">{{ vm.arraytype[network.type].option }}</td>\n                                <td ng-click="vm.createOrEditNetwork($event, network)" md-cell class="value ">{{network.value}}</td>\n                                <td ng-click="vm.createOrEditNetwork($event, network)" md-cell class="createdAt ">{{network.createdAt | date:\'medium\' }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="SETTINGS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(network, $event)" translate="SETTINGS.EDIT_NETWORK">\n                                                    Edit Network\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(network, $event)" translate="SETTINGS.DELETE_NETWORK">\n                                                    Delete Network\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.networks.count}}" md-on-paginate="vm.getNetworks" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / NETWORK TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD NETWORK BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-network-button" ng-click="vm.createOrEditNetwork($event)" aria-label="add network" translate translate-attr-aria-label="SETTINGS.ADD_NETWORK">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD NETWORK BUTTON --\x3e\n</div>'),e.put("app/main/apps/settings/views/smtps/create/dialog.html",'<md-dialog class="smtp-dialog" aria-label="New Smtp">\n    <form name="smtpForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.smtp.name" required autofocus>\n                <div ng-messages="smtpForm.name.$error" ng-show="smtpForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.SMTP_SERVICE">SMTP_Service</label>\n                <md-select ng-model="vm.smtp.Smtp.service" required>\n                    <md-option ng-value="null">None</md-option>\n                    <md-option ng-value="\'gmail\'">Gmail</md-option>\n                </md-select>\n                <div ng-messages="smtpForm.Smtp.service.$error" ng-show="smtpForm.Smtp.service.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.SMTP_SERVICE_REQUIRED">SMTP_Service field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                <label translate="SETTINGS.SMTP_HOST">SMTP_Host</label>\n                <input type="text" name="Smtp.host" ng-model="vm.smtp.Smtp.host" required>\n                <div ng-messages="smtpForm.Smtp.host.$error" ng-show="smtpForm.Smtp.host.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.SMTP_HOST_REQUIRED">SMTP_Host field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.SMTP_USERNAME">SMTP_Username</label>\n                <input type="text" name="Smtp.user" ng-model="vm.smtp.Smtp.user" required>\n                <div ng-messages="smtpForm.Smtp.user.$error" ng-show="smtpForm.Smtp.user.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.SMTP_USERNAME_REQUIRED">SMTP_Username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.SMTP_PASSWORD">SMTP_Password</label>\n                <input type="password" name="Smtp.pass" ng-model="vm.smtp.Smtp.pass" placeholder="Password" translate translate-attr-placeholder="SETTINGS.PASSWORD" required>\n                <div ng-messages="smtpForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newSmtp ">\n                <label translate="SETTINGS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="Smtp.pass" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="smtpForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="SETTINGS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                <label translate="SETTINGS.SMTP_PORT">SMTP_Port</label>\n                <input type="number" name="Smtp.port" ng-model="vm.smtp.Smtp.port" required>\n                <div ng-messages="smtpForm.Smtp.port.$error" ng-show="smtpForm.Smtp.port.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.SMTP_PORT_REQUIRED">SMTP_Port field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                <md-switch ng-model="vm.smtp.Smtp.secure" aria-label="SMTP_Secure"><span translate="SETTINGS.SMTP_SECURE">SMTP_Secure</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SETTINGS.DESCRIPTION">Description</label>\n                <input type="" name="description" ng-model="vm.smtp.description">\n                <div ng-messages="smtpForm.description.$error" ng-show="smtpForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SETTINGS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSmtp" ng-click="vm.saveSmtp()" class="send-button md-accent md-raised" ng-disabled="smtpForm.$invalid || smtpForm.$pristine" aria-label="SAVE" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSmtp" ng-click="vm.addNewSmtp()" class="send-button md-accent md-raised" ng-disabled="smtpForm.$invalid" aria-label="ADD" translate="SETTINGS.ADD_SMTP" translate-attr-aria-label="SETTINGS.ADD_SMTP">\n                    ADD SMTP\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSmtp" ng-click="vm.deleteSmtp($event)" aria-label="DELETE" translate translate-attr-aria-label="SETTINGS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SETTINGS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/smtps/smtps.html",'<div id="smtps" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.SMTP">Smtp</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        <div>\n            <md-button type="submit" ng-click="vm.verifySmtp()" ng-disabled="!vm.smtp.id" class="send-button md-accent md-raised" translate="SETTINGS.VERIFY" translate-attr-aria-label="SETTINGS.VERIFY">\n                VERIFY\n            </md-button>\n            <md-button type="submit" ng-click="vm.saveSmtp()" ng-disabled="smtpForm.$pristine || smtpForm.$invalid" class="send-button md-accent md-raised" translate="SETTINGS.SAVE" translate-attr-aria-label="SETTINGS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            <div class="smtp-detail-form-container general md-background-bg md-whiteframe-1dp">\n                <div class="pb-16" layout="row" layout-align="start center">\n                    <div class="h2 secondary-text" translate="SETTINGS.GENERAL">GENERAL</div>\n                </div>\n                <form name="smtpForm" novalidate>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.NAME">Name</label>\n                        <input type="text" name="name" ng-model="vm.smtp.name" required autofocus>\n                        <div ng-messages="smtpForm.name.$error" ng-show="smtpForm.name.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.SMTP_SERVICE">SMTP_Service</label>\n                        <md-select ng-model="vm.smtp.Smtp.service" required>\n                            <md-option ng-value="null">None</md-option>\n                            <md-option ng-value="\'gmail\'">Gmail</md-option>\n                        </md-select>\n                        <div ng-messages="smtpForm.Smtp.service.$error" ng-show="smtpForm.Smtp.service.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.SMTP_SERVICE_REQUIRED">SMTP_Service field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                        <label translate="SETTINGS.SMTP_HOST">SMTP_Host</label>\n                        <input type="text" name="Smtp.host" ng-model="vm.smtp.Smtp.host" required>\n                        <div ng-messages="smtpForm.Smtp.host.$error" ng-show="smtpForm.Smtp.host.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.SMTP_HOST_REQUIRED">SMTP_Host field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.SMTP_USERNAME">SMTP_Username</label>\n                        <input type="text" name="Smtp.user" ng-model="vm.smtp.Smtp.user" required>\n                        <div ng-messages="smtpForm.Smtp.user.$error" ng-show="smtpForm.Smtp.user.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.SMTP_USERNAME_REQUIRED">SMTP_Username field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.SMTP_PASSWORD">SMTP_Password</label>\n                        <input type="password" name="Smtp.pass" ng-model="vm.smtp.Smtp.pass" placeholder="Password" translate translate-attr-placeholder="SETTINGS.PASSWORD" required>\n                        <div ng-messages="smtpForm.password.$error" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container class="md-block" ng-if="vm.newSmtp ">\n                        <label translate="SETTINGS.CONFIRM_PASSWORD">Confirm Password</label>\n                        <input type="password" match-password="Smtp.pass" name="confirmPassword" ng-model="confirmPassword">\n                        <div ng-messages="smtpForm.confirmPassword.$error" role="alert" multiple>\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                            </div>\n                            <div ng-message="passwordMatch">\n                                <span translate="SETTINGS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                        <label translate="SETTINGS.SMTP_PORT">SMTP_Port</label>\n                        <input type="number" name="Smtp.port" ng-model="vm.smtp.Smtp.port" required>\n                        <div ng-messages="smtpForm.Smtp.port.$error" ng-show="smtpForm.Smtp.port.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.SMTP_PORT_REQUIRED">SMTP_Port field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n                    <md-input-container ng-if="vm.smtp.Smtp.service == null" class="md-block">\n                        <md-switch ng-model="vm.smtp.Smtp.secure" aria-label="SMTP_Secure"><span translate="SETTINGS.SMTP_SECURE">SMTP_Secure</span></md-switch>\n                    </md-input-container>\n                    <md-input-container class="md-block">\n                        <label translate="SETTINGS.DESCRIPTION">Description</label>\n                        <input type="" name="description" ng-model="vm.smtp.description">\n                        <div ng-messages="smtpForm.description.$error" ng-show="smtpForm.description.$touched" role="alert">\n                            <div ng-message="required">\n                                <span translate="SETTINGS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                            </div>\n                        </div>\n                    </md-input-container>\n\n                </form>\n            </div>\n\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/settings/views/system/system.html",'<div id="system" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n          <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n        </span>\n                <span class="logo-text" translate="SETTINGS.SYSTEM">SYSTEM</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SETTINGS.GENERAL">GENERAL</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="system-detail-form-container personal_info md-background-bg md-whiteframe-1dp">\n                        <md-card class="md-whiteframe-1dp padding-20" layout="row" layout-xs="column" layout-wrap>\n                            <ms-widget flex="50" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg">\n                                        <div class="h3">OS</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="h4">{{vm.system.system.manufacturer}} {{vm.system.system.model}}</div>\n                                                <div class="h4">{{vm.system.cpu.manufacturer}} {{vm.system.cpu.brand}} - {{vm.system.cpu.speed}} GHz - {{vm.system.cpu.cores}} Cores</div>\n                                                <div class="h4">{{vm.system.os.distro}} - {{vm.system.os.release}} - Kernel: {{vm.system.os.kernel}}</div>\n                                                <div class="h4">Node.js: {{vm.system.node}}</div>\n                                                <div class="h4">Host: {{vm.system.os.hostname}} - Uptime: {{vm.system.time.uptime / 60 | number:0}} m</div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                            <ms-widget flex="25" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg md-hue-1">\n                                        <div class="h3">CPU</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="pb-8" layout="row" layout-align="space-between start">\n                                                    <span class="h3" translate="SETTINGS.AVG_LOAD">AVG Load</span>\n                                                    <span class="h3 secondary-text font-weight-500">{{vm.system.currentLoad.avgload * 100 | number:0}}%</span>\n                                                </div>\n                                                <md-progress-linear class="red" md-mode="determinate" value="{{vm.system.currentLoad.avgload * 100 | number:0}}"></md-progress-linear>\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                            <ms-widget flex="25" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg md-hue-3">\n                                        <div class="h3">MEM</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="h4">{{\'SETTINGS.TOTAL\' | translate}}: {{vm.system.mem.used / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                                <div class="h4">{{\'SETTINGS.FREE\' | translate}}: {{vm.system.mem.available / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                                <div class="h4">{{\'SETTINGS.USED\' | translate}}: {{vm.system.mem.active / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                            </div>\n                                            <div class="p-16 pb-32">\n                                                <div class="pb-8" layout="row" layout-align="space-between start">\n                                                    <span class="h3" translate="SETTINGS.USED">Used</span>\n                                                    <span class="h3 secondary-text font-weight-500">{{(vm.system.mem.active / vm.system.mem.total) * 100 | number : 0}}%</span>\n                                                </div>\n                                                <md-progress-linear class="md-warn" md-mode="determinate" value="{{(vm.system.mem.active / vm.system.mem.total) * 100 | number : 0 }}"></md-progress-linear>\n\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                        </md-card>\n\n                        <md-card class="md-whiteframe-1dp padding-20" layout="row" layout-xs="column" layout-wrap>\n                            <ms-widget ng-repeat="disk in vm.system.fsSize" flex="25" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg md-hue-3">\n                                        <div class="h3">DISK {{$index + 1}}</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="h4">{{\'SETTINGS.FILE_SYSTEM\' | translate}}: {{disk.fs}}</div>\n                                                <div class="h4">{{\'SETTINGS.MOUNT_POINT\' | translate}}: "{{disk.mount}}"</div>\n                                                <div class="h4">{{\'SETTINGS.TOTAL\' | translate}}: {{disk.size / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                                <div class="h4">{{\'SETTINGS.USED\' | translate}}: {{disk.used / 1024 / 1024 / 1024 | number:0}} GB</div>\n                                            </div>\n                                            <div class="p-16 pb-32">\n                                                <div class="pb-8" layout="row" layout-align="space-between start">\n                                                    <span class="h3" translate="SETTINGS.USED">Used</span>\n                                                    <span class="h4 secondary-text font-weight-500">{{disk.use | number:0}}%</span>\n                                                </div>\n                                                <md-progress-linear class="red" md-mode="determinate" value="{{disk.use | number:0}}"></md-progress-linear>\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                        </md-card>\n\n                        <md-card class="md-whiteframe-1dp padding-20" layout="row" layout-xs="column" layout-wrap>\n                            <ms-widget ng-repeat="net in vm.system.net" flex="25" flex-xs="100">\n                                \x3c!-- Front --\x3e\n                                <ms-widget-front class="white-bg">\n                                    <div class="ph-16 pt-16 pb-8 md-accent-bg md-hue-3">\n                                        <div class="h3">NET {{$index + 1}}</div>\n                                    </div>\n\n                                    <div layout="row" layout-align="start center" layout-wrap>\n                                        <div flex="100" flex-gt-md="100">\n                                            <div class="p-16 pb-32">\n                                                <div class="h4">{{\'SETTINGS.INTERFACE\' | translate}}: {{net.iface}}</div>\n                                                <div class="h4">IPv4: {{net.ip4}}</div>\n                                                <div class="h4">IPv6: {{net.ip6}}</div>\n                                                <div class="h4">MAC: {{net.mac}}</div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                </ms-widget-front>\n                                \x3c!-- / Front --\x3e\n                            </ms-widget>\n                        </md-card>\n\n                        <md-card class="md-whiteframe-1dp padding-20" layout="row">\n                            <div flex>\n                                <md-toolbar class="md-table-toolbar md-default">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead" translate="SETTINGS.TOP_N_PROCESSES" translate-values="{value: vm.processLimit}"></span>\n                                        <div flex></div>\n                                        <ms-search-bar on-search="vm.searchTerm1 = query" on-collapse="vm.searchTerm1 = undefined" debounce="300"></ms-search-bar>\n                                    </div>\n                                </md-toolbar>\n                                <md-table-container>\n                                    <table md-table>\n                                        <thead md-head>\n                                            <tr md-row>\n                                                <th md-column>pid</th>\n                                                <th md-column>{{\'SETTINGS.NAME\' | translate}}</th>\n                                                <th md-column>{{\'SETTINGS.STATE\' | translate}}</th>\n                                                <th md-column>pmem</th>\n                                                <th md-column>pcpu</th>\n                                            </tr>\n                                        </thead>\n                                        <tbody md-body>\n                                            <tr md-row ng-repeat="process in vm.system.processes.list | limitTo: vm.processLimit | filter: vm.searchTerm1 | orderBy:\'-pcpu\'">\n                                                <td md-cell>{{process.pid}}</td>\n                                                <td md-cell>{{process.command}}</td>\n                                                <td md-cell>\n                                                    <span class="text-boxed white-fg" ng-class="{\n                          \'green-600-bg\': process.state == \'running\',\n                          \'yellow-600-bg\': process.state == \'sleeping\',\n                          \'red-600-bg\': process.state == \'blocked\'}">{{process.state | uppercase}}</span>\n                                                </td>\n                                                <td md-cell>{{process.pmem}}%</td>\n                                                <td md-cell>{{process.pcpu}}%</td>\n                                            </tr>\n                                        </tbody>\n                                    </table>\n                                </md-table-container>\n                            </div>\n                        </md-card>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SETTINGS.PROCESSES">PROCESSES</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="system-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <md-card class="md-whiteframe-1dp padding-20" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="SETTINGS.MOTION_PROCESS_MANAGEMENT"></span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm.searchTerm2 = query" on-collapse="vm.searchTerm2 = undefined" debounce="300"></ms-search-bar>\n                                    <md-button ng-click="vm.getProcesses()" class="md-icon-button" aria-label="Reload">\n                                        <md-icon md-font-icon="icon-reload" class="s24"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table>\n                                    <thead md-head>\n                                        <tr md-row>\n                                            <th md-column>id</th>\n                                            <th md-column>pid</th>\n                                            <th md-column>{{\'SETTINGS.NAME\' | translate}}</th>\n                                            <th md-column>{{\'SETTINGS.STATE\' | translate}}</th>\n                                            <th md-column>MEM</th>\n                                            <th md-column>CPU</th>\n                                            <th md-column width="20px">Actions</th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row ng-repeat="process in vm.processes | filter: vm.searchTerm2 | orderBy:\'-monit.cpu\'">\n                                            <td md-cell>{{process.pm_id}}</td>\n                                            <td md-cell>{{process.pid}}</td>\n                                            <td md-cell>{{process.name}}</td>\n                                            <td md-cell>\n                                                <span class="text-boxed white-fg" ng-class="{\'green-600-bg\': process.pm2_env.status == \'online\', \'red-600-bg\': process.pm2_env.status == \'stopped\'}">{{process.pm2_env.status | uppercase}}</span>\n                                            </td>\n                                            <td md-cell>{{process.monit.memory / 1024 / 1024 | number:0}} MB</td>\n                                            <td md-cell>{{process.monit.cpu}}%</td>\n                                            <td md-cell>\n                                                <md-button ng-if="process.pm2_env.status !== \'online\'" ng-click="vm.updateProcess($event, process.pm_id, \'online\')" class="md-icon-button" aria-label="Play">\n                                                    <md-icon md-font-icon="icon-play" class="s24"></md-icon>\n                                                </md-button>\n                                                <md-button ng-if="process.pm2_env.status === \'online\'" ng-click="vm.updateProcess($event, process.pm_id, \'stopped\')" class="md-icon-button" aria-label="Stop">\n                                                    <md-icon md-font-icon="icon-stop" class="s24"></md-icon>\n                                                </md-button>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                    <tfoot md-foot>\n                                        <tr md-row>\n                                            <td md-cell></td>\n                                            <td md-cell></td>\n                                            <td md-cell></td>\n                                            <td md-cell></td>\n                                            <td md-cell>{{ (vm.processes | map: \'monit.memory\' | sum) / 1024 / 1024 | number:0 }} MB</td>\n                                            <td md-cell></td>\n                                            <td md-cell></td>\n                                        </tr>\n                                    </tfoot>\n                                </table>\n                            </md-table-container>\n                        </md-card>\n                        <md-card class="md-whiteframe-1dp padding-20" flex>\n                            <md-toolbar class="md-table-toolbar md-default">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="SETTINGS.USEFUL_COMMANDS"></span>\n                                    <div flex></div>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table>\n                                    <thead md-head>\n                                        <tr md-row>\n                                            <th md-column width="30%">{{\'SETTINGS.COMMAND\' | translate}}</th>\n                                            <th md-column>{{\'SETTINGS.DESCRIPTION\' | translate}}</th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 list</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_LIST\' | translate}}</td>\n                                        </tr>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 start &lt;id | name&gt;</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_START\' | translate}}</td>\n                                        </tr>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 stop &lt;id | name | all&gt;</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_STOP\' | translate}}</td>\n                                        </tr>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 restart &lt;id | name&gt;</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_RESTART\' | translate}}</td>\n                                        </tr>\n                                        <tr>\n                                            <td md-cell class="no-border">pm2 logs [id | name]</td>\n                                            <td md-cell class="no-border">{{ \'SETTINGS.PM2_LOGS\' | translate}}</td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                        </md-card>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/settings/views/updates/update/dialog.html",'<md-dialog aria-label="Update">\n    <form name="updateForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n            </div>\n        </md-toolbar>\n\n        <div md-background-bg layout="row" layout-align="start start">\n            <md-progress-linear md-mode="determinate" value="{{vm.progress}}" class="md-warn"></md-progress-linear>\n        </div>\n\n        <md-dialog-content ms-scroll>\n            <div layout="row" layout-align="center center">\n                <div ng-if="vm.updating" layout="column" layout-align="center center">\n                    <span class="text-center md-title">Grab a quick coffee and</span>\n                    <span class="text-center md-title">get back here as soon as completed!</span>\n                    <span class="text-center md-title">{{vm.output}}</span>\n                </div>\n                <div ng-if="!vm.updating">\n                    <div ng-if="vm.success" layout="column" layout-align="center center">\n                        <span class="text-center md-title">Update Completed! Thank you for your time.</span>\n                        <span class="text-center md-title">In order to complete the update,</span>\n                        <span class="text-center md-title">please click on reload button</span>\n                    </div>\n                    <div ng-if="!vm.success" layout="column" layout-align="center center">\n                        <span class="text-center md-title">Update Error!</span>\n                        <span class="text-center md-title">Please contact your administrator!</span>\n                        <span class="text-center md-title">{{vm.output}}</span>\n                    </div>\n                </div>\n                <img src="assets/images/business/users.jpg" alt="" width="128" height="128" />\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions ng-if="!vm.updating" layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.reload()" class="send-button md-warm md-raised" aria-label="RELOAD" translate="SETTINGS.RELOAD" translate-attr-aria-label="SETTINGS.RELOAD">\n                    RELOAD\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/settings/views/updates/updates.html",'<div id="updates" class="page-layout simple fullwidth doc-page">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-cog" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SETTINGS.UPDATES">UPDATES</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- UPDATE CARD --\x3e\n            <div layout="row" ng-if="!vm.updating">\n                <md-card class="md-whiteframe-1dp padding-20" flex>\n                    <div layout="column" layout-align="center center">\n\n                        <span class="md-title md-accent-fg padding-20 text-bold" translate="SETTINGS.CURRENT_VERSION">CURRENT VERSION</span>\n\n                        <span class="md-display-3 padding-20">{{vm.version.current}}</span>\n\n                        <md-button href="https://wiki.xcallymotion.com/display/XMV/Motion+GUI#MotionGUI-Version{{vm.version.current}}" target="_blank" class="md-accent" title="CHANGELOG" aria-label="CHANGELOG" translate="SETTINGS.CHANGELOG" translate-attr-aria-label="SETTINGS.CHANGELOG">\n                            CHANGELOG\n                        </md-button>\n                    </div>\n                </md-card>\n                <md-card class="md-whiteframe-20dp padding-20" flex ng-if="vm.version.current != vm.version.latest">\n                    <div layout="column" layout-align="center center">\n\n                        <span class="md-title md-warn-fg padding-20 text-bold" translate="SETTINGS.NEW_VERSION">NEW VERSION</span>\n\n                        <span class="md-display-3 padding-20">{{vm.version.latest}}</span>\n\n                        <md-button href="https://wiki.xcallymotion.com/display/XMV/Motion+GUI#MotionGUI-Version{{vm.version.latest}}" target="_blank" class="md-accent" title="CHANGELOG" aria-label="CHANGELOG" translate="SETTINGS.CHANGELOG" translate-attr-aria-label="SETTINGS.CHANGELOG">\n                            CHANGELOG\n                        </md-button>\n                        <md-button ng-click="vm.updateConfirm($event)" class="md-raised md-warn" aria-label="CHANGELOG" translate="SETTINGS.UPDATE" translate-attr-aria-label="SETTINGS.UPDATE">UPDATE</md-button>\n                    </div>\n                </md-card>\n                <md-card class="md-whiteframe-1dp padding-20" flex ng-if="vm.version.current == vm.version.latest">\n                    <div layout="column" layout-align="center center">\n\n                        <span class="md-title md-warn-fg padding-20 text-bold" translate="SETTINGS.REMOTE_VERSION">REMOTE VERSION</span>\n\n                        <span class="md-subhead padding-20" translate="SETTINGS.NO_NEW_VERSION_AVAILABLE">NO NEW VERSION AVAILABLE</span>\n                    </div>\n                </md-card>\n            </div>\n            \x3c!-- / UPDATE CARD --\x3e\n\n            <div ng-if="vm.updating">\n                <md-card class="md-whiteframe-1dp padding-20" flex>\n                    <div layout="column" layout-align="center center">\n                        <span class="md-title md-accent-fg padding-20 text-bold" translate="SETTINGS.UPDATING">...</span>\n                        <md-progress-linear md-mode="determinate" class="md-accent padding-20" value="{{vm.progress}}"></md-progress-linear>\n                        <span class="md-display-1 padding-5 text-center">Grab a quick coffee and</span>\n                        <span class="md-display-1 padding-5 text-center">get back here as soon as completed</span>\n                        <img src="assets/images/business/users.jpg" alt="" width="40%" height="40%" />\n                    </div>\n                </md-card>\n            </div>\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/main/apps/sms/views/smsAccounts/create/dialog.html",'<md-dialog class="smsAccount-dialog" aria-label="New SmsAccount">\n    <form name="smsAccountForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SMS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.smsAccount.name" required autofocus>\n                <div ng-messages="smsAccountForm.name.$error" ng-show="smsAccountForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.TYPE">Type</label>\n                <md-select ng-model="vm.smsAccount.type" required>\n                    <md-option ng-value="\'twilio\'">Twilio</md-option>\n                    <md-option ng-value="\'skebby\'">Skebby</md-option>\n                </md-select>\n                <div ng-messages="smsAccountForm.type.$error" ng-show="smsAccountForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smsAccount.type == \'skebby\'" class="md-block">\n                <label translate="SMS.SMSTYPE">smstype</label>\n                <md-select ng-model="vm.smsAccount.smstype" required>\n                    <md-option ng-value="\'basic\'">Basic</md-option>\n                    <md-option ng-value="\'classic\'">Classic</md-option>\n                    <md-option ng-value="\'classic+\'">Classic+</md-option>\n                </md-select>\n                <div ng-messages="smsAccountForm.smstype.$error" ng-show="smsAccountForm.smstype.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.SMSTYPE_REQUIRED">smstype field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.PHONE">phone</label>\n                <input type="text" name="phone" ng-model="vm.smsAccount.phone" required>\n                <div ng-messages="smsAccountForm.phone.$error" ng-show="smsAccountForm.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.PHONE_REQUIRED">phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smsAccount.type == \'twilio\'" class="md-block">\n                <label translate="SMS.SID">sid</label>\n                <input type="text" name="sid" ng-model="vm.smsAccount.sid" required>\n                <div ng-messages="smsAccountForm.sid.$error" ng-show="smsAccountForm.sid.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.SID_REQUIRED">sid field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smsAccount.type == \'twilio\'" class="md-block">\n                <label translate="SMS.TOKEN">token</label>\n                <input type="text" name="token" ng-model="vm.smsAccount.token" required>\n                <div ng-messages="smsAccountForm.token.$error" ng-show="smsAccountForm.token.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.TOKEN_REQUIRED">token field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.smsAccount.type == \'skebby\'" class="md-block">\n                <label translate="SMS.USERNAME">username</label>\n                <input type="text" name="username" ng-model="vm.smsAccount.username" required>\n                <div ng-messages="smsAccountForm.username.$error" ng-show="smsAccountForm.username.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.USERNAME_REQUIRED">username field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.smsAccount.type == \'skebby\'">\n                <label translate="SMS.PASSWORD">password</label>\n                <input type="password" name="password" ng-model="vm.smsAccount.password" placeholder="Password" translate translate-attr-placeholder="SMS.PASSWORD" required>\n                <div ng-messages="smsAccountForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newSmsAccount  && vm.smsAccount.type == \'skebby\'">\n                <label translate="SMS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="smsAccountForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="SMS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.MOTIONADDRESS">motionaddress</label>\n                <input type="url" name="remote" ng-model="vm.smsAccount.remote" required>\n                <div ng-messages="smsAccountForm.remote.$error" ng-show="smsAccountForm.remote.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.MOTIONADDRESS_REQUIRED">motionaddress field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="SMS.ERRORS.MOTIONADDRESS_MUST_VALID_URL">motionaddress must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.smsAccount.description">\n                <div ng-messages="smsAccountForm.description.$error" ng-show="smsAccountForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSmsAccount" ng-click="vm.saveSmsAccount()" class="send-button md-accent md-raised" ng-disabled="smsAccountForm.$invalid || smsAccountForm.$pristine" aria-label="SAVE" translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSmsAccount" ng-click="vm.addNewSmsAccount()" class="send-button md-accent md-raised" ng-disabled="smsAccountForm.$invalid" aria-label="ADD" translate="SMS.ADD_SMSACCOUNT" translate-attr-aria-label="SMS.ADD_SMSACCOUNT">\n                    ADD SMSACCOUNT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSmsAccount" ng-click="vm.deleteSmsAccount($event)" aria-label="DELETE" translate translate-attr-aria-label="SMS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SMS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/sms/views/smsAccounts/edit/smsDispositions/dialog.html",'<md-dialog class="smsDisposition-dialog" aria-label="New SmsDisposition">\n    <form name="smsDispositionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SMS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.smsDisposition.name" required autofocus>\n                <div ng-messages="smsDispositionForm.name.$error" ng-show="smsDispositionForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSmsDisposition" ng-click="vm.saveSmsDisposition()" class="send-button md-accent md-raised" ng-disabled="smsDispositionForm.$invalid || smsDispositionForm.$pristine" aria-label="SAVE" translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSmsDisposition" ng-click="vm.addNewSmsDisposition()" class="send-button md-accent md-raised" ng-disabled="smsDispositionForm.$invalid" aria-label="ADD" translate="SMS.ADD_SMSDISPOSITION" translate-attr-aria-label="SMS.ADD_SMSDISPOSITION">\n                    ADD SMSDISPOSITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSmsDisposition" ng-click="vm.deleteSmsDisposition($event)" aria-label="DELETE" translate translate-attr-aria-label="SMS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SMS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/sms/views/smsAccounts/edit/view.html",'<div id="sms-smsAccount" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-smsAccounts-button md-icon-button" aria-label="Go to smsAccounts" ng-click="vm.gotoSmsAccounts()" translate translate-attr-aria-label="SMS.GO_TO_SMSACCOUNTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.smsAccount.userpic" class="smsAccount-image" hide-xs>\n                    <img ng-src="api/users/{{vm.smsAccount.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.smsAccount.userpic" class="smsAccount-image" hide-xs>\n                    <img ng-src="assets/images/business/smsAccounts.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.smsAccount.id}} {{vm.smsAccount.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="SMS.CREATED_AT"></span> <span>{{vm.smsAccount.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveSmsAccount()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (apiForm.$invalid) || (smsDispositionsForm.$invalid) || (acceptForm.$invalid) || (rejectForm.$invalid) || (closeForm.$invalid) || (actionsForm.$invalid)"\n                translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.smsAccount.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.LIST">List</label>\n                                <md-select ng-model="vm.smsAccount.ListId">\n                                    <md-option ng-value="ListId.id" ng-repeat="ListId in vm.lists">{{ ListId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.ListId.$error" ng-show="generalForm.ListId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.LIST_REQUIRED">List field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.smsAccount.fidelity" aria-label="fidelity"><span translate="SMS.FIDELITY">fidelity</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.fidelity" class="md-block">\n                                <label translate="SMS.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.smsAccount.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.TYPE">Type</label>\n                                <md-select ng-model="vm.smsAccount.type" required>\n                                    <md-option ng-value="\'twilio\'">Twilio</md-option>\n                                    <md-option ng-value="\'skebby\'">Skebby</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.type.$error" ng-show="generalForm.type.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.type == \'skebby\'" class="md-block">\n                                <label translate="SMS.SMSTYPE">smstype</label>\n                                <md-select ng-model="vm.smsAccount.smstype" required>\n                                    <md-option ng-value="\'basic\'">Basic</md-option>\n                                    <md-option ng-value="\'classic\'">Classic</md-option>\n                                    <md-option ng-value="\'classic+\'">Classic+</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.smstype.$error" ng-show="generalForm.smstype.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.SMSTYPE_REQUIRED">smstype field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.PHONE">phone</label>\n                                <input type="text" name="phone" ng-model="vm.smsAccount.phone" required>\n                                <div ng-messages="generalForm.phone.$error" ng-show="generalForm.phone.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.PHONE_REQUIRED">phone field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.type == \'twilio\'" class="md-block">\n                                <label translate="SMS.SID">sid</label>\n                                <input type="text" name="sid" ng-model="vm.smsAccount.sid" required>\n                                <div ng-messages="generalForm.sid.$error" ng-show="generalForm.sid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.SID_REQUIRED">sid field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.type == \'twilio\'" class="md-block">\n                                <label translate="SMS.TOKEN">token</label>\n                                <input type="text" name="token" ng-model="vm.smsAccount.token" required>\n                                <div ng-messages="generalForm.token.$error" ng-show="generalForm.token.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.TOKEN_REQUIRED">token field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.smsAccount.type == \'skebby\'" class="md-block">\n                                <label translate="SMS.USERNAME">username</label>\n                                <input type="text" name="username" ng-model="vm.smsAccount.username" required>\n                                <div ng-messages="generalForm.username.$error" ng-show="generalForm.username.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.USERNAME_REQUIRED">username field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.smsAccount.type == \'skebby\'">\n                                <label translate="SMS.PASSWORD">password</label>\n                                <input type="password" name="password" ng-model="vm.smsAccount.password" placeholder="Password" translate translate-attr-placeholder="SMS.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newSmsAccount  && vm.smsAccount.type == \'skebby\'">\n                                <label translate="SMS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="SMS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.MOTIONADDRESS">motionaddress</label>\n                                <input type="url" name="remote" ng-model="vm.smsAccount.remote" required>\n                                <div ng-messages="generalForm.remote.$error" ng-show="generalForm.remote.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.MOTIONADDRESS_REQUIRED">motionaddress field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="SMS.ERRORS.MOTIONADDRESS_MUST_VALID_URL">motionaddress must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.smsAccount.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.API">API</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container api md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.API">API</div>\n                        </div>\n                        <form name="apiForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.DISPOSITIONS">DISPOSITIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container smsdispositions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="SmsAccountSmsDispositionsController as vm_dc" ng-init="vm_dc.init(vm.smsAccount)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedSmsAccountSmsDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="SMS.SMSDISPOSITIONS">SmsDispositions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event)" aria-label="add smsDisposition" translate translate-attr-label="SMS.ADD_SMSDISPOSITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedSmsAccountSmsDispositions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedSmsAccountSmsDispositions.length}} {{vm_dc.selectedSmsAccountSmsDispositions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedSmsAccountSmsDispositions($event)" aria-label="delete selected" translate translate-attr-label="SMSACCOUNTS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedSmsAccountSmsDispositions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getSmsAccountSmsDispositions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'SMS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'SMS.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'SMS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="smsDisposition" md-select-id="id" ng-repeat="smsDisposition in vm_dc.smsAccountSmsDispositions.rows">\n                                            <td ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event, smsDisposition)" md-cell>{{smsDisposition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event, smsDisposition)" md-cell>{{smsDisposition.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event, smsDisposition)" md-cell>{{smsDisposition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="SMS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditSmsAccountSmsDisposition($event, smsDisposition)" translate="SMS.EDIT_SMSDISPOSITION">\n                                                                Edit SmsDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(smsDisposition, $event)" translate="SMS.DELETE_SMSDISPOSITION">\n                                                                Delete SmsDisposition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.smsAccountSmsDispositions.rows.length">\n                                            <td md-cell colspan="5">\n                                                <span class="text-boxed-ligth" translate="SMS.NO_SMSDISPOSITION_AVAILABLE">No smsdisposition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.smsAccountSmsDispositions.count}}" md-on-paginate="vm_dc.getSmsAccountSmsDispositions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.WEBHOOKS">WEBHOOKS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container accept md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.ACCEPT">ACCEPT</div>\n                        </div>\n                        <form name="acceptForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.ACCEPTMETHOD">acceptMethod</label>\n                                <md-select ng-model="vm.smsAccount.acceptMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="acceptForm.acceptMethod.$error" ng-show="acceptForm.acceptMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.ACCEPTMETHOD_REQUIRED">acceptMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.ACCEPTURL">acceptUrl</label>\n                                <input type="url" name="acceptUrl" ng-model="vm.smsAccount.acceptUrl">\n                                <div ng-messages="acceptForm.acceptUrl.$error" ng-show="acceptForm.acceptUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.ACCEPTURL_REQUIRED">acceptUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="SMS.ERRORS.ACCEPTURL_MUST_VALID_URL">acceptUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="smsAccount-detail-form-container reject md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.REJECT">REJECT</div>\n                        </div>\n                        <form name="rejectForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.REJECTMETHOD">rejectMethod</label>\n                                <md-select ng-model="vm.smsAccount.rejectMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="rejectForm.rejectMethod.$error" ng-show="rejectForm.rejectMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.REJECTMETHOD_REQUIRED">rejectMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.REJECTURL">rejectUrl</label>\n                                <input type="url" name="rejectUrl" ng-model="vm.smsAccount.rejectUrl">\n                                <div ng-messages="rejectForm.rejectUrl.$error" ng-show="rejectForm.rejectUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.REJECTURL_REQUIRED">rejectUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="SMS.ERRORS.REJECTURL_MUST_VALID_URL">rejectUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="smsAccount-detail-form-container close md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.CLOSE">CLOSE</div>\n                        </div>\n                        <form name="closeForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.CLOSEMETHOD">closeMethod</label>\n                                <md-select ng-model="vm.smsAccount.closeMethod" autofocus>\n                                    <md-option ng-value="\'GET\'">HTTP GET</md-option>\n                                    <md-option ng-value="\'POST\'">HTTP POST</md-option>\n                                </md-select>\n                                <div ng-messages="closeForm.closeMethod.$error" ng-show="closeForm.closeMethod.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.CLOSEMETHOD_REQUIRED">closeMethod field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.CLOSEURL">closeUrl</label>\n                                <input type="url" name="closeUrl" ng-model="vm.smsAccount.closeUrl">\n                                <div ng-messages="closeForm.closeUrl.$error" ng-show="closeForm.closeUrl.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.CLOSEURL_REQUIRED">closeUrl field is required</span>\n                                    </div>\n                                    <div ng-message="url">\n                                        <span translate="SMS.ERRORS.CLOSEURL_MUST_VALID_URL">closeUrl must be a valid url http://www.xcally.com</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsAccount-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.ACTIONS">ACTIONS</div>\n                        </div>\n                        <form name="actionsForm" novalidate>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/sms/views/smsAccounts/smsAccounts.html",'<div id="smsAccounts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-message-text" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SMS.SMSACCOUNTS">SmsAccounts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="SMS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSmsAccounts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSmsAccounts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="SMS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-smsAccounts-count">\n                    <span>{{vm.selectedSmsAccounts.length}}</span>\n                <span translate="SMS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SMSACCOUNTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSmsAccounts()" translate="SMS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSmsAccounts()" translate="SMS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSmsAccounts" filename="smsAccounts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSmsAccounts($event)" aria-label="delete selected" translate translate-attr-label="SMSACCOUNTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SMSACCOUNT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSmsAccounts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSmsAccounts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'SMS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'SMS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="type">{{ \'SMS.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'SMS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.smsAccounts.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="SMS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="smsAccount" md-select-id="id" ng-repeat="smsAccount in vm.smsAccounts.rows">\n                                <td md-cell ng-if="smsAccount.userpic"><img class="avatar" alt="{{smsAccount.name}}" ng-src="api/users/{{smsAccount.id}}/avatar" /></td>\n                                <td md-cell ng-if="!smsAccount.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{smsAccount.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSmsAccount($event, smsAccount)" md-cell class="id ">{{smsAccount.id}}</td>\n                                <td ng-click="vm.createOrEditSmsAccount($event, smsAccount)" md-cell class="name ">{{smsAccount.name}}</td>\n                                <td ng-click="vm.createOrEditSmsAccount($event, smsAccount)" md-cell class="type ">{{ vm.arraytype[smsAccount.type].option }}</td>\n                                <td ng-click="vm.createOrEditSmsAccount($event, smsAccount)" md-cell class="description ">{{smsAccount.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="SMS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(smsAccount, $event)" translate="SMS.EDIT_SMSACCOUNT">\n                                                    Edit SmsAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(smsAccount, $event)" translate="SMS.DELETE_SMSACCOUNT">\n                                                    Delete SmsAccount\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.smsAccounts.count}}" md-on-paginate="vm.getSmsAccounts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SMSACCOUNT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SMSACCOUNT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-smsAccount-button" ng-click="vm.createOrEditSmsAccount($event)" aria-label="add smsAccount" translate translate-attr-aria-label="SMS.ADD_SMSACCOUNT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SMSACCOUNT BUTTON --\x3e\n</div>'),e.put("app/main/apps/sms/views/smsQueues/create/dialog.html",'<md-dialog class="smsQueue-dialog" aria-label="New SmsQueue">\n    <form name="smsQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="SMS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.smsQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                <div ng-messages="smsQueueForm.name.$error" ng-show="smsQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="SMS.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.smsQueue.strategy" required>\n                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                </md-select>\n                <div ng-messages="smsQueueForm.strategy.$error" ng-show="smsQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.AGENT_TIMEOUT">Agent_Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.smsQueue.timeout" required>\n                <div ng-messages="smsQueueForm.timeout.$error" ng-show="smsQueueForm.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="SMS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.smsQueue.description">\n                <div ng-messages="smsQueueForm.description.$error" ng-show="smsQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="SMS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSmsQueue" ng-click="vm.saveSmsQueue()" class="send-button md-accent md-raised" ng-disabled="smsQueueForm.$invalid || smsQueueForm.$pristine" aria-label="SAVE" translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSmsQueue" ng-click="vm.addNewSmsQueue()" class="send-button md-accent md-raised" ng-disabled="smsQueueForm.$invalid" aria-label="ADD" translate="SMS.ADD_SMSQUEUE" translate-attr-aria-label="SMS.ADD_SMSQUEUE">\n                    ADD SMSQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSmsQueue" ng-click="vm.deleteSmsQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="SMS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="SMS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/sms/views/smsQueues/edit/teamadd/teamadd.html",'<md-dialog class="smsQueue-dialog" aria-label="smsQueue">\n    <form name="smsQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="SMS.TEAMADD_SMSQUEUE">Add Team in SMSQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="SMS.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="smsQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/sms/views/smsQueues/edit/view.html",'<div id="sms-smsQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-smsQueues-button md-icon-button" aria-label="Go to smsQueues" ng-click="vm.gotoSmsQueues()" translate translate-attr-aria-label="SMS.GO_TO_SMSQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.smsQueue.userpic" class="smsQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.smsQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.smsQueue.userpic" class="smsQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/smsQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.smsQueue.id}} {{vm.smsQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="SMS.CREATED_AT"></span> <span>{{vm.smsQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.smsQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="SMS.TEAMADD_SMSQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveSmsQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="SMS.SAVE" translate-attr-aria-label="SMS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="SMS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="smsQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="SMS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.smsQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="SMS.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.smsQueue.strategy" required>\n                                    <md-option ng-value="\'beepall\'">Beepall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">RR Memory</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.AGENT_TIMEOUT">Agent_Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.smsQueue.timeout" required>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.AGENT_TIMEOUT_REQUIRED">Agent_Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="SMS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.smsQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="SMS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/sms/views/smsQueues/smsQueues.html",'<div id="smsQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-message-text" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="SMS.SMSQUEUES">SmsQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="SMS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSmsQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSmsQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="SMS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-smsQueues-count">\n                    <span>{{vm.selectedSmsQueues.length}}</span>\n                <span translate="SMS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SMSQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSmsQueues()" translate="SMS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSmsQueues()" translate="SMS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSmsQueues" filename="smsQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSmsQueues($event)" aria-label="delete selected" translate translate-attr-label="SMSQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SMSQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSmsQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSmsQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'SMS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'SMS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'SMS.STRATEGY\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.smsQueues.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="SMS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="smsQueue" md-select-id="id" ng-repeat="smsQueue in vm.smsQueues.rows">\n                                <td md-cell ng-if="smsQueue.userpic"><img class="avatar" alt="{{smsQueue.name}}" ng-src="api/users/{{smsQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!smsQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{smsQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSmsQueue($event, smsQueue)" md-cell class="id ">{{smsQueue.id}}</td>\n                                <td ng-click="vm.createOrEditSmsQueue($event, smsQueue)" md-cell class="name ">{{smsQueue.name}}</td>\n                                <td ng-click="vm.createOrEditSmsQueue($event, smsQueue)" md-cell class="strategy ">{{ vm.arraystrategy[smsQueue.strategy].option }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="SMS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(smsQueue, $event)" translate="SMS.EDIT_SMSQUEUE">\n                                                    Edit SmsQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(smsQueue, $event)" translate="SMS.DELETE_SMSQUEUE">\n                                                    Delete SmsQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.smsQueues.count}}" md-on-paginate="vm.getSmsQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SMSQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SMSQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-smsQueue-button" ng-click="vm.createOrEditSmsQueue($event)" aria-label="add smsQueue" translate translate-attr-aria-label="SMS.ADD_SMSQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SMSQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/staff/views/agents/agents.html",'<div id="agents" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-multiple" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="STAFF.AGENTS">Agents</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="STAFF.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedAgents.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedAgents =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="STAFF.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-agents-count">\n                    <span>{{vm.selectedAgents.length}}</span>\n                <span translate="STAFF.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="AGENTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllAgents()" translate="STAFF.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectAgents()" translate="STAFF.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedAgents" filename="agents.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedAgents($event)" aria-label="delete selected" translate translate-attr-label="AGENTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- AGENT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedAgents" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getAgents">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="fullname">{{ \'STAFF.FULLNAME\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'STAFF.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="email">{{ \'STAFF.EMAIL\' | translate }}</th>\n                                <th md-column md-order-by="internal">{{ \'STAFF.INTERNAL\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.agents.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="STAFF.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="agent" md-select-id="id" ng-repeat="agent in vm.agents.rows">\n                                <td md-cell ng-if="agent.userpic"><img class="avatar" alt="{{agent.name}}" ng-src="api/users/{{agent.id}}/avatar" /></td>\n                                <td md-cell ng-if="!agent.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{agent.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditAgent($event, agent)" md-cell class="fullname font-weight-600">{{agent.fullname}}</td>\n                                <td ng-click="vm.createOrEditAgent($event, agent)" md-cell class="name ">{{agent.name}}</td>\n                                <td ng-click="vm.createOrEditAgent($event, agent)" md-cell class="email ">{{agent.email}}</td>\n                                <td ng-click="vm.createOrEditAgent($event, agent)" md-cell class="internal ">{{agent.internal}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(agent, $event)" translate="STAFF.EDIT_AGENT">\n                                                    Edit Agent\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(agent, $event)" translate="STAFF.DELETE_AGENT">\n                                                    Delete Agent\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.agents.count}}" md-on-paginate="vm.getAgents" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / AGENT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD AGENT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-agent-button" ng-click="vm.createOrEditAgent($event)" aria-label="add agent" translate translate-attr-aria-label="STAFF.ADD_AGENT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD AGENT BUTTON --\x3e\n</div>'),e.put("app/main/apps/staff/views/agents/create/dialog.html",'<md-dialog class="agent-dialog" aria-label="New Agent">\n    <form name="agentForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.FULLNAME">Fullname</label>\n                <input type="text" name="fullname" ng-model="vm.agent.fullname" required autofocus>\n                <div ng-messages="agentForm.fullname.$error" ng-show="agentForm.fullname.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.FULLNAME_REQUIRED">Fullname field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.USERNAME">Username</label>\n                <input type="text" name="name" ng-model="vm.agent.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="!vm.newAgent">\n                <div ng-messages="agentForm.name.$error" ng-show="agentForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.agent.email" required>\n                <div ng-messages="agentForm.email.$error" ng-show="agentForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newAgent">\n                <label translate="STAFF.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.agent.password" placeholder="Password" translate translate-attr-placeholder="STAFF.PASSWORD" required>\n                <div ng-messages="agentForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newAgent  && vm.newAgent">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="agentForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.agent.description">\n                <div ng-messages="agentForm.description.$error" ng-show="agentForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newAgent" class="md-block">\n                <md-switch ng-model="vm.agent.autointernal" aria-label="AutoInternal"><span translate="STAFF.AUTOINTERNAL">AutoInternal</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="!vm.agent.autointernal" class="md-block">\n                <label translate="STAFF.INTERNAL">Internal</label>\n                <input type="text" name="internal" ng-model="vm.agent.internal" required ng-disabled="!vm.newAgent">\n                <div ng-messages="agentForm.internal.$error" ng-show="agentForm.internal.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newAgent" class="md-block">\n                <md-switch ng-model="vm.agent.voicemail" aria-label="Voicemail"><span translate="STAFF.VOICEMAIL">Voicemail</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newAgent" ng-click="vm.saveAgent()" class="send-button md-accent md-raised" ng-disabled="agentForm.$invalid || agentForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newAgent" ng-click="vm.addNewAgent()" class="send-button md-accent md-raised" ng-disabled="agentForm.$invalid" aria-label="ADD" translate="STAFF.ADD_AGENT" translate-attr-aria-label="STAFF.ADD_AGENT">\n                    ADD AGENT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newAgent" ng-click="vm.deleteAgent($event)" aria-label="DELETE" translate translate-attr-aria-label="STAFF.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="STAFF.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/agents/edit/changepassword/changepassword.html",'<md-dialog class="agent-dialog" aria-label="{{vm.name}}">\n    <form name="agentForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ \'STAFF.CHANGE_PASSWORD\' | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.NEW_PASSWORD">New Password</label>\n                <input type="password" name="password" ng-model="vm.password" placeholder="Password" translate translate-attr-placeholder="STAFF.NEW_PASSWORD" required>\n                <div ng-messages="agentForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="agentForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.savePassword()" class="send-button md-accent md-raised" ng-disabled="agentForm.$invalid || agentForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/agents/edit/queueadd/queueadd.html",'<md-dialog class="agent-dialog" aria-label="agent">\n    <form name="agentForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2>{{vm.title}}</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin" ng-if="vm.agent.role === \'agent\'">\n                <label translate="STAFF.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="agentForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/agents/edit/view.html",'<div id="staff-agent" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-agents-button md-icon-button" aria-label="Go to agents" ng-click="vm.gotoAgents()" translate translate-attr-aria-label="STAFF.GO_TO_AGENTS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.agent.userpic" class="agent-image" hide-xs>\n                    <img ng-src="api/users/{{vm.agent.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.agent.userpic" class="agent-image" hide-xs>\n                    <img ng-src="assets/images/business/agents.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.agent.id}} {{vm.agent.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="STAFF.CREATED_AT"></span> <span>{{vm.agent.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div ng-cloak ng-if="vm.agent.role !== \'admin\'">\n            <md-fab-speed-dial md-direction="left" class="md-scale md-fab">\n                <md-fab-trigger>\n                    <md-button aria-label="menu" class="md-fab md-primary md-icon-button">\n                        <md-tooltip md-direction="top" md-visible="false">Channels</md-tooltip>\n                        <md-icon md-font-icon="icon-stackoverflow" aria-label="queueadd"></md-icon>\n                    </md-button>\n                </md-fab-trigger>\n                <md-fab-actions>\n                    <md-button aria-label="voice" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'voice\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Voice</md-tooltip>\n                        <md-icon md-font-icon="icon-phone" aria-label="voice"></md-icon>\n                    </md-button>\n                    <md-button aria-label="chat" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'chat\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Chat</md-tooltip>\n                        <md-icon md-font-icon="icon-hangouts" aria-label="chat"></md-icon>\n                    </md-button>\n                    <md-button aria-label="mail" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'mail\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Mail</md-tooltip>\n                        <md-icon md-font-icon="icon-email" aria-label="mail"></md-icon>\n                    </md-button>\n                    <md-button aria-label="sms" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'sms\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Sms</md-tooltip>\n                        <md-icon md-font-icon="icon-message-text" aria-label="sms"></md-icon>\n                    </md-button>\n                    <md-button aria-label="openchannel" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'openchannel\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Openchannel</md-tooltip>\n                        <md-icon md-font-icon="icon-google-earth" aria-label="openchannel"></md-icon>\n                    </md-button>\n                    <md-button aria-label="fax" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.agent, \'fax\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Fax</md-tooltip>\n                        <md-icon md-font-icon="icon-deskphone" aria-label="fax"></md-icon>\n                    </md-button>\n                </md-fab-actions>\n            </md-fab-speed-dial>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.changepassworddialog(vm.agent, $event)" class="md-fab md-warn md-icon-button" aria-label="changepassword">\n                <md-tooltip><span translate="STAFF.CHANGEPASSWORD_AGENT"></span></md-tooltip>\n                <md-icon md-font-icon="icon-key-variant"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveAgent()" class="send-button md-accent md-raised" ng-disabled="(personal_infoForm.$invalid) || (change_avatarForm.$invalid) || (generalForm.$invalid) || (capacityForm.$invalid) || (settingsForm.$invalid) || (remote_controlForm.$invalid) || (sipForm.$invalid)"\n                translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="agent-detail-form-container personal_info md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.PERSONAL_INFO">PERSONAL_INFO</div>\n                        </div>\n                        <form name="personal_infoForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.FULLNAME">Fullname</label>\n                                <input type="text" name="fullname" ng-model="vm.agent.fullname" required autofocus>\n                                <div ng-messages="personal_infoForm.fullname.$error" ng-show="personal_infoForm.fullname.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.FULLNAME_REQUIRED">Fullname field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.USERNAME">Username</label>\n                                <input type="text" name="name" ng-model="vm.agent.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="true">\n                                <div ng-messages="personal_infoForm.name.$error" ng-show="personal_infoForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.agent.email" required>\n                                <div ng-messages="personal_infoForm.email.$error" ng-show="personal_infoForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.agent.description">\n                                <div ng-messages="personal_infoForm.description.$error" ng-show="personal_infoForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.loginInPause" aria-label="LoginInPause"><span translate="STAFF.LOGININPAUSE">LoginInPause</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="agent-detail-form-container change_avatar md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.CHANGE_AVATAR">CHANGE_AVATAR</div>\n                        </div>\n                        <div ng-controller="Agentchange_avatarController as vm_ca" ng-init="vm_ca.init(vm.agent)" class="agent-detail-form-container md-background-bg md-whiteframe-1dp">\n\n                            <div id="agent-image-uploader" flow-init="vm_ca.ngFlowOptions" flow-name="vm_ca.ngFlow.flow" flow-files-submitted="vm_ca.upload()" flow-file-added="vm_ca.fileAdded($file)" flow-file-success="vm_ca.fileSuccess($file, $message)" flow-complete="vm_ca.uploadComplete()"\n                                flow-drop flow-drag-enter="vm_ca.dropping=true" flow-drag-leave="vm_ca.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                                <div class="drop-text hint-text" layout="row" layout-align="center center">\n                                    <span translate="EC.DROP_TO_UPLOAD">Drop to upload</span>\n                                </div>\n\n                                <div class="upload-button" layout="column" layout-align="center center">\n                                    <md-button class="md-accent md-raised" flow-btn>\n                                        Upload\n                                    </md-button>\n                                    <span class="secondary-text mt-8">You can also drop images here to upload. Only PNG, JPG - Max. 8MB</span>\n                                </div>\n\n                                <div layout="row" layout-align="start start" layout-wrap>\n                                    <div ng-repeat="change_avatarimage in vm_ca.agent.images" ng-switch="change_avatarimage.type">\n                                        <div class="agent-image uploading" ng-switch-when="uploading" layout="row" layout-align="center center">\n                                            <div class="overlay" layout="column" layout-align="center center">\n                                                <md-progress-linear md-mode="determinate" value="{{change_avatarimage.file.progress() * 100}}">\n                                                </md-progress-linear>\n                                            </div>\n                                            <img class="media" flow-img="change_avatarimage.file">\n                                        </div>\n\n                                        <div class="agent-image" ng-switch-when="image" layout="row" layout-align="center center">\n                                            <img class="media" ng-src="{{change_avatarimage.url}}">\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.VOICE">VOICE</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="agent-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container ng-if="!vm.agent.autointernal" class="md-block">\n                                <label translate="STAFF.INTERNAL">Internal</label>\n                                <input type="text" name="internal" ng-model="vm.agent.internal" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.internal.$error" ng-show="generalForm.internal.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.TRANSPORT">Transport</label>\n                                <md-select ng-model="vm.agent.transport" multiple>\n                                    <md-option ng-value="\'udp\'">udp</md-option>\n                                    <md-option ng-value="\'tcp\'">tcp</md-option>\n                                    <md-option ng-value="\'ws\'">ws</md-option>\n                                    <md-option ng-value="\'wss\'">wss</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.TRANSPORT"></span></div>\n                                <div ng-messages="generalForm.transport.$error" ng-show="generalForm.transport.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.TRANSPORT_REQUIRED">Transport field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.HOST">Host</label>\n                                <input type="text" name="host" ng-model="vm.agent.host" required>\n                                <div class="hint"><span translate="STAFF.HELP.HOST"></span></div>\n                                <div ng-messages="generalForm.host.$error" ng-show="generalForm.host.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.HOST_REQUIRED">Host field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.NAT">NAT</label>\n                                <md-select ng-model="vm.agent.nat" required multiple>\n                                    <md-option ng-value="\'force_rport\'">force_rport</md-option>\n                                    <md-option ng-value="\'comedia\'">comedia</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'never\'">never</md-option>\n                                    <md-option ng-value="\'route\'">route</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.NAT"></span></div>\n                                <div ng-messages="generalForm.nat.$error" ng-show="generalForm.nat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.NAT_REQUIRED">NAT field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.TYPE">Type</label>\n                                <md-select ng-model="vm.agent.type">\n                                    <md-option ng-value="\'friend\'">Friend</md-option>\n                                    <md-option ng-value="\'user\'">User</md-option>\n                                    <md-option ng-value="\'peer\'">Peer</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.TYPE"></span></div>\n                                <div ng-messages="generalForm.type.$error" ng-show="generalForm.type.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ALLOWCODECS">AllowCodecs</label>\n                                <md-select ng-model="vm.agent.allow" required multiple>\n                                    <md-option ng-value="\'alaw\'">alaw</md-option>\n                                    <md-option ng-value="\'ulaw\'">ulaw</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                    <md-option ng-value="\'g729\'">g729</md-option>\n                                    <md-option ng-value="\'ilbc\'">ilbc</md-option>\n                                    <md-option ng-value="\'opus\'">opus</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.ALLOWCODECS"></span></div>\n                                <div ng-messages="generalForm.allow.$error" ng-show="generalForm.allow.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ALLOWCODECS_REQUIRED">AllowCodecs field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLERID">CallerId</label>\n                                <input type="text" name="callerid" ng-model="vm.agent.callerid">\n                                <div ng-messages="generalForm.callerid.$error" ng-show="generalForm.callerid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLERID_REQUIRED">CallerId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLGROUP">Callgroup</label>\n                                <input type="text" name="callgroup" ng-model="vm.agent.callgroup">\n                                <div class="hint"><span translate="STAFF.HELP.CALLGROUP"></span></div>\n                                <div ng-messages="generalForm.callgroup.$error" ng-show="generalForm.callgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLGROUP_REQUIRED">Callgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.PICKUPGROUP">Pickupgroup</label>\n                                <input type="text" name="pickupgroup" ng-model="vm.agent.pickupgroup">\n                                <div class="hint"><span translate="STAFF.HELP.PICKUPGROUP"></span></div>\n                                <div ng-messages="generalForm.pickupgroup.$error" ng-show="generalForm.pickupgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.PICKUPGROUP_REQUIRED">Pickupgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.chanspy" aria-label="chanSpy"><span translate="STAFF.CHANSPY">chanSpy</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.OTHER_CHANNELS">OTHER_CHANNELS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="agent-detail-form-container capacity md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.CAPACITY">CAPACITY</div>\n                        </div>\n                        <form name="capacityForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CHATCAPACITY">ChatCapacity</label>\n                                <input type="number" name="chatCapacity" ng-model="vm.agent.chatCapacity" min="0" required autofocus>\n                                <div class="hint"><span translate="STAFF.HELP.CHATCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.chatCapacity.$error" ng-show="capacityForm.chatCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CHATCAPACITY_REQUIRED">ChatCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.MAILCAPACITY">MailCapacity</label>\n                                <input type="number" name="mailCapacity" ng-model="vm.agent.mailCapacity" min="0" required>\n                                <div class="hint"><span translate="STAFF.HELP.MAILCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.mailCapacity.$error" ng-show="capacityForm.mailCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.MAILCAPACITY_REQUIRED">MailCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.FAXCAPACITY">FaxCapacity</label>\n                                <input type="number" name="faxCapacity" ng-model="vm.agent.faxCapacity" min="0" required>\n                                <div class="hint"><span translate="STAFF.HELP.FAXCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.faxCapacity.$error" ng-show="capacityForm.faxCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.FAXCAPACITY_REQUIRED">FaxCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.SMSCAPACITY">SMSCapacity</label>\n                                <input type="number" name="smsCapacity" ng-model="vm.agent.smsCapacity" min="0" required>\n                                <div class="hint"><span translate="STAFF.HELP.SMSCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.smsCapacity.$error" ng-show="capacityForm.smsCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.SMSCAPACITY_REQUIRED">SMSCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.OPENCHANNELCAPACITY">OpenchannelCapacity</label>\n                                <input type="number" name="openchannelCapacity" ng-model="vm.agent.openchannelCapacity" min="0" required>\n                                <div class="hint"><span translate="STAFF.HELP.OPENCHANNELCAPACITY"></span></div>\n                                <div ng-messages="capacityForm.openchannelCapacity.$error" ng-show="capacityForm.openchannelCapacity.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.OPENCHANNELCAPACITY_REQUIRED">OpenchannelCapacity field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.MOTIONBAR">MOTIONBAR</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="agent-detail-form-container settings md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.SETTINGS">SETTINGS</div>\n                        </div>\n                        <form name="settingsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarEnableSettings" aria-label="EnableSettings"><span translate="STAFF.ENABLESETTINGS">EnableSettings</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarAutoAnswer" aria-label="AutoAnswer"><span translate="STAFF.AUTOANSWER">AutoAnswer</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarRingInUse" aria-label="RingInUse"><span translate="STAFF.RINGINUSE">RingInUse</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarEnableRecording" aria-label="EnableRecording"><span translate="STAFF.ENABLERECORDING">EnableRecording</span></md-switch>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="agent-detail-form-container remote_control md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.REMOTE_CONTROL">REMOTE_CONTROL</div>\n                        </div>\n                        <form name="remote_controlForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.agent.phoneBarRemoteControl" aria-label="RemoteControl"><span translate="STAFF.REMOTECONTROL">RemoteControl</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.agent.phoneBarRemoteControl" class="md-block">\n                                <label translate="STAFF.REMOTECONTROLPORT">RemoteControlPort</label>\n                                <input type="number" name="phoneBarRemoteControlPort" ng-model="vm.agent.phoneBarRemoteControlPort" required>\n                                <div ng-messages="remote_controlForm.phoneBarRemoteControlPort.$error" ng-show="remote_controlForm.phoneBarRemoteControlPort.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.REMOTECONTROLPORT_REQUIRED">RemoteControlPort field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="agent-detail-form-container sip md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.SIP">SIP</div>\n                        </div>\n                        <form name="sipForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.SIPEXPIRES">SipExpires</label>\n                                <input type="number" name="phoneBarExpires" ng-model="vm.agent.phoneBarExpires" required autofocus>\n                                <div class="hint"><span translate="STAFF.HELP.SIPEXPIRES"></span></div>\n                                <div ng-messages="sipForm.phoneBarExpires.$error" ng-show="sipForm.phoneBarExpires.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.SIPEXPIRES_REQUIRED">SipExpires field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.SIPPORT">SipPort</label>\n                                <input type="number" name="phoneBarListenPort" ng-model="vm.agent.phoneBarListenPort" required>\n                                <div class="hint"><span translate="STAFF.HELP.SIPPORT"></span></div>\n                                <div ng-messages="sipForm.phoneBarListenPort.$error" ng-show="sipForm.phoneBarListenPort.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.SIPPORT_REQUIRED">SipPort field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/staff/views/teams/create/dialog.html",'<md-dialog class="team-dialog" aria-label="New Team">\n    <form name="teamForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.team.name" required autofocus>\n                <div ng-messages="teamForm.name.$error" ng-show="teamForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.team.description">\n                <div ng-messages="teamForm.description.$error" ng-show="teamForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTeam" ng-click="vm.saveTeam()" class="send-button md-accent md-raised" ng-disabled="teamForm.$invalid || teamForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTeam" ng-click="vm.addNewTeam()" class="send-button md-accent md-raised" ng-disabled="teamForm.$invalid" aria-label="ADD" translate="STAFF.ADD_TEAM" translate-attr-aria-label="STAFF.ADD_TEAM">\n                    ADD TEAM\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTeam" ng-click="vm.deleteTeam($event)" aria-label="DELETE" translate translate-attr-aria-label="STAFF.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="STAFF.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/teams/edit/agentadd/agentadd.html",'<md-dialog class="team-dialog" aria-label="team">\n    <form name="teamForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="STAFF.AGENTADD_TEAM">Add Agent to team</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/teams/teams.html",'<div id="teams" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-multiple" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="STAFF.TEAMS">Teams</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="STAFF.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTeams.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTeams =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="STAFF.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-teams-count">\n                    <span>{{vm.selectedTeams.length}}</span>\n                <span translate="STAFF.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TEAMS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTeams()" translate="STAFF.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTeams()" translate="STAFF.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTeams" filename="teams.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTeams($event)" aria-label="delete selected" translate translate-attr-label="TEAMS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TEAM TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTeams" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTeams">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'STAFF.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'STAFF.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'STAFF.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.teams.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="STAFF.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="team" md-select-id="id" ng-repeat="team in vm.teams.rows">\n                                <td md-cell ng-if="team.userpic"><img class="avatar" alt="{{team.name}}" ng-src="api/users/{{team.id}}/avatar" /></td>\n                                <td md-cell ng-if="!team.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{team.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTeam($event, team)" md-cell class="id ">{{team.id}}</td>\n                                <td ng-click="vm.createOrEditTeam($event, team)" md-cell class="name ">{{team.name}}</td>\n                                <td ng-click="vm.createOrEditTeam($event, team)" md-cell class="description ">{{team.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(team, $event)" translate="STAFF.EDIT_TEAM">\n                                                    Edit Team\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.agentadddialog(team, $event)" translate="STAFF.AGENTADD_TEAM">\n                                                    AgentAdd Team\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(team, $event)" translate="STAFF.DELETE_TEAM">\n                                                    Delete Team\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.teams.count}}" md-on-paginate="vm.getTeams" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TEAM TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TEAM BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-team-button" ng-click="vm.createOrEditTeam($event)" aria-label="add team" translate translate-attr-aria-label="STAFF.ADD_TEAM">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TEAM BUTTON --\x3e\n</div>'),e.put("app/main/apps/staff/views/telephones/create/dialog.html",'<md-dialog class="telephone-dialog" aria-label="New Telephone">\n    <form name="telephoneForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.ACCOUNTNAME">Accountname</label>\n                <input type="text" name="fullname" ng-model="vm.telephone.fullname" required autofocus>\n                <div ng-messages="telephoneForm.fullname.$error" ng-show="telephoneForm.fullname.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.ACCOUNTNAME_REQUIRED">Accountname field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.USERNAME">Username</label>\n                <input type="text" name="name" ng-model="vm.telephone.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="!vm.newTelephone">\n                <div ng-messages="telephoneForm.name.$error" ng-show="telephoneForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.telephone.email" required>\n                <div ng-messages="telephoneForm.email.$error" ng-show="telephoneForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newTelephone">\n                <label translate="STAFF.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.telephone.password" placeholder="Password" translate translate-attr-placeholder="STAFF.PASSWORD" required>\n                <div ng-messages="telephoneForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newTelephone  && vm.newTelephone">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="telephoneForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.telephone.description">\n                <div ng-messages="telephoneForm.description.$error" ng-show="telephoneForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newTelephone" class="md-block">\n                <md-switch ng-model="vm.telephone.autointernal" aria-label="AutoInternal"><span translate="STAFF.AUTOINTERNAL">AutoInternal</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="!vm.telephone.autointernal" class="md-block">\n                <label translate="STAFF.INTERNAL">Internal</label>\n                <input type="text" name="internal" ng-model="vm.telephone.internal" required ng-disabled="!vm.newTelephone">\n                <div ng-messages="telephoneForm.internal.$error" ng-show="telephoneForm.internal.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newTelephone" class="md-block">\n                <md-switch ng-model="vm.telephone.voicemail" aria-label="Voicemail"><span translate="STAFF.VOICEMAIL">Voicemail</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTelephone" ng-click="vm.saveTelephone()" class="send-button md-accent md-raised" ng-disabled="telephoneForm.$invalid || telephoneForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTelephone" ng-click="vm.addNewTelephone()" class="send-button md-accent md-raised" ng-disabled="telephoneForm.$invalid" aria-label="ADD" translate="STAFF.ADD_TELEPHONE" translate-attr-aria-label="STAFF.ADD_TELEPHONE">\n                    ADD TELEPHONE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTelephone" ng-click="vm.deleteTelephone($event)" aria-label="DELETE" translate translate-attr-aria-label="STAFF.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="STAFF.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/telephones/edit/changepassword/changepassword.html",'<md-dialog class="telephone-dialog" aria-label="{{vm.name}}">\n    <form name="telephoneForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ \'STAFF.CHANGE_PASSWORD\' | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.NEW_PASSWORD">New Password</label>\n                <input type="password" name="password" ng-model="vm.password" placeholder="Password" translate translate-attr-placeholder="STAFF.NEW_PASSWORD" required>\n                <div ng-messages="telephoneForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="telephoneForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.savePassword()" class="send-button md-accent md-raised" ng-disabled="telephoneForm.$invalid || telephoneForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/telephones/edit/view.html",'<div id="staff-telephone" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-telephones-button md-icon-button" aria-label="Go to telephones" ng-click="vm.gotoTelephones()" translate translate-attr-aria-label="STAFF.GO_TO_TELEPHONES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.telephone.userpic" class="telephone-image" hide-xs>\n                    <img ng-src="api/users/{{vm.telephone.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.telephone.userpic" class="telephone-image" hide-xs>\n                    <img ng-src="assets/images/business/telephones.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.telephone.id}} {{vm.telephone.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="STAFF.CREATED_AT"></span> <span>{{vm.telephone.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.changepassworddialog(vm.telephone, $event)" class="md-fab md-warn md-icon-button" aria-label="changepassword">\n                <md-tooltip><span translate="STAFF.CHANGEPASSWORD_TELEPHONE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-key-variant"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveTelephone()" class="send-button md-accent md-raised" ng-disabled="(accountForm.$invalid) || (generalForm.$invalid)" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="telephone-detail-form-container account md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.ACCOUNT">ACCOUNT</div>\n                        </div>\n                        <form name="accountForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ACCOUNTNAME">Accountname</label>\n                                <input type="text" name="fullname" ng-model="vm.telephone.fullname" required autofocus>\n                                <div ng-messages="accountForm.fullname.$error" ng-show="accountForm.fullname.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ACCOUNTNAME_REQUIRED">Accountname field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.USERNAME">Username</label>\n                                <input type="text" name="name" ng-model="vm.telephone.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="true">\n                                <div ng-messages="accountForm.name.$error" ng-show="accountForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.telephone.email" required>\n                                <div ng-messages="accountForm.email.$error" ng-show="accountForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.telephone.description">\n                                <div ng-messages="accountForm.description.$error" ng-show="accountForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.VOICE">VOICE</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="telephone-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container ng-if="!vm.telephone.autointernal" class="md-block">\n                                <label translate="STAFF.INTERNAL">Internal</label>\n                                <input type="text" name="internal" ng-model="vm.telephone.internal" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.internal.$error" ng-show="generalForm.internal.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.TRANSPORT">Transport</label>\n                                <md-select ng-model="vm.telephone.transport" required multiple>\n                                    <md-option ng-value="\'udp\'">udp</md-option>\n                                    <md-option ng-value="\'tcp\'">tcp</md-option>\n                                    <md-option ng-value="\'ws\'">ws</md-option>\n                                    <md-option ng-value="\'wss\'">wss</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.TRANSPORT"></span></div>\n                                <div ng-messages="generalForm.transport.$error" ng-show="generalForm.transport.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.TRANSPORT_REQUIRED">Transport field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.NAT">NAT</label>\n                                <md-select ng-model="vm.telephone.nat" required multiple>\n                                    <md-option ng-value="\'force_rport\'">force_rport</md-option>\n                                    <md-option ng-value="\'comedia\'">comedia</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'never\'">never</md-option>\n                                    <md-option ng-value="\'route\'">route</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.NAT"></span></div>\n                                <div ng-messages="generalForm.nat.$error" ng-show="generalForm.nat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.NAT_REQUIRED">NAT field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ALLOWCODECS">AllowCodecs</label>\n                                <md-select ng-model="vm.telephone.allow" required multiple>\n                                    <md-option ng-value="\'alaw\'">alaw</md-option>\n                                    <md-option ng-value="\'ulaw\'">ulaw</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                    <md-option ng-value="\'g729\'">g729</md-option>\n                                    <md-option ng-value="\'ilbc\'">ilbc</md-option>\n                                    <md-option ng-value="\'opus\'">opus</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.ALLOWCODECS"></span></div>\n                                <div ng-messages="generalForm.allow.$error" ng-show="generalForm.allow.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ALLOWCODECS_REQUIRED">AllowCodecs field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLERID">CallerId</label>\n                                <input type="text" name="callerid" ng-model="vm.telephone.callerid">\n                                <div ng-messages="generalForm.callerid.$error" ng-show="generalForm.callerid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLERID_REQUIRED">CallerId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLGROUP">Callgroup</label>\n                                <input type="text" name="callgroup" ng-model="vm.telephone.callgroup">\n                                <div class="hint"><span translate="STAFF.HELP.CALLGROUP"></span></div>\n                                <div ng-messages="generalForm.callgroup.$error" ng-show="generalForm.callgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLGROUP_REQUIRED">Callgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.PICKUPGROUP">Pickupgroup</label>\n                                <input type="text" name="pickupgroup" ng-model="vm.telephone.pickupgroup">\n                                <div class="hint"><span translate="STAFF.HELP.PICKUPGROUP"></span></div>\n                                <div ng-messages="generalForm.pickupgroup.$error" ng-show="generalForm.pickupgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.PICKUPGROUP_REQUIRED">Pickupgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/staff/views/telephones/telephones.html",'<div id="telephones" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-multiple" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="STAFF.TELEPHONES">Telephones</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="STAFF.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTelephones.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTelephones =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="STAFF.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-telephones-count">\n                    <span>{{vm.selectedTelephones.length}}</span>\n                <span translate="STAFF.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TELEPHONES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTelephones()" translate="STAFF.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTelephones()" translate="STAFF.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTelephones" filename="telephones.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTelephones($event)" aria-label="delete selected" translate translate-attr-label="TELEPHONES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TELEPHONE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTelephones" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTelephones">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="fullname">{{ \'STAFF.ACCOUNTNAME\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'STAFF.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="email">{{ \'STAFF.EMAIL\' | translate }}</th>\n                                <th md-column md-order-by="internal">{{ \'STAFF.INTERNAL\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.telephones.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="STAFF.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="telephone" md-select-id="id" ng-repeat="telephone in vm.telephones.rows">\n                                <td md-cell ng-if="telephone.userpic"><img class="avatar" alt="{{telephone.name}}" ng-src="api/users/{{telephone.id}}/avatar" /></td>\n                                <td md-cell ng-if="!telephone.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{telephone.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTelephone($event, telephone)" md-cell class="fullname font-weight-600">{{telephone.fullname}}</td>\n                                <td ng-click="vm.createOrEditTelephone($event, telephone)" md-cell class="name ">{{telephone.name}}</td>\n                                <td ng-click="vm.createOrEditTelephone($event, telephone)" md-cell class="email ">{{telephone.email}}</td>\n                                <td ng-click="vm.createOrEditTelephone($event, telephone)" md-cell class="internal ">{{telephone.internal}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(telephone, $event)" translate="STAFF.EDIT_TELEPHONE">\n                                                    Edit Telephone\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(telephone, $event)" translate="STAFF.DELETE_TELEPHONE">\n                                                    Delete Telephone\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.telephones.count}}" md-on-paginate="vm.getTelephones" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TELEPHONE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TELEPHONE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-telephone-button" ng-click="vm.createOrEditTelephone($event)" aria-label="add telephone" translate translate-attr-aria-label="STAFF.ADD_TELEPHONE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TELEPHONE BUTTON --\x3e\n</div>'),e.put("app/main/apps/staff/views/users/create/dialog.html",'<md-dialog class="user-dialog" aria-label="New User">\n    <form name="userForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.ROLE">Role</label>\n                <md-select ng-model="vm.user.role" required autofocus ng-disabled="!vm.newUser">\n                    <md-option ng-value="\'admin\'">Admin</md-option>\n                    <md-option ng-value="\'user\'">User</md-option>\n                </md-select>\n                <div ng-messages="userForm.role.$error" ng-show="userForm.role.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.ROLE_REQUIRED">Role field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.FULLNAME">Fullname</label>\n                <input type="text" name="fullname" ng-model="vm.user.fullname" required>\n                <div ng-messages="userForm.fullname.$error" ng-show="userForm.fullname.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.FULLNAME_REQUIRED">Fullname field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.USERNAME">Username</label>\n                <input type="text" name="name" ng-model="vm.user.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="!vm.newUser">\n                <div ng-messages="userForm.name.$error" ng-show="userForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.user.email" required>\n                <div ng-messages="userForm.email.$error" ng-show="userForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newUser">\n                <label translate="STAFF.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.user.password" placeholder="Password" translate translate-attr-placeholder="STAFF.PASSWORD" required>\n                <div ng-messages="userForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newUser  && vm.newUser">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="userForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.user.description">\n                <div ng-messages="userForm.description.$error" ng-show="userForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newUser" class="md-block">\n                <md-switch ng-model="vm.user.autointernal" aria-label="AutoInternal"><span translate="STAFF.AUTOINTERNAL">AutoInternal</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="!vm.user.autointernal" class="md-block">\n                <label translate="STAFF.INTERNAL">Internal</label>\n                <input type="text" name="internal" ng-model="vm.user.internal" required ng-disabled="!vm.newUser">\n                <div ng-messages="userForm.internal.$error" ng-show="userForm.internal.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.newUser" class="md-block">\n                <md-switch ng-model="vm.user.voicemail" aria-label="Voicemail"><span translate="STAFF.VOICEMAIL">Voicemail</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newUser" ng-click="vm.saveUser()" class="send-button md-accent md-raised" ng-disabled="userForm.$invalid || userForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newUser" ng-click="vm.addNewUser()" class="send-button md-accent md-raised" ng-disabled="userForm.$invalid" aria-label="ADD" translate="STAFF.ADD_USER" translate-attr-aria-label="STAFF.ADD_USER">\n                    ADD USER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newUser" ng-click="vm.deleteUser($event)" aria-label="DELETE" translate translate-attr-aria-label="STAFF.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="STAFF.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/users/edit/changepassword/changepassword.html",'<md-dialog class="user-dialog" aria-label="{{vm.name}}">\n    <form name="userForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ \'STAFF.CHANGE_PASSWORD\' | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="STAFF.NEW_PASSWORD">New Password</label>\n                <input type="password" name="password" ng-model="vm.password" placeholder="Password" translate translate-attr-placeholder="STAFF.NEW_PASSWORD" required>\n                <div ng-messages="userForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="STAFF.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="userForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="STAFF.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="STAFF.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.savePassword()" class="send-button md-accent md-raised" ng-disabled="userForm.$invalid || userForm.$pristine" aria-label="SAVE" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/users/edit/queueadd/queueadd.html",'<md-dialog class="user-dialog" aria-label="user">\n    <form name="userForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2>{{vm.title}}</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin" ng-if="vm.user.role === \'agent\'">\n                <label translate="STAFF.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="userForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/staff/views/users/edit/view.html",'<div id="staff-user" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-users-button md-icon-button" aria-label="Go to users" ng-click="vm.gotoUsers()" translate translate-attr-aria-label="STAFF.GO_TO_USERS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.user.userpic" class="user-image" hide-xs>\n                    <img ng-src="api/users/{{vm.user.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.user.userpic" class="user-image" hide-xs>\n                    <img ng-src="assets/images/business/users.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.user.id}} {{vm.user.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="STAFF.CREATED_AT"></span> <span>{{vm.user.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div ng-cloak ng-if="vm.user.role !== \'admin\'">\n            <md-fab-speed-dial md-direction="left" class="md-scale md-fab">\n                <md-fab-trigger>\n                    <md-button aria-label="menu" class="md-fab md-primary md-icon-button">\n                        <md-tooltip md-direction="top" md-visible="false">Channels</md-tooltip>\n                        <md-icon md-font-icon="icon-eye" aria-label="queueadd"></md-icon>\n                    </md-button>\n                </md-fab-trigger>\n                <md-fab-actions>\n                    <md-button aria-label="voice" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'voice\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Voice</md-tooltip>\n                        <md-icon md-font-icon="icon-phone" aria-label="voice"></md-icon>\n                    </md-button>\n                    <md-button aria-label="chat" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'chat\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Chat</md-tooltip>\n                        <md-icon md-font-icon="icon-hangouts" aria-label="chat"></md-icon>\n                    </md-button>\n                    <md-button aria-label="mail" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'mail\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Mail</md-tooltip>\n                        <md-icon md-font-icon="icon-email" aria-label="mail"></md-icon>\n                    </md-button>\n                    <md-button aria-label="sms" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'sms\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Sms</md-tooltip>\n                        <md-icon md-font-icon="icon-message-text" aria-label="sms"></md-icon>\n                    </md-button>\n                    <md-button aria-label="openchannel" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'openchannel\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Openchannel</md-tooltip>\n                        <md-icon md-font-icon="icon-google-earth" aria-label="openchannel"></md-icon>\n                    </md-button>\n                    <md-button aria-label="fax" class="md-fab md-raised md-icon-button md-mini" ng-click="vm.queueaddchannel(vm.user, \'fax\', $event)">\n                        <md-tooltip md-direction="bottom" md-visible="false">Fax</md-tooltip>\n                        <md-icon md-font-icon="icon-deskphone" aria-label="fax"></md-icon>\n                    </md-button>\n                </md-fab-actions>\n            </md-fab-speed-dial>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.changepassworddialog(vm.user, $event)" class="md-fab md-warn md-icon-button" aria-label="changepassword">\n                <md-tooltip><span translate="STAFF.CHANGEPASSWORD_USER"></span></md-tooltip>\n                <md-icon md-font-icon="icon-key-variant"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveUser()" class="send-button md-accent md-raised" ng-disabled="(personal_infoForm.$invalid) || (change_avatarForm.$invalid) || (generalForm.$invalid) || (permissionsForm.$invalid)" translate="STAFF.SAVE" translate-attr-aria-label="STAFF.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.ACCOUNT">ACCOUNT</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="user-detail-form-container personal_info md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.PERSONAL_INFO">PERSONAL_INFO</div>\n                        </div>\n                        <form name="personal_infoForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ROLE">Role</label>\n                                <md-select ng-model="vm.user.role" required autofocus ng-disabled="true">\n                                    <md-option ng-value="\'admin\'">Admin</md-option>\n                                    <md-option ng-value="\'user\'">User</md-option>\n                                </md-select>\n                                <div ng-messages="personal_infoForm.role.$error" ng-show="personal_infoForm.role.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ROLE_REQUIRED">Role field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.FULLNAME">Fullname</label>\n                                <input type="text" name="fullname" ng-model="vm.user.fullname" required>\n                                <div ng-messages="personal_infoForm.fullname.$error" ng-show="personal_infoForm.fullname.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.FULLNAME_REQUIRED">Fullname field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.USERNAME">Username</label>\n                                <input type="text" name="name" ng-model="vm.user.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required ng-disabled="true">\n                                <div ng-messages="personal_infoForm.name.$error" ng-show="personal_infoForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.USERNAME_REQUIRED">Username field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="STAFF.ERRORS.USERNAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Username must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.user.email" required>\n                                <div ng-messages="personal_infoForm.email.$error" ng-show="personal_infoForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="STAFF.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.user.description">\n                                <div ng-messages="personal_infoForm.description.$error" ng-show="personal_infoForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="user-detail-form-container change_avatar md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.CHANGE_AVATAR">CHANGE_AVATAR</div>\n                        </div>\n                        <div ng-controller="Userchange_avatarController as vm_ca" ng-init="vm_ca.init(vm.user)" class="user-detail-form-container md-background-bg md-whiteframe-1dp">\n\n                            <div id="user-image-uploader" flow-init="vm_ca.ngFlowOptions" flow-name="vm_ca.ngFlow.flow" flow-files-submitted="vm_ca.upload()" flow-file-added="vm_ca.fileAdded($file)" flow-file-success="vm_ca.fileSuccess($file, $message)" flow-complete="vm_ca.uploadComplete()"\n                                flow-drop flow-drag-enter="vm_ca.dropping=true" flow-drag-leave="vm_ca.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                                <div class="drop-text hint-text" layout="row" layout-align="center center">\n                                    <span translate="EC.DROP_TO_UPLOAD">Drop to upload</span>\n                                </div>\n\n                                <div class="upload-button" layout="column" layout-align="center center">\n                                    <md-button class="md-accent md-raised" flow-btn>\n                                        Upload\n                                    </md-button>\n                                    <span class="secondary-text mt-8">You can also drop images here to upload. Only PNG, JPG - Max. 8MB</span>\n                                </div>\n\n                                <div layout="row" layout-align="start start" layout-wrap>\n                                    <div ng-repeat="change_avatarimage in vm_ca.user.images" ng-switch="change_avatarimage.type">\n                                        <div class="user-image uploading" ng-switch-when="uploading" layout="row" layout-align="center center">\n                                            <div class="overlay" layout="column" layout-align="center center">\n                                                <md-progress-linear md-mode="determinate" value="{{change_avatarimage.file.progress() * 100}}">\n                                                </md-progress-linear>\n                                            </div>\n                                            <img class="media" flow-img="change_avatarimage.file">\n                                        </div>\n\n                                        <div class="user-image" ng-switch-when="image" layout="row" layout-align="center center">\n                                            <img class="media" ng-src="{{change_avatarimage.url}}">\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.VOICE">VOICE</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="user-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container ng-if="!vm.user.autointernal" class="md-block">\n                                <label translate="STAFF.INTERNAL">Internal</label>\n                                <input type="text" name="internal" ng-model="vm.user.internal" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.internal.$error" ng-show="generalForm.internal.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.INTERNAL_REQUIRED">Internal field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.TRANSPORT">Transport</label>\n                                <md-select ng-model="vm.user.transport" required multiple>\n                                    <md-option ng-value="\'udp\'">udp</md-option>\n                                    <md-option ng-value="\'tcp\'">tcp</md-option>\n                                    <md-option ng-value="\'ws\'">ws</md-option>\n                                    <md-option ng-value="\'wss\'">wss</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.transport.$error" ng-show="generalForm.transport.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.TRANSPORT_REQUIRED">Transport field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.NAT">NAT</label>\n                                <md-select ng-model="vm.user.nat" required multiple>\n                                    <md-option ng-value="\'force_rport\'">force_rport</md-option>\n                                    <md-option ng-value="\'comedia\'">comedia</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'never\'">never</md-option>\n                                    <md-option ng-value="\'route\'">route</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.NAT"></span></div>\n                                <div ng-messages="generalForm.nat.$error" ng-show="generalForm.nat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.NAT_REQUIRED">NAT field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.ALLOWCODECS">AllowCodecs</label>\n                                <md-select ng-model="vm.user.allow" required multiple>\n                                    <md-option ng-value="\'alaw\'">alaw</md-option>\n                                    <md-option ng-value="\'ulaw\'">ulaw</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                    <md-option ng-value="\'g729\'">g729</md-option>\n                                    <md-option ng-value="\'ilbc\'">ilbc</md-option>\n                                    <md-option ng-value="\'opus\'">opus</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="STAFF.HELP.ALLOWCODECS"></span></div>\n                                <div ng-messages="generalForm.allow.$error" ng-show="generalForm.allow.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.ALLOWCODECS_REQUIRED">AllowCodecs field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLERID">CallerId</label>\n                                <input type="text" name="callerid" ng-model="vm.user.callerid">\n                                <div ng-messages="generalForm.callerid.$error" ng-show="generalForm.callerid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLERID_REQUIRED">CallerId field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.CALLGROUP">Callgroup</label>\n                                <input type="text" name="callgroup" ng-model="vm.user.callgroup">\n                                <div class="hint"><span translate="STAFF.HELP.CALLGROUP"></span></div>\n                                <div ng-messages="generalForm.callgroup.$error" ng-show="generalForm.callgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.CALLGROUP_REQUIRED">Callgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="STAFF.PICKUPGROUP">Pickupgroup</label>\n                                <input type="text" name="pickupgroup" ng-model="vm.user.pickupgroup">\n                                <div class="hint"><span translate="STAFF.HELP.PICKUPGROUP"></span></div>\n                                <div ng-messages="generalForm.pickupgroup.$error" ng-show="generalForm.pickupgroup.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="STAFF.ERRORS.PICKUPGROUP_REQUIRED">Pickupgroup field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="STAFF.PERMISSIONS">PERMISSIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="user-detail-form-container permissions md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="STAFF.PERMISSIONS">PERMISSIONS</div>\n                        </div>\n                        <div ng-controller="UserPermissionsController as vm_pc" ng-init="vm_pc.init(vm.user)" class="user-detail-form-container">\n                            <md-list ng-repeat="father in vm_pc.navigation[0].children" ng-include="\'permission-nested.html\'" ng-if="vm_pc.user.role !== \'admin\'"></md-list>\n\n                            \x3c!-- Nested navigation template --\x3e\n                            <script type="text/ng-template" id="permission-nested.html">\n                                <md-list-item>\n                                    <md-icon md-font-icon="{{father.icon}}"></md-icon>\n                                    <p translate="{{father.translate}}">{{ father.title }}</p>\n                                    <md-switch class="md-secondary" ng-model="father.enabled" ng-change="vm_pc.onChange(father)" ng-init="father.enabled = vm_pc.user.permissions.includes(father.id)"></md-switch>\n                                </md-list-item>\n\n                                <md-divider></md-divider>\n\n                                <md-list>\n                                    <md-list-item ng-repeat="child in father.children">\n                                        <md-switch class="md-secondary" ng-model="child.enabled" ng-change="vm_pc.onChange(father, child)" ng-init="child.enabled = vm_pc.user.permissions.includes(child.id)"></md-switch>\n                                        <p translate="{{child.translate}}">{{ child.title }}</p>\n                                    </md-list-item>\n                                </md-list>\n                            <\/script>\n                            \x3c!-- / Nested navigation template --\x3e\n\n                            <span ng-if="vm_pc.user.role === \'admin\'" class="md-headline" translate="STAFF.ALL_MODULES_AVAILABLE">All modules are already available.</span>\n\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/staff/views/users/users.html",'<div id="users" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-account-multiple" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="STAFF.USERS">Users</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="STAFF.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedUsers.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedUsers =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="STAFF.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-users-count">\n                    <span>{{vm.selectedUsers.length}}</span>\n                <span translate="STAFF.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="USERS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllUsers()" translate="STAFF.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectUsers()" translate="STAFF.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedUsers" filename="users.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedUsers($event)" aria-label="delete selected" translate translate-attr-label="USERS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- USER TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedUsers" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getUsers">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="role">{{ \'STAFF.ROLE\' | translate }}</th>\n                                <th md-column md-order-by="fullname">{{ \'STAFF.FULLNAME\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'STAFF.USERNAME\' | translate }}</th>\n                                <th md-column md-order-by="email">{{ \'STAFF.EMAIL\' | translate }}</th>\n                                <th md-column md-order-by="internal">{{ \'STAFF.INTERNAL\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.users.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="STAFF.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="user" md-select-id="id" ng-repeat="user in vm.users.rows">\n                                <td md-cell ng-if="user.userpic"><img class="avatar" alt="{{user.name}}" ng-src="api/users/{{user.id}}/avatar" /></td>\n                                <td md-cell ng-if="!user.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{user.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="role ">{{ vm.arrayrole[user.role].option }}</td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="fullname font-weight-600">{{user.fullname}}</td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="name ">{{user.name}}</td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="email ">{{user.email}}</td>\n                                <td ng-click="vm.createOrEditUser($event, user)" md-cell class="internal ">{{user.internal}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(user, $event)" translate="STAFF.EDIT_USER">\n                                                    Edit User\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(user, $event)" translate="STAFF.DELETE_USER">\n                                                    Delete User\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.users.count}}" md-on-paginate="vm.getUsers" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / USER TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD USER BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-user-button" ng-click="vm.createOrEditUser($event)" aria-label="add user" translate translate-attr-aria-label="STAFF.ADD_USER">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD USER BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/cannedAnswers/cannedAnswers.html",'<div id="cannedAnswers" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.CANNEDANSWERS">CannedAnswers</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedCannedAnswers.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedCannedAnswers =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-cannedAnswers-count">\n                    <span>{{vm.selectedCannedAnswers.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CANNEDANSWERS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllCannedAnswers()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectCannedAnswers()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedCannedAnswers" filename="cannedAnswers.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedCannedAnswers($event)" aria-label="delete selected" translate translate-attr-label="CANNEDANSWERS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CANNEDANSWER TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedCannedAnswers" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getCannedAnswers">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="key">{{ \'TOOLS.KEY\' | translate }}</th>\n                                <th md-column md-order-by="value">{{ \'TOOLS.VALUE\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.cannedAnswers.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="cannedAnswer" md-select-id="id" ng-repeat="cannedAnswer in vm.cannedAnswers.rows">\n                                <td md-cell ng-if="cannedAnswer.userpic"><img class="avatar" alt="{{cannedAnswer.name}}" ng-src="api/users/{{cannedAnswer.id}}/avatar" /></td>\n                                <td md-cell ng-if="!cannedAnswer.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{cannedAnswer.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditCannedAnswer($event, cannedAnswer)" md-cell class="id ">{{cannedAnswer.id}}</td>\n                                <td ng-click="vm.createOrEditCannedAnswer($event, cannedAnswer)" md-cell class="key ">{{cannedAnswer.key}}</td>\n                                <td ng-click="vm.createOrEditCannedAnswer($event, cannedAnswer)" md-cell class="value ">{{cannedAnswer.value}}</td>\n                                <td ng-click="vm.createOrEditCannedAnswer($event, cannedAnswer)" md-cell class="description ">{{cannedAnswer.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(cannedAnswer, $event)" translate="TOOLS.EDIT_CANNEDANSWER">\n                                                    Edit CannedAnswer\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(cannedAnswer, $event)" translate="TOOLS.DELETE_CANNEDANSWER">\n                                                    Delete CannedAnswer\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.cannedAnswers.count}}" md-on-paginate="vm.getCannedAnswers" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CANNEDANSWER TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CANNEDANSWER BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-cannedAnswer-button" ng-click="vm.createOrEditCannedAnswer($event)" aria-label="add cannedAnswer" translate translate-attr-aria-label="TOOLS.ADD_CANNEDANSWER">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CANNEDANSWER BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/cannedAnswers/create/dialog.html",'<md-dialog class="cannedAnswer-dialog" aria-label="New CannedAnswer">\n    <form name="cannedAnswerForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.KEY">Key</label>\n                <input type="text" name="key" ng-model="vm.cannedAnswer.key" required autofocus>\n                <div ng-messages="cannedAnswerForm.key.$error" ng-show="cannedAnswerForm.key.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.KEY_REQUIRED">Key field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.VALUE">Value</label>\n                <textarea ng-model="vm.cannedAnswer.value" md-maxlength="150" max-rows="5" required></textarea>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.cannedAnswer.description">\n                <div ng-messages="cannedAnswerForm.description.$error" ng-show="cannedAnswerForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCannedAnswer" ng-click="vm.saveCannedAnswer()" class="send-button md-accent md-raised" ng-disabled="cannedAnswerForm.$invalid || cannedAnswerForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCannedAnswer" ng-click="vm.addNewCannedAnswer()" class="send-button md-accent md-raised" ng-disabled="cannedAnswerForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_CANNEDANSWER" translate-attr-aria-label="TOOLS.ADD_CANNEDANSWER">\n                    ADD CANNEDANSWER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCannedAnswer" ng-click="vm.deleteCannedAnswer($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/customDashboards/create/dialog.html",'<md-dialog class="customDashboard-dialog" aria-label="New CustomDashboard">\n    <form name="customDashboardForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.customDashboard.name" required autofocus>\n                <div ng-messages="customDashboardForm.name.$error" ng-show="customDashboardForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.POLLING_INTERVAL">Polling_Interval</label>\n                <input type="number" name="interval" ng-model="vm.customDashboard.interval" min="5" required>\n                <div ng-messages="customDashboardForm.interval.$error" ng-show="customDashboardForm.interval.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.POLLING_INTERVAL_REQUIRED">Polling_Interval field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.customDashboard.description">\n                <div ng-messages="customDashboardForm.description.$error" ng-show="customDashboardForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newCustomDashboard" ng-click="vm.saveCustomDashboard()" class="send-button md-accent md-raised" ng-disabled="customDashboardForm.$invalid || customDashboardForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newCustomDashboard" ng-click="vm.addNewCustomDashboard()" class="send-button md-accent md-raised" ng-disabled="customDashboardForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_CUSTOMDASHBOARD" translate-attr-aria-label="TOOLS.ADD_CUSTOMDASHBOARD">\n                    ADD CUSTOMDASHBOARD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newCustomDashboard" ng-click="vm.deleteCustomDashboard($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/customDashboards/customDashboards.html",'<div id="customDashboards" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.CUSTOMDASHBOARDS">CustomDashboards</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedCustomDashboards.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedCustomDashboards =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-customDashboards-count">\n                    <span>{{vm.selectedCustomDashboards.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CUSTOMDASHBOARDS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllCustomDashboards()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectCustomDashboards()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedCustomDashboards" filename="customDashboards.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedCustomDashboards($event)" aria-label="delete selected" translate translate-attr-label="CUSTOMDASHBOARDS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CUSTOMDASHBOARD TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedCustomDashboards" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getCustomDashboards">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="interval">{{ \'TOOLS.POLLING_INTERVAL\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.customDashboards.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="customDashboard" md-select-id="id" ng-repeat="customDashboard in vm.customDashboards.rows">\n                                <td md-cell ng-if="customDashboard.userpic"><img class="avatar" alt="{{customDashboard.name}}" ng-src="api/users/{{customDashboard.id}}/avatar" /></td>\n                                <td md-cell ng-if="!customDashboard.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{customDashboard.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditCustomDashboard($event, customDashboard)" md-cell class="id ">{{customDashboard.id}}</td>\n                                <td ng-click="vm.createOrEditCustomDashboard($event, customDashboard)" md-cell class="name ">{{customDashboard.name}}</td>\n                                <td ng-click="vm.createOrEditCustomDashboard($event, customDashboard)" md-cell class="interval ">{{customDashboard.interval}}</td>\n                                <td ng-click="vm.createOrEditCustomDashboard($event, customDashboard)" md-cell class="description ">{{customDashboard.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(customDashboard, $event)" translate="TOOLS.EDIT_CUSTOMDASHBOARD">\n                                                    Edit CustomDashboard\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(customDashboard, $event)" translate="TOOLS.DELETE_CUSTOMDASHBOARD">\n                                                    Delete CustomDashboard\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.customDashboards.count}}" md-on-paginate="vm.getCustomDashboards" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CUSTOMDASHBOARD TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CUSTOMDASHBOARD BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-customDashboard-button" ng-click="vm.createOrEditCustomDashboard($event)" aria-label="add customDashboard" translate translate-attr-aria-label="TOOLS.ADD_CUSTOMDASHBOARD">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CUSTOMDASHBOARD BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/customDashboards/edit/dashboard/dialog.html",'<md-dialog class="dashboarditem-dialog" aria-label="New DashboardItem">\n    <form name="dashboarditemForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.dashboarditem.type" autofocus>\n\n                    <md-option ng-value="\'counter\'"> {{ \'TOOLS.COUNTER\' | translate }}</md-option>\n\n                    <md-option ng-value="\'iframe\'"> {{ \'TOOLS.IFRAME\' | translate }}</md-option>\n\n                    <md-option ng-value="\'clock\'"> {{ \'TOOLS.CLOCK\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="dashboarditemForm.type.$error" ng-show="dashboarditemForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newDashboardItem" ng-click="vm.saveDashboardItem()" class="send-button md-accent md-raised" ng-disabled="dashboarditemForm.$invalid || dashboarditemForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newDashboardItem" ng-click="vm.addNewDashboardItem()" class="send-button md-accent md-raised" ng-disabled="dashboarditemForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_DASHBOARDITEM" translate-attr-aria-label="TOOLS.ADD_DASHBOARDITEM">\n                    ADD DASHBOARDITEM\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newDashboardItem" ng-click="vm.deleteDashboardItem($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/customDashboards/edit/view.html",'<div id="tools-customDashboard" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-customDashboards-button md-icon-button" aria-label="Go to customDashboards" ng-click="vm.gotoCustomDashboards()" translate translate-attr-aria-label="TOOLS.GO_TO_CUSTOMDASHBOARDS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.customDashboard.userpic" class="customDashboard-image" hide-xs>\n                    <img ng-src="api/users/{{vm.customDashboard.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.customDashboard.userpic" class="customDashboard-image" hide-xs>\n                    <img ng-src="assets/images/business/customDashboards.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.customDashboard.id}} {{vm.customDashboard.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.customDashboard.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveCustomDashboard()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (dashboardForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="customDashboard-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.customDashboard.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.POLLING_INTERVAL">Polling_Interval</label>\n                                <input type="number" name="interval" ng-model="vm.customDashboard.interval" min="5" required>\n                                <div ng-messages="generalForm.interval.$error" ng-show="generalForm.interval.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.POLLING_INTERVAL_REQUIRED">Polling_Interval field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.customDashboard.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.DASHBOARD">DASHBOARD</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="customDashboard-detail-form-container dashboard md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="CustomDashboardCustomDashboardController as vm_cd" ng-init="vm_cd.init(vm.customDashboard)" class="customDashboard-detail-form-container">\n                            <div layout="row" layout-align="end center">\n                                <md-button class="md-icon-button" ng-click="vm_cd.addItem()">\n                                    <md-icon md-font-icon="icon-plus"></md-icon>\n                                </md-button>\n                            </div>\n                            <div gridster="vm_cd.gridOptions">\n                                <div gridster-item="item" ng-repeat="item in vm_cd.items.rows" ng-switch="item.type">\n                                    <ms-dash-counter ng-switch-when="counter" options="item" on-delete-item="vm_cd.deleteItem(id)"></ms-dash-counter>\n                                    \x3c!-- <ms-dash-table ng-switch-when="table" options="item" on-delete-item="vm_cd.deleteItem(id)"></ms-dash-table> --\x3e\n                                    <ms-dash-iframe ng-switch-when="iframe" options="item" on-delete-item="vm_cd.deleteItem(id)"></ms-dash-iframe>\n                                    <ms-dash-clock ng-switch-when="clock" options="item" on-delete-item="vm_cd.deleteItem(id)"></ms-dash-clock>\n                                </div>\n                            </div>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/intervals/create/dialog.html",'<md-dialog class="interval-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.interval.name" required autofocus>\n                <div ng-messages="intervalForm.name.$error" ng-show="intervalForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.interval.description">\n                <div ng-messages="intervalForm.description.$error" ng-show="intervalForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newInterval" ng-click="vm.deleteInterval($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/intervals/edit/apps/interval/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input ng-model="vm.interval.name" type="text" name="name" placeholder="{{\'TOOLS.NAME\' | translate}}" md-autofocus required>\n                <div ng-messages="intervalForm.name.$error" ng-show="intervalForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.type">\n                    <md-option ng-value="type" ng-repeat=\'type in vm.types\'>{{ type | ucfirst }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.type === \'list\'">\n                <label translate="TOOLS.INTERVALS">Intervals</label>\n                <md-select ng-model="vm.interval.IntervalId">\n                    <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            \x3c!-- TIMERANGE START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.TIME_RANGE">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n            \x3c!-- TIMERANGE END --\x3e\n\n            \x3c!-- DAYSOFWEEK START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.WEEK_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.dayOfWeekFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.dayOfWeekTo">\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- DAYSOFWEEK END --\x3e\n\n            \x3c!-- MONTHDAY START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTH_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthDayFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthDayTo">\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTHDAY END --\x3e\n\n            \x3c!-- MONTH START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTHS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthTo">\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTH END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/intervals/edit/intervals/dialog.html",'<md-dialog class="interval-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="" name="name" ng-model="vm.interval.name" required autofocus>\n                <div ng-messages="intervalForm.name.$error" ng-show="intervalForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newInterval" ng-click="vm.deleteInterval($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/intervals/edit/view.html",'<div id="tools-interval" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-intervals-button md-icon-button" aria-label="Go to intervals" ng-click="vm.gotoIntervals()" translate translate-attr-aria-label="TOOLS.GO_TO_INTERVALS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.interval.userpic" class="interval-image" hide-xs>\n                    <img ng-src="api/users/{{vm.interval.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.interval.userpic" class="interval-image" hide-xs>\n                    <img ng-src="assets/images/business/intervals.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.interval.id}} {{vm.interval.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.interval.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (intervalsForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="interval-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.interval.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.interval.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.INTERVALS">INTERVALS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="interval-detail-form-container intervals md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="IntervalIntervalsController as vm_dc" ng-init="vm_dc.init(vm.interval)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedIntervalIntervals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="TOOLS.INTERVALS">Intervals</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditIntervalInterval($event)" aria-label="add interval" translate translate-attr-label="TOOLS.ADD_INTERVAL">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedIntervalIntervals.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedIntervalIntervals.length}} {{vm_dc.selectedIntervalIntervals.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedIntervalIntervals($event)" aria-label="delete selected" translate translate-attr-label="INTERVALS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedIntervalIntervals" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getIntervalIntervals">\n                                        <tr md-row>\n                                            <th md-column width="10px"></th>\n                                            <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                            <th md-column md-order-by="interval">{{ \'TOOLS.INTERVAL\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'TOOLS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body ng-sortable="vm_dc.sortableTable">\n                                        <tr md-row md-select="interval" md-select-id="id" ng-repeat="interval in vm_dc.intervalIntervals.rows">\n                                            <td md-cell>\n                                                <md-icon md-font-icon="icon-drag-vertical" class="s16 handle"></md-icon>\n                                            </td>\n                                            <td ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" md-cell>{{interval.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" md-cell>{{interval.name}}</td>\n                                            <td ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" md-cell>{{interval.interval}}</td>\n                                            <td ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" md-cell>{{interval.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditIntervalInterval($event, interval)" translate="TOOLS.EDIT_INTERVAL">\n                                                                Edit Interval\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(interval, $event)" translate="TOOLS.DELETE_INTERVAL">\n                                                                Delete Interval\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.intervalIntervals.rows.length">\n                                            <td md-cell colspan="7">\n                                                <span class="text-boxed-ligth" translate="TOOLS.NO_INTERVALS_AVAILABLE">No intervals available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/intervals/intervals.html",'<div id="intervals" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.INTERVALS">Intervals</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedIntervals.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedIntervals =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-intervals-count">\n                    <span>{{vm.selectedIntervals.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="INTERVALS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllIntervals()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectIntervals()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedIntervals" filename="intervals.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedIntervals($event)" aria-label="delete selected" translate translate-attr-label="INTERVALS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- INTERVAL TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedIntervals" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getIntervals">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.intervals.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="interval" md-select-id="id" ng-repeat="interval in vm.intervals.rows">\n                                <td md-cell ng-if="interval.userpic"><img class="avatar" alt="{{interval.name}}" ng-src="api/users/{{interval.id}}/avatar" /></td>\n                                <td md-cell ng-if="!interval.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{interval.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditInterval($event, interval)" md-cell class="id ">{{interval.id}}</td>\n                                <td ng-click="vm.createOrEditInterval($event, interval)" md-cell class="name ">{{interval.name}}</td>\n                                <td ng-click="vm.createOrEditInterval($event, interval)" md-cell class="description ">{{interval.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(interval, $event)" translate="TOOLS.EDIT_INTERVAL">\n                                                    Edit Interval\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(interval, $event)" translate="TOOLS.DELETE_INTERVAL">\n                                                    Delete Interval\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.intervals.count}}" md-on-paginate="vm.getIntervals" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / INTERVAL TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD INTERVAL BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-interval-button" ng-click="vm.createOrEditInterval($event)" aria-label="add interval" translate translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD INTERVAL BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/pauses/create/dialog.html",'<md-dialog class="pause-dialog" aria-label="New Pause">\n    <form name="pauseForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.pause.name" required autofocus>\n                <div ng-messages="pauseForm.name.$error" ng-show="pauseForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.pause.description">\n                <div ng-messages="pauseForm.description.$error" ng-show="pauseForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newPause" ng-click="vm.savePause()" class="send-button md-accent md-raised" ng-disabled="pauseForm.$invalid || pauseForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newPause" ng-click="vm.addNewPause()" class="send-button md-accent md-raised" ng-disabled="pauseForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_PAUSE" translate-attr-aria-label="TOOLS.ADD_PAUSE">\n                    ADD PAUSE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newPause" ng-click="vm.deletePause($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/pauses/pauses.html",'<div id="pauses" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.PAUSES">Pauses</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedPauses.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedPauses =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-pauses-count">\n                    <span>{{vm.selectedPauses.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="PAUSES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllPauses()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectPauses()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedPauses" filename="pauses.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedPauses($event)" aria-label="delete selected" translate translate-attr-label="PAUSES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- PAUSE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedPauses" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getPauses">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.pauses.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="pause" md-select-id="id" ng-repeat="pause in vm.pauses.rows">\n                                <td md-cell ng-if="pause.userpic"><img class="avatar" alt="{{pause.name}}" ng-src="api/users/{{pause.id}}/avatar" /></td>\n                                <td md-cell ng-if="!pause.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{pause.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditPause($event, pause)" md-cell class="id ">{{pause.id}}</td>\n                                <td ng-click="vm.createOrEditPause($event, pause)" md-cell class="name ">{{pause.name}}</td>\n                                <td ng-click="vm.createOrEditPause($event, pause)" md-cell class="description ">{{pause.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(pause, $event)" translate="TOOLS.EDIT_PAUSE">\n                                                    Edit Pause\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(pause, $event)" translate="TOOLS.DELETE_PAUSE">\n                                                    Delete Pause\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.pauses.count}}" md-on-paginate="vm.getPauses" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / PAUSE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD PAUSE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-pause-button" ng-click="vm.createOrEditPause($event)" aria-label="add pause" translate translate-attr-aria-label="TOOLS.ADD_PAUSE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD PAUSE BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/schedules/create/dialog.html",'<md-dialog class="schedule-dialog" aria-label="New Schedule">\n    <form name="scheduleForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.schedule.name" required autofocus>\n                <div ng-messages="scheduleForm.name.$error" ng-show="scheduleForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.schedule.type">\n                    <md-option ng-value="\'report\'">Report</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.type.$error" ng-show="scheduleForm.type.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.REPORTTYPE">ReportType</label>\n                <md-select ng-model="vm.schedule.reportType" required>\n                    <md-option ng-value="\'default\'">Default</md-option>\n                    <md-option ng-value="\'custom\'">Custom</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportType.$error" ng-show="scheduleForm.reportType.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REPORTTYPE_REQUIRED">ReportType field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.reportType == \'default\'" class="md-block">\n                <label translate="TOOLS.REPORT">Report</label>\n                <md-select ng-model="vm.schedule.reportId" required>\n                    <md-option ng-value="reportId.id" ng-repeat="reportId in vm.defaultReports">{{ reportId.name }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportId.$error" ng-show="scheduleForm.reportId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REPORT_REQUIRED">Report field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.reportType == \'custom\'" class="md-block">\n                <label translate="TOOLS.REPORT">Report</label>\n                <md-select ng-model="vm.schedule.reportId" required>\n                    <md-option ng-value="reportId.id" ng-repeat="reportId in vm.customReports">{{ reportId.name }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportId.$error" ng-show="scheduleForm.reportId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REPORT_REQUIRED">Report field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.OUTPUT">Output</label>\n                <md-select ng-model="vm.schedule.reportOutput" required>\n                    <md-option ng-value="\'CSV\'">CSV</md-option>\n                    <md-option ng-value="\'PDF\'">PDF</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportOutput.$error" ng-show="scheduleForm.reportOutput.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OUTPUT_REQUIRED">Output field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.EXECUTEON">ExecuteOn</label>\n                <md-select ng-model="vm.schedule.cronType" required>\n\n                    <md-option ng-value="\'currentDay\'"> {{ \'TOOLS.CURRENTDAY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'daily\'"> {{ \'TOOLS.DAILY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'weekly\'"> {{ \'TOOLS.WEEKLY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'monthly\'"> {{ \'TOOLS.MONTHLY\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.cronType.$error" ng-show="scheduleForm.cronType.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.EXECUTEON_REQUIRED">ExecuteOn field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                <label translate="TOOLS.VALIDITYSTART">ValidityStart</label>\n                <input type="number" name="validityStart" ng-model="vm.schedule.validityStart" min="0" max="24" required>\n                <div ng-messages="scheduleForm.validityStart.$error" ng-show="scheduleForm.validityStart.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.VALIDITYSTART_REQUIRED">ValidityStart field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                <label translate="TOOLS.VALIDITYEND">ValidityEnd</label>\n                <input type="number" name="validityEnd" ng-model="vm.schedule.validityEnd" min="0" max="24" required>\n                <div ng-messages="scheduleForm.validityEnd.$error" ng-show="scheduleForm.validityEnd.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.VALIDITYEND_REQUIRED">ValidityEnd field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                <label translate="TOOLS.EXECUTEEVERY">ExecuteEvery</label>\n                <md-select ng-model="vm.schedule.cron" required>\n\n                    <md-option ng-value="\'*/15 * * * *\'"> {{ \'TOOLS.15MIN\' | translate }}</md-option>\n\n                    <md-option ng-value="\'*/30 * * * *\'"> {{ \'TOOLS.30MIN\' | translate }}</md-option>\n\n                    <md-option ng-value="\'0 * * * *\'"> {{ \'TOOLS.1H\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.cron.$error" ng-show="scheduleForm.cron.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.EXECUTEEVERY_REQUIRED">ExecuteEvery field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'weekly\'" class="md-block">\n                <label translate="TOOLS.WEEKDAYS">WeekDays</label>\n                <md-select ng-model="vm.schedule.weekDays" required multiple>\n\n                    <md-option ng-value="\'monday\'"> {{ \'TOOLS.MON\' | translate }}</md-option>\n\n                    <md-option ng-value="\'tuesday\'"> {{ \'TOOLS.TUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'wednesday\'"> {{ \'TOOLS.WED\' | translate }}</md-option>\n\n                    <md-option ng-value="\'thursday\'"> {{ \'TOOLS.THU\' | translate }}</md-option>\n\n                    <md-option ng-value="\'friday\'"> {{ \'TOOLS.FRI\' | translate }}</md-option>\n\n                    <md-option ng-value="\'saturday\'"> {{ \'TOOLS.SAT\' | translate }}</md-option>\n\n                    <md-option ng-value="\'sunday\'"> {{ \'TOOLS.SUN\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.weekDays.$error" ng-show="scheduleForm.weekDays.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.WEEKDAYS_REQUIRED">WeekDays field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType == \'monthly\'" class="md-block">\n                <label translate="TOOLS.MONTHDAY">MonthDay</label>\n                <input type="number" name="monthDay" ng-model="vm.schedule.monthDay" min="1" max="31" required>\n                <div ng-messages="scheduleForm.monthDay.$error" ng-show="scheduleForm.monthDay.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.MONTHDAY_REQUIRED">MonthDay field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType != \'currentDay\'" class="md-block">\n                <label translate="TOOLS.HOUR">Hour</label>\n                <input type="number" name="hour" ng-model="vm.schedule.hour" min="0" max="23" required>\n                <div ng-messages="scheduleForm.hour.$error" ng-show="scheduleForm.hour.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.HOUR_REQUIRED">Hour field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.cronType != \'currentDay\'" class="md-block">\n                <label translate="TOOLS.REPORTRANGE">ReportRange</label>\n                <md-select ng-model="vm.schedule.reportRange" required>\n\n                    <md-option ng-value="\'yesterday\'"> {{ \'TOOLS.PREVIOUS_DAY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'last7\'"> {{ \'TOOLS.LAST_SEVEN_DAYS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'last30\'"> {{ \'TOOLS.LAST_THIRTY_DAYS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'lastMonth\'"> {{ \'TOOLS.LAST_MONTH\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.reportRange.$error" ng-show="scheduleForm.reportRange.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REPORTRANGE_REQUIRED">ReportRange field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.schedule.sendMail" aria-label="SendMail"><span translate="TOOLS.SENDMAIL">SendMail</span></md-switch>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.sendMail" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.schedule.MailServerOutId" required>\n                    <md-option ng-value="MailServerOutId.id" ng-repeat="MailServerOutId in vm.mailServerOut">{{ MailServerOutId.name }}</md-option>\n                </md-select>\n                <div ng-messages="scheduleForm.MailServerOutId.$error" ng-show="scheduleForm.MailServerOutId.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.schedule.sendMail" class="md-block">\n                <label translate="TOOLS.EMAILADDRESS">EmailAddress</label>\n                <input type="email" name="email" ng-model="vm.schedule.email" required>\n                <div ng-messages="scheduleForm.email.$error" ng-show="scheduleForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.EMAILADDRESS_REQUIRED">EmailAddress field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="TOOLS.ERRORS.EMAILADDRESS_MUST_VALID">EmailAddress must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.schedule.active" aria-label="Active"><span translate="TOOLS.ACTIVE">Active</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="" name="description" ng-model="vm.schedule.description">\n                <div ng-messages="scheduleForm.description.$error" ng-show="scheduleForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSchedule" ng-click="vm.saveSchedule()" class="send-button md-accent md-raised" ng-disabled="scheduleForm.$invalid || scheduleForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSchedule" ng-click="vm.addNewSchedule()" class="send-button md-accent md-raised" ng-disabled="scheduleForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_SCHEDULE" translate-attr-aria-label="TOOLS.ADD_SCHEDULE">\n                    ADD SCHEDULE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSchedule" ng-click="vm.deleteSchedule($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/schedules/edit/view.html",'<div id="tools-schedule" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-schedules-button md-icon-button" aria-label="Go to schedules" ng-click="vm.gotoScheduler()" translate translate-attr-aria-label="TOOLS.GO_TO_SCHEDULER">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.schedule.userpic" class="schedule-image" hide-xs>\n                    <img ng-src="api/users/{{vm.schedule.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.schedule.userpic" class="schedule-image" hide-xs>\n                    <img ng-src="assets/images/business/schedules.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.schedule.id}} {{vm.schedule.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.schedule.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveSchedule()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (configurationForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="schedule-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.schedule.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.schedule.active" aria-label="Active"><span translate="TOOLS.ACTIVE">Active</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="" name="description" ng-model="vm.schedule.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.CONFIGURATION">CONFIGURATION</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="schedule-detail-form-container configuration md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.CONFIGURATION">CONFIGURATION</div>\n                        </div>\n                        <form name="configurationForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.REPORTTYPE">ReportType</label>\n                                <md-select ng-model="vm.schedule.reportType" required autofocus>\n                                    <md-option ng-value="\'default\'">Default</md-option>\n                                    <md-option ng-value="\'custom\'">Custom</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportType.$error" ng-show="configurationForm.reportType.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REPORTTYPE_REQUIRED">ReportType field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.reportType == \'default\'" class="md-block">\n                                <label translate="TOOLS.REPORT">Report</label>\n                                <md-select ng-model="vm.schedule.reportId" required>\n                                    <md-option ng-value="reportId.id" ng-repeat="reportId in vm.defaultReports">{{ reportId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportId.$error" ng-show="configurationForm.reportId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REPORT_REQUIRED">Report field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.reportType == \'custom\'" class="md-block">\n                                <label translate="TOOLS.REPORT">Report</label>\n                                <md-select ng-model="vm.schedule.reportId" required>\n                                    <md-option ng-value="reportId.id" ng-repeat="reportId in vm.customReports">{{ reportId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportId.$error" ng-show="configurationForm.reportId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REPORT_REQUIRED">Report field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.OUTPUT">Output</label>\n                                <md-select ng-model="vm.schedule.reportOutput" required>\n                                    <md-option ng-value="\'CSV\'">CSV</md-option>\n                                    <md-option ng-value="\'PDF\'">PDF</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportOutput.$error" ng-show="configurationForm.reportOutput.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.OUTPUT_REQUIRED">Output field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.EXECUTEON">ExecuteOn</label>\n                                <md-select ng-model="vm.schedule.cronType" required>\n\n                                    <md-option ng-value="\'currentDay\'"> {{ \'TOOLS.CURRENTDAY\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'daily\'"> {{ \'TOOLS.DAILY\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'weekly\'"> {{ \'TOOLS.WEEKLY\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'monthly\'"> {{ \'TOOLS.MONTHLY\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.cronType.$error" ng-show="configurationForm.cronType.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.EXECUTEON_REQUIRED">ExecuteOn field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.VALIDITYSTART">ValidityStart</label>\n                                <input type="number" name="validityStart" ng-model="vm.schedule.validityStart" min="0" max="24" required>\n                                <div ng-messages="configurationForm.validityStart.$error" ng-show="configurationForm.validityStart.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.VALIDITYSTART_REQUIRED">ValidityStart field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.VALIDITYEND">ValidityEnd</label>\n                                <input type="number" name="validityEnd" ng-model="vm.schedule.validityEnd" min="0" max="24" required>\n                                <div ng-messages="configurationForm.validityEnd.$error" ng-show="configurationForm.validityEnd.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.VALIDITYEND_REQUIRED">ValidityEnd field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.EXECUTEEVERY">ExecuteEvery</label>\n                                <md-select ng-model="vm.schedule.cron" required>\n\n                                    <md-option ng-value="\'*/15 * * * *\'"> {{ \'TOOLS.15MIN\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'*/30 * * * *\'"> {{ \'TOOLS.30MIN\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'0 * * * *\'"> {{ \'TOOLS.1H\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.cron.$error" ng-show="configurationForm.cron.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.EXECUTEEVERY_REQUIRED">ExecuteEvery field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'weekly\'" class="md-block">\n                                <label translate="TOOLS.WEEKDAYS">WeekDays</label>\n                                <md-select ng-model="vm.schedule.weekDays" required multiple>\n\n                                    <md-option ng-value="\'monday\'"> {{ \'TOOLS.MON\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'tuesday\'"> {{ \'TOOLS.TUE\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'wednesday\'"> {{ \'TOOLS.WED\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'thursday\'"> {{ \'TOOLS.THU\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'friday\'"> {{ \'TOOLS.FRI\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'saturday\'"> {{ \'TOOLS.SAT\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'sunday\'"> {{ \'TOOLS.SUN\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.weekDays.$error" ng-show="configurationForm.weekDays.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.WEEKDAYS_REQUIRED">WeekDays field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType == \'monthly\'" class="md-block">\n                                <label translate="TOOLS.MONTHDAY">MonthDay</label>\n                                <input type="number" name="monthDay" ng-model="vm.schedule.monthDay" min="1" max="31" required>\n                                <div ng-messages="configurationForm.monthDay.$error" ng-show="configurationForm.monthDay.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.MONTHDAY_REQUIRED">MonthDay field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType != \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.HOUR">Hour</label>\n                                <input type="number" name="hour" ng-model="vm.schedule.hour" min="0" max="23" required>\n                                <div ng-messages="configurationForm.hour.$error" ng-show="configurationForm.hour.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.HOUR_REQUIRED">Hour field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.cronType != \'currentDay\'" class="md-block">\n                                <label translate="TOOLS.REPORTRANGE">ReportRange</label>\n                                <md-select ng-model="vm.schedule.reportRange" required>\n\n                                    <md-option ng-value="\'yesterday\'"> {{ \'TOOLS.PREVIOUS_DAY\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'last7\'"> {{ \'TOOLS.LAST_SEVEN_DAYS\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'last30\'"> {{ \'TOOLS.LAST_THIRTY_DAYS\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'lastMonth\'"> {{ \'TOOLS.LAST_MONTH\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.reportRange.$error" ng-show="configurationForm.reportRange.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REPORTRANGE_REQUIRED">ReportRange field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.schedule.sendMail" aria-label="SendMail"><span translate="TOOLS.SENDMAIL">SendMail</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.sendMail" class="md-block">\n                                <label translate="TOOLS.ACCOUNT">Account</label>\n                                <md-select ng-model="vm.schedule.MailServerOutId" required>\n                                    <md-option ng-value="MailServerOutId.id" ng-repeat="MailServerOutId in vm.mailServerOut">{{ MailServerOutId.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="configurationForm.MailServerOutId.$error" ng-show="configurationForm.MailServerOutId.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.schedule.sendMail" class="md-block">\n                                <label translate="TOOLS.EMAILADDRESS">EmailAddress</label>\n                                <input type="email" name="email" ng-model="vm.schedule.email" required>\n                                <div ng-messages="configurationForm.email.$error" ng-show="configurationForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.EMAILADDRESS_REQUIRED">EmailAddress field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="TOOLS.ERRORS.EMAILADDRESS_MUST_VALID">EmailAddress must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/schedules/schedules.html",'<div id="schedules" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.SCHEDULER">Scheduler</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedScheduler.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedScheduler =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-schedules-count">\n                    <span>{{vm.selectedScheduler.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SCHEDULER.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllScheduler()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectScheduler()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedScheduler" filename="schedules.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedScheduler($event)" aria-label="delete selected" translate translate-attr-label="SCHEDULER.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SCHEDULE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedScheduler" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getScheduler">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="sendMail">{{ \'TOOLS.SENDMAIL\' | translate }}</th>\n                                <th md-column md-order-by="active">{{ \'TOOLS.ACTIVE\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.schedules.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="schedule" md-select-id="id" ng-repeat="schedule in vm.schedules.rows">\n                                <td md-cell ng-if="schedule.userpic"><img class="avatar" alt="{{schedule.name}}" ng-src="api/users/{{schedule.id}}/avatar" /></td>\n                                <td md-cell ng-if="!schedule.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{schedule.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="id ">{{schedule.id}}</td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="name ">{{schedule.name}}</td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="sendMail ">\n                                    <md-icon md-colors="{color: {{schedule.sendMail ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{schedule.sendMail ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="active ">\n                                    <md-icon md-colors="{color: {{schedule.active ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{schedule.active ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditSchedule($event, schedule)" md-cell class="description ">{{schedule.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(schedule, $event)" translate="TOOLS.EDIT_SCHEDULE">\n                                                    Edit Schedule\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(schedule, $event)" translate="TOOLS.DELETE_SCHEDULE">\n                                                    Delete Schedule\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.schedules.count}}" md-on-paginate="vm.getScheduler" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SCHEDULE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SCHEDULE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-schedule-button" ng-click="vm.createOrEditSchedule($event)" aria-label="add schedule" translate translate-attr-aria-label="TOOLS.ADD_SCHEDULE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SCHEDULE BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/sounds/create/dialog.html",'<md-dialog class="sound-dialog" aria-label="New Sound">\n    <form name="soundForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.sound.name" required autofocus>\n                <div ng-messages="soundForm.name.$error" ng-show="soundForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.sound.description">\n                <div ng-messages="soundForm.description.$error" ng-show="soundForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newSound" ng-click="vm.saveSound()" class="send-button md-accent md-raised" ng-disabled="soundForm.$invalid || soundForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newSound" ng-click="vm.addNewSound()" class="send-button md-accent md-raised" ng-disabled="soundForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_SOUND" translate-attr-aria-label="TOOLS.ADD_SOUND">\n                    ADD SOUND\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newSound" ng-click="vm.deleteSound($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/sounds/sounds.html",'<div id="sounds" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.SOUNDS">Sounds</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedSounds.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedSounds =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-sounds-count">\n                    <span>{{vm.selectedSounds.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="SOUNDS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllSounds()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectSounds()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedSounds" filename="sounds.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedSounds($event)" aria-label="delete selected" translate translate-attr-label="SOUNDS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- SOUND TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedSounds" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getSounds">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="audio">{{ \'TOOLS.AUDIO\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.sounds.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="sound" md-select-id="id" ng-repeat="sound in vm.sounds.rows">\n                                <td md-cell ng-if="sound.userpic"><img class="avatar" alt="{{sound.name}}" ng-src="api/users/{{sound.id}}/avatar" /></td>\n                                <td md-cell ng-if="!sound.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{sound.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditSound($event, sound)" md-cell class="id ">{{sound.id}}</td>\n                                <td ng-click="vm.createOrEditSound($event, sound)" md-cell class="name ">{{sound.name}}</td>\n                                <td md-cell class="audio "><audio controls><source ng-src="{{\'api/sounds/\' + sound.id + \'/download\'}}" type="audio/wav" preload="none"></source>Your browser does not support the audio element.</audio></td>\n                                <td ng-click="vm.createOrEditSound($event, sound)" md-cell class="description ">{{sound.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(sound, $event)" translate="TOOLS.EDIT_SOUND">\n                                                    Edit Sound\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.downloadfile(sound, $event)" translate="TOOLS.DOWNLOAD_SOUND">\n                                                    Download Sound\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(sound, $event)" translate="TOOLS.DELETE_SOUND">\n                                                    Delete Sound\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.sounds.count}}" md-on-paginate="vm.getSounds" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / SOUND TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD SOUND BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-sound-button" ng-click="vm.uploadSound($event)" aria-label="add sound" translate translate-attr-aria-label="SOUNDS.ADD_SOUND">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD SOUND BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/sounds/uploadsound/dialog.html",'<md-dialog class="upload-dialog" aria-label="Upload Sound">\n    <form name="uploadForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <div id="agent-image-uploader" flow-init="vm.ngFlowOptions" flow-name="vm.ngFlow.flow" flow-files-submitted="vm.upload()" flow-file-added="vm.fileAdded($file)" flow-file-success="vm.fileSuccess($file, $message)" flow-complete="vm.uploadComplete()" flow-drop\n                flow-drag-enter="vm.dropping=true" flow-drag-leave="vm.dropping=false" ng-class="{\'dropping\':vm.dropping}">\n\n                <div class="drop-text hint-text" layout="row" layout-align="center center">\n                    <span translate="TOOLS.DROP_TO_UPLOAD">Drop to upload</span>\n                </div>\n\n                <div class="upload-button" layout="column" layout-align="center center">\n                    <md-button class="md-accent md-raised" flow-btn>\n                        Upload\n                    </md-button>\n                    <span class="secondary-text mt-8" translate="TOOLS.DROP_TO_UPLOAD_MESSAGE">You can also drop audio here to upload. Only MP3, WAV, GSM - Max. 15MB</span>\n                </div>\n\n                <div layout="row" layout-align="start start" ng-repeat="sound in vm.uploadSounds" ng-switch="sound.type">\n                    <div class="sound-image" ng-switch-when="uploading" flex>\n                        <img class="media" src="assets/images/music-player/uploading.png">\n                        <md-progress-linear md-mode="indeterminate"></md-progress-linear>\n                        <span class="text-truncate">{{sound.file.name}}</span>\n                    </div>\n                    <div class="sound-image" ng-switch-when="sound" flex>\n                        <img class="media" src="assets/images/music-player/success.png">\n                        <span class="text-truncate">{{sound.file.name}}</span>\n                    </div>\n                </div>\n\n\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center"></div>\n            <div layout="row">\n                <md-button ng-click="vm.closeDialog()" class="md-accent md-raised" aria-label="FINISH" translate="TOOLS.FINISH" translate-attr-aria-label="TOOLS.FINISH">\n                    FINISH\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/tags/create/dialog.html",'<md-dialog class="tag-dialog" aria-label="New Tag">\n    <form name="tagForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.tag.name" required autofocus>\n                <div ng-messages="tagForm.name.$error" ng-show="tagForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.tag.description">\n                <div ng-messages="tagForm.description.$error" ng-show="tagForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTag" ng-click="vm.saveTag()" class="send-button md-accent md-raised" ng-disabled="tagForm.$invalid || tagForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTag" ng-click="vm.addNewTag()" class="send-button md-accent md-raised" ng-disabled="tagForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_TAG" translate-attr-aria-label="TOOLS.ADD_TAG">\n                    ADD TAG\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTag" ng-click="vm.deleteTag($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/tags/tags.html",'<div id="tags" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.TAGS">Tags</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTags.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTags =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-tags-count">\n                    <span>{{vm.selectedTags.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TAGS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTags()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTags()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTags" filename="tags.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTags($event)" aria-label="delete selected" translate translate-attr-label="TAGS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TAG TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTags" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTags">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.tags.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="tag" md-select-id="id" ng-repeat="tag in vm.tags.rows">\n                                <td md-cell ng-if="tag.userpic"><img class="avatar" alt="{{tag.name}}" ng-src="api/users/{{tag.id}}/avatar" /></td>\n                                <td md-cell ng-if="!tag.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{tag.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTag($event, tag)" md-cell class="id ">{{tag.id}}</td>\n                                <td ng-click="vm.createOrEditTag($event, tag)" md-cell class="name ">{{tag.name}}</td>\n                                <td ng-click="vm.createOrEditTag($event, tag)" md-cell class="description ">{{tag.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(tag, $event)" translate="TOOLS.EDIT_TAG">\n                                                    Edit Tag\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(tag, $event)" translate="TOOLS.DELETE_TAG">\n                                                    Delete Tag\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.tags.count}}" md-on-paginate="vm.getTags" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TAG TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TAG BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-tag-button" ng-click="vm.createOrEditTag($event)" aria-label="add tag" translate translate-attr-aria-label="TOOLS.ADD_TAG">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TAG BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/templates/create/dialog.html",'<md-dialog class="template-dialog" aria-label="New Template">\n    <form name="templateForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.template.name" required autofocus>\n                <div ng-messages="templateForm.name.$error" ng-show="templateForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.SUBJECT">Subject</label>\n                <input type="text" name="subject" ng-model="vm.template.subject">\n                <div ng-messages="templateForm.subject.$error" ng-show="templateForm.subject.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.SUBJECT_REQUIRED">Subject field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <text-angular ng-model="vm.template.html"></text-angular>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.template.description">\n                <div ng-messages="templateForm.description.$error" ng-show="templateForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTemplate" ng-click="vm.saveTemplate()" class="send-button md-accent md-raised" ng-disabled="templateForm.$invalid || templateForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTemplate" ng-click="vm.addNewTemplate()" class="send-button md-accent md-raised" ng-disabled="templateForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_TEMPLATE" translate-attr-aria-label="TOOLS.ADD_TEMPLATE">\n                    ADD TEMPLATE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTemplate" ng-click="vm.deleteTemplate($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/templates/templates.html",'<div id="templates" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.TEMPLATES">Templates</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTemplates.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTemplates =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-templates-count">\n                    <span>{{vm.selectedTemplates.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TEMPLATES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTemplates()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTemplates()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTemplates" filename="templates.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTemplates($event)" aria-label="delete selected" translate translate-attr-label="TEMPLATES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TEMPLATE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTemplates" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTemplates">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.templates.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="template" md-select-id="id" ng-repeat="template in vm.templates.rows">\n                                <td md-cell ng-if="template.userpic"><img class="avatar" alt="{{template.name}}" ng-src="api/users/{{template.id}}/avatar" /></td>\n                                <td md-cell ng-if="!template.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{template.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTemplate($event, template)" md-cell class="id ">{{template.id}}</td>\n                                <td ng-click="vm.createOrEditTemplate($event, template)" md-cell class="name ">{{template.name}}</td>\n                                <td ng-click="vm.createOrEditTemplate($event, template)" md-cell class="description ">{{template.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(template, $event)" translate="TOOLS.EDIT_TEMPLATE">\n                                                    Edit Template\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(template, $event)" translate="TOOLS.DELETE_TEMPLATE">\n                                                    Delete Template\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.templates.count}}" md-on-paginate="vm.getTemplates" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TEMPLATE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TEMPLATE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-template-button" ng-click="vm.createOrEditTemplate($event)" aria-label="add template" translate translate-attr-aria-label="TOOLS.ADD_TEMPLATE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TEMPLATE BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/triggers/create/dialog.html",'<md-dialog class="trigger-dialog" aria-label="New Trigger">\n    <form name="triggerForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.trigger.name" required autofocus>\n                <div ng-messages="triggerForm.name.$error" ng-show="triggerForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.CHANNEL">Channel</label>\n                <md-select ng-model="vm.trigger.channel" required ng-disabled="!vm.newTrigger">\n\n                    <md-option ng-value="\'voice\'"> {{ \'TOOLS.VOICE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="triggerForm.channel.$error" ng-show="triggerForm.channel.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.trigger.description">\n                <div ng-messages="triggerForm.description.$error" ng-show="triggerForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTrigger" ng-click="vm.saveTrigger()" class="send-button md-accent md-raised" ng-disabled="triggerForm.$invalid || triggerForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTrigger" ng-click="vm.addNewTrigger()" class="send-button md-accent md-raised" ng-disabled="triggerForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_TRIGGER" translate-attr-aria-label="TOOLS.ADD_TRIGGER">\n                    ADD TRIGGER\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTrigger" ng-click="vm.deleteTrigger($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/triggers/edit/actions/dialog.html",'<md-dialog class="action-dialog" aria-label="New Action">\n    <form name="actionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.ACTION">Action</label>\n                <md-select ng-model="vm.action.action" required autofocus>\n\n                    <md-option ng-value="\'contactManager\'"> {{ \'TOOLS.CONTACT_MANAGER\' | translate }}</md-option>\n\n                    <md-option ng-value="\'integration\'"> {{ \'TOOLS.INTEGRATIONS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'motionbar\'"> {{ \'TOOLS.MOTION_BAR\' | translate }}</md-option>\n\n                    <md-option ng-value="\'jscripty\'"> {{ \'TOOLS.JSCRIPTY\' | translate }}</md-option>\n\n                    <md-option ng-value="\'urlForward\'"> {{ \'TOOLS.URL_FORWARD\' | translate }}</md-option>\n\n                    <md-option ng-value="\'browser\'"> {{ \'TOOLS.BROWSER\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.action.$error" ng-show="actionForm.action.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACTION_REQUIRED">Action field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'browser\'" class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="\'0\'">Web Popup</md-option>\n                    <md-option ng-value="\'1\'">Web Tab</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'contactManager\'" class="md-block">\n                <label translate="TOOLS.LIST">List</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="data1.id" ng-repeat="data1 in vm.lists">{{ data1.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.LIST_REQUIRED">List field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'urlForward\'" class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="\'GET\'">GET</md-option>\n                    <md-option ng-value="\'POST\'">POST</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'urlForward\'" class="md-block">\n                <label translate="TOOLS.URL">Url</label>\n                <input type="url" name="data2" ng-model="vm.action.data2" required>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="TOOLS.ERRORS.URL_MUST_VALID_URL">Url must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\'" class="md-block">\n                <label translate="TOOLS.INTEGRATION">Integration</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="\'zendesk\'">Zendesk</md-option>\n                    <md-option ng-value="\'salesforce\'">Salesforce</md-option>\n                    <md-option ng-value="\'sugarcrm\'">SugarCRM</md-option>\n                    <md-option ng-value="\'freshdesk\'">Freshdesk</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.INTEGRATION_REQUIRED">Integration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'zendesk\'" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.zendeskAccounts">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'salesforce\'" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.salesforceAccounts">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'sugarcrm\'" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.sugarcrmAccounts">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'freshdesk\'" class="md-block">\n                <label translate="TOOLS.ACCOUNT">Account</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.freshdeskAccounts">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ACCOUNT_REQUIRED">Account field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'zendesk\' && vm.action.data2" class="md-block">\n                <label translate="TOOLS.CONFIGURATION">Configuration</label>\n                <md-select ng-model="vm.action.data3" required>\n                    <md-option ng-value="data3.id" ng-repeat="data3 in vm.zendeskConfigurations | filter:{AccountId:vm.action.data2}">{{ data3.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIGURATION_REQUIRED">Configuration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'salesforce\' && vm.action.data2" class="md-block">\n                <label translate="TOOLS.CONFIGURATION">Configuration</label>\n                <md-select ng-model="vm.action.data3" required>\n                    <md-option ng-value="data3.id" ng-repeat="data3 in vm.salesforceConfigurations | filter:{AccountId:vm.action.data2}">{{ data3.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIGURATION_REQUIRED">Configuration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'sugarcrm\' && vm.action.data2" class="md-block">\n                <label translate="TOOLS.CONFIGURATION">Configuration</label>\n                <md-select ng-model="vm.action.data3" required>\n                    <md-option ng-value="data3.id" ng-repeat="data3 in vm.sugarcrmConfigurations | filter:{AccountId:vm.action.data2}">{{ data3.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIGURATION_REQUIRED">Configuration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'integration\' && vm.action.data1 == \'freshdesk\' && vm.action.data2" class="md-block">\n                <label translate="TOOLS.CONFIGURATION">Configuration</label>\n                <md-select ng-model="vm.action.data3" required>\n                    <md-option ng-value="data3.id" ng-repeat="data3 in vm.freshdeskConfigurations | filter:{AccountId:vm.action.data2}">{{ data3.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIGURATION_REQUIRED">Configuration field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\'" class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.action.data1" required>\n                    <md-option ng-value="\'0\'">Popup</md-option>\n                    <md-option ng-value="\'1\'">URL</md-option>\n                    <md-option ng-value="\'2\'">Windows App</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data1.$error" ng-show="actionForm.data1.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\' && vm.action.data1 == \'1\'" class="md-block">\n                <label translate="TOOLS.URL">Url</label>\n                <input type="url" name="data2" ng-model="vm.action.data2" required>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="TOOLS.ERRORS.URL_MUST_VALID_URL">Url must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\' && vm.action.data1 == \'2\'" class="md-block">\n                <label translate="TOOLS.APPLICATION">Application</label>\n                <input type="text" name="data2" ng-model="vm.action.data2" required>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.APPLICATION_REQUIRED">Application field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\' && vm.action.data1 == \'2\'" class="md-block">\n                <label translate="TOOLS.ARGUMENTS">Arguments</label>\n                <input type="text" name="data3" ng-model="vm.action.data3">\n                <div ng-messages="actionForm.data3.$error" ng-show="actionForm.data3.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.ARGUMENTS_REQUIRED">Arguments field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'motionbar\' && vm.action.data1 == \'0\'" class="md-block">\n                <label translate="TOOLS.TEMPLATE">Template</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.templates">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TEMPLATE_REQUIRED">Template field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'browser\' && vm.action.data1 == \'0\'" class="md-block">\n                <label translate="TOOLS.TEMPLATE">Template</label>\n                <md-select ng-model="vm.action.data2" required>\n                    <md-option ng-value="data2.id" ng-repeat="data2 in vm.templates">{{ data2.name }}</md-option>\n                </md-select>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.TEMPLATE_REQUIRED">Template field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.action.action == \'browser\' && vm.action.data1 == \'1\'" class="md-block">\n                <label translate="TOOLS.URL">Url</label>\n                <input type="url" name="data2" ng-model="vm.action.data2" required>\n                <div ng-messages="actionForm.data2.$error" ng-show="actionForm.data2.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                    <div ng-message="url">\n                        <span translate="TOOLS.ERRORS.URL_MUST_VALID_URL">Url must be a valid url http://www.xcally.com</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newAction" ng-click="vm.saveAction()" class="send-button md-accent md-raised" ng-disabled="actionForm.$invalid || actionForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newAction" ng-click="vm.addNewAction()" class="send-button md-accent md-raised" ng-disabled="actionForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_ACTION" translate-attr-aria-label="TOOLS.ADD_ACTION">\n                    ADD ACTION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newAction" ng-click="vm.deleteAction($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/triggers/edit/allconditions/dialog.html",'<md-dialog class="allCondition-dialog" aria-label="New AllCondition">\n    <form name="allConditionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.FIELD">Field</label>\n                <md-select ng-model="vm.allCondition.field" required autofocus>\n\n                    <md-option ng-value="\'queue\'"> {{ \'TOOLS.QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'lastevent\'"> {{ \'TOOLS.CALL_STATUS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'routeId\'"> {{ \'TOOLS.OUTBOUNDROUTE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.field.$error" ng-show="allConditionForm.field.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.FIELD_REQUIRED">Field field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.OPERATOR">Operator</label>\n                <md-select ng-model="vm.allCondition.operator" required>\n\n                    <md-option ng-value="\'equals\'"> {{ \'TOOLS.EQUALS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'not_equals\'"> {{ \'TOOLS.NOT_EQUALS\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.operator.$error" ng-show="allConditionForm.operator.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OPERATOR_REQUIRED">Operator field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.allCondition.field == \'queue\'" class="md-block">\n                <label translate="TOOLS.QUEUE">Queue</label>\n                <md-select ng-model="vm.allCondition.value" required>\n                    <md-option ng-value="value.name" ng-repeat="value in vm.queues">{{ value.name }}</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.value.$error" ng-show="allConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.allCondition.field == \'routeId\'" class="md-block">\n                <label translate="TOOLS.OUTBOUNDROUTE">OutboundRoute</label>\n                <md-select ng-model="vm.allCondition.value" required>\n                    <md-option ng-value="value.id" ng-repeat="value in vm.outboundRoutes">{{ value.exten }}</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.value.$error" ng-show="allConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OUTBOUNDROUTE_REQUIRED">OutboundRoute field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.allCondition.field == \'lastevent\'" class="md-block">\n                <label translate="TOOLS.VALUE">Value</label>\n                <md-select ng-model="vm.allCondition.value" required>\n                    <md-option ng-value="\'abandoned\'">Abandoned</md-option>\n                    <md-option ng-value="\'complete\'">Hangup</md-option>\n                    <md-option ng-value="\'rejected\'">Rejected</md-option>\n                    <md-option ng-value="\'called\'">Ringing</md-option>\n                    <md-option ng-value="\'connect\'">Up</md-option>\n                </md-select>\n                <div ng-messages="allConditionForm.value.$error" ng-show="allConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newAllCondition" ng-click="vm.saveAllCondition()" class="send-button md-accent md-raised" ng-disabled="allConditionForm.$invalid || allConditionForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newAllCondition" ng-click="vm.addNewAllCondition()" class="send-button md-accent md-raised" ng-disabled="allConditionForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_ALLCONDITION" translate-attr-aria-label="TOOLS.ADD_ALLCONDITION">\n                    ADD ALLCONDITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newAllCondition" ng-click="vm.deleteAllCondition($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/triggers/edit/anyconditions/dialog.html",'<md-dialog class="anyCondition-dialog" aria-label="New AnyCondition">\n    <form name="anyConditionForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.FIELD">Field</label>\n                <md-select ng-model="vm.anyCondition.field" required autofocus>\n\n                    <md-option ng-value="\'queue\'"> {{ \'TOOLS.QUEUE\' | translate }}</md-option>\n\n                    <md-option ng-value="\'lastevent\'"> {{ \'TOOLS.CALL_STATUS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'routeId\'"> {{ \'TOOLS.OUTBOUNDROUTE\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.field.$error" ng-show="anyConditionForm.field.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.FIELD_REQUIRED">Field field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.OPERATOR">Operator</label>\n                <md-select ng-model="vm.anyCondition.operator" required>\n\n                    <md-option ng-value="\'equals\'"> {{ \'TOOLS.EQUALS\' | translate }}</md-option>\n\n                    <md-option ng-value="\'not_equals\'"> {{ \'TOOLS.NOT_EQUALS\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.operator.$error" ng-show="anyConditionForm.operator.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OPERATOR_REQUIRED">Operator field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.anyCondition.field == \'queue\'" class="md-block">\n                <label translate="TOOLS.QUEUE">Queue</label>\n                <md-select ng-model="vm.anyCondition.value" required>\n                    <md-option ng-value="value.name" ng-repeat="value in vm.queues">{{ value.name }}</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.value.$error" ng-show="anyConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.anyCondition.field == \'routeId\'" class="md-block">\n                <label translate="TOOLS.OUTBOUNDROUTE">OutboundRoute</label>\n                <md-select ng-model="vm.anyCondition.value" required>\n                    <md-option ng-value="value.id" ng-repeat="value in vm.outboundRoutes">{{ value.exten }}</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.value.$error" ng-show="anyConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.OUTBOUNDROUTE_REQUIRED">OutboundRoute field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.anyCondition.field == \'lastevent\'" class="md-block">\n                <label translate="TOOLS.VALUE">Value</label>\n                <md-select ng-model="vm.anyCondition.value" required>\n                    <md-option ng-value="\'abandoned\'">Abandoned</md-option>\n                    <md-option ng-value="\'complete\'">Hangup</md-option>\n                    <md-option ng-value="\'rejected\'">Rejected</md-option>\n                    <md-option ng-value="\'called\'">Ringing</md-option>\n                    <md-option ng-value="\'connect\'">Up</md-option>\n                </md-select>\n                <div ng-messages="anyConditionForm.value.$error" ng-show="anyConditionForm.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newAnyCondition" ng-click="vm.saveAnyCondition()" class="send-button md-accent md-raised" ng-disabled="anyConditionForm.$invalid || anyConditionForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newAnyCondition" ng-click="vm.addNewAnyCondition()" class="send-button md-accent md-raised" ng-disabled="anyConditionForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_ANYCONDITION" translate-attr-aria-label="TOOLS.ADD_ANYCONDITION">\n                    ADD ANYCONDITION\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newAnyCondition" ng-click="vm.deleteAnyCondition($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/triggers/edit/view.html",'<div id="tools-trigger" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-triggers-button md-icon-button" aria-label="Go to triggers" ng-click="vm.gotoTriggers()" translate translate-attr-aria-label="TOOLS.GO_TO_TRIGGERS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.trigger.userpic" class="trigger-image" hide-xs>\n                    <img ng-src="api/users/{{vm.trigger.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.trigger.userpic" class="trigger-image" hide-xs>\n                    <img ng-src="assets/images/business/triggers.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.trigger.id}} {{vm.trigger.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.trigger.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveTrigger()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (allconditionsForm.$invalid) || (anyconditionsForm.$invalid) || (actionsForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trigger-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.trigger.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CHANNEL">Channel</label>\n                                <md-select ng-model="vm.trigger.channel" required ng-disabled="true">\n\n                                    <md-option ng-value="\'voice\'"> {{ \'TOOLS.VOICE\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.channel.$error" ng-show="generalForm.channel.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CHANNEL_REQUIRED">Channel field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.trigger.status" aria-label="Status"><span translate="TOOLS.STATUS">Status</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.trigger.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.CONDITIONS&ACTIONS">CONDITIONS&ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trigger-detail-form-container allconditions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="TriggerAllConditionsController as vm_dc" ng-init="vm_dc.init(vm.trigger)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedTriggerAllConditions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="TOOLS.ALLCONDITIONS">AllConditions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditTriggerAllCondition($event)" aria-label="add allCondition" translate translate-attr-label="TOOLS.ADD_ALLCONDITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedTriggerAllConditions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedTriggerAllConditions.length}} {{vm_dc.selectedTriggerAllConditions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedTriggerAllConditions($event)" aria-label="delete selected" translate translate-attr-label="TRIGGERS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedTriggerAllConditions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getTriggerAllConditions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="field">{{ \'TOOLS.FIELD\' | translate }}</th>\n                                            <th md-column md-order-by="operator">{{ \'TOOLS.OPERATOR\' | translate }}</th>\n                                            <th md-column md-order-by="value">{{ \'TOOLS.VALUE\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'TOOLS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="allCondition" md-select-id="id" ng-repeat="allCondition in vm_dc.triggerAllConditions.rows">\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" md-cell>{{allCondition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayfield[allCondition.field].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayoperator[allCondition.operator].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" ng-if="allCondition.field == \'queue\'" md-cell>{{ value = vm_dc.queues[allCondition.value]; value.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" ng-if="allCondition.field == \'routeId\'" md-cell>{{ value = vm_dc.outboundRoutes[allCondition.value]; value.exten }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" ng-if="allCondition.field == \'lastevent\'" md-cell>{{ vm_dc.arrayvalue[allCondition.value].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" md-cell>{{allCondition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditTriggerAllCondition($event, allCondition)" translate="TOOLS.EDIT_ALLCONDITION">\n                                                                Edit AllCondition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(allCondition, $event)" translate="TOOLS.DELETE_ALLCONDITION">\n                                                                Delete AllCondition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.triggerAllConditions.rows.length">\n                                            <td md-cell colspan="9">\n                                                <span class="text-boxed-ligth" translate="TOOLS.NO_ALLCONDITION_AVAILABLE">No allcondition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.triggerAllConditions.count}}" md-on-paginate="vm_dc.getTriggerAllConditions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                    <div class="trigger-detail-form-container anyconditions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="TriggerAnyConditionsController as vm_dc" ng-init="vm_dc.init(vm.trigger)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedTriggerAnyConditions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="TOOLS.ANYCONDITIONS">AnyConditions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditTriggerAnyCondition($event)" aria-label="add anyCondition" translate translate-attr-label="TOOLS.ADD_ANYCONDITION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedTriggerAnyConditions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedTriggerAnyConditions.length}} {{vm_dc.selectedTriggerAnyConditions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedTriggerAnyConditions($event)" aria-label="delete selected" translate translate-attr-label="TRIGGERS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedTriggerAnyConditions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getTriggerAnyConditions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="field">{{ \'TOOLS.FIELD\' | translate }}</th>\n                                            <th md-column md-order-by="operator">{{ \'TOOLS.OPERATOR\' | translate }}</th>\n                                            <th md-column md-order-by="value">{{ \'TOOLS.VALUE\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'TOOLS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="anyCondition" md-select-id="id" ng-repeat="anyCondition in vm_dc.triggerAnyConditions.rows">\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" md-cell>{{anyCondition.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayfield[anyCondition.field].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayoperator[anyCondition.operator].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" ng-if="anyCondition.field == \'queue\'" md-cell>{{ value = vm_dc.queues[anyCondition.value]; value.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" ng-if="anyCondition.field == \'routeId\'" md-cell>{{ value = vm_dc.outboundRoutes[anyCondition.value]; value.exten }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" ng-if="anyCondition.field == \'lastevent\'" md-cell>{{ vm_dc.arrayvalue[anyCondition.value].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" md-cell>{{anyCondition.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditTriggerAnyCondition($event, anyCondition)" translate="TOOLS.EDIT_ANYCONDITION">\n                                                                Edit AnyCondition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(anyCondition, $event)" translate="TOOLS.DELETE_ANYCONDITION">\n                                                                Delete AnyCondition\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.triggerAnyConditions.rows.length">\n                                            <td md-cell colspan="9">\n                                                <span class="text-boxed-ligth" translate="TOOLS.NO_ANYCONDITION_AVAILABLE">No anycondition available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.triggerAnyConditions.count}}" md-on-paginate="vm_dc.getTriggerAnyConditions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                    <div class="trigger-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="TriggerActionsController as vm_dc" ng-init="vm_dc.init(vm.trigger)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedTriggerActions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="TOOLS.ACTIONS">Actions</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditTriggerAction($event)" aria-label="add action" translate translate-attr-label="TOOLS.ADD_ACTION">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedTriggerActions.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedTriggerActions.length}} {{vm_dc.selectedTriggerActions.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedTriggerActions($event)" aria-label="delete selected" translate translate-attr-label="TRIGGERS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedTriggerActions" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getTriggerActions">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                            <th md-column md-order-by="action">{{ \'TOOLS.ACTION\' | translate }}</th>\n                                            <th md-column md-order-by="data1">{{ \'TOOLS.TYPE\' | translate }}</th>\n                                            <th md-column md-order-by="data2">{{ \'TOOLS.INFO\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'TOOLS.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="action" md-select-id="id" ng-repeat="action in vm_dc.triggerActions.rows">\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" md-cell>{{action.id}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" md-cell>{{ \'TOOLS.\' + vm_dc.arrayaction[action.action].option | uppercase | translate }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'browser\'" md-cell>{{ vm_dc.browserValues[action.data1].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'contactManager\'" md-cell>{{ data1 = vm_dc.lists[action.data1]; data1.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'urlForward\'" md-cell>{{ vm_dc.urlForwardValues[action.data1].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="!action.data2" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'urlForward\'" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\'" md-cell>{{ vm_dc.integrationValues[action.data1].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\' && action.data1 == \'zendesk\'" md-cell>{{ data2 = vm_dc.zendeskAccounts[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\' && action.data1 == \'salesforce\'" md-cell>{{ data2 = vm_dc.salesforceAccounts[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\' && action.data1 == \'sugarcrm\'" md-cell>{{ data2 = vm_dc.sugarcrmAccounts[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'integration\' && action.data1 == \'freshdesk\'" md-cell>{{ data2 = vm_dc.freshdeskAccounts[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'motionbar\'" md-cell>{{ vm_dc.motionbarValues[action.data1].option }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'motionbar\' && action.data1 == \'1\'" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'motionbar\' && action.data1 == \'2\'" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'motionbar\' && action.data1 == \'0\'" md-cell>{{ data2 = vm_dc.templates[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'browser\' && action.data1 == \'0\'" md-cell>{{ data2 = vm_dc.templates[action.data2]; data2.name }}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" ng-if="action.action == \'browser\' && action.data1 == \'1\'" md-cell>{{action.data2}}</td>\n                                            <td ng-click="vm_dc.createOrEditTriggerAction($event, action)" md-cell>{{action.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.createOrEditTriggerAction($event, action)" translate="TOOLS.EDIT_ACTION">\n                                                                Edit Action\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(action, $event)" translate="TOOLS.DELETE_ACTION">\n                                                                Delete Action\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.triggerActions.rows.length">\n                                            <td md-cell colspan="26">\n                                                <span class="text-boxed-ligth" translate="TOOLS.NO_ACTION_AVAILABLE">No action available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.triggerActions.count}}" md-on-paginate="vm_dc.getTriggerActions" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/triggers/triggers.html",'<div id="triggers" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.TRIGGERS">Triggers</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTriggers.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTriggers =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-triggers-count">\n                    <span>{{vm.selectedTriggers.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TRIGGERS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTriggers()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTriggers()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTriggers" filename="triggers.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTriggers($event)" aria-label="delete selected" translate translate-attr-label="TRIGGERS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TRIGGER TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTriggers" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTriggers">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="channel">{{ \'TOOLS.CHANNEL\' | translate }}</th>\n                                <th md-column md-order-by="status">{{ \'TOOLS.STATUS\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.triggers.rows.length">\n                                <td md-cell colspan="6">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="trigger" md-select-id="id" ng-repeat="trigger in vm.triggers.rows">\n                                <td md-cell ng-if="trigger.userpic"><img class="avatar" alt="{{trigger.name}}" ng-src="api/users/{{trigger.id}}/avatar" /></td>\n                                <td md-cell ng-if="!trigger.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{trigger.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="id ">{{trigger.id}}</td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="name ">{{trigger.name}}</td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="channel ">{{ \'TOOLS.\' + vm.arraychannel[trigger.channel].option | uppercase | translate }}</td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="status ">\n                                    <md-icon md-colors="{color: {{trigger.status ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{trigger.status ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditTrigger($event, trigger)" md-cell class="description ">{{trigger.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(trigger, $event)" translate="TOOLS.EDIT_TRIGGER">\n                                                    Edit Trigger\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(trigger, $event)" translate="TOOLS.DELETE_TRIGGER">\n                                                    Delete Trigger\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.triggers.count}}" md-on-paginate="vm.getTriggers" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TRIGGER TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TRIGGER BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-trigger-button" ng-click="vm.createOrEditTrigger($event)" aria-label="add trigger" translate translate-attr-aria-label="TOOLS.ADD_TRIGGER">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TRIGGER BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/trunks/create/dialog.html",'<md-dialog class="trunk-dialog" aria-label="New Trunk">\n    <form name="trunkForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.trunk.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="!vm.newTrunk">\n                <div ng-messages="trunkForm.name.$error" ng-show="trunkForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="TOOLS.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.trunk.active" aria-label="active"><span translate="TOOLS.ACTIVE">active</span></md-switch>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.HOST">host</label>\n                <input type="text" name="host" ng-model="vm.trunk.host" required>\n                <div class="hint"><span translate="TOOLS.HELP.HOST"></span></div>\n                <div ng-messages="trunkForm.host.$error" ng-show="trunkForm.host.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.HOST_REQUIRED">host field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.SECRET">secret</label>\n                <input type="password" name="secret" ng-model="vm.trunk.secret" placeholder="Password" translate translate-attr-placeholder="TOOLS.PASSWORD">\n                <div class="hint"><span translate="TOOLS.HELP.SECRET"></span></div>\n                <div ng-messages="trunkForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newTrunk ">\n                <label translate="TOOLS.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="secret" name="confirmPassword" ng-model="confirmPassword">\n                <div class="hint"><span translate="TOOLS.HELP.SECRET"></span></div>\n                <div ng-messages="trunkForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="TOOLS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DEFAULTUSER">defaultuser</label>\n                <input type="text" name="defaultuser" ng-model="vm.trunk.defaultuser" required>\n                <div class="hint"><span translate="TOOLS.HELP.DEFAULTUSER"></span></div>\n                <div ng-messages="trunkForm.defaultuser.$error" ng-show="trunkForm.defaultuser.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DEFAULTUSER_REQUIRED">defaultuser field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.REGISTRY">registry</label>\n                <input type="text" name="registry" ng-model="vm.trunk.registry">\n                <div class="hint"><span translate="TOOLS.HELP.REGISTRY"></span></div>\n                <div ng-messages="trunkForm.registry.$error" ng-show="trunkForm.registry.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.REGISTRY_REQUIRED">registry field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.trunk.description">\n                <div ng-messages="trunkForm.description.$error" ng-show="trunkForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newTrunk" ng-click="vm.saveTrunk()" class="send-button md-accent md-raised" ng-disabled="trunkForm.$invalid || trunkForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newTrunk" ng-click="vm.addNewTrunk()" class="send-button md-accent md-raised" ng-disabled="trunkForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_TRUNK" translate-attr-aria-label="TOOLS.ADD_TRUNK">\n                    ADD TRUNK\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newTrunk" ng-click="vm.deleteTrunk($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/trunks/edit/view.html",'<div id="tools-trunk" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-trunks-button md-icon-button" aria-label="Go to trunks" ng-click="vm.gotoTrunks()" translate translate-attr-aria-label="TOOLS.GO_TO_TRUNKS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.trunk.userpic" class="trunk-image" hide-xs>\n                    <img ng-src="api/users/{{vm.trunk.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.trunk.userpic" class="trunk-image" hide-xs>\n                    <img ng-src="assets/images/business/trunks.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.trunk.id}} {{vm.trunk.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="TOOLS.CREATED_AT"></span> <span>{{vm.trunk.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveTrunk()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (advancedForm.$invalid) || (otherFieldsForm.$invalid)" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trunk-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.trunk.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                    <div ng-message="pattern">\n                                        <span translate="TOOLS.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.trunk.active" aria-label="active"><span translate="TOOLS.ACTIVE">active</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.HOST">host</label>\n                                <input type="text" name="host" ng-model="vm.trunk.host" required>\n                                <div class="hint"><span translate="TOOLS.HELP.HOST"></span></div>\n                                <div ng-messages="generalForm.host.$error" ng-show="generalForm.host.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.HOST_REQUIRED">host field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.SECRET">secret</label>\n                                <input type="password" name="secret" ng-model="vm.trunk.secret" placeholder="Password" translate translate-attr-placeholder="TOOLS.PASSWORD">\n                                <div class="hint"><span translate="TOOLS.HELP.SECRET"></span></div>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newTrunk ">\n                                <label translate="TOOLS.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="secret" name="confirmPassword" ng-model="confirmPassword">\n                                <div class="hint"><span translate="TOOLS.HELP.SECRET"></span></div>\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="TOOLS.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DEFAULTUSER">defaultuser</label>\n                                <input type="text" name="defaultuser" ng-model="vm.trunk.defaultuser" required>\n                                <div class="hint"><span translate="TOOLS.HELP.DEFAULTUSER"></span></div>\n                                <div ng-messages="generalForm.defaultuser.$error" ng-show="generalForm.defaultuser.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DEFAULTUSER_REQUIRED">defaultuser field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CONTEXT">context</label>\n                                <md-select ng-model="vm.trunk.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.CONTEXT"></span></div>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CONTEXT_REQUIRED">context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CALLERID">callerid</label>\n                                <input type="text" name="callerid" ng-model="vm.trunk.callerid" required>\n                                <div class="hint"><span translate="TOOLS.HELP.CALLERID"></span></div>\n                                <div ng-messages="generalForm.callerid.$error" ng-show="generalForm.callerid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CALLERID_REQUIRED">callerid field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.TYPE">Type</label>\n                                <md-select ng-model="vm.trunk.type" required>\n                                    <md-option ng-value="\'friend\'">Friend</md-option>\n                                    <md-option ng-value="\'user\'">User</md-option>\n                                    <md-option ng-value="\'peer\'">Peer</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.TYPE"></span></div>\n                                <div ng-messages="generalForm.type.$error" ng-show="generalForm.type.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.TYPE_REQUIRED">Type field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DTMFMODE">dtmfmode</label>\n                                <md-select ng-model="vm.trunk.dtmfmode" required>\n                                    <md-option ng-value="\'rfc2833\'">rfc2833</md-option>\n                                    <md-option ng-value="\'info\'">info</md-option>\n                                    <md-option ng-value="\'shortinfo\'">shortinfo</md-option>\n                                    <md-option ng-value="\'inband\'">inband</md-option>\n                                    <md-option ng-value="\'auto\'">auto</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.DTMFMODE"></span></div>\n                                <div ng-messages="generalForm.dtmfmode.$error" ng-show="generalForm.dtmfmode.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DTMFMODE_REQUIRED">dtmfmode field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.NAT">nat</label>\n                                <md-select ng-model="vm.trunk.nat" required multiple>\n                                    <md-option ng-value="\'force_rport\'">force_rport</md-option>\n                                    <md-option ng-value="\'comedia\'">comedia</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'never\'">never</md-option>\n                                    <md-option ng-value="\'route\'">route</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.NAT"></span></div>\n                                <div ng-messages="generalForm.nat.$error" ng-show="generalForm.nat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.NAT_REQUIRED">nat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.QUALIFY">qualify</label>\n                                <md-select ng-model="vm.trunk.qualify" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'user\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.QUALIFY"></span></div>\n                                <div ng-messages="generalForm.qualify.$error" ng-show="generalForm.qualify.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.QUALIFY_REQUIRED">qualify field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.ALLOWCODECS">AllowCodecs</label>\n                                <md-select ng-model="vm.trunk.allow" required multiple>\n                                    <md-option ng-value="\'alaw\'">alaw</md-option>\n                                    <md-option ng-value="\'ulaw\'">ulaw</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                    <md-option ng-value="\'g723\'">g723</md-option>\n                                    <md-option ng-value="\'g726\'">g726</md-option>\n                                    <md-option ng-value="\'g722\'">g722</md-option>\n                                    <md-option ng-value="\'g729\'">g729</md-option>\n                                    <md-option ng-value="\'ilbc\'">ilbc</md-option>\n                                    <md-option ng-value="\'opus\'">opus</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.ALLOWCODECS"></span></div>\n                                <div ng-messages="generalForm.allow.$error" ng-show="generalForm.allow.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.ALLOWCODECS_REQUIRED">AllowCodecs field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.INSECURE">insecure</label>\n                                <md-select ng-model="vm.trunk.insecure" required multiple>\n                                    <md-option ng-value="\'port\'">port</md-option>\n                                    <md-option ng-value="\'invite\'">invite</md-option>\n                                    <md-option ng-value="\'very\'">very</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.INSECURE"></span></div>\n                                <div ng-messages="generalForm.insecure.$error" ng-show="generalForm.insecure.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.INSECURE_REQUIRED">insecure field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CALL_LIMIT">call_limit</label>\n                                <input type="number" name="call_limit" ng-model="vm.trunk.call_limit">\n                                <div class="hint"><span translate="TOOLS.HELP.CALL_LIMIT"></span></div>\n                                <div ng-messages="generalForm.call_limit.$error" ng-show="generalForm.call_limit.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CALL_LIMIT_REQUIRED">call_limit field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.trunk.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trunk-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.REGISTRY">registry</label>\n                                <input type="text" name="registry" ng-model="vm.trunk.registry" autofocus>\n                                <div class="hint"><span translate="TOOLS.HELP.REGISTRY"></span></div>\n                                <div ng-messages="advancedForm.registry.$error" ng-show="advancedForm.registry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.REGISTRY_REQUIRED">registry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.DIRECTMEDIA">directmedia</label>\n                                <md-select ng-model="vm.trunk.directmedia" required>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'nonat\'">nonat</md-option>\n                                    <md-option ng-value="\'update\'">update</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.DIRECTMEDIA"></span></div>\n                                <div ng-messages="advancedForm.directmedia.$error" ng-show="advancedForm.directmedia.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.DIRECTMEDIA_REQUIRED">directmedia field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.CALLCOUNTER">callcounter</label>\n                                <md-select ng-model="vm.trunk.callcounter" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.CALLCOUNTER"></span></div>\n                                <div ng-messages="advancedForm.callcounter.$error" ng-show="advancedForm.callcounter.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.CALLCOUNTER_REQUIRED">callcounter field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.FROMDOMAIN">fromdomain</label>\n                                <input type="text" name="fromdomain" ng-model="vm.trunk.fromdomain">\n                                <div class="hint"><span translate="TOOLS.HELP.FROMDOMAIN"></span></div>\n                                <div ng-messages="advancedForm.fromdomain.$error" ng-show="advancedForm.fromdomain.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.FROMDOMAIN_REQUIRED">fromdomain field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.FROMUSER">fromuser</label>\n                                <input type="text" name="fromuser" ng-model="vm.trunk.fromuser">\n                                <div class="hint"><span translate="TOOLS.HELP.FROMUSER"></span></div>\n                                <div ng-messages="advancedForm.fromuser.$error" ng-show="advancedForm.fromuser.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.FROMUSER_REQUIRED">fromuser field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.OUTBOUNDPROXY">outboundproxy</label>\n                                <input type="text" name="outboundproxy" ng-model="vm.trunk.outboundproxy">\n                                <div class="hint"><span translate="TOOLS.HELP.OUTBOUNDPROXY"></span></div>\n                                <div ng-messages="advancedForm.outboundproxy.$error" ng-show="advancedForm.outboundproxy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.OUTBOUNDPROXY_REQUIRED">outboundproxy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.ADD_PHONE_TO_URI">Add_phone_to_URI</label>\n                                <md-select ng-model="vm.trunk.usereqphone" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.ADD_PHONE_TO_URI"></span></div>\n                                <div ng-messages="advancedForm.usereqphone.$error" ng-show="advancedForm.usereqphone.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.ADD_PHONE_TO_URI_REQUIRED">Add_phone_to_URI field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.TRUST_REMOTE_PARTY_ID">Trust_Remote_Party_ID</label>\n                                <md-select ng-model="vm.trunk.trustrpid" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.TRUST_REMOTE_PARTY_ID"></span></div>\n                                <div ng-messages="advancedForm.trustrpid.$error" ng-show="advancedForm.trustrpid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.TRUST_REMOTE_PARTY_ID_REQUIRED">Trust_Remote_Party_ID field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.SEND_REMOTE_PARTY_ID_HEADER">Send_Remote_Party_ID_header</label>\n                                <md-select ng-model="vm.trunk.sendrpid" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.SEND_REMOTE_PARTY_ID_HEADER"></span></div>\n                                <div ng-messages="advancedForm.sendrpid.$error" ng-show="advancedForm.sendrpid.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.SEND_REMOTE_PARTY_ID_HEADER_REQUIRED">Send_Remote_Party_ID_header field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.ENCRYPTION">encryption</label>\n                                <md-select ng-model="vm.trunk.encryption" required>\n\n                                    <md-option ng-value="\'yes\'"> {{ \'TOOLS.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'TOOLS.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.ENCRYPTION"></span></div>\n                                <div ng-messages="advancedForm.encryption.$error" ng-show="advancedForm.encryption.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.ENCRYPTION_REQUIRED">encryption field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.PORT">port</label>\n                                <input type="number" name="port" ng-model="vm.trunk.port">\n                                <div class="hint"><span translate="TOOLS.HELP.PORT"></span></div>\n                                <div ng-messages="advancedForm.port.$error" ng-show="advancedForm.port.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.PORT_REQUIRED">port field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.TRANSPORT">Transport</label>\n                                <md-select ng-model="vm.trunk.transport" required multiple>\n                                    <md-option ng-value="\'udp\'">udp</md-option>\n                                    <md-option ng-value="\'tcp\'">tcp</md-option>\n                                    <md-option ng-value="\'ws\'">ws</md-option>\n                                    <md-option ng-value="\'wss\'">wss</md-option>\n                                    <md-option ng-value="\'tls\'">tls</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="TOOLS.HELP.TRANSPORT"></span></div>\n                                <div ng-messages="advancedForm.transport.$error" ng-show="advancedForm.transport.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="TOOLS.ERRORS.TRANSPORT_REQUIRED">Transport field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="TOOLS.OTHERFIELDS">OTHERFIELDS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="trunk-detail-form-container otherfields md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="TOOLS.OTHERFIELDS">OTHERFIELDS</div>\n                        </div>\n                        <form name="otherFieldsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="TOOLS.OTHERFIELDS">otherFields</label>\n                                <textarea ng-model="vm.trunk.otherFields" md-maxlength="150" max-rows="5" autofocus></textarea>\n                                <div class="hint"><span translate="TOOLS.HELP.OTHERFIELDS"></span></div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/tools/views/trunks/trunks.html",'<div id="trunks" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.TRUNKS">Trunks</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedTrunks.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedTrunks =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-trunks-count">\n                    <span>{{vm.selectedTrunks.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="TRUNKS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllTrunks()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectTrunks()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedTrunks" filename="trunks.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedTrunks($event)" aria-label="delete selected" translate translate-attr-label="TRUNKS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- TRUNK TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedTrunks" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTrunks">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="active">{{ \'TOOLS.ACTIVE\' | translate }}</th>\n                                <th md-column md-order-by="host">{{ \'TOOLS.HOST\' | translate }}</th>\n                                <th md-column md-order-by="registry">{{ \'TOOLS.REGISTRY\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.trunks.rows.length">\n                                <td md-cell colspan="7">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="trunk" md-select-id="id" ng-repeat="trunk in vm.trunks.rows">\n                                <td md-cell ng-if="trunk.userpic"><img class="avatar" alt="{{trunk.name}}" ng-src="api/users/{{trunk.id}}/avatar" /></td>\n                                <td md-cell ng-if="!trunk.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{trunk.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="id ">{{trunk.id}}</td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="name ">{{trunk.name}}</td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="active ">\n                                    <md-icon md-colors="{color: {{trunk.active ? \'\\\'green\\\'\' : \'\\\'red\\\'\'}}}" md-font-icon="{{trunk.active ? \'icon-check\' : \'icon-close\'}}"></md-icon>\n                                </td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="host ">{{trunk.host}}</td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="registry ">{{trunk.registry}}</td>\n                                <td ng-click="vm.createOrEditTrunk($event, trunk)" md-cell class="description ">{{trunk.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(trunk, $event)" translate="TOOLS.EDIT_TRUNK">\n                                                    Edit Trunk\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(trunk, $event)" translate="TOOLS.DELETE_TRUNK">\n                                                    Delete Trunk\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.trunks.count}}" md-on-paginate="vm.getTrunks" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / TRUNK TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD TRUNK BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-trunk-button" ng-click="vm.createOrEditTrunk($event)" aria-label="add trunk" translate translate-attr-aria-label="TOOLS.ADD_TRUNK">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD TRUNK BUTTON --\x3e\n</div>'),e.put("app/main/apps/tools/views/variables/create/dialog.html",'<md-dialog class="variable-dialog" aria-label="New Variable">\n    <form name="variableForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.variable.name" required autofocus>\n                <div ng-messages="variableForm.name.$error" ng-show="variableForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLS.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.variable.description">\n                <div ng-messages="variableForm.description.$error" ng-show="variableForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLS.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVariable" ng-click="vm.saveVariable()" class="send-button md-accent md-raised" ng-disabled="variableForm.$invalid || variableForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVariable" ng-click="vm.addNewVariable()" class="send-button md-accent md-raised" ng-disabled="variableForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_VARIABLE" translate-attr-aria-label="TOOLS.ADD_VARIABLE">\n                    ADD VARIABLE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVariable" ng-click="vm.deleteVariable($event)" aria-label="DELETE" translate translate-attr-aria-label="TOOLS.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="TOOLS.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/tools/views/variables/variables.html",'<div id="variables" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-auto-fix" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="TOOLS.VARIABLES">Variables</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="TOOLS.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedVariables.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedVariables =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="TOOLS.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-variables-count">\n                    <span>{{vm.selectedVariables.length}}</span>\n                <span translate="TOOLS.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="VARIABLES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllVariables()" translate="TOOLS.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectVariables()" translate="TOOLS.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedVariables" filename="variables.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedVariables($event)" aria-label="delete selected" translate translate-attr-label="VARIABLES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- VARIABLE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedVariables" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVariables">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'TOOLS.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'TOOLS.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'TOOLS.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.variables.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="TOOLS.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="variable" md-select-id="id" ng-repeat="variable in vm.variables.rows">\n                                <td md-cell ng-if="variable.userpic"><img class="avatar" alt="{{variable.name}}" ng-src="api/users/{{variable.id}}/avatar" /></td>\n                                <td md-cell ng-if="!variable.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{variable.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditVariable($event, variable)" md-cell class="id ">{{variable.id}}</td>\n                                <td ng-click="vm.createOrEditVariable($event, variable)" md-cell class="name ">{{variable.name}}</td>\n                                <td ng-click="vm.createOrEditVariable($event, variable)" md-cell class="description ">{{variable.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="TOOLS.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(variable, $event)" translate="TOOLS.EDIT_VARIABLE">\n                                                    Edit Variable\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(variable, $event)" translate="TOOLS.DELETE_VARIABLE">\n                                                    Delete Variable\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.variables.count}}" md-on-paginate="vm.getVariables" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / VARIABLE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD VARIABLE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-variable-button" ng-click="vm.createOrEditVariable($event)" aria-label="add variable" translate translate-attr-aria-label="TOOLS.ADD_VARIABLE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD VARIABLE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/chanSpies/chanSpies.html",'<div id="chanSpies" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.CHANSPIES">ChanSpies</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedChanSpies.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedChanSpies =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-chanSpies-count">\n                    <span>{{vm.selectedChanSpies.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CHANSPIES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllChanSpies()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectChanSpies()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedChanSpies" filename="chanSpies.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedChanSpies($event)" aria-label="delete selected" translate translate-attr-label="CHANSPIES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CHANSPY TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedChanSpies" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getChanSpies">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="prefix">{{ \'VOICE.PREFIX\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.chanSpies.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="chanSpy" md-select-id="id" ng-repeat="chanSpy in vm.chanSpies.rows">\n                                <td md-cell ng-if="chanSpy.userpic"><img class="avatar" alt="{{chanSpy.name}}" ng-src="api/users/{{chanSpy.id}}/avatar" /></td>\n                                <td md-cell ng-if="!chanSpy.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{chanSpy.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditchanSpy($event, chanSpy)" md-cell class="id ">{{chanSpy.id}}</td>\n                                <td ng-click="vm.createOrEditchanSpy($event, chanSpy)" md-cell class="name ">{{chanSpy.name}}</td>\n                                <td ng-click="vm.createOrEditchanSpy($event, chanSpy)" md-cell class="prefix ">{{chanSpy.prefix}}</td>\n                                <td ng-click="vm.createOrEditchanSpy($event, chanSpy)" md-cell class="description ">{{chanSpy.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(chanSpy, $event)" translate="VOICE.EDIT_CHANSPY">\n                                                    Edit chanSpy\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(chanSpy, $event)" translate="VOICE.DELETE_CHANSPY">\n                                                    Delete chanSpy\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.chanSpies.count}}" md-on-paginate="vm.getChanSpies" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CHANSPY TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CHANSPY BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-chanSpy-button" ng-click="vm.createOrEditchanSpy($event)" aria-label="add chanSpy" translate translate-attr-aria-label="VOICE.ADD_CHANSPY">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CHANSPY BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/chanSpies/create/dialog.html",'<md-dialog class="chanSpy-dialog" aria-label="New chanSpy">\n    <form name="chanSpyForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.chanSpy.name" required autofocus>\n                <div ng-messages="chanSpyForm.name.$error" ng-show="chanSpyForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PREFIX">Prefix</label>\n                <input type="text" name="prefix" ng-model="vm.chanSpy.prefix" required>\n                <div ng-messages="chanSpyForm.prefix.$error" ng-show="chanSpyForm.prefix.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PREFIX_REQUIRED">Prefix field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <md-select ng-model="vm.chanSpy.options" required multiple>\n                    <md-option ng-value="\'b\'">b: Only spy on channels involved in a bridged call.</md-option>\n                    <md-option ng-value="\'B\'">B: Instead of whispering on a single channel barge in on both channels involved in the call.</md-option>\n                    <md-option ng-value="\'E\'">E: Exit when the spied-on channel hangs up.</md-option>\n                    <md-option ng-value="\'o\'">o: Only listen to audio coming from this channel.</md-option>\n                    <md-option ng-value="\'q\'">q: Don\'t play a beep when beginning to spy on a channel, or speak the selected channel name.</md-option>\n                    <md-option ng-value="\'s\'">s: Skip the playback of the channel type (i.e. SIP, IAX, etc) when speaking the selected channel name.</md-option>\n                    <md-option ng-value="\'S\'">S: Stop when no more channels are left to spy on.</md-option>\n                    <md-option ng-value="\'w\'">w: Enable whisper mode, so the spying channel can talk to the spied-on channel.</md-option>\n                    <md-option ng-value="\'W\'">W: Enable private whisper mode, so the spying channel can talk to the spied-on channel but cannot listen to that channel.</md-option>\n                </md-select>\n                <div ng-messages="chanSpyForm.options.$error" ng-show="chanSpyForm.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.chanSpy.description">\n                <div ng-messages="chanSpyForm.description.$error" ng-show="chanSpyForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newchanSpy" ng-click="vm.savechanSpy()" class="send-button md-accent md-raised" ng-disabled="chanSpyForm.$invalid || chanSpyForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newchanSpy" ng-click="vm.addNewchanSpy()" class="send-button md-accent md-raised" ng-disabled="chanSpyForm.$invalid" aria-label="ADD" translate="VOICE.ADD_CHANSPY" translate-attr-aria-label="VOICE.ADD_CHANSPY">\n                    ADD CHANSPY\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newchanSpy" ng-click="vm.deletechanSpy($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/chanSpies/edit/view.html",'<div id="voice-chanSpy" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-chanSpies-button md-icon-button" aria-label="Go to chanSpies" ng-click="vm.gotoChanSpies()" translate translate-attr-aria-label="VOICE.GO_TO_CHANSPIES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.chanSpy.userpic" class="chanSpy-image" hide-xs>\n                    <img ng-src="api/users/{{vm.chanSpy.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.chanSpy.userpic" class="chanSpy-image" hide-xs>\n                    <img ng-src="assets/images/business/chanSpies.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.chanSpy.id}} {{vm.chanSpy.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.chanSpy.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.savechanSpy()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="chanSpy-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.chanSpy.name" required autofocus>\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PREFIX">Prefix</label>\n                                <input type="text" name="prefix" ng-model="vm.chanSpy.prefix" required>\n                                <div ng-messages="generalForm.prefix.$error" ng-show="generalForm.prefix.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PREFIX_REQUIRED">Prefix field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.OPTIONS">Options</label>\n                                <md-select ng-model="vm.chanSpy.options" required multiple>\n                                    <md-option ng-value="\'b\'">b: Only spy on channels involved in a bridged call.</md-option>\n                                    <md-option ng-value="\'B\'">B: Instead of whispering on a single channel barge in on both channels involved in the call.</md-option>\n                                    <md-option ng-value="\'E\'">E: Exit when the spied-on channel hangs up.</md-option>\n                                    <md-option ng-value="\'o\'">o: Only listen to audio coming from this channel.</md-option>\n                                    <md-option ng-value="\'q\'">q: Don\'t play a beep when beginning to spy on a channel, or speak the selected channel name.</md-option>\n                                    <md-option ng-value="\'s\'">s: Skip the playback of the channel type (i.e. SIP, IAX, etc) when speaking the selected channel name.</md-option>\n                                    <md-option ng-value="\'S\'">S: Stop when no more channels are left to spy on.</md-option>\n                                    <md-option ng-value="\'w\'">w: Enable whisper mode, so the spying channel can talk to the spied-on channel.</md-option>\n                                    <md-option ng-value="\'W\'">W: Enable private whisper mode, so the spying channel can talk to the spied-on channel but cannot listen to that channel.</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.options.$error" ng-show="generalForm.options.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chanSpy.auth" aria-label="Auth"><span translate="VOICE.AUTH">Auth</span></md-switch>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.chanSpy.auth">\n                                <label translate="VOICE.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.chanSpy.password" placeholder="Password" translate translate-attr-placeholder="VOICE.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newchanSpy  && vm.chanSpy.auth">\n                                <label translate="VOICE.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="VOICE.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.chanSpy.record" aria-label="Record"><span translate="VOICE.RECORD">Record</span></md-switch>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.chanSpy.record" class="md-block">\n                                <label translate="VOICE.RECORDINGFORMAT">recordingFormat</label>\n                                <md-select ng-model="vm.chanSpy.recordingFormat" required>\n                                    <md-option ng-value="\'wav\'">wav</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.recordingFormat.$error" ng-show="generalForm.recordingFormat.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.RECORDINGFORMAT_REQUIRED">recordingFormat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.chanSpy.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/contexts/contexts.html",'<div id="contexts" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.CONTEXTS">Contexts</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedContexts.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedContexts =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-contexts-count">\n                    <span>{{vm.selectedContexts.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="CONTEXTS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllContexts()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectContexts()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedContexts" filename="contexts.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedContexts($event)" aria-label="delete selected" translate translate-attr-label="CONTEXTS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- CONTEXT TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedContexts" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getContexts">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.contexts.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="context" md-select-id="id" ng-repeat="context in vm.contexts.rows">\n                                <td md-cell ng-if="context.userpic"><img class="avatar" alt="{{context.name}}" ng-src="api/users/{{context.id}}/avatar" /></td>\n                                <td md-cell ng-if="!context.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{context.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditContext($event, context)" md-cell class="id ">{{context.id}}</td>\n                                <td ng-click="vm.createOrEditContext($event, context)" md-cell class="name ">{{context.name}}</td>\n                                <td ng-click="vm.createOrEditContext($event, context)" md-cell class="description ">{{context.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editdialog(context, $event)" translate="VOICE.EDIT_CONTEXT">\n                                                    Edit Context\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(context, $event)" translate="VOICE.DELETE_CONTEXT">\n                                                    Delete Context\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.contexts.count}}" md-on-paginate="vm.getContexts" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / CONTEXT TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD CONTEXT BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-context-button" ng-click="vm.createOrEditContext($event)" aria-label="add context" translate translate-attr-aria-label="VOICE.ADD_CONTEXT">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD CONTEXT BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/contexts/create/dialog.html",'<md-dialog class="context-dialog" aria-label="New Context">\n    <form name="contextForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.context.name" required autofocus>\n                <div ng-messages="contextForm.name.$error" ng-show="contextForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.context.description">\n                <div ng-messages="contextForm.description.$error" ng-show="contextForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newContext" ng-click="vm.saveContext()" class="send-button md-accent md-raised" ng-disabled="contextForm.$invalid || contextForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newContext" ng-click="vm.addNewContext()" class="send-button md-accent md-raised" ng-disabled="contextForm.$invalid" aria-label="ADD" translate="VOICE.ADD_CONTEXT" translate-attr-aria-label="VOICE.ADD_CONTEXT">\n                    ADD CONTEXT\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newContext" ng-click="vm.deleteContext($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/create/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                <input type="text" name="exten" ng-model="vm.inboundroute.exten" required autofocus>\n                <div ng-messages="inboundrouteForm.exten.$error" ng-show="inboundrouteForm.exten.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.inboundroute.context" required>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteForm.context.$error" ng-show="inboundrouteForm.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.inboundroute.description">\n                <div ng-messages="inboundrouteForm.description.$error" ng-show="inboundrouteForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInboundRoute" ng-click="vm.saveInboundRoute()" class="send-button md-accent md-raised" ng-disabled="inboundrouteForm.$invalid || inboundrouteForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInboundRoute" ng-click="vm.addNewInboundRoute()" class="send-button md-accent md-raised" ng-disabled="inboundrouteForm.$invalid" aria-label="ADD" translate="VOICE.ADD_INBOUNDROUTE" translate-attr-aria-label="VOICE.ADD_INBOUNDROUTE">\n                    ADD INBOUNDROUTE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newInboundRoute" ng-click="vm.deleteInboundRoute($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/agi/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PROJECT">Project</label>\n                <md-select ng-model="vm.agi.project" required autofocus>\n                    <md-option ng-value="\'agi://127.0.0.1/square,{{project.name}}\'" ng-repeat="project in vm.projects">{{ project.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.project.$error" ng-show="inboundrouteFormApp.project.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PROJECT_REQUIRED">Project field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/custom/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.APPLICATION_NAME">Application_Name</label>\n                <input type="text" name="app" ng-model="vm.custom.app" required autofocus>\n                <div ng-messages="inboundrouteFormApp.app.$error" ng-show="inboundrouteFormApp.app.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.APPLICATION_NAME_REQUIRED">Application_Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ARGUMENTS">Arguments</label>\n                <input type="text" name="appdata" ng-model="vm.custom.appdata">\n                <div ng-messages="inboundrouteFormApp.appdata.$error" ng-show="inboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ARGUMENTS_REQUIRED">Arguments field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/dial/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TECHNOLOGY/RESOURCE">Technology/Resource</label>\n                <input type="text" name="tech" ng-model="vm.dial.tech" required autofocus>\n                <div ng-messages="inboundrouteFormApp.tech.$error" ng-show="inboundrouteFormApp.tech.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TECHNOLOGY/RESOURCE_REQUIRED">Technology/Resource field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.dial.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.dial.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.dial.url">\n                <div ng-messages="inboundrouteFormApp.url.$error" ng-show="inboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/externaldial/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TRUNK">Trunk</label>\n                <md-select ng-model="vm.externaldial.trunk" required autofocus>\n                    <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.trunk.$error" ng-show="inboundrouteFormApp.trunk.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONE">Phone</label>\n                <input type="text" name="phone" ng-model="vm.externaldial.phone" required>\n                <div ng-messages="inboundrouteFormApp.phone.$error" ng-show="inboundrouteFormApp.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.externaldial.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.externaldial.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.externaldial.url">\n                <div ng-messages="inboundrouteFormApp.url.$error" ng-show="inboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/goto/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.goto.context" required autofocus>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.context.$error" ng-show="inboundrouteFormApp.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.EXTENSION">Extension</label>\n                <input type="text" name="extension" ng-model="vm.goto.extension" required>\n                <div ng-messages="inboundrouteFormApp.extension.$error" ng-show="inboundrouteFormApp.extension.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.EXTENSION_REQUIRED">Extension field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PRIORITY">Priority</label>\n                <input type="text" name="priority" ng-model="vm.goto.priority" required>\n                <div ng-messages="inboundrouteFormApp.priority.$error" ng-show="inboundrouteFormApp.priority.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PRIORITY_REQUIRED">Priority field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/hangup/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.HANGUP_CAUSE">Hangup_Cause</label>\n                <md-select ng-model="vm.hangup.appdata" required autofocus>\n\n                    <md-option ng-value="\'1\'"> {{ \'VOICE.HANGUPCAUSE_1\' | translate }}</md-option>\n\n                    <md-option ng-value="\'16\'"> {{ \'VOICE.HANGUPCAUSE_16\' | translate }}</md-option>\n\n                    <md-option ng-value="\'17\'"> {{ \'VOICE.HANGUPCAUSE_17\' | translate }}</md-option>\n\n                    <md-option ng-value="\'18\'"> {{ \'VOICE.HANGUPCAUSE_18\' | translate }}</md-option>\n\n                    <md-option ng-value="\'21\'"> {{ \'VOICE.HANGUPCAUSE_21\' | translate }}</md-option>\n\n                    <md-option ng-value="\'22\'"> {{ \'VOICE.HANGUPCAUSE_22\' | translate }}</md-option>\n\n                    <md-option ng-value="\'27\'"> {{ \'VOICE.HANGUPCAUSE_27\' | translate }}</md-option>\n\n                    <md-option ng-value="\'38\'"> {{ \'VOICE.HANGUPCAUSE_38\' | translate }}</md-option>\n\n                    <md-option ng-value="\'41\'"> {{ \'VOICE.HANGUPCAUSE_41\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.appdata.$error" ng-show="inboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.HANGUP_CAUSE_REQUIRED">Hangup_Cause field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/internaldial/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.internaldial.user" required autofocus>\n                    <md-option ng-value="\'SIP/{{user.name}}\'" ng-repeat="user in vm.users">{{ user.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.user.$error" ng-show="inboundrouteFormApp.user.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.internaldial.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.internaldial.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.internaldial.url">\n                <div ng-messages="inboundrouteFormApp.url.$error" ng-show="inboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/interval/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.type">\n                    <md-option ng-value="type" ng-repeat=\'type in vm.types\'>{{ type | ucfirst }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.type === \'list\'">\n                <label translate="TOOLS.INTERVALS">Intervals</label>\n                <md-select ng-model="vm.interval.IntervalId">\n                    <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            \x3c!-- TIMERANGE START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.TIME_RANGE">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n            \x3c!-- TIMERANGE END --\x3e\n\n            \x3c!-- DAYSOFWEEK START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.WEEK_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.dayOfWeekFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.dayOfWeekTo">\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- DAYSOFWEEK END --\x3e\n\n            \x3c!-- MONTHDAY START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTH_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthDayFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthDayTo">\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTHDAY END --\x3e\n\n            \x3c!-- MONTH START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTHS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthTo">\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTH END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/playback/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AUDIO_FILES">Audio_Files</label>\n                <md-select ng-model="vm.playback.appdata" required autofocus>\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}\'" ng-repeat="appdata in vm.sounds">{{ appdata.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.appdata.$error" ng-show="inboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AUDIO_FILES_REQUIRED">Audio_Files field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.playback.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.playback.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/queue/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.QUEUE">Queue</label>\n                <md-select ng-model="vm.queue.queue" required autofocus>\n                    <md-option ng-value="queue.name" ng-repeat="queue in vm.queues">{{ queue.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.queue.$error" ng-show="inboundrouteFormApp.queue.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.queue.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="URL" ng-model="vm.queue.URL">\n                <div ng-messages="inboundrouteFormApp.URL.$error" ng-show="inboundrouteFormApp.URL.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ANNOUNCE_OVERRIDES">Announce_Overrides</label>\n                <md-select ng-model="vm.queue.sound">\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}\'" ng-repeat="sound in vm.sounds">{{ sound.name }}</md-option>\n                    <md-option ng-value="\'\'">None</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.sound.$error" ng-show="inboundrouteFormApp.sound.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ANNOUNCE_OVERRIDES_REQUIRED">Announce_Overrides field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.queue.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AGI">Agi</label>\n                <input type="text" name="agi" ng-model="vm.queue.agi">\n                <div ng-messages="inboundrouteFormApp.agi.$error" ng-show="inboundrouteFormApp.agi.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AGI_REQUIRED">Agi field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MACRO">Macro</label>\n                <input type="text" name="macro" ng-model="vm.queue.macro">\n                <div ng-messages="inboundrouteFormApp.macro.$error" ng-show="inboundrouteFormApp.macro.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MACRO_REQUIRED">Macro field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.GOSUB">GoSub</label>\n                <input type="text" name="gosub" ng-model="vm.queue.gosub">\n                <div ng-messages="inboundrouteFormApp.gosub.$error" ng-show="inboundrouteFormApp.gosub.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.GOSUB_REQUIRED">GoSub field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RULE">Rule</label>\n                <input type="text" name="rule" ng-model="vm.queue.rule">\n                <div ng-messages="inboundrouteFormApp.rule.$error" ng-show="inboundrouteFormApp.rule.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RULE_REQUIRED">Rule field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.POSITION">Position</label>\n                <input type="number" name="position" ng-model="vm.queue.position" min="0">\n                <div ng-messages="inboundrouteFormApp.position.$error" ng-show="inboundrouteFormApp.position.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.POSITION_REQUIRED">Position field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.queue.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/ringgroup/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.ringgroup.multipleUsers" required autofocus multiple>\n                    <md-option ng-value="\'SIP/{{multipleUsers.name}}\'" ng-repeat="multipleUsers in vm.users">{{ multipleUsers.name }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.multipleUsers.$error" ng-show="inboundrouteFormApp.multipleUsers.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.ringgroup.timeout" min="0">\n                <div ng-messages="inboundrouteFormApp.timeout.$error" ng-show="inboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.ringgroup.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.ringgroup.url">\n                <div ng-messages="inboundrouteFormApp.url.$error" ng-show="inboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/set/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VARIABLE">Variable</label>\n                <input type="text" name="name" ng-model="vm.set.name" required autofocus>\n                <div ng-messages="inboundrouteFormApp.name.$error" ng-show="inboundrouteFormApp.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VARIABLE_REQUIRED">Variable field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VALUE">Value</label>\n                <input type="text" name="value" ng-model="vm.set.value" required>\n                <div ng-messages="inboundrouteFormApp.value.$error" ng-show="inboundrouteFormApp.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/apps/voicemail/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New InboundRoute">\n    <form name="inboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MAILBOX@CONTEXT">Mailbox@Context</label>\n                <md-select ng-model="vm.voicemail.voiceMail" required autofocus>\n                    <md-option ng-value="\'{{voiceMail.mailbox}}@from-voicemail\'" ng-repeat="voiceMail in vm.voiceMails">{{ voiceMail.mailbox }}</md-option>\n                </md-select>\n                <div ng-messages="inboundrouteFormApp.voiceMail.$error" ng-show="inboundrouteFormApp.voiceMail.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MAILBOX@CONTEXT_REQUIRED">Mailbox@Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.voicemail.options">\n                <div ng-messages="inboundrouteFormApp.options.$error" ng-show="inboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="inboundrouteFormApp.$invalid || inboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/inboundroutes/edit/view.html",'<div id="voice-inboundroute" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-inboundroutes-button md-icon-button" aria-label="Go to inboundroutes" ng-click="vm.gotoInboundRoutes()" translate translate-attr-aria-label="VOICE.GO_TO_INBOUNDROUTES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.inboundroute.userpic" class="inboundroute-image" hide-xs>\n                    <img ng-src="api/users/{{vm.inboundroute.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.inboundroute.userpic" class="inboundroute-image" hide-xs>\n                    <img ng-src="assets/images/business/inboundroutes.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.inboundroute.id}} {{vm.inboundroute.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.inboundroute.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveInboundRoute()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (actionsForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="inboundroute-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                                <input type="text" name="exten" ng-model="vm.inboundroute.exten" required autofocus>\n                                <div ng-messages="generalForm.exten.$error" ng-show="generalForm.exten.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.CONTEXT">Context</label>\n                                <md-select ng-model="vm.inboundroute.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.inboundroute.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="inboundroute-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="InboundRouteActionsController as vm_ac" ng-init="vm_ac.init(vm.inboundroute)" class="content" md-background-bg layout="row" layout-align="start start">\n                            \x3c!-- SIDENAV --\x3e\n                            <div class="navigation-simple sidenav main-sidenav md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="20">\n                                \x3c!-- SIDENAV CONTENT --\x3e\n                                <md-list class="no-padding">\n                                    <md-subheader class="md-no-sticky">\n                                        <span>\n          Applications List\n        </span>\n                                    </md-subheader>\n                                </md-list>\n                                <md-divider></md-divider>\n                                <md-list ng-sortable="vm_ac.list">\n                                    <md-list-item class="handle" ng-repeat="a in vm_ac.apps">\n                                        <md-icon md-font-icon="{{a.icon}}" class="s16"></md-icon>\n                                        <p class="text-truncate" translate="VOICE.{{(a.alias || a.appType) | uppercase}}">{{a.alias || a.appType}}</p>\n                                    </md-list-item>\n                                </md-list>\n                                \x3c!-- / SIDENAV CONTENT --\x3e\n                            </div>\n                            \x3c!-- / SIDENAV --\x3e\n                            <div flex></div>\n                            \x3c!-- MAIN --\x3e\n                            <div class="main scrollable md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="75">\n                                <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_ac.selectedInboundRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">Drag & Drop Routing</span>\n                                        <div flex></div>\n                                        <ms-search-bar on-search="vm_ac.query.filter = query" on-collapse="vm_ac.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    </div>\n                                </md-toolbar>\n                                <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_ac.selectedInboundRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">{{vm_ac.selectedInboundRouteApps.length}} {{vm_ac.selectedInboundRouteApps.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                        <div flex></div>\n                                        <md-button class="md-icon-button" ng-click="vm_ac.deleteSelectedInboundRouteApps($event)" aria-label="delete selected" translate translate-attr-label="VOICE.DELETE_SELECTED">\n                                            <md-icon md-font-icon="icon-delete"></md-icon>\n                                        </md-button>\n                                    </div>\n                                </md-toolbar>\n\n                                \x3c!-- QUEUES TABLE --\x3e\n                                <md-table-container>\n                                    <table md-table md-row-select multiple ng-model="vm_ac.selectedInboundRouteApps">\n                                        <thead md-head>\n                                            <tr md-row>\n                                                <th md-column width="10px"></th>\n                                                <th md-column>Type</th>\n                                                <th md-column>Appdata</th>\n                                                <th md-column>Interval</th>\n                                                <th md-column width="10px"></th>\n                                                <th md-column width="10px"></th>\n                                            </tr>\n                                        </thead>\n                                        <tbody md-body ng-sortable="vm_ac.applications">\n                                            <tr md-row md-select="app" md-select-id="id" ng-repeat="app in vm_ac.inboundrouteApps.rows | filter: vm_ac.query.filter">\n                                                <td md-cell>\n                                                    <md-icon md-font-icon="icon-drag-vertical" class="s16 handle"></md-icon>\n                                                </td>\n                                                <td md-cell ng-click="vm_ac.editInboundRouteApp($event, $index)">{{app.app.toLowerCase() === \'agi\' ? \'Cally-Square\' : app.app | ucfirst}}<span ng-if="app.appType.toLowerCase() === \'custom\'">*</span></td>\n                                                <td md-cell ng-click="vm_ac.editInboundRouteApp($event, $index)"><span class="text-truncate" style="width:200px">{{app.appdata}}</span></td>\n                                                <td md-cell ng-click="vm_ac.editInterval($event, $index)">{{app.IntervalId ? \'From List\' : app.interval}}</td>\n                                                <td md-cell>\n                                                    <md-button ng-click="vm_ac.editInterval($event, $index)" class="md-icon-button" aria-label="Interval">\n                                                        <md-icon md-font-icon="icon-timer"></md-icon>\n                                                        <md-tooltip>\n                                                            {{app.IntervalId ? \'From List\' : (app.interval === \'*,*,*,*\' ? \'Always\' : \'Custom\')}}\n                                                        </md-tooltip>\n                                                    </md-button>\n                                                </td>\n                                                <td md-cell class="actions">\n                                                    <md-menu>\n                                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                        </md-button>\n\n                                                        <md-menu-content width="3">\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInboundRouteApp($event, $index)" translate="VOICE.EDIT_APP">\n                                                                    Edit App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInterval($event, $index)" translate="VOICE.EDIT_INTERVAL">\n                                                                    Edit Interval\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.deleteConfirm(app, $index, $event)" translate="VOICE.DELETE_APP">\n                                                                    Delete App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                        </md-menu-content>\n                                                    </md-menu>\n                                                </td>\n                                            </tr>\n                                            <tr md-row ng-hide="vm_ac.inboundrouteApps.rows.length">\n                                                <td md-cell colspan="6">\n                                                    <span class="text-boxed-ligth" translate="VOICE.NO_APPS_AVAILABLE">No apps available</span>\n                                                </td>\n                                            </tr>\n                                        </tbody>\n                                        <tfoot md-foot>\n                                            <tr md-row>\n                                                <td md-cell colspan="7">\n                                                    <span><em translate="VOICE.LEGEND.CUSTOM_APPLICATION">(*) - Custom application.</em></span>\n                                                </td>\n                                            </tr>\n                                        </tfoot>\n                                    </table>\n                                </md-table-container>\n                                \x3c!-- / QUEUES TABLE --\x3e\n\n                                \x3c!-- NO RESULTS --\x3e\n\n                                \x3c!-- / NO RESULTS --\x3e\n                            </div>\n                            \x3c!-- / MAIN --\x3e\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/inboundroutes/inboundroutes.html",'<div id="inboundroutes" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.INBOUNDROUTES">InboundRoutes</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedInboundRoutes.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedInboundRoutes =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-inboundroutes-count">\n                    <span>{{vm.selectedInboundRoutes.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="INBOUNDROUTES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllInboundRoutes()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectInboundRoutes()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedInboundRoutes" filename="inboundroutes.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedInboundRoutes($event)" aria-label="delete selected" translate translate-attr-label="INBOUNDROUTES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- INBOUNDROUTE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedInboundRoutes" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getInboundRoutes">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="exten">{{ \'VOICE.PHONENUMBER\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.inboundroutes.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="inboundroute" md-select-id="id" ng-repeat="inboundroute in vm.inboundroutes.rows">\n                                <td md-cell ng-if="inboundroute.userpic"><img class="avatar" alt="{{inboundroute.name}}" ng-src="api/users/{{inboundroute.id}}/avatar" /></td>\n                                <td md-cell ng-if="!inboundroute.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{inboundroute.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditInboundRoute($event, inboundroute)" md-cell class="id ">{{inboundroute.id}}</td>\n                                <td ng-click="vm.createOrEditInboundRoute($event, inboundroute)" md-cell class="exten ">{{inboundroute.exten}}</td>\n                                <td ng-click="vm.createOrEditInboundRoute($event, inboundroute)" md-cell class="description ">{{inboundroute.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(inboundroute, $event)" translate="VOICE.EDIT_INBOUNDROUTE">\n                                                    Edit InboundRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(inboundroute, $event)" translate="VOICE.DELETE_INBOUNDROUTE">\n                                                    Delete InboundRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.inboundroutes.count}}" md-on-paginate="vm.getInboundRoutes" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / INBOUNDROUTE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD INBOUNDROUTE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-inboundroute-button" ng-click="vm.createOrEditInboundRoute($event)" aria-label="add inboundroute" translate translate-attr-aria-label="VOICE.ADD_INBOUNDROUTE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD INBOUNDROUTE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/internalroutes/create/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                <input type="text" name="exten" ng-model="vm.internalroute.exten" required autofocus>\n                <div ng-messages="internalrouteForm.exten.$error" ng-show="internalrouteForm.exten.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.internalroute.context" required>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteForm.context.$error" ng-show="internalrouteForm.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.internalroute.description">\n                <div ng-messages="internalrouteForm.description.$error" ng-show="internalrouteForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInternalRoute" ng-click="vm.saveInternalRoute()" class="send-button md-accent md-raised" ng-disabled="internalrouteForm.$invalid || internalrouteForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInternalRoute" ng-click="vm.addNewInternalRoute()" class="send-button md-accent md-raised" ng-disabled="internalrouteForm.$invalid" aria-label="ADD" translate="VOICE.ADD_INTERNALROUTE" translate-attr-aria-label="VOICE.ADD_INTERNALROUTE">\n                    ADD INTERNALROUTE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newInternalRoute" ng-click="vm.deleteInternalRoute($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/agi/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PROJECT">Project</label>\n                <md-select ng-model="vm.agi.project" required autofocus>\n                    <md-option ng-value="\'agi://127.0.0.1/square,{{project.name}}\'" ng-repeat="project in vm.projects">{{ project.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.project.$error" ng-show="internalrouteFormApp.project.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PROJECT_REQUIRED">Project field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/custom/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.APPLICATION_NAME">Application_Name</label>\n                <input type="text" name="app" ng-model="vm.custom.app" required autofocus>\n                <div ng-messages="internalrouteFormApp.app.$error" ng-show="internalrouteFormApp.app.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.APPLICATION_NAME_REQUIRED">Application_Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ARGUMENTS">Arguments</label>\n                <input type="text" name="appdata" ng-model="vm.custom.appdata">\n                <div ng-messages="internalrouteFormApp.appdata.$error" ng-show="internalrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ARGUMENTS_REQUIRED">Arguments field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/dial/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TECHNOLOGY/RESOURCE">Technology/Resource</label>\n                <input type="text" name="tech" ng-model="vm.dial.tech" required autofocus>\n                <div ng-messages="internalrouteFormApp.tech.$error" ng-show="internalrouteFormApp.tech.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TECHNOLOGY/RESOURCE_REQUIRED">Technology/Resource field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.dial.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.dial.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.dial.url">\n                <div ng-messages="internalrouteFormApp.url.$error" ng-show="internalrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/externaldial/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TRUNK">Trunk</label>\n                <md-select ng-model="vm.externaldial.trunk" required autofocus>\n                    <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.trunk.$error" ng-show="internalrouteFormApp.trunk.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONE">Phone</label>\n                <input type="text" name="phone" ng-model="vm.externaldial.phone">\n                <div ng-messages="internalrouteFormApp.phone.$error" ng-show="internalrouteFormApp.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.externaldial.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.externaldial.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.externaldial.url">\n                <div ng-messages="internalrouteFormApp.url.$error" ng-show="internalrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/goto/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.goto.context" required autofocus>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.context.$error" ng-show="internalrouteFormApp.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.EXTENSION">Extension</label>\n                <input type="text" name="extension" ng-model="vm.goto.extension" required>\n                <div ng-messages="internalrouteFormApp.extension.$error" ng-show="internalrouteFormApp.extension.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.EXTENSION_REQUIRED">Extension field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PRIORITY">Priority</label>\n                <input type="text" name="priority" ng-model="vm.goto.priority" required>\n                <div ng-messages="internalrouteFormApp.priority.$error" ng-show="internalrouteFormApp.priority.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PRIORITY_REQUIRED">Priority field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/hangup/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.HANGUP_CAUSE">Hangup_Cause</label>\n                <md-select ng-model="vm.hangup.appdata" required autofocus>\n\n                    <md-option ng-value="\'1\'"> {{ \'VOICE.HANGUPCAUSE_1\' | translate }}</md-option>\n\n                    <md-option ng-value="\'16\'"> {{ \'VOICE.HANGUPCAUSE_16\' | translate }}</md-option>\n\n                    <md-option ng-value="\'17\'"> {{ \'VOICE.HANGUPCAUSE_17\' | translate }}</md-option>\n\n                    <md-option ng-value="\'18\'"> {{ \'VOICE.HANGUPCAUSE_18\' | translate }}</md-option>\n\n                    <md-option ng-value="\'21\'"> {{ \'VOICE.HANGUPCAUSE_21\' | translate }}</md-option>\n\n                    <md-option ng-value="\'22\'"> {{ \'VOICE.HANGUPCAUSE_22\' | translate }}</md-option>\n\n                    <md-option ng-value="\'27\'"> {{ \'VOICE.HANGUPCAUSE_27\' | translate }}</md-option>\n\n                    <md-option ng-value="\'38\'"> {{ \'VOICE.HANGUPCAUSE_38\' | translate }}</md-option>\n\n                    <md-option ng-value="\'41\'"> {{ \'VOICE.HANGUPCAUSE_41\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.appdata.$error" ng-show="internalrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.HANGUP_CAUSE_REQUIRED">Hangup_Cause field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/internaldial/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.internaldial.user" required autofocus>\n                    <md-option ng-value="\'SIP/{{user.name}}\'" ng-repeat="user in vm.users">{{ user.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.user.$error" ng-show="internalrouteFormApp.user.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.internaldial.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.internaldial.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.internaldial.url">\n                <div ng-messages="internalrouteFormApp.url.$error" ng-show="internalrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/interval/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.type">\n                    <md-option ng-value="type" ng-repeat=\'type in vm.types\'>{{ type | ucfirst }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.type === \'list\'">\n                <label translate="TOOLS.INTERVALS">Intervals</label>\n                <md-select ng-model="vm.interval.IntervalId">\n                    <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            \x3c!-- TIMERANGE START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.TIME_RANGE">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n            \x3c!-- TIMERANGE END --\x3e\n\n            \x3c!-- DAYSOFWEEK START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.WEEK_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.dayOfWeekFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.dayOfWeekTo">\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- DAYSOFWEEK END --\x3e\n\n            \x3c!-- MONTHDAY START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTH_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthDayFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthDayTo">\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTHDAY END --\x3e\n\n            \x3c!-- MONTH START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTHS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthTo">\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTH END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/playback/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AUDIO_FILES">Audio_Files</label>\n                <md-select ng-model="vm.playback.appdata" required autofocus>\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}\'" ng-repeat="appdata in vm.sounds">{{ appdata.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.appdata.$error" ng-show="internalrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AUDIO_FILES_REQUIRED">Audio_Files field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.playback.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.playback.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/queue/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.QUEUE">Queue</label>\n                <md-select ng-model="vm.queue.queue" required autofocus>\n                    <md-option ng-value="queue.name" ng-repeat="queue in vm.queues">{{ queue.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.queue.$error" ng-show="internalrouteFormApp.queue.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.queue.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="URL" ng-model="vm.queue.URL">\n                <div ng-messages="internalrouteFormApp.URL.$error" ng-show="internalrouteFormApp.URL.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ANNOUNCE_OVERRIDES">Announce_Overrides</label>\n                <md-select ng-model="vm.queue.sound">\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}\'" ng-repeat="sound in vm.sounds">{{ sound.name }}</md-option>\n                    <md-option ng-value="\'\'">None</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.sound.$error" ng-show="internalrouteFormApp.sound.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ANNOUNCE_OVERRIDES_REQUIRED">Announce_Overrides field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.queue.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AGI">Agi</label>\n                <input type="text" name="agi" ng-model="vm.queue.agi">\n                <div ng-messages="internalrouteFormApp.agi.$error" ng-show="internalrouteFormApp.agi.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AGI_REQUIRED">Agi field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MACRO">Macro</label>\n                <input type="text" name="macro" ng-model="vm.queue.macro">\n                <div ng-messages="internalrouteFormApp.macro.$error" ng-show="internalrouteFormApp.macro.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MACRO_REQUIRED">Macro field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.GOSUB">GoSub</label>\n                <input type="text" name="gosub" ng-model="vm.queue.gosub">\n                <div ng-messages="internalrouteFormApp.gosub.$error" ng-show="internalrouteFormApp.gosub.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.GOSUB_REQUIRED">GoSub field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RULE">Rule</label>\n                <input type="text" name="rule" ng-model="vm.queue.rule">\n                <div ng-messages="internalrouteFormApp.rule.$error" ng-show="internalrouteFormApp.rule.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RULE_REQUIRED">Rule field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.POSITION">Position</label>\n                <input type="number" name="position" ng-model="vm.queue.position" min="0">\n                <div ng-messages="internalrouteFormApp.position.$error" ng-show="internalrouteFormApp.position.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.POSITION_REQUIRED">Position field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.queue.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/ringgroup/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.ringgroup.multipleUsers" required autofocus multiple>\n                    <md-option ng-value="\'SIP/{{multipleUsers.name}}\'" ng-repeat="multipleUsers in vm.users">{{ multipleUsers.name }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.multipleUsers.$error" ng-show="internalrouteFormApp.multipleUsers.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.ringgroup.timeout" min="0">\n                <div ng-messages="internalrouteFormApp.timeout.$error" ng-show="internalrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.ringgroup.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.ringgroup.url">\n                <div ng-messages="internalrouteFormApp.url.$error" ng-show="internalrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/set/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VARIABLE">Variable</label>\n                <input type="text" name="name" ng-model="vm.set.name" required autofocus>\n                <div ng-messages="internalrouteFormApp.name.$error" ng-show="internalrouteFormApp.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VARIABLE_REQUIRED">Variable field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VALUE">Value</label>\n                <input type="text" name="value" ng-model="vm.set.value" required>\n                <div ng-messages="internalrouteFormApp.value.$error" ng-show="internalrouteFormApp.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/apps/voicemail/dialog.html",'<md-dialog class="internalroute-dialog" aria-label="New InternalRoute">\n    <form name="internalrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MAILBOX@CONTEXT">Mailbox@Context</label>\n                <md-select ng-model="vm.voicemail.voiceMail" required autofocus>\n                    <md-option ng-value="\'{{voiceMail.mailbox}}@from-voicemail\'" ng-repeat="voiceMail in vm.voiceMails">{{ voiceMail.mailbox }}</md-option>\n                </md-select>\n                <div ng-messages="internalrouteFormApp.voiceMail.$error" ng-show="internalrouteFormApp.voiceMail.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MAILBOX@CONTEXT_REQUIRED">Mailbox@Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.voicemail.options">\n                <div ng-messages="internalrouteFormApp.options.$error" ng-show="internalrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveInternalRouteApp()" class="send-button md-accent md-raised" ng-disabled="internalrouteFormApp.$invalid || internalrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/internalroutes/edit/view.html",'<div id="voice-internalroute" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-internalroutes-button md-icon-button" aria-label="Go to internalroutes" ng-click="vm.gotoInternalRoutes()" translate translate-attr-aria-label="VOICE.GO_TO_INTERNALROUTES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.internalroute.userpic" class="internalroute-image" hide-xs>\n                    <img ng-src="api/users/{{vm.internalroute.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.internalroute.userpic" class="internalroute-image" hide-xs>\n                    <img ng-src="assets/images/business/internalroutes.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.internalroute.id}} {{vm.internalroute.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.internalroute.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveInternalRoute()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (actionsForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="internalroute-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                                <input type="text" name="exten" ng-model="vm.internalroute.exten" required autofocus>\n                                <div ng-messages="generalForm.exten.$error" ng-show="generalForm.exten.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.CONTEXT">Context</label>\n                                <md-select ng-model="vm.internalroute.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.internalroute.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="internalroute-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="InternalRouteActionsController as vm_ac" ng-init="vm_ac.init(vm.internalroute)" class="content" md-background-bg layout="row" layout-align="start start">\n                            \x3c!-- SIDENAV --\x3e\n                            <div class="navigation-simple sidenav main-sidenav md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="20">\n                                \x3c!-- SIDENAV CONTENT --\x3e\n                                <md-list class="no-padding">\n                                    <md-subheader class="md-no-sticky">\n                                        <span>\n          Applications List\n        </span>\n                                    </md-subheader>\n                                </md-list>\n                                <md-divider></md-divider>\n                                <md-list ng-sortable="vm_ac.list">\n                                    <md-list-item class="handle" ng-repeat="a in vm_ac.apps">\n                                        <md-icon md-font-icon="{{a.icon}}" class="s16"></md-icon>\n                                        <p class="text-truncate" translate="VOICE.{{(a.alias || a.appType) | uppercase}}">{{a.alias || a.appType}}</p>\n                                    </md-list-item>\n                                </md-list>\n                                \x3c!-- / SIDENAV CONTENT --\x3e\n                            </div>\n                            \x3c!-- / SIDENAV --\x3e\n                            <div flex></div>\n                            \x3c!-- MAIN --\x3e\n                            <div class="main scrollable md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="75">\n                                <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_ac.selectedInternalRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">Drag & Drop Routing</span>\n                                        <div flex></div>\n                                        <ms-search-bar on-search="vm_ac.query.filter = query" on-collapse="vm_ac.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    </div>\n                                </md-toolbar>\n                                <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_ac.selectedInternalRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">{{vm_ac.selectedInternalRouteApps.length}} {{vm_ac.selectedInternalRouteApps.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                        <div flex></div>\n                                        <md-button class="md-icon-button" ng-click="vm_ac.deleteSelectedInternalRouteApps($event)" aria-label="delete selected" translate translate-attr-label="VOICE.DELETE_SELECTED">\n                                            <md-icon md-font-icon="icon-delete"></md-icon>\n                                        </md-button>\n                                    </div>\n                                </md-toolbar>\n\n                                \x3c!-- QUEUES TABLE --\x3e\n                                <md-table-container>\n                                    <table md-table md-row-select multiple ng-model="vm_ac.selectedInternalRouteApps">\n                                        <thead md-head>\n                                            <tr md-row>\n                                                <th md-column width="10px"></th>\n                                                <th md-column>Type</th>\n                                                <th md-column>Appdata</th>\n                                                <th md-column>Interval</th>\n                                                <th md-column width="10px"></th>\n                                                <th md-column width="10px"></th>\n                                            </tr>\n                                        </thead>\n                                        <tbody md-body ng-sortable="vm_ac.applications">\n                                            <tr md-row md-select="app" md-select-id="id" ng-repeat="app in vm_ac.internalrouteApps.rows | filter: vm_ac.query.filter">\n                                                <td md-cell>\n                                                    <md-icon md-font-icon="icon-drag-vertical" class="s16 handle"></md-icon>\n                                                </td>\n                                                <td md-cell ng-click="vm_ac.editInternalRouteApp($event, $index)">{{app.app.toLowerCase() === \'agi\' ? \'Cally-Square\' : app.app | ucfirst}}<span ng-if="app.appType.toLowerCase() === \'custom\'">*</span></td>\n                                                <td md-cell ng-click="vm_ac.editInternalRouteApp($event, $index)"><span class="text-truncate" style="width:200px">{{app.appdata}}</span></td>\n                                                <td md-cell ng-click="vm_ac.editInterval($event, $index)">{{app.IntervalId ? \'From List\' : app.interval}}</td>\n                                                <td md-cell>\n                                                    <md-button ng-click="vm_ac.editInterval($event, $index)" class="md-icon-button" aria-label="Interval">\n                                                        <md-icon md-font-icon="icon-timer"></md-icon>\n                                                        <md-tooltip>\n                                                            {{app.IntervalId ? \'From List\' : (app.interval === \'*,*,*,*\' ? \'Always\' : \'Custom\')}}\n                                                        </md-tooltip>\n                                                    </md-button>\n                                                </td>\n                                                <td md-cell class="actions">\n                                                    <md-menu>\n                                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                        </md-button>\n\n                                                        <md-menu-content width="3">\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInternalRouteApp($event, $index)" translate="VOICE.EDIT_APP">\n                                                                    Edit App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInterval($event, $index)" translate="VOICE.EDIT_INTERVAL">\n                                                                    Edit Interval\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.deleteConfirm(app, $index, $event)" translate="VOICE.DELETE_APP">\n                                                                    Delete App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                        </md-menu-content>\n                                                    </md-menu>\n                                                </td>\n                                            </tr>\n                                            <tr md-row ng-hide="vm_ac.internalrouteApps.rows.length">\n                                                <td md-cell colspan="6">\n                                                    <span class="text-boxed-ligth" translate="VOICE.NO_APPS_AVAILABLE">No apps available</span>\n                                                </td>\n                                            </tr>\n                                        </tbody>\n                                        <tfoot md-foot>\n                                            <tr md-row>\n                                                <td md-cell colspan="7">\n                                                    <span><em translate="VOICE.LEGEND.CUSTOM_APPLICATION">(*) - Custom application.</em></span>\n                                                </td>\n                                            </tr>\n                                        </tfoot>\n                                    </table>\n                                </md-table-container>\n                                \x3c!-- / QUEUES TABLE --\x3e\n\n                                \x3c!-- NO RESULTS --\x3e\n\n                                \x3c!-- / NO RESULTS --\x3e\n                            </div>\n                            \x3c!-- / MAIN --\x3e\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/internalroutes/internalroutes.html",'<div id="internalroutes" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.INTERNALROUTES">InternalRoutes</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedInternalRoutes.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedInternalRoutes =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-internalroutes-count">\n                    <span>{{vm.selectedInternalRoutes.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="INTERNALROUTES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllInternalRoutes()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectInternalRoutes()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedInternalRoutes" filename="internalroutes.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedInternalRoutes($event)" aria-label="delete selected" translate translate-attr-label="INTERNALROUTES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- INTERNALROUTE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedInternalRoutes" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getInternalRoutes">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="exten">{{ \'VOICE.PHONENUMBER\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.internalroutes.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="internalroute" md-select-id="id" ng-repeat="internalroute in vm.internalroutes.rows">\n                                <td md-cell ng-if="internalroute.userpic"><img class="avatar" alt="{{internalroute.name}}" ng-src="api/users/{{internalroute.id}}/avatar" /></td>\n                                <td md-cell ng-if="!internalroute.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{internalroute.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditInternalRoute($event, internalroute)" md-cell class="id ">{{internalroute.id}}</td>\n                                <td ng-click="vm.createOrEditInternalRoute($event, internalroute)" md-cell class="exten ">{{internalroute.exten}}</td>\n                                <td ng-click="vm.createOrEditInternalRoute($event, internalroute)" md-cell class="description ">{{internalroute.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(internalroute, $event)" translate="VOICE.EDIT_INTERNALROUTE">\n                                                    Edit InternalRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(internalroute, $event)" translate="VOICE.DELETE_INTERNALROUTE">\n                                                    Delete InternalRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.internalroutes.count}}" md-on-paginate="vm.getInternalRoutes" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / INTERNALROUTE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD INTERNALROUTE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-internalroute-button" ng-click="vm.createOrEditInternalRoute($event)" aria-label="add internalroute" translate translate-attr-aria-label="VOICE.ADD_INTERNALROUTE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD INTERNALROUTE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/musiconholds/create/dialog.html",'<md-dialog class="musiconhold-dialog" aria-label="New MusicOnHold">\n    <form name="musiconholdForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.musiconhold.name" required autofocus ng-disabled="!vm.newMusicOnHold">\n                <div ng-messages="musiconholdForm.name.$error" ng-show="musiconholdForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MODE">Mode</label>\n                <md-select ng-model="vm.musiconhold.mode" required ng-disabled="!vm.newMusicOnHold">\n\n                    <md-option ng-value="\'files\'"> {{ \'VOICE.FILES\' | translate }}</md-option>\n\n                    <md-option ng-value="\'custom\'"> {{ \'VOICE.CUSTOM\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="musiconholdForm.mode.$error" ng-show="musiconholdForm.mode.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MODE_REQUIRED">Mode field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.musiconhold.mode == \'custom\'" class="md-block">\n                <label translate="VOICE.APPLICATION">Application</label>\n                <input type="text" name="application" ng-model="vm.musiconhold.application" required>\n                <div ng-messages="musiconholdForm.application.$error" ng-show="musiconholdForm.application.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.APPLICATION_REQUIRED">Application field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container ng-if="vm.musiconhold.mode == \'files\'" class="md-block">\n                <label translate="VOICE.SORT">Sort</label>\n                <md-select ng-model="vm.musiconhold.sort">\n\n                    <md-option ng-value="\'random\'"> {{ \'VOICE.RANDOM\' | translate }}</md-option>\n\n                    <md-option ng-value="\'alpha\'"> {{ \'VOICE.ALPHABETICAL\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="musiconholdForm.sort.$error" ng-show="musiconholdForm.sort.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.SORT_REQUIRED">Sort field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMusicOnHold" ng-click="vm.saveMusicOnHold()" class="send-button md-accent md-raised" ng-disabled="musiconholdForm.$invalid || musiconholdForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMusicOnHold" ng-click="vm.addNewMusicOnHold()" class="send-button md-accent md-raised" ng-disabled="musiconholdForm.$invalid" aria-label="ADD" translate="VOICE.ADD_MUSICONHOLD" translate-attr-aria-label="VOICE.ADD_MUSICONHOLD">\n                    ADD MUSICONHOLD\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMusicOnHold" ng-click="vm.deleteMusicOnHold($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/musiconholds/edit/mohSounds/dialog.html",'<md-dialog class="mohSound-dialog" aria-label="New MohSound">\n    <form name="mohSoundForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.FILE">File</label>\n                <md-select ng-model="vm.mohSound.id" autofocus>\n                    <md-option ng-value="id.id" ng-repeat="id in vm.sounds">{{ id.name }}</md-option>\n                </md-select>\n                <div ng-messages="mohSoundForm.id.$error" ng-show="mohSoundForm.id.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.FILE_REQUIRED">File field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newMohSound" ng-click="vm.saveMohSound()" class="send-button md-accent md-raised" ng-disabled="mohSoundForm.$invalid || mohSoundForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newMohSound" ng-click="vm.addNewMohSound()" class="send-button md-accent md-raised" ng-disabled="mohSoundForm.$invalid" aria-label="ADD" translate="VOICE.ADD_MOHSOUND" translate-attr-aria-label="VOICE.ADD_MOHSOUND">\n                    ADD MOHSOUND\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newMohSound" ng-click="vm.deleteMohSound($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/musiconholds/edit/view.html",'<div id="voice-musiconhold" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-musiconholds-button md-icon-button" aria-label="Go to musiconholds" ng-click="vm.gotoMusicOnHolds()" translate translate-attr-aria-label="VOICE.GO_TO_MUSICONHOLDS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.musiconhold.userpic" class="musiconhold-image" hide-xs>\n                    <img ng-src="api/users/{{vm.musiconhold.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.musiconhold.userpic" class="musiconhold-image" hide-xs>\n                    <img ng-src="assets/images/business/musiconholds.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.musiconhold.id}} {{vm.musiconhold.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.musiconhold.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveMusicOnHold()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (mohSoundsForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="musiconhold-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.NAME">Name</label>\n                                <input type="text" name="name" ng-model="vm.musiconhold.name" required autofocus ng-disabled="true">\n                                <div ng-messages="generalForm.name.$error" ng-show="generalForm.name.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MODE">Mode</label>\n                                <md-select ng-model="vm.musiconhold.mode" required ng-disabled="true">\n\n                                    <md-option ng-value="\'files\'"> {{ \'VOICE.FILES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'custom\'"> {{ \'VOICE.CUSTOM\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.mode.$error" ng-show="generalForm.mode.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MODE_REQUIRED">Mode field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.musiconhold.mode == \'custom\'" class="md-block">\n                                <label translate="VOICE.APPLICATION">Application</label>\n                                <input type="text" name="application" ng-model="vm.musiconhold.application" required>\n                                <div ng-messages="generalForm.application.$error" ng-show="generalForm.application.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.APPLICATION_REQUIRED">Application field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.musiconhold.mode == \'files\'" class="md-block">\n                                <label translate="VOICE.SORT">Sort</label>\n                                <md-select ng-model="vm.musiconhold.sort">\n\n                                    <md-option ng-value="\'random\'"> {{ \'VOICE.RANDOM\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'alpha\'"> {{ \'VOICE.ALPHABETICAL\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.sort.$error" ng-show="generalForm.sort.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SORT_REQUIRED">Sort field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.AUDIOFILES">AUDIOFILES</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="musiconhold-detail-form-container mohsounds md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="MusicOnHoldMohSoundsController as vm_dc" ng-init="vm_dc.init(vm.musiconhold)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedMusicOnHoldMohSounds.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="VOICE.MOHSOUNDS">MohSounds</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.createOrEditMusicOnHoldMohSound($event)" aria-label="add mohSound" translate translate-attr-label="VOICE.ADD_MOHSOUND">\n                                        <md-icon md-font-icon="icon-plus"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedMusicOnHoldMohSounds.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedMusicOnHoldMohSounds.length}} {{vm_dc.selectedMusicOnHoldMohSounds.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedMusicOnHoldMohSounds($event)" aria-label="delete selected" translate translate-attr-label="MUSICONHOLDS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedMusicOnHoldMohSounds" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getMusicOnHoldMohSounds">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                            <th md-column md-order-by="audio">{{ \'VOICE.AUDIO\' | translate }}</th>\n                                            <th md-column md-order-by="createdAt">{{ \'VOICE.CREATED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="mohSound" md-select-id="id" ng-repeat="mohSound in vm_dc.musiconholdMohSounds.rows">\n                                            <td md-cell>{{mohSound.id}}</td>\n                                            <td md-cell><audio controls><source ng-src="{{\'api/sounds/\' + mohSound.id + \'/download\'}}" type="audio/wav" preload="none"></source>Your browser does not support the audio element.</audio></td>\n                                            <td md-cell>{{mohSound.createdAt | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-href="api/mohs/{{mohSound.id}}/download" target="_blank" translate="VOICE.DOWNLOAD_MOHSOUND">\n                                                                Download MohSound\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(mohSound, $event)" translate="VOICE.DELETE_MOHSOUND">\n                                                                Delete MohSound\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.musiconholdMohSounds.rows.length">\n                                            <td md-cell colspan="6">\n                                                <span class="text-boxed-ligth" translate="VOICE.NO_MOHSOUND_AVAILABLE">No mohsound available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.musiconholdMohSounds.count}}" md-on-paginate="vm_dc.getMusicOnHoldMohSounds" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/musiconholds/musiconholds.html",'<div id="musiconholds" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.MUSICONHOLDS">MusicOnHolds</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedMusicOnHolds.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedMusicOnHolds =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-musiconholds-count">\n                    <span>{{vm.selectedMusicOnHolds.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="MUSICONHOLDS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllMusicOnHolds()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectMusicOnHolds()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedMusicOnHolds" filename="musiconholds.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedMusicOnHolds($event)" aria-label="delete selected" translate translate-attr-label="MUSICONHOLDS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- MUSICONHOLD TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedMusicOnHolds" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getMusicOnHolds">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="mode">{{ \'VOICE.MODE\' | translate }}</th>\n                                <th md-column md-order-by="sort">{{ \'VOICE.SORT\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.musiconholds.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="musiconhold" md-select-id="id" ng-repeat="musiconhold in vm.musiconholds.rows">\n                                <td md-cell ng-if="musiconhold.userpic"><img class="avatar" alt="{{musiconhold.name}}" ng-src="api/users/{{musiconhold.id}}/avatar" /></td>\n                                <td md-cell ng-if="!musiconhold.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{musiconhold.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditMusicOnHold($event, musiconhold)" md-cell class="id ">{{musiconhold.id}}</td>\n                                <td ng-click="vm.createOrEditMusicOnHold($event, musiconhold)" md-cell class="name ">{{musiconhold.name}}</td>\n                                <td ng-click="vm.createOrEditMusicOnHold($event, musiconhold)" md-cell class="mode ">{{ \'VOICE.\' + vm.arraymode[musiconhold.mode].option | uppercase | translate }}</td>\n                                <td ng-click="vm.createOrEditMusicOnHold($event, musiconhold)" md-cell class="sort ">{{ \'VOICE.\' + vm.arraysort[musiconhold.sort].option | uppercase | translate }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(musiconhold, $event)" translate="VOICE.EDIT_MUSICONHOLD">\n                                                    Edit MusicOnHold\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(musiconhold, $event)" translate="VOICE.DELETE_MUSICONHOLD">\n                                                    Delete MusicOnHold\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.musiconholds.count}}" md-on-paginate="vm.getMusicOnHolds" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / MUSICONHOLD TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD MUSICONHOLD BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-musiconhold-button" ng-click="vm.createOrEditMusicOnHold($event)" aria-label="add musiconhold" translate translate-attr-aria-label="VOICE.ADD_MUSICONHOLD">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD MUSICONHOLD BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/outboundroutes/create/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                <input type="text" name="exten" ng-model="vm.outboundroute.exten" required autofocus>\n                <div ng-messages="outboundrouteForm.exten.$error" ng-show="outboundrouteForm.exten.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.outboundroute.context" required>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteForm.context.$error" ng-show="outboundrouteForm.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.outboundroute.description">\n                <div ng-messages="outboundrouteForm.description.$error" ng-show="outboundrouteForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newOutboundRoute" ng-click="vm.saveOutboundRoute()" class="send-button md-accent md-raised" ng-disabled="outboundrouteForm.$invalid || outboundrouteForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newOutboundRoute" ng-click="vm.addNewOutboundRoute()" class="send-button md-accent md-raised" ng-disabled="outboundrouteForm.$invalid" aria-label="ADD" translate="VOICE.ADD_OUTBOUNDROUTE" translate-attr-aria-label="VOICE.ADD_OUTBOUNDROUTE">\n                    ADD OUTBOUNDROUTE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newOutboundRoute" ng-click="vm.deleteOutboundRoute($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/agi/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PROJECT">Project</label>\n                <md-select ng-model="vm.agi.project" required autofocus>\n                    <md-option ng-value="\'agi://127.0.0.1/square,{{project.name}}\'" ng-repeat="project in vm.projects">{{ project.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.project.$error" ng-show="outboundrouteFormApp.project.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PROJECT_REQUIRED">Project field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/custom/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.APPLICATION_NAME">Application_Name</label>\n                <input type="text" name="app" ng-model="vm.custom.app" required autofocus>\n                <div ng-messages="outboundrouteFormApp.app.$error" ng-show="outboundrouteFormApp.app.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.APPLICATION_NAME_REQUIRED">Application_Name field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ARGUMENTS">Arguments</label>\n                <input type="text" name="appdata" ng-model="vm.custom.appdata">\n                <div ng-messages="outboundrouteFormApp.appdata.$error" ng-show="outboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ARGUMENTS_REQUIRED">Arguments field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/dial/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TECHNOLOGY/RESOURCE">Technology/Resource</label>\n                <input type="text" name="tech" ng-model="vm.dial.tech" required autofocus>\n                <div ng-messages="outboundrouteFormApp.tech.$error" ng-show="outboundrouteFormApp.tech.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TECHNOLOGY/RESOURCE_REQUIRED">Technology/Resource field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.dial.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.dial.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.dial.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/externaldial/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TRUNK">Trunk</label>\n                <md-select ng-model="vm.externaldial.trunk" required autofocus>\n                    <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.trunk.$error" ng-show="outboundrouteFormApp.trunk.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PHONE">Phone</label>\n                <input type="text" name="phone" ng-model="vm.externaldial.phone">\n                <div ng-messages="outboundrouteFormApp.phone.$error" ng-show="outboundrouteFormApp.phone.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PHONE_REQUIRED">Phone field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.externaldial.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.externaldial.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.externaldial.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/goto/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CONTEXT">Context</label>\n                <md-select ng-model="vm.goto.context" required autofocus>\n                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.context.$error" ng-show="outboundrouteFormApp.context.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.EXTENSION">Extension</label>\n                <input type="text" name="extension" ng-model="vm.goto.extension" required>\n                <div ng-messages="outboundrouteFormApp.extension.$error" ng-show="outboundrouteFormApp.extension.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.EXTENSION_REQUIRED">Extension field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PRIORITY">Priority</label>\n                <input type="text" name="priority" ng-model="vm.goto.priority" required>\n                <div ng-messages="outboundrouteFormApp.priority.$error" ng-show="outboundrouteFormApp.priority.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PRIORITY_REQUIRED">Priority field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/hangup/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.HANGUP_CAUSE">Hangup_Cause</label>\n                <md-select ng-model="vm.hangup.appdata" required autofocus>\n\n                    <md-option ng-value="\'1\'"> {{ \'VOICE.HANGUPCAUSE_1\' | translate }}</md-option>\n\n                    <md-option ng-value="\'16\'"> {{ \'VOICE.HANGUPCAUSE_16\' | translate }}</md-option>\n\n                    <md-option ng-value="\'17\'"> {{ \'VOICE.HANGUPCAUSE_17\' | translate }}</md-option>\n\n                    <md-option ng-value="\'18\'"> {{ \'VOICE.HANGUPCAUSE_18\' | translate }}</md-option>\n\n                    <md-option ng-value="\'21\'"> {{ \'VOICE.HANGUPCAUSE_21\' | translate }}</md-option>\n\n                    <md-option ng-value="\'22\'"> {{ \'VOICE.HANGUPCAUSE_22\' | translate }}</md-option>\n\n                    <md-option ng-value="\'27\'"> {{ \'VOICE.HANGUPCAUSE_27\' | translate }}</md-option>\n\n                    <md-option ng-value="\'38\'"> {{ \'VOICE.HANGUPCAUSE_38\' | translate }}</md-option>\n\n                    <md-option ng-value="\'41\'"> {{ \'VOICE.HANGUPCAUSE_41\' | translate }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.appdata.$error" ng-show="outboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.HANGUP_CAUSE_REQUIRED">Hangup_Cause field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/internaldial/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.internaldial.user" required autofocus>\n                    <md-option ng-value="\'SIP/{{user.name}}\'" ng-repeat="user in vm.users">{{ user.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.user.$error" ng-show="outboundrouteFormApp.user.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.internaldial.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.internaldial.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.internaldial.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/interval/dialog.html",'<md-dialog class="inboundroute-dialog" aria-label="New Interval">\n    <form name="intervalForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n\n\n            <md-input-container class="md-block">\n                <label translate="TOOLS.TYPE">Type</label>\n                <md-select ng-model="vm.type">\n                    <md-option ng-value="type" ng-repeat=\'type in vm.types\'>{{ type | ucfirst }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            <md-input-container class="md-block" ng-if="vm.type === \'list\'">\n                <label translate="TOOLS.INTERVALS">Intervals</label>\n                <md-select ng-model="vm.interval.IntervalId">\n                    <md-option ng-value="interval.id" ng-repeat="interval in vm.intervals.rows">{{ interval.name }}</md-option>\n                </md-select>\n            </md-input-container>\n\n            \x3c!-- TIMERANGE START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.TIME_RANGE">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeFrom" mdp-placeholder="FROM" ng-model="vm.timeRangeFrom" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeFrom.$error" ng-show="intervalForm.timeRangeFrom.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_FROM_INVALID">Time Range From field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n                <div class="md-block" flex>\n                    <mdp-time-picker name="timeRangeTo" mdp-placeholder="TO" ng-model="vm.timeRangeTo" mdp-format="HH:mm" mdp-auto-switch="true">\n                        <div ng-messages="intervalForm.timeRangeTo.$error" ng-show="intervalForm.timeRangeTo.$touched" role="alert">\n                            <div ng-message="format">\n                                <span translate="TOOLS.ERRORS.TIME_RANGE_TO_INVALID">Time Range To field is invalid</span>\n                            </div>\n                        </div>\n                    </mdp-time-picker>\n                </div>\n            </div>\n            \x3c!-- TIMERANGE END --\x3e\n\n            \x3c!-- DAYSOFWEEK START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.WEEK_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.dayOfWeekFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex class="md-block" ng-if="vm.dayOfWeekFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.dayOfWeekTo">\n                        <md-option ng-value="day.value" ng-repeat="day in vm.daysOfWeek"><span translate="TOOLS.{{day.value | uppercase}}">{{ day.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- DAYSOFWEEK END --\x3e\n\n            \x3c!-- MONTHDAY START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTH_DAYS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthDayFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthDayFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthDayTo">\n                        <md-option ng-value="month" ng-repeat="month in vm.daysOfMonth">{{ month }}</md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTHDAY END --\x3e\n\n            \x3c!-- MONTH START --\x3e\n            <label ng-if="vm.type === \'custom\'" translate="TOOLS.MONTHS">Time Range</label>\n            <div layout=row ng-if="vm.type === \'custom\'">\n                <md-input-container flex layout="column" class="md-block">\n                    <label translate="TOOLS.FROM">From</label>\n                    <md-select ng-model="vm.monthFrom">\n                        <md-option ng-value="null"><span translate="TOOLS.ALWAYS">Always</span></md-option>\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n\n                </md-input-container>\n\n                <md-input-container flex layout="column" class="md-block" ng-if="vm.monthFrom">\n                    <label translate="TOOLS.TO">To</label>\n                    <md-select ng-model="vm.monthTo">\n                        <md-option ng-value="month.value" ng-repeat="month in vm.monthName"><span translate="TOOLS.{{month.value | uppercase}}">{{ month.value | ucfirst }}</span></md-option>\n                    </md-select>\n                </md-input-container>\n            </div>\n            \x3c!-- MONTH END --\x3e\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newInterval" ng-click="vm.saveInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid || intervalForm.$pristine" aria-label="SAVE" translate="TOOLS.SAVE" translate-attr-aria-label="TOOLS.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newInterval" ng-click="vm.addNewInterval()" class="send-button md-accent md-raised" ng-disabled="intervalForm.$invalid" aria-label="ADD" translate="TOOLS.ADD_INTERVAL" translate-attr-aria-label="TOOLS.ADD_INTERVAL">\n                    ADD INTERVAL\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/outbounddial/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TRUNK">Trunk</label>\n                <md-select ng-model="vm.outbounddial.trunk" required autofocus>\n                    <md-option ng-value="trunk.name" ng-repeat="trunk in vm.trunks">{{ trunk.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.trunk.$error" ng-show="outboundrouteFormApp.trunk.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TRUNK_REQUIRED">Trunk field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CALLER_ID">Caller_ID</label>\n                <input type="text" name="callerID" ng-model="vm.outbounddial.callerID">\n                <div ng-messages="outboundrouteFormApp.callerID.$error" ng-show="outboundrouteFormApp.callerID.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CALLER_ID_REQUIRED">Caller_ID field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PREFIX">Prefix</label>\n                <input type="text" name="prefix" ng-model="vm.outbounddial.prefix">\n                <div ng-messages="outboundrouteFormApp.prefix.$error" ng-show="outboundrouteFormApp.prefix.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PREFIX_REQUIRED">Prefix field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.CUTDIGITS">CutDigits</label>\n                <input type="number" name="cutdigits" ng-model="vm.outbounddial.cutdigits" min="0">\n                <div ng-messages="outboundrouteFormApp.cutdigits.$error" ng-show="outboundrouteFormApp.cutdigits.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CUTDIGITS_REQUIRED">CutDigits field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RECORDING">Recording</label>\n                <md-select ng-model="vm.outbounddial.recordingFormat" required>\n                    <md-option ng-value="\'none\'">none</md-option>\n                    <md-option ng-value="\'wav\'">wav</md-option>\n                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                </md-select>\n                <div class="hint"><span translate="VOICE.HELP.RECORDING"></span></div>\n                <div ng-messages="outboundrouteFormApp.recordingFormat.$error" ng-show="outboundrouteFormApp.recordingFormat.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RECORDING_REQUIRED">Recording field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TAGS">Tags</label>\n                <md-select ng-model="vm.outbounddial.tag">\n                    <md-option ng-value="tag.name" ng-repeat="tag in vm.tags">{{ tag.name }}</md-option>\n                    <md-option ng-value="\'--\'">None</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.tag.$error" ng-show="outboundrouteFormApp.tag.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TAGS_REQUIRED">Tags field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.outbounddial.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.outbounddial.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.outbounddial.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/playback/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AUDIO_FILES">Audio_Files</label>\n                <md-select ng-model="vm.playback.appdata" required autofocus>\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{appdata.save_name}}\'" ng-repeat="appdata in vm.sounds">{{ appdata.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.appdata.$error" ng-show="outboundrouteFormApp.appdata.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AUDIO_FILES_REQUIRED">Audio_Files field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.playback.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.playback.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/queue/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.QUEUE">Queue</label>\n                <md-select ng-model="vm.queue.queue" required autofocus>\n                    <md-option ng-value="queue.name" ng-repeat="queue in vm.queues">{{ queue.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.queue.$error" ng-show="outboundrouteFormApp.queue.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.QUEUE_REQUIRED">Queue field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.queue.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="URL" ng-model="vm.queue.URL">\n                <div ng-messages="outboundrouteFormApp.URL.$error" ng-show="outboundrouteFormApp.URL.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.ANNOUNCE_OVERRIDES">Announce_Overrides</label>\n                <md-select ng-model="vm.queue.sound">\n                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/{{sound.save_name}}\'" ng-repeat="sound in vm.sounds">{{ sound.name }}</md-option>\n                    <md-option ng-value="\'\'">None</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.sound.$error" ng-show="outboundrouteFormApp.sound.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.ANNOUNCE_OVERRIDES_REQUIRED">Announce_Overrides field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.queue.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.AGI">Agi</label>\n                <input type="text" name="agi" ng-model="vm.queue.agi">\n                <div ng-messages="outboundrouteFormApp.agi.$error" ng-show="outboundrouteFormApp.agi.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.AGI_REQUIRED">Agi field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MACRO">Macro</label>\n                <input type="text" name="macro" ng-model="vm.queue.macro">\n                <div ng-messages="outboundrouteFormApp.macro.$error" ng-show="outboundrouteFormApp.macro.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MACRO_REQUIRED">Macro field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.GOSUB">GoSub</label>\n                <input type="text" name="gosub" ng-model="vm.queue.gosub">\n                <div ng-messages="outboundrouteFormApp.gosub.$error" ng-show="outboundrouteFormApp.gosub.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.GOSUB_REQUIRED">GoSub field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RULE">Rule</label>\n                <input type="text" name="rule" ng-model="vm.queue.rule">\n                <div ng-messages="outboundrouteFormApp.rule.$error" ng-show="outboundrouteFormApp.rule.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RULE_REQUIRED">Rule field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.POSITION">Position</label>\n                <input type="number" name="position" ng-model="vm.queue.position" min="0">\n                <div ng-messages="outboundrouteFormApp.position.$error" ng-show="outboundrouteFormApp.position.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.POSITION_REQUIRED">Position field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <md-switch ng-model="vm.queue.answer" aria-label="Answer"><span translate="VOICE.ANSWER">Answer</span></md-switch>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/ringgroup/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.USER">User</label>\n                <md-select ng-model="vm.ringgroup.multipleUsers" required autofocus multiple>\n                    <md-option ng-value="\'SIP/{{multipleUsers.name}}\'" ng-repeat="multipleUsers in vm.users">{{ multipleUsers.name }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.multipleUsers.$error" ng-show="outboundrouteFormApp.multipleUsers.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.USER_REQUIRED">User field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.TIMEOUT">Timeout</label>\n                <input type="number" name="timeout" ng-model="vm.ringgroup.timeout" min="0">\n                <div ng-messages="outboundrouteFormApp.timeout.$error" ng-show="outboundrouteFormApp.timeout.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.ringgroup.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.URL">Url</label>\n                <input type="text" name="url" ng-model="vm.ringgroup.url">\n                <div ng-messages="outboundrouteFormApp.url.$error" ng-show="outboundrouteFormApp.url.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.URL_REQUIRED">Url field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/set/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VARIABLE">Variable</label>\n                <input type="text" name="name" ng-model="vm.set.name" required autofocus>\n                <div ng-messages="outboundrouteFormApp.name.$error" ng-show="outboundrouteFormApp.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VARIABLE_REQUIRED">Variable field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.VALUE">Value</label>\n                <input type="text" name="value" ng-model="vm.set.value" required>\n                <div ng-messages="outboundrouteFormApp.value.$error" ng-show="outboundrouteFormApp.value.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.VALUE_REQUIRED">Value field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/apps/voicemail/dialog.html",'<md-dialog class="outboundroute-dialog" aria-label="New OutboundRoute">\n    <form name="outboundrouteFormApp" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MAILBOX@CONTEXT">Mailbox@Context</label>\n                <md-select ng-model="vm.voicemail.voiceMail" required autofocus>\n                    <md-option ng-value="\'{{voiceMail.mailbox}}@from-voicemail\'" ng-repeat="voiceMail in vm.voiceMails">{{ voiceMail.mailbox }}</md-option>\n                </md-select>\n                <div ng-messages="outboundrouteFormApp.voiceMail.$error" ng-show="outboundrouteFormApp.voiceMail.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MAILBOX@CONTEXT_REQUIRED">Mailbox@Context field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.OPTIONS">Options</label>\n                <input type="text" name="options" ng-model="vm.voicemail.options">\n                <div ng-messages="outboundrouteFormApp.options.$error" ng-show="outboundrouteFormApp.options.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.OPTIONS_REQUIRED">Options field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.saveOutboundRouteApp()" class="send-button md-accent md-raised" ng-disabled="outboundrouteFormApp.$invalid || outboundrouteFormApp.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/outboundroutes/edit/view.html",'<div id="voice-outboundroute" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-outboundroutes-button md-icon-button" aria-label="Go to outboundroutes" ng-click="vm.gotoOutboundRoutes()" translate translate-attr-aria-label="VOICE.GO_TO_OUTBOUNDROUTES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.outboundroute.userpic" class="outboundroute-image" hide-xs>\n                    <img ng-src="api/users/{{vm.outboundroute.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.outboundroute.userpic" class="outboundroute-image" hide-xs>\n                    <img ng-src="assets/images/business/outboundroutes.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.outboundroute.id}} {{vm.outboundroute.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.outboundroute.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveOutboundRoute()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (actionsForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="outboundroute-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PHONENUMBER">PhoneNumber</label>\n                                <input type="text" name="exten" ng-model="vm.outboundroute.exten" required autofocus>\n                                <div ng-messages="generalForm.exten.$error" ng-show="generalForm.exten.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PHONENUMBER_REQUIRED">PhoneNumber field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.CONTEXT">Context</label>\n                                <md-select ng-model="vm.outboundroute.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.outboundroute.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ACTIONS">ACTIONS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="outboundroute-detail-form-container actions md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="OutboundRouteActionsController as vm_ac" ng-init="vm_ac.init(vm.outboundroute)" class="content" md-background-bg layout="row" layout-align="start start">\n                            \x3c!-- SIDENAV --\x3e\n                            <div class="navigation-simple sidenav main-sidenav md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="20">\n                                \x3c!-- SIDENAV CONTENT --\x3e\n                                <md-list class="no-padding">\n                                    <md-subheader class="md-no-sticky">\n                                        <span>\n          Applications List\n        </span>\n                                    </md-subheader>\n                                </md-list>\n                                <md-divider></md-divider>\n                                <md-list ng-sortable="vm_ac.list">\n                                    <md-list-item class="handle" ng-repeat="a in vm_ac.apps">\n                                        <md-icon md-font-icon="{{a.icon}}" class="s16"></md-icon>\n                                        <p class="text-truncate" translate="VOICE.{{(a.alias || a.appType) | uppercase}}">{{a.alias || a.appType}}</p>\n                                    </md-list-item>\n                                </md-list>\n                                \x3c!-- / SIDENAV CONTENT --\x3e\n                            </div>\n                            \x3c!-- / SIDENAV --\x3e\n                            <div flex></div>\n                            \x3c!-- MAIN --\x3e\n                            <div class="main scrollable md-background-bg md-whiteframe-1dp" ms-scroll layout="column" flex="75">\n                                <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_ac.selectedOutboundRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">Drag & Drop Routing</span>\n                                        <div flex></div>\n                                        <ms-search-bar on-search="vm_ac.query.filter = query" on-collapse="vm_ac.query.filter = undefined" debounce="300"></ms-search-bar>\n                                    </div>\n                                </md-toolbar>\n                                <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_ac.selectedOutboundRouteApps.length">\n                                    <div class="md-toolbar-tools">\n                                        <span class="md-subhead">{{vm_ac.selectedOutboundRouteApps.length}} {{vm_ac.selectedOutboundRouteApps.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                        <div flex></div>\n                                        <md-button class="md-icon-button" ng-click="vm_ac.deleteSelectedOutboundRouteApps($event)" aria-label="delete selected" translate translate-attr-label="VOICE.DELETE_SELECTED">\n                                            <md-icon md-font-icon="icon-delete"></md-icon>\n                                        </md-button>\n                                    </div>\n                                </md-toolbar>\n\n                                \x3c!-- QUEUES TABLE --\x3e\n                                <md-table-container>\n                                    <table md-table md-row-select multiple ng-model="vm_ac.selectedOutboundRouteApps">\n                                        <thead md-head>\n                                            <tr md-row>\n                                                <th md-column width="10px"></th>\n                                                <th md-column>Type</th>\n                                                <th md-column>Appdata</th>\n                                                <th md-column>Interval</th>\n                                                <th md-column width="10px"></th>\n                                                <th md-column width="10px"></th>\n                                            </tr>\n                                        </thead>\n                                        <tbody md-body ng-sortable="vm_ac.applications">\n                                            <tr md-row md-select="app" md-select-id="id" ng-repeat="app in vm_ac.outboundrouteApps.rows | filter: vm_ac.query.filter">\n                                                <td md-cell>\n                                                    <md-icon md-font-icon="icon-drag-vertical" class="s16 handle"></md-icon>\n                                                </td>\n                                                <td md-cell ng-click="vm_ac.editOutboundRouteApp($event, $index)">{{app.app.toLowerCase() === \'agi\' ? \'Cally-Square\' : app.app | ucfirst}}<span ng-if="app.appType.toLowerCase() === \'custom\'">*</span></td>\n                                                <td md-cell ng-click="vm_ac.editOutboundRouteApp($event, $index)"><span class="text-truncate" style="width:200px">{{app.appdata}}</span></td>\n                                                <td md-cell ng-click="vm_ac.editInterval($event, $index)">{{app.IntervalId ? \'From List\' : app.interval}}</td>\n                                                <td md-cell>\n                                                    <md-button ng-click="vm_ac.editInterval($event, $index)" class="md-icon-button" aria-label="Interval">\n                                                        <md-icon md-font-icon="icon-timer"></md-icon>\n                                                        <md-tooltip>\n                                                            {{app.IntervalId ? \'From List\' : (app.interval === \'*,*,*,*\' ? \'Always\' : \'Custom\')}}\n                                                        </md-tooltip>\n                                                    </md-button>\n                                                </td>\n                                                <td md-cell class="actions">\n                                                    <md-menu>\n                                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                        </md-button>\n\n                                                        <md-menu-content width="3">\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editOutboundRouteApp($event, $index)" translate="VOICE.EDIT_APP">\n                                                                    Edit App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.editInterval($event, $index)" translate="VOICE.EDIT_INTERVAL">\n                                                                    Edit Interval\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                            <md-menu-item>\n                                                                <md-button ng-click="vm_ac.deleteConfirm(app, $index, $event)" translate="VOICE.DELETE_APP">\n                                                                    Delete App\n                                                                </md-button>\n                                                            </md-menu-item>\n                                                        </md-menu-content>\n                                                    </md-menu>\n                                                </td>\n                                            </tr>\n                                            <tr md-row ng-hide="vm_ac.outboundrouteApps.rows.length">\n                                                <td md-cell colspan="6">\n                                                    <span class="text-boxed-ligth" translate="VOICE.NO_APPS_AVAILABLE">No apps available</span>\n                                                </td>\n                                            </tr>\n                                        </tbody>\n                                        <tfoot md-foot>\n                                            <tr md-row>\n                                                <td md-cell colspan="7">\n                                                    <span><em translate="VOICE.LEGEND.CUSTOM_APPLICATION">(*) - Custom application.</em></span>\n                                                </td>\n                                            </tr>\n                                        </tfoot>\n                                    </table>\n                                </md-table-container>\n                                \x3c!-- / QUEUES TABLE --\x3e\n\n                                \x3c!-- NO RESULTS --\x3e\n\n                                \x3c!-- / NO RESULTS --\x3e\n                            </div>\n                            \x3c!-- / MAIN --\x3e\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/outboundroutes/outboundroutes.html",'<div id="outboundroutes" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.OUTBOUNDROUTES">OutboundRoutes</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedOutboundRoutes.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedOutboundRoutes =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-outboundroutes-count">\n                    <span>{{vm.selectedOutboundRoutes.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="OUTBOUNDROUTES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllOutboundRoutes()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectOutboundRoutes()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedOutboundRoutes" filename="outboundroutes.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedOutboundRoutes($event)" aria-label="delete selected" translate translate-attr-label="OUTBOUNDROUTES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- OUTBOUNDROUTE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedOutboundRoutes" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getOutboundRoutes">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="exten">{{ \'VOICE.PHONENUMBER\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.outboundroutes.rows.length">\n                                <td md-cell colspan="4">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="outboundroute" md-select-id="id" ng-repeat="outboundroute in vm.outboundroutes.rows">\n                                <td md-cell ng-if="outboundroute.userpic"><img class="avatar" alt="{{outboundroute.name}}" ng-src="api/users/{{outboundroute.id}}/avatar" /></td>\n                                <td md-cell ng-if="!outboundroute.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{outboundroute.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditOutboundRoute($event, outboundroute)" md-cell class="id ">{{outboundroute.id}}</td>\n                                <td ng-click="vm.createOrEditOutboundRoute($event, outboundroute)" md-cell class="exten ">{{outboundroute.exten}}</td>\n                                <td ng-click="vm.createOrEditOutboundRoute($event, outboundroute)" md-cell class="description ">{{outboundroute.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(outboundroute, $event)" translate="VOICE.EDIT_OUTBOUNDROUTE">\n                                                    Edit OutboundRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(outboundroute, $event)" translate="VOICE.DELETE_OUTBOUNDROUTE">\n                                                    Delete OutboundRoute\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.outboundroutes.count}}" md-on-paginate="vm.getOutboundRoutes" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / OUTBOUNDROUTE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD OUTBOUNDROUTE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-outboundroute-button" ng-click="vm.createOrEditOutboundRoute($event)" aria-label="add outboundroute" translate translate-attr-aria-label="VOICE.ADD_OUTBOUNDROUTE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD OUTBOUNDROUTE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/realtime/agents/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.AGENTS">Agents</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n        <md-button class="md-icon-button" ng-click="vm.showInfo($event)">\n            <i class="icon-information-outline grey-600-fg">\n        <md-tooltip>{{\'VOICE.INFO\' | translate}}</md-tooltip>\n      </i>\n        </md-button>\n    </div>\n</md-toolbar>\n\n\x3c!-- AGENT TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getAgents">\n            <tr md-row>\n                <th md-column width="20px"></th>\n                <th md-column md-order-by="fullname">{{ \'VOICE.FULLNAME\' | translate }}</th>\n                <th md-column md-order-by="internal">{{ \'VOICE.INTERNAL\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PHONE_STATE\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PHONE_STATUS\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.agents">\n                <td md-cell colspan="6">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="agent" md-select-id="id" ng-repeat="(id, agent) in vm.agents">\n                <td md-cell>\n                    <div class="avatar-wrapper">\n                        <img md-menu-align-target class="avatar" ng-src="{{agent.userpic && \'api/users/\'+agent.id+\'/avatar\' || \'assets/images/avatars/profile.jpg\'}}">\n                        <md-icon md-font-icon class="icon status s16 icon-checkbox-marked-circle" ng-class="agent.online ? \'green-300-fg\' : \'red-300-fg\'"></md-icon>\n                    </div>\n                </td>\n                <td md-cell>\n                    <div layout="column">\n                        <span class="text-truncate"><span ng-if="agent.online" class="text-boxed"><timer start-time="agent.lastLoginAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>{{agent.fullname}}</span>\n                        <span class="text-truncate" ng-if="agent.voicePause">\n              <span><span class="text-boxed"><timer start-time="agent.lastPauseAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></span><span class="blink red-fg">{{agent.pauseType || \'dafault\' | uppercase}}</span>\n                        </span>\n                    </div>\n                </td>\n                <td md-cell>\n                    {{agent.internal}}\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.stateClass[agent.state]">\n            <md-tooltip>{{\'VOICE.\' + agent.state | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span class="text-boxed" ng-if="agent.stateTime && vm.isAvailableState(agent.state)">\n            <timer ng-if="agent.stateTime" start-time="agent.stateTime" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n          </span>\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.statusClass[agent.status]">\n            <md-tooltip>{{\'VOICE.\' + agent.status | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span ng-if="agent.status === \'registered\'" class="text-boxed">{{agent.address}}</span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="4">\n                            <md-menu-item>\n                                <md-button ng-click="vm.logout(agent, $event)" translate="VOICE.LOGOUT">\n                                    Logout\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.queueAdd(agent, $event)" translate="VOICE.AGENTADD_QUEUE">\n                                    Add Agent In Queue\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-menu>\n                                    <md-button ng-click="$mdMenu.open()" translate="VOICE.PAUSE">Pause</md-button>\n                                    <md-menu-content>\n                                        <md-menu-item>\n                                            <md-button ng-click="vm.pause(agent)"><em translate="VOICE.DEFAULT_PAUSE">Default Pause</em></md-button>\n                                        </md-menu-item>\n                                        <md-menu-item ng-if="vm.pauses.rows.length" ng-repeat="pause in vm.pauses.rows">\n                                            <md-button ng-click="vm.pause(agent, pause.name)">{{pause.name}}</md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.unPause(agent)" translate="VOICE.UNPAUSE">\n                                    Unpause\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getAgents" md-page-select></md-table-pagination>\n\x3c!-- / AGENT TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/outbound_calls/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.OUTBOUND_CALLS">Ooutbound Calls</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- OUTBOUNDS TABLE --\x3e\n<md-table-container>\n    <table md-table>\n        <thead md-head>\n            <tr md-row>\n                <th md-column width="30px"></th>\n                <th md-column>{{ \'VOICE.SOURCE\' | translate }}</th>\n                <th md-column>{{ \'VOICE.DESTINATION\' | translate }}</th>\n                <th md-column>{{ \'VOICE.DURATION\' | translate }}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.calls.count">\n                <td md-cell colspan="4">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="call in vm.calls.rows | filter: vm.query.filter | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit">\n                <td md-cell>\n                    <i ng-class="vm.channelStatus[call.channelstatedesc.toLowerCase()]"></i>\n                </td>\n                <td md-cell>\n                    {{call.calleridname}}, {{call.calleridnum}} <span class="text-boxed" ng-if="call.answered"><timer ng-if="call.answertime" start-time="call.answertime" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span>\n                </td>\n                <td md-cell>{{call.exten}}</td>\n                <td md-cell>\n                    <span class="text-boxed" ng-if="call.channelstatedesc.toLowerCase() !== \'hangup\'">\n                      <timer ng-if="call.starttime" start-time="call.starttime" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n                    </span>\n                    <span class="text-boxed" ng-if="call.channelstatedesc.toLowerCase() === \'hangup\'" translate="VOICE.CLOSING">Closing</span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="vm.query.limitOptions" md-page="vm.query.page" md-total="{{vm.calls.count}}"></md-table-pagination>\n\x3c!-- / OUTBOUNDS TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/queue_calls/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.QUEUE_CALLS">Queue Calls</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUES TABLE --\x3e\n<md-table-container>\n    <table md-table>\n        <thead md-head>\n            <tr md-row>\n                <th md-column width="30px"></th>\n                <th md-column>{{ \'VOICE.DID\' | translate }}</th>\n                <th md-column>{{ \'VOICE.QUEUE\' | translate }}</th>\n                <th md-column>{{ \'VOICE.CALLER\' | translate }}</th>\n                <th md-column>{{ \'VOICE.AGENT\' | translate }}</th>\n                <th md-column>{{ \'VOICE.DURATION\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.calls.rows.length">\n                <td md-cell colspan="7">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="call in vm.calls.rows | filter: vm.query.filter | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit">\n                \x3c!-- <tr md-row ng-repeat="(channel, call) in vm.calls.rows | limitTo: vm.query.limit: (vm.query.page - 1) * vm.query.limit"> --\x3e\n                <td md-cell>\n                    <i ng-class="vm.channelStatusClass[call.status.toLowerCase()]"></i>\n                </td>\n                <td md-cell>{{call.exten}}</td>\n                <td md-cell>{{call.queue}}</td>\n                <td md-cell><span ng-if="call.calleridname">{{call.calleridname}}, </span>{{call.calleridnum}}</td>\n                <td md-cell>\n                    <span ng-if="call.queuecallerleaveAt">\n            {{call.connectedlinename}}, {{call.connectedlinenum}}\n            <span class="text-boxed">\n              <timer start-time="call.queuecallerleaveAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            </span>\n                    </span>\n                    <span ng-if="!call.queuecallerleaveAt" class="text-boxed" translate="VOICE.WAITING_FOR_AGENT">\n            Waiting for agent...\n            <span class="text-boxed">\n              <timer start-time="call.queuecallerjoinAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            </span>\n                    </span>\n                </td>\n                <td md-cell>\n                    <span class="text-boxed">\n            <timer ng-if="call.queuecallerjoinAt" start-time="call.queuecallerjoinAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n            <span ng-if="call.queuecallercomplete || call.queuecallerabandon || call.queuecallerexit" translate="VOICE.CLOSING">Closing</span>\n                    </span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="STAFF.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="2">\n                            <md-menu-item>\n                                <md-button ng-click="vm.hangup(call.uniqueid)" translate="VOICE.HANGUP">\n                                    Hangup\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.redirectToNumber($event, call.uniqueid)" translate="VOICE.REDIRECT_TO_NUMBER">\n                                    Number\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-menu>\n                                    <md-button ng-click="$mdMenu.open()" translate="VOICE.REDIRECT_TO_AGENT">Redirect to Agent</md-button>\n                                    <md-menu-content>\n                                        <md-menu-item ng-repeat="agent in vm.agents.rows">\n                                            <md-button ng-click="vm.redirectToAgent(call.uniqueid, agent.name)">{{agent.name}}</md-button>\n                                        </md-menu-item>\n                                    </md-menu-content>\n                                </md-menu>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="vm.query.limitOptions" md-page="vm.query.page" md-total="{{vm.calls.count}}"></md-table-pagination>\n\x3c!-- / QUEUES TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/queue_params/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="MOTIONDIALER.QUEUE_PARAMETERS">Params</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueues">\n            <tr md-row>\n                <th md-column>{{\'VOICE.NAME\' | translate}}</th>\n                <th md-column>{{\'VOICE.TOTAL_OFFERED\' | translate}}</th>\n                <th md-column>{{\'VOICE.ANSWERED\' | translate}}</th>\n                <th md-column>{{\'VOICE.ABANDONED\' | translate}}</th>\n                <th md-column>{{\'VOICE.UNMANAGED\' | translate}}</th>\n                <th md-column>{{\'VOICE.AVG_HOLD_TIME\' | translate}}</th>\n                <th md-column>{{\'VOICE.AVG_DURATION\' | translate}}</th>\n                <th md-column>{{\'VOICE.AVG_BILLABLE\' | translate}}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.queues">\n                <td md-cell colspan="8">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="MOTIONDIALER.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="(id, queue) in vm.queues">\n                <td md-cell>\n                    <span>{{queue.name}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.total || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.answered || 0}} ({{(queue.total) ? (queue.answered || 0) * 100/queue.total : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{(queue.total - queue.answered) || 0}} ({{(queue.total) ? ((queue.total - queue.answered) || 0) * 100/queue.total : 0 | number:1}}%)</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.unmanaged || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.total ? (queue.sumHoldTime / queue.total) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.total ? (queue.sumDuration / queue.total) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.answered ? ((queue.sumBillable || 0) / queue.answered) : 0 | number: 0 | secToTime | date:\'HH:mm:ss\'}}</span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getQueues" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/queues/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.QUEUES">Queues</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n    </div>\n</md-toolbar>\n\n\x3c!-- QUEUE TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getQueues">\n            <tr md-row>\n                <th md-column>{{ \'VOICE.NAME\' | translate }}</th>\n                <th md-column>{{ \'VOICE.LOGGED_IN\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PAUSED\' | translate }}</th>\n                <th md-column>{{ \'VOICE.READY\' | translate }}</th>\n                <th md-column>{{ \'VOICE.WAITING\' | translate }}</th>\n                <th md-column>{{ \'VOICE.TALKING\' | translate }}</th>\n                <th md-column width="10px"></th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.queues">\n                <td md-cell colspan="7">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="queue" md-select-id="id" ng-repeat="(id, queue) in vm.queues">\n                <td md-cell>{{queue.name}}</td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.loggedInDb || 0}} ({{queue.loggedIn || 0}})</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.paused || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.available || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-20 grey-fg">{{queue.waiting || 0}}</span>\n                </td>\n                <td md-cell>\n                    <span class="font-size-16 grey-fg">{{queue.talking || 0}}</span>\n                </td>\n                <td md-cell class="actions">\n                    <md-menu>\n                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                        </md-button>\n\n                        <md-menu-content width="3">\n                            <md-menu-item>\n                                <md-button ng-click="vm.createOrEditVoiceQueue($event, queue)" translate="VOICE.EDIT_QUEUE">\n                                    Edit Queue\n                                </md-button>\n                            </md-menu-item>\n                            <md-menu-item>\n                                <md-button ng-click="vm.agentAdd($event, queue)" translate="VOICE.AGENTSADD_QUEUE">\n                                    Add Agents to queue\n                                </md-button>\n                            </md-menu-item>\n                        </md-menu-content>\n                    </md-menu>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getQueues" md-page-select></md-table-pagination>\n\x3c!-- / QUEUE TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/realtime.html",'<div id="realtime" class="page-layout simple tabbed" layout="column" ng-cloak>\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.AGENTS">Agents</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.TELEPHONES">Telephones</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.TRUNKS">Trunks</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.QUEUES">Queues</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.QUEUE_CALLS">Queue Calls</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.QUEUE_PARAMS">Queue Parameters</span>\n                </md-tab-label>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.OUTBOUND_CALLS">Outbound Calls</span>\n                </md-tab-label>\n            </md-tab>\n        </md-tabs>\n\n        <md-card ui-view></md-card>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n</div>'),e.put("app/main/apps/voice/views/realtime/telephones/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.TELEPHONES">Telephones</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n        <md-button class="md-icon-button" ng-click="vm.showInfo($event)">\n            <i class="icon-information-outline grey-600-fg">\n              <md-tooltip>{{\'VOICE.INFO\' | translate}}</md-tooltip>\n            </i>\n        </md-button>\n    </div>\n</md-toolbar>\n\n\x3c!-- AGENT TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTelephones">\n            <tr md-row>\n                <th md-column md-order-by="fullname">{{ \'VOICE.ACCOUNTNAME\' | translate }}</th>\n                <th md-column md-order-by="internal">{{ \'VOICE.INTERNAL\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PHONE_STATE\' | translate }}</th>\n                <th md-column>{{ \'VOICE.PHONE_STATUS\' | translate }}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.telephones">\n                <td md-cell colspan="4">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row md-select="telephone" md-select-id="id" ng-repeat="(id, telephone) in vm.telephones">\n                <td md-cell>{{telephone.fullname}}</td>\n                <td md-cell>{{telephone.internal}}</td>\n                <td md-cell>\n                    <i ng-class="vm.stateClass[telephone.state]">\n                    <md-tooltip>{{\'VOICE.\' + telephone.state | uppercase | translate}}</md-tooltip>\n                  </i>\n                </td>\n                <td md-cell>\n                    <i ng-class="vm.statusClass[telephone.status]">\n                    <md-tooltip>{{\'VOICE.\' + telephone.status | uppercase | translate}}</md-tooltip>\n                  </i>\n                    <span ng-if="telephone.status === \'registered\'" class="text-boxed">{{telephone.address}}</span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getTelephones" md-page-select></md-table-pagination>\n\x3c!-- / AGENT TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/realtime/trunks/view.html",'\x3c!-- MAIN --\x3e\n<md-toolbar class="md-table-toolbar md-default">\n    <div class="md-toolbar-tools">\n        <span class="md-subhead" translate="VOICE.TRUNKS">Telephones</span>\n        <div flex></div>\n        <ms-search-bar on-search="vm.query.filter = query;" on-collapse="vm.query.filter = undefined;" debounce="300"></ms-search-bar>\n        <md-button class="md-icon-button" ng-click="vm.showInfo($event)">\n            <i class="icon-information-outline grey-600-fg">\n        <md-tooltip>{{\'VOICE.INFO\' | translate}}</md-tooltip>\n      </i>\n        </md-button>\n    </div>\n</md-toolbar>\n\n\x3c!-- TRUNKS TABLE --\x3e\n<md-table-container>\n    <table md-table multiple md-progress="vm.promise">\n        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getTelephones">\n            <tr md-row>\n                <th md-column md-order-by="fullname">{{ \'VOICE.NAME\' | translate }}</th>\n                <th md-column>{{ \'VOICE.TRUNK_STATUS\' | translate }}</th>\n                <th md-column>{{ \'VOICE.REGISTRY\' | translate }}</th>\n            </tr>\n        </thead>\n        <tbody md-body>\n            <tr md-row ng-hide="vm.trunks">\n                <td md-cell colspan="3">\n                    <div layout="row" layout-align="center center">\n                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                    </div>\n                </td>\n            </tr>\n            <tr md-row ng-repeat="(id, trunk) in vm.trunks">\n                <td md-cell>{{trunk.name}}</td>\n                <td md-cell>\n                    <i ng-class="vm.statusClass[trunk.status.toLowerCase()]">\n            <md-tooltip>{{\'VOICE.\' + trunk.status | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span ng-if="trunk.status === \'registered\'" class="text-boxed">{{trunk.address}}</span>\n                </td>\n                <td md-cell>\n                    <i ng-if="trunk.registry" ng-class="(trunk.stateRegistry.toLowerCase() === \'registered\') ? \'green-300-fg icon-checkbox-marked-circle\' : \'red-300-fg icon-close-circle\'">\n            <md-tooltip>{{\'VOICE.\' + trunk.stateRegistry | uppercase | translate}}</md-tooltip>\n          </i>\n                    <span ng-if="trunk.registry && trunk.host && trunk.port" class="text-boxed">{{trunk.host}}:{{trunk.port}}</span>\n                    <span ng-if="!trunk.registry" translate="VOICE.NO_REGISTRY">\n            No Registry\n          </span>\n                </td>\n            </tr>\n        </tbody>\n    </table>\n</md-table-container>\n\n<md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.count}}" md-on-paginate="vm.getTelephones" md-page-select></md-table-pagination>\n\x3c!-- / TRUNKS TABLE --\x3e\n\x3c!-- / MAIN --\x3e'),e.put("app/main/apps/voice/views/voicemails/create/dialog.html",'<md-dialog class="voicemail-dialog" aria-label="New Voicemail">\n    <form name="voicemailForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.FULLNAME">FullName</label>\n                <input type="text" name="fullname" ng-model="vm.voicemail.fullname" required autofocus>\n                <div ng-messages="voicemailForm.fullname.$error" ng-show="voicemailForm.fullname.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.FULLNAME_REQUIRED">FullName field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.EMAIL">Email</label>\n                <input type="email" name="email" ng-model="vm.voicemail.email" required>\n                <div ng-messages="voicemailForm.email.$error" ng-show="voicemailForm.email.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                    </div>\n                    <div ng-message="email">\n                        <span translate="VOICE.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.PASSWORD">Password</label>\n                <input type="password" name="password" ng-model="vm.voicemail.password" placeholder="Password" translate translate-attr-placeholder="VOICE.PASSWORD" required>\n                <div ng-messages="voicemailForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block" ng-if="vm.newVoicemail ">\n                <label translate="VOICE.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="voicemailForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="VOICE.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.MAILBOX">MailBox</label>\n                <input type="text" name="mailbox" ng-model="vm.voicemail.mailbox" required ng-disabled="!vm.newVoicemail">\n                <div ng-messages="voicemailForm.mailbox.$error" ng-show="voicemailForm.mailbox.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.MAILBOX_REQUIRED">MailBox field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVoicemail" ng-click="vm.saveVoicemail()" class="send-button md-accent md-raised" ng-disabled="voicemailForm.$invalid || voicemailForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVoicemail" ng-click="vm.addNewVoicemail()" class="send-button md-accent md-raised" ng-disabled="voicemailForm.$invalid" aria-label="ADD" translate="VOICE.ADD_VOICEMAIL" translate-attr-aria-label="VOICE.ADD_VOICEMAIL">\n                    ADD VOICEMAIL\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVoicemail" ng-click="vm.deleteVoicemail($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voicemails/edit/view.html",'<div id="voice-voicemail" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-voicemails-button md-icon-button" aria-label="Go to voicemails" ng-click="vm.gotoVoicemails()" translate translate-attr-aria-label="VOICE.GO_TO_VOICEMAILS">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.voicemail.userpic" class="voicemail-image" hide-xs>\n                    <img ng-src="api/users/{{vm.voicemail.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.voicemail.userpic" class="voicemail-image" hide-xs>\n                    <img ng-src="assets/images/business/voicemails.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.voicemail.id}} {{vm.voicemail.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.voicemail.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <div>\n            <md-button type="submit" ng-click="vm.saveVoicemail()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (advancedForm.$invalid) || (messagesForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voicemail-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.FULLNAME">FullName</label>\n                                <input type="text" name="fullname" ng-model="vm.voicemail.fullname" required autofocus>\n                                <div ng-messages="generalForm.fullname.$error" ng-show="generalForm.fullname.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.FULLNAME_REQUIRED">FullName field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.EMAIL">Email</label>\n                                <input type="email" name="email" ng-model="vm.voicemail.email" required>\n                                <div ng-messages="generalForm.email.$error" ng-show="generalForm.email.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.EMAIL_REQUIRED">Email field is required</span>\n                                    </div>\n                                    <div ng-message="email">\n                                        <span translate="VOICE.ERRORS.EMAIL_MUST_VALID">Email must be a valid e-mail address</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PASSWORD">Password</label>\n                                <input type="password" name="password" ng-model="vm.voicemail.password" placeholder="Password" translate translate-attr-placeholder="VOICE.PASSWORD" required>\n                                <div ng-messages="generalForm.password.$error" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block" ng-if="vm.newVoicemail ">\n                                <label translate="VOICE.CONFIRM_PASSWORD">Confirm Password</label>\n                                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                                <div ng-messages="generalForm.confirmPassword.$error" role="alert" multiple>\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                                    </div>\n                                    <div ng-message="passwordMatch">\n                                        <span translate="VOICE.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MAILBOX">MailBox</label>\n                                <input type="text" name="mailbox" ng-model="vm.voicemail.mailbox" required ng-disabled="true">\n                                <div ng-messages="generalForm.mailbox.$error" ng-show="generalForm.mailbox.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MAILBOX_REQUIRED">MailBox field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.VOICEMAIL_CONTEXT">Voicemail_Context</label>\n                                <md-select ng-model="vm.voicemail.context" required>\n                                    <md-option ng-value="context.name" ng-repeat="context in vm.contexts">{{ context.name }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.VOICEMAIL_CONTEXT"></span></div>\n                                <div ng-messages="generalForm.context.$error" ng-show="generalForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.VOICEMAIL_CONTEXT_REQUIRED">Voicemail_Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voicemail-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.TIMEZONE">TimeZone</label>\n                                <input type="text" name="tz" ng-model="vm.voicemail.tz" required autofocus>\n                                <div ng-messages="advancedForm.tz.$error" ng-show="advancedForm.tz.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.TIMEZONE_REQUIRED">TimeZone field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ATTACH">Attach</label>\n                                <md-select ng-model="vm.voicemail.attach">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="advancedForm.attach.$error" ng-show="advancedForm.attach.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ATTACH_REQUIRED">Attach field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ENVELOPE">Envelope</label>\n                                <md-select ng-model="vm.voicemail.envelope">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="advancedForm.envelope.$error" ng-show="advancedForm.envelope.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ENVELOPE_REQUIRED">Envelope field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DELETE">Delete</label>\n                                <md-select ng-model="vm.voicemail.delete">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div ng-messages="advancedForm.delete.$error" ng-show="advancedForm.delete.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DELETE_REQUIRED">Delete field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.EMAILBODY">EmailBody</label>\n                                <input type="text" name="emailbody" ng-model="vm.voicemail.emailbody">\n                                <div ng-messages="advancedForm.emailbody.$error" ng-show="advancedForm.emailbody.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.EMAILBODY_REQUIRED">EmailBody field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.EMAILSUBJECT">EmailSubject</label>\n                                <input type="text" name="emailsubject" ng-model="vm.voicemail.emailsubject">\n                                <div ng-messages="advancedForm.emailsubject.$error" ng-show="advancedForm.emailsubject.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.EMAILSUBJECT_REQUIRED">EmailSubject field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MAXSECONDS">MaxSeconds</label>\n                                <input type="number" name="maxsecs" ng-model="vm.voicemail.maxsecs" min="0">\n                                <div ng-messages="advancedForm.maxsecs.$error" ng-show="advancedForm.maxsecs.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MAXSECONDS_REQUIRED">MaxSeconds field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MAXMESSAGES">MaxMessages</label>\n                                <input type="number" name="maxmsg" ng-model="vm.voicemail.maxmsg" min="0" max="9999">\n                                <div ng-messages="advancedForm.maxmsg.$error" ng-show="advancedForm.maxmsg.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MAXMESSAGES_REQUIRED">MaxMessages field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.MESSAGES">MESSAGES</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voicemail-detail-form-container messages md-background-bg md-whiteframe-1dp">\n                        <div ng-controller="VoicemailMessagesController as vm_dc" ng-init="vm_dc.init(vm.voicemail)">\n                            <md-toolbar class="md-table-toolbar md-default" ng-hide="vm_dc.selectedVoicemailMessages.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead" translate="VOICE.MESSAGES">Messages</span>\n                                    <div flex></div>\n                                    <ms-search-bar on-search="vm_dc.query.filter = query" on-collapse="vm_dc.query.filter = undefined" debounce="300"></ms-search-bar>\n                                </div>\n                            </md-toolbar>\n                            <md-toolbar class="md-table-toolbar md-accent" ng-show="vm_dc.selectedVoicemailMessages.length">\n                                <div class="md-toolbar-tools">\n                                    <span class="md-subhead">{{vm_dc.selectedVoicemailMessages.length}} {{vm_dc.selectedVoicemailMessages.length > 1 ? \'items\' : \'item\'}} selected</span>\n                                    <div flex></div>\n                                    <md-button class="md-icon-button" ng-click="vm_dc.deleteSelectedVoicemailMessages($event)" aria-label="delete selected" translate translate-attr-label="VOICEMAILS.DELETE_SELECTED">\n                                        <md-icon md-font-icon="icon-delete"></md-icon>\n                                    </md-button>\n                                </div>\n                            </md-toolbar>\n                            <md-table-container>\n                                <table md-table md-row-select multiple ng-model="vm_dc.selectedVoicemailMessages" md-progress="vm_dc.promise">\n                                    <thead md-head md-order="vm_dc.query.sort" md-on-reorder="vm_dc.getVoicemailMessages">\n                                        <tr md-row>\n                                            <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                            <th md-column md-order-by="callerid">{{ \'VOICE.CALLER_ID\' | translate }}</th>\n                                            <th md-column md-order-by="duration">{{ \'VOICE.DURATION\' | translate }}</th>\n                                            <th md-column md-order-by="audio">{{ \'VOICE.AUDIO\' | translate }}</th>\n                                            <th md-column md-order-by="stamp">{{ \'VOICE.RECEIVED_AT\' | translate }}</th>\n                                            <th md-column width="10px"></th>\n                                        </tr>\n                                    </thead>\n                                    <tbody md-body>\n                                        <tr md-row md-select="message" md-select-id="id" ng-repeat="message in vm_dc.voicemailMessages.rows">\n                                            <td md-cell>{{message.id}}</td>\n                                            <td md-cell>{{message.callerid}}</td>\n                                            <td md-cell>{{message.duration}}</td>\n                                            <td md-cell><audio controls><source ng-src="{{\'api/voice/mails/messages/\' + message.id + \'/download\'}}" type="audio/wav" preload="none"></source>Your browser does not support the audio element.</audio></td>\n                                            <td md-cell>{{message.stamp | date:\'medium\'}}</td>\n                                            <td md-cell class="actions">\n                                                <md-menu>\n                                                    <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                                        <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                                    </md-button>\n\n                                                    <md-menu-content width="3">\n                                                        <md-menu-item>\n                                                            <md-button ng-href="api/voice/mails/messages/{{message.id}}/download" target="_blank" translate="VOICE.DOWNLOAD_MESSAGE">\n                                                                Download Message\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                        <md-menu-item>\n                                                            <md-button ng-click="vm_dc.deleteConfirm(message, $event)" translate="VOICE.DELETE_MESSAGE">\n                                                                Delete Message\n                                                            </md-button>\n                                                        </md-menu-item>\n                                                    </md-menu-content>\n                                                </md-menu>\n                                            </td>\n                                        </tr>\n                                        <tr md-row ng-if="!vm_dc.voicemailMessages.rows.length">\n                                            <td md-cell colspan="7">\n                                                <span class="text-boxed-ligth" translate="VOICE.NO_MESSAGE_AVAILABLE">No message available</span>\n                                            </td>\n                                        </tr>\n                                    </tbody>\n                                </table>\n                            </md-table-container>\n                            <md-table-pagination md-limit="vm_dc.query.limit" md-limit-options="[10, 15, 20]" md-page="vm_dc.query.page" md-total="{{vm_dc.voicemailMessages.count}}" md-on-paginate="vm_dc.getVoicemailMessages" md-page-select></md-table-pagination>\n                        </div>\n\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/voicemails/voicemails.html",'<div id="voicemails" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.VOICEMAILS">Voicemails</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedVoicemails.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedVoicemails =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-voicemails-count">\n                    <span>{{vm.selectedVoicemails.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="VOICEMAILS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllVoicemails()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectVoicemails()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedVoicemails" filename="voicemails.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedVoicemails($event)" aria-label="delete selected" translate translate-attr-label="VOICEMAILS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- VOICEMAIL TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedVoicemails" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoicemails">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="fullname">{{ \'VOICE.FULLNAME\' | translate }}</th>\n                                <th md-column md-order-by="email">{{ \'VOICE.EMAIL\' | translate }}</th>\n                                <th md-column md-order-by="mailbox">{{ \'VOICE.MAILBOX\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.voicemails.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="voicemail" md-select-id="id" ng-repeat="voicemail in vm.voicemails.rows">\n                                <td md-cell ng-if="voicemail.userpic"><img class="avatar" alt="{{voicemail.name}}" ng-src="api/users/{{voicemail.id}}/avatar" /></td>\n                                <td md-cell ng-if="!voicemail.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{voicemail.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditVoicemail($event, voicemail)" md-cell class="id ">{{voicemail.id}}</td>\n                                <td ng-click="vm.createOrEditVoicemail($event, voicemail)" md-cell class="fullname ">{{voicemail.fullname}}</td>\n                                <td ng-click="vm.createOrEditVoicemail($event, voicemail)" md-cell class="email ">{{voicemail.email}}</td>\n                                <td ng-click="vm.createOrEditVoicemail($event, voicemail)" md-cell class="mailbox ">{{voicemail.mailbox}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(voicemail, $event)" translate="VOICE.EDIT_VOICEMAIL">\n                                                    Edit Voicemail\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(voicemail, $event)" translate="VOICE.DELETE_VOICEMAIL">\n                                                    Delete Voicemail\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voicemails.count}}" md-on-paginate="vm.getVoicemails" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / VOICEMAIL TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD VOICEMAIL BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-voicemail-button" ng-click="vm.createOrEditVoicemail($event)" aria-label="add voicemail" translate translate-attr-aria-label="VOICE.ADD_VOICEMAIL">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD VOICEMAIL BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/voiceQueues/create/dialog.html",'<md-dialog class="voiceQueue-dialog" aria-label="New VoiceQueue">\n    <form name="voiceQueueForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.NAME">Name</label>\n                <input type="text" name="name" ng-model="vm.voiceQueue.name" ng-pattern="/^[A-Za-z0-9\\.\\_]+$/i" required autofocus ng-disabled="!vm.newVoiceQueue">\n                <div ng-messages="voiceQueueForm.name.$error" ng-show="voiceQueueForm.name.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.NAME_REQUIRED">Name field is required</span>\n                    </div>\n                    <div ng-message="pattern">\n                        <span translate="VOICE.ERRORS.NAME_MUST_VALID_PATTERN" translate-values="{ regex: \'/^[A-Za-z0-9\\.\\_]+$/i\' }">Name must be valid pattern </span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.STRATEGY">Strategy</label>\n                <md-select ng-model="vm.voiceQueue.strategy" required>\n                    <md-option ng-value="\'ringall\'">Ringall</md-option>\n                    <md-option ng-value="\'rrmemory\'">Round Robin Memory</md-option>\n                    <md-option ng-value="\'leastrecent\'">Least Recent</md-option>\n                    <md-option ng-value="\'fewestcalls\'">Fewest Calls</md-option>\n                    <md-option ng-value="\'random\'">Random</md-option>\n                    <md-option ng-value="\'linear\'">Linear</md-option>\n                    <md-option ng-value="\'wrandom\'">Weight Random</md-option>\n                </md-select>\n                <div ng-messages="voiceQueueForm.strategy.$error" ng-show="voiceQueueForm.strategy.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="VOICE.DESCRIPTION">Description</label>\n                <input type="text" name="description" ng-model="vm.voiceQueue.description">\n                <div ng-messages="voiceQueueForm.description.$error" ng-show="voiceQueueForm.description.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVoiceQueue" ng-click="vm.saveVoiceQueue()" class="send-button md-accent md-raised" ng-disabled="voiceQueueForm.$invalid || voiceQueueForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVoiceQueue" ng-click="vm.addNewVoiceQueue()" class="send-button md-accent md-raised" ng-disabled="voiceQueueForm.$invalid" aria-label="ADD" translate="VOICE.ADD_VOICEQUEUE" translate-attr-aria-label="VOICE.ADD_VOICEQUEUE">\n                    ADD VOICEQUEUE\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVoiceQueue" ng-click="vm.deleteVoiceQueue($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voiceQueues/edit/agentadd/agentadd.html",'<md-dialog class="voiceQueue-dialog" aria-label="voiceQueue">\n    <form name="voiceQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="VOICE.AGENTADD_VOICEQUEUE">Add Agent to voiceQueue</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="VOICE.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="voiceQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voiceQueues/edit/teamadd/teamadd.html",'<md-dialog class="voiceQueue-dialog" aria-label="voiceQueue">\n    <form name="voiceQueueForm" ng-cloak>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2 translate="VOICE.TEAMADD_VOICEQUEUE">Add Team in VOICEQUEUE</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content>\n            <md-input-container flex class="no-margin">\n                <label translate="VOICE.PENALTY">Penalty</label>\n                <input name="penalty" ng-model="vm.penalty" placeholder="0" required md-minlength="0" md-maxlength="3">\n                <div ng-messages="voiceQueueForm.penalty.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span>You must supply a penalty.</span>\n                    </div>\n                    <div ng-message="md-minlength">\n                        <span>Min Penalty 0 characters.</span>\n                    </div>\n                    <div ng-message="md-maxlength">\n                        <span>Max Penalty 3 characters.</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <ms-dual-multiselect options="vm.dualMultiselectOptions"></ms-dual-multiselect>\n        </md-dialog-content>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voiceQueues/edit/view.html",'<div id="voice-voiceQueue" class="page-layout simple tabbed" layout="column">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="start center">\n        <div class="white-fg" layout="row" layout-align="start center" flex>\n            <md-button class="goto-voiceQueues-button md-icon-button" aria-label="Go to voiceQueues" ng-click="vm.gotoVoiceQueues()" translate translate-attr-aria-label="VOICE.GO_TO_VOICEQUEUES">\n                <md-icon md-font-icon="icon-arrow-left"></md-icon>\n            </md-button>\n\n            <div layout="row" layout-align="start center">\n\n                <div ng-if="vm.voiceQueue.userpic" class="voiceQueue-image" hide-xs>\n                    <img ng-src="api/users/{{vm.voiceQueue.id}}/avatar">\n                </div>\n\n                <div ng-if="!vm.voiceQueue.userpic" class="voiceQueue-image" hide-xs>\n                    <img ng-src="assets/images/business/voiceQueues.jpg">\n                </div>\n\n                <div layout="column" layout-align="start start">\n                    <div class="h2">\n                        #{{vm.voiceQueue.id}} {{vm.voiceQueue.name}}\n                    </div>\n                    <div class="subtitle secondary-text">\n                        <span translate="VOICE.CREATED_AT"></span> <span>{{vm.voiceQueue.createdAt | date:\'medium\'}}</span>\n                    </div>\n                </div>\n            </div>\n        </div>\n\n\n        <div ng-cloak>\n            <md-button ng-click="vm.teamadddialog(vm.voiceQueue, $event)" class="md-fab md-orange-500-bg md-icon-button" aria-label="teamadd">\n                <md-tooltip><span translate="VOICE.TEAMADD_VOICEQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-multiple-plus"></md-icon>\n            </md-button>\n        </div>\n\n        <div ng-cloak>\n            <md-button ng-click="vm.agentadddialog(vm.voiceQueue, $event)" class="md-fab md-purple-500-bg md-icon-button" aria-label="agentadd">\n                <md-tooltip><span translate="VOICE.AGENTADD_VOICEQUEUE"></span></md-tooltip>\n                <md-icon md-font-icon="icon-account-plus"></md-icon>\n            </md-button>\n        </div>\n        <div>\n            <md-button type="submit" ng-click="vm.saveVoiceQueue()" class="send-button md-accent md-raised" ng-disabled="(generalForm.$invalid) || (settingsForm.$invalid) || (announcementsForm.$invalid) || (advancedForm.$invalid)" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                SAVE\n            </md-button>\n        </div>\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content">\n\n        <md-tabs md-selected="vm.selectedTab" md-dynamic-height>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.SETTINGS">SETTINGS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voiceQueue-detail-form-container general md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.GENERAL">GENERAL</div>\n                        </div>\n                        <form name="generalForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.STRATEGY">Strategy</label>\n                                <md-select ng-model="vm.voiceQueue.strategy" required autofocus>\n                                    <md-option ng-value="\'ringall\'">Ringall</md-option>\n                                    <md-option ng-value="\'rrmemory\'">Round Robin Memory</md-option>\n                                    <md-option ng-value="\'leastrecent\'">Least Recent</md-option>\n                                    <md-option ng-value="\'fewestcalls\'">Fewest Calls</md-option>\n                                    <md-option ng-value="\'random\'">Random</md-option>\n                                    <md-option ng-value="\'linear\'">Linear</md-option>\n                                    <md-option ng-value="\'wrandom\'">Weight Random</md-option>\n                                </md-select>\n                                <div ng-messages="generalForm.strategy.$error" ng-show="generalForm.strategy.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.STRATEGY_REQUIRED">Strategy field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.TIMEOUT">Timeout</label>\n                                <input type="number" name="timeout" ng-model="vm.voiceQueue.timeout" min="0" required>\n                                <div class="hint"><span translate="VOICE.HELP.TIMEOUT"></span></div>\n                                <div ng-messages="generalForm.timeout.$error" ng-show="generalForm.timeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.TIMEOUT_REQUIRED">Timeout field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MAXLENGTH">MaxLength</label>\n                                <input type="number" name="maxlen" ng-model="vm.voiceQueue.maxlen" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.MAXLENGTH"></span></div>\n                                <div ng-messages="generalForm.maxlen.$error" ng-show="generalForm.maxlen.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MAXLENGTH_REQUIRED">MaxLength field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.RETRY">Retry</label>\n                                <input type="number" name="retry" ng-model="vm.voiceQueue.retry" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.RETRY"></span></div>\n                                <div ng-messages="generalForm.retry.$error" ng-show="generalForm.retry.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.RETRY_REQUIRED">Retry field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.WRAPUPTIME">WrapupTime</label>\n                                <input type="number" name="wrapuptime" ng-model="vm.voiceQueue.wrapuptime" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.WRAPUPTIME"></span></div>\n                                <div ng-messages="generalForm.wrapuptime.$error" ng-show="generalForm.wrapuptime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.WRAPUPTIME_REQUIRED">WrapupTime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.WEIGHT">Weight</label>\n                                <input type="number" name="weight" ng-model="vm.voiceQueue.weight" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.WEIGHT"></span></div>\n                                <div ng-messages="generalForm.weight.$error" ng-show="generalForm.weight.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.WEIGHT_REQUIRED">Weight field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.JOINWHENEMPTY">JoinWhenEmpty</label>\n                                <md-select ng-model="vm.voiceQueue.joinempty" multiple>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'strict\'">strict</md-option>\n                                    <md-option ng-value="\'loose\'">loose</md-option>\n                                    <md-option ng-value="\'paused\'">paused</md-option>\n                                    <md-option ng-value="\'penalty\'">penalty</md-option>\n                                    <md-option ng-value="\'inuse\'">inuse</md-option>\n                                    <md-option ng-value="\'ringing\'">ringing</md-option>\n                                    <md-option ng-value="\'unavailable\'">unavailable</md-option>\n                                    <md-option ng-value="\'invalid\'">invalid</md-option>\n                                    <md-option ng-value="\'unknown\'">unknoww</md-option>\n                                    <md-option ng-value="\'wrapup\'">wrapup</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.JOINWHENEMPTY"></span></div>\n                                <div ng-messages="generalForm.joinempty.$error" ng-show="generalForm.joinempty.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.JOINWHENEMPTY_REQUIRED">JoinWhenEmpty field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.LEAVEWHENEMPTY">LeaveWhenEmpty</label>\n                                <md-select ng-model="vm.voiceQueue.leavewhenempty" multiple>\n                                    <md-option ng-value="\'no\'">no</md-option>\n                                    <md-option ng-value="\'yes\'">yes</md-option>\n                                    <md-option ng-value="\'strict\'">strict</md-option>\n                                    <md-option ng-value="\'loose\'">loose</md-option>\n                                    <md-option ng-value="\'paused\'">paused</md-option>\n                                    <md-option ng-value="\'penalty\'">penalty</md-option>\n                                    <md-option ng-value="\'inuse\'">inuse</md-option>\n                                    <md-option ng-value="\'ringing\'">ringing</md-option>\n                                    <md-option ng-value="\'unavailable\'">unavailable</md-option>\n                                    <md-option ng-value="\'invalid\'">invalid</md-option>\n                                    <md-option ng-value="\'unknown\'">unknoww</md-option>\n                                    <md-option ng-value="\'wrapup\'">wrapup</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.LEAVEWHENEMPTY"></span></div>\n                                <div ng-messages="generalForm.leavewhenempty.$error" ng-show="generalForm.leavewhenempty.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.LEAVEWHENEMPTY_REQUIRED">LeaveWhenEmpty field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MUSICONHOLD">MusicOnHold</label>\n                                <md-select ng-model="vm.voiceQueue.musiconhold">\n                                    <md-option ng-value="musiconhold.name" ng-repeat="musiconhold in vm.musiconholds">{{ musiconhold.name }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.MUSICONHOLD"></span></div>\n                                <div ng-messages="generalForm.musiconhold.$error" ng-show="generalForm.musiconhold.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MUSICONHOLD_REQUIRED">MusicOnHold field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCETOAGENT">AnnounceToAgent</label>\n                                <md-select ng-model="vm.voiceQueue.announce">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + announce.save_name" ng-repeat="announce in vm.sounds">{{ announce.name }}</md-option>\n                                    <md-option ng-value="\'\'">None</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCETOAGENT"></span></div>\n                                <div ng-messages="generalForm.announce.$error" ng-show="generalForm.announce.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCETOAGENT_REQUIRED">AnnounceToAgent field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.DESCRIPTION">Description</label>\n                                <input type="text" name="description" ng-model="vm.voiceQueue.description">\n                                <div ng-messages="generalForm.description.$error" ng-show="generalForm.description.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.DESCRIPTION_REQUIRED">Description field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ANNOUNCEMENTS">ANNOUNCEMENTS</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voiceQueue-detail-form-container settings md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.SETTINGS">SETTINGS</div>\n                        </div>\n                        <form name="settingsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCEFREQUENCY">AnnounceFrequency</label>\n                                <input type="number" name="announce_frequency" ng-model="vm.voiceQueue.announce_frequency" min="0" autofocus>\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCEFREQUENCY"></span></div>\n                                <div ng-messages="settingsForm.announce_frequency.$error" ng-show="settingsForm.announce_frequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCEFREQUENCY_REQUIRED">AnnounceFrequency field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MINANNOUNCEFREQUENCY">MinAnnounceFrequency</label>\n                                <input type="number" name="min_announce_frequency" ng-model="vm.voiceQueue.min_announce_frequency" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.MINANNOUNCEFREQUENCY"></span></div>\n                                <div ng-messages="settingsForm.min_announce_frequency.$error" ng-show="settingsForm.min_announce_frequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MINANNOUNCEFREQUENCY_REQUIRED">MinAnnounceFrequency field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PERIODICANNOUNCEFREQUENCY">PeriodicAnnounceFrequency</label>\n                                <input type="number" name="periodic_announce_frequency" ng-model="vm.voiceQueue.periodic_announce_frequency" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.PERIODICANNOUNCEFREQUENCY"></span></div>\n                                <div ng-messages="settingsForm.periodic_announce_frequency.$error" ng-show="settingsForm.periodic_announce_frequency.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PERIODICANNOUNCEFREQUENCY_REQUIRED">PeriodicAnnounceFrequency field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.RANDOMPERIODICANNOUNCE">RandomPeriodicAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.random_periodic_announce">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.RANDOMPERIODICANNOUNCE"></span></div>\n                                <div ng-messages="settingsForm.random_periodic_announce.$error" ng-show="settingsForm.random_periodic_announce.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.RANDOMPERIODICANNOUNCE_REQUIRED">RandomPeriodicAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCEHOLDTIME">AnnounceHoldtime</label>\n                                <md-select ng-model="vm.voiceQueue.announce_holdtime">\n                                    <md-option ng-value="\'yes\'">Yes</md-option>\n                                    <md-option ng-value="\'no\'">No</md-option>\n                                    <md-option ng-value="\'once\'">Once</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCEHOLDTIME"></span></div>\n                                <div ng-messages="settingsForm.announce_holdtime.$error" ng-show="settingsForm.announce_holdtime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCEHOLDTIME_REQUIRED">AnnounceHoldtime field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCECALLERPOSITION">AnnounceCallerPosition</label>\n                                <md-select ng-model="vm.voiceQueue.announce_position">\n                                    <md-option ng-value="\'yes\'">Yes</md-option>\n                                    <md-option ng-value="\'no\'">No</md-option>\n                                    <md-option ng-value="\'limit\'">Limit</md-option>\n                                    <md-option ng-value="\'more\'">More</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCECALLERPOSITION"></span></div>\n                                <div ng-messages="settingsForm.announce_position.$error" ng-show="settingsForm.announce_position.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCECALLERPOSITION_REQUIRED">AnnounceCallerPosition field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ANNOUNCEPOSITIONLIMIT">AnnouncePositionLimit</label>\n                                <input type="number" name="announce_position_limit" ng-model="vm.voiceQueue.announce_position_limit">\n                                <div class="hint"><span translate="VOICE.HELP.ANNOUNCEPOSITIONLIMIT"></span></div>\n                                <div ng-messages="settingsForm.announce_position_limit.$error" ng-show="settingsForm.announce_position_limit.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ANNOUNCEPOSITIONLIMIT_REQUIRED">AnnouncePositionLimit field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.REPORTHOLDTIMEAGENT">ReportHoldtimeAgent</label>\n                                <md-select ng-model="vm.voiceQueue.reportholdtime">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.REPORTHOLDTIMEAGENT"></span></div>\n                                <div ng-messages="settingsForm.reportholdtime.$error" ng-show="settingsForm.reportholdtime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.REPORTHOLDTIMEAGENT_REQUIRED">ReportHoldtimeAgent field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                    <div class="voiceQueue-detail-form-container announcements md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.ANNOUNCEMENTS">ANNOUNCEMENTS</div>\n                        </div>\n                        <form name="announcementsForm" novalidate>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.PERIODICANNOUNCE">PeriodicAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.periodic_announce" autofocus>\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + periodic_announce.save_name" ng-repeat="periodic_announce in vm.sounds">{{ periodic_announce.name }}</md-option>\n                                    <md-option ng-value="\'\'">Default</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.PERIODICANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.periodic_announce.$error" ng-show="announcementsForm.periodic_announce.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.PERIODICANNOUNCE_REQUIRED">PeriodicAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.HOLDTIMEANNOUNCE">HoldTimeAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_reporthold">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_reporthold.save_name" ng-repeat="queue_reporthold in vm.sounds">{{ queue_reporthold.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.HOLDTIMEANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_reporthold.$error" ng-show="announcementsForm.queue_reporthold.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.HOLDTIMEANNOUNCE_REQUIRED">HoldTimeAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.YOUARENEXTANNOUNCE">YouareNextAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_youarenext">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_youarenext.save_name" ng-repeat="queue_youarenext in vm.sounds">{{ queue_youarenext.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.YOUARENEXTANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_youarenext.$error" ng-show="announcementsForm.queue_youarenext.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.YOUARENEXTANNOUNCE_REQUIRED">YouareNextAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.THEREAREANNOUNCE">ThereareAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_thereare">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_thereare.save_name" ng-repeat="queue_thereare in vm.sounds">{{ queue_thereare.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.THEREAREANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_thereare.$error" ng-show="announcementsForm.queue_thereare.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.THEREAREANNOUNCE_REQUIRED">ThereareAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.WAITINGCALLSANNOUNCE">WaitingCallsAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_callswaiting">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_callswaiting.save_name" ng-repeat="queue_callswaiting in vm.sounds">{{ queue_callswaiting.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.WAITINGCALLSANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_callswaiting.$error" ng-show="announcementsForm.queue_callswaiting.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.WAITINGCALLSANNOUNCE_REQUIRED">WaitingCallsAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.ESTIMATEDHOLDTIMEANNOUNCE">EstimatedHoldTimeAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_holdtime">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_holdtime.save_name" ng-repeat="queue_holdtime in vm.sounds">{{ queue_holdtime.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.ESTIMATEDHOLDTIMEANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_holdtime.$error" ng-show="announcementsForm.queue_holdtime.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.ESTIMATEDHOLDTIMEANNOUNCE_REQUIRED">EstimatedHoldTimeAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MINUTESANNOUNCE">MinutesAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_minutes">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_minutes.save_name" ng-repeat="queue_minutes in vm.sounds">{{ queue_minutes.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.MINUTESANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_minutes.$error" ng-show="announcementsForm.queue_minutes.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MINUTESANNOUNCE_REQUIRED">MinutesAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MINUTEANNOUNCE">MinuteAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_minute">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_minute.save_name" ng-repeat="queue_minute in vm.sounds">{{ queue_minute.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.MINUTEANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_minute.$error" ng-show="announcementsForm.queue_minute.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MINUTEANNOUNCE_REQUIRED">MinuteAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.SECONDSANNOUNCE">SecondsAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_seconds">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_seconds.save_name" ng-repeat="queue_seconds in vm.sounds">{{ queue_seconds.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.SECONDSANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_seconds.$error" ng-show="announcementsForm.queue_seconds.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SECONDSANNOUNCE_REQUIRED">SecondsAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.THANKYOUANNOUNCE">ThankYouAnnounce</label>\n                                <md-select ng-model="vm.voiceQueue.queue_thankyou">\n                                    <md-option ng-value="\'/var/opt/motion2/server/files/sounds/converted/\' + queue_thankyou.save_name" ng-repeat="queue_thankyou in vm.sounds">{{ queue_thankyou.name }}</md-option>\n                                    <md-option ng-value="null">Default</md-option>\n                                    <md-option ng-value="\'\'">Disabled</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.THANKYOUANNOUNCE"></span></div>\n                                <div ng-messages="announcementsForm.queue_thankyou.$error" ng-show="announcementsForm.queue_thankyou.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.THANKYOUANNOUNCE_REQUIRED">ThankYouAnnounce field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n            <md-tab>\n                <md-tab-label>\n                    <span translate="VOICE.ADVANCED">ADVANCED</span>\n                </md-tab-label>\n\n                <md-tab-body>\n                    <div class="voiceQueue-detail-form-container advanced md-background-bg md-whiteframe-1dp">\n                        <div class="pb-16" layout="row" layout-align="start center">\n                            <div class="h2 secondary-text" translate="VOICE.ADVANCED">ADVANCED</div>\n                        </div>\n                        <form name="advancedForm" novalidate>\n                            <md-input-container class="md-block">\n                                <md-switch ng-model="vm.voiceQueue.acw" aria-label="AfterCallWork"><span translate="VOICE.AFTERCALLWORK">AfterCallWork</span></md-switch>\n                                <div class="hint"><span translate="VOICE.HELP.AFTERCALLWORK"></span></div>\n                            </md-input-container>\n                            <md-input-container ng-if="vm.voiceQueue.acw" class="md-block">\n                                <label translate="VOICE.AFTERCALLWORKDURATION">AfterCallWorkDuration</label>\n                                <input type="number" name="acwTimeout" ng-model="vm.voiceQueue.acwTimeout" min="0" required>\n                                <div class="hint"><span translate="VOICE.HELP.AFTERCALLWORKDURATION"></span></div>\n                                <div ng-messages="advancedForm.acwTimeout.$error" ng-show="advancedForm.acwTimeout.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.AFTERCALLWORKDURATION_REQUIRED">AfterCallWorkDuration field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.AUTOPAUSE">AutoPause</label>\n                                <md-select ng-model="vm.voiceQueue.autopause">\n\n                                    <md-option ng-value="\'all\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.AUTOPAUSE"></span></div>\n                                <div ng-messages="advancedForm.autopause.$error" ng-show="advancedForm.autopause.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.AUTOPAUSE_REQUIRED">AutoPause field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.RINGINUSE">RingInUse</label>\n                                <md-select ng-model="vm.voiceQueue.ringinuse">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.RINGINUSE"></span></div>\n                                <div ng-messages="advancedForm.ringinuse.$error" ng-show="advancedForm.ringinuse.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.RINGINUSE_REQUIRED">RingInUse field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MEMBERDELAY">MemberDelay</label>\n                                <input type="number" name="memberdelay" ng-model="vm.voiceQueue.memberdelay" min="0">\n                                <div class="hint"><span translate="VOICE.HELP.MEMBERDELAY"></span></div>\n                                <div ng-messages="advancedForm.memberdelay.$error" ng-show="advancedForm.memberdelay.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MEMBERDELAY_REQUIRED">MemberDelay field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.TIMEOUTRESTART">TimeoutRestart</label>\n                                <md-select ng-model="vm.voiceQueue.timeoutrestart">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.TIMEOUTRESTART"></span></div>\n                                <div ng-messages="advancedForm.timeoutrestart.$error" ng-show="advancedForm.timeoutrestart.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.TIMEOUTRESTART_REQUIRED">TimeoutRestart field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.MONITORFORMAT">MonitorFormat</label>\n                                <md-select ng-model="vm.voiceQueue.monitor_format">\n                                    <md-option ng-value="\'\'">Inactive</md-option>\n                                    <md-option ng-value="\'wav\'">wav</md-option>\n                                    <md-option ng-value="\'wav49\'">wav49</md-option>\n                                    <md-option ng-value="\'gsm\'">gsm</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.MONITORFORMAT"></span></div>\n                                <div ng-messages="advancedForm.monitor_format.$error" ng-show="advancedForm.monitor_format.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.MONITORFORMAT_REQUIRED">MonitorFormat field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.CONTEXT">Context</label>\n                                <input type="text" name="context" ng-model="vm.voiceQueue.context">\n                                <div class="hint"><span translate="VOICE.HELP.CONTEXT"></span></div>\n                                <div ng-messages="advancedForm.context.$error" ng-show="advancedForm.context.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.CONTEXT_REQUIRED">Context field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.SETINTERFACEVARIABLES">SetInterfaceVariables</label>\n                                <md-select ng-model="vm.voiceQueue.setinterfacevar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.SETINTERFACEVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setinterfacevar.$error" ng-show="advancedForm.setinterfacevar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SETINTERFACEVARIABLES_REQUIRED">SetInterfaceVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.SETQUEUEVARIABLES">SetQueueVariables</label>\n                                <md-select ng-model="vm.voiceQueue.setqueuevar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.SETQUEUEVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setqueuevar.$error" ng-show="advancedForm.setqueuevar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SETQUEUEVARIABLES_REQUIRED">SetQueueVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n                            <md-input-container class="md-block">\n                                <label translate="VOICE.SETQUEUEENTRYVARIABLES">SetQueueEntryVariables</label>\n                                <md-select ng-model="vm.voiceQueue.setqueueentryvar">\n\n                                    <md-option ng-value="\'yes\'"> {{ \'VOICE.YES\' | translate }}</md-option>\n\n                                    <md-option ng-value="\'no\'"> {{ \'VOICE.NO\' | translate }}</md-option>\n                                </md-select>\n                                <div class="hint"><span translate="VOICE.HELP.SETQUEUEENTRYVARIABLES"></span></div>\n                                <div ng-messages="advancedForm.setqueueentryvar.$error" ng-show="advancedForm.setqueueentryvar.$touched" role="alert">\n                                    <div ng-message="required">\n                                        <span translate="VOICE.ERRORS.SETQUEUEENTRYVARIABLES_REQUIRED">SetQueueEntryVariables field is required</span>\n                                    </div>\n                                </div>\n                            </md-input-container>\n\n                        </form>\n                    </div>\n                </md-tab-body>\n            </md-tab>\n        </md-tabs>\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n</div>'),e.put("app/main/apps/voice/views/voiceQueues/voiceQueues.html",'<div id="voiceQueues" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.VOICEQUEUES">VoiceQueues</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedVoiceQueues.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedVoiceQueues =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-voiceQueues-count">\n                    <span>{{vm.selectedVoiceQueues.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="VOICEQUEUES.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllVoiceQueues()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectVoiceQueues()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedVoiceQueues" filename="voiceQueues.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedVoiceQueues($event)" aria-label="delete selected" translate translate-attr-label="VOICEQUEUES.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- VOICEQUEUE TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedVoiceQueues" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoiceQueues">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="id">{{ \'VOICE.ID\' | translate }}</th>\n                                <th md-column md-order-by="name">{{ \'VOICE.NAME\' | translate }}</th>\n                                <th md-column md-order-by="strategy">{{ \'VOICE.STRATEGY\' | translate }}</th>\n                                <th md-column md-order-by="description">{{ \'VOICE.DESCRIPTION\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.voiceQueues.rows.length">\n                                <td md-cell colspan="5">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="voiceQueue" md-select-id="id" ng-repeat="voiceQueue in vm.voiceQueues.rows">\n                                <td md-cell ng-if="voiceQueue.userpic"><img class="avatar" alt="{{voiceQueue.name}}" ng-src="api/users/{{voiceQueue.id}}/avatar" /></td>\n                                <td md-cell ng-if="!voiceQueue.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{voiceQueue.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditVoiceQueue($event, voiceQueue)" md-cell class="id ">{{voiceQueue.id}}</td>\n                                <td ng-click="vm.createOrEditVoiceQueue($event, voiceQueue)" md-cell class="name ">{{voiceQueue.name}}</td>\n                                <td ng-click="vm.createOrEditVoiceQueue($event, voiceQueue)" md-cell class="strategy ">{{ vm.arraystrategy[voiceQueue.strategy].option }}</td>\n                                <td ng-click="vm.createOrEditVoiceQueue($event, voiceQueue)" md-cell class="description ">{{voiceQueue.description}}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.editstate(voiceQueue, $event)" translate="VOICE.EDIT_VOICEQUEUE">\n                                                    Edit VoiceQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.teamadddialog(voiceQueue, $event)" translate="VOICE.TEAMADD_VOICEQUEUE">\n                                                    teamadd VoiceQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.agentadddialog(voiceQueue, $event)" translate="VOICE.AGENTADD_VOICEQUEUE">\n                                                    agentadd VoiceQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(voiceQueue, $event)" translate="VOICE.DELETE_VOICEQUEUE">\n                                                    Delete VoiceQueue\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voiceQueues.count}}" md-on-paginate="vm.getVoiceQueues" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / VOICEQUEUE TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- ADD VOICEQUEUE BUTTON --\x3e\n    <md-button class="md-fab md-accent" id="add-voiceQueue-button" ng-click="vm.createOrEditVoiceQueue($event)" aria-label="add voiceQueue" translate translate-attr-aria-label="VOICE.ADD_VOICEQUEUE">\n        <md-icon md-font-icon="icon-plus"></md-icon>\n    </md-button>\n    \x3c!-- / ADD VOICEQUEUE BUTTON --\x3e\n</div>'),e.put("app/main/apps/voice/views/voiceRecordings/create/dialog.html",'<md-dialog class="voiceRecording-dialog" aria-label="New VoiceRecording">\n    <form name="voiceRecordingForm" class="md-inline-form" novalidate>\n        <md-toolbar class="md-accent md-hue-2">\n            <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n                <span class="title">{{ vm.title | translate }}</span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block">\n                <label translate="VOICE.RATING">Rating</label>\n                <md-select ng-model="vm.voiceRecording.rating" autofocus>\n                    <md-option ng-value="null">{{\'VOICE.NO_RATING\' | translate}}</md-option>\n                    <md-option value="1">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1]"></md-icon>\n                    </md-option>\n                    <md-option value="2">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1,2]"></md-icon>\n                    </md-option>\n                    <md-option value="3">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1,2,3]"></md-icon>\n                    </md-option>\n                    <md-option value="4">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1,2,3,4]"></md-icon>\n                    </md-option>\n                    <md-option value="5">\n                        <md-icon md-font-icon="icon-star" style="color:red" ng-repeat="icon in [1,2,3,4,5]"></md-icon>\n                    </md-option>\n                </md-select>\n                <div ng-messages="voiceRecordingForm.rating.$error" ng-show="voiceRecordingForm.rating.$touched" role="alert">\n                    <div ng-message="required">\n                        <span translate="VOICE.ERRORS.RATING_REQUIRED">Rating field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-if="!vm.newVoiceRecording" ng-click="vm.saveVoiceRecording()" class="send-button md-accent md-raised" ng-disabled="voiceRecordingForm.$invalid || voiceRecordingForm.$pristine" aria-label="SAVE" translate="VOICE.SAVE" translate-attr-aria-label="VOICE.SAVE">\n                    SAVE\n                </md-button>\n\n                <md-button type="submit" ng-if="vm.newVoiceRecording" ng-click="vm.addNewVoiceRecording()" class="send-button md-accent md-raised" ng-disabled="voiceRecordingForm.$invalid" aria-label="ADD" translate="VOICE.ADD_VOICERECORDING" translate-attr-aria-label="VOICE.ADD_VOICERECORDING">\n                    ADD VOICERECORDING\n                </md-button>\n            </div>\n            <div layout="row">\n                <md-button class="md-icon-button" ng-if="!vm.newVoiceRecording" ng-click="vm.deleteVoiceRecording($event)" aria-label="DELETE" translate translate-attr-aria-label="VOICE.DELETE">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                    <md-tooltip><span translate="VOICE.DELETE">DELETE</span></md-tooltip>\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/main/apps/voice/views/voiceRecordings/voiceRecordings.html",'<div id="voiceRecordings" class="page-layout simple left-sidenav inner-sidenav">\n\n    \x3c!-- HEADER --\x3e\n    <div class="header md-accent-bg" layout="row" layout-align="space-between center">\n\n        \x3c!-- APP TITLE --\x3e\n        <div layout="row" layout-align="start center">\n            <div class="logo" layout="row" layout-align="start center">\n                <span class="logo-icon">\n                    <md-icon md-font-icon="icon-phone" class="s24"></md-icon>\n                </span>\n                <span class="logo-text" translate="VOICE.VOICERECORDINGS">VoiceRecordings</span>\n            </div>\n        </div>\n        \x3c!-- / APP TITLE --\x3e\n\n        \x3c!-- SEARCH --\x3e\n        <div class="search-input-wrapper" layout="row" layout-align="start center">\n            <label for="search">\n                <md-icon md-font-icon="icon-magnify"></md-icon>\n            </label>\n            <md-input-container md-no-float class="m-0">\n                <input id="search" placeholder="Search for anyone" type="text" ng-model="vm.query.filter" ng-model-options="{ debounce: 300 }" translate translate-attr-placeholder="VOICE.SEARCH_FOR_ANYONE">\n            </md-input-container>\n        </div>\n        \x3c!-- / SEARCH --\x3e\n\n    </div>\n    \x3c!-- / HEADER --\x3e\n\n    \x3c!-- SELECTED BAR --\x3e\n    <div ng-show="vm.selectedVoiceRecordings.length > 0" class="selected-bar header animate-slide-down md-accent-bg" layout="row" layout-align="start center">\n\n        <div class="close-button-wrapper" ng-click="vm.selectedVoiceRecordings =[]">\n            <md-button layout="row" layout-align="start center">\n                <md-icon md-font-icon="icon-arrow-left" class="mr-8"></md-icon>\n                <span translate="VOICE.BACK">Back</span>\n            </md-button>\n        </div>\n\n        <div flex layout="row" layout-align="space-between center">\n\n            <div>\n                <span class="selected-voiceRecordings-count">\n                    <span>{{vm.selectedVoiceRecordings.length}}</span>\n                <span translate="VOICE.SELECTED">selected</span>\n                </span>\n\n                <md-menu class="select-menu" ng-if="!vm.currentThread">\n                    <md-button class="md-icon-button" ng-click="$mdOpenMenu($event)" aria-label="multi select toggle" translate translate-attr-aria-label="VOICERECORDINGS.MULTI_SELECT_TOGGLE">\n                        <md-icon md-font-icon="icon-menu-down"></md-icon>\n                    </md-button>\n                    <md-menu-content width="3">\n                        <md-menu-item>\n                            <md-button ng-click="vm.selectAllVoiceRecordings()" translate="VOICE.SELECT_ALL">\n                                Select all\n                            </md-button>\n                        </md-menu-item>\n                        <md-menu-item>\n                            <md-button ng-click="vm.deselectVoiceRecordings()" translate="VOICE.SELECT_NONE">\n                                Select none\n                            </md-button>\n                        </md-menu-item>\n                    </md-menu-content>\n                </md-menu>\n            </div>\n\n            <div class="multi-select-actions">\n                <button class="md-icon-button" ng-csv="vm.exportSelectedVoiceRecordings" filename="voiceRecordings.csv">\n                    <md-icon md-font-icon="icon-download"></md-icon>\n                </button>\n                <md-button class="md-icon-button" ng-click="vm.deleteSelectedVoiceRecordings($event)" aria-label="delete selected" translate translate-attr-label="VOICERECORDINGS.DELETE_SELECTED">\n                    <md-icon md-font-icon="icon-delete"></md-icon>\n                </md-button>\n            </div>\n        </div>\n    </div>\n    \x3c!-- / SELECTED BAR --\x3e\n\n    \x3c!-- CONTENT --\x3e\n    <div class="content" md-background-bg layout="row" layout-align="start start">\n\n        \x3c!-- MAIN --\x3e\n        <div class="main scrollable" ms-scroll>\n\n            \x3c!-- VOICERECORDING TABLE --\x3e\n            <md-card>\n                <md-table-container>\n                    <table md-table md-row-select multiple ng-model="vm.selectedVoiceRecordings" md-progress="vm.promise">\n                        <thead md-head md-order="vm.query.sort" md-on-reorder="vm.getVoiceRecordings">\n                            <tr md-row>\n                                <th md-column ng-if="vm.table == \'users\' || vm.table == \'agents\'" width="20px"></th>\n                                <th md-column md-order-by="type">{{ \'VOICE.TYPE\' | translate }}</th>\n                                <th md-column md-order-by="uniqueid">{{ \'VOICE.UNIQUEID\' | translate }}</th>\n                                <th md-column md-order-by="calleridnum">{{ \'VOICE.CALLER\' | translate }}</th>\n                                <th md-column md-order-by="exten">{{ \'VOICE.CALLED\' | translate }}</th>\n                                <th md-column md-order-by="connectedlinenum">{{ \'VOICE.CONNECTED\' | translate }}</th>\n                                <th md-column md-order-by="queue">{{ \'VOICE.QUEUE\' | translate }}</th>\n                                <th md-column md-order-by="rating">{{ \'VOICE.RATING\' | translate }}</th>\n                                <th md-column md-order-by="audio">{{ \'VOICE.AUDIO\' | translate }}</th>\n                                <th md-column md-order-by="createdAt">{{ \'VOICE.DATE\' | translate }}</th>\n                                <th md-column width="10px"></th>\n                            </tr>\n                        </thead>\n                        <tbody md-body>\n                            <tr md-row ng-hide="vm.voiceRecordings.rows.length">\n                                <td md-cell colspan="10">\n                                    <div layout="row" layout-align="center center">\n                                        <span tranlsate="VOICE.NO_AVAILABLE_INFO">No Available Info</span>\n                                    </div>\n                                </td>\n                            </tr>\n                            <tr md-row md-select="voiceRecording" md-select-id="id" ng-repeat="voiceRecording in vm.voiceRecordings.rows">\n                                <td md-cell ng-if="voiceRecording.userpic"><img class="avatar" alt="{{voiceRecording.name}}" ng-src="api/users/{{voiceRecording.id}}/avatar" /></td>\n                                <td md-cell ng-if="!voiceRecording.userpic && (vm.table == \'users\' || vm.table == \'agents\')"><img class="avatar" alt="{{voiceRecording.name}}" ng-src="assets/images/avatars/profile.jpg" /></td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="type ">{{voiceRecording.type}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="uniqueid ">{{voiceRecording.uniqueid}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="calleridnum ">{{voiceRecording.calleridnum}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="exten ">{{voiceRecording.exten}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="connectedlinenum ">{{voiceRecording.connectedlinenum}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="queue ">{{voiceRecording.queue}}</td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="rating ">\n                                    <md-icon md-font-icon="icon-star" style="color:red" ng-show="voiceRecording.rating" ng-repeat="rating in [1,2,3,4,5] | limitTo:voiceRecording.rating"></md-icon><span ng-hide="voiceRecording.rating" translate="VOICE.NO_RATING">No rating</span></td>\n                                <td md-cell class="audio " ng-switch="voiceRecording.format">\n                                    <audio controls ng-switch-when=".wav">\n                                  <source ng-src="{{\'api/voice/recordings/\' + voiceRecording.id + \'/download\'}}" type="audio/wav" preload="none"></source> Your browser does not support the audio element.\n                                 </audio>\n                                    <span ng-switch-when=".gsm">\n                                  <em>{{ \'VOICE.CANT_PLAY_GSM_AUDIO_FILES\' | translate }}</em>\n                                 </span>\n                                </td>\n                                <td ng-click="vm.createOrEditVoiceRecording($event, voiceRecording)" md-cell class="createdAt ">{{voiceRecording.createdAt | date:\'medium\' }}</td>\n                                <td md-cell class="actions">\n                                    <md-menu>\n                                        <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="VOICE.MORE">\n                                            <md-icon md-font-icon="icon-dots-vertical" ng-click="$mdOpenMenu($event)"></md-icon>\n                                        </md-button>\n\n                                        <md-menu-content width="3">\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.downloadfile(voiceRecording, $event)" translate="VOICE.DOWNLOAD_VOICERECORDING">\n                                                    Download VoiceRecording\n                                                </md-button>\n                                            </md-menu-item>\n                                            <md-menu-item>\n                                                <md-button ng-click="vm.deleteconfirm(voiceRecording, $event)" translate="VOICE.DELETE_VOICERECORDING">\n                                                    Delete VoiceRecording\n                                                </md-button>\n                                            </md-menu-item>\n                                        </md-menu-content>\n                                    </md-menu>\n                                </td>\n                            </tr>\n                        </tbody>\n                    </table>\n                </md-table-container>\n\n                <md-table-pagination md-limit="vm.query.limit" md-limit-options="[10, 15, 20]" md-page="vm.query.page" md-total="{{vm.voiceRecordings.count}}" md-on-paginate="vm.getVoiceRecordings" md-page-select></md-table-pagination>\n            </md-card>\n            \x3c!-- / VOICERECORDING TABLE --\x3e\n            \x3c!-- NO RESULTS --\x3e\n\n            \x3c!-- / NO RESULTS --\x3e\n        </div>\n        \x3c!-- / MAIN --\x3e\n\n    </div>\n    \x3c!-- / CONTENT --\x3e\n\n    \x3c!-- NO ADD BUTTON BUTTON --\x3e\n</div>'),e.put("app/navigation/layouts/horizontal-navigation/navigation.html",'<div layout="row" layout-align="start center">\n    <ms-navigation-horizontal></ms-navigation-horizontal>\n</div>'),e.put("app/navigation/layouts/vertical-navigation-fullwidth-toolbar-2/navigation.html",'<ms-navigation class="scrollable" folded="vm.folded" ms-scroll="vm.msScrollOptions">\n</ms-navigation>'),e.put("app/navigation/layouts/vertical-navigation/navigation.html",'<md-toolbar class="navigation-header md-whiteframe-1dp" layout="row" layout-align="space-between center">\n    <div class="logo" layout="row" layout-align="start center">\n        <span class="logo-image"><img src="/api/settings/1/logo" alt="logo" /></span>\n        \x3c!-- <span class="logo-image"><img src="assets/images/logos/whisker_32x32.png" alt="motion_whisker_32x32" /></span> --\x3e\n        <span class="logo-text text-truncate">{{vm.getLogo() | uppercase}}</span>\n    </div>\n    <md-icon class="fold-toggle s18" md-font-icon="icon-backburger" hide show-gt-sm ng-click="vm.toggleMsNavigationFolded()"></md-icon>\n</md-toolbar>\n\n<ms-navigation class="scrollable" folded="vm.folded" ms-scroll="vm.msScrollOptions"></ms-navigation>'),e.put("app/quick-panel/quick-panel.html",'<md-content>\n    <md-tabs md-no-pagination md-swipe-content md-stretch-tabs="always">\n        <md-tab ng-if="vm.license.gray">\n            <md-tab-label>\n                <md-icon md-font-icon="icon-alert" class="icon md-warn blink"></md-icon>\n                <span translate="QUICKPANEL.LICENSE">LICENSE</span>\n            </md-tab-label>\n            <md-tab-body>\n                <md-list-item>\n                    <dl>\n                        <dt translate="QUICKPANEL.EXPIRATION_REASON"> Expiration reason </dt>\n\n                        <dt translate="QUICKPANEL.EXPIRATION_DATE"> Expiration date </dt>\n                        <dd>{{ vm.license.deadline }}</dd>\n\n                        <dt translate="QUICKPANEL.OLD_TOKEN"> Old Token </dt>\n                        <dd>{{ vm.license.uuid }}</dd>\n\n                        <dt translate="QUICKPANEL.NEW_TOKEN"> New Token </dt>\n                        <dd>{{ vm.license.machineUuid }}</dd>\n\n                        <dt translate="QUICKPANEL.CONTACT_XCALLY_MOTION_SUPPORT"> Contact xCALLY MOTION Support </dt>\n                        <dd>\n                            {{ \'QUICKPANEL.SEND_EMAIL_TO\' | translate }} <a href="mailto:license@xcally.com?subject=New%20token%20detected&body=Hi xCALLY, New Token: {{vm.license.machineUuid}}, Old token: {{vm.license.uuid}}">license@xcally.com</a>.\n                        </dd>\n                    </dl>\n                </md-list-item>\n            </md-tab-body>\n        </md-tab>\n\n        <md-tab>\n            <md-tab-label>\n                <span translate="QUICKPANEL.TODAY">TODAY</span>\n            </md-tab-label>\n            <md-tab-body>\n                <md-content class="today-tab scrollable" ms-scroll ng-include="\'app/quick-panel/tabs/today/today-tab.html\'">\n                </md-content>\n            </md-tab-body>\n        </md-tab>\n        \x3c!-- <md-tab>\n  <md-tab-label>\n  <span translate="QUICKPANEL.CHAT">CHAT</span>\n</md-tab-label>\n<md-tab-body>\n<md-content class="chat-tab scrollable" ms-scroll\nng-include="\'app/quick-panel/tabs/chat/chat-tab.html\'"\nng-controller="ChatTabController as vm">\n</md-content>\n</md-tab-body>\n</md-tab>\n<md-tab>\n<md-tab-label>\n<span translate="QUICKPANEL.ACTIVITY">ACTIVITY</span>\n</md-tab-label>\n<md-tab-body>\n<md-content class="activity-tab scrollable" ms-scroll\nng-include="\'app/quick-panel/tabs/activity/activity-tab.html\'">\n</md-content>\n</md-tab-body>\n</md-tab> --\x3e\n    </md-tabs>\n</md-content>'),e.put("app/quick-panel/tabs/activity/activity-tab.html",'<md-list class="friends">\n    <md-subheader class="md-no-sticky">\n        <span translate="QUICKPANEL.FRIENDS">Friends</span>\n    </md-subheader>\n\n    <md-list-item class="friend md-3-line" ng-repeat="friend in vm.activities.friends">\n        <img ng-src="{{friend.avatar}}" class="md-avatar" alt="{{friend.name}}" />\n\n        <div class="status {{friend.status}}"></div>\n\n        <div ng-if="contact.unread" class="md-accent-bg unread-message-count">{{contact.unread}}</div>\n\n        <div class="md-list-item-text">\n            <h3 class="message">{{friend.message}}</h3>\n            <p class="time">{{friend.time}}</p>\n        </div>\n    </md-list-item>\n</md-list>\n\n<md-divider></md-divider>\n\n<md-list class="servers">\n    <md-subheader class="md-no-sticky">\n        <span translate="QUICKPANEL.APP_SERVERS">Application Servers</span>\n    </md-subheader>\n\n    <md-list-item class="server md-3-line" ng-repeat="server in vm.activities.servers">\n        <md-icon md-font-icon="icon-checkbox-blank-circle" class="s16 status" ng-class="server.status"></md-icon>\n\n        <div class="md-list-item-text">\n            <h3>{{server.location}}</h3>\n            <p>{{server.detail}}</p>\n        </div>\n    </md-list-item>\n</md-list>\n\n<md-divider></md-divider>\n\n<md-list class="stats">\n    <md-subheader class="md-no-sticky">\n        <span translate="QUICKPANEL.USER_STATS">User Stats</span>\n    </md-subheader>\n\n    <md-list-item class="stat md-2-line" ng-repeat="stat in vm.activities.stats">\n        <div class="md-list-item-text">\n            <span>{{stat.title}} ({{stat.current}} / {{stat.total}})</span>\n            <md-progress-linear ng-class="stat.status" md-mode="determinate" value="{{stat.percent}}"></md-progress-linear>\n        </div>\n    </md-list-item>\n</md-list>'),e.put("app/quick-panel/tabs/chat/chat-tab.html",'<div class="main animate-slide-left" ng-hide="vm.chatActive">\n    <md-list class="recent">\n        <md-subheader class="md-no-sticky">\n            <span translate="QUICKPANEL.RECENT">Recent</span>\n        </md-subheader>\n\n        <md-list-item class="contact md-3-line" ng-repeat="contact in vm.contacts.recent" ng-click="vm.toggleChat(contact)">\n            <img ng-src="{{contact.avatar}}" class="md-avatar" alt="{{contact.name}}" />\n\n            <div class="status  {{contact.status}}"></div>\n\n            <div ng-if="contact.unread" class="md-accent-bg unread-message-count">{{contact.unread}}</div>\n\n            <div class="md-list-item-text">\n                <h3>{{contact.name}}</h3>\n                <p class="last-message">{{contact.lastMessage}}</p>\n            </div>\n        </md-list-item>\n    </md-list>\n\n    <md-divider></md-divider>\n\n    <md-list class="all">\n        <md-subheader class="md-no-sticky">\n            <span translate="QUICKPANEL.START_NEW_CHAT">Start New Chat</span>\n        </md-subheader>\n\n        <md-list-item class="contact" ng-repeat="contact in vm.contacts.all" ng-click="vm.toggleChat(contact)">\n            <img ng-src="{{contact.avatar}}" class="md-avatar" alt="{{contact.name}}" />\n\n            <div class="status {{contact.status}}"></div>\n\n            <div class="md-list-item-text">\n                <h3>{{contact.name}}</h3>\n            </div>\n        </md-list-item>\n    </md-list>\n\n    <md-divider></md-divider>\n</div>\n\n<div class="chat animate-slide-right" ng-show="vm.chatActive" layout="column">\n    <md-toolbar class="md-accent">\n        <div class="md-toolbar-tools" layout="row" layout-align="space-between center">\n\n            <div layout="row" layout-align="start center">\n                <md-button class="md-icon-button" ng-click="vm.toggleChat()" aria-label="Back" translate translate-attr-aria-label="QUICKPANEL.BACK">\n                    <md-icon md-font-icon="icon-keyboard-backspace"></md-icon>\n                </md-button>\n                <h4>\n                    <span>{{vm.chat.contact.name}}</span>\n                </h4>\n            </div>\n\n            <div layout="row" layout-align="end center">\n                <md-button class="md-icon-button" aria-label="Call" translate translate-attr-aria-label="QUICKPANEL.CALL">\n                    <md-icon md-font-icon="icon-phone"></md-icon>\n                </md-button>\n\n                <md-button class="md-icon-button" aria-label="More" translate translate-attr-aria-label="QUICKPANEL.MORE">\n                    <md-icon md-font-icon="icon-dots-vertical"></md-icon>\n                </md-button>\n            </div>\n        </div>\n\n    </md-toolbar>\n    <md-content flex layout-paddings ms-scroll id="chat-dialog">\n        <div layout="row" ng-repeat="dialog in vm.chat.contact.dialog" class="md-padding message-row" ng-class="dialog.who">\n            <img ng-if="dialog.who ===\'contact\'" ng-src="{{vm.chat.contact.avatar}}" class="avatar" alt="{{vm.chat.contact.name}}" />\n            <img ng-if="dialog.who ===\'user\'" class="avatar" src="assets/images/avatars/profile.jpg">\n\n            <div class="bubble" flex>\n                <div class="message">{{dialog.message}}</div>\n                <div class="time secondary-text">{{dialog.time}}</div>\n            </div>\n        </div>\n    </md-content>\n\n    <form ng-submit="vm.reply()" layout="row" class="reply" layout-align="start center">\n        <textarea ng-keyup="$event.keyCode == 13 ? vm.reply() : null" flex ng-model="vm.replyMessage" placeholder="Type and hit enter to send message" translate translate-attr-placeholder="QUICKPANEL.REPLY_PLACEHOLDER"></textarea>\n\n        <md-button class="md-fab md-mini" type="submit" aria-label="Send message" translate translate-attr-aria-label="QUICKPANEL.SEND_MESSAGE">\n            <md-icon md-font-icon="icon-send"></md-icon>\n        </md-button>\n    </form>\n</div>'),e.put("app/quick-panel/tabs/today/today-tab.html",'<md-list class="date">\n    <md-subheader class="md-no-sticky"><span translate="QUICKPANEL.TODAY">Today</span></md-subheader>\n    <md-list-item class="md-display-1 md-2-line">\n        <div class="secondary-text">\n            <div translate="QUICKPANEL.{{ (vm.date | date:\'EEEE\').toUpperCase() }}"></div>\n            <div layout="row" layout-align="start start">\n                <span> {{vm.date | date:\'d\'}}</span>\n                <span class="md-subhead">th</span>\n                <span translate="QUICKPANEL.{{ (vm.date | date:\'MMMM\').toUpperCase() }}"></span>\n            </div>\n        </div>\n    </md-list-item>\n</md-list>\n\n\x3c!-- <md-divider></md-divider>\n\n<md-list>\n    <md-subheader class="md-no-sticky"><span translate="QUICKPANEL.EVENTS">Events</span></md-subheader>\n\n    <md-list-item class="md-2-line" ng-repeat="event in vm.events" ng-click="dummyFunction()">\n        <div class="md-list-item-text">\n            <h3>{{event.title}}</h3>\n\n            <p>{{event.detail}}</p>\n        </div>\n    </md-list-item>\n</md-list>\n\n<md-divider></md-divider>\n\n<md-list>\n    <md-subheader class="md-no-sticky"><span translate="QUICKPANEL.NOTES">Notes</span></md-subheader>\n    <md-list-item class="md-2-line" ng-repeat="note in vm.notes" ng-click="dummyFunction()">\n        <div class="md-list-item-text">\n            <h3>{{note.title}}</h3>\n\n            <p>{{note.detail}}</p>\n        </div>\n    </md-list-item>\n</md-list>\n\n<md-divider></md-divider>\n\n<md-list>\n    <md-subheader class="md-no-sticky"><span translate="QUICKPANEL.QUICK_SETTINGS">Quick Settings</span></md-subheader>\n\n    <md-list-item>\n        <h3 translate="QUICKPANEL.NOTIFICATIONS">Notifications</h3>\n        <md-switch class="md-secondary" ng-model="vm.settings.notify" aria-label="Notifications" translate\n                   translate-attr-aria-label="QUICKPANEL.NOTIFICATIONS"></md-switch>\n    </md-list-item>\n\n    <md-list-item>\n        <h3 translate="QUICKPANEL.CLOUD_SYNC">Cloud Sync</h3>\n        <md-switch class="md-secondary" ng-model="vm.settings.cloud" aria-label="Cloud Sync" translate\n                   translate-attr-aria-label="QUICKPANEL.CLOUD_SYNC"></md-switch>\n    </md-list-item>\n\n    <md-list-item>\n        <h3 translate="QUICKPANEL.RETRO_THRUSTERS">Retro Thrusters</h3>\n        <md-switch class="md-secondary md-warn" ng-model="vm.settings.retro" aria-label="Retro Thrusters" translate\n                   translate-attr-aria-label="QUICKPANEL.RETRO_THRUSTERS"></md-switch>\n    </md-list-item>\n</md-list> --\x3e'),e.put("app/toolbar/changepassword/changepassword.html",'<md-dialog class="user-dialog" aria-label="{{vm.name}}">\n    <form name="changePasswordForm" class="md-inline-form" novalidate>\n        <md-toolbar>\n            <div class="md-toolbar-tools">\n                <h2>Change Password</h2>\n                <span flex></span>\n                <md-button class="md-icon-button" ng-click="vm.closeDialog()">\n                    <md-icon md-font-icon="icon-close" aria-label="Close dialog"></md-icon>\n                </md-button>\n            </div>\n        </md-toolbar>\n        <md-dialog-content ms-scroll>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n            <md-input-container class="md-block" ng-if="vm.user.role == \'agent\'">\n                <label translate="TOOLBAR.OLD_PASSWORD">Old Password</label>\n                <input type="password" name="oldPassword" ng-model="vm.oldPassword" placeholder="Password" translate translate-attr-placeholder="TOOLBAR.OLD_PASSWORD" required>\n                <div ng-messages="changePasswordForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLBAR.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLBAR.NEW_PASSWORD">New Password</label>\n                <input type="password" name="password" ng-model="vm.password" placeholder="Password" translate translate-attr-placeholder="TOOLBAR.NEW_PASSWORD" required>\n                <div ng-messages="changePasswordForm.password.$error" role="alert">\n                    <div ng-message="required">\n                        <span translate="TOOLBAR.ERRORS.PASSWORD_REQUIRED">Password field is required</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <md-input-container class="md-block">\n                <label translate="TOOLBAR.CONFIRM_PASSWORD">Confirm Password</label>\n                <input type="password" match-password="password" name="confirmPassword" ng-model="confirmPassword">\n                <div ng-messages="changePasswordForm.confirmPassword.$error" role="alert" multiple>\n                    <div ng-message="required">\n                        <span translate="TOOLBAR.ERRORS.CONFIRM_REQUIRED">Confirm field is required</span>\n                    </div>\n                    <div ng-message="passwordMatch">\n                        <span translate="TOOLBAR.ERRORS.CONFIRM_NOT_MATCH">Your password did not match</span>\n                    </div>\n                </div>\n            </md-input-container>\n            <div class="error-list">\n                <div ng-repeat="error in vm.errors" class="error" layout="row" layout-align="space-between center">\n                    <div>\n                        <span class="message">{{error.message}}</span>\n                        <span class="type">({{error.type}})</span>\n                    </div>\n                    <md-button class="md-icon-button">\n                        <md-icon md-font-icon="icon-alert-box" aria-label="alert error" class="s16"></md-icon>\n                    </md-button>\n                </div>\n            </div>\n        </md-dialog-content>\n\n        <md-dialog-actions layout="row" layout-align="space-between center">\n            <div layout="row" layout-align="start center">\n                <md-button type="submit" ng-click="vm.savePassword()" class="send-button md-accent md-raised" ng-disabled="changePasswordForm.$invalid || changePasswordForm.$pristine" aria-label="SAVE" translate="TOOLBAR.SAVE" translate-attr-aria-label="TOOLBAR.SAVE">\n                    SAVE\n                </md-button>\n            </div>\n        </md-dialog-actions>\n    </form>\n</md-dialog>'),e.put("app/toolbar/layouts/content-with-toolbar/toolbar.html",'<div layout="row" layout-align="space-between center">\n\n    <div layout="row" layout-align="start center">\n        <div class="logo" layout="row" layout-align="start center">\n            <span class="logo-image">F</span>\n            <span class="logo-text">MOTION</span>\n        </div>\n\n        <div class="toolbar-separator"></div>\n\n        <ms-shortcuts></ms-shortcuts>\n\n        <div class="toolbar-separator"></div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n\n        <md-progress-circular id="toolbar-progress" ng-if="$root.loadingProgress" class="md-accent" md-mode="indeterminate" md-diameter="32">\n        </md-progress-circular>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide-sm>John Doe</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-sm></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent" ui-sref="app.pages_profile">\n                        <md-icon md-font-icon="icon-account" class="icon"></md-icon>\n                        <md-button>My Profile</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent" ui-sref="app.mail">\n                        <md-icon md-font-icon="icon-email" class="icon"></md-icon>\n                        <md-button>Inbox</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon"></md-icon>\n                        <md-menu id="user-status-menu">\n                            <md-button ng-click="$mdOpenMenu()" class="status" ng-class="vm.userStatus.class">\n                                {{vm.userStatus.title}}\n                            </md-button>\n                            <md-menu-content width="2">\n                                <md-menu-item class="status md-indent" ng-class="{\'selected\': status === vm.userStatus}" ng-repeat="status in vm.userStatusOptions">\n                                    <md-icon md-font-icon="{{status.icon}}" ng-style="{\'color\': status.color }" class="icon"></md-icon>\n                                    <md-button ng-click="vm.setUserStatus(status)">\n                                        {{status.title}}\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n                            <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n                            <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n        </md-button>\n    </div>\n</div>'),e.put("app/toolbar/layouts/horizontal-navigation/toolbar.html",'<div class="top-row" layout="row" layout-align="space-between center">\n\n    <div layout="row" layout-align="start center">\n        <div class="navigation-toggle" hide-gt-sm>\n            <md-button class="md-icon-button" ng-click="vm.toggleHorizontalMobileMenu()" aria-label="Toggle Mobile Navigation">\n                <md-icon md-font-icon="icon-menu"></md-icon>\n            </md-button>\n        </div>\n\n        <div class="logo" layout="row" layout-align="start center">\n            <span class="logo-image">F</span>\n            <span class="logo-text">MOTION</span>\n        </div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n        <md-progress-circular id="toolbar-progress" ng-if="$root.loadingProgress" class="md-accent" md-mode="indeterminate" md-diameter="32">\n        </md-progress-circular>\n\n        <ms-shortcuts></ms-shortcuts>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide-sm>John Doe</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-sm></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent" ui-sref="app.pages_profile">\n                        <md-icon md-font-icon="icon-account" class="icon"></md-icon>\n                        <md-button>My Profile</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent" ui-sref="app.mail">\n                        <md-icon md-font-icon="icon-email" class="icon"></md-icon>\n                        <md-button>Inbox</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon"></md-icon>\n                        <md-menu id="user-status-menu">\n                            <md-button ng-click="$mdOpenMenu()" class="status" ng-class="vm.userStatus.class">\n                                {{vm.userStatus.title}}\n                            </md-button>\n                            <md-menu-content width="2">\n                                <md-menu-item class="status md-indent" ng-class="{\'selected\': status === vm.userStatus}" ng-repeat="status in vm.userStatusOptions">\n                                    <md-icon md-font-icon="{{status.icon}}" ng-style="{\'color\': status.color }" class="icon"></md-icon>\n                                    <md-button ng-click="vm.setUserStatus(status)">\n                                        {{status.title}}\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n                            <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n                            <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n        </md-button>\n    </div>\n</div>'),e.put("app/toolbar/layouts/vertical-navigation-fullwidth-toolbar-2/toolbar.html",'<div layout="row" layout-align="start center">\n    <div layout="row" layout-align="start center" flex>\n\n        <div class="logo" layout="row" layout-align="start center">\n            <span class="logo-image">F</span>\n            <span class="logo-text">MOTION</span>\n        </div>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="navigation-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'navigation\')" hide-gt-sm aria-label="Toggle navigation" translate translate-attr-aria-label="TOOLBAR.TOGGLE_NAVIGATION">\n            <md-icon md-font-icon="icon-menu" class="icon"></md-icon>\n        </md-button>\n\n        <md-button class="md-icon-button navigation-fold-toggle" hide show-gt-sm aria-label="Toggle navigation fold" translate translate-attr-aria-label="TOOLBAR.TOGGLE_NAVIGATION_FOLD" ng-click="vm.toggleMsNavigationFolded()">\n            <md-icon class="s18" md-font-icon="icon-backburger"></md-icon>\n        </md-button>\n\n        <ms-shortcuts></ms-shortcuts>\n\n        <div class="toolbar-separator"></div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n        <md-progress-circular id="toolbar-progress" ng-if="$root.loadingProgress" class="md-accent" md-mode="indeterminate" md-diameter="32">\n        </md-progress-circular>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide-sm>John Doe</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-sm></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent" ui-sref="app.pages_profile">\n                        <md-icon md-font-icon="icon-account" class="icon"></md-icon>\n                        <md-button>My Profile</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent" ui-sref="app.mail">\n                        <md-icon md-font-icon="icon-email" class="icon"></md-icon>\n                        <md-button>Inbox</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon"></md-icon>\n                        <md-menu id="user-status-menu">\n                            <md-button ng-click="$mdOpenMenu()" class="status" ng-class="vm.userStatus.class">\n                                {{vm.userStatus.title}}\n                            </md-button>\n                            <md-menu-content width="2">\n                                <md-menu-item class="status md-indent" ng-class="{\'selected\': status === vm.userStatus}" ng-repeat="status in vm.userStatusOptions">\n                                    <md-icon md-font-icon="{{status.icon}}" ng-style="{\'color\': status.color }" class="icon"></md-icon>\n                                    <md-button ng-click="vm.setUserStatus(status)">\n                                        {{status.title}}\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n                            <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n                            <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n        </md-button>\n    </div>\n</div>'),e.put("app/toolbar/layouts/vertical-navigation-fullwidth-toolbar/toolbar.html",'<div layout="row" layout-align="start center">\n    <div layout="row" layout-align="start center" flex>\n        <md-button id="navigation-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'navigation\')" hide-gt-sm aria-label="Toggle navigation" translate translate-attr-aria-label="TOOLBAR.TOGGLE_NAVIGATION">\n            <md-icon md-font-icon="icon-menu" class="icon"></md-icon>\n        </md-button>\n\n        <ms-search-bar on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <ms-shortcuts></ms-shortcuts>\n\n        <div class="toolbar-separator"></div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n        <md-progress-circular id="toolbar-progress" ng-if="$root.loadingProgress" class="md-accent" md-mode="indeterminate" md-diameter="32">\n        </md-progress-circular>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide-sm>John Doe</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-sm></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent" ui-sref="app.pages_profile">\n                        <md-icon md-font-icon="icon-account" class="icon"></md-icon>\n                        <md-button>My Profile</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent" ui-sref="app.mail">\n                        <md-icon md-font-icon="icon-email" class="icon"></md-icon>\n                        <md-button>Inbox</md-button>\n                    </md-menu-item>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon"></md-icon>\n                        <md-menu id="user-status-menu">\n                            <md-button ng-click="$mdOpenMenu()" class="status" ng-class="vm.userStatus.class">\n                                {{vm.userStatus.title}}\n                            </md-button>\n                            <md-menu-content width="2">\n                                <md-menu-item class="status md-indent" ng-class="{\'selected\': status === vm.userStatus}" ng-repeat="status in vm.userStatusOptions">\n                                    <md-icon md-font-icon="{{status.icon}}" ng-style="{\'color\': status.color }" class="icon"></md-icon>\n                                    <md-button ng-click="vm.setUserStatus(status)">\n                                        {{status.title}}\n                                    </md-button>\n                                </md-menu-item>\n                            </md-menu-content>\n                        </md-menu>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n                            <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n                            <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n        </md-button>\n    </div>\n</div>'),e.put("app/toolbar/layouts/vertical-navigation/toolbar.html",'<div layout="row" layout-align="start center">\n    <div layout="row" layout-align="start center" flex>\n        <md-button id="navigation-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'navigation\')" hide-gt-sm aria-label="Toggle navigation" translate translate-attr-aria-label="TOOLBAR.TOGGLE_NAVIGATION">\n            <md-icon md-font-icon="icon-menu" class="icon"></md-icon>\n        </md-button>\n\n        <ms-shortcuts ng-if="!vm.isAgent()"></ms-shortcuts>\n\n        <div class="toolbar-separator"></div>\n\n        <div ng-if="vm.license.demo" class="blink md-padding">\n            <span class="md-warn-fg" translate="TOOLBAR.TRIAL_VERSION">Trial Version</span>\n        </div>\n    </div>\n\n    <div layout="row" layout-align="start center">\n        \x3c!-- <md-progress-circular id="toolbar-progress" ng-disabled="!$root.loadingProgress" class="md-accent" md-diameter="32"></md-progress-circular> --\x3e\n\n        <div class="h5 padding-10" ng-if="vm.isAgent()">\n            <div>\n                <timer ng-if="vm.user.lastLoginAt" start-time="vm.user.lastLoginAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n                <md-tooltip>{{\'TOOLBAR.LOGIN_TIME\' | translate}}</md-tooltip>\n                <md-icon md-font-icon="icon-timelapse" class="icon s16"></md-icon>\n            </div>\n            <div ng-if="vm.user.voicePause">\n                <timer start-time="vm.user.lastPauseAt" interval="1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>\n                <md-tooltip>{{\'TOOLBAR.PAUSE_TIME\' | translate}}</md-tooltip>\n                <md-icon md-font-icon="icon-coffee" class="icon s16"></md-icon>\n            </div>\n            <div ng-if="vm.user.voicePause">\n                <span class="blink red-fg">{{vm.user.pauseType || \'dafault\' | uppercase}}</span>\n            </div>\n        </div>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu-bar id="user-menu">\n            <md-menu md-position-mode="left bottom">\n                <md-button class="user-button" ng-click="$mdOpenMenu()" aria-label="User settings" translate translate-attr-aria-label="TOOLBAR.USER_SETTINGS">\n                    <div layout="row" layout-align="space-between center">\n                        <div class="avatar-wrapper">\n                            <img md-menu-align-target class="avatar" src="assets/images/avatars/profile.jpg" ng-if="!vm.user.userpic">\n                            <img md-menu-align-target class="avatar" ng-src="api/users/{{vm.user.id}}/avatar" ng-if="vm.user.userpic">\n                            <md-icon md-font-icon ng-class="vm.userStatus.icon" ng-style="{\'color\': vm.userStatus.color }" class="icon status s16">\n                            </md-icon>\n                        </div>\n                        <span class="username" hide show-gt-sm>{{vm.user.fullname}}</span>\n                        <md-icon md-font-icon="icon-chevron-down" class="icon s16" hide-xs></md-icon>\n                    </div>\n                </md-button>\n\n                <md-menu-content width="3">\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-key-variant" class="icon"></md-icon>\n                        <md-button ng-click="vm.changePassword($event)">Change Password</md-button>\n                    </md-menu-item>\n\n                    <md-menu-divider></md-menu-divider>\n\n                    <md-menu-item class="md-indent">\n                        <md-icon md-font-icon="icon-logout" class="icon"></md-icon>\n                        <md-button ng-click="vm.logout()">Logout</md-button>\n                    </md-menu-item>\n                </md-menu-content>\n            </md-menu>\n        </md-menu-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-button ng-if="vm.user.role === \'agent\'" class="language-button" ng-click="vm.preview($event)" aria-label="Language" md-menu-origin md-menu-align-target>\n            <md-icon md-font-icon="icon-fire" class="icon"></md-icon>\n            <md-tooltip><span translate="TOOLBAR.PREVIEW">Preview</span></md-tooltip>\n        </md-button>\n\n        <ms-search-bar ng-if="vm.user.role !== \'agent\'" on-search="vm.search(query)" on-result-click="vm.searchResultClick(item)" debounce="300" collapse-on-blur="true"></ms-search-bar>\n\n        <div class="toolbar-separator"></div>\n\n        <md-menu id="language-menu" md-offset="0 72" md-position-mode="target-right target">\n            <md-button class="language-button" ng-click="$mdOpenMenu()" aria-label="Language" md-menu-origin md-menu-align-target>\n                <div layout="row" layout-align="center center">\n                    <img class="flag" ng-src="assets/images/flags/{{vm.selectedLanguage.flag}}.png">\n                    <span class="iso">{{vm.selectedLanguage.code}}</span>\n                </div>\n            </md-button>\n\n            <md-menu-content width="3" id="language-menu-content">\n                <md-menu-item ng-repeat="(iso, lang) in vm.languages">\n                    <md-button ng-click="vm.changeLanguage(lang)" aria-label="{{lang.title}}" translate translate-attr-aria-label="{{lang.title}}">\n                        <span layout="row" layout-align="start center">\n              <img class="flag" ng-src="assets/images/flags/{{lang.flag}}.png">\n              <span translate="{{lang.translation}}">{{lang.title}}</span>\n                        </span>\n                    </md-button>\n                </md-menu-item>\n            </md-menu-content>\n        </md-menu>\n\n\n        <div class="toolbar-separator"></div>\n\n        <md-button id="quick-panel-toggle" class="md-icon-button" ng-click="vm.toggleSidenav(\'quick-panel\')" aria-label="Toggle quick panel" translate translate-attr-aria-label="TOOLBAR.TOGGLE_QUICK_PANEL">\n            <md-icon ng-if="!vm.license.gray" md-font-icon="icon-format-list-bulleted" class="icon"></md-icon>\n            <md-icon ng-if="vm.license.gray" md-font-icon="icon-alert" class="icon md-warn blink"></md-icon>\n        </md-button>\n    </div>\n</div>')}]);
\ No newline at end of file
similarity index 98%
rename from public/styles/app.0ef87a6a.css
rename to public/styles/app.9810f40a.css
index 6d04798..fe01117 100644 (file)
@@ -1 +1 @@
-[data-ng-click],[ng-click],[x-ng-click]{cursor:pointer}.ms-container{width:100%!important}.ms-container .ms-list{height:380px!important}.ms-container .ms-selectable li.ms-elem-selectable,.ms-container .ms-selection li.ms-elem-selection{padding:6px 12px!important;height:34px!important}.ms-container .ms-search{height:34px;margin-bottom:5px;border:solid 1px #e5e5e5;background-color:#fff;box-shadow:none;width:100%;padding-left:6px}.ms-container .ms-footer{text-align:center}.no-border{border:none!important}.left .motion-spinner{border-top-color:#ea4c61!important;border-left-color:#ea4c61!important}.right .motion-spinner{border-top-color:#ea4c61!important;border-right-color:#ea4c61!important}body,html{height:100%;position:relative}body{margin:0;padding:0}[tabindex='-1']:focus{outline:0}.inset{padding:10px}a.md-no-style,button.md-no-style{font-weight:400;background-color:inherit;text-align:left;border:none;padding:0;margin:0}button,input,select,textarea{vertical-align:baseline}button,html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[type=button][disabled],input[type=reset][disabled],input[type=submit][disabled]{cursor:default}textarea{vertical-align:top;overflow:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box;-webkit-box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input:-webkit-autofill{text-shadow:none}.md-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;text-transform:none;width:1px}.md-shadow{position:absolute;top:0;left:0;bottom:0;right:0;border-radius:inherit;pointer-events:none}.md-shadow-bottom-z-1{box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.md-shadow-bottom-z-2{box-shadow:0 4px 8px 0 rgba(0,0,0,.4)}.md-shadow-animated.md-shadow{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)}.md-ripple-container{pointer-events:none;position:absolute;overflow:hidden;left:0;top:0;width:100%;height:100%;transition:all .55s cubic-bezier(.25,.8,.25,1)}.md-ripple{position:absolute;transform:translate(-50%,-50%) scale(0);transform-origin:50% 50%;opacity:0;border-radius:50%}.md-ripple.md-ripple-placed{transition:margin .9s cubic-bezier(.25,.8,.25,1),border .9s cubic-bezier(.25,.8,.25,1),width .9s cubic-bezier(.25,.8,.25,1),height .9s cubic-bezier(.25,.8,.25,1),opacity .9s cubic-bezier(.25,.8,.25,1),transform .9s cubic-bezier(.25,.8,.25,1)}.md-ripple.md-ripple-scaled{transform:translate(-50%,-50%) scale(1)}.md-ripple.md-ripple-active,.md-ripple.md-ripple-full,.md-ripple.md-ripple-visible{opacity:.2}.md-ripple.md-ripple-remove{animation:md-remove-ripple .9s cubic-bezier(.25,.8,.25,1)}@keyframes md-remove-ripple{0%{opacity:.15}100%{opacity:0}}.md-padding{padding:8px}.md-margin{margin:8px}.md-scroll-mask{position:absolute;background-color:transparent;top:0;right:0;bottom:0;left:0;z-index:50}.md-scroll-mask>.md-scroll-mask-bar{display:block;position:absolute;background-color:#fafafa;right:0;top:0;bottom:0;z-index:65;box-shadow:inset 0 0 1px rgba(0,0,0,.3)}.md-no-momentum{-webkit-overflow-scrolling:auto}.md-no-flicker{-webkit-filter:blur(0)}@media (min-width:960px){.md-padding{padding:16px}}body[dir=ltr],body[dir=rtl],html[dir=ltr],html[dir=rtl]{unicode-bidi:embed}bdo[dir=rtl]{direction:rtl;unicode-bidi:bidi-override}bdo[dir=ltr]{direction:ltr;unicode-bidi:bidi-override}body,html{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.010em;line-height:112px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:56px}.md-display-2{font-size:45px;font-weight:400;line-height:64px}.md-display-1{font-size:34px;font-weight:400;line-height:40px}.md-headline{font-size:24px;font-weight:400;line-height:32px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em}.md-subhead{font-size:16px;font-weight:400;letter-spacing:.010em;line-height:24px}.md-body-1{font-size:14px;font-weight:400;letter-spacing:.010em;line-height:20px}.md-body-2{font-size:14px;font-weight:500;letter-spacing:.010em;line-height:24px}.md-caption{font-size:12px;letter-spacing:.020em}.md-button{letter-spacing:.010em}button,html,input,select,textarea{font-family:Roboto,"Helvetica Neue",sans-serif}button,input,select,textarea{font-size:100%}@keyframes md-autocomplete-list-out{0%{animation-timing-function:linear}50%{opacity:0;height:40px;animation-timing-function:ease-in}100%{height:0;opacity:0}}@keyframes md-autocomplete-list-in{0%{opacity:0;height:0;animation-timing-function:ease-out}50%{opacity:0;height:40px}100%{opacity:1;height:40px}}md-autocomplete{border-radius:2px;display:block;height:40px;position:relative;overflow:visible;min-width:190px}md-autocomplete[disabled] input{cursor:default}md-autocomplete[md-floating-label]{border-radius:0;background:0 0;height:auto}md-autocomplete[md-floating-label] md-input-container{padding-bottom:0}md-autocomplete[md-floating-label] md-autocomplete-wrap{height:auto}md-autocomplete[md-floating-label] button{position:absolute;top:auto;bottom:0;right:0;width:30px;height:30px}md-autocomplete md-autocomplete-wrap{display:flex;flex-direction:row;box-sizing:border-box;position:relative;overflow:visible;height:40px}md-autocomplete md-autocomplete-wrap.md-menu-showing{z-index:51}md-autocomplete md-autocomplete-wrap input,md-autocomplete md-autocomplete-wrap md-input-container{flex:1 1 0%;box-sizing:border-box;min-width:0}md-autocomplete md-autocomplete-wrap md-progress-linear{position:absolute;bottom:-2px;left:0}md-autocomplete md-autocomplete-wrap md-progress-linear.md-inline{bottom:40px;right:2px;left:2px;width:auto}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate{position:absolute;top:0;left:0;width:100%;height:3px;transition:none}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate .md-container{transition:none;height:3px}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate.ng-enter{transition:opacity .15s linear}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate.ng-enter.ng-enter-active{opacity:1}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate.ng-leave{transition:opacity .15s linear}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate.ng-leave.ng-leave-active{opacity:0}md-autocomplete input:not(.md-input){font-size:14px;box-sizing:border-box;border:none;box-shadow:none;outline:0;background:0 0;width:100%;padding:0 15px;line-height:40px;height:40px}md-autocomplete input:not(.md-input)::-ms-clear{display:none}md-autocomplete button{position:relative;line-height:20px;text-align:center;width:30px;height:30px;cursor:pointer;border:none;border-radius:50%;padding:0;font-size:12px;background:0 0;margin:auto 5px}md-autocomplete button:after{content:'';position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;transform:scale(0);opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}md-autocomplete button:focus{outline:0}md-autocomplete button:focus:after{transform:scale(1);opacity:1}md-autocomplete button md-icon{position:absolute;top:50%;left:50%;transform:translate3d(-50%,-50%,0) scale(.9)}md-autocomplete button md-icon path{stroke-width:0}md-autocomplete button.ng-enter{transform:scale(0);transition:transform .15s ease-out}md-autocomplete button.ng-enter.ng-enter-active{transform:scale(1)}md-autocomplete button.ng-leave{transition:transform .15s ease-out}md-autocomplete button.ng-leave.ng-leave-active{transform:scale(0)}@media screen and (-ms-high-contrast:active){md-autocomplete input{border:1px solid #fff}md-autocomplete li:focus{color:#fff}}.md-virtual-repeat-container.md-autocomplete-suggestions-container{position:absolute;box-shadow:0 2px 5px rgba(0,0,0,.25);height:225.5px;max-height:225.5px;z-index:100}.md-virtual-repeat-container.md-not-found{height:48px}.md-autocomplete-suggestions{margin:0;list-style:none;padding:0}.md-autocomplete-suggestions li{font-size:14px;overflow:hidden;padding:0 15px;line-height:48px;height:48px;transition:background .15s linear;margin:0;white-space:nowrap;text-overflow:ellipsis}.md-autocomplete-suggestions li:focus{outline:0}.md-autocomplete-suggestions li:not(.md-not-found-wrapper){cursor:pointer}@media screen and (-ms-high-contrast:active){.md-autocomplete-suggestions,md-autocomplete{border:1px solid #fff}}md-backdrop{transition:opacity 450ms;position:absolute;top:0;bottom:0;left:0;right:0;z-index:50}md-backdrop.md-menu-backdrop{position:fixed!important;z-index:99}md-backdrop.md-select-backdrop{z-index:81;transition-duration:0}md-backdrop.md-dialog-backdrop{z-index:79}md-backdrop.md-bottom-sheet-backdrop{z-index:69}md-backdrop.md-sidenav-backdrop{z-index:59}md-backdrop.md-click-catcher{position:absolute}md-backdrop.md-opaque{opacity:.48}md-backdrop.md-opaque.ng-enter{opacity:0}md-backdrop.md-opaque.ng-enter.md-opaque.ng-enter-active{opacity:.48}md-backdrop.md-opaque.ng-leave{opacity:.48;transition:opacity .4s}md-backdrop.md-opaque.ng-leave.md-opaque.ng-leave-active{opacity:0}md-bottom-sheet{position:absolute;left:0;right:0;bottom:0;padding:8px 16px 88px 16px;z-index:70;border-top-width:1px;border-top-style:solid;transform:translate3d(0,80px,0);transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:transform}md-bottom-sheet.md-has-header{padding-top:0}md-bottom-sheet.ng-enter{opacity:0;transform:translate3d(0,100%,0)}md-bottom-sheet.ng-enter-active{opacity:1;display:block;transform:translate3d(0,80px,0)!important}md-bottom-sheet.ng-leave-active{transform:translate3d(0,100%,0)!important;transition:all .3s cubic-bezier(.55,0,.55,.2)}md-bottom-sheet .md-subheader{background-color:transparent;font-family:Roboto,"Helvetica Neue",sans-serif;line-height:56px;padding:0;white-space:nowrap}md-bottom-sheet md-inline-icon{display:inline-block;height:24px;width:24px;fill:#444}md-bottom-sheet md-list-item{display:flex;outline:0}md-bottom-sheet md-list-item:hover{cursor:pointer}md-bottom-sheet.md-list md-list-item{padding:0;align-items:center;height:48px}md-bottom-sheet.md-grid{padding-left:24px;padding-right:24px;padding-top:0}md-bottom-sheet.md-grid md-list{display:flex;flex-direction:row;flex-wrap:wrap;transition:all .5s;align-items:center}md-bottom-sheet.md-grid md-list-item{flex-direction:column;align-items:center;transition:all .5s;height:96px;margin-top:8px;margin-bottom:8px}@media (max-width:960px){md-bottom-sheet.md-grid md-list-item{flex:1 1 33.3333333333%;max-width:33.3333333333%}md-bottom-sheet.md-grid md-list-item:nth-of-type(3n+1){align-items:flex-start}md-bottom-sheet.md-grid md-list-item:nth-of-type(3n){align-items:flex-end}}@media (min-width:960px) and (max-width:1279px){md-bottom-sheet.md-grid md-list-item{flex:1 1 25%;max-width:25%}}@media (min-width:1280px) and (max-width:1919px){md-bottom-sheet.md-grid md-list-item{flex:1 1 16.6666666667%;max-width:16.6666666667%}}@media (min-width:1920px){md-bottom-sheet.md-grid md-list-item{flex:1 1 14.2857142857%;max-width:14.2857142857%}}md-bottom-sheet.md-grid md-list-item::before{display:none}md-bottom-sheet.md-grid md-list-item .md-list-item-content{display:flex;flex-direction:column;align-items:center;width:48px;padding-bottom:16px}md-bottom-sheet.md-grid md-list-item .md-grid-item-content{border:1px solid transparent;display:flex;flex-direction:column;align-items:center;width:80px}md-bottom-sheet.md-grid md-list-item .md-grid-text{font-weight:400;line-height:16px;font-size:13px;margin:0;white-space:nowrap;width:64px;text-align:center;text-transform:none;padding-top:8px}@media screen and (-ms-high-contrast:active){md-bottom-sheet{border:1px solid #fff}}button.md-button::-moz-focus-inner{border:0}.md-button{display:inline-block;position:relative;cursor:pointer;min-height:36px;min-width:88px;line-height:36px;vertical-align:middle;align-items:center;text-align:center;border-radius:3px;box-sizing:border-box;user-select:none;outline:0;border:0;padding:0 6px;margin:6px 8px;background:0 0;color:currentColor;white-space:nowrap;text-transform:uppercase;font-weight:500;font-size:14px;font-style:inherit;font-variant:inherit;font-family:inherit;text-decoration:none;overflow:hidden;transition:box-shadow .4s cubic-bezier(.25,.8,.25,1),background-color .4s cubic-bezier(.25,.8,.25,1)}.md-button:focus{outline:0}.md-button:focus,.md-button:hover{text-decoration:none}.md-button.ng-hide,.md-button.ng-leave{transition:none}.md-button.md-cornered{border-radius:0}.md-button.md-icon{padding:0;background:0 0}.md-button.md-raised:not([disabled]){box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.md-button.md-icon-button{margin:0 6px;height:40px;min-width:0;line-height:24px;padding:8px;width:40px;border-radius:50%}.md-button.md-icon-button .md-ripple-container{border-radius:50%;background-clip:padding-box;overflow:hidden;-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC)}.md-button.md-fab{z-index:20;line-height:56px;min-width:0;width:56px;height:56px;vertical-align:middle;box-shadow:0 2px 5px 0 rgba(0,0,0,.26);border-radius:50%;background-clip:padding-box;overflow:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-property:background-color,box-shadow,transform}.md-button.md-fab.md-fab-bottom-right{top:auto;right:20px;bottom:20px;left:auto;position:absolute}.md-button.md-fab.md-fab-bottom-left{top:auto;right:auto;bottom:20px;left:20px;position:absolute}.md-button.md-fab.md-fab-top-right{top:20px;right:20px;bottom:auto;left:auto;position:absolute}.md-button.md-fab.md-fab-top-left{top:20px;right:auto;bottom:auto;left:20px;position:absolute}.md-button.md-fab .md-ripple-container{border-radius:50%;background-clip:padding-box;overflow:hidden;-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC)}.md-button.md-fab.md-mini{line-height:40px;width:40px;height:40px}.md-button.md-fab.ng-hide,.md-button.md-fab.ng-leave{transition:none}.md-button:not([disabled]).md-fab.md-focused,.md-button:not([disabled]).md-raised.md-focused{box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.md-button:not([disabled]).md-fab:active,.md-button:not([disabled]).md-raised:active{box-shadow:0 4px 8px 0 rgba(0,0,0,.4)}.md-button .md-ripple-container{border-radius:3px;background-clip:padding-box;overflow:hidden;-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC)}.md-button.md-icon-button md-icon,button.md-button.md-fab md-icon{display:block}.md-toast-open-top .md-button.md-fab-top-left,.md-toast-open-top .md-button.md-fab-top-right{transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate3d(0,42px,0)}.md-toast-open-top .md-button.md-fab-top-left:not([disabled]).md-focused,.md-toast-open-top .md-button.md-fab-top-left:not([disabled]):hover,.md-toast-open-top .md-button.md-fab-top-right:not([disabled]).md-focused,.md-toast-open-top .md-button.md-fab-top-right:not([disabled]):hover{transform:translate3d(0,41px,0)}.md-toast-open-bottom .md-button.md-fab-bottom-left,.md-toast-open-bottom .md-button.md-fab-bottom-right{transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate3d(0,-42px,0)}.md-toast-open-bottom .md-button.md-fab-bottom-left:not([disabled]).md-focused,.md-toast-open-bottom .md-button.md-fab-bottom-left:not([disabled]):hover,.md-toast-open-bottom .md-button.md-fab-bottom-right:not([disabled]).md-focused,.md-toast-open-bottom .md-button.md-fab-bottom-right:not([disabled]):hover{transform:translate3d(0,-43px,0)}.md-button-group{display:flex;flex:1;width:100%}.md-button-group>.md-button{flex:1;display:block;overflow:hidden;width:0;border-width:1px 0 1px 1px;border-radius:0;text-align:center;text-overflow:ellipsis;white-space:nowrap}.md-button-group>.md-button:first-child{border-radius:2px 0 0 2px}.md-button-group>.md-button:last-child{border-right-width:1px;border-radius:0 2px 2px 0}@media screen and (-ms-high-contrast:active){.md-button.md-fab,.md-button.md-raised{border:1px solid #fff}}md-card{box-sizing:border-box;display:flex;flex-direction:column;margin:8px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}md-card md-card-header{padding:16px;display:flex;flex-direction:row}md-card md-card-header:first-child md-card-avatar{margin-right:12px}[dir=rtl] md-card md-card-header:first-child md-card-avatar{margin-right:auto;margin-left:12px}md-card md-card-header:last-child md-card-avatar{margin-left:12px}[dir=rtl] md-card md-card-header:last-child md-card-avatar{margin-left:auto;margin-right:12px}md-card md-card-header md-card-avatar{width:40px;height:40px}md-card md-card-header md-card-avatar .md-user-avatar,md-card md-card-header md-card-avatar md-icon{border-radius:50%}md-card md-card-header md-card-avatar md-icon{padding:8px}md-card md-card-header md-card-avatar+md-card-header-text{max-height:40px}md-card md-card-header md-card-avatar+md-card-header-text .md-title{font-size:14px}md-card md-card-header md-card-header-text{display:flex;flex:1;flex-direction:column}md-card md-card-header md-card-header-text .md-subhead{font-size:14px}md-card md-card-title-media img,md-card>img,md-card>md-card-header img{box-sizing:border-box;display:flex;flex:0 0 auto;width:100%;height:auto}md-card md-card-title{padding:24px 16px 16px;display:flex;flex:1 1 auto;flex-direction:row}md-card md-card-title+md-card-content{padding-top:0}md-card md-card-title md-card-title-text{flex:1;flex-direction:column;display:flex}md-card md-card-title md-card-title-text .md-subhead{padding-top:0;font-size:14px}md-card md-card-title md-card-title-text:only-child .md-subhead{padding-top:12px}md-card md-card-title md-card-title-media{margin-top:-8px}md-card md-card-title md-card-title-media .md-media-sm{height:80px;width:80px}md-card md-card-title md-card-title-media .md-media-md{height:112px;width:112px}md-card md-card-title md-card-title-media .md-media-lg{height:152px;width:152px}md-card md-card-content{display:block;padding:16px}md-card md-card-content>p:first-child{margin-top:0}md-card md-card-content>p:last-child{margin-bottom:0}md-card md-card-content .md-media-xl{height:240px;width:240px}md-card .md-actions,md-card md-card-actions{margin:8px}md-card .md-actions.layout-column .md-button:not(.md-icon-button),md-card md-card-actions.layout-column .md-button:not(.md-icon-button){margin:2px 0}md-card .md-actions.layout-column .md-button:not(.md-icon-button):first-of-type,md-card md-card-actions.layout-column .md-button:not(.md-icon-button):first-of-type{margin-top:0}md-card .md-actions.layout-column .md-button:not(.md-icon-button):last-of-type,md-card md-card-actions.layout-column .md-button:not(.md-icon-button):last-of-type{margin-bottom:0}md-card .md-actions.layout-column .md-button.md-icon-button,md-card md-card-actions.layout-column .md-button.md-icon-button{margin-top:6px;margin-bottom:6px}md-card .md-actions md-card-icon-actions,md-card md-card-actions md-card-icon-actions{flex:1;justify-content:flex-start;display:flex;flex-direction:row}md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button),md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button){margin:0 4px}md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button):first-of-type,md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button):first-of-type{margin-left:0}[dir=rtl] md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button):first-of-type,[dir=rtl] md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button):first-of-type{margin-left:auto;margin-right:0}md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button):last-of-type,md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button):last-of-type{margin-right:0}[dir=rtl] md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button):last-of-type,[dir=rtl] md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button):last-of-type{margin-right:auto;margin-left:0}md-card .md-actions:not(.layout-column) .md-button.md-icon-button,md-card md-card-actions:not(.layout-column) .md-button.md-icon-button{margin-left:6px;margin-right:6px}md-card .md-actions:not(.layout-column) .md-button.md-icon-button:first-of-type,md-card md-card-actions:not(.layout-column) .md-button.md-icon-button:first-of-type{margin-left:12px}[dir=rtl] md-card .md-actions:not(.layout-column) .md-button.md-icon-button:first-of-type,[dir=rtl] md-card md-card-actions:not(.layout-column) .md-button.md-icon-button:first-of-type{margin-left:auto;margin-right:12px}md-card .md-actions:not(.layout-column) .md-button.md-icon-button:last-of-type,md-card md-card-actions:not(.layout-column) .md-button.md-icon-button:last-of-type{margin-right:12px}[dir=rtl] md-card .md-actions:not(.layout-column) .md-button.md-icon-button:last-of-type,[dir=rtl] md-card md-card-actions:not(.layout-column) .md-button.md-icon-button:last-of-type{margin-right:auto;margin-left:12px}md-card .md-actions:not(.layout-column) .md-button+md-card-icon-actions,md-card md-card-actions:not(.layout-column) .md-button+md-card-icon-actions{flex:1;justify-content:flex-end;display:flex;flex-direction:row}md-card md-card-footer{margin-top:auto;padding:16px}@media screen and (-ms-high-contrast:active){md-card{border:1px solid #fff}}.md-image-no-fill>img{width:auto;height:auto}.md-contact-chips .md-chips md-chip{padding:0 25px 0 0}[dir=rtl] .md-contact-chips .md-chips md-chip{padding:0 0 0 25px}.md-contact-chips .md-chips md-chip .md-contact-avatar{float:left}[dir=rtl] .md-contact-chips .md-chips md-chip .md-contact-avatar{float:right}.md-contact-chips .md-chips md-chip .md-contact-avatar img{height:32px;border-radius:16px}.md-contact-chips .md-chips md-chip .md-contact-name{display:inline-block;height:32px;margin-left:8px}[dir=rtl] .md-contact-chips .md-chips md-chip .md-contact-name{margin-left:auto;margin-right:8px}.md-contact-suggestion{height:56px}.md-contact-suggestion img{height:40px;border-radius:20px;margin-top:8px}.md-contact-suggestion .md-contact-name{margin-left:8px;width:120px}[dir=rtl] .md-contact-suggestion .md-contact-name{margin-left:auto;margin-right:8px}.md-contact-suggestion .md-contact-email,.md-contact-suggestion .md-contact-name{display:inline-block;overflow:hidden;text-overflow:ellipsis}.md-contact-chips-suggestions li{height:100%}.md-chips{display:block;font-family:Roboto,"Helvetica Neue",sans-serif;font-size:16px;padding:0 0 8px 3px;vertical-align:middle}.md-chips:after{content:'';display:table;clear:both}[dir=rtl] .md-chips{padding:0 3px 8px 0}.md-chips.md-readonly .md-chip-input-container{min-height:32px}.md-chips:not(.md-readonly){cursor:text}.md-chips.md-removable md-chip{padding-right:22px}[dir=rtl] .md-chips.md-removable md-chip{padding-right:0;padding-left:22px}.md-chips.md-removable md-chip .md-chip-content{padding-right:4px}[dir=rtl] .md-chips.md-removable md-chip .md-chip-content{padding-right:0;padding-left:4px}.md-chips md-chip{cursor:default;border-radius:16px;display:block;height:32px;line-height:32px;margin:8px 8px 0 0;padding:0 12px 0 12px;float:left;box-sizing:border-box;max-width:100%;position:relative}[dir=rtl] .md-chips md-chip{margin:8px 0 0 8px}[dir=rtl] .md-chips md-chip{float:right}.md-chips md-chip .md-chip-content{display:block;float:left;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}[dir=rtl] .md-chips md-chip .md-chip-content{float:right}.md-chips md-chip .md-chip-content:focus{outline:0}.md-chips md-chip._md-chip-content-edit-is-enabled{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}.md-chips md-chip .md-chip-remove-container{position:absolute;right:0;line-height:22px}[dir=rtl] .md-chips md-chip .md-chip-remove-container{right:auto;left:0}.md-chips md-chip .md-chip-remove{text-align:center;width:32px;height:32px;min-width:0;padding:0;background:0 0;border:none;box-shadow:none;margin:0;position:relative}.md-chips md-chip .md-chip-remove md-icon{height:18px;width:18px;position:absolute;top:50%;left:50%;transform:translate3d(-50%,-50%,0)}.md-chips .md-chip-input-container{display:block;line-height:32px;margin:8px 8px 0 0;padding:0;float:left}[dir=rtl] .md-chips .md-chip-input-container{margin:8px 0 0 8px}[dir=rtl] .md-chips .md-chip-input-container{float:right}.md-chips .md-chip-input-container input:not([type]),.md-chips .md-chip-input-container input[type=email],.md-chips .md-chip-input-container input[type=number],.md-chips .md-chip-input-container input[type=tel],.md-chips .md-chip-input-container input[type=text],.md-chips .md-chip-input-container input[type=url]{border:0;height:32px;line-height:32px;padding:0}.md-chips .md-chip-input-container input:not([type]):focus,.md-chips .md-chip-input-container input[type=email]:focus,.md-chips .md-chip-input-container input[type=number]:focus,.md-chips .md-chip-input-container input[type=tel]:focus,.md-chips .md-chip-input-container input[type=text]:focus,.md-chips .md-chip-input-container input[type=url]:focus{outline:0}.md-chips .md-chip-input-container md-autocomplete,.md-chips .md-chip-input-container md-autocomplete-wrap{background:0 0;height:32px}.md-chips .md-chip-input-container md-autocomplete md-autocomplete-wrap{box-shadow:none}.md-chips .md-chip-input-container md-autocomplete input{position:relative}.md-chips .md-chip-input-container input{border:0;height:32px;line-height:32px;padding:0}.md-chips .md-chip-input-container input:focus{outline:0}.md-chips .md-chip-input-container md-autocomplete,.md-chips .md-chip-input-container md-autocomplete-wrap{height:32px}.md-chips .md-chip-input-container md-autocomplete{box-shadow:none}.md-chips .md-chip-input-container md-autocomplete input{position:relative}.md-chips .md-chip-input-container:not(:first-child){margin:8px 8px 0 0}[dir=rtl] .md-chips .md-chip-input-container:not(:first-child){margin:8px 0 0 8px}.md-chips .md-chip-input-container input{background:0 0;border-width:0}.md-chips md-autocomplete button{display:none}@media screen and (-ms-high-contrast:active){.md-chip-input-container,md-chip{border:1px solid #fff}.md-chip-input-container md-autocomplete{border:none}}.md-inline-form md-checkbox{margin:19px 0 18px}md-checkbox{box-sizing:border-box;display:inline-block;margin-bottom:16px;white-space:nowrap;cursor:pointer;outline:0;user-select:none;position:relative;min-width:20px;min-height:20px;margin-left:0;margin-right:16px}[dir=rtl] md-checkbox{margin-left:16px}[dir=rtl] md-checkbox{margin-right:0}md-checkbox:last-of-type{margin-left:0;margin-right:0}md-checkbox.md-focused:not([disabled]) .md-container:before{left:-8px;top:-8px;right:-8px;bottom:-8px}md-checkbox.md-focused:not([disabled]):not(.md-checked) .md-container:before{background-color:rgba(0,0,0,.12)}md-checkbox.md-align-top-left>div.md-container{top:12px}md-checkbox .md-container{position:absolute;top:50%;transform:translateY(-50%);box-sizing:border-box;display:inline-block;width:20px;height:20px;left:0;right:auto}[dir=rtl] md-checkbox .md-container{left:auto}[dir=rtl] md-checkbox .md-container{right:0}md-checkbox .md-container:before{box-sizing:border-box;background-color:transparent;border-radius:50%;content:'';position:absolute;display:block;height:auto;left:0;top:0;right:0;bottom:0;transition:all .5s;width:auto}md-checkbox .md-container:after{box-sizing:border-box;content:'';position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}md-checkbox .md-container .md-ripple-container{position:absolute;display:block;width:auto;height:auto;left:-15px;top:-15px;right:-15px;bottom:-15px}md-checkbox .md-icon{box-sizing:border-box;transition:240ms;position:absolute;top:0;left:0;width:20px;height:20px;border-width:2px;border-style:solid;border-radius:2px}md-checkbox.md-checked .md-icon{border-color:transparent}md-checkbox.md-checked .md-icon:after{box-sizing:border-box;transform:rotate(45deg);position:absolute;left:4.6666666667px;top:.2222222222px;display:table;width:6.6666666667px;height:13.3333333333px;border-width:2px;border-style:solid;border-top:0;border-left:0;content:''}md-checkbox[disabled]{cursor:default}md-checkbox.md-indeterminate .md-icon:after{box-sizing:border-box;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:table;width:12px;height:2px;border-width:2px;border-style:solid;border-top:0;border-left:0;content:''}md-checkbox .md-label{box-sizing:border-box;position:relative;display:inline-block;vertical-align:middle;white-space:normal;user-select:text;margin-left:30px;margin-right:0}[dir=rtl] md-checkbox .md-label{margin-left:0}[dir=rtl] md-checkbox .md-label{margin-right:30px}md-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}md-content[md-scroll-y]{overflow-y:auto;overflow-x:hidden}md-content[md-scroll-x]{overflow-x:auto;overflow-y:hidden}@media print{md-content{overflow:visible!important}}md-calendar{font-size:13px;user-select:none}.md-calendar-scroll-mask{display:inline-block;overflow:hidden;height:308px}.md-calendar-scroll-mask .md-virtual-repeat-scroller{overflow-y:scroll;-webkit-overflow-scrolling:touch}.md-calendar-scroll-mask .md-virtual-repeat-scroller::-webkit-scrollbar{display:none}.md-calendar-scroll-mask .md-virtual-repeat-offsetter{width:100%}.md-calendar-scroll-container{box-shadow:inset -3px 3px 6px rgba(0,0,0,.2);display:inline-block;height:308px;width:346px}.md-calendar-date{height:44px;width:44px;text-align:center;padding:0;border:none;box-sizing:content-box}.md-calendar-date:first-child{padding-left:16px}[dir=rtl] .md-calendar-date:first-child{padding-left:0;padding-right:16px}.md-calendar-date:last-child{padding-right:16px}[dir=rtl] .md-calendar-date:last-child{padding-right:0;padding-left:16px}.md-calendar-date.md-calendar-date-disabled{cursor:default}.md-calendar-date-selection-indicator{transition:background-color,color .4s cubic-bezier(.25,.8,.25,1);border-radius:50%;display:inline-block;width:40px;height:40px;line-height:40px}.md-calendar-date:not(.md-disabled) .md-calendar-date-selection-indicator{cursor:pointer}.md-calendar-month-label{height:44px;font-size:14px;font-weight:500;padding:0 0 0 24px}[dir=rtl] .md-calendar-month-label{padding:0 24px 0 0}md-calendar-month .md-calendar-month-label:not(.md-calendar-month-label-disabled){cursor:pointer}.md-calendar-month-label md-icon{transform:rotate(180deg)}[dir=rtl] .md-calendar-month-label md-icon{transform:none}.md-calendar-month-label span{vertical-align:middle}.md-calendar-day-header{table-layout:fixed;border-spacing:0;border-collapse:collapse}.md-calendar-day-header th{height:40px;width:44px;text-align:center;padding:0;border:none;box-sizing:content-box;font-weight:400}.md-calendar-day-header th:first-child{padding-left:16px}[dir=rtl] .md-calendar-day-header th:first-child{padding-left:0;padding-right:16px}.md-calendar-day-header th:last-child{padding-right:16px}[dir=rtl] .md-calendar-day-header th:last-child{padding-right:0;padding-left:16px}.md-calendar{table-layout:fixed;border-spacing:0;border-collapse:collapse}.md-calendar tr:last-child td{border-bottom-width:1px;border-bottom-style:solid}.md-calendar:first-child{border-top:1px solid transparent}.md-calendar tbody,.md-calendar td,.md-calendar tr{vertical-align:middle;box-sizing:content-box}md-datepicker{white-space:nowrap;overflow:hidden;padding-right:18px;margin-right:-18px;vertical-align:middle}[dir=rtl] md-datepicker{padding-right:0;padding-left:18px}[dir=rtl] md-datepicker{margin-right:auto;margin-left:-18px}.md-inline-form md-datepicker{margin-top:12px}.md-datepicker-button{display:inline-block;box-sizing:border-box;background:0 0;vertical-align:middle;position:relative}.md-datepicker-button:before{top:0;left:0;bottom:0;right:0;position:absolute;content:'';speak:none}.md-datepicker-input{font-size:14px;box-sizing:border-box;border:none;box-shadow:none;outline:0;background:0 0;min-width:120px;max-width:328px;padding:0 0 5px}.md-datepicker-input::-ms-clear{display:none}._md-datepicker-floating-label>md-datepicker{overflow:visible}._md-datepicker-floating-label>md-datepicker .md-datepicker-input-container{border:none}._md-datepicker-floating-label>md-datepicker .md-datepicker-button{float:left;margin-top:-2.5px}[dir=rtl] ._md-datepicker-floating-label>md-datepicker .md-datepicker-button{float:right}._md-datepicker-floating-label._md-datepicker-has-calendar-icon>label:not(.md-no-float):not(.md-container-ignore){right:18px;left:auto;width:calc(100% - 84px)}[dir=rtl] ._md-datepicker-floating-label._md-datepicker-has-calendar-icon>label:not(.md-no-float):not(.md-container-ignore){right:auto}[dir=rtl] ._md-datepicker-floating-label._md-datepicker-has-calendar-icon>label:not(.md-no-float):not(.md-container-ignore){left:18px}._md-datepicker-floating-label._md-datepicker-has-calendar-icon .md-input-message-animation{margin-left:64px}[dir=rtl] ._md-datepicker-floating-label._md-datepicker-has-calendar-icon .md-input-message-animation{margin-left:auto;margin-right:64px}.md-datepicker-input-container{position:relative;border-bottom-width:1px;border-bottom-style:solid;display:inline-block;width:auto}.md-icon-button+.md-datepicker-input-container{margin-left:12px}[dir=rtl] .md-icon-button+.md-datepicker-input-container{margin-left:auto;margin-right:12px}.md-datepicker-input-container.md-datepicker-focused{border-bottom-width:2px}.md-datepicker-is-showing .md-scroll-mask{z-index:99}.md-datepicker-calendar-pane{position:absolute;top:0;left:-100%;z-index:100;border-width:1px;border-style:solid;background:0 0;transform:scale(0);transform-origin:0 0;transition:transform .2s cubic-bezier(.25,.8,.25,1)}.md-datepicker-calendar-pane.md-pane-open{transform:scale(1)}.md-datepicker-input-mask{height:40px;width:340px;position:relative;overflow:hidden;background:0 0;pointer-events:none;cursor:text}.md-datepicker-calendar{opacity:0;transition:opacity .2s cubic-bezier(.5,0,.25,1)}.md-pane-open .md-datepicker-calendar{opacity:1}.md-datepicker-calendar md-calendar:focus{outline:0}.md-datepicker-expand-triangle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid}.md-datepicker-triangle-button{position:absolute;right:0;top:5px;transform:translateY(-25%) translateX(45%)}[dir=rtl] .md-datepicker-triangle-button{right:auto;left:0}[dir=rtl] .md-datepicker-triangle-button{transform:translateY(-25%) translateX(-45%)}.md-datepicker-triangle-button.md-button.md-icon-button{height:36px;width:36px;position:absolute;padding:8px}md-datepicker[disabled] .md-datepicker-input-container{border-bottom-color:transparent}md-datepicker[disabled] .md-datepicker-triangle-button{display:none}.md-datepicker-open{overflow:hidden}.md-datepicker-open .md-datepicker-input-container,.md-datepicker-open input.md-input{border-bottom-color:transparent}.md-datepicker-open .md-datepicker-triangle-button,.md-datepicker-open.md-input-has-placeholder>label,.md-datepicker-open.md-input-has-value>label{display:none}.md-datepicker-pos-adjusted .md-datepicker-input-mask{display:none}.md-datepicker-calendar-pane .md-calendar{transform:translateY(-85px);transition:transform .65s cubic-bezier(.25,.8,.25,1);transition-delay:125ms}.md-datepicker-calendar-pane.md-pane-open .md-calendar{transform:translateY(0)}.md-dialog-is-showing{max-height:100%}.md-dialog-container{display:flex;justify-content:center;align-items:center;position:absolute;top:0;left:0;width:100%;height:100%;z-index:80;overflow:hidden}md-dialog{opacity:0;min-width:240px;max-width:80%;max-height:80%;position:relative;overflow:auto;box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12);display:flex;flex-direction:column}md-dialog.md-transition-in{opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate(0,0) scale(1)}md-dialog.md-transition-out{opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate(0,100%) scale(.2)}md-dialog>form{display:flex;flex-direction:column;overflow:auto}md-dialog .md-dialog-content{padding:24px}md-dialog md-dialog-content{order:1;flex-direction:column;overflow:auto;-webkit-overflow-scrolling:touch}md-dialog md-dialog-content:not([layout=row])>:first-child:not(.md-subheader){margin-top:0}md-dialog md-dialog-content:focus{outline:0}md-dialog md-dialog-content .md-subheader{margin:0}md-dialog md-dialog-content .md-dialog-content-body{width:100%}md-dialog md-dialog-content .md-prompt-input-container{width:100%;box-sizing:border-box}md-dialog .md-actions,md-dialog md-dialog-actions{display:flex;order:2;box-sizing:border-box;align-items:center;justify-content:flex-end;margin-bottom:0;padding-right:8px;padding-left:16px;min-height:52px;overflow:hidden}[dir=rtl] md-dialog .md-actions,[dir=rtl] md-dialog md-dialog-actions{padding-right:16px}[dir=rtl] md-dialog .md-actions,[dir=rtl] md-dialog md-dialog-actions{padding-left:8px}md-dialog .md-actions .md-button,md-dialog md-dialog-actions .md-button{margin-bottom:8px;margin-left:8px;margin-right:0;margin-top:8px}[dir=rtl] md-dialog .md-actions .md-button,[dir=rtl] md-dialog md-dialog-actions .md-button{margin-left:0}[dir=rtl] md-dialog .md-actions .md-button,[dir=rtl] md-dialog md-dialog-actions .md-button{margin-right:8px}md-dialog.md-content-overflow .md-actions,md-dialog.md-content-overflow md-dialog-actions{border-top-width:1px;border-top-style:solid}@media screen and (-ms-high-contrast:active){md-dialog{border:1px solid #fff}}@media (max-width:959px){md-dialog.md-dialog-fullscreen{min-height:100%;min-width:100%;border-radius:0}}md-divider{display:block;border-top-width:1px;border-top-style:solid;margin:0}md-divider[md-inset]{margin-left:80px}[dir=rtl] md-divider[md-inset]{margin-left:auto;margin-right:80px}.layout-gt-lg-row>md-divider,.layout-gt-md-row>md-divider,.layout-gt-sm-row>md-divider,.layout-gt-xs-row>md-divider,.layout-lg-row>md-divider,.layout-md-row>md-divider,.layout-row>md-divider,.layout-sm-row>md-divider,.layout-xl-row>md-divider,.layout-xs-row>md-divider{border-top-width:0;border-right-width:1px;border-right-style:solid}md-fab-speed-dial{position:relative;display:flex;align-items:center;z-index:20}md-fab-speed-dial.md-fab-bottom-right{top:auto;right:20px;bottom:20px;left:auto;position:absolute}md-fab-speed-dial.md-fab-bottom-left{top:auto;right:auto;bottom:20px;left:20px;position:absolute}md-fab-speed-dial.md-fab-top-right{top:20px;right:20px;bottom:auto;left:auto;position:absolute}md-fab-speed-dial.md-fab-top-left{top:20px;right:auto;bottom:auto;left:20px;position:absolute}md-fab-speed-dial:not(.md-hover-full){pointer-events:none}md-fab-speed-dial:not(.md-hover-full) .md-fab-action-item,md-fab-speed-dial:not(.md-hover-full) md-fab-trigger{pointer-events:auto}md-fab-speed-dial:not(.md-hover-full).md-is-open{pointer-events:auto}md-fab-speed-dial ._md-css-variables{z-index:20}md-fab-speed-dial.md-is-open .md-fab-action-item{align-items:center}md-fab-speed-dial md-fab-actions{display:flex;height:auto}md-fab-speed-dial md-fab-actions .md-fab-action-item{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-fab-speed-dial.md-down{flex-direction:column}md-fab-speed-dial.md-down md-fab-trigger{order:1}md-fab-speed-dial.md-down md-fab-actions{flex-direction:column;order:2}md-fab-speed-dial.md-up{flex-direction:column}md-fab-speed-dial.md-up md-fab-trigger{order:2}md-fab-speed-dial.md-up md-fab-actions{flex-direction:column-reverse;order:1}md-fab-speed-dial.md-left{flex-direction:row}md-fab-speed-dial.md-left md-fab-trigger{order:2}md-fab-speed-dial.md-left md-fab-actions{flex-direction:row-reverse;order:1}md-fab-speed-dial.md-left md-fab-actions .md-fab-action-item{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-fab-speed-dial.md-right{flex-direction:row}md-fab-speed-dial.md-right md-fab-trigger{order:1}md-fab-speed-dial.md-right md-fab-actions{flex-direction:row;order:2}md-fab-speed-dial.md-right md-fab-actions .md-fab-action-item{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-fab-speed-dial.md-fling-remove .md-fab-action-item>*,md-fab-speed-dial.md-scale-remove .md-fab-action-item>*{visibility:hidden}md-fab-speed-dial.md-fling .md-fab-action-item{opacity:1}md-fab-speed-dial.md-fling.md-animations-waiting .md-fab-action-item{opacity:0;transition-duration:0s}md-fab-speed-dial.md-scale .md-fab-action-item{transform:scale(0);transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.1428571429s}md-fab-toolbar{display:block}md-fab-toolbar.md-fab-bottom-right{top:auto;right:20px;bottom:20px;left:auto;position:absolute}md-fab-toolbar.md-fab-bottom-left{top:auto;right:auto;bottom:20px;left:20px;position:absolute}md-fab-toolbar.md-fab-top-right{top:20px;right:20px;bottom:auto;left:auto;position:absolute}md-fab-toolbar.md-fab-top-left{top:20px;right:auto;bottom:auto;left:20px;position:absolute}md-fab-toolbar .md-fab-toolbar-wrapper{display:block;position:relative;overflow:hidden;height:68px}md-fab-toolbar md-fab-trigger{position:absolute;z-index:20}md-fab-toolbar md-fab-trigger button{overflow:visible!important}md-fab-toolbar md-fab-trigger .md-fab-toolbar-background{display:block;position:absolute;z-index:21;opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2)}md-fab-toolbar md-fab-trigger md-icon{position:relative;z-index:22;opacity:1;transition:all .2s ease-in}md-fab-toolbar.md-left md-fab-trigger{right:0}[dir=rtl] md-fab-toolbar.md-left md-fab-trigger{right:auto;left:0}md-fab-toolbar.md-left .md-toolbar-tools{flex-direction:row-reverse}md-fab-toolbar.md-left .md-toolbar-tools>.md-button:first-child{margin-right:.6rem}[dir=rtl] md-fab-toolbar.md-left .md-toolbar-tools>.md-button:first-child{margin-right:auto;margin-left:.6rem}md-fab-toolbar.md-left .md-toolbar-tools>.md-button:first-child{margin-left:-.8rem}[dir=rtl] md-fab-toolbar.md-left .md-toolbar-tools>.md-button:first-child{margin-left:auto;margin-right:-.8rem}md-fab-toolbar.md-left .md-toolbar-tools>.md-button:last-child{margin-right:8px}[dir=rtl] md-fab-toolbar.md-left .md-toolbar-tools>.md-button:last-child{margin-right:auto;margin-left:8px}md-fab-toolbar.md-right md-fab-trigger{left:0}[dir=rtl] md-fab-toolbar.md-right md-fab-trigger{left:auto;right:0}md-fab-toolbar.md-right .md-toolbar-tools{flex-direction:row}md-fab-toolbar md-toolbar{background-color:transparent!important;pointer-events:none;z-index:23}md-fab-toolbar md-toolbar .md-toolbar-tools{padding:0 20px;margin-top:3px}md-fab-toolbar md-toolbar .md-fab-action-item{opacity:0;transform:scale(0);transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.15s}md-fab-toolbar.md-is-open md-fab-trigger>button{box-shadow:none}md-fab-toolbar.md-is-open md-fab-trigger>button md-icon{opacity:0}md-fab-toolbar.md-is-open .md-fab-action-item{opacity:1;transform:scale(1)}md-grid-list{box-sizing:border-box;display:block;position:relative}md-grid-list md-grid-tile,md-grid-list md-grid-tile-footer,md-grid-list md-grid-tile-header,md-grid-list md-grid-tile>figure{box-sizing:border-box}md-grid-list md-grid-tile{display:block;position:absolute}md-grid-list md-grid-tile figure{display:flex;align-items:center;justify-content:center;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;padding:0;margin:0}md-grid-list md-grid-tile md-grid-tile-footer,md-grid-list md-grid-tile md-grid-tile-header{display:flex;flex-direction:row;align-items:center;height:48px;color:#fff;background:rgba(0,0,0,.18);overflow:hidden;position:absolute;left:0;right:0}md-grid-list md-grid-tile md-grid-tile-footer h3,md-grid-list md-grid-tile md-grid-tile-footer h4,md-grid-list md-grid-tile md-grid-tile-header h3,md-grid-list md-grid-tile md-grid-tile-header h4{font-weight:400;margin:0 0 0 16px}md-grid-list md-grid-tile md-grid-tile-footer h3,md-grid-list md-grid-tile md-grid-tile-header h3{font-size:14px}md-grid-list md-grid-tile md-grid-tile-footer h4,md-grid-list md-grid-tile md-grid-tile-header h4{font-size:12px}md-grid-list md-grid-tile md-grid-tile-header{top:0}md-grid-list md-grid-tile md-grid-tile-footer{bottom:0}@media screen and (-ms-high-contrast:active){md-grid-tile{border:1px solid #fff}md-grid-tile-footer{border-top:1px solid #fff}}md-icon{margin:auto;background-repeat:no-repeat no-repeat;display:inline-block;vertical-align:middle;fill:currentColor;height:24px;width:24px;min-height:24px;min-width:24px}md-icon svg{pointer-events:none;display:block}md-icon[md-font-icon]{line-height:24px;width:auto}md-input-container{display:inline-block;position:relative;padding:2px;margin:18px 0;vertical-align:middle}md-input-container:after{content:'';display:table;clear:both}md-input-container.md-block{display:block}md-input-container .md-errors-spacer{float:right;min-height:24px;min-width:1px}[dir=rtl] md-input-container .md-errors-spacer{float:left}md-input-container>md-icon{position:absolute;top:8px;left:2px;right:auto}[dir=rtl] md-input-container>md-icon{left:auto}[dir=rtl] md-input-container>md-icon{right:2px}md-input-container input[type=color],md-input-container input[type=date],md-input-container input[type=datetime-local],md-input-container input[type=datetime],md-input-container input[type=email],md-input-container input[type=month],md-input-container input[type=number],md-input-container input[type=password],md-input-container input[type=search],md-input-container input[type=tel],md-input-container input[type=text],md-input-container input[type=time],md-input-container input[type=url],md-input-container input[type=week],md-input-container textarea{-moz-appearance:none;-webkit-appearance:none}md-input-container input[type=date],md-input-container input[type=datetime-local],md-input-container input[type=month],md-input-container input[type=time],md-input-container input[type=week]{min-height:26px}md-input-container textarea{resize:none;overflow:hidden}md-input-container textarea.md-input{min-height:26px;-ms-flex-preferred-size:auto}md-input-container textarea[md-no-autogrow]{height:auto;overflow:auto}md-input-container label:not(.md-container-ignore){position:absolute;bottom:100%;left:0;right:auto}[dir=rtl] md-input-container label:not(.md-container-ignore){left:auto}[dir=rtl] md-input-container label:not(.md-container-ignore){right:0}md-input-container label:not(.md-container-ignore).md-required:after{content:' *';font-size:13px;vertical-align:top}md-input-container .md-placeholder,md-input-container label:not(.md-no-float):not(.md-container-ignore){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;order:1;pointer-events:none;-webkit-font-smoothing:antialiased;padding-left:3px;padding-right:0;z-index:1;transform:translate3d(0,28px,0) scale(1);transition:transform .4s cubic-bezier(.25,.8,.25,1);max-width:100%;transform-origin:left top}[dir=rtl] md-input-container .md-placeholder,[dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore){padding-left:0}[dir=rtl] md-input-container .md-placeholder,[dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore){padding-right:3px}[dir=rtl] md-input-container .md-placeholder,[dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore){transform-origin:right top}md-input-container .md-placeholder{position:absolute;top:0;opacity:0;transition-property:opacity,transform;transform:translate3d(0,30px,0)}md-input-container.md-input-focused .md-placeholder{opacity:1;transform:translate3d(0,24px,0)}md-input-container.md-input-has-value .md-placeholder{transition:none;opacity:0}md-input-container:not(.md-input-has-value) input:not(:focus),md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-ampm-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-day-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-hour-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-millisecond-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-minute-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-month-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-second-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-text,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-week-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-year-field{color:transparent}md-input-container .md-input{order:2;display:block;margin-top:0;background:0 0;padding-top:2px;padding-bottom:1px;padding-left:2px;padding-right:2px;border-width:0 0 1px 0;line-height:26px;height:30px;-ms-flex-preferred-size:26px;border-radius:0;border-style:solid;width:100%;box-sizing:border-box;float:left}[dir=rtl] md-input-container .md-input{float:right}md-input-container .md-input:focus{outline:0}md-input-container .md-input:invalid{outline:0;box-shadow:none}md-input-container .md-input.md-no-flex{flex:none!important}md-input-container .md-char-counter{text-align:right;padding-right:2px;padding-left:0}[dir=rtl] md-input-container .md-char-counter{text-align:left}[dir=rtl] md-input-container .md-char-counter{padding-right:0}[dir=rtl] md-input-container .md-char-counter{padding-left:2px}md-input-container .md-input-messages-animation{position:relative;order:4;overflow:hidden;clear:left}[dir=rtl] md-input-container .md-input-messages-animation{clear:right}md-input-container .md-input-messages-animation.ng-enter .md-input-message-animation{opacity:0;margin-top:-100px}md-input-container .md-char-counter,md-input-container .md-input-message-animation{font-size:12px;line-height:14px;overflow:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2);opacity:1;margin-top:0;padding-top:5px}md-input-container .md-char-counter:not(.md-char-counter),md-input-container .md-input-message-animation:not(.md-char-counter){padding-right:5px;padding-left:0}[dir=rtl] md-input-container .md-char-counter:not(.md-char-counter),[dir=rtl] md-input-container .md-input-message-animation:not(.md-char-counter){padding-right:0}[dir=rtl] md-input-container .md-char-counter:not(.md-char-counter),[dir=rtl] md-input-container .md-input-message-animation:not(.md-char-counter){padding-left:5px}md-input-container:not(.md-input-invalid) .md-auto-hide .md-input-message-animation{opacity:0;margin-top:-100px}md-input-container .md-input-message-animation:not(.ng-animate){opacity:0;margin-top:-100px}md-input-container .md-input-message-animation.ng-enter{opacity:0;margin-top:-100px}md-input-container.md-input-focused label:not(.md-no-float),md-input-container.md-input-has-placeholder label:not(.md-no-float),md-input-container.md-input-has-value label:not(.md-no-float){transform:translate3d(0,6px,0) scale(.75);transition:transform cubic-bezier(.25,.8,.25,1) .4s,width cubic-bezier(.25,.8,.25,1) .4s}md-input-container.md-input-has-value label{transition:none}md-input-container .md-input.ng-invalid.ng-dirty,md-input-container.md-input-focused .md-input,md-input-container.md-input-resized .md-input{padding-bottom:0;border-width:0 0 2px 0}[disabled] md-input-container .md-input,md-input-container .md-input[disabled]{background-position:bottom -1px left 0;background-size:4px 1px;background-repeat:repeat-x}md-input-container.md-icon-float{transition:margin-top .4s cubic-bezier(.25,.8,.25,1)}md-input-container.md-icon-float>label{pointer-events:none;position:absolute}md-input-container.md-icon-float>md-icon{top:8px;left:2px;right:auto}[dir=rtl] md-input-container.md-icon-float>md-icon{left:auto}[dir=rtl] md-input-container.md-icon-float>md-icon{right:2px}md-input-container.md-icon-left>label .md-placeholder,md-input-container.md-icon-left>label:not(.md-no-float):not(.md-container-ignore),md-input-container.md-icon-right>label .md-placeholder,md-input-container.md-icon-right>label:not(.md-no-float):not(.md-container-ignore){width:calc(100% - 36px - 18px)}md-input-container.md-icon-left{padding-left:36px;padding-right:0}[dir=rtl] md-input-container.md-icon-left{padding-left:0}[dir=rtl] md-input-container.md-icon-left{padding-right:36px}md-input-container.md-icon-left>label{left:36px;right:auto}[dir=rtl] md-input-container.md-icon-left>label{left:auto}[dir=rtl] md-input-container.md-icon-left>label{right:36px}md-input-container.md-icon-right{padding-left:0;padding-right:36px}[dir=rtl] md-input-container.md-icon-right{padding-left:36px}[dir=rtl] md-input-container.md-icon-right{padding-right:0}md-input-container.md-icon-right>md-icon:last-of-type{margin:0;right:2px;left:auto}[dir=rtl] md-input-container.md-icon-right>md-icon:last-of-type{right:auto}[dir=rtl] md-input-container.md-icon-right>md-icon:last-of-type{left:2px}md-input-container.md-icon-left.md-icon-right{padding-left:36px;padding-right:36px}md-input-container.md-icon-left.md-icon-right>label .md-placeholder,md-input-container.md-icon-left.md-icon-right>label:not(.md-no-float):not(.md-container-ignore){width:calc(100% - (36px * 2))}.md-resize-wrapper{position:relative}.md-resize-wrapper:after{content:'';display:table;clear:both}.md-resize-handle{position:absolute;bottom:-5px;left:0;height:10px;background:0 0;width:100%;cursor:ns-resize}@media screen and (-ms-high-contrast:active){md-input-container.md-default-theme>md-icon{fill:#fff}}md-list{display:block;padding:8px 0 8px 0}md-list .md-subheader{font-size:14px;font-weight:500;letter-spacing:.010em;line-height:1.2em}md-list.md-dense md-list-item,md-list.md-dense md-list-item .md-list-item-inner{min-height:48px}md-list.md-dense md-list-item .md-list-item-inner::before,md-list.md-dense md-list-item::before{content:'';min-height:48px;visibility:hidden;display:inline-block}md-list.md-dense md-list-item .md-list-item-inner md-icon:first-child,md-list.md-dense md-list-item md-icon:first-child{width:20px;height:20px}md-list.md-dense md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),md-list.md-dense md-list-item>md-icon:first-child:not(.md-avatar-icon){margin-right:36px}[dir=rtl] md-list.md-dense md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),[dir=rtl] md-list.md-dense md-list-item>md-icon:first-child:not(.md-avatar-icon){margin-right:auto;margin-left:36px}md-list.md-dense md-list-item .md-avatar,md-list.md-dense md-list-item .md-avatar-icon,md-list.md-dense md-list-item .md-list-item-inner .md-avatar,md-list.md-dense md-list-item .md-list-item-inner .md-avatar-icon{margin-right:20px}[dir=rtl] md-list.md-dense md-list-item .md-avatar,[dir=rtl] md-list.md-dense md-list-item .md-avatar-icon,[dir=rtl] md-list.md-dense md-list-item .md-list-item-inner .md-avatar,[dir=rtl] md-list.md-dense md-list-item .md-list-item-inner .md-avatar-icon{margin-right:auto;margin-left:20px}md-list.md-dense md-list-item .md-avatar,md-list.md-dense md-list-item .md-list-item-inner .md-avatar{flex:none;width:36px;height:36px}md-list.md-dense md-list-item.md-2-line .md-list-item-text.md-offset,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text.md-offset,md-list.md-dense md-list-item.md-3-line .md-list-item-text.md-offset,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text.md-offset{margin-left:56px}[dir=rtl] md-list.md-dense md-list-item.md-2-line .md-list-item-text.md-offset,[dir=rtl] md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text.md-offset,[dir=rtl] md-list.md-dense md-list-item.md-3-line .md-list-item-text.md-offset,[dir=rtl] md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text.md-offset{margin-left:auto;margin-right:56px}md-list.md-dense md-list-item.md-2-line .md-list-item-text h3,md-list.md-dense md-list-item.md-2-line .md-list-item-text h4,md-list.md-dense md-list-item.md-2-line .md-list-item-text p,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text h3,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text h4,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text p,md-list.md-dense md-list-item.md-3-line .md-list-item-text h3,md-list.md-dense md-list-item.md-3-line .md-list-item-text h4,md-list.md-dense md-list-item.md-3-line .md-list-item-text p,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text h3,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text h4,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text p{line-height:1.05;font-size:12px}md-list.md-dense md-list-item.md-2-line .md-list-item-text h3,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text h3,md-list.md-dense md-list-item.md-3-line .md-list-item-text h3,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text h3{font-size:13px}md-list.md-dense md-list-item.md-2-line,md-list.md-dense md-list-item.md-2-line>.md-no-style{min-height:60px}md-list.md-dense md-list-item.md-2-line::before,md-list.md-dense md-list-item.md-2-line>.md-no-style::before{content:'';min-height:60px;visibility:hidden;display:inline-block}md-list.md-dense md-list-item.md-2-line .md-avatar-icon,md-list.md-dense md-list-item.md-2-line>.md-avatar,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-avatar-icon,md-list.md-dense md-list-item.md-2-line>.md-no-style>.md-avatar{margin-top:12px}md-list.md-dense md-list-item.md-3-line,md-list.md-dense md-list-item.md-3-line>.md-no-style{min-height:76px}md-list.md-dense md-list-item.md-3-line::before,md-list.md-dense md-list-item.md-3-line>.md-no-style::before{content:'';min-height:76px;visibility:hidden;display:inline-block}md-list.md-dense md-list-item.md-3-line>.md-avatar,md-list.md-dense md-list-item.md-3-line>.md-no-style>.md-avatar,md-list.md-dense md-list-item.md-3-line>.md-no-style>md-icon:first-child,md-list.md-dense md-list-item.md-3-line>md-icon:first-child{margin-top:16px}md-list-item{position:relative}md-list-item.md-proxy-focus.md-focused .md-no-style{transition:background-color .15s linear}md-list-item._md-button-wrap{position:relative}md-list-item._md-button-wrap>div.md-button:first-child{display:flex;align-items:center;justify-content:flex-start;padding:0 16px;margin:0;font-weight:400;text-align:left;border:medium none}[dir=rtl] md-list-item._md-button-wrap>div.md-button:first-child{text-align:right}md-list-item._md-button-wrap>div.md-button:first-child>.md-button:first-child{position:absolute;top:0;left:0;height:100%;margin:0;padding:0}md-list-item._md-button-wrap>div.md-button:first-child .md-list-item-inner{width:100%;min-height:inherit}md-list-item .md-no-style,md-list-item.md-no-proxy{position:relative;padding:0 16px;flex:1 1 auto}md-list-item .md-no-style.md-button,md-list-item.md-no-proxy.md-button{font-size:inherit;height:inherit;text-align:left;text-transform:none;width:100%;white-space:normal;flex-direction:inherit;align-items:inherit;border-radius:0;margin:0}[dir=rtl] md-list-item .md-no-style.md-button,[dir=rtl] md-list-item.md-no-proxy.md-button{text-align:right}md-list-item .md-no-style.md-button>.md-ripple-container,md-list-item.md-no-proxy.md-button>.md-ripple-container{border-radius:0}md-list-item .md-no-style:focus,md-list-item.md-no-proxy:focus{outline:0}md-list-item.md-clickable:hover{cursor:pointer}md-list-item md-divider{position:absolute;bottom:0;left:0;width:100%}[dir=rtl] md-list-item md-divider{left:auto;right:0}md-list-item md-divider[md-inset]{left:72px;width:calc(100% - 72px);margin:0!important}[dir=rtl] md-list-item md-divider[md-inset]{left:auto;right:72px}md-list-item,md-list-item .md-list-item-inner{display:flex;justify-content:flex-start;align-items:center;min-height:48px;height:auto}md-list-item .md-list-item-inner::before,md-list-item::before{content:'';min-height:48px;visibility:hidden;display:inline-block}md-list-item .md-list-item-inner>div.md-primary>md-icon:not(.md-avatar-icon),md-list-item .md-list-item-inner>div.md-secondary>md-icon:not(.md-avatar-icon),md-list-item .md-list-item-inner>md-icon.md-secondary:not(.md-avatar-icon),md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),md-list-item>div.md-primary>md-icon:not(.md-avatar-icon),md-list-item>div.md-secondary>md-icon:not(.md-avatar-icon),md-list-item>md-icon.md-secondary:not(.md-avatar-icon),md-list-item>md-icon:first-child:not(.md-avatar-icon){width:24px;margin-top:16px;margin-bottom:12px;box-sizing:content-box}md-list-item .md-list-item-inner md-checkbox.md-secondary,md-list-item .md-list-item-inner>div.md-primary>md-checkbox,md-list-item .md-list-item-inner>div.md-secondary>md-checkbox,md-list-item .md-list-item-inner>md-checkbox,md-list-item md-checkbox.md-secondary,md-list-item>div.md-primary>md-checkbox,md-list-item>div.md-secondary>md-checkbox,md-list-item>md-checkbox{align-self:center}md-list-item .md-list-item-inner md-checkbox.md-secondary .md-label,md-list-item .md-list-item-inner>div.md-primary>md-checkbox .md-label,md-list-item .md-list-item-inner>div.md-secondary>md-checkbox .md-label,md-list-item .md-list-item-inner>md-checkbox .md-label,md-list-item md-checkbox.md-secondary .md-label,md-list-item>div.md-primary>md-checkbox .md-label,md-list-item>div.md-secondary>md-checkbox .md-label,md-list-item>md-checkbox .md-label{display:none}md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),md-list-item>md-icon:first-child:not(.md-avatar-icon){margin-right:32px}[dir=rtl] md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),[dir=rtl] md-list-item>md-icon:first-child:not(.md-avatar-icon){margin-right:auto;margin-left:32px}md-list-item .md-avatar,md-list-item .md-avatar-icon,md-list-item .md-list-item-inner .md-avatar,md-list-item .md-list-item-inner .md-avatar-icon{margin-top:8px;margin-bottom:8px;margin-right:16px;border-radius:50%;box-sizing:content-box}[dir=rtl] md-list-item .md-avatar,[dir=rtl] md-list-item .md-avatar-icon,[dir=rtl] md-list-item .md-list-item-inner .md-avatar,[dir=rtl] md-list-item .md-list-item-inner .md-avatar-icon{margin-right:auto;margin-left:16px}md-list-item .md-avatar,md-list-item .md-list-item-inner .md-avatar{flex:none;width:40px;height:40px}md-list-item .md-avatar-icon,md-list-item .md-list-item-inner .md-avatar-icon{padding:8px}md-list-item .md-avatar-icon svg,md-list-item .md-list-item-inner .md-avatar-icon svg{width:24px;height:24px}md-list-item .md-list-item-inner>md-checkbox,md-list-item>md-checkbox{width:24px;margin-left:3px;margin-right:29px;margin-top:16px}[dir=rtl] md-list-item .md-list-item-inner>md-checkbox,[dir=rtl] md-list-item>md-checkbox{margin-left:29px}[dir=rtl] md-list-item .md-list-item-inner>md-checkbox,[dir=rtl] md-list-item>md-checkbox{margin-right:3px}md-list-item .md-list-item-inner .md-secondary-container,md-list-item .md-secondary-container{display:flex;align-items:center;flex-shrink:0;margin:auto;margin-right:0;margin-left:auto}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container,[dir=rtl] md-list-item .md-secondary-container{margin-right:auto}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container,[dir=rtl] md-list-item .md-secondary-container{margin-left:0}md-list-item .md-list-item-inner .md-secondary-container .md-button:last-of-type,md-list-item .md-list-item-inner .md-secondary-container .md-icon-button:last-of-type,md-list-item .md-secondary-container .md-button:last-of-type,md-list-item .md-secondary-container .md-icon-button:last-of-type{margin-right:0}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container .md-button:last-of-type,[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container .md-icon-button:last-of-type,[dir=rtl] md-list-item .md-secondary-container .md-button:last-of-type,[dir=rtl] md-list-item .md-secondary-container .md-icon-button:last-of-type{margin-right:auto;margin-left:0}md-list-item .md-list-item-inner .md-secondary-container md-checkbox,md-list-item .md-secondary-container md-checkbox{margin-top:0;margin-bottom:0}md-list-item .md-list-item-inner .md-secondary-container md-checkbox:last-child,md-list-item .md-secondary-container md-checkbox:last-child{width:24px;margin-right:0}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container md-checkbox:last-child,[dir=rtl] md-list-item .md-secondary-container md-checkbox:last-child{margin-right:auto;margin-left:0}md-list-item .md-list-item-inner .md-secondary-container md-switch,md-list-item .md-secondary-container md-switch{margin-top:0;margin-bottom:0;margin-right:-6px}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container md-switch,[dir=rtl] md-list-item .md-secondary-container md-switch{margin-right:auto;margin-left:-6px}md-list-item .md-list-item-inner>.md-list-item-inner>p,md-list-item .md-list-item-inner>p,md-list-item>.md-list-item-inner>p,md-list-item>p{flex:1 1 auto;margin:0}md-list-item.md-2-line,md-list-item.md-2-line>.md-no-style,md-list-item.md-3-line,md-list-item.md-3-line>.md-no-style{align-items:flex-start;justify-content:center}md-list-item.md-2-line.md-long-text,md-list-item.md-2-line>.md-no-style.md-long-text,md-list-item.md-3-line.md-long-text,md-list-item.md-3-line>.md-no-style.md-long-text{margin-top:8px;margin-bottom:8px}md-list-item.md-2-line .md-list-item-text,md-list-item.md-2-line>.md-no-style .md-list-item-text,md-list-item.md-3-line .md-list-item-text,md-list-item.md-3-line>.md-no-style .md-list-item-text{flex:1 1 auto;margin:auto;text-overflow:ellipsis;overflow:hidden}md-list-item.md-2-line .md-list-item-text.md-offset,md-list-item.md-2-line>.md-no-style .md-list-item-text.md-offset,md-list-item.md-3-line .md-list-item-text.md-offset,md-list-item.md-3-line>.md-no-style .md-list-item-text.md-offset{margin-left:56px}[dir=rtl] md-list-item.md-2-line .md-list-item-text.md-offset,[dir=rtl] md-list-item.md-2-line>.md-no-style .md-list-item-text.md-offset,[dir=rtl] md-list-item.md-3-line .md-list-item-text.md-offset,[dir=rtl] md-list-item.md-3-line>.md-no-style .md-list-item-text.md-offset{margin-left:auto;margin-right:56px}md-list-item.md-2-line .md-list-item-text h3,md-list-item.md-2-line>.md-no-style .md-list-item-text h3,md-list-item.md-3-line .md-list-item-text h3,md-list-item.md-3-line>.md-no-style .md-list-item-text h3{font-size:16px;font-weight:400;letter-spacing:.010em;margin:0;line-height:1.2em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}md-list-item.md-2-line .md-list-item-text h4,md-list-item.md-2-line>.md-no-style .md-list-item-text h4,md-list-item.md-3-line .md-list-item-text h4,md-list-item.md-3-line>.md-no-style .md-list-item-text h4{font-size:14px;letter-spacing:.010em;margin:3px 0 1px 0;font-weight:400;line-height:1.2em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}md-list-item.md-2-line .md-list-item-text p,md-list-item.md-2-line>.md-no-style .md-list-item-text p,md-list-item.md-3-line .md-list-item-text p,md-list-item.md-3-line>.md-no-style .md-list-item-text p{font-size:14px;font-weight:500;letter-spacing:.010em;margin:0;line-height:1.6em}md-list-item.md-2-line,md-list-item.md-2-line>.md-no-style{height:auto;min-height:72px}md-list-item.md-2-line::before,md-list-item.md-2-line>.md-no-style::before{content:'';min-height:72px;visibility:hidden;display:inline-block}md-list-item.md-2-line .md-avatar-icon,md-list-item.md-2-line>.md-avatar,md-list-item.md-2-line>.md-no-style .md-avatar-icon,md-list-item.md-2-line>.md-no-style>.md-avatar{margin-top:12px}md-list-item.md-2-line>.md-no-style>md-icon:first-child,md-list-item.md-2-line>md-icon:first-child{align-self:flex-start}md-list-item.md-2-line .md-list-item-text,md-list-item.md-2-line>.md-no-style .md-list-item-text{flex:1 1 auto}md-list-item.md-3-line,md-list-item.md-3-line>.md-no-style{height:auto;min-height:88px}md-list-item.md-3-line::before,md-list-item.md-3-line>.md-no-style::before{content:'';min-height:88px;visibility:hidden;display:inline-block}md-list-item.md-3-line>.md-avatar,md-list-item.md-3-line>.md-no-style>.md-avatar,md-list-item.md-3-line>.md-no-style>md-icon:first-child,md-list-item.md-3-line>md-icon:first-child{margin-top:16px}.md-open-menu-container{position:fixed;left:0;top:0;z-index:100;opacity:0;border-radius:2px}.md-open-menu-container md-menu-divider{margin-top:4px;margin-bottom:4px;height:1px;min-height:1px;max-height:1px;width:100%}.md-open-menu-container md-menu-content>*{opacity:0}.md-open-menu-container:not(.md-clickable){pointer-events:none}.md-open-menu-container.md-active{opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.2s}.md-open-menu-container.md-active>md-menu-content>*{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.2s;transition-delay:.1s}.md-open-menu-container.md-leave{opacity:0;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:250ms}md-menu-content{display:flex;flex-direction:column;padding:8px 0;max-height:304px;overflow-y:auto}md-menu-content.md-dense{max-height:208px}md-menu-content.md-dense md-menu-item{height:32px;min-height:0}md-menu-item{display:flex;flex-direction:row;min-height:48px;height:48px;align-content:center;justify-content:flex-start}md-menu-item>*{width:100%;margin:auto 0;padding-left:16px;padding-right:16px}md-menu-item>a.md-button{padding-top:5px}md-menu-item>.md-button{text-align:left;display:inline-block;border-radius:0;margin:auto 0;font-size:15px;text-transform:none;font-weight:400;height:100%;padding-left:16px;padding-right:16px;width:100%}md-menu-item>.md-button::-moz-focus-inner{padding:0;border:0}[dir=rtl] md-menu-item>.md-button{text-align:right}md-menu-item>.md-button md-icon{margin:auto 16px auto 0}[dir=rtl] md-menu-item>.md-button md-icon{margin:auto 0 auto 16px}md-menu-item>.md-button p{display:inline-block;margin:auto}md-menu-item>.md-button span{margin-top:auto;margin-bottom:auto}md-menu-item>.md-button .md-ripple-container{border-radius:inherit}md-toolbar .md-menu{height:auto;margin:auto;padding:0}@media (max-width:959px){md-menu-content{min-width:112px}md-menu-content[width="3"]{min-width:168px}md-menu-content[width="4"]{min-width:224px}md-menu-content[width="5"]{min-width:280px}md-menu-content[width="6"]{min-width:336px}md-menu-content[width="7"]{min-width:392px}}@media (min-width:960px){md-menu-content{min-width:96px}md-menu-content[width="3"]{min-width:192px}md-menu-content[width="4"]{min-width:256px}md-menu-content[width="5"]{min-width:320px}md-menu-content[width="6"]{min-width:384px}md-menu-content[width="7"]{min-width:448px}}md-toolbar.md-menu-toolbar h2.md-toolbar-tools{line-height:1rem;height:auto;padding:28px;padding-bottom:12px}md-toolbar.md-has-open-menu{position:relative;z-index:100}md-menu-bar{padding:0 20px;display:block;position:relative;z-index:2}md-menu-bar .md-menu{display:inline-block;padding:0;position:relative}md-menu-bar button{font-size:14px;padding:0 10px;margin:0;border:0;background-color:transparent;height:40px}md-menu-bar md-backdrop.md-menu-backdrop{z-index:-2}md-menu-content.md-menu-bar-menu.md-dense{max-height:none;padding:16px 0}md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent{position:relative}md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>md-icon{position:absolute;padding:0;width:24px;top:6px;left:24px}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>md-icon{left:auto;right:24px}md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent .md-menu>.md-button,md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>.md-button{padding:0 32px 0 64px}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent .md-menu>.md-button,[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>.md-button{padding:0 64px 0 32px}md-menu-content.md-menu-bar-menu.md-dense .md-button{min-height:0;height:32px;display:flex}md-menu-content.md-menu-bar-menu.md-dense .md-button span{flex-grow:1}md-menu-content.md-menu-bar-menu.md-dense .md-button span.md-alt-text{flex-grow:0;align-self:flex-end;margin:0 8px}md-menu-content.md-menu-bar-menu.md-dense md-menu-divider{margin:8px 0}md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button,md-menu-content.md-menu-bar-menu.md-dense md-menu-item>.md-button{text-align:left}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button,[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense md-menu-item>.md-button{text-align:right}md-menu-content.md-menu-bar-menu.md-dense .md-menu{padding:0}md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button{position:relative;margin:0;width:100%;text-transform:none;font-weight:400;border-radius:0;padding-left:16px}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button{padding-left:0;padding-right:16px}md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button:after{display:block;content:'\25BC';position:absolute;top:0;speak:none;transform:rotate(270deg) scaleY(.45) scaleX(.9);right:28px}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button:after{transform:rotate(90deg) scaleY(.45) scaleX(.9)}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button:after{right:auto;left:28px}.md-nav-bar{border-style:solid;border-width:0 0 1px;height:48px;position:relative}._md-nav-bar-list{outline:0;list-style:none;margin:0;padding:0;box-sizing:border-box;display:flex;flex-direction:row}.md-nav-item:first-of-type{margin-left:8px}.md-button._md-nav-button{line-height:24px;margin:0 4px;padding:12px 16px;transition:background-color .35s cubic-bezier(.35,0,.25,1)}.md-button._md-nav-button:focus{outline:0}.md-button._md-nav-button:hover{background-color:inherit}md-nav-ink-bar{bottom:0;height:2px;left:auto;position:absolute;right:auto;background-color:#000}md-nav-ink-bar._md-left{transition:left 125ms cubic-bezier(.35,0,.25,1),right .25s cubic-bezier(.35,0,.25,1)}md-nav-ink-bar._md-right{transition:left .25s cubic-bezier(.35,0,.25,1),right 125ms cubic-bezier(.35,0,.25,1)}md-nav-extra-content{min-height:48px;padding-right:12px}.md-panel-outer-wrapper{height:100%;left:0;position:absolute;top:0;width:100%}._md-panel-hidden{display:none}._md-panel-fullscreen{border-radius:0;left:0;min-height:100%;min-width:100%;position:fixed;top:0}._md-panel-shown .md-panel{opacity:1;transition:none}.md-panel{opacity:0;position:fixed}.md-panel._md-panel-shown{opacity:1;transition:none}.md-panel._md-panel-animate-enter{opacity:1;transition:all .3s cubic-bezier(0,0,.2,1)}.md-panel._md-panel-animate-leave{opacity:1;transition:all .3s cubic-bezier(.4,0,1,1)}.md-panel._md-panel-animate-fade-out,.md-panel._md-panel-animate-scale-out{opacity:0}.md-panel._md-panel-backdrop{height:100%;position:absolute;width:100%}.md-panel._md-opaque-enter{opacity:.48;transition:opacity .3s cubic-bezier(0,0,.2,1)}.md-panel._md-opaque-leave{transition:opacity .3s cubic-bezier(.4,0,1,1)}@keyframes indeterminate-rotate{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}md-progress-circular{position:relative;display:block}md-progress-circular._md-progress-circular-disabled{visibility:hidden}md-progress-circular.md-mode-indeterminate svg{animation:indeterminate-rotate 2.9s linear infinite}md-progress-circular svg{position:absolute;overflow:visible;top:0;left:0}md-progress-linear{display:block;position:relative;width:100%;height:5px;padding-top:0!important;margin-bottom:0!important}md-progress-linear._md-progress-linear-disabled{visibility:hidden}md-progress-linear .md-container{display:block;position:relative;overflow:hidden;width:100%;height:5px;transform:translate(0,0) scale(1,1)}md-progress-linear .md-container .md-bar{position:absolute;left:0;top:0;bottom:0;width:100%;height:5px}md-progress-linear .md-container .md-dashed:before{content:"";display:none;position:absolute;margin-top:0;height:5px;width:100%;background-color:transparent;background-size:10px 10px!important;background-position:0 -23px}md-progress-linear .md-container .md-bar1,md-progress-linear .md-container .md-bar2{transition:transform .2s linear}md-progress-linear .md-container.md-mode-query .md-bar1{display:none}md-progress-linear .md-container.md-mode-query .md-bar2{transition:all .2s linear;animation:query .8s infinite cubic-bezier(.39,.575,.565,1)}md-progress-linear .md-container.md-mode-determinate .md-bar1{display:none}md-progress-linear .md-container.md-mode-indeterminate .md-bar1{animation:md-progress-linear-indeterminate-scale-1 4s infinite,md-progress-linear-indeterminate-1 4s infinite}md-progress-linear .md-container.md-mode-indeterminate .md-bar2{animation:md-progress-linear-indeterminate-scale-2 4s infinite,md-progress-linear-indeterminate-2 4s infinite}md-progress-linear .md-container.ng-hide ._md-progress-linear-disabled md-progress-linear .md-container{animation:none}md-progress-linear .md-container.ng-hide ._md-progress-linear-disabled md-progress-linear .md-container .md-bar1{animation-name:none}md-progress-linear .md-container.ng-hide ._md-progress-linear-disabled md-progress-linear .md-container .md-bar2{animation-name:none}md-progress-linear .md-container.md-mode-buffer{background-color:transparent!important;transition:all .2s linear}md-progress-linear .md-container.md-mode-buffer .md-dashed:before{display:block;animation:buffer 3s infinite linear}@keyframes query{0%{opacity:1;transform:translateX(35%) scale(.3,1)}100%{opacity:0;transform:translateX(-50%) scale(0,1)}}@keyframes buffer{0%{opacity:1;background-position:0 -23px}50%{opacity:0}100%{opacity:1;background-position:-200px -23px}}@keyframes md-progress-linear-indeterminate-scale-1{0%{transform:scaleX(.1);animation-timing-function:linear}36.6%{transform:scaleX(.1);animation-timing-function:cubic-bezier(.334731432,.124819821,.785843996,1)}69.15%{transform:scaleX(.83);animation-timing-function:cubic-bezier(.225732004,0,.233648906,1.3709798)}100%{transform:scaleX(.1)}}@keyframes md-progress-linear-indeterminate-1{0%{left:-105.166666667%;animation-timing-function:linear}20%{left:-105.166666667%;animation-timing-function:cubic-bezier(.5,0,.701732,.495818703)}69.15%{left:21.5%;animation-timing-function:cubic-bezier(.302435,.38135197,.55,.956352125)}100%{left:95.4444444444%}}@keyframes md-progress-linear-indeterminate-scale-2{0%{transform:scaleX(.1);animation-timing-function:cubic-bezier(.205028172,.057050836,.57660995,.453970841)}19.15%{transform:scaleX(.57);animation-timing-function:cubic-bezier(.152312994,.196431957,.648373778,1.00431535)}44.15%{transform:scaleX(.91);animation-timing-function:cubic-bezier(.25775882,-.003163357,.211761916,1.38178961)}100%{transform:scaleX(.1)}}@keyframes md-progress-linear-indeterminate-2{0%{left:-54.8888888889%;animation-timing-function:cubic-bezier(.15,0,.5150584,.409684966)}25%{left:-17.25%;animation-timing-function:cubic-bezier(.3103299,.284057684,.8,.733718979)}48.35%{left:29.5%;animation-timing-function:cubic-bezier(.4,.627034903,.6,.902025796)}100%{left:117.388888889%}}md-radio-button{box-sizing:border-box;display:block;margin-bottom:16px;white-space:nowrap;cursor:pointer;position:relative}md-radio-button[disabled]{cursor:default}md-radio-button[disabled] .md-container{cursor:default}md-radio-button .md-container{position:absolute;top:50%;transform:translateY(-50%);box-sizing:border-box;display:inline-block;width:20px;height:20px;cursor:pointer;left:0;right:auto}[dir=rtl] md-radio-button .md-container{left:auto}[dir=rtl] md-radio-button .md-container{right:0}md-radio-button .md-container .md-ripple-container{position:absolute;display:block;width:auto;height:auto;left:-15px;top:-15px;right:-15px;bottom:-15px}md-radio-button .md-container:before{box-sizing:border-box;background-color:transparent;border-radius:50%;content:'';position:absolute;display:block;height:auto;left:0;top:0;right:0;bottom:0;transition:all .5s;width:auto}md-radio-button.md-align-top-left>div.md-container{top:12px}md-radio-button .md-off{box-sizing:border-box;position:absolute;top:0;left:0;width:20px;height:20px;border-style:solid;border-width:2px;border-radius:50%;transition:border-color ease .28s}md-radio-button .md-on{box-sizing:border-box;position:absolute;top:0;left:0;width:20px;height:20px;border-radius:50%;transition:transform ease .28s;transform:scale(0)}md-radio-button.md-checked .md-on{transform:scale(.5)}md-radio-button .md-label{box-sizing:border-box;position:relative;display:inline-block;margin-left:30px;margin-right:0;vertical-align:middle;white-space:normal;pointer-events:none;width:auto}[dir=rtl] md-radio-button .md-label{margin-left:0}[dir=rtl] md-radio-button .md-label{margin-right:30px}md-radio-group.layout-column md-radio-button,md-radio-group.layout-gt-lg-column md-radio-button,md-radio-group.layout-gt-md-column md-radio-button,md-radio-group.layout-gt-sm-column md-radio-button,md-radio-group.layout-gt-xs-column md-radio-button,md-radio-group.layout-lg-column md-radio-button,md-radio-group.layout-md-column md-radio-button,md-radio-group.layout-sm-column md-radio-button,md-radio-group.layout-xl-column md-radio-button,md-radio-group.layout-xs-column md-radio-button{margin-bottom:16px}md-radio-group.layout-gt-lg-row md-radio-button,md-radio-group.layout-gt-md-row md-radio-button,md-radio-group.layout-gt-sm-row md-radio-button,md-radio-group.layout-gt-xs-row md-radio-button,md-radio-group.layout-lg-row md-radio-button,md-radio-group.layout-md-row md-radio-button,md-radio-group.layout-row md-radio-button,md-radio-group.layout-sm-row md-radio-button,md-radio-group.layout-xl-row md-radio-button,md-radio-group.layout-xs-row md-radio-button{margin-top:0;margin-bottom:0;margin-left:0;margin-right:16px}[dir=rtl] md-radio-group.layout-gt-lg-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-md-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-sm-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-xs-row md-radio-button,[dir=rtl] md-radio-group.layout-lg-row md-radio-button,[dir=rtl] md-radio-group.layout-md-row md-radio-button,[dir=rtl] md-radio-group.layout-row md-radio-button,[dir=rtl] md-radio-group.layout-sm-row md-radio-button,[dir=rtl] md-radio-group.layout-xl-row md-radio-button,[dir=rtl] md-radio-group.layout-xs-row md-radio-button{margin-left:16px}[dir=rtl] md-radio-group.layout-gt-lg-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-md-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-sm-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-xs-row md-radio-button,[dir=rtl] md-radio-group.layout-lg-row md-radio-button,[dir=rtl] md-radio-group.layout-md-row md-radio-button,[dir=rtl] md-radio-group.layout-row md-radio-button,[dir=rtl] md-radio-group.layout-sm-row md-radio-button,[dir=rtl] md-radio-group.layout-xl-row md-radio-button,[dir=rtl] md-radio-group.layout-xs-row md-radio-button{margin-right:0}md-radio-group.layout-gt-lg-row md-radio-button:last-of-type,md-radio-group.layout-gt-md-row md-radio-button:last-of-type,md-radio-group.layout-gt-sm-row md-radio-button:last-of-type,md-radio-group.layout-gt-xs-row md-radio-button:last-of-type,md-radio-group.layout-lg-row md-radio-button:last-of-type,md-radio-group.layout-md-row md-radio-button:last-of-type,md-radio-group.layout-row md-radio-button:last-of-type,md-radio-group.layout-sm-row md-radio-button:last-of-type,md-radio-group.layout-xl-row md-radio-button:last-of-type,md-radio-group.layout-xs-row md-radio-button:last-of-type{margin-left:0;margin-right:0}md-radio-group:focus{outline:0}md-radio-group.md-focused .md-checked .md-container:before{left:-8px;top:-8px;right:-8px;bottom:-8px}md-radio-group[disabled] md-radio-button{cursor:default}md-radio-group[disabled] md-radio-button .md-container{cursor:default}.md-inline-form md-radio-group{margin:18px 0 19px}.md-inline-form md-radio-group md-radio-button{display:inline-block;height:30px;padding:2px;box-sizing:border-box;margin-top:0;margin-bottom:0}@media screen and (-ms-high-contrast:active){md-radio-button.md-default-theme .md-on{background-color:#fff}}md-input-container:not([md-no-float]) .md-select-placeholder span:first-child{transition:transform .4s cubic-bezier(.25,.8,.25,1);transform-origin:left top}[dir=rtl] md-input-container:not([md-no-float]) .md-select-placeholder span:first-child{transform-origin:right top}md-input-container.md-input-focused:not([md-no-float]) .md-select-placeholder span:first-child{transform:translateY(-22px) translateX(-2px) scale(.75)}.md-select-menu-container{position:fixed;left:0;top:0;z-index:90;opacity:0;display:none;transform:translateY(-1px)}.md-select-menu-container:not(.md-clickable){pointer-events:none}.md-select-menu-container md-progress-circular{display:table;margin:24px auto!important}.md-select-menu-container.md-active{display:block;opacity:1}.md-select-menu-container.md-active md-select-menu{transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:150ms}.md-select-menu-container.md-active md-select-menu>*{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:150ms;transition-delay:.1s}.md-select-menu-container.md-leave{opacity:0;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:250ms}md-input-container>md-select{margin:0;order:2}md-input-container:not(.md-input-has-value) md-select.ng-required:not(.md-no-asterisk) .md-select-value span:first-child:after,md-input-container:not(.md-input-has-value) md-select[required]:not(.md-no-asterisk) .md-select-value span:first-child:after{content:' *';font-size:13px;vertical-align:top}md-input-container.md-input-invalid md-select .md-select-value{border-bottom-style:solid;padding-bottom:1px}md-select{display:flex;margin:20px 0 26px 0}md-select.ng-required.ng-invalid:not(.md-no-asterisk) .md-select-value span:first-child:after,md-select[required].ng-invalid:not(.md-no-asterisk) .md-select-value span:first-child:after{content:' *';font-size:13px;vertical-align:top}md-select[disabled] .md-select-value{background-position:0 bottom;background-size:4px 1px;background-repeat:repeat-x;margin-bottom:-1px}md-select:focus{outline:0}md-select[disabled]:hover{cursor:default}md-select:not([disabled]):hover{cursor:pointer}md-select:not([disabled]).ng-invalid.ng-touched .md-select-value{border-bottom-style:solid;padding-bottom:1px}md-select:not([disabled]):focus .md-select-value{border-bottom-width:2px;border-bottom-style:solid;padding-bottom:0}md-select:not([disabled]):focus.ng-invalid.ng-touched .md-select-value{padding-bottom:0}md-input-container.md-input-has-value .md-select-value>span:not(.md-select-icon){transform:translate3d(0,1px,0)}.md-select-value{display:flex;align-items:center;padding:2px 2px 1px;border-bottom-width:1px;border-bottom-style:solid;background-color:transparent;position:relative;box-sizing:content-box;min-width:64px;min-height:26px;flex-grow:1}.md-select-value>span:not(.md-select-icon){max-width:100%;flex:1 1 auto;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.md-select-value>span:not(.md-select-icon) .md-text{display:inline}.md-select-value .md-select-icon{display:block;align-items:flex-end;text-align:end;width:24px;margin:0 4px;transform:translate3d(0,-2px,0);font-size:1.2rem}.md-select-value .md-select-icon:after{display:block;content:'\25BC';position:relative;top:2px;speak:none;font-size:13px;transform:scaleY(.5) scaleX(1)}.md-select-value.md-select-placeholder{display:flex;order:1;pointer-events:none;-webkit-font-smoothing:antialiased;padding-left:2px;z-index:1}md-select-menu{display:flex;flex-direction:column;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);max-height:256px;min-height:48px;overflow-y:hidden;transform-origin:left top;transform:scale(1)}md-select-menu.md-reverse{flex-direction:column-reverse}md-select-menu:not(.md-overflow) md-content{padding-top:8px;padding-bottom:8px}[dir=rtl] md-select-menu{transform-origin:right top}md-select-menu md-content{min-width:136px;min-height:48px;max-height:256px;overflow-y:auto}md-select-menu>*{opacity:0}md-option{cursor:pointer;position:relative;display:flex;align-items:center;width:auto;transition:background .15s linear;padding:0 16px 0 16px;height:48px}md-option[disabled]{cursor:default}md-option:focus{outline:0}md-option .md-text{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}md-optgroup{display:block}md-optgroup label{display:block;font-size:14px;text-transform:uppercase;padding:16px;font-weight:500}md-optgroup md-option{padding-left:32px;padding-right:32px}@media screen and (-ms-high-contrast:active){.md-select-backdrop{background-color:transparent}md-select-menu{border:1px solid #fff}}md-select-menu[multiple] md-option.md-checkbox-enabled{padding-left:40px;padding-right:16px}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled{padding-left:16px}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled{padding-right:40px}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{position:absolute;top:50%;transform:translateY(-50%);box-sizing:border-box;display:inline-block;width:20px;height:20px;left:0;right:auto}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{left:auto}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{right:0}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container:before{box-sizing:border-box;background-color:transparent;border-radius:50%;content:'';position:absolute;display:block;height:auto;left:0;top:0;right:0;bottom:0;transition:all .5s;width:auto}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container:after{box-sizing:border-box;content:'';position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container .md-ripple-container{position:absolute;display:block;width:auto;height:auto;left:-15px;top:-15px;right:-15px;bottom:-15px}md-select-menu[multiple] md-option.md-checkbox-enabled .md-icon{box-sizing:border-box;transition:240ms;position:absolute;top:0;left:0;width:20px;height:20px;border-width:2px;border-style:solid;border-radius:2px}md-select-menu[multiple] md-option.md-checkbox-enabled[selected] .md-icon{border-color:transparent}md-select-menu[multiple] md-option.md-checkbox-enabled[selected] .md-icon:after{box-sizing:border-box;transform:rotate(45deg);position:absolute;left:4.6666666667px;top:.2222222222px;display:table;width:6.6666666667px;height:13.3333333333px;border-width:2px;border-style:solid;border-top:0;border-left:0;content:''}md-select-menu[multiple] md-option.md-checkbox-enabled[disabled]{cursor:default}md-select-menu[multiple] md-option.md-checkbox-enabled.md-indeterminate .md-icon:after{box-sizing:border-box;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:table;width:12px;height:2px;border-width:2px;border-style:solid;border-top:0;border-left:0;content:''}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{margin-left:10.6666666667px;margin-right:auto}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{margin-left:auto}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{margin-right:10.6666666667px}md-sidenav{box-sizing:border-box;position:absolute;flex-direction:column;z-index:60;width:320px;max-width:320px;bottom:0;overflow:auto;-webkit-overflow-scrolling:touch}md-sidenav ul{list-style:none}md-sidenav.md-closed{display:none}md-sidenav.md-closed-add,md-sidenav.md-closed-remove{display:flex;transition:.2s ease-in all}md-sidenav.md-closed-add.md-closed-add-active,md-sidenav.md-closed-remove.md-closed-remove-active{transition:all .4s cubic-bezier(.25,.8,.25,1)}md-sidenav.md-locked-open-add,md-sidenav.md-locked-open-remove{position:static;display:flex;transform:translate3d(0,0,0)}md-sidenav.md-locked-open,md-sidenav.md-locked-open-remove.md-closed,md-sidenav.md-locked-open.md-closed,md-sidenav.md-locked-open.md-closed.md-sidenav-left,md-sidenav.md-locked-open.md-closed.md-sidenav-right{position:static;display:flex;transform:translate3d(0,0,0)}md-sidenav.md-locked-open-remove-active{transition:width .3s cubic-bezier(.55,0,.55,.2),min-width .3s cubic-bezier(.55,0,.55,.2);width:0!important;min-width:0!important}md-sidenav.md-closed.md-locked-open-add{width:0!important;min-width:0!important;transform:translate3d(0,0,0)}md-sidenav.md-closed.md-locked-open-add-active{transition:width .3s cubic-bezier(.55,0,.55,.2),min-width .3s cubic-bezier(.55,0,.55,.2);width:320px;min-width:320px;transform:translate3d(0,0,0)}.md-sidenav-backdrop.md-locked-open{display:none}.md-sidenav-left,md-sidenav{left:0;top:0;transform:translate3d(0,0,0)}.md-sidenav-left.md-closed,md-sidenav.md-closed{transform:translate3d(-100%,0,0)}.md-sidenav-right{left:100%;top:0;transform:translate(-100%,0)}.md-sidenav-right.md-closed{transform:translate(0,0)}@media (min-width:600px){md-sidenav{max-width:400px}}@media (max-width:456px){md-sidenav{width:calc(100% - 56px);min-width:calc(100% - 56px);max-width:calc(100% - 56px)}}@media screen and (-ms-high-contrast:active){.md-sidenav-left,md-sidenav{border-right:1px solid #fff}.md-sidenav-right{border-left:1px solid #fff}}@keyframes sliderFocusThumb{0%{transform:scale(.7)}30%{transform:scale(1)}100%{transform:scale(.7)}}@keyframes sliderDiscreteFocusThumb{0%{transform:scale(.7)}50%{transform:scale(.8)}100%{transform:scale(0)}}@keyframes sliderDiscreteFocusRing{0%{transform:scale(.7);opacity:0}50%{transform:scale(1);opacity:1}100%{transform:scale(0)}}md-slider{height:48px;min-width:128px;position:relative;margin-left:4px;margin-right:4px;padding:0;display:block;flex-direction:row}md-slider *,md-slider :after{box-sizing:border-box}md-slider .md-slider-wrapper{outline:0;width:100%;height:100%}md-slider .md-slider-content{position:relative}md-slider .md-track-container{width:100%;position:absolute;top:23px;height:2px}md-slider .md-track{position:absolute;left:0;right:0;height:100%}md-slider .md-track-fill{transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:width,height}md-slider .md-track-ticks{position:absolute;left:0;right:0;height:100%}md-slider .md-track-ticks canvas{width:100%;height:100%}md-slider .md-thumb-container{position:absolute;left:0;top:50%;transform:translate3d(-50%,-50%,0);transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:left,right,bottom}[dir=rtl] md-slider .md-thumb-container{left:auto;right:0}md-slider .md-thumb{z-index:1;position:absolute;left:-10px;top:14px;width:20px;height:20px;border-radius:20px;transform:scale(.7);transition:all .4s cubic-bezier(.25,.8,.25,1)}[dir=rtl] md-slider .md-thumb{left:auto;right:-10px}md-slider .md-thumb:after{content:'';position:absolute;width:20px;height:20px;border-radius:20px;border-width:3px;border-style:solid;transition:inherit}md-slider .md-sign{display:flex;align-items:center;justify-content:center;position:absolute;left:-14px;top:-17px;width:28px;height:28px;border-radius:28px;transform:scale(.4) translate3d(0,67.5px,0);transition:all .3s cubic-bezier(.35,0,.25,1)}md-slider .md-sign:after{position:absolute;content:'';left:0;border-radius:16px;top:19px;border-left:14px solid transparent;border-right:14px solid transparent;border-top-width:16px;border-top-style:solid;opacity:0;transform:translate3d(0,-8px,0);transition:all .2s cubic-bezier(.35,0,.25,1)}[dir=rtl] md-slider .md-sign:after{left:auto;right:0}md-slider .md-sign .md-thumb-text{z-index:1;font-size:12px;font-weight:700}md-slider .md-focus-ring{position:absolute;left:-17px;top:7px;width:34px;height:34px;border-radius:34px;transform:scale(.7);opacity:0;transition:all .35s cubic-bezier(.35,0,.25,1)}[dir=rtl] md-slider .md-focus-ring{left:auto;right:-17px}md-slider .md-disabled-thumb{position:absolute;left:-14px;top:10px;width:28px;height:28px;border-radius:28px;transform:scale(.5);border-width:4px;border-style:solid;display:none}[dir=rtl] md-slider .md-disabled-thumb{left:auto;right:-14px}md-slider.md-min .md-sign{opacity:0}md-slider:focus{outline:0}md-slider.md-dragging .md-thumb-container,md-slider.md-dragging .md-track-fill{transition:none}md-slider:not([md-discrete]) .md-sign,md-slider:not([md-discrete]) .md-track-ticks{display:none}md-slider:not([md-discrete]):not([disabled]) .md-slider-wrapper .md-thumb:hover{transform:scale(.8)}md-slider:not([md-discrete]):not([disabled]) .md-slider-wrapper.md-focused .md-focus-ring{transform:scale(1);opacity:1}md-slider:not([md-discrete]):not([disabled]) .md-slider-wrapper.md-focused .md-thumb{animation:sliderFocusThumb .7s cubic-bezier(.35,0,.25,1)}md-slider:not([md-discrete]):not([disabled]).md-active .md-slider-wrapper .md-thumb{transform:scale(1)}md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-focus-ring{transform:scale(0);animation:sliderDiscreteFocusRing .5s cubic-bezier(.35,0,.25,1)}md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-thumb{animation:sliderDiscreteFocusThumb .5s cubic-bezier(.35,0,.25,1)}md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-thumb,md-slider[md-discrete]:not([disabled]).md-active .md-thumb{transform:scale(0)}md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-sign,md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-sign:after,md-slider[md-discrete]:not([disabled]).md-active .md-sign,md-slider[md-discrete]:not([disabled]).md-active .md-sign:after{opacity:1;transform:translate3d(0,0,0) scale(1)}md-slider[md-discrete][disabled][readonly] .md-thumb{transform:scale(0)}md-slider[md-discrete][disabled][readonly] .md-sign,md-slider[md-discrete][disabled][readonly] .md-sign:after{opacity:1;transform:translate3d(0,0,0) scale(1)}md-slider[disabled] .md-track-fill{display:none}md-slider[disabled] .md-track-ticks{opacity:0}md-slider[disabled]:not([readonly]) .md-sign{opacity:0}md-slider[disabled] .md-thumb{transform:scale(.5)}md-slider[disabled] .md-disabled-thumb{display:block}md-slider[md-vertical]{flex-direction:column;min-height:128px;min-width:0}md-slider[md-vertical] .md-slider-wrapper{flex:1;padding-top:12px;padding-bottom:12px;width:48px;align-self:center;display:flex;justify-content:center}md-slider[md-vertical] .md-track-container{height:100%;width:2px;top:0;left:calc(50% - (2px / 2))}md-slider[md-vertical] .md-thumb-container{top:auto;margin-bottom:23px;left:calc(50% - 1px);bottom:0}md-slider[md-vertical] .md-thumb-container .md-thumb:after{left:1px}md-slider[md-vertical] .md-thumb-container .md-focus-ring{left:-16px}md-slider[md-vertical] .md-track-fill{bottom:0}md-slider[md-vertical][md-discrete] .md-sign{left:-40px;top:9.5px;transform:scale(.4) translate3d(67.5px,0,0)}md-slider[md-vertical][md-discrete] .md-sign:after{top:9.5px;left:19px;border-top:14px solid transparent;border-right:0;border-bottom:14px solid transparent;border-left-width:16px;border-left-style:solid;opacity:0;transform:translate3d(0,-8px,0);transition:all .2s ease-in-out}md-slider[md-vertical][md-discrete] .md-sign .md-thumb-text{z-index:1;font-size:12px;font-weight:700}md-slider[md-vertical][md-discrete] .md-focused .md-sign:after,md-slider[md-vertical][md-discrete].md-active .md-sign:after,md-slider[md-vertical][md-discrete][disabled][readonly] .md-sign:after{top:0}md-slider[md-vertical][disabled][readonly] .md-thumb{transform:scale(0)}md-slider[md-vertical][disabled][readonly] .md-sign,md-slider[md-vertical][disabled][readonly] .md-sign:after{opacity:1;transform:translate3d(0,0,0) scale(1)}md-slider[md-invert]:not([md-vertical]) .md-track-fill{left:auto;right:0}[dir=rtl] md-slider[md-invert]:not([md-vertical]) .md-track-fill{left:0}[dir=rtl] md-slider[md-invert]:not([md-vertical]) .md-track-fill{right:auto}md-slider[md-invert][md-vertical] .md-track-fill{bottom:auto;top:0}md-slider-container{display:flex;align-items:center;flex-direction:row}md-slider-container>:first-child:not(md-slider),md-slider-container>:last-child:not(md-slider){min-width:25px;max-width:42px;height:25px;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:color,max-width}md-slider-container>:first-child:not(md-slider){margin-right:16px}[dir=rtl] md-slider-container>:first-child:not(md-slider){margin-right:auto;margin-left:16px}md-slider-container>:last-child:not(md-slider){margin-left:16px}[dir=rtl] md-slider-container>:last-child:not(md-slider){margin-left:auto;margin-right:16px}md-slider-container[md-vertical]{flex-direction:column}md-slider-container[md-vertical]>:first-child:not(md-slider),md-slider-container[md-vertical]>:last-child:not(md-slider){margin-right:0;margin-left:0;text-align:center}md-slider-container md-input-container input[type=number]{text-align:center;padding-left:15px;height:50px;margin-top:-25px}[dir=rtl] md-slider-container md-input-container input[type=number]{padding-left:0;padding-right:15px}@media screen and (-ms-high-contrast:active){md-slider.md-default-theme .md-track{border-bottom:1px solid #fff}}.md-sticky-clone{z-index:2;top:0;left:0;right:0;position:absolute!important;transform:translate3d(-9999px,-9999px,0)}.md-sticky-clone[sticky-state=active]{transform:translate3d(0,0,0)}.md-sticky-clone[sticky-state=active]:not(.md-sticky-no-effect) .md-subheader-inner{animation:subheaderStickyHoverIn .3s ease-out both}@keyframes subheaderStickyHoverIn{0%{box-shadow:0 0 0 0 transparent}100%{box-shadow:0 2px 4px 0 rgba(0,0,0,.16)}}@keyframes subheaderStickyHoverOut{0%{box-shadow:0 2px 4px 0 rgba(0,0,0,.16)}100%{box-shadow:0 0 0 0 transparent}}.md-subheader-wrapper:not(.md-sticky-no-effect){transition:.2s ease-out margin}.md-subheader-wrapper:not(.md-sticky-no-effect) .md-subheader{margin:0}.md-subheader-wrapper:not(.md-sticky-no-effect).md-sticky-clone{z-index:2}.md-subheader-wrapper:not(.md-sticky-no-effect)[sticky-state=active]{margin-top:-2px}.md-subheader-wrapper:not(.md-sticky-no-effect):not(.md-sticky-clone)[sticky-prev-state=active] .md-subheader-inner:after{animation:subheaderStickyHoverOut .3s ease-out both}.md-subheader{display:block;font-size:14px;font-weight:500;line-height:1em;margin:0;position:relative}.md-subheader .md-subheader-inner{display:block;padding:16px}.md-subheader .md-subheader-content{display:block;z-index:1;position:relative}.md-inline-form md-switch{margin-top:18px;margin-bottom:19px}md-switch{margin:16px 0;white-space:nowrap;cursor:pointer;outline:0;user-select:none;height:30px;line-height:28px;align-items:center;display:flex;margin-left:inherit;margin-right:16px}[dir=rtl] md-switch{margin-left:16px}[dir=rtl] md-switch{margin-right:inherit}md-switch:last-of-type{margin-left:inherit;margin-right:0}[dir=rtl] md-switch:last-of-type{margin-left:0}[dir=rtl] md-switch:last-of-type{margin-right:inherit}md-switch[disabled]{cursor:default}md-switch[disabled] .md-container{cursor:default}md-switch .md-container{cursor:grab;width:36px;height:24px;position:relative;user-select:none;margin-right:8px;float:left}[dir=rtl] md-switch .md-container{margin-right:auto;margin-left:8px}md-switch:not([disabled]) .md-dragging,md-switch:not([disabled]).md-dragging .md-container{cursor:grabbing}md-switch.md-focused:not([disabled]) .md-thumb:before{left:-8px;top:-8px;right:-8px;bottom:-8px}md-switch.md-focused:not([disabled]):not(.md-checked) .md-thumb:before{background-color:rgba(0,0,0,.12)}md-switch .md-label{border-color:transparent;border-width:0;float:left}md-switch .md-bar{left:1px;width:34px;top:5px;height:14px;border-radius:8px;position:absolute}md-switch .md-thumb-container{top:2px;left:0;width:16px;position:absolute;transform:translate3d(0,0,0);z-index:1}md-switch.md-checked .md-thumb-container{transform:translate3d(100%,0,0)}md-switch .md-thumb{position:absolute;margin:0;left:0;top:0;outline:0;height:20px;width:20px;border-radius:50%;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}md-switch .md-thumb:before{background-color:transparent;border-radius:50%;content:'';position:absolute;display:block;height:auto;left:0;top:0;right:0;bottom:0;transition:all .5s;width:auto}md-switch .md-thumb .md-ripple-container{position:absolute;display:block;width:auto;height:auto;left:-20px;top:-20px;right:-20px;bottom:-20px}md-switch:not(.md-dragging) .md-bar,md-switch:not(.md-dragging) .md-thumb,md-switch:not(.md-dragging) .md-thumb-container{transition:all 80ms linear;transition-property:transform,background-color}md-switch:not(.md-dragging) .md-bar,md-switch:not(.md-dragging) .md-thumb{transition-delay:50ms}@media screen and (-ms-high-contrast:active){md-switch.md-default-theme .md-bar{background-color:#666}md-switch.md-default-theme.md-checked .md-bar{background-color:#9e9e9e}md-switch.md-default-theme .md-thumb{background-color:#fff}}@keyframes md-tab-content-hide{0%{opacity:1}50%{opacity:1}100%{opacity:0}}md-tab-data{position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;opacity:0}md-tabs{display:block;margin:0;border-radius:2px;overflow:hidden;position:relative;flex-shrink:0}md-tabs:not(.md-no-tab-content):not(.md-dynamic-height){min-height:248px}md-tabs[md-align-tabs=bottom]{padding-bottom:48px}md-tabs[md-align-tabs=bottom] md-tabs-wrapper{position:absolute;bottom:0;left:0;right:0;height:48px;z-index:2}md-tabs[md-align-tabs=bottom] md-tabs-content-wrapper{top:0;bottom:48px}md-tabs.md-dynamic-height md-tabs-content-wrapper{min-height:0;position:relative;top:auto;left:auto;right:auto;bottom:auto;overflow:visible}md-tabs.md-dynamic-height md-tab-content.md-active{position:relative}md-tabs[md-border-bottom] md-tabs-wrapper{border-width:0 0 1px;border-style:solid}md-tabs[md-border-bottom]:not(.md-dynamic-height) md-tabs-content-wrapper{top:49px}md-tabs-wrapper{display:block;position:relative;transform:translate3d(0,0,0)}md-tabs-wrapper md-next-button,md-tabs-wrapper md-prev-button{height:100%;width:32px;position:absolute;top:50%;transform:translateY(-50%);line-height:1em;z-index:2;cursor:pointer;font-size:16px;background:transparent no-repeat center center;transition:all .5s cubic-bezier(.35,0,.25,1)}md-tabs-wrapper md-next-button:focus,md-tabs-wrapper md-prev-button:focus{outline:0}md-tabs-wrapper md-next-button.md-disabled,md-tabs-wrapper md-prev-button.md-disabled{opacity:.25;cursor:default}md-tabs-wrapper md-next-button.ng-leave,md-tabs-wrapper md-prev-button.ng-leave{transition:none}md-tabs-wrapper md-next-button md-icon,md-tabs-wrapper md-prev-button md-icon{position:absolute;top:50%;left:50%;transform:translate3d(-50%,-50%,0)}md-tabs-wrapper md-prev-button{left:0;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE3LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPiA8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPiA8c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMjQgMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPiA8ZyBpZD0iSGVhZGVyIj4gPGc+IDxyZWN0IHg9Ii02MTgiIHk9Ii0xMjA4IiBmaWxsPSJub25lIiB3aWR0aD0iMTQwMCIgaGVpZ2h0PSIzNjAwIi8+IDwvZz4gPC9nPiA8ZyBpZD0iTGFiZWwiPiA8L2c+IDxnIGlkPSJJY29uIj4gPGc+IDxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyIAkJIiBzdHlsZT0iZmlsbDp3aGl0ZTsiLz4gPHJlY3QgZmlsbD0ibm9uZSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ii8+IDwvZz4gPC9nPiA8ZyBpZD0iR3JpZCIgZGlzcGxheT0ibm9uZSI+IDxnIGRpc3BsYXk9ImlubGluZSI+IDwvZz4gPC9nPiA8L3N2Zz4NCg==)}[dir=rtl] md-tabs-wrapper md-prev-button{left:auto;right:0}md-tabs-wrapper md-next-button{right:0;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE3LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPiA8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPiA8c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMjQgMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPiA8ZyBpZD0iSGVhZGVyIj4gPGc+IDxyZWN0IHg9Ii02MTgiIHk9Ii0xMzM2IiBmaWxsPSJub25lIiB3aWR0aD0iMTQwMCIgaGVpZ2h0PSIzNjAwIi8+IDwvZz4gPC9nPiA8ZyBpZD0iTGFiZWwiPiA8L2c+IDxnIGlkPSJJY29uIj4gPGc+IDxwb2x5Z29uIHBvaW50cz0iMTAsNiA4LjYsNy40IDEzLjIsMTIgOC42LDE2LjYgMTAsMTggMTYsMTIgCQkiIHN0eWxlPSJmaWxsOndoaXRlOyIvPiA8cmVjdCBmaWxsPSJub25lIiB3aWR0aD0iMjQiIGhlaWdodD0iMjQiLz4gPC9nPiA8L2c+IDxnIGlkPSJHcmlkIiBkaXNwbGF5PSJub25lIj4gPGcgZGlzcGxheT0iaW5saW5lIj4gPC9nPiA8L2c+IDwvc3ZnPg0K)}[dir=rtl] md-tabs-wrapper md-next-button{right:auto;left:0}md-tabs-wrapper md-next-button md-icon{transform:translate3d(-50%,-50%,0) rotate(180deg)}md-tabs-wrapper.md-stretch-tabs md-pagination-wrapper{width:100%;display:flex;flex-direction:row}md-tabs-wrapper.md-stretch-tabs md-pagination-wrapper md-tab-item{flex-grow:1}md-tabs-canvas{position:relative;overflow:hidden;display:block;height:48px}md-tabs-canvas:after{content:'';display:table;clear:both}md-tabs-canvas .md-dummy-wrapper{position:absolute;top:0;left:0}[dir=rtl] md-tabs-canvas .md-dummy-wrapper{left:auto;right:0}md-tabs-canvas.md-paginated{margin:0 32px}md-tabs-canvas.md-center-tabs{display:flex;flex-direction:column;text-align:center}md-tabs-canvas.md-center-tabs .md-tab{float:none;display:inline-block}md-pagination-wrapper{height:48px;display:block;transition:transform .5s cubic-bezier(.35,0,.25,1);position:absolute;width:999999px;left:0;transform:translate3d(0,0,0)}md-pagination-wrapper:after{content:'';display:table;clear:both}[dir=rtl] md-pagination-wrapper{left:auto;right:0}md-pagination-wrapper.md-center-tabs{position:relative;width:auto;margin:0 auto}md-tabs-content-wrapper{display:block;position:absolute;top:48px;left:0;right:0;bottom:0;overflow:hidden}md-tab-content{display:block;position:absolute;top:0;left:0;right:0;bottom:0;transition:transform .5s cubic-bezier(.35,0,.25,1);overflow:auto;transform:translate3d(0,0,0)}md-tab-content.md-no-scroll{bottom:auto;overflow:hidden}md-tab-content.md-no-transition,md-tab-content.ng-leave{transition:none}md-tab-content.md-left:not(.md-active){transform:translateX(-100%);animation:1s md-tab-content-hide;opacity:0}[dir=rtl] md-tab-content.md-left:not(.md-active){transform:translateX(100%)}md-tab-content.md-left:not(.md-active) *{transition:visibility 0s linear;transition-delay:.5s;visibility:hidden}md-tab-content.md-right:not(.md-active){transform:translateX(100%);animation:1s md-tab-content-hide;opacity:0}[dir=rtl] md-tab-content.md-right:not(.md-active){transform:translateX(-100%)}md-tab-content.md-right:not(.md-active) *{transition:visibility 0s linear;transition-delay:.5s;visibility:hidden}md-tab-content>div.ng-leave{animation:1s md-tab-content-hide}md-ink-bar{position:absolute;left:auto;right:auto;bottom:0;height:2px}md-ink-bar.md-left{transition:left 125ms cubic-bezier(.35,0,.25,1),right .25s cubic-bezier(.35,0,.25,1)}md-ink-bar.md-right{transition:left .25s cubic-bezier(.35,0,.25,1),right 125ms cubic-bezier(.35,0,.25,1)}md-tab{position:absolute;z-index:-1;left:-9999px}.md-tab{font-size:14px;text-align:center;line-height:24px;padding:12px 24px;transition:background-color .35s cubic-bezier(.35,0,.25,1);cursor:pointer;white-space:nowrap;position:relative;text-transform:uppercase;float:left;font-weight:500;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}[dir=rtl] .md-tab{float:right}.md-tab.md-focused{box-shadow:none;outline:0}.md-tab.md-active{cursor:default}.md-tab.md-disabled{pointer-events:none;touch-action:pan-y;user-select:none;-webkit-user-drag:none;opacity:.5;cursor:default}.md-tab.ng-leave{transition:none}md-toolbar+md-tabs{border-top-left-radius:0;border-top-right-radius:0}.md-toast-text{padding:0 6px}md-toast{position:absolute;z-index:105;box-sizing:border-box;cursor:default;overflow:hidden;padding:8px;opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1)}md-toast .md-toast-content{display:flex;direction:row;align-items:center;max-height:168px;max-width:100%;min-height:48px;padding:0 18px;box-shadow:0 2px 5px 0 rgba(0,0,0,.26);border-radius:2px;font-size:14px;overflow:hidden;transform:translate3d(0,0,0) rotateZ(0);transition:all .4s cubic-bezier(.25,.8,.25,1);justify-content:flex-start}md-toast .md-toast-content::before{content:'';min-height:48px;visibility:hidden;display:inline-block}[dir=rtl] md-toast .md-toast-content{justify-content:flex-end}md-toast .md-toast-content span{flex:1 1 0%;box-sizing:border-box;min-width:0}md-toast.md-capsule{border-radius:24px}md-toast.md-capsule .md-toast-content{border-radius:24px}md-toast.ng-leave-active .md-toast-content{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-toast.md-swipedown .md-toast-content,md-toast.md-swipeleft .md-toast-content,md-toast.md-swiperight .md-toast-content,md-toast.md-swipeup .md-toast-content{transition:all .4s cubic-bezier(.25,.8,.25,1)}md-toast.ng-enter{opacity:0}md-toast.ng-enter .md-toast-content{transform:translate3d(0,100%,0)}md-toast.ng-enter.md-top .md-toast-content{transform:translate3d(0,-100%,0)}md-toast.ng-enter.ng-enter-active{opacity:1}md-toast.ng-enter.ng-enter-active .md-toast-content{transform:translate3d(0,0,0)}md-toast.ng-leave.ng-leave-active .md-toast-content{opacity:0;transform:translate3d(0,100%,0)}md-toast.ng-leave.ng-leave-active.md-swipeup .md-toast-content{transform:translate3d(0,-50%,0)}md-toast.ng-leave.ng-leave-active.md-swipedown .md-toast-content{transform:translate3d(0,50%,0)}md-toast.ng-leave.ng-leave-active.md-top .md-toast-content{transform:translate3d(0,-100%,0)}md-toast .md-action{line-height:19px;margin-left:24px;margin-right:0;cursor:pointer;text-transform:uppercase;float:right}md-toast .md-button{min-width:0;margin-right:0;margin-left:12px}[dir=rtl] md-toast .md-button{margin-right:12px}[dir=rtl] md-toast .md-button{margin-left:0}@media (max-width:959px){md-toast{left:0;right:0;width:100%;max-width:100%;min-width:0;border-radius:0;bottom:0;padding:0}md-toast.ng-leave.ng-leave-active.md-swipeup .md-toast-content{transform:translate3d(0,-50%,0)}md-toast.ng-leave.ng-leave-active.md-swipedown .md-toast-content{transform:translate3d(0,50%,0)}}@media (min-width:960px){md-toast{min-width:304px}md-toast.md-bottom{bottom:0}md-toast.md-left{left:0}md-toast.md-right{right:0}md-toast.md-top{top:0}md-toast._md-start{left:0}[dir=rtl] md-toast._md-start{left:auto;right:0}md-toast._md-end{right:0}[dir=rtl] md-toast._md-end{right:auto;left:0}md-toast.ng-leave.ng-leave-active.md-swipeleft .md-toast-content{transform:translate3d(-50%,0,0)}md-toast.ng-leave.ng-leave-active.md-swiperight .md-toast-content{transform:translate3d(50%,0,0)}}@media (min-width:1920px){md-toast .md-toast-content{max-width:568px}}@media screen and (-ms-high-contrast:active){md-toast{border:1px solid #fff}}.md-toast-animating{overflow:hidden!important}md-toolbar{box-sizing:border-box;display:flex;flex-direction:column;position:relative;z-index:2;font-size:20px;min-height:64px;width:100%}md-toolbar._md-toolbar-transitions{transition-duration:.5s;transition-timing-function:cubic-bezier(.35,0,.25,1);transition-property:background-color,fill,color}md-toolbar.md-whiteframe-z1-add,md-toolbar.md-whiteframe-z1-remove{transition:box-shadow .5s linear}md-toolbar md-toolbar-filler{width:72px}md-toolbar *,md-toolbar :after,md-toolbar :before{box-sizing:border-box}md-toolbar.ng-animate{transition:none}md-toolbar.md-tall{height:128px;min-height:128px;max-height:128px}md-toolbar.md-medium-tall{height:88px;min-height:88px;max-height:88px}md-toolbar.md-medium-tall .md-toolbar-tools{height:48px;min-height:48px;max-height:48px}md-toolbar>.md-indent{margin-left:64px}[dir=rtl] md-toolbar>.md-indent{margin-left:auto;margin-right:64px}md-toolbar~md-content>md-list{padding:0}md-toolbar~md-content>md-list md-list-item:last-child md-divider{display:none}.md-toolbar-tools{font-size:20px;letter-spacing:.005em;box-sizing:border-box;font-weight:400;display:flex;align-items:center;flex-direction:row;width:100%;height:64px;max-height:64px;padding:0 16px;margin:0}.md-toolbar-tools h1,.md-toolbar-tools h2,.md-toolbar-tools h3{font-size:inherit;font-weight:inherit;margin:inherit}.md-toolbar-tools a{color:inherit;text-decoration:none}.md-toolbar-tools .fill-height{display:flex;align-items:center}.md-toolbar-tools .md-button{margin-top:0;margin-bottom:0}.md-toolbar-tools .md-button,.md-toolbar-tools .md-button.md-icon-button md-icon{transition-duration:.5s;transition-timing-function:cubic-bezier(.35,0,.25,1);transition-property:background-color,fill,color}.md-toolbar-tools .md-button.md-icon-button md-icon.ng-animate,.md-toolbar-tools .md-button.ng-animate{transition:none}.md-toolbar-tools>.md-button:first-child{margin-left:-8px}[dir=rtl] .md-toolbar-tools>.md-button:first-child{margin-left:auto;margin-right:-8px}.md-toolbar-tools>.md-button:last-child{margin-right:-8px}[dir=rtl] .md-toolbar-tools>.md-button:last-child{margin-right:auto;margin-left:-8px}.md-toolbar-tools>md-menu:last-child{margin-right:-8px}[dir=rtl] .md-toolbar-tools>md-menu:last-child{margin-right:auto;margin-left:-8px}.md-toolbar-tools>md-menu:last-child>.md-button{margin-right:0}[dir=rtl] .md-toolbar-tools>md-menu:last-child>.md-button{margin-right:auto;margin-left:0}@media screen and (-ms-high-contrast:active){.md-toolbar-tools{border-bottom:1px solid #fff}}@media (min-width:0) and (max-width:959px) and (orientation:portrait){md-toolbar{min-height:56px}.md-toolbar-tools{height:56px;max-height:56px}}@media (min-width:0) and (max-width:959px) and (orientation:landscape){md-toolbar{min-height:48px}.md-toolbar-tools{height:48px;max-height:48px}}md-tooltip{position:absolute;z-index:100;overflow:hidden;pointer-events:none;border-radius:4px;font-weight:500;font-size:14px}@media (min-width:960px){md-tooltip{font-size:10px}}md-tooltip .md-content{position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform-origin:center top;transform:scale(0);opacity:0;height:32px;line-height:32px;padding-left:16px;padding-right:16px}@media (min-width:960px){md-tooltip .md-content{height:22px;line-height:22px;padding-left:8px;padding-right:8px}}md-tooltip .md-content.md-show-add{transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.2s;transform:scale(0);opacity:0}md-tooltip .md-content.md-show,md-tooltip .md-content.md-show-add-active{transform:scale(1);opacity:.9;transform-origin:center top}md-tooltip .md-content.md-show-remove{transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.2s}md-tooltip .md-content.md-show-remove.md-show-remove-active{transform:scale(0);opacity:0}md-tooltip.md-hide{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-tooltip.md-show{transition:all .4s cubic-bezier(.25,.8,.25,1);pointer-events:auto}.md-virtual-repeat-container{box-sizing:border-box;display:block;margin:0;overflow:hidden;padding:0;position:relative}.md-virtual-repeat-container .md-virtual-repeat-scroller{bottom:0;box-sizing:border-box;left:0;margin:0;overflow-x:hidden;padding:0;position:absolute;right:0;top:0;-webkit-overflow-scrolling:touch}.md-virtual-repeat-container .md-virtual-repeat-sizer{box-sizing:border-box;height:1px;display:block;margin:0;padding:0;width:1px}.md-virtual-repeat-container .md-virtual-repeat-offsetter{box-sizing:border-box;left:0;margin:0;padding:0;position:absolute;right:0;top:0}.md-virtual-repeat-container.md-orient-horizontal .md-virtual-repeat-scroller{overflow-x:auto;overflow-y:hidden}.md-virtual-repeat-container.md-orient-horizontal .md-virtual-repeat-offsetter{bottom:16px;right:auto;white-space:nowrap}[dir=rtl] .md-virtual-repeat-container.md-orient-horizontal .md-virtual-repeat-offsetter{right:auto;left:auto}.md-whiteframe-1dp,.md-whiteframe-z1{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.md-whiteframe-2dp{box-shadow:0 1px 5px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-whiteframe-3dp{box-shadow:0 1px 8px 0 rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.md-whiteframe-4dp,.md-whiteframe-z2{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.md-whiteframe-5dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)}.md-whiteframe-6dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.md-whiteframe-7dp,.md-whiteframe-z3{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-whiteframe-8dp{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-whiteframe-9dp{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-whiteframe-10dp,.md-whiteframe-z4{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-whiteframe-11dp{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-whiteframe-12dp{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-whiteframe-13dp,.md-whiteframe-z5{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-whiteframe-14dp{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-whiteframe-15dp{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-whiteframe-16dp{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-whiteframe-17dp{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-whiteframe-18dp{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-whiteframe-19dp{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-whiteframe-20dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-whiteframe-21dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-whiteframe-22dp{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-whiteframe-23dp{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-whiteframe-24dp{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}@media screen and (-ms-high-contrast:active){md-whiteframe{border:1px solid #fff}}@media print{[md-whiteframe],md-whiteframe{background-color:#fff}}.ng-cloak,.x-ng-cloak,[data-ng-cloak],[ng-cloak],[ng\:cloak],[x-ng-cloak]{display:none!important}@-moz-document url-prefix(){.layout-fill{margin:0;width:100%;min-height:100%;height:100%}}.flex-order{order:0}.flex-order--20{order:-20}.flex-order--19{order:-19}.flex-order--18{order:-18}.flex-order--17{order:-17}.flex-order--16{order:-16}.flex-order--15{order:-15}.flex-order--14{order:-14}.flex-order--13{order:-13}.flex-order--12{order:-12}.flex-order--11{order:-11}.flex-order--10{order:-10}.flex-order--9{order:-9}.flex-order--8{order:-8}.flex-order--7{order:-7}.flex-order--6{order:-6}.flex-order--5{order:-5}.flex-order--4{order:-4}.flex-order--3{order:-3}.flex-order--2{order:-2}.flex-order--1{order:-1}.flex-order-0{order:0}.flex-order-1{order:1}.flex-order-2{order:2}.flex-order-3{order:3}.flex-order-4{order:4}.flex-order-5{order:5}.flex-order-6{order:6}.flex-order-7{order:7}.flex-order-8{order:8}.flex-order-9{order:9}.flex-order-10{order:10}.flex-order-11{order:11}.flex-order-12{order:12}.flex-order-13{order:13}.flex-order-14{order:14}.flex-order-15{order:15}.flex-order-16{order:16}.flex-order-17{order:17}.flex-order-18{order:18}.flex-order-19{order:19}.flex-order-20{order:20}.flex-offset-0,.offset-0{margin-left:0}[dir=rtl] .flex-offset-0,[dir=rtl] .offset-0{margin-left:auto;margin-right:0}.flex-offset-5,.offset-5{margin-left:5%}[dir=rtl] .flex-offset-5,[dir=rtl] .offset-5{margin-left:auto;margin-right:5%}.flex-offset-10,.offset-10{margin-left:10%}[dir=rtl] .flex-offset-10,[dir=rtl] .offset-10{margin-left:auto;margin-right:10%}.flex-offset-15,.offset-15{margin-left:15%}[dir=rtl] .flex-offset-15,[dir=rtl] .offset-15{margin-left:auto;margin-right:15%}.flex-offset-20,.offset-20{margin-left:20%}[dir=rtl] .flex-offset-20,[dir=rtl] .offset-20{margin-left:auto;margin-right:20%}.flex-offset-25,.offset-25{margin-left:25%}[dir=rtl] .flex-offset-25,[dir=rtl] .offset-25{margin-left:auto;margin-right:25%}.flex-offset-30,.offset-30{margin-left:30%}[dir=rtl] .flex-offset-30,[dir=rtl] .offset-30{margin-left:auto;margin-right:30%}.flex-offset-35,.offset-35{margin-left:35%}[dir=rtl] .flex-offset-35,[dir=rtl] .offset-35{margin-left:auto;margin-right:35%}.flex-offset-40,.offset-40{margin-left:40%}[dir=rtl] .flex-offset-40,[dir=rtl] .offset-40{margin-left:auto;margin-right:40%}.flex-offset-45,.offset-45{margin-left:45%}[dir=rtl] .flex-offset-45,[dir=rtl] .offset-45{margin-left:auto;margin-right:45%}.flex-offset-50,.offset-50{margin-left:50%}[dir=rtl] .flex-offset-50,[dir=rtl] .offset-50{margin-left:auto;margin-right:50%}.flex-offset-55,.offset-55{margin-left:55%}[dir=rtl] .flex-offset-55,[dir=rtl] .offset-55{margin-left:auto;margin-right:55%}.flex-offset-60,.offset-60{margin-left:60%}[dir=rtl] .flex-offset-60,[dir=rtl] .offset-60{margin-left:auto;margin-right:60%}.flex-offset-65,.offset-65{margin-left:65%}[dir=rtl] .flex-offset-65,[dir=rtl] .offset-65{margin-left:auto;margin-right:65%}.flex-offset-70,.offset-70{margin-left:70%}[dir=rtl] .flex-offset-70,[dir=rtl] .offset-70{margin-left:auto;margin-right:70%}.flex-offset-75,.offset-75{margin-left:75%}[dir=rtl] .flex-offset-75,[dir=rtl] .offset-75{margin-left:auto;margin-right:75%}.flex-offset-80,.offset-80{margin-left:80%}[dir=rtl] .flex-offset-80,[dir=rtl] .offset-80{margin-left:auto;margin-right:80%}.flex-offset-85,.offset-85{margin-left:85%}[dir=rtl] .flex-offset-85,[dir=rtl] .offset-85{margin-left:auto;margin-right:85%}.flex-offset-90,.offset-90{margin-left:90%}[dir=rtl] .flex-offset-90,[dir=rtl] .offset-90{margin-left:auto;margin-right:90%}.flex-offset-95,.offset-95{margin-left:95%}[dir=rtl] .flex-offset-95,[dir=rtl] .offset-95{margin-left:auto;margin-right:95%}.flex-offset-33,.offset-33{margin-left:calc(100% / 3)}.flex-offset-66,.offset-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-66,[dir=rtl] .offset-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align,.layout-align-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-start,.layout-align-start-center,.layout-align-start-end,.layout-align-start-start,.layout-align-start-stretch{justify-content:flex-start}.layout-align-center,.layout-align-center-center,.layout-align-center-end,.layout-align-center-start,.layout-align-center-stretch{justify-content:center}.layout-align-end,.layout-align-end-center,.layout-align-end-end,.layout-align-end-start,.layout-align-end-stretch{justify-content:flex-end}.layout-align-space-around,.layout-align-space-around-center,.layout-align-space-around-end,.layout-align-space-around-start,.layout-align-space-around-stretch{justify-content:space-around}.layout-align-space-between,.layout-align-space-between-center,.layout-align-space-between-end,.layout-align-space-between-start,.layout-align-space-between-stretch{justify-content:space-between}.layout-align-center-start,.layout-align-end-start,.layout-align-space-around-start,.layout-align-space-between-start,.layout-align-start-start{align-items:flex-start;align-content:flex-start}.layout-align-center-center,.layout-align-end-center,.layout-align-space-around-center,.layout-align-space-between-center,.layout-align-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-center-center>*,.layout-align-end-center>*,.layout-align-space-around-center>*,.layout-align-space-between-center>*,.layout-align-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-center-end,.layout-align-end-end,.layout-align-space-around-end,.layout-align-space-between-end,.layout-align-start-end{align-items:flex-end;align-content:flex-end}.layout-align-center-stretch,.layout-align-end-stretch,.layout-align-space-around-stretch,.layout-align-space-between-stretch,.layout-align-start-stretch{align-items:stretch;align-content:stretch}.flex{flex:1;box-sizing:border-box}.flex-grow{flex:1 1 100%;box-sizing:border-box}.flex-initial{flex:0 1 auto;box-sizing:border-box}.flex-auto{flex:1 1 auto;box-sizing:border-box}.flex-none{flex:0 0 auto;box-sizing:border-box}.flex-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-row>.flex{min-width:0}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-column>.flex{min-height:0}.layout,.layout-column,.layout-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-column{flex-direction:column}.layout-row{flex-direction:row}.layout-padding-sm>*,.layout-padding>.flex-sm{padding:4px}.layout-padding,.layout-padding-gt-sm,.layout-padding-gt-sm>*,.layout-padding-md,.layout-padding-md>*,.layout-padding>*,.layout-padding>.flex,.layout-padding>.flex-gt-sm,.layout-padding>.flex-md{padding:8px}.layout-padding-gt-lg>*,.layout-padding-gt-md>*,.layout-padding-lg>*,.layout-padding>.flex-gt-lg,.layout-padding>.flex-gt-md,.layout-padding>.flex-lg{padding:16px}.layout-margin-sm>*,.layout-margin>.flex-sm{margin:4px}.layout-margin,.layout-margin-gt-sm,.layout-margin-gt-sm>*,.layout-margin-md,.layout-margin-md>*,.layout-margin>*,.layout-margin>.flex,.layout-margin>.flex-gt-sm,.layout-margin>.flex-md{margin:8px}.layout-margin-gt-lg>*,.layout-margin-gt-md>*,.layout-margin-lg>*,.layout-margin>.flex-gt-lg,.layout-margin>.flex-gt-md,.layout-margin>.flex-lg{margin:16px}.layout-wrap{flex-wrap:wrap}.layout-nowrap{flex-wrap:nowrap}.layout-fill{margin:0;width:100%;min-height:100%;height:100%}@media (max-width:599px){.hide-xs:not(.show-xs):not(.show),.hide:not(.show-xs):not(.show){display:none}.flex-order-xs--20{order:-20}.flex-order-xs--19{order:-19}.flex-order-xs--18{order:-18}.flex-order-xs--17{order:-17}.flex-order-xs--16{order:-16}.flex-order-xs--15{order:-15}.flex-order-xs--14{order:-14}.flex-order-xs--13{order:-13}.flex-order-xs--12{order:-12}.flex-order-xs--11{order:-11}.flex-order-xs--10{order:-10}.flex-order-xs--9{order:-9}.flex-order-xs--8{order:-8}.flex-order-xs--7{order:-7}.flex-order-xs--6{order:-6}.flex-order-xs--5{order:-5}.flex-order-xs--4{order:-4}.flex-order-xs--3{order:-3}.flex-order-xs--2{order:-2}.flex-order-xs--1{order:-1}.flex-order-xs-0{order:0}.flex-order-xs-1{order:1}.flex-order-xs-2{order:2}.flex-order-xs-3{order:3}.flex-order-xs-4{order:4}.flex-order-xs-5{order:5}.flex-order-xs-6{order:6}.flex-order-xs-7{order:7}.flex-order-xs-8{order:8}.flex-order-xs-9{order:9}.flex-order-xs-10{order:10}.flex-order-xs-11{order:11}.flex-order-xs-12{order:12}.flex-order-xs-13{order:13}.flex-order-xs-14{order:14}.flex-order-xs-15{order:15}.flex-order-xs-16{order:16}.flex-order-xs-17{order:17}.flex-order-xs-18{order:18}.flex-order-xs-19{order:19}.flex-order-xs-20{order:20}.flex-offset-xs-0,.offset-xs-0{margin-left:0}[dir=rtl] .flex-offset-xs-0,[dir=rtl] .offset-xs-0{margin-left:auto;margin-right:0}.flex-offset-xs-5,.offset-xs-5{margin-left:5%}[dir=rtl] .flex-offset-xs-5,[dir=rtl] .offset-xs-5{margin-left:auto;margin-right:5%}.flex-offset-xs-10,.offset-xs-10{margin-left:10%}[dir=rtl] .flex-offset-xs-10,[dir=rtl] .offset-xs-10{margin-left:auto;margin-right:10%}.flex-offset-xs-15,.offset-xs-15{margin-left:15%}[dir=rtl] .flex-offset-xs-15,[dir=rtl] .offset-xs-15{margin-left:auto;margin-right:15%}.flex-offset-xs-20,.offset-xs-20{margin-left:20%}[dir=rtl] .flex-offset-xs-20,[dir=rtl] .offset-xs-20{margin-left:auto;margin-right:20%}.flex-offset-xs-25,.offset-xs-25{margin-left:25%}[dir=rtl] .flex-offset-xs-25,[dir=rtl] .offset-xs-25{margin-left:auto;margin-right:25%}.flex-offset-xs-30,.offset-xs-30{margin-left:30%}[dir=rtl] .flex-offset-xs-30,[dir=rtl] .offset-xs-30{margin-left:auto;margin-right:30%}.flex-offset-xs-35,.offset-xs-35{margin-left:35%}[dir=rtl] .flex-offset-xs-35,[dir=rtl] .offset-xs-35{margin-left:auto;margin-right:35%}.flex-offset-xs-40,.offset-xs-40{margin-left:40%}[dir=rtl] .flex-offset-xs-40,[dir=rtl] .offset-xs-40{margin-left:auto;margin-right:40%}.flex-offset-xs-45,.offset-xs-45{margin-left:45%}[dir=rtl] .flex-offset-xs-45,[dir=rtl] .offset-xs-45{margin-left:auto;margin-right:45%}.flex-offset-xs-50,.offset-xs-50{margin-left:50%}[dir=rtl] .flex-offset-xs-50,[dir=rtl] .offset-xs-50{margin-left:auto;margin-right:50%}.flex-offset-xs-55,.offset-xs-55{margin-left:55%}[dir=rtl] .flex-offset-xs-55,[dir=rtl] .offset-xs-55{margin-left:auto;margin-right:55%}.flex-offset-xs-60,.offset-xs-60{margin-left:60%}[dir=rtl] .flex-offset-xs-60,[dir=rtl] .offset-xs-60{margin-left:auto;margin-right:60%}.flex-offset-xs-65,.offset-xs-65{margin-left:65%}[dir=rtl] .flex-offset-xs-65,[dir=rtl] .offset-xs-65{margin-left:auto;margin-right:65%}.flex-offset-xs-70,.offset-xs-70{margin-left:70%}[dir=rtl] .flex-offset-xs-70,[dir=rtl] .offset-xs-70{margin-left:auto;margin-right:70%}.flex-offset-xs-75,.offset-xs-75{margin-left:75%}[dir=rtl] .flex-offset-xs-75,[dir=rtl] .offset-xs-75{margin-left:auto;margin-right:75%}.flex-offset-xs-80,.offset-xs-80{margin-left:80%}[dir=rtl] .flex-offset-xs-80,[dir=rtl] .offset-xs-80{margin-left:auto;margin-right:80%}.flex-offset-xs-85,.offset-xs-85{margin-left:85%}[dir=rtl] .flex-offset-xs-85,[dir=rtl] .offset-xs-85{margin-left:auto;margin-right:85%}.flex-offset-xs-90,.offset-xs-90{margin-left:90%}[dir=rtl] .flex-offset-xs-90,[dir=rtl] .offset-xs-90{margin-left:auto;margin-right:90%}.flex-offset-xs-95,.offset-xs-95{margin-left:95%}[dir=rtl] .flex-offset-xs-95,[dir=rtl] .offset-xs-95{margin-left:auto;margin-right:95%}.flex-offset-xs-33,.offset-xs-33{margin-left:calc(100% / 3)}.flex-offset-xs-66,.offset-xs-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-xs-66,[dir=rtl] .offset-xs-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-xs,.layout-align-xs-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-xs-start,.layout-align-xs-start-center,.layout-align-xs-start-end,.layout-align-xs-start-start,.layout-align-xs-start-stretch{justify-content:flex-start}.layout-align-xs-center,.layout-align-xs-center-center,.layout-align-xs-center-end,.layout-align-xs-center-start,.layout-align-xs-center-stretch{justify-content:center}.layout-align-xs-end,.layout-align-xs-end-center,.layout-align-xs-end-end,.layout-align-xs-end-start,.layout-align-xs-end-stretch{justify-content:flex-end}.layout-align-xs-space-around,.layout-align-xs-space-around-center,.layout-align-xs-space-around-end,.layout-align-xs-space-around-start,.layout-align-xs-space-around-stretch{justify-content:space-around}.layout-align-xs-space-between,.layout-align-xs-space-between-center,.layout-align-xs-space-between-end,.layout-align-xs-space-between-start,.layout-align-xs-space-between-stretch{justify-content:space-between}.layout-align-xs-center-start,.layout-align-xs-end-start,.layout-align-xs-space-around-start,.layout-align-xs-space-between-start,.layout-align-xs-start-start{align-items:flex-start;align-content:flex-start}.layout-align-xs-center-center,.layout-align-xs-end-center,.layout-align-xs-space-around-center,.layout-align-xs-space-between-center,.layout-align-xs-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-xs-center-center>*,.layout-align-xs-end-center>*,.layout-align-xs-space-around-center>*,.layout-align-xs-space-between-center>*,.layout-align-xs-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-xs-center-end,.layout-align-xs-end-end,.layout-align-xs-space-around-end,.layout-align-xs-space-between-end,.layout-align-xs-start-end{align-items:flex-end;align-content:flex-end}.layout-align-xs-center-stretch,.layout-align-xs-end-stretch,.layout-align-xs-space-around-stretch,.layout-align-xs-space-between-stretch,.layout-align-xs-start-stretch{align-items:stretch;align-content:stretch}.flex-xs{flex:1;box-sizing:border-box}.flex-xs-grow{flex:1 1 100%;box-sizing:border-box}.flex-xs-initial{flex:0 1 auto;box-sizing:border-box}.flex-xs-auto{flex:1 1 auto;box-sizing:border-box}.flex-xs-none{flex:0 0 auto;box-sizing:border-box}.flex-xs-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-xs-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-xs-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-xs-column>.flex-xs-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-xs-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-xs-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-xs-row>.flex{min-width:0}.layout-xs-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-xs-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-column>.flex{min-height:0}.layout-xs,.layout-xs-column,.layout-xs-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-xs-column{flex-direction:column}.layout-xs-row{flex-direction:row}}@media (min-width:600px){.flex-order-gt-xs--20{order:-20}.flex-order-gt-xs--19{order:-19}.flex-order-gt-xs--18{order:-18}.flex-order-gt-xs--17{order:-17}.flex-order-gt-xs--16{order:-16}.flex-order-gt-xs--15{order:-15}.flex-order-gt-xs--14{order:-14}.flex-order-gt-xs--13{order:-13}.flex-order-gt-xs--12{order:-12}.flex-order-gt-xs--11{order:-11}.flex-order-gt-xs--10{order:-10}.flex-order-gt-xs--9{order:-9}.flex-order-gt-xs--8{order:-8}.flex-order-gt-xs--7{order:-7}.flex-order-gt-xs--6{order:-6}.flex-order-gt-xs--5{order:-5}.flex-order-gt-xs--4{order:-4}.flex-order-gt-xs--3{order:-3}.flex-order-gt-xs--2{order:-2}.flex-order-gt-xs--1{order:-1}.flex-order-gt-xs-0{order:0}.flex-order-gt-xs-1{order:1}.flex-order-gt-xs-2{order:2}.flex-order-gt-xs-3{order:3}.flex-order-gt-xs-4{order:4}.flex-order-gt-xs-5{order:5}.flex-order-gt-xs-6{order:6}.flex-order-gt-xs-7{order:7}.flex-order-gt-xs-8{order:8}.flex-order-gt-xs-9{order:9}.flex-order-gt-xs-10{order:10}.flex-order-gt-xs-11{order:11}.flex-order-gt-xs-12{order:12}.flex-order-gt-xs-13{order:13}.flex-order-gt-xs-14{order:14}.flex-order-gt-xs-15{order:15}.flex-order-gt-xs-16{order:16}.flex-order-gt-xs-17{order:17}.flex-order-gt-xs-18{order:18}.flex-order-gt-xs-19{order:19}.flex-order-gt-xs-20{order:20}.flex-offset-gt-xs-0,.offset-gt-xs-0{margin-left:0}[dir=rtl] .flex-offset-gt-xs-0,[dir=rtl] .offset-gt-xs-0{margin-left:auto;margin-right:0}.flex-offset-gt-xs-5,.offset-gt-xs-5{margin-left:5%}[dir=rtl] .flex-offset-gt-xs-5,[dir=rtl] .offset-gt-xs-5{margin-left:auto;margin-right:5%}.flex-offset-gt-xs-10,.offset-gt-xs-10{margin-left:10%}[dir=rtl] .flex-offset-gt-xs-10,[dir=rtl] .offset-gt-xs-10{margin-left:auto;margin-right:10%}.flex-offset-gt-xs-15,.offset-gt-xs-15{margin-left:15%}[dir=rtl] .flex-offset-gt-xs-15,[dir=rtl] .offset-gt-xs-15{margin-left:auto;margin-right:15%}.flex-offset-gt-xs-20,.offset-gt-xs-20{margin-left:20%}[dir=rtl] .flex-offset-gt-xs-20,[dir=rtl] .offset-gt-xs-20{margin-left:auto;margin-right:20%}.flex-offset-gt-xs-25,.offset-gt-xs-25{margin-left:25%}[dir=rtl] .flex-offset-gt-xs-25,[dir=rtl] .offset-gt-xs-25{margin-left:auto;margin-right:25%}.flex-offset-gt-xs-30,.offset-gt-xs-30{margin-left:30%}[dir=rtl] .flex-offset-gt-xs-30,[dir=rtl] .offset-gt-xs-30{margin-left:auto;margin-right:30%}.flex-offset-gt-xs-35,.offset-gt-xs-35{margin-left:35%}[dir=rtl] .flex-offset-gt-xs-35,[dir=rtl] .offset-gt-xs-35{margin-left:auto;margin-right:35%}.flex-offset-gt-xs-40,.offset-gt-xs-40{margin-left:40%}[dir=rtl] .flex-offset-gt-xs-40,[dir=rtl] .offset-gt-xs-40{margin-left:auto;margin-right:40%}.flex-offset-gt-xs-45,.offset-gt-xs-45{margin-left:45%}[dir=rtl] .flex-offset-gt-xs-45,[dir=rtl] .offset-gt-xs-45{margin-left:auto;margin-right:45%}.flex-offset-gt-xs-50,.offset-gt-xs-50{margin-left:50%}[dir=rtl] .flex-offset-gt-xs-50,[dir=rtl] .offset-gt-xs-50{margin-left:auto;margin-right:50%}.flex-offset-gt-xs-55,.offset-gt-xs-55{margin-left:55%}[dir=rtl] .flex-offset-gt-xs-55,[dir=rtl] .offset-gt-xs-55{margin-left:auto;margin-right:55%}.flex-offset-gt-xs-60,.offset-gt-xs-60{margin-left:60%}[dir=rtl] .flex-offset-gt-xs-60,[dir=rtl] .offset-gt-xs-60{margin-left:auto;margin-right:60%}.flex-offset-gt-xs-65,.offset-gt-xs-65{margin-left:65%}[dir=rtl] .flex-offset-gt-xs-65,[dir=rtl] .offset-gt-xs-65{margin-left:auto;margin-right:65%}.flex-offset-gt-xs-70,.offset-gt-xs-70{margin-left:70%}[dir=rtl] .flex-offset-gt-xs-70,[dir=rtl] .offset-gt-xs-70{margin-left:auto;margin-right:70%}.flex-offset-gt-xs-75,.offset-gt-xs-75{margin-left:75%}[dir=rtl] .flex-offset-gt-xs-75,[dir=rtl] .offset-gt-xs-75{margin-left:auto;margin-right:75%}.flex-offset-gt-xs-80,.offset-gt-xs-80{margin-left:80%}[dir=rtl] .flex-offset-gt-xs-80,[dir=rtl] .offset-gt-xs-80{margin-left:auto;margin-right:80%}.flex-offset-gt-xs-85,.offset-gt-xs-85{margin-left:85%}[dir=rtl] .flex-offset-gt-xs-85,[dir=rtl] .offset-gt-xs-85{margin-left:auto;margin-right:85%}.flex-offset-gt-xs-90,.offset-gt-xs-90{margin-left:90%}[dir=rtl] .flex-offset-gt-xs-90,[dir=rtl] .offset-gt-xs-90{margin-left:auto;margin-right:90%}.flex-offset-gt-xs-95,.offset-gt-xs-95{margin-left:95%}[dir=rtl] .flex-offset-gt-xs-95,[dir=rtl] .offset-gt-xs-95{margin-left:auto;margin-right:95%}.flex-offset-gt-xs-33,.offset-gt-xs-33{margin-left:calc(100% / 3)}.flex-offset-gt-xs-66,.offset-gt-xs-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-gt-xs-66,[dir=rtl] .offset-gt-xs-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-gt-xs,.layout-align-gt-xs-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-gt-xs-start,.layout-align-gt-xs-start-center,.layout-align-gt-xs-start-end,.layout-align-gt-xs-start-start,.layout-align-gt-xs-start-stretch{justify-content:flex-start}.layout-align-gt-xs-center,.layout-align-gt-xs-center-center,.layout-align-gt-xs-center-end,.layout-align-gt-xs-center-start,.layout-align-gt-xs-center-stretch{justify-content:center}.layout-align-gt-xs-end,.layout-align-gt-xs-end-center,.layout-align-gt-xs-end-end,.layout-align-gt-xs-end-start,.layout-align-gt-xs-end-stretch{justify-content:flex-end}.layout-align-gt-xs-space-around,.layout-align-gt-xs-space-around-center,.layout-align-gt-xs-space-around-end,.layout-align-gt-xs-space-around-start,.layout-align-gt-xs-space-around-stretch{justify-content:space-around}.layout-align-gt-xs-space-between,.layout-align-gt-xs-space-between-center,.layout-align-gt-xs-space-between-end,.layout-align-gt-xs-space-between-start,.layout-align-gt-xs-space-between-stretch{justify-content:space-between}.layout-align-gt-xs-center-start,.layout-align-gt-xs-end-start,.layout-align-gt-xs-space-around-start,.layout-align-gt-xs-space-between-start,.layout-align-gt-xs-start-start{align-items:flex-start;align-content:flex-start}.layout-align-gt-xs-center-center,.layout-align-gt-xs-end-center,.layout-align-gt-xs-space-around-center,.layout-align-gt-xs-space-between-center,.layout-align-gt-xs-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-gt-xs-center-center>*,.layout-align-gt-xs-end-center>*,.layout-align-gt-xs-space-around-center>*,.layout-align-gt-xs-space-between-center>*,.layout-align-gt-xs-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-gt-xs-center-end,.layout-align-gt-xs-end-end,.layout-align-gt-xs-space-around-end,.layout-align-gt-xs-space-between-end,.layout-align-gt-xs-start-end{align-items:flex-end;align-content:flex-end}.layout-align-gt-xs-center-stretch,.layout-align-gt-xs-end-stretch,.layout-align-gt-xs-space-around-stretch,.layout-align-gt-xs-space-between-stretch,.layout-align-gt-xs-start-stretch{align-items:stretch;align-content:stretch}.flex-gt-xs{flex:1;box-sizing:border-box}.flex-gt-xs-grow{flex:1 1 100%;box-sizing:border-box}.flex-gt-xs-initial{flex:0 1 auto;box-sizing:border-box}.flex-gt-xs-auto{flex:1 1 auto;box-sizing:border-box}.flex-gt-xs-none{flex:0 0 auto;box-sizing:border-box}.flex-gt-xs-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-gt-xs-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-gt-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-gt-xs-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-gt-xs-column>.flex-gt-xs-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-gt-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-gt-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-gt-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-gt-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-gt-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-gt-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-gt-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-gt-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-gt-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-gt-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-gt-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-gt-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-gt-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-gt-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-gt-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-gt-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-gt-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-gt-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-gt-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-gt-xs-row>.flex{min-width:0}.layout-gt-xs-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-column>.flex{min-height:0}.layout-gt-xs,.layout-gt-xs-column,.layout-gt-xs-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-gt-xs-column{flex-direction:column}.layout-gt-xs-row{flex-direction:row}}@media (min-width:600px) and (max-width:959px){.hide-gt-xs:not(.show-gt-xs):not(.show-sm):not(.show),.hide:not(.show-gt-xs):not(.show-sm):not(.show){display:none}.hide-sm:not(.show-gt-xs):not(.show-sm):not(.show){display:none}.flex-order-sm--20{order:-20}.flex-order-sm--19{order:-19}.flex-order-sm--18{order:-18}.flex-order-sm--17{order:-17}.flex-order-sm--16{order:-16}.flex-order-sm--15{order:-15}.flex-order-sm--14{order:-14}.flex-order-sm--13{order:-13}.flex-order-sm--12{order:-12}.flex-order-sm--11{order:-11}.flex-order-sm--10{order:-10}.flex-order-sm--9{order:-9}.flex-order-sm--8{order:-8}.flex-order-sm--7{order:-7}.flex-order-sm--6{order:-6}.flex-order-sm--5{order:-5}.flex-order-sm--4{order:-4}.flex-order-sm--3{order:-3}.flex-order-sm--2{order:-2}.flex-order-sm--1{order:-1}.flex-order-sm-0{order:0}.flex-order-sm-1{order:1}.flex-order-sm-2{order:2}.flex-order-sm-3{order:3}.flex-order-sm-4{order:4}.flex-order-sm-5{order:5}.flex-order-sm-6{order:6}.flex-order-sm-7{order:7}.flex-order-sm-8{order:8}.flex-order-sm-9{order:9}.flex-order-sm-10{order:10}.flex-order-sm-11{order:11}.flex-order-sm-12{order:12}.flex-order-sm-13{order:13}.flex-order-sm-14{order:14}.flex-order-sm-15{order:15}.flex-order-sm-16{order:16}.flex-order-sm-17{order:17}.flex-order-sm-18{order:18}.flex-order-sm-19{order:19}.flex-order-sm-20{order:20}.flex-offset-sm-0,.offset-sm-0{margin-left:0}[dir=rtl] .flex-offset-sm-0,[dir=rtl] .offset-sm-0{margin-left:auto;margin-right:0}.flex-offset-sm-5,.offset-sm-5{margin-left:5%}[dir=rtl] .flex-offset-sm-5,[dir=rtl] .offset-sm-5{margin-left:auto;margin-right:5%}.flex-offset-sm-10,.offset-sm-10{margin-left:10%}[dir=rtl] .flex-offset-sm-10,[dir=rtl] .offset-sm-10{margin-left:auto;margin-right:10%}.flex-offset-sm-15,.offset-sm-15{margin-left:15%}[dir=rtl] .flex-offset-sm-15,[dir=rtl] .offset-sm-15{margin-left:auto;margin-right:15%}.flex-offset-sm-20,.offset-sm-20{margin-left:20%}[dir=rtl] .flex-offset-sm-20,[dir=rtl] .offset-sm-20{margin-left:auto;margin-right:20%}.flex-offset-sm-25,.offset-sm-25{margin-left:25%}[dir=rtl] .flex-offset-sm-25,[dir=rtl] .offset-sm-25{margin-left:auto;margin-right:25%}.flex-offset-sm-30,.offset-sm-30{margin-left:30%}[dir=rtl] .flex-offset-sm-30,[dir=rtl] .offset-sm-30{margin-left:auto;margin-right:30%}.flex-offset-sm-35,.offset-sm-35{margin-left:35%}[dir=rtl] .flex-offset-sm-35,[dir=rtl] .offset-sm-35{margin-left:auto;margin-right:35%}.flex-offset-sm-40,.offset-sm-40{margin-left:40%}[dir=rtl] .flex-offset-sm-40,[dir=rtl] .offset-sm-40{margin-left:auto;margin-right:40%}.flex-offset-sm-45,.offset-sm-45{margin-left:45%}[dir=rtl] .flex-offset-sm-45,[dir=rtl] .offset-sm-45{margin-left:auto;margin-right:45%}.flex-offset-sm-50,.offset-sm-50{margin-left:50%}[dir=rtl] .flex-offset-sm-50,[dir=rtl] .offset-sm-50{margin-left:auto;margin-right:50%}.flex-offset-sm-55,.offset-sm-55{margin-left:55%}[dir=rtl] .flex-offset-sm-55,[dir=rtl] .offset-sm-55{margin-left:auto;margin-right:55%}.flex-offset-sm-60,.offset-sm-60{margin-left:60%}[dir=rtl] .flex-offset-sm-60,[dir=rtl] .offset-sm-60{margin-left:auto;margin-right:60%}.flex-offset-sm-65,.offset-sm-65{margin-left:65%}[dir=rtl] .flex-offset-sm-65,[dir=rtl] .offset-sm-65{margin-left:auto;margin-right:65%}.flex-offset-sm-70,.offset-sm-70{margin-left:70%}[dir=rtl] .flex-offset-sm-70,[dir=rtl] .offset-sm-70{margin-left:auto;margin-right:70%}.flex-offset-sm-75,.offset-sm-75{margin-left:75%}[dir=rtl] .flex-offset-sm-75,[dir=rtl] .offset-sm-75{margin-left:auto;margin-right:75%}.flex-offset-sm-80,.offset-sm-80{margin-left:80%}[dir=rtl] .flex-offset-sm-80,[dir=rtl] .offset-sm-80{margin-left:auto;margin-right:80%}.flex-offset-sm-85,.offset-sm-85{margin-left:85%}[dir=rtl] .flex-offset-sm-85,[dir=rtl] .offset-sm-85{margin-left:auto;margin-right:85%}.flex-offset-sm-90,.offset-sm-90{margin-left:90%}[dir=rtl] .flex-offset-sm-90,[dir=rtl] .offset-sm-90{margin-left:auto;margin-right:90%}.flex-offset-sm-95,.offset-sm-95{margin-left:95%}[dir=rtl] .flex-offset-sm-95,[dir=rtl] .offset-sm-95{margin-left:auto;margin-right:95%}.flex-offset-sm-33,.offset-sm-33{margin-left:calc(100% / 3)}.flex-offset-sm-66,.offset-sm-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-sm-66,[dir=rtl] .offset-sm-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-sm,.layout-align-sm-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-sm-start,.layout-align-sm-start-center,.layout-align-sm-start-end,.layout-align-sm-start-start,.layout-align-sm-start-stretch{justify-content:flex-start}.layout-align-sm-center,.layout-align-sm-center-center,.layout-align-sm-center-end,.layout-align-sm-center-start,.layout-align-sm-center-stretch{justify-content:center}.layout-align-sm-end,.layout-align-sm-end-center,.layout-align-sm-end-end,.layout-align-sm-end-start,.layout-align-sm-end-stretch{justify-content:flex-end}.layout-align-sm-space-around,.layout-align-sm-space-around-center,.layout-align-sm-space-around-end,.layout-align-sm-space-around-start,.layout-align-sm-space-around-stretch{justify-content:space-around}.layout-align-sm-space-between,.layout-align-sm-space-between-center,.layout-align-sm-space-between-end,.layout-align-sm-space-between-start,.layout-align-sm-space-between-stretch{justify-content:space-between}.layout-align-sm-center-start,.layout-align-sm-end-start,.layout-align-sm-space-around-start,.layout-align-sm-space-between-start,.layout-align-sm-start-start{align-items:flex-start;align-content:flex-start}.layout-align-sm-center-center,.layout-align-sm-end-center,.layout-align-sm-space-around-center,.layout-align-sm-space-between-center,.layout-align-sm-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-sm-center-center>*,.layout-align-sm-end-center>*,.layout-align-sm-space-around-center>*,.layout-align-sm-space-between-center>*,.layout-align-sm-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-sm-center-end,.layout-align-sm-end-end,.layout-align-sm-space-around-end,.layout-align-sm-space-between-end,.layout-align-sm-start-end{align-items:flex-end;align-content:flex-end}.layout-align-sm-center-stretch,.layout-align-sm-end-stretch,.layout-align-sm-space-around-stretch,.layout-align-sm-space-between-stretch,.layout-align-sm-start-stretch{align-items:stretch;align-content:stretch}.flex-sm{flex:1;box-sizing:border-box}.flex-sm-grow{flex:1 1 100%;box-sizing:border-box}.flex-sm-initial{flex:0 1 auto;box-sizing:border-box}.flex-sm-auto{flex:1 1 auto;box-sizing:border-box}.flex-sm-none{flex:0 0 auto;box-sizing:border-box}.flex-sm-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-sm-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-sm-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-sm-column>.flex-sm-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-sm-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-sm-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-sm-row>.flex{min-width:0}.layout-sm-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-sm-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-column>.flex{min-height:0}.layout-sm,.layout-sm-column,.layout-sm-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-sm-column{flex-direction:column}.layout-sm-row{flex-direction:row}}@media (min-width:960px){.flex-order-gt-sm--20{order:-20}.flex-order-gt-sm--19{order:-19}.flex-order-gt-sm--18{order:-18}.flex-order-gt-sm--17{order:-17}.flex-order-gt-sm--16{order:-16}.flex-order-gt-sm--15{order:-15}.flex-order-gt-sm--14{order:-14}.flex-order-gt-sm--13{order:-13}.flex-order-gt-sm--12{order:-12}.flex-order-gt-sm--11{order:-11}.flex-order-gt-sm--10{order:-10}.flex-order-gt-sm--9{order:-9}.flex-order-gt-sm--8{order:-8}.flex-order-gt-sm--7{order:-7}.flex-order-gt-sm--6{order:-6}.flex-order-gt-sm--5{order:-5}.flex-order-gt-sm--4{order:-4}.flex-order-gt-sm--3{order:-3}.flex-order-gt-sm--2{order:-2}.flex-order-gt-sm--1{order:-1}.flex-order-gt-sm-0{order:0}.flex-order-gt-sm-1{order:1}.flex-order-gt-sm-2{order:2}.flex-order-gt-sm-3{order:3}.flex-order-gt-sm-4{order:4}.flex-order-gt-sm-5{order:5}.flex-order-gt-sm-6{order:6}.flex-order-gt-sm-7{order:7}.flex-order-gt-sm-8{order:8}.flex-order-gt-sm-9{order:9}.flex-order-gt-sm-10{order:10}.flex-order-gt-sm-11{order:11}.flex-order-gt-sm-12{order:12}.flex-order-gt-sm-13{order:13}.flex-order-gt-sm-14{order:14}.flex-order-gt-sm-15{order:15}.flex-order-gt-sm-16{order:16}.flex-order-gt-sm-17{order:17}.flex-order-gt-sm-18{order:18}.flex-order-gt-sm-19{order:19}.flex-order-gt-sm-20{order:20}.flex-offset-gt-sm-0,.offset-gt-sm-0{margin-left:0}[dir=rtl] .flex-offset-gt-sm-0,[dir=rtl] .offset-gt-sm-0{margin-left:auto;margin-right:0}.flex-offset-gt-sm-5,.offset-gt-sm-5{margin-left:5%}[dir=rtl] .flex-offset-gt-sm-5,[dir=rtl] .offset-gt-sm-5{margin-left:auto;margin-right:5%}.flex-offset-gt-sm-10,.offset-gt-sm-10{margin-left:10%}[dir=rtl] .flex-offset-gt-sm-10,[dir=rtl] .offset-gt-sm-10{margin-left:auto;margin-right:10%}.flex-offset-gt-sm-15,.offset-gt-sm-15{margin-left:15%}[dir=rtl] .flex-offset-gt-sm-15,[dir=rtl] .offset-gt-sm-15{margin-left:auto;margin-right:15%}.flex-offset-gt-sm-20,.offset-gt-sm-20{margin-left:20%}[dir=rtl] .flex-offset-gt-sm-20,[dir=rtl] .offset-gt-sm-20{margin-left:auto;margin-right:20%}.flex-offset-gt-sm-25,.offset-gt-sm-25{margin-left:25%}[dir=rtl] .flex-offset-gt-sm-25,[dir=rtl] .offset-gt-sm-25{margin-left:auto;margin-right:25%}.flex-offset-gt-sm-30,.offset-gt-sm-30{margin-left:30%}[dir=rtl] .flex-offset-gt-sm-30,[dir=rtl] .offset-gt-sm-30{margin-left:auto;margin-right:30%}.flex-offset-gt-sm-35,.offset-gt-sm-35{margin-left:35%}[dir=rtl] .flex-offset-gt-sm-35,[dir=rtl] .offset-gt-sm-35{margin-left:auto;margin-right:35%}.flex-offset-gt-sm-40,.offset-gt-sm-40{margin-left:40%}[dir=rtl] .flex-offset-gt-sm-40,[dir=rtl] .offset-gt-sm-40{margin-left:auto;margin-right:40%}.flex-offset-gt-sm-45,.offset-gt-sm-45{margin-left:45%}[dir=rtl] .flex-offset-gt-sm-45,[dir=rtl] .offset-gt-sm-45{margin-left:auto;margin-right:45%}.flex-offset-gt-sm-50,.offset-gt-sm-50{margin-left:50%}[dir=rtl] .flex-offset-gt-sm-50,[dir=rtl] .offset-gt-sm-50{margin-left:auto;margin-right:50%}.flex-offset-gt-sm-55,.offset-gt-sm-55{margin-left:55%}[dir=rtl] .flex-offset-gt-sm-55,[dir=rtl] .offset-gt-sm-55{margin-left:auto;margin-right:55%}.flex-offset-gt-sm-60,.offset-gt-sm-60{margin-left:60%}[dir=rtl] .flex-offset-gt-sm-60,[dir=rtl] .offset-gt-sm-60{margin-left:auto;margin-right:60%}.flex-offset-gt-sm-65,.offset-gt-sm-65{margin-left:65%}[dir=rtl] .flex-offset-gt-sm-65,[dir=rtl] .offset-gt-sm-65{margin-left:auto;margin-right:65%}.flex-offset-gt-sm-70,.offset-gt-sm-70{margin-left:70%}[dir=rtl] .flex-offset-gt-sm-70,[dir=rtl] .offset-gt-sm-70{margin-left:auto;margin-right:70%}.flex-offset-gt-sm-75,.offset-gt-sm-75{margin-left:75%}[dir=rtl] .flex-offset-gt-sm-75,[dir=rtl] .offset-gt-sm-75{margin-left:auto;margin-right:75%}.flex-offset-gt-sm-80,.offset-gt-sm-80{margin-left:80%}[dir=rtl] .flex-offset-gt-sm-80,[dir=rtl] .offset-gt-sm-80{margin-left:auto;margin-right:80%}.flex-offset-gt-sm-85,.offset-gt-sm-85{margin-left:85%}[dir=rtl] .flex-offset-gt-sm-85,[dir=rtl] .offset-gt-sm-85{margin-left:auto;margin-right:85%}.flex-offset-gt-sm-90,.offset-gt-sm-90{margin-left:90%}[dir=rtl] .flex-offset-gt-sm-90,[dir=rtl] .offset-gt-sm-90{margin-left:auto;margin-right:90%}.flex-offset-gt-sm-95,.offset-gt-sm-95{margin-left:95%}[dir=rtl] .flex-offset-gt-sm-95,[dir=rtl] .offset-gt-sm-95{margin-left:auto;margin-right:95%}.flex-offset-gt-sm-33,.offset-gt-sm-33{margin-left:calc(100% / 3)}.flex-offset-gt-sm-66,.offset-gt-sm-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-gt-sm-66,[dir=rtl] .offset-gt-sm-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-gt-sm,.layout-align-gt-sm-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-gt-sm-start,.layout-align-gt-sm-start-center,.layout-align-gt-sm-start-end,.layout-align-gt-sm-start-start,.layout-align-gt-sm-start-stretch{justify-content:flex-start}.layout-align-gt-sm-center,.layout-align-gt-sm-center-center,.layout-align-gt-sm-center-end,.layout-align-gt-sm-center-start,.layout-align-gt-sm-center-stretch{justify-content:center}.layout-align-gt-sm-end,.layout-align-gt-sm-end-center,.layout-align-gt-sm-end-end,.layout-align-gt-sm-end-start,.layout-align-gt-sm-end-stretch{justify-content:flex-end}.layout-align-gt-sm-space-around,.layout-align-gt-sm-space-around-center,.layout-align-gt-sm-space-around-end,.layout-align-gt-sm-space-around-start,.layout-align-gt-sm-space-around-stretch{justify-content:space-around}.layout-align-gt-sm-space-between,.layout-align-gt-sm-space-between-center,.layout-align-gt-sm-space-between-end,.layout-align-gt-sm-space-between-start,.layout-align-gt-sm-space-between-stretch{justify-content:space-between}.layout-align-gt-sm-center-start,.layout-align-gt-sm-end-start,.layout-align-gt-sm-space-around-start,.layout-align-gt-sm-space-between-start,.layout-align-gt-sm-start-start{align-items:flex-start;align-content:flex-start}.layout-align-gt-sm-center-center,.layout-align-gt-sm-end-center,.layout-align-gt-sm-space-around-center,.layout-align-gt-sm-space-between-center,.layout-align-gt-sm-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-gt-sm-center-center>*,.layout-align-gt-sm-end-center>*,.layout-align-gt-sm-space-around-center>*,.layout-align-gt-sm-space-between-center>*,.layout-align-gt-sm-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-gt-sm-center-end,.layout-align-gt-sm-end-end,.layout-align-gt-sm-space-around-end,.layout-align-gt-sm-space-between-end,.layout-align-gt-sm-start-end{align-items:flex-end;align-content:flex-end}.layout-align-gt-sm-center-stretch,.layout-align-gt-sm-end-stretch,.layout-align-gt-sm-space-around-stretch,.layout-align-gt-sm-space-between-stretch,.layout-align-gt-sm-start-stretch{align-items:stretch;align-content:stretch}.flex-gt-sm{flex:1;box-sizing:border-box}.flex-gt-sm-grow{flex:1 1 100%;box-sizing:border-box}.flex-gt-sm-initial{flex:0 1 auto;box-sizing:border-box}.flex-gt-sm-auto{flex:1 1 auto;box-sizing:border-box}.flex-gt-sm-none{flex:0 0 auto;box-sizing:border-box}.flex-gt-sm-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-gt-sm-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-gt-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-gt-sm-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-gt-sm-column>.flex-gt-sm-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-gt-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-gt-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-gt-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-gt-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-gt-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-gt-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-gt-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-gt-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-gt-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-gt-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-gt-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-gt-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-gt-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-gt-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-gt-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-gt-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-gt-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-gt-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-gt-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-gt-sm-row>.flex{min-width:0}.layout-gt-sm-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-column>.flex{min-height:0}.layout-gt-sm,.layout-gt-sm-column,.layout-gt-sm-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-gt-sm-column{flex-direction:column}.layout-gt-sm-row{flex-direction:row}}@media (min-width:960px) and (max-width:1279px){.hide-gt-sm:not(.show-gt-xs):not(.show-gt-sm):not(.show-md):not(.show),.hide-gt-xs:not(.show-gt-xs):not(.show-gt-sm):not(.show-md):not(.show),.hide:not(.show-gt-xs):not(.show-gt-sm):not(.show-md):not(.show){display:none}.hide-md:not(.show-md):not(.show-gt-sm):not(.show-gt-xs):not(.show){display:none}.flex-order-md--20{order:-20}.flex-order-md--19{order:-19}.flex-order-md--18{order:-18}.flex-order-md--17{order:-17}.flex-order-md--16{order:-16}.flex-order-md--15{order:-15}.flex-order-md--14{order:-14}.flex-order-md--13{order:-13}.flex-order-md--12{order:-12}.flex-order-md--11{order:-11}.flex-order-md--10{order:-10}.flex-order-md--9{order:-9}.flex-order-md--8{order:-8}.flex-order-md--7{order:-7}.flex-order-md--6{order:-6}.flex-order-md--5{order:-5}.flex-order-md--4{order:-4}.flex-order-md--3{order:-3}.flex-order-md--2{order:-2}.flex-order-md--1{order:-1}.flex-order-md-0{order:0}.flex-order-md-1{order:1}.flex-order-md-2{order:2}.flex-order-md-3{order:3}.flex-order-md-4{order:4}.flex-order-md-5{order:5}.flex-order-md-6{order:6}.flex-order-md-7{order:7}.flex-order-md-8{order:8}.flex-order-md-9{order:9}.flex-order-md-10{order:10}.flex-order-md-11{order:11}.flex-order-md-12{order:12}.flex-order-md-13{order:13}.flex-order-md-14{order:14}.flex-order-md-15{order:15}.flex-order-md-16{order:16}.flex-order-md-17{order:17}.flex-order-md-18{order:18}.flex-order-md-19{order:19}.flex-order-md-20{order:20}.flex-offset-md-0,.offset-md-0{margin-left:0}[dir=rtl] .flex-offset-md-0,[dir=rtl] .offset-md-0{margin-left:auto;margin-right:0}.flex-offset-md-5,.offset-md-5{margin-left:5%}[dir=rtl] .flex-offset-md-5,[dir=rtl] .offset-md-5{margin-left:auto;margin-right:5%}.flex-offset-md-10,.offset-md-10{margin-left:10%}[dir=rtl] .flex-offset-md-10,[dir=rtl] .offset-md-10{margin-left:auto;margin-right:10%}.flex-offset-md-15,.offset-md-15{margin-left:15%}[dir=rtl] .flex-offset-md-15,[dir=rtl] .offset-md-15{margin-left:auto;margin-right:15%}.flex-offset-md-20,.offset-md-20{margin-left:20%}[dir=rtl] .flex-offset-md-20,[dir=rtl] .offset-md-20{margin-left:auto;margin-right:20%}.flex-offset-md-25,.offset-md-25{margin-left:25%}[dir=rtl] .flex-offset-md-25,[dir=rtl] .offset-md-25{margin-left:auto;margin-right:25%}.flex-offset-md-30,.offset-md-30{margin-left:30%}[dir=rtl] .flex-offset-md-30,[dir=rtl] .offset-md-30{margin-left:auto;margin-right:30%}.flex-offset-md-35,.offset-md-35{margin-left:35%}[dir=rtl] .flex-offset-md-35,[dir=rtl] .offset-md-35{margin-left:auto;margin-right:35%}.flex-offset-md-40,.offset-md-40{margin-left:40%}[dir=rtl] .flex-offset-md-40,[dir=rtl] .offset-md-40{margin-left:auto;margin-right:40%}.flex-offset-md-45,.offset-md-45{margin-left:45%}[dir=rtl] .flex-offset-md-45,[dir=rtl] .offset-md-45{margin-left:auto;margin-right:45%}.flex-offset-md-50,.offset-md-50{margin-left:50%}[dir=rtl] .flex-offset-md-50,[dir=rtl] .offset-md-50{margin-left:auto;margin-right:50%}.flex-offset-md-55,.offset-md-55{margin-left:55%}[dir=rtl] .flex-offset-md-55,[dir=rtl] .offset-md-55{margin-left:auto;margin-right:55%}.flex-offset-md-60,.offset-md-60{margin-left:60%}[dir=rtl] .flex-offset-md-60,[dir=rtl] .offset-md-60{margin-left:auto;margin-right:60%}.flex-offset-md-65,.offset-md-65{margin-left:65%}[dir=rtl] .flex-offset-md-65,[dir=rtl] .offset-md-65{margin-left:auto;margin-right:65%}.flex-offset-md-70,.offset-md-70{margin-left:70%}[dir=rtl] .flex-offset-md-70,[dir=rtl] .offset-md-70{margin-left:auto;margin-right:70%}.flex-offset-md-75,.offset-md-75{margin-left:75%}[dir=rtl] .flex-offset-md-75,[dir=rtl] .offset-md-75{margin-left:auto;margin-right:75%}.flex-offset-md-80,.offset-md-80{margin-left:80%}[dir=rtl] .flex-offset-md-80,[dir=rtl] .offset-md-80{margin-left:auto;margin-right:80%}.flex-offset-md-85,.offset-md-85{margin-left:85%}[dir=rtl] .flex-offset-md-85,[dir=rtl] .offset-md-85{margin-left:auto;margin-right:85%}.flex-offset-md-90,.offset-md-90{margin-left:90%}[dir=rtl] .flex-offset-md-90,[dir=rtl] .offset-md-90{margin-left:auto;margin-right:90%}.flex-offset-md-95,.offset-md-95{margin-left:95%}[dir=rtl] .flex-offset-md-95,[dir=rtl] .offset-md-95{margin-left:auto;margin-right:95%}.flex-offset-md-33,.offset-md-33{margin-left:calc(100% / 3)}.flex-offset-md-66,.offset-md-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-md-66,[dir=rtl] .offset-md-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-md,.layout-align-md-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-md-start,.layout-align-md-start-center,.layout-align-md-start-end,.layout-align-md-start-start,.layout-align-md-start-stretch{justify-content:flex-start}.layout-align-md-center,.layout-align-md-center-center,.layout-align-md-center-end,.layout-align-md-center-start,.layout-align-md-center-stretch{justify-content:center}.layout-align-md-end,.layout-align-md-end-center,.layout-align-md-end-end,.layout-align-md-end-start,.layout-align-md-end-stretch{justify-content:flex-end}.layout-align-md-space-around,.layout-align-md-space-around-center,.layout-align-md-space-around-end,.layout-align-md-space-around-start,.layout-align-md-space-around-stretch{justify-content:space-around}.layout-align-md-space-between,.layout-align-md-space-between-center,.layout-align-md-space-between-end,.layout-align-md-space-between-start,.layout-align-md-space-between-stretch{justify-content:space-between}.layout-align-md-center-start,.layout-align-md-end-start,.layout-align-md-space-around-start,.layout-align-md-space-between-start,.layout-align-md-start-start{align-items:flex-start;align-content:flex-start}.layout-align-md-center-center,.layout-align-md-end-center,.layout-align-md-space-around-center,.layout-align-md-space-between-center,.layout-align-md-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-md-center-center>*,.layout-align-md-end-center>*,.layout-align-md-space-around-center>*,.layout-align-md-space-between-center>*,.layout-align-md-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-md-center-end,.layout-align-md-end-end,.layout-align-md-space-around-end,.layout-align-md-space-between-end,.layout-align-md-start-end{align-items:flex-end;align-content:flex-end}.layout-align-md-center-stretch,.layout-align-md-end-stretch,.layout-align-md-space-around-stretch,.layout-align-md-space-between-stretch,.layout-align-md-start-stretch{align-items:stretch;align-content:stretch}.flex-md{flex:1;box-sizing:border-box}.flex-md-grow{flex:1 1 100%;box-sizing:border-box}.flex-md-initial{flex:0 1 auto;box-sizing:border-box}.flex-md-auto{flex:1 1 auto;box-sizing:border-box}.flex-md-none{flex:0 0 auto;box-sizing:border-box}.flex-md-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-md-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-md-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-md-column>.flex-md-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-md-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-md-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-md-row>.flex{min-width:0}.layout-md-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-md-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-column>.flex{min-height:0}.layout-md,.layout-md-column,.layout-md-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-md-column{flex-direction:column}.layout-md-row{flex-direction:row}}@media (min-width:1280px){.flex-order-gt-md--20{order:-20}.flex-order-gt-md--19{order:-19}.flex-order-gt-md--18{order:-18}.flex-order-gt-md--17{order:-17}.flex-order-gt-md--16{order:-16}.flex-order-gt-md--15{order:-15}.flex-order-gt-md--14{order:-14}.flex-order-gt-md--13{order:-13}.flex-order-gt-md--12{order:-12}.flex-order-gt-md--11{order:-11}.flex-order-gt-md--10{order:-10}.flex-order-gt-md--9{order:-9}.flex-order-gt-md--8{order:-8}.flex-order-gt-md--7{order:-7}.flex-order-gt-md--6{order:-6}.flex-order-gt-md--5{order:-5}.flex-order-gt-md--4{order:-4}.flex-order-gt-md--3{order:-3}.flex-order-gt-md--2{order:-2}.flex-order-gt-md--1{order:-1}.flex-order-gt-md-0{order:0}.flex-order-gt-md-1{order:1}.flex-order-gt-md-2{order:2}.flex-order-gt-md-3{order:3}.flex-order-gt-md-4{order:4}.flex-order-gt-md-5{order:5}.flex-order-gt-md-6{order:6}.flex-order-gt-md-7{order:7}.flex-order-gt-md-8{order:8}.flex-order-gt-md-9{order:9}.flex-order-gt-md-10{order:10}.flex-order-gt-md-11{order:11}.flex-order-gt-md-12{order:12}.flex-order-gt-md-13{order:13}.flex-order-gt-md-14{order:14}.flex-order-gt-md-15{order:15}.flex-order-gt-md-16{order:16}.flex-order-gt-md-17{order:17}.flex-order-gt-md-18{order:18}.flex-order-gt-md-19{order:19}.flex-order-gt-md-20{order:20}.flex-offset-gt-md-0,.offset-gt-md-0{margin-left:0}[dir=rtl] .flex-offset-gt-md-0,[dir=rtl] .offset-gt-md-0{margin-left:auto;margin-right:0}.flex-offset-gt-md-5,.offset-gt-md-5{margin-left:5%}[dir=rtl] .flex-offset-gt-md-5,[dir=rtl] .offset-gt-md-5{margin-left:auto;margin-right:5%}.flex-offset-gt-md-10,.offset-gt-md-10{margin-left:10%}[dir=rtl] .flex-offset-gt-md-10,[dir=rtl] .offset-gt-md-10{margin-left:auto;margin-right:10%}.flex-offset-gt-md-15,.offset-gt-md-15{margin-left:15%}[dir=rtl] .flex-offset-gt-md-15,[dir=rtl] .offset-gt-md-15{margin-left:auto;margin-right:15%}.flex-offset-gt-md-20,.offset-gt-md-20{margin-left:20%}[dir=rtl] .flex-offset-gt-md-20,[dir=rtl] .offset-gt-md-20{margin-left:auto;margin-right:20%}.flex-offset-gt-md-25,.offset-gt-md-25{margin-left:25%}[dir=rtl] .flex-offset-gt-md-25,[dir=rtl] .offset-gt-md-25{margin-left:auto;margin-right:25%}.flex-offset-gt-md-30,.offset-gt-md-30{margin-left:30%}[dir=rtl] .flex-offset-gt-md-30,[dir=rtl] .offset-gt-md-30{margin-left:auto;margin-right:30%}.flex-offset-gt-md-35,.offset-gt-md-35{margin-left:35%}[dir=rtl] .flex-offset-gt-md-35,[dir=rtl] .offset-gt-md-35{margin-left:auto;margin-right:35%}.flex-offset-gt-md-40,.offset-gt-md-40{margin-left:40%}[dir=rtl] .flex-offset-gt-md-40,[dir=rtl] .offset-gt-md-40{margin-left:auto;margin-right:40%}.flex-offset-gt-md-45,.offset-gt-md-45{margin-left:45%}[dir=rtl] .flex-offset-gt-md-45,[dir=rtl] .offset-gt-md-45{margin-left:auto;margin-right:45%}.flex-offset-gt-md-50,.offset-gt-md-50{margin-left:50%}[dir=rtl] .flex-offset-gt-md-50,[dir=rtl] .offset-gt-md-50{margin-left:auto;margin-right:50%}.flex-offset-gt-md-55,.offset-gt-md-55{margin-left:55%}[dir=rtl] .flex-offset-gt-md-55,[dir=rtl] .offset-gt-md-55{margin-left:auto;margin-right:55%}.flex-offset-gt-md-60,.offset-gt-md-60{margin-left:60%}[dir=rtl] .flex-offset-gt-md-60,[dir=rtl] .offset-gt-md-60{margin-left:auto;margin-right:60%}.flex-offset-gt-md-65,.offset-gt-md-65{margin-left:65%}[dir=rtl] .flex-offset-gt-md-65,[dir=rtl] .offset-gt-md-65{margin-left:auto;margin-right:65%}.flex-offset-gt-md-70,.offset-gt-md-70{margin-left:70%}[dir=rtl] .flex-offset-gt-md-70,[dir=rtl] .offset-gt-md-70{margin-left:auto;margin-right:70%}.flex-offset-gt-md-75,.offset-gt-md-75{margin-left:75%}[dir=rtl] .flex-offset-gt-md-75,[dir=rtl] .offset-gt-md-75{margin-left:auto;margin-right:75%}.flex-offset-gt-md-80,.offset-gt-md-80{margin-left:80%}[dir=rtl] .flex-offset-gt-md-80,[dir=rtl] .offset-gt-md-80{margin-left:auto;margin-right:80%}.flex-offset-gt-md-85,.offset-gt-md-85{margin-left:85%}[dir=rtl] .flex-offset-gt-md-85,[dir=rtl] .offset-gt-md-85{margin-left:auto;margin-right:85%}.flex-offset-gt-md-90,.offset-gt-md-90{margin-left:90%}[dir=rtl] .flex-offset-gt-md-90,[dir=rtl] .offset-gt-md-90{margin-left:auto;margin-right:90%}.flex-offset-gt-md-95,.offset-gt-md-95{margin-left:95%}[dir=rtl] .flex-offset-gt-md-95,[dir=rtl] .offset-gt-md-95{margin-left:auto;margin-right:95%}.flex-offset-gt-md-33,.offset-gt-md-33{margin-left:calc(100% / 3)}.flex-offset-gt-md-66,.offset-gt-md-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-gt-md-66,[dir=rtl] .offset-gt-md-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-gt-md,.layout-align-gt-md-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-gt-md-start,.layout-align-gt-md-start-center,.layout-align-gt-md-start-end,.layout-align-gt-md-start-start,.layout-align-gt-md-start-stretch{justify-content:flex-start}.layout-align-gt-md-center,.layout-align-gt-md-center-center,.layout-align-gt-md-center-end,.layout-align-gt-md-center-start,.layout-align-gt-md-center-stretch{justify-content:center}.layout-align-gt-md-end,.layout-align-gt-md-end-center,.layout-align-gt-md-end-end,.layout-align-gt-md-end-start,.layout-align-gt-md-end-stretch{justify-content:flex-end}.layout-align-gt-md-space-around,.layout-align-gt-md-space-around-center,.layout-align-gt-md-space-around-end,.layout-align-gt-md-space-around-start,.layout-align-gt-md-space-around-stretch{justify-content:space-around}.layout-align-gt-md-space-between,.layout-align-gt-md-space-between-center,.layout-align-gt-md-space-between-end,.layout-align-gt-md-space-between-start,.layout-align-gt-md-space-between-stretch{justify-content:space-between}.layout-align-gt-md-center-start,.layout-align-gt-md-end-start,.layout-align-gt-md-space-around-start,.layout-align-gt-md-space-between-start,.layout-align-gt-md-start-start{align-items:flex-start;align-content:flex-start}.layout-align-gt-md-center-center,.layout-align-gt-md-end-center,.layout-align-gt-md-space-around-center,.layout-align-gt-md-space-between-center,.layout-align-gt-md-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-gt-md-center-center>*,.layout-align-gt-md-end-center>*,.layout-align-gt-md-space-around-center>*,.layout-align-gt-md-space-between-center>*,.layout-align-gt-md-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-gt-md-center-end,.layout-align-gt-md-end-end,.layout-align-gt-md-space-around-end,.layout-align-gt-md-space-between-end,.layout-align-gt-md-start-end{align-items:flex-end;align-content:flex-end}.layout-align-gt-md-center-stretch,.layout-align-gt-md-end-stretch,.layout-align-gt-md-space-around-stretch,.layout-align-gt-md-space-between-stretch,.layout-align-gt-md-start-stretch{align-items:stretch;align-content:stretch}.flex-gt-md{flex:1;box-sizing:border-box}.flex-gt-md-grow{flex:1 1 100%;box-sizing:border-box}.flex-gt-md-initial{flex:0 1 auto;box-sizing:border-box}.flex-gt-md-auto{flex:1 1 auto;box-sizing:border-box}.flex-gt-md-none{flex:0 0 auto;box-sizing:border-box}.flex-gt-md-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-gt-md-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-gt-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-gt-md-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-gt-md-column>.flex-gt-md-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-gt-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-gt-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-gt-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-gt-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-gt-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-gt-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-gt-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-gt-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-gt-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-gt-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-gt-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-gt-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-gt-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-gt-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-gt-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-gt-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-gt-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-gt-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-gt-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-gt-md-row>.flex{min-width:0}.layout-gt-md-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-column>.flex{min-height:0}.layout-gt-md,.layout-gt-md-column,.layout-gt-md-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-gt-md-column{flex-direction:column}.layout-gt-md-row{flex-direction:row}}@media (min-width:1280px) and (max-width:1919px){.hide-gt-md:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-lg):not(.show),.hide-gt-sm:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-lg):not(.show),.hide-gt-xs:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-lg):not(.show),.hide:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-lg):not(.show){display:none}.hide-lg:not(.show-lg):not(.show-gt-md):not(.show-gt-sm):not(.show-gt-xs):not(.show){display:none}.flex-order-lg--20{order:-20}.flex-order-lg--19{order:-19}.flex-order-lg--18{order:-18}.flex-order-lg--17{order:-17}.flex-order-lg--16{order:-16}.flex-order-lg--15{order:-15}.flex-order-lg--14{order:-14}.flex-order-lg--13{order:-13}.flex-order-lg--12{order:-12}.flex-order-lg--11{order:-11}.flex-order-lg--10{order:-10}.flex-order-lg--9{order:-9}.flex-order-lg--8{order:-8}.flex-order-lg--7{order:-7}.flex-order-lg--6{order:-6}.flex-order-lg--5{order:-5}.flex-order-lg--4{order:-4}.flex-order-lg--3{order:-3}.flex-order-lg--2{order:-2}.flex-order-lg--1{order:-1}.flex-order-lg-0{order:0}.flex-order-lg-1{order:1}.flex-order-lg-2{order:2}.flex-order-lg-3{order:3}.flex-order-lg-4{order:4}.flex-order-lg-5{order:5}.flex-order-lg-6{order:6}.flex-order-lg-7{order:7}.flex-order-lg-8{order:8}.flex-order-lg-9{order:9}.flex-order-lg-10{order:10}.flex-order-lg-11{order:11}.flex-order-lg-12{order:12}.flex-order-lg-13{order:13}.flex-order-lg-14{order:14}.flex-order-lg-15{order:15}.flex-order-lg-16{order:16}.flex-order-lg-17{order:17}.flex-order-lg-18{order:18}.flex-order-lg-19{order:19}.flex-order-lg-20{order:20}.flex-offset-lg-0,.offset-lg-0{margin-left:0}[dir=rtl] .flex-offset-lg-0,[dir=rtl] .offset-lg-0{margin-left:auto;margin-right:0}.flex-offset-lg-5,.offset-lg-5{margin-left:5%}[dir=rtl] .flex-offset-lg-5,[dir=rtl] .offset-lg-5{margin-left:auto;margin-right:5%}.flex-offset-lg-10,.offset-lg-10{margin-left:10%}[dir=rtl] .flex-offset-lg-10,[dir=rtl] .offset-lg-10{margin-left:auto;margin-right:10%}.flex-offset-lg-15,.offset-lg-15{margin-left:15%}[dir=rtl] .flex-offset-lg-15,[dir=rtl] .offset-lg-15{margin-left:auto;margin-right:15%}.flex-offset-lg-20,.offset-lg-20{margin-left:20%}[dir=rtl] .flex-offset-lg-20,[dir=rtl] .offset-lg-20{margin-left:auto;margin-right:20%}.flex-offset-lg-25,.offset-lg-25{margin-left:25%}[dir=rtl] .flex-offset-lg-25,[dir=rtl] .offset-lg-25{margin-left:auto;margin-right:25%}.flex-offset-lg-30,.offset-lg-30{margin-left:30%}[dir=rtl] .flex-offset-lg-30,[dir=rtl] .offset-lg-30{margin-left:auto;margin-right:30%}.flex-offset-lg-35,.offset-lg-35{margin-left:35%}[dir=rtl] .flex-offset-lg-35,[dir=rtl] .offset-lg-35{margin-left:auto;margin-right:35%}.flex-offset-lg-40,.offset-lg-40{margin-left:40%}[dir=rtl] .flex-offset-lg-40,[dir=rtl] .offset-lg-40{margin-left:auto;margin-right:40%}.flex-offset-lg-45,.offset-lg-45{margin-left:45%}[dir=rtl] .flex-offset-lg-45,[dir=rtl] .offset-lg-45{margin-left:auto;margin-right:45%}.flex-offset-lg-50,.offset-lg-50{margin-left:50%}[dir=rtl] .flex-offset-lg-50,[dir=rtl] .offset-lg-50{margin-left:auto;margin-right:50%}.flex-offset-lg-55,.offset-lg-55{margin-left:55%}[dir=rtl] .flex-offset-lg-55,[dir=rtl] .offset-lg-55{margin-left:auto;margin-right:55%}.flex-offset-lg-60,.offset-lg-60{margin-left:60%}[dir=rtl] .flex-offset-lg-60,[dir=rtl] .offset-lg-60{margin-left:auto;margin-right:60%}.flex-offset-lg-65,.offset-lg-65{margin-left:65%}[dir=rtl] .flex-offset-lg-65,[dir=rtl] .offset-lg-65{margin-left:auto;margin-right:65%}.flex-offset-lg-70,.offset-lg-70{margin-left:70%}[dir=rtl] .flex-offset-lg-70,[dir=rtl] .offset-lg-70{margin-left:auto;margin-right:70%}.flex-offset-lg-75,.offset-lg-75{margin-left:75%}[dir=rtl] .flex-offset-lg-75,[dir=rtl] .offset-lg-75{margin-left:auto;margin-right:75%}.flex-offset-lg-80,.offset-lg-80{margin-left:80%}[dir=rtl] .flex-offset-lg-80,[dir=rtl] .offset-lg-80{margin-left:auto;margin-right:80%}.flex-offset-lg-85,.offset-lg-85{margin-left:85%}[dir=rtl] .flex-offset-lg-85,[dir=rtl] .offset-lg-85{margin-left:auto;margin-right:85%}.flex-offset-lg-90,.offset-lg-90{margin-left:90%}[dir=rtl] .flex-offset-lg-90,[dir=rtl] .offset-lg-90{margin-left:auto;margin-right:90%}.flex-offset-lg-95,.offset-lg-95{margin-left:95%}[dir=rtl] .flex-offset-lg-95,[dir=rtl] .offset-lg-95{margin-left:auto;margin-right:95%}.flex-offset-lg-33,.offset-lg-33{margin-left:calc(100% / 3)}.flex-offset-lg-66,.offset-lg-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-lg-66,[dir=rtl] .offset-lg-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-lg,.layout-align-lg-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-lg-start,.layout-align-lg-start-center,.layout-align-lg-start-end,.layout-align-lg-start-start,.layout-align-lg-start-stretch{justify-content:flex-start}.layout-align-lg-center,.layout-align-lg-center-center,.layout-align-lg-center-end,.layout-align-lg-center-start,.layout-align-lg-center-stretch{justify-content:center}.layout-align-lg-end,.layout-align-lg-end-center,.layout-align-lg-end-end,.layout-align-lg-end-start,.layout-align-lg-end-stretch{justify-content:flex-end}.layout-align-lg-space-around,.layout-align-lg-space-around-center,.layout-align-lg-space-around-end,.layout-align-lg-space-around-start,.layout-align-lg-space-around-stretch{justify-content:space-around}.layout-align-lg-space-between,.layout-align-lg-space-between-center,.layout-align-lg-space-between-end,.layout-align-lg-space-between-start,.layout-align-lg-space-between-stretch{justify-content:space-between}.layout-align-lg-center-start,.layout-align-lg-end-start,.layout-align-lg-space-around-start,.layout-align-lg-space-between-start,.layout-align-lg-start-start{align-items:flex-start;align-content:flex-start}.layout-align-lg-center-center,.layout-align-lg-end-center,.layout-align-lg-space-around-center,.layout-align-lg-space-between-center,.layout-align-lg-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-lg-center-center>*,.layout-align-lg-end-center>*,.layout-align-lg-space-around-center>*,.layout-align-lg-space-between-center>*,.layout-align-lg-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-lg-center-end,.layout-align-lg-end-end,.layout-align-lg-space-around-end,.layout-align-lg-space-between-end,.layout-align-lg-start-end{align-items:flex-end;align-content:flex-end}.layout-align-lg-center-stretch,.layout-align-lg-end-stretch,.layout-align-lg-space-around-stretch,.layout-align-lg-space-between-stretch,.layout-align-lg-start-stretch{align-items:stretch;align-content:stretch}.flex-lg{flex:1;box-sizing:border-box}.flex-lg-grow{flex:1 1 100%;box-sizing:border-box}.flex-lg-initial{flex:0 1 auto;box-sizing:border-box}.flex-lg-auto{flex:1 1 auto;box-sizing:border-box}.flex-lg-none{flex:0 0 auto;box-sizing:border-box}.flex-lg-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-lg-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-lg-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-lg-column>.flex-lg-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-lg-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-lg-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-lg-row>.flex{min-width:0}.layout-lg-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-lg-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-column>.flex{min-height:0}.layout-lg,.layout-lg-column,.layout-lg-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-lg-column{flex-direction:column}.layout-lg-row{flex-direction:row}}@media (min-width:1920px){.flex-order-gt-lg--20{order:-20}.flex-order-gt-lg--19{order:-19}.flex-order-gt-lg--18{order:-18}.flex-order-gt-lg--17{order:-17}.flex-order-gt-lg--16{order:-16}.flex-order-gt-lg--15{order:-15}.flex-order-gt-lg--14{order:-14}.flex-order-gt-lg--13{order:-13}.flex-order-gt-lg--12{order:-12}.flex-order-gt-lg--11{order:-11}.flex-order-gt-lg--10{order:-10}.flex-order-gt-lg--9{order:-9}.flex-order-gt-lg--8{order:-8}.flex-order-gt-lg--7{order:-7}.flex-order-gt-lg--6{order:-6}.flex-order-gt-lg--5{order:-5}.flex-order-gt-lg--4{order:-4}.flex-order-gt-lg--3{order:-3}.flex-order-gt-lg--2{order:-2}.flex-order-gt-lg--1{order:-1}.flex-order-gt-lg-0{order:0}.flex-order-gt-lg-1{order:1}.flex-order-gt-lg-2{order:2}.flex-order-gt-lg-3{order:3}.flex-order-gt-lg-4{order:4}.flex-order-gt-lg-5{order:5}.flex-order-gt-lg-6{order:6}.flex-order-gt-lg-7{order:7}.flex-order-gt-lg-8{order:8}.flex-order-gt-lg-9{order:9}.flex-order-gt-lg-10{order:10}.flex-order-gt-lg-11{order:11}.flex-order-gt-lg-12{order:12}.flex-order-gt-lg-13{order:13}.flex-order-gt-lg-14{order:14}.flex-order-gt-lg-15{order:15}.flex-order-gt-lg-16{order:16}.flex-order-gt-lg-17{order:17}.flex-order-gt-lg-18{order:18}.flex-order-gt-lg-19{order:19}.flex-order-gt-lg-20{order:20}.flex-offset-gt-lg-0,.offset-gt-lg-0{margin-left:0}[dir=rtl] .flex-offset-gt-lg-0,[dir=rtl] .offset-gt-lg-0{margin-left:auto;margin-right:0}.flex-offset-gt-lg-5,.offset-gt-lg-5{margin-left:5%}[dir=rtl] .flex-offset-gt-lg-5,[dir=rtl] .offset-gt-lg-5{margin-left:auto;margin-right:5%}.flex-offset-gt-lg-10,.offset-gt-lg-10{margin-left:10%}[dir=rtl] .flex-offset-gt-lg-10,[dir=rtl] .offset-gt-lg-10{margin-left:auto;margin-right:10%}.flex-offset-gt-lg-15,.offset-gt-lg-15{margin-left:15%}[dir=rtl] .flex-offset-gt-lg-15,[dir=rtl] .offset-gt-lg-15{margin-left:auto;margin-right:15%}.flex-offset-gt-lg-20,.offset-gt-lg-20{margin-left:20%}[dir=rtl] .flex-offset-gt-lg-20,[dir=rtl] .offset-gt-lg-20{margin-left:auto;margin-right:20%}.flex-offset-gt-lg-25,.offset-gt-lg-25{margin-left:25%}[dir=rtl] .flex-offset-gt-lg-25,[dir=rtl] .offset-gt-lg-25{margin-left:auto;margin-right:25%}.flex-offset-gt-lg-30,.offset-gt-lg-30{margin-left:30%}[dir=rtl] .flex-offset-gt-lg-30,[dir=rtl] .offset-gt-lg-30{margin-left:auto;margin-right:30%}.flex-offset-gt-lg-35,.offset-gt-lg-35{margin-left:35%}[dir=rtl] .flex-offset-gt-lg-35,[dir=rtl] .offset-gt-lg-35{margin-left:auto;margin-right:35%}.flex-offset-gt-lg-40,.offset-gt-lg-40{margin-left:40%}[dir=rtl] .flex-offset-gt-lg-40,[dir=rtl] .offset-gt-lg-40{margin-left:auto;margin-right:40%}.flex-offset-gt-lg-45,.offset-gt-lg-45{margin-left:45%}[dir=rtl] .flex-offset-gt-lg-45,[dir=rtl] .offset-gt-lg-45{margin-left:auto;margin-right:45%}.flex-offset-gt-lg-50,.offset-gt-lg-50{margin-left:50%}[dir=rtl] .flex-offset-gt-lg-50,[dir=rtl] .offset-gt-lg-50{margin-left:auto;margin-right:50%}.flex-offset-gt-lg-55,.offset-gt-lg-55{margin-left:55%}[dir=rtl] .flex-offset-gt-lg-55,[dir=rtl] .offset-gt-lg-55{margin-left:auto;margin-right:55%}.flex-offset-gt-lg-60,.offset-gt-lg-60{margin-left:60%}[dir=rtl] .flex-offset-gt-lg-60,[dir=rtl] .offset-gt-lg-60{margin-left:auto;margin-right:60%}.flex-offset-gt-lg-65,.offset-gt-lg-65{margin-left:65%}[dir=rtl] .flex-offset-gt-lg-65,[dir=rtl] .offset-gt-lg-65{margin-left:auto;margin-right:65%}.flex-offset-gt-lg-70,.offset-gt-lg-70{margin-left:70%}[dir=rtl] .flex-offset-gt-lg-70,[dir=rtl] .offset-gt-lg-70{margin-left:auto;margin-right:70%}.flex-offset-gt-lg-75,.offset-gt-lg-75{margin-left:75%}[dir=rtl] .flex-offset-gt-lg-75,[dir=rtl] .offset-gt-lg-75{margin-left:auto;margin-right:75%}.flex-offset-gt-lg-80,.offset-gt-lg-80{margin-left:80%}[dir=rtl] .flex-offset-gt-lg-80,[dir=rtl] .offset-gt-lg-80{margin-left:auto;margin-right:80%}.flex-offset-gt-lg-85,.offset-gt-lg-85{margin-left:85%}[dir=rtl] .flex-offset-gt-lg-85,[dir=rtl] .offset-gt-lg-85{margin-left:auto;margin-right:85%}.flex-offset-gt-lg-90,.offset-gt-lg-90{margin-left:90%}[dir=rtl] .flex-offset-gt-lg-90,[dir=rtl] .offset-gt-lg-90{margin-left:auto;margin-right:90%}.flex-offset-gt-lg-95,.offset-gt-lg-95{margin-left:95%}[dir=rtl] .flex-offset-gt-lg-95,[dir=rtl] .offset-gt-lg-95{margin-left:auto;margin-right:95%}.flex-offset-gt-lg-33,.offset-gt-lg-33{margin-left:calc(100% / 3)}.flex-offset-gt-lg-66,.offset-gt-lg-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-gt-lg-66,[dir=rtl] .offset-gt-lg-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-gt-lg,.layout-align-gt-lg-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-gt-lg-start,.layout-align-gt-lg-start-center,.layout-align-gt-lg-start-end,.layout-align-gt-lg-start-start,.layout-align-gt-lg-start-stretch{justify-content:flex-start}.layout-align-gt-lg-center,.layout-align-gt-lg-center-center,.layout-align-gt-lg-center-end,.layout-align-gt-lg-center-start,.layout-align-gt-lg-center-stretch{justify-content:center}.layout-align-gt-lg-end,.layout-align-gt-lg-end-center,.layout-align-gt-lg-end-end,.layout-align-gt-lg-end-start,.layout-align-gt-lg-end-stretch{justify-content:flex-end}.layout-align-gt-lg-space-around,.layout-align-gt-lg-space-around-center,.layout-align-gt-lg-space-around-end,.layout-align-gt-lg-space-around-start,.layout-align-gt-lg-space-around-stretch{justify-content:space-around}.layout-align-gt-lg-space-between,.layout-align-gt-lg-space-between-center,.layout-align-gt-lg-space-between-end,.layout-align-gt-lg-space-between-start,.layout-align-gt-lg-space-between-stretch{justify-content:space-between}.layout-align-gt-lg-center-start,.layout-align-gt-lg-end-start,.layout-align-gt-lg-space-around-start,.layout-align-gt-lg-space-between-start,.layout-align-gt-lg-start-start{align-items:flex-start;align-content:flex-start}.layout-align-gt-lg-center-center,.layout-align-gt-lg-end-center,.layout-align-gt-lg-space-around-center,.layout-align-gt-lg-space-between-center,.layout-align-gt-lg-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-gt-lg-center-center>*,.layout-align-gt-lg-end-center>*,.layout-align-gt-lg-space-around-center>*,.layout-align-gt-lg-space-between-center>*,.layout-align-gt-lg-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-gt-lg-center-end,.layout-align-gt-lg-end-end,.layout-align-gt-lg-space-around-end,.layout-align-gt-lg-space-between-end,.layout-align-gt-lg-start-end{align-items:flex-end;align-content:flex-end}.layout-align-gt-lg-center-stretch,.layout-align-gt-lg-end-stretch,.layout-align-gt-lg-space-around-stretch,.layout-align-gt-lg-space-between-stretch,.layout-align-gt-lg-start-stretch{align-items:stretch;align-content:stretch}.flex-gt-lg{flex:1;box-sizing:border-box}.flex-gt-lg-grow{flex:1 1 100%;box-sizing:border-box}.flex-gt-lg-initial{flex:0 1 auto;box-sizing:border-box}.flex-gt-lg-auto{flex:1 1 auto;box-sizing:border-box}.flex-gt-lg-none{flex:0 0 auto;box-sizing:border-box}.flex-gt-lg-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-gt-lg-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-gt-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-gt-lg-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-gt-lg-column>.flex-gt-lg-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-gt-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-gt-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-gt-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-gt-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-gt-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-gt-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-gt-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-gt-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-gt-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-gt-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-gt-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-gt-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-gt-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-gt-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-gt-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-gt-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-gt-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-gt-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-gt-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-gt-lg-row>.flex{min-width:0}.layout-gt-lg-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-column>.flex{min-height:0}.layout-gt-lg,.layout-gt-lg-column,.layout-gt-lg-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-gt-lg-column{flex-direction:column}.layout-gt-lg-row{flex-direction:row}.flex-order-xl--20{order:-20}.flex-order-xl--19{order:-19}.flex-order-xl--18{order:-18}.flex-order-xl--17{order:-17}.flex-order-xl--16{order:-16}.flex-order-xl--15{order:-15}.flex-order-xl--14{order:-14}.flex-order-xl--13{order:-13}.flex-order-xl--12{order:-12}.flex-order-xl--11{order:-11}.flex-order-xl--10{order:-10}.flex-order-xl--9{order:-9}.flex-order-xl--8{order:-8}.flex-order-xl--7{order:-7}.flex-order-xl--6{order:-6}.flex-order-xl--5{order:-5}.flex-order-xl--4{order:-4}.flex-order-xl--3{order:-3}.flex-order-xl--2{order:-2}.flex-order-xl--1{order:-1}.flex-order-xl-0{order:0}.flex-order-xl-1{order:1}.flex-order-xl-2{order:2}.flex-order-xl-3{order:3}.flex-order-xl-4{order:4}.flex-order-xl-5{order:5}.flex-order-xl-6{order:6}.flex-order-xl-7{order:7}.flex-order-xl-8{order:8}.flex-order-xl-9{order:9}.flex-order-xl-10{order:10}.flex-order-xl-11{order:11}.flex-order-xl-12{order:12}.flex-order-xl-13{order:13}.flex-order-xl-14{order:14}.flex-order-xl-15{order:15}.flex-order-xl-16{order:16}.flex-order-xl-17{order:17}.flex-order-xl-18{order:18}.flex-order-xl-19{order:19}.flex-order-xl-20{order:20}.flex-offset-xl-0,.offset-xl-0{margin-left:0}[dir=rtl] .flex-offset-xl-0,[dir=rtl] .offset-xl-0{margin-left:auto;margin-right:0}.flex-offset-xl-5,.offset-xl-5{margin-left:5%}[dir=rtl] .flex-offset-xl-5,[dir=rtl] .offset-xl-5{margin-left:auto;margin-right:5%}.flex-offset-xl-10,.offset-xl-10{margin-left:10%}[dir=rtl] .flex-offset-xl-10,[dir=rtl] .offset-xl-10{margin-left:auto;margin-right:10%}.flex-offset-xl-15,.offset-xl-15{margin-left:15%}[dir=rtl] .flex-offset-xl-15,[dir=rtl] .offset-xl-15{margin-left:auto;margin-right:15%}.flex-offset-xl-20,.offset-xl-20{margin-left:20%}[dir=rtl] .flex-offset-xl-20,[dir=rtl] .offset-xl-20{margin-left:auto;margin-right:20%}.flex-offset-xl-25,.offset-xl-25{margin-left:25%}[dir=rtl] .flex-offset-xl-25,[dir=rtl] .offset-xl-25{margin-left:auto;margin-right:25%}.flex-offset-xl-30,.offset-xl-30{margin-left:30%}[dir=rtl] .flex-offset-xl-30,[dir=rtl] .offset-xl-30{margin-left:auto;margin-right:30%}.flex-offset-xl-35,.offset-xl-35{margin-left:35%}[dir=rtl] .flex-offset-xl-35,[dir=rtl] .offset-xl-35{margin-left:auto;margin-right:35%}.flex-offset-xl-40,.offset-xl-40{margin-left:40%}[dir=rtl] .flex-offset-xl-40,[dir=rtl] .offset-xl-40{margin-left:auto;margin-right:40%}.flex-offset-xl-45,.offset-xl-45{margin-left:45%}[dir=rtl] .flex-offset-xl-45,[dir=rtl] .offset-xl-45{margin-left:auto;margin-right:45%}.flex-offset-xl-50,.offset-xl-50{margin-left:50%}[dir=rtl] .flex-offset-xl-50,[dir=rtl] .offset-xl-50{margin-left:auto;margin-right:50%}.flex-offset-xl-55,.offset-xl-55{margin-left:55%}[dir=rtl] .flex-offset-xl-55,[dir=rtl] .offset-xl-55{margin-left:auto;margin-right:55%}.flex-offset-xl-60,.offset-xl-60{margin-left:60%}[dir=rtl] .flex-offset-xl-60,[dir=rtl] .offset-xl-60{margin-left:auto;margin-right:60%}.flex-offset-xl-65,.offset-xl-65{margin-left:65%}[dir=rtl] .flex-offset-xl-65,[dir=rtl] .offset-xl-65{margin-left:auto;margin-right:65%}.flex-offset-xl-70,.offset-xl-70{margin-left:70%}[dir=rtl] .flex-offset-xl-70,[dir=rtl] .offset-xl-70{margin-left:auto;margin-right:70%}.flex-offset-xl-75,.offset-xl-75{margin-left:75%}[dir=rtl] .flex-offset-xl-75,[dir=rtl] .offset-xl-75{margin-left:auto;margin-right:75%}.flex-offset-xl-80,.offset-xl-80{margin-left:80%}[dir=rtl] .flex-offset-xl-80,[dir=rtl] .offset-xl-80{margin-left:auto;margin-right:80%}.flex-offset-xl-85,.offset-xl-85{margin-left:85%}[dir=rtl] .flex-offset-xl-85,[dir=rtl] .offset-xl-85{margin-left:auto;margin-right:85%}.flex-offset-xl-90,.offset-xl-90{margin-left:90%}[dir=rtl] .flex-offset-xl-90,[dir=rtl] .offset-xl-90{margin-left:auto;margin-right:90%}.flex-offset-xl-95,.offset-xl-95{margin-left:95%}[dir=rtl] .flex-offset-xl-95,[dir=rtl] .offset-xl-95{margin-left:auto;margin-right:95%}.flex-offset-xl-33,.offset-xl-33{margin-left:calc(100% / 3)}.flex-offset-xl-66,.offset-xl-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-xl-66,[dir=rtl] .offset-xl-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-xl,.layout-align-xl-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-xl-start,.layout-align-xl-start-center,.layout-align-xl-start-end,.layout-align-xl-start-start,.layout-align-xl-start-stretch{justify-content:flex-start}.layout-align-xl-center,.layout-align-xl-center-center,.layout-align-xl-center-end,.layout-align-xl-center-start,.layout-align-xl-center-stretch{justify-content:center}.layout-align-xl-end,.layout-align-xl-end-center,.layout-align-xl-end-end,.layout-align-xl-end-start,.layout-align-xl-end-stretch{justify-content:flex-end}.layout-align-xl-space-around,.layout-align-xl-space-around-center,.layout-align-xl-space-around-end,.layout-align-xl-space-around-start,.layout-align-xl-space-around-stretch{justify-content:space-around}.layout-align-xl-space-between,.layout-align-xl-space-between-center,.layout-align-xl-space-between-end,.layout-align-xl-space-between-start,.layout-align-xl-space-between-stretch{justify-content:space-between}.layout-align-xl-center-start,.layout-align-xl-end-start,.layout-align-xl-space-around-start,.layout-align-xl-space-between-start,.layout-align-xl-start-start{align-items:flex-start;align-content:flex-start}.layout-align-xl-center-center,.layout-align-xl-end-center,.layout-align-xl-space-around-center,.layout-align-xl-space-between-center,.layout-align-xl-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-xl-center-center>*,.layout-align-xl-end-center>*,.layout-align-xl-space-around-center>*,.layout-align-xl-space-between-center>*,.layout-align-xl-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-xl-center-end,.layout-align-xl-end-end,.layout-align-xl-space-around-end,.layout-align-xl-space-between-end,.layout-align-xl-start-end{align-items:flex-end;align-content:flex-end}.layout-align-xl-center-stretch,.layout-align-xl-end-stretch,.layout-align-xl-space-around-stretch,.layout-align-xl-space-between-stretch,.layout-align-xl-start-stretch{align-items:stretch;align-content:stretch}.flex-xl{flex:1;box-sizing:border-box}.flex-xl-grow{flex:1 1 100%;box-sizing:border-box}.flex-xl-initial{flex:0 1 auto;box-sizing:border-box}.flex-xl-auto{flex:1 1 auto;box-sizing:border-box}.flex-xl-none{flex:0 0 auto;box-sizing:border-box}.flex-xl-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-xl-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-xl-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-xl-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-xl-column>.flex-xl-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-xl-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-xl-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-xl-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-xl-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-xl-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-xl-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-xl-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-xl-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-xl-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-xl-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-xl-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-xl-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-xl-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-xl-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-xl-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-xl-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-xl-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-xl-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-xl-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-xl-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-xl-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-xl-row>.flex{min-width:0}.layout-xl-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-xl-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-column>.flex{min-height:0}.layout-xl,.layout-xl-column,.layout-xl-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-xl-column{flex-direction:column}.layout-xl-row{flex-direction:row}.hide-gt-lg:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show),.hide-gt-md:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show),.hide-gt-sm:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show),.hide-gt-xs:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show),.hide:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show){display:none}.hide-xl:not(.show-xl):not(.show-gt-lg):not(.show-gt-md):not(.show-gt-sm):not(.show-gt-xs):not(.show){display:none}}@media print{.hide-print:not(.show-print):not(.show){display:none!important}}*{text-rendering:optimizeLegibility;-o-text-rendering:optimizeLegibility;-ms-text-rendering:optimizeLegibility;-moz-text-rendering:optimizeLegibility;-webkit-text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent;box-sizing:border-box}:after,:before{box-sizing:border-box}:focus{outline:0}:not(md-input-container)>button,:not(md-input-container)>input[type=button],:not(md-input-container)>input[type=email],:not(md-input-container)>input[type=image],:not(md-input-container)>input[type=password],:not(md-input-container)>input[type=search],:not(md-input-container)>input[type=submit],:not(md-input-container)>input[type=tel],:not(md-input-container)>input[type=text],:not(md-input-container)>textarea{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;border:none;padding:0;margin:0}:not(md-input-container)>button,:not(md-input-container)>input[type=button],:not(md-input-container)>input[type=submit]{background:0 0}button{border-radius:0;font-family:inherit;font-size:inherit;padding:0;margin:0;appearance:none;-moz-appearance:none;-webkit-appearance:none}[layout]>*{min-height:auto;min-height:initial}md-card>:not(md-card-content) img,md-card>img{height:inherit;height:initial}.md-datepicker-calendar-pane *{box-sizing:initial}md-autocomplete-wrap>input[type=search]{background:#fff;padding:0 15px!important}md-backdrop.md-opaque{background-color:rgba(33,33,33,.48)!important}md-card md-card-header md-card-avatar md-icon{width:40px;height:40px}md-checkbox.no-label{margin:0}md-chip .md-chip-remove md-icon{margin-left:2px}md-chip .md-chip-remove md-icon svg{width:18px;height:18px;max-width:18px;max-height:18px;margin:4px}md-datepicker .md-datepicker-button{padding:0!important;margin:0!important;vertical-align:middle}md-datepicker .md-datepicker-input-container{margin-left:0}.md-inline-form md-datepicker{margin-top:14px}md-dialog md-dialog-content{padding:32px 24px 24px 24px}md-dialog md-dialog-actions{min-height:64px;padding-top:8px;padding-bottom:8px}md-dialog md-dialog-actions .md-button{margin:0 8px}md-input-container.no-errors-spacer .md-errors-spacer{display:none}md-input-container .input-hint{position:absolute;right:auto;bottom:7px;left:2px;font-size:12px;line-height:14px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:rgba(0,0,0,.54)}md-input-container.md-icon-left .input-hint{left:38px}md-list-item .md-list-item-text p{font-size:13px!important}.md-menu,md-menu{padding:0}md-menu-content.md-menu-bar-menu.md-dense{padding:8px 0}md-menu-content.md-menu-bar-menu.md-dense .md-button,md-menu-content.md-menu-bar-menu.md-dense md-menu-item{height:40px;line-height:40px}md-menu-content.md-menu-bar-menu.md-dense .md-button.md-indent>md-icon,md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>md-icon{top:8px}.md-open-menu-container md-menu-content md-menu-item.selected{opacity:.4}md-menu-content md-menu-item .md-button{text-align:left}md-select.simplified{margin:0 8px}md-select.simplified .md-select-value{border:none!important;box-sizing:border-box;padding:0}md-select.simplified .md-select-value :first-child{transform:none;height:auto}md-select.simplified .md-select-value .md-select-icon{transform:none;font-size:16px}md-select.simplified .md-select-value .md-select-icon:after{top:1px}md-select[multiple] md-select-value>:first-child{display:flex}md-select[multiple] md-select-value>:first-child>:first-child{flex:0}md-select[multiple] md-select-value>:first-child .md-container{padding-right:6px}md-select[multiple] md-select-value>:first-child .md-container:first-of-type{padding-right:0}md-select-menu md-select-header{position:relative;display:flex;align-items:center;width:auto;height:48px;padding-left:10.667px;box-shadow:0 1px 0 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);cursor:pointer}md-select-menu md-select-header input[type=search]{border:none;outline:0;height:100%;width:100%;padding:0}md-sidenav{-webkit-overflow-scrolling:touch}md-toolbar.colored-toolbar{color:rgba(255,255,255,.87)}md-toolbar.colored-toolbar md-menu-bar md-menu._md-open>button{background:rgba(0,0,0,.12)}md-toolbar.colored-toolbar md-menu._md-open>button{background:rgba(0,0,0,.12)}md-toolbar.colored-toolbar input{color:rgba(255,255,255,.87)!important}md-progress-circular[disabled]{visibility:hidden}body,html{overflow:hidden!important}#main{position:absolute;top:0;right:0;bottom:0;left:0}body.boxed{background:#3f4450}body.boxed #main{overflow:hidden!important;width:100%;max-width:1280px;margin:0 auto;box-shadow:0 0 12px rgba(0,0,0,.45)}#layout-content-only{position:relative;height:100%;max-height:100%}#layout-content-only #content{position:absolute;top:0;right:0;bottom:0;left:0}#layout-content-with-toolbar{position:relative;height:100%;max-height:100%}#layout-content-with-toolbar #content{position:absolute;top:64px;right:0;bottom:0;left:0}#layout-vertical-navigation{height:100%;max-height:100%}#layout-vertical-navigation #content-container{position:relative;overflow:hidden}#layout-vertical-navigation #content-container #content{position:absolute;top:64px;right:0;bottom:0;left:0}#layout-vertical-navigation-fullwidth-toolbar{height:100%;max-height:100%}#layout-vertical-navigation-fullwidth-toolbar #main-container{position:relative}#layout-vertical-navigation-fullwidth-toolbar #main-container #content-container{position:relative;overflow:hidden}#layout-vertical-navigation-fullwidth-toolbar #main-container #content-container #content{position:absolute;top:0;right:0;bottom:0;left:0}#layout-vertical-navigation-fullwidth-toolbar-2{height:100%;max-height:100%}#layout-vertical-navigation-fullwidth-toolbar-2 #main-container{position:relative}#layout-vertical-navigation-fullwidth-toolbar-2 #main-container #content-container{position:relative;overflow:hidden}#layout-vertical-navigation-fullwidth-toolbar-2 #main-container #content-container #content{position:absolute;top:0;right:0;bottom:0;left:0}#layout-horizontal-navigation{height:100%;max-height:100%}#layout-horizontal-navigation #content-container{position:relative;overflow:hidden}#layout-horizontal-navigation #content-container #content{position:absolute;top:0;right:0;bottom:0;left:0}.page-layout{position:relative;overflow:hidden}.page-layout .top-bg{position:absolute;z-index:1;top:0;right:0;left:0;height:200px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout md-backdrop{z-index:50}.page-layout>.header .breadcrumb{margin-bottom:16px;font-weight:500;color:rgba(0,0,0,.54)}.page-layout>.header .breadcrumb md-icon{margin:0}.page-layout>.header .breadcrumb .separator{margin:0 8px}.page-layout>.header .title{font-size:34px}.page-layout.carded{min-height:100%;height:100%}.page-layout.carded.fullwidth.single-scroll{height:auto}.page-layout.carded.fullwidth.single-scroll>.center .content-card .content{overflow:hidden}.page-layout.carded.fullwidth>.center{position:relative;z-index:2;margin-left:32px;margin-right:32px}.page-layout.carded.fullwidth>.center .header{height:136px;min-height:136px;max-height:136px;padding:24px}.page-layout.carded.fullwidth>.center .content-card{background:#fff;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);overflow:hidden}.page-layout.carded.fullwidth>.center .content-card .toolbar{padding:8px 24px;height:64px;min-height:64px;max-height:64px;border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.fullwidth>.center .content-card .content{padding:24px;background:#fff}.page-layout.carded.left-sidenav.single-scroll{height:auto}.page-layout.carded.left-sidenav.single-scroll>.center .content-card .content{overflow:hidden}.page-layout.carded.left-sidenav>.sidenav{width:240px;min-width:240px;max-width:240px;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);z-index:51}.page-layout.carded.left-sidenav>.sidenav .header{height:200px;min-height:200px;max-height:200px;padding:24px}.page-layout.carded.left-sidenav>.sidenav .content{background:0 0;padding:24px}.page-layout.carded.left-sidenav>.sidenav.md-locked-open{width:220px;min-width:220px;max-width:220px;z-index:2;background:0 0;box-shadow:none}.page-layout.carded.left-sidenav>.sidenav.md-locked-open+.center{margin-left:0}.page-layout.carded.left-sidenav>.sidenav:not(.md-locked-open) .header{border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.left-sidenav>.sidenav:not(.md-locked-open) .content{overflow:hidden}.page-layout.carded.left-sidenav>.center{position:relative;z-index:2;margin-left:32px;margin-right:32px}.page-layout.carded.left-sidenav>.center .header{height:136px;min-height:136px;max-height:136px;padding:24px}.page-layout.carded.left-sidenav>.center .content-card{background:#fff;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);overflow:hidden}.page-layout.carded.left-sidenav>.center .content-card .toolbar{padding:8px 24px;height:64px;min-height:64px;max-height:64px;border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.left-sidenav>.center .content-card .toolbar .sidenav-toggle{margin:0 8px 0 0!important;padding:0!important;border-radius:0}.page-layout.carded.left-sidenav>.center .content-card .content{padding:24px;background:#fff}.page-layout.carded.right-sidenav.single-scroll{height:auto}.page-layout.carded.right-sidenav.single-scroll>.center .content-card .content{overflow:hidden}.page-layout.carded.right-sidenav>.sidenav{width:240px;min-width:240px;max-width:240px;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);z-index:51}.page-layout.carded.right-sidenav>.sidenav .header{height:200px;min-height:200px;max-height:200px;padding:24px 24px 24px 0}.page-layout.carded.right-sidenav>.sidenav .content{background:0 0;padding:24px 24px 24px 0}.page-layout.carded.right-sidenav>.sidenav.md-locked-open{width:196px;min-width:196px;max-width:196px;z-index:2;background:0 0;box-shadow:none}.page-layout.carded.right-sidenav>.sidenav:not(.md-locked-open) .header{padding:24px;border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.right-sidenav>.sidenav:not(.md-locked-open) .content{overflow:hidden;padding:24px}.page-layout.carded.right-sidenav>.center{position:relative;z-index:2;margin-left:32px;margin-right:32px}.page-layout.carded.right-sidenav>.center .header{height:136px;min-height:136px;max-height:136px;padding:24px}.page-layout.carded.right-sidenav>.center .content-card{background:#fff;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);overflow:hidden}.page-layout.carded.right-sidenav>.center .content-card .toolbar{padding:8px 24px;height:64px;min-height:64px;max-height:64px;border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.right-sidenav>.center .content-card .toolbar .sidenav-toggle{margin:0 0 0 8px!important;padding:0!important;border-radius:0}.page-layout.carded.right-sidenav>.center .content-card .content{padding:24px;background:#fff}.page-layout.simple.fullwidth,.page-layout.simple.inner-sidenav{min-height:100%}.page-layout.simple.fullwidth>.header,.page-layout.simple.inner-sidenav>.header{height:200px;min-height:200px;max-height:200px;padding:24px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout.simple.fullwidth>.content,.page-layout.simple.inner-sidenav>.content{padding:24px}.page-layout.simple.left-sidenav{min-height:100%;height:100%}.page-layout.simple.left-sidenav.single-scroll{height:auto}.page-layout.simple.left-sidenav.single-scroll>.center{overflow:hidden}.page-layout.simple.left-sidenav.inner-sidenav>.content>md-sidenav{margin-right:24px}.page-layout.simple.left-sidenav .sidenav{width:240px;min-width:240px;max-width:240px;padding:24px;z-index:51;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.page-layout.simple.left-sidenav .sidenav.md-locked-open{width:220px;min-width:220px;max-width:220px;z-index:2;box-shadow:none;background:0 0}.page-layout.simple.left-sidenav>.center{position:relative;overflow:auto;z-index:3;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.page-layout.simple.left-sidenav>.center .header{height:200px;min-height:200px;max-height:200px;padding:24px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout.simple.left-sidenav>.center .content{padding:24px;background:#fff}.page-layout.simple.right-sidenav{min-height:100%;height:100%}.page-layout.simple.right-sidenav.single-scroll{height:auto}.page-layout.simple.right-sidenav.single-scroll>.center{overflow:hidden}.page-layout.simple.right-sidenav.inner-sidenav>.content>md-sidenav{margin-left:24px}.page-layout.simple.right-sidenav .sidenav{width:240px;min-width:240px;max-width:240px;padding:24px;z-index:51;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.page-layout.simple.right-sidenav .sidenav.md-locked-open{width:220px;min-width:220px;max-width:220px;z-index:2;box-shadow:none;background:0 0}.page-layout.simple.right-sidenav>.center{position:relative;overflow:auto;z-index:3;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.page-layout.simple.right-sidenav>.center .header{height:200px;min-height:200px;max-height:200px;padding:24px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout.simple.right-sidenav>.center .content{padding:24px;background:#fff}.page-layout.simple.inner-sidenav{height:auto}.page-layout.simple.inner-sidenav>.content>md-sidenav.md-locked-open{padding:0}.page-layout.simple.tabbed{min-height:100%}.page-layout.simple.tabbed>.header{height:200px;min-height:200px;max-height:200px;padding:24px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-wrapper{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);padding:0 24px}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-wrapper md-tabs-canvas{height:56px}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-wrapper md-tabs-canvas md-pagination-wrapper{height:56px}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-wrapper md-tabs-canvas .md-tab{padding:16px 24px;text-transform:none}.page-layout.simple.tabbed>.content>md-tabs:not(.md-dynamic-height) md-tabs-content-wrapper{top:56px}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-content-wrapper>md-tab-content{padding:24px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);border:none;height:56px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar nav{margin:0 12px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar nav .md-nav-item{height:56px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar nav .md-nav-item ._md-nav-button{height:56px;line-height:32px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar nav .md-nav-item ._md-nav-button-text{text-transform:none}.page-layout.blank{min-height:100%;padding:24px}.single-scroll .carded.fullwidth{height:auto}.single-scroll .carded.fullwidth>.center .content-card .content{overflow:hidden}.single-scroll .carded.left-sidenav{height:auto}.single-scroll .carded.left-sidenav>.center .content-card .content{overflow:hidden}.single-scroll .carded.right-sidenav{height:auto}.single-scroll .carded.right-sidenav>.center .content-card .content{overflow:hidden}.single-scroll .simple.left-sidenav{height:auto}.single-scroll .simple.left-sidenav>.center{overflow:hidden}.single-scroll .simple.right-sidenav{height:auto}.single-scroll .simple.right-sidenav>.center{overflow:hidden}@media screen and (max-width:1280px){.page-layout.simple.inner-sidenav.left-sidenav>.content,.page-layout.simple.inner-sidenav.right-sidenav>.content{height:auto!important}.page-layout.simple.inner-sidenav.left-sidenav>.content>md-sidenav,.page-layout.simple.inner-sidenav.right-sidenav>.content>md-sidenav{margin-left:0;margin-right:0}.sidenav-open .page-layout.simple.inner-sidenav{height:100%}}@media screen and (max-width:600px){.page-layout .top-bg{height:160px}.page-layout.carded.fullwidth>.center,.page-layout.carded.left-sidenav>.center,.page-layout.carded.right-sidenav>.center{margin-left:16px;margin-right:16px}.page-layout.carded.fullwidth>.center .header,.page-layout.carded.left-sidenav>.center .header,.page-layout.carded.right-sidenav>.center .header{height:96px;min-height:96px;max-height:96px;padding:16px}.page-layout.carded.fullwidth{height:auto}.page-layout.carded.fullwidth>.center .content-card .content{overflow:hidden}.page-layout.carded.left-sidenav,.page-layout.carded.right-sidenav{height:auto}.page-layout.carded.left-sidenav>.center .content-card .content,.page-layout.carded.right-sidenav>.center .content-card .content{overflow:hidden}.page-layout.simple.fullwidth>.header,.page-layout.simple.inner-sidenav>.header{height:160px;min-height:160px;max-height:160px;padding:16px}.page-layout.simple.left-sidenav>.center .header,.page-layout.simple.right-sidenav>.center .header{height:160px;min-height:160px;max-height:160px;padding:16px}.page-layout.simple.left-sidenav,.page-layout.simple.right-sidenav{height:auto}.page-layout.simple.left-sidenav>.center,.page-layout.simple.right-sidenav>.center{overflow:hidden}}.animate-slide-up{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-slide-up.ng-enter{transform:translateY(100%);opacity:0}.animate-slide-up.ng-enter.ng-enter-active{transition-property:all;transform:translateY(0);opacity:1}.animate-slide-up.ng-leave{transform:translateY(0);opacity:1}.animate-slide-up.ng-leave.ng-leave-active{transition-property:all;transform:translateY(-100%);opacity:0}.animate-slide-up.ng-hide{transform:translateY(-100%);opacity:0}.animate-slide-up.ng-hide-add-active,.animate-slide-up.ng-hide-remove-active{transition-property:all}.animate-slide-down{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-slide-down.ng-enter{transform:translateY(-100%);opacity:0}.animate-slide-down.ng-enter.ng-enter-active{transition-property:all;transform:translateY(0);opacity:1}.animate-slide-down.ng-leave{transform:translateY(0);opacity:1}.animate-slide-down.ng-leave.ng-leave-active{transition-property:all;transform:translateY(100%);opacity:0}.animate-slide-down.ng-hide{transform:translateY(-100%);opacity:0}.animate-slide-down.ng-hide-add-active,.animate-slide-down.ng-hide-remove-active{transition-property:all}.animate-slide-left{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-slide-left.ng-enter{transform:translateX(100%);opacity:0}.animate-slide-left.ng-enter.ng-enter-active{transition-property:all;transform:translateX(0);opacity:1}.animate-slide-left.ng-leave{transform:translateX(0);opacity:1}.animate-slide-left.ng-leave.ng-leave-active{transition-property:all;transform:translateX(-100%);opacity:0}.animate-slide-left.ng-hide{transform:translateX(-100%);opacity:0}.animate-slide-left.ng-hide-add-active,.animate-slide-left.ng-hide-remove-active{transition-property:all}.animate-slide-right{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-slide-right.ng-enter{transform:translateX(-100%);opacity:0}.animate-slide-right.ng-enter.ng-enter-active{transition-property:all;transform:translateX(0);opacity:1}.animate-slide-right.ng-leave{transform:translateX(0);opacity:1}.animate-slide-right.ng-leave.ng-leave-active{transition-property:all;transform:translateX(100%);opacity:0}.animate-slide-right.ng-hide{transform:translateX(100%);opacity:0}.animate-slide-right.ng-hide-add-active,.animate-slide-right.ng-hide-remove-active{transition-property:all}.animate-fade-in-out{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-fade-in-out.ng-enter{opacity:0}.animate-fade-in-out.ng-enter.ng-enter-active{transition-property:all;opacity:1}.animate-fade-in-out.ng-leave{opacity:1}.animate-fade-in-out.ng-leave.ng-leave-active{transition-property:all;opacity:0}.animate-fade-in-out.ng-hide{opacity:0}.animate-fade-in-out.ng-hide-add-active,.animate-fade-in-out.ng-hide-remove-active{transition-property:all}@keyframes slide-in-left{0%{opacity:0;transform:translateX(-500px)}65%{opacity:1;transform:translateX(0)}100%{transform:translateX(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translateX(500px)}65%{opacity:1;transform:translateX(0)}100%{transform:translateX(0)}}@keyframes slide-in-bottom{0%{opacity:0;transform:translateY(200px)}65%{opacity:1;transform:translateY(0)}100%{transform:translateY(0)}}.animate-rotate{animation:rotate 1.75s linear infinite}@keyframes rotate{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.black-fg,.black-text{color:rgba(0,0,0,.87)!important}.black-fg .icon,.black-fg .secondary-text,.black-fg.icon,.black-fg.secondary-text,.black-text .icon,.black-text .secondary-text,.black-text.icon,.black-text.secondary-text{color:rgba(0,0,0,.54)!important}.black-fg .disabled-text,.black-fg .hint-text,.black-fg.disabled-text,.black-fg.hint-text,.black-text .disabled-text,.black-text .hint-text,.black-text.disabled-text,.black-text.hint-text{color:rgba(0,0,0,.26)!important}.black-fg .divider,.black-fg .faint-text,.black-fg.divider,.black-fg.faint-text,.black-text .divider,.black-text .faint-text,.black-text.divider,.black-text.faint-text{color:rgba(0,0,0,.12)!important}.white-fg,.white-text{color:#fff!important}.white-fg .icon,.white-fg .secondary-text,.white-fg.icon,.white-fg.secondary-text,.white-text .icon,.white-text .secondary-text,.white-text.icon,.white-text.secondary-text{color:rgba(255,255,255,.7)!important}.white-fg .disabled-text,.white-fg .hint-text,.white-fg.disabled-text,.white-fg.hint-text,.white-text .disabled-text,.white-text .hint-text,.white-text.disabled-text,.white-text.hint-text{color:rgba(255,255,255,.3)!important}.white-fg .divider,.white-fg .faint-text,.white-fg.divider,.white-fg.faint-text,.white-text .divider,.white-text .faint-text,.white-text.divider,.white-text.faint-text{color:rgba(255,255,255,.12)!important}.white-fg md-icon,.white-text md-icon{color:#fff}.white-fg md-progress-linear .md-container,.white-text md-progress-linear .md-container{background:rgba(255,255,255,.3)}.white-fg md-progress-linear .md-bar,.white-text md-progress-linear .md-bar{background:rgba(255,255,255,.7)}.red-50-bg{background-color:#ffebee!important}.md-red-50-bg{background-color:#ffebee!important;color:rgba(0,0,0,.87)}.red-50-fg{color:#ffebee!important}.red-50-border{border-color:#ffebee!important}.red-50-border-top{border-top-color:#ffebee!important}.red-50-border-right{border-right-color:#ffebee!important}.red-50-border-bottom{border-bottom-color:#ffebee!important}.red-50-border-left{border-left-color:#ffebee!important}.red-100-bg{background-color:#ffcdd2!important}.md-red-100-bg{background-color:#ffcdd2!important;color:rgba(0,0,0,.87)}.red-100-fg{color:#ffcdd2!important}.red-100-border{border-color:#ffcdd2!important}.red-100-border-top{border-top-color:#ffcdd2!important}.red-100-border-right{border-right-color:#ffcdd2!important}.red-100-border-bottom{border-bottom-color:#ffcdd2!important}.red-100-border-left{border-left-color:#ffcdd2!important}.red-200-bg{background-color:#ef9a9a!important}.md-red-200-bg{background-color:#ef9a9a!important;color:rgba(0,0,0,.87)}.red-200-fg{color:#ef9a9a!important}.red-200-border{border-color:#ef9a9a!important}.red-200-border-top{border-top-color:#ef9a9a!important}.red-200-border-right{border-right-color:#ef9a9a!important}.red-200-border-bottom{border-bottom-color:#ef9a9a!important}.red-200-border-left{border-left-color:#ef9a9a!important}.red-300-bg{background-color:#e57373!important}.md-red-300-bg{background-color:#e57373!important;color:rgba(0,0,0,.87)}.red-300-fg{color:#e57373!important}.red-300-border{border-color:#e57373!important}.red-300-border-top{border-top-color:#e57373!important}.red-300-border-right{border-right-color:#e57373!important}.red-300-border-bottom{border-bottom-color:#e57373!important}.red-300-border-left{border-left-color:#e57373!important}.red-400-bg{background-color:#ef5350!important}.md-red-400-bg{background-color:#ef5350!important;color:#fff}.red-400-fg{color:#ef5350!important}.red-400-border{border-color:#ef5350!important}.red-400-border-top{border-top-color:#ef5350!important}.red-400-border-right{border-right-color:#ef5350!important}.red-400-border-bottom{border-bottom-color:#ef5350!important}.red-400-border-left{border-left-color:#ef5350!important}.red-500-bg{background-color:#f44336!important}.md-red-500-bg{background-color:#f44336!important;color:#fff}.red-500-fg{color:#f44336!important}.red-500-border{border-color:#f44336!important}.red-500-border-top{border-top-color:#f44336!important}.red-500-border-right{border-right-color:#f44336!important}.red-500-border-bottom{border-bottom-color:#f44336!important}.red-500-border-left{border-left-color:#f44336!important}.md-red-bg{background-color:#f44336!important;color:#fff}.red-bg{background-color:#f44336!important}.red-fg{color:#f44336!important}.red-border{border-color:#f44336!important}.red-border-top{border-top-color:#f44336!important}.red-border-right{border-right-color:#f44336!important}.red-border-bottom{border-bottom-color:#f44336!important}.red-border-left{border-left-color:#f44336!important}.red-600-bg{background-color:#e53935!important}.md-red-600-bg{background-color:#e53935!important;color:#fff}.red-600-fg{color:#e53935!important}.red-600-border{border-color:#e53935!important}.red-600-border-top{border-top-color:#e53935!important}.red-600-border-right{border-right-color:#e53935!important}.red-600-border-bottom{border-bottom-color:#e53935!important}.red-600-border-left{border-left-color:#e53935!important}.red-700-bg{background-color:#d32f2f!important}.md-red-700-bg{background-color:#d32f2f!important;color:#fff}.red-700-fg{color:#d32f2f!important}.red-700-border{border-color:#d32f2f!important}.red-700-border-top{border-top-color:#d32f2f!important}.red-700-border-right{border-right-color:#d32f2f!important}.red-700-border-bottom{border-bottom-color:#d32f2f!important}.red-700-border-left{border-left-color:#d32f2f!important}.red-800-bg{background-color:#c62828!important}.md-red-800-bg{background-color:#c62828!important;color:rgba(255,255,255,.87)}.red-800-fg{color:#c62828!important}.red-800-border{border-color:#c62828!important}.red-800-border-top{border-top-color:#c62828!important}.red-800-border-right{border-right-color:#c62828!important}.red-800-border-bottom{border-bottom-color:#c62828!important}.red-800-border-left{border-left-color:#c62828!important}.red-900-bg{background-color:#b71c1c!important}.md-red-900-bg{background-color:#b71c1c!important;color:rgba(255,255,255,.87)}.red-900-fg{color:#b71c1c!important}.red-900-border{border-color:#b71c1c!important}.red-900-border-top{border-top-color:#b71c1c!important}.red-900-border-right{border-right-color:#b71c1c!important}.red-900-border-bottom{border-bottom-color:#b71c1c!important}.red-900-border-left{border-left-color:#b71c1c!important}.red-A100-bg{background-color:#ff8a80!important}.md-red-A100-bg{background-color:#ff8a80!important;color:rgba(0,0,0,.87)}.red-A100-fg{color:#ff8a80!important}.red-A100-border{border-color:#ff8a80!important}.red-A100-border-top{border-top-color:#ff8a80!important}.red-A100-border-right{border-right-color:#ff8a80!important}.red-A100-border-bottom{border-bottom-color:#ff8a80!important}.red-A100-border-left{border-left-color:#ff8a80!important}.red-A200-bg{background-color:#ff5252!important}.md-red-A200-bg{background-color:#ff5252!important;color:#fff}.red-A200-fg{color:#ff5252!important}.red-A200-border{border-color:#ff5252!important}.red-A200-border-top{border-top-color:#ff5252!important}.red-A200-border-right{border-right-color:#ff5252!important}.red-A200-border-bottom{border-bottom-color:#ff5252!important}.red-A200-border-left{border-left-color:#ff5252!important}.red-A400-bg{background-color:#ff1744!important}.md-red-A400-bg{background-color:#ff1744!important;color:#fff}.red-A400-fg{color:#ff1744!important}.red-A400-border{border-color:#ff1744!important}.red-A400-border-top{border-top-color:#ff1744!important}.red-A400-border-right{border-right-color:#ff1744!important}.red-A400-border-bottom{border-bottom-color:#ff1744!important}.red-A400-border-left{border-left-color:#ff1744!important}.red-A700-bg{background-color:#d50000!important}.md-red-A700-bg{background-color:#d50000!important;color:#fff}.red-A700-fg{color:#d50000!important}.red-A700-border{border-color:#d50000!important}.red-A700-border-top{border-top-color:#d50000!important}.red-A700-border-right{border-right-color:#d50000!important}.red-A700-border-bottom{border-bottom-color:#d50000!important}.red-A700-border-left{border-left-color:#d50000!important}.pink-50-bg{background-color:#fce4ec!important}.md-pink-50-bg{background-color:#fce4ec!important;color:rgba(0,0,0,.87)}.pink-50-fg{color:#fce4ec!important}.pink-50-border{border-color:#fce4ec!important}.pink-50-border-top{border-top-color:#fce4ec!important}.pink-50-border-right{border-right-color:#fce4ec!important}.pink-50-border-bottom{border-bottom-color:#fce4ec!important}.pink-50-border-left{border-left-color:#fce4ec!important}.pink-100-bg{background-color:#f8bbd0!important}.md-pink-100-bg{background-color:#f8bbd0!important;color:rgba(0,0,0,.87)}.pink-100-fg{color:#f8bbd0!important}.pink-100-border{border-color:#f8bbd0!important}.pink-100-border-top{border-top-color:#f8bbd0!important}.pink-100-border-right{border-right-color:#f8bbd0!important}.pink-100-border-bottom{border-bottom-color:#f8bbd0!important}.pink-100-border-left{border-left-color:#f8bbd0!important}.pink-200-bg{background-color:#f48fb1!important}.md-pink-200-bg{background-color:#f48fb1!important;color:rgba(0,0,0,.87)}.pink-200-fg{color:#f48fb1!important}.pink-200-border{border-color:#f48fb1!important}.pink-200-border-top{border-top-color:#f48fb1!important}.pink-200-border-right{border-right-color:#f48fb1!important}.pink-200-border-bottom{border-bottom-color:#f48fb1!important}.pink-200-border-left{border-left-color:#f48fb1!important}.pink-300-bg{background-color:#f06292!important}.md-pink-300-bg{background-color:#f06292!important;color:rgba(255,255,255,.87)}.pink-300-fg{color:#f06292!important}.pink-300-border{border-color:#f06292!important}.pink-300-border-top{border-top-color:#f06292!important}.pink-300-border-right{border-right-color:#f06292!important}.pink-300-border-bottom{border-bottom-color:#f06292!important}.pink-300-border-left{border-left-color:#f06292!important}.pink-400-bg{background-color:#ec407a!important}.md-pink-400-bg{background-color:#ec407a!important;color:rgba(255,255,255,.87)}.pink-400-fg{color:#ec407a!important}.pink-400-border{border-color:#ec407a!important}.pink-400-border-top{border-top-color:#ec407a!important}.pink-400-border-right{border-right-color:#ec407a!important}.pink-400-border-bottom{border-bottom-color:#ec407a!important}.pink-400-border-left{border-left-color:#ec407a!important}.pink-500-bg{background-color:#e91e63!important}.md-pink-500-bg{background-color:#e91e63!important;color:#fff}.pink-500-fg{color:#e91e63!important}.pink-500-border{border-color:#e91e63!important}.pink-500-border-top{border-top-color:#e91e63!important}.pink-500-border-right{border-right-color:#e91e63!important}.pink-500-border-bottom{border-bottom-color:#e91e63!important}.pink-500-border-left{border-left-color:#e91e63!important}.md-pink-bg{background-color:#e91e63!important;color:#fff}.pink-bg{background-color:#e91e63!important}.pink-fg{color:#e91e63!important}.pink-border{border-color:#e91e63!important}.pink-border-top{border-top-color:#e91e63!important}.pink-border-right{border-right-color:#e91e63!important}.pink-border-bottom{border-bottom-color:#e91e63!important}.pink-border-left{border-left-color:#e91e63!important}.pink-600-bg{background-color:#d81b60!important}.md-pink-600-bg{background-color:#d81b60!important;color:#fff}.pink-600-fg{color:#d81b60!important}.pink-600-border{border-color:#d81b60!important}.pink-600-border-top{border-top-color:#d81b60!important}.pink-600-border-right{border-right-color:#d81b60!important}.pink-600-border-bottom{border-bottom-color:#d81b60!important}.pink-600-border-left{border-left-color:#d81b60!important}.pink-700-bg{background-color:#c2185b!important}.md-pink-700-bg{background-color:#c2185b!important;color:rgba(255,255,255,.87)}.pink-700-fg{color:#c2185b!important}.pink-700-border{border-color:#c2185b!important}.pink-700-border-top{border-top-color:#c2185b!important}.pink-700-border-right{border-right-color:#c2185b!important}.pink-700-border-bottom{border-bottom-color:#c2185b!important}.pink-700-border-left{border-left-color:#c2185b!important}.pink-800-bg{background-color:#ad1457!important}.md-pink-800-bg{background-color:#ad1457!important;color:rgba(255,255,255,.87)}.pink-800-fg{color:#ad1457!important}.pink-800-border{border-color:#ad1457!important}.pink-800-border-top{border-top-color:#ad1457!important}.pink-800-border-right{border-right-color:#ad1457!important}.pink-800-border-bottom{border-bottom-color:#ad1457!important}.pink-800-border-left{border-left-color:#ad1457!important}.pink-900-bg{background-color:#880e4f!important}.md-pink-900-bg{background-color:#880e4f!important;color:rgba(255,255,255,.87)}.pink-900-fg{color:#880e4f!important}.pink-900-border{border-color:#880e4f!important}.pink-900-border-top{border-top-color:#880e4f!important}.pink-900-border-right{border-right-color:#880e4f!important}.pink-900-border-bottom{border-bottom-color:#880e4f!important}.pink-900-border-left{border-left-color:#880e4f!important}.pink-A100-bg{background-color:#ff80ab!important}.md-pink-A100-bg{background-color:#ff80ab!important;color:rgba(0,0,0,.87)}.pink-A100-fg{color:#ff80ab!important}.pink-A100-border{border-color:#ff80ab!important}.pink-A100-border-top{border-top-color:#ff80ab!important}.pink-A100-border-right{border-right-color:#ff80ab!important}.pink-A100-border-bottom{border-bottom-color:#ff80ab!important}.pink-A100-border-left{border-left-color:#ff80ab!important}.pink-A200-bg{background-color:#ff4081!important}.md-pink-A200-bg{background-color:#ff4081!important;color:#fff}.pink-A200-fg{color:#ff4081!important}.pink-A200-border{border-color:#ff4081!important}.pink-A200-border-top{border-top-color:#ff4081!important}.pink-A200-border-right{border-right-color:#ff4081!important}.pink-A200-border-bottom{border-bottom-color:#ff4081!important}.pink-A200-border-left{border-left-color:#ff4081!important}.pink-A400-bg{background-color:#f50057!important}.md-pink-A400-bg{background-color:#f50057!important;color:#fff}.pink-A400-fg{color:#f50057!important}.pink-A400-border{border-color:#f50057!important}.pink-A400-border-top{border-top-color:#f50057!important}.pink-A400-border-right{border-right-color:#f50057!important}.pink-A400-border-bottom{border-bottom-color:#f50057!important}.pink-A400-border-left{border-left-color:#f50057!important}.pink-A700-bg{background-color:#c51162!important}.md-pink-A700-bg{background-color:#c51162!important;color:#fff}.pink-A700-fg{color:#c51162!important}.pink-A700-border{border-color:#c51162!important}.pink-A700-border-top{border-top-color:#c51162!important}.pink-A700-border-right{border-right-color:#c51162!important}.pink-A700-border-bottom{border-bottom-color:#c51162!important}.pink-A700-border-left{border-left-color:#c51162!important}.purple-50-bg{background-color:#f3e5f5!important}.md-purple-50-bg{background-color:#f3e5f5!important;color:rgba(0,0,0,.87)}.purple-50-fg{color:#f3e5f5!important}.purple-50-border{border-color:#f3e5f5!important}.purple-50-border-top{border-top-color:#f3e5f5!important}.purple-50-border-right{border-right-color:#f3e5f5!important}.purple-50-border-bottom{border-bottom-color:#f3e5f5!important}.purple-50-border-left{border-left-color:#f3e5f5!important}.purple-100-bg{background-color:#e1bee7!important}.md-purple-100-bg{background-color:#e1bee7!important;color:rgba(0,0,0,.87)}.purple-100-fg{color:#e1bee7!important}.purple-100-border{border-color:#e1bee7!important}.purple-100-border-top{border-top-color:#e1bee7!important}.purple-100-border-right{border-right-color:#e1bee7!important}.purple-100-border-bottom{border-bottom-color:#e1bee7!important}.purple-100-border-left{border-left-color:#e1bee7!important}.purple-200-bg{background-color:#ce93d8!important}.md-purple-200-bg{background-color:#ce93d8!important;color:rgba(0,0,0,.87)}.purple-200-fg{color:#ce93d8!important}.purple-200-border{border-color:#ce93d8!important}.purple-200-border-top{border-top-color:#ce93d8!important}.purple-200-border-right{border-right-color:#ce93d8!important}.purple-200-border-bottom{border-bottom-color:#ce93d8!important}.purple-200-border-left{border-left-color:#ce93d8!important}.purple-300-bg{background-color:#ba68c8!important}.md-purple-300-bg{background-color:#ba68c8!important;color:#fff}.purple-300-fg{color:#ba68c8!important}.purple-300-border{border-color:#ba68c8!important}.purple-300-border-top{border-top-color:#ba68c8!important}.purple-300-border-right{border-right-color:#ba68c8!important}.purple-300-border-bottom{border-bottom-color:#ba68c8!important}.purple-300-border-left{border-left-color:#ba68c8!important}.purple-400-bg{background-color:#ab47bc!important}.md-purple-400-bg{background-color:#ab47bc!important;color:#fff}.purple-400-fg{color:#ab47bc!important}.purple-400-border{border-color:#ab47bc!important}.purple-400-border-top{border-top-color:#ab47bc!important}.purple-400-border-right{border-right-color:#ab47bc!important}.purple-400-border-bottom{border-bottom-color:#ab47bc!important}.purple-400-border-left{border-left-color:#ab47bc!important}.purple-500-bg{background-color:#9c27b0!important}.md-purple-500-bg{background-color:#9c27b0!important;color:rgba(255,255,255,.87)}.purple-500-fg{color:#9c27b0!important}.purple-500-border{border-color:#9c27b0!important}.purple-500-border-top{border-top-color:#9c27b0!important}.purple-500-border-right{border-right-color:#9c27b0!important}.purple-500-border-bottom{border-bottom-color:#9c27b0!important}.purple-500-border-left{border-left-color:#9c27b0!important}.md-purple-bg{background-color:#9c27b0!important;color:rgba(255,255,255,.87)}.purple-bg{background-color:#9c27b0!important}.purple-fg{color:#9c27b0!important}.purple-border{border-color:#9c27b0!important}.purple-border-top{border-top-color:#9c27b0!important}.purple-border-right{border-right-color:#9c27b0!important}.purple-border-bottom{border-bottom-color:#9c27b0!important}.purple-border-left{border-left-color:#9c27b0!important}.purple-600-bg{background-color:#8e24aa!important}.md-purple-600-bg{background-color:#8e24aa!important;color:rgba(255,255,255,.87)}.purple-600-fg{color:#8e24aa!important}.purple-600-border{border-color:#8e24aa!important}.purple-600-border-top{border-top-color:#8e24aa!important}.purple-600-border-right{border-right-color:#8e24aa!important}.purple-600-border-bottom{border-bottom-color:#8e24aa!important}.purple-600-border-left{border-left-color:#8e24aa!important}.purple-700-bg{background-color:#7b1fa2!important}.md-purple-700-bg{background-color:#7b1fa2!important;color:rgba(255,255,255,.87)}.purple-700-fg{color:#7b1fa2!important}.purple-700-border{border-color:#7b1fa2!important}.purple-700-border-top{border-top-color:#7b1fa2!important}.purple-700-border-right{border-right-color:#7b1fa2!important}.purple-700-border-bottom{border-bottom-color:#7b1fa2!important}.purple-700-border-left{border-left-color:#7b1fa2!important}.purple-800-bg{background-color:#6a1b9a!important}.md-purple-800-bg{background-color:#6a1b9a!important;color:rgba(255,255,255,.87)}.purple-800-fg{color:#6a1b9a!important}.purple-800-border{border-color:#6a1b9a!important}.purple-800-border-top{border-top-color:#6a1b9a!important}.purple-800-border-right{border-right-color:#6a1b9a!important}.purple-800-border-bottom{border-bottom-color:#6a1b9a!important}.purple-800-border-left{border-left-color:#6a1b9a!important}.purple-900-bg{background-color:#4a148c!important}.md-purple-900-bg{background-color:#4a148c!important;color:rgba(255,255,255,.87)}.purple-900-fg{color:#4a148c!important}.purple-900-border{border-color:#4a148c!important}.purple-900-border-top{border-top-color:#4a148c!important}.purple-900-border-right{border-right-color:#4a148c!important}.purple-900-border-bottom{border-bottom-color:#4a148c!important}.purple-900-border-left{border-left-color:#4a148c!important}.purple-A100-bg{background-color:#ea80fc!important}.md-purple-A100-bg{background-color:#ea80fc!important;color:rgba(0,0,0,.87)}.purple-A100-fg{color:#ea80fc!important}.purple-A100-border{border-color:#ea80fc!important}.purple-A100-border-top{border-top-color:#ea80fc!important}.purple-A100-border-right{border-right-color:#ea80fc!important}.purple-A100-border-bottom{border-bottom-color:#ea80fc!important}.purple-A100-border-left{border-left-color:#ea80fc!important}.purple-A200-bg{background-color:#e040fb!important}.md-purple-A200-bg{background-color:#e040fb!important;color:#fff}.purple-A200-fg{color:#e040fb!important}.purple-A200-border{border-color:#e040fb!important}.purple-A200-border-top{border-top-color:#e040fb!important}.purple-A200-border-right{border-right-color:#e040fb!important}.purple-A200-border-bottom{border-bottom-color:#e040fb!important}.purple-A200-border-left{border-left-color:#e040fb!important}.purple-A400-bg{background-color:#d500f9!important}.md-purple-A400-bg{background-color:#d500f9!important;color:#fff}.purple-A400-fg{color:#d500f9!important}.purple-A400-border{border-color:#d500f9!important}.purple-A400-border-top{border-top-color:#d500f9!important}.purple-A400-border-right{border-right-color:#d500f9!important}.purple-A400-border-bottom{border-bottom-color:#d500f9!important}.purple-A400-border-left{border-left-color:#d500f9!important}.purple-A700-bg{background-color:#a0f!important}.md-purple-A700-bg{background-color:#a0f!important;color:#fff}.purple-A700-fg{color:#a0f!important}.purple-A700-border{border-color:#a0f!important}.purple-A700-border-top{border-top-color:#a0f!important}.purple-A700-border-right{border-right-color:#a0f!important}.purple-A700-border-bottom{border-bottom-color:#a0f!important}.purple-A700-border-left{border-left-color:#a0f!important}.deep-purple-50-bg{background-color:#ede7f6!important}.md-deep-purple-50-bg{background-color:#ede7f6!important;color:rgba(0,0,0,.87)}.deep-purple-50-fg{color:#ede7f6!important}.deep-purple-50-border{border-color:#ede7f6!important}.deep-purple-50-border-top{border-top-color:#ede7f6!important}.deep-purple-50-border-right{border-right-color:#ede7f6!important}.deep-purple-50-border-bottom{border-bottom-color:#ede7f6!important}.deep-purple-50-border-left{border-left-color:#ede7f6!important}.deep-purple-100-bg{background-color:#d1c4e9!important}.md-deep-purple-100-bg{background-color:#d1c4e9!important;color:rgba(0,0,0,.87)}.deep-purple-100-fg{color:#d1c4e9!important}.deep-purple-100-border{border-color:#d1c4e9!important}.deep-purple-100-border-top{border-top-color:#d1c4e9!important}.deep-purple-100-border-right{border-right-color:#d1c4e9!important}.deep-purple-100-border-bottom{border-bottom-color:#d1c4e9!important}.deep-purple-100-border-left{border-left-color:#d1c4e9!important}.deep-purple-200-bg{background-color:#b39ddb!important}.md-deep-purple-200-bg{background-color:#b39ddb!important;color:rgba(0,0,0,.87)}.deep-purple-200-fg{color:#b39ddb!important}.deep-purple-200-border{border-color:#b39ddb!important}.deep-purple-200-border-top{border-top-color:#b39ddb!important}.deep-purple-200-border-right{border-right-color:#b39ddb!important}.deep-purple-200-border-bottom{border-bottom-color:#b39ddb!important}.deep-purple-200-border-left{border-left-color:#b39ddb!important}.deep-purple-300-bg{background-color:#9575cd!important}.md-deep-purple-300-bg{background-color:#9575cd!important;color:#fff}.deep-purple-300-fg{color:#9575cd!important}.deep-purple-300-border{border-color:#9575cd!important}.deep-purple-300-border-top{border-top-color:#9575cd!important}.deep-purple-300-border-right{border-right-color:#9575cd!important}.deep-purple-300-border-bottom{border-bottom-color:#9575cd!important}.deep-purple-300-border-left{border-left-color:#9575cd!important}.deep-purple-400-bg{background-color:#7e57c2!important}.md-deep-purple-400-bg{background-color:#7e57c2!important;color:#fff}.deep-purple-400-fg{color:#7e57c2!important}.deep-purple-400-border{border-color:#7e57c2!important}.deep-purple-400-border-top{border-top-color:#7e57c2!important}.deep-purple-400-border-right{border-right-color:#7e57c2!important}.deep-purple-400-border-bottom{border-bottom-color:#7e57c2!important}.deep-purple-400-border-left{border-left-color:#7e57c2!important}.deep-purple-500-bg{background-color:#673ab7!important}.md-deep-purple-500-bg{background-color:#673ab7!important;color:rgba(255,255,255,.87)}.deep-purple-500-fg{color:#673ab7!important}.deep-purple-500-border{border-color:#673ab7!important}.deep-purple-500-border-top{border-top-color:#673ab7!important}.deep-purple-500-border-right{border-right-color:#673ab7!important}.deep-purple-500-border-bottom{border-bottom-color:#673ab7!important}.deep-purple-500-border-left{border-left-color:#673ab7!important}.md-deep-purple-bg{background-color:#673ab7!important;color:rgba(255,255,255,.87)}.deep-purple-bg{background-color:#673ab7!important}.deep-purple-fg{color:#673ab7!important}.deep-purple-border{border-color:#673ab7!important}.deep-purple-border-top{border-top-color:#673ab7!important}.deep-purple-border-right{border-right-color:#673ab7!important}.deep-purple-border-bottom{border-bottom-color:#673ab7!important}.deep-purple-border-left{border-left-color:#673ab7!important}.deep-purple-600-bg{background-color:#5e35b1!important}.md-deep-purple-600-bg{background-color:#5e35b1!important;color:rgba(255,255,255,.87)}.deep-purple-600-fg{color:#5e35b1!important}.deep-purple-600-border{border-color:#5e35b1!important}.deep-purple-600-border-top{border-top-color:#5e35b1!important}.deep-purple-600-border-right{border-right-color:#5e35b1!important}.deep-purple-600-border-bottom{border-bottom-color:#5e35b1!important}.deep-purple-600-border-left{border-left-color:#5e35b1!important}.deep-purple-700-bg{background-color:#512da8!important}.md-deep-purple-700-bg{background-color:#512da8!important;color:rgba(255,255,255,.87)}.deep-purple-700-fg{color:#512da8!important}.deep-purple-700-border{border-color:#512da8!important}.deep-purple-700-border-top{border-top-color:#512da8!important}.deep-purple-700-border-right{border-right-color:#512da8!important}.deep-purple-700-border-bottom{border-bottom-color:#512da8!important}.deep-purple-700-border-left{border-left-color:#512da8!important}.deep-purple-800-bg{background-color:#4527a0!important}.md-deep-purple-800-bg{background-color:#4527a0!important;color:rgba(255,255,255,.87)}.deep-purple-800-fg{color:#4527a0!important}.deep-purple-800-border{border-color:#4527a0!important}.deep-purple-800-border-top{border-top-color:#4527a0!important}.deep-purple-800-border-right{border-right-color:#4527a0!important}.deep-purple-800-border-bottom{border-bottom-color:#4527a0!important}.deep-purple-800-border-left{border-left-color:#4527a0!important}.deep-purple-900-bg{background-color:#311b92!important}.md-deep-purple-900-bg{background-color:#311b92!important;color:rgba(255,255,255,.87)}.deep-purple-900-fg{color:#311b92!important}.deep-purple-900-border{border-color:#311b92!important}.deep-purple-900-border-top{border-top-color:#311b92!important}.deep-purple-900-border-right{border-right-color:#311b92!important}.deep-purple-900-border-bottom{border-bottom-color:#311b92!important}.deep-purple-900-border-left{border-left-color:#311b92!important}.deep-purple-A100-bg{background-color:#b388ff!important}.md-deep-purple-A100-bg{background-color:#b388ff!important;color:rgba(0,0,0,.87)}.deep-purple-A100-fg{color:#b388ff!important}.deep-purple-A100-border{border-color:#b388ff!important}.deep-purple-A100-border-top{border-top-color:#b388ff!important}.deep-purple-A100-border-right{border-right-color:#b388ff!important}.deep-purple-A100-border-bottom{border-bottom-color:#b388ff!important}.deep-purple-A100-border-left{border-left-color:#b388ff!important}.deep-purple-A200-bg{background-color:#7c4dff!important}.md-deep-purple-A200-bg{background-color:#7c4dff!important;color:#fff}.deep-purple-A200-fg{color:#7c4dff!important}.deep-purple-A200-border{border-color:#7c4dff!important}.deep-purple-A200-border-top{border-top-color:#7c4dff!important}.deep-purple-A200-border-right{border-right-color:#7c4dff!important}.deep-purple-A200-border-bottom{border-bottom-color:#7c4dff!important}.deep-purple-A200-border-left{border-left-color:#7c4dff!important}.deep-purple-A400-bg{background-color:#651fff!important}.md-deep-purple-A400-bg{background-color:#651fff!important;color:rgba(255,255,255,.87)}.deep-purple-A400-fg{color:#651fff!important}.deep-purple-A400-border{border-color:#651fff!important}.deep-purple-A400-border-top{border-top-color:#651fff!important}.deep-purple-A400-border-right{border-right-color:#651fff!important}.deep-purple-A400-border-bottom{border-bottom-color:#651fff!important}.deep-purple-A400-border-left{border-left-color:#651fff!important}.deep-purple-A700-bg{background-color:#6200ea!important}.md-deep-purple-A700-bg{background-color:#6200ea!important;color:rgba(255,255,255,.87)}.deep-purple-A700-fg{color:#6200ea!important}.deep-purple-A700-border{border-color:#6200ea!important}.deep-purple-A700-border-top{border-top-color:#6200ea!important}.deep-purple-A700-border-right{border-right-color:#6200ea!important}.deep-purple-A700-border-bottom{border-bottom-color:#6200ea!important}.deep-purple-A700-border-left{border-left-color:#6200ea!important}.indigo-50-bg{background-color:#e8eaf6!important}.md-indigo-50-bg{background-color:#e8eaf6!important;color:rgba(0,0,0,.87)}.indigo-50-fg{color:#e8eaf6!important}.indigo-50-border{border-color:#e8eaf6!important}.indigo-50-border-top{border-top-color:#e8eaf6!important}.indigo-50-border-right{border-right-color:#e8eaf6!important}.indigo-50-border-bottom{border-bottom-color:#e8eaf6!important}.indigo-50-border-left{border-left-color:#e8eaf6!important}.indigo-100-bg{background-color:#c5cae9!important}.md-indigo-100-bg{background-color:#c5cae9!important;color:rgba(0,0,0,.87)}.indigo-100-fg{color:#c5cae9!important}.indigo-100-border{border-color:#c5cae9!important}.indigo-100-border-top{border-top-color:#c5cae9!important}.indigo-100-border-right{border-right-color:#c5cae9!important}.indigo-100-border-bottom{border-bottom-color:#c5cae9!important}.indigo-100-border-left{border-left-color:#c5cae9!important}.indigo-200-bg{background-color:#9fa8da!important}.md-indigo-200-bg{background-color:#9fa8da!important;color:rgba(0,0,0,.87)}.indigo-200-fg{color:#9fa8da!important}.indigo-200-border{border-color:#9fa8da!important}.indigo-200-border-top{border-top-color:#9fa8da!important}.indigo-200-border-right{border-right-color:#9fa8da!important}.indigo-200-border-bottom{border-bottom-color:#9fa8da!important}.indigo-200-border-left{border-left-color:#9fa8da!important}.indigo-300-bg{background-color:#7986cb!important}.md-indigo-300-bg{background-color:#7986cb!important;color:#fff}.indigo-300-fg{color:#7986cb!important}.indigo-300-border{border-color:#7986cb!important}.indigo-300-border-top{border-top-color:#7986cb!important}.indigo-300-border-right{border-right-color:#7986cb!important}.indigo-300-border-bottom{border-bottom-color:#7986cb!important}.indigo-300-border-left{border-left-color:#7986cb!important}.indigo-400-bg{background-color:#5c6bc0!important}.md-indigo-400-bg{background-color:#5c6bc0!important;color:#fff}.indigo-400-fg{color:#5c6bc0!important}.indigo-400-border{border-color:#5c6bc0!important}.indigo-400-border-top{border-top-color:#5c6bc0!important}.indigo-400-border-right{border-right-color:#5c6bc0!important}.indigo-400-border-bottom{border-bottom-color:#5c6bc0!important}.indigo-400-border-left{border-left-color:#5c6bc0!important}.indigo-500-bg{background-color:#3f51b5!important}.md-indigo-500-bg{background-color:#3f51b5!important;color:rgba(255,255,255,.87)}.indigo-500-fg{color:#3f51b5!important}.indigo-500-border{border-color:#3f51b5!important}.indigo-500-border-top{border-top-color:#3f51b5!important}.indigo-500-border-right{border-right-color:#3f51b5!important}.indigo-500-border-bottom{border-bottom-color:#3f51b5!important}.indigo-500-border-left{border-left-color:#3f51b5!important}.md-indigo-bg{background-color:#3f51b5!important;color:rgba(255,255,255,.87)}.indigo-bg{background-color:#3f51b5!important}.indigo-fg{color:#3f51b5!important}.indigo-border{border-color:#3f51b5!important}.indigo-border-top{border-top-color:#3f51b5!important}.indigo-border-right{border-right-color:#3f51b5!important}.indigo-border-bottom{border-bottom-color:#3f51b5!important}.indigo-border-left{border-left-color:#3f51b5!important}.indigo-600-bg{background-color:#3949ab!important}.md-indigo-600-bg{background-color:#3949ab!important;color:rgba(255,255,255,.87)}.indigo-600-fg{color:#3949ab!important}.indigo-600-border{border-color:#3949ab!important}.indigo-600-border-top{border-top-color:#3949ab!important}.indigo-600-border-right{border-right-color:#3949ab!important}.indigo-600-border-bottom{border-bottom-color:#3949ab!important}.indigo-600-border-left{border-left-color:#3949ab!important}.indigo-700-bg{background-color:#303f9f!important}.md-indigo-700-bg{background-color:#303f9f!important;color:rgba(255,255,255,.87)}.indigo-700-fg{color:#303f9f!important}.indigo-700-border{border-color:#303f9f!important}.indigo-700-border-top{border-top-color:#303f9f!important}.indigo-700-border-right{border-right-color:#303f9f!important}.indigo-700-border-bottom{border-bottom-color:#303f9f!important}.indigo-700-border-left{border-left-color:#303f9f!important}.indigo-800-bg{background-color:#283593!important}.md-indigo-800-bg{background-color:#283593!important;color:rgba(255,255,255,.87)}.indigo-800-fg{color:#283593!important}.indigo-800-border{border-color:#283593!important}.indigo-800-border-top{border-top-color:#283593!important}.indigo-800-border-right{border-right-color:#283593!important}.indigo-800-border-bottom{border-bottom-color:#283593!important}.indigo-800-border-left{border-left-color:#283593!important}.indigo-900-bg{background-color:#1a237e!important}.md-indigo-900-bg{background-color:#1a237e!important;color:rgba(255,255,255,.87)}.indigo-900-fg{color:#1a237e!important}.indigo-900-border{border-color:#1a237e!important}.indigo-900-border-top{border-top-color:#1a237e!important}.indigo-900-border-right{border-right-color:#1a237e!important}.indigo-900-border-bottom{border-bottom-color:#1a237e!important}.indigo-900-border-left{border-left-color:#1a237e!important}.indigo-A100-bg{background-color:#8c9eff!important}.md-indigo-A100-bg{background-color:#8c9eff!important;color:rgba(0,0,0,.87)}.indigo-A100-fg{color:#8c9eff!important}.indigo-A100-border{border-color:#8c9eff!important}.indigo-A100-border-top{border-top-color:#8c9eff!important}.indigo-A100-border-right{border-right-color:#8c9eff!important}.indigo-A100-border-bottom{border-bottom-color:#8c9eff!important}.indigo-A100-border-left{border-left-color:#8c9eff!important}.indigo-A200-bg{background-color:#536dfe!important}.md-indigo-A200-bg{background-color:#536dfe!important;color:#fff}.indigo-A200-fg{color:#536dfe!important}.indigo-A200-border{border-color:#536dfe!important}.indigo-A200-border-top{border-top-color:#536dfe!important}.indigo-A200-border-right{border-right-color:#536dfe!important}.indigo-A200-border-bottom{border-bottom-color:#536dfe!important}.indigo-A200-border-left{border-left-color:#536dfe!important}.indigo-A400-bg{background-color:#3d5afe!important}.md-indigo-A400-bg{background-color:#3d5afe!important;color:#fff}.indigo-A400-fg{color:#3d5afe!important}.indigo-A400-border{border-color:#3d5afe!important}.indigo-A400-border-top{border-top-color:#3d5afe!important}.indigo-A400-border-right{border-right-color:#3d5afe!important}.indigo-A400-border-bottom{border-bottom-color:#3d5afe!important}.indigo-A400-border-left{border-left-color:#3d5afe!important}.indigo-A700-bg{background-color:#304ffe!important}.md-indigo-A700-bg{background-color:#304ffe!important;color:rgba(255,255,255,.87)}.indigo-A700-fg{color:#304ffe!important}.indigo-A700-border{border-color:#304ffe!important}.indigo-A700-border-top{border-top-color:#304ffe!important}.indigo-A700-border-right{border-right-color:#304ffe!important}.indigo-A700-border-bottom{border-bottom-color:#304ffe!important}.indigo-A700-border-left{border-left-color:#304ffe!important}.blue-50-bg{background-color:#e3f2fd!important}.md-blue-50-bg{background-color:#e3f2fd!important;color:rgba(0,0,0,.87)}.blue-50-fg{color:#e3f2fd!important}.blue-50-border{border-color:#e3f2fd!important}.blue-50-border-top{border-top-color:#e3f2fd!important}.blue-50-border-right{border-right-color:#e3f2fd!important}.blue-50-border-bottom{border-bottom-color:#e3f2fd!important}.blue-50-border-left{border-left-color:#e3f2fd!important}.blue-100-bg{background-color:#bbdefb!important}.md-blue-100-bg{background-color:#bbdefb!important;color:rgba(0,0,0,.87)}.blue-100-fg{color:#bbdefb!important}.blue-100-border{border-color:#bbdefb!important}.blue-100-border-top{border-top-color:#bbdefb!important}.blue-100-border-right{border-right-color:#bbdefb!important}.blue-100-border-bottom{border-bottom-color:#bbdefb!important}.blue-100-border-left{border-left-color:#bbdefb!important}.blue-200-bg{background-color:#90caf9!important}.md-blue-200-bg{background-color:#90caf9!important;color:rgba(0,0,0,.87)}.blue-200-fg{color:#90caf9!important}.blue-200-border{border-color:#90caf9!important}.blue-200-border-top{border-top-color:#90caf9!important}.blue-200-border-right{border-right-color:#90caf9!important}.blue-200-border-bottom{border-bottom-color:#90caf9!important}.blue-200-border-left{border-left-color:#90caf9!important}.blue-300-bg{background-color:#64b5f6!important}.md-blue-300-bg{background-color:#64b5f6!important;color:rgba(0,0,0,.87)}.blue-300-fg{color:#64b5f6!important}.blue-300-border{border-color:#64b5f6!important}.blue-300-border-top{border-top-color:#64b5f6!important}.blue-300-border-right{border-right-color:#64b5f6!important}.blue-300-border-bottom{border-bottom-color:#64b5f6!important}.blue-300-border-left{border-left-color:#64b5f6!important}.blue-400-bg{background-color:#42a5f5!important}.md-blue-400-bg{background-color:#42a5f5!important;color:rgba(0,0,0,.87)}.blue-400-fg{color:#42a5f5!important}.blue-400-border{border-color:#42a5f5!important}.blue-400-border-top{border-top-color:#42a5f5!important}.blue-400-border-right{border-right-color:#42a5f5!important}.blue-400-border-bottom{border-bottom-color:#42a5f5!important}.blue-400-border-left{border-left-color:#42a5f5!important}.blue-500-bg{background-color:#2196f3!important}.md-blue-500-bg{background-color:#2196f3!important;color:#fff}.blue-500-fg{color:#2196f3!important}.blue-500-border{border-color:#2196f3!important}.blue-500-border-top{border-top-color:#2196f3!important}.blue-500-border-right{border-right-color:#2196f3!important}.blue-500-border-bottom{border-bottom-color:#2196f3!important}.blue-500-border-left{border-left-color:#2196f3!important}.md-blue-bg{background-color:#2196f3!important;color:#fff}.blue-bg{background-color:#2196f3!important}.blue-fg{color:#2196f3!important}.blue-border{border-color:#2196f3!important}.blue-border-top{border-top-color:#2196f3!important}.blue-border-right{border-right-color:#2196f3!important}.blue-border-bottom{border-bottom-color:#2196f3!important}.blue-border-left{border-left-color:#2196f3!important}.blue-600-bg{background-color:#1e88e5!important}.md-blue-600-bg{background-color:#1e88e5!important;color:#fff}.blue-600-fg{color:#1e88e5!important}.blue-600-border{border-color:#1e88e5!important}.blue-600-border-top{border-top-color:#1e88e5!important}.blue-600-border-right{border-right-color:#1e88e5!important}.blue-600-border-bottom{border-bottom-color:#1e88e5!important}.blue-600-border-left{border-left-color:#1e88e5!important}.blue-700-bg{background-color:#1976d2!important}.md-blue-700-bg{background-color:#1976d2!important;color:#fff}.blue-700-fg{color:#1976d2!important}.blue-700-border{border-color:#1976d2!important}.blue-700-border-top{border-top-color:#1976d2!important}.blue-700-border-right{border-right-color:#1976d2!important}.blue-700-border-bottom{border-bottom-color:#1976d2!important}.blue-700-border-left{border-left-color:#1976d2!important}.blue-800-bg{background-color:#1565c0!important}.md-blue-800-bg{background-color:#1565c0!important;color:rgba(255,255,255,.87)}.blue-800-fg{color:#1565c0!important}.blue-800-border{border-color:#1565c0!important}.blue-800-border-top{border-top-color:#1565c0!important}.blue-800-border-right{border-right-color:#1565c0!important}.blue-800-border-bottom{border-bottom-color:#1565c0!important}.blue-800-border-left{border-left-color:#1565c0!important}.blue-900-bg{background-color:#0d47a1!important}.md-blue-900-bg{background-color:#0d47a1!important;color:rgba(255,255,255,.87)}.blue-900-fg{color:#0d47a1!important}.blue-900-border{border-color:#0d47a1!important}.blue-900-border-top{border-top-color:#0d47a1!important}.blue-900-border-right{border-right-color:#0d47a1!important}.blue-900-border-bottom{border-bottom-color:#0d47a1!important}.blue-900-border-left{border-left-color:#0d47a1!important}.blue-A100-bg{background-color:#82b1ff!important}.md-blue-A100-bg{background-color:#82b1ff!important;color:rgba(0,0,0,.87)}.blue-A100-fg{color:#82b1ff!important}.blue-A100-border{border-color:#82b1ff!important}.blue-A100-border-top{border-top-color:#82b1ff!important}.blue-A100-border-right{border-right-color:#82b1ff!important}.blue-A100-border-bottom{border-bottom-color:#82b1ff!important}.blue-A100-border-left{border-left-color:#82b1ff!important}.blue-A200-bg{background-color:#448aff!important}.md-blue-A200-bg{background-color:#448aff!important;color:#fff}.blue-A200-fg{color:#448aff!important}.blue-A200-border{border-color:#448aff!important}.blue-A200-border-top{border-top-color:#448aff!important}.blue-A200-border-right{border-right-color:#448aff!important}.blue-A200-border-bottom{border-bottom-color:#448aff!important}.blue-A200-border-left{border-left-color:#448aff!important}.blue-A400-bg{background-color:#2979ff!important}.md-blue-A400-bg{background-color:#2979ff!important;color:#fff}.blue-A400-fg{color:#2979ff!important}.blue-A400-border{border-color:#2979ff!important}.blue-A400-border-top{border-top-color:#2979ff!important}.blue-A400-border-right{border-right-color:#2979ff!important}.blue-A400-border-bottom{border-bottom-color:#2979ff!important}.blue-A400-border-left{border-left-color:#2979ff!important}.blue-A700-bg{background-color:#2962ff!important}.md-blue-A700-bg{background-color:#2962ff!important;color:#fff}.blue-A700-fg{color:#2962ff!important}.blue-A700-border{border-color:#2962ff!important}.blue-A700-border-top{border-top-color:#2962ff!important}.blue-A700-border-right{border-right-color:#2962ff!important}.blue-A700-border-bottom{border-bottom-color:#2962ff!important}.blue-A700-border-left{border-left-color:#2962ff!important}.light-blue-50-bg{background-color:#e1f5fe!important}.md-light-blue-50-bg{background-color:#e1f5fe!important;color:rgba(0,0,0,.87)}.light-blue-50-fg{color:#e1f5fe!important}.light-blue-50-border{border-color:#e1f5fe!important}.light-blue-50-border-top{border-top-color:#e1f5fe!important}.light-blue-50-border-right{border-right-color:#e1f5fe!important}.light-blue-50-border-bottom{border-bottom-color:#e1f5fe!important}.light-blue-50-border-left{border-left-color:#e1f5fe!important}.light-blue-100-bg{background-color:#b3e5fc!important}.md-light-blue-100-bg{background-color:#b3e5fc!important;color:rgba(0,0,0,.87)}.light-blue-100-fg{color:#b3e5fc!important}.light-blue-100-border{border-color:#b3e5fc!important}.light-blue-100-border-top{border-top-color:#b3e5fc!important}.light-blue-100-border-right{border-right-color:#b3e5fc!important}.light-blue-100-border-bottom{border-bottom-color:#b3e5fc!important}.light-blue-100-border-left{border-left-color:#b3e5fc!important}.light-blue-200-bg{background-color:#81d4fa!important}.md-light-blue-200-bg{background-color:#81d4fa!important;color:rgba(0,0,0,.87)}.light-blue-200-fg{color:#81d4fa!important}.light-blue-200-border{border-color:#81d4fa!important}.light-blue-200-border-top{border-top-color:#81d4fa!important}.light-blue-200-border-right{border-right-color:#81d4fa!important}.light-blue-200-border-bottom{border-bottom-color:#81d4fa!important}.light-blue-200-border-left{border-left-color:#81d4fa!important}.light-blue-300-bg{background-color:#4fc3f7!important}.md-light-blue-300-bg{background-color:#4fc3f7!important;color:rgba(0,0,0,.87)}.light-blue-300-fg{color:#4fc3f7!important}.light-blue-300-border{border-color:#4fc3f7!important}.light-blue-300-border-top{border-top-color:#4fc3f7!important}.light-blue-300-border-right{border-right-color:#4fc3f7!important}.light-blue-300-border-bottom{border-bottom-color:#4fc3f7!important}.light-blue-300-border-left{border-left-color:#4fc3f7!important}.light-blue-400-bg{background-color:#29b6f6!important}.md-light-blue-400-bg{background-color:#29b6f6!important;color:rgba(0,0,0,.87)}.light-blue-400-fg{color:#29b6f6!important}.light-blue-400-border{border-color:#29b6f6!important}.light-blue-400-border-top{border-top-color:#29b6f6!important}.light-blue-400-border-right{border-right-color:#29b6f6!important}.light-blue-400-border-bottom{border-bottom-color:#29b6f6!important}.light-blue-400-border-left{border-left-color:#29b6f6!important}.light-blue-500-bg{background-color:#03a9f4!important}.md-light-blue-500-bg{background-color:#03a9f4!important;color:rgba(0,0,0,.87)}.light-blue-500-fg{color:#03a9f4!important}.light-blue-500-border{border-color:#03a9f4!important}.light-blue-500-border-top{border-top-color:#03a9f4!important}.light-blue-500-border-right{border-right-color:#03a9f4!important}.light-blue-500-border-bottom{border-bottom-color:#03a9f4!important}.light-blue-500-border-left{border-left-color:#03a9f4!important}.md-light-blue-bg{background-color:#03a9f4!important;color:rgba(0,0,0,.87)}.light-blue-bg{background-color:#03a9f4!important}.light-blue-fg{color:#03a9f4!important}.light-blue-border{border-color:#03a9f4!important}.light-blue-border-top{border-top-color:#03a9f4!important}.light-blue-border-right{border-right-color:#03a9f4!important}.light-blue-border-bottom{border-bottom-color:#03a9f4!important}.light-blue-border-left{border-left-color:#03a9f4!important}.light-blue-600-bg{background-color:#039be5!important}.md-light-blue-600-bg{background-color:#039be5!important;color:#fff}.light-blue-600-fg{color:#039be5!important}.light-blue-600-border{border-color:#039be5!important}.light-blue-600-border-top{border-top-color:#039be5!important}.light-blue-600-border-right{border-right-color:#039be5!important}.light-blue-600-border-bottom{border-bottom-color:#039be5!important}.light-blue-600-border-left{border-left-color:#039be5!important}.light-blue-700-bg{background-color:#0288d1!important}.md-light-blue-700-bg{background-color:#0288d1!important;color:#fff}.light-blue-700-fg{color:#0288d1!important}.light-blue-700-border{border-color:#0288d1!important}.light-blue-700-border-top{border-top-color:#0288d1!important}.light-blue-700-border-right{border-right-color:#0288d1!important}.light-blue-700-border-bottom{border-bottom-color:#0288d1!important}.light-blue-700-border-left{border-left-color:#0288d1!important}.light-blue-800-bg{background-color:#0277bd!important}.md-light-blue-800-bg{background-color:#0277bd!important;color:#fff}.light-blue-800-fg{color:#0277bd!important}.light-blue-800-border{border-color:#0277bd!important}.light-blue-800-border-top{border-top-color:#0277bd!important}.light-blue-800-border-right{border-right-color:#0277bd!important}.light-blue-800-border-bottom{border-bottom-color:#0277bd!important}.light-blue-800-border-left{border-left-color:#0277bd!important}.light-blue-900-bg{background-color:#01579b!important}.md-light-blue-900-bg{background-color:#01579b!important;color:#fff}.light-blue-900-fg{color:#01579b!important}.light-blue-900-border{border-color:#01579b!important}.light-blue-900-border-top{border-top-color:#01579b!important}.light-blue-900-border-right{border-right-color:#01579b!important}.light-blue-900-border-bottom{border-bottom-color:#01579b!important}.light-blue-900-border-left{border-left-color:#01579b!important}.light-blue-A100-bg{background-color:#80d8ff!important}.md-light-blue-A100-bg{background-color:#80d8ff!important;color:rgba(0,0,0,.87)}.light-blue-A100-fg{color:#80d8ff!important}.light-blue-A100-border{border-color:#80d8ff!important}.light-blue-A100-border-top{border-top-color:#80d8ff!important}.light-blue-A100-border-right{border-right-color:#80d8ff!important}.light-blue-A100-border-bottom{border-bottom-color:#80d8ff!important}.light-blue-A100-border-left{border-left-color:#80d8ff!important}.light-blue-A200-bg{background-color:#40c4ff!important}.md-light-blue-A200-bg{background-color:#40c4ff!important;color:rgba(0,0,0,.87)}.light-blue-A200-fg{color:#40c4ff!important}.light-blue-A200-border{border-color:#40c4ff!important}.light-blue-A200-border-top{border-top-color:#40c4ff!important}.light-blue-A200-border-right{border-right-color:#40c4ff!important}.light-blue-A200-border-bottom{border-bottom-color:#40c4ff!important}.light-blue-A200-border-left{border-left-color:#40c4ff!important}.light-blue-A400-bg{background-color:#00b0ff!important}.md-light-blue-A400-bg{background-color:#00b0ff!important;color:rgba(0,0,0,.87)}.light-blue-A400-fg{color:#00b0ff!important}.light-blue-A400-border{border-color:#00b0ff!important}.light-blue-A400-border-top{border-top-color:#00b0ff!important}.light-blue-A400-border-right{border-right-color:#00b0ff!important}.light-blue-A400-border-bottom{border-bottom-color:#00b0ff!important}.light-blue-A400-border-left{border-left-color:#00b0ff!important}.light-blue-A700-bg{background-color:#0091ea!important}.md-light-blue-A700-bg{background-color:#0091ea!important;color:#fff}.light-blue-A700-fg{color:#0091ea!important}.light-blue-A700-border{border-color:#0091ea!important}.light-blue-A700-border-top{border-top-color:#0091ea!important}.light-blue-A700-border-right{border-right-color:#0091ea!important}.light-blue-A700-border-bottom{border-bottom-color:#0091ea!important}.light-blue-A700-border-left{border-left-color:#0091ea!important}.cyan-50-bg{background-color:#e0f7fa!important}.md-cyan-50-bg{background-color:#e0f7fa!important;color:rgba(0,0,0,.87)}.cyan-50-fg{color:#e0f7fa!important}.cyan-50-border{border-color:#e0f7fa!important}.cyan-50-border-top{border-top-color:#e0f7fa!important}.cyan-50-border-right{border-right-color:#e0f7fa!important}.cyan-50-border-bottom{border-bottom-color:#e0f7fa!important}.cyan-50-border-left{border-left-color:#e0f7fa!important}.cyan-100-bg{background-color:#b2ebf2!important}.md-cyan-100-bg{background-color:#b2ebf2!important;color:rgba(0,0,0,.87)}.cyan-100-fg{color:#b2ebf2!important}.cyan-100-border{border-color:#b2ebf2!important}.cyan-100-border-top{border-top-color:#b2ebf2!important}.cyan-100-border-right{border-right-color:#b2ebf2!important}.cyan-100-border-bottom{border-bottom-color:#b2ebf2!important}.cyan-100-border-left{border-left-color:#b2ebf2!important}.cyan-200-bg{background-color:#80deea!important}.md-cyan-200-bg{background-color:#80deea!important;color:rgba(0,0,0,.87)}.cyan-200-fg{color:#80deea!important}.cyan-200-border{border-color:#80deea!important}.cyan-200-border-top{border-top-color:#80deea!important}.cyan-200-border-right{border-right-color:#80deea!important}.cyan-200-border-bottom{border-bottom-color:#80deea!important}.cyan-200-border-left{border-left-color:#80deea!important}.cyan-300-bg{background-color:#4dd0e1!important}.md-cyan-300-bg{background-color:#4dd0e1!important;color:rgba(0,0,0,.87)}.cyan-300-fg{color:#4dd0e1!important}.cyan-300-border{border-color:#4dd0e1!important}.cyan-300-border-top{border-top-color:#4dd0e1!important}.cyan-300-border-right{border-right-color:#4dd0e1!important}.cyan-300-border-bottom{border-bottom-color:#4dd0e1!important}.cyan-300-border-left{border-left-color:#4dd0e1!important}.cyan-400-bg{background-color:#26c6da!important}.md-cyan-400-bg{background-color:#26c6da!important;color:rgba(0,0,0,.87)}.cyan-400-fg{color:#26c6da!important}.cyan-400-border{border-color:#26c6da!important}.cyan-400-border-top{border-top-color:#26c6da!important}.cyan-400-border-right{border-right-color:#26c6da!important}.cyan-400-border-bottom{border-bottom-color:#26c6da!important}.cyan-400-border-left{border-left-color:#26c6da!important}.cyan-500-bg{background-color:#00bcd4!important}.md-cyan-500-bg{background-color:#00bcd4!important;color:rgba(0,0,0,.87)}.cyan-500-fg{color:#00bcd4!important}.cyan-500-border{border-color:#00bcd4!important}.cyan-500-border-top{border-top-color:#00bcd4!important}.cyan-500-border-right{border-right-color:#00bcd4!important}.cyan-500-border-bottom{border-bottom-color:#00bcd4!important}.cyan-500-border-left{border-left-color:#00bcd4!important}.md-cyan-bg{background-color:#00bcd4!important;color:rgba(0,0,0,.87)}.cyan-bg{background-color:#00bcd4!important}.cyan-fg{color:#00bcd4!important}.cyan-border{border-color:#00bcd4!important}.cyan-border-top{border-top-color:#00bcd4!important}.cyan-border-right{border-right-color:#00bcd4!important}.cyan-border-bottom{border-bottom-color:#00bcd4!important}.cyan-border-left{border-left-color:#00bcd4!important}.cyan-600-bg{background-color:#00acc1!important}.md-cyan-600-bg{background-color:#00acc1!important;color:rgba(0,0,0,.87)}.cyan-600-fg{color:#00acc1!important}.cyan-600-border{border-color:#00acc1!important}.cyan-600-border-top{border-top-color:#00acc1!important}.cyan-600-border-right{border-right-color:#00acc1!important}.cyan-600-border-bottom{border-bottom-color:#00acc1!important}.cyan-600-border-left{border-left-color:#00acc1!important}.cyan-700-bg{background-color:#0097a7!important}.md-cyan-700-bg{background-color:#0097a7!important;color:#fff}.cyan-700-fg{color:#0097a7!important}.cyan-700-border{border-color:#0097a7!important}.cyan-700-border-top{border-top-color:#0097a7!important}.cyan-700-border-right{border-right-color:#0097a7!important}.cyan-700-border-bottom{border-bottom-color:#0097a7!important}.cyan-700-border-left{border-left-color:#0097a7!important}.cyan-800-bg{background-color:#00838f!important}.md-cyan-800-bg{background-color:#00838f!important;color:#fff}.cyan-800-fg{color:#00838f!important}.cyan-800-border{border-color:#00838f!important}.cyan-800-border-top{border-top-color:#00838f!important}.cyan-800-border-right{border-right-color:#00838f!important}.cyan-800-border-bottom{border-bottom-color:#00838f!important}.cyan-800-border-left{border-left-color:#00838f!important}.cyan-900-bg{background-color:#006064!important}.md-cyan-900-bg{background-color:#006064!important;color:#fff}.cyan-900-fg{color:#006064!important}.cyan-900-border{border-color:#006064!important}.cyan-900-border-top{border-top-color:#006064!important}.cyan-900-border-right{border-right-color:#006064!important}.cyan-900-border-bottom{border-bottom-color:#006064!important}.cyan-900-border-left{border-left-color:#006064!important}.cyan-A100-bg{background-color:#84ffff!important}.md-cyan-A100-bg{background-color:#84ffff!important;color:rgba(0,0,0,.87)}.cyan-A100-fg{color:#84ffff!important}.cyan-A100-border{border-color:#84ffff!important}.cyan-A100-border-top{border-top-color:#84ffff!important}.cyan-A100-border-right{border-right-color:#84ffff!important}.cyan-A100-border-bottom{border-bottom-color:#84ffff!important}.cyan-A100-border-left{border-left-color:#84ffff!important}.cyan-A200-bg{background-color:#18ffff!important}.md-cyan-A200-bg{background-color:#18ffff!important;color:rgba(0,0,0,.87)}.cyan-A200-fg{color:#18ffff!important}.cyan-A200-border{border-color:#18ffff!important}.cyan-A200-border-top{border-top-color:#18ffff!important}.cyan-A200-border-right{border-right-color:#18ffff!important}.cyan-A200-border-bottom{border-bottom-color:#18ffff!important}.cyan-A200-border-left{border-left-color:#18ffff!important}.cyan-A400-bg{background-color:#00e5ff!important}.md-cyan-A400-bg{background-color:#00e5ff!important;color:rgba(0,0,0,.87)}.cyan-A400-fg{color:#00e5ff!important}.cyan-A400-border{border-color:#00e5ff!important}.cyan-A400-border-top{border-top-color:#00e5ff!important}.cyan-A400-border-right{border-right-color:#00e5ff!important}.cyan-A400-border-bottom{border-bottom-color:#00e5ff!important}.cyan-A400-border-left{border-left-color:#00e5ff!important}.cyan-A700-bg{background-color:#00b8d4!important}.md-cyan-A700-bg{background-color:#00b8d4!important;color:rgba(0,0,0,.87)}.cyan-A700-fg{color:#00b8d4!important}.cyan-A700-border{border-color:#00b8d4!important}.cyan-A700-border-top{border-top-color:#00b8d4!important}.cyan-A700-border-right{border-right-color:#00b8d4!important}.cyan-A700-border-bottom{border-bottom-color:#00b8d4!important}.cyan-A700-border-left{border-left-color:#00b8d4!important}.teal-50-bg{background-color:#e0f2f1!important}.md-teal-50-bg{background-color:#e0f2f1!important;color:rgba(0,0,0,.87)}.teal-50-fg{color:#e0f2f1!important}.teal-50-border{border-color:#e0f2f1!important}.teal-50-border-top{border-top-color:#e0f2f1!important}.teal-50-border-right{border-right-color:#e0f2f1!important}.teal-50-border-bottom{border-bottom-color:#e0f2f1!important}.teal-50-border-left{border-left-color:#e0f2f1!important}.teal-100-bg{background-color:#b2dfdb!important}.md-teal-100-bg{background-color:#b2dfdb!important;color:rgba(0,0,0,.87)}.teal-100-fg{color:#b2dfdb!important}.teal-100-border{border-color:#b2dfdb!important}.teal-100-border-top{border-top-color:#b2dfdb!important}.teal-100-border-right{border-right-color:#b2dfdb!important}.teal-100-border-bottom{border-bottom-color:#b2dfdb!important}.teal-100-border-left{border-left-color:#b2dfdb!important}.teal-200-bg{background-color:#80cbc4!important}.md-teal-200-bg{background-color:#80cbc4!important;color:rgba(0,0,0,.87)}.teal-200-fg{color:#80cbc4!important}.teal-200-border{border-color:#80cbc4!important}.teal-200-border-top{border-top-color:#80cbc4!important}.teal-200-border-right{border-right-color:#80cbc4!important}.teal-200-border-bottom{border-bottom-color:#80cbc4!important}.teal-200-border-left{border-left-color:#80cbc4!important}.teal-300-bg{background-color:#4db6ac!important}.md-teal-300-bg{background-color:#4db6ac!important;color:rgba(0,0,0,.87)}.teal-300-fg{color:#4db6ac!important}.teal-300-border{border-color:#4db6ac!important}.teal-300-border-top{border-top-color:#4db6ac!important}.teal-300-border-right{border-right-color:#4db6ac!important}.teal-300-border-bottom{border-bottom-color:#4db6ac!important}.teal-300-border-left{border-left-color:#4db6ac!important}.teal-400-bg{background-color:#26a69a!important}.md-teal-400-bg{background-color:#26a69a!important;color:rgba(0,0,0,.87)}.teal-400-fg{color:#26a69a!important}.teal-400-border{border-color:#26a69a!important}.teal-400-border-top{border-top-color:#26a69a!important}.teal-400-border-right{border-right-color:#26a69a!important}.teal-400-border-bottom{border-bottom-color:#26a69a!important}.teal-400-border-left{border-left-color:#26a69a!important}.teal-500-bg{background-color:#009688!important}.md-teal-500-bg{background-color:#009688!important;color:#fff}.teal-500-fg{color:#009688!important}.teal-500-border{border-color:#009688!important}.teal-500-border-top{border-top-color:#009688!important}.teal-500-border-right{border-right-color:#009688!important}.teal-500-border-bottom{border-bottom-color:#009688!important}.teal-500-border-left{border-left-color:#009688!important}.md-teal-bg{background-color:#009688!important;color:#fff}.teal-bg{background-color:#009688!important}.teal-fg{color:#009688!important}.teal-border{border-color:#009688!important}.teal-border-top{border-top-color:#009688!important}.teal-border-right{border-right-color:#009688!important}.teal-border-bottom{border-bottom-color:#009688!important}.teal-border-left{border-left-color:#009688!important}.teal-600-bg{background-color:#00897b!important}.md-teal-600-bg{background-color:#00897b!important;color:#fff}.teal-600-fg{color:#00897b!important}.teal-600-border{border-color:#00897b!important}.teal-600-border-top{border-top-color:#00897b!important}.teal-600-border-right{border-right-color:#00897b!important}.teal-600-border-bottom{border-bottom-color:#00897b!important}.teal-600-border-left{border-left-color:#00897b!important}.teal-700-bg{background-color:#00796b!important}.md-teal-700-bg{background-color:#00796b!important;color:#fff}.teal-700-fg{color:#00796b!important}.teal-700-border{border-color:#00796b!important}.teal-700-border-top{border-top-color:#00796b!important}.teal-700-border-right{border-right-color:#00796b!important}.teal-700-border-bottom{border-bottom-color:#00796b!important}.teal-700-border-left{border-left-color:#00796b!important}.teal-800-bg{background-color:#00695c!important}.md-teal-800-bg{background-color:#00695c!important;color:rgba(255,255,255,.87)}.teal-800-fg{color:#00695c!important}.teal-800-border{border-color:#00695c!important}.teal-800-border-top{border-top-color:#00695c!important}.teal-800-border-right{border-right-color:#00695c!important}.teal-800-border-bottom{border-bottom-color:#00695c!important}.teal-800-border-left{border-left-color:#00695c!important}.teal-900-bg{background-color:#004d40!important}.md-teal-900-bg{background-color:#004d40!important;color:rgba(255,255,255,.87)}.teal-900-fg{color:#004d40!important}.teal-900-border{border-color:#004d40!important}.teal-900-border-top{border-top-color:#004d40!important}.teal-900-border-right{border-right-color:#004d40!important}.teal-900-border-bottom{border-bottom-color:#004d40!important}.teal-900-border-left{border-left-color:#004d40!important}.teal-A100-bg{background-color:#a7ffeb!important}.md-teal-A100-bg{background-color:#a7ffeb!important;color:rgba(0,0,0,.87)}.teal-A100-fg{color:#a7ffeb!important}.teal-A100-border{border-color:#a7ffeb!important}.teal-A100-border-top{border-top-color:#a7ffeb!important}.teal-A100-border-right{border-right-color:#a7ffeb!important}.teal-A100-border-bottom{border-bottom-color:#a7ffeb!important}.teal-A100-border-left{border-left-color:#a7ffeb!important}.teal-A200-bg{background-color:#64ffda!important}.md-teal-A200-bg{background-color:#64ffda!important;color:rgba(0,0,0,.87)}.teal-A200-fg{color:#64ffda!important}.teal-A200-border{border-color:#64ffda!important}.teal-A200-border-top{border-top-color:#64ffda!important}.teal-A200-border-right{border-right-color:#64ffda!important}.teal-A200-border-bottom{border-bottom-color:#64ffda!important}.teal-A200-border-left{border-left-color:#64ffda!important}.teal-A400-bg{background-color:#1de9b6!important}.md-teal-A400-bg{background-color:#1de9b6!important;color:rgba(0,0,0,.87)}.teal-A400-fg{color:#1de9b6!important}.teal-A400-border{border-color:#1de9b6!important}.teal-A400-border-top{border-top-color:#1de9b6!important}.teal-A400-border-right{border-right-color:#1de9b6!important}.teal-A400-border-bottom{border-bottom-color:#1de9b6!important}.teal-A400-border-left{border-left-color:#1de9b6!important}.teal-A700-bg{background-color:#00bfa5!important}.md-teal-A700-bg{background-color:#00bfa5!important;color:rgba(0,0,0,.87)}.teal-A700-fg{color:#00bfa5!important}.teal-A700-border{border-color:#00bfa5!important}.teal-A700-border-top{border-top-color:#00bfa5!important}.teal-A700-border-right{border-right-color:#00bfa5!important}.teal-A700-border-bottom{border-bottom-color:#00bfa5!important}.teal-A700-border-left{border-left-color:#00bfa5!important}.green-50-bg{background-color:#e8f5e9!important}.md-green-50-bg{background-color:#e8f5e9!important;color:rgba(0,0,0,.87)}.green-50-fg{color:#e8f5e9!important}.green-50-border{border-color:#e8f5e9!important}.green-50-border-top{border-top-color:#e8f5e9!important}.green-50-border-right{border-right-color:#e8f5e9!important}.green-50-border-bottom{border-bottom-color:#e8f5e9!important}.green-50-border-left{border-left-color:#e8f5e9!important}.green-100-bg{background-color:#c8e6c9!important}.md-green-100-bg{background-color:#c8e6c9!important;color:rgba(0,0,0,.87)}.green-100-fg{color:#c8e6c9!important}.green-100-border{border-color:#c8e6c9!important}.green-100-border-top{border-top-color:#c8e6c9!important}.green-100-border-right{border-right-color:#c8e6c9!important}.green-100-border-bottom{border-bottom-color:#c8e6c9!important}.green-100-border-left{border-left-color:#c8e6c9!important}.green-200-bg{background-color:#a5d6a7!important}.md-green-200-bg{background-color:#a5d6a7!important;color:rgba(0,0,0,.87)}.green-200-fg{color:#a5d6a7!important}.green-200-border{border-color:#a5d6a7!important}.green-200-border-top{border-top-color:#a5d6a7!important}.green-200-border-right{border-right-color:#a5d6a7!important}.green-200-border-bottom{border-bottom-color:#a5d6a7!important}.green-200-border-left{border-left-color:#a5d6a7!important}.green-300-bg{background-color:#81c784!important}.md-green-300-bg{background-color:#81c784!important;color:rgba(0,0,0,.87)}.green-300-fg{color:#81c784!important}.green-300-border{border-color:#81c784!important}.green-300-border-top{border-top-color:#81c784!important}.green-300-border-right{border-right-color:#81c784!important}.green-300-border-bottom{border-bottom-color:#81c784!important}.green-300-border-left{border-left-color:#81c784!important}.green-400-bg{background-color:#66bb6a!important}.md-green-400-bg{background-color:#66bb6a!important;color:rgba(0,0,0,.87)}.green-400-fg{color:#66bb6a!important}.green-400-border{border-color:#66bb6a!important}.green-400-border-top{border-top-color:#66bb6a!important}.green-400-border-right{border-right-color:#66bb6a!important}.green-400-border-bottom{border-bottom-color:#66bb6a!important}.green-400-border-left{border-left-color:#66bb6a!important}.green-500-bg{background-color:#4caf50!important}.md-green-500-bg{background-color:#4caf50!important;color:rgba(0,0,0,.87)}.green-500-fg{color:#4caf50!important}.green-500-border{border-color:#4caf50!important}.green-500-border-top{border-top-color:#4caf50!important}.green-500-border-right{border-right-color:#4caf50!important}.green-500-border-bottom{border-bottom-color:#4caf50!important}.green-500-border-left{border-left-color:#4caf50!important}.md-green-bg{background-color:#4caf50!important;color:rgba(0,0,0,.87)}.green-bg{background-color:#4caf50!important}.green-fg{color:#4caf50!important}.green-border{border-color:#4caf50!important}.green-border-top{border-top-color:#4caf50!important}.green-border-right{border-right-color:#4caf50!important}.green-border-bottom{border-bottom-color:#4caf50!important}.green-border-left{border-left-color:#4caf50!important}.green-600-bg{background-color:#43a047!important}.md-green-600-bg{background-color:#43a047!important;color:#fff}.green-600-fg{color:#43a047!important}.green-600-border{border-color:#43a047!important}.green-600-border-top{border-top-color:#43a047!important}.green-600-border-right{border-right-color:#43a047!important}.green-600-border-bottom{border-bottom-color:#43a047!important}.green-600-border-left{border-left-color:#43a047!important}.green-700-bg{background-color:#388e3c!important}.md-green-700-bg{background-color:#388e3c!important;color:#fff}.green-700-fg{color:#388e3c!important}.green-700-border{border-color:#388e3c!important}.green-700-border-top{border-top-color:#388e3c!important}.green-700-border-right{border-right-color:#388e3c!important}.green-700-border-bottom{border-bottom-color:#388e3c!important}.green-700-border-left{border-left-color:#388e3c!important}.green-800-bg{background-color:#2e7d32!important}.md-green-800-bg{background-color:#2e7d32!important;color:rgba(255,255,255,.87)}.green-800-fg{color:#2e7d32!important}.green-800-border{border-color:#2e7d32!important}.green-800-border-top{border-top-color:#2e7d32!important}.green-800-border-right{border-right-color:#2e7d32!important}.green-800-border-bottom{border-bottom-color:#2e7d32!important}.green-800-border-left{border-left-color:#2e7d32!important}.green-900-bg{background-color:#1b5e20!important}.md-green-900-bg{background-color:#1b5e20!important;color:rgba(255,255,255,.87)}.green-900-fg{color:#1b5e20!important}.green-900-border{border-color:#1b5e20!important}.green-900-border-top{border-top-color:#1b5e20!important}.green-900-border-right{border-right-color:#1b5e20!important}.green-900-border-bottom{border-bottom-color:#1b5e20!important}.green-900-border-left{border-left-color:#1b5e20!important}.green-A100-bg{background-color:#b9f6ca!important}.md-green-A100-bg{background-color:#b9f6ca!important;color:rgba(0,0,0,.87)}.green-A100-fg{color:#b9f6ca!important}.green-A100-border{border-color:#b9f6ca!important}.green-A100-border-top{border-top-color:#b9f6ca!important}.green-A100-border-right{border-right-color:#b9f6ca!important}.green-A100-border-bottom{border-bottom-color:#b9f6ca!important}.green-A100-border-left{border-left-color:#b9f6ca!important}.green-A200-bg{background-color:#69f0ae!important}.md-green-A200-bg{background-color:#69f0ae!important;color:rgba(0,0,0,.87)}.green-A200-fg{color:#69f0ae!important}.green-A200-border{border-color:#69f0ae!important}.green-A200-border-top{border-top-color:#69f0ae!important}.green-A200-border-right{border-right-color:#69f0ae!important}.green-A200-border-bottom{border-bottom-color:#69f0ae!important}.green-A200-border-left{border-left-color:#69f0ae!important}.green-A400-bg{background-color:#00e676!important}.md-green-A400-bg{background-color:#00e676!important;color:rgba(0,0,0,.87)}.green-A400-fg{color:#00e676!important}.green-A400-border{border-color:#00e676!important}.green-A400-border-top{border-top-color:#00e676!important}.green-A400-border-right{border-right-color:#00e676!important}.green-A400-border-bottom{border-bottom-color:#00e676!important}.green-A400-border-left{border-left-color:#00e676!important}.green-A700-bg{background-color:#00c853!important}.md-green-A700-bg{background-color:#00c853!important;color:rgba(0,0,0,.87)}.green-A700-fg{color:#00c853!important}.green-A700-border{border-color:#00c853!important}.green-A700-border-top{border-top-color:#00c853!important}.green-A700-border-right{border-right-color:#00c853!important}.green-A700-border-bottom{border-bottom-color:#00c853!important}.green-A700-border-left{border-left-color:#00c853!important}.light-green-50-bg{background-color:#f1f8e9!important}.md-light-green-50-bg{background-color:#f1f8e9!important;color:rgba(0,0,0,.87)}.light-green-50-fg{color:#f1f8e9!important}.light-green-50-border{border-color:#f1f8e9!important}.light-green-50-border-top{border-top-color:#f1f8e9!important}.light-green-50-border-right{border-right-color:#f1f8e9!important}.light-green-50-border-bottom{border-bottom-color:#f1f8e9!important}.light-green-50-border-left{border-left-color:#f1f8e9!important}.light-green-100-bg{background-color:#dcedc8!important}.md-light-green-100-bg{background-color:#dcedc8!important;color:rgba(0,0,0,.87)}.light-green-100-fg{color:#dcedc8!important}.light-green-100-border{border-color:#dcedc8!important}.light-green-100-border-top{border-top-color:#dcedc8!important}.light-green-100-border-right{border-right-color:#dcedc8!important}.light-green-100-border-bottom{border-bottom-color:#dcedc8!important}.light-green-100-border-left{border-left-color:#dcedc8!important}.light-green-200-bg{background-color:#c5e1a5!important}.md-light-green-200-bg{background-color:#c5e1a5!important;color:rgba(0,0,0,.87)}.light-green-200-fg{color:#c5e1a5!important}.light-green-200-border{border-color:#c5e1a5!important}.light-green-200-border-top{border-top-color:#c5e1a5!important}.light-green-200-border-right{border-right-color:#c5e1a5!important}.light-green-200-border-bottom{border-bottom-color:#c5e1a5!important}.light-green-200-border-left{border-left-color:#c5e1a5!important}.light-green-300-bg{background-color:#aed581!important}.md-light-green-300-bg{background-color:#aed581!important;color:rgba(0,0,0,.87)}.light-green-300-fg{color:#aed581!important}.light-green-300-border{border-color:#aed581!important}.light-green-300-border-top{border-top-color:#aed581!important}.light-green-300-border-right{border-right-color:#aed581!important}.light-green-300-border-bottom{border-bottom-color:#aed581!important}.light-green-300-border-left{border-left-color:#aed581!important}.light-green-400-bg{background-color:#9ccc65!important}.md-light-green-400-bg{background-color:#9ccc65!important;color:rgba(0,0,0,.87)}.light-green-400-fg{color:#9ccc65!important}.light-green-400-border{border-color:#9ccc65!important}.light-green-400-border-top{border-top-color:#9ccc65!important}.light-green-400-border-right{border-right-color:#9ccc65!important}.light-green-400-border-bottom{border-bottom-color:#9ccc65!important}.light-green-400-border-left{border-left-color:#9ccc65!important}.light-green-500-bg{background-color:#8bc34a!important}.md-light-green-500-bg{background-color:#8bc34a!important;color:rgba(0,0,0,.87)}.light-green-500-fg{color:#8bc34a!important}.light-green-500-border{border-color:#8bc34a!important}.light-green-500-border-top{border-top-color:#8bc34a!important}.light-green-500-border-right{border-right-color:#8bc34a!important}.light-green-500-border-bottom{border-bottom-color:#8bc34a!important}.light-green-500-border-left{border-left-color:#8bc34a!important}.md-light-green-bg{background-color:#8bc34a!important;color:rgba(0,0,0,.87)}.light-green-bg{background-color:#8bc34a!important}.light-green-fg{color:#8bc34a!important}.light-green-border{border-color:#8bc34a!important}.light-green-border-top{border-top-color:#8bc34a!important}.light-green-border-right{border-right-color:#8bc34a!important}.light-green-border-bottom{border-bottom-color:#8bc34a!important}.light-green-border-left{border-left-color:#8bc34a!important}.light-green-600-bg{background-color:#7cb342!important}.md-light-green-600-bg{background-color:#7cb342!important;color:rgba(0,0,0,.87)}.light-green-600-fg{color:#7cb342!important}.light-green-600-border{border-color:#7cb342!important}.light-green-600-border-top{border-top-color:#7cb342!important}.light-green-600-border-right{border-right-color:#7cb342!important}.light-green-600-border-bottom{border-bottom-color:#7cb342!important}.light-green-600-border-left{border-left-color:#7cb342!important}.light-green-700-bg{background-color:#689f38!important}.md-light-green-700-bg{background-color:#689f38!important;color:#fff}.light-green-700-fg{color:#689f38!important}.light-green-700-border{border-color:#689f38!important}.light-green-700-border-top{border-top-color:#689f38!important}.light-green-700-border-right{border-right-color:#689f38!important}.light-green-700-border-bottom{border-bottom-color:#689f38!important}.light-green-700-border-left{border-left-color:#689f38!important}.light-green-800-bg{background-color:#558b2f!important}.md-light-green-800-bg{background-color:#558b2f!important;color:#fff}.light-green-800-fg{color:#558b2f!important}.light-green-800-border{border-color:#558b2f!important}.light-green-800-border-top{border-top-color:#558b2f!important}.light-green-800-border-right{border-right-color:#558b2f!important}.light-green-800-border-bottom{border-bottom-color:#558b2f!important}.light-green-800-border-left{border-left-color:#558b2f!important}.light-green-900-bg{background-color:#33691e!important}.md-light-green-900-bg{background-color:#33691e!important;color:#fff}.light-green-900-fg{color:#33691e!important}.light-green-900-border{border-color:#33691e!important}.light-green-900-border-top{border-top-color:#33691e!important}.light-green-900-border-right{border-right-color:#33691e!important}.light-green-900-border-bottom{border-bottom-color:#33691e!important}.light-green-900-border-left{border-left-color:#33691e!important}.light-green-A100-bg{background-color:#ccff90!important}.md-light-green-A100-bg{background-color:#ccff90!important;color:rgba(0,0,0,.87)}.light-green-A100-fg{color:#ccff90!important}.light-green-A100-border{border-color:#ccff90!important}.light-green-A100-border-top{border-top-color:#ccff90!important}.light-green-A100-border-right{border-right-color:#ccff90!important}.light-green-A100-border-bottom{border-bottom-color:#ccff90!important}.light-green-A100-border-left{border-left-color:#ccff90!important}.light-green-A200-bg{background-color:#b2ff59!important}.md-light-green-A200-bg{background-color:#b2ff59!important;color:rgba(0,0,0,.87)}.light-green-A200-fg{color:#b2ff59!important}.light-green-A200-border{border-color:#b2ff59!important}.light-green-A200-border-top{border-top-color:#b2ff59!important}.light-green-A200-border-right{border-right-color:#b2ff59!important}.light-green-A200-border-bottom{border-bottom-color:#b2ff59!important}.light-green-A200-border-left{border-left-color:#b2ff59!important}.light-green-A400-bg{background-color:#76ff03!important}.md-light-green-A400-bg{background-color:#76ff03!important;color:rgba(0,0,0,.87)}.light-green-A400-fg{color:#76ff03!important}.light-green-A400-border{border-color:#76ff03!important}.light-green-A400-border-top{border-top-color:#76ff03!important}.light-green-A400-border-right{border-right-color:#76ff03!important}.light-green-A400-border-bottom{border-bottom-color:#76ff03!important}.light-green-A400-border-left{border-left-color:#76ff03!important}.light-green-A700-bg{background-color:#64dd17!important}.md-light-green-A700-bg{background-color:#64dd17!important;color:rgba(0,0,0,.87)}.light-green-A700-fg{color:#64dd17!important}.light-green-A700-border{border-color:#64dd17!important}.light-green-A700-border-top{border-top-color:#64dd17!important}.light-green-A700-border-right{border-right-color:#64dd17!important}.light-green-A700-border-bottom{border-bottom-color:#64dd17!important}.light-green-A700-border-left{border-left-color:#64dd17!important}.lime-50-bg{background-color:#f9fbe7!important}.md-lime-50-bg{background-color:#f9fbe7!important;color:rgba(0,0,0,.87)}.lime-50-fg{color:#f9fbe7!important}.lime-50-border{border-color:#f9fbe7!important}.lime-50-border-top{border-top-color:#f9fbe7!important}.lime-50-border-right{border-right-color:#f9fbe7!important}.lime-50-border-bottom{border-bottom-color:#f9fbe7!important}.lime-50-border-left{border-left-color:#f9fbe7!important}.lime-100-bg{background-color:#f0f4c3!important}.md-lime-100-bg{background-color:#f0f4c3!important;color:rgba(0,0,0,.87)}.lime-100-fg{color:#f0f4c3!important}.lime-100-border{border-color:#f0f4c3!important}.lime-100-border-top{border-top-color:#f0f4c3!important}.lime-100-border-right{border-right-color:#f0f4c3!important}.lime-100-border-bottom{border-bottom-color:#f0f4c3!important}.lime-100-border-left{border-left-color:#f0f4c3!important}.lime-200-bg{background-color:#e6ee9c!important}.md-lime-200-bg{background-color:#e6ee9c!important;color:rgba(0,0,0,.87)}.lime-200-fg{color:#e6ee9c!important}.lime-200-border{border-color:#e6ee9c!important}.lime-200-border-top{border-top-color:#e6ee9c!important}.lime-200-border-right{border-right-color:#e6ee9c!important}.lime-200-border-bottom{border-bottom-color:#e6ee9c!important}.lime-200-border-left{border-left-color:#e6ee9c!important}.lime-300-bg{background-color:#dce775!important}.md-lime-300-bg{background-color:#dce775!important;color:rgba(0,0,0,.87)}.lime-300-fg{color:#dce775!important}.lime-300-border{border-color:#dce775!important}.lime-300-border-top{border-top-color:#dce775!important}.lime-300-border-right{border-right-color:#dce775!important}.lime-300-border-bottom{border-bottom-color:#dce775!important}.lime-300-border-left{border-left-color:#dce775!important}.lime-400-bg{background-color:#d4e157!important}.md-lime-400-bg{background-color:#d4e157!important;color:rgba(0,0,0,.87)}.lime-400-fg{color:#d4e157!important}.lime-400-border{border-color:#d4e157!important}.lime-400-border-top{border-top-color:#d4e157!important}.lime-400-border-right{border-right-color:#d4e157!important}.lime-400-border-bottom{border-bottom-color:#d4e157!important}.lime-400-border-left{border-left-color:#d4e157!important}.lime-500-bg{background-color:#cddc39!important}.md-lime-500-bg{background-color:#cddc39!important;color:rgba(0,0,0,.87)}.lime-500-fg{color:#cddc39!important}.lime-500-border{border-color:#cddc39!important}.lime-500-border-top{border-top-color:#cddc39!important}.lime-500-border-right{border-right-color:#cddc39!important}.lime-500-border-bottom{border-bottom-color:#cddc39!important}.lime-500-border-left{border-left-color:#cddc39!important}.md-lime-bg{background-color:#cddc39!important;color:rgba(0,0,0,.87)}.lime-bg{background-color:#cddc39!important}.lime-fg{color:#cddc39!important}.lime-border{border-color:#cddc39!important}.lime-border-top{border-top-color:#cddc39!important}.lime-border-right{border-right-color:#cddc39!important}.lime-border-bottom{border-bottom-color:#cddc39!important}.lime-border-left{border-left-color:#cddc39!important}.lime-600-bg{background-color:#c0ca33!important}.md-lime-600-bg{background-color:#c0ca33!important;color:rgba(0,0,0,.87)}.lime-600-fg{color:#c0ca33!important}.lime-600-border{border-color:#c0ca33!important}.lime-600-border-top{border-top-color:#c0ca33!important}.lime-600-border-right{border-right-color:#c0ca33!important}.lime-600-border-bottom{border-bottom-color:#c0ca33!important}.lime-600-border-left{border-left-color:#c0ca33!important}.lime-700-bg{background-color:#afb42b!important}.md-lime-700-bg{background-color:#afb42b!important;color:rgba(0,0,0,.87)}.lime-700-fg{color:#afb42b!important}.lime-700-border{border-color:#afb42b!important}.lime-700-border-top{border-top-color:#afb42b!important}.lime-700-border-right{border-right-color:#afb42b!important}.lime-700-border-bottom{border-bottom-color:#afb42b!important}.lime-700-border-left{border-left-color:#afb42b!important}.lime-800-bg{background-color:#9e9d24!important}.md-lime-800-bg{background-color:#9e9d24!important;color:rgba(0,0,0,.87)}.lime-800-fg{color:#9e9d24!important}.lime-800-border{border-color:#9e9d24!important}.lime-800-border-top{border-top-color:#9e9d24!important}.lime-800-border-right{border-right-color:#9e9d24!important}.lime-800-border-bottom{border-bottom-color:#9e9d24!important}.lime-800-border-left{border-left-color:#9e9d24!important}.lime-900-bg{background-color:#827717!important}.md-lime-900-bg{background-color:#827717!important;color:#fff}.lime-900-fg{color:#827717!important}.lime-900-border{border-color:#827717!important}.lime-900-border-top{border-top-color:#827717!important}.lime-900-border-right{border-right-color:#827717!important}.lime-900-border-bottom{border-bottom-color:#827717!important}.lime-900-border-left{border-left-color:#827717!important}.lime-A100-bg{background-color:#f4ff81!important}.md-lime-A100-bg{background-color:#f4ff81!important;color:rgba(0,0,0,.87)}.lime-A100-fg{color:#f4ff81!important}.lime-A100-border{border-color:#f4ff81!important}.lime-A100-border-top{border-top-color:#f4ff81!important}.lime-A100-border-right{border-right-color:#f4ff81!important}.lime-A100-border-bottom{border-bottom-color:#f4ff81!important}.lime-A100-border-left{border-left-color:#f4ff81!important}.lime-A200-bg{background-color:#eeff41!important}.md-lime-A200-bg{background-color:#eeff41!important;color:rgba(0,0,0,.87)}.lime-A200-fg{color:#eeff41!important}.lime-A200-border{border-color:#eeff41!important}.lime-A200-border-top{border-top-color:#eeff41!important}.lime-A200-border-right{border-right-color:#eeff41!important}.lime-A200-border-bottom{border-bottom-color:#eeff41!important}.lime-A200-border-left{border-left-color:#eeff41!important}.lime-A400-bg{background-color:#c6ff00!important}.md-lime-A400-bg{background-color:#c6ff00!important;color:rgba(0,0,0,.87)}.lime-A400-fg{color:#c6ff00!important}.lime-A400-border{border-color:#c6ff00!important}.lime-A400-border-top{border-top-color:#c6ff00!important}.lime-A400-border-right{border-right-color:#c6ff00!important}.lime-A400-border-bottom{border-bottom-color:#c6ff00!important}.lime-A400-border-left{border-left-color:#c6ff00!important}.lime-A700-bg{background-color:#aeea00!important}.md-lime-A700-bg{background-color:#aeea00!important;color:rgba(0,0,0,.87)}.lime-A700-fg{color:#aeea00!important}.lime-A700-border{border-color:#aeea00!important}.lime-A700-border-top{border-top-color:#aeea00!important}.lime-A700-border-right{border-right-color:#aeea00!important}.lime-A700-border-bottom{border-bottom-color:#aeea00!important}.lime-A700-border-left{border-left-color:#aeea00!important}.yellow-50-bg{background-color:#fffde7!important}.md-yellow-50-bg{background-color:#fffde7!important;color:rgba(0,0,0,.87)}.yellow-50-fg{color:#fffde7!important}.yellow-50-border{border-color:#fffde7!important}.yellow-50-border-top{border-top-color:#fffde7!important}.yellow-50-border-right{border-right-color:#fffde7!important}.yellow-50-border-bottom{border-bottom-color:#fffde7!important}.yellow-50-border-left{border-left-color:#fffde7!important}.yellow-100-bg{background-color:#fff9c4!important}.md-yellow-100-bg{background-color:#fff9c4!important;color:rgba(0,0,0,.87)}.yellow-100-fg{color:#fff9c4!important}.yellow-100-border{border-color:#fff9c4!important}.yellow-100-border-top{border-top-color:#fff9c4!important}.yellow-100-border-right{border-right-color:#fff9c4!important}.yellow-100-border-bottom{border-bottom-color:#fff9c4!important}.yellow-100-border-left{border-left-color:#fff9c4!important}.yellow-200-bg{background-color:#fff59d!important}.md-yellow-200-bg{background-color:#fff59d!important;color:rgba(0,0,0,.87)}.yellow-200-fg{color:#fff59d!important}.yellow-200-border{border-color:#fff59d!important}.yellow-200-border-top{border-top-color:#fff59d!important}.yellow-200-border-right{border-right-color:#fff59d!important}.yellow-200-border-bottom{border-bottom-color:#fff59d!important}.yellow-200-border-left{border-left-color:#fff59d!important}.yellow-300-bg{background-color:#fff176!important}.md-yellow-300-bg{background-color:#fff176!important;color:rgba(0,0,0,.87)}.yellow-300-fg{color:#fff176!important}.yellow-300-border{border-color:#fff176!important}.yellow-300-border-top{border-top-color:#fff176!important}.yellow-300-border-right{border-right-color:#fff176!important}.yellow-300-border-bottom{border-bottom-color:#fff176!important}.yellow-300-border-left{border-left-color:#fff176!important}.yellow-400-bg{background-color:#ffee58!important}.md-yellow-400-bg{background-color:#ffee58!important;color:rgba(0,0,0,.87)}.yellow-400-fg{color:#ffee58!important}.yellow-400-border{border-color:#ffee58!important}.yellow-400-border-top{border-top-color:#ffee58!important}.yellow-400-border-right{border-right-color:#ffee58!important}.yellow-400-border-bottom{border-bottom-color:#ffee58!important}.yellow-400-border-left{border-left-color:#ffee58!important}.yellow-500-bg{background-color:#ffeb3b!important}.md-yellow-500-bg{background-color:#ffeb3b!important;color:rgba(0,0,0,.87)}.yellow-500-fg{color:#ffeb3b!important}.yellow-500-border{border-color:#ffeb3b!important}.yellow-500-border-top{border-top-color:#ffeb3b!important}.yellow-500-border-right{border-right-color:#ffeb3b!important}.yellow-500-border-bottom{border-bottom-color:#ffeb3b!important}.yellow-500-border-left{border-left-color:#ffeb3b!important}.md-yellow-bg{background-color:#ffeb3b!important;color:rgba(0,0,0,.87)}.yellow-bg{background-color:#ffeb3b!important}.yellow-fg{color:#ffeb3b!important}.yellow-border{border-color:#ffeb3b!important}.yellow-border-top{border-top-color:#ffeb3b!important}.yellow-border-right{border-right-color:#ffeb3b!important}.yellow-border-bottom{border-bottom-color:#ffeb3b!important}.yellow-border-left{border-left-color:#ffeb3b!important}.yellow-600-bg{background-color:#fdd835!important}.md-yellow-600-bg{background-color:#fdd835!important;color:rgba(0,0,0,.87)}.yellow-600-fg{color:#fdd835!important}.yellow-600-border{border-color:#fdd835!important}.yellow-600-border-top{border-top-color:#fdd835!important}.yellow-600-border-right{border-right-color:#fdd835!important}.yellow-600-border-bottom{border-bottom-color:#fdd835!important}.yellow-600-border-left{border-left-color:#fdd835!important}.yellow-700-bg{background-color:#fbc02d!important}.md-yellow-700-bg{background-color:#fbc02d!important;color:rgba(0,0,0,.87)}.yellow-700-fg{color:#fbc02d!important}.yellow-700-border{border-color:#fbc02d!important}.yellow-700-border-top{border-top-color:#fbc02d!important}.yellow-700-border-right{border-right-color:#fbc02d!important}.yellow-700-border-bottom{border-bottom-color:#fbc02d!important}.yellow-700-border-left{border-left-color:#fbc02d!important}.yellow-800-bg{background-color:#f9a825!important}.md-yellow-800-bg{background-color:#f9a825!important;color:rgba(0,0,0,.87)}.yellow-800-fg{color:#f9a825!important}.yellow-800-border{border-color:#f9a825!important}.yellow-800-border-top{border-top-color:#f9a825!important}.yellow-800-border-right{border-right-color:#f9a825!important}.yellow-800-border-bottom{border-bottom-color:#f9a825!important}.yellow-800-border-left{border-left-color:#f9a825!important}.yellow-900-bg{background-color:#f57f17!important}.md-yellow-900-bg{background-color:#f57f17!important;color:rgba(0,0,0,.87)}.yellow-900-fg{color:#f57f17!important}.yellow-900-border{border-color:#f57f17!important}.yellow-900-border-top{border-top-color:#f57f17!important}.yellow-900-border-right{border-right-color:#f57f17!important}.yellow-900-border-bottom{border-bottom-color:#f57f17!important}.yellow-900-border-left{border-left-color:#f57f17!important}.yellow-A100-bg{background-color:#ffff8d!important}.md-yellow-A100-bg{background-color:#ffff8d!important;color:rgba(0,0,0,.87)}.yellow-A100-fg{color:#ffff8d!important}.yellow-A100-border{border-color:#ffff8d!important}.yellow-A100-border-top{border-top-color:#ffff8d!important}.yellow-A100-border-right{border-right-color:#ffff8d!important}.yellow-A100-border-bottom{border-bottom-color:#ffff8d!important}.yellow-A100-border-left{border-left-color:#ffff8d!important}.yellow-A200-bg{background-color:#ff0!important}.md-yellow-A200-bg{background-color:#ff0!important;color:rgba(0,0,0,.87)}.yellow-A200-fg{color:#ff0!important}.yellow-A200-border{border-color:#ff0!important}.yellow-A200-border-top{border-top-color:#ff0!important}.yellow-A200-border-right{border-right-color:#ff0!important}.yellow-A200-border-bottom{border-bottom-color:#ff0!important}.yellow-A200-border-left{border-left-color:#ff0!important}.yellow-A400-bg{background-color:#ffea00!important}.md-yellow-A400-bg{background-color:#ffea00!important;color:rgba(0,0,0,.87)}.yellow-A400-fg{color:#ffea00!important}.yellow-A400-border{border-color:#ffea00!important}.yellow-A400-border-top{border-top-color:#ffea00!important}.yellow-A400-border-right{border-right-color:#ffea00!important}.yellow-A400-border-bottom{border-bottom-color:#ffea00!important}.yellow-A400-border-left{border-left-color:#ffea00!important}.yellow-A700-bg{background-color:#ffd600!important}.md-yellow-A700-bg{background-color:#ffd600!important;color:rgba(0,0,0,.87)}.yellow-A700-fg{color:#ffd600!important}.yellow-A700-border{border-color:#ffd600!important}.yellow-A700-border-top{border-top-color:#ffd600!important}.yellow-A700-border-right{border-right-color:#ffd600!important}.yellow-A700-border-bottom{border-bottom-color:#ffd600!important}.yellow-A700-border-left{border-left-color:#ffd600!important}.amber-50-bg{background-color:#fff8e1!important}.md-amber-50-bg{background-color:#fff8e1!important;color:rgba(0,0,0,.87)}.amber-50-fg{color:#fff8e1!important}.amber-50-border{border-color:#fff8e1!important}.amber-50-border-top{border-top-color:#fff8e1!important}.amber-50-border-right{border-right-color:#fff8e1!important}.amber-50-border-bottom{border-bottom-color:#fff8e1!important}.amber-50-border-left{border-left-color:#fff8e1!important}.amber-100-bg{background-color:#ffecb3!important}.md-amber-100-bg{background-color:#ffecb3!important;color:rgba(0,0,0,.87)}.amber-100-fg{color:#ffecb3!important}.amber-100-border{border-color:#ffecb3!important}.amber-100-border-top{border-top-color:#ffecb3!important}.amber-100-border-right{border-right-color:#ffecb3!important}.amber-100-border-bottom{border-bottom-color:#ffecb3!important}.amber-100-border-left{border-left-color:#ffecb3!important}.amber-200-bg{background-color:#ffe082!important}.md-amber-200-bg{background-color:#ffe082!important;color:rgba(0,0,0,.87)}.amber-200-fg{color:#ffe082!important}.amber-200-border{border-color:#ffe082!important}.amber-200-border-top{border-top-color:#ffe082!important}.amber-200-border-right{border-right-color:#ffe082!important}.amber-200-border-bottom{border-bottom-color:#ffe082!important}.amber-200-border-left{border-left-color:#ffe082!important}.amber-300-bg{background-color:#ffd54f!important}.md-amber-300-bg{background-color:#ffd54f!important;color:rgba(0,0,0,.87)}.amber-300-fg{color:#ffd54f!important}.amber-300-border{border-color:#ffd54f!important}.amber-300-border-top{border-top-color:#ffd54f!important}.amber-300-border-right{border-right-color:#ffd54f!important}.amber-300-border-bottom{border-bottom-color:#ffd54f!important}.amber-300-border-left{border-left-color:#ffd54f!important}.amber-400-bg{background-color:#ffca28!important}.md-amber-400-bg{background-color:#ffca28!important;color:rgba(0,0,0,.87)}.amber-400-fg{color:#ffca28!important}.amber-400-border{border-color:#ffca28!important}.amber-400-border-top{border-top-color:#ffca28!important}.amber-400-border-right{border-right-color:#ffca28!important}.amber-400-border-bottom{border-bottom-color:#ffca28!important}.amber-400-border-left{border-left-color:#ffca28!important}.amber-500-bg{background-color:#ffc107!important}.md-amber-500-bg{background-color:#ffc107!important;color:rgba(0,0,0,.87)}.amber-500-fg{color:#ffc107!important}.amber-500-border{border-color:#ffc107!important}.amber-500-border-top{border-top-color:#ffc107!important}.amber-500-border-right{border-right-color:#ffc107!important}.amber-500-border-bottom{border-bottom-color:#ffc107!important}.amber-500-border-left{border-left-color:#ffc107!important}.md-amber-bg{background-color:#ffc107!important;color:rgba(0,0,0,.87)}.amber-bg{background-color:#ffc107!important}.amber-fg{color:#ffc107!important}.amber-border{border-color:#ffc107!important}.amber-border-top{border-top-color:#ffc107!important}.amber-border-right{border-right-color:#ffc107!important}.amber-border-bottom{border-bottom-color:#ffc107!important}.amber-border-left{border-left-color:#ffc107!important}.amber-600-bg{background-color:#ffb300!important}.md-amber-600-bg{background-color:#ffb300!important;color:rgba(0,0,0,.87)}.amber-600-fg{color:#ffb300!important}.amber-600-border{border-color:#ffb300!important}.amber-600-border-top{border-top-color:#ffb300!important}.amber-600-border-right{border-right-color:#ffb300!important}.amber-600-border-bottom{border-bottom-color:#ffb300!important}.amber-600-border-left{border-left-color:#ffb300!important}.amber-700-bg{background-color:#ffa000!important}.md-amber-700-bg{background-color:#ffa000!important;color:rgba(0,0,0,.87)}.amber-700-fg{color:#ffa000!important}.amber-700-border{border-color:#ffa000!important}.amber-700-border-top{border-top-color:#ffa000!important}.amber-700-border-right{border-right-color:#ffa000!important}.amber-700-border-bottom{border-bottom-color:#ffa000!important}.amber-700-border-left{border-left-color:#ffa000!important}.amber-800-bg{background-color:#ff8f00!important}.md-amber-800-bg{background-color:#ff8f00!important;color:rgba(0,0,0,.87)}.amber-800-fg{color:#ff8f00!important}.amber-800-border{border-color:#ff8f00!important}.amber-800-border-top{border-top-color:#ff8f00!important}.amber-800-border-right{border-right-color:#ff8f00!important}.amber-800-border-bottom{border-bottom-color:#ff8f00!important}.amber-800-border-left{border-left-color:#ff8f00!important}.amber-900-bg{background-color:#ff6f00!important}.md-amber-900-bg{background-color:#ff6f00!important;color:rgba(0,0,0,.87)}.amber-900-fg{color:#ff6f00!important}.amber-900-border{border-color:#ff6f00!important}.amber-900-border-top{border-top-color:#ff6f00!important}.amber-900-border-right{border-right-color:#ff6f00!important}.amber-900-border-bottom{border-bottom-color:#ff6f00!important}.amber-900-border-left{border-left-color:#ff6f00!important}.amber-A100-bg{background-color:#ffe57f!important}.md-amber-A100-bg{background-color:#ffe57f!important;color:rgba(0,0,0,.87)}.amber-A100-fg{color:#ffe57f!important}.amber-A100-border{border-color:#ffe57f!important}.amber-A100-border-top{border-top-color:#ffe57f!important}.amber-A100-border-right{border-right-color:#ffe57f!important}.amber-A100-border-bottom{border-bottom-color:#ffe57f!important}.amber-A100-border-left{border-left-color:#ffe57f!important}.amber-A200-bg{background-color:#ffd740!important}.md-amber-A200-bg{background-color:#ffd740!important;color:rgba(0,0,0,.87)}.amber-A200-fg{color:#ffd740!important}.amber-A200-border{border-color:#ffd740!important}.amber-A200-border-top{border-top-color:#ffd740!important}.amber-A200-border-right{border-right-color:#ffd740!important}.amber-A200-border-bottom{border-bottom-color:#ffd740!important}.amber-A200-border-left{border-left-color:#ffd740!important}.amber-A400-bg{background-color:#ffc400!important}.md-amber-A400-bg{background-color:#ffc400!important;color:rgba(0,0,0,.87)}.amber-A400-fg{color:#ffc400!important}.amber-A400-border{border-color:#ffc400!important}.amber-A400-border-top{border-top-color:#ffc400!important}.amber-A400-border-right{border-right-color:#ffc400!important}.amber-A400-border-bottom{border-bottom-color:#ffc400!important}.amber-A400-border-left{border-left-color:#ffc400!important}.amber-A700-bg{background-color:#ffab00!important}.md-amber-A700-bg{background-color:#ffab00!important;color:rgba(0,0,0,.87)}.amber-A700-fg{color:#ffab00!important}.amber-A700-border{border-color:#ffab00!important}.amber-A700-border-top{border-top-color:#ffab00!important}.amber-A700-border-right{border-right-color:#ffab00!important}.amber-A700-border-bottom{border-bottom-color:#ffab00!important}.amber-A700-border-left{border-left-color:#ffab00!important}.orange-50-bg{background-color:#fff3e0!important}.md-orange-50-bg{background-color:#fff3e0!important;color:rgba(0,0,0,.87)}.orange-50-fg{color:#fff3e0!important}.orange-50-border{border-color:#fff3e0!important}.orange-50-border-top{border-top-color:#fff3e0!important}.orange-50-border-right{border-right-color:#fff3e0!important}.orange-50-border-bottom{border-bottom-color:#fff3e0!important}.orange-50-border-left{border-left-color:#fff3e0!important}.orange-100-bg{background-color:#ffe0b2!important}.md-orange-100-bg{background-color:#ffe0b2!important;color:rgba(0,0,0,.87)}.orange-100-fg{color:#ffe0b2!important}.orange-100-border{border-color:#ffe0b2!important}.orange-100-border-top{border-top-color:#ffe0b2!important}.orange-100-border-right{border-right-color:#ffe0b2!important}.orange-100-border-bottom{border-bottom-color:#ffe0b2!important}.orange-100-border-left{border-left-color:#ffe0b2!important}.orange-200-bg{background-color:#ffcc80!important}.md-orange-200-bg{background-color:#ffcc80!important;color:rgba(0,0,0,.87)}.orange-200-fg{color:#ffcc80!important}.orange-200-border{border-color:#ffcc80!important}.orange-200-border-top{border-top-color:#ffcc80!important}.orange-200-border-right{border-right-color:#ffcc80!important}.orange-200-border-bottom{border-bottom-color:#ffcc80!important}.orange-200-border-left{border-left-color:#ffcc80!important}.orange-300-bg{background-color:#ffb74d!important}.md-orange-300-bg{background-color:#ffb74d!important;color:rgba(0,0,0,.87)}.orange-300-fg{color:#ffb74d!important}.orange-300-border{border-color:#ffb74d!important}.orange-300-border-top{border-top-color:#ffb74d!important}.orange-300-border-right{border-right-color:#ffb74d!important}.orange-300-border-bottom{border-bottom-color:#ffb74d!important}.orange-300-border-left{border-left-color:#ffb74d!important}.orange-400-bg{background-color:#ffa726!important}.md-orange-400-bg{background-color:#ffa726!important;color:rgba(0,0,0,.87)}.orange-400-fg{color:#ffa726!important}.orange-400-border{border-color:#ffa726!important}.orange-400-border-top{border-top-color:#ffa726!important}.orange-400-border-right{border-right-color:#ffa726!important}.orange-400-border-bottom{border-bottom-color:#ffa726!important}.orange-400-border-left{border-left-color:#ffa726!important}.orange-500-bg{background-color:#ff9800!important}.md-orange-500-bg{background-color:#ff9800!important;color:rgba(0,0,0,.87)}.orange-500-fg{color:#ff9800!important}.orange-500-border{border-color:#ff9800!important}.orange-500-border-top{border-top-color:#ff9800!important}.orange-500-border-right{border-right-color:#ff9800!important}.orange-500-border-bottom{border-bottom-color:#ff9800!important}.orange-500-border-left{border-left-color:#ff9800!important}.md-orange-bg{background-color:#ff9800!important;color:rgba(0,0,0,.87)}.orange-bg{background-color:#ff9800!important}.orange-fg{color:#ff9800!important}.orange-border{border-color:#ff9800!important}.orange-border-top{border-top-color:#ff9800!important}.orange-border-right{border-right-color:#ff9800!important}.orange-border-bottom{border-bottom-color:#ff9800!important}.orange-border-left{border-left-color:#ff9800!important}.orange-600-bg{background-color:#fb8c00!important}.md-orange-600-bg{background-color:#fb8c00!important;color:rgba(0,0,0,.87)}.orange-600-fg{color:#fb8c00!important}.orange-600-border{border-color:#fb8c00!important}.orange-600-border-top{border-top-color:#fb8c00!important}.orange-600-border-right{border-right-color:#fb8c00!important}.orange-600-border-bottom{border-bottom-color:#fb8c00!important}.orange-600-border-left{border-left-color:#fb8c00!important}.orange-700-bg{background-color:#f57c00!important}.md-orange-700-bg{background-color:#f57c00!important;color:rgba(0,0,0,.87)}.orange-700-fg{color:#f57c00!important}.orange-700-border{border-color:#f57c00!important}.orange-700-border-top{border-top-color:#f57c00!important}.orange-700-border-right{border-right-color:#f57c00!important}.orange-700-border-bottom{border-bottom-color:#f57c00!important}.orange-700-border-left{border-left-color:#f57c00!important}.orange-800-bg{background-color:#ef6c00!important}.md-orange-800-bg{background-color:#ef6c00!important;color:#fff}.orange-800-fg{color:#ef6c00!important}.orange-800-border{border-color:#ef6c00!important}.orange-800-border-top{border-top-color:#ef6c00!important}.orange-800-border-right{border-right-color:#ef6c00!important}.orange-800-border-bottom{border-bottom-color:#ef6c00!important}.orange-800-border-left{border-left-color:#ef6c00!important}.orange-900-bg{background-color:#e65100!important}.md-orange-900-bg{background-color:#e65100!important;color:#fff}.orange-900-fg{color:#e65100!important}.orange-900-border{border-color:#e65100!important}.orange-900-border-top{border-top-color:#e65100!important}.orange-900-border-right{border-right-color:#e65100!important}.orange-900-border-bottom{border-bottom-color:#e65100!important}.orange-900-border-left{border-left-color:#e65100!important}.orange-A100-bg{background-color:#ffd180!important}.md-orange-A100-bg{background-color:#ffd180!important;color:rgba(0,0,0,.87)}.orange-A100-fg{color:#ffd180!important}.orange-A100-border{border-color:#ffd180!important}.orange-A100-border-top{border-top-color:#ffd180!important}.orange-A100-border-right{border-right-color:#ffd180!important}.orange-A100-border-bottom{border-bottom-color:#ffd180!important}.orange-A100-border-left{border-left-color:#ffd180!important}.orange-A200-bg{background-color:#ffab40!important}.md-orange-A200-bg{background-color:#ffab40!important;color:rgba(0,0,0,.87)}.orange-A200-fg{color:#ffab40!important}.orange-A200-border{border-color:#ffab40!important}.orange-A200-border-top{border-top-color:#ffab40!important}.orange-A200-border-right{border-right-color:#ffab40!important}.orange-A200-border-bottom{border-bottom-color:#ffab40!important}.orange-A200-border-left{border-left-color:#ffab40!important}.orange-A400-bg{background-color:#ff9100!important}.md-orange-A400-bg{background-color:#ff9100!important;color:rgba(0,0,0,.87)}.orange-A400-fg{color:#ff9100!important}.orange-A400-border{border-color:#ff9100!important}.orange-A400-border-top{border-top-color:#ff9100!important}.orange-A400-border-right{border-right-color:#ff9100!important}.orange-A400-border-bottom{border-bottom-color:#ff9100!important}.orange-A400-border-left{border-left-color:#ff9100!important}.orange-A700-bg{background-color:#ff6d00!important}.md-orange-A700-bg{background-color:#ff6d00!important;color:rgba(0,0,0,.87)}.orange-A700-fg{color:#ff6d00!important}.orange-A700-border{border-color:#ff6d00!important}.orange-A700-border-top{border-top-color:#ff6d00!important}.orange-A700-border-right{border-right-color:#ff6d00!important}.orange-A700-border-bottom{border-bottom-color:#ff6d00!important}.orange-A700-border-left{border-left-color:#ff6d00!important}.deep-orange-50-bg{background-color:#fbe9e7!important}.md-deep-orange-50-bg{background-color:#fbe9e7!important;color:rgba(0,0,0,.87)}.deep-orange-50-fg{color:#fbe9e7!important}.deep-orange-50-border{border-color:#fbe9e7!important}.deep-orange-50-border-top{border-top-color:#fbe9e7!important}.deep-orange-50-border-right{border-right-color:#fbe9e7!important}.deep-orange-50-border-bottom{border-bottom-color:#fbe9e7!important}.deep-orange-50-border-left{border-left-color:#fbe9e7!important}.deep-orange-100-bg{background-color:#ffccbc!important}.md-deep-orange-100-bg{background-color:#ffccbc!important;color:rgba(0,0,0,.87)}.deep-orange-100-fg{color:#ffccbc!important}.deep-orange-100-border{border-color:#ffccbc!important}.deep-orange-100-border-top{border-top-color:#ffccbc!important}.deep-orange-100-border-right{border-right-color:#ffccbc!important}.deep-orange-100-border-bottom{border-bottom-color:#ffccbc!important}.deep-orange-100-border-left{border-left-color:#ffccbc!important}.deep-orange-200-bg{background-color:#ffab91!important}.md-deep-orange-200-bg{background-color:#ffab91!important;color:rgba(0,0,0,.87)}.deep-orange-200-fg{color:#ffab91!important}.deep-orange-200-border{border-color:#ffab91!important}.deep-orange-200-border-top{border-top-color:#ffab91!important}.deep-orange-200-border-right{border-right-color:#ffab91!important}.deep-orange-200-border-bottom{border-bottom-color:#ffab91!important}.deep-orange-200-border-left{border-left-color:#ffab91!important}.deep-orange-300-bg{background-color:#ff8a65!important}.md-deep-orange-300-bg{background-color:#ff8a65!important;color:rgba(0,0,0,.87)}.deep-orange-300-fg{color:#ff8a65!important}.deep-orange-300-border{border-color:#ff8a65!important}.deep-orange-300-border-top{border-top-color:#ff8a65!important}.deep-orange-300-border-right{border-right-color:#ff8a65!important}.deep-orange-300-border-bottom{border-bottom-color:#ff8a65!important}.deep-orange-300-border-left{border-left-color:#ff8a65!important}.deep-orange-400-bg{background-color:#ff7043!important}.md-deep-orange-400-bg{background-color:#ff7043!important;color:rgba(0,0,0,.87)}.deep-orange-400-fg{color:#ff7043!important}.deep-orange-400-border{border-color:#ff7043!important}.deep-orange-400-border-top{border-top-color:#ff7043!important}.deep-orange-400-border-right{border-right-color:#ff7043!important}.deep-orange-400-border-bottom{border-bottom-color:#ff7043!important}.deep-orange-400-border-left{border-left-color:#ff7043!important}.deep-orange-500-bg{background-color:#ff5722!important}.md-deep-orange-500-bg{background-color:#ff5722!important;color:#fff}.deep-orange-500-fg{color:#ff5722!important}.deep-orange-500-border{border-color:#ff5722!important}.deep-orange-500-border-top{border-top-color:#ff5722!important}.deep-orange-500-border-right{border-right-color:#ff5722!important}.deep-orange-500-border-bottom{border-bottom-color:#ff5722!important}.deep-orange-500-border-left{border-left-color:#ff5722!important}.md-deep-orange-bg{background-color:#ff5722!important;color:#fff}.deep-orange-bg{background-color:#ff5722!important}.deep-orange-fg{color:#ff5722!important}.deep-orange-border{border-color:#ff5722!important}.deep-orange-border-top{border-top-color:#ff5722!important}.deep-orange-border-right{border-right-color:#ff5722!important}.deep-orange-border-bottom{border-bottom-color:#ff5722!important}.deep-orange-border-left{border-left-color:#ff5722!important}.deep-orange-600-bg{background-color:#f4511e!important}.md-deep-orange-600-bg{background-color:#f4511e!important;color:#fff}.deep-orange-600-fg{color:#f4511e!important}.deep-orange-600-border{border-color:#f4511e!important}.deep-orange-600-border-top{border-top-color:#f4511e!important}.deep-orange-600-border-right{border-right-color:#f4511e!important}.deep-orange-600-border-bottom{border-bottom-color:#f4511e!important}.deep-orange-600-border-left{border-left-color:#f4511e!important}.deep-orange-700-bg{background-color:#e64a19!important}.md-deep-orange-700-bg{background-color:#e64a19!important;color:#fff}.deep-orange-700-fg{color:#e64a19!important}.deep-orange-700-border{border-color:#e64a19!important}.deep-orange-700-border-top{border-top-color:#e64a19!important}.deep-orange-700-border-right{border-right-color:#e64a19!important}.deep-orange-700-border-bottom{border-bottom-color:#e64a19!important}.deep-orange-700-border-left{border-left-color:#e64a19!important}.deep-orange-800-bg{background-color:#d84315!important}.md-deep-orange-800-bg{background-color:#d84315!important;color:#fff}.deep-orange-800-fg{color:#d84315!important}.deep-orange-800-border{border-color:#d84315!important}.deep-orange-800-border-top{border-top-color:#d84315!important}.deep-orange-800-border-right{border-right-color:#d84315!important}.deep-orange-800-border-bottom{border-bottom-color:#d84315!important}.deep-orange-800-border-left{border-left-color:#d84315!important}.deep-orange-900-bg{background-color:#bf360c!important}.md-deep-orange-900-bg{background-color:#bf360c!important;color:#fff}.deep-orange-900-fg{color:#bf360c!important}.deep-orange-900-border{border-color:#bf360c!important}.deep-orange-900-border-top{border-top-color:#bf360c!important}.deep-orange-900-border-right{border-right-color:#bf360c!important}.deep-orange-900-border-bottom{border-bottom-color:#bf360c!important}.deep-orange-900-border-left{border-left-color:#bf360c!important}.deep-orange-A100-bg{background-color:#ff9e80!important}.md-deep-orange-A100-bg{background-color:#ff9e80!important;color:rgba(0,0,0,.87)}.deep-orange-A100-fg{color:#ff9e80!important}.deep-orange-A100-border{border-color:#ff9e80!important}.deep-orange-A100-border-top{border-top-color:#ff9e80!important}.deep-orange-A100-border-right{border-right-color:#ff9e80!important}.deep-orange-A100-border-bottom{border-bottom-color:#ff9e80!important}.deep-orange-A100-border-left{border-left-color:#ff9e80!important}.deep-orange-A200-bg{background-color:#ff6e40!important}.md-deep-orange-A200-bg{background-color:#ff6e40!important;color:rgba(0,0,0,.87)}.deep-orange-A200-fg{color:#ff6e40!important}.deep-orange-A200-border{border-color:#ff6e40!important}.deep-orange-A200-border-top{border-top-color:#ff6e40!important}.deep-orange-A200-border-right{border-right-color:#ff6e40!important}.deep-orange-A200-border-bottom{border-bottom-color:#ff6e40!important}.deep-orange-A200-border-left{border-left-color:#ff6e40!important}.deep-orange-A400-bg{background-color:#ff3d00!important}.md-deep-orange-A400-bg{background-color:#ff3d00!important;color:#fff}.deep-orange-A400-fg{color:#ff3d00!important}.deep-orange-A400-border{border-color:#ff3d00!important}.deep-orange-A400-border-top{border-top-color:#ff3d00!important}.deep-orange-A400-border-right{border-right-color:#ff3d00!important}.deep-orange-A400-border-bottom{border-bottom-color:#ff3d00!important}.deep-orange-A400-border-left{border-left-color:#ff3d00!important}.deep-orange-A700-bg{background-color:#dd2c00!important}.md-deep-orange-A700-bg{background-color:#dd2c00!important;color:#fff}.deep-orange-A700-fg{color:#dd2c00!important}.deep-orange-A700-border{border-color:#dd2c00!important}.deep-orange-A700-border-top{border-top-color:#dd2c00!important}.deep-orange-A700-border-right{border-right-color:#dd2c00!important}.deep-orange-A700-border-bottom{border-bottom-color:#dd2c00!important}.deep-orange-A700-border-left{border-left-color:#dd2c00!important}.brown-50-bg{background-color:#efebe9!important}.md-brown-50-bg{background-color:#efebe9!important;color:rgba(0,0,0,.87)}.brown-50-fg{color:#efebe9!important}.brown-50-border{border-color:#efebe9!important}.brown-50-border-top{border-top-color:#efebe9!important}.brown-50-border-right{border-right-color:#efebe9!important}.brown-50-border-bottom{border-bottom-color:#efebe9!important}.brown-50-border-left{border-left-color:#efebe9!important}.brown-100-bg{background-color:#d7ccc8!important}.md-brown-100-bg{background-color:#d7ccc8!important;color:rgba(0,0,0,.87)}.brown-100-fg{color:#d7ccc8!important}.brown-100-border{border-color:#d7ccc8!important}.brown-100-border-top{border-top-color:#d7ccc8!important}.brown-100-border-right{border-right-color:#d7ccc8!important}.brown-100-border-bottom{border-bottom-color:#d7ccc8!important}.brown-100-border-left{border-left-color:#d7ccc8!important}.brown-200-bg{background-color:#bcaaa4!important}.md-brown-200-bg{background-color:#bcaaa4!important;color:rgba(0,0,0,.87)}.brown-200-fg{color:#bcaaa4!important}.brown-200-border{border-color:#bcaaa4!important}.brown-200-border-top{border-top-color:#bcaaa4!important}.brown-200-border-right{border-right-color:#bcaaa4!important}.brown-200-border-bottom{border-bottom-color:#bcaaa4!important}.brown-200-border-left{border-left-color:#bcaaa4!important}.brown-300-bg{background-color:#a1887f!important}.md-brown-300-bg{background-color:#a1887f!important;color:#fff}.brown-300-fg{color:#a1887f!important}.brown-300-border{border-color:#a1887f!important}.brown-300-border-top{border-top-color:#a1887f!important}.brown-300-border-right{border-right-color:#a1887f!important}.brown-300-border-bottom{border-bottom-color:#a1887f!important}.brown-300-border-left{border-left-color:#a1887f!important}.brown-400-bg{background-color:#8d6e63!important}.md-brown-400-bg{background-color:#8d6e63!important;color:#fff}.brown-400-fg{color:#8d6e63!important}.brown-400-border{border-color:#8d6e63!important}.brown-400-border-top{border-top-color:#8d6e63!important}.brown-400-border-right{border-right-color:#8d6e63!important}.brown-400-border-bottom{border-bottom-color:#8d6e63!important}.brown-400-border-left{border-left-color:#8d6e63!important}.brown-500-bg{background-color:#795548!important}.md-brown-500-bg{background-color:#795548!important;color:rgba(255,255,255,.87)}.brown-500-fg{color:#795548!important}.brown-500-border{border-color:#795548!important}.brown-500-border-top{border-top-color:#795548!important}.brown-500-border-right{border-right-color:#795548!important}.brown-500-border-bottom{border-bottom-color:#795548!important}.brown-500-border-left{border-left-color:#795548!important}.md-brown-bg{background-color:#795548!important;color:rgba(255,255,255,.87)}.brown-bg{background-color:#795548!important}.brown-fg{color:#795548!important}.brown-border{border-color:#795548!important}.brown-border-top{border-top-color:#795548!important}.brown-border-right{border-right-color:#795548!important}.brown-border-bottom{border-bottom-color:#795548!important}.brown-border-left{border-left-color:#795548!important}.brown-600-bg{background-color:#6d4c41!important}.md-brown-600-bg{background-color:#6d4c41!important;color:rgba(255,255,255,.87)}.brown-600-fg{color:#6d4c41!important}.brown-600-border{border-color:#6d4c41!important}.brown-600-border-top{border-top-color:#6d4c41!important}.brown-600-border-right{border-right-color:#6d4c41!important}.brown-600-border-bottom{border-bottom-color:#6d4c41!important}.brown-600-border-left{border-left-color:#6d4c41!important}.brown-700-bg{background-color:#5d4037!important}.md-brown-700-bg{background-color:#5d4037!important;color:rgba(255,255,255,.87)}.brown-700-fg{color:#5d4037!important}.brown-700-border{border-color:#5d4037!important}.brown-700-border-top{border-top-color:#5d4037!important}.brown-700-border-right{border-right-color:#5d4037!important}.brown-700-border-bottom{border-bottom-color:#5d4037!important}.brown-700-border-left{border-left-color:#5d4037!important}.brown-800-bg{background-color:#4e342e!important}.md-brown-800-bg{background-color:#4e342e!important;color:rgba(255,255,255,.87)}.brown-800-fg{color:#4e342e!important}.brown-800-border{border-color:#4e342e!important}.brown-800-border-top{border-top-color:#4e342e!important}.brown-800-border-right{border-right-color:#4e342e!important}.brown-800-border-bottom{border-bottom-color:#4e342e!important}.brown-800-border-left{border-left-color:#4e342e!important}.brown-900-bg{background-color:#3e2723!important}.md-brown-900-bg{background-color:#3e2723!important;color:rgba(255,255,255,.87)}.brown-900-fg{color:#3e2723!important}.brown-900-border{border-color:#3e2723!important}.brown-900-border-top{border-top-color:#3e2723!important}.brown-900-border-right{border-right-color:#3e2723!important}.brown-900-border-bottom{border-bottom-color:#3e2723!important}.brown-900-border-left{border-left-color:#3e2723!important}.brown-A100-bg{background-color:#d7ccc8!important}.md-brown-A100-bg{background-color:#d7ccc8!important;color:rgba(255,255,255,.87)}.brown-A100-fg{color:#d7ccc8!important}.brown-A100-border{border-color:#d7ccc8!important}.brown-A100-border-top{border-top-color:#d7ccc8!important}.brown-A100-border-right{border-right-color:#d7ccc8!important}.brown-A100-border-bottom{border-bottom-color:#d7ccc8!important}.brown-A100-border-left{border-left-color:#d7ccc8!important}.brown-A200-bg{background-color:#bcaaa4!important}.md-brown-A200-bg{background-color:#bcaaa4!important;color:rgba(255,255,255,.87)}.brown-A200-fg{color:#bcaaa4!important}.brown-A200-border{border-color:#bcaaa4!important}.brown-A200-border-top{border-top-color:#bcaaa4!important}.brown-A200-border-right{border-right-color:#bcaaa4!important}.brown-A200-border-bottom{border-bottom-color:#bcaaa4!important}.brown-A200-border-left{border-left-color:#bcaaa4!important}.brown-A400-bg{background-color:#8d6e63!important}.md-brown-A400-bg{background-color:#8d6e63!important;color:rgba(255,255,255,.87)}.brown-A400-fg{color:#8d6e63!important}.brown-A400-border{border-color:#8d6e63!important}.brown-A400-border-top{border-top-color:#8d6e63!important}.brown-A400-border-right{border-right-color:#8d6e63!important}.brown-A400-border-bottom{border-bottom-color:#8d6e63!important}.brown-A400-border-left{border-left-color:#8d6e63!important}.brown-A700-bg{background-color:#5d4037!important}.md-brown-A700-bg{background-color:#5d4037!important;color:rgba(255,255,255,.87)}.brown-A700-fg{color:#5d4037!important}.brown-A700-border{border-color:#5d4037!important}.brown-A700-border-top{border-top-color:#5d4037!important}.brown-A700-border-right{border-right-color:#5d4037!important}.brown-A700-border-bottom{border-bottom-color:#5d4037!important}.brown-A700-border-left{border-left-color:#5d4037!important}.grey-50-bg{background-color:#fafafa!important}.md-grey-50-bg{background-color:#fafafa!important;color:rgba(0,0,0,.87)}.grey-50-fg{color:#fafafa!important}.grey-50-border{border-color:#fafafa!important}.grey-50-border-top{border-top-color:#fafafa!important}.grey-50-border-right{border-right-color:#fafafa!important}.grey-50-border-bottom{border-bottom-color:#fafafa!important}.grey-50-border-left{border-left-color:#fafafa!important}.grey-100-bg{background-color:#f5f5f5!important}.md-grey-100-bg{background-color:#f5f5f5!important;color:rgba(0,0,0,.87)}.grey-100-fg{color:#f5f5f5!important}.grey-100-border{border-color:#f5f5f5!important}.grey-100-border-top{border-top-color:#f5f5f5!important}.grey-100-border-right{border-right-color:#f5f5f5!important}.grey-100-border-bottom{border-bottom-color:#f5f5f5!important}.grey-100-border-left{border-left-color:#f5f5f5!important}.grey-200-bg{background-color:#eee!important}.md-grey-200-bg{background-color:#eee!important;color:rgba(0,0,0,.87)}.grey-200-fg{color:#eee!important}.grey-200-border{border-color:#eee!important}.grey-200-border-top{border-top-color:#eee!important}.grey-200-border-right{border-right-color:#eee!important}.grey-200-border-bottom{border-bottom-color:#eee!important}.grey-200-border-left{border-left-color:#eee!important}.grey-300-bg{background-color:#e0e0e0!important}.md-grey-300-bg{background-color:#e0e0e0!important;color:rgba(0,0,0,.87)}.grey-300-fg{color:#e0e0e0!important}.grey-300-border{border-color:#e0e0e0!important}.grey-300-border-top{border-top-color:#e0e0e0!important}.grey-300-border-right{border-right-color:#e0e0e0!important}.grey-300-border-bottom{border-bottom-color:#e0e0e0!important}.grey-300-border-left{border-left-color:#e0e0e0!important}.grey-400-bg{background-color:#bdbdbd!important}.md-grey-400-bg{background-color:#bdbdbd!important;color:rgba(0,0,0,.87)}.grey-400-fg{color:#bdbdbd!important}.grey-400-border{border-color:#bdbdbd!important}.grey-400-border-top{border-top-color:#bdbdbd!important}.grey-400-border-right{border-right-color:#bdbdbd!important}.grey-400-border-bottom{border-bottom-color:#bdbdbd!important}.grey-400-border-left{border-left-color:#bdbdbd!important}.grey-500-bg{background-color:#9e9e9e!important}.md-grey-500-bg{background-color:#9e9e9e!important;color:rgba(0,0,0,.87)}.grey-500-fg{color:#9e9e9e!important}.grey-500-border{border-color:#9e9e9e!important}.grey-500-border-top{border-top-color:#9e9e9e!important}.grey-500-border-right{border-right-color:#9e9e9e!important}.grey-500-border-bottom{border-bottom-color:#9e9e9e!important}.grey-500-border-left{border-left-color:#9e9e9e!important}.md-grey-bg{background-color:#9e9e9e!important;color:rgba(0,0,0,.87)}.grey-bg{background-color:#9e9e9e!important}.grey-fg{color:#9e9e9e!important}.grey-border{border-color:#9e9e9e!important}.grey-border-top{border-top-color:#9e9e9e!important}.grey-border-right{border-right-color:#9e9e9e!important}.grey-border-bottom{border-bottom-color:#9e9e9e!important}.grey-border-left{border-left-color:#9e9e9e!important}.grey-600-bg{background-color:#757575!important}.md-grey-600-bg{background-color:#757575!important;color:rgba(255,255,255,.87)}.grey-600-fg{color:#757575!important}.grey-600-border{border-color:#757575!important}.grey-600-border-top{border-top-color:#757575!important}.grey-600-border-right{border-right-color:#757575!important}.grey-600-border-bottom{border-bottom-color:#757575!important}.grey-600-border-left{border-left-color:#757575!important}.grey-700-bg{background-color:#616161!important}.md-grey-700-bg{background-color:#616161!important;color:rgba(255,255,255,.87)}.grey-700-fg{color:#616161!important}.grey-700-border{border-color:#616161!important}.grey-700-border-top{border-top-color:#616161!important}.grey-700-border-right{border-right-color:#616161!important}.grey-700-border-bottom{border-bottom-color:#616161!important}.grey-700-border-left{border-left-color:#616161!important}.grey-800-bg{background-color:#424242!important}.md-grey-800-bg{background-color:#424242!important;color:rgba(255,255,255,.87)}.grey-800-fg{color:#424242!important}.grey-800-border{border-color:#424242!important}.grey-800-border-top{border-top-color:#424242!important}.grey-800-border-right{border-right-color:#424242!important}.grey-800-border-bottom{border-bottom-color:#424242!important}.grey-800-border-left{border-left-color:#424242!important}.grey-900-bg{background-color:#212121!important}.md-grey-900-bg{background-color:#212121!important;color:rgba(255,255,255,.87)}.grey-900-fg{color:#212121!important}.grey-900-border{border-color:#212121!important}.grey-900-border-top{border-top-color:#212121!important}.grey-900-border-right{border-right-color:#212121!important}.grey-900-border-bottom{border-bottom-color:#212121!important}.grey-900-border-left{border-left-color:#212121!important}.grey-1000-bg{background-color:#000!important}.md-grey-1000-bg{background-color:#000!important}.grey-1000-fg{color:#000!important}.grey-1000-border{border-color:#000!important}.grey-1000-border-top{border-top-color:#000!important}.grey-1000-border-right{border-right-color:#000!important}.grey-1000-border-bottom{border-bottom-color:#000!important}.grey-1000-border-left{border-left-color:#000!important}.grey-A100-bg{background-color:#fff!important}.md-grey-A100-bg{background-color:#fff!important;color:rgba(0,0,0,.87)}.grey-A100-fg{color:#fff!important}.grey-A100-border{border-color:#fff!important}.grey-A100-border-top{border-top-color:#fff!important}.grey-A100-border-right{border-right-color:#fff!important}.grey-A100-border-bottom{border-bottom-color:#fff!important}.grey-A100-border-left{border-left-color:#fff!important}.grey-A200-bg{background-color:#eee!important}.md-grey-A200-bg{background-color:#eee!important;color:rgba(0,0,0,.87)}.grey-A200-fg{color:#eee!important}.grey-A200-border{border-color:#eee!important}.grey-A200-border-top{border-top-color:#eee!important}.grey-A200-border-right{border-right-color:#eee!important}.grey-A200-border-bottom{border-bottom-color:#eee!important}.grey-A200-border-left{border-left-color:#eee!important}.grey-A400-bg{background-color:#bdbdbd!important}.md-grey-A400-bg{background-color:#bdbdbd!important;color:rgba(0,0,0,.87)}.grey-A400-fg{color:#bdbdbd!important}.grey-A400-border{border-color:#bdbdbd!important}.grey-A400-border-top{border-top-color:#bdbdbd!important}.grey-A400-border-right{border-right-color:#bdbdbd!important}.grey-A400-border-bottom{border-bottom-color:#bdbdbd!important}.grey-A400-border-left{border-left-color:#bdbdbd!important}.grey-A700-bg{background-color:#616161!important}.md-grey-A700-bg{background-color:#616161!important;color:rgba(0,0,0,.87)}.grey-A700-fg{color:#616161!important}.grey-A700-border{border-color:#616161!important}.grey-A700-border-top{border-top-color:#616161!important}.grey-A700-border-right{border-right-color:#616161!important}.grey-A700-border-bottom{border-bottom-color:#616161!important}.grey-A700-border-left{border-left-color:#616161!important}.blue-grey-50-bg{background-color:#eceff1!important}.md-blue-grey-50-bg{background-color:#eceff1!important;color:rgba(0,0,0,.87)}.blue-grey-50-fg{color:#eceff1!important}.blue-grey-50-border{border-color:#eceff1!important}.blue-grey-50-border-top{border-top-color:#eceff1!important}.blue-grey-50-border-right{border-right-color:#eceff1!important}.blue-grey-50-border-bottom{border-bottom-color:#eceff1!important}.blue-grey-50-border-left{border-left-color:#eceff1!important}.blue-grey-100-bg{background-color:#cfd8dc!important}.md-blue-grey-100-bg{background-color:#cfd8dc!important;color:rgba(0,0,0,.87)}.blue-grey-100-fg{color:#cfd8dc!important}.blue-grey-100-border{border-color:#cfd8dc!important}.blue-grey-100-border-top{border-top-color:#cfd8dc!important}.blue-grey-100-border-right{border-right-color:#cfd8dc!important}.blue-grey-100-border-bottom{border-bottom-color:#cfd8dc!important}.blue-grey-100-border-left{border-left-color:#cfd8dc!important}.blue-grey-200-bg{background-color:#b0bec5!important}.md-blue-grey-200-bg{background-color:#b0bec5!important;color:rgba(0,0,0,.87)}.blue-grey-200-fg{color:#b0bec5!important}.blue-grey-200-border{border-color:#b0bec5!important}.blue-grey-200-border-top{border-top-color:#b0bec5!important}.blue-grey-200-border-right{border-right-color:#b0bec5!important}.blue-grey-200-border-bottom{border-bottom-color:#b0bec5!important}.blue-grey-200-border-left{border-left-color:#b0bec5!important}.blue-grey-300-bg{background-color:#90a4ae!important}.md-blue-grey-300-bg{background-color:#90a4ae!important;color:rgba(0,0,0,.87)}.blue-grey-300-fg{color:#90a4ae!important}.blue-grey-300-border{border-color:#90a4ae!important}.blue-grey-300-border-top{border-top-color:#90a4ae!important}.blue-grey-300-border-right{border-right-color:#90a4ae!important}.blue-grey-300-border-bottom{border-bottom-color:#90a4ae!important}.blue-grey-300-border-left{border-left-color:#90a4ae!important}.blue-grey-400-bg{background-color:#78909c!important}.md-blue-grey-400-bg{background-color:#78909c!important;color:#fff}.blue-grey-400-fg{color:#78909c!important}.blue-grey-400-border{border-color:#78909c!important}.blue-grey-400-border-top{border-top-color:#78909c!important}.blue-grey-400-border-right{border-right-color:#78909c!important}.blue-grey-400-border-bottom{border-bottom-color:#78909c!important}.blue-grey-400-border-left{border-left-color:#78909c!important}.blue-grey-500-bg{background-color:#607d8b!important}.md-blue-grey-500-bg{background-color:#607d8b!important;color:#fff}.blue-grey-500-fg{color:#607d8b!important}.blue-grey-500-border{border-color:#607d8b!important}.blue-grey-500-border-top{border-top-color:#607d8b!important}.blue-grey-500-border-right{border-right-color:#607d8b!important}.blue-grey-500-border-bottom{border-bottom-color:#607d8b!important}.blue-grey-500-border-left{border-left-color:#607d8b!important}.md-blue-grey-bg{background-color:#607d8b!important;color:#fff}.blue-grey-bg{background-color:#607d8b!important}.blue-grey-fg{color:#607d8b!important}.blue-grey-border{border-color:#607d8b!important}.blue-grey-border-top{border-top-color:#607d8b!important}.blue-grey-border-right{border-right-color:#607d8b!important}.blue-grey-border-bottom{border-bottom-color:#607d8b!important}.blue-grey-border-left{border-left-color:#607d8b!important}.blue-grey-600-bg{background-color:#546e7a!important}.md-blue-grey-600-bg{background-color:#546e7a!important;color:rgba(255,255,255,.87)}.blue-grey-600-fg{color:#546e7a!important}.blue-grey-600-border{border-color:#546e7a!important}.blue-grey-600-border-top{border-top-color:#546e7a!important}.blue-grey-600-border-right{border-right-color:#546e7a!important}.blue-grey-600-border-bottom{border-bottom-color:#546e7a!important}.blue-grey-600-border-left{border-left-color:#546e7a!important}.blue-grey-700-bg{background-color:#455a64!important}.md-blue-grey-700-bg{background-color:#455a64!important;color:rgba(255,255,255,.87)}.blue-grey-700-fg{color:#455a64!important}.blue-grey-700-border{border-color:#455a64!important}.blue-grey-700-border-top{border-top-color:#455a64!important}.blue-grey-700-border-right{border-right-color:#455a64!important}.blue-grey-700-border-bottom{border-bottom-color:#455a64!important}.blue-grey-700-border-left{border-left-color:#455a64!important}.blue-grey-800-bg{background-color:#37474f!important}.md-blue-grey-800-bg{background-color:#37474f!important;color:rgba(255,255,255,.87)}.blue-grey-800-fg{color:#37474f!important}.blue-grey-800-border{border-color:#37474f!important}.blue-grey-800-border-top{border-top-color:#37474f!important}.blue-grey-800-border-right{border-right-color:#37474f!important}.blue-grey-800-border-bottom{border-bottom-color:#37474f!important}.blue-grey-800-border-left{border-left-color:#37474f!important}.blue-grey-900-bg{background-color:#263238!important}.md-blue-grey-900-bg{background-color:#263238!important;color:rgba(255,255,255,.87)}.blue-grey-900-fg{color:#263238!important}.blue-grey-900-border{border-color:#263238!important}.blue-grey-900-border-top{border-top-color:#263238!important}.blue-grey-900-border-right{border-right-color:#263238!important}.blue-grey-900-border-bottom{border-bottom-color:#263238!important}.blue-grey-900-border-left{border-left-color:#263238!important}.blue-grey-A100-bg{background-color:#cfd8dc!important}.md-blue-grey-A100-bg{background-color:#cfd8dc!important;color:rgba(255,255,255,.87)}.blue-grey-A100-fg{color:#cfd8dc!important}.blue-grey-A100-border{border-color:#cfd8dc!important}.blue-grey-A100-border-top{border-top-color:#cfd8dc!important}.blue-grey-A100-border-right{border-right-color:#cfd8dc!important}.blue-grey-A100-border-bottom{border-bottom-color:#cfd8dc!important}.blue-grey-A100-border-left{border-left-color:#cfd8dc!important}.blue-grey-A200-bg{background-color:#b0bec5!important}.md-blue-grey-A200-bg{background-color:#b0bec5!important;color:rgba(255,255,255,.87)}.blue-grey-A200-fg{color:#b0bec5!important}.blue-grey-A200-border{border-color:#b0bec5!important}.blue-grey-A200-border-top{border-top-color:#b0bec5!important}.blue-grey-A200-border-right{border-right-color:#b0bec5!important}.blue-grey-A200-border-bottom{border-bottom-color:#b0bec5!important}.blue-grey-A200-border-left{border-left-color:#b0bec5!important}.blue-grey-A400-bg{background-color:#78909c!important}.md-blue-grey-A400-bg{background-color:#78909c!important;color:rgba(255,255,255,.87)}.blue-grey-A400-fg{color:#78909c!important}.blue-grey-A400-border{border-color:#78909c!important}.blue-grey-A400-border-top{border-top-color:#78909c!important}.blue-grey-A400-border-right{border-right-color:#78909c!important}.blue-grey-A400-border-bottom{border-bottom-color:#78909c!important}.blue-grey-A400-border-left{border-left-color:#78909c!important}.blue-grey-A700-bg{background-color:#455a64!important}.md-blue-grey-A700-bg{background-color:#455a64!important;color:rgba(255,255,255,.87)}.blue-grey-A700-fg{color:#455a64!important}.blue-grey-A700-border{border-color:#455a64!important}.blue-grey-A700-border-top{border-top-color:#455a64!important}.blue-grey-A700-border-right{border-right-color:#455a64!important}.blue-grey-A700-border-bottom{border-bottom-color:#455a64!important}.blue-grey-A700-border-left{border-left-color:#455a64!important}.white-500-bg{background-color:#fff!important}.md-white-500-bg{background-color:#fff!important;color:rgba(0,0,0,.87)}.white-500-fg{color:#fff!important}.white-500-border{border-color:#fff!important}.white-500-border-top{border-top-color:#fff!important}.white-500-border-right{border-right-color:#fff!important}.white-500-border-bottom{border-bottom-color:#fff!important}.white-500-border-left{border-left-color:#fff!important}.md-white-bg{background-color:#fff!important;color:rgba(0,0,0,.87)}.white-bg{background-color:#fff!important}.white-fg{color:#fff!important}.white-border{border-color:#fff!important}.white-border-top{border-top-color:#fff!important}.white-border-right{border-right-color:#fff!important}.white-border-bottom{border-bottom-color:#fff!important}.white-border-left{border-left-color:#fff!important}.black-500-bg{background-color:#000!important}.md-black-500-bg{background-color:#000!important;color:rgba(255,255,255,.87)}.black-500-fg{color:#000!important}.black-500-border{border-color:#000!important}.black-500-border-top{border-top-color:#000!important}.black-500-border-right{border-right-color:#000!important}.black-500-border-bottom{border-bottom-color:#000!important}.black-500-border-left{border-left-color:#000!important}.md-black-bg{background-color:#000!important;color:rgba(255,255,255,.87)}.black-bg{background-color:#000!important}.black-fg{color:#000!important}.black-border{border-color:#000!important}.black-border-top{border-top-color:#000!important}.black-border-right{border-right-color:#000!important}.black-border-bottom{border-bottom-color:#000!important}.black-border-left{border-left-color:#000!important}i,md-icon[md-font-icon]{font-size:24px;width:24px;height:24px;min-width:24px;min-height:24px;line-height:24px}i.s4,md-icon[md-font-icon].s4{font-size:4px!important;width:4px!important;height:4px!important;min-width:4px!important;min-height:4px!important;line-height:4px!important}i.s6,md-icon[md-font-icon].s6{font-size:6px!important;width:6px!important;height:6px!important;min-width:6px!important;min-height:6px!important;line-height:6px!important}i.s8,md-icon[md-font-icon].s8{font-size:8px!important;width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;line-height:8px!important}i.s10,md-icon[md-font-icon].s10{font-size:10px!important;width:10px!important;height:10px!important;min-width:10px!important;min-height:10px!important;line-height:10px!important}i.s12,md-icon[md-font-icon].s12{font-size:12px!important;width:12px!important;height:12px!important;min-width:12px!important;min-height:12px!important;line-height:12px!important}i.s14,md-icon[md-font-icon].s14{font-size:14px!important;width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;line-height:14px!important}i.s16,md-icon[md-font-icon].s16{font-size:16px!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;line-height:16px!important}i.s18,md-icon[md-font-icon].s18{font-size:18px!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;line-height:18px!important}i.s20,md-icon[md-font-icon].s20{font-size:20px!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;line-height:20px!important}i.s22,md-icon[md-font-icon].s22{font-size:22px!important;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;line-height:22px!important}i.s24,md-icon[md-font-icon].s24{font-size:24px!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;line-height:24px!important}i.s26,md-icon[md-font-icon].s26{font-size:26px!important;width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;line-height:26px!important}i.s28,md-icon[md-font-icon].s28{font-size:28px!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;line-height:28px!important}i.s30,md-icon[md-font-icon].s30{font-size:30px!important;width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;line-height:30px!important}i.s32,md-icon[md-font-icon].s32{font-size:32px!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;line-height:32px!important}i.s34,md-icon[md-font-icon].s34{font-size:34px!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;line-height:34px!important}i.s36,md-icon[md-font-icon].s36{font-size:36px!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;line-height:36px!important}i.s38,md-icon[md-font-icon].s38{font-size:38px!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;line-height:38px!important}i.s40,md-icon[md-font-icon].s40{font-size:40px!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;line-height:40px!important}i.s42,md-icon[md-font-icon].s42{font-size:42px!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;line-height:42px!important}i.s44,md-icon[md-font-icon].s44{font-size:44px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;line-height:44px!important}i.s46,md-icon[md-font-icon].s46{font-size:46px!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;line-height:46px!important}i.s48,md-icon[md-font-icon].s48{font-size:48px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;line-height:48px!important}i.s50,md-icon[md-font-icon].s50{font-size:50px!important;width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;line-height:50px!important}i.s52,md-icon[md-font-icon].s52{font-size:52px!important;width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;line-height:52px!important}i.s54,md-icon[md-font-icon].s54{font-size:54px!important;width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;line-height:54px!important}i.s56,md-icon[md-font-icon].s56{font-size:56px!important;width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;line-height:56px!important}i.s58,md-icon[md-font-icon].s58{font-size:58px!important;width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;line-height:58px!important}i.s60,md-icon[md-font-icon].s60{font-size:60px!important;width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;line-height:60px!important}i.s62,md-icon[md-font-icon].s62{font-size:62px!important;width:62px!important;height:62px!important;min-width:62px!important;min-height:62px!important;line-height:62px!important}i.s64,md-icon[md-font-icon].s64{font-size:64px!important;width:64px!important;height:64px!important;min-width:64px!important;min-height:64px!important;line-height:64px!important}i.s66,md-icon[md-font-icon].s66{font-size:66px!important;width:66px!important;height:66px!important;min-width:66px!important;min-height:66px!important;line-height:66px!important}i.s68,md-icon[md-font-icon].s68{font-size:68px!important;width:68px!important;height:68px!important;min-width:68px!important;min-height:68px!important;line-height:68px!important}i.s70,md-icon[md-font-icon].s70{font-size:70px!important;width:70px!important;height:70px!important;min-width:70px!important;min-height:70px!important;line-height:70px!important}i.s72,md-icon[md-font-icon].s72{font-size:72px!important;width:72px!important;height:72px!important;min-width:72px!important;min-height:72px!important;line-height:72px!important}i.s74,md-icon[md-font-icon].s74{font-size:74px!important;width:74px!important;height:74px!important;min-width:74px!important;min-height:74px!important;line-height:74px!important}i.s76,md-icon[md-font-icon].s76{font-size:76px!important;width:76px!important;height:76px!important;min-width:76px!important;min-height:76px!important;line-height:76px!important}i.s78,md-icon[md-font-icon].s78{font-size:78px!important;width:78px!important;height:78px!important;min-width:78px!important;min-height:78px!important;line-height:78px!important}i.s80,md-icon[md-font-icon].s80{font-size:80px!important;width:80px!important;height:80px!important;min-width:80px!important;min-height:80px!important;line-height:80px!important}i.s82,md-icon[md-font-icon].s82{font-size:82px!important;width:82px!important;height:82px!important;min-width:82px!important;min-height:82px!important;line-height:82px!important}i.s84,md-icon[md-font-icon].s84{font-size:84px!important;width:84px!important;height:84px!important;min-width:84px!important;min-height:84px!important;line-height:84px!important}i.s86,md-icon[md-font-icon].s86{font-size:86px!important;width:86px!important;height:86px!important;min-width:86px!important;min-height:86px!important;line-height:86px!important}i.s88,md-icon[md-font-icon].s88{font-size:88px!important;width:88px!important;height:88px!important;min-width:88px!important;min-height:88px!important;line-height:88px!important}i.s90,md-icon[md-font-icon].s90{font-size:90px!important;width:90px!important;height:90px!important;min-width:90px!important;min-height:90px!important;line-height:90px!important}i.s92,md-icon[md-font-icon].s92{font-size:92px!important;width:92px!important;height:92px!important;min-width:92px!important;min-height:92px!important;line-height:92px!important}i.s94,md-icon[md-font-icon].s94{font-size:94px!important;width:94px!important;height:94px!important;min-width:94px!important;min-height:94px!important;line-height:94px!important}i.s96,md-icon[md-font-icon].s96{font-size:96px!important;width:96px!important;height:96px!important;min-width:96px!important;min-height:96px!important;line-height:96px!important}i.s98,md-icon[md-font-icon].s98{font-size:98px!important;width:98px!important;height:98px!important;min-width:98px!important;min-height:98px!important;line-height:98px!important}i.s100,md-icon[md-font-icon].s100{font-size:100px!important;width:100px!important;height:100px!important;min-width:100px!important;min-height:100px!important;line-height:100px!important}i.s102,md-icon[md-font-icon].s102{font-size:102px!important;width:102px!important;height:102px!important;min-width:102px!important;min-height:102px!important;line-height:102px!important}i.s104,md-icon[md-font-icon].s104{font-size:104px!important;width:104px!important;height:104px!important;min-width:104px!important;min-height:104px!important;line-height:104px!important}i.s106,md-icon[md-font-icon].s106{font-size:106px!important;width:106px!important;height:106px!important;min-width:106px!important;min-height:106px!important;line-height:106px!important}i.s108,md-icon[md-font-icon].s108{font-size:108px!important;width:108px!important;height:108px!important;min-width:108px!important;min-height:108px!important;line-height:108px!important}i.s110,md-icon[md-font-icon].s110{font-size:110px!important;width:110px!important;height:110px!important;min-width:110px!important;min-height:110px!important;line-height:110px!important}i.s112,md-icon[md-font-icon].s112{font-size:112px!important;width:112px!important;height:112px!important;min-width:112px!important;min-height:112px!important;line-height:112px!important}i.s114,md-icon[md-font-icon].s114{font-size:114px!important;width:114px!important;height:114px!important;min-width:114px!important;min-height:114px!important;line-height:114px!important}i.s116,md-icon[md-font-icon].s116{font-size:116px!important;width:116px!important;height:116px!important;min-width:116px!important;min-height:116px!important;line-height:116px!important}i.s118,md-icon[md-font-icon].s118{font-size:118px!important;width:118px!important;height:118px!important;min-width:118px!important;min-height:118px!important;line-height:118px!important}i.s120,md-icon[md-font-icon].s120{font-size:120px!important;width:120px!important;height:120px!important;min-width:120px!important;min-height:120px!important;line-height:120px!important}i.s122,md-icon[md-font-icon].s122{font-size:122px!important;width:122px!important;height:122px!important;min-width:122px!important;min-height:122px!important;line-height:122px!important}i.s124,md-icon[md-font-icon].s124{font-size:124px!important;width:124px!important;height:124px!important;min-width:124px!important;min-height:124px!important;line-height:124px!important}i.s126,md-icon[md-font-icon].s126{font-size:126px!important;width:126px!important;height:126px!important;min-width:126px!important;min-height:126px!important;line-height:126px!important}i.s128,md-icon[md-font-icon].s128{font-size:128px!important;width:128px!important;height:128px!important;min-width:128px!important;min-height:128px!important;line-height:128px!important}i.s130,md-icon[md-font-icon].s130{font-size:130px!important;width:130px!important;height:130px!important;min-width:130px!important;min-height:130px!important;line-height:130px!important}i.s132,md-icon[md-font-icon].s132{font-size:132px!important;width:132px!important;height:132px!important;min-width:132px!important;min-height:132px!important;line-height:132px!important}i.s134,md-icon[md-font-icon].s134{font-size:134px!important;width:134px!important;height:134px!important;min-width:134px!important;min-height:134px!important;line-height:134px!important}i.s136,md-icon[md-font-icon].s136{font-size:136px!important;width:136px!important;height:136px!important;min-width:136px!important;min-height:136px!important;line-height:136px!important}i.s138,md-icon[md-font-icon].s138{font-size:138px!important;width:138px!important;height:138px!important;min-width:138px!important;min-height:138px!important;line-height:138px!important}i.s140,md-icon[md-font-icon].s140{font-size:140px!important;width:140px!important;height:140px!important;min-width:140px!important;min-height:140px!important;line-height:140px!important}i.s142,md-icon[md-font-icon].s142{font-size:142px!important;width:142px!important;height:142px!important;min-width:142px!important;min-height:142px!important;line-height:142px!important}i.s144,md-icon[md-font-icon].s144{font-size:144px!important;width:144px!important;height:144px!important;min-width:144px!important;min-height:144px!important;line-height:144px!important}i.s146,md-icon[md-font-icon].s146{font-size:146px!important;width:146px!important;height:146px!important;min-width:146px!important;min-height:146px!important;line-height:146px!important}i.s148,md-icon[md-font-icon].s148{font-size:148px!important;width:148px!important;height:148px!important;min-width:148px!important;min-height:148px!important;line-height:148px!important}i.s150,md-icon[md-font-icon].s150{font-size:150px!important;width:150px!important;height:150px!important;min-width:150px!important;min-height:150px!important;line-height:150px!important}i.s152,md-icon[md-font-icon].s152{font-size:152px!important;width:152px!important;height:152px!important;min-width:152px!important;min-height:152px!important;line-height:152px!important}i.s154,md-icon[md-font-icon].s154{font-size:154px!important;width:154px!important;height:154px!important;min-width:154px!important;min-height:154px!important;line-height:154px!important}i.s156,md-icon[md-font-icon].s156{font-size:156px!important;width:156px!important;height:156px!important;min-width:156px!important;min-height:156px!important;line-height:156px!important}i.s158,md-icon[md-font-icon].s158{font-size:158px!important;width:158px!important;height:158px!important;min-width:158px!important;min-height:158px!important;line-height:158px!important}i.s160,md-icon[md-font-icon].s160{font-size:160px!important;width:160px!important;height:160px!important;min-width:160px!important;min-height:160px!important;line-height:160px!important}i.s162,md-icon[md-font-icon].s162{font-size:162px!important;width:162px!important;height:162px!important;min-width:162px!important;min-height:162px!important;line-height:162px!important}i.s164,md-icon[md-font-icon].s164{font-size:164px!important;width:164px!important;height:164px!important;min-width:164px!important;min-height:164px!important;line-height:164px!important}i.s166,md-icon[md-font-icon].s166{font-size:166px!important;width:166px!important;height:166px!important;min-width:166px!important;min-height:166px!important;line-height:166px!important}i.s168,md-icon[md-font-icon].s168{font-size:168px!important;width:168px!important;height:168px!important;min-width:168px!important;min-height:168px!important;line-height:168px!important}i.s170,md-icon[md-font-icon].s170{font-size:170px!important;width:170px!important;height:170px!important;min-width:170px!important;min-height:170px!important;line-height:170px!important}i.s172,md-icon[md-font-icon].s172{font-size:172px!important;width:172px!important;height:172px!important;min-width:172px!important;min-height:172px!important;line-height:172px!important}i.s174,md-icon[md-font-icon].s174{font-size:174px!important;width:174px!important;height:174px!important;min-width:174px!important;min-height:174px!important;line-height:174px!important}i.s176,md-icon[md-font-icon].s176{font-size:176px!important;width:176px!important;height:176px!important;min-width:176px!important;min-height:176px!important;line-height:176px!important}i.s178,md-icon[md-font-icon].s178{font-size:178px!important;width:178px!important;height:178px!important;min-width:178px!important;min-height:178px!important;line-height:178px!important}i.s180,md-icon[md-font-icon].s180{font-size:180px!important;width:180px!important;height:180px!important;min-width:180px!important;min-height:180px!important;line-height:180px!important}i.s182,md-icon[md-font-icon].s182{font-size:182px!important;width:182px!important;height:182px!important;min-width:182px!important;min-height:182px!important;line-height:182px!important}i.s184,md-icon[md-font-icon].s184{font-size:184px!important;width:184px!important;height:184px!important;min-width:184px!important;min-height:184px!important;line-height:184px!important}i.s186,md-icon[md-font-icon].s186{font-size:186px!important;width:186px!important;height:186px!important;min-width:186px!important;min-height:186px!important;line-height:186px!important}i.s188,md-icon[md-font-icon].s188{font-size:188px!important;width:188px!important;height:188px!important;min-width:188px!important;min-height:188px!important;line-height:188px!important}i.s190,md-icon[md-font-icon].s190{font-size:190px!important;width:190px!important;height:190px!important;min-width:190px!important;min-height:190px!important;line-height:190px!important}i.s192,md-icon[md-font-icon].s192{font-size:192px!important;width:192px!important;height:192px!important;min-width:192px!important;min-height:192px!important;line-height:192px!important}i.s194,md-icon[md-font-icon].s194{font-size:194px!important;width:194px!important;height:194px!important;min-width:194px!important;min-height:194px!important;line-height:194px!important}i.s196,md-icon[md-font-icon].s196{font-size:196px!important;width:196px!important;height:196px!important;min-width:196px!important;min-height:196px!important;line-height:196px!important}i.s198,md-icon[md-font-icon].s198{font-size:198px!important;width:198px!important;height:198px!important;min-width:198px!important;min-height:198px!important;line-height:198px!important}i.s200,md-icon[md-font-icon].s200{font-size:200px!important;width:200px!important;height:200px!important;min-width:200px!important;min-height:200px!important;line-height:200px!important}i.s202,md-icon[md-font-icon].s202{font-size:202px!important;width:202px!important;height:202px!important;min-width:202px!important;min-height:202px!important;line-height:202px!important}i.s204,md-icon[md-font-icon].s204{font-size:204px!important;width:204px!important;height:204px!important;min-width:204px!important;min-height:204px!important;line-height:204px!important}i.s206,md-icon[md-font-icon].s206{font-size:206px!important;width:206px!important;height:206px!important;min-width:206px!important;min-height:206px!important;line-height:206px!important}i.s208,md-icon[md-font-icon].s208{font-size:208px!important;width:208px!important;height:208px!important;min-width:208px!important;min-height:208px!important;line-height:208px!important}i.s210,md-icon[md-font-icon].s210{font-size:210px!important;width:210px!important;height:210px!important;min-width:210px!important;min-height:210px!important;line-height:210px!important}i.s212,md-icon[md-font-icon].s212{font-size:212px!important;width:212px!important;height:212px!important;min-width:212px!important;min-height:212px!important;line-height:212px!important}i.s214,md-icon[md-font-icon].s214{font-size:214px!important;width:214px!important;height:214px!important;min-width:214px!important;min-height:214px!important;line-height:214px!important}i.s216,md-icon[md-font-icon].s216{font-size:216px!important;width:216px!important;height:216px!important;min-width:216px!important;min-height:216px!important;line-height:216px!important}i.s218,md-icon[md-font-icon].s218{font-size:218px!important;width:218px!important;height:218px!important;min-width:218px!important;min-height:218px!important;line-height:218px!important}i.s220,md-icon[md-font-icon].s220{font-size:220px!important;width:220px!important;height:220px!important;min-width:220px!important;min-height:220px!important;line-height:220px!important}i.s222,md-icon[md-font-icon].s222{font-size:222px!important;width:222px!important;height:222px!important;min-width:222px!important;min-height:222px!important;line-height:222px!important}i.s224,md-icon[md-font-icon].s224{font-size:224px!important;width:224px!important;height:224px!important;min-width:224px!important;min-height:224px!important;line-height:224px!important}i.s226,md-icon[md-font-icon].s226{font-size:226px!important;width:226px!important;height:226px!important;min-width:226px!important;min-height:226px!important;line-height:226px!important}i.s228,md-icon[md-font-icon].s228{font-size:228px!important;width:228px!important;height:228px!important;min-width:228px!important;min-height:228px!important;line-height:228px!important}i.s230,md-icon[md-font-icon].s230{font-size:230px!important;width:230px!important;height:230px!important;min-width:230px!important;min-height:230px!important;line-height:230px!important}i.s232,md-icon[md-font-icon].s232{font-size:232px!important;width:232px!important;height:232px!important;min-width:232px!important;min-height:232px!important;line-height:232px!important}i.s234,md-icon[md-font-icon].s234{font-size:234px!important;width:234px!important;height:234px!important;min-width:234px!important;min-height:234px!important;line-height:234px!important}i.s236,md-icon[md-font-icon].s236{font-size:236px!important;width:236px!important;height:236px!important;min-width:236px!important;min-height:236px!important;line-height:236px!important}i.s238,md-icon[md-font-icon].s238{font-size:238px!important;width:238px!important;height:238px!important;min-width:238px!important;min-height:238px!important;line-height:238px!important}i.s240,md-icon[md-font-icon].s240{font-size:240px!important;width:240px!important;height:240px!important;min-width:240px!important;min-height:240px!important;line-height:240px!important}i.s242,md-icon[md-font-icon].s242{font-size:242px!important;width:242px!important;height:242px!important;min-width:242px!important;min-height:242px!important;line-height:242px!important}i.s244,md-icon[md-font-icon].s244{font-size:244px!important;width:244px!important;height:244px!important;min-width:244px!important;min-height:244px!important;line-height:244px!important}i.s246,md-icon[md-font-icon].s246{font-size:246px!important;width:246px!important;height:246px!important;min-width:246px!important;min-height:246px!important;line-height:246px!important}i.s248,md-icon[md-font-icon].s248{font-size:248px!important;width:248px!important;height:248px!important;min-width:248px!important;min-height:248px!important;line-height:248px!important}i.s250,md-icon[md-font-icon].s250{font-size:250px!important;width:250px!important;height:250px!important;min-width:250px!important;min-height:250px!important;line-height:250px!important}i.s252,md-icon[md-font-icon].s252{font-size:252px!important;width:252px!important;height:252px!important;min-width:252px!important;min-height:252px!important;line-height:252px!important}i.s254,md-icon[md-font-icon].s254{font-size:254px!important;width:254px!important;height:254px!important;min-width:254px!important;min-height:254px!important;line-height:254px!important}i.s256,md-icon[md-font-icon].s256{font-size:256px!important;width:256px!important;height:256px!important;min-width:256px!important;min-height:256px!important;line-height:256px!important}@font-face{font-family:icomoon;src:url(../assets/icons/fonts/icomoon.eot?5km1tg);src:url(../assets/icons/fonts/icomoon.eot?#iefix5km1tg) format("embedded-opentype"),url(../assets/icons/fonts/icomoon.ttf?5km1tg) format("truetype"),url(../assets/icons/fonts/icomoon.woff?5km1tg) format("woff"),url(../assets/icons/fonts/icomoon.svg?5km1tg#icomoon) format("svg");font-weight:400;font-style:normal}[class*=" icon-"],[class^=icon-]{font-family:icomoon;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-account-alert:before{content:"\e600"}.icon-account-box-outline:before{content:"\e601"}.icon-account-box:before{content:"\e602"}.icon-account-check:before{content:"\e603"}.icon-account-circle:before{content:"\e604"}.icon-account-key:before{content:"\e605"}.icon-account-location:before{content:"\e606"}.icon-account-minus:before{content:"\e607"}.icon-account-multiple-outline:before{content:"\e608"}.icon-account-multiple-plus:before{content:"\e609"}.icon-account-multiple:before{content:"\e60a"}.icon-account-network:before{content:"\e60b"}.icon-account-outline:before{content:"\e60c"}.icon-account-plus:before{content:"\e60d"}.icon-account-remove:before{content:"\e60e"}.icon-account-search:before{content:"\e60f"}.icon-account-switch:before{content:"\e610"}.icon-account:before{content:"\e611"}.icon-airballoon:before{content:"\e612"}.icon-airplane-off:before{content:"\e613"}.icon-airplane:before{content:"\e614"}.icon-alarm-check:before{content:"\e615"}.icon-alarm-multiple:before{content:"\e616"}.icon-alarm-off:before{content:"\e617"}.icon-alarm-plus:before{content:"\e618"}.icon-alarm:before{content:"\e619"}.icon-album:before{content:"\e61a"}.icon-alert-box:before{content:"\e61b"}.icon-alert-circle:before{content:"\e61c"}.icon-alert-octagon:before{content:"\e61d"}.icon-alert:before{content:"\e61e"}.icon-alpha:before{content:"\e61f"}.icon-alphabetical:before{content:"\e620"}.icon-amazon-clouddrive:before{content:"\e621"}.icon-amazon:before{content:"\e622"}.icon-ambulance:before{content:"\e623"}.icon-android-debug-bridge:before{content:"\e624"}.icon-android-studio:before{content:"\e625"}.icon-android:before{content:"\e626"}.icon-apple-finder:before{content:"\e627"}.icon-apple-ios:before{content:"\e628"}.icon-apple-mobileme:before{content:"\e629"}.icon-apple-safari:before{content:"\e62a"}.icon-apple:before{content:"\e62b"}.icon-appnet:before{content:"\e62c"}.icon-apps:before{content:"\e62d"}.icon-archive:before{content:"\e62e"}.icon-arrange-bring-forward:before{content:"\e62f"}.icon-arrange-bring-to-front:before{content:"\e630"}.icon-arrange-send-backward:before{content:"\e631"}.icon-arrange-send-to-back:before{content:"\e632"}.icon-arrow-all:before{content:"\e633"}.icon-arrow-bottom-left:before{content:"\e634"}.icon-arrow-bottom-right:before{content:"\e635"}.icon-arrow-collapse:before{content:"\e636"}.icon-arrow-down-bold-circle-outline:before{content:"\e637"}.icon-arrow-down-bold-circle:before{content:"\e638"}.icon-arrow-down-bold-hexagon-outline:before{content:"\e639"}.icon-arrow-down-bold:before{content:"\e63a"}.icon-arrow-down:before{content:"\e63b"}.icon-arrow-expand:before{content:"\e63c"}.icon-arrow-left-bold-circle-outline:before{content:"\e63d"}.icon-arrow-left-bold-circle:before{content:"\e63e"}.icon-arrow-left-bold-hexagon-outline:before{content:"\e63f"}.icon-arrow-left-bold:before{content:"\e640"}.icon-arrow-left:before{content:"\e641"}.icon-arrow-right-bold-circle-outline:before{content:"\e642"}.icon-arrow-right-bold-circle:before{content:"\e643"}.icon-arrow-right-bold-hexagon-outline:before{content:"\e644"}.icon-arrow-right-bold:before{content:"\e645"}.icon-arrow-right:before{content:"\e646"}.icon-arrow-top-left:before{content:"\e647"}.icon-arrow-top-right:before{content:"\e648"}.icon-arrow-up-bold-circle-outline:before{content:"\e649"}.icon-arrow-up-bold-circle:before{content:"\e64a"}.icon-arrow-up-bold-hexagon-outline:before{content:"\e64b"}.icon-arrow-up-bold:before{content:"\e64c"}.icon-arrow-up:before{content:"\e64d"}.icon-at:before{content:"\e64e"}.icon-attachment:before{content:"\e64f"}.icon-audiobook:before{content:"\e650"}.icon-auto-fix:before{content:"\e651"}.icon-auto-upload:before{content:"\e652"}.icon-baby:before{content:"\e653"}.icon-backburger:before{content:"\e654"}.icon-backup-restore:before{content:"\e655"}.icon-bank:before{content:"\e656"}.icon-barcode:before{content:"\e657"}.icon-barley:before{content:"\e658"}.icon-barrel:before{content:"\e659"}.icon-basecamp:before{content:"\e65a"}.icon-basket-fill:before{content:"\e65b"}.icon-basket-unfill:before{content:"\e65c"}.icon-basket:before{content:"\e65d"}.icon-battery-10:before{content:"\e65e"}.icon-battery-20:before{content:"\e65f"}.icon-battery-30:before{content:"\e660"}.icon-battery-40:before{content:"\e661"}.icon-battery-50:before{content:"\e662"}.icon-battery-60:before{content:"\e663"}.icon-battery-70:before{content:"\e664"}.icon-battery-80:before{content:"\e665"}.icon-battery-90:before{content:"\e666"}.icon-battery-alert:before{content:"\e667"}.icon-battery-charging-20:before{content:"\e668"}.icon-battery-charging-30:before{content:"\e669"}.icon-battery-charging-40:before{content:"\e66a"}.icon-battery-charging-60:before{content:"\e66b"}.icon-battery-charging-80:before{content:"\e66c"}.icon-battery-charging-90:before{content:"\e66d"}.icon-battery-charging-100:before{content:"\e66e"}.icon-battery-minus:before{content:"\e66f"}.icon-battery-negative:before{content:"\e670"}.icon-battery-outline:before{content:"\e671"}.icon-battery-plus:before{content:"\e672"}.icon-battery-positive:before{content:"\e673"}.icon-battery-standard:before{content:"\e674"}.icon-battery-unknown:before{content:"\e675"}.icon-battery:before{content:"\e676"}.icon-beach:before{content:"\e677"}.icon-beaker-empty-outline:before{content:"\e678"}.icon-beaker-empty:before{content:"\e679"}.icon-beaker-outline:before{content:"\e67a"}.icon-beaker:before{content:"\e67b"}.icon-beats:before{content:"\e67c"}.icon-beer:before{content:"\e67d"}.icon-behance:before{content:"\e67e"}.icon-bell-off:before{content:"\e67f"}.icon-bell-outline:before{content:"\e680"}.icon-bell-ring-outline:before{content:"\e681"}.icon-bell-ring:before{content:"\e682"}.icon-bell-sleep:before{content:"\e683"}.icon-bell:before{content:"\e684"}.icon-beta:before{content:"\e685"}.icon-bike:before{content:"\e686"}.icon-bing:before{content:"\e687"}.icon-binoculars:before{content:"\e688"}.icon-bio:before{content:"\e689"}.icon-bitbucket:before{content:"\e68a"}.icon-black-mesa:before{content:"\e68b"}.icon-blackberry:before{content:"\e68c"}.icon-blinds:before{content:"\e68d"}.icon-block-helper:before{content:"\e68e"}.icon-blogger:before{content:"\e68f"}.icon-bluetooth-audio:before{content:"\e690"}.icon-bluetooth-connect:before{content:"\e691"}.icon-bluetooth-settings:before{content:"\e692"}.icon-bluetooth-transfer:before{content:"\e693"}.icon-bluetooth:before{content:"\e694"}.icon-blur-linear:before{content:"\e695"}.icon-blur-off:before{content:"\e696"}.icon-blur-radial:before{content:"\e697"}.icon-blur:before{content:"\e698"}.icon-bone:before{content:"\e699"}.icon-book-multiple-variant:before{content:"\e69a"}.icon-book-multiple:before{content:"\e69b"}.icon-book-open:before{content:"\e69c"}.icon-book-variant:before{content:"\e69d"}.icon-book:before{content:"\e69e"}.icon-bookmark-check:before{content:"\e69f"}.icon-bookmark-music:before{content:"\e6a0"}.icon-bookmark-outline-plus:before{content:"\e6a1"}.icon-bookmark-outline:before{content:"\e6a2"}.icon-bookmark-plus:before{content:"\e6a3"}.icon-bookmark-remove:before{content:"\e6a4"}.icon-bookmark:before{content:"\e6a5"}.icon-border-all:before{content:"\e6a6"}.icon-border-bottom:before{content:"\e6a7"}.icon-border-color:before{content:"\e6a8"}.icon-border-horizontal:before{content:"\e6a9"}.icon-border-inside:before{content:"\e6aa"}.icon-border-left:before{content:"\e6ab"}.icon-border-none:before{content:"\e6ac"}.icon-border-outside:before{content:"\e6ad"}.icon-border-right:before{content:"\e6ae"}.icon-border-top:before{content:"\e6af"}.icon-border-vertical:before{content:"\e6b0"}.icon-bowling:before{content:"\e6b1"}.icon-box-download:before{content:"\e6b2"}.icon-box-upload:before{content:"\e6b3"}.icon-box:before{content:"\e6b4"}.icon-briefcase-checked:before{content:"\e6b5"}.icon-briefcase-download:before{content:"\e6b6"}.icon-briefcase-upload:before{content:"\e6b7"}.icon-briefcase:before{content:"\e6b8"}.icon-brightness-1:before{content:"\e6b9"}.icon-brightness-2:before{content:"\e6ba"}.icon-brightness-3:before{content:"\e6bb"}.icon-brightness-4:before{content:"\e6bc"}.icon-brightness-5:before{content:"\e6bd"}.icon-brightness-6:before{content:"\e6be"}.icon-brightness-7:before{content:"\e6bf"}.icon-brightness-auto:before{content:"\e6c0"}.icon-brightness:before{content:"\e6c1"}.icon-broom:before{content:"\e6c2"}.icon-brush:before{content:"\e6c3"}.icon-bug:before{content:"\e6c4"}.icon-bulletin-board:before{content:"\e6c5"}.icon-bullhorn:before{content:"\e6c6"}.icon-bus:before{content:"\e6c7"}.icon-cake-variant:before{content:"\e6c8"}.icon-cake:before{content:"\e6c9"}.icon-calculator:before{content:"\e6ca"}.icon-calendar-blank:before{content:"\e6cb"}.icon-calendar-check-multiple:before{content:"\e6cc"}.icon-calendar-check:before{content:"\e6cd"}.icon-calendar-clock:before{content:"\e6ce"}.icon-calendar-multiple:before{content:"\e6cf"}.icon-calendar-plus:before{content:"\e6d0"}.icon-calendar-remove:before{content:"\e6d1"}.icon-calendar-select:before{content:"\e6d2"}.icon-calendar-text:before{content:"\e6d3"}.icon-calendar-today:before{content:"\e6d4"}.icon-calendar:before{content:"\e6d5"}.icon-camcorder-box-off:before{content:"\e6d6"}.icon-camcorder-box:before{content:"\e6d7"}.icon-camcorder-off:before{content:"\e6d8"}.icon-camcorder:before{content:"\e6d9"}.icon-camera-front-variant:before{content:"\e6da"}.icon-camera-front:before{content:"\e6db"}.icon-camera-iris:before{content:"\e6dc"}.icon-camera-party-mode:before{content:"\e6dd"}.icon-camera-rear-variant:before{content:"\e6de"}.icon-camera-rear:before{content:"\e6df"}.icon-camera-switch:before{content:"\e6e0"}.icon-camera-timer:before{content:"\e6e1"}.icon-camera:before{content:"\e6e2"}.icon-cancel:before{content:"\e6e3"}.icon-candycane:before{content:"\e6e4"}.icon-car-wash:before{content:"\e6e5"}.icon-car:before{content:"\e6e6"}.icon-carrot:before{content:"\e6e7"}.icon-cart-outline:before{content:"\e6e8"}.icon-cart:before{content:"\e6e9"}.icon-cash-100:before{content:"\e6ea"}.icon-cash-multiple:before{content:"\e6eb"}.icon-cash-usd:before{content:"\e6ec"}.icon-cash:before{content:"\e6ed"}.icon-cast-connected:before{content:"\e6ee"}.icon-cast:before{content:"\e6ef"}.icon-castle:before{content:"\e6f0"}.icon-cat:before{content:"\e6f1"}.icon-cellphone-android:before{content:"\e6f2"}.icon-cellphone-dock:before{content:"\e6f3"}.icon-cellphone-iphone:before{content:"\e6f4"}.icon-cellphone-link-off:before{content:"\e6f5"}.icon-cellphone-link:before{content:"\e6f6"}.icon-cellphone-settings:before{content:"\e6f7"}.icon-cellphone:before{content:"\e6f8"}.icon-chair-school:before{content:"\e6f9"}.icon-chart-arc:before{content:"\e6fa"}.icon-chart-areaspline:before{content:"\e6fb"}.icon-chart-bar:before{content:"\e6fc"}.icon-chart-histogram:before{content:"\e6fd"}.icon-chart-line:before{content:"\e6fe"}.icon-chart-pie:before{content:"\e6ff"}.icon-check-all:before{content:"\e700"}.icon-check-bookmark:before{content:"\e701"}.icon-check-circle:before{content:"\e702"}.icon-check:before{content:"\e703"}.icon-checkbox-blank-circle-outline:before{content:"\e704"}.icon-checkbox-blank-circle:before{content:"\e705"}.icon-checkbox-blank-outline:before{content:"\e706"}.icon-checkbox-blank:before{content:"\e707"}.icon-checkbox-marked-circle-outline:before{content:"\e708"}.icon-checkbox-marked-circle:before{content:"\e709"}.icon-checkbox-marked-outline:before{content:"\e70a"}.icon-checkbox-marked:before{content:"\e70b"}.icon-checkbox-multiple-blank-outline:before{content:"\e70c"}.icon-checkbox-multiple-blank:before{content:"\e70d"}.icon-checkbox-multiple-marked-outline:before{content:"\e70e"}.icon-checkbox-multiple-marked:before{content:"\e70f"}.icon-checkerboard:before{content:"\e710"}.icon-chevron-double-down:before{content:"\e711"}.icon-chevron-double-left:before{content:"\e712"}.icon-chevron-double-right:before{content:"\e713"}.icon-chevron-double-up:before{content:"\e714"}.icon-chevron-down:before{content:"\e715"}.icon-chevron-left:before{content:"\e716"}.icon-chevron-right:before{content:"\e717"}.icon-chevron-up:before{content:"\e718"}.icon-church:before{content:"\e719"}.icon-cisco-webex:before{content:"\e71a"}.icon-city:before{content:"\e71b"}.icon-clapperboard:before{content:"\e71c"}.icon-clipboard-account:before{content:"\e71d"}.icon-clipboard-alert:before{content:"\e71e"}.icon-clipboard-arrow-down:before{content:"\e71f"}.icon-clipboard-arrow-left:before{content:"\e720"}.icon-clipboard-check:before{content:"\e721"}.icon-clipboard-outline:before{content:"\e722"}.icon-clipboard-text:before{content:"\e723"}.icon-clipboard:before{content:"\e724"}.icon-clippy:before{content:"\e725"}.icon-clock-fast:before{content:"\e726"}.icon-clock:before{content:"\e727"}.icon-close-circle-outline:before{content:"\e728"}.icon-close-circle:before{content:"\e729"}.icon-close-network:before{content:"\e72a"}.icon-close:before{content:"\e72b"}.icon-closed-caption:before{content:"\e72c"}.icon-cloud-check:before{content:"\e72d"}.icon-cloud-circle:before{content:"\e72e"}.icon-cloud-download:before{content:"\e72f"}.icon-cloud-outline-off:before{content:"\e730"}.icon-cloud-outline:before{content:"\e731"}.icon-cloud-upload:before{content:"\e732"}.icon-cloud:before{content:"\e733"}.icon-code-array:before{content:"\e734"}.icon-code-braces:before{content:"\e735"}.icon-code-equal:before{content:"\e736"}.icon-code-greater-than-or-equal:before{content:"\e737"}.icon-code-greater-than:before{content:"\e738"}.icon-code-less-than-or-equal:before{content:"\e739"}.icon-code-less-than:before{content:"\e73a"}.icon-code-not-equal-variant:before{content:"\e73b"}.icon-code-not-equal:before{content:"\e73c"}.icon-code-string:before{content:"\e73d"}.icon-code-tags:before{content:"\e73e"}.icon-codepen:before{content:"\e73f"}.icon-coffee-to-go:before{content:"\e740"}.icon-coffee:before{content:"\e741"}.icon-cog-box:before{content:"\e742"}.icon-cog:before{content:"\e743"}.icon-coin:before{content:"\e744"}.icon-color-helper:before{content:"\e745"}.icon-comment-account-outline:before{content:"\e746"}.icon-comment-account:before{content:"\e747"}.icon-comment-alert-outline:before{content:"\e748"}.icon-comment-alert:before{content:"\e749"}.icon-comment-check-outline:before{content:"\e74a"}.icon-comment-check:before{content:"\e74b"}.icon-comment-multipe-outline:before{content:"\e74c"}.icon-comment-outline:before{content:"\e74d"}.icon-comment-plus-outline:before{content:"\e74e"}.icon-comment-processing-outline:before{content:"\e74f"}.icon-comment-processing:before{content:"\e750"}.icon-comment-remove-outline:before{content:"\e751"}.icon-comment-text-outline:before{content:"\e752"}.icon-comment-text:before{content:"\e753"}.icon-comment:before{content:"\e754"}.icon-compare:before{content:"\e755"}.icon-compass-outline:before{content:"\e756"}.icon-compass:before{content:"\e757"}.icon-console:before{content:"\e758"}.icon-content-copy:before{content:"\e759"}.icon-content-cut:before{content:"\e75a"}.icon-content-duplicate:before{content:"\e75b"}.icon-content-paste:before{content:"\e75c"}.icon-content-save-all:before{content:"\e75d"}.icon-content-save:before{content:"\e75e"}.icon-contrast-box:before{content:"\e75f"}.icon-contrast-circle:before{content:"\e760"}.icon-contrast:before{content:"\e761"}.icon-controller-xbox:before{content:"\e762"}.icon-cow:before{content:"\e763"}.icon-credit-card-multiple:before{content:"\e764"}.icon-credit-card:before{content:"\e765"}.icon-crop-free:before{content:"\e766"}.icon-crop-landscape:before{content:"\e767"}.icon-crop-portrait:before{content:"\e768"}.icon-crop-square:before{content:"\e769"}.icon-crop:before{content:"\e76a"}.icon-crosshairs-gps:before{content:"\e76b"}.icon-crosshairs:before{content:"\e76c"}.icon-crown:before{content:"\e76d"}.icon-cube-outline:before{content:"\e76e"}.icon-cube-unfolded:before{content:"\e76f"}.icon-cube:before{content:"\e770"}.icon-cup-water:before{content:"\e771"}.icon-cup:before{content:"\e772"}.icon-currency-btc:before{content:"\e773"}.icon-currency-eur:before{content:"\e774"}.icon-currency-gbp:before{content:"\e775"}.icon-currency-inr:before{content:"\e776"}.icon-currency-rub:before{content:"\e777"}.icon-currency-try:before{content:"\e778"}.icon-currency-usd:before{content:"\e779"}.icon-cursor-default-outline:before{content:"\e77a"}.icon-cursor-default:before{content:"\e77b"}.icon-cursor-move:before{content:"\e77c"}.icon-cursor-pointer:before{content:"\e77d"}.icon-data:before{content:"\e77e"}.icon-debug-step-into:before{content:"\e77f"}.icon-debug-step-out:before{content:"\e780"}.icon-debug-step-over:before{content:"\e781"}.icon-decimal-decrease:before{content:"\e782"}.icon-decimal-increase:before{content:"\e783"}.icon-delete-variant:before{content:"\e784"}.icon-delete:before{content:"\e785"}.icon-deskphone:before{content:"\e786"}.icon-desktop-mac:before{content:"\e787"}.icon-desktop-tower:before{content:"\e788"}.icon-details:before{content:"\e789"}.icon-deviantart:before{content:"\e78a"}.icon-diamond:before{content:"\e78b"}.icon-dice-1:before{content:"\e78c"}.icon-dice-2:before{content:"\e78d"}.icon-dice-3:before{content:"\e78e"}.icon-dice-4:before{content:"\e78f"}.icon-dice-5:before{content:"\e790"}.icon-dice-6:before{content:"\e791"}.icon-dice:before{content:"\e792"}.icon-directions:before{content:"\e793"}.icon-disk-alert:before{content:"\e794"}.icon-disqus-outline:before{content:"\e795"}.icon-disqus:before{content:"\e796"}.icon-division-box:before{content:"\e797"}.icon-division:before{content:"\e798"}.icon-dns:before{content:"\e799"}.icon-document:before{content:"\e79a"}.icon-domain:before{content:"\e79b"}.icon-dots-horizontal:before{content:"\e79c"}.icon-dots-vertical:before{content:"\e79d"}.icon-download:before{content:"\e79e"}.icon-drag-horizontal:before{content:"\e79f"}.icon-drag-vertical:before{content:"\e7a0"}.icon-drag:before{content:"\e7a1"}.icon-drawing-box:before{content:"\e7a2"}.icon-drawing:before{content:"\e7a3"}.icon-dribbble-box:before{content:"\e7a4"}.icon-dribbble:before{content:"\e7a5"}.icon-drone:before{content:"\e7a6"}.icon-dropbox:before{content:"\e7a7"}.icon-drupal:before{content:"\e7a8"}.icon-duck:before{content:"\e7a9"}.icon-dumbbell:before{content:"\e7aa"}.icon-earth-off:before{content:"\e7ab"}.icon-earth:before{content:"\e7ac"}.icon-ebay:before{content:"\e7ad"}.icon-edge:before{content:"\e7ae"}.icon-eject:before{content:"\e7af"}.icon-elevation-decline:before{content:"\e7b0"}.icon-elevation-rise:before{content:"\e7b1"}.icon-elevator:before{content:"\e7b2"}.icon-email-open:before{content:"\e7b3"}.icon-email-secure:before{content:"\e7b4"}.icon-email:before{content:"\e7b5"}.icon-emoticon-cool:before{content:"\e7b6"}.icon-emoticon-devil:before{content:"\e7b7"}.icon-emoticon-happy:before{content:"\e7b8"}.icon-emoticon-neutral:before{content:"\e7b9"}.icon-emoticon-poop:before{content:"\e7ba"}.icon-emoticon-sad:before{content:"\e7bb"}.icon-emoticon-tongue:before{content:"\e7bc"}.icon-emoticon:before{content:"\e7bd"}.icon-engine-outline:before{content:"\e7be"}.icon-engine:before{content:"\e7bf"}.icon-equal-box:before{content:"\e7c0"}.icon-equal:before{content:"\e7c1"}.icon-eraser:before{content:"\e7c2"}.icon-escalator:before{content:"\e7c3"}.icon-etsy:before{content:"\e7c4"}.icon-evernote:before{content:"\e7c5"}.icon-exclamation:before{content:"\e7c6"}.icon-exit-to-app:before{content:"\e7c7"}.icon-export:before{content:"\e7c8"}.icon-eye-off:before{content:"\e7c9"}.icon-eye:before{content:"\e7ca"}.icon-eyedropper-variant:before{content:"\e7cb"}.icon-eyedropper:before{content:"\e7cc"}.icon-facebook-box:before{content:"\e7cd"}.icon-facebook:before{content:"\e7ce"}.icon-factory:before{content:"\e7cf"}.icon-fan:before{content:"\e7d0"}.icon-fast-forward:before{content:"\e7d1"}.icon-ferry:before{content:"\e7d2"}.icon-file-cloud:before{content:"\e7d3"}.icon-file-delimited:before{content:"\e7d4"}.icon-file-document-box:before{content:"\e7d5"}.icon-file-document:before{content:"\e7d6"}.icon-file-excel-box:before{content:"\e7d7"}.icon-file-excel:before{content:"\e7d8"}.icon-file-find:before{content:"\e7d9"}.icon-file-hidden:before{content:"\e7da"}.icon-file-image-box:before{content:"\e7db"}.icon-file-image:before{content:"\e7dc"}.icon-file-multiple:before{content:"\e7dd"}.icon-file-music:before{content:"\e7de"}.icon-file-outline:before{content:"\e7df"}.icon-file-pdf-box:before{content:"\e7e0"}.icon-file-pdf:before{content:"\e7e1"}.icon-file-powerpoint-box:before{content:"\e7e2"}.icon-file-powerpoint:before{content:"\e7e3"}.icon-file-presentation-box:before{content:"\e7e4"}.icon-file-video:before{content:"\e7e5"}.icon-file-word-box:before{content:"\e7e6"}.icon-file-word:before{content:"\e7e7"}.icon-file-xml:before{content:"\e7e8"}.icon-file:before{content:"\e7e9"}.icon-fill:before{content:"\e7ea"}.icon-film:before{content:"\e7eb"}.icon-filmstrip-off:before{content:"\e7ec"}.icon-filmstrip:before{content:"\e7ed"}.icon-filter-outline:before{content:"\e7ee"}.icon-filter-remove-outline:before{content:"\e7ef"}.icon-filter-remove:before{content:"\e7f0"}.icon-filter-variant:before{content:"\e7f1"}.icon-filter:before{content:"\e7f2"}.icon-fire:before{content:"\e7f3"}.icon-fish:before{content:"\e7f4"}.icon-flag-checkered-variant:before{content:"\e7f5"}.icon-flag-checkered:before{content:"\e7f6"}.icon-flag-outline-variant:before{content:"\e7f7"}.icon-flag-outline:before{content:"\e7f8"}.icon-flag-triangle:before{content:"\e7f9"}.icon-flag-variant:before{content:"\e7fa"}.icon-flag:before{content:"\e7fb"}.icon-flash-auto:before{content:"\e7fc"}.icon-flash-off:before{content:"\e7fd"}.icon-flash:before{content:"\e7fe"}.icon-flashlight-off:before{content:"\e7ff"}.icon-flashlight:before{content:"\e800"}.icon-flattr:before{content:"\e801"}.icon-flickr-after:before{content:"\e802"}.icon-flickr-before:before{content:"\e803"}.icon-flip-to-back:before{content:"\e804"}.icon-flip-to-front:before{content:"\e805"}.icon-floppy:before{content:"\e806"}.icon-flower:before{content:"\e807"}.icon-folder-account:before{content:"\e808"}.icon-folder-download:before{content:"\e809"}.icon-folder-google-drive:before{content:"\e80a"}.icon-folder-image:before{content:"\e80b"}.icon-folder-lock-open:before{content:"\e80c"}.icon-folder-lock:before{content:"\e80d"}.icon-folder-move:before{content:"\e80e"}.icon-folder-multiple-image:before{content:"\e80f"}.icon-folder-multiple-outline:before{content:"\e810"}.icon-folder-multiple:before{content:"\e811"}.icon-folder-outline-lock:before{content:"\e812"}.icon-folder-outline:before{content:"\e813"}.icon-folder-plus:before{content:"\e814"}.icon-folder-remove:before{content:"\e815"}.icon-folder-upload:before{content:"\e816"}.icon-folder:before{content:"\e817"}.icon-food-apple:before{content:"\e818"}.icon-food-variant:before{content:"\e819"}.icon-food:before{content:"\e81a"}.icon-football-helmet:before{content:"\e81b"}.icon-football:before{content:"\e81c"}.icon-format-align-center:before{content:"\e81d"}.icon-format-align-justify:before{content:"\e81e"}.icon-format-align-left:before{content:"\e81f"}.icon-format-align-right:before{content:"\e820"}.icon-format-bold:before{content:"\e821"}.icon-format-clear:before{content:"\e822"}.icon-format-color-fill:before{content:"\e823"}.icon-format-color:before{content:"\e824"}.icon-format-float-center:before{content:"\e825"}.icon-format-float-left:before{content:"\e826"}.icon-format-float-none:before{content:"\e827"}.icon-format-float-right:before{content:"\e828"}.icon-format-header-1:before{content:"\e829"}.icon-format-header-2:before{content:"\e82a"}.icon-format-header-3:before{content:"\e82b"}.icon-format-header-4:before{content:"\e82c"}.icon-format-header-5:before{content:"\e82d"}.icon-format-header-6:before{content:"\e82e"}.icon-format-header-decrease:before{content:"\e82f"}.icon-format-header-down:before{content:"\e830"}.icon-format-header-equal:before{content:"\e831"}.icon-format-header-increase:before{content:"\e832"}.icon-format-header-pound:before{content:"\e833"}.icon-format-header-up:before{content:"\e834"}.icon-format-indent-decrease:before{content:"\e835"}.icon-format-indent-increase:before{content:"\e836"}.icon-format-italic:before{content:"\e837"}.icon-format-line-spacing:before{content:"\e838"}.icon-format-list-bulleted:before{content:"\e839"}.icon-format-list-numbers:before{content:"\e83a"}.icon-format-object-inline:before{content:"\e83b"}.icon-format-object-square:before{content:"\e83c"}.icon-format-object-tight:before{content:"\e83d"}.icon-format-object-top-bottom:before{content:"\e83e"}.icon-format-paint:before{content:"\e83f"}.icon-format-paragraph:before{content:"\e840"}.icon-format-quote:before{content:"\e841"}.icon-format-size:before{content:"\e842"}.icon-format-strikethrough:before{content:"\e843"}.icon-format-subscript:before{content:"\e844"}.icon-format-superscript:before{content:"\e845"}.icon-format-text:before{content:"\e846"}.icon-format-textdirection-l-to-r:before{content:"\e847"}.icon-format-textdirection-r-to-l:before{content:"\e848"}.icon-format-underline:before{content:"\e849"}.icon-forum:before{content:"\e84a"}.icon-forward:before{content:"\e84b"}.icon-foursquare:before{content:"\e84c"}.icon-fridge:before{content:"\e84d"}.icon-fullscreen-exit:before{content:"\e84e"}.icon-fullscreen:before{content:"\e84f"}.icon-function:before{content:"\e850"}.icon-gamepad-variant:before{content:"\e851"}.icon-gamepad:before{content:"\e852"}.icon-gas-station:before{content:"\e853"}.icon-gavel:before{content:"\e854"}.icon-gender-female:before{content:"\e855"}.icon-gender-male-female:before{content:"\e856"}.icon-gender-male:before{content:"\e857"}.icon-gender-transgender:before{content:"\e858"}.icon-gift:before{content:"\e859"}.icon-git:before{content:"\e85a"}.icon-github-box:before{content:"\e85b"}.icon-github:before{content:"\e85c"}.icon-glass-flute:before{content:"\e85d"}.icon-glass-mug:before{content:"\e85e"}.icon-glass-stange:before{content:"\e85f"}.icon-glass-tulip:before{content:"\e860"}.icon-glasses:before{content:"\e861"}.icon-gmail:before{content:"\e862"}.icon-google-chrome:before{content:"\e863"}.icon-google-circles-communities:before{content:"\e864"}.icon-google-circles-extended:before{content:"\e865"}.icon-google-circles-invite:before{content:"\e866"}.icon-google-circles:before{content:"\e867"}.icon-google-controller-off:before{content:"\e868"}.icon-google-controller:before{content:"\e869"}.icon-google-drive:before{content:"\e86a"}.icon-google-earth:before{content:"\e86b"}.icon-google-glass:before{content:"\e86c"}.icon-google-maps:before{content:"\e86d"}.icon-google-pages:before{content:"\e86e"}.icon-google-play:before{content:"\e86f"}.icon-google-plus-box:before{content:"\e870"}.icon-google-plus:before{content:"\e871"}.icon-google:before{content:"\e872"}.icon-grid-off:before{content:"\e873"}.icon-grid:before{content:"\e874"}.icon-group:before{content:"\e875"}.icon-hand-pointing-right:before{content:"\e876"}.icon-hanger:before{content:"\e877"}.icon-hangouts:before{content:"\e878"}.icon-harddisk:before{content:"\e879"}.icon-headphones-box:before{content:"\e87a"}.icon-headphones-dots:before{content:"\e87b"}.icon-headphones:before{content:"\e87c"}.icon-headset-dock:before{content:"\e87d"}.icon-headset-off:before{content:"\e87e"}.icon-headset:before{content:"\e87f"}.icon-heart-box-outline:before{content:"\e880"}.icon-heart-box:before{content:"\e881"}.icon-heart-broken:before{content:"\e882"}.icon-heart-outline:before{content:"\e883"}.icon-heart:before{content:"\e884"}.icon-help-circle:before{content:"\e885"}.icon-help:before{content:"\e886"}.icon-hexagon-outline:before{content:"\e887"}.icon-hexagon:before{content:"\e888"}.icon-history:before{content:"\e889"}.icon-hololens:before{content:"\e88a"}.icon-home-modern:before{content:"\e88b"}.icon-home-variant:before{content:"\e88c"}.icon-home:before{content:"\e88d"}.icon-hops:before{content:"\e88e"}.icon-hospital-building:before{content:"\e88f"}.icon-hospital-marker:before{content:"\e890"}.icon-hospital:before{content:"\e891"}.icon-hotel:before{content:"\e892"}.icon-houzz-box:before{content:"\e893"}.icon-human-child:before{content:"\e894"}.icon-human-male-female:before{content:"\e895"}.icon-human:before{content:"\e896"}.icon-image-album:before{content:"\e897"}.icon-image-area-close:before{content:"\e898"}.icon-image-area:before{content:"\e899"}.icon-image-broken:before{content:"\e89a"}.icon-image-filter-black-white:before{content:"\e89b"}.icon-image-filter-center-focus:before{content:"\e89c"}.icon-image-filter-drama:before{content:"\e89d"}.icon-image-filter-frames:before{content:"\e89e"}.icon-image-filter-hdr:before{content:"\e89f"}.icon-image-filter-none:before{content:"\e8a0"}.icon-image-filter-tilt-shift:before{content:"\e8a1"}.icon-image-filter-vintage:before{content:"\e8a2"}.icon-image-filter:before{content:"\e8a3"}.icon-image:before{content:"\e8a4"}.icon-import:before{content:"\e8a5"}.icon-inbox:before{content:"\e8a6"}.icon-indent:before{content:"\e8a7"}.icon-information-outline:before{content:"\e8a8"}.icon-information:before{content:"\e8a9"}.icon-instagram:before{content:"\e8aa"}.icon-instapaper:before{content:"\e8ab"}.icon-internet-explorer:before{content:"\e8ac"}.icon-invert-colors:before{content:"\e8ad"}.icon-jira:before{content:"\e8ae"}.icon-jsfiddle:before{content:"\e8af"}.icon-keg:before{content:"\e8b0"}.icon-key-change:before{content:"\e8b1"}.icon-key-minus:before{content:"\e8b2"}.icon-key-plus:before{content:"\e8b3"}.icon-key-remove:before{content:"\e8b4"}.icon-key-variant:before{content:"\e8b5"}.icon-key:before{content:"\e8b6"}.icon-keyboard-backspace:before{content:"\e8b7"}.icon-keyboard-caps:before{content:"\e8b8"}.icon-keyboard-close:before{content:"\e8b9"}.icon-keyboard-off:before{content:"\e8ba"}.icon-keyboard-return:before{content:"\e8bb"}.icon-keyboard-tab:before{content:"\e8bc"}.icon-keyboard-variant:before{content:"\e8bd"}.icon-keyboard:before{content:"\e8be"}.icon-label-outline:before{content:"\e8bf"}.icon-label:before{content:"\e8c0"}.icon-language-csharp:before{content:"\e8c1"}.icon-language-css3:before{content:"\e8c2"}.icon-language-html5:before{content:"\e8c3"}.icon-language-javascript:before{content:"\e8c4"}.icon-language-python-text:before{content:"\e8c5"}.icon-language-python:before{content:"\e8c6"}.icon-laptop-chromebook:before{content:"\e8c7"}.icon-laptop-mac:before{content:"\e8c8"}.icon-laptop-windows:before{content:"\e8c9"}.icon-laptop:before{content:"\e8ca"}.icon-lastfm:before{content:"\e8cb"}.icon-launch:before{content:"\e8cc"}.icon-layers-off:before{content:"\e8cd"}.icon-layers:before{content:"\e8ce"}.icon-leaf:before{content:"\e8cf"}.icon-library-books:before{content:"\e8d0"}.icon-library-music:before{content:"\e8d1"}.icon-library-plus:before{content:"\e8d2"}.icon-library:before{content:"\e8d3"}.icon-lightbulb-outline:before{content:"\e8d4"}.icon-lightbulb:before{content:"\e8d5"}.icon-link-off:before{content:"\e8d6"}.icon-link-variant-off:before{content:"\e8d7"}.icon-link-variant:before{content:"\e8d8"}.icon-link:before{content:"\e8d9"}.icon-linkedin-box:before{content:"\e8da"}.icon-linkedin:before{content:"\e8db"}.icon-linode:before{content:"\e8dc"}.icon-linux:before{content:"\e8dd"}.icon-lock-outline:before{content:"\e8de"}.icon-lock-unlocked-outline:before{content:"\e8df"}.icon-lock-unlocked:before{content:"\e8e0"}.icon-lock:before{content:"\e8e1"}.icon-login:before{content:"\e8e2"}.icon-logout:before{content:"\e8e3"}.icon-looks:before{content:"\e8e4"}.icon-loupe:before{content:"\e8e5"}.icon-lumx:before{content:"\e8e6"}.icon-magnet-on:before{content:"\e8e7"}.icon-magnet:before{content:"\e8e8"}.icon-magnify-minus:before{content:"\e8e9"}.icon-magnify-plus:before{content:"\e8ea"}.icon-magnify:before{content:"\e8eb"}.icon-mail-ru:before{content:"\e8ec"}.icon-map-marker-circle:before{content:"\e8ed"}.icon-map-marker-multiple:before{content:"\e8ee"}.icon-map-marker-off:before{content:"\e8ef"}.icon-map-marker-radius:before{content:"\e8f0"}.icon-map-marker:before{content:"\e8f1"}.icon-map:before{content:"\e8f2"}.icon-margin:before{content:"\e8f3"}.icon-markdown:before{content:"\e8f4"}.icon-marker-check:before{content:"\e8f5"}.icon-martini:before{content:"\e8f6"}.icon-material-ui:before{content:"\e8f7"}.icon-maxcdn:before{content:"\e8f8"}.icon-medium:before{content:"\e8f9"}.icon-memory:before{content:"\e8fa"}.icon-menu-down:before{content:"\e8fb"}.icon-menu-left:before{content:"\e8fc"}.icon-menu-right:before{content:"\e8fd"}.icon-menu-up:before{content:"\e8fe"}.icon-menu:before{content:"\e8ff"}.icon-message-alert:before{content:"\e900"}.icon-message-draw:before{content:"\e901"}.icon-message-image:before{content:"\e902"}.icon-message-processing:before{content:"\e903"}.icon-message-reply:before{content:"\e904"}.icon-message-text-outline:before{content:"\e905"}.icon-message-text:before{content:"\e906"}.icon-message-video:before{content:"\e907"}.icon-message:before{content:"\e908"}.icon-microphone-dots:before{content:"\e909"}.icon-microphone-off:before{content:"\e90a"}.icon-microphone-outline:before{content:"\e90b"}.icon-microphone-settings:before{content:"\e90c"}.icon-microphone-variant-off:before{content:"\e90d"}.icon-microphone-variant:before{content:"\e90e"}.icon-microphone:before{content:"\e90f"}.icon-minus-box:before{content:"\e910"}.icon-minus-circle-outline:before{content:"\e911"}.icon-minus-circle:before{content:"\e912"}.icon-minus-network:before{content:"\e913"}.icon-minus:before{content:"\e914"}.icon-monitor-multiple:before{content:"\e915"}.icon-monitor:before{content:"\e916"}.icon-more:before{content:"\e917"}.icon-mouse-off:before{content:"\e918"}.icon-mouse-variant-off:before{content:"\e919"}.icon-mouse-variant:before{content:"\e91a"}.icon-mouse:before{content:"\e91b"}.icon-movie:before{content:"\e91c"}.icon-multiplication-box:before{content:"\e91d"}.icon-multiplication:before{content:"\e91e"}.icon-music-box-outline:before{content:"\e91f"}.icon-music-box:before{content:"\e920"}.icon-music-circle:before{content:"\e921"}.icon-music-note-eighth:before{content:"\e922"}.icon-music-note-half:before{content:"\e923"}.icon-music-note-off:before{content:"\e924"}.icon-music-note-quarter:before{content:"\e925"}.icon-music-note-sixteenth:before{content:"\e926"}.icon-music-note-whole:before{content:"\e927"}.icon-music-note:before{content:"\e928"}.icon-nature-people:before{content:"\e929"}.icon-nature:before{content:"\e92a"}.icon-navigation:before{content:"\e92b"}.icon-needle:before{content:"\e92c"}.icon-nest-protect:before{content:"\e92d"}.icon-nest-thermostat:before{content:"\e92e"}.icon-newspaper:before{content:"\e92f"}.icon-nfc-tap:before{content:"\e930"}.icon-nfc-variant:before{content:"\e931"}.icon-nfc:before{content:"\e932"}.icon-no:before{content:"\e933"}.icon-not-equal:before{content:"\e934"}.icon-note-outline:before{content:"\e935"}.icon-note-text:before{content:"\e936"}.icon-note:before{content:"\e937"}.icon-numeric-0-box-multiple-outline:before{content:"\e938"}.icon-numeric-0-box-outline:before{content:"\e939"}.icon-numeric-0-box:before{content:"\e93a"}.icon-numeric-1-box-multiple-outline:before{content:"\e93b"}.icon-numeric-1-box-outline:before{content:"\e93c"}.icon-numeric-1-box:before{content:"\e93d"}.icon-numeric-2-box-multiple-outline:before{content:"\e93e"}.icon-numeric-2-box-outline:before{content:"\e93f"}.icon-numeric-2-box:before{content:"\e940"}.icon-numeric-3-box-multiple-outline:before{content:"\e941"}.icon-numeric-3-box-outline:before{content:"\e942"}.icon-numeric-3-box:before{content:"\e943"}.icon-numeric-4-box-multiple-outline:before{content:"\e944"}.icon-numeric-4-box-outline:before{content:"\e945"}.icon-numeric-4-box:before{content:"\e946"}.icon-numeric-5-box-multiple-outline:before{content:"\e947"}.icon-numeric-5-box-outline:before{content:"\e948"}.icon-numeric-5-box:before{content:"\e949"}.icon-numeric-6-box-multiple-outline:before{content:"\e94a"}.icon-numeric-6-box-outline:before{content:"\e94b"}.icon-numeric-6-box:before{content:"\e94c"}.icon-numeric-7-box-multiple-outline:before{content:"\e94d"}.icon-numeric-7-box-outline:before{content:"\e94e"}.icon-numeric-7-box:before{content:"\e94f"}.icon-numeric-8-box-multiple-outline:before{content:"\e950"}.icon-numeric-8-box-outline:before{content:"\e951"}.icon-numeric-8-box:before{content:"\e952"}.icon-numeric-9-box-multiple-outline:before{content:"\e953"}.icon-numeric-9-box-outline:before{content:"\e954"}.icon-numeric-9-box:before{content:"\e955"}.icon-numeric-9-plus-box-multiple-outline:before{content:"\e956"}.icon-numeric-9-plus-box-outline:before{content:"\e957"}.icon-numeric-9-plus-box:before{content:"\e958"}.icon-numeric:before{content:"\e959"}.icon-nutriton:before{content:"\e95a"}.icon-odnoklassniki:before{content:"\e95b"}.icon-office:before{content:"\e95c"}.icon-oil:before{content:"\e95d"}.icon-omega:before{content:"\e95e"}.icon-onedrive:before{content:"\e95f"}.icon-open-in-app:before{content:"\e960"}.icon-open-in-new:before{content:"\e961"}.icon-ornament-variant:before{content:"\e962"}.icon-ornament:before{content:"\e963"}.icon-outbox:before{content:"\e964"}.icon-outdent:before{content:"\e965"}.icon-owl:before{content:"\e966"}.icon-package-down:before{content:"\e967"}.icon-package-up:before{content:"\e968"}.icon-package-variant-closed:before{content:"\e969"}.icon-package-variant:before{content:"\e96a"}.icon-package:before{content:"\e96b"}.icon-palette-advanced:before{content:"\e96c"}.icon-palette:before{content:"\e96d"}.icon-panda:before{content:"\e96e"}.icon-pandora:before{content:"\e96f"}.icon-panorama-fisheye:before{content:"\e970"}.icon-panorama-horizontal:before{content:"\e971"}.icon-panorama-vertical:before{content:"\e972"}.icon-panorama-wide-angle:before{content:"\e973"}.icon-panorama:before{content:"\e974"}.icon-paper-cut-vertical:before{content:"\e975"}.icon-paperclip:before{content:"\e976"}.icon-parking:before{content:"\e977"}.icon-pause-circle-outline:before{content:"\e978"}.icon-pause-circle:before{content:"\e979"}.icon-pause-octagon-outline:before{content:"\e97a"}.icon-pause-octagon:before{content:"\e97b"}.icon-pause:before{content:"\e97c"}.icon-paw:before{content:"\e97d"}.icon-pen:before{content:"\e97e"}.icon-pencil-box-outline:before{content:"\e97f"}.icon-pencil-box:before{content:"\e980"}.icon-pencil:before{content:"\e981"}.icon-people:before{content:"\e982"}.icon-percent:before{content:"\e983"}.icon-person-box:before{content:"\e984"}.icon-person-minus:before{content:"\e985"}.icon-person-plus:before{content:"\e986"}.icon-pharmacy:before{content:"\e987"}.icon-phone-bluetooth:before{content:"\e988"}.icon-phone-dots:before{content:"\e989"}.icon-phone-forward:before{content:"\e98a"}.icon-phone-hangup:before{content:"\e98b"}.icon-phone-in-talk:before{content:"\e98c"}.icon-phone-incoming:before{content:"\e98d"}.icon-phone-locked:before{content:"\e98e"}.icon-phone-log:before{content:"\e98f"}.icon-phone-missed:before{content:"\e990"}.icon-phone-outgoing:before{content:"\e991"}.icon-phone-paused:before{content:"\e992"}.icon-phone:before{content:"\e993"}.icon-picture:before{content:"\e994"}.icon-pig:before{content:"\e995"}.icon-pill:before{content:"\e996"}.icon-pin-off:before{content:"\e997"}.icon-pin:before{content:"\e998"}.icon-pine-tree-box:before{content:"\e999"}.icon-pine-tree:before{content:"\e99a"}.icon-pinterest-box:before{content:"\e99b"}.icon-pinterest:before{content:"\e99c"}.icon-pizza:before{content:"\e99d"}.icon-plane:before{content:"\e99e"}.icon-play-box-outline:before{content:"\e99f"}.icon-play-circle-outline:before{content:"\e9a0"}.icon-play-circle:before{content:"\e9a1"}.icon-play:before{content:"\e9a2"}.icon-playlist-minus:before{content:"\e9a3"}.icon-playlist-plus:before{content:"\e9a4"}.icon-playstation:before{content:"\e9a5"}.icon-plus-box:before{content:"\e9a6"}.icon-plus-circle-outline:before{content:"\e9a7"}.icon-plus-circle:before{content:"\e9a8"}.icon-plus-network:before{content:"\e9a9"}.icon-plus-one:before{content:"\e9aa"}.icon-plus:before{content:"\e9ab"}.icon-pocket:before{content:"\e9ac"}.icon-poll-box:before{content:"\e9ad"}.icon-poll:before{content:"\e9ae"}.icon-polymer:before{content:"\e9af"}.icon-popcorn:before{content:"\e9b0"}.icon-pound-box:before{content:"\e9b1"}.icon-pound:before{content:"\e9b2"}.icon-power-settings:before{content:"\e9b3"}.icon-power-socket:before{content:"\e9b4"}.icon-power:before{content:"\e9b5"}.icon-presentation-play:before{content:"\e9b6"}.icon-presentation:before{content:"\e9b7"}.icon-printer-3d:before{content:"\e9b8"}.icon-printer:before{content:"\e9b9"}.icon-pulse:before{content:"\e9ba"}.icon-puzzle:before{content:"\e9bb"}.icon-qrcode:before{content:"\e9bc"}.icon-quadcopter:before{content:"\e9bd"}.icon-quality-high:before{content:"\e9be"}.icon-question-mark-circle:before{content:"\e9bf"}.icon-quick-reply:before{content:"\e9c0"}.icon-quicktime:before{content:"\e9c1"}.icon-rabbit:before{content:"\e9c2"}.icon-radiator:before{content:"\e9c3"}.icon-radio-tower:before{content:"\e9c4"}.icon-radio:before{content:"\e9c5"}.icon-radioactive:before{content:"\e9c6"}.icon-radiobox-blank:before{content:"\e9c7"}.icon-radiobox-marked:before{content:"\e9c8"}.icon-raspberrypi:before{content:"\e9c9"}.icon-rdio:before{content:"\e9ca"}.icon-read:before{content:"\e9cb"}.icon-readability:before{content:"\e9cc"}.icon-receipt:before{content:"\e9cd"}.icon-recycle:before{content:"\e9ce"}.icon-reddit:before{content:"\e9cf"}.icon-redo-variant:before{content:"\e9d0"}.icon-redo:before{content:"\e9d1"}.icon-refresh:before{content:"\e9d2"}.icon-relative-scale:before{content:"\e9d3"}.icon-reload:before{content:"\e9d4"}.icon-remote:before{content:"\e9d5"}.icon-rename-box:before{content:"\e9d6"}.icon-repeat-off:before{content:"\e9d7"}.icon-repeat-once:before{content:"\e9d8"}.icon-repeat:before{content:"\e9d9"}.icon-replay:before{content:"\e9da"}.icon-reply-all:before{content:"\e9db"}.icon-reply:before{content:"\e9dc"}.icon-reproduction:before{content:"\e9dd"}.icon-resize-bottom-right:before{content:"\e9de"}.icon-responsive:before{content:"\e9df"}.icon-restore:before{content:"\e9e0"}.icon-rewind:before{content:"\e9e1"}.icon-ribbon:before{content:"\e9e2"}.icon-road:before{content:"\e9e3"}.icon-rocket:before{content:"\e9e4"}.icon-rotate-3d:before{content:"\e9e5"}.icon-rotate-left-variant:before{content:"\e9e6"}.icon-rotate-left:before{content:"\e9e7"}.icon-rotate-right-variant:before{content:"\e9e8"}.icon-rotate-right:before{content:"\e9e9"}.icon-routes:before{content:"\e9ea"}.icon-rss-box:before{content:"\e9eb"}.icon-ruler:before{content:"\e9ec"}.icon-run:before{content:"\e9ed"}.icon-sale:before{content:"\e9ee"}.icon-satellite-variant:before{content:"\e9ef"}.icon-satellite:before{content:"\e9f0"}.icon-scale-bathroom:before{content:"\e9f1"}.icon-scale:before{content:"\e9f2"}.icon-school:before{content:"\e9f3"}.icon-screen-rotation-lock:before{content:"\e9f4"}.icon-screen-rotation:before{content:"\e9f5"}.icon-script:before{content:"\e9f6"}.icon-security-network:before{content:"\e9f7"}.icon-security:before{content:"\e9f8"}.icon-select-all:before{content:"\e9f9"}.icon-select-inverse:before{content:"\e9fa"}.icon-select-off:before{content:"\e9fb"}.icon-select:before{content:"\e9fc"}.icon-send:before{content:"\e9fd"}.icon-server-minus:before{content:"\e9fe"}.icon-server-network-off:before{content:"\e9ff"}.icon-server-network:before{content:"\ea00"}.icon-server-off:before{content:"\ea01"}.icon-server-plus:before{content:"\ea02"}.icon-server-remove:before{content:"\ea03"}.icon-server-security:before{content:"\ea04"}.icon-server:before{content:"\ea05"}.icon-shape-plus:before{content:"\ea06"}.icon-share-variant:before{content:"\ea07"}.icon-share:before{content:"\ea08"}.icon-shield-outline:before{content:"\ea09"}.icon-shield:before{content:"\ea0a"}.icon-shopping-music:before{content:"\ea0b"}.icon-shopping:before{content:"\ea0c"}.icon-shuffle:before{content:"\ea0d"}.icon-sigma:before{content:"\ea0e"}.icon-sign-caution:before{content:"\ea0f"}.icon-signal:before{content:"\ea10"}.icon-silverware-fork:before{content:"\ea11"}.icon-silverware-spoon:before{content:"\ea12"}.icon-silverware-variant:before{content:"\ea13"}.icon-silverware:before{content:"\ea14"}.icon-sim-alert:before{content:"\ea15"}.icon-sim:before{content:"\ea16"}.icon-sitemap:before{content:"\ea17"}.icon-skip-next:before{content:"\ea18"}.icon-skip-previous:before{content:"\ea19"}.icon-skype-business:before{content:"\ea1a"}.icon-skype:before{content:"\ea1b"}.icon-sleep-off:before{content:"\ea1c"}.icon-sleep:before{content:"\ea1d"}.icon-smoking-off:before{content:"\ea1e"}.icon-smoking:before{content:"\ea1f"}.icon-snapchat:before{content:"\ea20"}.icon-snowman:before{content:"\ea21"}.icon-sofa:before{content:"\ea22"}.icon-sort-alphabetical:before{content:"\ea23"}.icon-sort-ascending:before{content:"\ea24"}.icon-sort-descending:before{content:"\ea25"}.icon-sort-numeric:before{content:"\ea26"}.icon-sort-variant:before{content:"\ea27"}.icon-sort:before{content:"\ea28"}.icon-soundcloud:before{content:"\ea29"}.icon-source-fork:before{content:"\ea2a"}.icon-source-pull:before{content:"\ea2b"}.icon-speaker-off:before{content:"\ea2c"}.icon-speaker:before{content:"\ea2d"}.icon-speedometer:before{content:"\ea2e"}.icon-spellcheck:before{content:"\ea2f"}.icon-spotify:before{content:"\ea30"}.icon-spotlight-beam:before{content:"\ea31"}.icon-spotlight:before{content:"\ea32"}.icon-spreadsheet:before{content:"\ea33"}.icon-square-inc-cash:before{content:"\ea34"}.icon-square-inc:before{content:"\ea35"}.icon-stackoverflow:before{content:"\ea36"}.icon-star-circle:before{content:"\ea37"}.icon-star-half:before{content:"\ea38"}.icon-star-of-david:before{content:"\ea39"}.icon-star-outline:before{content:"\ea3a"}.icon-star:before{content:"\ea3b"}.icon-steam:before{content:"\ea3c"}.icon-stethoscope:before{content:"\ea3d"}.icon-stocking:before{content:"\ea3e"}.icon-stop:before{content:"\ea3f"}.icon-store-24-hour:before{content:"\ea40"}.icon-store:before{content:"\ea41"}.icon-stove:before{content:"\ea42"}.icon-subway:before{content:"\ea43"}.icon-sunglasses:before{content:"\ea44"}.icon-swap-horizontal:before{content:"\ea45"}.icon-swap-vertical:before{content:"\ea46"}.icon-swim:before{content:"\ea47"}.icon-sword:before{content:"\ea48"}.icon-sync-alert:before{content:"\ea49"}.icon-sync-off:before{content:"\ea4a"}.icon-sync:before{content:"\ea4b"}.icon-tab-unselected:before{content:"\ea4c"}.icon-tab:before{content:"\ea4d"}.icon-table-column-plus-after:before{content:"\ea4e"}.icon-table-column-plus-before:before{content:"\ea4f"}.icon-table-column-remove:before{content:"\ea50"}.icon-table-column-width:before{content:"\ea51"}.icon-table-edit:before{content:"\ea52"}.icon-table-large:before{content:"\ea53"}.icon-table-row-height:before{content:"\ea54"}.icon-table-row-plus-after:before{content:"\ea55"}.icon-table-row-plus-before:before{content:"\ea56"}.icon-table-row-remove:before{content:"\ea57"}.icon-table:before{content:"\ea58"}.icon-tablet-android:before{content:"\ea59"}.icon-tablet-ipad:before{content:"\ea5a"}.icon-tablet:before{content:"\ea5b"}.icon-tag-faces:before{content:"\ea5c"}.icon-tag-multiple:before{content:"\ea5d"}.icon-tag-outline:before{content:"\ea5e"}.icon-tag-text-outline:before{content:"\ea5f"}.icon-tag:before{content:"\ea60"}.icon-taxi:before{content:"\ea61"}.icon-teamviewer:before{content:"\ea62"}.icon-telegram:before{content:"\ea63"}.icon-television-guide:before{content:"\ea64"}.icon-television:before{content:"\ea65"}.icon-temperature-celsius:before{content:"\ea66"}.icon-temperature-fahrenheit:before{content:"\ea67"}.icon-temperature-kelvin:before{content:"\ea68"}.icon-tennis:before{content:"\ea69"}.icon-tent:before{content:"\ea6a"}.icon-terrain:before{content:"\ea6b"}.icon-text-to-speech-off:before{content:"\ea6c"}.icon-text-to-speech:before{content:"\ea6d"}.icon-texture:before{content:"\ea6e"}.icon-theater:before{content:"\ea6f"}.icon-theme-light-dark:before{content:"\ea70"}.icon-thermometer-lines:before{content:"\ea71"}.icon-thermometer:before{content:"\ea72"}.icon-thumb-down-outline:before{content:"\ea73"}.icon-thumb-down:before{content:"\ea74"}.icon-thumb-up-outline:before{content:"\ea75"}.icon-thumb-up:before{content:"\ea76"}.icon-thumbs-up-down:before{content:"\ea77"}.icon-ticket-account:before{content:"\ea78"}.icon-ticket:before{content:"\ea79"}.icon-tie:before{content:"\ea7a"}.icon-tile-four:before{content:"\ea7b"}.icon-timelapse:before{content:"\ea7c"}.icon-timer-3:before{content:"\ea7d"}.icon-timer-10:before{content:"\ea7e"}.icon-timer-off:before{content:"\ea7f"}.icon-timer-sand:before{content:"\ea80"}.icon-timer:before{content:"\ea81"}.icon-timetable:before{content:"\ea82"}.icon-toggle-switch-off:before{content:"\ea83"}.icon-toggle-switch-on:before{content:"\ea84"}.icon-tooltip-edit:before{content:"\ea85"}.icon-tooltip-image:before{content:"\ea86"}.icon-tooltip-outline-plus:before{content:"\ea87"}.icon-tooltip-outline:before{content:"\ea88"}.icon-tooltip-text:before{content:"\ea89"}.icon-tooltip:before{content:"\ea8a"}.icon-tor:before{content:"\ea8b"}.icon-traffic-light:before{content:"\ea8c"}.icon-train:before{content:"\ea8d"}.icon-tram:before{content:"\ea8e"}.icon-transcribe-close:before{content:"\ea8f"}.icon-transcribe:before{content:"\ea90"}.icon-transfer:before{content:"\ea91"}.icon-trash:before{content:"\ea92"}.icon-tree:before{content:"\ea93"}.icon-trello:before{content:"\ea94"}.icon-trending-down:before{content:"\ea95"}.icon-trending-neutral:before{content:"\ea96"}.icon-trending-up:before{content:"\ea97"}.icon-truck:before{content:"\ea98"}.icon-tshirt-crew:before{content:"\ea99"}.icon-tshirt-v:before{content:"\ea9a"}.icon-tumblr-reblog:before{content:"\ea9b"}.icon-tumblr:before{content:"\ea9c"}.icon-twitch:before{content:"\ea9d"}.icon-twitter-box:before{content:"\ea9e"}.icon-twitter-circle:before{content:"\ea9f"}.icon-twitter-retweet:before{content:"\eaa0"}.icon-twitter:before{content:"\eaa1"}.icon-ubuntu:before{content:"\eaa2"}.icon-umbrella-outline:before{content:"\eaa3"}.icon-umbrella:before{content:"\eaa4"}.icon-undo-variant:before{content:"\eaa5"}.icon-undo:before{content:"\eaa6"}.icon-unfold-less:before{content:"\eaa7"}.icon-unfold-more:before{content:"\eaa8"}.icon-ungroup:before{content:"\eaa9"}.icon-untappd:before{content:"\eaaa"}.icon-upload:before{content:"\eaab"}.icon-usb:before{content:"\eaac"}.icon-vector-curve:before{content:"\eaad"}.icon-vector-point:before{content:"\eaae"}.icon-vector-square:before{content:"\eaaf"}.icon-verified:before{content:"\eab0"}.icon-vibration:before{content:"\eab1"}.icon-video-off:before{content:"\eab2"}.icon-video-switch:before{content:"\eab3"}.icon-video:before{content:"\eab4"}.icon-view-agenda:before{content:"\eab5"}.icon-view-array:before{content:"\eab6"}.icon-view-carousel:before{content:"\eab7"}.icon-view-column:before{content:"\eab8"}.icon-view-dashboard:before{content:"\eab9"}.icon-view-day:before{content:"\eaba"}.icon-view-headline:before{content:"\eabb"}.icon-view-list:before{content:"\eabc"}.icon-view-module:before{content:"\eabd"}.icon-view-quilt:before{content:"\eabe"}.icon-view-stream:before{content:"\eabf"}.icon-view-week:before{content:"\eac0"}.icon-vimeo:before{content:"\eac1"}.icon-vine:before{content:"\eac2"}.icon-vk-box:before{content:"\eac3"}.icon-vk-circle:before{content:"\eac4"}.icon-vk:before{content:"\eac5"}.icon-voicemail:before{content:"\eac6"}.icon-volume-high:before{content:"\eac7"}.icon-volume-low:before{content:"\eac8"}.icon-volume-medium:before{content:"\eac9"}.icon-volume-off:before{content:"\eaca"}.icon-volume:before{content:"\eacb"}.icon-vpn:before{content:"\eacc"}.icon-walk:before{content:"\eacd"}.icon-wallet-giftcard:before{content:"\eace"}.icon-wallet-membership:before{content:"\eacf"}.icon-wallet-travel:before{content:"\ead0"}.icon-wallet:before{content:"\ead1"}.icon-washing-machine:before{content:"\ead2"}.icon-watch-export:before{content:"\ead3"}.icon-watch-import:before{content:"\ead4"}.icon-watch:before{content:"\ead5"}.icon-water-off:before{content:"\ead6"}.icon-water-pump:before{content:"\ead7"}.icon-water:before{content:"\ead8"}.icon-weather-cloudy:before{content:"\ead9"}.icon-weather-fog:before{content:"\eada"}.icon-weather-hail:before{content:"\eadb"}.icon-weather-lightning:before{content:"\eadc"}.icon-weather-night:before{content:"\eadd"}.icon-weather-partlycloudy:before{content:"\eade"}.icon-weather-pouring:before{content:"\eadf"}.icon-weather-rainy:before{content:"\eae0"}.icon-weather-snowy:before{content:"\eae1"}.icon-weather-sunny:before{content:"\eae2"}.icon-weather-sunset-down:before{content:"\eae3"}.icon-weather-sunset-up:before{content:"\eae4"}.icon-weather-sunset:before{content:"\eae5"}.icon-weather-windy-variant:before{content:"\eae6"}.icon-weather-windy:before{content:"\eae7"}.icon-web:before{content:"\eae8"}.icon-webcam:before{content:"\eae9"}.icon-weight-kilogram:before{content:"\eaea"}.icon-weight:before{content:"\eaeb"}.icon-whatsapp:before{content:"\eaec"}.icon-wheelchair-accessibility:before{content:"\eaed"}.icon-white-balance-auto:before{content:"\eaee"}.icon-white-balance-incandescent:before{content:"\eaef"}.icon-white-balance-irradescent:before{content:"\eaf0"}.icon-white-balance-sunny:before{content:"\eaf1"}.icon-wifi:before{content:"\eaf2"}.icon-wii:before{content:"\eaf3"}.icon-wikipedia:before{content:"\eaf4"}.icon-window-close:before{content:"\eaf5"}.icon-window-closed:before{content:"\eaf6"}.icon-window-maximize:before{content:"\eaf7"}.icon-window-minimize:before{content:"\eaf8"}.icon-window-open:before{content:"\eaf9"}.icon-window-restore:before{content:"\eafa"}.icon-windows:before{content:"\eafb"}.icon-wordpress:before{content:"\eafc"}.icon-worker:before{content:"\eafd"}.icon-wunderlist:before{content:"\eafe"}.icon-xbox-controller-off:before{content:"\eaff"}.icon-xbox-controller:before{content:"\eb00"}.icon-xbox:before{content:"\eb01"}.icon-xda:before{content:"\eb02"}.icon-xml:before{content:"\eb03"}.icon-yeast:before{content:"\eb04"}.icon-yelp:before{content:"\eb05"}.icon-youtube-play:before{content:"\eb06"}.icon-youtube:before{content:"\eb07"}.icon-zip-box:before{content:"\eb08"}.avatar{width:40px;min-width:40px;height:40px;line-height:40px;margin:0 8px 0 0;border-radius:50%;font-size:17px;font-weight:500;text-align:center;color:#fff}.avatar.square{border-radius:0}.avatar.small{width:20px;min-width:20px;height:20px;line-height:20px}.avatar.big{width:72px;min-width:72px;height:72px;line-height:72px}.avatar.huge{width:96px;min-width:96px;height:96px;line-height:96px}.form-wrapper{background:#fff;padding:16px}.form-wrapper .form-title{font-size:21px;padding:8px 0}.navigation-simple .item{position:relative;cursor:pointer;text-align:left;margin:0;padding:0 24px;text-transform:none;line-height:48px;max-height:48px;height:48px}.navigation-simple .item md-icon{margin:0 16px 0 0}.navigation-simple .item .title{font-size:13px;font-weight:500;line-height:1}.navigation-simple .item.selected{background-color:rgba(0,0,0,.06)}.navigation-simple .subheader{font-size:13px;border-top:1px solid rgba(0,0,0,.12);font-weight:500;margin-top:8px}.navigation-simple .subheader.light{border-top:1px solid rgba(255,255,255,.12)}.navigation-simple md-divider{margin:8px 0}.simple-pagination{position:relative;display:inline-flex;flex-direction:row;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);background-color:#fff;padding:0 8px}.simple-pagination .pagination-item{min-width:48px;min-height:56px;line-height:56px;border-radius:0;margin:0;font-weight:400;color:rgba(0,0,0,.54)}.simple-pagination .pagination-item:hover{color:rgba(0,0,0,.87)}.simple-pagination .pagination-item.active{cursor:default;color:rgba(0,0,0,.87)}.simple-pagination .pagination-item.disabled{cursor:default;color:rgba(0,0,0,.26)}.price-tables .price-table{position:relative;background-color:#fff;width:280px;border-radius:2px;margin:24px 24px 0 0;overflow:hidden}.price-tables .price-table.style-1 .package-type{font-size:17px;padding:16px 24px}.price-tables .price-table.style-1 .package-type .sale{font-size:13px;font-weight:600}.price-tables .price-table.style-1 .price{padding:32px 32px 16px 32px}.price-tables .price-table.style-1 .price .currency{padding-right:4px;font-size:24px;font-weight:500;color:rgba(0,0,0,.54)}.price-tables .price-table.style-1 .price .value{font-size:72px;font-weight:300;line-height:1}.price-tables .price-table.style-1 .price .period{padding:0 0 5px 4px;font-size:17px;color:rgba(0,0,0,.54)}.price-tables .price-table.style-1 md-divider{margin:16px 32px}.price-tables .price-table.style-1 .terms{padding:16px 32px;font-size:15px}.price-tables .price-table.style-1 .cta-button{margin:16px auto 32px auto;width:128px}.price-tables .price-table.style-2 .badge{position:absolute;top:0;left:50%;transform:translateX(-50%);font-size:11px;font-weight:500;padding:6px 8px}.price-tables .price-table.style-2 .package-type{padding:48px 32px 24px 32px;font-size:20px;font-weight:500;text-align:center}.price-tables .price-table.style-2 .price{padding:0 32px 8px 32px}.price-tables .price-table.style-2 .price .currency{padding-right:4px;font-size:24px;font-weight:500;color:rgba(0,0,0,.54)}.price-tables .price-table.style-2 .price .value{font-size:56px;font-weight:300;line-height:1}.price-tables .price-table.style-2 .period{padding:0 32px;font-size:15px;font-weight:500;color:rgba(0,0,0,.54);text-align:center}.price-tables .price-table.style-2 .terms{padding:32px;font-size:15px}.price-tables .price-table.style-2 .terms .term{padding-bottom:8px}.price-tables .price-table.style-2 .terms .term:last-child{padding-bottom:0}.price-tables .price-table.style-2 .cta-button{margin:8px auto 32px auto;width:128px}.price-tables .price-table.style-3 .package-type{padding:32px;text-align:center}.price-tables .price-table.style-3 .package-type .title{font-size:34px}.price-tables .price-table.style-3 .package-type .subtitle{font-size:17px;color:rgba(0,0,0,.54);font-weight:500}.price-tables .price-table.style-3 .price{padding:16px 32px}.price-tables .price-table.style-3 .price .currency{padding-right:4px;font-size:15px;font-weight:500}.price-tables .price-table.style-3 .price .value{font-size:34px;font-weight:300;line-height:1}.price-tables .price-table.style-3 .price .period{padding-left:4px;text-align:center}.price-tables .price-table.style-3 .terms{margin:32px;font-size:15px;color:rgba(0,0,0,.54)}.price-tables .price-table.style-3 .terms .term{padding-bottom:16px}.price-tables .price-table.style-3 .terms .term:last-child{padding-bottom:0}.price-tables .price-table.style-3 .cta-button{margin:8px 32px}.price-tables .price-table.style-3 .note{padding:8px 32px 16px 32px;text-align:center;color:rgba(0,0,0,.54)}.simple-table-container{background:#fff}.simple-table-container .table-title{font-size:20px;padding:24px}table.simple{width:100%;border:none;border-spacing:0;text-align:left}table.simple thead tr th{padding:16px 8px;font-weight:500;color:rgba(0,0,0,.54);border-bottom:1px solid rgba(0,0,0,.12);white-space:nowrap;min-width:120px}table.simple thead tr th:first-child{padding-left:24px}table.simple thead tr th:last-child{padding-right:24px}table.simple tbody tr td{padding:16px 8px;border-bottom:1px solid rgba(0,0,0,.12)}table.simple tbody tr td:first-child{padding-left:24px}table.simple tbody tr td:last-child{padding-right:24px}table.simple tbody tr:last-child td{border-bottom:none}table.simple.clickable tbody tr{cursor:pointer}table.simple.clickable tbody tr:hover{background:rgba(0,0,0,.03)}html{font-size:62.5%;font-family:Roboto,"Helvetica Neue",Arial,sans-serif;line-height:1.4;letter-spacing:-.1px}body{font-size:1.3rem}body,html{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}form{font-size:1.6rem}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-weight:400}.h1,h1{font-size:2.4rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.6rem}.h4,h4{font-size:1.4rem}.h5,h5{font-size:1.3rem}.h6,h6{font-size:1.2rem}a{text-decoration:none}a:active,a:hover{text-decoration:underline}abbr{cursor:help;border-bottom:1px dotted rgba(0,0,0,.54)}blockquote{border-left:3px solid rgba(0,0,0,.12);font-style:italic;margin:1em 0;padding-left:16px}blockquote footer{font-style:normal}blockquote footer:before{content:'\2014 \00A0'}blockquote.reverse{border-left:none;border-right:3px solid rgba(0,0,0,.12);text-align:right;padding-left:0;padding-right:16px}blockquote.reverse footer:before{content:''}blockquote.reverse footer:after{content:'\2014 \00A0'}code{font-family:Monaco,Menlo,Consolas,"Ubuntu Mono",monospace}code:not(.highlight){background:rgba(0,0,0,.065);color:#106cc8;margin:0 1px;padding:2px 3px;border-radius:2px}dl dt{font-weight:700}dl dd{margin:4px 0 16px 0}mark{background:#f7f49a}pre{line-height:1.6;margin:8px 16px;white-space:pre-wrap}small{font-size:80%}table thead tr th{text-align:left}.text-italic{font-style:italic}.text-semibold{font-weight:600}.text-bold,strong{font-weight:700}.text-strike{text-decoration:line-through}.text-super{vertical-align:super}.text-sub{vertical-align:sub}.text-capitalize{text-transform:capitalize}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-weight-100{font-weight:100}.font-weight-200{font-weight:200}.font-weight-300{font-weight:300}.font-weight-400{font-weight:400}.font-weight-500{font-weight:500}.font-weight-600{font-weight:600}.font-weight-700{font-weight:700}.font-weight-800{font-weight:800}.font-weight-900{font-weight:900}.font-size-2{font-size:2px}.font-size-4{font-size:4px}.font-size-6{font-size:6px}.font-size-8{font-size:8px}.font-size-10{font-size:10px}.font-size-12{font-size:12px}.font-size-14{font-size:14px}.font-size-16{font-size:16px}.font-size-18{font-size:18px}.font-size-20{font-size:20px}.font-size-22{font-size:22px}.font-size-24{font-size:24px}.font-size-26{font-size:26px}.font-size-28{font-size:28px}.font-size-30{font-size:30px}.font-size-32{font-size:32px}.font-size-34{font-size:34px}.font-size-36{font-size:36px}.font-size-38{font-size:38px}.font-size-40{font-size:40px}.font-size-42{font-size:42px}.font-size-44{font-size:44px}.font-size-46{font-size:46px}.font-size-48{font-size:48px}.font-size-50{font-size:50px}.font-size-52{font-size:52px}.font-size-54{font-size:54px}.font-size-56{font-size:56px}.font-size-58{font-size:58px}.font-size-60{font-size:60px}.font-size-62{font-size:62px}.font-size-64{font-size:64px}.font-size-66{font-size:66px}.font-size-68{font-size:68px}.font-size-70{font-size:70px}.font-size-72{font-size:72px}.font-size-74{font-size:74px}.font-size-76{font-size:76px}.font-size-78{font-size:78px}.font-size-80{font-size:80px}.font-size-82{font-size:82px}.font-size-84{font-size:84px}.font-size-86{font-size:86px}.font-size-88{font-size:88px}.font-size-90{font-size:90px}.font-size-92{font-size:92px}.font-size-94{font-size:94px}.font-size-96{font-size:96px}.font-size-98{font-size:98px}.font-size-100{font-size:100px}.font-size-102{font-size:102px}.font-size-104{font-size:104px}.font-size-106{font-size:106px}.font-size-108{font-size:108px}.font-size-110{font-size:110px}.font-size-112{font-size:112px}.font-size-114{font-size:114px}.font-size-116{font-size:116px}.font-size-118{font-size:118px}.font-size-120{font-size:120px}.line-height-2{line-height:2px}.line-height-4{line-height:4px}.line-height-6{line-height:6px}.line-height-8{line-height:8px}.line-height-10{line-height:10px}.line-height-12{line-height:12px}.line-height-14{line-height:14px}.line-height-16{line-height:16px}.line-height-18{line-height:18px}.line-height-20{line-height:20px}.line-height-22{line-height:22px}.line-height-24{line-height:24px}.line-height-26{line-height:26px}.line-height-28{line-height:28px}.line-height-30{line-height:30px}.line-height-32{line-height:32px}.line-height-34{line-height:34px}.line-height-36{line-height:36px}.line-height-38{line-height:38px}.line-height-40{line-height:40px}.line-height-42{line-height:42px}.line-height-44{line-height:44px}.line-height-46{line-height:46px}.line-height-48{line-height:48px}.line-height-50{line-height:50px}.line-height-52{line-height:52px}.line-height-54{line-height:54px}.line-height-56{line-height:56px}.line-height-58{line-height:58px}.line-height-60{line-height:60px}.line-height-62{line-height:62px}.line-height-64{line-height:64px}.line-height-66{line-height:66px}.line-height-68{line-height:68px}.line-height-70{line-height:70px}.line-height-72{line-height:72px}.line-height-74{line-height:74px}.line-height-76{line-height:76px}.line-height-78{line-height:78px}.line-height-80{line-height:80px}.line-height-82{line-height:82px}.line-height-84{line-height:84px}.line-height-86{line-height:86px}.line-height-88{line-height:88px}.line-height-90{line-height:90px}.line-height-92{line-height:92px}.line-height-94{line-height:94px}.line-height-96{line-height:96px}.line-height-98{line-height:98px}.line-height-100{line-height:100px}.line-height-102{line-height:102px}.line-height-104{line-height:104px}.line-height-106{line-height:106px}.line-height-108{line-height:108px}.line-height-110{line-height:110px}.line-height-112{line-height:112px}.line-height-114{line-height:114px}.line-height-116{line-height:116px}.line-height-118{line-height:118px}.line-height-120{line-height:120px}.text-boxed,.text-boxed-light{border-radius:2px;padding:4px 8px;margin:0 8px;font-size:11px;font-weight:500;color:rgba(0,0,0,.54);background-color:rgba(0,0,0,.12);white-space:nowrap}.text-boxed-light{background-color:rgba(255,255,255,.7)}.text-truncate{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-nowrap{white-space:nowrap}.angular-google-map-container{height:400px}.moment-picker .moment-picker-container{width:296px;border:none;border-radius:2px;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);margin-left:0;padding:8px}.moment-picker .moment-picker-container td,.moment-picker .moment-picker-container th{min-width:0;width:40px;height:40px;padding:8px;text-shadow:none;border-radius:35px}.moment-picker .moment-picker-container td:hover,.moment-picker .moment-picker-container th:hover{background:#f5f5f5;background-image:none}.moment-picker .moment-picker-container td.selected{background:#03a9f4;background-image:none}.moment-picker .moment-picker-container .header-view th{border-radius:0;white-space:nowrap;width:auto}.moment-picker .moment-picker-container .header-view th:first-child,.moment-picker .moment-picker-container .header-view th:last-child{width:20%}.c3{transition:all .3s ease}.c3 svg{font:12px RobotoDraft,Roboto,'Helvetica Neue',sans-serif}.c3 line,.c3 path{fill:none;stroke:#000}.c3 text{font-family:Roboto,"Helvetica Neue",Arial,sans-serif;user-select:none}.c3 .c3-bars path,.c3 .c3-event-rect,.c3 .c3-legend-item-tile,.c3 .c3-xgrid-focus,.c3 .c3-ygrid{shape-rendering:crispEdges}.c3 .c3-chart-line{transition:all .3s ease}.c3 .c3-line{stroke-width:1px}.c3.stroke-3 .c3-line{stroke-width:3px}.c3.stroke-2 .c3-line{stroke-width:2px}.c3 .c3-circle{transition:all .3s ease;stroke:#fff;stroke-width:2}.c3 .c3-circle._expanded_{stroke-width:3;stroke:#fff}.c3 .c3-chart-arc path{stroke:#fff}.c3 .c3-chart-arc text{fill:#fff;font-size:13px}.c3 .c3-grid line{stroke:rgba(0,0,0,.04);stroke-width:1px;stroke-dasharray:0}.c3 .c3-grid text{fill:#aaa}.c3 .c3-axis .tick{stroke-width:0}.c3 .c3-axis text{fill:rgba(0,0,0,.33)}.c3 .c3-axis line,.c3 .c3-axis path{stroke:rgba(0,0,0,.04)}.c3 .c3-xgrid,.c3 .c3-ygrid{stroke-dasharray:0 0}.c3 .c3-text.c3-empty{fill:grey;font-size:2em}.c3 .c3-bar{stroke-width:0}.c3 .c3-bar._expanded_{fill-opacity:.75}.c3 .c3-target.c3-focused{opacity:1}.c3 .c3-target.c3-focused .c3-target.c3-focused path.c3-step,.c3 .c3-target.c3-focused path.c3-line{stroke-width:3px;transition:all .3s ease}.c3 .c3-target.c3-defocused{opacity:.3!important}.c3 .c3-region{fill:#4682b4;fill-opacity:.1}.c3 .c3-brush .extent{fill-opacity:.1}.c3 .c3-legend-item{font-size:12px}.c3 .c3-legend-item-hidden{opacity:.15}.c3 .c3-legend-background{opacity:.75;fill:#fff;stroke:#d3d3d3;stroke-width:1}.c3 .c3-tooltip-container{z-index:10}.c3 .c3-tooltip{border-collapse:collapse;border-spacing:0;background-color:#fff;empty-cells:show;box-shadow:0 2px 4px -1px rgba(0,0,0,.14),0 4px 5px 0 rgba(0,0,0,.098),0 1px 10px 0 rgba(0,0,0,.084);opacity:1;border-radius:2px;overflow:hidden;padding:4px 0}.c3 .c3-tooltip tr{border:none}.c3 .c3-tooltip th{background-color:transparent;font-size:14px;font-weight:400;padding:8px 12px;text-align:left;color:rgba(0,0,0,.54)}.c3 .c3-tooltip td{font-size:13px;padding:4px 12px!important;background-color:#fff;border-left:none;color:rgba(0,0,0,.84)}.c3 .c3-tooltip td>span{display:inline-block;width:10px;height:10px;margin-right:6px}.c3 .c3-tooltip td.value{font-size:14px!important;text-align:right;color:rgba(0,0,0,.84)}.c3 .c3-area{stroke-width:0;opacity:.2}.c3 .c3-chart-arcs-title{dominant-baseline:middle;font-size:1.3em}.c3 .c3-chart-arcs .c3-chart-arcs-background{fill:#e0e0e0;stroke:none}.c3 .c3-chart-arcs .c3-chart-arcs-gauge-unit{fill:#000;font-size:16px}.c3 .c3-chart-arcs .c3-chart-arcs-gauge-max{fill:#777}.c3 .c3-chart-arcs .c3-chart-arcs-gauge-min{fill:#777}.c3 .c3-chart-arc .c3-gauge-value{fill:#000}.ct-label{font-size:13px}.ct-chart-donut .ct-label,.ct-chart-pie .ct-label{font-size:13px}.bar-legend,.chart-legend,.doughnut-legend,.line-legend,.pie-legend,.polararea-legend,.radar-legend{margin-top:15px}table.dataTable{width:100%;margin:0 auto;clear:both;border-spacing:0}table.dataTable thead tr{background:#fff}table.dataTable thead th{text-align:left;vertical-align:middle;border-bottom:1px solid rgba(0,0,0,.12);padding:16px 8px}table.dataTable thead th:first-child{padding-left:24px}table.dataTable thead th:last-child{border-right:none;padding-right:24px}table.dataTable thead th:active{outline:0}table.dataTable thead th.dt-head-left{text-align:left}table.dataTable thead th.dt-head-center{text-align:center}table.dataTable thead th.dt-head-right{text-align:right}table.dataTable thead th.dt-head-justify{text-align:justify}table.dataTable thead th.dt-head-nowrap{white-space:nowrap}table.dataTable thead th .table-header .column-title{display:block;font-weight:600;white-space:nowrap}table.dataTable thead th .table-header .selectize-control{margin-top:15px}table.dataTable thead th .table-header .selectize-control.single .selectize-input{padding:7px 10px}table.dataTable thead th .table-header .selectize-control.single .selectize-input:after{right:10px;border-width:5px 4px 0 4px;border-color:rgba(0,0,0,.12) transparent transparent transparent}table.dataTable thead th .table-header .column-search-input{display:inline-block;margin-top:15px;width:100%;height:33px}table.dataTable thead td{padding:15px;vertical-align:middle}table.dataTable thead td:active{outline:0}table.dataTable thead td.dt-head-left{text-align:left}table.dataTable thead td.dt-head-center{text-align:center}table.dataTable thead td.dt-head-right{text-align:right}table.dataTable thead td.dt-head-justify{text-align:justify}table.dataTable thead td.dt-head-nowrap{white-space:nowrap}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc{background:0 0}table.dataTable thead .sorting .table-header .column-title,table.dataTable thead .sorting_asc .table-header .column-title,table.dataTable thead .sorting_desc .table-header .column-title{cursor:pointer}table.dataTable thead .sorting .table-header .column-title:after,table.dataTable thead .sorting_asc .table-header .column-title:after,table.dataTable thead .sorting_desc .table-header .column-title:after{position:relative;font-family:icomoon;font-weight:400;margin-left:10px;top:2px;font-size:16px;color:rgba(0,0,0,.54)}table.dataTable thead .sorting .table-header .column-title:after{content:'\eaa8'}table.dataTable thead .sorting_asc .table-header .column-title:after{content:'\e718'}table.dataTable thead .sorting_desc .table-header .column-title:after{content:'\e715'}table.dataTable tfoot th{font-weight:600;text-align:left;padding:10px 18px 6px 18px;border-top:1px solid #111}table.dataTable tfoot th.dt-head-left{text-align:left}table.dataTable tfoot th.dt-head-center{text-align:center}table.dataTable tfoot th.dt-head-right{text-align:right}table.dataTable tfoot th.dt-head-justify{text-align:justify}table.dataTable tfoot th.dt-head-nowrap{white-space:nowrap}table.dataTable tfoot td{padding:10px 18px 6px 18px;border-top:1px solid #111}table.dataTable tfoot td.dt-head-left{text-align:left}table.dataTable tfoot td.dt-head-center{text-align:center}table.dataTable tfoot td.dt-head-right{text-align:right}table.dataTable tfoot td.dt-head-justify{text-align:justify}table.dataTable tfoot td.dt-head-nowrap{white-space:nowrap}table.dataTable tbody tr{background-color:#fff}table.dataTable tbody tr.selected{background-color:#b0bed9}table.dataTable tbody tr.details-open td.detail-column i{background:#fff}table.dataTable tbody tr.details-row.odd tr{background:#fff}table.dataTable tbody tr.details-row>td{padding:0}table.dataTable tbody th{padding:14px 15px;vertical-align:middle}table.dataTable tbody th.dt-body-left{text-align:left}table.dataTable tbody th.dt-body-center{text-align:center}table.dataTable tbody th.dt-body-right{text-align:right}table.dataTable tbody th.dt-body-justify{text-align:justify}table.dataTable tbody th.dt-body-nowrap{white-space:nowrap}table.dataTable tbody td{padding:16px 8px;vertical-align:middle}table.dataTable tbody td:first-child{padding-left:24px}table.dataTable tbody td:last-child{padding-right:24px}table.dataTable tbody td.dt-body-left{text-align:left}table.dataTable tbody td.dt-body-center{text-align:center}table.dataTable tbody td.dt-body-right{text-align:right}table.dataTable tbody td.dt-body-justify{text-align:justify}table.dataTable tbody td.dt-body-nowrap{white-space:nowrap}table.dataTable th.dt-left{text-align:left}table.dataTable th.dt-center{text-align:center}table.dataTable th.dt-right{text-align:right}table.dataTable th.dt-justify{text-align:justify}table.dataTable th.dt-nowrap{white-space:nowrap}table.dataTable td.dt-left{text-align:left}table.dataTable td.dt-center{text-align:center}table.dataTable td.dataTables_empty{height:51px;text-align:center}table.dataTable td.dt-right{text-align:right}table.dataTable td.dt-justify{text-align:justify}table.dataTable td.dt-nowrap{white-space:nowrap}table.dataTable.row-border thead{border-bottom:1px solid rgba(0,0,0,.12)}table.dataTable.row-border tbody tr:first-child th{border-top:none}table.dataTable.row-border tbody tr:first-child td{border-top:none}table.dataTable.row-border tbody tr:last-child td{border-bottom:1px solid rgba(0,0,0,.12)}table.dataTable.row-border tbody th{border-top:1px solid rgba(0,0,0,.12)}table.dataTable.row-border tbody td{border-top:1px solid rgba(0,0,0,.12)}table.dataTable.cell-border tbody tr:first-child th{border-top:none}table.dataTable.cell-border tbody tr:first-child td{border-top:none}table.dataTable.cell-border tbody th{border-top:1px solid rgba(0,0,0,.12);border-right:1px solid rgba(0,0,0,.12)}table.dataTable.cell-border tbody th:last-child{border-right:none}table.dataTable.cell-border tbody td{border-top:1px solid rgba(0,0,0,.12);border-right:1px solid rgba(0,0,0,.12)}table.dataTable.cell-border tbody td:last-child{border-right:none}table.dataTable.stripe tbody tr.odd{background-color:#fff}table.dataTable.stripe tbody tr.odd.selected{background-color:#abb9d3}table.dataTable.hover tbody tr:hover{background-color:#f5f5f5}table.dataTable.hover tbody tr:hover.selected{background-color:#a9b7d1}table.dataTable.hover tbody tr.odd:hover{background-color:#f5f5f5}table.dataTable.hover tbody tr.odd:hover.selected{background-color:#a9b7d1}table.dataTable.hover tbody tr.even:hover{background-color:#f5f5f5}table.dataTable.hover tbody tr.even:hover.selected{background-color:#a9b7d1}table.dataTable.order-column tbody tr>.sorting_1{background-color:#f9f9f9}table.dataTable.order-column tbody tr>.sorting_2{background-color:#f9f9f9}table.dataTable.order-column tbody tr>.sorting_3{background-color:#f9f9f9}table.dataTable.order-column tbody tr.selected>.sorting_1{background-color:#acbad4}table.dataTable.order-column tbody tr.selected>.sorting_2{background-color:#acbad4}table.dataTable.order-column tbody tr.selected>.sorting_3{background-color:#acbad4}table.dataTable.order-column.stripe tbody tr.odd>.sorting_1{background-color:#f1f1f1}table.dataTable.order-column.stripe tbody tr.odd>.sorting_2{background-color:#f3f3f3}table.dataTable.order-column.stripe tbody tr.odd>.sorting_3{background-color:#f5f5f5}table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_1{background-color:#a6b3cd}table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_2{background-color:#a7b5ce}table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_3{background-color:#a9b6d0}table.dataTable.order-column.stripe tbody tr.even>.sorting_1{background-color:#f9f9f9}table.dataTable.order-column.stripe tbody tr.even>.sorting_2{background-color:#fbfbfb}table.dataTable.order-column.stripe tbody tr.even>.sorting_3{background-color:#fdfdfd}table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_1{background-color:#acbad4}table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_2{background-color:#adbbd6}table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.order-column.hover tbody tr:hover>.sorting_1{background-color:#eaeaea}table.dataTable.order-column.hover tbody tr:hover>.sorting_2{background-color:#ebebeb}table.dataTable.order-column.hover tbody tr:hover>.sorting_3{background-color:#eee}table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{background-color:#a1aec7}table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{background-color:#a2afc8}table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{background-color:#a4b2cb}table.dataTable.order-column.hover tbody tr.odd:hover>.sorting_1{background-color:#eaeaea}table.dataTable.order-column.hover tbody tr.odd:hover>.sorting_2{background-color:#ebebeb}table.dataTable.order-column.hover tbody tr.odd:hover>.sorting_3{background-color:#eee}table.dataTable.order-column.hover tbody tr.odd:hover.selected>.sorting_1{background-color:#a1aec7}table.dataTable.order-column.hover tbody tr.odd:hover.selected>.sorting_2{background-color:#a2afc8}table.dataTable.order-column.hover tbody tr.odd:hover.selected>.sorting_3{background-color:#a4b2cb}table.dataTable.order-column.hover tbody tr.even:hover>.sorting_1{background-color:#eaeaea}table.dataTable.order-column.hover tbody tr.even:hover>.sorting_2{background-color:#ebebeb}table.dataTable.order-column.hover tbody tr.even:hover>.sorting_3{background-color:#eee}table.dataTable.order-column.hover tbody tr.even:hover.selected>.sorting_1{background-color:#a1aec7}table.dataTable.order-column.hover tbody tr.even:hover.selected>.sorting_2{background-color:#a2afc8}table.dataTable.order-column.hover tbody tr.even:hover.selected>.sorting_3{background-color:#a4b2cb}table.dataTable.no-footer{border-bottom:none}table.dataTable.nowrap th{white-space:nowrap}table.dataTable.nowrap td{white-space:nowrap}table.dataTable.compact thead th{padding:5px 9px}table.dataTable.compact thead td{padding:5px 9px}table.dataTable.compact tfoot th{padding:5px 9px 3px 9px}table.dataTable.compact tfoot td{padding:5px 9px 3px 9px}table.dataTable.compact tbody th{padding:4px 5px}table.dataTable.compact tbody td{padding:4px 5px}.dataTables_wrapper{display:flex;flex:1 0 auto;flex-direction:column;min-height:0}.dataTables_wrapper .top{padding:16px 24px}.dataTables_wrapper .bottom{display:flex;min-height:64px;justify-content:space-between;padding:16px 8px;border-top:1px solid rgba(0,0,0,.12)}.dataTables_wrapper .bottom .left{display:flex;flex:0 0 50%;max-width:50%;align-self:center;padding:0 8px}.dataTables_wrapper .bottom .left .length{display:block}.dataTables_wrapper .bottom .right{display:flex;flex:0 0 50%;max-width:50%;align-self:center;justify-content:flex-end;padding:0 8px}.dataTables_wrapper .bottom .right .info{display:block;align-self:center}.dataTables_wrapper .bottom .right .info .dataTables_info{padding:0 8px;font-weight:600}.dataTables_wrapper .bottom .right .pagination{display:block;align-self:center;white-space:nowrap}.dataTables_wrapper .bottom .right .pagination .dataTables_paginate{padding:0;margin:0!important}.dataTables_wrapper .dataTables_filter{float:right}.dataTables_wrapper .dataTables_filter input{margin-left:.5em;border:1px solid rgba(0,0,0,.12);height:24px;padding:4px 8px}.dataTables_wrapper .dataTables_paginate .paginate_button{background:#fff;color:rgba(0,0,0,.87);border:1px solid rgba(0,0,0,.12);padding:9px 12px;border-radius:2px;cursor:pointer;user-select:none;margin:0 2px}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{box-shadow:inset 999em 0 0 0 rgba(0,0,0,.05);color:rgba(0,0,0,.87)!important;border:1px solid rgba(0,0,0,.12)!important;background:0 0}.dataTables_wrapper .dataTables_paginate .paginate_button:active{box-shadow:inset 999em 0 0 0 rgba(0,0,0,.08),inset 0 1px 3px 0 rgba(0,0,0,.1),0 1px 0 0 rgba(255,255,255,.35)}.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover{color:rgba(0,0,0,.54)!important;border-color:rgba(0,0,0,.12)!important;background:#fff!important;box-shadow:none!important;cursor:default}.dataTables_wrapper .dataTables_processing{position:absolute;top:50%;left:50%;width:100%;height:40px;margin-left:-50%;margin-top:-25px;padding-top:20px;text-align:center;font-size:1.2em;background-color:#fff;background:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(255,255,255,0)),color-stop(25%,rgba(255,255,255,.9)),color-stop(75%,rgba(255,255,255,.9)),color-stop(100%,rgba(255,255,255,0)));background:-webkit-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:-moz-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:-o-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%)}.dataTables_wrapper .dataTables_scroll{display:flex;flex:1 1 0;flex-direction:column;clear:both;min-height:0}.dataTables_wrapper .dataTables_scroll table.dataTable{box-shadow:none}.dataTables_wrapper .dataTables_scroll table.dataTable.row-border thead{border:none}.dataTables_wrapper .dataTables_scroll .dataTables_scrollHead{display:flex;min-height:56px;box-shadow:0 0 0 1px rgba(0,0,0,.095),0 1px 1px 0 rgba(0,0,0,.1),0 2px 1px 0 rgba(0,0,0,.05);background:#fff;overflow:visible!important}.dataTables_wrapper .dataTables_scroll .dataTables_scrollHead tr th:last-child .table-header .column-title{position:relative;left:7px}.dataTables_wrapper .dataTables_scroll .dataTables_scrollBody{display:flex;overflow-x:hidden!important;overflow-y:scroll!important;-webkit-overflow-scrolling:touch}.dataTables_wrapper .dataTables_scroll .dataTables_scrollBody th>.dataTables_sizing{height:0;overflow:hidden;margin:0!important;padding:0!important}.dataTables_wrapper .dataTables_scroll .dataTables_scrollBody td>.dataTables_sizing{height:0;overflow:hidden;margin:0!important;padding:0!important}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:none}.dataTables_wrapper.no-footer .dataTables_scrollBody table,.dataTables_wrapper.no-footer .dataTables_scrollHead table{border-bottom:none}.dataTables_wrapper:after{visibility:hidden;display:block;content:"";clear:both;height:0}table.dataTable .show-details{padding:5px 10px;font-weight:700}table.dataTable .action-buttons{display:flex;justify-content:center}table.dataTable .action-buttons .button{padding:8px}.fullpage-datatable .dataTables_wrapper{height:100%;max-height:100%}.explorer-11 .fullpage-datatable .dataTables_scroll{flex:1}table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr>td:first-child,table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr>th:first-child{padding-left:40px}table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr>td:first-child:before,table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr>th:first-child:before{content:'+';width:15px;height:15px;line-height:15px;top:50%;margin-top:-7px;left:8px;color:rgba(0,0,0,.54);background:0 0;border:none;box-shadow:0 0 0 2px rgba(0,0,0,.54);font-weight:700}table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before,table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before{background:0 0}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul{display:block}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul li{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;border-bottom:1px solid rgba(0,0,0,.12);padding:8px 0}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul li:last-child{border-bottom:none;padding-bottom:0}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul li .dtr-title{margin-right:8px}[hljs],hljs{display:block;overflow-x:auto;color:#333;background:#f8f8f8;-webkit-text-size-adjust:none}.diff .hljs-header,.hljs-comment{color:#998;font-style:italic}.css .rule .hljs-keyword,.hljs-keyword,.hljs-request,.hljs-status,.hljs-subst,.hljs-winutils,.nginx .hljs-title{color:#333;font-weight:700}.hljs-hexcolor,.hljs-number,.ruby .hljs-constant{color:teal}.hljs-doctag,.hljs-string,.hljs-tag .hljs-value,.tex .hljs-formula{color:#d14}.hljs-id,.hljs-title,.scss .hljs-preprocessor{color:#900;font-weight:700}.hljs-list .hljs-keyword,.hljs-subst{font-weight:400}.hljs-class .hljs-title,.hljs-type,.tex .hljs-command,.vhdl .hljs-literal{color:#458;font-weight:700}.django .hljs-tag .hljs-keyword,.hljs-rule .hljs-property,.hljs-tag,.hljs-tag .hljs-title{color:navy;font-weight:400}.hljs-attribute,.hljs-name,.hljs-variable,.lisp .hljs-body{color:teal}.hljs-regexp{color:#009926}.clojure .hljs-keyword,.hljs-prompt,.hljs-symbol,.lisp .hljs-keyword,.ruby .hljs-symbol .hljs-string,.scheme .hljs-keyword,.tex .hljs-special{color:#990073}.hljs-built_in{color:#0086b3}.hljs-cdata,.hljs-doctype,.hljs-pi,.hljs-pragma,.hljs-preprocessor,.hljs-shebang{color:#999;font-weight:700}.hljs-deletion{background:#fdd}.hljs-addition{background:#dfd}.diff .hljs-change{background:#0086b3}.hljs-chunk{color:#aaa}nvd3{display:block;width:100%;height:100%}nvd3.remove-x-lines .nv-x .tick line{display:none}nvd3.remove-y-lines .nv-y .tick line{display:none}nvd3.remove-line-stroke .nv-groups path.nv-line{stroke-width:0!important}nvd3.remove-opacity .nv-groups .nv-group{fill-opacity:1!important}nvd3.show-line-points .nv-line .nv-scatter .nv-groups .nv-point{fill-opacity:1!important;stroke-opacity:1!important}.nvd3 text{font-family:Roboto,"Helvetica Neue",Arial,sans-serif}.nvd3 line.nv-guideline{stroke:rgba(0,0,0,.54)}.nvd3 .nv-groups .nv-point.hover{stroke-width:3px!important;fill-opacity:1!important;stroke-opacity:1!important}.nvtooltip{background:0 0;color:#fff;padding:0;border:none}.nvtooltip.gravity-n:after{display:block;position:absolute;content:'';width:0;height:0;left:50%;bottom:100%;margin-left:-5px;border:5px solid transparent;border-bottom-color:rgba(0,0,0,.87)}.nvtooltip.gravity-s:after{display:block;position:absolute;content:'';width:0;height:0;top:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-top-color:rgba(0,0,0,.87)}.nvtooltip.gravity-e:after{display:block;position:absolute;content:'';width:0;height:0;top:50%;right:0;margin-top:-6px;margin-right:-11px;border:6px solid transparent;border-left-color:rgba(0,0,0,.87)}.nvtooltip.gravity-w:after{display:block;position:absolute;content:'';width:0;height:0;top:50%;margin-top:-6px;margin-left:-11px;border:6px solid transparent;border-right-color:rgba(0,0,0,.87)}.nvtooltip table{background:rgba(0,0,0,.87);padding:8px 12px;margin:0;border-radius:2px}.nvtooltip table tbody tr td.legend-color-guide div{border:none}.nvtooltip table tbody tr td:last-child{padding-right:0}.ps-container:hover .ps-in-scrolling{pointer-events:auto}.ps-container .ps-in-scrolling{pointer-events:auto}.ps-container>.ps-scrollbar-x-rail{background:0 0!important;margin:4px 0;height:4px;z-index:49}.ps-container>.ps-scrollbar-x-rail>.ps-scrollbar-x{height:4px}.ps-container>.ps-scrollbar-y-rail{background:0 0!important;margin:4px 0;width:4px;z-index:49}.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{width:4px}.ta-root{display:block}.ta-root .ta-scroll-window.form-control{border:1px solid rgba(0,0,0,.12)}.ta-root.focussed>.ta-scroll-window.form-control{outline:0 solid transparent;border:1px solid rgba(0,0,0,.12);box-shadow:none}.ta-root textarea.ta-editor.ta-html{resize:vertical;width:100%!important;border:1px solid rgba(0,0,0,.12);padding:16px}.ta-root .ta-toolbar{border:1px solid rgba(0,0,0,.12);border-bottom:none;background:#f5f5f5}.ta-root .ta-toolbar .ta-group{display:flex;align-items:center;align-content:center;flex-wrap:wrap}.ta-root .ta-toolbar .ta-group #toolbarCC,.ta-root .ta-toolbar .ta-group #toolbarWC{display:inline-block!important;line-height:24px}.ta-root .ta-toolbar .ta-group .md-button{width:40px;min-width:40px;line-height:14px;height:36px;min-height:36px;padding:6px;margin:4px 0}.ta-root .ta-toolbar .ta-group .md-button i{font-size:20px;width:20px;height:20px;line-height:20px}.ng-cloak,.x-ng-cloak,[data-ng-cloak],[ng-cloak],[ng\:cloak],[x-ng-cloak]{display:none!important}.no-padding{padding:0!important}.no-margin{margin:0!important}.no-radius{border-radius:0}.divider-vertical{background:rgba(0,0,0,.12);height:24px;width:1px;margin:0 8px}.hidden{visibility:hidden;opacity:0}[fill-width]{min-width:100%}[fill-height]{min-height:100%}.full-height{height:100%!important}a img{display:block;outline:0}img{max-width:100%;height:auto;vertical-align:top;border:none}.scrollable{display:block;position:relative;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.scrollable.only-x{overflow-x:auto;overflow-y:hidden}.scrollable.only-y{overflow-x:hidden;overflow-y:auto}.flex-scrollable{position:relative;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.flex-scrollable.only-x{overflow-x:auto;overflow-y:hidden}.flex-scrollable.only-y{overflow-x:hidden;overflow-y:auto}.background-image-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}.align-vertical:before{display:inline-block;height:100%;content:'';vertical-align:middle}.align-vertical .align-vertical-bottom,.align-vertical .align-vertical-middle,.align-vertical .align-vertical-top{display:inline-block}.align-vertical .align-vertical-top{vertical-align:top}.align-vertical .align-vertical-middle{vertical-align:middle}.align-vertical .align-vertical-bottom{vertical-align:bottom}.p-0,.padding-0{padding:0}.padding-top-0,.pt-0{padding-top:0}.padding-right-0,.pr-0{padding-right:0}.padding-bottom-0,.pb-0{padding-bottom:0}.padding-left-0,.pl-0{padding-left:0}.padding-horizontal-0,.ph-0{padding-left:0;padding-right:0}.padding-vertical-0,.pv-0{padding-top:0;padding-bottom:0}.p-5,.padding-5{padding:5px}.padding-top-5,.pt-5{padding-top:5px}.padding-right-5,.pr-5{padding-right:5px}.padding-bottom-5,.pb-5{padding-bottom:5px}.padding-left-5,.pl-5{padding-left:5px}.padding-horizontal-5,.ph-5{padding-left:5px;padding-right:5px}.padding-vertical-5,.pv-5{padding-top:5px;padding-bottom:5px}.p-10,.padding-10{padding:10px}.padding-top-10,.pt-10{padding-top:10px}.padding-right-10,.pr-10{padding-right:10px}.padding-bottom-10,.pb-10{padding-bottom:10px}.padding-left-10,.pl-10{padding-left:10px}.padding-horizontal-10,.ph-10{padding-left:10px;padding-right:10px}.padding-vertical-10,.pv-10{padding-top:10px;padding-bottom:10px}.p-15,.padding-15{padding:15px}.padding-top-15,.pt-15{padding-top:15px}.padding-right-15,.pr-15{padding-right:15px}.padding-bottom-15,.pb-15{padding-bottom:15px}.padding-left-15,.pl-15{padding-left:15px}.padding-horizontal-15,.ph-15{padding-left:15px;padding-right:15px}.padding-vertical-15,.pv-15{padding-top:15px;padding-bottom:15px}.p-20,.padding-20{padding:20px}.padding-top-20,.pt-20{padding-top:20px}.padding-right-20,.pr-20{padding-right:20px}.padding-bottom-20,.pb-20{padding-bottom:20px}.padding-left-20,.pl-20{padding-left:20px}.padding-horizontal-20,.ph-20{padding-left:20px;padding-right:20px}.padding-vertical-20,.pv-20{padding-top:20px;padding-bottom:20px}.p-25,.padding-25{padding:25px}.padding-top-25,.pt-25{padding-top:25px}.padding-right-25,.pr-25{padding-right:25px}.padding-bottom-25,.pb-25{padding-bottom:25px}.padding-left-25,.pl-25{padding-left:25px}.padding-horizontal-25,.ph-25{padding-left:25px;padding-right:25px}.padding-vertical-25,.pv-25{padding-top:25px;padding-bottom:25px}.p-30,.padding-30{padding:30px}.padding-top-30,.pt-30{padding-top:30px}.padding-right-30,.pr-30{padding-right:30px}.padding-bottom-30,.pb-30{padding-bottom:30px}.padding-left-30,.pl-30{padding-left:30px}.padding-horizontal-30,.ph-30{padding-left:30px;padding-right:30px}.padding-vertical-30,.pv-30{padding-top:30px;padding-bottom:30px}.p-35,.padding-35{padding:35px}.padding-top-35,.pt-35{padding-top:35px}.padding-right-35,.pr-35{padding-right:35px}.padding-bottom-35,.pb-35{padding-bottom:35px}.padding-left-35,.pl-35{padding-left:35px}.padding-horizontal-35,.ph-35{padding-left:35px;padding-right:35px}.padding-vertical-35,.pv-35{padding-top:35px;padding-bottom:35px}.p-40,.padding-40{padding:40px}.padding-top-40,.pt-40{padding-top:40px}.padding-right-40,.pr-40{padding-right:40px}.padding-bottom-40,.pb-40{padding-bottom:40px}.padding-left-40,.pl-40{padding-left:40px}.padding-horizontal-40,.ph-40{padding-left:40px;padding-right:40px}.padding-vertical-40,.pv-40{padding-top:40px;padding-bottom:40px}.p-45,.padding-45{padding:45px}.padding-top-45,.pt-45{padding-top:45px}.padding-right-45,.pr-45{padding-right:45px}.padding-bottom-45,.pb-45{padding-bottom:45px}.padding-left-45,.pl-45{padding-left:45px}.padding-horizontal-45,.ph-45{padding-left:45px;padding-right:45px}.padding-vertical-45,.pv-45{padding-top:45px;padding-bottom:45px}.p-50,.padding-50{padding:50px}.padding-top-50,.pt-50{padding-top:50px}.padding-right-50,.pr-50{padding-right:50px}.padding-bottom-50,.pb-50{padding-bottom:50px}.padding-left-50,.pl-50{padding-left:50px}.padding-horizontal-50,.ph-50{padding-left:50px;padding-right:50px}.padding-vertical-50,.pv-50{padding-top:50px;padding-bottom:50px}.p-55,.padding-55{padding:55px}.padding-top-55,.pt-55{padding-top:55px}.padding-right-55,.pr-55{padding-right:55px}.padding-bottom-55,.pb-55{padding-bottom:55px}.padding-left-55,.pl-55{padding-left:55px}.padding-horizontal-55,.ph-55{padding-left:55px;padding-right:55px}.padding-vertical-55,.pv-55{padding-top:55px;padding-bottom:55px}.p-60,.padding-60{padding:60px}.padding-top-60,.pt-60{padding-top:60px}.padding-right-60,.pr-60{padding-right:60px}.padding-bottom-60,.pb-60{padding-bottom:60px}.padding-left-60,.pl-60{padding-left:60px}.padding-horizontal-60,.ph-60{padding-left:60px;padding-right:60px}.padding-vertical-60,.pv-60{padding-top:60px;padding-bottom:60px}.p-65,.padding-65{padding:65px}.padding-top-65,.pt-65{padding-top:65px}.padding-right-65,.pr-65{padding-right:65px}.padding-bottom-65,.pb-65{padding-bottom:65px}.padding-left-65,.pl-65{padding-left:65px}.padding-horizontal-65,.ph-65{padding-left:65px;padding-right:65px}.padding-vertical-65,.pv-65{padding-top:65px;padding-bottom:65px}.p-70,.padding-70{padding:70px}.padding-top-70,.pt-70{padding-top:70px}.padding-right-70,.pr-70{padding-right:70px}.padding-bottom-70,.pb-70{padding-bottom:70px}.padding-left-70,.pl-70{padding-left:70px}.padding-horizontal-70,.ph-70{padding-left:70px;padding-right:70px}.padding-vertical-70,.pv-70{padding-top:70px;padding-bottom:70px}.p-75,.padding-75{padding:75px}.padding-top-75,.pt-75{padding-top:75px}.padding-right-75,.pr-75{padding-right:75px}.padding-bottom-75,.pb-75{padding-bottom:75px}.padding-left-75,.pl-75{padding-left:75px}.padding-horizontal-75,.ph-75{padding-left:75px;padding-right:75px}.padding-vertical-75,.pv-75{padding-top:75px;padding-bottom:75px}.p-80,.padding-80{padding:80px}.padding-top-80,.pt-80{padding-top:80px}.padding-right-80,.pr-80{padding-right:80px}.padding-bottom-80,.pb-80{padding-bottom:80px}.padding-left-80,.pl-80{padding-left:80px}.padding-horizontal-80,.ph-80{padding-left:80px;padding-right:80px}.padding-vertical-80,.pv-80{padding-top:80px;padding-bottom:80px}.p-85,.padding-85{padding:85px}.padding-top-85,.pt-85{padding-top:85px}.padding-right-85,.pr-85{padding-right:85px}.padding-bottom-85,.pb-85{padding-bottom:85px}.padding-left-85,.pl-85{padding-left:85px}.padding-horizontal-85,.ph-85{padding-left:85px;padding-right:85px}.padding-vertical-85,.pv-85{padding-top:85px;padding-bottom:85px}.p-90,.padding-90{padding:90px}.padding-top-90,.pt-90{padding-top:90px}.padding-right-90,.pr-90{padding-right:90px}.padding-bottom-90,.pb-90{padding-bottom:90px}.padding-left-90,.pl-90{padding-left:90px}.padding-horizontal-90,.ph-90{padding-left:90px;padding-right:90px}.padding-vertical-90,.pv-90{padding-top:90px;padding-bottom:90px}.p-95,.padding-95{padding:95px}.padding-top-95,.pt-95{padding-top:95px}.padding-right-95,.pr-95{padding-right:95px}.padding-bottom-95,.pb-95{padding-bottom:95px}.padding-left-95,.pl-95{padding-left:95px}.padding-horizontal-95,.ph-95{padding-left:95px;padding-right:95px}.padding-vertical-95,.pv-95{padding-top:95px;padding-bottom:95px}.p-100,.padding-100{padding:100px}.padding-top-100,.pt-100{padding-top:100px}.padding-right-100,.pr-100{padding-right:100px}.padding-bottom-100,.pb-100{padding-bottom:100px}.padding-left-100,.pl-100{padding-left:100px}.padding-horizontal-100,.ph-100{padding-left:100px;padding-right:100px}.padding-vertical-100,.pv-100{padding-top:100px;padding-bottom:100px}.p-8,.padding-8{padding:8px}.padding-top-8,.pt-8{padding-top:8px}.padding-right-8,.pr-8{padding-right:8px}.padding-bottom-8,.pb-8{padding-bottom:8px}.padding-left-8,.pl-8{padding-left:8px}.padding-horizontal-8,.ph-8{padding-left:8px;padding-right:8px}.padding-vertical-8,.pv-8{padding-top:8px;padding-bottom:8px}.p-16,.padding-16{padding:16px}.padding-top-16,.pt-16{padding-top:16px}.padding-right-16,.pr-16{padding-right:16px}.padding-bottom-16,.pb-16{padding-bottom:16px}.padding-left-16,.pl-16{padding-left:16px}.padding-horizontal-16,.ph-16{padding-left:16px;padding-right:16px}.padding-vertical-16,.pv-16{padding-top:16px;padding-bottom:16px}.p-24,.padding-24{padding:24px}.padding-top-24,.pt-24{padding-top:24px}.padding-right-24,.pr-24{padding-right:24px}.padding-bottom-24,.pb-24{padding-bottom:24px}.padding-left-24,.pl-24{padding-left:24px}.padding-horizontal-24,.ph-24{padding-left:24px;padding-right:24px}.padding-vertical-24,.pv-24{padding-top:24px;padding-bottom:24px}.p-32,.padding-32{padding:32px}.padding-top-32,.pt-32{padding-top:32px}.padding-right-32,.pr-32{padding-right:32px}.padding-bottom-32,.pb-32{padding-bottom:32px}.padding-left-32,.pl-32{padding-left:32px}.padding-horizontal-32,.ph-32{padding-left:32px;padding-right:32px}.padding-vertical-32,.pv-32{padding-top:32px;padding-bottom:32px}.p-48,.padding-48{padding:48px}.padding-top-48,.pt-48{padding-top:48px}.padding-right-48,.pr-48{padding-right:48px}.padding-bottom-48,.pb-48{padding-bottom:48px}.padding-left-48,.pl-48{padding-left:48px}.padding-horizontal-48,.ph-48{padding-left:48px;padding-right:48px}.padding-vertical-48,.pv-48{padding-top:48px;padding-bottom:48px}.p-56,.padding-56{padding:56px}.padding-top-56,.pt-56{padding-top:56px}.padding-right-56,.pr-56{padding-right:56px}.padding-bottom-56,.pb-56{padding-bottom:56px}.padding-left-56,.pl-56{padding-left:56px}.padding-horizontal-56,.ph-56{padding-left:56px;padding-right:56px}.padding-vertical-56,.pv-56{padding-top:56px;padding-bottom:56px}.p-64,.padding-64{padding:64px}.padding-top-64,.pt-64{padding-top:64px}.padding-right-64,.pr-64{padding-right:64px}.padding-bottom-64,.pb-64{padding-bottom:64px}.padding-left-64,.pl-64{padding-left:64px}.padding-horizontal-64,.ph-64{padding-left:64px;padding-right:64px}.padding-vertical-64,.pv-64{padding-top:64px;padding-bottom:64px}.p-72,.padding-72{padding:72px}.padding-top-72,.pt-72{padding-top:72px}.padding-right-72,.pr-72{padding-right:72px}.padding-bottom-72,.pb-72{padding-bottom:72px}.padding-left-72,.pl-72{padding-left:72px}.padding-horizontal-72,.ph-72{padding-left:72px;padding-right:72px}.padding-vertical-72,.pv-72{padding-top:72px;padding-bottom:72px}.p-88,.padding-88{padding:88px}.padding-top-88,.pt-88{padding-top:88px}.padding-right-88,.pr-88{padding-right:88px}.padding-bottom-88,.pb-88{padding-bottom:88px}.padding-left-88,.pl-88{padding-left:88px}.padding-horizontal-88,.ph-88{padding-left:88px;padding-right:88px}.padding-vertical-88,.pv-88{padding-top:88px;padding-bottom:88px}.p-96,.padding-96{padding:96px}.padding-top-96,.pt-96{padding-top:96px}.padding-right-96,.pr-96{padding-right:96px}.padding-bottom-96,.pb-96{padding-bottom:96px}.padding-left-96,.pl-96{padding-left:96px}.padding-horizontal-96,.ph-96{padding-left:96px;padding-right:96px}.padding-vertical-96,.pv-96{padding-top:96px;padding-bottom:96px}.m-0,.margin-0{margin:0}.margin-top-0,.mt-0{margin-top:0}.margin-right-0,.mr-0{margin-right:0}.margin-bottom-0,.mb-0{margin-bottom:0}.margin-left-0,.ml-0{margin-left:0}.margin-horizontal-0,.mh-0{margin-left:0;margin-right:0}.margin-vertical-0,.mv-0{margin-top:0;margin-bottom:0}.m-5,.margin-5{margin:5px}.margin-top-5,.mt-5{margin-top:5px}.margin-right-5,.mr-5{margin-right:5px}.margin-bottom-5,.mb-5{margin-bottom:5px}.margin-left-5,.ml-5{margin-left:5px}.margin-horizontal-5,.mh-5{margin-left:5px;margin-right:5px}.margin-vertical-5,.mv-5{margin-top:5px;margin-bottom:5px}.m-10,.margin-10{margin:10px}.margin-top-10,.mt-10{margin-top:10px}.margin-right-10,.mr-10{margin-right:10px}.margin-bottom-10,.mb-10{margin-bottom:10px}.margin-left-10,.ml-10{margin-left:10px}.margin-horizontal-10,.mh-10{margin-left:10px;margin-right:10px}.margin-vertical-10,.mv-10{margin-top:10px;margin-bottom:10px}.m-15,.margin-15{margin:15px}.margin-top-15,.mt-15{margin-top:15px}.margin-right-15,.mr-15{margin-right:15px}.margin-bottom-15,.mb-15{margin-bottom:15px}.margin-left-15,.ml-15{margin-left:15px}.margin-horizontal-15,.mh-15{margin-left:15px;margin-right:15px}.margin-vertical-15,.mv-15{margin-top:15px;margin-bottom:15px}.m-20,.margin-20{margin:20px}.margin-top-20,.mt-20{margin-top:20px}.margin-right-20,.mr-20{margin-right:20px}.margin-bottom-20,.mb-20{margin-bottom:20px}.margin-left-20,.ml-20{margin-left:20px}.margin-horizontal-20,.mh-20{margin-left:20px;margin-right:20px}.margin-vertical-20,.mv-20{margin-top:20px;margin-bottom:20px}.m-25,.margin-25{margin:25px}.margin-top-25,.mt-25{margin-top:25px}.margin-right-25,.mr-25{margin-right:25px}.margin-bottom-25,.mb-25{margin-bottom:25px}.margin-left-25,.ml-25{margin-left:25px}.margin-horizontal-25,.mh-25{margin-left:25px;margin-right:25px}.margin-vertical-25,.mv-25{margin-top:25px;margin-bottom:25px}.m-30,.margin-30{margin:30px}.margin-top-30,.mt-30{margin-top:30px}.margin-right-30,.mr-30{margin-right:30px}.margin-bottom-30,.mb-30{margin-bottom:30px}.margin-left-30,.ml-30{margin-left:30px}.margin-horizontal-30,.mh-30{margin-left:30px;margin-right:30px}.margin-vertical-30,.mv-30{margin-top:30px;margin-bottom:30px}.m-35,.margin-35{margin:35px}.margin-top-35,.mt-35{margin-top:35px}.margin-right-35,.mr-35{margin-right:35px}.margin-bottom-35,.mb-35{margin-bottom:35px}.margin-left-35,.ml-35{margin-left:35px}.margin-horizontal-35,.mh-35{margin-left:35px;margin-right:35px}.margin-vertical-35,.mv-35{margin-top:35px;margin-bottom:35px}.m-40,.margin-40{margin:40px}.margin-top-40,.mt-40{margin-top:40px}.margin-right-40,.mr-40{margin-right:40px}.margin-bottom-40,.mb-40{margin-bottom:40px}.margin-left-40,.ml-40{margin-left:40px}.margin-horizontal-40,.mh-40{margin-left:40px;margin-right:40px}.margin-vertical-40,.mv-40{margin-top:40px;margin-bottom:40px}.m-45,.margin-45{margin:45px}.margin-top-45,.mt-45{margin-top:45px}.margin-right-45,.mr-45{margin-right:45px}.margin-bottom-45,.mb-45{margin-bottom:45px}.margin-left-45,.ml-45{margin-left:45px}.margin-horizontal-45,.mh-45{margin-left:45px;margin-right:45px}.margin-vertical-45,.mv-45{margin-top:45px;margin-bottom:45px}.m-50,.margin-50{margin:50px}.margin-top-50,.mt-50{margin-top:50px}.margin-right-50,.mr-50{margin-right:50px}.margin-bottom-50,.mb-50{margin-bottom:50px}.margin-left-50,.ml-50{margin-left:50px}.margin-horizontal-50,.mh-50{margin-left:50px;margin-right:50px}.margin-vertical-50,.mv-50{margin-top:50px;margin-bottom:50px}.m-55,.margin-55{margin:55px}.margin-top-55,.mt-55{margin-top:55px}.margin-right-55,.mr-55{margin-right:55px}.margin-bottom-55,.mb-55{margin-bottom:55px}.margin-left-55,.ml-55{margin-left:55px}.margin-horizontal-55,.mh-55{margin-left:55px;margin-right:55px}.margin-vertical-55,.mv-55{margin-top:55px;margin-bottom:55px}.m-60,.margin-60{margin:60px}.margin-top-60,.mt-60{margin-top:60px}.margin-right-60,.mr-60{margin-right:60px}.margin-bottom-60,.mb-60{margin-bottom:60px}.margin-left-60,.ml-60{margin-left:60px}.margin-horizontal-60,.mh-60{margin-left:60px;margin-right:60px}.margin-vertical-60,.mv-60{margin-top:60px;margin-bottom:60px}.m-65,.margin-65{margin:65px}.margin-top-65,.mt-65{margin-top:65px}.margin-right-65,.mr-65{margin-right:65px}.margin-bottom-65,.mb-65{margin-bottom:65px}.margin-left-65,.ml-65{margin-left:65px}.margin-horizontal-65,.mh-65{margin-left:65px;margin-right:65px}.margin-vertical-65,.mv-65{margin-top:65px;margin-bottom:65px}.m-70,.margin-70{margin:70px}.margin-top-70,.mt-70{margin-top:70px}.margin-right-70,.mr-70{margin-right:70px}.margin-bottom-70,.mb-70{margin-bottom:70px}.margin-left-70,.ml-70{margin-left:70px}.margin-horizontal-70,.mh-70{margin-left:70px;margin-right:70px}.margin-vertical-70,.mv-70{margin-top:70px;margin-bottom:70px}.m-75,.margin-75{margin:75px}.margin-top-75,.mt-75{margin-top:75px}.margin-right-75,.mr-75{margin-right:75px}.margin-bottom-75,.mb-75{margin-bottom:75px}.margin-left-75,.ml-75{margin-left:75px}.margin-horizontal-75,.mh-75{margin-left:75px;margin-right:75px}.margin-vertical-75,.mv-75{margin-top:75px;margin-bottom:75px}.m-80,.margin-80{margin:80px}.margin-top-80,.mt-80{margin-top:80px}.margin-right-80,.mr-80{margin-right:80px}.margin-bottom-80,.mb-80{margin-bottom:80px}.margin-left-80,.ml-80{margin-left:80px}.margin-horizontal-80,.mh-80{margin-left:80px;margin-right:80px}.margin-vertical-80,.mv-80{margin-top:80px;margin-bottom:80px}.m-85,.margin-85{margin:85px}.margin-top-85,.mt-85{margin-top:85px}.margin-right-85,.mr-85{margin-right:85px}.margin-bottom-85,.mb-85{margin-bottom:85px}.margin-left-85,.ml-85{margin-left:85px}.margin-horizontal-85,.mh-85{margin-left:85px;margin-right:85px}.margin-vertical-85,.mv-85{margin-top:85px;margin-bottom:85px}.m-90,.margin-90{margin:90px}.margin-top-90,.mt-90{margin-top:90px}.margin-right-90,.mr-90{margin-right:90px}.margin-bottom-90,.mb-90{margin-bottom:90px}.margin-left-90,.ml-90{margin-left:90px}.margin-horizontal-90,.mh-90{margin-left:90px;margin-right:90px}.margin-vertical-90,.mv-90{margin-top:90px;margin-bottom:90px}.m-95,.margin-95{margin:95px}.margin-top-95,.mt-95{margin-top:95px}.margin-right-95,.mr-95{margin-right:95px}.margin-bottom-95,.mb-95{margin-bottom:95px}.margin-left-95,.ml-95{margin-left:95px}.margin-horizontal-95,.mh-95{margin-left:95px;margin-right:95px}.margin-vertical-95,.mv-95{margin-top:95px;margin-bottom:95px}.m-100,.margin-100{margin:100px}.margin-top-100,.mt-100{margin-top:100px}.margin-right-100,.mr-100{margin-right:100px}.margin-bottom-100,.mb-100{margin-bottom:100px}.margin-left-100,.ml-100{margin-left:100px}.margin-horizontal-100,.mh-100{margin-left:100px;margin-right:100px}.margin-vertical-100,.mv-100{margin-top:100px;margin-bottom:100px}.m-8,.margin-8{margin:8px}.margin-top-8,.mt-8{margin-top:8px}.margin-right-8,.mr-8{margin-right:8px}.margin-bottom-8,.mb-8{margin-bottom:8px}.margin-left-8,.ml-8{margin-left:8px}.margin-horizontal-8,.mh-8{margin-left:8px;margin-right:8px}.margin-vertical-8,.mv-8{margin-top:8px;margin-bottom:8px}.m-16,.margin-16{margin:16px}.margin-top-16,.mt-16{margin-top:16px}.margin-right-16,.mr-16{margin-right:16px}.margin-bottom-16,.mb-16{margin-bottom:16px}.margin-left-16,.ml-16{margin-left:16px}.margin-horizontal-16,.mh-16{margin-left:16px;margin-right:16px}.margin-vertical-16,.mv-16{margin-top:16px;margin-bottom:16px}.m-24,.margin-24{margin:24px}.margin-top-24,.mt-24{margin-top:24px}.margin-right-24,.mr-24{margin-right:24px}.margin-bottom-24,.mb-24{margin-bottom:24px}.margin-left-24,.ml-24{margin-left:24px}.margin-horizontal-24,.mh-24{margin-left:24px;margin-right:24px}.margin-vertical-24,.mv-24{margin-top:24px;margin-bottom:24px}.m-32,.margin-32{margin:32px}.margin-top-32,.mt-32{margin-top:32px}.margin-right-32,.mr-32{margin-right:32px}.margin-bottom-32,.mb-32{margin-bottom:32px}.margin-left-32,.ml-32{margin-left:32px}.margin-horizontal-32,.mh-32{margin-left:32px;margin-right:32px}.margin-vertical-32,.mv-32{margin-top:32px;margin-bottom:32px}.m-48,.margin-48{margin:48px}.margin-top-48,.mt-48{margin-top:48px}.margin-right-48,.mr-48{margin-right:48px}.margin-bottom-48,.mb-48{margin-bottom:48px}.margin-left-48,.ml-48{margin-left:48px}.margin-horizontal-48,.mh-48{margin-left:48px;margin-right:48px}.margin-vertical-48,.mv-48{margin-top:48px;margin-bottom:48px}.m-56,.margin-56{margin:56px}.margin-top-56,.mt-56{margin-top:56px}.margin-right-56,.mr-56{margin-right:56px}.margin-bottom-56,.mb-56{margin-bottom:56px}.margin-left-56,.ml-56{margin-left:56px}.margin-horizontal-56,.mh-56{margin-left:56px;margin-right:56px}.margin-vertical-56,.mv-56{margin-top:56px;margin-bottom:56px}.m-64,.margin-64{margin:64px}.margin-top-64,.mt-64{margin-top:64px}.margin-right-64,.mr-64{margin-right:64px}.margin-bottom-64,.mb-64{margin-bottom:64px}.margin-left-64,.ml-64{margin-left:64px}.margin-horizontal-64,.mh-64{margin-left:64px;margin-right:64px}.margin-vertical-64,.mv-64{margin-top:64px;margin-bottom:64px}.m-72,.margin-72{margin:72px}.margin-top-72,.mt-72{margin-top:72px}.margin-right-72,.mr-72{margin-right:72px}.margin-bottom-72,.mb-72{margin-bottom:72px}.margin-left-72,.ml-72{margin-left:72px}.margin-horizontal-72,.mh-72{margin-left:72px;margin-right:72px}.margin-vertical-72,.mv-72{margin-top:72px;margin-bottom:72px}.m-88,.margin-88{margin:88px}.margin-top-88,.mt-88{margin-top:88px}.margin-right-88,.mr-88{margin-right:88px}.margin-bottom-88,.mb-88{margin-bottom:88px}.margin-left-88,.ml-88{margin-left:88px}.margin-horizontal-88,.mh-88{margin-left:88px;margin-right:88px}.margin-vertical-88,.mv-88{margin-top:88px;margin-bottom:88px}.m-96,.margin-96{margin:96px}.margin-top-96,.mt-96{margin-top:96px}.margin-right-96,.mr-96{margin-right:96px}.margin-bottom-96,.mb-96{margin-bottom:96px}.margin-left-96,.ml-96{margin-left:96px}.margin-horizontal-96,.mh-96{margin-left:96px;margin-right:96px}.margin-vertical-96,.mv-96{margin-top:96px;margin-bottom:96px}.h-0,.height-0{height:0!important;min-height:0!important;max-height:0!important}.w-0,.width-0{width:0!important;min-width:0!important;max-width:0!important}.h-5,.height-5{height:5px!important;min-height:5px!important;max-height:5px!important}.w-5,.width-5{width:5px!important;min-width:5px!important;max-width:5px!important}.h-10,.height-10{height:10px!important;min-height:10px!important;max-height:10px!important}.w-10,.width-10{width:10px!important;min-width:10px!important;max-width:10px!important}.h-15,.height-15{height:15px!important;min-height:15px!important;max-height:15px!important}.w-15,.width-15{width:15px!important;min-width:15px!important;max-width:15px!important}.h-20,.height-20{height:20px!important;min-height:20px!important;max-height:20px!important}.w-20,.width-20{width:20px!important;min-width:20px!important;max-width:20px!important}.h-25,.height-25{height:25px!important;min-height:25px!important;max-height:25px!important}.w-25,.width-25{width:25px!important;min-width:25px!important;max-width:25px!important}.h-30,.height-30{height:30px!important;min-height:30px!important;max-height:30px!important}.w-30,.width-30{width:30px!important;min-width:30px!important;max-width:30px!important}.h-35,.height-35{height:35px!important;min-height:35px!important;max-height:35px!important}.w-35,.width-35{width:35px!important;min-width:35px!important;max-width:35px!important}.h-40,.height-40{height:40px!important;min-height:40px!important;max-height:40px!important}.w-40,.width-40{width:40px!important;min-width:40px!important;max-width:40px!important}.h-45,.height-45{height:45px!important;min-height:45px!important;max-height:45px!important}.w-45,.width-45{width:45px!important;min-width:45px!important;max-width:45px!important}.h-50,.height-50{height:50px!important;min-height:50px!important;max-height:50px!important}.w-50,.width-50{width:50px!important;min-width:50px!important;max-width:50px!important}.h-55,.height-55{height:55px!important;min-height:55px!important;max-height:55px!important}.w-55,.width-55{width:55px!important;min-width:55px!important;max-width:55px!important}.h-60,.height-60{height:60px!important;min-height:60px!important;max-height:60px!important}.w-60,.width-60{width:60px!important;min-width:60px!important;max-width:60px!important}.h-65,.height-65{height:65px!important;min-height:65px!important;max-height:65px!important}.w-65,.width-65{width:65px!important;min-width:65px!important;max-width:65px!important}.h-70,.height-70{height:70px!important;min-height:70px!important;max-height:70px!important}.w-70,.width-70{width:70px!important;min-width:70px!important;max-width:70px!important}.h-75,.height-75{height:75px!important;min-height:75px!important;max-height:75px!important}.w-75,.width-75{width:75px!important;min-width:75px!important;max-width:75px!important}.h-80,.height-80{height:80px!important;min-height:80px!important;max-height:80px!important}.w-80,.width-80{width:80px!important;min-width:80px!important;max-width:80px!important}.h-85,.height-85{height:85px!important;min-height:85px!important;max-height:85px!important}.w-85,.width-85{width:85px!important;min-width:85px!important;max-width:85px!important}.h-90,.height-90{height:90px!important;min-height:90px!important;max-height:90px!important}.w-90,.width-90{width:90px!important;min-width:90px!important;max-width:90px!important}.h-95,.height-95{height:95px!important;min-height:95px!important;max-height:95px!important}.w-95,.width-95{width:95px!important;min-width:95px!important;max-width:95px!important}.h-100,.height-100{height:100px!important;min-height:100px!important;max-height:100px!important}.w-100,.width-100{width:100px!important;min-width:100px!important;max-width:100px!important}.h-105,.height-105{height:105px!important;min-height:105px!important;max-height:105px!important}.w-105,.width-105{width:105px!important;min-width:105px!important;max-width:105px!important}.h-110,.height-110{height:110px!important;min-height:110px!important;max-height:110px!important}.w-110,.width-110{width:110px!important;min-width:110px!important;max-width:110px!important}.h-115,.height-115{height:115px!important;min-height:115px!important;max-height:115px!important}.w-115,.width-115{width:115px!important;min-width:115px!important;max-width:115px!important}.h-120,.height-120{height:120px!important;min-height:120px!important;max-height:120px!important}.w-120,.width-120{width:120px!important;min-width:120px!important;max-width:120px!important}.h-125,.height-125{height:125px!important;min-height:125px!important;max-height:125px!important}.w-125,.width-125{width:125px!important;min-width:125px!important;max-width:125px!important}.h-130,.height-130{height:130px!important;min-height:130px!important;max-height:130px!important}.w-130,.width-130{width:130px!important;min-width:130px!important;max-width:130px!important}.h-135,.height-135{height:135px!important;min-height:135px!important;max-height:135px!important}.w-135,.width-135{width:135px!important;min-width:135px!important;max-width:135px!important}.h-140,.height-140{height:140px!important;min-height:140px!important;max-height:140px!important}.w-140,.width-140{width:140px!important;min-width:140px!important;max-width:140px!important}.h-145,.height-145{height:145px!important;min-height:145px!important;max-height:145px!important}.w-145,.width-145{width:145px!important;min-width:145px!important;max-width:145px!important}.h-150,.height-150{height:150px!important;min-height:150px!important;max-height:150px!important}.w-150,.width-150{width:150px!important;min-width:150px!important;max-width:150px!important}.h-155,.height-155{height:155px!important;min-height:155px!important;max-height:155px!important}.w-155,.width-155{width:155px!important;min-width:155px!important;max-width:155px!important}.h-160,.height-160{height:160px!important;min-height:160px!important;max-height:160px!important}.w-160,.width-160{width:160px!important;min-width:160px!important;max-width:160px!important}.h-165,.height-165{height:165px!important;min-height:165px!important;max-height:165px!important}.w-165,.width-165{width:165px!important;min-width:165px!important;max-width:165px!important}.h-170,.height-170{height:170px!important;min-height:170px!important;max-height:170px!important}.w-170,.width-170{width:170px!important;min-width:170px!important;max-width:170px!important}.h-175,.height-175{height:175px!important;min-height:175px!important;max-height:175px!important}.w-175,.width-175{width:175px!important;min-width:175px!important;max-width:175px!important}.h-180,.height-180{height:180px!important;min-height:180px!important;max-height:180px!important}.w-180,.width-180{width:180px!important;min-width:180px!important;max-width:180px!important}.h-185,.height-185{height:185px!important;min-height:185px!important;max-height:185px!important}.w-185,.width-185{width:185px!important;min-width:185px!important;max-width:185px!important}.h-190,.height-190{height:190px!important;min-height:190px!important;max-height:190px!important}.w-190,.width-190{width:190px!important;min-width:190px!important;max-width:190px!important}.h-195,.height-195{height:195px!important;min-height:195px!important;max-height:195px!important}.w-195,.width-195{width:195px!important;min-width:195px!important;max-width:195px!important}.h-200,.height-200{height:200px!important;min-height:200px!important;max-height:200px!important}.w-200,.width-200{width:200px!important;min-width:200px!important;max-width:200px!important}.h-205,.height-205{height:205px!important;min-height:205px!important;max-height:205px!important}.w-205,.width-205{width:205px!important;min-width:205px!important;max-width:205px!important}.h-210,.height-210{height:210px!important;min-height:210px!important;max-height:210px!important}.w-210,.width-210{width:210px!important;min-width:210px!important;max-width:210px!important}.h-215,.height-215{height:215px!important;min-height:215px!important;max-height:215px!important}.w-215,.width-215{width:215px!important;min-width:215px!important;max-width:215px!important}.h-220,.height-220{height:220px!important;min-height:220px!important;max-height:220px!important}.w-220,.width-220{width:220px!important;min-width:220px!important;max-width:220px!important}.h-225,.height-225{height:225px!important;min-height:225px!important;max-height:225px!important}.w-225,.width-225{width:225px!important;min-width:225px!important;max-width:225px!important}.h-230,.height-230{height:230px!important;min-height:230px!important;max-height:230px!important}.w-230,.width-230{width:230px!important;min-width:230px!important;max-width:230px!important}.h-235,.height-235{height:235px!important;min-height:235px!important;max-height:235px!important}.w-235,.width-235{width:235px!important;min-width:235px!important;max-width:235px!important}.h-240,.height-240{height:240px!important;min-height:240px!important;max-height:240px!important}.w-240,.width-240{width:240px!important;min-width:240px!important;max-width:240px!important}.h-245,.height-245{height:245px!important;min-height:245px!important;max-height:245px!important}.w-245,.width-245{width:245px!important;min-width:245px!important;max-width:245px!important}.h-250,.height-250{height:250px!important;min-height:250px!important;max-height:250px!important}.w-250,.width-250{width:250px!important;min-width:250px!important;max-width:250px!important}.h-255,.height-255{height:255px!important;min-height:255px!important;max-height:255px!important}.w-255,.width-255{width:255px!important;min-width:255px!important;max-width:255px!important}.h-260,.height-260{height:260px!important;min-height:260px!important;max-height:260px!important}.w-260,.width-260{width:260px!important;min-width:260px!important;max-width:260px!important}.h-265,.height-265{height:265px!important;min-height:265px!important;max-height:265px!important}.w-265,.width-265{width:265px!important;min-width:265px!important;max-width:265px!important}.h-270,.height-270{height:270px!important;min-height:270px!important;max-height:270px!important}.w-270,.width-270{width:270px!important;min-width:270px!important;max-width:270px!important}.h-275,.height-275{height:275px!important;min-height:275px!important;max-height:275px!important}.w-275,.width-275{width:275px!important;min-width:275px!important;max-width:275px!important}.h-280,.height-280{height:280px!important;min-height:280px!important;max-height:280px!important}.w-280,.width-280{width:280px!important;min-width:280px!important;max-width:280px!important}.h-285,.height-285{height:285px!important;min-height:285px!important;max-height:285px!important}.w-285,.width-285{width:285px!important;min-width:285px!important;max-width:285px!important}.h-290,.height-290{height:290px!important;min-height:290px!important;max-height:290px!important}.w-290,.width-290{width:290px!important;min-width:290px!important;max-width:290px!important}.h-295,.height-295{height:295px!important;min-height:295px!important;max-height:295px!important}.w-295,.width-295{width:295px!important;min-width:295px!important;max-width:295px!important}.h-300,.height-300{height:300px!important;min-height:300px!important;max-height:300px!important}.w-300,.width-300{width:300px!important;min-width:300px!important;max-width:300px!important}.h-305,.height-305{height:305px!important;min-height:305px!important;max-height:305px!important}.w-305,.width-305{width:305px!important;min-width:305px!important;max-width:305px!important}.h-310,.height-310{height:310px!important;min-height:310px!important;max-height:310px!important}.w-310,.width-310{width:310px!important;min-width:310px!important;max-width:310px!important}.h-315,.height-315{height:315px!important;min-height:315px!important;max-height:315px!important}.w-315,.width-315{width:315px!important;min-width:315px!important;max-width:315px!important}.h-320,.height-320{height:320px!important;min-height:320px!important;max-height:320px!important}.w-320,.width-320{width:320px!important;min-width:320px!important;max-width:320px!important}.h-325,.height-325{height:325px!important;min-height:325px!important;max-height:325px!important}.w-325,.width-325{width:325px!important;min-width:325px!important;max-width:325px!important}.h-330,.height-330{height:330px!important;min-height:330px!important;max-height:330px!important}.w-330,.width-330{width:330px!important;min-width:330px!important;max-width:330px!important}.h-335,.height-335{height:335px!important;min-height:335px!important;max-height:335px!important}.w-335,.width-335{width:335px!important;min-width:335px!important;max-width:335px!important}.h-340,.height-340{height:340px!important;min-height:340px!important;max-height:340px!important}.w-340,.width-340{width:340px!important;min-width:340px!important;max-width:340px!important}.h-345,.height-345{height:345px!important;min-height:345px!important;max-height:345px!important}.w-345,.width-345{width:345px!important;min-width:345px!important;max-width:345px!important}.h-350,.height-350{height:350px!important;min-height:350px!important;max-height:350px!important}.w-350,.width-350{width:350px!important;min-width:350px!important;max-width:350px!important}.h-355,.height-355{height:355px!important;min-height:355px!important;max-height:355px!important}.w-355,.width-355{width:355px!important;min-width:355px!important;max-width:355px!important}.h-360,.height-360{height:360px!important;min-height:360px!important;max-height:360px!important}.w-360,.width-360{width:360px!important;min-width:360px!important;max-width:360px!important}.h-365,.height-365{height:365px!important;min-height:365px!important;max-height:365px!important}.w-365,.width-365{width:365px!important;min-width:365px!important;max-width:365px!important}.h-370,.height-370{height:370px!important;min-height:370px!important;max-height:370px!important}.w-370,.width-370{width:370px!important;min-width:370px!important;max-width:370px!important}.h-375,.height-375{height:375px!important;min-height:375px!important;max-height:375px!important}.w-375,.width-375{width:375px!important;min-width:375px!important;max-width:375px!important}.h-380,.height-380{height:380px!important;min-height:380px!important;max-height:380px!important}.w-380,.width-380{width:380px!important;min-width:380px!important;max-width:380px!important}.h-385,.height-385{height:385px!important;min-height:385px!important;max-height:385px!important}.w-385,.width-385{width:385px!important;min-width:385px!important;max-width:385px!important}.h-390,.height-390{height:390px!important;min-height:390px!important;max-height:390px!important}.w-390,.width-390{width:390px!important;min-width:390px!important;max-width:390px!important}.h-395,.height-395{height:395px!important;min-height:395px!important;max-height:395px!important}.w-395,.width-395{width:395px!important;min-width:395px!important;max-width:395px!important}.h-400,.height-400{height:400px!important;min-height:400px!important;max-height:400px!important}.w-400,.width-400{width:400px!important;min-width:400px!important;max-width:400px!important}.h-405,.height-405{height:405px!important;min-height:405px!important;max-height:405px!important}.w-405,.width-405{width:405px!important;min-width:405px!important;max-width:405px!important}.h-410,.height-410{height:410px!important;min-height:410px!important;max-height:410px!important}.w-410,.width-410{width:410px!important;min-width:410px!important;max-width:410px!important}.h-415,.height-415{height:415px!important;min-height:415px!important;max-height:415px!important}.w-415,.width-415{width:415px!important;min-width:415px!important;max-width:415px!important}.h-420,.height-420{height:420px!important;min-height:420px!important;max-height:420px!important}.w-420,.width-420{width:420px!important;min-width:420px!important;max-width:420px!important}.h-425,.height-425{height:425px!important;min-height:425px!important;max-height:425px!important}.w-425,.width-425{width:425px!important;min-width:425px!important;max-width:425px!important}.h-430,.height-430{height:430px!important;min-height:430px!important;max-height:430px!important}.w-430,.width-430{width:430px!important;min-width:430px!important;max-width:430px!important}.h-435,.height-435{height:435px!important;min-height:435px!important;max-height:435px!important}.w-435,.width-435{width:435px!important;min-width:435px!important;max-width:435px!important}.h-440,.height-440{height:440px!important;min-height:440px!important;max-height:440px!important}.w-440,.width-440{width:440px!important;min-width:440px!important;max-width:440px!important}.h-445,.height-445{height:445px!important;min-height:445px!important;max-height:445px!important}.w-445,.width-445{width:445px!important;min-width:445px!important;max-width:445px!important}.h-450,.height-450{height:450px!important;min-height:450px!important;max-height:450px!important}.w-450,.width-450{width:450px!important;min-width:450px!important;max-width:450px!important}.h-455,.height-455{height:455px!important;min-height:455px!important;max-height:455px!important}.w-455,.width-455{width:455px!important;min-width:455px!important;max-width:455px!important}.h-460,.height-460{height:460px!important;min-height:460px!important;max-height:460px!important}.w-460,.width-460{width:460px!important;min-width:460px!important;max-width:460px!important}.h-465,.height-465{height:465px!important;min-height:465px!important;max-height:465px!important}.w-465,.width-465{width:465px!important;min-width:465px!important;max-width:465px!important}.h-470,.height-470{height:470px!important;min-height:470px!important;max-height:470px!important}.w-470,.width-470{width:470px!important;min-width:470px!important;max-width:470px!important}.h-475,.height-475{height:475px!important;min-height:475px!important;max-height:475px!important}.w-475,.width-475{width:475px!important;min-width:475px!important;max-width:475px!important}.h-480,.height-480{height:480px!important;min-height:480px!important;max-height:480px!important}.w-480,.width-480{width:480px!important;min-width:480px!important;max-width:480px!important}.h-485,.height-485{height:485px!important;min-height:485px!important;max-height:485px!important}.w-485,.width-485{width:485px!important;min-width:485px!important;max-width:485px!important}.h-490,.height-490{height:490px!important;min-height:490px!important;max-height:490px!important}.w-490,.width-490{width:490px!important;min-width:490px!important;max-width:490px!important}.h-495,.height-495{height:495px!important;min-height:495px!important;max-height:495px!important}.w-495,.width-495{width:495px!important;min-width:495px!important;max-width:495px!important}.h-500,.height-500{height:500px!important;min-height:500px!important;max-height:500px!important}.w-500,.width-500{width:500px!important;min-width:500px!important;max-width:500px!important}.h-8,.height-8{height:8px!important;min-height:8px!important;max-height:8px!important}.w-8,.width-8{width:8px!important;min-width:8px!important;max-width:8px!important}.h-16,.height-16{height:16px!important;min-height:16px!important;max-height:16px!important}.w-16,.width-16{width:16px!important;min-width:16px!important;max-width:16px!important}.h-24,.height-24{height:24px!important;min-height:24px!important;max-height:24px!important}.w-24,.width-24{width:24px!important;min-width:24px!important;max-width:24px!important}.h-32,.height-32{height:32px!important;min-height:32px!important;max-height:32px!important}.w-32,.width-32{width:32px!important;min-width:32px!important;max-width:32px!important}.h-48,.height-48{height:48px!important;min-height:48px!important;max-height:48px!important}.w-48,.width-48{width:48px!important;min-width:48px!important;max-width:48px!important}.h-56,.height-56{height:56px!important;min-height:56px!important;max-height:56px!important}.w-56,.width-56{width:56px!important;min-width:56px!important;max-width:56px!important}.h-64,.height-64{height:64px!important;min-height:64px!important;max-height:64px!important}.w-64,.width-64{width:64px!important;min-width:64px!important;max-width:64px!important}.h-72,.height-72{height:72px!important;min-height:72px!important;max-height:72px!important}.w-72,.width-72{width:72px!important;min-width:72px!important;max-width:72px!important}.h-88,.height-88{height:88px!important;min-height:88px!important;max-height:88px!important}.w-88,.width-88{width:88px!important;min-width:88px!important;max-width:88px!important}.h-96,.height-96{height:96px!important;min-height:96px!important;max-height:96px!important}.w-96,.width-96{width:96px!important;min-width:96px!important;max-width:96px!important}.h-104,.height-104{height:104px!important;min-height:104px!important;max-height:104px!important}.w-104,.width-104{width:104px!important;min-width:104px!important;max-width:104px!important}.h-112,.height-112{height:112px!important;min-height:112px!important;max-height:112px!important}.w-112,.width-112{width:112px!important;min-width:112px!important;max-width:112px!important}.h-128,.height-128{height:128px!important;min-height:128px!important;max-height:128px!important}.w-128,.width-128{width:128px!important;min-width:128px!important;max-width:128px!important}.h-136,.height-136{height:136px!important;min-height:136px!important;max-height:136px!important}.w-136,.width-136{width:136px!important;min-width:136px!important;max-width:136px!important}.h-144,.height-144{height:144px!important;min-height:144px!important;max-height:144px!important}.w-144,.width-144{width:144px!important;min-width:144px!important;max-width:144px!important}.h-152,.height-152{height:152px!important;min-height:152px!important;max-height:152px!important}.w-152,.width-152{width:152px!important;min-width:152px!important;max-width:152px!important}.h-168,.height-168{height:168px!important;min-height:168px!important;max-height:168px!important}.w-168,.width-168{width:168px!important;min-width:168px!important;max-width:168px!important}.h-176,.height-176{height:176px!important;min-height:176px!important;max-height:176px!important}.w-176,.width-176{width:176px!important;min-width:176px!important;max-width:176px!important}.h-184,.height-184{height:184px!important;min-height:184px!important;max-height:184px!important}.w-184,.width-184{width:184px!important;min-width:184px!important;max-width:184px!important}.h-192,.height-192{height:192px!important;min-height:192px!important;max-height:192px!important}.w-192,.width-192{width:192px!important;min-width:192px!important;max-width:192px!important}.h-208,.height-208{height:208px!important;min-height:208px!important;max-height:208px!important}.w-208,.width-208{width:208px!important;min-width:208px!important;max-width:208px!important}.h-216,.height-216{height:216px!important;min-height:216px!important;max-height:216px!important}.w-216,.width-216{width:216px!important;min-width:216px!important;max-width:216px!important}.h-224,.height-224{height:224px!important;min-height:224px!important;max-height:224px!important}.w-224,.width-224{width:224px!important;min-width:224px!important;max-width:224px!important}.h-232,.height-232{height:232px!important;min-height:232px!important;max-height:232px!important}.w-232,.width-232{width:232px!important;min-width:232px!important;max-width:232px!important}.h-248,.height-248{height:248px!important;min-height:248px!important;max-height:248px!important}.w-248,.width-248{width:248px!important;min-width:248px!important;max-width:248px!important}.h-256,.height-256{height:256px!important;min-height:256px!important;max-height:256px!important}.w-256,.width-256{width:256px!important;min-width:256px!important;max-width:256px!important}.h-264,.height-264{height:264px!important;min-height:264px!important;max-height:264px!important}.w-264,.width-264{width:264px!important;min-width:264px!important;max-width:264px!important}.h-272,.height-272{height:272px!important;min-height:272px!important;max-height:272px!important}.w-272,.width-272{width:272px!important;min-width:272px!important;max-width:272px!important}.h-288,.height-288{height:288px!important;min-height:288px!important;max-height:288px!important}.w-288,.width-288{width:288px!important;min-width:288px!important;max-width:288px!important}.h-296,.height-296{height:296px!important;min-height:296px!important;max-height:296px!important}.w-296,.width-296{width:296px!important;min-width:296px!important;max-width:296px!important}.h-304,.height-304{height:304px!important;min-height:304px!important;max-height:304px!important}.w-304,.width-304{width:304px!important;min-width:304px!important;max-width:304px!important}.h-312,.height-312{height:312px!important;min-height:312px!important;max-height:312px!important}.w-312,.width-312{width:312px!important;min-width:312px!important;max-width:312px!important}.h-328,.height-328{height:328px!important;min-height:328px!important;max-height:328px!important}.w-328,.width-328{width:328px!important;min-width:328px!important;max-width:328px!important}.h-336,.height-336{height:336px!important;min-height:336px!important;max-height:336px!important}.w-336,.width-336{width:336px!important;min-width:336px!important;max-width:336px!important}.h-344,.height-344{height:344px!important;min-height:344px!important;max-height:344px!important}.w-344,.width-344{width:344px!important;min-width:344px!important;max-width:344px!important}.h-352,.height-352{height:352px!important;min-height:352px!important;max-height:352px!important}.w-352,.width-352{width:352px!important;min-width:352px!important;max-width:352px!important}.h-368,.height-368{height:368px!important;min-height:368px!important;max-height:368px!important}.w-368,.width-368{width:368px!important;min-width:368px!important;max-width:368px!important}.h-376,.height-376{height:376px!important;min-height:376px!important;max-height:376px!important}.w-376,.width-376{width:376px!important;min-width:376px!important;max-width:376px!important}.h-384,.height-384{height:384px!important;min-height:384px!important;max-height:384px!important}.w-384,.width-384{width:384px!important;min-width:384px!important;max-width:384px!important}.h-392,.height-392{height:392px!important;min-height:392px!important;max-height:392px!important}.w-392,.width-392{width:392px!important;min-width:392px!important;max-width:392px!important}.h-408,.height-408{height:408px!important;min-height:408px!important;max-height:408px!important}.w-408,.width-408{width:408px!important;min-width:408px!important;max-width:408px!important}.h-416,.height-416{height:416px!important;min-height:416px!important;max-height:416px!important}.w-416,.width-416{width:416px!important;min-width:416px!important;max-width:416px!important}.h-424,.height-424{height:424px!important;min-height:424px!important;max-height:424px!important}.w-424,.width-424{width:424px!important;min-width:424px!important;max-width:424px!important}.h-432,.height-432{height:432px!important;min-height:432px!important;max-height:432px!important}.w-432,.width-432{width:432px!important;min-width:432px!important;max-width:432px!important}.h-448,.height-448{height:448px!important;min-height:448px!important;max-height:448px!important}.w-448,.width-448{width:448px!important;min-width:448px!important;max-width:448px!important}.h-456,.height-456{height:456px!important;min-height:456px!important;max-height:456px!important}.w-456,.width-456{width:456px!important;min-width:456px!important;max-width:456px!important}.h-464,.height-464{height:464px!important;min-height:464px!important;max-height:464px!important}.w-464,.width-464{width:464px!important;min-width:464px!important;max-width:464px!important}.h-472,.height-472{height:472px!important;min-height:472px!important;max-height:472px!important}.w-472,.width-472{width:472px!important;min-width:472px!important;max-width:472px!important}.h-488,.height-488{height:488px!important;min-height:488px!important;max-height:488px!important}.w-488,.width-488{width:488px!important;min-width:488px!important;max-width:488px!important}.h-496,.height-496{height:496px!important;min-height:496px!important;max-height:496px!important}.w-496,.width-496{width:496px!important;min-width:496px!important;max-width:496px!important}.h-504,.height-504{height:504px!important;min-height:504px!important;max-height:504px!important}.w-504,.width-504{width:504px!important;min-width:504px!important;max-width:504px!important}.h-512,.height-512{height:512px!important;min-height:512px!important;max-height:512px!important}.w-512,.width-512{width:512px!important;min-width:512px!important;max-width:512px!important}.h-528,.height-528{height:528px!important;min-height:528px!important;max-height:528px!important}.w-528,.width-528{width:528px!important;min-width:528px!important;max-width:528px!important}.h-536,.height-536{height:536px!important;min-height:536px!important;max-height:536px!important}.w-536,.width-536{width:536px!important;min-width:536px!important;max-width:536px!important}.h-544,.height-544{height:544px!important;min-height:544px!important;max-height:544px!important}.w-544,.width-544{width:544px!important;min-width:544px!important;max-width:544px!important}.h-552,.height-552{height:552px!important;min-height:552px!important;max-height:552px!important}.w-552,.width-552{width:552px!important;min-width:552px!important;max-width:552px!important}.h-568,.height-568{height:568px!important;min-height:568px!important;max-height:568px!important}.w-568,.width-568{width:568px!important;min-width:568px!important;max-width:568px!important}.h-576,.height-576{height:576px!important;min-height:576px!important;max-height:576px!important}.w-576,.width-576{width:576px!important;min-width:576px!important;max-width:576px!important}.h-584,.height-584{height:584px!important;min-height:584px!important;max-height:584px!important}.w-584,.width-584{width:584px!important;min-width:584px!important;max-width:584px!important}.h-592,.height-592{height:592px!important;min-height:592px!important;max-height:592px!important}.w-592,.width-592{width:592px!important;min-width:592px!important;max-width:592px!important}.h-608,.height-608{height:608px!important;min-height:608px!important;max-height:608px!important}.w-608,.width-608{width:608px!important;min-width:608px!important;max-width:608px!important}.h-616,.height-616{height:616px!important;min-height:616px!important;max-height:616px!important}.w-616,.width-616{width:616px!important;min-width:616px!important;max-width:616px!important}.h-624,.height-624{height:624px!important;min-height:624px!important;max-height:624px!important}.w-624,.width-624{width:624px!important;min-width:624px!important;max-width:624px!important}.h-632,.height-632{height:632px!important;min-height:632px!important;max-height:632px!important}.w-632,.width-632{width:632px!important;min-width:632px!important;max-width:632px!important}.h-648,.height-648{height:648px!important;min-height:648px!important;max-height:648px!important}.w-648,.width-648{width:648px!important;min-width:648px!important;max-width:648px!important}.h-656,.height-656{height:656px!important;min-height:656px!important;max-height:656px!important}.w-656,.width-656{width:656px!important;min-width:656px!important;max-width:656px!important}.h-664,.height-664{height:664px!important;min-height:664px!important;max-height:664px!important}.w-664,.width-664{width:664px!important;min-width:664px!important;max-width:664px!important}.h-672,.height-672{height:672px!important;min-height:672px!important;max-height:672px!important}.w-672,.width-672{width:672px!important;min-width:672px!important;max-width:672px!important}.h-688,.height-688{height:688px!important;min-height:688px!important;max-height:688px!important}.w-688,.width-688{width:688px!important;min-width:688px!important;max-width:688px!important}.h-696,.height-696{height:696px!important;min-height:696px!important;max-height:696px!important}.w-696,.width-696{width:696px!important;min-width:696px!important;max-width:696px!important}.h-704,.height-704{height:704px!important;min-height:704px!important;max-height:704px!important}.w-704,.width-704{width:704px!important;min-width:704px!important;max-width:704px!important}.h-712,.height-712{height:712px!important;min-height:712px!important;max-height:712px!important}.w-712,.width-712{width:712px!important;min-width:712px!important;max-width:712px!important}.h-728,.height-728{height:728px!important;min-height:728px!important;max-height:728px!important}.w-728,.width-728{width:728px!important;min-width:728px!important;max-width:728px!important}.h-736,.height-736{height:736px!important;min-height:736px!important;max-height:736px!important}.w-736,.width-736{width:736px!important;min-width:736px!important;max-width:736px!important}.h-744,.height-744{height:744px!important;min-height:744px!important;max-height:744px!important}.w-744,.width-744{width:744px!important;min-width:744px!important;max-width:744px!important}.h-752,.height-752{height:752px!important;min-height:752px!important;max-height:752px!important}.w-752,.width-752{width:752px!important;min-width:752px!important;max-width:752px!important}.h-768,.height-768{height:768px!important;min-height:768px!important;max-height:768px!important}.w-768,.width-768{width:768px!important;min-width:768px!important;max-width:768px!important}.h-776,.height-776{height:776px!important;min-height:776px!important;max-height:776px!important}.w-776,.width-776{width:776px!important;min-width:776px!important;max-width:776px!important}.h-784,.height-784{height:784px!important;min-height:784px!important;max-height:784px!important}.w-784,.width-784{width:784px!important;min-width:784px!important;max-width:784px!important}.h-792,.height-792{height:792px!important;min-height:792px!important;max-height:792px!important}.w-792,.width-792{width:792px!important;min-width:792px!important;max-width:792px!important}.b,.border{border:1px solid rgba(0,0,0,.12)}.border-top,.bt{border-top:1px solid rgba(0,0,0,.12)}.border-right,.br{border-right:1px solid rgba(0,0,0,.12)}.bb,.border-bottom{border-bottom:1px solid rgba(0,0,0,.12)}.bl,.border-left{border-left:1px solid rgba(0,0,0,.12)}.bh,.border-horizontal{border-left:1px solid rgba(0,0,0,.12);border-right:1px solid rgba(0,0,0,.12)}.border-vertical,.bv{border-top:1px solid rgba(0,0,0,.12);border-bottom:1px solid rgba(0,0,0,.12)}.brad-1{border-radius:1px}.brad-2{border-radius:2px}.brad-3{border-radius:3px}.brad-4{border-radius:4px}.brad-5{border-radius:5px}.brad-6{border-radius:6px}.brad-7{border-radius:7px}.brad-8{border-radius:8px}.brad-9{border-radius:9px}.brad-10{border-radius:10px}.brad-11{border-radius:11px}.brad-12{border-radius:12px}@media all{.page-break{display:none}}@media print{.page-break{display:block;break-after:always;page-break-after:always}#main #vertical-navigation{display:none}#main #toolbar{display:none}#main #quick-panel{display:none}#main #content{position:relative!important;top:0!important;right:0!important;bottom:0!important;left:0!important;background:0 0!important}ms-theme-options{display:none}.ps-scrollbar-x-rail,.ps-scrollbar-y-rail{display:none!important}.printable{overflow:visible!important}.printable .template-layout{display:inline!important}}.ms-card{display:flex;flex-direction:row;padding:8px}.ms-card .ms-card-content-wrapper{position:relative;overflow:hidden;width:100%;max-width:400px;border-radius:2px;background:#fff;box-shadow:0 3px 1px -2px rgba(0,0,0,.14),0 2px 2px 0 rgba(0,0,0,.098),0 1px 5px 0 rgba(0,0,0,.084)}.ms-card .template-1 .media .image{width:100%;border-radius:2px 2px 0 0}.ms-card .template-10 .media{width:80px;min-width:80px;max-width:80px}.ms-card .template-2 .header .avatar .image{display:block;width:40px;height:40px;border-radius:20px}.ms-card .template-2 .media .image{width:100%}.ms-card .template-4 .info{position:absolute;right:0;bottom:0;left:0;z-index:2;background:rgba(0,0,0,.54)}.ms-card .template-4 .media{z-index:1}.ms-card .template-4 .media .image{width:100%}.ms-card .template-5 .media{width:80px;min-width:80px;max-width:80px}.ms-card .template-5 .info,.ms-card .template-5 .media{-ms-flex:0 1 auto}.ms-card .template-8 .media .image{width:100%;border-radius:2px 2px 0 0}.ms-card .template-9 .header .avatar .image{display:block;width:40px;height:40px;border-radius:20px}.ms-card .template-9 .media .image{width:100%}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}.ms-form-wizard{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-form-wizard md-tabs md-tabs-wrapper{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas{height:72px}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper{height:72px}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item{opacity:1!important;padding:24px}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item:before{content:'';display:block;position:absolute;top:50%;left:0;right:50%;border-bottom:1px solid rgba(0,0,0,.12);z-index:8}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item:after{content:'';display:block;position:absolute;top:50%;left:50%;right:0;border-bottom:1px solid rgba(0,0,0,.12);z-index:8}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item:first-of-type:before{display:none}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item:last-of-type:after{display:none}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item.md-disabled .ms-form-wizard-step-label .ms-form-wizard-step-number{background:rgba(0,0,0,.12)!important}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item .md-ripple-container{z-index:11}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-ink-bar{display:none!important}.ms-form-wizard .ms-form-wizard-step-label{display:inline-block;position:relative;background:#fff;z-index:10;padding:0 16px;line-height:24px}.ms-form-wizard .ms-form-wizard-step-label .ms-form-wizard-step-number{display:inline-block;vertical-align:middle;width:24px;height:24px;line-height:24px;font-size:14px;margin-right:12px;border-radius:50%;color:#fff!important}.ms-form-wizard .ms-form-wizard-step-label .ms-form-wizard-step-number i{line-height:24px!important}.ms-form-wizard .ms-form-wizard-step-label .ms-form-wizard-step-text{display:inline-block;vertical-align:middle;position:relative;line-height:24px}.ms-form-wizard .ms-form-wizard-form{padding:24px 16px}.ms-form-wizard .navigation{padding:16px}.ms-form-wizard .navigation .steps{display:flex;align-items:center;justify-content:center;padding:0 16px}.ms-form-wizard .navigation .steps span{width:5px;height:5px;margin:0 4px;border-radius:50%}.ms-form-wizard .navigation .steps span:not(.md-accent-bg){background:rgba(0,0,0,.12)}.ms-form-wizard .navigation .steps span.selected{width:8px;height:8px}body.ms-info-bar-active #main{top:64px}ms-info-bar{display:block;position:relative;width:100%;height:64px;background-color:#e91e63;z-index:99998;box-shadow:0 1px 5px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}ms-info-bar #ms-info-bar-message{padding:8px 16px;line-height:48px;font-size:16px}ms-info-bar #ms-info-bar-message a{overflow:hidden;height:48px;color:#fff}ms-masonry{width:100%;display:block}ms-masonry [ms-masonry-item],ms-masonry ms-masonry-item{transition:transform .3s ease;position:absolute;transform:translate3d(50vw,100vh,0)}ms-material-color-picker md-menu .md-button{font-size:12px}md-menu-content.ms-material-color-picker-menu-content{width:208px;max-width:208px;min-width:208px;padding:0;overflow:hidden}md-menu-content.ms-material-color-picker-menu-content header{height:48px;text-transform:uppercase}md-menu-content.ms-material-color-picker-menu-content header .md-button{display:flex;margin:0}md-menu-content.ms-material-color-picker-menu-content header>span{line-height:13px}md-menu-content.ms-material-color-picker-menu-content .colors{position:relative;width:208px;min-height:258px;height:258px;padding:4px}md-menu-content.ms-material-color-picker-menu-content .colors .color{position:relative;width:46px;height:46px;margin:2px;border-radius:0;cursor:pointer}md-menu-content.ms-material-color-picker-menu-content .colors .color .label{padding:2px;font-size:10px}md-menu-content.ms-material-color-picker-menu-content .colors .color .icon-check{position:absolute;top:2px;right:2px;font-size:16px;opacity:.7}ms-nav{display:block;position:relative;color:rgba(255,255,255,.7);user-select:none;z-index:70}ms-nav ms-nav-item{display:block;position:relative;line-height:48px}ms-nav ms-nav-item.ms-nav-title{line-height:32px;font-size:12px;font-weight:500;margin-top:8px;padding:0 24px;width:100%;color:rgba(255,255,255,.3);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}ms-nav ms-nav-item .ms-nav-button{display:flex;align-self:flex-start;align-items:center;position:relative;cursor:pointer;padding:0 48px 0 24px;color:rgba(255,255,255,.7);text-decoration:none}ms-nav ms-nav-item .ms-nav-button:not(.active):hover{background:rgba(0,0,0,.1);text-decoration:none}ms-nav ms-nav-item .ms-nav-button .ms-nav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .2s ease-in-out .1s}ms-nav ms-nav-item .ms-nav-button .arrow{position:absolute;top:16px;right:24px;margin:0;transition:transform .3s ease-in-out,opacity .2s ease-in-out .1s}ms-nav ms-nav-item .ms-nav-button .ms-nav-badge{position:absolute;top:50%;right:24px;min-width:20px;height:20px;line-height:20px;padding:0 7px;font-size:11px;font-weight:700;border-radius:20px;transform:translateY(-50%);transition:opacity .2s ease-in-out .1s}ms-nav ms-nav-item .ms-nav-button.active{color:#fff!important}ms-nav ms-nav-item .ms-nav-button.active .ms-nav-badge{background:#fff!important;color:rgba(0,0,0,.87)!important}ms-nav ms-nav-item .ms-nav-button.active i{color:#fff}ms-nav ms-nav-item i{color:rgba(255,255,255,.7);margin:0 16px 0 0}ms-nav .ms-nav-toggle ms-nav-toggle-items{display:none;overflow:hidden}ms-nav .ms-nav-toggle ms-nav-toggle-items.expand-animation{transition:height .35s cubic-bezier(.25,.46,.45,.94)}ms-nav .ms-nav-toggle ms-nav-toggle-items.collapse-animation{transition:height .35s cubic-bezier(.25,.46,.45,.94)}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:58px}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:68px}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:78px}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:88px}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:98px}ms-nav .ms-nav-toggle.active>.ms-nav-button{color:#fff}ms-nav .ms-nav-toggle.active>.ms-nav-button a,ms-nav .ms-nav-toggle.active>.ms-nav-button md-icon{color:#fff}ms-nav .ms-nav-toggle[collapsed=false]>.ms-nav-button>.arrow{transform:rotate(90deg)}ms-nav>.ms-nav-toggle[collapsed=false]{background-color:rgba(0,0,0,.12)}@media only screen and (min-width:1280px){.ms-nav-folded #ms-nav-fold-close-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;z-index:998}.ms-nav-folded #ms-nav-fold-open-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:999}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item.ms-nav-title{height:32px}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item.ms-nav-title:before{content:'';display:block;position:relative;top:12px;width:16px;border-top:1px solid rgba(255,255,255,.12)}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item.ms-nav-title span{display:none}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item .ms-nav-button{height:48px}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item .ms-nav-button>.arrow,.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item .ms-nav-button>.ms-nav-badge,.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item .ms-nav-button>.ms-nav-label{opacity:0;visibility:hidden}}.ms-navigation{display:block;position:relative;color:rgba(255,255,255,.7);user-select:none}.ms-navigation li,.ms-navigation ul{padding:0;margin:0}.ms-navigation ul{display:block;overflow:hidden}.ms-navigation ul li{position:relative}.ms-navigation ul li.collapsed ul{display:none}.ms-navigation .animate-height{transition:height .25s cubic-bezier(.25,.46,.45,.94)}.ms-navigation .ms-navigation-node .ms-navigation-item{display:block;position:relative;cursor:pointer;color:rgba(255,255,255,.7)}.ms-navigation .ms-navigation-node .ms-navigation-item:hover{background:rgba(0,0,0,.1)}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button{display:flex;position:relative;width:100%;height:48px;line-height:48px;flex-direction:row;justify-content:flex-start;align-items:center;padding-right:16px;color:rgba(255,255,255,.7);text-decoration:none;white-space:nowrap;overflow:hidden}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button .icon{color:rgba(255,255,255,.7);margin:0 16px 0 0}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button span{white-space:nowrap;overflow:hidden;opacity:1;transition:opacity .25s ease-in-out .1s}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button a{white-space:nowrap;overflow:hidden;opacity:1;transition:opacity .25s ease-in-out .1s}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button .arrow{margin:0;opacity:1;transition:transform .3s ease-in-out,opacity .25s ease-in-out .1s}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button .badge{position:absolute;top:50%;right:16px;min-width:20px;height:20px;line-height:20px;padding:0 7px;font-size:11px;font-weight:700;border-radius:20px;transform:translateY(-50%);transition:opacity .2s ease-in-out .1s}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button.active{color:#fff}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button.active .icon{color:#fff}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button.active .badge{background:#fff!important;color:rgba(0,0,0,.87)!important}.ms-navigation .ms-navigation-node:not(.collapsed)>.ms-navigation-item>.ms-navigation-button .arrow{transform:rotate(90deg)}.ms-navigation .ms-navigation-node.group>.ms-navigation-item{font-size:12px;font-weight:500;margin-top:8px;cursor:auto;background:0 0!important;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ms-navigation .ms-navigation-node.group>.ms-navigation-item>.ms-navigation-button{height:32px;line-height:32px;color:rgba(255,255,255,.3)}.ms-navigation .ms-navigation-node:not(.group).has-children:not(.collapsed){background-color:rgba(0,0,0,.12)}.ms-navigation .ms-navigation-node:not(.group).has-children.collapsing{background-color:rgba(0,0,0,.12)}.ms-navigation .ms-navigation-node:not(.group).has-children .has-children:not(.collapsed){background:0 0}.ms-navigation li .ms-navigation-button{padding-left:24px}.ms-navigation li li .ms-navigation-button{padding-left:56px}.ms-navigation li li li .ms-navigation-button{padding-left:72px}.ms-navigation li li li li .ms-navigation-button{padding-left:88px}.ms-navigation li li li li li .ms-navigation-button{padding-left:104px}.ms-navigation li.group .ms-navigation-button{padding-left:24px}.ms-navigation li.group li .ms-navigation-button{padding-left:24px}.ms-navigation li.group li li .ms-navigation-button{padding-left:56px}.ms-navigation li.group li li li .ms-navigation-button{padding-left:72px}.ms-navigation li.group li li li li .ms-navigation-button{padding-left:88px}#horizontal-navigation{height:64px;min-height:64px;max-height:64px;background:#fff;z-index:54}#horizontal-navigation .ms-navigation-horizontal{display:flex;position:relative;user-select:none}#horizontal-navigation .ms-navigation-horizontal li,#horizontal-navigation .ms-navigation-horizontal ul{padding:0;margin:0;list-style:none}#horizontal-navigation .ms-navigation-horizontal .horizontal{display:flex;flex:1}#horizontal-navigation .ms-navigation-horizontal .horizontal li{position:relative;cursor:pointer}#horizontal-navigation .ms-navigation-horizontal .horizontal li:not(.active):hover{background:rgba(0,0,0,.12)}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button{display:block;float:left;padding:12px 14px}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button .arrow{display:none}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button.active{background:0 0;border-bottom:2px solid}#horizontal-navigation .ms-navigation-horizontal .horizontal>li:last-child{margin-right:0}#horizontal-navigation .ms-navigation-horizontal .horizontal>li li .ms-navigation-horizontal-item .ms-navigation-horizontal-button.active{color:#fff!important}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children ul{display:none;position:absolute;background:#fff;z-index:999;min-width:200px;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);top:0;left:100%}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children:hover>ul{display:block}#horizontal-navigation .ms-navigation-horizontal .horizontal>.has-children>ul{top:100%;left:0}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button{display:flex;align-items:center;width:100%;color:rgba(0,0,0,.87);white-space:nowrap;padding:14px 16px;text-decoration:none}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button .icon{color:rgba(0,0,0,.54);margin-right:8px}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button .badge{min-width:20px;height:20px;line-height:20px;padding:0 7px;font-size:11px;font-weight:700;border-radius:20px;transition:opacity .2s ease-in-out .1s}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button .arrow{margin-left:8px}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button.active .badge{background:#fff!important;color:rgba(0,0,0,.87)!important}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button.active .icon{color:#fff}@media only screen and (min-width:960px){body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .animate-height{transition:none}body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node .ms-navigation-item .ms-navigation-button .icon{margin:0}body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node .ms-navigation-item .ms-navigation-button .arrow,body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node .ms-navigation-item .ms-navigation-button .badge,body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node .ms-navigation-item .ms-navigation-button .title{opacity:0;visibility:hidden}body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node.group>.ms-navigation-item .ms-navigation-button:before{content:'';display:block;position:relative;width:16px;border-top:1px solid rgba(255,255,255,.12)}body.ms-navigation-folded:not(.ms-navigation-folded-open) #ms-navigation-fold-expander{position:absolute;top:0;right:0;bottom:0;left:0;z-index:999}body.ms-navigation-folded #ms-navigation-fold-collapser{position:absolute;top:0;right:0;bottom:0;left:0;z-index:59}}@media only screen and (max-width:960px){body.ms-navigation-horizontal-mobile-menu-active #horizontal-navigation .navigation-toggle{height:64px;margin-right:16px}body.ms-navigation-horizontal-mobile-menu-active #horizontal-navigation .navigation-toggle .md-button{margin:0;width:64px;height:64px}body.ms-navigation-horizontal-mobile-menu-active #horizontal-navigation .ms-navigation-horizontal{display:block!important;background:#fff}#horizontal-navigation{z-index:60}#horizontal-navigation .ms-navigation-horizontal{position:absolute;display:none;top:0;right:0;bottom:0;left:0;padding:0 0 16px 0;z-index:9998;overflow-x:hidden;overflow-y:scroll}#horizontal-navigation .ms-navigation-horizontal .horizontal{flex-direction:column;min-height:100%;width:100%}#horizontal-navigation .ms-navigation-horizontal .horizontal li:not(.active):hover{background:0 0}#horizontal-navigation .ms-navigation-horizontal .horizontal li:not(.active) .ms-navigation-horizontal-item{margin:4px}#horizontal-navigation .ms-navigation-horizontal .horizontal li:not(.active) .ms-navigation-horizontal-item:hover{background:rgba(0,0,0,.12)}#horizontal-navigation .ms-navigation-horizontal .horizontal>li{padding:0 12px}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button{display:flex;float:none}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button .arrow{display:block}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children ul{position:relative;top:0;left:0;box-shadow:none}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children:hover>ul{display:none}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children .expanded>.ms-navigation-horizontal-button .arrow{transform:rotate(90deg)}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children .expanded+ul{display:block;margin-left:16px}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item{min-height:48px;height:48px}}.ms-phonebar{height:64px;font-size:13px}.ms-phonebar .phonebar-container{height:64px;padding:0 8px;max-width:400px}.ms-phonebar .phonebar-container .phonebar{position:relative;overflow-x:scroll}.ms-phonebar .phonebar-container .phonebar>div{height:64px;min-width:44px}.ms-phonebar .phonebar-container .phonebar>div.dragging{cursor:grabbing}.ms-phonebar .phonebar-container .phonebar>div.dragging .md-ripple-container{display:none}.ms-phonebar .phonebar-container .phonebar>div.ghost .shortcut{opacity:.27}.ms-phonebar .phonebar-container.mobile-bar-active{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;z-index:99;max-width:none!important}.ms-phonebar .phonebar-container.mobile-bar-active .phonebar,.ms-phonebar .phonebar-container.mobile-bar-active .toggle-mobile-menu{display:flex!important}.ms-phonebar .phonebar-container.mobile-bar-active .toggle-mobile-menu{margin-left:14px}.ms-phonebar .phonebar-container.mobile-bar-active>div{border-right:1px solid rgba(0,0,0,.12)}.ms-responsive-table-wrapper{overflow-x:auto;overflow-y:hidden}.ms-scroll{overflow:hidden!important}.ms-search-bar{height:64px;font-size:13px}.ms-search-bar .ms-search-bar-collapser,.ms-search-bar .ms-search-bar-expander{cursor:pointer;padding:0 20px;margin:0;width:64px!important;height:64px!important;line-height:64px!important}.ms-search-bar .ms-search-bar-loader{width:64px!important;height:64px!important;line-height:64px!important}.ms-search-bar .ms-search-bar-collapser{display:none}.ms-search-bar #ms-search-bar-input{display:none;min-height:64px;background-color:transparent;font-size:16px}.ms-search-bar .ms-search-bar-results{position:absolute;top:64px;left:0;right:0;overflow-x:hidden;overflow-y:scroll;background:#fff;max-height:300px;box-shadow:0 1px 8px 0 rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.ms-search-bar .ms-search-bar-results .no-results{font-size:18px;padding:16px;color:rgba(0,0,0,.54)}.ms-search-bar .ms-search-bar-results .result{position:relative;height:56px;min-height:56px;max-height:56px;padding:16px;cursor:pointer}.ms-search-bar .ms-search-bar-results .result.selected{background:rgba(0,0,0,.07)}.ms-search-bar .ms-search-bar-results .result .icon-container{min-width:32px;margin-right:8px}.ms-search-bar .ms-search-bar-results .result .icon-container .square{width:6px;height:6px}.ms-search-bar .ms-search-bar-results .result .title{font-size:16px}.ms-search-bar .ms-search-bar-results .result .description{padding-top:6px;font-size:14px}.ms-search-bar.expanded{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;z-index:10}.ms-search-bar.expanded #ms-search-bar-input{display:block}.ms-search-bar.expanded .ms-search-bar-collapser{display:block}body.ms-search-bar-expanded #toolbar{z-index:999!important}@media screen and (max-width:960px){.ms-search-bar-label{padding:0 8px 0 12px}}.ms-shortcuts{height:64px;font-size:13px}.ms-shortcuts .shortcuts-container{height:64px;padding:0 8px;max-width:400px}.ms-shortcuts .shortcuts-container .shortcuts{position:relative;overflow-x:scroll}.ms-shortcuts .shortcuts-container .shortcuts>div{height:64px;min-width:44px}.ms-shortcuts .shortcuts-container .shortcuts>div.dragging{cursor:grabbing}.ms-shortcuts .shortcuts-container .shortcuts>div.dragging .md-ripple-container{display:none}.ms-shortcuts .shortcuts-container .shortcuts>div.ghost .shortcut{opacity:.27}.ms-shortcuts .shortcuts-container .shortcuts>div .shortcut{margin:2px}.ms-shortcuts .shortcuts-container .shortcuts>div .shortcut .first-letter{display:inline-block;vertical-align:middle;font-size:20px;text-transform:uppercase;color:rgba(0,0,0,.54)}.ms-shortcuts .shortcuts-container .shortcut-menu{margin:0}.ms-shortcuts .shortcuts-container.mobile-bar-active{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;z-index:99;max-width:none!important}.ms-shortcuts .shortcuts-container.mobile-bar-active .shortcut-menu,.ms-shortcuts .shortcuts-container.mobile-bar-active .shortcuts,.ms-shortcuts .shortcuts-container.mobile-bar-active .toggle-mobile-menu{display:flex!important}.ms-shortcuts .shortcuts-container.mobile-bar-active .toggle-mobile-menu{margin-left:14px}.ms-shortcuts .shortcuts-container.mobile-bar-active>div{border-right:1px solid rgba(0,0,0,.12)}#ms-shortcut-add-menu{position:relative;width:240px;min-width:240px;max-width:240px}#ms-shortcut-add-menu .add-shortcut-button{width:48px;height:48px;padding:0 12px;margin:0}#ms-shortcut-add-menu .shortcut-search{height:45px;padding:0 8px}#ms-shortcut-add-menu .shortcut-search .search-icon{width:40px;height:40px;line-height:48px}#ms-shortcut-add-menu .shortcut-search .shortcut-loader{padding:10px}#ms-shortcut-add-menu .shortcut-search input{padding:8px}#ms-shortcut-add-menu .results{position:relative;overflow-y:scroll;max-height:233px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.12)}#ms-shortcut-add-menu .results .no-results{font-size:18px;padding:16px;color:rgba(0,0,0,.54)}#ms-shortcut-add-menu .results .result{position:relative;min-height:56px;padding:16px;cursor:pointer}#ms-shortcut-add-menu .results .result.selected{background:rgba(0,0,0,.07)}#ms-shortcut-add-menu .results .result .icon-container{min-width:32px;margin-right:8px}#ms-shortcut-add-menu .results .result .icon-container .square{width:6px;height:6px}#ms-shortcut-add-menu .results .result .title{font-size:16px}#ms-shortcut-add-menu .results .result .description{padding-top:6px;font-size:14px}#splash-screen{display:block;position:absolute;top:0;left:0;right:0;bottom:0;background-color:#3c4252;z-index:99999}#splash-screen.ng-leave{opacity:1;transition:all linear .2s}#splash-screen.ng-leave-active{opacity:0}#splash-screen .center{display:block;width:100%;position:absolute;top:50%;transform:translateY(-50%)}#splash-screen .logo{width:96px;height:96px;line-height:96px;margin:0 auto;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:56px;text-align:center;border-radius:2px;background-color:#039be5;color:#fff;box-shadow:0 2px 14px 0 rgba(0,0,0,.22)}#splash-screen .spinner-wrapper{display:block;position:relative;width:100%;min-height:100px;height:100px}#splash-screen .spinner-wrapper .spinner{position:absolute;overflow:hidden;left:50%;margin-left:-50px;animation:outer-rotate 2.91667s linear infinite}#splash-screen .spinner-wrapper .spinner .inner{width:100px;height:100px;position:relative;animation:sporadic-rotate 5.25s cubic-bezier(.35,0,.25,1) infinite}#splash-screen .spinner-wrapper .spinner .inner .gap{position:absolute;left:49px;right:49px;top:0;bottom:0;border-top:10px solid;box-sizing:border-box}#splash-screen .spinner-wrapper .spinner .inner .left,#splash-screen .spinner-wrapper .spinner .inner .right{position:absolute;top:0;height:100px;width:50px;overflow:hidden}#splash-screen .spinner-wrapper .spinner .inner .left .half-circle,#splash-screen .spinner-wrapper .spinner .inner .right .half-circle{position:absolute;top:0;width:100px;height:100px;box-sizing:border-box;border:10px solid #4285f4;border-bottom-color:transparent;border-radius:50%}#splash-screen .spinner-wrapper .spinner .inner .left{left:0}#splash-screen .spinner-wrapper .spinner .inner .left .half-circle{left:0;border-right-color:transparent;animation:left-wobble 1.3125s cubic-bezier(.35,0,.25,1) infinite;-webkit-animation:left-wobble 1.3125s cubic-bezier(.35,0,.25,1) infinite}#splash-screen .spinner-wrapper .spinner .inner .right{right:0}#splash-screen .spinner-wrapper .spinner .inner .right .half-circle{right:0;border-left-color:transparent;animation:right-wobble 1.3125s cubic-bezier(.35,0,.25,1) infinite;-webkit-animation:right-wobble 1.3125s cubic-bezier(.35,0,.25,1) infinite}@keyframes outer-rotate{0%{transform:rotate(0) scale(.5)}100%{transform:rotate(360deg) scale(.5)}}@keyframes left-wobble{0%,100%{transform:rotate(130deg)}50%{transform:rotate(-5deg)}}@keyframes right-wobble{0%,100%{transform:rotate(-130deg)}50%{transform:rotate(5deg)}}@keyframes sporadic-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}.ms-stepper .ms-stepper-horizontal{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation{height:72px;min-height:72px;max-height:72px;background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item{display:flex;flex-direction:row;align-items:center;position:relative;height:72px;min-height:72px;max-height:72px;line-height:24px;margin:0;padding:24px;border-radius:0;cursor:pointer;font-size:14px;text-transform:none}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:after,.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:before{content:'';display:block;position:absolute;top:50%;width:24px;border-bottom:1px solid rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:before{left:0}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:after{right:0}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:first-child:before{display:none}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:last-child:after{display:none}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.current .title{font-weight:600;color:rgba(0,0,0,.87)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.disabled{cursor:default}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.disabled .step{background:rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.disabled .title{color:rgba(0,0,0,.27)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.disabled .subtitle{color:rgba(0,0,0,.27)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.optional{padding:16px 24px}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item .step{width:24px;min-width:24px;height:24px;border-radius:50%;margin:0 8px 0 16px;color:#fff}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item .step .icon{color:#fff;font-weight:700;line-height:24px!important}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item .title{padding-right:16px;color:rgba(0,0,0,.54)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item .subtitle{font-size:12px;padding-right:16px;color:rgba(0,0,0,.54);line-height:1}.ms-stepper .ms-stepper-horizontal .ms-stepper-steps{padding:24px 16px}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls{padding:0 16px 16px 16px}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots{display:none;align-items:center;justify-content:center;padding:0 16px}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots span{width:5px;height:5px;margin:0 4px;border-radius:50%}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots span:not(.md-accent-bg){background:rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots span.selected{width:8px;height:8px}@media screen and (max-width:600px){.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation{display:none}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots{display:flex}}.ms-stepper .ms-stepper-vertical{position:relative;background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-stepper .ms-stepper-vertical .ms-stepper-vertical-line{display:block;position:absolute;width:1px;top:32px;bottom:32px;left:43px;border-left:1px solid rgba(0,0,0,.12)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps{padding:8px 0}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step{display:block}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item{display:flex;flex-direction:row;align-items:center;position:relative;width:100%;height:72px;min-height:72px;max-height:72px;line-height:24px;margin:0;padding:0 24px;border-radius:0;cursor:pointer;font-size:14px;text-transform:none}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item:first-child:before{display:none}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item:last-child:after{display:none}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item:hover:not(.disabled) .step{background-color:#ececec;border-color:#ececec}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.current .title{font-weight:600;color:rgba(0,0,0,.87)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.disabled{cursor:default}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.disabled .title{color:rgba(0,0,0,.27)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.disabled .subtitle{color:rgba(0,0,0,.27)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.optional{padding:16px 24px}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item .step{width:40px;min-width:40px;height:40px;margin:0 16px 0 0;border-radius:50%;background:#fff;border:8px solid #fff;color:#fff;transition:border-color .4s cubic-bezier(.25,.8,.25,1),background-color .4s cubic-bezier(.25,.8,.25,1)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item .step .icon{font-weight:700;line-height:28px!important}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item .title{padding-right:16px;color:rgba(0,0,0,.54)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item .subtitle{font-size:12px;padding-right:16px;color:rgba(0,0,0,.54);line-height:1}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-step-content{padding:0 24px 16px 64px}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-controls{padding:0 16px 16px 56px}.ms-timeline .ms-timeline-loader{position:relative;display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 auto;background:#fff;font-weight:500;opacity:0;z-index:11;border-radius:50%}.ms-timeline .ms-timeline-loader.show{opacity:1}.ms-timeline .ms-timeline-loader .spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%}.ms-widget .ms-widget-front{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-widget .ms-widget-back{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-widget.sidenav-widget .ms-widget-back,.ms-widget.sidenav-widget .ms-widget-front{box-shadow:none}.ms-widget .flip-to-front{position:absolute;top:0;right:0}.ms-widget .c3{height:100%}.ms-widget .chart-fill-8{margin:0 -8px -8px -8px}.ms-widget .chart-fill-16{margin:0 -16px -16px -16px}.ms-widget .chart-fill-24{margin:0 -24px -24px -24px}.ms-widget .chart-fill-32{margin:0 -32px -32px -32px}.ms-widget .chart-fill-40{margin:0 -40px -40px -40px}.ms-widget .chart-fill-48{margin:0 -48px -48px -48px}.ms-widget .chart-fill-56{margin:0 -56px -56px -56px}.ms-widget .chart-fill-64{margin:0 -64px -64px -64px}.ms-widget .chart-fill-72{margin:0 -72px -72px -72px}.ms-widget .chart-fill-80{margin:0 -80px -80px -80px}.ms-widget{position:relative;font-size:1.3rem;perspective:3000px;padding:12px}.ms-widget .ms-widget-front{display:flex;flex-direction:column;flex:1 1 auto;position:relative;overflow:hidden;visibility:visible;width:100%;opacity:1;z-index:10;border-radius:2px;transition:transform .5s ease-out 0s,visibility 0s ease-in .2s,opacity 0s ease-in .2s;transform:rotateY(0);backface-visibility:hidden}.ms-widget .ms-widget-back{display:block;position:absolute;overflow:hidden;visibility:hidden;opacity:0;z-index:10;top:12px;right:12px;bottom:12px;left:12px;border-radius:2px;transition:transform .5s ease-out 0s,visibility 0s ease-in .2s,opacity 0s ease-in .2s;transform:rotateY(180deg);backface-visibility:hidden}.ms-widget .md-button{margin:0}.ms-widget .md-button.md-icon-button{margin:0}.ms-widget.flipped .ms-widget-front{visibility:hidden;opacity:0;transform:rotateY(180deg)}.ms-widget.flipped .ms-widget-back{display:block;visibility:visible;opacity:1;transform:rotateY(360deg)}.ms-widget.sidenav-widget{padding:0}.ms-widget.ar-2-1 .widget{padding:0;position:relative}.ms-widget.ar-2-1 .widget:before{display:block;content:"";width:100%;padding-top:50%}.ms-widget.ar-2-1 .widget>.widget{position:absolute;top:8px;left:8px;right:8px;bottom:8px}.ms-widget.ar-1-1 .widget{padding:0;position:relative}.ms-widget.ar-1-1 .widget:before{display:block;content:"";width:100%;padding-top:100%}.ms-widget.ar-1-1 .widget>.widget{position:absolute;top:8px;left:8px;right:8px;bottom:8px}.ms-theme-options .ms-theme-options-button{position:absolute;top:160px;right:0;z-index:50;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);width:48px;height:48px;line-height:48px;text-align:center;cursor:pointer;border-radius:0;margin:0;pointer-events:auto;opacity:.75}.ms-theme-options .ms-theme-options-button:hover{opacity:1}.ms-theme-options md-sidenav{width:384px;min-width:384px;max-width:384px}.ms-theme-options md-sidenav .ms-theme-options-list{background:#fff;z-index:12;pointer-events:auto}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option{padding:16px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button{width:160px;max-width:160px;margin:8px 8px 16px 8px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button.md-checked ._md-label img,.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button:hover ._md-label img{opacity:1;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button ._md-container{display:none}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button ._md-label{margin-left:0}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button ._md-label img{opacity:.8;margin-bottom:8px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.color-palettes md-menu-item{max-width:192px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.color-palettes .theme-button{border-bottom:16px solid;text-align:left;width:101px;height:88px;box-shadow:none;opacity:.8}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.color-palettes .theme-button.active,.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.color-palettes .theme-button:hover{opacity:1;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option md-radio-button{margin:8px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option .option-title{font-size:14px;font-weight:500;padding:0 8px 12px 8px}#error-404 .content{width:90%;max-width:512px;margin-top:128px}#error-404 .content .error-code{font-size:112px;text-align:center;line-height:1;margin-bottom:16px;font-weight:500}#error-404 .content .message{font-size:24px;text-align:center;color:rgba(0,0,0,.54)}#error-404 .content .search{width:100%;height:56px;line-height:56px;margin:48px auto 16px auto;padding:16px;background:#fff}#error-404 .content .search input{padding:0 0 0 16px}#error-404 .content .back-link{font-size:15px;text-align:center}#error-500 .content{width:90%;max-width:512px;margin-top:128px}#error-500 .content .error-code{font-size:112px;line-height:1;text-align:center;margin-bottom:16px;font-weight:500}#error-500 .content .message{font-size:24px;text-align:center;color:rgba(0,0,0,.54)}#error-500 .content .sub-message{font-size:17px;text-align:center;color:rgba(0,0,0,.54);margin:16px auto 48px auto}#error-500 .content .report-link{text-align:center;font-size:15px}#login{height:100%;background:url(/assets/images/backgrounds/march.jpg) no-repeat;background-size:cover}#login #login-form-wrapper{flex:1 0 auto;padding:32px}#login #login-form-wrapper #login-form{width:384px;max-width:384px;padding:32px;background:#fff;text-align:center}#login #login-form-wrapper #login-form .logo{width:128px;height:128px;line-height:128px;font-size:86px;font-weight:500;margin:32px auto;color:#fff;border-radius:2px}#login #login-form-wrapper #login-form .title{font-size:17px;margin:16px 0 32px 0}#login #login-form-wrapper #login-form form{width:100%;text-align:left}#login #login-form-wrapper #login-form form md-checkbox{margin:0}#login #login-form-wrapper #login-form form .remember-forgot-password{font-size:13px;margin-top:8px}#login #login-form-wrapper #login-form form .remember-forgot-password .remember-me{margin-bottom:16px}#login #login-form-wrapper #login-form form .remember-forgot-password .forgot-password{font-size:13px;font-weight:500;margin-bottom:16px}#login #login-form-wrapper #login-form form .submit-button{width:220px;margin:16px auto;display:block}#login #login-form-wrapper #login-form .register{margin:32px auto 24px auto;width:250px;font-weight:500}#login #login-form-wrapper #login-form .register .text{margin-right:8px}#login #login-form-wrapper #login-form .separator{font-size:15px;font-weight:600;margin:24px auto 16px auto;position:relative;overflow:hidden;width:100px;color:rgba(0,0,0,.54)}#login #login-form-wrapper #login-form .separator .text{display:inline-block;vertical-align:baseline;position:relative;padding:0 8px;z-index:9999}#login #login-form-wrapper #login-form .separator .text:after,#login #login-form-wrapper #login-form .separator .text:before{content:'';display:block;width:30px;position:absolute;top:10px;border-top:1px solid rgba(0,0,0,.12)}#login #login-form-wrapper #login-form .separator .text:before{right:100%}#login #login-form-wrapper #login-form .separator .text:after{left:100%}#login #login-form-wrapper #login-form .md-button.facebook,#login #login-form-wrapper #login-form .md-button.google{width:192px;text-transform:none;color:#fff;font-size:13px}#login #login-form-wrapper #login-form .md-button.facebook md-icon,#login #login-form-wrapper #login-form .md-button.google md-icon{color:#fff;margin:0 8px 0 0}#login #login-form-wrapper #login-form .md-button.google{background-color:#d73d32}#login #login-form-wrapper #login-form .md-button.facebook{background-color:#3f5c9a}@media screen and (max-width:600px){#login #login-form-wrapper{padding:16px}#login #login-form-wrapper #login-form{padding:24px;width:100%}#login #login-form-wrapper #login-form form .md-button{width:90%}#login #login-form-wrapper #login-form .md-button.facebook,#login #login-form-wrapper #login-form .md-button.google{width:80%}}md-dialog.extractedReport-dialog{max-width:720px;width:720px}md-dialog.extractedReport-dialog md-dialog-content{display:block;position:relative}md-dialog.extractedReport-dialog md-toolbar .title{font-size:17px}md-dialog.extractedReport-dialog md-input-container textarea{min-height:150px}md-dialog.extractedReport-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.extractedReport-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.extractedReport-dialog .date-container{padding:16px 0 24px 0}md-dialog.extractedReport-dialog .error-list{font-size:13px}md-dialog.extractedReport-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.extractedReport-dialog .error-list .error .message{font-weight:500}md-dialog.extractedReport-dialog .error-list .error .md-button{margin:0}md-dialog.extractedReport-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.extractedReport-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#extractedReports{position:relative}#extractedReports>.header{height:76px;min-height:76px;max-height:76px}#extractedReports>.header .logo .logo-icon{margin:0 16px 0 0}#extractedReports>.header .logo .logo-text{font-size:24px}#extractedReports>.header md-icon{color:#fff}#extractedReports>.header .search-input-wrapper{position:relative}#extractedReports>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#extractedReports>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#extractedReports>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#extractedReports>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#extractedReports>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#extractedReports>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#extractedReports>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#extractedReports>.header.selected-bar .close-button-wrapper{width:244px}#extractedReports>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#extractedReports>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#extractedReports>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#extractedReports #add-extractedReport-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.metric-dialog{max-width:720px;width:720px}md-dialog.metric-dialog md-dialog-content{display:block;position:relative}md-dialog.metric-dialog md-toolbar .title{font-size:17px}md-dialog.metric-dialog md-input-container textarea{min-height:150px}md-dialog.metric-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.metric-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.metric-dialog .date-container{padding:16px 0 24px 0}md-dialog.metric-dialog .error-list{font-size:13px}md-dialog.metric-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.metric-dialog .error-list .error .message{font-weight:500}md-dialog.metric-dialog .error-list .error .md-button{margin:0}md-dialog.metric-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.metric-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#metrics{position:relative}#metrics>.header{height:76px;min-height:76px;max-height:76px}#metrics>.header .logo .logo-icon{margin:0 16px 0 0}#metrics>.header .logo .logo-text{font-size:24px}#metrics>.header md-icon{color:#fff}#metrics>.header .search-input-wrapper{position:relative}#metrics>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#metrics>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#metrics>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#metrics>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#metrics>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#metrics>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#metrics>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#metrics>.header.selected-bar .close-button-wrapper{width:244px}#metrics>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#metrics>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#metrics>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#metrics #add-metric-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.report-dialog{max-width:720px;width:720px}md-dialog.report-dialog md-dialog-content{display:block;position:relative}md-dialog.report-dialog md-toolbar .title{font-size:17px}md-dialog.report-dialog md-input-container textarea{min-height:150px}md-dialog.report-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.report-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.report-dialog .date-container{padding:16px 0 24px 0}md-dialog.report-dialog .error-list{font-size:13px}md-dialog.report-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.report-dialog .error-list .error .message{font-weight:500}md-dialog.report-dialog .error-list .error .md-button{margin:0}md-dialog.report-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.report-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.report-dialog{max-width:720px;width:720px}md-dialog.report-dialog md-dialog-content{display:block;position:relative}md-dialog.report-dialog md-toolbar .title{font-size:17px}md-dialog.report-dialog md-input-container textarea{min-height:150px}md-dialog.report-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.report-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.report-dialog .date-container{padding:16px 0 24px 0}md-dialog.report-dialog .error-list{font-size:13px}md-dialog.report-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.report-dialog .error-list .error .message{font-weight:500}md-dialog.report-dialog .error-list .error .md-button{margin:0}md-dialog.report-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.report-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.reportField-dialog{max-width:720px;width:720px}md-dialog.reportField-dialog md-dialog-content{display:block;position:relative}md-dialog.reportField-dialog md-toolbar .title{font-size:17px}md-dialog.reportField-dialog md-input-container textarea{min-height:150px}md-dialog.reportField-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.reportField-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.reportField-dialog .date-container{padding:16px 0 24px 0}md-dialog.reportField-dialog .error-list{font-size:13px}md-dialog.reportField-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.reportField-dialog .error-list .error .message{font-weight:500}md-dialog.reportField-dialog .error-list .error .md-button{margin:0}md-dialog.reportField-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.reportField-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#analytics-report .header{height:120px;min-height:120px;max-height:120px}#analytics-report .header .goto-reports-button{margin-right:16px}#analytics-report .header .report-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#analytics-report .header .report-image img{height:100%;width:auto;max-width:none}#analytics-report .header .subtitle{margin:6px 0 0 0}#analytics-report .report-detail-form-container{padding:24px;margin-bottom:24px}#analytics-report .report-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#analytics-report .report-detail-form-container .handle{cursor:move}#analytics-report .report-detail-form-container md-input-container md-switch{margin:0!important}#analytics-report .report-detail-form-container #report-image-uploader{position:relative}#analytics-report .report-detail-form-container #report-image-uploader.dropping .drop-text{display:flex}#analytics-report .report-detail-form-container #report-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#analytics-report .report-detail-form-container #report-image-uploader .upload-button{margin-bottom:16px}#analytics-report .report-detail-form-container #report-image-uploader .report-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#analytics-report .report-detail-form-container #report-image-uploader .report-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#analytics-report .report-detail-form-container #report-image-uploader .report-image .media{max-height:100%}md-dialog.report-dialog{max-width:720px;width:720px}md-dialog.report-dialog md-dialog-content{display:block;position:relative}md-dialog.report-dialog md-toolbar .title{font-size:17px}md-dialog.report-dialog md-input-container textarea{min-height:150px}md-dialog.report-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.report-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.report-dialog .date-container{padding:16px 0 24px 0}md-dialog.report-dialog .error-list{font-size:13px}md-dialog.report-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.report-dialog .error-list .error .message{font-weight:500}md-dialog.report-dialog .error-list .error .md-button{margin:0}md-dialog.report-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.report-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#reports{position:relative}#reports>.header{height:76px;min-height:76px;max-height:76px}#reports>.header .logo .logo-icon{margin:0 16px 0 0}#reports>.header .logo .logo-text{font-size:24px}#reports>.header md-icon{color:#fff}#reports>.header .search-input-wrapper{position:relative}#reports>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#reports>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#reports>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#reports>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#reports>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#reports>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#reports>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#reports>.header.selected-bar .close-button-wrapper{width:244px}#reports>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#reports>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#reports>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}md-dialog.report-dialog{max-width:720px;width:720px}md-dialog.report-dialog md-dialog-content{display:block;position:relative}md-dialog.report-dialog md-toolbar .title{font-size:17px}md-dialog.report-dialog md-input-container textarea{min-height:150px}md-dialog.report-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.report-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.report-dialog .date-container{padding:16px 0 24px 0}md-dialog.report-dialog .error-list{font-size:13px}md-dialog.report-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.report-dialog .error-list .error .message{font-weight:500}md-dialog.report-dialog .error-list .error .md-button{margin:0}md-dialog.report-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.report-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.odbc-dialog{max-width:720px;width:720px}md-dialog.odbc-dialog md-dialog-content{display:block;position:relative}md-dialog.odbc-dialog md-toolbar .title{font-size:17px}md-dialog.odbc-dialog md-input-container textarea{min-height:150px}md-dialog.odbc-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.odbc-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.odbc-dialog .date-container{padding:16px 0 24px 0}md-dialog.odbc-dialog .error-list{font-size:13px}md-dialog.odbc-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.odbc-dialog .error-list .error .message{font-weight:500}md-dialog.odbc-dialog .error-list .error .md-button{margin:0}md-dialog.odbc-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.odbc-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#odbcs{position:relative}#odbcs>.header{height:76px;min-height:76px;max-height:76px}#odbcs>.header .logo .logo-icon{margin:0 16px 0 0}#odbcs>.header .logo .logo-text{font-size:24px}#odbcs>.header md-icon{color:#fff}#odbcs>.header .search-input-wrapper{position:relative}#odbcs>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#odbcs>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#odbcs>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#odbcs>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#odbcs>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#odbcs>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#odbcs>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#odbcs>.header.selected-bar .close-button-wrapper{width:244px}#odbcs>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#odbcs>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#odbcs>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#odbcs #add-odbc-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.project-dialog{max-width:720px;width:720px}md-dialog.project-dialog md-dialog-content{display:block;position:relative}md-dialog.project-dialog md-toolbar .title{font-size:17px}md-dialog.project-dialog md-input-container textarea{min-height:150px}md-dialog.project-dialog .date-container{padding:16px 0 24px 0}md-dialog.project-dialog .error-list{font-size:13px}md-dialog.project-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.project-dialog .error-list .error .message{font-weight:500}md-dialog.project-dialog .error-list .error .md-button{margin:0}md-dialog.project-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.project-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}md-dialog.project-dialog .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#callysquare-project .header{height:120px;min-height:120px;max-height:120px}#callysquare-project .header .goto-projects-button{margin-right:16px}#callysquare-project .header .project-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#callysquare-project .header .project-image img{height:100%;width:auto;max-width:none}#callysquare-project .header .subtitle{margin:6px 0 0 0}#callysquare-project .project-detail-form-container{padding:24px;margin-bottom:24px}#callysquare-project .project-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#callysquare-project .project-detail-form-container #project-image-uploader{position:relative}#callysquare-project .project-detail-form-container #project-image-uploader.dropping .drop-text{display:flex}#callysquare-project .project-detail-form-container #project-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#callysquare-project .project-detail-form-container #project-image-uploader .upload-button{margin-bottom:16px}#callysquare-project .project-detail-form-container #project-image-uploader .project-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#callysquare-project .project-detail-form-container #project-image-uploader .project-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#callysquare-project .project-detail-form-container #project-image-uploader .project-image .media{max-height:100%}#callysquare-project>.callysquare-content{position:absolute;top:120px;bottom:0;left:0;right:0}#projects{position:relative}#projects>.header{height:76px;min-height:76px;max-height:76px}#projects>.header .logo .logo-icon{margin:0 16px 0 0}#projects>.header .logo .logo-text{font-size:24px}#projects>.header md-icon{color:#fff}#projects>.header .search-input-wrapper{position:relative}#projects>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#projects>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#projects>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#projects>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#projects>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#projects>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#projects>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#projects>.header.selected-bar .close-button-wrapper{width:244px}#projects>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#projects>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#projects>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#projects #add-project-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.squareRecording-dialog{max-width:720px;width:720px}md-dialog.squareRecording-dialog md-dialog-content{display:block;position:relative}md-dialog.squareRecording-dialog md-toolbar .title{font-size:17px}md-dialog.squareRecording-dialog md-input-container textarea{min-height:150px}md-dialog.squareRecording-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.squareRecording-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.squareRecording-dialog .date-container{padding:16px 0 24px 0}md-dialog.squareRecording-dialog .error-list{font-size:13px}md-dialog.squareRecording-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.squareRecording-dialog .error-list .error .message{font-weight:500}md-dialog.squareRecording-dialog .error-list .error .md-button{margin:0}md-dialog.squareRecording-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.squareRecording-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#squareRecordings{position:relative}#squareRecordings>.header{height:76px;min-height:76px;max-height:76px}#squareRecordings>.header .logo .logo-icon{margin:0 16px 0 0}#squareRecordings>.header .logo .logo-text{font-size:24px}#squareRecordings>.header md-icon{color:#fff}#squareRecordings>.header .search-input-wrapper{position:relative}#squareRecordings>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#squareRecordings>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#squareRecordings>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#squareRecordings>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#squareRecordings>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#squareRecordings>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#squareRecordings>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#squareRecordings>.header.selected-bar .close-button-wrapper{width:244px}#squareRecordings>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#squareRecordings>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#squareRecordings>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#squareRecordings #add-squareRecording-button{position:fixed;bottom:8px;right:8px;padding:0}#chatQueues{position:relative}#chatQueues>.header{height:76px;min-height:76px;max-height:76px}#chatQueues>.header .logo .logo-icon{margin:0 16px 0 0}#chatQueues>.header .logo .logo-text{font-size:24px}#chatQueues>.header md-icon{color:#fff}#chatQueues>.header .search-input-wrapper{position:relative}#chatQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#chatQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#chatQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#chatQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#chatQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#chatQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#chatQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#chatQueues>.header.selected-bar .close-button-wrapper{width:244px}#chatQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#chatQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#chatQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#chatQueues #add-chatQueue-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.chatQueue-dialog{max-width:720px;width:720px}md-dialog.chatQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.chatQueue-dialog md-toolbar .title{font-size:17px}md-dialog.chatQueue-dialog md-input-container textarea{min-height:150px}md-dialog.chatQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.chatQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.chatQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.chatQueue-dialog .error-list{font-size:13px}md-dialog.chatQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.chatQueue-dialog .error-list .error .message{font-weight:500}md-dialog.chatQueue-dialog .error-list .error .md-button{margin:0}md-dialog.chatQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.chatQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#chat-chatQueue .header{height:120px;min-height:120px;max-height:120px}#chat-chatQueue .header .goto-chatQueues-button{margin-right:16px}#chat-chatQueue .header .chatQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#chat-chatQueue .header .chatQueue-image img{height:100%;width:auto;max-width:none}#chat-chatQueue .header .subtitle{margin:6px 0 0 0}#chat-chatQueue .chatQueue-detail-form-container{padding:24px;margin-bottom:24px}#chat-chatQueue .chatQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#chat-chatQueue .chatQueue-detail-form-container .handle{cursor:move}#chat-chatQueue .chatQueue-detail-form-container md-input-container md-switch{margin:0!important}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader{position:relative}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader.dropping .drop-text{display:flex}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .upload-button{margin-bottom:16px}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .chatQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .chatQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .chatQueue-image .media{max-height:100%}#chatWebsites{position:relative}#chatWebsites>.header{height:76px;min-height:76px;max-height:76px}#chatWebsites>.header .logo .logo-icon{margin:0 16px 0 0}#chatWebsites>.header .logo .logo-text{font-size:24px}#chatWebsites>.header md-icon{color:#fff}#chatWebsites>.header .search-input-wrapper{position:relative}#chatWebsites>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#chatWebsites>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#chatWebsites>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#chatWebsites>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#chatWebsites>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#chatWebsites>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#chatWebsites>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#chatWebsites>.header.selected-bar .close-button-wrapper{width:244px}#chatWebsites>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#chatWebsites>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#chatWebsites>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#chatWebsites #add-chatWebsite-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.chatWebsite-dialog{max-width:720px;width:720px}md-dialog.chatWebsite-dialog md-dialog-content{display:block;position:relative}md-dialog.chatWebsite-dialog md-toolbar .title{font-size:17px}md-dialog.chatWebsite-dialog md-input-container textarea{min-height:150px}md-dialog.chatWebsite-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.chatWebsite-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.chatWebsite-dialog .date-container{padding:16px 0 24px 0}md-dialog.chatWebsite-dialog .error-list{font-size:13px}md-dialog.chatWebsite-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.chatWebsite-dialog .error-list .error .message{font-weight:500}md-dialog.chatWebsite-dialog .error-list .error .md-button{margin:0}md-dialog.chatWebsite-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.chatWebsite-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.chatDisposition-dialog{max-width:720px;width:720px}md-dialog.chatDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.chatDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.chatDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.chatDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.chatDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.chatDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.chatDisposition-dialog .error-list{font-size:13px}md-dialog.chatDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.chatDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.chatDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.chatDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.chatDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#chat-chatWebsite .header{height:120px;min-height:120px;max-height:120px}#chat-chatWebsite .header .goto-chatWebsites-button{margin-right:16px}#chat-chatWebsite .header .chatWebsite-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#chat-chatWebsite .header .chatWebsite-image img{height:100%;width:auto;max-width:none}#chat-chatWebsite .header .subtitle{margin:6px 0 0 0}#chat-chatWebsite .chatWebsite-detail-form-container{padding:24px;margin-bottom:24px}#chat-chatWebsite .chatWebsite-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#chat-chatWebsite .chatWebsite-detail-form-container .handle{cursor:move}#chat-chatWebsite .chatWebsite-detail-form-container md-input-container md-switch{margin:0!important}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader{position:relative}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader.dropping .drop-text{display:flex}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .upload-button{margin-bottom:16px}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .chatWebsite-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .chatWebsite-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .chatWebsite-image .media{max-height:100%}#companies{position:relative}#companies>.header{height:76px;min-height:76px;max-height:76px}#companies>.header .logo .logo-icon{margin:0 16px 0 0}#companies>.header .logo .logo-text{font-size:24px}#companies>.header md-icon{color:#fff}#companies>.header .search-input-wrapper{position:relative}#companies>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#companies>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#companies>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#companies>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#companies>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#companies>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#companies>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#companies>.header.selected-bar .close-button-wrapper{width:244px}#companies>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#companies>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#companies>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#companies #add-company-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.company-dialog{max-width:720px;width:720px}md-dialog.company-dialog md-dialog-content{display:block;position:relative}md-dialog.company-dialog md-toolbar .title{font-size:17px}md-dialog.company-dialog md-input-container textarea{min-height:150px}md-dialog.company-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.company-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.company-dialog .date-container{padding:16px 0 24px 0}md-dialog.company-dialog .error-list{font-size:13px}md-dialog.company-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.company-dialog .error-list .error .message{font-weight:500}md-dialog.company-dialog .error-list .error .md-button{margin:0}md-dialog.company-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.company-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#contactmanager-company .header{height:120px;min-height:120px;max-height:120px}#contactmanager-company .header .goto-companies-button{margin-right:16px}#contactmanager-company .header .company-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#contactmanager-company .header .company-image img{height:100%;width:auto;max-width:none}#contactmanager-company .header .subtitle{margin:6px 0 0 0}#contactmanager-company .company-detail-form-container{padding:24px;margin-bottom:24px}#contactmanager-company .company-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#contactmanager-company .company-detail-form-container .handle{cursor:move}#contactmanager-company .company-detail-form-container md-input-container md-switch{margin:0!important}#contactmanager-company .company-detail-form-container #company-image-uploader{position:relative}#contactmanager-company .company-detail-form-container #company-image-uploader.dropping .drop-text{display:flex}#contactmanager-company .company-detail-form-container #company-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#contactmanager-company .company-detail-form-container #company-image-uploader .upload-button{margin-bottom:16px}#contactmanager-company .company-detail-form-container #company-image-uploader .company-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#contactmanager-company .company-detail-form-container #company-image-uploader .company-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#contactmanager-company .company-detail-form-container #company-image-uploader .company-image .media{max-height:100%}#cm-contacts{position:relative}#cm-contacts>.header{height:76px;min-height:76px;max-height:76px}#cm-contacts>.header .logo .logo-icon{margin:0 16px 0 0}#cm-contacts>.header .logo .logo-text{font-size:24px}#cm-contacts>.header md-icon{color:#fff}#cm-contacts>.header .search-input-wrapper{position:relative}#cm-contacts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#cm-contacts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#cm-contacts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#cm-contacts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#cm-contacts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#cm-contacts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#cm-contacts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#cm-contacts>.header.selected-bar .close-button-wrapper{width:244px}#cm-contacts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#cm-contacts>.content>md-sidenav{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);padding:0}#cm-contacts>.content>md-sidenav .selected-list{background-color:rgba(158,158,158,.2)}#cm-contacts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#cm-contacts>.content .main .contacts-list{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);position:relative;margin-top:8px;padding-bottom:0}#cm-contacts>.content .main .contacts-list .md-subheader{box-shadow:0 1px 1px 0 rgba(0,0,0,.14);border-bottom:1px solid rgba(0,0,0,.14)}#cm-contacts>.content .main .contacts-list .md-subheader ._md-subheader-inner{padding:16px}#cm-contacts>.content .main .contacts-list .md-subheader .contacts-count{padding-left:4px}#cm-contacts>.content .main .contacts-list .md-subheader .list-title{margin-right:4px}#cm-contacts>.content .main .contacts-list .md-subheader .edit-group-form .editable-controls{display:flex;flex-direction:row;align-items:center;justify-content:flex-start}#cm-contacts>.content .main .contacts-list .md-subheader .edit-group-form .editable-controls .editable-input{border:1px solid rgba(0,0,0,.2);padding:4px 6px;margin-right:6px;font-size:13px}#cm-contacts>.content .main .contacts-list .md-subheader .edit-group-form .edit-group-button{margin:0}#cm-contacts>.content .main .contacts-list .md-subheader .edit-group-form .md-button{margin:0;margin:0;padding:0;height:32px;min-height:32px;line-height:32px;width:32px}#cm-contacts>.content .main .contacts-list .contact-item{position:absolute;right:0;left:0;width:100%;box-shadow:0 1px 1px 0 rgba(0,0,0,.14);background:#fff;transition:transform .2s ease-out;will-change:transform}#cm-contacts>.content .main .contacts-list .contact-item:last-of-type{margin-bottom:24px}#cm-contacts>.content .main .contacts-list .contact-item.ng-leave{transform:translateY(0);display:none}#cm-contacts>.content .main .contacts-list .contact-item.ng-leave.ng-leave-active{transform:translateY(-100%)}#cm-contacts>.content .main .contacts-list .contact-item.ng-hide{display:none}#cm-contacts>.content .main .contacts-list .contact-item.ng-hide-add-active,#cm-contacts>.content .main .contacts-list .contact-item.ng-hide-remove-active{display:block;transition-property:all}#cm-contacts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#cm-contacts md-fab-speed-dial .text-capitalize{text-transform:capitalize}#cm-contacts md-fab-speed-dial .md-fab.md-focused,#cm-contacts md-fab-speed-dial .md-fab:hover{background-color:#000!important}#cm-contacts md-fab-speed-dial p.note{font-size:1.2rem}#cm-contacts md-fab-speed-dial .lock-size{min-width:300px;min-height:300px;width:300px;height:300px;margin-left:auto;margin-right:auto}#cm-contacts #add-contact-button{position:fixed;bottom:8px;right:8px;padding:0}@media screen and (min-width:1280px){#cm-contacts>.content .main{left:268px}}md-dialog.cm-contact-dialog{max-width:720px;width:720px}md-dialog.cm-contact-dialog md-dialog-content{display:block;position:relative}md-dialog.cm-contact-dialog md-toolbar .title{font-size:17px}md-dialog.cm-contact-dialog md-input-container textarea{min-height:150px}md-dialog.cm-contact-dialog .date-container{padding:16px 0 24px 0}md-dialog.cm-contact-dialog .error-list{font-size:13px}md-dialog.cm-contact-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.cm-contact-dialog .error-list .error .message{font-weight:500}md-dialog.cm-contact-dialog .error-list .error .md-button{margin:0}md-dialog.cm-contact-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.cm-contact-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.cm-contact-dialog{max-width:720px;width:720px}md-dialog.cm-contact-dialog md-dialog-content{display:block;position:relative}md-dialog.cm-contact-dialog md-toolbar .title{font-size:17px}md-dialog.cm-contact-dialog md-input-container textarea{min-height:150px}md-dialog.cm-contact-dialog .date-container{padding:16px 0 24px 0}md-dialog.cm-contact-dialog .error-list{font-size:13px}md-dialog.cm-contact-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.cm-contact-dialog .error-list .error .message{font-weight:500}md-dialog.cm-contact-dialog .error-list .error .md-button{margin:0}md-dialog.cm-contact-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.cm-contact-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.hopper-dialog{max-width:720px;width:720px}md-dialog.hopper-dialog md-dialog-content{display:block;position:relative}md-dialog.hopper-dialog md-toolbar .title{font-size:17px}md-dialog.hopper-dialog md-input-container textarea{min-height:150px}md-dialog.hopper-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.hopper-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.hopper-dialog .date-container{padding:16px 0 24px 0}md-dialog.hopper-dialog .error-list{font-size:13px}md-dialog.hopper-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.hopper-dialog .error-list .error .message{font-weight:500}md-dialog.hopper-dialog .error-list .error .md-button{margin:0}md-dialog.hopper-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.hopper-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#cm-contact .pointer{cursor:pointer}#cm-contact .header{height:120px;min-height:120px;max-height:120px}#cm-contact .header .goto-contacts-button{margin-right:16px}#cm-contact .header .contact-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#cm-contact .header .contact-image img{height:100%;width:auto;max-width:none}#cm-contact .header .subtitle{margin:6px 0 0 0}#cm-contact .contact-detail-form-container{padding:24px;margin-bottom:24px}#cm-contact .contact-detail-form-container md-input-container:not(.md-input-invalid)>md-icon.email{color:green}#cm-contact .contact-detail-form-container md-input-container:not(.md-input-invalid)>md-icon.firstname{color:#1e90ff}#cm-contact .contact-detail-form-container md-input-container.md-input-invalid>md-icon.email,#cm-contact .contact-detail-form-container md-input-container.md-input-invalid>md-icon.firstname{color:red}#cm-contact .contact-detail-form-container .hint{position:absolute;left:2px;right:auto;bottom:7px;font-size:12px;line-height:14px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.cm-contact-dialog{max-width:720px;width:720px}md-dialog.cm-contact-dialog md-dialog-content{display:block;position:relative}md-dialog.cm-contact-dialog md-toolbar .title{font-size:17px}md-dialog.cm-contact-dialog md-input-container textarea{min-height:150px}md-dialog.cm-contact-dialog .date-container{padding:16px 0 24px 0}md-dialog.cm-contact-dialog .error-list{font-size:13px}md-dialog.cm-contact-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.cm-contact-dialog .error-list .error .message{font-weight:500}md-dialog.cm-contact-dialog .error-list .error .md-button{margin:0}md-dialog.cm-contact-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.cm-contact-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.upload-dialog{max-width:720px;width:720px}md-dialog.upload-dialog md-dialog-content{display:block;position:relative}md-dialog.upload-dialog md-toolbar .title{font-size:17px}md-dialog.upload-dialog md-input-container textarea{min-height:150px}md-dialog.upload-dialog .date-container{padding:16px 0 24px 0}md-dialog.upload-dialog .error-list{font-size:13px}md-dialog.upload-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.upload-dialog .error-list .error .message{font-weight:500}md-dialog.upload-dialog .error-list .error .md-button{margin:0}md-dialog.upload-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.upload-dialog .contact-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}md-dialog.upload-dialog .contact-image img{height:100%;width:auto;max-width:none}md-dialog.upload-dialog .contact-image .media{max-height:100%}md-dialog.upload-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.globalCustomField-dialog{max-width:720px;width:720px}md-dialog.globalCustomField-dialog md-dialog-content{display:block;position:relative}md-dialog.globalCustomField-dialog md-toolbar .title{font-size:17px}md-dialog.globalCustomField-dialog md-input-container textarea{min-height:150px}md-dialog.globalCustomField-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.globalCustomField-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.globalCustomField-dialog .date-container{padding:16px 0 24px 0}md-dialog.globalCustomField-dialog .error-list{font-size:13px}md-dialog.globalCustomField-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.globalCustomField-dialog .error-list .error .message{font-weight:500}md-dialog.globalCustomField-dialog .error-list .error .md-button{margin:0}md-dialog.globalCustomField-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.globalCustomField-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#globalCustomFields{position:relative}#globalCustomFields>.header{height:76px;min-height:76px;max-height:76px}#globalCustomFields>.header .logo .logo-icon{margin:0 16px 0 0}#globalCustomFields>.header .logo .logo-text{font-size:24px}#globalCustomFields>.header md-icon{color:#fff}#globalCustomFields>.header .search-input-wrapper{position:relative}#globalCustomFields>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#globalCustomFields>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#globalCustomFields>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#globalCustomFields>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#globalCustomFields>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#globalCustomFields>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#globalCustomFields>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#globalCustomFields>.header.selected-bar .close-button-wrapper{width:244px}#globalCustomFields>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#globalCustomFields>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#globalCustomFields>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#globalCustomFields #add-globalCustomField-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.list-dialog{max-width:720px;width:720px}md-dialog.list-dialog md-dialog-content{display:block;position:relative}md-dialog.list-dialog md-toolbar .title{font-size:17px}md-dialog.list-dialog md-input-container textarea{min-height:150px}md-dialog.list-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.list-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.list-dialog .date-container{padding:16px 0 24px 0}md-dialog.list-dialog .error-list{font-size:13px}md-dialog.list-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.list-dialog .error-list .error .message{font-weight:500}md-dialog.list-dialog .error-list .error .md-button{margin:0}md-dialog.list-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.list-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.customField-dialog{max-width:720px;width:720px}md-dialog.customField-dialog md-dialog-content{display:block;position:relative}md-dialog.customField-dialog md-toolbar .title{font-size:17px}md-dialog.customField-dialog md-input-container textarea{min-height:150px}md-dialog.customField-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.customField-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.customField-dialog .date-container{padding:16px 0 24px 0}md-dialog.customField-dialog .error-list{font-size:13px}md-dialog.customField-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.customField-dialog .error-list .error .message{font-weight:500}md-dialog.customField-dialog .error-list .error .md-button{margin:0}md-dialog.customField-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.customField-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#contactmanager-list .header{height:120px;min-height:120px;max-height:120px}#contactmanager-list .header .goto-lists-button{margin-right:16px}#contactmanager-list .header .list-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#contactmanager-list .header .list-image img{height:100%;width:auto;max-width:none}#contactmanager-list .header .subtitle{margin:6px 0 0 0}#contactmanager-list .list-detail-form-container{padding:24px;margin-bottom:24px}#contactmanager-list .list-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#contactmanager-list .list-detail-form-container .handle{cursor:move}#contactmanager-list .list-detail-form-container md-input-container md-switch{margin:0!important}#contactmanager-list .list-detail-form-container #list-image-uploader{position:relative}#contactmanager-list .list-detail-form-container #list-image-uploader.dropping .drop-text{display:flex}#contactmanager-list .list-detail-form-container #list-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#contactmanager-list .list-detail-form-container #list-image-uploader .upload-button{margin-bottom:16px}#contactmanager-list .list-detail-form-container #list-image-uploader .list-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#contactmanager-list .list-detail-form-container #list-image-uploader .list-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#contactmanager-list .list-detail-form-container #list-image-uploader .list-image .media{max-height:100%}md-dialog.voiceDisposition-dialog{max-width:720px;width:720px}md-dialog.voiceDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.voiceDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.voiceDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.voiceDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.voiceDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.voiceDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.voiceDisposition-dialog .error-list{font-size:13px}md-dialog.voiceDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.voiceDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.voiceDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.voiceDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.voiceDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#lists{position:relative}#lists>.header{height:76px;min-height:76px;max-height:76px}#lists>.header .logo .logo-icon{margin:0 16px 0 0}#lists>.header .logo .logo-text{font-size:24px}#lists>.header md-icon{color:#fff}#lists>.header .search-input-wrapper{position:relative}#lists>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#lists>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#lists>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#lists>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#lists>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#lists>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#lists>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#lists>.header.selected-bar .close-button-wrapper{width:244px}#lists>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#lists>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#lists>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#lists #add-list-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.agent-dialog{max-width:720px;width:720px}md-dialog.agent-dialog md-dialog-content{display:block;position:relative}md-dialog.agent-dialog md-toolbar .title{font-size:17px}md-dialog.agent-dialog md-input-container textarea{min-height:150px}md-dialog.agent-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.agent-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.agent-dialog .date-container{padding:16px 0 24px 0}md-dialog.agent-dialog .error-list{font-size:13px}md-dialog.agent-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.agent-dialog .error-list .error .message{font-weight:500}md-dialog.agent-dialog .error-list .error .md-button{margin:0}md-dialog.agent-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.agent-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.agent-dialog{max-width:720px;width:720px}md-dialog.agent-dialog md-dialog-content{display:block;position:relative}md-dialog.agent-dialog md-toolbar .title{font-size:17px}md-dialog.agent-dialog md-input-container textarea{min-height:150px}md-dialog.agent-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.agent-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.agent-dialog .date-container{padding:16px 0 24px 0}md-dialog.agent-dialog .error-list{font-size:13px}md-dialog.agent-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.agent-dialog .error-list .error .message{font-weight:500}md-dialog.agent-dialog .error-list .error .md-button{margin:0}md-dialog.agent-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.agent-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#dashboard-general>.center>.header{height:160px;min-height:160px;max-height:160px;padding-bottom:0}#dashboard-general>.center>.header .selected-general{background:rgba(0,0,0,.12);color:#fff;padding:8px 16px;height:40px;line-height:24px;font-size:16px}#dashboard-general>.center>.header .general-selector{margin-left:1px;border-radius:0;background:rgba(0,0,0,.12)}#dashboard-general>.center>.header .general-selector md-icon{color:#fff}#dashboard-general>.center>.content{background:0 0;padding:0}#dashboard-general>.center>.content>md-tabs>md-tabs-wrapper{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);padding:0 24px}#dashboard-general>.center>.content>md-tabs>md-tabs-wrapper md-tabs-canvas{height:56px}#dashboard-general>.center>.content>md-tabs>md-tabs-wrapper md-tabs-canvas md-pagination-wrapper{height:56px}#dashboard-general>.center>.content>md-tabs>md-tabs-wrapper md-tabs-canvas .md-tab{padding:16px 24px;text-transform:none}#dashboard-general>.center>.content>md-tabs:not(.md-dynamic-height) md-tabs-content-wrapper{top:56px}#dashboard-general>.center>.content>md-tabs>md-tabs-content-wrapper md-tab-content{padding:12px}#dashboard-general>.sidenav{width:330px;min-width:330px;max-width:330px;padding:0;z-index:51;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}#dashboard-general>.sidenav.md-locked-open{width:250px;min-width:250px;max-width:250px;z-index:2;box-shadow:none;background:#eee}#dashboard-general .dashboard-container{padding:24px;margin-bottom:24px}md-dialog.faxAccount-dialog{max-width:720px;width:720px}md-dialog.faxAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.faxAccount-dialog md-toolbar .title{font-size:17px}md-dialog.faxAccount-dialog md-input-container textarea{min-height:150px}md-dialog.faxAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.faxAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.faxAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.faxAccount-dialog .error-list{font-size:13px}md-dialog.faxAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.faxAccount-dialog .error-list .error .message{font-weight:500}md-dialog.faxAccount-dialog .error-list .error .md-button{margin:0}md-dialog.faxAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.faxAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.faxDisposition-dialog{max-width:720px;width:720px}md-dialog.faxDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.faxDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.faxDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.faxDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.faxDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.faxDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.faxDisposition-dialog .error-list{font-size:13px}md-dialog.faxDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.faxDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.faxDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.faxDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.faxDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#fax-faxAccount .header{height:120px;min-height:120px;max-height:120px}#fax-faxAccount .header .goto-faxAccounts-button{margin-right:16px}#fax-faxAccount .header .faxAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#fax-faxAccount .header .faxAccount-image img{height:100%;width:auto;max-width:none}#fax-faxAccount .header .subtitle{margin:6px 0 0 0}#fax-faxAccount .faxAccount-detail-form-container{padding:24px;margin-bottom:24px}#fax-faxAccount .faxAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#fax-faxAccount .faxAccount-detail-form-container .handle{cursor:move}#fax-faxAccount .faxAccount-detail-form-container md-input-container md-switch{margin:0!important}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader{position:relative}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader.dropping .drop-text{display:flex}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .upload-button{margin-bottom:16px}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .faxAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .faxAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .faxAccount-image .media{max-height:100%}#faxAccounts{position:relative}#faxAccounts>.header{height:76px;min-height:76px;max-height:76px}#faxAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#faxAccounts>.header .logo .logo-text{font-size:24px}#faxAccounts>.header md-icon{color:#fff}#faxAccounts>.header .search-input-wrapper{position:relative}#faxAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#faxAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#faxAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#faxAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#faxAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#faxAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#faxAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#faxAccounts>.header.selected-bar .close-button-wrapper{width:244px}#faxAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#faxAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#faxAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#faxAccounts #add-faxAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.faxQueue-dialog{max-width:720px;width:720px}md-dialog.faxQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.faxQueue-dialog md-toolbar .title{font-size:17px}md-dialog.faxQueue-dialog md-input-container textarea{min-height:150px}md-dialog.faxQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.faxQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.faxQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.faxQueue-dialog .error-list{font-size:13px}md-dialog.faxQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.faxQueue-dialog .error-list .error .message{font-weight:500}md-dialog.faxQueue-dialog .error-list .error .md-button{margin:0}md-dialog.faxQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.faxQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#fax-faxQueue .header{height:120px;min-height:120px;max-height:120px}#fax-faxQueue .header .goto-faxQueues-button{margin-right:16px}#fax-faxQueue .header .faxQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#fax-faxQueue .header .faxQueue-image img{height:100%;width:auto;max-width:none}#fax-faxQueue .header .subtitle{margin:6px 0 0 0}#fax-faxQueue .faxQueue-detail-form-container{padding:24px;margin-bottom:24px}#fax-faxQueue .faxQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#fax-faxQueue .faxQueue-detail-form-container .handle{cursor:move}#fax-faxQueue .faxQueue-detail-form-container md-input-container md-switch{margin:0!important}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader{position:relative}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader.dropping .drop-text{display:flex}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .upload-button{margin-bottom:16px}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .faxQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .faxQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .faxQueue-image .media{max-height:100%}#faxQueues{position:relative}#faxQueues>.header{height:76px;min-height:76px;max-height:76px}#faxQueues>.header .logo .logo-icon{margin:0 16px 0 0}#faxQueues>.header .logo .logo-text{font-size:24px}#faxQueues>.header md-icon{color:#fff}#faxQueues>.header .search-input-wrapper{position:relative}#faxQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#faxQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#faxQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#faxQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#faxQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#faxQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#faxQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#faxQueues>.header.selected-bar .close-button-wrapper{width:244px}#faxQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#faxQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#faxQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#faxQueues #add-faxQueue-button{position:fixed;bottom:8px;right:8px;padding:0}#profile .about-tab{max-width:1200px}#profile .about-tab .about{padding:8px}#profile .about-tab .about .general .location md-icon{line-height:13px!important}#profile .about-tab .about .work .job .company{padding:0 16px 0 0;font-weight:500}#profile .about-tab .about .work .job .date{color:rgba(0,0,0,.54)}#profile .about-tab .about-sidebar{padding:8px 8px 8px 32px}#profile .about-tab .about-sidebar .friends .content .friend{padding:4px}#profile .about-tab .about-sidebar .groups .content .group{margin-bottom:16px}#profile .about-tab .about-sidebar .groups .content .group:last-child{margin-bottom:0}#profile .about-tab .about-sidebar .groups .content .group .logo{border:1px solid rgba(0,0,0,.12);margin-right:16px}#profile .about-tab .about-sidebar .groups .content .group .name{font-weight:500;font-size:15px}#profile .about-tab .about-sidebar .groups .content .group .category,#profile .about-tab .about-sidebar .groups .content .group .members{color:rgba(0,0,0,.54)}#profile .about-tab .about-sidebar .groups .content .group .members{margin-top:16px}@media screen and (max-width:960px){#profile .about-tab .about-sidebar{padding:8px}}#maintenance{height:100%;background:url(/assets/images/backgrounds/march.jpg) no-repeat;background-size:cover}#maintenance #maintenance-form-wrapper{flex:1 0 auto;padding:32px}#maintenance #maintenance-form-wrapper #maintenance-form{max-width:384px;padding:32px;background:#fff;text-align:center}#maintenance #maintenance-form-wrapper #maintenance-form .logo{width:128px;height:128px;line-height:128px;font-size:86px;font-weight:500;margin:32px auto;color:#fff;border-radius:2px}#maintenance #maintenance-form-wrapper #maintenance-form .title{font-size:17px;margin-top:16px}#maintenance #maintenance-form-wrapper #maintenance-form .subtitle{margin:16px 0;max-width:300px;color:rgba(0,0,0,.54);font-size:15px}@media screen and (max-width:600px){#maintenance #maintenance-form-wrapper{padding:16px}#maintenance #maintenance-form-wrapper #maintenance-form{padding:24px;width:100%}}md-dialog.freshdeskAccount-dialog{max-width:720px;width:720px}md-dialog.freshdeskAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.freshdeskAccount-dialog md-toolbar .title{font-size:17px}md-dialog.freshdeskAccount-dialog md-input-container textarea{min-height:150px}md-dialog.freshdeskAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.freshdeskAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.freshdeskAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.freshdeskAccount-dialog .error-list{font-size:13px}md-dialog.freshdeskAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.freshdeskAccount-dialog .error-list .error .message{font-weight:500}md-dialog.freshdeskAccount-dialog .error-list .error .md-button{margin:0}md-dialog.freshdeskAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.freshdeskAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.freshdeskConfiguration-dialog{max-width:720px;width:720px}md-dialog.freshdeskConfiguration-dialog md-dialog-content{display:block;position:relative}md-dialog.freshdeskConfiguration-dialog md-toolbar .title{font-size:17px}md-dialog.freshdeskConfiguration-dialog md-input-container textarea{min-height:150px}md-dialog.freshdeskConfiguration-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.freshdeskConfiguration-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.freshdeskConfiguration-dialog .date-container{padding:16px 0 24px 0}md-dialog.freshdeskConfiguration-dialog .error-list{font-size:13px}md-dialog.freshdeskConfiguration-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.freshdeskConfiguration-dialog .error-list .error .message{font-weight:500}md-dialog.freshdeskConfiguration-dialog .error-list .error .md-button{margin:0}md-dialog.freshdeskConfiguration-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.freshdeskConfiguration-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.freshdeskAccount-item-dialog{max-width:720px;width:720px}md-dialog.freshdeskAccount-item-dialog md-dialog-content{display:block;position:relative}md-dialog.freshdeskAccount-item-dialog md-toolbar .title{font-size:17px}md-dialog.freshdeskAccount-item-dialog md-input-container textarea{min-height:150px}md-dialog.freshdeskAccount-item-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.freshdeskAccount-item-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.freshdeskAccount-item-dialog .date-container{padding:16px 0 24px 0}md-dialog.freshdeskAccount-item-dialog .error-list{font-size:13px}md-dialog.freshdeskAccount-item-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.freshdeskAccount-item-dialog .error-list .error .message{font-weight:500}md-dialog.freshdeskAccount-item-dialog .error-list .error .md-button{margin:0}md-dialog.freshdeskAccount-item-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.freshdeskAccount-item-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#integrations-freshdeskAccount .header{height:120px;min-height:120px;max-height:120px}#integrations-freshdeskAccount .header .goto-freshdeskAccounts-button{margin-right:16px}#integrations-freshdeskAccount .header .freshdeskAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#integrations-freshdeskAccount .header .freshdeskAccount-image img{height:100%;width:auto;max-width:none}#integrations-freshdeskAccount .header .subtitle{margin:6px 0 0 0}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container{padding:24px;margin-bottom:24px}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container .handle{cursor:move}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container md-input-container md-switch{margin:0!important}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader{position:relative}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader.dropping .drop-text{display:flex}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .upload-button{margin-bottom:16px}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .freshdeskAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .freshdeskAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .freshdeskAccount-image .media{max-height:100%}#freshdeskAccounts{position:relative}#freshdeskAccounts>.header{height:76px;min-height:76px;max-height:76px}#freshdeskAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#freshdeskAccounts>.header .logo .logo-text{font-size:24px}#freshdeskAccounts>.header md-icon{color:#fff}#freshdeskAccounts>.header .search-input-wrapper{position:relative}#freshdeskAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#freshdeskAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#freshdeskAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#freshdeskAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#freshdeskAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#freshdeskAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#freshdeskAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#freshdeskAccounts>.header.selected-bar .close-button-wrapper{width:244px}#freshdeskAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#freshdeskAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#freshdeskAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#freshdeskAccounts #add-freshdeskAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.salesforceAccount-dialog{max-width:720px;width:720px}md-dialog.salesforceAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.salesforceAccount-dialog md-toolbar .title{font-size:17px}md-dialog.salesforceAccount-dialog md-input-container textarea{min-height:150px}md-dialog.salesforceAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.salesforceAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.salesforceAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.salesforceAccount-dialog .error-list{font-size:13px}md-dialog.salesforceAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.salesforceAccount-dialog .error-list .error .message{font-weight:500}md-dialog.salesforceAccount-dialog .error-list .error .md-button{margin:0}md-dialog.salesforceAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.salesforceAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.salesforceConfiguration-dialog{max-width:720px;width:720px}md-dialog.salesforceConfiguration-dialog md-dialog-content{display:block;position:relative}md-dialog.salesforceConfiguration-dialog md-toolbar .title{font-size:17px}md-dialog.salesforceConfiguration-dialog md-input-container textarea{min-height:150px}md-dialog.salesforceConfiguration-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.salesforceConfiguration-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.salesforceConfiguration-dialog .date-container{padding:16px 0 24px 0}md-dialog.salesforceConfiguration-dialog .error-list{font-size:13px}md-dialog.salesforceConfiguration-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.salesforceConfiguration-dialog .error-list .error .message{font-weight:500}md-dialog.salesforceConfiguration-dialog .error-list .error .md-button{margin:0}md-dialog.salesforceConfiguration-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.salesforceConfiguration-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.salesforceAccount-item-dialog{max-width:720px;width:720px}md-dialog.salesforceAccount-item-dialog md-dialog-content{display:block;position:relative}md-dialog.salesforceAccount-item-dialog md-toolbar .title{font-size:17px}md-dialog.salesforceAccount-item-dialog md-input-container textarea{min-height:150px}md-dialog.salesforceAccount-item-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.salesforceAccount-item-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.salesforceAccount-item-dialog .date-container{padding:16px 0 24px 0}md-dialog.salesforceAccount-item-dialog .error-list{font-size:13px}md-dialog.salesforceAccount-item-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.salesforceAccount-item-dialog .error-list .error .message{font-weight:500}md-dialog.salesforceAccount-item-dialog .error-list .error .md-button{margin:0}md-dialog.salesforceAccount-item-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.salesforceAccount-item-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#integrations-salesforceAccount .header{height:120px;min-height:120px;max-height:120px}#integrations-salesforceAccount .header .goto-salesforceAccounts-button{margin-right:16px}#integrations-salesforceAccount .header .salesforceAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#integrations-salesforceAccount .header .salesforceAccount-image img{height:100%;width:auto;max-width:none}#integrations-salesforceAccount .header .subtitle{margin:6px 0 0 0}#integrations-salesforceAccount .salesforceAccount-detail-form-container{padding:24px;margin-bottom:24px}#integrations-salesforceAccount .salesforceAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#integrations-salesforceAccount .salesforceAccount-detail-form-container .handle{cursor:move}#integrations-salesforceAccount .salesforceAccount-detail-form-container md-input-container md-switch{margin:0!important}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader{position:relative}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader.dropping .drop-text{display:flex}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .upload-button{margin-bottom:16px}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .salesforceAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .salesforceAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .salesforceAccount-image .media{max-height:100%}#salesforceAccounts{position:relative}#salesforceAccounts>.header{height:76px;min-height:76px;max-height:76px}#salesforceAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#salesforceAccounts>.header .logo .logo-text{font-size:24px}#salesforceAccounts>.header md-icon{color:#fff}#salesforceAccounts>.header .search-input-wrapper{position:relative}#salesforceAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#salesforceAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#salesforceAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#salesforceAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#salesforceAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#salesforceAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#salesforceAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#salesforceAccounts>.header.selected-bar .close-button-wrapper{width:244px}#salesforceAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#salesforceAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#salesforceAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#salesforceAccounts #add-salesforceAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.sugarcrmAccount-dialog{max-width:720px;width:720px}md-dialog.sugarcrmAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.sugarcrmAccount-dialog md-toolbar .title{font-size:17px}md-dialog.sugarcrmAccount-dialog md-input-container textarea{min-height:150px}md-dialog.sugarcrmAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.sugarcrmAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.sugarcrmAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.sugarcrmAccount-dialog .error-list{font-size:13px}md-dialog.sugarcrmAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.sugarcrmAccount-dialog .error-list .error .message{font-weight:500}md-dialog.sugarcrmAccount-dialog .error-list .error .md-button{margin:0}md-dialog.sugarcrmAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.sugarcrmAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.sugarcrmConfiguration-dialog{max-width:720px;width:720px}md-dialog.sugarcrmConfiguration-dialog md-dialog-content{display:block;position:relative}md-dialog.sugarcrmConfiguration-dialog md-toolbar .title{font-size:17px}md-dialog.sugarcrmConfiguration-dialog md-input-container textarea{min-height:150px}md-dialog.sugarcrmConfiguration-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.sugarcrmConfiguration-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.sugarcrmConfiguration-dialog .date-container{padding:16px 0 24px 0}md-dialog.sugarcrmConfiguration-dialog .error-list{font-size:13px}md-dialog.sugarcrmConfiguration-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.sugarcrmConfiguration-dialog .error-list .error .message{font-weight:500}md-dialog.sugarcrmConfiguration-dialog .error-list .error .md-button{margin:0}md-dialog.sugarcrmConfiguration-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.sugarcrmConfiguration-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.sugarcrmAccount-item-dialog{max-width:720px;width:720px}md-dialog.sugarcrmAccount-item-dialog md-dialog-content{display:block;position:relative}md-dialog.sugarcrmAccount-item-dialog md-toolbar .title{font-size:17px}md-dialog.sugarcrmAccount-item-dialog md-input-container textarea{min-height:150px}md-dialog.sugarcrmAccount-item-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.sugarcrmAccount-item-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.sugarcrmAccount-item-dialog .date-container{padding:16px 0 24px 0}md-dialog.sugarcrmAccount-item-dialog .error-list{font-size:13px}md-dialog.sugarcrmAccount-item-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.sugarcrmAccount-item-dialog .error-list .error .message{font-weight:500}md-dialog.sugarcrmAccount-item-dialog .error-list .error .md-button{margin:0}md-dialog.sugarcrmAccount-item-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.sugarcrmAccount-item-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#integrations-sugarcrmAccount .header{height:120px;min-height:120px;max-height:120px}#integrations-sugarcrmAccount .header .goto-sugarcrmAccounts-button{margin-right:16px}#integrations-sugarcrmAccount .header .sugarcrmAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#integrations-sugarcrmAccount .header .sugarcrmAccount-image img{height:100%;width:auto;max-width:none}#integrations-sugarcrmAccount .header .subtitle{margin:6px 0 0 0}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container{padding:24px;margin-bottom:24px}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container .handle{cursor:move}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container md-input-container md-switch{margin:0!important}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader{position:relative}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader.dropping .drop-text{display:flex}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .upload-button{margin-bottom:16px}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .sugarcrmAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .sugarcrmAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .sugarcrmAccount-image .media{max-height:100%}#sugarcrmAccounts{position:relative}#sugarcrmAccounts>.header{height:76px;min-height:76px;max-height:76px}#sugarcrmAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#sugarcrmAccounts>.header .logo .logo-text{font-size:24px}#sugarcrmAccounts>.header md-icon{color:#fff}#sugarcrmAccounts>.header .search-input-wrapper{position:relative}#sugarcrmAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#sugarcrmAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#sugarcrmAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#sugarcrmAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#sugarcrmAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#sugarcrmAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#sugarcrmAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#sugarcrmAccounts>.header.selected-bar .close-button-wrapper{width:244px}#sugarcrmAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#sugarcrmAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#sugarcrmAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#sugarcrmAccounts #add-sugarcrmAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.zendeskAccount-dialog{max-width:720px;width:720px}md-dialog.zendeskAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.zendeskAccount-dialog md-toolbar .title{font-size:17px}md-dialog.zendeskAccount-dialog md-input-container textarea{min-height:150px}md-dialog.zendeskAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.zendeskAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.zendeskAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.zendeskAccount-dialog .error-list{font-size:13px}md-dialog.zendeskAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.zendeskAccount-dialog .error-list .error .message{font-weight:500}md-dialog.zendeskAccount-dialog .error-list .error .md-button{margin:0}md-dialog.zendeskAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.zendeskAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.zendeskAccount-item-dialog{max-width:720px;width:720px}md-dialog.zendeskAccount-item-dialog md-dialog-content{display:block;position:relative}md-dialog.zendeskAccount-item-dialog md-toolbar .title{font-size:17px}md-dialog.zendeskAccount-item-dialog md-input-container textarea{min-height:150px}md-dialog.zendeskAccount-item-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.zendeskAccount-item-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.zendeskAccount-item-dialog .date-container{padding:16px 0 24px 0}md-dialog.zendeskAccount-item-dialog .error-list{font-size:13px}md-dialog.zendeskAccount-item-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.zendeskAccount-item-dialog .error-list .error .message{font-weight:500}md-dialog.zendeskAccount-item-dialog .error-list .error .md-button{margin:0}md-dialog.zendeskAccount-item-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.zendeskAccount-item-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#integrations-zendeskAccount .header{height:120px;min-height:120px;max-height:120px}#integrations-zendeskAccount .header .goto-zendeskAccounts-button{margin-right:16px}#integrations-zendeskAccount .header .zendeskAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#integrations-zendeskAccount .header .zendeskAccount-image img{height:100%;width:auto;max-width:none}#integrations-zendeskAccount .header .subtitle{margin:6px 0 0 0}#integrations-zendeskAccount .zendeskAccount-detail-form-container{padding:24px;margin-bottom:24px}#integrations-zendeskAccount .zendeskAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#integrations-zendeskAccount .zendeskAccount-detail-form-container .handle{cursor:move}#integrations-zendeskAccount .zendeskAccount-detail-form-container md-input-container md-switch{margin:0!important}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader{position:relative}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader.dropping .drop-text{display:flex}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .upload-button{margin-bottom:16px}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .zendeskAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .zendeskAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .zendeskAccount-image .media{max-height:100%}md-dialog.zendeskConfiguration-dialog{max-width:720px;width:720px}md-dialog.zendeskConfiguration-dialog md-dialog-content{display:block;position:relative}md-dialog.zendeskConfiguration-dialog md-toolbar .title{font-size:17px}md-dialog.zendeskConfiguration-dialog md-input-container textarea{min-height:150px}md-dialog.zendeskConfiguration-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.zendeskConfiguration-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.zendeskConfiguration-dialog .date-container{padding:16px 0 24px 0}md-dialog.zendeskConfiguration-dialog .error-list{font-size:13px}md-dialog.zendeskConfiguration-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.zendeskConfiguration-dialog .error-list .error .message{font-weight:500}md-dialog.zendeskConfiguration-dialog .error-list .error .md-button{margin:0}md-dialog.zendeskConfiguration-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.zendeskConfiguration-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#zendeskAccounts{position:relative}#zendeskAccounts>.header{height:76px;min-height:76px;max-height:76px}#zendeskAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#zendeskAccounts>.header .logo .logo-text{font-size:24px}#zendeskAccounts>.header md-icon{color:#fff}#zendeskAccounts>.header .search-input-wrapper{position:relative}#zendeskAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#zendeskAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#zendeskAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#zendeskAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#zendeskAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#zendeskAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#zendeskAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#zendeskAccounts>.header.selected-bar .close-button-wrapper{width:244px}#zendeskAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#zendeskAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#zendeskAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#zendeskAccounts #add-zendeskAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.mailAccount-dialog{max-width:720px;width:720px}md-dialog.mailAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.mailAccount-dialog md-toolbar .title{font-size:17px}md-dialog.mailAccount-dialog md-input-container textarea{min-height:150px}md-dialog.mailAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.mailAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.mailAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.mailAccount-dialog .error-list{font-size:13px}md-dialog.mailAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.mailAccount-dialog .error-list .error .message{font-weight:500}md-dialog.mailAccount-dialog .error-list .error .md-button{margin:0}md-dialog.mailAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.mailAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.mailDisposition-dialog{max-width:720px;width:720px}md-dialog.mailDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.mailDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.mailDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.mailDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.mailDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.mailDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.mailDisposition-dialog .error-list{font-size:13px}md-dialog.mailDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.mailDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.mailDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.mailDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.mailDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#mail-mailAccount .header{height:120px;min-height:120px;max-height:120px}#mail-mailAccount .header .goto-mailAccounts-button{margin-right:16px}#mail-mailAccount .header .mailAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#mail-mailAccount .header .mailAccount-image img{height:100%;width:auto;max-width:none}#mail-mailAccount .header .subtitle{margin:6px 0 0 0}#mail-mailAccount .mailAccount-detail-form-container{padding:24px;margin-bottom:24px}#mail-mailAccount .mailAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#mail-mailAccount .mailAccount-detail-form-container .handle{cursor:move}#mail-mailAccount .mailAccount-detail-form-container md-input-container md-switch{margin:0!important}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader{position:relative}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader.dropping .drop-text{display:flex}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .upload-button{margin-bottom:16px}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .mailAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .mailAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .mailAccount-image .media{max-height:100%}#mailAccounts{position:relative}#mailAccounts>.header{height:76px;min-height:76px;max-height:76px}#mailAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#mailAccounts>.header .logo .logo-text{font-size:24px}#mailAccounts>.header md-icon{color:#fff}#mailAccounts>.header .search-input-wrapper{position:relative}#mailAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#mailAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#mailAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#mailAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#mailAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#mailAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#mailAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#mailAccounts>.header.selected-bar .close-button-wrapper{width:244px}#mailAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#mailAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#mailAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#mailAccounts #add-mailAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.mailQueue-dialog{max-width:720px;width:720px}md-dialog.mailQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.mailQueue-dialog md-toolbar .title{font-size:17px}md-dialog.mailQueue-dialog md-input-container textarea{min-height:150px}md-dialog.mailQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.mailQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.mailQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.mailQueue-dialog .error-list{font-size:13px}md-dialog.mailQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.mailQueue-dialog .error-list .error .message{font-weight:500}md-dialog.mailQueue-dialog .error-list .error .md-button{margin:0}md-dialog.mailQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.mailQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#mail-mailQueue .header{height:120px;min-height:120px;max-height:120px}#mail-mailQueue .header .goto-mailQueues-button{margin-right:16px}#mail-mailQueue .header .mailQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#mail-mailQueue .header .mailQueue-image img{height:100%;width:auto;max-width:none}#mail-mailQueue .header .subtitle{margin:6px 0 0 0}#mail-mailQueue .mailQueue-detail-form-container{padding:24px;margin-bottom:24px}#mail-mailQueue .mailQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#mail-mailQueue .mailQueue-detail-form-container .handle{cursor:move}#mail-mailQueue .mailQueue-detail-form-container md-input-container md-switch{margin:0!important}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader{position:relative}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader.dropping .drop-text{display:flex}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .upload-button{margin-bottom:16px}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .mailQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .mailQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .mailQueue-image .media{max-height:100%}#mailQueues{position:relative}#mailQueues>.header{height:76px;min-height:76px;max-height:76px}#mailQueues>.header .logo .logo-icon{margin:0 16px 0 0}#mailQueues>.header .logo .logo-text{font-size:24px}#mailQueues>.header md-icon{color:#fff}#mailQueues>.header .search-input-wrapper{position:relative}#mailQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#mailQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#mailQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#mailQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#mailQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#mailQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#mailQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#mailQueues>.header.selected-bar .close-button-wrapper{width:244px}#mailQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#mailQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#mailQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#mailQueues #add-mailQueue-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.ivrCampaign-dialog{max-width:720px;width:720px}md-dialog.ivrCampaign-dialog md-dialog-content{display:block;position:relative}md-dialog.ivrCampaign-dialog md-toolbar .title{font-size:17px}md-dialog.ivrCampaign-dialog md-input-container textarea{min-height:150px}md-dialog.ivrCampaign-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.ivrCampaign-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.ivrCampaign-dialog .date-container{padding:16px 0 24px 0}md-dialog.ivrCampaign-dialog .error-list{font-size:13px}md-dialog.ivrCampaign-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.ivrCampaign-dialog .error-list .error .message{font-weight:500}md-dialog.ivrCampaign-dialog .error-list .error .md-button{margin:0}md-dialog.ivrCampaign-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.ivrCampaign-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.hopper-dialog{max-width:720px;width:720px}md-dialog.hopper-dialog md-dialog-content{display:block;position:relative}md-dialog.hopper-dialog md-toolbar .title{font-size:17px}md-dialog.hopper-dialog md-input-container textarea{min-height:150px}md-dialog.hopper-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.hopper-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.hopper-dialog .date-container{padding:16px 0 24px 0}md-dialog.hopper-dialog .error-list{font-size:13px}md-dialog.hopper-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.hopper-dialog .error-list .error .message{font-weight:500}md-dialog.hopper-dialog .error-list .error .md-button{margin:0}md-dialog.hopper-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.hopper-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#motiondialer-ivrCampaign .header{height:120px;min-height:120px;max-height:120px}#motiondialer-ivrCampaign .header .goto-ivrCampaigns-button{margin-right:16px}#motiondialer-ivrCampaign .header .ivrCampaign-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#motiondialer-ivrCampaign .header .ivrCampaign-image img{height:100%;width:auto;max-width:none}#motiondialer-ivrCampaign .header .subtitle{margin:6px 0 0 0}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container{padding:24px;margin-bottom:24px}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container .handle{cursor:move}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container md-input-container md-switch{margin:0!important}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader{position:relative}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader.dropping .drop-text{display:flex}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .upload-button{margin-bottom:16px}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .ivrCampaign-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .ivrCampaign-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .ivrCampaign-image .media{max-height:100%}#ivrCampaigns{position:relative}#ivrCampaigns>.header{height:76px;min-height:76px;max-height:76px}#ivrCampaigns>.header .logo .logo-icon{margin:0 16px 0 0}#ivrCampaigns>.header .logo .logo-text{font-size:24px}#ivrCampaigns>.header md-icon{color:#fff}#ivrCampaigns>.header .search-input-wrapper{position:relative}#ivrCampaigns>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#ivrCampaigns>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#ivrCampaigns>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#ivrCampaigns>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#ivrCampaigns>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#ivrCampaigns>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#ivrCampaigns>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#ivrCampaigns>.header.selected-bar .close-button-wrapper{width:244px}#ivrCampaigns>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#ivrCampaigns>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#ivrCampaigns>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#ivrCampaigns #add-ivrCampaign-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.queueCampaign-dialog{max-width:720px;width:720px}md-dialog.queueCampaign-dialog md-dialog-content{display:block;position:relative}md-dialog.queueCampaign-dialog md-toolbar .title{font-size:17px}md-dialog.queueCampaign-dialog md-input-container textarea{min-height:150px}md-dialog.queueCampaign-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.queueCampaign-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.queueCampaign-dialog .date-container{padding:16px 0 24px 0}md-dialog.queueCampaign-dialog .error-list{font-size:13px}md-dialog.queueCampaign-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.queueCampaign-dialog .error-list .error .message{font-weight:500}md-dialog.queueCampaign-dialog .error-list .error .md-button{margin:0}md-dialog.queueCampaign-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.queueCampaign-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.hopper-dialog{max-width:720px;width:720px}md-dialog.hopper-dialog md-dialog-content{display:block;position:relative}md-dialog.hopper-dialog md-toolbar .title{font-size:17px}md-dialog.hopper-dialog md-input-container textarea{min-height:150px}md-dialog.hopper-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.hopper-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.hopper-dialog .date-container{padding:16px 0 24px 0}md-dialog.hopper-dialog .error-list{font-size:13px}md-dialog.hopper-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.hopper-dialog .error-list .error .message{font-weight:500}md-dialog.hopper-dialog .error-list .error .md-button{margin:0}md-dialog.hopper-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.hopper-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#motiondialer-queueCampaign .header{height:120px;min-height:120px;max-height:120px}#motiondialer-queueCampaign .header .goto-queueCampaigns-button{margin-right:16px}#motiondialer-queueCampaign .header .queueCampaign-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#motiondialer-queueCampaign .header .queueCampaign-image img{height:100%;width:auto;max-width:none}#motiondialer-queueCampaign .header .subtitle{margin:6px 0 0 0}#motiondialer-queueCampaign .queueCampaign-detail-form-container{padding:24px;margin-bottom:24px}#motiondialer-queueCampaign .queueCampaign-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#motiondialer-queueCampaign .queueCampaign-detail-form-container .handle{cursor:move}#motiondialer-queueCampaign .queueCampaign-detail-form-container md-input-container md-switch{margin:0!important}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader{position:relative}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader.dropping .drop-text{display:flex}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .upload-button{margin-bottom:16px}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .queueCampaign-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .queueCampaign-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .queueCampaign-image .media{max-height:100%}#queueCampaigns{position:relative}#queueCampaigns>.header{height:76px;min-height:76px;max-height:76px}#queueCampaigns>.header .logo .logo-icon{margin:0 16px 0 0}#queueCampaigns>.header .logo .logo-text{font-size:24px}#queueCampaigns>.header md-icon{color:#fff}#queueCampaigns>.header .search-input-wrapper{position:relative}#queueCampaigns>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#queueCampaigns>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#queueCampaigns>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#queueCampaigns>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#queueCampaigns>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#queueCampaigns>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#queueCampaigns>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#queueCampaigns>.header.selected-bar .close-button-wrapper{width:244px}#queueCampaigns>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#queueCampaigns>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#queueCampaigns>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#queueCampaigns #add-queueCampaign-button{position:fixed;bottom:8px;right:8px;padding:0}#realtime>.content .blink{animation:blinker 2s linear infinite}#realtime>.content .avatar-wrapper{position:relative}#realtime>.content .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}#realtime>.content .search-input-wrapper{position:relative;margin-left:20px}#realtime>.content .search-input-wrapper label{padding:6px;cursor:pointer}#realtime>.content .search-input-wrapper md-input-container{padding-top:20px}#realtime>.content .main .labels{padding:8px 16px}#realtime>.content .main .labels .label{margin:0 0 2px 4px;padding:2px 5px;font-size:11px;white-space:nowrap;border-radius:2px}#realtime>.content .main .status{position:absolute;bottom:-3px;right:5px}#realtime>.content .main .avatar-wrapper{position:relative}#realtime>.content .main .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}@keyframes blinker{50%{opacity:0}}md-dialog.openchannelAccount-dialog{max-width:720px;width:720px}md-dialog.openchannelAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.openchannelAccount-dialog md-toolbar .title{font-size:17px}md-dialog.openchannelAccount-dialog md-input-container textarea{min-height:150px}md-dialog.openchannelAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.openchannelAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.openchannelAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.openchannelAccount-dialog .error-list{font-size:13px}md-dialog.openchannelAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.openchannelAccount-dialog .error-list .error .message{font-weight:500}md-dialog.openchannelAccount-dialog .error-list .error .md-button{margin:0}md-dialog.openchannelAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.openchannelAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.openchannelDisposition-dialog{max-width:720px;width:720px}md-dialog.openchannelDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.openchannelDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.openchannelDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.openchannelDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.openchannelDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.openchannelDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.openchannelDisposition-dialog .error-list{font-size:13px}md-dialog.openchannelDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.openchannelDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.openchannelDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.openchannelDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.openchannelDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#openchannel-openchannelAccount .header{height:120px;min-height:120px;max-height:120px}#openchannel-openchannelAccount .header .goto-openchannelAccounts-button{margin-right:16px}#openchannel-openchannelAccount .header .openchannelAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#openchannel-openchannelAccount .header .openchannelAccount-image img{height:100%;width:auto;max-width:none}#openchannel-openchannelAccount .header .subtitle{margin:6px 0 0 0}#openchannel-openchannelAccount .openchannelAccount-detail-form-container{padding:24px;margin-bottom:24px}#openchannel-openchannelAccount .openchannelAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#openchannel-openchannelAccount .openchannelAccount-detail-form-container .handle{cursor:move}#openchannel-openchannelAccount .openchannelAccount-detail-form-container md-input-container md-switch{margin:0!important}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader{position:relative}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader.dropping .drop-text{display:flex}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .upload-button{margin-bottom:16px}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .openchannelAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .openchannelAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .openchannelAccount-image .media{max-height:100%}#openchannelAccounts{position:relative}#openchannelAccounts>.header{height:76px;min-height:76px;max-height:76px}#openchannelAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#openchannelAccounts>.header .logo .logo-text{font-size:24px}#openchannelAccounts>.header md-icon{color:#fff}#openchannelAccounts>.header .search-input-wrapper{position:relative}#openchannelAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#openchannelAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#openchannelAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#openchannelAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#openchannelAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#openchannelAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#openchannelAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#openchannelAccounts>.header.selected-bar .close-button-wrapper{width:244px}#openchannelAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#openchannelAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#openchannelAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#openchannelAccounts #add-openchannelAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.openchannelQueue-dialog{max-width:720px;width:720px}md-dialog.openchannelQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.openchannelQueue-dialog md-toolbar .title{font-size:17px}md-dialog.openchannelQueue-dialog md-input-container textarea{min-height:150px}md-dialog.openchannelQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.openchannelQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.openchannelQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.openchannelQueue-dialog .error-list{font-size:13px}md-dialog.openchannelQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.openchannelQueue-dialog .error-list .error .message{font-weight:500}md-dialog.openchannelQueue-dialog .error-list .error .md-button{margin:0}md-dialog.openchannelQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.openchannelQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#openchannel-openchannelQueue .header{height:120px;min-height:120px;max-height:120px}#openchannel-openchannelQueue .header .goto-openchannelQueues-button{margin-right:16px}#openchannel-openchannelQueue .header .openchannelQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#openchannel-openchannelQueue .header .openchannelQueue-image img{height:100%;width:auto;max-width:none}#openchannel-openchannelQueue .header .subtitle{margin:6px 0 0 0}#openchannel-openchannelQueue .openchannelQueue-detail-form-container{padding:24px;margin-bottom:24px}#openchannel-openchannelQueue .openchannelQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#openchannel-openchannelQueue .openchannelQueue-detail-form-container .handle{cursor:move}#openchannel-openchannelQueue .openchannelQueue-detail-form-container md-input-container md-switch{margin:0!important}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader{position:relative}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader.dropping .drop-text{display:flex}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .upload-button{margin-bottom:16px}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .openchannelQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .openchannelQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .openchannelQueue-image .media{max-height:100%}#openchannelQueues{position:relative}#openchannelQueues>.header{height:76px;min-height:76px;max-height:76px}#openchannelQueues>.header .logo .logo-icon{margin:0 16px 0 0}#openchannelQueues>.header .logo .logo-text{font-size:24px}#openchannelQueues>.header md-icon{color:#fff}#openchannelQueues>.header .search-input-wrapper{position:relative}#openchannelQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#openchannelQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#openchannelQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#openchannelQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#openchannelQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#openchannelQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#openchannelQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#openchannelQueues>.header.selected-bar .close-button-wrapper{width:244px}#openchannelQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#openchannelQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#openchannelQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#openchannelQueues #add-openchannelQueue-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.customization-dialog{max-width:720px;width:720px}md-dialog.customization-dialog md-dialog-content{display:block;position:relative}md-dialog.customization-dialog md-toolbar .title{font-size:17px}md-dialog.customization-dialog md-input-container textarea{min-height:150px}md-dialog.customization-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.customization-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.customization-dialog .date-container{padding:16px 0 24px 0}md-dialog.customization-dialog .error-list{font-size:13px}md-dialog.customization-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.customization-dialog .error-list .error .message{font-weight:500}md-dialog.customization-dialog .error-list .error .md-button{margin:0}md-dialog.customization-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.customization-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#customizations{position:relative}#customizations>.header{height:76px;min-height:76px;max-height:76px}#customizations>.header .logo .logo-icon{margin:0 16px 0 0}#customizations>.header .logo .logo-text{font-size:24px}#customizations>.header md-icon{color:#fff}#customizations>.header .search-input-wrapper{position:relative}#customizations>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#customizations>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#customizations>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#customizations>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#customizations>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#customizations>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#customizations>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#customizations>.header.selected-bar .close-button-wrapper{width:244px}#customizations>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#customizations>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#customizations>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#customizations>.content .customization-detail-form-container{padding:24px;margin-bottom:24px}#customizations>.content .customization-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#customizations>.content .customization-detail-form-container .handle{cursor:move}#customizations>.content .customization-detail-form-container md-input-container md-switch{margin:0!important}#customizations>.content .customization-detail-form-container #customization-image-uploader{position:relative}#customizations>.content .customization-detail-form-container #customization-image-uploader.dropping .drop-text{display:flex}#customizations>.content .customization-detail-form-container #customization-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#customizations>.content .customization-detail-form-container #customization-image-uploader .upload-button{margin-bottom:16px}#customizations>.content .customization-detail-form-container #customization-image-uploader .customization-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#customizations>.content .customization-detail-form-container #customization-image-uploader .customization-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#customizations>.content .customization-detail-form-container #customization-image-uploader .customization-image .media{max-height:100%}#customizations #add-customization-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.general-dialog{max-width:720px;width:720px}md-dialog.general-dialog md-dialog-content{display:block;position:relative}md-dialog.general-dialog md-toolbar .title{font-size:17px}md-dialog.general-dialog md-input-container textarea{min-height:150px}md-dialog.general-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.general-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.general-dialog .date-container{padding:16px 0 24px 0}md-dialog.general-dialog .error-list{font-size:13px}md-dialog.general-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.general-dialog .error-list .error .message{font-weight:500}md-dialog.general-dialog .error-list .error .md-button{margin:0}md-dialog.general-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.general-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#generals{position:relative}#generals>.header{height:76px;min-height:76px;max-height:76px}#generals>.header .logo .logo-icon{margin:0 16px 0 0}#generals>.header .logo .logo-text{font-size:24px}#generals>.header md-icon{color:#fff}#generals>.header .search-input-wrapper{position:relative}#generals>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#generals>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#generals>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#generals>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#generals>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#generals>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#generals>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#generals>.header.selected-bar .close-button-wrapper{width:244px}#generals>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#generals>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#generals>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#generals>.content .general-detail-form-container{padding:24px;margin-bottom:24px}#generals>.content .general-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#generals>.content .general-detail-form-container .handle{cursor:move}#generals>.content .general-detail-form-container md-input-container md-switch{margin:0!important}#generals>.content .general-detail-form-container #general-image-uploader{position:relative}#generals>.content .general-detail-form-container #general-image-uploader.dropping .drop-text{display:flex}#generals>.content .general-detail-form-container #general-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#generals>.content .general-detail-form-container #general-image-uploader .upload-button{margin-bottom:16px}#generals>.content .general-detail-form-container #general-image-uploader .general-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#generals>.content .general-detail-form-container #general-image-uploader .general-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#generals>.content .general-detail-form-container #general-image-uploader .general-image .media{max-height:100%}#generals #add-general-button{position:fixed;bottom:8px;right:8px;padding:0}#license{position:relative}#license .blink{animation:blinker 2s linear infinite}#license>.header{height:76px;min-height:76px;max-height:76px}#license>.header .logo .logo-icon{margin:0 16px 0 0}#license>.header .logo .logo-text{font-size:24px}#license>.header md-icon{color:#fff}#license>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#license>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#license>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#license>.content .badge{position:absolute;top:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);font-size:11px;font-weight:500;padding:6px 8px}md-dialog.request-dialog{max-width:720px;width:720px}md-dialog.request-dialog md-dialog-content{display:block;position:relative}md-dialog.request-dialog md-toolbar .title{font-size:17px}md-dialog.request-dialog md-input-container textarea{min-height:150px}md-dialog.request-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.request-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.request-dialog .date-container{padding:16px 0 24px 0}md-dialog.request-dialog .error-list{font-size:13px}md-dialog.request-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.request-dialog .error-list .error .message{font-weight:500}md-dialog.request-dialog .error-list .error .md-button{margin:0}md-dialog.request-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.request-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.network-dialog{max-width:720px;width:720px}md-dialog.network-dialog md-dialog-content{display:block;position:relative}md-dialog.network-dialog md-toolbar .title{font-size:17px}md-dialog.network-dialog md-input-container textarea{min-height:150px}md-dialog.network-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.network-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.network-dialog .date-container{padding:16px 0 24px 0}md-dialog.network-dialog .error-list{font-size:13px}md-dialog.network-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.network-dialog .error-list .error .message{font-weight:500}md-dialog.network-dialog .error-list .error .md-button{margin:0}md-dialog.network-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.network-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#networks{position:relative}#networks>.header{height:76px;min-height:76px;max-height:76px}#networks>.header .logo .logo-icon{margin:0 16px 0 0}#networks>.header .logo .logo-text{font-size:24px}#networks>.header md-icon{color:#fff}#networks>.header .search-input-wrapper{position:relative}#networks>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#networks>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#networks>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#networks>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#networks>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#networks>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#networks>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#networks>.header.selected-bar .close-button-wrapper{width:244px}#networks>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#networks>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#networks>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#networks #add-network-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.smtp-dialog{max-width:720px;width:720px}md-dialog.smtp-dialog md-dialog-content{display:block;position:relative}md-dialog.smtp-dialog md-toolbar .title{font-size:17px}md-dialog.smtp-dialog md-input-container textarea{min-height:150px}md-dialog.smtp-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.smtp-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.smtp-dialog .date-container{padding:16px 0 24px 0}md-dialog.smtp-dialog .error-list{font-size:13px}md-dialog.smtp-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.smtp-dialog .error-list .error .message{font-weight:500}md-dialog.smtp-dialog .error-list .error .md-button{margin:0}md-dialog.smtp-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.smtp-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#smtps{position:relative}#smtps>.header{height:76px;min-height:76px;max-height:76px}#smtps>.header .logo .logo-icon{margin:0 16px 0 0}#smtps>.header .logo .logo-text{font-size:24px}#smtps>.header md-icon{color:#fff}#smtps>.header .search-input-wrapper{position:relative}#smtps>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#smtps>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#smtps>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#smtps>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#smtps>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#smtps>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#smtps>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#smtps>.header.selected-bar .close-button-wrapper{width:244px}#smtps>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#smtps>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#smtps>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#smtps>.content .smtp-detail-form-container{padding:24px;margin-bottom:24px}#smtps>.content .smtp-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#smtps>.content .smtp-detail-form-container .handle{cursor:move}#smtps>.content .smtp-detail-form-container md-input-container md-switch{margin:0!important}#smtps>.content .smtp-detail-form-container #smtp-image-uploader{position:relative}#smtps>.content .smtp-detail-form-container #smtp-image-uploader.dropping .drop-text{display:flex}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .upload-button{margin-bottom:16px}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .smtp-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .smtp-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .smtp-image .media{max-height:100%}#smtps #add-smtp-button{position:fixed;bottom:8px;right:8px;padding:0}#system>.header{height:76px;min-height:76px;max-height:76px}#system>.header .logo .logo-icon{margin:0 16px 0 0}#system>.header .logo .logo-text{font-size:24px}#system>.header md-icon{color:#fff}#system .system-detail-form-container{padding:24px;margin-bottom:24px}#system .system-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#system .system-detail-form-container .handle{cursor:move}#system .system-detail-form-container md-input-container md-switch{margin:0!important}#system .system-detail-form-container #system-image-uploader{position:relative}#system .system-detail-form-container #system-image-uploader.dropping .drop-text{display:flex}#system .system-detail-form-container #system-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#system .system-detail-form-container #system-image-uploader .upload-button{margin-bottom:16px}#system .system-detail-form-container #system-image-uploader .system-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#system .system-detail-form-container #system-image-uploader .system-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#system .system-detail-form-container #system-image-uploader .system-image .media{max-height:100%}#updates{position:relative}#updates>.header{height:76px;min-height:76px;max-height:76px}#updates>.header .logo .logo-icon{margin:0 16px 0 0}#updates>.header .logo .logo-text{font-size:24px}#updates>.header md-icon{color:#fff}#updates>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#updates>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#updates>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}md-dialog.smsAccount-dialog{max-width:720px;width:720px}md-dialog.smsAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.smsAccount-dialog md-toolbar .title{font-size:17px}md-dialog.smsAccount-dialog md-input-container textarea{min-height:150px}md-dialog.smsAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.smsAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.smsAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.smsAccount-dialog .error-list{font-size:13px}md-dialog.smsAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.smsAccount-dialog .error-list .error .message{font-weight:500}md-dialog.smsAccount-dialog .error-list .error .md-button{margin:0}md-dialog.smsAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.smsAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.smsDisposition-dialog{max-width:720px;width:720px}md-dialog.smsDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.smsDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.smsDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.smsDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.smsDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.smsDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.smsDisposition-dialog .error-list{font-size:13px}md-dialog.smsDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.smsDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.smsDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.smsDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.smsDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#sms-smsAccount .header{height:120px;min-height:120px;max-height:120px}#sms-smsAccount .header .goto-smsAccounts-button{margin-right:16px}#sms-smsAccount .header .smsAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#sms-smsAccount .header .smsAccount-image img{height:100%;width:auto;max-width:none}#sms-smsAccount .header .subtitle{margin:6px 0 0 0}#sms-smsAccount .smsAccount-detail-form-container{padding:24px;margin-bottom:24px}#sms-smsAccount .smsAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#sms-smsAccount .smsAccount-detail-form-container .handle{cursor:move}#sms-smsAccount .smsAccount-detail-form-container md-input-container md-switch{margin:0!important}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader{position:relative}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader.dropping .drop-text{display:flex}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .upload-button{margin-bottom:16px}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .smsAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .smsAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .smsAccount-image .media{max-height:100%}#smsAccounts{position:relative}#smsAccounts>.header{height:76px;min-height:76px;max-height:76px}#smsAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#smsAccounts>.header .logo .logo-text{font-size:24px}#smsAccounts>.header md-icon{color:#fff}#smsAccounts>.header .search-input-wrapper{position:relative}#smsAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#smsAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#smsAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#smsAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#smsAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#smsAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#smsAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#smsAccounts>.header.selected-bar .close-button-wrapper{width:244px}#smsAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#smsAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#smsAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#smsAccounts #add-smsAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.smsQueue-dialog{max-width:720px;width:720px}md-dialog.smsQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.smsQueue-dialog md-toolbar .title{font-size:17px}md-dialog.smsQueue-dialog md-input-container textarea{min-height:150px}md-dialog.smsQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.smsQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.smsQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.smsQueue-dialog .error-list{font-size:13px}md-dialog.smsQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.smsQueue-dialog .error-list .error .message{font-weight:500}md-dialog.smsQueue-dialog .error-list .error .md-button{margin:0}md-dialog.smsQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.smsQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#sms-smsQueue .header{height:120px;min-height:120px;max-height:120px}#sms-smsQueue .header .goto-smsQueues-button{margin-right:16px}#sms-smsQueue .header .smsQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#sms-smsQueue .header .smsQueue-image img{height:100%;width:auto;max-width:none}#sms-smsQueue .header .subtitle{margin:6px 0 0 0}#sms-smsQueue .smsQueue-detail-form-container{padding:24px;margin-bottom:24px}#sms-smsQueue .smsQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#sms-smsQueue .smsQueue-detail-form-container .handle{cursor:move}#sms-smsQueue .smsQueue-detail-form-container md-input-container md-switch{margin:0!important}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader{position:relative}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader.dropping .drop-text{display:flex}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .upload-button{margin-bottom:16px}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .smsQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .smsQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .smsQueue-image .media{max-height:100%}#smsQueues{position:relative}#smsQueues>.header{height:76px;min-height:76px;max-height:76px}#smsQueues>.header .logo .logo-icon{margin:0 16px 0 0}#smsQueues>.header .logo .logo-text{font-size:24px}#smsQueues>.header md-icon{color:#fff}#smsQueues>.header .search-input-wrapper{position:relative}#smsQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#smsQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#smsQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#smsQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#smsQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#smsQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#smsQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#smsQueues>.header.selected-bar .close-button-wrapper{width:244px}#smsQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#smsQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#smsQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#smsQueues #add-smsQueue-button{position:fixed;bottom:8px;right:8px;padding:0}#agents{position:relative}#agents>.header{height:76px;min-height:76px;max-height:76px}#agents>.header .logo .logo-icon{margin:0 16px 0 0}#agents>.header .logo .logo-text{font-size:24px}#agents>.header md-icon{color:#fff}#agents>.header .search-input-wrapper{position:relative}#agents>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#agents>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#agents>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#agents>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#agents>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#agents>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#agents>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#agents>.header.selected-bar .close-button-wrapper{width:244px}#agents>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#agents>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#agents>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#agents #add-agent-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.agent-dialog{max-width:720px;width:720px}md-dialog.agent-dialog md-dialog-content{display:block;position:relative}md-dialog.agent-dialog md-toolbar .title{font-size:17px}md-dialog.agent-dialog md-input-container textarea{min-height:150px}md-dialog.agent-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.agent-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.agent-dialog .date-container{padding:16px 0 24px 0}md-dialog.agent-dialog .error-list{font-size:13px}md-dialog.agent-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.agent-dialog .error-list .error .message{font-weight:500}md-dialog.agent-dialog .error-list .error .md-button{margin:0}md-dialog.agent-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.agent-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#staff-agent .header{height:120px;min-height:120px;max-height:120px}#staff-agent .header .goto-agents-button{margin-right:16px}#staff-agent .header .agent-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#staff-agent .header .agent-image img{height:100%;width:auto;max-width:none}#staff-agent .header .subtitle{margin:6px 0 0 0}#staff-agent .agent-detail-form-container{padding:24px;margin-bottom:24px}#staff-agent .agent-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#staff-agent .agent-detail-form-container .handle{cursor:move}#staff-agent .agent-detail-form-container md-input-container md-switch{margin:0!important}#staff-agent .agent-detail-form-container #agent-image-uploader{position:relative}#staff-agent .agent-detail-form-container #agent-image-uploader.dropping .drop-text{display:flex}#staff-agent .agent-detail-form-container #agent-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#staff-agent .agent-detail-form-container #agent-image-uploader .upload-button{margin-bottom:16px}#staff-agent .agent-detail-form-container #agent-image-uploader .agent-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#staff-agent .agent-detail-form-container #agent-image-uploader .agent-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#staff-agent .agent-detail-form-container #agent-image-uploader .agent-image .media{max-height:100%}md-dialog.team-dialog{max-width:720px;width:720px}md-dialog.team-dialog md-dialog-content{display:block;position:relative}md-dialog.team-dialog md-toolbar .title{font-size:17px}md-dialog.team-dialog md-input-container textarea{min-height:150px}md-dialog.team-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.team-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.team-dialog .date-container{padding:16px 0 24px 0}md-dialog.team-dialog .error-list{font-size:13px}md-dialog.team-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.team-dialog .error-list .error .message{font-weight:500}md-dialog.team-dialog .error-list .error .md-button{margin:0}md-dialog.team-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.team-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#teams{position:relative}#teams>.header{height:76px;min-height:76px;max-height:76px}#teams>.header .logo .logo-icon{margin:0 16px 0 0}#teams>.header .logo .logo-text{font-size:24px}#teams>.header md-icon{color:#fff}#teams>.header .search-input-wrapper{position:relative}#teams>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#teams>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#teams>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#teams>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#teams>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#teams>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#teams>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#teams>.header.selected-bar .close-button-wrapper{width:244px}#teams>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#teams>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#teams>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#teams #add-team-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.telephone-dialog{max-width:720px;width:720px}md-dialog.telephone-dialog md-dialog-content{display:block;position:relative}md-dialog.telephone-dialog md-toolbar .title{font-size:17px}md-dialog.telephone-dialog md-input-container textarea{min-height:150px}md-dialog.telephone-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.telephone-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.telephone-dialog .date-container{padding:16px 0 24px 0}md-dialog.telephone-dialog .error-list{font-size:13px}md-dialog.telephone-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.telephone-dialog .error-list .error .message{font-weight:500}md-dialog.telephone-dialog .error-list .error .md-button{margin:0}md-dialog.telephone-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.telephone-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#staff-telephone .header{height:120px;min-height:120px;max-height:120px}#staff-telephone .header .goto-telephones-button{margin-right:16px}#staff-telephone .header .telephone-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#staff-telephone .header .telephone-image img{height:100%;width:auto;max-width:none}#staff-telephone .header .subtitle{margin:6px 0 0 0}#staff-telephone .telephone-detail-form-container{padding:24px;margin-bottom:24px}#staff-telephone .telephone-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#staff-telephone .telephone-detail-form-container .handle{cursor:move}#staff-telephone .telephone-detail-form-container md-input-container md-switch{margin:0!important}#staff-telephone .telephone-detail-form-container #telephone-image-uploader{position:relative}#staff-telephone .telephone-detail-form-container #telephone-image-uploader.dropping .drop-text{display:flex}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .upload-button{margin-bottom:16px}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .telephone-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .telephone-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .telephone-image .media{max-height:100%}#telephones{position:relative}#telephones>.header{height:76px;min-height:76px;max-height:76px}#telephones>.header .logo .logo-icon{margin:0 16px 0 0}#telephones>.header .logo .logo-text{font-size:24px}#telephones>.header md-icon{color:#fff}#telephones>.header .search-input-wrapper{position:relative}#telephones>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#telephones>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#telephones>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#telephones>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#telephones>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#telephones>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#telephones>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#telephones>.header.selected-bar .close-button-wrapper{width:244px}#telephones>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#telephones>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#telephones>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#telephones #add-telephone-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.user-dialog{max-width:720px;width:720px}md-dialog.user-dialog md-dialog-content{display:block;position:relative}md-dialog.user-dialog md-toolbar .title{font-size:17px}md-dialog.user-dialog md-input-container textarea{min-height:150px}md-dialog.user-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.user-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.user-dialog .date-container{padding:16px 0 24px 0}md-dialog.user-dialog .error-list{font-size:13px}md-dialog.user-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.user-dialog .error-list .error .message{font-weight:500}md-dialog.user-dialog .error-list .error .md-button{margin:0}md-dialog.user-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.user-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#staff-user .header{height:120px;min-height:120px;max-height:120px}#staff-user .header .goto-users-button{margin-right:16px}#staff-user .header .user-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#staff-user .header .user-image img{height:100%;width:auto;max-width:none}#staff-user .header .subtitle{margin:6px 0 0 0}#staff-user .user-detail-form-container{padding:24px;margin-bottom:24px}#staff-user .user-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#staff-user .user-detail-form-container .handle{cursor:move}#staff-user .user-detail-form-container md-input-container md-switch{margin:0!important}#staff-user .user-detail-form-container #user-image-uploader{position:relative}#staff-user .user-detail-form-container #user-image-uploader.dropping .drop-text{display:flex}#staff-user .user-detail-form-container #user-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#staff-user .user-detail-form-container #user-image-uploader .upload-button{margin-bottom:16px}#staff-user .user-detail-form-container #user-image-uploader .user-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#staff-user .user-detail-form-container #user-image-uploader .user-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#staff-user .user-detail-form-container #user-image-uploader .user-image .media{max-height:100%}#users{position:relative}#users>.header{height:76px;min-height:76px;max-height:76px}#users>.header .logo .logo-icon{margin:0 16px 0 0}#users>.header .logo .logo-text{font-size:24px}#users>.header md-icon{color:#fff}#users>.header .search-input-wrapper{position:relative}#users>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#users>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#users>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#users>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#users>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#users>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#users>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#users>.header.selected-bar .close-button-wrapper{width:244px}#users>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#users>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#users>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#users #add-user-button{position:fixed;bottom:8px;right:8px;padding:0}#cannedAnswers{position:relative}#cannedAnswers>.header{height:76px;min-height:76px;max-height:76px}#cannedAnswers>.header .logo .logo-icon{margin:0 16px 0 0}#cannedAnswers>.header .logo .logo-text{font-size:24px}#cannedAnswers>.header md-icon{color:#fff}#cannedAnswers>.header .search-input-wrapper{position:relative}#cannedAnswers>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#cannedAnswers>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#cannedAnswers>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#cannedAnswers>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#cannedAnswers>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#cannedAnswers>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#cannedAnswers>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#cannedAnswers>.header.selected-bar .close-button-wrapper{width:244px}#cannedAnswers>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#cannedAnswers>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#cannedAnswers>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#cannedAnswers #add-cannedAnswer-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.cannedAnswer-dialog{max-width:720px;width:720px}md-dialog.cannedAnswer-dialog md-dialog-content{display:block;position:relative}md-dialog.cannedAnswer-dialog md-toolbar .title{font-size:17px}md-dialog.cannedAnswer-dialog md-input-container textarea{min-height:150px}md-dialog.cannedAnswer-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.cannedAnswer-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.cannedAnswer-dialog .date-container{padding:16px 0 24px 0}md-dialog.cannedAnswer-dialog .error-list{font-size:13px}md-dialog.cannedAnswer-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.cannedAnswer-dialog .error-list .error .message{font-weight:500}md-dialog.cannedAnswer-dialog .error-list .error .md-button{margin:0}md-dialog.cannedAnswer-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.cannedAnswer-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.customDashboard-dialog{max-width:720px;width:720px}md-dialog.customDashboard-dialog md-dialog-content{display:block;position:relative}md-dialog.customDashboard-dialog md-toolbar .title{font-size:17px}md-dialog.customDashboard-dialog md-input-container textarea{min-height:150px}md-dialog.customDashboard-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.customDashboard-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.customDashboard-dialog .date-container{padding:16px 0 24px 0}md-dialog.customDashboard-dialog .error-list{font-size:13px}md-dialog.customDashboard-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.customDashboard-dialog .error-list .error .message{font-weight:500}md-dialog.customDashboard-dialog .error-list .error .md-button{margin:0}md-dialog.customDashboard-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.customDashboard-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#customDashboards{position:relative}#customDashboards>.header{height:76px;min-height:76px;max-height:76px}#customDashboards>.header .logo .logo-icon{margin:0 16px 0 0}#customDashboards>.header .logo .logo-text{font-size:24px}#customDashboards>.header md-icon{color:#fff}#customDashboards>.header .search-input-wrapper{position:relative}#customDashboards>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#customDashboards>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#customDashboards>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#customDashboards>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#customDashboards>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#customDashboards>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#customDashboards>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#customDashboards>.header.selected-bar .close-button-wrapper{width:244px}#customDashboards>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#customDashboards>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#customDashboards>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#customDashboards #add-customDashboard-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-customDashboard .header{height:120px;min-height:120px;max-height:120px}#tools-customDashboard .header .goto-customDashboards-button{margin-right:16px}#tools-customDashboard .header .customDashboard-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-customDashboard .header .customDashboard-image img{height:100%;width:auto;max-width:none}#tools-customDashboard .header .subtitle{margin:6px 0 0 0}#tools-customDashboard .customDashboard-detail-form-container{padding:24px;margin-bottom:24px}#tools-customDashboard .customDashboard-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-customDashboard .customDashboard-detail-form-container .handle{cursor:move}#tools-customDashboard .customDashboard-detail-form-container md-input-container md-switch{margin:0!important}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader{position:relative}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader.dropping .drop-text{display:flex}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .upload-button{margin-bottom:16px}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .customDashboard-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .customDashboard-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .customDashboard-image .media{max-height:100%}md-dialog.interval-dialog{max-width:720px;width:720px}md-dialog.interval-dialog md-dialog-content{display:block;position:relative}md-dialog.interval-dialog md-toolbar .title{font-size:17px}md-dialog.interval-dialog md-input-container textarea{min-height:150px}md-dialog.interval-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.interval-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.interval-dialog .date-container{padding:16px 0 24px 0}md-dialog.interval-dialog .error-list{font-size:13px}md-dialog.interval-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.interval-dialog .error-list .error .message{font-weight:500}md-dialog.interval-dialog .error-list .error .md-button{margin:0}md-dialog.interval-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.interval-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.interval-dialog{max-width:720px;width:720px}md-dialog.interval-dialog md-dialog-content{display:block;position:relative}md-dialog.interval-dialog md-toolbar .title{font-size:17px}md-dialog.interval-dialog md-input-container textarea{min-height:150px}md-dialog.interval-dialog .date-container{padding:16px 0 24px 0}md-dialog.interval-dialog .error-list{font-size:13px}md-dialog.interval-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.interval-dialog .error-list .error .message{font-weight:500}md-dialog.interval-dialog .error-list .error .md-button{margin:0}md-dialog.interval-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.interval-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.interval-dialog{max-width:720px;width:720px}md-dialog.interval-dialog md-dialog-content{display:block;position:relative}md-dialog.interval-dialog md-toolbar .title{font-size:17px}md-dialog.interval-dialog md-input-container textarea{min-height:150px}md-dialog.interval-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.interval-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.interval-dialog .date-container{padding:16px 0 24px 0}md-dialog.interval-dialog .error-list{font-size:13px}md-dialog.interval-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.interval-dialog .error-list .error .message{font-weight:500}md-dialog.interval-dialog .error-list .error .md-button{margin:0}md-dialog.interval-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.interval-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-interval .header{height:120px;min-height:120px;max-height:120px}#tools-interval .header .goto-intervals-button{margin-right:16px}#tools-interval .header .interval-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-interval .header .interval-image img{height:100%;width:auto;max-width:none}#tools-interval .header .subtitle{margin:6px 0 0 0}#tools-interval .interval-detail-form-container{padding:24px;margin-bottom:24px}#tools-interval .interval-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-interval .interval-detail-form-container .handle{cursor:move}#tools-interval .interval-detail-form-container md-input-container md-switch{margin:0!important}#tools-interval .interval-detail-form-container #interval-image-uploader{position:relative}#tools-interval .interval-detail-form-container #interval-image-uploader.dropping .drop-text{display:flex}#tools-interval .interval-detail-form-container #interval-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-interval .interval-detail-form-container #interval-image-uploader .upload-button{margin-bottom:16px}#tools-interval .interval-detail-form-container #interval-image-uploader .interval-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-interval .interval-detail-form-container #interval-image-uploader .interval-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-interval .interval-detail-form-container #interval-image-uploader .interval-image .media{max-height:100%}#intervals{position:relative}#intervals>.header{height:76px;min-height:76px;max-height:76px}#intervals>.header .logo .logo-icon{margin:0 16px 0 0}#intervals>.header .logo .logo-text{font-size:24px}#intervals>.header md-icon{color:#fff}#intervals>.header .search-input-wrapper{position:relative}#intervals>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#intervals>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#intervals>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#intervals>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#intervals>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#intervals>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#intervals>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#intervals>.header.selected-bar .close-button-wrapper{width:244px}#intervals>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#intervals>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#intervals>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#intervals #add-interval-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.pause-dialog{max-width:720px;width:720px}md-dialog.pause-dialog md-dialog-content{display:block;position:relative}md-dialog.pause-dialog md-toolbar .title{font-size:17px}md-dialog.pause-dialog md-input-container textarea{min-height:150px}md-dialog.pause-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.pause-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.pause-dialog .date-container{padding:16px 0 24px 0}md-dialog.pause-dialog .error-list{font-size:13px}md-dialog.pause-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.pause-dialog .error-list .error .message{font-weight:500}md-dialog.pause-dialog .error-list .error .md-button{margin:0}md-dialog.pause-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.pause-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#pauses{position:relative}#pauses>.header{height:76px;min-height:76px;max-height:76px}#pauses>.header .logo .logo-icon{margin:0 16px 0 0}#pauses>.header .logo .logo-text{font-size:24px}#pauses>.header md-icon{color:#fff}#pauses>.header .search-input-wrapper{position:relative}#pauses>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#pauses>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#pauses>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#pauses>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#pauses>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#pauses>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#pauses>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#pauses>.header.selected-bar .close-button-wrapper{width:244px}#pauses>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#pauses>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#pauses>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#pauses #add-pause-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.schedule-dialog{max-width:720px;width:720px}md-dialog.schedule-dialog md-dialog-content{display:block;position:relative}md-dialog.schedule-dialog md-toolbar .title{font-size:17px}md-dialog.schedule-dialog md-input-container textarea{min-height:150px}md-dialog.schedule-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.schedule-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.schedule-dialog .date-container{padding:16px 0 24px 0}md-dialog.schedule-dialog .error-list{font-size:13px}md-dialog.schedule-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.schedule-dialog .error-list .error .message{font-weight:500}md-dialog.schedule-dialog .error-list .error .md-button{margin:0}md-dialog.schedule-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.schedule-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-schedule .header{height:120px;min-height:120px;max-height:120px}#tools-schedule .header .goto-schedules-button{margin-right:16px}#tools-schedule .header .schedule-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-schedule .header .schedule-image img{height:100%;width:auto;max-width:none}#tools-schedule .header .subtitle{margin:6px 0 0 0}#tools-schedule .schedule-detail-form-container{padding:24px;margin-bottom:24px}#tools-schedule .schedule-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-schedule .schedule-detail-form-container .handle{cursor:move}#tools-schedule .schedule-detail-form-container md-input-container md-switch{margin:0!important}#tools-schedule .schedule-detail-form-container #schedule-image-uploader{position:relative}#tools-schedule .schedule-detail-form-container #schedule-image-uploader.dropping .drop-text{display:flex}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .upload-button{margin-bottom:16px}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .schedule-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .schedule-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .schedule-image .media{max-height:100%}#schedules{position:relative}#schedules>.header{height:76px;min-height:76px;max-height:76px}#schedules>.header .logo .logo-icon{margin:0 16px 0 0}#schedules>.header .logo .logo-text{font-size:24px}#schedules>.header md-icon{color:#fff}#schedules>.header .search-input-wrapper{position:relative}#schedules>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#schedules>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#schedules>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#schedules>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#schedules>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#schedules>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#schedules>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#schedules>.header.selected-bar .close-button-wrapper{width:244px}#schedules>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#schedules>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#schedules>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#schedules #add-schedule-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.sound-dialog{max-width:720px;width:720px}md-dialog.sound-dialog md-dialog-content{display:block;position:relative}md-dialog.sound-dialog md-toolbar .title{font-size:17px}md-dialog.sound-dialog md-input-container textarea{min-height:150px}md-dialog.sound-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.sound-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.sound-dialog .date-container{padding:16px 0 24px 0}md-dialog.sound-dialog .error-list{font-size:13px}md-dialog.sound-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.sound-dialog .error-list .error .message{font-weight:500}md-dialog.sound-dialog .error-list .error .md-button{margin:0}md-dialog.sound-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.sound-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#sounds{position:relative}#sounds>.header{height:76px;min-height:76px;max-height:76px}#sounds>.header .logo .logo-icon{margin:0 16px 0 0}#sounds>.header .logo .logo-text{font-size:24px}#sounds>.header md-icon{color:#fff}#sounds>.header .search-input-wrapper{position:relative}#sounds>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#sounds>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#sounds>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#sounds>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#sounds>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#sounds>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#sounds>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#sounds>.header.selected-bar .close-button-wrapper{width:244px}#sounds>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#sounds>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#sounds>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#sounds #add-sound-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.upload-dialog{max-width:720px;width:720px}md-dialog.upload-dialog md-dialog-content{display:block;position:relative}md-dialog.upload-dialog md-toolbar .title{font-size:17px}md-dialog.upload-dialog md-input-container textarea{min-height:150px}md-dialog.upload-dialog .date-container{padding:16px 0 24px 0}md-dialog.upload-dialog .error-list{font-size:13px}md-dialog.upload-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.upload-dialog .error-list .error .message{font-weight:500}md-dialog.upload-dialog .error-list .error .md-button{margin:0}md-dialog.upload-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.upload-dialog .sound-image{overflow:hidden;max-width:148px;margin-right:16px;border:3px solid rgba(0,0,0,.12);padding:10px}md-dialog.upload-dialog .sound-image img{width:auto;max-width:none}md-dialog.upload-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.tag-dialog{max-width:720px;width:720px}md-dialog.tag-dialog md-dialog-content{display:block;position:relative}md-dialog.tag-dialog md-toolbar .title{font-size:17px}md-dialog.tag-dialog md-input-container textarea{min-height:150px}md-dialog.tag-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.tag-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.tag-dialog .date-container{padding:16px 0 24px 0}md-dialog.tag-dialog .error-list{font-size:13px}md-dialog.tag-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.tag-dialog .error-list .error .message{font-weight:500}md-dialog.tag-dialog .error-list .error .md-button{margin:0}md-dialog.tag-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.tag-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tags{position:relative}#tags>.header{height:76px;min-height:76px;max-height:76px}#tags>.header .logo .logo-icon{margin:0 16px 0 0}#tags>.header .logo .logo-text{font-size:24px}#tags>.header md-icon{color:#fff}#tags>.header .search-input-wrapper{position:relative}#tags>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#tags>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#tags>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#tags>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#tags>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#tags>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#tags>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#tags>.header.selected-bar .close-button-wrapper{width:244px}#tags>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#tags>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#tags>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#tags #add-tag-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.template-dialog{max-width:720px;width:720px}md-dialog.template-dialog md-dialog-content{display:block;position:relative}md-dialog.template-dialog md-toolbar .title{font-size:17px}md-dialog.template-dialog md-input-container textarea{min-height:150px}md-dialog.template-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.template-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.template-dialog .date-container{padding:16px 0 24px 0}md-dialog.template-dialog .error-list{font-size:13px}md-dialog.template-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.template-dialog .error-list .error .message{font-weight:500}md-dialog.template-dialog .error-list .error .md-button{margin:0}md-dialog.template-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.template-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#templates{position:relative}#templates>.header{height:76px;min-height:76px;max-height:76px}#templates>.header .logo .logo-icon{margin:0 16px 0 0}#templates>.header .logo .logo-text{font-size:24px}#templates>.header md-icon{color:#fff}#templates>.header .search-input-wrapper{position:relative}#templates>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#templates>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#templates>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#templates>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#templates>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#templates>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#templates>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#templates>.header.selected-bar .close-button-wrapper{width:244px}#templates>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#templates>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#templates>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#templates #add-template-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.trigger-dialog{max-width:720px;width:720px}md-dialog.trigger-dialog md-dialog-content{display:block;position:relative}md-dialog.trigger-dialog md-toolbar .title{font-size:17px}md-dialog.trigger-dialog md-input-container textarea{min-height:150px}md-dialog.trigger-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.trigger-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.trigger-dialog .date-container{padding:16px 0 24px 0}md-dialog.trigger-dialog .error-list{font-size:13px}md-dialog.trigger-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.trigger-dialog .error-list .error .message{font-weight:500}md-dialog.trigger-dialog .error-list .error .md-button{margin:0}md-dialog.trigger-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.trigger-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.action-dialog{max-width:720px;width:720px}md-dialog.action-dialog md-dialog-content{display:block;position:relative}md-dialog.action-dialog md-toolbar .title{font-size:17px}md-dialog.action-dialog md-input-container textarea{min-height:150px}md-dialog.action-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.action-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.action-dialog .date-container{padding:16px 0 24px 0}md-dialog.action-dialog .error-list{font-size:13px}md-dialog.action-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.action-dialog .error-list .error .message{font-weight:500}md-dialog.action-dialog .error-list .error .md-button{margin:0}md-dialog.action-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.action-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.allCondition-dialog{max-width:720px;width:720px}md-dialog.allCondition-dialog md-dialog-content{display:block;position:relative}md-dialog.allCondition-dialog md-toolbar .title{font-size:17px}md-dialog.allCondition-dialog md-input-container textarea{min-height:150px}md-dialog.allCondition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.allCondition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.allCondition-dialog .date-container{padding:16px 0 24px 0}md-dialog.allCondition-dialog .error-list{font-size:13px}md-dialog.allCondition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.allCondition-dialog .error-list .error .message{font-weight:500}md-dialog.allCondition-dialog .error-list .error .md-button{margin:0}md-dialog.allCondition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.allCondition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.anyCondition-dialog{max-width:720px;width:720px}md-dialog.anyCondition-dialog md-dialog-content{display:block;position:relative}md-dialog.anyCondition-dialog md-toolbar .title{font-size:17px}md-dialog.anyCondition-dialog md-input-container textarea{min-height:150px}md-dialog.anyCondition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.anyCondition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.anyCondition-dialog .date-container{padding:16px 0 24px 0}md-dialog.anyCondition-dialog .error-list{font-size:13px}md-dialog.anyCondition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.anyCondition-dialog .error-list .error .message{font-weight:500}md-dialog.anyCondition-dialog .error-list .error .md-button{margin:0}md-dialog.anyCondition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.anyCondition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-trigger .header{height:120px;min-height:120px;max-height:120px}#tools-trigger .header .goto-triggers-button{margin-right:16px}#tools-trigger .header .trigger-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-trigger .header .trigger-image img{height:100%;width:auto;max-width:none}#tools-trigger .header .subtitle{margin:6px 0 0 0}#tools-trigger .trigger-detail-form-container{padding:24px;margin-bottom:24px}#tools-trigger .trigger-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-trigger .trigger-detail-form-container .handle{cursor:move}#tools-trigger .trigger-detail-form-container md-input-container md-switch{margin:0!important}#tools-trigger .trigger-detail-form-container #trigger-image-uploader{position:relative}#tools-trigger .trigger-detail-form-container #trigger-image-uploader.dropping .drop-text{display:flex}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .upload-button{margin-bottom:16px}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .trigger-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .trigger-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .trigger-image .media{max-height:100%}#triggers{position:relative}#triggers>.header{height:76px;min-height:76px;max-height:76px}#triggers>.header .logo .logo-icon{margin:0 16px 0 0}#triggers>.header .logo .logo-text{font-size:24px}#triggers>.header md-icon{color:#fff}#triggers>.header .search-input-wrapper{position:relative}#triggers>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#triggers>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#triggers>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#triggers>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#triggers>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#triggers>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#triggers>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#triggers>.header.selected-bar .close-button-wrapper{width:244px}#triggers>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#triggers>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#triggers>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#triggers #add-trigger-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.trunk-dialog{max-width:720px;width:720px}md-dialog.trunk-dialog md-dialog-content{display:block;position:relative}md-dialog.trunk-dialog md-toolbar .title{font-size:17px}md-dialog.trunk-dialog md-input-container textarea{min-height:150px}md-dialog.trunk-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.trunk-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.trunk-dialog .date-container{padding:16px 0 24px 0}md-dialog.trunk-dialog .error-list{font-size:13px}md-dialog.trunk-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.trunk-dialog .error-list .error .message{font-weight:500}md-dialog.trunk-dialog .error-list .error .md-button{margin:0}md-dialog.trunk-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.trunk-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-trunk .header{height:120px;min-height:120px;max-height:120px}#tools-trunk .header .goto-trunks-button{margin-right:16px}#tools-trunk .header .trunk-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-trunk .header .trunk-image img{height:100%;width:auto;max-width:none}#tools-trunk .header .subtitle{margin:6px 0 0 0}#tools-trunk .trunk-detail-form-container{padding:24px;margin-bottom:24px}#tools-trunk .trunk-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-trunk .trunk-detail-form-container .handle{cursor:move}#tools-trunk .trunk-detail-form-container md-input-container md-switch{margin:0!important}#tools-trunk .trunk-detail-form-container #trunk-image-uploader{position:relative}#tools-trunk .trunk-detail-form-container #trunk-image-uploader.dropping .drop-text{display:flex}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .upload-button{margin-bottom:16px}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .trunk-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .trunk-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .trunk-image .media{max-height:100%}#trunks{position:relative}#trunks>.header{height:76px;min-height:76px;max-height:76px}#trunks>.header .logo .logo-icon{margin:0 16px 0 0}#trunks>.header .logo .logo-text{font-size:24px}#trunks>.header md-icon{color:#fff}#trunks>.header .search-input-wrapper{position:relative}#trunks>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#trunks>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#trunks>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#trunks>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#trunks>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#trunks>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#trunks>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#trunks>.header.selected-bar .close-button-wrapper{width:244px}#trunks>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#trunks>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#trunks>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#trunks #add-trunk-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.variable-dialog{max-width:720px;width:720px}md-dialog.variable-dialog md-dialog-content{display:block;position:relative}md-dialog.variable-dialog md-toolbar .title{font-size:17px}md-dialog.variable-dialog md-input-container textarea{min-height:150px}md-dialog.variable-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.variable-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.variable-dialog .date-container{padding:16px 0 24px 0}md-dialog.variable-dialog .error-list{font-size:13px}md-dialog.variable-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.variable-dialog .error-list .error .message{font-weight:500}md-dialog.variable-dialog .error-list .error .md-button{margin:0}md-dialog.variable-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.variable-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#variables{position:relative}#variables>.header{height:76px;min-height:76px;max-height:76px}#variables>.header .logo .logo-icon{margin:0 16px 0 0}#variables>.header .logo .logo-text{font-size:24px}#variables>.header md-icon{color:#fff}#variables>.header .search-input-wrapper{position:relative}#variables>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#variables>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#variables>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#variables>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#variables>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#variables>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#variables>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#variables>.header.selected-bar .close-button-wrapper{width:244px}#variables>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#variables>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#variables>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#variables #add-variable-button{position:fixed;bottom:8px;right:8px;padding:0}#chanSpies{position:relative}#chanSpies>.header{height:76px;min-height:76px;max-height:76px}#chanSpies>.header .logo .logo-icon{margin:0 16px 0 0}#chanSpies>.header .logo .logo-text{font-size:24px}#chanSpies>.header md-icon{color:#fff}#chanSpies>.header .search-input-wrapper{position:relative}#chanSpies>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#chanSpies>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#chanSpies>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#chanSpies>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#chanSpies>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#chanSpies>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#chanSpies>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#chanSpies>.header.selected-bar .close-button-wrapper{width:244px}#chanSpies>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#chanSpies>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#chanSpies>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#chanSpies #add-chanSpy-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.chanSpy-dialog{max-width:720px;width:720px}md-dialog.chanSpy-dialog md-dialog-content{display:block;position:relative}md-dialog.chanSpy-dialog md-toolbar .title{font-size:17px}md-dialog.chanSpy-dialog md-input-container textarea{min-height:150px}md-dialog.chanSpy-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.chanSpy-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.chanSpy-dialog .date-container{padding:16px 0 24px 0}md-dialog.chanSpy-dialog .error-list{font-size:13px}md-dialog.chanSpy-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.chanSpy-dialog .error-list .error .message{font-weight:500}md-dialog.chanSpy-dialog .error-list .error .md-button{margin:0}md-dialog.chanSpy-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.chanSpy-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-chanSpy .header{height:120px;min-height:120px;max-height:120px}#voice-chanSpy .header .goto-chanSpies-button{margin-right:16px}#voice-chanSpy .header .chanSpy-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-chanSpy .header .chanSpy-image img{height:100%;width:auto;max-width:none}#voice-chanSpy .header .subtitle{margin:6px 0 0 0}#voice-chanSpy .chanSpy-detail-form-container{padding:24px;margin-bottom:24px}#voice-chanSpy .chanSpy-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-chanSpy .chanSpy-detail-form-container .handle{cursor:move}#voice-chanSpy .chanSpy-detail-form-container md-input-container md-switch{margin:0!important}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader{position:relative}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader.dropping .drop-text{display:flex}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .upload-button{margin-bottom:16px}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .chanSpy-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .chanSpy-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .chanSpy-image .media{max-height:100%}#contexts{position:relative}#contexts>.header{height:76px;min-height:76px;max-height:76px}#contexts>.header .logo .logo-icon{margin:0 16px 0 0}#contexts>.header .logo .logo-text{font-size:24px}#contexts>.header md-icon{color:#fff}#contexts>.header .search-input-wrapper{position:relative}#contexts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#contexts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#contexts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#contexts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#contexts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#contexts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#contexts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#contexts>.header.selected-bar .close-button-wrapper{width:244px}#contexts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#contexts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#contexts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#contexts #add-context-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.context-dialog{max-width:720px;width:720px}md-dialog.context-dialog md-dialog-content{display:block;position:relative}md-dialog.context-dialog md-toolbar .title{font-size:17px}md-dialog.context-dialog md-input-container textarea{min-height:150px}md-dialog.context-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.context-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.context-dialog .date-container{padding:16px 0 24px 0}md-dialog.context-dialog .error-list{font-size:13px}md-dialog.context-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.context-dialog .error-list .error .message{font-weight:500}md-dialog.context-dialog .error-list .error .md-button{margin:0}md-dialog.context-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.context-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.inboundroute-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-inboundroute .header{height:120px;min-height:120px;max-height:120px}#voice-inboundroute .header .goto-inboundroutes-button{margin-right:16px}#voice-inboundroute .header .inboundroute-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-inboundroute .header .inboundroute-image img{height:100%;width:auto;max-width:none}#voice-inboundroute .header .subtitle{margin:6px 0 0 0}#voice-inboundroute .inboundroute-detail-form-container{padding:24px;margin-bottom:24px}#voice-inboundroute .inboundroute-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-inboundroute .inboundroute-detail-form-container .handle{cursor:move}#voice-inboundroute .inboundroute-detail-form-container md-input-container md-switch{margin:0!important}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader{position:relative}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader.dropping .drop-text{display:flex}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .upload-button{margin-bottom:16px}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .inboundroute-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .inboundroute-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .inboundroute-image .media{max-height:100%}#inboundroutes{position:relative}#inboundroutes>.header{height:76px;min-height:76px;max-height:76px}#inboundroutes>.header .logo .logo-icon{margin:0 16px 0 0}#inboundroutes>.header .logo .logo-text{font-size:24px}#inboundroutes>.header md-icon{color:#fff}#inboundroutes>.header .search-input-wrapper{position:relative}#inboundroutes>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#inboundroutes>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#inboundroutes>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#inboundroutes>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#inboundroutes>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#inboundroutes>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#inboundroutes>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#inboundroutes>.header.selected-bar .close-button-wrapper{width:244px}#inboundroutes>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#inboundroutes>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#inboundroutes>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#inboundroutes #add-inboundroute-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.internalroute-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-internalroute .header{height:120px;min-height:120px;max-height:120px}#voice-internalroute .header .goto-internalroutes-button{margin-right:16px}#voice-internalroute .header .internalroute-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-internalroute .header .internalroute-image img{height:100%;width:auto;max-width:none}#voice-internalroute .header .subtitle{margin:6px 0 0 0}#voice-internalroute .internalroute-detail-form-container{padding:24px;margin-bottom:24px}#voice-internalroute .internalroute-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-internalroute .internalroute-detail-form-container .handle{cursor:move}#voice-internalroute .internalroute-detail-form-container md-input-container md-switch{margin:0!important}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader{position:relative}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader.dropping .drop-text{display:flex}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .upload-button{margin-bottom:16px}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .internalroute-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .internalroute-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .internalroute-image .media{max-height:100%}#internalroutes{position:relative}#internalroutes>.header{height:76px;min-height:76px;max-height:76px}#internalroutes>.header .logo .logo-icon{margin:0 16px 0 0}#internalroutes>.header .logo .logo-text{font-size:24px}#internalroutes>.header md-icon{color:#fff}#internalroutes>.header .search-input-wrapper{position:relative}#internalroutes>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#internalroutes>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#internalroutes>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#internalroutes>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#internalroutes>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#internalroutes>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#internalroutes>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#internalroutes>.header.selected-bar .close-button-wrapper{width:244px}#internalroutes>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#internalroutes>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#internalroutes>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#internalroutes #add-internalroute-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.musiconhold-dialog{max-width:720px;width:720px}md-dialog.musiconhold-dialog md-dialog-content{display:block;position:relative}md-dialog.musiconhold-dialog md-toolbar .title{font-size:17px}md-dialog.musiconhold-dialog md-input-container textarea{min-height:150px}md-dialog.musiconhold-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.musiconhold-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.musiconhold-dialog .date-container{padding:16px 0 24px 0}md-dialog.musiconhold-dialog .error-list{font-size:13px}md-dialog.musiconhold-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.musiconhold-dialog .error-list .error .message{font-weight:500}md-dialog.musiconhold-dialog .error-list .error .md-button{margin:0}md-dialog.musiconhold-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.musiconhold-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.mohSound-dialog{max-width:720px;width:720px}md-dialog.mohSound-dialog md-dialog-content{display:block;position:relative}md-dialog.mohSound-dialog md-toolbar .title{font-size:17px}md-dialog.mohSound-dialog md-input-container textarea{min-height:150px}md-dialog.mohSound-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.mohSound-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.mohSound-dialog .date-container{padding:16px 0 24px 0}md-dialog.mohSound-dialog .error-list{font-size:13px}md-dialog.mohSound-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.mohSound-dialog .error-list .error .message{font-weight:500}md-dialog.mohSound-dialog .error-list .error .md-button{margin:0}md-dialog.mohSound-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.mohSound-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-musiconhold .header{height:120px;min-height:120px;max-height:120px}#voice-musiconhold .header .goto-musiconholds-button{margin-right:16px}#voice-musiconhold .header .musiconhold-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-musiconhold .header .musiconhold-image img{height:100%;width:auto;max-width:none}#voice-musiconhold .header .subtitle{margin:6px 0 0 0}#voice-musiconhold .musiconhold-detail-form-container{padding:24px;margin-bottom:24px}#voice-musiconhold .musiconhold-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-musiconhold .musiconhold-detail-form-container .handle{cursor:move}#voice-musiconhold .musiconhold-detail-form-container md-input-container md-switch{margin:0!important}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader{position:relative}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader.dropping .drop-text{display:flex}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .upload-button{margin-bottom:16px}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .musiconhold-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .musiconhold-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .musiconhold-image .media{max-height:100%}#musiconholds{position:relative}#musiconholds>.header{height:76px;min-height:76px;max-height:76px}#musiconholds>.header .logo .logo-icon{margin:0 16px 0 0}#musiconholds>.header .logo .logo-text{font-size:24px}#musiconholds>.header md-icon{color:#fff}#musiconholds>.header .search-input-wrapper{position:relative}#musiconholds>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#musiconholds>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#musiconholds>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#musiconholds>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#musiconholds>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#musiconholds>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#musiconholds>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#musiconholds>.header.selected-bar .close-button-wrapper{width:244px}#musiconholds>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#musiconholds>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#musiconholds>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#musiconholds #add-musiconhold-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.outboundroute-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-outboundroute .header{height:120px;min-height:120px;max-height:120px}#voice-outboundroute .header .goto-outboundroutes-button{margin-right:16px}#voice-outboundroute .header .outboundroute-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-outboundroute .header .outboundroute-image img{height:100%;width:auto;max-width:none}#voice-outboundroute .header .subtitle{margin:6px 0 0 0}#voice-outboundroute .outboundroute-detail-form-container{padding:24px;margin-bottom:24px}#voice-outboundroute .outboundroute-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-outboundroute .outboundroute-detail-form-container .handle{cursor:move}#voice-outboundroute .outboundroute-detail-form-container md-input-container md-switch{margin:0!important}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader{position:relative}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader.dropping .drop-text{display:flex}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .upload-button{margin-bottom:16px}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .outboundroute-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .outboundroute-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .outboundroute-image .media{max-height:100%}#outboundroutes{position:relative}#outboundroutes>.header{height:76px;min-height:76px;max-height:76px}#outboundroutes>.header .logo .logo-icon{margin:0 16px 0 0}#outboundroutes>.header .logo .logo-text{font-size:24px}#outboundroutes>.header md-icon{color:#fff}#outboundroutes>.header .search-input-wrapper{position:relative}#outboundroutes>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#outboundroutes>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#outboundroutes>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#outboundroutes>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#outboundroutes>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#outboundroutes>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#outboundroutes>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#outboundroutes>.header.selected-bar .close-button-wrapper{width:244px}#outboundroutes>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#outboundroutes>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#outboundroutes>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#outboundroutes #add-outboundroute-button{position:fixed;bottom:8px;right:8px;padding:0}#realtime>.content .blink{animation:blinker 2s linear infinite}#realtime>.content .avatar-wrapper{position:relative}#realtime>.content .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}#realtime>.content .search-input-wrapper{position:relative;margin-left:20px}#realtime>.content .search-input-wrapper label{padding:6px;cursor:pointer}#realtime>.content .search-input-wrapper md-input-container{padding-top:20px}#realtime>.content .main .labels{padding:8px 16px}#realtime>.content .main .labels .label{margin:0 0 2px 4px;padding:2px 5px;font-size:11px;white-space:nowrap;border-radius:2px}#realtime>.content .main .status{position:absolute;bottom:-3px;right:5px}#realtime>.content .main .avatar-wrapper{position:relative}#realtime>.content .main .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}@keyframes blinker{50%{opacity:0}}md-dialog.voicemail-dialog{max-width:720px;width:720px}md-dialog.voicemail-dialog md-dialog-content{display:block;position:relative}md-dialog.voicemail-dialog md-toolbar .title{font-size:17px}md-dialog.voicemail-dialog md-input-container textarea{min-height:150px}md-dialog.voicemail-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.voicemail-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.voicemail-dialog .date-container{padding:16px 0 24px 0}md-dialog.voicemail-dialog .error-list{font-size:13px}md-dialog.voicemail-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.voicemail-dialog .error-list .error .message{font-weight:500}md-dialog.voicemail-dialog .error-list .error .md-button{margin:0}md-dialog.voicemail-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.voicemail-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-voicemail .header{height:120px;min-height:120px;max-height:120px}#voice-voicemail .header .goto-voicemails-button{margin-right:16px}#voice-voicemail .header .voicemail-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-voicemail .header .voicemail-image img{height:100%;width:auto;max-width:none}#voice-voicemail .header .subtitle{margin:6px 0 0 0}#voice-voicemail .voicemail-detail-form-container{padding:24px;margin-bottom:24px}#voice-voicemail .voicemail-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-voicemail .voicemail-detail-form-container .handle{cursor:move}#voice-voicemail .voicemail-detail-form-container md-input-container md-switch{margin:0!important}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader{position:relative}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader.dropping .drop-text{display:flex}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .upload-button{margin-bottom:16px}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .voicemail-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .voicemail-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .voicemail-image .media{max-height:100%}#voicemails{position:relative}#voicemails>.header{height:76px;min-height:76px;max-height:76px}#voicemails>.header .logo .logo-icon{margin:0 16px 0 0}#voicemails>.header .logo .logo-text{font-size:24px}#voicemails>.header md-icon{color:#fff}#voicemails>.header .search-input-wrapper{position:relative}#voicemails>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#voicemails>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#voicemails>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#voicemails>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#voicemails>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#voicemails>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#voicemails>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#voicemails>.header.selected-bar .close-button-wrapper{width:244px}#voicemails>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#voicemails>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#voicemails>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#voicemails #add-voicemail-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.voiceQueue-dialog{max-width:720px;width:720px}md-dialog.voiceQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.voiceQueue-dialog md-toolbar .title{font-size:17px}md-dialog.voiceQueue-dialog md-input-container textarea{min-height:150px}md-dialog.voiceQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.voiceQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.voiceQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.voiceQueue-dialog .error-list{font-size:13px}md-dialog.voiceQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.voiceQueue-dialog .error-list .error .message{font-weight:500}md-dialog.voiceQueue-dialog .error-list .error .md-button{margin:0}md-dialog.voiceQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.voiceQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-voiceQueue .header{height:120px;min-height:120px;max-height:120px}#voice-voiceQueue .header .goto-voiceQueues-button{margin-right:16px}#voice-voiceQueue .header .voiceQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-voiceQueue .header .voiceQueue-image img{height:100%;width:auto;max-width:none}#voice-voiceQueue .header .subtitle{margin:6px 0 0 0}#voice-voiceQueue .voiceQueue-detail-form-container{padding:24px;margin-bottom:24px}#voice-voiceQueue .voiceQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-voiceQueue .voiceQueue-detail-form-container .handle{cursor:move}#voice-voiceQueue .voiceQueue-detail-form-container md-input-container md-switch{margin:0!important}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader{position:relative}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader.dropping .drop-text{display:flex}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .upload-button{margin-bottom:16px}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .voiceQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .voiceQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .voiceQueue-image .media{max-height:100%}#voiceQueues{position:relative}#voiceQueues>.header{height:76px;min-height:76px;max-height:76px}#voiceQueues>.header .logo .logo-icon{margin:0 16px 0 0}#voiceQueues>.header .logo .logo-text{font-size:24px}#voiceQueues>.header md-icon{color:#fff}#voiceQueues>.header .search-input-wrapper{position:relative}#voiceQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#voiceQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#voiceQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#voiceQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#voiceQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#voiceQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#voiceQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#voiceQueues>.header.selected-bar .close-button-wrapper{width:244px}#voiceQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#voiceQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#voiceQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#voiceQueues #add-voiceQueue-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.voiceRecording-dialog{max-width:720px;width:720px}md-dialog.voiceRecording-dialog md-dialog-content{display:block;position:relative}md-dialog.voiceRecording-dialog md-toolbar .title{font-size:17px}md-dialog.voiceRecording-dialog md-input-container textarea{min-height:150px}md-dialog.voiceRecording-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.voiceRecording-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.voiceRecording-dialog .date-container{padding:16px 0 24px 0}md-dialog.voiceRecording-dialog .error-list{font-size:13px}md-dialog.voiceRecording-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.voiceRecording-dialog .error-list .error .message{font-weight:500}md-dialog.voiceRecording-dialog .error-list .error .md-button{margin:0}md-dialog.voiceRecording-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.voiceRecording-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voiceRecordings{position:relative}#voiceRecordings>.header{height:76px;min-height:76px;max-height:76px}#voiceRecordings>.header .logo .logo-icon{margin:0 16px 0 0}#voiceRecordings>.header .logo .logo-text{font-size:24px}#voiceRecordings>.header md-icon{color:#fff}#voiceRecordings>.header .search-input-wrapper{position:relative}#voiceRecordings>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#voiceRecordings>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#voiceRecordings>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#voiceRecordings>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#voiceRecordings>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#voiceRecordings>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#voiceRecordings>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#voiceRecordings>.header.selected-bar .close-button-wrapper{width:244px}#voiceRecordings>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#voiceRecordings>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#voiceRecordings>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#voiceRecordings #add-voiceRecording-button{position:fixed;bottom:8px;right:8px;padding:0}#layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation{width:240px;min-width:240px;max-width:240px;overflow-x:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2),width .1s linear,min-width .1s linear,max-width .1s linear;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}#layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation .navigation-header{height:64px;min-height:64px;background-color:rgba(255,255,255,.05);padding:0 16px 0 24px}#layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation:not(._md-locked-open){box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}@media only screen and (min-width:960px){.ms-navigation-folded #content-container{margin-left:64px}.ms-navigation-folded #layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation{position:absolute}.ms-navigation-folded:not(.ms-navigation-folded-open) #layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation{position:absolute;width:64px;min-width:64px;max-width:64px}.ms-navigation-folded:not(.ms-navigation-folded-open) #layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation .navigation-header{padding:0 16px}.ms-navigation-folded:not(.ms-navigation-folded-open) #layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation .navigation-header .logo-text{display:none}}#vertical-navigation{width:240px;min-width:240px;max-width:240px;overflow-x:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2),width .1s linear,min-width .1s linear,max-width .1s linear;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}#vertical-navigation .navigation-header{height:64px;min-height:64px;background-color:rgba(255,255,255,.05);padding:0 16px 0 24px}#vertical-navigation .navigation-header .logo .logo-image{display:block;width:32px;min-width:32px;height:32px;line-height:32px;text-align:center;font-size:16px;font-weight:500;color:#fff;border-radius:2px}#vertical-navigation .navigation-header .logo .logo-text{color:#fff;margin-left:16px;font-size:16px}#vertical-navigation .navigation-header .fold-toggle{transition:transform .3s ease-in-out .1s;transform:rotate(0);margin:0;padding:8px;width:34px!important;height:34px!important;cursor:pointer}#vertical-navigation:not(._md-locked-open){box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}@media only screen and (min-width:960px){.ms-navigation-folded #content-container{margin-left:64px}.ms-navigation-folded #vertical-navigation{position:absolute}.ms-navigation-folded #vertical-navigation .navigation-header .fold-toggle{transform:rotate(180deg);opacity:0}.ms-navigation-folded.ms-navigation-folded-open #vertical-navigation .navigation-header .fold-toggle{transition:transform .3s ease-in-out .1s,opacity .3s ease-in-out .2s;opacity:1}.ms-navigation-folded:not(.ms-navigation-folded-open) #vertical-navigation{position:absolute;width:64px;min-width:64px;max-width:64px}.ms-navigation-folded:not(.ms-navigation-folded-open) #vertical-navigation .navigation-header{padding:0 16px}.ms-navigation-folded:not(.ms-navigation-folded-open) #vertical-navigation .navigation-header .logo-text{display:none}}#quick-panel{width:330px;min-width:330px;max-width:330px;z-index:99}#quick-panel md-content{height:100%}#quick-panel md-content md-tabs{height:100%}#quick-panel md-content md-tabs md-tabs-wrapper{background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.06)}#quick-panel md-content md-tabs md-tabs-wrapper .md-tab{max-width:none!important}#quick-panel md-content md-tabs md-tabs-content-wrapper md-tab-content{height:100%;overflow:hidden}#quick-panel md-content md-tabs md-tabs-content-wrapper md-tab-content>div{overflow:hidden;height:100%}@media screen and (max-width:600px){#quick-panel{width:80%;min-width:80%;max-width:80%}}#quick-panel .activity-tab .friends .friend{position:relative}#quick-panel .activity-tab .friends .friend .status{position:absolute;top:8px;left:44px;width:18px;height:18px;z-index:10;border-radius:50%;border:3px solid #fff}#quick-panel .activity-tab .friends .friend .status.online{background-color:#00c853}#quick-panel .activity-tab .friends .friend .status.offline{background-color:#d50000}#quick-panel .activity-tab .friends .friend .status.away{background-color:#ff6d00}#quick-panel .activity-tab .friends .friend .unread-message-count{position:absolute;left:16px;bottom:16px;width:18px;height:18px;z-index:10;border-radius:50%;text-align:center;line-height:18px;font-size:11px}#quick-panel .activity-tab .servers .server .status{margin:24px 20px 28px 8px}#quick-panel .activity-tab .servers .server .status.normal{color:#00c853}#quick-panel .activity-tab .servers .server .status.warn{color:#d50000}#quick-panel .activity-tab .servers .server .status.error{color:#ff6d00}#quick-panel .activity-tab .stat md-progress-linear.normal .md-bar{background-color:#00c853}#quick-panel .activity-tab .stat md-progress-linear.normal .md-container{background-color:rgba(0,200,83,.3)}#quick-panel .activity-tab .stat md-progress-linear.warn .md-bar{background-color:#ff6d00}#quick-panel .activity-tab .stat md-progress-linear.warn .md-container{background-color:rgba(255,109,0,.3)}#quick-panel .activity-tab .stat md-progress-linear.alert .md-bar{background-color:#d50000}#quick-panel .activity-tab .stat md-progress-linear.alert .md-container{background-color:rgba(213,0,0,.3)}#quick-panel .chat-tab .chat,#quick-panel .chat-tab .main{position:absolute;width:100%;top:0;bottom:0}#quick-panel .chat-tab .main .contact{position:relative}#quick-panel .chat-tab .main .contact .status{position:absolute;top:8px;left:44px;width:18px;height:18px;border:3px solid #fff;border-radius:50%;z-index:10}#quick-panel .chat-tab .main .contact .status.online{background-color:#00c853}#quick-panel .chat-tab .main .contact .status.offline{background-color:#d50000}#quick-panel .chat-tab .main .contact .status.away{background-color:#ff6d00}#quick-panel .chat-tab .main .contact .unread-message-count{position:absolute;left:16px;bottom:16px;width:18px;height:18px;z-index:10;border-radius:50%;text-align:center;line-height:18px;font-size:11px}#quick-panel .chat-tab .main .recent .contact .status{top:18px}#quick-panel .chat-tab .chat{max-height:100%;overflow:hidden}#quick-panel .chat-tab .chat .message-row .bubble{position:relative;padding:8px;background-color:#eceff1;border:1px solid #dcdfe1}#quick-panel .chat-tab .chat .message-row .bubble:after,#quick-panel .chat-tab .chat .message-row .bubble:before{content:' ';position:absolute;width:0;height:0}#quick-panel .chat-tab .chat .message-row .bubble:after{left:-7px;right:auto;top:0;bottom:auto;border:11px solid;border-color:#eceff1 transparent transparent transparent}#quick-panel .chat-tab .chat .message-row .bubble:before{left:-9px;right:auto;top:-1px;bottom:auto;border:8px solid;border-color:#dcdfe1 transparent transparent transparent}#quick-panel .chat-tab .chat .message-row .bubble .time{font-size:11px;margin-top:8px}#quick-panel .chat-tab .chat .message-row.contact .avatar{margin:0 16px 0 0}#quick-panel .chat-tab .chat .message-row.user{align-items:flex-end}#quick-panel .chat-tab .chat .message-row.user .avatar{order:2;margin:0 0 0 16px}#quick-panel .chat-tab .chat .message-row.user .bubble{background-color:#e8f5e9;border:1px solid #dfebe0;order:1}#quick-panel .chat-tab .chat .message-row.user .bubble:after{right:-7px;left:auto;top:auto;bottom:0;border-color:transparent transparent #e8f5e9 transparent}#quick-panel .chat-tab .chat .message-row.user .bubble:before{right:-9px;left:auto;top:auto;bottom:-1px;border-color:transparent transparent #dfebe0 transparent}#quick-panel .chat-tab .chat .reply{border-top:1px solid rgba(0,0,0,.12)}#quick-panel .chat-tab .chat .reply textarea{margin:8px;resize:none;height:80px;padding:8px 16px 8px 8px}#layout-content-with-toolbar #toolbar{padding:0 0 0 16px}#layout-content-with-toolbar #toolbar .logo{margin-right:16px}#layout-content-with-toolbar #toolbar .logo .logo-image{display:block;background:#039be5;width:32px;min-width:32px;height:32px;line-height:32px;text-align:center;color:#fff;font-size:16px;font-weight:500;border-radius:2px}#layout-content-with-toolbar #toolbar .logo .logo-text{color:rgba(0,0,0,.87);margin-left:16px;font-size:16px}#layout-horizontal-navigation #toolbar-navigation-container{z-index:55}#layout-horizontal-navigation #toolbar-navigation-container #toolbar{height:64px;min-height:64px;max-height:64px;box-shadow:none}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .navigation-toggle{height:64px;border-right:1px solid rgba(0,0,0,.12)}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .navigation-toggle .md-button{margin:0;width:64px;height:64px}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .logo{margin:0 16px}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .logo .logo-image{display:block;background:#039be5;width:32px;min-width:32px;height:32px;line-height:32px;text-align:center;color:#fff;font-size:16px;font-weight:500;border-radius:2px}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .logo .logo-text{color:rgba(0,0,0,.87);margin-left:16px;font-size:16px}@media only screen and (max-width:960px){#layout-horizontal-navigation #toolbar-navigation-container{height:64px;min-height:64px;max-height:64px}#layout-horizontal-navigation #toolbar-navigation-container #toolbar{padding:0}}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .logo{width:240px;padding:0 16px}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .logo .logo-image{display:block;background:#039be5;width:32px;min-width:32px;height:32px;line-height:32px;text-align:center;color:#fff;font-size:16px;font-weight:500;border-radius:2px}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .logo .logo-text{color:rgba(0,0,0,.87);margin-left:16px;font-size:16px}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .navigation-fold-toggle{width:64px;min-width:64px;height:64px;margin:0;border-right:1px solid rgba(0,0,0,.12);border-radius:0}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .navigation-fold-toggle md-icon{transition:transform .3s ease-in-out .1s;transform:rotate(0)}@media only screen and (min-width:960px){.ms-navigation-folded #layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .navigation-fold-toggle md-icon{transform:rotate(180deg)}}@media only screen and (max-width:960px){#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .logo{width:auto}}#toolbar{height:64px;min-height:64px;max-height:64px;z-index:55!important}#toolbar .blink{animation:blinker 2s linear infinite}#toolbar #navigation-toggle{width:64px;min-width:64px;height:64px;margin:0;border-right:1px solid rgba(0,0,0,.12);border-radius:0}#toolbar #user-menu{height:64px;padding:0}#toolbar #user-menu md-menu-item .md-button{font-size:15px}#toolbar #user-menu md-menu-item .md-button md-icon{margin:auto 16px auto 0}#toolbar #user-menu .user-button{margin:0;padding:0 16px;height:64px;text-transform:none}#toolbar #user-menu .user-button .avatar-wrapper{position:relative}#toolbar #user-menu .user-button .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}#toolbar #user-menu .user-button .username{margin:0 12px 0 8px}#toolbar #language-menu{height:64px}#toolbar #language-menu .language-button{min-width:64px;height:64px;margin:0;padding:0 16px;border-radius:0}#toolbar #language-menu .language-button .iso{text-transform:uppercase}#toolbar #language-menu .language-button .flag{margin-right:8px}#toolbar #quick-panel-toggle{width:64px;height:64px;margin:0;border-radius:0}#toolbar .toolbar-separator{height:64px;width:1px;background:rgba(0,0,0,.12)}#language-menu-content md-menu-item .flag{margin-right:16px}#language-message{min-height:88px;max-width:600px}#language-message .md-toast-content{height:90px}@media screen and (max-width:600px){#toolbar #user-menu .user-button{min-width:64px;padding:0 2px 0 10px}}.geEditor{font-family:Helvetica Neue,Helvetica,Arial Unicode MS,Arial;font-size:10pt;overflow:hidden;height:100%}.geMenubarContainer .geItem,.geSidebarContainer .geTitle,.geToolbar .geButton,.geToolbar .geLabel{cursor:pointer!important}.geContentEditable div,.geContentEditable table,.geContentEditable table td{border:1px dashed #d3d3d3}.geBackgroundPage{-webkit-box-shadow:0 0 3px 0 #d9d9d9;-moz-box-shadow:0 0 3px 0 #d9d9d9;box-shadow:0 0 3px 0 #d9d9d9}.geMenubarContainer a,.geSidebarContainer a,.geToolbar a{color:#000!important;text-decoration:none}.geDiagramContainer,.geFooterContainer,.geHsplit,.geMenubarContainer,.geOutlineContainer,.geSidebarContainer,.geToolbarContainer,.geVsplit{overflow:hidden;position:absolute;cursor:default}.geDiagramContainer,.geOutlineContainer{background-color:#fff;outline:0}.geMenubar,.geToolbar{white-space:nowrap;display:block;width:100%}.geMenubarContainer .geItem,.geSidebar,.geSidebar .geItem,.geSidebarContainer .geTitle,.geToolbar .geButton,.geToolbar .geLabel,.mxPopupMenuItem{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-ms-transition:all .1s ease-in-out;transition:all .1s ease-in-out}.geHint{background-color:#fff;border:1px solid gray;padding:4px 16px 4px 16px;border-radius:3px;-webkit-box-shadow:1px 1px 2px 0 #ddd;-moz-box-shadow:1px 1px 2px 0 #ddd;box-shadow:1px 1px 2px 0 #ddd;opacity:.8}.geStatusAlert{white-space:nowrap;margin-top:-5px;font-size:12px;padding:4px 6px 4px 6px;background-color:#f2dede;border:1px solid #ebccd1;color:#a94442!important;border-radius:3px}.geStatusAlert:hover{background-color:#f1d8d8;border-color:#d6b2b8}.geStatusMessage{white-space:nowrap;margin-top:-5px;padding:4px 6px 4px 6px;font-size:12px;background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);background-repeat:repeat-x;border:1px solid #b2dba1;border-radius:3px;color:#3c763d!important}.geStatusMessage:hover{background:#c8e5bc;border-color:#b2dba1}.geAlert{position:absolute;white-space:nowrap;padding:14px;background-color:#f2dede;border:1px solid #ebccd1;color:#a94442;border-radius:3px;-webkit-box-shadow:2px 2px 3px 0 #ddd;-moz-box-shadow:2px 2px 3px 0 #ddd;box-shadow:2px 2px 3px 0 #ddd}.geBtn{background-color:#f5f5f5;border-radius:2px;border:1px solid #d8d8d8;color:#333;cursor:default;font-size:11px;font-weight:700;height:29px;line-height:27px;margin:0 0 0 8px;min-width:72px;outline:0;padding:0 8px;cursor:pointer}.geBtn:hover{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);border:1px solid #c6c6c6;background-color:#f8f8f8;background-image:linear-gradient(#f8f8f8 0,#f1f1f1 100%);color:#111}.geBtn:disabled{opacity:.5}.geBtnUp{background-image:url(data:image/gif;base64,R0lGODlhCgAGAJECAGZmZtXV1f///wAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0QzM3ODJERjg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0QzM3ODJFMDg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjRDMzc4MkREODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjRDMzc4MkRFODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAgAsAAAAAAoABgAAAg6UjwiQBhGYglCKhXFLBQA7);background-position:center center;background-repeat:no-repeat}.geBtnUp:active{background-color:#4d90fe;background-image:linear-gradient(#4d90fe 0,#357ae8 100%)}.geBtnDown{background-image:url(data:image/gif;base64,R0lGODlhCgAGAJECANXV1WZmZv///wAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0QzM3ODJEQjg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0QzM3ODJEQzg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjRDMzc4MkQ5ODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjRDMzc4MkRBODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAgAsAAAAAAoABgAAAg6UjxLLewEiCAnOZBzeBQA7);background-position:center center;background-repeat:no-repeat}.geBtnDown:active{background-color:#4d90fe;background-image:linear-gradient(#4d90fe 0,#357ae8 100%)}.geColorBtn{background-color:#f5f5f5;background-image:linear-gradient(#f5f5f5 0,#e1e1e1 100%);border-radius:4px;border:1px solid rgba(0,0,0,.5);color:#333;cursor:default;margin:0;outline:0;padding:0;cursor:pointer}.geColorBtn:hover{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);border:1px solid rgba(0,0,0,.7)}.geColorBtn:active{background-color:#4d90fe;background-image:linear-gradient(#4d90fe 0,#357ae8 100%);border:1px solid #2f5bb7;color:#fff}.geColorBtn:disabled{opacity:.5}.gePrimaryBtn{background-color:#4d90fe;background-image:linear-gradient(#4d90fe 0,#4787ed 100%);border:1px solid #3079ed;color:#fff}.gePrimaryBtn:hover{background-color:#357ae8;background-image:linear-gradient(#4d90fe 0,#357ae8 100%);border:1px solid #2f5bb7;color:#fff}.gePrimaryBtn:disabled{opacity:.5}.geAlertLink{color:#843534;font-weight:700;text-decoration:none}.geMenubarContainer{background-color:#fff}.geMenubar{padding:0 2px 0 2px;vertical-align:middle}.geMenubarContainer .geItem,.geToolbar .geItem{padding:6px 8px 6px 8px;cursor:default}.geMenubarContainer .geItem:hover,.geToolbarContainer .geItem:hover{background:#eee}.mxDisabled:hover{background:inherit!important}.geMenubar a.geStatus{color:#b3b3b3;padding-left:6px;display:inline-block;cursor:default!important}.geMenubar a.geStatus:hover{background:0 0}.geMenubarMenu{border:1px solid #d5d5d5!important}.geToolbarContainer{background:#f5f5f5;border-bottom:1px solid #e0e0e0}.geSidebarContainer .geToolbarContainer{background:0 0;border-bottom:none}.geSidebarContainer button{text-overflow:ellipsis;overflow:hidden}.geToolbar{padding:1px 0 0 6px;border-top:1px solid #e0e0e0;-webkit-box-shadow:inset 0 1px 0 0 #fff;-moz-box-shadow:inset 0 1px 0 0 #fff;box-shadow:inset 0 1px 0 0 #fff}.geToolbarContainer .geSeparator{float:left;width:1px;height:34px;background:#e5e5e5;margin-left:6px;margin-right:6px;margin-top:-2px}.geToolbarContainer .geButton{float:left;width:20px;height:20px;padding:0 2px 4px 2px;margin:2px;border:1px solid transparent;cursor:pointer;opacity:.6}.geToolbarContainer .geButton:hover{border:1px solid gray;border-radius:2px;opacity:1;filter:none!important}.geToolbarContainer .geButton:active{border:1px solid #000}div.mxWindow .geButton{margin:-1px 2px 2px 2px;padding:1px 2px 2px 1px}.geToolbarContainer .geLabel{float:left;margin:2px;cursor:pointer;padding:3px 5px 3px 5px;border:1px solid transparent;opacity:.6}.geToolbarContainer .geLabel:hover{border:1px solid gray;border-radius:2px;opacity:.9}.geToolbarContainer .geLabel:active{border:1px solid #000;opacity:1;filter:none!important}.geToolbarContainer .mxDisabled:hover{border:1px solid transparent!important;opacity:.2!important}.geToolbarMenu{border:3px solid #e0e0e0!important;-webkit-box-shadow:none!important;-moz-box-shadow:none!important;box-shadow:none!important;filter:none!important}.geDiagramBackdrop{background-color:#ebebeb;border-style:solid;border-color:#e5e5e5;border-width:1px 0 0 1px}.geSidebarContainer{background:#fff;overflow:hidden;position:absolute;border-top:1px solid #e5e5e5;overflow:auto}.geSidebar{background:#f5f5f5;border-bottom:1px solid #e5e5e5;padding:5px;padding-bottom:12px;overflow:hidden}.geSidebarContainer .geTitle{display:block;font-size:9pt;border-bottom:1px solid #e5e5e5;font-weight:400;padding:6px 0 6px 14px;margin:0;cursor:default;background:#eee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4em}.geSidebarContainer .geTitle:hover{background:#e5e5e5}.geTitle img{opacity:.5}.geTitle img:hover{opacity:1}.geSidebar .geItem{display:inline-block;background-repeat:no-repeat;background-position:50% 50%;border:1px solid transparent;border-radius:2px;cursor:move}.geSidebar .geItem:hover{border:1px solid gray!important}.geItem{vertical-align:top;display:inline-block}.geSidebarTooltip{position:absolute;background:#fff;overflow:hidden;border:1px solid gray;border-radius:8px;-webkit-box-shadow:0 0 2px 2px #d5d5d5;-moz-box-shadow:0 0 2px 2px #d5d5d5;box-shadow:0 0 2px 2px #d5d5d5}.geFooterContainer{background:#e5e5e5;border-top:1px solid silver}.geFooterContainer a{font-size:14px;color:#235695;font-weight:700;text-decoration:none}.geFooterContainer table{border-collapse:collapse;margin:0 auto}.geFooterContainer td{border-left:1px solid silver;border-right:1px solid silver}.geFooterContainer td:hover{background-color:#b3b3b3}.geFooterContainer a{display:block;box-sizing:border-box;width:100%;height:100%;padding:11px 42px 11px 42px;white-space:nowrap}.geHsplit{cursor:col-resize;background-color:#e5e5e5;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAHBAMAAADdS/HjAAAAGFBMVEUzMzP///9tbW1QUFCKiopBQUF8fHxfX1/IXlmXAAAAHUlEQVQImWMQEGAQFWUQFmYQF2cQEmIQE2MQEQEACy4BF67hpEwAAAAASUVORK5CYII=);background-repeat:no-repeat;background-position:center center}.geVsplit{font-size:1pt;cursor:row-resize;background-color:#e5e5e5;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAEBAMAAACw6DhOAAAAGFBMVEUzMzP///9tbW1QUFCKiopBQUF8fHxfX1/IXlmXAAAAFElEQVQImWNgNVdzYBAUFBRggLMAEzYBy29kEPgAAAAASUVORK5CYII=);background-repeat:no-repeat;background-position:center center}.geHsplit:hover,.geVsplit:hover{background-color:#d5d5d5}.geDialog{position:absolute;background:#fff;overflow:hidden;padding:30px;border:1px solid #acacac;-webkit-box-shadow:0 0 2px 2px #d5d5d5;-moz-box-shadow:0 0 2px 2px #d5d5d5;box-shadow:0 0 2px 2px #d5d5d5;z-index:2}.geDialogClose{position:absolute;width:9px;height:9px;opacity:.5;cursor:pointer}.geDialogClose:hover{opacity:1}.geDialogTitle{box-sizing:border-box;white-space:nowrap;background:#e5e5e5;border-bottom:1px solid silver;font-size:15px;font-weight:700;text-align:center;color:#235695}.geDialogFooter{background:#f5f5f5;white-space:nowrap;text-align:right;box-sizing:border-box;border-top:1px solid #e5e5e5;color:#a9a9a9}.geSprite{background:url(sprites.png) no-repeat top left;width:21px;height:21px}.geSprite-actualsize{background-position:0 0}.geSprite-bold{background-position:0 -46px}.geSprite-bottom{background-position:0 -92px}.geSprite-center{background-position:0 -138px}.geSprite-delete{background-position:0 -184px}.geSprite-fillcolor{background-position:0 -230px}.geSprite-fit{background-position:0 -276px}.geSprite-fontcolor{background-position:0 -322px}.geSprite-gradientcolor{background-position:0 -368px}.geSprite-image{background-position:0 -414px}.geSprite-italic{background-position:0 -460px}.geSprite-left{background-position:0 -506px}.geSprite-middle{background-position:0 -552px}.geSprite-print{background-position:0 -598px}.geSprite-redo{background-position:0 -644px}.geSprite-right{background-position:0 -690px}.geSprite-shadow{background-position:0 -736px}.geSprite-strokecolor{background-position:0 -782px}.geSprite-top{background-position:0 -828px}.geSprite-underline{background-position:0 -874px}.geSprite-undo{background-position:0 -920px}.geSprite-zoomin{background-position:0 -966px}.geSprite-zoomout{background-position:0 -1012px}.geSprite-helbow{background-position:0 -1058px}.geSprite-velbow{background-position:0 -1104px}.geSprite-straight{background-position:0 -1150px}.geSprite-entity{background-position:0 -1196px}.geSprite-segment{background-position:0 -1242px}.geSprite-orthogonal{background-position:0 -1288px}.geSprite-noarrow{background-position:0 -1334px}.geSprite-endclassic{background-position:0 -1380px}.geSprite-endopen{background-position:0 -1426px}.geSprite-endblock{background-position:0 -1472px}.geSprite-endoval{background-position:0 -1518px}.geSprite-enddiamond{background-position:0 -1564px}.geSprite-endthindiamond{background-position:0 -1610px}.geSprite-endclassictrans{background-position:0 -1656px}.geSprite-endblocktrans{background-position:0 -1702px}.geSprite-endovaltrans{background-position:0 -1748px}.geSprite-enddiamondtrans{background-position:0 -1794px}.geSprite-endthindiamondtrans{background-position:0 -1840px}.geSprite-startclassic{background-position:0 -1886px}.geSprite-startopen{background-position:0 -1932px}.geSprite-startblock{background-position:0 -1978px}.geSprite-startoval{background-position:0 -2024px}.geSprite-startdiamond{background-position:0 -2070px}.geSprite-startthindiamond{background-position:0 -2116px}.geSprite-startclassictrans{background-position:0 -2162px}.geSprite-startblocktrans{background-position:0 -2208px}.geSprite-startovaltrans{background-position:0 -2254px}.geSprite-startdiamondtrans{background-position:0 -2300px}.geSprite-startthindiamondtrans{background-position:0 -2346px}.geSprite-copy{background-position:0 -410px}.geSprite-cut{background-position:0 -320px}.geSprite-paste{background-position:0 -367px}.geSprite-duplicate{background-position:0 -736px}.geSprite-save{background-position:0 -782px}.geSprite-publish{background-position:0 -92px}.geBaseButton{padding:10px;border-radius:6px;border:1px solid silver;cursor:pointer;background-color:#ececec;background-image:linear-gradient(#ececec 0,#fcfcfc 100%)}.geBaseButton:hover{background:#ececec}.geBigButton{color:#fff;border:none;padding:10px;font-size:14pt;white-space:nowrap;border-radius:6px;text-shadow:#295989 0 1px 0;background-color:#428bca;background-image:linear-gradient(#4687ce 0,#3068a2 100%);-webkit-box-shadow:rgba(255,255,255,.0980392) 0 1px 0 0 inset,rgba(0,0,0,.2) 0 1px 1px 0;-moz-box-shadow:rgba(255,255,255,.0980392) 0 1px 0 0 inset,rgba(0,0,0,.2) 0 1px 1px 0;box-shadow:rgba(255,255,255,.0980392) 0 1px 0 0 inset,rgba(0,0,0,.2) 0 1px 1px 0}.geBigButton:hover{background-color:#2d6ca2;background-image:linear-gradient(#5a94d3 0,#3673b5 100%)}.geBigButton:active{background-color:#3673b5;background-image:none}@media print{div.geNoPrint{display:none!important}}html div.mxRubberband{border-color:#00d;background:#9cf}td.mxPopupMenuIcon div{width:16px;height:16px}html div.mxPopupMenu{-webkit-box-shadow:2px 2px 3px #d5d5d5;-moz-box-shadow:2px 2px 3px #d5d5d5;box-shadow:2px 2px 3px #d5d5d5;background:#fff;position:absolute;border:3px solid #e7e7e7;padding:3px}html table.mxPopupMenu{border-collapse:collapse;margin:0}html td.mxPopupMenuItem{padding:7px 30px 7px 30px;font-family:Helvetica Neue,Helvetica,Arial Unicode MS,Arial;font-size:10pt}html td.mxPopupMenuIcon{background-color:#fff;padding:0}td.mxPopupMenuIcon .geIcon{padding:2px;padding-bottom:4px;margin:2px;border:1px solid transparent;opacity:.5}td.mxPopupMenuIcon .geIcon:hover{border:1px solid gray;border-radius:2px;opacity:1}html tr.mxPopupMenuItemHover{background-color:#eee;color:#000}table.mxPopupMenu hr{color:#ccc;background-color:#ccc;border:none;height:1px}table.mxPopupMenu tr{font-size:4pt}html td.mxWindowTitle{font-family:Helvetica Neue,Helvetica,Arial Unicode MS,Arial;text-align:left;font-size:12px;color:#707070;padding:4px}div.mxTooltip{-webkit-box-shadow:3px 3px 12px silver;-moz-box-shadow:3px 3px 12px silver;box-shadow:3px 3px 12px silver;background:#ffc;border-style:solid;border-width:1px;border-color:#000;font-family:Arial;font-size:8pt;position:absolute;cursor:default;padding:4px;color:#000}body{font-family:Arial Unicode MS,Arial,Helvetica;font-size:10pt}
\ No newline at end of file
+[data-ng-click],[ng-click],[x-ng-click]{cursor:pointer}.ms-container{width:100%!important}.ms-container .ms-list{height:380px!important}.ms-container .ms-selectable li.ms-elem-selectable,.ms-container .ms-selection li.ms-elem-selection{padding:6px 12px!important;height:34px!important}.ms-container .ms-search{height:34px;margin-bottom:5px;border:solid 1px #e5e5e5;background-color:#fff;box-shadow:none;width:100%;padding-left:6px}.ms-container .ms-footer{text-align:center}.no-border{border:none!important}.left .motion-spinner{border-top-color:#ea4c61!important;border-left-color:#ea4c61!important}.right .motion-spinner{border-top-color:#ea4c61!important;border-right-color:#ea4c61!important}body,html{height:100%;position:relative}body{margin:0;padding:0}[tabindex='-1']:focus{outline:0}.inset{padding:10px}a.md-no-style,button.md-no-style{font-weight:400;background-color:inherit;text-align:left;border:none;padding:0;margin:0}button,input,select,textarea{vertical-align:baseline}button,html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[type=button][disabled],input[type=reset][disabled],input[type=submit][disabled]{cursor:default}textarea{vertical-align:top;overflow:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box;-webkit-box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input:-webkit-autofill{text-shadow:none}.md-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;text-transform:none;width:1px}.md-shadow{position:absolute;top:0;left:0;bottom:0;right:0;border-radius:inherit;pointer-events:none}.md-shadow-bottom-z-1{box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.md-shadow-bottom-z-2{box-shadow:0 4px 8px 0 rgba(0,0,0,.4)}.md-shadow-animated.md-shadow{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)}.md-ripple-container{pointer-events:none;position:absolute;overflow:hidden;left:0;top:0;width:100%;height:100%;transition:all .55s cubic-bezier(.25,.8,.25,1)}.md-ripple{position:absolute;transform:translate(-50%,-50%) scale(0);transform-origin:50% 50%;opacity:0;border-radius:50%}.md-ripple.md-ripple-placed{transition:margin .9s cubic-bezier(.25,.8,.25,1),border .9s cubic-bezier(.25,.8,.25,1),width .9s cubic-bezier(.25,.8,.25,1),height .9s cubic-bezier(.25,.8,.25,1),opacity .9s cubic-bezier(.25,.8,.25,1),transform .9s cubic-bezier(.25,.8,.25,1)}.md-ripple.md-ripple-scaled{transform:translate(-50%,-50%) scale(1)}.md-ripple.md-ripple-active,.md-ripple.md-ripple-full,.md-ripple.md-ripple-visible{opacity:.2}.md-ripple.md-ripple-remove{animation:md-remove-ripple .9s cubic-bezier(.25,.8,.25,1)}@keyframes md-remove-ripple{0%{opacity:.15}100%{opacity:0}}.md-padding{padding:8px}.md-margin{margin:8px}.md-scroll-mask{position:absolute;background-color:transparent;top:0;right:0;bottom:0;left:0;z-index:50}.md-scroll-mask>.md-scroll-mask-bar{display:block;position:absolute;background-color:#fafafa;right:0;top:0;bottom:0;z-index:65;box-shadow:inset 0 0 1px rgba(0,0,0,.3)}.md-no-momentum{-webkit-overflow-scrolling:auto}.md-no-flicker{-webkit-filter:blur(0)}@media (min-width:960px){.md-padding{padding:16px}}body[dir=ltr],body[dir=rtl],html[dir=ltr],html[dir=rtl]{unicode-bidi:embed}bdo[dir=rtl]{direction:rtl;unicode-bidi:bidi-override}bdo[dir=ltr]{direction:ltr;unicode-bidi:bidi-override}body,html{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.md-display-4{font-size:112px;font-weight:300;letter-spacing:-.010em;line-height:112px}.md-display-3{font-size:56px;font-weight:400;letter-spacing:-.005em;line-height:56px}.md-display-2{font-size:45px;font-weight:400;line-height:64px}.md-display-1{font-size:34px;font-weight:400;line-height:40px}.md-headline{font-size:24px;font-weight:400;line-height:32px}.md-title{font-size:20px;font-weight:500;letter-spacing:.005em}.md-subhead{font-size:16px;font-weight:400;letter-spacing:.010em;line-height:24px}.md-body-1{font-size:14px;font-weight:400;letter-spacing:.010em;line-height:20px}.md-body-2{font-size:14px;font-weight:500;letter-spacing:.010em;line-height:24px}.md-caption{font-size:12px;letter-spacing:.020em}.md-button{letter-spacing:.010em}button,html,input,select,textarea{font-family:Roboto,"Helvetica Neue",sans-serif}button,input,select,textarea{font-size:100%}@keyframes md-autocomplete-list-out{0%{animation-timing-function:linear}50%{opacity:0;height:40px;animation-timing-function:ease-in}100%{height:0;opacity:0}}@keyframes md-autocomplete-list-in{0%{opacity:0;height:0;animation-timing-function:ease-out}50%{opacity:0;height:40px}100%{opacity:1;height:40px}}md-autocomplete{border-radius:2px;display:block;height:40px;position:relative;overflow:visible;min-width:190px}md-autocomplete[disabled] input{cursor:default}md-autocomplete[md-floating-label]{border-radius:0;background:0 0;height:auto}md-autocomplete[md-floating-label] md-input-container{padding-bottom:0}md-autocomplete[md-floating-label] md-autocomplete-wrap{height:auto}md-autocomplete[md-floating-label] button{position:absolute;top:auto;bottom:0;right:0;width:30px;height:30px}md-autocomplete md-autocomplete-wrap{display:flex;flex-direction:row;box-sizing:border-box;position:relative;overflow:visible;height:40px}md-autocomplete md-autocomplete-wrap.md-menu-showing{z-index:51}md-autocomplete md-autocomplete-wrap input,md-autocomplete md-autocomplete-wrap md-input-container{flex:1 1 0%;box-sizing:border-box;min-width:0}md-autocomplete md-autocomplete-wrap md-progress-linear{position:absolute;bottom:-2px;left:0}md-autocomplete md-autocomplete-wrap md-progress-linear.md-inline{bottom:40px;right:2px;left:2px;width:auto}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate{position:absolute;top:0;left:0;width:100%;height:3px;transition:none}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate .md-container{transition:none;height:3px}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate.ng-enter{transition:opacity .15s linear}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate.ng-enter.ng-enter-active{opacity:1}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate.ng-leave{transition:opacity .15s linear}md-autocomplete md-autocomplete-wrap md-progress-linear .md-mode-indeterminate.ng-leave.ng-leave-active{opacity:0}md-autocomplete input:not(.md-input){font-size:14px;box-sizing:border-box;border:none;box-shadow:none;outline:0;background:0 0;width:100%;padding:0 15px;line-height:40px;height:40px}md-autocomplete input:not(.md-input)::-ms-clear{display:none}md-autocomplete button{position:relative;line-height:20px;text-align:center;width:30px;height:30px;cursor:pointer;border:none;border-radius:50%;padding:0;font-size:12px;background:0 0;margin:auto 5px}md-autocomplete button:after{content:'';position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;transform:scale(0);opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1)}md-autocomplete button:focus{outline:0}md-autocomplete button:focus:after{transform:scale(1);opacity:1}md-autocomplete button md-icon{position:absolute;top:50%;left:50%;transform:translate3d(-50%,-50%,0) scale(.9)}md-autocomplete button md-icon path{stroke-width:0}md-autocomplete button.ng-enter{transform:scale(0);transition:transform .15s ease-out}md-autocomplete button.ng-enter.ng-enter-active{transform:scale(1)}md-autocomplete button.ng-leave{transition:transform .15s ease-out}md-autocomplete button.ng-leave.ng-leave-active{transform:scale(0)}@media screen and (-ms-high-contrast:active){md-autocomplete input{border:1px solid #fff}md-autocomplete li:focus{color:#fff}}.md-virtual-repeat-container.md-autocomplete-suggestions-container{position:absolute;box-shadow:0 2px 5px rgba(0,0,0,.25);height:225.5px;max-height:225.5px;z-index:100}.md-virtual-repeat-container.md-not-found{height:48px}.md-autocomplete-suggestions{margin:0;list-style:none;padding:0}.md-autocomplete-suggestions li{font-size:14px;overflow:hidden;padding:0 15px;line-height:48px;height:48px;transition:background .15s linear;margin:0;white-space:nowrap;text-overflow:ellipsis}.md-autocomplete-suggestions li:focus{outline:0}.md-autocomplete-suggestions li:not(.md-not-found-wrapper){cursor:pointer}@media screen and (-ms-high-contrast:active){.md-autocomplete-suggestions,md-autocomplete{border:1px solid #fff}}md-backdrop{transition:opacity 450ms;position:absolute;top:0;bottom:0;left:0;right:0;z-index:50}md-backdrop.md-menu-backdrop{position:fixed!important;z-index:99}md-backdrop.md-select-backdrop{z-index:81;transition-duration:0}md-backdrop.md-dialog-backdrop{z-index:79}md-backdrop.md-bottom-sheet-backdrop{z-index:69}md-backdrop.md-sidenav-backdrop{z-index:59}md-backdrop.md-click-catcher{position:absolute}md-backdrop.md-opaque{opacity:.48}md-backdrop.md-opaque.ng-enter{opacity:0}md-backdrop.md-opaque.ng-enter.md-opaque.ng-enter-active{opacity:.48}md-backdrop.md-opaque.ng-leave{opacity:.48;transition:opacity .4s}md-backdrop.md-opaque.ng-leave.md-opaque.ng-leave-active{opacity:0}md-bottom-sheet{position:absolute;left:0;right:0;bottom:0;padding:8px 16px 88px 16px;z-index:70;border-top-width:1px;border-top-style:solid;transform:translate3d(0,80px,0);transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:transform}md-bottom-sheet.md-has-header{padding-top:0}md-bottom-sheet.ng-enter{opacity:0;transform:translate3d(0,100%,0)}md-bottom-sheet.ng-enter-active{opacity:1;display:block;transform:translate3d(0,80px,0)!important}md-bottom-sheet.ng-leave-active{transform:translate3d(0,100%,0)!important;transition:all .3s cubic-bezier(.55,0,.55,.2)}md-bottom-sheet .md-subheader{background-color:transparent;font-family:Roboto,"Helvetica Neue",sans-serif;line-height:56px;padding:0;white-space:nowrap}md-bottom-sheet md-inline-icon{display:inline-block;height:24px;width:24px;fill:#444}md-bottom-sheet md-list-item{display:flex;outline:0}md-bottom-sheet md-list-item:hover{cursor:pointer}md-bottom-sheet.md-list md-list-item{padding:0;align-items:center;height:48px}md-bottom-sheet.md-grid{padding-left:24px;padding-right:24px;padding-top:0}md-bottom-sheet.md-grid md-list{display:flex;flex-direction:row;flex-wrap:wrap;transition:all .5s;align-items:center}md-bottom-sheet.md-grid md-list-item{flex-direction:column;align-items:center;transition:all .5s;height:96px;margin-top:8px;margin-bottom:8px}@media (max-width:960px){md-bottom-sheet.md-grid md-list-item{flex:1 1 33.3333333333%;max-width:33.3333333333%}md-bottom-sheet.md-grid md-list-item:nth-of-type(3n+1){align-items:flex-start}md-bottom-sheet.md-grid md-list-item:nth-of-type(3n){align-items:flex-end}}@media (min-width:960px) and (max-width:1279px){md-bottom-sheet.md-grid md-list-item{flex:1 1 25%;max-width:25%}}@media (min-width:1280px) and (max-width:1919px){md-bottom-sheet.md-grid md-list-item{flex:1 1 16.6666666667%;max-width:16.6666666667%}}@media (min-width:1920px){md-bottom-sheet.md-grid md-list-item{flex:1 1 14.2857142857%;max-width:14.2857142857%}}md-bottom-sheet.md-grid md-list-item::before{display:none}md-bottom-sheet.md-grid md-list-item .md-list-item-content{display:flex;flex-direction:column;align-items:center;width:48px;padding-bottom:16px}md-bottom-sheet.md-grid md-list-item .md-grid-item-content{border:1px solid transparent;display:flex;flex-direction:column;align-items:center;width:80px}md-bottom-sheet.md-grid md-list-item .md-grid-text{font-weight:400;line-height:16px;font-size:13px;margin:0;white-space:nowrap;width:64px;text-align:center;text-transform:none;padding-top:8px}@media screen and (-ms-high-contrast:active){md-bottom-sheet{border:1px solid #fff}}button.md-button::-moz-focus-inner{border:0}.md-button{display:inline-block;position:relative;cursor:pointer;min-height:36px;min-width:88px;line-height:36px;vertical-align:middle;align-items:center;text-align:center;border-radius:3px;box-sizing:border-box;user-select:none;outline:0;border:0;padding:0 6px;margin:6px 8px;background:0 0;color:currentColor;white-space:nowrap;text-transform:uppercase;font-weight:500;font-size:14px;font-style:inherit;font-variant:inherit;font-family:inherit;text-decoration:none;overflow:hidden;transition:box-shadow .4s cubic-bezier(.25,.8,.25,1),background-color .4s cubic-bezier(.25,.8,.25,1)}.md-button:focus{outline:0}.md-button:focus,.md-button:hover{text-decoration:none}.md-button.ng-hide,.md-button.ng-leave{transition:none}.md-button.md-cornered{border-radius:0}.md-button.md-icon{padding:0;background:0 0}.md-button.md-raised:not([disabled]){box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.md-button.md-icon-button{margin:0 6px;height:40px;min-width:0;line-height:24px;padding:8px;width:40px;border-radius:50%}.md-button.md-icon-button .md-ripple-container{border-radius:50%;background-clip:padding-box;overflow:hidden;-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC)}.md-button.md-fab{z-index:20;line-height:56px;min-width:0;width:56px;height:56px;vertical-align:middle;box-shadow:0 2px 5px 0 rgba(0,0,0,.26);border-radius:50%;background-clip:padding-box;overflow:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-property:background-color,box-shadow,transform}.md-button.md-fab.md-fab-bottom-right{top:auto;right:20px;bottom:20px;left:auto;position:absolute}.md-button.md-fab.md-fab-bottom-left{top:auto;right:auto;bottom:20px;left:20px;position:absolute}.md-button.md-fab.md-fab-top-right{top:20px;right:20px;bottom:auto;left:auto;position:absolute}.md-button.md-fab.md-fab-top-left{top:20px;right:auto;bottom:auto;left:20px;position:absolute}.md-button.md-fab .md-ripple-container{border-radius:50%;background-clip:padding-box;overflow:hidden;-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC)}.md-button.md-fab.md-mini{line-height:40px;width:40px;height:40px}.md-button.md-fab.ng-hide,.md-button.md-fab.ng-leave{transition:none}.md-button:not([disabled]).md-fab.md-focused,.md-button:not([disabled]).md-raised.md-focused{box-shadow:0 2px 5px 0 rgba(0,0,0,.26)}.md-button:not([disabled]).md-fab:active,.md-button:not([disabled]).md-raised:active{box-shadow:0 4px 8px 0 rgba(0,0,0,.4)}.md-button .md-ripple-container{border-radius:3px;background-clip:padding-box;overflow:hidden;-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC)}.md-button.md-icon-button md-icon,button.md-button.md-fab md-icon{display:block}.md-toast-open-top .md-button.md-fab-top-left,.md-toast-open-top .md-button.md-fab-top-right{transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate3d(0,42px,0)}.md-toast-open-top .md-button.md-fab-top-left:not([disabled]).md-focused,.md-toast-open-top .md-button.md-fab-top-left:not([disabled]):hover,.md-toast-open-top .md-button.md-fab-top-right:not([disabled]).md-focused,.md-toast-open-top .md-button.md-fab-top-right:not([disabled]):hover{transform:translate3d(0,41px,0)}.md-toast-open-bottom .md-button.md-fab-bottom-left,.md-toast-open-bottom .md-button.md-fab-bottom-right{transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate3d(0,-42px,0)}.md-toast-open-bottom .md-button.md-fab-bottom-left:not([disabled]).md-focused,.md-toast-open-bottom .md-button.md-fab-bottom-left:not([disabled]):hover,.md-toast-open-bottom .md-button.md-fab-bottom-right:not([disabled]).md-focused,.md-toast-open-bottom .md-button.md-fab-bottom-right:not([disabled]):hover{transform:translate3d(0,-43px,0)}.md-button-group{display:flex;flex:1;width:100%}.md-button-group>.md-button{flex:1;display:block;overflow:hidden;width:0;border-width:1px 0 1px 1px;border-radius:0;text-align:center;text-overflow:ellipsis;white-space:nowrap}.md-button-group>.md-button:first-child{border-radius:2px 0 0 2px}.md-button-group>.md-button:last-child{border-right-width:1px;border-radius:0 2px 2px 0}@media screen and (-ms-high-contrast:active){.md-button.md-fab,.md-button.md-raised{border:1px solid #fff}}md-card{box-sizing:border-box;display:flex;flex-direction:column;margin:8px;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}md-card md-card-header{padding:16px;display:flex;flex-direction:row}md-card md-card-header:first-child md-card-avatar{margin-right:12px}[dir=rtl] md-card md-card-header:first-child md-card-avatar{margin-right:auto;margin-left:12px}md-card md-card-header:last-child md-card-avatar{margin-left:12px}[dir=rtl] md-card md-card-header:last-child md-card-avatar{margin-left:auto;margin-right:12px}md-card md-card-header md-card-avatar{width:40px;height:40px}md-card md-card-header md-card-avatar .md-user-avatar,md-card md-card-header md-card-avatar md-icon{border-radius:50%}md-card md-card-header md-card-avatar md-icon{padding:8px}md-card md-card-header md-card-avatar+md-card-header-text{max-height:40px}md-card md-card-header md-card-avatar+md-card-header-text .md-title{font-size:14px}md-card md-card-header md-card-header-text{display:flex;flex:1;flex-direction:column}md-card md-card-header md-card-header-text .md-subhead{font-size:14px}md-card md-card-title-media img,md-card>img,md-card>md-card-header img{box-sizing:border-box;display:flex;flex:0 0 auto;width:100%;height:auto}md-card md-card-title{padding:24px 16px 16px;display:flex;flex:1 1 auto;flex-direction:row}md-card md-card-title+md-card-content{padding-top:0}md-card md-card-title md-card-title-text{flex:1;flex-direction:column;display:flex}md-card md-card-title md-card-title-text .md-subhead{padding-top:0;font-size:14px}md-card md-card-title md-card-title-text:only-child .md-subhead{padding-top:12px}md-card md-card-title md-card-title-media{margin-top:-8px}md-card md-card-title md-card-title-media .md-media-sm{height:80px;width:80px}md-card md-card-title md-card-title-media .md-media-md{height:112px;width:112px}md-card md-card-title md-card-title-media .md-media-lg{height:152px;width:152px}md-card md-card-content{display:block;padding:16px}md-card md-card-content>p:first-child{margin-top:0}md-card md-card-content>p:last-child{margin-bottom:0}md-card md-card-content .md-media-xl{height:240px;width:240px}md-card .md-actions,md-card md-card-actions{margin:8px}md-card .md-actions.layout-column .md-button:not(.md-icon-button),md-card md-card-actions.layout-column .md-button:not(.md-icon-button){margin:2px 0}md-card .md-actions.layout-column .md-button:not(.md-icon-button):first-of-type,md-card md-card-actions.layout-column .md-button:not(.md-icon-button):first-of-type{margin-top:0}md-card .md-actions.layout-column .md-button:not(.md-icon-button):last-of-type,md-card md-card-actions.layout-column .md-button:not(.md-icon-button):last-of-type{margin-bottom:0}md-card .md-actions.layout-column .md-button.md-icon-button,md-card md-card-actions.layout-column .md-button.md-icon-button{margin-top:6px;margin-bottom:6px}md-card .md-actions md-card-icon-actions,md-card md-card-actions md-card-icon-actions{flex:1;justify-content:flex-start;display:flex;flex-direction:row}md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button),md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button){margin:0 4px}md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button):first-of-type,md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button):first-of-type{margin-left:0}[dir=rtl] md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button):first-of-type,[dir=rtl] md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button):first-of-type{margin-left:auto;margin-right:0}md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button):last-of-type,md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button):last-of-type{margin-right:0}[dir=rtl] md-card .md-actions:not(.layout-column) .md-button:not(.md-icon-button):last-of-type,[dir=rtl] md-card md-card-actions:not(.layout-column) .md-button:not(.md-icon-button):last-of-type{margin-right:auto;margin-left:0}md-card .md-actions:not(.layout-column) .md-button.md-icon-button,md-card md-card-actions:not(.layout-column) .md-button.md-icon-button{margin-left:6px;margin-right:6px}md-card .md-actions:not(.layout-column) .md-button.md-icon-button:first-of-type,md-card md-card-actions:not(.layout-column) .md-button.md-icon-button:first-of-type{margin-left:12px}[dir=rtl] md-card .md-actions:not(.layout-column) .md-button.md-icon-button:first-of-type,[dir=rtl] md-card md-card-actions:not(.layout-column) .md-button.md-icon-button:first-of-type{margin-left:auto;margin-right:12px}md-card .md-actions:not(.layout-column) .md-button.md-icon-button:last-of-type,md-card md-card-actions:not(.layout-column) .md-button.md-icon-button:last-of-type{margin-right:12px}[dir=rtl] md-card .md-actions:not(.layout-column) .md-button.md-icon-button:last-of-type,[dir=rtl] md-card md-card-actions:not(.layout-column) .md-button.md-icon-button:last-of-type{margin-right:auto;margin-left:12px}md-card .md-actions:not(.layout-column) .md-button+md-card-icon-actions,md-card md-card-actions:not(.layout-column) .md-button+md-card-icon-actions{flex:1;justify-content:flex-end;display:flex;flex-direction:row}md-card md-card-footer{margin-top:auto;padding:16px}@media screen and (-ms-high-contrast:active){md-card{border:1px solid #fff}}.md-image-no-fill>img{width:auto;height:auto}.md-contact-chips .md-chips md-chip{padding:0 25px 0 0}[dir=rtl] .md-contact-chips .md-chips md-chip{padding:0 0 0 25px}.md-contact-chips .md-chips md-chip .md-contact-avatar{float:left}[dir=rtl] .md-contact-chips .md-chips md-chip .md-contact-avatar{float:right}.md-contact-chips .md-chips md-chip .md-contact-avatar img{height:32px;border-radius:16px}.md-contact-chips .md-chips md-chip .md-contact-name{display:inline-block;height:32px;margin-left:8px}[dir=rtl] .md-contact-chips .md-chips md-chip .md-contact-name{margin-left:auto;margin-right:8px}.md-contact-suggestion{height:56px}.md-contact-suggestion img{height:40px;border-radius:20px;margin-top:8px}.md-contact-suggestion .md-contact-name{margin-left:8px;width:120px}[dir=rtl] .md-contact-suggestion .md-contact-name{margin-left:auto;margin-right:8px}.md-contact-suggestion .md-contact-email,.md-contact-suggestion .md-contact-name{display:inline-block;overflow:hidden;text-overflow:ellipsis}.md-contact-chips-suggestions li{height:100%}.md-chips{display:block;font-family:Roboto,"Helvetica Neue",sans-serif;font-size:16px;padding:0 0 8px 3px;vertical-align:middle}.md-chips:after{content:'';display:table;clear:both}[dir=rtl] .md-chips{padding:0 3px 8px 0}.md-chips.md-readonly .md-chip-input-container{min-height:32px}.md-chips:not(.md-readonly){cursor:text}.md-chips.md-removable md-chip{padding-right:22px}[dir=rtl] .md-chips.md-removable md-chip{padding-right:0;padding-left:22px}.md-chips.md-removable md-chip .md-chip-content{padding-right:4px}[dir=rtl] .md-chips.md-removable md-chip .md-chip-content{padding-right:0;padding-left:4px}.md-chips md-chip{cursor:default;border-radius:16px;display:block;height:32px;line-height:32px;margin:8px 8px 0 0;padding:0 12px 0 12px;float:left;box-sizing:border-box;max-width:100%;position:relative}[dir=rtl] .md-chips md-chip{margin:8px 0 0 8px}[dir=rtl] .md-chips md-chip{float:right}.md-chips md-chip .md-chip-content{display:block;float:left;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}[dir=rtl] .md-chips md-chip .md-chip-content{float:right}.md-chips md-chip .md-chip-content:focus{outline:0}.md-chips md-chip._md-chip-content-edit-is-enabled{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}.md-chips md-chip .md-chip-remove-container{position:absolute;right:0;line-height:22px}[dir=rtl] .md-chips md-chip .md-chip-remove-container{right:auto;left:0}.md-chips md-chip .md-chip-remove{text-align:center;width:32px;height:32px;min-width:0;padding:0;background:0 0;border:none;box-shadow:none;margin:0;position:relative}.md-chips md-chip .md-chip-remove md-icon{height:18px;width:18px;position:absolute;top:50%;left:50%;transform:translate3d(-50%,-50%,0)}.md-chips .md-chip-input-container{display:block;line-height:32px;margin:8px 8px 0 0;padding:0;float:left}[dir=rtl] .md-chips .md-chip-input-container{margin:8px 0 0 8px}[dir=rtl] .md-chips .md-chip-input-container{float:right}.md-chips .md-chip-input-container input:not([type]),.md-chips .md-chip-input-container input[type=email],.md-chips .md-chip-input-container input[type=number],.md-chips .md-chip-input-container input[type=tel],.md-chips .md-chip-input-container input[type=text],.md-chips .md-chip-input-container input[type=url]{border:0;height:32px;line-height:32px;padding:0}.md-chips .md-chip-input-container input:not([type]):focus,.md-chips .md-chip-input-container input[type=email]:focus,.md-chips .md-chip-input-container input[type=number]:focus,.md-chips .md-chip-input-container input[type=tel]:focus,.md-chips .md-chip-input-container input[type=text]:focus,.md-chips .md-chip-input-container input[type=url]:focus{outline:0}.md-chips .md-chip-input-container md-autocomplete,.md-chips .md-chip-input-container md-autocomplete-wrap{background:0 0;height:32px}.md-chips .md-chip-input-container md-autocomplete md-autocomplete-wrap{box-shadow:none}.md-chips .md-chip-input-container md-autocomplete input{position:relative}.md-chips .md-chip-input-container input{border:0;height:32px;line-height:32px;padding:0}.md-chips .md-chip-input-container input:focus{outline:0}.md-chips .md-chip-input-container md-autocomplete,.md-chips .md-chip-input-container md-autocomplete-wrap{height:32px}.md-chips .md-chip-input-container md-autocomplete{box-shadow:none}.md-chips .md-chip-input-container md-autocomplete input{position:relative}.md-chips .md-chip-input-container:not(:first-child){margin:8px 8px 0 0}[dir=rtl] .md-chips .md-chip-input-container:not(:first-child){margin:8px 0 0 8px}.md-chips .md-chip-input-container input{background:0 0;border-width:0}.md-chips md-autocomplete button{display:none}@media screen and (-ms-high-contrast:active){.md-chip-input-container,md-chip{border:1px solid #fff}.md-chip-input-container md-autocomplete{border:none}}.md-inline-form md-checkbox{margin:19px 0 18px}md-checkbox{box-sizing:border-box;display:inline-block;margin-bottom:16px;white-space:nowrap;cursor:pointer;outline:0;user-select:none;position:relative;min-width:20px;min-height:20px;margin-left:0;margin-right:16px}[dir=rtl] md-checkbox{margin-left:16px}[dir=rtl] md-checkbox{margin-right:0}md-checkbox:last-of-type{margin-left:0;margin-right:0}md-checkbox.md-focused:not([disabled]) .md-container:before{left:-8px;top:-8px;right:-8px;bottom:-8px}md-checkbox.md-focused:not([disabled]):not(.md-checked) .md-container:before{background-color:rgba(0,0,0,.12)}md-checkbox.md-align-top-left>div.md-container{top:12px}md-checkbox .md-container{position:absolute;top:50%;transform:translateY(-50%);box-sizing:border-box;display:inline-block;width:20px;height:20px;left:0;right:auto}[dir=rtl] md-checkbox .md-container{left:auto}[dir=rtl] md-checkbox .md-container{right:0}md-checkbox .md-container:before{box-sizing:border-box;background-color:transparent;border-radius:50%;content:'';position:absolute;display:block;height:auto;left:0;top:0;right:0;bottom:0;transition:all .5s;width:auto}md-checkbox .md-container:after{box-sizing:border-box;content:'';position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}md-checkbox .md-container .md-ripple-container{position:absolute;display:block;width:auto;height:auto;left:-15px;top:-15px;right:-15px;bottom:-15px}md-checkbox .md-icon{box-sizing:border-box;transition:240ms;position:absolute;top:0;left:0;width:20px;height:20px;border-width:2px;border-style:solid;border-radius:2px}md-checkbox.md-checked .md-icon{border-color:transparent}md-checkbox.md-checked .md-icon:after{box-sizing:border-box;transform:rotate(45deg);position:absolute;left:4.6666666667px;top:.2222222222px;display:table;width:6.6666666667px;height:13.3333333333px;border-width:2px;border-style:solid;border-top:0;border-left:0;content:''}md-checkbox[disabled]{cursor:default}md-checkbox.md-indeterminate .md-icon:after{box-sizing:border-box;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:table;width:12px;height:2px;border-width:2px;border-style:solid;border-top:0;border-left:0;content:''}md-checkbox .md-label{box-sizing:border-box;position:relative;display:inline-block;vertical-align:middle;white-space:normal;user-select:text;margin-left:30px;margin-right:0}[dir=rtl] md-checkbox .md-label{margin-left:0}[dir=rtl] md-checkbox .md-label{margin-right:30px}md-content{display:block;position:relative;overflow:auto;-webkit-overflow-scrolling:touch}md-content[md-scroll-y]{overflow-y:auto;overflow-x:hidden}md-content[md-scroll-x]{overflow-x:auto;overflow-y:hidden}@media print{md-content{overflow:visible!important}}md-calendar{font-size:13px;user-select:none}.md-calendar-scroll-mask{display:inline-block;overflow:hidden;height:308px}.md-calendar-scroll-mask .md-virtual-repeat-scroller{overflow-y:scroll;-webkit-overflow-scrolling:touch}.md-calendar-scroll-mask .md-virtual-repeat-scroller::-webkit-scrollbar{display:none}.md-calendar-scroll-mask .md-virtual-repeat-offsetter{width:100%}.md-calendar-scroll-container{box-shadow:inset -3px 3px 6px rgba(0,0,0,.2);display:inline-block;height:308px;width:346px}.md-calendar-date{height:44px;width:44px;text-align:center;padding:0;border:none;box-sizing:content-box}.md-calendar-date:first-child{padding-left:16px}[dir=rtl] .md-calendar-date:first-child{padding-left:0;padding-right:16px}.md-calendar-date:last-child{padding-right:16px}[dir=rtl] .md-calendar-date:last-child{padding-right:0;padding-left:16px}.md-calendar-date.md-calendar-date-disabled{cursor:default}.md-calendar-date-selection-indicator{transition:background-color,color .4s cubic-bezier(.25,.8,.25,1);border-radius:50%;display:inline-block;width:40px;height:40px;line-height:40px}.md-calendar-date:not(.md-disabled) .md-calendar-date-selection-indicator{cursor:pointer}.md-calendar-month-label{height:44px;font-size:14px;font-weight:500;padding:0 0 0 24px}[dir=rtl] .md-calendar-month-label{padding:0 24px 0 0}md-calendar-month .md-calendar-month-label:not(.md-calendar-month-label-disabled){cursor:pointer}.md-calendar-month-label md-icon{transform:rotate(180deg)}[dir=rtl] .md-calendar-month-label md-icon{transform:none}.md-calendar-month-label span{vertical-align:middle}.md-calendar-day-header{table-layout:fixed;border-spacing:0;border-collapse:collapse}.md-calendar-day-header th{height:40px;width:44px;text-align:center;padding:0;border:none;box-sizing:content-box;font-weight:400}.md-calendar-day-header th:first-child{padding-left:16px}[dir=rtl] .md-calendar-day-header th:first-child{padding-left:0;padding-right:16px}.md-calendar-day-header th:last-child{padding-right:16px}[dir=rtl] .md-calendar-day-header th:last-child{padding-right:0;padding-left:16px}.md-calendar{table-layout:fixed;border-spacing:0;border-collapse:collapse}.md-calendar tr:last-child td{border-bottom-width:1px;border-bottom-style:solid}.md-calendar:first-child{border-top:1px solid transparent}.md-calendar tbody,.md-calendar td,.md-calendar tr{vertical-align:middle;box-sizing:content-box}md-datepicker{white-space:nowrap;overflow:hidden;padding-right:18px;margin-right:-18px;vertical-align:middle}[dir=rtl] md-datepicker{padding-right:0;padding-left:18px}[dir=rtl] md-datepicker{margin-right:auto;margin-left:-18px}.md-inline-form md-datepicker{margin-top:12px}.md-datepicker-button{display:inline-block;box-sizing:border-box;background:0 0;vertical-align:middle;position:relative}.md-datepicker-button:before{top:0;left:0;bottom:0;right:0;position:absolute;content:'';speak:none}.md-datepicker-input{font-size:14px;box-sizing:border-box;border:none;box-shadow:none;outline:0;background:0 0;min-width:120px;max-width:328px;padding:0 0 5px}.md-datepicker-input::-ms-clear{display:none}._md-datepicker-floating-label>md-datepicker{overflow:visible}._md-datepicker-floating-label>md-datepicker .md-datepicker-input-container{border:none}._md-datepicker-floating-label>md-datepicker .md-datepicker-button{float:left;margin-top:-2.5px}[dir=rtl] ._md-datepicker-floating-label>md-datepicker .md-datepicker-button{float:right}._md-datepicker-floating-label._md-datepicker-has-calendar-icon>label:not(.md-no-float):not(.md-container-ignore){right:18px;left:auto;width:calc(100% - 84px)}[dir=rtl] ._md-datepicker-floating-label._md-datepicker-has-calendar-icon>label:not(.md-no-float):not(.md-container-ignore){right:auto}[dir=rtl] ._md-datepicker-floating-label._md-datepicker-has-calendar-icon>label:not(.md-no-float):not(.md-container-ignore){left:18px}._md-datepicker-floating-label._md-datepicker-has-calendar-icon .md-input-message-animation{margin-left:64px}[dir=rtl] ._md-datepicker-floating-label._md-datepicker-has-calendar-icon .md-input-message-animation{margin-left:auto;margin-right:64px}.md-datepicker-input-container{position:relative;border-bottom-width:1px;border-bottom-style:solid;display:inline-block;width:auto}.md-icon-button+.md-datepicker-input-container{margin-left:12px}[dir=rtl] .md-icon-button+.md-datepicker-input-container{margin-left:auto;margin-right:12px}.md-datepicker-input-container.md-datepicker-focused{border-bottom-width:2px}.md-datepicker-is-showing .md-scroll-mask{z-index:99}.md-datepicker-calendar-pane{position:absolute;top:0;left:-100%;z-index:100;border-width:1px;border-style:solid;background:0 0;transform:scale(0);transform-origin:0 0;transition:transform .2s cubic-bezier(.25,.8,.25,1)}.md-datepicker-calendar-pane.md-pane-open{transform:scale(1)}.md-datepicker-input-mask{height:40px;width:340px;position:relative;overflow:hidden;background:0 0;pointer-events:none;cursor:text}.md-datepicker-calendar{opacity:0;transition:opacity .2s cubic-bezier(.5,0,.25,1)}.md-pane-open .md-datepicker-calendar{opacity:1}.md-datepicker-calendar md-calendar:focus{outline:0}.md-datepicker-expand-triangle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid}.md-datepicker-triangle-button{position:absolute;right:0;top:5px;transform:translateY(-25%) translateX(45%)}[dir=rtl] .md-datepicker-triangle-button{right:auto;left:0}[dir=rtl] .md-datepicker-triangle-button{transform:translateY(-25%) translateX(-45%)}.md-datepicker-triangle-button.md-button.md-icon-button{height:36px;width:36px;position:absolute;padding:8px}md-datepicker[disabled] .md-datepicker-input-container{border-bottom-color:transparent}md-datepicker[disabled] .md-datepicker-triangle-button{display:none}.md-datepicker-open{overflow:hidden}.md-datepicker-open .md-datepicker-input-container,.md-datepicker-open input.md-input{border-bottom-color:transparent}.md-datepicker-open .md-datepicker-triangle-button,.md-datepicker-open.md-input-has-placeholder>label,.md-datepicker-open.md-input-has-value>label{display:none}.md-datepicker-pos-adjusted .md-datepicker-input-mask{display:none}.md-datepicker-calendar-pane .md-calendar{transform:translateY(-85px);transition:transform .65s cubic-bezier(.25,.8,.25,1);transition-delay:125ms}.md-datepicker-calendar-pane.md-pane-open .md-calendar{transform:translateY(0)}.md-dialog-is-showing{max-height:100%}.md-dialog-container{display:flex;justify-content:center;align-items:center;position:absolute;top:0;left:0;width:100%;height:100%;z-index:80;overflow:hidden}md-dialog{opacity:0;min-width:240px;max-width:80%;max-height:80%;position:relative;overflow:auto;box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12);display:flex;flex-direction:column}md-dialog.md-transition-in{opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate(0,0) scale(1)}md-dialog.md-transition-out{opacity:0;transition:all .4s cubic-bezier(.25,.8,.25,1);transform:translate(0,100%) scale(.2)}md-dialog>form{display:flex;flex-direction:column;overflow:auto}md-dialog .md-dialog-content{padding:24px}md-dialog md-dialog-content{order:1;flex-direction:column;overflow:auto;-webkit-overflow-scrolling:touch}md-dialog md-dialog-content:not([layout=row])>:first-child:not(.md-subheader){margin-top:0}md-dialog md-dialog-content:focus{outline:0}md-dialog md-dialog-content .md-subheader{margin:0}md-dialog md-dialog-content .md-dialog-content-body{width:100%}md-dialog md-dialog-content .md-prompt-input-container{width:100%;box-sizing:border-box}md-dialog .md-actions,md-dialog md-dialog-actions{display:flex;order:2;box-sizing:border-box;align-items:center;justify-content:flex-end;margin-bottom:0;padding-right:8px;padding-left:16px;min-height:52px;overflow:hidden}[dir=rtl] md-dialog .md-actions,[dir=rtl] md-dialog md-dialog-actions{padding-right:16px}[dir=rtl] md-dialog .md-actions,[dir=rtl] md-dialog md-dialog-actions{padding-left:8px}md-dialog .md-actions .md-button,md-dialog md-dialog-actions .md-button{margin-bottom:8px;margin-left:8px;margin-right:0;margin-top:8px}[dir=rtl] md-dialog .md-actions .md-button,[dir=rtl] md-dialog md-dialog-actions .md-button{margin-left:0}[dir=rtl] md-dialog .md-actions .md-button,[dir=rtl] md-dialog md-dialog-actions .md-button{margin-right:8px}md-dialog.md-content-overflow .md-actions,md-dialog.md-content-overflow md-dialog-actions{border-top-width:1px;border-top-style:solid}@media screen and (-ms-high-contrast:active){md-dialog{border:1px solid #fff}}@media (max-width:959px){md-dialog.md-dialog-fullscreen{min-height:100%;min-width:100%;border-radius:0}}md-divider{display:block;border-top-width:1px;border-top-style:solid;margin:0}md-divider[md-inset]{margin-left:80px}[dir=rtl] md-divider[md-inset]{margin-left:auto;margin-right:80px}.layout-gt-lg-row>md-divider,.layout-gt-md-row>md-divider,.layout-gt-sm-row>md-divider,.layout-gt-xs-row>md-divider,.layout-lg-row>md-divider,.layout-md-row>md-divider,.layout-row>md-divider,.layout-sm-row>md-divider,.layout-xl-row>md-divider,.layout-xs-row>md-divider{border-top-width:0;border-right-width:1px;border-right-style:solid}md-fab-speed-dial{position:relative;display:flex;align-items:center;z-index:20}md-fab-speed-dial.md-fab-bottom-right{top:auto;right:20px;bottom:20px;left:auto;position:absolute}md-fab-speed-dial.md-fab-bottom-left{top:auto;right:auto;bottom:20px;left:20px;position:absolute}md-fab-speed-dial.md-fab-top-right{top:20px;right:20px;bottom:auto;left:auto;position:absolute}md-fab-speed-dial.md-fab-top-left{top:20px;right:auto;bottom:auto;left:20px;position:absolute}md-fab-speed-dial:not(.md-hover-full){pointer-events:none}md-fab-speed-dial:not(.md-hover-full) .md-fab-action-item,md-fab-speed-dial:not(.md-hover-full) md-fab-trigger{pointer-events:auto}md-fab-speed-dial:not(.md-hover-full).md-is-open{pointer-events:auto}md-fab-speed-dial ._md-css-variables{z-index:20}md-fab-speed-dial.md-is-open .md-fab-action-item{align-items:center}md-fab-speed-dial md-fab-actions{display:flex;height:auto}md-fab-speed-dial md-fab-actions .md-fab-action-item{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-fab-speed-dial.md-down{flex-direction:column}md-fab-speed-dial.md-down md-fab-trigger{order:1}md-fab-speed-dial.md-down md-fab-actions{flex-direction:column;order:2}md-fab-speed-dial.md-up{flex-direction:column}md-fab-speed-dial.md-up md-fab-trigger{order:2}md-fab-speed-dial.md-up md-fab-actions{flex-direction:column-reverse;order:1}md-fab-speed-dial.md-left{flex-direction:row}md-fab-speed-dial.md-left md-fab-trigger{order:2}md-fab-speed-dial.md-left md-fab-actions{flex-direction:row-reverse;order:1}md-fab-speed-dial.md-left md-fab-actions .md-fab-action-item{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-fab-speed-dial.md-right{flex-direction:row}md-fab-speed-dial.md-right md-fab-trigger{order:1}md-fab-speed-dial.md-right md-fab-actions{flex-direction:row;order:2}md-fab-speed-dial.md-right md-fab-actions .md-fab-action-item{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-fab-speed-dial.md-fling-remove .md-fab-action-item>*,md-fab-speed-dial.md-scale-remove .md-fab-action-item>*{visibility:hidden}md-fab-speed-dial.md-fling .md-fab-action-item{opacity:1}md-fab-speed-dial.md-fling.md-animations-waiting .md-fab-action-item{opacity:0;transition-duration:0s}md-fab-speed-dial.md-scale .md-fab-action-item{transform:scale(0);transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.1428571429s}md-fab-toolbar{display:block}md-fab-toolbar.md-fab-bottom-right{top:auto;right:20px;bottom:20px;left:auto;position:absolute}md-fab-toolbar.md-fab-bottom-left{top:auto;right:auto;bottom:20px;left:20px;position:absolute}md-fab-toolbar.md-fab-top-right{top:20px;right:20px;bottom:auto;left:auto;position:absolute}md-fab-toolbar.md-fab-top-left{top:20px;right:auto;bottom:auto;left:20px;position:absolute}md-fab-toolbar .md-fab-toolbar-wrapper{display:block;position:relative;overflow:hidden;height:68px}md-fab-toolbar md-fab-trigger{position:absolute;z-index:20}md-fab-toolbar md-fab-trigger button{overflow:visible!important}md-fab-toolbar md-fab-trigger .md-fab-toolbar-background{display:block;position:absolute;z-index:21;opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2)}md-fab-toolbar md-fab-trigger md-icon{position:relative;z-index:22;opacity:1;transition:all .2s ease-in}md-fab-toolbar.md-left md-fab-trigger{right:0}[dir=rtl] md-fab-toolbar.md-left md-fab-trigger{right:auto;left:0}md-fab-toolbar.md-left .md-toolbar-tools{flex-direction:row-reverse}md-fab-toolbar.md-left .md-toolbar-tools>.md-button:first-child{margin-right:.6rem}[dir=rtl] md-fab-toolbar.md-left .md-toolbar-tools>.md-button:first-child{margin-right:auto;margin-left:.6rem}md-fab-toolbar.md-left .md-toolbar-tools>.md-button:first-child{margin-left:-.8rem}[dir=rtl] md-fab-toolbar.md-left .md-toolbar-tools>.md-button:first-child{margin-left:auto;margin-right:-.8rem}md-fab-toolbar.md-left .md-toolbar-tools>.md-button:last-child{margin-right:8px}[dir=rtl] md-fab-toolbar.md-left .md-toolbar-tools>.md-button:last-child{margin-right:auto;margin-left:8px}md-fab-toolbar.md-right md-fab-trigger{left:0}[dir=rtl] md-fab-toolbar.md-right md-fab-trigger{left:auto;right:0}md-fab-toolbar.md-right .md-toolbar-tools{flex-direction:row}md-fab-toolbar md-toolbar{background-color:transparent!important;pointer-events:none;z-index:23}md-fab-toolbar md-toolbar .md-toolbar-tools{padding:0 20px;margin-top:3px}md-fab-toolbar md-toolbar .md-fab-action-item{opacity:0;transform:scale(0);transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.15s}md-fab-toolbar.md-is-open md-fab-trigger>button{box-shadow:none}md-fab-toolbar.md-is-open md-fab-trigger>button md-icon{opacity:0}md-fab-toolbar.md-is-open .md-fab-action-item{opacity:1;transform:scale(1)}md-grid-list{box-sizing:border-box;display:block;position:relative}md-grid-list md-grid-tile,md-grid-list md-grid-tile-footer,md-grid-list md-grid-tile-header,md-grid-list md-grid-tile>figure{box-sizing:border-box}md-grid-list md-grid-tile{display:block;position:absolute}md-grid-list md-grid-tile figure{display:flex;align-items:center;justify-content:center;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;padding:0;margin:0}md-grid-list md-grid-tile md-grid-tile-footer,md-grid-list md-grid-tile md-grid-tile-header{display:flex;flex-direction:row;align-items:center;height:48px;color:#fff;background:rgba(0,0,0,.18);overflow:hidden;position:absolute;left:0;right:0}md-grid-list md-grid-tile md-grid-tile-footer h3,md-grid-list md-grid-tile md-grid-tile-footer h4,md-grid-list md-grid-tile md-grid-tile-header h3,md-grid-list md-grid-tile md-grid-tile-header h4{font-weight:400;margin:0 0 0 16px}md-grid-list md-grid-tile md-grid-tile-footer h3,md-grid-list md-grid-tile md-grid-tile-header h3{font-size:14px}md-grid-list md-grid-tile md-grid-tile-footer h4,md-grid-list md-grid-tile md-grid-tile-header h4{font-size:12px}md-grid-list md-grid-tile md-grid-tile-header{top:0}md-grid-list md-grid-tile md-grid-tile-footer{bottom:0}@media screen and (-ms-high-contrast:active){md-grid-tile{border:1px solid #fff}md-grid-tile-footer{border-top:1px solid #fff}}md-icon{margin:auto;background-repeat:no-repeat no-repeat;display:inline-block;vertical-align:middle;fill:currentColor;height:24px;width:24px;min-height:24px;min-width:24px}md-icon svg{pointer-events:none;display:block}md-icon[md-font-icon]{line-height:24px;width:auto}md-input-container{display:inline-block;position:relative;padding:2px;margin:18px 0;vertical-align:middle}md-input-container:after{content:'';display:table;clear:both}md-input-container.md-block{display:block}md-input-container .md-errors-spacer{float:right;min-height:24px;min-width:1px}[dir=rtl] md-input-container .md-errors-spacer{float:left}md-input-container>md-icon{position:absolute;top:8px;left:2px;right:auto}[dir=rtl] md-input-container>md-icon{left:auto}[dir=rtl] md-input-container>md-icon{right:2px}md-input-container input[type=color],md-input-container input[type=date],md-input-container input[type=datetime-local],md-input-container input[type=datetime],md-input-container input[type=email],md-input-container input[type=month],md-input-container input[type=number],md-input-container input[type=password],md-input-container input[type=search],md-input-container input[type=tel],md-input-container input[type=text],md-input-container input[type=time],md-input-container input[type=url],md-input-container input[type=week],md-input-container textarea{-moz-appearance:none;-webkit-appearance:none}md-input-container input[type=date],md-input-container input[type=datetime-local],md-input-container input[type=month],md-input-container input[type=time],md-input-container input[type=week]{min-height:26px}md-input-container textarea{resize:none;overflow:hidden}md-input-container textarea.md-input{min-height:26px;-ms-flex-preferred-size:auto}md-input-container textarea[md-no-autogrow]{height:auto;overflow:auto}md-input-container label:not(.md-container-ignore){position:absolute;bottom:100%;left:0;right:auto}[dir=rtl] md-input-container label:not(.md-container-ignore){left:auto}[dir=rtl] md-input-container label:not(.md-container-ignore){right:0}md-input-container label:not(.md-container-ignore).md-required:after{content:' *';font-size:13px;vertical-align:top}md-input-container .md-placeholder,md-input-container label:not(.md-no-float):not(.md-container-ignore){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;order:1;pointer-events:none;-webkit-font-smoothing:antialiased;padding-left:3px;padding-right:0;z-index:1;transform:translate3d(0,28px,0) scale(1);transition:transform .4s cubic-bezier(.25,.8,.25,1);max-width:100%;transform-origin:left top}[dir=rtl] md-input-container .md-placeholder,[dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore){padding-left:0}[dir=rtl] md-input-container .md-placeholder,[dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore){padding-right:3px}[dir=rtl] md-input-container .md-placeholder,[dir=rtl] md-input-container label:not(.md-no-float):not(.md-container-ignore){transform-origin:right top}md-input-container .md-placeholder{position:absolute;top:0;opacity:0;transition-property:opacity,transform;transform:translate3d(0,30px,0)}md-input-container.md-input-focused .md-placeholder{opacity:1;transform:translate3d(0,24px,0)}md-input-container.md-input-has-value .md-placeholder{transition:none;opacity:0}md-input-container:not(.md-input-has-value) input:not(:focus),md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-ampm-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-day-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-hour-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-millisecond-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-minute-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-month-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-second-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-text,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-week-field,md-input-container:not(.md-input-has-value) input:not(:focus)::-webkit-datetime-edit-year-field{color:transparent}md-input-container .md-input{order:2;display:block;margin-top:0;background:0 0;padding-top:2px;padding-bottom:1px;padding-left:2px;padding-right:2px;border-width:0 0 1px 0;line-height:26px;height:30px;-ms-flex-preferred-size:26px;border-radius:0;border-style:solid;width:100%;box-sizing:border-box;float:left}[dir=rtl] md-input-container .md-input{float:right}md-input-container .md-input:focus{outline:0}md-input-container .md-input:invalid{outline:0;box-shadow:none}md-input-container .md-input.md-no-flex{flex:none!important}md-input-container .md-char-counter{text-align:right;padding-right:2px;padding-left:0}[dir=rtl] md-input-container .md-char-counter{text-align:left}[dir=rtl] md-input-container .md-char-counter{padding-right:0}[dir=rtl] md-input-container .md-char-counter{padding-left:2px}md-input-container .md-input-messages-animation{position:relative;order:4;overflow:hidden;clear:left}[dir=rtl] md-input-container .md-input-messages-animation{clear:right}md-input-container .md-input-messages-animation.ng-enter .md-input-message-animation{opacity:0;margin-top:-100px}md-input-container .md-char-counter,md-input-container .md-input-message-animation{font-size:12px;line-height:14px;overflow:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2);opacity:1;margin-top:0;padding-top:5px}md-input-container .md-char-counter:not(.md-char-counter),md-input-container .md-input-message-animation:not(.md-char-counter){padding-right:5px;padding-left:0}[dir=rtl] md-input-container .md-char-counter:not(.md-char-counter),[dir=rtl] md-input-container .md-input-message-animation:not(.md-char-counter){padding-right:0}[dir=rtl] md-input-container .md-char-counter:not(.md-char-counter),[dir=rtl] md-input-container .md-input-message-animation:not(.md-char-counter){padding-left:5px}md-input-container:not(.md-input-invalid) .md-auto-hide .md-input-message-animation{opacity:0;margin-top:-100px}md-input-container .md-input-message-animation:not(.ng-animate){opacity:0;margin-top:-100px}md-input-container .md-input-message-animation.ng-enter{opacity:0;margin-top:-100px}md-input-container.md-input-focused label:not(.md-no-float),md-input-container.md-input-has-placeholder label:not(.md-no-float),md-input-container.md-input-has-value label:not(.md-no-float){transform:translate3d(0,6px,0) scale(.75);transition:transform cubic-bezier(.25,.8,.25,1) .4s,width cubic-bezier(.25,.8,.25,1) .4s}md-input-container.md-input-has-value label{transition:none}md-input-container .md-input.ng-invalid.ng-dirty,md-input-container.md-input-focused .md-input,md-input-container.md-input-resized .md-input{padding-bottom:0;border-width:0 0 2px 0}[disabled] md-input-container .md-input,md-input-container .md-input[disabled]{background-position:bottom -1px left 0;background-size:4px 1px;background-repeat:repeat-x}md-input-container.md-icon-float{transition:margin-top .4s cubic-bezier(.25,.8,.25,1)}md-input-container.md-icon-float>label{pointer-events:none;position:absolute}md-input-container.md-icon-float>md-icon{top:8px;left:2px;right:auto}[dir=rtl] md-input-container.md-icon-float>md-icon{left:auto}[dir=rtl] md-input-container.md-icon-float>md-icon{right:2px}md-input-container.md-icon-left>label .md-placeholder,md-input-container.md-icon-left>label:not(.md-no-float):not(.md-container-ignore),md-input-container.md-icon-right>label .md-placeholder,md-input-container.md-icon-right>label:not(.md-no-float):not(.md-container-ignore){width:calc(100% - 36px - 18px)}md-input-container.md-icon-left{padding-left:36px;padding-right:0}[dir=rtl] md-input-container.md-icon-left{padding-left:0}[dir=rtl] md-input-container.md-icon-left{padding-right:36px}md-input-container.md-icon-left>label{left:36px;right:auto}[dir=rtl] md-input-container.md-icon-left>label{left:auto}[dir=rtl] md-input-container.md-icon-left>label{right:36px}md-input-container.md-icon-right{padding-left:0;padding-right:36px}[dir=rtl] md-input-container.md-icon-right{padding-left:36px}[dir=rtl] md-input-container.md-icon-right{padding-right:0}md-input-container.md-icon-right>md-icon:last-of-type{margin:0;right:2px;left:auto}[dir=rtl] md-input-container.md-icon-right>md-icon:last-of-type{right:auto}[dir=rtl] md-input-container.md-icon-right>md-icon:last-of-type{left:2px}md-input-container.md-icon-left.md-icon-right{padding-left:36px;padding-right:36px}md-input-container.md-icon-left.md-icon-right>label .md-placeholder,md-input-container.md-icon-left.md-icon-right>label:not(.md-no-float):not(.md-container-ignore){width:calc(100% - (36px * 2))}.md-resize-wrapper{position:relative}.md-resize-wrapper:after{content:'';display:table;clear:both}.md-resize-handle{position:absolute;bottom:-5px;left:0;height:10px;background:0 0;width:100%;cursor:ns-resize}@media screen and (-ms-high-contrast:active){md-input-container.md-default-theme>md-icon{fill:#fff}}md-list{display:block;padding:8px 0 8px 0}md-list .md-subheader{font-size:14px;font-weight:500;letter-spacing:.010em;line-height:1.2em}md-list.md-dense md-list-item,md-list.md-dense md-list-item .md-list-item-inner{min-height:48px}md-list.md-dense md-list-item .md-list-item-inner::before,md-list.md-dense md-list-item::before{content:'';min-height:48px;visibility:hidden;display:inline-block}md-list.md-dense md-list-item .md-list-item-inner md-icon:first-child,md-list.md-dense md-list-item md-icon:first-child{width:20px;height:20px}md-list.md-dense md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),md-list.md-dense md-list-item>md-icon:first-child:not(.md-avatar-icon){margin-right:36px}[dir=rtl] md-list.md-dense md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),[dir=rtl] md-list.md-dense md-list-item>md-icon:first-child:not(.md-avatar-icon){margin-right:auto;margin-left:36px}md-list.md-dense md-list-item .md-avatar,md-list.md-dense md-list-item .md-avatar-icon,md-list.md-dense md-list-item .md-list-item-inner .md-avatar,md-list.md-dense md-list-item .md-list-item-inner .md-avatar-icon{margin-right:20px}[dir=rtl] md-list.md-dense md-list-item .md-avatar,[dir=rtl] md-list.md-dense md-list-item .md-avatar-icon,[dir=rtl] md-list.md-dense md-list-item .md-list-item-inner .md-avatar,[dir=rtl] md-list.md-dense md-list-item .md-list-item-inner .md-avatar-icon{margin-right:auto;margin-left:20px}md-list.md-dense md-list-item .md-avatar,md-list.md-dense md-list-item .md-list-item-inner .md-avatar{flex:none;width:36px;height:36px}md-list.md-dense md-list-item.md-2-line .md-list-item-text.md-offset,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text.md-offset,md-list.md-dense md-list-item.md-3-line .md-list-item-text.md-offset,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text.md-offset{margin-left:56px}[dir=rtl] md-list.md-dense md-list-item.md-2-line .md-list-item-text.md-offset,[dir=rtl] md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text.md-offset,[dir=rtl] md-list.md-dense md-list-item.md-3-line .md-list-item-text.md-offset,[dir=rtl] md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text.md-offset{margin-left:auto;margin-right:56px}md-list.md-dense md-list-item.md-2-line .md-list-item-text h3,md-list.md-dense md-list-item.md-2-line .md-list-item-text h4,md-list.md-dense md-list-item.md-2-line .md-list-item-text p,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text h3,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text h4,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text p,md-list.md-dense md-list-item.md-3-line .md-list-item-text h3,md-list.md-dense md-list-item.md-3-line .md-list-item-text h4,md-list.md-dense md-list-item.md-3-line .md-list-item-text p,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text h3,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text h4,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text p{line-height:1.05;font-size:12px}md-list.md-dense md-list-item.md-2-line .md-list-item-text h3,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-list-item-text h3,md-list.md-dense md-list-item.md-3-line .md-list-item-text h3,md-list.md-dense md-list-item.md-3-line>.md-no-style .md-list-item-text h3{font-size:13px}md-list.md-dense md-list-item.md-2-line,md-list.md-dense md-list-item.md-2-line>.md-no-style{min-height:60px}md-list.md-dense md-list-item.md-2-line::before,md-list.md-dense md-list-item.md-2-line>.md-no-style::before{content:'';min-height:60px;visibility:hidden;display:inline-block}md-list.md-dense md-list-item.md-2-line .md-avatar-icon,md-list.md-dense md-list-item.md-2-line>.md-avatar,md-list.md-dense md-list-item.md-2-line>.md-no-style .md-avatar-icon,md-list.md-dense md-list-item.md-2-line>.md-no-style>.md-avatar{margin-top:12px}md-list.md-dense md-list-item.md-3-line,md-list.md-dense md-list-item.md-3-line>.md-no-style{min-height:76px}md-list.md-dense md-list-item.md-3-line::before,md-list.md-dense md-list-item.md-3-line>.md-no-style::before{content:'';min-height:76px;visibility:hidden;display:inline-block}md-list.md-dense md-list-item.md-3-line>.md-avatar,md-list.md-dense md-list-item.md-3-line>.md-no-style>.md-avatar,md-list.md-dense md-list-item.md-3-line>.md-no-style>md-icon:first-child,md-list.md-dense md-list-item.md-3-line>md-icon:first-child{margin-top:16px}md-list-item{position:relative}md-list-item.md-proxy-focus.md-focused .md-no-style{transition:background-color .15s linear}md-list-item._md-button-wrap{position:relative}md-list-item._md-button-wrap>div.md-button:first-child{display:flex;align-items:center;justify-content:flex-start;padding:0 16px;margin:0;font-weight:400;text-align:left;border:medium none}[dir=rtl] md-list-item._md-button-wrap>div.md-button:first-child{text-align:right}md-list-item._md-button-wrap>div.md-button:first-child>.md-button:first-child{position:absolute;top:0;left:0;height:100%;margin:0;padding:0}md-list-item._md-button-wrap>div.md-button:first-child .md-list-item-inner{width:100%;min-height:inherit}md-list-item .md-no-style,md-list-item.md-no-proxy{position:relative;padding:0 16px;flex:1 1 auto}md-list-item .md-no-style.md-button,md-list-item.md-no-proxy.md-button{font-size:inherit;height:inherit;text-align:left;text-transform:none;width:100%;white-space:normal;flex-direction:inherit;align-items:inherit;border-radius:0;margin:0}[dir=rtl] md-list-item .md-no-style.md-button,[dir=rtl] md-list-item.md-no-proxy.md-button{text-align:right}md-list-item .md-no-style.md-button>.md-ripple-container,md-list-item.md-no-proxy.md-button>.md-ripple-container{border-radius:0}md-list-item .md-no-style:focus,md-list-item.md-no-proxy:focus{outline:0}md-list-item.md-clickable:hover{cursor:pointer}md-list-item md-divider{position:absolute;bottom:0;left:0;width:100%}[dir=rtl] md-list-item md-divider{left:auto;right:0}md-list-item md-divider[md-inset]{left:72px;width:calc(100% - 72px);margin:0!important}[dir=rtl] md-list-item md-divider[md-inset]{left:auto;right:72px}md-list-item,md-list-item .md-list-item-inner{display:flex;justify-content:flex-start;align-items:center;min-height:48px;height:auto}md-list-item .md-list-item-inner::before,md-list-item::before{content:'';min-height:48px;visibility:hidden;display:inline-block}md-list-item .md-list-item-inner>div.md-primary>md-icon:not(.md-avatar-icon),md-list-item .md-list-item-inner>div.md-secondary>md-icon:not(.md-avatar-icon),md-list-item .md-list-item-inner>md-icon.md-secondary:not(.md-avatar-icon),md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),md-list-item>div.md-primary>md-icon:not(.md-avatar-icon),md-list-item>div.md-secondary>md-icon:not(.md-avatar-icon),md-list-item>md-icon.md-secondary:not(.md-avatar-icon),md-list-item>md-icon:first-child:not(.md-avatar-icon){width:24px;margin-top:16px;margin-bottom:12px;box-sizing:content-box}md-list-item .md-list-item-inner md-checkbox.md-secondary,md-list-item .md-list-item-inner>div.md-primary>md-checkbox,md-list-item .md-list-item-inner>div.md-secondary>md-checkbox,md-list-item .md-list-item-inner>md-checkbox,md-list-item md-checkbox.md-secondary,md-list-item>div.md-primary>md-checkbox,md-list-item>div.md-secondary>md-checkbox,md-list-item>md-checkbox{align-self:center}md-list-item .md-list-item-inner md-checkbox.md-secondary .md-label,md-list-item .md-list-item-inner>div.md-primary>md-checkbox .md-label,md-list-item .md-list-item-inner>div.md-secondary>md-checkbox .md-label,md-list-item .md-list-item-inner>md-checkbox .md-label,md-list-item md-checkbox.md-secondary .md-label,md-list-item>div.md-primary>md-checkbox .md-label,md-list-item>div.md-secondary>md-checkbox .md-label,md-list-item>md-checkbox .md-label{display:none}md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),md-list-item>md-icon:first-child:not(.md-avatar-icon){margin-right:32px}[dir=rtl] md-list-item .md-list-item-inner>md-icon:first-child:not(.md-avatar-icon),[dir=rtl] md-list-item>md-icon:first-child:not(.md-avatar-icon){margin-right:auto;margin-left:32px}md-list-item .md-avatar,md-list-item .md-avatar-icon,md-list-item .md-list-item-inner .md-avatar,md-list-item .md-list-item-inner .md-avatar-icon{margin-top:8px;margin-bottom:8px;margin-right:16px;border-radius:50%;box-sizing:content-box}[dir=rtl] md-list-item .md-avatar,[dir=rtl] md-list-item .md-avatar-icon,[dir=rtl] md-list-item .md-list-item-inner .md-avatar,[dir=rtl] md-list-item .md-list-item-inner .md-avatar-icon{margin-right:auto;margin-left:16px}md-list-item .md-avatar,md-list-item .md-list-item-inner .md-avatar{flex:none;width:40px;height:40px}md-list-item .md-avatar-icon,md-list-item .md-list-item-inner .md-avatar-icon{padding:8px}md-list-item .md-avatar-icon svg,md-list-item .md-list-item-inner .md-avatar-icon svg{width:24px;height:24px}md-list-item .md-list-item-inner>md-checkbox,md-list-item>md-checkbox{width:24px;margin-left:3px;margin-right:29px;margin-top:16px}[dir=rtl] md-list-item .md-list-item-inner>md-checkbox,[dir=rtl] md-list-item>md-checkbox{margin-left:29px}[dir=rtl] md-list-item .md-list-item-inner>md-checkbox,[dir=rtl] md-list-item>md-checkbox{margin-right:3px}md-list-item .md-list-item-inner .md-secondary-container,md-list-item .md-secondary-container{display:flex;align-items:center;flex-shrink:0;margin:auto;margin-right:0;margin-left:auto}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container,[dir=rtl] md-list-item .md-secondary-container{margin-right:auto}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container,[dir=rtl] md-list-item .md-secondary-container{margin-left:0}md-list-item .md-list-item-inner .md-secondary-container .md-button:last-of-type,md-list-item .md-list-item-inner .md-secondary-container .md-icon-button:last-of-type,md-list-item .md-secondary-container .md-button:last-of-type,md-list-item .md-secondary-container .md-icon-button:last-of-type{margin-right:0}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container .md-button:last-of-type,[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container .md-icon-button:last-of-type,[dir=rtl] md-list-item .md-secondary-container .md-button:last-of-type,[dir=rtl] md-list-item .md-secondary-container .md-icon-button:last-of-type{margin-right:auto;margin-left:0}md-list-item .md-list-item-inner .md-secondary-container md-checkbox,md-list-item .md-secondary-container md-checkbox{margin-top:0;margin-bottom:0}md-list-item .md-list-item-inner .md-secondary-container md-checkbox:last-child,md-list-item .md-secondary-container md-checkbox:last-child{width:24px;margin-right:0}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container md-checkbox:last-child,[dir=rtl] md-list-item .md-secondary-container md-checkbox:last-child{margin-right:auto;margin-left:0}md-list-item .md-list-item-inner .md-secondary-container md-switch,md-list-item .md-secondary-container md-switch{margin-top:0;margin-bottom:0;margin-right:-6px}[dir=rtl] md-list-item .md-list-item-inner .md-secondary-container md-switch,[dir=rtl] md-list-item .md-secondary-container md-switch{margin-right:auto;margin-left:-6px}md-list-item .md-list-item-inner>.md-list-item-inner>p,md-list-item .md-list-item-inner>p,md-list-item>.md-list-item-inner>p,md-list-item>p{flex:1 1 auto;margin:0}md-list-item.md-2-line,md-list-item.md-2-line>.md-no-style,md-list-item.md-3-line,md-list-item.md-3-line>.md-no-style{align-items:flex-start;justify-content:center}md-list-item.md-2-line.md-long-text,md-list-item.md-2-line>.md-no-style.md-long-text,md-list-item.md-3-line.md-long-text,md-list-item.md-3-line>.md-no-style.md-long-text{margin-top:8px;margin-bottom:8px}md-list-item.md-2-line .md-list-item-text,md-list-item.md-2-line>.md-no-style .md-list-item-text,md-list-item.md-3-line .md-list-item-text,md-list-item.md-3-line>.md-no-style .md-list-item-text{flex:1 1 auto;margin:auto;text-overflow:ellipsis;overflow:hidden}md-list-item.md-2-line .md-list-item-text.md-offset,md-list-item.md-2-line>.md-no-style .md-list-item-text.md-offset,md-list-item.md-3-line .md-list-item-text.md-offset,md-list-item.md-3-line>.md-no-style .md-list-item-text.md-offset{margin-left:56px}[dir=rtl] md-list-item.md-2-line .md-list-item-text.md-offset,[dir=rtl] md-list-item.md-2-line>.md-no-style .md-list-item-text.md-offset,[dir=rtl] md-list-item.md-3-line .md-list-item-text.md-offset,[dir=rtl] md-list-item.md-3-line>.md-no-style .md-list-item-text.md-offset{margin-left:auto;margin-right:56px}md-list-item.md-2-line .md-list-item-text h3,md-list-item.md-2-line>.md-no-style .md-list-item-text h3,md-list-item.md-3-line .md-list-item-text h3,md-list-item.md-3-line>.md-no-style .md-list-item-text h3{font-size:16px;font-weight:400;letter-spacing:.010em;margin:0;line-height:1.2em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}md-list-item.md-2-line .md-list-item-text h4,md-list-item.md-2-line>.md-no-style .md-list-item-text h4,md-list-item.md-3-line .md-list-item-text h4,md-list-item.md-3-line>.md-no-style .md-list-item-text h4{font-size:14px;letter-spacing:.010em;margin:3px 0 1px 0;font-weight:400;line-height:1.2em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}md-list-item.md-2-line .md-list-item-text p,md-list-item.md-2-line>.md-no-style .md-list-item-text p,md-list-item.md-3-line .md-list-item-text p,md-list-item.md-3-line>.md-no-style .md-list-item-text p{font-size:14px;font-weight:500;letter-spacing:.010em;margin:0;line-height:1.6em}md-list-item.md-2-line,md-list-item.md-2-line>.md-no-style{height:auto;min-height:72px}md-list-item.md-2-line::before,md-list-item.md-2-line>.md-no-style::before{content:'';min-height:72px;visibility:hidden;display:inline-block}md-list-item.md-2-line .md-avatar-icon,md-list-item.md-2-line>.md-avatar,md-list-item.md-2-line>.md-no-style .md-avatar-icon,md-list-item.md-2-line>.md-no-style>.md-avatar{margin-top:12px}md-list-item.md-2-line>.md-no-style>md-icon:first-child,md-list-item.md-2-line>md-icon:first-child{align-self:flex-start}md-list-item.md-2-line .md-list-item-text,md-list-item.md-2-line>.md-no-style .md-list-item-text{flex:1 1 auto}md-list-item.md-3-line,md-list-item.md-3-line>.md-no-style{height:auto;min-height:88px}md-list-item.md-3-line::before,md-list-item.md-3-line>.md-no-style::before{content:'';min-height:88px;visibility:hidden;display:inline-block}md-list-item.md-3-line>.md-avatar,md-list-item.md-3-line>.md-no-style>.md-avatar,md-list-item.md-3-line>.md-no-style>md-icon:first-child,md-list-item.md-3-line>md-icon:first-child{margin-top:16px}.md-open-menu-container{position:fixed;left:0;top:0;z-index:100;opacity:0;border-radius:2px}.md-open-menu-container md-menu-divider{margin-top:4px;margin-bottom:4px;height:1px;min-height:1px;max-height:1px;width:100%}.md-open-menu-container md-menu-content>*{opacity:0}.md-open-menu-container:not(.md-clickable){pointer-events:none}.md-open-menu-container.md-active{opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.2s}.md-open-menu-container.md-active>md-menu-content>*{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:.2s;transition-delay:.1s}.md-open-menu-container.md-leave{opacity:0;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:250ms}md-menu-content{display:flex;flex-direction:column;padding:8px 0;max-height:304px;overflow-y:auto}md-menu-content.md-dense{max-height:208px}md-menu-content.md-dense md-menu-item{height:32px;min-height:0}md-menu-item{display:flex;flex-direction:row;min-height:48px;height:48px;align-content:center;justify-content:flex-start}md-menu-item>*{width:100%;margin:auto 0;padding-left:16px;padding-right:16px}md-menu-item>a.md-button{padding-top:5px}md-menu-item>.md-button{text-align:left;display:inline-block;border-radius:0;margin:auto 0;font-size:15px;text-transform:none;font-weight:400;height:100%;padding-left:16px;padding-right:16px;width:100%}md-menu-item>.md-button::-moz-focus-inner{padding:0;border:0}[dir=rtl] md-menu-item>.md-button{text-align:right}md-menu-item>.md-button md-icon{margin:auto 16px auto 0}[dir=rtl] md-menu-item>.md-button md-icon{margin:auto 0 auto 16px}md-menu-item>.md-button p{display:inline-block;margin:auto}md-menu-item>.md-button span{margin-top:auto;margin-bottom:auto}md-menu-item>.md-button .md-ripple-container{border-radius:inherit}md-toolbar .md-menu{height:auto;margin:auto;padding:0}@media (max-width:959px){md-menu-content{min-width:112px}md-menu-content[width="3"]{min-width:168px}md-menu-content[width="4"]{min-width:224px}md-menu-content[width="5"]{min-width:280px}md-menu-content[width="6"]{min-width:336px}md-menu-content[width="7"]{min-width:392px}}@media (min-width:960px){md-menu-content{min-width:96px}md-menu-content[width="3"]{min-width:192px}md-menu-content[width="4"]{min-width:256px}md-menu-content[width="5"]{min-width:320px}md-menu-content[width="6"]{min-width:384px}md-menu-content[width="7"]{min-width:448px}}md-toolbar.md-menu-toolbar h2.md-toolbar-tools{line-height:1rem;height:auto;padding:28px;padding-bottom:12px}md-toolbar.md-has-open-menu{position:relative;z-index:100}md-menu-bar{padding:0 20px;display:block;position:relative;z-index:2}md-menu-bar .md-menu{display:inline-block;padding:0;position:relative}md-menu-bar button{font-size:14px;padding:0 10px;margin:0;border:0;background-color:transparent;height:40px}md-menu-bar md-backdrop.md-menu-backdrop{z-index:-2}md-menu-content.md-menu-bar-menu.md-dense{max-height:none;padding:16px 0}md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent{position:relative}md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>md-icon{position:absolute;padding:0;width:24px;top:6px;left:24px}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>md-icon{left:auto;right:24px}md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent .md-menu>.md-button,md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>.md-button{padding:0 32px 0 64px}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent .md-menu>.md-button,[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>.md-button{padding:0 64px 0 32px}md-menu-content.md-menu-bar-menu.md-dense .md-button{min-height:0;height:32px;display:flex}md-menu-content.md-menu-bar-menu.md-dense .md-button span{flex-grow:1}md-menu-content.md-menu-bar-menu.md-dense .md-button span.md-alt-text{flex-grow:0;align-self:flex-end;margin:0 8px}md-menu-content.md-menu-bar-menu.md-dense md-menu-divider{margin:8px 0}md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button,md-menu-content.md-menu-bar-menu.md-dense md-menu-item>.md-button{text-align:left}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button,[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense md-menu-item>.md-button{text-align:right}md-menu-content.md-menu-bar-menu.md-dense .md-menu{padding:0}md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button{position:relative;margin:0;width:100%;text-transform:none;font-weight:400;border-radius:0;padding-left:16px}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button{padding-left:0;padding-right:16px}md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button:after{display:block;content:'\25BC';position:absolute;top:0;speak:none;transform:rotate(270deg) scaleY(.45) scaleX(.9);right:28px}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button:after{transform:rotate(90deg) scaleY(.45) scaleX(.9)}[dir=rtl] md-menu-content.md-menu-bar-menu.md-dense .md-menu>.md-button:after{right:auto;left:28px}.md-nav-bar{border-style:solid;border-width:0 0 1px;height:48px;position:relative}._md-nav-bar-list{outline:0;list-style:none;margin:0;padding:0;box-sizing:border-box;display:flex;flex-direction:row}.md-nav-item:first-of-type{margin-left:8px}.md-button._md-nav-button{line-height:24px;margin:0 4px;padding:12px 16px;transition:background-color .35s cubic-bezier(.35,0,.25,1)}.md-button._md-nav-button:focus{outline:0}.md-button._md-nav-button:hover{background-color:inherit}md-nav-ink-bar{bottom:0;height:2px;left:auto;position:absolute;right:auto;background-color:#000}md-nav-ink-bar._md-left{transition:left 125ms cubic-bezier(.35,0,.25,1),right .25s cubic-bezier(.35,0,.25,1)}md-nav-ink-bar._md-right{transition:left .25s cubic-bezier(.35,0,.25,1),right 125ms cubic-bezier(.35,0,.25,1)}md-nav-extra-content{min-height:48px;padding-right:12px}.md-panel-outer-wrapper{height:100%;left:0;position:absolute;top:0;width:100%}._md-panel-hidden{display:none}._md-panel-fullscreen{border-radius:0;left:0;min-height:100%;min-width:100%;position:fixed;top:0}._md-panel-shown .md-panel{opacity:1;transition:none}.md-panel{opacity:0;position:fixed}.md-panel._md-panel-shown{opacity:1;transition:none}.md-panel._md-panel-animate-enter{opacity:1;transition:all .3s cubic-bezier(0,0,.2,1)}.md-panel._md-panel-animate-leave{opacity:1;transition:all .3s cubic-bezier(.4,0,1,1)}.md-panel._md-panel-animate-fade-out,.md-panel._md-panel-animate-scale-out{opacity:0}.md-panel._md-panel-backdrop{height:100%;position:absolute;width:100%}.md-panel._md-opaque-enter{opacity:.48;transition:opacity .3s cubic-bezier(0,0,.2,1)}.md-panel._md-opaque-leave{transition:opacity .3s cubic-bezier(.4,0,1,1)}@keyframes indeterminate-rotate{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}md-progress-circular{position:relative;display:block}md-progress-circular._md-progress-circular-disabled{visibility:hidden}md-progress-circular.md-mode-indeterminate svg{animation:indeterminate-rotate 2.9s linear infinite}md-progress-circular svg{position:absolute;overflow:visible;top:0;left:0}md-progress-linear{display:block;position:relative;width:100%;height:5px;padding-top:0!important;margin-bottom:0!important}md-progress-linear._md-progress-linear-disabled{visibility:hidden}md-progress-linear .md-container{display:block;position:relative;overflow:hidden;width:100%;height:5px;transform:translate(0,0) scale(1,1)}md-progress-linear .md-container .md-bar{position:absolute;left:0;top:0;bottom:0;width:100%;height:5px}md-progress-linear .md-container .md-dashed:before{content:"";display:none;position:absolute;margin-top:0;height:5px;width:100%;background-color:transparent;background-size:10px 10px!important;background-position:0 -23px}md-progress-linear .md-container .md-bar1,md-progress-linear .md-container .md-bar2{transition:transform .2s linear}md-progress-linear .md-container.md-mode-query .md-bar1{display:none}md-progress-linear .md-container.md-mode-query .md-bar2{transition:all .2s linear;animation:query .8s infinite cubic-bezier(.39,.575,.565,1)}md-progress-linear .md-container.md-mode-determinate .md-bar1{display:none}md-progress-linear .md-container.md-mode-indeterminate .md-bar1{animation:md-progress-linear-indeterminate-scale-1 4s infinite,md-progress-linear-indeterminate-1 4s infinite}md-progress-linear .md-container.md-mode-indeterminate .md-bar2{animation:md-progress-linear-indeterminate-scale-2 4s infinite,md-progress-linear-indeterminate-2 4s infinite}md-progress-linear .md-container.ng-hide ._md-progress-linear-disabled md-progress-linear .md-container{animation:none}md-progress-linear .md-container.ng-hide ._md-progress-linear-disabled md-progress-linear .md-container .md-bar1{animation-name:none}md-progress-linear .md-container.ng-hide ._md-progress-linear-disabled md-progress-linear .md-container .md-bar2{animation-name:none}md-progress-linear .md-container.md-mode-buffer{background-color:transparent!important;transition:all .2s linear}md-progress-linear .md-container.md-mode-buffer .md-dashed:before{display:block;animation:buffer 3s infinite linear}@keyframes query{0%{opacity:1;transform:translateX(35%) scale(.3,1)}100%{opacity:0;transform:translateX(-50%) scale(0,1)}}@keyframes buffer{0%{opacity:1;background-position:0 -23px}50%{opacity:0}100%{opacity:1;background-position:-200px -23px}}@keyframes md-progress-linear-indeterminate-scale-1{0%{transform:scaleX(.1);animation-timing-function:linear}36.6%{transform:scaleX(.1);animation-timing-function:cubic-bezier(.334731432,.124819821,.785843996,1)}69.15%{transform:scaleX(.83);animation-timing-function:cubic-bezier(.225732004,0,.233648906,1.3709798)}100%{transform:scaleX(.1)}}@keyframes md-progress-linear-indeterminate-1{0%{left:-105.166666667%;animation-timing-function:linear}20%{left:-105.166666667%;animation-timing-function:cubic-bezier(.5,0,.701732,.495818703)}69.15%{left:21.5%;animation-timing-function:cubic-bezier(.302435,.38135197,.55,.956352125)}100%{left:95.4444444444%}}@keyframes md-progress-linear-indeterminate-scale-2{0%{transform:scaleX(.1);animation-timing-function:cubic-bezier(.205028172,.057050836,.57660995,.453970841)}19.15%{transform:scaleX(.57);animation-timing-function:cubic-bezier(.152312994,.196431957,.648373778,1.00431535)}44.15%{transform:scaleX(.91);animation-timing-function:cubic-bezier(.25775882,-.003163357,.211761916,1.38178961)}100%{transform:scaleX(.1)}}@keyframes md-progress-linear-indeterminate-2{0%{left:-54.8888888889%;animation-timing-function:cubic-bezier(.15,0,.5150584,.409684966)}25%{left:-17.25%;animation-timing-function:cubic-bezier(.3103299,.284057684,.8,.733718979)}48.35%{left:29.5%;animation-timing-function:cubic-bezier(.4,.627034903,.6,.902025796)}100%{left:117.388888889%}}md-radio-button{box-sizing:border-box;display:block;margin-bottom:16px;white-space:nowrap;cursor:pointer;position:relative}md-radio-button[disabled]{cursor:default}md-radio-button[disabled] .md-container{cursor:default}md-radio-button .md-container{position:absolute;top:50%;transform:translateY(-50%);box-sizing:border-box;display:inline-block;width:20px;height:20px;cursor:pointer;left:0;right:auto}[dir=rtl] md-radio-button .md-container{left:auto}[dir=rtl] md-radio-button .md-container{right:0}md-radio-button .md-container .md-ripple-container{position:absolute;display:block;width:auto;height:auto;left:-15px;top:-15px;right:-15px;bottom:-15px}md-radio-button .md-container:before{box-sizing:border-box;background-color:transparent;border-radius:50%;content:'';position:absolute;display:block;height:auto;left:0;top:0;right:0;bottom:0;transition:all .5s;width:auto}md-radio-button.md-align-top-left>div.md-container{top:12px}md-radio-button .md-off{box-sizing:border-box;position:absolute;top:0;left:0;width:20px;height:20px;border-style:solid;border-width:2px;border-radius:50%;transition:border-color ease .28s}md-radio-button .md-on{box-sizing:border-box;position:absolute;top:0;left:0;width:20px;height:20px;border-radius:50%;transition:transform ease .28s;transform:scale(0)}md-radio-button.md-checked .md-on{transform:scale(.5)}md-radio-button .md-label{box-sizing:border-box;position:relative;display:inline-block;margin-left:30px;margin-right:0;vertical-align:middle;white-space:normal;pointer-events:none;width:auto}[dir=rtl] md-radio-button .md-label{margin-left:0}[dir=rtl] md-radio-button .md-label{margin-right:30px}md-radio-group.layout-column md-radio-button,md-radio-group.layout-gt-lg-column md-radio-button,md-radio-group.layout-gt-md-column md-radio-button,md-radio-group.layout-gt-sm-column md-radio-button,md-radio-group.layout-gt-xs-column md-radio-button,md-radio-group.layout-lg-column md-radio-button,md-radio-group.layout-md-column md-radio-button,md-radio-group.layout-sm-column md-radio-button,md-radio-group.layout-xl-column md-radio-button,md-radio-group.layout-xs-column md-radio-button{margin-bottom:16px}md-radio-group.layout-gt-lg-row md-radio-button,md-radio-group.layout-gt-md-row md-radio-button,md-radio-group.layout-gt-sm-row md-radio-button,md-radio-group.layout-gt-xs-row md-radio-button,md-radio-group.layout-lg-row md-radio-button,md-radio-group.layout-md-row md-radio-button,md-radio-group.layout-row md-radio-button,md-radio-group.layout-sm-row md-radio-button,md-radio-group.layout-xl-row md-radio-button,md-radio-group.layout-xs-row md-radio-button{margin-top:0;margin-bottom:0;margin-left:0;margin-right:16px}[dir=rtl] md-radio-group.layout-gt-lg-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-md-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-sm-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-xs-row md-radio-button,[dir=rtl] md-radio-group.layout-lg-row md-radio-button,[dir=rtl] md-radio-group.layout-md-row md-radio-button,[dir=rtl] md-radio-group.layout-row md-radio-button,[dir=rtl] md-radio-group.layout-sm-row md-radio-button,[dir=rtl] md-radio-group.layout-xl-row md-radio-button,[dir=rtl] md-radio-group.layout-xs-row md-radio-button{margin-left:16px}[dir=rtl] md-radio-group.layout-gt-lg-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-md-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-sm-row md-radio-button,[dir=rtl] md-radio-group.layout-gt-xs-row md-radio-button,[dir=rtl] md-radio-group.layout-lg-row md-radio-button,[dir=rtl] md-radio-group.layout-md-row md-radio-button,[dir=rtl] md-radio-group.layout-row md-radio-button,[dir=rtl] md-radio-group.layout-sm-row md-radio-button,[dir=rtl] md-radio-group.layout-xl-row md-radio-button,[dir=rtl] md-radio-group.layout-xs-row md-radio-button{margin-right:0}md-radio-group.layout-gt-lg-row md-radio-button:last-of-type,md-radio-group.layout-gt-md-row md-radio-button:last-of-type,md-radio-group.layout-gt-sm-row md-radio-button:last-of-type,md-radio-group.layout-gt-xs-row md-radio-button:last-of-type,md-radio-group.layout-lg-row md-radio-button:last-of-type,md-radio-group.layout-md-row md-radio-button:last-of-type,md-radio-group.layout-row md-radio-button:last-of-type,md-radio-group.layout-sm-row md-radio-button:last-of-type,md-radio-group.layout-xl-row md-radio-button:last-of-type,md-radio-group.layout-xs-row md-radio-button:last-of-type{margin-left:0;margin-right:0}md-radio-group:focus{outline:0}md-radio-group.md-focused .md-checked .md-container:before{left:-8px;top:-8px;right:-8px;bottom:-8px}md-radio-group[disabled] md-radio-button{cursor:default}md-radio-group[disabled] md-radio-button .md-container{cursor:default}.md-inline-form md-radio-group{margin:18px 0 19px}.md-inline-form md-radio-group md-radio-button{display:inline-block;height:30px;padding:2px;box-sizing:border-box;margin-top:0;margin-bottom:0}@media screen and (-ms-high-contrast:active){md-radio-button.md-default-theme .md-on{background-color:#fff}}md-input-container:not([md-no-float]) .md-select-placeholder span:first-child{transition:transform .4s cubic-bezier(.25,.8,.25,1);transform-origin:left top}[dir=rtl] md-input-container:not([md-no-float]) .md-select-placeholder span:first-child{transform-origin:right top}md-input-container.md-input-focused:not([md-no-float]) .md-select-placeholder span:first-child{transform:translateY(-22px) translateX(-2px) scale(.75)}.md-select-menu-container{position:fixed;left:0;top:0;z-index:90;opacity:0;display:none;transform:translateY(-1px)}.md-select-menu-container:not(.md-clickable){pointer-events:none}.md-select-menu-container md-progress-circular{display:table;margin:24px auto!important}.md-select-menu-container.md-active{display:block;opacity:1}.md-select-menu-container.md-active md-select-menu{transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:150ms}.md-select-menu-container.md-active md-select-menu>*{opacity:1;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:150ms;transition-delay:.1s}.md-select-menu-container.md-leave{opacity:0;transition:all .3s cubic-bezier(.55,0,.55,.2);transition-duration:250ms}md-input-container>md-select{margin:0;order:2}md-input-container:not(.md-input-has-value) md-select.ng-required:not(.md-no-asterisk) .md-select-value span:first-child:after,md-input-container:not(.md-input-has-value) md-select[required]:not(.md-no-asterisk) .md-select-value span:first-child:after{content:' *';font-size:13px;vertical-align:top}md-input-container.md-input-invalid md-select .md-select-value{border-bottom-style:solid;padding-bottom:1px}md-select{display:flex;margin:20px 0 26px 0}md-select.ng-required.ng-invalid:not(.md-no-asterisk) .md-select-value span:first-child:after,md-select[required].ng-invalid:not(.md-no-asterisk) .md-select-value span:first-child:after{content:' *';font-size:13px;vertical-align:top}md-select[disabled] .md-select-value{background-position:0 bottom;background-size:4px 1px;background-repeat:repeat-x;margin-bottom:-1px}md-select:focus{outline:0}md-select[disabled]:hover{cursor:default}md-select:not([disabled]):hover{cursor:pointer}md-select:not([disabled]).ng-invalid.ng-touched .md-select-value{border-bottom-style:solid;padding-bottom:1px}md-select:not([disabled]):focus .md-select-value{border-bottom-width:2px;border-bottom-style:solid;padding-bottom:0}md-select:not([disabled]):focus.ng-invalid.ng-touched .md-select-value{padding-bottom:0}md-input-container.md-input-has-value .md-select-value>span:not(.md-select-icon){transform:translate3d(0,1px,0)}.md-select-value{display:flex;align-items:center;padding:2px 2px 1px;border-bottom-width:1px;border-bottom-style:solid;background-color:transparent;position:relative;box-sizing:content-box;min-width:64px;min-height:26px;flex-grow:1}.md-select-value>span:not(.md-select-icon){max-width:100%;flex:1 1 auto;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.md-select-value>span:not(.md-select-icon) .md-text{display:inline}.md-select-value .md-select-icon{display:block;align-items:flex-end;text-align:end;width:24px;margin:0 4px;transform:translate3d(0,-2px,0);font-size:1.2rem}.md-select-value .md-select-icon:after{display:block;content:'\25BC';position:relative;top:2px;speak:none;font-size:13px;transform:scaleY(.5) scaleX(1)}.md-select-value.md-select-placeholder{display:flex;order:1;pointer-events:none;-webkit-font-smoothing:antialiased;padding-left:2px;z-index:1}md-select-menu{display:flex;flex-direction:column;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);max-height:256px;min-height:48px;overflow-y:hidden;transform-origin:left top;transform:scale(1)}md-select-menu.md-reverse{flex-direction:column-reverse}md-select-menu:not(.md-overflow) md-content{padding-top:8px;padding-bottom:8px}[dir=rtl] md-select-menu{transform-origin:right top}md-select-menu md-content{min-width:136px;min-height:48px;max-height:256px;overflow-y:auto}md-select-menu>*{opacity:0}md-option{cursor:pointer;position:relative;display:flex;align-items:center;width:auto;transition:background .15s linear;padding:0 16px 0 16px;height:48px}md-option[disabled]{cursor:default}md-option:focus{outline:0}md-option .md-text{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}md-optgroup{display:block}md-optgroup label{display:block;font-size:14px;text-transform:uppercase;padding:16px;font-weight:500}md-optgroup md-option{padding-left:32px;padding-right:32px}@media screen and (-ms-high-contrast:active){.md-select-backdrop{background-color:transparent}md-select-menu{border:1px solid #fff}}md-select-menu[multiple] md-option.md-checkbox-enabled{padding-left:40px;padding-right:16px}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled{padding-left:16px}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled{padding-right:40px}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{position:absolute;top:50%;transform:translateY(-50%);box-sizing:border-box;display:inline-block;width:20px;height:20px;left:0;right:auto}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{left:auto}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{right:0}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container:before{box-sizing:border-box;background-color:transparent;border-radius:50%;content:'';position:absolute;display:block;height:auto;left:0;top:0;right:0;bottom:0;transition:all .5s;width:auto}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container:after{box-sizing:border-box;content:'';position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container .md-ripple-container{position:absolute;display:block;width:auto;height:auto;left:-15px;top:-15px;right:-15px;bottom:-15px}md-select-menu[multiple] md-option.md-checkbox-enabled .md-icon{box-sizing:border-box;transition:240ms;position:absolute;top:0;left:0;width:20px;height:20px;border-width:2px;border-style:solid;border-radius:2px}md-select-menu[multiple] md-option.md-checkbox-enabled[selected] .md-icon{border-color:transparent}md-select-menu[multiple] md-option.md-checkbox-enabled[selected] .md-icon:after{box-sizing:border-box;transform:rotate(45deg);position:absolute;left:4.6666666667px;top:.2222222222px;display:table;width:6.6666666667px;height:13.3333333333px;border-width:2px;border-style:solid;border-top:0;border-left:0;content:''}md-select-menu[multiple] md-option.md-checkbox-enabled[disabled]{cursor:default}md-select-menu[multiple] md-option.md-checkbox-enabled.md-indeterminate .md-icon:after{box-sizing:border-box;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:table;width:12px;height:2px;border-width:2px;border-style:solid;border-top:0;border-left:0;content:''}md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{margin-left:10.6666666667px;margin-right:auto}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{margin-left:auto}[dir=rtl] md-select-menu[multiple] md-option.md-checkbox-enabled .md-container{margin-right:10.6666666667px}md-sidenav{box-sizing:border-box;position:absolute;flex-direction:column;z-index:60;width:320px;max-width:320px;bottom:0;overflow:auto;-webkit-overflow-scrolling:touch}md-sidenav ul{list-style:none}md-sidenav.md-closed{display:none}md-sidenav.md-closed-add,md-sidenav.md-closed-remove{display:flex;transition:.2s ease-in all}md-sidenav.md-closed-add.md-closed-add-active,md-sidenav.md-closed-remove.md-closed-remove-active{transition:all .4s cubic-bezier(.25,.8,.25,1)}md-sidenav.md-locked-open-add,md-sidenav.md-locked-open-remove{position:static;display:flex;transform:translate3d(0,0,0)}md-sidenav.md-locked-open,md-sidenav.md-locked-open-remove.md-closed,md-sidenav.md-locked-open.md-closed,md-sidenav.md-locked-open.md-closed.md-sidenav-left,md-sidenav.md-locked-open.md-closed.md-sidenav-right{position:static;display:flex;transform:translate3d(0,0,0)}md-sidenav.md-locked-open-remove-active{transition:width .3s cubic-bezier(.55,0,.55,.2),min-width .3s cubic-bezier(.55,0,.55,.2);width:0!important;min-width:0!important}md-sidenav.md-closed.md-locked-open-add{width:0!important;min-width:0!important;transform:translate3d(0,0,0)}md-sidenav.md-closed.md-locked-open-add-active{transition:width .3s cubic-bezier(.55,0,.55,.2),min-width .3s cubic-bezier(.55,0,.55,.2);width:320px;min-width:320px;transform:translate3d(0,0,0)}.md-sidenav-backdrop.md-locked-open{display:none}.md-sidenav-left,md-sidenav{left:0;top:0;transform:translate3d(0,0,0)}.md-sidenav-left.md-closed,md-sidenav.md-closed{transform:translate3d(-100%,0,0)}.md-sidenav-right{left:100%;top:0;transform:translate(-100%,0)}.md-sidenav-right.md-closed{transform:translate(0,0)}@media (min-width:600px){md-sidenav{max-width:400px}}@media (max-width:456px){md-sidenav{width:calc(100% - 56px);min-width:calc(100% - 56px);max-width:calc(100% - 56px)}}@media screen and (-ms-high-contrast:active){.md-sidenav-left,md-sidenav{border-right:1px solid #fff}.md-sidenav-right{border-left:1px solid #fff}}@keyframes sliderFocusThumb{0%{transform:scale(.7)}30%{transform:scale(1)}100%{transform:scale(.7)}}@keyframes sliderDiscreteFocusThumb{0%{transform:scale(.7)}50%{transform:scale(.8)}100%{transform:scale(0)}}@keyframes sliderDiscreteFocusRing{0%{transform:scale(.7);opacity:0}50%{transform:scale(1);opacity:1}100%{transform:scale(0)}}md-slider{height:48px;min-width:128px;position:relative;margin-left:4px;margin-right:4px;padding:0;display:block;flex-direction:row}md-slider *,md-slider :after{box-sizing:border-box}md-slider .md-slider-wrapper{outline:0;width:100%;height:100%}md-slider .md-slider-content{position:relative}md-slider .md-track-container{width:100%;position:absolute;top:23px;height:2px}md-slider .md-track{position:absolute;left:0;right:0;height:100%}md-slider .md-track-fill{transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:width,height}md-slider .md-track-ticks{position:absolute;left:0;right:0;height:100%}md-slider .md-track-ticks canvas{width:100%;height:100%}md-slider .md-thumb-container{position:absolute;left:0;top:50%;transform:translate3d(-50%,-50%,0);transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:left,right,bottom}[dir=rtl] md-slider .md-thumb-container{left:auto;right:0}md-slider .md-thumb{z-index:1;position:absolute;left:-10px;top:14px;width:20px;height:20px;border-radius:20px;transform:scale(.7);transition:all .4s cubic-bezier(.25,.8,.25,1)}[dir=rtl] md-slider .md-thumb{left:auto;right:-10px}md-slider .md-thumb:after{content:'';position:absolute;width:20px;height:20px;border-radius:20px;border-width:3px;border-style:solid;transition:inherit}md-slider .md-sign{display:flex;align-items:center;justify-content:center;position:absolute;left:-14px;top:-17px;width:28px;height:28px;border-radius:28px;transform:scale(.4) translate3d(0,67.5px,0);transition:all .3s cubic-bezier(.35,0,.25,1)}md-slider .md-sign:after{position:absolute;content:'';left:0;border-radius:16px;top:19px;border-left:14px solid transparent;border-right:14px solid transparent;border-top-width:16px;border-top-style:solid;opacity:0;transform:translate3d(0,-8px,0);transition:all .2s cubic-bezier(.35,0,.25,1)}[dir=rtl] md-slider .md-sign:after{left:auto;right:0}md-slider .md-sign .md-thumb-text{z-index:1;font-size:12px;font-weight:700}md-slider .md-focus-ring{position:absolute;left:-17px;top:7px;width:34px;height:34px;border-radius:34px;transform:scale(.7);opacity:0;transition:all .35s cubic-bezier(.35,0,.25,1)}[dir=rtl] md-slider .md-focus-ring{left:auto;right:-17px}md-slider .md-disabled-thumb{position:absolute;left:-14px;top:10px;width:28px;height:28px;border-radius:28px;transform:scale(.5);border-width:4px;border-style:solid;display:none}[dir=rtl] md-slider .md-disabled-thumb{left:auto;right:-14px}md-slider.md-min .md-sign{opacity:0}md-slider:focus{outline:0}md-slider.md-dragging .md-thumb-container,md-slider.md-dragging .md-track-fill{transition:none}md-slider:not([md-discrete]) .md-sign,md-slider:not([md-discrete]) .md-track-ticks{display:none}md-slider:not([md-discrete]):not([disabled]) .md-slider-wrapper .md-thumb:hover{transform:scale(.8)}md-slider:not([md-discrete]):not([disabled]) .md-slider-wrapper.md-focused .md-focus-ring{transform:scale(1);opacity:1}md-slider:not([md-discrete]):not([disabled]) .md-slider-wrapper.md-focused .md-thumb{animation:sliderFocusThumb .7s cubic-bezier(.35,0,.25,1)}md-slider:not([md-discrete]):not([disabled]).md-active .md-slider-wrapper .md-thumb{transform:scale(1)}md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-focus-ring{transform:scale(0);animation:sliderDiscreteFocusRing .5s cubic-bezier(.35,0,.25,1)}md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-thumb{animation:sliderDiscreteFocusThumb .5s cubic-bezier(.35,0,.25,1)}md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-thumb,md-slider[md-discrete]:not([disabled]).md-active .md-thumb{transform:scale(0)}md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-sign,md-slider[md-discrete]:not([disabled]) .md-slider-wrapper.md-focused .md-sign:after,md-slider[md-discrete]:not([disabled]).md-active .md-sign,md-slider[md-discrete]:not([disabled]).md-active .md-sign:after{opacity:1;transform:translate3d(0,0,0) scale(1)}md-slider[md-discrete][disabled][readonly] .md-thumb{transform:scale(0)}md-slider[md-discrete][disabled][readonly] .md-sign,md-slider[md-discrete][disabled][readonly] .md-sign:after{opacity:1;transform:translate3d(0,0,0) scale(1)}md-slider[disabled] .md-track-fill{display:none}md-slider[disabled] .md-track-ticks{opacity:0}md-slider[disabled]:not([readonly]) .md-sign{opacity:0}md-slider[disabled] .md-thumb{transform:scale(.5)}md-slider[disabled] .md-disabled-thumb{display:block}md-slider[md-vertical]{flex-direction:column;min-height:128px;min-width:0}md-slider[md-vertical] .md-slider-wrapper{flex:1;padding-top:12px;padding-bottom:12px;width:48px;align-self:center;display:flex;justify-content:center}md-slider[md-vertical] .md-track-container{height:100%;width:2px;top:0;left:calc(50% - (2px / 2))}md-slider[md-vertical] .md-thumb-container{top:auto;margin-bottom:23px;left:calc(50% - 1px);bottom:0}md-slider[md-vertical] .md-thumb-container .md-thumb:after{left:1px}md-slider[md-vertical] .md-thumb-container .md-focus-ring{left:-16px}md-slider[md-vertical] .md-track-fill{bottom:0}md-slider[md-vertical][md-discrete] .md-sign{left:-40px;top:9.5px;transform:scale(.4) translate3d(67.5px,0,0)}md-slider[md-vertical][md-discrete] .md-sign:after{top:9.5px;left:19px;border-top:14px solid transparent;border-right:0;border-bottom:14px solid transparent;border-left-width:16px;border-left-style:solid;opacity:0;transform:translate3d(0,-8px,0);transition:all .2s ease-in-out}md-slider[md-vertical][md-discrete] .md-sign .md-thumb-text{z-index:1;font-size:12px;font-weight:700}md-slider[md-vertical][md-discrete] .md-focused .md-sign:after,md-slider[md-vertical][md-discrete].md-active .md-sign:after,md-slider[md-vertical][md-discrete][disabled][readonly] .md-sign:after{top:0}md-slider[md-vertical][disabled][readonly] .md-thumb{transform:scale(0)}md-slider[md-vertical][disabled][readonly] .md-sign,md-slider[md-vertical][disabled][readonly] .md-sign:after{opacity:1;transform:translate3d(0,0,0) scale(1)}md-slider[md-invert]:not([md-vertical]) .md-track-fill{left:auto;right:0}[dir=rtl] md-slider[md-invert]:not([md-vertical]) .md-track-fill{left:0}[dir=rtl] md-slider[md-invert]:not([md-vertical]) .md-track-fill{right:auto}md-slider[md-invert][md-vertical] .md-track-fill{bottom:auto;top:0}md-slider-container{display:flex;align-items:center;flex-direction:row}md-slider-container>:first-child:not(md-slider),md-slider-container>:last-child:not(md-slider){min-width:25px;max-width:42px;height:25px;transition:all .4s cubic-bezier(.25,.8,.25,1);transition-property:color,max-width}md-slider-container>:first-child:not(md-slider){margin-right:16px}[dir=rtl] md-slider-container>:first-child:not(md-slider){margin-right:auto;margin-left:16px}md-slider-container>:last-child:not(md-slider){margin-left:16px}[dir=rtl] md-slider-container>:last-child:not(md-slider){margin-left:auto;margin-right:16px}md-slider-container[md-vertical]{flex-direction:column}md-slider-container[md-vertical]>:first-child:not(md-slider),md-slider-container[md-vertical]>:last-child:not(md-slider){margin-right:0;margin-left:0;text-align:center}md-slider-container md-input-container input[type=number]{text-align:center;padding-left:15px;height:50px;margin-top:-25px}[dir=rtl] md-slider-container md-input-container input[type=number]{padding-left:0;padding-right:15px}@media screen and (-ms-high-contrast:active){md-slider.md-default-theme .md-track{border-bottom:1px solid #fff}}.md-sticky-clone{z-index:2;top:0;left:0;right:0;position:absolute!important;transform:translate3d(-9999px,-9999px,0)}.md-sticky-clone[sticky-state=active]{transform:translate3d(0,0,0)}.md-sticky-clone[sticky-state=active]:not(.md-sticky-no-effect) .md-subheader-inner{animation:subheaderStickyHoverIn .3s ease-out both}@keyframes subheaderStickyHoverIn{0%{box-shadow:0 0 0 0 transparent}100%{box-shadow:0 2px 4px 0 rgba(0,0,0,.16)}}@keyframes subheaderStickyHoverOut{0%{box-shadow:0 2px 4px 0 rgba(0,0,0,.16)}100%{box-shadow:0 0 0 0 transparent}}.md-subheader-wrapper:not(.md-sticky-no-effect){transition:.2s ease-out margin}.md-subheader-wrapper:not(.md-sticky-no-effect) .md-subheader{margin:0}.md-subheader-wrapper:not(.md-sticky-no-effect).md-sticky-clone{z-index:2}.md-subheader-wrapper:not(.md-sticky-no-effect)[sticky-state=active]{margin-top:-2px}.md-subheader-wrapper:not(.md-sticky-no-effect):not(.md-sticky-clone)[sticky-prev-state=active] .md-subheader-inner:after{animation:subheaderStickyHoverOut .3s ease-out both}.md-subheader{display:block;font-size:14px;font-weight:500;line-height:1em;margin:0;position:relative}.md-subheader .md-subheader-inner{display:block;padding:16px}.md-subheader .md-subheader-content{display:block;z-index:1;position:relative}.md-inline-form md-switch{margin-top:18px;margin-bottom:19px}md-switch{margin:16px 0;white-space:nowrap;cursor:pointer;outline:0;user-select:none;height:30px;line-height:28px;align-items:center;display:flex;margin-left:inherit;margin-right:16px}[dir=rtl] md-switch{margin-left:16px}[dir=rtl] md-switch{margin-right:inherit}md-switch:last-of-type{margin-left:inherit;margin-right:0}[dir=rtl] md-switch:last-of-type{margin-left:0}[dir=rtl] md-switch:last-of-type{margin-right:inherit}md-switch[disabled]{cursor:default}md-switch[disabled] .md-container{cursor:default}md-switch .md-container{cursor:grab;width:36px;height:24px;position:relative;user-select:none;margin-right:8px;float:left}[dir=rtl] md-switch .md-container{margin-right:auto;margin-left:8px}md-switch:not([disabled]) .md-dragging,md-switch:not([disabled]).md-dragging .md-container{cursor:grabbing}md-switch.md-focused:not([disabled]) .md-thumb:before{left:-8px;top:-8px;right:-8px;bottom:-8px}md-switch.md-focused:not([disabled]):not(.md-checked) .md-thumb:before{background-color:rgba(0,0,0,.12)}md-switch .md-label{border-color:transparent;border-width:0;float:left}md-switch .md-bar{left:1px;width:34px;top:5px;height:14px;border-radius:8px;position:absolute}md-switch .md-thumb-container{top:2px;left:0;width:16px;position:absolute;transform:translate3d(0,0,0);z-index:1}md-switch.md-checked .md-thumb-container{transform:translate3d(100%,0,0)}md-switch .md-thumb{position:absolute;margin:0;left:0;top:0;outline:0;height:20px;width:20px;border-radius:50%;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}md-switch .md-thumb:before{background-color:transparent;border-radius:50%;content:'';position:absolute;display:block;height:auto;left:0;top:0;right:0;bottom:0;transition:all .5s;width:auto}md-switch .md-thumb .md-ripple-container{position:absolute;display:block;width:auto;height:auto;left:-20px;top:-20px;right:-20px;bottom:-20px}md-switch:not(.md-dragging) .md-bar,md-switch:not(.md-dragging) .md-thumb,md-switch:not(.md-dragging) .md-thumb-container{transition:all 80ms linear;transition-property:transform,background-color}md-switch:not(.md-dragging) .md-bar,md-switch:not(.md-dragging) .md-thumb{transition-delay:50ms}@media screen and (-ms-high-contrast:active){md-switch.md-default-theme .md-bar{background-color:#666}md-switch.md-default-theme.md-checked .md-bar{background-color:#9e9e9e}md-switch.md-default-theme .md-thumb{background-color:#fff}}@keyframes md-tab-content-hide{0%{opacity:1}50%{opacity:1}100%{opacity:0}}md-tab-data{position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;opacity:0}md-tabs{display:block;margin:0;border-radius:2px;overflow:hidden;position:relative;flex-shrink:0}md-tabs:not(.md-no-tab-content):not(.md-dynamic-height){min-height:248px}md-tabs[md-align-tabs=bottom]{padding-bottom:48px}md-tabs[md-align-tabs=bottom] md-tabs-wrapper{position:absolute;bottom:0;left:0;right:0;height:48px;z-index:2}md-tabs[md-align-tabs=bottom] md-tabs-content-wrapper{top:0;bottom:48px}md-tabs.md-dynamic-height md-tabs-content-wrapper{min-height:0;position:relative;top:auto;left:auto;right:auto;bottom:auto;overflow:visible}md-tabs.md-dynamic-height md-tab-content.md-active{position:relative}md-tabs[md-border-bottom] md-tabs-wrapper{border-width:0 0 1px;border-style:solid}md-tabs[md-border-bottom]:not(.md-dynamic-height) md-tabs-content-wrapper{top:49px}md-tabs-wrapper{display:block;position:relative;transform:translate3d(0,0,0)}md-tabs-wrapper md-next-button,md-tabs-wrapper md-prev-button{height:100%;width:32px;position:absolute;top:50%;transform:translateY(-50%);line-height:1em;z-index:2;cursor:pointer;font-size:16px;background:transparent no-repeat center center;transition:all .5s cubic-bezier(.35,0,.25,1)}md-tabs-wrapper md-next-button:focus,md-tabs-wrapper md-prev-button:focus{outline:0}md-tabs-wrapper md-next-button.md-disabled,md-tabs-wrapper md-prev-button.md-disabled{opacity:.25;cursor:default}md-tabs-wrapper md-next-button.ng-leave,md-tabs-wrapper md-prev-button.ng-leave{transition:none}md-tabs-wrapper md-next-button md-icon,md-tabs-wrapper md-prev-button md-icon{position:absolute;top:50%;left:50%;transform:translate3d(-50%,-50%,0)}md-tabs-wrapper md-prev-button{left:0;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE3LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPiA8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPiA8c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMjQgMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPiA8ZyBpZD0iSGVhZGVyIj4gPGc+IDxyZWN0IHg9Ii02MTgiIHk9Ii0xMjA4IiBmaWxsPSJub25lIiB3aWR0aD0iMTQwMCIgaGVpZ2h0PSIzNjAwIi8+IDwvZz4gPC9nPiA8ZyBpZD0iTGFiZWwiPiA8L2c+IDxnIGlkPSJJY29uIj4gPGc+IDxwb2x5Z29uIHBvaW50cz0iMTUuNCw3LjQgMTQsNiA4LDEyIDE0LDE4IDE1LjQsMTYuNiAxMC44LDEyIAkJIiBzdHlsZT0iZmlsbDp3aGl0ZTsiLz4gPHJlY3QgZmlsbD0ibm9uZSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ii8+IDwvZz4gPC9nPiA8ZyBpZD0iR3JpZCIgZGlzcGxheT0ibm9uZSI+IDxnIGRpc3BsYXk9ImlubGluZSI+IDwvZz4gPC9nPiA8L3N2Zz4NCg==)}[dir=rtl] md-tabs-wrapper md-prev-button{left:auto;right:0}md-tabs-wrapper md-next-button{right:0;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE3LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPiA8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPiA8c3ZnIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMjQgMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPiA8ZyBpZD0iSGVhZGVyIj4gPGc+IDxyZWN0IHg9Ii02MTgiIHk9Ii0xMzM2IiBmaWxsPSJub25lIiB3aWR0aD0iMTQwMCIgaGVpZ2h0PSIzNjAwIi8+IDwvZz4gPC9nPiA8ZyBpZD0iTGFiZWwiPiA8L2c+IDxnIGlkPSJJY29uIj4gPGc+IDxwb2x5Z29uIHBvaW50cz0iMTAsNiA4LjYsNy40IDEzLjIsMTIgOC42LDE2LjYgMTAsMTggMTYsMTIgCQkiIHN0eWxlPSJmaWxsOndoaXRlOyIvPiA8cmVjdCBmaWxsPSJub25lIiB3aWR0aD0iMjQiIGhlaWdodD0iMjQiLz4gPC9nPiA8L2c+IDxnIGlkPSJHcmlkIiBkaXNwbGF5PSJub25lIj4gPGcgZGlzcGxheT0iaW5saW5lIj4gPC9nPiA8L2c+IDwvc3ZnPg0K)}[dir=rtl] md-tabs-wrapper md-next-button{right:auto;left:0}md-tabs-wrapper md-next-button md-icon{transform:translate3d(-50%,-50%,0) rotate(180deg)}md-tabs-wrapper.md-stretch-tabs md-pagination-wrapper{width:100%;display:flex;flex-direction:row}md-tabs-wrapper.md-stretch-tabs md-pagination-wrapper md-tab-item{flex-grow:1}md-tabs-canvas{position:relative;overflow:hidden;display:block;height:48px}md-tabs-canvas:after{content:'';display:table;clear:both}md-tabs-canvas .md-dummy-wrapper{position:absolute;top:0;left:0}[dir=rtl] md-tabs-canvas .md-dummy-wrapper{left:auto;right:0}md-tabs-canvas.md-paginated{margin:0 32px}md-tabs-canvas.md-center-tabs{display:flex;flex-direction:column;text-align:center}md-tabs-canvas.md-center-tabs .md-tab{float:none;display:inline-block}md-pagination-wrapper{height:48px;display:block;transition:transform .5s cubic-bezier(.35,0,.25,1);position:absolute;width:999999px;left:0;transform:translate3d(0,0,0)}md-pagination-wrapper:after{content:'';display:table;clear:both}[dir=rtl] md-pagination-wrapper{left:auto;right:0}md-pagination-wrapper.md-center-tabs{position:relative;width:auto;margin:0 auto}md-tabs-content-wrapper{display:block;position:absolute;top:48px;left:0;right:0;bottom:0;overflow:hidden}md-tab-content{display:block;position:absolute;top:0;left:0;right:0;bottom:0;transition:transform .5s cubic-bezier(.35,0,.25,1);overflow:auto;transform:translate3d(0,0,0)}md-tab-content.md-no-scroll{bottom:auto;overflow:hidden}md-tab-content.md-no-transition,md-tab-content.ng-leave{transition:none}md-tab-content.md-left:not(.md-active){transform:translateX(-100%);animation:1s md-tab-content-hide;opacity:0}[dir=rtl] md-tab-content.md-left:not(.md-active){transform:translateX(100%)}md-tab-content.md-left:not(.md-active) *{transition:visibility 0s linear;transition-delay:.5s;visibility:hidden}md-tab-content.md-right:not(.md-active){transform:translateX(100%);animation:1s md-tab-content-hide;opacity:0}[dir=rtl] md-tab-content.md-right:not(.md-active){transform:translateX(-100%)}md-tab-content.md-right:not(.md-active) *{transition:visibility 0s linear;transition-delay:.5s;visibility:hidden}md-tab-content>div.ng-leave{animation:1s md-tab-content-hide}md-ink-bar{position:absolute;left:auto;right:auto;bottom:0;height:2px}md-ink-bar.md-left{transition:left 125ms cubic-bezier(.35,0,.25,1),right .25s cubic-bezier(.35,0,.25,1)}md-ink-bar.md-right{transition:left .25s cubic-bezier(.35,0,.25,1),right 125ms cubic-bezier(.35,0,.25,1)}md-tab{position:absolute;z-index:-1;left:-9999px}.md-tab{font-size:14px;text-align:center;line-height:24px;padding:12px 24px;transition:background-color .35s cubic-bezier(.35,0,.25,1);cursor:pointer;white-space:nowrap;position:relative;text-transform:uppercase;float:left;font-weight:500;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}[dir=rtl] .md-tab{float:right}.md-tab.md-focused{box-shadow:none;outline:0}.md-tab.md-active{cursor:default}.md-tab.md-disabled{pointer-events:none;touch-action:pan-y;user-select:none;-webkit-user-drag:none;opacity:.5;cursor:default}.md-tab.ng-leave{transition:none}md-toolbar+md-tabs{border-top-left-radius:0;border-top-right-radius:0}.md-toast-text{padding:0 6px}md-toast{position:absolute;z-index:105;box-sizing:border-box;cursor:default;overflow:hidden;padding:8px;opacity:1;transition:all .4s cubic-bezier(.25,.8,.25,1)}md-toast .md-toast-content{display:flex;direction:row;align-items:center;max-height:168px;max-width:100%;min-height:48px;padding:0 18px;box-shadow:0 2px 5px 0 rgba(0,0,0,.26);border-radius:2px;font-size:14px;overflow:hidden;transform:translate3d(0,0,0) rotateZ(0);transition:all .4s cubic-bezier(.25,.8,.25,1);justify-content:flex-start}md-toast .md-toast-content::before{content:'';min-height:48px;visibility:hidden;display:inline-block}[dir=rtl] md-toast .md-toast-content{justify-content:flex-end}md-toast .md-toast-content span{flex:1 1 0%;box-sizing:border-box;min-width:0}md-toast.md-capsule{border-radius:24px}md-toast.md-capsule .md-toast-content{border-radius:24px}md-toast.ng-leave-active .md-toast-content{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-toast.md-swipedown .md-toast-content,md-toast.md-swipeleft .md-toast-content,md-toast.md-swiperight .md-toast-content,md-toast.md-swipeup .md-toast-content{transition:all .4s cubic-bezier(.25,.8,.25,1)}md-toast.ng-enter{opacity:0}md-toast.ng-enter .md-toast-content{transform:translate3d(0,100%,0)}md-toast.ng-enter.md-top .md-toast-content{transform:translate3d(0,-100%,0)}md-toast.ng-enter.ng-enter-active{opacity:1}md-toast.ng-enter.ng-enter-active .md-toast-content{transform:translate3d(0,0,0)}md-toast.ng-leave.ng-leave-active .md-toast-content{opacity:0;transform:translate3d(0,100%,0)}md-toast.ng-leave.ng-leave-active.md-swipeup .md-toast-content{transform:translate3d(0,-50%,0)}md-toast.ng-leave.ng-leave-active.md-swipedown .md-toast-content{transform:translate3d(0,50%,0)}md-toast.ng-leave.ng-leave-active.md-top .md-toast-content{transform:translate3d(0,-100%,0)}md-toast .md-action{line-height:19px;margin-left:24px;margin-right:0;cursor:pointer;text-transform:uppercase;float:right}md-toast .md-button{min-width:0;margin-right:0;margin-left:12px}[dir=rtl] md-toast .md-button{margin-right:12px}[dir=rtl] md-toast .md-button{margin-left:0}@media (max-width:959px){md-toast{left:0;right:0;width:100%;max-width:100%;min-width:0;border-radius:0;bottom:0;padding:0}md-toast.ng-leave.ng-leave-active.md-swipeup .md-toast-content{transform:translate3d(0,-50%,0)}md-toast.ng-leave.ng-leave-active.md-swipedown .md-toast-content{transform:translate3d(0,50%,0)}}@media (min-width:960px){md-toast{min-width:304px}md-toast.md-bottom{bottom:0}md-toast.md-left{left:0}md-toast.md-right{right:0}md-toast.md-top{top:0}md-toast._md-start{left:0}[dir=rtl] md-toast._md-start{left:auto;right:0}md-toast._md-end{right:0}[dir=rtl] md-toast._md-end{right:auto;left:0}md-toast.ng-leave.ng-leave-active.md-swipeleft .md-toast-content{transform:translate3d(-50%,0,0)}md-toast.ng-leave.ng-leave-active.md-swiperight .md-toast-content{transform:translate3d(50%,0,0)}}@media (min-width:1920px){md-toast .md-toast-content{max-width:568px}}@media screen and (-ms-high-contrast:active){md-toast{border:1px solid #fff}}.md-toast-animating{overflow:hidden!important}md-toolbar{box-sizing:border-box;display:flex;flex-direction:column;position:relative;z-index:2;font-size:20px;min-height:64px;width:100%}md-toolbar._md-toolbar-transitions{transition-duration:.5s;transition-timing-function:cubic-bezier(.35,0,.25,1);transition-property:background-color,fill,color}md-toolbar.md-whiteframe-z1-add,md-toolbar.md-whiteframe-z1-remove{transition:box-shadow .5s linear}md-toolbar md-toolbar-filler{width:72px}md-toolbar *,md-toolbar :after,md-toolbar :before{box-sizing:border-box}md-toolbar.ng-animate{transition:none}md-toolbar.md-tall{height:128px;min-height:128px;max-height:128px}md-toolbar.md-medium-tall{height:88px;min-height:88px;max-height:88px}md-toolbar.md-medium-tall .md-toolbar-tools{height:48px;min-height:48px;max-height:48px}md-toolbar>.md-indent{margin-left:64px}[dir=rtl] md-toolbar>.md-indent{margin-left:auto;margin-right:64px}md-toolbar~md-content>md-list{padding:0}md-toolbar~md-content>md-list md-list-item:last-child md-divider{display:none}.md-toolbar-tools{font-size:20px;letter-spacing:.005em;box-sizing:border-box;font-weight:400;display:flex;align-items:center;flex-direction:row;width:100%;height:64px;max-height:64px;padding:0 16px;margin:0}.md-toolbar-tools h1,.md-toolbar-tools h2,.md-toolbar-tools h3{font-size:inherit;font-weight:inherit;margin:inherit}.md-toolbar-tools a{color:inherit;text-decoration:none}.md-toolbar-tools .fill-height{display:flex;align-items:center}.md-toolbar-tools .md-button{margin-top:0;margin-bottom:0}.md-toolbar-tools .md-button,.md-toolbar-tools .md-button.md-icon-button md-icon{transition-duration:.5s;transition-timing-function:cubic-bezier(.35,0,.25,1);transition-property:background-color,fill,color}.md-toolbar-tools .md-button.md-icon-button md-icon.ng-animate,.md-toolbar-tools .md-button.ng-animate{transition:none}.md-toolbar-tools>.md-button:first-child{margin-left:-8px}[dir=rtl] .md-toolbar-tools>.md-button:first-child{margin-left:auto;margin-right:-8px}.md-toolbar-tools>.md-button:last-child{margin-right:-8px}[dir=rtl] .md-toolbar-tools>.md-button:last-child{margin-right:auto;margin-left:-8px}.md-toolbar-tools>md-menu:last-child{margin-right:-8px}[dir=rtl] .md-toolbar-tools>md-menu:last-child{margin-right:auto;margin-left:-8px}.md-toolbar-tools>md-menu:last-child>.md-button{margin-right:0}[dir=rtl] .md-toolbar-tools>md-menu:last-child>.md-button{margin-right:auto;margin-left:0}@media screen and (-ms-high-contrast:active){.md-toolbar-tools{border-bottom:1px solid #fff}}@media (min-width:0) and (max-width:959px) and (orientation:portrait){md-toolbar{min-height:56px}.md-toolbar-tools{height:56px;max-height:56px}}@media (min-width:0) and (max-width:959px) and (orientation:landscape){md-toolbar{min-height:48px}.md-toolbar-tools{height:48px;max-height:48px}}md-tooltip{position:absolute;z-index:100;overflow:hidden;pointer-events:none;border-radius:4px;font-weight:500;font-size:14px}@media (min-width:960px){md-tooltip{font-size:10px}}md-tooltip .md-content{position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform-origin:center top;transform:scale(0);opacity:0;height:32px;line-height:32px;padding-left:16px;padding-right:16px}@media (min-width:960px){md-tooltip .md-content{height:22px;line-height:22px;padding-left:8px;padding-right:8px}}md-tooltip .md-content.md-show-add{transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.2s;transform:scale(0);opacity:0}md-tooltip .md-content.md-show,md-tooltip .md-content.md-show-add-active{transform:scale(1);opacity:.9;transform-origin:center top}md-tooltip .md-content.md-show-remove{transition:all .4s cubic-bezier(.25,.8,.25,1);transition-duration:.2s}md-tooltip .md-content.md-show-remove.md-show-remove-active{transform:scale(0);opacity:0}md-tooltip.md-hide{transition:all .3s cubic-bezier(.55,0,.55,.2)}md-tooltip.md-show{transition:all .4s cubic-bezier(.25,.8,.25,1);pointer-events:auto}.md-virtual-repeat-container{box-sizing:border-box;display:block;margin:0;overflow:hidden;padding:0;position:relative}.md-virtual-repeat-container .md-virtual-repeat-scroller{bottom:0;box-sizing:border-box;left:0;margin:0;overflow-x:hidden;padding:0;position:absolute;right:0;top:0;-webkit-overflow-scrolling:touch}.md-virtual-repeat-container .md-virtual-repeat-sizer{box-sizing:border-box;height:1px;display:block;margin:0;padding:0;width:1px}.md-virtual-repeat-container .md-virtual-repeat-offsetter{box-sizing:border-box;left:0;margin:0;padding:0;position:absolute;right:0;top:0}.md-virtual-repeat-container.md-orient-horizontal .md-virtual-repeat-scroller{overflow-x:auto;overflow-y:hidden}.md-virtual-repeat-container.md-orient-horizontal .md-virtual-repeat-offsetter{bottom:16px;right:auto;white-space:nowrap}[dir=rtl] .md-virtual-repeat-container.md-orient-horizontal .md-virtual-repeat-offsetter{right:auto;left:auto}.md-whiteframe-1dp,.md-whiteframe-z1{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.md-whiteframe-2dp{box-shadow:0 1px 5px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}.md-whiteframe-3dp{box-shadow:0 1px 8px 0 rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.md-whiteframe-4dp,.md-whiteframe-z2{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.md-whiteframe-5dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)}.md-whiteframe-6dp{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.md-whiteframe-7dp,.md-whiteframe-z3{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.md-whiteframe-8dp{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.md-whiteframe-9dp{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.md-whiteframe-10dp,.md-whiteframe-z4{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.md-whiteframe-11dp{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.md-whiteframe-12dp{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.md-whiteframe-13dp,.md-whiteframe-z5{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.md-whiteframe-14dp{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.md-whiteframe-15dp{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.md-whiteframe-16dp{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.md-whiteframe-17dp{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.md-whiteframe-18dp{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.md-whiteframe-19dp{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.md-whiteframe-20dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.md-whiteframe-21dp{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.md-whiteframe-22dp{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.md-whiteframe-23dp{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.md-whiteframe-24dp{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}@media screen and (-ms-high-contrast:active){md-whiteframe{border:1px solid #fff}}@media print{[md-whiteframe],md-whiteframe{background-color:#fff}}.ng-cloak,.x-ng-cloak,[data-ng-cloak],[ng-cloak],[ng\:cloak],[x-ng-cloak]{display:none!important}@-moz-document url-prefix(){.layout-fill{margin:0;width:100%;min-height:100%;height:100%}}.flex-order{order:0}.flex-order--20{order:-20}.flex-order--19{order:-19}.flex-order--18{order:-18}.flex-order--17{order:-17}.flex-order--16{order:-16}.flex-order--15{order:-15}.flex-order--14{order:-14}.flex-order--13{order:-13}.flex-order--12{order:-12}.flex-order--11{order:-11}.flex-order--10{order:-10}.flex-order--9{order:-9}.flex-order--8{order:-8}.flex-order--7{order:-7}.flex-order--6{order:-6}.flex-order--5{order:-5}.flex-order--4{order:-4}.flex-order--3{order:-3}.flex-order--2{order:-2}.flex-order--1{order:-1}.flex-order-0{order:0}.flex-order-1{order:1}.flex-order-2{order:2}.flex-order-3{order:3}.flex-order-4{order:4}.flex-order-5{order:5}.flex-order-6{order:6}.flex-order-7{order:7}.flex-order-8{order:8}.flex-order-9{order:9}.flex-order-10{order:10}.flex-order-11{order:11}.flex-order-12{order:12}.flex-order-13{order:13}.flex-order-14{order:14}.flex-order-15{order:15}.flex-order-16{order:16}.flex-order-17{order:17}.flex-order-18{order:18}.flex-order-19{order:19}.flex-order-20{order:20}.flex-offset-0,.offset-0{margin-left:0}[dir=rtl] .flex-offset-0,[dir=rtl] .offset-0{margin-left:auto;margin-right:0}.flex-offset-5,.offset-5{margin-left:5%}[dir=rtl] .flex-offset-5,[dir=rtl] .offset-5{margin-left:auto;margin-right:5%}.flex-offset-10,.offset-10{margin-left:10%}[dir=rtl] .flex-offset-10,[dir=rtl] .offset-10{margin-left:auto;margin-right:10%}.flex-offset-15,.offset-15{margin-left:15%}[dir=rtl] .flex-offset-15,[dir=rtl] .offset-15{margin-left:auto;margin-right:15%}.flex-offset-20,.offset-20{margin-left:20%}[dir=rtl] .flex-offset-20,[dir=rtl] .offset-20{margin-left:auto;margin-right:20%}.flex-offset-25,.offset-25{margin-left:25%}[dir=rtl] .flex-offset-25,[dir=rtl] .offset-25{margin-left:auto;margin-right:25%}.flex-offset-30,.offset-30{margin-left:30%}[dir=rtl] .flex-offset-30,[dir=rtl] .offset-30{margin-left:auto;margin-right:30%}.flex-offset-35,.offset-35{margin-left:35%}[dir=rtl] .flex-offset-35,[dir=rtl] .offset-35{margin-left:auto;margin-right:35%}.flex-offset-40,.offset-40{margin-left:40%}[dir=rtl] .flex-offset-40,[dir=rtl] .offset-40{margin-left:auto;margin-right:40%}.flex-offset-45,.offset-45{margin-left:45%}[dir=rtl] .flex-offset-45,[dir=rtl] .offset-45{margin-left:auto;margin-right:45%}.flex-offset-50,.offset-50{margin-left:50%}[dir=rtl] .flex-offset-50,[dir=rtl] .offset-50{margin-left:auto;margin-right:50%}.flex-offset-55,.offset-55{margin-left:55%}[dir=rtl] .flex-offset-55,[dir=rtl] .offset-55{margin-left:auto;margin-right:55%}.flex-offset-60,.offset-60{margin-left:60%}[dir=rtl] .flex-offset-60,[dir=rtl] .offset-60{margin-left:auto;margin-right:60%}.flex-offset-65,.offset-65{margin-left:65%}[dir=rtl] .flex-offset-65,[dir=rtl] .offset-65{margin-left:auto;margin-right:65%}.flex-offset-70,.offset-70{margin-left:70%}[dir=rtl] .flex-offset-70,[dir=rtl] .offset-70{margin-left:auto;margin-right:70%}.flex-offset-75,.offset-75{margin-left:75%}[dir=rtl] .flex-offset-75,[dir=rtl] .offset-75{margin-left:auto;margin-right:75%}.flex-offset-80,.offset-80{margin-left:80%}[dir=rtl] .flex-offset-80,[dir=rtl] .offset-80{margin-left:auto;margin-right:80%}.flex-offset-85,.offset-85{margin-left:85%}[dir=rtl] .flex-offset-85,[dir=rtl] .offset-85{margin-left:auto;margin-right:85%}.flex-offset-90,.offset-90{margin-left:90%}[dir=rtl] .flex-offset-90,[dir=rtl] .offset-90{margin-left:auto;margin-right:90%}.flex-offset-95,.offset-95{margin-left:95%}[dir=rtl] .flex-offset-95,[dir=rtl] .offset-95{margin-left:auto;margin-right:95%}.flex-offset-33,.offset-33{margin-left:calc(100% / 3)}.flex-offset-66,.offset-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-66,[dir=rtl] .offset-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align,.layout-align-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-start,.layout-align-start-center,.layout-align-start-end,.layout-align-start-start,.layout-align-start-stretch{justify-content:flex-start}.layout-align-center,.layout-align-center-center,.layout-align-center-end,.layout-align-center-start,.layout-align-center-stretch{justify-content:center}.layout-align-end,.layout-align-end-center,.layout-align-end-end,.layout-align-end-start,.layout-align-end-stretch{justify-content:flex-end}.layout-align-space-around,.layout-align-space-around-center,.layout-align-space-around-end,.layout-align-space-around-start,.layout-align-space-around-stretch{justify-content:space-around}.layout-align-space-between,.layout-align-space-between-center,.layout-align-space-between-end,.layout-align-space-between-start,.layout-align-space-between-stretch{justify-content:space-between}.layout-align-center-start,.layout-align-end-start,.layout-align-space-around-start,.layout-align-space-between-start,.layout-align-start-start{align-items:flex-start;align-content:flex-start}.layout-align-center-center,.layout-align-end-center,.layout-align-space-around-center,.layout-align-space-between-center,.layout-align-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-center-center>*,.layout-align-end-center>*,.layout-align-space-around-center>*,.layout-align-space-between-center>*,.layout-align-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-center-end,.layout-align-end-end,.layout-align-space-around-end,.layout-align-space-between-end,.layout-align-start-end{align-items:flex-end;align-content:flex-end}.layout-align-center-stretch,.layout-align-end-stretch,.layout-align-space-around-stretch,.layout-align-space-between-stretch,.layout-align-start-stretch{align-items:stretch;align-content:stretch}.flex{flex:1;box-sizing:border-box}.flex-grow{flex:1 1 100%;box-sizing:border-box}.flex-initial{flex:0 1 auto;box-sizing:border-box}.flex-auto{flex:1 1 auto;box-sizing:border-box}.flex-none{flex:0 0 auto;box-sizing:border-box}.flex-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-row>.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-row>.flex{min-width:0}.layout-column>.flex-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-column>.flex{min-height:0}.layout,.layout-column,.layout-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-column{flex-direction:column}.layout-row{flex-direction:row}.layout-padding-sm>*,.layout-padding>.flex-sm{padding:4px}.layout-padding,.layout-padding-gt-sm,.layout-padding-gt-sm>*,.layout-padding-md,.layout-padding-md>*,.layout-padding>*,.layout-padding>.flex,.layout-padding>.flex-gt-sm,.layout-padding>.flex-md{padding:8px}.layout-padding-gt-lg>*,.layout-padding-gt-md>*,.layout-padding-lg>*,.layout-padding>.flex-gt-lg,.layout-padding>.flex-gt-md,.layout-padding>.flex-lg{padding:16px}.layout-margin-sm>*,.layout-margin>.flex-sm{margin:4px}.layout-margin,.layout-margin-gt-sm,.layout-margin-gt-sm>*,.layout-margin-md,.layout-margin-md>*,.layout-margin>*,.layout-margin>.flex,.layout-margin>.flex-gt-sm,.layout-margin>.flex-md{margin:8px}.layout-margin-gt-lg>*,.layout-margin-gt-md>*,.layout-margin-lg>*,.layout-margin>.flex-gt-lg,.layout-margin>.flex-gt-md,.layout-margin>.flex-lg{margin:16px}.layout-wrap{flex-wrap:wrap}.layout-nowrap{flex-wrap:nowrap}.layout-fill{margin:0;width:100%;min-height:100%;height:100%}@media (max-width:599px){.hide-xs:not(.show-xs):not(.show),.hide:not(.show-xs):not(.show){display:none}.flex-order-xs--20{order:-20}.flex-order-xs--19{order:-19}.flex-order-xs--18{order:-18}.flex-order-xs--17{order:-17}.flex-order-xs--16{order:-16}.flex-order-xs--15{order:-15}.flex-order-xs--14{order:-14}.flex-order-xs--13{order:-13}.flex-order-xs--12{order:-12}.flex-order-xs--11{order:-11}.flex-order-xs--10{order:-10}.flex-order-xs--9{order:-9}.flex-order-xs--8{order:-8}.flex-order-xs--7{order:-7}.flex-order-xs--6{order:-6}.flex-order-xs--5{order:-5}.flex-order-xs--4{order:-4}.flex-order-xs--3{order:-3}.flex-order-xs--2{order:-2}.flex-order-xs--1{order:-1}.flex-order-xs-0{order:0}.flex-order-xs-1{order:1}.flex-order-xs-2{order:2}.flex-order-xs-3{order:3}.flex-order-xs-4{order:4}.flex-order-xs-5{order:5}.flex-order-xs-6{order:6}.flex-order-xs-7{order:7}.flex-order-xs-8{order:8}.flex-order-xs-9{order:9}.flex-order-xs-10{order:10}.flex-order-xs-11{order:11}.flex-order-xs-12{order:12}.flex-order-xs-13{order:13}.flex-order-xs-14{order:14}.flex-order-xs-15{order:15}.flex-order-xs-16{order:16}.flex-order-xs-17{order:17}.flex-order-xs-18{order:18}.flex-order-xs-19{order:19}.flex-order-xs-20{order:20}.flex-offset-xs-0,.offset-xs-0{margin-left:0}[dir=rtl] .flex-offset-xs-0,[dir=rtl] .offset-xs-0{margin-left:auto;margin-right:0}.flex-offset-xs-5,.offset-xs-5{margin-left:5%}[dir=rtl] .flex-offset-xs-5,[dir=rtl] .offset-xs-5{margin-left:auto;margin-right:5%}.flex-offset-xs-10,.offset-xs-10{margin-left:10%}[dir=rtl] .flex-offset-xs-10,[dir=rtl] .offset-xs-10{margin-left:auto;margin-right:10%}.flex-offset-xs-15,.offset-xs-15{margin-left:15%}[dir=rtl] .flex-offset-xs-15,[dir=rtl] .offset-xs-15{margin-left:auto;margin-right:15%}.flex-offset-xs-20,.offset-xs-20{margin-left:20%}[dir=rtl] .flex-offset-xs-20,[dir=rtl] .offset-xs-20{margin-left:auto;margin-right:20%}.flex-offset-xs-25,.offset-xs-25{margin-left:25%}[dir=rtl] .flex-offset-xs-25,[dir=rtl] .offset-xs-25{margin-left:auto;margin-right:25%}.flex-offset-xs-30,.offset-xs-30{margin-left:30%}[dir=rtl] .flex-offset-xs-30,[dir=rtl] .offset-xs-30{margin-left:auto;margin-right:30%}.flex-offset-xs-35,.offset-xs-35{margin-left:35%}[dir=rtl] .flex-offset-xs-35,[dir=rtl] .offset-xs-35{margin-left:auto;margin-right:35%}.flex-offset-xs-40,.offset-xs-40{margin-left:40%}[dir=rtl] .flex-offset-xs-40,[dir=rtl] .offset-xs-40{margin-left:auto;margin-right:40%}.flex-offset-xs-45,.offset-xs-45{margin-left:45%}[dir=rtl] .flex-offset-xs-45,[dir=rtl] .offset-xs-45{margin-left:auto;margin-right:45%}.flex-offset-xs-50,.offset-xs-50{margin-left:50%}[dir=rtl] .flex-offset-xs-50,[dir=rtl] .offset-xs-50{margin-left:auto;margin-right:50%}.flex-offset-xs-55,.offset-xs-55{margin-left:55%}[dir=rtl] .flex-offset-xs-55,[dir=rtl] .offset-xs-55{margin-left:auto;margin-right:55%}.flex-offset-xs-60,.offset-xs-60{margin-left:60%}[dir=rtl] .flex-offset-xs-60,[dir=rtl] .offset-xs-60{margin-left:auto;margin-right:60%}.flex-offset-xs-65,.offset-xs-65{margin-left:65%}[dir=rtl] .flex-offset-xs-65,[dir=rtl] .offset-xs-65{margin-left:auto;margin-right:65%}.flex-offset-xs-70,.offset-xs-70{margin-left:70%}[dir=rtl] .flex-offset-xs-70,[dir=rtl] .offset-xs-70{margin-left:auto;margin-right:70%}.flex-offset-xs-75,.offset-xs-75{margin-left:75%}[dir=rtl] .flex-offset-xs-75,[dir=rtl] .offset-xs-75{margin-left:auto;margin-right:75%}.flex-offset-xs-80,.offset-xs-80{margin-left:80%}[dir=rtl] .flex-offset-xs-80,[dir=rtl] .offset-xs-80{margin-left:auto;margin-right:80%}.flex-offset-xs-85,.offset-xs-85{margin-left:85%}[dir=rtl] .flex-offset-xs-85,[dir=rtl] .offset-xs-85{margin-left:auto;margin-right:85%}.flex-offset-xs-90,.offset-xs-90{margin-left:90%}[dir=rtl] .flex-offset-xs-90,[dir=rtl] .offset-xs-90{margin-left:auto;margin-right:90%}.flex-offset-xs-95,.offset-xs-95{margin-left:95%}[dir=rtl] .flex-offset-xs-95,[dir=rtl] .offset-xs-95{margin-left:auto;margin-right:95%}.flex-offset-xs-33,.offset-xs-33{margin-left:calc(100% / 3)}.flex-offset-xs-66,.offset-xs-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-xs-66,[dir=rtl] .offset-xs-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-xs,.layout-align-xs-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-xs-start,.layout-align-xs-start-center,.layout-align-xs-start-end,.layout-align-xs-start-start,.layout-align-xs-start-stretch{justify-content:flex-start}.layout-align-xs-center,.layout-align-xs-center-center,.layout-align-xs-center-end,.layout-align-xs-center-start,.layout-align-xs-center-stretch{justify-content:center}.layout-align-xs-end,.layout-align-xs-end-center,.layout-align-xs-end-end,.layout-align-xs-end-start,.layout-align-xs-end-stretch{justify-content:flex-end}.layout-align-xs-space-around,.layout-align-xs-space-around-center,.layout-align-xs-space-around-end,.layout-align-xs-space-around-start,.layout-align-xs-space-around-stretch{justify-content:space-around}.layout-align-xs-space-between,.layout-align-xs-space-between-center,.layout-align-xs-space-between-end,.layout-align-xs-space-between-start,.layout-align-xs-space-between-stretch{justify-content:space-between}.layout-align-xs-center-start,.layout-align-xs-end-start,.layout-align-xs-space-around-start,.layout-align-xs-space-between-start,.layout-align-xs-start-start{align-items:flex-start;align-content:flex-start}.layout-align-xs-center-center,.layout-align-xs-end-center,.layout-align-xs-space-around-center,.layout-align-xs-space-between-center,.layout-align-xs-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-xs-center-center>*,.layout-align-xs-end-center>*,.layout-align-xs-space-around-center>*,.layout-align-xs-space-between-center>*,.layout-align-xs-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-xs-center-end,.layout-align-xs-end-end,.layout-align-xs-space-around-end,.layout-align-xs-space-between-end,.layout-align-xs-start-end{align-items:flex-end;align-content:flex-end}.layout-align-xs-center-stretch,.layout-align-xs-end-stretch,.layout-align-xs-space-around-stretch,.layout-align-xs-space-between-stretch,.layout-align-xs-start-stretch{align-items:stretch;align-content:stretch}.flex-xs{flex:1;box-sizing:border-box}.flex-xs-grow{flex:1 1 100%;box-sizing:border-box}.flex-xs-initial{flex:0 1 auto;box-sizing:border-box}.flex-xs-auto{flex:1 1 auto;box-sizing:border-box}.flex-xs-none{flex:0 0 auto;box-sizing:border-box}.flex-xs-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-xs-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-xs-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-xs-column>.flex-xs-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-row>.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-xs-column>.flex-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-xs-row>.flex-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-xs-row>.flex-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-xs-row>.flex{min-width:0}.layout-xs-column>.flex-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-xs-column>.flex-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xs-column>.flex{min-height:0}.layout-xs,.layout-xs-column,.layout-xs-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-xs-column{flex-direction:column}.layout-xs-row{flex-direction:row}}@media (min-width:600px){.flex-order-gt-xs--20{order:-20}.flex-order-gt-xs--19{order:-19}.flex-order-gt-xs--18{order:-18}.flex-order-gt-xs--17{order:-17}.flex-order-gt-xs--16{order:-16}.flex-order-gt-xs--15{order:-15}.flex-order-gt-xs--14{order:-14}.flex-order-gt-xs--13{order:-13}.flex-order-gt-xs--12{order:-12}.flex-order-gt-xs--11{order:-11}.flex-order-gt-xs--10{order:-10}.flex-order-gt-xs--9{order:-9}.flex-order-gt-xs--8{order:-8}.flex-order-gt-xs--7{order:-7}.flex-order-gt-xs--6{order:-6}.flex-order-gt-xs--5{order:-5}.flex-order-gt-xs--4{order:-4}.flex-order-gt-xs--3{order:-3}.flex-order-gt-xs--2{order:-2}.flex-order-gt-xs--1{order:-1}.flex-order-gt-xs-0{order:0}.flex-order-gt-xs-1{order:1}.flex-order-gt-xs-2{order:2}.flex-order-gt-xs-3{order:3}.flex-order-gt-xs-4{order:4}.flex-order-gt-xs-5{order:5}.flex-order-gt-xs-6{order:6}.flex-order-gt-xs-7{order:7}.flex-order-gt-xs-8{order:8}.flex-order-gt-xs-9{order:9}.flex-order-gt-xs-10{order:10}.flex-order-gt-xs-11{order:11}.flex-order-gt-xs-12{order:12}.flex-order-gt-xs-13{order:13}.flex-order-gt-xs-14{order:14}.flex-order-gt-xs-15{order:15}.flex-order-gt-xs-16{order:16}.flex-order-gt-xs-17{order:17}.flex-order-gt-xs-18{order:18}.flex-order-gt-xs-19{order:19}.flex-order-gt-xs-20{order:20}.flex-offset-gt-xs-0,.offset-gt-xs-0{margin-left:0}[dir=rtl] .flex-offset-gt-xs-0,[dir=rtl] .offset-gt-xs-0{margin-left:auto;margin-right:0}.flex-offset-gt-xs-5,.offset-gt-xs-5{margin-left:5%}[dir=rtl] .flex-offset-gt-xs-5,[dir=rtl] .offset-gt-xs-5{margin-left:auto;margin-right:5%}.flex-offset-gt-xs-10,.offset-gt-xs-10{margin-left:10%}[dir=rtl] .flex-offset-gt-xs-10,[dir=rtl] .offset-gt-xs-10{margin-left:auto;margin-right:10%}.flex-offset-gt-xs-15,.offset-gt-xs-15{margin-left:15%}[dir=rtl] .flex-offset-gt-xs-15,[dir=rtl] .offset-gt-xs-15{margin-left:auto;margin-right:15%}.flex-offset-gt-xs-20,.offset-gt-xs-20{margin-left:20%}[dir=rtl] .flex-offset-gt-xs-20,[dir=rtl] .offset-gt-xs-20{margin-left:auto;margin-right:20%}.flex-offset-gt-xs-25,.offset-gt-xs-25{margin-left:25%}[dir=rtl] .flex-offset-gt-xs-25,[dir=rtl] .offset-gt-xs-25{margin-left:auto;margin-right:25%}.flex-offset-gt-xs-30,.offset-gt-xs-30{margin-left:30%}[dir=rtl] .flex-offset-gt-xs-30,[dir=rtl] .offset-gt-xs-30{margin-left:auto;margin-right:30%}.flex-offset-gt-xs-35,.offset-gt-xs-35{margin-left:35%}[dir=rtl] .flex-offset-gt-xs-35,[dir=rtl] .offset-gt-xs-35{margin-left:auto;margin-right:35%}.flex-offset-gt-xs-40,.offset-gt-xs-40{margin-left:40%}[dir=rtl] .flex-offset-gt-xs-40,[dir=rtl] .offset-gt-xs-40{margin-left:auto;margin-right:40%}.flex-offset-gt-xs-45,.offset-gt-xs-45{margin-left:45%}[dir=rtl] .flex-offset-gt-xs-45,[dir=rtl] .offset-gt-xs-45{margin-left:auto;margin-right:45%}.flex-offset-gt-xs-50,.offset-gt-xs-50{margin-left:50%}[dir=rtl] .flex-offset-gt-xs-50,[dir=rtl] .offset-gt-xs-50{margin-left:auto;margin-right:50%}.flex-offset-gt-xs-55,.offset-gt-xs-55{margin-left:55%}[dir=rtl] .flex-offset-gt-xs-55,[dir=rtl] .offset-gt-xs-55{margin-left:auto;margin-right:55%}.flex-offset-gt-xs-60,.offset-gt-xs-60{margin-left:60%}[dir=rtl] .flex-offset-gt-xs-60,[dir=rtl] .offset-gt-xs-60{margin-left:auto;margin-right:60%}.flex-offset-gt-xs-65,.offset-gt-xs-65{margin-left:65%}[dir=rtl] .flex-offset-gt-xs-65,[dir=rtl] .offset-gt-xs-65{margin-left:auto;margin-right:65%}.flex-offset-gt-xs-70,.offset-gt-xs-70{margin-left:70%}[dir=rtl] .flex-offset-gt-xs-70,[dir=rtl] .offset-gt-xs-70{margin-left:auto;margin-right:70%}.flex-offset-gt-xs-75,.offset-gt-xs-75{margin-left:75%}[dir=rtl] .flex-offset-gt-xs-75,[dir=rtl] .offset-gt-xs-75{margin-left:auto;margin-right:75%}.flex-offset-gt-xs-80,.offset-gt-xs-80{margin-left:80%}[dir=rtl] .flex-offset-gt-xs-80,[dir=rtl] .offset-gt-xs-80{margin-left:auto;margin-right:80%}.flex-offset-gt-xs-85,.offset-gt-xs-85{margin-left:85%}[dir=rtl] .flex-offset-gt-xs-85,[dir=rtl] .offset-gt-xs-85{margin-left:auto;margin-right:85%}.flex-offset-gt-xs-90,.offset-gt-xs-90{margin-left:90%}[dir=rtl] .flex-offset-gt-xs-90,[dir=rtl] .offset-gt-xs-90{margin-left:auto;margin-right:90%}.flex-offset-gt-xs-95,.offset-gt-xs-95{margin-left:95%}[dir=rtl] .flex-offset-gt-xs-95,[dir=rtl] .offset-gt-xs-95{margin-left:auto;margin-right:95%}.flex-offset-gt-xs-33,.offset-gt-xs-33{margin-left:calc(100% / 3)}.flex-offset-gt-xs-66,.offset-gt-xs-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-gt-xs-66,[dir=rtl] .offset-gt-xs-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-gt-xs,.layout-align-gt-xs-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-gt-xs-start,.layout-align-gt-xs-start-center,.layout-align-gt-xs-start-end,.layout-align-gt-xs-start-start,.layout-align-gt-xs-start-stretch{justify-content:flex-start}.layout-align-gt-xs-center,.layout-align-gt-xs-center-center,.layout-align-gt-xs-center-end,.layout-align-gt-xs-center-start,.layout-align-gt-xs-center-stretch{justify-content:center}.layout-align-gt-xs-end,.layout-align-gt-xs-end-center,.layout-align-gt-xs-end-end,.layout-align-gt-xs-end-start,.layout-align-gt-xs-end-stretch{justify-content:flex-end}.layout-align-gt-xs-space-around,.layout-align-gt-xs-space-around-center,.layout-align-gt-xs-space-around-end,.layout-align-gt-xs-space-around-start,.layout-align-gt-xs-space-around-stretch{justify-content:space-around}.layout-align-gt-xs-space-between,.layout-align-gt-xs-space-between-center,.layout-align-gt-xs-space-between-end,.layout-align-gt-xs-space-between-start,.layout-align-gt-xs-space-between-stretch{justify-content:space-between}.layout-align-gt-xs-center-start,.layout-align-gt-xs-end-start,.layout-align-gt-xs-space-around-start,.layout-align-gt-xs-space-between-start,.layout-align-gt-xs-start-start{align-items:flex-start;align-content:flex-start}.layout-align-gt-xs-center-center,.layout-align-gt-xs-end-center,.layout-align-gt-xs-space-around-center,.layout-align-gt-xs-space-between-center,.layout-align-gt-xs-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-gt-xs-center-center>*,.layout-align-gt-xs-end-center>*,.layout-align-gt-xs-space-around-center>*,.layout-align-gt-xs-space-between-center>*,.layout-align-gt-xs-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-gt-xs-center-end,.layout-align-gt-xs-end-end,.layout-align-gt-xs-space-around-end,.layout-align-gt-xs-space-between-end,.layout-align-gt-xs-start-end{align-items:flex-end;align-content:flex-end}.layout-align-gt-xs-center-stretch,.layout-align-gt-xs-end-stretch,.layout-align-gt-xs-space-around-stretch,.layout-align-gt-xs-space-between-stretch,.layout-align-gt-xs-start-stretch{align-items:stretch;align-content:stretch}.flex-gt-xs{flex:1;box-sizing:border-box}.flex-gt-xs-grow{flex:1 1 100%;box-sizing:border-box}.flex-gt-xs-initial{flex:0 1 auto;box-sizing:border-box}.flex-gt-xs-auto{flex:1 1 auto;box-sizing:border-box}.flex-gt-xs-none{flex:0 0 auto;box-sizing:border-box}.flex-gt-xs-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-gt-xs-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-gt-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-gt-xs-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-gt-xs-column>.flex-gt-xs-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-gt-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-gt-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-gt-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-gt-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-gt-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-gt-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-gt-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-gt-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-gt-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-gt-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-gt-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-gt-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-gt-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-gt-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-gt-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-gt-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-gt-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-gt-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-gt-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-gt-xs-row>.flex-gt-xs-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-gt-xs-row>.flex{min-width:0}.layout-gt-xs-column>.flex-gt-xs-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-gt-xs-column>.flex-gt-xs-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-xs-column>.flex{min-height:0}.layout-gt-xs,.layout-gt-xs-column,.layout-gt-xs-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-gt-xs-column{flex-direction:column}.layout-gt-xs-row{flex-direction:row}}@media (min-width:600px) and (max-width:959px){.hide-gt-xs:not(.show-gt-xs):not(.show-sm):not(.show),.hide:not(.show-gt-xs):not(.show-sm):not(.show){display:none}.hide-sm:not(.show-gt-xs):not(.show-sm):not(.show){display:none}.flex-order-sm--20{order:-20}.flex-order-sm--19{order:-19}.flex-order-sm--18{order:-18}.flex-order-sm--17{order:-17}.flex-order-sm--16{order:-16}.flex-order-sm--15{order:-15}.flex-order-sm--14{order:-14}.flex-order-sm--13{order:-13}.flex-order-sm--12{order:-12}.flex-order-sm--11{order:-11}.flex-order-sm--10{order:-10}.flex-order-sm--9{order:-9}.flex-order-sm--8{order:-8}.flex-order-sm--7{order:-7}.flex-order-sm--6{order:-6}.flex-order-sm--5{order:-5}.flex-order-sm--4{order:-4}.flex-order-sm--3{order:-3}.flex-order-sm--2{order:-2}.flex-order-sm--1{order:-1}.flex-order-sm-0{order:0}.flex-order-sm-1{order:1}.flex-order-sm-2{order:2}.flex-order-sm-3{order:3}.flex-order-sm-4{order:4}.flex-order-sm-5{order:5}.flex-order-sm-6{order:6}.flex-order-sm-7{order:7}.flex-order-sm-8{order:8}.flex-order-sm-9{order:9}.flex-order-sm-10{order:10}.flex-order-sm-11{order:11}.flex-order-sm-12{order:12}.flex-order-sm-13{order:13}.flex-order-sm-14{order:14}.flex-order-sm-15{order:15}.flex-order-sm-16{order:16}.flex-order-sm-17{order:17}.flex-order-sm-18{order:18}.flex-order-sm-19{order:19}.flex-order-sm-20{order:20}.flex-offset-sm-0,.offset-sm-0{margin-left:0}[dir=rtl] .flex-offset-sm-0,[dir=rtl] .offset-sm-0{margin-left:auto;margin-right:0}.flex-offset-sm-5,.offset-sm-5{margin-left:5%}[dir=rtl] .flex-offset-sm-5,[dir=rtl] .offset-sm-5{margin-left:auto;margin-right:5%}.flex-offset-sm-10,.offset-sm-10{margin-left:10%}[dir=rtl] .flex-offset-sm-10,[dir=rtl] .offset-sm-10{margin-left:auto;margin-right:10%}.flex-offset-sm-15,.offset-sm-15{margin-left:15%}[dir=rtl] .flex-offset-sm-15,[dir=rtl] .offset-sm-15{margin-left:auto;margin-right:15%}.flex-offset-sm-20,.offset-sm-20{margin-left:20%}[dir=rtl] .flex-offset-sm-20,[dir=rtl] .offset-sm-20{margin-left:auto;margin-right:20%}.flex-offset-sm-25,.offset-sm-25{margin-left:25%}[dir=rtl] .flex-offset-sm-25,[dir=rtl] .offset-sm-25{margin-left:auto;margin-right:25%}.flex-offset-sm-30,.offset-sm-30{margin-left:30%}[dir=rtl] .flex-offset-sm-30,[dir=rtl] .offset-sm-30{margin-left:auto;margin-right:30%}.flex-offset-sm-35,.offset-sm-35{margin-left:35%}[dir=rtl] .flex-offset-sm-35,[dir=rtl] .offset-sm-35{margin-left:auto;margin-right:35%}.flex-offset-sm-40,.offset-sm-40{margin-left:40%}[dir=rtl] .flex-offset-sm-40,[dir=rtl] .offset-sm-40{margin-left:auto;margin-right:40%}.flex-offset-sm-45,.offset-sm-45{margin-left:45%}[dir=rtl] .flex-offset-sm-45,[dir=rtl] .offset-sm-45{margin-left:auto;margin-right:45%}.flex-offset-sm-50,.offset-sm-50{margin-left:50%}[dir=rtl] .flex-offset-sm-50,[dir=rtl] .offset-sm-50{margin-left:auto;margin-right:50%}.flex-offset-sm-55,.offset-sm-55{margin-left:55%}[dir=rtl] .flex-offset-sm-55,[dir=rtl] .offset-sm-55{margin-left:auto;margin-right:55%}.flex-offset-sm-60,.offset-sm-60{margin-left:60%}[dir=rtl] .flex-offset-sm-60,[dir=rtl] .offset-sm-60{margin-left:auto;margin-right:60%}.flex-offset-sm-65,.offset-sm-65{margin-left:65%}[dir=rtl] .flex-offset-sm-65,[dir=rtl] .offset-sm-65{margin-left:auto;margin-right:65%}.flex-offset-sm-70,.offset-sm-70{margin-left:70%}[dir=rtl] .flex-offset-sm-70,[dir=rtl] .offset-sm-70{margin-left:auto;margin-right:70%}.flex-offset-sm-75,.offset-sm-75{margin-left:75%}[dir=rtl] .flex-offset-sm-75,[dir=rtl] .offset-sm-75{margin-left:auto;margin-right:75%}.flex-offset-sm-80,.offset-sm-80{margin-left:80%}[dir=rtl] .flex-offset-sm-80,[dir=rtl] .offset-sm-80{margin-left:auto;margin-right:80%}.flex-offset-sm-85,.offset-sm-85{margin-left:85%}[dir=rtl] .flex-offset-sm-85,[dir=rtl] .offset-sm-85{margin-left:auto;margin-right:85%}.flex-offset-sm-90,.offset-sm-90{margin-left:90%}[dir=rtl] .flex-offset-sm-90,[dir=rtl] .offset-sm-90{margin-left:auto;margin-right:90%}.flex-offset-sm-95,.offset-sm-95{margin-left:95%}[dir=rtl] .flex-offset-sm-95,[dir=rtl] .offset-sm-95{margin-left:auto;margin-right:95%}.flex-offset-sm-33,.offset-sm-33{margin-left:calc(100% / 3)}.flex-offset-sm-66,.offset-sm-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-sm-66,[dir=rtl] .offset-sm-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-sm,.layout-align-sm-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-sm-start,.layout-align-sm-start-center,.layout-align-sm-start-end,.layout-align-sm-start-start,.layout-align-sm-start-stretch{justify-content:flex-start}.layout-align-sm-center,.layout-align-sm-center-center,.layout-align-sm-center-end,.layout-align-sm-center-start,.layout-align-sm-center-stretch{justify-content:center}.layout-align-sm-end,.layout-align-sm-end-center,.layout-align-sm-end-end,.layout-align-sm-end-start,.layout-align-sm-end-stretch{justify-content:flex-end}.layout-align-sm-space-around,.layout-align-sm-space-around-center,.layout-align-sm-space-around-end,.layout-align-sm-space-around-start,.layout-align-sm-space-around-stretch{justify-content:space-around}.layout-align-sm-space-between,.layout-align-sm-space-between-center,.layout-align-sm-space-between-end,.layout-align-sm-space-between-start,.layout-align-sm-space-between-stretch{justify-content:space-between}.layout-align-sm-center-start,.layout-align-sm-end-start,.layout-align-sm-space-around-start,.layout-align-sm-space-between-start,.layout-align-sm-start-start{align-items:flex-start;align-content:flex-start}.layout-align-sm-center-center,.layout-align-sm-end-center,.layout-align-sm-space-around-center,.layout-align-sm-space-between-center,.layout-align-sm-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-sm-center-center>*,.layout-align-sm-end-center>*,.layout-align-sm-space-around-center>*,.layout-align-sm-space-between-center>*,.layout-align-sm-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-sm-center-end,.layout-align-sm-end-end,.layout-align-sm-space-around-end,.layout-align-sm-space-between-end,.layout-align-sm-start-end{align-items:flex-end;align-content:flex-end}.layout-align-sm-center-stretch,.layout-align-sm-end-stretch,.layout-align-sm-space-around-stretch,.layout-align-sm-space-between-stretch,.layout-align-sm-start-stretch{align-items:stretch;align-content:stretch}.flex-sm{flex:1;box-sizing:border-box}.flex-sm-grow{flex:1 1 100%;box-sizing:border-box}.flex-sm-initial{flex:0 1 auto;box-sizing:border-box}.flex-sm-auto{flex:1 1 auto;box-sizing:border-box}.flex-sm-none{flex:0 0 auto;box-sizing:border-box}.flex-sm-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-sm-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-sm-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-sm-column>.flex-sm-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-row>.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-sm-column>.flex-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-sm-row>.flex-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-sm-row>.flex-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-sm-row>.flex{min-width:0}.layout-sm-column>.flex-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-sm-column>.flex-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-sm-column>.flex{min-height:0}.layout-sm,.layout-sm-column,.layout-sm-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-sm-column{flex-direction:column}.layout-sm-row{flex-direction:row}}@media (min-width:960px){.flex-order-gt-sm--20{order:-20}.flex-order-gt-sm--19{order:-19}.flex-order-gt-sm--18{order:-18}.flex-order-gt-sm--17{order:-17}.flex-order-gt-sm--16{order:-16}.flex-order-gt-sm--15{order:-15}.flex-order-gt-sm--14{order:-14}.flex-order-gt-sm--13{order:-13}.flex-order-gt-sm--12{order:-12}.flex-order-gt-sm--11{order:-11}.flex-order-gt-sm--10{order:-10}.flex-order-gt-sm--9{order:-9}.flex-order-gt-sm--8{order:-8}.flex-order-gt-sm--7{order:-7}.flex-order-gt-sm--6{order:-6}.flex-order-gt-sm--5{order:-5}.flex-order-gt-sm--4{order:-4}.flex-order-gt-sm--3{order:-3}.flex-order-gt-sm--2{order:-2}.flex-order-gt-sm--1{order:-1}.flex-order-gt-sm-0{order:0}.flex-order-gt-sm-1{order:1}.flex-order-gt-sm-2{order:2}.flex-order-gt-sm-3{order:3}.flex-order-gt-sm-4{order:4}.flex-order-gt-sm-5{order:5}.flex-order-gt-sm-6{order:6}.flex-order-gt-sm-7{order:7}.flex-order-gt-sm-8{order:8}.flex-order-gt-sm-9{order:9}.flex-order-gt-sm-10{order:10}.flex-order-gt-sm-11{order:11}.flex-order-gt-sm-12{order:12}.flex-order-gt-sm-13{order:13}.flex-order-gt-sm-14{order:14}.flex-order-gt-sm-15{order:15}.flex-order-gt-sm-16{order:16}.flex-order-gt-sm-17{order:17}.flex-order-gt-sm-18{order:18}.flex-order-gt-sm-19{order:19}.flex-order-gt-sm-20{order:20}.flex-offset-gt-sm-0,.offset-gt-sm-0{margin-left:0}[dir=rtl] .flex-offset-gt-sm-0,[dir=rtl] .offset-gt-sm-0{margin-left:auto;margin-right:0}.flex-offset-gt-sm-5,.offset-gt-sm-5{margin-left:5%}[dir=rtl] .flex-offset-gt-sm-5,[dir=rtl] .offset-gt-sm-5{margin-left:auto;margin-right:5%}.flex-offset-gt-sm-10,.offset-gt-sm-10{margin-left:10%}[dir=rtl] .flex-offset-gt-sm-10,[dir=rtl] .offset-gt-sm-10{margin-left:auto;margin-right:10%}.flex-offset-gt-sm-15,.offset-gt-sm-15{margin-left:15%}[dir=rtl] .flex-offset-gt-sm-15,[dir=rtl] .offset-gt-sm-15{margin-left:auto;margin-right:15%}.flex-offset-gt-sm-20,.offset-gt-sm-20{margin-left:20%}[dir=rtl] .flex-offset-gt-sm-20,[dir=rtl] .offset-gt-sm-20{margin-left:auto;margin-right:20%}.flex-offset-gt-sm-25,.offset-gt-sm-25{margin-left:25%}[dir=rtl] .flex-offset-gt-sm-25,[dir=rtl] .offset-gt-sm-25{margin-left:auto;margin-right:25%}.flex-offset-gt-sm-30,.offset-gt-sm-30{margin-left:30%}[dir=rtl] .flex-offset-gt-sm-30,[dir=rtl] .offset-gt-sm-30{margin-left:auto;margin-right:30%}.flex-offset-gt-sm-35,.offset-gt-sm-35{margin-left:35%}[dir=rtl] .flex-offset-gt-sm-35,[dir=rtl] .offset-gt-sm-35{margin-left:auto;margin-right:35%}.flex-offset-gt-sm-40,.offset-gt-sm-40{margin-left:40%}[dir=rtl] .flex-offset-gt-sm-40,[dir=rtl] .offset-gt-sm-40{margin-left:auto;margin-right:40%}.flex-offset-gt-sm-45,.offset-gt-sm-45{margin-left:45%}[dir=rtl] .flex-offset-gt-sm-45,[dir=rtl] .offset-gt-sm-45{margin-left:auto;margin-right:45%}.flex-offset-gt-sm-50,.offset-gt-sm-50{margin-left:50%}[dir=rtl] .flex-offset-gt-sm-50,[dir=rtl] .offset-gt-sm-50{margin-left:auto;margin-right:50%}.flex-offset-gt-sm-55,.offset-gt-sm-55{margin-left:55%}[dir=rtl] .flex-offset-gt-sm-55,[dir=rtl] .offset-gt-sm-55{margin-left:auto;margin-right:55%}.flex-offset-gt-sm-60,.offset-gt-sm-60{margin-left:60%}[dir=rtl] .flex-offset-gt-sm-60,[dir=rtl] .offset-gt-sm-60{margin-left:auto;margin-right:60%}.flex-offset-gt-sm-65,.offset-gt-sm-65{margin-left:65%}[dir=rtl] .flex-offset-gt-sm-65,[dir=rtl] .offset-gt-sm-65{margin-left:auto;margin-right:65%}.flex-offset-gt-sm-70,.offset-gt-sm-70{margin-left:70%}[dir=rtl] .flex-offset-gt-sm-70,[dir=rtl] .offset-gt-sm-70{margin-left:auto;margin-right:70%}.flex-offset-gt-sm-75,.offset-gt-sm-75{margin-left:75%}[dir=rtl] .flex-offset-gt-sm-75,[dir=rtl] .offset-gt-sm-75{margin-left:auto;margin-right:75%}.flex-offset-gt-sm-80,.offset-gt-sm-80{margin-left:80%}[dir=rtl] .flex-offset-gt-sm-80,[dir=rtl] .offset-gt-sm-80{margin-left:auto;margin-right:80%}.flex-offset-gt-sm-85,.offset-gt-sm-85{margin-left:85%}[dir=rtl] .flex-offset-gt-sm-85,[dir=rtl] .offset-gt-sm-85{margin-left:auto;margin-right:85%}.flex-offset-gt-sm-90,.offset-gt-sm-90{margin-left:90%}[dir=rtl] .flex-offset-gt-sm-90,[dir=rtl] .offset-gt-sm-90{margin-left:auto;margin-right:90%}.flex-offset-gt-sm-95,.offset-gt-sm-95{margin-left:95%}[dir=rtl] .flex-offset-gt-sm-95,[dir=rtl] .offset-gt-sm-95{margin-left:auto;margin-right:95%}.flex-offset-gt-sm-33,.offset-gt-sm-33{margin-left:calc(100% / 3)}.flex-offset-gt-sm-66,.offset-gt-sm-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-gt-sm-66,[dir=rtl] .offset-gt-sm-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-gt-sm,.layout-align-gt-sm-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-gt-sm-start,.layout-align-gt-sm-start-center,.layout-align-gt-sm-start-end,.layout-align-gt-sm-start-start,.layout-align-gt-sm-start-stretch{justify-content:flex-start}.layout-align-gt-sm-center,.layout-align-gt-sm-center-center,.layout-align-gt-sm-center-end,.layout-align-gt-sm-center-start,.layout-align-gt-sm-center-stretch{justify-content:center}.layout-align-gt-sm-end,.layout-align-gt-sm-end-center,.layout-align-gt-sm-end-end,.layout-align-gt-sm-end-start,.layout-align-gt-sm-end-stretch{justify-content:flex-end}.layout-align-gt-sm-space-around,.layout-align-gt-sm-space-around-center,.layout-align-gt-sm-space-around-end,.layout-align-gt-sm-space-around-start,.layout-align-gt-sm-space-around-stretch{justify-content:space-around}.layout-align-gt-sm-space-between,.layout-align-gt-sm-space-between-center,.layout-align-gt-sm-space-between-end,.layout-align-gt-sm-space-between-start,.layout-align-gt-sm-space-between-stretch{justify-content:space-between}.layout-align-gt-sm-center-start,.layout-align-gt-sm-end-start,.layout-align-gt-sm-space-around-start,.layout-align-gt-sm-space-between-start,.layout-align-gt-sm-start-start{align-items:flex-start;align-content:flex-start}.layout-align-gt-sm-center-center,.layout-align-gt-sm-end-center,.layout-align-gt-sm-space-around-center,.layout-align-gt-sm-space-between-center,.layout-align-gt-sm-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-gt-sm-center-center>*,.layout-align-gt-sm-end-center>*,.layout-align-gt-sm-space-around-center>*,.layout-align-gt-sm-space-between-center>*,.layout-align-gt-sm-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-gt-sm-center-end,.layout-align-gt-sm-end-end,.layout-align-gt-sm-space-around-end,.layout-align-gt-sm-space-between-end,.layout-align-gt-sm-start-end{align-items:flex-end;align-content:flex-end}.layout-align-gt-sm-center-stretch,.layout-align-gt-sm-end-stretch,.layout-align-gt-sm-space-around-stretch,.layout-align-gt-sm-space-between-stretch,.layout-align-gt-sm-start-stretch{align-items:stretch;align-content:stretch}.flex-gt-sm{flex:1;box-sizing:border-box}.flex-gt-sm-grow{flex:1 1 100%;box-sizing:border-box}.flex-gt-sm-initial{flex:0 1 auto;box-sizing:border-box}.flex-gt-sm-auto{flex:1 1 auto;box-sizing:border-box}.flex-gt-sm-none{flex:0 0 auto;box-sizing:border-box}.flex-gt-sm-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-gt-sm-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-gt-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-gt-sm-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-gt-sm-column>.flex-gt-sm-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-gt-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-gt-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-gt-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-gt-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-gt-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-gt-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-gt-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-gt-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-gt-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-gt-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-gt-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-gt-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-gt-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-gt-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-gt-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-gt-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-gt-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-gt-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-gt-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-gt-sm-row>.flex-gt-sm-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-gt-sm-row>.flex{min-width:0}.layout-gt-sm-column>.flex-gt-sm-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-gt-sm-column>.flex-gt-sm-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-sm-column>.flex{min-height:0}.layout-gt-sm,.layout-gt-sm-column,.layout-gt-sm-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-gt-sm-column{flex-direction:column}.layout-gt-sm-row{flex-direction:row}}@media (min-width:960px) and (max-width:1279px){.hide-gt-sm:not(.show-gt-xs):not(.show-gt-sm):not(.show-md):not(.show),.hide-gt-xs:not(.show-gt-xs):not(.show-gt-sm):not(.show-md):not(.show),.hide:not(.show-gt-xs):not(.show-gt-sm):not(.show-md):not(.show){display:none}.hide-md:not(.show-md):not(.show-gt-sm):not(.show-gt-xs):not(.show){display:none}.flex-order-md--20{order:-20}.flex-order-md--19{order:-19}.flex-order-md--18{order:-18}.flex-order-md--17{order:-17}.flex-order-md--16{order:-16}.flex-order-md--15{order:-15}.flex-order-md--14{order:-14}.flex-order-md--13{order:-13}.flex-order-md--12{order:-12}.flex-order-md--11{order:-11}.flex-order-md--10{order:-10}.flex-order-md--9{order:-9}.flex-order-md--8{order:-8}.flex-order-md--7{order:-7}.flex-order-md--6{order:-6}.flex-order-md--5{order:-5}.flex-order-md--4{order:-4}.flex-order-md--3{order:-3}.flex-order-md--2{order:-2}.flex-order-md--1{order:-1}.flex-order-md-0{order:0}.flex-order-md-1{order:1}.flex-order-md-2{order:2}.flex-order-md-3{order:3}.flex-order-md-4{order:4}.flex-order-md-5{order:5}.flex-order-md-6{order:6}.flex-order-md-7{order:7}.flex-order-md-8{order:8}.flex-order-md-9{order:9}.flex-order-md-10{order:10}.flex-order-md-11{order:11}.flex-order-md-12{order:12}.flex-order-md-13{order:13}.flex-order-md-14{order:14}.flex-order-md-15{order:15}.flex-order-md-16{order:16}.flex-order-md-17{order:17}.flex-order-md-18{order:18}.flex-order-md-19{order:19}.flex-order-md-20{order:20}.flex-offset-md-0,.offset-md-0{margin-left:0}[dir=rtl] .flex-offset-md-0,[dir=rtl] .offset-md-0{margin-left:auto;margin-right:0}.flex-offset-md-5,.offset-md-5{margin-left:5%}[dir=rtl] .flex-offset-md-5,[dir=rtl] .offset-md-5{margin-left:auto;margin-right:5%}.flex-offset-md-10,.offset-md-10{margin-left:10%}[dir=rtl] .flex-offset-md-10,[dir=rtl] .offset-md-10{margin-left:auto;margin-right:10%}.flex-offset-md-15,.offset-md-15{margin-left:15%}[dir=rtl] .flex-offset-md-15,[dir=rtl] .offset-md-15{margin-left:auto;margin-right:15%}.flex-offset-md-20,.offset-md-20{margin-left:20%}[dir=rtl] .flex-offset-md-20,[dir=rtl] .offset-md-20{margin-left:auto;margin-right:20%}.flex-offset-md-25,.offset-md-25{margin-left:25%}[dir=rtl] .flex-offset-md-25,[dir=rtl] .offset-md-25{margin-left:auto;margin-right:25%}.flex-offset-md-30,.offset-md-30{margin-left:30%}[dir=rtl] .flex-offset-md-30,[dir=rtl] .offset-md-30{margin-left:auto;margin-right:30%}.flex-offset-md-35,.offset-md-35{margin-left:35%}[dir=rtl] .flex-offset-md-35,[dir=rtl] .offset-md-35{margin-left:auto;margin-right:35%}.flex-offset-md-40,.offset-md-40{margin-left:40%}[dir=rtl] .flex-offset-md-40,[dir=rtl] .offset-md-40{margin-left:auto;margin-right:40%}.flex-offset-md-45,.offset-md-45{margin-left:45%}[dir=rtl] .flex-offset-md-45,[dir=rtl] .offset-md-45{margin-left:auto;margin-right:45%}.flex-offset-md-50,.offset-md-50{margin-left:50%}[dir=rtl] .flex-offset-md-50,[dir=rtl] .offset-md-50{margin-left:auto;margin-right:50%}.flex-offset-md-55,.offset-md-55{margin-left:55%}[dir=rtl] .flex-offset-md-55,[dir=rtl] .offset-md-55{margin-left:auto;margin-right:55%}.flex-offset-md-60,.offset-md-60{margin-left:60%}[dir=rtl] .flex-offset-md-60,[dir=rtl] .offset-md-60{margin-left:auto;margin-right:60%}.flex-offset-md-65,.offset-md-65{margin-left:65%}[dir=rtl] .flex-offset-md-65,[dir=rtl] .offset-md-65{margin-left:auto;margin-right:65%}.flex-offset-md-70,.offset-md-70{margin-left:70%}[dir=rtl] .flex-offset-md-70,[dir=rtl] .offset-md-70{margin-left:auto;margin-right:70%}.flex-offset-md-75,.offset-md-75{margin-left:75%}[dir=rtl] .flex-offset-md-75,[dir=rtl] .offset-md-75{margin-left:auto;margin-right:75%}.flex-offset-md-80,.offset-md-80{margin-left:80%}[dir=rtl] .flex-offset-md-80,[dir=rtl] .offset-md-80{margin-left:auto;margin-right:80%}.flex-offset-md-85,.offset-md-85{margin-left:85%}[dir=rtl] .flex-offset-md-85,[dir=rtl] .offset-md-85{margin-left:auto;margin-right:85%}.flex-offset-md-90,.offset-md-90{margin-left:90%}[dir=rtl] .flex-offset-md-90,[dir=rtl] .offset-md-90{margin-left:auto;margin-right:90%}.flex-offset-md-95,.offset-md-95{margin-left:95%}[dir=rtl] .flex-offset-md-95,[dir=rtl] .offset-md-95{margin-left:auto;margin-right:95%}.flex-offset-md-33,.offset-md-33{margin-left:calc(100% / 3)}.flex-offset-md-66,.offset-md-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-md-66,[dir=rtl] .offset-md-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-md,.layout-align-md-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-md-start,.layout-align-md-start-center,.layout-align-md-start-end,.layout-align-md-start-start,.layout-align-md-start-stretch{justify-content:flex-start}.layout-align-md-center,.layout-align-md-center-center,.layout-align-md-center-end,.layout-align-md-center-start,.layout-align-md-center-stretch{justify-content:center}.layout-align-md-end,.layout-align-md-end-center,.layout-align-md-end-end,.layout-align-md-end-start,.layout-align-md-end-stretch{justify-content:flex-end}.layout-align-md-space-around,.layout-align-md-space-around-center,.layout-align-md-space-around-end,.layout-align-md-space-around-start,.layout-align-md-space-around-stretch{justify-content:space-around}.layout-align-md-space-between,.layout-align-md-space-between-center,.layout-align-md-space-between-end,.layout-align-md-space-between-start,.layout-align-md-space-between-stretch{justify-content:space-between}.layout-align-md-center-start,.layout-align-md-end-start,.layout-align-md-space-around-start,.layout-align-md-space-between-start,.layout-align-md-start-start{align-items:flex-start;align-content:flex-start}.layout-align-md-center-center,.layout-align-md-end-center,.layout-align-md-space-around-center,.layout-align-md-space-between-center,.layout-align-md-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-md-center-center>*,.layout-align-md-end-center>*,.layout-align-md-space-around-center>*,.layout-align-md-space-between-center>*,.layout-align-md-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-md-center-end,.layout-align-md-end-end,.layout-align-md-space-around-end,.layout-align-md-space-between-end,.layout-align-md-start-end{align-items:flex-end;align-content:flex-end}.layout-align-md-center-stretch,.layout-align-md-end-stretch,.layout-align-md-space-around-stretch,.layout-align-md-space-between-stretch,.layout-align-md-start-stretch{align-items:stretch;align-content:stretch}.flex-md{flex:1;box-sizing:border-box}.flex-md-grow{flex:1 1 100%;box-sizing:border-box}.flex-md-initial{flex:0 1 auto;box-sizing:border-box}.flex-md-auto{flex:1 1 auto;box-sizing:border-box}.flex-md-none{flex:0 0 auto;box-sizing:border-box}.flex-md-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-md-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-md-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-md-column>.flex-md-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-row>.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-md-column>.flex-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-md-row>.flex-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-md-row>.flex-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-md-row>.flex{min-width:0}.layout-md-column>.flex-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-md-column>.flex-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-md-column>.flex{min-height:0}.layout-md,.layout-md-column,.layout-md-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-md-column{flex-direction:column}.layout-md-row{flex-direction:row}}@media (min-width:1280px){.flex-order-gt-md--20{order:-20}.flex-order-gt-md--19{order:-19}.flex-order-gt-md--18{order:-18}.flex-order-gt-md--17{order:-17}.flex-order-gt-md--16{order:-16}.flex-order-gt-md--15{order:-15}.flex-order-gt-md--14{order:-14}.flex-order-gt-md--13{order:-13}.flex-order-gt-md--12{order:-12}.flex-order-gt-md--11{order:-11}.flex-order-gt-md--10{order:-10}.flex-order-gt-md--9{order:-9}.flex-order-gt-md--8{order:-8}.flex-order-gt-md--7{order:-7}.flex-order-gt-md--6{order:-6}.flex-order-gt-md--5{order:-5}.flex-order-gt-md--4{order:-4}.flex-order-gt-md--3{order:-3}.flex-order-gt-md--2{order:-2}.flex-order-gt-md--1{order:-1}.flex-order-gt-md-0{order:0}.flex-order-gt-md-1{order:1}.flex-order-gt-md-2{order:2}.flex-order-gt-md-3{order:3}.flex-order-gt-md-4{order:4}.flex-order-gt-md-5{order:5}.flex-order-gt-md-6{order:6}.flex-order-gt-md-7{order:7}.flex-order-gt-md-8{order:8}.flex-order-gt-md-9{order:9}.flex-order-gt-md-10{order:10}.flex-order-gt-md-11{order:11}.flex-order-gt-md-12{order:12}.flex-order-gt-md-13{order:13}.flex-order-gt-md-14{order:14}.flex-order-gt-md-15{order:15}.flex-order-gt-md-16{order:16}.flex-order-gt-md-17{order:17}.flex-order-gt-md-18{order:18}.flex-order-gt-md-19{order:19}.flex-order-gt-md-20{order:20}.flex-offset-gt-md-0,.offset-gt-md-0{margin-left:0}[dir=rtl] .flex-offset-gt-md-0,[dir=rtl] .offset-gt-md-0{margin-left:auto;margin-right:0}.flex-offset-gt-md-5,.offset-gt-md-5{margin-left:5%}[dir=rtl] .flex-offset-gt-md-5,[dir=rtl] .offset-gt-md-5{margin-left:auto;margin-right:5%}.flex-offset-gt-md-10,.offset-gt-md-10{margin-left:10%}[dir=rtl] .flex-offset-gt-md-10,[dir=rtl] .offset-gt-md-10{margin-left:auto;margin-right:10%}.flex-offset-gt-md-15,.offset-gt-md-15{margin-left:15%}[dir=rtl] .flex-offset-gt-md-15,[dir=rtl] .offset-gt-md-15{margin-left:auto;margin-right:15%}.flex-offset-gt-md-20,.offset-gt-md-20{margin-left:20%}[dir=rtl] .flex-offset-gt-md-20,[dir=rtl] .offset-gt-md-20{margin-left:auto;margin-right:20%}.flex-offset-gt-md-25,.offset-gt-md-25{margin-left:25%}[dir=rtl] .flex-offset-gt-md-25,[dir=rtl] .offset-gt-md-25{margin-left:auto;margin-right:25%}.flex-offset-gt-md-30,.offset-gt-md-30{margin-left:30%}[dir=rtl] .flex-offset-gt-md-30,[dir=rtl] .offset-gt-md-30{margin-left:auto;margin-right:30%}.flex-offset-gt-md-35,.offset-gt-md-35{margin-left:35%}[dir=rtl] .flex-offset-gt-md-35,[dir=rtl] .offset-gt-md-35{margin-left:auto;margin-right:35%}.flex-offset-gt-md-40,.offset-gt-md-40{margin-left:40%}[dir=rtl] .flex-offset-gt-md-40,[dir=rtl] .offset-gt-md-40{margin-left:auto;margin-right:40%}.flex-offset-gt-md-45,.offset-gt-md-45{margin-left:45%}[dir=rtl] .flex-offset-gt-md-45,[dir=rtl] .offset-gt-md-45{margin-left:auto;margin-right:45%}.flex-offset-gt-md-50,.offset-gt-md-50{margin-left:50%}[dir=rtl] .flex-offset-gt-md-50,[dir=rtl] .offset-gt-md-50{margin-left:auto;margin-right:50%}.flex-offset-gt-md-55,.offset-gt-md-55{margin-left:55%}[dir=rtl] .flex-offset-gt-md-55,[dir=rtl] .offset-gt-md-55{margin-left:auto;margin-right:55%}.flex-offset-gt-md-60,.offset-gt-md-60{margin-left:60%}[dir=rtl] .flex-offset-gt-md-60,[dir=rtl] .offset-gt-md-60{margin-left:auto;margin-right:60%}.flex-offset-gt-md-65,.offset-gt-md-65{margin-left:65%}[dir=rtl] .flex-offset-gt-md-65,[dir=rtl] .offset-gt-md-65{margin-left:auto;margin-right:65%}.flex-offset-gt-md-70,.offset-gt-md-70{margin-left:70%}[dir=rtl] .flex-offset-gt-md-70,[dir=rtl] .offset-gt-md-70{margin-left:auto;margin-right:70%}.flex-offset-gt-md-75,.offset-gt-md-75{margin-left:75%}[dir=rtl] .flex-offset-gt-md-75,[dir=rtl] .offset-gt-md-75{margin-left:auto;margin-right:75%}.flex-offset-gt-md-80,.offset-gt-md-80{margin-left:80%}[dir=rtl] .flex-offset-gt-md-80,[dir=rtl] .offset-gt-md-80{margin-left:auto;margin-right:80%}.flex-offset-gt-md-85,.offset-gt-md-85{margin-left:85%}[dir=rtl] .flex-offset-gt-md-85,[dir=rtl] .offset-gt-md-85{margin-left:auto;margin-right:85%}.flex-offset-gt-md-90,.offset-gt-md-90{margin-left:90%}[dir=rtl] .flex-offset-gt-md-90,[dir=rtl] .offset-gt-md-90{margin-left:auto;margin-right:90%}.flex-offset-gt-md-95,.offset-gt-md-95{margin-left:95%}[dir=rtl] .flex-offset-gt-md-95,[dir=rtl] .offset-gt-md-95{margin-left:auto;margin-right:95%}.flex-offset-gt-md-33,.offset-gt-md-33{margin-left:calc(100% / 3)}.flex-offset-gt-md-66,.offset-gt-md-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-gt-md-66,[dir=rtl] .offset-gt-md-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-gt-md,.layout-align-gt-md-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-gt-md-start,.layout-align-gt-md-start-center,.layout-align-gt-md-start-end,.layout-align-gt-md-start-start,.layout-align-gt-md-start-stretch{justify-content:flex-start}.layout-align-gt-md-center,.layout-align-gt-md-center-center,.layout-align-gt-md-center-end,.layout-align-gt-md-center-start,.layout-align-gt-md-center-stretch{justify-content:center}.layout-align-gt-md-end,.layout-align-gt-md-end-center,.layout-align-gt-md-end-end,.layout-align-gt-md-end-start,.layout-align-gt-md-end-stretch{justify-content:flex-end}.layout-align-gt-md-space-around,.layout-align-gt-md-space-around-center,.layout-align-gt-md-space-around-end,.layout-align-gt-md-space-around-start,.layout-align-gt-md-space-around-stretch{justify-content:space-around}.layout-align-gt-md-space-between,.layout-align-gt-md-space-between-center,.layout-align-gt-md-space-between-end,.layout-align-gt-md-space-between-start,.layout-align-gt-md-space-between-stretch{justify-content:space-between}.layout-align-gt-md-center-start,.layout-align-gt-md-end-start,.layout-align-gt-md-space-around-start,.layout-align-gt-md-space-between-start,.layout-align-gt-md-start-start{align-items:flex-start;align-content:flex-start}.layout-align-gt-md-center-center,.layout-align-gt-md-end-center,.layout-align-gt-md-space-around-center,.layout-align-gt-md-space-between-center,.layout-align-gt-md-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-gt-md-center-center>*,.layout-align-gt-md-end-center>*,.layout-align-gt-md-space-around-center>*,.layout-align-gt-md-space-between-center>*,.layout-align-gt-md-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-gt-md-center-end,.layout-align-gt-md-end-end,.layout-align-gt-md-space-around-end,.layout-align-gt-md-space-between-end,.layout-align-gt-md-start-end{align-items:flex-end;align-content:flex-end}.layout-align-gt-md-center-stretch,.layout-align-gt-md-end-stretch,.layout-align-gt-md-space-around-stretch,.layout-align-gt-md-space-between-stretch,.layout-align-gt-md-start-stretch{align-items:stretch;align-content:stretch}.flex-gt-md{flex:1;box-sizing:border-box}.flex-gt-md-grow{flex:1 1 100%;box-sizing:border-box}.flex-gt-md-initial{flex:0 1 auto;box-sizing:border-box}.flex-gt-md-auto{flex:1 1 auto;box-sizing:border-box}.flex-gt-md-none{flex:0 0 auto;box-sizing:border-box}.flex-gt-md-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-gt-md-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-gt-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-gt-md-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-gt-md-column>.flex-gt-md-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-gt-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-gt-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-gt-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-gt-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-gt-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-gt-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-gt-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-gt-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-gt-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-gt-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-gt-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-gt-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-gt-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-gt-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-gt-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-gt-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-gt-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-gt-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-gt-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-gt-md-row>.flex-gt-md-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-gt-md-row>.flex{min-width:0}.layout-gt-md-column>.flex-gt-md-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-gt-md-column>.flex-gt-md-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-md-column>.flex{min-height:0}.layout-gt-md,.layout-gt-md-column,.layout-gt-md-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-gt-md-column{flex-direction:column}.layout-gt-md-row{flex-direction:row}}@media (min-width:1280px) and (max-width:1919px){.hide-gt-md:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-lg):not(.show),.hide-gt-sm:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-lg):not(.show),.hide-gt-xs:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-lg):not(.show),.hide:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-lg):not(.show){display:none}.hide-lg:not(.show-lg):not(.show-gt-md):not(.show-gt-sm):not(.show-gt-xs):not(.show){display:none}.flex-order-lg--20{order:-20}.flex-order-lg--19{order:-19}.flex-order-lg--18{order:-18}.flex-order-lg--17{order:-17}.flex-order-lg--16{order:-16}.flex-order-lg--15{order:-15}.flex-order-lg--14{order:-14}.flex-order-lg--13{order:-13}.flex-order-lg--12{order:-12}.flex-order-lg--11{order:-11}.flex-order-lg--10{order:-10}.flex-order-lg--9{order:-9}.flex-order-lg--8{order:-8}.flex-order-lg--7{order:-7}.flex-order-lg--6{order:-6}.flex-order-lg--5{order:-5}.flex-order-lg--4{order:-4}.flex-order-lg--3{order:-3}.flex-order-lg--2{order:-2}.flex-order-lg--1{order:-1}.flex-order-lg-0{order:0}.flex-order-lg-1{order:1}.flex-order-lg-2{order:2}.flex-order-lg-3{order:3}.flex-order-lg-4{order:4}.flex-order-lg-5{order:5}.flex-order-lg-6{order:6}.flex-order-lg-7{order:7}.flex-order-lg-8{order:8}.flex-order-lg-9{order:9}.flex-order-lg-10{order:10}.flex-order-lg-11{order:11}.flex-order-lg-12{order:12}.flex-order-lg-13{order:13}.flex-order-lg-14{order:14}.flex-order-lg-15{order:15}.flex-order-lg-16{order:16}.flex-order-lg-17{order:17}.flex-order-lg-18{order:18}.flex-order-lg-19{order:19}.flex-order-lg-20{order:20}.flex-offset-lg-0,.offset-lg-0{margin-left:0}[dir=rtl] .flex-offset-lg-0,[dir=rtl] .offset-lg-0{margin-left:auto;margin-right:0}.flex-offset-lg-5,.offset-lg-5{margin-left:5%}[dir=rtl] .flex-offset-lg-5,[dir=rtl] .offset-lg-5{margin-left:auto;margin-right:5%}.flex-offset-lg-10,.offset-lg-10{margin-left:10%}[dir=rtl] .flex-offset-lg-10,[dir=rtl] .offset-lg-10{margin-left:auto;margin-right:10%}.flex-offset-lg-15,.offset-lg-15{margin-left:15%}[dir=rtl] .flex-offset-lg-15,[dir=rtl] .offset-lg-15{margin-left:auto;margin-right:15%}.flex-offset-lg-20,.offset-lg-20{margin-left:20%}[dir=rtl] .flex-offset-lg-20,[dir=rtl] .offset-lg-20{margin-left:auto;margin-right:20%}.flex-offset-lg-25,.offset-lg-25{margin-left:25%}[dir=rtl] .flex-offset-lg-25,[dir=rtl] .offset-lg-25{margin-left:auto;margin-right:25%}.flex-offset-lg-30,.offset-lg-30{margin-left:30%}[dir=rtl] .flex-offset-lg-30,[dir=rtl] .offset-lg-30{margin-left:auto;margin-right:30%}.flex-offset-lg-35,.offset-lg-35{margin-left:35%}[dir=rtl] .flex-offset-lg-35,[dir=rtl] .offset-lg-35{margin-left:auto;margin-right:35%}.flex-offset-lg-40,.offset-lg-40{margin-left:40%}[dir=rtl] .flex-offset-lg-40,[dir=rtl] .offset-lg-40{margin-left:auto;margin-right:40%}.flex-offset-lg-45,.offset-lg-45{margin-left:45%}[dir=rtl] .flex-offset-lg-45,[dir=rtl] .offset-lg-45{margin-left:auto;margin-right:45%}.flex-offset-lg-50,.offset-lg-50{margin-left:50%}[dir=rtl] .flex-offset-lg-50,[dir=rtl] .offset-lg-50{margin-left:auto;margin-right:50%}.flex-offset-lg-55,.offset-lg-55{margin-left:55%}[dir=rtl] .flex-offset-lg-55,[dir=rtl] .offset-lg-55{margin-left:auto;margin-right:55%}.flex-offset-lg-60,.offset-lg-60{margin-left:60%}[dir=rtl] .flex-offset-lg-60,[dir=rtl] .offset-lg-60{margin-left:auto;margin-right:60%}.flex-offset-lg-65,.offset-lg-65{margin-left:65%}[dir=rtl] .flex-offset-lg-65,[dir=rtl] .offset-lg-65{margin-left:auto;margin-right:65%}.flex-offset-lg-70,.offset-lg-70{margin-left:70%}[dir=rtl] .flex-offset-lg-70,[dir=rtl] .offset-lg-70{margin-left:auto;margin-right:70%}.flex-offset-lg-75,.offset-lg-75{margin-left:75%}[dir=rtl] .flex-offset-lg-75,[dir=rtl] .offset-lg-75{margin-left:auto;margin-right:75%}.flex-offset-lg-80,.offset-lg-80{margin-left:80%}[dir=rtl] .flex-offset-lg-80,[dir=rtl] .offset-lg-80{margin-left:auto;margin-right:80%}.flex-offset-lg-85,.offset-lg-85{margin-left:85%}[dir=rtl] .flex-offset-lg-85,[dir=rtl] .offset-lg-85{margin-left:auto;margin-right:85%}.flex-offset-lg-90,.offset-lg-90{margin-left:90%}[dir=rtl] .flex-offset-lg-90,[dir=rtl] .offset-lg-90{margin-left:auto;margin-right:90%}.flex-offset-lg-95,.offset-lg-95{margin-left:95%}[dir=rtl] .flex-offset-lg-95,[dir=rtl] .offset-lg-95{margin-left:auto;margin-right:95%}.flex-offset-lg-33,.offset-lg-33{margin-left:calc(100% / 3)}.flex-offset-lg-66,.offset-lg-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-lg-66,[dir=rtl] .offset-lg-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-lg,.layout-align-lg-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-lg-start,.layout-align-lg-start-center,.layout-align-lg-start-end,.layout-align-lg-start-start,.layout-align-lg-start-stretch{justify-content:flex-start}.layout-align-lg-center,.layout-align-lg-center-center,.layout-align-lg-center-end,.layout-align-lg-center-start,.layout-align-lg-center-stretch{justify-content:center}.layout-align-lg-end,.layout-align-lg-end-center,.layout-align-lg-end-end,.layout-align-lg-end-start,.layout-align-lg-end-stretch{justify-content:flex-end}.layout-align-lg-space-around,.layout-align-lg-space-around-center,.layout-align-lg-space-around-end,.layout-align-lg-space-around-start,.layout-align-lg-space-around-stretch{justify-content:space-around}.layout-align-lg-space-between,.layout-align-lg-space-between-center,.layout-align-lg-space-between-end,.layout-align-lg-space-between-start,.layout-align-lg-space-between-stretch{justify-content:space-between}.layout-align-lg-center-start,.layout-align-lg-end-start,.layout-align-lg-space-around-start,.layout-align-lg-space-between-start,.layout-align-lg-start-start{align-items:flex-start;align-content:flex-start}.layout-align-lg-center-center,.layout-align-lg-end-center,.layout-align-lg-space-around-center,.layout-align-lg-space-between-center,.layout-align-lg-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-lg-center-center>*,.layout-align-lg-end-center>*,.layout-align-lg-space-around-center>*,.layout-align-lg-space-between-center>*,.layout-align-lg-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-lg-center-end,.layout-align-lg-end-end,.layout-align-lg-space-around-end,.layout-align-lg-space-between-end,.layout-align-lg-start-end{align-items:flex-end;align-content:flex-end}.layout-align-lg-center-stretch,.layout-align-lg-end-stretch,.layout-align-lg-space-around-stretch,.layout-align-lg-space-between-stretch,.layout-align-lg-start-stretch{align-items:stretch;align-content:stretch}.flex-lg{flex:1;box-sizing:border-box}.flex-lg-grow{flex:1 1 100%;box-sizing:border-box}.flex-lg-initial{flex:0 1 auto;box-sizing:border-box}.flex-lg-auto{flex:1 1 auto;box-sizing:border-box}.flex-lg-none{flex:0 0 auto;box-sizing:border-box}.flex-lg-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-lg-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-lg-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-lg-column>.flex-lg-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-row>.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-lg-column>.flex-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-lg-row>.flex-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-lg-row>.flex-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-lg-row>.flex{min-width:0}.layout-lg-column>.flex-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-lg-column>.flex-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-lg-column>.flex{min-height:0}.layout-lg,.layout-lg-column,.layout-lg-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-lg-column{flex-direction:column}.layout-lg-row{flex-direction:row}}@media (min-width:1920px){.flex-order-gt-lg--20{order:-20}.flex-order-gt-lg--19{order:-19}.flex-order-gt-lg--18{order:-18}.flex-order-gt-lg--17{order:-17}.flex-order-gt-lg--16{order:-16}.flex-order-gt-lg--15{order:-15}.flex-order-gt-lg--14{order:-14}.flex-order-gt-lg--13{order:-13}.flex-order-gt-lg--12{order:-12}.flex-order-gt-lg--11{order:-11}.flex-order-gt-lg--10{order:-10}.flex-order-gt-lg--9{order:-9}.flex-order-gt-lg--8{order:-8}.flex-order-gt-lg--7{order:-7}.flex-order-gt-lg--6{order:-6}.flex-order-gt-lg--5{order:-5}.flex-order-gt-lg--4{order:-4}.flex-order-gt-lg--3{order:-3}.flex-order-gt-lg--2{order:-2}.flex-order-gt-lg--1{order:-1}.flex-order-gt-lg-0{order:0}.flex-order-gt-lg-1{order:1}.flex-order-gt-lg-2{order:2}.flex-order-gt-lg-3{order:3}.flex-order-gt-lg-4{order:4}.flex-order-gt-lg-5{order:5}.flex-order-gt-lg-6{order:6}.flex-order-gt-lg-7{order:7}.flex-order-gt-lg-8{order:8}.flex-order-gt-lg-9{order:9}.flex-order-gt-lg-10{order:10}.flex-order-gt-lg-11{order:11}.flex-order-gt-lg-12{order:12}.flex-order-gt-lg-13{order:13}.flex-order-gt-lg-14{order:14}.flex-order-gt-lg-15{order:15}.flex-order-gt-lg-16{order:16}.flex-order-gt-lg-17{order:17}.flex-order-gt-lg-18{order:18}.flex-order-gt-lg-19{order:19}.flex-order-gt-lg-20{order:20}.flex-offset-gt-lg-0,.offset-gt-lg-0{margin-left:0}[dir=rtl] .flex-offset-gt-lg-0,[dir=rtl] .offset-gt-lg-0{margin-left:auto;margin-right:0}.flex-offset-gt-lg-5,.offset-gt-lg-5{margin-left:5%}[dir=rtl] .flex-offset-gt-lg-5,[dir=rtl] .offset-gt-lg-5{margin-left:auto;margin-right:5%}.flex-offset-gt-lg-10,.offset-gt-lg-10{margin-left:10%}[dir=rtl] .flex-offset-gt-lg-10,[dir=rtl] .offset-gt-lg-10{margin-left:auto;margin-right:10%}.flex-offset-gt-lg-15,.offset-gt-lg-15{margin-left:15%}[dir=rtl] .flex-offset-gt-lg-15,[dir=rtl] .offset-gt-lg-15{margin-left:auto;margin-right:15%}.flex-offset-gt-lg-20,.offset-gt-lg-20{margin-left:20%}[dir=rtl] .flex-offset-gt-lg-20,[dir=rtl] .offset-gt-lg-20{margin-left:auto;margin-right:20%}.flex-offset-gt-lg-25,.offset-gt-lg-25{margin-left:25%}[dir=rtl] .flex-offset-gt-lg-25,[dir=rtl] .offset-gt-lg-25{margin-left:auto;margin-right:25%}.flex-offset-gt-lg-30,.offset-gt-lg-30{margin-left:30%}[dir=rtl] .flex-offset-gt-lg-30,[dir=rtl] .offset-gt-lg-30{margin-left:auto;margin-right:30%}.flex-offset-gt-lg-35,.offset-gt-lg-35{margin-left:35%}[dir=rtl] .flex-offset-gt-lg-35,[dir=rtl] .offset-gt-lg-35{margin-left:auto;margin-right:35%}.flex-offset-gt-lg-40,.offset-gt-lg-40{margin-left:40%}[dir=rtl] .flex-offset-gt-lg-40,[dir=rtl] .offset-gt-lg-40{margin-left:auto;margin-right:40%}.flex-offset-gt-lg-45,.offset-gt-lg-45{margin-left:45%}[dir=rtl] .flex-offset-gt-lg-45,[dir=rtl] .offset-gt-lg-45{margin-left:auto;margin-right:45%}.flex-offset-gt-lg-50,.offset-gt-lg-50{margin-left:50%}[dir=rtl] .flex-offset-gt-lg-50,[dir=rtl] .offset-gt-lg-50{margin-left:auto;margin-right:50%}.flex-offset-gt-lg-55,.offset-gt-lg-55{margin-left:55%}[dir=rtl] .flex-offset-gt-lg-55,[dir=rtl] .offset-gt-lg-55{margin-left:auto;margin-right:55%}.flex-offset-gt-lg-60,.offset-gt-lg-60{margin-left:60%}[dir=rtl] .flex-offset-gt-lg-60,[dir=rtl] .offset-gt-lg-60{margin-left:auto;margin-right:60%}.flex-offset-gt-lg-65,.offset-gt-lg-65{margin-left:65%}[dir=rtl] .flex-offset-gt-lg-65,[dir=rtl] .offset-gt-lg-65{margin-left:auto;margin-right:65%}.flex-offset-gt-lg-70,.offset-gt-lg-70{margin-left:70%}[dir=rtl] .flex-offset-gt-lg-70,[dir=rtl] .offset-gt-lg-70{margin-left:auto;margin-right:70%}.flex-offset-gt-lg-75,.offset-gt-lg-75{margin-left:75%}[dir=rtl] .flex-offset-gt-lg-75,[dir=rtl] .offset-gt-lg-75{margin-left:auto;margin-right:75%}.flex-offset-gt-lg-80,.offset-gt-lg-80{margin-left:80%}[dir=rtl] .flex-offset-gt-lg-80,[dir=rtl] .offset-gt-lg-80{margin-left:auto;margin-right:80%}.flex-offset-gt-lg-85,.offset-gt-lg-85{margin-left:85%}[dir=rtl] .flex-offset-gt-lg-85,[dir=rtl] .offset-gt-lg-85{margin-left:auto;margin-right:85%}.flex-offset-gt-lg-90,.offset-gt-lg-90{margin-left:90%}[dir=rtl] .flex-offset-gt-lg-90,[dir=rtl] .offset-gt-lg-90{margin-left:auto;margin-right:90%}.flex-offset-gt-lg-95,.offset-gt-lg-95{margin-left:95%}[dir=rtl] .flex-offset-gt-lg-95,[dir=rtl] .offset-gt-lg-95{margin-left:auto;margin-right:95%}.flex-offset-gt-lg-33,.offset-gt-lg-33{margin-left:calc(100% / 3)}.flex-offset-gt-lg-66,.offset-gt-lg-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-gt-lg-66,[dir=rtl] .offset-gt-lg-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-gt-lg,.layout-align-gt-lg-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-gt-lg-start,.layout-align-gt-lg-start-center,.layout-align-gt-lg-start-end,.layout-align-gt-lg-start-start,.layout-align-gt-lg-start-stretch{justify-content:flex-start}.layout-align-gt-lg-center,.layout-align-gt-lg-center-center,.layout-align-gt-lg-center-end,.layout-align-gt-lg-center-start,.layout-align-gt-lg-center-stretch{justify-content:center}.layout-align-gt-lg-end,.layout-align-gt-lg-end-center,.layout-align-gt-lg-end-end,.layout-align-gt-lg-end-start,.layout-align-gt-lg-end-stretch{justify-content:flex-end}.layout-align-gt-lg-space-around,.layout-align-gt-lg-space-around-center,.layout-align-gt-lg-space-around-end,.layout-align-gt-lg-space-around-start,.layout-align-gt-lg-space-around-stretch{justify-content:space-around}.layout-align-gt-lg-space-between,.layout-align-gt-lg-space-between-center,.layout-align-gt-lg-space-between-end,.layout-align-gt-lg-space-between-start,.layout-align-gt-lg-space-between-stretch{justify-content:space-between}.layout-align-gt-lg-center-start,.layout-align-gt-lg-end-start,.layout-align-gt-lg-space-around-start,.layout-align-gt-lg-space-between-start,.layout-align-gt-lg-start-start{align-items:flex-start;align-content:flex-start}.layout-align-gt-lg-center-center,.layout-align-gt-lg-end-center,.layout-align-gt-lg-space-around-center,.layout-align-gt-lg-space-between-center,.layout-align-gt-lg-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-gt-lg-center-center>*,.layout-align-gt-lg-end-center>*,.layout-align-gt-lg-space-around-center>*,.layout-align-gt-lg-space-between-center>*,.layout-align-gt-lg-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-gt-lg-center-end,.layout-align-gt-lg-end-end,.layout-align-gt-lg-space-around-end,.layout-align-gt-lg-space-between-end,.layout-align-gt-lg-start-end{align-items:flex-end;align-content:flex-end}.layout-align-gt-lg-center-stretch,.layout-align-gt-lg-end-stretch,.layout-align-gt-lg-space-around-stretch,.layout-align-gt-lg-space-between-stretch,.layout-align-gt-lg-start-stretch{align-items:stretch;align-content:stretch}.flex-gt-lg{flex:1;box-sizing:border-box}.flex-gt-lg-grow{flex:1 1 100%;box-sizing:border-box}.flex-gt-lg-initial{flex:0 1 auto;box-sizing:border-box}.flex-gt-lg-auto{flex:1 1 auto;box-sizing:border-box}.flex-gt-lg-none{flex:0 0 auto;box-sizing:border-box}.flex-gt-lg-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-gt-lg-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-gt-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-gt-lg-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-gt-lg-column>.flex-gt-lg-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-gt-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-gt-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-gt-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-gt-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-gt-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-gt-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-gt-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-gt-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-gt-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-gt-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-gt-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-gt-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-gt-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-gt-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-gt-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-gt-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-gt-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-gt-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-gt-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-gt-lg-row>.flex-gt-lg-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-gt-lg-row>.flex{min-width:0}.layout-gt-lg-column>.flex-gt-lg-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-gt-lg-column>.flex-gt-lg-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-gt-lg-column>.flex{min-height:0}.layout-gt-lg,.layout-gt-lg-column,.layout-gt-lg-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-gt-lg-column{flex-direction:column}.layout-gt-lg-row{flex-direction:row}.flex-order-xl--20{order:-20}.flex-order-xl--19{order:-19}.flex-order-xl--18{order:-18}.flex-order-xl--17{order:-17}.flex-order-xl--16{order:-16}.flex-order-xl--15{order:-15}.flex-order-xl--14{order:-14}.flex-order-xl--13{order:-13}.flex-order-xl--12{order:-12}.flex-order-xl--11{order:-11}.flex-order-xl--10{order:-10}.flex-order-xl--9{order:-9}.flex-order-xl--8{order:-8}.flex-order-xl--7{order:-7}.flex-order-xl--6{order:-6}.flex-order-xl--5{order:-5}.flex-order-xl--4{order:-4}.flex-order-xl--3{order:-3}.flex-order-xl--2{order:-2}.flex-order-xl--1{order:-1}.flex-order-xl-0{order:0}.flex-order-xl-1{order:1}.flex-order-xl-2{order:2}.flex-order-xl-3{order:3}.flex-order-xl-4{order:4}.flex-order-xl-5{order:5}.flex-order-xl-6{order:6}.flex-order-xl-7{order:7}.flex-order-xl-8{order:8}.flex-order-xl-9{order:9}.flex-order-xl-10{order:10}.flex-order-xl-11{order:11}.flex-order-xl-12{order:12}.flex-order-xl-13{order:13}.flex-order-xl-14{order:14}.flex-order-xl-15{order:15}.flex-order-xl-16{order:16}.flex-order-xl-17{order:17}.flex-order-xl-18{order:18}.flex-order-xl-19{order:19}.flex-order-xl-20{order:20}.flex-offset-xl-0,.offset-xl-0{margin-left:0}[dir=rtl] .flex-offset-xl-0,[dir=rtl] .offset-xl-0{margin-left:auto;margin-right:0}.flex-offset-xl-5,.offset-xl-5{margin-left:5%}[dir=rtl] .flex-offset-xl-5,[dir=rtl] .offset-xl-5{margin-left:auto;margin-right:5%}.flex-offset-xl-10,.offset-xl-10{margin-left:10%}[dir=rtl] .flex-offset-xl-10,[dir=rtl] .offset-xl-10{margin-left:auto;margin-right:10%}.flex-offset-xl-15,.offset-xl-15{margin-left:15%}[dir=rtl] .flex-offset-xl-15,[dir=rtl] .offset-xl-15{margin-left:auto;margin-right:15%}.flex-offset-xl-20,.offset-xl-20{margin-left:20%}[dir=rtl] .flex-offset-xl-20,[dir=rtl] .offset-xl-20{margin-left:auto;margin-right:20%}.flex-offset-xl-25,.offset-xl-25{margin-left:25%}[dir=rtl] .flex-offset-xl-25,[dir=rtl] .offset-xl-25{margin-left:auto;margin-right:25%}.flex-offset-xl-30,.offset-xl-30{margin-left:30%}[dir=rtl] .flex-offset-xl-30,[dir=rtl] .offset-xl-30{margin-left:auto;margin-right:30%}.flex-offset-xl-35,.offset-xl-35{margin-left:35%}[dir=rtl] .flex-offset-xl-35,[dir=rtl] .offset-xl-35{margin-left:auto;margin-right:35%}.flex-offset-xl-40,.offset-xl-40{margin-left:40%}[dir=rtl] .flex-offset-xl-40,[dir=rtl] .offset-xl-40{margin-left:auto;margin-right:40%}.flex-offset-xl-45,.offset-xl-45{margin-left:45%}[dir=rtl] .flex-offset-xl-45,[dir=rtl] .offset-xl-45{margin-left:auto;margin-right:45%}.flex-offset-xl-50,.offset-xl-50{margin-left:50%}[dir=rtl] .flex-offset-xl-50,[dir=rtl] .offset-xl-50{margin-left:auto;margin-right:50%}.flex-offset-xl-55,.offset-xl-55{margin-left:55%}[dir=rtl] .flex-offset-xl-55,[dir=rtl] .offset-xl-55{margin-left:auto;margin-right:55%}.flex-offset-xl-60,.offset-xl-60{margin-left:60%}[dir=rtl] .flex-offset-xl-60,[dir=rtl] .offset-xl-60{margin-left:auto;margin-right:60%}.flex-offset-xl-65,.offset-xl-65{margin-left:65%}[dir=rtl] .flex-offset-xl-65,[dir=rtl] .offset-xl-65{margin-left:auto;margin-right:65%}.flex-offset-xl-70,.offset-xl-70{margin-left:70%}[dir=rtl] .flex-offset-xl-70,[dir=rtl] .offset-xl-70{margin-left:auto;margin-right:70%}.flex-offset-xl-75,.offset-xl-75{margin-left:75%}[dir=rtl] .flex-offset-xl-75,[dir=rtl] .offset-xl-75{margin-left:auto;margin-right:75%}.flex-offset-xl-80,.offset-xl-80{margin-left:80%}[dir=rtl] .flex-offset-xl-80,[dir=rtl] .offset-xl-80{margin-left:auto;margin-right:80%}.flex-offset-xl-85,.offset-xl-85{margin-left:85%}[dir=rtl] .flex-offset-xl-85,[dir=rtl] .offset-xl-85{margin-left:auto;margin-right:85%}.flex-offset-xl-90,.offset-xl-90{margin-left:90%}[dir=rtl] .flex-offset-xl-90,[dir=rtl] .offset-xl-90{margin-left:auto;margin-right:90%}.flex-offset-xl-95,.offset-xl-95{margin-left:95%}[dir=rtl] .flex-offset-xl-95,[dir=rtl] .offset-xl-95{margin-left:auto;margin-right:95%}.flex-offset-xl-33,.offset-xl-33{margin-left:calc(100% / 3)}.flex-offset-xl-66,.offset-xl-66{margin-left:calc(200% / 3)}[dir=rtl] .flex-offset-xl-66,[dir=rtl] .offset-xl-66{margin-left:auto;margin-right:calc(200% / 3)}.layout-align-xl,.layout-align-xl-start-stretch{justify-content:flex-start;align-content:stretch;align-items:stretch}.layout-align-xl-start,.layout-align-xl-start-center,.layout-align-xl-start-end,.layout-align-xl-start-start,.layout-align-xl-start-stretch{justify-content:flex-start}.layout-align-xl-center,.layout-align-xl-center-center,.layout-align-xl-center-end,.layout-align-xl-center-start,.layout-align-xl-center-stretch{justify-content:center}.layout-align-xl-end,.layout-align-xl-end-center,.layout-align-xl-end-end,.layout-align-xl-end-start,.layout-align-xl-end-stretch{justify-content:flex-end}.layout-align-xl-space-around,.layout-align-xl-space-around-center,.layout-align-xl-space-around-end,.layout-align-xl-space-around-start,.layout-align-xl-space-around-stretch{justify-content:space-around}.layout-align-xl-space-between,.layout-align-xl-space-between-center,.layout-align-xl-space-between-end,.layout-align-xl-space-between-start,.layout-align-xl-space-between-stretch{justify-content:space-between}.layout-align-xl-center-start,.layout-align-xl-end-start,.layout-align-xl-space-around-start,.layout-align-xl-space-between-start,.layout-align-xl-start-start{align-items:flex-start;align-content:flex-start}.layout-align-xl-center-center,.layout-align-xl-end-center,.layout-align-xl-space-around-center,.layout-align-xl-space-between-center,.layout-align-xl-start-center{align-items:center;align-content:center;max-width:100%}.layout-align-xl-center-center>*,.layout-align-xl-end-center>*,.layout-align-xl-space-around-center>*,.layout-align-xl-space-between-center>*,.layout-align-xl-start-center>*{max-width:100%;box-sizing:border-box}.layout-align-xl-center-end,.layout-align-xl-end-end,.layout-align-xl-space-around-end,.layout-align-xl-space-between-end,.layout-align-xl-start-end{align-items:flex-end;align-content:flex-end}.layout-align-xl-center-stretch,.layout-align-xl-end-stretch,.layout-align-xl-space-around-stretch,.layout-align-xl-space-between-stretch,.layout-align-xl-start-stretch{align-items:stretch;align-content:stretch}.flex-xl{flex:1;box-sizing:border-box}.flex-xl-grow{flex:1 1 100%;box-sizing:border-box}.flex-xl-initial{flex:0 1 auto;box-sizing:border-box}.flex-xl-auto{flex:1 1 auto;box-sizing:border-box}.flex-xl-none{flex:0 0 auto;box-sizing:border-box}.flex-xl-noshrink{flex:1 0 auto;box-sizing:border-box}.flex-xl-nogrow{flex:0 1 auto;box-sizing:border-box}.flex-xl-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-column>.flex-xl-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-0{flex:1 1 0%;max-width:0;max-height:100%;box-sizing:border-box;min-width:0}.layout-xl-column>.flex-xl-0{flex:1 1 0%;max-width:100%;max-height:0%;box-sizing:border-box;min-height:0}.flex-xl-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-5{flex:1 1 5%;max-width:5%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-5{flex:1 1 5%;max-width:100%;max-height:5%;box-sizing:border-box}.flex-xl-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-10{flex:1 1 10%;max-width:10%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-10{flex:1 1 10%;max-width:100%;max-height:10%;box-sizing:border-box}.flex-xl-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-15{flex:1 1 15%;max-width:15%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-15{flex:1 1 15%;max-width:100%;max-height:15%;box-sizing:border-box}.flex-xl-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-20{flex:1 1 20%;max-width:20%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-20{flex:1 1 20%;max-width:100%;max-height:20%;box-sizing:border-box}.flex-xl-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-25{flex:1 1 25%;max-width:25%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-25{flex:1 1 25%;max-width:100%;max-height:25%;box-sizing:border-box}.flex-xl-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-30{flex:1 1 30%;max-width:30%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-30{flex:1 1 30%;max-width:100%;max-height:30%;box-sizing:border-box}.flex-xl-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-35{flex:1 1 35%;max-width:35%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-35{flex:1 1 35%;max-width:100%;max-height:35%;box-sizing:border-box}.flex-xl-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-40{flex:1 1 40%;max-width:40%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-40{flex:1 1 40%;max-width:100%;max-height:40%;box-sizing:border-box}.flex-xl-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-45{flex:1 1 45%;max-width:45%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-45{flex:1 1 45%;max-width:100%;max-height:45%;box-sizing:border-box}.flex-xl-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-50{flex:1 1 50%;max-width:50%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-50{flex:1 1 50%;max-width:100%;max-height:50%;box-sizing:border-box}.flex-xl-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-55{flex:1 1 55%;max-width:55%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-55{flex:1 1 55%;max-width:100%;max-height:55%;box-sizing:border-box}.flex-xl-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-60{flex:1 1 60%;max-width:60%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-60{flex:1 1 60%;max-width:100%;max-height:60%;box-sizing:border-box}.flex-xl-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-65{flex:1 1 65%;max-width:65%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-65{flex:1 1 65%;max-width:100%;max-height:65%;box-sizing:border-box}.flex-xl-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-70{flex:1 1 70%;max-width:70%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-70{flex:1 1 70%;max-width:100%;max-height:70%;box-sizing:border-box}.flex-xl-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-75{flex:1 1 75%;max-width:75%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-75{flex:1 1 75%;max-width:100%;max-height:75%;box-sizing:border-box}.flex-xl-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-80{flex:1 1 80%;max-width:80%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-80{flex:1 1 80%;max-width:100%;max-height:80%;box-sizing:border-box}.flex-xl-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-85{flex:1 1 85%;max-width:85%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-85{flex:1 1 85%;max-width:100%;max-height:85%;box-sizing:border-box}.flex-xl-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-90{flex:1 1 90%;max-width:90%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-90{flex:1 1 90%;max-width:100%;max-height:90%;box-sizing:border-box}.flex-xl-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-95{flex:1 1 95%;max-width:95%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-95{flex:1 1 95%;max-width:100%;max-height:95%;box-sizing:border-box}.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-row>.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-xl-column>.flex-xl-100{flex:1 1 100%;max-width:100%;max-height:100%;box-sizing:border-box}.layout-xl-row>.flex-xl-33{flex:1 1 33.33%;max-width:33.33%;max-height:100%;box-sizing:border-box}.layout-xl-row>.flex-xl-66{flex:1 1 66.66%;max-width:66.66%;max-height:100%;box-sizing:border-box}.layout-xl-row>.flex{min-width:0}.layout-xl-column>.flex-xl-33{flex:1 1 33.33%;max-width:100%;max-height:33.33%;box-sizing:border-box}.layout-xl-column>.flex-xl-66{flex:1 1 66.66%;max-width:100%;max-height:66.66%;box-sizing:border-box}.layout-xl-column>.flex{min-height:0}.layout-xl,.layout-xl-column,.layout-xl-row{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex}.layout-xl-column{flex-direction:column}.layout-xl-row{flex-direction:row}.hide-gt-lg:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show),.hide-gt-md:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show),.hide-gt-sm:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show),.hide-gt-xs:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show),.hide:not(.show-gt-xs):not(.show-gt-sm):not(.show-gt-md):not(.show-gt-lg):not(.show-xl):not(.show){display:none}.hide-xl:not(.show-xl):not(.show-gt-lg):not(.show-gt-md):not(.show-gt-sm):not(.show-gt-xs):not(.show){display:none}}@media print{.hide-print:not(.show-print):not(.show){display:none!important}}*{text-rendering:optimizeLegibility;-o-text-rendering:optimizeLegibility;-ms-text-rendering:optimizeLegibility;-moz-text-rendering:optimizeLegibility;-webkit-text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent;box-sizing:border-box}:after,:before{box-sizing:border-box}:focus{outline:0}:not(md-input-container)>button,:not(md-input-container)>input[type=button],:not(md-input-container)>input[type=email],:not(md-input-container)>input[type=image],:not(md-input-container)>input[type=password],:not(md-input-container)>input[type=search],:not(md-input-container)>input[type=submit],:not(md-input-container)>input[type=tel],:not(md-input-container)>input[type=text],:not(md-input-container)>textarea{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;appearance:none;-moz-appearance:none;-webkit-appearance:none;border:none;padding:0;margin:0}:not(md-input-container)>button,:not(md-input-container)>input[type=button],:not(md-input-container)>input[type=submit]{background:0 0}button{border-radius:0;font-family:inherit;font-size:inherit;padding:0;margin:0;appearance:none;-moz-appearance:none;-webkit-appearance:none}[layout]>*{min-height:auto;min-height:initial}md-card>:not(md-card-content) img,md-card>img{height:inherit;height:initial}.md-datepicker-calendar-pane *{box-sizing:initial}md-autocomplete-wrap>input[type=search]{background:#fff;padding:0 15px!important}md-backdrop.md-opaque{background-color:rgba(33,33,33,.48)!important}md-card md-card-header md-card-avatar md-icon{width:40px;height:40px}md-checkbox.no-label{margin:0}md-chip .md-chip-remove md-icon{margin-left:2px}md-chip .md-chip-remove md-icon svg{width:18px;height:18px;max-width:18px;max-height:18px;margin:4px}md-datepicker .md-datepicker-button{padding:0!important;margin:0!important;vertical-align:middle}md-datepicker .md-datepicker-input-container{margin-left:0}.md-inline-form md-datepicker{margin-top:14px}md-dialog md-dialog-content{padding:32px 24px 24px 24px}md-dialog md-dialog-actions{min-height:64px;padding-top:8px;padding-bottom:8px}md-dialog md-dialog-actions .md-button{margin:0 8px}md-input-container.no-errors-spacer .md-errors-spacer{display:none}md-input-container .input-hint{position:absolute;right:auto;bottom:7px;left:2px;font-size:12px;line-height:14px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:rgba(0,0,0,.54)}md-input-container.md-icon-left .input-hint{left:38px}md-list-item .md-list-item-text p{font-size:13px!important}.md-menu,md-menu{padding:0}md-menu-content.md-menu-bar-menu.md-dense{padding:8px 0}md-menu-content.md-menu-bar-menu.md-dense .md-button,md-menu-content.md-menu-bar-menu.md-dense md-menu-item{height:40px;line-height:40px}md-menu-content.md-menu-bar-menu.md-dense .md-button.md-indent>md-icon,md-menu-content.md-menu-bar-menu.md-dense md-menu-item.md-indent>md-icon{top:8px}.md-open-menu-container md-menu-content md-menu-item.selected{opacity:.4}md-menu-content md-menu-item .md-button{text-align:left}md-select.simplified{margin:0 8px}md-select.simplified .md-select-value{border:none!important;box-sizing:border-box;padding:0}md-select.simplified .md-select-value :first-child{transform:none;height:auto}md-select.simplified .md-select-value .md-select-icon{transform:none;font-size:16px}md-select.simplified .md-select-value .md-select-icon:after{top:1px}md-select[multiple] md-select-value>:first-child{display:flex}md-select[multiple] md-select-value>:first-child>:first-child{flex:0}md-select[multiple] md-select-value>:first-child .md-container{padding-right:6px}md-select[multiple] md-select-value>:first-child .md-container:first-of-type{padding-right:0}md-select-menu md-select-header{position:relative;display:flex;align-items:center;width:auto;height:48px;padding-left:10.667px;box-shadow:0 1px 0 0 rgba(0,0,0,.1),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);cursor:pointer}md-select-menu md-select-header input[type=search]{border:none;outline:0;height:100%;width:100%;padding:0}md-sidenav{-webkit-overflow-scrolling:touch}md-toolbar.colored-toolbar{color:rgba(255,255,255,.87)}md-toolbar.colored-toolbar md-menu-bar md-menu._md-open>button{background:rgba(0,0,0,.12)}md-toolbar.colored-toolbar md-menu._md-open>button{background:rgba(0,0,0,.12)}md-toolbar.colored-toolbar input{color:rgba(255,255,255,.87)!important}md-progress-circular[disabled]{visibility:hidden}body,html{overflow:hidden!important}#main{position:absolute;top:0;right:0;bottom:0;left:0}body.boxed{background:#3f4450}body.boxed #main{overflow:hidden!important;width:100%;max-width:1280px;margin:0 auto;box-shadow:0 0 12px rgba(0,0,0,.45)}#layout-content-only{position:relative;height:100%;max-height:100%}#layout-content-only #content{position:absolute;top:0;right:0;bottom:0;left:0}#layout-content-with-toolbar{position:relative;height:100%;max-height:100%}#layout-content-with-toolbar #content{position:absolute;top:64px;right:0;bottom:0;left:0}#layout-vertical-navigation{height:100%;max-height:100%}#layout-vertical-navigation #content-container{position:relative;overflow:hidden}#layout-vertical-navigation #content-container #content{position:absolute;top:64px;right:0;bottom:0;left:0}#layout-vertical-navigation-fullwidth-toolbar{height:100%;max-height:100%}#layout-vertical-navigation-fullwidth-toolbar #main-container{position:relative}#layout-vertical-navigation-fullwidth-toolbar #main-container #content-container{position:relative;overflow:hidden}#layout-vertical-navigation-fullwidth-toolbar #main-container #content-container #content{position:absolute;top:0;right:0;bottom:0;left:0}#layout-vertical-navigation-fullwidth-toolbar-2{height:100%;max-height:100%}#layout-vertical-navigation-fullwidth-toolbar-2 #main-container{position:relative}#layout-vertical-navigation-fullwidth-toolbar-2 #main-container #content-container{position:relative;overflow:hidden}#layout-vertical-navigation-fullwidth-toolbar-2 #main-container #content-container #content{position:absolute;top:0;right:0;bottom:0;left:0}#layout-horizontal-navigation{height:100%;max-height:100%}#layout-horizontal-navigation #content-container{position:relative;overflow:hidden}#layout-horizontal-navigation #content-container #content{position:absolute;top:0;right:0;bottom:0;left:0}.page-layout{position:relative;overflow:hidden}.page-layout .top-bg{position:absolute;z-index:1;top:0;right:0;left:0;height:200px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout md-backdrop{z-index:50}.page-layout>.header .breadcrumb{margin-bottom:16px;font-weight:500;color:rgba(0,0,0,.54)}.page-layout>.header .breadcrumb md-icon{margin:0}.page-layout>.header .breadcrumb .separator{margin:0 8px}.page-layout>.header .title{font-size:34px}.page-layout.carded{min-height:100%;height:100%}.page-layout.carded.fullwidth.single-scroll{height:auto}.page-layout.carded.fullwidth.single-scroll>.center .content-card .content{overflow:hidden}.page-layout.carded.fullwidth>.center{position:relative;z-index:2;margin-left:32px;margin-right:32px}.page-layout.carded.fullwidth>.center .header{height:136px;min-height:136px;max-height:136px;padding:24px}.page-layout.carded.fullwidth>.center .content-card{background:#fff;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);overflow:hidden}.page-layout.carded.fullwidth>.center .content-card .toolbar{padding:8px 24px;height:64px;min-height:64px;max-height:64px;border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.fullwidth>.center .content-card .content{padding:24px;background:#fff}.page-layout.carded.left-sidenav.single-scroll{height:auto}.page-layout.carded.left-sidenav.single-scroll>.center .content-card .content{overflow:hidden}.page-layout.carded.left-sidenav>.sidenav{width:240px;min-width:240px;max-width:240px;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);z-index:51}.page-layout.carded.left-sidenav>.sidenav .header{height:200px;min-height:200px;max-height:200px;padding:24px}.page-layout.carded.left-sidenav>.sidenav .content{background:0 0;padding:24px}.page-layout.carded.left-sidenav>.sidenav.md-locked-open{width:220px;min-width:220px;max-width:220px;z-index:2;background:0 0;box-shadow:none}.page-layout.carded.left-sidenav>.sidenav.md-locked-open+.center{margin-left:0}.page-layout.carded.left-sidenav>.sidenav:not(.md-locked-open) .header{border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.left-sidenav>.sidenav:not(.md-locked-open) .content{overflow:hidden}.page-layout.carded.left-sidenav>.center{position:relative;z-index:2;margin-left:32px;margin-right:32px}.page-layout.carded.left-sidenav>.center .header{height:136px;min-height:136px;max-height:136px;padding:24px}.page-layout.carded.left-sidenav>.center .content-card{background:#fff;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);overflow:hidden}.page-layout.carded.left-sidenav>.center .content-card .toolbar{padding:8px 24px;height:64px;min-height:64px;max-height:64px;border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.left-sidenav>.center .content-card .toolbar .sidenav-toggle{margin:0 8px 0 0!important;padding:0!important;border-radius:0}.page-layout.carded.left-sidenav>.center .content-card .content{padding:24px;background:#fff}.page-layout.carded.right-sidenav.single-scroll{height:auto}.page-layout.carded.right-sidenav.single-scroll>.center .content-card .content{overflow:hidden}.page-layout.carded.right-sidenav>.sidenav{width:240px;min-width:240px;max-width:240px;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);z-index:51}.page-layout.carded.right-sidenav>.sidenav .header{height:200px;min-height:200px;max-height:200px;padding:24px 24px 24px 0}.page-layout.carded.right-sidenav>.sidenav .content{background:0 0;padding:24px 24px 24px 0}.page-layout.carded.right-sidenav>.sidenav.md-locked-open{width:196px;min-width:196px;max-width:196px;z-index:2;background:0 0;box-shadow:none}.page-layout.carded.right-sidenav>.sidenav:not(.md-locked-open) .header{padding:24px;border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.right-sidenav>.sidenav:not(.md-locked-open) .content{overflow:hidden;padding:24px}.page-layout.carded.right-sidenav>.center{position:relative;z-index:2;margin-left:32px;margin-right:32px}.page-layout.carded.right-sidenav>.center .header{height:136px;min-height:136px;max-height:136px;padding:24px}.page-layout.carded.right-sidenav>.center .content-card{background:#fff;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);overflow:hidden}.page-layout.carded.right-sidenav>.center .content-card .toolbar{padding:8px 24px;height:64px;min-height:64px;max-height:64px;border-bottom:1px solid rgba(0,0,0,.12)}.page-layout.carded.right-sidenav>.center .content-card .toolbar .sidenav-toggle{margin:0 0 0 8px!important;padding:0!important;border-radius:0}.page-layout.carded.right-sidenav>.center .content-card .content{padding:24px;background:#fff}.page-layout.simple.fullwidth,.page-layout.simple.inner-sidenav{min-height:100%}.page-layout.simple.fullwidth>.header,.page-layout.simple.inner-sidenav>.header{height:200px;min-height:200px;max-height:200px;padding:24px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout.simple.fullwidth>.content,.page-layout.simple.inner-sidenav>.content{padding:24px}.page-layout.simple.left-sidenav{min-height:100%;height:100%}.page-layout.simple.left-sidenav.single-scroll{height:auto}.page-layout.simple.left-sidenav.single-scroll>.center{overflow:hidden}.page-layout.simple.left-sidenav.inner-sidenav>.content>md-sidenav{margin-right:24px}.page-layout.simple.left-sidenav .sidenav{width:240px;min-width:240px;max-width:240px;padding:24px;z-index:51;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.page-layout.simple.left-sidenav .sidenav.md-locked-open{width:220px;min-width:220px;max-width:220px;z-index:2;box-shadow:none;background:0 0}.page-layout.simple.left-sidenav>.center{position:relative;overflow:auto;z-index:3;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.page-layout.simple.left-sidenav>.center .header{height:200px;min-height:200px;max-height:200px;padding:24px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout.simple.left-sidenav>.center .content{padding:24px;background:#fff}.page-layout.simple.right-sidenav{min-height:100%;height:100%}.page-layout.simple.right-sidenav.single-scroll{height:auto}.page-layout.simple.right-sidenav.single-scroll>.center{overflow:hidden}.page-layout.simple.right-sidenav.inner-sidenav>.content>md-sidenav{margin-left:24px}.page-layout.simple.right-sidenav .sidenav{width:240px;min-width:240px;max-width:240px;padding:24px;z-index:51;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.page-layout.simple.right-sidenav .sidenav.md-locked-open{width:220px;min-width:220px;max-width:220px;z-index:2;box-shadow:none;background:0 0}.page-layout.simple.right-sidenav>.center{position:relative;overflow:auto;z-index:3;box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.page-layout.simple.right-sidenav>.center .header{height:200px;min-height:200px;max-height:200px;padding:24px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout.simple.right-sidenav>.center .content{padding:24px;background:#fff}.page-layout.simple.inner-sidenav{height:auto}.page-layout.simple.inner-sidenav>.content>md-sidenav.md-locked-open{padding:0}.page-layout.simple.tabbed{min-height:100%}.page-layout.simple.tabbed>.header{height:200px;min-height:200px;max-height:200px;padding:24px;background-image:url(/assets/images/backgrounds/header-bg.png);background-size:cover}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-wrapper{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);padding:0 24px}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-wrapper md-tabs-canvas{height:56px}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-wrapper md-tabs-canvas md-pagination-wrapper{height:56px}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-wrapper md-tabs-canvas .md-tab{padding:16px 24px;text-transform:none}.page-layout.simple.tabbed>.content>md-tabs:not(.md-dynamic-height) md-tabs-content-wrapper{top:56px}.page-layout.simple.tabbed>.content>md-tabs>md-tabs-content-wrapper>md-tab-content{padding:24px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);border:none;height:56px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar nav{margin:0 12px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar nav .md-nav-item{height:56px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar nav .md-nav-item ._md-nav-button{height:56px;line-height:32px}.page-layout.simple.tabbed>.content>md-nav-bar .md-nav-bar nav .md-nav-item ._md-nav-button-text{text-transform:none}.page-layout.blank{min-height:100%;padding:24px}.single-scroll .carded.fullwidth{height:auto}.single-scroll .carded.fullwidth>.center .content-card .content{overflow:hidden}.single-scroll .carded.left-sidenav{height:auto}.single-scroll .carded.left-sidenav>.center .content-card .content{overflow:hidden}.single-scroll .carded.right-sidenav{height:auto}.single-scroll .carded.right-sidenav>.center .content-card .content{overflow:hidden}.single-scroll .simple.left-sidenav{height:auto}.single-scroll .simple.left-sidenav>.center{overflow:hidden}.single-scroll .simple.right-sidenav{height:auto}.single-scroll .simple.right-sidenav>.center{overflow:hidden}@media screen and (max-width:1280px){.page-layout.simple.inner-sidenav.left-sidenav>.content,.page-layout.simple.inner-sidenav.right-sidenav>.content{height:auto!important}.page-layout.simple.inner-sidenav.left-sidenav>.content>md-sidenav,.page-layout.simple.inner-sidenav.right-sidenav>.content>md-sidenav{margin-left:0;margin-right:0}.sidenav-open .page-layout.simple.inner-sidenav{height:100%}}@media screen and (max-width:600px){.page-layout .top-bg{height:160px}.page-layout.carded.fullwidth>.center,.page-layout.carded.left-sidenav>.center,.page-layout.carded.right-sidenav>.center{margin-left:16px;margin-right:16px}.page-layout.carded.fullwidth>.center .header,.page-layout.carded.left-sidenav>.center .header,.page-layout.carded.right-sidenav>.center .header{height:96px;min-height:96px;max-height:96px;padding:16px}.page-layout.carded.fullwidth{height:auto}.page-layout.carded.fullwidth>.center .content-card .content{overflow:hidden}.page-layout.carded.left-sidenav,.page-layout.carded.right-sidenav{height:auto}.page-layout.carded.left-sidenav>.center .content-card .content,.page-layout.carded.right-sidenav>.center .content-card .content{overflow:hidden}.page-layout.simple.fullwidth>.header,.page-layout.simple.inner-sidenav>.header{height:160px;min-height:160px;max-height:160px;padding:16px}.page-layout.simple.left-sidenav>.center .header,.page-layout.simple.right-sidenav>.center .header{height:160px;min-height:160px;max-height:160px;padding:16px}.page-layout.simple.left-sidenav,.page-layout.simple.right-sidenav{height:auto}.page-layout.simple.left-sidenav>.center,.page-layout.simple.right-sidenav>.center{overflow:hidden}}.animate-slide-up{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-slide-up.ng-enter{transform:translateY(100%);opacity:0}.animate-slide-up.ng-enter.ng-enter-active{transition-property:all;transform:translateY(0);opacity:1}.animate-slide-up.ng-leave{transform:translateY(0);opacity:1}.animate-slide-up.ng-leave.ng-leave-active{transition-property:all;transform:translateY(-100%);opacity:0}.animate-slide-up.ng-hide{transform:translateY(-100%);opacity:0}.animate-slide-up.ng-hide-add-active,.animate-slide-up.ng-hide-remove-active{transition-property:all}.animate-slide-down{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-slide-down.ng-enter{transform:translateY(-100%);opacity:0}.animate-slide-down.ng-enter.ng-enter-active{transition-property:all;transform:translateY(0);opacity:1}.animate-slide-down.ng-leave{transform:translateY(0);opacity:1}.animate-slide-down.ng-leave.ng-leave-active{transition-property:all;transform:translateY(100%);opacity:0}.animate-slide-down.ng-hide{transform:translateY(-100%);opacity:0}.animate-slide-down.ng-hide-add-active,.animate-slide-down.ng-hide-remove-active{transition-property:all}.animate-slide-left{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-slide-left.ng-enter{transform:translateX(100%);opacity:0}.animate-slide-left.ng-enter.ng-enter-active{transition-property:all;transform:translateX(0);opacity:1}.animate-slide-left.ng-leave{transform:translateX(0);opacity:1}.animate-slide-left.ng-leave.ng-leave-active{transition-property:all;transform:translateX(-100%);opacity:0}.animate-slide-left.ng-hide{transform:translateX(-100%);opacity:0}.animate-slide-left.ng-hide-add-active,.animate-slide-left.ng-hide-remove-active{transition-property:all}.animate-slide-right{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-slide-right.ng-enter{transform:translateX(-100%);opacity:0}.animate-slide-right.ng-enter.ng-enter-active{transition-property:all;transform:translateX(0);opacity:1}.animate-slide-right.ng-leave{transform:translateX(0);opacity:1}.animate-slide-right.ng-leave.ng-leave-active{transition-property:all;transform:translateX(100%);opacity:0}.animate-slide-right.ng-hide{transform:translateX(100%);opacity:0}.animate-slide-right.ng-hide-add-active,.animate-slide-right.ng-hide-remove-active{transition-property:all}.animate-fade-in-out{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;transition-property:none;transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.46,.45,.94);opacity:1}.animate-fade-in-out.ng-enter{opacity:0}.animate-fade-in-out.ng-enter.ng-enter-active{transition-property:all;opacity:1}.animate-fade-in-out.ng-leave{opacity:1}.animate-fade-in-out.ng-leave.ng-leave-active{transition-property:all;opacity:0}.animate-fade-in-out.ng-hide{opacity:0}.animate-fade-in-out.ng-hide-add-active,.animate-fade-in-out.ng-hide-remove-active{transition-property:all}@keyframes slide-in-left{0%{opacity:0;transform:translateX(-500px)}65%{opacity:1;transform:translateX(0)}100%{transform:translateX(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translateX(500px)}65%{opacity:1;transform:translateX(0)}100%{transform:translateX(0)}}@keyframes slide-in-bottom{0%{opacity:0;transform:translateY(200px)}65%{opacity:1;transform:translateY(0)}100%{transform:translateY(0)}}.animate-rotate{animation:rotate 1.75s linear infinite}@keyframes rotate{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.black-fg,.black-text{color:rgba(0,0,0,.87)!important}.black-fg .icon,.black-fg .secondary-text,.black-fg.icon,.black-fg.secondary-text,.black-text .icon,.black-text .secondary-text,.black-text.icon,.black-text.secondary-text{color:rgba(0,0,0,.54)!important}.black-fg .disabled-text,.black-fg .hint-text,.black-fg.disabled-text,.black-fg.hint-text,.black-text .disabled-text,.black-text .hint-text,.black-text.disabled-text,.black-text.hint-text{color:rgba(0,0,0,.26)!important}.black-fg .divider,.black-fg .faint-text,.black-fg.divider,.black-fg.faint-text,.black-text .divider,.black-text .faint-text,.black-text.divider,.black-text.faint-text{color:rgba(0,0,0,.12)!important}.white-fg,.white-text{color:#fff!important}.white-fg .icon,.white-fg .secondary-text,.white-fg.icon,.white-fg.secondary-text,.white-text .icon,.white-text .secondary-text,.white-text.icon,.white-text.secondary-text{color:rgba(255,255,255,.7)!important}.white-fg .disabled-text,.white-fg .hint-text,.white-fg.disabled-text,.white-fg.hint-text,.white-text .disabled-text,.white-text .hint-text,.white-text.disabled-text,.white-text.hint-text{color:rgba(255,255,255,.3)!important}.white-fg .divider,.white-fg .faint-text,.white-fg.divider,.white-fg.faint-text,.white-text .divider,.white-text .faint-text,.white-text.divider,.white-text.faint-text{color:rgba(255,255,255,.12)!important}.white-fg md-icon,.white-text md-icon{color:#fff}.white-fg md-progress-linear .md-container,.white-text md-progress-linear .md-container{background:rgba(255,255,255,.3)}.white-fg md-progress-linear .md-bar,.white-text md-progress-linear .md-bar{background:rgba(255,255,255,.7)}.red-50-bg{background-color:#ffebee!important}.md-red-50-bg{background-color:#ffebee!important;color:rgba(0,0,0,.87)}.red-50-fg{color:#ffebee!important}.red-50-border{border-color:#ffebee!important}.red-50-border-top{border-top-color:#ffebee!important}.red-50-border-right{border-right-color:#ffebee!important}.red-50-border-bottom{border-bottom-color:#ffebee!important}.red-50-border-left{border-left-color:#ffebee!important}.red-100-bg{background-color:#ffcdd2!important}.md-red-100-bg{background-color:#ffcdd2!important;color:rgba(0,0,0,.87)}.red-100-fg{color:#ffcdd2!important}.red-100-border{border-color:#ffcdd2!important}.red-100-border-top{border-top-color:#ffcdd2!important}.red-100-border-right{border-right-color:#ffcdd2!important}.red-100-border-bottom{border-bottom-color:#ffcdd2!important}.red-100-border-left{border-left-color:#ffcdd2!important}.red-200-bg{background-color:#ef9a9a!important}.md-red-200-bg{background-color:#ef9a9a!important;color:rgba(0,0,0,.87)}.red-200-fg{color:#ef9a9a!important}.red-200-border{border-color:#ef9a9a!important}.red-200-border-top{border-top-color:#ef9a9a!important}.red-200-border-right{border-right-color:#ef9a9a!important}.red-200-border-bottom{border-bottom-color:#ef9a9a!important}.red-200-border-left{border-left-color:#ef9a9a!important}.red-300-bg{background-color:#e57373!important}.md-red-300-bg{background-color:#e57373!important;color:rgba(0,0,0,.87)}.red-300-fg{color:#e57373!important}.red-300-border{border-color:#e57373!important}.red-300-border-top{border-top-color:#e57373!important}.red-300-border-right{border-right-color:#e57373!important}.red-300-border-bottom{border-bottom-color:#e57373!important}.red-300-border-left{border-left-color:#e57373!important}.red-400-bg{background-color:#ef5350!important}.md-red-400-bg{background-color:#ef5350!important;color:#fff}.red-400-fg{color:#ef5350!important}.red-400-border{border-color:#ef5350!important}.red-400-border-top{border-top-color:#ef5350!important}.red-400-border-right{border-right-color:#ef5350!important}.red-400-border-bottom{border-bottom-color:#ef5350!important}.red-400-border-left{border-left-color:#ef5350!important}.red-500-bg{background-color:#f44336!important}.md-red-500-bg{background-color:#f44336!important;color:#fff}.red-500-fg{color:#f44336!important}.red-500-border{border-color:#f44336!important}.red-500-border-top{border-top-color:#f44336!important}.red-500-border-right{border-right-color:#f44336!important}.red-500-border-bottom{border-bottom-color:#f44336!important}.red-500-border-left{border-left-color:#f44336!important}.md-red-bg{background-color:#f44336!important;color:#fff}.red-bg{background-color:#f44336!important}.red-fg{color:#f44336!important}.red-border{border-color:#f44336!important}.red-border-top{border-top-color:#f44336!important}.red-border-right{border-right-color:#f44336!important}.red-border-bottom{border-bottom-color:#f44336!important}.red-border-left{border-left-color:#f44336!important}.red-600-bg{background-color:#e53935!important}.md-red-600-bg{background-color:#e53935!important;color:#fff}.red-600-fg{color:#e53935!important}.red-600-border{border-color:#e53935!important}.red-600-border-top{border-top-color:#e53935!important}.red-600-border-right{border-right-color:#e53935!important}.red-600-border-bottom{border-bottom-color:#e53935!important}.red-600-border-left{border-left-color:#e53935!important}.red-700-bg{background-color:#d32f2f!important}.md-red-700-bg{background-color:#d32f2f!important;color:#fff}.red-700-fg{color:#d32f2f!important}.red-700-border{border-color:#d32f2f!important}.red-700-border-top{border-top-color:#d32f2f!important}.red-700-border-right{border-right-color:#d32f2f!important}.red-700-border-bottom{border-bottom-color:#d32f2f!important}.red-700-border-left{border-left-color:#d32f2f!important}.red-800-bg{background-color:#c62828!important}.md-red-800-bg{background-color:#c62828!important;color:rgba(255,255,255,.87)}.red-800-fg{color:#c62828!important}.red-800-border{border-color:#c62828!important}.red-800-border-top{border-top-color:#c62828!important}.red-800-border-right{border-right-color:#c62828!important}.red-800-border-bottom{border-bottom-color:#c62828!important}.red-800-border-left{border-left-color:#c62828!important}.red-900-bg{background-color:#b71c1c!important}.md-red-900-bg{background-color:#b71c1c!important;color:rgba(255,255,255,.87)}.red-900-fg{color:#b71c1c!important}.red-900-border{border-color:#b71c1c!important}.red-900-border-top{border-top-color:#b71c1c!important}.red-900-border-right{border-right-color:#b71c1c!important}.red-900-border-bottom{border-bottom-color:#b71c1c!important}.red-900-border-left{border-left-color:#b71c1c!important}.red-A100-bg{background-color:#ff8a80!important}.md-red-A100-bg{background-color:#ff8a80!important;color:rgba(0,0,0,.87)}.red-A100-fg{color:#ff8a80!important}.red-A100-border{border-color:#ff8a80!important}.red-A100-border-top{border-top-color:#ff8a80!important}.red-A100-border-right{border-right-color:#ff8a80!important}.red-A100-border-bottom{border-bottom-color:#ff8a80!important}.red-A100-border-left{border-left-color:#ff8a80!important}.red-A200-bg{background-color:#ff5252!important}.md-red-A200-bg{background-color:#ff5252!important;color:#fff}.red-A200-fg{color:#ff5252!important}.red-A200-border{border-color:#ff5252!important}.red-A200-border-top{border-top-color:#ff5252!important}.red-A200-border-right{border-right-color:#ff5252!important}.red-A200-border-bottom{border-bottom-color:#ff5252!important}.red-A200-border-left{border-left-color:#ff5252!important}.red-A400-bg{background-color:#ff1744!important}.md-red-A400-bg{background-color:#ff1744!important;color:#fff}.red-A400-fg{color:#ff1744!important}.red-A400-border{border-color:#ff1744!important}.red-A400-border-top{border-top-color:#ff1744!important}.red-A400-border-right{border-right-color:#ff1744!important}.red-A400-border-bottom{border-bottom-color:#ff1744!important}.red-A400-border-left{border-left-color:#ff1744!important}.red-A700-bg{background-color:#d50000!important}.md-red-A700-bg{background-color:#d50000!important;color:#fff}.red-A700-fg{color:#d50000!important}.red-A700-border{border-color:#d50000!important}.red-A700-border-top{border-top-color:#d50000!important}.red-A700-border-right{border-right-color:#d50000!important}.red-A700-border-bottom{border-bottom-color:#d50000!important}.red-A700-border-left{border-left-color:#d50000!important}.pink-50-bg{background-color:#fce4ec!important}.md-pink-50-bg{background-color:#fce4ec!important;color:rgba(0,0,0,.87)}.pink-50-fg{color:#fce4ec!important}.pink-50-border{border-color:#fce4ec!important}.pink-50-border-top{border-top-color:#fce4ec!important}.pink-50-border-right{border-right-color:#fce4ec!important}.pink-50-border-bottom{border-bottom-color:#fce4ec!important}.pink-50-border-left{border-left-color:#fce4ec!important}.pink-100-bg{background-color:#f8bbd0!important}.md-pink-100-bg{background-color:#f8bbd0!important;color:rgba(0,0,0,.87)}.pink-100-fg{color:#f8bbd0!important}.pink-100-border{border-color:#f8bbd0!important}.pink-100-border-top{border-top-color:#f8bbd0!important}.pink-100-border-right{border-right-color:#f8bbd0!important}.pink-100-border-bottom{border-bottom-color:#f8bbd0!important}.pink-100-border-left{border-left-color:#f8bbd0!important}.pink-200-bg{background-color:#f48fb1!important}.md-pink-200-bg{background-color:#f48fb1!important;color:rgba(0,0,0,.87)}.pink-200-fg{color:#f48fb1!important}.pink-200-border{border-color:#f48fb1!important}.pink-200-border-top{border-top-color:#f48fb1!important}.pink-200-border-right{border-right-color:#f48fb1!important}.pink-200-border-bottom{border-bottom-color:#f48fb1!important}.pink-200-border-left{border-left-color:#f48fb1!important}.pink-300-bg{background-color:#f06292!important}.md-pink-300-bg{background-color:#f06292!important;color:rgba(255,255,255,.87)}.pink-300-fg{color:#f06292!important}.pink-300-border{border-color:#f06292!important}.pink-300-border-top{border-top-color:#f06292!important}.pink-300-border-right{border-right-color:#f06292!important}.pink-300-border-bottom{border-bottom-color:#f06292!important}.pink-300-border-left{border-left-color:#f06292!important}.pink-400-bg{background-color:#ec407a!important}.md-pink-400-bg{background-color:#ec407a!important;color:rgba(255,255,255,.87)}.pink-400-fg{color:#ec407a!important}.pink-400-border{border-color:#ec407a!important}.pink-400-border-top{border-top-color:#ec407a!important}.pink-400-border-right{border-right-color:#ec407a!important}.pink-400-border-bottom{border-bottom-color:#ec407a!important}.pink-400-border-left{border-left-color:#ec407a!important}.pink-500-bg{background-color:#e91e63!important}.md-pink-500-bg{background-color:#e91e63!important;color:#fff}.pink-500-fg{color:#e91e63!important}.pink-500-border{border-color:#e91e63!important}.pink-500-border-top{border-top-color:#e91e63!important}.pink-500-border-right{border-right-color:#e91e63!important}.pink-500-border-bottom{border-bottom-color:#e91e63!important}.pink-500-border-left{border-left-color:#e91e63!important}.md-pink-bg{background-color:#e91e63!important;color:#fff}.pink-bg{background-color:#e91e63!important}.pink-fg{color:#e91e63!important}.pink-border{border-color:#e91e63!important}.pink-border-top{border-top-color:#e91e63!important}.pink-border-right{border-right-color:#e91e63!important}.pink-border-bottom{border-bottom-color:#e91e63!important}.pink-border-left{border-left-color:#e91e63!important}.pink-600-bg{background-color:#d81b60!important}.md-pink-600-bg{background-color:#d81b60!important;color:#fff}.pink-600-fg{color:#d81b60!important}.pink-600-border{border-color:#d81b60!important}.pink-600-border-top{border-top-color:#d81b60!important}.pink-600-border-right{border-right-color:#d81b60!important}.pink-600-border-bottom{border-bottom-color:#d81b60!important}.pink-600-border-left{border-left-color:#d81b60!important}.pink-700-bg{background-color:#c2185b!important}.md-pink-700-bg{background-color:#c2185b!important;color:rgba(255,255,255,.87)}.pink-700-fg{color:#c2185b!important}.pink-700-border{border-color:#c2185b!important}.pink-700-border-top{border-top-color:#c2185b!important}.pink-700-border-right{border-right-color:#c2185b!important}.pink-700-border-bottom{border-bottom-color:#c2185b!important}.pink-700-border-left{border-left-color:#c2185b!important}.pink-800-bg{background-color:#ad1457!important}.md-pink-800-bg{background-color:#ad1457!important;color:rgba(255,255,255,.87)}.pink-800-fg{color:#ad1457!important}.pink-800-border{border-color:#ad1457!important}.pink-800-border-top{border-top-color:#ad1457!important}.pink-800-border-right{border-right-color:#ad1457!important}.pink-800-border-bottom{border-bottom-color:#ad1457!important}.pink-800-border-left{border-left-color:#ad1457!important}.pink-900-bg{background-color:#880e4f!important}.md-pink-900-bg{background-color:#880e4f!important;color:rgba(255,255,255,.87)}.pink-900-fg{color:#880e4f!important}.pink-900-border{border-color:#880e4f!important}.pink-900-border-top{border-top-color:#880e4f!important}.pink-900-border-right{border-right-color:#880e4f!important}.pink-900-border-bottom{border-bottom-color:#880e4f!important}.pink-900-border-left{border-left-color:#880e4f!important}.pink-A100-bg{background-color:#ff80ab!important}.md-pink-A100-bg{background-color:#ff80ab!important;color:rgba(0,0,0,.87)}.pink-A100-fg{color:#ff80ab!important}.pink-A100-border{border-color:#ff80ab!important}.pink-A100-border-top{border-top-color:#ff80ab!important}.pink-A100-border-right{border-right-color:#ff80ab!important}.pink-A100-border-bottom{border-bottom-color:#ff80ab!important}.pink-A100-border-left{border-left-color:#ff80ab!important}.pink-A200-bg{background-color:#ff4081!important}.md-pink-A200-bg{background-color:#ff4081!important;color:#fff}.pink-A200-fg{color:#ff4081!important}.pink-A200-border{border-color:#ff4081!important}.pink-A200-border-top{border-top-color:#ff4081!important}.pink-A200-border-right{border-right-color:#ff4081!important}.pink-A200-border-bottom{border-bottom-color:#ff4081!important}.pink-A200-border-left{border-left-color:#ff4081!important}.pink-A400-bg{background-color:#f50057!important}.md-pink-A400-bg{background-color:#f50057!important;color:#fff}.pink-A400-fg{color:#f50057!important}.pink-A400-border{border-color:#f50057!important}.pink-A400-border-top{border-top-color:#f50057!important}.pink-A400-border-right{border-right-color:#f50057!important}.pink-A400-border-bottom{border-bottom-color:#f50057!important}.pink-A400-border-left{border-left-color:#f50057!important}.pink-A700-bg{background-color:#c51162!important}.md-pink-A700-bg{background-color:#c51162!important;color:#fff}.pink-A700-fg{color:#c51162!important}.pink-A700-border{border-color:#c51162!important}.pink-A700-border-top{border-top-color:#c51162!important}.pink-A700-border-right{border-right-color:#c51162!important}.pink-A700-border-bottom{border-bottom-color:#c51162!important}.pink-A700-border-left{border-left-color:#c51162!important}.purple-50-bg{background-color:#f3e5f5!important}.md-purple-50-bg{background-color:#f3e5f5!important;color:rgba(0,0,0,.87)}.purple-50-fg{color:#f3e5f5!important}.purple-50-border{border-color:#f3e5f5!important}.purple-50-border-top{border-top-color:#f3e5f5!important}.purple-50-border-right{border-right-color:#f3e5f5!important}.purple-50-border-bottom{border-bottom-color:#f3e5f5!important}.purple-50-border-left{border-left-color:#f3e5f5!important}.purple-100-bg{background-color:#e1bee7!important}.md-purple-100-bg{background-color:#e1bee7!important;color:rgba(0,0,0,.87)}.purple-100-fg{color:#e1bee7!important}.purple-100-border{border-color:#e1bee7!important}.purple-100-border-top{border-top-color:#e1bee7!important}.purple-100-border-right{border-right-color:#e1bee7!important}.purple-100-border-bottom{border-bottom-color:#e1bee7!important}.purple-100-border-left{border-left-color:#e1bee7!important}.purple-200-bg{background-color:#ce93d8!important}.md-purple-200-bg{background-color:#ce93d8!important;color:rgba(0,0,0,.87)}.purple-200-fg{color:#ce93d8!important}.purple-200-border{border-color:#ce93d8!important}.purple-200-border-top{border-top-color:#ce93d8!important}.purple-200-border-right{border-right-color:#ce93d8!important}.purple-200-border-bottom{border-bottom-color:#ce93d8!important}.purple-200-border-left{border-left-color:#ce93d8!important}.purple-300-bg{background-color:#ba68c8!important}.md-purple-300-bg{background-color:#ba68c8!important;color:#fff}.purple-300-fg{color:#ba68c8!important}.purple-300-border{border-color:#ba68c8!important}.purple-300-border-top{border-top-color:#ba68c8!important}.purple-300-border-right{border-right-color:#ba68c8!important}.purple-300-border-bottom{border-bottom-color:#ba68c8!important}.purple-300-border-left{border-left-color:#ba68c8!important}.purple-400-bg{background-color:#ab47bc!important}.md-purple-400-bg{background-color:#ab47bc!important;color:#fff}.purple-400-fg{color:#ab47bc!important}.purple-400-border{border-color:#ab47bc!important}.purple-400-border-top{border-top-color:#ab47bc!important}.purple-400-border-right{border-right-color:#ab47bc!important}.purple-400-border-bottom{border-bottom-color:#ab47bc!important}.purple-400-border-left{border-left-color:#ab47bc!important}.purple-500-bg{background-color:#9c27b0!important}.md-purple-500-bg{background-color:#9c27b0!important;color:rgba(255,255,255,.87)}.purple-500-fg{color:#9c27b0!important}.purple-500-border{border-color:#9c27b0!important}.purple-500-border-top{border-top-color:#9c27b0!important}.purple-500-border-right{border-right-color:#9c27b0!important}.purple-500-border-bottom{border-bottom-color:#9c27b0!important}.purple-500-border-left{border-left-color:#9c27b0!important}.md-purple-bg{background-color:#9c27b0!important;color:rgba(255,255,255,.87)}.purple-bg{background-color:#9c27b0!important}.purple-fg{color:#9c27b0!important}.purple-border{border-color:#9c27b0!important}.purple-border-top{border-top-color:#9c27b0!important}.purple-border-right{border-right-color:#9c27b0!important}.purple-border-bottom{border-bottom-color:#9c27b0!important}.purple-border-left{border-left-color:#9c27b0!important}.purple-600-bg{background-color:#8e24aa!important}.md-purple-600-bg{background-color:#8e24aa!important;color:rgba(255,255,255,.87)}.purple-600-fg{color:#8e24aa!important}.purple-600-border{border-color:#8e24aa!important}.purple-600-border-top{border-top-color:#8e24aa!important}.purple-600-border-right{border-right-color:#8e24aa!important}.purple-600-border-bottom{border-bottom-color:#8e24aa!important}.purple-600-border-left{border-left-color:#8e24aa!important}.purple-700-bg{background-color:#7b1fa2!important}.md-purple-700-bg{background-color:#7b1fa2!important;color:rgba(255,255,255,.87)}.purple-700-fg{color:#7b1fa2!important}.purple-700-border{border-color:#7b1fa2!important}.purple-700-border-top{border-top-color:#7b1fa2!important}.purple-700-border-right{border-right-color:#7b1fa2!important}.purple-700-border-bottom{border-bottom-color:#7b1fa2!important}.purple-700-border-left{border-left-color:#7b1fa2!important}.purple-800-bg{background-color:#6a1b9a!important}.md-purple-800-bg{background-color:#6a1b9a!important;color:rgba(255,255,255,.87)}.purple-800-fg{color:#6a1b9a!important}.purple-800-border{border-color:#6a1b9a!important}.purple-800-border-top{border-top-color:#6a1b9a!important}.purple-800-border-right{border-right-color:#6a1b9a!important}.purple-800-border-bottom{border-bottom-color:#6a1b9a!important}.purple-800-border-left{border-left-color:#6a1b9a!important}.purple-900-bg{background-color:#4a148c!important}.md-purple-900-bg{background-color:#4a148c!important;color:rgba(255,255,255,.87)}.purple-900-fg{color:#4a148c!important}.purple-900-border{border-color:#4a148c!important}.purple-900-border-top{border-top-color:#4a148c!important}.purple-900-border-right{border-right-color:#4a148c!important}.purple-900-border-bottom{border-bottom-color:#4a148c!important}.purple-900-border-left{border-left-color:#4a148c!important}.purple-A100-bg{background-color:#ea80fc!important}.md-purple-A100-bg{background-color:#ea80fc!important;color:rgba(0,0,0,.87)}.purple-A100-fg{color:#ea80fc!important}.purple-A100-border{border-color:#ea80fc!important}.purple-A100-border-top{border-top-color:#ea80fc!important}.purple-A100-border-right{border-right-color:#ea80fc!important}.purple-A100-border-bottom{border-bottom-color:#ea80fc!important}.purple-A100-border-left{border-left-color:#ea80fc!important}.purple-A200-bg{background-color:#e040fb!important}.md-purple-A200-bg{background-color:#e040fb!important;color:#fff}.purple-A200-fg{color:#e040fb!important}.purple-A200-border{border-color:#e040fb!important}.purple-A200-border-top{border-top-color:#e040fb!important}.purple-A200-border-right{border-right-color:#e040fb!important}.purple-A200-border-bottom{border-bottom-color:#e040fb!important}.purple-A200-border-left{border-left-color:#e040fb!important}.purple-A400-bg{background-color:#d500f9!important}.md-purple-A400-bg{background-color:#d500f9!important;color:#fff}.purple-A400-fg{color:#d500f9!important}.purple-A400-border{border-color:#d500f9!important}.purple-A400-border-top{border-top-color:#d500f9!important}.purple-A400-border-right{border-right-color:#d500f9!important}.purple-A400-border-bottom{border-bottom-color:#d500f9!important}.purple-A400-border-left{border-left-color:#d500f9!important}.purple-A700-bg{background-color:#a0f!important}.md-purple-A700-bg{background-color:#a0f!important;color:#fff}.purple-A700-fg{color:#a0f!important}.purple-A700-border{border-color:#a0f!important}.purple-A700-border-top{border-top-color:#a0f!important}.purple-A700-border-right{border-right-color:#a0f!important}.purple-A700-border-bottom{border-bottom-color:#a0f!important}.purple-A700-border-left{border-left-color:#a0f!important}.deep-purple-50-bg{background-color:#ede7f6!important}.md-deep-purple-50-bg{background-color:#ede7f6!important;color:rgba(0,0,0,.87)}.deep-purple-50-fg{color:#ede7f6!important}.deep-purple-50-border{border-color:#ede7f6!important}.deep-purple-50-border-top{border-top-color:#ede7f6!important}.deep-purple-50-border-right{border-right-color:#ede7f6!important}.deep-purple-50-border-bottom{border-bottom-color:#ede7f6!important}.deep-purple-50-border-left{border-left-color:#ede7f6!important}.deep-purple-100-bg{background-color:#d1c4e9!important}.md-deep-purple-100-bg{background-color:#d1c4e9!important;color:rgba(0,0,0,.87)}.deep-purple-100-fg{color:#d1c4e9!important}.deep-purple-100-border{border-color:#d1c4e9!important}.deep-purple-100-border-top{border-top-color:#d1c4e9!important}.deep-purple-100-border-right{border-right-color:#d1c4e9!important}.deep-purple-100-border-bottom{border-bottom-color:#d1c4e9!important}.deep-purple-100-border-left{border-left-color:#d1c4e9!important}.deep-purple-200-bg{background-color:#b39ddb!important}.md-deep-purple-200-bg{background-color:#b39ddb!important;color:rgba(0,0,0,.87)}.deep-purple-200-fg{color:#b39ddb!important}.deep-purple-200-border{border-color:#b39ddb!important}.deep-purple-200-border-top{border-top-color:#b39ddb!important}.deep-purple-200-border-right{border-right-color:#b39ddb!important}.deep-purple-200-border-bottom{border-bottom-color:#b39ddb!important}.deep-purple-200-border-left{border-left-color:#b39ddb!important}.deep-purple-300-bg{background-color:#9575cd!important}.md-deep-purple-300-bg{background-color:#9575cd!important;color:#fff}.deep-purple-300-fg{color:#9575cd!important}.deep-purple-300-border{border-color:#9575cd!important}.deep-purple-300-border-top{border-top-color:#9575cd!important}.deep-purple-300-border-right{border-right-color:#9575cd!important}.deep-purple-300-border-bottom{border-bottom-color:#9575cd!important}.deep-purple-300-border-left{border-left-color:#9575cd!important}.deep-purple-400-bg{background-color:#7e57c2!important}.md-deep-purple-400-bg{background-color:#7e57c2!important;color:#fff}.deep-purple-400-fg{color:#7e57c2!important}.deep-purple-400-border{border-color:#7e57c2!important}.deep-purple-400-border-top{border-top-color:#7e57c2!important}.deep-purple-400-border-right{border-right-color:#7e57c2!important}.deep-purple-400-border-bottom{border-bottom-color:#7e57c2!important}.deep-purple-400-border-left{border-left-color:#7e57c2!important}.deep-purple-500-bg{background-color:#673ab7!important}.md-deep-purple-500-bg{background-color:#673ab7!important;color:rgba(255,255,255,.87)}.deep-purple-500-fg{color:#673ab7!important}.deep-purple-500-border{border-color:#673ab7!important}.deep-purple-500-border-top{border-top-color:#673ab7!important}.deep-purple-500-border-right{border-right-color:#673ab7!important}.deep-purple-500-border-bottom{border-bottom-color:#673ab7!important}.deep-purple-500-border-left{border-left-color:#673ab7!important}.md-deep-purple-bg{background-color:#673ab7!important;color:rgba(255,255,255,.87)}.deep-purple-bg{background-color:#673ab7!important}.deep-purple-fg{color:#673ab7!important}.deep-purple-border{border-color:#673ab7!important}.deep-purple-border-top{border-top-color:#673ab7!important}.deep-purple-border-right{border-right-color:#673ab7!important}.deep-purple-border-bottom{border-bottom-color:#673ab7!important}.deep-purple-border-left{border-left-color:#673ab7!important}.deep-purple-600-bg{background-color:#5e35b1!important}.md-deep-purple-600-bg{background-color:#5e35b1!important;color:rgba(255,255,255,.87)}.deep-purple-600-fg{color:#5e35b1!important}.deep-purple-600-border{border-color:#5e35b1!important}.deep-purple-600-border-top{border-top-color:#5e35b1!important}.deep-purple-600-border-right{border-right-color:#5e35b1!important}.deep-purple-600-border-bottom{border-bottom-color:#5e35b1!important}.deep-purple-600-border-left{border-left-color:#5e35b1!important}.deep-purple-700-bg{background-color:#512da8!important}.md-deep-purple-700-bg{background-color:#512da8!important;color:rgba(255,255,255,.87)}.deep-purple-700-fg{color:#512da8!important}.deep-purple-700-border{border-color:#512da8!important}.deep-purple-700-border-top{border-top-color:#512da8!important}.deep-purple-700-border-right{border-right-color:#512da8!important}.deep-purple-700-border-bottom{border-bottom-color:#512da8!important}.deep-purple-700-border-left{border-left-color:#512da8!important}.deep-purple-800-bg{background-color:#4527a0!important}.md-deep-purple-800-bg{background-color:#4527a0!important;color:rgba(255,255,255,.87)}.deep-purple-800-fg{color:#4527a0!important}.deep-purple-800-border{border-color:#4527a0!important}.deep-purple-800-border-top{border-top-color:#4527a0!important}.deep-purple-800-border-right{border-right-color:#4527a0!important}.deep-purple-800-border-bottom{border-bottom-color:#4527a0!important}.deep-purple-800-border-left{border-left-color:#4527a0!important}.deep-purple-900-bg{background-color:#311b92!important}.md-deep-purple-900-bg{background-color:#311b92!important;color:rgba(255,255,255,.87)}.deep-purple-900-fg{color:#311b92!important}.deep-purple-900-border{border-color:#311b92!important}.deep-purple-900-border-top{border-top-color:#311b92!important}.deep-purple-900-border-right{border-right-color:#311b92!important}.deep-purple-900-border-bottom{border-bottom-color:#311b92!important}.deep-purple-900-border-left{border-left-color:#311b92!important}.deep-purple-A100-bg{background-color:#b388ff!important}.md-deep-purple-A100-bg{background-color:#b388ff!important;color:rgba(0,0,0,.87)}.deep-purple-A100-fg{color:#b388ff!important}.deep-purple-A100-border{border-color:#b388ff!important}.deep-purple-A100-border-top{border-top-color:#b388ff!important}.deep-purple-A100-border-right{border-right-color:#b388ff!important}.deep-purple-A100-border-bottom{border-bottom-color:#b388ff!important}.deep-purple-A100-border-left{border-left-color:#b388ff!important}.deep-purple-A200-bg{background-color:#7c4dff!important}.md-deep-purple-A200-bg{background-color:#7c4dff!important;color:#fff}.deep-purple-A200-fg{color:#7c4dff!important}.deep-purple-A200-border{border-color:#7c4dff!important}.deep-purple-A200-border-top{border-top-color:#7c4dff!important}.deep-purple-A200-border-right{border-right-color:#7c4dff!important}.deep-purple-A200-border-bottom{border-bottom-color:#7c4dff!important}.deep-purple-A200-border-left{border-left-color:#7c4dff!important}.deep-purple-A400-bg{background-color:#651fff!important}.md-deep-purple-A400-bg{background-color:#651fff!important;color:rgba(255,255,255,.87)}.deep-purple-A400-fg{color:#651fff!important}.deep-purple-A400-border{border-color:#651fff!important}.deep-purple-A400-border-top{border-top-color:#651fff!important}.deep-purple-A400-border-right{border-right-color:#651fff!important}.deep-purple-A400-border-bottom{border-bottom-color:#651fff!important}.deep-purple-A400-border-left{border-left-color:#651fff!important}.deep-purple-A700-bg{background-color:#6200ea!important}.md-deep-purple-A700-bg{background-color:#6200ea!important;color:rgba(255,255,255,.87)}.deep-purple-A700-fg{color:#6200ea!important}.deep-purple-A700-border{border-color:#6200ea!important}.deep-purple-A700-border-top{border-top-color:#6200ea!important}.deep-purple-A700-border-right{border-right-color:#6200ea!important}.deep-purple-A700-border-bottom{border-bottom-color:#6200ea!important}.deep-purple-A700-border-left{border-left-color:#6200ea!important}.indigo-50-bg{background-color:#e8eaf6!important}.md-indigo-50-bg{background-color:#e8eaf6!important;color:rgba(0,0,0,.87)}.indigo-50-fg{color:#e8eaf6!important}.indigo-50-border{border-color:#e8eaf6!important}.indigo-50-border-top{border-top-color:#e8eaf6!important}.indigo-50-border-right{border-right-color:#e8eaf6!important}.indigo-50-border-bottom{border-bottom-color:#e8eaf6!important}.indigo-50-border-left{border-left-color:#e8eaf6!important}.indigo-100-bg{background-color:#c5cae9!important}.md-indigo-100-bg{background-color:#c5cae9!important;color:rgba(0,0,0,.87)}.indigo-100-fg{color:#c5cae9!important}.indigo-100-border{border-color:#c5cae9!important}.indigo-100-border-top{border-top-color:#c5cae9!important}.indigo-100-border-right{border-right-color:#c5cae9!important}.indigo-100-border-bottom{border-bottom-color:#c5cae9!important}.indigo-100-border-left{border-left-color:#c5cae9!important}.indigo-200-bg{background-color:#9fa8da!important}.md-indigo-200-bg{background-color:#9fa8da!important;color:rgba(0,0,0,.87)}.indigo-200-fg{color:#9fa8da!important}.indigo-200-border{border-color:#9fa8da!important}.indigo-200-border-top{border-top-color:#9fa8da!important}.indigo-200-border-right{border-right-color:#9fa8da!important}.indigo-200-border-bottom{border-bottom-color:#9fa8da!important}.indigo-200-border-left{border-left-color:#9fa8da!important}.indigo-300-bg{background-color:#7986cb!important}.md-indigo-300-bg{background-color:#7986cb!important;color:#fff}.indigo-300-fg{color:#7986cb!important}.indigo-300-border{border-color:#7986cb!important}.indigo-300-border-top{border-top-color:#7986cb!important}.indigo-300-border-right{border-right-color:#7986cb!important}.indigo-300-border-bottom{border-bottom-color:#7986cb!important}.indigo-300-border-left{border-left-color:#7986cb!important}.indigo-400-bg{background-color:#5c6bc0!important}.md-indigo-400-bg{background-color:#5c6bc0!important;color:#fff}.indigo-400-fg{color:#5c6bc0!important}.indigo-400-border{border-color:#5c6bc0!important}.indigo-400-border-top{border-top-color:#5c6bc0!important}.indigo-400-border-right{border-right-color:#5c6bc0!important}.indigo-400-border-bottom{border-bottom-color:#5c6bc0!important}.indigo-400-border-left{border-left-color:#5c6bc0!important}.indigo-500-bg{background-color:#3f51b5!important}.md-indigo-500-bg{background-color:#3f51b5!important;color:rgba(255,255,255,.87)}.indigo-500-fg{color:#3f51b5!important}.indigo-500-border{border-color:#3f51b5!important}.indigo-500-border-top{border-top-color:#3f51b5!important}.indigo-500-border-right{border-right-color:#3f51b5!important}.indigo-500-border-bottom{border-bottom-color:#3f51b5!important}.indigo-500-border-left{border-left-color:#3f51b5!important}.md-indigo-bg{background-color:#3f51b5!important;color:rgba(255,255,255,.87)}.indigo-bg{background-color:#3f51b5!important}.indigo-fg{color:#3f51b5!important}.indigo-border{border-color:#3f51b5!important}.indigo-border-top{border-top-color:#3f51b5!important}.indigo-border-right{border-right-color:#3f51b5!important}.indigo-border-bottom{border-bottom-color:#3f51b5!important}.indigo-border-left{border-left-color:#3f51b5!important}.indigo-600-bg{background-color:#3949ab!important}.md-indigo-600-bg{background-color:#3949ab!important;color:rgba(255,255,255,.87)}.indigo-600-fg{color:#3949ab!important}.indigo-600-border{border-color:#3949ab!important}.indigo-600-border-top{border-top-color:#3949ab!important}.indigo-600-border-right{border-right-color:#3949ab!important}.indigo-600-border-bottom{border-bottom-color:#3949ab!important}.indigo-600-border-left{border-left-color:#3949ab!important}.indigo-700-bg{background-color:#303f9f!important}.md-indigo-700-bg{background-color:#303f9f!important;color:rgba(255,255,255,.87)}.indigo-700-fg{color:#303f9f!important}.indigo-700-border{border-color:#303f9f!important}.indigo-700-border-top{border-top-color:#303f9f!important}.indigo-700-border-right{border-right-color:#303f9f!important}.indigo-700-border-bottom{border-bottom-color:#303f9f!important}.indigo-700-border-left{border-left-color:#303f9f!important}.indigo-800-bg{background-color:#283593!important}.md-indigo-800-bg{background-color:#283593!important;color:rgba(255,255,255,.87)}.indigo-800-fg{color:#283593!important}.indigo-800-border{border-color:#283593!important}.indigo-800-border-top{border-top-color:#283593!important}.indigo-800-border-right{border-right-color:#283593!important}.indigo-800-border-bottom{border-bottom-color:#283593!important}.indigo-800-border-left{border-left-color:#283593!important}.indigo-900-bg{background-color:#1a237e!important}.md-indigo-900-bg{background-color:#1a237e!important;color:rgba(255,255,255,.87)}.indigo-900-fg{color:#1a237e!important}.indigo-900-border{border-color:#1a237e!important}.indigo-900-border-top{border-top-color:#1a237e!important}.indigo-900-border-right{border-right-color:#1a237e!important}.indigo-900-border-bottom{border-bottom-color:#1a237e!important}.indigo-900-border-left{border-left-color:#1a237e!important}.indigo-A100-bg{background-color:#8c9eff!important}.md-indigo-A100-bg{background-color:#8c9eff!important;color:rgba(0,0,0,.87)}.indigo-A100-fg{color:#8c9eff!important}.indigo-A100-border{border-color:#8c9eff!important}.indigo-A100-border-top{border-top-color:#8c9eff!important}.indigo-A100-border-right{border-right-color:#8c9eff!important}.indigo-A100-border-bottom{border-bottom-color:#8c9eff!important}.indigo-A100-border-left{border-left-color:#8c9eff!important}.indigo-A200-bg{background-color:#536dfe!important}.md-indigo-A200-bg{background-color:#536dfe!important;color:#fff}.indigo-A200-fg{color:#536dfe!important}.indigo-A200-border{border-color:#536dfe!important}.indigo-A200-border-top{border-top-color:#536dfe!important}.indigo-A200-border-right{border-right-color:#536dfe!important}.indigo-A200-border-bottom{border-bottom-color:#536dfe!important}.indigo-A200-border-left{border-left-color:#536dfe!important}.indigo-A400-bg{background-color:#3d5afe!important}.md-indigo-A400-bg{background-color:#3d5afe!important;color:#fff}.indigo-A400-fg{color:#3d5afe!important}.indigo-A400-border{border-color:#3d5afe!important}.indigo-A400-border-top{border-top-color:#3d5afe!important}.indigo-A400-border-right{border-right-color:#3d5afe!important}.indigo-A400-border-bottom{border-bottom-color:#3d5afe!important}.indigo-A400-border-left{border-left-color:#3d5afe!important}.indigo-A700-bg{background-color:#304ffe!important}.md-indigo-A700-bg{background-color:#304ffe!important;color:rgba(255,255,255,.87)}.indigo-A700-fg{color:#304ffe!important}.indigo-A700-border{border-color:#304ffe!important}.indigo-A700-border-top{border-top-color:#304ffe!important}.indigo-A700-border-right{border-right-color:#304ffe!important}.indigo-A700-border-bottom{border-bottom-color:#304ffe!important}.indigo-A700-border-left{border-left-color:#304ffe!important}.blue-50-bg{background-color:#e3f2fd!important}.md-blue-50-bg{background-color:#e3f2fd!important;color:rgba(0,0,0,.87)}.blue-50-fg{color:#e3f2fd!important}.blue-50-border{border-color:#e3f2fd!important}.blue-50-border-top{border-top-color:#e3f2fd!important}.blue-50-border-right{border-right-color:#e3f2fd!important}.blue-50-border-bottom{border-bottom-color:#e3f2fd!important}.blue-50-border-left{border-left-color:#e3f2fd!important}.blue-100-bg{background-color:#bbdefb!important}.md-blue-100-bg{background-color:#bbdefb!important;color:rgba(0,0,0,.87)}.blue-100-fg{color:#bbdefb!important}.blue-100-border{border-color:#bbdefb!important}.blue-100-border-top{border-top-color:#bbdefb!important}.blue-100-border-right{border-right-color:#bbdefb!important}.blue-100-border-bottom{border-bottom-color:#bbdefb!important}.blue-100-border-left{border-left-color:#bbdefb!important}.blue-200-bg{background-color:#90caf9!important}.md-blue-200-bg{background-color:#90caf9!important;color:rgba(0,0,0,.87)}.blue-200-fg{color:#90caf9!important}.blue-200-border{border-color:#90caf9!important}.blue-200-border-top{border-top-color:#90caf9!important}.blue-200-border-right{border-right-color:#90caf9!important}.blue-200-border-bottom{border-bottom-color:#90caf9!important}.blue-200-border-left{border-left-color:#90caf9!important}.blue-300-bg{background-color:#64b5f6!important}.md-blue-300-bg{background-color:#64b5f6!important;color:rgba(0,0,0,.87)}.blue-300-fg{color:#64b5f6!important}.blue-300-border{border-color:#64b5f6!important}.blue-300-border-top{border-top-color:#64b5f6!important}.blue-300-border-right{border-right-color:#64b5f6!important}.blue-300-border-bottom{border-bottom-color:#64b5f6!important}.blue-300-border-left{border-left-color:#64b5f6!important}.blue-400-bg{background-color:#42a5f5!important}.md-blue-400-bg{background-color:#42a5f5!important;color:rgba(0,0,0,.87)}.blue-400-fg{color:#42a5f5!important}.blue-400-border{border-color:#42a5f5!important}.blue-400-border-top{border-top-color:#42a5f5!important}.blue-400-border-right{border-right-color:#42a5f5!important}.blue-400-border-bottom{border-bottom-color:#42a5f5!important}.blue-400-border-left{border-left-color:#42a5f5!important}.blue-500-bg{background-color:#2196f3!important}.md-blue-500-bg{background-color:#2196f3!important;color:#fff}.blue-500-fg{color:#2196f3!important}.blue-500-border{border-color:#2196f3!important}.blue-500-border-top{border-top-color:#2196f3!important}.blue-500-border-right{border-right-color:#2196f3!important}.blue-500-border-bottom{border-bottom-color:#2196f3!important}.blue-500-border-left{border-left-color:#2196f3!important}.md-blue-bg{background-color:#2196f3!important;color:#fff}.blue-bg{background-color:#2196f3!important}.blue-fg{color:#2196f3!important}.blue-border{border-color:#2196f3!important}.blue-border-top{border-top-color:#2196f3!important}.blue-border-right{border-right-color:#2196f3!important}.blue-border-bottom{border-bottom-color:#2196f3!important}.blue-border-left{border-left-color:#2196f3!important}.blue-600-bg{background-color:#1e88e5!important}.md-blue-600-bg{background-color:#1e88e5!important;color:#fff}.blue-600-fg{color:#1e88e5!important}.blue-600-border{border-color:#1e88e5!important}.blue-600-border-top{border-top-color:#1e88e5!important}.blue-600-border-right{border-right-color:#1e88e5!important}.blue-600-border-bottom{border-bottom-color:#1e88e5!important}.blue-600-border-left{border-left-color:#1e88e5!important}.blue-700-bg{background-color:#1976d2!important}.md-blue-700-bg{background-color:#1976d2!important;color:#fff}.blue-700-fg{color:#1976d2!important}.blue-700-border{border-color:#1976d2!important}.blue-700-border-top{border-top-color:#1976d2!important}.blue-700-border-right{border-right-color:#1976d2!important}.blue-700-border-bottom{border-bottom-color:#1976d2!important}.blue-700-border-left{border-left-color:#1976d2!important}.blue-800-bg{background-color:#1565c0!important}.md-blue-800-bg{background-color:#1565c0!important;color:rgba(255,255,255,.87)}.blue-800-fg{color:#1565c0!important}.blue-800-border{border-color:#1565c0!important}.blue-800-border-top{border-top-color:#1565c0!important}.blue-800-border-right{border-right-color:#1565c0!important}.blue-800-border-bottom{border-bottom-color:#1565c0!important}.blue-800-border-left{border-left-color:#1565c0!important}.blue-900-bg{background-color:#0d47a1!important}.md-blue-900-bg{background-color:#0d47a1!important;color:rgba(255,255,255,.87)}.blue-900-fg{color:#0d47a1!important}.blue-900-border{border-color:#0d47a1!important}.blue-900-border-top{border-top-color:#0d47a1!important}.blue-900-border-right{border-right-color:#0d47a1!important}.blue-900-border-bottom{border-bottom-color:#0d47a1!important}.blue-900-border-left{border-left-color:#0d47a1!important}.blue-A100-bg{background-color:#82b1ff!important}.md-blue-A100-bg{background-color:#82b1ff!important;color:rgba(0,0,0,.87)}.blue-A100-fg{color:#82b1ff!important}.blue-A100-border{border-color:#82b1ff!important}.blue-A100-border-top{border-top-color:#82b1ff!important}.blue-A100-border-right{border-right-color:#82b1ff!important}.blue-A100-border-bottom{border-bottom-color:#82b1ff!important}.blue-A100-border-left{border-left-color:#82b1ff!important}.blue-A200-bg{background-color:#448aff!important}.md-blue-A200-bg{background-color:#448aff!important;color:#fff}.blue-A200-fg{color:#448aff!important}.blue-A200-border{border-color:#448aff!important}.blue-A200-border-top{border-top-color:#448aff!important}.blue-A200-border-right{border-right-color:#448aff!important}.blue-A200-border-bottom{border-bottom-color:#448aff!important}.blue-A200-border-left{border-left-color:#448aff!important}.blue-A400-bg{background-color:#2979ff!important}.md-blue-A400-bg{background-color:#2979ff!important;color:#fff}.blue-A400-fg{color:#2979ff!important}.blue-A400-border{border-color:#2979ff!important}.blue-A400-border-top{border-top-color:#2979ff!important}.blue-A400-border-right{border-right-color:#2979ff!important}.blue-A400-border-bottom{border-bottom-color:#2979ff!important}.blue-A400-border-left{border-left-color:#2979ff!important}.blue-A700-bg{background-color:#2962ff!important}.md-blue-A700-bg{background-color:#2962ff!important;color:#fff}.blue-A700-fg{color:#2962ff!important}.blue-A700-border{border-color:#2962ff!important}.blue-A700-border-top{border-top-color:#2962ff!important}.blue-A700-border-right{border-right-color:#2962ff!important}.blue-A700-border-bottom{border-bottom-color:#2962ff!important}.blue-A700-border-left{border-left-color:#2962ff!important}.light-blue-50-bg{background-color:#e1f5fe!important}.md-light-blue-50-bg{background-color:#e1f5fe!important;color:rgba(0,0,0,.87)}.light-blue-50-fg{color:#e1f5fe!important}.light-blue-50-border{border-color:#e1f5fe!important}.light-blue-50-border-top{border-top-color:#e1f5fe!important}.light-blue-50-border-right{border-right-color:#e1f5fe!important}.light-blue-50-border-bottom{border-bottom-color:#e1f5fe!important}.light-blue-50-border-left{border-left-color:#e1f5fe!important}.light-blue-100-bg{background-color:#b3e5fc!important}.md-light-blue-100-bg{background-color:#b3e5fc!important;color:rgba(0,0,0,.87)}.light-blue-100-fg{color:#b3e5fc!important}.light-blue-100-border{border-color:#b3e5fc!important}.light-blue-100-border-top{border-top-color:#b3e5fc!important}.light-blue-100-border-right{border-right-color:#b3e5fc!important}.light-blue-100-border-bottom{border-bottom-color:#b3e5fc!important}.light-blue-100-border-left{border-left-color:#b3e5fc!important}.light-blue-200-bg{background-color:#81d4fa!important}.md-light-blue-200-bg{background-color:#81d4fa!important;color:rgba(0,0,0,.87)}.light-blue-200-fg{color:#81d4fa!important}.light-blue-200-border{border-color:#81d4fa!important}.light-blue-200-border-top{border-top-color:#81d4fa!important}.light-blue-200-border-right{border-right-color:#81d4fa!important}.light-blue-200-border-bottom{border-bottom-color:#81d4fa!important}.light-blue-200-border-left{border-left-color:#81d4fa!important}.light-blue-300-bg{background-color:#4fc3f7!important}.md-light-blue-300-bg{background-color:#4fc3f7!important;color:rgba(0,0,0,.87)}.light-blue-300-fg{color:#4fc3f7!important}.light-blue-300-border{border-color:#4fc3f7!important}.light-blue-300-border-top{border-top-color:#4fc3f7!important}.light-blue-300-border-right{border-right-color:#4fc3f7!important}.light-blue-300-border-bottom{border-bottom-color:#4fc3f7!important}.light-blue-300-border-left{border-left-color:#4fc3f7!important}.light-blue-400-bg{background-color:#29b6f6!important}.md-light-blue-400-bg{background-color:#29b6f6!important;color:rgba(0,0,0,.87)}.light-blue-400-fg{color:#29b6f6!important}.light-blue-400-border{border-color:#29b6f6!important}.light-blue-400-border-top{border-top-color:#29b6f6!important}.light-blue-400-border-right{border-right-color:#29b6f6!important}.light-blue-400-border-bottom{border-bottom-color:#29b6f6!important}.light-blue-400-border-left{border-left-color:#29b6f6!important}.light-blue-500-bg{background-color:#03a9f4!important}.md-light-blue-500-bg{background-color:#03a9f4!important;color:rgba(0,0,0,.87)}.light-blue-500-fg{color:#03a9f4!important}.light-blue-500-border{border-color:#03a9f4!important}.light-blue-500-border-top{border-top-color:#03a9f4!important}.light-blue-500-border-right{border-right-color:#03a9f4!important}.light-blue-500-border-bottom{border-bottom-color:#03a9f4!important}.light-blue-500-border-left{border-left-color:#03a9f4!important}.md-light-blue-bg{background-color:#03a9f4!important;color:rgba(0,0,0,.87)}.light-blue-bg{background-color:#03a9f4!important}.light-blue-fg{color:#03a9f4!important}.light-blue-border{border-color:#03a9f4!important}.light-blue-border-top{border-top-color:#03a9f4!important}.light-blue-border-right{border-right-color:#03a9f4!important}.light-blue-border-bottom{border-bottom-color:#03a9f4!important}.light-blue-border-left{border-left-color:#03a9f4!important}.light-blue-600-bg{background-color:#039be5!important}.md-light-blue-600-bg{background-color:#039be5!important;color:#fff}.light-blue-600-fg{color:#039be5!important}.light-blue-600-border{border-color:#039be5!important}.light-blue-600-border-top{border-top-color:#039be5!important}.light-blue-600-border-right{border-right-color:#039be5!important}.light-blue-600-border-bottom{border-bottom-color:#039be5!important}.light-blue-600-border-left{border-left-color:#039be5!important}.light-blue-700-bg{background-color:#0288d1!important}.md-light-blue-700-bg{background-color:#0288d1!important;color:#fff}.light-blue-700-fg{color:#0288d1!important}.light-blue-700-border{border-color:#0288d1!important}.light-blue-700-border-top{border-top-color:#0288d1!important}.light-blue-700-border-right{border-right-color:#0288d1!important}.light-blue-700-border-bottom{border-bottom-color:#0288d1!important}.light-blue-700-border-left{border-left-color:#0288d1!important}.light-blue-800-bg{background-color:#0277bd!important}.md-light-blue-800-bg{background-color:#0277bd!important;color:#fff}.light-blue-800-fg{color:#0277bd!important}.light-blue-800-border{border-color:#0277bd!important}.light-blue-800-border-top{border-top-color:#0277bd!important}.light-blue-800-border-right{border-right-color:#0277bd!important}.light-blue-800-border-bottom{border-bottom-color:#0277bd!important}.light-blue-800-border-left{border-left-color:#0277bd!important}.light-blue-900-bg{background-color:#01579b!important}.md-light-blue-900-bg{background-color:#01579b!important;color:#fff}.light-blue-900-fg{color:#01579b!important}.light-blue-900-border{border-color:#01579b!important}.light-blue-900-border-top{border-top-color:#01579b!important}.light-blue-900-border-right{border-right-color:#01579b!important}.light-blue-900-border-bottom{border-bottom-color:#01579b!important}.light-blue-900-border-left{border-left-color:#01579b!important}.light-blue-A100-bg{background-color:#80d8ff!important}.md-light-blue-A100-bg{background-color:#80d8ff!important;color:rgba(0,0,0,.87)}.light-blue-A100-fg{color:#80d8ff!important}.light-blue-A100-border{border-color:#80d8ff!important}.light-blue-A100-border-top{border-top-color:#80d8ff!important}.light-blue-A100-border-right{border-right-color:#80d8ff!important}.light-blue-A100-border-bottom{border-bottom-color:#80d8ff!important}.light-blue-A100-border-left{border-left-color:#80d8ff!important}.light-blue-A200-bg{background-color:#40c4ff!important}.md-light-blue-A200-bg{background-color:#40c4ff!important;color:rgba(0,0,0,.87)}.light-blue-A200-fg{color:#40c4ff!important}.light-blue-A200-border{border-color:#40c4ff!important}.light-blue-A200-border-top{border-top-color:#40c4ff!important}.light-blue-A200-border-right{border-right-color:#40c4ff!important}.light-blue-A200-border-bottom{border-bottom-color:#40c4ff!important}.light-blue-A200-border-left{border-left-color:#40c4ff!important}.light-blue-A400-bg{background-color:#00b0ff!important}.md-light-blue-A400-bg{background-color:#00b0ff!important;color:rgba(0,0,0,.87)}.light-blue-A400-fg{color:#00b0ff!important}.light-blue-A400-border{border-color:#00b0ff!important}.light-blue-A400-border-top{border-top-color:#00b0ff!important}.light-blue-A400-border-right{border-right-color:#00b0ff!important}.light-blue-A400-border-bottom{border-bottom-color:#00b0ff!important}.light-blue-A400-border-left{border-left-color:#00b0ff!important}.light-blue-A700-bg{background-color:#0091ea!important}.md-light-blue-A700-bg{background-color:#0091ea!important;color:#fff}.light-blue-A700-fg{color:#0091ea!important}.light-blue-A700-border{border-color:#0091ea!important}.light-blue-A700-border-top{border-top-color:#0091ea!important}.light-blue-A700-border-right{border-right-color:#0091ea!important}.light-blue-A700-border-bottom{border-bottom-color:#0091ea!important}.light-blue-A700-border-left{border-left-color:#0091ea!important}.cyan-50-bg{background-color:#e0f7fa!important}.md-cyan-50-bg{background-color:#e0f7fa!important;color:rgba(0,0,0,.87)}.cyan-50-fg{color:#e0f7fa!important}.cyan-50-border{border-color:#e0f7fa!important}.cyan-50-border-top{border-top-color:#e0f7fa!important}.cyan-50-border-right{border-right-color:#e0f7fa!important}.cyan-50-border-bottom{border-bottom-color:#e0f7fa!important}.cyan-50-border-left{border-left-color:#e0f7fa!important}.cyan-100-bg{background-color:#b2ebf2!important}.md-cyan-100-bg{background-color:#b2ebf2!important;color:rgba(0,0,0,.87)}.cyan-100-fg{color:#b2ebf2!important}.cyan-100-border{border-color:#b2ebf2!important}.cyan-100-border-top{border-top-color:#b2ebf2!important}.cyan-100-border-right{border-right-color:#b2ebf2!important}.cyan-100-border-bottom{border-bottom-color:#b2ebf2!important}.cyan-100-border-left{border-left-color:#b2ebf2!important}.cyan-200-bg{background-color:#80deea!important}.md-cyan-200-bg{background-color:#80deea!important;color:rgba(0,0,0,.87)}.cyan-200-fg{color:#80deea!important}.cyan-200-border{border-color:#80deea!important}.cyan-200-border-top{border-top-color:#80deea!important}.cyan-200-border-right{border-right-color:#80deea!important}.cyan-200-border-bottom{border-bottom-color:#80deea!important}.cyan-200-border-left{border-left-color:#80deea!important}.cyan-300-bg{background-color:#4dd0e1!important}.md-cyan-300-bg{background-color:#4dd0e1!important;color:rgba(0,0,0,.87)}.cyan-300-fg{color:#4dd0e1!important}.cyan-300-border{border-color:#4dd0e1!important}.cyan-300-border-top{border-top-color:#4dd0e1!important}.cyan-300-border-right{border-right-color:#4dd0e1!important}.cyan-300-border-bottom{border-bottom-color:#4dd0e1!important}.cyan-300-border-left{border-left-color:#4dd0e1!important}.cyan-400-bg{background-color:#26c6da!important}.md-cyan-400-bg{background-color:#26c6da!important;color:rgba(0,0,0,.87)}.cyan-400-fg{color:#26c6da!important}.cyan-400-border{border-color:#26c6da!important}.cyan-400-border-top{border-top-color:#26c6da!important}.cyan-400-border-right{border-right-color:#26c6da!important}.cyan-400-border-bottom{border-bottom-color:#26c6da!important}.cyan-400-border-left{border-left-color:#26c6da!important}.cyan-500-bg{background-color:#00bcd4!important}.md-cyan-500-bg{background-color:#00bcd4!important;color:rgba(0,0,0,.87)}.cyan-500-fg{color:#00bcd4!important}.cyan-500-border{border-color:#00bcd4!important}.cyan-500-border-top{border-top-color:#00bcd4!important}.cyan-500-border-right{border-right-color:#00bcd4!important}.cyan-500-border-bottom{border-bottom-color:#00bcd4!important}.cyan-500-border-left{border-left-color:#00bcd4!important}.md-cyan-bg{background-color:#00bcd4!important;color:rgba(0,0,0,.87)}.cyan-bg{background-color:#00bcd4!important}.cyan-fg{color:#00bcd4!important}.cyan-border{border-color:#00bcd4!important}.cyan-border-top{border-top-color:#00bcd4!important}.cyan-border-right{border-right-color:#00bcd4!important}.cyan-border-bottom{border-bottom-color:#00bcd4!important}.cyan-border-left{border-left-color:#00bcd4!important}.cyan-600-bg{background-color:#00acc1!important}.md-cyan-600-bg{background-color:#00acc1!important;color:rgba(0,0,0,.87)}.cyan-600-fg{color:#00acc1!important}.cyan-600-border{border-color:#00acc1!important}.cyan-600-border-top{border-top-color:#00acc1!important}.cyan-600-border-right{border-right-color:#00acc1!important}.cyan-600-border-bottom{border-bottom-color:#00acc1!important}.cyan-600-border-left{border-left-color:#00acc1!important}.cyan-700-bg{background-color:#0097a7!important}.md-cyan-700-bg{background-color:#0097a7!important;color:#fff}.cyan-700-fg{color:#0097a7!important}.cyan-700-border{border-color:#0097a7!important}.cyan-700-border-top{border-top-color:#0097a7!important}.cyan-700-border-right{border-right-color:#0097a7!important}.cyan-700-border-bottom{border-bottom-color:#0097a7!important}.cyan-700-border-left{border-left-color:#0097a7!important}.cyan-800-bg{background-color:#00838f!important}.md-cyan-800-bg{background-color:#00838f!important;color:#fff}.cyan-800-fg{color:#00838f!important}.cyan-800-border{border-color:#00838f!important}.cyan-800-border-top{border-top-color:#00838f!important}.cyan-800-border-right{border-right-color:#00838f!important}.cyan-800-border-bottom{border-bottom-color:#00838f!important}.cyan-800-border-left{border-left-color:#00838f!important}.cyan-900-bg{background-color:#006064!important}.md-cyan-900-bg{background-color:#006064!important;color:#fff}.cyan-900-fg{color:#006064!important}.cyan-900-border{border-color:#006064!important}.cyan-900-border-top{border-top-color:#006064!important}.cyan-900-border-right{border-right-color:#006064!important}.cyan-900-border-bottom{border-bottom-color:#006064!important}.cyan-900-border-left{border-left-color:#006064!important}.cyan-A100-bg{background-color:#84ffff!important}.md-cyan-A100-bg{background-color:#84ffff!important;color:rgba(0,0,0,.87)}.cyan-A100-fg{color:#84ffff!important}.cyan-A100-border{border-color:#84ffff!important}.cyan-A100-border-top{border-top-color:#84ffff!important}.cyan-A100-border-right{border-right-color:#84ffff!important}.cyan-A100-border-bottom{border-bottom-color:#84ffff!important}.cyan-A100-border-left{border-left-color:#84ffff!important}.cyan-A200-bg{background-color:#18ffff!important}.md-cyan-A200-bg{background-color:#18ffff!important;color:rgba(0,0,0,.87)}.cyan-A200-fg{color:#18ffff!important}.cyan-A200-border{border-color:#18ffff!important}.cyan-A200-border-top{border-top-color:#18ffff!important}.cyan-A200-border-right{border-right-color:#18ffff!important}.cyan-A200-border-bottom{border-bottom-color:#18ffff!important}.cyan-A200-border-left{border-left-color:#18ffff!important}.cyan-A400-bg{background-color:#00e5ff!important}.md-cyan-A400-bg{background-color:#00e5ff!important;color:rgba(0,0,0,.87)}.cyan-A400-fg{color:#00e5ff!important}.cyan-A400-border{border-color:#00e5ff!important}.cyan-A400-border-top{border-top-color:#00e5ff!important}.cyan-A400-border-right{border-right-color:#00e5ff!important}.cyan-A400-border-bottom{border-bottom-color:#00e5ff!important}.cyan-A400-border-left{border-left-color:#00e5ff!important}.cyan-A700-bg{background-color:#00b8d4!important}.md-cyan-A700-bg{background-color:#00b8d4!important;color:rgba(0,0,0,.87)}.cyan-A700-fg{color:#00b8d4!important}.cyan-A700-border{border-color:#00b8d4!important}.cyan-A700-border-top{border-top-color:#00b8d4!important}.cyan-A700-border-right{border-right-color:#00b8d4!important}.cyan-A700-border-bottom{border-bottom-color:#00b8d4!important}.cyan-A700-border-left{border-left-color:#00b8d4!important}.teal-50-bg{background-color:#e0f2f1!important}.md-teal-50-bg{background-color:#e0f2f1!important;color:rgba(0,0,0,.87)}.teal-50-fg{color:#e0f2f1!important}.teal-50-border{border-color:#e0f2f1!important}.teal-50-border-top{border-top-color:#e0f2f1!important}.teal-50-border-right{border-right-color:#e0f2f1!important}.teal-50-border-bottom{border-bottom-color:#e0f2f1!important}.teal-50-border-left{border-left-color:#e0f2f1!important}.teal-100-bg{background-color:#b2dfdb!important}.md-teal-100-bg{background-color:#b2dfdb!important;color:rgba(0,0,0,.87)}.teal-100-fg{color:#b2dfdb!important}.teal-100-border{border-color:#b2dfdb!important}.teal-100-border-top{border-top-color:#b2dfdb!important}.teal-100-border-right{border-right-color:#b2dfdb!important}.teal-100-border-bottom{border-bottom-color:#b2dfdb!important}.teal-100-border-left{border-left-color:#b2dfdb!important}.teal-200-bg{background-color:#80cbc4!important}.md-teal-200-bg{background-color:#80cbc4!important;color:rgba(0,0,0,.87)}.teal-200-fg{color:#80cbc4!important}.teal-200-border{border-color:#80cbc4!important}.teal-200-border-top{border-top-color:#80cbc4!important}.teal-200-border-right{border-right-color:#80cbc4!important}.teal-200-border-bottom{border-bottom-color:#80cbc4!important}.teal-200-border-left{border-left-color:#80cbc4!important}.teal-300-bg{background-color:#4db6ac!important}.md-teal-300-bg{background-color:#4db6ac!important;color:rgba(0,0,0,.87)}.teal-300-fg{color:#4db6ac!important}.teal-300-border{border-color:#4db6ac!important}.teal-300-border-top{border-top-color:#4db6ac!important}.teal-300-border-right{border-right-color:#4db6ac!important}.teal-300-border-bottom{border-bottom-color:#4db6ac!important}.teal-300-border-left{border-left-color:#4db6ac!important}.teal-400-bg{background-color:#26a69a!important}.md-teal-400-bg{background-color:#26a69a!important;color:rgba(0,0,0,.87)}.teal-400-fg{color:#26a69a!important}.teal-400-border{border-color:#26a69a!important}.teal-400-border-top{border-top-color:#26a69a!important}.teal-400-border-right{border-right-color:#26a69a!important}.teal-400-border-bottom{border-bottom-color:#26a69a!important}.teal-400-border-left{border-left-color:#26a69a!important}.teal-500-bg{background-color:#009688!important}.md-teal-500-bg{background-color:#009688!important;color:#fff}.teal-500-fg{color:#009688!important}.teal-500-border{border-color:#009688!important}.teal-500-border-top{border-top-color:#009688!important}.teal-500-border-right{border-right-color:#009688!important}.teal-500-border-bottom{border-bottom-color:#009688!important}.teal-500-border-left{border-left-color:#009688!important}.md-teal-bg{background-color:#009688!important;color:#fff}.teal-bg{background-color:#009688!important}.teal-fg{color:#009688!important}.teal-border{border-color:#009688!important}.teal-border-top{border-top-color:#009688!important}.teal-border-right{border-right-color:#009688!important}.teal-border-bottom{border-bottom-color:#009688!important}.teal-border-left{border-left-color:#009688!important}.teal-600-bg{background-color:#00897b!important}.md-teal-600-bg{background-color:#00897b!important;color:#fff}.teal-600-fg{color:#00897b!important}.teal-600-border{border-color:#00897b!important}.teal-600-border-top{border-top-color:#00897b!important}.teal-600-border-right{border-right-color:#00897b!important}.teal-600-border-bottom{border-bottom-color:#00897b!important}.teal-600-border-left{border-left-color:#00897b!important}.teal-700-bg{background-color:#00796b!important}.md-teal-700-bg{background-color:#00796b!important;color:#fff}.teal-700-fg{color:#00796b!important}.teal-700-border{border-color:#00796b!important}.teal-700-border-top{border-top-color:#00796b!important}.teal-700-border-right{border-right-color:#00796b!important}.teal-700-border-bottom{border-bottom-color:#00796b!important}.teal-700-border-left{border-left-color:#00796b!important}.teal-800-bg{background-color:#00695c!important}.md-teal-800-bg{background-color:#00695c!important;color:rgba(255,255,255,.87)}.teal-800-fg{color:#00695c!important}.teal-800-border{border-color:#00695c!important}.teal-800-border-top{border-top-color:#00695c!important}.teal-800-border-right{border-right-color:#00695c!important}.teal-800-border-bottom{border-bottom-color:#00695c!important}.teal-800-border-left{border-left-color:#00695c!important}.teal-900-bg{background-color:#004d40!important}.md-teal-900-bg{background-color:#004d40!important;color:rgba(255,255,255,.87)}.teal-900-fg{color:#004d40!important}.teal-900-border{border-color:#004d40!important}.teal-900-border-top{border-top-color:#004d40!important}.teal-900-border-right{border-right-color:#004d40!important}.teal-900-border-bottom{border-bottom-color:#004d40!important}.teal-900-border-left{border-left-color:#004d40!important}.teal-A100-bg{background-color:#a7ffeb!important}.md-teal-A100-bg{background-color:#a7ffeb!important;color:rgba(0,0,0,.87)}.teal-A100-fg{color:#a7ffeb!important}.teal-A100-border{border-color:#a7ffeb!important}.teal-A100-border-top{border-top-color:#a7ffeb!important}.teal-A100-border-right{border-right-color:#a7ffeb!important}.teal-A100-border-bottom{border-bottom-color:#a7ffeb!important}.teal-A100-border-left{border-left-color:#a7ffeb!important}.teal-A200-bg{background-color:#64ffda!important}.md-teal-A200-bg{background-color:#64ffda!important;color:rgba(0,0,0,.87)}.teal-A200-fg{color:#64ffda!important}.teal-A200-border{border-color:#64ffda!important}.teal-A200-border-top{border-top-color:#64ffda!important}.teal-A200-border-right{border-right-color:#64ffda!important}.teal-A200-border-bottom{border-bottom-color:#64ffda!important}.teal-A200-border-left{border-left-color:#64ffda!important}.teal-A400-bg{background-color:#1de9b6!important}.md-teal-A400-bg{background-color:#1de9b6!important;color:rgba(0,0,0,.87)}.teal-A400-fg{color:#1de9b6!important}.teal-A400-border{border-color:#1de9b6!important}.teal-A400-border-top{border-top-color:#1de9b6!important}.teal-A400-border-right{border-right-color:#1de9b6!important}.teal-A400-border-bottom{border-bottom-color:#1de9b6!important}.teal-A400-border-left{border-left-color:#1de9b6!important}.teal-A700-bg{background-color:#00bfa5!important}.md-teal-A700-bg{background-color:#00bfa5!important;color:rgba(0,0,0,.87)}.teal-A700-fg{color:#00bfa5!important}.teal-A700-border{border-color:#00bfa5!important}.teal-A700-border-top{border-top-color:#00bfa5!important}.teal-A700-border-right{border-right-color:#00bfa5!important}.teal-A700-border-bottom{border-bottom-color:#00bfa5!important}.teal-A700-border-left{border-left-color:#00bfa5!important}.green-50-bg{background-color:#e8f5e9!important}.md-green-50-bg{background-color:#e8f5e9!important;color:rgba(0,0,0,.87)}.green-50-fg{color:#e8f5e9!important}.green-50-border{border-color:#e8f5e9!important}.green-50-border-top{border-top-color:#e8f5e9!important}.green-50-border-right{border-right-color:#e8f5e9!important}.green-50-border-bottom{border-bottom-color:#e8f5e9!important}.green-50-border-left{border-left-color:#e8f5e9!important}.green-100-bg{background-color:#c8e6c9!important}.md-green-100-bg{background-color:#c8e6c9!important;color:rgba(0,0,0,.87)}.green-100-fg{color:#c8e6c9!important}.green-100-border{border-color:#c8e6c9!important}.green-100-border-top{border-top-color:#c8e6c9!important}.green-100-border-right{border-right-color:#c8e6c9!important}.green-100-border-bottom{border-bottom-color:#c8e6c9!important}.green-100-border-left{border-left-color:#c8e6c9!important}.green-200-bg{background-color:#a5d6a7!important}.md-green-200-bg{background-color:#a5d6a7!important;color:rgba(0,0,0,.87)}.green-200-fg{color:#a5d6a7!important}.green-200-border{border-color:#a5d6a7!important}.green-200-border-top{border-top-color:#a5d6a7!important}.green-200-border-right{border-right-color:#a5d6a7!important}.green-200-border-bottom{border-bottom-color:#a5d6a7!important}.green-200-border-left{border-left-color:#a5d6a7!important}.green-300-bg{background-color:#81c784!important}.md-green-300-bg{background-color:#81c784!important;color:rgba(0,0,0,.87)}.green-300-fg{color:#81c784!important}.green-300-border{border-color:#81c784!important}.green-300-border-top{border-top-color:#81c784!important}.green-300-border-right{border-right-color:#81c784!important}.green-300-border-bottom{border-bottom-color:#81c784!important}.green-300-border-left{border-left-color:#81c784!important}.green-400-bg{background-color:#66bb6a!important}.md-green-400-bg{background-color:#66bb6a!important;color:rgba(0,0,0,.87)}.green-400-fg{color:#66bb6a!important}.green-400-border{border-color:#66bb6a!important}.green-400-border-top{border-top-color:#66bb6a!important}.green-400-border-right{border-right-color:#66bb6a!important}.green-400-border-bottom{border-bottom-color:#66bb6a!important}.green-400-border-left{border-left-color:#66bb6a!important}.green-500-bg{background-color:#4caf50!important}.md-green-500-bg{background-color:#4caf50!important;color:rgba(0,0,0,.87)}.green-500-fg{color:#4caf50!important}.green-500-border{border-color:#4caf50!important}.green-500-border-top{border-top-color:#4caf50!important}.green-500-border-right{border-right-color:#4caf50!important}.green-500-border-bottom{border-bottom-color:#4caf50!important}.green-500-border-left{border-left-color:#4caf50!important}.md-green-bg{background-color:#4caf50!important;color:rgba(0,0,0,.87)}.green-bg{background-color:#4caf50!important}.green-fg{color:#4caf50!important}.green-border{border-color:#4caf50!important}.green-border-top{border-top-color:#4caf50!important}.green-border-right{border-right-color:#4caf50!important}.green-border-bottom{border-bottom-color:#4caf50!important}.green-border-left{border-left-color:#4caf50!important}.green-600-bg{background-color:#43a047!important}.md-green-600-bg{background-color:#43a047!important;color:#fff}.green-600-fg{color:#43a047!important}.green-600-border{border-color:#43a047!important}.green-600-border-top{border-top-color:#43a047!important}.green-600-border-right{border-right-color:#43a047!important}.green-600-border-bottom{border-bottom-color:#43a047!important}.green-600-border-left{border-left-color:#43a047!important}.green-700-bg{background-color:#388e3c!important}.md-green-700-bg{background-color:#388e3c!important;color:#fff}.green-700-fg{color:#388e3c!important}.green-700-border{border-color:#388e3c!important}.green-700-border-top{border-top-color:#388e3c!important}.green-700-border-right{border-right-color:#388e3c!important}.green-700-border-bottom{border-bottom-color:#388e3c!important}.green-700-border-left{border-left-color:#388e3c!important}.green-800-bg{background-color:#2e7d32!important}.md-green-800-bg{background-color:#2e7d32!important;color:rgba(255,255,255,.87)}.green-800-fg{color:#2e7d32!important}.green-800-border{border-color:#2e7d32!important}.green-800-border-top{border-top-color:#2e7d32!important}.green-800-border-right{border-right-color:#2e7d32!important}.green-800-border-bottom{border-bottom-color:#2e7d32!important}.green-800-border-left{border-left-color:#2e7d32!important}.green-900-bg{background-color:#1b5e20!important}.md-green-900-bg{background-color:#1b5e20!important;color:rgba(255,255,255,.87)}.green-900-fg{color:#1b5e20!important}.green-900-border{border-color:#1b5e20!important}.green-900-border-top{border-top-color:#1b5e20!important}.green-900-border-right{border-right-color:#1b5e20!important}.green-900-border-bottom{border-bottom-color:#1b5e20!important}.green-900-border-left{border-left-color:#1b5e20!important}.green-A100-bg{background-color:#b9f6ca!important}.md-green-A100-bg{background-color:#b9f6ca!important;color:rgba(0,0,0,.87)}.green-A100-fg{color:#b9f6ca!important}.green-A100-border{border-color:#b9f6ca!important}.green-A100-border-top{border-top-color:#b9f6ca!important}.green-A100-border-right{border-right-color:#b9f6ca!important}.green-A100-border-bottom{border-bottom-color:#b9f6ca!important}.green-A100-border-left{border-left-color:#b9f6ca!important}.green-A200-bg{background-color:#69f0ae!important}.md-green-A200-bg{background-color:#69f0ae!important;color:rgba(0,0,0,.87)}.green-A200-fg{color:#69f0ae!important}.green-A200-border{border-color:#69f0ae!important}.green-A200-border-top{border-top-color:#69f0ae!important}.green-A200-border-right{border-right-color:#69f0ae!important}.green-A200-border-bottom{border-bottom-color:#69f0ae!important}.green-A200-border-left{border-left-color:#69f0ae!important}.green-A400-bg{background-color:#00e676!important}.md-green-A400-bg{background-color:#00e676!important;color:rgba(0,0,0,.87)}.green-A400-fg{color:#00e676!important}.green-A400-border{border-color:#00e676!important}.green-A400-border-top{border-top-color:#00e676!important}.green-A400-border-right{border-right-color:#00e676!important}.green-A400-border-bottom{border-bottom-color:#00e676!important}.green-A400-border-left{border-left-color:#00e676!important}.green-A700-bg{background-color:#00c853!important}.md-green-A700-bg{background-color:#00c853!important;color:rgba(0,0,0,.87)}.green-A700-fg{color:#00c853!important}.green-A700-border{border-color:#00c853!important}.green-A700-border-top{border-top-color:#00c853!important}.green-A700-border-right{border-right-color:#00c853!important}.green-A700-border-bottom{border-bottom-color:#00c853!important}.green-A700-border-left{border-left-color:#00c853!important}.light-green-50-bg{background-color:#f1f8e9!important}.md-light-green-50-bg{background-color:#f1f8e9!important;color:rgba(0,0,0,.87)}.light-green-50-fg{color:#f1f8e9!important}.light-green-50-border{border-color:#f1f8e9!important}.light-green-50-border-top{border-top-color:#f1f8e9!important}.light-green-50-border-right{border-right-color:#f1f8e9!important}.light-green-50-border-bottom{border-bottom-color:#f1f8e9!important}.light-green-50-border-left{border-left-color:#f1f8e9!important}.light-green-100-bg{background-color:#dcedc8!important}.md-light-green-100-bg{background-color:#dcedc8!important;color:rgba(0,0,0,.87)}.light-green-100-fg{color:#dcedc8!important}.light-green-100-border{border-color:#dcedc8!important}.light-green-100-border-top{border-top-color:#dcedc8!important}.light-green-100-border-right{border-right-color:#dcedc8!important}.light-green-100-border-bottom{border-bottom-color:#dcedc8!important}.light-green-100-border-left{border-left-color:#dcedc8!important}.light-green-200-bg{background-color:#c5e1a5!important}.md-light-green-200-bg{background-color:#c5e1a5!important;color:rgba(0,0,0,.87)}.light-green-200-fg{color:#c5e1a5!important}.light-green-200-border{border-color:#c5e1a5!important}.light-green-200-border-top{border-top-color:#c5e1a5!important}.light-green-200-border-right{border-right-color:#c5e1a5!important}.light-green-200-border-bottom{border-bottom-color:#c5e1a5!important}.light-green-200-border-left{border-left-color:#c5e1a5!important}.light-green-300-bg{background-color:#aed581!important}.md-light-green-300-bg{background-color:#aed581!important;color:rgba(0,0,0,.87)}.light-green-300-fg{color:#aed581!important}.light-green-300-border{border-color:#aed581!important}.light-green-300-border-top{border-top-color:#aed581!important}.light-green-300-border-right{border-right-color:#aed581!important}.light-green-300-border-bottom{border-bottom-color:#aed581!important}.light-green-300-border-left{border-left-color:#aed581!important}.light-green-400-bg{background-color:#9ccc65!important}.md-light-green-400-bg{background-color:#9ccc65!important;color:rgba(0,0,0,.87)}.light-green-400-fg{color:#9ccc65!important}.light-green-400-border{border-color:#9ccc65!important}.light-green-400-border-top{border-top-color:#9ccc65!important}.light-green-400-border-right{border-right-color:#9ccc65!important}.light-green-400-border-bottom{border-bottom-color:#9ccc65!important}.light-green-400-border-left{border-left-color:#9ccc65!important}.light-green-500-bg{background-color:#8bc34a!important}.md-light-green-500-bg{background-color:#8bc34a!important;color:rgba(0,0,0,.87)}.light-green-500-fg{color:#8bc34a!important}.light-green-500-border{border-color:#8bc34a!important}.light-green-500-border-top{border-top-color:#8bc34a!important}.light-green-500-border-right{border-right-color:#8bc34a!important}.light-green-500-border-bottom{border-bottom-color:#8bc34a!important}.light-green-500-border-left{border-left-color:#8bc34a!important}.md-light-green-bg{background-color:#8bc34a!important;color:rgba(0,0,0,.87)}.light-green-bg{background-color:#8bc34a!important}.light-green-fg{color:#8bc34a!important}.light-green-border{border-color:#8bc34a!important}.light-green-border-top{border-top-color:#8bc34a!important}.light-green-border-right{border-right-color:#8bc34a!important}.light-green-border-bottom{border-bottom-color:#8bc34a!important}.light-green-border-left{border-left-color:#8bc34a!important}.light-green-600-bg{background-color:#7cb342!important}.md-light-green-600-bg{background-color:#7cb342!important;color:rgba(0,0,0,.87)}.light-green-600-fg{color:#7cb342!important}.light-green-600-border{border-color:#7cb342!important}.light-green-600-border-top{border-top-color:#7cb342!important}.light-green-600-border-right{border-right-color:#7cb342!important}.light-green-600-border-bottom{border-bottom-color:#7cb342!important}.light-green-600-border-left{border-left-color:#7cb342!important}.light-green-700-bg{background-color:#689f38!important}.md-light-green-700-bg{background-color:#689f38!important;color:#fff}.light-green-700-fg{color:#689f38!important}.light-green-700-border{border-color:#689f38!important}.light-green-700-border-top{border-top-color:#689f38!important}.light-green-700-border-right{border-right-color:#689f38!important}.light-green-700-border-bottom{border-bottom-color:#689f38!important}.light-green-700-border-left{border-left-color:#689f38!important}.light-green-800-bg{background-color:#558b2f!important}.md-light-green-800-bg{background-color:#558b2f!important;color:#fff}.light-green-800-fg{color:#558b2f!important}.light-green-800-border{border-color:#558b2f!important}.light-green-800-border-top{border-top-color:#558b2f!important}.light-green-800-border-right{border-right-color:#558b2f!important}.light-green-800-border-bottom{border-bottom-color:#558b2f!important}.light-green-800-border-left{border-left-color:#558b2f!important}.light-green-900-bg{background-color:#33691e!important}.md-light-green-900-bg{background-color:#33691e!important;color:#fff}.light-green-900-fg{color:#33691e!important}.light-green-900-border{border-color:#33691e!important}.light-green-900-border-top{border-top-color:#33691e!important}.light-green-900-border-right{border-right-color:#33691e!important}.light-green-900-border-bottom{border-bottom-color:#33691e!important}.light-green-900-border-left{border-left-color:#33691e!important}.light-green-A100-bg{background-color:#ccff90!important}.md-light-green-A100-bg{background-color:#ccff90!important;color:rgba(0,0,0,.87)}.light-green-A100-fg{color:#ccff90!important}.light-green-A100-border{border-color:#ccff90!important}.light-green-A100-border-top{border-top-color:#ccff90!important}.light-green-A100-border-right{border-right-color:#ccff90!important}.light-green-A100-border-bottom{border-bottom-color:#ccff90!important}.light-green-A100-border-left{border-left-color:#ccff90!important}.light-green-A200-bg{background-color:#b2ff59!important}.md-light-green-A200-bg{background-color:#b2ff59!important;color:rgba(0,0,0,.87)}.light-green-A200-fg{color:#b2ff59!important}.light-green-A200-border{border-color:#b2ff59!important}.light-green-A200-border-top{border-top-color:#b2ff59!important}.light-green-A200-border-right{border-right-color:#b2ff59!important}.light-green-A200-border-bottom{border-bottom-color:#b2ff59!important}.light-green-A200-border-left{border-left-color:#b2ff59!important}.light-green-A400-bg{background-color:#76ff03!important}.md-light-green-A400-bg{background-color:#76ff03!important;color:rgba(0,0,0,.87)}.light-green-A400-fg{color:#76ff03!important}.light-green-A400-border{border-color:#76ff03!important}.light-green-A400-border-top{border-top-color:#76ff03!important}.light-green-A400-border-right{border-right-color:#76ff03!important}.light-green-A400-border-bottom{border-bottom-color:#76ff03!important}.light-green-A400-border-left{border-left-color:#76ff03!important}.light-green-A700-bg{background-color:#64dd17!important}.md-light-green-A700-bg{background-color:#64dd17!important;color:rgba(0,0,0,.87)}.light-green-A700-fg{color:#64dd17!important}.light-green-A700-border{border-color:#64dd17!important}.light-green-A700-border-top{border-top-color:#64dd17!important}.light-green-A700-border-right{border-right-color:#64dd17!important}.light-green-A700-border-bottom{border-bottom-color:#64dd17!important}.light-green-A700-border-left{border-left-color:#64dd17!important}.lime-50-bg{background-color:#f9fbe7!important}.md-lime-50-bg{background-color:#f9fbe7!important;color:rgba(0,0,0,.87)}.lime-50-fg{color:#f9fbe7!important}.lime-50-border{border-color:#f9fbe7!important}.lime-50-border-top{border-top-color:#f9fbe7!important}.lime-50-border-right{border-right-color:#f9fbe7!important}.lime-50-border-bottom{border-bottom-color:#f9fbe7!important}.lime-50-border-left{border-left-color:#f9fbe7!important}.lime-100-bg{background-color:#f0f4c3!important}.md-lime-100-bg{background-color:#f0f4c3!important;color:rgba(0,0,0,.87)}.lime-100-fg{color:#f0f4c3!important}.lime-100-border{border-color:#f0f4c3!important}.lime-100-border-top{border-top-color:#f0f4c3!important}.lime-100-border-right{border-right-color:#f0f4c3!important}.lime-100-border-bottom{border-bottom-color:#f0f4c3!important}.lime-100-border-left{border-left-color:#f0f4c3!important}.lime-200-bg{background-color:#e6ee9c!important}.md-lime-200-bg{background-color:#e6ee9c!important;color:rgba(0,0,0,.87)}.lime-200-fg{color:#e6ee9c!important}.lime-200-border{border-color:#e6ee9c!important}.lime-200-border-top{border-top-color:#e6ee9c!important}.lime-200-border-right{border-right-color:#e6ee9c!important}.lime-200-border-bottom{border-bottom-color:#e6ee9c!important}.lime-200-border-left{border-left-color:#e6ee9c!important}.lime-300-bg{background-color:#dce775!important}.md-lime-300-bg{background-color:#dce775!important;color:rgba(0,0,0,.87)}.lime-300-fg{color:#dce775!important}.lime-300-border{border-color:#dce775!important}.lime-300-border-top{border-top-color:#dce775!important}.lime-300-border-right{border-right-color:#dce775!important}.lime-300-border-bottom{border-bottom-color:#dce775!important}.lime-300-border-left{border-left-color:#dce775!important}.lime-400-bg{background-color:#d4e157!important}.md-lime-400-bg{background-color:#d4e157!important;color:rgba(0,0,0,.87)}.lime-400-fg{color:#d4e157!important}.lime-400-border{border-color:#d4e157!important}.lime-400-border-top{border-top-color:#d4e157!important}.lime-400-border-right{border-right-color:#d4e157!important}.lime-400-border-bottom{border-bottom-color:#d4e157!important}.lime-400-border-left{border-left-color:#d4e157!important}.lime-500-bg{background-color:#cddc39!important}.md-lime-500-bg{background-color:#cddc39!important;color:rgba(0,0,0,.87)}.lime-500-fg{color:#cddc39!important}.lime-500-border{border-color:#cddc39!important}.lime-500-border-top{border-top-color:#cddc39!important}.lime-500-border-right{border-right-color:#cddc39!important}.lime-500-border-bottom{border-bottom-color:#cddc39!important}.lime-500-border-left{border-left-color:#cddc39!important}.md-lime-bg{background-color:#cddc39!important;color:rgba(0,0,0,.87)}.lime-bg{background-color:#cddc39!important}.lime-fg{color:#cddc39!important}.lime-border{border-color:#cddc39!important}.lime-border-top{border-top-color:#cddc39!important}.lime-border-right{border-right-color:#cddc39!important}.lime-border-bottom{border-bottom-color:#cddc39!important}.lime-border-left{border-left-color:#cddc39!important}.lime-600-bg{background-color:#c0ca33!important}.md-lime-600-bg{background-color:#c0ca33!important;color:rgba(0,0,0,.87)}.lime-600-fg{color:#c0ca33!important}.lime-600-border{border-color:#c0ca33!important}.lime-600-border-top{border-top-color:#c0ca33!important}.lime-600-border-right{border-right-color:#c0ca33!important}.lime-600-border-bottom{border-bottom-color:#c0ca33!important}.lime-600-border-left{border-left-color:#c0ca33!important}.lime-700-bg{background-color:#afb42b!important}.md-lime-700-bg{background-color:#afb42b!important;color:rgba(0,0,0,.87)}.lime-700-fg{color:#afb42b!important}.lime-700-border{border-color:#afb42b!important}.lime-700-border-top{border-top-color:#afb42b!important}.lime-700-border-right{border-right-color:#afb42b!important}.lime-700-border-bottom{border-bottom-color:#afb42b!important}.lime-700-border-left{border-left-color:#afb42b!important}.lime-800-bg{background-color:#9e9d24!important}.md-lime-800-bg{background-color:#9e9d24!important;color:rgba(0,0,0,.87)}.lime-800-fg{color:#9e9d24!important}.lime-800-border{border-color:#9e9d24!important}.lime-800-border-top{border-top-color:#9e9d24!important}.lime-800-border-right{border-right-color:#9e9d24!important}.lime-800-border-bottom{border-bottom-color:#9e9d24!important}.lime-800-border-left{border-left-color:#9e9d24!important}.lime-900-bg{background-color:#827717!important}.md-lime-900-bg{background-color:#827717!important;color:#fff}.lime-900-fg{color:#827717!important}.lime-900-border{border-color:#827717!important}.lime-900-border-top{border-top-color:#827717!important}.lime-900-border-right{border-right-color:#827717!important}.lime-900-border-bottom{border-bottom-color:#827717!important}.lime-900-border-left{border-left-color:#827717!important}.lime-A100-bg{background-color:#f4ff81!important}.md-lime-A100-bg{background-color:#f4ff81!important;color:rgba(0,0,0,.87)}.lime-A100-fg{color:#f4ff81!important}.lime-A100-border{border-color:#f4ff81!important}.lime-A100-border-top{border-top-color:#f4ff81!important}.lime-A100-border-right{border-right-color:#f4ff81!important}.lime-A100-border-bottom{border-bottom-color:#f4ff81!important}.lime-A100-border-left{border-left-color:#f4ff81!important}.lime-A200-bg{background-color:#eeff41!important}.md-lime-A200-bg{background-color:#eeff41!important;color:rgba(0,0,0,.87)}.lime-A200-fg{color:#eeff41!important}.lime-A200-border{border-color:#eeff41!important}.lime-A200-border-top{border-top-color:#eeff41!important}.lime-A200-border-right{border-right-color:#eeff41!important}.lime-A200-border-bottom{border-bottom-color:#eeff41!important}.lime-A200-border-left{border-left-color:#eeff41!important}.lime-A400-bg{background-color:#c6ff00!important}.md-lime-A400-bg{background-color:#c6ff00!important;color:rgba(0,0,0,.87)}.lime-A400-fg{color:#c6ff00!important}.lime-A400-border{border-color:#c6ff00!important}.lime-A400-border-top{border-top-color:#c6ff00!important}.lime-A400-border-right{border-right-color:#c6ff00!important}.lime-A400-border-bottom{border-bottom-color:#c6ff00!important}.lime-A400-border-left{border-left-color:#c6ff00!important}.lime-A700-bg{background-color:#aeea00!important}.md-lime-A700-bg{background-color:#aeea00!important;color:rgba(0,0,0,.87)}.lime-A700-fg{color:#aeea00!important}.lime-A700-border{border-color:#aeea00!important}.lime-A700-border-top{border-top-color:#aeea00!important}.lime-A700-border-right{border-right-color:#aeea00!important}.lime-A700-border-bottom{border-bottom-color:#aeea00!important}.lime-A700-border-left{border-left-color:#aeea00!important}.yellow-50-bg{background-color:#fffde7!important}.md-yellow-50-bg{background-color:#fffde7!important;color:rgba(0,0,0,.87)}.yellow-50-fg{color:#fffde7!important}.yellow-50-border{border-color:#fffde7!important}.yellow-50-border-top{border-top-color:#fffde7!important}.yellow-50-border-right{border-right-color:#fffde7!important}.yellow-50-border-bottom{border-bottom-color:#fffde7!important}.yellow-50-border-left{border-left-color:#fffde7!important}.yellow-100-bg{background-color:#fff9c4!important}.md-yellow-100-bg{background-color:#fff9c4!important;color:rgba(0,0,0,.87)}.yellow-100-fg{color:#fff9c4!important}.yellow-100-border{border-color:#fff9c4!important}.yellow-100-border-top{border-top-color:#fff9c4!important}.yellow-100-border-right{border-right-color:#fff9c4!important}.yellow-100-border-bottom{border-bottom-color:#fff9c4!important}.yellow-100-border-left{border-left-color:#fff9c4!important}.yellow-200-bg{background-color:#fff59d!important}.md-yellow-200-bg{background-color:#fff59d!important;color:rgba(0,0,0,.87)}.yellow-200-fg{color:#fff59d!important}.yellow-200-border{border-color:#fff59d!important}.yellow-200-border-top{border-top-color:#fff59d!important}.yellow-200-border-right{border-right-color:#fff59d!important}.yellow-200-border-bottom{border-bottom-color:#fff59d!important}.yellow-200-border-left{border-left-color:#fff59d!important}.yellow-300-bg{background-color:#fff176!important}.md-yellow-300-bg{background-color:#fff176!important;color:rgba(0,0,0,.87)}.yellow-300-fg{color:#fff176!important}.yellow-300-border{border-color:#fff176!important}.yellow-300-border-top{border-top-color:#fff176!important}.yellow-300-border-right{border-right-color:#fff176!important}.yellow-300-border-bottom{border-bottom-color:#fff176!important}.yellow-300-border-left{border-left-color:#fff176!important}.yellow-400-bg{background-color:#ffee58!important}.md-yellow-400-bg{background-color:#ffee58!important;color:rgba(0,0,0,.87)}.yellow-400-fg{color:#ffee58!important}.yellow-400-border{border-color:#ffee58!important}.yellow-400-border-top{border-top-color:#ffee58!important}.yellow-400-border-right{border-right-color:#ffee58!important}.yellow-400-border-bottom{border-bottom-color:#ffee58!important}.yellow-400-border-left{border-left-color:#ffee58!important}.yellow-500-bg{background-color:#ffeb3b!important}.md-yellow-500-bg{background-color:#ffeb3b!important;color:rgba(0,0,0,.87)}.yellow-500-fg{color:#ffeb3b!important}.yellow-500-border{border-color:#ffeb3b!important}.yellow-500-border-top{border-top-color:#ffeb3b!important}.yellow-500-border-right{border-right-color:#ffeb3b!important}.yellow-500-border-bottom{border-bottom-color:#ffeb3b!important}.yellow-500-border-left{border-left-color:#ffeb3b!important}.md-yellow-bg{background-color:#ffeb3b!important;color:rgba(0,0,0,.87)}.yellow-bg{background-color:#ffeb3b!important}.yellow-fg{color:#ffeb3b!important}.yellow-border{border-color:#ffeb3b!important}.yellow-border-top{border-top-color:#ffeb3b!important}.yellow-border-right{border-right-color:#ffeb3b!important}.yellow-border-bottom{border-bottom-color:#ffeb3b!important}.yellow-border-left{border-left-color:#ffeb3b!important}.yellow-600-bg{background-color:#fdd835!important}.md-yellow-600-bg{background-color:#fdd835!important;color:rgba(0,0,0,.87)}.yellow-600-fg{color:#fdd835!important}.yellow-600-border{border-color:#fdd835!important}.yellow-600-border-top{border-top-color:#fdd835!important}.yellow-600-border-right{border-right-color:#fdd835!important}.yellow-600-border-bottom{border-bottom-color:#fdd835!important}.yellow-600-border-left{border-left-color:#fdd835!important}.yellow-700-bg{background-color:#fbc02d!important}.md-yellow-700-bg{background-color:#fbc02d!important;color:rgba(0,0,0,.87)}.yellow-700-fg{color:#fbc02d!important}.yellow-700-border{border-color:#fbc02d!important}.yellow-700-border-top{border-top-color:#fbc02d!important}.yellow-700-border-right{border-right-color:#fbc02d!important}.yellow-700-border-bottom{border-bottom-color:#fbc02d!important}.yellow-700-border-left{border-left-color:#fbc02d!important}.yellow-800-bg{background-color:#f9a825!important}.md-yellow-800-bg{background-color:#f9a825!important;color:rgba(0,0,0,.87)}.yellow-800-fg{color:#f9a825!important}.yellow-800-border{border-color:#f9a825!important}.yellow-800-border-top{border-top-color:#f9a825!important}.yellow-800-border-right{border-right-color:#f9a825!important}.yellow-800-border-bottom{border-bottom-color:#f9a825!important}.yellow-800-border-left{border-left-color:#f9a825!important}.yellow-900-bg{background-color:#f57f17!important}.md-yellow-900-bg{background-color:#f57f17!important;color:rgba(0,0,0,.87)}.yellow-900-fg{color:#f57f17!important}.yellow-900-border{border-color:#f57f17!important}.yellow-900-border-top{border-top-color:#f57f17!important}.yellow-900-border-right{border-right-color:#f57f17!important}.yellow-900-border-bottom{border-bottom-color:#f57f17!important}.yellow-900-border-left{border-left-color:#f57f17!important}.yellow-A100-bg{background-color:#ffff8d!important}.md-yellow-A100-bg{background-color:#ffff8d!important;color:rgba(0,0,0,.87)}.yellow-A100-fg{color:#ffff8d!important}.yellow-A100-border{border-color:#ffff8d!important}.yellow-A100-border-top{border-top-color:#ffff8d!important}.yellow-A100-border-right{border-right-color:#ffff8d!important}.yellow-A100-border-bottom{border-bottom-color:#ffff8d!important}.yellow-A100-border-left{border-left-color:#ffff8d!important}.yellow-A200-bg{background-color:#ff0!important}.md-yellow-A200-bg{background-color:#ff0!important;color:rgba(0,0,0,.87)}.yellow-A200-fg{color:#ff0!important}.yellow-A200-border{border-color:#ff0!important}.yellow-A200-border-top{border-top-color:#ff0!important}.yellow-A200-border-right{border-right-color:#ff0!important}.yellow-A200-border-bottom{border-bottom-color:#ff0!important}.yellow-A200-border-left{border-left-color:#ff0!important}.yellow-A400-bg{background-color:#ffea00!important}.md-yellow-A400-bg{background-color:#ffea00!important;color:rgba(0,0,0,.87)}.yellow-A400-fg{color:#ffea00!important}.yellow-A400-border{border-color:#ffea00!important}.yellow-A400-border-top{border-top-color:#ffea00!important}.yellow-A400-border-right{border-right-color:#ffea00!important}.yellow-A400-border-bottom{border-bottom-color:#ffea00!important}.yellow-A400-border-left{border-left-color:#ffea00!important}.yellow-A700-bg{background-color:#ffd600!important}.md-yellow-A700-bg{background-color:#ffd600!important;color:rgba(0,0,0,.87)}.yellow-A700-fg{color:#ffd600!important}.yellow-A700-border{border-color:#ffd600!important}.yellow-A700-border-top{border-top-color:#ffd600!important}.yellow-A700-border-right{border-right-color:#ffd600!important}.yellow-A700-border-bottom{border-bottom-color:#ffd600!important}.yellow-A700-border-left{border-left-color:#ffd600!important}.amber-50-bg{background-color:#fff8e1!important}.md-amber-50-bg{background-color:#fff8e1!important;color:rgba(0,0,0,.87)}.amber-50-fg{color:#fff8e1!important}.amber-50-border{border-color:#fff8e1!important}.amber-50-border-top{border-top-color:#fff8e1!important}.amber-50-border-right{border-right-color:#fff8e1!important}.amber-50-border-bottom{border-bottom-color:#fff8e1!important}.amber-50-border-left{border-left-color:#fff8e1!important}.amber-100-bg{background-color:#ffecb3!important}.md-amber-100-bg{background-color:#ffecb3!important;color:rgba(0,0,0,.87)}.amber-100-fg{color:#ffecb3!important}.amber-100-border{border-color:#ffecb3!important}.amber-100-border-top{border-top-color:#ffecb3!important}.amber-100-border-right{border-right-color:#ffecb3!important}.amber-100-border-bottom{border-bottom-color:#ffecb3!important}.amber-100-border-left{border-left-color:#ffecb3!important}.amber-200-bg{background-color:#ffe082!important}.md-amber-200-bg{background-color:#ffe082!important;color:rgba(0,0,0,.87)}.amber-200-fg{color:#ffe082!important}.amber-200-border{border-color:#ffe082!important}.amber-200-border-top{border-top-color:#ffe082!important}.amber-200-border-right{border-right-color:#ffe082!important}.amber-200-border-bottom{border-bottom-color:#ffe082!important}.amber-200-border-left{border-left-color:#ffe082!important}.amber-300-bg{background-color:#ffd54f!important}.md-amber-300-bg{background-color:#ffd54f!important;color:rgba(0,0,0,.87)}.amber-300-fg{color:#ffd54f!important}.amber-300-border{border-color:#ffd54f!important}.amber-300-border-top{border-top-color:#ffd54f!important}.amber-300-border-right{border-right-color:#ffd54f!important}.amber-300-border-bottom{border-bottom-color:#ffd54f!important}.amber-300-border-left{border-left-color:#ffd54f!important}.amber-400-bg{background-color:#ffca28!important}.md-amber-400-bg{background-color:#ffca28!important;color:rgba(0,0,0,.87)}.amber-400-fg{color:#ffca28!important}.amber-400-border{border-color:#ffca28!important}.amber-400-border-top{border-top-color:#ffca28!important}.amber-400-border-right{border-right-color:#ffca28!important}.amber-400-border-bottom{border-bottom-color:#ffca28!important}.amber-400-border-left{border-left-color:#ffca28!important}.amber-500-bg{background-color:#ffc107!important}.md-amber-500-bg{background-color:#ffc107!important;color:rgba(0,0,0,.87)}.amber-500-fg{color:#ffc107!important}.amber-500-border{border-color:#ffc107!important}.amber-500-border-top{border-top-color:#ffc107!important}.amber-500-border-right{border-right-color:#ffc107!important}.amber-500-border-bottom{border-bottom-color:#ffc107!important}.amber-500-border-left{border-left-color:#ffc107!important}.md-amber-bg{background-color:#ffc107!important;color:rgba(0,0,0,.87)}.amber-bg{background-color:#ffc107!important}.amber-fg{color:#ffc107!important}.amber-border{border-color:#ffc107!important}.amber-border-top{border-top-color:#ffc107!important}.amber-border-right{border-right-color:#ffc107!important}.amber-border-bottom{border-bottom-color:#ffc107!important}.amber-border-left{border-left-color:#ffc107!important}.amber-600-bg{background-color:#ffb300!important}.md-amber-600-bg{background-color:#ffb300!important;color:rgba(0,0,0,.87)}.amber-600-fg{color:#ffb300!important}.amber-600-border{border-color:#ffb300!important}.amber-600-border-top{border-top-color:#ffb300!important}.amber-600-border-right{border-right-color:#ffb300!important}.amber-600-border-bottom{border-bottom-color:#ffb300!important}.amber-600-border-left{border-left-color:#ffb300!important}.amber-700-bg{background-color:#ffa000!important}.md-amber-700-bg{background-color:#ffa000!important;color:rgba(0,0,0,.87)}.amber-700-fg{color:#ffa000!important}.amber-700-border{border-color:#ffa000!important}.amber-700-border-top{border-top-color:#ffa000!important}.amber-700-border-right{border-right-color:#ffa000!important}.amber-700-border-bottom{border-bottom-color:#ffa000!important}.amber-700-border-left{border-left-color:#ffa000!important}.amber-800-bg{background-color:#ff8f00!important}.md-amber-800-bg{background-color:#ff8f00!important;color:rgba(0,0,0,.87)}.amber-800-fg{color:#ff8f00!important}.amber-800-border{border-color:#ff8f00!important}.amber-800-border-top{border-top-color:#ff8f00!important}.amber-800-border-right{border-right-color:#ff8f00!important}.amber-800-border-bottom{border-bottom-color:#ff8f00!important}.amber-800-border-left{border-left-color:#ff8f00!important}.amber-900-bg{background-color:#ff6f00!important}.md-amber-900-bg{background-color:#ff6f00!important;color:rgba(0,0,0,.87)}.amber-900-fg{color:#ff6f00!important}.amber-900-border{border-color:#ff6f00!important}.amber-900-border-top{border-top-color:#ff6f00!important}.amber-900-border-right{border-right-color:#ff6f00!important}.amber-900-border-bottom{border-bottom-color:#ff6f00!important}.amber-900-border-left{border-left-color:#ff6f00!important}.amber-A100-bg{background-color:#ffe57f!important}.md-amber-A100-bg{background-color:#ffe57f!important;color:rgba(0,0,0,.87)}.amber-A100-fg{color:#ffe57f!important}.amber-A100-border{border-color:#ffe57f!important}.amber-A100-border-top{border-top-color:#ffe57f!important}.amber-A100-border-right{border-right-color:#ffe57f!important}.amber-A100-border-bottom{border-bottom-color:#ffe57f!important}.amber-A100-border-left{border-left-color:#ffe57f!important}.amber-A200-bg{background-color:#ffd740!important}.md-amber-A200-bg{background-color:#ffd740!important;color:rgba(0,0,0,.87)}.amber-A200-fg{color:#ffd740!important}.amber-A200-border{border-color:#ffd740!important}.amber-A200-border-top{border-top-color:#ffd740!important}.amber-A200-border-right{border-right-color:#ffd740!important}.amber-A200-border-bottom{border-bottom-color:#ffd740!important}.amber-A200-border-left{border-left-color:#ffd740!important}.amber-A400-bg{background-color:#ffc400!important}.md-amber-A400-bg{background-color:#ffc400!important;color:rgba(0,0,0,.87)}.amber-A400-fg{color:#ffc400!important}.amber-A400-border{border-color:#ffc400!important}.amber-A400-border-top{border-top-color:#ffc400!important}.amber-A400-border-right{border-right-color:#ffc400!important}.amber-A400-border-bottom{border-bottom-color:#ffc400!important}.amber-A400-border-left{border-left-color:#ffc400!important}.amber-A700-bg{background-color:#ffab00!important}.md-amber-A700-bg{background-color:#ffab00!important;color:rgba(0,0,0,.87)}.amber-A700-fg{color:#ffab00!important}.amber-A700-border{border-color:#ffab00!important}.amber-A700-border-top{border-top-color:#ffab00!important}.amber-A700-border-right{border-right-color:#ffab00!important}.amber-A700-border-bottom{border-bottom-color:#ffab00!important}.amber-A700-border-left{border-left-color:#ffab00!important}.orange-50-bg{background-color:#fff3e0!important}.md-orange-50-bg{background-color:#fff3e0!important;color:rgba(0,0,0,.87)}.orange-50-fg{color:#fff3e0!important}.orange-50-border{border-color:#fff3e0!important}.orange-50-border-top{border-top-color:#fff3e0!important}.orange-50-border-right{border-right-color:#fff3e0!important}.orange-50-border-bottom{border-bottom-color:#fff3e0!important}.orange-50-border-left{border-left-color:#fff3e0!important}.orange-100-bg{background-color:#ffe0b2!important}.md-orange-100-bg{background-color:#ffe0b2!important;color:rgba(0,0,0,.87)}.orange-100-fg{color:#ffe0b2!important}.orange-100-border{border-color:#ffe0b2!important}.orange-100-border-top{border-top-color:#ffe0b2!important}.orange-100-border-right{border-right-color:#ffe0b2!important}.orange-100-border-bottom{border-bottom-color:#ffe0b2!important}.orange-100-border-left{border-left-color:#ffe0b2!important}.orange-200-bg{background-color:#ffcc80!important}.md-orange-200-bg{background-color:#ffcc80!important;color:rgba(0,0,0,.87)}.orange-200-fg{color:#ffcc80!important}.orange-200-border{border-color:#ffcc80!important}.orange-200-border-top{border-top-color:#ffcc80!important}.orange-200-border-right{border-right-color:#ffcc80!important}.orange-200-border-bottom{border-bottom-color:#ffcc80!important}.orange-200-border-left{border-left-color:#ffcc80!important}.orange-300-bg{background-color:#ffb74d!important}.md-orange-300-bg{background-color:#ffb74d!important;color:rgba(0,0,0,.87)}.orange-300-fg{color:#ffb74d!important}.orange-300-border{border-color:#ffb74d!important}.orange-300-border-top{border-top-color:#ffb74d!important}.orange-300-border-right{border-right-color:#ffb74d!important}.orange-300-border-bottom{border-bottom-color:#ffb74d!important}.orange-300-border-left{border-left-color:#ffb74d!important}.orange-400-bg{background-color:#ffa726!important}.md-orange-400-bg{background-color:#ffa726!important;color:rgba(0,0,0,.87)}.orange-400-fg{color:#ffa726!important}.orange-400-border{border-color:#ffa726!important}.orange-400-border-top{border-top-color:#ffa726!important}.orange-400-border-right{border-right-color:#ffa726!important}.orange-400-border-bottom{border-bottom-color:#ffa726!important}.orange-400-border-left{border-left-color:#ffa726!important}.orange-500-bg{background-color:#ff9800!important}.md-orange-500-bg{background-color:#ff9800!important;color:rgba(0,0,0,.87)}.orange-500-fg{color:#ff9800!important}.orange-500-border{border-color:#ff9800!important}.orange-500-border-top{border-top-color:#ff9800!important}.orange-500-border-right{border-right-color:#ff9800!important}.orange-500-border-bottom{border-bottom-color:#ff9800!important}.orange-500-border-left{border-left-color:#ff9800!important}.md-orange-bg{background-color:#ff9800!important;color:rgba(0,0,0,.87)}.orange-bg{background-color:#ff9800!important}.orange-fg{color:#ff9800!important}.orange-border{border-color:#ff9800!important}.orange-border-top{border-top-color:#ff9800!important}.orange-border-right{border-right-color:#ff9800!important}.orange-border-bottom{border-bottom-color:#ff9800!important}.orange-border-left{border-left-color:#ff9800!important}.orange-600-bg{background-color:#fb8c00!important}.md-orange-600-bg{background-color:#fb8c00!important;color:rgba(0,0,0,.87)}.orange-600-fg{color:#fb8c00!important}.orange-600-border{border-color:#fb8c00!important}.orange-600-border-top{border-top-color:#fb8c00!important}.orange-600-border-right{border-right-color:#fb8c00!important}.orange-600-border-bottom{border-bottom-color:#fb8c00!important}.orange-600-border-left{border-left-color:#fb8c00!important}.orange-700-bg{background-color:#f57c00!important}.md-orange-700-bg{background-color:#f57c00!important;color:rgba(0,0,0,.87)}.orange-700-fg{color:#f57c00!important}.orange-700-border{border-color:#f57c00!important}.orange-700-border-top{border-top-color:#f57c00!important}.orange-700-border-right{border-right-color:#f57c00!important}.orange-700-border-bottom{border-bottom-color:#f57c00!important}.orange-700-border-left{border-left-color:#f57c00!important}.orange-800-bg{background-color:#ef6c00!important}.md-orange-800-bg{background-color:#ef6c00!important;color:#fff}.orange-800-fg{color:#ef6c00!important}.orange-800-border{border-color:#ef6c00!important}.orange-800-border-top{border-top-color:#ef6c00!important}.orange-800-border-right{border-right-color:#ef6c00!important}.orange-800-border-bottom{border-bottom-color:#ef6c00!important}.orange-800-border-left{border-left-color:#ef6c00!important}.orange-900-bg{background-color:#e65100!important}.md-orange-900-bg{background-color:#e65100!important;color:#fff}.orange-900-fg{color:#e65100!important}.orange-900-border{border-color:#e65100!important}.orange-900-border-top{border-top-color:#e65100!important}.orange-900-border-right{border-right-color:#e65100!important}.orange-900-border-bottom{border-bottom-color:#e65100!important}.orange-900-border-left{border-left-color:#e65100!important}.orange-A100-bg{background-color:#ffd180!important}.md-orange-A100-bg{background-color:#ffd180!important;color:rgba(0,0,0,.87)}.orange-A100-fg{color:#ffd180!important}.orange-A100-border{border-color:#ffd180!important}.orange-A100-border-top{border-top-color:#ffd180!important}.orange-A100-border-right{border-right-color:#ffd180!important}.orange-A100-border-bottom{border-bottom-color:#ffd180!important}.orange-A100-border-left{border-left-color:#ffd180!important}.orange-A200-bg{background-color:#ffab40!important}.md-orange-A200-bg{background-color:#ffab40!important;color:rgba(0,0,0,.87)}.orange-A200-fg{color:#ffab40!important}.orange-A200-border{border-color:#ffab40!important}.orange-A200-border-top{border-top-color:#ffab40!important}.orange-A200-border-right{border-right-color:#ffab40!important}.orange-A200-border-bottom{border-bottom-color:#ffab40!important}.orange-A200-border-left{border-left-color:#ffab40!important}.orange-A400-bg{background-color:#ff9100!important}.md-orange-A400-bg{background-color:#ff9100!important;color:rgba(0,0,0,.87)}.orange-A400-fg{color:#ff9100!important}.orange-A400-border{border-color:#ff9100!important}.orange-A400-border-top{border-top-color:#ff9100!important}.orange-A400-border-right{border-right-color:#ff9100!important}.orange-A400-border-bottom{border-bottom-color:#ff9100!important}.orange-A400-border-left{border-left-color:#ff9100!important}.orange-A700-bg{background-color:#ff6d00!important}.md-orange-A700-bg{background-color:#ff6d00!important;color:rgba(0,0,0,.87)}.orange-A700-fg{color:#ff6d00!important}.orange-A700-border{border-color:#ff6d00!important}.orange-A700-border-top{border-top-color:#ff6d00!important}.orange-A700-border-right{border-right-color:#ff6d00!important}.orange-A700-border-bottom{border-bottom-color:#ff6d00!important}.orange-A700-border-left{border-left-color:#ff6d00!important}.deep-orange-50-bg{background-color:#fbe9e7!important}.md-deep-orange-50-bg{background-color:#fbe9e7!important;color:rgba(0,0,0,.87)}.deep-orange-50-fg{color:#fbe9e7!important}.deep-orange-50-border{border-color:#fbe9e7!important}.deep-orange-50-border-top{border-top-color:#fbe9e7!important}.deep-orange-50-border-right{border-right-color:#fbe9e7!important}.deep-orange-50-border-bottom{border-bottom-color:#fbe9e7!important}.deep-orange-50-border-left{border-left-color:#fbe9e7!important}.deep-orange-100-bg{background-color:#ffccbc!important}.md-deep-orange-100-bg{background-color:#ffccbc!important;color:rgba(0,0,0,.87)}.deep-orange-100-fg{color:#ffccbc!important}.deep-orange-100-border{border-color:#ffccbc!important}.deep-orange-100-border-top{border-top-color:#ffccbc!important}.deep-orange-100-border-right{border-right-color:#ffccbc!important}.deep-orange-100-border-bottom{border-bottom-color:#ffccbc!important}.deep-orange-100-border-left{border-left-color:#ffccbc!important}.deep-orange-200-bg{background-color:#ffab91!important}.md-deep-orange-200-bg{background-color:#ffab91!important;color:rgba(0,0,0,.87)}.deep-orange-200-fg{color:#ffab91!important}.deep-orange-200-border{border-color:#ffab91!important}.deep-orange-200-border-top{border-top-color:#ffab91!important}.deep-orange-200-border-right{border-right-color:#ffab91!important}.deep-orange-200-border-bottom{border-bottom-color:#ffab91!important}.deep-orange-200-border-left{border-left-color:#ffab91!important}.deep-orange-300-bg{background-color:#ff8a65!important}.md-deep-orange-300-bg{background-color:#ff8a65!important;color:rgba(0,0,0,.87)}.deep-orange-300-fg{color:#ff8a65!important}.deep-orange-300-border{border-color:#ff8a65!important}.deep-orange-300-border-top{border-top-color:#ff8a65!important}.deep-orange-300-border-right{border-right-color:#ff8a65!important}.deep-orange-300-border-bottom{border-bottom-color:#ff8a65!important}.deep-orange-300-border-left{border-left-color:#ff8a65!important}.deep-orange-400-bg{background-color:#ff7043!important}.md-deep-orange-400-bg{background-color:#ff7043!important;color:rgba(0,0,0,.87)}.deep-orange-400-fg{color:#ff7043!important}.deep-orange-400-border{border-color:#ff7043!important}.deep-orange-400-border-top{border-top-color:#ff7043!important}.deep-orange-400-border-right{border-right-color:#ff7043!important}.deep-orange-400-border-bottom{border-bottom-color:#ff7043!important}.deep-orange-400-border-left{border-left-color:#ff7043!important}.deep-orange-500-bg{background-color:#ff5722!important}.md-deep-orange-500-bg{background-color:#ff5722!important;color:#fff}.deep-orange-500-fg{color:#ff5722!important}.deep-orange-500-border{border-color:#ff5722!important}.deep-orange-500-border-top{border-top-color:#ff5722!important}.deep-orange-500-border-right{border-right-color:#ff5722!important}.deep-orange-500-border-bottom{border-bottom-color:#ff5722!important}.deep-orange-500-border-left{border-left-color:#ff5722!important}.md-deep-orange-bg{background-color:#ff5722!important;color:#fff}.deep-orange-bg{background-color:#ff5722!important}.deep-orange-fg{color:#ff5722!important}.deep-orange-border{border-color:#ff5722!important}.deep-orange-border-top{border-top-color:#ff5722!important}.deep-orange-border-right{border-right-color:#ff5722!important}.deep-orange-border-bottom{border-bottom-color:#ff5722!important}.deep-orange-border-left{border-left-color:#ff5722!important}.deep-orange-600-bg{background-color:#f4511e!important}.md-deep-orange-600-bg{background-color:#f4511e!important;color:#fff}.deep-orange-600-fg{color:#f4511e!important}.deep-orange-600-border{border-color:#f4511e!important}.deep-orange-600-border-top{border-top-color:#f4511e!important}.deep-orange-600-border-right{border-right-color:#f4511e!important}.deep-orange-600-border-bottom{border-bottom-color:#f4511e!important}.deep-orange-600-border-left{border-left-color:#f4511e!important}.deep-orange-700-bg{background-color:#e64a19!important}.md-deep-orange-700-bg{background-color:#e64a19!important;color:#fff}.deep-orange-700-fg{color:#e64a19!important}.deep-orange-700-border{border-color:#e64a19!important}.deep-orange-700-border-top{border-top-color:#e64a19!important}.deep-orange-700-border-right{border-right-color:#e64a19!important}.deep-orange-700-border-bottom{border-bottom-color:#e64a19!important}.deep-orange-700-border-left{border-left-color:#e64a19!important}.deep-orange-800-bg{background-color:#d84315!important}.md-deep-orange-800-bg{background-color:#d84315!important;color:#fff}.deep-orange-800-fg{color:#d84315!important}.deep-orange-800-border{border-color:#d84315!important}.deep-orange-800-border-top{border-top-color:#d84315!important}.deep-orange-800-border-right{border-right-color:#d84315!important}.deep-orange-800-border-bottom{border-bottom-color:#d84315!important}.deep-orange-800-border-left{border-left-color:#d84315!important}.deep-orange-900-bg{background-color:#bf360c!important}.md-deep-orange-900-bg{background-color:#bf360c!important;color:#fff}.deep-orange-900-fg{color:#bf360c!important}.deep-orange-900-border{border-color:#bf360c!important}.deep-orange-900-border-top{border-top-color:#bf360c!important}.deep-orange-900-border-right{border-right-color:#bf360c!important}.deep-orange-900-border-bottom{border-bottom-color:#bf360c!important}.deep-orange-900-border-left{border-left-color:#bf360c!important}.deep-orange-A100-bg{background-color:#ff9e80!important}.md-deep-orange-A100-bg{background-color:#ff9e80!important;color:rgba(0,0,0,.87)}.deep-orange-A100-fg{color:#ff9e80!important}.deep-orange-A100-border{border-color:#ff9e80!important}.deep-orange-A100-border-top{border-top-color:#ff9e80!important}.deep-orange-A100-border-right{border-right-color:#ff9e80!important}.deep-orange-A100-border-bottom{border-bottom-color:#ff9e80!important}.deep-orange-A100-border-left{border-left-color:#ff9e80!important}.deep-orange-A200-bg{background-color:#ff6e40!important}.md-deep-orange-A200-bg{background-color:#ff6e40!important;color:rgba(0,0,0,.87)}.deep-orange-A200-fg{color:#ff6e40!important}.deep-orange-A200-border{border-color:#ff6e40!important}.deep-orange-A200-border-top{border-top-color:#ff6e40!important}.deep-orange-A200-border-right{border-right-color:#ff6e40!important}.deep-orange-A200-border-bottom{border-bottom-color:#ff6e40!important}.deep-orange-A200-border-left{border-left-color:#ff6e40!important}.deep-orange-A400-bg{background-color:#ff3d00!important}.md-deep-orange-A400-bg{background-color:#ff3d00!important;color:#fff}.deep-orange-A400-fg{color:#ff3d00!important}.deep-orange-A400-border{border-color:#ff3d00!important}.deep-orange-A400-border-top{border-top-color:#ff3d00!important}.deep-orange-A400-border-right{border-right-color:#ff3d00!important}.deep-orange-A400-border-bottom{border-bottom-color:#ff3d00!important}.deep-orange-A400-border-left{border-left-color:#ff3d00!important}.deep-orange-A700-bg{background-color:#dd2c00!important}.md-deep-orange-A700-bg{background-color:#dd2c00!important;color:#fff}.deep-orange-A700-fg{color:#dd2c00!important}.deep-orange-A700-border{border-color:#dd2c00!important}.deep-orange-A700-border-top{border-top-color:#dd2c00!important}.deep-orange-A700-border-right{border-right-color:#dd2c00!important}.deep-orange-A700-border-bottom{border-bottom-color:#dd2c00!important}.deep-orange-A700-border-left{border-left-color:#dd2c00!important}.brown-50-bg{background-color:#efebe9!important}.md-brown-50-bg{background-color:#efebe9!important;color:rgba(0,0,0,.87)}.brown-50-fg{color:#efebe9!important}.brown-50-border{border-color:#efebe9!important}.brown-50-border-top{border-top-color:#efebe9!important}.brown-50-border-right{border-right-color:#efebe9!important}.brown-50-border-bottom{border-bottom-color:#efebe9!important}.brown-50-border-left{border-left-color:#efebe9!important}.brown-100-bg{background-color:#d7ccc8!important}.md-brown-100-bg{background-color:#d7ccc8!important;color:rgba(0,0,0,.87)}.brown-100-fg{color:#d7ccc8!important}.brown-100-border{border-color:#d7ccc8!important}.brown-100-border-top{border-top-color:#d7ccc8!important}.brown-100-border-right{border-right-color:#d7ccc8!important}.brown-100-border-bottom{border-bottom-color:#d7ccc8!important}.brown-100-border-left{border-left-color:#d7ccc8!important}.brown-200-bg{background-color:#bcaaa4!important}.md-brown-200-bg{background-color:#bcaaa4!important;color:rgba(0,0,0,.87)}.brown-200-fg{color:#bcaaa4!important}.brown-200-border{border-color:#bcaaa4!important}.brown-200-border-top{border-top-color:#bcaaa4!important}.brown-200-border-right{border-right-color:#bcaaa4!important}.brown-200-border-bottom{border-bottom-color:#bcaaa4!important}.brown-200-border-left{border-left-color:#bcaaa4!important}.brown-300-bg{background-color:#a1887f!important}.md-brown-300-bg{background-color:#a1887f!important;color:#fff}.brown-300-fg{color:#a1887f!important}.brown-300-border{border-color:#a1887f!important}.brown-300-border-top{border-top-color:#a1887f!important}.brown-300-border-right{border-right-color:#a1887f!important}.brown-300-border-bottom{border-bottom-color:#a1887f!important}.brown-300-border-left{border-left-color:#a1887f!important}.brown-400-bg{background-color:#8d6e63!important}.md-brown-400-bg{background-color:#8d6e63!important;color:#fff}.brown-400-fg{color:#8d6e63!important}.brown-400-border{border-color:#8d6e63!important}.brown-400-border-top{border-top-color:#8d6e63!important}.brown-400-border-right{border-right-color:#8d6e63!important}.brown-400-border-bottom{border-bottom-color:#8d6e63!important}.brown-400-border-left{border-left-color:#8d6e63!important}.brown-500-bg{background-color:#795548!important}.md-brown-500-bg{background-color:#795548!important;color:rgba(255,255,255,.87)}.brown-500-fg{color:#795548!important}.brown-500-border{border-color:#795548!important}.brown-500-border-top{border-top-color:#795548!important}.brown-500-border-right{border-right-color:#795548!important}.brown-500-border-bottom{border-bottom-color:#795548!important}.brown-500-border-left{border-left-color:#795548!important}.md-brown-bg{background-color:#795548!important;color:rgba(255,255,255,.87)}.brown-bg{background-color:#795548!important}.brown-fg{color:#795548!important}.brown-border{border-color:#795548!important}.brown-border-top{border-top-color:#795548!important}.brown-border-right{border-right-color:#795548!important}.brown-border-bottom{border-bottom-color:#795548!important}.brown-border-left{border-left-color:#795548!important}.brown-600-bg{background-color:#6d4c41!important}.md-brown-600-bg{background-color:#6d4c41!important;color:rgba(255,255,255,.87)}.brown-600-fg{color:#6d4c41!important}.brown-600-border{border-color:#6d4c41!important}.brown-600-border-top{border-top-color:#6d4c41!important}.brown-600-border-right{border-right-color:#6d4c41!important}.brown-600-border-bottom{border-bottom-color:#6d4c41!important}.brown-600-border-left{border-left-color:#6d4c41!important}.brown-700-bg{background-color:#5d4037!important}.md-brown-700-bg{background-color:#5d4037!important;color:rgba(255,255,255,.87)}.brown-700-fg{color:#5d4037!important}.brown-700-border{border-color:#5d4037!important}.brown-700-border-top{border-top-color:#5d4037!important}.brown-700-border-right{border-right-color:#5d4037!important}.brown-700-border-bottom{border-bottom-color:#5d4037!important}.brown-700-border-left{border-left-color:#5d4037!important}.brown-800-bg{background-color:#4e342e!important}.md-brown-800-bg{background-color:#4e342e!important;color:rgba(255,255,255,.87)}.brown-800-fg{color:#4e342e!important}.brown-800-border{border-color:#4e342e!important}.brown-800-border-top{border-top-color:#4e342e!important}.brown-800-border-right{border-right-color:#4e342e!important}.brown-800-border-bottom{border-bottom-color:#4e342e!important}.brown-800-border-left{border-left-color:#4e342e!important}.brown-900-bg{background-color:#3e2723!important}.md-brown-900-bg{background-color:#3e2723!important;color:rgba(255,255,255,.87)}.brown-900-fg{color:#3e2723!important}.brown-900-border{border-color:#3e2723!important}.brown-900-border-top{border-top-color:#3e2723!important}.brown-900-border-right{border-right-color:#3e2723!important}.brown-900-border-bottom{border-bottom-color:#3e2723!important}.brown-900-border-left{border-left-color:#3e2723!important}.brown-A100-bg{background-color:#d7ccc8!important}.md-brown-A100-bg{background-color:#d7ccc8!important;color:rgba(255,255,255,.87)}.brown-A100-fg{color:#d7ccc8!important}.brown-A100-border{border-color:#d7ccc8!important}.brown-A100-border-top{border-top-color:#d7ccc8!important}.brown-A100-border-right{border-right-color:#d7ccc8!important}.brown-A100-border-bottom{border-bottom-color:#d7ccc8!important}.brown-A100-border-left{border-left-color:#d7ccc8!important}.brown-A200-bg{background-color:#bcaaa4!important}.md-brown-A200-bg{background-color:#bcaaa4!important;color:rgba(255,255,255,.87)}.brown-A200-fg{color:#bcaaa4!important}.brown-A200-border{border-color:#bcaaa4!important}.brown-A200-border-top{border-top-color:#bcaaa4!important}.brown-A200-border-right{border-right-color:#bcaaa4!important}.brown-A200-border-bottom{border-bottom-color:#bcaaa4!important}.brown-A200-border-left{border-left-color:#bcaaa4!important}.brown-A400-bg{background-color:#8d6e63!important}.md-brown-A400-bg{background-color:#8d6e63!important;color:rgba(255,255,255,.87)}.brown-A400-fg{color:#8d6e63!important}.brown-A400-border{border-color:#8d6e63!important}.brown-A400-border-top{border-top-color:#8d6e63!important}.brown-A400-border-right{border-right-color:#8d6e63!important}.brown-A400-border-bottom{border-bottom-color:#8d6e63!important}.brown-A400-border-left{border-left-color:#8d6e63!important}.brown-A700-bg{background-color:#5d4037!important}.md-brown-A700-bg{background-color:#5d4037!important;color:rgba(255,255,255,.87)}.brown-A700-fg{color:#5d4037!important}.brown-A700-border{border-color:#5d4037!important}.brown-A700-border-top{border-top-color:#5d4037!important}.brown-A700-border-right{border-right-color:#5d4037!important}.brown-A700-border-bottom{border-bottom-color:#5d4037!important}.brown-A700-border-left{border-left-color:#5d4037!important}.grey-50-bg{background-color:#fafafa!important}.md-grey-50-bg{background-color:#fafafa!important;color:rgba(0,0,0,.87)}.grey-50-fg{color:#fafafa!important}.grey-50-border{border-color:#fafafa!important}.grey-50-border-top{border-top-color:#fafafa!important}.grey-50-border-right{border-right-color:#fafafa!important}.grey-50-border-bottom{border-bottom-color:#fafafa!important}.grey-50-border-left{border-left-color:#fafafa!important}.grey-100-bg{background-color:#f5f5f5!important}.md-grey-100-bg{background-color:#f5f5f5!important;color:rgba(0,0,0,.87)}.grey-100-fg{color:#f5f5f5!important}.grey-100-border{border-color:#f5f5f5!important}.grey-100-border-top{border-top-color:#f5f5f5!important}.grey-100-border-right{border-right-color:#f5f5f5!important}.grey-100-border-bottom{border-bottom-color:#f5f5f5!important}.grey-100-border-left{border-left-color:#f5f5f5!important}.grey-200-bg{background-color:#eee!important}.md-grey-200-bg{background-color:#eee!important;color:rgba(0,0,0,.87)}.grey-200-fg{color:#eee!important}.grey-200-border{border-color:#eee!important}.grey-200-border-top{border-top-color:#eee!important}.grey-200-border-right{border-right-color:#eee!important}.grey-200-border-bottom{border-bottom-color:#eee!important}.grey-200-border-left{border-left-color:#eee!important}.grey-300-bg{background-color:#e0e0e0!important}.md-grey-300-bg{background-color:#e0e0e0!important;color:rgba(0,0,0,.87)}.grey-300-fg{color:#e0e0e0!important}.grey-300-border{border-color:#e0e0e0!important}.grey-300-border-top{border-top-color:#e0e0e0!important}.grey-300-border-right{border-right-color:#e0e0e0!important}.grey-300-border-bottom{border-bottom-color:#e0e0e0!important}.grey-300-border-left{border-left-color:#e0e0e0!important}.grey-400-bg{background-color:#bdbdbd!important}.md-grey-400-bg{background-color:#bdbdbd!important;color:rgba(0,0,0,.87)}.grey-400-fg{color:#bdbdbd!important}.grey-400-border{border-color:#bdbdbd!important}.grey-400-border-top{border-top-color:#bdbdbd!important}.grey-400-border-right{border-right-color:#bdbdbd!important}.grey-400-border-bottom{border-bottom-color:#bdbdbd!important}.grey-400-border-left{border-left-color:#bdbdbd!important}.grey-500-bg{background-color:#9e9e9e!important}.md-grey-500-bg{background-color:#9e9e9e!important;color:rgba(0,0,0,.87)}.grey-500-fg{color:#9e9e9e!important}.grey-500-border{border-color:#9e9e9e!important}.grey-500-border-top{border-top-color:#9e9e9e!important}.grey-500-border-right{border-right-color:#9e9e9e!important}.grey-500-border-bottom{border-bottom-color:#9e9e9e!important}.grey-500-border-left{border-left-color:#9e9e9e!important}.md-grey-bg{background-color:#9e9e9e!important;color:rgba(0,0,0,.87)}.grey-bg{background-color:#9e9e9e!important}.grey-fg{color:#9e9e9e!important}.grey-border{border-color:#9e9e9e!important}.grey-border-top{border-top-color:#9e9e9e!important}.grey-border-right{border-right-color:#9e9e9e!important}.grey-border-bottom{border-bottom-color:#9e9e9e!important}.grey-border-left{border-left-color:#9e9e9e!important}.grey-600-bg{background-color:#757575!important}.md-grey-600-bg{background-color:#757575!important;color:rgba(255,255,255,.87)}.grey-600-fg{color:#757575!important}.grey-600-border{border-color:#757575!important}.grey-600-border-top{border-top-color:#757575!important}.grey-600-border-right{border-right-color:#757575!important}.grey-600-border-bottom{border-bottom-color:#757575!important}.grey-600-border-left{border-left-color:#757575!important}.grey-700-bg{background-color:#616161!important}.md-grey-700-bg{background-color:#616161!important;color:rgba(255,255,255,.87)}.grey-700-fg{color:#616161!important}.grey-700-border{border-color:#616161!important}.grey-700-border-top{border-top-color:#616161!important}.grey-700-border-right{border-right-color:#616161!important}.grey-700-border-bottom{border-bottom-color:#616161!important}.grey-700-border-left{border-left-color:#616161!important}.grey-800-bg{background-color:#424242!important}.md-grey-800-bg{background-color:#424242!important;color:rgba(255,255,255,.87)}.grey-800-fg{color:#424242!important}.grey-800-border{border-color:#424242!important}.grey-800-border-top{border-top-color:#424242!important}.grey-800-border-right{border-right-color:#424242!important}.grey-800-border-bottom{border-bottom-color:#424242!important}.grey-800-border-left{border-left-color:#424242!important}.grey-900-bg{background-color:#212121!important}.md-grey-900-bg{background-color:#212121!important;color:rgba(255,255,255,.87)}.grey-900-fg{color:#212121!important}.grey-900-border{border-color:#212121!important}.grey-900-border-top{border-top-color:#212121!important}.grey-900-border-right{border-right-color:#212121!important}.grey-900-border-bottom{border-bottom-color:#212121!important}.grey-900-border-left{border-left-color:#212121!important}.grey-1000-bg{background-color:#000!important}.md-grey-1000-bg{background-color:#000!important}.grey-1000-fg{color:#000!important}.grey-1000-border{border-color:#000!important}.grey-1000-border-top{border-top-color:#000!important}.grey-1000-border-right{border-right-color:#000!important}.grey-1000-border-bottom{border-bottom-color:#000!important}.grey-1000-border-left{border-left-color:#000!important}.grey-A100-bg{background-color:#fff!important}.md-grey-A100-bg{background-color:#fff!important;color:rgba(0,0,0,.87)}.grey-A100-fg{color:#fff!important}.grey-A100-border{border-color:#fff!important}.grey-A100-border-top{border-top-color:#fff!important}.grey-A100-border-right{border-right-color:#fff!important}.grey-A100-border-bottom{border-bottom-color:#fff!important}.grey-A100-border-left{border-left-color:#fff!important}.grey-A200-bg{background-color:#eee!important}.md-grey-A200-bg{background-color:#eee!important;color:rgba(0,0,0,.87)}.grey-A200-fg{color:#eee!important}.grey-A200-border{border-color:#eee!important}.grey-A200-border-top{border-top-color:#eee!important}.grey-A200-border-right{border-right-color:#eee!important}.grey-A200-border-bottom{border-bottom-color:#eee!important}.grey-A200-border-left{border-left-color:#eee!important}.grey-A400-bg{background-color:#bdbdbd!important}.md-grey-A400-bg{background-color:#bdbdbd!important;color:rgba(0,0,0,.87)}.grey-A400-fg{color:#bdbdbd!important}.grey-A400-border{border-color:#bdbdbd!important}.grey-A400-border-top{border-top-color:#bdbdbd!important}.grey-A400-border-right{border-right-color:#bdbdbd!important}.grey-A400-border-bottom{border-bottom-color:#bdbdbd!important}.grey-A400-border-left{border-left-color:#bdbdbd!important}.grey-A700-bg{background-color:#616161!important}.md-grey-A700-bg{background-color:#616161!important;color:rgba(0,0,0,.87)}.grey-A700-fg{color:#616161!important}.grey-A700-border{border-color:#616161!important}.grey-A700-border-top{border-top-color:#616161!important}.grey-A700-border-right{border-right-color:#616161!important}.grey-A700-border-bottom{border-bottom-color:#616161!important}.grey-A700-border-left{border-left-color:#616161!important}.blue-grey-50-bg{background-color:#eceff1!important}.md-blue-grey-50-bg{background-color:#eceff1!important;color:rgba(0,0,0,.87)}.blue-grey-50-fg{color:#eceff1!important}.blue-grey-50-border{border-color:#eceff1!important}.blue-grey-50-border-top{border-top-color:#eceff1!important}.blue-grey-50-border-right{border-right-color:#eceff1!important}.blue-grey-50-border-bottom{border-bottom-color:#eceff1!important}.blue-grey-50-border-left{border-left-color:#eceff1!important}.blue-grey-100-bg{background-color:#cfd8dc!important}.md-blue-grey-100-bg{background-color:#cfd8dc!important;color:rgba(0,0,0,.87)}.blue-grey-100-fg{color:#cfd8dc!important}.blue-grey-100-border{border-color:#cfd8dc!important}.blue-grey-100-border-top{border-top-color:#cfd8dc!important}.blue-grey-100-border-right{border-right-color:#cfd8dc!important}.blue-grey-100-border-bottom{border-bottom-color:#cfd8dc!important}.blue-grey-100-border-left{border-left-color:#cfd8dc!important}.blue-grey-200-bg{background-color:#b0bec5!important}.md-blue-grey-200-bg{background-color:#b0bec5!important;color:rgba(0,0,0,.87)}.blue-grey-200-fg{color:#b0bec5!important}.blue-grey-200-border{border-color:#b0bec5!important}.blue-grey-200-border-top{border-top-color:#b0bec5!important}.blue-grey-200-border-right{border-right-color:#b0bec5!important}.blue-grey-200-border-bottom{border-bottom-color:#b0bec5!important}.blue-grey-200-border-left{border-left-color:#b0bec5!important}.blue-grey-300-bg{background-color:#90a4ae!important}.md-blue-grey-300-bg{background-color:#90a4ae!important;color:rgba(0,0,0,.87)}.blue-grey-300-fg{color:#90a4ae!important}.blue-grey-300-border{border-color:#90a4ae!important}.blue-grey-300-border-top{border-top-color:#90a4ae!important}.blue-grey-300-border-right{border-right-color:#90a4ae!important}.blue-grey-300-border-bottom{border-bottom-color:#90a4ae!important}.blue-grey-300-border-left{border-left-color:#90a4ae!important}.blue-grey-400-bg{background-color:#78909c!important}.md-blue-grey-400-bg{background-color:#78909c!important;color:#fff}.blue-grey-400-fg{color:#78909c!important}.blue-grey-400-border{border-color:#78909c!important}.blue-grey-400-border-top{border-top-color:#78909c!important}.blue-grey-400-border-right{border-right-color:#78909c!important}.blue-grey-400-border-bottom{border-bottom-color:#78909c!important}.blue-grey-400-border-left{border-left-color:#78909c!important}.blue-grey-500-bg{background-color:#607d8b!important}.md-blue-grey-500-bg{background-color:#607d8b!important;color:#fff}.blue-grey-500-fg{color:#607d8b!important}.blue-grey-500-border{border-color:#607d8b!important}.blue-grey-500-border-top{border-top-color:#607d8b!important}.blue-grey-500-border-right{border-right-color:#607d8b!important}.blue-grey-500-border-bottom{border-bottom-color:#607d8b!important}.blue-grey-500-border-left{border-left-color:#607d8b!important}.md-blue-grey-bg{background-color:#607d8b!important;color:#fff}.blue-grey-bg{background-color:#607d8b!important}.blue-grey-fg{color:#607d8b!important}.blue-grey-border{border-color:#607d8b!important}.blue-grey-border-top{border-top-color:#607d8b!important}.blue-grey-border-right{border-right-color:#607d8b!important}.blue-grey-border-bottom{border-bottom-color:#607d8b!important}.blue-grey-border-left{border-left-color:#607d8b!important}.blue-grey-600-bg{background-color:#546e7a!important}.md-blue-grey-600-bg{background-color:#546e7a!important;color:rgba(255,255,255,.87)}.blue-grey-600-fg{color:#546e7a!important}.blue-grey-600-border{border-color:#546e7a!important}.blue-grey-600-border-top{border-top-color:#546e7a!important}.blue-grey-600-border-right{border-right-color:#546e7a!important}.blue-grey-600-border-bottom{border-bottom-color:#546e7a!important}.blue-grey-600-border-left{border-left-color:#546e7a!important}.blue-grey-700-bg{background-color:#455a64!important}.md-blue-grey-700-bg{background-color:#455a64!important;color:rgba(255,255,255,.87)}.blue-grey-700-fg{color:#455a64!important}.blue-grey-700-border{border-color:#455a64!important}.blue-grey-700-border-top{border-top-color:#455a64!important}.blue-grey-700-border-right{border-right-color:#455a64!important}.blue-grey-700-border-bottom{border-bottom-color:#455a64!important}.blue-grey-700-border-left{border-left-color:#455a64!important}.blue-grey-800-bg{background-color:#37474f!important}.md-blue-grey-800-bg{background-color:#37474f!important;color:rgba(255,255,255,.87)}.blue-grey-800-fg{color:#37474f!important}.blue-grey-800-border{border-color:#37474f!important}.blue-grey-800-border-top{border-top-color:#37474f!important}.blue-grey-800-border-right{border-right-color:#37474f!important}.blue-grey-800-border-bottom{border-bottom-color:#37474f!important}.blue-grey-800-border-left{border-left-color:#37474f!important}.blue-grey-900-bg{background-color:#263238!important}.md-blue-grey-900-bg{background-color:#263238!important;color:rgba(255,255,255,.87)}.blue-grey-900-fg{color:#263238!important}.blue-grey-900-border{border-color:#263238!important}.blue-grey-900-border-top{border-top-color:#263238!important}.blue-grey-900-border-right{border-right-color:#263238!important}.blue-grey-900-border-bottom{border-bottom-color:#263238!important}.blue-grey-900-border-left{border-left-color:#263238!important}.blue-grey-A100-bg{background-color:#cfd8dc!important}.md-blue-grey-A100-bg{background-color:#cfd8dc!important;color:rgba(255,255,255,.87)}.blue-grey-A100-fg{color:#cfd8dc!important}.blue-grey-A100-border{border-color:#cfd8dc!important}.blue-grey-A100-border-top{border-top-color:#cfd8dc!important}.blue-grey-A100-border-right{border-right-color:#cfd8dc!important}.blue-grey-A100-border-bottom{border-bottom-color:#cfd8dc!important}.blue-grey-A100-border-left{border-left-color:#cfd8dc!important}.blue-grey-A200-bg{background-color:#b0bec5!important}.md-blue-grey-A200-bg{background-color:#b0bec5!important;color:rgba(255,255,255,.87)}.blue-grey-A200-fg{color:#b0bec5!important}.blue-grey-A200-border{border-color:#b0bec5!important}.blue-grey-A200-border-top{border-top-color:#b0bec5!important}.blue-grey-A200-border-right{border-right-color:#b0bec5!important}.blue-grey-A200-border-bottom{border-bottom-color:#b0bec5!important}.blue-grey-A200-border-left{border-left-color:#b0bec5!important}.blue-grey-A400-bg{background-color:#78909c!important}.md-blue-grey-A400-bg{background-color:#78909c!important;color:rgba(255,255,255,.87)}.blue-grey-A400-fg{color:#78909c!important}.blue-grey-A400-border{border-color:#78909c!important}.blue-grey-A400-border-top{border-top-color:#78909c!important}.blue-grey-A400-border-right{border-right-color:#78909c!important}.blue-grey-A400-border-bottom{border-bottom-color:#78909c!important}.blue-grey-A400-border-left{border-left-color:#78909c!important}.blue-grey-A700-bg{background-color:#455a64!important}.md-blue-grey-A700-bg{background-color:#455a64!important;color:rgba(255,255,255,.87)}.blue-grey-A700-fg{color:#455a64!important}.blue-grey-A700-border{border-color:#455a64!important}.blue-grey-A700-border-top{border-top-color:#455a64!important}.blue-grey-A700-border-right{border-right-color:#455a64!important}.blue-grey-A700-border-bottom{border-bottom-color:#455a64!important}.blue-grey-A700-border-left{border-left-color:#455a64!important}.white-500-bg{background-color:#fff!important}.md-white-500-bg{background-color:#fff!important;color:rgba(0,0,0,.87)}.white-500-fg{color:#fff!important}.white-500-border{border-color:#fff!important}.white-500-border-top{border-top-color:#fff!important}.white-500-border-right{border-right-color:#fff!important}.white-500-border-bottom{border-bottom-color:#fff!important}.white-500-border-left{border-left-color:#fff!important}.md-white-bg{background-color:#fff!important;color:rgba(0,0,0,.87)}.white-bg{background-color:#fff!important}.white-fg{color:#fff!important}.white-border{border-color:#fff!important}.white-border-top{border-top-color:#fff!important}.white-border-right{border-right-color:#fff!important}.white-border-bottom{border-bottom-color:#fff!important}.white-border-left{border-left-color:#fff!important}.black-500-bg{background-color:#000!important}.md-black-500-bg{background-color:#000!important;color:rgba(255,255,255,.87)}.black-500-fg{color:#000!important}.black-500-border{border-color:#000!important}.black-500-border-top{border-top-color:#000!important}.black-500-border-right{border-right-color:#000!important}.black-500-border-bottom{border-bottom-color:#000!important}.black-500-border-left{border-left-color:#000!important}.md-black-bg{background-color:#000!important;color:rgba(255,255,255,.87)}.black-bg{background-color:#000!important}.black-fg{color:#000!important}.black-border{border-color:#000!important}.black-border-top{border-top-color:#000!important}.black-border-right{border-right-color:#000!important}.black-border-bottom{border-bottom-color:#000!important}.black-border-left{border-left-color:#000!important}i,md-icon[md-font-icon]{font-size:24px;width:24px;height:24px;min-width:24px;min-height:24px;line-height:24px}i.s4,md-icon[md-font-icon].s4{font-size:4px!important;width:4px!important;height:4px!important;min-width:4px!important;min-height:4px!important;line-height:4px!important}i.s6,md-icon[md-font-icon].s6{font-size:6px!important;width:6px!important;height:6px!important;min-width:6px!important;min-height:6px!important;line-height:6px!important}i.s8,md-icon[md-font-icon].s8{font-size:8px!important;width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;line-height:8px!important}i.s10,md-icon[md-font-icon].s10{font-size:10px!important;width:10px!important;height:10px!important;min-width:10px!important;min-height:10px!important;line-height:10px!important}i.s12,md-icon[md-font-icon].s12{font-size:12px!important;width:12px!important;height:12px!important;min-width:12px!important;min-height:12px!important;line-height:12px!important}i.s14,md-icon[md-font-icon].s14{font-size:14px!important;width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;line-height:14px!important}i.s16,md-icon[md-font-icon].s16{font-size:16px!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;line-height:16px!important}i.s18,md-icon[md-font-icon].s18{font-size:18px!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;line-height:18px!important}i.s20,md-icon[md-font-icon].s20{font-size:20px!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;line-height:20px!important}i.s22,md-icon[md-font-icon].s22{font-size:22px!important;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;line-height:22px!important}i.s24,md-icon[md-font-icon].s24{font-size:24px!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;line-height:24px!important}i.s26,md-icon[md-font-icon].s26{font-size:26px!important;width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;line-height:26px!important}i.s28,md-icon[md-font-icon].s28{font-size:28px!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;line-height:28px!important}i.s30,md-icon[md-font-icon].s30{font-size:30px!important;width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;line-height:30px!important}i.s32,md-icon[md-font-icon].s32{font-size:32px!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;line-height:32px!important}i.s34,md-icon[md-font-icon].s34{font-size:34px!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;line-height:34px!important}i.s36,md-icon[md-font-icon].s36{font-size:36px!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;line-height:36px!important}i.s38,md-icon[md-font-icon].s38{font-size:38px!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;line-height:38px!important}i.s40,md-icon[md-font-icon].s40{font-size:40px!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;line-height:40px!important}i.s42,md-icon[md-font-icon].s42{font-size:42px!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;line-height:42px!important}i.s44,md-icon[md-font-icon].s44{font-size:44px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;line-height:44px!important}i.s46,md-icon[md-font-icon].s46{font-size:46px!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;line-height:46px!important}i.s48,md-icon[md-font-icon].s48{font-size:48px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;line-height:48px!important}i.s50,md-icon[md-font-icon].s50{font-size:50px!important;width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;line-height:50px!important}i.s52,md-icon[md-font-icon].s52{font-size:52px!important;width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;line-height:52px!important}i.s54,md-icon[md-font-icon].s54{font-size:54px!important;width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;line-height:54px!important}i.s56,md-icon[md-font-icon].s56{font-size:56px!important;width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;line-height:56px!important}i.s58,md-icon[md-font-icon].s58{font-size:58px!important;width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;line-height:58px!important}i.s60,md-icon[md-font-icon].s60{font-size:60px!important;width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;line-height:60px!important}i.s62,md-icon[md-font-icon].s62{font-size:62px!important;width:62px!important;height:62px!important;min-width:62px!important;min-height:62px!important;line-height:62px!important}i.s64,md-icon[md-font-icon].s64{font-size:64px!important;width:64px!important;height:64px!important;min-width:64px!important;min-height:64px!important;line-height:64px!important}i.s66,md-icon[md-font-icon].s66{font-size:66px!important;width:66px!important;height:66px!important;min-width:66px!important;min-height:66px!important;line-height:66px!important}i.s68,md-icon[md-font-icon].s68{font-size:68px!important;width:68px!important;height:68px!important;min-width:68px!important;min-height:68px!important;line-height:68px!important}i.s70,md-icon[md-font-icon].s70{font-size:70px!important;width:70px!important;height:70px!important;min-width:70px!important;min-height:70px!important;line-height:70px!important}i.s72,md-icon[md-font-icon].s72{font-size:72px!important;width:72px!important;height:72px!important;min-width:72px!important;min-height:72px!important;line-height:72px!important}i.s74,md-icon[md-font-icon].s74{font-size:74px!important;width:74px!important;height:74px!important;min-width:74px!important;min-height:74px!important;line-height:74px!important}i.s76,md-icon[md-font-icon].s76{font-size:76px!important;width:76px!important;height:76px!important;min-width:76px!important;min-height:76px!important;line-height:76px!important}i.s78,md-icon[md-font-icon].s78{font-size:78px!important;width:78px!important;height:78px!important;min-width:78px!important;min-height:78px!important;line-height:78px!important}i.s80,md-icon[md-font-icon].s80{font-size:80px!important;width:80px!important;height:80px!important;min-width:80px!important;min-height:80px!important;line-height:80px!important}i.s82,md-icon[md-font-icon].s82{font-size:82px!important;width:82px!important;height:82px!important;min-width:82px!important;min-height:82px!important;line-height:82px!important}i.s84,md-icon[md-font-icon].s84{font-size:84px!important;width:84px!important;height:84px!important;min-width:84px!important;min-height:84px!important;line-height:84px!important}i.s86,md-icon[md-font-icon].s86{font-size:86px!important;width:86px!important;height:86px!important;min-width:86px!important;min-height:86px!important;line-height:86px!important}i.s88,md-icon[md-font-icon].s88{font-size:88px!important;width:88px!important;height:88px!important;min-width:88px!important;min-height:88px!important;line-height:88px!important}i.s90,md-icon[md-font-icon].s90{font-size:90px!important;width:90px!important;height:90px!important;min-width:90px!important;min-height:90px!important;line-height:90px!important}i.s92,md-icon[md-font-icon].s92{font-size:92px!important;width:92px!important;height:92px!important;min-width:92px!important;min-height:92px!important;line-height:92px!important}i.s94,md-icon[md-font-icon].s94{font-size:94px!important;width:94px!important;height:94px!important;min-width:94px!important;min-height:94px!important;line-height:94px!important}i.s96,md-icon[md-font-icon].s96{font-size:96px!important;width:96px!important;height:96px!important;min-width:96px!important;min-height:96px!important;line-height:96px!important}i.s98,md-icon[md-font-icon].s98{font-size:98px!important;width:98px!important;height:98px!important;min-width:98px!important;min-height:98px!important;line-height:98px!important}i.s100,md-icon[md-font-icon].s100{font-size:100px!important;width:100px!important;height:100px!important;min-width:100px!important;min-height:100px!important;line-height:100px!important}i.s102,md-icon[md-font-icon].s102{font-size:102px!important;width:102px!important;height:102px!important;min-width:102px!important;min-height:102px!important;line-height:102px!important}i.s104,md-icon[md-font-icon].s104{font-size:104px!important;width:104px!important;height:104px!important;min-width:104px!important;min-height:104px!important;line-height:104px!important}i.s106,md-icon[md-font-icon].s106{font-size:106px!important;width:106px!important;height:106px!important;min-width:106px!important;min-height:106px!important;line-height:106px!important}i.s108,md-icon[md-font-icon].s108{font-size:108px!important;width:108px!important;height:108px!important;min-width:108px!important;min-height:108px!important;line-height:108px!important}i.s110,md-icon[md-font-icon].s110{font-size:110px!important;width:110px!important;height:110px!important;min-width:110px!important;min-height:110px!important;line-height:110px!important}i.s112,md-icon[md-font-icon].s112{font-size:112px!important;width:112px!important;height:112px!important;min-width:112px!important;min-height:112px!important;line-height:112px!important}i.s114,md-icon[md-font-icon].s114{font-size:114px!important;width:114px!important;height:114px!important;min-width:114px!important;min-height:114px!important;line-height:114px!important}i.s116,md-icon[md-font-icon].s116{font-size:116px!important;width:116px!important;height:116px!important;min-width:116px!important;min-height:116px!important;line-height:116px!important}i.s118,md-icon[md-font-icon].s118{font-size:118px!important;width:118px!important;height:118px!important;min-width:118px!important;min-height:118px!important;line-height:118px!important}i.s120,md-icon[md-font-icon].s120{font-size:120px!important;width:120px!important;height:120px!important;min-width:120px!important;min-height:120px!important;line-height:120px!important}i.s122,md-icon[md-font-icon].s122{font-size:122px!important;width:122px!important;height:122px!important;min-width:122px!important;min-height:122px!important;line-height:122px!important}i.s124,md-icon[md-font-icon].s124{font-size:124px!important;width:124px!important;height:124px!important;min-width:124px!important;min-height:124px!important;line-height:124px!important}i.s126,md-icon[md-font-icon].s126{font-size:126px!important;width:126px!important;height:126px!important;min-width:126px!important;min-height:126px!important;line-height:126px!important}i.s128,md-icon[md-font-icon].s128{font-size:128px!important;width:128px!important;height:128px!important;min-width:128px!important;min-height:128px!important;line-height:128px!important}i.s130,md-icon[md-font-icon].s130{font-size:130px!important;width:130px!important;height:130px!important;min-width:130px!important;min-height:130px!important;line-height:130px!important}i.s132,md-icon[md-font-icon].s132{font-size:132px!important;width:132px!important;height:132px!important;min-width:132px!important;min-height:132px!important;line-height:132px!important}i.s134,md-icon[md-font-icon].s134{font-size:134px!important;width:134px!important;height:134px!important;min-width:134px!important;min-height:134px!important;line-height:134px!important}i.s136,md-icon[md-font-icon].s136{font-size:136px!important;width:136px!important;height:136px!important;min-width:136px!important;min-height:136px!important;line-height:136px!important}i.s138,md-icon[md-font-icon].s138{font-size:138px!important;width:138px!important;height:138px!important;min-width:138px!important;min-height:138px!important;line-height:138px!important}i.s140,md-icon[md-font-icon].s140{font-size:140px!important;width:140px!important;height:140px!important;min-width:140px!important;min-height:140px!important;line-height:140px!important}i.s142,md-icon[md-font-icon].s142{font-size:142px!important;width:142px!important;height:142px!important;min-width:142px!important;min-height:142px!important;line-height:142px!important}i.s144,md-icon[md-font-icon].s144{font-size:144px!important;width:144px!important;height:144px!important;min-width:144px!important;min-height:144px!important;line-height:144px!important}i.s146,md-icon[md-font-icon].s146{font-size:146px!important;width:146px!important;height:146px!important;min-width:146px!important;min-height:146px!important;line-height:146px!important}i.s148,md-icon[md-font-icon].s148{font-size:148px!important;width:148px!important;height:148px!important;min-width:148px!important;min-height:148px!important;line-height:148px!important}i.s150,md-icon[md-font-icon].s150{font-size:150px!important;width:150px!important;height:150px!important;min-width:150px!important;min-height:150px!important;line-height:150px!important}i.s152,md-icon[md-font-icon].s152{font-size:152px!important;width:152px!important;height:152px!important;min-width:152px!important;min-height:152px!important;line-height:152px!important}i.s154,md-icon[md-font-icon].s154{font-size:154px!important;width:154px!important;height:154px!important;min-width:154px!important;min-height:154px!important;line-height:154px!important}i.s156,md-icon[md-font-icon].s156{font-size:156px!important;width:156px!important;height:156px!important;min-width:156px!important;min-height:156px!important;line-height:156px!important}i.s158,md-icon[md-font-icon].s158{font-size:158px!important;width:158px!important;height:158px!important;min-width:158px!important;min-height:158px!important;line-height:158px!important}i.s160,md-icon[md-font-icon].s160{font-size:160px!important;width:160px!important;height:160px!important;min-width:160px!important;min-height:160px!important;line-height:160px!important}i.s162,md-icon[md-font-icon].s162{font-size:162px!important;width:162px!important;height:162px!important;min-width:162px!important;min-height:162px!important;line-height:162px!important}i.s164,md-icon[md-font-icon].s164{font-size:164px!important;width:164px!important;height:164px!important;min-width:164px!important;min-height:164px!important;line-height:164px!important}i.s166,md-icon[md-font-icon].s166{font-size:166px!important;width:166px!important;height:166px!important;min-width:166px!important;min-height:166px!important;line-height:166px!important}i.s168,md-icon[md-font-icon].s168{font-size:168px!important;width:168px!important;height:168px!important;min-width:168px!important;min-height:168px!important;line-height:168px!important}i.s170,md-icon[md-font-icon].s170{font-size:170px!important;width:170px!important;height:170px!important;min-width:170px!important;min-height:170px!important;line-height:170px!important}i.s172,md-icon[md-font-icon].s172{font-size:172px!important;width:172px!important;height:172px!important;min-width:172px!important;min-height:172px!important;line-height:172px!important}i.s174,md-icon[md-font-icon].s174{font-size:174px!important;width:174px!important;height:174px!important;min-width:174px!important;min-height:174px!important;line-height:174px!important}i.s176,md-icon[md-font-icon].s176{font-size:176px!important;width:176px!important;height:176px!important;min-width:176px!important;min-height:176px!important;line-height:176px!important}i.s178,md-icon[md-font-icon].s178{font-size:178px!important;width:178px!important;height:178px!important;min-width:178px!important;min-height:178px!important;line-height:178px!important}i.s180,md-icon[md-font-icon].s180{font-size:180px!important;width:180px!important;height:180px!important;min-width:180px!important;min-height:180px!important;line-height:180px!important}i.s182,md-icon[md-font-icon].s182{font-size:182px!important;width:182px!important;height:182px!important;min-width:182px!important;min-height:182px!important;line-height:182px!important}i.s184,md-icon[md-font-icon].s184{font-size:184px!important;width:184px!important;height:184px!important;min-width:184px!important;min-height:184px!important;line-height:184px!important}i.s186,md-icon[md-font-icon].s186{font-size:186px!important;width:186px!important;height:186px!important;min-width:186px!important;min-height:186px!important;line-height:186px!important}i.s188,md-icon[md-font-icon].s188{font-size:188px!important;width:188px!important;height:188px!important;min-width:188px!important;min-height:188px!important;line-height:188px!important}i.s190,md-icon[md-font-icon].s190{font-size:190px!important;width:190px!important;height:190px!important;min-width:190px!important;min-height:190px!important;line-height:190px!important}i.s192,md-icon[md-font-icon].s192{font-size:192px!important;width:192px!important;height:192px!important;min-width:192px!important;min-height:192px!important;line-height:192px!important}i.s194,md-icon[md-font-icon].s194{font-size:194px!important;width:194px!important;height:194px!important;min-width:194px!important;min-height:194px!important;line-height:194px!important}i.s196,md-icon[md-font-icon].s196{font-size:196px!important;width:196px!important;height:196px!important;min-width:196px!important;min-height:196px!important;line-height:196px!important}i.s198,md-icon[md-font-icon].s198{font-size:198px!important;width:198px!important;height:198px!important;min-width:198px!important;min-height:198px!important;line-height:198px!important}i.s200,md-icon[md-font-icon].s200{font-size:200px!important;width:200px!important;height:200px!important;min-width:200px!important;min-height:200px!important;line-height:200px!important}i.s202,md-icon[md-font-icon].s202{font-size:202px!important;width:202px!important;height:202px!important;min-width:202px!important;min-height:202px!important;line-height:202px!important}i.s204,md-icon[md-font-icon].s204{font-size:204px!important;width:204px!important;height:204px!important;min-width:204px!important;min-height:204px!important;line-height:204px!important}i.s206,md-icon[md-font-icon].s206{font-size:206px!important;width:206px!important;height:206px!important;min-width:206px!important;min-height:206px!important;line-height:206px!important}i.s208,md-icon[md-font-icon].s208{font-size:208px!important;width:208px!important;height:208px!important;min-width:208px!important;min-height:208px!important;line-height:208px!important}i.s210,md-icon[md-font-icon].s210{font-size:210px!important;width:210px!important;height:210px!important;min-width:210px!important;min-height:210px!important;line-height:210px!important}i.s212,md-icon[md-font-icon].s212{font-size:212px!important;width:212px!important;height:212px!important;min-width:212px!important;min-height:212px!important;line-height:212px!important}i.s214,md-icon[md-font-icon].s214{font-size:214px!important;width:214px!important;height:214px!important;min-width:214px!important;min-height:214px!important;line-height:214px!important}i.s216,md-icon[md-font-icon].s216{font-size:216px!important;width:216px!important;height:216px!important;min-width:216px!important;min-height:216px!important;line-height:216px!important}i.s218,md-icon[md-font-icon].s218{font-size:218px!important;width:218px!important;height:218px!important;min-width:218px!important;min-height:218px!important;line-height:218px!important}i.s220,md-icon[md-font-icon].s220{font-size:220px!important;width:220px!important;height:220px!important;min-width:220px!important;min-height:220px!important;line-height:220px!important}i.s222,md-icon[md-font-icon].s222{font-size:222px!important;width:222px!important;height:222px!important;min-width:222px!important;min-height:222px!important;line-height:222px!important}i.s224,md-icon[md-font-icon].s224{font-size:224px!important;width:224px!important;height:224px!important;min-width:224px!important;min-height:224px!important;line-height:224px!important}i.s226,md-icon[md-font-icon].s226{font-size:226px!important;width:226px!important;height:226px!important;min-width:226px!important;min-height:226px!important;line-height:226px!important}i.s228,md-icon[md-font-icon].s228{font-size:228px!important;width:228px!important;height:228px!important;min-width:228px!important;min-height:228px!important;line-height:228px!important}i.s230,md-icon[md-font-icon].s230{font-size:230px!important;width:230px!important;height:230px!important;min-width:230px!important;min-height:230px!important;line-height:230px!important}i.s232,md-icon[md-font-icon].s232{font-size:232px!important;width:232px!important;height:232px!important;min-width:232px!important;min-height:232px!important;line-height:232px!important}i.s234,md-icon[md-font-icon].s234{font-size:234px!important;width:234px!important;height:234px!important;min-width:234px!important;min-height:234px!important;line-height:234px!important}i.s236,md-icon[md-font-icon].s236{font-size:236px!important;width:236px!important;height:236px!important;min-width:236px!important;min-height:236px!important;line-height:236px!important}i.s238,md-icon[md-font-icon].s238{font-size:238px!important;width:238px!important;height:238px!important;min-width:238px!important;min-height:238px!important;line-height:238px!important}i.s240,md-icon[md-font-icon].s240{font-size:240px!important;width:240px!important;height:240px!important;min-width:240px!important;min-height:240px!important;line-height:240px!important}i.s242,md-icon[md-font-icon].s242{font-size:242px!important;width:242px!important;height:242px!important;min-width:242px!important;min-height:242px!important;line-height:242px!important}i.s244,md-icon[md-font-icon].s244{font-size:244px!important;width:244px!important;height:244px!important;min-width:244px!important;min-height:244px!important;line-height:244px!important}i.s246,md-icon[md-font-icon].s246{font-size:246px!important;width:246px!important;height:246px!important;min-width:246px!important;min-height:246px!important;line-height:246px!important}i.s248,md-icon[md-font-icon].s248{font-size:248px!important;width:248px!important;height:248px!important;min-width:248px!important;min-height:248px!important;line-height:248px!important}i.s250,md-icon[md-font-icon].s250{font-size:250px!important;width:250px!important;height:250px!important;min-width:250px!important;min-height:250px!important;line-height:250px!important}i.s252,md-icon[md-font-icon].s252{font-size:252px!important;width:252px!important;height:252px!important;min-width:252px!important;min-height:252px!important;line-height:252px!important}i.s254,md-icon[md-font-icon].s254{font-size:254px!important;width:254px!important;height:254px!important;min-width:254px!important;min-height:254px!important;line-height:254px!important}i.s256,md-icon[md-font-icon].s256{font-size:256px!important;width:256px!important;height:256px!important;min-width:256px!important;min-height:256px!important;line-height:256px!important}@font-face{font-family:icomoon;src:url(../assets/icons/fonts/icomoon.eot?5km1tg);src:url(../assets/icons/fonts/icomoon.eot?#iefix5km1tg) format("embedded-opentype"),url(../assets/icons/fonts/icomoon.ttf?5km1tg) format("truetype"),url(../assets/icons/fonts/icomoon.woff?5km1tg) format("woff"),url(../assets/icons/fonts/icomoon.svg?5km1tg#icomoon) format("svg");font-weight:400;font-style:normal}[class*=" icon-"],[class^=icon-]{font-family:icomoon;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-account-alert:before{content:"\e600"}.icon-account-box-outline:before{content:"\e601"}.icon-account-box:before{content:"\e602"}.icon-account-check:before{content:"\e603"}.icon-account-circle:before{content:"\e604"}.icon-account-key:before{content:"\e605"}.icon-account-location:before{content:"\e606"}.icon-account-minus:before{content:"\e607"}.icon-account-multiple-outline:before{content:"\e608"}.icon-account-multiple-plus:before{content:"\e609"}.icon-account-multiple:before{content:"\e60a"}.icon-account-network:before{content:"\e60b"}.icon-account-outline:before{content:"\e60c"}.icon-account-plus:before{content:"\e60d"}.icon-account-remove:before{content:"\e60e"}.icon-account-search:before{content:"\e60f"}.icon-account-switch:before{content:"\e610"}.icon-account:before{content:"\e611"}.icon-airballoon:before{content:"\e612"}.icon-airplane-off:before{content:"\e613"}.icon-airplane:before{content:"\e614"}.icon-alarm-check:before{content:"\e615"}.icon-alarm-multiple:before{content:"\e616"}.icon-alarm-off:before{content:"\e617"}.icon-alarm-plus:before{content:"\e618"}.icon-alarm:before{content:"\e619"}.icon-album:before{content:"\e61a"}.icon-alert-box:before{content:"\e61b"}.icon-alert-circle:before{content:"\e61c"}.icon-alert-octagon:before{content:"\e61d"}.icon-alert:before{content:"\e61e"}.icon-alpha:before{content:"\e61f"}.icon-alphabetical:before{content:"\e620"}.icon-amazon-clouddrive:before{content:"\e621"}.icon-amazon:before{content:"\e622"}.icon-ambulance:before{content:"\e623"}.icon-android-debug-bridge:before{content:"\e624"}.icon-android-studio:before{content:"\e625"}.icon-android:before{content:"\e626"}.icon-apple-finder:before{content:"\e627"}.icon-apple-ios:before{content:"\e628"}.icon-apple-mobileme:before{content:"\e629"}.icon-apple-safari:before{content:"\e62a"}.icon-apple:before{content:"\e62b"}.icon-appnet:before{content:"\e62c"}.icon-apps:before{content:"\e62d"}.icon-archive:before{content:"\e62e"}.icon-arrange-bring-forward:before{content:"\e62f"}.icon-arrange-bring-to-front:before{content:"\e630"}.icon-arrange-send-backward:before{content:"\e631"}.icon-arrange-send-to-back:before{content:"\e632"}.icon-arrow-all:before{content:"\e633"}.icon-arrow-bottom-left:before{content:"\e634"}.icon-arrow-bottom-right:before{content:"\e635"}.icon-arrow-collapse:before{content:"\e636"}.icon-arrow-down-bold-circle-outline:before{content:"\e637"}.icon-arrow-down-bold-circle:before{content:"\e638"}.icon-arrow-down-bold-hexagon-outline:before{content:"\e639"}.icon-arrow-down-bold:before{content:"\e63a"}.icon-arrow-down:before{content:"\e63b"}.icon-arrow-expand:before{content:"\e63c"}.icon-arrow-left-bold-circle-outline:before{content:"\e63d"}.icon-arrow-left-bold-circle:before{content:"\e63e"}.icon-arrow-left-bold-hexagon-outline:before{content:"\e63f"}.icon-arrow-left-bold:before{content:"\e640"}.icon-arrow-left:before{content:"\e641"}.icon-arrow-right-bold-circle-outline:before{content:"\e642"}.icon-arrow-right-bold-circle:before{content:"\e643"}.icon-arrow-right-bold-hexagon-outline:before{content:"\e644"}.icon-arrow-right-bold:before{content:"\e645"}.icon-arrow-right:before{content:"\e646"}.icon-arrow-top-left:before{content:"\e647"}.icon-arrow-top-right:before{content:"\e648"}.icon-arrow-up-bold-circle-outline:before{content:"\e649"}.icon-arrow-up-bold-circle:before{content:"\e64a"}.icon-arrow-up-bold-hexagon-outline:before{content:"\e64b"}.icon-arrow-up-bold:before{content:"\e64c"}.icon-arrow-up:before{content:"\e64d"}.icon-at:before{content:"\e64e"}.icon-attachment:before{content:"\e64f"}.icon-audiobook:before{content:"\e650"}.icon-auto-fix:before{content:"\e651"}.icon-auto-upload:before{content:"\e652"}.icon-baby:before{content:"\e653"}.icon-backburger:before{content:"\e654"}.icon-backup-restore:before{content:"\e655"}.icon-bank:before{content:"\e656"}.icon-barcode:before{content:"\e657"}.icon-barley:before{content:"\e658"}.icon-barrel:before{content:"\e659"}.icon-basecamp:before{content:"\e65a"}.icon-basket-fill:before{content:"\e65b"}.icon-basket-unfill:before{content:"\e65c"}.icon-basket:before{content:"\e65d"}.icon-battery-10:before{content:"\e65e"}.icon-battery-20:before{content:"\e65f"}.icon-battery-30:before{content:"\e660"}.icon-battery-40:before{content:"\e661"}.icon-battery-50:before{content:"\e662"}.icon-battery-60:before{content:"\e663"}.icon-battery-70:before{content:"\e664"}.icon-battery-80:before{content:"\e665"}.icon-battery-90:before{content:"\e666"}.icon-battery-alert:before{content:"\e667"}.icon-battery-charging-20:before{content:"\e668"}.icon-battery-charging-30:before{content:"\e669"}.icon-battery-charging-40:before{content:"\e66a"}.icon-battery-charging-60:before{content:"\e66b"}.icon-battery-charging-80:before{content:"\e66c"}.icon-battery-charging-90:before{content:"\e66d"}.icon-battery-charging-100:before{content:"\e66e"}.icon-battery-minus:before{content:"\e66f"}.icon-battery-negative:before{content:"\e670"}.icon-battery-outline:before{content:"\e671"}.icon-battery-plus:before{content:"\e672"}.icon-battery-positive:before{content:"\e673"}.icon-battery-standard:before{content:"\e674"}.icon-battery-unknown:before{content:"\e675"}.icon-battery:before{content:"\e676"}.icon-beach:before{content:"\e677"}.icon-beaker-empty-outline:before{content:"\e678"}.icon-beaker-empty:before{content:"\e679"}.icon-beaker-outline:before{content:"\e67a"}.icon-beaker:before{content:"\e67b"}.icon-beats:before{content:"\e67c"}.icon-beer:before{content:"\e67d"}.icon-behance:before{content:"\e67e"}.icon-bell-off:before{content:"\e67f"}.icon-bell-outline:before{content:"\e680"}.icon-bell-ring-outline:before{content:"\e681"}.icon-bell-ring:before{content:"\e682"}.icon-bell-sleep:before{content:"\e683"}.icon-bell:before{content:"\e684"}.icon-beta:before{content:"\e685"}.icon-bike:before{content:"\e686"}.icon-bing:before{content:"\e687"}.icon-binoculars:before{content:"\e688"}.icon-bio:before{content:"\e689"}.icon-bitbucket:before{content:"\e68a"}.icon-black-mesa:before{content:"\e68b"}.icon-blackberry:before{content:"\e68c"}.icon-blinds:before{content:"\e68d"}.icon-block-helper:before{content:"\e68e"}.icon-blogger:before{content:"\e68f"}.icon-bluetooth-audio:before{content:"\e690"}.icon-bluetooth-connect:before{content:"\e691"}.icon-bluetooth-settings:before{content:"\e692"}.icon-bluetooth-transfer:before{content:"\e693"}.icon-bluetooth:before{content:"\e694"}.icon-blur-linear:before{content:"\e695"}.icon-blur-off:before{content:"\e696"}.icon-blur-radial:before{content:"\e697"}.icon-blur:before{content:"\e698"}.icon-bone:before{content:"\e699"}.icon-book-multiple-variant:before{content:"\e69a"}.icon-book-multiple:before{content:"\e69b"}.icon-book-open:before{content:"\e69c"}.icon-book-variant:before{content:"\e69d"}.icon-book:before{content:"\e69e"}.icon-bookmark-check:before{content:"\e69f"}.icon-bookmark-music:before{content:"\e6a0"}.icon-bookmark-outline-plus:before{content:"\e6a1"}.icon-bookmark-outline:before{content:"\e6a2"}.icon-bookmark-plus:before{content:"\e6a3"}.icon-bookmark-remove:before{content:"\e6a4"}.icon-bookmark:before{content:"\e6a5"}.icon-border-all:before{content:"\e6a6"}.icon-border-bottom:before{content:"\e6a7"}.icon-border-color:before{content:"\e6a8"}.icon-border-horizontal:before{content:"\e6a9"}.icon-border-inside:before{content:"\e6aa"}.icon-border-left:before{content:"\e6ab"}.icon-border-none:before{content:"\e6ac"}.icon-border-outside:before{content:"\e6ad"}.icon-border-right:before{content:"\e6ae"}.icon-border-top:before{content:"\e6af"}.icon-border-vertical:before{content:"\e6b0"}.icon-bowling:before{content:"\e6b1"}.icon-box-download:before{content:"\e6b2"}.icon-box-upload:before{content:"\e6b3"}.icon-box:before{content:"\e6b4"}.icon-briefcase-checked:before{content:"\e6b5"}.icon-briefcase-download:before{content:"\e6b6"}.icon-briefcase-upload:before{content:"\e6b7"}.icon-briefcase:before{content:"\e6b8"}.icon-brightness-1:before{content:"\e6b9"}.icon-brightness-2:before{content:"\e6ba"}.icon-brightness-3:before{content:"\e6bb"}.icon-brightness-4:before{content:"\e6bc"}.icon-brightness-5:before{content:"\e6bd"}.icon-brightness-6:before{content:"\e6be"}.icon-brightness-7:before{content:"\e6bf"}.icon-brightness-auto:before{content:"\e6c0"}.icon-brightness:before{content:"\e6c1"}.icon-broom:before{content:"\e6c2"}.icon-brush:before{content:"\e6c3"}.icon-bug:before{content:"\e6c4"}.icon-bulletin-board:before{content:"\e6c5"}.icon-bullhorn:before{content:"\e6c6"}.icon-bus:before{content:"\e6c7"}.icon-cake-variant:before{content:"\e6c8"}.icon-cake:before{content:"\e6c9"}.icon-calculator:before{content:"\e6ca"}.icon-calendar-blank:before{content:"\e6cb"}.icon-calendar-check-multiple:before{content:"\e6cc"}.icon-calendar-check:before{content:"\e6cd"}.icon-calendar-clock:before{content:"\e6ce"}.icon-calendar-multiple:before{content:"\e6cf"}.icon-calendar-plus:before{content:"\e6d0"}.icon-calendar-remove:before{content:"\e6d1"}.icon-calendar-select:before{content:"\e6d2"}.icon-calendar-text:before{content:"\e6d3"}.icon-calendar-today:before{content:"\e6d4"}.icon-calendar:before{content:"\e6d5"}.icon-camcorder-box-off:before{content:"\e6d6"}.icon-camcorder-box:before{content:"\e6d7"}.icon-camcorder-off:before{content:"\e6d8"}.icon-camcorder:before{content:"\e6d9"}.icon-camera-front-variant:before{content:"\e6da"}.icon-camera-front:before{content:"\e6db"}.icon-camera-iris:before{content:"\e6dc"}.icon-camera-party-mode:before{content:"\e6dd"}.icon-camera-rear-variant:before{content:"\e6de"}.icon-camera-rear:before{content:"\e6df"}.icon-camera-switch:before{content:"\e6e0"}.icon-camera-timer:before{content:"\e6e1"}.icon-camera:before{content:"\e6e2"}.icon-cancel:before{content:"\e6e3"}.icon-candycane:before{content:"\e6e4"}.icon-car-wash:before{content:"\e6e5"}.icon-car:before{content:"\e6e6"}.icon-carrot:before{content:"\e6e7"}.icon-cart-outline:before{content:"\e6e8"}.icon-cart:before{content:"\e6e9"}.icon-cash-100:before{content:"\e6ea"}.icon-cash-multiple:before{content:"\e6eb"}.icon-cash-usd:before{content:"\e6ec"}.icon-cash:before{content:"\e6ed"}.icon-cast-connected:before{content:"\e6ee"}.icon-cast:before{content:"\e6ef"}.icon-castle:before{content:"\e6f0"}.icon-cat:before{content:"\e6f1"}.icon-cellphone-android:before{content:"\e6f2"}.icon-cellphone-dock:before{content:"\e6f3"}.icon-cellphone-iphone:before{content:"\e6f4"}.icon-cellphone-link-off:before{content:"\e6f5"}.icon-cellphone-link:before{content:"\e6f6"}.icon-cellphone-settings:before{content:"\e6f7"}.icon-cellphone:before{content:"\e6f8"}.icon-chair-school:before{content:"\e6f9"}.icon-chart-arc:before{content:"\e6fa"}.icon-chart-areaspline:before{content:"\e6fb"}.icon-chart-bar:before{content:"\e6fc"}.icon-chart-histogram:before{content:"\e6fd"}.icon-chart-line:before{content:"\e6fe"}.icon-chart-pie:before{content:"\e6ff"}.icon-check-all:before{content:"\e700"}.icon-check-bookmark:before{content:"\e701"}.icon-check-circle:before{content:"\e702"}.icon-check:before{content:"\e703"}.icon-checkbox-blank-circle-outline:before{content:"\e704"}.icon-checkbox-blank-circle:before{content:"\e705"}.icon-checkbox-blank-outline:before{content:"\e706"}.icon-checkbox-blank:before{content:"\e707"}.icon-checkbox-marked-circle-outline:before{content:"\e708"}.icon-checkbox-marked-circle:before{content:"\e709"}.icon-checkbox-marked-outline:before{content:"\e70a"}.icon-checkbox-marked:before{content:"\e70b"}.icon-checkbox-multiple-blank-outline:before{content:"\e70c"}.icon-checkbox-multiple-blank:before{content:"\e70d"}.icon-checkbox-multiple-marked-outline:before{content:"\e70e"}.icon-checkbox-multiple-marked:before{content:"\e70f"}.icon-checkerboard:before{content:"\e710"}.icon-chevron-double-down:before{content:"\e711"}.icon-chevron-double-left:before{content:"\e712"}.icon-chevron-double-right:before{content:"\e713"}.icon-chevron-double-up:before{content:"\e714"}.icon-chevron-down:before{content:"\e715"}.icon-chevron-left:before{content:"\e716"}.icon-chevron-right:before{content:"\e717"}.icon-chevron-up:before{content:"\e718"}.icon-church:before{content:"\e719"}.icon-cisco-webex:before{content:"\e71a"}.icon-city:before{content:"\e71b"}.icon-clapperboard:before{content:"\e71c"}.icon-clipboard-account:before{content:"\e71d"}.icon-clipboard-alert:before{content:"\e71e"}.icon-clipboard-arrow-down:before{content:"\e71f"}.icon-clipboard-arrow-left:before{content:"\e720"}.icon-clipboard-check:before{content:"\e721"}.icon-clipboard-outline:before{content:"\e722"}.icon-clipboard-text:before{content:"\e723"}.icon-clipboard:before{content:"\e724"}.icon-clippy:before{content:"\e725"}.icon-clock-fast:before{content:"\e726"}.icon-clock:before{content:"\e727"}.icon-close-circle-outline:before{content:"\e728"}.icon-close-circle:before{content:"\e729"}.icon-close-network:before{content:"\e72a"}.icon-close:before{content:"\e72b"}.icon-closed-caption:before{content:"\e72c"}.icon-cloud-check:before{content:"\e72d"}.icon-cloud-circle:before{content:"\e72e"}.icon-cloud-download:before{content:"\e72f"}.icon-cloud-outline-off:before{content:"\e730"}.icon-cloud-outline:before{content:"\e731"}.icon-cloud-upload:before{content:"\e732"}.icon-cloud:before{content:"\e733"}.icon-code-array:before{content:"\e734"}.icon-code-braces:before{content:"\e735"}.icon-code-equal:before{content:"\e736"}.icon-code-greater-than-or-equal:before{content:"\e737"}.icon-code-greater-than:before{content:"\e738"}.icon-code-less-than-or-equal:before{content:"\e739"}.icon-code-less-than:before{content:"\e73a"}.icon-code-not-equal-variant:before{content:"\e73b"}.icon-code-not-equal:before{content:"\e73c"}.icon-code-string:before{content:"\e73d"}.icon-code-tags:before{content:"\e73e"}.icon-codepen:before{content:"\e73f"}.icon-coffee-to-go:before{content:"\e740"}.icon-coffee:before{content:"\e741"}.icon-cog-box:before{content:"\e742"}.icon-cog:before{content:"\e743"}.icon-coin:before{content:"\e744"}.icon-color-helper:before{content:"\e745"}.icon-comment-account-outline:before{content:"\e746"}.icon-comment-account:before{content:"\e747"}.icon-comment-alert-outline:before{content:"\e748"}.icon-comment-alert:before{content:"\e749"}.icon-comment-check-outline:before{content:"\e74a"}.icon-comment-check:before{content:"\e74b"}.icon-comment-multipe-outline:before{content:"\e74c"}.icon-comment-outline:before{content:"\e74d"}.icon-comment-plus-outline:before{content:"\e74e"}.icon-comment-processing-outline:before{content:"\e74f"}.icon-comment-processing:before{content:"\e750"}.icon-comment-remove-outline:before{content:"\e751"}.icon-comment-text-outline:before{content:"\e752"}.icon-comment-text:before{content:"\e753"}.icon-comment:before{content:"\e754"}.icon-compare:before{content:"\e755"}.icon-compass-outline:before{content:"\e756"}.icon-compass:before{content:"\e757"}.icon-console:before{content:"\e758"}.icon-content-copy:before{content:"\e759"}.icon-content-cut:before{content:"\e75a"}.icon-content-duplicate:before{content:"\e75b"}.icon-content-paste:before{content:"\e75c"}.icon-content-save-all:before{content:"\e75d"}.icon-content-save:before{content:"\e75e"}.icon-contrast-box:before{content:"\e75f"}.icon-contrast-circle:before{content:"\e760"}.icon-contrast:before{content:"\e761"}.icon-controller-xbox:before{content:"\e762"}.icon-cow:before{content:"\e763"}.icon-credit-card-multiple:before{content:"\e764"}.icon-credit-card:before{content:"\e765"}.icon-crop-free:before{content:"\e766"}.icon-crop-landscape:before{content:"\e767"}.icon-crop-portrait:before{content:"\e768"}.icon-crop-square:before{content:"\e769"}.icon-crop:before{content:"\e76a"}.icon-crosshairs-gps:before{content:"\e76b"}.icon-crosshairs:before{content:"\e76c"}.icon-crown:before{content:"\e76d"}.icon-cube-outline:before{content:"\e76e"}.icon-cube-unfolded:before{content:"\e76f"}.icon-cube:before{content:"\e770"}.icon-cup-water:before{content:"\e771"}.icon-cup:before{content:"\e772"}.icon-currency-btc:before{content:"\e773"}.icon-currency-eur:before{content:"\e774"}.icon-currency-gbp:before{content:"\e775"}.icon-currency-inr:before{content:"\e776"}.icon-currency-rub:before{content:"\e777"}.icon-currency-try:before{content:"\e778"}.icon-currency-usd:before{content:"\e779"}.icon-cursor-default-outline:before{content:"\e77a"}.icon-cursor-default:before{content:"\e77b"}.icon-cursor-move:before{content:"\e77c"}.icon-cursor-pointer:before{content:"\e77d"}.icon-data:before{content:"\e77e"}.icon-debug-step-into:before{content:"\e77f"}.icon-debug-step-out:before{content:"\e780"}.icon-debug-step-over:before{content:"\e781"}.icon-decimal-decrease:before{content:"\e782"}.icon-decimal-increase:before{content:"\e783"}.icon-delete-variant:before{content:"\e784"}.icon-delete:before{content:"\e785"}.icon-deskphone:before{content:"\e786"}.icon-desktop-mac:before{content:"\e787"}.icon-desktop-tower:before{content:"\e788"}.icon-details:before{content:"\e789"}.icon-deviantart:before{content:"\e78a"}.icon-diamond:before{content:"\e78b"}.icon-dice-1:before{content:"\e78c"}.icon-dice-2:before{content:"\e78d"}.icon-dice-3:before{content:"\e78e"}.icon-dice-4:before{content:"\e78f"}.icon-dice-5:before{content:"\e790"}.icon-dice-6:before{content:"\e791"}.icon-dice:before{content:"\e792"}.icon-directions:before{content:"\e793"}.icon-disk-alert:before{content:"\e794"}.icon-disqus-outline:before{content:"\e795"}.icon-disqus:before{content:"\e796"}.icon-division-box:before{content:"\e797"}.icon-division:before{content:"\e798"}.icon-dns:before{content:"\e799"}.icon-document:before{content:"\e79a"}.icon-domain:before{content:"\e79b"}.icon-dots-horizontal:before{content:"\e79c"}.icon-dots-vertical:before{content:"\e79d"}.icon-download:before{content:"\e79e"}.icon-drag-horizontal:before{content:"\e79f"}.icon-drag-vertical:before{content:"\e7a0"}.icon-drag:before{content:"\e7a1"}.icon-drawing-box:before{content:"\e7a2"}.icon-drawing:before{content:"\e7a3"}.icon-dribbble-box:before{content:"\e7a4"}.icon-dribbble:before{content:"\e7a5"}.icon-drone:before{content:"\e7a6"}.icon-dropbox:before{content:"\e7a7"}.icon-drupal:before{content:"\e7a8"}.icon-duck:before{content:"\e7a9"}.icon-dumbbell:before{content:"\e7aa"}.icon-earth-off:before{content:"\e7ab"}.icon-earth:before{content:"\e7ac"}.icon-ebay:before{content:"\e7ad"}.icon-edge:before{content:"\e7ae"}.icon-eject:before{content:"\e7af"}.icon-elevation-decline:before{content:"\e7b0"}.icon-elevation-rise:before{content:"\e7b1"}.icon-elevator:before{content:"\e7b2"}.icon-email-open:before{content:"\e7b3"}.icon-email-secure:before{content:"\e7b4"}.icon-email:before{content:"\e7b5"}.icon-emoticon-cool:before{content:"\e7b6"}.icon-emoticon-devil:before{content:"\e7b7"}.icon-emoticon-happy:before{content:"\e7b8"}.icon-emoticon-neutral:before{content:"\e7b9"}.icon-emoticon-poop:before{content:"\e7ba"}.icon-emoticon-sad:before{content:"\e7bb"}.icon-emoticon-tongue:before{content:"\e7bc"}.icon-emoticon:before{content:"\e7bd"}.icon-engine-outline:before{content:"\e7be"}.icon-engine:before{content:"\e7bf"}.icon-equal-box:before{content:"\e7c0"}.icon-equal:before{content:"\e7c1"}.icon-eraser:before{content:"\e7c2"}.icon-escalator:before{content:"\e7c3"}.icon-etsy:before{content:"\e7c4"}.icon-evernote:before{content:"\e7c5"}.icon-exclamation:before{content:"\e7c6"}.icon-exit-to-app:before{content:"\e7c7"}.icon-export:before{content:"\e7c8"}.icon-eye-off:before{content:"\e7c9"}.icon-eye:before{content:"\e7ca"}.icon-eyedropper-variant:before{content:"\e7cb"}.icon-eyedropper:before{content:"\e7cc"}.icon-facebook-box:before{content:"\e7cd"}.icon-facebook:before{content:"\e7ce"}.icon-factory:before{content:"\e7cf"}.icon-fan:before{content:"\e7d0"}.icon-fast-forward:before{content:"\e7d1"}.icon-ferry:before{content:"\e7d2"}.icon-file-cloud:before{content:"\e7d3"}.icon-file-delimited:before{content:"\e7d4"}.icon-file-document-box:before{content:"\e7d5"}.icon-file-document:before{content:"\e7d6"}.icon-file-excel-box:before{content:"\e7d7"}.icon-file-excel:before{content:"\e7d8"}.icon-file-find:before{content:"\e7d9"}.icon-file-hidden:before{content:"\e7da"}.icon-file-image-box:before{content:"\e7db"}.icon-file-image:before{content:"\e7dc"}.icon-file-multiple:before{content:"\e7dd"}.icon-file-music:before{content:"\e7de"}.icon-file-outline:before{content:"\e7df"}.icon-file-pdf-box:before{content:"\e7e0"}.icon-file-pdf:before{content:"\e7e1"}.icon-file-powerpoint-box:before{content:"\e7e2"}.icon-file-powerpoint:before{content:"\e7e3"}.icon-file-presentation-box:before{content:"\e7e4"}.icon-file-video:before{content:"\e7e5"}.icon-file-word-box:before{content:"\e7e6"}.icon-file-word:before{content:"\e7e7"}.icon-file-xml:before{content:"\e7e8"}.icon-file:before{content:"\e7e9"}.icon-fill:before{content:"\e7ea"}.icon-film:before{content:"\e7eb"}.icon-filmstrip-off:before{content:"\e7ec"}.icon-filmstrip:before{content:"\e7ed"}.icon-filter-outline:before{content:"\e7ee"}.icon-filter-remove-outline:before{content:"\e7ef"}.icon-filter-remove:before{content:"\e7f0"}.icon-filter-variant:before{content:"\e7f1"}.icon-filter:before{content:"\e7f2"}.icon-fire:before{content:"\e7f3"}.icon-fish:before{content:"\e7f4"}.icon-flag-checkered-variant:before{content:"\e7f5"}.icon-flag-checkered:before{content:"\e7f6"}.icon-flag-outline-variant:before{content:"\e7f7"}.icon-flag-outline:before{content:"\e7f8"}.icon-flag-triangle:before{content:"\e7f9"}.icon-flag-variant:before{content:"\e7fa"}.icon-flag:before{content:"\e7fb"}.icon-flash-auto:before{content:"\e7fc"}.icon-flash-off:before{content:"\e7fd"}.icon-flash:before{content:"\e7fe"}.icon-flashlight-off:before{content:"\e7ff"}.icon-flashlight:before{content:"\e800"}.icon-flattr:before{content:"\e801"}.icon-flickr-after:before{content:"\e802"}.icon-flickr-before:before{content:"\e803"}.icon-flip-to-back:before{content:"\e804"}.icon-flip-to-front:before{content:"\e805"}.icon-floppy:before{content:"\e806"}.icon-flower:before{content:"\e807"}.icon-folder-account:before{content:"\e808"}.icon-folder-download:before{content:"\e809"}.icon-folder-google-drive:before{content:"\e80a"}.icon-folder-image:before{content:"\e80b"}.icon-folder-lock-open:before{content:"\e80c"}.icon-folder-lock:before{content:"\e80d"}.icon-folder-move:before{content:"\e80e"}.icon-folder-multiple-image:before{content:"\e80f"}.icon-folder-multiple-outline:before{content:"\e810"}.icon-folder-multiple:before{content:"\e811"}.icon-folder-outline-lock:before{content:"\e812"}.icon-folder-outline:before{content:"\e813"}.icon-folder-plus:before{content:"\e814"}.icon-folder-remove:before{content:"\e815"}.icon-folder-upload:before{content:"\e816"}.icon-folder:before{content:"\e817"}.icon-food-apple:before{content:"\e818"}.icon-food-variant:before{content:"\e819"}.icon-food:before{content:"\e81a"}.icon-football-helmet:before{content:"\e81b"}.icon-football:before{content:"\e81c"}.icon-format-align-center:before{content:"\e81d"}.icon-format-align-justify:before{content:"\e81e"}.icon-format-align-left:before{content:"\e81f"}.icon-format-align-right:before{content:"\e820"}.icon-format-bold:before{content:"\e821"}.icon-format-clear:before{content:"\e822"}.icon-format-color-fill:before{content:"\e823"}.icon-format-color:before{content:"\e824"}.icon-format-float-center:before{content:"\e825"}.icon-format-float-left:before{content:"\e826"}.icon-format-float-none:before{content:"\e827"}.icon-format-float-right:before{content:"\e828"}.icon-format-header-1:before{content:"\e829"}.icon-format-header-2:before{content:"\e82a"}.icon-format-header-3:before{content:"\e82b"}.icon-format-header-4:before{content:"\e82c"}.icon-format-header-5:before{content:"\e82d"}.icon-format-header-6:before{content:"\e82e"}.icon-format-header-decrease:before{content:"\e82f"}.icon-format-header-down:before{content:"\e830"}.icon-format-header-equal:before{content:"\e831"}.icon-format-header-increase:before{content:"\e832"}.icon-format-header-pound:before{content:"\e833"}.icon-format-header-up:before{content:"\e834"}.icon-format-indent-decrease:before{content:"\e835"}.icon-format-indent-increase:before{content:"\e836"}.icon-format-italic:before{content:"\e837"}.icon-format-line-spacing:before{content:"\e838"}.icon-format-list-bulleted:before{content:"\e839"}.icon-format-list-numbers:before{content:"\e83a"}.icon-format-object-inline:before{content:"\e83b"}.icon-format-object-square:before{content:"\e83c"}.icon-format-object-tight:before{content:"\e83d"}.icon-format-object-top-bottom:before{content:"\e83e"}.icon-format-paint:before{content:"\e83f"}.icon-format-paragraph:before{content:"\e840"}.icon-format-quote:before{content:"\e841"}.icon-format-size:before{content:"\e842"}.icon-format-strikethrough:before{content:"\e843"}.icon-format-subscript:before{content:"\e844"}.icon-format-superscript:before{content:"\e845"}.icon-format-text:before{content:"\e846"}.icon-format-textdirection-l-to-r:before{content:"\e847"}.icon-format-textdirection-r-to-l:before{content:"\e848"}.icon-format-underline:before{content:"\e849"}.icon-forum:before{content:"\e84a"}.icon-forward:before{content:"\e84b"}.icon-foursquare:before{content:"\e84c"}.icon-fridge:before{content:"\e84d"}.icon-fullscreen-exit:before{content:"\e84e"}.icon-fullscreen:before{content:"\e84f"}.icon-function:before{content:"\e850"}.icon-gamepad-variant:before{content:"\e851"}.icon-gamepad:before{content:"\e852"}.icon-gas-station:before{content:"\e853"}.icon-gavel:before{content:"\e854"}.icon-gender-female:before{content:"\e855"}.icon-gender-male-female:before{content:"\e856"}.icon-gender-male:before{content:"\e857"}.icon-gender-transgender:before{content:"\e858"}.icon-gift:before{content:"\e859"}.icon-git:before{content:"\e85a"}.icon-github-box:before{content:"\e85b"}.icon-github:before{content:"\e85c"}.icon-glass-flute:before{content:"\e85d"}.icon-glass-mug:before{content:"\e85e"}.icon-glass-stange:before{content:"\e85f"}.icon-glass-tulip:before{content:"\e860"}.icon-glasses:before{content:"\e861"}.icon-gmail:before{content:"\e862"}.icon-google-chrome:before{content:"\e863"}.icon-google-circles-communities:before{content:"\e864"}.icon-google-circles-extended:before{content:"\e865"}.icon-google-circles-invite:before{content:"\e866"}.icon-google-circles:before{content:"\e867"}.icon-google-controller-off:before{content:"\e868"}.icon-google-controller:before{content:"\e869"}.icon-google-drive:before{content:"\e86a"}.icon-google-earth:before{content:"\e86b"}.icon-google-glass:before{content:"\e86c"}.icon-google-maps:before{content:"\e86d"}.icon-google-pages:before{content:"\e86e"}.icon-google-play:before{content:"\e86f"}.icon-google-plus-box:before{content:"\e870"}.icon-google-plus:before{content:"\e871"}.icon-google:before{content:"\e872"}.icon-grid-off:before{content:"\e873"}.icon-grid:before{content:"\e874"}.icon-group:before{content:"\e875"}.icon-hand-pointing-right:before{content:"\e876"}.icon-hanger:before{content:"\e877"}.icon-hangouts:before{content:"\e878"}.icon-harddisk:before{content:"\e879"}.icon-headphones-box:before{content:"\e87a"}.icon-headphones-dots:before{content:"\e87b"}.icon-headphones:before{content:"\e87c"}.icon-headset-dock:before{content:"\e87d"}.icon-headset-off:before{content:"\e87e"}.icon-headset:before{content:"\e87f"}.icon-heart-box-outline:before{content:"\e880"}.icon-heart-box:before{content:"\e881"}.icon-heart-broken:before{content:"\e882"}.icon-heart-outline:before{content:"\e883"}.icon-heart:before{content:"\e884"}.icon-help-circle:before{content:"\e885"}.icon-help:before{content:"\e886"}.icon-hexagon-outline:before{content:"\e887"}.icon-hexagon:before{content:"\e888"}.icon-history:before{content:"\e889"}.icon-hololens:before{content:"\e88a"}.icon-home-modern:before{content:"\e88b"}.icon-home-variant:before{content:"\e88c"}.icon-home:before{content:"\e88d"}.icon-hops:before{content:"\e88e"}.icon-hospital-building:before{content:"\e88f"}.icon-hospital-marker:before{content:"\e890"}.icon-hospital:before{content:"\e891"}.icon-hotel:before{content:"\e892"}.icon-houzz-box:before{content:"\e893"}.icon-human-child:before{content:"\e894"}.icon-human-male-female:before{content:"\e895"}.icon-human:before{content:"\e896"}.icon-image-album:before{content:"\e897"}.icon-image-area-close:before{content:"\e898"}.icon-image-area:before{content:"\e899"}.icon-image-broken:before{content:"\e89a"}.icon-image-filter-black-white:before{content:"\e89b"}.icon-image-filter-center-focus:before{content:"\e89c"}.icon-image-filter-drama:before{content:"\e89d"}.icon-image-filter-frames:before{content:"\e89e"}.icon-image-filter-hdr:before{content:"\e89f"}.icon-image-filter-none:before{content:"\e8a0"}.icon-image-filter-tilt-shift:before{content:"\e8a1"}.icon-image-filter-vintage:before{content:"\e8a2"}.icon-image-filter:before{content:"\e8a3"}.icon-image:before{content:"\e8a4"}.icon-import:before{content:"\e8a5"}.icon-inbox:before{content:"\e8a6"}.icon-indent:before{content:"\e8a7"}.icon-information-outline:before{content:"\e8a8"}.icon-information:before{content:"\e8a9"}.icon-instagram:before{content:"\e8aa"}.icon-instapaper:before{content:"\e8ab"}.icon-internet-explorer:before{content:"\e8ac"}.icon-invert-colors:before{content:"\e8ad"}.icon-jira:before{content:"\e8ae"}.icon-jsfiddle:before{content:"\e8af"}.icon-keg:before{content:"\e8b0"}.icon-key-change:before{content:"\e8b1"}.icon-key-minus:before{content:"\e8b2"}.icon-key-plus:before{content:"\e8b3"}.icon-key-remove:before{content:"\e8b4"}.icon-key-variant:before{content:"\e8b5"}.icon-key:before{content:"\e8b6"}.icon-keyboard-backspace:before{content:"\e8b7"}.icon-keyboard-caps:before{content:"\e8b8"}.icon-keyboard-close:before{content:"\e8b9"}.icon-keyboard-off:before{content:"\e8ba"}.icon-keyboard-return:before{content:"\e8bb"}.icon-keyboard-tab:before{content:"\e8bc"}.icon-keyboard-variant:before{content:"\e8bd"}.icon-keyboard:before{content:"\e8be"}.icon-label-outline:before{content:"\e8bf"}.icon-label:before{content:"\e8c0"}.icon-language-csharp:before{content:"\e8c1"}.icon-language-css3:before{content:"\e8c2"}.icon-language-html5:before{content:"\e8c3"}.icon-language-javascript:before{content:"\e8c4"}.icon-language-python-text:before{content:"\e8c5"}.icon-language-python:before{content:"\e8c6"}.icon-laptop-chromebook:before{content:"\e8c7"}.icon-laptop-mac:before{content:"\e8c8"}.icon-laptop-windows:before{content:"\e8c9"}.icon-laptop:before{content:"\e8ca"}.icon-lastfm:before{content:"\e8cb"}.icon-launch:before{content:"\e8cc"}.icon-layers-off:before{content:"\e8cd"}.icon-layers:before{content:"\e8ce"}.icon-leaf:before{content:"\e8cf"}.icon-library-books:before{content:"\e8d0"}.icon-library-music:before{content:"\e8d1"}.icon-library-plus:before{content:"\e8d2"}.icon-library:before{content:"\e8d3"}.icon-lightbulb-outline:before{content:"\e8d4"}.icon-lightbulb:before{content:"\e8d5"}.icon-link-off:before{content:"\e8d6"}.icon-link-variant-off:before{content:"\e8d7"}.icon-link-variant:before{content:"\e8d8"}.icon-link:before{content:"\e8d9"}.icon-linkedin-box:before{content:"\e8da"}.icon-linkedin:before{content:"\e8db"}.icon-linode:before{content:"\e8dc"}.icon-linux:before{content:"\e8dd"}.icon-lock-outline:before{content:"\e8de"}.icon-lock-unlocked-outline:before{content:"\e8df"}.icon-lock-unlocked:before{content:"\e8e0"}.icon-lock:before{content:"\e8e1"}.icon-login:before{content:"\e8e2"}.icon-logout:before{content:"\e8e3"}.icon-looks:before{content:"\e8e4"}.icon-loupe:before{content:"\e8e5"}.icon-lumx:before{content:"\e8e6"}.icon-magnet-on:before{content:"\e8e7"}.icon-magnet:before{content:"\e8e8"}.icon-magnify-minus:before{content:"\e8e9"}.icon-magnify-plus:before{content:"\e8ea"}.icon-magnify:before{content:"\e8eb"}.icon-mail-ru:before{content:"\e8ec"}.icon-map-marker-circle:before{content:"\e8ed"}.icon-map-marker-multiple:before{content:"\e8ee"}.icon-map-marker-off:before{content:"\e8ef"}.icon-map-marker-radius:before{content:"\e8f0"}.icon-map-marker:before{content:"\e8f1"}.icon-map:before{content:"\e8f2"}.icon-margin:before{content:"\e8f3"}.icon-markdown:before{content:"\e8f4"}.icon-marker-check:before{content:"\e8f5"}.icon-martini:before{content:"\e8f6"}.icon-material-ui:before{content:"\e8f7"}.icon-maxcdn:before{content:"\e8f8"}.icon-medium:before{content:"\e8f9"}.icon-memory:before{content:"\e8fa"}.icon-menu-down:before{content:"\e8fb"}.icon-menu-left:before{content:"\e8fc"}.icon-menu-right:before{content:"\e8fd"}.icon-menu-up:before{content:"\e8fe"}.icon-menu:before{content:"\e8ff"}.icon-message-alert:before{content:"\e900"}.icon-message-draw:before{content:"\e901"}.icon-message-image:before{content:"\e902"}.icon-message-processing:before{content:"\e903"}.icon-message-reply:before{content:"\e904"}.icon-message-text-outline:before{content:"\e905"}.icon-message-text:before{content:"\e906"}.icon-message-video:before{content:"\e907"}.icon-message:before{content:"\e908"}.icon-microphone-dots:before{content:"\e909"}.icon-microphone-off:before{content:"\e90a"}.icon-microphone-outline:before{content:"\e90b"}.icon-microphone-settings:before{content:"\e90c"}.icon-microphone-variant-off:before{content:"\e90d"}.icon-microphone-variant:before{content:"\e90e"}.icon-microphone:before{content:"\e90f"}.icon-minus-box:before{content:"\e910"}.icon-minus-circle-outline:before{content:"\e911"}.icon-minus-circle:before{content:"\e912"}.icon-minus-network:before{content:"\e913"}.icon-minus:before{content:"\e914"}.icon-monitor-multiple:before{content:"\e915"}.icon-monitor:before{content:"\e916"}.icon-more:before{content:"\e917"}.icon-mouse-off:before{content:"\e918"}.icon-mouse-variant-off:before{content:"\e919"}.icon-mouse-variant:before{content:"\e91a"}.icon-mouse:before{content:"\e91b"}.icon-movie:before{content:"\e91c"}.icon-multiplication-box:before{content:"\e91d"}.icon-multiplication:before{content:"\e91e"}.icon-music-box-outline:before{content:"\e91f"}.icon-music-box:before{content:"\e920"}.icon-music-circle:before{content:"\e921"}.icon-music-note-eighth:before{content:"\e922"}.icon-music-note-half:before{content:"\e923"}.icon-music-note-off:before{content:"\e924"}.icon-music-note-quarter:before{content:"\e925"}.icon-music-note-sixteenth:before{content:"\e926"}.icon-music-note-whole:before{content:"\e927"}.icon-music-note:before{content:"\e928"}.icon-nature-people:before{content:"\e929"}.icon-nature:before{content:"\e92a"}.icon-navigation:before{content:"\e92b"}.icon-needle:before{content:"\e92c"}.icon-nest-protect:before{content:"\e92d"}.icon-nest-thermostat:before{content:"\e92e"}.icon-newspaper:before{content:"\e92f"}.icon-nfc-tap:before{content:"\e930"}.icon-nfc-variant:before{content:"\e931"}.icon-nfc:before{content:"\e932"}.icon-no:before{content:"\e933"}.icon-not-equal:before{content:"\e934"}.icon-note-outline:before{content:"\e935"}.icon-note-text:before{content:"\e936"}.icon-note:before{content:"\e937"}.icon-numeric-0-box-multiple-outline:before{content:"\e938"}.icon-numeric-0-box-outline:before{content:"\e939"}.icon-numeric-0-box:before{content:"\e93a"}.icon-numeric-1-box-multiple-outline:before{content:"\e93b"}.icon-numeric-1-box-outline:before{content:"\e93c"}.icon-numeric-1-box:before{content:"\e93d"}.icon-numeric-2-box-multiple-outline:before{content:"\e93e"}.icon-numeric-2-box-outline:before{content:"\e93f"}.icon-numeric-2-box:before{content:"\e940"}.icon-numeric-3-box-multiple-outline:before{content:"\e941"}.icon-numeric-3-box-outline:before{content:"\e942"}.icon-numeric-3-box:before{content:"\e943"}.icon-numeric-4-box-multiple-outline:before{content:"\e944"}.icon-numeric-4-box-outline:before{content:"\e945"}.icon-numeric-4-box:before{content:"\e946"}.icon-numeric-5-box-multiple-outline:before{content:"\e947"}.icon-numeric-5-box-outline:before{content:"\e948"}.icon-numeric-5-box:before{content:"\e949"}.icon-numeric-6-box-multiple-outline:before{content:"\e94a"}.icon-numeric-6-box-outline:before{content:"\e94b"}.icon-numeric-6-box:before{content:"\e94c"}.icon-numeric-7-box-multiple-outline:before{content:"\e94d"}.icon-numeric-7-box-outline:before{content:"\e94e"}.icon-numeric-7-box:before{content:"\e94f"}.icon-numeric-8-box-multiple-outline:before{content:"\e950"}.icon-numeric-8-box-outline:before{content:"\e951"}.icon-numeric-8-box:before{content:"\e952"}.icon-numeric-9-box-multiple-outline:before{content:"\e953"}.icon-numeric-9-box-outline:before{content:"\e954"}.icon-numeric-9-box:before{content:"\e955"}.icon-numeric-9-plus-box-multiple-outline:before{content:"\e956"}.icon-numeric-9-plus-box-outline:before{content:"\e957"}.icon-numeric-9-plus-box:before{content:"\e958"}.icon-numeric:before{content:"\e959"}.icon-nutriton:before{content:"\e95a"}.icon-odnoklassniki:before{content:"\e95b"}.icon-office:before{content:"\e95c"}.icon-oil:before{content:"\e95d"}.icon-omega:before{content:"\e95e"}.icon-onedrive:before{content:"\e95f"}.icon-open-in-app:before{content:"\e960"}.icon-open-in-new:before{content:"\e961"}.icon-ornament-variant:before{content:"\e962"}.icon-ornament:before{content:"\e963"}.icon-outbox:before{content:"\e964"}.icon-outdent:before{content:"\e965"}.icon-owl:before{content:"\e966"}.icon-package-down:before{content:"\e967"}.icon-package-up:before{content:"\e968"}.icon-package-variant-closed:before{content:"\e969"}.icon-package-variant:before{content:"\e96a"}.icon-package:before{content:"\e96b"}.icon-palette-advanced:before{content:"\e96c"}.icon-palette:before{content:"\e96d"}.icon-panda:before{content:"\e96e"}.icon-pandora:before{content:"\e96f"}.icon-panorama-fisheye:before{content:"\e970"}.icon-panorama-horizontal:before{content:"\e971"}.icon-panorama-vertical:before{content:"\e972"}.icon-panorama-wide-angle:before{content:"\e973"}.icon-panorama:before{content:"\e974"}.icon-paper-cut-vertical:before{content:"\e975"}.icon-paperclip:before{content:"\e976"}.icon-parking:before{content:"\e977"}.icon-pause-circle-outline:before{content:"\e978"}.icon-pause-circle:before{content:"\e979"}.icon-pause-octagon-outline:before{content:"\e97a"}.icon-pause-octagon:before{content:"\e97b"}.icon-pause:before{content:"\e97c"}.icon-paw:before{content:"\e97d"}.icon-pen:before{content:"\e97e"}.icon-pencil-box-outline:before{content:"\e97f"}.icon-pencil-box:before{content:"\e980"}.icon-pencil:before{content:"\e981"}.icon-people:before{content:"\e982"}.icon-percent:before{content:"\e983"}.icon-person-box:before{content:"\e984"}.icon-person-minus:before{content:"\e985"}.icon-person-plus:before{content:"\e986"}.icon-pharmacy:before{content:"\e987"}.icon-phone-bluetooth:before{content:"\e988"}.icon-phone-dots:before{content:"\e989"}.icon-phone-forward:before{content:"\e98a"}.icon-phone-hangup:before{content:"\e98b"}.icon-phone-in-talk:before{content:"\e98c"}.icon-phone-incoming:before{content:"\e98d"}.icon-phone-locked:before{content:"\e98e"}.icon-phone-log:before{content:"\e98f"}.icon-phone-missed:before{content:"\e990"}.icon-phone-outgoing:before{content:"\e991"}.icon-phone-paused:before{content:"\e992"}.icon-phone:before{content:"\e993"}.icon-picture:before{content:"\e994"}.icon-pig:before{content:"\e995"}.icon-pill:before{content:"\e996"}.icon-pin-off:before{content:"\e997"}.icon-pin:before{content:"\e998"}.icon-pine-tree-box:before{content:"\e999"}.icon-pine-tree:before{content:"\e99a"}.icon-pinterest-box:before{content:"\e99b"}.icon-pinterest:before{content:"\e99c"}.icon-pizza:before{content:"\e99d"}.icon-plane:before{content:"\e99e"}.icon-play-box-outline:before{content:"\e99f"}.icon-play-circle-outline:before{content:"\e9a0"}.icon-play-circle:before{content:"\e9a1"}.icon-play:before{content:"\e9a2"}.icon-playlist-minus:before{content:"\e9a3"}.icon-playlist-plus:before{content:"\e9a4"}.icon-playstation:before{content:"\e9a5"}.icon-plus-box:before{content:"\e9a6"}.icon-plus-circle-outline:before{content:"\e9a7"}.icon-plus-circle:before{content:"\e9a8"}.icon-plus-network:before{content:"\e9a9"}.icon-plus-one:before{content:"\e9aa"}.icon-plus:before{content:"\e9ab"}.icon-pocket:before{content:"\e9ac"}.icon-poll-box:before{content:"\e9ad"}.icon-poll:before{content:"\e9ae"}.icon-polymer:before{content:"\e9af"}.icon-popcorn:before{content:"\e9b0"}.icon-pound-box:before{content:"\e9b1"}.icon-pound:before{content:"\e9b2"}.icon-power-settings:before{content:"\e9b3"}.icon-power-socket:before{content:"\e9b4"}.icon-power:before{content:"\e9b5"}.icon-presentation-play:before{content:"\e9b6"}.icon-presentation:before{content:"\e9b7"}.icon-printer-3d:before{content:"\e9b8"}.icon-printer:before{content:"\e9b9"}.icon-pulse:before{content:"\e9ba"}.icon-puzzle:before{content:"\e9bb"}.icon-qrcode:before{content:"\e9bc"}.icon-quadcopter:before{content:"\e9bd"}.icon-quality-high:before{content:"\e9be"}.icon-question-mark-circle:before{content:"\e9bf"}.icon-quick-reply:before{content:"\e9c0"}.icon-quicktime:before{content:"\e9c1"}.icon-rabbit:before{content:"\e9c2"}.icon-radiator:before{content:"\e9c3"}.icon-radio-tower:before{content:"\e9c4"}.icon-radio:before{content:"\e9c5"}.icon-radioactive:before{content:"\e9c6"}.icon-radiobox-blank:before{content:"\e9c7"}.icon-radiobox-marked:before{content:"\e9c8"}.icon-raspberrypi:before{content:"\e9c9"}.icon-rdio:before{content:"\e9ca"}.icon-read:before{content:"\e9cb"}.icon-readability:before{content:"\e9cc"}.icon-receipt:before{content:"\e9cd"}.icon-recycle:before{content:"\e9ce"}.icon-reddit:before{content:"\e9cf"}.icon-redo-variant:before{content:"\e9d0"}.icon-redo:before{content:"\e9d1"}.icon-refresh:before{content:"\e9d2"}.icon-relative-scale:before{content:"\e9d3"}.icon-reload:before{content:"\e9d4"}.icon-remote:before{content:"\e9d5"}.icon-rename-box:before{content:"\e9d6"}.icon-repeat-off:before{content:"\e9d7"}.icon-repeat-once:before{content:"\e9d8"}.icon-repeat:before{content:"\e9d9"}.icon-replay:before{content:"\e9da"}.icon-reply-all:before{content:"\e9db"}.icon-reply:before{content:"\e9dc"}.icon-reproduction:before{content:"\e9dd"}.icon-resize-bottom-right:before{content:"\e9de"}.icon-responsive:before{content:"\e9df"}.icon-restore:before{content:"\e9e0"}.icon-rewind:before{content:"\e9e1"}.icon-ribbon:before{content:"\e9e2"}.icon-road:before{content:"\e9e3"}.icon-rocket:before{content:"\e9e4"}.icon-rotate-3d:before{content:"\e9e5"}.icon-rotate-left-variant:before{content:"\e9e6"}.icon-rotate-left:before{content:"\e9e7"}.icon-rotate-right-variant:before{content:"\e9e8"}.icon-rotate-right:before{content:"\e9e9"}.icon-routes:before{content:"\e9ea"}.icon-rss-box:before{content:"\e9eb"}.icon-ruler:before{content:"\e9ec"}.icon-run:before{content:"\e9ed"}.icon-sale:before{content:"\e9ee"}.icon-satellite-variant:before{content:"\e9ef"}.icon-satellite:before{content:"\e9f0"}.icon-scale-bathroom:before{content:"\e9f1"}.icon-scale:before{content:"\e9f2"}.icon-school:before{content:"\e9f3"}.icon-screen-rotation-lock:before{content:"\e9f4"}.icon-screen-rotation:before{content:"\e9f5"}.icon-script:before{content:"\e9f6"}.icon-security-network:before{content:"\e9f7"}.icon-security:before{content:"\e9f8"}.icon-select-all:before{content:"\e9f9"}.icon-select-inverse:before{content:"\e9fa"}.icon-select-off:before{content:"\e9fb"}.icon-select:before{content:"\e9fc"}.icon-send:before{content:"\e9fd"}.icon-server-minus:before{content:"\e9fe"}.icon-server-network-off:before{content:"\e9ff"}.icon-server-network:before{content:"\ea00"}.icon-server-off:before{content:"\ea01"}.icon-server-plus:before{content:"\ea02"}.icon-server-remove:before{content:"\ea03"}.icon-server-security:before{content:"\ea04"}.icon-server:before{content:"\ea05"}.icon-shape-plus:before{content:"\ea06"}.icon-share-variant:before{content:"\ea07"}.icon-share:before{content:"\ea08"}.icon-shield-outline:before{content:"\ea09"}.icon-shield:before{content:"\ea0a"}.icon-shopping-music:before{content:"\ea0b"}.icon-shopping:before{content:"\ea0c"}.icon-shuffle:before{content:"\ea0d"}.icon-sigma:before{content:"\ea0e"}.icon-sign-caution:before{content:"\ea0f"}.icon-signal:before{content:"\ea10"}.icon-silverware-fork:before{content:"\ea11"}.icon-silverware-spoon:before{content:"\ea12"}.icon-silverware-variant:before{content:"\ea13"}.icon-silverware:before{content:"\ea14"}.icon-sim-alert:before{content:"\ea15"}.icon-sim:before{content:"\ea16"}.icon-sitemap:before{content:"\ea17"}.icon-skip-next:before{content:"\ea18"}.icon-skip-previous:before{content:"\ea19"}.icon-skype-business:before{content:"\ea1a"}.icon-skype:before{content:"\ea1b"}.icon-sleep-off:before{content:"\ea1c"}.icon-sleep:before{content:"\ea1d"}.icon-smoking-off:before{content:"\ea1e"}.icon-smoking:before{content:"\ea1f"}.icon-snapchat:before{content:"\ea20"}.icon-snowman:before{content:"\ea21"}.icon-sofa:before{content:"\ea22"}.icon-sort-alphabetical:before{content:"\ea23"}.icon-sort-ascending:before{content:"\ea24"}.icon-sort-descending:before{content:"\ea25"}.icon-sort-numeric:before{content:"\ea26"}.icon-sort-variant:before{content:"\ea27"}.icon-sort:before{content:"\ea28"}.icon-soundcloud:before{content:"\ea29"}.icon-source-fork:before{content:"\ea2a"}.icon-source-pull:before{content:"\ea2b"}.icon-speaker-off:before{content:"\ea2c"}.icon-speaker:before{content:"\ea2d"}.icon-speedometer:before{content:"\ea2e"}.icon-spellcheck:before{content:"\ea2f"}.icon-spotify:before{content:"\ea30"}.icon-spotlight-beam:before{content:"\ea31"}.icon-spotlight:before{content:"\ea32"}.icon-spreadsheet:before{content:"\ea33"}.icon-square-inc-cash:before{content:"\ea34"}.icon-square-inc:before{content:"\ea35"}.icon-stackoverflow:before{content:"\ea36"}.icon-star-circle:before{content:"\ea37"}.icon-star-half:before{content:"\ea38"}.icon-star-of-david:before{content:"\ea39"}.icon-star-outline:before{content:"\ea3a"}.icon-star:before{content:"\ea3b"}.icon-steam:before{content:"\ea3c"}.icon-stethoscope:before{content:"\ea3d"}.icon-stocking:before{content:"\ea3e"}.icon-stop:before{content:"\ea3f"}.icon-store-24-hour:before{content:"\ea40"}.icon-store:before{content:"\ea41"}.icon-stove:before{content:"\ea42"}.icon-subway:before{content:"\ea43"}.icon-sunglasses:before{content:"\ea44"}.icon-swap-horizontal:before{content:"\ea45"}.icon-swap-vertical:before{content:"\ea46"}.icon-swim:before{content:"\ea47"}.icon-sword:before{content:"\ea48"}.icon-sync-alert:before{content:"\ea49"}.icon-sync-off:before{content:"\ea4a"}.icon-sync:before{content:"\ea4b"}.icon-tab-unselected:before{content:"\ea4c"}.icon-tab:before{content:"\ea4d"}.icon-table-column-plus-after:before{content:"\ea4e"}.icon-table-column-plus-before:before{content:"\ea4f"}.icon-table-column-remove:before{content:"\ea50"}.icon-table-column-width:before{content:"\ea51"}.icon-table-edit:before{content:"\ea52"}.icon-table-large:before{content:"\ea53"}.icon-table-row-height:before{content:"\ea54"}.icon-table-row-plus-after:before{content:"\ea55"}.icon-table-row-plus-before:before{content:"\ea56"}.icon-table-row-remove:before{content:"\ea57"}.icon-table:before{content:"\ea58"}.icon-tablet-android:before{content:"\ea59"}.icon-tablet-ipad:before{content:"\ea5a"}.icon-tablet:before{content:"\ea5b"}.icon-tag-faces:before{content:"\ea5c"}.icon-tag-multiple:before{content:"\ea5d"}.icon-tag-outline:before{content:"\ea5e"}.icon-tag-text-outline:before{content:"\ea5f"}.icon-tag:before{content:"\ea60"}.icon-taxi:before{content:"\ea61"}.icon-teamviewer:before{content:"\ea62"}.icon-telegram:before{content:"\ea63"}.icon-television-guide:before{content:"\ea64"}.icon-television:before{content:"\ea65"}.icon-temperature-celsius:before{content:"\ea66"}.icon-temperature-fahrenheit:before{content:"\ea67"}.icon-temperature-kelvin:before{content:"\ea68"}.icon-tennis:before{content:"\ea69"}.icon-tent:before{content:"\ea6a"}.icon-terrain:before{content:"\ea6b"}.icon-text-to-speech-off:before{content:"\ea6c"}.icon-text-to-speech:before{content:"\ea6d"}.icon-texture:before{content:"\ea6e"}.icon-theater:before{content:"\ea6f"}.icon-theme-light-dark:before{content:"\ea70"}.icon-thermometer-lines:before{content:"\ea71"}.icon-thermometer:before{content:"\ea72"}.icon-thumb-down-outline:before{content:"\ea73"}.icon-thumb-down:before{content:"\ea74"}.icon-thumb-up-outline:before{content:"\ea75"}.icon-thumb-up:before{content:"\ea76"}.icon-thumbs-up-down:before{content:"\ea77"}.icon-ticket-account:before{content:"\ea78"}.icon-ticket:before{content:"\ea79"}.icon-tie:before{content:"\ea7a"}.icon-tile-four:before{content:"\ea7b"}.icon-timelapse:before{content:"\ea7c"}.icon-timer-3:before{content:"\ea7d"}.icon-timer-10:before{content:"\ea7e"}.icon-timer-off:before{content:"\ea7f"}.icon-timer-sand:before{content:"\ea80"}.icon-timer:before{content:"\ea81"}.icon-timetable:before{content:"\ea82"}.icon-toggle-switch-off:before{content:"\ea83"}.icon-toggle-switch-on:before{content:"\ea84"}.icon-tooltip-edit:before{content:"\ea85"}.icon-tooltip-image:before{content:"\ea86"}.icon-tooltip-outline-plus:before{content:"\ea87"}.icon-tooltip-outline:before{content:"\ea88"}.icon-tooltip-text:before{content:"\ea89"}.icon-tooltip:before{content:"\ea8a"}.icon-tor:before{content:"\ea8b"}.icon-traffic-light:before{content:"\ea8c"}.icon-train:before{content:"\ea8d"}.icon-tram:before{content:"\ea8e"}.icon-transcribe-close:before{content:"\ea8f"}.icon-transcribe:before{content:"\ea90"}.icon-transfer:before{content:"\ea91"}.icon-trash:before{content:"\ea92"}.icon-tree:before{content:"\ea93"}.icon-trello:before{content:"\ea94"}.icon-trending-down:before{content:"\ea95"}.icon-trending-neutral:before{content:"\ea96"}.icon-trending-up:before{content:"\ea97"}.icon-truck:before{content:"\ea98"}.icon-tshirt-crew:before{content:"\ea99"}.icon-tshirt-v:before{content:"\ea9a"}.icon-tumblr-reblog:before{content:"\ea9b"}.icon-tumblr:before{content:"\ea9c"}.icon-twitch:before{content:"\ea9d"}.icon-twitter-box:before{content:"\ea9e"}.icon-twitter-circle:before{content:"\ea9f"}.icon-twitter-retweet:before{content:"\eaa0"}.icon-twitter:before{content:"\eaa1"}.icon-ubuntu:before{content:"\eaa2"}.icon-umbrella-outline:before{content:"\eaa3"}.icon-umbrella:before{content:"\eaa4"}.icon-undo-variant:before{content:"\eaa5"}.icon-undo:before{content:"\eaa6"}.icon-unfold-less:before{content:"\eaa7"}.icon-unfold-more:before{content:"\eaa8"}.icon-ungroup:before{content:"\eaa9"}.icon-untappd:before{content:"\eaaa"}.icon-upload:before{content:"\eaab"}.icon-usb:before{content:"\eaac"}.icon-vector-curve:before{content:"\eaad"}.icon-vector-point:before{content:"\eaae"}.icon-vector-square:before{content:"\eaaf"}.icon-verified:before{content:"\eab0"}.icon-vibration:before{content:"\eab1"}.icon-video-off:before{content:"\eab2"}.icon-video-switch:before{content:"\eab3"}.icon-video:before{content:"\eab4"}.icon-view-agenda:before{content:"\eab5"}.icon-view-array:before{content:"\eab6"}.icon-view-carousel:before{content:"\eab7"}.icon-view-column:before{content:"\eab8"}.icon-view-dashboard:before{content:"\eab9"}.icon-view-day:before{content:"\eaba"}.icon-view-headline:before{content:"\eabb"}.icon-view-list:before{content:"\eabc"}.icon-view-module:before{content:"\eabd"}.icon-view-quilt:before{content:"\eabe"}.icon-view-stream:before{content:"\eabf"}.icon-view-week:before{content:"\eac0"}.icon-vimeo:before{content:"\eac1"}.icon-vine:before{content:"\eac2"}.icon-vk-box:before{content:"\eac3"}.icon-vk-circle:before{content:"\eac4"}.icon-vk:before{content:"\eac5"}.icon-voicemail:before{content:"\eac6"}.icon-volume-high:before{content:"\eac7"}.icon-volume-low:before{content:"\eac8"}.icon-volume-medium:before{content:"\eac9"}.icon-volume-off:before{content:"\eaca"}.icon-volume:before{content:"\eacb"}.icon-vpn:before{content:"\eacc"}.icon-walk:before{content:"\eacd"}.icon-wallet-giftcard:before{content:"\eace"}.icon-wallet-membership:before{content:"\eacf"}.icon-wallet-travel:before{content:"\ead0"}.icon-wallet:before{content:"\ead1"}.icon-washing-machine:before{content:"\ead2"}.icon-watch-export:before{content:"\ead3"}.icon-watch-import:before{content:"\ead4"}.icon-watch:before{content:"\ead5"}.icon-water-off:before{content:"\ead6"}.icon-water-pump:before{content:"\ead7"}.icon-water:before{content:"\ead8"}.icon-weather-cloudy:before{content:"\ead9"}.icon-weather-fog:before{content:"\eada"}.icon-weather-hail:before{content:"\eadb"}.icon-weather-lightning:before{content:"\eadc"}.icon-weather-night:before{content:"\eadd"}.icon-weather-partlycloudy:before{content:"\eade"}.icon-weather-pouring:before{content:"\eadf"}.icon-weather-rainy:before{content:"\eae0"}.icon-weather-snowy:before{content:"\eae1"}.icon-weather-sunny:before{content:"\eae2"}.icon-weather-sunset-down:before{content:"\eae3"}.icon-weather-sunset-up:before{content:"\eae4"}.icon-weather-sunset:before{content:"\eae5"}.icon-weather-windy-variant:before{content:"\eae6"}.icon-weather-windy:before{content:"\eae7"}.icon-web:before{content:"\eae8"}.icon-webcam:before{content:"\eae9"}.icon-weight-kilogram:before{content:"\eaea"}.icon-weight:before{content:"\eaeb"}.icon-whatsapp:before{content:"\eaec"}.icon-wheelchair-accessibility:before{content:"\eaed"}.icon-white-balance-auto:before{content:"\eaee"}.icon-white-balance-incandescent:before{content:"\eaef"}.icon-white-balance-irradescent:before{content:"\eaf0"}.icon-white-balance-sunny:before{content:"\eaf1"}.icon-wifi:before{content:"\eaf2"}.icon-wii:before{content:"\eaf3"}.icon-wikipedia:before{content:"\eaf4"}.icon-window-close:before{content:"\eaf5"}.icon-window-closed:before{content:"\eaf6"}.icon-window-maximize:before{content:"\eaf7"}.icon-window-minimize:before{content:"\eaf8"}.icon-window-open:before{content:"\eaf9"}.icon-window-restore:before{content:"\eafa"}.icon-windows:before{content:"\eafb"}.icon-wordpress:before{content:"\eafc"}.icon-worker:before{content:"\eafd"}.icon-wunderlist:before{content:"\eafe"}.icon-xbox-controller-off:before{content:"\eaff"}.icon-xbox-controller:before{content:"\eb00"}.icon-xbox:before{content:"\eb01"}.icon-xda:before{content:"\eb02"}.icon-xml:before{content:"\eb03"}.icon-yeast:before{content:"\eb04"}.icon-yelp:before{content:"\eb05"}.icon-youtube-play:before{content:"\eb06"}.icon-youtube:before{content:"\eb07"}.icon-zip-box:before{content:"\eb08"}.avatar{width:40px;min-width:40px;height:40px;line-height:40px;margin:0 8px 0 0;border-radius:50%;font-size:17px;font-weight:500;text-align:center;color:#fff}.avatar.square{border-radius:0}.avatar.small{width:20px;min-width:20px;height:20px;line-height:20px}.avatar.big{width:72px;min-width:72px;height:72px;line-height:72px}.avatar.huge{width:96px;min-width:96px;height:96px;line-height:96px}.form-wrapper{background:#fff;padding:16px}.form-wrapper .form-title{font-size:21px;padding:8px 0}.navigation-simple .item{position:relative;cursor:pointer;text-align:left;margin:0;padding:0 24px;text-transform:none;line-height:48px;max-height:48px;height:48px}.navigation-simple .item md-icon{margin:0 16px 0 0}.navigation-simple .item .title{font-size:13px;font-weight:500;line-height:1}.navigation-simple .item.selected{background-color:rgba(0,0,0,.06)}.navigation-simple .subheader{font-size:13px;border-top:1px solid rgba(0,0,0,.12);font-weight:500;margin-top:8px}.navigation-simple .subheader.light{border-top:1px solid rgba(255,255,255,.12)}.navigation-simple md-divider{margin:8px 0}.simple-pagination{position:relative;display:inline-flex;flex-direction:row;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);background-color:#fff;padding:0 8px}.simple-pagination .pagination-item{min-width:48px;min-height:56px;line-height:56px;border-radius:0;margin:0;font-weight:400;color:rgba(0,0,0,.54)}.simple-pagination .pagination-item:hover{color:rgba(0,0,0,.87)}.simple-pagination .pagination-item.active{cursor:default;color:rgba(0,0,0,.87)}.simple-pagination .pagination-item.disabled{cursor:default;color:rgba(0,0,0,.26)}.price-tables .price-table{position:relative;background-color:#fff;width:280px;border-radius:2px;margin:24px 24px 0 0;overflow:hidden}.price-tables .price-table.style-1 .package-type{font-size:17px;padding:16px 24px}.price-tables .price-table.style-1 .package-type .sale{font-size:13px;font-weight:600}.price-tables .price-table.style-1 .price{padding:32px 32px 16px 32px}.price-tables .price-table.style-1 .price .currency{padding-right:4px;font-size:24px;font-weight:500;color:rgba(0,0,0,.54)}.price-tables .price-table.style-1 .price .value{font-size:72px;font-weight:300;line-height:1}.price-tables .price-table.style-1 .price .period{padding:0 0 5px 4px;font-size:17px;color:rgba(0,0,0,.54)}.price-tables .price-table.style-1 md-divider{margin:16px 32px}.price-tables .price-table.style-1 .terms{padding:16px 32px;font-size:15px}.price-tables .price-table.style-1 .cta-button{margin:16px auto 32px auto;width:128px}.price-tables .price-table.style-2 .badge{position:absolute;top:0;left:50%;transform:translateX(-50%);font-size:11px;font-weight:500;padding:6px 8px}.price-tables .price-table.style-2 .package-type{padding:48px 32px 24px 32px;font-size:20px;font-weight:500;text-align:center}.price-tables .price-table.style-2 .price{padding:0 32px 8px 32px}.price-tables .price-table.style-2 .price .currency{padding-right:4px;font-size:24px;font-weight:500;color:rgba(0,0,0,.54)}.price-tables .price-table.style-2 .price .value{font-size:56px;font-weight:300;line-height:1}.price-tables .price-table.style-2 .period{padding:0 32px;font-size:15px;font-weight:500;color:rgba(0,0,0,.54);text-align:center}.price-tables .price-table.style-2 .terms{padding:32px;font-size:15px}.price-tables .price-table.style-2 .terms .term{padding-bottom:8px}.price-tables .price-table.style-2 .terms .term:last-child{padding-bottom:0}.price-tables .price-table.style-2 .cta-button{margin:8px auto 32px auto;width:128px}.price-tables .price-table.style-3 .package-type{padding:32px;text-align:center}.price-tables .price-table.style-3 .package-type .title{font-size:34px}.price-tables .price-table.style-3 .package-type .subtitle{font-size:17px;color:rgba(0,0,0,.54);font-weight:500}.price-tables .price-table.style-3 .price{padding:16px 32px}.price-tables .price-table.style-3 .price .currency{padding-right:4px;font-size:15px;font-weight:500}.price-tables .price-table.style-3 .price .value{font-size:34px;font-weight:300;line-height:1}.price-tables .price-table.style-3 .price .period{padding-left:4px;text-align:center}.price-tables .price-table.style-3 .terms{margin:32px;font-size:15px;color:rgba(0,0,0,.54)}.price-tables .price-table.style-3 .terms .term{padding-bottom:16px}.price-tables .price-table.style-3 .terms .term:last-child{padding-bottom:0}.price-tables .price-table.style-3 .cta-button{margin:8px 32px}.price-tables .price-table.style-3 .note{padding:8px 32px 16px 32px;text-align:center;color:rgba(0,0,0,.54)}.simple-table-container{background:#fff}.simple-table-container .table-title{font-size:20px;padding:24px}table.simple{width:100%;border:none;border-spacing:0;text-align:left}table.simple thead tr th{padding:16px 8px;font-weight:500;color:rgba(0,0,0,.54);border-bottom:1px solid rgba(0,0,0,.12);white-space:nowrap;min-width:120px}table.simple thead tr th:first-child{padding-left:24px}table.simple thead tr th:last-child{padding-right:24px}table.simple tbody tr td{padding:16px 8px;border-bottom:1px solid rgba(0,0,0,.12)}table.simple tbody tr td:first-child{padding-left:24px}table.simple tbody tr td:last-child{padding-right:24px}table.simple tbody tr:last-child td{border-bottom:none}table.simple.clickable tbody tr{cursor:pointer}table.simple.clickable tbody tr:hover{background:rgba(0,0,0,.03)}html{font-size:62.5%;font-family:Roboto,"Helvetica Neue",Arial,sans-serif;line-height:1.4;letter-spacing:-.1px}body{font-size:1.3rem}body,html{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}form{font-size:1.6rem}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-weight:400}.h1,h1{font-size:2.4rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.6rem}.h4,h4{font-size:1.4rem}.h5,h5{font-size:1.3rem}.h6,h6{font-size:1.2rem}a{text-decoration:none}a:active,a:hover{text-decoration:underline}abbr{cursor:help;border-bottom:1px dotted rgba(0,0,0,.54)}blockquote{border-left:3px solid rgba(0,0,0,.12);font-style:italic;margin:1em 0;padding-left:16px}blockquote footer{font-style:normal}blockquote footer:before{content:'\2014 \00A0'}blockquote.reverse{border-left:none;border-right:3px solid rgba(0,0,0,.12);text-align:right;padding-left:0;padding-right:16px}blockquote.reverse footer:before{content:''}blockquote.reverse footer:after{content:'\2014 \00A0'}code{font-family:Monaco,Menlo,Consolas,"Ubuntu Mono",monospace}code:not(.highlight){background:rgba(0,0,0,.065);color:#106cc8;margin:0 1px;padding:2px 3px;border-radius:2px}dl dt{font-weight:700}dl dd{margin:4px 0 16px 0}mark{background:#f7f49a}pre{line-height:1.6;margin:8px 16px;white-space:pre-wrap}small{font-size:80%}table thead tr th{text-align:left}.text-italic{font-style:italic}.text-semibold{font-weight:600}.text-bold,strong{font-weight:700}.text-strike{text-decoration:line-through}.text-super{vertical-align:super}.text-sub{vertical-align:sub}.text-capitalize{text-transform:capitalize}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-weight-100{font-weight:100}.font-weight-200{font-weight:200}.font-weight-300{font-weight:300}.font-weight-400{font-weight:400}.font-weight-500{font-weight:500}.font-weight-600{font-weight:600}.font-weight-700{font-weight:700}.font-weight-800{font-weight:800}.font-weight-900{font-weight:900}.font-size-2{font-size:2px}.font-size-4{font-size:4px}.font-size-6{font-size:6px}.font-size-8{font-size:8px}.font-size-10{font-size:10px}.font-size-12{font-size:12px}.font-size-14{font-size:14px}.font-size-16{font-size:16px}.font-size-18{font-size:18px}.font-size-20{font-size:20px}.font-size-22{font-size:22px}.font-size-24{font-size:24px}.font-size-26{font-size:26px}.font-size-28{font-size:28px}.font-size-30{font-size:30px}.font-size-32{font-size:32px}.font-size-34{font-size:34px}.font-size-36{font-size:36px}.font-size-38{font-size:38px}.font-size-40{font-size:40px}.font-size-42{font-size:42px}.font-size-44{font-size:44px}.font-size-46{font-size:46px}.font-size-48{font-size:48px}.font-size-50{font-size:50px}.font-size-52{font-size:52px}.font-size-54{font-size:54px}.font-size-56{font-size:56px}.font-size-58{font-size:58px}.font-size-60{font-size:60px}.font-size-62{font-size:62px}.font-size-64{font-size:64px}.font-size-66{font-size:66px}.font-size-68{font-size:68px}.font-size-70{font-size:70px}.font-size-72{font-size:72px}.font-size-74{font-size:74px}.font-size-76{font-size:76px}.font-size-78{font-size:78px}.font-size-80{font-size:80px}.font-size-82{font-size:82px}.font-size-84{font-size:84px}.font-size-86{font-size:86px}.font-size-88{font-size:88px}.font-size-90{font-size:90px}.font-size-92{font-size:92px}.font-size-94{font-size:94px}.font-size-96{font-size:96px}.font-size-98{font-size:98px}.font-size-100{font-size:100px}.font-size-102{font-size:102px}.font-size-104{font-size:104px}.font-size-106{font-size:106px}.font-size-108{font-size:108px}.font-size-110{font-size:110px}.font-size-112{font-size:112px}.font-size-114{font-size:114px}.font-size-116{font-size:116px}.font-size-118{font-size:118px}.font-size-120{font-size:120px}.line-height-2{line-height:2px}.line-height-4{line-height:4px}.line-height-6{line-height:6px}.line-height-8{line-height:8px}.line-height-10{line-height:10px}.line-height-12{line-height:12px}.line-height-14{line-height:14px}.line-height-16{line-height:16px}.line-height-18{line-height:18px}.line-height-20{line-height:20px}.line-height-22{line-height:22px}.line-height-24{line-height:24px}.line-height-26{line-height:26px}.line-height-28{line-height:28px}.line-height-30{line-height:30px}.line-height-32{line-height:32px}.line-height-34{line-height:34px}.line-height-36{line-height:36px}.line-height-38{line-height:38px}.line-height-40{line-height:40px}.line-height-42{line-height:42px}.line-height-44{line-height:44px}.line-height-46{line-height:46px}.line-height-48{line-height:48px}.line-height-50{line-height:50px}.line-height-52{line-height:52px}.line-height-54{line-height:54px}.line-height-56{line-height:56px}.line-height-58{line-height:58px}.line-height-60{line-height:60px}.line-height-62{line-height:62px}.line-height-64{line-height:64px}.line-height-66{line-height:66px}.line-height-68{line-height:68px}.line-height-70{line-height:70px}.line-height-72{line-height:72px}.line-height-74{line-height:74px}.line-height-76{line-height:76px}.line-height-78{line-height:78px}.line-height-80{line-height:80px}.line-height-82{line-height:82px}.line-height-84{line-height:84px}.line-height-86{line-height:86px}.line-height-88{line-height:88px}.line-height-90{line-height:90px}.line-height-92{line-height:92px}.line-height-94{line-height:94px}.line-height-96{line-height:96px}.line-height-98{line-height:98px}.line-height-100{line-height:100px}.line-height-102{line-height:102px}.line-height-104{line-height:104px}.line-height-106{line-height:106px}.line-height-108{line-height:108px}.line-height-110{line-height:110px}.line-height-112{line-height:112px}.line-height-114{line-height:114px}.line-height-116{line-height:116px}.line-height-118{line-height:118px}.line-height-120{line-height:120px}.text-boxed,.text-boxed-light{border-radius:2px;padding:4px 8px;margin:0 8px;font-size:11px;font-weight:500;color:rgba(0,0,0,.54);background-color:rgba(0,0,0,.12);white-space:nowrap}.text-boxed-light{background-color:rgba(255,255,255,.7)}.text-truncate{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-nowrap{white-space:nowrap}.angular-google-map-container{height:400px}.moment-picker .moment-picker-container{width:296px;border:none;border-radius:2px;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);margin-left:0;padding:8px}.moment-picker .moment-picker-container td,.moment-picker .moment-picker-container th{min-width:0;width:40px;height:40px;padding:8px;text-shadow:none;border-radius:35px}.moment-picker .moment-picker-container td:hover,.moment-picker .moment-picker-container th:hover{background:#f5f5f5;background-image:none}.moment-picker .moment-picker-container td.selected{background:#03a9f4;background-image:none}.moment-picker .moment-picker-container .header-view th{border-radius:0;white-space:nowrap;width:auto}.moment-picker .moment-picker-container .header-view th:first-child,.moment-picker .moment-picker-container .header-view th:last-child{width:20%}.c3{transition:all .3s ease}.c3 svg{font:12px RobotoDraft,Roboto,'Helvetica Neue',sans-serif}.c3 line,.c3 path{fill:none;stroke:#000}.c3 text{font-family:Roboto,"Helvetica Neue",Arial,sans-serif;user-select:none}.c3 .c3-bars path,.c3 .c3-event-rect,.c3 .c3-legend-item-tile,.c3 .c3-xgrid-focus,.c3 .c3-ygrid{shape-rendering:crispEdges}.c3 .c3-chart-line{transition:all .3s ease}.c3 .c3-line{stroke-width:1px}.c3.stroke-3 .c3-line{stroke-width:3px}.c3.stroke-2 .c3-line{stroke-width:2px}.c3 .c3-circle{transition:all .3s ease;stroke:#fff;stroke-width:2}.c3 .c3-circle._expanded_{stroke-width:3;stroke:#fff}.c3 .c3-chart-arc path{stroke:#fff}.c3 .c3-chart-arc text{fill:#fff;font-size:13px}.c3 .c3-grid line{stroke:rgba(0,0,0,.04);stroke-width:1px;stroke-dasharray:0}.c3 .c3-grid text{fill:#aaa}.c3 .c3-axis .tick{stroke-width:0}.c3 .c3-axis text{fill:rgba(0,0,0,.33)}.c3 .c3-axis line,.c3 .c3-axis path{stroke:rgba(0,0,0,.04)}.c3 .c3-xgrid,.c3 .c3-ygrid{stroke-dasharray:0 0}.c3 .c3-text.c3-empty{fill:grey;font-size:2em}.c3 .c3-bar{stroke-width:0}.c3 .c3-bar._expanded_{fill-opacity:.75}.c3 .c3-target.c3-focused{opacity:1}.c3 .c3-target.c3-focused .c3-target.c3-focused path.c3-step,.c3 .c3-target.c3-focused path.c3-line{stroke-width:3px;transition:all .3s ease}.c3 .c3-target.c3-defocused{opacity:.3!important}.c3 .c3-region{fill:#4682b4;fill-opacity:.1}.c3 .c3-brush .extent{fill-opacity:.1}.c3 .c3-legend-item{font-size:12px}.c3 .c3-legend-item-hidden{opacity:.15}.c3 .c3-legend-background{opacity:.75;fill:#fff;stroke:#d3d3d3;stroke-width:1}.c3 .c3-tooltip-container{z-index:10}.c3 .c3-tooltip{border-collapse:collapse;border-spacing:0;background-color:#fff;empty-cells:show;box-shadow:0 2px 4px -1px rgba(0,0,0,.14),0 4px 5px 0 rgba(0,0,0,.098),0 1px 10px 0 rgba(0,0,0,.084);opacity:1;border-radius:2px;overflow:hidden;padding:4px 0}.c3 .c3-tooltip tr{border:none}.c3 .c3-tooltip th{background-color:transparent;font-size:14px;font-weight:400;padding:8px 12px;text-align:left;color:rgba(0,0,0,.54)}.c3 .c3-tooltip td{font-size:13px;padding:4px 12px!important;background-color:#fff;border-left:none;color:rgba(0,0,0,.84)}.c3 .c3-tooltip td>span{display:inline-block;width:10px;height:10px;margin-right:6px}.c3 .c3-tooltip td.value{font-size:14px!important;text-align:right;color:rgba(0,0,0,.84)}.c3 .c3-area{stroke-width:0;opacity:.2}.c3 .c3-chart-arcs-title{dominant-baseline:middle;font-size:1.3em}.c3 .c3-chart-arcs .c3-chart-arcs-background{fill:#e0e0e0;stroke:none}.c3 .c3-chart-arcs .c3-chart-arcs-gauge-unit{fill:#000;font-size:16px}.c3 .c3-chart-arcs .c3-chart-arcs-gauge-max{fill:#777}.c3 .c3-chart-arcs .c3-chart-arcs-gauge-min{fill:#777}.c3 .c3-chart-arc .c3-gauge-value{fill:#000}.ct-label{font-size:13px}.ct-chart-donut .ct-label,.ct-chart-pie .ct-label{font-size:13px}.bar-legend,.chart-legend,.doughnut-legend,.line-legend,.pie-legend,.polararea-legend,.radar-legend{margin-top:15px}table.dataTable{width:100%;margin:0 auto;clear:both;border-spacing:0}table.dataTable thead tr{background:#fff}table.dataTable thead th{text-align:left;vertical-align:middle;border-bottom:1px solid rgba(0,0,0,.12);padding:16px 8px}table.dataTable thead th:first-child{padding-left:24px}table.dataTable thead th:last-child{border-right:none;padding-right:24px}table.dataTable thead th:active{outline:0}table.dataTable thead th.dt-head-left{text-align:left}table.dataTable thead th.dt-head-center{text-align:center}table.dataTable thead th.dt-head-right{text-align:right}table.dataTable thead th.dt-head-justify{text-align:justify}table.dataTable thead th.dt-head-nowrap{white-space:nowrap}table.dataTable thead th .table-header .column-title{display:block;font-weight:600;white-space:nowrap}table.dataTable thead th .table-header .selectize-control{margin-top:15px}table.dataTable thead th .table-header .selectize-control.single .selectize-input{padding:7px 10px}table.dataTable thead th .table-header .selectize-control.single .selectize-input:after{right:10px;border-width:5px 4px 0 4px;border-color:rgba(0,0,0,.12) transparent transparent transparent}table.dataTable thead th .table-header .column-search-input{display:inline-block;margin-top:15px;width:100%;height:33px}table.dataTable thead td{padding:15px;vertical-align:middle}table.dataTable thead td:active{outline:0}table.dataTable thead td.dt-head-left{text-align:left}table.dataTable thead td.dt-head-center{text-align:center}table.dataTable thead td.dt-head-right{text-align:right}table.dataTable thead td.dt-head-justify{text-align:justify}table.dataTable thead td.dt-head-nowrap{white-space:nowrap}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc{background:0 0}table.dataTable thead .sorting .table-header .column-title,table.dataTable thead .sorting_asc .table-header .column-title,table.dataTable thead .sorting_desc .table-header .column-title{cursor:pointer}table.dataTable thead .sorting .table-header .column-title:after,table.dataTable thead .sorting_asc .table-header .column-title:after,table.dataTable thead .sorting_desc .table-header .column-title:after{position:relative;font-family:icomoon;font-weight:400;margin-left:10px;top:2px;font-size:16px;color:rgba(0,0,0,.54)}table.dataTable thead .sorting .table-header .column-title:after{content:'\eaa8'}table.dataTable thead .sorting_asc .table-header .column-title:after{content:'\e718'}table.dataTable thead .sorting_desc .table-header .column-title:after{content:'\e715'}table.dataTable tfoot th{font-weight:600;text-align:left;padding:10px 18px 6px 18px;border-top:1px solid #111}table.dataTable tfoot th.dt-head-left{text-align:left}table.dataTable tfoot th.dt-head-center{text-align:center}table.dataTable tfoot th.dt-head-right{text-align:right}table.dataTable tfoot th.dt-head-justify{text-align:justify}table.dataTable tfoot th.dt-head-nowrap{white-space:nowrap}table.dataTable tfoot td{padding:10px 18px 6px 18px;border-top:1px solid #111}table.dataTable tfoot td.dt-head-left{text-align:left}table.dataTable tfoot td.dt-head-center{text-align:center}table.dataTable tfoot td.dt-head-right{text-align:right}table.dataTable tfoot td.dt-head-justify{text-align:justify}table.dataTable tfoot td.dt-head-nowrap{white-space:nowrap}table.dataTable tbody tr{background-color:#fff}table.dataTable tbody tr.selected{background-color:#b0bed9}table.dataTable tbody tr.details-open td.detail-column i{background:#fff}table.dataTable tbody tr.details-row.odd tr{background:#fff}table.dataTable tbody tr.details-row>td{padding:0}table.dataTable tbody th{padding:14px 15px;vertical-align:middle}table.dataTable tbody th.dt-body-left{text-align:left}table.dataTable tbody th.dt-body-center{text-align:center}table.dataTable tbody th.dt-body-right{text-align:right}table.dataTable tbody th.dt-body-justify{text-align:justify}table.dataTable tbody th.dt-body-nowrap{white-space:nowrap}table.dataTable tbody td{padding:16px 8px;vertical-align:middle}table.dataTable tbody td:first-child{padding-left:24px}table.dataTable tbody td:last-child{padding-right:24px}table.dataTable tbody td.dt-body-left{text-align:left}table.dataTable tbody td.dt-body-center{text-align:center}table.dataTable tbody td.dt-body-right{text-align:right}table.dataTable tbody td.dt-body-justify{text-align:justify}table.dataTable tbody td.dt-body-nowrap{white-space:nowrap}table.dataTable th.dt-left{text-align:left}table.dataTable th.dt-center{text-align:center}table.dataTable th.dt-right{text-align:right}table.dataTable th.dt-justify{text-align:justify}table.dataTable th.dt-nowrap{white-space:nowrap}table.dataTable td.dt-left{text-align:left}table.dataTable td.dt-center{text-align:center}table.dataTable td.dataTables_empty{height:51px;text-align:center}table.dataTable td.dt-right{text-align:right}table.dataTable td.dt-justify{text-align:justify}table.dataTable td.dt-nowrap{white-space:nowrap}table.dataTable.row-border thead{border-bottom:1px solid rgba(0,0,0,.12)}table.dataTable.row-border tbody tr:first-child th{border-top:none}table.dataTable.row-border tbody tr:first-child td{border-top:none}table.dataTable.row-border tbody tr:last-child td{border-bottom:1px solid rgba(0,0,0,.12)}table.dataTable.row-border tbody th{border-top:1px solid rgba(0,0,0,.12)}table.dataTable.row-border tbody td{border-top:1px solid rgba(0,0,0,.12)}table.dataTable.cell-border tbody tr:first-child th{border-top:none}table.dataTable.cell-border tbody tr:first-child td{border-top:none}table.dataTable.cell-border tbody th{border-top:1px solid rgba(0,0,0,.12);border-right:1px solid rgba(0,0,0,.12)}table.dataTable.cell-border tbody th:last-child{border-right:none}table.dataTable.cell-border tbody td{border-top:1px solid rgba(0,0,0,.12);border-right:1px solid rgba(0,0,0,.12)}table.dataTable.cell-border tbody td:last-child{border-right:none}table.dataTable.stripe tbody tr.odd{background-color:#fff}table.dataTable.stripe tbody tr.odd.selected{background-color:#abb9d3}table.dataTable.hover tbody tr:hover{background-color:#f5f5f5}table.dataTable.hover tbody tr:hover.selected{background-color:#a9b7d1}table.dataTable.hover tbody tr.odd:hover{background-color:#f5f5f5}table.dataTable.hover tbody tr.odd:hover.selected{background-color:#a9b7d1}table.dataTable.hover tbody tr.even:hover{background-color:#f5f5f5}table.dataTable.hover tbody tr.even:hover.selected{background-color:#a9b7d1}table.dataTable.order-column tbody tr>.sorting_1{background-color:#f9f9f9}table.dataTable.order-column tbody tr>.sorting_2{background-color:#f9f9f9}table.dataTable.order-column tbody tr>.sorting_3{background-color:#f9f9f9}table.dataTable.order-column tbody tr.selected>.sorting_1{background-color:#acbad4}table.dataTable.order-column tbody tr.selected>.sorting_2{background-color:#acbad4}table.dataTable.order-column tbody tr.selected>.sorting_3{background-color:#acbad4}table.dataTable.order-column.stripe tbody tr.odd>.sorting_1{background-color:#f1f1f1}table.dataTable.order-column.stripe tbody tr.odd>.sorting_2{background-color:#f3f3f3}table.dataTable.order-column.stripe tbody tr.odd>.sorting_3{background-color:#f5f5f5}table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_1{background-color:#a6b3cd}table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_2{background-color:#a7b5ce}table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_3{background-color:#a9b6d0}table.dataTable.order-column.stripe tbody tr.even>.sorting_1{background-color:#f9f9f9}table.dataTable.order-column.stripe tbody tr.even>.sorting_2{background-color:#fbfbfb}table.dataTable.order-column.stripe tbody tr.even>.sorting_3{background-color:#fdfdfd}table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_1{background-color:#acbad4}table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_2{background-color:#adbbd6}table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.order-column.hover tbody tr:hover>.sorting_1{background-color:#eaeaea}table.dataTable.order-column.hover tbody tr:hover>.sorting_2{background-color:#ebebeb}table.dataTable.order-column.hover tbody tr:hover>.sorting_3{background-color:#eee}table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{background-color:#a1aec7}table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{background-color:#a2afc8}table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{background-color:#a4b2cb}table.dataTable.order-column.hover tbody tr.odd:hover>.sorting_1{background-color:#eaeaea}table.dataTable.order-column.hover tbody tr.odd:hover>.sorting_2{background-color:#ebebeb}table.dataTable.order-column.hover tbody tr.odd:hover>.sorting_3{background-color:#eee}table.dataTable.order-column.hover tbody tr.odd:hover.selected>.sorting_1{background-color:#a1aec7}table.dataTable.order-column.hover tbody tr.odd:hover.selected>.sorting_2{background-color:#a2afc8}table.dataTable.order-column.hover tbody tr.odd:hover.selected>.sorting_3{background-color:#a4b2cb}table.dataTable.order-column.hover tbody tr.even:hover>.sorting_1{background-color:#eaeaea}table.dataTable.order-column.hover tbody tr.even:hover>.sorting_2{background-color:#ebebeb}table.dataTable.order-column.hover tbody tr.even:hover>.sorting_3{background-color:#eee}table.dataTable.order-column.hover tbody tr.even:hover.selected>.sorting_1{background-color:#a1aec7}table.dataTable.order-column.hover tbody tr.even:hover.selected>.sorting_2{background-color:#a2afc8}table.dataTable.order-column.hover tbody tr.even:hover.selected>.sorting_3{background-color:#a4b2cb}table.dataTable.no-footer{border-bottom:none}table.dataTable.nowrap th{white-space:nowrap}table.dataTable.nowrap td{white-space:nowrap}table.dataTable.compact thead th{padding:5px 9px}table.dataTable.compact thead td{padding:5px 9px}table.dataTable.compact tfoot th{padding:5px 9px 3px 9px}table.dataTable.compact tfoot td{padding:5px 9px 3px 9px}table.dataTable.compact tbody th{padding:4px 5px}table.dataTable.compact tbody td{padding:4px 5px}.dataTables_wrapper{display:flex;flex:1 0 auto;flex-direction:column;min-height:0}.dataTables_wrapper .top{padding:16px 24px}.dataTables_wrapper .bottom{display:flex;min-height:64px;justify-content:space-between;padding:16px 8px;border-top:1px solid rgba(0,0,0,.12)}.dataTables_wrapper .bottom .left{display:flex;flex:0 0 50%;max-width:50%;align-self:center;padding:0 8px}.dataTables_wrapper .bottom .left .length{display:block}.dataTables_wrapper .bottom .right{display:flex;flex:0 0 50%;max-width:50%;align-self:center;justify-content:flex-end;padding:0 8px}.dataTables_wrapper .bottom .right .info{display:block;align-self:center}.dataTables_wrapper .bottom .right .info .dataTables_info{padding:0 8px;font-weight:600}.dataTables_wrapper .bottom .right .pagination{display:block;align-self:center;white-space:nowrap}.dataTables_wrapper .bottom .right .pagination .dataTables_paginate{padding:0;margin:0!important}.dataTables_wrapper .dataTables_filter{float:right}.dataTables_wrapper .dataTables_filter input{margin-left:.5em;border:1px solid rgba(0,0,0,.12);height:24px;padding:4px 8px}.dataTables_wrapper .dataTables_paginate .paginate_button{background:#fff;color:rgba(0,0,0,.87);border:1px solid rgba(0,0,0,.12);padding:9px 12px;border-radius:2px;cursor:pointer;user-select:none;margin:0 2px}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{box-shadow:inset 999em 0 0 0 rgba(0,0,0,.05);color:rgba(0,0,0,.87)!important;border:1px solid rgba(0,0,0,.12)!important;background:0 0}.dataTables_wrapper .dataTables_paginate .paginate_button:active{box-shadow:inset 999em 0 0 0 rgba(0,0,0,.08),inset 0 1px 3px 0 rgba(0,0,0,.1),0 1px 0 0 rgba(255,255,255,.35)}.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover{color:rgba(0,0,0,.54)!important;border-color:rgba(0,0,0,.12)!important;background:#fff!important;box-shadow:none!important;cursor:default}.dataTables_wrapper .dataTables_processing{position:absolute;top:50%;left:50%;width:100%;height:40px;margin-left:-50%;margin-top:-25px;padding-top:20px;text-align:center;font-size:1.2em;background-color:#fff;background:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(255,255,255,0)),color-stop(25%,rgba(255,255,255,.9)),color-stop(75%,rgba(255,255,255,.9)),color-stop(100%,rgba(255,255,255,0)));background:-webkit-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:-moz-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:-o-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%)}.dataTables_wrapper .dataTables_scroll{display:flex;flex:1 1 0;flex-direction:column;clear:both;min-height:0}.dataTables_wrapper .dataTables_scroll table.dataTable{box-shadow:none}.dataTables_wrapper .dataTables_scroll table.dataTable.row-border thead{border:none}.dataTables_wrapper .dataTables_scroll .dataTables_scrollHead{display:flex;min-height:56px;box-shadow:0 0 0 1px rgba(0,0,0,.095),0 1px 1px 0 rgba(0,0,0,.1),0 2px 1px 0 rgba(0,0,0,.05);background:#fff;overflow:visible!important}.dataTables_wrapper .dataTables_scroll .dataTables_scrollHead tr th:last-child .table-header .column-title{position:relative;left:7px}.dataTables_wrapper .dataTables_scroll .dataTables_scrollBody{display:flex;overflow-x:hidden!important;overflow-y:scroll!important;-webkit-overflow-scrolling:touch}.dataTables_wrapper .dataTables_scroll .dataTables_scrollBody th>.dataTables_sizing{height:0;overflow:hidden;margin:0!important;padding:0!important}.dataTables_wrapper .dataTables_scroll .dataTables_scrollBody td>.dataTables_sizing{height:0;overflow:hidden;margin:0!important;padding:0!important}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:none}.dataTables_wrapper.no-footer .dataTables_scrollBody table,.dataTables_wrapper.no-footer .dataTables_scrollHead table{border-bottom:none}.dataTables_wrapper:after{visibility:hidden;display:block;content:"";clear:both;height:0}table.dataTable .show-details{padding:5px 10px;font-weight:700}table.dataTable .action-buttons{display:flex;justify-content:center}table.dataTable .action-buttons .button{padding:8px}.fullpage-datatable .dataTables_wrapper{height:100%;max-height:100%}.explorer-11 .fullpage-datatable .dataTables_scroll{flex:1}table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr>td:first-child,table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr>th:first-child{padding-left:40px}table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr>td:first-child:before,table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr>th:first-child:before{content:'+';width:15px;height:15px;line-height:15px;top:50%;margin-top:-7px;left:8px;color:rgba(0,0,0,.54);background:0 0;border:none;box-shadow:0 0 0 2px rgba(0,0,0,.54);font-weight:700}table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before,table.dataTable.dtr-inline.collapsed.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before{background:0 0}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul{display:block}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul li{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;border-bottom:1px solid rgba(0,0,0,.12);padding:8px 0}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul li:last-child{border-bottom:none;padding-bottom:0}table.dataTable.dtr-inline.collapsed>tbody>tr.child ul li .dtr-title{margin-right:8px}[hljs],hljs{display:block;overflow-x:auto;color:#333;background:#f8f8f8;-webkit-text-size-adjust:none}.diff .hljs-header,.hljs-comment{color:#998;font-style:italic}.css .rule .hljs-keyword,.hljs-keyword,.hljs-request,.hljs-status,.hljs-subst,.hljs-winutils,.nginx .hljs-title{color:#333;font-weight:700}.hljs-hexcolor,.hljs-number,.ruby .hljs-constant{color:teal}.hljs-doctag,.hljs-string,.hljs-tag .hljs-value,.tex .hljs-formula{color:#d14}.hljs-id,.hljs-title,.scss .hljs-preprocessor{color:#900;font-weight:700}.hljs-list .hljs-keyword,.hljs-subst{font-weight:400}.hljs-class .hljs-title,.hljs-type,.tex .hljs-command,.vhdl .hljs-literal{color:#458;font-weight:700}.django .hljs-tag .hljs-keyword,.hljs-rule .hljs-property,.hljs-tag,.hljs-tag .hljs-title{color:navy;font-weight:400}.hljs-attribute,.hljs-name,.hljs-variable,.lisp .hljs-body{color:teal}.hljs-regexp{color:#009926}.clojure .hljs-keyword,.hljs-prompt,.hljs-symbol,.lisp .hljs-keyword,.ruby .hljs-symbol .hljs-string,.scheme .hljs-keyword,.tex .hljs-special{color:#990073}.hljs-built_in{color:#0086b3}.hljs-cdata,.hljs-doctype,.hljs-pi,.hljs-pragma,.hljs-preprocessor,.hljs-shebang{color:#999;font-weight:700}.hljs-deletion{background:#fdd}.hljs-addition{background:#dfd}.diff .hljs-change{background:#0086b3}.hljs-chunk{color:#aaa}nvd3{display:block;width:100%;height:100%}nvd3.remove-x-lines .nv-x .tick line{display:none}nvd3.remove-y-lines .nv-y .tick line{display:none}nvd3.remove-line-stroke .nv-groups path.nv-line{stroke-width:0!important}nvd3.remove-opacity .nv-groups .nv-group{fill-opacity:1!important}nvd3.show-line-points .nv-line .nv-scatter .nv-groups .nv-point{fill-opacity:1!important;stroke-opacity:1!important}.nvd3 text{font-family:Roboto,"Helvetica Neue",Arial,sans-serif}.nvd3 line.nv-guideline{stroke:rgba(0,0,0,.54)}.nvd3 .nv-groups .nv-point.hover{stroke-width:3px!important;fill-opacity:1!important;stroke-opacity:1!important}.nvtooltip{background:0 0;color:#fff;padding:0;border:none}.nvtooltip.gravity-n:after{display:block;position:absolute;content:'';width:0;height:0;left:50%;bottom:100%;margin-left:-5px;border:5px solid transparent;border-bottom-color:rgba(0,0,0,.87)}.nvtooltip.gravity-s:after{display:block;position:absolute;content:'';width:0;height:0;top:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-top-color:rgba(0,0,0,.87)}.nvtooltip.gravity-e:after{display:block;position:absolute;content:'';width:0;height:0;top:50%;right:0;margin-top:-6px;margin-right:-11px;border:6px solid transparent;border-left-color:rgba(0,0,0,.87)}.nvtooltip.gravity-w:after{display:block;position:absolute;content:'';width:0;height:0;top:50%;margin-top:-6px;margin-left:-11px;border:6px solid transparent;border-right-color:rgba(0,0,0,.87)}.nvtooltip table{background:rgba(0,0,0,.87);padding:8px 12px;margin:0;border-radius:2px}.nvtooltip table tbody tr td.legend-color-guide div{border:none}.nvtooltip table tbody tr td:last-child{padding-right:0}.ps-container:hover .ps-in-scrolling{pointer-events:auto}.ps-container .ps-in-scrolling{pointer-events:auto}.ps-container>.ps-scrollbar-x-rail{background:0 0!important;margin:4px 0;height:4px;z-index:49}.ps-container>.ps-scrollbar-x-rail>.ps-scrollbar-x{height:4px}.ps-container>.ps-scrollbar-y-rail{background:0 0!important;margin:4px 0;width:4px;z-index:49}.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{width:4px}.ta-root{display:block}.ta-root .ta-scroll-window.form-control{border:1px solid rgba(0,0,0,.12)}.ta-root.focussed>.ta-scroll-window.form-control{outline:0 solid transparent;border:1px solid rgba(0,0,0,.12);box-shadow:none}.ta-root textarea.ta-editor.ta-html{resize:vertical;width:100%!important;border:1px solid rgba(0,0,0,.12);padding:16px}.ta-root .ta-toolbar{border:1px solid rgba(0,0,0,.12);border-bottom:none;background:#f5f5f5}.ta-root .ta-toolbar .ta-group{display:flex;align-items:center;align-content:center;flex-wrap:wrap}.ta-root .ta-toolbar .ta-group #toolbarCC,.ta-root .ta-toolbar .ta-group #toolbarWC{display:inline-block!important;line-height:24px}.ta-root .ta-toolbar .ta-group .md-button{width:40px;min-width:40px;line-height:14px;height:36px;min-height:36px;padding:6px;margin:4px 0}.ta-root .ta-toolbar .ta-group .md-button i{font-size:20px;width:20px;height:20px;line-height:20px}.ng-cloak,.x-ng-cloak,[data-ng-cloak],[ng-cloak],[ng\:cloak],[x-ng-cloak]{display:none!important}.no-padding{padding:0!important}.no-margin{margin:0!important}.no-radius{border-radius:0}.divider-vertical{background:rgba(0,0,0,.12);height:24px;width:1px;margin:0 8px}.hidden{visibility:hidden;opacity:0}[fill-width]{min-width:100%}[fill-height]{min-height:100%}.full-height{height:100%!important}a img{display:block;outline:0}img{max-width:100%;height:auto;vertical-align:top;border:none}.scrollable{display:block;position:relative;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.scrollable.only-x{overflow-x:auto;overflow-y:hidden}.scrollable.only-y{overflow-x:hidden;overflow-y:auto}.flex-scrollable{position:relative;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.flex-scrollable.only-x{overflow-x:auto;overflow-y:hidden}.flex-scrollable.only-y{overflow-x:hidden;overflow-y:auto}.background-image-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:-1}.align-vertical:before{display:inline-block;height:100%;content:'';vertical-align:middle}.align-vertical .align-vertical-bottom,.align-vertical .align-vertical-middle,.align-vertical .align-vertical-top{display:inline-block}.align-vertical .align-vertical-top{vertical-align:top}.align-vertical .align-vertical-middle{vertical-align:middle}.align-vertical .align-vertical-bottom{vertical-align:bottom}.p-0,.padding-0{padding:0}.padding-top-0,.pt-0{padding-top:0}.padding-right-0,.pr-0{padding-right:0}.padding-bottom-0,.pb-0{padding-bottom:0}.padding-left-0,.pl-0{padding-left:0}.padding-horizontal-0,.ph-0{padding-left:0;padding-right:0}.padding-vertical-0,.pv-0{padding-top:0;padding-bottom:0}.p-5,.padding-5{padding:5px}.padding-top-5,.pt-5{padding-top:5px}.padding-right-5,.pr-5{padding-right:5px}.padding-bottom-5,.pb-5{padding-bottom:5px}.padding-left-5,.pl-5{padding-left:5px}.padding-horizontal-5,.ph-5{padding-left:5px;padding-right:5px}.padding-vertical-5,.pv-5{padding-top:5px;padding-bottom:5px}.p-10,.padding-10{padding:10px}.padding-top-10,.pt-10{padding-top:10px}.padding-right-10,.pr-10{padding-right:10px}.padding-bottom-10,.pb-10{padding-bottom:10px}.padding-left-10,.pl-10{padding-left:10px}.padding-horizontal-10,.ph-10{padding-left:10px;padding-right:10px}.padding-vertical-10,.pv-10{padding-top:10px;padding-bottom:10px}.p-15,.padding-15{padding:15px}.padding-top-15,.pt-15{padding-top:15px}.padding-right-15,.pr-15{padding-right:15px}.padding-bottom-15,.pb-15{padding-bottom:15px}.padding-left-15,.pl-15{padding-left:15px}.padding-horizontal-15,.ph-15{padding-left:15px;padding-right:15px}.padding-vertical-15,.pv-15{padding-top:15px;padding-bottom:15px}.p-20,.padding-20{padding:20px}.padding-top-20,.pt-20{padding-top:20px}.padding-right-20,.pr-20{padding-right:20px}.padding-bottom-20,.pb-20{padding-bottom:20px}.padding-left-20,.pl-20{padding-left:20px}.padding-horizontal-20,.ph-20{padding-left:20px;padding-right:20px}.padding-vertical-20,.pv-20{padding-top:20px;padding-bottom:20px}.p-25,.padding-25{padding:25px}.padding-top-25,.pt-25{padding-top:25px}.padding-right-25,.pr-25{padding-right:25px}.padding-bottom-25,.pb-25{padding-bottom:25px}.padding-left-25,.pl-25{padding-left:25px}.padding-horizontal-25,.ph-25{padding-left:25px;padding-right:25px}.padding-vertical-25,.pv-25{padding-top:25px;padding-bottom:25px}.p-30,.padding-30{padding:30px}.padding-top-30,.pt-30{padding-top:30px}.padding-right-30,.pr-30{padding-right:30px}.padding-bottom-30,.pb-30{padding-bottom:30px}.padding-left-30,.pl-30{padding-left:30px}.padding-horizontal-30,.ph-30{padding-left:30px;padding-right:30px}.padding-vertical-30,.pv-30{padding-top:30px;padding-bottom:30px}.p-35,.padding-35{padding:35px}.padding-top-35,.pt-35{padding-top:35px}.padding-right-35,.pr-35{padding-right:35px}.padding-bottom-35,.pb-35{padding-bottom:35px}.padding-left-35,.pl-35{padding-left:35px}.padding-horizontal-35,.ph-35{padding-left:35px;padding-right:35px}.padding-vertical-35,.pv-35{padding-top:35px;padding-bottom:35px}.p-40,.padding-40{padding:40px}.padding-top-40,.pt-40{padding-top:40px}.padding-right-40,.pr-40{padding-right:40px}.padding-bottom-40,.pb-40{padding-bottom:40px}.padding-left-40,.pl-40{padding-left:40px}.padding-horizontal-40,.ph-40{padding-left:40px;padding-right:40px}.padding-vertical-40,.pv-40{padding-top:40px;padding-bottom:40px}.p-45,.padding-45{padding:45px}.padding-top-45,.pt-45{padding-top:45px}.padding-right-45,.pr-45{padding-right:45px}.padding-bottom-45,.pb-45{padding-bottom:45px}.padding-left-45,.pl-45{padding-left:45px}.padding-horizontal-45,.ph-45{padding-left:45px;padding-right:45px}.padding-vertical-45,.pv-45{padding-top:45px;padding-bottom:45px}.p-50,.padding-50{padding:50px}.padding-top-50,.pt-50{padding-top:50px}.padding-right-50,.pr-50{padding-right:50px}.padding-bottom-50,.pb-50{padding-bottom:50px}.padding-left-50,.pl-50{padding-left:50px}.padding-horizontal-50,.ph-50{padding-left:50px;padding-right:50px}.padding-vertical-50,.pv-50{padding-top:50px;padding-bottom:50px}.p-55,.padding-55{padding:55px}.padding-top-55,.pt-55{padding-top:55px}.padding-right-55,.pr-55{padding-right:55px}.padding-bottom-55,.pb-55{padding-bottom:55px}.padding-left-55,.pl-55{padding-left:55px}.padding-horizontal-55,.ph-55{padding-left:55px;padding-right:55px}.padding-vertical-55,.pv-55{padding-top:55px;padding-bottom:55px}.p-60,.padding-60{padding:60px}.padding-top-60,.pt-60{padding-top:60px}.padding-right-60,.pr-60{padding-right:60px}.padding-bottom-60,.pb-60{padding-bottom:60px}.padding-left-60,.pl-60{padding-left:60px}.padding-horizontal-60,.ph-60{padding-left:60px;padding-right:60px}.padding-vertical-60,.pv-60{padding-top:60px;padding-bottom:60px}.p-65,.padding-65{padding:65px}.padding-top-65,.pt-65{padding-top:65px}.padding-right-65,.pr-65{padding-right:65px}.padding-bottom-65,.pb-65{padding-bottom:65px}.padding-left-65,.pl-65{padding-left:65px}.padding-horizontal-65,.ph-65{padding-left:65px;padding-right:65px}.padding-vertical-65,.pv-65{padding-top:65px;padding-bottom:65px}.p-70,.padding-70{padding:70px}.padding-top-70,.pt-70{padding-top:70px}.padding-right-70,.pr-70{padding-right:70px}.padding-bottom-70,.pb-70{padding-bottom:70px}.padding-left-70,.pl-70{padding-left:70px}.padding-horizontal-70,.ph-70{padding-left:70px;padding-right:70px}.padding-vertical-70,.pv-70{padding-top:70px;padding-bottom:70px}.p-75,.padding-75{padding:75px}.padding-top-75,.pt-75{padding-top:75px}.padding-right-75,.pr-75{padding-right:75px}.padding-bottom-75,.pb-75{padding-bottom:75px}.padding-left-75,.pl-75{padding-left:75px}.padding-horizontal-75,.ph-75{padding-left:75px;padding-right:75px}.padding-vertical-75,.pv-75{padding-top:75px;padding-bottom:75px}.p-80,.padding-80{padding:80px}.padding-top-80,.pt-80{padding-top:80px}.padding-right-80,.pr-80{padding-right:80px}.padding-bottom-80,.pb-80{padding-bottom:80px}.padding-left-80,.pl-80{padding-left:80px}.padding-horizontal-80,.ph-80{padding-left:80px;padding-right:80px}.padding-vertical-80,.pv-80{padding-top:80px;padding-bottom:80px}.p-85,.padding-85{padding:85px}.padding-top-85,.pt-85{padding-top:85px}.padding-right-85,.pr-85{padding-right:85px}.padding-bottom-85,.pb-85{padding-bottom:85px}.padding-left-85,.pl-85{padding-left:85px}.padding-horizontal-85,.ph-85{padding-left:85px;padding-right:85px}.padding-vertical-85,.pv-85{padding-top:85px;padding-bottom:85px}.p-90,.padding-90{padding:90px}.padding-top-90,.pt-90{padding-top:90px}.padding-right-90,.pr-90{padding-right:90px}.padding-bottom-90,.pb-90{padding-bottom:90px}.padding-left-90,.pl-90{padding-left:90px}.padding-horizontal-90,.ph-90{padding-left:90px;padding-right:90px}.padding-vertical-90,.pv-90{padding-top:90px;padding-bottom:90px}.p-95,.padding-95{padding:95px}.padding-top-95,.pt-95{padding-top:95px}.padding-right-95,.pr-95{padding-right:95px}.padding-bottom-95,.pb-95{padding-bottom:95px}.padding-left-95,.pl-95{padding-left:95px}.padding-horizontal-95,.ph-95{padding-left:95px;padding-right:95px}.padding-vertical-95,.pv-95{padding-top:95px;padding-bottom:95px}.p-100,.padding-100{padding:100px}.padding-top-100,.pt-100{padding-top:100px}.padding-right-100,.pr-100{padding-right:100px}.padding-bottom-100,.pb-100{padding-bottom:100px}.padding-left-100,.pl-100{padding-left:100px}.padding-horizontal-100,.ph-100{padding-left:100px;padding-right:100px}.padding-vertical-100,.pv-100{padding-top:100px;padding-bottom:100px}.p-8,.padding-8{padding:8px}.padding-top-8,.pt-8{padding-top:8px}.padding-right-8,.pr-8{padding-right:8px}.padding-bottom-8,.pb-8{padding-bottom:8px}.padding-left-8,.pl-8{padding-left:8px}.padding-horizontal-8,.ph-8{padding-left:8px;padding-right:8px}.padding-vertical-8,.pv-8{padding-top:8px;padding-bottom:8px}.p-16,.padding-16{padding:16px}.padding-top-16,.pt-16{padding-top:16px}.padding-right-16,.pr-16{padding-right:16px}.padding-bottom-16,.pb-16{padding-bottom:16px}.padding-left-16,.pl-16{padding-left:16px}.padding-horizontal-16,.ph-16{padding-left:16px;padding-right:16px}.padding-vertical-16,.pv-16{padding-top:16px;padding-bottom:16px}.p-24,.padding-24{padding:24px}.padding-top-24,.pt-24{padding-top:24px}.padding-right-24,.pr-24{padding-right:24px}.padding-bottom-24,.pb-24{padding-bottom:24px}.padding-left-24,.pl-24{padding-left:24px}.padding-horizontal-24,.ph-24{padding-left:24px;padding-right:24px}.padding-vertical-24,.pv-24{padding-top:24px;padding-bottom:24px}.p-32,.padding-32{padding:32px}.padding-top-32,.pt-32{padding-top:32px}.padding-right-32,.pr-32{padding-right:32px}.padding-bottom-32,.pb-32{padding-bottom:32px}.padding-left-32,.pl-32{padding-left:32px}.padding-horizontal-32,.ph-32{padding-left:32px;padding-right:32px}.padding-vertical-32,.pv-32{padding-top:32px;padding-bottom:32px}.p-48,.padding-48{padding:48px}.padding-top-48,.pt-48{padding-top:48px}.padding-right-48,.pr-48{padding-right:48px}.padding-bottom-48,.pb-48{padding-bottom:48px}.padding-left-48,.pl-48{padding-left:48px}.padding-horizontal-48,.ph-48{padding-left:48px;padding-right:48px}.padding-vertical-48,.pv-48{padding-top:48px;padding-bottom:48px}.p-56,.padding-56{padding:56px}.padding-top-56,.pt-56{padding-top:56px}.padding-right-56,.pr-56{padding-right:56px}.padding-bottom-56,.pb-56{padding-bottom:56px}.padding-left-56,.pl-56{padding-left:56px}.padding-horizontal-56,.ph-56{padding-left:56px;padding-right:56px}.padding-vertical-56,.pv-56{padding-top:56px;padding-bottom:56px}.p-64,.padding-64{padding:64px}.padding-top-64,.pt-64{padding-top:64px}.padding-right-64,.pr-64{padding-right:64px}.padding-bottom-64,.pb-64{padding-bottom:64px}.padding-left-64,.pl-64{padding-left:64px}.padding-horizontal-64,.ph-64{padding-left:64px;padding-right:64px}.padding-vertical-64,.pv-64{padding-top:64px;padding-bottom:64px}.p-72,.padding-72{padding:72px}.padding-top-72,.pt-72{padding-top:72px}.padding-right-72,.pr-72{padding-right:72px}.padding-bottom-72,.pb-72{padding-bottom:72px}.padding-left-72,.pl-72{padding-left:72px}.padding-horizontal-72,.ph-72{padding-left:72px;padding-right:72px}.padding-vertical-72,.pv-72{padding-top:72px;padding-bottom:72px}.p-88,.padding-88{padding:88px}.padding-top-88,.pt-88{padding-top:88px}.padding-right-88,.pr-88{padding-right:88px}.padding-bottom-88,.pb-88{padding-bottom:88px}.padding-left-88,.pl-88{padding-left:88px}.padding-horizontal-88,.ph-88{padding-left:88px;padding-right:88px}.padding-vertical-88,.pv-88{padding-top:88px;padding-bottom:88px}.p-96,.padding-96{padding:96px}.padding-top-96,.pt-96{padding-top:96px}.padding-right-96,.pr-96{padding-right:96px}.padding-bottom-96,.pb-96{padding-bottom:96px}.padding-left-96,.pl-96{padding-left:96px}.padding-horizontal-96,.ph-96{padding-left:96px;padding-right:96px}.padding-vertical-96,.pv-96{padding-top:96px;padding-bottom:96px}.m-0,.margin-0{margin:0}.margin-top-0,.mt-0{margin-top:0}.margin-right-0,.mr-0{margin-right:0}.margin-bottom-0,.mb-0{margin-bottom:0}.margin-left-0,.ml-0{margin-left:0}.margin-horizontal-0,.mh-0{margin-left:0;margin-right:0}.margin-vertical-0,.mv-0{margin-top:0;margin-bottom:0}.m-5,.margin-5{margin:5px}.margin-top-5,.mt-5{margin-top:5px}.margin-right-5,.mr-5{margin-right:5px}.margin-bottom-5,.mb-5{margin-bottom:5px}.margin-left-5,.ml-5{margin-left:5px}.margin-horizontal-5,.mh-5{margin-left:5px;margin-right:5px}.margin-vertical-5,.mv-5{margin-top:5px;margin-bottom:5px}.m-10,.margin-10{margin:10px}.margin-top-10,.mt-10{margin-top:10px}.margin-right-10,.mr-10{margin-right:10px}.margin-bottom-10,.mb-10{margin-bottom:10px}.margin-left-10,.ml-10{margin-left:10px}.margin-horizontal-10,.mh-10{margin-left:10px;margin-right:10px}.margin-vertical-10,.mv-10{margin-top:10px;margin-bottom:10px}.m-15,.margin-15{margin:15px}.margin-top-15,.mt-15{margin-top:15px}.margin-right-15,.mr-15{margin-right:15px}.margin-bottom-15,.mb-15{margin-bottom:15px}.margin-left-15,.ml-15{margin-left:15px}.margin-horizontal-15,.mh-15{margin-left:15px;margin-right:15px}.margin-vertical-15,.mv-15{margin-top:15px;margin-bottom:15px}.m-20,.margin-20{margin:20px}.margin-top-20,.mt-20{margin-top:20px}.margin-right-20,.mr-20{margin-right:20px}.margin-bottom-20,.mb-20{margin-bottom:20px}.margin-left-20,.ml-20{margin-left:20px}.margin-horizontal-20,.mh-20{margin-left:20px;margin-right:20px}.margin-vertical-20,.mv-20{margin-top:20px;margin-bottom:20px}.m-25,.margin-25{margin:25px}.margin-top-25,.mt-25{margin-top:25px}.margin-right-25,.mr-25{margin-right:25px}.margin-bottom-25,.mb-25{margin-bottom:25px}.margin-left-25,.ml-25{margin-left:25px}.margin-horizontal-25,.mh-25{margin-left:25px;margin-right:25px}.margin-vertical-25,.mv-25{margin-top:25px;margin-bottom:25px}.m-30,.margin-30{margin:30px}.margin-top-30,.mt-30{margin-top:30px}.margin-right-30,.mr-30{margin-right:30px}.margin-bottom-30,.mb-30{margin-bottom:30px}.margin-left-30,.ml-30{margin-left:30px}.margin-horizontal-30,.mh-30{margin-left:30px;margin-right:30px}.margin-vertical-30,.mv-30{margin-top:30px;margin-bottom:30px}.m-35,.margin-35{margin:35px}.margin-top-35,.mt-35{margin-top:35px}.margin-right-35,.mr-35{margin-right:35px}.margin-bottom-35,.mb-35{margin-bottom:35px}.margin-left-35,.ml-35{margin-left:35px}.margin-horizontal-35,.mh-35{margin-left:35px;margin-right:35px}.margin-vertical-35,.mv-35{margin-top:35px;margin-bottom:35px}.m-40,.margin-40{margin:40px}.margin-top-40,.mt-40{margin-top:40px}.margin-right-40,.mr-40{margin-right:40px}.margin-bottom-40,.mb-40{margin-bottom:40px}.margin-left-40,.ml-40{margin-left:40px}.margin-horizontal-40,.mh-40{margin-left:40px;margin-right:40px}.margin-vertical-40,.mv-40{margin-top:40px;margin-bottom:40px}.m-45,.margin-45{margin:45px}.margin-top-45,.mt-45{margin-top:45px}.margin-right-45,.mr-45{margin-right:45px}.margin-bottom-45,.mb-45{margin-bottom:45px}.margin-left-45,.ml-45{margin-left:45px}.margin-horizontal-45,.mh-45{margin-left:45px;margin-right:45px}.margin-vertical-45,.mv-45{margin-top:45px;margin-bottom:45px}.m-50,.margin-50{margin:50px}.margin-top-50,.mt-50{margin-top:50px}.margin-right-50,.mr-50{margin-right:50px}.margin-bottom-50,.mb-50{margin-bottom:50px}.margin-left-50,.ml-50{margin-left:50px}.margin-horizontal-50,.mh-50{margin-left:50px;margin-right:50px}.margin-vertical-50,.mv-50{margin-top:50px;margin-bottom:50px}.m-55,.margin-55{margin:55px}.margin-top-55,.mt-55{margin-top:55px}.margin-right-55,.mr-55{margin-right:55px}.margin-bottom-55,.mb-55{margin-bottom:55px}.margin-left-55,.ml-55{margin-left:55px}.margin-horizontal-55,.mh-55{margin-left:55px;margin-right:55px}.margin-vertical-55,.mv-55{margin-top:55px;margin-bottom:55px}.m-60,.margin-60{margin:60px}.margin-top-60,.mt-60{margin-top:60px}.margin-right-60,.mr-60{margin-right:60px}.margin-bottom-60,.mb-60{margin-bottom:60px}.margin-left-60,.ml-60{margin-left:60px}.margin-horizontal-60,.mh-60{margin-left:60px;margin-right:60px}.margin-vertical-60,.mv-60{margin-top:60px;margin-bottom:60px}.m-65,.margin-65{margin:65px}.margin-top-65,.mt-65{margin-top:65px}.margin-right-65,.mr-65{margin-right:65px}.margin-bottom-65,.mb-65{margin-bottom:65px}.margin-left-65,.ml-65{margin-left:65px}.margin-horizontal-65,.mh-65{margin-left:65px;margin-right:65px}.margin-vertical-65,.mv-65{margin-top:65px;margin-bottom:65px}.m-70,.margin-70{margin:70px}.margin-top-70,.mt-70{margin-top:70px}.margin-right-70,.mr-70{margin-right:70px}.margin-bottom-70,.mb-70{margin-bottom:70px}.margin-left-70,.ml-70{margin-left:70px}.margin-horizontal-70,.mh-70{margin-left:70px;margin-right:70px}.margin-vertical-70,.mv-70{margin-top:70px;margin-bottom:70px}.m-75,.margin-75{margin:75px}.margin-top-75,.mt-75{margin-top:75px}.margin-right-75,.mr-75{margin-right:75px}.margin-bottom-75,.mb-75{margin-bottom:75px}.margin-left-75,.ml-75{margin-left:75px}.margin-horizontal-75,.mh-75{margin-left:75px;margin-right:75px}.margin-vertical-75,.mv-75{margin-top:75px;margin-bottom:75px}.m-80,.margin-80{margin:80px}.margin-top-80,.mt-80{margin-top:80px}.margin-right-80,.mr-80{margin-right:80px}.margin-bottom-80,.mb-80{margin-bottom:80px}.margin-left-80,.ml-80{margin-left:80px}.margin-horizontal-80,.mh-80{margin-left:80px;margin-right:80px}.margin-vertical-80,.mv-80{margin-top:80px;margin-bottom:80px}.m-85,.margin-85{margin:85px}.margin-top-85,.mt-85{margin-top:85px}.margin-right-85,.mr-85{margin-right:85px}.margin-bottom-85,.mb-85{margin-bottom:85px}.margin-left-85,.ml-85{margin-left:85px}.margin-horizontal-85,.mh-85{margin-left:85px;margin-right:85px}.margin-vertical-85,.mv-85{margin-top:85px;margin-bottom:85px}.m-90,.margin-90{margin:90px}.margin-top-90,.mt-90{margin-top:90px}.margin-right-90,.mr-90{margin-right:90px}.margin-bottom-90,.mb-90{margin-bottom:90px}.margin-left-90,.ml-90{margin-left:90px}.margin-horizontal-90,.mh-90{margin-left:90px;margin-right:90px}.margin-vertical-90,.mv-90{margin-top:90px;margin-bottom:90px}.m-95,.margin-95{margin:95px}.margin-top-95,.mt-95{margin-top:95px}.margin-right-95,.mr-95{margin-right:95px}.margin-bottom-95,.mb-95{margin-bottom:95px}.margin-left-95,.ml-95{margin-left:95px}.margin-horizontal-95,.mh-95{margin-left:95px;margin-right:95px}.margin-vertical-95,.mv-95{margin-top:95px;margin-bottom:95px}.m-100,.margin-100{margin:100px}.margin-top-100,.mt-100{margin-top:100px}.margin-right-100,.mr-100{margin-right:100px}.margin-bottom-100,.mb-100{margin-bottom:100px}.margin-left-100,.ml-100{margin-left:100px}.margin-horizontal-100,.mh-100{margin-left:100px;margin-right:100px}.margin-vertical-100,.mv-100{margin-top:100px;margin-bottom:100px}.m-8,.margin-8{margin:8px}.margin-top-8,.mt-8{margin-top:8px}.margin-right-8,.mr-8{margin-right:8px}.margin-bottom-8,.mb-8{margin-bottom:8px}.margin-left-8,.ml-8{margin-left:8px}.margin-horizontal-8,.mh-8{margin-left:8px;margin-right:8px}.margin-vertical-8,.mv-8{margin-top:8px;margin-bottom:8px}.m-16,.margin-16{margin:16px}.margin-top-16,.mt-16{margin-top:16px}.margin-right-16,.mr-16{margin-right:16px}.margin-bottom-16,.mb-16{margin-bottom:16px}.margin-left-16,.ml-16{margin-left:16px}.margin-horizontal-16,.mh-16{margin-left:16px;margin-right:16px}.margin-vertical-16,.mv-16{margin-top:16px;margin-bottom:16px}.m-24,.margin-24{margin:24px}.margin-top-24,.mt-24{margin-top:24px}.margin-right-24,.mr-24{margin-right:24px}.margin-bottom-24,.mb-24{margin-bottom:24px}.margin-left-24,.ml-24{margin-left:24px}.margin-horizontal-24,.mh-24{margin-left:24px;margin-right:24px}.margin-vertical-24,.mv-24{margin-top:24px;margin-bottom:24px}.m-32,.margin-32{margin:32px}.margin-top-32,.mt-32{margin-top:32px}.margin-right-32,.mr-32{margin-right:32px}.margin-bottom-32,.mb-32{margin-bottom:32px}.margin-left-32,.ml-32{margin-left:32px}.margin-horizontal-32,.mh-32{margin-left:32px;margin-right:32px}.margin-vertical-32,.mv-32{margin-top:32px;margin-bottom:32px}.m-48,.margin-48{margin:48px}.margin-top-48,.mt-48{margin-top:48px}.margin-right-48,.mr-48{margin-right:48px}.margin-bottom-48,.mb-48{margin-bottom:48px}.margin-left-48,.ml-48{margin-left:48px}.margin-horizontal-48,.mh-48{margin-left:48px;margin-right:48px}.margin-vertical-48,.mv-48{margin-top:48px;margin-bottom:48px}.m-56,.margin-56{margin:56px}.margin-top-56,.mt-56{margin-top:56px}.margin-right-56,.mr-56{margin-right:56px}.margin-bottom-56,.mb-56{margin-bottom:56px}.margin-left-56,.ml-56{margin-left:56px}.margin-horizontal-56,.mh-56{margin-left:56px;margin-right:56px}.margin-vertical-56,.mv-56{margin-top:56px;margin-bottom:56px}.m-64,.margin-64{margin:64px}.margin-top-64,.mt-64{margin-top:64px}.margin-right-64,.mr-64{margin-right:64px}.margin-bottom-64,.mb-64{margin-bottom:64px}.margin-left-64,.ml-64{margin-left:64px}.margin-horizontal-64,.mh-64{margin-left:64px;margin-right:64px}.margin-vertical-64,.mv-64{margin-top:64px;margin-bottom:64px}.m-72,.margin-72{margin:72px}.margin-top-72,.mt-72{margin-top:72px}.margin-right-72,.mr-72{margin-right:72px}.margin-bottom-72,.mb-72{margin-bottom:72px}.margin-left-72,.ml-72{margin-left:72px}.margin-horizontal-72,.mh-72{margin-left:72px;margin-right:72px}.margin-vertical-72,.mv-72{margin-top:72px;margin-bottom:72px}.m-88,.margin-88{margin:88px}.margin-top-88,.mt-88{margin-top:88px}.margin-right-88,.mr-88{margin-right:88px}.margin-bottom-88,.mb-88{margin-bottom:88px}.margin-left-88,.ml-88{margin-left:88px}.margin-horizontal-88,.mh-88{margin-left:88px;margin-right:88px}.margin-vertical-88,.mv-88{margin-top:88px;margin-bottom:88px}.m-96,.margin-96{margin:96px}.margin-top-96,.mt-96{margin-top:96px}.margin-right-96,.mr-96{margin-right:96px}.margin-bottom-96,.mb-96{margin-bottom:96px}.margin-left-96,.ml-96{margin-left:96px}.margin-horizontal-96,.mh-96{margin-left:96px;margin-right:96px}.margin-vertical-96,.mv-96{margin-top:96px;margin-bottom:96px}.h-0,.height-0{height:0!important;min-height:0!important;max-height:0!important}.w-0,.width-0{width:0!important;min-width:0!important;max-width:0!important}.h-5,.height-5{height:5px!important;min-height:5px!important;max-height:5px!important}.w-5,.width-5{width:5px!important;min-width:5px!important;max-width:5px!important}.h-10,.height-10{height:10px!important;min-height:10px!important;max-height:10px!important}.w-10,.width-10{width:10px!important;min-width:10px!important;max-width:10px!important}.h-15,.height-15{height:15px!important;min-height:15px!important;max-height:15px!important}.w-15,.width-15{width:15px!important;min-width:15px!important;max-width:15px!important}.h-20,.height-20{height:20px!important;min-height:20px!important;max-height:20px!important}.w-20,.width-20{width:20px!important;min-width:20px!important;max-width:20px!important}.h-25,.height-25{height:25px!important;min-height:25px!important;max-height:25px!important}.w-25,.width-25{width:25px!important;min-width:25px!important;max-width:25px!important}.h-30,.height-30{height:30px!important;min-height:30px!important;max-height:30px!important}.w-30,.width-30{width:30px!important;min-width:30px!important;max-width:30px!important}.h-35,.height-35{height:35px!important;min-height:35px!important;max-height:35px!important}.w-35,.width-35{width:35px!important;min-width:35px!important;max-width:35px!important}.h-40,.height-40{height:40px!important;min-height:40px!important;max-height:40px!important}.w-40,.width-40{width:40px!important;min-width:40px!important;max-width:40px!important}.h-45,.height-45{height:45px!important;min-height:45px!important;max-height:45px!important}.w-45,.width-45{width:45px!important;min-width:45px!important;max-width:45px!important}.h-50,.height-50{height:50px!important;min-height:50px!important;max-height:50px!important}.w-50,.width-50{width:50px!important;min-width:50px!important;max-width:50px!important}.h-55,.height-55{height:55px!important;min-height:55px!important;max-height:55px!important}.w-55,.width-55{width:55px!important;min-width:55px!important;max-width:55px!important}.h-60,.height-60{height:60px!important;min-height:60px!important;max-height:60px!important}.w-60,.width-60{width:60px!important;min-width:60px!important;max-width:60px!important}.h-65,.height-65{height:65px!important;min-height:65px!important;max-height:65px!important}.w-65,.width-65{width:65px!important;min-width:65px!important;max-width:65px!important}.h-70,.height-70{height:70px!important;min-height:70px!important;max-height:70px!important}.w-70,.width-70{width:70px!important;min-width:70px!important;max-width:70px!important}.h-75,.height-75{height:75px!important;min-height:75px!important;max-height:75px!important}.w-75,.width-75{width:75px!important;min-width:75px!important;max-width:75px!important}.h-80,.height-80{height:80px!important;min-height:80px!important;max-height:80px!important}.w-80,.width-80{width:80px!important;min-width:80px!important;max-width:80px!important}.h-85,.height-85{height:85px!important;min-height:85px!important;max-height:85px!important}.w-85,.width-85{width:85px!important;min-width:85px!important;max-width:85px!important}.h-90,.height-90{height:90px!important;min-height:90px!important;max-height:90px!important}.w-90,.width-90{width:90px!important;min-width:90px!important;max-width:90px!important}.h-95,.height-95{height:95px!important;min-height:95px!important;max-height:95px!important}.w-95,.width-95{width:95px!important;min-width:95px!important;max-width:95px!important}.h-100,.height-100{height:100px!important;min-height:100px!important;max-height:100px!important}.w-100,.width-100{width:100px!important;min-width:100px!important;max-width:100px!important}.h-105,.height-105{height:105px!important;min-height:105px!important;max-height:105px!important}.w-105,.width-105{width:105px!important;min-width:105px!important;max-width:105px!important}.h-110,.height-110{height:110px!important;min-height:110px!important;max-height:110px!important}.w-110,.width-110{width:110px!important;min-width:110px!important;max-width:110px!important}.h-115,.height-115{height:115px!important;min-height:115px!important;max-height:115px!important}.w-115,.width-115{width:115px!important;min-width:115px!important;max-width:115px!important}.h-120,.height-120{height:120px!important;min-height:120px!important;max-height:120px!important}.w-120,.width-120{width:120px!important;min-width:120px!important;max-width:120px!important}.h-125,.height-125{height:125px!important;min-height:125px!important;max-height:125px!important}.w-125,.width-125{width:125px!important;min-width:125px!important;max-width:125px!important}.h-130,.height-130{height:130px!important;min-height:130px!important;max-height:130px!important}.w-130,.width-130{width:130px!important;min-width:130px!important;max-width:130px!important}.h-135,.height-135{height:135px!important;min-height:135px!important;max-height:135px!important}.w-135,.width-135{width:135px!important;min-width:135px!important;max-width:135px!important}.h-140,.height-140{height:140px!important;min-height:140px!important;max-height:140px!important}.w-140,.width-140{width:140px!important;min-width:140px!important;max-width:140px!important}.h-145,.height-145{height:145px!important;min-height:145px!important;max-height:145px!important}.w-145,.width-145{width:145px!important;min-width:145px!important;max-width:145px!important}.h-150,.height-150{height:150px!important;min-height:150px!important;max-height:150px!important}.w-150,.width-150{width:150px!important;min-width:150px!important;max-width:150px!important}.h-155,.height-155{height:155px!important;min-height:155px!important;max-height:155px!important}.w-155,.width-155{width:155px!important;min-width:155px!important;max-width:155px!important}.h-160,.height-160{height:160px!important;min-height:160px!important;max-height:160px!important}.w-160,.width-160{width:160px!important;min-width:160px!important;max-width:160px!important}.h-165,.height-165{height:165px!important;min-height:165px!important;max-height:165px!important}.w-165,.width-165{width:165px!important;min-width:165px!important;max-width:165px!important}.h-170,.height-170{height:170px!important;min-height:170px!important;max-height:170px!important}.w-170,.width-170{width:170px!important;min-width:170px!important;max-width:170px!important}.h-175,.height-175{height:175px!important;min-height:175px!important;max-height:175px!important}.w-175,.width-175{width:175px!important;min-width:175px!important;max-width:175px!important}.h-180,.height-180{height:180px!important;min-height:180px!important;max-height:180px!important}.w-180,.width-180{width:180px!important;min-width:180px!important;max-width:180px!important}.h-185,.height-185{height:185px!important;min-height:185px!important;max-height:185px!important}.w-185,.width-185{width:185px!important;min-width:185px!important;max-width:185px!important}.h-190,.height-190{height:190px!important;min-height:190px!important;max-height:190px!important}.w-190,.width-190{width:190px!important;min-width:190px!important;max-width:190px!important}.h-195,.height-195{height:195px!important;min-height:195px!important;max-height:195px!important}.w-195,.width-195{width:195px!important;min-width:195px!important;max-width:195px!important}.h-200,.height-200{height:200px!important;min-height:200px!important;max-height:200px!important}.w-200,.width-200{width:200px!important;min-width:200px!important;max-width:200px!important}.h-205,.height-205{height:205px!important;min-height:205px!important;max-height:205px!important}.w-205,.width-205{width:205px!important;min-width:205px!important;max-width:205px!important}.h-210,.height-210{height:210px!important;min-height:210px!important;max-height:210px!important}.w-210,.width-210{width:210px!important;min-width:210px!important;max-width:210px!important}.h-215,.height-215{height:215px!important;min-height:215px!important;max-height:215px!important}.w-215,.width-215{width:215px!important;min-width:215px!important;max-width:215px!important}.h-220,.height-220{height:220px!important;min-height:220px!important;max-height:220px!important}.w-220,.width-220{width:220px!important;min-width:220px!important;max-width:220px!important}.h-225,.height-225{height:225px!important;min-height:225px!important;max-height:225px!important}.w-225,.width-225{width:225px!important;min-width:225px!important;max-width:225px!important}.h-230,.height-230{height:230px!important;min-height:230px!important;max-height:230px!important}.w-230,.width-230{width:230px!important;min-width:230px!important;max-width:230px!important}.h-235,.height-235{height:235px!important;min-height:235px!important;max-height:235px!important}.w-235,.width-235{width:235px!important;min-width:235px!important;max-width:235px!important}.h-240,.height-240{height:240px!important;min-height:240px!important;max-height:240px!important}.w-240,.width-240{width:240px!important;min-width:240px!important;max-width:240px!important}.h-245,.height-245{height:245px!important;min-height:245px!important;max-height:245px!important}.w-245,.width-245{width:245px!important;min-width:245px!important;max-width:245px!important}.h-250,.height-250{height:250px!important;min-height:250px!important;max-height:250px!important}.w-250,.width-250{width:250px!important;min-width:250px!important;max-width:250px!important}.h-255,.height-255{height:255px!important;min-height:255px!important;max-height:255px!important}.w-255,.width-255{width:255px!important;min-width:255px!important;max-width:255px!important}.h-260,.height-260{height:260px!important;min-height:260px!important;max-height:260px!important}.w-260,.width-260{width:260px!important;min-width:260px!important;max-width:260px!important}.h-265,.height-265{height:265px!important;min-height:265px!important;max-height:265px!important}.w-265,.width-265{width:265px!important;min-width:265px!important;max-width:265px!important}.h-270,.height-270{height:270px!important;min-height:270px!important;max-height:270px!important}.w-270,.width-270{width:270px!important;min-width:270px!important;max-width:270px!important}.h-275,.height-275{height:275px!important;min-height:275px!important;max-height:275px!important}.w-275,.width-275{width:275px!important;min-width:275px!important;max-width:275px!important}.h-280,.height-280{height:280px!important;min-height:280px!important;max-height:280px!important}.w-280,.width-280{width:280px!important;min-width:280px!important;max-width:280px!important}.h-285,.height-285{height:285px!important;min-height:285px!important;max-height:285px!important}.w-285,.width-285{width:285px!important;min-width:285px!important;max-width:285px!important}.h-290,.height-290{height:290px!important;min-height:290px!important;max-height:290px!important}.w-290,.width-290{width:290px!important;min-width:290px!important;max-width:290px!important}.h-295,.height-295{height:295px!important;min-height:295px!important;max-height:295px!important}.w-295,.width-295{width:295px!important;min-width:295px!important;max-width:295px!important}.h-300,.height-300{height:300px!important;min-height:300px!important;max-height:300px!important}.w-300,.width-300{width:300px!important;min-width:300px!important;max-width:300px!important}.h-305,.height-305{height:305px!important;min-height:305px!important;max-height:305px!important}.w-305,.width-305{width:305px!important;min-width:305px!important;max-width:305px!important}.h-310,.height-310{height:310px!important;min-height:310px!important;max-height:310px!important}.w-310,.width-310{width:310px!important;min-width:310px!important;max-width:310px!important}.h-315,.height-315{height:315px!important;min-height:315px!important;max-height:315px!important}.w-315,.width-315{width:315px!important;min-width:315px!important;max-width:315px!important}.h-320,.height-320{height:320px!important;min-height:320px!important;max-height:320px!important}.w-320,.width-320{width:320px!important;min-width:320px!important;max-width:320px!important}.h-325,.height-325{height:325px!important;min-height:325px!important;max-height:325px!important}.w-325,.width-325{width:325px!important;min-width:325px!important;max-width:325px!important}.h-330,.height-330{height:330px!important;min-height:330px!important;max-height:330px!important}.w-330,.width-330{width:330px!important;min-width:330px!important;max-width:330px!important}.h-335,.height-335{height:335px!important;min-height:335px!important;max-height:335px!important}.w-335,.width-335{width:335px!important;min-width:335px!important;max-width:335px!important}.h-340,.height-340{height:340px!important;min-height:340px!important;max-height:340px!important}.w-340,.width-340{width:340px!important;min-width:340px!important;max-width:340px!important}.h-345,.height-345{height:345px!important;min-height:345px!important;max-height:345px!important}.w-345,.width-345{width:345px!important;min-width:345px!important;max-width:345px!important}.h-350,.height-350{height:350px!important;min-height:350px!important;max-height:350px!important}.w-350,.width-350{width:350px!important;min-width:350px!important;max-width:350px!important}.h-355,.height-355{height:355px!important;min-height:355px!important;max-height:355px!important}.w-355,.width-355{width:355px!important;min-width:355px!important;max-width:355px!important}.h-360,.height-360{height:360px!important;min-height:360px!important;max-height:360px!important}.w-360,.width-360{width:360px!important;min-width:360px!important;max-width:360px!important}.h-365,.height-365{height:365px!important;min-height:365px!important;max-height:365px!important}.w-365,.width-365{width:365px!important;min-width:365px!important;max-width:365px!important}.h-370,.height-370{height:370px!important;min-height:370px!important;max-height:370px!important}.w-370,.width-370{width:370px!important;min-width:370px!important;max-width:370px!important}.h-375,.height-375{height:375px!important;min-height:375px!important;max-height:375px!important}.w-375,.width-375{width:375px!important;min-width:375px!important;max-width:375px!important}.h-380,.height-380{height:380px!important;min-height:380px!important;max-height:380px!important}.w-380,.width-380{width:380px!important;min-width:380px!important;max-width:380px!important}.h-385,.height-385{height:385px!important;min-height:385px!important;max-height:385px!important}.w-385,.width-385{width:385px!important;min-width:385px!important;max-width:385px!important}.h-390,.height-390{height:390px!important;min-height:390px!important;max-height:390px!important}.w-390,.width-390{width:390px!important;min-width:390px!important;max-width:390px!important}.h-395,.height-395{height:395px!important;min-height:395px!important;max-height:395px!important}.w-395,.width-395{width:395px!important;min-width:395px!important;max-width:395px!important}.h-400,.height-400{height:400px!important;min-height:400px!important;max-height:400px!important}.w-400,.width-400{width:400px!important;min-width:400px!important;max-width:400px!important}.h-405,.height-405{height:405px!important;min-height:405px!important;max-height:405px!important}.w-405,.width-405{width:405px!important;min-width:405px!important;max-width:405px!important}.h-410,.height-410{height:410px!important;min-height:410px!important;max-height:410px!important}.w-410,.width-410{width:410px!important;min-width:410px!important;max-width:410px!important}.h-415,.height-415{height:415px!important;min-height:415px!important;max-height:415px!important}.w-415,.width-415{width:415px!important;min-width:415px!important;max-width:415px!important}.h-420,.height-420{height:420px!important;min-height:420px!important;max-height:420px!important}.w-420,.width-420{width:420px!important;min-width:420px!important;max-width:420px!important}.h-425,.height-425{height:425px!important;min-height:425px!important;max-height:425px!important}.w-425,.width-425{width:425px!important;min-width:425px!important;max-width:425px!important}.h-430,.height-430{height:430px!important;min-height:430px!important;max-height:430px!important}.w-430,.width-430{width:430px!important;min-width:430px!important;max-width:430px!important}.h-435,.height-435{height:435px!important;min-height:435px!important;max-height:435px!important}.w-435,.width-435{width:435px!important;min-width:435px!important;max-width:435px!important}.h-440,.height-440{height:440px!important;min-height:440px!important;max-height:440px!important}.w-440,.width-440{width:440px!important;min-width:440px!important;max-width:440px!important}.h-445,.height-445{height:445px!important;min-height:445px!important;max-height:445px!important}.w-445,.width-445{width:445px!important;min-width:445px!important;max-width:445px!important}.h-450,.height-450{height:450px!important;min-height:450px!important;max-height:450px!important}.w-450,.width-450{width:450px!important;min-width:450px!important;max-width:450px!important}.h-455,.height-455{height:455px!important;min-height:455px!important;max-height:455px!important}.w-455,.width-455{width:455px!important;min-width:455px!important;max-width:455px!important}.h-460,.height-460{height:460px!important;min-height:460px!important;max-height:460px!important}.w-460,.width-460{width:460px!important;min-width:460px!important;max-width:460px!important}.h-465,.height-465{height:465px!important;min-height:465px!important;max-height:465px!important}.w-465,.width-465{width:465px!important;min-width:465px!important;max-width:465px!important}.h-470,.height-470{height:470px!important;min-height:470px!important;max-height:470px!important}.w-470,.width-470{width:470px!important;min-width:470px!important;max-width:470px!important}.h-475,.height-475{height:475px!important;min-height:475px!important;max-height:475px!important}.w-475,.width-475{width:475px!important;min-width:475px!important;max-width:475px!important}.h-480,.height-480{height:480px!important;min-height:480px!important;max-height:480px!important}.w-480,.width-480{width:480px!important;min-width:480px!important;max-width:480px!important}.h-485,.height-485{height:485px!important;min-height:485px!important;max-height:485px!important}.w-485,.width-485{width:485px!important;min-width:485px!important;max-width:485px!important}.h-490,.height-490{height:490px!important;min-height:490px!important;max-height:490px!important}.w-490,.width-490{width:490px!important;min-width:490px!important;max-width:490px!important}.h-495,.height-495{height:495px!important;min-height:495px!important;max-height:495px!important}.w-495,.width-495{width:495px!important;min-width:495px!important;max-width:495px!important}.h-500,.height-500{height:500px!important;min-height:500px!important;max-height:500px!important}.w-500,.width-500{width:500px!important;min-width:500px!important;max-width:500px!important}.h-8,.height-8{height:8px!important;min-height:8px!important;max-height:8px!important}.w-8,.width-8{width:8px!important;min-width:8px!important;max-width:8px!important}.h-16,.height-16{height:16px!important;min-height:16px!important;max-height:16px!important}.w-16,.width-16{width:16px!important;min-width:16px!important;max-width:16px!important}.h-24,.height-24{height:24px!important;min-height:24px!important;max-height:24px!important}.w-24,.width-24{width:24px!important;min-width:24px!important;max-width:24px!important}.h-32,.height-32{height:32px!important;min-height:32px!important;max-height:32px!important}.w-32,.width-32{width:32px!important;min-width:32px!important;max-width:32px!important}.h-48,.height-48{height:48px!important;min-height:48px!important;max-height:48px!important}.w-48,.width-48{width:48px!important;min-width:48px!important;max-width:48px!important}.h-56,.height-56{height:56px!important;min-height:56px!important;max-height:56px!important}.w-56,.width-56{width:56px!important;min-width:56px!important;max-width:56px!important}.h-64,.height-64{height:64px!important;min-height:64px!important;max-height:64px!important}.w-64,.width-64{width:64px!important;min-width:64px!important;max-width:64px!important}.h-72,.height-72{height:72px!important;min-height:72px!important;max-height:72px!important}.w-72,.width-72{width:72px!important;min-width:72px!important;max-width:72px!important}.h-88,.height-88{height:88px!important;min-height:88px!important;max-height:88px!important}.w-88,.width-88{width:88px!important;min-width:88px!important;max-width:88px!important}.h-96,.height-96{height:96px!important;min-height:96px!important;max-height:96px!important}.w-96,.width-96{width:96px!important;min-width:96px!important;max-width:96px!important}.h-104,.height-104{height:104px!important;min-height:104px!important;max-height:104px!important}.w-104,.width-104{width:104px!important;min-width:104px!important;max-width:104px!important}.h-112,.height-112{height:112px!important;min-height:112px!important;max-height:112px!important}.w-112,.width-112{width:112px!important;min-width:112px!important;max-width:112px!important}.h-128,.height-128{height:128px!important;min-height:128px!important;max-height:128px!important}.w-128,.width-128{width:128px!important;min-width:128px!important;max-width:128px!important}.h-136,.height-136{height:136px!important;min-height:136px!important;max-height:136px!important}.w-136,.width-136{width:136px!important;min-width:136px!important;max-width:136px!important}.h-144,.height-144{height:144px!important;min-height:144px!important;max-height:144px!important}.w-144,.width-144{width:144px!important;min-width:144px!important;max-width:144px!important}.h-152,.height-152{height:152px!important;min-height:152px!important;max-height:152px!important}.w-152,.width-152{width:152px!important;min-width:152px!important;max-width:152px!important}.h-168,.height-168{height:168px!important;min-height:168px!important;max-height:168px!important}.w-168,.width-168{width:168px!important;min-width:168px!important;max-width:168px!important}.h-176,.height-176{height:176px!important;min-height:176px!important;max-height:176px!important}.w-176,.width-176{width:176px!important;min-width:176px!important;max-width:176px!important}.h-184,.height-184{height:184px!important;min-height:184px!important;max-height:184px!important}.w-184,.width-184{width:184px!important;min-width:184px!important;max-width:184px!important}.h-192,.height-192{height:192px!important;min-height:192px!important;max-height:192px!important}.w-192,.width-192{width:192px!important;min-width:192px!important;max-width:192px!important}.h-208,.height-208{height:208px!important;min-height:208px!important;max-height:208px!important}.w-208,.width-208{width:208px!important;min-width:208px!important;max-width:208px!important}.h-216,.height-216{height:216px!important;min-height:216px!important;max-height:216px!important}.w-216,.width-216{width:216px!important;min-width:216px!important;max-width:216px!important}.h-224,.height-224{height:224px!important;min-height:224px!important;max-height:224px!important}.w-224,.width-224{width:224px!important;min-width:224px!important;max-width:224px!important}.h-232,.height-232{height:232px!important;min-height:232px!important;max-height:232px!important}.w-232,.width-232{width:232px!important;min-width:232px!important;max-width:232px!important}.h-248,.height-248{height:248px!important;min-height:248px!important;max-height:248px!important}.w-248,.width-248{width:248px!important;min-width:248px!important;max-width:248px!important}.h-256,.height-256{height:256px!important;min-height:256px!important;max-height:256px!important}.w-256,.width-256{width:256px!important;min-width:256px!important;max-width:256px!important}.h-264,.height-264{height:264px!important;min-height:264px!important;max-height:264px!important}.w-264,.width-264{width:264px!important;min-width:264px!important;max-width:264px!important}.h-272,.height-272{height:272px!important;min-height:272px!important;max-height:272px!important}.w-272,.width-272{width:272px!important;min-width:272px!important;max-width:272px!important}.h-288,.height-288{height:288px!important;min-height:288px!important;max-height:288px!important}.w-288,.width-288{width:288px!important;min-width:288px!important;max-width:288px!important}.h-296,.height-296{height:296px!important;min-height:296px!important;max-height:296px!important}.w-296,.width-296{width:296px!important;min-width:296px!important;max-width:296px!important}.h-304,.height-304{height:304px!important;min-height:304px!important;max-height:304px!important}.w-304,.width-304{width:304px!important;min-width:304px!important;max-width:304px!important}.h-312,.height-312{height:312px!important;min-height:312px!important;max-height:312px!important}.w-312,.width-312{width:312px!important;min-width:312px!important;max-width:312px!important}.h-328,.height-328{height:328px!important;min-height:328px!important;max-height:328px!important}.w-328,.width-328{width:328px!important;min-width:328px!important;max-width:328px!important}.h-336,.height-336{height:336px!important;min-height:336px!important;max-height:336px!important}.w-336,.width-336{width:336px!important;min-width:336px!important;max-width:336px!important}.h-344,.height-344{height:344px!important;min-height:344px!important;max-height:344px!important}.w-344,.width-344{width:344px!important;min-width:344px!important;max-width:344px!important}.h-352,.height-352{height:352px!important;min-height:352px!important;max-height:352px!important}.w-352,.width-352{width:352px!important;min-width:352px!important;max-width:352px!important}.h-368,.height-368{height:368px!important;min-height:368px!important;max-height:368px!important}.w-368,.width-368{width:368px!important;min-width:368px!important;max-width:368px!important}.h-376,.height-376{height:376px!important;min-height:376px!important;max-height:376px!important}.w-376,.width-376{width:376px!important;min-width:376px!important;max-width:376px!important}.h-384,.height-384{height:384px!important;min-height:384px!important;max-height:384px!important}.w-384,.width-384{width:384px!important;min-width:384px!important;max-width:384px!important}.h-392,.height-392{height:392px!important;min-height:392px!important;max-height:392px!important}.w-392,.width-392{width:392px!important;min-width:392px!important;max-width:392px!important}.h-408,.height-408{height:408px!important;min-height:408px!important;max-height:408px!important}.w-408,.width-408{width:408px!important;min-width:408px!important;max-width:408px!important}.h-416,.height-416{height:416px!important;min-height:416px!important;max-height:416px!important}.w-416,.width-416{width:416px!important;min-width:416px!important;max-width:416px!important}.h-424,.height-424{height:424px!important;min-height:424px!important;max-height:424px!important}.w-424,.width-424{width:424px!important;min-width:424px!important;max-width:424px!important}.h-432,.height-432{height:432px!important;min-height:432px!important;max-height:432px!important}.w-432,.width-432{width:432px!important;min-width:432px!important;max-width:432px!important}.h-448,.height-448{height:448px!important;min-height:448px!important;max-height:448px!important}.w-448,.width-448{width:448px!important;min-width:448px!important;max-width:448px!important}.h-456,.height-456{height:456px!important;min-height:456px!important;max-height:456px!important}.w-456,.width-456{width:456px!important;min-width:456px!important;max-width:456px!important}.h-464,.height-464{height:464px!important;min-height:464px!important;max-height:464px!important}.w-464,.width-464{width:464px!important;min-width:464px!important;max-width:464px!important}.h-472,.height-472{height:472px!important;min-height:472px!important;max-height:472px!important}.w-472,.width-472{width:472px!important;min-width:472px!important;max-width:472px!important}.h-488,.height-488{height:488px!important;min-height:488px!important;max-height:488px!important}.w-488,.width-488{width:488px!important;min-width:488px!important;max-width:488px!important}.h-496,.height-496{height:496px!important;min-height:496px!important;max-height:496px!important}.w-496,.width-496{width:496px!important;min-width:496px!important;max-width:496px!important}.h-504,.height-504{height:504px!important;min-height:504px!important;max-height:504px!important}.w-504,.width-504{width:504px!important;min-width:504px!important;max-width:504px!important}.h-512,.height-512{height:512px!important;min-height:512px!important;max-height:512px!important}.w-512,.width-512{width:512px!important;min-width:512px!important;max-width:512px!important}.h-528,.height-528{height:528px!important;min-height:528px!important;max-height:528px!important}.w-528,.width-528{width:528px!important;min-width:528px!important;max-width:528px!important}.h-536,.height-536{height:536px!important;min-height:536px!important;max-height:536px!important}.w-536,.width-536{width:536px!important;min-width:536px!important;max-width:536px!important}.h-544,.height-544{height:544px!important;min-height:544px!important;max-height:544px!important}.w-544,.width-544{width:544px!important;min-width:544px!important;max-width:544px!important}.h-552,.height-552{height:552px!important;min-height:552px!important;max-height:552px!important}.w-552,.width-552{width:552px!important;min-width:552px!important;max-width:552px!important}.h-568,.height-568{height:568px!important;min-height:568px!important;max-height:568px!important}.w-568,.width-568{width:568px!important;min-width:568px!important;max-width:568px!important}.h-576,.height-576{height:576px!important;min-height:576px!important;max-height:576px!important}.w-576,.width-576{width:576px!important;min-width:576px!important;max-width:576px!important}.h-584,.height-584{height:584px!important;min-height:584px!important;max-height:584px!important}.w-584,.width-584{width:584px!important;min-width:584px!important;max-width:584px!important}.h-592,.height-592{height:592px!important;min-height:592px!important;max-height:592px!important}.w-592,.width-592{width:592px!important;min-width:592px!important;max-width:592px!important}.h-608,.height-608{height:608px!important;min-height:608px!important;max-height:608px!important}.w-608,.width-608{width:608px!important;min-width:608px!important;max-width:608px!important}.h-616,.height-616{height:616px!important;min-height:616px!important;max-height:616px!important}.w-616,.width-616{width:616px!important;min-width:616px!important;max-width:616px!important}.h-624,.height-624{height:624px!important;min-height:624px!important;max-height:624px!important}.w-624,.width-624{width:624px!important;min-width:624px!important;max-width:624px!important}.h-632,.height-632{height:632px!important;min-height:632px!important;max-height:632px!important}.w-632,.width-632{width:632px!important;min-width:632px!important;max-width:632px!important}.h-648,.height-648{height:648px!important;min-height:648px!important;max-height:648px!important}.w-648,.width-648{width:648px!important;min-width:648px!important;max-width:648px!important}.h-656,.height-656{height:656px!important;min-height:656px!important;max-height:656px!important}.w-656,.width-656{width:656px!important;min-width:656px!important;max-width:656px!important}.h-664,.height-664{height:664px!important;min-height:664px!important;max-height:664px!important}.w-664,.width-664{width:664px!important;min-width:664px!important;max-width:664px!important}.h-672,.height-672{height:672px!important;min-height:672px!important;max-height:672px!important}.w-672,.width-672{width:672px!important;min-width:672px!important;max-width:672px!important}.h-688,.height-688{height:688px!important;min-height:688px!important;max-height:688px!important}.w-688,.width-688{width:688px!important;min-width:688px!important;max-width:688px!important}.h-696,.height-696{height:696px!important;min-height:696px!important;max-height:696px!important}.w-696,.width-696{width:696px!important;min-width:696px!important;max-width:696px!important}.h-704,.height-704{height:704px!important;min-height:704px!important;max-height:704px!important}.w-704,.width-704{width:704px!important;min-width:704px!important;max-width:704px!important}.h-712,.height-712{height:712px!important;min-height:712px!important;max-height:712px!important}.w-712,.width-712{width:712px!important;min-width:712px!important;max-width:712px!important}.h-728,.height-728{height:728px!important;min-height:728px!important;max-height:728px!important}.w-728,.width-728{width:728px!important;min-width:728px!important;max-width:728px!important}.h-736,.height-736{height:736px!important;min-height:736px!important;max-height:736px!important}.w-736,.width-736{width:736px!important;min-width:736px!important;max-width:736px!important}.h-744,.height-744{height:744px!important;min-height:744px!important;max-height:744px!important}.w-744,.width-744{width:744px!important;min-width:744px!important;max-width:744px!important}.h-752,.height-752{height:752px!important;min-height:752px!important;max-height:752px!important}.w-752,.width-752{width:752px!important;min-width:752px!important;max-width:752px!important}.h-768,.height-768{height:768px!important;min-height:768px!important;max-height:768px!important}.w-768,.width-768{width:768px!important;min-width:768px!important;max-width:768px!important}.h-776,.height-776{height:776px!important;min-height:776px!important;max-height:776px!important}.w-776,.width-776{width:776px!important;min-width:776px!important;max-width:776px!important}.h-784,.height-784{height:784px!important;min-height:784px!important;max-height:784px!important}.w-784,.width-784{width:784px!important;min-width:784px!important;max-width:784px!important}.h-792,.height-792{height:792px!important;min-height:792px!important;max-height:792px!important}.w-792,.width-792{width:792px!important;min-width:792px!important;max-width:792px!important}.b,.border{border:1px solid rgba(0,0,0,.12)}.border-top,.bt{border-top:1px solid rgba(0,0,0,.12)}.border-right,.br{border-right:1px solid rgba(0,0,0,.12)}.bb,.border-bottom{border-bottom:1px solid rgba(0,0,0,.12)}.bl,.border-left{border-left:1px solid rgba(0,0,0,.12)}.bh,.border-horizontal{border-left:1px solid rgba(0,0,0,.12);border-right:1px solid rgba(0,0,0,.12)}.border-vertical,.bv{border-top:1px solid rgba(0,0,0,.12);border-bottom:1px solid rgba(0,0,0,.12)}.brad-1{border-radius:1px}.brad-2{border-radius:2px}.brad-3{border-radius:3px}.brad-4{border-radius:4px}.brad-5{border-radius:5px}.brad-6{border-radius:6px}.brad-7{border-radius:7px}.brad-8{border-radius:8px}.brad-9{border-radius:9px}.brad-10{border-radius:10px}.brad-11{border-radius:11px}.brad-12{border-radius:12px}@media all{.page-break{display:none}}@media print{.page-break{display:block;break-after:always;page-break-after:always}#main #vertical-navigation{display:none}#main #toolbar{display:none}#main #quick-panel{display:none}#main #content{position:relative!important;top:0!important;right:0!important;bottom:0!important;left:0!important;background:0 0!important}ms-theme-options{display:none}.ps-scrollbar-x-rail,.ps-scrollbar-y-rail{display:none!important}.printable{overflow:visible!important}.printable .template-layout{display:inline!important}}.ms-card{display:flex;flex-direction:row;padding:8px}.ms-card .ms-card-content-wrapper{position:relative;overflow:hidden;width:100%;max-width:400px;border-radius:2px;background:#fff;box-shadow:0 3px 1px -2px rgba(0,0,0,.14),0 2px 2px 0 rgba(0,0,0,.098),0 1px 5px 0 rgba(0,0,0,.084)}.ms-card .template-1 .media .image{width:100%;border-radius:2px 2px 0 0}.ms-card .template-10 .media{width:80px;min-width:80px;max-width:80px}.ms-card .template-2 .header .avatar .image{display:block;width:40px;height:40px;border-radius:20px}.ms-card .template-2 .media .image{width:100%}.ms-card .template-4 .info{position:absolute;right:0;bottom:0;left:0;z-index:2;background:rgba(0,0,0,.54)}.ms-card .template-4 .media{z-index:1}.ms-card .template-4 .media .image{width:100%}.ms-card .template-5 .media{width:80px;min-width:80px;max-width:80px}.ms-card .template-5 .info,.ms-card .template-5 .media{-ms-flex:0 1 auto}.ms-card .template-8 .media .image{width:100%;border-radius:2px 2px 0 0}.ms-card .template-9 .header .avatar .image{display:block;width:40px;height:40px;border-radius:20px}.ms-card .template-9 .media .image{width:100%}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}.ms-form-wizard{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-form-wizard md-tabs md-tabs-wrapper{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas{height:72px}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper{height:72px}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item{opacity:1!important;padding:24px}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item:before{content:'';display:block;position:absolute;top:50%;left:0;right:50%;border-bottom:1px solid rgba(0,0,0,.12);z-index:8}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item:after{content:'';display:block;position:absolute;top:50%;left:50%;right:0;border-bottom:1px solid rgba(0,0,0,.12);z-index:8}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item:first-of-type:before{display:none}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item:last-of-type:after{display:none}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item.md-disabled .ms-form-wizard-step-label .ms-form-wizard-step-number{background:rgba(0,0,0,.12)!important}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-pagination-wrapper md-tab-item .md-ripple-container{z-index:11}.ms-form-wizard md-tabs md-tabs-wrapper md-tabs-canvas md-ink-bar{display:none!important}.ms-form-wizard .ms-form-wizard-step-label{display:inline-block;position:relative;background:#fff;z-index:10;padding:0 16px;line-height:24px}.ms-form-wizard .ms-form-wizard-step-label .ms-form-wizard-step-number{display:inline-block;vertical-align:middle;width:24px;height:24px;line-height:24px;font-size:14px;margin-right:12px;border-radius:50%;color:#fff!important}.ms-form-wizard .ms-form-wizard-step-label .ms-form-wizard-step-number i{line-height:24px!important}.ms-form-wizard .ms-form-wizard-step-label .ms-form-wizard-step-text{display:inline-block;vertical-align:middle;position:relative;line-height:24px}.ms-form-wizard .ms-form-wizard-form{padding:24px 16px}.ms-form-wizard .navigation{padding:16px}.ms-form-wizard .navigation .steps{display:flex;align-items:center;justify-content:center;padding:0 16px}.ms-form-wizard .navigation .steps span{width:5px;height:5px;margin:0 4px;border-radius:50%}.ms-form-wizard .navigation .steps span:not(.md-accent-bg){background:rgba(0,0,0,.12)}.ms-form-wizard .navigation .steps span.selected{width:8px;height:8px}body.ms-info-bar-active #main{top:64px}ms-info-bar{display:block;position:relative;width:100%;height:64px;background-color:#e91e63;z-index:99998;box-shadow:0 1px 5px 0 rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.12)}ms-info-bar #ms-info-bar-message{padding:8px 16px;line-height:48px;font-size:16px}ms-info-bar #ms-info-bar-message a{overflow:hidden;height:48px;color:#fff}ms-masonry{width:100%;display:block}ms-masonry [ms-masonry-item],ms-masonry ms-masonry-item{transition:transform .3s ease;position:absolute;transform:translate3d(50vw,100vh,0)}ms-material-color-picker md-menu .md-button{font-size:12px}md-menu-content.ms-material-color-picker-menu-content{width:208px;max-width:208px;min-width:208px;padding:0;overflow:hidden}md-menu-content.ms-material-color-picker-menu-content header{height:48px;text-transform:uppercase}md-menu-content.ms-material-color-picker-menu-content header .md-button{display:flex;margin:0}md-menu-content.ms-material-color-picker-menu-content header>span{line-height:13px}md-menu-content.ms-material-color-picker-menu-content .colors{position:relative;width:208px;min-height:258px;height:258px;padding:4px}md-menu-content.ms-material-color-picker-menu-content .colors .color{position:relative;width:46px;height:46px;margin:2px;border-radius:0;cursor:pointer}md-menu-content.ms-material-color-picker-menu-content .colors .color .label{padding:2px;font-size:10px}md-menu-content.ms-material-color-picker-menu-content .colors .color .icon-check{position:absolute;top:2px;right:2px;font-size:16px;opacity:.7}ms-nav{display:block;position:relative;color:rgba(255,255,255,.7);user-select:none;z-index:70}ms-nav ms-nav-item{display:block;position:relative;line-height:48px}ms-nav ms-nav-item.ms-nav-title{line-height:32px;font-size:12px;font-weight:500;margin-top:8px;padding:0 24px;width:100%;color:rgba(255,255,255,.3);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}ms-nav ms-nav-item .ms-nav-button{display:flex;align-self:flex-start;align-items:center;position:relative;cursor:pointer;padding:0 48px 0 24px;color:rgba(255,255,255,.7);text-decoration:none}ms-nav ms-nav-item .ms-nav-button:not(.active):hover{background:rgba(0,0,0,.1);text-decoration:none}ms-nav ms-nav-item .ms-nav-button .ms-nav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .2s ease-in-out .1s}ms-nav ms-nav-item .ms-nav-button .arrow{position:absolute;top:16px;right:24px;margin:0;transition:transform .3s ease-in-out,opacity .2s ease-in-out .1s}ms-nav ms-nav-item .ms-nav-button .ms-nav-badge{position:absolute;top:50%;right:24px;min-width:20px;height:20px;line-height:20px;padding:0 7px;font-size:11px;font-weight:700;border-radius:20px;transform:translateY(-50%);transition:opacity .2s ease-in-out .1s}ms-nav ms-nav-item .ms-nav-button.active{color:#fff!important}ms-nav ms-nav-item .ms-nav-button.active .ms-nav-badge{background:#fff!important;color:rgba(0,0,0,.87)!important}ms-nav ms-nav-item .ms-nav-button.active i{color:#fff}ms-nav ms-nav-item i{color:rgba(255,255,255,.7);margin:0 16px 0 0}ms-nav .ms-nav-toggle ms-nav-toggle-items{display:none;overflow:hidden}ms-nav .ms-nav-toggle ms-nav-toggle-items.expand-animation{transition:height .35s cubic-bezier(.25,.46,.45,.94)}ms-nav .ms-nav-toggle ms-nav-toggle-items.collapse-animation{transition:height .35s cubic-bezier(.25,.46,.45,.94)}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:58px}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:68px}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:78px}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:88px}ms-nav .ms-nav-toggle ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item ms-nav-toggle-items ms-nav-item .ms-nav-button{padding-left:98px}ms-nav .ms-nav-toggle.active>.ms-nav-button{color:#fff}ms-nav .ms-nav-toggle.active>.ms-nav-button a,ms-nav .ms-nav-toggle.active>.ms-nav-button md-icon{color:#fff}ms-nav .ms-nav-toggle[collapsed=false]>.ms-nav-button>.arrow{transform:rotate(90deg)}ms-nav>.ms-nav-toggle[collapsed=false]{background-color:rgba(0,0,0,.12)}@media only screen and (min-width:1280px){.ms-nav-folded #ms-nav-fold-close-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:0 0;z-index:998}.ms-nav-folded #ms-nav-fold-open-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:999}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item.ms-nav-title{height:32px}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item.ms-nav-title:before{content:'';display:block;position:relative;top:12px;width:16px;border-top:1px solid rgba(255,255,255,.12)}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item.ms-nav-title span{display:none}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item .ms-nav-button{height:48px}.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item .ms-nav-button>.arrow,.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item .ms-nav-button>.ms-nav-badge,.ms-nav-folded:not(.ms-nav-folded-open) ms-nav ms-nav-item .ms-nav-button>.ms-nav-label{opacity:0;visibility:hidden}}.ms-navigation{display:block;position:relative;color:rgba(255,255,255,.7);user-select:none}.ms-navigation li,.ms-navigation ul{padding:0;margin:0}.ms-navigation ul{display:block;overflow:hidden}.ms-navigation ul li{position:relative}.ms-navigation ul li.collapsed ul{display:none}.ms-navigation .animate-height{transition:height .25s cubic-bezier(.25,.46,.45,.94)}.ms-navigation .ms-navigation-node .ms-navigation-item{display:block;position:relative;cursor:pointer;color:rgba(255,255,255,.7)}.ms-navigation .ms-navigation-node .ms-navigation-item:hover{background:rgba(0,0,0,.1)}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button{display:flex;position:relative;width:100%;height:48px;line-height:48px;flex-direction:row;justify-content:flex-start;align-items:center;padding-right:16px;color:rgba(255,255,255,.7);text-decoration:none;white-space:nowrap;overflow:hidden}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button .icon{color:rgba(255,255,255,.7);margin:0 16px 0 0}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button span{white-space:nowrap;overflow:hidden;opacity:1;transition:opacity .25s ease-in-out .1s}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button a{white-space:nowrap;overflow:hidden;opacity:1;transition:opacity .25s ease-in-out .1s}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button .arrow{margin:0;opacity:1;transition:transform .3s ease-in-out,opacity .25s ease-in-out .1s}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button .badge{position:absolute;top:50%;right:16px;min-width:20px;height:20px;line-height:20px;padding:0 7px;font-size:11px;font-weight:700;border-radius:20px;transform:translateY(-50%);transition:opacity .2s ease-in-out .1s}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button.active{color:#fff}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button.active .icon{color:#fff}.ms-navigation .ms-navigation-node .ms-navigation-item>.ms-navigation-button.active .badge{background:#fff!important;color:rgba(0,0,0,.87)!important}.ms-navigation .ms-navigation-node:not(.collapsed)>.ms-navigation-item>.ms-navigation-button .arrow{transform:rotate(90deg)}.ms-navigation .ms-navigation-node.group>.ms-navigation-item{font-size:12px;font-weight:500;margin-top:8px;cursor:auto;background:0 0!important;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ms-navigation .ms-navigation-node.group>.ms-navigation-item>.ms-navigation-button{height:32px;line-height:32px;color:rgba(255,255,255,.3)}.ms-navigation .ms-navigation-node:not(.group).has-children:not(.collapsed){background-color:rgba(0,0,0,.12)}.ms-navigation .ms-navigation-node:not(.group).has-children.collapsing{background-color:rgba(0,0,0,.12)}.ms-navigation .ms-navigation-node:not(.group).has-children .has-children:not(.collapsed){background:0 0}.ms-navigation li .ms-navigation-button{padding-left:24px}.ms-navigation li li .ms-navigation-button{padding-left:56px}.ms-navigation li li li .ms-navigation-button{padding-left:72px}.ms-navigation li li li li .ms-navigation-button{padding-left:88px}.ms-navigation li li li li li .ms-navigation-button{padding-left:104px}.ms-navigation li.group .ms-navigation-button{padding-left:24px}.ms-navigation li.group li .ms-navigation-button{padding-left:24px}.ms-navigation li.group li li .ms-navigation-button{padding-left:56px}.ms-navigation li.group li li li .ms-navigation-button{padding-left:72px}.ms-navigation li.group li li li li .ms-navigation-button{padding-left:88px}#horizontal-navigation{height:64px;min-height:64px;max-height:64px;background:#fff;z-index:54}#horizontal-navigation .ms-navigation-horizontal{display:flex;position:relative;user-select:none}#horizontal-navigation .ms-navigation-horizontal li,#horizontal-navigation .ms-navigation-horizontal ul{padding:0;margin:0;list-style:none}#horizontal-navigation .ms-navigation-horizontal .horizontal{display:flex;flex:1}#horizontal-navigation .ms-navigation-horizontal .horizontal li{position:relative;cursor:pointer}#horizontal-navigation .ms-navigation-horizontal .horizontal li:not(.active):hover{background:rgba(0,0,0,.12)}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button{display:block;float:left;padding:12px 14px}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button .arrow{display:none}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button.active{background:0 0;border-bottom:2px solid}#horizontal-navigation .ms-navigation-horizontal .horizontal>li:last-child{margin-right:0}#horizontal-navigation .ms-navigation-horizontal .horizontal>li li .ms-navigation-horizontal-item .ms-navigation-horizontal-button.active{color:#fff!important}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children ul{display:none;position:absolute;background:#fff;z-index:999;min-width:200px;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);top:0;left:100%}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children:hover>ul{display:block}#horizontal-navigation .ms-navigation-horizontal .horizontal>.has-children>ul{top:100%;left:0}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button{display:flex;align-items:center;width:100%;color:rgba(0,0,0,.87);white-space:nowrap;padding:14px 16px;text-decoration:none}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button .icon{color:rgba(0,0,0,.54);margin-right:8px}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button .badge{min-width:20px;height:20px;line-height:20px;padding:0 7px;font-size:11px;font-weight:700;border-radius:20px;transition:opacity .2s ease-in-out .1s}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button .arrow{margin-left:8px}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button.active .badge{background:#fff!important;color:rgba(0,0,0,.87)!important}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item .ms-navigation-horizontal-button.active .icon{color:#fff}@media only screen and (min-width:960px){body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .animate-height{transition:none}body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node .ms-navigation-item .ms-navigation-button .icon{margin:0}body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node .ms-navigation-item .ms-navigation-button .arrow,body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node .ms-navigation-item .ms-navigation-button .badge,body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node .ms-navigation-item .ms-navigation-button .title{opacity:0;visibility:hidden}body.ms-navigation-folded:not(.ms-navigation-folded-open) .ms-navigation .ms-navigation-node.group>.ms-navigation-item .ms-navigation-button:before{content:'';display:block;position:relative;width:16px;border-top:1px solid rgba(255,255,255,.12)}body.ms-navigation-folded:not(.ms-navigation-folded-open) #ms-navigation-fold-expander{position:absolute;top:0;right:0;bottom:0;left:0;z-index:999}body.ms-navigation-folded #ms-navigation-fold-collapser{position:absolute;top:0;right:0;bottom:0;left:0;z-index:59}}@media only screen and (max-width:960px){body.ms-navigation-horizontal-mobile-menu-active #horizontal-navigation .navigation-toggle{height:64px;margin-right:16px}body.ms-navigation-horizontal-mobile-menu-active #horizontal-navigation .navigation-toggle .md-button{margin:0;width:64px;height:64px}body.ms-navigation-horizontal-mobile-menu-active #horizontal-navigation .ms-navigation-horizontal{display:block!important;background:#fff}#horizontal-navigation{z-index:60}#horizontal-navigation .ms-navigation-horizontal{position:absolute;display:none;top:0;right:0;bottom:0;left:0;padding:0 0 16px 0;z-index:9998;overflow-x:hidden;overflow-y:scroll}#horizontal-navigation .ms-navigation-horizontal .horizontal{flex-direction:column;min-height:100%;width:100%}#horizontal-navigation .ms-navigation-horizontal .horizontal li:not(.active):hover{background:0 0}#horizontal-navigation .ms-navigation-horizontal .horizontal li:not(.active) .ms-navigation-horizontal-item{margin:4px}#horizontal-navigation .ms-navigation-horizontal .horizontal li:not(.active) .ms-navigation-horizontal-item:hover{background:rgba(0,0,0,.12)}#horizontal-navigation .ms-navigation-horizontal .horizontal>li{padding:0 12px}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button{display:flex;float:none}#horizontal-navigation .ms-navigation-horizontal .horizontal>li>.ms-navigation-horizontal-item>.ms-navigation-horizontal-button .arrow{display:block}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children ul{position:relative;top:0;left:0;box-shadow:none}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children:hover>ul{display:none}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children .expanded>.ms-navigation-horizontal-button .arrow{transform:rotate(90deg)}#horizontal-navigation .ms-navigation-horizontal .horizontal .has-children .expanded+ul{display:block;margin-left:16px}#horizontal-navigation .ms-navigation-horizontal .horizontal .ms-navigation-horizontal-item{min-height:48px;height:48px}}.ms-phonebar{height:64px;font-size:13px}.ms-phonebar .phonebar-container{height:64px;padding:0 8px;max-width:400px}.ms-phonebar .phonebar-container .phonebar{position:relative;overflow-x:scroll}.ms-phonebar .phonebar-container .phonebar>div{height:64px;min-width:44px}.ms-phonebar .phonebar-container .phonebar>div.dragging{cursor:grabbing}.ms-phonebar .phonebar-container .phonebar>div.dragging .md-ripple-container{display:none}.ms-phonebar .phonebar-container .phonebar>div.ghost .shortcut{opacity:.27}.ms-phonebar .phonebar-container.mobile-bar-active{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;z-index:99;max-width:none!important}.ms-phonebar .phonebar-container.mobile-bar-active .phonebar,.ms-phonebar .phonebar-container.mobile-bar-active .toggle-mobile-menu{display:flex!important}.ms-phonebar .phonebar-container.mobile-bar-active .toggle-mobile-menu{margin-left:14px}.ms-phonebar .phonebar-container.mobile-bar-active>div{border-right:1px solid rgba(0,0,0,.12)}.ms-responsive-table-wrapper{overflow-x:auto;overflow-y:hidden}.ms-scroll{overflow:hidden!important}.ms-search-bar{height:64px;font-size:13px}.ms-search-bar .ms-search-bar-collapser,.ms-search-bar .ms-search-bar-expander{cursor:pointer;padding:0 20px;margin:0;width:64px!important;height:64px!important;line-height:64px!important}.ms-search-bar .ms-search-bar-loader{width:64px!important;height:64px!important;line-height:64px!important}.ms-search-bar .ms-search-bar-collapser{display:none}.ms-search-bar #ms-search-bar-input{display:none;min-height:64px;background-color:transparent;font-size:16px}.ms-search-bar .ms-search-bar-results{position:absolute;top:64px;left:0;right:0;overflow-x:hidden;overflow-y:scroll;background:#fff;max-height:300px;box-shadow:0 1px 8px 0 rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 3px 3px -2px rgba(0,0,0,.12)}.ms-search-bar .ms-search-bar-results .no-results{font-size:18px;padding:16px;color:rgba(0,0,0,.54)}.ms-search-bar .ms-search-bar-results .result{position:relative;height:56px;min-height:56px;max-height:56px;padding:16px;cursor:pointer}.ms-search-bar .ms-search-bar-results .result.selected{background:rgba(0,0,0,.07)}.ms-search-bar .ms-search-bar-results .result .icon-container{min-width:32px;margin-right:8px}.ms-search-bar .ms-search-bar-results .result .icon-container .square{width:6px;height:6px}.ms-search-bar .ms-search-bar-results .result .title{font-size:16px}.ms-search-bar .ms-search-bar-results .result .description{padding-top:6px;font-size:14px}.ms-search-bar.expanded{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;z-index:10}.ms-search-bar.expanded #ms-search-bar-input{display:block}.ms-search-bar.expanded .ms-search-bar-collapser{display:block}body.ms-search-bar-expanded #toolbar{z-index:999!important}@media screen and (max-width:960px){.ms-search-bar-label{padding:0 8px 0 12px}}.ms-shortcuts{height:64px;font-size:13px}.ms-shortcuts .shortcuts-container{height:64px;padding:0 8px;max-width:400px}.ms-shortcuts .shortcuts-container .shortcuts{position:relative;overflow-x:scroll}.ms-shortcuts .shortcuts-container .shortcuts>div{height:64px;min-width:44px}.ms-shortcuts .shortcuts-container .shortcuts>div.dragging{cursor:grabbing}.ms-shortcuts .shortcuts-container .shortcuts>div.dragging .md-ripple-container{display:none}.ms-shortcuts .shortcuts-container .shortcuts>div.ghost .shortcut{opacity:.27}.ms-shortcuts .shortcuts-container .shortcuts>div .shortcut{margin:2px}.ms-shortcuts .shortcuts-container .shortcuts>div .shortcut .first-letter{display:inline-block;vertical-align:middle;font-size:20px;text-transform:uppercase;color:rgba(0,0,0,.54)}.ms-shortcuts .shortcuts-container .shortcut-menu{margin:0}.ms-shortcuts .shortcuts-container.mobile-bar-active{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;z-index:99;max-width:none!important}.ms-shortcuts .shortcuts-container.mobile-bar-active .shortcut-menu,.ms-shortcuts .shortcuts-container.mobile-bar-active .shortcuts,.ms-shortcuts .shortcuts-container.mobile-bar-active .toggle-mobile-menu{display:flex!important}.ms-shortcuts .shortcuts-container.mobile-bar-active .toggle-mobile-menu{margin-left:14px}.ms-shortcuts .shortcuts-container.mobile-bar-active>div{border-right:1px solid rgba(0,0,0,.12)}#ms-shortcut-add-menu{position:relative;width:240px;min-width:240px;max-width:240px}#ms-shortcut-add-menu .add-shortcut-button{width:48px;height:48px;padding:0 12px;margin:0}#ms-shortcut-add-menu .shortcut-search{height:45px;padding:0 8px}#ms-shortcut-add-menu .shortcut-search .search-icon{width:40px;height:40px;line-height:48px}#ms-shortcut-add-menu .shortcut-search .shortcut-loader{padding:10px}#ms-shortcut-add-menu .shortcut-search input{padding:8px}#ms-shortcut-add-menu .results{position:relative;overflow-y:scroll;max-height:233px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.12)}#ms-shortcut-add-menu .results .no-results{font-size:18px;padding:16px;color:rgba(0,0,0,.54)}#ms-shortcut-add-menu .results .result{position:relative;min-height:56px;padding:16px;cursor:pointer}#ms-shortcut-add-menu .results .result.selected{background:rgba(0,0,0,.07)}#ms-shortcut-add-menu .results .result .icon-container{min-width:32px;margin-right:8px}#ms-shortcut-add-menu .results .result .icon-container .square{width:6px;height:6px}#ms-shortcut-add-menu .results .result .title{font-size:16px}#ms-shortcut-add-menu .results .result .description{padding-top:6px;font-size:14px}#splash-screen{display:block;position:absolute;top:0;left:0;right:0;bottom:0;background-color:#3c4252;z-index:99999}#splash-screen.ng-leave{opacity:1;transition:all linear .2s}#splash-screen.ng-leave-active{opacity:0}#splash-screen .center{display:block;width:100%;position:absolute;top:50%;transform:translateY(-50%)}#splash-screen .logo{width:96px;height:96px;line-height:96px;margin:0 auto;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:56px;text-align:center;border-radius:2px;background-color:#039be5;color:#fff;box-shadow:0 2px 14px 0 rgba(0,0,0,.22)}#splash-screen .spinner-wrapper{display:block;position:relative;width:100%;min-height:100px;height:100px}#splash-screen .spinner-wrapper .spinner{position:absolute;overflow:hidden;left:50%;margin-left:-50px;animation:outer-rotate 2.91667s linear infinite}#splash-screen .spinner-wrapper .spinner .inner{width:100px;height:100px;position:relative;animation:sporadic-rotate 5.25s cubic-bezier(.35,0,.25,1) infinite}#splash-screen .spinner-wrapper .spinner .inner .gap{position:absolute;left:49px;right:49px;top:0;bottom:0;border-top:10px solid;box-sizing:border-box}#splash-screen .spinner-wrapper .spinner .inner .left,#splash-screen .spinner-wrapper .spinner .inner .right{position:absolute;top:0;height:100px;width:50px;overflow:hidden}#splash-screen .spinner-wrapper .spinner .inner .left .half-circle,#splash-screen .spinner-wrapper .spinner .inner .right .half-circle{position:absolute;top:0;width:100px;height:100px;box-sizing:border-box;border:10px solid #4285f4;border-bottom-color:transparent;border-radius:50%}#splash-screen .spinner-wrapper .spinner .inner .left{left:0}#splash-screen .spinner-wrapper .spinner .inner .left .half-circle{left:0;border-right-color:transparent;animation:left-wobble 1.3125s cubic-bezier(.35,0,.25,1) infinite;-webkit-animation:left-wobble 1.3125s cubic-bezier(.35,0,.25,1) infinite}#splash-screen .spinner-wrapper .spinner .inner .right{right:0}#splash-screen .spinner-wrapper .spinner .inner .right .half-circle{right:0;border-left-color:transparent;animation:right-wobble 1.3125s cubic-bezier(.35,0,.25,1) infinite;-webkit-animation:right-wobble 1.3125s cubic-bezier(.35,0,.25,1) infinite}@keyframes outer-rotate{0%{transform:rotate(0) scale(.5)}100%{transform:rotate(360deg) scale(.5)}}@keyframes left-wobble{0%,100%{transform:rotate(130deg)}50%{transform:rotate(-5deg)}}@keyframes right-wobble{0%,100%{transform:rotate(-130deg)}50%{transform:rotate(5deg)}}@keyframes sporadic-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}.ms-stepper .ms-stepper-horizontal{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation{height:72px;min-height:72px;max-height:72px;background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item{display:flex;flex-direction:row;align-items:center;position:relative;height:72px;min-height:72px;max-height:72px;line-height:24px;margin:0;padding:24px;border-radius:0;cursor:pointer;font-size:14px;text-transform:none}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:after,.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:before{content:'';display:block;position:absolute;top:50%;width:24px;border-bottom:1px solid rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:before{left:0}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:after{right:0}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:first-child:before{display:none}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item:last-child:after{display:none}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.current .title{font-weight:600;color:rgba(0,0,0,.87)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.disabled{cursor:default}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.disabled .step{background:rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.disabled .title{color:rgba(0,0,0,.27)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.disabled .subtitle{color:rgba(0,0,0,.27)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item.optional{padding:16px 24px}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item .step{width:24px;min-width:24px;height:24px;border-radius:50%;margin:0 8px 0 16px;color:#fff}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item .step .icon{color:#fff;font-weight:700;line-height:24px!important}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item .title{padding-right:16px;color:rgba(0,0,0,.54)}.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation .ms-stepper-navigation-item .subtitle{font-size:12px;padding-right:16px;color:rgba(0,0,0,.54);line-height:1}.ms-stepper .ms-stepper-horizontal .ms-stepper-steps{padding:24px 16px}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls{padding:0 16px 16px 16px}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots{display:none;align-items:center;justify-content:center;padding:0 16px}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots span{width:5px;height:5px;margin:0 4px;border-radius:50%}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots span:not(.md-accent-bg){background:rgba(0,0,0,.12)}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots span.selected{width:8px;height:8px}@media screen and (max-width:600px){.ms-stepper .ms-stepper-horizontal .ms-stepper-navigation-wrapper .ms-stepper-navigation{display:none}.ms-stepper .ms-stepper-horizontal .ms-stepper-controls .ms-stepper-dots{display:flex}}.ms-stepper .ms-stepper-vertical{position:relative;background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-stepper .ms-stepper-vertical .ms-stepper-vertical-line{display:block;position:absolute;width:1px;top:32px;bottom:32px;left:43px;border-left:1px solid rgba(0,0,0,.12)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps{padding:8px 0}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step{display:block}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item{display:flex;flex-direction:row;align-items:center;position:relative;width:100%;height:72px;min-height:72px;max-height:72px;line-height:24px;margin:0;padding:0 24px;border-radius:0;cursor:pointer;font-size:14px;text-transform:none}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item:first-child:before{display:none}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item:last-child:after{display:none}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item:hover:not(.disabled) .step{background-color:#ececec;border-color:#ececec}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.current .title{font-weight:600;color:rgba(0,0,0,.87)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.disabled{cursor:default}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.disabled .title{color:rgba(0,0,0,.27)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.disabled .subtitle{color:rgba(0,0,0,.27)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item.optional{padding:16px 24px}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item .step{width:40px;min-width:40px;height:40px;margin:0 16px 0 0;border-radius:50%;background:#fff;border:8px solid #fff;color:#fff;transition:border-color .4s cubic-bezier(.25,.8,.25,1),background-color .4s cubic-bezier(.25,.8,.25,1)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item .step .icon{font-weight:700;line-height:28px!important}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item .title{padding-right:16px;color:rgba(0,0,0,.54)}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-navigation-item .subtitle{font-size:12px;padding-right:16px;color:rgba(0,0,0,.54);line-height:1}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-step-content{padding:0 24px 16px 64px}.ms-stepper .ms-stepper-vertical .ms-stepper-steps .ms-stepper-step .ms-stepper-controls{padding:0 16px 16px 56px}.ms-timeline .ms-timeline-loader{position:relative;display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 auto;background:#fff;font-weight:500;opacity:0;z-index:11;border-radius:50%}.ms-timeline .ms-timeline-loader.show{opacity:1}.ms-timeline .ms-timeline-loader .spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%}.ms-widget .ms-widget-front{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-widget .ms-widget-back{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12)}.ms-widget.sidenav-widget .ms-widget-back,.ms-widget.sidenav-widget .ms-widget-front{box-shadow:none}.ms-widget .flip-to-front{position:absolute;top:0;right:0}.ms-widget .c3{height:100%}.ms-widget .chart-fill-8{margin:0 -8px -8px -8px}.ms-widget .chart-fill-16{margin:0 -16px -16px -16px}.ms-widget .chart-fill-24{margin:0 -24px -24px -24px}.ms-widget .chart-fill-32{margin:0 -32px -32px -32px}.ms-widget .chart-fill-40{margin:0 -40px -40px -40px}.ms-widget .chart-fill-48{margin:0 -48px -48px -48px}.ms-widget .chart-fill-56{margin:0 -56px -56px -56px}.ms-widget .chart-fill-64{margin:0 -64px -64px -64px}.ms-widget .chart-fill-72{margin:0 -72px -72px -72px}.ms-widget .chart-fill-80{margin:0 -80px -80px -80px}.ms-widget{position:relative;font-size:1.3rem;perspective:3000px;padding:12px}.ms-widget .ms-widget-front{display:flex;flex-direction:column;flex:1 1 auto;position:relative;overflow:hidden;visibility:visible;width:100%;opacity:1;z-index:10;border-radius:2px;transition:transform .5s ease-out 0s,visibility 0s ease-in .2s,opacity 0s ease-in .2s;transform:rotateY(0);backface-visibility:hidden}.ms-widget .ms-widget-back{display:block;position:absolute;overflow:hidden;visibility:hidden;opacity:0;z-index:10;top:12px;right:12px;bottom:12px;left:12px;border-radius:2px;transition:transform .5s ease-out 0s,visibility 0s ease-in .2s,opacity 0s ease-in .2s;transform:rotateY(180deg);backface-visibility:hidden}.ms-widget .md-button{margin:0}.ms-widget .md-button.md-icon-button{margin:0}.ms-widget.flipped .ms-widget-front{visibility:hidden;opacity:0;transform:rotateY(180deg)}.ms-widget.flipped .ms-widget-back{display:block;visibility:visible;opacity:1;transform:rotateY(360deg)}.ms-widget.sidenav-widget{padding:0}.ms-widget.ar-2-1 .widget{padding:0;position:relative}.ms-widget.ar-2-1 .widget:before{display:block;content:"";width:100%;padding-top:50%}.ms-widget.ar-2-1 .widget>.widget{position:absolute;top:8px;left:8px;right:8px;bottom:8px}.ms-widget.ar-1-1 .widget{padding:0;position:relative}.ms-widget.ar-1-1 .widget:before{display:block;content:"";width:100%;padding-top:100%}.ms-widget.ar-1-1 .widget>.widget{position:absolute;top:8px;left:8px;right:8px;bottom:8px}.ms-theme-options .ms-theme-options-button{position:absolute;top:160px;right:0;z-index:50;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);width:48px;height:48px;line-height:48px;text-align:center;cursor:pointer;border-radius:0;margin:0;pointer-events:auto;opacity:.75}.ms-theme-options .ms-theme-options-button:hover{opacity:1}.ms-theme-options md-sidenav{width:384px;min-width:384px;max-width:384px}.ms-theme-options md-sidenav .ms-theme-options-list{background:#fff;z-index:12;pointer-events:auto}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option{padding:16px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button{width:160px;max-width:160px;margin:8px 8px 16px 8px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button.md-checked ._md-label img,.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button:hover ._md-label img{opacity:1;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button ._md-container{display:none}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button ._md-label{margin-left:0}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.layout-options md-radio-button ._md-label img{opacity:.8;margin-bottom:8px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.color-palettes md-menu-item{max-width:192px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.color-palettes .theme-button{border-bottom:16px solid;text-align:left;width:101px;height:88px;box-shadow:none;opacity:.8}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.color-palettes .theme-button.active,.ms-theme-options md-sidenav .ms-theme-options-list .theme-option.color-palettes .theme-button:hover{opacity:1;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option md-radio-button{margin:8px}.ms-theme-options md-sidenav .ms-theme-options-list .theme-option .option-title{font-size:14px;font-weight:500;padding:0 8px 12px 8px}#error-404 .content{width:90%;max-width:512px;margin-top:128px}#error-404 .content .error-code{font-size:112px;text-align:center;line-height:1;margin-bottom:16px;font-weight:500}#error-404 .content .message{font-size:24px;text-align:center;color:rgba(0,0,0,.54)}#error-404 .content .search{width:100%;height:56px;line-height:56px;margin:48px auto 16px auto;padding:16px;background:#fff}#error-404 .content .search input{padding:0 0 0 16px}#error-404 .content .back-link{font-size:15px;text-align:center}#error-500 .content{width:90%;max-width:512px;margin-top:128px}#error-500 .content .error-code{font-size:112px;line-height:1;text-align:center;margin-bottom:16px;font-weight:500}#error-500 .content .message{font-size:24px;text-align:center;color:rgba(0,0,0,.54)}#error-500 .content .sub-message{font-size:17px;text-align:center;color:rgba(0,0,0,.54);margin:16px auto 48px auto}#error-500 .content .report-link{text-align:center;font-size:15px}#login{height:100%;background:url(/assets/images/backgrounds/march.jpg) no-repeat;background-size:cover}#login #login-form-wrapper{flex:1 0 auto;padding:32px}#login #login-form-wrapper #login-form{width:384px;max-width:384px;padding:32px;background:#fff;text-align:center}#login #login-form-wrapper #login-form .logo{width:128px;height:128px;line-height:128px;font-size:86px;font-weight:500;margin:32px auto;color:#fff;border-radius:2px}#login #login-form-wrapper #login-form .title{font-size:17px;margin:16px 0 32px 0}#login #login-form-wrapper #login-form form{width:100%;text-align:left}#login #login-form-wrapper #login-form form md-checkbox{margin:0}#login #login-form-wrapper #login-form form .remember-forgot-password{font-size:13px;margin-top:8px}#login #login-form-wrapper #login-form form .remember-forgot-password .remember-me{margin-bottom:16px}#login #login-form-wrapper #login-form form .remember-forgot-password .forgot-password{font-size:13px;font-weight:500;margin-bottom:16px}#login #login-form-wrapper #login-form form .submit-button{width:220px;margin:16px auto;display:block}#login #login-form-wrapper #login-form .register{margin:32px auto 24px auto;width:250px;font-weight:500}#login #login-form-wrapper #login-form .register .text{margin-right:8px}#login #login-form-wrapper #login-form .separator{font-size:15px;font-weight:600;margin:24px auto 16px auto;position:relative;overflow:hidden;width:100px;color:rgba(0,0,0,.54)}#login #login-form-wrapper #login-form .separator .text{display:inline-block;vertical-align:baseline;position:relative;padding:0 8px;z-index:9999}#login #login-form-wrapper #login-form .separator .text:after,#login #login-form-wrapper #login-form .separator .text:before{content:'';display:block;width:30px;position:absolute;top:10px;border-top:1px solid rgba(0,0,0,.12)}#login #login-form-wrapper #login-form .separator .text:before{right:100%}#login #login-form-wrapper #login-form .separator .text:after{left:100%}#login #login-form-wrapper #login-form .md-button.facebook,#login #login-form-wrapper #login-form .md-button.google{width:192px;text-transform:none;color:#fff;font-size:13px}#login #login-form-wrapper #login-form .md-button.facebook md-icon,#login #login-form-wrapper #login-form .md-button.google md-icon{color:#fff;margin:0 8px 0 0}#login #login-form-wrapper #login-form .md-button.google{background-color:#d73d32}#login #login-form-wrapper #login-form .md-button.facebook{background-color:#3f5c9a}@media screen and (max-width:600px){#login #login-form-wrapper{padding:16px}#login #login-form-wrapper #login-form{padding:24px;width:100%}#login #login-form-wrapper #login-form form .md-button{width:90%}#login #login-form-wrapper #login-form .md-button.facebook,#login #login-form-wrapper #login-form .md-button.google{width:80%}}md-dialog.extractedReport-dialog{max-width:720px;width:720px}md-dialog.extractedReport-dialog md-dialog-content{display:block;position:relative}md-dialog.extractedReport-dialog md-toolbar .title{font-size:17px}md-dialog.extractedReport-dialog md-input-container textarea{min-height:150px}md-dialog.extractedReport-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.extractedReport-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.extractedReport-dialog .date-container{padding:16px 0 24px 0}md-dialog.extractedReport-dialog .error-list{font-size:13px}md-dialog.extractedReport-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.extractedReport-dialog .error-list .error .message{font-weight:500}md-dialog.extractedReport-dialog .error-list .error .md-button{margin:0}md-dialog.extractedReport-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.extractedReport-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#extractedReports{position:relative}#extractedReports>.header{height:76px;min-height:76px;max-height:76px}#extractedReports>.header .logo .logo-icon{margin:0 16px 0 0}#extractedReports>.header .logo .logo-text{font-size:24px}#extractedReports>.header md-icon{color:#fff}#extractedReports>.header .search-input-wrapper{position:relative}#extractedReports>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#extractedReports>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#extractedReports>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#extractedReports>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#extractedReports>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#extractedReports>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#extractedReports>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#extractedReports>.header.selected-bar .close-button-wrapper{width:244px}#extractedReports>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#extractedReports>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#extractedReports>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#extractedReports #add-extractedReport-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.metric-dialog{max-width:720px;width:720px}md-dialog.metric-dialog md-dialog-content{display:block;position:relative}md-dialog.metric-dialog md-toolbar .title{font-size:17px}md-dialog.metric-dialog md-input-container textarea{min-height:150px}md-dialog.metric-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.metric-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.metric-dialog .date-container{padding:16px 0 24px 0}md-dialog.metric-dialog .error-list{font-size:13px}md-dialog.metric-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.metric-dialog .error-list .error .message{font-weight:500}md-dialog.metric-dialog .error-list .error .md-button{margin:0}md-dialog.metric-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.metric-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#metrics{position:relative}#metrics>.header{height:76px;min-height:76px;max-height:76px}#metrics>.header .logo .logo-icon{margin:0 16px 0 0}#metrics>.header .logo .logo-text{font-size:24px}#metrics>.header md-icon{color:#fff}#metrics>.header .search-input-wrapper{position:relative}#metrics>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#metrics>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#metrics>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#metrics>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#metrics>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#metrics>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#metrics>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#metrics>.header.selected-bar .close-button-wrapper{width:244px}#metrics>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#metrics>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#metrics>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#metrics #add-metric-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.report-dialog{max-width:720px;width:720px}md-dialog.report-dialog md-dialog-content{display:block;position:relative}md-dialog.report-dialog md-toolbar .title{font-size:17px}md-dialog.report-dialog md-input-container textarea{min-height:150px}md-dialog.report-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.report-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.report-dialog .date-container{padding:16px 0 24px 0}md-dialog.report-dialog .error-list{font-size:13px}md-dialog.report-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.report-dialog .error-list .error .message{font-weight:500}md-dialog.report-dialog .error-list .error .md-button{margin:0}md-dialog.report-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.report-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.report-dialog{max-width:720px;width:720px}md-dialog.report-dialog md-dialog-content{display:block;position:relative}md-dialog.report-dialog md-toolbar .title{font-size:17px}md-dialog.report-dialog md-input-container textarea{min-height:150px}md-dialog.report-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.report-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.report-dialog .date-container{padding:16px 0 24px 0}md-dialog.report-dialog .error-list{font-size:13px}md-dialog.report-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.report-dialog .error-list .error .message{font-weight:500}md-dialog.report-dialog .error-list .error .md-button{margin:0}md-dialog.report-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.report-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.reportField-dialog{max-width:720px;width:720px}md-dialog.reportField-dialog md-dialog-content{display:block;position:relative}md-dialog.reportField-dialog md-toolbar .title{font-size:17px}md-dialog.reportField-dialog md-input-container textarea{min-height:150px}md-dialog.reportField-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.reportField-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.reportField-dialog .date-container{padding:16px 0 24px 0}md-dialog.reportField-dialog .error-list{font-size:13px}md-dialog.reportField-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.reportField-dialog .error-list .error .message{font-weight:500}md-dialog.reportField-dialog .error-list .error .md-button{margin:0}md-dialog.reportField-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.reportField-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#analytics-report .header{height:120px;min-height:120px;max-height:120px}#analytics-report .header .goto-reports-button{margin-right:16px}#analytics-report .header .report-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#analytics-report .header .report-image img{height:100%;width:auto;max-width:none}#analytics-report .header .subtitle{margin:6px 0 0 0}#analytics-report .report-detail-form-container{padding:24px;margin-bottom:24px}#analytics-report .report-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#analytics-report .report-detail-form-container .handle{cursor:move}#analytics-report .report-detail-form-container md-input-container md-switch{margin:0!important}#analytics-report .report-detail-form-container #report-image-uploader{position:relative}#analytics-report .report-detail-form-container #report-image-uploader.dropping .drop-text{display:flex}#analytics-report .report-detail-form-container #report-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#analytics-report .report-detail-form-container #report-image-uploader .upload-button{margin-bottom:16px}#analytics-report .report-detail-form-container #report-image-uploader .report-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#analytics-report .report-detail-form-container #report-image-uploader .report-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#analytics-report .report-detail-form-container #report-image-uploader .report-image .media{max-height:100%}md-dialog.report-dialog{max-width:720px;width:720px}md-dialog.report-dialog md-dialog-content{display:block;position:relative}md-dialog.report-dialog md-toolbar .title{font-size:17px}md-dialog.report-dialog md-input-container textarea{min-height:150px}md-dialog.report-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.report-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.report-dialog .date-container{padding:16px 0 24px 0}md-dialog.report-dialog .error-list{font-size:13px}md-dialog.report-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.report-dialog .error-list .error .message{font-weight:500}md-dialog.report-dialog .error-list .error .md-button{margin:0}md-dialog.report-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.report-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#reports{position:relative}#reports>.header{height:76px;min-height:76px;max-height:76px}#reports>.header .logo .logo-icon{margin:0 16px 0 0}#reports>.header .logo .logo-text{font-size:24px}#reports>.header md-icon{color:#fff}#reports>.header .search-input-wrapper{position:relative}#reports>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#reports>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#reports>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#reports>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#reports>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#reports>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#reports>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#reports>.header.selected-bar .close-button-wrapper{width:244px}#reports>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#reports>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#reports>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}md-dialog.report-dialog{max-width:720px;width:720px}md-dialog.report-dialog md-dialog-content{display:block;position:relative}md-dialog.report-dialog md-toolbar .title{font-size:17px}md-dialog.report-dialog md-input-container textarea{min-height:150px}md-dialog.report-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.report-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.report-dialog .date-container{padding:16px 0 24px 0}md-dialog.report-dialog .error-list{font-size:13px}md-dialog.report-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.report-dialog .error-list .error .message{font-weight:500}md-dialog.report-dialog .error-list .error .md-button{margin:0}md-dialog.report-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.report-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.odbc-dialog{max-width:720px;width:720px}md-dialog.odbc-dialog md-dialog-content{display:block;position:relative}md-dialog.odbc-dialog md-toolbar .title{font-size:17px}md-dialog.odbc-dialog md-input-container textarea{min-height:150px}md-dialog.odbc-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.odbc-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.odbc-dialog .date-container{padding:16px 0 24px 0}md-dialog.odbc-dialog .error-list{font-size:13px}md-dialog.odbc-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.odbc-dialog .error-list .error .message{font-weight:500}md-dialog.odbc-dialog .error-list .error .md-button{margin:0}md-dialog.odbc-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.odbc-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#odbcs{position:relative}#odbcs>.header{height:76px;min-height:76px;max-height:76px}#odbcs>.header .logo .logo-icon{margin:0 16px 0 0}#odbcs>.header .logo .logo-text{font-size:24px}#odbcs>.header md-icon{color:#fff}#odbcs>.header .search-input-wrapper{position:relative}#odbcs>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#odbcs>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#odbcs>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#odbcs>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#odbcs>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#odbcs>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#odbcs>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#odbcs>.header.selected-bar .close-button-wrapper{width:244px}#odbcs>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#odbcs>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#odbcs>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#odbcs #add-odbc-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.project-dialog{max-width:720px;width:720px}md-dialog.project-dialog md-dialog-content{display:block;position:relative}md-dialog.project-dialog md-toolbar .title{font-size:17px}md-dialog.project-dialog md-input-container textarea{min-height:150px}md-dialog.project-dialog .date-container{padding:16px 0 24px 0}md-dialog.project-dialog .error-list{font-size:13px}md-dialog.project-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.project-dialog .error-list .error .message{font-weight:500}md-dialog.project-dialog .error-list .error .md-button{margin:0}md-dialog.project-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.project-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}md-dialog.project-dialog .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#callysquare-project .header{height:120px;min-height:120px;max-height:120px}#callysquare-project .header .goto-projects-button{margin-right:16px}#callysquare-project .header .project-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#callysquare-project .header .project-image img{height:100%;width:auto;max-width:none}#callysquare-project .header .subtitle{margin:6px 0 0 0}#callysquare-project .project-detail-form-container{padding:24px;margin-bottom:24px}#callysquare-project .project-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#callysquare-project .project-detail-form-container #project-image-uploader{position:relative}#callysquare-project .project-detail-form-container #project-image-uploader.dropping .drop-text{display:flex}#callysquare-project .project-detail-form-container #project-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#callysquare-project .project-detail-form-container #project-image-uploader .upload-button{margin-bottom:16px}#callysquare-project .project-detail-form-container #project-image-uploader .project-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#callysquare-project .project-detail-form-container #project-image-uploader .project-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#callysquare-project .project-detail-form-container #project-image-uploader .project-image .media{max-height:100%}#callysquare-project>.callysquare-content{position:absolute;top:120px;bottom:0;left:0;right:0}#projects{position:relative}#projects>.header{height:76px;min-height:76px;max-height:76px}#projects>.header .logo .logo-icon{margin:0 16px 0 0}#projects>.header .logo .logo-text{font-size:24px}#projects>.header md-icon{color:#fff}#projects>.header .search-input-wrapper{position:relative}#projects>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#projects>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#projects>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#projects>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#projects>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#projects>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#projects>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#projects>.header.selected-bar .close-button-wrapper{width:244px}#projects>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#projects>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#projects>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#projects #add-project-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.squareRecording-dialog{max-width:720px;width:720px}md-dialog.squareRecording-dialog md-dialog-content{display:block;position:relative}md-dialog.squareRecording-dialog md-toolbar .title{font-size:17px}md-dialog.squareRecording-dialog md-input-container textarea{min-height:150px}md-dialog.squareRecording-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.squareRecording-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.squareRecording-dialog .date-container{padding:16px 0 24px 0}md-dialog.squareRecording-dialog .error-list{font-size:13px}md-dialog.squareRecording-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.squareRecording-dialog .error-list .error .message{font-weight:500}md-dialog.squareRecording-dialog .error-list .error .md-button{margin:0}md-dialog.squareRecording-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.squareRecording-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#squareRecordings{position:relative}#squareRecordings>.header{height:76px;min-height:76px;max-height:76px}#squareRecordings>.header .logo .logo-icon{margin:0 16px 0 0}#squareRecordings>.header .logo .logo-text{font-size:24px}#squareRecordings>.header md-icon{color:#fff}#squareRecordings>.header .search-input-wrapper{position:relative}#squareRecordings>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#squareRecordings>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#squareRecordings>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#squareRecordings>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#squareRecordings>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#squareRecordings>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#squareRecordings>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#squareRecordings>.header.selected-bar .close-button-wrapper{width:244px}#squareRecordings>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#squareRecordings>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#squareRecordings>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#squareRecordings #add-squareRecording-button{position:fixed;bottom:8px;right:8px;padding:0}#chatQueues{position:relative}#chatQueues>.header{height:76px;min-height:76px;max-height:76px}#chatQueues>.header .logo .logo-icon{margin:0 16px 0 0}#chatQueues>.header .logo .logo-text{font-size:24px}#chatQueues>.header md-icon{color:#fff}#chatQueues>.header .search-input-wrapper{position:relative}#chatQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#chatQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#chatQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#chatQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#chatQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#chatQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#chatQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#chatQueues>.header.selected-bar .close-button-wrapper{width:244px}#chatQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#chatQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#chatQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#chatQueues #add-chatQueue-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.chatQueue-dialog{max-width:720px;width:720px}md-dialog.chatQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.chatQueue-dialog md-toolbar .title{font-size:17px}md-dialog.chatQueue-dialog md-input-container textarea{min-height:150px}md-dialog.chatQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.chatQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.chatQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.chatQueue-dialog .error-list{font-size:13px}md-dialog.chatQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.chatQueue-dialog .error-list .error .message{font-weight:500}md-dialog.chatQueue-dialog .error-list .error .md-button{margin:0}md-dialog.chatQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.chatQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#chat-chatQueue .header{height:120px;min-height:120px;max-height:120px}#chat-chatQueue .header .goto-chatQueues-button{margin-right:16px}#chat-chatQueue .header .chatQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#chat-chatQueue .header .chatQueue-image img{height:100%;width:auto;max-width:none}#chat-chatQueue .header .subtitle{margin:6px 0 0 0}#chat-chatQueue .chatQueue-detail-form-container{padding:24px;margin-bottom:24px}#chat-chatQueue .chatQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#chat-chatQueue .chatQueue-detail-form-container .handle{cursor:move}#chat-chatQueue .chatQueue-detail-form-container md-input-container md-switch{margin:0!important}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader{position:relative}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader.dropping .drop-text{display:flex}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .upload-button{margin-bottom:16px}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .chatQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .chatQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#chat-chatQueue .chatQueue-detail-form-container #chatQueue-image-uploader .chatQueue-image .media{max-height:100%}#chatWebsites{position:relative}#chatWebsites>.header{height:76px;min-height:76px;max-height:76px}#chatWebsites>.header .logo .logo-icon{margin:0 16px 0 0}#chatWebsites>.header .logo .logo-text{font-size:24px}#chatWebsites>.header md-icon{color:#fff}#chatWebsites>.header .search-input-wrapper{position:relative}#chatWebsites>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#chatWebsites>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#chatWebsites>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#chatWebsites>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#chatWebsites>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#chatWebsites>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#chatWebsites>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#chatWebsites>.header.selected-bar .close-button-wrapper{width:244px}#chatWebsites>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#chatWebsites>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#chatWebsites>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#chatWebsites #add-chatWebsite-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.chatWebsite-dialog{max-width:720px;width:720px}md-dialog.chatWebsite-dialog md-dialog-content{display:block;position:relative}md-dialog.chatWebsite-dialog md-toolbar .title{font-size:17px}md-dialog.chatWebsite-dialog md-input-container textarea{min-height:150px}md-dialog.chatWebsite-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.chatWebsite-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.chatWebsite-dialog .date-container{padding:16px 0 24px 0}md-dialog.chatWebsite-dialog .error-list{font-size:13px}md-dialog.chatWebsite-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.chatWebsite-dialog .error-list .error .message{font-weight:500}md-dialog.chatWebsite-dialog .error-list .error .md-button{margin:0}md-dialog.chatWebsite-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.chatWebsite-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.chatDisposition-dialog{max-width:720px;width:720px}md-dialog.chatDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.chatDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.chatDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.chatDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.chatDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.chatDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.chatDisposition-dialog .error-list{font-size:13px}md-dialog.chatDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.chatDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.chatDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.chatDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.chatDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#chat-chatWebsite .header{height:120px;min-height:120px;max-height:120px}#chat-chatWebsite .header .goto-chatWebsites-button{margin-right:16px}#chat-chatWebsite .header .chatWebsite-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#chat-chatWebsite .header .chatWebsite-image img{height:100%;width:auto;max-width:none}#chat-chatWebsite .header .subtitle{margin:6px 0 0 0}#chat-chatWebsite .chatWebsite-detail-form-container{padding:24px;margin-bottom:24px}#chat-chatWebsite .chatWebsite-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#chat-chatWebsite .chatWebsite-detail-form-container .handle{cursor:move}#chat-chatWebsite .chatWebsite-detail-form-container md-input-container md-switch{margin:0!important}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader{position:relative}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader.dropping .drop-text{display:flex}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .upload-button{margin-bottom:16px}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .chatWebsite-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .chatWebsite-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#chat-chatWebsite .chatWebsite-detail-form-container #chatWebsite-image-uploader .chatWebsite-image .media{max-height:100%}#companies{position:relative}#companies>.header{height:76px;min-height:76px;max-height:76px}#companies>.header .logo .logo-icon{margin:0 16px 0 0}#companies>.header .logo .logo-text{font-size:24px}#companies>.header md-icon{color:#fff}#companies>.header .search-input-wrapper{position:relative}#companies>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#companies>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#companies>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#companies>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#companies>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#companies>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#companies>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#companies>.header.selected-bar .close-button-wrapper{width:244px}#companies>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#companies>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#companies>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#companies #add-company-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.company-dialog{max-width:720px;width:720px}md-dialog.company-dialog md-dialog-content{display:block;position:relative}md-dialog.company-dialog md-toolbar .title{font-size:17px}md-dialog.company-dialog md-input-container textarea{min-height:150px}md-dialog.company-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.company-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.company-dialog .date-container{padding:16px 0 24px 0}md-dialog.company-dialog .error-list{font-size:13px}md-dialog.company-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.company-dialog .error-list .error .message{font-weight:500}md-dialog.company-dialog .error-list .error .md-button{margin:0}md-dialog.company-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.company-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#contactmanager-company .header{height:120px;min-height:120px;max-height:120px}#contactmanager-company .header .goto-companies-button{margin-right:16px}#contactmanager-company .header .company-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#contactmanager-company .header .company-image img{height:100%;width:auto;max-width:none}#contactmanager-company .header .subtitle{margin:6px 0 0 0}#contactmanager-company .company-detail-form-container{padding:24px;margin-bottom:24px}#contactmanager-company .company-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#contactmanager-company .company-detail-form-container .handle{cursor:move}#contactmanager-company .company-detail-form-container md-input-container md-switch{margin:0!important}#contactmanager-company .company-detail-form-container #company-image-uploader{position:relative}#contactmanager-company .company-detail-form-container #company-image-uploader.dropping .drop-text{display:flex}#contactmanager-company .company-detail-form-container #company-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#contactmanager-company .company-detail-form-container #company-image-uploader .upload-button{margin-bottom:16px}#contactmanager-company .company-detail-form-container #company-image-uploader .company-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#contactmanager-company .company-detail-form-container #company-image-uploader .company-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#contactmanager-company .company-detail-form-container #company-image-uploader .company-image .media{max-height:100%}#cm-contacts{position:relative}#cm-contacts>.header{height:76px;min-height:76px;max-height:76px}#cm-contacts>.header .logo .logo-icon{margin:0 16px 0 0}#cm-contacts>.header .logo .logo-text{font-size:24px}#cm-contacts>.header md-icon{color:#fff}#cm-contacts>.header .search-input-wrapper{position:relative}#cm-contacts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#cm-contacts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#cm-contacts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#cm-contacts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#cm-contacts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#cm-contacts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#cm-contacts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#cm-contacts>.header.selected-bar .close-button-wrapper{width:244px}#cm-contacts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#cm-contacts>.content>md-sidenav{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);padding:0}#cm-contacts>.content>md-sidenav .selected-list{background-color:rgba(158,158,158,.2)}#cm-contacts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#cm-contacts>.content .main .contacts-list{box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);position:relative;margin-top:8px;padding-bottom:0}#cm-contacts>.content .main .contacts-list .md-subheader{box-shadow:0 1px 1px 0 rgba(0,0,0,.14);border-bottom:1px solid rgba(0,0,0,.14)}#cm-contacts>.content .main .contacts-list .md-subheader ._md-subheader-inner{padding:16px}#cm-contacts>.content .main .contacts-list .md-subheader .contacts-count{padding-left:4px}#cm-contacts>.content .main .contacts-list .md-subheader .list-title{margin-right:4px}#cm-contacts>.content .main .contacts-list .md-subheader .edit-group-form .editable-controls{display:flex;flex-direction:row;align-items:center;justify-content:flex-start}#cm-contacts>.content .main .contacts-list .md-subheader .edit-group-form .editable-controls .editable-input{border:1px solid rgba(0,0,0,.2);padding:4px 6px;margin-right:6px;font-size:13px}#cm-contacts>.content .main .contacts-list .md-subheader .edit-group-form .edit-group-button{margin:0}#cm-contacts>.content .main .contacts-list .md-subheader .edit-group-form .md-button{margin:0;margin:0;padding:0;height:32px;min-height:32px;line-height:32px;width:32px}#cm-contacts>.content .main .contacts-list .contact-item{position:absolute;right:0;left:0;width:100%;box-shadow:0 1px 1px 0 rgba(0,0,0,.14);background:#fff;transition:transform .2s ease-out;will-change:transform}#cm-contacts>.content .main .contacts-list .contact-item:last-of-type{margin-bottom:24px}#cm-contacts>.content .main .contacts-list .contact-item.ng-leave{transform:translateY(0);display:none}#cm-contacts>.content .main .contacts-list .contact-item.ng-leave.ng-leave-active{transform:translateY(-100%)}#cm-contacts>.content .main .contacts-list .contact-item.ng-hide{display:none}#cm-contacts>.content .main .contacts-list .contact-item.ng-hide-add-active,#cm-contacts>.content .main .contacts-list .contact-item.ng-hide-remove-active{display:block;transition-property:all}#cm-contacts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#cm-contacts md-fab-speed-dial .text-capitalize{text-transform:capitalize}#cm-contacts md-fab-speed-dial .md-fab.md-focused,#cm-contacts md-fab-speed-dial .md-fab:hover{background-color:#000!important}#cm-contacts md-fab-speed-dial p.note{font-size:1.2rem}#cm-contacts md-fab-speed-dial .lock-size{min-width:300px;min-height:300px;width:300px;height:300px;margin-left:auto;margin-right:auto}#cm-contacts #add-contact-button{position:fixed;bottom:8px;right:8px;padding:0}@media screen and (min-width:1280px){#cm-contacts>.content .main{left:268px}}md-dialog.cm-contact-dialog{max-width:720px;width:720px}md-dialog.cm-contact-dialog md-dialog-content{display:block;position:relative}md-dialog.cm-contact-dialog md-toolbar .title{font-size:17px}md-dialog.cm-contact-dialog md-input-container textarea{min-height:150px}md-dialog.cm-contact-dialog .date-container{padding:16px 0 24px 0}md-dialog.cm-contact-dialog .error-list{font-size:13px}md-dialog.cm-contact-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.cm-contact-dialog .error-list .error .message{font-weight:500}md-dialog.cm-contact-dialog .error-list .error .md-button{margin:0}md-dialog.cm-contact-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.cm-contact-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.cm-contact-dialog{max-width:720px;width:720px}md-dialog.cm-contact-dialog md-dialog-content{display:block;position:relative}md-dialog.cm-contact-dialog md-toolbar .title{font-size:17px}md-dialog.cm-contact-dialog md-input-container textarea{min-height:150px}md-dialog.cm-contact-dialog .date-container{padding:16px 0 24px 0}md-dialog.cm-contact-dialog .error-list{font-size:13px}md-dialog.cm-contact-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.cm-contact-dialog .error-list .error .message{font-weight:500}md-dialog.cm-contact-dialog .error-list .error .md-button{margin:0}md-dialog.cm-contact-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.cm-contact-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.hopper-dialog{max-width:720px;width:720px}md-dialog.hopper-dialog md-dialog-content{display:block;position:relative}md-dialog.hopper-dialog md-toolbar .title{font-size:17px}md-dialog.hopper-dialog md-input-container textarea{min-height:150px}md-dialog.hopper-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.hopper-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.hopper-dialog .date-container{padding:16px 0 24px 0}md-dialog.hopper-dialog .error-list{font-size:13px}md-dialog.hopper-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.hopper-dialog .error-list .error .message{font-weight:500}md-dialog.hopper-dialog .error-list .error .md-button{margin:0}md-dialog.hopper-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.hopper-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#cm-contact .pointer{cursor:pointer}#cm-contact .header{height:120px;min-height:120px;max-height:120px}#cm-contact .header .goto-contacts-button{margin-right:16px}#cm-contact .header .contact-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#cm-contact .header .contact-image img{height:100%;width:auto;max-width:none}#cm-contact .header .subtitle{margin:6px 0 0 0}#cm-contact .contact-detail-form-container{padding:24px;margin-bottom:24px}#cm-contact .contact-detail-form-container md-input-container:not(.md-input-invalid)>md-icon.email{color:green}#cm-contact .contact-detail-form-container md-input-container:not(.md-input-invalid)>md-icon.firstname{color:#1e90ff}#cm-contact .contact-detail-form-container md-input-container.md-input-invalid>md-icon.email,#cm-contact .contact-detail-form-container md-input-container.md-input-invalid>md-icon.firstname{color:red}#cm-contact .contact-detail-form-container .hint{position:absolute;left:2px;right:auto;bottom:7px;font-size:12px;line-height:14px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.cm-contact-dialog{max-width:720px;width:720px}md-dialog.cm-contact-dialog md-dialog-content{display:block;position:relative}md-dialog.cm-contact-dialog md-toolbar .title{font-size:17px}md-dialog.cm-contact-dialog md-input-container textarea{min-height:150px}md-dialog.cm-contact-dialog .date-container{padding:16px 0 24px 0}md-dialog.cm-contact-dialog .error-list{font-size:13px}md-dialog.cm-contact-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.cm-contact-dialog .error-list .error .message{font-weight:500}md-dialog.cm-contact-dialog .error-list .error .md-button{margin:0}md-dialog.cm-contact-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.cm-contact-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.upload-dialog{max-width:720px;width:720px}md-dialog.upload-dialog md-dialog-content{display:block;position:relative}md-dialog.upload-dialog md-toolbar .title{font-size:17px}md-dialog.upload-dialog md-input-container textarea{min-height:150px}md-dialog.upload-dialog .date-container{padding:16px 0 24px 0}md-dialog.upload-dialog .error-list{font-size:13px}md-dialog.upload-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.upload-dialog .error-list .error .message{font-weight:500}md-dialog.upload-dialog .error-list .error .md-button{margin:0}md-dialog.upload-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.upload-dialog .contact-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}md-dialog.upload-dialog .contact-image img{height:100%;width:auto;max-width:none}md-dialog.upload-dialog .contact-image .media{max-height:100%}md-dialog.upload-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.globalCustomField-dialog{max-width:720px;width:720px}md-dialog.globalCustomField-dialog md-dialog-content{display:block;position:relative}md-dialog.globalCustomField-dialog md-toolbar .title{font-size:17px}md-dialog.globalCustomField-dialog md-input-container textarea{min-height:150px}md-dialog.globalCustomField-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.globalCustomField-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.globalCustomField-dialog .date-container{padding:16px 0 24px 0}md-dialog.globalCustomField-dialog .error-list{font-size:13px}md-dialog.globalCustomField-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.globalCustomField-dialog .error-list .error .message{font-weight:500}md-dialog.globalCustomField-dialog .error-list .error .md-button{margin:0}md-dialog.globalCustomField-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.globalCustomField-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#globalCustomFields{position:relative}#globalCustomFields>.header{height:76px;min-height:76px;max-height:76px}#globalCustomFields>.header .logo .logo-icon{margin:0 16px 0 0}#globalCustomFields>.header .logo .logo-text{font-size:24px}#globalCustomFields>.header md-icon{color:#fff}#globalCustomFields>.header .search-input-wrapper{position:relative}#globalCustomFields>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#globalCustomFields>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#globalCustomFields>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#globalCustomFields>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#globalCustomFields>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#globalCustomFields>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#globalCustomFields>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#globalCustomFields>.header.selected-bar .close-button-wrapper{width:244px}#globalCustomFields>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#globalCustomFields>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#globalCustomFields>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#globalCustomFields #add-globalCustomField-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.list-dialog{max-width:720px;width:720px}md-dialog.list-dialog md-dialog-content{display:block;position:relative}md-dialog.list-dialog md-toolbar .title{font-size:17px}md-dialog.list-dialog md-input-container textarea{min-height:150px}md-dialog.list-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.list-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.list-dialog .date-container{padding:16px 0 24px 0}md-dialog.list-dialog .error-list{font-size:13px}md-dialog.list-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.list-dialog .error-list .error .message{font-weight:500}md-dialog.list-dialog .error-list .error .md-button{margin:0}md-dialog.list-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.list-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.customField-dialog{max-width:720px;width:720px}md-dialog.customField-dialog md-dialog-content{display:block;position:relative}md-dialog.customField-dialog md-toolbar .title{font-size:17px}md-dialog.customField-dialog md-input-container textarea{min-height:150px}md-dialog.customField-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.customField-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.customField-dialog .date-container{padding:16px 0 24px 0}md-dialog.customField-dialog .error-list{font-size:13px}md-dialog.customField-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.customField-dialog .error-list .error .message{font-weight:500}md-dialog.customField-dialog .error-list .error .md-button{margin:0}md-dialog.customField-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.customField-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#contactmanager-list .header{height:120px;min-height:120px;max-height:120px}#contactmanager-list .header .goto-lists-button{margin-right:16px}#contactmanager-list .header .list-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#contactmanager-list .header .list-image img{height:100%;width:auto;max-width:none}#contactmanager-list .header .subtitle{margin:6px 0 0 0}#contactmanager-list .list-detail-form-container{padding:24px;margin-bottom:24px}#contactmanager-list .list-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#contactmanager-list .list-detail-form-container .handle{cursor:move}#contactmanager-list .list-detail-form-container md-input-container md-switch{margin:0!important}#contactmanager-list .list-detail-form-container #list-image-uploader{position:relative}#contactmanager-list .list-detail-form-container #list-image-uploader.dropping .drop-text{display:flex}#contactmanager-list .list-detail-form-container #list-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#contactmanager-list .list-detail-form-container #list-image-uploader .upload-button{margin-bottom:16px}#contactmanager-list .list-detail-form-container #list-image-uploader .list-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#contactmanager-list .list-detail-form-container #list-image-uploader .list-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#contactmanager-list .list-detail-form-container #list-image-uploader .list-image .media{max-height:100%}md-dialog.voiceDisposition-dialog{max-width:720px;width:720px}md-dialog.voiceDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.voiceDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.voiceDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.voiceDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.voiceDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.voiceDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.voiceDisposition-dialog .error-list{font-size:13px}md-dialog.voiceDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.voiceDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.voiceDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.voiceDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.voiceDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#lists{position:relative}#lists>.header{height:76px;min-height:76px;max-height:76px}#lists>.header .logo .logo-icon{margin:0 16px 0 0}#lists>.header .logo .logo-text{font-size:24px}#lists>.header md-icon{color:#fff}#lists>.header .search-input-wrapper{position:relative}#lists>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#lists>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#lists>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#lists>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#lists>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#lists>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#lists>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#lists>.header.selected-bar .close-button-wrapper{width:244px}#lists>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#lists>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#lists>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#lists #add-list-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.agent-dialog{max-width:720px;width:720px}md-dialog.agent-dialog md-dialog-content{display:block;position:relative}md-dialog.agent-dialog md-toolbar .title{font-size:17px}md-dialog.agent-dialog md-input-container textarea{min-height:150px}md-dialog.agent-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.agent-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.agent-dialog .date-container{padding:16px 0 24px 0}md-dialog.agent-dialog .error-list{font-size:13px}md-dialog.agent-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.agent-dialog .error-list .error .message{font-weight:500}md-dialog.agent-dialog .error-list .error .md-button{margin:0}md-dialog.agent-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.agent-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.agent-dialog{max-width:720px;width:720px}md-dialog.agent-dialog md-dialog-content{display:block;position:relative}md-dialog.agent-dialog md-toolbar .title{font-size:17px}md-dialog.agent-dialog md-input-container textarea{min-height:150px}md-dialog.agent-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.agent-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.agent-dialog .date-container{padding:16px 0 24px 0}md-dialog.agent-dialog .error-list{font-size:13px}md-dialog.agent-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.agent-dialog .error-list .error .message{font-weight:500}md-dialog.agent-dialog .error-list .error .md-button{margin:0}md-dialog.agent-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.agent-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#dashboard-general>.center>.header{height:160px;min-height:160px;max-height:160px;padding-bottom:0}#dashboard-general>.center>.header .selected-general{background:rgba(0,0,0,.12);color:#fff;padding:8px 16px;height:40px;line-height:24px;font-size:16px}#dashboard-general>.center>.header .general-selector{margin-left:1px;border-radius:0;background:rgba(0,0,0,.12)}#dashboard-general>.center>.header .general-selector md-icon{color:#fff}#dashboard-general>.center>.content{background:0 0;padding:0}#dashboard-general>.center>.content>md-tabs>md-tabs-wrapper{background:#fff;box-shadow:0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);padding:0 24px}#dashboard-general>.center>.content>md-tabs>md-tabs-wrapper md-tabs-canvas{height:56px}#dashboard-general>.center>.content>md-tabs>md-tabs-wrapper md-tabs-canvas md-pagination-wrapper{height:56px}#dashboard-general>.center>.content>md-tabs>md-tabs-wrapper md-tabs-canvas .md-tab{padding:16px 24px;text-transform:none}#dashboard-general>.center>.content>md-tabs:not(.md-dynamic-height) md-tabs-content-wrapper{top:56px}#dashboard-general>.center>.content>md-tabs>md-tabs-content-wrapper md-tab-content{padding:12px}#dashboard-general>.sidenav{width:330px;min-width:330px;max-width:330px;padding:0;z-index:51;box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}#dashboard-general>.sidenav.md-locked-open{width:250px;min-width:250px;max-width:250px;z-index:2;box-shadow:none;background:#eee}#dashboard-general .dashboard-container{padding:24px;margin-bottom:24px}md-dialog.faxAccount-dialog{max-width:720px;width:720px}md-dialog.faxAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.faxAccount-dialog md-toolbar .title{font-size:17px}md-dialog.faxAccount-dialog md-input-container textarea{min-height:150px}md-dialog.faxAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.faxAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.faxAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.faxAccount-dialog .error-list{font-size:13px}md-dialog.faxAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.faxAccount-dialog .error-list .error .message{font-weight:500}md-dialog.faxAccount-dialog .error-list .error .md-button{margin:0}md-dialog.faxAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.faxAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.faxDisposition-dialog{max-width:720px;width:720px}md-dialog.faxDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.faxDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.faxDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.faxDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.faxDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.faxDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.faxDisposition-dialog .error-list{font-size:13px}md-dialog.faxDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.faxDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.faxDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.faxDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.faxDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#fax-faxAccount .header{height:120px;min-height:120px;max-height:120px}#fax-faxAccount .header .goto-faxAccounts-button{margin-right:16px}#fax-faxAccount .header .faxAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#fax-faxAccount .header .faxAccount-image img{height:100%;width:auto;max-width:none}#fax-faxAccount .header .subtitle{margin:6px 0 0 0}#fax-faxAccount .faxAccount-detail-form-container{padding:24px;margin-bottom:24px}#fax-faxAccount .faxAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#fax-faxAccount .faxAccount-detail-form-container .handle{cursor:move}#fax-faxAccount .faxAccount-detail-form-container md-input-container md-switch{margin:0!important}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader{position:relative}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader.dropping .drop-text{display:flex}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .upload-button{margin-bottom:16px}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .faxAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .faxAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#fax-faxAccount .faxAccount-detail-form-container #faxAccount-image-uploader .faxAccount-image .media{max-height:100%}#faxAccounts{position:relative}#faxAccounts>.header{height:76px;min-height:76px;max-height:76px}#faxAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#faxAccounts>.header .logo .logo-text{font-size:24px}#faxAccounts>.header md-icon{color:#fff}#faxAccounts>.header .search-input-wrapper{position:relative}#faxAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#faxAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#faxAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#faxAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#faxAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#faxAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#faxAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#faxAccounts>.header.selected-bar .close-button-wrapper{width:244px}#faxAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#faxAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#faxAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#faxAccounts #add-faxAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.faxQueue-dialog{max-width:720px;width:720px}md-dialog.faxQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.faxQueue-dialog md-toolbar .title{font-size:17px}md-dialog.faxQueue-dialog md-input-container textarea{min-height:150px}md-dialog.faxQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.faxQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.faxQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.faxQueue-dialog .error-list{font-size:13px}md-dialog.faxQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.faxQueue-dialog .error-list .error .message{font-weight:500}md-dialog.faxQueue-dialog .error-list .error .md-button{margin:0}md-dialog.faxQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.faxQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#fax-faxQueue .header{height:120px;min-height:120px;max-height:120px}#fax-faxQueue .header .goto-faxQueues-button{margin-right:16px}#fax-faxQueue .header .faxQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#fax-faxQueue .header .faxQueue-image img{height:100%;width:auto;max-width:none}#fax-faxQueue .header .subtitle{margin:6px 0 0 0}#fax-faxQueue .faxQueue-detail-form-container{padding:24px;margin-bottom:24px}#fax-faxQueue .faxQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#fax-faxQueue .faxQueue-detail-form-container .handle{cursor:move}#fax-faxQueue .faxQueue-detail-form-container md-input-container md-switch{margin:0!important}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader{position:relative}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader.dropping .drop-text{display:flex}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .upload-button{margin-bottom:16px}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .faxQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .faxQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#fax-faxQueue .faxQueue-detail-form-container #faxQueue-image-uploader .faxQueue-image .media{max-height:100%}#faxQueues{position:relative}#faxQueues>.header{height:76px;min-height:76px;max-height:76px}#faxQueues>.header .logo .logo-icon{margin:0 16px 0 0}#faxQueues>.header .logo .logo-text{font-size:24px}#faxQueues>.header md-icon{color:#fff}#faxQueues>.header .search-input-wrapper{position:relative}#faxQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#faxQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#faxQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#faxQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#faxQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#faxQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#faxQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#faxQueues>.header.selected-bar .close-button-wrapper{width:244px}#faxQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#faxQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#faxQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#faxQueues #add-faxQueue-button{position:fixed;bottom:8px;right:8px;padding:0}#profile .about-tab{max-width:1200px}#profile .about-tab .about{padding:8px}#profile .about-tab .about .general .location md-icon{line-height:13px!important}#profile .about-tab .about .work .job .company{padding:0 16px 0 0;font-weight:500}#profile .about-tab .about .work .job .date{color:rgba(0,0,0,.54)}#profile .about-tab .about-sidebar{padding:8px 8px 8px 32px}#profile .about-tab .about-sidebar .friends .content .friend{padding:4px}#profile .about-tab .about-sidebar .groups .content .group{margin-bottom:16px}#profile .about-tab .about-sidebar .groups .content .group:last-child{margin-bottom:0}#profile .about-tab .about-sidebar .groups .content .group .logo{border:1px solid rgba(0,0,0,.12);margin-right:16px}#profile .about-tab .about-sidebar .groups .content .group .name{font-weight:500;font-size:15px}#profile .about-tab .about-sidebar .groups .content .group .category,#profile .about-tab .about-sidebar .groups .content .group .members{color:rgba(0,0,0,.54)}#profile .about-tab .about-sidebar .groups .content .group .members{margin-top:16px}@media screen and (max-width:960px){#profile .about-tab .about-sidebar{padding:8px}}#maintenance{height:100%;background:url(/assets/images/backgrounds/march.jpg) no-repeat;background-size:cover}#maintenance #maintenance-form-wrapper{flex:1 0 auto;padding:32px}#maintenance #maintenance-form-wrapper #maintenance-form{max-width:384px;padding:32px;background:#fff;text-align:center}#maintenance #maintenance-form-wrapper #maintenance-form .logo{width:128px;height:128px;line-height:128px;font-size:86px;font-weight:500;margin:32px auto;color:#fff;border-radius:2px}#maintenance #maintenance-form-wrapper #maintenance-form .title{font-size:17px;margin-top:16px}#maintenance #maintenance-form-wrapper #maintenance-form .subtitle{margin:16px 0;max-width:300px;color:rgba(0,0,0,.54);font-size:15px}@media screen and (max-width:600px){#maintenance #maintenance-form-wrapper{padding:16px}#maintenance #maintenance-form-wrapper #maintenance-form{padding:24px;width:100%}}md-dialog.freshdeskAccount-dialog{max-width:720px;width:720px}md-dialog.freshdeskAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.freshdeskAccount-dialog md-toolbar .title{font-size:17px}md-dialog.freshdeskAccount-dialog md-input-container textarea{min-height:150px}md-dialog.freshdeskAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.freshdeskAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.freshdeskAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.freshdeskAccount-dialog .error-list{font-size:13px}md-dialog.freshdeskAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.freshdeskAccount-dialog .error-list .error .message{font-weight:500}md-dialog.freshdeskAccount-dialog .error-list .error .md-button{margin:0}md-dialog.freshdeskAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.freshdeskAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.freshdeskConfiguration-dialog{max-width:720px;width:720px}md-dialog.freshdeskConfiguration-dialog md-dialog-content{display:block;position:relative}md-dialog.freshdeskConfiguration-dialog md-toolbar .title{font-size:17px}md-dialog.freshdeskConfiguration-dialog md-input-container textarea{min-height:150px}md-dialog.freshdeskConfiguration-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.freshdeskConfiguration-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.freshdeskConfiguration-dialog .date-container{padding:16px 0 24px 0}md-dialog.freshdeskConfiguration-dialog .error-list{font-size:13px}md-dialog.freshdeskConfiguration-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.freshdeskConfiguration-dialog .error-list .error .message{font-weight:500}md-dialog.freshdeskConfiguration-dialog .error-list .error .md-button{margin:0}md-dialog.freshdeskConfiguration-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.freshdeskConfiguration-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.freshdeskAccount-item-dialog{max-width:720px;width:720px}md-dialog.freshdeskAccount-item-dialog md-dialog-content{display:block;position:relative}md-dialog.freshdeskAccount-item-dialog md-toolbar .title{font-size:17px}md-dialog.freshdeskAccount-item-dialog md-input-container textarea{min-height:150px}md-dialog.freshdeskAccount-item-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.freshdeskAccount-item-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.freshdeskAccount-item-dialog .date-container{padding:16px 0 24px 0}md-dialog.freshdeskAccount-item-dialog .error-list{font-size:13px}md-dialog.freshdeskAccount-item-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.freshdeskAccount-item-dialog .error-list .error .message{font-weight:500}md-dialog.freshdeskAccount-item-dialog .error-list .error .md-button{margin:0}md-dialog.freshdeskAccount-item-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.freshdeskAccount-item-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#integrations-freshdeskAccount .header{height:120px;min-height:120px;max-height:120px}#integrations-freshdeskAccount .header .goto-freshdeskAccounts-button{margin-right:16px}#integrations-freshdeskAccount .header .freshdeskAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#integrations-freshdeskAccount .header .freshdeskAccount-image img{height:100%;width:auto;max-width:none}#integrations-freshdeskAccount .header .subtitle{margin:6px 0 0 0}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container{padding:24px;margin-bottom:24px}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container .handle{cursor:move}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container md-input-container md-switch{margin:0!important}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader{position:relative}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader.dropping .drop-text{display:flex}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .upload-button{margin-bottom:16px}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .freshdeskAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .freshdeskAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#integrations-freshdeskAccount .freshdeskAccount-detail-form-container #freshdeskAccount-image-uploader .freshdeskAccount-image .media{max-height:100%}#freshdeskAccounts{position:relative}#freshdeskAccounts>.header{height:76px;min-height:76px;max-height:76px}#freshdeskAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#freshdeskAccounts>.header .logo .logo-text{font-size:24px}#freshdeskAccounts>.header md-icon{color:#fff}#freshdeskAccounts>.header .search-input-wrapper{position:relative}#freshdeskAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#freshdeskAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#freshdeskAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#freshdeskAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#freshdeskAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#freshdeskAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#freshdeskAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#freshdeskAccounts>.header.selected-bar .close-button-wrapper{width:244px}#freshdeskAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#freshdeskAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#freshdeskAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#freshdeskAccounts #add-freshdeskAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.salesforceAccount-dialog{max-width:720px;width:720px}md-dialog.salesforceAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.salesforceAccount-dialog md-toolbar .title{font-size:17px}md-dialog.salesforceAccount-dialog md-input-container textarea{min-height:150px}md-dialog.salesforceAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.salesforceAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.salesforceAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.salesforceAccount-dialog .error-list{font-size:13px}md-dialog.salesforceAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.salesforceAccount-dialog .error-list .error .message{font-weight:500}md-dialog.salesforceAccount-dialog .error-list .error .md-button{margin:0}md-dialog.salesforceAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.salesforceAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.salesforceConfiguration-dialog{max-width:720px;width:720px}md-dialog.salesforceConfiguration-dialog md-dialog-content{display:block;position:relative}md-dialog.salesforceConfiguration-dialog md-toolbar .title{font-size:17px}md-dialog.salesforceConfiguration-dialog md-input-container textarea{min-height:150px}md-dialog.salesforceConfiguration-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.salesforceConfiguration-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.salesforceConfiguration-dialog .date-container{padding:16px 0 24px 0}md-dialog.salesforceConfiguration-dialog .error-list{font-size:13px}md-dialog.salesforceConfiguration-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.salesforceConfiguration-dialog .error-list .error .message{font-weight:500}md-dialog.salesforceConfiguration-dialog .error-list .error .md-button{margin:0}md-dialog.salesforceConfiguration-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.salesforceConfiguration-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.salesforceAccount-item-dialog{max-width:720px;width:720px}md-dialog.salesforceAccount-item-dialog md-dialog-content{display:block;position:relative}md-dialog.salesforceAccount-item-dialog md-toolbar .title{font-size:17px}md-dialog.salesforceAccount-item-dialog md-input-container textarea{min-height:150px}md-dialog.salesforceAccount-item-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.salesforceAccount-item-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.salesforceAccount-item-dialog .date-container{padding:16px 0 24px 0}md-dialog.salesforceAccount-item-dialog .error-list{font-size:13px}md-dialog.salesforceAccount-item-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.salesforceAccount-item-dialog .error-list .error .message{font-weight:500}md-dialog.salesforceAccount-item-dialog .error-list .error .md-button{margin:0}md-dialog.salesforceAccount-item-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.salesforceAccount-item-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#integrations-salesforceAccount .header{height:120px;min-height:120px;max-height:120px}#integrations-salesforceAccount .header .goto-salesforceAccounts-button{margin-right:16px}#integrations-salesforceAccount .header .salesforceAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#integrations-salesforceAccount .header .salesforceAccount-image img{height:100%;width:auto;max-width:none}#integrations-salesforceAccount .header .subtitle{margin:6px 0 0 0}#integrations-salesforceAccount .salesforceAccount-detail-form-container{padding:24px;margin-bottom:24px}#integrations-salesforceAccount .salesforceAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#integrations-salesforceAccount .salesforceAccount-detail-form-container .handle{cursor:move}#integrations-salesforceAccount .salesforceAccount-detail-form-container md-input-container md-switch{margin:0!important}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader{position:relative}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader.dropping .drop-text{display:flex}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .upload-button{margin-bottom:16px}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .salesforceAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .salesforceAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#integrations-salesforceAccount .salesforceAccount-detail-form-container #salesforceAccount-image-uploader .salesforceAccount-image .media{max-height:100%}#salesforceAccounts{position:relative}#salesforceAccounts>.header{height:76px;min-height:76px;max-height:76px}#salesforceAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#salesforceAccounts>.header .logo .logo-text{font-size:24px}#salesforceAccounts>.header md-icon{color:#fff}#salesforceAccounts>.header .search-input-wrapper{position:relative}#salesforceAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#salesforceAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#salesforceAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#salesforceAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#salesforceAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#salesforceAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#salesforceAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#salesforceAccounts>.header.selected-bar .close-button-wrapper{width:244px}#salesforceAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#salesforceAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#salesforceAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#salesforceAccounts #add-salesforceAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.sugarcrmAccount-dialog{max-width:720px;width:720px}md-dialog.sugarcrmAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.sugarcrmAccount-dialog md-toolbar .title{font-size:17px}md-dialog.sugarcrmAccount-dialog md-input-container textarea{min-height:150px}md-dialog.sugarcrmAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.sugarcrmAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.sugarcrmAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.sugarcrmAccount-dialog .error-list{font-size:13px}md-dialog.sugarcrmAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.sugarcrmAccount-dialog .error-list .error .message{font-weight:500}md-dialog.sugarcrmAccount-dialog .error-list .error .md-button{margin:0}md-dialog.sugarcrmAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.sugarcrmAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.sugarcrmConfiguration-dialog{max-width:720px;width:720px}md-dialog.sugarcrmConfiguration-dialog md-dialog-content{display:block;position:relative}md-dialog.sugarcrmConfiguration-dialog md-toolbar .title{font-size:17px}md-dialog.sugarcrmConfiguration-dialog md-input-container textarea{min-height:150px}md-dialog.sugarcrmConfiguration-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.sugarcrmConfiguration-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.sugarcrmConfiguration-dialog .date-container{padding:16px 0 24px 0}md-dialog.sugarcrmConfiguration-dialog .error-list{font-size:13px}md-dialog.sugarcrmConfiguration-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.sugarcrmConfiguration-dialog .error-list .error .message{font-weight:500}md-dialog.sugarcrmConfiguration-dialog .error-list .error .md-button{margin:0}md-dialog.sugarcrmConfiguration-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.sugarcrmConfiguration-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.sugarcrmAccount-item-dialog{max-width:720px;width:720px}md-dialog.sugarcrmAccount-item-dialog md-dialog-content{display:block;position:relative}md-dialog.sugarcrmAccount-item-dialog md-toolbar .title{font-size:17px}md-dialog.sugarcrmAccount-item-dialog md-input-container textarea{min-height:150px}md-dialog.sugarcrmAccount-item-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.sugarcrmAccount-item-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.sugarcrmAccount-item-dialog .date-container{padding:16px 0 24px 0}md-dialog.sugarcrmAccount-item-dialog .error-list{font-size:13px}md-dialog.sugarcrmAccount-item-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.sugarcrmAccount-item-dialog .error-list .error .message{font-weight:500}md-dialog.sugarcrmAccount-item-dialog .error-list .error .md-button{margin:0}md-dialog.sugarcrmAccount-item-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.sugarcrmAccount-item-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#integrations-sugarcrmAccount .header{height:120px;min-height:120px;max-height:120px}#integrations-sugarcrmAccount .header .goto-sugarcrmAccounts-button{margin-right:16px}#integrations-sugarcrmAccount .header .sugarcrmAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#integrations-sugarcrmAccount .header .sugarcrmAccount-image img{height:100%;width:auto;max-width:none}#integrations-sugarcrmAccount .header .subtitle{margin:6px 0 0 0}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container{padding:24px;margin-bottom:24px}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container .handle{cursor:move}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container md-input-container md-switch{margin:0!important}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader{position:relative}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader.dropping .drop-text{display:flex}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .upload-button{margin-bottom:16px}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .sugarcrmAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .sugarcrmAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#integrations-sugarcrmAccount .sugarcrmAccount-detail-form-container #sugarcrmAccount-image-uploader .sugarcrmAccount-image .media{max-height:100%}#sugarcrmAccounts{position:relative}#sugarcrmAccounts>.header{height:76px;min-height:76px;max-height:76px}#sugarcrmAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#sugarcrmAccounts>.header .logo .logo-text{font-size:24px}#sugarcrmAccounts>.header md-icon{color:#fff}#sugarcrmAccounts>.header .search-input-wrapper{position:relative}#sugarcrmAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#sugarcrmAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#sugarcrmAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#sugarcrmAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#sugarcrmAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#sugarcrmAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#sugarcrmAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#sugarcrmAccounts>.header.selected-bar .close-button-wrapper{width:244px}#sugarcrmAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#sugarcrmAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#sugarcrmAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#sugarcrmAccounts #add-sugarcrmAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.zendeskAccount-dialog{max-width:720px;width:720px}md-dialog.zendeskAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.zendeskAccount-dialog md-toolbar .title{font-size:17px}md-dialog.zendeskAccount-dialog md-input-container textarea{min-height:150px}md-dialog.zendeskAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.zendeskAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.zendeskAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.zendeskAccount-dialog .error-list{font-size:13px}md-dialog.zendeskAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.zendeskAccount-dialog .error-list .error .message{font-weight:500}md-dialog.zendeskAccount-dialog .error-list .error .md-button{margin:0}md-dialog.zendeskAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.zendeskAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.zendeskAccount-item-dialog{max-width:720px;width:720px}md-dialog.zendeskAccount-item-dialog md-dialog-content{display:block;position:relative}md-dialog.zendeskAccount-item-dialog md-toolbar .title{font-size:17px}md-dialog.zendeskAccount-item-dialog md-input-container textarea{min-height:150px}md-dialog.zendeskAccount-item-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.zendeskAccount-item-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.zendeskAccount-item-dialog .date-container{padding:16px 0 24px 0}md-dialog.zendeskAccount-item-dialog .error-list{font-size:13px}md-dialog.zendeskAccount-item-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.zendeskAccount-item-dialog .error-list .error .message{font-weight:500}md-dialog.zendeskAccount-item-dialog .error-list .error .md-button{margin:0}md-dialog.zendeskAccount-item-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.zendeskAccount-item-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#integrations-zendeskAccount .header{height:120px;min-height:120px;max-height:120px}#integrations-zendeskAccount .header .goto-zendeskAccounts-button{margin-right:16px}#integrations-zendeskAccount .header .zendeskAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#integrations-zendeskAccount .header .zendeskAccount-image img{height:100%;width:auto;max-width:none}#integrations-zendeskAccount .header .subtitle{margin:6px 0 0 0}#integrations-zendeskAccount .zendeskAccount-detail-form-container{padding:24px;margin-bottom:24px}#integrations-zendeskAccount .zendeskAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#integrations-zendeskAccount .zendeskAccount-detail-form-container .handle{cursor:move}#integrations-zendeskAccount .zendeskAccount-detail-form-container md-input-container md-switch{margin:0!important}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader{position:relative}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader.dropping .drop-text{display:flex}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .upload-button{margin-bottom:16px}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .zendeskAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .zendeskAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#integrations-zendeskAccount .zendeskAccount-detail-form-container #zendeskAccount-image-uploader .zendeskAccount-image .media{max-height:100%}md-dialog.zendeskConfiguration-dialog{max-width:720px;width:720px}md-dialog.zendeskConfiguration-dialog md-dialog-content{display:block;position:relative}md-dialog.zendeskConfiguration-dialog md-toolbar .title{font-size:17px}md-dialog.zendeskConfiguration-dialog md-input-container textarea{min-height:150px}md-dialog.zendeskConfiguration-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.zendeskConfiguration-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.zendeskConfiguration-dialog .date-container{padding:16px 0 24px 0}md-dialog.zendeskConfiguration-dialog .error-list{font-size:13px}md-dialog.zendeskConfiguration-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.zendeskConfiguration-dialog .error-list .error .message{font-weight:500}md-dialog.zendeskConfiguration-dialog .error-list .error .md-button{margin:0}md-dialog.zendeskConfiguration-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.zendeskConfiguration-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#zendeskAccounts{position:relative}#zendeskAccounts>.header{height:76px;min-height:76px;max-height:76px}#zendeskAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#zendeskAccounts>.header .logo .logo-text{font-size:24px}#zendeskAccounts>.header md-icon{color:#fff}#zendeskAccounts>.header .search-input-wrapper{position:relative}#zendeskAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#zendeskAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#zendeskAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#zendeskAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#zendeskAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#zendeskAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#zendeskAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#zendeskAccounts>.header.selected-bar .close-button-wrapper{width:244px}#zendeskAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#zendeskAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#zendeskAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#zendeskAccounts #add-zendeskAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.mailAccount-dialog{max-width:720px;width:720px}md-dialog.mailAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.mailAccount-dialog md-toolbar .title{font-size:17px}md-dialog.mailAccount-dialog md-input-container textarea{min-height:150px}md-dialog.mailAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.mailAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.mailAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.mailAccount-dialog .error-list{font-size:13px}md-dialog.mailAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.mailAccount-dialog .error-list .error .message{font-weight:500}md-dialog.mailAccount-dialog .error-list .error .md-button{margin:0}md-dialog.mailAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.mailAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.mailDisposition-dialog{max-width:720px;width:720px}md-dialog.mailDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.mailDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.mailDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.mailDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.mailDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.mailDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.mailDisposition-dialog .error-list{font-size:13px}md-dialog.mailDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.mailDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.mailDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.mailDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.mailDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#mail-mailAccount .header{height:120px;min-height:120px;max-height:120px}#mail-mailAccount .header .goto-mailAccounts-button{margin-right:16px}#mail-mailAccount .header .mailAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#mail-mailAccount .header .mailAccount-image img{height:100%;width:auto;max-width:none}#mail-mailAccount .header .subtitle{margin:6px 0 0 0}#mail-mailAccount .mailAccount-detail-form-container{padding:24px;margin-bottom:24px}#mail-mailAccount .mailAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#mail-mailAccount .mailAccount-detail-form-container .handle{cursor:move}#mail-mailAccount .mailAccount-detail-form-container md-input-container md-switch{margin:0!important}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader{position:relative}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader.dropping .drop-text{display:flex}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .upload-button{margin-bottom:16px}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .mailAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .mailAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#mail-mailAccount .mailAccount-detail-form-container #mailAccount-image-uploader .mailAccount-image .media{max-height:100%}#mailAccounts{position:relative}#mailAccounts>.header{height:76px;min-height:76px;max-height:76px}#mailAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#mailAccounts>.header .logo .logo-text{font-size:24px}#mailAccounts>.header md-icon{color:#fff}#mailAccounts>.header .search-input-wrapper{position:relative}#mailAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#mailAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#mailAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#mailAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#mailAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#mailAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#mailAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#mailAccounts>.header.selected-bar .close-button-wrapper{width:244px}#mailAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#mailAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#mailAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#mailAccounts #add-mailAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.mailQueue-dialog{max-width:720px;width:720px}md-dialog.mailQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.mailQueue-dialog md-toolbar .title{font-size:17px}md-dialog.mailQueue-dialog md-input-container textarea{min-height:150px}md-dialog.mailQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.mailQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.mailQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.mailQueue-dialog .error-list{font-size:13px}md-dialog.mailQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.mailQueue-dialog .error-list .error .message{font-weight:500}md-dialog.mailQueue-dialog .error-list .error .md-button{margin:0}md-dialog.mailQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.mailQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#mail-mailQueue .header{height:120px;min-height:120px;max-height:120px}#mail-mailQueue .header .goto-mailQueues-button{margin-right:16px}#mail-mailQueue .header .mailQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#mail-mailQueue .header .mailQueue-image img{height:100%;width:auto;max-width:none}#mail-mailQueue .header .subtitle{margin:6px 0 0 0}#mail-mailQueue .mailQueue-detail-form-container{padding:24px;margin-bottom:24px}#mail-mailQueue .mailQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#mail-mailQueue .mailQueue-detail-form-container .handle{cursor:move}#mail-mailQueue .mailQueue-detail-form-container md-input-container md-switch{margin:0!important}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader{position:relative}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader.dropping .drop-text{display:flex}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .upload-button{margin-bottom:16px}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .mailQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .mailQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#mail-mailQueue .mailQueue-detail-form-container #mailQueue-image-uploader .mailQueue-image .media{max-height:100%}#mailQueues{position:relative}#mailQueues>.header{height:76px;min-height:76px;max-height:76px}#mailQueues>.header .logo .logo-icon{margin:0 16px 0 0}#mailQueues>.header .logo .logo-text{font-size:24px}#mailQueues>.header md-icon{color:#fff}#mailQueues>.header .search-input-wrapper{position:relative}#mailQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#mailQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#mailQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#mailQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#mailQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#mailQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#mailQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#mailQueues>.header.selected-bar .close-button-wrapper{width:244px}#mailQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#mailQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#mailQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#mailQueues #add-mailQueue-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.ivrCampaign-dialog{max-width:720px;width:720px}md-dialog.ivrCampaign-dialog md-dialog-content{display:block;position:relative}md-dialog.ivrCampaign-dialog md-toolbar .title{font-size:17px}md-dialog.ivrCampaign-dialog md-input-container textarea{min-height:150px}md-dialog.ivrCampaign-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.ivrCampaign-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.ivrCampaign-dialog .date-container{padding:16px 0 24px 0}md-dialog.ivrCampaign-dialog .error-list{font-size:13px}md-dialog.ivrCampaign-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.ivrCampaign-dialog .error-list .error .message{font-weight:500}md-dialog.ivrCampaign-dialog .error-list .error .md-button{margin:0}md-dialog.ivrCampaign-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.ivrCampaign-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.hopper-dialog{max-width:720px;width:720px}md-dialog.hopper-dialog md-dialog-content{display:block;position:relative}md-dialog.hopper-dialog md-toolbar .title{font-size:17px}md-dialog.hopper-dialog md-input-container textarea{min-height:150px}md-dialog.hopper-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.hopper-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.hopper-dialog .date-container{padding:16px 0 24px 0}md-dialog.hopper-dialog .error-list{font-size:13px}md-dialog.hopper-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.hopper-dialog .error-list .error .message{font-weight:500}md-dialog.hopper-dialog .error-list .error .md-button{margin:0}md-dialog.hopper-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.hopper-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#motiondialer-ivrCampaign .header{height:120px;min-height:120px;max-height:120px}#motiondialer-ivrCampaign .header .goto-ivrCampaigns-button{margin-right:16px}#motiondialer-ivrCampaign .header .ivrCampaign-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#motiondialer-ivrCampaign .header .ivrCampaign-image img{height:100%;width:auto;max-width:none}#motiondialer-ivrCampaign .header .subtitle{margin:6px 0 0 0}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container{padding:24px;margin-bottom:24px}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container .handle{cursor:move}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container md-input-container md-switch{margin:0!important}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader{position:relative}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader.dropping .drop-text{display:flex}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .upload-button{margin-bottom:16px}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .ivrCampaign-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .ivrCampaign-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#motiondialer-ivrCampaign .ivrCampaign-detail-form-container #ivrCampaign-image-uploader .ivrCampaign-image .media{max-height:100%}#ivrCampaigns{position:relative}#ivrCampaigns>.header{height:76px;min-height:76px;max-height:76px}#ivrCampaigns>.header .logo .logo-icon{margin:0 16px 0 0}#ivrCampaigns>.header .logo .logo-text{font-size:24px}#ivrCampaigns>.header md-icon{color:#fff}#ivrCampaigns>.header .search-input-wrapper{position:relative}#ivrCampaigns>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#ivrCampaigns>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#ivrCampaigns>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#ivrCampaigns>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#ivrCampaigns>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#ivrCampaigns>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#ivrCampaigns>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#ivrCampaigns>.header.selected-bar .close-button-wrapper{width:244px}#ivrCampaigns>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#ivrCampaigns>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#ivrCampaigns>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#ivrCampaigns #add-ivrCampaign-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.queueCampaign-dialog{max-width:720px;width:720px}md-dialog.queueCampaign-dialog md-dialog-content{display:block;position:relative}md-dialog.queueCampaign-dialog md-toolbar .title{font-size:17px}md-dialog.queueCampaign-dialog md-input-container textarea{min-height:150px}md-dialog.queueCampaign-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.queueCampaign-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.queueCampaign-dialog .date-container{padding:16px 0 24px 0}md-dialog.queueCampaign-dialog .error-list{font-size:13px}md-dialog.queueCampaign-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.queueCampaign-dialog .error-list .error .message{font-weight:500}md-dialog.queueCampaign-dialog .error-list .error .md-button{margin:0}md-dialog.queueCampaign-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.queueCampaign-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.hopper-dialog{max-width:720px;width:720px}md-dialog.hopper-dialog md-dialog-content{display:block;position:relative}md-dialog.hopper-dialog md-toolbar .title{font-size:17px}md-dialog.hopper-dialog md-input-container textarea{min-height:150px}md-dialog.hopper-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.hopper-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.hopper-dialog .date-container{padding:16px 0 24px 0}md-dialog.hopper-dialog .error-list{font-size:13px}md-dialog.hopper-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.hopper-dialog .error-list .error .message{font-weight:500}md-dialog.hopper-dialog .error-list .error .md-button{margin:0}md-dialog.hopper-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.hopper-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#motiondialer-queueCampaign .header{height:120px;min-height:120px;max-height:120px}#motiondialer-queueCampaign .header .goto-queueCampaigns-button{margin-right:16px}#motiondialer-queueCampaign .header .queueCampaign-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#motiondialer-queueCampaign .header .queueCampaign-image img{height:100%;width:auto;max-width:none}#motiondialer-queueCampaign .header .subtitle{margin:6px 0 0 0}#motiondialer-queueCampaign .queueCampaign-detail-form-container{padding:24px;margin-bottom:24px}#motiondialer-queueCampaign .queueCampaign-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#motiondialer-queueCampaign .queueCampaign-detail-form-container .handle{cursor:move}#motiondialer-queueCampaign .queueCampaign-detail-form-container md-input-container md-switch{margin:0!important}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader{position:relative}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader.dropping .drop-text{display:flex}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .upload-button{margin-bottom:16px}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .queueCampaign-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .queueCampaign-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#motiondialer-queueCampaign .queueCampaign-detail-form-container #queueCampaign-image-uploader .queueCampaign-image .media{max-height:100%}#queueCampaigns{position:relative}#queueCampaigns>.header{height:76px;min-height:76px;max-height:76px}#queueCampaigns>.header .logo .logo-icon{margin:0 16px 0 0}#queueCampaigns>.header .logo .logo-text{font-size:24px}#queueCampaigns>.header md-icon{color:#fff}#queueCampaigns>.header .search-input-wrapper{position:relative}#queueCampaigns>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#queueCampaigns>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#queueCampaigns>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#queueCampaigns>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#queueCampaigns>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#queueCampaigns>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#queueCampaigns>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#queueCampaigns>.header.selected-bar .close-button-wrapper{width:244px}#queueCampaigns>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#queueCampaigns>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#queueCampaigns>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#queueCampaigns #add-queueCampaign-button{position:fixed;bottom:8px;right:8px;padding:0}#realtime>.content .blink{animation:blinker 2s linear infinite}#realtime>.content .avatar-wrapper{position:relative}#realtime>.content .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}#realtime>.content .search-input-wrapper{position:relative;margin-left:20px}#realtime>.content .search-input-wrapper label{padding:6px;cursor:pointer}#realtime>.content .search-input-wrapper md-input-container{padding-top:20px}#realtime>.content .main .labels{padding:8px 16px}#realtime>.content .main .labels .label{margin:0 0 2px 4px;padding:2px 5px;font-size:11px;white-space:nowrap;border-radius:2px}#realtime>.content .main .status{position:absolute;bottom:-3px;right:5px}#realtime>.content .main .avatar-wrapper{position:relative}#realtime>.content .main .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}@keyframes blinker{50%{opacity:0}}md-dialog.openchannelAccount-dialog{max-width:720px;width:720px}md-dialog.openchannelAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.openchannelAccount-dialog md-toolbar .title{font-size:17px}md-dialog.openchannelAccount-dialog md-input-container textarea{min-height:150px}md-dialog.openchannelAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.openchannelAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.openchannelAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.openchannelAccount-dialog .error-list{font-size:13px}md-dialog.openchannelAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.openchannelAccount-dialog .error-list .error .message{font-weight:500}md-dialog.openchannelAccount-dialog .error-list .error .md-button{margin:0}md-dialog.openchannelAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.openchannelAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.openchannelDisposition-dialog{max-width:720px;width:720px}md-dialog.openchannelDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.openchannelDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.openchannelDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.openchannelDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.openchannelDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.openchannelDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.openchannelDisposition-dialog .error-list{font-size:13px}md-dialog.openchannelDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.openchannelDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.openchannelDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.openchannelDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.openchannelDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#openchannel-openchannelAccount .header{height:120px;min-height:120px;max-height:120px}#openchannel-openchannelAccount .header .goto-openchannelAccounts-button{margin-right:16px}#openchannel-openchannelAccount .header .openchannelAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#openchannel-openchannelAccount .header .openchannelAccount-image img{height:100%;width:auto;max-width:none}#openchannel-openchannelAccount .header .subtitle{margin:6px 0 0 0}#openchannel-openchannelAccount .openchannelAccount-detail-form-container{padding:24px;margin-bottom:24px}#openchannel-openchannelAccount .openchannelAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#openchannel-openchannelAccount .openchannelAccount-detail-form-container .handle{cursor:move}#openchannel-openchannelAccount .openchannelAccount-detail-form-container md-input-container md-switch{margin:0!important}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader{position:relative}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader.dropping .drop-text{display:flex}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .upload-button{margin-bottom:16px}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .openchannelAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .openchannelAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#openchannel-openchannelAccount .openchannelAccount-detail-form-container #openchannelAccount-image-uploader .openchannelAccount-image .media{max-height:100%}#openchannelAccounts{position:relative}#openchannelAccounts>.header{height:76px;min-height:76px;max-height:76px}#openchannelAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#openchannelAccounts>.header .logo .logo-text{font-size:24px}#openchannelAccounts>.header md-icon{color:#fff}#openchannelAccounts>.header .search-input-wrapper{position:relative}#openchannelAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#openchannelAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#openchannelAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#openchannelAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#openchannelAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#openchannelAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#openchannelAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#openchannelAccounts>.header.selected-bar .close-button-wrapper{width:244px}#openchannelAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#openchannelAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#openchannelAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#openchannelAccounts #add-openchannelAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.openchannelQueue-dialog{max-width:720px;width:720px}md-dialog.openchannelQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.openchannelQueue-dialog md-toolbar .title{font-size:17px}md-dialog.openchannelQueue-dialog md-input-container textarea{min-height:150px}md-dialog.openchannelQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.openchannelQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.openchannelQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.openchannelQueue-dialog .error-list{font-size:13px}md-dialog.openchannelQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.openchannelQueue-dialog .error-list .error .message{font-weight:500}md-dialog.openchannelQueue-dialog .error-list .error .md-button{margin:0}md-dialog.openchannelQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.openchannelQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#openchannel-openchannelQueue .header{height:120px;min-height:120px;max-height:120px}#openchannel-openchannelQueue .header .goto-openchannelQueues-button{margin-right:16px}#openchannel-openchannelQueue .header .openchannelQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#openchannel-openchannelQueue .header .openchannelQueue-image img{height:100%;width:auto;max-width:none}#openchannel-openchannelQueue .header .subtitle{margin:6px 0 0 0}#openchannel-openchannelQueue .openchannelQueue-detail-form-container{padding:24px;margin-bottom:24px}#openchannel-openchannelQueue .openchannelQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#openchannel-openchannelQueue .openchannelQueue-detail-form-container .handle{cursor:move}#openchannel-openchannelQueue .openchannelQueue-detail-form-container md-input-container md-switch{margin:0!important}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader{position:relative}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader.dropping .drop-text{display:flex}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .upload-button{margin-bottom:16px}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .openchannelQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .openchannelQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#openchannel-openchannelQueue .openchannelQueue-detail-form-container #openchannelQueue-image-uploader .openchannelQueue-image .media{max-height:100%}#openchannelQueues{position:relative}#openchannelQueues>.header{height:76px;min-height:76px;max-height:76px}#openchannelQueues>.header .logo .logo-icon{margin:0 16px 0 0}#openchannelQueues>.header .logo .logo-text{font-size:24px}#openchannelQueues>.header md-icon{color:#fff}#openchannelQueues>.header .search-input-wrapper{position:relative}#openchannelQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#openchannelQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#openchannelQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#openchannelQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#openchannelQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#openchannelQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#openchannelQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#openchannelQueues>.header.selected-bar .close-button-wrapper{width:244px}#openchannelQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#openchannelQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#openchannelQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#openchannelQueues #add-openchannelQueue-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.customization-dialog{max-width:720px;width:720px}md-dialog.customization-dialog md-dialog-content{display:block;position:relative}md-dialog.customization-dialog md-toolbar .title{font-size:17px}md-dialog.customization-dialog md-input-container textarea{min-height:150px}md-dialog.customization-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.customization-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.customization-dialog .date-container{padding:16px 0 24px 0}md-dialog.customization-dialog .error-list{font-size:13px}md-dialog.customization-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.customization-dialog .error-list .error .message{font-weight:500}md-dialog.customization-dialog .error-list .error .md-button{margin:0}md-dialog.customization-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.customization-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#customizations{position:relative}#customizations>.header{height:76px;min-height:76px;max-height:76px}#customizations>.header .logo .logo-icon{margin:0 16px 0 0}#customizations>.header .logo .logo-text{font-size:24px}#customizations>.header md-icon{color:#fff}#customizations>.header .search-input-wrapper{position:relative}#customizations>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#customizations>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#customizations>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#customizations>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#customizations>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#customizations>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#customizations>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#customizations>.header.selected-bar .close-button-wrapper{width:244px}#customizations>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#customizations>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#customizations>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#customizations>.content .customization-detail-form-container{padding:24px;margin-bottom:24px}#customizations>.content .customization-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#customizations>.content .customization-detail-form-container .handle{cursor:move}#customizations>.content .customization-detail-form-container md-input-container md-switch{margin:0!important}#customizations>.content .customization-detail-form-container #customization-image-uploader{position:relative}#customizations>.content .customization-detail-form-container #customization-image-uploader.dropping .drop-text{display:flex}#customizations>.content .customization-detail-form-container #customization-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#customizations>.content .customization-detail-form-container #customization-image-uploader .upload-button{margin-bottom:16px}#customizations>.content .customization-detail-form-container #customization-image-uploader .customization-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#customizations>.content .customization-detail-form-container #customization-image-uploader .customization-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#customizations>.content .customization-detail-form-container #customization-image-uploader .customization-image .media{max-height:100%}#customizations #add-customization-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.general-dialog{max-width:720px;width:720px}md-dialog.general-dialog md-dialog-content{display:block;position:relative}md-dialog.general-dialog md-toolbar .title{font-size:17px}md-dialog.general-dialog md-input-container textarea{min-height:150px}md-dialog.general-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.general-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.general-dialog .date-container{padding:16px 0 24px 0}md-dialog.general-dialog .error-list{font-size:13px}md-dialog.general-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.general-dialog .error-list .error .message{font-weight:500}md-dialog.general-dialog .error-list .error .md-button{margin:0}md-dialog.general-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.general-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#generals{position:relative}#generals>.header{height:76px;min-height:76px;max-height:76px}#generals>.header .logo .logo-icon{margin:0 16px 0 0}#generals>.header .logo .logo-text{font-size:24px}#generals>.header md-icon{color:#fff}#generals>.header .search-input-wrapper{position:relative}#generals>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#generals>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#generals>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#generals>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#generals>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#generals>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#generals>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#generals>.header.selected-bar .close-button-wrapper{width:244px}#generals>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#generals>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#generals>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#generals>.content .general-detail-form-container{padding:24px;margin-bottom:24px}#generals>.content .general-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#generals>.content .general-detail-form-container .handle{cursor:move}#generals>.content .general-detail-form-container md-input-container md-switch{margin:0!important}#generals>.content .general-detail-form-container #general-image-uploader{position:relative}#generals>.content .general-detail-form-container #general-image-uploader.dropping .drop-text{display:flex}#generals>.content .general-detail-form-container #general-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#generals>.content .general-detail-form-container #general-image-uploader .upload-button{margin-bottom:16px}#generals>.content .general-detail-form-container #general-image-uploader .general-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#generals>.content .general-detail-form-container #general-image-uploader .general-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#generals>.content .general-detail-form-container #general-image-uploader .general-image .media{max-height:100%}#generals #add-general-button{position:fixed;bottom:8px;right:8px;padding:0}#license{position:relative}#license .blink{animation:blinker 2s linear infinite}#license>.header{height:76px;min-height:76px;max-height:76px}#license>.header .logo .logo-icon{margin:0 16px 0 0}#license>.header .logo .logo-text{font-size:24px}#license>.header md-icon{color:#fff}#license>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#license>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#license>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#license>.content .badge{position:absolute;top:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);font-size:11px;font-weight:500;padding:6px 8px}md-dialog.request-dialog{max-width:720px;width:720px}md-dialog.request-dialog md-dialog-content{display:block;position:relative}md-dialog.request-dialog md-toolbar .title{font-size:17px}md-dialog.request-dialog md-input-container textarea{min-height:150px}md-dialog.request-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.request-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.request-dialog .date-container{padding:16px 0 24px 0}md-dialog.request-dialog .error-list{font-size:13px}md-dialog.request-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.request-dialog .error-list .error .message{font-weight:500}md-dialog.request-dialog .error-list .error .md-button{margin:0}md-dialog.request-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.request-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.network-dialog{max-width:720px;width:720px}md-dialog.network-dialog md-dialog-content{display:block;position:relative}md-dialog.network-dialog md-toolbar .title{font-size:17px}md-dialog.network-dialog md-input-container textarea{min-height:150px}md-dialog.network-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.network-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.network-dialog .date-container{padding:16px 0 24px 0}md-dialog.network-dialog .error-list{font-size:13px}md-dialog.network-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.network-dialog .error-list .error .message{font-weight:500}md-dialog.network-dialog .error-list .error .md-button{margin:0}md-dialog.network-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.network-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#networks{position:relative}#networks>.header{height:76px;min-height:76px;max-height:76px}#networks>.header .logo .logo-icon{margin:0 16px 0 0}#networks>.header .logo .logo-text{font-size:24px}#networks>.header md-icon{color:#fff}#networks>.header .search-input-wrapper{position:relative}#networks>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#networks>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#networks>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#networks>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#networks>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#networks>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#networks>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#networks>.header.selected-bar .close-button-wrapper{width:244px}#networks>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#networks>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#networks>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#networks #add-network-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.smtp-dialog{max-width:720px;width:720px}md-dialog.smtp-dialog md-dialog-content{display:block;position:relative}md-dialog.smtp-dialog md-toolbar .title{font-size:17px}md-dialog.smtp-dialog md-input-container textarea{min-height:150px}md-dialog.smtp-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.smtp-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.smtp-dialog .date-container{padding:16px 0 24px 0}md-dialog.smtp-dialog .error-list{font-size:13px}md-dialog.smtp-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.smtp-dialog .error-list .error .message{font-weight:500}md-dialog.smtp-dialog .error-list .error .md-button{margin:0}md-dialog.smtp-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.smtp-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#smtps{position:relative}#smtps>.header{height:76px;min-height:76px;max-height:76px}#smtps>.header .logo .logo-icon{margin:0 16px 0 0}#smtps>.header .logo .logo-text{font-size:24px}#smtps>.header md-icon{color:#fff}#smtps>.header .search-input-wrapper{position:relative}#smtps>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#smtps>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#smtps>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#smtps>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#smtps>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#smtps>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#smtps>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#smtps>.header.selected-bar .close-button-wrapper{width:244px}#smtps>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#smtps>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#smtps>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#smtps>.content .smtp-detail-form-container{padding:24px;margin-bottom:24px}#smtps>.content .smtp-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#smtps>.content .smtp-detail-form-container .handle{cursor:move}#smtps>.content .smtp-detail-form-container md-input-container md-switch{margin:0!important}#smtps>.content .smtp-detail-form-container #smtp-image-uploader{position:relative}#smtps>.content .smtp-detail-form-container #smtp-image-uploader.dropping .drop-text{display:flex}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .upload-button{margin-bottom:16px}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .smtp-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .smtp-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#smtps>.content .smtp-detail-form-container #smtp-image-uploader .smtp-image .media{max-height:100%}#smtps #add-smtp-button{position:fixed;bottom:8px;right:8px;padding:0}#system>.header{height:76px;min-height:76px;max-height:76px}#system>.header .logo .logo-icon{margin:0 16px 0 0}#system>.header .logo .logo-text{font-size:24px}#system>.header md-icon{color:#fff}#system .system-detail-form-container{padding:24px;margin-bottom:24px}#system .system-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#system .system-detail-form-container .handle{cursor:move}#system .system-detail-form-container md-input-container md-switch{margin:0!important}#system .system-detail-form-container #system-image-uploader{position:relative}#system .system-detail-form-container #system-image-uploader.dropping .drop-text{display:flex}#system .system-detail-form-container #system-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#system .system-detail-form-container #system-image-uploader .upload-button{margin-bottom:16px}#system .system-detail-form-container #system-image-uploader .system-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#system .system-detail-form-container #system-image-uploader .system-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#system .system-detail-form-container #system-image-uploader .system-image .media{max-height:100%}#updates{position:relative}#updates>.header{height:76px;min-height:76px;max-height:76px}#updates>.header .logo .logo-icon{margin:0 16px 0 0}#updates>.header .logo .logo-text{font-size:24px}#updates>.header md-icon{color:#fff}#updates>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#updates>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#updates>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}md-dialog.smsAccount-dialog{max-width:720px;width:720px}md-dialog.smsAccount-dialog md-dialog-content{display:block;position:relative}md-dialog.smsAccount-dialog md-toolbar .title{font-size:17px}md-dialog.smsAccount-dialog md-input-container textarea{min-height:150px}md-dialog.smsAccount-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.smsAccount-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.smsAccount-dialog .date-container{padding:16px 0 24px 0}md-dialog.smsAccount-dialog .error-list{font-size:13px}md-dialog.smsAccount-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.smsAccount-dialog .error-list .error .message{font-weight:500}md-dialog.smsAccount-dialog .error-list .error .md-button{margin:0}md-dialog.smsAccount-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.smsAccount-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.smsDisposition-dialog{max-width:720px;width:720px}md-dialog.smsDisposition-dialog md-dialog-content{display:block;position:relative}md-dialog.smsDisposition-dialog md-toolbar .title{font-size:17px}md-dialog.smsDisposition-dialog md-input-container textarea{min-height:150px}md-dialog.smsDisposition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.smsDisposition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.smsDisposition-dialog .date-container{padding:16px 0 24px 0}md-dialog.smsDisposition-dialog .error-list{font-size:13px}md-dialog.smsDisposition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.smsDisposition-dialog .error-list .error .message{font-weight:500}md-dialog.smsDisposition-dialog .error-list .error .md-button{margin:0}md-dialog.smsDisposition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.smsDisposition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#sms-smsAccount .header{height:120px;min-height:120px;max-height:120px}#sms-smsAccount .header .goto-smsAccounts-button{margin-right:16px}#sms-smsAccount .header .smsAccount-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#sms-smsAccount .header .smsAccount-image img{height:100%;width:auto;max-width:none}#sms-smsAccount .header .subtitle{margin:6px 0 0 0}#sms-smsAccount .smsAccount-detail-form-container{padding:24px;margin-bottom:24px}#sms-smsAccount .smsAccount-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#sms-smsAccount .smsAccount-detail-form-container .handle{cursor:move}#sms-smsAccount .smsAccount-detail-form-container md-input-container md-switch{margin:0!important}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader{position:relative}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader.dropping .drop-text{display:flex}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .upload-button{margin-bottom:16px}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .smsAccount-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .smsAccount-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#sms-smsAccount .smsAccount-detail-form-container #smsAccount-image-uploader .smsAccount-image .media{max-height:100%}#smsAccounts{position:relative}#smsAccounts>.header{height:76px;min-height:76px;max-height:76px}#smsAccounts>.header .logo .logo-icon{margin:0 16px 0 0}#smsAccounts>.header .logo .logo-text{font-size:24px}#smsAccounts>.header md-icon{color:#fff}#smsAccounts>.header .search-input-wrapper{position:relative}#smsAccounts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#smsAccounts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#smsAccounts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#smsAccounts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#smsAccounts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#smsAccounts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#smsAccounts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#smsAccounts>.header.selected-bar .close-button-wrapper{width:244px}#smsAccounts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#smsAccounts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#smsAccounts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#smsAccounts #add-smsAccount-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.smsQueue-dialog{max-width:720px;width:720px}md-dialog.smsQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.smsQueue-dialog md-toolbar .title{font-size:17px}md-dialog.smsQueue-dialog md-input-container textarea{min-height:150px}md-dialog.smsQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.smsQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.smsQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.smsQueue-dialog .error-list{font-size:13px}md-dialog.smsQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.smsQueue-dialog .error-list .error .message{font-weight:500}md-dialog.smsQueue-dialog .error-list .error .md-button{margin:0}md-dialog.smsQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.smsQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#sms-smsQueue .header{height:120px;min-height:120px;max-height:120px}#sms-smsQueue .header .goto-smsQueues-button{margin-right:16px}#sms-smsQueue .header .smsQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#sms-smsQueue .header .smsQueue-image img{height:100%;width:auto;max-width:none}#sms-smsQueue .header .subtitle{margin:6px 0 0 0}#sms-smsQueue .smsQueue-detail-form-container{padding:24px;margin-bottom:24px}#sms-smsQueue .smsQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#sms-smsQueue .smsQueue-detail-form-container .handle{cursor:move}#sms-smsQueue .smsQueue-detail-form-container md-input-container md-switch{margin:0!important}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader{position:relative}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader.dropping .drop-text{display:flex}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .upload-button{margin-bottom:16px}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .smsQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .smsQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#sms-smsQueue .smsQueue-detail-form-container #smsQueue-image-uploader .smsQueue-image .media{max-height:100%}#smsQueues{position:relative}#smsQueues>.header{height:76px;min-height:76px;max-height:76px}#smsQueues>.header .logo .logo-icon{margin:0 16px 0 0}#smsQueues>.header .logo .logo-text{font-size:24px}#smsQueues>.header md-icon{color:#fff}#smsQueues>.header .search-input-wrapper{position:relative}#smsQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#smsQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#smsQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#smsQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#smsQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#smsQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#smsQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#smsQueues>.header.selected-bar .close-button-wrapper{width:244px}#smsQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#smsQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#smsQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#smsQueues #add-smsQueue-button{position:fixed;bottom:8px;right:8px;padding:0}#agents{position:relative}#agents>.header{height:76px;min-height:76px;max-height:76px}#agents>.header .logo .logo-icon{margin:0 16px 0 0}#agents>.header .logo .logo-text{font-size:24px}#agents>.header md-icon{color:#fff}#agents>.header .search-input-wrapper{position:relative}#agents>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#agents>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#agents>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#agents>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#agents>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#agents>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#agents>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#agents>.header.selected-bar .close-button-wrapper{width:244px}#agents>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#agents>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#agents>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#agents #add-agent-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.agent-dialog{max-width:720px;width:720px}md-dialog.agent-dialog md-dialog-content{display:block;position:relative}md-dialog.agent-dialog md-toolbar .title{font-size:17px}md-dialog.agent-dialog md-input-container textarea{min-height:150px}md-dialog.agent-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.agent-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.agent-dialog .date-container{padding:16px 0 24px 0}md-dialog.agent-dialog .error-list{font-size:13px}md-dialog.agent-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.agent-dialog .error-list .error .message{font-weight:500}md-dialog.agent-dialog .error-list .error .md-button{margin:0}md-dialog.agent-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.agent-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#staff-agent .header{height:120px;min-height:120px;max-height:120px}#staff-agent .header .goto-agents-button{margin-right:16px}#staff-agent .header .agent-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#staff-agent .header .agent-image img{height:100%;width:auto;max-width:none}#staff-agent .header .subtitle{margin:6px 0 0 0}#staff-agent .agent-detail-form-container{padding:24px;margin-bottom:24px}#staff-agent .agent-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#staff-agent .agent-detail-form-container .handle{cursor:move}#staff-agent .agent-detail-form-container md-input-container md-switch{margin:0!important}#staff-agent .agent-detail-form-container #agent-image-uploader{position:relative}#staff-agent .agent-detail-form-container #agent-image-uploader.dropping .drop-text{display:flex}#staff-agent .agent-detail-form-container #agent-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#staff-agent .agent-detail-form-container #agent-image-uploader .upload-button{margin-bottom:16px}#staff-agent .agent-detail-form-container #agent-image-uploader .agent-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#staff-agent .agent-detail-form-container #agent-image-uploader .agent-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#staff-agent .agent-detail-form-container #agent-image-uploader .agent-image .media{max-height:100%}md-dialog.team-dialog{max-width:720px;width:720px}md-dialog.team-dialog md-dialog-content{display:block;position:relative}md-dialog.team-dialog md-toolbar .title{font-size:17px}md-dialog.team-dialog md-input-container textarea{min-height:150px}md-dialog.team-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.team-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.team-dialog .date-container{padding:16px 0 24px 0}md-dialog.team-dialog .error-list{font-size:13px}md-dialog.team-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.team-dialog .error-list .error .message{font-weight:500}md-dialog.team-dialog .error-list .error .md-button{margin:0}md-dialog.team-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.team-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#teams{position:relative}#teams>.header{height:76px;min-height:76px;max-height:76px}#teams>.header .logo .logo-icon{margin:0 16px 0 0}#teams>.header .logo .logo-text{font-size:24px}#teams>.header md-icon{color:#fff}#teams>.header .search-input-wrapper{position:relative}#teams>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#teams>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#teams>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#teams>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#teams>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#teams>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#teams>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#teams>.header.selected-bar .close-button-wrapper{width:244px}#teams>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#teams>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#teams>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#teams #add-team-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.telephone-dialog{max-width:720px;width:720px}md-dialog.telephone-dialog md-dialog-content{display:block;position:relative}md-dialog.telephone-dialog md-toolbar .title{font-size:17px}md-dialog.telephone-dialog md-input-container textarea{min-height:150px}md-dialog.telephone-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.telephone-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.telephone-dialog .date-container{padding:16px 0 24px 0}md-dialog.telephone-dialog .error-list{font-size:13px}md-dialog.telephone-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.telephone-dialog .error-list .error .message{font-weight:500}md-dialog.telephone-dialog .error-list .error .md-button{margin:0}md-dialog.telephone-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.telephone-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#staff-telephone .header{height:120px;min-height:120px;max-height:120px}#staff-telephone .header .goto-telephones-button{margin-right:16px}#staff-telephone .header .telephone-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#staff-telephone .header .telephone-image img{height:100%;width:auto;max-width:none}#staff-telephone .header .subtitle{margin:6px 0 0 0}#staff-telephone .telephone-detail-form-container{padding:24px;margin-bottom:24px}#staff-telephone .telephone-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#staff-telephone .telephone-detail-form-container .handle{cursor:move}#staff-telephone .telephone-detail-form-container md-input-container md-switch{margin:0!important}#staff-telephone .telephone-detail-form-container #telephone-image-uploader{position:relative}#staff-telephone .telephone-detail-form-container #telephone-image-uploader.dropping .drop-text{display:flex}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .upload-button{margin-bottom:16px}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .telephone-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .telephone-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#staff-telephone .telephone-detail-form-container #telephone-image-uploader .telephone-image .media{max-height:100%}#telephones{position:relative}#telephones>.header{height:76px;min-height:76px;max-height:76px}#telephones>.header .logo .logo-icon{margin:0 16px 0 0}#telephones>.header .logo .logo-text{font-size:24px}#telephones>.header md-icon{color:#fff}#telephones>.header .search-input-wrapper{position:relative}#telephones>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#telephones>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#telephones>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#telephones>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#telephones>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#telephones>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#telephones>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#telephones>.header.selected-bar .close-button-wrapper{width:244px}#telephones>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#telephones>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#telephones>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#telephones #add-telephone-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.user-dialog{max-width:720px;width:720px}md-dialog.user-dialog md-dialog-content{display:block;position:relative}md-dialog.user-dialog md-toolbar .title{font-size:17px}md-dialog.user-dialog md-input-container textarea{min-height:150px}md-dialog.user-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.user-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.user-dialog .date-container{padding:16px 0 24px 0}md-dialog.user-dialog .error-list{font-size:13px}md-dialog.user-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.user-dialog .error-list .error .message{font-weight:500}md-dialog.user-dialog .error-list .error .md-button{margin:0}md-dialog.user-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.user-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#staff-user .header{height:120px;min-height:120px;max-height:120px}#staff-user .header .goto-users-button{margin-right:16px}#staff-user .header .user-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#staff-user .header .user-image img{height:100%;width:auto;max-width:none}#staff-user .header .subtitle{margin:6px 0 0 0}#staff-user .user-detail-form-container{padding:24px;margin-bottom:24px}#staff-user .user-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#staff-user .user-detail-form-container .handle{cursor:move}#staff-user .user-detail-form-container md-input-container md-switch{margin:0!important}#staff-user .user-detail-form-container #user-image-uploader{position:relative}#staff-user .user-detail-form-container #user-image-uploader.dropping .drop-text{display:flex}#staff-user .user-detail-form-container #user-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#staff-user .user-detail-form-container #user-image-uploader .upload-button{margin-bottom:16px}#staff-user .user-detail-form-container #user-image-uploader .user-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#staff-user .user-detail-form-container #user-image-uploader .user-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#staff-user .user-detail-form-container #user-image-uploader .user-image .media{max-height:100%}#users{position:relative}#users>.header{height:76px;min-height:76px;max-height:76px}#users>.header .logo .logo-icon{margin:0 16px 0 0}#users>.header .logo .logo-text{font-size:24px}#users>.header md-icon{color:#fff}#users>.header .search-input-wrapper{position:relative}#users>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#users>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#users>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#users>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#users>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#users>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#users>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#users>.header.selected-bar .close-button-wrapper{width:244px}#users>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#users>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#users>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#users #add-user-button{position:fixed;bottom:8px;right:8px;padding:0}#cannedAnswers{position:relative}#cannedAnswers>.header{height:76px;min-height:76px;max-height:76px}#cannedAnswers>.header .logo .logo-icon{margin:0 16px 0 0}#cannedAnswers>.header .logo .logo-text{font-size:24px}#cannedAnswers>.header md-icon{color:#fff}#cannedAnswers>.header .search-input-wrapper{position:relative}#cannedAnswers>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#cannedAnswers>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#cannedAnswers>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#cannedAnswers>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#cannedAnswers>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#cannedAnswers>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#cannedAnswers>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#cannedAnswers>.header.selected-bar .close-button-wrapper{width:244px}#cannedAnswers>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#cannedAnswers>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#cannedAnswers>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#cannedAnswers #add-cannedAnswer-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.cannedAnswer-dialog{max-width:720px;width:720px}md-dialog.cannedAnswer-dialog md-dialog-content{display:block;position:relative}md-dialog.cannedAnswer-dialog md-toolbar .title{font-size:17px}md-dialog.cannedAnswer-dialog md-input-container textarea{min-height:150px}md-dialog.cannedAnswer-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.cannedAnswer-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.cannedAnswer-dialog .date-container{padding:16px 0 24px 0}md-dialog.cannedAnswer-dialog .error-list{font-size:13px}md-dialog.cannedAnswer-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.cannedAnswer-dialog .error-list .error .message{font-weight:500}md-dialog.cannedAnswer-dialog .error-list .error .md-button{margin:0}md-dialog.cannedAnswer-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.cannedAnswer-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.customDashboard-dialog{max-width:720px;width:720px}md-dialog.customDashboard-dialog md-dialog-content{display:block;position:relative}md-dialog.customDashboard-dialog md-toolbar .title{font-size:17px}md-dialog.customDashboard-dialog md-input-container textarea{min-height:150px}md-dialog.customDashboard-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.customDashboard-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.customDashboard-dialog .date-container{padding:16px 0 24px 0}md-dialog.customDashboard-dialog .error-list{font-size:13px}md-dialog.customDashboard-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.customDashboard-dialog .error-list .error .message{font-weight:500}md-dialog.customDashboard-dialog .error-list .error .md-button{margin:0}md-dialog.customDashboard-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.customDashboard-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#customDashboards{position:relative}#customDashboards>.header{height:76px;min-height:76px;max-height:76px}#customDashboards>.header .logo .logo-icon{margin:0 16px 0 0}#customDashboards>.header .logo .logo-text{font-size:24px}#customDashboards>.header md-icon{color:#fff}#customDashboards>.header .search-input-wrapper{position:relative}#customDashboards>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#customDashboards>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#customDashboards>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#customDashboards>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#customDashboards>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#customDashboards>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#customDashboards>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#customDashboards>.header.selected-bar .close-button-wrapper{width:244px}#customDashboards>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#customDashboards>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#customDashboards>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#customDashboards #add-customDashboard-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.dashboarditem-dialog{max-width:720px;width:720px}md-dialog.dashboarditem-dialog md-dialog-content{display:block;position:relative}md-dialog.dashboarditem-dialog md-toolbar .title{font-size:17px}md-dialog.dashboarditem-dialog md-input-container textarea{min-height:150px}md-dialog.dashboarditem-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.dashboarditem-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.dashboarditem-dialog .date-container{padding:16px 0 24px 0}md-dialog.dashboarditem-dialog .error-list{font-size:13px}md-dialog.dashboarditem-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.dashboarditem-dialog .error-list .error .message{font-weight:500}md-dialog.dashboarditem-dialog .error-list .error .md-button{margin:0}md-dialog.dashboarditem-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.dashboarditem-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-customDashboard .header{height:120px;min-height:120px;max-height:120px}#tools-customDashboard .header .goto-customDashboards-button{margin-right:16px}#tools-customDashboard .header .customDashboard-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-customDashboard .header .customDashboard-image img{height:100%;width:auto;max-width:none}#tools-customDashboard .header .subtitle{margin:6px 0 0 0}#tools-customDashboard .customDashboard-detail-form-container{padding:24px;margin-bottom:24px}#tools-customDashboard .customDashboard-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-customDashboard .customDashboard-detail-form-container .handle{cursor:move}#tools-customDashboard .customDashboard-detail-form-container md-input-container md-switch{margin:0!important}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader{position:relative}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader.dropping .drop-text{display:flex}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .upload-button{margin-bottom:16px}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .customDashboard-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .customDashboard-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-customDashboard .customDashboard-detail-form-container #customDashboard-image-uploader .customDashboard-image .media{max-height:100%}md-dialog.interval-dialog{max-width:720px;width:720px}md-dialog.interval-dialog md-dialog-content{display:block;position:relative}md-dialog.interval-dialog md-toolbar .title{font-size:17px}md-dialog.interval-dialog md-input-container textarea{min-height:150px}md-dialog.interval-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.interval-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.interval-dialog .date-container{padding:16px 0 24px 0}md-dialog.interval-dialog .error-list{font-size:13px}md-dialog.interval-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.interval-dialog .error-list .error .message{font-weight:500}md-dialog.interval-dialog .error-list .error .md-button{margin:0}md-dialog.interval-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.interval-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.interval-dialog{max-width:720px;width:720px}md-dialog.interval-dialog md-dialog-content{display:block;position:relative}md-dialog.interval-dialog md-toolbar .title{font-size:17px}md-dialog.interval-dialog md-input-container textarea{min-height:150px}md-dialog.interval-dialog .date-container{padding:16px 0 24px 0}md-dialog.interval-dialog .error-list{font-size:13px}md-dialog.interval-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.interval-dialog .error-list .error .message{font-weight:500}md-dialog.interval-dialog .error-list .error .md-button{margin:0}md-dialog.interval-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.interval-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.interval-dialog{max-width:720px;width:720px}md-dialog.interval-dialog md-dialog-content{display:block;position:relative}md-dialog.interval-dialog md-toolbar .title{font-size:17px}md-dialog.interval-dialog md-input-container textarea{min-height:150px}md-dialog.interval-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.interval-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.interval-dialog .date-container{padding:16px 0 24px 0}md-dialog.interval-dialog .error-list{font-size:13px}md-dialog.interval-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.interval-dialog .error-list .error .message{font-weight:500}md-dialog.interval-dialog .error-list .error .md-button{margin:0}md-dialog.interval-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.interval-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-interval .header{height:120px;min-height:120px;max-height:120px}#tools-interval .header .goto-intervals-button{margin-right:16px}#tools-interval .header .interval-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-interval .header .interval-image img{height:100%;width:auto;max-width:none}#tools-interval .header .subtitle{margin:6px 0 0 0}#tools-interval .interval-detail-form-container{padding:24px;margin-bottom:24px}#tools-interval .interval-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-interval .interval-detail-form-container .handle{cursor:move}#tools-interval .interval-detail-form-container md-input-container md-switch{margin:0!important}#tools-interval .interval-detail-form-container #interval-image-uploader{position:relative}#tools-interval .interval-detail-form-container #interval-image-uploader.dropping .drop-text{display:flex}#tools-interval .interval-detail-form-container #interval-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-interval .interval-detail-form-container #interval-image-uploader .upload-button{margin-bottom:16px}#tools-interval .interval-detail-form-container #interval-image-uploader .interval-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-interval .interval-detail-form-container #interval-image-uploader .interval-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-interval .interval-detail-form-container #interval-image-uploader .interval-image .media{max-height:100%}#intervals{position:relative}#intervals>.header{height:76px;min-height:76px;max-height:76px}#intervals>.header .logo .logo-icon{margin:0 16px 0 0}#intervals>.header .logo .logo-text{font-size:24px}#intervals>.header md-icon{color:#fff}#intervals>.header .search-input-wrapper{position:relative}#intervals>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#intervals>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#intervals>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#intervals>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#intervals>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#intervals>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#intervals>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#intervals>.header.selected-bar .close-button-wrapper{width:244px}#intervals>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#intervals>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#intervals>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#intervals #add-interval-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.pause-dialog{max-width:720px;width:720px}md-dialog.pause-dialog md-dialog-content{display:block;position:relative}md-dialog.pause-dialog md-toolbar .title{font-size:17px}md-dialog.pause-dialog md-input-container textarea{min-height:150px}md-dialog.pause-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.pause-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.pause-dialog .date-container{padding:16px 0 24px 0}md-dialog.pause-dialog .error-list{font-size:13px}md-dialog.pause-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.pause-dialog .error-list .error .message{font-weight:500}md-dialog.pause-dialog .error-list .error .md-button{margin:0}md-dialog.pause-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.pause-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#pauses{position:relative}#pauses>.header{height:76px;min-height:76px;max-height:76px}#pauses>.header .logo .logo-icon{margin:0 16px 0 0}#pauses>.header .logo .logo-text{font-size:24px}#pauses>.header md-icon{color:#fff}#pauses>.header .search-input-wrapper{position:relative}#pauses>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#pauses>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#pauses>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#pauses>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#pauses>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#pauses>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#pauses>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#pauses>.header.selected-bar .close-button-wrapper{width:244px}#pauses>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#pauses>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#pauses>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#pauses #add-pause-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.schedule-dialog{max-width:720px;width:720px}md-dialog.schedule-dialog md-dialog-content{display:block;position:relative}md-dialog.schedule-dialog md-toolbar .title{font-size:17px}md-dialog.schedule-dialog md-input-container textarea{min-height:150px}md-dialog.schedule-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.schedule-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.schedule-dialog .date-container{padding:16px 0 24px 0}md-dialog.schedule-dialog .error-list{font-size:13px}md-dialog.schedule-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.schedule-dialog .error-list .error .message{font-weight:500}md-dialog.schedule-dialog .error-list .error .md-button{margin:0}md-dialog.schedule-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.schedule-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-schedule .header{height:120px;min-height:120px;max-height:120px}#tools-schedule .header .goto-schedules-button{margin-right:16px}#tools-schedule .header .schedule-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-schedule .header .schedule-image img{height:100%;width:auto;max-width:none}#tools-schedule .header .subtitle{margin:6px 0 0 0}#tools-schedule .schedule-detail-form-container{padding:24px;margin-bottom:24px}#tools-schedule .schedule-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-schedule .schedule-detail-form-container .handle{cursor:move}#tools-schedule .schedule-detail-form-container md-input-container md-switch{margin:0!important}#tools-schedule .schedule-detail-form-container #schedule-image-uploader{position:relative}#tools-schedule .schedule-detail-form-container #schedule-image-uploader.dropping .drop-text{display:flex}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .upload-button{margin-bottom:16px}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .schedule-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .schedule-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-schedule .schedule-detail-form-container #schedule-image-uploader .schedule-image .media{max-height:100%}#schedules{position:relative}#schedules>.header{height:76px;min-height:76px;max-height:76px}#schedules>.header .logo .logo-icon{margin:0 16px 0 0}#schedules>.header .logo .logo-text{font-size:24px}#schedules>.header md-icon{color:#fff}#schedules>.header .search-input-wrapper{position:relative}#schedules>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#schedules>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#schedules>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#schedules>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#schedules>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#schedules>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#schedules>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#schedules>.header.selected-bar .close-button-wrapper{width:244px}#schedules>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#schedules>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#schedules>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#schedules #add-schedule-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.sound-dialog{max-width:720px;width:720px}md-dialog.sound-dialog md-dialog-content{display:block;position:relative}md-dialog.sound-dialog md-toolbar .title{font-size:17px}md-dialog.sound-dialog md-input-container textarea{min-height:150px}md-dialog.sound-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.sound-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.sound-dialog .date-container{padding:16px 0 24px 0}md-dialog.sound-dialog .error-list{font-size:13px}md-dialog.sound-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.sound-dialog .error-list .error .message{font-weight:500}md-dialog.sound-dialog .error-list .error .md-button{margin:0}md-dialog.sound-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.sound-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#sounds{position:relative}#sounds>.header{height:76px;min-height:76px;max-height:76px}#sounds>.header .logo .logo-icon{margin:0 16px 0 0}#sounds>.header .logo .logo-text{font-size:24px}#sounds>.header md-icon{color:#fff}#sounds>.header .search-input-wrapper{position:relative}#sounds>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#sounds>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#sounds>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#sounds>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#sounds>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#sounds>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#sounds>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#sounds>.header.selected-bar .close-button-wrapper{width:244px}#sounds>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#sounds>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#sounds>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#sounds #add-sound-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.upload-dialog{max-width:720px;width:720px}md-dialog.upload-dialog md-dialog-content{display:block;position:relative}md-dialog.upload-dialog md-toolbar .title{font-size:17px}md-dialog.upload-dialog md-input-container textarea{min-height:150px}md-dialog.upload-dialog .date-container{padding:16px 0 24px 0}md-dialog.upload-dialog .error-list{font-size:13px}md-dialog.upload-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.upload-dialog .error-list .error .message{font-weight:500}md-dialog.upload-dialog .error-list .error .md-button{margin:0}md-dialog.upload-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.upload-dialog .sound-image{overflow:hidden;max-width:148px;margin-right:16px;border:3px solid rgba(0,0,0,.12);padding:10px}md-dialog.upload-dialog .sound-image img{width:auto;max-width:none}md-dialog.upload-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.tag-dialog{max-width:720px;width:720px}md-dialog.tag-dialog md-dialog-content{display:block;position:relative}md-dialog.tag-dialog md-toolbar .title{font-size:17px}md-dialog.tag-dialog md-input-container textarea{min-height:150px}md-dialog.tag-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.tag-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.tag-dialog .date-container{padding:16px 0 24px 0}md-dialog.tag-dialog .error-list{font-size:13px}md-dialog.tag-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.tag-dialog .error-list .error .message{font-weight:500}md-dialog.tag-dialog .error-list .error .md-button{margin:0}md-dialog.tag-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.tag-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tags{position:relative}#tags>.header{height:76px;min-height:76px;max-height:76px}#tags>.header .logo .logo-icon{margin:0 16px 0 0}#tags>.header .logo .logo-text{font-size:24px}#tags>.header md-icon{color:#fff}#tags>.header .search-input-wrapper{position:relative}#tags>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#tags>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#tags>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#tags>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#tags>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#tags>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#tags>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#tags>.header.selected-bar .close-button-wrapper{width:244px}#tags>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#tags>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#tags>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#tags #add-tag-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.template-dialog{max-width:720px;width:720px}md-dialog.template-dialog md-dialog-content{display:block;position:relative}md-dialog.template-dialog md-toolbar .title{font-size:17px}md-dialog.template-dialog md-input-container textarea{min-height:150px}md-dialog.template-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.template-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.template-dialog .date-container{padding:16px 0 24px 0}md-dialog.template-dialog .error-list{font-size:13px}md-dialog.template-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.template-dialog .error-list .error .message{font-weight:500}md-dialog.template-dialog .error-list .error .md-button{margin:0}md-dialog.template-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.template-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#templates{position:relative}#templates>.header{height:76px;min-height:76px;max-height:76px}#templates>.header .logo .logo-icon{margin:0 16px 0 0}#templates>.header .logo .logo-text{font-size:24px}#templates>.header md-icon{color:#fff}#templates>.header .search-input-wrapper{position:relative}#templates>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#templates>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#templates>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#templates>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#templates>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#templates>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#templates>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#templates>.header.selected-bar .close-button-wrapper{width:244px}#templates>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#templates>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#templates>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#templates #add-template-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.trigger-dialog{max-width:720px;width:720px}md-dialog.trigger-dialog md-dialog-content{display:block;position:relative}md-dialog.trigger-dialog md-toolbar .title{font-size:17px}md-dialog.trigger-dialog md-input-container textarea{min-height:150px}md-dialog.trigger-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.trigger-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.trigger-dialog .date-container{padding:16px 0 24px 0}md-dialog.trigger-dialog .error-list{font-size:13px}md-dialog.trigger-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.trigger-dialog .error-list .error .message{font-weight:500}md-dialog.trigger-dialog .error-list .error .md-button{margin:0}md-dialog.trigger-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.trigger-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.action-dialog{max-width:720px;width:720px}md-dialog.action-dialog md-dialog-content{display:block;position:relative}md-dialog.action-dialog md-toolbar .title{font-size:17px}md-dialog.action-dialog md-input-container textarea{min-height:150px}md-dialog.action-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.action-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.action-dialog .date-container{padding:16px 0 24px 0}md-dialog.action-dialog .error-list{font-size:13px}md-dialog.action-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.action-dialog .error-list .error .message{font-weight:500}md-dialog.action-dialog .error-list .error .md-button{margin:0}md-dialog.action-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.action-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.allCondition-dialog{max-width:720px;width:720px}md-dialog.allCondition-dialog md-dialog-content{display:block;position:relative}md-dialog.allCondition-dialog md-toolbar .title{font-size:17px}md-dialog.allCondition-dialog md-input-container textarea{min-height:150px}md-dialog.allCondition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.allCondition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.allCondition-dialog .date-container{padding:16px 0 24px 0}md-dialog.allCondition-dialog .error-list{font-size:13px}md-dialog.allCondition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.allCondition-dialog .error-list .error .message{font-weight:500}md-dialog.allCondition-dialog .error-list .error .md-button{margin:0}md-dialog.allCondition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.allCondition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.anyCondition-dialog{max-width:720px;width:720px}md-dialog.anyCondition-dialog md-dialog-content{display:block;position:relative}md-dialog.anyCondition-dialog md-toolbar .title{font-size:17px}md-dialog.anyCondition-dialog md-input-container textarea{min-height:150px}md-dialog.anyCondition-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.anyCondition-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.anyCondition-dialog .date-container{padding:16px 0 24px 0}md-dialog.anyCondition-dialog .error-list{font-size:13px}md-dialog.anyCondition-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.anyCondition-dialog .error-list .error .message{font-weight:500}md-dialog.anyCondition-dialog .error-list .error .md-button{margin:0}md-dialog.anyCondition-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.anyCondition-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-trigger .header{height:120px;min-height:120px;max-height:120px}#tools-trigger .header .goto-triggers-button{margin-right:16px}#tools-trigger .header .trigger-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-trigger .header .trigger-image img{height:100%;width:auto;max-width:none}#tools-trigger .header .subtitle{margin:6px 0 0 0}#tools-trigger .trigger-detail-form-container{padding:24px;margin-bottom:24px}#tools-trigger .trigger-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-trigger .trigger-detail-form-container .handle{cursor:move}#tools-trigger .trigger-detail-form-container md-input-container md-switch{margin:0!important}#tools-trigger .trigger-detail-form-container #trigger-image-uploader{position:relative}#tools-trigger .trigger-detail-form-container #trigger-image-uploader.dropping .drop-text{display:flex}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .upload-button{margin-bottom:16px}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .trigger-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .trigger-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-trigger .trigger-detail-form-container #trigger-image-uploader .trigger-image .media{max-height:100%}#triggers{position:relative}#triggers>.header{height:76px;min-height:76px;max-height:76px}#triggers>.header .logo .logo-icon{margin:0 16px 0 0}#triggers>.header .logo .logo-text{font-size:24px}#triggers>.header md-icon{color:#fff}#triggers>.header .search-input-wrapper{position:relative}#triggers>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#triggers>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#triggers>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#triggers>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#triggers>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#triggers>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#triggers>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#triggers>.header.selected-bar .close-button-wrapper{width:244px}#triggers>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#triggers>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#triggers>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#triggers #add-trigger-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.trunk-dialog{max-width:720px;width:720px}md-dialog.trunk-dialog md-dialog-content{display:block;position:relative}md-dialog.trunk-dialog md-toolbar .title{font-size:17px}md-dialog.trunk-dialog md-input-container textarea{min-height:150px}md-dialog.trunk-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.trunk-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.trunk-dialog .date-container{padding:16px 0 24px 0}md-dialog.trunk-dialog .error-list{font-size:13px}md-dialog.trunk-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.trunk-dialog .error-list .error .message{font-weight:500}md-dialog.trunk-dialog .error-list .error .md-button{margin:0}md-dialog.trunk-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.trunk-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#tools-trunk .header{height:120px;min-height:120px;max-height:120px}#tools-trunk .header .goto-trunks-button{margin-right:16px}#tools-trunk .header .trunk-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#tools-trunk .header .trunk-image img{height:100%;width:auto;max-width:none}#tools-trunk .header .subtitle{margin:6px 0 0 0}#tools-trunk .trunk-detail-form-container{padding:24px;margin-bottom:24px}#tools-trunk .trunk-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#tools-trunk .trunk-detail-form-container .handle{cursor:move}#tools-trunk .trunk-detail-form-container md-input-container md-switch{margin:0!important}#tools-trunk .trunk-detail-form-container #trunk-image-uploader{position:relative}#tools-trunk .trunk-detail-form-container #trunk-image-uploader.dropping .drop-text{display:flex}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .upload-button{margin-bottom:16px}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .trunk-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .trunk-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#tools-trunk .trunk-detail-form-container #trunk-image-uploader .trunk-image .media{max-height:100%}#trunks{position:relative}#trunks>.header{height:76px;min-height:76px;max-height:76px}#trunks>.header .logo .logo-icon{margin:0 16px 0 0}#trunks>.header .logo .logo-text{font-size:24px}#trunks>.header md-icon{color:#fff}#trunks>.header .search-input-wrapper{position:relative}#trunks>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#trunks>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#trunks>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#trunks>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#trunks>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#trunks>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#trunks>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#trunks>.header.selected-bar .close-button-wrapper{width:244px}#trunks>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#trunks>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#trunks>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#trunks #add-trunk-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.variable-dialog{max-width:720px;width:720px}md-dialog.variable-dialog md-dialog-content{display:block;position:relative}md-dialog.variable-dialog md-toolbar .title{font-size:17px}md-dialog.variable-dialog md-input-container textarea{min-height:150px}md-dialog.variable-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.variable-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.variable-dialog .date-container{padding:16px 0 24px 0}md-dialog.variable-dialog .error-list{font-size:13px}md-dialog.variable-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.variable-dialog .error-list .error .message{font-weight:500}md-dialog.variable-dialog .error-list .error .md-button{margin:0}md-dialog.variable-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.variable-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#variables{position:relative}#variables>.header{height:76px;min-height:76px;max-height:76px}#variables>.header .logo .logo-icon{margin:0 16px 0 0}#variables>.header .logo .logo-text{font-size:24px}#variables>.header md-icon{color:#fff}#variables>.header .search-input-wrapper{position:relative}#variables>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#variables>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#variables>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#variables>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#variables>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#variables>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#variables>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#variables>.header.selected-bar .close-button-wrapper{width:244px}#variables>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#variables>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#variables>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#variables #add-variable-button{position:fixed;bottom:8px;right:8px;padding:0}#chanSpies{position:relative}#chanSpies>.header{height:76px;min-height:76px;max-height:76px}#chanSpies>.header .logo .logo-icon{margin:0 16px 0 0}#chanSpies>.header .logo .logo-text{font-size:24px}#chanSpies>.header md-icon{color:#fff}#chanSpies>.header .search-input-wrapper{position:relative}#chanSpies>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#chanSpies>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#chanSpies>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#chanSpies>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#chanSpies>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#chanSpies>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#chanSpies>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#chanSpies>.header.selected-bar .close-button-wrapper{width:244px}#chanSpies>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#chanSpies>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#chanSpies>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#chanSpies #add-chanSpy-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.chanSpy-dialog{max-width:720px;width:720px}md-dialog.chanSpy-dialog md-dialog-content{display:block;position:relative}md-dialog.chanSpy-dialog md-toolbar .title{font-size:17px}md-dialog.chanSpy-dialog md-input-container textarea{min-height:150px}md-dialog.chanSpy-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.chanSpy-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.chanSpy-dialog .date-container{padding:16px 0 24px 0}md-dialog.chanSpy-dialog .error-list{font-size:13px}md-dialog.chanSpy-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.chanSpy-dialog .error-list .error .message{font-weight:500}md-dialog.chanSpy-dialog .error-list .error .md-button{margin:0}md-dialog.chanSpy-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.chanSpy-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-chanSpy .header{height:120px;min-height:120px;max-height:120px}#voice-chanSpy .header .goto-chanSpies-button{margin-right:16px}#voice-chanSpy .header .chanSpy-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-chanSpy .header .chanSpy-image img{height:100%;width:auto;max-width:none}#voice-chanSpy .header .subtitle{margin:6px 0 0 0}#voice-chanSpy .chanSpy-detail-form-container{padding:24px;margin-bottom:24px}#voice-chanSpy .chanSpy-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-chanSpy .chanSpy-detail-form-container .handle{cursor:move}#voice-chanSpy .chanSpy-detail-form-container md-input-container md-switch{margin:0!important}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader{position:relative}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader.dropping .drop-text{display:flex}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .upload-button{margin-bottom:16px}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .chanSpy-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .chanSpy-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-chanSpy .chanSpy-detail-form-container #chanSpy-image-uploader .chanSpy-image .media{max-height:100%}#contexts{position:relative}#contexts>.header{height:76px;min-height:76px;max-height:76px}#contexts>.header .logo .logo-icon{margin:0 16px 0 0}#contexts>.header .logo .logo-text{font-size:24px}#contexts>.header md-icon{color:#fff}#contexts>.header .search-input-wrapper{position:relative}#contexts>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#contexts>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#contexts>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#contexts>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#contexts>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#contexts>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#contexts>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#contexts>.header.selected-bar .close-button-wrapper{width:244px}#contexts>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#contexts>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#contexts>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#contexts #add-context-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.context-dialog{max-width:720px;width:720px}md-dialog.context-dialog md-dialog-content{display:block;position:relative}md-dialog.context-dialog md-toolbar .title{font-size:17px}md-dialog.context-dialog md-input-container textarea{min-height:150px}md-dialog.context-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.context-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.context-dialog .date-container{padding:16px 0 24px 0}md-dialog.context-dialog .error-list{font-size:13px}md-dialog.context-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.context-dialog .error-list .error .message{font-weight:500}md-dialog.context-dialog .error-list .error .md-button{margin:0}md-dialog.context-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.context-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.inboundroute-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.inboundroute-dialog{max-width:720px;width:720px}md-dialog.inboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.inboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.inboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.inboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.inboundroute-dialog .error-list{font-size:13px}md-dialog.inboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.inboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.inboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.inboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.inboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-inboundroute .header{height:120px;min-height:120px;max-height:120px}#voice-inboundroute .header .goto-inboundroutes-button{margin-right:16px}#voice-inboundroute .header .inboundroute-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-inboundroute .header .inboundroute-image img{height:100%;width:auto;max-width:none}#voice-inboundroute .header .subtitle{margin:6px 0 0 0}#voice-inboundroute .inboundroute-detail-form-container{padding:24px;margin-bottom:24px}#voice-inboundroute .inboundroute-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-inboundroute .inboundroute-detail-form-container .handle{cursor:move}#voice-inboundroute .inboundroute-detail-form-container md-input-container md-switch{margin:0!important}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader{position:relative}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader.dropping .drop-text{display:flex}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .upload-button{margin-bottom:16px}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .inboundroute-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .inboundroute-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-inboundroute .inboundroute-detail-form-container #inboundroute-image-uploader .inboundroute-image .media{max-height:100%}#inboundroutes{position:relative}#inboundroutes>.header{height:76px;min-height:76px;max-height:76px}#inboundroutes>.header .logo .logo-icon{margin:0 16px 0 0}#inboundroutes>.header .logo .logo-text{font-size:24px}#inboundroutes>.header md-icon{color:#fff}#inboundroutes>.header .search-input-wrapper{position:relative}#inboundroutes>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#inboundroutes>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#inboundroutes>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#inboundroutes>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#inboundroutes>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#inboundroutes>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#inboundroutes>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#inboundroutes>.header.selected-bar .close-button-wrapper{width:244px}#inboundroutes>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#inboundroutes>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#inboundroutes>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#inboundroutes #add-inboundroute-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.internalroute-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.internalroute-dialog{max-width:720px;width:720px}md-dialog.internalroute-dialog md-dialog-content{display:block;position:relative}md-dialog.internalroute-dialog md-toolbar .title{font-size:17px}md-dialog.internalroute-dialog md-input-container textarea{min-height:150px}md-dialog.internalroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.internalroute-dialog .error-list{font-size:13px}md-dialog.internalroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.internalroute-dialog .error-list .error .message{font-weight:500}md-dialog.internalroute-dialog .error-list .error .md-button{margin:0}md-dialog.internalroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.internalroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-internalroute .header{height:120px;min-height:120px;max-height:120px}#voice-internalroute .header .goto-internalroutes-button{margin-right:16px}#voice-internalroute .header .internalroute-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-internalroute .header .internalroute-image img{height:100%;width:auto;max-width:none}#voice-internalroute .header .subtitle{margin:6px 0 0 0}#voice-internalroute .internalroute-detail-form-container{padding:24px;margin-bottom:24px}#voice-internalroute .internalroute-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-internalroute .internalroute-detail-form-container .handle{cursor:move}#voice-internalroute .internalroute-detail-form-container md-input-container md-switch{margin:0!important}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader{position:relative}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader.dropping .drop-text{display:flex}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .upload-button{margin-bottom:16px}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .internalroute-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .internalroute-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-internalroute .internalroute-detail-form-container #internalroute-image-uploader .internalroute-image .media{max-height:100%}#internalroutes{position:relative}#internalroutes>.header{height:76px;min-height:76px;max-height:76px}#internalroutes>.header .logo .logo-icon{margin:0 16px 0 0}#internalroutes>.header .logo .logo-text{font-size:24px}#internalroutes>.header md-icon{color:#fff}#internalroutes>.header .search-input-wrapper{position:relative}#internalroutes>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#internalroutes>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#internalroutes>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#internalroutes>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#internalroutes>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#internalroutes>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#internalroutes>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#internalroutes>.header.selected-bar .close-button-wrapper{width:244px}#internalroutes>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#internalroutes>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#internalroutes>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#internalroutes #add-internalroute-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.musiconhold-dialog{max-width:720px;width:720px}md-dialog.musiconhold-dialog md-dialog-content{display:block;position:relative}md-dialog.musiconhold-dialog md-toolbar .title{font-size:17px}md-dialog.musiconhold-dialog md-input-container textarea{min-height:150px}md-dialog.musiconhold-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.musiconhold-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.musiconhold-dialog .date-container{padding:16px 0 24px 0}md-dialog.musiconhold-dialog .error-list{font-size:13px}md-dialog.musiconhold-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.musiconhold-dialog .error-list .error .message{font-weight:500}md-dialog.musiconhold-dialog .error-list .error .md-button{margin:0}md-dialog.musiconhold-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.musiconhold-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.mohSound-dialog{max-width:720px;width:720px}md-dialog.mohSound-dialog md-dialog-content{display:block;position:relative}md-dialog.mohSound-dialog md-toolbar .title{font-size:17px}md-dialog.mohSound-dialog md-input-container textarea{min-height:150px}md-dialog.mohSound-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.mohSound-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.mohSound-dialog .date-container{padding:16px 0 24px 0}md-dialog.mohSound-dialog .error-list{font-size:13px}md-dialog.mohSound-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.mohSound-dialog .error-list .error .message{font-weight:500}md-dialog.mohSound-dialog .error-list .error .md-button{margin:0}md-dialog.mohSound-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.mohSound-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-musiconhold .header{height:120px;min-height:120px;max-height:120px}#voice-musiconhold .header .goto-musiconholds-button{margin-right:16px}#voice-musiconhold .header .musiconhold-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-musiconhold .header .musiconhold-image img{height:100%;width:auto;max-width:none}#voice-musiconhold .header .subtitle{margin:6px 0 0 0}#voice-musiconhold .musiconhold-detail-form-container{padding:24px;margin-bottom:24px}#voice-musiconhold .musiconhold-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-musiconhold .musiconhold-detail-form-container .handle{cursor:move}#voice-musiconhold .musiconhold-detail-form-container md-input-container md-switch{margin:0!important}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader{position:relative}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader.dropping .drop-text{display:flex}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .upload-button{margin-bottom:16px}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .musiconhold-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .musiconhold-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-musiconhold .musiconhold-detail-form-container #musiconhold-image-uploader .musiconhold-image .media{max-height:100%}#musiconholds{position:relative}#musiconholds>.header{height:76px;min-height:76px;max-height:76px}#musiconholds>.header .logo .logo-icon{margin:0 16px 0 0}#musiconholds>.header .logo .logo-text{font-size:24px}#musiconholds>.header md-icon{color:#fff}#musiconholds>.header .search-input-wrapper{position:relative}#musiconholds>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#musiconholds>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#musiconholds>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#musiconholds>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#musiconholds>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#musiconholds>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#musiconholds>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#musiconholds>.header.selected-bar .close-button-wrapper{width:244px}#musiconholds>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#musiconholds>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#musiconholds>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#musiconholds #add-musiconhold-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.outboundroute-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}md-dialog.outboundroute-dialog{max-width:720px;width:720px}md-dialog.outboundroute-dialog md-dialog-content{display:block;position:relative}md-dialog.outboundroute-dialog md-toolbar .title{font-size:17px}md-dialog.outboundroute-dialog md-input-container textarea{min-height:150px}md-dialog.outboundroute-dialog .date-container{padding:16px 0 24px 0}md-dialog.outboundroute-dialog .error-list{font-size:13px}md-dialog.outboundroute-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.outboundroute-dialog .error-list .error .message{font-weight:500}md-dialog.outboundroute-dialog .error-list .error .md-button{margin:0}md-dialog.outboundroute-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.outboundroute-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-outboundroute .header{height:120px;min-height:120px;max-height:120px}#voice-outboundroute .header .goto-outboundroutes-button{margin-right:16px}#voice-outboundroute .header .outboundroute-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-outboundroute .header .outboundroute-image img{height:100%;width:auto;max-width:none}#voice-outboundroute .header .subtitle{margin:6px 0 0 0}#voice-outboundroute .outboundroute-detail-form-container{padding:24px;margin-bottom:24px}#voice-outboundroute .outboundroute-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-outboundroute .outboundroute-detail-form-container .handle{cursor:move}#voice-outboundroute .outboundroute-detail-form-container md-input-container md-switch{margin:0!important}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader{position:relative}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader.dropping .drop-text{display:flex}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .upload-button{margin-bottom:16px}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .outboundroute-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .outboundroute-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-outboundroute .outboundroute-detail-form-container #outboundroute-image-uploader .outboundroute-image .media{max-height:100%}#outboundroutes{position:relative}#outboundroutes>.header{height:76px;min-height:76px;max-height:76px}#outboundroutes>.header .logo .logo-icon{margin:0 16px 0 0}#outboundroutes>.header .logo .logo-text{font-size:24px}#outboundroutes>.header md-icon{color:#fff}#outboundroutes>.header .search-input-wrapper{position:relative}#outboundroutes>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#outboundroutes>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#outboundroutes>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#outboundroutes>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#outboundroutes>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#outboundroutes>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#outboundroutes>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#outboundroutes>.header.selected-bar .close-button-wrapper{width:244px}#outboundroutes>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#outboundroutes>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#outboundroutes>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#outboundroutes #add-outboundroute-button{position:fixed;bottom:8px;right:8px;padding:0}#realtime>.content .blink{animation:blinker 2s linear infinite}#realtime>.content .avatar-wrapper{position:relative}#realtime>.content .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}#realtime>.content .search-input-wrapper{position:relative;margin-left:20px}#realtime>.content .search-input-wrapper label{padding:6px;cursor:pointer}#realtime>.content .search-input-wrapper md-input-container{padding-top:20px}#realtime>.content .main .labels{padding:8px 16px}#realtime>.content .main .labels .label{margin:0 0 2px 4px;padding:2px 5px;font-size:11px;white-space:nowrap;border-radius:2px}#realtime>.content .main .status{position:absolute;bottom:-3px;right:5px}#realtime>.content .main .avatar-wrapper{position:relative}#realtime>.content .main .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}@keyframes blinker{50%{opacity:0}}md-dialog.voicemail-dialog{max-width:720px;width:720px}md-dialog.voicemail-dialog md-dialog-content{display:block;position:relative}md-dialog.voicemail-dialog md-toolbar .title{font-size:17px}md-dialog.voicemail-dialog md-input-container textarea{min-height:150px}md-dialog.voicemail-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.voicemail-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.voicemail-dialog .date-container{padding:16px 0 24px 0}md-dialog.voicemail-dialog .error-list{font-size:13px}md-dialog.voicemail-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.voicemail-dialog .error-list .error .message{font-weight:500}md-dialog.voicemail-dialog .error-list .error .md-button{margin:0}md-dialog.voicemail-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.voicemail-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-voicemail .header{height:120px;min-height:120px;max-height:120px}#voice-voicemail .header .goto-voicemails-button{margin-right:16px}#voice-voicemail .header .voicemail-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-voicemail .header .voicemail-image img{height:100%;width:auto;max-width:none}#voice-voicemail .header .subtitle{margin:6px 0 0 0}#voice-voicemail .voicemail-detail-form-container{padding:24px;margin-bottom:24px}#voice-voicemail .voicemail-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-voicemail .voicemail-detail-form-container .handle{cursor:move}#voice-voicemail .voicemail-detail-form-container md-input-container md-switch{margin:0!important}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader{position:relative}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader.dropping .drop-text{display:flex}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .upload-button{margin-bottom:16px}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .voicemail-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .voicemail-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-voicemail .voicemail-detail-form-container #voicemail-image-uploader .voicemail-image .media{max-height:100%}#voicemails{position:relative}#voicemails>.header{height:76px;min-height:76px;max-height:76px}#voicemails>.header .logo .logo-icon{margin:0 16px 0 0}#voicemails>.header .logo .logo-text{font-size:24px}#voicemails>.header md-icon{color:#fff}#voicemails>.header .search-input-wrapper{position:relative}#voicemails>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#voicemails>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#voicemails>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#voicemails>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#voicemails>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#voicemails>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#voicemails>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#voicemails>.header.selected-bar .close-button-wrapper{width:244px}#voicemails>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#voicemails>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#voicemails>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#voicemails #add-voicemail-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.voiceQueue-dialog{max-width:720px;width:720px}md-dialog.voiceQueue-dialog md-dialog-content{display:block;position:relative}md-dialog.voiceQueue-dialog md-toolbar .title{font-size:17px}md-dialog.voiceQueue-dialog md-input-container textarea{min-height:150px}md-dialog.voiceQueue-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.voiceQueue-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.voiceQueue-dialog .date-container{padding:16px 0 24px 0}md-dialog.voiceQueue-dialog .error-list{font-size:13px}md-dialog.voiceQueue-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.voiceQueue-dialog .error-list .error .message{font-weight:500}md-dialog.voiceQueue-dialog .error-list .error .md-button{margin:0}md-dialog.voiceQueue-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.voiceQueue-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voice-voiceQueue .header{height:120px;min-height:120px;max-height:120px}#voice-voiceQueue .header .goto-voiceQueues-button{margin-right:16px}#voice-voiceQueue .header .voiceQueue-image{overflow:hidden;width:56px;height:56px;margin-right:16px;border:3px solid rgba(0,0,0,.12)}#voice-voiceQueue .header .voiceQueue-image img{height:100%;width:auto;max-width:none}#voice-voiceQueue .header .subtitle{margin:6px 0 0 0}#voice-voiceQueue .voiceQueue-detail-form-container{padding:24px;margin-bottom:24px}#voice-voiceQueue .voiceQueue-detail-form-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}#voice-voiceQueue .voiceQueue-detail-form-container .handle{cursor:move}#voice-voiceQueue .voiceQueue-detail-form-container md-input-container md-switch{margin:0!important}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader{position:relative}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader.dropping .drop-text{display:flex}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .drop-text{display:none;position:absolute;top:0;right:0;bottom:0;left:0;padding:16px;text-align:center;border:2px dashed rgba(0,0,0,.12);background:#fff;font-size:20px;z-index:100}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .upload-button{margin-bottom:16px}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .voiceQueue-image{position:relative;width:200px;height:200px;border:1px solid rgba(0,0,0,.12);margin:8px}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .voiceQueue-image.uploading .overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.87)}#voice-voiceQueue .voiceQueue-detail-form-container #voiceQueue-image-uploader .voiceQueue-image .media{max-height:100%}#voiceQueues{position:relative}#voiceQueues>.header{height:76px;min-height:76px;max-height:76px}#voiceQueues>.header .logo .logo-icon{margin:0 16px 0 0}#voiceQueues>.header .logo .logo-text{font-size:24px}#voiceQueues>.header md-icon{color:#fff}#voiceQueues>.header .search-input-wrapper{position:relative}#voiceQueues>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#voiceQueues>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#voiceQueues>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#voiceQueues>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#voiceQueues>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#voiceQueues>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#voiceQueues>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#voiceQueues>.header.selected-bar .close-button-wrapper{width:244px}#voiceQueues>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#voiceQueues>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#voiceQueues>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#voiceQueues #add-voiceQueue-button{position:fixed;bottom:8px;right:8px;padding:0}md-dialog.voiceRecording-dialog{max-width:720px;width:720px}md-dialog.voiceRecording-dialog md-dialog-content{display:block;position:relative}md-dialog.voiceRecording-dialog md-toolbar .title{font-size:17px}md-dialog.voiceRecording-dialog md-input-container textarea{min-height:150px}md-dialog.voiceRecording-dialog md-input-container .hint{font-size:12px;line-height:20px;transition:all .3s cubic-bezier(.55,0,.55,.2);color:grey}md-dialog.voiceRecording-dialog md-input-container md-input-container md-switch{margin:0!important}md-dialog.voiceRecording-dialog .date-container{padding:16px 0 24px 0}md-dialog.voiceRecording-dialog .error-list{font-size:13px}md-dialog.voiceRecording-dialog .error-list .error{background-color:rgba(244,67,54,.08);border:1px solid rgba(244,67,54,.12);padding-left:16px;margin-top:8px;border-radius:2px}md-dialog.voiceRecording-dialog .error-list .error .message{font-weight:500}md-dialog.voiceRecording-dialog .error-list .error .md-button{margin:0}md-dialog.voiceRecording-dialog .error-list .error:last-child{margin-bottom:30px}md-dialog.voiceRecording-dialog md-dialog-actions{position:relative;overflow-y:hidden;overflow-x:auto;justify-content:space-between;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.12)}@media screen and (max-width:1280px){md-dialog.task-dialog{width:80%}}@media screen and (max-width:960px){md-dialog.task-dialog{width:90%}}#voiceRecordings{position:relative}#voiceRecordings>.header{height:76px;min-height:76px;max-height:76px}#voiceRecordings>.header .logo .logo-icon{margin:0 16px 0 0}#voiceRecordings>.header .logo .logo-text{font-size:24px}#voiceRecordings>.header md-icon{color:#fff}#voiceRecordings>.header .search-input-wrapper{position:relative}#voiceRecordings>.header .search-input-wrapper label{padding-right:4px;cursor:pointer}#voiceRecordings>.header .search-input-wrapper label md-icon{color:rgba(255,255,255,.8)}#voiceRecordings>.header .search-input-wrapper md-input-container .md-errors-spacer{display:none}#voiceRecordings>.header .search-input-wrapper md-input-container input{border-bottom:1px solid rgba(255,255,255,.8);color:rgba(255,255,255,.8);width:240px}#voiceRecordings>.header .search-input-wrapper md-input-container input::placeholder{color:rgba(255,255,255,.8)}#voiceRecordings>.header .search-input-wrapper md-input-container input:focus{border-bottom:1px solid #fff;color:#fff}#voiceRecordings>.header.selected-bar{position:absolute;top:0;left:0;right:0;z-index:999;background-image:none;opacity:1!important}#voiceRecordings>.header.selected-bar .close-button-wrapper{width:244px}#voiceRecordings>.content{position:absolute;top:76px;bottom:0;right:0;left:0}#voiceRecordings>.content .main{padding:16px 90px 0 4px;position:absolute;top:0;left:24px;right:0;bottom:0}#voiceRecordings>.content .main .no-results{box-shadow:0 1px 1px 0 rgba(0,0,0,.14)}#voiceRecordings #add-voiceRecording-button{position:fixed;bottom:8px;right:8px;padding:0}#layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation{width:240px;min-width:240px;max-width:240px;overflow-x:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2),width .1s linear,min-width .1s linear,max-width .1s linear;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}#layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation .navigation-header{height:64px;min-height:64px;background-color:rgba(255,255,255,.05);padding:0 16px 0 24px}#layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation:not(._md-locked-open){box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}@media only screen and (min-width:960px){.ms-navigation-folded #content-container{margin-left:64px}.ms-navigation-folded #layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation{position:absolute}.ms-navigation-folded:not(.ms-navigation-folded-open) #layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation{position:absolute;width:64px;min-width:64px;max-width:64px}.ms-navigation-folded:not(.ms-navigation-folded-open) #layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation .navigation-header{padding:0 16px}.ms-navigation-folded:not(.ms-navigation-folded-open) #layout-vertical-navigation-fullwidth-toolbar-2 #vertical-navigation .navigation-header .logo-text{display:none}}#vertical-navigation{width:240px;min-width:240px;max-width:240px;overflow-x:hidden;transition:all .3s cubic-bezier(.55,0,.55,.2),width .1s linear,min-width .1s linear,max-width .1s linear;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}#vertical-navigation .navigation-header{height:64px;min-height:64px;background-color:rgba(255,255,255,.05);padding:0 16px 0 24px}#vertical-navigation .navigation-header .logo .logo-image{display:block;width:32px;min-width:32px;height:32px;line-height:32px;text-align:center;font-size:16px;font-weight:500;color:#fff;border-radius:2px}#vertical-navigation .navigation-header .logo .logo-text{color:#fff;margin-left:16px;font-size:16px}#vertical-navigation .navigation-header .fold-toggle{transition:transform .3s ease-in-out .1s;transform:rotate(0);margin:0;padding:8px;width:34px!important;height:34px!important;cursor:pointer}#vertical-navigation:not(._md-locked-open){box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}@media only screen and (min-width:960px){.ms-navigation-folded #content-container{margin-left:64px}.ms-navigation-folded #vertical-navigation{position:absolute}.ms-navigation-folded #vertical-navigation .navigation-header .fold-toggle{transform:rotate(180deg);opacity:0}.ms-navigation-folded.ms-navigation-folded-open #vertical-navigation .navigation-header .fold-toggle{transition:transform .3s ease-in-out .1s,opacity .3s ease-in-out .2s;opacity:1}.ms-navigation-folded:not(.ms-navigation-folded-open) #vertical-navigation{position:absolute;width:64px;min-width:64px;max-width:64px}.ms-navigation-folded:not(.ms-navigation-folded-open) #vertical-navigation .navigation-header{padding:0 16px}.ms-navigation-folded:not(.ms-navigation-folded-open) #vertical-navigation .navigation-header .logo-text{display:none}}#quick-panel{width:330px;min-width:330px;max-width:330px;z-index:99}#quick-panel md-content{height:100%}#quick-panel md-content md-tabs{height:100%}#quick-panel md-content md-tabs md-tabs-wrapper{background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.06)}#quick-panel md-content md-tabs md-tabs-wrapper .md-tab{max-width:none!important}#quick-panel md-content md-tabs md-tabs-content-wrapper md-tab-content{height:100%;overflow:hidden}#quick-panel md-content md-tabs md-tabs-content-wrapper md-tab-content>div{overflow:hidden;height:100%}@media screen and (max-width:600px){#quick-panel{width:80%;min-width:80%;max-width:80%}}#quick-panel .activity-tab .friends .friend{position:relative}#quick-panel .activity-tab .friends .friend .status{position:absolute;top:8px;left:44px;width:18px;height:18px;z-index:10;border-radius:50%;border:3px solid #fff}#quick-panel .activity-tab .friends .friend .status.online{background-color:#00c853}#quick-panel .activity-tab .friends .friend .status.offline{background-color:#d50000}#quick-panel .activity-tab .friends .friend .status.away{background-color:#ff6d00}#quick-panel .activity-tab .friends .friend .unread-message-count{position:absolute;left:16px;bottom:16px;width:18px;height:18px;z-index:10;border-radius:50%;text-align:center;line-height:18px;font-size:11px}#quick-panel .activity-tab .servers .server .status{margin:24px 20px 28px 8px}#quick-panel .activity-tab .servers .server .status.normal{color:#00c853}#quick-panel .activity-tab .servers .server .status.warn{color:#d50000}#quick-panel .activity-tab .servers .server .status.error{color:#ff6d00}#quick-panel .activity-tab .stat md-progress-linear.normal .md-bar{background-color:#00c853}#quick-panel .activity-tab .stat md-progress-linear.normal .md-container{background-color:rgba(0,200,83,.3)}#quick-panel .activity-tab .stat md-progress-linear.warn .md-bar{background-color:#ff6d00}#quick-panel .activity-tab .stat md-progress-linear.warn .md-container{background-color:rgba(255,109,0,.3)}#quick-panel .activity-tab .stat md-progress-linear.alert .md-bar{background-color:#d50000}#quick-panel .activity-tab .stat md-progress-linear.alert .md-container{background-color:rgba(213,0,0,.3)}#quick-panel .chat-tab .chat,#quick-panel .chat-tab .main{position:absolute;width:100%;top:0;bottom:0}#quick-panel .chat-tab .main .contact{position:relative}#quick-panel .chat-tab .main .contact .status{position:absolute;top:8px;left:44px;width:18px;height:18px;border:3px solid #fff;border-radius:50%;z-index:10}#quick-panel .chat-tab .main .contact .status.online{background-color:#00c853}#quick-panel .chat-tab .main .contact .status.offline{background-color:#d50000}#quick-panel .chat-tab .main .contact .status.away{background-color:#ff6d00}#quick-panel .chat-tab .main .contact .unread-message-count{position:absolute;left:16px;bottom:16px;width:18px;height:18px;z-index:10;border-radius:50%;text-align:center;line-height:18px;font-size:11px}#quick-panel .chat-tab .main .recent .contact .status{top:18px}#quick-panel .chat-tab .chat{max-height:100%;overflow:hidden}#quick-panel .chat-tab .chat .message-row .bubble{position:relative;padding:8px;background-color:#eceff1;border:1px solid #dcdfe1}#quick-panel .chat-tab .chat .message-row .bubble:after,#quick-panel .chat-tab .chat .message-row .bubble:before{content:' ';position:absolute;width:0;height:0}#quick-panel .chat-tab .chat .message-row .bubble:after{left:-7px;right:auto;top:0;bottom:auto;border:11px solid;border-color:#eceff1 transparent transparent transparent}#quick-panel .chat-tab .chat .message-row .bubble:before{left:-9px;right:auto;top:-1px;bottom:auto;border:8px solid;border-color:#dcdfe1 transparent transparent transparent}#quick-panel .chat-tab .chat .message-row .bubble .time{font-size:11px;margin-top:8px}#quick-panel .chat-tab .chat .message-row.contact .avatar{margin:0 16px 0 0}#quick-panel .chat-tab .chat .message-row.user{align-items:flex-end}#quick-panel .chat-tab .chat .message-row.user .avatar{order:2;margin:0 0 0 16px}#quick-panel .chat-tab .chat .message-row.user .bubble{background-color:#e8f5e9;border:1px solid #dfebe0;order:1}#quick-panel .chat-tab .chat .message-row.user .bubble:after{right:-7px;left:auto;top:auto;bottom:0;border-color:transparent transparent #e8f5e9 transparent}#quick-panel .chat-tab .chat .message-row.user .bubble:before{right:-9px;left:auto;top:auto;bottom:-1px;border-color:transparent transparent #dfebe0 transparent}#quick-panel .chat-tab .chat .reply{border-top:1px solid rgba(0,0,0,.12)}#quick-panel .chat-tab .chat .reply textarea{margin:8px;resize:none;height:80px;padding:8px 16px 8px 8px}#layout-content-with-toolbar #toolbar{padding:0 0 0 16px}#layout-content-with-toolbar #toolbar .logo{margin-right:16px}#layout-content-with-toolbar #toolbar .logo .logo-image{display:block;background:#039be5;width:32px;min-width:32px;height:32px;line-height:32px;text-align:center;color:#fff;font-size:16px;font-weight:500;border-radius:2px}#layout-content-with-toolbar #toolbar .logo .logo-text{color:rgba(0,0,0,.87);margin-left:16px;font-size:16px}#layout-horizontal-navigation #toolbar-navigation-container{z-index:55}#layout-horizontal-navigation #toolbar-navigation-container #toolbar{height:64px;min-height:64px;max-height:64px;box-shadow:none}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .navigation-toggle{height:64px;border-right:1px solid rgba(0,0,0,.12)}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .navigation-toggle .md-button{margin:0;width:64px;height:64px}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .logo{margin:0 16px}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .logo .logo-image{display:block;background:#039be5;width:32px;min-width:32px;height:32px;line-height:32px;text-align:center;color:#fff;font-size:16px;font-weight:500;border-radius:2px}#layout-horizontal-navigation #toolbar-navigation-container #toolbar .top-row .logo .logo-text{color:rgba(0,0,0,.87);margin-left:16px;font-size:16px}@media only screen and (max-width:960px){#layout-horizontal-navigation #toolbar-navigation-container{height:64px;min-height:64px;max-height:64px}#layout-horizontal-navigation #toolbar-navigation-container #toolbar{padding:0}}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .logo{width:240px;padding:0 16px}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .logo .logo-image{display:block;background:#039be5;width:32px;min-width:32px;height:32px;line-height:32px;text-align:center;color:#fff;font-size:16px;font-weight:500;border-radius:2px}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .logo .logo-text{color:rgba(0,0,0,.87);margin-left:16px;font-size:16px}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .navigation-fold-toggle{width:64px;min-width:64px;height:64px;margin:0;border-right:1px solid rgba(0,0,0,.12);border-radius:0}#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .navigation-fold-toggle md-icon{transition:transform .3s ease-in-out .1s;transform:rotate(0)}@media only screen and (min-width:960px){.ms-navigation-folded #layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .navigation-fold-toggle md-icon{transform:rotate(180deg)}}@media only screen and (max-width:960px){#layout-vertical-navigation-fullwidth-toolbar-2 #toolbar .logo{width:auto}}#toolbar{height:64px;min-height:64px;max-height:64px;z-index:55!important}#toolbar .blink{animation:blinker 2s linear infinite}#toolbar #navigation-toggle{width:64px;min-width:64px;height:64px;margin:0;border-right:1px solid rgba(0,0,0,.12);border-radius:0}#toolbar #user-menu{height:64px;padding:0}#toolbar #user-menu md-menu-item .md-button{font-size:15px}#toolbar #user-menu md-menu-item .md-button md-icon{margin:auto 16px auto 0}#toolbar #user-menu .user-button{margin:0;padding:0 16px;height:64px;text-transform:none}#toolbar #user-menu .user-button .avatar-wrapper{position:relative}#toolbar #user-menu .user-button .avatar-wrapper .status{position:absolute;bottom:-3px;right:5px}#toolbar #user-menu .user-button .username{margin:0 12px 0 8px}#toolbar #language-menu{height:64px}#toolbar #language-menu .language-button{min-width:64px;height:64px;margin:0;padding:0 16px;border-radius:0}#toolbar #language-menu .language-button .iso{text-transform:uppercase}#toolbar #language-menu .language-button .flag{margin-right:8px}#toolbar #quick-panel-toggle{width:64px;height:64px;margin:0;border-radius:0}#toolbar .toolbar-separator{height:64px;width:1px;background:rgba(0,0,0,.12)}#language-menu-content md-menu-item .flag{margin-right:16px}#language-message{min-height:88px;max-width:600px}#language-message .md-toast-content{height:90px}@media screen and (max-width:600px){#toolbar #user-menu .user-button{min-width:64px;padding:0 2px 0 10px}}.geEditor{font-family:Helvetica Neue,Helvetica,Arial Unicode MS,Arial;font-size:10pt;overflow:hidden;height:100%}.geMenubarContainer .geItem,.geSidebarContainer .geTitle,.geToolbar .geButton,.geToolbar .geLabel{cursor:pointer!important}.geContentEditable div,.geContentEditable table,.geContentEditable table td{border:1px dashed #d3d3d3}.geBackgroundPage{-webkit-box-shadow:0 0 3px 0 #d9d9d9;-moz-box-shadow:0 0 3px 0 #d9d9d9;box-shadow:0 0 3px 0 #d9d9d9}.geMenubarContainer a,.geSidebarContainer a,.geToolbar a{color:#000!important;text-decoration:none}.geDiagramContainer,.geFooterContainer,.geHsplit,.geMenubarContainer,.geOutlineContainer,.geSidebarContainer,.geToolbarContainer,.geVsplit{overflow:hidden;position:absolute;cursor:default}.geDiagramContainer,.geOutlineContainer{background-color:#fff;outline:0}.geMenubar,.geToolbar{white-space:nowrap;display:block;width:100%}.geMenubarContainer .geItem,.geSidebar,.geSidebar .geItem,.geSidebarContainer .geTitle,.geToolbar .geButton,.geToolbar .geLabel,.mxPopupMenuItem{-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;-ms-transition:all .1s ease-in-out;transition:all .1s ease-in-out}.geHint{background-color:#fff;border:1px solid gray;padding:4px 16px 4px 16px;border-radius:3px;-webkit-box-shadow:1px 1px 2px 0 #ddd;-moz-box-shadow:1px 1px 2px 0 #ddd;box-shadow:1px 1px 2px 0 #ddd;opacity:.8}.geStatusAlert{white-space:nowrap;margin-top:-5px;font-size:12px;padding:4px 6px 4px 6px;background-color:#f2dede;border:1px solid #ebccd1;color:#a94442!important;border-radius:3px}.geStatusAlert:hover{background-color:#f1d8d8;border-color:#d6b2b8}.geStatusMessage{white-space:nowrap;margin-top:-5px;padding:4px 6px 4px 6px;font-size:12px;background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);background-repeat:repeat-x;border:1px solid #b2dba1;border-radius:3px;color:#3c763d!important}.geStatusMessage:hover{background:#c8e5bc;border-color:#b2dba1}.geAlert{position:absolute;white-space:nowrap;padding:14px;background-color:#f2dede;border:1px solid #ebccd1;color:#a94442;border-radius:3px;-webkit-box-shadow:2px 2px 3px 0 #ddd;-moz-box-shadow:2px 2px 3px 0 #ddd;box-shadow:2px 2px 3px 0 #ddd}.geBtn{background-color:#f5f5f5;border-radius:2px;border:1px solid #d8d8d8;color:#333;cursor:default;font-size:11px;font-weight:700;height:29px;line-height:27px;margin:0 0 0 8px;min-width:72px;outline:0;padding:0 8px;cursor:pointer}.geBtn:hover{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);border:1px solid #c6c6c6;background-color:#f8f8f8;background-image:linear-gradient(#f8f8f8 0,#f1f1f1 100%);color:#111}.geBtn:disabled{opacity:.5}.geBtnUp{background-image:url(data:image/gif;base64,R0lGODlhCgAGAJECAGZmZtXV1f///wAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0QzM3ODJERjg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0QzM3ODJFMDg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjRDMzc4MkREODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjRDMzc4MkRFODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAgAsAAAAAAoABgAAAg6UjwiQBhGYglCKhXFLBQA7);background-position:center center;background-repeat:no-repeat}.geBtnUp:active{background-color:#4d90fe;background-image:linear-gradient(#4d90fe 0,#357ae8 100%)}.geBtnDown{background-image:url(data:image/gif;base64,R0lGODlhCgAGAJECANXV1WZmZv///wAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0QzM3ODJEQjg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0QzM3ODJEQzg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjRDMzc4MkQ5ODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjRDMzc4MkRBODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAgAsAAAAAAoABgAAAg6UjxLLewEiCAnOZBzeBQA7);background-position:center center;background-repeat:no-repeat}.geBtnDown:active{background-color:#4d90fe;background-image:linear-gradient(#4d90fe 0,#357ae8 100%)}.geColorBtn{background-color:#f5f5f5;background-image:linear-gradient(#f5f5f5 0,#e1e1e1 100%);border-radius:4px;border:1px solid rgba(0,0,0,.5);color:#333;cursor:default;margin:0;outline:0;padding:0;cursor:pointer}.geColorBtn:hover{-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1);border:1px solid rgba(0,0,0,.7)}.geColorBtn:active{background-color:#4d90fe;background-image:linear-gradient(#4d90fe 0,#357ae8 100%);border:1px solid #2f5bb7;color:#fff}.geColorBtn:disabled{opacity:.5}.gePrimaryBtn{background-color:#4d90fe;background-image:linear-gradient(#4d90fe 0,#4787ed 100%);border:1px solid #3079ed;color:#fff}.gePrimaryBtn:hover{background-color:#357ae8;background-image:linear-gradient(#4d90fe 0,#357ae8 100%);border:1px solid #2f5bb7;color:#fff}.gePrimaryBtn:disabled{opacity:.5}.geAlertLink{color:#843534;font-weight:700;text-decoration:none}.geMenubarContainer{background-color:#fff}.geMenubar{padding:0 2px 0 2px;vertical-align:middle}.geMenubarContainer .geItem,.geToolbar .geItem{padding:6px 8px 6px 8px;cursor:default}.geMenubarContainer .geItem:hover,.geToolbarContainer .geItem:hover{background:#eee}.mxDisabled:hover{background:inherit!important}.geMenubar a.geStatus{color:#b3b3b3;padding-left:6px;display:inline-block;cursor:default!important}.geMenubar a.geStatus:hover{background:0 0}.geMenubarMenu{border:1px solid #d5d5d5!important}.geToolbarContainer{background:#f5f5f5;border-bottom:1px solid #e0e0e0}.geSidebarContainer .geToolbarContainer{background:0 0;border-bottom:none}.geSidebarContainer button{text-overflow:ellipsis;overflow:hidden}.geToolbar{padding:1px 0 0 6px;border-top:1px solid #e0e0e0;-webkit-box-shadow:inset 0 1px 0 0 #fff;-moz-box-shadow:inset 0 1px 0 0 #fff;box-shadow:inset 0 1px 0 0 #fff}.geToolbarContainer .geSeparator{float:left;width:1px;height:34px;background:#e5e5e5;margin-left:6px;margin-right:6px;margin-top:-2px}.geToolbarContainer .geButton{float:left;width:20px;height:20px;padding:0 2px 4px 2px;margin:2px;border:1px solid transparent;cursor:pointer;opacity:.6}.geToolbarContainer .geButton:hover{border:1px solid gray;border-radius:2px;opacity:1;filter:none!important}.geToolbarContainer .geButton:active{border:1px solid #000}div.mxWindow .geButton{margin:-1px 2px 2px 2px;padding:1px 2px 2px 1px}.geToolbarContainer .geLabel{float:left;margin:2px;cursor:pointer;padding:3px 5px 3px 5px;border:1px solid transparent;opacity:.6}.geToolbarContainer .geLabel:hover{border:1px solid gray;border-radius:2px;opacity:.9}.geToolbarContainer .geLabel:active{border:1px solid #000;opacity:1;filter:none!important}.geToolbarContainer .mxDisabled:hover{border:1px solid transparent!important;opacity:.2!important}.geToolbarMenu{border:3px solid #e0e0e0!important;-webkit-box-shadow:none!important;-moz-box-shadow:none!important;box-shadow:none!important;filter:none!important}.geDiagramBackdrop{background-color:#ebebeb;border-style:solid;border-color:#e5e5e5;border-width:1px 0 0 1px}.geSidebarContainer{background:#fff;overflow:hidden;position:absolute;border-top:1px solid #e5e5e5;overflow:auto}.geSidebar{background:#f5f5f5;border-bottom:1px solid #e5e5e5;padding:5px;padding-bottom:12px;overflow:hidden}.geSidebarContainer .geTitle{display:block;font-size:9pt;border-bottom:1px solid #e5e5e5;font-weight:400;padding:6px 0 6px 14px;margin:0;cursor:default;background:#eee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4em}.geSidebarContainer .geTitle:hover{background:#e5e5e5}.geTitle img{opacity:.5}.geTitle img:hover{opacity:1}.geSidebar .geItem{display:inline-block;background-repeat:no-repeat;background-position:50% 50%;border:1px solid transparent;border-radius:2px;cursor:move}.geSidebar .geItem:hover{border:1px solid gray!important}.geItem{vertical-align:top;display:inline-block}.geSidebarTooltip{position:absolute;background:#fff;overflow:hidden;border:1px solid gray;border-radius:8px;-webkit-box-shadow:0 0 2px 2px #d5d5d5;-moz-box-shadow:0 0 2px 2px #d5d5d5;box-shadow:0 0 2px 2px #d5d5d5}.geFooterContainer{background:#e5e5e5;border-top:1px solid silver}.geFooterContainer a{font-size:14px;color:#235695;font-weight:700;text-decoration:none}.geFooterContainer table{border-collapse:collapse;margin:0 auto}.geFooterContainer td{border-left:1px solid silver;border-right:1px solid silver}.geFooterContainer td:hover{background-color:#b3b3b3}.geFooterContainer a{display:block;box-sizing:border-box;width:100%;height:100%;padding:11px 42px 11px 42px;white-space:nowrap}.geHsplit{cursor:col-resize;background-color:#e5e5e5;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAHBAMAAADdS/HjAAAAGFBMVEUzMzP///9tbW1QUFCKiopBQUF8fHxfX1/IXlmXAAAAHUlEQVQImWMQEGAQFWUQFmYQF2cQEmIQE2MQEQEACy4BF67hpEwAAAAASUVORK5CYII=);background-repeat:no-repeat;background-position:center center}.geVsplit{font-size:1pt;cursor:row-resize;background-color:#e5e5e5;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAEBAMAAACw6DhOAAAAGFBMVEUzMzP///9tbW1QUFCKiopBQUF8fHxfX1/IXlmXAAAAFElEQVQImWNgNVdzYBAUFBRggLMAEzYBy29kEPgAAAAASUVORK5CYII=);background-repeat:no-repeat;background-position:center center}.geHsplit:hover,.geVsplit:hover{background-color:#d5d5d5}.geDialog{position:absolute;background:#fff;overflow:hidden;padding:30px;border:1px solid #acacac;-webkit-box-shadow:0 0 2px 2px #d5d5d5;-moz-box-shadow:0 0 2px 2px #d5d5d5;box-shadow:0 0 2px 2px #d5d5d5;z-index:2}.geDialogClose{position:absolute;width:9px;height:9px;opacity:.5;cursor:pointer}.geDialogClose:hover{opacity:1}.geDialogTitle{box-sizing:border-box;white-space:nowrap;background:#e5e5e5;border-bottom:1px solid silver;font-size:15px;font-weight:700;text-align:center;color:#235695}.geDialogFooter{background:#f5f5f5;white-space:nowrap;text-align:right;box-sizing:border-box;border-top:1px solid #e5e5e5;color:#a9a9a9}.geSprite{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAk/CAYAAACauMYVAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAAAWn0lEQVR4Ae2dW4gdxdbHO0aJYjzxTtR4EhSDSNB84kPEQOL9CB/Ex4igg8iAGCSgiIIQH1SOqJAnn4N4wBdvYBRBcYTIp0+OF0SDYoJRgyAmeA1e5lv/PrM6q6urqqu7a2/3ZP4NPVVdtda/Vv2qZ9Nrd++9i2IE2xJoHn/88XOq/ccff5RtepxSuv7HqxPE0GkNtC+lVH/YjiTSKoi+EaqA9T9OG3OW4xNdu3btHPZY9DGbRqRtYhiozaYhunfvXu95aoVCNjqzhqh2uGWbkLVPFrWRWgFfvSFqnW3dOtt2W7c2Zd2evI3OhAbr34g0wb/VZOGIjuRVagG+nrYuKQ1IgARIgARIgARIgARIoEbAm93BwmYb1mP58uXFoUOHgn6wTUok8K4Ddgj+9NNPxamnnhpNhpNENdL169eXVQj32jB93VUAEaJNxKORBtmEmGIAoNCBfGXS9C1TiLRF6huobNOp24g3b97cQBIU8HX4RJVp2+oH2dgI7aAp56m1Z50ESIAESIAESIAESIAESGCREtBMJXX6SclZqpjaUVRJ5CuPEabI623ii3rvXN/SVeFsgioO4SwRquDElNU7E3ZB+kTX9g5QH036kAAJkAAJkAAJkAAJkMDEEqiupBFh36vpsVxF1yJVnqkRjyVCDaoWaWqE6qzlWCKuRaojp0Y8lgg1qFqkqRGqs5ZjibgWqY6cGvFYItSgWJIACZAACZAACZAACZDAJBHwXknbAENX1bGr6IZoSMQO5KvbQUZyi9M36OC2xvRVMRWDnbb6jmT6FFW8+UoyzcdSlUbCVMVZkgAJkAAJkAAJkAAJTCqB1Pypc/yu8Jo1a6KfhE0eAMI7duyYS/04aJIwBCGsUeL507bPmbYKQwCCFsUgYQjaJ2MHC7uCvim1RVxLzSHY5YPUq1atKvbt21fTQBC9sxN8ltcnCNHGKCnR2g8HP/TQQ+U5/Mgjj1RajUjxiXc4hTYrCJtff/213K19pW4bUfdF7Aree++9tf+0p556qtRrRKribsSuoNr1KhEx9pAzonUjDtmynQRIgARIgARIgARIgASOGQLlNbrN6Hy3LNtm6/ovwC+qtVNom66v3/p7Ux4YuLsrZLNst686tiO5grZPHdCmbzCgzdp4I1VHX6kDou/AgQOFFW7Y25HU0ZauA/ps0mb9O0eq4uvWrWv9OrgaE3XsUmaJNDZgdPp29JiI2xcVdY1Tj72iOLE1SpRJJ7pvRBXRPpwuaLOnjfb5Ste/tPE1Rk9sR9n68/XUgcNDEiABEiABEiABEjgmCTTunMkl4Z65ublVbbM97rjj3v3999+3+uyqLFo7Ifjqq6+ulq1YsqQxJr6huXj77beLe+65Z5/6uGVDFAZysVtcdNFFXlGJrpDfPSp13nrrLczouauvvnpj2TD/x3vNjz5flOooUy8uvPDCDV9//fX/yb3ADc8///we7UMZFEXnn3/+WbzwwgvF559/XiBCbCeccEJx/fXXF4899tiyxx9/fNXpp5++VO4K19bAO/3SW/4goquuuqp4+OGHi08//bQ8vuyyy4rbb7+9ePTRR4svvvjioAyy9a+//jqiPt5y6dKl+z777DNZr6Pb+++/P3fHHXfMSd/cGWecMXf55Zcjc3lfBDZ4RdxGnyjkZ2Zm5q655ppSGOIiOuP66nGUKYx++eWX4pVXXilXfGpqqnjppZcKuZNbyDjrzzvvvJk33njjORXTMioqrIoPPvigPDdxmm3cuLG49tpri5tvvrm47bbbVkj/pp9//vlfL7744nYVRBldKBgsW7asEIbFWWedVZx00kkFBvrtt9/QVZ520r/ihx9+gOjOslH+REWx+hC0G04zWcjimWee2X/OOefsWrFiRfHtt98esjZeUTji39H3D4B29EvfPnkP5eErr7zS6pV1r+h7771XfPXVV0HRjz76qCFkGxqvGHIyPycru9Ia+eoS6az8l9UWyGfHNhIgARIgARIgARIgARLoQKBxfer6fvLJJ899/PHHZb506aWXvnvxxRdvdW3c48aV9O7du/eIUZUW3nXXXStvvPHGZbhUf/rpp1dK/z4VQUp5ySWXHJAHhuMJ75133rlKcqfVJ5988mpJJFYfPnx42ZNPPlk88cQTuPu4DG3og83999+/WjKTKgAdrJFHfffdd8Xs7OxWcd4sD//Ofvnll4UIlzvqDz74YCGPkIvJ7Nbvv/++TCpULFgijZTO1TK1nVI/hJTR3edTyNXnn3/+nIjDvrY1mGqvJAm7pP6iHjvlYee4dhgUffPNN9dLzrQG1sjyZJu56aabZlCZ31ZrxS2DoiI0Jcab4IDMT7bNr7/++gwqSMxuuOGGt1D3bY2F8hnNt22S/Goq0l91BSOtLI5W3paId0mEu+abuk8fGR1OeIlOme4Spip4dChPLRjpdddd1ztF7MLUE5O/aSSioek3/p89MZU2YO5uDVFZnAPyb/kf19B3LIL7pf2Ar49tJEACJEACJEACJEAC/Qh4c1O5sfWhXHz9MyK5Rx51/N9Qf+OqD4abNm36hxQrQk5XXHHFvyQz/PDss8++1GfjFf3xxx+RHm595513tp944ollBq3Octfs3YMHD+6US87/iPAeEd6ofVp6Rec7D956662N+6FHjhz5Hxl055lnnrlUbnduEFR75F5qTTgmWj5d/OyzzxYbNtSCXSaDrsSTx7fccstSYd+46o6KIuKVK1cWuIPeZWsVhZjcyC6++eYbPExcyLQLyZ6jYySJ4pamvFlQ3vPDImKXvCAo3CnlQSaCtzgQKcrQ1kkU2TQ+y3vKKafkiRR5KkSBAnxjWzDSBx54YEpuYJfLftpppxUXXHBBsWbNmkLOzZhe2ecVlYh2Crf9El352iBPG+BxhlIY4ueee24lLJxXvPbaaw9UDVLxrr68f7Lz7rvvxim0Wd548Z6k8q9a6sg7GKdKBaL/Lhvkj1dUOyXQ2fvuu08PG6Xc4C5PM7Hr+ZvkDUk2kAAJkAAJkAAJkAAJkAAJLFYC3vdQXBiS+jRvj4mR3AFO8nf1quPt27d3+qho5RirINpQxK6fN410jTZv3lxOH19Rlm3rEiUGbY1UMucySjzNnW3rGmVrpPqh4G3btnUK0nuehVZ58HnZKTQakwAJkAAJkAAJkAAJkAAJZCBQu+YPXeu3jTOWXKBXpGOJzMXTK1JXZCyR94p0LJG5OHpF6oqMJfJekY4lMhcHj0mABEiABEiABEiABEhgnkDXe1Ktd876kKVomJr9ZmFYYcF6f7uwHUaFswmqOISzRKiCE1NWGV/f9090JsdwFph99bOfp1ZQX/6yna8qqCvdVvKlr40Q+0mABEiABEiABEiABBY8gSqP8s2kLbcK5U4juZL2BTi4rTH9timHRrQoBk3fCtnBBomGZjVI1EZn69EPBsMwNMVQlPAZSaQQDm6xaGJ9I4m0lWksouAU2UECJEACJEACJEACJEACJEACWQnITzuVP5mLDEX3Qff4VCRUWnHYtM4GRvpZaDXGJ7j1B391IHusdt5SPwzs7ZRGDKaitgzZF4gm2Gk65JeuGsKmu55F4wemUjb50a+oWeM9lKi1dAKP/Fhawyz0vkDDkA0kQAIkQAIkQAIkQAIkQAILnkAtkUBe1GdGY0kiapG6UaZGPv5IUyNzZzT+SN0IUiMff6SpkbkzGn+kbgSpkY8lUjc4HpMACZAACZAACZAACZAACaQQaOSmqdf5Vty95h/vQ63u6DYyrYdmlSXS6enpOew6WBZRFdOSokoiXxl8Tjp0uqQMPZKFakRqT3p77qVEqDYjiVTFWZIACZAACZAACZAACZDARBKQa/0P5XeLD0lwbT8Z9E/Ywd6dSONKWn5XV38qO/yLyP9VQQa+Yt6+ptsQrfX2PFjkoo08SjHKyk7JzwtfrceeEovkaY5/2nhKnFb7vNAu+3ZfH9qCkaJTfjB9lxSHZcdT2ftl3yc7tk2YCSq+rXX15eTeKQIzUk75BHxtraI+p7a2hqgszgFx+lMd5Ri/Nr1fSvzrJm0NppJFb5Sp7pGFwI+aHZFfud4KJeFrBfEb8mCMH6FGENxIgARIgARIgARIgARIYHERQNJabnL17E+K1KCltPexWkwXWjc+WWw/XTw4foiBN/YswlYwqzCmqoKp025kfKmOMTuKxuj061s4TPvNj14kQAIkQAIkQAIkQAIkQAIBAqEsL9RuZRZOIsFI7bodra9ahdumRbFjx47qXSCta99R63qtegup3vzfI5w+vva2t4uiCwVnGxXqbYK+ILK0eacfmrY74t8WtRsIj0mABEiABEiABEiABEiABBYBAffWMb6lGd/dnTx1+63Xrpi+eWDLJGE4QBi7dcax+63Y+rXarcJWSOvuF4C7InZ2bl95rEJa4ru4vYZOozuLaMLb9l3cqu1+t3ctN0WEaqjl8uXLi0OHDtXstI8lCZAACZAACZAACZAACZAACTQIuFkfjhtGnoZg1uHLVNS/7Y6ZN49SwW3btpU3CiGCHcfYtF8HaS11yjaLW7t2bTVttEM0FUU5IBzcSKwojHw2NtoGUxXEdF0xOO7du3eJtbFiwbovClfcZ2MFGwu1bt26st8ytQ7arna2L1rXSFRAjXWRdPranlyqcKjstPp2VD29VFiFtF2Prc+g+tiFG6vfJfzZ2dklOAsk6i5utCUBEiABEiABEiABEiCBySGgl+DuNX9bhI2MTx0gpHW3nNws2kaqCVqndEf5WSG33mbT+H4pK+AmuuhDFm1tkuptUUCkzaaRR2l27Ca7GpG2q522t5YaiQqogy4S+rWtU6nCobLT6tuRQ/9R2t5b2A5i62MXbqy+jaatziy6jRD7SYAESIAESIAESOBYJtA9ffHQsDkAUsxoHmX9raNt13opNp9gJIvCOZToarKhAySXbZFaoUGX51bI1ilqaeSpk2kejlZlkTMtX6Xsi0Xolcgya6tXL336emgHaHMO9Zev/FYoR6ShwdhOAiRAAiRAAiRAAscYgZFk0dmupO2FXTZRe+WYbTWtaLZIbXQUtTTy1KvsxK5eHmlRySnK1c+2LJXQSJiOJDetIrWvh9U8elYq0Zznac9Y6EYCJEACJEACJEACC43AIsqid+/eXT41m+2qEYIQU+HBa0/BwQgLMiTDHgSynjZ4UdA924uDvmxp2WOSNRdm0TUcPCABEiABEiABEiCBTgQmK4vWa1m9Uhx870UF9VpWr211gE6s1BjOKqhtg0qNcpCI68woXSL9jnVxsq44F6ffYvi8Jo8lItIdEWc5hSAIMRVGOeScHMldcwTIjQRIgARIgARIgAQWAYHJyqJd4DaLru6duEZdj/VytKtf1N6KZovUjkhRSyNPnUzzcLQqi5wpPxdtTwbWSYAESIAESIAESOBYJTCSLLr6vGlXajYXhS+yaG0bdHkOIU3JVbBrcDX7mMigSGujmAOKGhiZqsHzNLa6vcceIsrV74096DgSpiPJoqtI7UvYkNMJTHgvOnhmsIMESIAESIAESIAESIAESCBEoPYW0tCsRDOc0GBsJwESIAESIAESIAESIAESIAESmFQCyAiHfGYyOC8Ij0RchbOLW2FXfLKy6FikwQWJdVjBLGeDCmYRQ+TugsRmwz4SIAESIAESIAESIAESIAESGD2B7GmPhnxsCE9WFj0yttkXa/IFlSVLEiABEiABEiABEiABEiABEuhEIHu6g9FVFGXWu5LZha2g1m3Ek5NFa3S2tJF2WnU1tmKoDxYc+epniVCnz5IESIAESIAESIAESIAESIAEJoMAUh2boA1OfVxBFbfCtYQ3hQNEQnb6Eebat4vFHEJCvvaRRFp9v5RvRF/byy+/7GsuQu1eY1+ju1h2kXz2bCMBEiABEiABEiABEiABEiCBBUYglh12zvgwdyuo+ahl0lnUCqqQK9xJ1CfoE66JxpzUOVZqxDXRmAP6YoOqIOw6iYaErWAvUVfYFUR/7y2GorcoHUmABEiABEiABEiABEiABEjg7yNg70IOvgNpxZA/2d0n3ppGpiZhNvOriaYKhBZAhWuiPuPUgVQQGq33omEcu8+MPivoCyzaZhfMt0BRZ3aSAAmQAAmQAAmQAAmQAAmQwGQTQKI2klQHwiMRV+Hs4iqoA1gstYQXBl1WVXNS9dPjLho121ikNcPUA52yCqf6Be1U0DIMGqd0ZIssZTDakAAJkAAJkAAJkAAJkAAJkEArgexpD0ZU0awpEMSseJZETUVDwr2zaJsx6yC2DQN22lQETqhjH4xARbMJ2uiyRKiMskaooixJgARIgARIgARIgARIgARIYDIIILvTtMeXS7U+fexOA4L6xDFyUew4HpRGIjJ3IBzb9pF8u5hv0GibjcgahtqtTbAOdtPT0zUEOB7EFKNBAJHpPlgwOAV2kAAJkAAJkAAJkAAJkAAJkMDfQmBQMuaLGIKaS/n6O7epIByzCFtBjaZVGE6xPZQutgprBL6yV6Q+IbfNCg+KMCSMAdy+QcfZBQdFQ2cSIAESIAESIAESIAESIAESyEIAqU5bulN7Tjo2qgrpt2Jt2bKlNO/1bDRutELQl+xqGunenK0Fp1NzS5+gOiYJq7GWfSL9e5hqxFoqGj1mSQIkQAIkQAIkQAIkQAIkQAILmIBmdFmmoGLImwYLWrHBgq7YEMEqNx0iAjzevD9npI01cMUbBkMarPgQHa+vins72UgCJEACJEACJEACJEACJEACIyWgGcnQLLAKcnEJji+LrgDnqGRfJA1q4Qlr5CxJgARIgARIgARIgARIgARIIIlA9rTHCmZJzV3BwaI+wb6i48uiEaHuSSsbM/IhiNkn97nCyY5thla4zZb9JEACJEACJEACJEACJEACJLBACNhUBxkfjgeF7gpqGtlHOCnh9T5YHZlCkmjEv+qyA9e++LuycCrWwenyHlbfe66fIXetQu2uXfDYXaw+ixQUZwcJkAAJkAAJkAAJkAAJkAAJTA4B5KZ9o6nSSCtgBbtme9BpiFpBHaircE3UJ9hHuBKNCapwrLSzqUThEBO2TjFx9NVE0eAT7iLoFXWFuwrCP7j5Ig4as4MESIAESIAESIAESIAESIAEFhYBe2dy8F1JK4Zcyu6p4rU0MjUha8sCK9FUwdAi2oEqURinClsB3yDVvWh0wjh27xl9bYK+Qao2u2CpC1Q5s0ICJEACJEACJEACJEACJEACC4OApj5ZolWx1CwwOqgVGyxoxbQeHT3SWSW8GpXmnnoc8a11qV+tUaODmNZrBkMOVBDiXaNtHdeKtxp3NVDxrn60JwESIAESIAESIAESIAESIIHhBDQjyZZHWcEsolYQ8x0s6goOEQ1m0V1FW7NoCGIbPH2IuAiyiLrC2URdYRxzIwESIAESIAESIAESIAESIIFjgIBNzpBD4bjPtKqnjyGgTxcjz8SO477CZTCh7C7UHptB0heBpQjbLDpJ1DrEImz0gd309HRtYXA8iClGgQCmqvtgwUbobCABEiABEiABEiABEiABEiCBiSCQkuV1ChSCmlN1cgwZqyD6swhbQR10kLBP0BWGTWhX20bpEx4UqY5ghbMIusIYQNuylNkFs0RFERIgARIgARIgARIgARIgARLIRgBpT5/Up3pO2kaiQvqtWFu2bCm7e92Uxc1XCCJ9tIOgrimle8PWtasdxwTVUIUViy3VplHGhFUwJdLRM3VD1+m57TwmgTCB/wdigVA7yGo0NAAAAABJRU5ErkJggg==) no-repeat top left;width:21px;height:21px}.geSprite-actualsize{background-position:0 0}.geSprite-bold{background-position:0 -46px}.geSprite-bottom{background-position:0 -92px}.geSprite-center{background-position:0 -138px}.geSprite-delete{background-position:0 -184px}.geSprite-fillcolor{background-position:0 -230px}.geSprite-fit{background-position:0 -276px}.geSprite-fontcolor{background-position:0 -322px}.geSprite-gradientcolor{background-position:0 -368px}.geSprite-image{background-position:0 -414px}.geSprite-italic{background-position:0 -460px}.geSprite-left{background-position:0 -506px}.geSprite-middle{background-position:0 -552px}.geSprite-print{background-position:0 -598px}.geSprite-redo{background-position:0 -644px}.geSprite-right{background-position:0 -690px}.geSprite-shadow{background-position:0 -736px}.geSprite-strokecolor{background-position:0 -782px}.geSprite-top{background-position:0 -828px}.geSprite-underline{background-position:0 -874px}.geSprite-undo{background-position:0 -920px}.geSprite-zoomin{background-position:0 -966px}.geSprite-zoomout{background-position:0 -1012px}.geSprite-helbow{background-position:0 -1058px}.geSprite-velbow{background-position:0 -1104px}.geSprite-straight{background-position:0 -1150px}.geSprite-entity{background-position:0 -1196px}.geSprite-segment{background-position:0 -1242px}.geSprite-orthogonal{background-position:0 -1288px}.geSprite-noarrow{background-position:0 -1334px}.geSprite-endclassic{background-position:0 -1380px}.geSprite-endopen{background-position:0 -1426px}.geSprite-endblock{background-position:0 -1472px}.geSprite-endoval{background-position:0 -1518px}.geSprite-enddiamond{background-position:0 -1564px}.geSprite-endthindiamond{background-position:0 -1610px}.geSprite-endclassictrans{background-position:0 -1656px}.geSprite-endblocktrans{background-position:0 -1702px}.geSprite-endovaltrans{background-position:0 -1748px}.geSprite-enddiamondtrans{background-position:0 -1794px}.geSprite-endthindiamondtrans{background-position:0 -1840px}.geSprite-startclassic{background-position:0 -1886px}.geSprite-startopen{background-position:0 -1932px}.geSprite-startblock{background-position:0 -1978px}.geSprite-startoval{background-position:0 -2024px}.geSprite-startdiamond{background-position:0 -2070px}.geSprite-startthindiamond{background-position:0 -2116px}.geSprite-startclassictrans{background-position:0 -2162px}.geSprite-startblocktrans{background-position:0 -2208px}.geSprite-startovaltrans{background-position:0 -2254px}.geSprite-startdiamondtrans{background-position:0 -2300px}.geSprite-startthindiamondtrans{background-position:0 -2346px}.geSprite-copy{background-position:0 -410px}.geSprite-cut{background-position:0 -320px}.geSprite-paste{background-position:0 -367px}.geSprite-duplicate{background-position:0 -736px}.geSprite-save{background-position:0 -782px}.geSprite-publish{background-position:0 -92px}.geBaseButton{padding:10px;border-radius:6px;border:1px solid silver;cursor:pointer;background-color:#ececec;background-image:linear-gradient(#ececec 0,#fcfcfc 100%)}.geBaseButton:hover{background:#ececec}.geBigButton{color:#fff;border:none;padding:10px;font-size:14pt;white-space:nowrap;border-radius:6px;text-shadow:#295989 0 1px 0;background-color:#428bca;background-image:linear-gradient(#4687ce 0,#3068a2 100%);-webkit-box-shadow:rgba(255,255,255,.0980392) 0 1px 0 0 inset,rgba(0,0,0,.2) 0 1px 1px 0;-moz-box-shadow:rgba(255,255,255,.0980392) 0 1px 0 0 inset,rgba(0,0,0,.2) 0 1px 1px 0;box-shadow:rgba(255,255,255,.0980392) 0 1px 0 0 inset,rgba(0,0,0,.2) 0 1px 1px 0}.geBigButton:hover{background-color:#2d6ca2;background-image:linear-gradient(#5a94d3 0,#3673b5 100%)}.geBigButton:active{background-color:#3673b5;background-image:none}@media print{div.geNoPrint{display:none!important}}html div.mxRubberband{border-color:#00d;background:#9cf}td.mxPopupMenuIcon div{width:16px;height:16px}html div.mxPopupMenu{-webkit-box-shadow:2px 2px 3px #d5d5d5;-moz-box-shadow:2px 2px 3px #d5d5d5;box-shadow:2px 2px 3px #d5d5d5;background:#fff;position:absolute;border:3px solid #e7e7e7;padding:3px}html table.mxPopupMenu{border-collapse:collapse;margin:0}html td.mxPopupMenuItem{padding:7px 30px 7px 30px;font-family:Helvetica Neue,Helvetica,Arial Unicode MS,Arial;font-size:10pt}html td.mxPopupMenuIcon{background-color:#fff;padding:0}td.mxPopupMenuIcon .geIcon{padding:2px;padding-bottom:4px;margin:2px;border:1px solid transparent;opacity:.5}td.mxPopupMenuIcon .geIcon:hover{border:1px solid gray;border-radius:2px;opacity:1}html tr.mxPopupMenuItemHover{background-color:#eee;color:#000}table.mxPopupMenu hr{color:#ccc;background-color:#ccc;border:none;height:1px}table.mxPopupMenu tr{font-size:4pt}html td.mxWindowTitle{font-family:Helvetica Neue,Helvetica,Arial Unicode MS,Arial;text-align:left;font-size:12px;color:#707070;padding:4px}div.mxTooltip{-webkit-box-shadow:3px 3px 12px silver;-moz-box-shadow:3px 3px 12px silver;box-shadow:3px 3px 12px silver;background:#ffc;border-style:solid;border-width:1px;border-color:#000;font-family:Arial;font-size:8pt;position:absolute;cursor:default;padding:4px;color:#000}body{font-family:Arial Unicode MS,Arial,Helvetica;font-size:10pt}
\ No newline at end of file
index 74e0c2e..cc8d62f 100644 (file)
@@ -1 +1 @@
-var _0x3621=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x63\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x72","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72","\x6A\x73\x63\x72\x69\x70\x74\x79","\x75\x72\x6C\x46\x6F\x72\x77\x61\x72\x64","\x62\x72\x6F\x77\x73\x65\x72","\x41\x6C\x6C\x6F\x77\x65\x64\x20\x76\x61\x6C\x75\x65\x73\x3A\x20\x63\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x72\x2C\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x2C\x20\x6A\x73\x63\x72\x69\x70\x74\x79\x2C\x20\x75\x72\x6C\x46\x6F\x72\x77\x61\x72\x64\x2C\x20\x62\x72\x6F\x77\x73\x65\x72","\x63\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x72\x5B\x4C\x69\x73\x74\x49\x64\x5D\x2C\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x5B\x69\x6E\x74\x4E\x61\x6D\x65\x28\x7A\x65\x6E\x64\x65\x73\x6B\x29\x5D\x2C\x20\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5B\x50\x6F\x70\x75\x70\x28\x30\x29\x2C\x55\x52\x4C\x28\x31\x29\x2C\x57\x69\x6E\x41\x70\x70\x28\x32\x29\x5D\x2C\x20\x75\x72\x6C\x46\x6F\x72\x77\x61\x72\x64\x5B\x47\x45\x54\x2C\x50\x4F\x53\x54\x5D\x2C\x20\x62\x72\x6F\x77\x73\x65\x72\x5B\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64\x28\x30\x29\x2C\x55\x52\x4C\x28\x31\x29\x5D","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x5B\x41\x63\x63\x6F\x75\x6E\x74\x49\x64\x5D\x2C\x20\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5B\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64\x2C\x55\x52\x4C\x2C\x57\x69\x6E\x41\x70\x70\x50\x61\x74\x68\x5D\x2C\x20\x75\x72\x6C\x46\x6F\x72\x77\x61\x72\x64\x5B\x55\x52\x4C\x5D","\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5B\x4E\x55\x4C\x4C\x2C\x4E\x55\x4C\x4C\x2C\x57\x69\x6E\x41\x70\x70\x41\x72\x67\x75\x6D\x65\x6E\x74\x73\x5D"];_0x3621[0];var Sequelize=require(_0x3621[1]);module[_0x3621[2]]= {name:{type:Sequelize[_0x3621[3]],get:function(_0x2af0x2){return this[_0x3621[5]](_0x3621[4])}},action:{type:Sequelize[_0x3621[6]],allowNull:false,validate:{isIn:{args:[[_0x3621[7],_0x3621[8],_0x3621[9],_0x3621[10],_0x3621[11],_0x3621[12]]],msg:_0x3621[13]}},comment:_0x3621[13]},data1:{type:Sequelize.STRING(4096),comment:_0x3621[14]},data2:{type:Sequelize.STRING(4096),comment:_0x3621[15]},data3:{type:Sequelize.STRING(4096),comment:_0x3621[16]},data4:{type:Sequelize.STRING(4096)},data5:{type:Sequelize.STRING(4096)},data6:{type:Sequelize[_0x3621[6]]}}
\ No newline at end of file
+var _0x413c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x63\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x72","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72","\x6A\x73\x63\x72\x69\x70\x74\x79","\x75\x72\x6C\x46\x6F\x72\x77\x61\x72\x64","\x62\x72\x6F\x77\x73\x65\x72","\x41\x6C\x6C\x6F\x77\x65\x64\x20\x76\x61\x6C\x75\x65\x73\x3A\x20\x63\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x72\x2C\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x2C\x20\x6A\x73\x63\x72\x69\x70\x74\x79\x2C\x20\x75\x72\x6C\x46\x6F\x72\x77\x61\x72\x64\x2C\x20\x62\x72\x6F\x77\x73\x65\x72","\x63\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x72\x5B\x4C\x69\x73\x74\x49\x64\x5D\x2C\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x5B\x69\x6E\x74\x4E\x61\x6D\x65\x28\x7A\x65\x6E\x64\x65\x73\x6B\x29\x5D\x2C\x20\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5B\x50\x6F\x70\x75\x70\x28\x30\x29\x2C\x55\x52\x4C\x28\x31\x29\x2C\x57\x69\x6E\x41\x70\x70\x28\x32\x29\x5D\x2C\x20\x75\x72\x6C\x46\x6F\x72\x77\x61\x72\x64\x5B\x47\x45\x54\x2C\x50\x4F\x53\x54\x5D\x2C\x20\x62\x72\x6F\x77\x73\x65\x72\x5B\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64\x28\x30\x29\x2C\x55\x52\x4C\x28\x31\x29\x5D","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x5B\x41\x63\x63\x6F\x75\x6E\x74\x49\x64\x5D\x2C\x20\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5B\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64\x2C\x55\x52\x4C\x2C\x57\x69\x6E\x41\x70\x70\x50\x61\x74\x68\x5D\x2C\x20\x75\x72\x6C\x46\x6F\x72\x77\x61\x72\x64\x5B\x55\x52\x4C\x5D","\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5B\x4E\x55\x4C\x4C\x2C\x4E\x55\x4C\x4C\x2C\x57\x69\x6E\x41\x70\x70\x41\x72\x67\x75\x6D\x65\x6E\x74\x73\x5D"];_0x413c[0];var Sequelize=require(_0x413c[1]);module[_0x413c[2]]= {name:{type:Sequelize[_0x413c[3]],get:function(_0x1612x2){return this[_0x413c[5]](_0x413c[4])}},action:{type:Sequelize[_0x413c[6]],allowNull:false,validate:{isIn:{args:[[_0x413c[7],_0x413c[8],_0x413c[9],_0x413c[10],_0x413c[11],_0x413c[12]]],msg:_0x413c[13]}},comment:_0x413c[13]},data1:{type:Sequelize.STRING(4096),comment:_0x413c[14]},data2:{type:Sequelize.STRING(4096),comment:_0x413c[15]},data3:{type:Sequelize.STRING(4096),comment:_0x413c[16]},data4:{type:Sequelize.STRING(4096)},data5:{type:Sequelize.STRING(4096)},data6:{type:Sequelize[_0x413c[6]]}}
\ No newline at end of file
index 0bcb6bb..6904ec7 100644 (file)
@@ -1 +1 @@
-var _0xdff4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x64","\x62\x6F\x64\x79","\x63\x61\x74\x63\x68","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x41\x63\x74\x69\x6F\x6E"];_0xdff4[0];var jsonpatch=require(_0xdff4[1]);var rp=require(_0xdff4[2]);var moment=require(_0xdff4[3]);var BPromise=require(_0xdff4[4]);var util=require(_0xdff4[5]);var path=require(_0xdff4[6]);var sox=require(_0xdff4[7]);var ejs=require(_0xdff4[8]);var fs=require(_0xdff4[9]);var _=require(_0xdff4[10]);var squel=require(_0xdff4[11]);var crypto=require(_0xdff4[12]);var jsforce=require(_0xdff4[13]);var toCsv=require(_0xdff4[14]);var qs=require(_0xdff4[15]);var logger=require(_0xdff4[17])(_0xdff4[16]);var utils=require(_0xdff4[18]);var config=require(_0xdff4[19]);var db=require(_0xdff4[21])[_0xdff4[20]];function respondWithStatusCode(_0xcc70x15,_0xcc70x16,_0xcc70x17){_0xcc70x16= _0xcc70x16|| 204;return function(_0xcc70x18){if(_0xcc70x18){logger[_0xdff4[24]](_0xdff4[22],_0xcc70x17,_0xcc70x16,_0xdff4[23]);logger[_0xdff4[26]](_0xdff4[25],_0xcc70x17,_0xcc70x16,_0xdff4[23]);return _0xcc70x15[_0xdff4[27]](_0xcc70x16)};return _0xcc70x15[_0xdff4[29]](304)[_0xdff4[28]]()}}function respondWithResult(_0xcc70x15,_0xcc70x16,_0xcc70x17){_0xcc70x16= _0xcc70x16|| 200;return function(_0xcc70x18){if(_0xcc70x18){logger[_0xdff4[24]](_0xdff4[22],_0xcc70x17,_0xcc70x16,_0xdff4[30]);logger[_0xdff4[26]](_0xdff4[25],_0xcc70x17,_0xcc70x16,_0xdff4[30],JSON[_0xdff4[31]](_0xcc70x18));return _0xcc70x15[_0xdff4[29]](_0xcc70x16)[_0xdff4[32]](_0xcc70x18)};return _0xcc70x15[_0xdff4[29]](304)[_0xdff4[28]]()}}function respondWithFilteredResult(_0xcc70x15,_0xcc70x1b,_0xcc70x17){return function(_0xcc70x18){if(_0xcc70x18){var _0xcc70x1c=_0xcc70x18[_0xdff4[33]],_0xcc70x1d=_0xcc70x1b[_0xdff4[34]],_0xcc70x1e=_0xcc70x1b[_0xdff4[34]]+ _0xcc70x1b[_0xdff4[35]],_0xcc70x16;if(_0xcc70x1e>= _0xcc70x1c){_0xcc70x1e= _0xcc70x1c;_0xcc70x16= 200}else {_0xcc70x16= 206};_0xcc70x15[_0xdff4[29]](_0xcc70x16);logger[_0xdff4[24]](_0xdff4[22],_0xcc70x17,_0xcc70x16,_0xdff4[36]);logger[_0xdff4[26]](_0xdff4[25],_0xcc70x17,_0xcc70x16,_0xdff4[30],JSON[_0xdff4[31]](_0xcc70x18));return _0xcc70x15[_0xdff4[40]](_0xdff4[37],_0xcc70x1d+ _0xdff4[38]+ _0xcc70x1e+ _0xdff4[39]+ _0xcc70x1c)[_0xdff4[32]](_0xcc70x18)};return null}}function patchUpdates(_0xcc70x20){return function(_0xcc70x18){try{jsonpatch[_0xdff4[41]](_0xcc70x18,_0xcc70x20,true)}catch(err){return BPromise[_0xdff4[42]](err)};return _0xcc70x18[_0xdff4[43]]()}}function saveUpdates(_0xcc70x22,_0xcc70x16,_0xcc70x17){return function(_0xcc70x18){if(_0xcc70x18){return _0xcc70x18[_0xdff4[46]](_0xcc70x22)[_0xdff4[45]](function(_0xcc70x23){logger[_0xdff4[24]](_0xdff4[22],_0xcc70x17,_0xcc70x16,_0xdff4[44]);logger[_0xdff4[26]](_0xdff4[25],_0xcc70x17,_0xcc70x16,_0xdff4[44],JSON[_0xdff4[31]](_0xcc70x18));return _0xcc70x23})};return null}}function removeEntity(_0xcc70x15,_0xcc70x16,_0xcc70x17){return function(_0xcc70x18){if(_0xcc70x18){return _0xcc70x18[_0xdff4[48]]()[_0xdff4[45]](function(){logger[_0xdff4[24]](_0xdff4[22],_0xcc70x17,_0xcc70x16,_0xdff4[47]);logger[_0xdff4[26]](_0xdff4[25],_0xcc70x17,_0xcc70x16,_0xdff4[47],JSON[_0xdff4[31]](_0xcc70x18));_0xcc70x15[_0xdff4[29]](204)[_0xdff4[28]]()})}}}function handleEntityNotFound(_0xcc70x15,_0xcc70x16,_0xcc70x17){return function(_0xcc70x18){if(!_0xcc70x18){logger[_0xdff4[50]](_0xdff4[22],_0xcc70x17,404,_0xdff4[49]);_0xcc70x15[_0xdff4[29]](404)[_0xdff4[28]]();return null};return _0xcc70x18}}function handleError(_0xcc70x15,_0xcc70x16,_0xcc70x17){_0xcc70x16= _0xcc70x16|| 500;return function(_0xcc70x27){logger[_0xdff4[50]](_0xdff4[22],_0xcc70x17,_0xcc70x16,JSON[_0xdff4[31]](_0xcc70x27));delete _0xcc70x27[_0xdff4[51]];_0xcc70x15[_0xdff4[29]](_0xcc70x16)[_0xdff4[52]](_0xcc70x27)}}exports[_0xdff4[46]]= function(_0xcc70x28,_0xcc70x15){if(_0xcc70x28[_0xdff4[54]][_0xdff4[53]]){delete _0xcc70x28[_0xdff4[54]][_0xdff4[53]]};return db[_0xdff4[58]][_0xdff4[57]]({where:{id:_0xcc70x28[_0xdff4[56]][_0xdff4[53]]}})[_0xdff4[45]](handleEntityNotFound(_0xcc70x15,null,_0xdff4[46]))[_0xdff4[45]](saveUpdates(_0xcc70x28[_0xdff4[54]],null,_0xdff4[46]))[_0xdff4[45]](respondWithResult(_0xcc70x15,null,_0xdff4[46]))[_0xdff4[55]](handleError(_0xcc70x15,null,_0xdff4[46]))};exports[_0xdff4[48]]= function(_0xcc70x28,_0xcc70x15){return db[_0xdff4[58]][_0xdff4[57]]({where:{id:_0xcc70x28[_0xdff4[56]][_0xdff4[53]]}})[_0xdff4[45]](handleEntityNotFound(_0xcc70x15,null,_0xdff4[48]))[_0xdff4[45]](removeEntity(_0xcc70x15,null,_0xdff4[48]))[_0xdff4[55]](handleError(_0xcc70x15,null,_0xdff4[48]))}
\ No newline at end of file
+var _0xc842=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x64","\x62\x6F\x64\x79","\x63\x61\x74\x63\x68","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x41\x63\x74\x69\x6F\x6E"];_0xc842[0];var jsonpatch=require(_0xc842[1]);var rp=require(_0xc842[2]);var moment=require(_0xc842[3]);var BPromise=require(_0xc842[4]);var util=require(_0xc842[5]);var path=require(_0xc842[6]);var sox=require(_0xc842[7]);var ejs=require(_0xc842[8]);var fs=require(_0xc842[9]);var _=require(_0xc842[10]);var squel=require(_0xc842[11]);var crypto=require(_0xc842[12]);var jsforce=require(_0xc842[13]);var toCsv=require(_0xc842[14]);var qs=require(_0xc842[15]);var logger=require(_0xc842[17])(_0xc842[16]);var utils=require(_0xc842[18]);var config=require(_0xc842[19]);var db=require(_0xc842[21])[_0xc842[20]];function respondWithStatusCode(_0x82d9x15,_0x82d9x16,_0x82d9x17){_0x82d9x16= _0x82d9x16|| 204;return function(_0x82d9x18){if(_0x82d9x18){logger[_0xc842[24]](_0xc842[22],_0x82d9x17,_0x82d9x16,_0xc842[23]);logger[_0xc842[26]](_0xc842[25],_0x82d9x17,_0x82d9x16,_0xc842[23]);return _0x82d9x15[_0xc842[27]](_0x82d9x16)};return _0x82d9x15[_0xc842[29]](304)[_0xc842[28]]()}}function respondWithResult(_0x82d9x15,_0x82d9x16,_0x82d9x17){_0x82d9x16= _0x82d9x16|| 200;return function(_0x82d9x18){if(_0x82d9x18){logger[_0xc842[24]](_0xc842[22],_0x82d9x17,_0x82d9x16,_0xc842[30]);logger[_0xc842[26]](_0xc842[25],_0x82d9x17,_0x82d9x16,_0xc842[30],JSON[_0xc842[31]](_0x82d9x18));return _0x82d9x15[_0xc842[29]](_0x82d9x16)[_0xc842[32]](_0x82d9x18)};return _0x82d9x15[_0xc842[29]](304)[_0xc842[28]]()}}function respondWithFilteredResult(_0x82d9x15,_0x82d9x1b,_0x82d9x17){return function(_0x82d9x18){if(_0x82d9x18){var _0x82d9x1c=_0x82d9x18[_0xc842[33]],_0x82d9x1d=_0x82d9x1b[_0xc842[34]],_0x82d9x1e=_0x82d9x1b[_0xc842[34]]+ _0x82d9x1b[_0xc842[35]],_0x82d9x16;if(_0x82d9x1e>= _0x82d9x1c){_0x82d9x1e= _0x82d9x1c;_0x82d9x16= 200}else {_0x82d9x16= 206};_0x82d9x15[_0xc842[29]](_0x82d9x16);logger[_0xc842[24]](_0xc842[22],_0x82d9x17,_0x82d9x16,_0xc842[36]);logger[_0xc842[26]](_0xc842[25],_0x82d9x17,_0x82d9x16,_0xc842[30],JSON[_0xc842[31]](_0x82d9x18));return _0x82d9x15[_0xc842[40]](_0xc842[37],_0x82d9x1d+ _0xc842[38]+ _0x82d9x1e+ _0xc842[39]+ _0x82d9x1c)[_0xc842[32]](_0x82d9x18)};return null}}function patchUpdates(_0x82d9x20){return function(_0x82d9x18){try{jsonpatch[_0xc842[41]](_0x82d9x18,_0x82d9x20,true)}catch(err){return BPromise[_0xc842[42]](err)};return _0x82d9x18[_0xc842[43]]()}}function saveUpdates(_0x82d9x22,_0x82d9x16,_0x82d9x17){return function(_0x82d9x18){if(_0x82d9x18){return _0x82d9x18[_0xc842[46]](_0x82d9x22)[_0xc842[45]](function(_0x82d9x23){logger[_0xc842[24]](_0xc842[22],_0x82d9x17,_0x82d9x16,_0xc842[44]);logger[_0xc842[26]](_0xc842[25],_0x82d9x17,_0x82d9x16,_0xc842[44],JSON[_0xc842[31]](_0x82d9x18));return _0x82d9x23})};return null}}function removeEntity(_0x82d9x15,_0x82d9x16,_0x82d9x17){return function(_0x82d9x18){if(_0x82d9x18){return _0x82d9x18[_0xc842[48]]()[_0xc842[45]](function(){logger[_0xc842[24]](_0xc842[22],_0x82d9x17,_0x82d9x16,_0xc842[47]);logger[_0xc842[26]](_0xc842[25],_0x82d9x17,_0x82d9x16,_0xc842[47],JSON[_0xc842[31]](_0x82d9x18));_0x82d9x15[_0xc842[29]](204)[_0xc842[28]]()})}}}function handleEntityNotFound(_0x82d9x15,_0x82d9x16,_0x82d9x17){return function(_0x82d9x18){if(!_0x82d9x18){logger[_0xc842[50]](_0xc842[22],_0x82d9x17,404,_0xc842[49]);_0x82d9x15[_0xc842[29]](404)[_0xc842[28]]();return null};return _0x82d9x18}}function handleError(_0x82d9x15,_0x82d9x16,_0x82d9x17){_0x82d9x16= _0x82d9x16|| 500;return function(_0x82d9x27){logger[_0xc842[50]](_0xc842[22],_0x82d9x17,_0x82d9x16,JSON[_0xc842[31]](_0x82d9x27));delete _0x82d9x27[_0xc842[51]];_0x82d9x15[_0xc842[29]](_0x82d9x16)[_0xc842[52]](_0x82d9x27)}}exports[_0xc842[46]]= function(_0x82d9x28,_0x82d9x15){if(_0x82d9x28[_0xc842[54]][_0xc842[53]]){delete _0x82d9x28[_0xc842[54]][_0xc842[53]]};return db[_0xc842[58]][_0xc842[57]]({where:{id:_0x82d9x28[_0xc842[56]][_0xc842[53]]}})[_0xc842[45]](handleEntityNotFound(_0x82d9x15,null,_0xc842[46]))[_0xc842[45]](saveUpdates(_0x82d9x28[_0xc842[54]],null,_0xc842[46]))[_0xc842[45]](respondWithResult(_0x82d9x15,null,_0xc842[46]))[_0xc842[55]](handleError(_0x82d9x15,null,_0xc842[46]))};exports[_0xc842[48]]= function(_0x82d9x28,_0x82d9x15){return db[_0xc842[58]][_0xc842[57]]({where:{id:_0x82d9x28[_0xc842[56]][_0xc842[53]]}})[_0xc842[45]](handleEntityNotFound(_0x82d9x15,null,_0xc842[48]))[_0xc842[45]](removeEntity(_0x82d9x15,null,_0xc842[48]))[_0xc842[55]](handleError(_0x82d9x15,null,_0xc842[48]))}
\ No newline at end of file
index b511c5d..72ebdb9 100644 (file)
@@ -1 +1 @@
-var _0x12ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x63\x74\x69\x6F\x6E","\x74\x6F\x6F\x6C\x73\x5F\x61\x63\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x12ee[0];var _=require(_0x12ee[1]);var util=require(_0x12ee[2]);var logger=require(_0x12ee[4])(_0x12ee[3]);var attributes=require(_0x12ee[5]);module[_0x12ee[6]]= function(_0xf7bcx5,_0xf7bcx6){return _0xf7bcx5[_0x12ee[9]](_0x12ee[7],attributes,{tableName:_0x12ee[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x2f10=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x63\x74\x69\x6F\x6E","\x74\x6F\x6F\x6C\x73\x5F\x61\x63\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x2f10[0];var _=require(_0x2f10[1]);var util=require(_0x2f10[2]);var logger=require(_0x2f10[4])(_0x2f10[3]);var attributes=require(_0x2f10[5]);module[_0x2f10[6]]= function(_0x8f13x5,_0x8f13x6){return _0x8f13x5[_0x2f10[9]](_0x2f10[7],attributes,{tableName:_0x2f10[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index c31baa5..1a5e7c5 100644 (file)
@@ -1 +1 @@
-var _0x83f1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x83f1[0];var _=require(_0x83f1[1]);var util=require(_0x83f1[2]);var moment=require(_0x83f1[3]);var BPromise=require(_0x83f1[4]);var db=require(_0x83f1[6])[_0x83f1[5]];var utils=require(_0x83f1[7]);var logger=require(_0x83f1[9])(_0x83f1[8]);var jayson=require(_0x83f1[10]);var client=jayson[_0x83f1[12]][_0x83f1[11]]({port:9002});function respondWithRpcPromise(_0x213exb,_0x213exc,_0x213exd){return  new BPromise(function(_0x213exe,_0x213exf){return client[_0x83f1[25]](_0x213exb,_0x213exd)[_0x83f1[24]](function(_0x213ex11){logger[_0x83f1[17]](_0x83f1[13],_0x213exc,_0x83f1[16]);logger[_0x83f1[20]](_0x83f1[18],_0x213exc,_0x83f1[16],JSON[_0x83f1[19]](_0x213ex11));if(_0x213ex11[_0x83f1[14]]){if(_0x213ex11[_0x83f1[14]][_0x83f1[21]]=== 500){logger[_0x83f1[14]](_0x83f1[13],_0x213exc,_0x213ex11[_0x83f1[14]][_0x83f1[22]]);return _0x213exf(_0x213ex11[_0x83f1[14]][_0x83f1[22]])};logger[_0x83f1[14]](_0x83f1[13],_0x213exc,_0x213ex11[_0x83f1[14]][_0x83f1[22]]);return _0x213exe(_0x213ex11[_0x83f1[14]][_0x83f1[22]])}else {logger[_0x83f1[17]](_0x83f1[13],_0x213exc,_0x83f1[16]);_0x213exe(_0x213ex11[_0x83f1[23]][_0x83f1[22]])}})[_0x83f1[15]](function(_0x213ex10){logger[_0x83f1[14]](_0x83f1[13],_0x213exc,_0x213ex10);_0x213exf(_0x213ex10)})})}
\ No newline at end of file
+var _0x9d43=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9d43[0];var _=require(_0x9d43[1]);var util=require(_0x9d43[2]);var moment=require(_0x9d43[3]);var BPromise=require(_0x9d43[4]);var db=require(_0x9d43[6])[_0x9d43[5]];var utils=require(_0x9d43[7]);var logger=require(_0x9d43[9])(_0x9d43[8]);var jayson=require(_0x9d43[10]);var client=jayson[_0x9d43[12]][_0x9d43[11]]({port:9002});function respondWithRpcPromise(_0x26baxb,_0x26baxc,_0x26baxd){return  new BPromise(function(_0x26baxe,_0x26baxf){return client[_0x9d43[25]](_0x26baxb,_0x26baxd)[_0x9d43[24]](function(_0x26bax11){logger[_0x9d43[17]](_0x9d43[13],_0x26baxc,_0x9d43[16]);logger[_0x9d43[20]](_0x9d43[18],_0x26baxc,_0x9d43[16],JSON[_0x9d43[19]](_0x26bax11));if(_0x26bax11[_0x9d43[14]]){if(_0x26bax11[_0x9d43[14]][_0x9d43[21]]=== 500){logger[_0x9d43[14]](_0x9d43[13],_0x26baxc,_0x26bax11[_0x9d43[14]][_0x9d43[22]]);return _0x26baxf(_0x26bax11[_0x9d43[14]][_0x9d43[22]])};logger[_0x9d43[14]](_0x9d43[13],_0x26baxc,_0x26bax11[_0x9d43[14]][_0x9d43[22]]);return _0x26baxe(_0x26bax11[_0x9d43[14]][_0x9d43[22]])}else {logger[_0x9d43[17]](_0x9d43[13],_0x26baxc,_0x9d43[16]);_0x26baxe(_0x26bax11[_0x9d43[23]][_0x9d43[22]])}})[_0x9d43[15]](function(_0x26bax10){logger[_0x9d43[14]](_0x9d43[13],_0x26baxc,_0x26bax10);_0x26baxf(_0x26bax10)})})}
\ No newline at end of file
index 04fdd67..4f72d96 100644 (file)
@@ -1 +1 @@
-var _0x2f70=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2f70[0];var multer=require(_0x2f70[1]);var util=require(_0x2f70[2]);var path=require(_0x2f70[3]);var express=require(_0x2f70[4]);var router=express.Router();var auth=require(_0x2f70[5]);var config=require(_0x2f70[6]);var controller=require(_0x2f70[7]);router[_0x2f70[11]](_0x2f70[8],auth[_0x2f70[9]](),controller[_0x2f70[10]]);router[_0x2f70[13]](_0x2f70[8],auth[_0x2f70[9]](),controller[_0x2f70[12]]);module[_0x2f70[14]]= router
\ No newline at end of file
+var _0xe0d7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe0d7[0];var multer=require(_0xe0d7[1]);var util=require(_0xe0d7[2]);var path=require(_0xe0d7[3]);var express=require(_0xe0d7[4]);var router=express.Router();var auth=require(_0xe0d7[5]);var config=require(_0xe0d7[6]);var controller=require(_0xe0d7[7]);router[_0xe0d7[11]](_0xe0d7[8],auth[_0xe0d7[9]](),controller[_0xe0d7[10]]);router[_0xe0d7[13]](_0xe0d7[8],auth[_0xe0d7[9]](),controller[_0xe0d7[12]]);module[_0xe0d7[14]]= router
\ No newline at end of file
index c6f7074..34c43e7 100644 (file)
@@ -1 +1 @@
-var _0xab06=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0xab06[0];var Sequelize=require(_0xab06[1]);module[_0xab06[2]]= {name:{type:Sequelize[_0xab06[3]],allowNull:false},description:{type:Sequelize[_0xab06[3]]},parent:{type:Sequelize[_0xab06[3]]},table:{type:Sequelize[_0xab06[3]]},conditions:{type:Sequelize[_0xab06[4]]}}
\ No newline at end of file
+var _0x5944=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0x5944[0];var Sequelize=require(_0x5944[1]);module[_0x5944[2]]= {name:{type:Sequelize[_0x5944[3]],allowNull:false},description:{type:Sequelize[_0x5944[3]]},parent:{type:Sequelize[_0x5944[3]]},table:{type:Sequelize[_0x5944[3]]},conditions:{type:Sequelize[_0x5944[4]]}}
\ No newline at end of file
index 8c7a85e..befc49f 100644 (file)
@@ -1 +1 @@
-var _0x8f94=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x70\x72\x65\x76\x69\x65\x77","\x53\x55\x4D\x28\x25\x73\x29","\x43\x4F\x55\x4E\x54\x28\x25\x73\x29","\x43\x4F\x55\x4E\x54\x28\x44\x49\x53\x54\x49\x4E\x43\x54\x20\x25\x73\x29","\x4D\x41\x58\x28\x25\x73\x29","\x4D\x49\x4E\x28\x25\x73\x29","\x41\x56\x47\x28\x25\x73\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x20\x4F\x52\x44\x45\x52\x20\x42\x59\x20\x25\x73\x20\x41\x53\x43\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x20\x4F\x52\x44\x45\x52\x20\x42\x59\x20\x25\x73\x20\x44\x45\x53\x43\x29","\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45\x28\x25\x73\x29","\x44\x41\x54\x45\x28\x25\x73\x29","\x48\x4F\x55\x52\x28\x25\x73\x29","\x52\x4F\x55\x4E\x44\x28\x25\x73\x29","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x25\x73\x29","\x49\x53\x20\x4E\x55\x4C\x4C","\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C","\x49\x53\x20\x45\x4D\x50\x54\x59","\x49\x53\x20\x4E\x4F\x54\x20\x45\x4D\x50\x54\x59","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x72\x75\x6C\x65\x73","","\x28","\x20","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x67\x72\x6F\x75\x70","\x66\x69\x65\x6C\x64","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x76\x61\x6C\x75\x65","\x29","\x6B\x65\x79\x42\x79","\x73\x65\x6C\x65\x63\x74","\x74\x61\x62\x6C\x65","\x66\x72\x6F\x6D","\x4D\x65\x74\x72\x69\x63\x49\x64","\x6D\x65\x74\x72\x69\x63","\x67\x72\x6F\x75\x70\x42\x79","\x6F\x72\x64\x65\x72\x42\x79","\x44\x45\x53\x43","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x25\x73","\x72\x65\x70\x6C\x61\x63\x65","\x66\x6F\x72\x6D\x61\x74","\x61\x6C\x69\x61\x73","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x70\x61\x72\x73\x65","\x63\x6C\x6F\x6E\x65","\x4C\x69\x6D\x69\x74\x65\x64\x20\x51\x75\x65\x72\x79\x3A","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x50\x6C\x65\x61\x73\x65\x20\x69\x6E\x73\x65\x72\x74\x20\x61\x74\x20\x6C\x65\x61\x73\x74\x20\x6F\x6E\x65\x20\x66\x69\x65\x6C\x64\x21","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x6E\x64\x41\x6C\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x72\x75\x6E","\x63\x72\x65\x61\x74\x65\x64\x41\x74\x20\x42\x45\x54\x57\x45\x45\x4E\x20\x3F\x20\x41\x4E\x44\x20\x3F","\x73\x74\x61\x72\x74\x44\x61\x74\x65","\x65\x6E\x64\x44\x61\x74\x65","\x52\x75\x6E\x20\x51\x75\x65\x72\x79\x3A","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x65\x78\x70\x6F\x72\x74\x2F","\x6F\x75\x74\x70\x75\x74","\x6A\x6F\x69\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x66\x69\x6C\x65\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x73\x61\x76\x65\x6E\x61\x6D\x65","\x66\x6F\x72\x6B","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x4E\x6F\x20\x44\x61\x74\x61\x21","\x25\x73\x2D\x25\x73\x2E\x25\x73","\x67\x65\x6E\x65\x72\x61\x74\x65","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x63\x73\x76","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74"];_0x8f94[0];var jsonpatch=require(_0x8f94[1]);var rp=require(_0x8f94[2]);var moment=require(_0x8f94[3]);var BPromise=require(_0x8f94[4]);var util=require(_0x8f94[5]);var path=require(_0x8f94[6]);var sox=require(_0x8f94[7]);var ejs=require(_0x8f94[8]);var fs=require(_0x8f94[9]);var _=require(_0x8f94[10]);var squel=require(_0x8f94[11]);var crypto=require(_0x8f94[12]);var jsforce=require(_0x8f94[13]);var toCsv=require(_0x8f94[14]);var qs=require(_0x8f94[15]);var logger=require(_0x8f94[17])(_0x8f94[16]);var utils=require(_0x8f94[18]);var config=require(_0x8f94[19]);var db=require(_0x8f94[21])[_0x8f94[20]];function respondWithStatusCode(_0xa29dx15,_0xa29dx16,_0xa29dx17){_0xa29dx16= _0xa29dx16|| 204;return function(_0xa29dx18){if(_0xa29dx18){logger[_0x8f94[24]](_0x8f94[22],_0xa29dx17,_0xa29dx16,_0x8f94[23]);logger[_0x8f94[26]](_0x8f94[25],_0xa29dx17,_0xa29dx16,_0x8f94[23]);return _0xa29dx15[_0x8f94[27]](_0xa29dx16)};return _0xa29dx15[_0x8f94[29]](304)[_0x8f94[28]]()}}function respondWithResult(_0xa29dx15,_0xa29dx16,_0xa29dx17){_0xa29dx16= _0xa29dx16|| 200;return function(_0xa29dx18){if(_0xa29dx18){logger[_0x8f94[24]](_0x8f94[22],_0xa29dx17,_0xa29dx16,_0x8f94[30]);logger[_0x8f94[26]](_0x8f94[25],_0xa29dx17,_0xa29dx16,_0x8f94[30],JSON[_0x8f94[31]](_0xa29dx18));return _0xa29dx15[_0x8f94[29]](_0xa29dx16)[_0x8f94[32]](_0xa29dx18)};return _0xa29dx15[_0x8f94[29]](304)[_0x8f94[28]]()}}function respondWithFilteredResult(_0xa29dx15,_0xa29dx1b,_0xa29dx17){return function(_0xa29dx18){if(_0xa29dx18){var _0xa29dx1c=_0xa29dx18[_0x8f94[33]],_0xa29dx1d=_0xa29dx1b[_0x8f94[34]],_0xa29dx1e=_0xa29dx1b[_0x8f94[34]]+ _0xa29dx1b[_0x8f94[35]],_0xa29dx16;if(_0xa29dx1e>= _0xa29dx1c){_0xa29dx1e= _0xa29dx1c;_0xa29dx16= 200}else {_0xa29dx16= 206};_0xa29dx15[_0x8f94[29]](_0xa29dx16);logger[_0x8f94[24]](_0x8f94[22],_0xa29dx17,_0xa29dx16,_0x8f94[36]);logger[_0x8f94[26]](_0x8f94[25],_0xa29dx17,_0xa29dx16,_0x8f94[30],JSON[_0x8f94[31]](_0xa29dx18));return _0xa29dx15[_0x8f94[40]](_0x8f94[37],_0xa29dx1d+ _0x8f94[38]+ _0xa29dx1e+ _0x8f94[39]+ _0xa29dx1c)[_0x8f94[32]](_0xa29dx18)};return null}}function patchUpdates(_0xa29dx20){return function(_0xa29dx18){try{jsonpatch[_0x8f94[41]](_0xa29dx18,_0xa29dx20,true)}catch(err){return BPromise[_0x8f94[42]](err)};return _0xa29dx18[_0x8f94[43]]()}}function saveUpdates(_0xa29dx22,_0xa29dx16,_0xa29dx17){return function(_0xa29dx18){if(_0xa29dx18){return _0xa29dx18[_0x8f94[46]](_0xa29dx22)[_0x8f94[45]](function(_0xa29dx23){logger[_0x8f94[24]](_0x8f94[22],_0xa29dx17,_0xa29dx16,_0x8f94[44]);logger[_0x8f94[26]](_0x8f94[25],_0xa29dx17,_0xa29dx16,_0x8f94[44],JSON[_0x8f94[31]](_0xa29dx18));return _0xa29dx23})};return null}}function removeEntity(_0xa29dx15,_0xa29dx16,_0xa29dx17){return function(_0xa29dx18){if(_0xa29dx18){return _0xa29dx18[_0x8f94[48]]()[_0x8f94[45]](function(){logger[_0x8f94[24]](_0x8f94[22],_0xa29dx17,_0xa29dx16,_0x8f94[47]);logger[_0x8f94[26]](_0x8f94[25],_0xa29dx17,_0xa29dx16,_0x8f94[47],JSON[_0x8f94[31]](_0xa29dx18));_0xa29dx15[_0x8f94[29]](204)[_0x8f94[28]]()})}}}function handleEntityNotFound(_0xa29dx15,_0xa29dx16,_0xa29dx17){return function(_0xa29dx18){if(!_0xa29dx18){logger[_0x8f94[50]](_0x8f94[22],_0xa29dx17,404,_0x8f94[49]);_0xa29dx15[_0x8f94[29]](404)[_0x8f94[28]]();return null};return _0xa29dx18}}function handleError(_0xa29dx15,_0xa29dx16,_0xa29dx17){_0xa29dx16= _0xa29dx16|| 500;return function(_0xa29dx27){logger[_0x8f94[50]](_0x8f94[22],_0xa29dx17,_0xa29dx16,JSON[_0x8f94[31]](_0xa29dx27));delete _0xa29dx27[_0x8f94[51]];_0xa29dx15[_0x8f94[29]](_0xa29dx16)[_0x8f94[52]](_0xa29dx27)}}exports[_0x8f94[53]]= function(_0xa29dx28,_0xa29dx15){var _0xa29dx1b={},_0xa29dx29={};_0xa29dx29[_0x8f94[54]]= _[_0x8f94[57]](db[_0x8f94[56]][_0x8f94[55]]);_0xa29dx29[_0x8f94[58]]= _[_0x8f94[57]](_0xa29dx28[_0x8f94[58]]);_0xa29dx29[_0x8f94[59]]= _[_0x8f94[60]](_0xa29dx29[_0x8f94[54]],_0xa29dx29[_0x8f94[58]]);_0xa29dx1b[_0x8f94[61]]= _[_0x8f94[60]](_0xa29dx29[_0x8f94[54]],qs[_0x8f94[62]](_0xa29dx28[_0x8f94[58]][_0x8f94[62]]));_0xa29dx1b[_0x8f94[61]]= (_0xa29dx1b[_0x8f94[61]][_0x8f94[63]])?_0xa29dx1b[_0x8f94[61]]:_0xa29dx29[_0x8f94[54]];if(!_0xa29dx28[_0x8f94[58]][_0x8f94[65]](_0x8f94[64])){_0xa29dx1b[_0x8f94[35]]= qs[_0x8f94[35]](_0xa29dx28[_0x8f94[58]][_0x8f94[35]]);_0xa29dx1b[_0x8f94[34]]= qs[_0x8f94[34]](_0xa29dx28[_0x8f94[58]][_0x8f94[34]])};_0xa29dx1b[_0x8f94[66]]= qs[_0x8f94[67]](_0xa29dx28[_0x8f94[58]][_0x8f94[67]]);_0xa29dx1b[_0x8f94[68]]= qs[_0x8f94[59]](_[_0x8f94[69]](_0xa29dx28[_0x8f94[58]],_0xa29dx29[_0x8f94[59]]));if(_0xa29dx28[_0x8f94[58]][_0x8f94[70]]){_0xa29dx1b[_0x8f94[68]]= _[_0x8f94[73]](_0xa29dx1b[_0x8f94[68]],{$or:_[_0x8f94[72]](_0xa29dx1b[_0x8f94[61]],function(_0xa29dx2a){var _0xa29dx2b={};_0xa29dx2b[_0xa29dx2a]= {$like:_0x8f94[71]+ _0xa29dx28[_0x8f94[58]][_0x8f94[70]]+ _0x8f94[71]};return _0xa29dx2b})})};_0xa29dx1b= _[_0x8f94[73]]({},_0xa29dx1b,_0xa29dx28[_0x8f94[74]]);return db[_0x8f94[56]][_0x8f94[76]](_0xa29dx1b)[_0x8f94[45]](respondWithFilteredResult(_0xa29dx15,_0xa29dx1b,_0x8f94[53]))[_0x8f94[75]](handleError(_0xa29dx15,null,_0x8f94[53]))};exports[_0x8f94[77]]= function(_0xa29dx28,_0xa29dx15){var _0xa29dx1b={raw:true,where:{id:_0xa29dx28[_0x8f94[79]][_0x8f94[78]]}},_0xa29dx29={};_0xa29dx29[_0x8f94[54]]= _[_0x8f94[57]](db[_0x8f94[56]][_0x8f94[55]]);_0xa29dx29[_0x8f94[58]]= _[_0x8f94[57]](_0xa29dx28[_0x8f94[58]]);_0xa29dx29[_0x8f94[59]]= _[_0x8f94[60]](_0xa29dx29[_0x8f94[54]],_0xa29dx29[_0x8f94[58]]);_0xa29dx1b[_0x8f94[61]]= _[_0x8f94[60]](_0xa29dx29[_0x8f94[54]],qs[_0x8f94[62]](_0xa29dx28[_0x8f94[58]][_0x8f94[62]]));_0xa29dx1b[_0x8f94[61]]= (_0xa29dx1b[_0x8f94[61]][_0x8f94[63]])?_0xa29dx1b[_0x8f94[61]]:_0xa29dx29[_0x8f94[54]];_0xa29dx1b= _[_0x8f94[73]]({},_0xa29dx1b,_0xa29dx28[_0x8f94[74]]);return db[_0x8f94[56]][_0x8f94[80]](_0xa29dx1b)[_0x8f94[45]](handleEntityNotFound(_0xa29dx15,null,_0x8f94[77]))[_0x8f94[45]](respondWithResult(_0xa29dx15,null,_0x8f94[77]))[_0x8f94[75]](handleError(_0xa29dx15,null,_0x8f94[77]))};exports[_0x8f94[81]]= function(_0xa29dx28,_0xa29dx15){return db[_0x8f94[56]][_0x8f94[81]](_0xa29dx28[_0x8f94[82]],{})[_0x8f94[45]](respondWithResult(_0xa29dx15,201,_0x8f94[81]))[_0x8f94[75]](handleError(_0xa29dx15,null,_0x8f94[81]))};exports[_0x8f94[46]]= function(_0xa29dx28,_0xa29dx15){if(_0xa29dx28[_0x8f94[82]][_0x8f94[78]]){delete _0xa29dx28[_0x8f94[82]][_0x8f94[78]]};return db[_0x8f94[56]][_0x8f94[80]]({where:{id:_0xa29dx28[_0x8f94[79]][_0x8f94[78]]}})[_0x8f94[45]](handleEntityNotFound(_0xa29dx15,null,_0x8f94[46]))[_0x8f94[45]](saveUpdates(_0xa29dx28[_0x8f94[82]],null,_0x8f94[46]))[_0x8f94[45]](respondWithResult(_0xa29dx15,null,_0x8f94[46]))[_0x8f94[75]](handleError(_0xa29dx15,null,_0x8f94[46]))};exports[_0x8f94[48]]= function(_0xa29dx28,_0xa29dx15){return db[_0x8f94[56]][_0x8f94[80]]({where:{id:_0xa29dx28[_0x8f94[79]][_0x8f94[78]]}})[_0x8f94[45]](handleEntityNotFound(_0xa29dx15,null,_0x8f94[48]))[_0x8f94[45]](removeEntity(_0xa29dx15,null,_0x8f94[48]))[_0x8f94[75]](handleError(_0xa29dx15,null,_0x8f94[48]))};exports[_0x8f94[83]]= function(_0xa29dx28,_0xa29dx15){var _0xa29dx2c=10;var _0xa29dx2d={"\x53\x55\x4D":_0x8f94[84],"\x43\x4F\x55\x4E\x54":_0x8f94[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0x8f94[86],"\x4D\x41\x58":_0x8f94[87],"\x4D\x49\x4E":_0x8f94[88],"\x41\x56\x47":_0x8f94[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0x8f94[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0x8f94[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0x8f94[92]};var _0xa29dx2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0x8f94[93],"\x44\x41\x54\x45":_0x8f94[94],"\x48\x4F\x55\x52":_0x8f94[95],"\x52\x4F\x55\x4E\x44":_0x8f94[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0x8f94[97]};var _0xa29dx2f=function(_0xa29dx30){return !_[_0x8f94[102]]([_0x8f94[98],_0x8f94[99],_0x8f94[100],_0x8f94[101]],_0xa29dx30)};var _0xa29dx31=function(_0xa29dx32){if(!_0xa29dx32||  !_0xa29dx32[_0x8f94[103]][_0x8f94[63]]){return _0x8f94[104]};for(var _0xa29dx33=_0x8f94[105],_0xa29dx34=0;_0xa29dx34< _0xa29dx32[_0x8f94[103]][_0x8f94[63]];_0xa29dx34+= 1){_0xa29dx34> 0&& (_0xa29dx33+= _0x8f94[106]+ _0xa29dx32[_0x8f94[107]]+ _0x8f94[106]);_0xa29dx33+= _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[108]]?_0xa29dx31(_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[108]]):_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[109]]+ _0x8f94[106]+ _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[110]]+ (_0xa29dx2f(_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[110]])?_0x8f94[106]+ _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[111]]:_0x8f94[104])};return _0xa29dx33+ _0x8f94[112]};var _0xa29dx1b={where:{id:_0xa29dx28[_0x8f94[79]][_0x8f94[78]]}},_0xa29dx35,_0xa29dx36,_0xa29dx37,_0xa29dx38,_0xa29dx39;_0xa29dx1b= _[_0x8f94[73]]({},_0xa29dx1b,_0xa29dx28[_0x8f94[74]]);return db[_0x8f94[56]][_0x8f94[80]](_0xa29dx1b)[_0x8f94[45]](handleEntityNotFound(_0xa29dx15,null,_0x8f94[83]))[_0x8f94[45]](function(_0xa29dx18){if(_0xa29dx18){_0xa29dx35= _0xa29dx18;return _0xa29dx18[_0x8f94[138]]()};return null})[_0x8f94[45]](function(_0xa29dx3a){if(_0xa29dx3a){if(!_0xa29dx3a[_0x8f94[63]]){throw  new db[_0x8f94[135]].ValidationError(_0x8f94[134])};_0xa29dx36= _0xa29dx3a;return db[_0x8f94[137]][_0x8f94[136]]({raw:true})};return null})[_0x8f94[45]](function(_0xa29dx3a){if(_0xa29dx3a){_0xa29dx37= _[_0x8f94[113]](_0xa29dx3a,_0x8f94[78]);var _0xa29dx3b;var _0xa29dx3c=squel[_0x8f94[114]]();_0xa29dx3c[_0x8f94[116]](_0xa29dx35[_0x8f94[115]]);for(var _0xa29dx34=0;_0xa29dx34< _0xa29dx36[_0x8f94[63]];_0xa29dx34+= 1){_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[117]]?_0xa29dx37[_0xa29dx36[_0xa29dx34][_0x8f94[117]]][_0x8f94[118]]:_0xa29dx36[_0xa29dx34][_0x8f94[109]];_0xa29dx36[_0xa29dx34][_0x8f94[119]]&& _0xa29dx3c[_0x8f94[108]](_0xa29dx36[_0xa29dx34][_0x8f94[109]]);_0xa29dx36[_0xa29dx34][_0x8f94[120]]&& _0xa29dx3c[_0x8f94[66]](_0xa29dx36[_0xa29dx34][_0x8f94[109]],_0xa29dx36[_0xa29dx34][_0x8f94[120]]=== _0x8f94[121]?false:true);_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[122]]?_[_0x8f94[124]](_0xa29dx2d[_0xa29dx36[_0xa29dx34][_0x8f94[122]]],_0x8f94[123],_0xa29dx36[_0xa29dx34][_0x8f94[109]]):_0xa29dx3b;_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[125]]?_[_0x8f94[124]](_0xa29dx2e[_0xa29dx36[_0xa29dx34][_0x8f94[125]]],_0x8f94[123],_0xa29dx3b):_0xa29dx3b;_0xa29dx3c[_0x8f94[109]](_0xa29dx3b,_0xa29dx36[_0xa29dx34][_0x8f94[126]]|| _0xa29dx3b)};_0xa29dx35[_0x8f94[127]]&& _0xa29dx3c[_0x8f94[68]](_0xa29dx31(JSON[_0x8f94[128]](_0xa29dx35[_0x8f94[127]])[_0x8f94[108]]));_0xa29dx39= _0xa29dx3c[_0x8f94[129]]();_0xa29dx3c[_0x8f94[35]](_0xa29dx2c);_0xa29dx3c[_0x8f94[34]](0);logger[_0x8f94[24]](_0x8f94[130],_0xa29dx3c.toString());return db[_0x8f94[133]][_0x8f94[58]](_0xa29dx3c.toString(),{type:db[_0x8f94[133]][_0x8f94[132]][_0x8f94[131]]})}})[_0x8f94[45]](respondWithResult(_0xa29dx15,null,_0x8f94[83]))[_0x8f94[75]](handleError(_0xa29dx15,null,_0x8f94[83]))};exports[_0x8f94[139]]= function(_0xa29dx28,_0xa29dx15){var _0xa29dx2c=10;var _0xa29dx2d={"\x53\x55\x4D":_0x8f94[84],"\x43\x4F\x55\x4E\x54":_0x8f94[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0x8f94[86],"\x4D\x41\x58":_0x8f94[87],"\x4D\x49\x4E":_0x8f94[88],"\x41\x56\x47":_0x8f94[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0x8f94[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0x8f94[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0x8f94[92]};var _0xa29dx2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0x8f94[93],"\x44\x41\x54\x45":_0x8f94[94],"\x48\x4F\x55\x52":_0x8f94[95],"\x52\x4F\x55\x4E\x44":_0x8f94[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0x8f94[97]};var _0xa29dx2f=function(_0xa29dx30){return !_[_0x8f94[102]]([_0x8f94[98],_0x8f94[99],_0x8f94[100],_0x8f94[101]],_0xa29dx30)};var _0xa29dx31=function(_0xa29dx32){if(!_0xa29dx32||  !_0xa29dx32[_0x8f94[103]][_0x8f94[63]]){return _0x8f94[104]};for(var _0xa29dx33=_0x8f94[105],_0xa29dx34=0;_0xa29dx34< _0xa29dx32[_0x8f94[103]][_0x8f94[63]];_0xa29dx34+= 1){_0xa29dx34> 0&& (_0xa29dx33+= _0x8f94[106]+ _0xa29dx32[_0x8f94[107]]+ _0x8f94[106]);_0xa29dx33+= _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[108]]?_0xa29dx31(_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[108]]):_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[109]]+ _0x8f94[106]+ _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[110]]+ (_0xa29dx2f(_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[110]])?_0x8f94[106]+ _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[111]]:_0x8f94[104])};return _0xa29dx33+ _0x8f94[112]};var _0xa29dx1b={where:{id:_0xa29dx28[_0x8f94[79]][_0x8f94[78]]}},_0xa29dx35,_0xa29dx36,_0xa29dx37,_0xa29dx38,_0xa29dx39;_0xa29dx1b= _[_0x8f94[73]]({},_0xa29dx1b,_0xa29dx28[_0x8f94[74]]);return db[_0x8f94[56]][_0x8f94[80]](_0xa29dx1b)[_0x8f94[45]](handleEntityNotFound(_0xa29dx15,null,_0x8f94[83]))[_0x8f94[45]](function(_0xa29dx18){if(_0xa29dx18){_0xa29dx35= _0xa29dx18;return _0xa29dx18[_0x8f94[138]]()};return null})[_0x8f94[45]](function(_0xa29dx3a){if(_0xa29dx3a){if(!_0xa29dx3a[_0x8f94[63]]){throw  new db[_0x8f94[135]].ValidationError(_0x8f94[134])};_0xa29dx36= _0xa29dx3a;return db[_0x8f94[137]][_0x8f94[136]]({raw:true})};return null})[_0x8f94[45]](function(_0xa29dx3a){if(_0xa29dx3a){_0xa29dx37= _[_0x8f94[113]](_0xa29dx3a,_0x8f94[78]);var _0xa29dx3b;var _0xa29dx3c=squel[_0x8f94[114]]();_0xa29dx3c[_0x8f94[116]](_0xa29dx35[_0x8f94[115]]);for(var _0xa29dx34=0;_0xa29dx34< _0xa29dx36[_0x8f94[63]];_0xa29dx34+= 1){_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[117]]?_0xa29dx37[_0xa29dx36[_0xa29dx34][_0x8f94[117]]][_0x8f94[118]]:_0xa29dx36[_0xa29dx34][_0x8f94[109]];_0xa29dx36[_0xa29dx34][_0x8f94[119]]&& _0xa29dx3c[_0x8f94[108]](_0xa29dx36[_0xa29dx34][_0x8f94[109]]);_0xa29dx36[_0xa29dx34][_0x8f94[120]]&& _0xa29dx3c[_0x8f94[66]](_0xa29dx36[_0xa29dx34][_0x8f94[109]],_0xa29dx36[_0xa29dx34][_0x8f94[120]]=== _0x8f94[121]?false:true);_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[122]]?_[_0x8f94[124]](_0xa29dx2d[_0xa29dx36[_0xa29dx34][_0x8f94[122]]],_0x8f94[123],_0xa29dx36[_0xa29dx34][_0x8f94[109]]):_0xa29dx3b;_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[125]]?_[_0x8f94[124]](_0xa29dx2e[_0xa29dx36[_0xa29dx34][_0x8f94[125]]],_0x8f94[123],_0xa29dx3b):_0xa29dx3b;_0xa29dx3c[_0x8f94[109]](_0xa29dx3b,_0xa29dx36[_0xa29dx34][_0x8f94[126]]|| _0xa29dx3b)};_0xa29dx35[_0x8f94[127]]&& _0xa29dx3c[_0x8f94[68]](_0xa29dx31(JSON[_0x8f94[128]](_0xa29dx35[_0x8f94[127]])[_0x8f94[108]]));_0xa29dx39= _0xa29dx3c[_0x8f94[129]]();_0xa29dx3c[_0x8f94[35]](_0xa29dx2c);_0xa29dx3c[_0x8f94[34]](0);logger[_0x8f94[24]](_0x8f94[130],_0xa29dx3c.toString());return db[_0x8f94[133]][_0x8f94[58]](_0xa29dx3c.toString(),{type:db[_0x8f94[133]][_0x8f94[132]][_0x8f94[131]]})}})[_0x8f94[45]](function(_0xa29dx3a){if(!_0xa29dx3a[_0x8f94[63]]){throw  new db[_0x8f94[135]].ValidationError(_0x8f94[151])};var _0xa29dx3d=_[_0x8f94[73]](_0xa29dx28[_0x8f94[58]],{name:_0xa29dx28[_0x8f94[58]][_0x8f94[51]]|| _0xa29dx35[_0x8f94[51]],savename:util[_0x8f94[125]](_0x8f94[152],_0xa29dx28[_0x8f94[58]][_0x8f94[51]]|| _0xa29dx35[_0x8f94[51]],require(_0x8f94[154])[_0x8f94[153]](4),_0xa29dx28[_0x8f94[58]][_0x8f94[145]]|| _0x8f94[155])});return db[_0x8f94[156]][_0x8f94[81]](_0xa29dx3d,{raw:true})})[_0x8f94[45]](function(_0xa29dx18){if(_0xa29dx18){_0xa29dx39[_0x8f94[68]](_0x8f94[140],_0xa29dx18[_0x8f94[141]],_0xa29dx18[_0x8f94[142]]);logger[_0x8f94[24]](_0x8f94[143],_0xa29dx39.toString());require(_0x8f94[150])[_0x8f94[149]](path[_0x8f94[146]](__dirname,_0x8f94[144],_0xa29dx18[_0x8f94[145]]),[_0xa29dx18[_0x8f94[78]],_0xa29dx39.toString(),path[_0x8f94[146]](__dirname,_0x8f94[147],_0xa29dx18[_0x8f94[148]])]);return _0xa29dx18};return null})[_0x8f94[45]](respondWithResult(_0xa29dx15,null,_0x8f94[139]))[_0x8f94[75]](handleError(_0xa29dx15,null,_0x8f94[139]))};exports[_0x8f94[58]]= function(_0xa29dx28,_0xa29dx15){var _0xa29dx2c=10;var _0xa29dx2d={"\x53\x55\x4D":_0x8f94[84],"\x43\x4F\x55\x4E\x54":_0x8f94[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0x8f94[86],"\x4D\x41\x58":_0x8f94[87],"\x4D\x49\x4E":_0x8f94[88],"\x41\x56\x47":_0x8f94[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0x8f94[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0x8f94[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0x8f94[92]};var _0xa29dx2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0x8f94[93],"\x44\x41\x54\x45":_0x8f94[94],"\x48\x4F\x55\x52":_0x8f94[95],"\x52\x4F\x55\x4E\x44":_0x8f94[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0x8f94[97]};var _0xa29dx2f=function(_0xa29dx30){return !_[_0x8f94[102]]([_0x8f94[98],_0x8f94[99],_0x8f94[100],_0x8f94[101]],_0xa29dx30)};var _0xa29dx31=function(_0xa29dx32){if(!_0xa29dx32||  !_0xa29dx32[_0x8f94[103]][_0x8f94[63]]){return _0x8f94[104]};for(var _0xa29dx33=_0x8f94[105],_0xa29dx34=0;_0xa29dx34< _0xa29dx32[_0x8f94[103]][_0x8f94[63]];_0xa29dx34+= 1){_0xa29dx34> 0&& (_0xa29dx33+= _0x8f94[106]+ _0xa29dx32[_0x8f94[107]]+ _0x8f94[106]);_0xa29dx33+= _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[108]]?_0xa29dx31(_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[108]]):_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[109]]+ _0x8f94[106]+ _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[110]]+ (_0xa29dx2f(_0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[110]])?_0x8f94[106]+ _0xa29dx32[_0x8f94[103]][_0xa29dx34][_0x8f94[111]]:_0x8f94[104])};return _0xa29dx33+ _0x8f94[112]};var _0xa29dx1b={where:{id:_0xa29dx28[_0x8f94[79]][_0x8f94[78]]}},_0xa29dx35,_0xa29dx36,_0xa29dx37,_0xa29dx38,_0xa29dx39;_0xa29dx1b= _[_0x8f94[73]]({},_0xa29dx1b,_0xa29dx28[_0x8f94[74]]);return db[_0x8f94[56]][_0x8f94[80]](_0xa29dx1b)[_0x8f94[45]](handleEntityNotFound(_0xa29dx15,null,_0x8f94[83]))[_0x8f94[45]](function(_0xa29dx18){if(_0xa29dx18){_0xa29dx35= _0xa29dx18;return _0xa29dx18[_0x8f94[138]]()};return null})[_0x8f94[45]](function(_0xa29dx3a){if(_0xa29dx3a){if(!_0xa29dx3a[_0x8f94[63]]){throw  new db[_0x8f94[135]].ValidationError(_0x8f94[134])};_0xa29dx36= _0xa29dx3a;return db[_0x8f94[137]][_0x8f94[136]]({raw:true})};return null})[_0x8f94[45]](function(_0xa29dx3a){if(_0xa29dx3a){_0xa29dx37= _[_0x8f94[113]](_0xa29dx3a,_0x8f94[78]);var _0xa29dx3b;var _0xa29dx3c=squel[_0x8f94[114]]();_0xa29dx3c[_0x8f94[116]](_0xa29dx35[_0x8f94[115]]);for(var _0xa29dx34=0;_0xa29dx34< _0xa29dx36[_0x8f94[63]];_0xa29dx34+= 1){_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[117]]?_0xa29dx37[_0xa29dx36[_0xa29dx34][_0x8f94[117]]][_0x8f94[118]]:_0xa29dx36[_0xa29dx34][_0x8f94[109]];_0xa29dx36[_0xa29dx34][_0x8f94[119]]&& _0xa29dx3c[_0x8f94[108]](_0xa29dx36[_0xa29dx34][_0x8f94[109]]);_0xa29dx36[_0xa29dx34][_0x8f94[120]]&& _0xa29dx3c[_0x8f94[66]](_0xa29dx36[_0xa29dx34][_0x8f94[109]],_0xa29dx36[_0xa29dx34][_0x8f94[120]]=== _0x8f94[121]?false:true);_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[122]]?_[_0x8f94[124]](_0xa29dx2d[_0xa29dx36[_0xa29dx34][_0x8f94[122]]],_0x8f94[123],_0xa29dx36[_0xa29dx34][_0x8f94[109]]):_0xa29dx3b;_0xa29dx3b= _0xa29dx36[_0xa29dx34][_0x8f94[125]]?_[_0x8f94[124]](_0xa29dx2e[_0xa29dx36[_0xa29dx34][_0x8f94[125]]],_0x8f94[123],_0xa29dx3b):_0xa29dx3b;_0xa29dx3c[_0x8f94[109]](_0xa29dx3b,_0xa29dx36[_0xa29dx34][_0x8f94[126]]|| _0xa29dx3b)};_0xa29dx35[_0x8f94[127]]&& _0xa29dx3c[_0x8f94[68]](_0xa29dx31(JSON[_0x8f94[128]](_0xa29dx35[_0x8f94[127]])[_0x8f94[108]]));_0xa29dx39= _0xa29dx3c[_0x8f94[129]]();_0xa29dx3c[_0x8f94[35]](_0xa29dx2c);_0xa29dx3c[_0x8f94[34]](0);logger[_0x8f94[24]](_0x8f94[130],_0xa29dx3c.toString());return db[_0x8f94[133]][_0x8f94[58]](_0xa29dx3c.toString(),{type:db[_0x8f94[133]][_0x8f94[132]][_0x8f94[131]]})}})[_0x8f94[45]](function(){return {sql:_0xa29dx39.toString()}})[_0x8f94[45]](respondWithResult(_0xa29dx15,null,_0x8f94[58]))[_0x8f94[75]](handleError(_0xa29dx15,null,_0x8f94[58]))}
\ No newline at end of file
+var _0x4a86=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x70\x72\x65\x76\x69\x65\x77","\x53\x55\x4D\x28\x25\x73\x29","\x43\x4F\x55\x4E\x54\x28\x25\x73\x29","\x43\x4F\x55\x4E\x54\x28\x44\x49\x53\x54\x49\x4E\x43\x54\x20\x25\x73\x29","\x4D\x41\x58\x28\x25\x73\x29","\x4D\x49\x4E\x28\x25\x73\x29","\x41\x56\x47\x28\x25\x73\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x20\x4F\x52\x44\x45\x52\x20\x42\x59\x20\x25\x73\x20\x41\x53\x43\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x20\x4F\x52\x44\x45\x52\x20\x42\x59\x20\x25\x73\x20\x44\x45\x53\x43\x29","\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45\x28\x25\x73\x29","\x44\x41\x54\x45\x28\x25\x73\x29","\x48\x4F\x55\x52\x28\x25\x73\x29","\x52\x4F\x55\x4E\x44\x28\x25\x73\x29","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x25\x73\x29","\x49\x53\x20\x4E\x55\x4C\x4C","\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C","\x49\x53\x20\x45\x4D\x50\x54\x59","\x49\x53\x20\x4E\x4F\x54\x20\x45\x4D\x50\x54\x59","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x72\x75\x6C\x65\x73","","\x28","\x20","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x67\x72\x6F\x75\x70","\x66\x69\x65\x6C\x64","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x76\x61\x6C\x75\x65","\x29","\x6B\x65\x79\x42\x79","\x73\x65\x6C\x65\x63\x74","\x74\x61\x62\x6C\x65","\x66\x72\x6F\x6D","\x4D\x65\x74\x72\x69\x63\x49\x64","\x6D\x65\x74\x72\x69\x63","\x67\x72\x6F\x75\x70\x42\x79","\x6F\x72\x64\x65\x72\x42\x79","\x44\x45\x53\x43","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x25\x73","\x72\x65\x70\x6C\x61\x63\x65","\x66\x6F\x72\x6D\x61\x74","\x61\x6C\x69\x61\x73","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x70\x61\x72\x73\x65","\x63\x6C\x6F\x6E\x65","\x4C\x69\x6D\x69\x74\x65\x64\x20\x51\x75\x65\x72\x79\x3A","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x50\x6C\x65\x61\x73\x65\x20\x69\x6E\x73\x65\x72\x74\x20\x61\x74\x20\x6C\x65\x61\x73\x74\x20\x6F\x6E\x65\x20\x66\x69\x65\x6C\x64\x21","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x6E\x64\x41\x6C\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x72\x75\x6E","\x63\x72\x65\x61\x74\x65\x64\x41\x74\x20\x42\x45\x54\x57\x45\x45\x4E\x20\x3F\x20\x41\x4E\x44\x20\x3F","\x73\x74\x61\x72\x74\x44\x61\x74\x65","\x65\x6E\x64\x44\x61\x74\x65","\x52\x75\x6E\x20\x51\x75\x65\x72\x79\x3A","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x65\x78\x70\x6F\x72\x74\x2F","\x6F\x75\x74\x70\x75\x74","\x6A\x6F\x69\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x66\x69\x6C\x65\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x73\x61\x76\x65\x6E\x61\x6D\x65","\x66\x6F\x72\x6B","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x4E\x6F\x20\x44\x61\x74\x61\x21","\x25\x73\x2D\x25\x73\x2E\x25\x73","\x67\x65\x6E\x65\x72\x61\x74\x65","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x63\x73\x76","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74"];_0x4a86[0];var jsonpatch=require(_0x4a86[1]);var rp=require(_0x4a86[2]);var moment=require(_0x4a86[3]);var BPromise=require(_0x4a86[4]);var util=require(_0x4a86[5]);var path=require(_0x4a86[6]);var sox=require(_0x4a86[7]);var ejs=require(_0x4a86[8]);var fs=require(_0x4a86[9]);var _=require(_0x4a86[10]);var squel=require(_0x4a86[11]);var crypto=require(_0x4a86[12]);var jsforce=require(_0x4a86[13]);var toCsv=require(_0x4a86[14]);var qs=require(_0x4a86[15]);var logger=require(_0x4a86[17])(_0x4a86[16]);var utils=require(_0x4a86[18]);var config=require(_0x4a86[19]);var db=require(_0x4a86[21])[_0x4a86[20]];function respondWithStatusCode(_0xe6c9x15,_0xe6c9x16,_0xe6c9x17){_0xe6c9x16= _0xe6c9x16|| 204;return function(_0xe6c9x18){if(_0xe6c9x18){logger[_0x4a86[24]](_0x4a86[22],_0xe6c9x17,_0xe6c9x16,_0x4a86[23]);logger[_0x4a86[26]](_0x4a86[25],_0xe6c9x17,_0xe6c9x16,_0x4a86[23]);return _0xe6c9x15[_0x4a86[27]](_0xe6c9x16)};return _0xe6c9x15[_0x4a86[29]](304)[_0x4a86[28]]()}}function respondWithResult(_0xe6c9x15,_0xe6c9x16,_0xe6c9x17){_0xe6c9x16= _0xe6c9x16|| 200;return function(_0xe6c9x18){if(_0xe6c9x18){logger[_0x4a86[24]](_0x4a86[22],_0xe6c9x17,_0xe6c9x16,_0x4a86[30]);logger[_0x4a86[26]](_0x4a86[25],_0xe6c9x17,_0xe6c9x16,_0x4a86[30],JSON[_0x4a86[31]](_0xe6c9x18));return _0xe6c9x15[_0x4a86[29]](_0xe6c9x16)[_0x4a86[32]](_0xe6c9x18)};return _0xe6c9x15[_0x4a86[29]](304)[_0x4a86[28]]()}}function respondWithFilteredResult(_0xe6c9x15,_0xe6c9x1b,_0xe6c9x17){return function(_0xe6c9x18){if(_0xe6c9x18){var _0xe6c9x1c=_0xe6c9x18[_0x4a86[33]],_0xe6c9x1d=_0xe6c9x1b[_0x4a86[34]],_0xe6c9x1e=_0xe6c9x1b[_0x4a86[34]]+ _0xe6c9x1b[_0x4a86[35]],_0xe6c9x16;if(_0xe6c9x1e>= _0xe6c9x1c){_0xe6c9x1e= _0xe6c9x1c;_0xe6c9x16= 200}else {_0xe6c9x16= 206};_0xe6c9x15[_0x4a86[29]](_0xe6c9x16);logger[_0x4a86[24]](_0x4a86[22],_0xe6c9x17,_0xe6c9x16,_0x4a86[36]);logger[_0x4a86[26]](_0x4a86[25],_0xe6c9x17,_0xe6c9x16,_0x4a86[30],JSON[_0x4a86[31]](_0xe6c9x18));return _0xe6c9x15[_0x4a86[40]](_0x4a86[37],_0xe6c9x1d+ _0x4a86[38]+ _0xe6c9x1e+ _0x4a86[39]+ _0xe6c9x1c)[_0x4a86[32]](_0xe6c9x18)};return null}}function patchUpdates(_0xe6c9x20){return function(_0xe6c9x18){try{jsonpatch[_0x4a86[41]](_0xe6c9x18,_0xe6c9x20,true)}catch(err){return BPromise[_0x4a86[42]](err)};return _0xe6c9x18[_0x4a86[43]]()}}function saveUpdates(_0xe6c9x22,_0xe6c9x16,_0xe6c9x17){return function(_0xe6c9x18){if(_0xe6c9x18){return _0xe6c9x18[_0x4a86[46]](_0xe6c9x22)[_0x4a86[45]](function(_0xe6c9x23){logger[_0x4a86[24]](_0x4a86[22],_0xe6c9x17,_0xe6c9x16,_0x4a86[44]);logger[_0x4a86[26]](_0x4a86[25],_0xe6c9x17,_0xe6c9x16,_0x4a86[44],JSON[_0x4a86[31]](_0xe6c9x18));return _0xe6c9x23})};return null}}function removeEntity(_0xe6c9x15,_0xe6c9x16,_0xe6c9x17){return function(_0xe6c9x18){if(_0xe6c9x18){return _0xe6c9x18[_0x4a86[48]]()[_0x4a86[45]](function(){logger[_0x4a86[24]](_0x4a86[22],_0xe6c9x17,_0xe6c9x16,_0x4a86[47]);logger[_0x4a86[26]](_0x4a86[25],_0xe6c9x17,_0xe6c9x16,_0x4a86[47],JSON[_0x4a86[31]](_0xe6c9x18));_0xe6c9x15[_0x4a86[29]](204)[_0x4a86[28]]()})}}}function handleEntityNotFound(_0xe6c9x15,_0xe6c9x16,_0xe6c9x17){return function(_0xe6c9x18){if(!_0xe6c9x18){logger[_0x4a86[50]](_0x4a86[22],_0xe6c9x17,404,_0x4a86[49]);_0xe6c9x15[_0x4a86[29]](404)[_0x4a86[28]]();return null};return _0xe6c9x18}}function handleError(_0xe6c9x15,_0xe6c9x16,_0xe6c9x17){_0xe6c9x16= _0xe6c9x16|| 500;return function(_0xe6c9x27){logger[_0x4a86[50]](_0x4a86[22],_0xe6c9x17,_0xe6c9x16,JSON[_0x4a86[31]](_0xe6c9x27));delete _0xe6c9x27[_0x4a86[51]];_0xe6c9x15[_0x4a86[29]](_0xe6c9x16)[_0x4a86[52]](_0xe6c9x27)}}exports[_0x4a86[53]]= function(_0xe6c9x28,_0xe6c9x15){var _0xe6c9x1b={},_0xe6c9x29={};_0xe6c9x29[_0x4a86[54]]= _[_0x4a86[57]](db[_0x4a86[56]][_0x4a86[55]]);_0xe6c9x29[_0x4a86[58]]= _[_0x4a86[57]](_0xe6c9x28[_0x4a86[58]]);_0xe6c9x29[_0x4a86[59]]= _[_0x4a86[60]](_0xe6c9x29[_0x4a86[54]],_0xe6c9x29[_0x4a86[58]]);_0xe6c9x1b[_0x4a86[61]]= _[_0x4a86[60]](_0xe6c9x29[_0x4a86[54]],qs[_0x4a86[62]](_0xe6c9x28[_0x4a86[58]][_0x4a86[62]]));_0xe6c9x1b[_0x4a86[61]]= (_0xe6c9x1b[_0x4a86[61]][_0x4a86[63]])?_0xe6c9x1b[_0x4a86[61]]:_0xe6c9x29[_0x4a86[54]];if(!_0xe6c9x28[_0x4a86[58]][_0x4a86[65]](_0x4a86[64])){_0xe6c9x1b[_0x4a86[35]]= qs[_0x4a86[35]](_0xe6c9x28[_0x4a86[58]][_0x4a86[35]]);_0xe6c9x1b[_0x4a86[34]]= qs[_0x4a86[34]](_0xe6c9x28[_0x4a86[58]][_0x4a86[34]])};_0xe6c9x1b[_0x4a86[66]]= qs[_0x4a86[67]](_0xe6c9x28[_0x4a86[58]][_0x4a86[67]]);_0xe6c9x1b[_0x4a86[68]]= qs[_0x4a86[59]](_[_0x4a86[69]](_0xe6c9x28[_0x4a86[58]],_0xe6c9x29[_0x4a86[59]]));if(_0xe6c9x28[_0x4a86[58]][_0x4a86[70]]){_0xe6c9x1b[_0x4a86[68]]= _[_0x4a86[73]](_0xe6c9x1b[_0x4a86[68]],{$or:_[_0x4a86[72]](_0xe6c9x1b[_0x4a86[61]],function(_0xe6c9x2a){var _0xe6c9x2b={};_0xe6c9x2b[_0xe6c9x2a]= {$like:_0x4a86[71]+ _0xe6c9x28[_0x4a86[58]][_0x4a86[70]]+ _0x4a86[71]};return _0xe6c9x2b})})};_0xe6c9x1b= _[_0x4a86[73]]({},_0xe6c9x1b,_0xe6c9x28[_0x4a86[74]]);return db[_0x4a86[56]][_0x4a86[76]](_0xe6c9x1b)[_0x4a86[45]](respondWithFilteredResult(_0xe6c9x15,_0xe6c9x1b,_0x4a86[53]))[_0x4a86[75]](handleError(_0xe6c9x15,null,_0x4a86[53]))};exports[_0x4a86[77]]= function(_0xe6c9x28,_0xe6c9x15){var _0xe6c9x1b={raw:true,where:{id:_0xe6c9x28[_0x4a86[79]][_0x4a86[78]]}},_0xe6c9x29={};_0xe6c9x29[_0x4a86[54]]= _[_0x4a86[57]](db[_0x4a86[56]][_0x4a86[55]]);_0xe6c9x29[_0x4a86[58]]= _[_0x4a86[57]](_0xe6c9x28[_0x4a86[58]]);_0xe6c9x29[_0x4a86[59]]= _[_0x4a86[60]](_0xe6c9x29[_0x4a86[54]],_0xe6c9x29[_0x4a86[58]]);_0xe6c9x1b[_0x4a86[61]]= _[_0x4a86[60]](_0xe6c9x29[_0x4a86[54]],qs[_0x4a86[62]](_0xe6c9x28[_0x4a86[58]][_0x4a86[62]]));_0xe6c9x1b[_0x4a86[61]]= (_0xe6c9x1b[_0x4a86[61]][_0x4a86[63]])?_0xe6c9x1b[_0x4a86[61]]:_0xe6c9x29[_0x4a86[54]];_0xe6c9x1b= _[_0x4a86[73]]({},_0xe6c9x1b,_0xe6c9x28[_0x4a86[74]]);return db[_0x4a86[56]][_0x4a86[80]](_0xe6c9x1b)[_0x4a86[45]](handleEntityNotFound(_0xe6c9x15,null,_0x4a86[77]))[_0x4a86[45]](respondWithResult(_0xe6c9x15,null,_0x4a86[77]))[_0x4a86[75]](handleError(_0xe6c9x15,null,_0x4a86[77]))};exports[_0x4a86[81]]= function(_0xe6c9x28,_0xe6c9x15){return db[_0x4a86[56]][_0x4a86[81]](_0xe6c9x28[_0x4a86[82]],{})[_0x4a86[45]](respondWithResult(_0xe6c9x15,201,_0x4a86[81]))[_0x4a86[75]](handleError(_0xe6c9x15,null,_0x4a86[81]))};exports[_0x4a86[46]]= function(_0xe6c9x28,_0xe6c9x15){if(_0xe6c9x28[_0x4a86[82]][_0x4a86[78]]){delete _0xe6c9x28[_0x4a86[82]][_0x4a86[78]]};return db[_0x4a86[56]][_0x4a86[80]]({where:{id:_0xe6c9x28[_0x4a86[79]][_0x4a86[78]]}})[_0x4a86[45]](handleEntityNotFound(_0xe6c9x15,null,_0x4a86[46]))[_0x4a86[45]](saveUpdates(_0xe6c9x28[_0x4a86[82]],null,_0x4a86[46]))[_0x4a86[45]](respondWithResult(_0xe6c9x15,null,_0x4a86[46]))[_0x4a86[75]](handleError(_0xe6c9x15,null,_0x4a86[46]))};exports[_0x4a86[48]]= function(_0xe6c9x28,_0xe6c9x15){return db[_0x4a86[56]][_0x4a86[80]]({where:{id:_0xe6c9x28[_0x4a86[79]][_0x4a86[78]]}})[_0x4a86[45]](handleEntityNotFound(_0xe6c9x15,null,_0x4a86[48]))[_0x4a86[45]](removeEntity(_0xe6c9x15,null,_0x4a86[48]))[_0x4a86[75]](handleError(_0xe6c9x15,null,_0x4a86[48]))};exports[_0x4a86[83]]= function(_0xe6c9x28,_0xe6c9x15){var _0xe6c9x2c=10;var _0xe6c9x2d={"\x53\x55\x4D":_0x4a86[84],"\x43\x4F\x55\x4E\x54":_0x4a86[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0x4a86[86],"\x4D\x41\x58":_0x4a86[87],"\x4D\x49\x4E":_0x4a86[88],"\x41\x56\x47":_0x4a86[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0x4a86[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0x4a86[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0x4a86[92]};var _0xe6c9x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0x4a86[93],"\x44\x41\x54\x45":_0x4a86[94],"\x48\x4F\x55\x52":_0x4a86[95],"\x52\x4F\x55\x4E\x44":_0x4a86[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0x4a86[97]};var _0xe6c9x2f=function(_0xe6c9x30){return !_[_0x4a86[102]]([_0x4a86[98],_0x4a86[99],_0x4a86[100],_0x4a86[101]],_0xe6c9x30)};var _0xe6c9x31=function(_0xe6c9x32){if(!_0xe6c9x32||  !_0xe6c9x32[_0x4a86[103]][_0x4a86[63]]){return _0x4a86[104]};for(var _0xe6c9x33=_0x4a86[105],_0xe6c9x34=0;_0xe6c9x34< _0xe6c9x32[_0x4a86[103]][_0x4a86[63]];_0xe6c9x34+= 1){_0xe6c9x34> 0&& (_0xe6c9x33+= _0x4a86[106]+ _0xe6c9x32[_0x4a86[107]]+ _0x4a86[106]);_0xe6c9x33+= _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[108]]?_0xe6c9x31(_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[108]]):_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[109]]+ _0x4a86[106]+ _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[110]]+ (_0xe6c9x2f(_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[110]])?_0x4a86[106]+ _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[111]]:_0x4a86[104])};return _0xe6c9x33+ _0x4a86[112]};var _0xe6c9x1b={where:{id:_0xe6c9x28[_0x4a86[79]][_0x4a86[78]]}},_0xe6c9x35,_0xe6c9x36,_0xe6c9x37,_0xe6c9x38,_0xe6c9x39;_0xe6c9x1b= _[_0x4a86[73]]({},_0xe6c9x1b,_0xe6c9x28[_0x4a86[74]]);return db[_0x4a86[56]][_0x4a86[80]](_0xe6c9x1b)[_0x4a86[45]](handleEntityNotFound(_0xe6c9x15,null,_0x4a86[83]))[_0x4a86[45]](function(_0xe6c9x18){if(_0xe6c9x18){_0xe6c9x35= _0xe6c9x18;return _0xe6c9x18[_0x4a86[138]]()};return null})[_0x4a86[45]](function(_0xe6c9x3a){if(_0xe6c9x3a){if(!_0xe6c9x3a[_0x4a86[63]]){throw  new db[_0x4a86[135]].ValidationError(_0x4a86[134])};_0xe6c9x36= _0xe6c9x3a;return db[_0x4a86[137]][_0x4a86[136]]({raw:true})};return null})[_0x4a86[45]](function(_0xe6c9x3a){if(_0xe6c9x3a){_0xe6c9x37= _[_0x4a86[113]](_0xe6c9x3a,_0x4a86[78]);var _0xe6c9x3b;var _0xe6c9x3c=squel[_0x4a86[114]]();_0xe6c9x3c[_0x4a86[116]](_0xe6c9x35[_0x4a86[115]]);for(var _0xe6c9x34=0;_0xe6c9x34< _0xe6c9x36[_0x4a86[63]];_0xe6c9x34+= 1){_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[117]]?_0xe6c9x37[_0xe6c9x36[_0xe6c9x34][_0x4a86[117]]][_0x4a86[118]]:_0xe6c9x36[_0xe6c9x34][_0x4a86[109]];_0xe6c9x36[_0xe6c9x34][_0x4a86[119]]&& _0xe6c9x3c[_0x4a86[108]](_0xe6c9x36[_0xe6c9x34][_0x4a86[109]]);_0xe6c9x36[_0xe6c9x34][_0x4a86[120]]&& _0xe6c9x3c[_0x4a86[66]](_0xe6c9x36[_0xe6c9x34][_0x4a86[109]],_0xe6c9x36[_0xe6c9x34][_0x4a86[120]]=== _0x4a86[121]?false:true);_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[122]]?_[_0x4a86[124]](_0xe6c9x2d[_0xe6c9x36[_0xe6c9x34][_0x4a86[122]]],_0x4a86[123],_0xe6c9x36[_0xe6c9x34][_0x4a86[109]]):_0xe6c9x3b;_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[125]]?_[_0x4a86[124]](_0xe6c9x2e[_0xe6c9x36[_0xe6c9x34][_0x4a86[125]]],_0x4a86[123],_0xe6c9x3b):_0xe6c9x3b;_0xe6c9x3c[_0x4a86[109]](_0xe6c9x3b,_0xe6c9x36[_0xe6c9x34][_0x4a86[126]]|| _0xe6c9x3b)};_0xe6c9x35[_0x4a86[127]]&& _0xe6c9x3c[_0x4a86[68]](_0xe6c9x31(JSON[_0x4a86[128]](_0xe6c9x35[_0x4a86[127]])[_0x4a86[108]]));_0xe6c9x39= _0xe6c9x3c[_0x4a86[129]]();_0xe6c9x3c[_0x4a86[35]](_0xe6c9x2c);_0xe6c9x3c[_0x4a86[34]](0);logger[_0x4a86[24]](_0x4a86[130],_0xe6c9x3c.toString());return db[_0x4a86[133]][_0x4a86[58]](_0xe6c9x3c.toString(),{type:db[_0x4a86[133]][_0x4a86[132]][_0x4a86[131]]})}})[_0x4a86[45]](respondWithResult(_0xe6c9x15,null,_0x4a86[83]))[_0x4a86[75]](handleError(_0xe6c9x15,null,_0x4a86[83]))};exports[_0x4a86[139]]= function(_0xe6c9x28,_0xe6c9x15){var _0xe6c9x2c=10;var _0xe6c9x2d={"\x53\x55\x4D":_0x4a86[84],"\x43\x4F\x55\x4E\x54":_0x4a86[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0x4a86[86],"\x4D\x41\x58":_0x4a86[87],"\x4D\x49\x4E":_0x4a86[88],"\x41\x56\x47":_0x4a86[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0x4a86[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0x4a86[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0x4a86[92]};var _0xe6c9x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0x4a86[93],"\x44\x41\x54\x45":_0x4a86[94],"\x48\x4F\x55\x52":_0x4a86[95],"\x52\x4F\x55\x4E\x44":_0x4a86[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0x4a86[97]};var _0xe6c9x2f=function(_0xe6c9x30){return !_[_0x4a86[102]]([_0x4a86[98],_0x4a86[99],_0x4a86[100],_0x4a86[101]],_0xe6c9x30)};var _0xe6c9x31=function(_0xe6c9x32){if(!_0xe6c9x32||  !_0xe6c9x32[_0x4a86[103]][_0x4a86[63]]){return _0x4a86[104]};for(var _0xe6c9x33=_0x4a86[105],_0xe6c9x34=0;_0xe6c9x34< _0xe6c9x32[_0x4a86[103]][_0x4a86[63]];_0xe6c9x34+= 1){_0xe6c9x34> 0&& (_0xe6c9x33+= _0x4a86[106]+ _0xe6c9x32[_0x4a86[107]]+ _0x4a86[106]);_0xe6c9x33+= _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[108]]?_0xe6c9x31(_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[108]]):_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[109]]+ _0x4a86[106]+ _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[110]]+ (_0xe6c9x2f(_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[110]])?_0x4a86[106]+ _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[111]]:_0x4a86[104])};return _0xe6c9x33+ _0x4a86[112]};var _0xe6c9x1b={where:{id:_0xe6c9x28[_0x4a86[79]][_0x4a86[78]]}},_0xe6c9x35,_0xe6c9x36,_0xe6c9x37,_0xe6c9x38,_0xe6c9x39;_0xe6c9x1b= _[_0x4a86[73]]({},_0xe6c9x1b,_0xe6c9x28[_0x4a86[74]]);return db[_0x4a86[56]][_0x4a86[80]](_0xe6c9x1b)[_0x4a86[45]](handleEntityNotFound(_0xe6c9x15,null,_0x4a86[83]))[_0x4a86[45]](function(_0xe6c9x18){if(_0xe6c9x18){_0xe6c9x35= _0xe6c9x18;return _0xe6c9x18[_0x4a86[138]]()};return null})[_0x4a86[45]](function(_0xe6c9x3a){if(_0xe6c9x3a){if(!_0xe6c9x3a[_0x4a86[63]]){throw  new db[_0x4a86[135]].ValidationError(_0x4a86[134])};_0xe6c9x36= _0xe6c9x3a;return db[_0x4a86[137]][_0x4a86[136]]({raw:true})};return null})[_0x4a86[45]](function(_0xe6c9x3a){if(_0xe6c9x3a){_0xe6c9x37= _[_0x4a86[113]](_0xe6c9x3a,_0x4a86[78]);var _0xe6c9x3b;var _0xe6c9x3c=squel[_0x4a86[114]]();_0xe6c9x3c[_0x4a86[116]](_0xe6c9x35[_0x4a86[115]]);for(var _0xe6c9x34=0;_0xe6c9x34< _0xe6c9x36[_0x4a86[63]];_0xe6c9x34+= 1){_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[117]]?_0xe6c9x37[_0xe6c9x36[_0xe6c9x34][_0x4a86[117]]][_0x4a86[118]]:_0xe6c9x36[_0xe6c9x34][_0x4a86[109]];_0xe6c9x36[_0xe6c9x34][_0x4a86[119]]&& _0xe6c9x3c[_0x4a86[108]](_0xe6c9x36[_0xe6c9x34][_0x4a86[109]]);_0xe6c9x36[_0xe6c9x34][_0x4a86[120]]&& _0xe6c9x3c[_0x4a86[66]](_0xe6c9x36[_0xe6c9x34][_0x4a86[109]],_0xe6c9x36[_0xe6c9x34][_0x4a86[120]]=== _0x4a86[121]?false:true);_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[122]]?_[_0x4a86[124]](_0xe6c9x2d[_0xe6c9x36[_0xe6c9x34][_0x4a86[122]]],_0x4a86[123],_0xe6c9x36[_0xe6c9x34][_0x4a86[109]]):_0xe6c9x3b;_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[125]]?_[_0x4a86[124]](_0xe6c9x2e[_0xe6c9x36[_0xe6c9x34][_0x4a86[125]]],_0x4a86[123],_0xe6c9x3b):_0xe6c9x3b;_0xe6c9x3c[_0x4a86[109]](_0xe6c9x3b,_0xe6c9x36[_0xe6c9x34][_0x4a86[126]]|| _0xe6c9x3b)};_0xe6c9x35[_0x4a86[127]]&& _0xe6c9x3c[_0x4a86[68]](_0xe6c9x31(JSON[_0x4a86[128]](_0xe6c9x35[_0x4a86[127]])[_0x4a86[108]]));_0xe6c9x39= _0xe6c9x3c[_0x4a86[129]]();_0xe6c9x3c[_0x4a86[35]](_0xe6c9x2c);_0xe6c9x3c[_0x4a86[34]](0);logger[_0x4a86[24]](_0x4a86[130],_0xe6c9x3c.toString());return db[_0x4a86[133]][_0x4a86[58]](_0xe6c9x3c.toString(),{type:db[_0x4a86[133]][_0x4a86[132]][_0x4a86[131]]})}})[_0x4a86[45]](function(_0xe6c9x3a){if(!_0xe6c9x3a[_0x4a86[63]]){throw  new db[_0x4a86[135]].ValidationError(_0x4a86[151])};var _0xe6c9x3d=_[_0x4a86[73]](_0xe6c9x28[_0x4a86[58]],{name:_0xe6c9x28[_0x4a86[58]][_0x4a86[51]]|| _0xe6c9x35[_0x4a86[51]],savename:util[_0x4a86[125]](_0x4a86[152],_0xe6c9x28[_0x4a86[58]][_0x4a86[51]]|| _0xe6c9x35[_0x4a86[51]],require(_0x4a86[154])[_0x4a86[153]](4),_0xe6c9x28[_0x4a86[58]][_0x4a86[145]]|| _0x4a86[155])});return db[_0x4a86[156]][_0x4a86[81]](_0xe6c9x3d,{raw:true})})[_0x4a86[45]](function(_0xe6c9x18){if(_0xe6c9x18){_0xe6c9x39[_0x4a86[68]](_0x4a86[140],_0xe6c9x18[_0x4a86[141]],_0xe6c9x18[_0x4a86[142]]);logger[_0x4a86[24]](_0x4a86[143],_0xe6c9x39.toString());require(_0x4a86[150])[_0x4a86[149]](path[_0x4a86[146]](__dirname,_0x4a86[144],_0xe6c9x18[_0x4a86[145]]),[_0xe6c9x18[_0x4a86[78]],_0xe6c9x39.toString(),path[_0x4a86[146]](__dirname,_0x4a86[147],_0xe6c9x18[_0x4a86[148]])]);return _0xe6c9x18};return null})[_0x4a86[45]](respondWithResult(_0xe6c9x15,null,_0x4a86[139]))[_0x4a86[75]](handleError(_0xe6c9x15,null,_0x4a86[139]))};exports[_0x4a86[58]]= function(_0xe6c9x28,_0xe6c9x15){var _0xe6c9x2c=10;var _0xe6c9x2d={"\x53\x55\x4D":_0x4a86[84],"\x43\x4F\x55\x4E\x54":_0x4a86[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0x4a86[86],"\x4D\x41\x58":_0x4a86[87],"\x4D\x49\x4E":_0x4a86[88],"\x41\x56\x47":_0x4a86[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0x4a86[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0x4a86[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0x4a86[92]};var _0xe6c9x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0x4a86[93],"\x44\x41\x54\x45":_0x4a86[94],"\x48\x4F\x55\x52":_0x4a86[95],"\x52\x4F\x55\x4E\x44":_0x4a86[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0x4a86[97]};var _0xe6c9x2f=function(_0xe6c9x30){return !_[_0x4a86[102]]([_0x4a86[98],_0x4a86[99],_0x4a86[100],_0x4a86[101]],_0xe6c9x30)};var _0xe6c9x31=function(_0xe6c9x32){if(!_0xe6c9x32||  !_0xe6c9x32[_0x4a86[103]][_0x4a86[63]]){return _0x4a86[104]};for(var _0xe6c9x33=_0x4a86[105],_0xe6c9x34=0;_0xe6c9x34< _0xe6c9x32[_0x4a86[103]][_0x4a86[63]];_0xe6c9x34+= 1){_0xe6c9x34> 0&& (_0xe6c9x33+= _0x4a86[106]+ _0xe6c9x32[_0x4a86[107]]+ _0x4a86[106]);_0xe6c9x33+= _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[108]]?_0xe6c9x31(_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[108]]):_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[109]]+ _0x4a86[106]+ _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[110]]+ (_0xe6c9x2f(_0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[110]])?_0x4a86[106]+ _0xe6c9x32[_0x4a86[103]][_0xe6c9x34][_0x4a86[111]]:_0x4a86[104])};return _0xe6c9x33+ _0x4a86[112]};var _0xe6c9x1b={where:{id:_0xe6c9x28[_0x4a86[79]][_0x4a86[78]]}},_0xe6c9x35,_0xe6c9x36,_0xe6c9x37,_0xe6c9x38,_0xe6c9x39;_0xe6c9x1b= _[_0x4a86[73]]({},_0xe6c9x1b,_0xe6c9x28[_0x4a86[74]]);return db[_0x4a86[56]][_0x4a86[80]](_0xe6c9x1b)[_0x4a86[45]](handleEntityNotFound(_0xe6c9x15,null,_0x4a86[83]))[_0x4a86[45]](function(_0xe6c9x18){if(_0xe6c9x18){_0xe6c9x35= _0xe6c9x18;return _0xe6c9x18[_0x4a86[138]]()};return null})[_0x4a86[45]](function(_0xe6c9x3a){if(_0xe6c9x3a){if(!_0xe6c9x3a[_0x4a86[63]]){throw  new db[_0x4a86[135]].ValidationError(_0x4a86[134])};_0xe6c9x36= _0xe6c9x3a;return db[_0x4a86[137]][_0x4a86[136]]({raw:true})};return null})[_0x4a86[45]](function(_0xe6c9x3a){if(_0xe6c9x3a){_0xe6c9x37= _[_0x4a86[113]](_0xe6c9x3a,_0x4a86[78]);var _0xe6c9x3b;var _0xe6c9x3c=squel[_0x4a86[114]]();_0xe6c9x3c[_0x4a86[116]](_0xe6c9x35[_0x4a86[115]]);for(var _0xe6c9x34=0;_0xe6c9x34< _0xe6c9x36[_0x4a86[63]];_0xe6c9x34+= 1){_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[117]]?_0xe6c9x37[_0xe6c9x36[_0xe6c9x34][_0x4a86[117]]][_0x4a86[118]]:_0xe6c9x36[_0xe6c9x34][_0x4a86[109]];_0xe6c9x36[_0xe6c9x34][_0x4a86[119]]&& _0xe6c9x3c[_0x4a86[108]](_0xe6c9x36[_0xe6c9x34][_0x4a86[109]]);_0xe6c9x36[_0xe6c9x34][_0x4a86[120]]&& _0xe6c9x3c[_0x4a86[66]](_0xe6c9x36[_0xe6c9x34][_0x4a86[109]],_0xe6c9x36[_0xe6c9x34][_0x4a86[120]]=== _0x4a86[121]?false:true);_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[122]]?_[_0x4a86[124]](_0xe6c9x2d[_0xe6c9x36[_0xe6c9x34][_0x4a86[122]]],_0x4a86[123],_0xe6c9x36[_0xe6c9x34][_0x4a86[109]]):_0xe6c9x3b;_0xe6c9x3b= _0xe6c9x36[_0xe6c9x34][_0x4a86[125]]?_[_0x4a86[124]](_0xe6c9x2e[_0xe6c9x36[_0xe6c9x34][_0x4a86[125]]],_0x4a86[123],_0xe6c9x3b):_0xe6c9x3b;_0xe6c9x3c[_0x4a86[109]](_0xe6c9x3b,_0xe6c9x36[_0xe6c9x34][_0x4a86[126]]|| _0xe6c9x3b)};_0xe6c9x35[_0x4a86[127]]&& _0xe6c9x3c[_0x4a86[68]](_0xe6c9x31(JSON[_0x4a86[128]](_0xe6c9x35[_0x4a86[127]])[_0x4a86[108]]));_0xe6c9x39= _0xe6c9x3c[_0x4a86[129]]();_0xe6c9x3c[_0x4a86[35]](_0xe6c9x2c);_0xe6c9x3c[_0x4a86[34]](0);logger[_0x4a86[24]](_0x4a86[130],_0xe6c9x3c.toString());return db[_0x4a86[133]][_0x4a86[58]](_0xe6c9x3c.toString(),{type:db[_0x4a86[133]][_0x4a86[132]][_0x4a86[131]]})}})[_0x4a86[45]](function(){return {sql:_0xe6c9x39.toString()}})[_0x4a86[45]](respondWithResult(_0xe6c9x15,null,_0x4a86[58]))[_0x4a86[75]](handleError(_0xe6c9x15,null,_0x4a86[58]))}
\ No newline at end of file
index b92d25e..3767e5e 100644 (file)
@@ -1 +1 @@
-var _0xf9da=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x63\x75\x73\x74\x6F\x6D\x5F\x72\x65\x70\x6F\x72\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xf9da[0];var _=require(_0xf9da[1]);var util=require(_0xf9da[2]);var logger=require(_0xf9da[4])(_0xf9da[3]);var attributes=require(_0xf9da[5]);module[_0xf9da[6]]= function(_0x890bx5,_0x890bx6){return _0x890bx5[_0xf9da[9]](_0xf9da[7],attributes,{tableName:_0xf9da[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xe3cb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x63\x75\x73\x74\x6F\x6D\x5F\x72\x65\x70\x6F\x72\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xe3cb[0];var _=require(_0xe3cb[1]);var util=require(_0xe3cb[2]);var logger=require(_0xe3cb[4])(_0xe3cb[3]);var attributes=require(_0xe3cb[5]);module[_0xe3cb[6]]= function(_0x6db2x5,_0x6db2x6){return _0x6db2x5[_0xe3cb[9]](_0xe3cb[7],attributes,{tableName:_0xe3cb[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
index cfb9fd9..e50af87 100644 (file)
@@ -1 +1 @@
-var _0xb710=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xb710[0];var _=require(_0xb710[1]);var util=require(_0xb710[2]);var moment=require(_0xb710[3]);var BPromise=require(_0xb710[4]);var db=require(_0xb710[6])[_0xb710[5]];var utils=require(_0xb710[7]);var logger=require(_0xb710[9])(_0xb710[8]);var jayson=require(_0xb710[10]);var client=jayson[_0xb710[12]][_0xb710[11]]({port:9002});function respondWithRpcPromise(_0x66f5xb,_0x66f5xc,_0x66f5xd){return  new BPromise(function(_0x66f5xe,_0x66f5xf){return client[_0xb710[25]](_0x66f5xb,_0x66f5xd)[_0xb710[24]](function(_0x66f5x11){logger[_0xb710[17]](_0xb710[13],_0x66f5xc,_0xb710[16]);logger[_0xb710[20]](_0xb710[18],_0x66f5xc,_0xb710[16],JSON[_0xb710[19]](_0x66f5x11));if(_0x66f5x11[_0xb710[14]]){if(_0x66f5x11[_0xb710[14]][_0xb710[21]]=== 500){logger[_0xb710[14]](_0xb710[13],_0x66f5xc,_0x66f5x11[_0xb710[14]][_0xb710[22]]);return _0x66f5xf(_0x66f5x11[_0xb710[14]][_0xb710[22]])};logger[_0xb710[14]](_0xb710[13],_0x66f5xc,_0x66f5x11[_0xb710[14]][_0xb710[22]]);return _0x66f5xe(_0x66f5x11[_0xb710[14]][_0xb710[22]])}else {logger[_0xb710[17]](_0xb710[13],_0x66f5xc,_0xb710[16]);_0x66f5xe(_0x66f5x11[_0xb710[23]][_0xb710[22]])}})[_0xb710[15]](function(_0x66f5x10){logger[_0xb710[14]](_0xb710[13],_0x66f5xc,_0x66f5x10);_0x66f5xf(_0x66f5x10)})})}
\ No newline at end of file
+var _0xc93f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xc93f[0];var _=require(_0xc93f[1]);var util=require(_0xc93f[2]);var moment=require(_0xc93f[3]);var BPromise=require(_0xc93f[4]);var db=require(_0xc93f[6])[_0xc93f[5]];var utils=require(_0xc93f[7]);var logger=require(_0xc93f[9])(_0xc93f[8]);var jayson=require(_0xc93f[10]);var client=jayson[_0xc93f[12]][_0xc93f[11]]({port:9002});function respondWithRpcPromise(_0xe61bxb,_0xe61bxc,_0xe61bxd){return  new BPromise(function(_0xe61bxe,_0xe61bxf){return client[_0xc93f[25]](_0xe61bxb,_0xe61bxd)[_0xc93f[24]](function(_0xe61bx11){logger[_0xc93f[17]](_0xc93f[13],_0xe61bxc,_0xc93f[16]);logger[_0xc93f[20]](_0xc93f[18],_0xe61bxc,_0xc93f[16],JSON[_0xc93f[19]](_0xe61bx11));if(_0xe61bx11[_0xc93f[14]]){if(_0xe61bx11[_0xc93f[14]][_0xc93f[21]]=== 500){logger[_0xc93f[14]](_0xc93f[13],_0xe61bxc,_0xe61bx11[_0xc93f[14]][_0xc93f[22]]);return _0xe61bxf(_0xe61bx11[_0xc93f[14]][_0xc93f[22]])};logger[_0xc93f[14]](_0xc93f[13],_0xe61bxc,_0xe61bx11[_0xc93f[14]][_0xc93f[22]]);return _0xe61bxe(_0xe61bx11[_0xc93f[14]][_0xc93f[22]])}else {logger[_0xc93f[17]](_0xc93f[13],_0xe61bxc,_0xc93f[16]);_0xe61bxe(_0xe61bx11[_0xc93f[23]][_0xc93f[22]])}})[_0xc93f[15]](function(_0xe61bx10){logger[_0xc93f[14]](_0xc93f[13],_0xe61bxc,_0xe61bx10);_0xe61bxf(_0xe61bx10)})})}
\ No newline at end of file
index 1baccbe..efe755d 100644 (file)
@@ -1 +1 @@
-var _0xce06=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x70\x72\x65\x76\x69\x65\x77","\x70\x72\x65\x76\x69\x65\x77","\x2F\x3A\x69\x64\x2F\x72\x75\x6E","\x72\x75\x6E","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x72\x79","\x71\x75\x65\x72\x79","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xce06[0];var multer=require(_0xce06[1]);var util=require(_0xce06[2]);var path=require(_0xce06[3]);var express=require(_0xce06[4]);var router=express.Router();var auth=require(_0xce06[5]);var config=require(_0xce06[6]);var controller=require(_0xce06[7]);router[_0xce06[11]](_0xce06[8],auth[_0xce06[9]](),controller[_0xce06[10]]);router[_0xce06[11]](_0xce06[12],auth[_0xce06[9]](),controller[_0xce06[13]]);router[_0xce06[11]](_0xce06[14],auth[_0xce06[9]](),controller[_0xce06[15]]);router[_0xce06[11]](_0xce06[16],auth[_0xce06[9]](),controller[_0xce06[17]]);router[_0xce06[11]](_0xce06[18],auth[_0xce06[9]](),controller[_0xce06[19]]);router[_0xce06[21]](_0xce06[8],auth[_0xce06[9]](),controller[_0xce06[20]]);router[_0xce06[23]](_0xce06[12],auth[_0xce06[9]](),controller[_0xce06[22]]);router[_0xce06[25]](_0xce06[12],auth[_0xce06[9]](),controller[_0xce06[24]]);module[_0xce06[26]]= router
\ No newline at end of file
+var _0xb757=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x70\x72\x65\x76\x69\x65\x77","\x70\x72\x65\x76\x69\x65\x77","\x2F\x3A\x69\x64\x2F\x72\x75\x6E","\x72\x75\x6E","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x72\x79","\x71\x75\x65\x72\x79","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb757[0];var multer=require(_0xb757[1]);var util=require(_0xb757[2]);var path=require(_0xb757[3]);var express=require(_0xb757[4]);var router=express.Router();var auth=require(_0xb757[5]);var config=require(_0xb757[6]);var controller=require(_0xb757[7]);router[_0xb757[11]](_0xb757[8],auth[_0xb757[9]](),controller[_0xb757[10]]);router[_0xb757[11]](_0xb757[12],auth[_0xb757[9]](),controller[_0xb757[13]]);router[_0xb757[11]](_0xb757[14],auth[_0xb757[9]](),controller[_0xb757[15]]);router[_0xb757[11]](_0xb757[16],auth[_0xb757[9]](),controller[_0xb757[17]]);router[_0xb757[11]](_0xb757[18],auth[_0xb757[9]](),controller[_0xb757[19]]);router[_0xb757[21]](_0xb757[8],auth[_0xb757[9]](),controller[_0xb757[20]]);router[_0xb757[23]](_0xb757[12],auth[_0xb757[9]](),controller[_0xb757[22]]);router[_0xb757[25]](_0xb757[12],auth[_0xb757[9]](),controller[_0xb757[24]]);module[_0xb757[26]]= router
\ No newline at end of file
index 9ead9bd..51d0ad2 100644 (file)
@@ -1 +1 @@
-var _0x788d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0x788d[0];var Sequelize=require(_0x788d[1]);module[_0x788d[2]]= {name:{type:Sequelize[_0x788d[3]],allowNull:false},description:{type:Sequelize[_0x788d[3]]},parent:{type:Sequelize[_0x788d[3]]},table:{type:Sequelize[_0x788d[3]]},conditions:{type:Sequelize[_0x788d[4]]}}
\ No newline at end of file
+var _0x9914=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0x9914[0];var Sequelize=require(_0x9914[1]);module[_0x9914[2]]= {name:{type:Sequelize[_0x9914[3]],allowNull:false},description:{type:Sequelize[_0x9914[3]]},parent:{type:Sequelize[_0x9914[3]]},table:{type:Sequelize[_0x9914[3]]},conditions:{type:Sequelize[_0x9914[4]]}}
\ No newline at end of file
index 1f938d4..0774a31 100644 (file)
@@ -1 +1 @@
-var _0xc326=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x70\x72\x65\x76\x69\x65\x77","\x53\x55\x4D\x28\x25\x73\x29","\x43\x4F\x55\x4E\x54\x28\x25\x73\x29","\x43\x4F\x55\x4E\x54\x28\x44\x49\x53\x54\x49\x4E\x43\x54\x20\x25\x73\x29","\x4D\x41\x58\x28\x25\x73\x29","\x4D\x49\x4E\x28\x25\x73\x29","\x41\x56\x47\x28\x25\x73\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x20\x4F\x52\x44\x45\x52\x20\x42\x59\x20\x25\x73\x20\x41\x53\x43\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x20\x4F\x52\x44\x45\x52\x20\x42\x59\x20\x25\x73\x20\x44\x45\x53\x43\x29","\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45\x28\x25\x73\x29","\x44\x41\x54\x45\x28\x25\x73\x29","\x48\x4F\x55\x52\x28\x25\x73\x29","\x52\x4F\x55\x4E\x44\x28\x25\x73\x29","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x25\x73\x29","\x49\x53\x20\x4E\x55\x4C\x4C","\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C","\x49\x53\x20\x45\x4D\x50\x54\x59","\x49\x53\x20\x4E\x4F\x54\x20\x45\x4D\x50\x54\x59","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x72\x75\x6C\x65\x73","","\x28","\x20","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x67\x72\x6F\x75\x70","\x66\x69\x65\x6C\x64","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x76\x61\x6C\x75\x65","\x29","\x6B\x65\x79\x42\x79","\x73\x65\x6C\x65\x63\x74","\x74\x61\x62\x6C\x65","\x66\x72\x6F\x6D","\x4D\x65\x74\x72\x69\x63\x49\x64","\x6D\x65\x74\x72\x69\x63","\x67\x72\x6F\x75\x70\x42\x79","\x6F\x72\x64\x65\x72\x42\x79","\x44\x45\x53\x43","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x25\x73","\x72\x65\x70\x6C\x61\x63\x65","\x66\x6F\x72\x6D\x61\x74","\x61\x6C\x69\x61\x73","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x70\x61\x72\x73\x65","\x63\x6C\x6F\x6E\x65","\x4C\x69\x6D\x69\x74\x65\x64\x20\x51\x75\x65\x72\x79\x3A","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x50\x6C\x65\x61\x73\x65\x20\x69\x6E\x73\x65\x72\x74\x20\x61\x74\x20\x6C\x65\x61\x73\x74\x20\x6F\x6E\x65\x20\x66\x69\x65\x6C\x64\x21","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x6E\x64\x41\x6C\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x72\x75\x6E","\x63\x72\x65\x61\x74\x65\x64\x41\x74\x20\x42\x45\x54\x57\x45\x45\x4E\x20\x3F\x20\x41\x4E\x44\x20\x3F","\x73\x74\x61\x72\x74\x44\x61\x74\x65","\x65\x6E\x64\x44\x61\x74\x65","\x52\x75\x6E\x20\x51\x75\x65\x72\x79\x3A","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x65\x78\x70\x6F\x72\x74\x2F","\x6F\x75\x74\x70\x75\x74","\x6A\x6F\x69\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x66\x69\x6C\x65\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x73\x61\x76\x65\x6E\x61\x6D\x65","\x66\x6F\x72\x6B","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x4E\x6F\x20\x44\x61\x74\x61\x21","\x25\x73\x2D\x25\x73\x2E\x25\x73","\x67\x65\x6E\x65\x72\x61\x74\x65","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x63\x73\x76","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74"];_0xc326[0];var jsonpatch=require(_0xc326[1]);var rp=require(_0xc326[2]);var moment=require(_0xc326[3]);var BPromise=require(_0xc326[4]);var util=require(_0xc326[5]);var path=require(_0xc326[6]);var sox=require(_0xc326[7]);var ejs=require(_0xc326[8]);var fs=require(_0xc326[9]);var _=require(_0xc326[10]);var squel=require(_0xc326[11]);var crypto=require(_0xc326[12]);var jsforce=require(_0xc326[13]);var toCsv=require(_0xc326[14]);var qs=require(_0xc326[15]);var logger=require(_0xc326[17])(_0xc326[16]);var utils=require(_0xc326[18]);var config=require(_0xc326[19]);var db=require(_0xc326[21])[_0xc326[20]];function respondWithStatusCode(_0x6420x15,_0x6420x16,_0x6420x17){_0x6420x16= _0x6420x16|| 204;return function(_0x6420x18){if(_0x6420x18){logger[_0xc326[24]](_0xc326[22],_0x6420x17,_0x6420x16,_0xc326[23]);logger[_0xc326[26]](_0xc326[25],_0x6420x17,_0x6420x16,_0xc326[23]);return _0x6420x15[_0xc326[27]](_0x6420x16)};return _0x6420x15[_0xc326[29]](304)[_0xc326[28]]()}}function respondWithResult(_0x6420x15,_0x6420x16,_0x6420x17){_0x6420x16= _0x6420x16|| 200;return function(_0x6420x18){if(_0x6420x18){logger[_0xc326[24]](_0xc326[22],_0x6420x17,_0x6420x16,_0xc326[30]);logger[_0xc326[26]](_0xc326[25],_0x6420x17,_0x6420x16,_0xc326[30],JSON[_0xc326[31]](_0x6420x18));return _0x6420x15[_0xc326[29]](_0x6420x16)[_0xc326[32]](_0x6420x18)};return _0x6420x15[_0xc326[29]](304)[_0xc326[28]]()}}function respondWithFilteredResult(_0x6420x15,_0x6420x1b,_0x6420x17){return function(_0x6420x18){if(_0x6420x18){var _0x6420x1c=_0x6420x18[_0xc326[33]],_0x6420x1d=_0x6420x1b[_0xc326[34]],_0x6420x1e=_0x6420x1b[_0xc326[34]]+ _0x6420x1b[_0xc326[35]],_0x6420x16;if(_0x6420x1e>= _0x6420x1c){_0x6420x1e= _0x6420x1c;_0x6420x16= 200}else {_0x6420x16= 206};_0x6420x15[_0xc326[29]](_0x6420x16);logger[_0xc326[24]](_0xc326[22],_0x6420x17,_0x6420x16,_0xc326[36]);logger[_0xc326[26]](_0xc326[25],_0x6420x17,_0x6420x16,_0xc326[30],JSON[_0xc326[31]](_0x6420x18));return _0x6420x15[_0xc326[40]](_0xc326[37],_0x6420x1d+ _0xc326[38]+ _0x6420x1e+ _0xc326[39]+ _0x6420x1c)[_0xc326[32]](_0x6420x18)};return null}}function patchUpdates(_0x6420x20){return function(_0x6420x18){try{jsonpatch[_0xc326[41]](_0x6420x18,_0x6420x20,true)}catch(err){return BPromise[_0xc326[42]](err)};return _0x6420x18[_0xc326[43]]()}}function saveUpdates(_0x6420x22,_0x6420x16,_0x6420x17){return function(_0x6420x18){if(_0x6420x18){return _0x6420x18[_0xc326[46]](_0x6420x22)[_0xc326[45]](function(_0x6420x23){logger[_0xc326[24]](_0xc326[22],_0x6420x17,_0x6420x16,_0xc326[44]);logger[_0xc326[26]](_0xc326[25],_0x6420x17,_0x6420x16,_0xc326[44],JSON[_0xc326[31]](_0x6420x18));return _0x6420x23})};return null}}function removeEntity(_0x6420x15,_0x6420x16,_0x6420x17){return function(_0x6420x18){if(_0x6420x18){return _0x6420x18[_0xc326[48]]()[_0xc326[45]](function(){logger[_0xc326[24]](_0xc326[22],_0x6420x17,_0x6420x16,_0xc326[47]);logger[_0xc326[26]](_0xc326[25],_0x6420x17,_0x6420x16,_0xc326[47],JSON[_0xc326[31]](_0x6420x18));_0x6420x15[_0xc326[29]](204)[_0xc326[28]]()})}}}function handleEntityNotFound(_0x6420x15,_0x6420x16,_0x6420x17){return function(_0x6420x18){if(!_0x6420x18){logger[_0xc326[50]](_0xc326[22],_0x6420x17,404,_0xc326[49]);_0x6420x15[_0xc326[29]](404)[_0xc326[28]]();return null};return _0x6420x18}}function handleError(_0x6420x15,_0x6420x16,_0x6420x17){_0x6420x16= _0x6420x16|| 500;return function(_0x6420x27){logger[_0xc326[50]](_0xc326[22],_0x6420x17,_0x6420x16,JSON[_0xc326[31]](_0x6420x27));delete _0x6420x27[_0xc326[51]];_0x6420x15[_0xc326[29]](_0x6420x16)[_0xc326[52]](_0x6420x27)}}exports[_0xc326[53]]= function(_0x6420x28,_0x6420x15){var _0x6420x1b={},_0x6420x29={};_0x6420x29[_0xc326[54]]= _[_0xc326[57]](db[_0xc326[56]][_0xc326[55]]);_0x6420x29[_0xc326[58]]= _[_0xc326[57]](_0x6420x28[_0xc326[58]]);_0x6420x29[_0xc326[59]]= _[_0xc326[60]](_0x6420x29[_0xc326[54]],_0x6420x29[_0xc326[58]]);_0x6420x1b[_0xc326[61]]= _[_0xc326[60]](_0x6420x29[_0xc326[54]],qs[_0xc326[62]](_0x6420x28[_0xc326[58]][_0xc326[62]]));_0x6420x1b[_0xc326[61]]= (_0x6420x1b[_0xc326[61]][_0xc326[63]])?_0x6420x1b[_0xc326[61]]:_0x6420x29[_0xc326[54]];if(!_0x6420x28[_0xc326[58]][_0xc326[65]](_0xc326[64])){_0x6420x1b[_0xc326[35]]= qs[_0xc326[35]](_0x6420x28[_0xc326[58]][_0xc326[35]]);_0x6420x1b[_0xc326[34]]= qs[_0xc326[34]](_0x6420x28[_0xc326[58]][_0xc326[34]])};_0x6420x1b[_0xc326[66]]= qs[_0xc326[67]](_0x6420x28[_0xc326[58]][_0xc326[67]]);_0x6420x1b[_0xc326[68]]= qs[_0xc326[59]](_[_0xc326[69]](_0x6420x28[_0xc326[58]],_0x6420x29[_0xc326[59]]));if(_0x6420x28[_0xc326[58]][_0xc326[70]]){_0x6420x1b[_0xc326[68]]= _[_0xc326[73]](_0x6420x1b[_0xc326[68]],{$or:_[_0xc326[72]](_0x6420x1b[_0xc326[61]],function(_0x6420x2a){var _0x6420x2b={};_0x6420x2b[_0x6420x2a]= {$like:_0xc326[71]+ _0x6420x28[_0xc326[58]][_0xc326[70]]+ _0xc326[71]};return _0x6420x2b})})};_0x6420x1b= _[_0xc326[73]]({},_0x6420x1b,_0x6420x28[_0xc326[74]]);return db[_0xc326[56]][_0xc326[76]](_0x6420x1b)[_0xc326[45]](respondWithFilteredResult(_0x6420x15,_0x6420x1b,_0xc326[53]))[_0xc326[75]](handleError(_0x6420x15,null,_0xc326[53]))};exports[_0xc326[77]]= function(_0x6420x28,_0x6420x15){var _0x6420x1b={raw:true,where:{id:_0x6420x28[_0xc326[79]][_0xc326[78]]}},_0x6420x29={};_0x6420x29[_0xc326[54]]= _[_0xc326[57]](db[_0xc326[56]][_0xc326[55]]);_0x6420x29[_0xc326[58]]= _[_0xc326[57]](_0x6420x28[_0xc326[58]]);_0x6420x29[_0xc326[59]]= _[_0xc326[60]](_0x6420x29[_0xc326[54]],_0x6420x29[_0xc326[58]]);_0x6420x1b[_0xc326[61]]= _[_0xc326[60]](_0x6420x29[_0xc326[54]],qs[_0xc326[62]](_0x6420x28[_0xc326[58]][_0xc326[62]]));_0x6420x1b[_0xc326[61]]= (_0x6420x1b[_0xc326[61]][_0xc326[63]])?_0x6420x1b[_0xc326[61]]:_0x6420x29[_0xc326[54]];_0x6420x1b= _[_0xc326[73]]({},_0x6420x1b,_0x6420x28[_0xc326[74]]);return db[_0xc326[56]][_0xc326[80]](_0x6420x1b)[_0xc326[45]](handleEntityNotFound(_0x6420x15,null,_0xc326[77]))[_0xc326[45]](respondWithResult(_0x6420x15,null,_0xc326[77]))[_0xc326[75]](handleError(_0x6420x15,null,_0xc326[77]))};exports[_0xc326[81]]= function(_0x6420x28,_0x6420x15){return db[_0xc326[56]][_0xc326[81]](_0x6420x28[_0xc326[82]],{})[_0xc326[45]](respondWithResult(_0x6420x15,201,_0xc326[81]))[_0xc326[75]](handleError(_0x6420x15,null,_0xc326[81]))};exports[_0xc326[46]]= function(_0x6420x28,_0x6420x15){if(_0x6420x28[_0xc326[82]][_0xc326[78]]){delete _0x6420x28[_0xc326[82]][_0xc326[78]]};return db[_0xc326[56]][_0xc326[80]]({where:{id:_0x6420x28[_0xc326[79]][_0xc326[78]]}})[_0xc326[45]](handleEntityNotFound(_0x6420x15,null,_0xc326[46]))[_0xc326[45]](saveUpdates(_0x6420x28[_0xc326[82]],null,_0xc326[46]))[_0xc326[45]](respondWithResult(_0x6420x15,null,_0xc326[46]))[_0xc326[75]](handleError(_0x6420x15,null,_0xc326[46]))};exports[_0xc326[48]]= function(_0x6420x28,_0x6420x15){return db[_0xc326[56]][_0xc326[80]]({where:{id:_0x6420x28[_0xc326[79]][_0xc326[78]]}})[_0xc326[45]](handleEntityNotFound(_0x6420x15,null,_0xc326[48]))[_0xc326[45]](removeEntity(_0x6420x15,null,_0xc326[48]))[_0xc326[75]](handleError(_0x6420x15,null,_0xc326[48]))};exports[_0xc326[83]]= function(_0x6420x28,_0x6420x15){var _0x6420x2c=10;var _0x6420x2d={"\x53\x55\x4D":_0xc326[84],"\x43\x4F\x55\x4E\x54":_0xc326[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0xc326[86],"\x4D\x41\x58":_0xc326[87],"\x4D\x49\x4E":_0xc326[88],"\x41\x56\x47":_0xc326[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0xc326[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0xc326[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0xc326[92]};var _0x6420x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0xc326[93],"\x44\x41\x54\x45":_0xc326[94],"\x48\x4F\x55\x52":_0xc326[95],"\x52\x4F\x55\x4E\x44":_0xc326[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0xc326[97]};var _0x6420x2f=function(_0x6420x30){return !_[_0xc326[102]]([_0xc326[98],_0xc326[99],_0xc326[100],_0xc326[101]],_0x6420x30)};var _0x6420x31=function(_0x6420x32){if(!_0x6420x32||  !_0x6420x32[_0xc326[103]][_0xc326[63]]){return _0xc326[104]};for(var _0x6420x33=_0xc326[105],_0x6420x34=0;_0x6420x34< _0x6420x32[_0xc326[103]][_0xc326[63]];_0x6420x34+= 1){_0x6420x34> 0&& (_0x6420x33+= _0xc326[106]+ _0x6420x32[_0xc326[107]]+ _0xc326[106]);_0x6420x33+= _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[108]]?_0x6420x31(_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[108]]):_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[109]]+ _0xc326[106]+ _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[110]]+ (_0x6420x2f(_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[110]])?_0xc326[106]+ _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[111]]:_0xc326[104])};return _0x6420x33+ _0xc326[112]};var _0x6420x1b={where:{id:_0x6420x28[_0xc326[79]][_0xc326[78]]}},_0x6420x35,_0x6420x36,_0x6420x37,_0x6420x38,_0x6420x39;_0x6420x1b= _[_0xc326[73]]({},_0x6420x1b,_0x6420x28[_0xc326[74]]);return db[_0xc326[56]][_0xc326[80]](_0x6420x1b)[_0xc326[45]](handleEntityNotFound(_0x6420x15,null,_0xc326[83]))[_0xc326[45]](function(_0x6420x18){if(_0x6420x18){_0x6420x35= _0x6420x18;return _0x6420x18[_0xc326[138]]()};return null})[_0xc326[45]](function(_0x6420x3a){if(_0x6420x3a){if(!_0x6420x3a[_0xc326[63]]){throw  new db[_0xc326[135]].ValidationError(_0xc326[134])};_0x6420x36= _0x6420x3a;return db[_0xc326[137]][_0xc326[136]]({raw:true})};return null})[_0xc326[45]](function(_0x6420x3a){if(_0x6420x3a){_0x6420x37= _[_0xc326[113]](_0x6420x3a,_0xc326[78]);var _0x6420x3b;var _0x6420x3c=squel[_0xc326[114]]();_0x6420x3c[_0xc326[116]](_0x6420x35[_0xc326[115]]);for(var _0x6420x34=0;_0x6420x34< _0x6420x36[_0xc326[63]];_0x6420x34+= 1){_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[117]]?_0x6420x37[_0x6420x36[_0x6420x34][_0xc326[117]]][_0xc326[118]]:_0x6420x36[_0x6420x34][_0xc326[109]];_0x6420x36[_0x6420x34][_0xc326[119]]&& _0x6420x3c[_0xc326[108]](_0x6420x36[_0x6420x34][_0xc326[109]]);_0x6420x36[_0x6420x34][_0xc326[120]]&& _0x6420x3c[_0xc326[66]](_0x6420x36[_0x6420x34][_0xc326[109]],_0x6420x36[_0x6420x34][_0xc326[120]]=== _0xc326[121]?false:true);_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[122]]?_[_0xc326[124]](_0x6420x2d[_0x6420x36[_0x6420x34][_0xc326[122]]],_0xc326[123],_0x6420x36[_0x6420x34][_0xc326[109]]):_0x6420x3b;_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[125]]?_[_0xc326[124]](_0x6420x2e[_0x6420x36[_0x6420x34][_0xc326[125]]],_0xc326[123],_0x6420x3b):_0x6420x3b;_0x6420x3c[_0xc326[109]](_0x6420x3b,_0x6420x36[_0x6420x34][_0xc326[126]]|| _0x6420x3b)};_0x6420x35[_0xc326[127]]&& _0x6420x3c[_0xc326[68]](_0x6420x31(JSON[_0xc326[128]](_0x6420x35[_0xc326[127]])[_0xc326[108]]));_0x6420x39= _0x6420x3c[_0xc326[129]]();_0x6420x3c[_0xc326[35]](_0x6420x2c);_0x6420x3c[_0xc326[34]](0);logger[_0xc326[24]](_0xc326[130],_0x6420x3c.toString());return db[_0xc326[133]][_0xc326[58]](_0x6420x3c.toString(),{type:db[_0xc326[133]][_0xc326[132]][_0xc326[131]]})}})[_0xc326[45]](respondWithResult(_0x6420x15,null,_0xc326[83]))[_0xc326[75]](handleError(_0x6420x15,null,_0xc326[83]))};exports[_0xc326[139]]= function(_0x6420x28,_0x6420x15){var _0x6420x2c=10;var _0x6420x2d={"\x53\x55\x4D":_0xc326[84],"\x43\x4F\x55\x4E\x54":_0xc326[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0xc326[86],"\x4D\x41\x58":_0xc326[87],"\x4D\x49\x4E":_0xc326[88],"\x41\x56\x47":_0xc326[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0xc326[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0xc326[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0xc326[92]};var _0x6420x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0xc326[93],"\x44\x41\x54\x45":_0xc326[94],"\x48\x4F\x55\x52":_0xc326[95],"\x52\x4F\x55\x4E\x44":_0xc326[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0xc326[97]};var _0x6420x2f=function(_0x6420x30){return !_[_0xc326[102]]([_0xc326[98],_0xc326[99],_0xc326[100],_0xc326[101]],_0x6420x30)};var _0x6420x31=function(_0x6420x32){if(!_0x6420x32||  !_0x6420x32[_0xc326[103]][_0xc326[63]]){return _0xc326[104]};for(var _0x6420x33=_0xc326[105],_0x6420x34=0;_0x6420x34< _0x6420x32[_0xc326[103]][_0xc326[63]];_0x6420x34+= 1){_0x6420x34> 0&& (_0x6420x33+= _0xc326[106]+ _0x6420x32[_0xc326[107]]+ _0xc326[106]);_0x6420x33+= _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[108]]?_0x6420x31(_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[108]]):_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[109]]+ _0xc326[106]+ _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[110]]+ (_0x6420x2f(_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[110]])?_0xc326[106]+ _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[111]]:_0xc326[104])};return _0x6420x33+ _0xc326[112]};var _0x6420x1b={where:{id:_0x6420x28[_0xc326[79]][_0xc326[78]]}},_0x6420x35,_0x6420x36,_0x6420x37,_0x6420x38,_0x6420x39;_0x6420x1b= _[_0xc326[73]]({},_0x6420x1b,_0x6420x28[_0xc326[74]]);return db[_0xc326[56]][_0xc326[80]](_0x6420x1b)[_0xc326[45]](handleEntityNotFound(_0x6420x15,null,_0xc326[83]))[_0xc326[45]](function(_0x6420x18){if(_0x6420x18){_0x6420x35= _0x6420x18;return _0x6420x18[_0xc326[138]]()};return null})[_0xc326[45]](function(_0x6420x3a){if(_0x6420x3a){if(!_0x6420x3a[_0xc326[63]]){throw  new db[_0xc326[135]].ValidationError(_0xc326[134])};_0x6420x36= _0x6420x3a;return db[_0xc326[137]][_0xc326[136]]({raw:true})};return null})[_0xc326[45]](function(_0x6420x3a){if(_0x6420x3a){_0x6420x37= _[_0xc326[113]](_0x6420x3a,_0xc326[78]);var _0x6420x3b;var _0x6420x3c=squel[_0xc326[114]]();_0x6420x3c[_0xc326[116]](_0x6420x35[_0xc326[115]]);for(var _0x6420x34=0;_0x6420x34< _0x6420x36[_0xc326[63]];_0x6420x34+= 1){_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[117]]?_0x6420x37[_0x6420x36[_0x6420x34][_0xc326[117]]][_0xc326[118]]:_0x6420x36[_0x6420x34][_0xc326[109]];_0x6420x36[_0x6420x34][_0xc326[119]]&& _0x6420x3c[_0xc326[108]](_0x6420x36[_0x6420x34][_0xc326[109]]);_0x6420x36[_0x6420x34][_0xc326[120]]&& _0x6420x3c[_0xc326[66]](_0x6420x36[_0x6420x34][_0xc326[109]],_0x6420x36[_0x6420x34][_0xc326[120]]=== _0xc326[121]?false:true);_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[122]]?_[_0xc326[124]](_0x6420x2d[_0x6420x36[_0x6420x34][_0xc326[122]]],_0xc326[123],_0x6420x36[_0x6420x34][_0xc326[109]]):_0x6420x3b;_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[125]]?_[_0xc326[124]](_0x6420x2e[_0x6420x36[_0x6420x34][_0xc326[125]]],_0xc326[123],_0x6420x3b):_0x6420x3b;_0x6420x3c[_0xc326[109]](_0x6420x3b,_0x6420x36[_0x6420x34][_0xc326[126]]|| _0x6420x3b)};_0x6420x35[_0xc326[127]]&& _0x6420x3c[_0xc326[68]](_0x6420x31(JSON[_0xc326[128]](_0x6420x35[_0xc326[127]])[_0xc326[108]]));_0x6420x39= _0x6420x3c[_0xc326[129]]();_0x6420x3c[_0xc326[35]](_0x6420x2c);_0x6420x3c[_0xc326[34]](0);logger[_0xc326[24]](_0xc326[130],_0x6420x3c.toString());return db[_0xc326[133]][_0xc326[58]](_0x6420x3c.toString(),{type:db[_0xc326[133]][_0xc326[132]][_0xc326[131]]})}})[_0xc326[45]](function(_0x6420x3a){if(!_0x6420x3a[_0xc326[63]]){throw  new db[_0xc326[135]].ValidationError(_0xc326[151])};var _0x6420x3d=_[_0xc326[73]](_0x6420x28[_0xc326[58]],{name:_0x6420x28[_0xc326[58]][_0xc326[51]]|| _0x6420x35[_0xc326[51]],savename:util[_0xc326[125]](_0xc326[152],_0x6420x28[_0xc326[58]][_0xc326[51]]|| _0x6420x35[_0xc326[51]],require(_0xc326[154])[_0xc326[153]](4),_0x6420x28[_0xc326[58]][_0xc326[145]]|| _0xc326[155])});return db[_0xc326[156]][_0xc326[81]](_0x6420x3d,{raw:true})})[_0xc326[45]](function(_0x6420x18){if(_0x6420x18){_0x6420x39[_0xc326[68]](_0xc326[140],_0x6420x18[_0xc326[141]],_0x6420x18[_0xc326[142]]);logger[_0xc326[24]](_0xc326[143],_0x6420x39.toString());require(_0xc326[150])[_0xc326[149]](path[_0xc326[146]](__dirname,_0xc326[144],_0x6420x18[_0xc326[145]]),[_0x6420x18[_0xc326[78]],_0x6420x39.toString(),path[_0xc326[146]](__dirname,_0xc326[147],_0x6420x18[_0xc326[148]])]);return _0x6420x18};return null})[_0xc326[45]](respondWithResult(_0x6420x15,null,_0xc326[139]))[_0xc326[75]](handleError(_0x6420x15,null,_0xc326[139]))};exports[_0xc326[58]]= function(_0x6420x28,_0x6420x15){var _0x6420x2c=10;var _0x6420x2d={"\x53\x55\x4D":_0xc326[84],"\x43\x4F\x55\x4E\x54":_0xc326[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0xc326[86],"\x4D\x41\x58":_0xc326[87],"\x4D\x49\x4E":_0xc326[88],"\x41\x56\x47":_0xc326[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0xc326[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0xc326[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0xc326[92]};var _0x6420x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0xc326[93],"\x44\x41\x54\x45":_0xc326[94],"\x48\x4F\x55\x52":_0xc326[95],"\x52\x4F\x55\x4E\x44":_0xc326[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0xc326[97]};var _0x6420x2f=function(_0x6420x30){return !_[_0xc326[102]]([_0xc326[98],_0xc326[99],_0xc326[100],_0xc326[101]],_0x6420x30)};var _0x6420x31=function(_0x6420x32){if(!_0x6420x32||  !_0x6420x32[_0xc326[103]][_0xc326[63]]){return _0xc326[104]};for(var _0x6420x33=_0xc326[105],_0x6420x34=0;_0x6420x34< _0x6420x32[_0xc326[103]][_0xc326[63]];_0x6420x34+= 1){_0x6420x34> 0&& (_0x6420x33+= _0xc326[106]+ _0x6420x32[_0xc326[107]]+ _0xc326[106]);_0x6420x33+= _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[108]]?_0x6420x31(_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[108]]):_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[109]]+ _0xc326[106]+ _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[110]]+ (_0x6420x2f(_0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[110]])?_0xc326[106]+ _0x6420x32[_0xc326[103]][_0x6420x34][_0xc326[111]]:_0xc326[104])};return _0x6420x33+ _0xc326[112]};var _0x6420x1b={where:{id:_0x6420x28[_0xc326[79]][_0xc326[78]]}},_0x6420x35,_0x6420x36,_0x6420x37,_0x6420x38,_0x6420x39;_0x6420x1b= _[_0xc326[73]]({},_0x6420x1b,_0x6420x28[_0xc326[74]]);return db[_0xc326[56]][_0xc326[80]](_0x6420x1b)[_0xc326[45]](handleEntityNotFound(_0x6420x15,null,_0xc326[83]))[_0xc326[45]](function(_0x6420x18){if(_0x6420x18){_0x6420x35= _0x6420x18;return _0x6420x18[_0xc326[138]]()};return null})[_0xc326[45]](function(_0x6420x3a){if(_0x6420x3a){if(!_0x6420x3a[_0xc326[63]]){throw  new db[_0xc326[135]].ValidationError(_0xc326[134])};_0x6420x36= _0x6420x3a;return db[_0xc326[137]][_0xc326[136]]({raw:true})};return null})[_0xc326[45]](function(_0x6420x3a){if(_0x6420x3a){_0x6420x37= _[_0xc326[113]](_0x6420x3a,_0xc326[78]);var _0x6420x3b;var _0x6420x3c=squel[_0xc326[114]]();_0x6420x3c[_0xc326[116]](_0x6420x35[_0xc326[115]]);for(var _0x6420x34=0;_0x6420x34< _0x6420x36[_0xc326[63]];_0x6420x34+= 1){_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[117]]?_0x6420x37[_0x6420x36[_0x6420x34][_0xc326[117]]][_0xc326[118]]:_0x6420x36[_0x6420x34][_0xc326[109]];_0x6420x36[_0x6420x34][_0xc326[119]]&& _0x6420x3c[_0xc326[108]](_0x6420x36[_0x6420x34][_0xc326[109]]);_0x6420x36[_0x6420x34][_0xc326[120]]&& _0x6420x3c[_0xc326[66]](_0x6420x36[_0x6420x34][_0xc326[109]],_0x6420x36[_0x6420x34][_0xc326[120]]=== _0xc326[121]?false:true);_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[122]]?_[_0xc326[124]](_0x6420x2d[_0x6420x36[_0x6420x34][_0xc326[122]]],_0xc326[123],_0x6420x36[_0x6420x34][_0xc326[109]]):_0x6420x3b;_0x6420x3b= _0x6420x36[_0x6420x34][_0xc326[125]]?_[_0xc326[124]](_0x6420x2e[_0x6420x36[_0x6420x34][_0xc326[125]]],_0xc326[123],_0x6420x3b):_0x6420x3b;_0x6420x3c[_0xc326[109]](_0x6420x3b,_0x6420x36[_0x6420x34][_0xc326[126]]|| _0x6420x3b)};_0x6420x35[_0xc326[127]]&& _0x6420x3c[_0xc326[68]](_0x6420x31(JSON[_0xc326[128]](_0x6420x35[_0xc326[127]])[_0xc326[108]]));_0x6420x39= _0x6420x3c[_0xc326[129]]();_0x6420x3c[_0xc326[35]](_0x6420x2c);_0x6420x3c[_0xc326[34]](0);logger[_0xc326[24]](_0xc326[130],_0x6420x3c.toString());return db[_0xc326[133]][_0xc326[58]](_0x6420x3c.toString(),{type:db[_0xc326[133]][_0xc326[132]][_0xc326[131]]})}})[_0xc326[45]](function(){return {sql:_0x6420x39.toString()}})[_0xc326[45]](respondWithResult(_0x6420x15,null,_0xc326[58]))[_0xc326[75]](handleError(_0x6420x15,null,_0xc326[58]))}
\ No newline at end of file
+var _0xda72=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x70\x72\x65\x76\x69\x65\x77","\x53\x55\x4D\x28\x25\x73\x29","\x43\x4F\x55\x4E\x54\x28\x25\x73\x29","\x43\x4F\x55\x4E\x54\x28\x44\x49\x53\x54\x49\x4E\x43\x54\x20\x25\x73\x29","\x4D\x41\x58\x28\x25\x73\x29","\x4D\x49\x4E\x28\x25\x73\x29","\x41\x56\x47\x28\x25\x73\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x20\x4F\x52\x44\x45\x52\x20\x42\x59\x20\x25\x73\x20\x41\x53\x43\x29","\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x28\x25\x73\x20\x4F\x52\x44\x45\x52\x20\x42\x59\x20\x25\x73\x20\x44\x45\x53\x43\x29","\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45\x28\x25\x73\x29","\x44\x41\x54\x45\x28\x25\x73\x29","\x48\x4F\x55\x52\x28\x25\x73\x29","\x52\x4F\x55\x4E\x44\x28\x25\x73\x29","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x25\x73\x29","\x49\x53\x20\x4E\x55\x4C\x4C","\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C","\x49\x53\x20\x45\x4D\x50\x54\x59","\x49\x53\x20\x4E\x4F\x54\x20\x45\x4D\x50\x54\x59","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x72\x75\x6C\x65\x73","","\x28","\x20","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x67\x72\x6F\x75\x70","\x66\x69\x65\x6C\x64","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x76\x61\x6C\x75\x65","\x29","\x6B\x65\x79\x42\x79","\x73\x65\x6C\x65\x63\x74","\x74\x61\x62\x6C\x65","\x66\x72\x6F\x6D","\x4D\x65\x74\x72\x69\x63\x49\x64","\x6D\x65\x74\x72\x69\x63","\x67\x72\x6F\x75\x70\x42\x79","\x6F\x72\x64\x65\x72\x42\x79","\x44\x45\x53\x43","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x25\x73","\x72\x65\x70\x6C\x61\x63\x65","\x66\x6F\x72\x6D\x61\x74","\x61\x6C\x69\x61\x73","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x70\x61\x72\x73\x65","\x63\x6C\x6F\x6E\x65","\x4C\x69\x6D\x69\x74\x65\x64\x20\x51\x75\x65\x72\x79\x3A","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x50\x6C\x65\x61\x73\x65\x20\x69\x6E\x73\x65\x72\x74\x20\x61\x74\x20\x6C\x65\x61\x73\x74\x20\x6F\x6E\x65\x20\x66\x69\x65\x6C\x64\x21","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x6E\x64\x41\x6C\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x72\x75\x6E","\x63\x72\x65\x61\x74\x65\x64\x41\x74\x20\x42\x45\x54\x57\x45\x45\x4E\x20\x3F\x20\x41\x4E\x44\x20\x3F","\x73\x74\x61\x72\x74\x44\x61\x74\x65","\x65\x6E\x64\x44\x61\x74\x65","\x52\x75\x6E\x20\x51\x75\x65\x72\x79\x3A","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x65\x78\x70\x6F\x72\x74\x2F","\x6F\x75\x74\x70\x75\x74","\x6A\x6F\x69\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x66\x69\x6C\x65\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x73\x61\x76\x65\x6E\x61\x6D\x65","\x66\x6F\x72\x6B","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x4E\x6F\x20\x44\x61\x74\x61\x21","\x25\x73\x2D\x25\x73\x2E\x25\x73","\x67\x65\x6E\x65\x72\x61\x74\x65","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x63\x73\x76","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74"];_0xda72[0];var jsonpatch=require(_0xda72[1]);var rp=require(_0xda72[2]);var moment=require(_0xda72[3]);var BPromise=require(_0xda72[4]);var util=require(_0xda72[5]);var path=require(_0xda72[6]);var sox=require(_0xda72[7]);var ejs=require(_0xda72[8]);var fs=require(_0xda72[9]);var _=require(_0xda72[10]);var squel=require(_0xda72[11]);var crypto=require(_0xda72[12]);var jsforce=require(_0xda72[13]);var toCsv=require(_0xda72[14]);var qs=require(_0xda72[15]);var logger=require(_0xda72[17])(_0xda72[16]);var utils=require(_0xda72[18]);var config=require(_0xda72[19]);var db=require(_0xda72[21])[_0xda72[20]];function respondWithStatusCode(_0xa7a7x15,_0xa7a7x16,_0xa7a7x17){_0xa7a7x16= _0xa7a7x16|| 204;return function(_0xa7a7x18){if(_0xa7a7x18){logger[_0xda72[24]](_0xda72[22],_0xa7a7x17,_0xa7a7x16,_0xda72[23]);logger[_0xda72[26]](_0xda72[25],_0xa7a7x17,_0xa7a7x16,_0xda72[23]);return _0xa7a7x15[_0xda72[27]](_0xa7a7x16)};return _0xa7a7x15[_0xda72[29]](304)[_0xda72[28]]()}}function respondWithResult(_0xa7a7x15,_0xa7a7x16,_0xa7a7x17){_0xa7a7x16= _0xa7a7x16|| 200;return function(_0xa7a7x18){if(_0xa7a7x18){logger[_0xda72[24]](_0xda72[22],_0xa7a7x17,_0xa7a7x16,_0xda72[30]);logger[_0xda72[26]](_0xda72[25],_0xa7a7x17,_0xa7a7x16,_0xda72[30],JSON[_0xda72[31]](_0xa7a7x18));return _0xa7a7x15[_0xda72[29]](_0xa7a7x16)[_0xda72[32]](_0xa7a7x18)};return _0xa7a7x15[_0xda72[29]](304)[_0xda72[28]]()}}function respondWithFilteredResult(_0xa7a7x15,_0xa7a7x1b,_0xa7a7x17){return function(_0xa7a7x18){if(_0xa7a7x18){var _0xa7a7x1c=_0xa7a7x18[_0xda72[33]],_0xa7a7x1d=_0xa7a7x1b[_0xda72[34]],_0xa7a7x1e=_0xa7a7x1b[_0xda72[34]]+ _0xa7a7x1b[_0xda72[35]],_0xa7a7x16;if(_0xa7a7x1e>= _0xa7a7x1c){_0xa7a7x1e= _0xa7a7x1c;_0xa7a7x16= 200}else {_0xa7a7x16= 206};_0xa7a7x15[_0xda72[29]](_0xa7a7x16);logger[_0xda72[24]](_0xda72[22],_0xa7a7x17,_0xa7a7x16,_0xda72[36]);logger[_0xda72[26]](_0xda72[25],_0xa7a7x17,_0xa7a7x16,_0xda72[30],JSON[_0xda72[31]](_0xa7a7x18));return _0xa7a7x15[_0xda72[40]](_0xda72[37],_0xa7a7x1d+ _0xda72[38]+ _0xa7a7x1e+ _0xda72[39]+ _0xa7a7x1c)[_0xda72[32]](_0xa7a7x18)};return null}}function patchUpdates(_0xa7a7x20){return function(_0xa7a7x18){try{jsonpatch[_0xda72[41]](_0xa7a7x18,_0xa7a7x20,true)}catch(err){return BPromise[_0xda72[42]](err)};return _0xa7a7x18[_0xda72[43]]()}}function saveUpdates(_0xa7a7x22,_0xa7a7x16,_0xa7a7x17){return function(_0xa7a7x18){if(_0xa7a7x18){return _0xa7a7x18[_0xda72[46]](_0xa7a7x22)[_0xda72[45]](function(_0xa7a7x23){logger[_0xda72[24]](_0xda72[22],_0xa7a7x17,_0xa7a7x16,_0xda72[44]);logger[_0xda72[26]](_0xda72[25],_0xa7a7x17,_0xa7a7x16,_0xda72[44],JSON[_0xda72[31]](_0xa7a7x18));return _0xa7a7x23})};return null}}function removeEntity(_0xa7a7x15,_0xa7a7x16,_0xa7a7x17){return function(_0xa7a7x18){if(_0xa7a7x18){return _0xa7a7x18[_0xda72[48]]()[_0xda72[45]](function(){logger[_0xda72[24]](_0xda72[22],_0xa7a7x17,_0xa7a7x16,_0xda72[47]);logger[_0xda72[26]](_0xda72[25],_0xa7a7x17,_0xa7a7x16,_0xda72[47],JSON[_0xda72[31]](_0xa7a7x18));_0xa7a7x15[_0xda72[29]](204)[_0xda72[28]]()})}}}function handleEntityNotFound(_0xa7a7x15,_0xa7a7x16,_0xa7a7x17){return function(_0xa7a7x18){if(!_0xa7a7x18){logger[_0xda72[50]](_0xda72[22],_0xa7a7x17,404,_0xda72[49]);_0xa7a7x15[_0xda72[29]](404)[_0xda72[28]]();return null};return _0xa7a7x18}}function handleError(_0xa7a7x15,_0xa7a7x16,_0xa7a7x17){_0xa7a7x16= _0xa7a7x16|| 500;return function(_0xa7a7x27){logger[_0xda72[50]](_0xda72[22],_0xa7a7x17,_0xa7a7x16,JSON[_0xda72[31]](_0xa7a7x27));delete _0xa7a7x27[_0xda72[51]];_0xa7a7x15[_0xda72[29]](_0xa7a7x16)[_0xda72[52]](_0xa7a7x27)}}exports[_0xda72[53]]= function(_0xa7a7x28,_0xa7a7x15){var _0xa7a7x1b={},_0xa7a7x29={};_0xa7a7x29[_0xda72[54]]= _[_0xda72[57]](db[_0xda72[56]][_0xda72[55]]);_0xa7a7x29[_0xda72[58]]= _[_0xda72[57]](_0xa7a7x28[_0xda72[58]]);_0xa7a7x29[_0xda72[59]]= _[_0xda72[60]](_0xa7a7x29[_0xda72[54]],_0xa7a7x29[_0xda72[58]]);_0xa7a7x1b[_0xda72[61]]= _[_0xda72[60]](_0xa7a7x29[_0xda72[54]],qs[_0xda72[62]](_0xa7a7x28[_0xda72[58]][_0xda72[62]]));_0xa7a7x1b[_0xda72[61]]= (_0xa7a7x1b[_0xda72[61]][_0xda72[63]])?_0xa7a7x1b[_0xda72[61]]:_0xa7a7x29[_0xda72[54]];if(!_0xa7a7x28[_0xda72[58]][_0xda72[65]](_0xda72[64])){_0xa7a7x1b[_0xda72[35]]= qs[_0xda72[35]](_0xa7a7x28[_0xda72[58]][_0xda72[35]]);_0xa7a7x1b[_0xda72[34]]= qs[_0xda72[34]](_0xa7a7x28[_0xda72[58]][_0xda72[34]])};_0xa7a7x1b[_0xda72[66]]= qs[_0xda72[67]](_0xa7a7x28[_0xda72[58]][_0xda72[67]]);_0xa7a7x1b[_0xda72[68]]= qs[_0xda72[59]](_[_0xda72[69]](_0xa7a7x28[_0xda72[58]],_0xa7a7x29[_0xda72[59]]));if(_0xa7a7x28[_0xda72[58]][_0xda72[70]]){_0xa7a7x1b[_0xda72[68]]= _[_0xda72[73]](_0xa7a7x1b[_0xda72[68]],{$or:_[_0xda72[72]](_0xa7a7x1b[_0xda72[61]],function(_0xa7a7x2a){var _0xa7a7x2b={};_0xa7a7x2b[_0xa7a7x2a]= {$like:_0xda72[71]+ _0xa7a7x28[_0xda72[58]][_0xda72[70]]+ _0xda72[71]};return _0xa7a7x2b})})};_0xa7a7x1b= _[_0xda72[73]]({},_0xa7a7x1b,_0xa7a7x28[_0xda72[74]]);return db[_0xda72[56]][_0xda72[76]](_0xa7a7x1b)[_0xda72[45]](respondWithFilteredResult(_0xa7a7x15,_0xa7a7x1b,_0xda72[53]))[_0xda72[75]](handleError(_0xa7a7x15,null,_0xda72[53]))};exports[_0xda72[77]]= function(_0xa7a7x28,_0xa7a7x15){var _0xa7a7x1b={raw:true,where:{id:_0xa7a7x28[_0xda72[79]][_0xda72[78]]}},_0xa7a7x29={};_0xa7a7x29[_0xda72[54]]= _[_0xda72[57]](db[_0xda72[56]][_0xda72[55]]);_0xa7a7x29[_0xda72[58]]= _[_0xda72[57]](_0xa7a7x28[_0xda72[58]]);_0xa7a7x29[_0xda72[59]]= _[_0xda72[60]](_0xa7a7x29[_0xda72[54]],_0xa7a7x29[_0xda72[58]]);_0xa7a7x1b[_0xda72[61]]= _[_0xda72[60]](_0xa7a7x29[_0xda72[54]],qs[_0xda72[62]](_0xa7a7x28[_0xda72[58]][_0xda72[62]]));_0xa7a7x1b[_0xda72[61]]= (_0xa7a7x1b[_0xda72[61]][_0xda72[63]])?_0xa7a7x1b[_0xda72[61]]:_0xa7a7x29[_0xda72[54]];_0xa7a7x1b= _[_0xda72[73]]({},_0xa7a7x1b,_0xa7a7x28[_0xda72[74]]);return db[_0xda72[56]][_0xda72[80]](_0xa7a7x1b)[_0xda72[45]](handleEntityNotFound(_0xa7a7x15,null,_0xda72[77]))[_0xda72[45]](respondWithResult(_0xa7a7x15,null,_0xda72[77]))[_0xda72[75]](handleError(_0xa7a7x15,null,_0xda72[77]))};exports[_0xda72[81]]= function(_0xa7a7x28,_0xa7a7x15){return db[_0xda72[56]][_0xda72[81]](_0xa7a7x28[_0xda72[82]],{})[_0xda72[45]](respondWithResult(_0xa7a7x15,201,_0xda72[81]))[_0xda72[75]](handleError(_0xa7a7x15,null,_0xda72[81]))};exports[_0xda72[46]]= function(_0xa7a7x28,_0xa7a7x15){if(_0xa7a7x28[_0xda72[82]][_0xda72[78]]){delete _0xa7a7x28[_0xda72[82]][_0xda72[78]]};return db[_0xda72[56]][_0xda72[80]]({where:{id:_0xa7a7x28[_0xda72[79]][_0xda72[78]]}})[_0xda72[45]](handleEntityNotFound(_0xa7a7x15,null,_0xda72[46]))[_0xda72[45]](saveUpdates(_0xa7a7x28[_0xda72[82]],null,_0xda72[46]))[_0xda72[45]](respondWithResult(_0xa7a7x15,null,_0xda72[46]))[_0xda72[75]](handleError(_0xa7a7x15,null,_0xda72[46]))};exports[_0xda72[48]]= function(_0xa7a7x28,_0xa7a7x15){return db[_0xda72[56]][_0xda72[80]]({where:{id:_0xa7a7x28[_0xda72[79]][_0xda72[78]]}})[_0xda72[45]](handleEntityNotFound(_0xa7a7x15,null,_0xda72[48]))[_0xda72[45]](removeEntity(_0xa7a7x15,null,_0xda72[48]))[_0xda72[75]](handleError(_0xa7a7x15,null,_0xda72[48]))};exports[_0xda72[83]]= function(_0xa7a7x28,_0xa7a7x15){var _0xa7a7x2c=10;var _0xa7a7x2d={"\x53\x55\x4D":_0xda72[84],"\x43\x4F\x55\x4E\x54":_0xda72[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0xda72[86],"\x4D\x41\x58":_0xda72[87],"\x4D\x49\x4E":_0xda72[88],"\x41\x56\x47":_0xda72[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0xda72[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0xda72[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0xda72[92]};var _0xa7a7x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0xda72[93],"\x44\x41\x54\x45":_0xda72[94],"\x48\x4F\x55\x52":_0xda72[95],"\x52\x4F\x55\x4E\x44":_0xda72[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0xda72[97]};var _0xa7a7x2f=function(_0xa7a7x30){return !_[_0xda72[102]]([_0xda72[98],_0xda72[99],_0xda72[100],_0xda72[101]],_0xa7a7x30)};var _0xa7a7x31=function(_0xa7a7x32){if(!_0xa7a7x32||  !_0xa7a7x32[_0xda72[103]][_0xda72[63]]){return _0xda72[104]};for(var _0xa7a7x33=_0xda72[105],_0xa7a7x34=0;_0xa7a7x34< _0xa7a7x32[_0xda72[103]][_0xda72[63]];_0xa7a7x34+= 1){_0xa7a7x34> 0&& (_0xa7a7x33+= _0xda72[106]+ _0xa7a7x32[_0xda72[107]]+ _0xda72[106]);_0xa7a7x33+= _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[108]]?_0xa7a7x31(_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[108]]):_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[109]]+ _0xda72[106]+ _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[110]]+ (_0xa7a7x2f(_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[110]])?_0xda72[106]+ _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[111]]:_0xda72[104])};return _0xa7a7x33+ _0xda72[112]};var _0xa7a7x1b={where:{id:_0xa7a7x28[_0xda72[79]][_0xda72[78]]}},_0xa7a7x35,_0xa7a7x36,_0xa7a7x37,_0xa7a7x38,_0xa7a7x39;_0xa7a7x1b= _[_0xda72[73]]({},_0xa7a7x1b,_0xa7a7x28[_0xda72[74]]);return db[_0xda72[56]][_0xda72[80]](_0xa7a7x1b)[_0xda72[45]](handleEntityNotFound(_0xa7a7x15,null,_0xda72[83]))[_0xda72[45]](function(_0xa7a7x18){if(_0xa7a7x18){_0xa7a7x35= _0xa7a7x18;return _0xa7a7x18[_0xda72[138]]()};return null})[_0xda72[45]](function(_0xa7a7x3a){if(_0xa7a7x3a){if(!_0xa7a7x3a[_0xda72[63]]){throw  new db[_0xda72[135]].ValidationError(_0xda72[134])};_0xa7a7x36= _0xa7a7x3a;return db[_0xda72[137]][_0xda72[136]]({raw:true})};return null})[_0xda72[45]](function(_0xa7a7x3a){if(_0xa7a7x3a){_0xa7a7x37= _[_0xda72[113]](_0xa7a7x3a,_0xda72[78]);var _0xa7a7x3b;var _0xa7a7x3c=squel[_0xda72[114]]();_0xa7a7x3c[_0xda72[116]](_0xa7a7x35[_0xda72[115]]);for(var _0xa7a7x34=0;_0xa7a7x34< _0xa7a7x36[_0xda72[63]];_0xa7a7x34+= 1){_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[117]]?_0xa7a7x37[_0xa7a7x36[_0xa7a7x34][_0xda72[117]]][_0xda72[118]]:_0xa7a7x36[_0xa7a7x34][_0xda72[109]];_0xa7a7x36[_0xa7a7x34][_0xda72[119]]&& _0xa7a7x3c[_0xda72[108]](_0xa7a7x36[_0xa7a7x34][_0xda72[109]]);_0xa7a7x36[_0xa7a7x34][_0xda72[120]]&& _0xa7a7x3c[_0xda72[66]](_0xa7a7x36[_0xa7a7x34][_0xda72[109]],_0xa7a7x36[_0xa7a7x34][_0xda72[120]]=== _0xda72[121]?false:true);_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[122]]?_[_0xda72[124]](_0xa7a7x2d[_0xa7a7x36[_0xa7a7x34][_0xda72[122]]],_0xda72[123],_0xa7a7x36[_0xa7a7x34][_0xda72[109]]):_0xa7a7x3b;_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[125]]?_[_0xda72[124]](_0xa7a7x2e[_0xa7a7x36[_0xa7a7x34][_0xda72[125]]],_0xda72[123],_0xa7a7x3b):_0xa7a7x3b;_0xa7a7x3c[_0xda72[109]](_0xa7a7x3b,_0xa7a7x36[_0xa7a7x34][_0xda72[126]]|| _0xa7a7x3b)};_0xa7a7x35[_0xda72[127]]&& _0xa7a7x3c[_0xda72[68]](_0xa7a7x31(JSON[_0xda72[128]](_0xa7a7x35[_0xda72[127]])[_0xda72[108]]));_0xa7a7x39= _0xa7a7x3c[_0xda72[129]]();_0xa7a7x3c[_0xda72[35]](_0xa7a7x2c);_0xa7a7x3c[_0xda72[34]](0);logger[_0xda72[24]](_0xda72[130],_0xa7a7x3c.toString());return db[_0xda72[133]][_0xda72[58]](_0xa7a7x3c.toString(),{type:db[_0xda72[133]][_0xda72[132]][_0xda72[131]]})}})[_0xda72[45]](respondWithResult(_0xa7a7x15,null,_0xda72[83]))[_0xda72[75]](handleError(_0xa7a7x15,null,_0xda72[83]))};exports[_0xda72[139]]= function(_0xa7a7x28,_0xa7a7x15){var _0xa7a7x2c=10;var _0xa7a7x2d={"\x53\x55\x4D":_0xda72[84],"\x43\x4F\x55\x4E\x54":_0xda72[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0xda72[86],"\x4D\x41\x58":_0xda72[87],"\x4D\x49\x4E":_0xda72[88],"\x41\x56\x47":_0xda72[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0xda72[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0xda72[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0xda72[92]};var _0xa7a7x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0xda72[93],"\x44\x41\x54\x45":_0xda72[94],"\x48\x4F\x55\x52":_0xda72[95],"\x52\x4F\x55\x4E\x44":_0xda72[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0xda72[97]};var _0xa7a7x2f=function(_0xa7a7x30){return !_[_0xda72[102]]([_0xda72[98],_0xda72[99],_0xda72[100],_0xda72[101]],_0xa7a7x30)};var _0xa7a7x31=function(_0xa7a7x32){if(!_0xa7a7x32||  !_0xa7a7x32[_0xda72[103]][_0xda72[63]]){return _0xda72[104]};for(var _0xa7a7x33=_0xda72[105],_0xa7a7x34=0;_0xa7a7x34< _0xa7a7x32[_0xda72[103]][_0xda72[63]];_0xa7a7x34+= 1){_0xa7a7x34> 0&& (_0xa7a7x33+= _0xda72[106]+ _0xa7a7x32[_0xda72[107]]+ _0xda72[106]);_0xa7a7x33+= _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[108]]?_0xa7a7x31(_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[108]]):_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[109]]+ _0xda72[106]+ _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[110]]+ (_0xa7a7x2f(_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[110]])?_0xda72[106]+ _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[111]]:_0xda72[104])};return _0xa7a7x33+ _0xda72[112]};var _0xa7a7x1b={where:{id:_0xa7a7x28[_0xda72[79]][_0xda72[78]]}},_0xa7a7x35,_0xa7a7x36,_0xa7a7x37,_0xa7a7x38,_0xa7a7x39;_0xa7a7x1b= _[_0xda72[73]]({},_0xa7a7x1b,_0xa7a7x28[_0xda72[74]]);return db[_0xda72[56]][_0xda72[80]](_0xa7a7x1b)[_0xda72[45]](handleEntityNotFound(_0xa7a7x15,null,_0xda72[83]))[_0xda72[45]](function(_0xa7a7x18){if(_0xa7a7x18){_0xa7a7x35= _0xa7a7x18;return _0xa7a7x18[_0xda72[138]]()};return null})[_0xda72[45]](function(_0xa7a7x3a){if(_0xa7a7x3a){if(!_0xa7a7x3a[_0xda72[63]]){throw  new db[_0xda72[135]].ValidationError(_0xda72[134])};_0xa7a7x36= _0xa7a7x3a;return db[_0xda72[137]][_0xda72[136]]({raw:true})};return null})[_0xda72[45]](function(_0xa7a7x3a){if(_0xa7a7x3a){_0xa7a7x37= _[_0xda72[113]](_0xa7a7x3a,_0xda72[78]);var _0xa7a7x3b;var _0xa7a7x3c=squel[_0xda72[114]]();_0xa7a7x3c[_0xda72[116]](_0xa7a7x35[_0xda72[115]]);for(var _0xa7a7x34=0;_0xa7a7x34< _0xa7a7x36[_0xda72[63]];_0xa7a7x34+= 1){_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[117]]?_0xa7a7x37[_0xa7a7x36[_0xa7a7x34][_0xda72[117]]][_0xda72[118]]:_0xa7a7x36[_0xa7a7x34][_0xda72[109]];_0xa7a7x36[_0xa7a7x34][_0xda72[119]]&& _0xa7a7x3c[_0xda72[108]](_0xa7a7x36[_0xa7a7x34][_0xda72[109]]);_0xa7a7x36[_0xa7a7x34][_0xda72[120]]&& _0xa7a7x3c[_0xda72[66]](_0xa7a7x36[_0xa7a7x34][_0xda72[109]],_0xa7a7x36[_0xa7a7x34][_0xda72[120]]=== _0xda72[121]?false:true);_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[122]]?_[_0xda72[124]](_0xa7a7x2d[_0xa7a7x36[_0xa7a7x34][_0xda72[122]]],_0xda72[123],_0xa7a7x36[_0xa7a7x34][_0xda72[109]]):_0xa7a7x3b;_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[125]]?_[_0xda72[124]](_0xa7a7x2e[_0xa7a7x36[_0xa7a7x34][_0xda72[125]]],_0xda72[123],_0xa7a7x3b):_0xa7a7x3b;_0xa7a7x3c[_0xda72[109]](_0xa7a7x3b,_0xa7a7x36[_0xa7a7x34][_0xda72[126]]|| _0xa7a7x3b)};_0xa7a7x35[_0xda72[127]]&& _0xa7a7x3c[_0xda72[68]](_0xa7a7x31(JSON[_0xda72[128]](_0xa7a7x35[_0xda72[127]])[_0xda72[108]]));_0xa7a7x39= _0xa7a7x3c[_0xda72[129]]();_0xa7a7x3c[_0xda72[35]](_0xa7a7x2c);_0xa7a7x3c[_0xda72[34]](0);logger[_0xda72[24]](_0xda72[130],_0xa7a7x3c.toString());return db[_0xda72[133]][_0xda72[58]](_0xa7a7x3c.toString(),{type:db[_0xda72[133]][_0xda72[132]][_0xda72[131]]})}})[_0xda72[45]](function(_0xa7a7x3a){if(!_0xa7a7x3a[_0xda72[63]]){throw  new db[_0xda72[135]].ValidationError(_0xda72[151])};var _0xa7a7x3d=_[_0xda72[73]](_0xa7a7x28[_0xda72[58]],{name:_0xa7a7x28[_0xda72[58]][_0xda72[51]]|| _0xa7a7x35[_0xda72[51]],savename:util[_0xda72[125]](_0xda72[152],_0xa7a7x28[_0xda72[58]][_0xda72[51]]|| _0xa7a7x35[_0xda72[51]],require(_0xda72[154])[_0xda72[153]](4),_0xa7a7x28[_0xda72[58]][_0xda72[145]]|| _0xda72[155])});return db[_0xda72[156]][_0xda72[81]](_0xa7a7x3d,{raw:true})})[_0xda72[45]](function(_0xa7a7x18){if(_0xa7a7x18){_0xa7a7x39[_0xda72[68]](_0xda72[140],_0xa7a7x18[_0xda72[141]],_0xa7a7x18[_0xda72[142]]);logger[_0xda72[24]](_0xda72[143],_0xa7a7x39.toString());require(_0xda72[150])[_0xda72[149]](path[_0xda72[146]](__dirname,_0xda72[144],_0xa7a7x18[_0xda72[145]]),[_0xa7a7x18[_0xda72[78]],_0xa7a7x39.toString(),path[_0xda72[146]](__dirname,_0xda72[147],_0xa7a7x18[_0xda72[148]])]);return _0xa7a7x18};return null})[_0xda72[45]](respondWithResult(_0xa7a7x15,null,_0xda72[139]))[_0xda72[75]](handleError(_0xa7a7x15,null,_0xda72[139]))};exports[_0xda72[58]]= function(_0xa7a7x28,_0xa7a7x15){var _0xa7a7x2c=10;var _0xa7a7x2d={"\x53\x55\x4D":_0xda72[84],"\x43\x4F\x55\x4E\x54":_0xda72[85],"\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54":_0xda72[86],"\x4D\x41\x58":_0xda72[87],"\x4D\x49\x4E":_0xda72[88],"\x41\x56\x47":_0xda72[89],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54":_0xda72[90],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x41\x53\x43":_0xda72[91],"\x47\x52\x4F\x55\x50\x5F\x43\x4F\x4E\x43\x41\x54\x20\x44\x45\x53\x43":_0xda72[92]};var _0xa7a7x2e={"\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45":_0xda72[93],"\x44\x41\x54\x45":_0xda72[94],"\x48\x4F\x55\x52":_0xda72[95],"\x52\x4F\x55\x4E\x44":_0xda72[96],"\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50":_0xda72[97]};var _0xa7a7x2f=function(_0xa7a7x30){return !_[_0xda72[102]]([_0xda72[98],_0xda72[99],_0xda72[100],_0xda72[101]],_0xa7a7x30)};var _0xa7a7x31=function(_0xa7a7x32){if(!_0xa7a7x32||  !_0xa7a7x32[_0xda72[103]][_0xda72[63]]){return _0xda72[104]};for(var _0xa7a7x33=_0xda72[105],_0xa7a7x34=0;_0xa7a7x34< _0xa7a7x32[_0xda72[103]][_0xda72[63]];_0xa7a7x34+= 1){_0xa7a7x34> 0&& (_0xa7a7x33+= _0xda72[106]+ _0xa7a7x32[_0xda72[107]]+ _0xda72[106]);_0xa7a7x33+= _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[108]]?_0xa7a7x31(_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[108]]):_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[109]]+ _0xda72[106]+ _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[110]]+ (_0xa7a7x2f(_0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[110]])?_0xda72[106]+ _0xa7a7x32[_0xda72[103]][_0xa7a7x34][_0xda72[111]]:_0xda72[104])};return _0xa7a7x33+ _0xda72[112]};var _0xa7a7x1b={where:{id:_0xa7a7x28[_0xda72[79]][_0xda72[78]]}},_0xa7a7x35,_0xa7a7x36,_0xa7a7x37,_0xa7a7x38,_0xa7a7x39;_0xa7a7x1b= _[_0xda72[73]]({},_0xa7a7x1b,_0xa7a7x28[_0xda72[74]]);return db[_0xda72[56]][_0xda72[80]](_0xa7a7x1b)[_0xda72[45]](handleEntityNotFound(_0xa7a7x15,null,_0xda72[83]))[_0xda72[45]](function(_0xa7a7x18){if(_0xa7a7x18){_0xa7a7x35= _0xa7a7x18;return _0xa7a7x18[_0xda72[138]]()};return null})[_0xda72[45]](function(_0xa7a7x3a){if(_0xa7a7x3a){if(!_0xa7a7x3a[_0xda72[63]]){throw  new db[_0xda72[135]].ValidationError(_0xda72[134])};_0xa7a7x36= _0xa7a7x3a;return db[_0xda72[137]][_0xda72[136]]({raw:true})};return null})[_0xda72[45]](function(_0xa7a7x3a){if(_0xa7a7x3a){_0xa7a7x37= _[_0xda72[113]](_0xa7a7x3a,_0xda72[78]);var _0xa7a7x3b;var _0xa7a7x3c=squel[_0xda72[114]]();_0xa7a7x3c[_0xda72[116]](_0xa7a7x35[_0xda72[115]]);for(var _0xa7a7x34=0;_0xa7a7x34< _0xa7a7x36[_0xda72[63]];_0xa7a7x34+= 1){_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[117]]?_0xa7a7x37[_0xa7a7x36[_0xa7a7x34][_0xda72[117]]][_0xda72[118]]:_0xa7a7x36[_0xa7a7x34][_0xda72[109]];_0xa7a7x36[_0xa7a7x34][_0xda72[119]]&& _0xa7a7x3c[_0xda72[108]](_0xa7a7x36[_0xa7a7x34][_0xda72[109]]);_0xa7a7x36[_0xa7a7x34][_0xda72[120]]&& _0xa7a7x3c[_0xda72[66]](_0xa7a7x36[_0xa7a7x34][_0xda72[109]],_0xa7a7x36[_0xa7a7x34][_0xda72[120]]=== _0xda72[121]?false:true);_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[122]]?_[_0xda72[124]](_0xa7a7x2d[_0xa7a7x36[_0xa7a7x34][_0xda72[122]]],_0xda72[123],_0xa7a7x36[_0xa7a7x34][_0xda72[109]]):_0xa7a7x3b;_0xa7a7x3b= _0xa7a7x36[_0xa7a7x34][_0xda72[125]]?_[_0xda72[124]](_0xa7a7x2e[_0xa7a7x36[_0xa7a7x34][_0xda72[125]]],_0xda72[123],_0xa7a7x3b):_0xa7a7x3b;_0xa7a7x3c[_0xda72[109]](_0xa7a7x3b,_0xa7a7x36[_0xa7a7x34][_0xda72[126]]|| _0xa7a7x3b)};_0xa7a7x35[_0xda72[127]]&& _0xa7a7x3c[_0xda72[68]](_0xa7a7x31(JSON[_0xda72[128]](_0xa7a7x35[_0xda72[127]])[_0xda72[108]]));_0xa7a7x39= _0xa7a7x3c[_0xda72[129]]();_0xa7a7x3c[_0xda72[35]](_0xa7a7x2c);_0xa7a7x3c[_0xda72[34]](0);logger[_0xda72[24]](_0xda72[130],_0xa7a7x3c.toString());return db[_0xda72[133]][_0xda72[58]](_0xa7a7x3c.toString(),{type:db[_0xda72[133]][_0xda72[132]][_0xda72[131]]})}})[_0xda72[45]](function(){return {sql:_0xa7a7x39.toString()}})[_0xda72[45]](respondWithResult(_0xa7a7x15,null,_0xda72[58]))[_0xda72[75]](handleError(_0xa7a7x15,null,_0xda72[58]))}
\ No newline at end of file
index c46271b..5a98138 100644 (file)
@@ -1 +1 @@
-var _0x957f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x64\x65\x66\x61\x75\x6C\x74\x5F\x72\x65\x70\x6F\x72\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x957f[0];var _=require(_0x957f[1]);var util=require(_0x957f[2]);var logger=require(_0x957f[4])(_0x957f[3]);var attributes=require(_0x957f[5]);module[_0x957f[6]]= function(_0xdfcbx5,_0xdfcbx6){return _0xdfcbx5[_0x957f[9]](_0x957f[7],attributes,{tableName:_0x957f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x5501=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x64\x65\x66\x61\x75\x6C\x74\x5F\x72\x65\x70\x6F\x72\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x5501[0];var _=require(_0x5501[1]);var util=require(_0x5501[2]);var logger=require(_0x5501[4])(_0x5501[3]);var attributes=require(_0x5501[5]);module[_0x5501[6]]= function(_0x9e41x5,_0x9e41x6){return _0x9e41x5[_0x5501[9]](_0x5501[7],attributes,{tableName:_0x5501[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index da1c72e..f0e80a4 100644 (file)
@@ -1 +1 @@
-var _0x6517=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x6517[0];var _=require(_0x6517[1]);var util=require(_0x6517[2]);var moment=require(_0x6517[3]);var BPromise=require(_0x6517[4]);var db=require(_0x6517[6])[_0x6517[5]];var utils=require(_0x6517[7]);var logger=require(_0x6517[9])(_0x6517[8]);var jayson=require(_0x6517[10]);var client=jayson[_0x6517[12]][_0x6517[11]]({port:9002});function respondWithRpcPromise(_0x8971xb,_0x8971xc,_0x8971xd){return  new BPromise(function(_0x8971xe,_0x8971xf){return client[_0x6517[25]](_0x8971xb,_0x8971xd)[_0x6517[24]](function(_0x8971x11){logger[_0x6517[17]](_0x6517[13],_0x8971xc,_0x6517[16]);logger[_0x6517[20]](_0x6517[18],_0x8971xc,_0x6517[16],JSON[_0x6517[19]](_0x8971x11));if(_0x8971x11[_0x6517[14]]){if(_0x8971x11[_0x6517[14]][_0x6517[21]]=== 500){logger[_0x6517[14]](_0x6517[13],_0x8971xc,_0x8971x11[_0x6517[14]][_0x6517[22]]);return _0x8971xf(_0x8971x11[_0x6517[14]][_0x6517[22]])};logger[_0x6517[14]](_0x6517[13],_0x8971xc,_0x8971x11[_0x6517[14]][_0x6517[22]]);return _0x8971xe(_0x8971x11[_0x6517[14]][_0x6517[22]])}else {logger[_0x6517[17]](_0x6517[13],_0x8971xc,_0x6517[16]);_0x8971xe(_0x8971x11[_0x6517[23]][_0x6517[22]])}})[_0x6517[15]](function(_0x8971x10){logger[_0x6517[14]](_0x6517[13],_0x8971xc,_0x8971x10);_0x8971xf(_0x8971x10)})})}
\ No newline at end of file
+var _0xaa03=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xaa03[0];var _=require(_0xaa03[1]);var util=require(_0xaa03[2]);var moment=require(_0xaa03[3]);var BPromise=require(_0xaa03[4]);var db=require(_0xaa03[6])[_0xaa03[5]];var utils=require(_0xaa03[7]);var logger=require(_0xaa03[9])(_0xaa03[8]);var jayson=require(_0xaa03[10]);var client=jayson[_0xaa03[12]][_0xaa03[11]]({port:9002});function respondWithRpcPromise(_0x9ee4xb,_0x9ee4xc,_0x9ee4xd){return  new BPromise(function(_0x9ee4xe,_0x9ee4xf){return client[_0xaa03[25]](_0x9ee4xb,_0x9ee4xd)[_0xaa03[24]](function(_0x9ee4x11){logger[_0xaa03[17]](_0xaa03[13],_0x9ee4xc,_0xaa03[16]);logger[_0xaa03[20]](_0xaa03[18],_0x9ee4xc,_0xaa03[16],JSON[_0xaa03[19]](_0x9ee4x11));if(_0x9ee4x11[_0xaa03[14]]){if(_0x9ee4x11[_0xaa03[14]][_0xaa03[21]]=== 500){logger[_0xaa03[14]](_0xaa03[13],_0x9ee4xc,_0x9ee4x11[_0xaa03[14]][_0xaa03[22]]);return _0x9ee4xf(_0x9ee4x11[_0xaa03[14]][_0xaa03[22]])};logger[_0xaa03[14]](_0xaa03[13],_0x9ee4xc,_0x9ee4x11[_0xaa03[14]][_0xaa03[22]]);return _0x9ee4xe(_0x9ee4x11[_0xaa03[14]][_0xaa03[22]])}else {logger[_0xaa03[17]](_0xaa03[13],_0x9ee4xc,_0xaa03[16]);_0x9ee4xe(_0x9ee4x11[_0xaa03[23]][_0xaa03[22]])}})[_0xaa03[15]](function(_0x9ee4x10){logger[_0xaa03[14]](_0xaa03[13],_0x9ee4xc,_0x9ee4x10);_0x9ee4xf(_0x9ee4x10)})})}
\ No newline at end of file
index c2ead91..a5bf2eb 100644 (file)
@@ -1 +1 @@
-var _0x28bc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x70\x72\x65\x76\x69\x65\x77","\x70\x72\x65\x76\x69\x65\x77","\x2F\x3A\x69\x64\x2F\x72\x75\x6E","\x72\x75\x6E","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x72\x79","\x71\x75\x65\x72\x79","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x28bc[0];var multer=require(_0x28bc[1]);var util=require(_0x28bc[2]);var path=require(_0x28bc[3]);var express=require(_0x28bc[4]);var router=express.Router();var auth=require(_0x28bc[5]);var config=require(_0x28bc[6]);var controller=require(_0x28bc[7]);router[_0x28bc[11]](_0x28bc[8],auth[_0x28bc[9]](),controller[_0x28bc[10]]);router[_0x28bc[11]](_0x28bc[12],auth[_0x28bc[9]](),controller[_0x28bc[13]]);router[_0x28bc[11]](_0x28bc[14],auth[_0x28bc[9]](),controller[_0x28bc[15]]);router[_0x28bc[11]](_0x28bc[16],auth[_0x28bc[9]](),controller[_0x28bc[17]]);router[_0x28bc[11]](_0x28bc[18],auth[_0x28bc[9]](),controller[_0x28bc[19]]);router[_0x28bc[21]](_0x28bc[8],auth[_0x28bc[9]](),controller[_0x28bc[20]]);router[_0x28bc[23]](_0x28bc[12],auth[_0x28bc[9]](),controller[_0x28bc[22]]);router[_0x28bc[25]](_0x28bc[12],auth[_0x28bc[9]](),controller[_0x28bc[24]]);module[_0x28bc[26]]= router
\ No newline at end of file
+var _0x4b58=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x70\x72\x65\x76\x69\x65\x77","\x70\x72\x65\x76\x69\x65\x77","\x2F\x3A\x69\x64\x2F\x72\x75\x6E","\x72\x75\x6E","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x72\x79","\x71\x75\x65\x72\x79","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x4b58[0];var multer=require(_0x4b58[1]);var util=require(_0x4b58[2]);var path=require(_0x4b58[3]);var express=require(_0x4b58[4]);var router=express.Router();var auth=require(_0x4b58[5]);var config=require(_0x4b58[6]);var controller=require(_0x4b58[7]);router[_0x4b58[11]](_0x4b58[8],auth[_0x4b58[9]](),controller[_0x4b58[10]]);router[_0x4b58[11]](_0x4b58[12],auth[_0x4b58[9]](),controller[_0x4b58[13]]);router[_0x4b58[11]](_0x4b58[14],auth[_0x4b58[9]](),controller[_0x4b58[15]]);router[_0x4b58[11]](_0x4b58[16],auth[_0x4b58[9]](),controller[_0x4b58[17]]);router[_0x4b58[11]](_0x4b58[18],auth[_0x4b58[9]](),controller[_0x4b58[19]]);router[_0x4b58[21]](_0x4b58[8],auth[_0x4b58[9]](),controller[_0x4b58[20]]);router[_0x4b58[23]](_0x4b58[12],auth[_0x4b58[9]](),controller[_0x4b58[22]]);router[_0x4b58[25]](_0x4b58[12],auth[_0x4b58[9]](),controller[_0x4b58[24]]);module[_0x4b58[26]]= router
\ No newline at end of file
index 874835c..b0396de 100644 (file)
@@ -1 +1 @@
-var _0xf2ff=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x63\x73\x76","\x70\x64\x66","\x78\x6C\x73","\x44\x41\x54\x45","\x4C\x6F\x61\x64\x69\x6E\x67","\x6D\x61\x6E\x75\x61\x6C","\x73\x63\x68\x65\x64\x75\x6C\x65\x64"];_0xf2ff[0];var Sequelize=require(_0xf2ff[1]);var moment=require(_0xf2ff[2]);module[_0xf2ff[3]]= {name:{type:Sequelize[_0xf2ff[4]],allowNull:false},output:{type:Sequelize.ENUM(_0xf2ff[5],_0xf2ff[6],_0xf2ff[7]),allowNull:false,defaultValue:_0xf2ff[5]},savename:{type:Sequelize[_0xf2ff[4]],allowNull:false},startDate:{type:Sequelize[_0xf2ff[8]]},endDate:{type:Sequelize[_0xf2ff[8]]},status:{type:Sequelize[_0xf2ff[4]],defaultValue:_0xf2ff[9]},type:{type:Sequelize.ENUM(_0xf2ff[10],_0xf2ff[11]),allowNull:false,defaultValue:_0xf2ff[10]}}
\ No newline at end of file
+var _0xd0f1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x63\x73\x76","\x70\x64\x66","\x78\x6C\x73","\x44\x41\x54\x45","\x4C\x6F\x61\x64\x69\x6E\x67","\x6D\x61\x6E\x75\x61\x6C","\x73\x63\x68\x65\x64\x75\x6C\x65\x64"];_0xd0f1[0];var Sequelize=require(_0xd0f1[1]);var moment=require(_0xd0f1[2]);module[_0xd0f1[3]]= {name:{type:Sequelize[_0xd0f1[4]],allowNull:false},output:{type:Sequelize.ENUM(_0xd0f1[5],_0xd0f1[6],_0xd0f1[7]),allowNull:false,defaultValue:_0xd0f1[5]},savename:{type:Sequelize[_0xd0f1[4]],allowNull:false},startDate:{type:Sequelize[_0xd0f1[8]]},endDate:{type:Sequelize[_0xd0f1[8]]},status:{type:Sequelize[_0xd0f1[4]],defaultValue:_0xd0f1[9]},type:{type:Sequelize.ENUM(_0xd0f1[10],_0xd0f1[11]),allowNull:false,defaultValue:_0xd0f1[10]}}
\ No newline at end of file
index b75fcba..fe47a39 100644 (file)
@@ -1 +1 @@
-var _0x1706=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x44\x6F\x77\x6E\x6C\x6F\x61\x64\x20\x45\x78\x74\x72\x61\x63\x74\x65\x64\x20\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x44\x6F\x77\x6E\x6C\x6F\x61\x64\x20\x45\x78\x74\x72\x61\x63\x74\x65\x64\x20\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x73\x61\x76\x65\x6E\x61\x6D\x65","\x6A\x6F\x69\x6E","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x52\x65\x70\x6F\x72\x74\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x69\x73\x74\x73","\x25\x73\x2E\x25\x73","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x6F\x75\x74\x70\x75\x74","\x66\x6F\x72\x6D\x61\x74"];_0x1706[0];var jsonpatch=require(_0x1706[1]);var rp=require(_0x1706[2]);var moment=require(_0x1706[3]);var BPromise=require(_0x1706[4]);var util=require(_0x1706[5]);var path=require(_0x1706[6]);var sox=require(_0x1706[7]);var ejs=require(_0x1706[8]);var fs=require(_0x1706[9]);var _=require(_0x1706[10]);var squel=require(_0x1706[11]);var crypto=require(_0x1706[12]);var jsforce=require(_0x1706[13]);var toCsv=require(_0x1706[14]);var qs=require(_0x1706[15]);var logger=require(_0x1706[17])(_0x1706[16]);var utils=require(_0x1706[18]);var config=require(_0x1706[19]);var db=require(_0x1706[21])[_0x1706[20]];function respondWithStatusCode(_0x4a4dx15,_0x4a4dx16,_0x4a4dx17){_0x4a4dx16= _0x4a4dx16|| 204;return function(_0x4a4dx18){if(_0x4a4dx18){logger[_0x1706[24]](_0x1706[22],_0x4a4dx17,_0x4a4dx16,_0x1706[23]);logger[_0x1706[26]](_0x1706[25],_0x4a4dx17,_0x4a4dx16,_0x1706[23]);return _0x4a4dx15[_0x1706[27]](_0x4a4dx16)};return _0x4a4dx15[_0x1706[29]](304)[_0x1706[28]]()}}function respondWithResult(_0x4a4dx15,_0x4a4dx16,_0x4a4dx17){_0x4a4dx16= _0x4a4dx16|| 200;return function(_0x4a4dx18){if(_0x4a4dx18){logger[_0x1706[24]](_0x1706[22],_0x4a4dx17,_0x4a4dx16,_0x1706[30]);logger[_0x1706[26]](_0x1706[25],_0x4a4dx17,_0x4a4dx16,_0x1706[30],JSON[_0x1706[31]](_0x4a4dx18));return _0x4a4dx15[_0x1706[29]](_0x4a4dx16)[_0x1706[32]](_0x4a4dx18)};return _0x4a4dx15[_0x1706[29]](304)[_0x1706[28]]()}}function respondWithFilteredResult(_0x4a4dx15,_0x4a4dx1b,_0x4a4dx17){return function(_0x4a4dx18){if(_0x4a4dx18){var _0x4a4dx1c=_0x4a4dx18[_0x1706[33]],_0x4a4dx1d=_0x4a4dx1b[_0x1706[34]],_0x4a4dx1e=_0x4a4dx1b[_0x1706[34]]+ _0x4a4dx1b[_0x1706[35]],_0x4a4dx16;if(_0x4a4dx1e>= _0x4a4dx1c){_0x4a4dx1e= _0x4a4dx1c;_0x4a4dx16= 200}else {_0x4a4dx16= 206};_0x4a4dx15[_0x1706[29]](_0x4a4dx16);logger[_0x1706[24]](_0x1706[22],_0x4a4dx17,_0x4a4dx16,_0x1706[36]);logger[_0x1706[26]](_0x1706[25],_0x4a4dx17,_0x4a4dx16,_0x1706[30],JSON[_0x1706[31]](_0x4a4dx18));return _0x4a4dx15[_0x1706[40]](_0x1706[37],_0x4a4dx1d+ _0x1706[38]+ _0x4a4dx1e+ _0x1706[39]+ _0x4a4dx1c)[_0x1706[32]](_0x4a4dx18)};return null}}function patchUpdates(_0x4a4dx20){return function(_0x4a4dx18){try{jsonpatch[_0x1706[41]](_0x4a4dx18,_0x4a4dx20,true)}catch(err){return BPromise[_0x1706[42]](err)};return _0x4a4dx18[_0x1706[43]]()}}function saveUpdates(_0x4a4dx22,_0x4a4dx16,_0x4a4dx17){return function(_0x4a4dx18){if(_0x4a4dx18){return _0x4a4dx18[_0x1706[46]](_0x4a4dx22)[_0x1706[45]](function(_0x4a4dx23){logger[_0x1706[24]](_0x1706[22],_0x4a4dx17,_0x4a4dx16,_0x1706[44]);logger[_0x1706[26]](_0x1706[25],_0x4a4dx17,_0x4a4dx16,_0x1706[44],JSON[_0x1706[31]](_0x4a4dx18));return _0x4a4dx23})};return null}}function removeEntity(_0x4a4dx15,_0x4a4dx16,_0x4a4dx17){return function(_0x4a4dx18){if(_0x4a4dx18){return _0x4a4dx18[_0x1706[48]]()[_0x1706[45]](function(){logger[_0x1706[24]](_0x1706[22],_0x4a4dx17,_0x4a4dx16,_0x1706[47]);logger[_0x1706[26]](_0x1706[25],_0x4a4dx17,_0x4a4dx16,_0x1706[47],JSON[_0x1706[31]](_0x4a4dx18));_0x4a4dx15[_0x1706[29]](204)[_0x1706[28]]()})}}}function handleEntityNotFound(_0x4a4dx15,_0x4a4dx16,_0x4a4dx17){return function(_0x4a4dx18){if(!_0x4a4dx18){logger[_0x1706[50]](_0x1706[22],_0x4a4dx17,404,_0x1706[49]);_0x4a4dx15[_0x1706[29]](404)[_0x1706[28]]();return null};return _0x4a4dx18}}function handleError(_0x4a4dx15,_0x4a4dx16,_0x4a4dx17){_0x4a4dx16= _0x4a4dx16|| 500;return function(_0x4a4dx27){logger[_0x1706[50]](_0x1706[22],_0x4a4dx17,_0x4a4dx16,JSON[_0x1706[31]](_0x4a4dx27));delete _0x4a4dx27[_0x1706[51]];_0x4a4dx15[_0x1706[29]](_0x4a4dx16)[_0x1706[52]](_0x4a4dx27)}}exports[_0x1706[53]]= function(_0x4a4dx28,_0x4a4dx15){var _0x4a4dx1b={},_0x4a4dx29={};_0x4a4dx29[_0x1706[54]]= _[_0x1706[57]](db[_0x1706[56]][_0x1706[55]]);_0x4a4dx29[_0x1706[58]]= _[_0x1706[57]](_0x4a4dx28[_0x1706[58]]);_0x4a4dx29[_0x1706[59]]= _[_0x1706[60]](_0x4a4dx29[_0x1706[54]],_0x4a4dx29[_0x1706[58]]);_0x4a4dx1b[_0x1706[61]]= _[_0x1706[60]](_0x4a4dx29[_0x1706[54]],qs[_0x1706[62]](_0x4a4dx28[_0x1706[58]][_0x1706[62]]));_0x4a4dx1b[_0x1706[61]]= (_0x4a4dx1b[_0x1706[61]][_0x1706[63]])?_0x4a4dx1b[_0x1706[61]]:_0x4a4dx29[_0x1706[54]];if(!_0x4a4dx28[_0x1706[58]][_0x1706[65]](_0x1706[64])){_0x4a4dx1b[_0x1706[35]]= qs[_0x1706[35]](_0x4a4dx28[_0x1706[58]][_0x1706[35]]);_0x4a4dx1b[_0x1706[34]]= qs[_0x1706[34]](_0x4a4dx28[_0x1706[58]][_0x1706[34]])};_0x4a4dx1b[_0x1706[66]]= qs[_0x1706[67]](_0x4a4dx28[_0x1706[58]][_0x1706[67]]);_0x4a4dx1b[_0x1706[68]]= qs[_0x1706[59]](_[_0x1706[69]](_0x4a4dx28[_0x1706[58]],_0x4a4dx29[_0x1706[59]]));if(_0x4a4dx28[_0x1706[58]][_0x1706[70]]){_0x4a4dx1b[_0x1706[68]]= _[_0x1706[73]](_0x4a4dx1b[_0x1706[68]],{$or:_[_0x1706[72]](_0x4a4dx1b[_0x1706[61]],function(_0x4a4dx2a){var _0x4a4dx2b={};_0x4a4dx2b[_0x4a4dx2a]= {$like:_0x1706[71]+ _0x4a4dx28[_0x1706[58]][_0x1706[70]]+ _0x1706[71]};return _0x4a4dx2b})})};_0x4a4dx1b= _[_0x1706[73]]({},_0x4a4dx1b,_0x4a4dx28[_0x1706[74]]);return db[_0x1706[56]][_0x1706[76]](_0x4a4dx1b)[_0x1706[45]](respondWithFilteredResult(_0x4a4dx15,_0x4a4dx1b,_0x1706[53]))[_0x1706[75]](handleError(_0x4a4dx15,null,_0x1706[53]))};exports[_0x1706[77]]= function(_0x4a4dx28,_0x4a4dx15){var _0x4a4dx1b={raw:true,where:{id:_0x4a4dx28[_0x1706[79]][_0x1706[78]]}},_0x4a4dx29={};_0x4a4dx29[_0x1706[54]]= _[_0x1706[57]](db[_0x1706[56]][_0x1706[55]]);_0x4a4dx29[_0x1706[58]]= _[_0x1706[57]](_0x4a4dx28[_0x1706[58]]);_0x4a4dx29[_0x1706[59]]= _[_0x1706[60]](_0x4a4dx29[_0x1706[54]],_0x4a4dx29[_0x1706[58]]);_0x4a4dx1b[_0x1706[61]]= _[_0x1706[60]](_0x4a4dx29[_0x1706[54]],qs[_0x1706[62]](_0x4a4dx28[_0x1706[58]][_0x1706[62]]));_0x4a4dx1b[_0x1706[61]]= (_0x4a4dx1b[_0x1706[61]][_0x1706[63]])?_0x4a4dx1b[_0x1706[61]]:_0x4a4dx29[_0x1706[54]];_0x4a4dx1b= _[_0x1706[73]]({},_0x4a4dx1b,_0x4a4dx28[_0x1706[74]]);return db[_0x1706[56]][_0x1706[80]](_0x4a4dx1b)[_0x1706[45]](handleEntityNotFound(_0x4a4dx15,null,_0x1706[77]))[_0x1706[45]](respondWithResult(_0x4a4dx15,null,_0x1706[77]))[_0x1706[75]](handleError(_0x4a4dx15,null,_0x1706[77]))};exports[_0x1706[81]]= function(_0x4a4dx28,_0x4a4dx15){return db[_0x1706[56]][_0x1706[81]](_0x4a4dx28[_0x1706[82]],{})[_0x1706[45]](respondWithResult(_0x4a4dx15,201,_0x1706[81]))[_0x1706[75]](handleError(_0x4a4dx15,null,_0x1706[81]))};exports[_0x1706[46]]= function(_0x4a4dx28,_0x4a4dx15){if(_0x4a4dx28[_0x1706[82]][_0x1706[78]]){delete _0x4a4dx28[_0x1706[82]][_0x1706[78]]};return db[_0x1706[56]][_0x1706[80]]({where:{id:_0x4a4dx28[_0x1706[79]][_0x1706[78]]}})[_0x1706[45]](handleEntityNotFound(_0x4a4dx15,null,_0x1706[46]))[_0x1706[45]](saveUpdates(_0x4a4dx28[_0x1706[82]],null,_0x1706[46]))[_0x1706[45]](respondWithResult(_0x4a4dx15,null,_0x1706[46]))[_0x1706[75]](handleError(_0x4a4dx15,null,_0x1706[46]))};exports[_0x1706[48]]= function(_0x4a4dx28,_0x4a4dx15){return db[_0x1706[56]][_0x1706[80]]({where:{id:_0x4a4dx28[_0x1706[79]][_0x1706[78]]}})[_0x1706[45]](handleEntityNotFound(_0x4a4dx15,null,_0x1706[48]))[_0x1706[45]](removeEntity(_0x4a4dx15,null,_0x1706[48]))[_0x1706[75]](handleError(_0x4a4dx15,null,_0x1706[48]))};exports[_0x1706[83]]= function(_0x4a4dx28,_0x4a4dx15,_0x4a4dx2c){return db[_0x1706[56]][_0x1706[80]]({where:{id:_0x4a4dx28[_0x1706[79]][_0x1706[78]]},attributes:[_0x1706[51],_0x1706[88],_0x1706[96]],raw:true})[_0x1706[45]](handleEntityNotFound(_0x4a4dx15,null,_0x1706[83]))[_0x1706[45]](function(_0x4a4dx18){if(_0x4a4dx18){logger[_0x1706[24]](_0x1706[84],_0x1706[83],_0x1706[30]);logger[_0x1706[26]](_0x1706[85],_0x1706[83],_0x1706[30],JSON[_0x1706[31]](_0x4a4dx18));if(!fs[_0x1706[90]](path[_0x1706[89]](config[_0x1706[86]],_0x1706[87],_0x4a4dx18[_0x1706[88]]))){throw  new db[_0x1706[92]].ValidationError(_0x1706[91])};if(_0x4a4dx28[_0x1706[58]][_0x1706[93]]){return _0x4a4dx15[_0x1706[27]](200)};return _0x4a4dx15[_0x1706[83]](path[_0x1706[89]](config[_0x1706[86]],_0x1706[87],_0x4a4dx18[_0x1706[88]]),util[_0x1706[97]](_0x1706[94],_0x4a4dx18[_0x1706[51]],_0x4a4dx18[_0x1706[96]][_0x1706[95]]()))}})[_0x1706[75]](handleError(_0x4a4dx15,null,_0x1706[83]))}
\ No newline at end of file
+var _0x481f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x44\x6F\x77\x6E\x6C\x6F\x61\x64\x20\x45\x78\x74\x72\x61\x63\x74\x65\x64\x20\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x44\x6F\x77\x6E\x6C\x6F\x61\x64\x20\x45\x78\x74\x72\x61\x63\x74\x65\x64\x20\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x73\x61\x76\x65\x6E\x61\x6D\x65","\x6A\x6F\x69\x6E","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x52\x65\x70\x6F\x72\x74\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x69\x73\x74\x73","\x25\x73\x2E\x25\x73","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x6F\x75\x74\x70\x75\x74","\x66\x6F\x72\x6D\x61\x74"];_0x481f[0];var jsonpatch=require(_0x481f[1]);var rp=require(_0x481f[2]);var moment=require(_0x481f[3]);var BPromise=require(_0x481f[4]);var util=require(_0x481f[5]);var path=require(_0x481f[6]);var sox=require(_0x481f[7]);var ejs=require(_0x481f[8]);var fs=require(_0x481f[9]);var _=require(_0x481f[10]);var squel=require(_0x481f[11]);var crypto=require(_0x481f[12]);var jsforce=require(_0x481f[13]);var toCsv=require(_0x481f[14]);var qs=require(_0x481f[15]);var logger=require(_0x481f[17])(_0x481f[16]);var utils=require(_0x481f[18]);var config=require(_0x481f[19]);var db=require(_0x481f[21])[_0x481f[20]];function respondWithStatusCode(_0x832fx15,_0x832fx16,_0x832fx17){_0x832fx16= _0x832fx16|| 204;return function(_0x832fx18){if(_0x832fx18){logger[_0x481f[24]](_0x481f[22],_0x832fx17,_0x832fx16,_0x481f[23]);logger[_0x481f[26]](_0x481f[25],_0x832fx17,_0x832fx16,_0x481f[23]);return _0x832fx15[_0x481f[27]](_0x832fx16)};return _0x832fx15[_0x481f[29]](304)[_0x481f[28]]()}}function respondWithResult(_0x832fx15,_0x832fx16,_0x832fx17){_0x832fx16= _0x832fx16|| 200;return function(_0x832fx18){if(_0x832fx18){logger[_0x481f[24]](_0x481f[22],_0x832fx17,_0x832fx16,_0x481f[30]);logger[_0x481f[26]](_0x481f[25],_0x832fx17,_0x832fx16,_0x481f[30],JSON[_0x481f[31]](_0x832fx18));return _0x832fx15[_0x481f[29]](_0x832fx16)[_0x481f[32]](_0x832fx18)};return _0x832fx15[_0x481f[29]](304)[_0x481f[28]]()}}function respondWithFilteredResult(_0x832fx15,_0x832fx1b,_0x832fx17){return function(_0x832fx18){if(_0x832fx18){var _0x832fx1c=_0x832fx18[_0x481f[33]],_0x832fx1d=_0x832fx1b[_0x481f[34]],_0x832fx1e=_0x832fx1b[_0x481f[34]]+ _0x832fx1b[_0x481f[35]],_0x832fx16;if(_0x832fx1e>= _0x832fx1c){_0x832fx1e= _0x832fx1c;_0x832fx16= 200}else {_0x832fx16= 206};_0x832fx15[_0x481f[29]](_0x832fx16);logger[_0x481f[24]](_0x481f[22],_0x832fx17,_0x832fx16,_0x481f[36]);logger[_0x481f[26]](_0x481f[25],_0x832fx17,_0x832fx16,_0x481f[30],JSON[_0x481f[31]](_0x832fx18));return _0x832fx15[_0x481f[40]](_0x481f[37],_0x832fx1d+ _0x481f[38]+ _0x832fx1e+ _0x481f[39]+ _0x832fx1c)[_0x481f[32]](_0x832fx18)};return null}}function patchUpdates(_0x832fx20){return function(_0x832fx18){try{jsonpatch[_0x481f[41]](_0x832fx18,_0x832fx20,true)}catch(err){return BPromise[_0x481f[42]](err)};return _0x832fx18[_0x481f[43]]()}}function saveUpdates(_0x832fx22,_0x832fx16,_0x832fx17){return function(_0x832fx18){if(_0x832fx18){return _0x832fx18[_0x481f[46]](_0x832fx22)[_0x481f[45]](function(_0x832fx23){logger[_0x481f[24]](_0x481f[22],_0x832fx17,_0x832fx16,_0x481f[44]);logger[_0x481f[26]](_0x481f[25],_0x832fx17,_0x832fx16,_0x481f[44],JSON[_0x481f[31]](_0x832fx18));return _0x832fx23})};return null}}function removeEntity(_0x832fx15,_0x832fx16,_0x832fx17){return function(_0x832fx18){if(_0x832fx18){return _0x832fx18[_0x481f[48]]()[_0x481f[45]](function(){logger[_0x481f[24]](_0x481f[22],_0x832fx17,_0x832fx16,_0x481f[47]);logger[_0x481f[26]](_0x481f[25],_0x832fx17,_0x832fx16,_0x481f[47],JSON[_0x481f[31]](_0x832fx18));_0x832fx15[_0x481f[29]](204)[_0x481f[28]]()})}}}function handleEntityNotFound(_0x832fx15,_0x832fx16,_0x832fx17){return function(_0x832fx18){if(!_0x832fx18){logger[_0x481f[50]](_0x481f[22],_0x832fx17,404,_0x481f[49]);_0x832fx15[_0x481f[29]](404)[_0x481f[28]]();return null};return _0x832fx18}}function handleError(_0x832fx15,_0x832fx16,_0x832fx17){_0x832fx16= _0x832fx16|| 500;return function(_0x832fx27){logger[_0x481f[50]](_0x481f[22],_0x832fx17,_0x832fx16,JSON[_0x481f[31]](_0x832fx27));delete _0x832fx27[_0x481f[51]];_0x832fx15[_0x481f[29]](_0x832fx16)[_0x481f[52]](_0x832fx27)}}exports[_0x481f[53]]= function(_0x832fx28,_0x832fx15){var _0x832fx1b={},_0x832fx29={};_0x832fx29[_0x481f[54]]= _[_0x481f[57]](db[_0x481f[56]][_0x481f[55]]);_0x832fx29[_0x481f[58]]= _[_0x481f[57]](_0x832fx28[_0x481f[58]]);_0x832fx29[_0x481f[59]]= _[_0x481f[60]](_0x832fx29[_0x481f[54]],_0x832fx29[_0x481f[58]]);_0x832fx1b[_0x481f[61]]= _[_0x481f[60]](_0x832fx29[_0x481f[54]],qs[_0x481f[62]](_0x832fx28[_0x481f[58]][_0x481f[62]]));_0x832fx1b[_0x481f[61]]= (_0x832fx1b[_0x481f[61]][_0x481f[63]])?_0x832fx1b[_0x481f[61]]:_0x832fx29[_0x481f[54]];if(!_0x832fx28[_0x481f[58]][_0x481f[65]](_0x481f[64])){_0x832fx1b[_0x481f[35]]= qs[_0x481f[35]](_0x832fx28[_0x481f[58]][_0x481f[35]]);_0x832fx1b[_0x481f[34]]= qs[_0x481f[34]](_0x832fx28[_0x481f[58]][_0x481f[34]])};_0x832fx1b[_0x481f[66]]= qs[_0x481f[67]](_0x832fx28[_0x481f[58]][_0x481f[67]]);_0x832fx1b[_0x481f[68]]= qs[_0x481f[59]](_[_0x481f[69]](_0x832fx28[_0x481f[58]],_0x832fx29[_0x481f[59]]));if(_0x832fx28[_0x481f[58]][_0x481f[70]]){_0x832fx1b[_0x481f[68]]= _[_0x481f[73]](_0x832fx1b[_0x481f[68]],{$or:_[_0x481f[72]](_0x832fx1b[_0x481f[61]],function(_0x832fx2a){var _0x832fx2b={};_0x832fx2b[_0x832fx2a]= {$like:_0x481f[71]+ _0x832fx28[_0x481f[58]][_0x481f[70]]+ _0x481f[71]};return _0x832fx2b})})};_0x832fx1b= _[_0x481f[73]]({},_0x832fx1b,_0x832fx28[_0x481f[74]]);return db[_0x481f[56]][_0x481f[76]](_0x832fx1b)[_0x481f[45]](respondWithFilteredResult(_0x832fx15,_0x832fx1b,_0x481f[53]))[_0x481f[75]](handleError(_0x832fx15,null,_0x481f[53]))};exports[_0x481f[77]]= function(_0x832fx28,_0x832fx15){var _0x832fx1b={raw:true,where:{id:_0x832fx28[_0x481f[79]][_0x481f[78]]}},_0x832fx29={};_0x832fx29[_0x481f[54]]= _[_0x481f[57]](db[_0x481f[56]][_0x481f[55]]);_0x832fx29[_0x481f[58]]= _[_0x481f[57]](_0x832fx28[_0x481f[58]]);_0x832fx29[_0x481f[59]]= _[_0x481f[60]](_0x832fx29[_0x481f[54]],_0x832fx29[_0x481f[58]]);_0x832fx1b[_0x481f[61]]= _[_0x481f[60]](_0x832fx29[_0x481f[54]],qs[_0x481f[62]](_0x832fx28[_0x481f[58]][_0x481f[62]]));_0x832fx1b[_0x481f[61]]= (_0x832fx1b[_0x481f[61]][_0x481f[63]])?_0x832fx1b[_0x481f[61]]:_0x832fx29[_0x481f[54]];_0x832fx1b= _[_0x481f[73]]({},_0x832fx1b,_0x832fx28[_0x481f[74]]);return db[_0x481f[56]][_0x481f[80]](_0x832fx1b)[_0x481f[45]](handleEntityNotFound(_0x832fx15,null,_0x481f[77]))[_0x481f[45]](respondWithResult(_0x832fx15,null,_0x481f[77]))[_0x481f[75]](handleError(_0x832fx15,null,_0x481f[77]))};exports[_0x481f[81]]= function(_0x832fx28,_0x832fx15){return db[_0x481f[56]][_0x481f[81]](_0x832fx28[_0x481f[82]],{})[_0x481f[45]](respondWithResult(_0x832fx15,201,_0x481f[81]))[_0x481f[75]](handleError(_0x832fx15,null,_0x481f[81]))};exports[_0x481f[46]]= function(_0x832fx28,_0x832fx15){if(_0x832fx28[_0x481f[82]][_0x481f[78]]){delete _0x832fx28[_0x481f[82]][_0x481f[78]]};return db[_0x481f[56]][_0x481f[80]]({where:{id:_0x832fx28[_0x481f[79]][_0x481f[78]]}})[_0x481f[45]](handleEntityNotFound(_0x832fx15,null,_0x481f[46]))[_0x481f[45]](saveUpdates(_0x832fx28[_0x481f[82]],null,_0x481f[46]))[_0x481f[45]](respondWithResult(_0x832fx15,null,_0x481f[46]))[_0x481f[75]](handleError(_0x832fx15,null,_0x481f[46]))};exports[_0x481f[48]]= function(_0x832fx28,_0x832fx15){return db[_0x481f[56]][_0x481f[80]]({where:{id:_0x832fx28[_0x481f[79]][_0x481f[78]]}})[_0x481f[45]](handleEntityNotFound(_0x832fx15,null,_0x481f[48]))[_0x481f[45]](removeEntity(_0x832fx15,null,_0x481f[48]))[_0x481f[75]](handleError(_0x832fx15,null,_0x481f[48]))};exports[_0x481f[83]]= function(_0x832fx28,_0x832fx15,_0x832fx2c){return db[_0x481f[56]][_0x481f[80]]({where:{id:_0x832fx28[_0x481f[79]][_0x481f[78]]},attributes:[_0x481f[51],_0x481f[88],_0x481f[96]],raw:true})[_0x481f[45]](handleEntityNotFound(_0x832fx15,null,_0x481f[83]))[_0x481f[45]](function(_0x832fx18){if(_0x832fx18){logger[_0x481f[24]](_0x481f[84],_0x481f[83],_0x481f[30]);logger[_0x481f[26]](_0x481f[85],_0x481f[83],_0x481f[30],JSON[_0x481f[31]](_0x832fx18));if(!fs[_0x481f[90]](path[_0x481f[89]](config[_0x481f[86]],_0x481f[87],_0x832fx18[_0x481f[88]]))){throw  new db[_0x481f[92]].ValidationError(_0x481f[91])};if(_0x832fx28[_0x481f[58]][_0x481f[93]]){return _0x832fx15[_0x481f[27]](200)};return _0x832fx15[_0x481f[83]](path[_0x481f[89]](config[_0x481f[86]],_0x481f[87],_0x832fx18[_0x481f[88]]),util[_0x481f[97]](_0x481f[94],_0x832fx18[_0x481f[51]],_0x832fx18[_0x481f[96]][_0x481f[95]]()))}})[_0x481f[75]](handleError(_0x832fx15,null,_0x481f[83]))}
\ No newline at end of file
index 6f272be..3544861 100644 (file)
@@ -1 +1 @@
-var _0xca5d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x65\x78\x74\x72\x61\x63\x74\x65\x64\x5F\x72\x65\x70\x6F\x72\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xca5d[0];var _=require(_0xca5d[1]);var util=require(_0xca5d[2]);var logger=require(_0xca5d[4])(_0xca5d[3]);var attributes=require(_0xca5d[5]);module[_0xca5d[6]]= function(_0xee4ax5,_0xee4ax6){return _0xee4ax5[_0xca5d[9]](_0xca5d[7],attributes,{tableName:_0xca5d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x854b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x65\x78\x74\x72\x61\x63\x74\x65\x64\x5F\x72\x65\x70\x6F\x72\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x854b[0];var _=require(_0x854b[1]);var util=require(_0x854b[2]);var logger=require(_0x854b[4])(_0x854b[3]);var attributes=require(_0x854b[5]);module[_0x854b[6]]= function(_0xb5e5x5,_0xb5e5x6){return _0xb5e5x5[_0x854b[9]](_0x854b[7],attributes,{tableName:_0x854b[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 94cc9be..1318ee7 100644 (file)
@@ -1 +1 @@
-var _0x9837=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9837[0];var _=require(_0x9837[1]);var util=require(_0x9837[2]);var moment=require(_0x9837[3]);var BPromise=require(_0x9837[4]);var db=require(_0x9837[6])[_0x9837[5]];var utils=require(_0x9837[7]);var logger=require(_0x9837[9])(_0x9837[8]);var jayson=require(_0x9837[10]);var client=jayson[_0x9837[12]][_0x9837[11]]({port:9002});function respondWithRpcPromise(_0xda18xb,_0xda18xc,_0xda18xd){return  new BPromise(function(_0xda18xe,_0xda18xf){return client[_0x9837[25]](_0xda18xb,_0xda18xd)[_0x9837[24]](function(_0xda18x11){logger[_0x9837[17]](_0x9837[13],_0xda18xc,_0x9837[16]);logger[_0x9837[20]](_0x9837[18],_0xda18xc,_0x9837[16],JSON[_0x9837[19]](_0xda18x11));if(_0xda18x11[_0x9837[14]]){if(_0xda18x11[_0x9837[14]][_0x9837[21]]=== 500){logger[_0x9837[14]](_0x9837[13],_0xda18xc,_0xda18x11[_0x9837[14]][_0x9837[22]]);return _0xda18xf(_0xda18x11[_0x9837[14]][_0x9837[22]])};logger[_0x9837[14]](_0x9837[13],_0xda18xc,_0xda18x11[_0x9837[14]][_0x9837[22]]);return _0xda18xe(_0xda18x11[_0x9837[14]][_0x9837[22]])}else {logger[_0x9837[17]](_0x9837[13],_0xda18xc,_0x9837[16]);_0xda18xe(_0xda18x11[_0x9837[23]][_0x9837[22]])}})[_0x9837[15]](function(_0xda18x10){logger[_0x9837[14]](_0x9837[13],_0xda18xc,_0xda18x10);_0xda18xf(_0xda18x10)})})}
\ No newline at end of file
+var _0xde6b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xde6b[0];var _=require(_0xde6b[1]);var util=require(_0xde6b[2]);var moment=require(_0xde6b[3]);var BPromise=require(_0xde6b[4]);var db=require(_0xde6b[6])[_0xde6b[5]];var utils=require(_0xde6b[7]);var logger=require(_0xde6b[9])(_0xde6b[8]);var jayson=require(_0xde6b[10]);var client=jayson[_0xde6b[12]][_0xde6b[11]]({port:9002});function respondWithRpcPromise(_0x2c0fxb,_0x2c0fxc,_0x2c0fxd){return  new BPromise(function(_0x2c0fxe,_0x2c0fxf){return client[_0xde6b[25]](_0x2c0fxb,_0x2c0fxd)[_0xde6b[24]](function(_0x2c0fx11){logger[_0xde6b[17]](_0xde6b[13],_0x2c0fxc,_0xde6b[16]);logger[_0xde6b[20]](_0xde6b[18],_0x2c0fxc,_0xde6b[16],JSON[_0xde6b[19]](_0x2c0fx11));if(_0x2c0fx11[_0xde6b[14]]){if(_0x2c0fx11[_0xde6b[14]][_0xde6b[21]]=== 500){logger[_0xde6b[14]](_0xde6b[13],_0x2c0fxc,_0x2c0fx11[_0xde6b[14]][_0xde6b[22]]);return _0x2c0fxf(_0x2c0fx11[_0xde6b[14]][_0xde6b[22]])};logger[_0xde6b[14]](_0xde6b[13],_0x2c0fxc,_0x2c0fx11[_0xde6b[14]][_0xde6b[22]]);return _0x2c0fxe(_0x2c0fx11[_0xde6b[14]][_0xde6b[22]])}else {logger[_0xde6b[17]](_0xde6b[13],_0x2c0fxc,_0xde6b[16]);_0x2c0fxe(_0x2c0fx11[_0xde6b[23]][_0xde6b[22]])}})[_0xde6b[15]](function(_0x2c0fx10){logger[_0xde6b[14]](_0xde6b[13],_0x2c0fxc,_0x2c0fx10);_0x2c0fxf(_0x2c0fx10)})})}
\ No newline at end of file
index cc41daf..9afd032 100644 (file)
@@ -1 +1 @@
-var _0xefdd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xefdd[0];var multer=require(_0xefdd[1]);var util=require(_0xefdd[2]);var path=require(_0xefdd[3]);var express=require(_0xefdd[4]);var router=express.Router();var auth=require(_0xefdd[5]);var config=require(_0xefdd[6]);var controller=require(_0xefdd[7]);router[_0xefdd[11]](_0xefdd[8],auth[_0xefdd[9]](),controller[_0xefdd[10]]);router[_0xefdd[11]](_0xefdd[12],auth[_0xefdd[9]](),controller[_0xefdd[13]]);router[_0xefdd[11]](_0xefdd[14],controller[_0xefdd[15]]);router[_0xefdd[17]](_0xefdd[8],auth[_0xefdd[9]](),controller[_0xefdd[16]]);router[_0xefdd[19]](_0xefdd[12],auth[_0xefdd[9]](),controller[_0xefdd[18]]);router[_0xefdd[21]](_0xefdd[12],auth[_0xefdd[9]](),controller[_0xefdd[20]]);module[_0xefdd[22]]= router
\ No newline at end of file
+var _0xc541=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xc541[0];var multer=require(_0xc541[1]);var util=require(_0xc541[2]);var path=require(_0xc541[3]);var express=require(_0xc541[4]);var router=express.Router();var auth=require(_0xc541[5]);var config=require(_0xc541[6]);var controller=require(_0xc541[7]);router[_0xc541[11]](_0xc541[8],auth[_0xc541[9]](),controller[_0xc541[10]]);router[_0xc541[11]](_0xc541[12],auth[_0xc541[9]](),controller[_0xc541[13]]);router[_0xc541[11]](_0xc541[14],controller[_0xc541[15]]);router[_0xc541[17]](_0xc541[8],auth[_0xc541[9]](),controller[_0xc541[16]]);router[_0xc541[19]](_0xc541[12],auth[_0xc541[9]](),controller[_0xc541[18]]);router[_0xc541[21]](_0xc541[12],auth[_0xc541[9]](),controller[_0xc541[20]]);module[_0xc541[22]]= router
\ No newline at end of file
index 03cd840..77e0867 100644 (file)
@@ -1 +1 @@
-var _0x7c3a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x7c3a[0];var Sequelize=require(_0x7c3a[1]);module[_0x7c3a[2]]= {field:{type:Sequelize[_0x7c3a[3]],allowNull:false},alias:{type:Sequelize[_0x7c3a[3]]},function:{type:Sequelize[_0x7c3a[3]]},format:{type:Sequelize[_0x7c3a[3]]},groupBy:{type:Sequelize[_0x7c3a[4]],defaultValue:false},orderBy:{type:Sequelize[_0x7c3a[3]]},custom:{type:Sequelize[_0x7c3a[4]],defaultValue:false}}
\ No newline at end of file
+var _0xe144=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xe144[0];var Sequelize=require(_0xe144[1]);module[_0xe144[2]]= {field:{type:Sequelize[_0xe144[3]],allowNull:false},alias:{type:Sequelize[_0xe144[3]]},function:{type:Sequelize[_0xe144[3]]},format:{type:Sequelize[_0xe144[3]]},groupBy:{type:Sequelize[_0xe144[4]],defaultValue:false},orderBy:{type:Sequelize[_0xe144[3]]},custom:{type:Sequelize[_0xe144[4]],defaultValue:false}}
\ No newline at end of file
index 8b6649a..600a594 100644 (file)
@@ -1 +1 @@
-var _0xd078=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x69\x64\x73","\x61\x64\x64\x46\x69\x65\x6C\x64\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x49\x64","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x6E\x64\x4F\x6E\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74"];_0xd078[0];var jsonpatch=require(_0xd078[1]);var rp=require(_0xd078[2]);var moment=require(_0xd078[3]);var BPromise=require(_0xd078[4]);var util=require(_0xd078[5]);var path=require(_0xd078[6]);var sox=require(_0xd078[7]);var ejs=require(_0xd078[8]);var fs=require(_0xd078[9]);var _=require(_0xd078[10]);var squel=require(_0xd078[11]);var crypto=require(_0xd078[12]);var jsforce=require(_0xd078[13]);var toCsv=require(_0xd078[14]);var qs=require(_0xd078[15]);var logger=require(_0xd078[17])(_0xd078[16]);var utils=require(_0xd078[18]);var config=require(_0xd078[19]);var db=require(_0xd078[21])[_0xd078[20]];function respondWithStatusCode(_0x14d4x15,_0x14d4x16,_0x14d4x17){_0x14d4x16= _0x14d4x16|| 204;return function(_0x14d4x18){if(_0x14d4x18){logger[_0xd078[24]](_0xd078[22],_0x14d4x17,_0x14d4x16,_0xd078[23]);logger[_0xd078[26]](_0xd078[25],_0x14d4x17,_0x14d4x16,_0xd078[23]);return _0x14d4x15[_0xd078[27]](_0x14d4x16)};return _0x14d4x15[_0xd078[29]](304)[_0xd078[28]]()}}function respondWithResult(_0x14d4x15,_0x14d4x16,_0x14d4x17){_0x14d4x16= _0x14d4x16|| 200;return function(_0x14d4x18){if(_0x14d4x18){logger[_0xd078[24]](_0xd078[22],_0x14d4x17,_0x14d4x16,_0xd078[30]);logger[_0xd078[26]](_0xd078[25],_0x14d4x17,_0x14d4x16,_0xd078[30],JSON[_0xd078[31]](_0x14d4x18));return _0x14d4x15[_0xd078[29]](_0x14d4x16)[_0xd078[32]](_0x14d4x18)};return _0x14d4x15[_0xd078[29]](304)[_0xd078[28]]()}}function respondWithFilteredResult(_0x14d4x15,_0x14d4x1b,_0x14d4x17){return function(_0x14d4x18){if(_0x14d4x18){var _0x14d4x1c=_0x14d4x18[_0xd078[33]],_0x14d4x1d=_0x14d4x1b[_0xd078[34]],_0x14d4x1e=_0x14d4x1b[_0xd078[34]]+ _0x14d4x1b[_0xd078[35]],_0x14d4x16;if(_0x14d4x1e>= _0x14d4x1c){_0x14d4x1e= _0x14d4x1c;_0x14d4x16= 200}else {_0x14d4x16= 206};_0x14d4x15[_0xd078[29]](_0x14d4x16);logger[_0xd078[24]](_0xd078[22],_0x14d4x17,_0x14d4x16,_0xd078[36]);logger[_0xd078[26]](_0xd078[25],_0x14d4x17,_0x14d4x16,_0xd078[30],JSON[_0xd078[31]](_0x14d4x18));return _0x14d4x15[_0xd078[40]](_0xd078[37],_0x14d4x1d+ _0xd078[38]+ _0x14d4x1e+ _0xd078[39]+ _0x14d4x1c)[_0xd078[32]](_0x14d4x18)};return null}}function patchUpdates(_0x14d4x20){return function(_0x14d4x18){try{jsonpatch[_0xd078[41]](_0x14d4x18,_0x14d4x20,true)}catch(err){return BPromise[_0xd078[42]](err)};return _0x14d4x18[_0xd078[43]]()}}function saveUpdates(_0x14d4x22,_0x14d4x16,_0x14d4x17){return function(_0x14d4x18){if(_0x14d4x18){return _0x14d4x18[_0xd078[46]](_0x14d4x22)[_0xd078[45]](function(_0x14d4x23){logger[_0xd078[24]](_0xd078[22],_0x14d4x17,_0x14d4x16,_0xd078[44]);logger[_0xd078[26]](_0xd078[25],_0x14d4x17,_0x14d4x16,_0xd078[44],JSON[_0xd078[31]](_0x14d4x18));return _0x14d4x23})};return null}}function removeEntity(_0x14d4x15,_0x14d4x16,_0x14d4x17){return function(_0x14d4x18){if(_0x14d4x18){return _0x14d4x18[_0xd078[48]]()[_0xd078[45]](function(){logger[_0xd078[24]](_0xd078[22],_0x14d4x17,_0x14d4x16,_0xd078[47]);logger[_0xd078[26]](_0xd078[25],_0x14d4x17,_0x14d4x16,_0xd078[47],JSON[_0xd078[31]](_0x14d4x18));_0x14d4x15[_0xd078[29]](204)[_0xd078[28]]()})}}}function handleEntityNotFound(_0x14d4x15,_0x14d4x16,_0x14d4x17){return function(_0x14d4x18){if(!_0x14d4x18){logger[_0xd078[50]](_0xd078[22],_0x14d4x17,404,_0xd078[49]);_0x14d4x15[_0xd078[29]](404)[_0xd078[28]]();return null};return _0x14d4x18}}function handleError(_0x14d4x15,_0x14d4x16,_0x14d4x17){_0x14d4x16= _0x14d4x16|| 500;return function(_0x14d4x27){logger[_0xd078[50]](_0xd078[22],_0x14d4x17,_0x14d4x16,JSON[_0xd078[31]](_0x14d4x27));delete _0x14d4x27[_0xd078[51]];_0x14d4x15[_0xd078[29]](_0x14d4x16)[_0xd078[52]](_0x14d4x27)}}exports[_0xd078[53]]= function(_0x14d4x28,_0x14d4x15){var _0x14d4x1b={},_0x14d4x29={};_0x14d4x29[_0xd078[54]]= _[_0xd078[57]](db[_0xd078[56]][_0xd078[55]]);_0x14d4x29[_0xd078[58]]= _[_0xd078[57]](_0x14d4x28[_0xd078[58]]);_0x14d4x29[_0xd078[59]]= _[_0xd078[60]](_0x14d4x29[_0xd078[54]],_0x14d4x29[_0xd078[58]]);_0x14d4x1b[_0xd078[61]]= _[_0xd078[60]](_0x14d4x29[_0xd078[54]],qs[_0xd078[62]](_0x14d4x28[_0xd078[58]][_0xd078[62]]));_0x14d4x1b[_0xd078[61]]= (_0x14d4x1b[_0xd078[61]][_0xd078[63]])?_0x14d4x1b[_0xd078[61]]:_0x14d4x29[_0xd078[54]];if(!_0x14d4x28[_0xd078[58]][_0xd078[65]](_0xd078[64])){_0x14d4x1b[_0xd078[35]]= qs[_0xd078[35]](_0x14d4x28[_0xd078[58]][_0xd078[35]]);_0x14d4x1b[_0xd078[34]]= qs[_0xd078[34]](_0x14d4x28[_0xd078[58]][_0xd078[34]])};_0x14d4x1b[_0xd078[66]]= qs[_0xd078[67]](_0x14d4x28[_0xd078[58]][_0xd078[67]]);_0x14d4x1b[_0xd078[68]]= qs[_0xd078[59]](_[_0xd078[69]](_0x14d4x28[_0xd078[58]],_0x14d4x29[_0xd078[59]]));if(_0x14d4x28[_0xd078[58]][_0xd078[70]]){_0x14d4x1b[_0xd078[68]]= _[_0xd078[73]](_0x14d4x1b[_0xd078[68]],{$or:_[_0xd078[72]](_0x14d4x1b[_0xd078[61]],function(_0x14d4x2a){var _0x14d4x2b={};_0x14d4x2b[_0x14d4x2a]= {$like:_0xd078[71]+ _0x14d4x28[_0xd078[58]][_0xd078[70]]+ _0xd078[71]};return _0x14d4x2b})})};_0x14d4x1b= _[_0xd078[73]]({},_0x14d4x1b,_0x14d4x28[_0xd078[74]]);return db[_0xd078[56]][_0xd078[76]](_0x14d4x1b)[_0xd078[45]](respondWithFilteredResult(_0x14d4x15,_0x14d4x1b,_0xd078[53]))[_0xd078[75]](handleError(_0x14d4x15,null,_0xd078[53]))};exports[_0xd078[77]]= function(_0x14d4x28,_0x14d4x15){var _0x14d4x1b={raw:false,where:{id:_0x14d4x28[_0xd078[79]][_0xd078[78]]}},_0x14d4x29={};_0x14d4x29[_0xd078[54]]= _[_0xd078[57]](db[_0xd078[56]][_0xd078[55]]);_0x14d4x29[_0xd078[58]]= _[_0xd078[57]](_0x14d4x28[_0xd078[58]]);_0x14d4x29[_0xd078[59]]= _[_0xd078[60]](_0x14d4x29[_0xd078[54]],_0x14d4x29[_0xd078[58]]);_0x14d4x1b[_0xd078[61]]= _[_0xd078[60]](_0x14d4x29[_0xd078[54]],qs[_0xd078[62]](_0x14d4x28[_0xd078[58]][_0xd078[62]]));_0x14d4x1b[_0xd078[61]]= (_0x14d4x1b[_0xd078[61]][_0xd078[63]])?_0x14d4x1b[_0xd078[61]]:_0x14d4x29[_0xd078[54]];_0x14d4x1b= _[_0xd078[73]]({},_0x14d4x1b,_0x14d4x28[_0xd078[74]]);return db[_0xd078[56]][_0xd078[80]](_0x14d4x1b)[_0xd078[45]](handleEntityNotFound(_0x14d4x15,null,_0xd078[77]))[_0xd078[45]](respondWithResult(_0x14d4x15,null,_0xd078[77]))[_0xd078[75]](handleError(_0x14d4x15,null,_0xd078[77]))};exports[_0xd078[81]]= function(_0x14d4x28,_0x14d4x15){return db[_0xd078[56]][_0xd078[81]](_0x14d4x28[_0xd078[82]],{})[_0xd078[45]](respondWithResult(_0x14d4x15,201,_0xd078[81]))[_0xd078[75]](handleError(_0x14d4x15,null,_0xd078[81]))};exports[_0xd078[83]]= function(_0x14d4x28,_0x14d4x15){return db[_0xd078[56]][_0xd078[83]](_0x14d4x28[_0xd078[82]],{raw:false,individualHooks:true})[_0xd078[45]](respondWithResult(_0x14d4x15,201,_0xd078[83]))[_0xd078[75]](handleError(_0x14d4x15,null,_0xd078[83]))};exports[_0xd078[46]]= function(_0x14d4x28,_0x14d4x15){if(_0x14d4x28[_0xd078[82]][_0xd078[78]]){delete _0x14d4x28[_0xd078[82]][_0xd078[78]]};return db[_0xd078[56]][_0xd078[80]]({where:{id:_0x14d4x28[_0xd078[79]][_0xd078[78]]}})[_0xd078[45]](handleEntityNotFound(_0x14d4x15,null,_0xd078[46]))[_0xd078[45]](saveUpdates(_0x14d4x28[_0xd078[82]],null,_0xd078[46]))[_0xd078[45]](respondWithResult(_0x14d4x15,null,_0xd078[46]))[_0xd078[75]](handleError(_0x14d4x15,null,_0xd078[46]))};exports[_0xd078[48]]= function(_0x14d4x28,_0x14d4x15){return db[_0xd078[56]][_0xd078[80]]({where:{id:_0x14d4x28[_0xd078[79]][_0xd078[78]]}})[_0xd078[45]](handleEntityNotFound(_0x14d4x15,null,_0xd078[48]))[_0xd078[45]](removeEntity(_0x14d4x15,null,_0xd078[48]))[_0xd078[75]](handleError(_0x14d4x15,null,_0xd078[48]))};exports[_0xd078[84]]= function(_0x14d4x28,_0x14d4x15){return db[_0xd078[56]][_0xd078[48]]({where:{id:_0x14d4x28[_0xd078[58]][_0xd078[85]]|| []},raw:false,individualHooks:true})[_0xd078[45]](respondWithResult(_0x14d4x15,204,_0xd078[84]))[_0xd078[75]](handleError(_0x14d4x15,null,_0xd078[84]))};exports[_0xd078[86]]= function(_0x14d4x28,_0x14d4x15,_0x14d4x2c){return db[_0xd078[92]][_0xd078[91]]({where:{id:_0x14d4x28[_0xd078[79]][_0xd078[78]]}})[_0xd078[45]](handleEntityNotFound(_0x14d4x15,null,_0xd078[86]))[_0xd078[45]](function(_0x14d4x18){if(_0x14d4x18){return db[_0xd078[90]][_0xd078[89]](function(_0x14d4x2d){return db[_0xd078[56]][_0xd078[48]]({where:{CustomReportId:_0x14d4x28[_0xd078[79]][_0xd078[78]]},transaction:_0x14d4x2d})[_0xd078[45]](function(_0x14d4x2e){var _0x14d4x2f=_[_0xd078[72]](_0x14d4x28[_0xd078[82]],function(_0x14d4x30){delete _0x14d4x30[_0xd078[78]];_0x14d4x30[_0xd078[88]]= _0x14d4x28[_0xd078[79]][_0xd078[78]];return _0x14d4x30});return db[_0xd078[56]][_0xd078[83]](_0x14d4x2f,{transaction:_0x14d4x2d})})})[_0xd078[45]](function(){return db[_0xd078[56]][_0xd078[87]]({where:{CustomReportId:_0x14d4x28[_0xd078[79]][_0xd078[78]]}})})}})[_0xd078[45]](respondWithResult(_0x14d4x15,null,_0xd078[86]))[_0xd078[75]](handleError(_0x14d4x15,null,_0xd078[86]))}
\ No newline at end of file
+var _0x97e5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x69\x64\x73","\x61\x64\x64\x46\x69\x65\x6C\x64\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x49\x64","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x6E\x64\x4F\x6E\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74"];_0x97e5[0];var jsonpatch=require(_0x97e5[1]);var rp=require(_0x97e5[2]);var moment=require(_0x97e5[3]);var BPromise=require(_0x97e5[4]);var util=require(_0x97e5[5]);var path=require(_0x97e5[6]);var sox=require(_0x97e5[7]);var ejs=require(_0x97e5[8]);var fs=require(_0x97e5[9]);var _=require(_0x97e5[10]);var squel=require(_0x97e5[11]);var crypto=require(_0x97e5[12]);var jsforce=require(_0x97e5[13]);var toCsv=require(_0x97e5[14]);var qs=require(_0x97e5[15]);var logger=require(_0x97e5[17])(_0x97e5[16]);var utils=require(_0x97e5[18]);var config=require(_0x97e5[19]);var db=require(_0x97e5[21])[_0x97e5[20]];function respondWithStatusCode(_0x7690x15,_0x7690x16,_0x7690x17){_0x7690x16= _0x7690x16|| 204;return function(_0x7690x18){if(_0x7690x18){logger[_0x97e5[24]](_0x97e5[22],_0x7690x17,_0x7690x16,_0x97e5[23]);logger[_0x97e5[26]](_0x97e5[25],_0x7690x17,_0x7690x16,_0x97e5[23]);return _0x7690x15[_0x97e5[27]](_0x7690x16)};return _0x7690x15[_0x97e5[29]](304)[_0x97e5[28]]()}}function respondWithResult(_0x7690x15,_0x7690x16,_0x7690x17){_0x7690x16= _0x7690x16|| 200;return function(_0x7690x18){if(_0x7690x18){logger[_0x97e5[24]](_0x97e5[22],_0x7690x17,_0x7690x16,_0x97e5[30]);logger[_0x97e5[26]](_0x97e5[25],_0x7690x17,_0x7690x16,_0x97e5[30],JSON[_0x97e5[31]](_0x7690x18));return _0x7690x15[_0x97e5[29]](_0x7690x16)[_0x97e5[32]](_0x7690x18)};return _0x7690x15[_0x97e5[29]](304)[_0x97e5[28]]()}}function respondWithFilteredResult(_0x7690x15,_0x7690x1b,_0x7690x17){return function(_0x7690x18){if(_0x7690x18){var _0x7690x1c=_0x7690x18[_0x97e5[33]],_0x7690x1d=_0x7690x1b[_0x97e5[34]],_0x7690x1e=_0x7690x1b[_0x97e5[34]]+ _0x7690x1b[_0x97e5[35]],_0x7690x16;if(_0x7690x1e>= _0x7690x1c){_0x7690x1e= _0x7690x1c;_0x7690x16= 200}else {_0x7690x16= 206};_0x7690x15[_0x97e5[29]](_0x7690x16);logger[_0x97e5[24]](_0x97e5[22],_0x7690x17,_0x7690x16,_0x97e5[36]);logger[_0x97e5[26]](_0x97e5[25],_0x7690x17,_0x7690x16,_0x97e5[30],JSON[_0x97e5[31]](_0x7690x18));return _0x7690x15[_0x97e5[40]](_0x97e5[37],_0x7690x1d+ _0x97e5[38]+ _0x7690x1e+ _0x97e5[39]+ _0x7690x1c)[_0x97e5[32]](_0x7690x18)};return null}}function patchUpdates(_0x7690x20){return function(_0x7690x18){try{jsonpatch[_0x97e5[41]](_0x7690x18,_0x7690x20,true)}catch(err){return BPromise[_0x97e5[42]](err)};return _0x7690x18[_0x97e5[43]]()}}function saveUpdates(_0x7690x22,_0x7690x16,_0x7690x17){return function(_0x7690x18){if(_0x7690x18){return _0x7690x18[_0x97e5[46]](_0x7690x22)[_0x97e5[45]](function(_0x7690x23){logger[_0x97e5[24]](_0x97e5[22],_0x7690x17,_0x7690x16,_0x97e5[44]);logger[_0x97e5[26]](_0x97e5[25],_0x7690x17,_0x7690x16,_0x97e5[44],JSON[_0x97e5[31]](_0x7690x18));return _0x7690x23})};return null}}function removeEntity(_0x7690x15,_0x7690x16,_0x7690x17){return function(_0x7690x18){if(_0x7690x18){return _0x7690x18[_0x97e5[48]]()[_0x97e5[45]](function(){logger[_0x97e5[24]](_0x97e5[22],_0x7690x17,_0x7690x16,_0x97e5[47]);logger[_0x97e5[26]](_0x97e5[25],_0x7690x17,_0x7690x16,_0x97e5[47],JSON[_0x97e5[31]](_0x7690x18));_0x7690x15[_0x97e5[29]](204)[_0x97e5[28]]()})}}}function handleEntityNotFound(_0x7690x15,_0x7690x16,_0x7690x17){return function(_0x7690x18){if(!_0x7690x18){logger[_0x97e5[50]](_0x97e5[22],_0x7690x17,404,_0x97e5[49]);_0x7690x15[_0x97e5[29]](404)[_0x97e5[28]]();return null};return _0x7690x18}}function handleError(_0x7690x15,_0x7690x16,_0x7690x17){_0x7690x16= _0x7690x16|| 500;return function(_0x7690x27){logger[_0x97e5[50]](_0x97e5[22],_0x7690x17,_0x7690x16,JSON[_0x97e5[31]](_0x7690x27));delete _0x7690x27[_0x97e5[51]];_0x7690x15[_0x97e5[29]](_0x7690x16)[_0x97e5[52]](_0x7690x27)}}exports[_0x97e5[53]]= function(_0x7690x28,_0x7690x15){var _0x7690x1b={},_0x7690x29={};_0x7690x29[_0x97e5[54]]= _[_0x97e5[57]](db[_0x97e5[56]][_0x97e5[55]]);_0x7690x29[_0x97e5[58]]= _[_0x97e5[57]](_0x7690x28[_0x97e5[58]]);_0x7690x29[_0x97e5[59]]= _[_0x97e5[60]](_0x7690x29[_0x97e5[54]],_0x7690x29[_0x97e5[58]]);_0x7690x1b[_0x97e5[61]]= _[_0x97e5[60]](_0x7690x29[_0x97e5[54]],qs[_0x97e5[62]](_0x7690x28[_0x97e5[58]][_0x97e5[62]]));_0x7690x1b[_0x97e5[61]]= (_0x7690x1b[_0x97e5[61]][_0x97e5[63]])?_0x7690x1b[_0x97e5[61]]:_0x7690x29[_0x97e5[54]];if(!_0x7690x28[_0x97e5[58]][_0x97e5[65]](_0x97e5[64])){_0x7690x1b[_0x97e5[35]]= qs[_0x97e5[35]](_0x7690x28[_0x97e5[58]][_0x97e5[35]]);_0x7690x1b[_0x97e5[34]]= qs[_0x97e5[34]](_0x7690x28[_0x97e5[58]][_0x97e5[34]])};_0x7690x1b[_0x97e5[66]]= qs[_0x97e5[67]](_0x7690x28[_0x97e5[58]][_0x97e5[67]]);_0x7690x1b[_0x97e5[68]]= qs[_0x97e5[59]](_[_0x97e5[69]](_0x7690x28[_0x97e5[58]],_0x7690x29[_0x97e5[59]]));if(_0x7690x28[_0x97e5[58]][_0x97e5[70]]){_0x7690x1b[_0x97e5[68]]= _[_0x97e5[73]](_0x7690x1b[_0x97e5[68]],{$or:_[_0x97e5[72]](_0x7690x1b[_0x97e5[61]],function(_0x7690x2a){var _0x7690x2b={};_0x7690x2b[_0x7690x2a]= {$like:_0x97e5[71]+ _0x7690x28[_0x97e5[58]][_0x97e5[70]]+ _0x97e5[71]};return _0x7690x2b})})};_0x7690x1b= _[_0x97e5[73]]({},_0x7690x1b,_0x7690x28[_0x97e5[74]]);return db[_0x97e5[56]][_0x97e5[76]](_0x7690x1b)[_0x97e5[45]](respondWithFilteredResult(_0x7690x15,_0x7690x1b,_0x97e5[53]))[_0x97e5[75]](handleError(_0x7690x15,null,_0x97e5[53]))};exports[_0x97e5[77]]= function(_0x7690x28,_0x7690x15){var _0x7690x1b={raw:false,where:{id:_0x7690x28[_0x97e5[79]][_0x97e5[78]]}},_0x7690x29={};_0x7690x29[_0x97e5[54]]= _[_0x97e5[57]](db[_0x97e5[56]][_0x97e5[55]]);_0x7690x29[_0x97e5[58]]= _[_0x97e5[57]](_0x7690x28[_0x97e5[58]]);_0x7690x29[_0x97e5[59]]= _[_0x97e5[60]](_0x7690x29[_0x97e5[54]],_0x7690x29[_0x97e5[58]]);_0x7690x1b[_0x97e5[61]]= _[_0x97e5[60]](_0x7690x29[_0x97e5[54]],qs[_0x97e5[62]](_0x7690x28[_0x97e5[58]][_0x97e5[62]]));_0x7690x1b[_0x97e5[61]]= (_0x7690x1b[_0x97e5[61]][_0x97e5[63]])?_0x7690x1b[_0x97e5[61]]:_0x7690x29[_0x97e5[54]];_0x7690x1b= _[_0x97e5[73]]({},_0x7690x1b,_0x7690x28[_0x97e5[74]]);return db[_0x97e5[56]][_0x97e5[80]](_0x7690x1b)[_0x97e5[45]](handleEntityNotFound(_0x7690x15,null,_0x97e5[77]))[_0x97e5[45]](respondWithResult(_0x7690x15,null,_0x97e5[77]))[_0x97e5[75]](handleError(_0x7690x15,null,_0x97e5[77]))};exports[_0x97e5[81]]= function(_0x7690x28,_0x7690x15){return db[_0x97e5[56]][_0x97e5[81]](_0x7690x28[_0x97e5[82]],{})[_0x97e5[45]](respondWithResult(_0x7690x15,201,_0x97e5[81]))[_0x97e5[75]](handleError(_0x7690x15,null,_0x97e5[81]))};exports[_0x97e5[83]]= function(_0x7690x28,_0x7690x15){return db[_0x97e5[56]][_0x97e5[83]](_0x7690x28[_0x97e5[82]],{raw:false,individualHooks:true})[_0x97e5[45]](respondWithResult(_0x7690x15,201,_0x97e5[83]))[_0x97e5[75]](handleError(_0x7690x15,null,_0x97e5[83]))};exports[_0x97e5[46]]= function(_0x7690x28,_0x7690x15){if(_0x7690x28[_0x97e5[82]][_0x97e5[78]]){delete _0x7690x28[_0x97e5[82]][_0x97e5[78]]};return db[_0x97e5[56]][_0x97e5[80]]({where:{id:_0x7690x28[_0x97e5[79]][_0x97e5[78]]}})[_0x97e5[45]](handleEntityNotFound(_0x7690x15,null,_0x97e5[46]))[_0x97e5[45]](saveUpdates(_0x7690x28[_0x97e5[82]],null,_0x97e5[46]))[_0x97e5[45]](respondWithResult(_0x7690x15,null,_0x97e5[46]))[_0x97e5[75]](handleError(_0x7690x15,null,_0x97e5[46]))};exports[_0x97e5[48]]= function(_0x7690x28,_0x7690x15){return db[_0x97e5[56]][_0x97e5[80]]({where:{id:_0x7690x28[_0x97e5[79]][_0x97e5[78]]}})[_0x97e5[45]](handleEntityNotFound(_0x7690x15,null,_0x97e5[48]))[_0x97e5[45]](removeEntity(_0x7690x15,null,_0x97e5[48]))[_0x97e5[75]](handleError(_0x7690x15,null,_0x97e5[48]))};exports[_0x97e5[84]]= function(_0x7690x28,_0x7690x15){return db[_0x97e5[56]][_0x97e5[48]]({where:{id:_0x7690x28[_0x97e5[58]][_0x97e5[85]]|| []},raw:false,individualHooks:true})[_0x97e5[45]](respondWithResult(_0x7690x15,204,_0x97e5[84]))[_0x97e5[75]](handleError(_0x7690x15,null,_0x97e5[84]))};exports[_0x97e5[86]]= function(_0x7690x28,_0x7690x15,_0x7690x2c){return db[_0x97e5[92]][_0x97e5[91]]({where:{id:_0x7690x28[_0x97e5[79]][_0x97e5[78]]}})[_0x97e5[45]](handleEntityNotFound(_0x7690x15,null,_0x97e5[86]))[_0x97e5[45]](function(_0x7690x18){if(_0x7690x18){return db[_0x97e5[90]][_0x97e5[89]](function(_0x7690x2d){return db[_0x97e5[56]][_0x97e5[48]]({where:{CustomReportId:_0x7690x28[_0x97e5[79]][_0x97e5[78]]},transaction:_0x7690x2d})[_0x97e5[45]](function(_0x7690x2e){var _0x7690x2f=_[_0x97e5[72]](_0x7690x28[_0x97e5[82]],function(_0x7690x30){delete _0x7690x30[_0x97e5[78]];_0x7690x30[_0x97e5[88]]= _0x7690x28[_0x97e5[79]][_0x97e5[78]];return _0x7690x30});return db[_0x97e5[56]][_0x97e5[83]](_0x7690x2f,{transaction:_0x7690x2d})})})[_0x97e5[45]](function(){return db[_0x97e5[56]][_0x97e5[87]]({where:{CustomReportId:_0x7690x28[_0x97e5[79]][_0x97e5[78]]}})})}})[_0x97e5[45]](respondWithResult(_0x7690x15,null,_0x97e5[86]))[_0x97e5[75]](handleError(_0x7690x15,null,_0x97e5[86]))}
\ No newline at end of file
index d790b0c..f0fcb70 100644 (file)
@@ -1 +1 @@
-var _0x1096=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x72\x65\x70\x6F\x72\x74\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x1096[0];var _=require(_0x1096[1]);var util=require(_0x1096[2]);var logger=require(_0x1096[4])(_0x1096[3]);var attributes=require(_0x1096[5]);module[_0x1096[6]]= function(_0x9881x5,_0x9881x6){return _0x9881x5[_0x1096[9]](_0x1096[7],attributes,{tableName:_0x1096[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xba23=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x72\x65\x70\x6F\x72\x74\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0xba23[0];var _=require(_0xba23[1]);var util=require(_0xba23[2]);var logger=require(_0xba23[4])(_0xba23[3]);var attributes=require(_0xba23[5]);module[_0xba23[6]]= function(_0xb0b5x5,_0xb0b5x6){return _0xb0b5x5[_0xba23[9]](_0xba23[7],attributes,{tableName:_0xba23[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 97d8a09..cb4ba02 100644 (file)
@@ -1 +1 @@
-var _0x4f0a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x4f0a[0];var _=require(_0x4f0a[1]);var util=require(_0x4f0a[2]);var moment=require(_0x4f0a[3]);var BPromise=require(_0x4f0a[4]);var db=require(_0x4f0a[6])[_0x4f0a[5]];var utils=require(_0x4f0a[7]);var logger=require(_0x4f0a[9])(_0x4f0a[8]);var jayson=require(_0x4f0a[10]);var client=jayson[_0x4f0a[12]][_0x4f0a[11]]({port:9002});function respondWithRpcPromise(_0x804axb,_0x804axc,_0x804axd){return  new BPromise(function(_0x804axe,_0x804axf){return client[_0x4f0a[25]](_0x804axb,_0x804axd)[_0x4f0a[24]](function(_0x804ax11){logger[_0x4f0a[17]](_0x4f0a[13],_0x804axc,_0x4f0a[16]);logger[_0x4f0a[20]](_0x4f0a[18],_0x804axc,_0x4f0a[16],JSON[_0x4f0a[19]](_0x804ax11));if(_0x804ax11[_0x4f0a[14]]){if(_0x804ax11[_0x4f0a[14]][_0x4f0a[21]]=== 500){logger[_0x4f0a[14]](_0x4f0a[13],_0x804axc,_0x804ax11[_0x4f0a[14]][_0x4f0a[22]]);return _0x804axf(_0x804ax11[_0x4f0a[14]][_0x4f0a[22]])};logger[_0x4f0a[14]](_0x4f0a[13],_0x804axc,_0x804ax11[_0x4f0a[14]][_0x4f0a[22]]);return _0x804axe(_0x804ax11[_0x4f0a[14]][_0x4f0a[22]])}else {logger[_0x4f0a[17]](_0x4f0a[13],_0x804axc,_0x4f0a[16]);_0x804axe(_0x804ax11[_0x4f0a[23]][_0x4f0a[22]])}})[_0x4f0a[15]](function(_0x804ax10){logger[_0x4f0a[14]](_0x4f0a[13],_0x804axc,_0x804ax10);_0x804axf(_0x804ax10)})})}
\ No newline at end of file
+var _0xe447=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe447[0];var _=require(_0xe447[1]);var util=require(_0xe447[2]);var moment=require(_0xe447[3]);var BPromise=require(_0xe447[4]);var db=require(_0xe447[6])[_0xe447[5]];var utils=require(_0xe447[7]);var logger=require(_0xe447[9])(_0xe447[8]);var jayson=require(_0xe447[10]);var client=jayson[_0xe447[12]][_0xe447[11]]({port:9002});function respondWithRpcPromise(_0xf224xb,_0xf224xc,_0xf224xd){return  new BPromise(function(_0xf224xe,_0xf224xf){return client[_0xe447[25]](_0xf224xb,_0xf224xd)[_0xe447[24]](function(_0xf224x11){logger[_0xe447[17]](_0xe447[13],_0xf224xc,_0xe447[16]);logger[_0xe447[20]](_0xe447[18],_0xf224xc,_0xe447[16],JSON[_0xe447[19]](_0xf224x11));if(_0xf224x11[_0xe447[14]]){if(_0xf224x11[_0xe447[14]][_0xe447[21]]=== 500){logger[_0xe447[14]](_0xe447[13],_0xf224xc,_0xf224x11[_0xe447[14]][_0xe447[22]]);return _0xf224xf(_0xf224x11[_0xe447[14]][_0xe447[22]])};logger[_0xe447[14]](_0xe447[13],_0xf224xc,_0xf224x11[_0xe447[14]][_0xe447[22]]);return _0xf224xe(_0xf224x11[_0xe447[14]][_0xe447[22]])}else {logger[_0xe447[17]](_0xe447[13],_0xf224xc,_0xe447[16]);_0xf224xe(_0xf224x11[_0xe447[23]][_0xe447[22]])}})[_0xe447[15]](function(_0xf224x10){logger[_0xe447[14]](_0xe447[13],_0xf224xc,_0xf224x10);_0xf224xf(_0xf224x10)})})}
\ No newline at end of file
index 426bf11..07641f2 100644 (file)
@@ -1 +1 @@
-var _0x6208=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x2F\x3A\x69\x64\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x61\x64\x64\x46\x69\x65\x6C\x64\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x2F\x64\x65\x73\x74\x72\x6F\x79\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x64\x65\x73\x74\x72\x6F\x79","\x65\x78\x70\x6F\x72\x74\x73"];_0x6208[0];var multer=require(_0x6208[1]);var util=require(_0x6208[2]);var path=require(_0x6208[3]);var express=require(_0x6208[4]);var router=express.Router();var auth=require(_0x6208[5]);var config=require(_0x6208[6]);var controller=require(_0x6208[7]);router[_0x6208[11]](_0x6208[8],auth[_0x6208[9]](),controller[_0x6208[10]]);router[_0x6208[11]](_0x6208[12],auth[_0x6208[9]](),controller[_0x6208[13]]);router[_0x6208[15]](_0x6208[8],auth[_0x6208[9]](),controller[_0x6208[14]]);router[_0x6208[15]](_0x6208[16],auth[_0x6208[9]](),controller[_0x6208[17]]);router[_0x6208[15]](_0x6208[18],auth[_0x6208[9]](),controller[_0x6208[19]]);router[_0x6208[21]](_0x6208[12],auth[_0x6208[9]](),controller[_0x6208[20]]);router[_0x6208[24]](_0x6208[22],auth[_0x6208[9]](),controller[_0x6208[23]]);router[_0x6208[24]](_0x6208[12],auth[_0x6208[9]](),controller[_0x6208[25]]);module[_0x6208[26]]= router
\ No newline at end of file
+var _0xdd58=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x2F\x3A\x69\x64\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x61\x64\x64\x46\x69\x65\x6C\x64\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x2F\x64\x65\x73\x74\x72\x6F\x79\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x64\x65\x73\x74\x72\x6F\x79","\x65\x78\x70\x6F\x72\x74\x73"];_0xdd58[0];var multer=require(_0xdd58[1]);var util=require(_0xdd58[2]);var path=require(_0xdd58[3]);var express=require(_0xdd58[4]);var router=express.Router();var auth=require(_0xdd58[5]);var config=require(_0xdd58[6]);var controller=require(_0xdd58[7]);router[_0xdd58[11]](_0xdd58[8],auth[_0xdd58[9]](),controller[_0xdd58[10]]);router[_0xdd58[11]](_0xdd58[12],auth[_0xdd58[9]](),controller[_0xdd58[13]]);router[_0xdd58[15]](_0xdd58[8],auth[_0xdd58[9]](),controller[_0xdd58[14]]);router[_0xdd58[15]](_0xdd58[16],auth[_0xdd58[9]](),controller[_0xdd58[17]]);router[_0xdd58[15]](_0xdd58[18],auth[_0xdd58[9]](),controller[_0xdd58[19]]);router[_0xdd58[21]](_0xdd58[12],auth[_0xdd58[9]](),controller[_0xdd58[20]]);router[_0xdd58[24]](_0xdd58[22],auth[_0xdd58[9]](),controller[_0xdd58[23]]);router[_0xdd58[24]](_0xdd58[12],auth[_0xdd58[9]](),controller[_0xdd58[25]]);module[_0xdd58[26]]= router
\ No newline at end of file
index 0103b37..563fba5 100644 (file)
@@ -1 +1 @@
-var _0xf1ad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x54\x45\x58\x54"];_0xf1ad[0];var Sequelize=require(_0xf1ad[1]);module[_0xf1ad[2]]= {name:{type:Sequelize[_0xf1ad[3]],allowNull:false,unique:_0xf1ad[4]},table:{type:Sequelize[_0xf1ad[3]]},metric:{type:Sequelize[_0xf1ad[5]]},description:{type:Sequelize[_0xf1ad[3]]}}
\ No newline at end of file
+var _0xf26e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x54\x45\x58\x54"];_0xf26e[0];var Sequelize=require(_0xf26e[1]);module[_0xf26e[2]]= {name:{type:Sequelize[_0xf26e[3]],allowNull:false,unique:_0xf26e[4]},table:{type:Sequelize[_0xf26e[3]]},metric:{type:Sequelize[_0xf26e[5]]},description:{type:Sequelize[_0xf26e[3]]}}
\ No newline at end of file
index 33c31f9..1773509 100644 (file)
@@ -1 +1 @@
-var _0x37fb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x37fb[0];var jsonpatch=require(_0x37fb[1]);var rp=require(_0x37fb[2]);var moment=require(_0x37fb[3]);var BPromise=require(_0x37fb[4]);var util=require(_0x37fb[5]);var path=require(_0x37fb[6]);var sox=require(_0x37fb[7]);var ejs=require(_0x37fb[8]);var fs=require(_0x37fb[9]);var _=require(_0x37fb[10]);var squel=require(_0x37fb[11]);var crypto=require(_0x37fb[12]);var jsforce=require(_0x37fb[13]);var toCsv=require(_0x37fb[14]);var qs=require(_0x37fb[15]);var logger=require(_0x37fb[17])(_0x37fb[16]);var utils=require(_0x37fb[18]);var config=require(_0x37fb[19]);var db=require(_0x37fb[21])[_0x37fb[20]];function respondWithStatusCode(_0x3434x15,_0x3434x16,_0x3434x17){_0x3434x16= _0x3434x16|| 204;return function(_0x3434x18){if(_0x3434x18){logger[_0x37fb[24]](_0x37fb[22],_0x3434x17,_0x3434x16,_0x37fb[23]);logger[_0x37fb[26]](_0x37fb[25],_0x3434x17,_0x3434x16,_0x37fb[23]);return _0x3434x15[_0x37fb[27]](_0x3434x16)};return _0x3434x15[_0x37fb[29]](304)[_0x37fb[28]]()}}function respondWithResult(_0x3434x15,_0x3434x16,_0x3434x17){_0x3434x16= _0x3434x16|| 200;return function(_0x3434x18){if(_0x3434x18){logger[_0x37fb[24]](_0x37fb[22],_0x3434x17,_0x3434x16,_0x37fb[30]);logger[_0x37fb[26]](_0x37fb[25],_0x3434x17,_0x3434x16,_0x37fb[30],JSON[_0x37fb[31]](_0x3434x18));return _0x3434x15[_0x37fb[29]](_0x3434x16)[_0x37fb[32]](_0x3434x18)};return _0x3434x15[_0x37fb[29]](304)[_0x37fb[28]]()}}function respondWithFilteredResult(_0x3434x15,_0x3434x1b,_0x3434x17){return function(_0x3434x18){if(_0x3434x18){var _0x3434x1c=_0x3434x18[_0x37fb[33]],_0x3434x1d=_0x3434x1b[_0x37fb[34]],_0x3434x1e=_0x3434x1b[_0x37fb[34]]+ _0x3434x1b[_0x37fb[35]],_0x3434x16;if(_0x3434x1e>= _0x3434x1c){_0x3434x1e= _0x3434x1c;_0x3434x16= 200}else {_0x3434x16= 206};_0x3434x15[_0x37fb[29]](_0x3434x16);logger[_0x37fb[24]](_0x37fb[22],_0x3434x17,_0x3434x16,_0x37fb[36]);logger[_0x37fb[26]](_0x37fb[25],_0x3434x17,_0x3434x16,_0x37fb[30],JSON[_0x37fb[31]](_0x3434x18));return _0x3434x15[_0x37fb[40]](_0x37fb[37],_0x3434x1d+ _0x37fb[38]+ _0x3434x1e+ _0x37fb[39]+ _0x3434x1c)[_0x37fb[32]](_0x3434x18)};return null}}function patchUpdates(_0x3434x20){return function(_0x3434x18){try{jsonpatch[_0x37fb[41]](_0x3434x18,_0x3434x20,true)}catch(err){return BPromise[_0x37fb[42]](err)};return _0x3434x18[_0x37fb[43]]()}}function saveUpdates(_0x3434x22,_0x3434x16,_0x3434x17){return function(_0x3434x18){if(_0x3434x18){return _0x3434x18[_0x37fb[46]](_0x3434x22)[_0x37fb[45]](function(_0x3434x23){logger[_0x37fb[24]](_0x37fb[22],_0x3434x17,_0x3434x16,_0x37fb[44]);logger[_0x37fb[26]](_0x37fb[25],_0x3434x17,_0x3434x16,_0x37fb[44],JSON[_0x37fb[31]](_0x3434x18));return _0x3434x23})};return null}}function removeEntity(_0x3434x15,_0x3434x16,_0x3434x17){return function(_0x3434x18){if(_0x3434x18){return _0x3434x18[_0x37fb[48]]()[_0x37fb[45]](function(){logger[_0x37fb[24]](_0x37fb[22],_0x3434x17,_0x3434x16,_0x37fb[47]);logger[_0x37fb[26]](_0x37fb[25],_0x3434x17,_0x3434x16,_0x37fb[47],JSON[_0x37fb[31]](_0x3434x18));_0x3434x15[_0x37fb[29]](204)[_0x37fb[28]]()})}}}function handleEntityNotFound(_0x3434x15,_0x3434x16,_0x3434x17){return function(_0x3434x18){if(!_0x3434x18){logger[_0x37fb[50]](_0x37fb[22],_0x3434x17,404,_0x37fb[49]);_0x3434x15[_0x37fb[29]](404)[_0x37fb[28]]();return null};return _0x3434x18}}function handleError(_0x3434x15,_0x3434x16,_0x3434x17){_0x3434x16= _0x3434x16|| 500;return function(_0x3434x27){logger[_0x37fb[50]](_0x37fb[22],_0x3434x17,_0x3434x16,JSON[_0x37fb[31]](_0x3434x27));delete _0x3434x27[_0x37fb[51]];_0x3434x15[_0x37fb[29]](_0x3434x16)[_0x37fb[52]](_0x3434x27)}}exports[_0x37fb[53]]= function(_0x3434x28,_0x3434x15){var _0x3434x1b={},_0x3434x29={};_0x3434x29[_0x37fb[54]]= _[_0x37fb[57]](db[_0x37fb[56]][_0x37fb[55]]);_0x3434x29[_0x37fb[58]]= _[_0x37fb[57]](_0x3434x28[_0x37fb[58]]);_0x3434x29[_0x37fb[59]]= _[_0x37fb[60]](_0x3434x29[_0x37fb[54]],_0x3434x29[_0x37fb[58]]);_0x3434x1b[_0x37fb[61]]= _[_0x37fb[60]](_0x3434x29[_0x37fb[54]],qs[_0x37fb[62]](_0x3434x28[_0x37fb[58]][_0x37fb[62]]));_0x3434x1b[_0x37fb[61]]= (_0x3434x1b[_0x37fb[61]][_0x37fb[63]])?_0x3434x1b[_0x37fb[61]]:_0x3434x29[_0x37fb[54]];if(!_0x3434x28[_0x37fb[58]][_0x37fb[65]](_0x37fb[64])){_0x3434x1b[_0x37fb[35]]= qs[_0x37fb[35]](_0x3434x28[_0x37fb[58]][_0x37fb[35]]);_0x3434x1b[_0x37fb[34]]= qs[_0x37fb[34]](_0x3434x28[_0x37fb[58]][_0x37fb[34]])};_0x3434x1b[_0x37fb[66]]= qs[_0x37fb[67]](_0x3434x28[_0x37fb[58]][_0x37fb[67]]);_0x3434x1b[_0x37fb[68]]= qs[_0x37fb[59]](_[_0x37fb[69]](_0x3434x28[_0x37fb[58]],_0x3434x29[_0x37fb[59]]));if(_0x3434x28[_0x37fb[58]][_0x37fb[70]]){_0x3434x1b[_0x37fb[68]]= _[_0x37fb[73]](_0x3434x1b[_0x37fb[68]],{$or:_[_0x37fb[72]](_0x3434x1b[_0x37fb[61]],function(_0x3434x2a){var _0x3434x2b={};_0x3434x2b[_0x3434x2a]= {$like:_0x37fb[71]+ _0x3434x28[_0x37fb[58]][_0x37fb[70]]+ _0x37fb[71]};return _0x3434x2b})})};_0x3434x1b= _[_0x37fb[73]]({},_0x3434x1b,_0x3434x28[_0x37fb[74]]);return db[_0x37fb[56]][_0x37fb[76]](_0x3434x1b)[_0x37fb[45]](respondWithFilteredResult(_0x3434x15,_0x3434x1b,_0x37fb[53]))[_0x37fb[75]](handleError(_0x3434x15,null,_0x37fb[53]))};exports[_0x37fb[77]]= function(_0x3434x28,_0x3434x15){var _0x3434x1b={raw:true,where:{id:_0x3434x28[_0x37fb[79]][_0x37fb[78]]}},_0x3434x29={};_0x3434x29[_0x37fb[54]]= _[_0x37fb[57]](db[_0x37fb[56]][_0x37fb[55]]);_0x3434x29[_0x37fb[58]]= _[_0x37fb[57]](_0x3434x28[_0x37fb[58]]);_0x3434x29[_0x37fb[59]]= _[_0x37fb[60]](_0x3434x29[_0x37fb[54]],_0x3434x29[_0x37fb[58]]);_0x3434x1b[_0x37fb[61]]= _[_0x37fb[60]](_0x3434x29[_0x37fb[54]],qs[_0x37fb[62]](_0x3434x28[_0x37fb[58]][_0x37fb[62]]));_0x3434x1b[_0x37fb[61]]= (_0x3434x1b[_0x37fb[61]][_0x37fb[63]])?_0x3434x1b[_0x37fb[61]]:_0x3434x29[_0x37fb[54]];_0x3434x1b= _[_0x37fb[73]]({},_0x3434x1b,_0x3434x28[_0x37fb[74]]);return db[_0x37fb[56]][_0x37fb[80]](_0x3434x1b)[_0x37fb[45]](handleEntityNotFound(_0x3434x15,null,_0x37fb[77]))[_0x37fb[45]](respondWithResult(_0x3434x15,null,_0x37fb[77]))[_0x37fb[75]](handleError(_0x3434x15,null,_0x37fb[77]))};exports[_0x37fb[81]]= function(_0x3434x28,_0x3434x15){return db[_0x37fb[56]][_0x37fb[81]](_0x3434x28[_0x37fb[82]],{})[_0x37fb[45]](respondWithResult(_0x3434x15,201,_0x37fb[81]))[_0x37fb[75]](handleError(_0x3434x15,null,_0x37fb[81]))};exports[_0x37fb[46]]= function(_0x3434x28,_0x3434x15){if(_0x3434x28[_0x37fb[82]][_0x37fb[78]]){delete _0x3434x28[_0x37fb[82]][_0x37fb[78]]};return db[_0x37fb[56]][_0x37fb[80]]({where:{id:_0x3434x28[_0x37fb[79]][_0x37fb[78]]}})[_0x37fb[45]](handleEntityNotFound(_0x3434x15,null,_0x37fb[46]))[_0x37fb[45]](saveUpdates(_0x3434x28[_0x37fb[82]],null,_0x37fb[46]))[_0x37fb[45]](respondWithResult(_0x3434x15,null,_0x37fb[46]))[_0x37fb[75]](handleError(_0x3434x15,null,_0x37fb[46]))};exports[_0x37fb[48]]= function(_0x3434x28,_0x3434x15){return db[_0x37fb[56]][_0x37fb[80]]({where:{id:_0x3434x28[_0x37fb[79]][_0x37fb[78]]}})[_0x37fb[45]](handleEntityNotFound(_0x3434x15,null,_0x37fb[48]))[_0x37fb[45]](removeEntity(_0x3434x15,null,_0x37fb[48]))[_0x37fb[75]](handleError(_0x3434x15,null,_0x37fb[48]))}
\ No newline at end of file
+var _0x9bb0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x9bb0[0];var jsonpatch=require(_0x9bb0[1]);var rp=require(_0x9bb0[2]);var moment=require(_0x9bb0[3]);var BPromise=require(_0x9bb0[4]);var util=require(_0x9bb0[5]);var path=require(_0x9bb0[6]);var sox=require(_0x9bb0[7]);var ejs=require(_0x9bb0[8]);var fs=require(_0x9bb0[9]);var _=require(_0x9bb0[10]);var squel=require(_0x9bb0[11]);var crypto=require(_0x9bb0[12]);var jsforce=require(_0x9bb0[13]);var toCsv=require(_0x9bb0[14]);var qs=require(_0x9bb0[15]);var logger=require(_0x9bb0[17])(_0x9bb0[16]);var utils=require(_0x9bb0[18]);var config=require(_0x9bb0[19]);var db=require(_0x9bb0[21])[_0x9bb0[20]];function respondWithStatusCode(_0x2f8fx15,_0x2f8fx16,_0x2f8fx17){_0x2f8fx16= _0x2f8fx16|| 204;return function(_0x2f8fx18){if(_0x2f8fx18){logger[_0x9bb0[24]](_0x9bb0[22],_0x2f8fx17,_0x2f8fx16,_0x9bb0[23]);logger[_0x9bb0[26]](_0x9bb0[25],_0x2f8fx17,_0x2f8fx16,_0x9bb0[23]);return _0x2f8fx15[_0x9bb0[27]](_0x2f8fx16)};return _0x2f8fx15[_0x9bb0[29]](304)[_0x9bb0[28]]()}}function respondWithResult(_0x2f8fx15,_0x2f8fx16,_0x2f8fx17){_0x2f8fx16= _0x2f8fx16|| 200;return function(_0x2f8fx18){if(_0x2f8fx18){logger[_0x9bb0[24]](_0x9bb0[22],_0x2f8fx17,_0x2f8fx16,_0x9bb0[30]);logger[_0x9bb0[26]](_0x9bb0[25],_0x2f8fx17,_0x2f8fx16,_0x9bb0[30],JSON[_0x9bb0[31]](_0x2f8fx18));return _0x2f8fx15[_0x9bb0[29]](_0x2f8fx16)[_0x9bb0[32]](_0x2f8fx18)};return _0x2f8fx15[_0x9bb0[29]](304)[_0x9bb0[28]]()}}function respondWithFilteredResult(_0x2f8fx15,_0x2f8fx1b,_0x2f8fx17){return function(_0x2f8fx18){if(_0x2f8fx18){var _0x2f8fx1c=_0x2f8fx18[_0x9bb0[33]],_0x2f8fx1d=_0x2f8fx1b[_0x9bb0[34]],_0x2f8fx1e=_0x2f8fx1b[_0x9bb0[34]]+ _0x2f8fx1b[_0x9bb0[35]],_0x2f8fx16;if(_0x2f8fx1e>= _0x2f8fx1c){_0x2f8fx1e= _0x2f8fx1c;_0x2f8fx16= 200}else {_0x2f8fx16= 206};_0x2f8fx15[_0x9bb0[29]](_0x2f8fx16);logger[_0x9bb0[24]](_0x9bb0[22],_0x2f8fx17,_0x2f8fx16,_0x9bb0[36]);logger[_0x9bb0[26]](_0x9bb0[25],_0x2f8fx17,_0x2f8fx16,_0x9bb0[30],JSON[_0x9bb0[31]](_0x2f8fx18));return _0x2f8fx15[_0x9bb0[40]](_0x9bb0[37],_0x2f8fx1d+ _0x9bb0[38]+ _0x2f8fx1e+ _0x9bb0[39]+ _0x2f8fx1c)[_0x9bb0[32]](_0x2f8fx18)};return null}}function patchUpdates(_0x2f8fx20){return function(_0x2f8fx18){try{jsonpatch[_0x9bb0[41]](_0x2f8fx18,_0x2f8fx20,true)}catch(err){return BPromise[_0x9bb0[42]](err)};return _0x2f8fx18[_0x9bb0[43]]()}}function saveUpdates(_0x2f8fx22,_0x2f8fx16,_0x2f8fx17){return function(_0x2f8fx18){if(_0x2f8fx18){return _0x2f8fx18[_0x9bb0[46]](_0x2f8fx22)[_0x9bb0[45]](function(_0x2f8fx23){logger[_0x9bb0[24]](_0x9bb0[22],_0x2f8fx17,_0x2f8fx16,_0x9bb0[44]);logger[_0x9bb0[26]](_0x9bb0[25],_0x2f8fx17,_0x2f8fx16,_0x9bb0[44],JSON[_0x9bb0[31]](_0x2f8fx18));return _0x2f8fx23})};return null}}function removeEntity(_0x2f8fx15,_0x2f8fx16,_0x2f8fx17){return function(_0x2f8fx18){if(_0x2f8fx18){return _0x2f8fx18[_0x9bb0[48]]()[_0x9bb0[45]](function(){logger[_0x9bb0[24]](_0x9bb0[22],_0x2f8fx17,_0x2f8fx16,_0x9bb0[47]);logger[_0x9bb0[26]](_0x9bb0[25],_0x2f8fx17,_0x2f8fx16,_0x9bb0[47],JSON[_0x9bb0[31]](_0x2f8fx18));_0x2f8fx15[_0x9bb0[29]](204)[_0x9bb0[28]]()})}}}function handleEntityNotFound(_0x2f8fx15,_0x2f8fx16,_0x2f8fx17){return function(_0x2f8fx18){if(!_0x2f8fx18){logger[_0x9bb0[50]](_0x9bb0[22],_0x2f8fx17,404,_0x9bb0[49]);_0x2f8fx15[_0x9bb0[29]](404)[_0x9bb0[28]]();return null};return _0x2f8fx18}}function handleError(_0x2f8fx15,_0x2f8fx16,_0x2f8fx17){_0x2f8fx16= _0x2f8fx16|| 500;return function(_0x2f8fx27){logger[_0x9bb0[50]](_0x9bb0[22],_0x2f8fx17,_0x2f8fx16,JSON[_0x9bb0[31]](_0x2f8fx27));delete _0x2f8fx27[_0x9bb0[51]];_0x2f8fx15[_0x9bb0[29]](_0x2f8fx16)[_0x9bb0[52]](_0x2f8fx27)}}exports[_0x9bb0[53]]= function(_0x2f8fx28,_0x2f8fx15){var _0x2f8fx1b={},_0x2f8fx29={};_0x2f8fx29[_0x9bb0[54]]= _[_0x9bb0[57]](db[_0x9bb0[56]][_0x9bb0[55]]);_0x2f8fx29[_0x9bb0[58]]= _[_0x9bb0[57]](_0x2f8fx28[_0x9bb0[58]]);_0x2f8fx29[_0x9bb0[59]]= _[_0x9bb0[60]](_0x2f8fx29[_0x9bb0[54]],_0x2f8fx29[_0x9bb0[58]]);_0x2f8fx1b[_0x9bb0[61]]= _[_0x9bb0[60]](_0x2f8fx29[_0x9bb0[54]],qs[_0x9bb0[62]](_0x2f8fx28[_0x9bb0[58]][_0x9bb0[62]]));_0x2f8fx1b[_0x9bb0[61]]= (_0x2f8fx1b[_0x9bb0[61]][_0x9bb0[63]])?_0x2f8fx1b[_0x9bb0[61]]:_0x2f8fx29[_0x9bb0[54]];if(!_0x2f8fx28[_0x9bb0[58]][_0x9bb0[65]](_0x9bb0[64])){_0x2f8fx1b[_0x9bb0[35]]= qs[_0x9bb0[35]](_0x2f8fx28[_0x9bb0[58]][_0x9bb0[35]]);_0x2f8fx1b[_0x9bb0[34]]= qs[_0x9bb0[34]](_0x2f8fx28[_0x9bb0[58]][_0x9bb0[34]])};_0x2f8fx1b[_0x9bb0[66]]= qs[_0x9bb0[67]](_0x2f8fx28[_0x9bb0[58]][_0x9bb0[67]]);_0x2f8fx1b[_0x9bb0[68]]= qs[_0x9bb0[59]](_[_0x9bb0[69]](_0x2f8fx28[_0x9bb0[58]],_0x2f8fx29[_0x9bb0[59]]));if(_0x2f8fx28[_0x9bb0[58]][_0x9bb0[70]]){_0x2f8fx1b[_0x9bb0[68]]= _[_0x9bb0[73]](_0x2f8fx1b[_0x9bb0[68]],{$or:_[_0x9bb0[72]](_0x2f8fx1b[_0x9bb0[61]],function(_0x2f8fx2a){var _0x2f8fx2b={};_0x2f8fx2b[_0x2f8fx2a]= {$like:_0x9bb0[71]+ _0x2f8fx28[_0x9bb0[58]][_0x9bb0[70]]+ _0x9bb0[71]};return _0x2f8fx2b})})};_0x2f8fx1b= _[_0x9bb0[73]]({},_0x2f8fx1b,_0x2f8fx28[_0x9bb0[74]]);return db[_0x9bb0[56]][_0x9bb0[76]](_0x2f8fx1b)[_0x9bb0[45]](respondWithFilteredResult(_0x2f8fx15,_0x2f8fx1b,_0x9bb0[53]))[_0x9bb0[75]](handleError(_0x2f8fx15,null,_0x9bb0[53]))};exports[_0x9bb0[77]]= function(_0x2f8fx28,_0x2f8fx15){var _0x2f8fx1b={raw:true,where:{id:_0x2f8fx28[_0x9bb0[79]][_0x9bb0[78]]}},_0x2f8fx29={};_0x2f8fx29[_0x9bb0[54]]= _[_0x9bb0[57]](db[_0x9bb0[56]][_0x9bb0[55]]);_0x2f8fx29[_0x9bb0[58]]= _[_0x9bb0[57]](_0x2f8fx28[_0x9bb0[58]]);_0x2f8fx29[_0x9bb0[59]]= _[_0x9bb0[60]](_0x2f8fx29[_0x9bb0[54]],_0x2f8fx29[_0x9bb0[58]]);_0x2f8fx1b[_0x9bb0[61]]= _[_0x9bb0[60]](_0x2f8fx29[_0x9bb0[54]],qs[_0x9bb0[62]](_0x2f8fx28[_0x9bb0[58]][_0x9bb0[62]]));_0x2f8fx1b[_0x9bb0[61]]= (_0x2f8fx1b[_0x9bb0[61]][_0x9bb0[63]])?_0x2f8fx1b[_0x9bb0[61]]:_0x2f8fx29[_0x9bb0[54]];_0x2f8fx1b= _[_0x9bb0[73]]({},_0x2f8fx1b,_0x2f8fx28[_0x9bb0[74]]);return db[_0x9bb0[56]][_0x9bb0[80]](_0x2f8fx1b)[_0x9bb0[45]](handleEntityNotFound(_0x2f8fx15,null,_0x9bb0[77]))[_0x9bb0[45]](respondWithResult(_0x2f8fx15,null,_0x9bb0[77]))[_0x9bb0[75]](handleError(_0x2f8fx15,null,_0x9bb0[77]))};exports[_0x9bb0[81]]= function(_0x2f8fx28,_0x2f8fx15){return db[_0x9bb0[56]][_0x9bb0[81]](_0x2f8fx28[_0x9bb0[82]],{})[_0x9bb0[45]](respondWithResult(_0x2f8fx15,201,_0x9bb0[81]))[_0x9bb0[75]](handleError(_0x2f8fx15,null,_0x9bb0[81]))};exports[_0x9bb0[46]]= function(_0x2f8fx28,_0x2f8fx15){if(_0x2f8fx28[_0x9bb0[82]][_0x9bb0[78]]){delete _0x2f8fx28[_0x9bb0[82]][_0x9bb0[78]]};return db[_0x9bb0[56]][_0x9bb0[80]]({where:{id:_0x2f8fx28[_0x9bb0[79]][_0x9bb0[78]]}})[_0x9bb0[45]](handleEntityNotFound(_0x2f8fx15,null,_0x9bb0[46]))[_0x9bb0[45]](saveUpdates(_0x2f8fx28[_0x9bb0[82]],null,_0x9bb0[46]))[_0x9bb0[45]](respondWithResult(_0x2f8fx15,null,_0x9bb0[46]))[_0x9bb0[75]](handleError(_0x2f8fx15,null,_0x9bb0[46]))};exports[_0x9bb0[48]]= function(_0x2f8fx28,_0x2f8fx15){return db[_0x9bb0[56]][_0x9bb0[80]]({where:{id:_0x2f8fx28[_0x9bb0[79]][_0x9bb0[78]]}})[_0x9bb0[45]](handleEntityNotFound(_0x2f8fx15,null,_0x9bb0[48]))[_0x9bb0[45]](removeEntity(_0x2f8fx15,null,_0x9bb0[48]))[_0x9bb0[75]](handleError(_0x2f8fx15,null,_0x9bb0[48]))}
\ No newline at end of file
index b7d35fe..d290a5b 100644 (file)
@@ -1 +1 @@
-var _0xcc2c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x6D\x65\x74\x72\x69\x63\x73","\x64\x65\x66\x69\x6E\x65"];_0xcc2c[0];var _=require(_0xcc2c[1]);var util=require(_0xcc2c[2]);var logger=require(_0xcc2c[4])(_0xcc2c[3]);var attributes=require(_0xcc2c[5]);module[_0xcc2c[6]]= function(_0x18e5x5,_0x18e5x6){return _0x18e5x5[_0xcc2c[9]](_0xcc2c[7],attributes,{tableName:_0xcc2c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa190=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x6D\x65\x74\x72\x69\x63\x73","\x64\x65\x66\x69\x6E\x65"];_0xa190[0];var _=require(_0xa190[1]);var util=require(_0xa190[2]);var logger=require(_0xa190[4])(_0xa190[3]);var attributes=require(_0xa190[5]);module[_0xa190[6]]= function(_0x295ex5,_0x295ex6){return _0x295ex5[_0xa190[9]](_0xa190[7],attributes,{tableName:_0xa190[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 0e73f8a..11f0433 100644 (file)
@@ -1 +1 @@
-var _0x936b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x936b[0];var _=require(_0x936b[1]);var util=require(_0x936b[2]);var moment=require(_0x936b[3]);var BPromise=require(_0x936b[4]);var db=require(_0x936b[6])[_0x936b[5]];var utils=require(_0x936b[7]);var logger=require(_0x936b[9])(_0x936b[8]);var jayson=require(_0x936b[10]);var client=jayson[_0x936b[12]][_0x936b[11]]({port:9002});function respondWithRpcPromise(_0xe206xb,_0xe206xc,_0xe206xd){return  new BPromise(function(_0xe206xe,_0xe206xf){return client[_0x936b[25]](_0xe206xb,_0xe206xd)[_0x936b[24]](function(_0xe206x11){logger[_0x936b[17]](_0x936b[13],_0xe206xc,_0x936b[16]);logger[_0x936b[20]](_0x936b[18],_0xe206xc,_0x936b[16],JSON[_0x936b[19]](_0xe206x11));if(_0xe206x11[_0x936b[14]]){if(_0xe206x11[_0x936b[14]][_0x936b[21]]=== 500){logger[_0x936b[14]](_0x936b[13],_0xe206xc,_0xe206x11[_0x936b[14]][_0x936b[22]]);return _0xe206xf(_0xe206x11[_0x936b[14]][_0x936b[22]])};logger[_0x936b[14]](_0x936b[13],_0xe206xc,_0xe206x11[_0x936b[14]][_0x936b[22]]);return _0xe206xe(_0xe206x11[_0x936b[14]][_0x936b[22]])}else {logger[_0x936b[17]](_0x936b[13],_0xe206xc,_0x936b[16]);_0xe206xe(_0xe206x11[_0x936b[23]][_0x936b[22]])}})[_0x936b[15]](function(_0xe206x10){logger[_0x936b[14]](_0x936b[13],_0xe206xc,_0xe206x10);_0xe206xf(_0xe206x10)})})}
\ No newline at end of file
+var _0x7ed9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x7ed9[0];var _=require(_0x7ed9[1]);var util=require(_0x7ed9[2]);var moment=require(_0x7ed9[3]);var BPromise=require(_0x7ed9[4]);var db=require(_0x7ed9[6])[_0x7ed9[5]];var utils=require(_0x7ed9[7]);var logger=require(_0x7ed9[9])(_0x7ed9[8]);var jayson=require(_0x7ed9[10]);var client=jayson[_0x7ed9[12]][_0x7ed9[11]]({port:9002});function respondWithRpcPromise(_0x33d9xb,_0x33d9xc,_0x33d9xd){return  new BPromise(function(_0x33d9xe,_0x33d9xf){return client[_0x7ed9[25]](_0x33d9xb,_0x33d9xd)[_0x7ed9[24]](function(_0x33d9x11){logger[_0x7ed9[17]](_0x7ed9[13],_0x33d9xc,_0x7ed9[16]);logger[_0x7ed9[20]](_0x7ed9[18],_0x33d9xc,_0x7ed9[16],JSON[_0x7ed9[19]](_0x33d9x11));if(_0x33d9x11[_0x7ed9[14]]){if(_0x33d9x11[_0x7ed9[14]][_0x7ed9[21]]=== 500){logger[_0x7ed9[14]](_0x7ed9[13],_0x33d9xc,_0x33d9x11[_0x7ed9[14]][_0x7ed9[22]]);return _0x33d9xf(_0x33d9x11[_0x7ed9[14]][_0x7ed9[22]])};logger[_0x7ed9[14]](_0x7ed9[13],_0x33d9xc,_0x33d9x11[_0x7ed9[14]][_0x7ed9[22]]);return _0x33d9xe(_0x33d9x11[_0x7ed9[14]][_0x7ed9[22]])}else {logger[_0x7ed9[17]](_0x7ed9[13],_0x33d9xc,_0x7ed9[16]);_0x33d9xe(_0x33d9x11[_0x7ed9[23]][_0x7ed9[22]])}})[_0x7ed9[15]](function(_0x33d9x10){logger[_0x7ed9[14]](_0x7ed9[13],_0x33d9xc,_0x33d9x10);_0x33d9xf(_0x33d9x10)})})}
\ No newline at end of file
index b0adfcb..5514a60 100644 (file)
@@ -1 +1 @@
-var _0xfaca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xfaca[0];var multer=require(_0xfaca[1]);var util=require(_0xfaca[2]);var path=require(_0xfaca[3]);var express=require(_0xfaca[4]);var router=express.Router();var auth=require(_0xfaca[5]);var config=require(_0xfaca[6]);var controller=require(_0xfaca[7]);router[_0xfaca[11]](_0xfaca[8],auth[_0xfaca[9]](),controller[_0xfaca[10]]);router[_0xfaca[11]](_0xfaca[12],auth[_0xfaca[9]](),controller[_0xfaca[13]]);router[_0xfaca[15]](_0xfaca[8],auth[_0xfaca[9]](),controller[_0xfaca[14]]);router[_0xfaca[17]](_0xfaca[12],auth[_0xfaca[9]](),controller[_0xfaca[16]]);router[_0xfaca[19]](_0xfaca[12],auth[_0xfaca[9]](),controller[_0xfaca[18]]);module[_0xfaca[20]]= router
\ No newline at end of file
+var _0x2d40=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2d40[0];var multer=require(_0x2d40[1]);var util=require(_0x2d40[2]);var path=require(_0x2d40[3]);var express=require(_0x2d40[4]);var router=express.Router();var auth=require(_0x2d40[5]);var config=require(_0x2d40[6]);var controller=require(_0x2d40[7]);router[_0x2d40[11]](_0x2d40[8],auth[_0x2d40[9]](),controller[_0x2d40[10]]);router[_0x2d40[11]](_0x2d40[12],auth[_0x2d40[9]](),controller[_0x2d40[13]]);router[_0x2d40[15]](_0x2d40[8],auth[_0x2d40[9]](),controller[_0x2d40[14]]);router[_0x2d40[17]](_0x2d40[12],auth[_0x2d40[9]](),controller[_0x2d40[16]]);router[_0x2d40[19]](_0x2d40[12],auth[_0x2d40[9]](),controller[_0x2d40[18]]);module[_0x2d40[20]]= router
\ No newline at end of file
index e7caf04..d314fd1 100644 (file)
@@ -1 +1 @@
-var _0xe005=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x54\x45\x58\x54"];_0xe005[0];var Sequelize=require(_0xe005[1]);module[_0xe005[2]]= {tree:{type:Sequelize[_0xe005[3]],allowNull:false}}
\ No newline at end of file
+var _0xfd6d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x54\x45\x58\x54"];_0xfd6d[0];var Sequelize=require(_0xfd6d[1]);module[_0xfd6d[2]]= {tree:{type:Sequelize[_0xfd6d[3]],allowNull:false}}
\ No newline at end of file
index 1744d19..8adcf57 100644 (file)
@@ -1 +1 @@
-var _0x7be8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x7be8[0];var jsonpatch=require(_0x7be8[1]);var rp=require(_0x7be8[2]);var moment=require(_0x7be8[3]);var BPromise=require(_0x7be8[4]);var util=require(_0x7be8[5]);var path=require(_0x7be8[6]);var sox=require(_0x7be8[7]);var ejs=require(_0x7be8[8]);var fs=require(_0x7be8[9]);var _=require(_0x7be8[10]);var squel=require(_0x7be8[11]);var crypto=require(_0x7be8[12]);var jsforce=require(_0x7be8[13]);var toCsv=require(_0x7be8[14]);var qs=require(_0x7be8[15]);var logger=require(_0x7be8[17])(_0x7be8[16]);var utils=require(_0x7be8[18]);var config=require(_0x7be8[19]);var db=require(_0x7be8[21])[_0x7be8[20]];function respondWithStatusCode(_0xc682x15,_0xc682x16,_0xc682x17){_0xc682x16= _0xc682x16|| 204;return function(_0xc682x18){if(_0xc682x18){logger[_0x7be8[24]](_0x7be8[22],_0xc682x17,_0xc682x16,_0x7be8[23]);logger[_0x7be8[26]](_0x7be8[25],_0xc682x17,_0xc682x16,_0x7be8[23]);return _0xc682x15[_0x7be8[27]](_0xc682x16)};return _0xc682x15[_0x7be8[29]](304)[_0x7be8[28]]()}}function respondWithResult(_0xc682x15,_0xc682x16,_0xc682x17){_0xc682x16= _0xc682x16|| 200;return function(_0xc682x18){if(_0xc682x18){logger[_0x7be8[24]](_0x7be8[22],_0xc682x17,_0xc682x16,_0x7be8[30]);logger[_0x7be8[26]](_0x7be8[25],_0xc682x17,_0xc682x16,_0x7be8[30],JSON[_0x7be8[31]](_0xc682x18));return _0xc682x15[_0x7be8[29]](_0xc682x16)[_0x7be8[32]](_0xc682x18)};return _0xc682x15[_0x7be8[29]](304)[_0x7be8[28]]()}}function respondWithFilteredResult(_0xc682x15,_0xc682x1b,_0xc682x17){return function(_0xc682x18){if(_0xc682x18){var _0xc682x1c=_0xc682x18[_0x7be8[33]],_0xc682x1d=_0xc682x1b[_0x7be8[34]],_0xc682x1e=_0xc682x1b[_0x7be8[34]]+ _0xc682x1b[_0x7be8[35]],_0xc682x16;if(_0xc682x1e>= _0xc682x1c){_0xc682x1e= _0xc682x1c;_0xc682x16= 200}else {_0xc682x16= 206};_0xc682x15[_0x7be8[29]](_0xc682x16);logger[_0x7be8[24]](_0x7be8[22],_0xc682x17,_0xc682x16,_0x7be8[36]);logger[_0x7be8[26]](_0x7be8[25],_0xc682x17,_0xc682x16,_0x7be8[30],JSON[_0x7be8[31]](_0xc682x18));return _0xc682x15[_0x7be8[40]](_0x7be8[37],_0xc682x1d+ _0x7be8[38]+ _0xc682x1e+ _0x7be8[39]+ _0xc682x1c)[_0x7be8[32]](_0xc682x18)};return null}}function patchUpdates(_0xc682x20){return function(_0xc682x18){try{jsonpatch[_0x7be8[41]](_0xc682x18,_0xc682x20,true)}catch(err){return BPromise[_0x7be8[42]](err)};return _0xc682x18[_0x7be8[43]]()}}function saveUpdates(_0xc682x22,_0xc682x16,_0xc682x17){return function(_0xc682x18){if(_0xc682x18){return _0xc682x18[_0x7be8[46]](_0xc682x22)[_0x7be8[45]](function(_0xc682x23){logger[_0x7be8[24]](_0x7be8[22],_0xc682x17,_0xc682x16,_0x7be8[44]);logger[_0x7be8[26]](_0x7be8[25],_0xc682x17,_0xc682x16,_0x7be8[44],JSON[_0x7be8[31]](_0xc682x18));return _0xc682x23})};return null}}function removeEntity(_0xc682x15,_0xc682x16,_0xc682x17){return function(_0xc682x18){if(_0xc682x18){return _0xc682x18[_0x7be8[48]]()[_0x7be8[45]](function(){logger[_0x7be8[24]](_0x7be8[22],_0xc682x17,_0xc682x16,_0x7be8[47]);logger[_0x7be8[26]](_0x7be8[25],_0xc682x17,_0xc682x16,_0x7be8[47],JSON[_0x7be8[31]](_0xc682x18));_0xc682x15[_0x7be8[29]](204)[_0x7be8[28]]()})}}}function handleEntityNotFound(_0xc682x15,_0xc682x16,_0xc682x17){return function(_0xc682x18){if(!_0xc682x18){logger[_0x7be8[50]](_0x7be8[22],_0xc682x17,404,_0x7be8[49]);_0xc682x15[_0x7be8[29]](404)[_0x7be8[28]]();return null};return _0xc682x18}}function handleError(_0xc682x15,_0xc682x16,_0xc682x17){_0xc682x16= _0xc682x16|| 500;return function(_0xc682x27){logger[_0x7be8[50]](_0x7be8[22],_0xc682x17,_0xc682x16,JSON[_0x7be8[31]](_0xc682x27));delete _0xc682x27[_0x7be8[51]];_0xc682x15[_0x7be8[29]](_0xc682x16)[_0x7be8[52]](_0xc682x27)}}exports[_0x7be8[53]]= function(_0xc682x28,_0xc682x15){var _0xc682x1b={},_0xc682x29={};_0xc682x29[_0x7be8[54]]= _[_0x7be8[57]](db[_0x7be8[56]][_0x7be8[55]]);_0xc682x29[_0x7be8[58]]= _[_0x7be8[57]](_0xc682x28[_0x7be8[58]]);_0xc682x29[_0x7be8[59]]= _[_0x7be8[60]](_0xc682x29[_0x7be8[54]],_0xc682x29[_0x7be8[58]]);_0xc682x1b[_0x7be8[61]]= _[_0x7be8[60]](_0xc682x29[_0x7be8[54]],qs[_0x7be8[62]](_0xc682x28[_0x7be8[58]][_0x7be8[62]]));_0xc682x1b[_0x7be8[61]]= (_0xc682x1b[_0x7be8[61]][_0x7be8[63]])?_0xc682x1b[_0x7be8[61]]:_0xc682x29[_0x7be8[54]];if(!_0xc682x28[_0x7be8[58]][_0x7be8[65]](_0x7be8[64])){_0xc682x1b[_0x7be8[35]]= qs[_0x7be8[35]](_0xc682x28[_0x7be8[58]][_0x7be8[35]]);_0xc682x1b[_0x7be8[34]]= qs[_0x7be8[34]](_0xc682x28[_0x7be8[58]][_0x7be8[34]])};_0xc682x1b[_0x7be8[66]]= qs[_0x7be8[67]](_0xc682x28[_0x7be8[58]][_0x7be8[67]]);_0xc682x1b[_0x7be8[68]]= qs[_0x7be8[59]](_[_0x7be8[69]](_0xc682x28[_0x7be8[58]],_0xc682x29[_0x7be8[59]]));if(_0xc682x28[_0x7be8[58]][_0x7be8[70]]){_0xc682x1b[_0x7be8[68]]= _[_0x7be8[73]](_0xc682x1b[_0x7be8[68]],{$or:_[_0x7be8[72]](_0xc682x1b[_0x7be8[61]],function(_0xc682x2a){var _0xc682x2b={};_0xc682x2b[_0xc682x2a]= {$like:_0x7be8[71]+ _0xc682x28[_0x7be8[58]][_0x7be8[70]]+ _0x7be8[71]};return _0xc682x2b})})};_0xc682x1b= _[_0x7be8[73]]({},_0xc682x1b,_0xc682x28[_0x7be8[74]]);return db[_0x7be8[56]][_0x7be8[76]](_0xc682x1b)[_0x7be8[45]](respondWithFilteredResult(_0xc682x15,_0xc682x1b,_0x7be8[53]))[_0x7be8[75]](handleError(_0xc682x15,null,_0x7be8[53]))};exports[_0x7be8[77]]= function(_0xc682x28,_0xc682x15){var _0xc682x1b={raw:true,where:{id:_0xc682x28[_0x7be8[79]][_0x7be8[78]]}},_0xc682x29={};_0xc682x29[_0x7be8[54]]= _[_0x7be8[57]](db[_0x7be8[56]][_0x7be8[55]]);_0xc682x29[_0x7be8[58]]= _[_0x7be8[57]](_0xc682x28[_0x7be8[58]]);_0xc682x29[_0x7be8[59]]= _[_0x7be8[60]](_0xc682x29[_0x7be8[54]],_0xc682x29[_0x7be8[58]]);_0xc682x1b[_0x7be8[61]]= _[_0x7be8[60]](_0xc682x29[_0x7be8[54]],qs[_0x7be8[62]](_0xc682x28[_0x7be8[58]][_0x7be8[62]]));_0xc682x1b[_0x7be8[61]]= (_0xc682x1b[_0x7be8[61]][_0x7be8[63]])?_0xc682x1b[_0x7be8[61]]:_0xc682x29[_0x7be8[54]];_0xc682x1b= _[_0x7be8[73]]({},_0xc682x1b,_0xc682x28[_0x7be8[74]]);return db[_0x7be8[56]][_0x7be8[80]](_0xc682x1b)[_0x7be8[45]](handleEntityNotFound(_0xc682x15,null,_0x7be8[77]))[_0x7be8[45]](respondWithResult(_0xc682x15,null,_0x7be8[77]))[_0x7be8[75]](handleError(_0xc682x15,null,_0x7be8[77]))};exports[_0x7be8[81]]= function(_0xc682x28,_0xc682x15){return db[_0x7be8[56]][_0x7be8[81]](_0xc682x28[_0x7be8[82]],{})[_0x7be8[45]](respondWithResult(_0xc682x15,201,_0x7be8[81]))[_0x7be8[75]](handleError(_0xc682x15,null,_0x7be8[81]))};exports[_0x7be8[46]]= function(_0xc682x28,_0xc682x15){if(_0xc682x28[_0x7be8[82]][_0x7be8[78]]){delete _0xc682x28[_0x7be8[82]][_0x7be8[78]]};return db[_0x7be8[56]][_0x7be8[80]]({where:{id:_0xc682x28[_0x7be8[79]][_0x7be8[78]]}})[_0x7be8[45]](handleEntityNotFound(_0xc682x15,null,_0x7be8[46]))[_0x7be8[45]](saveUpdates(_0xc682x28[_0x7be8[82]],null,_0x7be8[46]))[_0x7be8[45]](respondWithResult(_0xc682x15,null,_0x7be8[46]))[_0x7be8[75]](handleError(_0xc682x15,null,_0x7be8[46]))};exports[_0x7be8[48]]= function(_0xc682x28,_0xc682x15){return db[_0x7be8[56]][_0x7be8[80]]({where:{id:_0xc682x28[_0x7be8[79]][_0x7be8[78]]}})[_0x7be8[45]](handleEntityNotFound(_0xc682x15,null,_0x7be8[48]))[_0x7be8[45]](removeEntity(_0xc682x15,null,_0x7be8[48]))[_0x7be8[75]](handleError(_0xc682x15,null,_0x7be8[48]))}
\ No newline at end of file
+var _0x2f2a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x2f2a[0];var jsonpatch=require(_0x2f2a[1]);var rp=require(_0x2f2a[2]);var moment=require(_0x2f2a[3]);var BPromise=require(_0x2f2a[4]);var util=require(_0x2f2a[5]);var path=require(_0x2f2a[6]);var sox=require(_0x2f2a[7]);var ejs=require(_0x2f2a[8]);var fs=require(_0x2f2a[9]);var _=require(_0x2f2a[10]);var squel=require(_0x2f2a[11]);var crypto=require(_0x2f2a[12]);var jsforce=require(_0x2f2a[13]);var toCsv=require(_0x2f2a[14]);var qs=require(_0x2f2a[15]);var logger=require(_0x2f2a[17])(_0x2f2a[16]);var utils=require(_0x2f2a[18]);var config=require(_0x2f2a[19]);var db=require(_0x2f2a[21])[_0x2f2a[20]];function respondWithStatusCode(_0x1a3ex15,_0x1a3ex16,_0x1a3ex17){_0x1a3ex16= _0x1a3ex16|| 204;return function(_0x1a3ex18){if(_0x1a3ex18){logger[_0x2f2a[24]](_0x2f2a[22],_0x1a3ex17,_0x1a3ex16,_0x2f2a[23]);logger[_0x2f2a[26]](_0x2f2a[25],_0x1a3ex17,_0x1a3ex16,_0x2f2a[23]);return _0x1a3ex15[_0x2f2a[27]](_0x1a3ex16)};return _0x1a3ex15[_0x2f2a[29]](304)[_0x2f2a[28]]()}}function respondWithResult(_0x1a3ex15,_0x1a3ex16,_0x1a3ex17){_0x1a3ex16= _0x1a3ex16|| 200;return function(_0x1a3ex18){if(_0x1a3ex18){logger[_0x2f2a[24]](_0x2f2a[22],_0x1a3ex17,_0x1a3ex16,_0x2f2a[30]);logger[_0x2f2a[26]](_0x2f2a[25],_0x1a3ex17,_0x1a3ex16,_0x2f2a[30],JSON[_0x2f2a[31]](_0x1a3ex18));return _0x1a3ex15[_0x2f2a[29]](_0x1a3ex16)[_0x2f2a[32]](_0x1a3ex18)};return _0x1a3ex15[_0x2f2a[29]](304)[_0x2f2a[28]]()}}function respondWithFilteredResult(_0x1a3ex15,_0x1a3ex1b,_0x1a3ex17){return function(_0x1a3ex18){if(_0x1a3ex18){var _0x1a3ex1c=_0x1a3ex18[_0x2f2a[33]],_0x1a3ex1d=_0x1a3ex1b[_0x2f2a[34]],_0x1a3ex1e=_0x1a3ex1b[_0x2f2a[34]]+ _0x1a3ex1b[_0x2f2a[35]],_0x1a3ex16;if(_0x1a3ex1e>= _0x1a3ex1c){_0x1a3ex1e= _0x1a3ex1c;_0x1a3ex16= 200}else {_0x1a3ex16= 206};_0x1a3ex15[_0x2f2a[29]](_0x1a3ex16);logger[_0x2f2a[24]](_0x2f2a[22],_0x1a3ex17,_0x1a3ex16,_0x2f2a[36]);logger[_0x2f2a[26]](_0x2f2a[25],_0x1a3ex17,_0x1a3ex16,_0x2f2a[30],JSON[_0x2f2a[31]](_0x1a3ex18));return _0x1a3ex15[_0x2f2a[40]](_0x2f2a[37],_0x1a3ex1d+ _0x2f2a[38]+ _0x1a3ex1e+ _0x2f2a[39]+ _0x1a3ex1c)[_0x2f2a[32]](_0x1a3ex18)};return null}}function patchUpdates(_0x1a3ex20){return function(_0x1a3ex18){try{jsonpatch[_0x2f2a[41]](_0x1a3ex18,_0x1a3ex20,true)}catch(err){return BPromise[_0x2f2a[42]](err)};return _0x1a3ex18[_0x2f2a[43]]()}}function saveUpdates(_0x1a3ex22,_0x1a3ex16,_0x1a3ex17){return function(_0x1a3ex18){if(_0x1a3ex18){return _0x1a3ex18[_0x2f2a[46]](_0x1a3ex22)[_0x2f2a[45]](function(_0x1a3ex23){logger[_0x2f2a[24]](_0x2f2a[22],_0x1a3ex17,_0x1a3ex16,_0x2f2a[44]);logger[_0x2f2a[26]](_0x2f2a[25],_0x1a3ex17,_0x1a3ex16,_0x2f2a[44],JSON[_0x2f2a[31]](_0x1a3ex18));return _0x1a3ex23})};return null}}function removeEntity(_0x1a3ex15,_0x1a3ex16,_0x1a3ex17){return function(_0x1a3ex18){if(_0x1a3ex18){return _0x1a3ex18[_0x2f2a[48]]()[_0x2f2a[45]](function(){logger[_0x2f2a[24]](_0x2f2a[22],_0x1a3ex17,_0x1a3ex16,_0x2f2a[47]);logger[_0x2f2a[26]](_0x2f2a[25],_0x1a3ex17,_0x1a3ex16,_0x2f2a[47],JSON[_0x2f2a[31]](_0x1a3ex18));_0x1a3ex15[_0x2f2a[29]](204)[_0x2f2a[28]]()})}}}function handleEntityNotFound(_0x1a3ex15,_0x1a3ex16,_0x1a3ex17){return function(_0x1a3ex18){if(!_0x1a3ex18){logger[_0x2f2a[50]](_0x2f2a[22],_0x1a3ex17,404,_0x2f2a[49]);_0x1a3ex15[_0x2f2a[29]](404)[_0x2f2a[28]]();return null};return _0x1a3ex18}}function handleError(_0x1a3ex15,_0x1a3ex16,_0x1a3ex17){_0x1a3ex16= _0x1a3ex16|| 500;return function(_0x1a3ex27){logger[_0x2f2a[50]](_0x2f2a[22],_0x1a3ex17,_0x1a3ex16,JSON[_0x2f2a[31]](_0x1a3ex27));delete _0x1a3ex27[_0x2f2a[51]];_0x1a3ex15[_0x2f2a[29]](_0x1a3ex16)[_0x2f2a[52]](_0x1a3ex27)}}exports[_0x2f2a[53]]= function(_0x1a3ex28,_0x1a3ex15){var _0x1a3ex1b={},_0x1a3ex29={};_0x1a3ex29[_0x2f2a[54]]= _[_0x2f2a[57]](db[_0x2f2a[56]][_0x2f2a[55]]);_0x1a3ex29[_0x2f2a[58]]= _[_0x2f2a[57]](_0x1a3ex28[_0x2f2a[58]]);_0x1a3ex29[_0x2f2a[59]]= _[_0x2f2a[60]](_0x1a3ex29[_0x2f2a[54]],_0x1a3ex29[_0x2f2a[58]]);_0x1a3ex1b[_0x2f2a[61]]= _[_0x2f2a[60]](_0x1a3ex29[_0x2f2a[54]],qs[_0x2f2a[62]](_0x1a3ex28[_0x2f2a[58]][_0x2f2a[62]]));_0x1a3ex1b[_0x2f2a[61]]= (_0x1a3ex1b[_0x2f2a[61]][_0x2f2a[63]])?_0x1a3ex1b[_0x2f2a[61]]:_0x1a3ex29[_0x2f2a[54]];if(!_0x1a3ex28[_0x2f2a[58]][_0x2f2a[65]](_0x2f2a[64])){_0x1a3ex1b[_0x2f2a[35]]= qs[_0x2f2a[35]](_0x1a3ex28[_0x2f2a[58]][_0x2f2a[35]]);_0x1a3ex1b[_0x2f2a[34]]= qs[_0x2f2a[34]](_0x1a3ex28[_0x2f2a[58]][_0x2f2a[34]])};_0x1a3ex1b[_0x2f2a[66]]= qs[_0x2f2a[67]](_0x1a3ex28[_0x2f2a[58]][_0x2f2a[67]]);_0x1a3ex1b[_0x2f2a[68]]= qs[_0x2f2a[59]](_[_0x2f2a[69]](_0x1a3ex28[_0x2f2a[58]],_0x1a3ex29[_0x2f2a[59]]));if(_0x1a3ex28[_0x2f2a[58]][_0x2f2a[70]]){_0x1a3ex1b[_0x2f2a[68]]= _[_0x2f2a[73]](_0x1a3ex1b[_0x2f2a[68]],{$or:_[_0x2f2a[72]](_0x1a3ex1b[_0x2f2a[61]],function(_0x1a3ex2a){var _0x1a3ex2b={};_0x1a3ex2b[_0x1a3ex2a]= {$like:_0x2f2a[71]+ _0x1a3ex28[_0x2f2a[58]][_0x2f2a[70]]+ _0x2f2a[71]};return _0x1a3ex2b})})};_0x1a3ex1b= _[_0x2f2a[73]]({},_0x1a3ex1b,_0x1a3ex28[_0x2f2a[74]]);return db[_0x2f2a[56]][_0x2f2a[76]](_0x1a3ex1b)[_0x2f2a[45]](respondWithFilteredResult(_0x1a3ex15,_0x1a3ex1b,_0x2f2a[53]))[_0x2f2a[75]](handleError(_0x1a3ex15,null,_0x2f2a[53]))};exports[_0x2f2a[77]]= function(_0x1a3ex28,_0x1a3ex15){var _0x1a3ex1b={raw:true,where:{id:_0x1a3ex28[_0x2f2a[79]][_0x2f2a[78]]}},_0x1a3ex29={};_0x1a3ex29[_0x2f2a[54]]= _[_0x2f2a[57]](db[_0x2f2a[56]][_0x2f2a[55]]);_0x1a3ex29[_0x2f2a[58]]= _[_0x2f2a[57]](_0x1a3ex28[_0x2f2a[58]]);_0x1a3ex29[_0x2f2a[59]]= _[_0x2f2a[60]](_0x1a3ex29[_0x2f2a[54]],_0x1a3ex29[_0x2f2a[58]]);_0x1a3ex1b[_0x2f2a[61]]= _[_0x2f2a[60]](_0x1a3ex29[_0x2f2a[54]],qs[_0x2f2a[62]](_0x1a3ex28[_0x2f2a[58]][_0x2f2a[62]]));_0x1a3ex1b[_0x2f2a[61]]= (_0x1a3ex1b[_0x2f2a[61]][_0x2f2a[63]])?_0x1a3ex1b[_0x2f2a[61]]:_0x1a3ex29[_0x2f2a[54]];_0x1a3ex1b= _[_0x2f2a[73]]({},_0x1a3ex1b,_0x1a3ex28[_0x2f2a[74]]);return db[_0x2f2a[56]][_0x2f2a[80]](_0x1a3ex1b)[_0x2f2a[45]](handleEntityNotFound(_0x1a3ex15,null,_0x2f2a[77]))[_0x2f2a[45]](respondWithResult(_0x1a3ex15,null,_0x2f2a[77]))[_0x2f2a[75]](handleError(_0x1a3ex15,null,_0x2f2a[77]))};exports[_0x2f2a[81]]= function(_0x1a3ex28,_0x1a3ex15){return db[_0x2f2a[56]][_0x2f2a[81]](_0x1a3ex28[_0x2f2a[82]],{})[_0x2f2a[45]](respondWithResult(_0x1a3ex15,201,_0x2f2a[81]))[_0x2f2a[75]](handleError(_0x1a3ex15,null,_0x2f2a[81]))};exports[_0x2f2a[46]]= function(_0x1a3ex28,_0x1a3ex15){if(_0x1a3ex28[_0x2f2a[82]][_0x2f2a[78]]){delete _0x1a3ex28[_0x2f2a[82]][_0x2f2a[78]]};return db[_0x2f2a[56]][_0x2f2a[80]]({where:{id:_0x1a3ex28[_0x2f2a[79]][_0x2f2a[78]]}})[_0x2f2a[45]](handleEntityNotFound(_0x1a3ex15,null,_0x2f2a[46]))[_0x2f2a[45]](saveUpdates(_0x1a3ex28[_0x2f2a[82]],null,_0x2f2a[46]))[_0x2f2a[45]](respondWithResult(_0x1a3ex15,null,_0x2f2a[46]))[_0x2f2a[75]](handleError(_0x1a3ex15,null,_0x2f2a[46]))};exports[_0x2f2a[48]]= function(_0x1a3ex28,_0x1a3ex15){return db[_0x2f2a[56]][_0x2f2a[80]]({where:{id:_0x1a3ex28[_0x2f2a[79]][_0x2f2a[78]]}})[_0x2f2a[45]](handleEntityNotFound(_0x1a3ex15,null,_0x2f2a[48]))[_0x2f2a[45]](removeEntity(_0x1a3ex15,null,_0x2f2a[48]))[_0x2f2a[75]](handleError(_0x1a3ex15,null,_0x2f2a[48]))}
\ No newline at end of file
index 83b65f4..5130445 100644 (file)
@@ -1 +1 @@
-var _0x4db4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x72\x65\x70\x6F\x72\x74\x5F\x74\x72\x65\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x4db4[0];var _=require(_0x4db4[1]);var util=require(_0x4db4[2]);var logger=require(_0x4db4[4])(_0x4db4[3]);var attributes=require(_0x4db4[5]);module[_0x4db4[6]]= function(_0xdcaax5,_0xdcaax6){return _0xdcaax5[_0x4db4[9]](_0x4db4[7],attributes,{tableName:_0x4db4[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x6b31=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x5F\x72\x65\x70\x6F\x72\x74\x5F\x74\x72\x65\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x6b31[0];var _=require(_0x6b31[1]);var util=require(_0x6b31[2]);var logger=require(_0x6b31[4])(_0x6b31[3]);var attributes=require(_0x6b31[5]);module[_0x6b31[6]]= function(_0x24b3x5,_0x24b3x6){return _0x24b3x5[_0x6b31[9]](_0x6b31[7],attributes,{tableName:_0x6b31[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 14e8869..b320de4 100644 (file)
@@ -1 +1 @@
-var _0x6d18=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x6d18[0];var _=require(_0x6d18[1]);var util=require(_0x6d18[2]);var moment=require(_0x6d18[3]);var BPromise=require(_0x6d18[4]);var db=require(_0x6d18[6])[_0x6d18[5]];var utils=require(_0x6d18[7]);var logger=require(_0x6d18[9])(_0x6d18[8]);var jayson=require(_0x6d18[10]);var client=jayson[_0x6d18[12]][_0x6d18[11]]({port:9002});function respondWithRpcPromise(_0x8452xb,_0x8452xc,_0x8452xd){return  new BPromise(function(_0x8452xe,_0x8452xf){return client[_0x6d18[25]](_0x8452xb,_0x8452xd)[_0x6d18[24]](function(_0x8452x11){logger[_0x6d18[17]](_0x6d18[13],_0x8452xc,_0x6d18[16]);logger[_0x6d18[20]](_0x6d18[18],_0x8452xc,_0x6d18[16],JSON[_0x6d18[19]](_0x8452x11));if(_0x8452x11[_0x6d18[14]]){if(_0x8452x11[_0x6d18[14]][_0x6d18[21]]=== 500){logger[_0x6d18[14]](_0x6d18[13],_0x8452xc,_0x8452x11[_0x6d18[14]][_0x6d18[22]]);return _0x8452xf(_0x8452x11[_0x6d18[14]][_0x6d18[22]])};logger[_0x6d18[14]](_0x6d18[13],_0x8452xc,_0x8452x11[_0x6d18[14]][_0x6d18[22]]);return _0x8452xe(_0x8452x11[_0x6d18[14]][_0x6d18[22]])}else {logger[_0x6d18[17]](_0x6d18[13],_0x8452xc,_0x6d18[16]);_0x8452xe(_0x8452x11[_0x6d18[23]][_0x6d18[22]])}})[_0x6d18[15]](function(_0x8452x10){logger[_0x6d18[14]](_0x6d18[13],_0x8452xc,_0x8452x10);_0x8452xf(_0x8452x10)})})}
\ No newline at end of file
+var _0x272b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x272b[0];var _=require(_0x272b[1]);var util=require(_0x272b[2]);var moment=require(_0x272b[3]);var BPromise=require(_0x272b[4]);var db=require(_0x272b[6])[_0x272b[5]];var utils=require(_0x272b[7]);var logger=require(_0x272b[9])(_0x272b[8]);var jayson=require(_0x272b[10]);var client=jayson[_0x272b[12]][_0x272b[11]]({port:9002});function respondWithRpcPromise(_0x9e01xb,_0x9e01xc,_0x9e01xd){return  new BPromise(function(_0x9e01xe,_0x9e01xf){return client[_0x272b[25]](_0x9e01xb,_0x9e01xd)[_0x272b[24]](function(_0x9e01x11){logger[_0x272b[17]](_0x272b[13],_0x9e01xc,_0x272b[16]);logger[_0x272b[20]](_0x272b[18],_0x9e01xc,_0x272b[16],JSON[_0x272b[19]](_0x9e01x11));if(_0x9e01x11[_0x272b[14]]){if(_0x9e01x11[_0x272b[14]][_0x272b[21]]=== 500){logger[_0x272b[14]](_0x272b[13],_0x9e01xc,_0x9e01x11[_0x272b[14]][_0x272b[22]]);return _0x9e01xf(_0x9e01x11[_0x272b[14]][_0x272b[22]])};logger[_0x272b[14]](_0x272b[13],_0x9e01xc,_0x9e01x11[_0x272b[14]][_0x272b[22]]);return _0x9e01xe(_0x9e01x11[_0x272b[14]][_0x272b[22]])}else {logger[_0x272b[17]](_0x272b[13],_0x9e01xc,_0x272b[16]);_0x9e01xe(_0x9e01x11[_0x272b[23]][_0x272b[22]])}})[_0x272b[15]](function(_0x9e01x10){logger[_0x272b[14]](_0x272b[13],_0x9e01xc,_0x9e01x10);_0x9e01xf(_0x9e01x10)})})}
\ No newline at end of file
index 648266f..e50d9a0 100644 (file)
@@ -1 +1 @@
-var _0xb1c5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb1c5[0];var multer=require(_0xb1c5[1]);var util=require(_0xb1c5[2]);var path=require(_0xb1c5[3]);var express=require(_0xb1c5[4]);var router=express.Router();var auth=require(_0xb1c5[5]);var config=require(_0xb1c5[6]);var controller=require(_0xb1c5[7]);router[_0xb1c5[11]](_0xb1c5[8],auth[_0xb1c5[9]](),controller[_0xb1c5[10]]);router[_0xb1c5[11]](_0xb1c5[12],auth[_0xb1c5[9]](),controller[_0xb1c5[13]]);router[_0xb1c5[15]](_0xb1c5[8],auth[_0xb1c5[9]](),controller[_0xb1c5[14]]);router[_0xb1c5[17]](_0xb1c5[12],auth[_0xb1c5[9]](),controller[_0xb1c5[16]]);router[_0xb1c5[19]](_0xb1c5[12],auth[_0xb1c5[9]](),controller[_0xb1c5[18]]);module[_0xb1c5[20]]= router
\ No newline at end of file
+var _0xe5a0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe5a0[0];var multer=require(_0xe5a0[1]);var util=require(_0xe5a0[2]);var path=require(_0xe5a0[3]);var express=require(_0xe5a0[4]);var router=express.Router();var auth=require(_0xe5a0[5]);var config=require(_0xe5a0[6]);var controller=require(_0xe5a0[7]);router[_0xe5a0[11]](_0xe5a0[8],auth[_0xe5a0[9]](),controller[_0xe5a0[10]]);router[_0xe5a0[11]](_0xe5a0[12],auth[_0xe5a0[9]](),controller[_0xe5a0[13]]);router[_0xe5a0[15]](_0xe5a0[8],auth[_0xe5a0[9]](),controller[_0xe5a0[14]]);router[_0xe5a0[17]](_0xe5a0[12],auth[_0xe5a0[9]](),controller[_0xe5a0[16]]);router[_0xe5a0[19]](_0xe5a0[12],auth[_0xe5a0[9]](),controller[_0xe5a0[18]]);module[_0xe5a0[20]]= router
\ No newline at end of file
index 43cbb60..c368b15 100644 (file)
@@ -1 +1 @@
-var _0x5e69=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x70\x61\x73\x73\x70\x6F\x72\x74","\x53\x74\x72\x61\x74\x65\x67\x79","\x70\x61\x73\x73\x70\x6F\x72\x74\x2D\x67\x6F\x6F\x67\x6C\x65\x2D\x6F\x61\x75\x74\x68\x32\x30","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x6C\x6F\x67\x69\x6E","\x67\x6F\x6F\x67\x6C\x65","\x2F\x6C\x6F\x67\x69\x6E","\x70\x72\x6F\x66\x69\x6C\x65","\x65\x6D\x61\x69\x6C","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x6C\x69\x65\x6E\x74\x49\x44","\x69\x64","\x63\x6C\x69\x65\x6E\x74\x53\x65\x63\x72\x65\x74","\x73\x65\x63\x72\x65\x74","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x55\x52\x4C","","\x63\x61\x74\x63\x68","\x55\x73\x65\x72\x20\x65\x6D\x61\x69\x6C\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x21","\x74\x68\x65\x6E","\x65\x6D\x61\x69\x6C\x73","\x76\x61\x6C\x75\x65","\x6D\x61\x70","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x61\x67\x65\x6E\x74","\x66\x69\x6E\x64","\x55\x73\x65\x72","\x75\x73\x65"];_0x5e69[0];var _=require(_0x5e69[1]);var passport=require(_0x5e69[2]);var GoogleStrategy=require(_0x5e69[4])[_0x5e69[3]];var db=require(_0x5e69[6])[_0x5e69[5]];var config=require(_0x5e69[7]);var signToken=require(_0x5e69[9])[_0x5e69[8]];exports[_0x5e69[10]]= passport[_0x5e69[15]](_0x5e69[11],{failureRedirect:_0x5e69[12],scope:[_0x5e69[13],_0x5e69[14]],session:false});exports[_0x5e69[16]]= passport[_0x5e69[15]](_0x5e69[11],{failureRedirect:_0x5e69[12],session:false});passport[_0x5e69[34]]( new GoogleStrategy({clientID:config[_0x5e69[11]]?config[_0x5e69[11]][_0x5e69[17]]:_0x5e69[18],clientSecret:config[_0x5e69[11]]?config[_0x5e69[11]][_0x5e69[19]]:_0x5e69[20],callbackURL:config[_0x5e69[11]]?config[_0x5e69[11]][_0x5e69[21]]:_0x5e69[22]},function(_0x96adx7,_0x96adx8,_0x96adx9,_0x96adxa){db[_0x5e69[33]][_0x5e69[32]]({where:{email:_[_0x5e69[28]](_0x96adx9[_0x5e69[26]],_0x5e69[27]),role:{$or:[_0x5e69[29],_0x5e69[30],_0x5e69[31]]}}})[_0x5e69[25]](function(_0x96adxc){if(_0x96adxc){return _0x96adxa(null,_0x96adxc)};_0x96adxa(_0x5e69[24])})[_0x5e69[23]](function(_0x96adxb){_0x96adxa(_0x96adxb)})}))
\ No newline at end of file
+var _0x801b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x70\x61\x73\x73\x70\x6F\x72\x74","\x53\x74\x72\x61\x74\x65\x67\x79","\x70\x61\x73\x73\x70\x6F\x72\x74\x2D\x67\x6F\x6F\x67\x6C\x65\x2D\x6F\x61\x75\x74\x68\x32\x30","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x6C\x6F\x67\x69\x6E","\x67\x6F\x6F\x67\x6C\x65","\x2F\x6C\x6F\x67\x69\x6E","\x70\x72\x6F\x66\x69\x6C\x65","\x65\x6D\x61\x69\x6C","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x6C\x69\x65\x6E\x74\x49\x44","\x69\x64","\x63\x6C\x69\x65\x6E\x74\x53\x65\x63\x72\x65\x74","\x73\x65\x63\x72\x65\x74","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x55\x52\x4C","","\x63\x61\x74\x63\x68","\x55\x73\x65\x72\x20\x65\x6D\x61\x69\x6C\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x21","\x74\x68\x65\x6E","\x65\x6D\x61\x69\x6C\x73","\x76\x61\x6C\x75\x65","\x6D\x61\x70","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x61\x67\x65\x6E\x74","\x66\x69\x6E\x64","\x55\x73\x65\x72","\x75\x73\x65"];_0x801b[0];var _=require(_0x801b[1]);var passport=require(_0x801b[2]);var GoogleStrategy=require(_0x801b[4])[_0x801b[3]];var db=require(_0x801b[6])[_0x801b[5]];var config=require(_0x801b[7]);var signToken=require(_0x801b[9])[_0x801b[8]];exports[_0x801b[10]]= passport[_0x801b[15]](_0x801b[11],{failureRedirect:_0x801b[12],scope:[_0x801b[13],_0x801b[14]],session:false});exports[_0x801b[16]]= passport[_0x801b[15]](_0x801b[11],{failureRedirect:_0x801b[12],session:false});passport[_0x801b[34]]( new GoogleStrategy({clientID:config[_0x801b[11]]?config[_0x801b[11]][_0x801b[17]]:_0x801b[18],clientSecret:config[_0x801b[11]]?config[_0x801b[11]][_0x801b[19]]:_0x801b[20],callbackURL:config[_0x801b[11]]?config[_0x801b[11]][_0x801b[21]]:_0x801b[22]},function(_0x3c79x7,_0x3c79x8,_0x3c79x9,_0x3c79xa){db[_0x801b[33]][_0x801b[32]]({where:{email:_[_0x801b[28]](_0x3c79x9[_0x801b[26]],_0x801b[27]),role:{$or:[_0x801b[29],_0x801b[30],_0x801b[31]]}}})[_0x801b[25]](function(_0x3c79xc){if(_0x3c79xc){return _0x3c79xa(null,_0x3c79xc)};_0x3c79xa(_0x801b[24])})[_0x801b[23]](function(_0x3c79xb){_0x3c79xa(_0x3c79xb)})}))
\ No newline at end of file
index 195c6d4..260faef 100644 (file)
@@ -1 +1 @@
-var _0xf4f5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x70\x61\x73\x73\x70\x6F\x72\x74","\x2E\x2F\x61\x75\x74\x68\x47\x6F\x6F\x67\x6C\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x73\x65\x74\x54\x6F\x6B\x65\x6E\x43\x6F\x6F\x6B\x69\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2F","\x6C\x6F\x67\x69\x6E","\x67\x65\x74","\x2F\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x65\x78\x70\x6F\x72\x74\x73"];_0xf4f5[0];var express=require(_0xf4f5[1]);var passport=require(_0xf4f5[2]);var router=express.Router();var controller=require(_0xf4f5[3]);var setTokenCookie=require(_0xf4f5[5])[_0xf4f5[4]];router[_0xf4f5[8]](_0xf4f5[6],controller[_0xf4f5[7]]);router[_0xf4f5[8]](_0xf4f5[9],controller[_0xf4f5[10]],setTokenCookie);module[_0xf4f5[11]]= router
\ No newline at end of file
+var _0x8776=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x70\x61\x73\x73\x70\x6F\x72\x74","\x2E\x2F\x61\x75\x74\x68\x47\x6F\x6F\x67\x6C\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x73\x65\x74\x54\x6F\x6B\x65\x6E\x43\x6F\x6F\x6B\x69\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2F","\x6C\x6F\x67\x69\x6E","\x67\x65\x74","\x2F\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x65\x78\x70\x6F\x72\x74\x73"];_0x8776[0];var express=require(_0x8776[1]);var passport=require(_0x8776[2]);var router=express.Router();var controller=require(_0x8776[3]);var setTokenCookie=require(_0x8776[5])[_0x8776[4]];router[_0x8776[8]](_0x8776[6],controller[_0x8776[7]]);router[_0x8776[8]](_0x8776[9],controller[_0x8776[10]],setTokenCookie);module[_0x8776[11]]= router
\ No newline at end of file
index 23e1ea1..0ce36f9 100644 (file)
@@ -1 +1 @@
-var _0x10b6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x70\x61\x73\x73\x70\x6F\x72\x74","\x53\x74\x72\x61\x74\x65\x67\x79","\x70\x61\x73\x73\x70\x6F\x72\x74\x2D\x6C\x6F\x63\x61\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x72\x6F\x6C\x65","\x61\x67\x65\x6E\x74","\x63\x61\x74\x63\x68","\x61\x67\x65\x6E\x74\x73","\x4D\x61\x78\x69\x6D\x75\x6D\x20\x6C\x6F\x67\x69\x6E\x20\x68\x61\x73\x20\x62\x65\x65\x6E\x20\x72\x65\x61\x63\x68\x65\x64","\x74\x68\x65\x6E","\x67\x65\x74\x4C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x75\x74\x69\x6C","\x63\x6F\x75\x6E\x74","\x55\x73\x65\x72","\x54\x68\x69\x73\x20\x70\x61\x73\x73\x77\x6F\x72\x64\x20\x69\x73\x20\x6E\x6F\x74\x20\x63\x6F\x72\x72\x65\x63\x74\x2E","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x54\x68\x69\x73\x20\x6E\x61\x6D\x65\x20\x69\x73\x20\x6E\x6F\x74\x20\x72\x65\x67\x69\x73\x74\x65\x72\x65\x64\x2E","\x74\x72\x69\x6D","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x66\x69\x6E\x64","\x6C\x6F\x67\x69\x6E","\x6C\x6F\x63\x61\x6C","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x53\x6F\x6D\x65\x74\x68\x69\x6E\x67\x20\x77\x65\x6E\x74\x20\x77\x72\x6F\x6E\x67\x2C\x20\x70\x6C\x65\x61\x73\x65\x20\x74\x72\x79\x20\x61\x67\x61\x69\x6E\x2E","\x69\x64","\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x75\x73\x65"];_0x10b6[0];var util=require(_0x10b6[1]);var passport=require(_0x10b6[2]);var LocalStrategy=require(_0x10b6[4])[_0x10b6[3]];var BPromise=require(_0x10b6[5]);var db=require(_0x10b6[7])[_0x10b6[6]];var signToken=require(_0x10b6[9])[_0x10b6[8]];var getLicense=function(_0x7cb0x8){return  new BPromise(function(_0x7cb0x9,_0x7cb0xa){var _0x7cb0xb=0;_0x7cb0x8[_0x10b6[10]]!== _0x10b6[11]&& _0x7cb0x9(_0x7cb0x8);return db[_0x10b6[19]][_0x10b6[18]]({where:{role:_0x10b6[11],online:true}})[_0x10b6[15]](function(_0x7cb0xe){_0x7cb0xb= _0x7cb0xe;return require(_0x10b6[17])[_0x10b6[16]]()})[_0x10b6[15]](function(_0x7cb0xd){if(_0x7cb0xd&& _0x7cb0xd[_0x10b6[13]]&& _0x7cb0xb>= _0x7cb0xd[_0x10b6[13]]){return _0x7cb0xa({message:_0x10b6[14]})};return _0x7cb0x9(_0x7cb0x8)})[_0x10b6[12]](function(_0x7cb0xc){return _0x7cb0xa(_0x7cb0xc)})})};function localAuthenticate(_0x7cb0x10,_0x7cb0x11,_0x7cb0x12,_0x7cb0x13){var _0x7cb0x14;_0x7cb0x10[_0x10b6[27]]({where:{name:_0x7cb0x11[_0x10b6[24]]()[_0x10b6[23]](),role:{$or:[_0x10b6[25],_0x10b6[26],_0x10b6[11]]}}})[_0x10b6[15]](function(_0x7cb0x8){if(!_0x7cb0x8){return _0x7cb0x13(null,false,{message:_0x10b6[22]})};return getLicense(_0x7cb0x8)})[_0x10b6[15]](function(_0x7cb0x8){_0x7cb0x8[_0x10b6[21]](_0x7cb0x12,function(_0x7cb0x15,_0x7cb0x16){if(_0x7cb0x15){return _0x7cb0x13(_0x7cb0x15)};if(!_0x7cb0x16){return _0x7cb0x13(null,false,{message:_0x10b6[20]})}else {return _0x7cb0x13(null,_0x7cb0x8)}})})[_0x10b6[12]](function(_0x7cb0xc){_0x7cb0x13(_0x7cb0xc)})}exports[_0x10b6[28]]= function(_0x7cb0x17,_0x7cb0x18,_0x7cb0x19){passport[_0x10b6[21]](_0x10b6[29],function(_0x7cb0xc,_0x7cb0x8,_0x7cb0x1a){var _0x7cb0x1b=_0x7cb0xc|| _0x7cb0x1a;if(_0x7cb0x1b){return _0x7cb0x18[_0x10b6[31]](401)[_0x10b6[30]](_0x7cb0x1b)};if(!_0x7cb0x8){return _0x7cb0x18[_0x10b6[31]](404)[_0x10b6[30]]({message:_0x10b6[32]})};var _0x7cb0x1c=signToken(_0x7cb0x8[_0x10b6[33]],_0x7cb0x8[_0x10b6[10]]);_0x7cb0x18[_0x10b6[30]]({id:_0x7cb0x8[_0x10b6[33]],token:_0x7cb0x1c})})(_0x7cb0x17,_0x7cb0x18,_0x7cb0x19)};passport[_0x10b6[36]]( new LocalStrategy({usernameField:_0x10b6[34],passwordField:_0x10b6[35]},function(_0x7cb0x11,_0x7cb0x12,_0x7cb0x13){return localAuthenticate(db.User,_0x7cb0x11,_0x7cb0x12,_0x7cb0x13)}))
\ No newline at end of file
+var _0x9261=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x70\x61\x73\x73\x70\x6F\x72\x74","\x53\x74\x72\x61\x74\x65\x67\x79","\x70\x61\x73\x73\x70\x6F\x72\x74\x2D\x6C\x6F\x63\x61\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x72\x6F\x6C\x65","\x61\x67\x65\x6E\x74","\x63\x61\x74\x63\x68","\x61\x67\x65\x6E\x74\x73","\x4D\x61\x78\x69\x6D\x75\x6D\x20\x6C\x6F\x67\x69\x6E\x20\x68\x61\x73\x20\x62\x65\x65\x6E\x20\x72\x65\x61\x63\x68\x65\x64","\x74\x68\x65\x6E","\x67\x65\x74\x4C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x75\x74\x69\x6C","\x63\x6F\x75\x6E\x74","\x55\x73\x65\x72","\x54\x68\x69\x73\x20\x70\x61\x73\x73\x77\x6F\x72\x64\x20\x69\x73\x20\x6E\x6F\x74\x20\x63\x6F\x72\x72\x65\x63\x74\x2E","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x54\x68\x69\x73\x20\x6E\x61\x6D\x65\x20\x69\x73\x20\x6E\x6F\x74\x20\x72\x65\x67\x69\x73\x74\x65\x72\x65\x64\x2E","\x74\x72\x69\x6D","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x66\x69\x6E\x64","\x6C\x6F\x67\x69\x6E","\x6C\x6F\x63\x61\x6C","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x53\x6F\x6D\x65\x74\x68\x69\x6E\x67\x20\x77\x65\x6E\x74\x20\x77\x72\x6F\x6E\x67\x2C\x20\x70\x6C\x65\x61\x73\x65\x20\x74\x72\x79\x20\x61\x67\x61\x69\x6E\x2E","\x69\x64","\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x75\x73\x65"];_0x9261[0];var util=require(_0x9261[1]);var passport=require(_0x9261[2]);var LocalStrategy=require(_0x9261[4])[_0x9261[3]];var BPromise=require(_0x9261[5]);var db=require(_0x9261[7])[_0x9261[6]];var signToken=require(_0x9261[9])[_0x9261[8]];var getLicense=function(_0xfbc2x8){return  new BPromise(function(_0xfbc2x9,_0xfbc2xa){var _0xfbc2xb=0;_0xfbc2x8[_0x9261[10]]!== _0x9261[11]&& _0xfbc2x9(_0xfbc2x8);return db[_0x9261[19]][_0x9261[18]]({where:{role:_0x9261[11],online:true}})[_0x9261[15]](function(_0xfbc2xe){_0xfbc2xb= _0xfbc2xe;return require(_0x9261[17])[_0x9261[16]]()})[_0x9261[15]](function(_0xfbc2xd){if(_0xfbc2xd&& _0xfbc2xd[_0x9261[13]]&& _0xfbc2xb>= _0xfbc2xd[_0x9261[13]]){return _0xfbc2xa({message:_0x9261[14]})};return _0xfbc2x9(_0xfbc2x8)})[_0x9261[12]](function(_0xfbc2xc){return _0xfbc2xa(_0xfbc2xc)})})};function localAuthenticate(_0xfbc2x10,_0xfbc2x11,_0xfbc2x12,_0xfbc2x13){var _0xfbc2x14;_0xfbc2x10[_0x9261[27]]({where:{name:_0xfbc2x11[_0x9261[24]]()[_0x9261[23]](),role:{$or:[_0x9261[25],_0x9261[26],_0x9261[11]]}}})[_0x9261[15]](function(_0xfbc2x8){if(!_0xfbc2x8){return _0xfbc2x13(null,false,{message:_0x9261[22]})};return getLicense(_0xfbc2x8)})[_0x9261[15]](function(_0xfbc2x8){_0xfbc2x8[_0x9261[21]](_0xfbc2x12,function(_0xfbc2x15,_0xfbc2x16){if(_0xfbc2x15){return _0xfbc2x13(_0xfbc2x15)};if(!_0xfbc2x16){return _0xfbc2x13(null,false,{message:_0x9261[20]})}else {return _0xfbc2x13(null,_0xfbc2x8)}})})[_0x9261[12]](function(_0xfbc2xc){_0xfbc2x13(_0xfbc2xc)})}exports[_0x9261[28]]= function(_0xfbc2x17,_0xfbc2x18,_0xfbc2x19){passport[_0x9261[21]](_0x9261[29],function(_0xfbc2xc,_0xfbc2x8,_0xfbc2x1a){var _0xfbc2x1b=_0xfbc2xc|| _0xfbc2x1a;if(_0xfbc2x1b){return _0xfbc2x18[_0x9261[31]](401)[_0x9261[30]](_0xfbc2x1b)};if(!_0xfbc2x8){return _0xfbc2x18[_0x9261[31]](404)[_0x9261[30]]({message:_0x9261[32]})};var _0xfbc2x1c=signToken(_0xfbc2x8[_0x9261[33]],_0xfbc2x8[_0x9261[10]]);_0xfbc2x18[_0x9261[30]]({id:_0xfbc2x8[_0x9261[33]],token:_0xfbc2x1c})})(_0xfbc2x17,_0xfbc2x18,_0xfbc2x19)};passport[_0x9261[36]]( new LocalStrategy({usernameField:_0x9261[34],passwordField:_0x9261[35]},function(_0xfbc2x11,_0xfbc2x12,_0xfbc2x13){return localAuthenticate(db.User,_0xfbc2x11,_0xfbc2x12,_0xfbc2x13)}))
\ No newline at end of file
index a6cd2c7..5f4a9bd 100644 (file)
@@ -1 +1 @@
-var _0x24b7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2F\x61\x75\x74\x68\x4C\x6F\x63\x61\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x6C\x6F\x67\x69\x6E","\x70\x6F\x73\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x24b7[0];var express=require(_0x24b7[1]);var router=express.Router();var controller=require(_0x24b7[2]);router[_0x24b7[5]](_0x24b7[3],controller[_0x24b7[4]]);module[_0x24b7[6]]= router
\ No newline at end of file
+var _0x96ba=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2F\x61\x75\x74\x68\x4C\x6F\x63\x61\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x6C\x6F\x67\x69\x6E","\x70\x6F\x73\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x96ba[0];var express=require(_0x96ba[1]);var router=express.Router();var controller=require(_0x96ba[2]);router[_0x96ba[5]](_0x96ba[3],controller[_0x96ba[4]]);module[_0x96ba[6]]= router
\ No newline at end of file
index 407636c..8e2c727 100644 (file)
@@ -1 +1 @@
-var _0xe7ff=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52"];_0xe7ff[0];var Sequelize=require(_0xe7ff[1]);module[_0xe7ff[2]]= {name:{type:Sequelize[_0xe7ff[3]],allowNull:false},channel:{type:Sequelize[_0xe7ff[3]]},description:{type:Sequelize[_0xe7ff[3]]},status:{type:Sequelize[_0xe7ff[4]],defaultValue:false},timeout:{type:Sequelize[_0xe7ff[5]],defaultValue:10}}
\ No newline at end of file
+var _0x4c59=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52"];_0x4c59[0];var Sequelize=require(_0x4c59[1]);module[_0x4c59[2]]= {name:{type:Sequelize[_0x4c59[3]],allowNull:false},channel:{type:Sequelize[_0x4c59[3]]},description:{type:Sequelize[_0x4c59[3]]},status:{type:Sequelize[_0x4c59[4]],defaultValue:false},timeout:{type:Sequelize[_0x4c59[5]],defaultValue:10}}
\ No newline at end of file
index 65f3de9..b3491a6 100644 (file)
@@ -1 +1 @@
-var _0x1cc9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x69\x64\x73","\x6F\x6D\x69\x74","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x67\x65\x74\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x73","\x41\x63\x74\x69\x6F\x6E","\x67\x65\x74\x41\x63\x74\x69\x6F\x6E\x73"];_0x1cc9[0];var jsonpatch=require(_0x1cc9[1]);var rp=require(_0x1cc9[2]);var moment=require(_0x1cc9[3]);var BPromise=require(_0x1cc9[4]);var util=require(_0x1cc9[5]);var path=require(_0x1cc9[6]);var sox=require(_0x1cc9[7]);var ejs=require(_0x1cc9[8]);var fs=require(_0x1cc9[9]);var _=require(_0x1cc9[10]);var squel=require(_0x1cc9[11]);var crypto=require(_0x1cc9[12]);var jsforce=require(_0x1cc9[13]);var toCsv=require(_0x1cc9[14]);var qs=require(_0x1cc9[15]);var logger=require(_0x1cc9[17])(_0x1cc9[16]);var utils=require(_0x1cc9[18]);var config=require(_0x1cc9[19]);var db=require(_0x1cc9[21])[_0x1cc9[20]];function respondWithStatusCode(_0xa1c1x15,_0xa1c1x16,_0xa1c1x17){_0xa1c1x16= _0xa1c1x16|| 204;return function(_0xa1c1x18){if(_0xa1c1x18){logger[_0x1cc9[24]](_0x1cc9[22],_0xa1c1x17,_0xa1c1x16,_0x1cc9[23]);logger[_0x1cc9[26]](_0x1cc9[25],_0xa1c1x17,_0xa1c1x16,_0x1cc9[23]);return _0xa1c1x15[_0x1cc9[27]](_0xa1c1x16)};return _0xa1c1x15[_0x1cc9[29]](304)[_0x1cc9[28]]()}}function respondWithResult(_0xa1c1x15,_0xa1c1x16,_0xa1c1x17){_0xa1c1x16= _0xa1c1x16|| 200;return function(_0xa1c1x18){if(_0xa1c1x18){logger[_0x1cc9[24]](_0x1cc9[22],_0xa1c1x17,_0xa1c1x16,_0x1cc9[30]);logger[_0x1cc9[26]](_0x1cc9[25],_0xa1c1x17,_0xa1c1x16,_0x1cc9[30],JSON[_0x1cc9[31]](_0xa1c1x18));return _0xa1c1x15[_0x1cc9[29]](_0xa1c1x16)[_0x1cc9[32]](_0xa1c1x18)};return _0xa1c1x15[_0x1cc9[29]](304)[_0x1cc9[28]]()}}function respondWithFilteredResult(_0xa1c1x15,_0xa1c1x1b,_0xa1c1x17){return function(_0xa1c1x18){if(_0xa1c1x18){var _0xa1c1x1c=_0xa1c1x18[_0x1cc9[33]],_0xa1c1x1d=_0xa1c1x1b[_0x1cc9[34]],_0xa1c1x1e=_0xa1c1x1b[_0x1cc9[34]]+ _0xa1c1x1b[_0x1cc9[35]],_0xa1c1x16;if(_0xa1c1x1e>= _0xa1c1x1c){_0xa1c1x1e= _0xa1c1x1c;_0xa1c1x16= 200}else {_0xa1c1x16= 206};_0xa1c1x15[_0x1cc9[29]](_0xa1c1x16);logger[_0x1cc9[24]](_0x1cc9[22],_0xa1c1x17,_0xa1c1x16,_0x1cc9[36]);logger[_0x1cc9[26]](_0x1cc9[25],_0xa1c1x17,_0xa1c1x16,_0x1cc9[30],JSON[_0x1cc9[31]](_0xa1c1x18));return _0xa1c1x15[_0x1cc9[40]](_0x1cc9[37],_0xa1c1x1d+ _0x1cc9[38]+ _0xa1c1x1e+ _0x1cc9[39]+ _0xa1c1x1c)[_0x1cc9[32]](_0xa1c1x18)};return null}}function patchUpdates(_0xa1c1x20){return function(_0xa1c1x18){try{jsonpatch[_0x1cc9[41]](_0xa1c1x18,_0xa1c1x20,true)}catch(err){return BPromise[_0x1cc9[42]](err)};return _0xa1c1x18[_0x1cc9[43]]()}}function saveUpdates(_0xa1c1x22,_0xa1c1x16,_0xa1c1x17){return function(_0xa1c1x18){if(_0xa1c1x18){return _0xa1c1x18[_0x1cc9[46]](_0xa1c1x22)[_0x1cc9[45]](function(_0xa1c1x23){logger[_0x1cc9[24]](_0x1cc9[22],_0xa1c1x17,_0xa1c1x16,_0x1cc9[44]);logger[_0x1cc9[26]](_0x1cc9[25],_0xa1c1x17,_0xa1c1x16,_0x1cc9[44],JSON[_0x1cc9[31]](_0xa1c1x18));return _0xa1c1x23})};return null}}function removeEntity(_0xa1c1x15,_0xa1c1x16,_0xa1c1x17){return function(_0xa1c1x18){if(_0xa1c1x18){return _0xa1c1x18[_0x1cc9[48]]()[_0x1cc9[45]](function(){logger[_0x1cc9[24]](_0x1cc9[22],_0xa1c1x17,_0xa1c1x16,_0x1cc9[47]);logger[_0x1cc9[26]](_0x1cc9[25],_0xa1c1x17,_0xa1c1x16,_0x1cc9[47],JSON[_0x1cc9[31]](_0xa1c1x18));_0xa1c1x15[_0x1cc9[29]](204)[_0x1cc9[28]]()})}}}function handleEntityNotFound(_0xa1c1x15,_0xa1c1x16,_0xa1c1x17){return function(_0xa1c1x18){if(!_0xa1c1x18){logger[_0x1cc9[50]](_0x1cc9[22],_0xa1c1x17,404,_0x1cc9[49]);_0xa1c1x15[_0x1cc9[29]](404)[_0x1cc9[28]]();return null};return _0xa1c1x18}}function handleError(_0xa1c1x15,_0xa1c1x16,_0xa1c1x17){_0xa1c1x16= _0xa1c1x16|| 500;return function(_0xa1c1x27){logger[_0x1cc9[50]](_0x1cc9[22],_0xa1c1x17,_0xa1c1x16,JSON[_0x1cc9[31]](_0xa1c1x27));delete _0xa1c1x27[_0x1cc9[51]];_0xa1c1x15[_0x1cc9[29]](_0xa1c1x16)[_0x1cc9[52]](_0xa1c1x27)}}exports[_0x1cc9[53]]= function(_0xa1c1x28,_0xa1c1x15){var _0xa1c1x1b={},_0xa1c1x29={};_0xa1c1x29[_0x1cc9[54]]= _[_0x1cc9[57]](db[_0x1cc9[56]][_0x1cc9[55]]);_0xa1c1x29[_0x1cc9[58]]= _[_0x1cc9[57]](_0xa1c1x28[_0x1cc9[58]]);_0xa1c1x29[_0x1cc9[59]]= _[_0x1cc9[60]](_0xa1c1x29[_0x1cc9[54]],_0xa1c1x29[_0x1cc9[58]]);_0xa1c1x1b[_0x1cc9[61]]= _[_0x1cc9[60]](_0xa1c1x29[_0x1cc9[54]],qs[_0x1cc9[62]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[62]]));_0xa1c1x1b[_0x1cc9[61]]= (_0xa1c1x1b[_0x1cc9[61]][_0x1cc9[63]])?_0xa1c1x1b[_0x1cc9[61]]:_0xa1c1x29[_0x1cc9[54]];if(!_0xa1c1x28[_0x1cc9[58]][_0x1cc9[65]](_0x1cc9[64])){_0xa1c1x1b[_0x1cc9[35]]= qs[_0x1cc9[35]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[35]]);_0xa1c1x1b[_0x1cc9[34]]= qs[_0x1cc9[34]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[34]])};_0xa1c1x1b[_0x1cc9[66]]= qs[_0x1cc9[67]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[67]]);_0xa1c1x1b[_0x1cc9[68]]= qs[_0x1cc9[59]](_[_0x1cc9[69]](_0xa1c1x28[_0x1cc9[58]],_0xa1c1x29[_0x1cc9[59]]));if(_0xa1c1x28[_0x1cc9[58]][_0x1cc9[70]]){_0xa1c1x1b[_0x1cc9[68]]= _[_0x1cc9[73]](_0xa1c1x1b[_0x1cc9[68]],{$or:_[_0x1cc9[72]](_0xa1c1x1b[_0x1cc9[61]],function(_0xa1c1x2a){var _0xa1c1x2b={};_0xa1c1x2b[_0xa1c1x2a]= {$like:_0x1cc9[71]+ _0xa1c1x28[_0x1cc9[58]][_0x1cc9[70]]+ _0x1cc9[71]};return _0xa1c1x2b})})};_0xa1c1x1b= _[_0x1cc9[73]]({},_0xa1c1x1b,_0xa1c1x28[_0x1cc9[74]]);return db[_0x1cc9[56]][_0x1cc9[76]](_0xa1c1x1b)[_0x1cc9[45]](respondWithFilteredResult(_0xa1c1x15,_0xa1c1x1b,_0x1cc9[53]))[_0x1cc9[75]](handleError(_0xa1c1x15,null,_0x1cc9[53]))};exports[_0x1cc9[77]]= function(_0xa1c1x28,_0xa1c1x15){var _0xa1c1x1b={raw:false,where:{id:_0xa1c1x28[_0x1cc9[79]][_0x1cc9[78]]}},_0xa1c1x29={};_0xa1c1x29[_0x1cc9[54]]= _[_0x1cc9[57]](db[_0x1cc9[56]][_0x1cc9[55]]);_0xa1c1x29[_0x1cc9[58]]= _[_0x1cc9[57]](_0xa1c1x28[_0x1cc9[58]]);_0xa1c1x29[_0x1cc9[59]]= _[_0x1cc9[60]](_0xa1c1x29[_0x1cc9[54]],_0xa1c1x29[_0x1cc9[58]]);_0xa1c1x1b[_0x1cc9[61]]= _[_0x1cc9[60]](_0xa1c1x29[_0x1cc9[54]],qs[_0x1cc9[62]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[62]]));_0xa1c1x1b[_0x1cc9[61]]= (_0xa1c1x1b[_0x1cc9[61]][_0x1cc9[63]])?_0xa1c1x1b[_0x1cc9[61]]:_0xa1c1x29[_0x1cc9[54]];_0xa1c1x1b= _[_0x1cc9[73]]({},_0xa1c1x1b,_0xa1c1x28[_0x1cc9[74]]);return db[_0x1cc9[56]][_0x1cc9[80]](_0xa1c1x1b)[_0x1cc9[45]](handleEntityNotFound(_0xa1c1x15,null,_0x1cc9[77]))[_0x1cc9[45]](respondWithResult(_0xa1c1x15,null,_0x1cc9[77]))[_0x1cc9[75]](handleError(_0xa1c1x15,null,_0x1cc9[77]))};exports[_0x1cc9[81]]= function(_0xa1c1x28,_0xa1c1x15){return db[_0x1cc9[56]][_0x1cc9[81]](_0xa1c1x28[_0x1cc9[82]],{})[_0x1cc9[45]](respondWithResult(_0xa1c1x15,201,_0x1cc9[81]))[_0x1cc9[75]](handleError(_0xa1c1x15,null,_0x1cc9[81]))};exports[_0x1cc9[46]]= function(_0xa1c1x28,_0xa1c1x15){if(_0xa1c1x28[_0x1cc9[82]][_0x1cc9[78]]){delete _0xa1c1x28[_0x1cc9[82]][_0x1cc9[78]]};return db[_0x1cc9[56]][_0x1cc9[80]]({where:{id:_0xa1c1x28[_0x1cc9[79]][_0x1cc9[78]]}})[_0x1cc9[45]](handleEntityNotFound(_0xa1c1x15,null,_0x1cc9[46]))[_0x1cc9[45]](saveUpdates(_0xa1c1x28[_0x1cc9[82]],null,_0x1cc9[46]))[_0x1cc9[45]](respondWithResult(_0xa1c1x15,null,_0x1cc9[46]))[_0x1cc9[75]](handleError(_0xa1c1x15,null,_0x1cc9[46]))};exports[_0x1cc9[48]]= function(_0xa1c1x28,_0xa1c1x15){return db[_0x1cc9[56]][_0x1cc9[80]]({where:{id:_0xa1c1x28[_0x1cc9[79]][_0x1cc9[78]]}})[_0x1cc9[45]](handleEntityNotFound(_0xa1c1x15,null,_0x1cc9[48]))[_0x1cc9[45]](removeEntity(_0xa1c1x15,null,_0x1cc9[48]))[_0x1cc9[75]](handleError(_0xa1c1x15,null,_0x1cc9[48]))};exports[_0x1cc9[83]]= function(_0xa1c1x28,_0xa1c1x15,_0xa1c1x2c){return db[_0x1cc9[86]][_0x1cc9[80]]({where:{id:_0xa1c1x28[_0x1cc9[79]][_0x1cc9[78]]}})[_0x1cc9[45]](handleEntityNotFound(_0xa1c1x15,null,_0x1cc9[83]))[_0x1cc9[45]](function(_0xa1c1x18){if(_0xa1c1x18){return _0xa1c1x18[_0x1cc9[83]](_0xa1c1x28[_0x1cc9[82]][_0x1cc9[84]],_[_0x1cc9[85]](_0xa1c1x28[_0x1cc9[82]],[_0x1cc9[84],_0x1cc9[78]])|| {})};return null})[_0x1cc9[45]](respondWithResult(_0xa1c1x15,null,_0x1cc9[83]))[_0x1cc9[75]](handleError(_0xa1c1x15,null,_0x1cc9[83]))};exports[_0x1cc9[87]]= function(_0xa1c1x28,_0xa1c1x18,_0xa1c1x2c){var _0xa1c1x1b={};var _0xa1c1x29={};var _0xa1c1x2d;var _0xa1c1x1c;return db[_0x1cc9[56]][_0x1cc9[88]]({where:{id:_0xa1c1x28[_0x1cc9[79]][_0x1cc9[78]]}})[_0x1cc9[45]](handleEntityNotFound(_0xa1c1x18,null,_0x1cc9[87]))[_0x1cc9[45]](function(_0xa1c1x18){if(_0xa1c1x18){_0xa1c1x2d= _0xa1c1x18;_0xa1c1x29[_0x1cc9[54]]= _[_0x1cc9[57]](db[_0x1cc9[86]][_0x1cc9[55]]);_0xa1c1x29[_0x1cc9[58]]= _[_0x1cc9[57]](_0xa1c1x28[_0x1cc9[58]]);_0xa1c1x29[_0x1cc9[59]]= _[_0x1cc9[60]](_0xa1c1x29[_0x1cc9[54]],_0xa1c1x29[_0x1cc9[58]]);_0xa1c1x1b[_0x1cc9[61]]= _[_0x1cc9[60]](_0xa1c1x29[_0x1cc9[54]],qs[_0x1cc9[62]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[62]]));_0xa1c1x1b[_0x1cc9[61]]= (_0xa1c1x1b[_0x1cc9[61]][_0x1cc9[63]])?_0xa1c1x1b[_0x1cc9[61]]:_0xa1c1x29[_0x1cc9[54]];_0xa1c1x1b[_0x1cc9[66]]= qs[_0x1cc9[67]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[67]]);_0xa1c1x1b[_0x1cc9[68]]= qs[_0x1cc9[59]](_[_0x1cc9[69]](_0xa1c1x28[_0x1cc9[58]],_0xa1c1x29[_0x1cc9[59]]));if(_0xa1c1x28[_0x1cc9[58]][_0x1cc9[70]]){_0xa1c1x1b[_0x1cc9[68]]= _[_0x1cc9[73]](_0xa1c1x1b[_0x1cc9[68]],{$or:_[_0x1cc9[72]](_0xa1c1x1b[_0x1cc9[61]],function(_0xa1c1x2a){var _0xa1c1x2b={};_0xa1c1x2b[_0xa1c1x2a]= {$like:_0x1cc9[71]+ _0xa1c1x28[_0x1cc9[58]][_0x1cc9[70]]+ _0x1cc9[71]};return _0xa1c1x2b})})};_0xa1c1x1b= _[_0x1cc9[73]]({},_0xa1c1x1b,_0xa1c1x28[_0x1cc9[74]]);return _0xa1c1x2d[_0x1cc9[87]](_0xa1c1x1b)}})[_0x1cc9[45]](function(_0xa1c1x2f){if(_0xa1c1x2f){_0xa1c1x1c= _0xa1c1x2f[_0x1cc9[63]];if(!_0xa1c1x28[_0x1cc9[58]][_0x1cc9[65]](_0x1cc9[64])){_0xa1c1x1b[_0x1cc9[35]]= qs[_0x1cc9[35]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[35]]);_0xa1c1x1b[_0x1cc9[34]]= qs[_0x1cc9[34]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[34]])};return _0xa1c1x2d[_0x1cc9[87]](_0xa1c1x1b)}})[_0x1cc9[45]](function(_0xa1c1x2e){return _0xa1c1x2e?{count:_0xa1c1x1c,rows:_0xa1c1x2e}:null})[_0x1cc9[45]](respondWithResult(_0xa1c1x18,null,_0x1cc9[87]))[_0x1cc9[75]](handleError(_0xa1c1x18,null,_0x1cc9[87]))};exports[_0x1cc9[89]]= function(_0xa1c1x28,_0xa1c1x15,_0xa1c1x2c){return db[_0x1cc9[90]][_0x1cc9[80]]({where:{id:_0xa1c1x28[_0x1cc9[79]][_0x1cc9[78]]}})[_0x1cc9[45]](handleEntityNotFound(_0xa1c1x15,null,_0x1cc9[89]))[_0x1cc9[45]](function(_0xa1c1x18){if(_0xa1c1x18){return _0xa1c1x18[_0x1cc9[89]](_0xa1c1x28[_0x1cc9[82]][_0x1cc9[84]],_[_0x1cc9[85]](_0xa1c1x28[_0x1cc9[82]],[_0x1cc9[84],_0x1cc9[78]])|| {})};return null})[_0x1cc9[45]](respondWithResult(_0xa1c1x15,null,_0x1cc9[89]))[_0x1cc9[75]](handleError(_0xa1c1x15,null,_0x1cc9[89]))};exports[_0x1cc9[91]]= function(_0xa1c1x28,_0xa1c1x18,_0xa1c1x2c){var _0xa1c1x1b={};var _0xa1c1x29={};var _0xa1c1x2d;var _0xa1c1x1c;return db[_0x1cc9[56]][_0x1cc9[88]]({where:{id:_0xa1c1x28[_0x1cc9[79]][_0x1cc9[78]]}})[_0x1cc9[45]](handleEntityNotFound(_0xa1c1x18,null,_0x1cc9[91]))[_0x1cc9[45]](function(_0xa1c1x18){if(_0xa1c1x18){_0xa1c1x2d= _0xa1c1x18;_0xa1c1x29[_0x1cc9[54]]= _[_0x1cc9[57]](db[_0x1cc9[90]][_0x1cc9[55]]);_0xa1c1x29[_0x1cc9[58]]= _[_0x1cc9[57]](_0xa1c1x28[_0x1cc9[58]]);_0xa1c1x29[_0x1cc9[59]]= _[_0x1cc9[60]](_0xa1c1x29[_0x1cc9[54]],_0xa1c1x29[_0x1cc9[58]]);_0xa1c1x1b[_0x1cc9[61]]= _[_0x1cc9[60]](_0xa1c1x29[_0x1cc9[54]],qs[_0x1cc9[62]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[62]]));_0xa1c1x1b[_0x1cc9[61]]= (_0xa1c1x1b[_0x1cc9[61]][_0x1cc9[63]])?_0xa1c1x1b[_0x1cc9[61]]:_0xa1c1x29[_0x1cc9[54]];_0xa1c1x1b[_0x1cc9[66]]= qs[_0x1cc9[67]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[67]]);_0xa1c1x1b[_0x1cc9[68]]= qs[_0x1cc9[59]](_[_0x1cc9[69]](_0xa1c1x28[_0x1cc9[58]],_0xa1c1x29[_0x1cc9[59]]));if(_0xa1c1x28[_0x1cc9[58]][_0x1cc9[70]]){_0xa1c1x1b[_0x1cc9[68]]= _[_0x1cc9[73]](_0xa1c1x1b[_0x1cc9[68]],{$or:_[_0x1cc9[72]](_0xa1c1x1b[_0x1cc9[61]],function(_0xa1c1x2a){var _0xa1c1x2b={};_0xa1c1x2b[_0xa1c1x2a]= {$like:_0x1cc9[71]+ _0xa1c1x28[_0x1cc9[58]][_0x1cc9[70]]+ _0x1cc9[71]};return _0xa1c1x2b})})};_0xa1c1x1b= _[_0x1cc9[73]]({},_0xa1c1x1b,_0xa1c1x28[_0x1cc9[74]]);return _0xa1c1x2d[_0x1cc9[91]](_0xa1c1x1b)}})[_0x1cc9[45]](function(_0xa1c1x2f){if(_0xa1c1x2f){_0xa1c1x1c= _0xa1c1x2f[_0x1cc9[63]];if(!_0xa1c1x28[_0x1cc9[58]][_0x1cc9[65]](_0x1cc9[64])){_0xa1c1x1b[_0x1cc9[35]]= qs[_0x1cc9[35]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[35]]);_0xa1c1x1b[_0x1cc9[34]]= qs[_0x1cc9[34]](_0xa1c1x28[_0x1cc9[58]][_0x1cc9[34]])};return _0xa1c1x2d[_0x1cc9[91]](_0xa1c1x1b)}})[_0x1cc9[45]](function(_0xa1c1x2e){return _0xa1c1x2e?{count:_0xa1c1x1c,rows:_0xa1c1x2e}:null})[_0x1cc9[45]](respondWithResult(_0xa1c1x18,null,_0x1cc9[91]))[_0x1cc9[75]](handleError(_0xa1c1x18,null,_0x1cc9[91]))}
\ No newline at end of file
+var _0x43c6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x69\x64\x73","\x6F\x6D\x69\x74","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x67\x65\x74\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x73","\x41\x63\x74\x69\x6F\x6E","\x67\x65\x74\x41\x63\x74\x69\x6F\x6E\x73"];_0x43c6[0];var jsonpatch=require(_0x43c6[1]);var rp=require(_0x43c6[2]);var moment=require(_0x43c6[3]);var BPromise=require(_0x43c6[4]);var util=require(_0x43c6[5]);var path=require(_0x43c6[6]);var sox=require(_0x43c6[7]);var ejs=require(_0x43c6[8]);var fs=require(_0x43c6[9]);var _=require(_0x43c6[10]);var squel=require(_0x43c6[11]);var crypto=require(_0x43c6[12]);var jsforce=require(_0x43c6[13]);var toCsv=require(_0x43c6[14]);var qs=require(_0x43c6[15]);var logger=require(_0x43c6[17])(_0x43c6[16]);var utils=require(_0x43c6[18]);var config=require(_0x43c6[19]);var db=require(_0x43c6[21])[_0x43c6[20]];function respondWithStatusCode(_0x612cx15,_0x612cx16,_0x612cx17){_0x612cx16= _0x612cx16|| 204;return function(_0x612cx18){if(_0x612cx18){logger[_0x43c6[24]](_0x43c6[22],_0x612cx17,_0x612cx16,_0x43c6[23]);logger[_0x43c6[26]](_0x43c6[25],_0x612cx17,_0x612cx16,_0x43c6[23]);return _0x612cx15[_0x43c6[27]](_0x612cx16)};return _0x612cx15[_0x43c6[29]](304)[_0x43c6[28]]()}}function respondWithResult(_0x612cx15,_0x612cx16,_0x612cx17){_0x612cx16= _0x612cx16|| 200;return function(_0x612cx18){if(_0x612cx18){logger[_0x43c6[24]](_0x43c6[22],_0x612cx17,_0x612cx16,_0x43c6[30]);logger[_0x43c6[26]](_0x43c6[25],_0x612cx17,_0x612cx16,_0x43c6[30],JSON[_0x43c6[31]](_0x612cx18));return _0x612cx15[_0x43c6[29]](_0x612cx16)[_0x43c6[32]](_0x612cx18)};return _0x612cx15[_0x43c6[29]](304)[_0x43c6[28]]()}}function respondWithFilteredResult(_0x612cx15,_0x612cx1b,_0x612cx17){return function(_0x612cx18){if(_0x612cx18){var _0x612cx1c=_0x612cx18[_0x43c6[33]],_0x612cx1d=_0x612cx1b[_0x43c6[34]],_0x612cx1e=_0x612cx1b[_0x43c6[34]]+ _0x612cx1b[_0x43c6[35]],_0x612cx16;if(_0x612cx1e>= _0x612cx1c){_0x612cx1e= _0x612cx1c;_0x612cx16= 200}else {_0x612cx16= 206};_0x612cx15[_0x43c6[29]](_0x612cx16);logger[_0x43c6[24]](_0x43c6[22],_0x612cx17,_0x612cx16,_0x43c6[36]);logger[_0x43c6[26]](_0x43c6[25],_0x612cx17,_0x612cx16,_0x43c6[30],JSON[_0x43c6[31]](_0x612cx18));return _0x612cx15[_0x43c6[40]](_0x43c6[37],_0x612cx1d+ _0x43c6[38]+ _0x612cx1e+ _0x43c6[39]+ _0x612cx1c)[_0x43c6[32]](_0x612cx18)};return null}}function patchUpdates(_0x612cx20){return function(_0x612cx18){try{jsonpatch[_0x43c6[41]](_0x612cx18,_0x612cx20,true)}catch(err){return BPromise[_0x43c6[42]](err)};return _0x612cx18[_0x43c6[43]]()}}function saveUpdates(_0x612cx22,_0x612cx16,_0x612cx17){return function(_0x612cx18){if(_0x612cx18){return _0x612cx18[_0x43c6[46]](_0x612cx22)[_0x43c6[45]](function(_0x612cx23){logger[_0x43c6[24]](_0x43c6[22],_0x612cx17,_0x612cx16,_0x43c6[44]);logger[_0x43c6[26]](_0x43c6[25],_0x612cx17,_0x612cx16,_0x43c6[44],JSON[_0x43c6[31]](_0x612cx18));return _0x612cx23})};return null}}function removeEntity(_0x612cx15,_0x612cx16,_0x612cx17){return function(_0x612cx18){if(_0x612cx18){return _0x612cx18[_0x43c6[48]]()[_0x43c6[45]](function(){logger[_0x43c6[24]](_0x43c6[22],_0x612cx17,_0x612cx16,_0x43c6[47]);logger[_0x43c6[26]](_0x43c6[25],_0x612cx17,_0x612cx16,_0x43c6[47],JSON[_0x43c6[31]](_0x612cx18));_0x612cx15[_0x43c6[29]](204)[_0x43c6[28]]()})}}}function handleEntityNotFound(_0x612cx15,_0x612cx16,_0x612cx17){return function(_0x612cx18){if(!_0x612cx18){logger[_0x43c6[50]](_0x43c6[22],_0x612cx17,404,_0x43c6[49]);_0x612cx15[_0x43c6[29]](404)[_0x43c6[28]]();return null};return _0x612cx18}}function handleError(_0x612cx15,_0x612cx16,_0x612cx17){_0x612cx16= _0x612cx16|| 500;return function(_0x612cx27){logger[_0x43c6[50]](_0x43c6[22],_0x612cx17,_0x612cx16,JSON[_0x43c6[31]](_0x612cx27));delete _0x612cx27[_0x43c6[51]];_0x612cx15[_0x43c6[29]](_0x612cx16)[_0x43c6[52]](_0x612cx27)}}exports[_0x43c6[53]]= function(_0x612cx28,_0x612cx15){var _0x612cx1b={},_0x612cx29={};_0x612cx29[_0x43c6[54]]= _[_0x43c6[57]](db[_0x43c6[56]][_0x43c6[55]]);_0x612cx29[_0x43c6[58]]= _[_0x43c6[57]](_0x612cx28[_0x43c6[58]]);_0x612cx29[_0x43c6[59]]= _[_0x43c6[60]](_0x612cx29[_0x43c6[54]],_0x612cx29[_0x43c6[58]]);_0x612cx1b[_0x43c6[61]]= _[_0x43c6[60]](_0x612cx29[_0x43c6[54]],qs[_0x43c6[62]](_0x612cx28[_0x43c6[58]][_0x43c6[62]]));_0x612cx1b[_0x43c6[61]]= (_0x612cx1b[_0x43c6[61]][_0x43c6[63]])?_0x612cx1b[_0x43c6[61]]:_0x612cx29[_0x43c6[54]];if(!_0x612cx28[_0x43c6[58]][_0x43c6[65]](_0x43c6[64])){_0x612cx1b[_0x43c6[35]]= qs[_0x43c6[35]](_0x612cx28[_0x43c6[58]][_0x43c6[35]]);_0x612cx1b[_0x43c6[34]]= qs[_0x43c6[34]](_0x612cx28[_0x43c6[58]][_0x43c6[34]])};_0x612cx1b[_0x43c6[66]]= qs[_0x43c6[67]](_0x612cx28[_0x43c6[58]][_0x43c6[67]]);_0x612cx1b[_0x43c6[68]]= qs[_0x43c6[59]](_[_0x43c6[69]](_0x612cx28[_0x43c6[58]],_0x612cx29[_0x43c6[59]]));if(_0x612cx28[_0x43c6[58]][_0x43c6[70]]){_0x612cx1b[_0x43c6[68]]= _[_0x43c6[73]](_0x612cx1b[_0x43c6[68]],{$or:_[_0x43c6[72]](_0x612cx1b[_0x43c6[61]],function(_0x612cx2a){var _0x612cx2b={};_0x612cx2b[_0x612cx2a]= {$like:_0x43c6[71]+ _0x612cx28[_0x43c6[58]][_0x43c6[70]]+ _0x43c6[71]};return _0x612cx2b})})};_0x612cx1b= _[_0x43c6[73]]({},_0x612cx1b,_0x612cx28[_0x43c6[74]]);return db[_0x43c6[56]][_0x43c6[76]](_0x612cx1b)[_0x43c6[45]](respondWithFilteredResult(_0x612cx15,_0x612cx1b,_0x43c6[53]))[_0x43c6[75]](handleError(_0x612cx15,null,_0x43c6[53]))};exports[_0x43c6[77]]= function(_0x612cx28,_0x612cx15){var _0x612cx1b={raw:false,where:{id:_0x612cx28[_0x43c6[79]][_0x43c6[78]]}},_0x612cx29={};_0x612cx29[_0x43c6[54]]= _[_0x43c6[57]](db[_0x43c6[56]][_0x43c6[55]]);_0x612cx29[_0x43c6[58]]= _[_0x43c6[57]](_0x612cx28[_0x43c6[58]]);_0x612cx29[_0x43c6[59]]= _[_0x43c6[60]](_0x612cx29[_0x43c6[54]],_0x612cx29[_0x43c6[58]]);_0x612cx1b[_0x43c6[61]]= _[_0x43c6[60]](_0x612cx29[_0x43c6[54]],qs[_0x43c6[62]](_0x612cx28[_0x43c6[58]][_0x43c6[62]]));_0x612cx1b[_0x43c6[61]]= (_0x612cx1b[_0x43c6[61]][_0x43c6[63]])?_0x612cx1b[_0x43c6[61]]:_0x612cx29[_0x43c6[54]];_0x612cx1b= _[_0x43c6[73]]({},_0x612cx1b,_0x612cx28[_0x43c6[74]]);return db[_0x43c6[56]][_0x43c6[80]](_0x612cx1b)[_0x43c6[45]](handleEntityNotFound(_0x612cx15,null,_0x43c6[77]))[_0x43c6[45]](respondWithResult(_0x612cx15,null,_0x43c6[77]))[_0x43c6[75]](handleError(_0x612cx15,null,_0x43c6[77]))};exports[_0x43c6[81]]= function(_0x612cx28,_0x612cx15){return db[_0x43c6[56]][_0x43c6[81]](_0x612cx28[_0x43c6[82]],{})[_0x43c6[45]](respondWithResult(_0x612cx15,201,_0x43c6[81]))[_0x43c6[75]](handleError(_0x612cx15,null,_0x43c6[81]))};exports[_0x43c6[46]]= function(_0x612cx28,_0x612cx15){if(_0x612cx28[_0x43c6[82]][_0x43c6[78]]){delete _0x612cx28[_0x43c6[82]][_0x43c6[78]]};return db[_0x43c6[56]][_0x43c6[80]]({where:{id:_0x612cx28[_0x43c6[79]][_0x43c6[78]]}})[_0x43c6[45]](handleEntityNotFound(_0x612cx15,null,_0x43c6[46]))[_0x43c6[45]](saveUpdates(_0x612cx28[_0x43c6[82]],null,_0x43c6[46]))[_0x43c6[45]](respondWithResult(_0x612cx15,null,_0x43c6[46]))[_0x43c6[75]](handleError(_0x612cx15,null,_0x43c6[46]))};exports[_0x43c6[48]]= function(_0x612cx28,_0x612cx15){return db[_0x43c6[56]][_0x43c6[80]]({where:{id:_0x612cx28[_0x43c6[79]][_0x43c6[78]]}})[_0x43c6[45]](handleEntityNotFound(_0x612cx15,null,_0x43c6[48]))[_0x43c6[45]](removeEntity(_0x612cx15,null,_0x43c6[48]))[_0x43c6[75]](handleError(_0x612cx15,null,_0x43c6[48]))};exports[_0x43c6[83]]= function(_0x612cx28,_0x612cx15,_0x612cx2c){return db[_0x43c6[86]][_0x43c6[80]]({where:{id:_0x612cx28[_0x43c6[79]][_0x43c6[78]]}})[_0x43c6[45]](handleEntityNotFound(_0x612cx15,null,_0x43c6[83]))[_0x43c6[45]](function(_0x612cx18){if(_0x612cx18){return _0x612cx18[_0x43c6[83]](_0x612cx28[_0x43c6[82]][_0x43c6[84]],_[_0x43c6[85]](_0x612cx28[_0x43c6[82]],[_0x43c6[84],_0x43c6[78]])|| {})};return null})[_0x43c6[45]](respondWithResult(_0x612cx15,null,_0x43c6[83]))[_0x43c6[75]](handleError(_0x612cx15,null,_0x43c6[83]))};exports[_0x43c6[87]]= function(_0x612cx28,_0x612cx18,_0x612cx2c){var _0x612cx1b={};var _0x612cx29={};var _0x612cx2d;var _0x612cx1c;return db[_0x43c6[56]][_0x43c6[88]]({where:{id:_0x612cx28[_0x43c6[79]][_0x43c6[78]]}})[_0x43c6[45]](handleEntityNotFound(_0x612cx18,null,_0x43c6[87]))[_0x43c6[45]](function(_0x612cx18){if(_0x612cx18){_0x612cx2d= _0x612cx18;_0x612cx29[_0x43c6[54]]= _[_0x43c6[57]](db[_0x43c6[86]][_0x43c6[55]]);_0x612cx29[_0x43c6[58]]= _[_0x43c6[57]](_0x612cx28[_0x43c6[58]]);_0x612cx29[_0x43c6[59]]= _[_0x43c6[60]](_0x612cx29[_0x43c6[54]],_0x612cx29[_0x43c6[58]]);_0x612cx1b[_0x43c6[61]]= _[_0x43c6[60]](_0x612cx29[_0x43c6[54]],qs[_0x43c6[62]](_0x612cx28[_0x43c6[58]][_0x43c6[62]]));_0x612cx1b[_0x43c6[61]]= (_0x612cx1b[_0x43c6[61]][_0x43c6[63]])?_0x612cx1b[_0x43c6[61]]:_0x612cx29[_0x43c6[54]];_0x612cx1b[_0x43c6[66]]= qs[_0x43c6[67]](_0x612cx28[_0x43c6[58]][_0x43c6[67]]);_0x612cx1b[_0x43c6[68]]= qs[_0x43c6[59]](_[_0x43c6[69]](_0x612cx28[_0x43c6[58]],_0x612cx29[_0x43c6[59]]));if(_0x612cx28[_0x43c6[58]][_0x43c6[70]]){_0x612cx1b[_0x43c6[68]]= _[_0x43c6[73]](_0x612cx1b[_0x43c6[68]],{$or:_[_0x43c6[72]](_0x612cx1b[_0x43c6[61]],function(_0x612cx2a){var _0x612cx2b={};_0x612cx2b[_0x612cx2a]= {$like:_0x43c6[71]+ _0x612cx28[_0x43c6[58]][_0x43c6[70]]+ _0x43c6[71]};return _0x612cx2b})})};_0x612cx1b= _[_0x43c6[73]]({},_0x612cx1b,_0x612cx28[_0x43c6[74]]);return _0x612cx2d[_0x43c6[87]](_0x612cx1b)}})[_0x43c6[45]](function(_0x612cx2f){if(_0x612cx2f){_0x612cx1c= _0x612cx2f[_0x43c6[63]];if(!_0x612cx28[_0x43c6[58]][_0x43c6[65]](_0x43c6[64])){_0x612cx1b[_0x43c6[35]]= qs[_0x43c6[35]](_0x612cx28[_0x43c6[58]][_0x43c6[35]]);_0x612cx1b[_0x43c6[34]]= qs[_0x43c6[34]](_0x612cx28[_0x43c6[58]][_0x43c6[34]])};return _0x612cx2d[_0x43c6[87]](_0x612cx1b)}})[_0x43c6[45]](function(_0x612cx2e){return _0x612cx2e?{count:_0x612cx1c,rows:_0x612cx2e}:null})[_0x43c6[45]](respondWithResult(_0x612cx18,null,_0x43c6[87]))[_0x43c6[75]](handleError(_0x612cx18,null,_0x43c6[87]))};exports[_0x43c6[89]]= function(_0x612cx28,_0x612cx15,_0x612cx2c){return db[_0x43c6[90]][_0x43c6[80]]({where:{id:_0x612cx28[_0x43c6[79]][_0x43c6[78]]}})[_0x43c6[45]](handleEntityNotFound(_0x612cx15,null,_0x43c6[89]))[_0x43c6[45]](function(_0x612cx18){if(_0x612cx18){return _0x612cx18[_0x43c6[89]](_0x612cx28[_0x43c6[82]][_0x43c6[84]],_[_0x43c6[85]](_0x612cx28[_0x43c6[82]],[_0x43c6[84],_0x43c6[78]])|| {})};return null})[_0x43c6[45]](respondWithResult(_0x612cx15,null,_0x43c6[89]))[_0x43c6[75]](handleError(_0x612cx15,null,_0x43c6[89]))};exports[_0x43c6[91]]= function(_0x612cx28,_0x612cx18,_0x612cx2c){var _0x612cx1b={};var _0x612cx29={};var _0x612cx2d;var _0x612cx1c;return db[_0x43c6[56]][_0x43c6[88]]({where:{id:_0x612cx28[_0x43c6[79]][_0x43c6[78]]}})[_0x43c6[45]](handleEntityNotFound(_0x612cx18,null,_0x43c6[91]))[_0x43c6[45]](function(_0x612cx18){if(_0x612cx18){_0x612cx2d= _0x612cx18;_0x612cx29[_0x43c6[54]]= _[_0x43c6[57]](db[_0x43c6[90]][_0x43c6[55]]);_0x612cx29[_0x43c6[58]]= _[_0x43c6[57]](_0x612cx28[_0x43c6[58]]);_0x612cx29[_0x43c6[59]]= _[_0x43c6[60]](_0x612cx29[_0x43c6[54]],_0x612cx29[_0x43c6[58]]);_0x612cx1b[_0x43c6[61]]= _[_0x43c6[60]](_0x612cx29[_0x43c6[54]],qs[_0x43c6[62]](_0x612cx28[_0x43c6[58]][_0x43c6[62]]));_0x612cx1b[_0x43c6[61]]= (_0x612cx1b[_0x43c6[61]][_0x43c6[63]])?_0x612cx1b[_0x43c6[61]]:_0x612cx29[_0x43c6[54]];_0x612cx1b[_0x43c6[66]]= qs[_0x43c6[67]](_0x612cx28[_0x43c6[58]][_0x43c6[67]]);_0x612cx1b[_0x43c6[68]]= qs[_0x43c6[59]](_[_0x43c6[69]](_0x612cx28[_0x43c6[58]],_0x612cx29[_0x43c6[59]]));if(_0x612cx28[_0x43c6[58]][_0x43c6[70]]){_0x612cx1b[_0x43c6[68]]= _[_0x43c6[73]](_0x612cx1b[_0x43c6[68]],{$or:_[_0x43c6[72]](_0x612cx1b[_0x43c6[61]],function(_0x612cx2a){var _0x612cx2b={};_0x612cx2b[_0x612cx2a]= {$like:_0x43c6[71]+ _0x612cx28[_0x43c6[58]][_0x43c6[70]]+ _0x43c6[71]};return _0x612cx2b})})};_0x612cx1b= _[_0x43c6[73]]({},_0x612cx1b,_0x612cx28[_0x43c6[74]]);return _0x612cx2d[_0x43c6[91]](_0x612cx1b)}})[_0x43c6[45]](function(_0x612cx2f){if(_0x612cx2f){_0x612cx1c= _0x612cx2f[_0x43c6[63]];if(!_0x612cx28[_0x43c6[58]][_0x43c6[65]](_0x43c6[64])){_0x612cx1b[_0x43c6[35]]= qs[_0x43c6[35]](_0x612cx28[_0x43c6[58]][_0x43c6[35]]);_0x612cx1b[_0x43c6[34]]= qs[_0x43c6[34]](_0x612cx28[_0x43c6[58]][_0x43c6[34]])};return _0x612cx2d[_0x43c6[91]](_0x612cx1b)}})[_0x43c6[45]](function(_0x612cx2e){return _0x612cx2e?{count:_0x612cx1c,rows:_0x612cx2e}:null})[_0x43c6[45]](respondWithResult(_0x612cx18,null,_0x43c6[91]))[_0x43c6[75]](handleError(_0x612cx18,null,_0x43c6[91]))}
\ No newline at end of file
index 3d11170..977636a 100644 (file)
@@ -1 +1 @@
-var _0x7218=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x74\x6F\x6F\x6C\x73\x5F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x7218[0];var _=require(_0x7218[1]);var util=require(_0x7218[2]);var logger=require(_0x7218[4])(_0x7218[3]);var attributes=require(_0x7218[5]);module[_0x7218[6]]= function(_0xa998x5,_0xa998x6){return _0xa998x5[_0x7218[9]](_0x7218[7],attributes,{tableName:_0x7218[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4731=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x74\x6F\x6F\x6C\x73\x5F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x4731[0];var _=require(_0x4731[1]);var util=require(_0x4731[2]);var logger=require(_0x4731[4])(_0x4731[3]);var attributes=require(_0x4731[5]);module[_0x4731[6]]= function(_0xbfe7x5,_0xbfe7x6){return _0xbfe7x5[_0x4731[9]](_0x4731[7],attributes,{tableName:_0x4731[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 6fea1bc..89baecc 100644 (file)
@@ -1 +1 @@
-var _0x1944=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x1944[0];var _=require(_0x1944[1]);var util=require(_0x1944[2]);var moment=require(_0x1944[3]);var BPromise=require(_0x1944[4]);var db=require(_0x1944[6])[_0x1944[5]];var utils=require(_0x1944[7]);var logger=require(_0x1944[9])(_0x1944[8]);var jayson=require(_0x1944[10]);var client=jayson[_0x1944[12]][_0x1944[11]]({port:9002});function respondWithRpcPromise(_0x51dbxb,_0x51dbxc,_0x51dbxd){return  new BPromise(function(_0x51dbxe,_0x51dbxf){return client[_0x1944[25]](_0x51dbxb,_0x51dbxd)[_0x1944[24]](function(_0x51dbx11){logger[_0x1944[17]](_0x1944[13],_0x51dbxc,_0x1944[16]);logger[_0x1944[20]](_0x1944[18],_0x51dbxc,_0x1944[16],JSON[_0x1944[19]](_0x51dbx11));if(_0x51dbx11[_0x1944[14]]){if(_0x51dbx11[_0x1944[14]][_0x1944[21]]=== 500){logger[_0x1944[14]](_0x1944[13],_0x51dbxc,_0x51dbx11[_0x1944[14]][_0x1944[22]]);return _0x51dbxf(_0x51dbx11[_0x1944[14]][_0x1944[22]])};logger[_0x1944[14]](_0x1944[13],_0x51dbxc,_0x51dbx11[_0x1944[14]][_0x1944[22]]);return _0x51dbxe(_0x51dbx11[_0x1944[14]][_0x1944[22]])}else {logger[_0x1944[17]](_0x1944[13],_0x51dbxc,_0x1944[16]);_0x51dbxe(_0x51dbx11[_0x1944[23]][_0x1944[22]])}})[_0x1944[15]](function(_0x51dbx10){logger[_0x1944[14]](_0x1944[13],_0x51dbxc,_0x51dbx10);_0x51dbxf(_0x51dbx10)})})}
\ No newline at end of file
+var _0xdc0b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xdc0b[0];var _=require(_0xdc0b[1]);var util=require(_0xdc0b[2]);var moment=require(_0xdc0b[3]);var BPromise=require(_0xdc0b[4]);var db=require(_0xdc0b[6])[_0xdc0b[5]];var utils=require(_0xdc0b[7]);var logger=require(_0xdc0b[9])(_0xdc0b[8]);var jayson=require(_0xdc0b[10]);var client=jayson[_0xdc0b[12]][_0xdc0b[11]]({port:9002});function respondWithRpcPromise(_0xe766xb,_0xe766xc,_0xe766xd){return  new BPromise(function(_0xe766xe,_0xe766xf){return client[_0xdc0b[25]](_0xe766xb,_0xe766xd)[_0xdc0b[24]](function(_0xe766x11){logger[_0xdc0b[17]](_0xdc0b[13],_0xe766xc,_0xdc0b[16]);logger[_0xdc0b[20]](_0xdc0b[18],_0xe766xc,_0xdc0b[16],JSON[_0xdc0b[19]](_0xe766x11));if(_0xe766x11[_0xdc0b[14]]){if(_0xe766x11[_0xdc0b[14]][_0xdc0b[21]]=== 500){logger[_0xdc0b[14]](_0xdc0b[13],_0xe766xc,_0xe766x11[_0xdc0b[14]][_0xdc0b[22]]);return _0xe766xf(_0xe766x11[_0xdc0b[14]][_0xdc0b[22]])};logger[_0xdc0b[14]](_0xdc0b[13],_0xe766xc,_0xe766x11[_0xdc0b[14]][_0xdc0b[22]]);return _0xe766xe(_0xe766x11[_0xdc0b[14]][_0xdc0b[22]])}else {logger[_0xdc0b[17]](_0xdc0b[13],_0xe766xc,_0xdc0b[16]);_0xe766xe(_0xe766x11[_0xdc0b[23]][_0xdc0b[22]])}})[_0xdc0b[15]](function(_0xe766x10){logger[_0xdc0b[14]](_0xdc0b[13],_0xe766xc,_0xe766x10);_0xe766xf(_0xe766x10)})})}
\ No newline at end of file
index 3403567..38d9a37 100644 (file)
@@ -1 +1 @@
-var _0xb096=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x63\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb096[0];var multer=require(_0xb096[1]);var util=require(_0xb096[2]);var path=require(_0xb096[3]);var express=require(_0xb096[4]);var router=express.Router();var auth=require(_0xb096[5]);var config=require(_0xb096[6]);var controller=require(_0xb096[7]);router[_0xb096[11]](_0xb096[8],auth[_0xb096[9]](),controller[_0xb096[10]]);router[_0xb096[11]](_0xb096[12],auth[_0xb096[9]](),controller[_0xb096[13]]);router[_0xb096[11]](_0xb096[14],auth[_0xb096[9]](),controller[_0xb096[15]]);router[_0xb096[11]](_0xb096[16],auth[_0xb096[9]](),controller[_0xb096[17]]);router[_0xb096[19]](_0xb096[8],auth[_0xb096[9]](),controller[_0xb096[18]]);router[_0xb096[19]](_0xb096[14],auth[_0xb096[9]](),controller[_0xb096[20]]);router[_0xb096[19]](_0xb096[16],auth[_0xb096[9]](),controller[_0xb096[21]]);router[_0xb096[23]](_0xb096[12],auth[_0xb096[9]](),controller[_0xb096[22]]);router[_0xb096[25]](_0xb096[12],auth[_0xb096[9]](),controller[_0xb096[24]]);module[_0xb096[26]]= router
\ No newline at end of file
+var _0xd447=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x63\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd447[0];var multer=require(_0xd447[1]);var util=require(_0xd447[2]);var path=require(_0xd447[3]);var express=require(_0xd447[4]);var router=express.Router();var auth=require(_0xd447[5]);var config=require(_0xd447[6]);var controller=require(_0xd447[7]);router[_0xd447[11]](_0xd447[8],auth[_0xd447[9]](),controller[_0xd447[10]]);router[_0xd447[11]](_0xd447[12],auth[_0xd447[9]](),controller[_0xd447[13]]);router[_0xd447[11]](_0xd447[14],auth[_0xd447[9]](),controller[_0xd447[15]]);router[_0xd447[11]](_0xd447[16],auth[_0xd447[9]](),controller[_0xd447[17]]);router[_0xd447[19]](_0xd447[8],auth[_0xd447[9]](),controller[_0xd447[18]]);router[_0xd447[19]](_0xd447[14],auth[_0xd447[9]](),controller[_0xd447[20]]);router[_0xd447[19]](_0xd447[16],auth[_0xd447[9]](),controller[_0xd447[21]]);router[_0xd447[23]](_0xd447[12],auth[_0xd447[9]](),controller[_0xd447[22]]);router[_0xd447[25]](_0xd447[12],auth[_0xd447[9]](),controller[_0xd447[24]]);module[_0xd447[26]]= router
\ No newline at end of file
index 5c91fdc..51093ae 100644 (file)
@@ -1 +1 @@
-var _0x98bf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x69\x76\x72","\x42\x4F\x4F\x4C\x45\x41\x4E","\x41\x63\x74\x69\x76\x65\x2F\x44\x69\x73\x61\x63\x74\x69\x76\x65\x20\x43\x61\x6D\x70\x61\x69\x67\x6E","\x55\x4E\x53\x49\x47\x4E\x45\x44","\x4D\x61\x78\x20\x32\x30\x30\x20\x63\x61\x6C\x6C\x73\x2E","\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x20\x54\x69\x6D\x65\x6F\x75\x74\x20\x53\x65\x63\x6F\x6E\x64\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x23\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x42\x75\x73\x79\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x42\x75\x73\x79\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x4E\x6F\x41\x6E\x73\x77\x65\x72\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x4E\x6F\x41\x6E\x73\x77\x65\x72\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x47\x6C\x6F\x62\x61\x6C\x20\x4D\x61\x78\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x30\x37\x3A\x30\x30\x2D\x32\x32\x3A\x30\x30\x2C\x2A\x2C\x2A\x2C\x2A"];_0x98bf[0];var Sequelize=require(_0x98bf[1]);module[_0x98bf[2]]= {name:{type:Sequelize[_0x98bf[3]],unique:_0x98bf[4],allowNull:false,validate:{is:/[A-Za-z0-9._\\+*!-]+/,notEmpty:true}},type:{type:Sequelize.ENUM(_0x98bf[5]),allowNull:false,defaultValue:_0x98bf[5]},description:{type:Sequelize[_0x98bf[3]]},active:{type:Sequelize[_0x98bf[6]],defaultValue:0,comment:_0x98bf[7]},limitCalls:{type:Sequelize.INTEGER(4)[_0x98bf[8]],defaultValue:30,validate:{min:1,max:200},comment:_0x98bf[9]},dialOriginateCallerIdName:{type:Sequelize[_0x98bf[3]]},dialOriginateCallerIdNumber:{type:Sequelize[_0x98bf[3]]},dialOriginateTimeout:{type:Sequelize.INTEGER(3)[_0x98bf[8]],defaultValue:30,validate:{min:1,max:999},comment:_0x98bf[10]},dialCongestionMaxRetry:{type:Sequelize.INTEGER(3)[_0x98bf[8]],defaultValue:3,validate:{min:1,max:999},comment:_0x98bf[11]},dialCongestionRetryFrequency:{type:Sequelize.INTEGER(5)[_0x98bf[8]],validate:{min:1,max:99999},defaultValue:150,comment:_0x98bf[12]},dialBusyMaxRetry:{type:Sequelize.INTEGER(3)[_0x98bf[8]],defaultValue:3,validate:{min:1,max:999},comment:_0x98bf[13]},dialBusyRetryFrequency:{type:Sequelize.INTEGER(5)[_0x98bf[8]],validate:{min:1,max:99999},defaultValue:150,comment:_0x98bf[14]},dialNoAnswerMaxRetry:{type:Sequelize.INTEGER(3)[_0x98bf[8]],defaultValue:3,comment:_0x98bf[15]},dialNoAnswerRetryFrequency:{type:Sequelize.INTEGER(5)[_0x98bf[8]],validate:{min:1,max:99999},defaultValue:150,comment:_0x98bf[16]},dialGlobalMaxRetry:{type:Sequelize.INTEGER(3)[_0x98bf[8]],validate:{min:1,max:999},defaultValue:4,comment:_0x98bf[17]},dialTimezone:{type:Sequelize[_0x98bf[3]],defaultValue:null},dialGlobalInterval:{type:Sequelize[_0x98bf[3]],defaultValue:_0x98bf[18]}}
\ No newline at end of file
+var _0x17b9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x69\x76\x72","\x42\x4F\x4F\x4C\x45\x41\x4E","\x41\x63\x74\x69\x76\x65\x2F\x44\x69\x73\x61\x63\x74\x69\x76\x65\x20\x43\x61\x6D\x70\x61\x69\x67\x6E","\x55\x4E\x53\x49\x47\x4E\x45\x44","\x4D\x61\x78\x20\x32\x30\x30\x20\x63\x61\x6C\x6C\x73\x2E","\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x20\x54\x69\x6D\x65\x6F\x75\x74\x20\x53\x65\x63\x6F\x6E\x64\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x23\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x42\x75\x73\x79\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x42\x75\x73\x79\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x4E\x6F\x41\x6E\x73\x77\x65\x72\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x4E\x6F\x41\x6E\x73\x77\x65\x72\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x47\x6C\x6F\x62\x61\x6C\x20\x4D\x61\x78\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x30\x37\x3A\x30\x30\x2D\x32\x32\x3A\x30\x30\x2C\x2A\x2C\x2A\x2C\x2A"];_0x17b9[0];var Sequelize=require(_0x17b9[1]);module[_0x17b9[2]]= {name:{type:Sequelize[_0x17b9[3]],unique:_0x17b9[4],allowNull:false,validate:{is:/[A-Za-z0-9._\\+*!-]+/,notEmpty:true}},type:{type:Sequelize.ENUM(_0x17b9[5]),allowNull:false,defaultValue:_0x17b9[5]},description:{type:Sequelize[_0x17b9[3]]},active:{type:Sequelize[_0x17b9[6]],defaultValue:0,comment:_0x17b9[7]},limitCalls:{type:Sequelize.INTEGER(4)[_0x17b9[8]],defaultValue:30,validate:{min:1,max:200},comment:_0x17b9[9]},dialOriginateCallerIdName:{type:Sequelize[_0x17b9[3]]},dialOriginateCallerIdNumber:{type:Sequelize[_0x17b9[3]]},dialOriginateTimeout:{type:Sequelize.INTEGER(3)[_0x17b9[8]],defaultValue:30,validate:{min:1,max:999},comment:_0x17b9[10]},dialCongestionMaxRetry:{type:Sequelize.INTEGER(3)[_0x17b9[8]],defaultValue:3,validate:{min:1,max:999},comment:_0x17b9[11]},dialCongestionRetryFrequency:{type:Sequelize.INTEGER(5)[_0x17b9[8]],validate:{min:1,max:99999},defaultValue:150,comment:_0x17b9[12]},dialBusyMaxRetry:{type:Sequelize.INTEGER(3)[_0x17b9[8]],defaultValue:3,validate:{min:1,max:999},comment:_0x17b9[13]},dialBusyRetryFrequency:{type:Sequelize.INTEGER(5)[_0x17b9[8]],validate:{min:1,max:99999},defaultValue:150,comment:_0x17b9[14]},dialNoAnswerMaxRetry:{type:Sequelize.INTEGER(3)[_0x17b9[8]],defaultValue:3,comment:_0x17b9[15]},dialNoAnswerRetryFrequency:{type:Sequelize.INTEGER(5)[_0x17b9[8]],validate:{min:1,max:99999},defaultValue:150,comment:_0x17b9[16]},dialGlobalMaxRetry:{type:Sequelize.INTEGER(3)[_0x17b9[8]],validate:{min:1,max:999},defaultValue:4,comment:_0x17b9[17]},dialTimezone:{type:Sequelize[_0x17b9[3]],defaultValue:null},dialGlobalInterval:{type:Sequelize[_0x17b9[3]],defaultValue:_0x17b9[18]}}
\ No newline at end of file
index f3b055d..74843c0 100644 (file)
@@ -1 +1 @@
-var _0x35e1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x61\x6D\x70\x61\x69\x67\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x61\x6D\x70\x61\x69\x67\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x67\x65\x74\x4C\x69\x73\x74\x73","\x43\x6D\x4C\x69\x73\x74","\x61\x64\x64\x4C\x69\x73\x74\x73","\x67\x65\x74","\x70\x68\x6F\x6E\x65","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x4E\x4F\x54\x20\x45\x58\x49\x53\x54\x53\x20\x28\x3F\x29","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73\x2E\x69\x64\x20\x3D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x2E\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64\x20\x3D\x20\x3F","\x4C\x69\x73\x74\x49\x64\x20\x3D\x20\x3F\x20","\x43\x6D\x4C\x69\x73\x74\x49\x64","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x66\x72\x6F\x6D","\x4E\x55\x4C\x4C","\x66\x69\x65\x6C\x64","\x73\x65\x6C\x65\x63\x74","\x70\x68\x6F\x6E\x65\x20\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C","\x4C\x69\x73\x74\x49\x64\x20\x3D\x20\x3F","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x4E\x4F\x57\x28\x29","\x66\x72\x6F\x6D\x51\x75\x65\x72\x79","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72","\x69\x6E\x74\x6F","\x69\x6E\x73\x65\x72\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x70\x75\x73\x68","\x61\x6C\x6C","\x73\x70\x72\x65\x61\x64","\x69\x64\x73","\x6F\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x73","\x67\x65\x74\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x72\x65\x6D\x6F\x76\x65\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73"];_0x35e1[0];var jsonpatch=require(_0x35e1[1]);var rp=require(_0x35e1[2]);var moment=require(_0x35e1[3]);var BPromise=require(_0x35e1[4]);var util=require(_0x35e1[5]);var path=require(_0x35e1[6]);var sox=require(_0x35e1[7]);var ejs=require(_0x35e1[8]);var fs=require(_0x35e1[9]);var _=require(_0x35e1[10]);var squel=require(_0x35e1[11]);var crypto=require(_0x35e1[12]);var jsforce=require(_0x35e1[13]);var toCsv=require(_0x35e1[14]);var qs=require(_0x35e1[15]);var logger=require(_0x35e1[17])(_0x35e1[16]);var utils=require(_0x35e1[18]);var config=require(_0x35e1[19]);var db=require(_0x35e1[21])[_0x35e1[20]];function respondWithStatusCode(_0xe0e5x15,_0xe0e5x16,_0xe0e5x17){_0xe0e5x16= _0xe0e5x16|| 204;return function(_0xe0e5x18){if(_0xe0e5x18){logger[_0x35e1[24]](_0x35e1[22],_0xe0e5x17,_0xe0e5x16,_0x35e1[23]);logger[_0x35e1[26]](_0x35e1[25],_0xe0e5x17,_0xe0e5x16,_0x35e1[23]);return _0xe0e5x15[_0x35e1[27]](_0xe0e5x16)};return _0xe0e5x15[_0x35e1[29]](304)[_0x35e1[28]]()}}function respondWithResult(_0xe0e5x15,_0xe0e5x16,_0xe0e5x17){_0xe0e5x16= _0xe0e5x16|| 200;return function(_0xe0e5x18){if(_0xe0e5x18){logger[_0x35e1[24]](_0x35e1[22],_0xe0e5x17,_0xe0e5x16,_0x35e1[30]);logger[_0x35e1[26]](_0x35e1[25],_0xe0e5x17,_0xe0e5x16,_0x35e1[30],JSON[_0x35e1[31]](_0xe0e5x18));return _0xe0e5x15[_0x35e1[29]](_0xe0e5x16)[_0x35e1[32]](_0xe0e5x18)};return _0xe0e5x15[_0x35e1[29]](304)[_0x35e1[28]]()}}function respondWithFilteredResult(_0xe0e5x15,_0xe0e5x1b,_0xe0e5x17){return function(_0xe0e5x18){if(_0xe0e5x18){var _0xe0e5x1c=_0xe0e5x18[_0x35e1[33]],_0xe0e5x1d=_0xe0e5x1b[_0x35e1[34]],_0xe0e5x1e=_0xe0e5x1b[_0x35e1[34]]+ _0xe0e5x1b[_0x35e1[35]],_0xe0e5x16;if(_0xe0e5x1e>= _0xe0e5x1c){_0xe0e5x1e= _0xe0e5x1c;_0xe0e5x16= 200}else {_0xe0e5x16= 206};_0xe0e5x15[_0x35e1[29]](_0xe0e5x16);logger[_0x35e1[24]](_0x35e1[22],_0xe0e5x17,_0xe0e5x16,_0x35e1[36]);logger[_0x35e1[26]](_0x35e1[25],_0xe0e5x17,_0xe0e5x16,_0x35e1[30],JSON[_0x35e1[31]](_0xe0e5x18));return _0xe0e5x15[_0x35e1[40]](_0x35e1[37],_0xe0e5x1d+ _0x35e1[38]+ _0xe0e5x1e+ _0x35e1[39]+ _0xe0e5x1c)[_0x35e1[32]](_0xe0e5x18)};return null}}function patchUpdates(_0xe0e5x20){return function(_0xe0e5x18){try{jsonpatch[_0x35e1[41]](_0xe0e5x18,_0xe0e5x20,true)}catch(err){return BPromise[_0x35e1[42]](err)};return _0xe0e5x18[_0x35e1[43]]()}}function saveUpdates(_0xe0e5x22,_0xe0e5x16,_0xe0e5x17){return function(_0xe0e5x18){if(_0xe0e5x18){return _0xe0e5x18[_0x35e1[46]](_0xe0e5x22)[_0x35e1[45]](function(_0xe0e5x23){logger[_0x35e1[24]](_0x35e1[22],_0xe0e5x17,_0xe0e5x16,_0x35e1[44]);logger[_0x35e1[26]](_0x35e1[25],_0xe0e5x17,_0xe0e5x16,_0x35e1[44],JSON[_0x35e1[31]](_0xe0e5x18));return _0xe0e5x23})};return null}}function removeEntity(_0xe0e5x15,_0xe0e5x16,_0xe0e5x17){return function(_0xe0e5x18){if(_0xe0e5x18){return _0xe0e5x18[_0x35e1[48]]()[_0x35e1[45]](function(){logger[_0x35e1[24]](_0x35e1[22],_0xe0e5x17,_0xe0e5x16,_0x35e1[47]);logger[_0x35e1[26]](_0x35e1[25],_0xe0e5x17,_0xe0e5x16,_0x35e1[47],JSON[_0x35e1[31]](_0xe0e5x18));_0xe0e5x15[_0x35e1[29]](204)[_0x35e1[28]]()})}}}function handleEntityNotFound(_0xe0e5x15,_0xe0e5x16,_0xe0e5x17){return function(_0xe0e5x18){if(!_0xe0e5x18){logger[_0x35e1[50]](_0x35e1[22],_0xe0e5x17,404,_0x35e1[49]);_0xe0e5x15[_0x35e1[29]](404)[_0x35e1[28]]();return null};return _0xe0e5x18}}function handleError(_0xe0e5x15,_0xe0e5x16,_0xe0e5x17){_0xe0e5x16= _0xe0e5x16|| 500;return function(_0xe0e5x27){logger[_0x35e1[50]](_0x35e1[22],_0xe0e5x17,_0xe0e5x16,JSON[_0x35e1[31]](_0xe0e5x27));delete _0xe0e5x27[_0x35e1[51]];_0xe0e5x15[_0x35e1[29]](_0xe0e5x16)[_0x35e1[52]](_0xe0e5x27)}}exports[_0x35e1[53]]= function(_0xe0e5x28,_0xe0e5x15){var _0xe0e5x1b={},_0xe0e5x29={};_0xe0e5x29[_0x35e1[54]]= _[_0x35e1[57]](db[_0x35e1[56]][_0x35e1[55]]);_0xe0e5x29[_0x35e1[58]]= _[_0x35e1[57]](_0xe0e5x28[_0x35e1[58]]);_0xe0e5x29[_0x35e1[59]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],_0xe0e5x29[_0x35e1[58]]);_0xe0e5x1b[_0x35e1[61]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],qs[_0x35e1[62]](_0xe0e5x28[_0x35e1[58]][_0x35e1[62]]));_0xe0e5x1b[_0x35e1[61]]= (_0xe0e5x1b[_0x35e1[61]][_0x35e1[63]])?_0xe0e5x1b[_0x35e1[61]]:_0xe0e5x29[_0x35e1[54]];if(!_0xe0e5x28[_0x35e1[58]][_0x35e1[65]](_0x35e1[64])){_0xe0e5x1b[_0x35e1[35]]= qs[_0x35e1[35]](_0xe0e5x28[_0x35e1[58]][_0x35e1[35]]);_0xe0e5x1b[_0x35e1[34]]= qs[_0x35e1[34]](_0xe0e5x28[_0x35e1[58]][_0x35e1[34]])};_0xe0e5x1b[_0x35e1[66]]= qs[_0x35e1[67]](_0xe0e5x28[_0x35e1[58]][_0x35e1[67]]);_0xe0e5x1b[_0x35e1[68]]= qs[_0x35e1[59]](_[_0x35e1[69]](_0xe0e5x28[_0x35e1[58]],_0xe0e5x29[_0x35e1[59]]));if(_0xe0e5x28[_0x35e1[58]][_0x35e1[70]]){_0xe0e5x1b[_0x35e1[68]]= _[_0x35e1[73]](_0xe0e5x1b[_0x35e1[68]],{$or:_[_0x35e1[72]](_0xe0e5x1b[_0x35e1[61]],function(_0xe0e5x2a){var _0xe0e5x2b={};_0xe0e5x2b[_0xe0e5x2a]= {$like:_0x35e1[71]+ _0xe0e5x28[_0x35e1[58]][_0x35e1[70]]+ _0x35e1[71]};return _0xe0e5x2b})})};_0xe0e5x1b= _[_0x35e1[73]]({},_0xe0e5x1b,_0xe0e5x28[_0x35e1[74]]);return db[_0x35e1[56]][_0x35e1[76]](_0xe0e5x1b)[_0x35e1[45]](respondWithFilteredResult(_0xe0e5x15,_0xe0e5x1b,_0x35e1[53]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[53]))};exports[_0x35e1[77]]= function(_0xe0e5x28,_0xe0e5x15){var _0xe0e5x1b={raw:false,where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}},_0xe0e5x29={};_0xe0e5x29[_0x35e1[54]]= _[_0x35e1[57]](db[_0x35e1[56]][_0x35e1[55]]);_0xe0e5x29[_0x35e1[58]]= _[_0x35e1[57]](_0xe0e5x28[_0x35e1[58]]);_0xe0e5x29[_0x35e1[59]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],_0xe0e5x29[_0x35e1[58]]);_0xe0e5x1b[_0x35e1[61]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],qs[_0x35e1[62]](_0xe0e5x28[_0x35e1[58]][_0x35e1[62]]));_0xe0e5x1b[_0x35e1[61]]= (_0xe0e5x1b[_0x35e1[61]][_0x35e1[63]])?_0xe0e5x1b[_0x35e1[61]]:_0xe0e5x29[_0x35e1[54]];_0xe0e5x1b= _[_0x35e1[73]]({},_0xe0e5x1b,_0xe0e5x28[_0x35e1[74]]);return db[_0x35e1[56]][_0x35e1[80]](_0xe0e5x1b)[_0x35e1[45]](handleEntityNotFound(_0xe0e5x15,null,_0x35e1[77]))[_0x35e1[45]](respondWithResult(_0xe0e5x15,null,_0x35e1[77]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[77]))};exports[_0x35e1[81]]= function(_0xe0e5x28,_0xe0e5x15){return db[_0x35e1[56]][_0x35e1[81]](_0xe0e5x28[_0x35e1[82]],{})[_0x35e1[45]](respondWithResult(_0xe0e5x15,201,_0x35e1[81]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[81]))};exports[_0x35e1[46]]= function(_0xe0e5x28,_0xe0e5x15){if(_0xe0e5x28[_0x35e1[82]][_0x35e1[78]]){delete _0xe0e5x28[_0x35e1[82]][_0x35e1[78]]};return db[_0x35e1[56]][_0x35e1[80]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x15,null,_0x35e1[46]))[_0x35e1[45]](saveUpdates(_0xe0e5x28[_0x35e1[82]],null,_0x35e1[46]))[_0x35e1[45]](respondWithResult(_0xe0e5x15,null,_0x35e1[46]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[46]))};exports[_0x35e1[48]]= function(_0xe0e5x28,_0xe0e5x15){return db[_0x35e1[56]][_0x35e1[80]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x15,null,_0x35e1[48]))[_0x35e1[45]](removeEntity(_0xe0e5x15,null,_0x35e1[48]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[48]))};exports[_0x35e1[83]]= function(_0xe0e5x28,_0xe0e5x18,_0xe0e5x2c){var _0xe0e5x1b={};var _0xe0e5x29={};var _0xe0e5x2d;var _0xe0e5x1c;return db[_0x35e1[56]][_0x35e1[85]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x18,null,_0x35e1[83]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){_0xe0e5x2d= _0xe0e5x18;_0xe0e5x29[_0x35e1[54]]= _[_0x35e1[57]](db[_0x35e1[84]][_0x35e1[55]]);_0xe0e5x29[_0x35e1[58]]= _[_0x35e1[57]](_0xe0e5x28[_0x35e1[58]]);_0xe0e5x29[_0x35e1[59]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],_0xe0e5x29[_0x35e1[58]]);_0xe0e5x1b[_0x35e1[61]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],qs[_0x35e1[62]](_0xe0e5x28[_0x35e1[58]][_0x35e1[62]]));_0xe0e5x1b[_0x35e1[61]]= (_0xe0e5x1b[_0x35e1[61]][_0x35e1[63]])?_0xe0e5x1b[_0x35e1[61]]:_0xe0e5x29[_0x35e1[54]];_0xe0e5x1b[_0x35e1[66]]= qs[_0x35e1[67]](_0xe0e5x28[_0x35e1[58]][_0x35e1[67]]);_0xe0e5x1b[_0x35e1[68]]= qs[_0x35e1[59]](_[_0x35e1[69]](_0xe0e5x28[_0x35e1[58]],_0xe0e5x29[_0x35e1[59]]));if(_0xe0e5x28[_0x35e1[58]][_0x35e1[70]]){_0xe0e5x1b[_0x35e1[68]]= _[_0x35e1[73]](_0xe0e5x1b[_0x35e1[68]],{$or:_[_0x35e1[72]](_0xe0e5x1b[_0x35e1[61]],function(_0xe0e5x2a){var _0xe0e5x2b={};_0xe0e5x2b[_0xe0e5x2a]= {$like:_0x35e1[71]+ _0xe0e5x28[_0x35e1[58]][_0x35e1[70]]+ _0x35e1[71]};return _0xe0e5x2b})})};_0xe0e5x1b= _[_0x35e1[73]]({},_0xe0e5x1b,_0xe0e5x28[_0x35e1[74]]);return _0xe0e5x2d[_0x35e1[83]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2f){if(_0xe0e5x2f){_0xe0e5x1c= _0xe0e5x2f[_0x35e1[63]];if(!_0xe0e5x28[_0x35e1[58]][_0x35e1[65]](_0x35e1[64])){_0xe0e5x1b[_0x35e1[35]]= qs[_0x35e1[35]](_0xe0e5x28[_0x35e1[58]][_0x35e1[35]]);_0xe0e5x1b[_0x35e1[34]]= qs[_0x35e1[34]](_0xe0e5x28[_0x35e1[58]][_0x35e1[34]])};return _0xe0e5x2d[_0x35e1[83]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2e){return _0xe0e5x2e?{count:_0xe0e5x1c,rows:_0xe0e5x2e}:null})[_0x35e1[45]](respondWithResult(_0xe0e5x18,null,_0x35e1[83]))[_0x35e1[75]](handleError(_0xe0e5x18,null,_0x35e1[83]))};exports[_0x35e1[86]]= function(_0xe0e5x28,_0xe0e5x18,_0xe0e5x2c){var _0xe0e5x1b={};var _0xe0e5x29={};var _0xe0e5x2d;var _0xe0e5x1c;return db[_0x35e1[56]][_0x35e1[85]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x18,null,_0x35e1[86]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){_0xe0e5x2d= _0xe0e5x18;_0xe0e5x29[_0x35e1[54]]= _[_0x35e1[57]](db[_0x35e1[87]][_0x35e1[55]]);_0xe0e5x29[_0x35e1[58]]= _[_0x35e1[57]](_0xe0e5x28[_0x35e1[58]]);_0xe0e5x29[_0x35e1[59]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],_0xe0e5x29[_0x35e1[58]]);_0xe0e5x1b[_0x35e1[61]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],qs[_0x35e1[62]](_0xe0e5x28[_0x35e1[58]][_0x35e1[62]]));_0xe0e5x1b[_0x35e1[61]]= (_0xe0e5x1b[_0x35e1[61]][_0x35e1[63]])?_0xe0e5x1b[_0x35e1[61]]:_0xe0e5x29[_0x35e1[54]];_0xe0e5x1b[_0x35e1[66]]= qs[_0x35e1[67]](_0xe0e5x28[_0x35e1[58]][_0x35e1[67]]);_0xe0e5x1b[_0x35e1[68]]= qs[_0x35e1[59]](_[_0x35e1[69]](_0xe0e5x28[_0x35e1[58]],_0xe0e5x29[_0x35e1[59]]));if(_0xe0e5x28[_0x35e1[58]][_0x35e1[70]]){_0xe0e5x1b[_0x35e1[68]]= _[_0x35e1[73]](_0xe0e5x1b[_0x35e1[68]],{$or:_[_0x35e1[72]](_0xe0e5x1b[_0x35e1[61]],function(_0xe0e5x2a){var _0xe0e5x2b={};_0xe0e5x2b[_0xe0e5x2a]= {$like:_0x35e1[71]+ _0xe0e5x28[_0x35e1[58]][_0x35e1[70]]+ _0x35e1[71]};return _0xe0e5x2b})})};_0xe0e5x1b= _[_0x35e1[73]]({},_0xe0e5x1b,_0xe0e5x28[_0x35e1[74]]);return _0xe0e5x2d[_0x35e1[86]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2f){if(_0xe0e5x2f){_0xe0e5x1c= _0xe0e5x2f[_0x35e1[63]];if(!_0xe0e5x28[_0x35e1[58]][_0x35e1[65]](_0x35e1[64])){_0xe0e5x1b[_0x35e1[35]]= qs[_0x35e1[35]](_0xe0e5x28[_0x35e1[58]][_0x35e1[35]]);_0xe0e5x1b[_0x35e1[34]]= qs[_0x35e1[34]](_0xe0e5x28[_0x35e1[58]][_0x35e1[34]])};return _0xe0e5x2d[_0x35e1[86]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2e){return _0xe0e5x2e?{count:_0xe0e5x1c,rows:_0xe0e5x2e}:null})[_0x35e1[45]](respondWithResult(_0xe0e5x18,null,_0x35e1[86]))[_0x35e1[75]](handleError(_0xe0e5x18,null,_0x35e1[86]))};exports[_0x35e1[88]]= function(_0xe0e5x28,_0xe0e5x18,_0xe0e5x2c){var _0xe0e5x1b={};var _0xe0e5x29={};var _0xe0e5x2d;var _0xe0e5x1c;return db[_0x35e1[56]][_0x35e1[85]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x18,null,_0x35e1[88]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){_0xe0e5x2d= _0xe0e5x18;_0xe0e5x29[_0x35e1[54]]= _[_0x35e1[57]](db[_0x35e1[89]][_0x35e1[55]]);_0xe0e5x29[_0x35e1[58]]= _[_0x35e1[57]](_0xe0e5x28[_0x35e1[58]]);_0xe0e5x29[_0x35e1[59]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],_0xe0e5x29[_0x35e1[58]]);_0xe0e5x1b[_0x35e1[61]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],qs[_0x35e1[62]](_0xe0e5x28[_0x35e1[58]][_0x35e1[62]]));_0xe0e5x1b[_0x35e1[61]]= (_0xe0e5x1b[_0x35e1[61]][_0x35e1[63]])?_0xe0e5x1b[_0x35e1[61]]:_0xe0e5x29[_0x35e1[54]];_0xe0e5x1b[_0x35e1[66]]= qs[_0x35e1[67]](_0xe0e5x28[_0x35e1[58]][_0x35e1[67]]);_0xe0e5x1b[_0x35e1[68]]= qs[_0x35e1[59]](_[_0x35e1[69]](_0xe0e5x28[_0x35e1[58]],_0xe0e5x29[_0x35e1[59]]));if(_0xe0e5x28[_0x35e1[58]][_0x35e1[70]]){_0xe0e5x1b[_0x35e1[68]]= _[_0x35e1[73]](_0xe0e5x1b[_0x35e1[68]],{$or:_[_0x35e1[72]](_0xe0e5x1b[_0x35e1[61]],function(_0xe0e5x2a){var _0xe0e5x2b={};_0xe0e5x2b[_0xe0e5x2a]= {$like:_0x35e1[71]+ _0xe0e5x28[_0x35e1[58]][_0x35e1[70]]+ _0x35e1[71]};return _0xe0e5x2b})})};_0xe0e5x1b= _[_0x35e1[73]]({},_0xe0e5x1b,_0xe0e5x28[_0x35e1[74]]);return _0xe0e5x2d[_0x35e1[88]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2f){if(_0xe0e5x2f){_0xe0e5x1c= _0xe0e5x2f[_0x35e1[63]];if(!_0xe0e5x28[_0x35e1[58]][_0x35e1[65]](_0x35e1[64])){_0xe0e5x1b[_0x35e1[35]]= qs[_0x35e1[35]](_0xe0e5x28[_0x35e1[58]][_0x35e1[35]]);_0xe0e5x1b[_0x35e1[34]]= qs[_0x35e1[34]](_0xe0e5x28[_0x35e1[58]][_0x35e1[34]])};return _0xe0e5x2d[_0x35e1[88]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2e){return _0xe0e5x2e?{count:_0xe0e5x1c,rows:_0xe0e5x2e}:null})[_0x35e1[45]](respondWithResult(_0xe0e5x18,null,_0x35e1[88]))[_0x35e1[75]](handleError(_0xe0e5x18,null,_0x35e1[88]))};exports[_0x35e1[90]]= function(_0xe0e5x28,_0xe0e5x18,_0xe0e5x2c){var _0xe0e5x1b={};var _0xe0e5x29={};var _0xe0e5x2d;var _0xe0e5x1c;return db[_0x35e1[56]][_0x35e1[85]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x18,null,_0x35e1[90]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){_0xe0e5x2d= _0xe0e5x18;_0xe0e5x29[_0x35e1[54]]= _[_0x35e1[57]](db[_0x35e1[91]][_0x35e1[55]]);_0xe0e5x29[_0x35e1[58]]= _[_0x35e1[57]](_0xe0e5x28[_0x35e1[58]]);_0xe0e5x29[_0x35e1[59]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],_0xe0e5x29[_0x35e1[58]]);_0xe0e5x1b[_0x35e1[61]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],qs[_0x35e1[62]](_0xe0e5x28[_0x35e1[58]][_0x35e1[62]]));_0xe0e5x1b[_0x35e1[61]]= (_0xe0e5x1b[_0x35e1[61]][_0x35e1[63]])?_0xe0e5x1b[_0x35e1[61]]:_0xe0e5x29[_0x35e1[54]];_0xe0e5x1b[_0x35e1[66]]= qs[_0x35e1[67]](_0xe0e5x28[_0x35e1[58]][_0x35e1[67]]);_0xe0e5x1b[_0x35e1[68]]= qs[_0x35e1[59]](_[_0x35e1[69]](_0xe0e5x28[_0x35e1[58]],_0xe0e5x29[_0x35e1[59]]));if(_0xe0e5x28[_0x35e1[58]][_0x35e1[70]]){_0xe0e5x1b[_0x35e1[68]]= _[_0x35e1[73]](_0xe0e5x1b[_0x35e1[68]],{$or:_[_0x35e1[72]](_0xe0e5x1b[_0x35e1[61]],function(_0xe0e5x2a){var _0xe0e5x2b={};_0xe0e5x2b[_0xe0e5x2a]= {$like:_0x35e1[71]+ _0xe0e5x28[_0x35e1[58]][_0x35e1[70]]+ _0x35e1[71]};return _0xe0e5x2b})})};_0xe0e5x1b= _[_0x35e1[73]]({},_0xe0e5x1b,_0xe0e5x28[_0x35e1[74]]);return _0xe0e5x2d[_0x35e1[90]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2f){if(_0xe0e5x2f){_0xe0e5x1c= _0xe0e5x2f[_0x35e1[63]];if(!_0xe0e5x28[_0x35e1[58]][_0x35e1[65]](_0x35e1[64])){_0xe0e5x1b[_0x35e1[35]]= qs[_0x35e1[35]](_0xe0e5x28[_0x35e1[58]][_0x35e1[35]]);_0xe0e5x1b[_0x35e1[34]]= qs[_0x35e1[34]](_0xe0e5x28[_0x35e1[58]][_0x35e1[34]])};return _0xe0e5x2d[_0x35e1[90]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2e){return _0xe0e5x2e?{count:_0xe0e5x1c,rows:_0xe0e5x2e}:null})[_0x35e1[45]](respondWithResult(_0xe0e5x18,null,_0x35e1[90]))[_0x35e1[75]](handleError(_0xe0e5x18,null,_0x35e1[90]))};exports[_0x35e1[92]]= function(_0xe0e5x28,_0xe0e5x18,_0xe0e5x2c){var _0xe0e5x1b={};var _0xe0e5x29={};var _0xe0e5x2d;var _0xe0e5x1c;return db[_0x35e1[56]][_0x35e1[85]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x18,null,_0x35e1[92]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){_0xe0e5x2d= _0xe0e5x18;_0xe0e5x29[_0x35e1[54]]= _[_0x35e1[57]](db[_0x35e1[93]][_0x35e1[55]]);_0xe0e5x29[_0x35e1[58]]= _[_0x35e1[57]](_0xe0e5x28[_0x35e1[58]]);_0xe0e5x29[_0x35e1[59]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],_0xe0e5x29[_0x35e1[58]]);_0xe0e5x1b[_0x35e1[61]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],qs[_0x35e1[62]](_0xe0e5x28[_0x35e1[58]][_0x35e1[62]]));_0xe0e5x1b[_0x35e1[61]]= (_0xe0e5x1b[_0x35e1[61]][_0x35e1[63]])?_0xe0e5x1b[_0x35e1[61]]:_0xe0e5x29[_0x35e1[54]];_0xe0e5x1b[_0x35e1[66]]= qs[_0x35e1[67]](_0xe0e5x28[_0x35e1[58]][_0x35e1[67]]);_0xe0e5x1b[_0x35e1[68]]= qs[_0x35e1[59]](_[_0x35e1[69]](_0xe0e5x28[_0x35e1[58]],_0xe0e5x29[_0x35e1[59]]));if(_0xe0e5x28[_0x35e1[58]][_0x35e1[70]]){_0xe0e5x1b[_0x35e1[68]]= _[_0x35e1[73]](_0xe0e5x1b[_0x35e1[68]],{$or:_[_0x35e1[72]](_0xe0e5x1b[_0x35e1[61]],function(_0xe0e5x2a){var _0xe0e5x2b={};_0xe0e5x2b[_0xe0e5x2a]= {$like:_0x35e1[71]+ _0xe0e5x28[_0x35e1[58]][_0x35e1[70]]+ _0x35e1[71]};return _0xe0e5x2b})})};_0xe0e5x1b= _[_0x35e1[73]]({},_0xe0e5x1b,_0xe0e5x28[_0x35e1[74]]);return _0xe0e5x2d[_0x35e1[92]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2f){if(_0xe0e5x2f){_0xe0e5x1c= _0xe0e5x2f[_0x35e1[63]];if(!_0xe0e5x28[_0x35e1[58]][_0x35e1[65]](_0x35e1[64])){_0xe0e5x1b[_0x35e1[35]]= qs[_0x35e1[35]](_0xe0e5x28[_0x35e1[58]][_0x35e1[35]]);_0xe0e5x1b[_0x35e1[34]]= qs[_0x35e1[34]](_0xe0e5x28[_0x35e1[58]][_0x35e1[34]])};return _0xe0e5x2d[_0x35e1[92]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2e){return _0xe0e5x2e?{count:_0xe0e5x1c,rows:_0xe0e5x2e}:null})[_0x35e1[45]](respondWithResult(_0xe0e5x18,null,_0x35e1[92]))[_0x35e1[75]](handleError(_0xe0e5x18,null,_0x35e1[92]))};exports[_0x35e1[94]]= function(_0xe0e5x28,_0xe0e5x15,_0xe0e5x2c){var _0xe0e5x30;return db[_0x35e1[56]][_0x35e1[80]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x15,null,_0x35e1[94]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){return _0xe0e5x18[_0x35e1[94]](_0xe0e5x28[_0x35e1[82]][_0x35e1[125]],_[_0x35e1[126]](_0xe0e5x28[_0x35e1[82]],[_0x35e1[125],_0x35e1[78]])|| {})};return null})[_0x35e1[124]](function(_0xe0e5x31){_0xe0e5x30= _0xe0e5x31|| [];var _0xe0e5x32=[];if(_0xe0e5x31){for(var _0xe0e5x33=0;_0xe0e5x33< _0xe0e5x31[_0x35e1[63]];_0xe0e5x33++){var _0xe0e5x34=_0xe0e5x31[_0xe0e5x33][_0x35e1[95]]({plain:true});var _0xe0e5x35=squel[_0x35e1[120]]()[_0x35e1[119]](_0x35e1[118])[_0x35e1[117]]([_0x35e1[96],_0x35e1[97],_0x35e1[98],_0x35e1[99],_0x35e1[100],_0x35e1[101],_0x35e1[102]],squel[_0x35e1[112]]()[_0x35e1[111]](_0x35e1[96])[_0x35e1[111]](_0x35e1[116],_0x35e1[97])[_0x35e1[111]](_0x35e1[78])[_0x35e1[111]](_0xe0e5x34[_0x35e1[107]].toString())[_0x35e1[111]](_0xe0e5x28[_0x35e1[79]][_0x35e1[78]])[_0x35e1[111]](_0x35e1[116],_0x35e1[101])[_0x35e1[111]](_0x35e1[116],_0x35e1[102])[_0x35e1[109]](_0x35e1[115])[_0x35e1[68]](_0x35e1[114],_0xe0e5x34[_0x35e1[107]].toString())[_0x35e1[68]](_0x35e1[113])[_0x35e1[68]](_0x35e1[103],squel[_0x35e1[112]]()[_0x35e1[111]](_0x35e1[110])[_0x35e1[109]](_0x35e1[108])[_0x35e1[68]](_0x35e1[106],_0xe0e5x34[_0x35e1[107]].toString())[_0x35e1[68]](_0x35e1[105],_0xe0e5x28[_0x35e1[79]][_0x35e1[78]].toString())[_0x35e1[68]](_0x35e1[104]))).toString();_0xe0e5x32[_0x35e1[122]](db[_0x35e1[121]][_0x35e1[58]](_0xe0e5x35))};return BPromise[_0x35e1[123]](_0xe0e5x32)}})[_0x35e1[45]](function(){return _0xe0e5x30})[_0x35e1[45]](respondWithResult(_0xe0e5x15,null,_0x35e1[94]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[94]))};exports[_0x35e1[127]]= function(_0xe0e5x28,_0xe0e5x15,_0xe0e5x2c){var _0xe0e5x2f;return db[_0x35e1[56]][_0x35e1[80]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x15,null,_0x35e1[127]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){return _0xe0e5x18[_0x35e1[127]](_0xe0e5x28[_0x35e1[58]][_0x35e1[125]])}})[_0x35e1[45]](function(_0xe0e5x31){if(_0xe0e5x31){_0xe0e5x2f= _0xe0e5x31;return db[_0x35e1[84]][_0x35e1[48]]({where:{ListId:_0xe0e5x28[_0x35e1[58]][_0x35e1[125]],CampaignId:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](function(){return _0xe0e5x2f})}})[_0x35e1[45]](respondWithStatusCode(_0xe0e5x15,null,_0x35e1[127]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[127]))};exports[_0x35e1[128]]= function(_0xe0e5x28,_0xe0e5x18,_0xe0e5x2c){var _0xe0e5x1b={};var _0xe0e5x29={};var _0xe0e5x2d;var _0xe0e5x1c;return db[_0x35e1[56]][_0x35e1[85]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x18,null,_0x35e1[128]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){_0xe0e5x2d= _0xe0e5x18;_0xe0e5x29[_0x35e1[54]]= _[_0x35e1[57]](db[_0x35e1[93]][_0x35e1[55]]);_0xe0e5x29[_0x35e1[58]]= _[_0x35e1[57]](_0xe0e5x28[_0x35e1[58]]);_0xe0e5x29[_0x35e1[59]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],_0xe0e5x29[_0x35e1[58]]);_0xe0e5x1b[_0x35e1[61]]= _[_0x35e1[60]](_0xe0e5x29[_0x35e1[54]],qs[_0x35e1[62]](_0xe0e5x28[_0x35e1[58]][_0x35e1[62]]));_0xe0e5x1b[_0x35e1[61]]= (_0xe0e5x1b[_0x35e1[61]][_0x35e1[63]])?_0xe0e5x1b[_0x35e1[61]]:_0xe0e5x29[_0x35e1[54]];_0xe0e5x1b[_0x35e1[66]]= qs[_0x35e1[67]](_0xe0e5x28[_0x35e1[58]][_0x35e1[67]]);_0xe0e5x1b[_0x35e1[68]]= qs[_0x35e1[59]](_[_0x35e1[69]](_0xe0e5x28[_0x35e1[58]],_0xe0e5x29[_0x35e1[59]]));if(_0xe0e5x28[_0x35e1[58]][_0x35e1[70]]){_0xe0e5x1b[_0x35e1[68]]= _[_0x35e1[73]](_0xe0e5x1b[_0x35e1[68]],{$or:_[_0x35e1[72]](_0xe0e5x1b[_0x35e1[61]],function(_0xe0e5x2a){var _0xe0e5x2b={};_0xe0e5x2b[_0xe0e5x2a]= {$like:_0x35e1[71]+ _0xe0e5x28[_0x35e1[58]][_0x35e1[70]]+ _0x35e1[71]};return _0xe0e5x2b})})};_0xe0e5x1b= _[_0x35e1[73]]({},_0xe0e5x1b,_0xe0e5x28[_0x35e1[74]]);return _0xe0e5x2d[_0x35e1[128]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2f){if(_0xe0e5x2f){_0xe0e5x1c= _0xe0e5x2f[_0x35e1[63]];if(!_0xe0e5x28[_0x35e1[58]][_0x35e1[65]](_0x35e1[64])){_0xe0e5x1b[_0x35e1[35]]= qs[_0x35e1[35]](_0xe0e5x28[_0x35e1[58]][_0x35e1[35]]);_0xe0e5x1b[_0x35e1[34]]= qs[_0x35e1[34]](_0xe0e5x28[_0x35e1[58]][_0x35e1[34]])};return _0xe0e5x2d[_0x35e1[128]](_0xe0e5x1b)}})[_0x35e1[45]](function(_0xe0e5x2e){return _0xe0e5x2e?{count:_0xe0e5x1c,rows:_0xe0e5x2e}:null})[_0x35e1[45]](respondWithResult(_0xe0e5x18,null,_0x35e1[128]))[_0x35e1[75]](handleError(_0xe0e5x18,null,_0x35e1[128]))};exports[_0x35e1[129]]= function(_0xe0e5x28,_0xe0e5x15,_0xe0e5x2c){var _0xe0e5x30;return db[_0x35e1[56]][_0x35e1[80]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x15,null,_0x35e1[129]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){return _0xe0e5x18[_0x35e1[129]](_0xe0e5x28[_0x35e1[82]][_0x35e1[125]],_[_0x35e1[126]](_0xe0e5x28[_0x35e1[82]],[_0x35e1[125],_0x35e1[78]])|| {})};return null})[_0x35e1[124]](function(_0xe0e5x31){_0xe0e5x30= _0xe0e5x31|| [];var _0xe0e5x32=[];if(_0xe0e5x31){for(var _0xe0e5x33=0;_0xe0e5x33< _0xe0e5x31[_0x35e1[63]];_0xe0e5x33++){var _0xe0e5x34=_0xe0e5x31[_0xe0e5x33][_0x35e1[95]]({plain:true});var _0xe0e5x35=squel[_0x35e1[120]]()[_0x35e1[119]](_0x35e1[130])[_0x35e1[117]]([_0x35e1[96],_0x35e1[98],_0x35e1[99],_0x35e1[100],_0x35e1[101],_0x35e1[102]],squel[_0x35e1[112]]()[_0x35e1[111]](_0x35e1[96])[_0x35e1[111]](_0x35e1[78])[_0x35e1[111]](_0xe0e5x34[_0x35e1[107]].toString())[_0x35e1[111]](_0xe0e5x28[_0x35e1[79]][_0x35e1[78]])[_0x35e1[111]](_0x35e1[116],_0x35e1[101])[_0x35e1[111]](_0x35e1[116],_0x35e1[102])[_0x35e1[109]](_0x35e1[115])[_0x35e1[68]](_0x35e1[114],_0xe0e5x34[_0x35e1[107]].toString())[_0x35e1[68]](_0x35e1[113])).toString();_0xe0e5x32[_0x35e1[122]](db[_0x35e1[121]][_0x35e1[58]](_0xe0e5x35))};return BPromise[_0x35e1[123]](_0xe0e5x32)}})[_0x35e1[45]](function(){return _0xe0e5x30})[_0x35e1[45]](respondWithResult(_0xe0e5x15,null,_0x35e1[129]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[129]))};exports[_0x35e1[131]]= function(_0xe0e5x28,_0xe0e5x15,_0xe0e5x2c){var _0xe0e5x2f;return db[_0x35e1[56]][_0x35e1[80]]({where:{id:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](handleEntityNotFound(_0xe0e5x15,null,_0x35e1[131]))[_0x35e1[45]](function(_0xe0e5x18){if(_0xe0e5x18){return _0xe0e5x18[_0x35e1[131]](_0xe0e5x28[_0x35e1[58]][_0x35e1[125]])}})[_0x35e1[45]](function(_0xe0e5x31){if(_0xe0e5x31){_0xe0e5x2f= _0xe0e5x31;return db[_0x35e1[91]][_0x35e1[48]]({where:{ListId:_0xe0e5x28[_0x35e1[58]][_0x35e1[125]],CampaignId:_0xe0e5x28[_0x35e1[79]][_0x35e1[78]]}})[_0x35e1[45]](function(){return _0xe0e5x2f})}})[_0x35e1[45]](respondWithStatusCode(_0xe0e5x15,null,_0x35e1[131]))[_0x35e1[75]](handleError(_0xe0e5x15,null,_0x35e1[131]))}
\ No newline at end of file
+var _0x85fc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x61\x6D\x70\x61\x69\x67\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x61\x6D\x70\x61\x69\x67\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x67\x65\x74\x4C\x69\x73\x74\x73","\x43\x6D\x4C\x69\x73\x74","\x61\x64\x64\x4C\x69\x73\x74\x73","\x67\x65\x74","\x70\x68\x6F\x6E\x65","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x4E\x4F\x54\x20\x45\x58\x49\x53\x54\x53\x20\x28\x3F\x29","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73\x2E\x69\x64\x20\x3D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x2E\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64\x20\x3D\x20\x3F","\x4C\x69\x73\x74\x49\x64\x20\x3D\x20\x3F\x20","\x43\x6D\x4C\x69\x73\x74\x49\x64","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x66\x72\x6F\x6D","\x4E\x55\x4C\x4C","\x66\x69\x65\x6C\x64","\x73\x65\x6C\x65\x63\x74","\x70\x68\x6F\x6E\x65\x20\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C","\x4C\x69\x73\x74\x49\x64\x20\x3D\x20\x3F","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x4E\x4F\x57\x28\x29","\x66\x72\x6F\x6D\x51\x75\x65\x72\x79","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72","\x69\x6E\x74\x6F","\x69\x6E\x73\x65\x72\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x70\x75\x73\x68","\x61\x6C\x6C","\x73\x70\x72\x65\x61\x64","\x69\x64\x73","\x6F\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x73","\x67\x65\x74\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x72\x65\x6D\x6F\x76\x65\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73"];_0x85fc[0];var jsonpatch=require(_0x85fc[1]);var rp=require(_0x85fc[2]);var moment=require(_0x85fc[3]);var BPromise=require(_0x85fc[4]);var util=require(_0x85fc[5]);var path=require(_0x85fc[6]);var sox=require(_0x85fc[7]);var ejs=require(_0x85fc[8]);var fs=require(_0x85fc[9]);var _=require(_0x85fc[10]);var squel=require(_0x85fc[11]);var crypto=require(_0x85fc[12]);var jsforce=require(_0x85fc[13]);var toCsv=require(_0x85fc[14]);var qs=require(_0x85fc[15]);var logger=require(_0x85fc[17])(_0x85fc[16]);var utils=require(_0x85fc[18]);var config=require(_0x85fc[19]);var db=require(_0x85fc[21])[_0x85fc[20]];function respondWithStatusCode(_0xebedx15,_0xebedx16,_0xebedx17){_0xebedx16= _0xebedx16|| 204;return function(_0xebedx18){if(_0xebedx18){logger[_0x85fc[24]](_0x85fc[22],_0xebedx17,_0xebedx16,_0x85fc[23]);logger[_0x85fc[26]](_0x85fc[25],_0xebedx17,_0xebedx16,_0x85fc[23]);return _0xebedx15[_0x85fc[27]](_0xebedx16)};return _0xebedx15[_0x85fc[29]](304)[_0x85fc[28]]()}}function respondWithResult(_0xebedx15,_0xebedx16,_0xebedx17){_0xebedx16= _0xebedx16|| 200;return function(_0xebedx18){if(_0xebedx18){logger[_0x85fc[24]](_0x85fc[22],_0xebedx17,_0xebedx16,_0x85fc[30]);logger[_0x85fc[26]](_0x85fc[25],_0xebedx17,_0xebedx16,_0x85fc[30],JSON[_0x85fc[31]](_0xebedx18));return _0xebedx15[_0x85fc[29]](_0xebedx16)[_0x85fc[32]](_0xebedx18)};return _0xebedx15[_0x85fc[29]](304)[_0x85fc[28]]()}}function respondWithFilteredResult(_0xebedx15,_0xebedx1b,_0xebedx17){return function(_0xebedx18){if(_0xebedx18){var _0xebedx1c=_0xebedx18[_0x85fc[33]],_0xebedx1d=_0xebedx1b[_0x85fc[34]],_0xebedx1e=_0xebedx1b[_0x85fc[34]]+ _0xebedx1b[_0x85fc[35]],_0xebedx16;if(_0xebedx1e>= _0xebedx1c){_0xebedx1e= _0xebedx1c;_0xebedx16= 200}else {_0xebedx16= 206};_0xebedx15[_0x85fc[29]](_0xebedx16);logger[_0x85fc[24]](_0x85fc[22],_0xebedx17,_0xebedx16,_0x85fc[36]);logger[_0x85fc[26]](_0x85fc[25],_0xebedx17,_0xebedx16,_0x85fc[30],JSON[_0x85fc[31]](_0xebedx18));return _0xebedx15[_0x85fc[40]](_0x85fc[37],_0xebedx1d+ _0x85fc[38]+ _0xebedx1e+ _0x85fc[39]+ _0xebedx1c)[_0x85fc[32]](_0xebedx18)};return null}}function patchUpdates(_0xebedx20){return function(_0xebedx18){try{jsonpatch[_0x85fc[41]](_0xebedx18,_0xebedx20,true)}catch(err){return BPromise[_0x85fc[42]](err)};return _0xebedx18[_0x85fc[43]]()}}function saveUpdates(_0xebedx22,_0xebedx16,_0xebedx17){return function(_0xebedx18){if(_0xebedx18){return _0xebedx18[_0x85fc[46]](_0xebedx22)[_0x85fc[45]](function(_0xebedx23){logger[_0x85fc[24]](_0x85fc[22],_0xebedx17,_0xebedx16,_0x85fc[44]);logger[_0x85fc[26]](_0x85fc[25],_0xebedx17,_0xebedx16,_0x85fc[44],JSON[_0x85fc[31]](_0xebedx18));return _0xebedx23})};return null}}function removeEntity(_0xebedx15,_0xebedx16,_0xebedx17){return function(_0xebedx18){if(_0xebedx18){return _0xebedx18[_0x85fc[48]]()[_0x85fc[45]](function(){logger[_0x85fc[24]](_0x85fc[22],_0xebedx17,_0xebedx16,_0x85fc[47]);logger[_0x85fc[26]](_0x85fc[25],_0xebedx17,_0xebedx16,_0x85fc[47],JSON[_0x85fc[31]](_0xebedx18));_0xebedx15[_0x85fc[29]](204)[_0x85fc[28]]()})}}}function handleEntityNotFound(_0xebedx15,_0xebedx16,_0xebedx17){return function(_0xebedx18){if(!_0xebedx18){logger[_0x85fc[50]](_0x85fc[22],_0xebedx17,404,_0x85fc[49]);_0xebedx15[_0x85fc[29]](404)[_0x85fc[28]]();return null};return _0xebedx18}}function handleError(_0xebedx15,_0xebedx16,_0xebedx17){_0xebedx16= _0xebedx16|| 500;return function(_0xebedx27){logger[_0x85fc[50]](_0x85fc[22],_0xebedx17,_0xebedx16,JSON[_0x85fc[31]](_0xebedx27));delete _0xebedx27[_0x85fc[51]];_0xebedx15[_0x85fc[29]](_0xebedx16)[_0x85fc[52]](_0xebedx27)}}exports[_0x85fc[53]]= function(_0xebedx28,_0xebedx15){var _0xebedx1b={},_0xebedx29={};_0xebedx29[_0x85fc[54]]= _[_0x85fc[57]](db[_0x85fc[56]][_0x85fc[55]]);_0xebedx29[_0x85fc[58]]= _[_0x85fc[57]](_0xebedx28[_0x85fc[58]]);_0xebedx29[_0x85fc[59]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],_0xebedx29[_0x85fc[58]]);_0xebedx1b[_0x85fc[61]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],qs[_0x85fc[62]](_0xebedx28[_0x85fc[58]][_0x85fc[62]]));_0xebedx1b[_0x85fc[61]]= (_0xebedx1b[_0x85fc[61]][_0x85fc[63]])?_0xebedx1b[_0x85fc[61]]:_0xebedx29[_0x85fc[54]];if(!_0xebedx28[_0x85fc[58]][_0x85fc[65]](_0x85fc[64])){_0xebedx1b[_0x85fc[35]]= qs[_0x85fc[35]](_0xebedx28[_0x85fc[58]][_0x85fc[35]]);_0xebedx1b[_0x85fc[34]]= qs[_0x85fc[34]](_0xebedx28[_0x85fc[58]][_0x85fc[34]])};_0xebedx1b[_0x85fc[66]]= qs[_0x85fc[67]](_0xebedx28[_0x85fc[58]][_0x85fc[67]]);_0xebedx1b[_0x85fc[68]]= qs[_0x85fc[59]](_[_0x85fc[69]](_0xebedx28[_0x85fc[58]],_0xebedx29[_0x85fc[59]]));if(_0xebedx28[_0x85fc[58]][_0x85fc[70]]){_0xebedx1b[_0x85fc[68]]= _[_0x85fc[73]](_0xebedx1b[_0x85fc[68]],{$or:_[_0x85fc[72]](_0xebedx1b[_0x85fc[61]],function(_0xebedx2a){var _0xebedx2b={};_0xebedx2b[_0xebedx2a]= {$like:_0x85fc[71]+ _0xebedx28[_0x85fc[58]][_0x85fc[70]]+ _0x85fc[71]};return _0xebedx2b})})};_0xebedx1b= _[_0x85fc[73]]({},_0xebedx1b,_0xebedx28[_0x85fc[74]]);return db[_0x85fc[56]][_0x85fc[76]](_0xebedx1b)[_0x85fc[45]](respondWithFilteredResult(_0xebedx15,_0xebedx1b,_0x85fc[53]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[53]))};exports[_0x85fc[77]]= function(_0xebedx28,_0xebedx15){var _0xebedx1b={raw:false,where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}},_0xebedx29={};_0xebedx29[_0x85fc[54]]= _[_0x85fc[57]](db[_0x85fc[56]][_0x85fc[55]]);_0xebedx29[_0x85fc[58]]= _[_0x85fc[57]](_0xebedx28[_0x85fc[58]]);_0xebedx29[_0x85fc[59]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],_0xebedx29[_0x85fc[58]]);_0xebedx1b[_0x85fc[61]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],qs[_0x85fc[62]](_0xebedx28[_0x85fc[58]][_0x85fc[62]]));_0xebedx1b[_0x85fc[61]]= (_0xebedx1b[_0x85fc[61]][_0x85fc[63]])?_0xebedx1b[_0x85fc[61]]:_0xebedx29[_0x85fc[54]];_0xebedx1b= _[_0x85fc[73]]({},_0xebedx1b,_0xebedx28[_0x85fc[74]]);return db[_0x85fc[56]][_0x85fc[80]](_0xebedx1b)[_0x85fc[45]](handleEntityNotFound(_0xebedx15,null,_0x85fc[77]))[_0x85fc[45]](respondWithResult(_0xebedx15,null,_0x85fc[77]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[77]))};exports[_0x85fc[81]]= function(_0xebedx28,_0xebedx15){return db[_0x85fc[56]][_0x85fc[81]](_0xebedx28[_0x85fc[82]],{})[_0x85fc[45]](respondWithResult(_0xebedx15,201,_0x85fc[81]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[81]))};exports[_0x85fc[46]]= function(_0xebedx28,_0xebedx15){if(_0xebedx28[_0x85fc[82]][_0x85fc[78]]){delete _0xebedx28[_0x85fc[82]][_0x85fc[78]]};return db[_0x85fc[56]][_0x85fc[80]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx15,null,_0x85fc[46]))[_0x85fc[45]](saveUpdates(_0xebedx28[_0x85fc[82]],null,_0x85fc[46]))[_0x85fc[45]](respondWithResult(_0xebedx15,null,_0x85fc[46]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[46]))};exports[_0x85fc[48]]= function(_0xebedx28,_0xebedx15){return db[_0x85fc[56]][_0x85fc[80]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx15,null,_0x85fc[48]))[_0x85fc[45]](removeEntity(_0xebedx15,null,_0x85fc[48]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[48]))};exports[_0x85fc[83]]= function(_0xebedx28,_0xebedx18,_0xebedx2c){var _0xebedx1b={};var _0xebedx29={};var _0xebedx2d;var _0xebedx1c;return db[_0x85fc[56]][_0x85fc[85]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx18,null,_0x85fc[83]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){_0xebedx2d= _0xebedx18;_0xebedx29[_0x85fc[54]]= _[_0x85fc[57]](db[_0x85fc[84]][_0x85fc[55]]);_0xebedx29[_0x85fc[58]]= _[_0x85fc[57]](_0xebedx28[_0x85fc[58]]);_0xebedx29[_0x85fc[59]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],_0xebedx29[_0x85fc[58]]);_0xebedx1b[_0x85fc[61]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],qs[_0x85fc[62]](_0xebedx28[_0x85fc[58]][_0x85fc[62]]));_0xebedx1b[_0x85fc[61]]= (_0xebedx1b[_0x85fc[61]][_0x85fc[63]])?_0xebedx1b[_0x85fc[61]]:_0xebedx29[_0x85fc[54]];_0xebedx1b[_0x85fc[66]]= qs[_0x85fc[67]](_0xebedx28[_0x85fc[58]][_0x85fc[67]]);_0xebedx1b[_0x85fc[68]]= qs[_0x85fc[59]](_[_0x85fc[69]](_0xebedx28[_0x85fc[58]],_0xebedx29[_0x85fc[59]]));if(_0xebedx28[_0x85fc[58]][_0x85fc[70]]){_0xebedx1b[_0x85fc[68]]= _[_0x85fc[73]](_0xebedx1b[_0x85fc[68]],{$or:_[_0x85fc[72]](_0xebedx1b[_0x85fc[61]],function(_0xebedx2a){var _0xebedx2b={};_0xebedx2b[_0xebedx2a]= {$like:_0x85fc[71]+ _0xebedx28[_0x85fc[58]][_0x85fc[70]]+ _0x85fc[71]};return _0xebedx2b})})};_0xebedx1b= _[_0x85fc[73]]({},_0xebedx1b,_0xebedx28[_0x85fc[74]]);return _0xebedx2d[_0x85fc[83]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2f){if(_0xebedx2f){_0xebedx1c= _0xebedx2f[_0x85fc[63]];if(!_0xebedx28[_0x85fc[58]][_0x85fc[65]](_0x85fc[64])){_0xebedx1b[_0x85fc[35]]= qs[_0x85fc[35]](_0xebedx28[_0x85fc[58]][_0x85fc[35]]);_0xebedx1b[_0x85fc[34]]= qs[_0x85fc[34]](_0xebedx28[_0x85fc[58]][_0x85fc[34]])};return _0xebedx2d[_0x85fc[83]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2e){return _0xebedx2e?{count:_0xebedx1c,rows:_0xebedx2e}:null})[_0x85fc[45]](respondWithResult(_0xebedx18,null,_0x85fc[83]))[_0x85fc[75]](handleError(_0xebedx18,null,_0x85fc[83]))};exports[_0x85fc[86]]= function(_0xebedx28,_0xebedx18,_0xebedx2c){var _0xebedx1b={};var _0xebedx29={};var _0xebedx2d;var _0xebedx1c;return db[_0x85fc[56]][_0x85fc[85]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx18,null,_0x85fc[86]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){_0xebedx2d= _0xebedx18;_0xebedx29[_0x85fc[54]]= _[_0x85fc[57]](db[_0x85fc[87]][_0x85fc[55]]);_0xebedx29[_0x85fc[58]]= _[_0x85fc[57]](_0xebedx28[_0x85fc[58]]);_0xebedx29[_0x85fc[59]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],_0xebedx29[_0x85fc[58]]);_0xebedx1b[_0x85fc[61]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],qs[_0x85fc[62]](_0xebedx28[_0x85fc[58]][_0x85fc[62]]));_0xebedx1b[_0x85fc[61]]= (_0xebedx1b[_0x85fc[61]][_0x85fc[63]])?_0xebedx1b[_0x85fc[61]]:_0xebedx29[_0x85fc[54]];_0xebedx1b[_0x85fc[66]]= qs[_0x85fc[67]](_0xebedx28[_0x85fc[58]][_0x85fc[67]]);_0xebedx1b[_0x85fc[68]]= qs[_0x85fc[59]](_[_0x85fc[69]](_0xebedx28[_0x85fc[58]],_0xebedx29[_0x85fc[59]]));if(_0xebedx28[_0x85fc[58]][_0x85fc[70]]){_0xebedx1b[_0x85fc[68]]= _[_0x85fc[73]](_0xebedx1b[_0x85fc[68]],{$or:_[_0x85fc[72]](_0xebedx1b[_0x85fc[61]],function(_0xebedx2a){var _0xebedx2b={};_0xebedx2b[_0xebedx2a]= {$like:_0x85fc[71]+ _0xebedx28[_0x85fc[58]][_0x85fc[70]]+ _0x85fc[71]};return _0xebedx2b})})};_0xebedx1b= _[_0x85fc[73]]({},_0xebedx1b,_0xebedx28[_0x85fc[74]]);return _0xebedx2d[_0x85fc[86]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2f){if(_0xebedx2f){_0xebedx1c= _0xebedx2f[_0x85fc[63]];if(!_0xebedx28[_0x85fc[58]][_0x85fc[65]](_0x85fc[64])){_0xebedx1b[_0x85fc[35]]= qs[_0x85fc[35]](_0xebedx28[_0x85fc[58]][_0x85fc[35]]);_0xebedx1b[_0x85fc[34]]= qs[_0x85fc[34]](_0xebedx28[_0x85fc[58]][_0x85fc[34]])};return _0xebedx2d[_0x85fc[86]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2e){return _0xebedx2e?{count:_0xebedx1c,rows:_0xebedx2e}:null})[_0x85fc[45]](respondWithResult(_0xebedx18,null,_0x85fc[86]))[_0x85fc[75]](handleError(_0xebedx18,null,_0x85fc[86]))};exports[_0x85fc[88]]= function(_0xebedx28,_0xebedx18,_0xebedx2c){var _0xebedx1b={};var _0xebedx29={};var _0xebedx2d;var _0xebedx1c;return db[_0x85fc[56]][_0x85fc[85]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx18,null,_0x85fc[88]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){_0xebedx2d= _0xebedx18;_0xebedx29[_0x85fc[54]]= _[_0x85fc[57]](db[_0x85fc[89]][_0x85fc[55]]);_0xebedx29[_0x85fc[58]]= _[_0x85fc[57]](_0xebedx28[_0x85fc[58]]);_0xebedx29[_0x85fc[59]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],_0xebedx29[_0x85fc[58]]);_0xebedx1b[_0x85fc[61]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],qs[_0x85fc[62]](_0xebedx28[_0x85fc[58]][_0x85fc[62]]));_0xebedx1b[_0x85fc[61]]= (_0xebedx1b[_0x85fc[61]][_0x85fc[63]])?_0xebedx1b[_0x85fc[61]]:_0xebedx29[_0x85fc[54]];_0xebedx1b[_0x85fc[66]]= qs[_0x85fc[67]](_0xebedx28[_0x85fc[58]][_0x85fc[67]]);_0xebedx1b[_0x85fc[68]]= qs[_0x85fc[59]](_[_0x85fc[69]](_0xebedx28[_0x85fc[58]],_0xebedx29[_0x85fc[59]]));if(_0xebedx28[_0x85fc[58]][_0x85fc[70]]){_0xebedx1b[_0x85fc[68]]= _[_0x85fc[73]](_0xebedx1b[_0x85fc[68]],{$or:_[_0x85fc[72]](_0xebedx1b[_0x85fc[61]],function(_0xebedx2a){var _0xebedx2b={};_0xebedx2b[_0xebedx2a]= {$like:_0x85fc[71]+ _0xebedx28[_0x85fc[58]][_0x85fc[70]]+ _0x85fc[71]};return _0xebedx2b})})};_0xebedx1b= _[_0x85fc[73]]({},_0xebedx1b,_0xebedx28[_0x85fc[74]]);return _0xebedx2d[_0x85fc[88]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2f){if(_0xebedx2f){_0xebedx1c= _0xebedx2f[_0x85fc[63]];if(!_0xebedx28[_0x85fc[58]][_0x85fc[65]](_0x85fc[64])){_0xebedx1b[_0x85fc[35]]= qs[_0x85fc[35]](_0xebedx28[_0x85fc[58]][_0x85fc[35]]);_0xebedx1b[_0x85fc[34]]= qs[_0x85fc[34]](_0xebedx28[_0x85fc[58]][_0x85fc[34]])};return _0xebedx2d[_0x85fc[88]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2e){return _0xebedx2e?{count:_0xebedx1c,rows:_0xebedx2e}:null})[_0x85fc[45]](respondWithResult(_0xebedx18,null,_0x85fc[88]))[_0x85fc[75]](handleError(_0xebedx18,null,_0x85fc[88]))};exports[_0x85fc[90]]= function(_0xebedx28,_0xebedx18,_0xebedx2c){var _0xebedx1b={};var _0xebedx29={};var _0xebedx2d;var _0xebedx1c;return db[_0x85fc[56]][_0x85fc[85]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx18,null,_0x85fc[90]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){_0xebedx2d= _0xebedx18;_0xebedx29[_0x85fc[54]]= _[_0x85fc[57]](db[_0x85fc[91]][_0x85fc[55]]);_0xebedx29[_0x85fc[58]]= _[_0x85fc[57]](_0xebedx28[_0x85fc[58]]);_0xebedx29[_0x85fc[59]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],_0xebedx29[_0x85fc[58]]);_0xebedx1b[_0x85fc[61]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],qs[_0x85fc[62]](_0xebedx28[_0x85fc[58]][_0x85fc[62]]));_0xebedx1b[_0x85fc[61]]= (_0xebedx1b[_0x85fc[61]][_0x85fc[63]])?_0xebedx1b[_0x85fc[61]]:_0xebedx29[_0x85fc[54]];_0xebedx1b[_0x85fc[66]]= qs[_0x85fc[67]](_0xebedx28[_0x85fc[58]][_0x85fc[67]]);_0xebedx1b[_0x85fc[68]]= qs[_0x85fc[59]](_[_0x85fc[69]](_0xebedx28[_0x85fc[58]],_0xebedx29[_0x85fc[59]]));if(_0xebedx28[_0x85fc[58]][_0x85fc[70]]){_0xebedx1b[_0x85fc[68]]= _[_0x85fc[73]](_0xebedx1b[_0x85fc[68]],{$or:_[_0x85fc[72]](_0xebedx1b[_0x85fc[61]],function(_0xebedx2a){var _0xebedx2b={};_0xebedx2b[_0xebedx2a]= {$like:_0x85fc[71]+ _0xebedx28[_0x85fc[58]][_0x85fc[70]]+ _0x85fc[71]};return _0xebedx2b})})};_0xebedx1b= _[_0x85fc[73]]({},_0xebedx1b,_0xebedx28[_0x85fc[74]]);return _0xebedx2d[_0x85fc[90]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2f){if(_0xebedx2f){_0xebedx1c= _0xebedx2f[_0x85fc[63]];if(!_0xebedx28[_0x85fc[58]][_0x85fc[65]](_0x85fc[64])){_0xebedx1b[_0x85fc[35]]= qs[_0x85fc[35]](_0xebedx28[_0x85fc[58]][_0x85fc[35]]);_0xebedx1b[_0x85fc[34]]= qs[_0x85fc[34]](_0xebedx28[_0x85fc[58]][_0x85fc[34]])};return _0xebedx2d[_0x85fc[90]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2e){return _0xebedx2e?{count:_0xebedx1c,rows:_0xebedx2e}:null})[_0x85fc[45]](respondWithResult(_0xebedx18,null,_0x85fc[90]))[_0x85fc[75]](handleError(_0xebedx18,null,_0x85fc[90]))};exports[_0x85fc[92]]= function(_0xebedx28,_0xebedx18,_0xebedx2c){var _0xebedx1b={};var _0xebedx29={};var _0xebedx2d;var _0xebedx1c;return db[_0x85fc[56]][_0x85fc[85]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx18,null,_0x85fc[92]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){_0xebedx2d= _0xebedx18;_0xebedx29[_0x85fc[54]]= _[_0x85fc[57]](db[_0x85fc[93]][_0x85fc[55]]);_0xebedx29[_0x85fc[58]]= _[_0x85fc[57]](_0xebedx28[_0x85fc[58]]);_0xebedx29[_0x85fc[59]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],_0xebedx29[_0x85fc[58]]);_0xebedx1b[_0x85fc[61]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],qs[_0x85fc[62]](_0xebedx28[_0x85fc[58]][_0x85fc[62]]));_0xebedx1b[_0x85fc[61]]= (_0xebedx1b[_0x85fc[61]][_0x85fc[63]])?_0xebedx1b[_0x85fc[61]]:_0xebedx29[_0x85fc[54]];_0xebedx1b[_0x85fc[66]]= qs[_0x85fc[67]](_0xebedx28[_0x85fc[58]][_0x85fc[67]]);_0xebedx1b[_0x85fc[68]]= qs[_0x85fc[59]](_[_0x85fc[69]](_0xebedx28[_0x85fc[58]],_0xebedx29[_0x85fc[59]]));if(_0xebedx28[_0x85fc[58]][_0x85fc[70]]){_0xebedx1b[_0x85fc[68]]= _[_0x85fc[73]](_0xebedx1b[_0x85fc[68]],{$or:_[_0x85fc[72]](_0xebedx1b[_0x85fc[61]],function(_0xebedx2a){var _0xebedx2b={};_0xebedx2b[_0xebedx2a]= {$like:_0x85fc[71]+ _0xebedx28[_0x85fc[58]][_0x85fc[70]]+ _0x85fc[71]};return _0xebedx2b})})};_0xebedx1b= _[_0x85fc[73]]({},_0xebedx1b,_0xebedx28[_0x85fc[74]]);return _0xebedx2d[_0x85fc[92]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2f){if(_0xebedx2f){_0xebedx1c= _0xebedx2f[_0x85fc[63]];if(!_0xebedx28[_0x85fc[58]][_0x85fc[65]](_0x85fc[64])){_0xebedx1b[_0x85fc[35]]= qs[_0x85fc[35]](_0xebedx28[_0x85fc[58]][_0x85fc[35]]);_0xebedx1b[_0x85fc[34]]= qs[_0x85fc[34]](_0xebedx28[_0x85fc[58]][_0x85fc[34]])};return _0xebedx2d[_0x85fc[92]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2e){return _0xebedx2e?{count:_0xebedx1c,rows:_0xebedx2e}:null})[_0x85fc[45]](respondWithResult(_0xebedx18,null,_0x85fc[92]))[_0x85fc[75]](handleError(_0xebedx18,null,_0x85fc[92]))};exports[_0x85fc[94]]= function(_0xebedx28,_0xebedx15,_0xebedx2c){var _0xebedx30;return db[_0x85fc[56]][_0x85fc[80]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx15,null,_0x85fc[94]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){return _0xebedx18[_0x85fc[94]](_0xebedx28[_0x85fc[82]][_0x85fc[125]],_[_0x85fc[126]](_0xebedx28[_0x85fc[82]],[_0x85fc[125],_0x85fc[78]])|| {})};return null})[_0x85fc[124]](function(_0xebedx31){_0xebedx30= _0xebedx31|| [];var _0xebedx32=[];if(_0xebedx31){for(var _0xebedx33=0;_0xebedx33< _0xebedx31[_0x85fc[63]];_0xebedx33++){var _0xebedx34=_0xebedx31[_0xebedx33][_0x85fc[95]]({plain:true});var _0xebedx35=squel[_0x85fc[120]]()[_0x85fc[119]](_0x85fc[118])[_0x85fc[117]]([_0x85fc[96],_0x85fc[97],_0x85fc[98],_0x85fc[99],_0x85fc[100],_0x85fc[101],_0x85fc[102]],squel[_0x85fc[112]]()[_0x85fc[111]](_0x85fc[96])[_0x85fc[111]](_0x85fc[116],_0x85fc[97])[_0x85fc[111]](_0x85fc[78])[_0x85fc[111]](_0xebedx34[_0x85fc[107]].toString())[_0x85fc[111]](_0xebedx28[_0x85fc[79]][_0x85fc[78]])[_0x85fc[111]](_0x85fc[116],_0x85fc[101])[_0x85fc[111]](_0x85fc[116],_0x85fc[102])[_0x85fc[109]](_0x85fc[115])[_0x85fc[68]](_0x85fc[114],_0xebedx34[_0x85fc[107]].toString())[_0x85fc[68]](_0x85fc[113])[_0x85fc[68]](_0x85fc[103],squel[_0x85fc[112]]()[_0x85fc[111]](_0x85fc[110])[_0x85fc[109]](_0x85fc[108])[_0x85fc[68]](_0x85fc[106],_0xebedx34[_0x85fc[107]].toString())[_0x85fc[68]](_0x85fc[105],_0xebedx28[_0x85fc[79]][_0x85fc[78]].toString())[_0x85fc[68]](_0x85fc[104]))).toString();_0xebedx32[_0x85fc[122]](db[_0x85fc[121]][_0x85fc[58]](_0xebedx35))};return BPromise[_0x85fc[123]](_0xebedx32)}})[_0x85fc[45]](function(){return _0xebedx30})[_0x85fc[45]](respondWithResult(_0xebedx15,null,_0x85fc[94]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[94]))};exports[_0x85fc[127]]= function(_0xebedx28,_0xebedx15,_0xebedx2c){var _0xebedx2f;return db[_0x85fc[56]][_0x85fc[80]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx15,null,_0x85fc[127]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){return _0xebedx18[_0x85fc[127]](_0xebedx28[_0x85fc[58]][_0x85fc[125]])}})[_0x85fc[45]](function(_0xebedx31){if(_0xebedx31){_0xebedx2f= _0xebedx31;return db[_0x85fc[84]][_0x85fc[48]]({where:{ListId:_0xebedx28[_0x85fc[58]][_0x85fc[125]],CampaignId:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](function(){return _0xebedx2f})}})[_0x85fc[45]](respondWithStatusCode(_0xebedx15,null,_0x85fc[127]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[127]))};exports[_0x85fc[128]]= function(_0xebedx28,_0xebedx18,_0xebedx2c){var _0xebedx1b={};var _0xebedx29={};var _0xebedx2d;var _0xebedx1c;return db[_0x85fc[56]][_0x85fc[85]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx18,null,_0x85fc[128]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){_0xebedx2d= _0xebedx18;_0xebedx29[_0x85fc[54]]= _[_0x85fc[57]](db[_0x85fc[93]][_0x85fc[55]]);_0xebedx29[_0x85fc[58]]= _[_0x85fc[57]](_0xebedx28[_0x85fc[58]]);_0xebedx29[_0x85fc[59]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],_0xebedx29[_0x85fc[58]]);_0xebedx1b[_0x85fc[61]]= _[_0x85fc[60]](_0xebedx29[_0x85fc[54]],qs[_0x85fc[62]](_0xebedx28[_0x85fc[58]][_0x85fc[62]]));_0xebedx1b[_0x85fc[61]]= (_0xebedx1b[_0x85fc[61]][_0x85fc[63]])?_0xebedx1b[_0x85fc[61]]:_0xebedx29[_0x85fc[54]];_0xebedx1b[_0x85fc[66]]= qs[_0x85fc[67]](_0xebedx28[_0x85fc[58]][_0x85fc[67]]);_0xebedx1b[_0x85fc[68]]= qs[_0x85fc[59]](_[_0x85fc[69]](_0xebedx28[_0x85fc[58]],_0xebedx29[_0x85fc[59]]));if(_0xebedx28[_0x85fc[58]][_0x85fc[70]]){_0xebedx1b[_0x85fc[68]]= _[_0x85fc[73]](_0xebedx1b[_0x85fc[68]],{$or:_[_0x85fc[72]](_0xebedx1b[_0x85fc[61]],function(_0xebedx2a){var _0xebedx2b={};_0xebedx2b[_0xebedx2a]= {$like:_0x85fc[71]+ _0xebedx28[_0x85fc[58]][_0x85fc[70]]+ _0x85fc[71]};return _0xebedx2b})})};_0xebedx1b= _[_0x85fc[73]]({},_0xebedx1b,_0xebedx28[_0x85fc[74]]);return _0xebedx2d[_0x85fc[128]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2f){if(_0xebedx2f){_0xebedx1c= _0xebedx2f[_0x85fc[63]];if(!_0xebedx28[_0x85fc[58]][_0x85fc[65]](_0x85fc[64])){_0xebedx1b[_0x85fc[35]]= qs[_0x85fc[35]](_0xebedx28[_0x85fc[58]][_0x85fc[35]]);_0xebedx1b[_0x85fc[34]]= qs[_0x85fc[34]](_0xebedx28[_0x85fc[58]][_0x85fc[34]])};return _0xebedx2d[_0x85fc[128]](_0xebedx1b)}})[_0x85fc[45]](function(_0xebedx2e){return _0xebedx2e?{count:_0xebedx1c,rows:_0xebedx2e}:null})[_0x85fc[45]](respondWithResult(_0xebedx18,null,_0x85fc[128]))[_0x85fc[75]](handleError(_0xebedx18,null,_0x85fc[128]))};exports[_0x85fc[129]]= function(_0xebedx28,_0xebedx15,_0xebedx2c){var _0xebedx30;return db[_0x85fc[56]][_0x85fc[80]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx15,null,_0x85fc[129]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){return _0xebedx18[_0x85fc[129]](_0xebedx28[_0x85fc[82]][_0x85fc[125]],_[_0x85fc[126]](_0xebedx28[_0x85fc[82]],[_0x85fc[125],_0x85fc[78]])|| {})};return null})[_0x85fc[124]](function(_0xebedx31){_0xebedx30= _0xebedx31|| [];var _0xebedx32=[];if(_0xebedx31){for(var _0xebedx33=0;_0xebedx33< _0xebedx31[_0x85fc[63]];_0xebedx33++){var _0xebedx34=_0xebedx31[_0xebedx33][_0x85fc[95]]({plain:true});var _0xebedx35=squel[_0x85fc[120]]()[_0x85fc[119]](_0x85fc[130])[_0x85fc[117]]([_0x85fc[96],_0x85fc[98],_0x85fc[99],_0x85fc[100],_0x85fc[101],_0x85fc[102]],squel[_0x85fc[112]]()[_0x85fc[111]](_0x85fc[96])[_0x85fc[111]](_0x85fc[78])[_0x85fc[111]](_0xebedx34[_0x85fc[107]].toString())[_0x85fc[111]](_0xebedx28[_0x85fc[79]][_0x85fc[78]])[_0x85fc[111]](_0x85fc[116],_0x85fc[101])[_0x85fc[111]](_0x85fc[116],_0x85fc[102])[_0x85fc[109]](_0x85fc[115])[_0x85fc[68]](_0x85fc[114],_0xebedx34[_0x85fc[107]].toString())[_0x85fc[68]](_0x85fc[113])).toString();_0xebedx32[_0x85fc[122]](db[_0x85fc[121]][_0x85fc[58]](_0xebedx35))};return BPromise[_0x85fc[123]](_0xebedx32)}})[_0x85fc[45]](function(){return _0xebedx30})[_0x85fc[45]](respondWithResult(_0xebedx15,null,_0x85fc[129]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[129]))};exports[_0x85fc[131]]= function(_0xebedx28,_0xebedx15,_0xebedx2c){var _0xebedx2f;return db[_0x85fc[56]][_0x85fc[80]]({where:{id:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](handleEntityNotFound(_0xebedx15,null,_0x85fc[131]))[_0x85fc[45]](function(_0xebedx18){if(_0xebedx18){return _0xebedx18[_0x85fc[131]](_0xebedx28[_0x85fc[58]][_0x85fc[125]])}})[_0x85fc[45]](function(_0xebedx31){if(_0xebedx31){_0xebedx2f= _0xebedx31;return db[_0x85fc[91]][_0x85fc[48]]({where:{ListId:_0xebedx28[_0x85fc[58]][_0x85fc[125]],CampaignId:_0xebedx28[_0x85fc[79]][_0x85fc[78]]}})[_0x85fc[45]](function(){return _0xebedx2f})}})[_0x85fc[45]](respondWithStatusCode(_0xebedx15,null,_0x85fc[131]))[_0x85fc[75]](handleError(_0xebedx15,null,_0x85fc[131]))}
\ No newline at end of file
index 8deadb2..870d883 100644 (file)
@@ -1 +1 @@
-var _0x5a13=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x5a13[0];var _=require(_0x5a13[1]);var util=require(_0x5a13[2]);var logger=require(_0x5a13[4])(_0x5a13[3]);var attributes=require(_0x5a13[5]);module[_0x5a13[6]]= function(_0x60b7x5,_0x60b7x6){return _0x60b7x5[_0x5a13[9]](_0x5a13[7],attributes,{tableName:_0x5a13[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4dc5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x4dc5[0];var _=require(_0x4dc5[1]);var util=require(_0x4dc5[2]);var logger=require(_0x4dc5[4])(_0x4dc5[3]);var attributes=require(_0x4dc5[5]);module[_0x4dc5[6]]= function(_0xd31fx5,_0xd31fx6){return _0xd31fx5[_0x4dc5[9]](_0x4dc5[7],attributes,{tableName:_0x4dc5[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 1463fee..8f01242 100644 (file)
@@ -1 +1 @@
-var _0x9d33=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x61\x6D\x70\x61\x69\x67\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x61\x6D\x70\x61\x69\x67\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x61\x6D\x70\x61\x69\x67\x6E"];_0x9d33[0];var _=require(_0x9d33[1]);var util=require(_0x9d33[2]);var moment=require(_0x9d33[3]);var BPromise=require(_0x9d33[4]);var db=require(_0x9d33[6])[_0x9d33[5]];var utils=require(_0x9d33[7]);var logger=require(_0x9d33[9])(_0x9d33[8]);var jayson=require(_0x9d33[10]);var client=jayson[_0x9d33[12]][_0x9d33[11]]({port:9002});function respondWithRpcPromise(_0xb560xb,_0xb560xc,_0xb560xd){return  new BPromise(function(_0xb560xe,_0xb560xf){return client[_0x9d33[25]](_0xb560xb,_0xb560xd)[_0x9d33[24]](function(_0xb560x11){logger[_0x9d33[17]](_0x9d33[13],_0xb560xc,_0x9d33[16]);logger[_0x9d33[20]](_0x9d33[18],_0xb560xc,_0x9d33[16],JSON[_0x9d33[19]](_0xb560x11));if(_0xb560x11[_0x9d33[14]]){if(_0xb560x11[_0x9d33[14]][_0x9d33[21]]=== 500){logger[_0x9d33[14]](_0x9d33[13],_0xb560xc,_0xb560x11[_0x9d33[14]][_0x9d33[22]]);return _0xb560xf(_0xb560x11[_0x9d33[14]][_0x9d33[22]])};logger[_0x9d33[14]](_0x9d33[13],_0xb560xc,_0xb560x11[_0x9d33[14]][_0x9d33[22]]);return _0xb560xe(_0xb560x11[_0x9d33[14]][_0x9d33[22]])}else {logger[_0x9d33[17]](_0x9d33[13],_0xb560xc,_0x9d33[16]);_0xb560xe(_0xb560x11[_0x9d33[23]][_0x9d33[22]])}})[_0x9d33[15]](function(_0xb560x10){logger[_0x9d33[14]](_0x9d33[13],_0xb560xc,_0xb560x10);_0xb560xf(_0xb560x10)})})}exports[_0x9d33[26]]= function(_0xb560xd){var _0xb560x12=this;return  new Promise(function(_0xb560xe,_0xb560xf){return db[_0x9d33[37]][_0x9d33[36]]({raw:_0xb560xd[_0x9d33[27]]?(_0xb560xd[_0x9d33[27]][_0x9d33[28]]=== undefined)?true:false:true,where:_0xb560xd[_0x9d33[27]]?_0xb560xd[_0x9d33[27]][_0x9d33[29]]|| null:null,attributes:_0xb560xd[_0x9d33[27]]?_0xb560xd[_0x9d33[27]][_0x9d33[30]]|| null:null,limit:_0xb560xd[_0x9d33[27]]?_0xb560xd[_0x9d33[27]][_0x9d33[31]]|| null:null,include:_0xb560xd[_0x9d33[27]]?(_0xb560xd[_0x9d33[27]][_0x9d33[32]]?_[_0x9d33[35]](_0xb560xd[_0x9d33[27]][_0x9d33[32]],function(_0xb560x13){return {model:db[_0xb560x13[_0x9d33[33]]],as:_0xb560x13[_0x9d33[34]],attributes:_0xb560x13[_0x9d33[30]],include:_0xb560x13[_0x9d33[32]]?_[_0x9d33[35]](_0xb560x13[_0x9d33[32]],function(_0xb560x14){return {model:db[_0xb560x14[_0x9d33[33]]],as:_0xb560x14[_0x9d33[34]],attributes:_0xb560x14[_0x9d33[30]],include:_0xb560x14[_0x9d33[32]]?_[_0x9d33[35]](_0xb560x14[_0x9d33[32]],function(_0xb560x15){return {model:db[_0xb560x15[_0x9d33[33]]],as:_0xb560x15[_0x9d33[34]],attributes:_0xb560x15[_0x9d33[30]]}}):[]}}):[]}}):[]):[]})[_0x9d33[24]](function(_0xb560x11){logger[_0x9d33[17]](_0x9d33[26],_0xb560xd);logger[_0x9d33[20]](_0x9d33[26],_0xb560xd,JSON[_0x9d33[19]](_0xb560x11));_0xb560xe(_0xb560x11)})[_0x9d33[15]](function(_0xb560x10){logger[_0x9d33[14]](_0x9d33[26],_0xb560x10[_0x9d33[22]],_0xb560xd);_0xb560xf(_0xb560x12[_0x9d33[14]](500,_0xb560x10[_0x9d33[22]]))})})}
\ No newline at end of file
+var _0x7186=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x61\x6D\x70\x61\x69\x67\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x61\x6D\x70\x61\x69\x67\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x61\x6D\x70\x61\x69\x67\x6E"];_0x7186[0];var _=require(_0x7186[1]);var util=require(_0x7186[2]);var moment=require(_0x7186[3]);var BPromise=require(_0x7186[4]);var db=require(_0x7186[6])[_0x7186[5]];var utils=require(_0x7186[7]);var logger=require(_0x7186[9])(_0x7186[8]);var jayson=require(_0x7186[10]);var client=jayson[_0x7186[12]][_0x7186[11]]({port:9002});function respondWithRpcPromise(_0x1464xb,_0x1464xc,_0x1464xd){return  new BPromise(function(_0x1464xe,_0x1464xf){return client[_0x7186[25]](_0x1464xb,_0x1464xd)[_0x7186[24]](function(_0x1464x11){logger[_0x7186[17]](_0x7186[13],_0x1464xc,_0x7186[16]);logger[_0x7186[20]](_0x7186[18],_0x1464xc,_0x7186[16],JSON[_0x7186[19]](_0x1464x11));if(_0x1464x11[_0x7186[14]]){if(_0x1464x11[_0x7186[14]][_0x7186[21]]=== 500){logger[_0x7186[14]](_0x7186[13],_0x1464xc,_0x1464x11[_0x7186[14]][_0x7186[22]]);return _0x1464xf(_0x1464x11[_0x7186[14]][_0x7186[22]])};logger[_0x7186[14]](_0x7186[13],_0x1464xc,_0x1464x11[_0x7186[14]][_0x7186[22]]);return _0x1464xe(_0x1464x11[_0x7186[14]][_0x7186[22]])}else {logger[_0x7186[17]](_0x7186[13],_0x1464xc,_0x7186[16]);_0x1464xe(_0x1464x11[_0x7186[23]][_0x7186[22]])}})[_0x7186[15]](function(_0x1464x10){logger[_0x7186[14]](_0x7186[13],_0x1464xc,_0x1464x10);_0x1464xf(_0x1464x10)})})}exports[_0x7186[26]]= function(_0x1464xd){var _0x1464x12=this;return  new Promise(function(_0x1464xe,_0x1464xf){return db[_0x7186[37]][_0x7186[36]]({raw:_0x1464xd[_0x7186[27]]?(_0x1464xd[_0x7186[27]][_0x7186[28]]=== undefined)?true:false:true,where:_0x1464xd[_0x7186[27]]?_0x1464xd[_0x7186[27]][_0x7186[29]]|| null:null,attributes:_0x1464xd[_0x7186[27]]?_0x1464xd[_0x7186[27]][_0x7186[30]]|| null:null,limit:_0x1464xd[_0x7186[27]]?_0x1464xd[_0x7186[27]][_0x7186[31]]|| null:null,include:_0x1464xd[_0x7186[27]]?(_0x1464xd[_0x7186[27]][_0x7186[32]]?_[_0x7186[35]](_0x1464xd[_0x7186[27]][_0x7186[32]],function(_0x1464x13){return {model:db[_0x1464x13[_0x7186[33]]],as:_0x1464x13[_0x7186[34]],attributes:_0x1464x13[_0x7186[30]],include:_0x1464x13[_0x7186[32]]?_[_0x7186[35]](_0x1464x13[_0x7186[32]],function(_0x1464x14){return {model:db[_0x1464x14[_0x7186[33]]],as:_0x1464x14[_0x7186[34]],attributes:_0x1464x14[_0x7186[30]],include:_0x1464x14[_0x7186[32]]?_[_0x7186[35]](_0x1464x14[_0x7186[32]],function(_0x1464x15){return {model:db[_0x1464x15[_0x7186[33]]],as:_0x1464x15[_0x7186[34]],attributes:_0x1464x15[_0x7186[30]]}}):[]}}):[]}}):[]):[]})[_0x7186[24]](function(_0x1464x11){logger[_0x7186[17]](_0x7186[26],_0x1464xd);logger[_0x7186[20]](_0x7186[26],_0x1464xd,JSON[_0x7186[19]](_0x1464x11));_0x1464xe(_0x1464x11)})[_0x7186[15]](function(_0x1464x10){logger[_0x7186[14]](_0x7186[26],_0x1464x10[_0x7186[22]],_0x1464xd);_0x1464xf(_0x1464x12[_0x7186[14]](500,_0x1464x10[_0x7186[22]]))})})}
\ No newline at end of file
index 4ce58b1..156ed41 100644 (file)
@@ -1 +1 @@
-var _0xd178=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x69\x65\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x2F\x3A\x69\x64\x2F\x6C\x69\x73\x74\x73","\x67\x65\x74\x4C\x69\x73\x74\x73","\x2F\x3A\x69\x64\x2F\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74\x73","\x67\x65\x74\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4C\x69\x73\x74\x73","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x73","\x72\x65\x6D\x6F\x76\x65\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xd178[0];var multer=require(_0xd178[1]);var util=require(_0xd178[2]);var path=require(_0xd178[3]);var express=require(_0xd178[4]);var router=express.Router();var auth=require(_0xd178[5]);var config=require(_0xd178[6]);var controller=require(_0xd178[7]);router[_0xd178[11]](_0xd178[8],auth[_0xd178[9]](),controller[_0xd178[10]]);router[_0xd178[11]](_0xd178[12],auth[_0xd178[9]](),controller[_0xd178[13]]);router[_0xd178[11]](_0xd178[14],auth[_0xd178[9]](),controller[_0xd178[15]]);router[_0xd178[11]](_0xd178[16],auth[_0xd178[9]](),controller[_0xd178[17]]);router[_0xd178[11]](_0xd178[18],auth[_0xd178[9]](),controller[_0xd178[19]]);router[_0xd178[11]](_0xd178[20],auth[_0xd178[9]](),controller[_0xd178[21]]);router[_0xd178[11]](_0xd178[22],auth[_0xd178[9]](),controller[_0xd178[23]]);router[_0xd178[11]](_0xd178[24],auth[_0xd178[9]](),controller[_0xd178[25]]);router[_0xd178[27]](_0xd178[8],auth[_0xd178[9]](),controller[_0xd178[26]]);router[_0xd178[27]](_0xd178[22],auth[_0xd178[9]](),controller[_0xd178[28]]);router[_0xd178[27]](_0xd178[24],auth[_0xd178[9]](),controller[_0xd178[29]]);router[_0xd178[31]](_0xd178[12],auth[_0xd178[9]](),controller[_0xd178[30]]);router[_0xd178[33]](_0xd178[12],auth[_0xd178[9]](),controller[_0xd178[32]]);router[_0xd178[33]](_0xd178[22],auth[_0xd178[9]](),controller[_0xd178[34]]);router[_0xd178[33]](_0xd178[24],auth[_0xd178[9]](),controller[_0xd178[35]]);module[_0xd178[36]]= router
\ No newline at end of file
+var _0xdc56=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x69\x65\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x2F\x3A\x69\x64\x2F\x6C\x69\x73\x74\x73","\x67\x65\x74\x4C\x69\x73\x74\x73","\x2F\x3A\x69\x64\x2F\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74\x73","\x67\x65\x74\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4C\x69\x73\x74\x73","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x73","\x72\x65\x6D\x6F\x76\x65\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xdc56[0];var multer=require(_0xdc56[1]);var util=require(_0xdc56[2]);var path=require(_0xdc56[3]);var express=require(_0xdc56[4]);var router=express.Router();var auth=require(_0xdc56[5]);var config=require(_0xdc56[6]);var controller=require(_0xdc56[7]);router[_0xdc56[11]](_0xdc56[8],auth[_0xdc56[9]](),controller[_0xdc56[10]]);router[_0xdc56[11]](_0xdc56[12],auth[_0xdc56[9]](),controller[_0xdc56[13]]);router[_0xdc56[11]](_0xdc56[14],auth[_0xdc56[9]](),controller[_0xdc56[15]]);router[_0xdc56[11]](_0xdc56[16],auth[_0xdc56[9]](),controller[_0xdc56[17]]);router[_0xdc56[11]](_0xdc56[18],auth[_0xdc56[9]](),controller[_0xdc56[19]]);router[_0xdc56[11]](_0xdc56[20],auth[_0xdc56[9]](),controller[_0xdc56[21]]);router[_0xdc56[11]](_0xdc56[22],auth[_0xdc56[9]](),controller[_0xdc56[23]]);router[_0xdc56[11]](_0xdc56[24],auth[_0xdc56[9]](),controller[_0xdc56[25]]);router[_0xdc56[27]](_0xdc56[8],auth[_0xdc56[9]](),controller[_0xdc56[26]]);router[_0xdc56[27]](_0xdc56[22],auth[_0xdc56[9]](),controller[_0xdc56[28]]);router[_0xdc56[27]](_0xdc56[24],auth[_0xdc56[9]](),controller[_0xdc56[29]]);router[_0xdc56[31]](_0xdc56[12],auth[_0xdc56[9]](),controller[_0xdc56[30]]);router[_0xdc56[33]](_0xdc56[12],auth[_0xdc56[9]](),controller[_0xdc56[32]]);router[_0xdc56[33]](_0xdc56[22],auth[_0xdc56[9]](),controller[_0xdc56[34]]);router[_0xdc56[33]](_0xdc56[24],auth[_0xdc56[9]](),controller[_0xdc56[35]]);module[_0xdc56[36]]= router
\ No newline at end of file
index 393250c..6b7bffb 100644 (file)
@@ -1 +1 @@
-var _0x18af=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0x18af[0];var Sequelize=require(_0x18af[1]);module[_0x18af[2]]= {key:{type:Sequelize[_0x18af[3]],allowNull:false},value:{type:Sequelize[_0x18af[4]],allowNull:false},description:{type:Sequelize[_0x18af[3]]}}
\ No newline at end of file
+var _0xe85b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0xe85b[0];var Sequelize=require(_0xe85b[1]);module[_0xe85b[2]]= {key:{type:Sequelize[_0xe85b[3]],allowNull:false},value:{type:Sequelize[_0xe85b[4]],allowNull:false},description:{type:Sequelize[_0xe85b[3]]}}
\ No newline at end of file
index ef7ac15..f491f11 100644 (file)
@@ -1 +1 @@
-var _0x5580=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x5580[0];var jsonpatch=require(_0x5580[1]);var rp=require(_0x5580[2]);var moment=require(_0x5580[3]);var BPromise=require(_0x5580[4]);var util=require(_0x5580[5]);var path=require(_0x5580[6]);var sox=require(_0x5580[7]);var ejs=require(_0x5580[8]);var fs=require(_0x5580[9]);var _=require(_0x5580[10]);var squel=require(_0x5580[11]);var crypto=require(_0x5580[12]);var jsforce=require(_0x5580[13]);var toCsv=require(_0x5580[14]);var qs=require(_0x5580[15]);var logger=require(_0x5580[17])(_0x5580[16]);var utils=require(_0x5580[18]);var config=require(_0x5580[19]);var db=require(_0x5580[21])[_0x5580[20]];function respondWithStatusCode(_0x38e1x15,_0x38e1x16,_0x38e1x17){_0x38e1x16= _0x38e1x16|| 204;return function(_0x38e1x18){if(_0x38e1x18){logger[_0x5580[24]](_0x5580[22],_0x38e1x17,_0x38e1x16,_0x5580[23]);logger[_0x5580[26]](_0x5580[25],_0x38e1x17,_0x38e1x16,_0x5580[23]);return _0x38e1x15[_0x5580[27]](_0x38e1x16)};return _0x38e1x15[_0x5580[29]](304)[_0x5580[28]]()}}function respondWithResult(_0x38e1x15,_0x38e1x16,_0x38e1x17){_0x38e1x16= _0x38e1x16|| 200;return function(_0x38e1x18){if(_0x38e1x18){logger[_0x5580[24]](_0x5580[22],_0x38e1x17,_0x38e1x16,_0x5580[30]);logger[_0x5580[26]](_0x5580[25],_0x38e1x17,_0x38e1x16,_0x5580[30],JSON[_0x5580[31]](_0x38e1x18));return _0x38e1x15[_0x5580[29]](_0x38e1x16)[_0x5580[32]](_0x38e1x18)};return _0x38e1x15[_0x5580[29]](304)[_0x5580[28]]()}}function respondWithFilteredResult(_0x38e1x15,_0x38e1x1b,_0x38e1x17){return function(_0x38e1x18){if(_0x38e1x18){var _0x38e1x1c=_0x38e1x18[_0x5580[33]],_0x38e1x1d=_0x38e1x1b[_0x5580[34]],_0x38e1x1e=_0x38e1x1b[_0x5580[34]]+ _0x38e1x1b[_0x5580[35]],_0x38e1x16;if(_0x38e1x1e>= _0x38e1x1c){_0x38e1x1e= _0x38e1x1c;_0x38e1x16= 200}else {_0x38e1x16= 206};_0x38e1x15[_0x5580[29]](_0x38e1x16);logger[_0x5580[24]](_0x5580[22],_0x38e1x17,_0x38e1x16,_0x5580[36]);logger[_0x5580[26]](_0x5580[25],_0x38e1x17,_0x38e1x16,_0x5580[30],JSON[_0x5580[31]](_0x38e1x18));return _0x38e1x15[_0x5580[40]](_0x5580[37],_0x38e1x1d+ _0x5580[38]+ _0x38e1x1e+ _0x5580[39]+ _0x38e1x1c)[_0x5580[32]](_0x38e1x18)};return null}}function patchUpdates(_0x38e1x20){return function(_0x38e1x18){try{jsonpatch[_0x5580[41]](_0x38e1x18,_0x38e1x20,true)}catch(err){return BPromise[_0x5580[42]](err)};return _0x38e1x18[_0x5580[43]]()}}function saveUpdates(_0x38e1x22,_0x38e1x16,_0x38e1x17){return function(_0x38e1x18){if(_0x38e1x18){return _0x38e1x18[_0x5580[46]](_0x38e1x22)[_0x5580[45]](function(_0x38e1x23){logger[_0x5580[24]](_0x5580[22],_0x38e1x17,_0x38e1x16,_0x5580[44]);logger[_0x5580[26]](_0x5580[25],_0x38e1x17,_0x38e1x16,_0x5580[44],JSON[_0x5580[31]](_0x38e1x18));return _0x38e1x23})};return null}}function removeEntity(_0x38e1x15,_0x38e1x16,_0x38e1x17){return function(_0x38e1x18){if(_0x38e1x18){return _0x38e1x18[_0x5580[48]]()[_0x5580[45]](function(){logger[_0x5580[24]](_0x5580[22],_0x38e1x17,_0x38e1x16,_0x5580[47]);logger[_0x5580[26]](_0x5580[25],_0x38e1x17,_0x38e1x16,_0x5580[47],JSON[_0x5580[31]](_0x38e1x18));_0x38e1x15[_0x5580[29]](204)[_0x5580[28]]()})}}}function handleEntityNotFound(_0x38e1x15,_0x38e1x16,_0x38e1x17){return function(_0x38e1x18){if(!_0x38e1x18){logger[_0x5580[50]](_0x5580[22],_0x38e1x17,404,_0x5580[49]);_0x38e1x15[_0x5580[29]](404)[_0x5580[28]]();return null};return _0x38e1x18}}function handleError(_0x38e1x15,_0x38e1x16,_0x38e1x17){_0x38e1x16= _0x38e1x16|| 500;return function(_0x38e1x27){logger[_0x5580[50]](_0x5580[22],_0x38e1x17,_0x38e1x16,JSON[_0x5580[31]](_0x38e1x27));delete _0x38e1x27[_0x5580[51]];_0x38e1x15[_0x5580[29]](_0x38e1x16)[_0x5580[52]](_0x38e1x27)}}exports[_0x5580[53]]= function(_0x38e1x28,_0x38e1x15){var _0x38e1x1b={},_0x38e1x29={};_0x38e1x29[_0x5580[54]]= _[_0x5580[57]](db[_0x5580[56]][_0x5580[55]]);_0x38e1x29[_0x5580[58]]= _[_0x5580[57]](_0x38e1x28[_0x5580[58]]);_0x38e1x29[_0x5580[59]]= _[_0x5580[60]](_0x38e1x29[_0x5580[54]],_0x38e1x29[_0x5580[58]]);_0x38e1x1b[_0x5580[61]]= _[_0x5580[60]](_0x38e1x29[_0x5580[54]],qs[_0x5580[62]](_0x38e1x28[_0x5580[58]][_0x5580[62]]));_0x38e1x1b[_0x5580[61]]= (_0x38e1x1b[_0x5580[61]][_0x5580[63]])?_0x38e1x1b[_0x5580[61]]:_0x38e1x29[_0x5580[54]];if(!_0x38e1x28[_0x5580[58]][_0x5580[65]](_0x5580[64])){_0x38e1x1b[_0x5580[35]]= qs[_0x5580[35]](_0x38e1x28[_0x5580[58]][_0x5580[35]]);_0x38e1x1b[_0x5580[34]]= qs[_0x5580[34]](_0x38e1x28[_0x5580[58]][_0x5580[34]])};_0x38e1x1b[_0x5580[66]]= qs[_0x5580[67]](_0x38e1x28[_0x5580[58]][_0x5580[67]]);_0x38e1x1b[_0x5580[68]]= qs[_0x5580[59]](_[_0x5580[69]](_0x38e1x28[_0x5580[58]],_0x38e1x29[_0x5580[59]]));if(_0x38e1x28[_0x5580[58]][_0x5580[70]]){_0x38e1x1b[_0x5580[68]]= _[_0x5580[73]](_0x38e1x1b[_0x5580[68]],{$or:_[_0x5580[72]](_0x38e1x1b[_0x5580[61]],function(_0x38e1x2a){var _0x38e1x2b={};_0x38e1x2b[_0x38e1x2a]= {$like:_0x5580[71]+ _0x38e1x28[_0x5580[58]][_0x5580[70]]+ _0x5580[71]};return _0x38e1x2b})})};_0x38e1x1b= _[_0x5580[73]]({},_0x38e1x1b,_0x38e1x28[_0x5580[74]]);return db[_0x5580[56]][_0x5580[76]](_0x38e1x1b)[_0x5580[45]](respondWithFilteredResult(_0x38e1x15,_0x38e1x1b,_0x5580[53]))[_0x5580[75]](handleError(_0x38e1x15,null,_0x5580[53]))};exports[_0x5580[77]]= function(_0x38e1x28,_0x38e1x15){var _0x38e1x1b={raw:true,where:{id:_0x38e1x28[_0x5580[79]][_0x5580[78]]}},_0x38e1x29={};_0x38e1x29[_0x5580[54]]= _[_0x5580[57]](db[_0x5580[56]][_0x5580[55]]);_0x38e1x29[_0x5580[58]]= _[_0x5580[57]](_0x38e1x28[_0x5580[58]]);_0x38e1x29[_0x5580[59]]= _[_0x5580[60]](_0x38e1x29[_0x5580[54]],_0x38e1x29[_0x5580[58]]);_0x38e1x1b[_0x5580[61]]= _[_0x5580[60]](_0x38e1x29[_0x5580[54]],qs[_0x5580[62]](_0x38e1x28[_0x5580[58]][_0x5580[62]]));_0x38e1x1b[_0x5580[61]]= (_0x38e1x1b[_0x5580[61]][_0x5580[63]])?_0x38e1x1b[_0x5580[61]]:_0x38e1x29[_0x5580[54]];_0x38e1x1b= _[_0x5580[73]]({},_0x38e1x1b,_0x38e1x28[_0x5580[74]]);return db[_0x5580[56]][_0x5580[80]](_0x38e1x1b)[_0x5580[45]](handleEntityNotFound(_0x38e1x15,null,_0x5580[77]))[_0x5580[45]](respondWithResult(_0x38e1x15,null,_0x5580[77]))[_0x5580[75]](handleError(_0x38e1x15,null,_0x5580[77]))};exports[_0x5580[81]]= function(_0x38e1x28,_0x38e1x15){return db[_0x5580[56]][_0x5580[81]](_0x38e1x28[_0x5580[82]],{})[_0x5580[45]](respondWithResult(_0x38e1x15,201,_0x5580[81]))[_0x5580[75]](handleError(_0x38e1x15,null,_0x5580[81]))};exports[_0x5580[46]]= function(_0x38e1x28,_0x38e1x15){if(_0x38e1x28[_0x5580[82]][_0x5580[78]]){delete _0x38e1x28[_0x5580[82]][_0x5580[78]]};return db[_0x5580[56]][_0x5580[80]]({where:{id:_0x38e1x28[_0x5580[79]][_0x5580[78]]}})[_0x5580[45]](handleEntityNotFound(_0x38e1x15,null,_0x5580[46]))[_0x5580[45]](saveUpdates(_0x38e1x28[_0x5580[82]],null,_0x5580[46]))[_0x5580[45]](respondWithResult(_0x38e1x15,null,_0x5580[46]))[_0x5580[75]](handleError(_0x38e1x15,null,_0x5580[46]))};exports[_0x5580[48]]= function(_0x38e1x28,_0x38e1x15){return db[_0x5580[56]][_0x5580[80]]({where:{id:_0x38e1x28[_0x5580[79]][_0x5580[78]]}})[_0x5580[45]](handleEntityNotFound(_0x38e1x15,null,_0x5580[48]))[_0x5580[45]](removeEntity(_0x38e1x15,null,_0x5580[48]))[_0x5580[75]](handleError(_0x38e1x15,null,_0x5580[48]))}
\ No newline at end of file
+var _0x778f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x778f[0];var jsonpatch=require(_0x778f[1]);var rp=require(_0x778f[2]);var moment=require(_0x778f[3]);var BPromise=require(_0x778f[4]);var util=require(_0x778f[5]);var path=require(_0x778f[6]);var sox=require(_0x778f[7]);var ejs=require(_0x778f[8]);var fs=require(_0x778f[9]);var _=require(_0x778f[10]);var squel=require(_0x778f[11]);var crypto=require(_0x778f[12]);var jsforce=require(_0x778f[13]);var toCsv=require(_0x778f[14]);var qs=require(_0x778f[15]);var logger=require(_0x778f[17])(_0x778f[16]);var utils=require(_0x778f[18]);var config=require(_0x778f[19]);var db=require(_0x778f[21])[_0x778f[20]];function respondWithStatusCode(_0x15a4x15,_0x15a4x16,_0x15a4x17){_0x15a4x16= _0x15a4x16|| 204;return function(_0x15a4x18){if(_0x15a4x18){logger[_0x778f[24]](_0x778f[22],_0x15a4x17,_0x15a4x16,_0x778f[23]);logger[_0x778f[26]](_0x778f[25],_0x15a4x17,_0x15a4x16,_0x778f[23]);return _0x15a4x15[_0x778f[27]](_0x15a4x16)};return _0x15a4x15[_0x778f[29]](304)[_0x778f[28]]()}}function respondWithResult(_0x15a4x15,_0x15a4x16,_0x15a4x17){_0x15a4x16= _0x15a4x16|| 200;return function(_0x15a4x18){if(_0x15a4x18){logger[_0x778f[24]](_0x778f[22],_0x15a4x17,_0x15a4x16,_0x778f[30]);logger[_0x778f[26]](_0x778f[25],_0x15a4x17,_0x15a4x16,_0x778f[30],JSON[_0x778f[31]](_0x15a4x18));return _0x15a4x15[_0x778f[29]](_0x15a4x16)[_0x778f[32]](_0x15a4x18)};return _0x15a4x15[_0x778f[29]](304)[_0x778f[28]]()}}function respondWithFilteredResult(_0x15a4x15,_0x15a4x1b,_0x15a4x17){return function(_0x15a4x18){if(_0x15a4x18){var _0x15a4x1c=_0x15a4x18[_0x778f[33]],_0x15a4x1d=_0x15a4x1b[_0x778f[34]],_0x15a4x1e=_0x15a4x1b[_0x778f[34]]+ _0x15a4x1b[_0x778f[35]],_0x15a4x16;if(_0x15a4x1e>= _0x15a4x1c){_0x15a4x1e= _0x15a4x1c;_0x15a4x16= 200}else {_0x15a4x16= 206};_0x15a4x15[_0x778f[29]](_0x15a4x16);logger[_0x778f[24]](_0x778f[22],_0x15a4x17,_0x15a4x16,_0x778f[36]);logger[_0x778f[26]](_0x778f[25],_0x15a4x17,_0x15a4x16,_0x778f[30],JSON[_0x778f[31]](_0x15a4x18));return _0x15a4x15[_0x778f[40]](_0x778f[37],_0x15a4x1d+ _0x778f[38]+ _0x15a4x1e+ _0x778f[39]+ _0x15a4x1c)[_0x778f[32]](_0x15a4x18)};return null}}function patchUpdates(_0x15a4x20){return function(_0x15a4x18){try{jsonpatch[_0x778f[41]](_0x15a4x18,_0x15a4x20,true)}catch(err){return BPromise[_0x778f[42]](err)};return _0x15a4x18[_0x778f[43]]()}}function saveUpdates(_0x15a4x22,_0x15a4x16,_0x15a4x17){return function(_0x15a4x18){if(_0x15a4x18){return _0x15a4x18[_0x778f[46]](_0x15a4x22)[_0x778f[45]](function(_0x15a4x23){logger[_0x778f[24]](_0x778f[22],_0x15a4x17,_0x15a4x16,_0x778f[44]);logger[_0x778f[26]](_0x778f[25],_0x15a4x17,_0x15a4x16,_0x778f[44],JSON[_0x778f[31]](_0x15a4x18));return _0x15a4x23})};return null}}function removeEntity(_0x15a4x15,_0x15a4x16,_0x15a4x17){return function(_0x15a4x18){if(_0x15a4x18){return _0x15a4x18[_0x778f[48]]()[_0x778f[45]](function(){logger[_0x778f[24]](_0x778f[22],_0x15a4x17,_0x15a4x16,_0x778f[47]);logger[_0x778f[26]](_0x778f[25],_0x15a4x17,_0x15a4x16,_0x778f[47],JSON[_0x778f[31]](_0x15a4x18));_0x15a4x15[_0x778f[29]](204)[_0x778f[28]]()})}}}function handleEntityNotFound(_0x15a4x15,_0x15a4x16,_0x15a4x17){return function(_0x15a4x18){if(!_0x15a4x18){logger[_0x778f[50]](_0x778f[22],_0x15a4x17,404,_0x778f[49]);_0x15a4x15[_0x778f[29]](404)[_0x778f[28]]();return null};return _0x15a4x18}}function handleError(_0x15a4x15,_0x15a4x16,_0x15a4x17){_0x15a4x16= _0x15a4x16|| 500;return function(_0x15a4x27){logger[_0x778f[50]](_0x778f[22],_0x15a4x17,_0x15a4x16,JSON[_0x778f[31]](_0x15a4x27));delete _0x15a4x27[_0x778f[51]];_0x15a4x15[_0x778f[29]](_0x15a4x16)[_0x778f[52]](_0x15a4x27)}}exports[_0x778f[53]]= function(_0x15a4x28,_0x15a4x15){var _0x15a4x1b={},_0x15a4x29={};_0x15a4x29[_0x778f[54]]= _[_0x778f[57]](db[_0x778f[56]][_0x778f[55]]);_0x15a4x29[_0x778f[58]]= _[_0x778f[57]](_0x15a4x28[_0x778f[58]]);_0x15a4x29[_0x778f[59]]= _[_0x778f[60]](_0x15a4x29[_0x778f[54]],_0x15a4x29[_0x778f[58]]);_0x15a4x1b[_0x778f[61]]= _[_0x778f[60]](_0x15a4x29[_0x778f[54]],qs[_0x778f[62]](_0x15a4x28[_0x778f[58]][_0x778f[62]]));_0x15a4x1b[_0x778f[61]]= (_0x15a4x1b[_0x778f[61]][_0x778f[63]])?_0x15a4x1b[_0x778f[61]]:_0x15a4x29[_0x778f[54]];if(!_0x15a4x28[_0x778f[58]][_0x778f[65]](_0x778f[64])){_0x15a4x1b[_0x778f[35]]= qs[_0x778f[35]](_0x15a4x28[_0x778f[58]][_0x778f[35]]);_0x15a4x1b[_0x778f[34]]= qs[_0x778f[34]](_0x15a4x28[_0x778f[58]][_0x778f[34]])};_0x15a4x1b[_0x778f[66]]= qs[_0x778f[67]](_0x15a4x28[_0x778f[58]][_0x778f[67]]);_0x15a4x1b[_0x778f[68]]= qs[_0x778f[59]](_[_0x778f[69]](_0x15a4x28[_0x778f[58]],_0x15a4x29[_0x778f[59]]));if(_0x15a4x28[_0x778f[58]][_0x778f[70]]){_0x15a4x1b[_0x778f[68]]= _[_0x778f[73]](_0x15a4x1b[_0x778f[68]],{$or:_[_0x778f[72]](_0x15a4x1b[_0x778f[61]],function(_0x15a4x2a){var _0x15a4x2b={};_0x15a4x2b[_0x15a4x2a]= {$like:_0x778f[71]+ _0x15a4x28[_0x778f[58]][_0x778f[70]]+ _0x778f[71]};return _0x15a4x2b})})};_0x15a4x1b= _[_0x778f[73]]({},_0x15a4x1b,_0x15a4x28[_0x778f[74]]);return db[_0x778f[56]][_0x778f[76]](_0x15a4x1b)[_0x778f[45]](respondWithFilteredResult(_0x15a4x15,_0x15a4x1b,_0x778f[53]))[_0x778f[75]](handleError(_0x15a4x15,null,_0x778f[53]))};exports[_0x778f[77]]= function(_0x15a4x28,_0x15a4x15){var _0x15a4x1b={raw:true,where:{id:_0x15a4x28[_0x778f[79]][_0x778f[78]]}},_0x15a4x29={};_0x15a4x29[_0x778f[54]]= _[_0x778f[57]](db[_0x778f[56]][_0x778f[55]]);_0x15a4x29[_0x778f[58]]= _[_0x778f[57]](_0x15a4x28[_0x778f[58]]);_0x15a4x29[_0x778f[59]]= _[_0x778f[60]](_0x15a4x29[_0x778f[54]],_0x15a4x29[_0x778f[58]]);_0x15a4x1b[_0x778f[61]]= _[_0x778f[60]](_0x15a4x29[_0x778f[54]],qs[_0x778f[62]](_0x15a4x28[_0x778f[58]][_0x778f[62]]));_0x15a4x1b[_0x778f[61]]= (_0x15a4x1b[_0x778f[61]][_0x778f[63]])?_0x15a4x1b[_0x778f[61]]:_0x15a4x29[_0x778f[54]];_0x15a4x1b= _[_0x778f[73]]({},_0x15a4x1b,_0x15a4x28[_0x778f[74]]);return db[_0x778f[56]][_0x778f[80]](_0x15a4x1b)[_0x778f[45]](handleEntityNotFound(_0x15a4x15,null,_0x778f[77]))[_0x778f[45]](respondWithResult(_0x15a4x15,null,_0x778f[77]))[_0x778f[75]](handleError(_0x15a4x15,null,_0x778f[77]))};exports[_0x778f[81]]= function(_0x15a4x28,_0x15a4x15){return db[_0x778f[56]][_0x778f[81]](_0x15a4x28[_0x778f[82]],{})[_0x778f[45]](respondWithResult(_0x15a4x15,201,_0x778f[81]))[_0x778f[75]](handleError(_0x15a4x15,null,_0x778f[81]))};exports[_0x778f[46]]= function(_0x15a4x28,_0x15a4x15){if(_0x15a4x28[_0x778f[82]][_0x778f[78]]){delete _0x15a4x28[_0x778f[82]][_0x778f[78]]};return db[_0x778f[56]][_0x778f[80]]({where:{id:_0x15a4x28[_0x778f[79]][_0x778f[78]]}})[_0x778f[45]](handleEntityNotFound(_0x15a4x15,null,_0x778f[46]))[_0x778f[45]](saveUpdates(_0x15a4x28[_0x778f[82]],null,_0x778f[46]))[_0x778f[45]](respondWithResult(_0x15a4x15,null,_0x778f[46]))[_0x778f[75]](handleError(_0x15a4x15,null,_0x778f[46]))};exports[_0x778f[48]]= function(_0x15a4x28,_0x15a4x15){return db[_0x778f[56]][_0x778f[80]]({where:{id:_0x15a4x28[_0x778f[79]][_0x778f[78]]}})[_0x778f[45]](handleEntityNotFound(_0x15a4x15,null,_0x778f[48]))[_0x778f[45]](removeEntity(_0x15a4x15,null,_0x778f[48]))[_0x778f[75]](handleError(_0x15a4x15,null,_0x778f[48]))}
\ No newline at end of file
index ee43fbd..0b4d506 100644 (file)
@@ -1 +1 @@
-var _0x730c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72","\x74\x6F\x6F\x6C\x73\x5F\x63\x61\x6E\x6E\x65\x64\x5F\x61\x6E\x73\x77\x65\x72\x73","\x64\x65\x66\x69\x6E\x65"];_0x730c[0];var _=require(_0x730c[1]);var util=require(_0x730c[2]);var logger=require(_0x730c[4])(_0x730c[3]);var attributes=require(_0x730c[5]);module[_0x730c[6]]= function(_0x9990x5,_0x9990x6){return _0x9990x5[_0x730c[9]](_0x730c[7],attributes,{tableName:_0x730c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xe463=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72","\x74\x6F\x6F\x6C\x73\x5F\x63\x61\x6E\x6E\x65\x64\x5F\x61\x6E\x73\x77\x65\x72\x73","\x64\x65\x66\x69\x6E\x65"];_0xe463[0];var _=require(_0xe463[1]);var util=require(_0xe463[2]);var logger=require(_0xe463[4])(_0xe463[3]);var attributes=require(_0xe463[5]);module[_0xe463[6]]= function(_0x76d4x5,_0x76d4x6){return _0x76d4x5[_0xe463[9]](_0xe463[7],attributes,{tableName:_0xe463[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index bf654f6..77fdffc 100644 (file)
@@ -1 +1 @@
-var _0x29d5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x29d5[0];var _=require(_0x29d5[1]);var util=require(_0x29d5[2]);var moment=require(_0x29d5[3]);var BPromise=require(_0x29d5[4]);var db=require(_0x29d5[6])[_0x29d5[5]];var utils=require(_0x29d5[7]);var logger=require(_0x29d5[9])(_0x29d5[8]);var jayson=require(_0x29d5[10]);var client=jayson[_0x29d5[12]][_0x29d5[11]]({port:9002});function respondWithRpcPromise(_0x37acxb,_0x37acxc,_0x37acxd){return  new BPromise(function(_0x37acxe,_0x37acxf){return client[_0x29d5[25]](_0x37acxb,_0x37acxd)[_0x29d5[24]](function(_0x37acx11){logger[_0x29d5[17]](_0x29d5[13],_0x37acxc,_0x29d5[16]);logger[_0x29d5[20]](_0x29d5[18],_0x37acxc,_0x29d5[16],JSON[_0x29d5[19]](_0x37acx11));if(_0x37acx11[_0x29d5[14]]){if(_0x37acx11[_0x29d5[14]][_0x29d5[21]]=== 500){logger[_0x29d5[14]](_0x29d5[13],_0x37acxc,_0x37acx11[_0x29d5[14]][_0x29d5[22]]);return _0x37acxf(_0x37acx11[_0x29d5[14]][_0x29d5[22]])};logger[_0x29d5[14]](_0x29d5[13],_0x37acxc,_0x37acx11[_0x29d5[14]][_0x29d5[22]]);return _0x37acxe(_0x37acx11[_0x29d5[14]][_0x29d5[22]])}else {logger[_0x29d5[17]](_0x29d5[13],_0x37acxc,_0x29d5[16]);_0x37acxe(_0x37acx11[_0x29d5[23]][_0x29d5[22]])}})[_0x29d5[15]](function(_0x37acx10){logger[_0x29d5[14]](_0x29d5[13],_0x37acxc,_0x37acx10);_0x37acxf(_0x37acx10)})})}
\ No newline at end of file
+var _0x31ef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x31ef[0];var _=require(_0x31ef[1]);var util=require(_0x31ef[2]);var moment=require(_0x31ef[3]);var BPromise=require(_0x31ef[4]);var db=require(_0x31ef[6])[_0x31ef[5]];var utils=require(_0x31ef[7]);var logger=require(_0x31ef[9])(_0x31ef[8]);var jayson=require(_0x31ef[10]);var client=jayson[_0x31ef[12]][_0x31ef[11]]({port:9002});function respondWithRpcPromise(_0x1cc3xb,_0x1cc3xc,_0x1cc3xd){return  new BPromise(function(_0x1cc3xe,_0x1cc3xf){return client[_0x31ef[25]](_0x1cc3xb,_0x1cc3xd)[_0x31ef[24]](function(_0x1cc3x11){logger[_0x31ef[17]](_0x31ef[13],_0x1cc3xc,_0x31ef[16]);logger[_0x31ef[20]](_0x31ef[18],_0x1cc3xc,_0x31ef[16],JSON[_0x31ef[19]](_0x1cc3x11));if(_0x1cc3x11[_0x31ef[14]]){if(_0x1cc3x11[_0x31ef[14]][_0x31ef[21]]=== 500){logger[_0x31ef[14]](_0x31ef[13],_0x1cc3xc,_0x1cc3x11[_0x31ef[14]][_0x31ef[22]]);return _0x1cc3xf(_0x1cc3x11[_0x31ef[14]][_0x31ef[22]])};logger[_0x31ef[14]](_0x31ef[13],_0x1cc3xc,_0x1cc3x11[_0x31ef[14]][_0x31ef[22]]);return _0x1cc3xe(_0x1cc3x11[_0x31ef[14]][_0x31ef[22]])}else {logger[_0x31ef[17]](_0x31ef[13],_0x1cc3xc,_0x31ef[16]);_0x1cc3xe(_0x1cc3x11[_0x31ef[23]][_0x31ef[22]])}})[_0x31ef[15]](function(_0x1cc3x10){logger[_0x31ef[14]](_0x31ef[13],_0x1cc3xc,_0x1cc3x10);_0x1cc3xf(_0x1cc3x10)})})}
\ No newline at end of file
index 585067d..c7d08ab 100644 (file)
@@ -1 +1 @@
-var _0x5ae3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5ae3[0];var multer=require(_0x5ae3[1]);var util=require(_0x5ae3[2]);var path=require(_0x5ae3[3]);var express=require(_0x5ae3[4]);var router=express.Router();var auth=require(_0x5ae3[5]);var config=require(_0x5ae3[6]);var controller=require(_0x5ae3[7]);router[_0x5ae3[11]](_0x5ae3[8],auth[_0x5ae3[9]](),controller[_0x5ae3[10]]);router[_0x5ae3[11]](_0x5ae3[12],auth[_0x5ae3[9]](),controller[_0x5ae3[13]]);router[_0x5ae3[15]](_0x5ae3[8],auth[_0x5ae3[9]](),controller[_0x5ae3[14]]);router[_0x5ae3[17]](_0x5ae3[12],auth[_0x5ae3[9]](),controller[_0x5ae3[16]]);router[_0x5ae3[19]](_0x5ae3[12],auth[_0x5ae3[9]](),controller[_0x5ae3[18]]);module[_0x5ae3[20]]= router
\ No newline at end of file
+var _0x7e9b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7e9b[0];var multer=require(_0x7e9b[1]);var util=require(_0x7e9b[2]);var path=require(_0x7e9b[3]);var express=require(_0x7e9b[4]);var router=express.Router();var auth=require(_0x7e9b[5]);var config=require(_0x7e9b[6]);var controller=require(_0x7e9b[7]);router[_0x7e9b[11]](_0x7e9b[8],auth[_0x7e9b[9]](),controller[_0x7e9b[10]]);router[_0x7e9b[11]](_0x7e9b[12],auth[_0x7e9b[9]](),controller[_0x7e9b[13]]);router[_0x7e9b[15]](_0x7e9b[8],auth[_0x7e9b[9]](),controller[_0x7e9b[14]]);router[_0x7e9b[17]](_0x7e9b[12],auth[_0x7e9b[9]](),controller[_0x7e9b[16]]);router[_0x7e9b[19]](_0x7e9b[12],auth[_0x7e9b[9]](),controller[_0x7e9b[18]]);module[_0x7e9b[20]]= router
\ No newline at end of file
index 08e82b9..d6715ad 100644 (file)
@@ -1 +1 @@
-var _0x2e40=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x44\x41\x54\x45","\x31\x39\x37\x30\x2D\x30\x31\x2D\x30\x31\x20\x30\x30\x3A\x30\x30\x3A\x30\x31","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52"];_0x2e40[0];var Sequelize=require(_0x2e40[1]);module[_0x2e40[2]]= {calldate:{type:Sequelize[_0x2e40[3]],allowNull:false,defaultValue:_0x2e40[4]},clid:{type:Sequelize[_0x2e40[5]]},src:{type:Sequelize[_0x2e40[5]]},dst:{type:Sequelize[_0x2e40[5]]},dcontext:{type:Sequelize[_0x2e40[5]]},channel:{type:Sequelize[_0x2e40[5]]},dstchannel:{type:Sequelize[_0x2e40[5]]},lastapp:{type:Sequelize[_0x2e40[5]]},lastdata:{type:Sequelize[_0x2e40[5]]},duration:{type:Sequelize[_0x2e40[6]],allowNull:false,defaultValue:0},billsec:{type:Sequelize[_0x2e40[6]],allowNull:false,defaultValue:0},disposition:{type:Sequelize[_0x2e40[5]]},amaflags:{type:Sequelize[_0x2e40[6]],allowNull:false,defaultValue:0},accountcode:{type:Sequelize[_0x2e40[5]]},userfield:{type:Sequelize[_0x2e40[5]]},uniqueid:{type:Sequelize[_0x2e40[5]]},linkedid:{type:Sequelize[_0x2e40[5]]},sequence:{type:Sequelize[_0x2e40[5]]},peeraccount:{type:Sequelize[_0x2e40[5]]},type:{type:Sequelize[_0x2e40[5]]},tag:{type:Sequelize[_0x2e40[5]]}}
\ No newline at end of file
+var _0x4c8d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x44\x41\x54\x45","\x31\x39\x37\x30\x2D\x30\x31\x2D\x30\x31\x20\x30\x30\x3A\x30\x30\x3A\x30\x31","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52"];_0x4c8d[0];var Sequelize=require(_0x4c8d[1]);module[_0x4c8d[2]]= {calldate:{type:Sequelize[_0x4c8d[3]],allowNull:false,defaultValue:_0x4c8d[4]},clid:{type:Sequelize[_0x4c8d[5]]},src:{type:Sequelize[_0x4c8d[5]]},dst:{type:Sequelize[_0x4c8d[5]]},dcontext:{type:Sequelize[_0x4c8d[5]]},channel:{type:Sequelize[_0x4c8d[5]]},dstchannel:{type:Sequelize[_0x4c8d[5]]},lastapp:{type:Sequelize[_0x4c8d[5]]},lastdata:{type:Sequelize[_0x4c8d[5]]},duration:{type:Sequelize[_0x4c8d[6]],allowNull:false,defaultValue:0},billsec:{type:Sequelize[_0x4c8d[6]],allowNull:false,defaultValue:0},disposition:{type:Sequelize[_0x4c8d[5]]},amaflags:{type:Sequelize[_0x4c8d[6]],allowNull:false,defaultValue:0},accountcode:{type:Sequelize[_0x4c8d[5]]},userfield:{type:Sequelize[_0x4c8d[5]]},uniqueid:{type:Sequelize[_0x4c8d[5]]},linkedid:{type:Sequelize[_0x4c8d[5]]},sequence:{type:Sequelize[_0x4c8d[5]]},peeraccount:{type:Sequelize[_0x4c8d[5]]},type:{type:Sequelize[_0x4c8d[5]]},tag:{type:Sequelize[_0x4c8d[5]]}}
\ No newline at end of file
index 76e4ecb..198d307 100644 (file)
@@ -1 +1 @@
-var _0x67ea=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x64\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x64\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x64\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x67ea[0];var jsonpatch=require(_0x67ea[1]);var rp=require(_0x67ea[2]);var moment=require(_0x67ea[3]);var BPromise=require(_0x67ea[4]);var util=require(_0x67ea[5]);var path=require(_0x67ea[6]);var sox=require(_0x67ea[7]);var ejs=require(_0x67ea[8]);var fs=require(_0x67ea[9]);var _=require(_0x67ea[10]);var squel=require(_0x67ea[11]);var crypto=require(_0x67ea[12]);var jsforce=require(_0x67ea[13]);var toCsv=require(_0x67ea[14]);var qs=require(_0x67ea[15]);var logger=require(_0x67ea[17])(_0x67ea[16]);var utils=require(_0x67ea[18]);var config=require(_0x67ea[19]);var db=require(_0x67ea[21])[_0x67ea[20]];function respondWithStatusCode(_0x6ed2x15,_0x6ed2x16,_0x6ed2x17){_0x6ed2x16= _0x6ed2x16|| 204;return function(_0x6ed2x18){if(_0x6ed2x18){logger[_0x67ea[24]](_0x67ea[22],_0x6ed2x17,_0x6ed2x16,_0x67ea[23]);logger[_0x67ea[26]](_0x67ea[25],_0x6ed2x17,_0x6ed2x16,_0x67ea[23]);return _0x6ed2x15[_0x67ea[27]](_0x6ed2x16)};return _0x6ed2x15[_0x67ea[29]](304)[_0x67ea[28]]()}}function respondWithResult(_0x6ed2x15,_0x6ed2x16,_0x6ed2x17){_0x6ed2x16= _0x6ed2x16|| 200;return function(_0x6ed2x18){if(_0x6ed2x18){logger[_0x67ea[24]](_0x67ea[22],_0x6ed2x17,_0x6ed2x16,_0x67ea[30]);logger[_0x67ea[26]](_0x67ea[25],_0x6ed2x17,_0x6ed2x16,_0x67ea[30],JSON[_0x67ea[31]](_0x6ed2x18));return _0x6ed2x15[_0x67ea[29]](_0x6ed2x16)[_0x67ea[32]](_0x6ed2x18)};return _0x6ed2x15[_0x67ea[29]](304)[_0x67ea[28]]()}}function respondWithFilteredResult(_0x6ed2x15,_0x6ed2x1b,_0x6ed2x17){return function(_0x6ed2x18){if(_0x6ed2x18){var _0x6ed2x1c=_0x6ed2x18[_0x67ea[33]],_0x6ed2x1d=_0x6ed2x1b[_0x67ea[34]],_0x6ed2x1e=_0x6ed2x1b[_0x67ea[34]]+ _0x6ed2x1b[_0x67ea[35]],_0x6ed2x16;if(_0x6ed2x1e>= _0x6ed2x1c){_0x6ed2x1e= _0x6ed2x1c;_0x6ed2x16= 200}else {_0x6ed2x16= 206};_0x6ed2x15[_0x67ea[29]](_0x6ed2x16);logger[_0x67ea[24]](_0x67ea[22],_0x6ed2x17,_0x6ed2x16,_0x67ea[36]);logger[_0x67ea[26]](_0x67ea[25],_0x6ed2x17,_0x6ed2x16,_0x67ea[30],JSON[_0x67ea[31]](_0x6ed2x18));return _0x6ed2x15[_0x67ea[40]](_0x67ea[37],_0x6ed2x1d+ _0x67ea[38]+ _0x6ed2x1e+ _0x67ea[39]+ _0x6ed2x1c)[_0x67ea[32]](_0x6ed2x18)};return null}}function patchUpdates(_0x6ed2x20){return function(_0x6ed2x18){try{jsonpatch[_0x67ea[41]](_0x6ed2x18,_0x6ed2x20,true)}catch(err){return BPromise[_0x67ea[42]](err)};return _0x6ed2x18[_0x67ea[43]]()}}function saveUpdates(_0x6ed2x22,_0x6ed2x16,_0x6ed2x17){return function(_0x6ed2x18){if(_0x6ed2x18){return _0x6ed2x18[_0x67ea[46]](_0x6ed2x22)[_0x67ea[45]](function(_0x6ed2x23){logger[_0x67ea[24]](_0x67ea[22],_0x6ed2x17,_0x6ed2x16,_0x67ea[44]);logger[_0x67ea[26]](_0x67ea[25],_0x6ed2x17,_0x6ed2x16,_0x67ea[44],JSON[_0x67ea[31]](_0x6ed2x18));return _0x6ed2x23})};return null}}function removeEntity(_0x6ed2x15,_0x6ed2x16,_0x6ed2x17){return function(_0x6ed2x18){if(_0x6ed2x18){return _0x6ed2x18[_0x67ea[48]]()[_0x67ea[45]](function(){logger[_0x67ea[24]](_0x67ea[22],_0x6ed2x17,_0x6ed2x16,_0x67ea[47]);logger[_0x67ea[26]](_0x67ea[25],_0x6ed2x17,_0x6ed2x16,_0x67ea[47],JSON[_0x67ea[31]](_0x6ed2x18));_0x6ed2x15[_0x67ea[29]](204)[_0x67ea[28]]()})}}}function handleEntityNotFound(_0x6ed2x15,_0x6ed2x16,_0x6ed2x17){return function(_0x6ed2x18){if(!_0x6ed2x18){logger[_0x67ea[50]](_0x67ea[22],_0x6ed2x17,404,_0x67ea[49]);_0x6ed2x15[_0x67ea[29]](404)[_0x67ea[28]]();return null};return _0x6ed2x18}}function handleError(_0x6ed2x15,_0x6ed2x16,_0x6ed2x17){_0x6ed2x16= _0x6ed2x16|| 500;return function(_0x6ed2x27){logger[_0x67ea[50]](_0x67ea[22],_0x6ed2x17,_0x6ed2x16,JSON[_0x67ea[31]](_0x6ed2x27));delete _0x6ed2x27[_0x67ea[51]];_0x6ed2x15[_0x67ea[29]](_0x6ed2x16)[_0x67ea[52]](_0x6ed2x27)}}exports[_0x67ea[53]]= function(_0x6ed2x28,_0x6ed2x15){var _0x6ed2x1b={},_0x6ed2x29={};_0x6ed2x29[_0x67ea[54]]= _[_0x67ea[57]](db[_0x67ea[56]][_0x67ea[55]]);_0x6ed2x29[_0x67ea[58]]= _[_0x67ea[57]](_0x6ed2x28[_0x67ea[58]]);_0x6ed2x29[_0x67ea[59]]= _[_0x67ea[60]](_0x6ed2x29[_0x67ea[54]],_0x6ed2x29[_0x67ea[58]]);_0x6ed2x1b[_0x67ea[61]]= _[_0x67ea[60]](_0x6ed2x29[_0x67ea[54]],qs[_0x67ea[62]](_0x6ed2x28[_0x67ea[58]][_0x67ea[62]]));_0x6ed2x1b[_0x67ea[61]]= (_0x6ed2x1b[_0x67ea[61]][_0x67ea[63]])?_0x6ed2x1b[_0x67ea[61]]:_0x6ed2x29[_0x67ea[54]];if(!_0x6ed2x28[_0x67ea[58]][_0x67ea[65]](_0x67ea[64])){_0x6ed2x1b[_0x67ea[35]]= qs[_0x67ea[35]](_0x6ed2x28[_0x67ea[58]][_0x67ea[35]]);_0x6ed2x1b[_0x67ea[34]]= qs[_0x67ea[34]](_0x6ed2x28[_0x67ea[58]][_0x67ea[34]])};_0x6ed2x1b[_0x67ea[66]]= qs[_0x67ea[67]](_0x6ed2x28[_0x67ea[58]][_0x67ea[67]]);_0x6ed2x1b[_0x67ea[68]]= qs[_0x67ea[59]](_[_0x67ea[69]](_0x6ed2x28[_0x67ea[58]],_0x6ed2x29[_0x67ea[59]]));if(_0x6ed2x28[_0x67ea[58]][_0x67ea[70]]){_0x6ed2x1b[_0x67ea[68]]= _[_0x67ea[73]](_0x6ed2x1b[_0x67ea[68]],{$or:_[_0x67ea[72]](_0x6ed2x1b[_0x67ea[61]],function(_0x6ed2x2a){var _0x6ed2x2b={};_0x6ed2x2b[_0x6ed2x2a]= {$like:_0x67ea[71]+ _0x6ed2x28[_0x67ea[58]][_0x67ea[70]]+ _0x67ea[71]};return _0x6ed2x2b})})};_0x6ed2x1b= _[_0x67ea[73]]({},_0x6ed2x1b,_0x6ed2x28[_0x67ea[74]]);return db[_0x67ea[56]][_0x67ea[76]](_0x6ed2x1b)[_0x67ea[45]](respondWithFilteredResult(_0x6ed2x15,_0x6ed2x1b,_0x67ea[53]))[_0x67ea[75]](handleError(_0x6ed2x15,null,_0x67ea[53]))};exports[_0x67ea[77]]= function(_0x6ed2x28,_0x6ed2x15){var _0x6ed2x1b={raw:true,where:{id:_0x6ed2x28[_0x67ea[79]][_0x67ea[78]]}},_0x6ed2x29={};_0x6ed2x29[_0x67ea[54]]= _[_0x67ea[57]](db[_0x67ea[56]][_0x67ea[55]]);_0x6ed2x29[_0x67ea[58]]= _[_0x67ea[57]](_0x6ed2x28[_0x67ea[58]]);_0x6ed2x29[_0x67ea[59]]= _[_0x67ea[60]](_0x6ed2x29[_0x67ea[54]],_0x6ed2x29[_0x67ea[58]]);_0x6ed2x1b[_0x67ea[61]]= _[_0x67ea[60]](_0x6ed2x29[_0x67ea[54]],qs[_0x67ea[62]](_0x6ed2x28[_0x67ea[58]][_0x67ea[62]]));_0x6ed2x1b[_0x67ea[61]]= (_0x6ed2x1b[_0x67ea[61]][_0x67ea[63]])?_0x6ed2x1b[_0x67ea[61]]:_0x6ed2x29[_0x67ea[54]];_0x6ed2x1b= _[_0x67ea[73]]({},_0x6ed2x1b,_0x6ed2x28[_0x67ea[74]]);return db[_0x67ea[56]][_0x67ea[80]](_0x6ed2x1b)[_0x67ea[45]](handleEntityNotFound(_0x6ed2x15,null,_0x67ea[77]))[_0x67ea[45]](respondWithResult(_0x6ed2x15,null,_0x67ea[77]))[_0x67ea[75]](handleError(_0x6ed2x15,null,_0x67ea[77]))};exports[_0x67ea[81]]= function(_0x6ed2x28,_0x6ed2x15){return db[_0x67ea[56]][_0x67ea[81]](_0x6ed2x28[_0x67ea[82]],{})[_0x67ea[45]](respondWithResult(_0x6ed2x15,201,_0x67ea[81]))[_0x67ea[75]](handleError(_0x6ed2x15,null,_0x67ea[81]))};exports[_0x67ea[46]]= function(_0x6ed2x28,_0x6ed2x15){if(_0x6ed2x28[_0x67ea[82]][_0x67ea[78]]){delete _0x6ed2x28[_0x67ea[82]][_0x67ea[78]]};return db[_0x67ea[56]][_0x67ea[80]]({where:{id:_0x6ed2x28[_0x67ea[79]][_0x67ea[78]]}})[_0x67ea[45]](handleEntityNotFound(_0x6ed2x15,null,_0x67ea[46]))[_0x67ea[45]](saveUpdates(_0x6ed2x28[_0x67ea[82]],null,_0x67ea[46]))[_0x67ea[45]](respondWithResult(_0x6ed2x15,null,_0x67ea[46]))[_0x67ea[75]](handleError(_0x6ed2x15,null,_0x67ea[46]))};exports[_0x67ea[48]]= function(_0x6ed2x28,_0x6ed2x15){return db[_0x67ea[56]][_0x67ea[80]]({where:{id:_0x6ed2x28[_0x67ea[79]][_0x67ea[78]]}})[_0x67ea[45]](handleEntityNotFound(_0x6ed2x15,null,_0x67ea[48]))[_0x67ea[45]](removeEntity(_0x6ed2x15,null,_0x67ea[48]))[_0x67ea[75]](handleError(_0x6ed2x15,null,_0x67ea[48]))}
\ No newline at end of file
+var _0xf4ef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x64\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x64\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x64\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xf4ef[0];var jsonpatch=require(_0xf4ef[1]);var rp=require(_0xf4ef[2]);var moment=require(_0xf4ef[3]);var BPromise=require(_0xf4ef[4]);var util=require(_0xf4ef[5]);var path=require(_0xf4ef[6]);var sox=require(_0xf4ef[7]);var ejs=require(_0xf4ef[8]);var fs=require(_0xf4ef[9]);var _=require(_0xf4ef[10]);var squel=require(_0xf4ef[11]);var crypto=require(_0xf4ef[12]);var jsforce=require(_0xf4ef[13]);var toCsv=require(_0xf4ef[14]);var qs=require(_0xf4ef[15]);var logger=require(_0xf4ef[17])(_0xf4ef[16]);var utils=require(_0xf4ef[18]);var config=require(_0xf4ef[19]);var db=require(_0xf4ef[21])[_0xf4ef[20]];function respondWithStatusCode(_0xbb2ex15,_0xbb2ex16,_0xbb2ex17){_0xbb2ex16= _0xbb2ex16|| 204;return function(_0xbb2ex18){if(_0xbb2ex18){logger[_0xf4ef[24]](_0xf4ef[22],_0xbb2ex17,_0xbb2ex16,_0xf4ef[23]);logger[_0xf4ef[26]](_0xf4ef[25],_0xbb2ex17,_0xbb2ex16,_0xf4ef[23]);return _0xbb2ex15[_0xf4ef[27]](_0xbb2ex16)};return _0xbb2ex15[_0xf4ef[29]](304)[_0xf4ef[28]]()}}function respondWithResult(_0xbb2ex15,_0xbb2ex16,_0xbb2ex17){_0xbb2ex16= _0xbb2ex16|| 200;return function(_0xbb2ex18){if(_0xbb2ex18){logger[_0xf4ef[24]](_0xf4ef[22],_0xbb2ex17,_0xbb2ex16,_0xf4ef[30]);logger[_0xf4ef[26]](_0xf4ef[25],_0xbb2ex17,_0xbb2ex16,_0xf4ef[30],JSON[_0xf4ef[31]](_0xbb2ex18));return _0xbb2ex15[_0xf4ef[29]](_0xbb2ex16)[_0xf4ef[32]](_0xbb2ex18)};return _0xbb2ex15[_0xf4ef[29]](304)[_0xf4ef[28]]()}}function respondWithFilteredResult(_0xbb2ex15,_0xbb2ex1b,_0xbb2ex17){return function(_0xbb2ex18){if(_0xbb2ex18){var _0xbb2ex1c=_0xbb2ex18[_0xf4ef[33]],_0xbb2ex1d=_0xbb2ex1b[_0xf4ef[34]],_0xbb2ex1e=_0xbb2ex1b[_0xf4ef[34]]+ _0xbb2ex1b[_0xf4ef[35]],_0xbb2ex16;if(_0xbb2ex1e>= _0xbb2ex1c){_0xbb2ex1e= _0xbb2ex1c;_0xbb2ex16= 200}else {_0xbb2ex16= 206};_0xbb2ex15[_0xf4ef[29]](_0xbb2ex16);logger[_0xf4ef[24]](_0xf4ef[22],_0xbb2ex17,_0xbb2ex16,_0xf4ef[36]);logger[_0xf4ef[26]](_0xf4ef[25],_0xbb2ex17,_0xbb2ex16,_0xf4ef[30],JSON[_0xf4ef[31]](_0xbb2ex18));return _0xbb2ex15[_0xf4ef[40]](_0xf4ef[37],_0xbb2ex1d+ _0xf4ef[38]+ _0xbb2ex1e+ _0xf4ef[39]+ _0xbb2ex1c)[_0xf4ef[32]](_0xbb2ex18)};return null}}function patchUpdates(_0xbb2ex20){return function(_0xbb2ex18){try{jsonpatch[_0xf4ef[41]](_0xbb2ex18,_0xbb2ex20,true)}catch(err){return BPromise[_0xf4ef[42]](err)};return _0xbb2ex18[_0xf4ef[43]]()}}function saveUpdates(_0xbb2ex22,_0xbb2ex16,_0xbb2ex17){return function(_0xbb2ex18){if(_0xbb2ex18){return _0xbb2ex18[_0xf4ef[46]](_0xbb2ex22)[_0xf4ef[45]](function(_0xbb2ex23){logger[_0xf4ef[24]](_0xf4ef[22],_0xbb2ex17,_0xbb2ex16,_0xf4ef[44]);logger[_0xf4ef[26]](_0xf4ef[25],_0xbb2ex17,_0xbb2ex16,_0xf4ef[44],JSON[_0xf4ef[31]](_0xbb2ex18));return _0xbb2ex23})};return null}}function removeEntity(_0xbb2ex15,_0xbb2ex16,_0xbb2ex17){return function(_0xbb2ex18){if(_0xbb2ex18){return _0xbb2ex18[_0xf4ef[48]]()[_0xf4ef[45]](function(){logger[_0xf4ef[24]](_0xf4ef[22],_0xbb2ex17,_0xbb2ex16,_0xf4ef[47]);logger[_0xf4ef[26]](_0xf4ef[25],_0xbb2ex17,_0xbb2ex16,_0xf4ef[47],JSON[_0xf4ef[31]](_0xbb2ex18));_0xbb2ex15[_0xf4ef[29]](204)[_0xf4ef[28]]()})}}}function handleEntityNotFound(_0xbb2ex15,_0xbb2ex16,_0xbb2ex17){return function(_0xbb2ex18){if(!_0xbb2ex18){logger[_0xf4ef[50]](_0xf4ef[22],_0xbb2ex17,404,_0xf4ef[49]);_0xbb2ex15[_0xf4ef[29]](404)[_0xf4ef[28]]();return null};return _0xbb2ex18}}function handleError(_0xbb2ex15,_0xbb2ex16,_0xbb2ex17){_0xbb2ex16= _0xbb2ex16|| 500;return function(_0xbb2ex27){logger[_0xf4ef[50]](_0xf4ef[22],_0xbb2ex17,_0xbb2ex16,JSON[_0xf4ef[31]](_0xbb2ex27));delete _0xbb2ex27[_0xf4ef[51]];_0xbb2ex15[_0xf4ef[29]](_0xbb2ex16)[_0xf4ef[52]](_0xbb2ex27)}}exports[_0xf4ef[53]]= function(_0xbb2ex28,_0xbb2ex15){var _0xbb2ex1b={},_0xbb2ex29={};_0xbb2ex29[_0xf4ef[54]]= _[_0xf4ef[57]](db[_0xf4ef[56]][_0xf4ef[55]]);_0xbb2ex29[_0xf4ef[58]]= _[_0xf4ef[57]](_0xbb2ex28[_0xf4ef[58]]);_0xbb2ex29[_0xf4ef[59]]= _[_0xf4ef[60]](_0xbb2ex29[_0xf4ef[54]],_0xbb2ex29[_0xf4ef[58]]);_0xbb2ex1b[_0xf4ef[61]]= _[_0xf4ef[60]](_0xbb2ex29[_0xf4ef[54]],qs[_0xf4ef[62]](_0xbb2ex28[_0xf4ef[58]][_0xf4ef[62]]));_0xbb2ex1b[_0xf4ef[61]]= (_0xbb2ex1b[_0xf4ef[61]][_0xf4ef[63]])?_0xbb2ex1b[_0xf4ef[61]]:_0xbb2ex29[_0xf4ef[54]];if(!_0xbb2ex28[_0xf4ef[58]][_0xf4ef[65]](_0xf4ef[64])){_0xbb2ex1b[_0xf4ef[35]]= qs[_0xf4ef[35]](_0xbb2ex28[_0xf4ef[58]][_0xf4ef[35]]);_0xbb2ex1b[_0xf4ef[34]]= qs[_0xf4ef[34]](_0xbb2ex28[_0xf4ef[58]][_0xf4ef[34]])};_0xbb2ex1b[_0xf4ef[66]]= qs[_0xf4ef[67]](_0xbb2ex28[_0xf4ef[58]][_0xf4ef[67]]);_0xbb2ex1b[_0xf4ef[68]]= qs[_0xf4ef[59]](_[_0xf4ef[69]](_0xbb2ex28[_0xf4ef[58]],_0xbb2ex29[_0xf4ef[59]]));if(_0xbb2ex28[_0xf4ef[58]][_0xf4ef[70]]){_0xbb2ex1b[_0xf4ef[68]]= _[_0xf4ef[73]](_0xbb2ex1b[_0xf4ef[68]],{$or:_[_0xf4ef[72]](_0xbb2ex1b[_0xf4ef[61]],function(_0xbb2ex2a){var _0xbb2ex2b={};_0xbb2ex2b[_0xbb2ex2a]= {$like:_0xf4ef[71]+ _0xbb2ex28[_0xf4ef[58]][_0xf4ef[70]]+ _0xf4ef[71]};return _0xbb2ex2b})})};_0xbb2ex1b= _[_0xf4ef[73]]({},_0xbb2ex1b,_0xbb2ex28[_0xf4ef[74]]);return db[_0xf4ef[56]][_0xf4ef[76]](_0xbb2ex1b)[_0xf4ef[45]](respondWithFilteredResult(_0xbb2ex15,_0xbb2ex1b,_0xf4ef[53]))[_0xf4ef[75]](handleError(_0xbb2ex15,null,_0xf4ef[53]))};exports[_0xf4ef[77]]= function(_0xbb2ex28,_0xbb2ex15){var _0xbb2ex1b={raw:true,where:{id:_0xbb2ex28[_0xf4ef[79]][_0xf4ef[78]]}},_0xbb2ex29={};_0xbb2ex29[_0xf4ef[54]]= _[_0xf4ef[57]](db[_0xf4ef[56]][_0xf4ef[55]]);_0xbb2ex29[_0xf4ef[58]]= _[_0xf4ef[57]](_0xbb2ex28[_0xf4ef[58]]);_0xbb2ex29[_0xf4ef[59]]= _[_0xf4ef[60]](_0xbb2ex29[_0xf4ef[54]],_0xbb2ex29[_0xf4ef[58]]);_0xbb2ex1b[_0xf4ef[61]]= _[_0xf4ef[60]](_0xbb2ex29[_0xf4ef[54]],qs[_0xf4ef[62]](_0xbb2ex28[_0xf4ef[58]][_0xf4ef[62]]));_0xbb2ex1b[_0xf4ef[61]]= (_0xbb2ex1b[_0xf4ef[61]][_0xf4ef[63]])?_0xbb2ex1b[_0xf4ef[61]]:_0xbb2ex29[_0xf4ef[54]];_0xbb2ex1b= _[_0xf4ef[73]]({},_0xbb2ex1b,_0xbb2ex28[_0xf4ef[74]]);return db[_0xf4ef[56]][_0xf4ef[80]](_0xbb2ex1b)[_0xf4ef[45]](handleEntityNotFound(_0xbb2ex15,null,_0xf4ef[77]))[_0xf4ef[45]](respondWithResult(_0xbb2ex15,null,_0xf4ef[77]))[_0xf4ef[75]](handleError(_0xbb2ex15,null,_0xf4ef[77]))};exports[_0xf4ef[81]]= function(_0xbb2ex28,_0xbb2ex15){return db[_0xf4ef[56]][_0xf4ef[81]](_0xbb2ex28[_0xf4ef[82]],{})[_0xf4ef[45]](respondWithResult(_0xbb2ex15,201,_0xf4ef[81]))[_0xf4ef[75]](handleError(_0xbb2ex15,null,_0xf4ef[81]))};exports[_0xf4ef[46]]= function(_0xbb2ex28,_0xbb2ex15){if(_0xbb2ex28[_0xf4ef[82]][_0xf4ef[78]]){delete _0xbb2ex28[_0xf4ef[82]][_0xf4ef[78]]};return db[_0xf4ef[56]][_0xf4ef[80]]({where:{id:_0xbb2ex28[_0xf4ef[79]][_0xf4ef[78]]}})[_0xf4ef[45]](handleEntityNotFound(_0xbb2ex15,null,_0xf4ef[46]))[_0xf4ef[45]](saveUpdates(_0xbb2ex28[_0xf4ef[82]],null,_0xf4ef[46]))[_0xf4ef[45]](respondWithResult(_0xbb2ex15,null,_0xf4ef[46]))[_0xf4ef[75]](handleError(_0xbb2ex15,null,_0xf4ef[46]))};exports[_0xf4ef[48]]= function(_0xbb2ex28,_0xbb2ex15){return db[_0xf4ef[56]][_0xf4ef[80]]({where:{id:_0xbb2ex28[_0xf4ef[79]][_0xf4ef[78]]}})[_0xf4ef[45]](handleEntityNotFound(_0xbb2ex15,null,_0xf4ef[48]))[_0xf4ef[45]](removeEntity(_0xbb2ex15,null,_0xf4ef[48]))[_0xf4ef[75]](handleError(_0xbb2ex15,null,_0xf4ef[48]))}
\ No newline at end of file
index 1eaf38e..95e9542 100644 (file)
@@ -1 +1 @@
-var _0x6136=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x64\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x64\x72","\x63\x64\x72","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x63\x61\x6C\x6C\x64\x61\x74\x65","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x64\x73\x74","\x73\x72\x63","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x66\x69\x6E\x65"];_0x6136[0];var _=require(_0x6136[1]);var util=require(_0x6136[2]);var logger=require(_0x6136[4])(_0x6136[3]);var attributes=require(_0x6136[5]);module[_0x6136[6]]= function(_0x98c0x5,_0x98c0x6){return _0x98c0x5[_0x6136[15]](_0x6136[7],attributes,{tableName:_0x6136[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0x6136[9],"\x66\x69\x65\x6C\x64\x73":[_0x6136[9]]},{"\x6E\x61\x6D\x65":_0x6136[10],"\x66\x69\x65\x6C\x64\x73":[_0x6136[10]]},{"\x6E\x61\x6D\x65":_0x6136[11],"\x66\x69\x65\x6C\x64\x73":[_0x6136[11]]},{"\x6E\x61\x6D\x65":_0x6136[12],"\x66\x69\x65\x6C\x64\x73":[_0x6136[12]]},{"\x6E\x61\x6D\x65":_0x6136[13],"\x66\x69\x65\x6C\x64\x73":[_0x6136[13]]},{"\x6E\x61\x6D\x65":_0x6136[14],"\x66\x69\x65\x6C\x64\x73":[_0x6136[14]]}],timestamps:false})}
\ No newline at end of file
+var _0x9b1f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x64\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x64\x72","\x63\x64\x72","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x63\x61\x6C\x6C\x64\x61\x74\x65","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x64\x73\x74","\x73\x72\x63","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x66\x69\x6E\x65"];_0x9b1f[0];var _=require(_0x9b1f[1]);var util=require(_0x9b1f[2]);var logger=require(_0x9b1f[4])(_0x9b1f[3]);var attributes=require(_0x9b1f[5]);module[_0x9b1f[6]]= function(_0xb8a9x5,_0xb8a9x6){return _0xb8a9x5[_0x9b1f[15]](_0x9b1f[7],attributes,{tableName:_0x9b1f[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0x9b1f[9],"\x66\x69\x65\x6C\x64\x73":[_0x9b1f[9]]},{"\x6E\x61\x6D\x65":_0x9b1f[10],"\x66\x69\x65\x6C\x64\x73":[_0x9b1f[10]]},{"\x6E\x61\x6D\x65":_0x9b1f[11],"\x66\x69\x65\x6C\x64\x73":[_0x9b1f[11]]},{"\x6E\x61\x6D\x65":_0x9b1f[12],"\x66\x69\x65\x6C\x64\x73":[_0x9b1f[12]]},{"\x6E\x61\x6D\x65":_0x9b1f[13],"\x66\x69\x65\x6C\x64\x73":[_0x9b1f[13]]},{"\x6E\x61\x6D\x65":_0x9b1f[14],"\x66\x69\x65\x6C\x64\x73":[_0x9b1f[14]]}],timestamps:false})}
\ No newline at end of file
index 4ea58a3..f89ebcb 100644 (file)
@@ -1 +1 @@
-var _0x42a4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x64\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x64\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x42a4[0];var _=require(_0x42a4[1]);var util=require(_0x42a4[2]);var moment=require(_0x42a4[3]);var BPromise=require(_0x42a4[4]);var db=require(_0x42a4[6])[_0x42a4[5]];var utils=require(_0x42a4[7]);var logger=require(_0x42a4[9])(_0x42a4[8]);var jayson=require(_0x42a4[10]);var client=jayson[_0x42a4[12]][_0x42a4[11]]({port:9002});function respondWithRpcPromise(_0x191bxb,_0x191bxc,_0x191bxd){return  new BPromise(function(_0x191bxe,_0x191bxf){return client[_0x42a4[25]](_0x191bxb,_0x191bxd)[_0x42a4[24]](function(_0x191bx11){logger[_0x42a4[17]](_0x42a4[13],_0x191bxc,_0x42a4[16]);logger[_0x42a4[20]](_0x42a4[18],_0x191bxc,_0x42a4[16],JSON[_0x42a4[19]](_0x191bx11));if(_0x191bx11[_0x42a4[14]]){if(_0x191bx11[_0x42a4[14]][_0x42a4[21]]=== 500){logger[_0x42a4[14]](_0x42a4[13],_0x191bxc,_0x191bx11[_0x42a4[14]][_0x42a4[22]]);return _0x191bxf(_0x191bx11[_0x42a4[14]][_0x42a4[22]])};logger[_0x42a4[14]](_0x42a4[13],_0x191bxc,_0x191bx11[_0x42a4[14]][_0x42a4[22]]);return _0x191bxe(_0x191bx11[_0x42a4[14]][_0x42a4[22]])}else {logger[_0x42a4[17]](_0x42a4[13],_0x191bxc,_0x42a4[16]);_0x191bxe(_0x191bx11[_0x42a4[23]][_0x42a4[22]])}})[_0x42a4[15]](function(_0x191bx10){logger[_0x42a4[14]](_0x42a4[13],_0x191bxc,_0x191bx10);_0x191bxf(_0x191bx10)})})}
\ No newline at end of file
+var _0x4a70=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x64\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x64\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x4a70[0];var _=require(_0x4a70[1]);var util=require(_0x4a70[2]);var moment=require(_0x4a70[3]);var BPromise=require(_0x4a70[4]);var db=require(_0x4a70[6])[_0x4a70[5]];var utils=require(_0x4a70[7]);var logger=require(_0x4a70[9])(_0x4a70[8]);var jayson=require(_0x4a70[10]);var client=jayson[_0x4a70[12]][_0x4a70[11]]({port:9002});function respondWithRpcPromise(_0xf836xb,_0xf836xc,_0xf836xd){return  new BPromise(function(_0xf836xe,_0xf836xf){return client[_0x4a70[25]](_0xf836xb,_0xf836xd)[_0x4a70[24]](function(_0xf836x11){logger[_0x4a70[17]](_0x4a70[13],_0xf836xc,_0x4a70[16]);logger[_0x4a70[20]](_0x4a70[18],_0xf836xc,_0x4a70[16],JSON[_0x4a70[19]](_0xf836x11));if(_0xf836x11[_0x4a70[14]]){if(_0xf836x11[_0x4a70[14]][_0x4a70[21]]=== 500){logger[_0x4a70[14]](_0x4a70[13],_0xf836xc,_0xf836x11[_0x4a70[14]][_0x4a70[22]]);return _0xf836xf(_0xf836x11[_0x4a70[14]][_0x4a70[22]])};logger[_0x4a70[14]](_0x4a70[13],_0xf836xc,_0xf836x11[_0x4a70[14]][_0x4a70[22]]);return _0xf836xe(_0xf836x11[_0x4a70[14]][_0x4a70[22]])}else {logger[_0x4a70[17]](_0x4a70[13],_0xf836xc,_0x4a70[16]);_0xf836xe(_0xf836x11[_0x4a70[23]][_0x4a70[22]])}})[_0x4a70[15]](function(_0xf836x10){logger[_0x4a70[14]](_0x4a70[13],_0xf836xc,_0xf836x10);_0xf836xf(_0xf836x10)})})}
\ No newline at end of file
index ed45187..dabe0fc 100644 (file)
@@ -1 +1 @@
-var _0xb5f4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x64\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb5f4[0];var multer=require(_0xb5f4[1]);var util=require(_0xb5f4[2]);var path=require(_0xb5f4[3]);var express=require(_0xb5f4[4]);var router=express.Router();var auth=require(_0xb5f4[5]);var config=require(_0xb5f4[6]);var controller=require(_0xb5f4[7]);router[_0xb5f4[11]](_0xb5f4[8],auth[_0xb5f4[9]](),controller[_0xb5f4[10]]);router[_0xb5f4[11]](_0xb5f4[12],auth[_0xb5f4[9]](),controller[_0xb5f4[13]]);router[_0xb5f4[15]](_0xb5f4[8],auth[_0xb5f4[9]](),controller[_0xb5f4[14]]);router[_0xb5f4[17]](_0xb5f4[12],auth[_0xb5f4[9]](),controller[_0xb5f4[16]]);router[_0xb5f4[19]](_0xb5f4[12],auth[_0xb5f4[9]](),controller[_0xb5f4[18]]);module[_0xb5f4[20]]= router
\ No newline at end of file
+var _0xeb1f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x64\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xeb1f[0];var multer=require(_0xeb1f[1]);var util=require(_0xeb1f[2]);var path=require(_0xeb1f[3]);var express=require(_0xeb1f[4]);var router=express.Router();var auth=require(_0xeb1f[5]);var config=require(_0xeb1f[6]);var controller=require(_0xeb1f[7]);router[_0xeb1f[11]](_0xeb1f[8],auth[_0xeb1f[9]](),controller[_0xeb1f[10]]);router[_0xeb1f[11]](_0xeb1f[12],auth[_0xeb1f[9]](),controller[_0xeb1f[13]]);router[_0xeb1f[15]](_0xeb1f[8],auth[_0xeb1f[9]](),controller[_0xeb1f[14]]);router[_0xeb1f[17]](_0xeb1f[12],auth[_0xeb1f[9]](),controller[_0xeb1f[16]]);router[_0xeb1f[19]](_0xeb1f[12],auth[_0xeb1f[9]](),controller[_0xeb1f[18]]);module[_0xeb1f[20]]= router
\ No newline at end of file
index 03becf9..23f6ea3 100644 (file)
@@ -1 +1 @@
-var _0xdf90=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64\x53\x6D\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0xdf90[0];var Sequelize=require(_0xdf90[1]);module[_0xdf90[2]]= {app:{type:Sequelize.ENUM(_0xdf90[3],_0xdf90[4],_0xdf90[5],_0xdf90[6]),allowNull:false},priority:{type:Sequelize[_0xdf90[7]],allowNull:false},timeout:{type:Sequelize[_0xdf90[7]],allowNull:false,validate:{min:1}},interval:{type:Sequelize[_0xdf90[8]]},data1:{type:Sequelize[_0xdf90[8]]},data2:{type:Sequelize[_0xdf90[8]]},data3:{type:Sequelize[_0xdf90[8]]},data4:{type:Sequelize[_0xdf90[8]]},data5:{type:Sequelize[_0xdf90[8]]},data6:{type:Sequelize[_0xdf90[8]]},data7:{type:Sequelize[_0xdf90[9]]},data8:{type:Sequelize[_0xdf90[7]]},data9:{type:Sequelize[_0xdf90[7]]},data10:{type:Sequelize[_0xdf90[7]]}}
\ No newline at end of file
+var _0xe165=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64\x53\x6D\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0xe165[0];var Sequelize=require(_0xe165[1]);module[_0xe165[2]]= {app:{type:Sequelize.ENUM(_0xe165[3],_0xe165[4],_0xe165[5],_0xe165[6]),allowNull:false},priority:{type:Sequelize[_0xe165[7]],allowNull:false},timeout:{type:Sequelize[_0xe165[7]],allowNull:false,validate:{min:1}},interval:{type:Sequelize[_0xe165[8]]},data1:{type:Sequelize[_0xe165[8]]},data2:{type:Sequelize[_0xe165[8]]},data3:{type:Sequelize[_0xe165[8]]},data4:{type:Sequelize[_0xe165[8]]},data5:{type:Sequelize[_0xe165[8]]},data6:{type:Sequelize[_0xe165[8]]},data7:{type:Sequelize[_0xe165[9]]},data8:{type:Sequelize[_0xe165[7]]},data9:{type:Sequelize[_0xe165[7]]},data10:{type:Sequelize[_0xe165[7]]}}
\ No newline at end of file
index dc454a4..f71804d 100644 (file)
@@ -1 +1 @@
-var _0x9a6b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x9a6b[0];var jsonpatch=require(_0x9a6b[1]);var rp=require(_0x9a6b[2]);var moment=require(_0x9a6b[3]);var BPromise=require(_0x9a6b[4]);var util=require(_0x9a6b[5]);var path=require(_0x9a6b[6]);var sox=require(_0x9a6b[7]);var ejs=require(_0x9a6b[8]);var fs=require(_0x9a6b[9]);var _=require(_0x9a6b[10]);var squel=require(_0x9a6b[11]);var crypto=require(_0x9a6b[12]);var jsforce=require(_0x9a6b[13]);var toCsv=require(_0x9a6b[14]);var qs=require(_0x9a6b[15]);var logger=require(_0x9a6b[17])(_0x9a6b[16]);var utils=require(_0x9a6b[18]);var config=require(_0x9a6b[19]);var db=require(_0x9a6b[21])[_0x9a6b[20]];function respondWithStatusCode(_0x59a1x15,_0x59a1x16,_0x59a1x17){_0x59a1x16= _0x59a1x16|| 204;return function(_0x59a1x18){if(_0x59a1x18){logger[_0x9a6b[24]](_0x9a6b[22],_0x59a1x17,_0x59a1x16,_0x9a6b[23]);logger[_0x9a6b[26]](_0x9a6b[25],_0x59a1x17,_0x59a1x16,_0x9a6b[23]);return _0x59a1x15[_0x9a6b[27]](_0x59a1x16)};return _0x59a1x15[_0x9a6b[29]](304)[_0x9a6b[28]]()}}function respondWithResult(_0x59a1x15,_0x59a1x16,_0x59a1x17){_0x59a1x16= _0x59a1x16|| 200;return function(_0x59a1x18){if(_0x59a1x18){logger[_0x9a6b[24]](_0x9a6b[22],_0x59a1x17,_0x59a1x16,_0x9a6b[30]);logger[_0x9a6b[26]](_0x9a6b[25],_0x59a1x17,_0x59a1x16,_0x9a6b[30],JSON[_0x9a6b[31]](_0x59a1x18));return _0x59a1x15[_0x9a6b[29]](_0x59a1x16)[_0x9a6b[32]](_0x59a1x18)};return _0x59a1x15[_0x9a6b[29]](304)[_0x9a6b[28]]()}}function respondWithFilteredResult(_0x59a1x15,_0x59a1x1b,_0x59a1x17){return function(_0x59a1x18){if(_0x59a1x18){var _0x59a1x1c=_0x59a1x18[_0x9a6b[33]],_0x59a1x1d=_0x59a1x1b[_0x9a6b[34]],_0x59a1x1e=_0x59a1x1b[_0x9a6b[34]]+ _0x59a1x1b[_0x9a6b[35]],_0x59a1x16;if(_0x59a1x1e>= _0x59a1x1c){_0x59a1x1e= _0x59a1x1c;_0x59a1x16= 200}else {_0x59a1x16= 206};_0x59a1x15[_0x9a6b[29]](_0x59a1x16);logger[_0x9a6b[24]](_0x9a6b[22],_0x59a1x17,_0x59a1x16,_0x9a6b[36]);logger[_0x9a6b[26]](_0x9a6b[25],_0x59a1x17,_0x59a1x16,_0x9a6b[30],JSON[_0x9a6b[31]](_0x59a1x18));return _0x59a1x15[_0x9a6b[40]](_0x9a6b[37],_0x59a1x1d+ _0x9a6b[38]+ _0x59a1x1e+ _0x9a6b[39]+ _0x59a1x1c)[_0x9a6b[32]](_0x59a1x18)};return null}}function patchUpdates(_0x59a1x20){return function(_0x59a1x18){try{jsonpatch[_0x9a6b[41]](_0x59a1x18,_0x59a1x20,true)}catch(err){return BPromise[_0x9a6b[42]](err)};return _0x59a1x18[_0x9a6b[43]]()}}function saveUpdates(_0x59a1x22,_0x59a1x16,_0x59a1x17){return function(_0x59a1x18){if(_0x59a1x18){return _0x59a1x18[_0x9a6b[46]](_0x59a1x22)[_0x9a6b[45]](function(_0x59a1x23){logger[_0x9a6b[24]](_0x9a6b[22],_0x59a1x17,_0x59a1x16,_0x9a6b[44]);logger[_0x9a6b[26]](_0x9a6b[25],_0x59a1x17,_0x59a1x16,_0x9a6b[44],JSON[_0x9a6b[31]](_0x59a1x18));return _0x59a1x23})};return null}}function removeEntity(_0x59a1x15,_0x59a1x16,_0x59a1x17){return function(_0x59a1x18){if(_0x59a1x18){return _0x59a1x18[_0x9a6b[48]]()[_0x9a6b[45]](function(){logger[_0x9a6b[24]](_0x9a6b[22],_0x59a1x17,_0x59a1x16,_0x9a6b[47]);logger[_0x9a6b[26]](_0x9a6b[25],_0x59a1x17,_0x59a1x16,_0x9a6b[47],JSON[_0x9a6b[31]](_0x59a1x18));_0x59a1x15[_0x9a6b[29]](204)[_0x9a6b[28]]()})}}}function handleEntityNotFound(_0x59a1x15,_0x59a1x16,_0x59a1x17){return function(_0x59a1x18){if(!_0x59a1x18){logger[_0x9a6b[50]](_0x9a6b[22],_0x59a1x17,404,_0x9a6b[49]);_0x59a1x15[_0x9a6b[29]](404)[_0x9a6b[28]]();return null};return _0x59a1x18}}function handleError(_0x59a1x15,_0x59a1x16,_0x59a1x17){_0x59a1x16= _0x59a1x16|| 500;return function(_0x59a1x27){logger[_0x9a6b[50]](_0x9a6b[22],_0x59a1x17,_0x59a1x16,JSON[_0x9a6b[31]](_0x59a1x27));delete _0x59a1x27[_0x9a6b[51]];_0x59a1x15[_0x9a6b[29]](_0x59a1x16)[_0x9a6b[52]](_0x59a1x27)}}exports[_0x9a6b[53]]= function(_0x59a1x28,_0x59a1x15){var _0x59a1x1b={raw:true,where:{id:_0x59a1x28[_0x9a6b[55]][_0x9a6b[54]]}},_0x59a1x29={};_0x59a1x29[_0x9a6b[56]]= _[_0x9a6b[59]](db[_0x9a6b[58]][_0x9a6b[57]]);_0x59a1x29[_0x9a6b[60]]= _[_0x9a6b[59]](_0x59a1x28[_0x9a6b[60]]);_0x59a1x29[_0x9a6b[61]]= _[_0x9a6b[62]](_0x59a1x29[_0x9a6b[56]],_0x59a1x29[_0x9a6b[60]]);_0x59a1x1b[_0x9a6b[63]]= _[_0x9a6b[62]](_0x59a1x29[_0x9a6b[56]],qs[_0x9a6b[64]](_0x59a1x28[_0x9a6b[60]][_0x9a6b[64]]));_0x59a1x1b[_0x9a6b[63]]= (_0x59a1x1b[_0x9a6b[63]][_0x9a6b[65]])?_0x59a1x1b[_0x9a6b[63]]:_0x59a1x29[_0x9a6b[56]];_0x59a1x1b= _[_0x9a6b[67]]({},_0x59a1x1b,_0x59a1x28[_0x9a6b[66]]);return db[_0x9a6b[58]][_0x9a6b[69]](_0x59a1x1b)[_0x9a6b[45]](handleEntityNotFound(_0x59a1x15,null,_0x9a6b[53]))[_0x9a6b[45]](respondWithResult(_0x59a1x15,null,_0x9a6b[53]))[_0x9a6b[68]](handleError(_0x59a1x15,null,_0x9a6b[53]))};exports[_0x9a6b[46]]= function(_0x59a1x28,_0x59a1x15){if(_0x59a1x28[_0x9a6b[70]][_0x9a6b[54]]){delete _0x59a1x28[_0x9a6b[70]][_0x9a6b[54]]};return db[_0x9a6b[58]][_0x9a6b[69]]({where:{id:_0x59a1x28[_0x9a6b[55]][_0x9a6b[54]]}})[_0x9a6b[45]](handleEntityNotFound(_0x59a1x15,null,_0x9a6b[46]))[_0x9a6b[45]](saveUpdates(_0x59a1x28[_0x9a6b[70]],null,_0x9a6b[46]))[_0x9a6b[45]](respondWithResult(_0x59a1x15,null,_0x9a6b[46]))[_0x9a6b[68]](handleError(_0x59a1x15,null,_0x9a6b[46]))};exports[_0x9a6b[48]]= function(_0x59a1x28,_0x59a1x15){return db[_0x9a6b[58]][_0x9a6b[69]]({where:{id:_0x59a1x28[_0x9a6b[55]][_0x9a6b[54]]}})[_0x9a6b[45]](handleEntityNotFound(_0x59a1x15,null,_0x9a6b[48]))[_0x9a6b[45]](removeEntity(_0x59a1x15,null,_0x9a6b[48]))[_0x9a6b[68]](handleError(_0x59a1x15,null,_0x9a6b[48]))}
\ No newline at end of file
+var _0x749f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x749f[0];var jsonpatch=require(_0x749f[1]);var rp=require(_0x749f[2]);var moment=require(_0x749f[3]);var BPromise=require(_0x749f[4]);var util=require(_0x749f[5]);var path=require(_0x749f[6]);var sox=require(_0x749f[7]);var ejs=require(_0x749f[8]);var fs=require(_0x749f[9]);var _=require(_0x749f[10]);var squel=require(_0x749f[11]);var crypto=require(_0x749f[12]);var jsforce=require(_0x749f[13]);var toCsv=require(_0x749f[14]);var qs=require(_0x749f[15]);var logger=require(_0x749f[17])(_0x749f[16]);var utils=require(_0x749f[18]);var config=require(_0x749f[19]);var db=require(_0x749f[21])[_0x749f[20]];function respondWithStatusCode(_0xb782x15,_0xb782x16,_0xb782x17){_0xb782x16= _0xb782x16|| 204;return function(_0xb782x18){if(_0xb782x18){logger[_0x749f[24]](_0x749f[22],_0xb782x17,_0xb782x16,_0x749f[23]);logger[_0x749f[26]](_0x749f[25],_0xb782x17,_0xb782x16,_0x749f[23]);return _0xb782x15[_0x749f[27]](_0xb782x16)};return _0xb782x15[_0x749f[29]](304)[_0x749f[28]]()}}function respondWithResult(_0xb782x15,_0xb782x16,_0xb782x17){_0xb782x16= _0xb782x16|| 200;return function(_0xb782x18){if(_0xb782x18){logger[_0x749f[24]](_0x749f[22],_0xb782x17,_0xb782x16,_0x749f[30]);logger[_0x749f[26]](_0x749f[25],_0xb782x17,_0xb782x16,_0x749f[30],JSON[_0x749f[31]](_0xb782x18));return _0xb782x15[_0x749f[29]](_0xb782x16)[_0x749f[32]](_0xb782x18)};return _0xb782x15[_0x749f[29]](304)[_0x749f[28]]()}}function respondWithFilteredResult(_0xb782x15,_0xb782x1b,_0xb782x17){return function(_0xb782x18){if(_0xb782x18){var _0xb782x1c=_0xb782x18[_0x749f[33]],_0xb782x1d=_0xb782x1b[_0x749f[34]],_0xb782x1e=_0xb782x1b[_0x749f[34]]+ _0xb782x1b[_0x749f[35]],_0xb782x16;if(_0xb782x1e>= _0xb782x1c){_0xb782x1e= _0xb782x1c;_0xb782x16= 200}else {_0xb782x16= 206};_0xb782x15[_0x749f[29]](_0xb782x16);logger[_0x749f[24]](_0x749f[22],_0xb782x17,_0xb782x16,_0x749f[36]);logger[_0x749f[26]](_0x749f[25],_0xb782x17,_0xb782x16,_0x749f[30],JSON[_0x749f[31]](_0xb782x18));return _0xb782x15[_0x749f[40]](_0x749f[37],_0xb782x1d+ _0x749f[38]+ _0xb782x1e+ _0x749f[39]+ _0xb782x1c)[_0x749f[32]](_0xb782x18)};return null}}function patchUpdates(_0xb782x20){return function(_0xb782x18){try{jsonpatch[_0x749f[41]](_0xb782x18,_0xb782x20,true)}catch(err){return BPromise[_0x749f[42]](err)};return _0xb782x18[_0x749f[43]]()}}function saveUpdates(_0xb782x22,_0xb782x16,_0xb782x17){return function(_0xb782x18){if(_0xb782x18){return _0xb782x18[_0x749f[46]](_0xb782x22)[_0x749f[45]](function(_0xb782x23){logger[_0x749f[24]](_0x749f[22],_0xb782x17,_0xb782x16,_0x749f[44]);logger[_0x749f[26]](_0x749f[25],_0xb782x17,_0xb782x16,_0x749f[44],JSON[_0x749f[31]](_0xb782x18));return _0xb782x23})};return null}}function removeEntity(_0xb782x15,_0xb782x16,_0xb782x17){return function(_0xb782x18){if(_0xb782x18){return _0xb782x18[_0x749f[48]]()[_0x749f[45]](function(){logger[_0x749f[24]](_0x749f[22],_0xb782x17,_0xb782x16,_0x749f[47]);logger[_0x749f[26]](_0x749f[25],_0xb782x17,_0xb782x16,_0x749f[47],JSON[_0x749f[31]](_0xb782x18));_0xb782x15[_0x749f[29]](204)[_0x749f[28]]()})}}}function handleEntityNotFound(_0xb782x15,_0xb782x16,_0xb782x17){return function(_0xb782x18){if(!_0xb782x18){logger[_0x749f[50]](_0x749f[22],_0xb782x17,404,_0x749f[49]);_0xb782x15[_0x749f[29]](404)[_0x749f[28]]();return null};return _0xb782x18}}function handleError(_0xb782x15,_0xb782x16,_0xb782x17){_0xb782x16= _0xb782x16|| 500;return function(_0xb782x27){logger[_0x749f[50]](_0x749f[22],_0xb782x17,_0xb782x16,JSON[_0x749f[31]](_0xb782x27));delete _0xb782x27[_0x749f[51]];_0xb782x15[_0x749f[29]](_0xb782x16)[_0x749f[52]](_0xb782x27)}}exports[_0x749f[53]]= function(_0xb782x28,_0xb782x15){var _0xb782x1b={raw:true,where:{id:_0xb782x28[_0x749f[55]][_0x749f[54]]}},_0xb782x29={};_0xb782x29[_0x749f[56]]= _[_0x749f[59]](db[_0x749f[58]][_0x749f[57]]);_0xb782x29[_0x749f[60]]= _[_0x749f[59]](_0xb782x28[_0x749f[60]]);_0xb782x29[_0x749f[61]]= _[_0x749f[62]](_0xb782x29[_0x749f[56]],_0xb782x29[_0x749f[60]]);_0xb782x1b[_0x749f[63]]= _[_0x749f[62]](_0xb782x29[_0x749f[56]],qs[_0x749f[64]](_0xb782x28[_0x749f[60]][_0x749f[64]]));_0xb782x1b[_0x749f[63]]= (_0xb782x1b[_0x749f[63]][_0x749f[65]])?_0xb782x1b[_0x749f[63]]:_0xb782x29[_0x749f[56]];_0xb782x1b= _[_0x749f[67]]({},_0xb782x1b,_0xb782x28[_0x749f[66]]);return db[_0x749f[58]][_0x749f[69]](_0xb782x1b)[_0x749f[45]](handleEntityNotFound(_0xb782x15,null,_0x749f[53]))[_0x749f[45]](respondWithResult(_0xb782x15,null,_0x749f[53]))[_0x749f[68]](handleError(_0xb782x15,null,_0x749f[53]))};exports[_0x749f[46]]= function(_0xb782x28,_0xb782x15){if(_0xb782x28[_0x749f[70]][_0x749f[54]]){delete _0xb782x28[_0x749f[70]][_0x749f[54]]};return db[_0x749f[58]][_0x749f[69]]({where:{id:_0xb782x28[_0x749f[55]][_0x749f[54]]}})[_0x749f[45]](handleEntityNotFound(_0xb782x15,null,_0x749f[46]))[_0x749f[45]](saveUpdates(_0xb782x28[_0x749f[70]],null,_0x749f[46]))[_0x749f[45]](respondWithResult(_0xb782x15,null,_0x749f[46]))[_0x749f[68]](handleError(_0xb782x15,null,_0x749f[46]))};exports[_0x749f[48]]= function(_0xb782x28,_0xb782x15){return db[_0x749f[58]][_0x749f[69]]({where:{id:_0xb782x28[_0x749f[55]][_0x749f[54]]}})[_0x749f[45]](handleEntityNotFound(_0xb782x15,null,_0x749f[48]))[_0x749f[45]](removeEntity(_0xb782x15,null,_0x749f[48]))[_0x749f[68]](handleError(_0xb782x15,null,_0x749f[48]))}
\ No newline at end of file
index b211b1c..29ee369 100644 (file)
@@ -1 +1 @@
-var _0x7a54=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x63\x68\x61\x74\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x7a54[0];var _=require(_0x7a54[1]);var util=require(_0x7a54[2]);var logger=require(_0x7a54[4])(_0x7a54[3]);var attributes=require(_0x7a54[5]);module[_0x7a54[6]]= function(_0xa749x5,_0xa749x6){return _0xa749x5[_0x7a54[9]](_0x7a54[7],attributes,{tableName:_0x7a54[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x60a5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x63\x68\x61\x74\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x60a5[0];var _=require(_0x60a5[1]);var util=require(_0x60a5[2]);var logger=require(_0x60a5[4])(_0x60a5[3]);var attributes=require(_0x60a5[5]);module[_0x60a5[6]]= function(_0x1b1cx5,_0x1b1cx6){return _0x1b1cx5[_0x60a5[9]](_0x60a5[7],attributes,{tableName:_0x60a5[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index a56d8f6..ed34709 100644 (file)
@@ -1 +1 @@
-var _0x56e6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x56e6[0];var _=require(_0x56e6[1]);var util=require(_0x56e6[2]);var moment=require(_0x56e6[3]);var BPromise=require(_0x56e6[4]);var db=require(_0x56e6[6])[_0x56e6[5]];var utils=require(_0x56e6[7]);var logger=require(_0x56e6[9])(_0x56e6[8]);var jayson=require(_0x56e6[10]);var client=jayson[_0x56e6[12]][_0x56e6[11]]({port:9002});function respondWithRpcPromise(_0x869cxb,_0x869cxc,_0x869cxd){return  new BPromise(function(_0x869cxe,_0x869cxf){return client[_0x56e6[25]](_0x869cxb,_0x869cxd)[_0x56e6[24]](function(_0x869cx11){logger[_0x56e6[17]](_0x56e6[13],_0x869cxc,_0x56e6[16]);logger[_0x56e6[20]](_0x56e6[18],_0x869cxc,_0x56e6[16],JSON[_0x56e6[19]](_0x869cx11));if(_0x869cx11[_0x56e6[14]]){if(_0x869cx11[_0x56e6[14]][_0x56e6[21]]=== 500){logger[_0x56e6[14]](_0x56e6[13],_0x869cxc,_0x869cx11[_0x56e6[14]][_0x56e6[22]]);return _0x869cxf(_0x869cx11[_0x56e6[14]][_0x56e6[22]])};logger[_0x56e6[14]](_0x56e6[13],_0x869cxc,_0x869cx11[_0x56e6[14]][_0x56e6[22]]);return _0x869cxe(_0x869cx11[_0x56e6[14]][_0x56e6[22]])}else {logger[_0x56e6[17]](_0x56e6[13],_0x869cxc,_0x56e6[16]);_0x869cxe(_0x869cx11[_0x56e6[23]][_0x56e6[22]])}})[_0x56e6[15]](function(_0x869cx10){logger[_0x56e6[14]](_0x56e6[13],_0x869cxc,_0x869cx10);_0x869cxf(_0x869cx10)})})}
\ No newline at end of file
+var _0xf032=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xf032[0];var _=require(_0xf032[1]);var util=require(_0xf032[2]);var moment=require(_0xf032[3]);var BPromise=require(_0xf032[4]);var db=require(_0xf032[6])[_0xf032[5]];var utils=require(_0xf032[7]);var logger=require(_0xf032[9])(_0xf032[8]);var jayson=require(_0xf032[10]);var client=jayson[_0xf032[12]][_0xf032[11]]({port:9002});function respondWithRpcPromise(_0x9c9fxb,_0x9c9fxc,_0x9c9fxd){return  new BPromise(function(_0x9c9fxe,_0x9c9fxf){return client[_0xf032[25]](_0x9c9fxb,_0x9c9fxd)[_0xf032[24]](function(_0x9c9fx11){logger[_0xf032[17]](_0xf032[13],_0x9c9fxc,_0xf032[16]);logger[_0xf032[20]](_0xf032[18],_0x9c9fxc,_0xf032[16],JSON[_0xf032[19]](_0x9c9fx11));if(_0x9c9fx11[_0xf032[14]]){if(_0x9c9fx11[_0xf032[14]][_0xf032[21]]=== 500){logger[_0xf032[14]](_0xf032[13],_0x9c9fxc,_0x9c9fx11[_0xf032[14]][_0xf032[22]]);return _0x9c9fxf(_0x9c9fx11[_0xf032[14]][_0xf032[22]])};logger[_0xf032[14]](_0xf032[13],_0x9c9fxc,_0x9c9fx11[_0xf032[14]][_0xf032[22]]);return _0x9c9fxe(_0x9c9fx11[_0xf032[14]][_0xf032[22]])}else {logger[_0xf032[17]](_0xf032[13],_0x9c9fxc,_0xf032[16]);_0x9c9fxe(_0x9c9fx11[_0xf032[23]][_0xf032[22]])}})[_0xf032[15]](function(_0x9c9fx10){logger[_0xf032[14]](_0xf032[13],_0x9c9fxc,_0x9c9fx10);_0x9c9fxf(_0x9c9fx10)})})}
\ No newline at end of file
index 3748ac4..785683e 100644 (file)
@@ -1 +1 @@
-var _0xf486=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf486[0];var multer=require(_0xf486[1]);var util=require(_0xf486[2]);var path=require(_0xf486[3]);var express=require(_0xf486[4]);var router=express.Router();var auth=require(_0xf486[5]);var config=require(_0xf486[6]);var controller=require(_0xf486[7]);router[_0xf486[11]](_0xf486[8],auth[_0xf486[9]](),controller[_0xf486[10]]);router[_0xf486[13]](_0xf486[8],auth[_0xf486[9]](),controller[_0xf486[12]]);router[_0xf486[15]](_0xf486[8],auth[_0xf486[9]](),controller[_0xf486[14]]);module[_0xf486[16]]= router
\ No newline at end of file
+var _0xfffd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xfffd[0];var multer=require(_0xfffd[1]);var util=require(_0xfffd[2]);var path=require(_0xfffd[3]);var express=require(_0xfffd[4]);var router=express.Router();var auth=require(_0xfffd[5]);var config=require(_0xfffd[6]);var controller=require(_0xfffd[7]);router[_0xfffd[11]](_0xfffd[8],auth[_0xfffd[9]](),controller[_0xfffd[10]]);router[_0xfffd[13]](_0xfffd[8],auth[_0xfffd[9]](),controller[_0xfffd[12]]);router[_0xfffd[15]](_0xfffd[8],auth[_0xfffd[9]](),controller[_0xfffd[14]]);module[_0xfffd[16]]= router
\ No newline at end of file
index e58b18a..b7576fd 100644 (file)
@@ -1 +1 @@
-var _0xc3c2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xc3c2[0];var Sequelize=require(_0xc3c2[1]);module[_0xc3c2[2]]= {name:{type:Sequelize[_0xc3c2[3]],allowNull:false}}
\ No newline at end of file
+var _0xb1e9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xb1e9[0];var Sequelize=require(_0xb1e9[1]);module[_0xb1e9[2]]= {name:{type:Sequelize[_0xb1e9[3]],allowNull:false}}
\ No newline at end of file
index 09c8aec..a3af622 100644 (file)
@@ -1 +1 @@
-var _0xaacf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xaacf[0];var jsonpatch=require(_0xaacf[1]);var rp=require(_0xaacf[2]);var moment=require(_0xaacf[3]);var BPromise=require(_0xaacf[4]);var util=require(_0xaacf[5]);var path=require(_0xaacf[6]);var sox=require(_0xaacf[7]);var ejs=require(_0xaacf[8]);var fs=require(_0xaacf[9]);var _=require(_0xaacf[10]);var squel=require(_0xaacf[11]);var crypto=require(_0xaacf[12]);var jsforce=require(_0xaacf[13]);var toCsv=require(_0xaacf[14]);var qs=require(_0xaacf[15]);var logger=require(_0xaacf[17])(_0xaacf[16]);var utils=require(_0xaacf[18]);var config=require(_0xaacf[19]);var db=require(_0xaacf[21])[_0xaacf[20]];function respondWithStatusCode(_0x2536x15,_0x2536x16,_0x2536x17){_0x2536x16= _0x2536x16|| 204;return function(_0x2536x18){if(_0x2536x18){logger[_0xaacf[24]](_0xaacf[22],_0x2536x17,_0x2536x16,_0xaacf[23]);logger[_0xaacf[26]](_0xaacf[25],_0x2536x17,_0x2536x16,_0xaacf[23]);return _0x2536x15[_0xaacf[27]](_0x2536x16)};return _0x2536x15[_0xaacf[29]](304)[_0xaacf[28]]()}}function respondWithResult(_0x2536x15,_0x2536x16,_0x2536x17){_0x2536x16= _0x2536x16|| 200;return function(_0x2536x18){if(_0x2536x18){logger[_0xaacf[24]](_0xaacf[22],_0x2536x17,_0x2536x16,_0xaacf[30]);logger[_0xaacf[26]](_0xaacf[25],_0x2536x17,_0x2536x16,_0xaacf[30],JSON[_0xaacf[31]](_0x2536x18));return _0x2536x15[_0xaacf[29]](_0x2536x16)[_0xaacf[32]](_0x2536x18)};return _0x2536x15[_0xaacf[29]](304)[_0xaacf[28]]()}}function respondWithFilteredResult(_0x2536x15,_0x2536x1b,_0x2536x17){return function(_0x2536x18){if(_0x2536x18){var _0x2536x1c=_0x2536x18[_0xaacf[33]],_0x2536x1d=_0x2536x1b[_0xaacf[34]],_0x2536x1e=_0x2536x1b[_0xaacf[34]]+ _0x2536x1b[_0xaacf[35]],_0x2536x16;if(_0x2536x1e>= _0x2536x1c){_0x2536x1e= _0x2536x1c;_0x2536x16= 200}else {_0x2536x16= 206};_0x2536x15[_0xaacf[29]](_0x2536x16);logger[_0xaacf[24]](_0xaacf[22],_0x2536x17,_0x2536x16,_0xaacf[36]);logger[_0xaacf[26]](_0xaacf[25],_0x2536x17,_0x2536x16,_0xaacf[30],JSON[_0xaacf[31]](_0x2536x18));return _0x2536x15[_0xaacf[40]](_0xaacf[37],_0x2536x1d+ _0xaacf[38]+ _0x2536x1e+ _0xaacf[39]+ _0x2536x1c)[_0xaacf[32]](_0x2536x18)};return null}}function patchUpdates(_0x2536x20){return function(_0x2536x18){try{jsonpatch[_0xaacf[41]](_0x2536x18,_0x2536x20,true)}catch(err){return BPromise[_0xaacf[42]](err)};return _0x2536x18[_0xaacf[43]]()}}function saveUpdates(_0x2536x22,_0x2536x16,_0x2536x17){return function(_0x2536x18){if(_0x2536x18){return _0x2536x18[_0xaacf[46]](_0x2536x22)[_0xaacf[45]](function(_0x2536x23){logger[_0xaacf[24]](_0xaacf[22],_0x2536x17,_0x2536x16,_0xaacf[44]);logger[_0xaacf[26]](_0xaacf[25],_0x2536x17,_0x2536x16,_0xaacf[44],JSON[_0xaacf[31]](_0x2536x18));return _0x2536x23})};return null}}function removeEntity(_0x2536x15,_0x2536x16,_0x2536x17){return function(_0x2536x18){if(_0x2536x18){return _0x2536x18[_0xaacf[48]]()[_0xaacf[45]](function(){logger[_0xaacf[24]](_0xaacf[22],_0x2536x17,_0x2536x16,_0xaacf[47]);logger[_0xaacf[26]](_0xaacf[25],_0x2536x17,_0x2536x16,_0xaacf[47],JSON[_0xaacf[31]](_0x2536x18));_0x2536x15[_0xaacf[29]](204)[_0xaacf[28]]()})}}}function handleEntityNotFound(_0x2536x15,_0x2536x16,_0x2536x17){return function(_0x2536x18){if(!_0x2536x18){logger[_0xaacf[50]](_0xaacf[22],_0x2536x17,404,_0xaacf[49]);_0x2536x15[_0xaacf[29]](404)[_0xaacf[28]]();return null};return _0x2536x18}}function handleError(_0x2536x15,_0x2536x16,_0x2536x17){_0x2536x16= _0x2536x16|| 500;return function(_0x2536x27){logger[_0xaacf[50]](_0xaacf[22],_0x2536x17,_0x2536x16,JSON[_0xaacf[31]](_0x2536x27));delete _0x2536x27[_0xaacf[51]];_0x2536x15[_0xaacf[29]](_0x2536x16)[_0xaacf[52]](_0x2536x27)}}exports[_0xaacf[53]]= function(_0x2536x28,_0x2536x15){var _0x2536x1b={raw:true,where:{id:_0x2536x28[_0xaacf[55]][_0xaacf[54]]}},_0x2536x29={};_0x2536x29[_0xaacf[56]]= _[_0xaacf[59]](db[_0xaacf[58]][_0xaacf[57]]);_0x2536x29[_0xaacf[60]]= _[_0xaacf[59]](_0x2536x28[_0xaacf[60]]);_0x2536x29[_0xaacf[61]]= _[_0xaacf[62]](_0x2536x29[_0xaacf[56]],_0x2536x29[_0xaacf[60]]);_0x2536x1b[_0xaacf[63]]= _[_0xaacf[62]](_0x2536x29[_0xaacf[56]],qs[_0xaacf[64]](_0x2536x28[_0xaacf[60]][_0xaacf[64]]));_0x2536x1b[_0xaacf[63]]= (_0x2536x1b[_0xaacf[63]][_0xaacf[65]])?_0x2536x1b[_0xaacf[63]]:_0x2536x29[_0xaacf[56]];_0x2536x1b= _[_0xaacf[67]]({},_0x2536x1b,_0x2536x28[_0xaacf[66]]);return db[_0xaacf[58]][_0xaacf[69]](_0x2536x1b)[_0xaacf[45]](handleEntityNotFound(_0x2536x15,null,_0xaacf[53]))[_0xaacf[45]](respondWithResult(_0x2536x15,null,_0xaacf[53]))[_0xaacf[68]](handleError(_0x2536x15,null,_0xaacf[53]))};exports[_0xaacf[70]]= function(_0x2536x28,_0x2536x15){return db[_0xaacf[58]][_0xaacf[70]](_0x2536x28[_0xaacf[71]],{})[_0xaacf[45]](respondWithResult(_0x2536x15,201,_0xaacf[70]))[_0xaacf[68]](handleError(_0x2536x15,null,_0xaacf[70]))};exports[_0xaacf[46]]= function(_0x2536x28,_0x2536x15){if(_0x2536x28[_0xaacf[71]][_0xaacf[54]]){delete _0x2536x28[_0xaacf[71]][_0xaacf[54]]};return db[_0xaacf[58]][_0xaacf[69]]({where:{id:_0x2536x28[_0xaacf[55]][_0xaacf[54]]}})[_0xaacf[45]](handleEntityNotFound(_0x2536x15,null,_0xaacf[46]))[_0xaacf[45]](saveUpdates(_0x2536x28[_0xaacf[71]],null,_0xaacf[46]))[_0xaacf[45]](respondWithResult(_0x2536x15,null,_0xaacf[46]))[_0xaacf[68]](handleError(_0x2536x15,null,_0xaacf[46]))};exports[_0xaacf[48]]= function(_0x2536x28,_0x2536x15){return db[_0xaacf[58]][_0xaacf[69]]({where:{id:_0x2536x28[_0xaacf[55]][_0xaacf[54]]}})[_0xaacf[45]](handleEntityNotFound(_0x2536x15,null,_0xaacf[48]))[_0xaacf[45]](removeEntity(_0x2536x15,null,_0xaacf[48]))[_0xaacf[68]](handleError(_0x2536x15,null,_0xaacf[48]))}
\ No newline at end of file
+var _0x7411=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x7411[0];var jsonpatch=require(_0x7411[1]);var rp=require(_0x7411[2]);var moment=require(_0x7411[3]);var BPromise=require(_0x7411[4]);var util=require(_0x7411[5]);var path=require(_0x7411[6]);var sox=require(_0x7411[7]);var ejs=require(_0x7411[8]);var fs=require(_0x7411[9]);var _=require(_0x7411[10]);var squel=require(_0x7411[11]);var crypto=require(_0x7411[12]);var jsforce=require(_0x7411[13]);var toCsv=require(_0x7411[14]);var qs=require(_0x7411[15]);var logger=require(_0x7411[17])(_0x7411[16]);var utils=require(_0x7411[18]);var config=require(_0x7411[19]);var db=require(_0x7411[21])[_0x7411[20]];function respondWithStatusCode(_0x4095x15,_0x4095x16,_0x4095x17){_0x4095x16= _0x4095x16|| 204;return function(_0x4095x18){if(_0x4095x18){logger[_0x7411[24]](_0x7411[22],_0x4095x17,_0x4095x16,_0x7411[23]);logger[_0x7411[26]](_0x7411[25],_0x4095x17,_0x4095x16,_0x7411[23]);return _0x4095x15[_0x7411[27]](_0x4095x16)};return _0x4095x15[_0x7411[29]](304)[_0x7411[28]]()}}function respondWithResult(_0x4095x15,_0x4095x16,_0x4095x17){_0x4095x16= _0x4095x16|| 200;return function(_0x4095x18){if(_0x4095x18){logger[_0x7411[24]](_0x7411[22],_0x4095x17,_0x4095x16,_0x7411[30]);logger[_0x7411[26]](_0x7411[25],_0x4095x17,_0x4095x16,_0x7411[30],JSON[_0x7411[31]](_0x4095x18));return _0x4095x15[_0x7411[29]](_0x4095x16)[_0x7411[32]](_0x4095x18)};return _0x4095x15[_0x7411[29]](304)[_0x7411[28]]()}}function respondWithFilteredResult(_0x4095x15,_0x4095x1b,_0x4095x17){return function(_0x4095x18){if(_0x4095x18){var _0x4095x1c=_0x4095x18[_0x7411[33]],_0x4095x1d=_0x4095x1b[_0x7411[34]],_0x4095x1e=_0x4095x1b[_0x7411[34]]+ _0x4095x1b[_0x7411[35]],_0x4095x16;if(_0x4095x1e>= _0x4095x1c){_0x4095x1e= _0x4095x1c;_0x4095x16= 200}else {_0x4095x16= 206};_0x4095x15[_0x7411[29]](_0x4095x16);logger[_0x7411[24]](_0x7411[22],_0x4095x17,_0x4095x16,_0x7411[36]);logger[_0x7411[26]](_0x7411[25],_0x4095x17,_0x4095x16,_0x7411[30],JSON[_0x7411[31]](_0x4095x18));return _0x4095x15[_0x7411[40]](_0x7411[37],_0x4095x1d+ _0x7411[38]+ _0x4095x1e+ _0x7411[39]+ _0x4095x1c)[_0x7411[32]](_0x4095x18)};return null}}function patchUpdates(_0x4095x20){return function(_0x4095x18){try{jsonpatch[_0x7411[41]](_0x4095x18,_0x4095x20,true)}catch(err){return BPromise[_0x7411[42]](err)};return _0x4095x18[_0x7411[43]]()}}function saveUpdates(_0x4095x22,_0x4095x16,_0x4095x17){return function(_0x4095x18){if(_0x4095x18){return _0x4095x18[_0x7411[46]](_0x4095x22)[_0x7411[45]](function(_0x4095x23){logger[_0x7411[24]](_0x7411[22],_0x4095x17,_0x4095x16,_0x7411[44]);logger[_0x7411[26]](_0x7411[25],_0x4095x17,_0x4095x16,_0x7411[44],JSON[_0x7411[31]](_0x4095x18));return _0x4095x23})};return null}}function removeEntity(_0x4095x15,_0x4095x16,_0x4095x17){return function(_0x4095x18){if(_0x4095x18){return _0x4095x18[_0x7411[48]]()[_0x7411[45]](function(){logger[_0x7411[24]](_0x7411[22],_0x4095x17,_0x4095x16,_0x7411[47]);logger[_0x7411[26]](_0x7411[25],_0x4095x17,_0x4095x16,_0x7411[47],JSON[_0x7411[31]](_0x4095x18));_0x4095x15[_0x7411[29]](204)[_0x7411[28]]()})}}}function handleEntityNotFound(_0x4095x15,_0x4095x16,_0x4095x17){return function(_0x4095x18){if(!_0x4095x18){logger[_0x7411[50]](_0x7411[22],_0x4095x17,404,_0x7411[49]);_0x4095x15[_0x7411[29]](404)[_0x7411[28]]();return null};return _0x4095x18}}function handleError(_0x4095x15,_0x4095x16,_0x4095x17){_0x4095x16= _0x4095x16|| 500;return function(_0x4095x27){logger[_0x7411[50]](_0x7411[22],_0x4095x17,_0x4095x16,JSON[_0x7411[31]](_0x4095x27));delete _0x4095x27[_0x7411[51]];_0x4095x15[_0x7411[29]](_0x4095x16)[_0x7411[52]](_0x4095x27)}}exports[_0x7411[53]]= function(_0x4095x28,_0x4095x15){var _0x4095x1b={raw:true,where:{id:_0x4095x28[_0x7411[55]][_0x7411[54]]}},_0x4095x29={};_0x4095x29[_0x7411[56]]= _[_0x7411[59]](db[_0x7411[58]][_0x7411[57]]);_0x4095x29[_0x7411[60]]= _[_0x7411[59]](_0x4095x28[_0x7411[60]]);_0x4095x29[_0x7411[61]]= _[_0x7411[62]](_0x4095x29[_0x7411[56]],_0x4095x29[_0x7411[60]]);_0x4095x1b[_0x7411[63]]= _[_0x7411[62]](_0x4095x29[_0x7411[56]],qs[_0x7411[64]](_0x4095x28[_0x7411[60]][_0x7411[64]]));_0x4095x1b[_0x7411[63]]= (_0x4095x1b[_0x7411[63]][_0x7411[65]])?_0x4095x1b[_0x7411[63]]:_0x4095x29[_0x7411[56]];_0x4095x1b= _[_0x7411[67]]({},_0x4095x1b,_0x4095x28[_0x7411[66]]);return db[_0x7411[58]][_0x7411[69]](_0x4095x1b)[_0x7411[45]](handleEntityNotFound(_0x4095x15,null,_0x7411[53]))[_0x7411[45]](respondWithResult(_0x4095x15,null,_0x7411[53]))[_0x7411[68]](handleError(_0x4095x15,null,_0x7411[53]))};exports[_0x7411[70]]= function(_0x4095x28,_0x4095x15){return db[_0x7411[58]][_0x7411[70]](_0x4095x28[_0x7411[71]],{})[_0x7411[45]](respondWithResult(_0x4095x15,201,_0x7411[70]))[_0x7411[68]](handleError(_0x4095x15,null,_0x7411[70]))};exports[_0x7411[46]]= function(_0x4095x28,_0x4095x15){if(_0x4095x28[_0x7411[71]][_0x7411[54]]){delete _0x4095x28[_0x7411[71]][_0x7411[54]]};return db[_0x7411[58]][_0x7411[69]]({where:{id:_0x4095x28[_0x7411[55]][_0x7411[54]]}})[_0x7411[45]](handleEntityNotFound(_0x4095x15,null,_0x7411[46]))[_0x7411[45]](saveUpdates(_0x4095x28[_0x7411[71]],null,_0x7411[46]))[_0x7411[45]](respondWithResult(_0x4095x15,null,_0x7411[46]))[_0x7411[68]](handleError(_0x4095x15,null,_0x7411[46]))};exports[_0x7411[48]]= function(_0x4095x28,_0x4095x15){return db[_0x7411[58]][_0x7411[69]]({where:{id:_0x4095x28[_0x7411[55]][_0x7411[54]]}})[_0x7411[45]](handleEntityNotFound(_0x4095x15,null,_0x7411[48]))[_0x7411[45]](removeEntity(_0x4095x15,null,_0x7411[48]))[_0x7411[68]](handleError(_0x4095x15,null,_0x7411[48]))}
\ No newline at end of file
index 418bd3f..48986fa 100644 (file)
@@ -1 +1 @@
-var _0x7b3f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x68\x61\x74\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x7b3f[0];var _=require(_0x7b3f[1]);var util=require(_0x7b3f[2]);var logger=require(_0x7b3f[4])(_0x7b3f[3]);var attributes=require(_0x7b3f[5]);module[_0x7b3f[6]]= function(_0x7fc6x5,_0x7fc6x6){return _0x7fc6x5[_0x7b3f[9]](_0x7b3f[7],attributes,{tableName:_0x7b3f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x2303=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x68\x61\x74\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x2303[0];var _=require(_0x2303[1]);var util=require(_0x2303[2]);var logger=require(_0x2303[4])(_0x2303[3]);var attributes=require(_0x2303[5]);module[_0x2303[6]]= function(_0x9835x5,_0x9835x6){return _0x9835x5[_0x2303[9]](_0x2303[7],attributes,{tableName:_0x2303[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index d8d1cbf..d91c286 100644 (file)
@@ -1 +1 @@
-var _0xa285=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xa285[0];var _=require(_0xa285[1]);var util=require(_0xa285[2]);var moment=require(_0xa285[3]);var BPromise=require(_0xa285[4]);var db=require(_0xa285[6])[_0xa285[5]];var utils=require(_0xa285[7]);var logger=require(_0xa285[9])(_0xa285[8]);var jayson=require(_0xa285[10]);var client=jayson[_0xa285[12]][_0xa285[11]]({port:9002});function respondWithRpcPromise(_0xda97xb,_0xda97xc,_0xda97xd){return  new BPromise(function(_0xda97xe,_0xda97xf){return client[_0xa285[25]](_0xda97xb,_0xda97xd)[_0xa285[24]](function(_0xda97x11){logger[_0xa285[17]](_0xa285[13],_0xda97xc,_0xa285[16]);logger[_0xa285[20]](_0xa285[18],_0xda97xc,_0xa285[16],JSON[_0xa285[19]](_0xda97x11));if(_0xda97x11[_0xa285[14]]){if(_0xda97x11[_0xa285[14]][_0xa285[21]]=== 500){logger[_0xa285[14]](_0xa285[13],_0xda97xc,_0xda97x11[_0xa285[14]][_0xa285[22]]);return _0xda97xf(_0xda97x11[_0xa285[14]][_0xa285[22]])};logger[_0xa285[14]](_0xa285[13],_0xda97xc,_0xda97x11[_0xa285[14]][_0xa285[22]]);return _0xda97xe(_0xda97x11[_0xa285[14]][_0xa285[22]])}else {logger[_0xa285[17]](_0xa285[13],_0xda97xc,_0xa285[16]);_0xda97xe(_0xda97x11[_0xa285[23]][_0xa285[22]])}})[_0xa285[15]](function(_0xda97x10){logger[_0xa285[14]](_0xa285[13],_0xda97xc,_0xda97x10);_0xda97xf(_0xda97x10)})})}
\ No newline at end of file
+var _0x10e2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x10e2[0];var _=require(_0x10e2[1]);var util=require(_0x10e2[2]);var moment=require(_0x10e2[3]);var BPromise=require(_0x10e2[4]);var db=require(_0x10e2[6])[_0x10e2[5]];var utils=require(_0x10e2[7]);var logger=require(_0x10e2[9])(_0x10e2[8]);var jayson=require(_0x10e2[10]);var client=jayson[_0x10e2[12]][_0x10e2[11]]({port:9002});function respondWithRpcPromise(_0x55edxb,_0x55edxc,_0x55edxd){return  new BPromise(function(_0x55edxe,_0x55edxf){return client[_0x10e2[25]](_0x55edxb,_0x55edxd)[_0x10e2[24]](function(_0x55edx11){logger[_0x10e2[17]](_0x10e2[13],_0x55edxc,_0x10e2[16]);logger[_0x10e2[20]](_0x10e2[18],_0x55edxc,_0x10e2[16],JSON[_0x10e2[19]](_0x55edx11));if(_0x55edx11[_0x10e2[14]]){if(_0x55edx11[_0x10e2[14]][_0x10e2[21]]=== 500){logger[_0x10e2[14]](_0x10e2[13],_0x55edxc,_0x55edx11[_0x10e2[14]][_0x10e2[22]]);return _0x55edxf(_0x55edx11[_0x10e2[14]][_0x10e2[22]])};logger[_0x10e2[14]](_0x10e2[13],_0x55edxc,_0x55edx11[_0x10e2[14]][_0x10e2[22]]);return _0x55edxe(_0x55edx11[_0x10e2[14]][_0x10e2[22]])}else {logger[_0x10e2[17]](_0x10e2[13],_0x55edxc,_0x10e2[16]);_0x55edxe(_0x55edx11[_0x10e2[23]][_0x10e2[22]])}})[_0x10e2[15]](function(_0x55edx10){logger[_0x10e2[14]](_0x10e2[13],_0x55edxc,_0x55edx10);_0x55edxf(_0x55edx10)})})}
\ No newline at end of file
index 4c29a2d..aa9751e 100644 (file)
@@ -1 +1 @@
-var _0xd97e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd97e[0];var multer=require(_0xd97e[1]);var util=require(_0xd97e[2]);var path=require(_0xd97e[3]);var express=require(_0xd97e[4]);var router=express.Router();var auth=require(_0xd97e[5]);var config=require(_0xd97e[6]);var controller=require(_0xd97e[7]);router[_0xd97e[11]](_0xd97e[8],auth[_0xd97e[9]](),controller[_0xd97e[10]]);router[_0xd97e[14]](_0xd97e[12],auth[_0xd97e[9]](),controller[_0xd97e[13]]);router[_0xd97e[16]](_0xd97e[8],auth[_0xd97e[9]](),controller[_0xd97e[15]]);router[_0xd97e[18]](_0xd97e[8],auth[_0xd97e[9]](),controller[_0xd97e[17]]);module[_0xd97e[19]]= router
\ No newline at end of file
+var _0x9639=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x9639[0];var multer=require(_0x9639[1]);var util=require(_0x9639[2]);var path=require(_0x9639[3]);var express=require(_0x9639[4]);var router=express.Router();var auth=require(_0x9639[5]);var config=require(_0x9639[6]);var controller=require(_0x9639[7]);router[_0x9639[11]](_0x9639[8],auth[_0x9639[9]](),controller[_0x9639[10]]);router[_0x9639[14]](_0x9639[12],auth[_0x9639[9]](),controller[_0x9639[13]]);router[_0x9639[16]](_0x9639[8],auth[_0x9639[9]](),controller[_0x9639[15]]);router[_0x9639[18]](_0x9639[8],auth[_0x9639[9]](),controller[_0x9639[17]]);module[_0x9639[19]]= router
\ No newline at end of file
index f991ca4..aed33fd 100644 (file)
@@ -1 +1 @@
-var _0x67c4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x67c4[0];var Sequelize=require(_0x67c4[1]);module[_0x67c4[2]]= {username:{type:Sequelize[_0x67c4[3]]},email:{type:Sequelize[_0x67c4[3]],validate:{isEmail:true}},text:{type:Sequelize[_0x67c4[4]]},read:{type:Sequelize[_0x67c4[5]],defaultValue:false}}
\ No newline at end of file
+var _0xa20c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xa20c[0];var Sequelize=require(_0xa20c[1]);module[_0xa20c[2]]= {username:{type:Sequelize[_0xa20c[3]]},email:{type:Sequelize[_0xa20c[3]],validate:{isEmail:true}},text:{type:Sequelize[_0xa20c[4]]},read:{type:Sequelize[_0xa20c[5]],defaultValue:false}}
\ No newline at end of file
index d3ad267..c72e2fb 100644 (file)
@@ -1 +1 @@
-var _0x81c3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x81c3[0];var jsonpatch=require(_0x81c3[1]);var rp=require(_0x81c3[2]);var moment=require(_0x81c3[3]);var BPromise=require(_0x81c3[4]);var util=require(_0x81c3[5]);var path=require(_0x81c3[6]);var sox=require(_0x81c3[7]);var ejs=require(_0x81c3[8]);var fs=require(_0x81c3[9]);var _=require(_0x81c3[10]);var squel=require(_0x81c3[11]);var crypto=require(_0x81c3[12]);var jsforce=require(_0x81c3[13]);var toCsv=require(_0x81c3[14]);var qs=require(_0x81c3[15]);var logger=require(_0x81c3[17])(_0x81c3[16]);var utils=require(_0x81c3[18]);var config=require(_0x81c3[19]);var db=require(_0x81c3[21])[_0x81c3[20]];function respondWithStatusCode(_0xd8f4x15,_0xd8f4x16,_0xd8f4x17){_0xd8f4x16= _0xd8f4x16|| 204;return function(_0xd8f4x18){if(_0xd8f4x18){logger[_0x81c3[24]](_0x81c3[22],_0xd8f4x17,_0xd8f4x16,_0x81c3[23]);logger[_0x81c3[26]](_0x81c3[25],_0xd8f4x17,_0xd8f4x16,_0x81c3[23]);return _0xd8f4x15[_0x81c3[27]](_0xd8f4x16)};return _0xd8f4x15[_0x81c3[29]](304)[_0x81c3[28]]()}}function respondWithResult(_0xd8f4x15,_0xd8f4x16,_0xd8f4x17){_0xd8f4x16= _0xd8f4x16|| 200;return function(_0xd8f4x18){if(_0xd8f4x18){logger[_0x81c3[24]](_0x81c3[22],_0xd8f4x17,_0xd8f4x16,_0x81c3[30]);logger[_0x81c3[26]](_0x81c3[25],_0xd8f4x17,_0xd8f4x16,_0x81c3[30],JSON[_0x81c3[31]](_0xd8f4x18));return _0xd8f4x15[_0x81c3[29]](_0xd8f4x16)[_0x81c3[32]](_0xd8f4x18)};return _0xd8f4x15[_0x81c3[29]](304)[_0x81c3[28]]()}}function respondWithFilteredResult(_0xd8f4x15,_0xd8f4x1b,_0xd8f4x17){return function(_0xd8f4x18){if(_0xd8f4x18){var _0xd8f4x1c=_0xd8f4x18[_0x81c3[33]],_0xd8f4x1d=_0xd8f4x1b[_0x81c3[34]],_0xd8f4x1e=_0xd8f4x1b[_0x81c3[34]]+ _0xd8f4x1b[_0x81c3[35]],_0xd8f4x16;if(_0xd8f4x1e>= _0xd8f4x1c){_0xd8f4x1e= _0xd8f4x1c;_0xd8f4x16= 200}else {_0xd8f4x16= 206};_0xd8f4x15[_0x81c3[29]](_0xd8f4x16);logger[_0x81c3[24]](_0x81c3[22],_0xd8f4x17,_0xd8f4x16,_0x81c3[36]);logger[_0x81c3[26]](_0x81c3[25],_0xd8f4x17,_0xd8f4x16,_0x81c3[30],JSON[_0x81c3[31]](_0xd8f4x18));return _0xd8f4x15[_0x81c3[40]](_0x81c3[37],_0xd8f4x1d+ _0x81c3[38]+ _0xd8f4x1e+ _0x81c3[39]+ _0xd8f4x1c)[_0x81c3[32]](_0xd8f4x18)};return null}}function patchUpdates(_0xd8f4x20){return function(_0xd8f4x18){try{jsonpatch[_0x81c3[41]](_0xd8f4x18,_0xd8f4x20,true)}catch(err){return BPromise[_0x81c3[42]](err)};return _0xd8f4x18[_0x81c3[43]]()}}function saveUpdates(_0xd8f4x22,_0xd8f4x16,_0xd8f4x17){return function(_0xd8f4x18){if(_0xd8f4x18){return _0xd8f4x18[_0x81c3[46]](_0xd8f4x22)[_0x81c3[45]](function(_0xd8f4x23){logger[_0x81c3[24]](_0x81c3[22],_0xd8f4x17,_0xd8f4x16,_0x81c3[44]);logger[_0x81c3[26]](_0x81c3[25],_0xd8f4x17,_0xd8f4x16,_0x81c3[44],JSON[_0x81c3[31]](_0xd8f4x18));return _0xd8f4x23})};return null}}function removeEntity(_0xd8f4x15,_0xd8f4x16,_0xd8f4x17){return function(_0xd8f4x18){if(_0xd8f4x18){return _0xd8f4x18[_0x81c3[48]]()[_0x81c3[45]](function(){logger[_0x81c3[24]](_0x81c3[22],_0xd8f4x17,_0xd8f4x16,_0x81c3[47]);logger[_0x81c3[26]](_0x81c3[25],_0xd8f4x17,_0xd8f4x16,_0x81c3[47],JSON[_0x81c3[31]](_0xd8f4x18));_0xd8f4x15[_0x81c3[29]](204)[_0x81c3[28]]()})}}}function handleEntityNotFound(_0xd8f4x15,_0xd8f4x16,_0xd8f4x17){return function(_0xd8f4x18){if(!_0xd8f4x18){logger[_0x81c3[50]](_0x81c3[22],_0xd8f4x17,404,_0x81c3[49]);_0xd8f4x15[_0x81c3[29]](404)[_0x81c3[28]]();return null};return _0xd8f4x18}}function handleError(_0xd8f4x15,_0xd8f4x16,_0xd8f4x17){_0xd8f4x16= _0xd8f4x16|| 500;return function(_0xd8f4x27){logger[_0x81c3[50]](_0x81c3[22],_0xd8f4x17,_0xd8f4x16,JSON[_0x81c3[31]](_0xd8f4x27));delete _0xd8f4x27[_0x81c3[51]];_0xd8f4x15[_0x81c3[29]](_0xd8f4x16)[_0x81c3[52]](_0xd8f4x27)}}exports[_0x81c3[53]]= function(_0xd8f4x28,_0xd8f4x15){var _0xd8f4x1b={raw:false,where:{id:_0xd8f4x28[_0x81c3[55]][_0x81c3[54]]}},_0xd8f4x29={};_0xd8f4x29[_0x81c3[56]]= _[_0x81c3[59]](db[_0x81c3[58]][_0x81c3[57]]);_0xd8f4x29[_0x81c3[60]]= _[_0x81c3[59]](_0xd8f4x28[_0x81c3[60]]);_0xd8f4x29[_0x81c3[61]]= _[_0x81c3[62]](_0xd8f4x29[_0x81c3[56]],_0xd8f4x29[_0x81c3[60]]);_0xd8f4x1b[_0x81c3[63]]= _[_0x81c3[62]](_0xd8f4x29[_0x81c3[56]],qs[_0x81c3[64]](_0xd8f4x28[_0x81c3[60]][_0x81c3[64]]));_0xd8f4x1b[_0x81c3[63]]= (_0xd8f4x1b[_0x81c3[63]][_0x81c3[65]])?_0xd8f4x1b[_0x81c3[63]]:_0xd8f4x29[_0x81c3[56]];_0xd8f4x1b= _[_0x81c3[67]]({},_0xd8f4x1b,_0xd8f4x28[_0x81c3[66]]);return db[_0x81c3[58]][_0x81c3[69]](_0xd8f4x1b)[_0x81c3[45]](handleEntityNotFound(_0xd8f4x15,null,_0x81c3[53]))[_0x81c3[45]](respondWithResult(_0xd8f4x15,null,_0x81c3[53]))[_0x81c3[68]](handleError(_0xd8f4x15,null,_0x81c3[53]))};exports[_0x81c3[46]]= function(_0xd8f4x28,_0xd8f4x15){if(_0xd8f4x28[_0x81c3[70]][_0x81c3[54]]){delete _0xd8f4x28[_0x81c3[70]][_0x81c3[54]]};return db[_0x81c3[58]][_0x81c3[69]]({where:{id:_0xd8f4x28[_0x81c3[55]][_0x81c3[54]]}})[_0x81c3[45]](handleEntityNotFound(_0xd8f4x15,null,_0x81c3[46]))[_0x81c3[45]](saveUpdates(_0xd8f4x28[_0x81c3[70]],null,_0x81c3[46]))[_0x81c3[45]](respondWithResult(_0xd8f4x15,null,_0x81c3[46]))[_0x81c3[68]](handleError(_0xd8f4x15,null,_0x81c3[46]))};exports[_0x81c3[48]]= function(_0xd8f4x28,_0xd8f4x15){return db[_0x81c3[58]][_0x81c3[69]]({where:{id:_0xd8f4x28[_0x81c3[55]][_0x81c3[54]]}})[_0x81c3[45]](handleEntityNotFound(_0xd8f4x15,null,_0x81c3[48]))[_0x81c3[45]](removeEntity(_0xd8f4x15,null,_0x81c3[48]))[_0x81c3[68]](handleError(_0xd8f4x15,null,_0x81c3[48]))}
\ No newline at end of file
+var _0x95a5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x95a5[0];var jsonpatch=require(_0x95a5[1]);var rp=require(_0x95a5[2]);var moment=require(_0x95a5[3]);var BPromise=require(_0x95a5[4]);var util=require(_0x95a5[5]);var path=require(_0x95a5[6]);var sox=require(_0x95a5[7]);var ejs=require(_0x95a5[8]);var fs=require(_0x95a5[9]);var _=require(_0x95a5[10]);var squel=require(_0x95a5[11]);var crypto=require(_0x95a5[12]);var jsforce=require(_0x95a5[13]);var toCsv=require(_0x95a5[14]);var qs=require(_0x95a5[15]);var logger=require(_0x95a5[17])(_0x95a5[16]);var utils=require(_0x95a5[18]);var config=require(_0x95a5[19]);var db=require(_0x95a5[21])[_0x95a5[20]];function respondWithStatusCode(_0xae8bx15,_0xae8bx16,_0xae8bx17){_0xae8bx16= _0xae8bx16|| 204;return function(_0xae8bx18){if(_0xae8bx18){logger[_0x95a5[24]](_0x95a5[22],_0xae8bx17,_0xae8bx16,_0x95a5[23]);logger[_0x95a5[26]](_0x95a5[25],_0xae8bx17,_0xae8bx16,_0x95a5[23]);return _0xae8bx15[_0x95a5[27]](_0xae8bx16)};return _0xae8bx15[_0x95a5[29]](304)[_0x95a5[28]]()}}function respondWithResult(_0xae8bx15,_0xae8bx16,_0xae8bx17){_0xae8bx16= _0xae8bx16|| 200;return function(_0xae8bx18){if(_0xae8bx18){logger[_0x95a5[24]](_0x95a5[22],_0xae8bx17,_0xae8bx16,_0x95a5[30]);logger[_0x95a5[26]](_0x95a5[25],_0xae8bx17,_0xae8bx16,_0x95a5[30],JSON[_0x95a5[31]](_0xae8bx18));return _0xae8bx15[_0x95a5[29]](_0xae8bx16)[_0x95a5[32]](_0xae8bx18)};return _0xae8bx15[_0x95a5[29]](304)[_0x95a5[28]]()}}function respondWithFilteredResult(_0xae8bx15,_0xae8bx1b,_0xae8bx17){return function(_0xae8bx18){if(_0xae8bx18){var _0xae8bx1c=_0xae8bx18[_0x95a5[33]],_0xae8bx1d=_0xae8bx1b[_0x95a5[34]],_0xae8bx1e=_0xae8bx1b[_0x95a5[34]]+ _0xae8bx1b[_0x95a5[35]],_0xae8bx16;if(_0xae8bx1e>= _0xae8bx1c){_0xae8bx1e= _0xae8bx1c;_0xae8bx16= 200}else {_0xae8bx16= 206};_0xae8bx15[_0x95a5[29]](_0xae8bx16);logger[_0x95a5[24]](_0x95a5[22],_0xae8bx17,_0xae8bx16,_0x95a5[36]);logger[_0x95a5[26]](_0x95a5[25],_0xae8bx17,_0xae8bx16,_0x95a5[30],JSON[_0x95a5[31]](_0xae8bx18));return _0xae8bx15[_0x95a5[40]](_0x95a5[37],_0xae8bx1d+ _0x95a5[38]+ _0xae8bx1e+ _0x95a5[39]+ _0xae8bx1c)[_0x95a5[32]](_0xae8bx18)};return null}}function patchUpdates(_0xae8bx20){return function(_0xae8bx18){try{jsonpatch[_0x95a5[41]](_0xae8bx18,_0xae8bx20,true)}catch(err){return BPromise[_0x95a5[42]](err)};return _0xae8bx18[_0x95a5[43]]()}}function saveUpdates(_0xae8bx22,_0xae8bx16,_0xae8bx17){return function(_0xae8bx18){if(_0xae8bx18){return _0xae8bx18[_0x95a5[46]](_0xae8bx22)[_0x95a5[45]](function(_0xae8bx23){logger[_0x95a5[24]](_0x95a5[22],_0xae8bx17,_0xae8bx16,_0x95a5[44]);logger[_0x95a5[26]](_0x95a5[25],_0xae8bx17,_0xae8bx16,_0x95a5[44],JSON[_0x95a5[31]](_0xae8bx18));return _0xae8bx23})};return null}}function removeEntity(_0xae8bx15,_0xae8bx16,_0xae8bx17){return function(_0xae8bx18){if(_0xae8bx18){return _0xae8bx18[_0x95a5[48]]()[_0x95a5[45]](function(){logger[_0x95a5[24]](_0x95a5[22],_0xae8bx17,_0xae8bx16,_0x95a5[47]);logger[_0x95a5[26]](_0x95a5[25],_0xae8bx17,_0xae8bx16,_0x95a5[47],JSON[_0x95a5[31]](_0xae8bx18));_0xae8bx15[_0x95a5[29]](204)[_0x95a5[28]]()})}}}function handleEntityNotFound(_0xae8bx15,_0xae8bx16,_0xae8bx17){return function(_0xae8bx18){if(!_0xae8bx18){logger[_0x95a5[50]](_0x95a5[22],_0xae8bx17,404,_0x95a5[49]);_0xae8bx15[_0x95a5[29]](404)[_0x95a5[28]]();return null};return _0xae8bx18}}function handleError(_0xae8bx15,_0xae8bx16,_0xae8bx17){_0xae8bx16= _0xae8bx16|| 500;return function(_0xae8bx27){logger[_0x95a5[50]](_0x95a5[22],_0xae8bx17,_0xae8bx16,JSON[_0x95a5[31]](_0xae8bx27));delete _0xae8bx27[_0x95a5[51]];_0xae8bx15[_0x95a5[29]](_0xae8bx16)[_0x95a5[52]](_0xae8bx27)}}exports[_0x95a5[53]]= function(_0xae8bx28,_0xae8bx15){var _0xae8bx1b={raw:false,where:{id:_0xae8bx28[_0x95a5[55]][_0x95a5[54]]}},_0xae8bx29={};_0xae8bx29[_0x95a5[56]]= _[_0x95a5[59]](db[_0x95a5[58]][_0x95a5[57]]);_0xae8bx29[_0x95a5[60]]= _[_0x95a5[59]](_0xae8bx28[_0x95a5[60]]);_0xae8bx29[_0x95a5[61]]= _[_0x95a5[62]](_0xae8bx29[_0x95a5[56]],_0xae8bx29[_0x95a5[60]]);_0xae8bx1b[_0x95a5[63]]= _[_0x95a5[62]](_0xae8bx29[_0x95a5[56]],qs[_0x95a5[64]](_0xae8bx28[_0x95a5[60]][_0x95a5[64]]));_0xae8bx1b[_0x95a5[63]]= (_0xae8bx1b[_0x95a5[63]][_0x95a5[65]])?_0xae8bx1b[_0x95a5[63]]:_0xae8bx29[_0x95a5[56]];_0xae8bx1b= _[_0x95a5[67]]({},_0xae8bx1b,_0xae8bx28[_0x95a5[66]]);return db[_0x95a5[58]][_0x95a5[69]](_0xae8bx1b)[_0x95a5[45]](handleEntityNotFound(_0xae8bx15,null,_0x95a5[53]))[_0x95a5[45]](respondWithResult(_0xae8bx15,null,_0x95a5[53]))[_0x95a5[68]](handleError(_0xae8bx15,null,_0x95a5[53]))};exports[_0x95a5[46]]= function(_0xae8bx28,_0xae8bx15){if(_0xae8bx28[_0x95a5[70]][_0x95a5[54]]){delete _0xae8bx28[_0x95a5[70]][_0x95a5[54]]};return db[_0x95a5[58]][_0x95a5[69]]({where:{id:_0xae8bx28[_0x95a5[55]][_0x95a5[54]]}})[_0x95a5[45]](handleEntityNotFound(_0xae8bx15,null,_0x95a5[46]))[_0x95a5[45]](saveUpdates(_0xae8bx28[_0x95a5[70]],null,_0x95a5[46]))[_0x95a5[45]](respondWithResult(_0xae8bx15,null,_0x95a5[46]))[_0x95a5[68]](handleError(_0xae8bx15,null,_0x95a5[46]))};exports[_0x95a5[48]]= function(_0xae8bx28,_0xae8bx15){return db[_0x95a5[58]][_0x95a5[69]]({where:{id:_0xae8bx28[_0x95a5[55]][_0x95a5[54]]}})[_0x95a5[45]](handleEntityNotFound(_0xae8bx15,null,_0x95a5[48]))[_0x95a5[45]](removeEntity(_0xae8bx15,null,_0x95a5[48]))[_0x95a5[68]](handleError(_0xae8bx15,null,_0x95a5[48]))}
\ No newline at end of file
index 7641a69..4fb675b 100644 (file)
@@ -1 +1 @@
-var _0x633a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x63\x68\x61\x74\x5F\x65\x6E\x71\x75\x69\x72\x69\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x633a[0];var _=require(_0x633a[1]);var util=require(_0x633a[2]);var logger=require(_0x633a[4])(_0x633a[3]);var attributes=require(_0x633a[5]);module[_0x633a[6]]= function(_0x631fx5,_0x631fx6){return _0x631fx5[_0x633a[9]](_0x633a[7],attributes,{tableName:_0x633a[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xd2a0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x63\x68\x61\x74\x5F\x65\x6E\x71\x75\x69\x72\x69\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xd2a0[0];var _=require(_0xd2a0[1]);var util=require(_0xd2a0[2]);var logger=require(_0xd2a0[4])(_0xd2a0[3]);var attributes=require(_0xd2a0[5]);module[_0xd2a0[6]]= function(_0x882dx5,_0x882dx6){return _0x882dx5[_0xd2a0[9]](_0xd2a0[7],attributes,{tableName:_0xd2a0[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
index deae01a..fecb905 100644 (file)
@@ -1 +1 @@
-var _0xdbf1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xdbf1[0];var _=require(_0xdbf1[1]);var util=require(_0xdbf1[2]);var moment=require(_0xdbf1[3]);var BPromise=require(_0xdbf1[4]);var db=require(_0xdbf1[6])[_0xdbf1[5]];var utils=require(_0xdbf1[7]);var logger=require(_0xdbf1[9])(_0xdbf1[8]);var jayson=require(_0xdbf1[10]);var client=jayson[_0xdbf1[12]][_0xdbf1[11]]({port:9002});function respondWithRpcPromise(_0xd9b4xb,_0xd9b4xc,_0xd9b4xd){return  new BPromise(function(_0xd9b4xe,_0xd9b4xf){return client[_0xdbf1[25]](_0xd9b4xb,_0xd9b4xd)[_0xdbf1[24]](function(_0xd9b4x11){logger[_0xdbf1[17]](_0xdbf1[13],_0xd9b4xc,_0xdbf1[16]);logger[_0xdbf1[20]](_0xdbf1[18],_0xd9b4xc,_0xdbf1[16],JSON[_0xdbf1[19]](_0xd9b4x11));if(_0xd9b4x11[_0xdbf1[14]]){if(_0xd9b4x11[_0xdbf1[14]][_0xdbf1[21]]=== 500){logger[_0xdbf1[14]](_0xdbf1[13],_0xd9b4xc,_0xd9b4x11[_0xdbf1[14]][_0xdbf1[22]]);return _0xd9b4xf(_0xd9b4x11[_0xdbf1[14]][_0xdbf1[22]])};logger[_0xdbf1[14]](_0xdbf1[13],_0xd9b4xc,_0xd9b4x11[_0xdbf1[14]][_0xdbf1[22]]);return _0xd9b4xe(_0xd9b4x11[_0xdbf1[14]][_0xdbf1[22]])}else {logger[_0xdbf1[17]](_0xdbf1[13],_0xd9b4xc,_0xdbf1[16]);_0xd9b4xe(_0xd9b4x11[_0xdbf1[23]][_0xdbf1[22]])}})[_0xdbf1[15]](function(_0xd9b4x10){logger[_0xdbf1[14]](_0xdbf1[13],_0xd9b4xc,_0xd9b4x10);_0xd9b4xf(_0xd9b4x10)})})}
\ No newline at end of file
+var _0x3f8f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x3f8f[0];var _=require(_0x3f8f[1]);var util=require(_0x3f8f[2]);var moment=require(_0x3f8f[3]);var BPromise=require(_0x3f8f[4]);var db=require(_0x3f8f[6])[_0x3f8f[5]];var utils=require(_0x3f8f[7]);var logger=require(_0x3f8f[9])(_0x3f8f[8]);var jayson=require(_0x3f8f[10]);var client=jayson[_0x3f8f[12]][_0x3f8f[11]]({port:9002});function respondWithRpcPromise(_0x4996xb,_0x4996xc,_0x4996xd){return  new BPromise(function(_0x4996xe,_0x4996xf){return client[_0x3f8f[25]](_0x4996xb,_0x4996xd)[_0x3f8f[24]](function(_0x4996x11){logger[_0x3f8f[17]](_0x3f8f[13],_0x4996xc,_0x3f8f[16]);logger[_0x3f8f[20]](_0x3f8f[18],_0x4996xc,_0x3f8f[16],JSON[_0x3f8f[19]](_0x4996x11));if(_0x4996x11[_0x3f8f[14]]){if(_0x4996x11[_0x3f8f[14]][_0x3f8f[21]]=== 500){logger[_0x3f8f[14]](_0x3f8f[13],_0x4996xc,_0x4996x11[_0x3f8f[14]][_0x3f8f[22]]);return _0x4996xf(_0x4996x11[_0x3f8f[14]][_0x3f8f[22]])};logger[_0x3f8f[14]](_0x3f8f[13],_0x4996xc,_0x4996x11[_0x3f8f[14]][_0x3f8f[22]]);return _0x4996xe(_0x4996x11[_0x3f8f[14]][_0x3f8f[22]])}else {logger[_0x3f8f[17]](_0x3f8f[13],_0x4996xc,_0x3f8f[16]);_0x4996xe(_0x4996x11[_0x3f8f[23]][_0x3f8f[22]])}})[_0x3f8f[15]](function(_0x4996x10){logger[_0x3f8f[14]](_0x3f8f[13],_0x4996xc,_0x4996x10);_0x4996xf(_0x4996x10)})})}
\ No newline at end of file
index a087630..90fbd9e 100644 (file)
@@ -1 +1 @@
-var _0xb46f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb46f[0];var multer=require(_0xb46f[1]);var util=require(_0xb46f[2]);var path=require(_0xb46f[3]);var express=require(_0xb46f[4]);var router=express.Router();var auth=require(_0xb46f[5]);var config=require(_0xb46f[6]);var controller=require(_0xb46f[7]);router[_0xb46f[11]](_0xb46f[8],auth[_0xb46f[9]](),controller[_0xb46f[10]]);router[_0xb46f[13]](_0xb46f[8],auth[_0xb46f[9]](),controller[_0xb46f[12]]);router[_0xb46f[15]](_0xb46f[8],auth[_0xb46f[9]](),controller[_0xb46f[14]]);module[_0xb46f[16]]= router
\ No newline at end of file
+var _0xa980=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa980[0];var multer=require(_0xa980[1]);var util=require(_0xa980[2]);var path=require(_0xa980[3]);var express=require(_0xa980[4]);var router=express.Router();var auth=require(_0xa980[5]);var config=require(_0xa980[6]);var controller=require(_0xa980[7]);router[_0xa980[11]](_0xa980[8],auth[_0xa980[9]](),controller[_0xa980[10]]);router[_0xa980[13]](_0xa980[8],auth[_0xa980[9]](),controller[_0xa980[12]]);router[_0xa980[15]](_0xa980[8],auth[_0xa980[9]](),controller[_0xa980[14]]);module[_0xa980[16]]= router
\ No newline at end of file
index f2528b2..fd1389c 100644 (file)
@@ -1 +1 @@
-var _0x409d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x65\x78\x74\x65\x72\x6E\x61\x6C","\x67\x72\x6F\x75\x70","\x53\x54\x52\x49\x4E\x47","\x74\x6F\x6B\x65\x6E","\x4E\x45\x57","\x4F\x50\x45\x4E","\x43\x4C\x4F\x53\x45\x44","\x41\x42\x41\x4E\x44\x4F\x4E","\x55\x4E\x4D\x41\x4E\x41\x47\x45\x44","\x67\x6F\x6F\x64","\x62\x61\x64","\x54\x45\x58\x54","\x61\x67\x65\x6E\x74","\x72\x65\x71\x75\x65\x73\x74\x65\x72","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0x409d[0];var Sequelize=require(_0x409d[1]);module[_0x409d[2]]= {type:{type:Sequelize.ENUM(_0x409d[3],_0x409d[4],_0x409d[5]),allowNull:false},token:{type:Sequelize[_0x409d[6]],unique:_0x409d[7]},status:{type:Sequelize.ENUM(_0x409d[8],_0x409d[9],_0x409d[10],_0x409d[11],_0x409d[12]),defaultValue:_0x409d[8]},rating:{type:Sequelize.ENUM(_0x409d[13],_0x409d[14])},ratingMessage:{type:Sequelize[_0x409d[15]]},completeReason:{type:Sequelize.ENUM(_0x409d[16],_0x409d[17])},ChatVisitorId:{type:Sequelize[_0x409d[18]],unique:_0x409d[7]},waiting:{type:Sequelize[_0x409d[19]],defaultValue:false},tags:{type:Sequelize[_0x409d[15]],get:function(){var _0x3ee5x2;if(this[_0x409d[21]](_0x409d[20])){_0x3ee5x2= this[_0x409d[21]](_0x409d[20])[_0x409d[23]](_0x409d[22]);_0x3ee5x2[_0x409d[24]]()}else {_0x3ee5x2= []};return _0x3ee5x2},set:function(_0x3ee5x3){this[_0x409d[27]](_0x409d[20],_0x3ee5x3&& _0x3ee5x3[_0x409d[25]]?_0x3ee5x3[_0x409d[26]](_0x409d[22])+ _0x409d[22]:null)}},disposition:{type:Sequelize[_0x409d[6]]},openReason:{type:Sequelize[_0x409d[6]]},contact:{type:Sequelize[_0x409d[6]]},website:{type:Sequelize[_0x409d[6]]}}
\ No newline at end of file
+var _0xfbed=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x65\x78\x74\x65\x72\x6E\x61\x6C","\x67\x72\x6F\x75\x70","\x53\x54\x52\x49\x4E\x47","\x74\x6F\x6B\x65\x6E","\x4E\x45\x57","\x4F\x50\x45\x4E","\x43\x4C\x4F\x53\x45\x44","\x41\x42\x41\x4E\x44\x4F\x4E","\x55\x4E\x4D\x41\x4E\x41\x47\x45\x44","\x67\x6F\x6F\x64","\x62\x61\x64","\x54\x45\x58\x54","\x61\x67\x65\x6E\x74","\x72\x65\x71\x75\x65\x73\x74\x65\x72","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0xfbed[0];var Sequelize=require(_0xfbed[1]);module[_0xfbed[2]]= {type:{type:Sequelize.ENUM(_0xfbed[3],_0xfbed[4],_0xfbed[5]),allowNull:false},token:{type:Sequelize[_0xfbed[6]],unique:_0xfbed[7]},status:{type:Sequelize.ENUM(_0xfbed[8],_0xfbed[9],_0xfbed[10],_0xfbed[11],_0xfbed[12]),defaultValue:_0xfbed[8]},rating:{type:Sequelize.ENUM(_0xfbed[13],_0xfbed[14])},ratingMessage:{type:Sequelize[_0xfbed[15]]},completeReason:{type:Sequelize.ENUM(_0xfbed[16],_0xfbed[17])},ChatVisitorId:{type:Sequelize[_0xfbed[18]],unique:_0xfbed[7]},waiting:{type:Sequelize[_0xfbed[19]],defaultValue:false},tags:{type:Sequelize[_0xfbed[15]],get:function(){var _0xf930x2;if(this[_0xfbed[21]](_0xfbed[20])){_0xf930x2= this[_0xfbed[21]](_0xfbed[20])[_0xfbed[23]](_0xfbed[22]);_0xf930x2[_0xfbed[24]]()}else {_0xf930x2= []};return _0xf930x2},set:function(_0xf930x3){this[_0xfbed[27]](_0xfbed[20],_0xf930x3&& _0xf930x3[_0xfbed[25]]?_0xf930x3[_0xfbed[26]](_0xfbed[22])+ _0xfbed[22]:null)}},disposition:{type:Sequelize[_0xfbed[6]]},openReason:{type:Sequelize[_0xfbed[6]]},contact:{type:Sequelize[_0xfbed[6]]},website:{type:Sequelize[_0xfbed[6]]}}
\ No newline at end of file
index 47dcac2..35e928c 100644 (file)
@@ -1 +1 @@
-var _0xe9d1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xe9d1[0];var jsonpatch=require(_0xe9d1[1]);var rp=require(_0xe9d1[2]);var moment=require(_0xe9d1[3]);var BPromise=require(_0xe9d1[4]);var util=require(_0xe9d1[5]);var path=require(_0xe9d1[6]);var sox=require(_0xe9d1[7]);var ejs=require(_0xe9d1[8]);var fs=require(_0xe9d1[9]);var _=require(_0xe9d1[10]);var squel=require(_0xe9d1[11]);var crypto=require(_0xe9d1[12]);var jsforce=require(_0xe9d1[13]);var toCsv=require(_0xe9d1[14]);var qs=require(_0xe9d1[15]);var logger=require(_0xe9d1[17])(_0xe9d1[16]);var utils=require(_0xe9d1[18]);var config=require(_0xe9d1[19]);var db=require(_0xe9d1[21])[_0xe9d1[20]];function respondWithStatusCode(_0xdbd6x15,_0xdbd6x16,_0xdbd6x17){_0xdbd6x16= _0xdbd6x16|| 204;return function(_0xdbd6x18){if(_0xdbd6x18){logger[_0xe9d1[24]](_0xe9d1[22],_0xdbd6x17,_0xdbd6x16,_0xe9d1[23]);logger[_0xe9d1[26]](_0xe9d1[25],_0xdbd6x17,_0xdbd6x16,_0xe9d1[23]);return _0xdbd6x15[_0xe9d1[27]](_0xdbd6x16)};return _0xdbd6x15[_0xe9d1[29]](304)[_0xe9d1[28]]()}}function respondWithResult(_0xdbd6x15,_0xdbd6x16,_0xdbd6x17){_0xdbd6x16= _0xdbd6x16|| 200;return function(_0xdbd6x18){if(_0xdbd6x18){logger[_0xe9d1[24]](_0xe9d1[22],_0xdbd6x17,_0xdbd6x16,_0xe9d1[30]);logger[_0xe9d1[26]](_0xe9d1[25],_0xdbd6x17,_0xdbd6x16,_0xe9d1[30],JSON[_0xe9d1[31]](_0xdbd6x18));return _0xdbd6x15[_0xe9d1[29]](_0xdbd6x16)[_0xe9d1[32]](_0xdbd6x18)};return _0xdbd6x15[_0xe9d1[29]](304)[_0xe9d1[28]]()}}function respondWithFilteredResult(_0xdbd6x15,_0xdbd6x1b,_0xdbd6x17){return function(_0xdbd6x18){if(_0xdbd6x18){var _0xdbd6x1c=_0xdbd6x18[_0xe9d1[33]],_0xdbd6x1d=_0xdbd6x1b[_0xe9d1[34]],_0xdbd6x1e=_0xdbd6x1b[_0xe9d1[34]]+ _0xdbd6x1b[_0xe9d1[35]],_0xdbd6x16;if(_0xdbd6x1e>= _0xdbd6x1c){_0xdbd6x1e= _0xdbd6x1c;_0xdbd6x16= 200}else {_0xdbd6x16= 206};_0xdbd6x15[_0xe9d1[29]](_0xdbd6x16);logger[_0xe9d1[24]](_0xe9d1[22],_0xdbd6x17,_0xdbd6x16,_0xe9d1[36]);logger[_0xe9d1[26]](_0xe9d1[25],_0xdbd6x17,_0xdbd6x16,_0xe9d1[30],JSON[_0xe9d1[31]](_0xdbd6x18));return _0xdbd6x15[_0xe9d1[40]](_0xe9d1[37],_0xdbd6x1d+ _0xe9d1[38]+ _0xdbd6x1e+ _0xe9d1[39]+ _0xdbd6x1c)[_0xe9d1[32]](_0xdbd6x18)};return null}}function patchUpdates(_0xdbd6x20){return function(_0xdbd6x18){try{jsonpatch[_0xe9d1[41]](_0xdbd6x18,_0xdbd6x20,true)}catch(err){return BPromise[_0xe9d1[42]](err)};return _0xdbd6x18[_0xe9d1[43]]()}}function saveUpdates(_0xdbd6x22,_0xdbd6x16,_0xdbd6x17){return function(_0xdbd6x18){if(_0xdbd6x18){return _0xdbd6x18[_0xe9d1[46]](_0xdbd6x22)[_0xe9d1[45]](function(_0xdbd6x23){logger[_0xe9d1[24]](_0xe9d1[22],_0xdbd6x17,_0xdbd6x16,_0xe9d1[44]);logger[_0xe9d1[26]](_0xe9d1[25],_0xdbd6x17,_0xdbd6x16,_0xe9d1[44],JSON[_0xe9d1[31]](_0xdbd6x18));return _0xdbd6x23})};return null}}function removeEntity(_0xdbd6x15,_0xdbd6x16,_0xdbd6x17){return function(_0xdbd6x18){if(_0xdbd6x18){return _0xdbd6x18[_0xe9d1[48]]()[_0xe9d1[45]](function(){logger[_0xe9d1[24]](_0xe9d1[22],_0xdbd6x17,_0xdbd6x16,_0xe9d1[47]);logger[_0xe9d1[26]](_0xe9d1[25],_0xdbd6x17,_0xdbd6x16,_0xe9d1[47],JSON[_0xe9d1[31]](_0xdbd6x18));_0xdbd6x15[_0xe9d1[29]](204)[_0xe9d1[28]]()})}}}function handleEntityNotFound(_0xdbd6x15,_0xdbd6x16,_0xdbd6x17){return function(_0xdbd6x18){if(!_0xdbd6x18){logger[_0xe9d1[50]](_0xe9d1[22],_0xdbd6x17,404,_0xe9d1[49]);_0xdbd6x15[_0xe9d1[29]](404)[_0xe9d1[28]]();return null};return _0xdbd6x18}}function handleError(_0xdbd6x15,_0xdbd6x16,_0xdbd6x17){_0xdbd6x16= _0xdbd6x16|| 500;return function(_0xdbd6x27){logger[_0xe9d1[50]](_0xe9d1[22],_0xdbd6x17,_0xdbd6x16,JSON[_0xe9d1[31]](_0xdbd6x27));delete _0xdbd6x27[_0xe9d1[51]];_0xdbd6x15[_0xe9d1[29]](_0xdbd6x16)[_0xe9d1[52]](_0xdbd6x27)}}exports[_0xe9d1[53]]= function(_0xdbd6x28,_0xdbd6x15){var _0xdbd6x1b={},_0xdbd6x29={};_0xdbd6x29[_0xe9d1[54]]= _[_0xe9d1[57]](db[_0xe9d1[56]][_0xe9d1[55]]);_0xdbd6x29[_0xe9d1[58]]= _[_0xe9d1[57]](_0xdbd6x28[_0xe9d1[58]]);_0xdbd6x29[_0xe9d1[59]]= _[_0xe9d1[60]](_0xdbd6x29[_0xe9d1[54]],_0xdbd6x29[_0xe9d1[58]]);_0xdbd6x1b[_0xe9d1[61]]= _[_0xe9d1[60]](_0xdbd6x29[_0xe9d1[54]],qs[_0xe9d1[62]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[62]]));_0xdbd6x1b[_0xe9d1[61]]= (_0xdbd6x1b[_0xe9d1[61]][_0xe9d1[63]])?_0xdbd6x1b[_0xe9d1[61]]:_0xdbd6x29[_0xe9d1[54]];if(!_0xdbd6x28[_0xe9d1[58]][_0xe9d1[65]](_0xe9d1[64])){_0xdbd6x1b[_0xe9d1[35]]= qs[_0xe9d1[35]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[35]]);_0xdbd6x1b[_0xe9d1[34]]= qs[_0xe9d1[34]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[34]])};_0xdbd6x1b[_0xe9d1[66]]= qs[_0xe9d1[67]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[67]]);_0xdbd6x1b[_0xe9d1[68]]= qs[_0xe9d1[59]](_[_0xe9d1[69]](_0xdbd6x28[_0xe9d1[58]],_0xdbd6x29[_0xe9d1[59]]));if(_0xdbd6x28[_0xe9d1[58]][_0xe9d1[70]]){_0xdbd6x1b[_0xe9d1[68]]= _[_0xe9d1[73]](_0xdbd6x1b[_0xe9d1[68]],{$or:_[_0xe9d1[72]](_0xdbd6x1b[_0xe9d1[61]],function(_0xdbd6x2a){var _0xdbd6x2b={};_0xdbd6x2b[_0xdbd6x2a]= {$like:_0xe9d1[71]+ _0xdbd6x28[_0xe9d1[58]][_0xe9d1[70]]+ _0xe9d1[71]};return _0xdbd6x2b})})};_0xdbd6x1b= _[_0xe9d1[73]]({},_0xdbd6x1b,_0xdbd6x28[_0xe9d1[74]]);return db[_0xe9d1[56]][_0xe9d1[76]](_0xdbd6x1b)[_0xe9d1[45]](respondWithFilteredResult(_0xdbd6x15,_0xdbd6x1b,_0xe9d1[53]))[_0xe9d1[75]](handleError(_0xdbd6x15,null,_0xe9d1[53]))};exports[_0xe9d1[77]]= function(_0xdbd6x28,_0xdbd6x15){var _0xdbd6x1b={raw:false,where:{id:_0xdbd6x28[_0xe9d1[79]][_0xe9d1[78]]}},_0xdbd6x29={};_0xdbd6x29[_0xe9d1[54]]= _[_0xe9d1[57]](db[_0xe9d1[56]][_0xe9d1[55]]);_0xdbd6x29[_0xe9d1[58]]= _[_0xe9d1[57]](_0xdbd6x28[_0xe9d1[58]]);_0xdbd6x29[_0xe9d1[59]]= _[_0xe9d1[60]](_0xdbd6x29[_0xe9d1[54]],_0xdbd6x29[_0xe9d1[58]]);_0xdbd6x1b[_0xe9d1[61]]= _[_0xe9d1[60]](_0xdbd6x29[_0xe9d1[54]],qs[_0xe9d1[62]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[62]]));_0xdbd6x1b[_0xe9d1[61]]= (_0xdbd6x1b[_0xe9d1[61]][_0xe9d1[63]])?_0xdbd6x1b[_0xe9d1[61]]:_0xdbd6x29[_0xe9d1[54]];_0xdbd6x1b= _[_0xe9d1[73]]({},_0xdbd6x1b,_0xdbd6x28[_0xe9d1[74]]);return db[_0xe9d1[56]][_0xe9d1[80]](_0xdbd6x1b)[_0xe9d1[45]](handleEntityNotFound(_0xdbd6x15,null,_0xe9d1[77]))[_0xe9d1[45]](respondWithResult(_0xdbd6x15,null,_0xe9d1[77]))[_0xe9d1[75]](handleError(_0xdbd6x15,null,_0xe9d1[77]))};exports[_0xe9d1[81]]= function(_0xdbd6x28,_0xdbd6x15){return db[_0xe9d1[56]][_0xe9d1[81]](_0xdbd6x28[_0xe9d1[82]],{})[_0xe9d1[45]](respondWithResult(_0xdbd6x15,201,_0xe9d1[81]))[_0xe9d1[75]](handleError(_0xdbd6x15,null,_0xe9d1[81]))};exports[_0xe9d1[46]]= function(_0xdbd6x28,_0xdbd6x15){if(_0xdbd6x28[_0xe9d1[82]][_0xe9d1[78]]){delete _0xdbd6x28[_0xe9d1[82]][_0xe9d1[78]]};return db[_0xe9d1[56]][_0xe9d1[80]]({where:{id:_0xdbd6x28[_0xe9d1[79]][_0xe9d1[78]]}})[_0xe9d1[45]](handleEntityNotFound(_0xdbd6x15,null,_0xe9d1[46]))[_0xe9d1[45]](saveUpdates(_0xdbd6x28[_0xe9d1[82]],null,_0xe9d1[46]))[_0xe9d1[45]](respondWithResult(_0xdbd6x15,null,_0xe9d1[46]))[_0xe9d1[75]](handleError(_0xdbd6x15,null,_0xe9d1[46]))};exports[_0xe9d1[48]]= function(_0xdbd6x28,_0xdbd6x15){return db[_0xe9d1[56]][_0xe9d1[80]]({where:{id:_0xdbd6x28[_0xe9d1[79]][_0xe9d1[78]]}})[_0xe9d1[45]](handleEntityNotFound(_0xdbd6x15,null,_0xe9d1[48]))[_0xe9d1[45]](removeEntity(_0xdbd6x15,null,_0xe9d1[48]))[_0xe9d1[75]](handleError(_0xdbd6x15,null,_0xe9d1[48]))};exports[_0xe9d1[83]]= function(_0xdbd6x28,_0xdbd6x15){return db[_0xe9d1[56]][_0xe9d1[83]]()[_0xe9d1[45]](respondWithResult(_0xdbd6x15,null,_0xe9d1[83]))[_0xe9d1[75]](handleError(_0xdbd6x15,null,_0xe9d1[83]))};exports[_0xe9d1[84]]= function(_0xdbd6x28,_0xdbd6x15,_0xdbd6x2c){return db[_0xe9d1[87]][_0xe9d1[80]]({where:{id:_0xdbd6x28[_0xe9d1[79]][_0xe9d1[78]]}})[_0xe9d1[45]](handleEntityNotFound(_0xdbd6x15,null,_0xe9d1[84]))[_0xe9d1[45]](function(_0xdbd6x18){if(_0xdbd6x18){return _0xdbd6x18[_0xe9d1[84]](_0xdbd6x28[_0xe9d1[82]][_0xe9d1[85]],_[_0xe9d1[86]](_0xdbd6x28[_0xe9d1[82]],[_0xe9d1[85],_0xe9d1[78]])|| {})};return null})[_0xe9d1[45]](respondWithResult(_0xdbd6x15,null,_0xe9d1[84]))[_0xe9d1[75]](handleError(_0xdbd6x15,null,_0xe9d1[84]))};exports[_0xe9d1[88]]= function(_0xdbd6x28,_0xdbd6x18,_0xdbd6x2c){var _0xdbd6x1b={};var _0xdbd6x29={};var _0xdbd6x2d;var _0xdbd6x1c;return db[_0xe9d1[56]][_0xe9d1[89]]({where:{id:_0xdbd6x28[_0xe9d1[79]][_0xe9d1[78]]}})[_0xe9d1[45]](handleEntityNotFound(_0xdbd6x18,null,_0xe9d1[88]))[_0xe9d1[45]](function(_0xdbd6x18){if(_0xdbd6x18){_0xdbd6x2d= _0xdbd6x18;_0xdbd6x29[_0xe9d1[54]]= _[_0xe9d1[57]](db[_0xe9d1[87]][_0xe9d1[55]]);_0xdbd6x29[_0xe9d1[58]]= _[_0xe9d1[57]](_0xdbd6x28[_0xe9d1[58]]);_0xdbd6x29[_0xe9d1[59]]= _[_0xe9d1[60]](_0xdbd6x29[_0xe9d1[54]],_0xdbd6x29[_0xe9d1[58]]);_0xdbd6x1b[_0xe9d1[61]]= _[_0xe9d1[60]](_0xdbd6x29[_0xe9d1[54]],qs[_0xe9d1[62]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[62]]));_0xdbd6x1b[_0xe9d1[61]]= (_0xdbd6x1b[_0xe9d1[61]][_0xe9d1[63]])?_0xdbd6x1b[_0xe9d1[61]]:_0xdbd6x29[_0xe9d1[54]];_0xdbd6x1b[_0xe9d1[66]]= qs[_0xe9d1[67]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[67]]);_0xdbd6x1b[_0xe9d1[68]]= qs[_0xe9d1[59]](_[_0xe9d1[69]](_0xdbd6x28[_0xe9d1[58]],_0xdbd6x29[_0xe9d1[59]]));if(_0xdbd6x28[_0xe9d1[58]][_0xe9d1[70]]){_0xdbd6x1b[_0xe9d1[68]]= _[_0xe9d1[73]](_0xdbd6x1b[_0xe9d1[68]],{$or:_[_0xe9d1[72]](_0xdbd6x1b[_0xe9d1[61]],function(_0xdbd6x2a){var _0xdbd6x2b={};_0xdbd6x2b[_0xdbd6x2a]= {$like:_0xe9d1[71]+ _0xdbd6x28[_0xe9d1[58]][_0xe9d1[70]]+ _0xe9d1[71]};return _0xdbd6x2b})})};_0xdbd6x1b= _[_0xe9d1[73]]({},_0xdbd6x1b,_0xdbd6x28[_0xe9d1[74]]);return _0xdbd6x2d[_0xe9d1[88]](_0xdbd6x1b)}})[_0xe9d1[45]](function(_0xdbd6x2f){if(_0xdbd6x2f){_0xdbd6x1c= _0xdbd6x2f[_0xe9d1[63]];if(!_0xdbd6x28[_0xe9d1[58]][_0xe9d1[65]](_0xe9d1[64])){_0xdbd6x1b[_0xe9d1[35]]= qs[_0xe9d1[35]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[35]]);_0xdbd6x1b[_0xe9d1[34]]= qs[_0xe9d1[34]](_0xdbd6x28[_0xe9d1[58]][_0xe9d1[34]])};return _0xdbd6x2d[_0xe9d1[88]](_0xdbd6x1b)}})[_0xe9d1[45]](function(_0xdbd6x2e){return _0xdbd6x2e?{count:_0xdbd6x1c,rows:_0xdbd6x2e}:null})[_0xe9d1[45]](respondWithResult(_0xdbd6x18,null,_0xe9d1[88]))[_0xe9d1[75]](handleError(_0xdbd6x18,null,_0xe9d1[88]))}
\ No newline at end of file
+var _0x59ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0x59ee[0];var jsonpatch=require(_0x59ee[1]);var rp=require(_0x59ee[2]);var moment=require(_0x59ee[3]);var BPromise=require(_0x59ee[4]);var util=require(_0x59ee[5]);var path=require(_0x59ee[6]);var sox=require(_0x59ee[7]);var ejs=require(_0x59ee[8]);var fs=require(_0x59ee[9]);var _=require(_0x59ee[10]);var squel=require(_0x59ee[11]);var crypto=require(_0x59ee[12]);var jsforce=require(_0x59ee[13]);var toCsv=require(_0x59ee[14]);var qs=require(_0x59ee[15]);var logger=require(_0x59ee[17])(_0x59ee[16]);var utils=require(_0x59ee[18]);var config=require(_0x59ee[19]);var db=require(_0x59ee[21])[_0x59ee[20]];function respondWithStatusCode(_0xcc6fx15,_0xcc6fx16,_0xcc6fx17){_0xcc6fx16= _0xcc6fx16|| 204;return function(_0xcc6fx18){if(_0xcc6fx18){logger[_0x59ee[24]](_0x59ee[22],_0xcc6fx17,_0xcc6fx16,_0x59ee[23]);logger[_0x59ee[26]](_0x59ee[25],_0xcc6fx17,_0xcc6fx16,_0x59ee[23]);return _0xcc6fx15[_0x59ee[27]](_0xcc6fx16)};return _0xcc6fx15[_0x59ee[29]](304)[_0x59ee[28]]()}}function respondWithResult(_0xcc6fx15,_0xcc6fx16,_0xcc6fx17){_0xcc6fx16= _0xcc6fx16|| 200;return function(_0xcc6fx18){if(_0xcc6fx18){logger[_0x59ee[24]](_0x59ee[22],_0xcc6fx17,_0xcc6fx16,_0x59ee[30]);logger[_0x59ee[26]](_0x59ee[25],_0xcc6fx17,_0xcc6fx16,_0x59ee[30],JSON[_0x59ee[31]](_0xcc6fx18));return _0xcc6fx15[_0x59ee[29]](_0xcc6fx16)[_0x59ee[32]](_0xcc6fx18)};return _0xcc6fx15[_0x59ee[29]](304)[_0x59ee[28]]()}}function respondWithFilteredResult(_0xcc6fx15,_0xcc6fx1b,_0xcc6fx17){return function(_0xcc6fx18){if(_0xcc6fx18){var _0xcc6fx1c=_0xcc6fx18[_0x59ee[33]],_0xcc6fx1d=_0xcc6fx1b[_0x59ee[34]],_0xcc6fx1e=_0xcc6fx1b[_0x59ee[34]]+ _0xcc6fx1b[_0x59ee[35]],_0xcc6fx16;if(_0xcc6fx1e>= _0xcc6fx1c){_0xcc6fx1e= _0xcc6fx1c;_0xcc6fx16= 200}else {_0xcc6fx16= 206};_0xcc6fx15[_0x59ee[29]](_0xcc6fx16);logger[_0x59ee[24]](_0x59ee[22],_0xcc6fx17,_0xcc6fx16,_0x59ee[36]);logger[_0x59ee[26]](_0x59ee[25],_0xcc6fx17,_0xcc6fx16,_0x59ee[30],JSON[_0x59ee[31]](_0xcc6fx18));return _0xcc6fx15[_0x59ee[40]](_0x59ee[37],_0xcc6fx1d+ _0x59ee[38]+ _0xcc6fx1e+ _0x59ee[39]+ _0xcc6fx1c)[_0x59ee[32]](_0xcc6fx18)};return null}}function patchUpdates(_0xcc6fx20){return function(_0xcc6fx18){try{jsonpatch[_0x59ee[41]](_0xcc6fx18,_0xcc6fx20,true)}catch(err){return BPromise[_0x59ee[42]](err)};return _0xcc6fx18[_0x59ee[43]]()}}function saveUpdates(_0xcc6fx22,_0xcc6fx16,_0xcc6fx17){return function(_0xcc6fx18){if(_0xcc6fx18){return _0xcc6fx18[_0x59ee[46]](_0xcc6fx22)[_0x59ee[45]](function(_0xcc6fx23){logger[_0x59ee[24]](_0x59ee[22],_0xcc6fx17,_0xcc6fx16,_0x59ee[44]);logger[_0x59ee[26]](_0x59ee[25],_0xcc6fx17,_0xcc6fx16,_0x59ee[44],JSON[_0x59ee[31]](_0xcc6fx18));return _0xcc6fx23})};return null}}function removeEntity(_0xcc6fx15,_0xcc6fx16,_0xcc6fx17){return function(_0xcc6fx18){if(_0xcc6fx18){return _0xcc6fx18[_0x59ee[48]]()[_0x59ee[45]](function(){logger[_0x59ee[24]](_0x59ee[22],_0xcc6fx17,_0xcc6fx16,_0x59ee[47]);logger[_0x59ee[26]](_0x59ee[25],_0xcc6fx17,_0xcc6fx16,_0x59ee[47],JSON[_0x59ee[31]](_0xcc6fx18));_0xcc6fx15[_0x59ee[29]](204)[_0x59ee[28]]()})}}}function handleEntityNotFound(_0xcc6fx15,_0xcc6fx16,_0xcc6fx17){return function(_0xcc6fx18){if(!_0xcc6fx18){logger[_0x59ee[50]](_0x59ee[22],_0xcc6fx17,404,_0x59ee[49]);_0xcc6fx15[_0x59ee[29]](404)[_0x59ee[28]]();return null};return _0xcc6fx18}}function handleError(_0xcc6fx15,_0xcc6fx16,_0xcc6fx17){_0xcc6fx16= _0xcc6fx16|| 500;return function(_0xcc6fx27){logger[_0x59ee[50]](_0x59ee[22],_0xcc6fx17,_0xcc6fx16,JSON[_0x59ee[31]](_0xcc6fx27));delete _0xcc6fx27[_0x59ee[51]];_0xcc6fx15[_0x59ee[29]](_0xcc6fx16)[_0x59ee[52]](_0xcc6fx27)}}exports[_0x59ee[53]]= function(_0xcc6fx28,_0xcc6fx15){var _0xcc6fx1b={},_0xcc6fx29={};_0xcc6fx29[_0x59ee[54]]= _[_0x59ee[57]](db[_0x59ee[56]][_0x59ee[55]]);_0xcc6fx29[_0x59ee[58]]= _[_0x59ee[57]](_0xcc6fx28[_0x59ee[58]]);_0xcc6fx29[_0x59ee[59]]= _[_0x59ee[60]](_0xcc6fx29[_0x59ee[54]],_0xcc6fx29[_0x59ee[58]]);_0xcc6fx1b[_0x59ee[61]]= _[_0x59ee[60]](_0xcc6fx29[_0x59ee[54]],qs[_0x59ee[62]](_0xcc6fx28[_0x59ee[58]][_0x59ee[62]]));_0xcc6fx1b[_0x59ee[61]]= (_0xcc6fx1b[_0x59ee[61]][_0x59ee[63]])?_0xcc6fx1b[_0x59ee[61]]:_0xcc6fx29[_0x59ee[54]];if(!_0xcc6fx28[_0x59ee[58]][_0x59ee[65]](_0x59ee[64])){_0xcc6fx1b[_0x59ee[35]]= qs[_0x59ee[35]](_0xcc6fx28[_0x59ee[58]][_0x59ee[35]]);_0xcc6fx1b[_0x59ee[34]]= qs[_0x59ee[34]](_0xcc6fx28[_0x59ee[58]][_0x59ee[34]])};_0xcc6fx1b[_0x59ee[66]]= qs[_0x59ee[67]](_0xcc6fx28[_0x59ee[58]][_0x59ee[67]]);_0xcc6fx1b[_0x59ee[68]]= qs[_0x59ee[59]](_[_0x59ee[69]](_0xcc6fx28[_0x59ee[58]],_0xcc6fx29[_0x59ee[59]]));if(_0xcc6fx28[_0x59ee[58]][_0x59ee[70]]){_0xcc6fx1b[_0x59ee[68]]= _[_0x59ee[73]](_0xcc6fx1b[_0x59ee[68]],{$or:_[_0x59ee[72]](_0xcc6fx1b[_0x59ee[61]],function(_0xcc6fx2a){var _0xcc6fx2b={};_0xcc6fx2b[_0xcc6fx2a]= {$like:_0x59ee[71]+ _0xcc6fx28[_0x59ee[58]][_0x59ee[70]]+ _0x59ee[71]};return _0xcc6fx2b})})};_0xcc6fx1b= _[_0x59ee[73]]({},_0xcc6fx1b,_0xcc6fx28[_0x59ee[74]]);return db[_0x59ee[56]][_0x59ee[76]](_0xcc6fx1b)[_0x59ee[45]](respondWithFilteredResult(_0xcc6fx15,_0xcc6fx1b,_0x59ee[53]))[_0x59ee[75]](handleError(_0xcc6fx15,null,_0x59ee[53]))};exports[_0x59ee[77]]= function(_0xcc6fx28,_0xcc6fx15){var _0xcc6fx1b={raw:false,where:{id:_0xcc6fx28[_0x59ee[79]][_0x59ee[78]]}},_0xcc6fx29={};_0xcc6fx29[_0x59ee[54]]= _[_0x59ee[57]](db[_0x59ee[56]][_0x59ee[55]]);_0xcc6fx29[_0x59ee[58]]= _[_0x59ee[57]](_0xcc6fx28[_0x59ee[58]]);_0xcc6fx29[_0x59ee[59]]= _[_0x59ee[60]](_0xcc6fx29[_0x59ee[54]],_0xcc6fx29[_0x59ee[58]]);_0xcc6fx1b[_0x59ee[61]]= _[_0x59ee[60]](_0xcc6fx29[_0x59ee[54]],qs[_0x59ee[62]](_0xcc6fx28[_0x59ee[58]][_0x59ee[62]]));_0xcc6fx1b[_0x59ee[61]]= (_0xcc6fx1b[_0x59ee[61]][_0x59ee[63]])?_0xcc6fx1b[_0x59ee[61]]:_0xcc6fx29[_0x59ee[54]];_0xcc6fx1b= _[_0x59ee[73]]({},_0xcc6fx1b,_0xcc6fx28[_0x59ee[74]]);return db[_0x59ee[56]][_0x59ee[80]](_0xcc6fx1b)[_0x59ee[45]](handleEntityNotFound(_0xcc6fx15,null,_0x59ee[77]))[_0x59ee[45]](respondWithResult(_0xcc6fx15,null,_0x59ee[77]))[_0x59ee[75]](handleError(_0xcc6fx15,null,_0x59ee[77]))};exports[_0x59ee[81]]= function(_0xcc6fx28,_0xcc6fx15){return db[_0x59ee[56]][_0x59ee[81]](_0xcc6fx28[_0x59ee[82]],{})[_0x59ee[45]](respondWithResult(_0xcc6fx15,201,_0x59ee[81]))[_0x59ee[75]](handleError(_0xcc6fx15,null,_0x59ee[81]))};exports[_0x59ee[46]]= function(_0xcc6fx28,_0xcc6fx15){if(_0xcc6fx28[_0x59ee[82]][_0x59ee[78]]){delete _0xcc6fx28[_0x59ee[82]][_0x59ee[78]]};return db[_0x59ee[56]][_0x59ee[80]]({where:{id:_0xcc6fx28[_0x59ee[79]][_0x59ee[78]]}})[_0x59ee[45]](handleEntityNotFound(_0xcc6fx15,null,_0x59ee[46]))[_0x59ee[45]](saveUpdates(_0xcc6fx28[_0x59ee[82]],null,_0x59ee[46]))[_0x59ee[45]](respondWithResult(_0xcc6fx15,null,_0x59ee[46]))[_0x59ee[75]](handleError(_0xcc6fx15,null,_0x59ee[46]))};exports[_0x59ee[48]]= function(_0xcc6fx28,_0xcc6fx15){return db[_0x59ee[56]][_0x59ee[80]]({where:{id:_0xcc6fx28[_0x59ee[79]][_0x59ee[78]]}})[_0x59ee[45]](handleEntityNotFound(_0xcc6fx15,null,_0x59ee[48]))[_0x59ee[45]](removeEntity(_0xcc6fx15,null,_0x59ee[48]))[_0x59ee[75]](handleError(_0xcc6fx15,null,_0x59ee[48]))};exports[_0x59ee[83]]= function(_0xcc6fx28,_0xcc6fx15){return db[_0x59ee[56]][_0x59ee[83]]()[_0x59ee[45]](respondWithResult(_0xcc6fx15,null,_0x59ee[83]))[_0x59ee[75]](handleError(_0xcc6fx15,null,_0x59ee[83]))};exports[_0x59ee[84]]= function(_0xcc6fx28,_0xcc6fx15,_0xcc6fx2c){return db[_0x59ee[87]][_0x59ee[80]]({where:{id:_0xcc6fx28[_0x59ee[79]][_0x59ee[78]]}})[_0x59ee[45]](handleEntityNotFound(_0xcc6fx15,null,_0x59ee[84]))[_0x59ee[45]](function(_0xcc6fx18){if(_0xcc6fx18){return _0xcc6fx18[_0x59ee[84]](_0xcc6fx28[_0x59ee[82]][_0x59ee[85]],_[_0x59ee[86]](_0xcc6fx28[_0x59ee[82]],[_0x59ee[85],_0x59ee[78]])|| {})};return null})[_0x59ee[45]](respondWithResult(_0xcc6fx15,null,_0x59ee[84]))[_0x59ee[75]](handleError(_0xcc6fx15,null,_0x59ee[84]))};exports[_0x59ee[88]]= function(_0xcc6fx28,_0xcc6fx18,_0xcc6fx2c){var _0xcc6fx1b={};var _0xcc6fx29={};var _0xcc6fx2d;var _0xcc6fx1c;return db[_0x59ee[56]][_0x59ee[89]]({where:{id:_0xcc6fx28[_0x59ee[79]][_0x59ee[78]]}})[_0x59ee[45]](handleEntityNotFound(_0xcc6fx18,null,_0x59ee[88]))[_0x59ee[45]](function(_0xcc6fx18){if(_0xcc6fx18){_0xcc6fx2d= _0xcc6fx18;_0xcc6fx29[_0x59ee[54]]= _[_0x59ee[57]](db[_0x59ee[87]][_0x59ee[55]]);_0xcc6fx29[_0x59ee[58]]= _[_0x59ee[57]](_0xcc6fx28[_0x59ee[58]]);_0xcc6fx29[_0x59ee[59]]= _[_0x59ee[60]](_0xcc6fx29[_0x59ee[54]],_0xcc6fx29[_0x59ee[58]]);_0xcc6fx1b[_0x59ee[61]]= _[_0x59ee[60]](_0xcc6fx29[_0x59ee[54]],qs[_0x59ee[62]](_0xcc6fx28[_0x59ee[58]][_0x59ee[62]]));_0xcc6fx1b[_0x59ee[61]]= (_0xcc6fx1b[_0x59ee[61]][_0x59ee[63]])?_0xcc6fx1b[_0x59ee[61]]:_0xcc6fx29[_0x59ee[54]];_0xcc6fx1b[_0x59ee[66]]= qs[_0x59ee[67]](_0xcc6fx28[_0x59ee[58]][_0x59ee[67]]);_0xcc6fx1b[_0x59ee[68]]= qs[_0x59ee[59]](_[_0x59ee[69]](_0xcc6fx28[_0x59ee[58]],_0xcc6fx29[_0x59ee[59]]));if(_0xcc6fx28[_0x59ee[58]][_0x59ee[70]]){_0xcc6fx1b[_0x59ee[68]]= _[_0x59ee[73]](_0xcc6fx1b[_0x59ee[68]],{$or:_[_0x59ee[72]](_0xcc6fx1b[_0x59ee[61]],function(_0xcc6fx2a){var _0xcc6fx2b={};_0xcc6fx2b[_0xcc6fx2a]= {$like:_0x59ee[71]+ _0xcc6fx28[_0x59ee[58]][_0x59ee[70]]+ _0x59ee[71]};return _0xcc6fx2b})})};_0xcc6fx1b= _[_0x59ee[73]]({},_0xcc6fx1b,_0xcc6fx28[_0x59ee[74]]);return _0xcc6fx2d[_0x59ee[88]](_0xcc6fx1b)}})[_0x59ee[45]](function(_0xcc6fx2f){if(_0xcc6fx2f){_0xcc6fx1c= _0xcc6fx2f[_0x59ee[63]];if(!_0xcc6fx28[_0x59ee[58]][_0x59ee[65]](_0x59ee[64])){_0xcc6fx1b[_0x59ee[35]]= qs[_0x59ee[35]](_0xcc6fx28[_0x59ee[58]][_0x59ee[35]]);_0xcc6fx1b[_0x59ee[34]]= qs[_0x59ee[34]](_0xcc6fx28[_0x59ee[58]][_0x59ee[34]])};return _0xcc6fx2d[_0x59ee[88]](_0xcc6fx1b)}})[_0x59ee[45]](function(_0xcc6fx2e){return _0xcc6fx2e?{count:_0xcc6fx1c,rows:_0xcc6fx2e}:null})[_0x59ee[45]](respondWithResult(_0xcc6fx18,null,_0x59ee[88]))[_0x59ee[75]](handleError(_0xcc6fx18,null,_0x59ee[88]))}
\ No newline at end of file
index 66eb019..dd265c5 100644 (file)
@@ -1 +1 @@
-var _0x495d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x63\x68\x61\x74\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x495d[0];var _=require(_0x495d[1]);var util=require(_0x495d[2]);var logger=require(_0x495d[4])(_0x495d[3]);var attributes=require(_0x495d[5]);module[_0x495d[6]]= function(_0xf56fx5,_0xf56fx6){return _0xf56fx5[_0x495d[9]](_0x495d[7],attributes,{tableName:_0x495d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x2086=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x63\x68\x61\x74\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x2086[0];var _=require(_0x2086[1]);var util=require(_0x2086[2]);var logger=require(_0x2086[4])(_0x2086[3]);var attributes=require(_0x2086[5]);module[_0x2086[6]]= function(_0xdf2bx5,_0xdf2bx6){return _0xdf2bx5[_0x2086[9]](_0x2086[7],attributes,{tableName:_0x2086[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 41eba0d..b3d034e 100644 (file)
@@ -1 +1 @@
-var _0x8cf5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x8cf5[0];var _=require(_0x8cf5[1]);var util=require(_0x8cf5[2]);var moment=require(_0x8cf5[3]);var BPromise=require(_0x8cf5[4]);var db=require(_0x8cf5[6])[_0x8cf5[5]];var utils=require(_0x8cf5[7]);var logger=require(_0x8cf5[9])(_0x8cf5[8]);var jayson=require(_0x8cf5[10]);var client=jayson[_0x8cf5[12]][_0x8cf5[11]]({port:9002});function respondWithRpcPromise(_0x65a0xb,_0x65a0xc,_0x65a0xd){return  new BPromise(function(_0x65a0xe,_0x65a0xf){return client[_0x8cf5[25]](_0x65a0xb,_0x65a0xd)[_0x8cf5[24]](function(_0x65a0x11){logger[_0x8cf5[17]](_0x8cf5[13],_0x65a0xc,_0x8cf5[16]);logger[_0x8cf5[20]](_0x8cf5[18],_0x65a0xc,_0x8cf5[16],JSON[_0x8cf5[19]](_0x65a0x11));if(_0x65a0x11[_0x8cf5[14]]){if(_0x65a0x11[_0x8cf5[14]][_0x8cf5[21]]=== 500){logger[_0x8cf5[14]](_0x8cf5[13],_0x65a0xc,_0x65a0x11[_0x8cf5[14]][_0x8cf5[22]]);return _0x65a0xf(_0x65a0x11[_0x8cf5[14]][_0x8cf5[22]])};logger[_0x8cf5[14]](_0x8cf5[13],_0x65a0xc,_0x65a0x11[_0x8cf5[14]][_0x8cf5[22]]);return _0x65a0xe(_0x65a0x11[_0x8cf5[14]][_0x8cf5[22]])}else {logger[_0x8cf5[17]](_0x8cf5[13],_0x65a0xc,_0x8cf5[16]);_0x65a0xe(_0x65a0x11[_0x8cf5[23]][_0x8cf5[22]])}})[_0x8cf5[15]](function(_0x65a0x10){logger[_0x8cf5[14]](_0x8cf5[13],_0x65a0xc,_0x65a0x10);_0x65a0xf(_0x65a0x10)})})}
\ No newline at end of file
+var _0x11a8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x11a8[0];var _=require(_0x11a8[1]);var util=require(_0x11a8[2]);var moment=require(_0x11a8[3]);var BPromise=require(_0x11a8[4]);var db=require(_0x11a8[6])[_0x11a8[5]];var utils=require(_0x11a8[7]);var logger=require(_0x11a8[9])(_0x11a8[8]);var jayson=require(_0x11a8[10]);var client=jayson[_0x11a8[12]][_0x11a8[11]]({port:9002});function respondWithRpcPromise(_0x3837xb,_0x3837xc,_0x3837xd){return  new BPromise(function(_0x3837xe,_0x3837xf){return client[_0x11a8[25]](_0x3837xb,_0x3837xd)[_0x11a8[24]](function(_0x3837x11){logger[_0x11a8[17]](_0x11a8[13],_0x3837xc,_0x11a8[16]);logger[_0x11a8[20]](_0x11a8[18],_0x3837xc,_0x11a8[16],JSON[_0x11a8[19]](_0x3837x11));if(_0x3837x11[_0x11a8[14]]){if(_0x3837x11[_0x11a8[14]][_0x11a8[21]]=== 500){logger[_0x11a8[14]](_0x11a8[13],_0x3837xc,_0x3837x11[_0x11a8[14]][_0x11a8[22]]);return _0x3837xf(_0x3837x11[_0x11a8[14]][_0x11a8[22]])};logger[_0x11a8[14]](_0x11a8[13],_0x3837xc,_0x3837x11[_0x11a8[14]][_0x11a8[22]]);return _0x3837xe(_0x3837x11[_0x11a8[14]][_0x11a8[22]])}else {logger[_0x11a8[17]](_0x11a8[13],_0x3837xc,_0x11a8[16]);_0x3837xe(_0x3837x11[_0x11a8[23]][_0x11a8[22]])}})[_0x11a8[15]](function(_0x3837x10){logger[_0x11a8[14]](_0x11a8[13],_0x3837xc,_0x3837x10);_0x3837xf(_0x3837x10)})})}
\ No newline at end of file
index 5454d91..30bd698 100644 (file)
@@ -1 +1 @@
-var _0x217c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x217c[0];var multer=require(_0x217c[1]);var util=require(_0x217c[2]);var path=require(_0x217c[3]);var express=require(_0x217c[4]);var router=express.Router();var auth=require(_0x217c[5]);var config=require(_0x217c[6]);var controller=require(_0x217c[7]);router[_0x217c[11]](_0x217c[8],auth[_0x217c[9]](),controller[_0x217c[10]]);router[_0x217c[11]](_0x217c[12],auth[_0x217c[9]](),controller[_0x217c[13]]);router[_0x217c[11]](_0x217c[14],auth[_0x217c[9]](),controller[_0x217c[15]]);router[_0x217c[11]](_0x217c[16],auth[_0x217c[9]](),controller[_0x217c[17]]);router[_0x217c[19]](_0x217c[8],auth[_0x217c[9]](),controller[_0x217c[18]]);router[_0x217c[19]](_0x217c[16],auth[_0x217c[9]](),controller[_0x217c[20]]);router[_0x217c[22]](_0x217c[14],auth[_0x217c[9]](),controller[_0x217c[21]]);router[_0x217c[24]](_0x217c[14],auth[_0x217c[9]](),controller[_0x217c[23]]);module[_0x217c[25]]= router
\ No newline at end of file
+var _0xe9d3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe9d3[0];var multer=require(_0xe9d3[1]);var util=require(_0xe9d3[2]);var path=require(_0xe9d3[3]);var express=require(_0xe9d3[4]);var router=express.Router();var auth=require(_0xe9d3[5]);var config=require(_0xe9d3[6]);var controller=require(_0xe9d3[7]);router[_0xe9d3[11]](_0xe9d3[8],auth[_0xe9d3[9]](),controller[_0xe9d3[10]]);router[_0xe9d3[11]](_0xe9d3[12],auth[_0xe9d3[9]](),controller[_0xe9d3[13]]);router[_0xe9d3[11]](_0xe9d3[14],auth[_0xe9d3[9]](),controller[_0xe9d3[15]]);router[_0xe9d3[11]](_0xe9d3[16],auth[_0xe9d3[9]](),controller[_0xe9d3[17]]);router[_0xe9d3[19]](_0xe9d3[8],auth[_0xe9d3[9]](),controller[_0xe9d3[18]]);router[_0xe9d3[19]](_0xe9d3[16],auth[_0xe9d3[9]](),controller[_0xe9d3[20]]);router[_0xe9d3[22]](_0xe9d3[14],auth[_0xe9d3[9]](),controller[_0xe9d3[21]]);router[_0xe9d3[24]](_0xe9d3[14],auth[_0xe9d3[9]](),controller[_0xe9d3[23]]);module[_0xe9d3[25]]= router
\ No newline at end of file
index 1d6d90a..4cab758 100644 (file)
@@ -1 +1 @@
-var _0xceb3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x42\x4C\x4F\x42","\x62\x6F\x64\x79","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x65\x78\x74\x65\x72\x6E\x61\x6C","\x67\x72\x6F\x75\x70"];_0xceb3[0];var Sequelize=require(_0xceb3[1]);module[_0xceb3[2]]= {body:{type:Sequelize[_0xceb3[3]],allowNull:false,validate:{notNull:true,notEmpty:true},get:function(){return this[_0xceb3[5]](_0xceb3[4]).toString()}},type:{type:Sequelize.ENUM(_0xceb3[6],_0xceb3[7],_0xceb3[8])}}
\ No newline at end of file
+var _0xd520=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x42\x4C\x4F\x42","\x62\x6F\x64\x79","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x65\x78\x74\x65\x72\x6E\x61\x6C","\x67\x72\x6F\x75\x70"];_0xd520[0];var Sequelize=require(_0xd520[1]);module[_0xd520[2]]= {body:{type:Sequelize[_0xd520[3]],allowNull:false,validate:{notNull:true,notEmpty:true},get:function(){return this[_0xd520[5]](_0xd520[4]).toString()}},type:{type:Sequelize.ENUM(_0xd520[6],_0xd520[7],_0xd520[8])}}
\ No newline at end of file
index 1a8af96..5a7d0f8 100644 (file)
@@ -1 +1 @@
-var _0x8d3e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x8d3e[0];var jsonpatch=require(_0x8d3e[1]);var rp=require(_0x8d3e[2]);var moment=require(_0x8d3e[3]);var BPromise=require(_0x8d3e[4]);var util=require(_0x8d3e[5]);var path=require(_0x8d3e[6]);var sox=require(_0x8d3e[7]);var ejs=require(_0x8d3e[8]);var fs=require(_0x8d3e[9]);var _=require(_0x8d3e[10]);var squel=require(_0x8d3e[11]);var crypto=require(_0x8d3e[12]);var jsforce=require(_0x8d3e[13]);var toCsv=require(_0x8d3e[14]);var qs=require(_0x8d3e[15]);var logger=require(_0x8d3e[17])(_0x8d3e[16]);var utils=require(_0x8d3e[18]);var config=require(_0x8d3e[19]);var db=require(_0x8d3e[21])[_0x8d3e[20]];function respondWithStatusCode(_0x58a7x15,_0x58a7x16,_0x58a7x17){_0x58a7x16= _0x58a7x16|| 204;return function(_0x58a7x18){if(_0x58a7x18){logger[_0x8d3e[24]](_0x8d3e[22],_0x58a7x17,_0x58a7x16,_0x8d3e[23]);logger[_0x8d3e[26]](_0x8d3e[25],_0x58a7x17,_0x58a7x16,_0x8d3e[23]);return _0x58a7x15[_0x8d3e[27]](_0x58a7x16)};return _0x58a7x15[_0x8d3e[29]](304)[_0x8d3e[28]]()}}function respondWithResult(_0x58a7x15,_0x58a7x16,_0x58a7x17){_0x58a7x16= _0x58a7x16|| 200;return function(_0x58a7x18){if(_0x58a7x18){logger[_0x8d3e[24]](_0x8d3e[22],_0x58a7x17,_0x58a7x16,_0x8d3e[30]);logger[_0x8d3e[26]](_0x8d3e[25],_0x58a7x17,_0x58a7x16,_0x8d3e[30],JSON[_0x8d3e[31]](_0x58a7x18));return _0x58a7x15[_0x8d3e[29]](_0x58a7x16)[_0x8d3e[32]](_0x58a7x18)};return _0x58a7x15[_0x8d3e[29]](304)[_0x8d3e[28]]()}}function respondWithFilteredResult(_0x58a7x15,_0x58a7x1b,_0x58a7x17){return function(_0x58a7x18){if(_0x58a7x18){var _0x58a7x1c=_0x58a7x18[_0x8d3e[33]],_0x58a7x1d=_0x58a7x1b[_0x8d3e[34]],_0x58a7x1e=_0x58a7x1b[_0x8d3e[34]]+ _0x58a7x1b[_0x8d3e[35]],_0x58a7x16;if(_0x58a7x1e>= _0x58a7x1c){_0x58a7x1e= _0x58a7x1c;_0x58a7x16= 200}else {_0x58a7x16= 206};_0x58a7x15[_0x8d3e[29]](_0x58a7x16);logger[_0x8d3e[24]](_0x8d3e[22],_0x58a7x17,_0x58a7x16,_0x8d3e[36]);logger[_0x8d3e[26]](_0x8d3e[25],_0x58a7x17,_0x58a7x16,_0x8d3e[30],JSON[_0x8d3e[31]](_0x58a7x18));return _0x58a7x15[_0x8d3e[40]](_0x8d3e[37],_0x58a7x1d+ _0x8d3e[38]+ _0x58a7x1e+ _0x8d3e[39]+ _0x58a7x1c)[_0x8d3e[32]](_0x58a7x18)};return null}}function patchUpdates(_0x58a7x20){return function(_0x58a7x18){try{jsonpatch[_0x8d3e[41]](_0x58a7x18,_0x58a7x20,true)}catch(err){return BPromise[_0x8d3e[42]](err)};return _0x58a7x18[_0x8d3e[43]]()}}function saveUpdates(_0x58a7x22,_0x58a7x16,_0x58a7x17){return function(_0x58a7x18){if(_0x58a7x18){return _0x58a7x18[_0x8d3e[46]](_0x58a7x22)[_0x8d3e[45]](function(_0x58a7x23){logger[_0x8d3e[24]](_0x8d3e[22],_0x58a7x17,_0x58a7x16,_0x8d3e[44]);logger[_0x8d3e[26]](_0x8d3e[25],_0x58a7x17,_0x58a7x16,_0x8d3e[44],JSON[_0x8d3e[31]](_0x58a7x18));return _0x58a7x23})};return null}}function removeEntity(_0x58a7x15,_0x58a7x16,_0x58a7x17){return function(_0x58a7x18){if(_0x58a7x18){return _0x58a7x18[_0x8d3e[48]]()[_0x8d3e[45]](function(){logger[_0x8d3e[24]](_0x8d3e[22],_0x58a7x17,_0x58a7x16,_0x8d3e[47]);logger[_0x8d3e[26]](_0x8d3e[25],_0x58a7x17,_0x58a7x16,_0x8d3e[47],JSON[_0x8d3e[31]](_0x58a7x18));_0x58a7x15[_0x8d3e[29]](204)[_0x8d3e[28]]()})}}}function handleEntityNotFound(_0x58a7x15,_0x58a7x16,_0x58a7x17){return function(_0x58a7x18){if(!_0x58a7x18){logger[_0x8d3e[50]](_0x8d3e[22],_0x58a7x17,404,_0x8d3e[49]);_0x58a7x15[_0x8d3e[29]](404)[_0x8d3e[28]]();return null};return _0x58a7x18}}function handleError(_0x58a7x15,_0x58a7x16,_0x58a7x17){_0x58a7x16= _0x58a7x16|| 500;return function(_0x58a7x27){logger[_0x8d3e[50]](_0x8d3e[22],_0x58a7x17,_0x58a7x16,JSON[_0x8d3e[31]](_0x58a7x27));delete _0x58a7x27[_0x8d3e[51]];_0x58a7x15[_0x8d3e[29]](_0x58a7x16)[_0x8d3e[52]](_0x58a7x27)}}exports[_0x8d3e[53]]= function(_0x58a7x28,_0x58a7x15){var _0x58a7x1b={},_0x58a7x29={};_0x58a7x29[_0x8d3e[54]]= _[_0x8d3e[57]](db[_0x8d3e[56]][_0x8d3e[55]]);_0x58a7x29[_0x8d3e[58]]= _[_0x8d3e[57]](_0x58a7x28[_0x8d3e[58]]);_0x58a7x29[_0x8d3e[59]]= _[_0x8d3e[60]](_0x58a7x29[_0x8d3e[54]],_0x58a7x29[_0x8d3e[58]]);_0x58a7x1b[_0x8d3e[61]]= _[_0x8d3e[60]](_0x58a7x29[_0x8d3e[54]],qs[_0x8d3e[62]](_0x58a7x28[_0x8d3e[58]][_0x8d3e[62]]));_0x58a7x1b[_0x8d3e[61]]= (_0x58a7x1b[_0x8d3e[61]][_0x8d3e[63]])?_0x58a7x1b[_0x8d3e[61]]:_0x58a7x29[_0x8d3e[54]];if(!_0x58a7x28[_0x8d3e[58]][_0x8d3e[65]](_0x8d3e[64])){_0x58a7x1b[_0x8d3e[35]]= qs[_0x8d3e[35]](_0x58a7x28[_0x8d3e[58]][_0x8d3e[35]]);_0x58a7x1b[_0x8d3e[34]]= qs[_0x8d3e[34]](_0x58a7x28[_0x8d3e[58]][_0x8d3e[34]])};_0x58a7x1b[_0x8d3e[66]]= qs[_0x8d3e[67]](_0x58a7x28[_0x8d3e[58]][_0x8d3e[67]]);_0x58a7x1b[_0x8d3e[68]]= qs[_0x8d3e[59]](_[_0x8d3e[69]](_0x58a7x28[_0x8d3e[58]],_0x58a7x29[_0x8d3e[59]]));if(_0x58a7x28[_0x8d3e[58]][_0x8d3e[70]]){_0x58a7x1b[_0x8d3e[68]]= _[_0x8d3e[73]](_0x58a7x1b[_0x8d3e[68]],{$or:_[_0x8d3e[72]](_0x58a7x1b[_0x8d3e[61]],function(_0x58a7x2a){var _0x58a7x2b={};_0x58a7x2b[_0x58a7x2a]= {$like:_0x8d3e[71]+ _0x58a7x28[_0x8d3e[58]][_0x8d3e[70]]+ _0x8d3e[71]};return _0x58a7x2b})})};_0x58a7x1b= _[_0x8d3e[73]]({},_0x58a7x1b,_0x58a7x28[_0x8d3e[74]]);return db[_0x8d3e[56]][_0x8d3e[76]](_0x58a7x1b)[_0x8d3e[45]](respondWithFilteredResult(_0x58a7x15,_0x58a7x1b,_0x8d3e[53]))[_0x8d3e[75]](handleError(_0x58a7x15,null,_0x8d3e[53]))};exports[_0x8d3e[77]]= function(_0x58a7x28,_0x58a7x15){var _0x58a7x1b={raw:true,where:{id:_0x58a7x28[_0x8d3e[79]][_0x8d3e[78]]}},_0x58a7x29={};_0x58a7x29[_0x8d3e[54]]= _[_0x8d3e[57]](db[_0x8d3e[56]][_0x8d3e[55]]);_0x58a7x29[_0x8d3e[58]]= _[_0x8d3e[57]](_0x58a7x28[_0x8d3e[58]]);_0x58a7x29[_0x8d3e[59]]= _[_0x8d3e[60]](_0x58a7x29[_0x8d3e[54]],_0x58a7x29[_0x8d3e[58]]);_0x58a7x1b[_0x8d3e[61]]= _[_0x8d3e[60]](_0x58a7x29[_0x8d3e[54]],qs[_0x8d3e[62]](_0x58a7x28[_0x8d3e[58]][_0x8d3e[62]]));_0x58a7x1b[_0x8d3e[61]]= (_0x58a7x1b[_0x8d3e[61]][_0x8d3e[63]])?_0x58a7x1b[_0x8d3e[61]]:_0x58a7x29[_0x8d3e[54]];_0x58a7x1b= _[_0x8d3e[73]]({},_0x58a7x1b,_0x58a7x28[_0x8d3e[74]]);return db[_0x8d3e[56]][_0x8d3e[80]](_0x58a7x1b)[_0x8d3e[45]](handleEntityNotFound(_0x58a7x15,null,_0x8d3e[77]))[_0x8d3e[45]](respondWithResult(_0x58a7x15,null,_0x8d3e[77]))[_0x8d3e[75]](handleError(_0x58a7x15,null,_0x8d3e[77]))};exports[_0x8d3e[81]]= function(_0x58a7x28,_0x58a7x15){return db[_0x8d3e[56]][_0x8d3e[81]](_0x58a7x28[_0x8d3e[82]],{})[_0x8d3e[45]](respondWithResult(_0x58a7x15,201,_0x8d3e[81]))[_0x8d3e[75]](handleError(_0x58a7x15,null,_0x8d3e[81]))};exports[_0x8d3e[46]]= function(_0x58a7x28,_0x58a7x15){if(_0x58a7x28[_0x8d3e[82]][_0x8d3e[78]]){delete _0x58a7x28[_0x8d3e[82]][_0x8d3e[78]]};return db[_0x8d3e[56]][_0x8d3e[80]]({where:{id:_0x58a7x28[_0x8d3e[79]][_0x8d3e[78]]}})[_0x8d3e[45]](handleEntityNotFound(_0x58a7x15,null,_0x8d3e[46]))[_0x8d3e[45]](saveUpdates(_0x58a7x28[_0x8d3e[82]],null,_0x8d3e[46]))[_0x8d3e[45]](respondWithResult(_0x58a7x15,null,_0x8d3e[46]))[_0x8d3e[75]](handleError(_0x58a7x15,null,_0x8d3e[46]))};exports[_0x8d3e[48]]= function(_0x58a7x28,_0x58a7x15){return db[_0x8d3e[56]][_0x8d3e[80]]({where:{id:_0x58a7x28[_0x8d3e[79]][_0x8d3e[78]]}})[_0x8d3e[45]](handleEntityNotFound(_0x58a7x15,null,_0x8d3e[48]))[_0x8d3e[45]](removeEntity(_0x58a7x15,null,_0x8d3e[48]))[_0x8d3e[75]](handleError(_0x58a7x15,null,_0x8d3e[48]))};exports[_0x8d3e[83]]= function(_0x58a7x28,_0x58a7x15){return db[_0x8d3e[56]][_0x8d3e[83]]()[_0x8d3e[45]](respondWithResult(_0x58a7x15,null,_0x8d3e[83]))[_0x8d3e[75]](handleError(_0x58a7x15,null,_0x8d3e[83]))}
\ No newline at end of file
+var _0x7329=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x7329[0];var jsonpatch=require(_0x7329[1]);var rp=require(_0x7329[2]);var moment=require(_0x7329[3]);var BPromise=require(_0x7329[4]);var util=require(_0x7329[5]);var path=require(_0x7329[6]);var sox=require(_0x7329[7]);var ejs=require(_0x7329[8]);var fs=require(_0x7329[9]);var _=require(_0x7329[10]);var squel=require(_0x7329[11]);var crypto=require(_0x7329[12]);var jsforce=require(_0x7329[13]);var toCsv=require(_0x7329[14]);var qs=require(_0x7329[15]);var logger=require(_0x7329[17])(_0x7329[16]);var utils=require(_0x7329[18]);var config=require(_0x7329[19]);var db=require(_0x7329[21])[_0x7329[20]];function respondWithStatusCode(_0x5505x15,_0x5505x16,_0x5505x17){_0x5505x16= _0x5505x16|| 204;return function(_0x5505x18){if(_0x5505x18){logger[_0x7329[24]](_0x7329[22],_0x5505x17,_0x5505x16,_0x7329[23]);logger[_0x7329[26]](_0x7329[25],_0x5505x17,_0x5505x16,_0x7329[23]);return _0x5505x15[_0x7329[27]](_0x5505x16)};return _0x5505x15[_0x7329[29]](304)[_0x7329[28]]()}}function respondWithResult(_0x5505x15,_0x5505x16,_0x5505x17){_0x5505x16= _0x5505x16|| 200;return function(_0x5505x18){if(_0x5505x18){logger[_0x7329[24]](_0x7329[22],_0x5505x17,_0x5505x16,_0x7329[30]);logger[_0x7329[26]](_0x7329[25],_0x5505x17,_0x5505x16,_0x7329[30],JSON[_0x7329[31]](_0x5505x18));return _0x5505x15[_0x7329[29]](_0x5505x16)[_0x7329[32]](_0x5505x18)};return _0x5505x15[_0x7329[29]](304)[_0x7329[28]]()}}function respondWithFilteredResult(_0x5505x15,_0x5505x1b,_0x5505x17){return function(_0x5505x18){if(_0x5505x18){var _0x5505x1c=_0x5505x18[_0x7329[33]],_0x5505x1d=_0x5505x1b[_0x7329[34]],_0x5505x1e=_0x5505x1b[_0x7329[34]]+ _0x5505x1b[_0x7329[35]],_0x5505x16;if(_0x5505x1e>= _0x5505x1c){_0x5505x1e= _0x5505x1c;_0x5505x16= 200}else {_0x5505x16= 206};_0x5505x15[_0x7329[29]](_0x5505x16);logger[_0x7329[24]](_0x7329[22],_0x5505x17,_0x5505x16,_0x7329[36]);logger[_0x7329[26]](_0x7329[25],_0x5505x17,_0x5505x16,_0x7329[30],JSON[_0x7329[31]](_0x5505x18));return _0x5505x15[_0x7329[40]](_0x7329[37],_0x5505x1d+ _0x7329[38]+ _0x5505x1e+ _0x7329[39]+ _0x5505x1c)[_0x7329[32]](_0x5505x18)};return null}}function patchUpdates(_0x5505x20){return function(_0x5505x18){try{jsonpatch[_0x7329[41]](_0x5505x18,_0x5505x20,true)}catch(err){return BPromise[_0x7329[42]](err)};return _0x5505x18[_0x7329[43]]()}}function saveUpdates(_0x5505x22,_0x5505x16,_0x5505x17){return function(_0x5505x18){if(_0x5505x18){return _0x5505x18[_0x7329[46]](_0x5505x22)[_0x7329[45]](function(_0x5505x23){logger[_0x7329[24]](_0x7329[22],_0x5505x17,_0x5505x16,_0x7329[44]);logger[_0x7329[26]](_0x7329[25],_0x5505x17,_0x5505x16,_0x7329[44],JSON[_0x7329[31]](_0x5505x18));return _0x5505x23})};return null}}function removeEntity(_0x5505x15,_0x5505x16,_0x5505x17){return function(_0x5505x18){if(_0x5505x18){return _0x5505x18[_0x7329[48]]()[_0x7329[45]](function(){logger[_0x7329[24]](_0x7329[22],_0x5505x17,_0x5505x16,_0x7329[47]);logger[_0x7329[26]](_0x7329[25],_0x5505x17,_0x5505x16,_0x7329[47],JSON[_0x7329[31]](_0x5505x18));_0x5505x15[_0x7329[29]](204)[_0x7329[28]]()})}}}function handleEntityNotFound(_0x5505x15,_0x5505x16,_0x5505x17){return function(_0x5505x18){if(!_0x5505x18){logger[_0x7329[50]](_0x7329[22],_0x5505x17,404,_0x7329[49]);_0x5505x15[_0x7329[29]](404)[_0x7329[28]]();return null};return _0x5505x18}}function handleError(_0x5505x15,_0x5505x16,_0x5505x17){_0x5505x16= _0x5505x16|| 500;return function(_0x5505x27){logger[_0x7329[50]](_0x7329[22],_0x5505x17,_0x5505x16,JSON[_0x7329[31]](_0x5505x27));delete _0x5505x27[_0x7329[51]];_0x5505x15[_0x7329[29]](_0x5505x16)[_0x7329[52]](_0x5505x27)}}exports[_0x7329[53]]= function(_0x5505x28,_0x5505x15){var _0x5505x1b={},_0x5505x29={};_0x5505x29[_0x7329[54]]= _[_0x7329[57]](db[_0x7329[56]][_0x7329[55]]);_0x5505x29[_0x7329[58]]= _[_0x7329[57]](_0x5505x28[_0x7329[58]]);_0x5505x29[_0x7329[59]]= _[_0x7329[60]](_0x5505x29[_0x7329[54]],_0x5505x29[_0x7329[58]]);_0x5505x1b[_0x7329[61]]= _[_0x7329[60]](_0x5505x29[_0x7329[54]],qs[_0x7329[62]](_0x5505x28[_0x7329[58]][_0x7329[62]]));_0x5505x1b[_0x7329[61]]= (_0x5505x1b[_0x7329[61]][_0x7329[63]])?_0x5505x1b[_0x7329[61]]:_0x5505x29[_0x7329[54]];if(!_0x5505x28[_0x7329[58]][_0x7329[65]](_0x7329[64])){_0x5505x1b[_0x7329[35]]= qs[_0x7329[35]](_0x5505x28[_0x7329[58]][_0x7329[35]]);_0x5505x1b[_0x7329[34]]= qs[_0x7329[34]](_0x5505x28[_0x7329[58]][_0x7329[34]])};_0x5505x1b[_0x7329[66]]= qs[_0x7329[67]](_0x5505x28[_0x7329[58]][_0x7329[67]]);_0x5505x1b[_0x7329[68]]= qs[_0x7329[59]](_[_0x7329[69]](_0x5505x28[_0x7329[58]],_0x5505x29[_0x7329[59]]));if(_0x5505x28[_0x7329[58]][_0x7329[70]]){_0x5505x1b[_0x7329[68]]= _[_0x7329[73]](_0x5505x1b[_0x7329[68]],{$or:_[_0x7329[72]](_0x5505x1b[_0x7329[61]],function(_0x5505x2a){var _0x5505x2b={};_0x5505x2b[_0x5505x2a]= {$like:_0x7329[71]+ _0x5505x28[_0x7329[58]][_0x7329[70]]+ _0x7329[71]};return _0x5505x2b})})};_0x5505x1b= _[_0x7329[73]]({},_0x5505x1b,_0x5505x28[_0x7329[74]]);return db[_0x7329[56]][_0x7329[76]](_0x5505x1b)[_0x7329[45]](respondWithFilteredResult(_0x5505x15,_0x5505x1b,_0x7329[53]))[_0x7329[75]](handleError(_0x5505x15,null,_0x7329[53]))};exports[_0x7329[77]]= function(_0x5505x28,_0x5505x15){var _0x5505x1b={raw:true,where:{id:_0x5505x28[_0x7329[79]][_0x7329[78]]}},_0x5505x29={};_0x5505x29[_0x7329[54]]= _[_0x7329[57]](db[_0x7329[56]][_0x7329[55]]);_0x5505x29[_0x7329[58]]= _[_0x7329[57]](_0x5505x28[_0x7329[58]]);_0x5505x29[_0x7329[59]]= _[_0x7329[60]](_0x5505x29[_0x7329[54]],_0x5505x29[_0x7329[58]]);_0x5505x1b[_0x7329[61]]= _[_0x7329[60]](_0x5505x29[_0x7329[54]],qs[_0x7329[62]](_0x5505x28[_0x7329[58]][_0x7329[62]]));_0x5505x1b[_0x7329[61]]= (_0x5505x1b[_0x7329[61]][_0x7329[63]])?_0x5505x1b[_0x7329[61]]:_0x5505x29[_0x7329[54]];_0x5505x1b= _[_0x7329[73]]({},_0x5505x1b,_0x5505x28[_0x7329[74]]);return db[_0x7329[56]][_0x7329[80]](_0x5505x1b)[_0x7329[45]](handleEntityNotFound(_0x5505x15,null,_0x7329[77]))[_0x7329[45]](respondWithResult(_0x5505x15,null,_0x7329[77]))[_0x7329[75]](handleError(_0x5505x15,null,_0x7329[77]))};exports[_0x7329[81]]= function(_0x5505x28,_0x5505x15){return db[_0x7329[56]][_0x7329[81]](_0x5505x28[_0x7329[82]],{})[_0x7329[45]](respondWithResult(_0x5505x15,201,_0x7329[81]))[_0x7329[75]](handleError(_0x5505x15,null,_0x7329[81]))};exports[_0x7329[46]]= function(_0x5505x28,_0x5505x15){if(_0x5505x28[_0x7329[82]][_0x7329[78]]){delete _0x5505x28[_0x7329[82]][_0x7329[78]]};return db[_0x7329[56]][_0x7329[80]]({where:{id:_0x5505x28[_0x7329[79]][_0x7329[78]]}})[_0x7329[45]](handleEntityNotFound(_0x5505x15,null,_0x7329[46]))[_0x7329[45]](saveUpdates(_0x5505x28[_0x7329[82]],null,_0x7329[46]))[_0x7329[45]](respondWithResult(_0x5505x15,null,_0x7329[46]))[_0x7329[75]](handleError(_0x5505x15,null,_0x7329[46]))};exports[_0x7329[48]]= function(_0x5505x28,_0x5505x15){return db[_0x7329[56]][_0x7329[80]]({where:{id:_0x5505x28[_0x7329[79]][_0x7329[78]]}})[_0x7329[45]](handleEntityNotFound(_0x5505x15,null,_0x7329[48]))[_0x7329[45]](removeEntity(_0x5505x15,null,_0x7329[48]))[_0x7329[75]](handleError(_0x5505x15,null,_0x7329[48]))};exports[_0x7329[83]]= function(_0x5505x28,_0x5505x15){return db[_0x7329[56]][_0x7329[83]]()[_0x7329[45]](respondWithResult(_0x5505x15,null,_0x7329[83]))[_0x7329[75]](handleError(_0x5505x15,null,_0x7329[83]))}
\ No newline at end of file
index 7d6252b..8eec2dc 100644 (file)
@@ -1 +1 @@
-var _0xd602=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x63\x68\x61\x74\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xd602[0];var _=require(_0xd602[1]);var util=require(_0xd602[2]);var logger=require(_0xd602[4])(_0xd602[3]);var attributes=require(_0xd602[5]);module[_0xd602[6]]= function(_0x2557x5,_0x2557x6){return _0x2557x5[_0xd602[9]](_0xd602[7],attributes,{tableName:_0xd602[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4fa9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x63\x68\x61\x74\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x4fa9[0];var _=require(_0x4fa9[1]);var util=require(_0x4fa9[2]);var logger=require(_0x4fa9[4])(_0x4fa9[3]);var attributes=require(_0x4fa9[5]);module[_0x4fa9[6]]= function(_0xe15ax5,_0xe15ax6){return _0xe15ax5[_0x4fa9[9]](_0x4fa9[7],attributes,{tableName:_0x4fa9[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index e7a2e00..2038d8b 100644 (file)
@@ -1 +1 @@
-var _0xabb7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xabb7[0];var _=require(_0xabb7[1]);var util=require(_0xabb7[2]);var moment=require(_0xabb7[3]);var BPromise=require(_0xabb7[4]);var db=require(_0xabb7[6])[_0xabb7[5]];var utils=require(_0xabb7[7]);var logger=require(_0xabb7[9])(_0xabb7[8]);var jayson=require(_0xabb7[10]);var client=jayson[_0xabb7[12]][_0xabb7[11]]({port:9002});function respondWithRpcPromise(_0x22e4xb,_0x22e4xc,_0x22e4xd){return  new BPromise(function(_0x22e4xe,_0x22e4xf){return client[_0xabb7[25]](_0x22e4xb,_0x22e4xd)[_0xabb7[24]](function(_0x22e4x11){logger[_0xabb7[17]](_0xabb7[13],_0x22e4xc,_0xabb7[16]);logger[_0xabb7[20]](_0xabb7[18],_0x22e4xc,_0xabb7[16],JSON[_0xabb7[19]](_0x22e4x11));if(_0x22e4x11[_0xabb7[14]]){if(_0x22e4x11[_0xabb7[14]][_0xabb7[21]]=== 500){logger[_0xabb7[14]](_0xabb7[13],_0x22e4xc,_0x22e4x11[_0xabb7[14]][_0xabb7[22]]);return _0x22e4xf(_0x22e4x11[_0xabb7[14]][_0xabb7[22]])};logger[_0xabb7[14]](_0xabb7[13],_0x22e4xc,_0x22e4x11[_0xabb7[14]][_0xabb7[22]]);return _0x22e4xe(_0x22e4x11[_0xabb7[14]][_0xabb7[22]])}else {logger[_0xabb7[17]](_0xabb7[13],_0x22e4xc,_0xabb7[16]);_0x22e4xe(_0x22e4x11[_0xabb7[23]][_0xabb7[22]])}})[_0xabb7[15]](function(_0x22e4x10){logger[_0xabb7[14]](_0xabb7[13],_0x22e4xc,_0x22e4x10);_0x22e4xf(_0x22e4x10)})})}
\ No newline at end of file
+var _0x742f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x742f[0];var _=require(_0x742f[1]);var util=require(_0x742f[2]);var moment=require(_0x742f[3]);var BPromise=require(_0x742f[4]);var db=require(_0x742f[6])[_0x742f[5]];var utils=require(_0x742f[7]);var logger=require(_0x742f[9])(_0x742f[8]);var jayson=require(_0x742f[10]);var client=jayson[_0x742f[12]][_0x742f[11]]({port:9002});function respondWithRpcPromise(_0x2962xb,_0x2962xc,_0x2962xd){return  new BPromise(function(_0x2962xe,_0x2962xf){return client[_0x742f[25]](_0x2962xb,_0x2962xd)[_0x742f[24]](function(_0x2962x11){logger[_0x742f[17]](_0x742f[13],_0x2962xc,_0x742f[16]);logger[_0x742f[20]](_0x742f[18],_0x2962xc,_0x742f[16],JSON[_0x742f[19]](_0x2962x11));if(_0x2962x11[_0x742f[14]]){if(_0x2962x11[_0x742f[14]][_0x742f[21]]=== 500){logger[_0x742f[14]](_0x742f[13],_0x2962xc,_0x2962x11[_0x742f[14]][_0x742f[22]]);return _0x2962xf(_0x2962x11[_0x742f[14]][_0x742f[22]])};logger[_0x742f[14]](_0x742f[13],_0x2962xc,_0x2962x11[_0x742f[14]][_0x742f[22]]);return _0x2962xe(_0x2962x11[_0x742f[14]][_0x742f[22]])}else {logger[_0x742f[17]](_0x742f[13],_0x2962xc,_0x742f[16]);_0x2962xe(_0x2962x11[_0x742f[23]][_0x742f[22]])}})[_0x742f[15]](function(_0x2962x10){logger[_0x742f[14]](_0x742f[13],_0x2962xc,_0x2962x10);_0x2962xf(_0x2962x10)})})}
\ No newline at end of file
index 769341b..30dea45 100644 (file)
@@ -1 +1 @@
-var _0xa20d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa20d[0];var multer=require(_0xa20d[1]);var util=require(_0xa20d[2]);var path=require(_0xa20d[3]);var express=require(_0xa20d[4]);var router=express.Router();var auth=require(_0xa20d[5]);var config=require(_0xa20d[6]);var controller=require(_0xa20d[7]);router[_0xa20d[11]](_0xa20d[8],auth[_0xa20d[9]](),controller[_0xa20d[10]]);router[_0xa20d[11]](_0xa20d[12],auth[_0xa20d[9]](),controller[_0xa20d[13]]);router[_0xa20d[11]](_0xa20d[14],auth[_0xa20d[9]](),controller[_0xa20d[15]]);router[_0xa20d[17]](_0xa20d[8],auth[_0xa20d[9]](),controller[_0xa20d[16]]);router[_0xa20d[19]](_0xa20d[14],auth[_0xa20d[9]](),controller[_0xa20d[18]]);router[_0xa20d[21]](_0xa20d[14],auth[_0xa20d[9]](),controller[_0xa20d[20]]);module[_0xa20d[22]]= router
\ No newline at end of file
+var _0xfae0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xfae0[0];var multer=require(_0xfae0[1]);var util=require(_0xfae0[2]);var path=require(_0xfae0[3]);var express=require(_0xfae0[4]);var router=express.Router();var auth=require(_0xfae0[5]);var config=require(_0xfae0[6]);var controller=require(_0xfae0[7]);router[_0xfae0[11]](_0xfae0[8],auth[_0xfae0[9]](),controller[_0xfae0[10]]);router[_0xfae0[11]](_0xfae0[12],auth[_0xfae0[9]](),controller[_0xfae0[13]]);router[_0xfae0[11]](_0xfae0[14],auth[_0xfae0[9]](),controller[_0xfae0[15]]);router[_0xfae0[17]](_0xfae0[8],auth[_0xfae0[9]](),controller[_0xfae0[16]]);router[_0xfae0[19]](_0xfae0[14],auth[_0xfae0[9]](),controller[_0xfae0[18]]);router[_0xfae0[21]](_0xfae0[14],auth[_0xfae0[9]](),controller[_0xfae0[20]]);module[_0xfae0[22]]= router
\ No newline at end of file
index 24bdfd8..5fe6f4c 100644 (file)
@@ -1 +1 @@
-var _0xb9a8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6D\x6F\x75\x73\x65\x4F\x76\x65\x72","\x74\x69\x6D\x65\x6F\x75\x74","\x49\x4E\x54\x45\x47\x45\x52"];_0xb9a8[0];var Sequelize=require(_0xb9a8[1]);module[_0xb9a8[2]]= {name:{type:Sequelize[_0xb9a8[3]],allowNull:false},type:{type:Sequelize.ENUM(_0xb9a8[4],_0xb9a8[5]),defaultValue:_0xb9a8[4]},selector:{type:Sequelize[_0xb9a8[3]]},timeout:{type:Sequelize[_0xb9a8[6]]}}
\ No newline at end of file
+var _0x2040=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6D\x6F\x75\x73\x65\x4F\x76\x65\x72","\x74\x69\x6D\x65\x6F\x75\x74","\x49\x4E\x54\x45\x47\x45\x52"];_0x2040[0];var Sequelize=require(_0x2040[1]);module[_0x2040[2]]= {name:{type:Sequelize[_0x2040[3]],allowNull:false},type:{type:Sequelize.ENUM(_0x2040[4],_0x2040[5]),defaultValue:_0x2040[4]},selector:{type:Sequelize[_0x2040[3]]},timeout:{type:Sequelize[_0x2040[6]]}}
\ No newline at end of file
index 352dcf0..ff41d69 100644 (file)
@@ -1 +1 @@
-var _0x8a73=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x8a73[0];var jsonpatch=require(_0x8a73[1]);var rp=require(_0x8a73[2]);var moment=require(_0x8a73[3]);var BPromise=require(_0x8a73[4]);var util=require(_0x8a73[5]);var path=require(_0x8a73[6]);var sox=require(_0x8a73[7]);var ejs=require(_0x8a73[8]);var fs=require(_0x8a73[9]);var _=require(_0x8a73[10]);var squel=require(_0x8a73[11]);var crypto=require(_0x8a73[12]);var jsforce=require(_0x8a73[13]);var toCsv=require(_0x8a73[14]);var qs=require(_0x8a73[15]);var logger=require(_0x8a73[17])(_0x8a73[16]);var utils=require(_0x8a73[18]);var config=require(_0x8a73[19]);var db=require(_0x8a73[21])[_0x8a73[20]];function respondWithStatusCode(_0x7b3fx15,_0x7b3fx16,_0x7b3fx17){_0x7b3fx16= _0x7b3fx16|| 204;return function(_0x7b3fx18){if(_0x7b3fx18){logger[_0x8a73[24]](_0x8a73[22],_0x7b3fx17,_0x7b3fx16,_0x8a73[23]);logger[_0x8a73[26]](_0x8a73[25],_0x7b3fx17,_0x7b3fx16,_0x8a73[23]);return _0x7b3fx15[_0x8a73[27]](_0x7b3fx16)};return _0x7b3fx15[_0x8a73[29]](304)[_0x8a73[28]]()}}function respondWithResult(_0x7b3fx15,_0x7b3fx16,_0x7b3fx17){_0x7b3fx16= _0x7b3fx16|| 200;return function(_0x7b3fx18){if(_0x7b3fx18){logger[_0x8a73[24]](_0x8a73[22],_0x7b3fx17,_0x7b3fx16,_0x8a73[30]);logger[_0x8a73[26]](_0x8a73[25],_0x7b3fx17,_0x7b3fx16,_0x8a73[30],JSON[_0x8a73[31]](_0x7b3fx18));return _0x7b3fx15[_0x8a73[29]](_0x7b3fx16)[_0x8a73[32]](_0x7b3fx18)};return _0x7b3fx15[_0x8a73[29]](304)[_0x8a73[28]]()}}function respondWithFilteredResult(_0x7b3fx15,_0x7b3fx1b,_0x7b3fx17){return function(_0x7b3fx18){if(_0x7b3fx18){var _0x7b3fx1c=_0x7b3fx18[_0x8a73[33]],_0x7b3fx1d=_0x7b3fx1b[_0x8a73[34]],_0x7b3fx1e=_0x7b3fx1b[_0x8a73[34]]+ _0x7b3fx1b[_0x8a73[35]],_0x7b3fx16;if(_0x7b3fx1e>= _0x7b3fx1c){_0x7b3fx1e= _0x7b3fx1c;_0x7b3fx16= 200}else {_0x7b3fx16= 206};_0x7b3fx15[_0x8a73[29]](_0x7b3fx16);logger[_0x8a73[24]](_0x8a73[22],_0x7b3fx17,_0x7b3fx16,_0x8a73[36]);logger[_0x8a73[26]](_0x8a73[25],_0x7b3fx17,_0x7b3fx16,_0x8a73[30],JSON[_0x8a73[31]](_0x7b3fx18));return _0x7b3fx15[_0x8a73[40]](_0x8a73[37],_0x7b3fx1d+ _0x8a73[38]+ _0x7b3fx1e+ _0x8a73[39]+ _0x7b3fx1c)[_0x8a73[32]](_0x7b3fx18)};return null}}function patchUpdates(_0x7b3fx20){return function(_0x7b3fx18){try{jsonpatch[_0x8a73[41]](_0x7b3fx18,_0x7b3fx20,true)}catch(err){return BPromise[_0x8a73[42]](err)};return _0x7b3fx18[_0x8a73[43]]()}}function saveUpdates(_0x7b3fx22,_0x7b3fx16,_0x7b3fx17){return function(_0x7b3fx18){if(_0x7b3fx18){return _0x7b3fx18[_0x8a73[46]](_0x7b3fx22)[_0x8a73[45]](function(_0x7b3fx23){logger[_0x8a73[24]](_0x8a73[22],_0x7b3fx17,_0x7b3fx16,_0x8a73[44]);logger[_0x8a73[26]](_0x8a73[25],_0x7b3fx17,_0x7b3fx16,_0x8a73[44],JSON[_0x8a73[31]](_0x7b3fx18));return _0x7b3fx23})};return null}}function removeEntity(_0x7b3fx15,_0x7b3fx16,_0x7b3fx17){return function(_0x7b3fx18){if(_0x7b3fx18){return _0x7b3fx18[_0x8a73[48]]()[_0x8a73[45]](function(){logger[_0x8a73[24]](_0x8a73[22],_0x7b3fx17,_0x7b3fx16,_0x8a73[47]);logger[_0x8a73[26]](_0x8a73[25],_0x7b3fx17,_0x7b3fx16,_0x8a73[47],JSON[_0x8a73[31]](_0x7b3fx18));_0x7b3fx15[_0x8a73[29]](204)[_0x8a73[28]]()})}}}function handleEntityNotFound(_0x7b3fx15,_0x7b3fx16,_0x7b3fx17){return function(_0x7b3fx18){if(!_0x7b3fx18){logger[_0x8a73[50]](_0x8a73[22],_0x7b3fx17,404,_0x8a73[49]);_0x7b3fx15[_0x8a73[29]](404)[_0x8a73[28]]();return null};return _0x7b3fx18}}function handleError(_0x7b3fx15,_0x7b3fx16,_0x7b3fx17){_0x7b3fx16= _0x7b3fx16|| 500;return function(_0x7b3fx27){logger[_0x8a73[50]](_0x8a73[22],_0x7b3fx17,_0x7b3fx16,JSON[_0x8a73[31]](_0x7b3fx27));delete _0x7b3fx27[_0x8a73[51]];_0x7b3fx15[_0x8a73[29]](_0x7b3fx16)[_0x8a73[52]](_0x7b3fx27)}}exports[_0x8a73[53]]= function(_0x7b3fx28,_0x7b3fx15){var _0x7b3fx1b={raw:true,where:{id:_0x7b3fx28[_0x8a73[55]][_0x8a73[54]]}},_0x7b3fx29={};_0x7b3fx29[_0x8a73[56]]= _[_0x8a73[59]](db[_0x8a73[58]][_0x8a73[57]]);_0x7b3fx29[_0x8a73[60]]= _[_0x8a73[59]](_0x7b3fx28[_0x8a73[60]]);_0x7b3fx29[_0x8a73[61]]= _[_0x8a73[62]](_0x7b3fx29[_0x8a73[56]],_0x7b3fx29[_0x8a73[60]]);_0x7b3fx1b[_0x8a73[63]]= _[_0x8a73[62]](_0x7b3fx29[_0x8a73[56]],qs[_0x8a73[64]](_0x7b3fx28[_0x8a73[60]][_0x8a73[64]]));_0x7b3fx1b[_0x8a73[63]]= (_0x7b3fx1b[_0x8a73[63]][_0x8a73[65]])?_0x7b3fx1b[_0x8a73[63]]:_0x7b3fx29[_0x8a73[56]];_0x7b3fx1b= _[_0x8a73[67]]({},_0x7b3fx1b,_0x7b3fx28[_0x8a73[66]]);return db[_0x8a73[58]][_0x8a73[69]](_0x7b3fx1b)[_0x8a73[45]](handleEntityNotFound(_0x7b3fx15,null,_0x8a73[53]))[_0x8a73[45]](respondWithResult(_0x7b3fx15,null,_0x8a73[53]))[_0x8a73[68]](handleError(_0x7b3fx15,null,_0x8a73[53]))};exports[_0x8a73[46]]= function(_0x7b3fx28,_0x7b3fx15){if(_0x7b3fx28[_0x8a73[70]][_0x8a73[54]]){delete _0x7b3fx28[_0x8a73[70]][_0x8a73[54]]};return db[_0x8a73[58]][_0x8a73[69]]({where:{id:_0x7b3fx28[_0x8a73[55]][_0x8a73[54]]}})[_0x8a73[45]](handleEntityNotFound(_0x7b3fx15,null,_0x8a73[46]))[_0x8a73[45]](saveUpdates(_0x7b3fx28[_0x8a73[70]],null,_0x8a73[46]))[_0x8a73[45]](respondWithResult(_0x7b3fx15,null,_0x8a73[46]))[_0x8a73[68]](handleError(_0x7b3fx15,null,_0x8a73[46]))};exports[_0x8a73[48]]= function(_0x7b3fx28,_0x7b3fx15){return db[_0x8a73[58]][_0x8a73[69]]({where:{id:_0x7b3fx28[_0x8a73[55]][_0x8a73[54]]}})[_0x8a73[45]](handleEntityNotFound(_0x7b3fx15,null,_0x8a73[48]))[_0x8a73[45]](removeEntity(_0x7b3fx15,null,_0x8a73[48]))[_0x8a73[68]](handleError(_0x7b3fx15,null,_0x8a73[48]))}
\ No newline at end of file
+var _0x1b26=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x1b26[0];var jsonpatch=require(_0x1b26[1]);var rp=require(_0x1b26[2]);var moment=require(_0x1b26[3]);var BPromise=require(_0x1b26[4]);var util=require(_0x1b26[5]);var path=require(_0x1b26[6]);var sox=require(_0x1b26[7]);var ejs=require(_0x1b26[8]);var fs=require(_0x1b26[9]);var _=require(_0x1b26[10]);var squel=require(_0x1b26[11]);var crypto=require(_0x1b26[12]);var jsforce=require(_0x1b26[13]);var toCsv=require(_0x1b26[14]);var qs=require(_0x1b26[15]);var logger=require(_0x1b26[17])(_0x1b26[16]);var utils=require(_0x1b26[18]);var config=require(_0x1b26[19]);var db=require(_0x1b26[21])[_0x1b26[20]];function respondWithStatusCode(_0x40fcx15,_0x40fcx16,_0x40fcx17){_0x40fcx16= _0x40fcx16|| 204;return function(_0x40fcx18){if(_0x40fcx18){logger[_0x1b26[24]](_0x1b26[22],_0x40fcx17,_0x40fcx16,_0x1b26[23]);logger[_0x1b26[26]](_0x1b26[25],_0x40fcx17,_0x40fcx16,_0x1b26[23]);return _0x40fcx15[_0x1b26[27]](_0x40fcx16)};return _0x40fcx15[_0x1b26[29]](304)[_0x1b26[28]]()}}function respondWithResult(_0x40fcx15,_0x40fcx16,_0x40fcx17){_0x40fcx16= _0x40fcx16|| 200;return function(_0x40fcx18){if(_0x40fcx18){logger[_0x1b26[24]](_0x1b26[22],_0x40fcx17,_0x40fcx16,_0x1b26[30]);logger[_0x1b26[26]](_0x1b26[25],_0x40fcx17,_0x40fcx16,_0x1b26[30],JSON[_0x1b26[31]](_0x40fcx18));return _0x40fcx15[_0x1b26[29]](_0x40fcx16)[_0x1b26[32]](_0x40fcx18)};return _0x40fcx15[_0x1b26[29]](304)[_0x1b26[28]]()}}function respondWithFilteredResult(_0x40fcx15,_0x40fcx1b,_0x40fcx17){return function(_0x40fcx18){if(_0x40fcx18){var _0x40fcx1c=_0x40fcx18[_0x1b26[33]],_0x40fcx1d=_0x40fcx1b[_0x1b26[34]],_0x40fcx1e=_0x40fcx1b[_0x1b26[34]]+ _0x40fcx1b[_0x1b26[35]],_0x40fcx16;if(_0x40fcx1e>= _0x40fcx1c){_0x40fcx1e= _0x40fcx1c;_0x40fcx16= 200}else {_0x40fcx16= 206};_0x40fcx15[_0x1b26[29]](_0x40fcx16);logger[_0x1b26[24]](_0x1b26[22],_0x40fcx17,_0x40fcx16,_0x1b26[36]);logger[_0x1b26[26]](_0x1b26[25],_0x40fcx17,_0x40fcx16,_0x1b26[30],JSON[_0x1b26[31]](_0x40fcx18));return _0x40fcx15[_0x1b26[40]](_0x1b26[37],_0x40fcx1d+ _0x1b26[38]+ _0x40fcx1e+ _0x1b26[39]+ _0x40fcx1c)[_0x1b26[32]](_0x40fcx18)};return null}}function patchUpdates(_0x40fcx20){return function(_0x40fcx18){try{jsonpatch[_0x1b26[41]](_0x40fcx18,_0x40fcx20,true)}catch(err){return BPromise[_0x1b26[42]](err)};return _0x40fcx18[_0x1b26[43]]()}}function saveUpdates(_0x40fcx22,_0x40fcx16,_0x40fcx17){return function(_0x40fcx18){if(_0x40fcx18){return _0x40fcx18[_0x1b26[46]](_0x40fcx22)[_0x1b26[45]](function(_0x40fcx23){logger[_0x1b26[24]](_0x1b26[22],_0x40fcx17,_0x40fcx16,_0x1b26[44]);logger[_0x1b26[26]](_0x1b26[25],_0x40fcx17,_0x40fcx16,_0x1b26[44],JSON[_0x1b26[31]](_0x40fcx18));return _0x40fcx23})};return null}}function removeEntity(_0x40fcx15,_0x40fcx16,_0x40fcx17){return function(_0x40fcx18){if(_0x40fcx18){return _0x40fcx18[_0x1b26[48]]()[_0x1b26[45]](function(){logger[_0x1b26[24]](_0x1b26[22],_0x40fcx17,_0x40fcx16,_0x1b26[47]);logger[_0x1b26[26]](_0x1b26[25],_0x40fcx17,_0x40fcx16,_0x1b26[47],JSON[_0x1b26[31]](_0x40fcx18));_0x40fcx15[_0x1b26[29]](204)[_0x1b26[28]]()})}}}function handleEntityNotFound(_0x40fcx15,_0x40fcx16,_0x40fcx17){return function(_0x40fcx18){if(!_0x40fcx18){logger[_0x1b26[50]](_0x1b26[22],_0x40fcx17,404,_0x1b26[49]);_0x40fcx15[_0x1b26[29]](404)[_0x1b26[28]]();return null};return _0x40fcx18}}function handleError(_0x40fcx15,_0x40fcx16,_0x40fcx17){_0x40fcx16= _0x40fcx16|| 500;return function(_0x40fcx27){logger[_0x1b26[50]](_0x1b26[22],_0x40fcx17,_0x40fcx16,JSON[_0x1b26[31]](_0x40fcx27));delete _0x40fcx27[_0x1b26[51]];_0x40fcx15[_0x1b26[29]](_0x40fcx16)[_0x1b26[52]](_0x40fcx27)}}exports[_0x1b26[53]]= function(_0x40fcx28,_0x40fcx15){var _0x40fcx1b={raw:true,where:{id:_0x40fcx28[_0x1b26[55]][_0x1b26[54]]}},_0x40fcx29={};_0x40fcx29[_0x1b26[56]]= _[_0x1b26[59]](db[_0x1b26[58]][_0x1b26[57]]);_0x40fcx29[_0x1b26[60]]= _[_0x1b26[59]](_0x40fcx28[_0x1b26[60]]);_0x40fcx29[_0x1b26[61]]= _[_0x1b26[62]](_0x40fcx29[_0x1b26[56]],_0x40fcx29[_0x1b26[60]]);_0x40fcx1b[_0x1b26[63]]= _[_0x1b26[62]](_0x40fcx29[_0x1b26[56]],qs[_0x1b26[64]](_0x40fcx28[_0x1b26[60]][_0x1b26[64]]));_0x40fcx1b[_0x1b26[63]]= (_0x40fcx1b[_0x1b26[63]][_0x1b26[65]])?_0x40fcx1b[_0x1b26[63]]:_0x40fcx29[_0x1b26[56]];_0x40fcx1b= _[_0x1b26[67]]({},_0x40fcx1b,_0x40fcx28[_0x1b26[66]]);return db[_0x1b26[58]][_0x1b26[69]](_0x40fcx1b)[_0x1b26[45]](handleEntityNotFound(_0x40fcx15,null,_0x1b26[53]))[_0x1b26[45]](respondWithResult(_0x40fcx15,null,_0x1b26[53]))[_0x1b26[68]](handleError(_0x40fcx15,null,_0x1b26[53]))};exports[_0x1b26[46]]= function(_0x40fcx28,_0x40fcx15){if(_0x40fcx28[_0x1b26[70]][_0x1b26[54]]){delete _0x40fcx28[_0x1b26[70]][_0x1b26[54]]};return db[_0x1b26[58]][_0x1b26[69]]({where:{id:_0x40fcx28[_0x1b26[55]][_0x1b26[54]]}})[_0x1b26[45]](handleEntityNotFound(_0x40fcx15,null,_0x1b26[46]))[_0x1b26[45]](saveUpdates(_0x40fcx28[_0x1b26[70]],null,_0x1b26[46]))[_0x1b26[45]](respondWithResult(_0x40fcx15,null,_0x1b26[46]))[_0x1b26[68]](handleError(_0x40fcx15,null,_0x1b26[46]))};exports[_0x1b26[48]]= function(_0x40fcx28,_0x40fcx15){return db[_0x1b26[58]][_0x1b26[69]]({where:{id:_0x40fcx28[_0x1b26[55]][_0x1b26[54]]}})[_0x1b26[45]](handleEntityNotFound(_0x40fcx15,null,_0x1b26[48]))[_0x1b26[45]](removeEntity(_0x40fcx15,null,_0x1b26[48]))[_0x1b26[68]](handleError(_0x40fcx15,null,_0x1b26[48]))}
\ No newline at end of file
index cde8c4a..b949978 100644 (file)
@@ -1 +1 @@
-var _0xbf26=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x63\x68\x61\x74\x5F\x70\x72\x6F\x61\x63\x74\x69\x76\x65\x5F\x61\x63\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xbf26[0];var _=require(_0xbf26[1]);var util=require(_0xbf26[2]);var logger=require(_0xbf26[4])(_0xbf26[3]);var attributes=require(_0xbf26[5]);module[_0xbf26[6]]= function(_0xc5d7x5,_0xc5d7x6){return _0xc5d7x5[_0xbf26[9]](_0xbf26[7],attributes,{tableName:_0xbf26[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x5b31=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x63\x68\x61\x74\x5F\x70\x72\x6F\x61\x63\x74\x69\x76\x65\x5F\x61\x63\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x5b31[0];var _=require(_0x5b31[1]);var util=require(_0x5b31[2]);var logger=require(_0x5b31[4])(_0x5b31[3]);var attributes=require(_0x5b31[5]);module[_0x5b31[6]]= function(_0xeee7x5,_0xeee7x6){return _0xeee7x5[_0x5b31[9]](_0x5b31[7],attributes,{tableName:_0x5b31[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5898ac6..ea13079 100644 (file)
@@ -1 +1 @@
-var _0xcdb6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xcdb6[0];var _=require(_0xcdb6[1]);var util=require(_0xcdb6[2]);var moment=require(_0xcdb6[3]);var BPromise=require(_0xcdb6[4]);var db=require(_0xcdb6[6])[_0xcdb6[5]];var utils=require(_0xcdb6[7]);var logger=require(_0xcdb6[9])(_0xcdb6[8]);var jayson=require(_0xcdb6[10]);var client=jayson[_0xcdb6[12]][_0xcdb6[11]]({port:9002});function respondWithRpcPromise(_0x8e01xb,_0x8e01xc,_0x8e01xd){return  new BPromise(function(_0x8e01xe,_0x8e01xf){return client[_0xcdb6[25]](_0x8e01xb,_0x8e01xd)[_0xcdb6[24]](function(_0x8e01x11){logger[_0xcdb6[17]](_0xcdb6[13],_0x8e01xc,_0xcdb6[16]);logger[_0xcdb6[20]](_0xcdb6[18],_0x8e01xc,_0xcdb6[16],JSON[_0xcdb6[19]](_0x8e01x11));if(_0x8e01x11[_0xcdb6[14]]){if(_0x8e01x11[_0xcdb6[14]][_0xcdb6[21]]=== 500){logger[_0xcdb6[14]](_0xcdb6[13],_0x8e01xc,_0x8e01x11[_0xcdb6[14]][_0xcdb6[22]]);return _0x8e01xf(_0x8e01x11[_0xcdb6[14]][_0xcdb6[22]])};logger[_0xcdb6[14]](_0xcdb6[13],_0x8e01xc,_0x8e01x11[_0xcdb6[14]][_0xcdb6[22]]);return _0x8e01xe(_0x8e01x11[_0xcdb6[14]][_0xcdb6[22]])}else {logger[_0xcdb6[17]](_0xcdb6[13],_0x8e01xc,_0xcdb6[16]);_0x8e01xe(_0x8e01x11[_0xcdb6[23]][_0xcdb6[22]])}})[_0xcdb6[15]](function(_0x8e01x10){logger[_0xcdb6[14]](_0xcdb6[13],_0x8e01xc,_0x8e01x10);_0x8e01xf(_0x8e01x10)})})}
\ No newline at end of file
+var _0x6da6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x6da6[0];var _=require(_0x6da6[1]);var util=require(_0x6da6[2]);var moment=require(_0x6da6[3]);var BPromise=require(_0x6da6[4]);var db=require(_0x6da6[6])[_0x6da6[5]];var utils=require(_0x6da6[7]);var logger=require(_0x6da6[9])(_0x6da6[8]);var jayson=require(_0x6da6[10]);var client=jayson[_0x6da6[12]][_0x6da6[11]]({port:9002});function respondWithRpcPromise(_0x3b8exb,_0x3b8exc,_0x3b8exd){return  new BPromise(function(_0x3b8exe,_0x3b8exf){return client[_0x6da6[25]](_0x3b8exb,_0x3b8exd)[_0x6da6[24]](function(_0x3b8ex11){logger[_0x6da6[17]](_0x6da6[13],_0x3b8exc,_0x6da6[16]);logger[_0x6da6[20]](_0x6da6[18],_0x3b8exc,_0x6da6[16],JSON[_0x6da6[19]](_0x3b8ex11));if(_0x3b8ex11[_0x6da6[14]]){if(_0x3b8ex11[_0x6da6[14]][_0x6da6[21]]=== 500){logger[_0x6da6[14]](_0x6da6[13],_0x3b8exc,_0x3b8ex11[_0x6da6[14]][_0x6da6[22]]);return _0x3b8exf(_0x3b8ex11[_0x6da6[14]][_0x6da6[22]])};logger[_0x6da6[14]](_0x6da6[13],_0x3b8exc,_0x3b8ex11[_0x6da6[14]][_0x6da6[22]]);return _0x3b8exe(_0x3b8ex11[_0x6da6[14]][_0x6da6[22]])}else {logger[_0x6da6[17]](_0x6da6[13],_0x3b8exc,_0x6da6[16]);_0x3b8exe(_0x3b8ex11[_0x6da6[23]][_0x6da6[22]])}})[_0x6da6[15]](function(_0x3b8ex10){logger[_0x6da6[14]](_0x6da6[13],_0x3b8exc,_0x3b8ex10);_0x3b8exf(_0x3b8ex10)})})}
\ No newline at end of file
index 0f3a7e4..a5e3cdb 100644 (file)
@@ -1 +1 @@
-var _0x71ec=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x71ec[0];var multer=require(_0x71ec[1]);var util=require(_0x71ec[2]);var path=require(_0x71ec[3]);var express=require(_0x71ec[4]);var router=express.Router();var auth=require(_0x71ec[5]);var config=require(_0x71ec[6]);var controller=require(_0x71ec[7]);router[_0x71ec[11]](_0x71ec[8],auth[_0x71ec[9]](),controller[_0x71ec[10]]);router[_0x71ec[13]](_0x71ec[8],auth[_0x71ec[9]](),controller[_0x71ec[12]]);router[_0x71ec[15]](_0x71ec[8],auth[_0x71ec[9]](),controller[_0x71ec[14]]);module[_0x71ec[16]]= router
\ No newline at end of file
+var _0x9f67=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x9f67[0];var multer=require(_0x9f67[1]);var util=require(_0x9f67[2]);var path=require(_0x9f67[3]);var express=require(_0x9f67[4]);var router=express.Router();var auth=require(_0x9f67[5]);var config=require(_0x9f67[6]);var controller=require(_0x9f67[7]);router[_0x9f67[11]](_0x9f67[8],auth[_0x9f67[9]](),controller[_0x9f67[10]]);router[_0x9f67[13]](_0x9f67[8],auth[_0x9f67[9]](),controller[_0x9f67[12]]);router[_0x9f67[15]](_0x9f67[8],auth[_0x9f67[9]](),controller[_0x9f67[14]]);module[_0x9f67[16]]= router
\ No newline at end of file
index 9efd698..2b1b8c9 100644 (file)
@@ -1 +1 @@
-var _0x1b24=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0x1b24[0];var Sequelize=require(_0x1b24[1]);module[_0x1b24[2]]= {name:{type:Sequelize[_0x1b24[3]],unique:_0x1b24[4],allowNull:false,validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0x1b24[3]]},timeout:{type:Sequelize[_0x1b24[5]],validate:{min:1}},strategy:{type:Sequelize.ENUM(_0x1b24[6],_0x1b24[7],_0x1b24[8])},lastAgent:{type:Sequelize[_0x1b24[5]],defaultValue:0}}
\ No newline at end of file
+var _0x4dfd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0x4dfd[0];var Sequelize=require(_0x4dfd[1]);module[_0x4dfd[2]]= {name:{type:Sequelize[_0x4dfd[3]],unique:_0x4dfd[4],allowNull:false,validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0x4dfd[3]]},timeout:{type:Sequelize[_0x4dfd[5]],validate:{min:1}},strategy:{type:Sequelize.ENUM(_0x4dfd[6],_0x4dfd[7],_0x4dfd[8])},lastAgent:{type:Sequelize[_0x4dfd[5]],defaultValue:0}}
\ No newline at end of file
index 207577e..917aac5 100644 (file)
@@ -1 +1 @@
-var _0xde5f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0xde5f[0];var jsonpatch=require(_0xde5f[1]);var rp=require(_0xde5f[2]);var moment=require(_0xde5f[3]);var BPromise=require(_0xde5f[4]);var util=require(_0xde5f[5]);var path=require(_0xde5f[6]);var sox=require(_0xde5f[7]);var ejs=require(_0xde5f[8]);var fs=require(_0xde5f[9]);var _=require(_0xde5f[10]);var squel=require(_0xde5f[11]);var crypto=require(_0xde5f[12]);var jsforce=require(_0xde5f[13]);var toCsv=require(_0xde5f[14]);var qs=require(_0xde5f[15]);var logger=require(_0xde5f[17])(_0xde5f[16]);var utils=require(_0xde5f[18]);var config=require(_0xde5f[19]);var db=require(_0xde5f[21])[_0xde5f[20]];function respondWithStatusCode(_0xa7d0x15,_0xa7d0x16,_0xa7d0x17){_0xa7d0x16= _0xa7d0x16|| 204;return function(_0xa7d0x18){if(_0xa7d0x18){logger[_0xde5f[24]](_0xde5f[22],_0xa7d0x17,_0xa7d0x16,_0xde5f[23]);logger[_0xde5f[26]](_0xde5f[25],_0xa7d0x17,_0xa7d0x16,_0xde5f[23]);return _0xa7d0x15[_0xde5f[27]](_0xa7d0x16)};return _0xa7d0x15[_0xde5f[29]](304)[_0xde5f[28]]()}}function respondWithResult(_0xa7d0x15,_0xa7d0x16,_0xa7d0x17){_0xa7d0x16= _0xa7d0x16|| 200;return function(_0xa7d0x18){if(_0xa7d0x18){logger[_0xde5f[24]](_0xde5f[22],_0xa7d0x17,_0xa7d0x16,_0xde5f[30]);logger[_0xde5f[26]](_0xde5f[25],_0xa7d0x17,_0xa7d0x16,_0xde5f[30],JSON[_0xde5f[31]](_0xa7d0x18));return _0xa7d0x15[_0xde5f[29]](_0xa7d0x16)[_0xde5f[32]](_0xa7d0x18)};return _0xa7d0x15[_0xde5f[29]](304)[_0xde5f[28]]()}}function respondWithFilteredResult(_0xa7d0x15,_0xa7d0x1b,_0xa7d0x17){return function(_0xa7d0x18){if(_0xa7d0x18){var _0xa7d0x1c=_0xa7d0x18[_0xde5f[33]],_0xa7d0x1d=_0xa7d0x1b[_0xde5f[34]],_0xa7d0x1e=_0xa7d0x1b[_0xde5f[34]]+ _0xa7d0x1b[_0xde5f[35]],_0xa7d0x16;if(_0xa7d0x1e>= _0xa7d0x1c){_0xa7d0x1e= _0xa7d0x1c;_0xa7d0x16= 200}else {_0xa7d0x16= 206};_0xa7d0x15[_0xde5f[29]](_0xa7d0x16);logger[_0xde5f[24]](_0xde5f[22],_0xa7d0x17,_0xa7d0x16,_0xde5f[36]);logger[_0xde5f[26]](_0xde5f[25],_0xa7d0x17,_0xa7d0x16,_0xde5f[30],JSON[_0xde5f[31]](_0xa7d0x18));return _0xa7d0x15[_0xde5f[40]](_0xde5f[37],_0xa7d0x1d+ _0xde5f[38]+ _0xa7d0x1e+ _0xde5f[39]+ _0xa7d0x1c)[_0xde5f[32]](_0xa7d0x18)};return null}}function patchUpdates(_0xa7d0x20){return function(_0xa7d0x18){try{jsonpatch[_0xde5f[41]](_0xa7d0x18,_0xa7d0x20,true)}catch(err){return BPromise[_0xde5f[42]](err)};return _0xa7d0x18[_0xde5f[43]]()}}function saveUpdates(_0xa7d0x22,_0xa7d0x16,_0xa7d0x17){return function(_0xa7d0x18){if(_0xa7d0x18){return _0xa7d0x18[_0xde5f[46]](_0xa7d0x22)[_0xde5f[45]](function(_0xa7d0x23){logger[_0xde5f[24]](_0xde5f[22],_0xa7d0x17,_0xa7d0x16,_0xde5f[44]);logger[_0xde5f[26]](_0xde5f[25],_0xa7d0x17,_0xa7d0x16,_0xde5f[44],JSON[_0xde5f[31]](_0xa7d0x18));return _0xa7d0x23})};return null}}function removeEntity(_0xa7d0x15,_0xa7d0x16,_0xa7d0x17){return function(_0xa7d0x18){if(_0xa7d0x18){return _0xa7d0x18[_0xde5f[48]]()[_0xde5f[45]](function(){logger[_0xde5f[24]](_0xde5f[22],_0xa7d0x17,_0xa7d0x16,_0xde5f[47]);logger[_0xde5f[26]](_0xde5f[25],_0xa7d0x17,_0xa7d0x16,_0xde5f[47],JSON[_0xde5f[31]](_0xa7d0x18));_0xa7d0x15[_0xde5f[29]](204)[_0xde5f[28]]()})}}}function handleEntityNotFound(_0xa7d0x15,_0xa7d0x16,_0xa7d0x17){return function(_0xa7d0x18){if(!_0xa7d0x18){logger[_0xde5f[50]](_0xde5f[22],_0xa7d0x17,404,_0xde5f[49]);_0xa7d0x15[_0xde5f[29]](404)[_0xde5f[28]]();return null};return _0xa7d0x18}}function handleError(_0xa7d0x15,_0xa7d0x16,_0xa7d0x17){_0xa7d0x16= _0xa7d0x16|| 500;return function(_0xa7d0x27){logger[_0xde5f[50]](_0xde5f[22],_0xa7d0x17,_0xa7d0x16,JSON[_0xde5f[31]](_0xa7d0x27));delete _0xa7d0x27[_0xde5f[51]];_0xa7d0x15[_0xde5f[29]](_0xa7d0x16)[_0xde5f[52]](_0xa7d0x27)}}exports[_0xde5f[53]]= function(_0xa7d0x28,_0xa7d0x15){var _0xa7d0x1b={},_0xa7d0x29={};_0xa7d0x29[_0xde5f[54]]= _[_0xde5f[57]](db[_0xde5f[56]][_0xde5f[55]]);_0xa7d0x29[_0xde5f[58]]= _[_0xde5f[57]](_0xa7d0x28[_0xde5f[58]]);_0xa7d0x29[_0xde5f[59]]= _[_0xde5f[60]](_0xa7d0x29[_0xde5f[54]],_0xa7d0x29[_0xde5f[58]]);_0xa7d0x1b[_0xde5f[61]]= _[_0xde5f[60]](_0xa7d0x29[_0xde5f[54]],qs[_0xde5f[62]](_0xa7d0x28[_0xde5f[58]][_0xde5f[62]]));_0xa7d0x1b[_0xde5f[61]]= (_0xa7d0x1b[_0xde5f[61]][_0xde5f[63]])?_0xa7d0x1b[_0xde5f[61]]:_0xa7d0x29[_0xde5f[54]];if(!_0xa7d0x28[_0xde5f[58]][_0xde5f[65]](_0xde5f[64])){_0xa7d0x1b[_0xde5f[35]]= qs[_0xde5f[35]](_0xa7d0x28[_0xde5f[58]][_0xde5f[35]]);_0xa7d0x1b[_0xde5f[34]]= qs[_0xde5f[34]](_0xa7d0x28[_0xde5f[58]][_0xde5f[34]])};_0xa7d0x1b[_0xde5f[66]]= qs[_0xde5f[67]](_0xa7d0x28[_0xde5f[58]][_0xde5f[67]]);_0xa7d0x1b[_0xde5f[68]]= qs[_0xde5f[59]](_[_0xde5f[69]](_0xa7d0x28[_0xde5f[58]],_0xa7d0x29[_0xde5f[59]]));if(_0xa7d0x28[_0xde5f[58]][_0xde5f[70]]){_0xa7d0x1b[_0xde5f[68]]= _[_0xde5f[73]](_0xa7d0x1b[_0xde5f[68]],{$or:_[_0xde5f[72]](_0xa7d0x1b[_0xde5f[61]],function(_0xa7d0x2a){var _0xa7d0x2b={};_0xa7d0x2b[_0xa7d0x2a]= {$like:_0xde5f[71]+ _0xa7d0x28[_0xde5f[58]][_0xde5f[70]]+ _0xde5f[71]};return _0xa7d0x2b})})};_0xa7d0x1b= _[_0xde5f[73]]({},_0xa7d0x1b,_0xa7d0x28[_0xde5f[74]]);return db[_0xde5f[56]][_0xde5f[76]](_0xa7d0x1b)[_0xde5f[45]](respondWithFilteredResult(_0xa7d0x15,_0xa7d0x1b,_0xde5f[53]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[53]))};exports[_0xde5f[77]]= function(_0xa7d0x28,_0xa7d0x15){var _0xa7d0x1b={raw:true,where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}},_0xa7d0x29={};_0xa7d0x29[_0xde5f[54]]= _[_0xde5f[57]](db[_0xde5f[56]][_0xde5f[55]]);_0xa7d0x29[_0xde5f[58]]= _[_0xde5f[57]](_0xa7d0x28[_0xde5f[58]]);_0xa7d0x29[_0xde5f[59]]= _[_0xde5f[60]](_0xa7d0x29[_0xde5f[54]],_0xa7d0x29[_0xde5f[58]]);_0xa7d0x1b[_0xde5f[61]]= _[_0xde5f[60]](_0xa7d0x29[_0xde5f[54]],qs[_0xde5f[62]](_0xa7d0x28[_0xde5f[58]][_0xde5f[62]]));_0xa7d0x1b[_0xde5f[61]]= (_0xa7d0x1b[_0xde5f[61]][_0xde5f[63]])?_0xa7d0x1b[_0xde5f[61]]:_0xa7d0x29[_0xde5f[54]];_0xa7d0x1b= _[_0xde5f[73]]({},_0xa7d0x1b,_0xa7d0x28[_0xde5f[74]]);return db[_0xde5f[56]][_0xde5f[80]](_0xa7d0x1b)[_0xde5f[45]](handleEntityNotFound(_0xa7d0x15,null,_0xde5f[77]))[_0xde5f[45]](respondWithResult(_0xa7d0x15,null,_0xde5f[77]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[77]))};exports[_0xde5f[81]]= function(_0xa7d0x28,_0xa7d0x15){return db[_0xde5f[56]][_0xde5f[81]](_0xa7d0x28[_0xde5f[82]],{})[_0xde5f[45]](respondWithResult(_0xa7d0x15,201,_0xde5f[81]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[81]))};exports[_0xde5f[46]]= function(_0xa7d0x28,_0xa7d0x15){if(_0xa7d0x28[_0xde5f[82]][_0xde5f[78]]){delete _0xa7d0x28[_0xde5f[82]][_0xde5f[78]]};return db[_0xde5f[56]][_0xde5f[80]]({where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}})[_0xde5f[45]](handleEntityNotFound(_0xa7d0x15,null,_0xde5f[46]))[_0xde5f[45]](saveUpdates(_0xa7d0x28[_0xde5f[82]],null,_0xde5f[46]))[_0xde5f[45]](respondWithResult(_0xa7d0x15,null,_0xde5f[46]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[46]))};exports[_0xde5f[48]]= function(_0xa7d0x28,_0xa7d0x15){return db[_0xde5f[56]][_0xde5f[80]]({where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}})[_0xde5f[45]](handleEntityNotFound(_0xa7d0x15,null,_0xde5f[48]))[_0xde5f[45]](removeEntity(_0xa7d0x15,null,_0xde5f[48]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[48]))};exports[_0xde5f[83]]= function(_0xa7d0x28,_0xa7d0x18,_0xa7d0x2c){var _0xa7d0x1b={};var _0xa7d0x29={};var _0xa7d0x2d;var _0xa7d0x1c;return db[_0xde5f[56]][_0xde5f[85]]({where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}})[_0xde5f[45]](handleEntityNotFound(_0xa7d0x18,null,_0xde5f[83]))[_0xde5f[45]](function(_0xa7d0x18){if(_0xa7d0x18){_0xa7d0x2d= _0xa7d0x18;_0xa7d0x29[_0xde5f[54]]= _[_0xde5f[57]](db[_0xde5f[84]][_0xde5f[55]]);_0xa7d0x29[_0xde5f[58]]= _[_0xde5f[57]](_0xa7d0x28[_0xde5f[58]]);_0xa7d0x29[_0xde5f[59]]= _[_0xde5f[60]](_0xa7d0x29[_0xde5f[54]],_0xa7d0x29[_0xde5f[58]]);_0xa7d0x1b[_0xde5f[61]]= _[_0xde5f[60]](_0xa7d0x29[_0xde5f[54]],qs[_0xde5f[62]](_0xa7d0x28[_0xde5f[58]][_0xde5f[62]]));_0xa7d0x1b[_0xde5f[61]]= (_0xa7d0x1b[_0xde5f[61]][_0xde5f[63]])?_0xa7d0x1b[_0xde5f[61]]:_0xa7d0x29[_0xde5f[54]];_0xa7d0x1b[_0xde5f[66]]= qs[_0xde5f[67]](_0xa7d0x28[_0xde5f[58]][_0xde5f[67]]);_0xa7d0x1b[_0xde5f[68]]= qs[_0xde5f[59]](_[_0xde5f[69]](_0xa7d0x28[_0xde5f[58]],_0xa7d0x29[_0xde5f[59]]));if(_0xa7d0x28[_0xde5f[58]][_0xde5f[70]]){_0xa7d0x1b[_0xde5f[68]]= _[_0xde5f[73]](_0xa7d0x1b[_0xde5f[68]],{$or:_[_0xde5f[72]](_0xa7d0x1b[_0xde5f[61]],function(_0xa7d0x2a){var _0xa7d0x2b={};_0xa7d0x2b[_0xa7d0x2a]= {$like:_0xde5f[71]+ _0xa7d0x28[_0xde5f[58]][_0xde5f[70]]+ _0xde5f[71]};return _0xa7d0x2b})})};_0xa7d0x1b= _[_0xde5f[73]]({},_0xa7d0x1b,_0xa7d0x28[_0xde5f[74]]);return _0xa7d0x2d[_0xde5f[83]](_0xa7d0x1b)}})[_0xde5f[45]](function(_0xa7d0x2f){if(_0xa7d0x2f){_0xa7d0x1c= _0xa7d0x2f[_0xde5f[63]];if(!_0xa7d0x28[_0xde5f[58]][_0xde5f[65]](_0xde5f[64])){_0xa7d0x1b[_0xde5f[35]]= qs[_0xde5f[35]](_0xa7d0x28[_0xde5f[58]][_0xde5f[35]]);_0xa7d0x1b[_0xde5f[34]]= qs[_0xde5f[34]](_0xa7d0x28[_0xde5f[58]][_0xde5f[34]])};return _0xa7d0x2d[_0xde5f[83]](_0xa7d0x1b)}})[_0xde5f[45]](function(_0xa7d0x2e){return _0xa7d0x2e?{count:_0xa7d0x1c,rows:_0xa7d0x2e}:null})[_0xde5f[45]](respondWithResult(_0xa7d0x18,null,_0xde5f[83]))[_0xde5f[75]](handleError(_0xa7d0x18,null,_0xde5f[83]))};exports[_0xde5f[86]]= function(_0xa7d0x28,_0xa7d0x15,_0xa7d0x2c){var _0xa7d0x30=[];var _0xa7d0x31;return db[_0xde5f[84]][_0xde5f[93]]({where:{id:_0xa7d0x28[_0xde5f[82]][_0xde5f[87]]},attributes:[_0xde5f[78]],include:[{model:db[_0xde5f[92]],as:_0xde5f[90],attributes:[_0xde5f[78]],raw:true}]})[_0xde5f[45]](function(_0xa7d0x34){if(_0xa7d0x34){for(var _0xa7d0x35=0;_0xa7d0x35< _0xa7d0x34[_0xde5f[63]];_0xa7d0x35+= 1){for(var _0xa7d0x36=0;_0xa7d0x36< _0xa7d0x34[_0xa7d0x35][_0xde5f[90]][_0xde5f[63]];_0xa7d0x36+= 1){_0xa7d0x30= _[_0xde5f[91]](_0xa7d0x30,[_0xa7d0x34[_0xa7d0x35][_0xde5f[90]][_0xa7d0x36][_0xde5f[78]]])}};return _0xa7d0x30}})[_0xde5f[45]](function(_0xa7d0x33){if(_0xa7d0x33){return db[_0xde5f[56]][_0xde5f[80]]({where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}})}})[_0xde5f[45]](function(_0xa7d0x32){if(_0xa7d0x32){_0xa7d0x31= _0xa7d0x32;return _0xa7d0x31[_0xde5f[89]](_0xa7d0x30,{penalty:_0xa7d0x28[_0xde5f[82]][_0xde5f[88]]})}})[_0xde5f[45]](function(_0xa7d0x18){if(_0xa7d0x18){return _0xa7d0x31[_0xde5f[86]](_0xa7d0x28[_0xde5f[82]][_0xde5f[87]])}})[_0xde5f[45]](handleEntityNotFound(_0xa7d0x15,null,_0xde5f[86]))[_0xde5f[45]](respondWithStatusCode(_0xa7d0x15,null,_0xde5f[86]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[86]))};exports[_0xde5f[94]]= function(_0xa7d0x28,_0xa7d0x15,_0xa7d0x2c){var _0xa7d0x30=[];var _0xa7d0x31;return db[_0xde5f[84]][_0xde5f[93]]({where:{id:_0xa7d0x28[_0xde5f[58]][_0xde5f[87]]},attributes:[_0xde5f[78]],include:[{model:db[_0xde5f[92]],as:_0xde5f[90],attributes:[_0xde5f[78]],raw:true}]})[_0xde5f[45]](function(_0xa7d0x34){if(_0xa7d0x34){for(var _0xa7d0x35=0;_0xa7d0x35< _0xa7d0x34[_0xde5f[63]];_0xa7d0x35+= 1){for(var _0xa7d0x36=0;_0xa7d0x36< _0xa7d0x34[_0xa7d0x35][_0xde5f[90]][_0xde5f[63]];_0xa7d0x36+= 1){_0xa7d0x30= _[_0xde5f[91]](_0xa7d0x30,[_0xa7d0x34[_0xa7d0x35][_0xde5f[90]][_0xa7d0x36][_0xde5f[78]]])}};return _0xa7d0x30}})[_0xde5f[45]](function(_0xa7d0x33){if(_0xa7d0x33){return db[_0xde5f[56]][_0xde5f[80]]({where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}})}})[_0xde5f[45]](function(_0xa7d0x32){if(_0xa7d0x32){_0xa7d0x31= _0xa7d0x32;return _0xa7d0x31[_0xde5f[95]](_0xa7d0x30)}})[_0xde5f[45]](function(_0xa7d0x18){if(_0xa7d0x31){return _0xa7d0x31[_0xde5f[94]](_0xa7d0x28[_0xde5f[58]][_0xde5f[87]])}})[_0xde5f[45]](handleEntityNotFound(_0xa7d0x15,null,_0xde5f[94]))[_0xde5f[45]](respondWithStatusCode(_0xa7d0x15,null,_0xde5f[94]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[94]))};exports[_0xde5f[89]]= function(_0xa7d0x28,_0xa7d0x15,_0xa7d0x2c){return db[_0xde5f[56]][_0xde5f[80]]({where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}})[_0xde5f[45]](handleEntityNotFound(_0xa7d0x15,null,_0xde5f[89]))[_0xde5f[45]](function(_0xa7d0x18){if(_0xa7d0x18){return _0xa7d0x18[_0xde5f[89]](_0xa7d0x28[_0xde5f[82]][_0xde5f[87]],_[_0xde5f[96]](_0xa7d0x28[_0xde5f[82]],[_0xde5f[87],_0xde5f[78]])|| {})};return null})[_0xde5f[45]](respondWithResult(_0xa7d0x15,null,_0xde5f[89]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[89]))};exports[_0xde5f[95]]= function(_0xa7d0x28,_0xa7d0x15,_0xa7d0x2c){var _0xa7d0x2f;return db[_0xde5f[56]][_0xde5f[80]]({where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}})[_0xde5f[45]](handleEntityNotFound(_0xa7d0x15,null,_0xde5f[95]))[_0xde5f[45]](function(_0xa7d0x18){if(_0xa7d0x18){return _0xa7d0x18[_0xde5f[95]](_0xa7d0x28[_0xde5f[58]][_0xde5f[87]])}})[_0xde5f[45]](respondWithStatusCode(_0xa7d0x15,null,_0xde5f[95]))[_0xde5f[75]](handleError(_0xa7d0x15,null,_0xde5f[95]))};exports[_0xde5f[97]]= function(_0xa7d0x28,_0xa7d0x18,_0xa7d0x2c){var _0xa7d0x1b={};var _0xa7d0x29={};var _0xa7d0x2d;var _0xa7d0x1c;return db[_0xde5f[56]][_0xde5f[85]]({where:{id:_0xa7d0x28[_0xde5f[79]][_0xde5f[78]]}})[_0xde5f[45]](handleEntityNotFound(_0xa7d0x18,null,_0xde5f[97]))[_0xde5f[45]](function(_0xa7d0x18){if(_0xa7d0x18){_0xa7d0x2d= _0xa7d0x18;_0xa7d0x29[_0xde5f[54]]= _[_0xde5f[57]](db[_0xde5f[92]][_0xde5f[55]]);_0xa7d0x29[_0xde5f[58]]= _[_0xde5f[57]](_0xa7d0x28[_0xde5f[58]]);_0xa7d0x29[_0xde5f[59]]= _[_0xde5f[60]](_0xa7d0x29[_0xde5f[54]],_0xa7d0x29[_0xde5f[58]]);_0xa7d0x1b[_0xde5f[61]]= _[_0xde5f[60]](_0xa7d0x29[_0xde5f[54]],qs[_0xde5f[62]](_0xa7d0x28[_0xde5f[58]][_0xde5f[62]]));_0xa7d0x1b[_0xde5f[61]]= (_0xa7d0x1b[_0xde5f[61]][_0xde5f[63]])?_0xa7d0x1b[_0xde5f[61]]:_0xa7d0x29[_0xde5f[54]];_0xa7d0x1b[_0xde5f[66]]= qs[_0xde5f[67]](_0xa7d0x28[_0xde5f[58]][_0xde5f[67]]);_0xa7d0x1b[_0xde5f[68]]= qs[_0xde5f[59]](_[_0xde5f[69]](_0xa7d0x28[_0xde5f[58]],_0xa7d0x29[_0xde5f[59]]));if(_0xa7d0x28[_0xde5f[58]][_0xde5f[70]]){_0xa7d0x1b[_0xde5f[68]]= _[_0xde5f[73]](_0xa7d0x1b[_0xde5f[68]],{$or:_[_0xde5f[72]](_0xa7d0x1b[_0xde5f[61]],function(_0xa7d0x2a){var _0xa7d0x2b={};_0xa7d0x2b[_0xa7d0x2a]= {$like:_0xde5f[71]+ _0xa7d0x28[_0xde5f[58]][_0xde5f[70]]+ _0xde5f[71]};return _0xa7d0x2b})})};_0xa7d0x1b= _[_0xde5f[73]]({},_0xa7d0x1b,_0xa7d0x28[_0xde5f[74]]);return _0xa7d0x2d[_0xde5f[97]](_0xa7d0x1b)}})[_0xde5f[45]](function(_0xa7d0x2f){if(_0xa7d0x2f){_0xa7d0x1c= _0xa7d0x2f[_0xde5f[63]];if(!_0xa7d0x28[_0xde5f[58]][_0xde5f[65]](_0xde5f[64])){_0xa7d0x1b[_0xde5f[35]]= qs[_0xde5f[35]](_0xa7d0x28[_0xde5f[58]][_0xde5f[35]]);_0xa7d0x1b[_0xde5f[34]]= qs[_0xde5f[34]](_0xa7d0x28[_0xde5f[58]][_0xde5f[34]])};return _0xa7d0x2d[_0xde5f[97]](_0xa7d0x1b)}})[_0xde5f[45]](function(_0xa7d0x2e){return _0xa7d0x2e?{count:_0xa7d0x1c,rows:_0xa7d0x2e}:null})[_0xde5f[45]](respondWithResult(_0xa7d0x18,null,_0xde5f[97]))[_0xde5f[75]](handleError(_0xa7d0x18,null,_0xde5f[97]))}
\ No newline at end of file
+var _0xb1f3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0xb1f3[0];var jsonpatch=require(_0xb1f3[1]);var rp=require(_0xb1f3[2]);var moment=require(_0xb1f3[3]);var BPromise=require(_0xb1f3[4]);var util=require(_0xb1f3[5]);var path=require(_0xb1f3[6]);var sox=require(_0xb1f3[7]);var ejs=require(_0xb1f3[8]);var fs=require(_0xb1f3[9]);var _=require(_0xb1f3[10]);var squel=require(_0xb1f3[11]);var crypto=require(_0xb1f3[12]);var jsforce=require(_0xb1f3[13]);var toCsv=require(_0xb1f3[14]);var qs=require(_0xb1f3[15]);var logger=require(_0xb1f3[17])(_0xb1f3[16]);var utils=require(_0xb1f3[18]);var config=require(_0xb1f3[19]);var db=require(_0xb1f3[21])[_0xb1f3[20]];function respondWithStatusCode(_0xba51x15,_0xba51x16,_0xba51x17){_0xba51x16= _0xba51x16|| 204;return function(_0xba51x18){if(_0xba51x18){logger[_0xb1f3[24]](_0xb1f3[22],_0xba51x17,_0xba51x16,_0xb1f3[23]);logger[_0xb1f3[26]](_0xb1f3[25],_0xba51x17,_0xba51x16,_0xb1f3[23]);return _0xba51x15[_0xb1f3[27]](_0xba51x16)};return _0xba51x15[_0xb1f3[29]](304)[_0xb1f3[28]]()}}function respondWithResult(_0xba51x15,_0xba51x16,_0xba51x17){_0xba51x16= _0xba51x16|| 200;return function(_0xba51x18){if(_0xba51x18){logger[_0xb1f3[24]](_0xb1f3[22],_0xba51x17,_0xba51x16,_0xb1f3[30]);logger[_0xb1f3[26]](_0xb1f3[25],_0xba51x17,_0xba51x16,_0xb1f3[30],JSON[_0xb1f3[31]](_0xba51x18));return _0xba51x15[_0xb1f3[29]](_0xba51x16)[_0xb1f3[32]](_0xba51x18)};return _0xba51x15[_0xb1f3[29]](304)[_0xb1f3[28]]()}}function respondWithFilteredResult(_0xba51x15,_0xba51x1b,_0xba51x17){return function(_0xba51x18){if(_0xba51x18){var _0xba51x1c=_0xba51x18[_0xb1f3[33]],_0xba51x1d=_0xba51x1b[_0xb1f3[34]],_0xba51x1e=_0xba51x1b[_0xb1f3[34]]+ _0xba51x1b[_0xb1f3[35]],_0xba51x16;if(_0xba51x1e>= _0xba51x1c){_0xba51x1e= _0xba51x1c;_0xba51x16= 200}else {_0xba51x16= 206};_0xba51x15[_0xb1f3[29]](_0xba51x16);logger[_0xb1f3[24]](_0xb1f3[22],_0xba51x17,_0xba51x16,_0xb1f3[36]);logger[_0xb1f3[26]](_0xb1f3[25],_0xba51x17,_0xba51x16,_0xb1f3[30],JSON[_0xb1f3[31]](_0xba51x18));return _0xba51x15[_0xb1f3[40]](_0xb1f3[37],_0xba51x1d+ _0xb1f3[38]+ _0xba51x1e+ _0xb1f3[39]+ _0xba51x1c)[_0xb1f3[32]](_0xba51x18)};return null}}function patchUpdates(_0xba51x20){return function(_0xba51x18){try{jsonpatch[_0xb1f3[41]](_0xba51x18,_0xba51x20,true)}catch(err){return BPromise[_0xb1f3[42]](err)};return _0xba51x18[_0xb1f3[43]]()}}function saveUpdates(_0xba51x22,_0xba51x16,_0xba51x17){return function(_0xba51x18){if(_0xba51x18){return _0xba51x18[_0xb1f3[46]](_0xba51x22)[_0xb1f3[45]](function(_0xba51x23){logger[_0xb1f3[24]](_0xb1f3[22],_0xba51x17,_0xba51x16,_0xb1f3[44]);logger[_0xb1f3[26]](_0xb1f3[25],_0xba51x17,_0xba51x16,_0xb1f3[44],JSON[_0xb1f3[31]](_0xba51x18));return _0xba51x23})};return null}}function removeEntity(_0xba51x15,_0xba51x16,_0xba51x17){return function(_0xba51x18){if(_0xba51x18){return _0xba51x18[_0xb1f3[48]]()[_0xb1f3[45]](function(){logger[_0xb1f3[24]](_0xb1f3[22],_0xba51x17,_0xba51x16,_0xb1f3[47]);logger[_0xb1f3[26]](_0xb1f3[25],_0xba51x17,_0xba51x16,_0xb1f3[47],JSON[_0xb1f3[31]](_0xba51x18));_0xba51x15[_0xb1f3[29]](204)[_0xb1f3[28]]()})}}}function handleEntityNotFound(_0xba51x15,_0xba51x16,_0xba51x17){return function(_0xba51x18){if(!_0xba51x18){logger[_0xb1f3[50]](_0xb1f3[22],_0xba51x17,404,_0xb1f3[49]);_0xba51x15[_0xb1f3[29]](404)[_0xb1f3[28]]();return null};return _0xba51x18}}function handleError(_0xba51x15,_0xba51x16,_0xba51x17){_0xba51x16= _0xba51x16|| 500;return function(_0xba51x27){logger[_0xb1f3[50]](_0xb1f3[22],_0xba51x17,_0xba51x16,JSON[_0xb1f3[31]](_0xba51x27));delete _0xba51x27[_0xb1f3[51]];_0xba51x15[_0xb1f3[29]](_0xba51x16)[_0xb1f3[52]](_0xba51x27)}}exports[_0xb1f3[53]]= function(_0xba51x28,_0xba51x15){var _0xba51x1b={},_0xba51x29={};_0xba51x29[_0xb1f3[54]]= _[_0xb1f3[57]](db[_0xb1f3[56]][_0xb1f3[55]]);_0xba51x29[_0xb1f3[58]]= _[_0xb1f3[57]](_0xba51x28[_0xb1f3[58]]);_0xba51x29[_0xb1f3[59]]= _[_0xb1f3[60]](_0xba51x29[_0xb1f3[54]],_0xba51x29[_0xb1f3[58]]);_0xba51x1b[_0xb1f3[61]]= _[_0xb1f3[60]](_0xba51x29[_0xb1f3[54]],qs[_0xb1f3[62]](_0xba51x28[_0xb1f3[58]][_0xb1f3[62]]));_0xba51x1b[_0xb1f3[61]]= (_0xba51x1b[_0xb1f3[61]][_0xb1f3[63]])?_0xba51x1b[_0xb1f3[61]]:_0xba51x29[_0xb1f3[54]];if(!_0xba51x28[_0xb1f3[58]][_0xb1f3[65]](_0xb1f3[64])){_0xba51x1b[_0xb1f3[35]]= qs[_0xb1f3[35]](_0xba51x28[_0xb1f3[58]][_0xb1f3[35]]);_0xba51x1b[_0xb1f3[34]]= qs[_0xb1f3[34]](_0xba51x28[_0xb1f3[58]][_0xb1f3[34]])};_0xba51x1b[_0xb1f3[66]]= qs[_0xb1f3[67]](_0xba51x28[_0xb1f3[58]][_0xb1f3[67]]);_0xba51x1b[_0xb1f3[68]]= qs[_0xb1f3[59]](_[_0xb1f3[69]](_0xba51x28[_0xb1f3[58]],_0xba51x29[_0xb1f3[59]]));if(_0xba51x28[_0xb1f3[58]][_0xb1f3[70]]){_0xba51x1b[_0xb1f3[68]]= _[_0xb1f3[73]](_0xba51x1b[_0xb1f3[68]],{$or:_[_0xb1f3[72]](_0xba51x1b[_0xb1f3[61]],function(_0xba51x2a){var _0xba51x2b={};_0xba51x2b[_0xba51x2a]= {$like:_0xb1f3[71]+ _0xba51x28[_0xb1f3[58]][_0xb1f3[70]]+ _0xb1f3[71]};return _0xba51x2b})})};_0xba51x1b= _[_0xb1f3[73]]({},_0xba51x1b,_0xba51x28[_0xb1f3[74]]);return db[_0xb1f3[56]][_0xb1f3[76]](_0xba51x1b)[_0xb1f3[45]](respondWithFilteredResult(_0xba51x15,_0xba51x1b,_0xb1f3[53]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[53]))};exports[_0xb1f3[77]]= function(_0xba51x28,_0xba51x15){var _0xba51x1b={raw:true,where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}},_0xba51x29={};_0xba51x29[_0xb1f3[54]]= _[_0xb1f3[57]](db[_0xb1f3[56]][_0xb1f3[55]]);_0xba51x29[_0xb1f3[58]]= _[_0xb1f3[57]](_0xba51x28[_0xb1f3[58]]);_0xba51x29[_0xb1f3[59]]= _[_0xb1f3[60]](_0xba51x29[_0xb1f3[54]],_0xba51x29[_0xb1f3[58]]);_0xba51x1b[_0xb1f3[61]]= _[_0xb1f3[60]](_0xba51x29[_0xb1f3[54]],qs[_0xb1f3[62]](_0xba51x28[_0xb1f3[58]][_0xb1f3[62]]));_0xba51x1b[_0xb1f3[61]]= (_0xba51x1b[_0xb1f3[61]][_0xb1f3[63]])?_0xba51x1b[_0xb1f3[61]]:_0xba51x29[_0xb1f3[54]];_0xba51x1b= _[_0xb1f3[73]]({},_0xba51x1b,_0xba51x28[_0xb1f3[74]]);return db[_0xb1f3[56]][_0xb1f3[80]](_0xba51x1b)[_0xb1f3[45]](handleEntityNotFound(_0xba51x15,null,_0xb1f3[77]))[_0xb1f3[45]](respondWithResult(_0xba51x15,null,_0xb1f3[77]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[77]))};exports[_0xb1f3[81]]= function(_0xba51x28,_0xba51x15){return db[_0xb1f3[56]][_0xb1f3[81]](_0xba51x28[_0xb1f3[82]],{})[_0xb1f3[45]](respondWithResult(_0xba51x15,201,_0xb1f3[81]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[81]))};exports[_0xb1f3[46]]= function(_0xba51x28,_0xba51x15){if(_0xba51x28[_0xb1f3[82]][_0xb1f3[78]]){delete _0xba51x28[_0xb1f3[82]][_0xb1f3[78]]};return db[_0xb1f3[56]][_0xb1f3[80]]({where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}})[_0xb1f3[45]](handleEntityNotFound(_0xba51x15,null,_0xb1f3[46]))[_0xb1f3[45]](saveUpdates(_0xba51x28[_0xb1f3[82]],null,_0xb1f3[46]))[_0xb1f3[45]](respondWithResult(_0xba51x15,null,_0xb1f3[46]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[46]))};exports[_0xb1f3[48]]= function(_0xba51x28,_0xba51x15){return db[_0xb1f3[56]][_0xb1f3[80]]({where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}})[_0xb1f3[45]](handleEntityNotFound(_0xba51x15,null,_0xb1f3[48]))[_0xb1f3[45]](removeEntity(_0xba51x15,null,_0xb1f3[48]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[48]))};exports[_0xb1f3[83]]= function(_0xba51x28,_0xba51x18,_0xba51x2c){var _0xba51x1b={};var _0xba51x29={};var _0xba51x2d;var _0xba51x1c;return db[_0xb1f3[56]][_0xb1f3[85]]({where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}})[_0xb1f3[45]](handleEntityNotFound(_0xba51x18,null,_0xb1f3[83]))[_0xb1f3[45]](function(_0xba51x18){if(_0xba51x18){_0xba51x2d= _0xba51x18;_0xba51x29[_0xb1f3[54]]= _[_0xb1f3[57]](db[_0xb1f3[84]][_0xb1f3[55]]);_0xba51x29[_0xb1f3[58]]= _[_0xb1f3[57]](_0xba51x28[_0xb1f3[58]]);_0xba51x29[_0xb1f3[59]]= _[_0xb1f3[60]](_0xba51x29[_0xb1f3[54]],_0xba51x29[_0xb1f3[58]]);_0xba51x1b[_0xb1f3[61]]= _[_0xb1f3[60]](_0xba51x29[_0xb1f3[54]],qs[_0xb1f3[62]](_0xba51x28[_0xb1f3[58]][_0xb1f3[62]]));_0xba51x1b[_0xb1f3[61]]= (_0xba51x1b[_0xb1f3[61]][_0xb1f3[63]])?_0xba51x1b[_0xb1f3[61]]:_0xba51x29[_0xb1f3[54]];_0xba51x1b[_0xb1f3[66]]= qs[_0xb1f3[67]](_0xba51x28[_0xb1f3[58]][_0xb1f3[67]]);_0xba51x1b[_0xb1f3[68]]= qs[_0xb1f3[59]](_[_0xb1f3[69]](_0xba51x28[_0xb1f3[58]],_0xba51x29[_0xb1f3[59]]));if(_0xba51x28[_0xb1f3[58]][_0xb1f3[70]]){_0xba51x1b[_0xb1f3[68]]= _[_0xb1f3[73]](_0xba51x1b[_0xb1f3[68]],{$or:_[_0xb1f3[72]](_0xba51x1b[_0xb1f3[61]],function(_0xba51x2a){var _0xba51x2b={};_0xba51x2b[_0xba51x2a]= {$like:_0xb1f3[71]+ _0xba51x28[_0xb1f3[58]][_0xb1f3[70]]+ _0xb1f3[71]};return _0xba51x2b})})};_0xba51x1b= _[_0xb1f3[73]]({},_0xba51x1b,_0xba51x28[_0xb1f3[74]]);return _0xba51x2d[_0xb1f3[83]](_0xba51x1b)}})[_0xb1f3[45]](function(_0xba51x2f){if(_0xba51x2f){_0xba51x1c= _0xba51x2f[_0xb1f3[63]];if(!_0xba51x28[_0xb1f3[58]][_0xb1f3[65]](_0xb1f3[64])){_0xba51x1b[_0xb1f3[35]]= qs[_0xb1f3[35]](_0xba51x28[_0xb1f3[58]][_0xb1f3[35]]);_0xba51x1b[_0xb1f3[34]]= qs[_0xb1f3[34]](_0xba51x28[_0xb1f3[58]][_0xb1f3[34]])};return _0xba51x2d[_0xb1f3[83]](_0xba51x1b)}})[_0xb1f3[45]](function(_0xba51x2e){return _0xba51x2e?{count:_0xba51x1c,rows:_0xba51x2e}:null})[_0xb1f3[45]](respondWithResult(_0xba51x18,null,_0xb1f3[83]))[_0xb1f3[75]](handleError(_0xba51x18,null,_0xb1f3[83]))};exports[_0xb1f3[86]]= function(_0xba51x28,_0xba51x15,_0xba51x2c){var _0xba51x30=[];var _0xba51x31;return db[_0xb1f3[84]][_0xb1f3[93]]({where:{id:_0xba51x28[_0xb1f3[82]][_0xb1f3[87]]},attributes:[_0xb1f3[78]],include:[{model:db[_0xb1f3[92]],as:_0xb1f3[90],attributes:[_0xb1f3[78]],raw:true}]})[_0xb1f3[45]](function(_0xba51x34){if(_0xba51x34){for(var _0xba51x35=0;_0xba51x35< _0xba51x34[_0xb1f3[63]];_0xba51x35+= 1){for(var _0xba51x36=0;_0xba51x36< _0xba51x34[_0xba51x35][_0xb1f3[90]][_0xb1f3[63]];_0xba51x36+= 1){_0xba51x30= _[_0xb1f3[91]](_0xba51x30,[_0xba51x34[_0xba51x35][_0xb1f3[90]][_0xba51x36][_0xb1f3[78]]])}};return _0xba51x30}})[_0xb1f3[45]](function(_0xba51x33){if(_0xba51x33){return db[_0xb1f3[56]][_0xb1f3[80]]({where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}})}})[_0xb1f3[45]](function(_0xba51x32){if(_0xba51x32){_0xba51x31= _0xba51x32;return _0xba51x31[_0xb1f3[89]](_0xba51x30,{penalty:_0xba51x28[_0xb1f3[82]][_0xb1f3[88]]})}})[_0xb1f3[45]](function(_0xba51x18){if(_0xba51x18){return _0xba51x31[_0xb1f3[86]](_0xba51x28[_0xb1f3[82]][_0xb1f3[87]])}})[_0xb1f3[45]](handleEntityNotFound(_0xba51x15,null,_0xb1f3[86]))[_0xb1f3[45]](respondWithStatusCode(_0xba51x15,null,_0xb1f3[86]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[86]))};exports[_0xb1f3[94]]= function(_0xba51x28,_0xba51x15,_0xba51x2c){var _0xba51x30=[];var _0xba51x31;return db[_0xb1f3[84]][_0xb1f3[93]]({where:{id:_0xba51x28[_0xb1f3[58]][_0xb1f3[87]]},attributes:[_0xb1f3[78]],include:[{model:db[_0xb1f3[92]],as:_0xb1f3[90],attributes:[_0xb1f3[78]],raw:true}]})[_0xb1f3[45]](function(_0xba51x34){if(_0xba51x34){for(var _0xba51x35=0;_0xba51x35< _0xba51x34[_0xb1f3[63]];_0xba51x35+= 1){for(var _0xba51x36=0;_0xba51x36< _0xba51x34[_0xba51x35][_0xb1f3[90]][_0xb1f3[63]];_0xba51x36+= 1){_0xba51x30= _[_0xb1f3[91]](_0xba51x30,[_0xba51x34[_0xba51x35][_0xb1f3[90]][_0xba51x36][_0xb1f3[78]]])}};return _0xba51x30}})[_0xb1f3[45]](function(_0xba51x33){if(_0xba51x33){return db[_0xb1f3[56]][_0xb1f3[80]]({where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}})}})[_0xb1f3[45]](function(_0xba51x32){if(_0xba51x32){_0xba51x31= _0xba51x32;return _0xba51x31[_0xb1f3[95]](_0xba51x30)}})[_0xb1f3[45]](function(_0xba51x18){if(_0xba51x31){return _0xba51x31[_0xb1f3[94]](_0xba51x28[_0xb1f3[58]][_0xb1f3[87]])}})[_0xb1f3[45]](handleEntityNotFound(_0xba51x15,null,_0xb1f3[94]))[_0xb1f3[45]](respondWithStatusCode(_0xba51x15,null,_0xb1f3[94]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[94]))};exports[_0xb1f3[89]]= function(_0xba51x28,_0xba51x15,_0xba51x2c){return db[_0xb1f3[56]][_0xb1f3[80]]({where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}})[_0xb1f3[45]](handleEntityNotFound(_0xba51x15,null,_0xb1f3[89]))[_0xb1f3[45]](function(_0xba51x18){if(_0xba51x18){return _0xba51x18[_0xb1f3[89]](_0xba51x28[_0xb1f3[82]][_0xb1f3[87]],_[_0xb1f3[96]](_0xba51x28[_0xb1f3[82]],[_0xb1f3[87],_0xb1f3[78]])|| {})};return null})[_0xb1f3[45]](respondWithResult(_0xba51x15,null,_0xb1f3[89]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[89]))};exports[_0xb1f3[95]]= function(_0xba51x28,_0xba51x15,_0xba51x2c){var _0xba51x2f;return db[_0xb1f3[56]][_0xb1f3[80]]({where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}})[_0xb1f3[45]](handleEntityNotFound(_0xba51x15,null,_0xb1f3[95]))[_0xb1f3[45]](function(_0xba51x18){if(_0xba51x18){return _0xba51x18[_0xb1f3[95]](_0xba51x28[_0xb1f3[58]][_0xb1f3[87]])}})[_0xb1f3[45]](respondWithStatusCode(_0xba51x15,null,_0xb1f3[95]))[_0xb1f3[75]](handleError(_0xba51x15,null,_0xb1f3[95]))};exports[_0xb1f3[97]]= function(_0xba51x28,_0xba51x18,_0xba51x2c){var _0xba51x1b={};var _0xba51x29={};var _0xba51x2d;var _0xba51x1c;return db[_0xb1f3[56]][_0xb1f3[85]]({where:{id:_0xba51x28[_0xb1f3[79]][_0xb1f3[78]]}})[_0xb1f3[45]](handleEntityNotFound(_0xba51x18,null,_0xb1f3[97]))[_0xb1f3[45]](function(_0xba51x18){if(_0xba51x18){_0xba51x2d= _0xba51x18;_0xba51x29[_0xb1f3[54]]= _[_0xb1f3[57]](db[_0xb1f3[92]][_0xb1f3[55]]);_0xba51x29[_0xb1f3[58]]= _[_0xb1f3[57]](_0xba51x28[_0xb1f3[58]]);_0xba51x29[_0xb1f3[59]]= _[_0xb1f3[60]](_0xba51x29[_0xb1f3[54]],_0xba51x29[_0xb1f3[58]]);_0xba51x1b[_0xb1f3[61]]= _[_0xb1f3[60]](_0xba51x29[_0xb1f3[54]],qs[_0xb1f3[62]](_0xba51x28[_0xb1f3[58]][_0xb1f3[62]]));_0xba51x1b[_0xb1f3[61]]= (_0xba51x1b[_0xb1f3[61]][_0xb1f3[63]])?_0xba51x1b[_0xb1f3[61]]:_0xba51x29[_0xb1f3[54]];_0xba51x1b[_0xb1f3[66]]= qs[_0xb1f3[67]](_0xba51x28[_0xb1f3[58]][_0xb1f3[67]]);_0xba51x1b[_0xb1f3[68]]= qs[_0xb1f3[59]](_[_0xb1f3[69]](_0xba51x28[_0xb1f3[58]],_0xba51x29[_0xb1f3[59]]));if(_0xba51x28[_0xb1f3[58]][_0xb1f3[70]]){_0xba51x1b[_0xb1f3[68]]= _[_0xb1f3[73]](_0xba51x1b[_0xb1f3[68]],{$or:_[_0xb1f3[72]](_0xba51x1b[_0xb1f3[61]],function(_0xba51x2a){var _0xba51x2b={};_0xba51x2b[_0xba51x2a]= {$like:_0xb1f3[71]+ _0xba51x28[_0xb1f3[58]][_0xb1f3[70]]+ _0xb1f3[71]};return _0xba51x2b})})};_0xba51x1b= _[_0xb1f3[73]]({},_0xba51x1b,_0xba51x28[_0xb1f3[74]]);return _0xba51x2d[_0xb1f3[97]](_0xba51x1b)}})[_0xb1f3[45]](function(_0xba51x2f){if(_0xba51x2f){_0xba51x1c= _0xba51x2f[_0xb1f3[63]];if(!_0xba51x28[_0xb1f3[58]][_0xb1f3[65]](_0xb1f3[64])){_0xba51x1b[_0xb1f3[35]]= qs[_0xb1f3[35]](_0xba51x28[_0xb1f3[58]][_0xb1f3[35]]);_0xba51x1b[_0xb1f3[34]]= qs[_0xb1f3[34]](_0xba51x28[_0xb1f3[58]][_0xb1f3[34]])};return _0xba51x2d[_0xb1f3[97]](_0xba51x1b)}})[_0xb1f3[45]](function(_0xba51x2e){return _0xba51x2e?{count:_0xba51x1c,rows:_0xba51x2e}:null})[_0xb1f3[45]](respondWithResult(_0xba51x18,null,_0xb1f3[97]))[_0xb1f3[75]](handleError(_0xba51x18,null,_0xb1f3[97]))}
\ No newline at end of file
index 0d9eabd..e6302ef 100644 (file)
@@ -1 +1 @@
-var _0x30cf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x63\x68\x61\x74\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x30cf[0];var _=require(_0x30cf[1]);var util=require(_0x30cf[2]);var logger=require(_0x30cf[4])(_0x30cf[3]);var attributes=require(_0x30cf[5]);module[_0x30cf[6]]= function(_0xe487x5,_0xe487x6){return _0xe487x5[_0x30cf[9]](_0x30cf[7],attributes,{tableName:_0x30cf[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x7608=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x63\x68\x61\x74\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x7608[0];var _=require(_0x7608[1]);var util=require(_0x7608[2]);var logger=require(_0x7608[4])(_0x7608[3]);var attributes=require(_0x7608[5]);module[_0x7608[6]]= function(_0x43d4x5,_0x43d4x6){return _0x43d4x5[_0x7608[9]](_0x7608[7],attributes,{tableName:_0x7608[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 8ba8436..7d61b72 100644 (file)
@@ -1 +1 @@
-var _0xe4a9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe4a9[0];var _=require(_0xe4a9[1]);var util=require(_0xe4a9[2]);var moment=require(_0xe4a9[3]);var BPromise=require(_0xe4a9[4]);var db=require(_0xe4a9[6])[_0xe4a9[5]];var utils=require(_0xe4a9[7]);var logger=require(_0xe4a9[9])(_0xe4a9[8]);var jayson=require(_0xe4a9[10]);var client=jayson[_0xe4a9[12]][_0xe4a9[11]]({port:9002});function respondWithRpcPromise(_0x8279xb,_0x8279xc,_0x8279xd){return  new BPromise(function(_0x8279xe,_0x8279xf){return client[_0xe4a9[25]](_0x8279xb,_0x8279xd)[_0xe4a9[24]](function(_0x8279x11){logger[_0xe4a9[17]](_0xe4a9[13],_0x8279xc,_0xe4a9[16]);logger[_0xe4a9[20]](_0xe4a9[18],_0x8279xc,_0xe4a9[16],JSON[_0xe4a9[19]](_0x8279x11));if(_0x8279x11[_0xe4a9[14]]){if(_0x8279x11[_0xe4a9[14]][_0xe4a9[21]]=== 500){logger[_0xe4a9[14]](_0xe4a9[13],_0x8279xc,_0x8279x11[_0xe4a9[14]][_0xe4a9[22]]);return _0x8279xf(_0x8279x11[_0xe4a9[14]][_0xe4a9[22]])};logger[_0xe4a9[14]](_0xe4a9[13],_0x8279xc,_0x8279x11[_0xe4a9[14]][_0xe4a9[22]]);return _0x8279xe(_0x8279x11[_0xe4a9[14]][_0xe4a9[22]])}else {logger[_0xe4a9[17]](_0xe4a9[13],_0x8279xc,_0xe4a9[16]);_0x8279xe(_0x8279x11[_0xe4a9[23]][_0xe4a9[22]])}})[_0xe4a9[15]](function(_0x8279x10){logger[_0xe4a9[14]](_0xe4a9[13],_0x8279xc,_0x8279x10);_0x8279xf(_0x8279x10)})})}
\ No newline at end of file
+var _0x83b6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x83b6[0];var _=require(_0x83b6[1]);var util=require(_0x83b6[2]);var moment=require(_0x83b6[3]);var BPromise=require(_0x83b6[4]);var db=require(_0x83b6[6])[_0x83b6[5]];var utils=require(_0x83b6[7]);var logger=require(_0x83b6[9])(_0x83b6[8]);var jayson=require(_0x83b6[10]);var client=jayson[_0x83b6[12]][_0x83b6[11]]({port:9002});function respondWithRpcPromise(_0xb9eaxb,_0xb9eaxc,_0xb9eaxd){return  new BPromise(function(_0xb9eaxe,_0xb9eaxf){return client[_0x83b6[25]](_0xb9eaxb,_0xb9eaxd)[_0x83b6[24]](function(_0xb9eax11){logger[_0x83b6[17]](_0x83b6[13],_0xb9eaxc,_0x83b6[16]);logger[_0x83b6[20]](_0x83b6[18],_0xb9eaxc,_0x83b6[16],JSON[_0x83b6[19]](_0xb9eax11));if(_0xb9eax11[_0x83b6[14]]){if(_0xb9eax11[_0x83b6[14]][_0x83b6[21]]=== 500){logger[_0x83b6[14]](_0x83b6[13],_0xb9eaxc,_0xb9eax11[_0x83b6[14]][_0x83b6[22]]);return _0xb9eaxf(_0xb9eax11[_0x83b6[14]][_0x83b6[22]])};logger[_0x83b6[14]](_0x83b6[13],_0xb9eaxc,_0xb9eax11[_0x83b6[14]][_0x83b6[22]]);return _0xb9eaxe(_0xb9eax11[_0x83b6[14]][_0x83b6[22]])}else {logger[_0x83b6[17]](_0x83b6[13],_0xb9eaxc,_0x83b6[16]);_0xb9eaxe(_0xb9eax11[_0x83b6[23]][_0x83b6[22]])}})[_0x83b6[15]](function(_0xb9eax10){logger[_0x83b6[14]](_0x83b6[13],_0xb9eaxc,_0xb9eax10);_0xb9eaxf(_0xb9eax10)})})}
\ No newline at end of file
index 4f458a0..7d9c288 100644 (file)
@@ -1 +1 @@
-var _0x8758=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x8758[0];var multer=require(_0x8758[1]);var util=require(_0x8758[2]);var path=require(_0x8758[3]);var express=require(_0x8758[4]);var router=express.Router();var auth=require(_0x8758[5]);var config=require(_0x8758[6]);var controller=require(_0x8758[7]);router[_0x8758[11]](_0x8758[8],auth[_0x8758[9]](),controller[_0x8758[10]]);router[_0x8758[11]](_0x8758[12],auth[_0x8758[9]](),controller[_0x8758[13]]);router[_0x8758[11]](_0x8758[14],auth[_0x8758[9]](),controller[_0x8758[15]]);router[_0x8758[11]](_0x8758[16],auth[_0x8758[9]](),controller[_0x8758[17]]);router[_0x8758[19]](_0x8758[8],auth[_0x8758[9]](),controller[_0x8758[18]]);router[_0x8758[19]](_0x8758[14],auth[_0x8758[9]](),controller[_0x8758[20]]);router[_0x8758[19]](_0x8758[16],auth[_0x8758[9]](),controller[_0x8758[21]]);router[_0x8758[23]](_0x8758[12],auth[_0x8758[9]](),controller[_0x8758[22]]);router[_0x8758[25]](_0x8758[12],auth[_0x8758[9]](),controller[_0x8758[24]]);router[_0x8758[25]](_0x8758[14],auth[_0x8758[9]](),controller[_0x8758[26]]);router[_0x8758[25]](_0x8758[16],auth[_0x8758[9]](),controller[_0x8758[27]]);module[_0x8758[28]]= router
\ No newline at end of file
+var _0xdeba=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xdeba[0];var multer=require(_0xdeba[1]);var util=require(_0xdeba[2]);var path=require(_0xdeba[3]);var express=require(_0xdeba[4]);var router=express.Router();var auth=require(_0xdeba[5]);var config=require(_0xdeba[6]);var controller=require(_0xdeba[7]);router[_0xdeba[11]](_0xdeba[8],auth[_0xdeba[9]](),controller[_0xdeba[10]]);router[_0xdeba[11]](_0xdeba[12],auth[_0xdeba[9]](),controller[_0xdeba[13]]);router[_0xdeba[11]](_0xdeba[14],auth[_0xdeba[9]](),controller[_0xdeba[15]]);router[_0xdeba[11]](_0xdeba[16],auth[_0xdeba[9]](),controller[_0xdeba[17]]);router[_0xdeba[19]](_0xdeba[8],auth[_0xdeba[9]](),controller[_0xdeba[18]]);router[_0xdeba[19]](_0xdeba[14],auth[_0xdeba[9]](),controller[_0xdeba[20]]);router[_0xdeba[19]](_0xdeba[16],auth[_0xdeba[9]](),controller[_0xdeba[21]]);router[_0xdeba[23]](_0xdeba[12],auth[_0xdeba[9]](),controller[_0xdeba[22]]);router[_0xdeba[25]](_0xdeba[12],auth[_0xdeba[9]](),controller[_0xdeba[24]]);router[_0xdeba[25]](_0xdeba[14],auth[_0xdeba[9]](),controller[_0xdeba[26]]);router[_0xdeba[25]](_0xdeba[16],auth[_0xdeba[9]](),controller[_0xdeba[27]]);module[_0xdeba[28]]= router
\ No newline at end of file
index 2c33b39..e7aa864 100644 (file)
@@ -1 +1 @@
-var _0x2e5b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0x2e5b[0];var moment=require(_0x2e5b[1]);var Sequelize=require(_0x2e5b[2]);module[_0x2e5b[3]]= {uniqueid:{type:Sequelize[_0x2e5b[4]]},timeslot:{type:Sequelize[_0x2e5b[4]]},websitename:{type:Sequelize[_0x2e5b[4]]},websiteaddress:{type:Sequelize[_0x2e5b[4]]},websiteid:{type:Sequelize[_0x2e5b[5]]},application:{type:Sequelize[_0x2e5b[4]]},memberid:{type:Sequelize[_0x2e5b[5]]},membername:{type:Sequelize[_0x2e5b[4]]},visitorid:{type:Sequelize[_0x2e5b[4]]},visitorname:{type:Sequelize[_0x2e5b[4]]},visitoremail:{type:Sequelize[_0x2e5b[4]],validate:{isEmail:true}},queue:{type:Sequelize[_0x2e5b[5]]},queuename:{type:Sequelize[_0x2e5b[4]]},roomid:{type:Sequelize[_0x2e5b[5]]},reason:{type:Sequelize[_0x2e5b[4]],defaultValue:_0x2e5b[6]},connectid:{type:Sequelize[_0x2e5b[4]],unique:_0x2e5b[7],set:function(_0xef2fx3){this[_0x2e5b[8]](_0x2e5b[7],_0xef2fx3);this[_0x2e5b[8]](_0x2e5b[9],_0x2e5b[10]);this[_0x2e5b[8]](_0x2e5b[11],moment()[_0x2e5b[13]](_0x2e5b[12]))}},calledAt:{type:Sequelize[_0x2e5b[14]]},rejectedAt:{type:Sequelize[_0x2e5b[14]],set:function(_0xef2fx4){this[_0x2e5b[8]](_0x2e5b[15],_0xef2fx4);this[_0x2e5b[8]](_0x2e5b[9],_0x2e5b[16])}},connectedAt:{type:Sequelize[_0x2e5b[14]]}}
\ No newline at end of file
+var _0xc0c2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0xc0c2[0];var moment=require(_0xc0c2[1]);var Sequelize=require(_0xc0c2[2]);module[_0xc0c2[3]]= {uniqueid:{type:Sequelize[_0xc0c2[4]]},timeslot:{type:Sequelize[_0xc0c2[4]]},websitename:{type:Sequelize[_0xc0c2[4]]},websiteaddress:{type:Sequelize[_0xc0c2[4]]},websiteid:{type:Sequelize[_0xc0c2[5]]},application:{type:Sequelize[_0xc0c2[4]]},memberid:{type:Sequelize[_0xc0c2[5]]},membername:{type:Sequelize[_0xc0c2[4]]},visitorid:{type:Sequelize[_0xc0c2[4]]},visitorname:{type:Sequelize[_0xc0c2[4]]},visitoremail:{type:Sequelize[_0xc0c2[4]],validate:{isEmail:true}},queue:{type:Sequelize[_0xc0c2[5]]},queuename:{type:Sequelize[_0xc0c2[4]]},roomid:{type:Sequelize[_0xc0c2[5]]},reason:{type:Sequelize[_0xc0c2[4]],defaultValue:_0xc0c2[6]},connectid:{type:Sequelize[_0xc0c2[4]],unique:_0xc0c2[7],set:function(_0x18ccx3){this[_0xc0c2[8]](_0xc0c2[7],_0x18ccx3);this[_0xc0c2[8]](_0xc0c2[9],_0xc0c2[10]);this[_0xc0c2[8]](_0xc0c2[11],moment()[_0xc0c2[13]](_0xc0c2[12]))}},calledAt:{type:Sequelize[_0xc0c2[14]]},rejectedAt:{type:Sequelize[_0xc0c2[14]],set:function(_0x18ccx4){this[_0xc0c2[8]](_0xc0c2[15],_0x18ccx4);this[_0xc0c2[8]](_0xc0c2[9],_0xc0c2[16])}},connectedAt:{type:Sequelize[_0xc0c2[14]]}}
\ No newline at end of file
index 6e8ccf5..b551178 100644 (file)
@@ -1 +1 @@
-var _0x832b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x832b[0];var jsonpatch=require(_0x832b[1]);var rp=require(_0x832b[2]);var moment=require(_0x832b[3]);var BPromise=require(_0x832b[4]);var util=require(_0x832b[5]);var path=require(_0x832b[6]);var sox=require(_0x832b[7]);var ejs=require(_0x832b[8]);var fs=require(_0x832b[9]);var _=require(_0x832b[10]);var squel=require(_0x832b[11]);var crypto=require(_0x832b[12]);var jsforce=require(_0x832b[13]);var toCsv=require(_0x832b[14]);var qs=require(_0x832b[15]);var logger=require(_0x832b[17])(_0x832b[16]);var utils=require(_0x832b[18]);var config=require(_0x832b[19]);var db=require(_0x832b[21])[_0x832b[20]];function respondWithStatusCode(_0x2267x15,_0x2267x16,_0x2267x17){_0x2267x16= _0x2267x16|| 204;return function(_0x2267x18){if(_0x2267x18){logger[_0x832b[24]](_0x832b[22],_0x2267x17,_0x2267x16,_0x832b[23]);logger[_0x832b[26]](_0x832b[25],_0x2267x17,_0x2267x16,_0x832b[23]);return _0x2267x15[_0x832b[27]](_0x2267x16)};return _0x2267x15[_0x832b[29]](304)[_0x832b[28]]()}}function respondWithResult(_0x2267x15,_0x2267x16,_0x2267x17){_0x2267x16= _0x2267x16|| 200;return function(_0x2267x18){if(_0x2267x18){logger[_0x832b[24]](_0x832b[22],_0x2267x17,_0x2267x16,_0x832b[30]);logger[_0x832b[26]](_0x832b[25],_0x2267x17,_0x2267x16,_0x832b[30],JSON[_0x832b[31]](_0x2267x18));return _0x2267x15[_0x832b[29]](_0x2267x16)[_0x832b[32]](_0x2267x18)};return _0x2267x15[_0x832b[29]](304)[_0x832b[28]]()}}function respondWithFilteredResult(_0x2267x15,_0x2267x1b,_0x2267x17){return function(_0x2267x18){if(_0x2267x18){var _0x2267x1c=_0x2267x18[_0x832b[33]],_0x2267x1d=_0x2267x1b[_0x832b[34]],_0x2267x1e=_0x2267x1b[_0x832b[34]]+ _0x2267x1b[_0x832b[35]],_0x2267x16;if(_0x2267x1e>= _0x2267x1c){_0x2267x1e= _0x2267x1c;_0x2267x16= 200}else {_0x2267x16= 206};_0x2267x15[_0x832b[29]](_0x2267x16);logger[_0x832b[24]](_0x832b[22],_0x2267x17,_0x2267x16,_0x832b[36]);logger[_0x832b[26]](_0x832b[25],_0x2267x17,_0x2267x16,_0x832b[30],JSON[_0x832b[31]](_0x2267x18));return _0x2267x15[_0x832b[40]](_0x832b[37],_0x2267x1d+ _0x832b[38]+ _0x2267x1e+ _0x832b[39]+ _0x2267x1c)[_0x832b[32]](_0x2267x18)};return null}}function patchUpdates(_0x2267x20){return function(_0x2267x18){try{jsonpatch[_0x832b[41]](_0x2267x18,_0x2267x20,true)}catch(err){return BPromise[_0x832b[42]](err)};return _0x2267x18[_0x832b[43]]()}}function saveUpdates(_0x2267x22,_0x2267x16,_0x2267x17){return function(_0x2267x18){if(_0x2267x18){return _0x2267x18[_0x832b[46]](_0x2267x22)[_0x832b[45]](function(_0x2267x23){logger[_0x832b[24]](_0x832b[22],_0x2267x17,_0x2267x16,_0x832b[44]);logger[_0x832b[26]](_0x832b[25],_0x2267x17,_0x2267x16,_0x832b[44],JSON[_0x832b[31]](_0x2267x18));return _0x2267x23})};return null}}function removeEntity(_0x2267x15,_0x2267x16,_0x2267x17){return function(_0x2267x18){if(_0x2267x18){return _0x2267x18[_0x832b[48]]()[_0x832b[45]](function(){logger[_0x832b[24]](_0x832b[22],_0x2267x17,_0x2267x16,_0x832b[47]);logger[_0x832b[26]](_0x832b[25],_0x2267x17,_0x2267x16,_0x832b[47],JSON[_0x832b[31]](_0x2267x18));_0x2267x15[_0x832b[29]](204)[_0x832b[28]]()})}}}function handleEntityNotFound(_0x2267x15,_0x2267x16,_0x2267x17){return function(_0x2267x18){if(!_0x2267x18){logger[_0x832b[50]](_0x832b[22],_0x2267x17,404,_0x832b[49]);_0x2267x15[_0x832b[29]](404)[_0x832b[28]]();return null};return _0x2267x18}}function handleError(_0x2267x15,_0x2267x16,_0x2267x17){_0x2267x16= _0x2267x16|| 500;return function(_0x2267x27){logger[_0x832b[50]](_0x832b[22],_0x2267x17,_0x2267x16,JSON[_0x832b[31]](_0x2267x27));delete _0x2267x27[_0x832b[51]];_0x2267x15[_0x832b[29]](_0x2267x16)[_0x832b[52]](_0x2267x27)}}exports[_0x832b[53]]= function(_0x2267x28,_0x2267x15){var _0x2267x1b={},_0x2267x29={};_0x2267x29[_0x832b[54]]= _[_0x832b[57]](db[_0x832b[56]][_0x832b[55]]);_0x2267x29[_0x832b[58]]= _[_0x832b[57]](_0x2267x28[_0x832b[58]]);_0x2267x29[_0x832b[59]]= _[_0x832b[60]](_0x2267x29[_0x832b[54]],_0x2267x29[_0x832b[58]]);_0x2267x1b[_0x832b[61]]= _[_0x832b[60]](_0x2267x29[_0x832b[54]],qs[_0x832b[62]](_0x2267x28[_0x832b[58]][_0x832b[62]]));_0x2267x1b[_0x832b[61]]= (_0x2267x1b[_0x832b[61]][_0x832b[63]])?_0x2267x1b[_0x832b[61]]:_0x2267x29[_0x832b[54]];if(!_0x2267x28[_0x832b[58]][_0x832b[65]](_0x832b[64])){_0x2267x1b[_0x832b[35]]= qs[_0x832b[35]](_0x2267x28[_0x832b[58]][_0x832b[35]]);_0x2267x1b[_0x832b[34]]= qs[_0x832b[34]](_0x2267x28[_0x832b[58]][_0x832b[34]])};_0x2267x1b[_0x832b[66]]= qs[_0x832b[67]](_0x2267x28[_0x832b[58]][_0x832b[67]]);_0x2267x1b[_0x832b[68]]= qs[_0x832b[59]](_[_0x832b[69]](_0x2267x28[_0x832b[58]],_0x2267x29[_0x832b[59]]));if(_0x2267x28[_0x832b[58]][_0x832b[70]]){_0x2267x1b[_0x832b[68]]= _[_0x832b[73]](_0x2267x1b[_0x832b[68]],{$or:_[_0x832b[72]](_0x2267x1b[_0x832b[61]],function(_0x2267x2a){var _0x2267x2b={};_0x2267x2b[_0x2267x2a]= {$like:_0x832b[71]+ _0x2267x28[_0x832b[58]][_0x832b[70]]+ _0x832b[71]};return _0x2267x2b})})};_0x2267x1b= _[_0x832b[73]]({},_0x2267x1b,_0x2267x28[_0x832b[74]]);return db[_0x832b[56]][_0x832b[76]](_0x2267x1b)[_0x832b[45]](respondWithFilteredResult(_0x2267x15,_0x2267x1b,_0x832b[53]))[_0x832b[75]](handleError(_0x2267x15,null,_0x832b[53]))};exports[_0x832b[77]]= function(_0x2267x28,_0x2267x15){var _0x2267x1b={raw:true,where:{id:_0x2267x28[_0x832b[79]][_0x832b[78]]}},_0x2267x29={};_0x2267x29[_0x832b[54]]= _[_0x832b[57]](db[_0x832b[56]][_0x832b[55]]);_0x2267x29[_0x832b[58]]= _[_0x832b[57]](_0x2267x28[_0x832b[58]]);_0x2267x29[_0x832b[59]]= _[_0x832b[60]](_0x2267x29[_0x832b[54]],_0x2267x29[_0x832b[58]]);_0x2267x1b[_0x832b[61]]= _[_0x832b[60]](_0x2267x29[_0x832b[54]],qs[_0x832b[62]](_0x2267x28[_0x832b[58]][_0x832b[62]]));_0x2267x1b[_0x832b[61]]= (_0x2267x1b[_0x832b[61]][_0x832b[63]])?_0x2267x1b[_0x832b[61]]:_0x2267x29[_0x832b[54]];_0x2267x1b= _[_0x832b[73]]({},_0x2267x1b,_0x2267x28[_0x832b[74]]);return db[_0x832b[56]][_0x832b[80]](_0x2267x1b)[_0x832b[45]](handleEntityNotFound(_0x2267x15,null,_0x832b[77]))[_0x832b[45]](respondWithResult(_0x2267x15,null,_0x832b[77]))[_0x832b[75]](handleError(_0x2267x15,null,_0x832b[77]))};exports[_0x832b[81]]= function(_0x2267x28,_0x2267x15){return db[_0x832b[56]][_0x832b[81]](_0x2267x28[_0x832b[82]],{})[_0x832b[45]](respondWithResult(_0x2267x15,201,_0x832b[81]))[_0x832b[75]](handleError(_0x2267x15,null,_0x832b[81]))};exports[_0x832b[46]]= function(_0x2267x28,_0x2267x15){if(_0x2267x28[_0x832b[82]][_0x832b[78]]){delete _0x2267x28[_0x832b[82]][_0x832b[78]]};return db[_0x832b[56]][_0x832b[80]]({where:{id:_0x2267x28[_0x832b[79]][_0x832b[78]]}})[_0x832b[45]](handleEntityNotFound(_0x2267x15,null,_0x832b[46]))[_0x832b[45]](saveUpdates(_0x2267x28[_0x832b[82]],null,_0x832b[46]))[_0x832b[45]](respondWithResult(_0x2267x15,null,_0x832b[46]))[_0x832b[75]](handleError(_0x2267x15,null,_0x832b[46]))};exports[_0x832b[48]]= function(_0x2267x28,_0x2267x15){return db[_0x832b[56]][_0x832b[80]]({where:{id:_0x2267x28[_0x832b[79]][_0x832b[78]]}})[_0x832b[45]](handleEntityNotFound(_0x2267x15,null,_0x832b[48]))[_0x832b[45]](removeEntity(_0x2267x15,null,_0x832b[48]))[_0x832b[75]](handleError(_0x2267x15,null,_0x832b[48]))}
\ No newline at end of file
+var _0xb25d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xb25d[0];var jsonpatch=require(_0xb25d[1]);var rp=require(_0xb25d[2]);var moment=require(_0xb25d[3]);var BPromise=require(_0xb25d[4]);var util=require(_0xb25d[5]);var path=require(_0xb25d[6]);var sox=require(_0xb25d[7]);var ejs=require(_0xb25d[8]);var fs=require(_0xb25d[9]);var _=require(_0xb25d[10]);var squel=require(_0xb25d[11]);var crypto=require(_0xb25d[12]);var jsforce=require(_0xb25d[13]);var toCsv=require(_0xb25d[14]);var qs=require(_0xb25d[15]);var logger=require(_0xb25d[17])(_0xb25d[16]);var utils=require(_0xb25d[18]);var config=require(_0xb25d[19]);var db=require(_0xb25d[21])[_0xb25d[20]];function respondWithStatusCode(_0xd717x15,_0xd717x16,_0xd717x17){_0xd717x16= _0xd717x16|| 204;return function(_0xd717x18){if(_0xd717x18){logger[_0xb25d[24]](_0xb25d[22],_0xd717x17,_0xd717x16,_0xb25d[23]);logger[_0xb25d[26]](_0xb25d[25],_0xd717x17,_0xd717x16,_0xb25d[23]);return _0xd717x15[_0xb25d[27]](_0xd717x16)};return _0xd717x15[_0xb25d[29]](304)[_0xb25d[28]]()}}function respondWithResult(_0xd717x15,_0xd717x16,_0xd717x17){_0xd717x16= _0xd717x16|| 200;return function(_0xd717x18){if(_0xd717x18){logger[_0xb25d[24]](_0xb25d[22],_0xd717x17,_0xd717x16,_0xb25d[30]);logger[_0xb25d[26]](_0xb25d[25],_0xd717x17,_0xd717x16,_0xb25d[30],JSON[_0xb25d[31]](_0xd717x18));return _0xd717x15[_0xb25d[29]](_0xd717x16)[_0xb25d[32]](_0xd717x18)};return _0xd717x15[_0xb25d[29]](304)[_0xb25d[28]]()}}function respondWithFilteredResult(_0xd717x15,_0xd717x1b,_0xd717x17){return function(_0xd717x18){if(_0xd717x18){var _0xd717x1c=_0xd717x18[_0xb25d[33]],_0xd717x1d=_0xd717x1b[_0xb25d[34]],_0xd717x1e=_0xd717x1b[_0xb25d[34]]+ _0xd717x1b[_0xb25d[35]],_0xd717x16;if(_0xd717x1e>= _0xd717x1c){_0xd717x1e= _0xd717x1c;_0xd717x16= 200}else {_0xd717x16= 206};_0xd717x15[_0xb25d[29]](_0xd717x16);logger[_0xb25d[24]](_0xb25d[22],_0xd717x17,_0xd717x16,_0xb25d[36]);logger[_0xb25d[26]](_0xb25d[25],_0xd717x17,_0xd717x16,_0xb25d[30],JSON[_0xb25d[31]](_0xd717x18));return _0xd717x15[_0xb25d[40]](_0xb25d[37],_0xd717x1d+ _0xb25d[38]+ _0xd717x1e+ _0xb25d[39]+ _0xd717x1c)[_0xb25d[32]](_0xd717x18)};return null}}function patchUpdates(_0xd717x20){return function(_0xd717x18){try{jsonpatch[_0xb25d[41]](_0xd717x18,_0xd717x20,true)}catch(err){return BPromise[_0xb25d[42]](err)};return _0xd717x18[_0xb25d[43]]()}}function saveUpdates(_0xd717x22,_0xd717x16,_0xd717x17){return function(_0xd717x18){if(_0xd717x18){return _0xd717x18[_0xb25d[46]](_0xd717x22)[_0xb25d[45]](function(_0xd717x23){logger[_0xb25d[24]](_0xb25d[22],_0xd717x17,_0xd717x16,_0xb25d[44]);logger[_0xb25d[26]](_0xb25d[25],_0xd717x17,_0xd717x16,_0xb25d[44],JSON[_0xb25d[31]](_0xd717x18));return _0xd717x23})};return null}}function removeEntity(_0xd717x15,_0xd717x16,_0xd717x17){return function(_0xd717x18){if(_0xd717x18){return _0xd717x18[_0xb25d[48]]()[_0xb25d[45]](function(){logger[_0xb25d[24]](_0xb25d[22],_0xd717x17,_0xd717x16,_0xb25d[47]);logger[_0xb25d[26]](_0xb25d[25],_0xd717x17,_0xd717x16,_0xb25d[47],JSON[_0xb25d[31]](_0xd717x18));_0xd717x15[_0xb25d[29]](204)[_0xb25d[28]]()})}}}function handleEntityNotFound(_0xd717x15,_0xd717x16,_0xd717x17){return function(_0xd717x18){if(!_0xd717x18){logger[_0xb25d[50]](_0xb25d[22],_0xd717x17,404,_0xb25d[49]);_0xd717x15[_0xb25d[29]](404)[_0xb25d[28]]();return null};return _0xd717x18}}function handleError(_0xd717x15,_0xd717x16,_0xd717x17){_0xd717x16= _0xd717x16|| 500;return function(_0xd717x27){logger[_0xb25d[50]](_0xb25d[22],_0xd717x17,_0xd717x16,JSON[_0xb25d[31]](_0xd717x27));delete _0xd717x27[_0xb25d[51]];_0xd717x15[_0xb25d[29]](_0xd717x16)[_0xb25d[52]](_0xd717x27)}}exports[_0xb25d[53]]= function(_0xd717x28,_0xd717x15){var _0xd717x1b={},_0xd717x29={};_0xd717x29[_0xb25d[54]]= _[_0xb25d[57]](db[_0xb25d[56]][_0xb25d[55]]);_0xd717x29[_0xb25d[58]]= _[_0xb25d[57]](_0xd717x28[_0xb25d[58]]);_0xd717x29[_0xb25d[59]]= _[_0xb25d[60]](_0xd717x29[_0xb25d[54]],_0xd717x29[_0xb25d[58]]);_0xd717x1b[_0xb25d[61]]= _[_0xb25d[60]](_0xd717x29[_0xb25d[54]],qs[_0xb25d[62]](_0xd717x28[_0xb25d[58]][_0xb25d[62]]));_0xd717x1b[_0xb25d[61]]= (_0xd717x1b[_0xb25d[61]][_0xb25d[63]])?_0xd717x1b[_0xb25d[61]]:_0xd717x29[_0xb25d[54]];if(!_0xd717x28[_0xb25d[58]][_0xb25d[65]](_0xb25d[64])){_0xd717x1b[_0xb25d[35]]= qs[_0xb25d[35]](_0xd717x28[_0xb25d[58]][_0xb25d[35]]);_0xd717x1b[_0xb25d[34]]= qs[_0xb25d[34]](_0xd717x28[_0xb25d[58]][_0xb25d[34]])};_0xd717x1b[_0xb25d[66]]= qs[_0xb25d[67]](_0xd717x28[_0xb25d[58]][_0xb25d[67]]);_0xd717x1b[_0xb25d[68]]= qs[_0xb25d[59]](_[_0xb25d[69]](_0xd717x28[_0xb25d[58]],_0xd717x29[_0xb25d[59]]));if(_0xd717x28[_0xb25d[58]][_0xb25d[70]]){_0xd717x1b[_0xb25d[68]]= _[_0xb25d[73]](_0xd717x1b[_0xb25d[68]],{$or:_[_0xb25d[72]](_0xd717x1b[_0xb25d[61]],function(_0xd717x2a){var _0xd717x2b={};_0xd717x2b[_0xd717x2a]= {$like:_0xb25d[71]+ _0xd717x28[_0xb25d[58]][_0xb25d[70]]+ _0xb25d[71]};return _0xd717x2b})})};_0xd717x1b= _[_0xb25d[73]]({},_0xd717x1b,_0xd717x28[_0xb25d[74]]);return db[_0xb25d[56]][_0xb25d[76]](_0xd717x1b)[_0xb25d[45]](respondWithFilteredResult(_0xd717x15,_0xd717x1b,_0xb25d[53]))[_0xb25d[75]](handleError(_0xd717x15,null,_0xb25d[53]))};exports[_0xb25d[77]]= function(_0xd717x28,_0xd717x15){var _0xd717x1b={raw:true,where:{id:_0xd717x28[_0xb25d[79]][_0xb25d[78]]}},_0xd717x29={};_0xd717x29[_0xb25d[54]]= _[_0xb25d[57]](db[_0xb25d[56]][_0xb25d[55]]);_0xd717x29[_0xb25d[58]]= _[_0xb25d[57]](_0xd717x28[_0xb25d[58]]);_0xd717x29[_0xb25d[59]]= _[_0xb25d[60]](_0xd717x29[_0xb25d[54]],_0xd717x29[_0xb25d[58]]);_0xd717x1b[_0xb25d[61]]= _[_0xb25d[60]](_0xd717x29[_0xb25d[54]],qs[_0xb25d[62]](_0xd717x28[_0xb25d[58]][_0xb25d[62]]));_0xd717x1b[_0xb25d[61]]= (_0xd717x1b[_0xb25d[61]][_0xb25d[63]])?_0xd717x1b[_0xb25d[61]]:_0xd717x29[_0xb25d[54]];_0xd717x1b= _[_0xb25d[73]]({},_0xd717x1b,_0xd717x28[_0xb25d[74]]);return db[_0xb25d[56]][_0xb25d[80]](_0xd717x1b)[_0xb25d[45]](handleEntityNotFound(_0xd717x15,null,_0xb25d[77]))[_0xb25d[45]](respondWithResult(_0xd717x15,null,_0xb25d[77]))[_0xb25d[75]](handleError(_0xd717x15,null,_0xb25d[77]))};exports[_0xb25d[81]]= function(_0xd717x28,_0xd717x15){return db[_0xb25d[56]][_0xb25d[81]](_0xd717x28[_0xb25d[82]],{})[_0xb25d[45]](respondWithResult(_0xd717x15,201,_0xb25d[81]))[_0xb25d[75]](handleError(_0xd717x15,null,_0xb25d[81]))};exports[_0xb25d[46]]= function(_0xd717x28,_0xd717x15){if(_0xd717x28[_0xb25d[82]][_0xb25d[78]]){delete _0xd717x28[_0xb25d[82]][_0xb25d[78]]};return db[_0xb25d[56]][_0xb25d[80]]({where:{id:_0xd717x28[_0xb25d[79]][_0xb25d[78]]}})[_0xb25d[45]](handleEntityNotFound(_0xd717x15,null,_0xb25d[46]))[_0xb25d[45]](saveUpdates(_0xd717x28[_0xb25d[82]],null,_0xb25d[46]))[_0xb25d[45]](respondWithResult(_0xd717x15,null,_0xb25d[46]))[_0xb25d[75]](handleError(_0xd717x15,null,_0xb25d[46]))};exports[_0xb25d[48]]= function(_0xd717x28,_0xd717x15){return db[_0xb25d[56]][_0xb25d[80]]({where:{id:_0xd717x28[_0xb25d[79]][_0xb25d[78]]}})[_0xb25d[45]](handleEntityNotFound(_0xd717x15,null,_0xb25d[48]))[_0xb25d[45]](removeEntity(_0xd717x15,null,_0xb25d[48]))[_0xb25d[75]](handleError(_0xd717x15,null,_0xb25d[48]))}
\ No newline at end of file
index 71e42d1..5d3696d 100644 (file)
@@ -1 +1 @@
-var _0xb6c7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x63\x68\x61\x74","\x64\x65\x66\x69\x6E\x65"];_0xb6c7[0];var _=require(_0xb6c7[1]);var util=require(_0xb6c7[2]);var logger=require(_0xb6c7[4])(_0xb6c7[3]);var attributes=require(_0xb6c7[5]);module[_0xb6c7[6]]= function(_0xc5fdx5,_0xc5fdx6){return _0xc5fdx5[_0xb6c7[9]](_0xb6c7[7],attributes,{tableName:_0xb6c7[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa031=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x63\x68\x61\x74","\x64\x65\x66\x69\x6E\x65"];_0xa031[0];var _=require(_0xa031[1]);var util=require(_0xa031[2]);var logger=require(_0xa031[4])(_0xa031[3]);var attributes=require(_0xa031[5]);module[_0xa031[6]]= function(_0xdb27x5,_0xdb27x6){return _0xdb27x5[_0xa031[9]](_0xa031[7],attributes,{tableName:_0xa031[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index d76c7db..42933d1 100644 (file)
@@ -1 +1 @@
-var _0xccab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xccab[0];var _=require(_0xccab[1]);var util=require(_0xccab[2]);var moment=require(_0xccab[3]);var BPromise=require(_0xccab[4]);var db=require(_0xccab[6])[_0xccab[5]];var utils=require(_0xccab[7]);var logger=require(_0xccab[9])(_0xccab[8]);var jayson=require(_0xccab[10]);var client=jayson[_0xccab[12]][_0xccab[11]]({port:9002});function respondWithRpcPromise(_0xf2f3xb,_0xf2f3xc,_0xf2f3xd){return  new BPromise(function(_0xf2f3xe,_0xf2f3xf){return client[_0xccab[25]](_0xf2f3xb,_0xf2f3xd)[_0xccab[24]](function(_0xf2f3x11){logger[_0xccab[17]](_0xccab[13],_0xf2f3xc,_0xccab[16]);logger[_0xccab[20]](_0xccab[18],_0xf2f3xc,_0xccab[16],JSON[_0xccab[19]](_0xf2f3x11));if(_0xf2f3x11[_0xccab[14]]){if(_0xf2f3x11[_0xccab[14]][_0xccab[21]]=== 500){logger[_0xccab[14]](_0xccab[13],_0xf2f3xc,_0xf2f3x11[_0xccab[14]][_0xccab[22]]);return _0xf2f3xf(_0xf2f3x11[_0xccab[14]][_0xccab[22]])};logger[_0xccab[14]](_0xccab[13],_0xf2f3xc,_0xf2f3x11[_0xccab[14]][_0xccab[22]]);return _0xf2f3xe(_0xf2f3x11[_0xccab[14]][_0xccab[22]])}else {logger[_0xccab[17]](_0xccab[13],_0xf2f3xc,_0xccab[16]);_0xf2f3xe(_0xf2f3x11[_0xccab[23]][_0xccab[22]])}})[_0xccab[15]](function(_0xf2f3x10){logger[_0xccab[14]](_0xccab[13],_0xf2f3xc,_0xf2f3x10);_0xf2f3xf(_0xf2f3x10)})})}
\ No newline at end of file
+var _0x9df8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9df8[0];var _=require(_0x9df8[1]);var util=require(_0x9df8[2]);var moment=require(_0x9df8[3]);var BPromise=require(_0x9df8[4]);var db=require(_0x9df8[6])[_0x9df8[5]];var utils=require(_0x9df8[7]);var logger=require(_0x9df8[9])(_0x9df8[8]);var jayson=require(_0x9df8[10]);var client=jayson[_0x9df8[12]][_0x9df8[11]]({port:9002});function respondWithRpcPromise(_0xdec8xb,_0xdec8xc,_0xdec8xd){return  new BPromise(function(_0xdec8xe,_0xdec8xf){return client[_0x9df8[25]](_0xdec8xb,_0xdec8xd)[_0x9df8[24]](function(_0xdec8x11){logger[_0x9df8[17]](_0x9df8[13],_0xdec8xc,_0x9df8[16]);logger[_0x9df8[20]](_0x9df8[18],_0xdec8xc,_0x9df8[16],JSON[_0x9df8[19]](_0xdec8x11));if(_0xdec8x11[_0x9df8[14]]){if(_0xdec8x11[_0x9df8[14]][_0x9df8[21]]=== 500){logger[_0x9df8[14]](_0x9df8[13],_0xdec8xc,_0xdec8x11[_0x9df8[14]][_0x9df8[22]]);return _0xdec8xf(_0xdec8x11[_0x9df8[14]][_0x9df8[22]])};logger[_0x9df8[14]](_0x9df8[13],_0xdec8xc,_0xdec8x11[_0x9df8[14]][_0x9df8[22]]);return _0xdec8xe(_0xdec8x11[_0x9df8[14]][_0x9df8[22]])}else {logger[_0x9df8[17]](_0x9df8[13],_0xdec8xc,_0x9df8[16]);_0xdec8xe(_0xdec8x11[_0x9df8[23]][_0x9df8[22]])}})[_0x9df8[15]](function(_0xdec8x10){logger[_0x9df8[14]](_0x9df8[13],_0xdec8xc,_0xdec8x10);_0xdec8xf(_0xdec8x10)})})}
\ No newline at end of file
index cdf91be..c061bcd 100644 (file)
@@ -1 +1 @@
-var _0x7729=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7729[0];var multer=require(_0x7729[1]);var util=require(_0x7729[2]);var path=require(_0x7729[3]);var express=require(_0x7729[4]);var router=express.Router();var auth=require(_0x7729[5]);var config=require(_0x7729[6]);var controller=require(_0x7729[7]);router[_0x7729[11]](_0x7729[8],auth[_0x7729[9]](),controller[_0x7729[10]]);router[_0x7729[11]](_0x7729[12],auth[_0x7729[9]](),controller[_0x7729[13]]);router[_0x7729[15]](_0x7729[8],auth[_0x7729[9]](),controller[_0x7729[14]]);router[_0x7729[17]](_0x7729[12],auth[_0x7729[9]](),controller[_0x7729[16]]);router[_0x7729[19]](_0x7729[12],auth[_0x7729[9]](),controller[_0x7729[18]]);module[_0x7729[20]]= router
\ No newline at end of file
+var _0x8138=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8138[0];var multer=require(_0x8138[1]);var util=require(_0x8138[2]);var path=require(_0x8138[3]);var express=require(_0x8138[4]);var router=express.Router();var auth=require(_0x8138[5]);var config=require(_0x8138[6]);var controller=require(_0x8138[7]);router[_0x8138[11]](_0x8138[8],auth[_0x8138[9]](),controller[_0x8138[10]]);router[_0x8138[11]](_0x8138[12],auth[_0x8138[9]](),controller[_0x8138[13]]);router[_0x8138[15]](_0x8138[8],auth[_0x8138[9]](),controller[_0x8138[14]]);router[_0x8138[17]](_0x8138[12],auth[_0x8138[9]](),controller[_0x8138[16]]);router[_0x8138[19]](_0x8138[12],auth[_0x8138[9]](),controller[_0x8138[18]]);module[_0x8138[20]]= router
\ No newline at end of file
index 91626c2..84e0710 100644 (file)
@@ -1 +1 @@
-var _0xfb48=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74","\x72\x65\x71\x75\x65\x73\x74\x65\x72"];_0xfb48[0];var Sequelize=require(_0xfb48[1]);module[_0xfb48[2]]= {uniqueid:{type:Sequelize[_0xfb48[3]]},websitename:{type:Sequelize[_0xfb48[3]]},websiteaddress:{type:Sequelize[_0xfb48[3]]},websiteid:{type:Sequelize[_0xfb48[4]]},application:{type:Sequelize[_0xfb48[3]]},visitorid:{type:Sequelize[_0xfb48[3]]},visitorname:{type:Sequelize[_0xfb48[3]]},visitoremail:{type:Sequelize[_0xfb48[3]],validate:{isEmail:true}},memberid:{type:Sequelize[_0xfb48[3]]},membername:{type:Sequelize[_0xfb48[3]]},queue:{type:Sequelize[_0xfb48[4]]},queuename:{type:Sequelize[_0xfb48[3]]},roomid:{type:Sequelize[_0xfb48[4]]},fidelity:{type:Sequelize[_0xfb48[4]],defaultValue:0},joinAt:{type:Sequelize[_0xfb48[5]]},leaveAt:{type:Sequelize[_0xfb48[5]]},completeAt:{type:Sequelize[_0xfb48[5]]},complete:{type:Sequelize[_0xfb48[6]],defaultValue:0},completeReason:{type:Sequelize.ENUM(_0xfb48[7],_0xfb48[8])},abandon:{type:Sequelize[_0xfb48[6]],defaultValue:0},timeout:{type:Sequelize[_0xfb48[6]],defaultValue:0},timeslot:{type:Sequelize[_0xfb48[4]]}}
\ No newline at end of file
+var _0xcdeb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74","\x72\x65\x71\x75\x65\x73\x74\x65\x72"];_0xcdeb[0];var Sequelize=require(_0xcdeb[1]);module[_0xcdeb[2]]= {uniqueid:{type:Sequelize[_0xcdeb[3]]},websitename:{type:Sequelize[_0xcdeb[3]]},websiteaddress:{type:Sequelize[_0xcdeb[3]]},websiteid:{type:Sequelize[_0xcdeb[4]]},application:{type:Sequelize[_0xcdeb[3]]},visitorid:{type:Sequelize[_0xcdeb[3]]},visitorname:{type:Sequelize[_0xcdeb[3]]},visitoremail:{type:Sequelize[_0xcdeb[3]],validate:{isEmail:true}},memberid:{type:Sequelize[_0xcdeb[3]]},membername:{type:Sequelize[_0xcdeb[3]]},queue:{type:Sequelize[_0xcdeb[4]]},queuename:{type:Sequelize[_0xcdeb[3]]},roomid:{type:Sequelize[_0xcdeb[4]]},fidelity:{type:Sequelize[_0xcdeb[4]],defaultValue:0},joinAt:{type:Sequelize[_0xcdeb[5]]},leaveAt:{type:Sequelize[_0xcdeb[5]]},completeAt:{type:Sequelize[_0xcdeb[5]]},complete:{type:Sequelize[_0xcdeb[6]],defaultValue:0},completeReason:{type:Sequelize.ENUM(_0xcdeb[7],_0xcdeb[8])},abandon:{type:Sequelize[_0xcdeb[6]],defaultValue:0},timeout:{type:Sequelize[_0xcdeb[6]],defaultValue:0},timeslot:{type:Sequelize[_0xcdeb[4]]}}
\ No newline at end of file
index a695955..69f0735 100644 (file)
@@ -1 +1 @@
-var _0x8297=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x8297[0];var jsonpatch=require(_0x8297[1]);var rp=require(_0x8297[2]);var moment=require(_0x8297[3]);var BPromise=require(_0x8297[4]);var util=require(_0x8297[5]);var path=require(_0x8297[6]);var sox=require(_0x8297[7]);var ejs=require(_0x8297[8]);var fs=require(_0x8297[9]);var _=require(_0x8297[10]);var squel=require(_0x8297[11]);var crypto=require(_0x8297[12]);var jsforce=require(_0x8297[13]);var toCsv=require(_0x8297[14]);var qs=require(_0x8297[15]);var logger=require(_0x8297[17])(_0x8297[16]);var utils=require(_0x8297[18]);var config=require(_0x8297[19]);var db=require(_0x8297[21])[_0x8297[20]];function respondWithStatusCode(_0xf95ex15,_0xf95ex16,_0xf95ex17){_0xf95ex16= _0xf95ex16|| 204;return function(_0xf95ex18){if(_0xf95ex18){logger[_0x8297[24]](_0x8297[22],_0xf95ex17,_0xf95ex16,_0x8297[23]);logger[_0x8297[26]](_0x8297[25],_0xf95ex17,_0xf95ex16,_0x8297[23]);return _0xf95ex15[_0x8297[27]](_0xf95ex16)};return _0xf95ex15[_0x8297[29]](304)[_0x8297[28]]()}}function respondWithResult(_0xf95ex15,_0xf95ex16,_0xf95ex17){_0xf95ex16= _0xf95ex16|| 200;return function(_0xf95ex18){if(_0xf95ex18){logger[_0x8297[24]](_0x8297[22],_0xf95ex17,_0xf95ex16,_0x8297[30]);logger[_0x8297[26]](_0x8297[25],_0xf95ex17,_0xf95ex16,_0x8297[30],JSON[_0x8297[31]](_0xf95ex18));return _0xf95ex15[_0x8297[29]](_0xf95ex16)[_0x8297[32]](_0xf95ex18)};return _0xf95ex15[_0x8297[29]](304)[_0x8297[28]]()}}function respondWithFilteredResult(_0xf95ex15,_0xf95ex1b,_0xf95ex17){return function(_0xf95ex18){if(_0xf95ex18){var _0xf95ex1c=_0xf95ex18[_0x8297[33]],_0xf95ex1d=_0xf95ex1b[_0x8297[34]],_0xf95ex1e=_0xf95ex1b[_0x8297[34]]+ _0xf95ex1b[_0x8297[35]],_0xf95ex16;if(_0xf95ex1e>= _0xf95ex1c){_0xf95ex1e= _0xf95ex1c;_0xf95ex16= 200}else {_0xf95ex16= 206};_0xf95ex15[_0x8297[29]](_0xf95ex16);logger[_0x8297[24]](_0x8297[22],_0xf95ex17,_0xf95ex16,_0x8297[36]);logger[_0x8297[26]](_0x8297[25],_0xf95ex17,_0xf95ex16,_0x8297[30],JSON[_0x8297[31]](_0xf95ex18));return _0xf95ex15[_0x8297[40]](_0x8297[37],_0xf95ex1d+ _0x8297[38]+ _0xf95ex1e+ _0x8297[39]+ _0xf95ex1c)[_0x8297[32]](_0xf95ex18)};return null}}function patchUpdates(_0xf95ex20){return function(_0xf95ex18){try{jsonpatch[_0x8297[41]](_0xf95ex18,_0xf95ex20,true)}catch(err){return BPromise[_0x8297[42]](err)};return _0xf95ex18[_0x8297[43]]()}}function saveUpdates(_0xf95ex22,_0xf95ex16,_0xf95ex17){return function(_0xf95ex18){if(_0xf95ex18){return _0xf95ex18[_0x8297[46]](_0xf95ex22)[_0x8297[45]](function(_0xf95ex23){logger[_0x8297[24]](_0x8297[22],_0xf95ex17,_0xf95ex16,_0x8297[44]);logger[_0x8297[26]](_0x8297[25],_0xf95ex17,_0xf95ex16,_0x8297[44],JSON[_0x8297[31]](_0xf95ex18));return _0xf95ex23})};return null}}function removeEntity(_0xf95ex15,_0xf95ex16,_0xf95ex17){return function(_0xf95ex18){if(_0xf95ex18){return _0xf95ex18[_0x8297[48]]()[_0x8297[45]](function(){logger[_0x8297[24]](_0x8297[22],_0xf95ex17,_0xf95ex16,_0x8297[47]);logger[_0x8297[26]](_0x8297[25],_0xf95ex17,_0xf95ex16,_0x8297[47],JSON[_0x8297[31]](_0xf95ex18));_0xf95ex15[_0x8297[29]](204)[_0x8297[28]]()})}}}function handleEntityNotFound(_0xf95ex15,_0xf95ex16,_0xf95ex17){return function(_0xf95ex18){if(!_0xf95ex18){logger[_0x8297[50]](_0x8297[22],_0xf95ex17,404,_0x8297[49]);_0xf95ex15[_0x8297[29]](404)[_0x8297[28]]();return null};return _0xf95ex18}}function handleError(_0xf95ex15,_0xf95ex16,_0xf95ex17){_0xf95ex16= _0xf95ex16|| 500;return function(_0xf95ex27){logger[_0x8297[50]](_0x8297[22],_0xf95ex17,_0xf95ex16,JSON[_0x8297[31]](_0xf95ex27));delete _0xf95ex27[_0x8297[51]];_0xf95ex15[_0x8297[29]](_0xf95ex16)[_0x8297[52]](_0xf95ex27)}}exports[_0x8297[53]]= function(_0xf95ex28,_0xf95ex15){var _0xf95ex1b={},_0xf95ex29={};_0xf95ex29[_0x8297[54]]= _[_0x8297[57]](db[_0x8297[56]][_0x8297[55]]);_0xf95ex29[_0x8297[58]]= _[_0x8297[57]](_0xf95ex28[_0x8297[58]]);_0xf95ex29[_0x8297[59]]= _[_0x8297[60]](_0xf95ex29[_0x8297[54]],_0xf95ex29[_0x8297[58]]);_0xf95ex1b[_0x8297[61]]= _[_0x8297[60]](_0xf95ex29[_0x8297[54]],qs[_0x8297[62]](_0xf95ex28[_0x8297[58]][_0x8297[62]]));_0xf95ex1b[_0x8297[61]]= (_0xf95ex1b[_0x8297[61]][_0x8297[63]])?_0xf95ex1b[_0x8297[61]]:_0xf95ex29[_0x8297[54]];if(!_0xf95ex28[_0x8297[58]][_0x8297[65]](_0x8297[64])){_0xf95ex1b[_0x8297[35]]= qs[_0x8297[35]](_0xf95ex28[_0x8297[58]][_0x8297[35]]);_0xf95ex1b[_0x8297[34]]= qs[_0x8297[34]](_0xf95ex28[_0x8297[58]][_0x8297[34]])};_0xf95ex1b[_0x8297[66]]= qs[_0x8297[67]](_0xf95ex28[_0x8297[58]][_0x8297[67]]);_0xf95ex1b[_0x8297[68]]= qs[_0x8297[59]](_[_0x8297[69]](_0xf95ex28[_0x8297[58]],_0xf95ex29[_0x8297[59]]));if(_0xf95ex28[_0x8297[58]][_0x8297[70]]){_0xf95ex1b[_0x8297[68]]= _[_0x8297[73]](_0xf95ex1b[_0x8297[68]],{$or:_[_0x8297[72]](_0xf95ex1b[_0x8297[61]],function(_0xf95ex2a){var _0xf95ex2b={};_0xf95ex2b[_0xf95ex2a]= {$like:_0x8297[71]+ _0xf95ex28[_0x8297[58]][_0x8297[70]]+ _0x8297[71]};return _0xf95ex2b})})};_0xf95ex1b= _[_0x8297[73]]({},_0xf95ex1b,_0xf95ex28[_0x8297[74]]);return db[_0x8297[56]][_0x8297[76]](_0xf95ex1b)[_0x8297[45]](respondWithFilteredResult(_0xf95ex15,_0xf95ex1b,_0x8297[53]))[_0x8297[75]](handleError(_0xf95ex15,null,_0x8297[53]))};exports[_0x8297[77]]= function(_0xf95ex28,_0xf95ex15){var _0xf95ex1b={raw:false,where:{id:_0xf95ex28[_0x8297[79]][_0x8297[78]]}},_0xf95ex29={};_0xf95ex29[_0x8297[54]]= _[_0x8297[57]](db[_0x8297[56]][_0x8297[55]]);_0xf95ex29[_0x8297[58]]= _[_0x8297[57]](_0xf95ex28[_0x8297[58]]);_0xf95ex29[_0x8297[59]]= _[_0x8297[60]](_0xf95ex29[_0x8297[54]],_0xf95ex29[_0x8297[58]]);_0xf95ex1b[_0x8297[61]]= _[_0x8297[60]](_0xf95ex29[_0x8297[54]],qs[_0x8297[62]](_0xf95ex28[_0x8297[58]][_0x8297[62]]));_0xf95ex1b[_0x8297[61]]= (_0xf95ex1b[_0x8297[61]][_0x8297[63]])?_0xf95ex1b[_0x8297[61]]:_0xf95ex29[_0x8297[54]];_0xf95ex1b= _[_0x8297[73]]({},_0xf95ex1b,_0xf95ex28[_0x8297[74]]);return db[_0x8297[56]][_0x8297[80]](_0xf95ex1b)[_0x8297[45]](handleEntityNotFound(_0xf95ex15,null,_0x8297[77]))[_0x8297[45]](respondWithResult(_0xf95ex15,null,_0x8297[77]))[_0x8297[75]](handleError(_0xf95ex15,null,_0x8297[77]))};exports[_0x8297[81]]= function(_0xf95ex28,_0xf95ex15){return db[_0x8297[56]][_0x8297[81]](_0xf95ex28[_0x8297[82]],{})[_0x8297[45]](respondWithResult(_0xf95ex15,201,_0x8297[81]))[_0x8297[75]](handleError(_0xf95ex15,null,_0x8297[81]))};exports[_0x8297[46]]= function(_0xf95ex28,_0xf95ex15){if(_0xf95ex28[_0x8297[82]][_0x8297[78]]){delete _0xf95ex28[_0x8297[82]][_0x8297[78]]};return db[_0x8297[56]][_0x8297[80]]({where:{id:_0xf95ex28[_0x8297[79]][_0x8297[78]]}})[_0x8297[45]](handleEntityNotFound(_0xf95ex15,null,_0x8297[46]))[_0x8297[45]](saveUpdates(_0xf95ex28[_0x8297[82]],null,_0x8297[46]))[_0x8297[45]](respondWithResult(_0xf95ex15,null,_0x8297[46]))[_0x8297[75]](handleError(_0xf95ex15,null,_0x8297[46]))};exports[_0x8297[48]]= function(_0xf95ex28,_0xf95ex15){return db[_0x8297[56]][_0x8297[80]]({where:{id:_0xf95ex28[_0x8297[79]][_0x8297[78]]}})[_0x8297[45]](handleEntityNotFound(_0xf95ex15,null,_0x8297[48]))[_0x8297[45]](removeEntity(_0xf95ex15,null,_0x8297[48]))[_0x8297[75]](handleError(_0xf95ex15,null,_0x8297[48]))};exports[_0x8297[83]]= function(_0xf95ex28,_0xf95ex15){return db[_0x8297[56]][_0x8297[83]]()[_0x8297[45]](respondWithResult(_0xf95ex15,null,_0x8297[83]))[_0x8297[75]](handleError(_0xf95ex15,null,_0x8297[83]))}
\ No newline at end of file
+var _0x1b7f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x1b7f[0];var jsonpatch=require(_0x1b7f[1]);var rp=require(_0x1b7f[2]);var moment=require(_0x1b7f[3]);var BPromise=require(_0x1b7f[4]);var util=require(_0x1b7f[5]);var path=require(_0x1b7f[6]);var sox=require(_0x1b7f[7]);var ejs=require(_0x1b7f[8]);var fs=require(_0x1b7f[9]);var _=require(_0x1b7f[10]);var squel=require(_0x1b7f[11]);var crypto=require(_0x1b7f[12]);var jsforce=require(_0x1b7f[13]);var toCsv=require(_0x1b7f[14]);var qs=require(_0x1b7f[15]);var logger=require(_0x1b7f[17])(_0x1b7f[16]);var utils=require(_0x1b7f[18]);var config=require(_0x1b7f[19]);var db=require(_0x1b7f[21])[_0x1b7f[20]];function respondWithStatusCode(_0xd0e4x15,_0xd0e4x16,_0xd0e4x17){_0xd0e4x16= _0xd0e4x16|| 204;return function(_0xd0e4x18){if(_0xd0e4x18){logger[_0x1b7f[24]](_0x1b7f[22],_0xd0e4x17,_0xd0e4x16,_0x1b7f[23]);logger[_0x1b7f[26]](_0x1b7f[25],_0xd0e4x17,_0xd0e4x16,_0x1b7f[23]);return _0xd0e4x15[_0x1b7f[27]](_0xd0e4x16)};return _0xd0e4x15[_0x1b7f[29]](304)[_0x1b7f[28]]()}}function respondWithResult(_0xd0e4x15,_0xd0e4x16,_0xd0e4x17){_0xd0e4x16= _0xd0e4x16|| 200;return function(_0xd0e4x18){if(_0xd0e4x18){logger[_0x1b7f[24]](_0x1b7f[22],_0xd0e4x17,_0xd0e4x16,_0x1b7f[30]);logger[_0x1b7f[26]](_0x1b7f[25],_0xd0e4x17,_0xd0e4x16,_0x1b7f[30],JSON[_0x1b7f[31]](_0xd0e4x18));return _0xd0e4x15[_0x1b7f[29]](_0xd0e4x16)[_0x1b7f[32]](_0xd0e4x18)};return _0xd0e4x15[_0x1b7f[29]](304)[_0x1b7f[28]]()}}function respondWithFilteredResult(_0xd0e4x15,_0xd0e4x1b,_0xd0e4x17){return function(_0xd0e4x18){if(_0xd0e4x18){var _0xd0e4x1c=_0xd0e4x18[_0x1b7f[33]],_0xd0e4x1d=_0xd0e4x1b[_0x1b7f[34]],_0xd0e4x1e=_0xd0e4x1b[_0x1b7f[34]]+ _0xd0e4x1b[_0x1b7f[35]],_0xd0e4x16;if(_0xd0e4x1e>= _0xd0e4x1c){_0xd0e4x1e= _0xd0e4x1c;_0xd0e4x16= 200}else {_0xd0e4x16= 206};_0xd0e4x15[_0x1b7f[29]](_0xd0e4x16);logger[_0x1b7f[24]](_0x1b7f[22],_0xd0e4x17,_0xd0e4x16,_0x1b7f[36]);logger[_0x1b7f[26]](_0x1b7f[25],_0xd0e4x17,_0xd0e4x16,_0x1b7f[30],JSON[_0x1b7f[31]](_0xd0e4x18));return _0xd0e4x15[_0x1b7f[40]](_0x1b7f[37],_0xd0e4x1d+ _0x1b7f[38]+ _0xd0e4x1e+ _0x1b7f[39]+ _0xd0e4x1c)[_0x1b7f[32]](_0xd0e4x18)};return null}}function patchUpdates(_0xd0e4x20){return function(_0xd0e4x18){try{jsonpatch[_0x1b7f[41]](_0xd0e4x18,_0xd0e4x20,true)}catch(err){return BPromise[_0x1b7f[42]](err)};return _0xd0e4x18[_0x1b7f[43]]()}}function saveUpdates(_0xd0e4x22,_0xd0e4x16,_0xd0e4x17){return function(_0xd0e4x18){if(_0xd0e4x18){return _0xd0e4x18[_0x1b7f[46]](_0xd0e4x22)[_0x1b7f[45]](function(_0xd0e4x23){logger[_0x1b7f[24]](_0x1b7f[22],_0xd0e4x17,_0xd0e4x16,_0x1b7f[44]);logger[_0x1b7f[26]](_0x1b7f[25],_0xd0e4x17,_0xd0e4x16,_0x1b7f[44],JSON[_0x1b7f[31]](_0xd0e4x18));return _0xd0e4x23})};return null}}function removeEntity(_0xd0e4x15,_0xd0e4x16,_0xd0e4x17){return function(_0xd0e4x18){if(_0xd0e4x18){return _0xd0e4x18[_0x1b7f[48]]()[_0x1b7f[45]](function(){logger[_0x1b7f[24]](_0x1b7f[22],_0xd0e4x17,_0xd0e4x16,_0x1b7f[47]);logger[_0x1b7f[26]](_0x1b7f[25],_0xd0e4x17,_0xd0e4x16,_0x1b7f[47],JSON[_0x1b7f[31]](_0xd0e4x18));_0xd0e4x15[_0x1b7f[29]](204)[_0x1b7f[28]]()})}}}function handleEntityNotFound(_0xd0e4x15,_0xd0e4x16,_0xd0e4x17){return function(_0xd0e4x18){if(!_0xd0e4x18){logger[_0x1b7f[50]](_0x1b7f[22],_0xd0e4x17,404,_0x1b7f[49]);_0xd0e4x15[_0x1b7f[29]](404)[_0x1b7f[28]]();return null};return _0xd0e4x18}}function handleError(_0xd0e4x15,_0xd0e4x16,_0xd0e4x17){_0xd0e4x16= _0xd0e4x16|| 500;return function(_0xd0e4x27){logger[_0x1b7f[50]](_0x1b7f[22],_0xd0e4x17,_0xd0e4x16,JSON[_0x1b7f[31]](_0xd0e4x27));delete _0xd0e4x27[_0x1b7f[51]];_0xd0e4x15[_0x1b7f[29]](_0xd0e4x16)[_0x1b7f[52]](_0xd0e4x27)}}exports[_0x1b7f[53]]= function(_0xd0e4x28,_0xd0e4x15){var _0xd0e4x1b={},_0xd0e4x29={};_0xd0e4x29[_0x1b7f[54]]= _[_0x1b7f[57]](db[_0x1b7f[56]][_0x1b7f[55]]);_0xd0e4x29[_0x1b7f[58]]= _[_0x1b7f[57]](_0xd0e4x28[_0x1b7f[58]]);_0xd0e4x29[_0x1b7f[59]]= _[_0x1b7f[60]](_0xd0e4x29[_0x1b7f[54]],_0xd0e4x29[_0x1b7f[58]]);_0xd0e4x1b[_0x1b7f[61]]= _[_0x1b7f[60]](_0xd0e4x29[_0x1b7f[54]],qs[_0x1b7f[62]](_0xd0e4x28[_0x1b7f[58]][_0x1b7f[62]]));_0xd0e4x1b[_0x1b7f[61]]= (_0xd0e4x1b[_0x1b7f[61]][_0x1b7f[63]])?_0xd0e4x1b[_0x1b7f[61]]:_0xd0e4x29[_0x1b7f[54]];if(!_0xd0e4x28[_0x1b7f[58]][_0x1b7f[65]](_0x1b7f[64])){_0xd0e4x1b[_0x1b7f[35]]= qs[_0x1b7f[35]](_0xd0e4x28[_0x1b7f[58]][_0x1b7f[35]]);_0xd0e4x1b[_0x1b7f[34]]= qs[_0x1b7f[34]](_0xd0e4x28[_0x1b7f[58]][_0x1b7f[34]])};_0xd0e4x1b[_0x1b7f[66]]= qs[_0x1b7f[67]](_0xd0e4x28[_0x1b7f[58]][_0x1b7f[67]]);_0xd0e4x1b[_0x1b7f[68]]= qs[_0x1b7f[59]](_[_0x1b7f[69]](_0xd0e4x28[_0x1b7f[58]],_0xd0e4x29[_0x1b7f[59]]));if(_0xd0e4x28[_0x1b7f[58]][_0x1b7f[70]]){_0xd0e4x1b[_0x1b7f[68]]= _[_0x1b7f[73]](_0xd0e4x1b[_0x1b7f[68]],{$or:_[_0x1b7f[72]](_0xd0e4x1b[_0x1b7f[61]],function(_0xd0e4x2a){var _0xd0e4x2b={};_0xd0e4x2b[_0xd0e4x2a]= {$like:_0x1b7f[71]+ _0xd0e4x28[_0x1b7f[58]][_0x1b7f[70]]+ _0x1b7f[71]};return _0xd0e4x2b})})};_0xd0e4x1b= _[_0x1b7f[73]]({},_0xd0e4x1b,_0xd0e4x28[_0x1b7f[74]]);return db[_0x1b7f[56]][_0x1b7f[76]](_0xd0e4x1b)[_0x1b7f[45]](respondWithFilteredResult(_0xd0e4x15,_0xd0e4x1b,_0x1b7f[53]))[_0x1b7f[75]](handleError(_0xd0e4x15,null,_0x1b7f[53]))};exports[_0x1b7f[77]]= function(_0xd0e4x28,_0xd0e4x15){var _0xd0e4x1b={raw:false,where:{id:_0xd0e4x28[_0x1b7f[79]][_0x1b7f[78]]}},_0xd0e4x29={};_0xd0e4x29[_0x1b7f[54]]= _[_0x1b7f[57]](db[_0x1b7f[56]][_0x1b7f[55]]);_0xd0e4x29[_0x1b7f[58]]= _[_0x1b7f[57]](_0xd0e4x28[_0x1b7f[58]]);_0xd0e4x29[_0x1b7f[59]]= _[_0x1b7f[60]](_0xd0e4x29[_0x1b7f[54]],_0xd0e4x29[_0x1b7f[58]]);_0xd0e4x1b[_0x1b7f[61]]= _[_0x1b7f[60]](_0xd0e4x29[_0x1b7f[54]],qs[_0x1b7f[62]](_0xd0e4x28[_0x1b7f[58]][_0x1b7f[62]]));_0xd0e4x1b[_0x1b7f[61]]= (_0xd0e4x1b[_0x1b7f[61]][_0x1b7f[63]])?_0xd0e4x1b[_0x1b7f[61]]:_0xd0e4x29[_0x1b7f[54]];_0xd0e4x1b= _[_0x1b7f[73]]({},_0xd0e4x1b,_0xd0e4x28[_0x1b7f[74]]);return db[_0x1b7f[56]][_0x1b7f[80]](_0xd0e4x1b)[_0x1b7f[45]](handleEntityNotFound(_0xd0e4x15,null,_0x1b7f[77]))[_0x1b7f[45]](respondWithResult(_0xd0e4x15,null,_0x1b7f[77]))[_0x1b7f[75]](handleError(_0xd0e4x15,null,_0x1b7f[77]))};exports[_0x1b7f[81]]= function(_0xd0e4x28,_0xd0e4x15){return db[_0x1b7f[56]][_0x1b7f[81]](_0xd0e4x28[_0x1b7f[82]],{})[_0x1b7f[45]](respondWithResult(_0xd0e4x15,201,_0x1b7f[81]))[_0x1b7f[75]](handleError(_0xd0e4x15,null,_0x1b7f[81]))};exports[_0x1b7f[46]]= function(_0xd0e4x28,_0xd0e4x15){if(_0xd0e4x28[_0x1b7f[82]][_0x1b7f[78]]){delete _0xd0e4x28[_0x1b7f[82]][_0x1b7f[78]]};return db[_0x1b7f[56]][_0x1b7f[80]]({where:{id:_0xd0e4x28[_0x1b7f[79]][_0x1b7f[78]]}})[_0x1b7f[45]](handleEntityNotFound(_0xd0e4x15,null,_0x1b7f[46]))[_0x1b7f[45]](saveUpdates(_0xd0e4x28[_0x1b7f[82]],null,_0x1b7f[46]))[_0x1b7f[45]](respondWithResult(_0xd0e4x15,null,_0x1b7f[46]))[_0x1b7f[75]](handleError(_0xd0e4x15,null,_0x1b7f[46]))};exports[_0x1b7f[48]]= function(_0xd0e4x28,_0xd0e4x15){return db[_0x1b7f[56]][_0x1b7f[80]]({where:{id:_0xd0e4x28[_0x1b7f[79]][_0x1b7f[78]]}})[_0x1b7f[45]](handleEntityNotFound(_0xd0e4x15,null,_0x1b7f[48]))[_0x1b7f[45]](removeEntity(_0xd0e4x15,null,_0x1b7f[48]))[_0x1b7f[75]](handleError(_0xd0e4x15,null,_0x1b7f[48]))};exports[_0x1b7f[83]]= function(_0xd0e4x28,_0xd0e4x15){return db[_0x1b7f[56]][_0x1b7f[83]]()[_0x1b7f[45]](respondWithResult(_0xd0e4x15,null,_0x1b7f[83]))[_0x1b7f[75]](handleError(_0xd0e4x15,null,_0x1b7f[83]))}
\ No newline at end of file
index 43561ff..a319067 100644 (file)
@@ -1 +1 @@
-var _0x98f2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x63\x68\x61\x74\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x98f2[0];var _=require(_0x98f2[1]);var util=require(_0x98f2[2]);var logger=require(_0x98f2[4])(_0x98f2[3]);var attributes=require(_0x98f2[5]);module[_0x98f2[6]]= function(_0x7726x5,_0x7726x6){return _0x7726x5[_0x98f2[9]](_0x98f2[7],attributes,{tableName:_0x98f2[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x6f8e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x63\x68\x61\x74\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x6f8e[0];var _=require(_0x6f8e[1]);var util=require(_0x6f8e[2]);var logger=require(_0x6f8e[4])(_0x6f8e[3]);var attributes=require(_0x6f8e[5]);module[_0x6f8e[6]]= function(_0x22cax5,_0x22cax6){return _0x22cax5[_0x6f8e[9]](_0x6f8e[7],attributes,{tableName:_0x6f8e[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 0cf181a..38924f0 100644 (file)
@@ -1 +1 @@
-var _0xc8ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xc8ee[0];var _=require(_0xc8ee[1]);var util=require(_0xc8ee[2]);var moment=require(_0xc8ee[3]);var BPromise=require(_0xc8ee[4]);var db=require(_0xc8ee[6])[_0xc8ee[5]];var utils=require(_0xc8ee[7]);var logger=require(_0xc8ee[9])(_0xc8ee[8]);var jayson=require(_0xc8ee[10]);var client=jayson[_0xc8ee[12]][_0xc8ee[11]]({port:9002});function respondWithRpcPromise(_0x1d4fxb,_0x1d4fxc,_0x1d4fxd){return  new BPromise(function(_0x1d4fxe,_0x1d4fxf){return client[_0xc8ee[25]](_0x1d4fxb,_0x1d4fxd)[_0xc8ee[24]](function(_0x1d4fx11){logger[_0xc8ee[17]](_0xc8ee[13],_0x1d4fxc,_0xc8ee[16]);logger[_0xc8ee[20]](_0xc8ee[18],_0x1d4fxc,_0xc8ee[16],JSON[_0xc8ee[19]](_0x1d4fx11));if(_0x1d4fx11[_0xc8ee[14]]){if(_0x1d4fx11[_0xc8ee[14]][_0xc8ee[21]]=== 500){logger[_0xc8ee[14]](_0xc8ee[13],_0x1d4fxc,_0x1d4fx11[_0xc8ee[14]][_0xc8ee[22]]);return _0x1d4fxf(_0x1d4fx11[_0xc8ee[14]][_0xc8ee[22]])};logger[_0xc8ee[14]](_0xc8ee[13],_0x1d4fxc,_0x1d4fx11[_0xc8ee[14]][_0xc8ee[22]]);return _0x1d4fxe(_0x1d4fx11[_0xc8ee[14]][_0xc8ee[22]])}else {logger[_0xc8ee[17]](_0xc8ee[13],_0x1d4fxc,_0xc8ee[16]);_0x1d4fxe(_0x1d4fx11[_0xc8ee[23]][_0xc8ee[22]])}})[_0xc8ee[15]](function(_0x1d4fx10){logger[_0xc8ee[14]](_0xc8ee[13],_0x1d4fxc,_0x1d4fx10);_0x1d4fxf(_0x1d4fx10)})})}
\ No newline at end of file
+var _0x6f43=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x6f43[0];var _=require(_0x6f43[1]);var util=require(_0x6f43[2]);var moment=require(_0x6f43[3]);var BPromise=require(_0x6f43[4]);var db=require(_0x6f43[6])[_0x6f43[5]];var utils=require(_0x6f43[7]);var logger=require(_0x6f43[9])(_0x6f43[8]);var jayson=require(_0x6f43[10]);var client=jayson[_0x6f43[12]][_0x6f43[11]]({port:9002});function respondWithRpcPromise(_0x7289xb,_0x7289xc,_0x7289xd){return  new BPromise(function(_0x7289xe,_0x7289xf){return client[_0x6f43[25]](_0x7289xb,_0x7289xd)[_0x6f43[24]](function(_0x7289x11){logger[_0x6f43[17]](_0x6f43[13],_0x7289xc,_0x6f43[16]);logger[_0x6f43[20]](_0x6f43[18],_0x7289xc,_0x6f43[16],JSON[_0x6f43[19]](_0x7289x11));if(_0x7289x11[_0x6f43[14]]){if(_0x7289x11[_0x6f43[14]][_0x6f43[21]]=== 500){logger[_0x6f43[14]](_0x6f43[13],_0x7289xc,_0x7289x11[_0x6f43[14]][_0x6f43[22]]);return _0x7289xf(_0x7289x11[_0x6f43[14]][_0x6f43[22]])};logger[_0x6f43[14]](_0x6f43[13],_0x7289xc,_0x7289x11[_0x6f43[14]][_0x6f43[22]]);return _0x7289xe(_0x7289x11[_0x6f43[14]][_0x6f43[22]])}else {logger[_0x6f43[17]](_0x6f43[13],_0x7289xc,_0x6f43[16]);_0x7289xe(_0x7289x11[_0x6f43[23]][_0x6f43[22]])}})[_0x6f43[15]](function(_0x7289x10){logger[_0x6f43[14]](_0x6f43[13],_0x7289xc,_0x7289x10);_0x7289xf(_0x7289x10)})})}
\ No newline at end of file
index 10c40f6..e1ab202 100644 (file)
@@ -1 +1 @@
-var _0x321d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x321d[0];var multer=require(_0x321d[1]);var util=require(_0x321d[2]);var path=require(_0x321d[3]);var express=require(_0x321d[4]);var router=express.Router();var auth=require(_0x321d[5]);var config=require(_0x321d[6]);var controller=require(_0x321d[7]);router[_0x321d[11]](_0x321d[8],auth[_0x321d[9]](),controller[_0x321d[10]]);router[_0x321d[11]](_0x321d[12],auth[_0x321d[9]](),controller[_0x321d[13]]);router[_0x321d[11]](_0x321d[14],auth[_0x321d[9]](),controller[_0x321d[15]]);router[_0x321d[17]](_0x321d[8],auth[_0x321d[9]](),controller[_0x321d[16]]);router[_0x321d[19]](_0x321d[14],auth[_0x321d[9]](),controller[_0x321d[18]]);router[_0x321d[21]](_0x321d[14],auth[_0x321d[9]](),controller[_0x321d[20]]);module[_0x321d[22]]= router
\ No newline at end of file
+var _0xb10d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb10d[0];var multer=require(_0xb10d[1]);var util=require(_0xb10d[2]);var path=require(_0xb10d[3]);var express=require(_0xb10d[4]);var router=express.Router();var auth=require(_0xb10d[5]);var config=require(_0xb10d[6]);var controller=require(_0xb10d[7]);router[_0xb10d[11]](_0xb10d[8],auth[_0xb10d[9]](),controller[_0xb10d[10]]);router[_0xb10d[11]](_0xb10d[12],auth[_0xb10d[9]](),controller[_0xb10d[13]]);router[_0xb10d[11]](_0xb10d[14],auth[_0xb10d[9]](),controller[_0xb10d[15]]);router[_0xb10d[17]](_0xb10d[8],auth[_0xb10d[9]](),controller[_0xb10d[16]]);router[_0xb10d[19]](_0xb10d[14],auth[_0xb10d[9]](),controller[_0xb10d[18]]);router[_0xb10d[21]](_0xb10d[14],auth[_0xb10d[9]](),controller[_0xb10d[20]]);module[_0xb10d[22]]= router
\ No newline at end of file
index 6efaebf..fdead23 100644 (file)
@@ -1 +1 @@
-var _0xb0bc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x77\x65\x62\x63\x68\x61\x74","\x65\x6E\x71\x75\x69\x72\x79","\x70\x65\x6E\x64\x69\x6E\x67","\x61\x63\x63\x65\x70\x74\x65\x64","\x75\x6E\x73\x65\x72\x76\x65\x64","\x73\x65\x72\x76\x65\x64","\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74","\x61\x62\x61\x6E\x64\x6F\x6E"];_0xb0bc[0];var Sequelize=require(_0xb0bc[1]);module[_0xb0bc[2]]= {fullname:{type:Sequelize[_0xb0bc[3]]},email:{type:Sequelize[_0xb0bc[3]],validate:{isEmail:true}},remote_address:{type:Sequelize[_0xb0bc[3]]},user_agent:{type:Sequelize[_0xb0bc[3]]},visitor_language:{type:Sequelize[_0xb0bc[3]]},referer:{type:Sequelize[_0xb0bc[3]]},browser:{type:Sequelize[_0xb0bc[3]]},engine:{type:Sequelize[_0xb0bc[3]]},os:{type:Sequelize[_0xb0bc[3]]},device:{type:Sequelize[_0xb0bc[3]]},country:{type:Sequelize[_0xb0bc[3]]},region:{type:Sequelize[_0xb0bc[3]]},city:{type:Sequelize[_0xb0bc[3]]},latitude:{type:Sequelize[_0xb0bc[3]]},longitude:{type:Sequelize[_0xb0bc[3]]},origin:{type:Sequelize.ENUM(_0xb0bc[4],_0xb0bc[5])},status:{type:Sequelize.ENUM(_0xb0bc[6],_0xb0bc[7],_0xb0bc[8],_0xb0bc[9],_0xb0bc[10],_0xb0bc[11]),defaultValue:_0xb0bc[6]},data1:{type:Sequelize[_0xb0bc[3]]},data2:{type:Sequelize[_0xb0bc[3]]},data3:{type:Sequelize[_0xb0bc[3]]},offlineData1:{type:Sequelize[_0xb0bc[3]]},offlineData2:{type:Sequelize[_0xb0bc[3]]},offlineData3:{type:Sequelize[_0xb0bc[3]]},labelData1:{type:Sequelize[_0xb0bc[3]]},labelData2:{type:Sequelize[_0xb0bc[3]]},labelData3:{type:Sequelize[_0xb0bc[3]]},labelOfflineData1:{type:Sequelize[_0xb0bc[3]]},labelOfflineData2:{type:Sequelize[_0xb0bc[3]]},labelOfflineData3:{type:Sequelize[_0xb0bc[3]]}}
\ No newline at end of file
+var _0xff19=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x77\x65\x62\x63\x68\x61\x74","\x65\x6E\x71\x75\x69\x72\x79","\x70\x65\x6E\x64\x69\x6E\x67","\x61\x63\x63\x65\x70\x74\x65\x64","\x75\x6E\x73\x65\x72\x76\x65\x64","\x73\x65\x72\x76\x65\x64","\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74","\x61\x62\x61\x6E\x64\x6F\x6E"];_0xff19[0];var Sequelize=require(_0xff19[1]);module[_0xff19[2]]= {fullname:{type:Sequelize[_0xff19[3]]},email:{type:Sequelize[_0xff19[3]],validate:{isEmail:true}},remote_address:{type:Sequelize[_0xff19[3]]},user_agent:{type:Sequelize[_0xff19[3]]},visitor_language:{type:Sequelize[_0xff19[3]]},referer:{type:Sequelize[_0xff19[3]]},browser:{type:Sequelize[_0xff19[3]]},engine:{type:Sequelize[_0xff19[3]]},os:{type:Sequelize[_0xff19[3]]},device:{type:Sequelize[_0xff19[3]]},country:{type:Sequelize[_0xff19[3]]},region:{type:Sequelize[_0xff19[3]]},city:{type:Sequelize[_0xff19[3]]},latitude:{type:Sequelize[_0xff19[3]]},longitude:{type:Sequelize[_0xff19[3]]},origin:{type:Sequelize.ENUM(_0xff19[4],_0xff19[5])},status:{type:Sequelize.ENUM(_0xff19[6],_0xff19[7],_0xff19[8],_0xff19[9],_0xff19[10],_0xff19[11]),defaultValue:_0xff19[6]},data1:{type:Sequelize[_0xff19[3]]},data2:{type:Sequelize[_0xff19[3]]},data3:{type:Sequelize[_0xff19[3]]},offlineData1:{type:Sequelize[_0xff19[3]]},offlineData2:{type:Sequelize[_0xff19[3]]},offlineData3:{type:Sequelize[_0xff19[3]]},labelData1:{type:Sequelize[_0xff19[3]]},labelData2:{type:Sequelize[_0xff19[3]]},labelData3:{type:Sequelize[_0xff19[3]]},labelOfflineData1:{type:Sequelize[_0xff19[3]]},labelOfflineData2:{type:Sequelize[_0xff19[3]]},labelOfflineData3:{type:Sequelize[_0xff19[3]]}}
\ No newline at end of file
index cf026a7..0d5be71 100644 (file)
@@ -1 +1 @@
-var _0x34c1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x34c1[0];var jsonpatch=require(_0x34c1[1]);var rp=require(_0x34c1[2]);var moment=require(_0x34c1[3]);var BPromise=require(_0x34c1[4]);var util=require(_0x34c1[5]);var path=require(_0x34c1[6]);var sox=require(_0x34c1[7]);var ejs=require(_0x34c1[8]);var fs=require(_0x34c1[9]);var _=require(_0x34c1[10]);var squel=require(_0x34c1[11]);var crypto=require(_0x34c1[12]);var jsforce=require(_0x34c1[13]);var toCsv=require(_0x34c1[14]);var qs=require(_0x34c1[15]);var logger=require(_0x34c1[17])(_0x34c1[16]);var utils=require(_0x34c1[18]);var config=require(_0x34c1[19]);var db=require(_0x34c1[21])[_0x34c1[20]];function respondWithStatusCode(_0x164dx15,_0x164dx16,_0x164dx17){_0x164dx16= _0x164dx16|| 204;return function(_0x164dx18){if(_0x164dx18){logger[_0x34c1[24]](_0x34c1[22],_0x164dx17,_0x164dx16,_0x34c1[23]);logger[_0x34c1[26]](_0x34c1[25],_0x164dx17,_0x164dx16,_0x34c1[23]);return _0x164dx15[_0x34c1[27]](_0x164dx16)};return _0x164dx15[_0x34c1[29]](304)[_0x34c1[28]]()}}function respondWithResult(_0x164dx15,_0x164dx16,_0x164dx17){_0x164dx16= _0x164dx16|| 200;return function(_0x164dx18){if(_0x164dx18){logger[_0x34c1[24]](_0x34c1[22],_0x164dx17,_0x164dx16,_0x34c1[30]);logger[_0x34c1[26]](_0x34c1[25],_0x164dx17,_0x164dx16,_0x34c1[30],JSON[_0x34c1[31]](_0x164dx18));return _0x164dx15[_0x34c1[29]](_0x164dx16)[_0x34c1[32]](_0x164dx18)};return _0x164dx15[_0x34c1[29]](304)[_0x34c1[28]]()}}function respondWithFilteredResult(_0x164dx15,_0x164dx1b,_0x164dx17){return function(_0x164dx18){if(_0x164dx18){var _0x164dx1c=_0x164dx18[_0x34c1[33]],_0x164dx1d=_0x164dx1b[_0x34c1[34]],_0x164dx1e=_0x164dx1b[_0x34c1[34]]+ _0x164dx1b[_0x34c1[35]],_0x164dx16;if(_0x164dx1e>= _0x164dx1c){_0x164dx1e= _0x164dx1c;_0x164dx16= 200}else {_0x164dx16= 206};_0x164dx15[_0x34c1[29]](_0x164dx16);logger[_0x34c1[24]](_0x34c1[22],_0x164dx17,_0x164dx16,_0x34c1[36]);logger[_0x34c1[26]](_0x34c1[25],_0x164dx17,_0x164dx16,_0x34c1[30],JSON[_0x34c1[31]](_0x164dx18));return _0x164dx15[_0x34c1[40]](_0x34c1[37],_0x164dx1d+ _0x34c1[38]+ _0x164dx1e+ _0x34c1[39]+ _0x164dx1c)[_0x34c1[32]](_0x164dx18)};return null}}function patchUpdates(_0x164dx20){return function(_0x164dx18){try{jsonpatch[_0x34c1[41]](_0x164dx18,_0x164dx20,true)}catch(err){return BPromise[_0x34c1[42]](err)};return _0x164dx18[_0x34c1[43]]()}}function saveUpdates(_0x164dx22,_0x164dx16,_0x164dx17){return function(_0x164dx18){if(_0x164dx18){return _0x164dx18[_0x34c1[46]](_0x164dx22)[_0x34c1[45]](function(_0x164dx23){logger[_0x34c1[24]](_0x34c1[22],_0x164dx17,_0x164dx16,_0x34c1[44]);logger[_0x34c1[26]](_0x34c1[25],_0x164dx17,_0x164dx16,_0x34c1[44],JSON[_0x34c1[31]](_0x164dx18));return _0x164dx23})};return null}}function removeEntity(_0x164dx15,_0x164dx16,_0x164dx17){return function(_0x164dx18){if(_0x164dx18){return _0x164dx18[_0x34c1[48]]()[_0x34c1[45]](function(){logger[_0x34c1[24]](_0x34c1[22],_0x164dx17,_0x164dx16,_0x34c1[47]);logger[_0x34c1[26]](_0x34c1[25],_0x164dx17,_0x164dx16,_0x34c1[47],JSON[_0x34c1[31]](_0x164dx18));_0x164dx15[_0x34c1[29]](204)[_0x34c1[28]]()})}}}function handleEntityNotFound(_0x164dx15,_0x164dx16,_0x164dx17){return function(_0x164dx18){if(!_0x164dx18){logger[_0x34c1[50]](_0x34c1[22],_0x164dx17,404,_0x34c1[49]);_0x164dx15[_0x34c1[29]](404)[_0x34c1[28]]();return null};return _0x164dx18}}function handleError(_0x164dx15,_0x164dx16,_0x164dx17){_0x164dx16= _0x164dx16|| 500;return function(_0x164dx27){logger[_0x34c1[50]](_0x34c1[22],_0x164dx17,_0x164dx16,JSON[_0x34c1[31]](_0x164dx27));delete _0x164dx27[_0x34c1[51]];_0x164dx15[_0x34c1[29]](_0x164dx16)[_0x34c1[52]](_0x164dx27)}}exports[_0x34c1[53]]= function(_0x164dx28,_0x164dx15){var _0x164dx1b={raw:true,where:{id:_0x164dx28[_0x34c1[55]][_0x34c1[54]]}},_0x164dx29={};_0x164dx29[_0x34c1[56]]= _[_0x34c1[59]](db[_0x34c1[58]][_0x34c1[57]]);_0x164dx29[_0x34c1[60]]= _[_0x34c1[59]](_0x164dx28[_0x34c1[60]]);_0x164dx29[_0x34c1[61]]= _[_0x34c1[62]](_0x164dx29[_0x34c1[56]],_0x164dx29[_0x34c1[60]]);_0x164dx1b[_0x34c1[63]]= _[_0x34c1[62]](_0x164dx29[_0x34c1[56]],qs[_0x34c1[64]](_0x164dx28[_0x34c1[60]][_0x34c1[64]]));_0x164dx1b[_0x34c1[63]]= (_0x164dx1b[_0x34c1[63]][_0x34c1[65]])?_0x164dx1b[_0x34c1[63]]:_0x164dx29[_0x34c1[56]];_0x164dx1b= _[_0x34c1[67]]({},_0x164dx1b,_0x164dx28[_0x34c1[66]]);return db[_0x34c1[58]][_0x34c1[69]](_0x164dx1b)[_0x34c1[45]](handleEntityNotFound(_0x164dx15,null,_0x34c1[53]))[_0x34c1[45]](respondWithResult(_0x164dx15,null,_0x34c1[53]))[_0x34c1[68]](handleError(_0x164dx15,null,_0x34c1[53]))};exports[_0x34c1[46]]= function(_0x164dx28,_0x164dx15){if(_0x164dx28[_0x34c1[70]][_0x34c1[54]]){delete _0x164dx28[_0x34c1[70]][_0x34c1[54]]};return db[_0x34c1[58]][_0x34c1[69]]({where:{id:_0x164dx28[_0x34c1[55]][_0x34c1[54]]}})[_0x34c1[45]](handleEntityNotFound(_0x164dx15,null,_0x34c1[46]))[_0x34c1[45]](saveUpdates(_0x164dx28[_0x34c1[70]],null,_0x34c1[46]))[_0x34c1[45]](respondWithResult(_0x164dx15,null,_0x34c1[46]))[_0x34c1[68]](handleError(_0x164dx15,null,_0x34c1[46]))};exports[_0x34c1[48]]= function(_0x164dx28,_0x164dx15){return db[_0x34c1[58]][_0x34c1[69]]({where:{id:_0x164dx28[_0x34c1[55]][_0x34c1[54]]}})[_0x34c1[45]](handleEntityNotFound(_0x164dx15,null,_0x34c1[48]))[_0x34c1[45]](removeEntity(_0x164dx15,null,_0x34c1[48]))[_0x34c1[68]](handleError(_0x164dx15,null,_0x34c1[48]))}
\ No newline at end of file
+var _0xa1fb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0xa1fb[0];var jsonpatch=require(_0xa1fb[1]);var rp=require(_0xa1fb[2]);var moment=require(_0xa1fb[3]);var BPromise=require(_0xa1fb[4]);var util=require(_0xa1fb[5]);var path=require(_0xa1fb[6]);var sox=require(_0xa1fb[7]);var ejs=require(_0xa1fb[8]);var fs=require(_0xa1fb[9]);var _=require(_0xa1fb[10]);var squel=require(_0xa1fb[11]);var crypto=require(_0xa1fb[12]);var jsforce=require(_0xa1fb[13]);var toCsv=require(_0xa1fb[14]);var qs=require(_0xa1fb[15]);var logger=require(_0xa1fb[17])(_0xa1fb[16]);var utils=require(_0xa1fb[18]);var config=require(_0xa1fb[19]);var db=require(_0xa1fb[21])[_0xa1fb[20]];function respondWithStatusCode(_0xcbb2x15,_0xcbb2x16,_0xcbb2x17){_0xcbb2x16= _0xcbb2x16|| 204;return function(_0xcbb2x18){if(_0xcbb2x18){logger[_0xa1fb[24]](_0xa1fb[22],_0xcbb2x17,_0xcbb2x16,_0xa1fb[23]);logger[_0xa1fb[26]](_0xa1fb[25],_0xcbb2x17,_0xcbb2x16,_0xa1fb[23]);return _0xcbb2x15[_0xa1fb[27]](_0xcbb2x16)};return _0xcbb2x15[_0xa1fb[29]](304)[_0xa1fb[28]]()}}function respondWithResult(_0xcbb2x15,_0xcbb2x16,_0xcbb2x17){_0xcbb2x16= _0xcbb2x16|| 200;return function(_0xcbb2x18){if(_0xcbb2x18){logger[_0xa1fb[24]](_0xa1fb[22],_0xcbb2x17,_0xcbb2x16,_0xa1fb[30]);logger[_0xa1fb[26]](_0xa1fb[25],_0xcbb2x17,_0xcbb2x16,_0xa1fb[30],JSON[_0xa1fb[31]](_0xcbb2x18));return _0xcbb2x15[_0xa1fb[29]](_0xcbb2x16)[_0xa1fb[32]](_0xcbb2x18)};return _0xcbb2x15[_0xa1fb[29]](304)[_0xa1fb[28]]()}}function respondWithFilteredResult(_0xcbb2x15,_0xcbb2x1b,_0xcbb2x17){return function(_0xcbb2x18){if(_0xcbb2x18){var _0xcbb2x1c=_0xcbb2x18[_0xa1fb[33]],_0xcbb2x1d=_0xcbb2x1b[_0xa1fb[34]],_0xcbb2x1e=_0xcbb2x1b[_0xa1fb[34]]+ _0xcbb2x1b[_0xa1fb[35]],_0xcbb2x16;if(_0xcbb2x1e>= _0xcbb2x1c){_0xcbb2x1e= _0xcbb2x1c;_0xcbb2x16= 200}else {_0xcbb2x16= 206};_0xcbb2x15[_0xa1fb[29]](_0xcbb2x16);logger[_0xa1fb[24]](_0xa1fb[22],_0xcbb2x17,_0xcbb2x16,_0xa1fb[36]);logger[_0xa1fb[26]](_0xa1fb[25],_0xcbb2x17,_0xcbb2x16,_0xa1fb[30],JSON[_0xa1fb[31]](_0xcbb2x18));return _0xcbb2x15[_0xa1fb[40]](_0xa1fb[37],_0xcbb2x1d+ _0xa1fb[38]+ _0xcbb2x1e+ _0xa1fb[39]+ _0xcbb2x1c)[_0xa1fb[32]](_0xcbb2x18)};return null}}function patchUpdates(_0xcbb2x20){return function(_0xcbb2x18){try{jsonpatch[_0xa1fb[41]](_0xcbb2x18,_0xcbb2x20,true)}catch(err){return BPromise[_0xa1fb[42]](err)};return _0xcbb2x18[_0xa1fb[43]]()}}function saveUpdates(_0xcbb2x22,_0xcbb2x16,_0xcbb2x17){return function(_0xcbb2x18){if(_0xcbb2x18){return _0xcbb2x18[_0xa1fb[46]](_0xcbb2x22)[_0xa1fb[45]](function(_0xcbb2x23){logger[_0xa1fb[24]](_0xa1fb[22],_0xcbb2x17,_0xcbb2x16,_0xa1fb[44]);logger[_0xa1fb[26]](_0xa1fb[25],_0xcbb2x17,_0xcbb2x16,_0xa1fb[44],JSON[_0xa1fb[31]](_0xcbb2x18));return _0xcbb2x23})};return null}}function removeEntity(_0xcbb2x15,_0xcbb2x16,_0xcbb2x17){return function(_0xcbb2x18){if(_0xcbb2x18){return _0xcbb2x18[_0xa1fb[48]]()[_0xa1fb[45]](function(){logger[_0xa1fb[24]](_0xa1fb[22],_0xcbb2x17,_0xcbb2x16,_0xa1fb[47]);logger[_0xa1fb[26]](_0xa1fb[25],_0xcbb2x17,_0xcbb2x16,_0xa1fb[47],JSON[_0xa1fb[31]](_0xcbb2x18));_0xcbb2x15[_0xa1fb[29]](204)[_0xa1fb[28]]()})}}}function handleEntityNotFound(_0xcbb2x15,_0xcbb2x16,_0xcbb2x17){return function(_0xcbb2x18){if(!_0xcbb2x18){logger[_0xa1fb[50]](_0xa1fb[22],_0xcbb2x17,404,_0xa1fb[49]);_0xcbb2x15[_0xa1fb[29]](404)[_0xa1fb[28]]();return null};return _0xcbb2x18}}function handleError(_0xcbb2x15,_0xcbb2x16,_0xcbb2x17){_0xcbb2x16= _0xcbb2x16|| 500;return function(_0xcbb2x27){logger[_0xa1fb[50]](_0xa1fb[22],_0xcbb2x17,_0xcbb2x16,JSON[_0xa1fb[31]](_0xcbb2x27));delete _0xcbb2x27[_0xa1fb[51]];_0xcbb2x15[_0xa1fb[29]](_0xcbb2x16)[_0xa1fb[52]](_0xcbb2x27)}}exports[_0xa1fb[53]]= function(_0xcbb2x28,_0xcbb2x15){var _0xcbb2x1b={raw:true,where:{id:_0xcbb2x28[_0xa1fb[55]][_0xa1fb[54]]}},_0xcbb2x29={};_0xcbb2x29[_0xa1fb[56]]= _[_0xa1fb[59]](db[_0xa1fb[58]][_0xa1fb[57]]);_0xcbb2x29[_0xa1fb[60]]= _[_0xa1fb[59]](_0xcbb2x28[_0xa1fb[60]]);_0xcbb2x29[_0xa1fb[61]]= _[_0xa1fb[62]](_0xcbb2x29[_0xa1fb[56]],_0xcbb2x29[_0xa1fb[60]]);_0xcbb2x1b[_0xa1fb[63]]= _[_0xa1fb[62]](_0xcbb2x29[_0xa1fb[56]],qs[_0xa1fb[64]](_0xcbb2x28[_0xa1fb[60]][_0xa1fb[64]]));_0xcbb2x1b[_0xa1fb[63]]= (_0xcbb2x1b[_0xa1fb[63]][_0xa1fb[65]])?_0xcbb2x1b[_0xa1fb[63]]:_0xcbb2x29[_0xa1fb[56]];_0xcbb2x1b= _[_0xa1fb[67]]({},_0xcbb2x1b,_0xcbb2x28[_0xa1fb[66]]);return db[_0xa1fb[58]][_0xa1fb[69]](_0xcbb2x1b)[_0xa1fb[45]](handleEntityNotFound(_0xcbb2x15,null,_0xa1fb[53]))[_0xa1fb[45]](respondWithResult(_0xcbb2x15,null,_0xa1fb[53]))[_0xa1fb[68]](handleError(_0xcbb2x15,null,_0xa1fb[53]))};exports[_0xa1fb[46]]= function(_0xcbb2x28,_0xcbb2x15){if(_0xcbb2x28[_0xa1fb[70]][_0xa1fb[54]]){delete _0xcbb2x28[_0xa1fb[70]][_0xa1fb[54]]};return db[_0xa1fb[58]][_0xa1fb[69]]({where:{id:_0xcbb2x28[_0xa1fb[55]][_0xa1fb[54]]}})[_0xa1fb[45]](handleEntityNotFound(_0xcbb2x15,null,_0xa1fb[46]))[_0xa1fb[45]](saveUpdates(_0xcbb2x28[_0xa1fb[70]],null,_0xa1fb[46]))[_0xa1fb[45]](respondWithResult(_0xcbb2x15,null,_0xa1fb[46]))[_0xa1fb[68]](handleError(_0xcbb2x15,null,_0xa1fb[46]))};exports[_0xa1fb[48]]= function(_0xcbb2x28,_0xcbb2x15){return db[_0xa1fb[58]][_0xa1fb[69]]({where:{id:_0xcbb2x28[_0xa1fb[55]][_0xa1fb[54]]}})[_0xa1fb[45]](handleEntityNotFound(_0xcbb2x15,null,_0xa1fb[48]))[_0xa1fb[45]](removeEntity(_0xcbb2x15,null,_0xa1fb[48]))[_0xa1fb[68]](handleError(_0xcbb2x15,null,_0xa1fb[48]))}
\ No newline at end of file
index 27a433c..35af6c8 100644 (file)
@@ -1 +1 @@
-var _0x2fc6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x63\x68\x61\x74\x5F\x76\x69\x73\x69\x74\x6F\x72\x73","\x64\x65\x66\x69\x6E\x65"];_0x2fc6[0];var _=require(_0x2fc6[1]);var util=require(_0x2fc6[2]);var logger=require(_0x2fc6[4])(_0x2fc6[3]);var attributes=require(_0x2fc6[5]);module[_0x2fc6[6]]= function(_0x9156x5,_0x9156x6){return _0x9156x5[_0x2fc6[9]](_0x2fc6[7],attributes,{tableName:_0x2fc6[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x707f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x63\x68\x61\x74\x5F\x76\x69\x73\x69\x74\x6F\x72\x73","\x64\x65\x66\x69\x6E\x65"];_0x707f[0];var _=require(_0x707f[1]);var util=require(_0x707f[2]);var logger=require(_0x707f[4])(_0x707f[3]);var attributes=require(_0x707f[5]);module[_0x707f[6]]= function(_0xf2e6x5,_0xf2e6x6){return _0xf2e6x5[_0x707f[9]](_0x707f[7],attributes,{tableName:_0x707f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 796f355..6fa2f14 100644 (file)
@@ -1 +1 @@
-var _0xe78e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe78e[0];var _=require(_0xe78e[1]);var util=require(_0xe78e[2]);var moment=require(_0xe78e[3]);var BPromise=require(_0xe78e[4]);var db=require(_0xe78e[6])[_0xe78e[5]];var utils=require(_0xe78e[7]);var logger=require(_0xe78e[9])(_0xe78e[8]);var jayson=require(_0xe78e[10]);var client=jayson[_0xe78e[12]][_0xe78e[11]]({port:9002});function respondWithRpcPromise(_0x8667xb,_0x8667xc,_0x8667xd){return  new BPromise(function(_0x8667xe,_0x8667xf){return client[_0xe78e[25]](_0x8667xb,_0x8667xd)[_0xe78e[24]](function(_0x8667x11){logger[_0xe78e[17]](_0xe78e[13],_0x8667xc,_0xe78e[16]);logger[_0xe78e[20]](_0xe78e[18],_0x8667xc,_0xe78e[16],JSON[_0xe78e[19]](_0x8667x11));if(_0x8667x11[_0xe78e[14]]){if(_0x8667x11[_0xe78e[14]][_0xe78e[21]]=== 500){logger[_0xe78e[14]](_0xe78e[13],_0x8667xc,_0x8667x11[_0xe78e[14]][_0xe78e[22]]);return _0x8667xf(_0x8667x11[_0xe78e[14]][_0xe78e[22]])};logger[_0xe78e[14]](_0xe78e[13],_0x8667xc,_0x8667x11[_0xe78e[14]][_0xe78e[22]]);return _0x8667xe(_0x8667x11[_0xe78e[14]][_0xe78e[22]])}else {logger[_0xe78e[17]](_0xe78e[13],_0x8667xc,_0xe78e[16]);_0x8667xe(_0x8667x11[_0xe78e[23]][_0xe78e[22]])}})[_0xe78e[15]](function(_0x8667x10){logger[_0xe78e[14]](_0xe78e[13],_0x8667xc,_0x8667x10);_0x8667xf(_0x8667x10)})})}
\ No newline at end of file
+var _0x348a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x348a[0];var _=require(_0x348a[1]);var util=require(_0x348a[2]);var moment=require(_0x348a[3]);var BPromise=require(_0x348a[4]);var db=require(_0x348a[6])[_0x348a[5]];var utils=require(_0x348a[7]);var logger=require(_0x348a[9])(_0x348a[8]);var jayson=require(_0x348a[10]);var client=jayson[_0x348a[12]][_0x348a[11]]({port:9002});function respondWithRpcPromise(_0x6c69xb,_0x6c69xc,_0x6c69xd){return  new BPromise(function(_0x6c69xe,_0x6c69xf){return client[_0x348a[25]](_0x6c69xb,_0x6c69xd)[_0x348a[24]](function(_0x6c69x11){logger[_0x348a[17]](_0x348a[13],_0x6c69xc,_0x348a[16]);logger[_0x348a[20]](_0x348a[18],_0x6c69xc,_0x348a[16],JSON[_0x348a[19]](_0x6c69x11));if(_0x6c69x11[_0x348a[14]]){if(_0x6c69x11[_0x348a[14]][_0x348a[21]]=== 500){logger[_0x348a[14]](_0x348a[13],_0x6c69xc,_0x6c69x11[_0x348a[14]][_0x348a[22]]);return _0x6c69xf(_0x6c69x11[_0x348a[14]][_0x348a[22]])};logger[_0x348a[14]](_0x348a[13],_0x6c69xc,_0x6c69x11[_0x348a[14]][_0x348a[22]]);return _0x6c69xe(_0x6c69x11[_0x348a[14]][_0x348a[22]])}else {logger[_0x348a[17]](_0x348a[13],_0x6c69xc,_0x348a[16]);_0x6c69xe(_0x6c69x11[_0x348a[23]][_0x348a[22]])}})[_0x348a[15]](function(_0x6c69x10){logger[_0x348a[14]](_0x348a[13],_0x6c69xc,_0x6c69x10);_0x6c69xf(_0x6c69x10)})})}
\ No newline at end of file
index 7de594a..41769f3 100644 (file)
@@ -1 +1 @@
-var _0xf087=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf087[0];var multer=require(_0xf087[1]);var util=require(_0xf087[2]);var path=require(_0xf087[3]);var express=require(_0xf087[4]);var router=express.Router();var auth=require(_0xf087[5]);var config=require(_0xf087[6]);var controller=require(_0xf087[7]);router[_0xf087[11]](_0xf087[8],auth[_0xf087[9]](),controller[_0xf087[10]]);router[_0xf087[13]](_0xf087[8],auth[_0xf087[9]](),controller[_0xf087[12]]);router[_0xf087[15]](_0xf087[8],auth[_0xf087[9]](),controller[_0xf087[14]]);module[_0xf087[16]]= router
\ No newline at end of file
+var _0xb843=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb843[0];var multer=require(_0xb843[1]);var util=require(_0xb843[2]);var path=require(_0xb843[3]);var express=require(_0xb843[4]);var router=express.Router();var auth=require(_0xb843[5]);var config=require(_0xb843[6]);var controller=require(_0xb843[7]);router[_0xb843[11]](_0xb843[8],auth[_0xb843[9]](),controller[_0xb843[10]]);router[_0xb843[13]](_0xb843[8],auth[_0xb843[9]](),controller[_0xb843[12]]);router[_0xb843[15]](_0xb843[8],auth[_0xb843[9]](),controller[_0xb843[14]]);module[_0xb843[16]]= router
\ No newline at end of file
index e062636..118c412 100644 (file)
@@ -1 +1 @@
-var _0xa760=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x61\x64\x64\x72\x65\x73\x73","\x23\x30\x30\x30\x30\x38\x30","\x42\x4F\x4F\x4C\x45\x41\x4E","\x72\x6F\x75\x6E\x64\x65\x64","\x73\x71\x75\x61\x72\x65\x64","\x57\x65\x20\x61\x72\x65\x20\x68\x65\x72\x65\x21","\x3C\x73\x74\x72\x6F\x6E\x67\x3E\x51\x75\x65\x73\x74\x69\x6F\x6E\x73\x3F\x3C\x2F\x73\x74\x72\x6F\x6E\x67\x3E\x3C\x62\x72\x20\x2F\x3E\x49\x6E\x73\x65\x72\x74\x20\x79\x6F\x75\x72\x20\x6E\x61\x6D\x65\x20\x61\x6E\x64\x20\x65\x6D\x61\x69\x6C\x20\x61\x64\x64\x72\x65\x73\x73\x20\x74\x6F\x20\x73\x74\x61\x72\x74\x20\x61\x20\x6C\x69\x76\x65\x2D\x63\x68\x61\x74\x20\x77\x69\x74\x68\x20\x6F\x75\x72\x20\x73\x75\x70\x70\x6F\x72\x74\x20\x74\x65\x61\x6D\x2E","\x59\x6F\x75\x72\x20\x6E\x61\x6D\x65","\x59\x6F\x75\x72\x20\x65\x2D\x6D\x61\x69\x6C\x20\x61\x64\x64\x72\x65\x73\x73","\x43\x68\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x20\x75\x73","\x3C\x73\x74\x72\x6F\x6E\x67\x3E\x57\x65\x27\x72\x65\x20\x6E\x6F\x74\x20\x6F\x6E\x6C\x69\x6E\x65\x2E\x3C\x2F\x73\x74\x72\x6F\x6E\x67\x3E\x3C\x62\x72\x20\x2F\x3E\x49\x74\x20\x64\x6F\x65\x73\x6E\x27\x74\x20\x6D\x65\x61\x6E\x20\x77\x65\x27\x72\x65\x20\x6E\x6F\x74\x20\x74\x68\x65\x72\x65\x20\x74\x6F\x20\x68\x65\x6C\x70\x20\x2D\x20\x6C\x65\x61\x76\x65\x20\x79\x6F\x75\x72\x20\x6D\x65\x73\x73\x61\x67\x65\x20\x62\x65\x6C\x6F\x77\x20\x61\x6E\x64\x20\x77\x65\x27\x6C\x6C\x20\x62\x65\x20\x69\x6E\x20\x74\x6F\x75\x63\x68\x20\x61\x73\x20\x73\x6F\x6F\x6E\x20\x61\x73\x20\x70\x6F\x73\x73\x69\x62\x6C\x65\x2E","\x59\x6F\x75\x72\x20\x6D\x65\x73\x73\x61\x67\x65\x2E\x2E\x2E","\x4C\x65\x61\x76\x65\x20\x6D\x65\x73\x73\x61\x67\x65","\x57\x6F\x75\x6C\x64\x20\x79\x6F\x75\x20\x6C\x69\x6B\x65\x20\x72\x61\x74\x65\x20\x74\x68\x69\x73\x20\x63\x68\x61\x74\x3F","\x53\x65\x6E\x64","\x53\x6B\x69\x70","\x49\x4E\x54\x45\x47\x45\x52","\x49\x6E\x20\x74\x68\x69\x73\x20\x6D\x6F\x6D\x65\x6E\x74\x20\x61\x6C\x6C\x20\x61\x67\x65\x6E\x74\x73\x20\x61\x72\x65\x20\x62\x75\x73\x79\x2E\x20\x54\x72\x79\x20\x61\x67\x61\x69\x6E\x21","\x4E\x61\x6D\x65","\x45\x6D\x61\x69\x6C\x20\x41\x64\x64\x72\x65\x73\x73","\x4D\x65\x73\x73\x61\x67\x65","\x50\x6F\x77\x65\x72\x65\x64\x20\x62\x79\x20\x78\x43\x41\x4C\x4C\x59","\x47\x45\x54","\x50\x4F\x53\x54","\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0xa760[0];var Sequelize=require(_0xa760[1]);module[_0xa760[2]]= {name:{type:Sequelize[_0xa760[3]],allowNull:false},address:{type:Sequelize[_0xa760[3]],allowNull:false,unique:_0xa760[4]},description:{type:Sequelize[_0xa760[3]]},color:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[5]},color_focus:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[5]},color_button:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[5]},remote:{type:Sequelize[_0xa760[3]]},animation:{type:Sequelize[_0xa760[6]],defaultValue:true},header_shape:{type:Sequelize.ENUM(_0xa760[7],_0xa760[8]),defaultValue:_0xa760[7]},header_online:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[9]},online_message:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[10]},username_placeholder:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[11]},email_placeholder:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[12]},start_chat_button:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[13]},header_offline:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[14]},offline_message:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[15]},enquiry_message_placeholder:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[16]},enquiry_button:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[17]},download_transcript:{type:Sequelize[_0xa760[6]],defaultValue:true},enquiry_forwarding:{type:Sequelize[_0xa760[6]],defaultValue:false},enquiry_forwarding_address:{type:Sequelize[_0xa760[3]]},enquiry_enable:{type:Sequelize[_0xa760[6]],defaultValue:true},rating_enable:{type:Sequelize[_0xa760[6]],defaultValue:true},rating_message:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[18]},rating_send:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[19]},rating_skip:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[20]},show_service_name:{type:Sequelize[_0xa760[6]],defaultValue:false},service_name:{type:Sequelize[_0xa760[3]]},fidelity:{type:Sequelize[_0xa760[6]],defaultValue:false},timeout:{type:Sequelize[_0xa760[21]],defaultValue:0},agents_busy:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[22]},name_title:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[23]},email_title:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[24]},message_title:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[25]},logo:{type:Sequelize[_0xa760[3]]},defaultLogo:{type:Sequelize[_0xa760[6]],defaultValue:true},whiteLabel:{type:Sequelize[_0xa760[3]],defaultValue:_0xa760[26]},defaultWhiteLabel:{type:Sequelize[_0xa760[6]],defaultValue:true},acceptUrl:{type:Sequelize[_0xa760[3]]},rejectUrl:{type:Sequelize[_0xa760[3]]},closeUrl:{type:Sequelize[_0xa760[3]]},closeMethod:{type:Sequelize.ENUM(_0xa760[27],_0xa760[28])},acceptMethod:{type:Sequelize.ENUM(_0xa760[27],_0xa760[28])},rejectMethod:{type:Sequelize.ENUM(_0xa760[27],_0xa760[28])},actions:{type:Sequelize[_0xa760[3]],get:function(){return this[_0xa760[30]](_0xa760[29])?JSON[_0xa760[31]](this[_0xa760[30]](_0xa760[29])):[]},set:function(_0xf2d3x2){return this[_0xa760[33]](_0xa760[29],JSON[_0xa760[32]](_0xf2d3x2))}}}
\ No newline at end of file
+var _0x20fb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x61\x64\x64\x72\x65\x73\x73","\x23\x30\x30\x30\x30\x38\x30","\x42\x4F\x4F\x4C\x45\x41\x4E","\x72\x6F\x75\x6E\x64\x65\x64","\x73\x71\x75\x61\x72\x65\x64","\x57\x65\x20\x61\x72\x65\x20\x68\x65\x72\x65\x21","\x3C\x73\x74\x72\x6F\x6E\x67\x3E\x51\x75\x65\x73\x74\x69\x6F\x6E\x73\x3F\x3C\x2F\x73\x74\x72\x6F\x6E\x67\x3E\x3C\x62\x72\x20\x2F\x3E\x49\x6E\x73\x65\x72\x74\x20\x79\x6F\x75\x72\x20\x6E\x61\x6D\x65\x20\x61\x6E\x64\x20\x65\x6D\x61\x69\x6C\x20\x61\x64\x64\x72\x65\x73\x73\x20\x74\x6F\x20\x73\x74\x61\x72\x74\x20\x61\x20\x6C\x69\x76\x65\x2D\x63\x68\x61\x74\x20\x77\x69\x74\x68\x20\x6F\x75\x72\x20\x73\x75\x70\x70\x6F\x72\x74\x20\x74\x65\x61\x6D\x2E","\x59\x6F\x75\x72\x20\x6E\x61\x6D\x65","\x59\x6F\x75\x72\x20\x65\x2D\x6D\x61\x69\x6C\x20\x61\x64\x64\x72\x65\x73\x73","\x43\x68\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x20\x75\x73","\x3C\x73\x74\x72\x6F\x6E\x67\x3E\x57\x65\x27\x72\x65\x20\x6E\x6F\x74\x20\x6F\x6E\x6C\x69\x6E\x65\x2E\x3C\x2F\x73\x74\x72\x6F\x6E\x67\x3E\x3C\x62\x72\x20\x2F\x3E\x49\x74\x20\x64\x6F\x65\x73\x6E\x27\x74\x20\x6D\x65\x61\x6E\x20\x77\x65\x27\x72\x65\x20\x6E\x6F\x74\x20\x74\x68\x65\x72\x65\x20\x74\x6F\x20\x68\x65\x6C\x70\x20\x2D\x20\x6C\x65\x61\x76\x65\x20\x79\x6F\x75\x72\x20\x6D\x65\x73\x73\x61\x67\x65\x20\x62\x65\x6C\x6F\x77\x20\x61\x6E\x64\x20\x77\x65\x27\x6C\x6C\x20\x62\x65\x20\x69\x6E\x20\x74\x6F\x75\x63\x68\x20\x61\x73\x20\x73\x6F\x6F\x6E\x20\x61\x73\x20\x70\x6F\x73\x73\x69\x62\x6C\x65\x2E","\x59\x6F\x75\x72\x20\x6D\x65\x73\x73\x61\x67\x65\x2E\x2E\x2E","\x4C\x65\x61\x76\x65\x20\x6D\x65\x73\x73\x61\x67\x65","\x57\x6F\x75\x6C\x64\x20\x79\x6F\x75\x20\x6C\x69\x6B\x65\x20\x72\x61\x74\x65\x20\x74\x68\x69\x73\x20\x63\x68\x61\x74\x3F","\x53\x65\x6E\x64","\x53\x6B\x69\x70","\x49\x4E\x54\x45\x47\x45\x52","\x49\x6E\x20\x74\x68\x69\x73\x20\x6D\x6F\x6D\x65\x6E\x74\x20\x61\x6C\x6C\x20\x61\x67\x65\x6E\x74\x73\x20\x61\x72\x65\x20\x62\x75\x73\x79\x2E\x20\x54\x72\x79\x20\x61\x67\x61\x69\x6E\x21","\x4E\x61\x6D\x65","\x45\x6D\x61\x69\x6C\x20\x41\x64\x64\x72\x65\x73\x73","\x4D\x65\x73\x73\x61\x67\x65","\x50\x6F\x77\x65\x72\x65\x64\x20\x62\x79\x20\x78\x43\x41\x4C\x4C\x59","\x47\x45\x54","\x50\x4F\x53\x54","\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0x20fb[0];var Sequelize=require(_0x20fb[1]);module[_0x20fb[2]]= {name:{type:Sequelize[_0x20fb[3]],allowNull:false},address:{type:Sequelize[_0x20fb[3]],allowNull:false,unique:_0x20fb[4]},description:{type:Sequelize[_0x20fb[3]]},color:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[5]},color_focus:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[5]},color_button:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[5]},remote:{type:Sequelize[_0x20fb[3]]},animation:{type:Sequelize[_0x20fb[6]],defaultValue:true},header_shape:{type:Sequelize.ENUM(_0x20fb[7],_0x20fb[8]),defaultValue:_0x20fb[7]},header_online:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[9]},online_message:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[10]},username_placeholder:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[11]},email_placeholder:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[12]},start_chat_button:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[13]},header_offline:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[14]},offline_message:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[15]},enquiry_message_placeholder:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[16]},enquiry_button:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[17]},download_transcript:{type:Sequelize[_0x20fb[6]],defaultValue:true},enquiry_forwarding:{type:Sequelize[_0x20fb[6]],defaultValue:false},enquiry_forwarding_address:{type:Sequelize[_0x20fb[3]]},enquiry_enable:{type:Sequelize[_0x20fb[6]],defaultValue:true},rating_enable:{type:Sequelize[_0x20fb[6]],defaultValue:true},rating_message:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[18]},rating_send:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[19]},rating_skip:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[20]},show_service_name:{type:Sequelize[_0x20fb[6]],defaultValue:false},service_name:{type:Sequelize[_0x20fb[3]]},fidelity:{type:Sequelize[_0x20fb[6]],defaultValue:false},timeout:{type:Sequelize[_0x20fb[21]],defaultValue:0},agents_busy:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[22]},name_title:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[23]},email_title:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[24]},message_title:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[25]},logo:{type:Sequelize[_0x20fb[3]]},defaultLogo:{type:Sequelize[_0x20fb[6]],defaultValue:true},whiteLabel:{type:Sequelize[_0x20fb[3]],defaultValue:_0x20fb[26]},defaultWhiteLabel:{type:Sequelize[_0x20fb[6]],defaultValue:true},acceptUrl:{type:Sequelize[_0x20fb[3]]},rejectUrl:{type:Sequelize[_0x20fb[3]]},closeUrl:{type:Sequelize[_0x20fb[3]]},closeMethod:{type:Sequelize.ENUM(_0x20fb[27],_0x20fb[28])},acceptMethod:{type:Sequelize.ENUM(_0x20fb[27],_0x20fb[28])},rejectMethod:{type:Sequelize.ENUM(_0x20fb[27],_0x20fb[28])},actions:{type:Sequelize[_0x20fb[3]],get:function(){return this[_0x20fb[30]](_0x20fb[29])?JSON[_0x20fb[31]](this[_0x20fb[30]](_0x20fb[29])):[]},set:function(_0x387dx2){return this[_0x20fb[33]](_0x20fb[29],JSON[_0x20fb[32]](_0x387dx2))}}}
\ No newline at end of file
index 47fdb13..344b812 100644 (file)
@@ -1 +1 @@
-var _0xff7d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x49\x64","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x67\x65\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x61\x64\x64\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x73","\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x67\x65\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64"];_0xff7d[0];var jsonpatch=require(_0xff7d[1]);var rp=require(_0xff7d[2]);var moment=require(_0xff7d[3]);var BPromise=require(_0xff7d[4]);var util=require(_0xff7d[5]);var path=require(_0xff7d[6]);var sox=require(_0xff7d[7]);var ejs=require(_0xff7d[8]);var fs=require(_0xff7d[9]);var _=require(_0xff7d[10]);var squel=require(_0xff7d[11]);var crypto=require(_0xff7d[12]);var jsforce=require(_0xff7d[13]);var toCsv=require(_0xff7d[14]);var qs=require(_0xff7d[15]);var logger=require(_0xff7d[17])(_0xff7d[16]);var utils=require(_0xff7d[18]);var config=require(_0xff7d[19]);var db=require(_0xff7d[21])[_0xff7d[20]];function respondWithStatusCode(_0xb285x15,_0xb285x16,_0xb285x17){_0xb285x16= _0xb285x16|| 204;return function(_0xb285x18){if(_0xb285x18){logger[_0xff7d[24]](_0xff7d[22],_0xb285x17,_0xb285x16,_0xff7d[23]);logger[_0xff7d[26]](_0xff7d[25],_0xb285x17,_0xb285x16,_0xff7d[23]);return _0xb285x15[_0xff7d[27]](_0xb285x16)};return _0xb285x15[_0xff7d[29]](304)[_0xff7d[28]]()}}function respondWithResult(_0xb285x15,_0xb285x16,_0xb285x17){_0xb285x16= _0xb285x16|| 200;return function(_0xb285x18){if(_0xb285x18){logger[_0xff7d[24]](_0xff7d[22],_0xb285x17,_0xb285x16,_0xff7d[30]);logger[_0xff7d[26]](_0xff7d[25],_0xb285x17,_0xb285x16,_0xff7d[30],JSON[_0xff7d[31]](_0xb285x18));return _0xb285x15[_0xff7d[29]](_0xb285x16)[_0xff7d[32]](_0xb285x18)};return _0xb285x15[_0xff7d[29]](304)[_0xff7d[28]]()}}function respondWithFilteredResult(_0xb285x15,_0xb285x1b,_0xb285x17){return function(_0xb285x18){if(_0xb285x18){var _0xb285x1c=_0xb285x18[_0xff7d[33]],_0xb285x1d=_0xb285x1b[_0xff7d[34]],_0xb285x1e=_0xb285x1b[_0xff7d[34]]+ _0xb285x1b[_0xff7d[35]],_0xb285x16;if(_0xb285x1e>= _0xb285x1c){_0xb285x1e= _0xb285x1c;_0xb285x16= 200}else {_0xb285x16= 206};_0xb285x15[_0xff7d[29]](_0xb285x16);logger[_0xff7d[24]](_0xff7d[22],_0xb285x17,_0xb285x16,_0xff7d[36]);logger[_0xff7d[26]](_0xff7d[25],_0xb285x17,_0xb285x16,_0xff7d[30],JSON[_0xff7d[31]](_0xb285x18));return _0xb285x15[_0xff7d[40]](_0xff7d[37],_0xb285x1d+ _0xff7d[38]+ _0xb285x1e+ _0xff7d[39]+ _0xb285x1c)[_0xff7d[32]](_0xb285x18)};return null}}function patchUpdates(_0xb285x20){return function(_0xb285x18){try{jsonpatch[_0xff7d[41]](_0xb285x18,_0xb285x20,true)}catch(err){return BPromise[_0xff7d[42]](err)};return _0xb285x18[_0xff7d[43]]()}}function saveUpdates(_0xb285x22,_0xb285x16,_0xb285x17){return function(_0xb285x18){if(_0xb285x18){return _0xb285x18[_0xff7d[46]](_0xb285x22)[_0xff7d[45]](function(_0xb285x23){logger[_0xff7d[24]](_0xff7d[22],_0xb285x17,_0xb285x16,_0xff7d[44]);logger[_0xff7d[26]](_0xff7d[25],_0xb285x17,_0xb285x16,_0xff7d[44],JSON[_0xff7d[31]](_0xb285x18));return _0xb285x23})};return null}}function removeEntity(_0xb285x15,_0xb285x16,_0xb285x17){return function(_0xb285x18){if(_0xb285x18){return _0xb285x18[_0xff7d[48]]()[_0xff7d[45]](function(){logger[_0xff7d[24]](_0xff7d[22],_0xb285x17,_0xb285x16,_0xff7d[47]);logger[_0xff7d[26]](_0xff7d[25],_0xb285x17,_0xb285x16,_0xff7d[47],JSON[_0xff7d[31]](_0xb285x18));_0xb285x15[_0xff7d[29]](204)[_0xff7d[28]]()})}}}function handleEntityNotFound(_0xb285x15,_0xb285x16,_0xb285x17){return function(_0xb285x18){if(!_0xb285x18){logger[_0xff7d[50]](_0xff7d[22],_0xb285x17,404,_0xff7d[49]);_0xb285x15[_0xff7d[29]](404)[_0xff7d[28]]();return null};return _0xb285x18}}function handleError(_0xb285x15,_0xb285x16,_0xb285x17){_0xb285x16= _0xb285x16|| 500;return function(_0xb285x27){logger[_0xff7d[50]](_0xff7d[22],_0xb285x17,_0xb285x16,JSON[_0xff7d[31]](_0xb285x27));delete _0xb285x27[_0xff7d[51]];_0xb285x15[_0xff7d[29]](_0xb285x16)[_0xff7d[52]](_0xb285x27)}}exports[_0xff7d[53]]= function(_0xb285x28,_0xb285x15){var _0xb285x1b={},_0xb285x29={};_0xb285x29[_0xff7d[54]]= _[_0xff7d[57]](db[_0xff7d[56]][_0xff7d[55]]);_0xb285x29[_0xff7d[58]]= _[_0xff7d[57]](_0xb285x28[_0xff7d[58]]);_0xb285x29[_0xff7d[59]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],_0xb285x29[_0xff7d[58]]);_0xb285x1b[_0xff7d[61]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],qs[_0xff7d[62]](_0xb285x28[_0xff7d[58]][_0xff7d[62]]));_0xb285x1b[_0xff7d[61]]= (_0xb285x1b[_0xff7d[61]][_0xff7d[63]])?_0xb285x1b[_0xff7d[61]]:_0xb285x29[_0xff7d[54]];if(!_0xb285x28[_0xff7d[58]][_0xff7d[65]](_0xff7d[64])){_0xb285x1b[_0xff7d[35]]= qs[_0xff7d[35]](_0xb285x28[_0xff7d[58]][_0xff7d[35]]);_0xb285x1b[_0xff7d[34]]= qs[_0xff7d[34]](_0xb285x28[_0xff7d[58]][_0xff7d[34]])};_0xb285x1b[_0xff7d[66]]= qs[_0xff7d[67]](_0xb285x28[_0xff7d[58]][_0xff7d[67]]);_0xb285x1b[_0xff7d[68]]= qs[_0xff7d[59]](_[_0xff7d[69]](_0xb285x28[_0xff7d[58]],_0xb285x29[_0xff7d[59]]));if(_0xb285x28[_0xff7d[58]][_0xff7d[70]]){_0xb285x1b[_0xff7d[68]]= _[_0xff7d[73]](_0xb285x1b[_0xff7d[68]],{$or:_[_0xff7d[72]](_0xb285x1b[_0xff7d[61]],function(_0xb285x2a){var _0xb285x2b={};_0xb285x2b[_0xb285x2a]= {$like:_0xff7d[71]+ _0xb285x28[_0xff7d[58]][_0xff7d[70]]+ _0xff7d[71]};return _0xb285x2b})})};_0xb285x1b= _[_0xff7d[73]]({},_0xb285x1b,_0xb285x28[_0xff7d[74]]);return db[_0xff7d[56]][_0xff7d[76]](_0xb285x1b)[_0xff7d[45]](respondWithFilteredResult(_0xb285x15,_0xb285x1b,_0xff7d[53]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[53]))};exports[_0xff7d[77]]= function(_0xb285x28,_0xb285x15){var _0xb285x1b={raw:false,where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}},_0xb285x29={};_0xb285x29[_0xff7d[54]]= _[_0xff7d[57]](db[_0xff7d[56]][_0xff7d[55]]);_0xb285x29[_0xff7d[58]]= _[_0xff7d[57]](_0xb285x28[_0xff7d[58]]);_0xb285x29[_0xff7d[59]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],_0xb285x29[_0xff7d[58]]);_0xb285x1b[_0xff7d[61]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],qs[_0xff7d[62]](_0xb285x28[_0xff7d[58]][_0xff7d[62]]));_0xb285x1b[_0xff7d[61]]= (_0xb285x1b[_0xff7d[61]][_0xff7d[63]])?_0xb285x1b[_0xff7d[61]]:_0xb285x29[_0xff7d[54]];_0xb285x1b= _[_0xff7d[73]]({},_0xb285x1b,_0xb285x28[_0xff7d[74]]);return db[_0xff7d[56]][_0xff7d[80]](_0xb285x1b)[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[77]))[_0xff7d[45]](respondWithResult(_0xb285x15,null,_0xff7d[77]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[77]))};exports[_0xff7d[81]]= function(_0xb285x28,_0xb285x15){return db[_0xff7d[56]][_0xff7d[81]](_0xb285x28[_0xff7d[82]],{})[_0xff7d[45]](respondWithResult(_0xb285x15,201,_0xff7d[81]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[81]))};exports[_0xff7d[46]]= function(_0xb285x28,_0xb285x15){if(_0xb285x28[_0xff7d[82]][_0xff7d[78]]){delete _0xb285x28[_0xff7d[82]][_0xff7d[78]]};return db[_0xff7d[56]][_0xff7d[80]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[46]))[_0xff7d[45]](saveUpdates(_0xb285x28[_0xff7d[82]],null,_0xff7d[46]))[_0xff7d[45]](respondWithResult(_0xb285x15,null,_0xff7d[46]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[46]))};exports[_0xff7d[48]]= function(_0xb285x28,_0xb285x15){return db[_0xff7d[56]][_0xff7d[80]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[48]))[_0xff7d[45]](removeEntity(_0xb285x15,null,_0xff7d[48]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[48]))};exports[_0xff7d[83]]= function(_0xb285x28,_0xb285x15,_0xb285x2c){return db[_0xff7d[86]][_0xff7d[80]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[83]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){return _0xb285x18[_0xff7d[83]](_0xb285x28[_0xff7d[82]][_0xff7d[84]],_[_0xff7d[85]](_0xb285x28[_0xff7d[82]],[_0xff7d[84],_0xff7d[78]])|| {})};return null})[_0xff7d[45]](respondWithResult(_0xb285x15,null,_0xff7d[83]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[83]))};exports[_0xff7d[87]]= function(_0xb285x28,_0xb285x18,_0xb285x2c){var _0xb285x1b={};var _0xb285x29={};var _0xb285x2d;var _0xb285x1c;return db[_0xff7d[56]][_0xff7d[88]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x18,null,_0xff7d[87]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){_0xb285x2d= _0xb285x18;_0xb285x29[_0xff7d[54]]= _[_0xff7d[57]](db[_0xff7d[86]][_0xff7d[55]]);_0xb285x29[_0xff7d[58]]= _[_0xff7d[57]](_0xb285x28[_0xff7d[58]]);_0xb285x29[_0xff7d[59]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],_0xb285x29[_0xff7d[58]]);_0xb285x1b[_0xff7d[61]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],qs[_0xff7d[62]](_0xb285x28[_0xff7d[58]][_0xff7d[62]]));_0xb285x1b[_0xff7d[61]]= (_0xb285x1b[_0xff7d[61]][_0xff7d[63]])?_0xb285x1b[_0xff7d[61]]:_0xb285x29[_0xff7d[54]];_0xb285x1b[_0xff7d[66]]= qs[_0xff7d[67]](_0xb285x28[_0xff7d[58]][_0xff7d[67]]);_0xb285x1b[_0xff7d[68]]= qs[_0xff7d[59]](_[_0xff7d[69]](_0xb285x28[_0xff7d[58]],_0xb285x29[_0xff7d[59]]));if(_0xb285x28[_0xff7d[58]][_0xff7d[70]]){_0xb285x1b[_0xff7d[68]]= _[_0xff7d[73]](_0xb285x1b[_0xff7d[68]],{$or:_[_0xff7d[72]](_0xb285x1b[_0xff7d[61]],function(_0xb285x2a){var _0xb285x2b={};_0xb285x2b[_0xb285x2a]= {$like:_0xff7d[71]+ _0xb285x28[_0xff7d[58]][_0xff7d[70]]+ _0xff7d[71]};return _0xb285x2b})})};_0xb285x1b= _[_0xff7d[73]]({},_0xb285x1b,_0xb285x28[_0xff7d[74]]);return _0xb285x2d[_0xff7d[87]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2f){if(_0xb285x2f){_0xb285x1c= _0xb285x2f[_0xff7d[63]];if(!_0xb285x28[_0xff7d[58]][_0xff7d[65]](_0xff7d[64])){_0xb285x1b[_0xff7d[35]]= qs[_0xff7d[35]](_0xb285x28[_0xff7d[58]][_0xff7d[35]]);_0xb285x1b[_0xff7d[34]]= qs[_0xff7d[34]](_0xb285x28[_0xff7d[58]][_0xff7d[34]])};return _0xb285x2d[_0xff7d[87]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2e){return _0xb285x2e?{count:_0xb285x1c,rows:_0xb285x2e}:null})[_0xff7d[45]](respondWithResult(_0xb285x18,null,_0xff7d[87]))[_0xff7d[75]](handleError(_0xb285x18,null,_0xff7d[87]))};exports[_0xff7d[89]]= function(_0xb285x28,_0xb285x15,_0xb285x2c){return db[_0xff7d[90]][_0xff7d[80]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[89]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){return _0xb285x18[_0xff7d[89]](_0xb285x28[_0xff7d[82]][_0xff7d[84]],_[_0xff7d[85]](_0xb285x28[_0xff7d[82]],[_0xff7d[84],_0xff7d[78]])|| {})};return null})[_0xff7d[45]](respondWithResult(_0xb285x15,null,_0xff7d[89]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[89]))};exports[_0xff7d[91]]= function(_0xb285x28,_0xb285x18,_0xb285x2c){var _0xb285x1b={};var _0xb285x29={};var _0xb285x2d;var _0xb285x1c;return db[_0xff7d[56]][_0xff7d[88]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x18,null,_0xff7d[91]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){_0xb285x2d= _0xb285x18;_0xb285x29[_0xff7d[54]]= _[_0xff7d[57]](db[_0xff7d[92]][_0xff7d[55]]);_0xb285x29[_0xff7d[58]]= _[_0xff7d[57]](_0xb285x28[_0xff7d[58]]);_0xb285x29[_0xff7d[59]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],_0xb285x29[_0xff7d[58]]);_0xb285x1b[_0xff7d[61]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],qs[_0xff7d[62]](_0xb285x28[_0xff7d[58]][_0xff7d[62]]));_0xb285x1b[_0xff7d[61]]= (_0xb285x1b[_0xff7d[61]][_0xff7d[63]])?_0xb285x1b[_0xff7d[61]]:_0xb285x29[_0xff7d[54]];_0xb285x1b[_0xff7d[66]]= qs[_0xff7d[67]](_0xb285x28[_0xff7d[58]][_0xff7d[67]]);_0xb285x1b[_0xff7d[68]]= qs[_0xff7d[59]](_[_0xff7d[69]](_0xb285x28[_0xff7d[58]],_0xb285x29[_0xff7d[59]]));if(_0xb285x28[_0xff7d[58]][_0xff7d[70]]){_0xb285x1b[_0xff7d[68]]= _[_0xff7d[73]](_0xb285x1b[_0xff7d[68]],{$or:_[_0xff7d[72]](_0xb285x1b[_0xff7d[61]],function(_0xb285x2a){var _0xb285x2b={};_0xb285x2b[_0xb285x2a]= {$like:_0xff7d[71]+ _0xb285x28[_0xff7d[58]][_0xff7d[70]]+ _0xff7d[71]};return _0xb285x2b})})};_0xb285x1b= _[_0xff7d[73]]({},_0xb285x1b,_0xb285x28[_0xff7d[74]]);return _0xb285x2d[_0xff7d[91]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2f){if(_0xb285x2f){_0xb285x1c= _0xb285x2f[_0xff7d[63]];if(!_0xb285x28[_0xff7d[58]][_0xff7d[65]](_0xff7d[64])){_0xb285x1b[_0xff7d[35]]= qs[_0xff7d[35]](_0xb285x28[_0xff7d[58]][_0xff7d[35]]);_0xb285x1b[_0xff7d[34]]= qs[_0xff7d[34]](_0xb285x28[_0xff7d[58]][_0xff7d[34]])};return _0xb285x2d[_0xff7d[91]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2e){return _0xb285x2e?{count:_0xb285x1c,rows:_0xb285x2e}:null})[_0xff7d[45]](respondWithResult(_0xb285x18,null,_0xff7d[91]))[_0xff7d[75]](handleError(_0xb285x18,null,_0xff7d[91]))};exports[_0xff7d[93]]= function(_0xb285x28,_0xb285x15,_0xb285x2c){if(_0xb285x28[_0xff7d[82]][_0xff7d[78]]){delete _0xb285x28[_0xff7d[82]][_0xff7d[78]]};return db[_0xff7d[56]][_0xff7d[80]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[93]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){_0xb285x28[_0xff7d[82]][_0xff7d[94]]= _0xb285x18[_0xff7d[78]];return db[_0xff7d[95]][_0xff7d[81]](_0xb285x28[_0xff7d[82]])}})[_0xff7d[45]](respondWithResult(_0xb285x15,null,_0xff7d[93]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[93]))};exports[_0xff7d[96]]= function(_0xb285x28,_0xb285x15,_0xb285x2c){return db[_0xff7d[97]][_0xff7d[80]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[96]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){return _0xb285x18[_0xff7d[96]](_0xb285x28[_0xff7d[82]][_0xff7d[84]],_[_0xff7d[85]](_0xb285x28[_0xff7d[82]],[_0xff7d[84],_0xff7d[78]])|| {})};return null})[_0xff7d[45]](respondWithResult(_0xb285x15,null,_0xff7d[96]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[96]))};exports[_0xff7d[98]]= function(_0xb285x28,_0xb285x18,_0xb285x2c){var _0xb285x1b={};var _0xb285x29={};var _0xb285x2d;var _0xb285x1c;return db[_0xff7d[56]][_0xff7d[88]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x18,null,_0xff7d[98]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){_0xb285x2d= _0xb285x18;_0xb285x29[_0xff7d[54]]= _[_0xff7d[57]](db[_0xff7d[95]][_0xff7d[55]]);_0xb285x29[_0xff7d[58]]= _[_0xff7d[57]](_0xb285x28[_0xff7d[58]]);_0xb285x29[_0xff7d[59]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],_0xb285x29[_0xff7d[58]]);_0xb285x1b[_0xff7d[61]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],qs[_0xff7d[62]](_0xb285x28[_0xff7d[58]][_0xff7d[62]]));_0xb285x1b[_0xff7d[61]]= (_0xb285x1b[_0xff7d[61]][_0xff7d[63]])?_0xb285x1b[_0xff7d[61]]:_0xb285x29[_0xff7d[54]];_0xb285x1b[_0xff7d[66]]= qs[_0xff7d[67]](_0xb285x28[_0xff7d[58]][_0xff7d[67]]);_0xb285x1b[_0xff7d[68]]= qs[_0xff7d[59]](_[_0xff7d[69]](_0xb285x28[_0xff7d[58]],_0xb285x29[_0xff7d[59]]));if(_0xb285x28[_0xff7d[58]][_0xff7d[70]]){_0xb285x1b[_0xff7d[68]]= _[_0xff7d[73]](_0xb285x1b[_0xff7d[68]],{$or:_[_0xff7d[72]](_0xb285x1b[_0xff7d[61]],function(_0xb285x2a){var _0xb285x2b={};_0xb285x2b[_0xb285x2a]= {$like:_0xff7d[71]+ _0xb285x28[_0xff7d[58]][_0xff7d[70]]+ _0xff7d[71]};return _0xb285x2b})})};_0xb285x1b= _[_0xff7d[73]]({},_0xb285x1b,_0xb285x28[_0xff7d[74]]);return _0xb285x2d[_0xff7d[98]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2f){if(_0xb285x2f){_0xb285x1c= _0xb285x2f[_0xff7d[63]];if(!_0xb285x28[_0xff7d[58]][_0xff7d[65]](_0xff7d[64])){_0xb285x1b[_0xff7d[35]]= qs[_0xff7d[35]](_0xb285x28[_0xff7d[58]][_0xff7d[35]]);_0xb285x1b[_0xff7d[34]]= qs[_0xff7d[34]](_0xb285x28[_0xff7d[58]][_0xff7d[34]])};return _0xb285x2d[_0xff7d[98]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2e){return _0xb285x2e?{count:_0xb285x1c,rows:_0xb285x2e}:null})[_0xff7d[45]](respondWithResult(_0xb285x18,null,_0xff7d[98]))[_0xff7d[75]](handleError(_0xb285x18,null,_0xff7d[98]))};exports[_0xff7d[99]]= function(_0xb285x28,_0xb285x15,_0xb285x2c){return db[_0xff7d[100]][_0xff7d[80]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[99]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){return _0xb285x18[_0xff7d[99]](_0xb285x28[_0xff7d[82]][_0xff7d[84]],_[_0xff7d[85]](_0xb285x28[_0xff7d[82]],[_0xff7d[84],_0xff7d[78]])|| {})};return null})[_0xff7d[45]](respondWithResult(_0xb285x15,null,_0xff7d[99]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[99]))};exports[_0xff7d[101]]= function(_0xb285x28,_0xb285x18,_0xb285x2c){var _0xb285x1b={};var _0xb285x29={};var _0xb285x2d;var _0xb285x1c;return db[_0xff7d[56]][_0xff7d[88]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x18,null,_0xff7d[101]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){_0xb285x2d= _0xb285x18;_0xb285x29[_0xff7d[54]]= _[_0xff7d[57]](db[_0xff7d[102]][_0xff7d[55]]);_0xb285x29[_0xff7d[58]]= _[_0xff7d[57]](_0xb285x28[_0xff7d[58]]);_0xb285x29[_0xff7d[59]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],_0xb285x29[_0xff7d[58]]);_0xb285x1b[_0xff7d[61]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],qs[_0xff7d[62]](_0xb285x28[_0xff7d[58]][_0xff7d[62]]));_0xb285x1b[_0xff7d[61]]= (_0xb285x1b[_0xff7d[61]][_0xff7d[63]])?_0xb285x1b[_0xff7d[61]]:_0xb285x29[_0xff7d[54]];_0xb285x1b[_0xff7d[66]]= qs[_0xff7d[67]](_0xb285x28[_0xff7d[58]][_0xff7d[67]]);_0xb285x1b[_0xff7d[68]]= qs[_0xff7d[59]](_[_0xff7d[69]](_0xb285x28[_0xff7d[58]],_0xb285x29[_0xff7d[59]]));if(_0xb285x28[_0xff7d[58]][_0xff7d[70]]){_0xb285x1b[_0xff7d[68]]= _[_0xff7d[73]](_0xb285x1b[_0xff7d[68]],{$or:_[_0xff7d[72]](_0xb285x1b[_0xff7d[61]],function(_0xb285x2a){var _0xb285x2b={};_0xb285x2b[_0xb285x2a]= {$like:_0xff7d[71]+ _0xb285x28[_0xff7d[58]][_0xff7d[70]]+ _0xff7d[71]};return _0xb285x2b})})};_0xb285x1b= _[_0xff7d[73]]({},_0xb285x1b,_0xb285x28[_0xff7d[74]]);return _0xb285x2d[_0xff7d[101]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2f){if(_0xb285x2f){_0xb285x1c= _0xb285x2f[_0xff7d[63]];if(!_0xb285x28[_0xff7d[58]][_0xff7d[65]](_0xff7d[64])){_0xb285x1b[_0xff7d[35]]= qs[_0xff7d[35]](_0xb285x28[_0xff7d[58]][_0xff7d[35]]);_0xb285x1b[_0xff7d[34]]= qs[_0xff7d[34]](_0xb285x28[_0xff7d[58]][_0xff7d[34]])};return _0xb285x2d[_0xff7d[101]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2e){return _0xb285x2e?{count:_0xb285x1c,rows:_0xb285x2e}:null})[_0xff7d[45]](respondWithResult(_0xb285x18,null,_0xff7d[101]))[_0xff7d[75]](handleError(_0xb285x18,null,_0xff7d[101]))};exports[_0xff7d[103]]= function(_0xb285x28,_0xb285x15,_0xb285x2c){return db[_0xff7d[104]][_0xff7d[80]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x15,null,_0xff7d[103]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){return _0xb285x18[_0xff7d[103]](_0xb285x28[_0xff7d[82]][_0xff7d[84]],_[_0xff7d[85]](_0xb285x28[_0xff7d[82]],[_0xff7d[84],_0xff7d[78]])|| {})};return null})[_0xff7d[45]](respondWithResult(_0xb285x15,null,_0xff7d[103]))[_0xff7d[75]](handleError(_0xb285x15,null,_0xff7d[103]))};exports[_0xff7d[105]]= function(_0xb285x28,_0xb285x18,_0xb285x2c){var _0xb285x1b={};var _0xb285x29={};var _0xb285x2d;var _0xb285x1c;return db[_0xff7d[56]][_0xff7d[88]]({where:{id:_0xb285x28[_0xff7d[79]][_0xff7d[78]]}})[_0xff7d[45]](handleEntityNotFound(_0xb285x18,null,_0xff7d[105]))[_0xff7d[45]](function(_0xb285x18){if(_0xb285x18){_0xb285x2d= _0xb285x18;_0xb285x29[_0xff7d[54]]= _[_0xff7d[57]](db[_0xff7d[106]][_0xff7d[55]]);_0xb285x29[_0xff7d[58]]= _[_0xff7d[57]](_0xb285x28[_0xff7d[58]]);_0xb285x29[_0xff7d[59]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],_0xb285x29[_0xff7d[58]]);_0xb285x1b[_0xff7d[61]]= _[_0xff7d[60]](_0xb285x29[_0xff7d[54]],qs[_0xff7d[62]](_0xb285x28[_0xff7d[58]][_0xff7d[62]]));_0xb285x1b[_0xff7d[61]]= (_0xb285x1b[_0xff7d[61]][_0xff7d[63]])?_0xb285x1b[_0xff7d[61]]:_0xb285x29[_0xff7d[54]];_0xb285x1b[_0xff7d[66]]= qs[_0xff7d[67]](_0xb285x28[_0xff7d[58]][_0xff7d[67]]);_0xb285x1b[_0xff7d[68]]= qs[_0xff7d[59]](_[_0xff7d[69]](_0xb285x28[_0xff7d[58]],_0xb285x29[_0xff7d[59]]));if(_0xb285x28[_0xff7d[58]][_0xff7d[70]]){_0xb285x1b[_0xff7d[68]]= _[_0xff7d[73]](_0xb285x1b[_0xff7d[68]],{$or:_[_0xff7d[72]](_0xb285x1b[_0xff7d[61]],function(_0xb285x2a){var _0xb285x2b={};_0xb285x2b[_0xb285x2a]= {$like:_0xff7d[71]+ _0xb285x28[_0xff7d[58]][_0xff7d[70]]+ _0xff7d[71]};return _0xb285x2b})})};_0xb285x1b= _[_0xff7d[73]]({},_0xb285x1b,_0xb285x28[_0xff7d[74]]);return _0xb285x2d[_0xff7d[105]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2f){if(_0xb285x2f){_0xb285x1c= _0xb285x2f[_0xff7d[63]];if(!_0xb285x28[_0xff7d[58]][_0xff7d[65]](_0xff7d[64])){_0xb285x1b[_0xff7d[35]]= qs[_0xff7d[35]](_0xb285x28[_0xff7d[58]][_0xff7d[35]]);_0xb285x1b[_0xff7d[34]]= qs[_0xff7d[34]](_0xb285x28[_0xff7d[58]][_0xff7d[34]])};return _0xb285x2d[_0xff7d[105]](_0xb285x1b)}})[_0xff7d[45]](function(_0xb285x2e){return _0xb285x2e?{count:_0xb285x1c,rows:_0xb285x2e}:null})[_0xff7d[45]](respondWithResult(_0xb285x18,null,_0xff7d[105]))[_0xff7d[75]](handleError(_0xb285x18,null,_0xff7d[105]))}
\ No newline at end of file
+var _0x9128=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x49\x64","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x67\x65\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x61\x64\x64\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x73","\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x67\x65\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64"];_0x9128[0];var jsonpatch=require(_0x9128[1]);var rp=require(_0x9128[2]);var moment=require(_0x9128[3]);var BPromise=require(_0x9128[4]);var util=require(_0x9128[5]);var path=require(_0x9128[6]);var sox=require(_0x9128[7]);var ejs=require(_0x9128[8]);var fs=require(_0x9128[9]);var _=require(_0x9128[10]);var squel=require(_0x9128[11]);var crypto=require(_0x9128[12]);var jsforce=require(_0x9128[13]);var toCsv=require(_0x9128[14]);var qs=require(_0x9128[15]);var logger=require(_0x9128[17])(_0x9128[16]);var utils=require(_0x9128[18]);var config=require(_0x9128[19]);var db=require(_0x9128[21])[_0x9128[20]];function respondWithStatusCode(_0xf224x15,_0xf224x16,_0xf224x17){_0xf224x16= _0xf224x16|| 204;return function(_0xf224x18){if(_0xf224x18){logger[_0x9128[24]](_0x9128[22],_0xf224x17,_0xf224x16,_0x9128[23]);logger[_0x9128[26]](_0x9128[25],_0xf224x17,_0xf224x16,_0x9128[23]);return _0xf224x15[_0x9128[27]](_0xf224x16)};return _0xf224x15[_0x9128[29]](304)[_0x9128[28]]()}}function respondWithResult(_0xf224x15,_0xf224x16,_0xf224x17){_0xf224x16= _0xf224x16|| 200;return function(_0xf224x18){if(_0xf224x18){logger[_0x9128[24]](_0x9128[22],_0xf224x17,_0xf224x16,_0x9128[30]);logger[_0x9128[26]](_0x9128[25],_0xf224x17,_0xf224x16,_0x9128[30],JSON[_0x9128[31]](_0xf224x18));return _0xf224x15[_0x9128[29]](_0xf224x16)[_0x9128[32]](_0xf224x18)};return _0xf224x15[_0x9128[29]](304)[_0x9128[28]]()}}function respondWithFilteredResult(_0xf224x15,_0xf224x1b,_0xf224x17){return function(_0xf224x18){if(_0xf224x18){var _0xf224x1c=_0xf224x18[_0x9128[33]],_0xf224x1d=_0xf224x1b[_0x9128[34]],_0xf224x1e=_0xf224x1b[_0x9128[34]]+ _0xf224x1b[_0x9128[35]],_0xf224x16;if(_0xf224x1e>= _0xf224x1c){_0xf224x1e= _0xf224x1c;_0xf224x16= 200}else {_0xf224x16= 206};_0xf224x15[_0x9128[29]](_0xf224x16);logger[_0x9128[24]](_0x9128[22],_0xf224x17,_0xf224x16,_0x9128[36]);logger[_0x9128[26]](_0x9128[25],_0xf224x17,_0xf224x16,_0x9128[30],JSON[_0x9128[31]](_0xf224x18));return _0xf224x15[_0x9128[40]](_0x9128[37],_0xf224x1d+ _0x9128[38]+ _0xf224x1e+ _0x9128[39]+ _0xf224x1c)[_0x9128[32]](_0xf224x18)};return null}}function patchUpdates(_0xf224x20){return function(_0xf224x18){try{jsonpatch[_0x9128[41]](_0xf224x18,_0xf224x20,true)}catch(err){return BPromise[_0x9128[42]](err)};return _0xf224x18[_0x9128[43]]()}}function saveUpdates(_0xf224x22,_0xf224x16,_0xf224x17){return function(_0xf224x18){if(_0xf224x18){return _0xf224x18[_0x9128[46]](_0xf224x22)[_0x9128[45]](function(_0xf224x23){logger[_0x9128[24]](_0x9128[22],_0xf224x17,_0xf224x16,_0x9128[44]);logger[_0x9128[26]](_0x9128[25],_0xf224x17,_0xf224x16,_0x9128[44],JSON[_0x9128[31]](_0xf224x18));return _0xf224x23})};return null}}function removeEntity(_0xf224x15,_0xf224x16,_0xf224x17){return function(_0xf224x18){if(_0xf224x18){return _0xf224x18[_0x9128[48]]()[_0x9128[45]](function(){logger[_0x9128[24]](_0x9128[22],_0xf224x17,_0xf224x16,_0x9128[47]);logger[_0x9128[26]](_0x9128[25],_0xf224x17,_0xf224x16,_0x9128[47],JSON[_0x9128[31]](_0xf224x18));_0xf224x15[_0x9128[29]](204)[_0x9128[28]]()})}}}function handleEntityNotFound(_0xf224x15,_0xf224x16,_0xf224x17){return function(_0xf224x18){if(!_0xf224x18){logger[_0x9128[50]](_0x9128[22],_0xf224x17,404,_0x9128[49]);_0xf224x15[_0x9128[29]](404)[_0x9128[28]]();return null};return _0xf224x18}}function handleError(_0xf224x15,_0xf224x16,_0xf224x17){_0xf224x16= _0xf224x16|| 500;return function(_0xf224x27){logger[_0x9128[50]](_0x9128[22],_0xf224x17,_0xf224x16,JSON[_0x9128[31]](_0xf224x27));delete _0xf224x27[_0x9128[51]];_0xf224x15[_0x9128[29]](_0xf224x16)[_0x9128[52]](_0xf224x27)}}exports[_0x9128[53]]= function(_0xf224x28,_0xf224x15){var _0xf224x1b={},_0xf224x29={};_0xf224x29[_0x9128[54]]= _[_0x9128[57]](db[_0x9128[56]][_0x9128[55]]);_0xf224x29[_0x9128[58]]= _[_0x9128[57]](_0xf224x28[_0x9128[58]]);_0xf224x29[_0x9128[59]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],_0xf224x29[_0x9128[58]]);_0xf224x1b[_0x9128[61]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],qs[_0x9128[62]](_0xf224x28[_0x9128[58]][_0x9128[62]]));_0xf224x1b[_0x9128[61]]= (_0xf224x1b[_0x9128[61]][_0x9128[63]])?_0xf224x1b[_0x9128[61]]:_0xf224x29[_0x9128[54]];if(!_0xf224x28[_0x9128[58]][_0x9128[65]](_0x9128[64])){_0xf224x1b[_0x9128[35]]= qs[_0x9128[35]](_0xf224x28[_0x9128[58]][_0x9128[35]]);_0xf224x1b[_0x9128[34]]= qs[_0x9128[34]](_0xf224x28[_0x9128[58]][_0x9128[34]])};_0xf224x1b[_0x9128[66]]= qs[_0x9128[67]](_0xf224x28[_0x9128[58]][_0x9128[67]]);_0xf224x1b[_0x9128[68]]= qs[_0x9128[59]](_[_0x9128[69]](_0xf224x28[_0x9128[58]],_0xf224x29[_0x9128[59]]));if(_0xf224x28[_0x9128[58]][_0x9128[70]]){_0xf224x1b[_0x9128[68]]= _[_0x9128[73]](_0xf224x1b[_0x9128[68]],{$or:_[_0x9128[72]](_0xf224x1b[_0x9128[61]],function(_0xf224x2a){var _0xf224x2b={};_0xf224x2b[_0xf224x2a]= {$like:_0x9128[71]+ _0xf224x28[_0x9128[58]][_0x9128[70]]+ _0x9128[71]};return _0xf224x2b})})};_0xf224x1b= _[_0x9128[73]]({},_0xf224x1b,_0xf224x28[_0x9128[74]]);return db[_0x9128[56]][_0x9128[76]](_0xf224x1b)[_0x9128[45]](respondWithFilteredResult(_0xf224x15,_0xf224x1b,_0x9128[53]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[53]))};exports[_0x9128[77]]= function(_0xf224x28,_0xf224x15){var _0xf224x1b={raw:false,where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}},_0xf224x29={};_0xf224x29[_0x9128[54]]= _[_0x9128[57]](db[_0x9128[56]][_0x9128[55]]);_0xf224x29[_0x9128[58]]= _[_0x9128[57]](_0xf224x28[_0x9128[58]]);_0xf224x29[_0x9128[59]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],_0xf224x29[_0x9128[58]]);_0xf224x1b[_0x9128[61]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],qs[_0x9128[62]](_0xf224x28[_0x9128[58]][_0x9128[62]]));_0xf224x1b[_0x9128[61]]= (_0xf224x1b[_0x9128[61]][_0x9128[63]])?_0xf224x1b[_0x9128[61]]:_0xf224x29[_0x9128[54]];_0xf224x1b= _[_0x9128[73]]({},_0xf224x1b,_0xf224x28[_0x9128[74]]);return db[_0x9128[56]][_0x9128[80]](_0xf224x1b)[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[77]))[_0x9128[45]](respondWithResult(_0xf224x15,null,_0x9128[77]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[77]))};exports[_0x9128[81]]= function(_0xf224x28,_0xf224x15){return db[_0x9128[56]][_0x9128[81]](_0xf224x28[_0x9128[82]],{})[_0x9128[45]](respondWithResult(_0xf224x15,201,_0x9128[81]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[81]))};exports[_0x9128[46]]= function(_0xf224x28,_0xf224x15){if(_0xf224x28[_0x9128[82]][_0x9128[78]]){delete _0xf224x28[_0x9128[82]][_0x9128[78]]};return db[_0x9128[56]][_0x9128[80]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[46]))[_0x9128[45]](saveUpdates(_0xf224x28[_0x9128[82]],null,_0x9128[46]))[_0x9128[45]](respondWithResult(_0xf224x15,null,_0x9128[46]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[46]))};exports[_0x9128[48]]= function(_0xf224x28,_0xf224x15){return db[_0x9128[56]][_0x9128[80]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[48]))[_0x9128[45]](removeEntity(_0xf224x15,null,_0x9128[48]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[48]))};exports[_0x9128[83]]= function(_0xf224x28,_0xf224x15,_0xf224x2c){return db[_0x9128[86]][_0x9128[80]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[83]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){return _0xf224x18[_0x9128[83]](_0xf224x28[_0x9128[82]][_0x9128[84]],_[_0x9128[85]](_0xf224x28[_0x9128[82]],[_0x9128[84],_0x9128[78]])|| {})};return null})[_0x9128[45]](respondWithResult(_0xf224x15,null,_0x9128[83]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[83]))};exports[_0x9128[87]]= function(_0xf224x28,_0xf224x18,_0xf224x2c){var _0xf224x1b={};var _0xf224x29={};var _0xf224x2d;var _0xf224x1c;return db[_0x9128[56]][_0x9128[88]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x18,null,_0x9128[87]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){_0xf224x2d= _0xf224x18;_0xf224x29[_0x9128[54]]= _[_0x9128[57]](db[_0x9128[86]][_0x9128[55]]);_0xf224x29[_0x9128[58]]= _[_0x9128[57]](_0xf224x28[_0x9128[58]]);_0xf224x29[_0x9128[59]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],_0xf224x29[_0x9128[58]]);_0xf224x1b[_0x9128[61]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],qs[_0x9128[62]](_0xf224x28[_0x9128[58]][_0x9128[62]]));_0xf224x1b[_0x9128[61]]= (_0xf224x1b[_0x9128[61]][_0x9128[63]])?_0xf224x1b[_0x9128[61]]:_0xf224x29[_0x9128[54]];_0xf224x1b[_0x9128[66]]= qs[_0x9128[67]](_0xf224x28[_0x9128[58]][_0x9128[67]]);_0xf224x1b[_0x9128[68]]= qs[_0x9128[59]](_[_0x9128[69]](_0xf224x28[_0x9128[58]],_0xf224x29[_0x9128[59]]));if(_0xf224x28[_0x9128[58]][_0x9128[70]]){_0xf224x1b[_0x9128[68]]= _[_0x9128[73]](_0xf224x1b[_0x9128[68]],{$or:_[_0x9128[72]](_0xf224x1b[_0x9128[61]],function(_0xf224x2a){var _0xf224x2b={};_0xf224x2b[_0xf224x2a]= {$like:_0x9128[71]+ _0xf224x28[_0x9128[58]][_0x9128[70]]+ _0x9128[71]};return _0xf224x2b})})};_0xf224x1b= _[_0x9128[73]]({},_0xf224x1b,_0xf224x28[_0x9128[74]]);return _0xf224x2d[_0x9128[87]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2f){if(_0xf224x2f){_0xf224x1c= _0xf224x2f[_0x9128[63]];if(!_0xf224x28[_0x9128[58]][_0x9128[65]](_0x9128[64])){_0xf224x1b[_0x9128[35]]= qs[_0x9128[35]](_0xf224x28[_0x9128[58]][_0x9128[35]]);_0xf224x1b[_0x9128[34]]= qs[_0x9128[34]](_0xf224x28[_0x9128[58]][_0x9128[34]])};return _0xf224x2d[_0x9128[87]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2e){return _0xf224x2e?{count:_0xf224x1c,rows:_0xf224x2e}:null})[_0x9128[45]](respondWithResult(_0xf224x18,null,_0x9128[87]))[_0x9128[75]](handleError(_0xf224x18,null,_0x9128[87]))};exports[_0x9128[89]]= function(_0xf224x28,_0xf224x15,_0xf224x2c){return db[_0x9128[90]][_0x9128[80]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[89]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){return _0xf224x18[_0x9128[89]](_0xf224x28[_0x9128[82]][_0x9128[84]],_[_0x9128[85]](_0xf224x28[_0x9128[82]],[_0x9128[84],_0x9128[78]])|| {})};return null})[_0x9128[45]](respondWithResult(_0xf224x15,null,_0x9128[89]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[89]))};exports[_0x9128[91]]= function(_0xf224x28,_0xf224x18,_0xf224x2c){var _0xf224x1b={};var _0xf224x29={};var _0xf224x2d;var _0xf224x1c;return db[_0x9128[56]][_0x9128[88]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x18,null,_0x9128[91]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){_0xf224x2d= _0xf224x18;_0xf224x29[_0x9128[54]]= _[_0x9128[57]](db[_0x9128[92]][_0x9128[55]]);_0xf224x29[_0x9128[58]]= _[_0x9128[57]](_0xf224x28[_0x9128[58]]);_0xf224x29[_0x9128[59]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],_0xf224x29[_0x9128[58]]);_0xf224x1b[_0x9128[61]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],qs[_0x9128[62]](_0xf224x28[_0x9128[58]][_0x9128[62]]));_0xf224x1b[_0x9128[61]]= (_0xf224x1b[_0x9128[61]][_0x9128[63]])?_0xf224x1b[_0x9128[61]]:_0xf224x29[_0x9128[54]];_0xf224x1b[_0x9128[66]]= qs[_0x9128[67]](_0xf224x28[_0x9128[58]][_0x9128[67]]);_0xf224x1b[_0x9128[68]]= qs[_0x9128[59]](_[_0x9128[69]](_0xf224x28[_0x9128[58]],_0xf224x29[_0x9128[59]]));if(_0xf224x28[_0x9128[58]][_0x9128[70]]){_0xf224x1b[_0x9128[68]]= _[_0x9128[73]](_0xf224x1b[_0x9128[68]],{$or:_[_0x9128[72]](_0xf224x1b[_0x9128[61]],function(_0xf224x2a){var _0xf224x2b={};_0xf224x2b[_0xf224x2a]= {$like:_0x9128[71]+ _0xf224x28[_0x9128[58]][_0x9128[70]]+ _0x9128[71]};return _0xf224x2b})})};_0xf224x1b= _[_0x9128[73]]({},_0xf224x1b,_0xf224x28[_0x9128[74]]);return _0xf224x2d[_0x9128[91]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2f){if(_0xf224x2f){_0xf224x1c= _0xf224x2f[_0x9128[63]];if(!_0xf224x28[_0x9128[58]][_0x9128[65]](_0x9128[64])){_0xf224x1b[_0x9128[35]]= qs[_0x9128[35]](_0xf224x28[_0x9128[58]][_0x9128[35]]);_0xf224x1b[_0x9128[34]]= qs[_0x9128[34]](_0xf224x28[_0x9128[58]][_0x9128[34]])};return _0xf224x2d[_0x9128[91]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2e){return _0xf224x2e?{count:_0xf224x1c,rows:_0xf224x2e}:null})[_0x9128[45]](respondWithResult(_0xf224x18,null,_0x9128[91]))[_0x9128[75]](handleError(_0xf224x18,null,_0x9128[91]))};exports[_0x9128[93]]= function(_0xf224x28,_0xf224x15,_0xf224x2c){if(_0xf224x28[_0x9128[82]][_0x9128[78]]){delete _0xf224x28[_0x9128[82]][_0x9128[78]]};return db[_0x9128[56]][_0x9128[80]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[93]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){_0xf224x28[_0x9128[82]][_0x9128[94]]= _0xf224x18[_0x9128[78]];return db[_0x9128[95]][_0x9128[81]](_0xf224x28[_0x9128[82]])}})[_0x9128[45]](respondWithResult(_0xf224x15,null,_0x9128[93]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[93]))};exports[_0x9128[96]]= function(_0xf224x28,_0xf224x15,_0xf224x2c){return db[_0x9128[97]][_0x9128[80]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[96]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){return _0xf224x18[_0x9128[96]](_0xf224x28[_0x9128[82]][_0x9128[84]],_[_0x9128[85]](_0xf224x28[_0x9128[82]],[_0x9128[84],_0x9128[78]])|| {})};return null})[_0x9128[45]](respondWithResult(_0xf224x15,null,_0x9128[96]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[96]))};exports[_0x9128[98]]= function(_0xf224x28,_0xf224x18,_0xf224x2c){var _0xf224x1b={};var _0xf224x29={};var _0xf224x2d;var _0xf224x1c;return db[_0x9128[56]][_0x9128[88]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x18,null,_0x9128[98]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){_0xf224x2d= _0xf224x18;_0xf224x29[_0x9128[54]]= _[_0x9128[57]](db[_0x9128[95]][_0x9128[55]]);_0xf224x29[_0x9128[58]]= _[_0x9128[57]](_0xf224x28[_0x9128[58]]);_0xf224x29[_0x9128[59]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],_0xf224x29[_0x9128[58]]);_0xf224x1b[_0x9128[61]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],qs[_0x9128[62]](_0xf224x28[_0x9128[58]][_0x9128[62]]));_0xf224x1b[_0x9128[61]]= (_0xf224x1b[_0x9128[61]][_0x9128[63]])?_0xf224x1b[_0x9128[61]]:_0xf224x29[_0x9128[54]];_0xf224x1b[_0x9128[66]]= qs[_0x9128[67]](_0xf224x28[_0x9128[58]][_0x9128[67]]);_0xf224x1b[_0x9128[68]]= qs[_0x9128[59]](_[_0x9128[69]](_0xf224x28[_0x9128[58]],_0xf224x29[_0x9128[59]]));if(_0xf224x28[_0x9128[58]][_0x9128[70]]){_0xf224x1b[_0x9128[68]]= _[_0x9128[73]](_0xf224x1b[_0x9128[68]],{$or:_[_0x9128[72]](_0xf224x1b[_0x9128[61]],function(_0xf224x2a){var _0xf224x2b={};_0xf224x2b[_0xf224x2a]= {$like:_0x9128[71]+ _0xf224x28[_0x9128[58]][_0x9128[70]]+ _0x9128[71]};return _0xf224x2b})})};_0xf224x1b= _[_0x9128[73]]({},_0xf224x1b,_0xf224x28[_0x9128[74]]);return _0xf224x2d[_0x9128[98]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2f){if(_0xf224x2f){_0xf224x1c= _0xf224x2f[_0x9128[63]];if(!_0xf224x28[_0x9128[58]][_0x9128[65]](_0x9128[64])){_0xf224x1b[_0x9128[35]]= qs[_0x9128[35]](_0xf224x28[_0x9128[58]][_0x9128[35]]);_0xf224x1b[_0x9128[34]]= qs[_0x9128[34]](_0xf224x28[_0x9128[58]][_0x9128[34]])};return _0xf224x2d[_0x9128[98]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2e){return _0xf224x2e?{count:_0xf224x1c,rows:_0xf224x2e}:null})[_0x9128[45]](respondWithResult(_0xf224x18,null,_0x9128[98]))[_0x9128[75]](handleError(_0xf224x18,null,_0x9128[98]))};exports[_0x9128[99]]= function(_0xf224x28,_0xf224x15,_0xf224x2c){return db[_0x9128[100]][_0x9128[80]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[99]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){return _0xf224x18[_0x9128[99]](_0xf224x28[_0x9128[82]][_0x9128[84]],_[_0x9128[85]](_0xf224x28[_0x9128[82]],[_0x9128[84],_0x9128[78]])|| {})};return null})[_0x9128[45]](respondWithResult(_0xf224x15,null,_0x9128[99]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[99]))};exports[_0x9128[101]]= function(_0xf224x28,_0xf224x18,_0xf224x2c){var _0xf224x1b={};var _0xf224x29={};var _0xf224x2d;var _0xf224x1c;return db[_0x9128[56]][_0x9128[88]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x18,null,_0x9128[101]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){_0xf224x2d= _0xf224x18;_0xf224x29[_0x9128[54]]= _[_0x9128[57]](db[_0x9128[102]][_0x9128[55]]);_0xf224x29[_0x9128[58]]= _[_0x9128[57]](_0xf224x28[_0x9128[58]]);_0xf224x29[_0x9128[59]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],_0xf224x29[_0x9128[58]]);_0xf224x1b[_0x9128[61]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],qs[_0x9128[62]](_0xf224x28[_0x9128[58]][_0x9128[62]]));_0xf224x1b[_0x9128[61]]= (_0xf224x1b[_0x9128[61]][_0x9128[63]])?_0xf224x1b[_0x9128[61]]:_0xf224x29[_0x9128[54]];_0xf224x1b[_0x9128[66]]= qs[_0x9128[67]](_0xf224x28[_0x9128[58]][_0x9128[67]]);_0xf224x1b[_0x9128[68]]= qs[_0x9128[59]](_[_0x9128[69]](_0xf224x28[_0x9128[58]],_0xf224x29[_0x9128[59]]));if(_0xf224x28[_0x9128[58]][_0x9128[70]]){_0xf224x1b[_0x9128[68]]= _[_0x9128[73]](_0xf224x1b[_0x9128[68]],{$or:_[_0x9128[72]](_0xf224x1b[_0x9128[61]],function(_0xf224x2a){var _0xf224x2b={};_0xf224x2b[_0xf224x2a]= {$like:_0x9128[71]+ _0xf224x28[_0x9128[58]][_0x9128[70]]+ _0x9128[71]};return _0xf224x2b})})};_0xf224x1b= _[_0x9128[73]]({},_0xf224x1b,_0xf224x28[_0x9128[74]]);return _0xf224x2d[_0x9128[101]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2f){if(_0xf224x2f){_0xf224x1c= _0xf224x2f[_0x9128[63]];if(!_0xf224x28[_0x9128[58]][_0x9128[65]](_0x9128[64])){_0xf224x1b[_0x9128[35]]= qs[_0x9128[35]](_0xf224x28[_0x9128[58]][_0x9128[35]]);_0xf224x1b[_0x9128[34]]= qs[_0x9128[34]](_0xf224x28[_0x9128[58]][_0x9128[34]])};return _0xf224x2d[_0x9128[101]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2e){return _0xf224x2e?{count:_0xf224x1c,rows:_0xf224x2e}:null})[_0x9128[45]](respondWithResult(_0xf224x18,null,_0x9128[101]))[_0x9128[75]](handleError(_0xf224x18,null,_0x9128[101]))};exports[_0x9128[103]]= function(_0xf224x28,_0xf224x15,_0xf224x2c){return db[_0x9128[104]][_0x9128[80]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x15,null,_0x9128[103]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){return _0xf224x18[_0x9128[103]](_0xf224x28[_0x9128[82]][_0x9128[84]],_[_0x9128[85]](_0xf224x28[_0x9128[82]],[_0x9128[84],_0x9128[78]])|| {})};return null})[_0x9128[45]](respondWithResult(_0xf224x15,null,_0x9128[103]))[_0x9128[75]](handleError(_0xf224x15,null,_0x9128[103]))};exports[_0x9128[105]]= function(_0xf224x28,_0xf224x18,_0xf224x2c){var _0xf224x1b={};var _0xf224x29={};var _0xf224x2d;var _0xf224x1c;return db[_0x9128[56]][_0x9128[88]]({where:{id:_0xf224x28[_0x9128[79]][_0x9128[78]]}})[_0x9128[45]](handleEntityNotFound(_0xf224x18,null,_0x9128[105]))[_0x9128[45]](function(_0xf224x18){if(_0xf224x18){_0xf224x2d= _0xf224x18;_0xf224x29[_0x9128[54]]= _[_0x9128[57]](db[_0x9128[106]][_0x9128[55]]);_0xf224x29[_0x9128[58]]= _[_0x9128[57]](_0xf224x28[_0x9128[58]]);_0xf224x29[_0x9128[59]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],_0xf224x29[_0x9128[58]]);_0xf224x1b[_0x9128[61]]= _[_0x9128[60]](_0xf224x29[_0x9128[54]],qs[_0x9128[62]](_0xf224x28[_0x9128[58]][_0x9128[62]]));_0xf224x1b[_0x9128[61]]= (_0xf224x1b[_0x9128[61]][_0x9128[63]])?_0xf224x1b[_0x9128[61]]:_0xf224x29[_0x9128[54]];_0xf224x1b[_0x9128[66]]= qs[_0x9128[67]](_0xf224x28[_0x9128[58]][_0x9128[67]]);_0xf224x1b[_0x9128[68]]= qs[_0x9128[59]](_[_0x9128[69]](_0xf224x28[_0x9128[58]],_0xf224x29[_0x9128[59]]));if(_0xf224x28[_0x9128[58]][_0x9128[70]]){_0xf224x1b[_0x9128[68]]= _[_0x9128[73]](_0xf224x1b[_0x9128[68]],{$or:_[_0x9128[72]](_0xf224x1b[_0x9128[61]],function(_0xf224x2a){var _0xf224x2b={};_0xf224x2b[_0xf224x2a]= {$like:_0x9128[71]+ _0xf224x28[_0x9128[58]][_0x9128[70]]+ _0x9128[71]};return _0xf224x2b})})};_0xf224x1b= _[_0x9128[73]]({},_0xf224x1b,_0xf224x28[_0x9128[74]]);return _0xf224x2d[_0x9128[105]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2f){if(_0xf224x2f){_0xf224x1c= _0xf224x2f[_0x9128[63]];if(!_0xf224x28[_0x9128[58]][_0x9128[65]](_0x9128[64])){_0xf224x1b[_0x9128[35]]= qs[_0x9128[35]](_0xf224x28[_0x9128[58]][_0x9128[35]]);_0xf224x1b[_0x9128[34]]= qs[_0x9128[34]](_0xf224x28[_0x9128[58]][_0x9128[34]])};return _0xf224x2d[_0x9128[105]](_0xf224x1b)}})[_0x9128[45]](function(_0xf224x2e){return _0xf224x2e?{count:_0xf224x1c,rows:_0xf224x2e}:null})[_0x9128[45]](respondWithResult(_0xf224x18,null,_0x9128[105]))[_0x9128[75]](handleError(_0xf224x18,null,_0x9128[105]))}
\ No newline at end of file
index 5d2ffa8..6ab22d1 100644 (file)
@@ -1 +1 @@
-var _0x571a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x63\x68\x61\x74\x5F\x77\x65\x62\x73\x69\x74\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x571a[0];var _=require(_0x571a[1]);var util=require(_0x571a[2]);var logger=require(_0x571a[4])(_0x571a[3]);var attributes=require(_0x571a[5]);module[_0x571a[6]]= function(_0x4607x5,_0x4607x6){return _0x4607x5[_0x571a[9]](_0x571a[7],attributes,{tableName:_0x571a[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x902f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x63\x68\x61\x74\x5F\x77\x65\x62\x73\x69\x74\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x902f[0];var _=require(_0x902f[1]);var util=require(_0x902f[2]);var logger=require(_0x902f[4])(_0x902f[3]);var attributes=require(_0x902f[5]);module[_0x902f[6]]= function(_0x9860x5,_0x9860x6){return _0x9860x5[_0x902f[9]](_0x902f[7],attributes,{tableName:_0x902f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 8e91800..40dccfb 100644 (file)
@@ -1 +1 @@
-var _0xb898=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xb898[0];var _=require(_0xb898[1]);var util=require(_0xb898[2]);var moment=require(_0xb898[3]);var BPromise=require(_0xb898[4]);var db=require(_0xb898[6])[_0xb898[5]];var utils=require(_0xb898[7]);var logger=require(_0xb898[9])(_0xb898[8]);var jayson=require(_0xb898[10]);var client=jayson[_0xb898[12]][_0xb898[11]]({port:9002});function respondWithRpcPromise(_0x7a6cxb,_0x7a6cxc,_0x7a6cxd){return  new BPromise(function(_0x7a6cxe,_0x7a6cxf){return client[_0xb898[25]](_0x7a6cxb,_0x7a6cxd)[_0xb898[24]](function(_0x7a6cx11){logger[_0xb898[17]](_0xb898[13],_0x7a6cxc,_0xb898[16]);logger[_0xb898[20]](_0xb898[18],_0x7a6cxc,_0xb898[16],JSON[_0xb898[19]](_0x7a6cx11));if(_0x7a6cx11[_0xb898[14]]){if(_0x7a6cx11[_0xb898[14]][_0xb898[21]]=== 500){logger[_0xb898[14]](_0xb898[13],_0x7a6cxc,_0x7a6cx11[_0xb898[14]][_0xb898[22]]);return _0x7a6cxf(_0x7a6cx11[_0xb898[14]][_0xb898[22]])};logger[_0xb898[14]](_0xb898[13],_0x7a6cxc,_0x7a6cx11[_0xb898[14]][_0xb898[22]]);return _0x7a6cxe(_0x7a6cx11[_0xb898[14]][_0xb898[22]])}else {logger[_0xb898[17]](_0xb898[13],_0x7a6cxc,_0xb898[16]);_0x7a6cxe(_0x7a6cx11[_0xb898[23]][_0xb898[22]])}})[_0xb898[15]](function(_0x7a6cx10){logger[_0xb898[14]](_0xb898[13],_0x7a6cxc,_0x7a6cx10);_0x7a6cxf(_0x7a6cx10)})})}
\ No newline at end of file
+var _0x9780=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9780[0];var _=require(_0x9780[1]);var util=require(_0x9780[2]);var moment=require(_0x9780[3]);var BPromise=require(_0x9780[4]);var db=require(_0x9780[6])[_0x9780[5]];var utils=require(_0x9780[7]);var logger=require(_0x9780[9])(_0x9780[8]);var jayson=require(_0x9780[10]);var client=jayson[_0x9780[12]][_0x9780[11]]({port:9002});function respondWithRpcPromise(_0x9f2exb,_0x9f2exc,_0x9f2exd){return  new BPromise(function(_0x9f2exe,_0x9f2exf){return client[_0x9780[25]](_0x9f2exb,_0x9f2exd)[_0x9780[24]](function(_0x9f2ex11){logger[_0x9780[17]](_0x9780[13],_0x9f2exc,_0x9780[16]);logger[_0x9780[20]](_0x9780[18],_0x9f2exc,_0x9780[16],JSON[_0x9780[19]](_0x9f2ex11));if(_0x9f2ex11[_0x9780[14]]){if(_0x9f2ex11[_0x9780[14]][_0x9780[21]]=== 500){logger[_0x9780[14]](_0x9780[13],_0x9f2exc,_0x9f2ex11[_0x9780[14]][_0x9780[22]]);return _0x9f2exf(_0x9f2ex11[_0x9780[14]][_0x9780[22]])};logger[_0x9780[14]](_0x9780[13],_0x9f2exc,_0x9f2ex11[_0x9780[14]][_0x9780[22]]);return _0x9f2exe(_0x9f2ex11[_0x9780[14]][_0x9780[22]])}else {logger[_0x9780[17]](_0x9780[13],_0x9f2exc,_0x9780[16]);_0x9f2exe(_0x9f2ex11[_0x9780[23]][_0x9780[22]])}})[_0x9780[15]](function(_0x9f2ex10){logger[_0x9780[14]](_0x9780[13],_0x9f2exc,_0x9f2ex10);_0x9f2exf(_0x9f2ex10)})})}
\ No newline at end of file
index 732506e..17a9b7d 100644 (file)
@@ -1 +1 @@
-var _0xd194=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x70\x72\x6F\x61\x63\x74\x69\x76\x65\x5F\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x61\x64\x64\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd194[0];var multer=require(_0xd194[1]);var util=require(_0xd194[2]);var path=require(_0xd194[3]);var express=require(_0xd194[4]);var router=express.Router();var auth=require(_0xd194[5]);var config=require(_0xd194[6]);var controller=require(_0xd194[7]);router[_0xd194[11]](_0xd194[8],auth[_0xd194[9]](),controller[_0xd194[10]]);router[_0xd194[11]](_0xd194[12],auth[_0xd194[9]](),controller[_0xd194[13]]);router[_0xd194[11]](_0xd194[14],auth[_0xd194[9]](),controller[_0xd194[15]]);router[_0xd194[11]](_0xd194[16],auth[_0xd194[9]](),controller[_0xd194[17]]);router[_0xd194[11]](_0xd194[18],auth[_0xd194[9]](),controller[_0xd194[19]]);router[_0xd194[11]](_0xd194[20],auth[_0xd194[9]](),controller[_0xd194[21]]);router[_0xd194[11]](_0xd194[22],auth[_0xd194[9]](),controller[_0xd194[23]]);router[_0xd194[25]](_0xd194[8],auth[_0xd194[9]](),controller[_0xd194[24]]);router[_0xd194[25]](_0xd194[14],auth[_0xd194[9]](),controller[_0xd194[26]]);router[_0xd194[25]](_0xd194[16],auth[_0xd194[9]](),controller[_0xd194[27]]);router[_0xd194[25]](_0xd194[18],auth[_0xd194[9]](),controller[_0xd194[28]]);router[_0xd194[25]](_0xd194[18],auth[_0xd194[9]](),controller[_0xd194[29]]);router[_0xd194[25]](_0xd194[20],auth[_0xd194[9]](),controller[_0xd194[30]]);router[_0xd194[25]](_0xd194[22],auth[_0xd194[9]](),controller[_0xd194[31]]);router[_0xd194[33]](_0xd194[12],auth[_0xd194[9]](),controller[_0xd194[32]]);router[_0xd194[35]](_0xd194[12],auth[_0xd194[9]](),controller[_0xd194[34]]);module[_0xd194[36]]= router
\ No newline at end of file
+var _0x4d38=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x70\x72\x6F\x61\x63\x74\x69\x76\x65\x5F\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x61\x64\x64\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x4d38[0];var multer=require(_0x4d38[1]);var util=require(_0x4d38[2]);var path=require(_0x4d38[3]);var express=require(_0x4d38[4]);var router=express.Router();var auth=require(_0x4d38[5]);var config=require(_0x4d38[6]);var controller=require(_0x4d38[7]);router[_0x4d38[11]](_0x4d38[8],auth[_0x4d38[9]](),controller[_0x4d38[10]]);router[_0x4d38[11]](_0x4d38[12],auth[_0x4d38[9]](),controller[_0x4d38[13]]);router[_0x4d38[11]](_0x4d38[14],auth[_0x4d38[9]](),controller[_0x4d38[15]]);router[_0x4d38[11]](_0x4d38[16],auth[_0x4d38[9]](),controller[_0x4d38[17]]);router[_0x4d38[11]](_0x4d38[18],auth[_0x4d38[9]](),controller[_0x4d38[19]]);router[_0x4d38[11]](_0x4d38[20],auth[_0x4d38[9]](),controller[_0x4d38[21]]);router[_0x4d38[11]](_0x4d38[22],auth[_0x4d38[9]](),controller[_0x4d38[23]]);router[_0x4d38[25]](_0x4d38[8],auth[_0x4d38[9]](),controller[_0x4d38[24]]);router[_0x4d38[25]](_0x4d38[14],auth[_0x4d38[9]](),controller[_0x4d38[26]]);router[_0x4d38[25]](_0x4d38[16],auth[_0x4d38[9]](),controller[_0x4d38[27]]);router[_0x4d38[25]](_0x4d38[18],auth[_0x4d38[9]](),controller[_0x4d38[28]]);router[_0x4d38[25]](_0x4d38[18],auth[_0x4d38[9]](),controller[_0x4d38[29]]);router[_0x4d38[25]](_0x4d38[20],auth[_0x4d38[9]](),controller[_0x4d38[30]]);router[_0x4d38[25]](_0x4d38[22],auth[_0x4d38[9]](),controller[_0x4d38[31]]);router[_0x4d38[33]](_0x4d38[12],auth[_0x4d38[9]](),controller[_0x4d38[32]]);router[_0x4d38[35]](_0x4d38[12],auth[_0x4d38[9]](),controller[_0x4d38[34]]);module[_0x4d38[36]]= router
\ No newline at end of file
index 5f4361a..2c18cac 100644 (file)
@@ -1 +1 @@
-var _0x852c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x2C","\x73\x70\x6C\x69\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x852c[0];var Sequelize=require(_0x852c[1]);module[_0x852c[2]]= {component:{type:Sequelize[_0x852c[3]]},description:{type:Sequelize[_0x852c[3]]},index:{type:Sequelize[_0x852c[4]]},label:{type:Sequelize[_0x852c[3]]},options:{type:Sequelize[_0x852c[3]],get:function(){return this[_0x852c[8]](_0x852c[7])[_0x852c[6]](_0x852c[5])},set:function(_0xcb2ax2){this[_0x852c[10]](_0x852c[7],_0xcb2ax2[_0x852c[9]](_0x852c[5]))}},placeholder:{type:Sequelize[_0x852c[3]]},required:{type:Sequelize[_0x852c[11]]},validation:{type:Sequelize[_0x852c[3]]},editable:{type:Sequelize[_0x852c[11]],defaultValue:true}}
\ No newline at end of file
+var _0xfd41=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x2C","\x73\x70\x6C\x69\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xfd41[0];var Sequelize=require(_0xfd41[1]);module[_0xfd41[2]]= {component:{type:Sequelize[_0xfd41[3]]},description:{type:Sequelize[_0xfd41[3]]},index:{type:Sequelize[_0xfd41[4]]},label:{type:Sequelize[_0xfd41[3]]},options:{type:Sequelize[_0xfd41[3]],get:function(){return this[_0xfd41[8]](_0xfd41[7])[_0xfd41[6]](_0xfd41[5])},set:function(_0x637cx2){this[_0xfd41[10]](_0xfd41[7],_0x637cx2[_0xfd41[9]](_0xfd41[5]))}},placeholder:{type:Sequelize[_0xfd41[3]]},required:{type:Sequelize[_0xfd41[11]]},validation:{type:Sequelize[_0xfd41[3]]},editable:{type:Sequelize[_0xfd41[11]],defaultValue:true}}
\ No newline at end of file
index 8efa8c3..5459a93 100644 (file)
@@ -1 +1 @@
-var _0x5098=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x5098[0];var jsonpatch=require(_0x5098[1]);var rp=require(_0x5098[2]);var moment=require(_0x5098[3]);var BPromise=require(_0x5098[4]);var util=require(_0x5098[5]);var path=require(_0x5098[6]);var sox=require(_0x5098[7]);var ejs=require(_0x5098[8]);var fs=require(_0x5098[9]);var _=require(_0x5098[10]);var squel=require(_0x5098[11]);var crypto=require(_0x5098[12]);var jsforce=require(_0x5098[13]);var toCsv=require(_0x5098[14]);var qs=require(_0x5098[15]);var logger=require(_0x5098[17])(_0x5098[16]);var utils=require(_0x5098[18]);var config=require(_0x5098[19]);var db=require(_0x5098[21])[_0x5098[20]];function respondWithStatusCode(_0x2e1ax15,_0x2e1ax16,_0x2e1ax17){_0x2e1ax16= _0x2e1ax16|| 204;return function(_0x2e1ax18){if(_0x2e1ax18){logger[_0x5098[24]](_0x5098[22],_0x2e1ax17,_0x2e1ax16,_0x5098[23]);logger[_0x5098[26]](_0x5098[25],_0x2e1ax17,_0x2e1ax16,_0x5098[23]);return _0x2e1ax15[_0x5098[27]](_0x2e1ax16)};return _0x2e1ax15[_0x5098[29]](304)[_0x5098[28]]()}}function respondWithResult(_0x2e1ax15,_0x2e1ax16,_0x2e1ax17){_0x2e1ax16= _0x2e1ax16|| 200;return function(_0x2e1ax18){if(_0x2e1ax18){logger[_0x5098[24]](_0x5098[22],_0x2e1ax17,_0x2e1ax16,_0x5098[30]);logger[_0x5098[26]](_0x5098[25],_0x2e1ax17,_0x2e1ax16,_0x5098[30],JSON[_0x5098[31]](_0x2e1ax18));return _0x2e1ax15[_0x5098[29]](_0x2e1ax16)[_0x5098[32]](_0x2e1ax18)};return _0x2e1ax15[_0x5098[29]](304)[_0x5098[28]]()}}function respondWithFilteredResult(_0x2e1ax15,_0x2e1ax1b,_0x2e1ax17){return function(_0x2e1ax18){if(_0x2e1ax18){var _0x2e1ax1c=_0x2e1ax18[_0x5098[33]],_0x2e1ax1d=_0x2e1ax1b[_0x5098[34]],_0x2e1ax1e=_0x2e1ax1b[_0x5098[34]]+ _0x2e1ax1b[_0x5098[35]],_0x2e1ax16;if(_0x2e1ax1e>= _0x2e1ax1c){_0x2e1ax1e= _0x2e1ax1c;_0x2e1ax16= 200}else {_0x2e1ax16= 206};_0x2e1ax15[_0x5098[29]](_0x2e1ax16);logger[_0x5098[24]](_0x5098[22],_0x2e1ax17,_0x2e1ax16,_0x5098[36]);logger[_0x5098[26]](_0x5098[25],_0x2e1ax17,_0x2e1ax16,_0x5098[30],JSON[_0x5098[31]](_0x2e1ax18));return _0x2e1ax15[_0x5098[40]](_0x5098[37],_0x2e1ax1d+ _0x5098[38]+ _0x2e1ax1e+ _0x5098[39]+ _0x2e1ax1c)[_0x5098[32]](_0x2e1ax18)};return null}}function patchUpdates(_0x2e1ax20){return function(_0x2e1ax18){try{jsonpatch[_0x5098[41]](_0x2e1ax18,_0x2e1ax20,true)}catch(err){return BPromise[_0x5098[42]](err)};return _0x2e1ax18[_0x5098[43]]()}}function saveUpdates(_0x2e1ax22,_0x2e1ax16,_0x2e1ax17){return function(_0x2e1ax18){if(_0x2e1ax18){return _0x2e1ax18[_0x5098[46]](_0x2e1ax22)[_0x5098[45]](function(_0x2e1ax23){logger[_0x5098[24]](_0x5098[22],_0x2e1ax17,_0x2e1ax16,_0x5098[44]);logger[_0x5098[26]](_0x5098[25],_0x2e1ax17,_0x2e1ax16,_0x5098[44],JSON[_0x5098[31]](_0x2e1ax18));return _0x2e1ax23})};return null}}function removeEntity(_0x2e1ax15,_0x2e1ax16,_0x2e1ax17){return function(_0x2e1ax18){if(_0x2e1ax18){return _0x2e1ax18[_0x5098[48]]()[_0x5098[45]](function(){logger[_0x5098[24]](_0x5098[22],_0x2e1ax17,_0x2e1ax16,_0x5098[47]);logger[_0x5098[26]](_0x5098[25],_0x2e1ax17,_0x2e1ax16,_0x5098[47],JSON[_0x5098[31]](_0x2e1ax18));_0x2e1ax15[_0x5098[29]](204)[_0x5098[28]]()})}}}function handleEntityNotFound(_0x2e1ax15,_0x2e1ax16,_0x2e1ax17){return function(_0x2e1ax18){if(!_0x2e1ax18){logger[_0x5098[50]](_0x5098[22],_0x2e1ax17,404,_0x5098[49]);_0x2e1ax15[_0x5098[29]](404)[_0x5098[28]]();return null};return _0x2e1ax18}}function handleError(_0x2e1ax15,_0x2e1ax16,_0x2e1ax17){_0x2e1ax16= _0x2e1ax16|| 500;return function(_0x2e1ax27){logger[_0x5098[50]](_0x5098[22],_0x2e1ax17,_0x2e1ax16,JSON[_0x5098[31]](_0x2e1ax27));delete _0x2e1ax27[_0x5098[51]];_0x2e1ax15[_0x5098[29]](_0x2e1ax16)[_0x5098[52]](_0x2e1ax27)}}exports[_0x5098[53]]= function(_0x2e1ax28,_0x2e1ax15){var _0x2e1ax1b={raw:false,where:{id:_0x2e1ax28[_0x5098[55]][_0x5098[54]]}},_0x2e1ax29={};_0x2e1ax29[_0x5098[56]]= _[_0x5098[59]](db[_0x5098[58]][_0x5098[57]]);_0x2e1ax29[_0x5098[60]]= _[_0x5098[59]](_0x2e1ax28[_0x5098[60]]);_0x2e1ax29[_0x5098[61]]= _[_0x5098[62]](_0x2e1ax29[_0x5098[56]],_0x2e1ax29[_0x5098[60]]);_0x2e1ax1b[_0x5098[63]]= _[_0x5098[62]](_0x2e1ax29[_0x5098[56]],qs[_0x5098[64]](_0x2e1ax28[_0x5098[60]][_0x5098[64]]));_0x2e1ax1b[_0x5098[63]]= (_0x2e1ax1b[_0x5098[63]][_0x5098[65]])?_0x2e1ax1b[_0x5098[63]]:_0x2e1ax29[_0x5098[56]];_0x2e1ax1b= _[_0x5098[67]]({},_0x2e1ax1b,_0x2e1ax28[_0x5098[66]]);return db[_0x5098[58]][_0x5098[69]](_0x2e1ax1b)[_0x5098[45]](handleEntityNotFound(_0x2e1ax15,null,_0x5098[53]))[_0x5098[45]](respondWithResult(_0x2e1ax15,null,_0x5098[53]))[_0x5098[68]](handleError(_0x2e1ax15,null,_0x5098[53]))};exports[_0x5098[46]]= function(_0x2e1ax28,_0x2e1ax15){if(_0x2e1ax28[_0x5098[70]][_0x5098[54]]){delete _0x2e1ax28[_0x5098[70]][_0x5098[54]]};return db[_0x5098[58]][_0x5098[69]]({where:{id:_0x2e1ax28[_0x5098[55]][_0x5098[54]]}})[_0x5098[45]](handleEntityNotFound(_0x2e1ax15,null,_0x5098[46]))[_0x5098[45]](saveUpdates(_0x2e1ax28[_0x5098[70]],null,_0x5098[46]))[_0x5098[45]](respondWithResult(_0x2e1ax15,null,_0x5098[46]))[_0x5098[68]](handleError(_0x2e1ax15,null,_0x5098[46]))};exports[_0x5098[48]]= function(_0x2e1ax28,_0x2e1ax15){return db[_0x5098[58]][_0x5098[69]]({where:{id:_0x2e1ax28[_0x5098[55]][_0x5098[54]]}})[_0x5098[45]](handleEntityNotFound(_0x2e1ax15,null,_0x5098[48]))[_0x5098[45]](removeEntity(_0x2e1ax15,null,_0x5098[48]))[_0x5098[68]](handleError(_0x2e1ax15,null,_0x5098[48]))}
\ No newline at end of file
+var _0x788d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x788d[0];var jsonpatch=require(_0x788d[1]);var rp=require(_0x788d[2]);var moment=require(_0x788d[3]);var BPromise=require(_0x788d[4]);var util=require(_0x788d[5]);var path=require(_0x788d[6]);var sox=require(_0x788d[7]);var ejs=require(_0x788d[8]);var fs=require(_0x788d[9]);var _=require(_0x788d[10]);var squel=require(_0x788d[11]);var crypto=require(_0x788d[12]);var jsforce=require(_0x788d[13]);var toCsv=require(_0x788d[14]);var qs=require(_0x788d[15]);var logger=require(_0x788d[17])(_0x788d[16]);var utils=require(_0x788d[18]);var config=require(_0x788d[19]);var db=require(_0x788d[21])[_0x788d[20]];function respondWithStatusCode(_0x3182x15,_0x3182x16,_0x3182x17){_0x3182x16= _0x3182x16|| 204;return function(_0x3182x18){if(_0x3182x18){logger[_0x788d[24]](_0x788d[22],_0x3182x17,_0x3182x16,_0x788d[23]);logger[_0x788d[26]](_0x788d[25],_0x3182x17,_0x3182x16,_0x788d[23]);return _0x3182x15[_0x788d[27]](_0x3182x16)};return _0x3182x15[_0x788d[29]](304)[_0x788d[28]]()}}function respondWithResult(_0x3182x15,_0x3182x16,_0x3182x17){_0x3182x16= _0x3182x16|| 200;return function(_0x3182x18){if(_0x3182x18){logger[_0x788d[24]](_0x788d[22],_0x3182x17,_0x3182x16,_0x788d[30]);logger[_0x788d[26]](_0x788d[25],_0x3182x17,_0x3182x16,_0x788d[30],JSON[_0x788d[31]](_0x3182x18));return _0x3182x15[_0x788d[29]](_0x3182x16)[_0x788d[32]](_0x3182x18)};return _0x3182x15[_0x788d[29]](304)[_0x788d[28]]()}}function respondWithFilteredResult(_0x3182x15,_0x3182x1b,_0x3182x17){return function(_0x3182x18){if(_0x3182x18){var _0x3182x1c=_0x3182x18[_0x788d[33]],_0x3182x1d=_0x3182x1b[_0x788d[34]],_0x3182x1e=_0x3182x1b[_0x788d[34]]+ _0x3182x1b[_0x788d[35]],_0x3182x16;if(_0x3182x1e>= _0x3182x1c){_0x3182x1e= _0x3182x1c;_0x3182x16= 200}else {_0x3182x16= 206};_0x3182x15[_0x788d[29]](_0x3182x16);logger[_0x788d[24]](_0x788d[22],_0x3182x17,_0x3182x16,_0x788d[36]);logger[_0x788d[26]](_0x788d[25],_0x3182x17,_0x3182x16,_0x788d[30],JSON[_0x788d[31]](_0x3182x18));return _0x3182x15[_0x788d[40]](_0x788d[37],_0x3182x1d+ _0x788d[38]+ _0x3182x1e+ _0x788d[39]+ _0x3182x1c)[_0x788d[32]](_0x3182x18)};return null}}function patchUpdates(_0x3182x20){return function(_0x3182x18){try{jsonpatch[_0x788d[41]](_0x3182x18,_0x3182x20,true)}catch(err){return BPromise[_0x788d[42]](err)};return _0x3182x18[_0x788d[43]]()}}function saveUpdates(_0x3182x22,_0x3182x16,_0x3182x17){return function(_0x3182x18){if(_0x3182x18){return _0x3182x18[_0x788d[46]](_0x3182x22)[_0x788d[45]](function(_0x3182x23){logger[_0x788d[24]](_0x788d[22],_0x3182x17,_0x3182x16,_0x788d[44]);logger[_0x788d[26]](_0x788d[25],_0x3182x17,_0x3182x16,_0x788d[44],JSON[_0x788d[31]](_0x3182x18));return _0x3182x23})};return null}}function removeEntity(_0x3182x15,_0x3182x16,_0x3182x17){return function(_0x3182x18){if(_0x3182x18){return _0x3182x18[_0x788d[48]]()[_0x788d[45]](function(){logger[_0x788d[24]](_0x788d[22],_0x3182x17,_0x3182x16,_0x788d[47]);logger[_0x788d[26]](_0x788d[25],_0x3182x17,_0x3182x16,_0x788d[47],JSON[_0x788d[31]](_0x3182x18));_0x3182x15[_0x788d[29]](204)[_0x788d[28]]()})}}}function handleEntityNotFound(_0x3182x15,_0x3182x16,_0x3182x17){return function(_0x3182x18){if(!_0x3182x18){logger[_0x788d[50]](_0x788d[22],_0x3182x17,404,_0x788d[49]);_0x3182x15[_0x788d[29]](404)[_0x788d[28]]();return null};return _0x3182x18}}function handleError(_0x3182x15,_0x3182x16,_0x3182x17){_0x3182x16= _0x3182x16|| 500;return function(_0x3182x27){logger[_0x788d[50]](_0x788d[22],_0x3182x17,_0x3182x16,JSON[_0x788d[31]](_0x3182x27));delete _0x3182x27[_0x788d[51]];_0x3182x15[_0x788d[29]](_0x3182x16)[_0x788d[52]](_0x3182x27)}}exports[_0x788d[53]]= function(_0x3182x28,_0x3182x15){var _0x3182x1b={raw:false,where:{id:_0x3182x28[_0x788d[55]][_0x788d[54]]}},_0x3182x29={};_0x3182x29[_0x788d[56]]= _[_0x788d[59]](db[_0x788d[58]][_0x788d[57]]);_0x3182x29[_0x788d[60]]= _[_0x788d[59]](_0x3182x28[_0x788d[60]]);_0x3182x29[_0x788d[61]]= _[_0x788d[62]](_0x3182x29[_0x788d[56]],_0x3182x29[_0x788d[60]]);_0x3182x1b[_0x788d[63]]= _[_0x788d[62]](_0x3182x29[_0x788d[56]],qs[_0x788d[64]](_0x3182x28[_0x788d[60]][_0x788d[64]]));_0x3182x1b[_0x788d[63]]= (_0x3182x1b[_0x788d[63]][_0x788d[65]])?_0x3182x1b[_0x788d[63]]:_0x3182x29[_0x788d[56]];_0x3182x1b= _[_0x788d[67]]({},_0x3182x1b,_0x3182x28[_0x788d[66]]);return db[_0x788d[58]][_0x788d[69]](_0x3182x1b)[_0x788d[45]](handleEntityNotFound(_0x3182x15,null,_0x788d[53]))[_0x788d[45]](respondWithResult(_0x3182x15,null,_0x788d[53]))[_0x788d[68]](handleError(_0x3182x15,null,_0x788d[53]))};exports[_0x788d[46]]= function(_0x3182x28,_0x3182x15){if(_0x3182x28[_0x788d[70]][_0x788d[54]]){delete _0x3182x28[_0x788d[70]][_0x788d[54]]};return db[_0x788d[58]][_0x788d[69]]({where:{id:_0x3182x28[_0x788d[55]][_0x788d[54]]}})[_0x788d[45]](handleEntityNotFound(_0x3182x15,null,_0x788d[46]))[_0x788d[45]](saveUpdates(_0x3182x28[_0x788d[70]],null,_0x788d[46]))[_0x788d[45]](respondWithResult(_0x3182x15,null,_0x788d[46]))[_0x788d[68]](handleError(_0x3182x15,null,_0x788d[46]))};exports[_0x788d[48]]= function(_0x3182x28,_0x3182x15){return db[_0x788d[58]][_0x788d[69]]({where:{id:_0x3182x28[_0x788d[55]][_0x788d[54]]}})[_0x788d[45]](handleEntityNotFound(_0x3182x15,null,_0x788d[48]))[_0x788d[45]](removeEntity(_0x3182x15,null,_0x788d[48]))[_0x788d[68]](handleError(_0x3182x15,null,_0x788d[48]))}
\ No newline at end of file
index 99b43d9..7426e82 100644 (file)
@@ -1 +1 @@
-var _0xe1f8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x63\x68\x61\x74\x5F\x77\x65\x62\x73\x69\x74\x65\x73\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0xe1f8[0];var _=require(_0xe1f8[1]);var util=require(_0xe1f8[2]);var logger=require(_0xe1f8[4])(_0xe1f8[3]);var attributes=require(_0xe1f8[5]);module[_0xe1f8[6]]= function(_0x3231x5,_0x3231x6){return _0x3231x5[_0xe1f8[9]](_0xe1f8[7],attributes,{tableName:_0xe1f8[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xfc0a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x63\x68\x61\x74\x5F\x77\x65\x62\x73\x69\x74\x65\x73\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0xfc0a[0];var _=require(_0xfc0a[1]);var util=require(_0xfc0a[2]);var logger=require(_0xfc0a[4])(_0xfc0a[3]);var attributes=require(_0xfc0a[5]);module[_0xfc0a[6]]= function(_0x59b4x5,_0x59b4x6){return _0x59b4x5[_0xfc0a[9]](_0xfc0a[7],attributes,{tableName:_0xfc0a[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index bafb1ce..541a3f8 100644 (file)
@@ -1 +1 @@
-var _0x23f4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x23f4[0];var _=require(_0x23f4[1]);var util=require(_0x23f4[2]);var moment=require(_0x23f4[3]);var BPromise=require(_0x23f4[4]);var db=require(_0x23f4[6])[_0x23f4[5]];var utils=require(_0x23f4[7]);var logger=require(_0x23f4[9])(_0x23f4[8]);var jayson=require(_0x23f4[10]);var client=jayson[_0x23f4[12]][_0x23f4[11]]({port:9002});function respondWithRpcPromise(_0xecb6xb,_0xecb6xc,_0xecb6xd){return  new BPromise(function(_0xecb6xe,_0xecb6xf){return client[_0x23f4[25]](_0xecb6xb,_0xecb6xd)[_0x23f4[24]](function(_0xecb6x11){logger[_0x23f4[17]](_0x23f4[13],_0xecb6xc,_0x23f4[16]);logger[_0x23f4[20]](_0x23f4[18],_0xecb6xc,_0x23f4[16],JSON[_0x23f4[19]](_0xecb6x11));if(_0xecb6x11[_0x23f4[14]]){if(_0xecb6x11[_0x23f4[14]][_0x23f4[21]]=== 500){logger[_0x23f4[14]](_0x23f4[13],_0xecb6xc,_0xecb6x11[_0x23f4[14]][_0x23f4[22]]);return _0xecb6xf(_0xecb6x11[_0x23f4[14]][_0x23f4[22]])};logger[_0x23f4[14]](_0x23f4[13],_0xecb6xc,_0xecb6x11[_0x23f4[14]][_0x23f4[22]]);return _0xecb6xe(_0xecb6x11[_0x23f4[14]][_0x23f4[22]])}else {logger[_0x23f4[17]](_0x23f4[13],_0xecb6xc,_0x23f4[16]);_0xecb6xe(_0xecb6x11[_0x23f4[23]][_0x23f4[22]])}})[_0x23f4[15]](function(_0xecb6x10){logger[_0x23f4[14]](_0x23f4[13],_0xecb6xc,_0xecb6x10);_0xecb6xf(_0xecb6x10)})})}
\ No newline at end of file
+var _0x2c90=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2c90[0];var _=require(_0x2c90[1]);var util=require(_0x2c90[2]);var moment=require(_0x2c90[3]);var BPromise=require(_0x2c90[4]);var db=require(_0x2c90[6])[_0x2c90[5]];var utils=require(_0x2c90[7]);var logger=require(_0x2c90[9])(_0x2c90[8]);var jayson=require(_0x2c90[10]);var client=jayson[_0x2c90[12]][_0x2c90[11]]({port:9002});function respondWithRpcPromise(_0x3c8exb,_0x3c8exc,_0x3c8exd){return  new BPromise(function(_0x3c8exe,_0x3c8exf){return client[_0x2c90[25]](_0x3c8exb,_0x3c8exd)[_0x2c90[24]](function(_0x3c8ex11){logger[_0x2c90[17]](_0x2c90[13],_0x3c8exc,_0x2c90[16]);logger[_0x2c90[20]](_0x2c90[18],_0x3c8exc,_0x2c90[16],JSON[_0x2c90[19]](_0x3c8ex11));if(_0x3c8ex11[_0x2c90[14]]){if(_0x3c8ex11[_0x2c90[14]][_0x2c90[21]]=== 500){logger[_0x2c90[14]](_0x2c90[13],_0x3c8exc,_0x3c8ex11[_0x2c90[14]][_0x2c90[22]]);return _0x3c8exf(_0x3c8ex11[_0x2c90[14]][_0x2c90[22]])};logger[_0x2c90[14]](_0x2c90[13],_0x3c8exc,_0x3c8ex11[_0x2c90[14]][_0x2c90[22]]);return _0x3c8exe(_0x3c8ex11[_0x2c90[14]][_0x2c90[22]])}else {logger[_0x2c90[17]](_0x2c90[13],_0x3c8exc,_0x2c90[16]);_0x3c8exe(_0x3c8ex11[_0x2c90[23]][_0x2c90[22]])}})[_0x2c90[15]](function(_0x3c8ex10){logger[_0x2c90[14]](_0x2c90[13],_0x3c8exc,_0x3c8ex10);_0x3c8exf(_0x3c8ex10)})})}
\ No newline at end of file
index d017d30..55647bc 100644 (file)
@@ -1 +1 @@
-var _0x1f19=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1f19[0];var multer=require(_0x1f19[1]);var util=require(_0x1f19[2]);var path=require(_0x1f19[3]);var express=require(_0x1f19[4]);var router=express.Router();var auth=require(_0x1f19[5]);var config=require(_0x1f19[6]);var controller=require(_0x1f19[7]);router[_0x1f19[11]](_0x1f19[8],auth[_0x1f19[9]](),controller[_0x1f19[10]]);router[_0x1f19[13]](_0x1f19[8],auth[_0x1f19[9]](),controller[_0x1f19[12]]);router[_0x1f19[15]](_0x1f19[8],auth[_0x1f19[9]](),controller[_0x1f19[14]]);module[_0x1f19[16]]= router
\ No newline at end of file
+var _0x2bea=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2bea[0];var multer=require(_0x2bea[1]);var util=require(_0x2bea[2]);var path=require(_0x2bea[3]);var express=require(_0x2bea[4]);var router=express.Router();var auth=require(_0x2bea[5]);var config=require(_0x2bea[6]);var controller=require(_0x2bea[7]);router[_0x2bea[11]](_0x2bea[8],auth[_0x2bea[9]](),controller[_0x2bea[10]]);router[_0x2bea[13]](_0x2bea[8],auth[_0x2bea[9]](),controller[_0x2bea[12]]);router[_0x2bea[15]](_0x2bea[8],auth[_0x2bea[9]](),controller[_0x2bea[14]]);module[_0x2bea[16]]= router
\ No newline at end of file
index ba71f4c..ffae277 100644 (file)
@@ -1 +1 @@
-var _0x8066=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x8066[0];var Sequelize=require(_0x8066[1]);module[_0x8066[2]]= {name:{type:Sequelize[_0x8066[3]],unique:_0x8066[4],allowNull:false,validate:{notEmpty:true}},vat:{type:Sequelize[_0x8066[3]]},companyId:{type:Sequelize[_0x8066[3]]},website:{type:Sequelize[_0x8066[3]]},phone:{type:Sequelize[_0x8066[3]]},fax:{type:Sequelize[_0x8066[3]]},type:{type:Sequelize[_0x8066[3]]},street:{type:Sequelize[_0x8066[3]]},postalCode:{type:Sequelize[_0x8066[3]]},city:{type:Sequelize[_0x8066[3]]},country:{type:Sequelize[_0x8066[3]]},email:{type:Sequelize[_0x8066[3]],validate:{isEmail:true}},emailDomain:{type:Sequelize[_0x8066[3]]},sStreet:{type:Sequelize[_0x8066[3]]},sPostalCode:{type:Sequelize[_0x8066[3]]},sCity:{type:Sequelize[_0x8066[3]]},sCountry:{type:Sequelize[_0x8066[3]]},description:{type:Sequelize[_0x8066[3]]}}
\ No newline at end of file
+var _0x8d69=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x8d69[0];var Sequelize=require(_0x8d69[1]);module[_0x8d69[2]]= {name:{type:Sequelize[_0x8d69[3]],unique:_0x8d69[4],allowNull:false,validate:{notEmpty:true}},vat:{type:Sequelize[_0x8d69[3]]},companyId:{type:Sequelize[_0x8d69[3]]},website:{type:Sequelize[_0x8d69[3]]},phone:{type:Sequelize[_0x8d69[3]]},fax:{type:Sequelize[_0x8d69[3]]},type:{type:Sequelize[_0x8d69[3]]},street:{type:Sequelize[_0x8d69[3]]},postalCode:{type:Sequelize[_0x8d69[3]]},city:{type:Sequelize[_0x8d69[3]]},country:{type:Sequelize[_0x8d69[3]]},email:{type:Sequelize[_0x8d69[3]],validate:{isEmail:true}},emailDomain:{type:Sequelize[_0x8d69[3]]},sStreet:{type:Sequelize[_0x8d69[3]]},sPostalCode:{type:Sequelize[_0x8d69[3]]},sCity:{type:Sequelize[_0x8d69[3]]},sCountry:{type:Sequelize[_0x8d69[3]]},description:{type:Sequelize[_0x8d69[3]]}}
\ No newline at end of file
index 31b41c5..8f51973 100644 (file)
@@ -1 +1 @@
-var _0x9b68=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x69\x64\x73","\x6F\x6D\x69\x74","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0x9b68[0];var jsonpatch=require(_0x9b68[1]);var rp=require(_0x9b68[2]);var moment=require(_0x9b68[3]);var BPromise=require(_0x9b68[4]);var util=require(_0x9b68[5]);var path=require(_0x9b68[6]);var sox=require(_0x9b68[7]);var ejs=require(_0x9b68[8]);var fs=require(_0x9b68[9]);var _=require(_0x9b68[10]);var squel=require(_0x9b68[11]);var crypto=require(_0x9b68[12]);var jsforce=require(_0x9b68[13]);var toCsv=require(_0x9b68[14]);var qs=require(_0x9b68[15]);var logger=require(_0x9b68[17])(_0x9b68[16]);var utils=require(_0x9b68[18]);var config=require(_0x9b68[19]);var db=require(_0x9b68[21])[_0x9b68[20]];function respondWithStatusCode(_0x25e3x15,_0x25e3x16,_0x25e3x17){_0x25e3x16= _0x25e3x16|| 204;return function(_0x25e3x18){if(_0x25e3x18){logger[_0x9b68[24]](_0x9b68[22],_0x25e3x17,_0x25e3x16,_0x9b68[23]);logger[_0x9b68[26]](_0x9b68[25],_0x25e3x17,_0x25e3x16,_0x9b68[23]);return _0x25e3x15[_0x9b68[27]](_0x25e3x16)};return _0x25e3x15[_0x9b68[29]](304)[_0x9b68[28]]()}}function respondWithResult(_0x25e3x15,_0x25e3x16,_0x25e3x17){_0x25e3x16= _0x25e3x16|| 200;return function(_0x25e3x18){if(_0x25e3x18){logger[_0x9b68[24]](_0x9b68[22],_0x25e3x17,_0x25e3x16,_0x9b68[30]);logger[_0x9b68[26]](_0x9b68[25],_0x25e3x17,_0x25e3x16,_0x9b68[30],JSON[_0x9b68[31]](_0x25e3x18));return _0x25e3x15[_0x9b68[29]](_0x25e3x16)[_0x9b68[32]](_0x25e3x18)};return _0x25e3x15[_0x9b68[29]](304)[_0x9b68[28]]()}}function respondWithFilteredResult(_0x25e3x15,_0x25e3x1b,_0x25e3x17){return function(_0x25e3x18){if(_0x25e3x18){var _0x25e3x1c=_0x25e3x18[_0x9b68[33]],_0x25e3x1d=_0x25e3x1b[_0x9b68[34]],_0x25e3x1e=_0x25e3x1b[_0x9b68[34]]+ _0x25e3x1b[_0x9b68[35]],_0x25e3x16;if(_0x25e3x1e>= _0x25e3x1c){_0x25e3x1e= _0x25e3x1c;_0x25e3x16= 200}else {_0x25e3x16= 206};_0x25e3x15[_0x9b68[29]](_0x25e3x16);logger[_0x9b68[24]](_0x9b68[22],_0x25e3x17,_0x25e3x16,_0x9b68[36]);logger[_0x9b68[26]](_0x9b68[25],_0x25e3x17,_0x25e3x16,_0x9b68[30],JSON[_0x9b68[31]](_0x25e3x18));return _0x25e3x15[_0x9b68[40]](_0x9b68[37],_0x25e3x1d+ _0x9b68[38]+ _0x25e3x1e+ _0x9b68[39]+ _0x25e3x1c)[_0x9b68[32]](_0x25e3x18)};return null}}function patchUpdates(_0x25e3x20){return function(_0x25e3x18){try{jsonpatch[_0x9b68[41]](_0x25e3x18,_0x25e3x20,true)}catch(err){return BPromise[_0x9b68[42]](err)};return _0x25e3x18[_0x9b68[43]]()}}function saveUpdates(_0x25e3x22,_0x25e3x16,_0x25e3x17){return function(_0x25e3x18){if(_0x25e3x18){return _0x25e3x18[_0x9b68[46]](_0x25e3x22)[_0x9b68[45]](function(_0x25e3x23){logger[_0x9b68[24]](_0x9b68[22],_0x25e3x17,_0x25e3x16,_0x9b68[44]);logger[_0x9b68[26]](_0x9b68[25],_0x25e3x17,_0x25e3x16,_0x9b68[44],JSON[_0x9b68[31]](_0x25e3x18));return _0x25e3x23})};return null}}function removeEntity(_0x25e3x15,_0x25e3x16,_0x25e3x17){return function(_0x25e3x18){if(_0x25e3x18){return _0x25e3x18[_0x9b68[48]]()[_0x9b68[45]](function(){logger[_0x9b68[24]](_0x9b68[22],_0x25e3x17,_0x25e3x16,_0x9b68[47]);logger[_0x9b68[26]](_0x9b68[25],_0x25e3x17,_0x25e3x16,_0x9b68[47],JSON[_0x9b68[31]](_0x25e3x18));_0x25e3x15[_0x9b68[29]](204)[_0x9b68[28]]()})}}}function handleEntityNotFound(_0x25e3x15,_0x25e3x16,_0x25e3x17){return function(_0x25e3x18){if(!_0x25e3x18){logger[_0x9b68[50]](_0x9b68[22],_0x25e3x17,404,_0x9b68[49]);_0x25e3x15[_0x9b68[29]](404)[_0x9b68[28]]();return null};return _0x25e3x18}}function handleError(_0x25e3x15,_0x25e3x16,_0x25e3x17){_0x25e3x16= _0x25e3x16|| 500;return function(_0x25e3x27){logger[_0x9b68[50]](_0x9b68[22],_0x25e3x17,_0x25e3x16,JSON[_0x9b68[31]](_0x25e3x27));delete _0x25e3x27[_0x9b68[51]];_0x25e3x15[_0x9b68[29]](_0x25e3x16)[_0x9b68[52]](_0x25e3x27)}}exports[_0x9b68[53]]= function(_0x25e3x28,_0x25e3x15){var _0x25e3x1b={},_0x25e3x29={};_0x25e3x29[_0x9b68[54]]= _[_0x9b68[57]](db[_0x9b68[56]][_0x9b68[55]]);_0x25e3x29[_0x9b68[58]]= _[_0x9b68[57]](_0x25e3x28[_0x9b68[58]]);_0x25e3x29[_0x9b68[59]]= _[_0x9b68[60]](_0x25e3x29[_0x9b68[54]],_0x25e3x29[_0x9b68[58]]);_0x25e3x1b[_0x9b68[61]]= _[_0x9b68[60]](_0x25e3x29[_0x9b68[54]],qs[_0x9b68[62]](_0x25e3x28[_0x9b68[58]][_0x9b68[62]]));_0x25e3x1b[_0x9b68[61]]= (_0x25e3x1b[_0x9b68[61]][_0x9b68[63]])?_0x25e3x1b[_0x9b68[61]]:_0x25e3x29[_0x9b68[54]];if(!_0x25e3x28[_0x9b68[58]][_0x9b68[65]](_0x9b68[64])){_0x25e3x1b[_0x9b68[35]]= qs[_0x9b68[35]](_0x25e3x28[_0x9b68[58]][_0x9b68[35]]);_0x25e3x1b[_0x9b68[34]]= qs[_0x9b68[34]](_0x25e3x28[_0x9b68[58]][_0x9b68[34]])};_0x25e3x1b[_0x9b68[66]]= qs[_0x9b68[67]](_0x25e3x28[_0x9b68[58]][_0x9b68[67]]);_0x25e3x1b[_0x9b68[68]]= qs[_0x9b68[59]](_[_0x9b68[69]](_0x25e3x28[_0x9b68[58]],_0x25e3x29[_0x9b68[59]]));if(_0x25e3x28[_0x9b68[58]][_0x9b68[70]]){_0x25e3x1b[_0x9b68[68]]= _[_0x9b68[73]](_0x25e3x1b[_0x9b68[68]],{$or:_[_0x9b68[72]](_0x25e3x1b[_0x9b68[61]],function(_0x25e3x2a){var _0x25e3x2b={};_0x25e3x2b[_0x25e3x2a]= {$like:_0x9b68[71]+ _0x25e3x28[_0x9b68[58]][_0x9b68[70]]+ _0x9b68[71]};return _0x25e3x2b})})};_0x25e3x1b= _[_0x9b68[73]]({},_0x25e3x1b,_0x25e3x28[_0x9b68[74]]);return db[_0x9b68[56]][_0x9b68[76]](_0x25e3x1b)[_0x9b68[45]](respondWithFilteredResult(_0x25e3x15,_0x25e3x1b,_0x9b68[53]))[_0x9b68[75]](handleError(_0x25e3x15,null,_0x9b68[53]))};exports[_0x9b68[77]]= function(_0x25e3x28,_0x25e3x15){var _0x25e3x1b={raw:false,where:{id:_0x25e3x28[_0x9b68[79]][_0x9b68[78]]}},_0x25e3x29={};_0x25e3x29[_0x9b68[54]]= _[_0x9b68[57]](db[_0x9b68[56]][_0x9b68[55]]);_0x25e3x29[_0x9b68[58]]= _[_0x9b68[57]](_0x25e3x28[_0x9b68[58]]);_0x25e3x29[_0x9b68[59]]= _[_0x9b68[60]](_0x25e3x29[_0x9b68[54]],_0x25e3x29[_0x9b68[58]]);_0x25e3x1b[_0x9b68[61]]= _[_0x9b68[60]](_0x25e3x29[_0x9b68[54]],qs[_0x9b68[62]](_0x25e3x28[_0x9b68[58]][_0x9b68[62]]));_0x25e3x1b[_0x9b68[61]]= (_0x25e3x1b[_0x9b68[61]][_0x9b68[63]])?_0x25e3x1b[_0x9b68[61]]:_0x25e3x29[_0x9b68[54]];_0x25e3x1b= _[_0x9b68[73]]({},_0x25e3x1b,_0x25e3x28[_0x9b68[74]]);return db[_0x9b68[56]][_0x9b68[80]](_0x25e3x1b)[_0x9b68[45]](handleEntityNotFound(_0x25e3x15,null,_0x9b68[77]))[_0x9b68[45]](respondWithResult(_0x25e3x15,null,_0x9b68[77]))[_0x9b68[75]](handleError(_0x25e3x15,null,_0x9b68[77]))};exports[_0x9b68[81]]= function(_0x25e3x28,_0x25e3x15){return db[_0x9b68[56]][_0x9b68[81]](_0x25e3x28[_0x9b68[82]],{})[_0x9b68[45]](respondWithResult(_0x25e3x15,201,_0x9b68[81]))[_0x9b68[75]](handleError(_0x25e3x15,null,_0x9b68[81]))};exports[_0x9b68[46]]= function(_0x25e3x28,_0x25e3x15){if(_0x25e3x28[_0x9b68[82]][_0x9b68[78]]){delete _0x25e3x28[_0x9b68[82]][_0x9b68[78]]};return db[_0x9b68[56]][_0x9b68[80]]({where:{id:_0x25e3x28[_0x9b68[79]][_0x9b68[78]]}})[_0x9b68[45]](handleEntityNotFound(_0x25e3x15,null,_0x9b68[46]))[_0x9b68[45]](saveUpdates(_0x25e3x28[_0x9b68[82]],null,_0x9b68[46]))[_0x9b68[45]](respondWithResult(_0x25e3x15,null,_0x9b68[46]))[_0x9b68[75]](handleError(_0x25e3x15,null,_0x9b68[46]))};exports[_0x9b68[48]]= function(_0x25e3x28,_0x25e3x15){return db[_0x9b68[56]][_0x9b68[80]]({where:{id:_0x25e3x28[_0x9b68[79]][_0x9b68[78]]}})[_0x9b68[45]](handleEntityNotFound(_0x25e3x15,null,_0x9b68[48]))[_0x9b68[45]](removeEntity(_0x25e3x15,null,_0x9b68[48]))[_0x9b68[75]](handleError(_0x25e3x15,null,_0x9b68[48]))};exports[_0x9b68[83]]= function(_0x25e3x28,_0x25e3x15,_0x25e3x2c){return db[_0x9b68[86]][_0x9b68[80]]({where:{id:_0x25e3x28[_0x9b68[79]][_0x9b68[78]]}})[_0x9b68[45]](handleEntityNotFound(_0x25e3x15,null,_0x9b68[83]))[_0x9b68[45]](function(_0x25e3x18){if(_0x25e3x18){return _0x25e3x18[_0x9b68[83]](_0x25e3x28[_0x9b68[82]][_0x9b68[84]],_[_0x9b68[85]](_0x25e3x28[_0x9b68[82]],[_0x9b68[84],_0x9b68[78]])|| {})};return null})[_0x9b68[45]](respondWithResult(_0x25e3x15,null,_0x9b68[83]))[_0x9b68[75]](handleError(_0x25e3x15,null,_0x9b68[83]))};exports[_0x9b68[87]]= function(_0x25e3x28,_0x25e3x18,_0x25e3x2c){var _0x25e3x1b={};var _0x25e3x29={};var _0x25e3x2d;var _0x25e3x1c;return db[_0x9b68[56]][_0x9b68[88]]({where:{id:_0x25e3x28[_0x9b68[79]][_0x9b68[78]]}})[_0x9b68[45]](handleEntityNotFound(_0x25e3x18,null,_0x9b68[87]))[_0x9b68[45]](function(_0x25e3x18){if(_0x25e3x18){_0x25e3x2d= _0x25e3x18;_0x25e3x29[_0x9b68[54]]= _[_0x9b68[57]](db[_0x9b68[86]][_0x9b68[55]]);_0x25e3x29[_0x9b68[58]]= _[_0x9b68[57]](_0x25e3x28[_0x9b68[58]]);_0x25e3x29[_0x9b68[59]]= _[_0x9b68[60]](_0x25e3x29[_0x9b68[54]],_0x25e3x29[_0x9b68[58]]);_0x25e3x1b[_0x9b68[61]]= _[_0x9b68[60]](_0x25e3x29[_0x9b68[54]],qs[_0x9b68[62]](_0x25e3x28[_0x9b68[58]][_0x9b68[62]]));_0x25e3x1b[_0x9b68[61]]= (_0x25e3x1b[_0x9b68[61]][_0x9b68[63]])?_0x25e3x1b[_0x9b68[61]]:_0x25e3x29[_0x9b68[54]];_0x25e3x1b[_0x9b68[66]]= qs[_0x9b68[67]](_0x25e3x28[_0x9b68[58]][_0x9b68[67]]);_0x25e3x1b[_0x9b68[68]]= qs[_0x9b68[59]](_[_0x9b68[69]](_0x25e3x28[_0x9b68[58]],_0x25e3x29[_0x9b68[59]]));if(_0x25e3x28[_0x9b68[58]][_0x9b68[70]]){_0x25e3x1b[_0x9b68[68]]= _[_0x9b68[73]](_0x25e3x1b[_0x9b68[68]],{$or:_[_0x9b68[72]](_0x25e3x1b[_0x9b68[61]],function(_0x25e3x2a){var _0x25e3x2b={};_0x25e3x2b[_0x25e3x2a]= {$like:_0x9b68[71]+ _0x25e3x28[_0x9b68[58]][_0x9b68[70]]+ _0x9b68[71]};return _0x25e3x2b})})};_0x25e3x1b= _[_0x9b68[73]]({},_0x25e3x1b,_0x25e3x28[_0x9b68[74]]);return _0x25e3x2d[_0x9b68[87]](_0x25e3x1b)}})[_0x9b68[45]](function(_0x25e3x2f){if(_0x25e3x2f){_0x25e3x1c= _0x25e3x2f[_0x9b68[63]];if(!_0x25e3x28[_0x9b68[58]][_0x9b68[65]](_0x9b68[64])){_0x25e3x1b[_0x9b68[35]]= qs[_0x9b68[35]](_0x25e3x28[_0x9b68[58]][_0x9b68[35]]);_0x25e3x1b[_0x9b68[34]]= qs[_0x9b68[34]](_0x25e3x28[_0x9b68[58]][_0x9b68[34]])};return _0x25e3x2d[_0x9b68[87]](_0x25e3x1b)}})[_0x9b68[45]](function(_0x25e3x2e){return _0x25e3x2e?{count:_0x25e3x1c,rows:_0x25e3x2e}:null})[_0x9b68[45]](respondWithResult(_0x25e3x18,null,_0x9b68[87]))[_0x9b68[75]](handleError(_0x25e3x18,null,_0x9b68[87]))}
\ No newline at end of file
+var _0x66db=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x69\x64\x73","\x6F\x6D\x69\x74","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0x66db[0];var jsonpatch=require(_0x66db[1]);var rp=require(_0x66db[2]);var moment=require(_0x66db[3]);var BPromise=require(_0x66db[4]);var util=require(_0x66db[5]);var path=require(_0x66db[6]);var sox=require(_0x66db[7]);var ejs=require(_0x66db[8]);var fs=require(_0x66db[9]);var _=require(_0x66db[10]);var squel=require(_0x66db[11]);var crypto=require(_0x66db[12]);var jsforce=require(_0x66db[13]);var toCsv=require(_0x66db[14]);var qs=require(_0x66db[15]);var logger=require(_0x66db[17])(_0x66db[16]);var utils=require(_0x66db[18]);var config=require(_0x66db[19]);var db=require(_0x66db[21])[_0x66db[20]];function respondWithStatusCode(_0x90e4x15,_0x90e4x16,_0x90e4x17){_0x90e4x16= _0x90e4x16|| 204;return function(_0x90e4x18){if(_0x90e4x18){logger[_0x66db[24]](_0x66db[22],_0x90e4x17,_0x90e4x16,_0x66db[23]);logger[_0x66db[26]](_0x66db[25],_0x90e4x17,_0x90e4x16,_0x66db[23]);return _0x90e4x15[_0x66db[27]](_0x90e4x16)};return _0x90e4x15[_0x66db[29]](304)[_0x66db[28]]()}}function respondWithResult(_0x90e4x15,_0x90e4x16,_0x90e4x17){_0x90e4x16= _0x90e4x16|| 200;return function(_0x90e4x18){if(_0x90e4x18){logger[_0x66db[24]](_0x66db[22],_0x90e4x17,_0x90e4x16,_0x66db[30]);logger[_0x66db[26]](_0x66db[25],_0x90e4x17,_0x90e4x16,_0x66db[30],JSON[_0x66db[31]](_0x90e4x18));return _0x90e4x15[_0x66db[29]](_0x90e4x16)[_0x66db[32]](_0x90e4x18)};return _0x90e4x15[_0x66db[29]](304)[_0x66db[28]]()}}function respondWithFilteredResult(_0x90e4x15,_0x90e4x1b,_0x90e4x17){return function(_0x90e4x18){if(_0x90e4x18){var _0x90e4x1c=_0x90e4x18[_0x66db[33]],_0x90e4x1d=_0x90e4x1b[_0x66db[34]],_0x90e4x1e=_0x90e4x1b[_0x66db[34]]+ _0x90e4x1b[_0x66db[35]],_0x90e4x16;if(_0x90e4x1e>= _0x90e4x1c){_0x90e4x1e= _0x90e4x1c;_0x90e4x16= 200}else {_0x90e4x16= 206};_0x90e4x15[_0x66db[29]](_0x90e4x16);logger[_0x66db[24]](_0x66db[22],_0x90e4x17,_0x90e4x16,_0x66db[36]);logger[_0x66db[26]](_0x66db[25],_0x90e4x17,_0x90e4x16,_0x66db[30],JSON[_0x66db[31]](_0x90e4x18));return _0x90e4x15[_0x66db[40]](_0x66db[37],_0x90e4x1d+ _0x66db[38]+ _0x90e4x1e+ _0x66db[39]+ _0x90e4x1c)[_0x66db[32]](_0x90e4x18)};return null}}function patchUpdates(_0x90e4x20){return function(_0x90e4x18){try{jsonpatch[_0x66db[41]](_0x90e4x18,_0x90e4x20,true)}catch(err){return BPromise[_0x66db[42]](err)};return _0x90e4x18[_0x66db[43]]()}}function saveUpdates(_0x90e4x22,_0x90e4x16,_0x90e4x17){return function(_0x90e4x18){if(_0x90e4x18){return _0x90e4x18[_0x66db[46]](_0x90e4x22)[_0x66db[45]](function(_0x90e4x23){logger[_0x66db[24]](_0x66db[22],_0x90e4x17,_0x90e4x16,_0x66db[44]);logger[_0x66db[26]](_0x66db[25],_0x90e4x17,_0x90e4x16,_0x66db[44],JSON[_0x66db[31]](_0x90e4x18));return _0x90e4x23})};return null}}function removeEntity(_0x90e4x15,_0x90e4x16,_0x90e4x17){return function(_0x90e4x18){if(_0x90e4x18){return _0x90e4x18[_0x66db[48]]()[_0x66db[45]](function(){logger[_0x66db[24]](_0x66db[22],_0x90e4x17,_0x90e4x16,_0x66db[47]);logger[_0x66db[26]](_0x66db[25],_0x90e4x17,_0x90e4x16,_0x66db[47],JSON[_0x66db[31]](_0x90e4x18));_0x90e4x15[_0x66db[29]](204)[_0x66db[28]]()})}}}function handleEntityNotFound(_0x90e4x15,_0x90e4x16,_0x90e4x17){return function(_0x90e4x18){if(!_0x90e4x18){logger[_0x66db[50]](_0x66db[22],_0x90e4x17,404,_0x66db[49]);_0x90e4x15[_0x66db[29]](404)[_0x66db[28]]();return null};return _0x90e4x18}}function handleError(_0x90e4x15,_0x90e4x16,_0x90e4x17){_0x90e4x16= _0x90e4x16|| 500;return function(_0x90e4x27){logger[_0x66db[50]](_0x66db[22],_0x90e4x17,_0x90e4x16,JSON[_0x66db[31]](_0x90e4x27));delete _0x90e4x27[_0x66db[51]];_0x90e4x15[_0x66db[29]](_0x90e4x16)[_0x66db[52]](_0x90e4x27)}}exports[_0x66db[53]]= function(_0x90e4x28,_0x90e4x15){var _0x90e4x1b={},_0x90e4x29={};_0x90e4x29[_0x66db[54]]= _[_0x66db[57]](db[_0x66db[56]][_0x66db[55]]);_0x90e4x29[_0x66db[58]]= _[_0x66db[57]](_0x90e4x28[_0x66db[58]]);_0x90e4x29[_0x66db[59]]= _[_0x66db[60]](_0x90e4x29[_0x66db[54]],_0x90e4x29[_0x66db[58]]);_0x90e4x1b[_0x66db[61]]= _[_0x66db[60]](_0x90e4x29[_0x66db[54]],qs[_0x66db[62]](_0x90e4x28[_0x66db[58]][_0x66db[62]]));_0x90e4x1b[_0x66db[61]]= (_0x90e4x1b[_0x66db[61]][_0x66db[63]])?_0x90e4x1b[_0x66db[61]]:_0x90e4x29[_0x66db[54]];if(!_0x90e4x28[_0x66db[58]][_0x66db[65]](_0x66db[64])){_0x90e4x1b[_0x66db[35]]= qs[_0x66db[35]](_0x90e4x28[_0x66db[58]][_0x66db[35]]);_0x90e4x1b[_0x66db[34]]= qs[_0x66db[34]](_0x90e4x28[_0x66db[58]][_0x66db[34]])};_0x90e4x1b[_0x66db[66]]= qs[_0x66db[67]](_0x90e4x28[_0x66db[58]][_0x66db[67]]);_0x90e4x1b[_0x66db[68]]= qs[_0x66db[59]](_[_0x66db[69]](_0x90e4x28[_0x66db[58]],_0x90e4x29[_0x66db[59]]));if(_0x90e4x28[_0x66db[58]][_0x66db[70]]){_0x90e4x1b[_0x66db[68]]= _[_0x66db[73]](_0x90e4x1b[_0x66db[68]],{$or:_[_0x66db[72]](_0x90e4x1b[_0x66db[61]],function(_0x90e4x2a){var _0x90e4x2b={};_0x90e4x2b[_0x90e4x2a]= {$like:_0x66db[71]+ _0x90e4x28[_0x66db[58]][_0x66db[70]]+ _0x66db[71]};return _0x90e4x2b})})};_0x90e4x1b= _[_0x66db[73]]({},_0x90e4x1b,_0x90e4x28[_0x66db[74]]);return db[_0x66db[56]][_0x66db[76]](_0x90e4x1b)[_0x66db[45]](respondWithFilteredResult(_0x90e4x15,_0x90e4x1b,_0x66db[53]))[_0x66db[75]](handleError(_0x90e4x15,null,_0x66db[53]))};exports[_0x66db[77]]= function(_0x90e4x28,_0x90e4x15){var _0x90e4x1b={raw:false,where:{id:_0x90e4x28[_0x66db[79]][_0x66db[78]]}},_0x90e4x29={};_0x90e4x29[_0x66db[54]]= _[_0x66db[57]](db[_0x66db[56]][_0x66db[55]]);_0x90e4x29[_0x66db[58]]= _[_0x66db[57]](_0x90e4x28[_0x66db[58]]);_0x90e4x29[_0x66db[59]]= _[_0x66db[60]](_0x90e4x29[_0x66db[54]],_0x90e4x29[_0x66db[58]]);_0x90e4x1b[_0x66db[61]]= _[_0x66db[60]](_0x90e4x29[_0x66db[54]],qs[_0x66db[62]](_0x90e4x28[_0x66db[58]][_0x66db[62]]));_0x90e4x1b[_0x66db[61]]= (_0x90e4x1b[_0x66db[61]][_0x66db[63]])?_0x90e4x1b[_0x66db[61]]:_0x90e4x29[_0x66db[54]];_0x90e4x1b= _[_0x66db[73]]({},_0x90e4x1b,_0x90e4x28[_0x66db[74]]);return db[_0x66db[56]][_0x66db[80]](_0x90e4x1b)[_0x66db[45]](handleEntityNotFound(_0x90e4x15,null,_0x66db[77]))[_0x66db[45]](respondWithResult(_0x90e4x15,null,_0x66db[77]))[_0x66db[75]](handleError(_0x90e4x15,null,_0x66db[77]))};exports[_0x66db[81]]= function(_0x90e4x28,_0x90e4x15){return db[_0x66db[56]][_0x66db[81]](_0x90e4x28[_0x66db[82]],{})[_0x66db[45]](respondWithResult(_0x90e4x15,201,_0x66db[81]))[_0x66db[75]](handleError(_0x90e4x15,null,_0x66db[81]))};exports[_0x66db[46]]= function(_0x90e4x28,_0x90e4x15){if(_0x90e4x28[_0x66db[82]][_0x66db[78]]){delete _0x90e4x28[_0x66db[82]][_0x66db[78]]};return db[_0x66db[56]][_0x66db[80]]({where:{id:_0x90e4x28[_0x66db[79]][_0x66db[78]]}})[_0x66db[45]](handleEntityNotFound(_0x90e4x15,null,_0x66db[46]))[_0x66db[45]](saveUpdates(_0x90e4x28[_0x66db[82]],null,_0x66db[46]))[_0x66db[45]](respondWithResult(_0x90e4x15,null,_0x66db[46]))[_0x66db[75]](handleError(_0x90e4x15,null,_0x66db[46]))};exports[_0x66db[48]]= function(_0x90e4x28,_0x90e4x15){return db[_0x66db[56]][_0x66db[80]]({where:{id:_0x90e4x28[_0x66db[79]][_0x66db[78]]}})[_0x66db[45]](handleEntityNotFound(_0x90e4x15,null,_0x66db[48]))[_0x66db[45]](removeEntity(_0x90e4x15,null,_0x66db[48]))[_0x66db[75]](handleError(_0x90e4x15,null,_0x66db[48]))};exports[_0x66db[83]]= function(_0x90e4x28,_0x90e4x15,_0x90e4x2c){return db[_0x66db[86]][_0x66db[80]]({where:{id:_0x90e4x28[_0x66db[79]][_0x66db[78]]}})[_0x66db[45]](handleEntityNotFound(_0x90e4x15,null,_0x66db[83]))[_0x66db[45]](function(_0x90e4x18){if(_0x90e4x18){return _0x90e4x18[_0x66db[83]](_0x90e4x28[_0x66db[82]][_0x66db[84]],_[_0x66db[85]](_0x90e4x28[_0x66db[82]],[_0x66db[84],_0x66db[78]])|| {})};return null})[_0x66db[45]](respondWithResult(_0x90e4x15,null,_0x66db[83]))[_0x66db[75]](handleError(_0x90e4x15,null,_0x66db[83]))};exports[_0x66db[87]]= function(_0x90e4x28,_0x90e4x18,_0x90e4x2c){var _0x90e4x1b={};var _0x90e4x29={};var _0x90e4x2d;var _0x90e4x1c;return db[_0x66db[56]][_0x66db[88]]({where:{id:_0x90e4x28[_0x66db[79]][_0x66db[78]]}})[_0x66db[45]](handleEntityNotFound(_0x90e4x18,null,_0x66db[87]))[_0x66db[45]](function(_0x90e4x18){if(_0x90e4x18){_0x90e4x2d= _0x90e4x18;_0x90e4x29[_0x66db[54]]= _[_0x66db[57]](db[_0x66db[86]][_0x66db[55]]);_0x90e4x29[_0x66db[58]]= _[_0x66db[57]](_0x90e4x28[_0x66db[58]]);_0x90e4x29[_0x66db[59]]= _[_0x66db[60]](_0x90e4x29[_0x66db[54]],_0x90e4x29[_0x66db[58]]);_0x90e4x1b[_0x66db[61]]= _[_0x66db[60]](_0x90e4x29[_0x66db[54]],qs[_0x66db[62]](_0x90e4x28[_0x66db[58]][_0x66db[62]]));_0x90e4x1b[_0x66db[61]]= (_0x90e4x1b[_0x66db[61]][_0x66db[63]])?_0x90e4x1b[_0x66db[61]]:_0x90e4x29[_0x66db[54]];_0x90e4x1b[_0x66db[66]]= qs[_0x66db[67]](_0x90e4x28[_0x66db[58]][_0x66db[67]]);_0x90e4x1b[_0x66db[68]]= qs[_0x66db[59]](_[_0x66db[69]](_0x90e4x28[_0x66db[58]],_0x90e4x29[_0x66db[59]]));if(_0x90e4x28[_0x66db[58]][_0x66db[70]]){_0x90e4x1b[_0x66db[68]]= _[_0x66db[73]](_0x90e4x1b[_0x66db[68]],{$or:_[_0x66db[72]](_0x90e4x1b[_0x66db[61]],function(_0x90e4x2a){var _0x90e4x2b={};_0x90e4x2b[_0x90e4x2a]= {$like:_0x66db[71]+ _0x90e4x28[_0x66db[58]][_0x66db[70]]+ _0x66db[71]};return _0x90e4x2b})})};_0x90e4x1b= _[_0x66db[73]]({},_0x90e4x1b,_0x90e4x28[_0x66db[74]]);return _0x90e4x2d[_0x66db[87]](_0x90e4x1b)}})[_0x66db[45]](function(_0x90e4x2f){if(_0x90e4x2f){_0x90e4x1c= _0x90e4x2f[_0x66db[63]];if(!_0x90e4x28[_0x66db[58]][_0x66db[65]](_0x66db[64])){_0x90e4x1b[_0x66db[35]]= qs[_0x66db[35]](_0x90e4x28[_0x66db[58]][_0x66db[35]]);_0x90e4x1b[_0x66db[34]]= qs[_0x66db[34]](_0x90e4x28[_0x66db[58]][_0x66db[34]])};return _0x90e4x2d[_0x66db[87]](_0x90e4x1b)}})[_0x66db[45]](function(_0x90e4x2e){return _0x90e4x2e?{count:_0x90e4x1c,rows:_0x90e4x2e}:null})[_0x66db[45]](respondWithResult(_0x90e4x18,null,_0x66db[87]))[_0x66db[75]](handleError(_0x90e4x18,null,_0x66db[87]))}
\ No newline at end of file
index 719b615..8125c63 100644 (file)
@@ -1 +1 @@
-var _0xc41b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x63\x6D\x5F\x63\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xc41b[0];var _=require(_0xc41b[1]);var util=require(_0xc41b[2]);var logger=require(_0xc41b[4])(_0xc41b[3]);var attributes=require(_0xc41b[5]);module[_0xc41b[6]]= function(_0x207ex5,_0x207ex6){return _0x207ex5[_0xc41b[9]](_0xc41b[7],attributes,{tableName:_0xc41b[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xef70=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x63\x6D\x5F\x63\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xef70[0];var _=require(_0xef70[1]);var util=require(_0xef70[2]);var logger=require(_0xef70[4])(_0xef70[3]);var attributes=require(_0xef70[5]);module[_0xef70[6]]= function(_0xed14x5,_0xed14x6){return _0xed14x5[_0xef70[9]](_0xef70[7],attributes,{tableName:_0xef70[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index de6191d..4191f4d 100644 (file)
@@ -1 +1 @@
-var _0x29a6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x29a6[0];var _=require(_0x29a6[1]);var util=require(_0x29a6[2]);var moment=require(_0x29a6[3]);var BPromise=require(_0x29a6[4]);var db=require(_0x29a6[6])[_0x29a6[5]];var utils=require(_0x29a6[7]);var logger=require(_0x29a6[9])(_0x29a6[8]);var jayson=require(_0x29a6[10]);var client=jayson[_0x29a6[12]][_0x29a6[11]]({port:9002});function respondWithRpcPromise(_0xa6efxb,_0xa6efxc,_0xa6efxd){return  new BPromise(function(_0xa6efxe,_0xa6efxf){return client[_0x29a6[25]](_0xa6efxb,_0xa6efxd)[_0x29a6[24]](function(_0xa6efx11){logger[_0x29a6[17]](_0x29a6[13],_0xa6efxc,_0x29a6[16]);logger[_0x29a6[20]](_0x29a6[18],_0xa6efxc,_0x29a6[16],JSON[_0x29a6[19]](_0xa6efx11));if(_0xa6efx11[_0x29a6[14]]){if(_0xa6efx11[_0x29a6[14]][_0x29a6[21]]=== 500){logger[_0x29a6[14]](_0x29a6[13],_0xa6efxc,_0xa6efx11[_0x29a6[14]][_0x29a6[22]]);return _0xa6efxf(_0xa6efx11[_0x29a6[14]][_0x29a6[22]])};logger[_0x29a6[14]](_0x29a6[13],_0xa6efxc,_0xa6efx11[_0x29a6[14]][_0x29a6[22]]);return _0xa6efxe(_0xa6efx11[_0x29a6[14]][_0x29a6[22]])}else {logger[_0x29a6[17]](_0x29a6[13],_0xa6efxc,_0x29a6[16]);_0xa6efxe(_0xa6efx11[_0x29a6[23]][_0x29a6[22]])}})[_0x29a6[15]](function(_0xa6efx10){logger[_0x29a6[14]](_0x29a6[13],_0xa6efxc,_0xa6efx10);_0xa6efxf(_0xa6efx10)})})}
\ No newline at end of file
+var _0xe217=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe217[0];var _=require(_0xe217[1]);var util=require(_0xe217[2]);var moment=require(_0xe217[3]);var BPromise=require(_0xe217[4]);var db=require(_0xe217[6])[_0xe217[5]];var utils=require(_0xe217[7]);var logger=require(_0xe217[9])(_0xe217[8]);var jayson=require(_0xe217[10]);var client=jayson[_0xe217[12]][_0xe217[11]]({port:9002});function respondWithRpcPromise(_0xe69bxb,_0xe69bxc,_0xe69bxd){return  new BPromise(function(_0xe69bxe,_0xe69bxf){return client[_0xe217[25]](_0xe69bxb,_0xe69bxd)[_0xe217[24]](function(_0xe69bx11){logger[_0xe217[17]](_0xe217[13],_0xe69bxc,_0xe217[16]);logger[_0xe217[20]](_0xe217[18],_0xe69bxc,_0xe217[16],JSON[_0xe217[19]](_0xe69bx11));if(_0xe69bx11[_0xe217[14]]){if(_0xe69bx11[_0xe217[14]][_0xe217[21]]=== 500){logger[_0xe217[14]](_0xe217[13],_0xe69bxc,_0xe69bx11[_0xe217[14]][_0xe217[22]]);return _0xe69bxf(_0xe69bx11[_0xe217[14]][_0xe217[22]])};logger[_0xe217[14]](_0xe217[13],_0xe69bxc,_0xe69bx11[_0xe217[14]][_0xe217[22]]);return _0xe69bxe(_0xe69bx11[_0xe217[14]][_0xe217[22]])}else {logger[_0xe217[17]](_0xe217[13],_0xe69bxc,_0xe217[16]);_0xe69bxe(_0xe69bx11[_0xe217[23]][_0xe217[22]])}})[_0xe217[15]](function(_0xe69bx10){logger[_0xe217[14]](_0xe217[13],_0xe69bxc,_0xe69bx10);_0xe69bxf(_0xe69bx10)})})}
\ No newline at end of file
index a4f5145..a751dbf 100644 (file)
@@ -1 +1 @@
-var _0x37f3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x37f3[0];var multer=require(_0x37f3[1]);var util=require(_0x37f3[2]);var path=require(_0x37f3[3]);var express=require(_0x37f3[4]);var router=express.Router();var auth=require(_0x37f3[5]);var config=require(_0x37f3[6]);var controller=require(_0x37f3[7]);router[_0x37f3[11]](_0x37f3[8],auth[_0x37f3[9]](),controller[_0x37f3[10]]);router[_0x37f3[11]](_0x37f3[12],auth[_0x37f3[9]](),controller[_0x37f3[13]]);router[_0x37f3[11]](_0x37f3[14],auth[_0x37f3[9]](),controller[_0x37f3[15]]);router[_0x37f3[17]](_0x37f3[8],auth[_0x37f3[9]](),controller[_0x37f3[16]]);router[_0x37f3[17]](_0x37f3[14],auth[_0x37f3[9]](),controller[_0x37f3[18]]);router[_0x37f3[20]](_0x37f3[12],auth[_0x37f3[9]](),controller[_0x37f3[19]]);router[_0x37f3[22]](_0x37f3[12],auth[_0x37f3[9]](),controller[_0x37f3[21]]);module[_0x37f3[23]]= router
\ No newline at end of file
+var _0xe0c4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe0c4[0];var multer=require(_0xe0c4[1]);var util=require(_0xe0c4[2]);var path=require(_0xe0c4[3]);var express=require(_0xe0c4[4]);var router=express.Router();var auth=require(_0xe0c4[5]);var config=require(_0xe0c4[6]);var controller=require(_0xe0c4[7]);router[_0xe0c4[11]](_0xe0c4[8],auth[_0xe0c4[9]](),controller[_0xe0c4[10]]);router[_0xe0c4[11]](_0xe0c4[12],auth[_0xe0c4[9]](),controller[_0xe0c4[13]]);router[_0xe0c4[11]](_0xe0c4[14],auth[_0xe0c4[9]](),controller[_0xe0c4[15]]);router[_0xe0c4[17]](_0xe0c4[8],auth[_0xe0c4[9]](),controller[_0xe0c4[16]]);router[_0xe0c4[17]](_0xe0c4[14],auth[_0xe0c4[9]](),controller[_0xe0c4[18]]);router[_0xe0c4[20]](_0xe0c4[12],auth[_0xe0c4[9]](),controller[_0xe0c4[19]]);router[_0xe0c4[22]](_0xe0c4[12],auth[_0xe0c4[9]](),controller[_0xe0c4[21]]);module[_0xe0c4[23]]= router
\ No newline at end of file
index 690bbc8..0f0dc32 100644 (file)
@@ -1 +1 @@
-var _0x9f43=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x74\x61\x67\x73","\x3B","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x70\x6C\x69\x74","\x65\x6E\x64\x73\x57\x69\x74\x68","\x70\x6F\x70"];_0x9f43[0];var _=require(_0x9f43[1]);var Sequelize=require(_0x9f43[2]);module[_0x9f43[3]]= {firstName:{type:Sequelize[_0x9f43[4]],allowNull:false},lastName:{type:Sequelize[_0x9f43[4]]},tags:{type:Sequelize[_0x9f43[4]],set:function(_0x7f0cx3){this[_0x9f43[8]](_0x9f43[5],_0x7f0cx3?_0x7f0cx3[_0x9f43[7]](_0x9f43[6])+ _0x9f43[6]:null)},get:function(){var _0x7f0cx4=this[_0x9f43[9]](_0x9f43[5])?this[_0x9f43[9]](_0x9f43[5])[_0x9f43[10]](_0x9f43[6]):[];if(_[_0x9f43[11]](this[_0x9f43[9]](_0x9f43[5]),_0x9f43[6])){_0x7f0cx4[_0x9f43[12]]()};return _0x7f0cx4}},street:{type:Sequelize[_0x9f43[4]]},postalCode:{type:Sequelize[_0x9f43[4]]},city:{type:Sequelize[_0x9f43[4]]},country:{type:Sequelize[_0x9f43[4]]},dateOfBirth:{type:Sequelize[_0x9f43[4]]},description:{type:Sequelize[_0x9f43[4]]},phone:{type:Sequelize[_0x9f43[4]]},mobile:{type:Sequelize[_0x9f43[4]]},fax:{type:Sequelize[_0x9f43[4]]},email:{type:Sequelize[_0x9f43[4]],validate:{isEmail:true}},url:{type:Sequelize[_0x9f43[4]]}}
\ No newline at end of file
+var _0xec59=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x74\x61\x67\x73","\x3B","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x70\x6C\x69\x74","\x65\x6E\x64\x73\x57\x69\x74\x68","\x70\x6F\x70"];_0xec59[0];var _=require(_0xec59[1]);var Sequelize=require(_0xec59[2]);module[_0xec59[3]]= {firstName:{type:Sequelize[_0xec59[4]],allowNull:false},lastName:{type:Sequelize[_0xec59[4]]},tags:{type:Sequelize[_0xec59[4]],set:function(_0x5345x3){this[_0xec59[8]](_0xec59[5],_0x5345x3?_0x5345x3[_0xec59[7]](_0xec59[6])+ _0xec59[6]:null)},get:function(){var _0x5345x4=this[_0xec59[9]](_0xec59[5])?this[_0xec59[9]](_0xec59[5])[_0xec59[10]](_0xec59[6]):[];if(_[_0xec59[11]](this[_0xec59[9]](_0xec59[5]),_0xec59[6])){_0x5345x4[_0xec59[12]]()};return _0x5345x4}},street:{type:Sequelize[_0xec59[4]]},postalCode:{type:Sequelize[_0xec59[4]]},city:{type:Sequelize[_0xec59[4]]},country:{type:Sequelize[_0xec59[4]]},dateOfBirth:{type:Sequelize[_0xec59[4]]},description:{type:Sequelize[_0xec59[4]]},phone:{type:Sequelize[_0xec59[4]]},mobile:{type:Sequelize[_0xec59[4]]},fax:{type:Sequelize[_0xec59[4]]},email:{type:Sequelize[_0xec59[4]],validate:{isEmail:true}},url:{type:Sequelize[_0xec59[4]]}}
\ No newline at end of file
index 4759700..b134cdd 100644 (file)
@@ -1 +1 @@
-var _0xf1f0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x63\x61\x74\x63\x68","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x64\x65\x73\x63\x72\x69\x62\x65","\x63\x72\x65\x61\x74\x65","\x74\x61\x67\x73","\x62\x6F\x64\x79","\x69\x73\x41\x72\x72\x61\x79","\x6B\x65\x79\x73","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65\x73","\x6C\x65\x6E\x67\x74\x68","\x70\x75\x73\x68","\x24\x6F\x72","\x77\x68\x65\x72\x65","\x4C\x69\x73\x74\x49\x64","\x73\x70\x72\x65\x61\x64","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x65\x61\x63\x68","\x69\x6E\x64\x65\x78","\x4C\x69\x73\x74","\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x70\x69\x63\x6B","\x64\x61\x74\x61\x56\x61\x6C\x75\x65\x73","\x63\x66\x5F\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x72\x6F\x77\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x6D\x6F\x64\x65\x6C","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x66\x69\x6C\x74\x65\x72","\x25","\x3B\x25","\x43\x6F\x6D\x70\x61\x6E\x79\x49\x64","\x75\x6E\x69\x6F\x6E","\x69\x6E\x63\x6C\x75\x64\x65","\x43\x6D\x4C\x69\x73\x74","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x6F\x70\x74\x69\x6F\x6E\x73","\x6F\x6D\x69\x74","\x73\x68\x6F\x77","\x63\x66\x5F\x25\x64","\x67\x65\x74","\x24\x61\x6E\x64","\x70\x68\x6F\x6E\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x69\x73\x45\x6D\x70\x74\x79","\x69\x64\x20\x3D\x20\x3F","\x73\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x74\x61\x62\x6C\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0xf1f0[0];var jsonpatch=require(_0xf1f0[1]);var rp=require(_0xf1f0[2]);var moment=require(_0xf1f0[3]);var BPromise=require(_0xf1f0[4]);var util=require(_0xf1f0[5]);var path=require(_0xf1f0[6]);var sox=require(_0xf1f0[7]);var ejs=require(_0xf1f0[8]);var fs=require(_0xf1f0[9]);var _=require(_0xf1f0[10]);var squel=require(_0xf1f0[11]);var crypto=require(_0xf1f0[12]);var jsforce=require(_0xf1f0[13]);var toCsv=require(_0xf1f0[14]);var qs=require(_0xf1f0[15]);var logger=require(_0xf1f0[17])(_0xf1f0[16]);var utils=require(_0xf1f0[18]);var config=require(_0xf1f0[19]);var db=require(_0xf1f0[21])[_0xf1f0[20]];function respondWithStatusCode(_0x5791x15,_0x5791x16,_0x5791x17){_0x5791x16= _0x5791x16|| 204;return function(_0x5791x18){if(_0x5791x18){logger[_0xf1f0[24]](_0xf1f0[22],_0x5791x17,_0x5791x16,_0xf1f0[23]);logger[_0xf1f0[26]](_0xf1f0[25],_0x5791x17,_0x5791x16,_0xf1f0[23]);return _0x5791x15[_0xf1f0[27]](_0x5791x16)};return _0x5791x15[_0xf1f0[29]](304)[_0xf1f0[28]]()}}function respondWithResult(_0x5791x15,_0x5791x16,_0x5791x17){_0x5791x16= _0x5791x16|| 200;return function(_0x5791x18){if(_0x5791x18){logger[_0xf1f0[24]](_0xf1f0[22],_0x5791x17,_0x5791x16,_0xf1f0[30]);logger[_0xf1f0[26]](_0xf1f0[25],_0x5791x17,_0x5791x16,_0xf1f0[30],JSON[_0xf1f0[31]](_0x5791x18));return _0x5791x15[_0xf1f0[29]](_0x5791x16)[_0xf1f0[32]](_0x5791x18)};return _0x5791x15[_0xf1f0[29]](304)[_0xf1f0[28]]()}}function respondWithFilteredResult(_0x5791x15,_0x5791x1b,_0x5791x17){return function(_0x5791x18){if(_0x5791x18){var _0x5791x1c=_0x5791x18[_0xf1f0[33]],_0x5791x1d=_0x5791x1b[_0xf1f0[34]],_0x5791x1e=_0x5791x1b[_0xf1f0[34]]+ _0x5791x1b[_0xf1f0[35]],_0x5791x16;if(_0x5791x1e>= _0x5791x1c){_0x5791x1e= _0x5791x1c;_0x5791x16= 200}else {_0x5791x16= 206};_0x5791x15[_0xf1f0[29]](_0x5791x16);logger[_0xf1f0[24]](_0xf1f0[22],_0x5791x17,_0x5791x16,_0xf1f0[36]);logger[_0xf1f0[26]](_0xf1f0[25],_0x5791x17,_0x5791x16,_0xf1f0[30],JSON[_0xf1f0[31]](_0x5791x18));return _0x5791x15[_0xf1f0[40]](_0xf1f0[37],_0x5791x1d+ _0xf1f0[38]+ _0x5791x1e+ _0xf1f0[39]+ _0x5791x1c)[_0xf1f0[32]](_0x5791x18)};return null}}function patchUpdates(_0x5791x20){return function(_0x5791x18){try{jsonpatch[_0xf1f0[41]](_0x5791x18,_0x5791x20,true)}catch(err){return BPromise[_0xf1f0[42]](err)};return _0x5791x18[_0xf1f0[43]]()}}function saveUpdates(_0x5791x22,_0x5791x16,_0x5791x17){return function(_0x5791x18){if(_0x5791x18){return _0x5791x18[_0xf1f0[46]](_0x5791x22)[_0xf1f0[45]](function(_0x5791x23){logger[_0xf1f0[24]](_0xf1f0[22],_0x5791x17,_0x5791x16,_0xf1f0[44]);logger[_0xf1f0[26]](_0xf1f0[25],_0x5791x17,_0x5791x16,_0xf1f0[44],JSON[_0xf1f0[31]](_0x5791x18));return _0x5791x23})};return null}}function removeEntity(_0x5791x15,_0x5791x16,_0x5791x17){return function(_0x5791x18){if(_0x5791x18){return _0x5791x18[_0xf1f0[48]]()[_0xf1f0[45]](function(){logger[_0xf1f0[24]](_0xf1f0[22],_0x5791x17,_0x5791x16,_0xf1f0[47]);logger[_0xf1f0[26]](_0xf1f0[25],_0x5791x17,_0x5791x16,_0xf1f0[47],JSON[_0xf1f0[31]](_0x5791x18));_0x5791x15[_0xf1f0[29]](204)[_0xf1f0[28]]()})}}}function handleEntityNotFound(_0x5791x15,_0x5791x16,_0x5791x17){return function(_0x5791x18){if(!_0x5791x18){logger[_0xf1f0[50]](_0xf1f0[22],_0x5791x17,404,_0xf1f0[49]);_0x5791x15[_0xf1f0[29]](404)[_0xf1f0[28]]();return null};return _0x5791x18}}function handleError(_0x5791x15,_0x5791x16,_0x5791x17){_0x5791x16= _0x5791x16|| 500;return function(_0x5791x27){logger[_0xf1f0[50]](_0xf1f0[22],_0x5791x17,_0x5791x16,JSON[_0xf1f0[31]](_0x5791x27));delete _0x5791x27[_0xf1f0[51]];_0x5791x15[_0xf1f0[29]](_0x5791x16)[_0xf1f0[52]](_0x5791x27)}}exports[_0xf1f0[48]]= function(_0x5791x28,_0x5791x15){return db[_0xf1f0[57]][_0xf1f0[56]]({where:{id:_0x5791x28[_0xf1f0[55]][_0xf1f0[54]]}})[_0xf1f0[45]](handleEntityNotFound(_0x5791x15,null,_0xf1f0[48]))[_0xf1f0[45]](removeEntity(_0x5791x15,null,_0xf1f0[48]))[_0xf1f0[53]](handleError(_0x5791x15,null,_0xf1f0[48]))};exports[_0xf1f0[58]]= function(_0x5791x28,_0x5791x15){return db[_0xf1f0[57]][_0xf1f0[58]]()[_0xf1f0[45]](respondWithResult(_0x5791x15,null,_0xf1f0[58]))[_0xf1f0[53]](handleError(_0x5791x15,null,_0xf1f0[58]))};exports[_0xf1f0[59]]= function(_0x5791x28,_0x5791x15){return db[_0xf1f0[57]][_0xf1f0[58]]()[_0xf1f0[45]](function(_0x5791x29){if(_0x5791x28[_0xf1f0[61]][_0xf1f0[60]]&& _[_0xf1f0[62]](_0x5791x28[_0xf1f0[61]][_0xf1f0[60]])){_0x5791x28[_0xf1f0[61]][_0xf1f0[60]]= JSON[_0xf1f0[31]](_0x5791x28[_0xf1f0[61]][_0xf1f0[60]])};return db[_0xf1f0[57]][_0xf1f0[59]](_0x5791x28[_0xf1f0[61]],{fields:_[_0xf1f0[63]](_0x5791x29),raw:true})})[_0xf1f0[45]](respondWithResult(_0x5791x15,201,_0xf1f0[59]))[_0xf1f0[53]](handleError(_0x5791x15,null,_0xf1f0[59]))};exports[_0xf1f0[64]]= function(_0x5791x28,_0x5791x15){var _0x5791x2a=[];var _0x5791x2b=0;var _0x5791x2c=0;var _0x5791x2d=0;return db[_0xf1f0[57]][_0xf1f0[58]]()[_0xf1f0[45]](function(_0x5791x29){return BPromise[_0xf1f0[73]](_0x5791x28[_0xf1f0[61]],function(_0x5791x2f){var _0x5791x1b={where:{$or:[]},defaults:_0x5791x2f,fields:_[_0xf1f0[63]](_0x5791x29),raw:true};if(_0x5791x2f[_0xf1f0[65]]){for(var _0x5791x30=0;_0x5791x30< _0x5791x2f[_0xf1f0[65]][_0xf1f0[66]];_0x5791x30++){var _0x5791x31={};_0x5791x31[_0x5791x2f[_0xf1f0[65]][_0x5791x30]]= _0x5791x2f[_0x5791x2f[_0xf1f0[65]][_0x5791x30]];_0x5791x1b[_0xf1f0[69]][_0xf1f0[68]][_0xf1f0[67]](_0x5791x31)};_0x5791x1b[_0xf1f0[69]][_0xf1f0[70]]= _0x5791x2f[_0xf1f0[70]]};return db[_0xf1f0[57]][_0xf1f0[72]](_0x5791x1b)[_0xf1f0[71]](function(_0x5791x32,_0x5791x33){if(_0x5791x33){_0x5791x2b++}else {_0x5791x2d++}})[_0xf1f0[53]](function(_0x5791x27){console[_0xf1f0[50]](_0x5791x27);_0x5791x2c++})})})[_0xf1f0[45]](function(_0x5791x2e){if(_0x5791x2e){return {success:_0x5791x2b,failure:_0x5791x2c,duplicates:_0x5791x2d}}})[_0xf1f0[45]](respondWithResult(_0x5791x15,201,_0xf1f0[64]))[_0xf1f0[53]](handleError(_0x5791x15,null,_0xf1f0[64]))};exports[_0xf1f0[74]]= function(_0x5791x28,_0x5791x15,_0x5791x34){var _0x5791x35={count:0,rows:[]};var _0x5791x1b={};var _0x5791x36={};return db[_0xf1f0[57]][_0xf1f0[58]]()[_0xf1f0[45]](function(_0x5791x29){_0x5791x36[_0xf1f0[86]]= _[_0xf1f0[63]](_0x5791x29);_0x5791x36[_0xf1f0[87]]= _[_0xf1f0[63]](_0x5791x28[_0xf1f0[87]]);_0x5791x36[_0xf1f0[88]]= _[_0xf1f0[89]](_0x5791x36[_0xf1f0[86]],_0x5791x36[_0xf1f0[87]]);_0x5791x1b[_0xf1f0[90]]= _[_0xf1f0[89]](_0x5791x36[_0xf1f0[86]],qs[_0xf1f0[91]](_0x5791x28[_0xf1f0[87]][_0xf1f0[91]]));_0x5791x1b[_0xf1f0[90]]= (_0x5791x1b[_0xf1f0[90]][_0xf1f0[66]])?_0x5791x1b[_0xf1f0[90]]:_0x5791x36[_0xf1f0[86]];_0x5791x1b[_0xf1f0[35]]= qs[_0xf1f0[35]](_0x5791x28[_0xf1f0[87]][_0xf1f0[35]]);_0x5791x1b[_0xf1f0[34]]= qs[_0xf1f0[34]](_0x5791x28[_0xf1f0[87]][_0xf1f0[34]]);_0x5791x1b[_0xf1f0[92]]= qs[_0xf1f0[93]](_0x5791x28[_0xf1f0[87]][_0xf1f0[93]]);_0x5791x1b[_0xf1f0[69]]= qs[_0xf1f0[88]](_[_0xf1f0[78]](_0x5791x28[_0xf1f0[87]],_0x5791x36[_0xf1f0[88]]));if(_0x5791x28[_0xf1f0[87]][_0xf1f0[94]]){_0x5791x1b[_0xf1f0[69]]= _[_0xf1f0[83]](_0x5791x1b[_0xf1f0[69]],{$or:_[_0xf1f0[82]](_0x5791x1b[_0xf1f0[90]],function(_0x5791x3b){var _0x5791x3c={};_0x5791x3c[_0x5791x3b]= {$like:_0xf1f0[95]+ _0x5791x28[_0xf1f0[87]][_0xf1f0[94]]+ _0xf1f0[95]};return _0x5791x3c})})};if(_0x5791x28[_0xf1f0[87]][_0xf1f0[60]]){_0x5791x1b[_0xf1f0[69]][_0xf1f0[60]]= {$or:_[_0xf1f0[82]](_0x5791x1b[_0xf1f0[69]][_0xf1f0[60]],function(_0x5791x3b){return {$like:_0xf1f0[95]+ _0x5791x3b+ _0xf1f0[96]}})}};_0x5791x1b[_0xf1f0[90]]= _[_0xf1f0[98]](_0x5791x1b[_0xf1f0[90]],[_0xf1f0[70],_0xf1f0[97]]);_0x5791x1b[_0xf1f0[99]]= [{model:db[_0xf1f0[100]],as:_0xf1f0[75],attributes:[_0xf1f0[54]],include:[{model:db[_0xf1f0[101]],as:_0xf1f0[76],attributes:[_0xf1f0[54]]}]}];_0x5791x1b= _[_0xf1f0[83]]({},_0x5791x1b,_0x5791x28[_0xf1f0[102]]);return db[_0xf1f0[57]][_0xf1f0[33]](_[_0xf1f0[103]](_0x5791x1b,[_0xf1f0[99],_0xf1f0[90]]))})[_0xf1f0[45]](function(_0x5791x1c){_0x5791x35[_0xf1f0[33]]= _0x5791x1c;return db[_0xf1f0[57]][_0xf1f0[85]](_0x5791x1b)})[_0xf1f0[45]](function(_0x5791x2e){for(var _0x5791x37=0;_0x5791x37< _0x5791x2e[_0xf1f0[66]];_0x5791x37++){if(_0x5791x2e[_0x5791x37][_0xf1f0[75]]){if(_0x5791x2e[_0x5791x37][_0xf1f0[75]][_0xf1f0[76]][_0xf1f0[66]]){var _0x5791x38=_[_0xf1f0[78]](_0x5791x2e[_0x5791x37],_[_0xf1f0[63]](db[_0xf1f0[57]][_0xf1f0[77]]));var _0x5791x39=_[_0xf1f0[78]](_0x5791x2e[_0x5791x37][_0xf1f0[79]],_[_0xf1f0[82]](_0x5791x2e[_0x5791x37][_0xf1f0[75]].CustomFields,function(_0x5791x3a){return util[_0xf1f0[81]](_0xf1f0[80],_0x5791x3a[_0xf1f0[54]])}));_0x5791x35[_0xf1f0[84]][_0xf1f0[67]](_[_0xf1f0[83]](_0x5791x38,_0x5791x39))}else {_0x5791x35[_0xf1f0[84]][_0xf1f0[67]](_0x5791x2e[_0x5791x37])}}else {_0x5791x35[_0xf1f0[84]][_0xf1f0[67]](_[_0xf1f0[78]](_0x5791x2e[_0x5791x37],_[_0xf1f0[63]](db[_0xf1f0[57]][_0xf1f0[77]])))}};return _0x5791x35})[_0xf1f0[45]](respondWithFilteredResult(_0x5791x15,_0x5791x1b,_0xf1f0[74]))[_0xf1f0[53]](handleError(_0x5791x15,null,_0xf1f0[74]))};exports[_0xf1f0[104]]= function(_0x5791x28,_0x5791x15,_0x5791x34){var _0x5791x3d;return db[_0xf1f0[57]][_0xf1f0[58]]()[_0xf1f0[45]](function(_0x5791x29){return db[_0xf1f0[57]][_0xf1f0[56]]({where:{id:_0x5791x28[_0xf1f0[55]][_0xf1f0[54]]},attributes:_[_0xf1f0[63]](_0x5791x29)})})[_0xf1f0[45]](function(_0x5791x18){_0x5791x3d= _0x5791x18[_0xf1f0[106]]({plain:true});var _0x5791x3f={where:{$and:[{ListId:{$ne:null}}]}};if(_0x5791x18&& _0x5791x18[_0xf1f0[70]]){if(_0x5791x18[_0xf1f0[70]]){_0x5791x3f[_0xf1f0[69]][_0xf1f0[107]][_0xf1f0[67]]({ListId:{$ne:_0x5791x18[_0xf1f0[70]]}})}};return db[_0xf1f0[101]][_0xf1f0[85]](_0x5791x3f)})[_0xf1f0[45]](function(_0x5791x3e){return _[_0xf1f0[103]](_0x5791x3d,_[_0xf1f0[82]](_0x5791x3e,function(_0x5791x3a){return util[_0xf1f0[81]](_0xf1f0[105],_0x5791x3a[_0xf1f0[54]])}))})[_0xf1f0[45]](handleEntityNotFound(_0x5791x15,null,_0xf1f0[104]))[_0xf1f0[45]](respondWithResult(_0x5791x15,null,_0xf1f0[104]))[_0xf1f0[53]](handleError(_0x5791x15,null,_0xf1f0[104]))};exports[_0xf1f0[46]]= function(_0x5791x28,_0x5791x15){var _0x5791x3d;if(_0x5791x28[_0xf1f0[61]][_0xf1f0[54]]){delete _0x5791x28[_0xf1f0[61]][_0xf1f0[54]]};return db[_0xf1f0[57]][_0xf1f0[56]]({where:{id:_0x5791x28[_0xf1f0[55]][_0xf1f0[54]]}})[_0xf1f0[45]](handleEntityNotFound(_0x5791x15,null,_0xf1f0[46]))[_0xf1f0[45]](saveUpdates(_0x5791x28[_0xf1f0[61]],null,_0xf1f0[46]))[_0xf1f0[45]](function(_0x5791x18){_0x5791x3d= _0x5791x18;var _0x5791x3f={where:{$and:[{ListId:{$ne:null}}]}};if(_0x5791x18&& _0x5791x18[_0xf1f0[70]]){if(_0x5791x18[_0xf1f0[70]]){_0x5791x3f[_0xf1f0[69]][_0xf1f0[107]][_0xf1f0[67]]({ListId:{$ne:_0x5791x18[_0xf1f0[70]]}})}};return db[_0xf1f0[101]][_0xf1f0[85]](_0x5791x3f)})[_0xf1f0[45]](function(_0x5791x3e){if(_0x5791x3e){return _[_0xf1f0[103]](_0x5791x28[_0xf1f0[61]],_[_0xf1f0[82]](_0x5791x3e,function(_0x5791x3a){return util[_0xf1f0[81]](_0xf1f0[105],_0x5791x3a[_0xf1f0[54]])}),_[_0xf1f0[63]](db[_0xf1f0[57]][_0xf1f0[77]]))}})[_0xf1f0[45]](function(_0x5791x39){if(_0x5791x39&&  !_[_0xf1f0[110]](_0x5791x39)){return db[_0xf1f0[115]][_0xf1f0[87]](squel[_0xf1f0[46]]()[_0xf1f0[114]](_0xf1f0[113])[_0xf1f0[112]](_0x5791x39)[_0xf1f0[69]](_0xf1f0[111],_0x5791x28[_0xf1f0[55]][_0xf1f0[54]]).toString())}})[_0xf1f0[45]](function(){if(_0x5791x28[_0xf1f0[61]][_0xf1f0[108]]&& _0x5791x3d){return db[_0xf1f0[109]][_0xf1f0[46]]({phone:_0x5791x28[_0xf1f0[61]][_0xf1f0[108]]},{where:{ContactId:_0x5791x3d[_0xf1f0[54]]}})}})[_0xf1f0[45]](function(){return _0x5791x3d})[_0xf1f0[45]](respondWithResult(_0x5791x15,null,_0xf1f0[46]))[_0xf1f0[53]](handleError(_0x5791x15,null,_0xf1f0[46]))}
\ No newline at end of file
+var _0xc337=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x63\x61\x74\x63\x68","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x64\x65\x73\x63\x72\x69\x62\x65","\x63\x72\x65\x61\x74\x65","\x74\x61\x67\x73","\x62\x6F\x64\x79","\x69\x73\x41\x72\x72\x61\x79","\x6B\x65\x79\x73","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65\x73","\x6C\x65\x6E\x67\x74\x68","\x70\x75\x73\x68","\x24\x6F\x72","\x77\x68\x65\x72\x65","\x4C\x69\x73\x74\x49\x64","\x73\x70\x72\x65\x61\x64","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x65\x61\x63\x68","\x69\x6E\x64\x65\x78","\x4C\x69\x73\x74","\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x70\x69\x63\x6B","\x64\x61\x74\x61\x56\x61\x6C\x75\x65\x73","\x63\x66\x5F\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x72\x6F\x77\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x6D\x6F\x64\x65\x6C","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x66\x69\x6C\x74\x65\x72","\x25","\x3B\x25","\x43\x6F\x6D\x70\x61\x6E\x79\x49\x64","\x75\x6E\x69\x6F\x6E","\x69\x6E\x63\x6C\x75\x64\x65","\x43\x6D\x4C\x69\x73\x74","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x6F\x70\x74\x69\x6F\x6E\x73","\x6F\x6D\x69\x74","\x73\x68\x6F\x77","\x63\x66\x5F\x25\x64","\x67\x65\x74","\x24\x61\x6E\x64","\x70\x68\x6F\x6E\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x69\x73\x45\x6D\x70\x74\x79","\x69\x64\x20\x3D\x20\x3F","\x73\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x74\x61\x62\x6C\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0xc337[0];var jsonpatch=require(_0xc337[1]);var rp=require(_0xc337[2]);var moment=require(_0xc337[3]);var BPromise=require(_0xc337[4]);var util=require(_0xc337[5]);var path=require(_0xc337[6]);var sox=require(_0xc337[7]);var ejs=require(_0xc337[8]);var fs=require(_0xc337[9]);var _=require(_0xc337[10]);var squel=require(_0xc337[11]);var crypto=require(_0xc337[12]);var jsforce=require(_0xc337[13]);var toCsv=require(_0xc337[14]);var qs=require(_0xc337[15]);var logger=require(_0xc337[17])(_0xc337[16]);var utils=require(_0xc337[18]);var config=require(_0xc337[19]);var db=require(_0xc337[21])[_0xc337[20]];function respondWithStatusCode(_0xc6adx15,_0xc6adx16,_0xc6adx17){_0xc6adx16= _0xc6adx16|| 204;return function(_0xc6adx18){if(_0xc6adx18){logger[_0xc337[24]](_0xc337[22],_0xc6adx17,_0xc6adx16,_0xc337[23]);logger[_0xc337[26]](_0xc337[25],_0xc6adx17,_0xc6adx16,_0xc337[23]);return _0xc6adx15[_0xc337[27]](_0xc6adx16)};return _0xc6adx15[_0xc337[29]](304)[_0xc337[28]]()}}function respondWithResult(_0xc6adx15,_0xc6adx16,_0xc6adx17){_0xc6adx16= _0xc6adx16|| 200;return function(_0xc6adx18){if(_0xc6adx18){logger[_0xc337[24]](_0xc337[22],_0xc6adx17,_0xc6adx16,_0xc337[30]);logger[_0xc337[26]](_0xc337[25],_0xc6adx17,_0xc6adx16,_0xc337[30],JSON[_0xc337[31]](_0xc6adx18));return _0xc6adx15[_0xc337[29]](_0xc6adx16)[_0xc337[32]](_0xc6adx18)};return _0xc6adx15[_0xc337[29]](304)[_0xc337[28]]()}}function respondWithFilteredResult(_0xc6adx15,_0xc6adx1b,_0xc6adx17){return function(_0xc6adx18){if(_0xc6adx18){var _0xc6adx1c=_0xc6adx18[_0xc337[33]],_0xc6adx1d=_0xc6adx1b[_0xc337[34]],_0xc6adx1e=_0xc6adx1b[_0xc337[34]]+ _0xc6adx1b[_0xc337[35]],_0xc6adx16;if(_0xc6adx1e>= _0xc6adx1c){_0xc6adx1e= _0xc6adx1c;_0xc6adx16= 200}else {_0xc6adx16= 206};_0xc6adx15[_0xc337[29]](_0xc6adx16);logger[_0xc337[24]](_0xc337[22],_0xc6adx17,_0xc6adx16,_0xc337[36]);logger[_0xc337[26]](_0xc337[25],_0xc6adx17,_0xc6adx16,_0xc337[30],JSON[_0xc337[31]](_0xc6adx18));return _0xc6adx15[_0xc337[40]](_0xc337[37],_0xc6adx1d+ _0xc337[38]+ _0xc6adx1e+ _0xc337[39]+ _0xc6adx1c)[_0xc337[32]](_0xc6adx18)};return null}}function patchUpdates(_0xc6adx20){return function(_0xc6adx18){try{jsonpatch[_0xc337[41]](_0xc6adx18,_0xc6adx20,true)}catch(err){return BPromise[_0xc337[42]](err)};return _0xc6adx18[_0xc337[43]]()}}function saveUpdates(_0xc6adx22,_0xc6adx16,_0xc6adx17){return function(_0xc6adx18){if(_0xc6adx18){return _0xc6adx18[_0xc337[46]](_0xc6adx22)[_0xc337[45]](function(_0xc6adx23){logger[_0xc337[24]](_0xc337[22],_0xc6adx17,_0xc6adx16,_0xc337[44]);logger[_0xc337[26]](_0xc337[25],_0xc6adx17,_0xc6adx16,_0xc337[44],JSON[_0xc337[31]](_0xc6adx18));return _0xc6adx23})};return null}}function removeEntity(_0xc6adx15,_0xc6adx16,_0xc6adx17){return function(_0xc6adx18){if(_0xc6adx18){return _0xc6adx18[_0xc337[48]]()[_0xc337[45]](function(){logger[_0xc337[24]](_0xc337[22],_0xc6adx17,_0xc6adx16,_0xc337[47]);logger[_0xc337[26]](_0xc337[25],_0xc6adx17,_0xc6adx16,_0xc337[47],JSON[_0xc337[31]](_0xc6adx18));_0xc6adx15[_0xc337[29]](204)[_0xc337[28]]()})}}}function handleEntityNotFound(_0xc6adx15,_0xc6adx16,_0xc6adx17){return function(_0xc6adx18){if(!_0xc6adx18){logger[_0xc337[50]](_0xc337[22],_0xc6adx17,404,_0xc337[49]);_0xc6adx15[_0xc337[29]](404)[_0xc337[28]]();return null};return _0xc6adx18}}function handleError(_0xc6adx15,_0xc6adx16,_0xc6adx17){_0xc6adx16= _0xc6adx16|| 500;return function(_0xc6adx27){logger[_0xc337[50]](_0xc337[22],_0xc6adx17,_0xc6adx16,JSON[_0xc337[31]](_0xc6adx27));delete _0xc6adx27[_0xc337[51]];_0xc6adx15[_0xc337[29]](_0xc6adx16)[_0xc337[52]](_0xc6adx27)}}exports[_0xc337[48]]= function(_0xc6adx28,_0xc6adx15){return db[_0xc337[57]][_0xc337[56]]({where:{id:_0xc6adx28[_0xc337[55]][_0xc337[54]]}})[_0xc337[45]](handleEntityNotFound(_0xc6adx15,null,_0xc337[48]))[_0xc337[45]](removeEntity(_0xc6adx15,null,_0xc337[48]))[_0xc337[53]](handleError(_0xc6adx15,null,_0xc337[48]))};exports[_0xc337[58]]= function(_0xc6adx28,_0xc6adx15){return db[_0xc337[57]][_0xc337[58]]()[_0xc337[45]](respondWithResult(_0xc6adx15,null,_0xc337[58]))[_0xc337[53]](handleError(_0xc6adx15,null,_0xc337[58]))};exports[_0xc337[59]]= function(_0xc6adx28,_0xc6adx15){return db[_0xc337[57]][_0xc337[58]]()[_0xc337[45]](function(_0xc6adx29){if(_0xc6adx28[_0xc337[61]][_0xc337[60]]&& _[_0xc337[62]](_0xc6adx28[_0xc337[61]][_0xc337[60]])){_0xc6adx28[_0xc337[61]][_0xc337[60]]= JSON[_0xc337[31]](_0xc6adx28[_0xc337[61]][_0xc337[60]])};return db[_0xc337[57]][_0xc337[59]](_0xc6adx28[_0xc337[61]],{fields:_[_0xc337[63]](_0xc6adx29),raw:true})})[_0xc337[45]](respondWithResult(_0xc6adx15,201,_0xc337[59]))[_0xc337[53]](handleError(_0xc6adx15,null,_0xc337[59]))};exports[_0xc337[64]]= function(_0xc6adx28,_0xc6adx15){var _0xc6adx2a=[];var _0xc6adx2b=0;var _0xc6adx2c=0;var _0xc6adx2d=0;return db[_0xc337[57]][_0xc337[58]]()[_0xc337[45]](function(_0xc6adx29){return BPromise[_0xc337[73]](_0xc6adx28[_0xc337[61]],function(_0xc6adx2f){var _0xc6adx1b={where:{$or:[]},defaults:_0xc6adx2f,fields:_[_0xc337[63]](_0xc6adx29),raw:true};if(_0xc6adx2f[_0xc337[65]]){for(var _0xc6adx30=0;_0xc6adx30< _0xc6adx2f[_0xc337[65]][_0xc337[66]];_0xc6adx30++){var _0xc6adx31={};_0xc6adx31[_0xc6adx2f[_0xc337[65]][_0xc6adx30]]= _0xc6adx2f[_0xc6adx2f[_0xc337[65]][_0xc6adx30]];_0xc6adx1b[_0xc337[69]][_0xc337[68]][_0xc337[67]](_0xc6adx31)};_0xc6adx1b[_0xc337[69]][_0xc337[70]]= _0xc6adx2f[_0xc337[70]]};return db[_0xc337[57]][_0xc337[72]](_0xc6adx1b)[_0xc337[71]](function(_0xc6adx32,_0xc6adx33){if(_0xc6adx33){_0xc6adx2b++}else {_0xc6adx2d++}})[_0xc337[53]](function(_0xc6adx27){console[_0xc337[50]](_0xc6adx27);_0xc6adx2c++})})})[_0xc337[45]](function(_0xc6adx2e){if(_0xc6adx2e){return {success:_0xc6adx2b,failure:_0xc6adx2c,duplicates:_0xc6adx2d}}})[_0xc337[45]](respondWithResult(_0xc6adx15,201,_0xc337[64]))[_0xc337[53]](handleError(_0xc6adx15,null,_0xc337[64]))};exports[_0xc337[74]]= function(_0xc6adx28,_0xc6adx15,_0xc6adx34){var _0xc6adx35={count:0,rows:[]};var _0xc6adx1b={};var _0xc6adx36={};return db[_0xc337[57]][_0xc337[58]]()[_0xc337[45]](function(_0xc6adx29){_0xc6adx36[_0xc337[86]]= _[_0xc337[63]](_0xc6adx29);_0xc6adx36[_0xc337[87]]= _[_0xc337[63]](_0xc6adx28[_0xc337[87]]);_0xc6adx36[_0xc337[88]]= _[_0xc337[89]](_0xc6adx36[_0xc337[86]],_0xc6adx36[_0xc337[87]]);_0xc6adx1b[_0xc337[90]]= _[_0xc337[89]](_0xc6adx36[_0xc337[86]],qs[_0xc337[91]](_0xc6adx28[_0xc337[87]][_0xc337[91]]));_0xc6adx1b[_0xc337[90]]= (_0xc6adx1b[_0xc337[90]][_0xc337[66]])?_0xc6adx1b[_0xc337[90]]:_0xc6adx36[_0xc337[86]];_0xc6adx1b[_0xc337[35]]= qs[_0xc337[35]](_0xc6adx28[_0xc337[87]][_0xc337[35]]);_0xc6adx1b[_0xc337[34]]= qs[_0xc337[34]](_0xc6adx28[_0xc337[87]][_0xc337[34]]);_0xc6adx1b[_0xc337[92]]= qs[_0xc337[93]](_0xc6adx28[_0xc337[87]][_0xc337[93]]);_0xc6adx1b[_0xc337[69]]= qs[_0xc337[88]](_[_0xc337[78]](_0xc6adx28[_0xc337[87]],_0xc6adx36[_0xc337[88]]));if(_0xc6adx28[_0xc337[87]][_0xc337[94]]){_0xc6adx1b[_0xc337[69]]= _[_0xc337[83]](_0xc6adx1b[_0xc337[69]],{$or:_[_0xc337[82]](_0xc6adx1b[_0xc337[90]],function(_0xc6adx3b){var _0xc6adx3c={};_0xc6adx3c[_0xc6adx3b]= {$like:_0xc337[95]+ _0xc6adx28[_0xc337[87]][_0xc337[94]]+ _0xc337[95]};return _0xc6adx3c})})};if(_0xc6adx28[_0xc337[87]][_0xc337[60]]){_0xc6adx1b[_0xc337[69]][_0xc337[60]]= {$or:_[_0xc337[82]](_0xc6adx1b[_0xc337[69]][_0xc337[60]],function(_0xc6adx3b){return {$like:_0xc337[95]+ _0xc6adx3b+ _0xc337[96]}})}};_0xc6adx1b[_0xc337[90]]= _[_0xc337[98]](_0xc6adx1b[_0xc337[90]],[_0xc337[70],_0xc337[97]]);_0xc6adx1b[_0xc337[99]]= [{model:db[_0xc337[100]],as:_0xc337[75],attributes:[_0xc337[54]],include:[{model:db[_0xc337[101]],as:_0xc337[76],attributes:[_0xc337[54]]}]}];_0xc6adx1b= _[_0xc337[83]]({},_0xc6adx1b,_0xc6adx28[_0xc337[102]]);return db[_0xc337[57]][_0xc337[33]](_[_0xc337[103]](_0xc6adx1b,[_0xc337[99],_0xc337[90]]))})[_0xc337[45]](function(_0xc6adx1c){_0xc6adx35[_0xc337[33]]= _0xc6adx1c;return db[_0xc337[57]][_0xc337[85]](_0xc6adx1b)})[_0xc337[45]](function(_0xc6adx2e){for(var _0xc6adx37=0;_0xc6adx37< _0xc6adx2e[_0xc337[66]];_0xc6adx37++){if(_0xc6adx2e[_0xc6adx37][_0xc337[75]]){if(_0xc6adx2e[_0xc6adx37][_0xc337[75]][_0xc337[76]][_0xc337[66]]){var _0xc6adx38=_[_0xc337[78]](_0xc6adx2e[_0xc6adx37],_[_0xc337[63]](db[_0xc337[57]][_0xc337[77]]));var _0xc6adx39=_[_0xc337[78]](_0xc6adx2e[_0xc6adx37][_0xc337[79]],_[_0xc337[82]](_0xc6adx2e[_0xc6adx37][_0xc337[75]].CustomFields,function(_0xc6adx3a){return util[_0xc337[81]](_0xc337[80],_0xc6adx3a[_0xc337[54]])}));_0xc6adx35[_0xc337[84]][_0xc337[67]](_[_0xc337[83]](_0xc6adx38,_0xc6adx39))}else {_0xc6adx35[_0xc337[84]][_0xc337[67]](_0xc6adx2e[_0xc6adx37])}}else {_0xc6adx35[_0xc337[84]][_0xc337[67]](_[_0xc337[78]](_0xc6adx2e[_0xc6adx37],_[_0xc337[63]](db[_0xc337[57]][_0xc337[77]])))}};return _0xc6adx35})[_0xc337[45]](respondWithFilteredResult(_0xc6adx15,_0xc6adx1b,_0xc337[74]))[_0xc337[53]](handleError(_0xc6adx15,null,_0xc337[74]))};exports[_0xc337[104]]= function(_0xc6adx28,_0xc6adx15,_0xc6adx34){var _0xc6adx3d;return db[_0xc337[57]][_0xc337[58]]()[_0xc337[45]](function(_0xc6adx29){return db[_0xc337[57]][_0xc337[56]]({where:{id:_0xc6adx28[_0xc337[55]][_0xc337[54]]},attributes:_[_0xc337[63]](_0xc6adx29)})})[_0xc337[45]](function(_0xc6adx18){_0xc6adx3d= _0xc6adx18[_0xc337[106]]({plain:true});var _0xc6adx3f={where:{$and:[{ListId:{$ne:null}}]}};if(_0xc6adx18&& _0xc6adx18[_0xc337[70]]){if(_0xc6adx18[_0xc337[70]]){_0xc6adx3f[_0xc337[69]][_0xc337[107]][_0xc337[67]]({ListId:{$ne:_0xc6adx18[_0xc337[70]]}})}};return db[_0xc337[101]][_0xc337[85]](_0xc6adx3f)})[_0xc337[45]](function(_0xc6adx3e){return _[_0xc337[103]](_0xc6adx3d,_[_0xc337[82]](_0xc6adx3e,function(_0xc6adx3a){return util[_0xc337[81]](_0xc337[105],_0xc6adx3a[_0xc337[54]])}))})[_0xc337[45]](handleEntityNotFound(_0xc6adx15,null,_0xc337[104]))[_0xc337[45]](respondWithResult(_0xc6adx15,null,_0xc337[104]))[_0xc337[53]](handleError(_0xc6adx15,null,_0xc337[104]))};exports[_0xc337[46]]= function(_0xc6adx28,_0xc6adx15){var _0xc6adx3d;if(_0xc6adx28[_0xc337[61]][_0xc337[54]]){delete _0xc6adx28[_0xc337[61]][_0xc337[54]]};return db[_0xc337[57]][_0xc337[56]]({where:{id:_0xc6adx28[_0xc337[55]][_0xc337[54]]}})[_0xc337[45]](handleEntityNotFound(_0xc6adx15,null,_0xc337[46]))[_0xc337[45]](saveUpdates(_0xc6adx28[_0xc337[61]],null,_0xc337[46]))[_0xc337[45]](function(_0xc6adx18){_0xc6adx3d= _0xc6adx18;var _0xc6adx3f={where:{$and:[{ListId:{$ne:null}}]}};if(_0xc6adx18&& _0xc6adx18[_0xc337[70]]){if(_0xc6adx18[_0xc337[70]]){_0xc6adx3f[_0xc337[69]][_0xc337[107]][_0xc337[67]]({ListId:{$ne:_0xc6adx18[_0xc337[70]]}})}};return db[_0xc337[101]][_0xc337[85]](_0xc6adx3f)})[_0xc337[45]](function(_0xc6adx3e){if(_0xc6adx3e){return _[_0xc337[103]](_0xc6adx28[_0xc337[61]],_[_0xc337[82]](_0xc6adx3e,function(_0xc6adx3a){return util[_0xc337[81]](_0xc337[105],_0xc6adx3a[_0xc337[54]])}),_[_0xc337[63]](db[_0xc337[57]][_0xc337[77]]))}})[_0xc337[45]](function(_0xc6adx39){if(_0xc6adx39&&  !_[_0xc337[110]](_0xc6adx39)){return db[_0xc337[115]][_0xc337[87]](squel[_0xc337[46]]()[_0xc337[114]](_0xc337[113])[_0xc337[112]](_0xc6adx39)[_0xc337[69]](_0xc337[111],_0xc6adx28[_0xc337[55]][_0xc337[54]]).toString())}})[_0xc337[45]](function(){if(_0xc6adx28[_0xc337[61]][_0xc337[108]]&& _0xc6adx3d){return db[_0xc337[109]][_0xc337[46]]({phone:_0xc6adx28[_0xc337[61]][_0xc337[108]]},{where:{ContactId:_0xc6adx3d[_0xc337[54]]}})}})[_0xc337[45]](function(){return _0xc6adx3d})[_0xc337[45]](respondWithResult(_0xc6adx15,null,_0xc337[46]))[_0xc337[53]](handleError(_0xc6adx15,null,_0xc337[46]))}
\ No newline at end of file
index dcc06fc..5e40f48 100644 (file)
@@ -1 +1 @@
-var _0xde14=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x6D\x6F\x64\x65\x6C\x73","\x67\x65\x74","\x4C\x69\x73\x74\x49\x64","\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x61\x66\x74\x65\x72\x43\x72\x65\x61\x74\x65","\x6D\x65\x73\x73\x61\x67\x65","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x70\x68\x6F\x6E\x65","\x69\x64","\x63\x72\x65\x61\x74\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x43\x6D\x4C\x69\x73\x74","\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74","\x4E\x4F\x57","\x66\x6E","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x55\x6E\x69\x71\x75\x65\x69\x64","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x4C\x69\x73\x74\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x4C\x69\x73\x74\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x64\x65\x66\x69\x6E\x65"];_0xde14[0];var _=require(_0xde14[1]);var util=require(_0xde14[2]);var logger=require(_0xde14[4])(_0xde14[3]);var attributes=require(_0xde14[5]);module[_0xde14[6]]= function(_0x807bx5,_0x807bx6){return _0x807bx5[_0xde14[36]](_0xde14[7],attributes,{tableName:_0xde14[8],paranoid:false,indexes:[],timestamps:true,hooks:{afterCreate:function(_0x807bx7,_0x807bx8,_0x807bx9){var _0x807bxa=_0x807bx5[_0xde14[9]];var _0x807bxb=_0x807bx7[_0xde14[10]]({plain:true});if(_0x807bxb[_0xde14[11]]){_0x807bxa[_0xde14[34]][_0xde14[25]]({where:{type:_0xde14[33]},attributes:[_0xde14[20]],include:[{model:_0x807bxa[_0xde14[23]],as:_0xde14[32],where:{id:_0x807bxb[_0xde14[11]]}}]})[_0xde14[17]](function(_0x807bxd){if(_0x807bxd){var _0x807bxe=[];for(var _0x807bxf=0,_0x807bx10;_0x807bxf< _0x807bxd[_0xde14[18]];_0x807bxf++){_0x807bx10= _0x807bxd[_0x807bxf][_0xde14[10]]({plain:true});_0x807bxa[_0xde14[31]][_0xde14[21]]({phone:_0x807bxb[_0xde14[19]],ContactId:_0x807bxb[_0xde14[20]],ListId:_0x807bxb[_0xde14[11]],scheduledat:_0x807bxb[_0xde14[27]]?_0x807bxb[_0xde14[27]]:_0x807bx5[_0xde14[29]](_0xde14[28]),callback:_0x807bxb[_0xde14[30]]?true:false,callbackuniqueid:_0x807bxb[_0xde14[30]]?_0x807bxb[_0xde14[30]]:undefined,callbackat:_0x807bxb[_0xde14[30]]?_0x807bx5[_0xde14[29]](_0xde14[28]):undefined,VoiceQueueId:_0x807bx10[_0xde14[20]]})[_0xde14[16]](function(_0x807bxc){logger[_0xde14[15]](_0xde14[12],_0xde14[13],_0x807bxc[_0xde14[14]])})}}})[_0xde14[17]](function(){return _0x807bxa[_0xde14[34]][_0xde14[25]]({where:{type:_0xde14[33]},attributes:[_0xde14[20]],include:[{model:_0x807bxa[_0xde14[23]],as:_0xde14[24],where:{id:_0x807bxb[_0xde14[11]]}}]})[_0xde14[17]](function(_0x807bxd){if(_0x807bxd){var _0x807bxe=[];for(var _0x807bxf=0,_0x807bx10;_0x807bxf< _0x807bxd[_0xde14[18]];_0x807bxf++){_0x807bx10= _0x807bxd[_0x807bxf][_0xde14[10]]({plain:true});_0x807bxa[_0xde14[22]][_0xde14[21]]({phone:_0x807bxb[_0xde14[19]],ContactId:_0x807bxb[_0xde14[20]],ListId:_0x807bxb[_0xde14[11]],VoiceQueueId:_0x807bx10[_0xde14[20]]})[_0xde14[16]](function(_0x807bxc){logger[_0xde14[15]](_0xde14[12],_0xde14[13],_0x807bxc[_0xde14[14]])})}}})})[_0xde14[17]](function(){return _0x807bxa[_0xde14[26]][_0xde14[25]]({attributes:[_0xde14[20]],include:[{model:_0x807bxa[_0xde14[23]],as:_0xde14[32],where:{id:_0x807bxb[_0xde14[11]]}}]})[_0xde14[17]](function(_0x807bxd){if(_0x807bxd){var _0x807bxe=[];for(var _0x807bxf=0,_0x807bx10;_0x807bxf< _0x807bxd[_0xde14[18]];_0x807bxf++){_0x807bx10= _0x807bxd[_0x807bxf][_0xde14[10]]({plain:true});_0x807bxa[_0xde14[31]][_0xde14[21]]({phone:_0x807bxb[_0xde14[19]],ContactId:_0x807bxb[_0xde14[20]],ListId:_0x807bxb[_0xde14[11]],scheduledat:_0x807bxb[_0xde14[27]]?_0x807bxb[_0xde14[27]]:_0x807bx5[_0xde14[29]](_0xde14[28]),callback:_0x807bxb[_0xde14[30]]?true:false,callbackuniqueid:_0x807bxb[_0xde14[30]]?_0x807bxb[_0xde14[30]]:undefined,callbackat:_0x807bxb[_0xde14[30]]?_0x807bx5[_0xde14[29]](_0xde14[28]):undefined,CampaignId:_0x807bx10[_0xde14[20]]})[_0xde14[16]](function(_0x807bxc){logger[_0xde14[15]](_0xde14[12],_0xde14[13],_0x807bxc[_0xde14[14]])})}}})})[_0xde14[17]](function(){return _0x807bxa[_0xde14[26]][_0xde14[25]]({attributes:[_0xde14[20]],include:[{model:_0x807bxa[_0xde14[23]],as:_0xde14[24],where:{id:_0x807bxb[_0xde14[11]]}}]})[_0xde14[17]](function(_0x807bxd){if(_0x807bxd){var _0x807bxe=[];for(var _0x807bxf=0,_0x807bx10;_0x807bxf< _0x807bxd[_0xde14[18]];_0x807bxf++){_0x807bx10= _0x807bxd[_0x807bxf][_0xde14[10]]({plain:true});_0x807bxa[_0xde14[22]][_0xde14[21]]({phone:_0x807bxb[_0xde14[19]],ContactId:_0x807bxb[_0xde14[20]],ListId:_0x807bxb[_0xde14[11]],CampaignId:_0x807bx10[_0xde14[20]]})[_0xde14[16]](function(_0x807bxc){logger[_0xde14[15]](_0xde14[12],_0xde14[13],_0x807bxc[_0xde14[14]])})}}})})[_0xde14[17]](function(){_0x807bx9()})[_0xde14[16]](function(_0x807bxc){logger[_0xde14[15]](_0xde14[12],_0xde14[13],_0x807bxc[_0xde14[14]]);_0x807bx9(_0x807bxc)})}else {_0x807bx9( new Error(_0xde14[35]))}}}})}
\ No newline at end of file
+var _0xf9cd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x6D\x6F\x64\x65\x6C\x73","\x67\x65\x74","\x4C\x69\x73\x74\x49\x64","\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x61\x66\x74\x65\x72\x43\x72\x65\x61\x74\x65","\x6D\x65\x73\x73\x61\x67\x65","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x70\x68\x6F\x6E\x65","\x69\x64","\x63\x72\x65\x61\x74\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x43\x6D\x4C\x69\x73\x74","\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74","\x4E\x4F\x57","\x66\x6E","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x55\x6E\x69\x71\x75\x65\x69\x64","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x4C\x69\x73\x74\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x4C\x69\x73\x74\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x64\x65\x66\x69\x6E\x65"];_0xf9cd[0];var _=require(_0xf9cd[1]);var util=require(_0xf9cd[2]);var logger=require(_0xf9cd[4])(_0xf9cd[3]);var attributes=require(_0xf9cd[5]);module[_0xf9cd[6]]= function(_0x95e6x5,_0x95e6x6){return _0x95e6x5[_0xf9cd[36]](_0xf9cd[7],attributes,{tableName:_0xf9cd[8],paranoid:false,indexes:[],timestamps:true,hooks:{afterCreate:function(_0x95e6x7,_0x95e6x8,_0x95e6x9){var _0x95e6xa=_0x95e6x5[_0xf9cd[9]];var _0x95e6xb=_0x95e6x7[_0xf9cd[10]]({plain:true});if(_0x95e6xb[_0xf9cd[11]]){_0x95e6xa[_0xf9cd[34]][_0xf9cd[25]]({where:{type:_0xf9cd[33]},attributes:[_0xf9cd[20]],include:[{model:_0x95e6xa[_0xf9cd[23]],as:_0xf9cd[32],where:{id:_0x95e6xb[_0xf9cd[11]]}}]})[_0xf9cd[17]](function(_0x95e6xd){if(_0x95e6xd){var _0x95e6xe=[];for(var _0x95e6xf=0,_0x95e6x10;_0x95e6xf< _0x95e6xd[_0xf9cd[18]];_0x95e6xf++){_0x95e6x10= _0x95e6xd[_0x95e6xf][_0xf9cd[10]]({plain:true});_0x95e6xa[_0xf9cd[31]][_0xf9cd[21]]({phone:_0x95e6xb[_0xf9cd[19]],ContactId:_0x95e6xb[_0xf9cd[20]],ListId:_0x95e6xb[_0xf9cd[11]],scheduledat:_0x95e6xb[_0xf9cd[27]]?_0x95e6xb[_0xf9cd[27]]:_0x95e6x5[_0xf9cd[29]](_0xf9cd[28]),callback:_0x95e6xb[_0xf9cd[30]]?true:false,callbackuniqueid:_0x95e6xb[_0xf9cd[30]]?_0x95e6xb[_0xf9cd[30]]:undefined,callbackat:_0x95e6xb[_0xf9cd[30]]?_0x95e6x5[_0xf9cd[29]](_0xf9cd[28]):undefined,VoiceQueueId:_0x95e6x10[_0xf9cd[20]]})[_0xf9cd[16]](function(_0x95e6xc){logger[_0xf9cd[15]](_0xf9cd[12],_0xf9cd[13],_0x95e6xc[_0xf9cd[14]])})}}})[_0xf9cd[17]](function(){return _0x95e6xa[_0xf9cd[34]][_0xf9cd[25]]({where:{type:_0xf9cd[33]},attributes:[_0xf9cd[20]],include:[{model:_0x95e6xa[_0xf9cd[23]],as:_0xf9cd[24],where:{id:_0x95e6xb[_0xf9cd[11]]}}]})[_0xf9cd[17]](function(_0x95e6xd){if(_0x95e6xd){var _0x95e6xe=[];for(var _0x95e6xf=0,_0x95e6x10;_0x95e6xf< _0x95e6xd[_0xf9cd[18]];_0x95e6xf++){_0x95e6x10= _0x95e6xd[_0x95e6xf][_0xf9cd[10]]({plain:true});_0x95e6xa[_0xf9cd[22]][_0xf9cd[21]]({phone:_0x95e6xb[_0xf9cd[19]],ContactId:_0x95e6xb[_0xf9cd[20]],ListId:_0x95e6xb[_0xf9cd[11]],VoiceQueueId:_0x95e6x10[_0xf9cd[20]]})[_0xf9cd[16]](function(_0x95e6xc){logger[_0xf9cd[15]](_0xf9cd[12],_0xf9cd[13],_0x95e6xc[_0xf9cd[14]])})}}})})[_0xf9cd[17]](function(){return _0x95e6xa[_0xf9cd[26]][_0xf9cd[25]]({attributes:[_0xf9cd[20]],include:[{model:_0x95e6xa[_0xf9cd[23]],as:_0xf9cd[32],where:{id:_0x95e6xb[_0xf9cd[11]]}}]})[_0xf9cd[17]](function(_0x95e6xd){if(_0x95e6xd){var _0x95e6xe=[];for(var _0x95e6xf=0,_0x95e6x10;_0x95e6xf< _0x95e6xd[_0xf9cd[18]];_0x95e6xf++){_0x95e6x10= _0x95e6xd[_0x95e6xf][_0xf9cd[10]]({plain:true});_0x95e6xa[_0xf9cd[31]][_0xf9cd[21]]({phone:_0x95e6xb[_0xf9cd[19]],ContactId:_0x95e6xb[_0xf9cd[20]],ListId:_0x95e6xb[_0xf9cd[11]],scheduledat:_0x95e6xb[_0xf9cd[27]]?_0x95e6xb[_0xf9cd[27]]:_0x95e6x5[_0xf9cd[29]](_0xf9cd[28]),callback:_0x95e6xb[_0xf9cd[30]]?true:false,callbackuniqueid:_0x95e6xb[_0xf9cd[30]]?_0x95e6xb[_0xf9cd[30]]:undefined,callbackat:_0x95e6xb[_0xf9cd[30]]?_0x95e6x5[_0xf9cd[29]](_0xf9cd[28]):undefined,CampaignId:_0x95e6x10[_0xf9cd[20]]})[_0xf9cd[16]](function(_0x95e6xc){logger[_0xf9cd[15]](_0xf9cd[12],_0xf9cd[13],_0x95e6xc[_0xf9cd[14]])})}}})})[_0xf9cd[17]](function(){return _0x95e6xa[_0xf9cd[26]][_0xf9cd[25]]({attributes:[_0xf9cd[20]],include:[{model:_0x95e6xa[_0xf9cd[23]],as:_0xf9cd[24],where:{id:_0x95e6xb[_0xf9cd[11]]}}]})[_0xf9cd[17]](function(_0x95e6xd){if(_0x95e6xd){var _0x95e6xe=[];for(var _0x95e6xf=0,_0x95e6x10;_0x95e6xf< _0x95e6xd[_0xf9cd[18]];_0x95e6xf++){_0x95e6x10= _0x95e6xd[_0x95e6xf][_0xf9cd[10]]({plain:true});_0x95e6xa[_0xf9cd[22]][_0xf9cd[21]]({phone:_0x95e6xb[_0xf9cd[19]],ContactId:_0x95e6xb[_0xf9cd[20]],ListId:_0x95e6xb[_0xf9cd[11]],CampaignId:_0x95e6x10[_0xf9cd[20]]})[_0xf9cd[16]](function(_0x95e6xc){logger[_0xf9cd[15]](_0xf9cd[12],_0xf9cd[13],_0x95e6xc[_0xf9cd[14]])})}}})})[_0xf9cd[17]](function(){_0x95e6x9()})[_0xf9cd[16]](function(_0x95e6xc){logger[_0xf9cd[15]](_0xf9cd[12],_0xf9cd[13],_0x95e6xc[_0xf9cd[14]]);_0x95e6x9(_0x95e6xc)})}else {_0x95e6x9( new Error(_0xf9cd[35]))}}}})}
\ No newline at end of file
index 3cf941b..f7ec66f 100644 (file)
@@ -1 +1 @@
-var _0x8e7e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x72\x65\x61\x74\x65\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65"];_0x8e7e[0];var _=require(_0x8e7e[1]);var util=require(_0x8e7e[2]);var moment=require(_0x8e7e[3]);var BPromise=require(_0x8e7e[4]);var db=require(_0x8e7e[6])[_0x8e7e[5]];var utils=require(_0x8e7e[7]);var logger=require(_0x8e7e[9])(_0x8e7e[8]);var jayson=require(_0x8e7e[10]);var client=jayson[_0x8e7e[12]][_0x8e7e[11]]({port:9002});function respondWithRpcPromise(_0x115fxb,_0x115fxc,_0x115fxd){return  new BPromise(function(_0x115fxe,_0x115fxf){return client[_0x8e7e[25]](_0x115fxb,_0x115fxd)[_0x8e7e[24]](function(_0x115fx11){logger[_0x8e7e[17]](_0x8e7e[13],_0x115fxc,_0x8e7e[16]);logger[_0x8e7e[20]](_0x8e7e[18],_0x115fxc,_0x8e7e[16],JSON[_0x8e7e[19]](_0x115fx11));if(_0x115fx11[_0x8e7e[14]]){if(_0x115fx11[_0x8e7e[14]][_0x8e7e[21]]=== 500){logger[_0x8e7e[14]](_0x8e7e[13],_0x115fxc,_0x115fx11[_0x8e7e[14]][_0x8e7e[22]]);return _0x115fxf(_0x115fx11[_0x8e7e[14]][_0x8e7e[22]])};logger[_0x8e7e[14]](_0x8e7e[13],_0x115fxc,_0x115fx11[_0x8e7e[14]][_0x8e7e[22]]);return _0x115fxe(_0x115fx11[_0x8e7e[14]][_0x8e7e[22]])}else {logger[_0x8e7e[17]](_0x8e7e[13],_0x115fxc,_0x8e7e[16]);_0x115fxe(_0x115fx11[_0x8e7e[23]][_0x8e7e[22]])}})[_0x8e7e[15]](function(_0x115fx10){logger[_0x8e7e[14]](_0x8e7e[13],_0x115fxc,_0x115fx10);_0x115fxf(_0x115fx10)})})}exports[_0x8e7e[26]]= function(_0x115fxd){var _0x115fx12=this;return  new Promise(function(_0x115fxe,_0x115fxf){return db[_0x8e7e[36]][_0x8e7e[35]]({raw:_0x115fxd[_0x8e7e[27]]?(_0x115fxd[_0x8e7e[27]][_0x8e7e[28]]=== undefined)?true:false:true,where:_0x115fxd[_0x8e7e[27]]?_0x115fxd[_0x8e7e[27]][_0x8e7e[29]]|| null:null,attributes:_0x115fxd[_0x8e7e[27]]?_0x115fxd[_0x8e7e[27]][_0x8e7e[30]]|| null:null,include:_0x115fxd[_0x8e7e[27]]?(_0x115fxd[_0x8e7e[27]][_0x8e7e[31]]?_[_0x8e7e[34]](_0x115fxd[_0x8e7e[27]][_0x8e7e[31]],function(_0x115fx13){return {model:db[_0x115fx13[_0x8e7e[32]]],as:_0x115fx13[_0x8e7e[33]],attributes:_0x115fx13[_0x8e7e[30]],include:_0x115fx13[_0x8e7e[31]]?_[_0x8e7e[34]](_0x115fx13[_0x8e7e[31]],function(_0x115fx14){return {model:db[_0x115fx14[_0x8e7e[32]]],as:_0x115fx14[_0x8e7e[33]],attributes:_0x115fx14[_0x8e7e[30]],include:_0x115fx14[_0x8e7e[31]]?_[_0x8e7e[34]](_0x115fx14[_0x8e7e[31]],function(_0x115fx15){return {model:db[_0x115fx15[_0x8e7e[32]]],as:_0x115fx15[_0x8e7e[33]],attributes:_0x115fx15[_0x8e7e[30]]}}):[]}}):[]}}):[]):[]})[_0x8e7e[24]](function(_0x115fx11){logger[_0x8e7e[17]](_0x8e7e[26],_0x115fxd);logger[_0x8e7e[20]](_0x8e7e[26],_0x115fxd,JSON[_0x8e7e[19]](_0x115fx11));_0x115fxe(_0x115fx11)})[_0x8e7e[15]](function(_0x115fx10){logger[_0x8e7e[14]](_0x8e7e[26],_0x115fx10[_0x8e7e[22]],_0x115fxd);_0x115fxf(_0x115fx12[_0x8e7e[14]](500,_0x115fx10[_0x8e7e[22]]))})})};exports[_0x8e7e[37]]= function(_0x115fxd){var _0x115fx12=this;return  new Promise(function(_0x115fxe,_0x115fxf){return db[_0x8e7e[36]][_0x8e7e[39]](_0x115fxd[_0x8e7e[38]],{raw:_0x115fxd[_0x8e7e[27]]?(_0x115fxd[_0x8e7e[27]][_0x8e7e[28]]=== undefined)?true:false:true})[_0x8e7e[24]](function(_0x115fx11){logger[_0x8e7e[17]](_0x8e7e[37],_0x115fxd);logger[_0x8e7e[20]](_0x8e7e[37],_0x115fxd,JSON[_0x8e7e[19]](_0x115fx11));_0x115fxe(_0x115fx11)})[_0x8e7e[15]](function(_0x115fx10){logger[_0x8e7e[14]](_0x8e7e[37],_0x115fx10[_0x8e7e[22]],_0x115fxd);_0x115fxf(_0x115fx12[_0x8e7e[14]](500,_0x115fx10[_0x8e7e[22]]))})})}
\ No newline at end of file
+var _0x795c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x72\x65\x61\x74\x65\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65"];_0x795c[0];var _=require(_0x795c[1]);var util=require(_0x795c[2]);var moment=require(_0x795c[3]);var BPromise=require(_0x795c[4]);var db=require(_0x795c[6])[_0x795c[5]];var utils=require(_0x795c[7]);var logger=require(_0x795c[9])(_0x795c[8]);var jayson=require(_0x795c[10]);var client=jayson[_0x795c[12]][_0x795c[11]]({port:9002});function respondWithRpcPromise(_0xca1fxb,_0xca1fxc,_0xca1fxd){return  new BPromise(function(_0xca1fxe,_0xca1fxf){return client[_0x795c[25]](_0xca1fxb,_0xca1fxd)[_0x795c[24]](function(_0xca1fx11){logger[_0x795c[17]](_0x795c[13],_0xca1fxc,_0x795c[16]);logger[_0x795c[20]](_0x795c[18],_0xca1fxc,_0x795c[16],JSON[_0x795c[19]](_0xca1fx11));if(_0xca1fx11[_0x795c[14]]){if(_0xca1fx11[_0x795c[14]][_0x795c[21]]=== 500){logger[_0x795c[14]](_0x795c[13],_0xca1fxc,_0xca1fx11[_0x795c[14]][_0x795c[22]]);return _0xca1fxf(_0xca1fx11[_0x795c[14]][_0x795c[22]])};logger[_0x795c[14]](_0x795c[13],_0xca1fxc,_0xca1fx11[_0x795c[14]][_0x795c[22]]);return _0xca1fxe(_0xca1fx11[_0x795c[14]][_0x795c[22]])}else {logger[_0x795c[17]](_0x795c[13],_0xca1fxc,_0x795c[16]);_0xca1fxe(_0xca1fx11[_0x795c[23]][_0x795c[22]])}})[_0x795c[15]](function(_0xca1fx10){logger[_0x795c[14]](_0x795c[13],_0xca1fxc,_0xca1fx10);_0xca1fxf(_0xca1fx10)})})}exports[_0x795c[26]]= function(_0xca1fxd){var _0xca1fx12=this;return  new Promise(function(_0xca1fxe,_0xca1fxf){return db[_0x795c[36]][_0x795c[35]]({raw:_0xca1fxd[_0x795c[27]]?(_0xca1fxd[_0x795c[27]][_0x795c[28]]=== undefined)?true:false:true,where:_0xca1fxd[_0x795c[27]]?_0xca1fxd[_0x795c[27]][_0x795c[29]]|| null:null,attributes:_0xca1fxd[_0x795c[27]]?_0xca1fxd[_0x795c[27]][_0x795c[30]]|| null:null,include:_0xca1fxd[_0x795c[27]]?(_0xca1fxd[_0x795c[27]][_0x795c[31]]?_[_0x795c[34]](_0xca1fxd[_0x795c[27]][_0x795c[31]],function(_0xca1fx13){return {model:db[_0xca1fx13[_0x795c[32]]],as:_0xca1fx13[_0x795c[33]],attributes:_0xca1fx13[_0x795c[30]],include:_0xca1fx13[_0x795c[31]]?_[_0x795c[34]](_0xca1fx13[_0x795c[31]],function(_0xca1fx14){return {model:db[_0xca1fx14[_0x795c[32]]],as:_0xca1fx14[_0x795c[33]],attributes:_0xca1fx14[_0x795c[30]],include:_0xca1fx14[_0x795c[31]]?_[_0x795c[34]](_0xca1fx14[_0x795c[31]],function(_0xca1fx15){return {model:db[_0xca1fx15[_0x795c[32]]],as:_0xca1fx15[_0x795c[33]],attributes:_0xca1fx15[_0x795c[30]]}}):[]}}):[]}}):[]):[]})[_0x795c[24]](function(_0xca1fx11){logger[_0x795c[17]](_0x795c[26],_0xca1fxd);logger[_0x795c[20]](_0x795c[26],_0xca1fxd,JSON[_0x795c[19]](_0xca1fx11));_0xca1fxe(_0xca1fx11)})[_0x795c[15]](function(_0xca1fx10){logger[_0x795c[14]](_0x795c[26],_0xca1fx10[_0x795c[22]],_0xca1fxd);_0xca1fxf(_0xca1fx12[_0x795c[14]](500,_0xca1fx10[_0x795c[22]]))})})};exports[_0x795c[37]]= function(_0xca1fxd){var _0xca1fx12=this;return  new Promise(function(_0xca1fxe,_0xca1fxf){return db[_0x795c[36]][_0x795c[39]](_0xca1fxd[_0x795c[38]],{raw:_0xca1fxd[_0x795c[27]]?(_0xca1fxd[_0x795c[27]][_0x795c[28]]=== undefined)?true:false:true})[_0x795c[24]](function(_0xca1fx11){logger[_0x795c[17]](_0x795c[37],_0xca1fxd);logger[_0x795c[20]](_0x795c[37],_0xca1fxd,JSON[_0x795c[19]](_0xca1fx11));_0xca1fxe(_0xca1fx11)})[_0x795c[15]](function(_0xca1fx10){logger[_0x795c[14]](_0x795c[37],_0xca1fx10[_0x795c[22]],_0xca1fxd);_0xca1fxf(_0xca1fx12[_0x795c[14]](500,_0xca1fx10[_0x795c[22]]))})})}
\ No newline at end of file
index 92bdb58..4622cc3 100644 (file)
@@ -1 +1 @@
-var _0x7ca5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x64\x65\x73\x63\x72\x69\x62\x65","\x67\x65\x74","\x2F","\x69\x6E\x64\x65\x78","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7ca5[0];var multer=require(_0x7ca5[1]);var util=require(_0x7ca5[2]);var path=require(_0x7ca5[3]);var express=require(_0x7ca5[4]);var router=express.Router();var auth=require(_0x7ca5[5]);var config=require(_0x7ca5[6]);var controller=require(_0x7ca5[7]);router[_0x7ca5[11]](_0x7ca5[8],auth[_0x7ca5[9]](),controller[_0x7ca5[10]]);router[_0x7ca5[11]](_0x7ca5[12],auth[_0x7ca5[9]](),controller[_0x7ca5[13]]);router[_0x7ca5[11]](_0x7ca5[14],auth[_0x7ca5[9]](),controller[_0x7ca5[15]]);router[_0x7ca5[17]](_0x7ca5[12],auth[_0x7ca5[9]](),controller[_0x7ca5[16]]);router[_0x7ca5[17]](_0x7ca5[18],auth[_0x7ca5[9]](),controller[_0x7ca5[19]]);router[_0x7ca5[21]](_0x7ca5[14],auth[_0x7ca5[9]](),controller[_0x7ca5[20]]);router[_0x7ca5[23]](_0x7ca5[14],auth[_0x7ca5[9]](),controller[_0x7ca5[22]]);module[_0x7ca5[24]]= router
\ No newline at end of file
+var _0x2947=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x64\x65\x73\x63\x72\x69\x62\x65","\x67\x65\x74","\x2F","\x69\x6E\x64\x65\x78","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2947[0];var multer=require(_0x2947[1]);var util=require(_0x2947[2]);var path=require(_0x2947[3]);var express=require(_0x2947[4]);var router=express.Router();var auth=require(_0x2947[5]);var config=require(_0x2947[6]);var controller=require(_0x2947[7]);router[_0x2947[11]](_0x2947[8],auth[_0x2947[9]](),controller[_0x2947[10]]);router[_0x2947[11]](_0x2947[12],auth[_0x2947[9]](),controller[_0x2947[13]]);router[_0x2947[11]](_0x2947[14],auth[_0x2947[9]](),controller[_0x2947[15]]);router[_0x2947[17]](_0x2947[12],auth[_0x2947[9]](),controller[_0x2947[16]]);router[_0x2947[17]](_0x2947[18],auth[_0x2947[9]](),controller[_0x2947[19]]);router[_0x2947[21]](_0x2947[14],auth[_0x2947[9]](),controller[_0x2947[20]]);router[_0x2947[23]](_0x2947[14],auth[_0x2947[9]](),controller[_0x2947[22]]);module[_0x2947[24]]= router
\ No newline at end of file
index 65c0567..d584679 100644 (file)
@@ -1 +1 @@
-var _0x3fe1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x61\x6C\x69\x61\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x74\x79\x70\x65","\x73\x65\x6C\x65\x63\x74","\x76\x61\x6C\x75\x65\x73","\x70\x61\x72\x73\x65","\x76\x61\x6C\x75\x65","\x6D\x61\x70","\x69\x73\x41\x72\x72\x61\x79","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x3fe1[0];var Sequelize=require(_0x3fe1[1]);var _=require(_0x3fe1[2]);module[_0x3fe1[3]]= {name:{type:Sequelize[_0x3fe1[4]],get:function(_0x8ec2x3){return this[_0x3fe1[6]](_0x3fe1[5])}},alias:{type:Sequelize[_0x3fe1[7]],allowNull:false,set:function(_0x8ec2x3){this[_0x3fe1[9]](_0x3fe1[5],_0x8ec2x3?_0x8ec2x3:this[_0x3fe1[6]](_0x3fe1[8]))}},type:{type:Sequelize[_0x3fe1[7]],allowNull:false},values:{type:Sequelize[_0x3fe1[7]],get:function(){if(this[_0x3fe1[6]](_0x3fe1[10])=== _0x3fe1[11]){return _[_0x3fe1[15]](JSON[_0x3fe1[13]](this[_0x3fe1[6]](_0x3fe1[12])),_0x3fe1[14])}else {return this[_0x3fe1[6]](_0x3fe1[12])}},set:function(_0x8ec2x3){if(Array[_0x3fe1[16]](_0x8ec2x3)){this[_0x3fe1[9]](_0x3fe1[12],JSON[_0x3fe1[17]](_[_0x3fe1[15]](_0x8ec2x3,function(_0x8ec2x4){return {value:_0x8ec2x4}})))}else {this[_0x3fe1[9]](_0x3fe1[12],_0x8ec2x3)}}},required:{type:Sequelize[_0x3fe1[18]],defaultValue:false}}
\ No newline at end of file
+var _0x6d15=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x61\x6C\x69\x61\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x74\x79\x70\x65","\x73\x65\x6C\x65\x63\x74","\x76\x61\x6C\x75\x65\x73","\x70\x61\x72\x73\x65","\x76\x61\x6C\x75\x65","\x6D\x61\x70","\x69\x73\x41\x72\x72\x61\x79","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x6d15[0];var Sequelize=require(_0x6d15[1]);var _=require(_0x6d15[2]);module[_0x6d15[3]]= {name:{type:Sequelize[_0x6d15[4]],get:function(_0x65dcx3){return this[_0x6d15[6]](_0x6d15[5])}},alias:{type:Sequelize[_0x6d15[7]],allowNull:false,set:function(_0x65dcx3){this[_0x6d15[9]](_0x6d15[5],_0x65dcx3?_0x65dcx3:this[_0x6d15[6]](_0x6d15[8]))}},type:{type:Sequelize[_0x6d15[7]],allowNull:false},values:{type:Sequelize[_0x6d15[7]],get:function(){if(this[_0x6d15[6]](_0x6d15[10])=== _0x6d15[11]){return _[_0x6d15[15]](JSON[_0x6d15[13]](this[_0x6d15[6]](_0x6d15[12])),_0x6d15[14])}else {return this[_0x6d15[6]](_0x6d15[12])}},set:function(_0x65dcx3){if(Array[_0x6d15[16]](_0x65dcx3)){this[_0x6d15[9]](_0x6d15[12],JSON[_0x6d15[17]](_[_0x6d15[15]](_0x65dcx3,function(_0x65dcx4){return {value:_0x65dcx4}})))}else {this[_0x6d15[9]](_0x6d15[12],_0x65dcx3)}}},required:{type:Sequelize[_0x6d15[18]],defaultValue:false}}
\ No newline at end of file
index f1e07da..7ca13cb 100644 (file)
@@ -1 +1 @@
-var _0xbe8e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x53\x54\x52\x49\x4E\x47","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x74\x79\x70\x65","\x74\x65\x78\x74","\x49\x4E\x54\x45\x47\x45\x52","\x6E\x75\x6D\x62\x65\x72","\x42\x4F\x4F\x4C\x45\x41\x4E","\x73\x77\x69\x74\x63\x68","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x63\x66\x5F\x25\x64","\x66\x6F\x72\x6D\x61\x74","\x61\x64\x64\x43\x6F\x6C\x75\x6D\x6E","\x71\x75\x65\x72\x79\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E"];_0xbe8e[0];var jsonpatch=require(_0xbe8e[1]);var rp=require(_0xbe8e[2]);var moment=require(_0xbe8e[3]);var BPromise=require(_0xbe8e[4]);var util=require(_0xbe8e[5]);var path=require(_0xbe8e[6]);var sox=require(_0xbe8e[7]);var ejs=require(_0xbe8e[8]);var fs=require(_0xbe8e[9]);var _=require(_0xbe8e[10]);var squel=require(_0xbe8e[11]);var crypto=require(_0xbe8e[12]);var jsforce=require(_0xbe8e[13]);var toCsv=require(_0xbe8e[14]);var qs=require(_0xbe8e[15]);var logger=require(_0xbe8e[17])(_0xbe8e[16]);var utils=require(_0xbe8e[18]);var config=require(_0xbe8e[19]);var db=require(_0xbe8e[21])[_0xbe8e[20]];function respondWithStatusCode(_0xdc39x15,_0xdc39x16,_0xdc39x17){_0xdc39x16= _0xdc39x16|| 204;return function(_0xdc39x18){if(_0xdc39x18){logger[_0xbe8e[24]](_0xbe8e[22],_0xdc39x17,_0xdc39x16,_0xbe8e[23]);logger[_0xbe8e[26]](_0xbe8e[25],_0xdc39x17,_0xdc39x16,_0xbe8e[23]);return _0xdc39x15[_0xbe8e[27]](_0xdc39x16)};return _0xdc39x15[_0xbe8e[29]](304)[_0xbe8e[28]]()}}function respondWithResult(_0xdc39x15,_0xdc39x16,_0xdc39x17){_0xdc39x16= _0xdc39x16|| 200;return function(_0xdc39x18){if(_0xdc39x18){logger[_0xbe8e[24]](_0xbe8e[22],_0xdc39x17,_0xdc39x16,_0xbe8e[30]);logger[_0xbe8e[26]](_0xbe8e[25],_0xdc39x17,_0xdc39x16,_0xbe8e[30],JSON[_0xbe8e[31]](_0xdc39x18));return _0xdc39x15[_0xbe8e[29]](_0xdc39x16)[_0xbe8e[32]](_0xdc39x18)};return _0xdc39x15[_0xbe8e[29]](304)[_0xbe8e[28]]()}}function respondWithFilteredResult(_0xdc39x15,_0xdc39x1b,_0xdc39x17){return function(_0xdc39x18){if(_0xdc39x18){var _0xdc39x1c=_0xdc39x18[_0xbe8e[33]],_0xdc39x1d=_0xdc39x1b[_0xbe8e[34]],_0xdc39x1e=_0xdc39x1b[_0xbe8e[34]]+ _0xdc39x1b[_0xbe8e[35]],_0xdc39x16;if(_0xdc39x1e>= _0xdc39x1c){_0xdc39x1e= _0xdc39x1c;_0xdc39x16= 200}else {_0xdc39x16= 206};_0xdc39x15[_0xbe8e[29]](_0xdc39x16);logger[_0xbe8e[24]](_0xbe8e[22],_0xdc39x17,_0xdc39x16,_0xbe8e[36]);logger[_0xbe8e[26]](_0xbe8e[25],_0xdc39x17,_0xdc39x16,_0xbe8e[30],JSON[_0xbe8e[31]](_0xdc39x18));return _0xdc39x15[_0xbe8e[40]](_0xbe8e[37],_0xdc39x1d+ _0xbe8e[38]+ _0xdc39x1e+ _0xbe8e[39]+ _0xdc39x1c)[_0xbe8e[32]](_0xdc39x18)};return null}}function patchUpdates(_0xdc39x20){return function(_0xdc39x18){try{jsonpatch[_0xbe8e[41]](_0xdc39x18,_0xdc39x20,true)}catch(err){return BPromise[_0xbe8e[42]](err)};return _0xdc39x18[_0xbe8e[43]]()}}function saveUpdates(_0xdc39x22,_0xdc39x16,_0xdc39x17){return function(_0xdc39x18){if(_0xdc39x18){return _0xdc39x18[_0xbe8e[46]](_0xdc39x22)[_0xbe8e[45]](function(_0xdc39x23){logger[_0xbe8e[24]](_0xbe8e[22],_0xdc39x17,_0xdc39x16,_0xbe8e[44]);logger[_0xbe8e[26]](_0xbe8e[25],_0xdc39x17,_0xdc39x16,_0xbe8e[44],JSON[_0xbe8e[31]](_0xdc39x18));return _0xdc39x23})};return null}}function removeEntity(_0xdc39x15,_0xdc39x16,_0xdc39x17){return function(_0xdc39x18){if(_0xdc39x18){return _0xdc39x18[_0xbe8e[48]]()[_0xbe8e[45]](function(){logger[_0xbe8e[24]](_0xbe8e[22],_0xdc39x17,_0xdc39x16,_0xbe8e[47]);logger[_0xbe8e[26]](_0xbe8e[25],_0xdc39x17,_0xdc39x16,_0xbe8e[47],JSON[_0xbe8e[31]](_0xdc39x18));_0xdc39x15[_0xbe8e[29]](204)[_0xbe8e[28]]()})}}}function handleEntityNotFound(_0xdc39x15,_0xdc39x16,_0xdc39x17){return function(_0xdc39x18){if(!_0xdc39x18){logger[_0xbe8e[50]](_0xbe8e[22],_0xdc39x17,404,_0xbe8e[49]);_0xdc39x15[_0xbe8e[29]](404)[_0xbe8e[28]]();return null};return _0xdc39x18}}function handleError(_0xdc39x15,_0xdc39x16,_0xdc39x17){_0xdc39x16= _0xdc39x16|| 500;return function(_0xdc39x27){logger[_0xbe8e[50]](_0xbe8e[22],_0xdc39x17,_0xdc39x16,JSON[_0xbe8e[31]](_0xdc39x27));delete _0xdc39x27[_0xbe8e[51]];_0xdc39x15[_0xbe8e[29]](_0xdc39x16)[_0xbe8e[52]](_0xdc39x27)}}exports[_0xbe8e[53]]= function(_0xdc39x28,_0xdc39x15){var _0xdc39x1b={},_0xdc39x29={};_0xdc39x29[_0xbe8e[54]]= _[_0xbe8e[57]](db[_0xbe8e[56]][_0xbe8e[55]]);_0xdc39x29[_0xbe8e[58]]= _[_0xbe8e[57]](_0xdc39x28[_0xbe8e[58]]);_0xdc39x29[_0xbe8e[59]]= _[_0xbe8e[60]](_0xdc39x29[_0xbe8e[54]],_0xdc39x29[_0xbe8e[58]]);_0xdc39x1b[_0xbe8e[61]]= _[_0xbe8e[60]](_0xdc39x29[_0xbe8e[54]],qs[_0xbe8e[62]](_0xdc39x28[_0xbe8e[58]][_0xbe8e[62]]));_0xdc39x1b[_0xbe8e[61]]= (_0xdc39x1b[_0xbe8e[61]][_0xbe8e[63]])?_0xdc39x1b[_0xbe8e[61]]:_0xdc39x29[_0xbe8e[54]];if(!_0xdc39x28[_0xbe8e[58]][_0xbe8e[65]](_0xbe8e[64])){_0xdc39x1b[_0xbe8e[35]]= qs[_0xbe8e[35]](_0xdc39x28[_0xbe8e[58]][_0xbe8e[35]]);_0xdc39x1b[_0xbe8e[34]]= qs[_0xbe8e[34]](_0xdc39x28[_0xbe8e[58]][_0xbe8e[34]])};_0xdc39x1b[_0xbe8e[66]]= qs[_0xbe8e[67]](_0xdc39x28[_0xbe8e[58]][_0xbe8e[67]]);_0xdc39x1b[_0xbe8e[68]]= qs[_0xbe8e[59]](_[_0xbe8e[69]](_0xdc39x28[_0xbe8e[58]],_0xdc39x29[_0xbe8e[59]]));if(_0xdc39x28[_0xbe8e[58]][_0xbe8e[70]]){_0xdc39x1b[_0xbe8e[68]]= _[_0xbe8e[73]](_0xdc39x1b[_0xbe8e[68]],{$or:_[_0xbe8e[72]](_0xdc39x1b[_0xbe8e[61]],function(_0xdc39x2a){var _0xdc39x2b={};_0xdc39x2b[_0xdc39x2a]= {$like:_0xbe8e[71]+ _0xdc39x28[_0xbe8e[58]][_0xbe8e[70]]+ _0xbe8e[71]};return _0xdc39x2b})})};_0xdc39x1b= _[_0xbe8e[73]]({},_0xdc39x1b,_0xdc39x28[_0xbe8e[74]]);return db[_0xbe8e[56]][_0xbe8e[76]](_0xdc39x1b)[_0xbe8e[45]](respondWithFilteredResult(_0xdc39x15,_0xdc39x1b,_0xbe8e[53]))[_0xbe8e[75]](handleError(_0xdc39x15,null,_0xbe8e[53]))};exports[_0xbe8e[77]]= function(_0xdc39x28,_0xdc39x15){var _0xdc39x1b={raw:true,where:{id:_0xdc39x28[_0xbe8e[79]][_0xbe8e[78]]}},_0xdc39x29={};_0xdc39x29[_0xbe8e[54]]= _[_0xbe8e[57]](db[_0xbe8e[56]][_0xbe8e[55]]);_0xdc39x29[_0xbe8e[58]]= _[_0xbe8e[57]](_0xdc39x28[_0xbe8e[58]]);_0xdc39x29[_0xbe8e[59]]= _[_0xbe8e[60]](_0xdc39x29[_0xbe8e[54]],_0xdc39x29[_0xbe8e[58]]);_0xdc39x1b[_0xbe8e[61]]= _[_0xbe8e[60]](_0xdc39x29[_0xbe8e[54]],qs[_0xbe8e[62]](_0xdc39x28[_0xbe8e[58]][_0xbe8e[62]]));_0xdc39x1b[_0xbe8e[61]]= (_0xdc39x1b[_0xbe8e[61]][_0xbe8e[63]])?_0xdc39x1b[_0xbe8e[61]]:_0xdc39x29[_0xbe8e[54]];_0xdc39x1b= _[_0xbe8e[73]]({},_0xdc39x1b,_0xdc39x28[_0xbe8e[74]]);return db[_0xbe8e[56]][_0xbe8e[80]](_0xdc39x1b)[_0xbe8e[45]](handleEntityNotFound(_0xdc39x15,null,_0xbe8e[77]))[_0xbe8e[45]](respondWithResult(_0xdc39x15,null,_0xbe8e[77]))[_0xbe8e[75]](handleError(_0xdc39x15,null,_0xbe8e[77]))};exports[_0xbe8e[46]]= function(_0xdc39x28,_0xdc39x15){if(_0xdc39x28[_0xbe8e[81]][_0xbe8e[78]]){delete _0xdc39x28[_0xbe8e[81]][_0xbe8e[78]]};return db[_0xbe8e[56]][_0xbe8e[80]]({where:{id:_0xdc39x28[_0xbe8e[79]][_0xbe8e[78]]}})[_0xbe8e[45]](handleEntityNotFound(_0xdc39x15,null,_0xbe8e[46]))[_0xbe8e[45]](saveUpdates(_0xdc39x28[_0xbe8e[81]],null,_0xbe8e[46]))[_0xbe8e[45]](respondWithResult(_0xdc39x15,null,_0xbe8e[46]))[_0xbe8e[75]](handleError(_0xdc39x15,null,_0xbe8e[46]))};exports[_0xbe8e[48]]= function(_0xdc39x28,_0xdc39x15){return db[_0xbe8e[56]][_0xbe8e[80]]({where:{id:_0xdc39x28[_0xbe8e[79]][_0xbe8e[78]]}})[_0xbe8e[45]](handleEntityNotFound(_0xdc39x15,null,_0xbe8e[48]))[_0xbe8e[45]](removeEntity(_0xdc39x15,null,_0xbe8e[48]))[_0xbe8e[75]](handleError(_0xdc39x15,null,_0xbe8e[48]))};exports[_0xbe8e[82]]= function(_0xdc39x28,_0xdc39x15){var _0xdc39x2c;return db[_0xbe8e[96]][_0xbe8e[97]](function(_0xdc39x2d){return db[_0xbe8e[56]][_0xbe8e[82]](_0xdc39x28[_0xbe8e[81]],{transaction:_0xdc39x2d})[_0xbe8e[45]](function(_0xdc39x18){_0xdc39x2c= _0xdc39x18;var _0xdc39x2e={type:db[_0xbe8e[84]][_0xbe8e[83]],transaction:_0xdc39x2d};switch(_0xdc39x28[_0xbe8e[81]][_0xbe8e[85]]){case _0xbe8e[86]:_0xdc39x2e[_0xbe8e[85]]= db[_0xbe8e[84]][_0xbe8e[83]];break;case _0xbe8e[88]:_0xdc39x2e[_0xbe8e[85]]= db[_0xbe8e[84]][_0xbe8e[87]];break;case _0xbe8e[90]:_0xdc39x2e[_0xbe8e[85]]= db[_0xbe8e[84]][_0xbe8e[89]];break;default:};return db[_0xbe8e[96]][_0xbe8e[95]][_0xbe8e[94]](_0xbe8e[91],util[_0xbe8e[93]](_0xbe8e[92],_0xdc39x2c[_0xbe8e[78]]),_0xdc39x2e)})[_0xbe8e[45]](function(){return _0xdc39x2c})})[_0xbe8e[45]](respondWithResult(_0xdc39x15,201,_0xbe8e[82]))[_0xbe8e[75]](handleError(_0xdc39x15,null,_0xbe8e[82]))}
\ No newline at end of file
+var _0x3164=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x53\x54\x52\x49\x4E\x47","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x74\x79\x70\x65","\x74\x65\x78\x74","\x49\x4E\x54\x45\x47\x45\x52","\x6E\x75\x6D\x62\x65\x72","\x42\x4F\x4F\x4C\x45\x41\x4E","\x73\x77\x69\x74\x63\x68","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x63\x66\x5F\x25\x64","\x66\x6F\x72\x6D\x61\x74","\x61\x64\x64\x43\x6F\x6C\x75\x6D\x6E","\x71\x75\x65\x72\x79\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E"];_0x3164[0];var jsonpatch=require(_0x3164[1]);var rp=require(_0x3164[2]);var moment=require(_0x3164[3]);var BPromise=require(_0x3164[4]);var util=require(_0x3164[5]);var path=require(_0x3164[6]);var sox=require(_0x3164[7]);var ejs=require(_0x3164[8]);var fs=require(_0x3164[9]);var _=require(_0x3164[10]);var squel=require(_0x3164[11]);var crypto=require(_0x3164[12]);var jsforce=require(_0x3164[13]);var toCsv=require(_0x3164[14]);var qs=require(_0x3164[15]);var logger=require(_0x3164[17])(_0x3164[16]);var utils=require(_0x3164[18]);var config=require(_0x3164[19]);var db=require(_0x3164[21])[_0x3164[20]];function respondWithStatusCode(_0x6b0cx15,_0x6b0cx16,_0x6b0cx17){_0x6b0cx16= _0x6b0cx16|| 204;return function(_0x6b0cx18){if(_0x6b0cx18){logger[_0x3164[24]](_0x3164[22],_0x6b0cx17,_0x6b0cx16,_0x3164[23]);logger[_0x3164[26]](_0x3164[25],_0x6b0cx17,_0x6b0cx16,_0x3164[23]);return _0x6b0cx15[_0x3164[27]](_0x6b0cx16)};return _0x6b0cx15[_0x3164[29]](304)[_0x3164[28]]()}}function respondWithResult(_0x6b0cx15,_0x6b0cx16,_0x6b0cx17){_0x6b0cx16= _0x6b0cx16|| 200;return function(_0x6b0cx18){if(_0x6b0cx18){logger[_0x3164[24]](_0x3164[22],_0x6b0cx17,_0x6b0cx16,_0x3164[30]);logger[_0x3164[26]](_0x3164[25],_0x6b0cx17,_0x6b0cx16,_0x3164[30],JSON[_0x3164[31]](_0x6b0cx18));return _0x6b0cx15[_0x3164[29]](_0x6b0cx16)[_0x3164[32]](_0x6b0cx18)};return _0x6b0cx15[_0x3164[29]](304)[_0x3164[28]]()}}function respondWithFilteredResult(_0x6b0cx15,_0x6b0cx1b,_0x6b0cx17){return function(_0x6b0cx18){if(_0x6b0cx18){var _0x6b0cx1c=_0x6b0cx18[_0x3164[33]],_0x6b0cx1d=_0x6b0cx1b[_0x3164[34]],_0x6b0cx1e=_0x6b0cx1b[_0x3164[34]]+ _0x6b0cx1b[_0x3164[35]],_0x6b0cx16;if(_0x6b0cx1e>= _0x6b0cx1c){_0x6b0cx1e= _0x6b0cx1c;_0x6b0cx16= 200}else {_0x6b0cx16= 206};_0x6b0cx15[_0x3164[29]](_0x6b0cx16);logger[_0x3164[24]](_0x3164[22],_0x6b0cx17,_0x6b0cx16,_0x3164[36]);logger[_0x3164[26]](_0x3164[25],_0x6b0cx17,_0x6b0cx16,_0x3164[30],JSON[_0x3164[31]](_0x6b0cx18));return _0x6b0cx15[_0x3164[40]](_0x3164[37],_0x6b0cx1d+ _0x3164[38]+ _0x6b0cx1e+ _0x3164[39]+ _0x6b0cx1c)[_0x3164[32]](_0x6b0cx18)};return null}}function patchUpdates(_0x6b0cx20){return function(_0x6b0cx18){try{jsonpatch[_0x3164[41]](_0x6b0cx18,_0x6b0cx20,true)}catch(err){return BPromise[_0x3164[42]](err)};return _0x6b0cx18[_0x3164[43]]()}}function saveUpdates(_0x6b0cx22,_0x6b0cx16,_0x6b0cx17){return function(_0x6b0cx18){if(_0x6b0cx18){return _0x6b0cx18[_0x3164[46]](_0x6b0cx22)[_0x3164[45]](function(_0x6b0cx23){logger[_0x3164[24]](_0x3164[22],_0x6b0cx17,_0x6b0cx16,_0x3164[44]);logger[_0x3164[26]](_0x3164[25],_0x6b0cx17,_0x6b0cx16,_0x3164[44],JSON[_0x3164[31]](_0x6b0cx18));return _0x6b0cx23})};return null}}function removeEntity(_0x6b0cx15,_0x6b0cx16,_0x6b0cx17){return function(_0x6b0cx18){if(_0x6b0cx18){return _0x6b0cx18[_0x3164[48]]()[_0x3164[45]](function(){logger[_0x3164[24]](_0x3164[22],_0x6b0cx17,_0x6b0cx16,_0x3164[47]);logger[_0x3164[26]](_0x3164[25],_0x6b0cx17,_0x6b0cx16,_0x3164[47],JSON[_0x3164[31]](_0x6b0cx18));_0x6b0cx15[_0x3164[29]](204)[_0x3164[28]]()})}}}function handleEntityNotFound(_0x6b0cx15,_0x6b0cx16,_0x6b0cx17){return function(_0x6b0cx18){if(!_0x6b0cx18){logger[_0x3164[50]](_0x3164[22],_0x6b0cx17,404,_0x3164[49]);_0x6b0cx15[_0x3164[29]](404)[_0x3164[28]]();return null};return _0x6b0cx18}}function handleError(_0x6b0cx15,_0x6b0cx16,_0x6b0cx17){_0x6b0cx16= _0x6b0cx16|| 500;return function(_0x6b0cx27){logger[_0x3164[50]](_0x3164[22],_0x6b0cx17,_0x6b0cx16,JSON[_0x3164[31]](_0x6b0cx27));delete _0x6b0cx27[_0x3164[51]];_0x6b0cx15[_0x3164[29]](_0x6b0cx16)[_0x3164[52]](_0x6b0cx27)}}exports[_0x3164[53]]= function(_0x6b0cx28,_0x6b0cx15){var _0x6b0cx1b={},_0x6b0cx29={};_0x6b0cx29[_0x3164[54]]= _[_0x3164[57]](db[_0x3164[56]][_0x3164[55]]);_0x6b0cx29[_0x3164[58]]= _[_0x3164[57]](_0x6b0cx28[_0x3164[58]]);_0x6b0cx29[_0x3164[59]]= _[_0x3164[60]](_0x6b0cx29[_0x3164[54]],_0x6b0cx29[_0x3164[58]]);_0x6b0cx1b[_0x3164[61]]= _[_0x3164[60]](_0x6b0cx29[_0x3164[54]],qs[_0x3164[62]](_0x6b0cx28[_0x3164[58]][_0x3164[62]]));_0x6b0cx1b[_0x3164[61]]= (_0x6b0cx1b[_0x3164[61]][_0x3164[63]])?_0x6b0cx1b[_0x3164[61]]:_0x6b0cx29[_0x3164[54]];if(!_0x6b0cx28[_0x3164[58]][_0x3164[65]](_0x3164[64])){_0x6b0cx1b[_0x3164[35]]= qs[_0x3164[35]](_0x6b0cx28[_0x3164[58]][_0x3164[35]]);_0x6b0cx1b[_0x3164[34]]= qs[_0x3164[34]](_0x6b0cx28[_0x3164[58]][_0x3164[34]])};_0x6b0cx1b[_0x3164[66]]= qs[_0x3164[67]](_0x6b0cx28[_0x3164[58]][_0x3164[67]]);_0x6b0cx1b[_0x3164[68]]= qs[_0x3164[59]](_[_0x3164[69]](_0x6b0cx28[_0x3164[58]],_0x6b0cx29[_0x3164[59]]));if(_0x6b0cx28[_0x3164[58]][_0x3164[70]]){_0x6b0cx1b[_0x3164[68]]= _[_0x3164[73]](_0x6b0cx1b[_0x3164[68]],{$or:_[_0x3164[72]](_0x6b0cx1b[_0x3164[61]],function(_0x6b0cx2a){var _0x6b0cx2b={};_0x6b0cx2b[_0x6b0cx2a]= {$like:_0x3164[71]+ _0x6b0cx28[_0x3164[58]][_0x3164[70]]+ _0x3164[71]};return _0x6b0cx2b})})};_0x6b0cx1b= _[_0x3164[73]]({},_0x6b0cx1b,_0x6b0cx28[_0x3164[74]]);return db[_0x3164[56]][_0x3164[76]](_0x6b0cx1b)[_0x3164[45]](respondWithFilteredResult(_0x6b0cx15,_0x6b0cx1b,_0x3164[53]))[_0x3164[75]](handleError(_0x6b0cx15,null,_0x3164[53]))};exports[_0x3164[77]]= function(_0x6b0cx28,_0x6b0cx15){var _0x6b0cx1b={raw:true,where:{id:_0x6b0cx28[_0x3164[79]][_0x3164[78]]}},_0x6b0cx29={};_0x6b0cx29[_0x3164[54]]= _[_0x3164[57]](db[_0x3164[56]][_0x3164[55]]);_0x6b0cx29[_0x3164[58]]= _[_0x3164[57]](_0x6b0cx28[_0x3164[58]]);_0x6b0cx29[_0x3164[59]]= _[_0x3164[60]](_0x6b0cx29[_0x3164[54]],_0x6b0cx29[_0x3164[58]]);_0x6b0cx1b[_0x3164[61]]= _[_0x3164[60]](_0x6b0cx29[_0x3164[54]],qs[_0x3164[62]](_0x6b0cx28[_0x3164[58]][_0x3164[62]]));_0x6b0cx1b[_0x3164[61]]= (_0x6b0cx1b[_0x3164[61]][_0x3164[63]])?_0x6b0cx1b[_0x3164[61]]:_0x6b0cx29[_0x3164[54]];_0x6b0cx1b= _[_0x3164[73]]({},_0x6b0cx1b,_0x6b0cx28[_0x3164[74]]);return db[_0x3164[56]][_0x3164[80]](_0x6b0cx1b)[_0x3164[45]](handleEntityNotFound(_0x6b0cx15,null,_0x3164[77]))[_0x3164[45]](respondWithResult(_0x6b0cx15,null,_0x3164[77]))[_0x3164[75]](handleError(_0x6b0cx15,null,_0x3164[77]))};exports[_0x3164[46]]= function(_0x6b0cx28,_0x6b0cx15){if(_0x6b0cx28[_0x3164[81]][_0x3164[78]]){delete _0x6b0cx28[_0x3164[81]][_0x3164[78]]};return db[_0x3164[56]][_0x3164[80]]({where:{id:_0x6b0cx28[_0x3164[79]][_0x3164[78]]}})[_0x3164[45]](handleEntityNotFound(_0x6b0cx15,null,_0x3164[46]))[_0x3164[45]](saveUpdates(_0x6b0cx28[_0x3164[81]],null,_0x3164[46]))[_0x3164[45]](respondWithResult(_0x6b0cx15,null,_0x3164[46]))[_0x3164[75]](handleError(_0x6b0cx15,null,_0x3164[46]))};exports[_0x3164[48]]= function(_0x6b0cx28,_0x6b0cx15){return db[_0x3164[56]][_0x3164[80]]({where:{id:_0x6b0cx28[_0x3164[79]][_0x3164[78]]}})[_0x3164[45]](handleEntityNotFound(_0x6b0cx15,null,_0x3164[48]))[_0x3164[45]](removeEntity(_0x6b0cx15,null,_0x3164[48]))[_0x3164[75]](handleError(_0x6b0cx15,null,_0x3164[48]))};exports[_0x3164[82]]= function(_0x6b0cx28,_0x6b0cx15){var _0x6b0cx2c;return db[_0x3164[96]][_0x3164[97]](function(_0x6b0cx2d){return db[_0x3164[56]][_0x3164[82]](_0x6b0cx28[_0x3164[81]],{transaction:_0x6b0cx2d})[_0x3164[45]](function(_0x6b0cx18){_0x6b0cx2c= _0x6b0cx18;var _0x6b0cx2e={type:db[_0x3164[84]][_0x3164[83]],transaction:_0x6b0cx2d};switch(_0x6b0cx28[_0x3164[81]][_0x3164[85]]){case _0x3164[86]:_0x6b0cx2e[_0x3164[85]]= db[_0x3164[84]][_0x3164[83]];break;case _0x3164[88]:_0x6b0cx2e[_0x3164[85]]= db[_0x3164[84]][_0x3164[87]];break;case _0x3164[90]:_0x6b0cx2e[_0x3164[85]]= db[_0x3164[84]][_0x3164[89]];break;default:};return db[_0x3164[96]][_0x3164[95]][_0x3164[94]](_0x3164[91],util[_0x3164[93]](_0x3164[92],_0x6b0cx2c[_0x3164[78]]),_0x6b0cx2e)})[_0x3164[45]](function(){return _0x6b0cx2c})})[_0x3164[45]](respondWithResult(_0x6b0cx15,201,_0x3164[82]))[_0x3164[75]](handleError(_0x6b0cx15,null,_0x3164[82]))}
\ No newline at end of file
index 94c0340..fe53807 100644 (file)
@@ -1 +1 @@
-var _0x3b55=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x63\x6D\x5F\x63\x75\x73\x74\x6F\x6D\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x3b55[0];var _=require(_0x3b55[1]);var util=require(_0x3b55[2]);var logger=require(_0x3b55[4])(_0x3b55[3]);var attributes=require(_0x3b55[5]);module[_0x3b55[6]]= function(_0x27f8x5,_0x27f8x6){return _0x27f8x5[_0x3b55[9]](_0x3b55[7],attributes,{tableName:_0x3b55[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x891b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x63\x6D\x5F\x63\x75\x73\x74\x6F\x6D\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x891b[0];var _=require(_0x891b[1]);var util=require(_0x891b[2]);var logger=require(_0x891b[4])(_0x891b[3]);var attributes=require(_0x891b[5]);module[_0x891b[6]]= function(_0x7d88x5,_0x7d88x6){return _0x7d88x5[_0x891b[9]](_0x891b[7],attributes,{tableName:_0x891b[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
index c977a06..e5bad7e 100644 (file)
@@ -1 +1 @@
-var _0x7737=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x7737[0];var _=require(_0x7737[1]);var util=require(_0x7737[2]);var moment=require(_0x7737[3]);var BPromise=require(_0x7737[4]);var db=require(_0x7737[6])[_0x7737[5]];var utils=require(_0x7737[7]);var logger=require(_0x7737[9])(_0x7737[8]);var jayson=require(_0x7737[10]);var client=jayson[_0x7737[12]][_0x7737[11]]({port:9002});function respondWithRpcPromise(_0xd082xb,_0xd082xc,_0xd082xd){return  new BPromise(function(_0xd082xe,_0xd082xf){return client[_0x7737[25]](_0xd082xb,_0xd082xd)[_0x7737[24]](function(_0xd082x11){logger[_0x7737[17]](_0x7737[13],_0xd082xc,_0x7737[16]);logger[_0x7737[20]](_0x7737[18],_0xd082xc,_0x7737[16],JSON[_0x7737[19]](_0xd082x11));if(_0xd082x11[_0x7737[14]]){if(_0xd082x11[_0x7737[14]][_0x7737[21]]=== 500){logger[_0x7737[14]](_0x7737[13],_0xd082xc,_0xd082x11[_0x7737[14]][_0x7737[22]]);return _0xd082xf(_0xd082x11[_0x7737[14]][_0x7737[22]])};logger[_0x7737[14]](_0x7737[13],_0xd082xc,_0xd082x11[_0x7737[14]][_0x7737[22]]);return _0xd082xe(_0xd082x11[_0x7737[14]][_0x7737[22]])}else {logger[_0x7737[17]](_0x7737[13],_0xd082xc,_0x7737[16]);_0xd082xe(_0xd082x11[_0x7737[23]][_0x7737[22]])}})[_0x7737[15]](function(_0xd082x10){logger[_0x7737[14]](_0x7737[13],_0xd082xc,_0xd082x10);_0xd082xf(_0xd082x10)})})}
\ No newline at end of file
+var _0xe891=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe891[0];var _=require(_0xe891[1]);var util=require(_0xe891[2]);var moment=require(_0xe891[3]);var BPromise=require(_0xe891[4]);var db=require(_0xe891[6])[_0xe891[5]];var utils=require(_0xe891[7]);var logger=require(_0xe891[9])(_0xe891[8]);var jayson=require(_0xe891[10]);var client=jayson[_0xe891[12]][_0xe891[11]]({port:9002});function respondWithRpcPromise(_0x2051xb,_0x2051xc,_0x2051xd){return  new BPromise(function(_0x2051xe,_0x2051xf){return client[_0xe891[25]](_0x2051xb,_0x2051xd)[_0xe891[24]](function(_0x2051x11){logger[_0xe891[17]](_0xe891[13],_0x2051xc,_0xe891[16]);logger[_0xe891[20]](_0xe891[18],_0x2051xc,_0xe891[16],JSON[_0xe891[19]](_0x2051x11));if(_0x2051x11[_0xe891[14]]){if(_0x2051x11[_0xe891[14]][_0xe891[21]]=== 500){logger[_0xe891[14]](_0xe891[13],_0x2051xc,_0x2051x11[_0xe891[14]][_0xe891[22]]);return _0x2051xf(_0x2051x11[_0xe891[14]][_0xe891[22]])};logger[_0xe891[14]](_0xe891[13],_0x2051xc,_0x2051x11[_0xe891[14]][_0xe891[22]]);return _0x2051xe(_0x2051x11[_0xe891[14]][_0xe891[22]])}else {logger[_0xe891[17]](_0xe891[13],_0x2051xc,_0xe891[16]);_0x2051xe(_0x2051x11[_0xe891[23]][_0xe891[22]])}})[_0xe891[15]](function(_0x2051x10){logger[_0xe891[14]](_0xe891[13],_0x2051xc,_0x2051x10);_0x2051xf(_0x2051x10)})})}
\ No newline at end of file
index e9d1dc4..81522b8 100644 (file)
@@ -1 +1 @@
-var _0x864d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x864d[0];var multer=require(_0x864d[1]);var util=require(_0x864d[2]);var path=require(_0x864d[3]);var express=require(_0x864d[4]);var router=express.Router();var auth=require(_0x864d[5]);var config=require(_0x864d[6]);var controller=require(_0x864d[7]);router[_0x864d[11]](_0x864d[8],auth[_0x864d[9]](),controller[_0x864d[10]]);router[_0x864d[11]](_0x864d[12],auth[_0x864d[9]](),controller[_0x864d[13]]);router[_0x864d[15]](_0x864d[8],auth[_0x864d[9]](),controller[_0x864d[14]]);router[_0x864d[17]](_0x864d[12],auth[_0x864d[9]](),controller[_0x864d[16]]);router[_0x864d[19]](_0x864d[12],auth[_0x864d[9]](),controller[_0x864d[18]]);module[_0x864d[20]]= router
\ No newline at end of file
+var _0x5aac=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5aac[0];var multer=require(_0x5aac[1]);var util=require(_0x5aac[2]);var path=require(_0x5aac[3]);var express=require(_0x5aac[4]);var router=express.Router();var auth=require(_0x5aac[5]);var config=require(_0x5aac[6]);var controller=require(_0x5aac[7]);router[_0x5aac[11]](_0x5aac[8],auth[_0x5aac[9]](),controller[_0x5aac[10]]);router[_0x5aac[11]](_0x5aac[12],auth[_0x5aac[9]](),controller[_0x5aac[13]]);router[_0x5aac[15]](_0x5aac[8],auth[_0x5aac[9]](),controller[_0x5aac[14]]);router[_0x5aac[17]](_0x5aac[12],auth[_0x5aac[9]](),controller[_0x5aac[16]]);router[_0x5aac[19]](_0x5aac[12],auth[_0x5aac[9]](),controller[_0x5aac[18]]);module[_0x5aac[20]]= router
\ No newline at end of file
index c7afb0f..9830977 100644 (file)
@@ -1 +1 @@
-var _0x313c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x44\x41\x54\x45","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x49\x4E\x54\x45\x47\x45\x52","\x63\x6F\x6E\x74\x61\x63\x74\x4C\x69\x73\x74\x51\x75\x65\x75\x65"];_0x313c[0];var moment=require(_0x313c[1]);var Sequelize=require(_0x313c[2]);module[_0x313c[3]]= {phone:{type:Sequelize[_0x313c[4]],allowNull:false},active:{type:Sequelize[_0x313c[5]],defaultValue:false},scheduledat:{type:Sequelize[_0x313c[6]],defaultValue:moment()[_0x313c[8]](_0x313c[7])},countbusyretry:{type:Sequelize[_0x313c[9]],defaultValue:0},countcongestionretry:{type:Sequelize[_0x313c[9]],defaultValue:0},countnoanswerretry:{type:Sequelize[_0x313c[9]],defaultValue:0},callback:{type:Sequelize[_0x313c[5]],defaultValue:false},callbackuniqueid:{type:Sequelize[_0x313c[4]],defaultValue:null},callbackat:{type:Sequelize[_0x313c[6]]},ContactId:{type:Sequelize[_0x313c[9]],unique:_0x313c[10]},ListId:{type:Sequelize[_0x313c[9]],unique:_0x313c[10]},UserId:{type:Sequelize[_0x313c[9]]},VoiceQueueId:{type:Sequelize[_0x313c[9]],unique:_0x313c[10]},CampaignId:{type:Sequelize[_0x313c[9]]}}
\ No newline at end of file
+var _0x64b0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x44\x41\x54\x45","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x49\x4E\x54\x45\x47\x45\x52","\x63\x6F\x6E\x74\x61\x63\x74\x4C\x69\x73\x74\x51\x75\x65\x75\x65"];_0x64b0[0];var moment=require(_0x64b0[1]);var Sequelize=require(_0x64b0[2]);module[_0x64b0[3]]= {phone:{type:Sequelize[_0x64b0[4]],allowNull:false},active:{type:Sequelize[_0x64b0[5]],defaultValue:false},scheduledat:{type:Sequelize[_0x64b0[6]],defaultValue:moment()[_0x64b0[8]](_0x64b0[7])},countbusyretry:{type:Sequelize[_0x64b0[9]],defaultValue:0},countcongestionretry:{type:Sequelize[_0x64b0[9]],defaultValue:0},countnoanswerretry:{type:Sequelize[_0x64b0[9]],defaultValue:0},callback:{type:Sequelize[_0x64b0[5]],defaultValue:false},callbackuniqueid:{type:Sequelize[_0x64b0[4]],defaultValue:null},callbackat:{type:Sequelize[_0x64b0[6]]},ContactId:{type:Sequelize[_0x64b0[9]],unique:_0x64b0[10]},ListId:{type:Sequelize[_0x64b0[9]],unique:_0x64b0[10]},UserId:{type:Sequelize[_0x64b0[9]]},VoiceQueueId:{type:Sequelize[_0x64b0[9]],unique:_0x64b0[10]},CampaignId:{type:Sequelize[_0x64b0[9]]}}
\ No newline at end of file
index 49cb490..160adda 100644 (file)
@@ -1 +1 @@
-var _0x9840=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x48\x6F\x70\x70\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x6C\x65\x74\x65\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x71\x75\x65\x75\x65","\x69\x76\x72","\x43\x6F\x6D\x70\x61\x69\x67\x6E\x49\x64","\x4C\x69\x73\x74\x49\x64","\x75\x73\x65\x72","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x67\x65\x74\x44\x69\x61\x6C\x65\x72\x43\x6F\x6E\x74\x61\x63\x74\x73","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74\x20\x44\x45\x53\x43","\x6E\x6F\x77","\x69\x6E\x63\x6C\x75\x64\x65","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74","\x66\x69\x72\x73\x74\x6E\x61\x6D\x65","\x6C\x61\x73\x74\x4E\x61\x6D\x65","\x70\x68\x6F\x6E\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x6C\x6F\x63\x6B","\x55\x50\x44\x41\x54\x45","\x4C\x4F\x43\x4B","\x70\x75\x73\x68","\x61\x6C\x6C","\x66\x69\x6E\x64\x41\x6C\x6C","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x70\x72\x65\x76\x69\x65\x77","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x63\x61\x6C\x6C\x44\x69\x61\x6C\x65\x72\x43\x6F\x6E\x74\x61\x63\x74"];_0x9840[0];var jsonpatch=require(_0x9840[1]);var rp=require(_0x9840[2]);var moment=require(_0x9840[3]);var BPromise=require(_0x9840[4]);var util=require(_0x9840[5]);var path=require(_0x9840[6]);var sox=require(_0x9840[7]);var ejs=require(_0x9840[8]);var fs=require(_0x9840[9]);var _=require(_0x9840[10]);var squel=require(_0x9840[11]);var crypto=require(_0x9840[12]);var jsforce=require(_0x9840[13]);var toCsv=require(_0x9840[14]);var qs=require(_0x9840[15]);var logger=require(_0x9840[17])(_0x9840[16]);var utils=require(_0x9840[18]);var config=require(_0x9840[19]);var db=require(_0x9840[21])[_0x9840[20]];function respondWithStatusCode(_0x50fdx15,_0x50fdx16,_0x50fdx17){_0x50fdx16= _0x50fdx16|| 204;return function(_0x50fdx18){if(_0x50fdx18){logger[_0x9840[24]](_0x9840[22],_0x50fdx17,_0x50fdx16,_0x9840[23]);logger[_0x9840[26]](_0x9840[25],_0x50fdx17,_0x50fdx16,_0x9840[23]);return _0x50fdx15[_0x9840[27]](_0x50fdx16)};return _0x50fdx15[_0x9840[29]](304)[_0x9840[28]]()}}function respondWithResult(_0x50fdx15,_0x50fdx16,_0x50fdx17){_0x50fdx16= _0x50fdx16|| 200;return function(_0x50fdx18){if(_0x50fdx18){logger[_0x9840[24]](_0x9840[22],_0x50fdx17,_0x50fdx16,_0x9840[30]);logger[_0x9840[26]](_0x9840[25],_0x50fdx17,_0x50fdx16,_0x9840[30],JSON[_0x9840[31]](_0x50fdx18));return _0x50fdx15[_0x9840[29]](_0x50fdx16)[_0x9840[32]](_0x50fdx18)};return _0x50fdx15[_0x9840[29]](304)[_0x9840[28]]()}}function respondWithFilteredResult(_0x50fdx15,_0x50fdx1b,_0x50fdx17){return function(_0x50fdx18){if(_0x50fdx18){var _0x50fdx1c=_0x50fdx18[_0x9840[33]],_0x50fdx1d=_0x50fdx1b[_0x9840[34]],_0x50fdx1e=_0x50fdx1b[_0x9840[34]]+ _0x50fdx1b[_0x9840[35]],_0x50fdx16;if(_0x50fdx1e>= _0x50fdx1c){_0x50fdx1e= _0x50fdx1c;_0x50fdx16= 200}else {_0x50fdx16= 206};_0x50fdx15[_0x9840[29]](_0x50fdx16);logger[_0x9840[24]](_0x9840[22],_0x50fdx17,_0x50fdx16,_0x9840[36]);logger[_0x9840[26]](_0x9840[25],_0x50fdx17,_0x50fdx16,_0x9840[30],JSON[_0x9840[31]](_0x50fdx18));return _0x50fdx15[_0x9840[40]](_0x9840[37],_0x50fdx1d+ _0x9840[38]+ _0x50fdx1e+ _0x9840[39]+ _0x50fdx1c)[_0x9840[32]](_0x50fdx18)};return null}}function patchUpdates(_0x50fdx20){return function(_0x50fdx18){try{jsonpatch[_0x9840[41]](_0x50fdx18,_0x50fdx20,true)}catch(err){return BPromise[_0x9840[42]](err)};return _0x50fdx18[_0x9840[43]]()}}function saveUpdates(_0x50fdx22,_0x50fdx16,_0x50fdx17){return function(_0x50fdx18){if(_0x50fdx18){return _0x50fdx18[_0x9840[46]](_0x50fdx22)[_0x9840[45]](function(_0x50fdx23){logger[_0x9840[24]](_0x9840[22],_0x50fdx17,_0x50fdx16,_0x9840[44]);logger[_0x9840[26]](_0x9840[25],_0x50fdx17,_0x50fdx16,_0x9840[44],JSON[_0x9840[31]](_0x50fdx18));return _0x50fdx23})};return null}}function removeEntity(_0x50fdx15,_0x50fdx16,_0x50fdx17){return function(_0x50fdx18){if(_0x50fdx18){return _0x50fdx18[_0x9840[48]]()[_0x9840[45]](function(){logger[_0x9840[24]](_0x9840[22],_0x50fdx17,_0x50fdx16,_0x9840[47]);logger[_0x9840[26]](_0x9840[25],_0x50fdx17,_0x50fdx16,_0x9840[47],JSON[_0x9840[31]](_0x50fdx18));_0x50fdx15[_0x9840[29]](204)[_0x9840[28]]()})}}}function handleEntityNotFound(_0x50fdx15,_0x50fdx16,_0x50fdx17){return function(_0x50fdx18){if(!_0x50fdx18){logger[_0x9840[50]](_0x9840[22],_0x50fdx17,404,_0x9840[49]);_0x50fdx15[_0x9840[29]](404)[_0x9840[28]]();return null};return _0x50fdx18}}function handleError(_0x50fdx15,_0x50fdx16,_0x50fdx17){_0x50fdx16= _0x50fdx16|| 500;return function(_0x50fdx27){logger[_0x9840[50]](_0x9840[22],_0x50fdx17,_0x50fdx16,JSON[_0x9840[31]](_0x50fdx27));delete _0x50fdx27[_0x9840[51]];_0x50fdx15[_0x9840[29]](_0x50fdx16)[_0x9840[52]](_0x50fdx27)}}exports[_0x9840[53]]= function(_0x50fdx28,_0x50fdx15){var _0x50fdx1b={},_0x50fdx29={};_0x50fdx29[_0x9840[54]]= _[_0x9840[57]](db[_0x9840[56]][_0x9840[55]]);_0x50fdx29[_0x9840[58]]= _[_0x9840[57]](_0x50fdx28[_0x9840[58]]);_0x50fdx29[_0x9840[59]]= _[_0x9840[60]](_0x50fdx29[_0x9840[54]],_0x50fdx29[_0x9840[58]]);_0x50fdx1b[_0x9840[61]]= _[_0x9840[60]](_0x50fdx29[_0x9840[54]],qs[_0x9840[62]](_0x50fdx28[_0x9840[58]][_0x9840[62]]));_0x50fdx1b[_0x9840[61]]= (_0x50fdx1b[_0x9840[61]][_0x9840[63]])?_0x50fdx1b[_0x9840[61]]:_0x50fdx29[_0x9840[54]];if(!_0x50fdx28[_0x9840[58]][_0x9840[65]](_0x9840[64])){_0x50fdx1b[_0x9840[35]]= qs[_0x9840[35]](_0x50fdx28[_0x9840[58]][_0x9840[35]]);_0x50fdx1b[_0x9840[34]]= qs[_0x9840[34]](_0x50fdx28[_0x9840[58]][_0x9840[34]])};_0x50fdx1b[_0x9840[66]]= qs[_0x9840[67]](_0x50fdx28[_0x9840[58]][_0x9840[67]]);_0x50fdx1b[_0x9840[68]]= qs[_0x9840[59]](_[_0x9840[69]](_0x50fdx28[_0x9840[58]],_0x50fdx29[_0x9840[59]]));if(_0x50fdx28[_0x9840[58]][_0x9840[70]]){_0x50fdx1b[_0x9840[68]]= _[_0x9840[73]](_0x50fdx1b[_0x9840[68]],{$or:_[_0x9840[72]](_0x50fdx1b[_0x9840[61]],function(_0x50fdx2a){var _0x50fdx2b={};_0x50fdx2b[_0x50fdx2a]= {$like:_0x9840[71]+ _0x50fdx28[_0x9840[58]][_0x9840[70]]+ _0x9840[71]};return _0x50fdx2b})})};_0x50fdx1b= _[_0x9840[73]]({},_0x50fdx1b,_0x50fdx28[_0x9840[74]]);return db[_0x9840[56]][_0x9840[76]](_0x50fdx1b)[_0x9840[45]](respondWithFilteredResult(_0x50fdx15,_0x50fdx1b,_0x9840[53]))[_0x9840[75]](handleError(_0x50fdx15,null,_0x9840[53]))};exports[_0x9840[77]]= function(_0x50fdx28,_0x50fdx15){var _0x50fdx1b={raw:true,where:{id:_0x50fdx28[_0x9840[79]][_0x9840[78]]}},_0x50fdx29={};_0x50fdx29[_0x9840[54]]= _[_0x9840[57]](db[_0x9840[56]][_0x9840[55]]);_0x50fdx29[_0x9840[58]]= _[_0x9840[57]](_0x50fdx28[_0x9840[58]]);_0x50fdx29[_0x9840[59]]= _[_0x9840[60]](_0x50fdx29[_0x9840[54]],_0x50fdx29[_0x9840[58]]);_0x50fdx1b[_0x9840[61]]= _[_0x9840[60]](_0x50fdx29[_0x9840[54]],qs[_0x9840[62]](_0x50fdx28[_0x9840[58]][_0x9840[62]]));_0x50fdx1b[_0x9840[61]]= (_0x50fdx1b[_0x9840[61]][_0x9840[63]])?_0x50fdx1b[_0x9840[61]]:_0x50fdx29[_0x9840[54]];_0x50fdx1b= _[_0x9840[73]]({},_0x50fdx1b,_0x50fdx28[_0x9840[74]]);return db[_0x9840[56]][_0x9840[80]](_0x50fdx1b)[_0x9840[45]](handleEntityNotFound(_0x50fdx15,null,_0x9840[77]))[_0x9840[45]](respondWithResult(_0x50fdx15,null,_0x9840[77]))[_0x9840[75]](handleError(_0x50fdx15,null,_0x9840[77]))};exports[_0x9840[81]]= function(_0x50fdx28,_0x50fdx15){return db[_0x9840[56]][_0x9840[81]](_0x50fdx28[_0x9840[82]],{})[_0x9840[45]](respondWithResult(_0x50fdx15,201,_0x9840[81]))[_0x9840[75]](handleError(_0x50fdx15,null,_0x9840[81]))};exports[_0x9840[46]]= function(_0x50fdx28,_0x50fdx15){if(_0x50fdx28[_0x9840[82]][_0x9840[78]]){delete _0x50fdx28[_0x9840[82]][_0x9840[78]]};return db[_0x9840[56]][_0x9840[80]]({where:{id:_0x50fdx28[_0x9840[79]][_0x9840[78]]}})[_0x9840[45]](handleEntityNotFound(_0x50fdx15,null,_0x9840[46]))[_0x9840[45]](saveUpdates(_0x50fdx28[_0x9840[82]],null,_0x9840[46]))[_0x9840[45]](respondWithResult(_0x50fdx15,null,_0x9840[46]))[_0x9840[75]](handleError(_0x50fdx15,null,_0x9840[46]))};exports[_0x9840[83]]= function(_0x50fdx28,_0x50fdx15){return db[_0x9840[56]][_0x9840[83]]()[_0x9840[45]](respondWithResult(_0x50fdx15,null,_0x9840[83]))[_0x9840[75]](handleError(_0x50fdx15,null,_0x9840[83]))};exports[_0x9840[48]]= function(_0x50fdx28,_0x50fdx15){var _0x50fdx2c;return db[_0x9840[56]][_0x9840[80]]({where:{id:_0x50fdx28[_0x9840[79]][_0x9840[78]]}})[_0x9840[45]](handleEntityNotFound(_0x50fdx15,null,_0x9840[48]))[_0x9840[45]](function(_0x50fdx18){if(_0x50fdx18){return _0x50fdx18[_0x9840[48]]()[_0x9840[45]](function(_0x50fdx18){logger[_0x9840[24]](_0x9840[22],_0x9840[48],204,_0x9840[47]);logger[_0x9840[26]](_0x9840[25],_0x9840[48],204,_0x9840[47],JSON[_0x9840[31]](_0x50fdx18));return _0x50fdx18})}})[_0x9840[45]](function(_0x50fdx18){_0x50fdx2c= _0x50fdx18;if(_0x50fdx18){if(_0x50fdx18[_0x9840[85]]|| _0x50fdx18[_0x9840[94]]){return db[_0x50fdx18[_0x9840[85]]?_0x9840[95]:_0x9840[96]][_0x9840[80]]({where:{id:_0x50fdx18[_0x9840[85]]?_0x50fdx18[_0x9840[85]]:_0x50fdx18[_0x9840[94]]},attributes:[_0x9840[78],_0x9840[51]],raw:true})}}})[_0x9840[45]](function(_0x50fdx18){if(_0x50fdx18){return db[_0x9840[93]][_0x9840[81]]({state:18,statedesc:_0x9840[84],campaign:_0x50fdx18[_0x9840[51]],campaigntype:_0x50fdx2c[_0x9840[85]]?_0x9840[86]:_0x9840[87],CampaignId:_0x50fdx2c[_0x9840[88]]|| null,VoiceQueueId:_0x50fdx2c[_0x9840[85]]|| null,ListId:_0x50fdx2c[_0x9840[89]]|| null,membername:_0x50fdx28[_0x9840[90]][_0x9840[51]],UserId:_0x50fdx28[_0x9840[90]][_0x9840[78]],deleted:true,deletedat:moment()[_0x9840[92]](_0x9840[91])})}})[_0x9840[45]](function(){return _0x50fdx15[_0x9840[29]](204)[_0x9840[28]]()})[_0x9840[75]](handleError(_0x50fdx15,null,_0x9840[48]))};exports[_0x9840[97]]= function(_0x50fdx28,_0x50fdx15,_0x50fdx2d){var _0x50fdx2e={count:0,rows:[]};var _0x50fdx1b={};var _0x50fdx29={};_0x50fdx29[_0x9840[54]]= _[_0x9840[57]](db[_0x9840[56]][_0x9840[55]]);_0x50fdx29[_0x9840[58]]= _[_0x9840[57]](_0x50fdx28[_0x9840[58]]);_0x50fdx29[_0x9840[59]]= _[_0x9840[60]](_0x50fdx29[_0x9840[54]],_0x50fdx29[_0x9840[58]]);_0x50fdx1b[_0x9840[61]]= [_0x9840[78]];_0x50fdx1b[_0x9840[35]]= qs[_0x9840[35]](_0x50fdx28[_0x9840[58]][_0x9840[35]]);_0x50fdx1b[_0x9840[34]]= qs[_0x9840[34]](_0x50fdx28[_0x9840[58]][_0x9840[34]]);_0x50fdx1b[_0x9840[66]]= _0x9840[98];_0x50fdx1b[_0x9840[68]]= {active:false,scheduledAt:{$lte:Date[_0x9840[99]]()}};_0x50fdx1b[_0x9840[100]]= [{model:db[_0x9840[101]],as:_0x9840[102],attributes:[_0x9840[78],_0x9840[103],_0x9840[104],_0x9840[105]]}];return _0x50fdx28[_0x9840[90]][_0x9840[116]]({where:{type:_0x9840[114],dialMethod:_0x9840[115]},attributes:[_0x9840[78]],raw:true})[_0x9840[45]](function(_0x50fdx2f){_0x50fdx1b[_0x9840[68]][_0x9840[85]]= {$in:_[_0x9840[72]](_0x50fdx2f,_0x9840[78])};return db[_0x9840[113]][_0x9840[106]](function(_0x50fdx30){_0x50fdx1b[_0x9840[106]]= _0x50fdx30;_0x50fdx1b[_0x9840[107]]= _0x50fdx30[_0x9840[109]][_0x9840[108]];return db[_0x9840[56]][_0x9840[112]](_0x50fdx1b)[_0x9840[45]](function(_0x50fdx31){var _0x50fdx32=[];var _0x50fdx33={active:true};for(var _0x50fdx34=0;_0x50fdx34< _0x50fdx31[_0x9840[63]];_0x50fdx34+= 1){_0x50fdx32[_0x9840[110]](_0x50fdx31[_0x50fdx34][_0x9840[46]](_0x50fdx33,{transaction:_0x50fdx30}))};return BPromise[_0x9840[111]](_0x50fdx32)})[_0x9840[45]](function(_0x50fdx31){return {rows:_0x50fdx31|| [],count:_0x50fdx31?_0x50fdx31[_0x9840[63]]:0}})})})[_0x9840[45]](respondWithResult(_0x50fdx15,null,_0x9840[97]))[_0x9840[75]](handleError(_0x50fdx15,null,_0x9840[97]))};exports[_0x9840[117]]= function(_0x50fdx28,_0x50fdx15,_0x50fdx2d){return db[_0x9840[56]][_0x9840[80]]({raw:true,where:{id:_0x50fdx28[_0x9840[79]][_0x9840[78]]}})[_0x9840[45]](handleEntityNotFound(_0x50fdx15,null,_0x9840[117]))[_0x9840[45]](respondWithResult(_0x50fdx15,null,_0x9840[117]))[_0x9840[75]](handleError(_0x50fdx15,null,_0x9840[117]))}
\ No newline at end of file
+var _0x5ac3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x48\x6F\x70\x70\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x6C\x65\x74\x65\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x71\x75\x65\x75\x65","\x69\x76\x72","\x43\x6F\x6D\x70\x61\x69\x67\x6E\x49\x64","\x4C\x69\x73\x74\x49\x64","\x75\x73\x65\x72","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x67\x65\x74\x44\x69\x61\x6C\x65\x72\x43\x6F\x6E\x74\x61\x63\x74\x73","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74\x20\x44\x45\x53\x43","\x6E\x6F\x77","\x69\x6E\x63\x6C\x75\x64\x65","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74","\x66\x69\x72\x73\x74\x6E\x61\x6D\x65","\x6C\x61\x73\x74\x4E\x61\x6D\x65","\x70\x68\x6F\x6E\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x6C\x6F\x63\x6B","\x55\x50\x44\x41\x54\x45","\x4C\x4F\x43\x4B","\x70\x75\x73\x68","\x61\x6C\x6C","\x66\x69\x6E\x64\x41\x6C\x6C","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x70\x72\x65\x76\x69\x65\x77","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x63\x61\x6C\x6C\x44\x69\x61\x6C\x65\x72\x43\x6F\x6E\x74\x61\x63\x74"];_0x5ac3[0];var jsonpatch=require(_0x5ac3[1]);var rp=require(_0x5ac3[2]);var moment=require(_0x5ac3[3]);var BPromise=require(_0x5ac3[4]);var util=require(_0x5ac3[5]);var path=require(_0x5ac3[6]);var sox=require(_0x5ac3[7]);var ejs=require(_0x5ac3[8]);var fs=require(_0x5ac3[9]);var _=require(_0x5ac3[10]);var squel=require(_0x5ac3[11]);var crypto=require(_0x5ac3[12]);var jsforce=require(_0x5ac3[13]);var toCsv=require(_0x5ac3[14]);var qs=require(_0x5ac3[15]);var logger=require(_0x5ac3[17])(_0x5ac3[16]);var utils=require(_0x5ac3[18]);var config=require(_0x5ac3[19]);var db=require(_0x5ac3[21])[_0x5ac3[20]];function respondWithStatusCode(_0xf2f9x15,_0xf2f9x16,_0xf2f9x17){_0xf2f9x16= _0xf2f9x16|| 204;return function(_0xf2f9x18){if(_0xf2f9x18){logger[_0x5ac3[24]](_0x5ac3[22],_0xf2f9x17,_0xf2f9x16,_0x5ac3[23]);logger[_0x5ac3[26]](_0x5ac3[25],_0xf2f9x17,_0xf2f9x16,_0x5ac3[23]);return _0xf2f9x15[_0x5ac3[27]](_0xf2f9x16)};return _0xf2f9x15[_0x5ac3[29]](304)[_0x5ac3[28]]()}}function respondWithResult(_0xf2f9x15,_0xf2f9x16,_0xf2f9x17){_0xf2f9x16= _0xf2f9x16|| 200;return function(_0xf2f9x18){if(_0xf2f9x18){logger[_0x5ac3[24]](_0x5ac3[22],_0xf2f9x17,_0xf2f9x16,_0x5ac3[30]);logger[_0x5ac3[26]](_0x5ac3[25],_0xf2f9x17,_0xf2f9x16,_0x5ac3[30],JSON[_0x5ac3[31]](_0xf2f9x18));return _0xf2f9x15[_0x5ac3[29]](_0xf2f9x16)[_0x5ac3[32]](_0xf2f9x18)};return _0xf2f9x15[_0x5ac3[29]](304)[_0x5ac3[28]]()}}function respondWithFilteredResult(_0xf2f9x15,_0xf2f9x1b,_0xf2f9x17){return function(_0xf2f9x18){if(_0xf2f9x18){var _0xf2f9x1c=_0xf2f9x18[_0x5ac3[33]],_0xf2f9x1d=_0xf2f9x1b[_0x5ac3[34]],_0xf2f9x1e=_0xf2f9x1b[_0x5ac3[34]]+ _0xf2f9x1b[_0x5ac3[35]],_0xf2f9x16;if(_0xf2f9x1e>= _0xf2f9x1c){_0xf2f9x1e= _0xf2f9x1c;_0xf2f9x16= 200}else {_0xf2f9x16= 206};_0xf2f9x15[_0x5ac3[29]](_0xf2f9x16);logger[_0x5ac3[24]](_0x5ac3[22],_0xf2f9x17,_0xf2f9x16,_0x5ac3[36]);logger[_0x5ac3[26]](_0x5ac3[25],_0xf2f9x17,_0xf2f9x16,_0x5ac3[30],JSON[_0x5ac3[31]](_0xf2f9x18));return _0xf2f9x15[_0x5ac3[40]](_0x5ac3[37],_0xf2f9x1d+ _0x5ac3[38]+ _0xf2f9x1e+ _0x5ac3[39]+ _0xf2f9x1c)[_0x5ac3[32]](_0xf2f9x18)};return null}}function patchUpdates(_0xf2f9x20){return function(_0xf2f9x18){try{jsonpatch[_0x5ac3[41]](_0xf2f9x18,_0xf2f9x20,true)}catch(err){return BPromise[_0x5ac3[42]](err)};return _0xf2f9x18[_0x5ac3[43]]()}}function saveUpdates(_0xf2f9x22,_0xf2f9x16,_0xf2f9x17){return function(_0xf2f9x18){if(_0xf2f9x18){return _0xf2f9x18[_0x5ac3[46]](_0xf2f9x22)[_0x5ac3[45]](function(_0xf2f9x23){logger[_0x5ac3[24]](_0x5ac3[22],_0xf2f9x17,_0xf2f9x16,_0x5ac3[44]);logger[_0x5ac3[26]](_0x5ac3[25],_0xf2f9x17,_0xf2f9x16,_0x5ac3[44],JSON[_0x5ac3[31]](_0xf2f9x18));return _0xf2f9x23})};return null}}function removeEntity(_0xf2f9x15,_0xf2f9x16,_0xf2f9x17){return function(_0xf2f9x18){if(_0xf2f9x18){return _0xf2f9x18[_0x5ac3[48]]()[_0x5ac3[45]](function(){logger[_0x5ac3[24]](_0x5ac3[22],_0xf2f9x17,_0xf2f9x16,_0x5ac3[47]);logger[_0x5ac3[26]](_0x5ac3[25],_0xf2f9x17,_0xf2f9x16,_0x5ac3[47],JSON[_0x5ac3[31]](_0xf2f9x18));_0xf2f9x15[_0x5ac3[29]](204)[_0x5ac3[28]]()})}}}function handleEntityNotFound(_0xf2f9x15,_0xf2f9x16,_0xf2f9x17){return function(_0xf2f9x18){if(!_0xf2f9x18){logger[_0x5ac3[50]](_0x5ac3[22],_0xf2f9x17,404,_0x5ac3[49]);_0xf2f9x15[_0x5ac3[29]](404)[_0x5ac3[28]]();return null};return _0xf2f9x18}}function handleError(_0xf2f9x15,_0xf2f9x16,_0xf2f9x17){_0xf2f9x16= _0xf2f9x16|| 500;return function(_0xf2f9x27){logger[_0x5ac3[50]](_0x5ac3[22],_0xf2f9x17,_0xf2f9x16,JSON[_0x5ac3[31]](_0xf2f9x27));delete _0xf2f9x27[_0x5ac3[51]];_0xf2f9x15[_0x5ac3[29]](_0xf2f9x16)[_0x5ac3[52]](_0xf2f9x27)}}exports[_0x5ac3[53]]= function(_0xf2f9x28,_0xf2f9x15){var _0xf2f9x1b={},_0xf2f9x29={};_0xf2f9x29[_0x5ac3[54]]= _[_0x5ac3[57]](db[_0x5ac3[56]][_0x5ac3[55]]);_0xf2f9x29[_0x5ac3[58]]= _[_0x5ac3[57]](_0xf2f9x28[_0x5ac3[58]]);_0xf2f9x29[_0x5ac3[59]]= _[_0x5ac3[60]](_0xf2f9x29[_0x5ac3[54]],_0xf2f9x29[_0x5ac3[58]]);_0xf2f9x1b[_0x5ac3[61]]= _[_0x5ac3[60]](_0xf2f9x29[_0x5ac3[54]],qs[_0x5ac3[62]](_0xf2f9x28[_0x5ac3[58]][_0x5ac3[62]]));_0xf2f9x1b[_0x5ac3[61]]= (_0xf2f9x1b[_0x5ac3[61]][_0x5ac3[63]])?_0xf2f9x1b[_0x5ac3[61]]:_0xf2f9x29[_0x5ac3[54]];if(!_0xf2f9x28[_0x5ac3[58]][_0x5ac3[65]](_0x5ac3[64])){_0xf2f9x1b[_0x5ac3[35]]= qs[_0x5ac3[35]](_0xf2f9x28[_0x5ac3[58]][_0x5ac3[35]]);_0xf2f9x1b[_0x5ac3[34]]= qs[_0x5ac3[34]](_0xf2f9x28[_0x5ac3[58]][_0x5ac3[34]])};_0xf2f9x1b[_0x5ac3[66]]= qs[_0x5ac3[67]](_0xf2f9x28[_0x5ac3[58]][_0x5ac3[67]]);_0xf2f9x1b[_0x5ac3[68]]= qs[_0x5ac3[59]](_[_0x5ac3[69]](_0xf2f9x28[_0x5ac3[58]],_0xf2f9x29[_0x5ac3[59]]));if(_0xf2f9x28[_0x5ac3[58]][_0x5ac3[70]]){_0xf2f9x1b[_0x5ac3[68]]= _[_0x5ac3[73]](_0xf2f9x1b[_0x5ac3[68]],{$or:_[_0x5ac3[72]](_0xf2f9x1b[_0x5ac3[61]],function(_0xf2f9x2a){var _0xf2f9x2b={};_0xf2f9x2b[_0xf2f9x2a]= {$like:_0x5ac3[71]+ _0xf2f9x28[_0x5ac3[58]][_0x5ac3[70]]+ _0x5ac3[71]};return _0xf2f9x2b})})};_0xf2f9x1b= _[_0x5ac3[73]]({},_0xf2f9x1b,_0xf2f9x28[_0x5ac3[74]]);return db[_0x5ac3[56]][_0x5ac3[76]](_0xf2f9x1b)[_0x5ac3[45]](respondWithFilteredResult(_0xf2f9x15,_0xf2f9x1b,_0x5ac3[53]))[_0x5ac3[75]](handleError(_0xf2f9x15,null,_0x5ac3[53]))};exports[_0x5ac3[77]]= function(_0xf2f9x28,_0xf2f9x15){var _0xf2f9x1b={raw:true,where:{id:_0xf2f9x28[_0x5ac3[79]][_0x5ac3[78]]}},_0xf2f9x29={};_0xf2f9x29[_0x5ac3[54]]= _[_0x5ac3[57]](db[_0x5ac3[56]][_0x5ac3[55]]);_0xf2f9x29[_0x5ac3[58]]= _[_0x5ac3[57]](_0xf2f9x28[_0x5ac3[58]]);_0xf2f9x29[_0x5ac3[59]]= _[_0x5ac3[60]](_0xf2f9x29[_0x5ac3[54]],_0xf2f9x29[_0x5ac3[58]]);_0xf2f9x1b[_0x5ac3[61]]= _[_0x5ac3[60]](_0xf2f9x29[_0x5ac3[54]],qs[_0x5ac3[62]](_0xf2f9x28[_0x5ac3[58]][_0x5ac3[62]]));_0xf2f9x1b[_0x5ac3[61]]= (_0xf2f9x1b[_0x5ac3[61]][_0x5ac3[63]])?_0xf2f9x1b[_0x5ac3[61]]:_0xf2f9x29[_0x5ac3[54]];_0xf2f9x1b= _[_0x5ac3[73]]({},_0xf2f9x1b,_0xf2f9x28[_0x5ac3[74]]);return db[_0x5ac3[56]][_0x5ac3[80]](_0xf2f9x1b)[_0x5ac3[45]](handleEntityNotFound(_0xf2f9x15,null,_0x5ac3[77]))[_0x5ac3[45]](respondWithResult(_0xf2f9x15,null,_0x5ac3[77]))[_0x5ac3[75]](handleError(_0xf2f9x15,null,_0x5ac3[77]))};exports[_0x5ac3[81]]= function(_0xf2f9x28,_0xf2f9x15){return db[_0x5ac3[56]][_0x5ac3[81]](_0xf2f9x28[_0x5ac3[82]],{})[_0x5ac3[45]](respondWithResult(_0xf2f9x15,201,_0x5ac3[81]))[_0x5ac3[75]](handleError(_0xf2f9x15,null,_0x5ac3[81]))};exports[_0x5ac3[46]]= function(_0xf2f9x28,_0xf2f9x15){if(_0xf2f9x28[_0x5ac3[82]][_0x5ac3[78]]){delete _0xf2f9x28[_0x5ac3[82]][_0x5ac3[78]]};return db[_0x5ac3[56]][_0x5ac3[80]]({where:{id:_0xf2f9x28[_0x5ac3[79]][_0x5ac3[78]]}})[_0x5ac3[45]](handleEntityNotFound(_0xf2f9x15,null,_0x5ac3[46]))[_0x5ac3[45]](saveUpdates(_0xf2f9x28[_0x5ac3[82]],null,_0x5ac3[46]))[_0x5ac3[45]](respondWithResult(_0xf2f9x15,null,_0x5ac3[46]))[_0x5ac3[75]](handleError(_0xf2f9x15,null,_0x5ac3[46]))};exports[_0x5ac3[83]]= function(_0xf2f9x28,_0xf2f9x15){return db[_0x5ac3[56]][_0x5ac3[83]]()[_0x5ac3[45]](respondWithResult(_0xf2f9x15,null,_0x5ac3[83]))[_0x5ac3[75]](handleError(_0xf2f9x15,null,_0x5ac3[83]))};exports[_0x5ac3[48]]= function(_0xf2f9x28,_0xf2f9x15){var _0xf2f9x2c;return db[_0x5ac3[56]][_0x5ac3[80]]({where:{id:_0xf2f9x28[_0x5ac3[79]][_0x5ac3[78]]}})[_0x5ac3[45]](handleEntityNotFound(_0xf2f9x15,null,_0x5ac3[48]))[_0x5ac3[45]](function(_0xf2f9x18){if(_0xf2f9x18){return _0xf2f9x18[_0x5ac3[48]]()[_0x5ac3[45]](function(_0xf2f9x18){logger[_0x5ac3[24]](_0x5ac3[22],_0x5ac3[48],204,_0x5ac3[47]);logger[_0x5ac3[26]](_0x5ac3[25],_0x5ac3[48],204,_0x5ac3[47],JSON[_0x5ac3[31]](_0xf2f9x18));return _0xf2f9x18})}})[_0x5ac3[45]](function(_0xf2f9x18){_0xf2f9x2c= _0xf2f9x18;if(_0xf2f9x18){if(_0xf2f9x18[_0x5ac3[85]]|| _0xf2f9x18[_0x5ac3[94]]){return db[_0xf2f9x18[_0x5ac3[85]]?_0x5ac3[95]:_0x5ac3[96]][_0x5ac3[80]]({where:{id:_0xf2f9x18[_0x5ac3[85]]?_0xf2f9x18[_0x5ac3[85]]:_0xf2f9x18[_0x5ac3[94]]},attributes:[_0x5ac3[78],_0x5ac3[51]],raw:true})}}})[_0x5ac3[45]](function(_0xf2f9x18){if(_0xf2f9x18){return db[_0x5ac3[93]][_0x5ac3[81]]({state:18,statedesc:_0x5ac3[84],campaign:_0xf2f9x18[_0x5ac3[51]],campaigntype:_0xf2f9x2c[_0x5ac3[85]]?_0x5ac3[86]:_0x5ac3[87],CampaignId:_0xf2f9x2c[_0x5ac3[88]]|| null,VoiceQueueId:_0xf2f9x2c[_0x5ac3[85]]|| null,ListId:_0xf2f9x2c[_0x5ac3[89]]|| null,membername:_0xf2f9x28[_0x5ac3[90]][_0x5ac3[51]],UserId:_0xf2f9x28[_0x5ac3[90]][_0x5ac3[78]],deleted:true,deletedat:moment()[_0x5ac3[92]](_0x5ac3[91])})}})[_0x5ac3[45]](function(){return _0xf2f9x15[_0x5ac3[29]](204)[_0x5ac3[28]]()})[_0x5ac3[75]](handleError(_0xf2f9x15,null,_0x5ac3[48]))};exports[_0x5ac3[97]]= function(_0xf2f9x28,_0xf2f9x15,_0xf2f9x2d){var _0xf2f9x2e={count:0,rows:[]};var _0xf2f9x1b={};var _0xf2f9x29={};_0xf2f9x29[_0x5ac3[54]]= _[_0x5ac3[57]](db[_0x5ac3[56]][_0x5ac3[55]]);_0xf2f9x29[_0x5ac3[58]]= _[_0x5ac3[57]](_0xf2f9x28[_0x5ac3[58]]);_0xf2f9x29[_0x5ac3[59]]= _[_0x5ac3[60]](_0xf2f9x29[_0x5ac3[54]],_0xf2f9x29[_0x5ac3[58]]);_0xf2f9x1b[_0x5ac3[61]]= [_0x5ac3[78]];_0xf2f9x1b[_0x5ac3[35]]= qs[_0x5ac3[35]](_0xf2f9x28[_0x5ac3[58]][_0x5ac3[35]]);_0xf2f9x1b[_0x5ac3[34]]= qs[_0x5ac3[34]](_0xf2f9x28[_0x5ac3[58]][_0x5ac3[34]]);_0xf2f9x1b[_0x5ac3[66]]= _0x5ac3[98];_0xf2f9x1b[_0x5ac3[68]]= {active:false,scheduledAt:{$lte:Date[_0x5ac3[99]]()}};_0xf2f9x1b[_0x5ac3[100]]= [{model:db[_0x5ac3[101]],as:_0x5ac3[102],attributes:[_0x5ac3[78],_0x5ac3[103],_0x5ac3[104],_0x5ac3[105]]}];return _0xf2f9x28[_0x5ac3[90]][_0x5ac3[116]]({where:{type:_0x5ac3[114],dialMethod:_0x5ac3[115]},attributes:[_0x5ac3[78]],raw:true})[_0x5ac3[45]](function(_0xf2f9x2f){_0xf2f9x1b[_0x5ac3[68]][_0x5ac3[85]]= {$in:_[_0x5ac3[72]](_0xf2f9x2f,_0x5ac3[78])};return db[_0x5ac3[113]][_0x5ac3[106]](function(_0xf2f9x30){_0xf2f9x1b[_0x5ac3[106]]= _0xf2f9x30;_0xf2f9x1b[_0x5ac3[107]]= _0xf2f9x30[_0x5ac3[109]][_0x5ac3[108]];return db[_0x5ac3[56]][_0x5ac3[112]](_0xf2f9x1b)[_0x5ac3[45]](function(_0xf2f9x31){var _0xf2f9x32=[];var _0xf2f9x33={active:true};for(var _0xf2f9x34=0;_0xf2f9x34< _0xf2f9x31[_0x5ac3[63]];_0xf2f9x34+= 1){_0xf2f9x32[_0x5ac3[110]](_0xf2f9x31[_0xf2f9x34][_0x5ac3[46]](_0xf2f9x33,{transaction:_0xf2f9x30}))};return BPromise[_0x5ac3[111]](_0xf2f9x32)})[_0x5ac3[45]](function(_0xf2f9x31){return {rows:_0xf2f9x31|| [],count:_0xf2f9x31?_0xf2f9x31[_0x5ac3[63]]:0}})})})[_0x5ac3[45]](respondWithResult(_0xf2f9x15,null,_0x5ac3[97]))[_0x5ac3[75]](handleError(_0xf2f9x15,null,_0x5ac3[97]))};exports[_0x5ac3[117]]= function(_0xf2f9x28,_0xf2f9x15,_0xf2f9x2d){return db[_0x5ac3[56]][_0x5ac3[80]]({raw:true,where:{id:_0xf2f9x28[_0x5ac3[79]][_0x5ac3[78]]}})[_0x5ac3[45]](handleEntityNotFound(_0xf2f9x15,null,_0x5ac3[117]))[_0x5ac3[45]](respondWithResult(_0xf2f9x15,null,_0x5ac3[117]))[_0x5ac3[75]](handleError(_0xf2f9x15,null,_0x5ac3[117]))}
\ No newline at end of file
index 2ad0c79..a32e466 100644 (file)
@@ -1 +1 @@
-var _0xf0ca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x64\x65\x66\x69\x6E\x65"];_0xf0ca[0];var _=require(_0xf0ca[1]);var util=require(_0xf0ca[2]);var logger=require(_0xf0ca[4])(_0xf0ca[3]);var attributes=require(_0xf0ca[5]);module[_0xf0ca[6]]= function(_0xd841x5,_0xd841x6){return _0xd841x5[_0xf0ca[10]](_0xf0ca[7],attributes,{tableName:_0xf0ca[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0xf0ca[9],"\x66\x69\x65\x6C\x64\x73":[_0xf0ca[9]]}],timestamps:true})}
\ No newline at end of file
+var _0x2d52=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x64\x65\x66\x69\x6E\x65"];_0x2d52[0];var _=require(_0x2d52[1]);var util=require(_0x2d52[2]);var logger=require(_0x2d52[4])(_0x2d52[3]);var attributes=require(_0x2d52[5]);module[_0x2d52[6]]= function(_0x506dx5,_0x506dx6){return _0x506dx5[_0x2d52[10]](_0x2d52[7],attributes,{tableName:_0x2d52[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0x2d52[9],"\x66\x69\x65\x6C\x64\x73":[_0x2d52[9]]}],timestamps:true})}
\ No newline at end of file
index 67bf75e..a4f6553 100644 (file)
@@ -1 +1 @@
-var _0xef10=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x53\x68\x6F\x77\x43\x6D\x48\x6F\x70\x70\x65\x72","\x66\x69\x6E\x64","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x55\x70\x64\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72","\x75\x70\x64\x61\x74\x65","\x44\x65\x73\x74\x72\x6F\x79\x43\x6D\x48\x6F\x70\x70\x65\x72","\x64\x65\x73\x74\x72\x6F\x79","\x47\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72","\x6C\x65\x6E\x67\x74\x68","\x70\x75\x73\x68","\x61\x6C\x6C","\x6F\x72\x64\x65\x72","\x55\x50\x44\x41\x54\x45","\x4C\x4F\x43\x4B","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74","\x6B\x65\x79\x73","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x4D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x43\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64","\x43\x4F\x55\x4E\x54","\x49\x46","\x60\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74\x60\x20\x3E\x3D\x20","\x22\x25\x73\x22","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x20\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6C\x69\x74\x65\x72\x61\x6C","\x66\x6E","\x63\x6F\x6E\x74\x61\x63\x74\x73\x52\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x64"];_0xef10[0];var _=require(_0xef10[1]);var util=require(_0xef10[2]);var moment=require(_0xef10[3]);var BPromise=require(_0xef10[4]);var db=require(_0xef10[6])[_0xef10[5]];var utils=require(_0xef10[7]);var logger=require(_0xef10[9])(_0xef10[8]);var jayson=require(_0xef10[10]);var client=jayson[_0xef10[12]][_0xef10[11]]({port:9002});function respondWithRpcPromise(_0x10d7xb,_0x10d7xc,_0x10d7xd){return  new BPromise(function(_0x10d7xe,_0x10d7xf){return client[_0xef10[25]](_0x10d7xb,_0x10d7xd)[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[13],_0x10d7xc,_0xef10[16]);logger[_0xef10[20]](_0xef10[18],_0x10d7xc,_0xef10[16],JSON[_0xef10[19]](_0x10d7x11));if(_0x10d7x11[_0xef10[14]]){if(_0x10d7x11[_0xef10[14]][_0xef10[21]]=== 500){logger[_0xef10[14]](_0xef10[13],_0x10d7xc,_0x10d7x11[_0xef10[14]][_0xef10[22]]);return _0x10d7xf(_0x10d7x11[_0xef10[14]][_0xef10[22]])};logger[_0xef10[14]](_0xef10[13],_0x10d7xc,_0x10d7x11[_0xef10[14]][_0xef10[22]]);return _0x10d7xe(_0x10d7x11[_0xef10[14]][_0xef10[22]])}else {logger[_0xef10[17]](_0xef10[13],_0x10d7xc,_0xef10[16]);_0x10d7xe(_0x10d7x11[_0xef10[23]][_0xef10[22]])}})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[13],_0x10d7xc,_0x10d7x10);_0x10d7xf(_0x10d7x10)})})}exports[_0xef10[26]]= function(_0x10d7xd){var _0x10d7x12=this;return  new Promise(function(_0x10d7xe,_0x10d7xf){return db[_0xef10[37]][_0xef10[36]]({raw:_0x10d7xd[_0xef10[27]]?(_0x10d7xd[_0xef10[27]][_0xef10[28]]=== undefined)?true:false:true,where:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[29]]|| null:null,attributes:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[30]]|| null:null,limit:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[31]]|| null:null,include:_0x10d7xd[_0xef10[27]]?(_0x10d7xd[_0xef10[27]][_0xef10[32]]?_[_0xef10[35]](_0x10d7xd[_0xef10[27]][_0xef10[32]],function(_0x10d7x13){return {model:db[_0x10d7x13[_0xef10[33]]],as:_0x10d7x13[_0xef10[34]],attributes:_0x10d7x13[_0xef10[30]],include:_0x10d7x13[_0xef10[32]]?_[_0xef10[35]](_0x10d7x13[_0xef10[32]],function(_0x10d7x14){return {model:db[_0x10d7x14[_0xef10[33]]],as:_0x10d7x14[_0xef10[34]],attributes:_0x10d7x14[_0xef10[30]],include:_0x10d7x14[_0xef10[32]]?_[_0xef10[35]](_0x10d7x14[_0xef10[32]],function(_0x10d7x15){return {model:db[_0x10d7x15[_0xef10[33]]],as:_0x10d7x15[_0xef10[34]],attributes:_0x10d7x15[_0xef10[30]]}}):[]}}):[]}}):[]):[]})[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[26],_0x10d7xd);logger[_0xef10[20]](_0xef10[26],_0x10d7xd,JSON[_0xef10[19]](_0x10d7x11));_0x10d7xe(_0x10d7x11)})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[26],_0x10d7x10[_0xef10[22]],_0x10d7xd);_0x10d7xf(_0x10d7x12[_0xef10[14]](500,_0x10d7x10[_0xef10[22]]))})})};exports[_0xef10[38]]= function(_0x10d7xd){var _0x10d7x12=this;return  new Promise(function(_0x10d7xe,_0x10d7xf){return db[_0xef10[37]][_0xef10[39]]({raw:_0x10d7xd[_0xef10[27]]?(_0x10d7xd[_0xef10[27]][_0xef10[28]]=== undefined)?true:false:true,where:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[29]]|| null:null,attributes:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[30]]|| null:null,include:_0x10d7xd[_0xef10[27]]?(_0x10d7xd[_0xef10[27]][_0xef10[32]]?_[_0xef10[35]](_0x10d7xd[_0xef10[27]][_0xef10[32]],function(_0x10d7x13){return {model:db[_0x10d7x13[_0xef10[33]]],as:_0x10d7x13[_0xef10[34]],attributes:_0x10d7x13[_0xef10[30]],include:_0x10d7x13[_0xef10[32]]?_[_0xef10[35]](_0x10d7x13[_0xef10[32]],function(_0x10d7x14){return {model:db[_0x10d7x14[_0xef10[33]]],as:_0x10d7x14[_0xef10[34]],attributes:_0x10d7x14[_0xef10[30]],include:_0x10d7x14[_0xef10[32]]?_[_0xef10[35]](_0x10d7x14[_0xef10[32]],function(_0x10d7x15){return {model:db[_0x10d7x15[_0xef10[33]]],as:_0x10d7x15[_0xef10[34]],attributes:_0x10d7x15[_0xef10[30]]}}):[]}}):[]}}):[]):[]})[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[38],_0x10d7xd);logger[_0xef10[20]](_0xef10[38],_0x10d7xd,JSON[_0xef10[19]](_0x10d7x11));_0x10d7xe(_0x10d7x11)})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[38],_0x10d7x10[_0xef10[22]],_0x10d7xd);_0x10d7xf(_0x10d7x12[_0xef10[14]](500,_0x10d7x10[_0xef10[22]]))})})};exports[_0xef10[40]]= function(_0x10d7xd){var _0x10d7x12=this;return  new Promise(function(_0x10d7xe,_0x10d7xf){return db[_0xef10[37]][_0xef10[42]](_0x10d7xd[_0xef10[41]],{raw:_0x10d7xd[_0xef10[27]]?(_0x10d7xd[_0xef10[27]][_0xef10[28]]=== undefined)?true:false:true})[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[40],_0x10d7xd);logger[_0xef10[20]](_0xef10[40],_0x10d7xd,JSON[_0xef10[19]](_0x10d7x11));_0x10d7xe(_0x10d7x11)})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[40],_0x10d7x10[_0xef10[22]],_0x10d7xd);_0x10d7xf(_0x10d7x12[_0xef10[14]](500,_0x10d7x10[_0xef10[22]]))})})};exports[_0xef10[43]]= function(_0x10d7xd){var _0x10d7x12=this;return  new Promise(function(_0x10d7xe,_0x10d7xf){return db[_0xef10[37]][_0xef10[44]](_0x10d7xd[_0xef10[41]],{raw:_0x10d7xd[_0xef10[27]]?(_0x10d7xd[_0xef10[27]][_0xef10[28]]=== undefined)?true:false:true,individualHooks:true,where:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[29]]|| null:null,attributes:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[30]]|| null:null,limit:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[31]]|| null:null})[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[43],_0x10d7xd);logger[_0xef10[20]](_0xef10[43],_0x10d7xd,JSON[_0xef10[19]](_0x10d7x11));_0x10d7xe(_0x10d7x11)})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[43],_0x10d7x10[_0xef10[22]],_0x10d7xd);_0x10d7xf(_0x10d7x12[_0xef10[14]](500,_0x10d7x10[_0xef10[22]]))})})};exports[_0xef10[45]]= function(_0x10d7xd){var _0x10d7x12=this;return  new Promise(function(_0x10d7xe,_0x10d7xf){return db[_0xef10[37]][_0xef10[46]]({where:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[29]]|| null:null})[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[45],_0x10d7xd);logger[_0xef10[20]](_0xef10[45],_0x10d7xd,JSON[_0xef10[19]](_0x10d7x11));_0x10d7xe(_0x10d7x11)})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[45],_0x10d7x10[_0xef10[22]],_0x10d7xd);_0x10d7xf(_0x10d7x12[_0xef10[14]](500,_0x10d7x10[_0xef10[22]]))})})};exports[_0xef10[47]]= function(_0x10d7xd){var _0x10d7x12=this;return  new Promise(function(_0x10d7xe,_0x10d7xf){return db[_0xef10[54]][_0xef10[59]]()[_0xef10[24]](function(_0x10d7x16){return db[_0xef10[58]][_0xef10[57]](function(_0x10d7x17){return db[_0xef10[37]][_0xef10[36]]({where:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[29]]|| null:null,attributes:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[30]]|| null:null,limit:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[31]]|| null:null,order:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[51]]|| null:null,transaction:_0x10d7x17,lock:_0x10d7x17[_0xef10[53]][_0xef10[52]],include:[{model:db[_0xef10[54]],as:_0xef10[55],attributes:_[_0xef10[56]](_0x10d7x16)}]})[_0xef10[24]](function(_0x10d7x11){var _0x10d7x18=[];for(var _0x10d7x13=0;_0x10d7x13< _0x10d7x11[_0xef10[48]];_0x10d7x13+= 1){_0x10d7x18[_0xef10[49]](_0x10d7x11[_0x10d7x13][_0xef10[44]](_0x10d7xd[_0xef10[41]],{transaction:_0x10d7x17}))};return BPromise[_0xef10[50]](_0x10d7x18)})})[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[47],_0x10d7xd);logger[_0xef10[20]](_0xef10[47],_0x10d7xd,JSON[_0xef10[19]](_0x10d7x11));_0x10d7xe(_0x10d7x11)})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[47],_0x10d7x10[_0xef10[22]],_0x10d7xd);_0x10d7xf(_0x10d7x12[_0xef10[14]](500,_0x10d7x10[_0xef10[22]]))})})})};exports[_0xef10[60]]= function(_0x10d7xd){var _0x10d7x12=this;return  new Promise(function(_0x10d7xe,_0x10d7xf){return db[_0xef10[58]][_0xef10[57]](function(_0x10d7x17){return db[_0xef10[61]][_0xef10[42]](_0x10d7xd[_0xef10[41]],{raw:_0x10d7xd[_0xef10[27]]?(_0x10d7xd[_0xef10[27]][_0xef10[28]]=== undefined)?true:false:true,transaction:_0x10d7x17})[_0xef10[24]](function(){return db[_0xef10[37]][_0xef10[46]]({where:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[29]]|| null:null,transaction:_0x10d7x17})})})[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[60],_0x10d7xd);logger[_0xef10[20]](_0xef10[60],_0x10d7xd,JSON[_0xef10[19]](_0x10d7x11));_0x10d7xe(_0x10d7x11)})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[60],_0x10d7x10[_0xef10[22]],_0x10d7xd);_0x10d7xf(_0x10d7x12[_0xef10[14]](500,_0x10d7x10[_0xef10[22]]))})})};exports[_0xef10[62]]= function(_0x10d7xd){var _0x10d7x12=this;return  new Promise(function(_0x10d7xe,_0x10d7xf){return db[_0xef10[37]][_0xef10[36]]({raw:_0x10d7xd[_0xef10[27]]?(_0x10d7xd[_0xef10[27]][_0xef10[28]]=== undefined)?true:false:true,where:_0x10d7xd[_0xef10[27]]?_0x10d7xd[_0xef10[27]][_0xef10[29]]|| null:null,attributes:[[db[_0xef10[58]][_0xef10[71]](_0xef10[63],db[_0xef10[58]][_0xef10[71]](_0xef10[64],db[_0xef10[58]][_0xef10[70]](_0xef10[65]+ util[_0xef10[68]](_0xef10[66],moment()[_0xef10[68]](_0xef10[67]))+ _0xef10[69]))),_0xef10[72]]]})[_0xef10[24]](function(_0x10d7x11){logger[_0xef10[17]](_0xef10[62],_0x10d7xd);logger[_0xef10[20]](_0xef10[62],_0x10d7xd,JSON[_0xef10[19]](_0x10d7x11));_0x10d7xe(_0x10d7x11)})[_0xef10[15]](function(_0x10d7x10){logger[_0xef10[14]](_0xef10[62],_0x10d7x10[_0xef10[22]],_0x10d7xd);_0x10d7xf(_0x10d7x12[_0xef10[14]](500,_0x10d7x10[_0xef10[22]]))})})}
\ No newline at end of file
+var _0xbad1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x53\x68\x6F\x77\x43\x6D\x48\x6F\x70\x70\x65\x72","\x66\x69\x6E\x64","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x55\x70\x64\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72","\x75\x70\x64\x61\x74\x65","\x44\x65\x73\x74\x72\x6F\x79\x43\x6D\x48\x6F\x70\x70\x65\x72","\x64\x65\x73\x74\x72\x6F\x79","\x47\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72","\x6C\x65\x6E\x67\x74\x68","\x70\x75\x73\x68","\x61\x6C\x6C","\x6F\x72\x64\x65\x72","\x55\x50\x44\x41\x54\x45","\x4C\x4F\x43\x4B","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74","\x6B\x65\x79\x73","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x4D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x43\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64","\x43\x4F\x55\x4E\x54","\x49\x46","\x60\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74\x60\x20\x3E\x3D\x20","\x22\x25\x73\x22","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x20\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6C\x69\x74\x65\x72\x61\x6C","\x66\x6E","\x63\x6F\x6E\x74\x61\x63\x74\x73\x52\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x64"];_0xbad1[0];var _=require(_0xbad1[1]);var util=require(_0xbad1[2]);var moment=require(_0xbad1[3]);var BPromise=require(_0xbad1[4]);var db=require(_0xbad1[6])[_0xbad1[5]];var utils=require(_0xbad1[7]);var logger=require(_0xbad1[9])(_0xbad1[8]);var jayson=require(_0xbad1[10]);var client=jayson[_0xbad1[12]][_0xbad1[11]]({port:9002});function respondWithRpcPromise(_0x2d3dxb,_0x2d3dxc,_0x2d3dxd){return  new BPromise(function(_0x2d3dxe,_0x2d3dxf){return client[_0xbad1[25]](_0x2d3dxb,_0x2d3dxd)[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[13],_0x2d3dxc,_0xbad1[16]);logger[_0xbad1[20]](_0xbad1[18],_0x2d3dxc,_0xbad1[16],JSON[_0xbad1[19]](_0x2d3dx11));if(_0x2d3dx11[_0xbad1[14]]){if(_0x2d3dx11[_0xbad1[14]][_0xbad1[21]]=== 500){logger[_0xbad1[14]](_0xbad1[13],_0x2d3dxc,_0x2d3dx11[_0xbad1[14]][_0xbad1[22]]);return _0x2d3dxf(_0x2d3dx11[_0xbad1[14]][_0xbad1[22]])};logger[_0xbad1[14]](_0xbad1[13],_0x2d3dxc,_0x2d3dx11[_0xbad1[14]][_0xbad1[22]]);return _0x2d3dxe(_0x2d3dx11[_0xbad1[14]][_0xbad1[22]])}else {logger[_0xbad1[17]](_0xbad1[13],_0x2d3dxc,_0xbad1[16]);_0x2d3dxe(_0x2d3dx11[_0xbad1[23]][_0xbad1[22]])}})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[13],_0x2d3dxc,_0x2d3dx10);_0x2d3dxf(_0x2d3dx10)})})}exports[_0xbad1[26]]= function(_0x2d3dxd){var _0x2d3dx12=this;return  new Promise(function(_0x2d3dxe,_0x2d3dxf){return db[_0xbad1[37]][_0xbad1[36]]({raw:_0x2d3dxd[_0xbad1[27]]?(_0x2d3dxd[_0xbad1[27]][_0xbad1[28]]=== undefined)?true:false:true,where:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[29]]|| null:null,attributes:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[30]]|| null:null,limit:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[31]]|| null:null,include:_0x2d3dxd[_0xbad1[27]]?(_0x2d3dxd[_0xbad1[27]][_0xbad1[32]]?_[_0xbad1[35]](_0x2d3dxd[_0xbad1[27]][_0xbad1[32]],function(_0x2d3dx13){return {model:db[_0x2d3dx13[_0xbad1[33]]],as:_0x2d3dx13[_0xbad1[34]],attributes:_0x2d3dx13[_0xbad1[30]],include:_0x2d3dx13[_0xbad1[32]]?_[_0xbad1[35]](_0x2d3dx13[_0xbad1[32]],function(_0x2d3dx14){return {model:db[_0x2d3dx14[_0xbad1[33]]],as:_0x2d3dx14[_0xbad1[34]],attributes:_0x2d3dx14[_0xbad1[30]],include:_0x2d3dx14[_0xbad1[32]]?_[_0xbad1[35]](_0x2d3dx14[_0xbad1[32]],function(_0x2d3dx15){return {model:db[_0x2d3dx15[_0xbad1[33]]],as:_0x2d3dx15[_0xbad1[34]],attributes:_0x2d3dx15[_0xbad1[30]]}}):[]}}):[]}}):[]):[]})[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[26],_0x2d3dxd);logger[_0xbad1[20]](_0xbad1[26],_0x2d3dxd,JSON[_0xbad1[19]](_0x2d3dx11));_0x2d3dxe(_0x2d3dx11)})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[26],_0x2d3dx10[_0xbad1[22]],_0x2d3dxd);_0x2d3dxf(_0x2d3dx12[_0xbad1[14]](500,_0x2d3dx10[_0xbad1[22]]))})})};exports[_0xbad1[38]]= function(_0x2d3dxd){var _0x2d3dx12=this;return  new Promise(function(_0x2d3dxe,_0x2d3dxf){return db[_0xbad1[37]][_0xbad1[39]]({raw:_0x2d3dxd[_0xbad1[27]]?(_0x2d3dxd[_0xbad1[27]][_0xbad1[28]]=== undefined)?true:false:true,where:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[29]]|| null:null,attributes:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[30]]|| null:null,include:_0x2d3dxd[_0xbad1[27]]?(_0x2d3dxd[_0xbad1[27]][_0xbad1[32]]?_[_0xbad1[35]](_0x2d3dxd[_0xbad1[27]][_0xbad1[32]],function(_0x2d3dx13){return {model:db[_0x2d3dx13[_0xbad1[33]]],as:_0x2d3dx13[_0xbad1[34]],attributes:_0x2d3dx13[_0xbad1[30]],include:_0x2d3dx13[_0xbad1[32]]?_[_0xbad1[35]](_0x2d3dx13[_0xbad1[32]],function(_0x2d3dx14){return {model:db[_0x2d3dx14[_0xbad1[33]]],as:_0x2d3dx14[_0xbad1[34]],attributes:_0x2d3dx14[_0xbad1[30]],include:_0x2d3dx14[_0xbad1[32]]?_[_0xbad1[35]](_0x2d3dx14[_0xbad1[32]],function(_0x2d3dx15){return {model:db[_0x2d3dx15[_0xbad1[33]]],as:_0x2d3dx15[_0xbad1[34]],attributes:_0x2d3dx15[_0xbad1[30]]}}):[]}}):[]}}):[]):[]})[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[38],_0x2d3dxd);logger[_0xbad1[20]](_0xbad1[38],_0x2d3dxd,JSON[_0xbad1[19]](_0x2d3dx11));_0x2d3dxe(_0x2d3dx11)})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[38],_0x2d3dx10[_0xbad1[22]],_0x2d3dxd);_0x2d3dxf(_0x2d3dx12[_0xbad1[14]](500,_0x2d3dx10[_0xbad1[22]]))})})};exports[_0xbad1[40]]= function(_0x2d3dxd){var _0x2d3dx12=this;return  new Promise(function(_0x2d3dxe,_0x2d3dxf){return db[_0xbad1[37]][_0xbad1[42]](_0x2d3dxd[_0xbad1[41]],{raw:_0x2d3dxd[_0xbad1[27]]?(_0x2d3dxd[_0xbad1[27]][_0xbad1[28]]=== undefined)?true:false:true})[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[40],_0x2d3dxd);logger[_0xbad1[20]](_0xbad1[40],_0x2d3dxd,JSON[_0xbad1[19]](_0x2d3dx11));_0x2d3dxe(_0x2d3dx11)})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[40],_0x2d3dx10[_0xbad1[22]],_0x2d3dxd);_0x2d3dxf(_0x2d3dx12[_0xbad1[14]](500,_0x2d3dx10[_0xbad1[22]]))})})};exports[_0xbad1[43]]= function(_0x2d3dxd){var _0x2d3dx12=this;return  new Promise(function(_0x2d3dxe,_0x2d3dxf){return db[_0xbad1[37]][_0xbad1[44]](_0x2d3dxd[_0xbad1[41]],{raw:_0x2d3dxd[_0xbad1[27]]?(_0x2d3dxd[_0xbad1[27]][_0xbad1[28]]=== undefined)?true:false:true,individualHooks:true,where:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[29]]|| null:null,attributes:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[30]]|| null:null,limit:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[31]]|| null:null})[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[43],_0x2d3dxd);logger[_0xbad1[20]](_0xbad1[43],_0x2d3dxd,JSON[_0xbad1[19]](_0x2d3dx11));_0x2d3dxe(_0x2d3dx11)})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[43],_0x2d3dx10[_0xbad1[22]],_0x2d3dxd);_0x2d3dxf(_0x2d3dx12[_0xbad1[14]](500,_0x2d3dx10[_0xbad1[22]]))})})};exports[_0xbad1[45]]= function(_0x2d3dxd){var _0x2d3dx12=this;return  new Promise(function(_0x2d3dxe,_0x2d3dxf){return db[_0xbad1[37]][_0xbad1[46]]({where:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[29]]|| null:null})[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[45],_0x2d3dxd);logger[_0xbad1[20]](_0xbad1[45],_0x2d3dxd,JSON[_0xbad1[19]](_0x2d3dx11));_0x2d3dxe(_0x2d3dx11)})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[45],_0x2d3dx10[_0xbad1[22]],_0x2d3dxd);_0x2d3dxf(_0x2d3dx12[_0xbad1[14]](500,_0x2d3dx10[_0xbad1[22]]))})})};exports[_0xbad1[47]]= function(_0x2d3dxd){var _0x2d3dx12=this;return  new Promise(function(_0x2d3dxe,_0x2d3dxf){return db[_0xbad1[54]][_0xbad1[59]]()[_0xbad1[24]](function(_0x2d3dx16){return db[_0xbad1[58]][_0xbad1[57]](function(_0x2d3dx17){return db[_0xbad1[37]][_0xbad1[36]]({where:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[29]]|| null:null,attributes:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[30]]|| null:null,limit:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[31]]|| null:null,order:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[51]]|| null:null,transaction:_0x2d3dx17,lock:_0x2d3dx17[_0xbad1[53]][_0xbad1[52]],include:[{model:db[_0xbad1[54]],as:_0xbad1[55],attributes:_[_0xbad1[56]](_0x2d3dx16)}]})[_0xbad1[24]](function(_0x2d3dx11){var _0x2d3dx18=[];for(var _0x2d3dx13=0;_0x2d3dx13< _0x2d3dx11[_0xbad1[48]];_0x2d3dx13+= 1){_0x2d3dx18[_0xbad1[49]](_0x2d3dx11[_0x2d3dx13][_0xbad1[44]](_0x2d3dxd[_0xbad1[41]],{transaction:_0x2d3dx17}))};return BPromise[_0xbad1[50]](_0x2d3dx18)})})[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[47],_0x2d3dxd);logger[_0xbad1[20]](_0xbad1[47],_0x2d3dxd,JSON[_0xbad1[19]](_0x2d3dx11));_0x2d3dxe(_0x2d3dx11)})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[47],_0x2d3dx10[_0xbad1[22]],_0x2d3dxd);_0x2d3dxf(_0x2d3dx12[_0xbad1[14]](500,_0x2d3dx10[_0xbad1[22]]))})})})};exports[_0xbad1[60]]= function(_0x2d3dxd){var _0x2d3dx12=this;return  new Promise(function(_0x2d3dxe,_0x2d3dxf){return db[_0xbad1[58]][_0xbad1[57]](function(_0x2d3dx17){return db[_0xbad1[61]][_0xbad1[42]](_0x2d3dxd[_0xbad1[41]],{raw:_0x2d3dxd[_0xbad1[27]]?(_0x2d3dxd[_0xbad1[27]][_0xbad1[28]]=== undefined)?true:false:true,transaction:_0x2d3dx17})[_0xbad1[24]](function(){return db[_0xbad1[37]][_0xbad1[46]]({where:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[29]]|| null:null,transaction:_0x2d3dx17})})})[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[60],_0x2d3dxd);logger[_0xbad1[20]](_0xbad1[60],_0x2d3dxd,JSON[_0xbad1[19]](_0x2d3dx11));_0x2d3dxe(_0x2d3dx11)})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[60],_0x2d3dx10[_0xbad1[22]],_0x2d3dxd);_0x2d3dxf(_0x2d3dx12[_0xbad1[14]](500,_0x2d3dx10[_0xbad1[22]]))})})};exports[_0xbad1[62]]= function(_0x2d3dxd){var _0x2d3dx12=this;return  new Promise(function(_0x2d3dxe,_0x2d3dxf){return db[_0xbad1[37]][_0xbad1[36]]({raw:_0x2d3dxd[_0xbad1[27]]?(_0x2d3dxd[_0xbad1[27]][_0xbad1[28]]=== undefined)?true:false:true,where:_0x2d3dxd[_0xbad1[27]]?_0x2d3dxd[_0xbad1[27]][_0xbad1[29]]|| null:null,attributes:[[db[_0xbad1[58]][_0xbad1[71]](_0xbad1[63],db[_0xbad1[58]][_0xbad1[71]](_0xbad1[64],db[_0xbad1[58]][_0xbad1[70]](_0xbad1[65]+ util[_0xbad1[68]](_0xbad1[66],moment()[_0xbad1[68]](_0xbad1[67]))+ _0xbad1[69]))),_0xbad1[72]]]})[_0xbad1[24]](function(_0x2d3dx11){logger[_0xbad1[17]](_0xbad1[62],_0x2d3dxd);logger[_0xbad1[20]](_0xbad1[62],_0x2d3dxd,JSON[_0xbad1[19]](_0x2d3dx11));_0x2d3dxe(_0x2d3dx11)})[_0xbad1[15]](function(_0x2d3dx10){logger[_0xbad1[14]](_0xbad1[62],_0x2d3dx10[_0xbad1[22]],_0x2d3dxd);_0x2d3dxf(_0x2d3dx12[_0xbad1[14]](500,_0x2d3dx10[_0xbad1[22]]))})})}
\ No newline at end of file
index 152832f..92386b2 100644 (file)
@@ -1 +1 @@
-var _0xc7b2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x70\x72\x65\x76\x69\x65\x77","\x67\x65\x74\x44\x69\x61\x6C\x65\x72\x43\x6F\x6E\x74\x61\x63\x74\x73","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x70\x72\x65\x76\x69\x65\x77\x2F\x3A\x69\x64","\x63\x61\x6C\x6C\x44\x69\x61\x6C\x65\x72\x43\x6F\x6E\x74\x61\x63\x74","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xc7b2[0];var multer=require(_0xc7b2[1]);var util=require(_0xc7b2[2]);var path=require(_0xc7b2[3]);var express=require(_0xc7b2[4]);var router=express.Router();var auth=require(_0xc7b2[5]);var config=require(_0xc7b2[6]);var controller=require(_0xc7b2[7]);router[_0xc7b2[11]](_0xc7b2[8],auth[_0xc7b2[9]](),controller[_0xc7b2[10]]);router[_0xc7b2[11]](_0xc7b2[12],auth[_0xc7b2[9]](),controller[_0xc7b2[13]]);router[_0xc7b2[11]](_0xc7b2[14],auth[_0xc7b2[9]](),controller[_0xc7b2[15]]);router[_0xc7b2[11]](_0xc7b2[16],auth[_0xc7b2[9]](),controller[_0xc7b2[17]]);router[_0xc7b2[11]](_0xc7b2[18],auth[_0xc7b2[9]](),controller[_0xc7b2[19]]);router[_0xc7b2[21]](_0xc7b2[8],auth[_0xc7b2[9]](),controller[_0xc7b2[20]]);router[_0xc7b2[23]](_0xc7b2[16],auth[_0xc7b2[9]](),controller[_0xc7b2[22]]);router[_0xc7b2[25]](_0xc7b2[16],auth[_0xc7b2[9]](),controller[_0xc7b2[24]]);module[_0xc7b2[26]]= router
\ No newline at end of file
+var _0x795e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x70\x72\x65\x76\x69\x65\x77","\x67\x65\x74\x44\x69\x61\x6C\x65\x72\x43\x6F\x6E\x74\x61\x63\x74\x73","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x70\x72\x65\x76\x69\x65\x77\x2F\x3A\x69\x64","\x63\x61\x6C\x6C\x44\x69\x61\x6C\x65\x72\x43\x6F\x6E\x74\x61\x63\x74","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x795e[0];var multer=require(_0x795e[1]);var util=require(_0x795e[2]);var path=require(_0x795e[3]);var express=require(_0x795e[4]);var router=express.Router();var auth=require(_0x795e[5]);var config=require(_0x795e[6]);var controller=require(_0x795e[7]);router[_0x795e[11]](_0x795e[8],auth[_0x795e[9]](),controller[_0x795e[10]]);router[_0x795e[11]](_0x795e[12],auth[_0x795e[9]](),controller[_0x795e[13]]);router[_0x795e[11]](_0x795e[14],auth[_0x795e[9]](),controller[_0x795e[15]]);router[_0x795e[11]](_0x795e[16],auth[_0x795e[9]](),controller[_0x795e[17]]);router[_0x795e[11]](_0x795e[18],auth[_0x795e[9]](),controller[_0x795e[19]]);router[_0x795e[21]](_0x795e[8],auth[_0x795e[9]](),controller[_0x795e[20]]);router[_0x795e[23]](_0x795e[16],auth[_0x795e[9]](),controller[_0x795e[22]]);router[_0x795e[25]](_0x795e[16],auth[_0x795e[9]](),controller[_0x795e[24]]);module[_0x795e[26]]= router
\ No newline at end of file
index 18b533a..b6eb71d 100644 (file)
@@ -1 +1 @@
-var _0x7361=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x6F\x6E\x74\x61\x63\x74\x4C\x69\x73\x74\x51\x75\x65\x75\x65"];_0x7361[0];var moment=require(_0x7361[1]);var Sequelize=require(_0x7361[2]);module[_0x7361[3]]= {phone:{type:Sequelize[_0x7361[4]],allowNull:false},ContactId:{type:Sequelize[_0x7361[5]],unique:_0x7361[6]},ListId:{type:Sequelize[_0x7361[5]],unique:_0x7361[6]},VoiceQueueId:{type:Sequelize[_0x7361[5]],unique:_0x7361[6]}}
\ No newline at end of file
+var _0xced9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x6F\x6E\x74\x61\x63\x74\x4C\x69\x73\x74\x51\x75\x65\x75\x65"];_0xced9[0];var moment=require(_0xced9[1]);var Sequelize=require(_0xced9[2]);module[_0xced9[3]]= {phone:{type:Sequelize[_0xced9[4]],allowNull:false},ContactId:{type:Sequelize[_0xced9[5]],unique:_0xced9[6]},ListId:{type:Sequelize[_0xced9[5]],unique:_0xced9[6]},VoiceQueueId:{type:Sequelize[_0xced9[5]],unique:_0xced9[6]}}
\ No newline at end of file
index 1bfe3e1..f682966 100644 (file)
@@ -1 +1 @@
-var _0x961c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x961c[0];var jsonpatch=require(_0x961c[1]);var rp=require(_0x961c[2]);var moment=require(_0x961c[3]);var BPromise=require(_0x961c[4]);var util=require(_0x961c[5]);var path=require(_0x961c[6]);var sox=require(_0x961c[7]);var ejs=require(_0x961c[8]);var fs=require(_0x961c[9]);var _=require(_0x961c[10]);var squel=require(_0x961c[11]);var crypto=require(_0x961c[12]);var jsforce=require(_0x961c[13]);var toCsv=require(_0x961c[14]);var qs=require(_0x961c[15]);var logger=require(_0x961c[17])(_0x961c[16]);var utils=require(_0x961c[18]);var config=require(_0x961c[19]);var db=require(_0x961c[21])[_0x961c[20]];function respondWithStatusCode(_0xbcd2x15,_0xbcd2x16,_0xbcd2x17){_0xbcd2x16= _0xbcd2x16|| 204;return function(_0xbcd2x18){if(_0xbcd2x18){logger[_0x961c[24]](_0x961c[22],_0xbcd2x17,_0xbcd2x16,_0x961c[23]);logger[_0x961c[26]](_0x961c[25],_0xbcd2x17,_0xbcd2x16,_0x961c[23]);return _0xbcd2x15[_0x961c[27]](_0xbcd2x16)};return _0xbcd2x15[_0x961c[29]](304)[_0x961c[28]]()}}function respondWithResult(_0xbcd2x15,_0xbcd2x16,_0xbcd2x17){_0xbcd2x16= _0xbcd2x16|| 200;return function(_0xbcd2x18){if(_0xbcd2x18){logger[_0x961c[24]](_0x961c[22],_0xbcd2x17,_0xbcd2x16,_0x961c[30]);logger[_0x961c[26]](_0x961c[25],_0xbcd2x17,_0xbcd2x16,_0x961c[30],JSON[_0x961c[31]](_0xbcd2x18));return _0xbcd2x15[_0x961c[29]](_0xbcd2x16)[_0x961c[32]](_0xbcd2x18)};return _0xbcd2x15[_0x961c[29]](304)[_0x961c[28]]()}}function respondWithFilteredResult(_0xbcd2x15,_0xbcd2x1b,_0xbcd2x17){return function(_0xbcd2x18){if(_0xbcd2x18){var _0xbcd2x1c=_0xbcd2x18[_0x961c[33]],_0xbcd2x1d=_0xbcd2x1b[_0x961c[34]],_0xbcd2x1e=_0xbcd2x1b[_0x961c[34]]+ _0xbcd2x1b[_0x961c[35]],_0xbcd2x16;if(_0xbcd2x1e>= _0xbcd2x1c){_0xbcd2x1e= _0xbcd2x1c;_0xbcd2x16= 200}else {_0xbcd2x16= 206};_0xbcd2x15[_0x961c[29]](_0xbcd2x16);logger[_0x961c[24]](_0x961c[22],_0xbcd2x17,_0xbcd2x16,_0x961c[36]);logger[_0x961c[26]](_0x961c[25],_0xbcd2x17,_0xbcd2x16,_0x961c[30],JSON[_0x961c[31]](_0xbcd2x18));return _0xbcd2x15[_0x961c[40]](_0x961c[37],_0xbcd2x1d+ _0x961c[38]+ _0xbcd2x1e+ _0x961c[39]+ _0xbcd2x1c)[_0x961c[32]](_0xbcd2x18)};return null}}function patchUpdates(_0xbcd2x20){return function(_0xbcd2x18){try{jsonpatch[_0x961c[41]](_0xbcd2x18,_0xbcd2x20,true)}catch(err){return BPromise[_0x961c[42]](err)};return _0xbcd2x18[_0x961c[43]]()}}function saveUpdates(_0xbcd2x22,_0xbcd2x16,_0xbcd2x17){return function(_0xbcd2x18){if(_0xbcd2x18){return _0xbcd2x18[_0x961c[46]](_0xbcd2x22)[_0x961c[45]](function(_0xbcd2x23){logger[_0x961c[24]](_0x961c[22],_0xbcd2x17,_0xbcd2x16,_0x961c[44]);logger[_0x961c[26]](_0x961c[25],_0xbcd2x17,_0xbcd2x16,_0x961c[44],JSON[_0x961c[31]](_0xbcd2x18));return _0xbcd2x23})};return null}}function removeEntity(_0xbcd2x15,_0xbcd2x16,_0xbcd2x17){return function(_0xbcd2x18){if(_0xbcd2x18){return _0xbcd2x18[_0x961c[48]]()[_0x961c[45]](function(){logger[_0x961c[24]](_0x961c[22],_0xbcd2x17,_0xbcd2x16,_0x961c[47]);logger[_0x961c[26]](_0x961c[25],_0xbcd2x17,_0xbcd2x16,_0x961c[47],JSON[_0x961c[31]](_0xbcd2x18));_0xbcd2x15[_0x961c[29]](204)[_0x961c[28]]()})}}}function handleEntityNotFound(_0xbcd2x15,_0xbcd2x16,_0xbcd2x17){return function(_0xbcd2x18){if(!_0xbcd2x18){logger[_0x961c[50]](_0x961c[22],_0xbcd2x17,404,_0x961c[49]);_0xbcd2x15[_0x961c[29]](404)[_0x961c[28]]();return null};return _0xbcd2x18}}function handleError(_0xbcd2x15,_0xbcd2x16,_0xbcd2x17){_0xbcd2x16= _0xbcd2x16|| 500;return function(_0xbcd2x27){logger[_0x961c[50]](_0x961c[22],_0xbcd2x17,_0xbcd2x16,JSON[_0x961c[31]](_0xbcd2x27));delete _0xbcd2x27[_0x961c[51]];_0xbcd2x15[_0x961c[29]](_0xbcd2x16)[_0x961c[52]](_0xbcd2x27)}}exports[_0x961c[53]]= function(_0xbcd2x28,_0xbcd2x15){var _0xbcd2x1b={},_0xbcd2x29={};_0xbcd2x29[_0x961c[54]]= _[_0x961c[57]](db[_0x961c[56]][_0x961c[55]]);_0xbcd2x29[_0x961c[58]]= _[_0x961c[57]](_0xbcd2x28[_0x961c[58]]);_0xbcd2x29[_0x961c[59]]= _[_0x961c[60]](_0xbcd2x29[_0x961c[54]],_0xbcd2x29[_0x961c[58]]);_0xbcd2x1b[_0x961c[61]]= _[_0x961c[60]](_0xbcd2x29[_0x961c[54]],qs[_0x961c[62]](_0xbcd2x28[_0x961c[58]][_0x961c[62]]));_0xbcd2x1b[_0x961c[61]]= (_0xbcd2x1b[_0x961c[61]][_0x961c[63]])?_0xbcd2x1b[_0x961c[61]]:_0xbcd2x29[_0x961c[54]];if(!_0xbcd2x28[_0x961c[58]][_0x961c[65]](_0x961c[64])){_0xbcd2x1b[_0x961c[35]]= qs[_0x961c[35]](_0xbcd2x28[_0x961c[58]][_0x961c[35]]);_0xbcd2x1b[_0x961c[34]]= qs[_0x961c[34]](_0xbcd2x28[_0x961c[58]][_0x961c[34]])};_0xbcd2x1b[_0x961c[66]]= qs[_0x961c[67]](_0xbcd2x28[_0x961c[58]][_0x961c[67]]);_0xbcd2x1b[_0x961c[68]]= qs[_0x961c[59]](_[_0x961c[69]](_0xbcd2x28[_0x961c[58]],_0xbcd2x29[_0x961c[59]]));if(_0xbcd2x28[_0x961c[58]][_0x961c[70]]){_0xbcd2x1b[_0x961c[68]]= _[_0x961c[73]](_0xbcd2x1b[_0x961c[68]],{$or:_[_0x961c[72]](_0xbcd2x1b[_0x961c[61]],function(_0xbcd2x2a){var _0xbcd2x2b={};_0xbcd2x2b[_0xbcd2x2a]= {$like:_0x961c[71]+ _0xbcd2x28[_0x961c[58]][_0x961c[70]]+ _0x961c[71]};return _0xbcd2x2b})})};_0xbcd2x1b= _[_0x961c[73]]({},_0xbcd2x1b,_0xbcd2x28[_0x961c[74]]);return db[_0x961c[56]][_0x961c[76]](_0xbcd2x1b)[_0x961c[45]](respondWithFilteredResult(_0xbcd2x15,_0xbcd2x1b,_0x961c[53]))[_0x961c[75]](handleError(_0xbcd2x15,null,_0x961c[53]))};exports[_0x961c[77]]= function(_0xbcd2x28,_0xbcd2x15){var _0xbcd2x1b={raw:true,where:{id:_0xbcd2x28[_0x961c[79]][_0x961c[78]]}},_0xbcd2x29={};_0xbcd2x29[_0x961c[54]]= _[_0x961c[57]](db[_0x961c[56]][_0x961c[55]]);_0xbcd2x29[_0x961c[58]]= _[_0x961c[57]](_0xbcd2x28[_0x961c[58]]);_0xbcd2x29[_0x961c[59]]= _[_0x961c[60]](_0xbcd2x29[_0x961c[54]],_0xbcd2x29[_0x961c[58]]);_0xbcd2x1b[_0x961c[61]]= _[_0x961c[60]](_0xbcd2x29[_0x961c[54]],qs[_0x961c[62]](_0xbcd2x28[_0x961c[58]][_0x961c[62]]));_0xbcd2x1b[_0x961c[61]]= (_0xbcd2x1b[_0x961c[61]][_0x961c[63]])?_0xbcd2x1b[_0x961c[61]]:_0xbcd2x29[_0x961c[54]];_0xbcd2x1b= _[_0x961c[73]]({},_0xbcd2x1b,_0xbcd2x28[_0x961c[74]]);return db[_0x961c[56]][_0x961c[80]](_0xbcd2x1b)[_0x961c[45]](handleEntityNotFound(_0xbcd2x15,null,_0x961c[77]))[_0x961c[45]](respondWithResult(_0xbcd2x15,null,_0x961c[77]))[_0x961c[75]](handleError(_0xbcd2x15,null,_0x961c[77]))};exports[_0x961c[46]]= function(_0xbcd2x28,_0xbcd2x15){if(_0xbcd2x28[_0x961c[81]][_0x961c[78]]){delete _0xbcd2x28[_0x961c[81]][_0x961c[78]]};return db[_0x961c[56]][_0x961c[80]]({where:{id:_0xbcd2x28[_0x961c[79]][_0x961c[78]]}})[_0x961c[45]](handleEntityNotFound(_0xbcd2x15,null,_0x961c[46]))[_0x961c[45]](saveUpdates(_0xbcd2x28[_0x961c[81]],null,_0x961c[46]))[_0x961c[45]](respondWithResult(_0xbcd2x15,null,_0x961c[46]))[_0x961c[75]](handleError(_0xbcd2x15,null,_0x961c[46]))};exports[_0x961c[48]]= function(_0xbcd2x28,_0xbcd2x15){return db[_0x961c[56]][_0x961c[80]]({where:{id:_0xbcd2x28[_0x961c[79]][_0x961c[78]]}})[_0x961c[45]](handleEntityNotFound(_0xbcd2x15,null,_0x961c[48]))[_0x961c[45]](removeEntity(_0xbcd2x15,null,_0x961c[48]))[_0x961c[75]](handleError(_0xbcd2x15,null,_0x961c[48]))};exports[_0x961c[82]]= function(_0xbcd2x28,_0xbcd2x15){return db[_0x961c[56]][_0x961c[82]]()[_0x961c[45]](respondWithResult(_0xbcd2x15,null,_0x961c[82]))[_0x961c[75]](handleError(_0xbcd2x15,null,_0x961c[82]))}
\ No newline at end of file
+var _0xa200=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xa200[0];var jsonpatch=require(_0xa200[1]);var rp=require(_0xa200[2]);var moment=require(_0xa200[3]);var BPromise=require(_0xa200[4]);var util=require(_0xa200[5]);var path=require(_0xa200[6]);var sox=require(_0xa200[7]);var ejs=require(_0xa200[8]);var fs=require(_0xa200[9]);var _=require(_0xa200[10]);var squel=require(_0xa200[11]);var crypto=require(_0xa200[12]);var jsforce=require(_0xa200[13]);var toCsv=require(_0xa200[14]);var qs=require(_0xa200[15]);var logger=require(_0xa200[17])(_0xa200[16]);var utils=require(_0xa200[18]);var config=require(_0xa200[19]);var db=require(_0xa200[21])[_0xa200[20]];function respondWithStatusCode(_0xabcdx15,_0xabcdx16,_0xabcdx17){_0xabcdx16= _0xabcdx16|| 204;return function(_0xabcdx18){if(_0xabcdx18){logger[_0xa200[24]](_0xa200[22],_0xabcdx17,_0xabcdx16,_0xa200[23]);logger[_0xa200[26]](_0xa200[25],_0xabcdx17,_0xabcdx16,_0xa200[23]);return _0xabcdx15[_0xa200[27]](_0xabcdx16)};return _0xabcdx15[_0xa200[29]](304)[_0xa200[28]]()}}function respondWithResult(_0xabcdx15,_0xabcdx16,_0xabcdx17){_0xabcdx16= _0xabcdx16|| 200;return function(_0xabcdx18){if(_0xabcdx18){logger[_0xa200[24]](_0xa200[22],_0xabcdx17,_0xabcdx16,_0xa200[30]);logger[_0xa200[26]](_0xa200[25],_0xabcdx17,_0xabcdx16,_0xa200[30],JSON[_0xa200[31]](_0xabcdx18));return _0xabcdx15[_0xa200[29]](_0xabcdx16)[_0xa200[32]](_0xabcdx18)};return _0xabcdx15[_0xa200[29]](304)[_0xa200[28]]()}}function respondWithFilteredResult(_0xabcdx15,_0xabcdx1b,_0xabcdx17){return function(_0xabcdx18){if(_0xabcdx18){var _0xabcdx1c=_0xabcdx18[_0xa200[33]],_0xabcdx1d=_0xabcdx1b[_0xa200[34]],_0xabcdx1e=_0xabcdx1b[_0xa200[34]]+ _0xabcdx1b[_0xa200[35]],_0xabcdx16;if(_0xabcdx1e>= _0xabcdx1c){_0xabcdx1e= _0xabcdx1c;_0xabcdx16= 200}else {_0xabcdx16= 206};_0xabcdx15[_0xa200[29]](_0xabcdx16);logger[_0xa200[24]](_0xa200[22],_0xabcdx17,_0xabcdx16,_0xa200[36]);logger[_0xa200[26]](_0xa200[25],_0xabcdx17,_0xabcdx16,_0xa200[30],JSON[_0xa200[31]](_0xabcdx18));return _0xabcdx15[_0xa200[40]](_0xa200[37],_0xabcdx1d+ _0xa200[38]+ _0xabcdx1e+ _0xa200[39]+ _0xabcdx1c)[_0xa200[32]](_0xabcdx18)};return null}}function patchUpdates(_0xabcdx20){return function(_0xabcdx18){try{jsonpatch[_0xa200[41]](_0xabcdx18,_0xabcdx20,true)}catch(err){return BPromise[_0xa200[42]](err)};return _0xabcdx18[_0xa200[43]]()}}function saveUpdates(_0xabcdx22,_0xabcdx16,_0xabcdx17){return function(_0xabcdx18){if(_0xabcdx18){return _0xabcdx18[_0xa200[46]](_0xabcdx22)[_0xa200[45]](function(_0xabcdx23){logger[_0xa200[24]](_0xa200[22],_0xabcdx17,_0xabcdx16,_0xa200[44]);logger[_0xa200[26]](_0xa200[25],_0xabcdx17,_0xabcdx16,_0xa200[44],JSON[_0xa200[31]](_0xabcdx18));return _0xabcdx23})};return null}}function removeEntity(_0xabcdx15,_0xabcdx16,_0xabcdx17){return function(_0xabcdx18){if(_0xabcdx18){return _0xabcdx18[_0xa200[48]]()[_0xa200[45]](function(){logger[_0xa200[24]](_0xa200[22],_0xabcdx17,_0xabcdx16,_0xa200[47]);logger[_0xa200[26]](_0xa200[25],_0xabcdx17,_0xabcdx16,_0xa200[47],JSON[_0xa200[31]](_0xabcdx18));_0xabcdx15[_0xa200[29]](204)[_0xa200[28]]()})}}}function handleEntityNotFound(_0xabcdx15,_0xabcdx16,_0xabcdx17){return function(_0xabcdx18){if(!_0xabcdx18){logger[_0xa200[50]](_0xa200[22],_0xabcdx17,404,_0xa200[49]);_0xabcdx15[_0xa200[29]](404)[_0xa200[28]]();return null};return _0xabcdx18}}function handleError(_0xabcdx15,_0xabcdx16,_0xabcdx17){_0xabcdx16= _0xabcdx16|| 500;return function(_0xabcdx27){logger[_0xa200[50]](_0xa200[22],_0xabcdx17,_0xabcdx16,JSON[_0xa200[31]](_0xabcdx27));delete _0xabcdx27[_0xa200[51]];_0xabcdx15[_0xa200[29]](_0xabcdx16)[_0xa200[52]](_0xabcdx27)}}exports[_0xa200[53]]= function(_0xabcdx28,_0xabcdx15){var _0xabcdx1b={},_0xabcdx29={};_0xabcdx29[_0xa200[54]]= _[_0xa200[57]](db[_0xa200[56]][_0xa200[55]]);_0xabcdx29[_0xa200[58]]= _[_0xa200[57]](_0xabcdx28[_0xa200[58]]);_0xabcdx29[_0xa200[59]]= _[_0xa200[60]](_0xabcdx29[_0xa200[54]],_0xabcdx29[_0xa200[58]]);_0xabcdx1b[_0xa200[61]]= _[_0xa200[60]](_0xabcdx29[_0xa200[54]],qs[_0xa200[62]](_0xabcdx28[_0xa200[58]][_0xa200[62]]));_0xabcdx1b[_0xa200[61]]= (_0xabcdx1b[_0xa200[61]][_0xa200[63]])?_0xabcdx1b[_0xa200[61]]:_0xabcdx29[_0xa200[54]];if(!_0xabcdx28[_0xa200[58]][_0xa200[65]](_0xa200[64])){_0xabcdx1b[_0xa200[35]]= qs[_0xa200[35]](_0xabcdx28[_0xa200[58]][_0xa200[35]]);_0xabcdx1b[_0xa200[34]]= qs[_0xa200[34]](_0xabcdx28[_0xa200[58]][_0xa200[34]])};_0xabcdx1b[_0xa200[66]]= qs[_0xa200[67]](_0xabcdx28[_0xa200[58]][_0xa200[67]]);_0xabcdx1b[_0xa200[68]]= qs[_0xa200[59]](_[_0xa200[69]](_0xabcdx28[_0xa200[58]],_0xabcdx29[_0xa200[59]]));if(_0xabcdx28[_0xa200[58]][_0xa200[70]]){_0xabcdx1b[_0xa200[68]]= _[_0xa200[73]](_0xabcdx1b[_0xa200[68]],{$or:_[_0xa200[72]](_0xabcdx1b[_0xa200[61]],function(_0xabcdx2a){var _0xabcdx2b={};_0xabcdx2b[_0xabcdx2a]= {$like:_0xa200[71]+ _0xabcdx28[_0xa200[58]][_0xa200[70]]+ _0xa200[71]};return _0xabcdx2b})})};_0xabcdx1b= _[_0xa200[73]]({},_0xabcdx1b,_0xabcdx28[_0xa200[74]]);return db[_0xa200[56]][_0xa200[76]](_0xabcdx1b)[_0xa200[45]](respondWithFilteredResult(_0xabcdx15,_0xabcdx1b,_0xa200[53]))[_0xa200[75]](handleError(_0xabcdx15,null,_0xa200[53]))};exports[_0xa200[77]]= function(_0xabcdx28,_0xabcdx15){var _0xabcdx1b={raw:true,where:{id:_0xabcdx28[_0xa200[79]][_0xa200[78]]}},_0xabcdx29={};_0xabcdx29[_0xa200[54]]= _[_0xa200[57]](db[_0xa200[56]][_0xa200[55]]);_0xabcdx29[_0xa200[58]]= _[_0xa200[57]](_0xabcdx28[_0xa200[58]]);_0xabcdx29[_0xa200[59]]= _[_0xa200[60]](_0xabcdx29[_0xa200[54]],_0xabcdx29[_0xa200[58]]);_0xabcdx1b[_0xa200[61]]= _[_0xa200[60]](_0xabcdx29[_0xa200[54]],qs[_0xa200[62]](_0xabcdx28[_0xa200[58]][_0xa200[62]]));_0xabcdx1b[_0xa200[61]]= (_0xabcdx1b[_0xa200[61]][_0xa200[63]])?_0xabcdx1b[_0xa200[61]]:_0xabcdx29[_0xa200[54]];_0xabcdx1b= _[_0xa200[73]]({},_0xabcdx1b,_0xabcdx28[_0xa200[74]]);return db[_0xa200[56]][_0xa200[80]](_0xabcdx1b)[_0xa200[45]](handleEntityNotFound(_0xabcdx15,null,_0xa200[77]))[_0xa200[45]](respondWithResult(_0xabcdx15,null,_0xa200[77]))[_0xa200[75]](handleError(_0xabcdx15,null,_0xa200[77]))};exports[_0xa200[46]]= function(_0xabcdx28,_0xabcdx15){if(_0xabcdx28[_0xa200[81]][_0xa200[78]]){delete _0xabcdx28[_0xa200[81]][_0xa200[78]]};return db[_0xa200[56]][_0xa200[80]]({where:{id:_0xabcdx28[_0xa200[79]][_0xa200[78]]}})[_0xa200[45]](handleEntityNotFound(_0xabcdx15,null,_0xa200[46]))[_0xa200[45]](saveUpdates(_0xabcdx28[_0xa200[81]],null,_0xa200[46]))[_0xa200[45]](respondWithResult(_0xabcdx15,null,_0xa200[46]))[_0xa200[75]](handleError(_0xabcdx15,null,_0xa200[46]))};exports[_0xa200[48]]= function(_0xabcdx28,_0xabcdx15){return db[_0xa200[56]][_0xa200[80]]({where:{id:_0xabcdx28[_0xa200[79]][_0xa200[78]]}})[_0xa200[45]](handleEntityNotFound(_0xabcdx15,null,_0xa200[48]))[_0xa200[45]](removeEntity(_0xabcdx15,null,_0xa200[48]))[_0xa200[75]](handleError(_0xabcdx15,null,_0xa200[48]))};exports[_0xa200[82]]= function(_0xabcdx28,_0xabcdx15){return db[_0xa200[56]][_0xa200[82]]()[_0xa200[45]](respondWithResult(_0xabcdx15,null,_0xa200[82]))[_0xa200[75]](handleError(_0xabcdx15,null,_0xa200[82]))}
\ No newline at end of file
index 70ca5f4..3b30209 100644 (file)
@@ -1 +1 @@
-var _0x1d2e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x64\x65\x66\x69\x6E\x65"];_0x1d2e[0];var _=require(_0x1d2e[1]);var util=require(_0x1d2e[2]);var logger=require(_0x1d2e[4])(_0x1d2e[3]);var attributes=require(_0x1d2e[5]);module[_0x1d2e[6]]= function(_0x7a38x5,_0x7a38x6){return _0x7a38x5[_0x1d2e[9]](_0x1d2e[7],attributes,{tableName:_0x1d2e[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x48b3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x64\x65\x66\x69\x6E\x65"];_0x48b3[0];var _=require(_0x48b3[1]);var util=require(_0x48b3[2]);var logger=require(_0x48b3[4])(_0x48b3[3]);var attributes=require(_0x48b3[5]);module[_0x48b3[6]]= function(_0x2f4dx5,_0x2f4dx6){return _0x2f4dx5[_0x48b3[9]](_0x48b3[7],attributes,{tableName:_0x48b3[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 75b53d7..4b672af 100644 (file)
@@ -1 +1 @@
-var _0xa973=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x55\x70\x64\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x62\x6F\x64\x79","\x75\x70\x64\x61\x74\x65","\x44\x65\x73\x74\x72\x6F\x79\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x64\x65\x73\x74\x72\x6F\x79"];_0xa973[0];var _=require(_0xa973[1]);var util=require(_0xa973[2]);var moment=require(_0xa973[3]);var BPromise=require(_0xa973[4]);var db=require(_0xa973[6])[_0xa973[5]];var utils=require(_0xa973[7]);var logger=require(_0xa973[9])(_0xa973[8]);var jayson=require(_0xa973[10]);var client=jayson[_0xa973[12]][_0xa973[11]]({port:9002});function respondWithRpcPromise(_0xc70axb,_0xc70axc,_0xc70axd){return  new BPromise(function(_0xc70axe,_0xc70axf){return client[_0xa973[25]](_0xc70axb,_0xc70axd)[_0xa973[24]](function(_0xc70ax11){logger[_0xa973[17]](_0xa973[13],_0xc70axc,_0xa973[16]);logger[_0xa973[20]](_0xa973[18],_0xc70axc,_0xa973[16],JSON[_0xa973[19]](_0xc70ax11));if(_0xc70ax11[_0xa973[14]]){if(_0xc70ax11[_0xa973[14]][_0xa973[21]]=== 500){logger[_0xa973[14]](_0xa973[13],_0xc70axc,_0xc70ax11[_0xa973[14]][_0xa973[22]]);return _0xc70axf(_0xc70ax11[_0xa973[14]][_0xa973[22]])};logger[_0xa973[14]](_0xa973[13],_0xc70axc,_0xc70ax11[_0xa973[14]][_0xa973[22]]);return _0xc70axe(_0xc70ax11[_0xa973[14]][_0xa973[22]])}else {logger[_0xa973[17]](_0xa973[13],_0xc70axc,_0xa973[16]);_0xc70axe(_0xc70ax11[_0xa973[23]][_0xa973[22]])}})[_0xa973[15]](function(_0xc70ax10){logger[_0xa973[14]](_0xa973[13],_0xc70axc,_0xc70ax10);_0xc70axf(_0xc70ax10)})})}exports[_0xa973[26]]= function(_0xc70axd){var _0xc70ax12=this;return  new Promise(function(_0xc70axe,_0xc70axf){return db[_0xa973[37]][_0xa973[36]]({raw:_0xc70axd[_0xa973[27]]?(_0xc70axd[_0xa973[27]][_0xa973[28]]=== undefined)?true:false:true,where:_0xc70axd[_0xa973[27]]?_0xc70axd[_0xa973[27]][_0xa973[29]]|| null:null,attributes:_0xc70axd[_0xa973[27]]?_0xc70axd[_0xa973[27]][_0xa973[30]]|| null:null,limit:_0xc70axd[_0xa973[27]]?_0xc70axd[_0xa973[27]][_0xa973[31]]|| null:null,include:_0xc70axd[_0xa973[27]]?(_0xc70axd[_0xa973[27]][_0xa973[32]]?_[_0xa973[35]](_0xc70axd[_0xa973[27]][_0xa973[32]],function(_0xc70ax13){return {model:db[_0xc70ax13[_0xa973[33]]],as:_0xc70ax13[_0xa973[34]],attributes:_0xc70ax13[_0xa973[30]],include:_0xc70ax13[_0xa973[32]]?_[_0xa973[35]](_0xc70ax13[_0xa973[32]],function(_0xc70ax14){return {model:db[_0xc70ax14[_0xa973[33]]],as:_0xc70ax14[_0xa973[34]],attributes:_0xc70ax14[_0xa973[30]],include:_0xc70ax14[_0xa973[32]]?_[_0xa973[35]](_0xc70ax14[_0xa973[32]],function(_0xc70ax15){return {model:db[_0xc70ax15[_0xa973[33]]],as:_0xc70ax15[_0xa973[34]],attributes:_0xc70ax15[_0xa973[30]]}}):[]}}):[]}}):[]):[]})[_0xa973[24]](function(_0xc70ax11){logger[_0xa973[17]](_0xa973[26],_0xc70axd);logger[_0xa973[20]](_0xa973[26],_0xc70axd,JSON[_0xa973[19]](_0xc70ax11));_0xc70axe(_0xc70ax11)})[_0xa973[15]](function(_0xc70ax10){logger[_0xa973[14]](_0xa973[26],_0xc70ax10[_0xa973[22]],_0xc70axd);_0xc70axf(_0xc70ax12[_0xa973[14]](500,_0xc70ax10[_0xa973[22]]))})})};exports[_0xa973[38]]= function(_0xc70axd){var _0xc70ax12=this;return  new Promise(function(_0xc70axe,_0xc70axf){return db[_0xa973[37]][_0xa973[40]](_0xc70axd[_0xa973[39]],{raw:_0xc70axd[_0xa973[27]]?(_0xc70axd[_0xa973[27]][_0xa973[28]]=== undefined)?true:false:true,individualHooks:true,where:_0xc70axd[_0xa973[27]]?_0xc70axd[_0xa973[27]][_0xa973[29]]|| null:null,attributes:_0xc70axd[_0xa973[27]]?_0xc70axd[_0xa973[27]][_0xa973[30]]|| null:null,limit:_0xc70axd[_0xa973[27]]?_0xc70axd[_0xa973[27]][_0xa973[31]]|| null:null})[_0xa973[24]](function(_0xc70ax11){logger[_0xa973[17]](_0xa973[38],_0xc70axd);logger[_0xa973[20]](_0xa973[38],_0xc70axd,JSON[_0xa973[19]](_0xc70ax11));_0xc70axe(_0xc70ax11)})[_0xa973[15]](function(_0xc70ax10){logger[_0xa973[14]](_0xa973[38],_0xc70ax10[_0xa973[22]],_0xc70axd);_0xc70axf(_0xc70ax12[_0xa973[14]](500,_0xc70ax10[_0xa973[22]]))})})};exports[_0xa973[41]]= function(_0xc70axd){var _0xc70ax12=this;return  new Promise(function(_0xc70axe,_0xc70axf){return db[_0xa973[37]][_0xa973[42]]({where:_0xc70axd[_0xa973[27]]?_0xc70axd[_0xa973[27]][_0xa973[29]]|| null:null})[_0xa973[24]](function(_0xc70ax11){logger[_0xa973[17]](_0xa973[41],_0xc70axd);logger[_0xa973[20]](_0xa973[41],_0xc70axd,JSON[_0xa973[19]](_0xc70ax11));_0xc70axe(_0xc70ax11)})[_0xa973[15]](function(_0xc70ax10){logger[_0xa973[14]](_0xa973[41],_0xc70ax10[_0xa973[22]],_0xc70axd);_0xc70axf(_0xc70ax12[_0xa973[14]](500,_0xc70ax10[_0xa973[22]]))})})}
\ No newline at end of file
+var _0x798d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x55\x70\x64\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x62\x6F\x64\x79","\x75\x70\x64\x61\x74\x65","\x44\x65\x73\x74\x72\x6F\x79\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x64\x65\x73\x74\x72\x6F\x79"];_0x798d[0];var _=require(_0x798d[1]);var util=require(_0x798d[2]);var moment=require(_0x798d[3]);var BPromise=require(_0x798d[4]);var db=require(_0x798d[6])[_0x798d[5]];var utils=require(_0x798d[7]);var logger=require(_0x798d[9])(_0x798d[8]);var jayson=require(_0x798d[10]);var client=jayson[_0x798d[12]][_0x798d[11]]({port:9002});function respondWithRpcPromise(_0xa616xb,_0xa616xc,_0xa616xd){return  new BPromise(function(_0xa616xe,_0xa616xf){return client[_0x798d[25]](_0xa616xb,_0xa616xd)[_0x798d[24]](function(_0xa616x11){logger[_0x798d[17]](_0x798d[13],_0xa616xc,_0x798d[16]);logger[_0x798d[20]](_0x798d[18],_0xa616xc,_0x798d[16],JSON[_0x798d[19]](_0xa616x11));if(_0xa616x11[_0x798d[14]]){if(_0xa616x11[_0x798d[14]][_0x798d[21]]=== 500){logger[_0x798d[14]](_0x798d[13],_0xa616xc,_0xa616x11[_0x798d[14]][_0x798d[22]]);return _0xa616xf(_0xa616x11[_0x798d[14]][_0x798d[22]])};logger[_0x798d[14]](_0x798d[13],_0xa616xc,_0xa616x11[_0x798d[14]][_0x798d[22]]);return _0xa616xe(_0xa616x11[_0x798d[14]][_0x798d[22]])}else {logger[_0x798d[17]](_0x798d[13],_0xa616xc,_0x798d[16]);_0xa616xe(_0xa616x11[_0x798d[23]][_0x798d[22]])}})[_0x798d[15]](function(_0xa616x10){logger[_0x798d[14]](_0x798d[13],_0xa616xc,_0xa616x10);_0xa616xf(_0xa616x10)})})}exports[_0x798d[26]]= function(_0xa616xd){var _0xa616x12=this;return  new Promise(function(_0xa616xe,_0xa616xf){return db[_0x798d[37]][_0x798d[36]]({raw:_0xa616xd[_0x798d[27]]?(_0xa616xd[_0x798d[27]][_0x798d[28]]=== undefined)?true:false:true,where:_0xa616xd[_0x798d[27]]?_0xa616xd[_0x798d[27]][_0x798d[29]]|| null:null,attributes:_0xa616xd[_0x798d[27]]?_0xa616xd[_0x798d[27]][_0x798d[30]]|| null:null,limit:_0xa616xd[_0x798d[27]]?_0xa616xd[_0x798d[27]][_0x798d[31]]|| null:null,include:_0xa616xd[_0x798d[27]]?(_0xa616xd[_0x798d[27]][_0x798d[32]]?_[_0x798d[35]](_0xa616xd[_0x798d[27]][_0x798d[32]],function(_0xa616x13){return {model:db[_0xa616x13[_0x798d[33]]],as:_0xa616x13[_0x798d[34]],attributes:_0xa616x13[_0x798d[30]],include:_0xa616x13[_0x798d[32]]?_[_0x798d[35]](_0xa616x13[_0x798d[32]],function(_0xa616x14){return {model:db[_0xa616x14[_0x798d[33]]],as:_0xa616x14[_0x798d[34]],attributes:_0xa616x14[_0x798d[30]],include:_0xa616x14[_0x798d[32]]?_[_0x798d[35]](_0xa616x14[_0x798d[32]],function(_0xa616x15){return {model:db[_0xa616x15[_0x798d[33]]],as:_0xa616x15[_0x798d[34]],attributes:_0xa616x15[_0x798d[30]]}}):[]}}):[]}}):[]):[]})[_0x798d[24]](function(_0xa616x11){logger[_0x798d[17]](_0x798d[26],_0xa616xd);logger[_0x798d[20]](_0x798d[26],_0xa616xd,JSON[_0x798d[19]](_0xa616x11));_0xa616xe(_0xa616x11)})[_0x798d[15]](function(_0xa616x10){logger[_0x798d[14]](_0x798d[26],_0xa616x10[_0x798d[22]],_0xa616xd);_0xa616xf(_0xa616x12[_0x798d[14]](500,_0xa616x10[_0x798d[22]]))})})};exports[_0x798d[38]]= function(_0xa616xd){var _0xa616x12=this;return  new Promise(function(_0xa616xe,_0xa616xf){return db[_0x798d[37]][_0x798d[40]](_0xa616xd[_0x798d[39]],{raw:_0xa616xd[_0x798d[27]]?(_0xa616xd[_0x798d[27]][_0x798d[28]]=== undefined)?true:false:true,individualHooks:true,where:_0xa616xd[_0x798d[27]]?_0xa616xd[_0x798d[27]][_0x798d[29]]|| null:null,attributes:_0xa616xd[_0x798d[27]]?_0xa616xd[_0x798d[27]][_0x798d[30]]|| null:null,limit:_0xa616xd[_0x798d[27]]?_0xa616xd[_0x798d[27]][_0x798d[31]]|| null:null})[_0x798d[24]](function(_0xa616x11){logger[_0x798d[17]](_0x798d[38],_0xa616xd);logger[_0x798d[20]](_0x798d[38],_0xa616xd,JSON[_0x798d[19]](_0xa616x11));_0xa616xe(_0xa616x11)})[_0x798d[15]](function(_0xa616x10){logger[_0x798d[14]](_0x798d[38],_0xa616x10[_0x798d[22]],_0xa616xd);_0xa616xf(_0xa616x12[_0x798d[14]](500,_0xa616x10[_0x798d[22]]))})})};exports[_0x798d[41]]= function(_0xa616xd){var _0xa616x12=this;return  new Promise(function(_0xa616xe,_0xa616xf){return db[_0x798d[37]][_0x798d[42]]({where:_0xa616xd[_0x798d[27]]?_0xa616xd[_0x798d[27]][_0x798d[29]]|| null:null})[_0x798d[24]](function(_0xa616x11){logger[_0x798d[17]](_0x798d[41],_0xa616xd);logger[_0x798d[20]](_0x798d[41],_0xa616xd,JSON[_0x798d[19]](_0xa616x11));_0xa616xe(_0xa616x11)})[_0x798d[15]](function(_0xa616x10){logger[_0x798d[14]](_0x798d[41],_0xa616x10[_0x798d[22]],_0xa616xd);_0xa616xf(_0xa616x12[_0x798d[14]](500,_0xa616x10[_0x798d[22]]))})})}
\ No newline at end of file
index 9bf7579..d506710 100644 (file)
@@ -1 +1 @@
-var _0x1484=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1484[0];var multer=require(_0x1484[1]);var util=require(_0x1484[2]);var path=require(_0x1484[3]);var express=require(_0x1484[4]);var router=express.Router();var auth=require(_0x1484[5]);var config=require(_0x1484[6]);var controller=require(_0x1484[7]);router[_0x1484[11]](_0x1484[8],auth[_0x1484[9]](),controller[_0x1484[10]]);router[_0x1484[11]](_0x1484[12],auth[_0x1484[9]](),controller[_0x1484[13]]);router[_0x1484[11]](_0x1484[14],auth[_0x1484[9]](),controller[_0x1484[15]]);router[_0x1484[17]](_0x1484[14],auth[_0x1484[9]](),controller[_0x1484[16]]);router[_0x1484[19]](_0x1484[14],auth[_0x1484[9]](),controller[_0x1484[18]]);module[_0x1484[20]]= router
\ No newline at end of file
+var _0x2611=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2611[0];var multer=require(_0x2611[1]);var util=require(_0x2611[2]);var path=require(_0x2611[3]);var express=require(_0x2611[4]);var router=express.Router();var auth=require(_0x2611[5]);var config=require(_0x2611[6]);var controller=require(_0x2611[7]);router[_0x2611[11]](_0x2611[8],auth[_0x2611[9]](),controller[_0x2611[10]]);router[_0x2611[11]](_0x2611[12],auth[_0x2611[9]](),controller[_0x2611[13]]);router[_0x2611[11]](_0x2611[14],auth[_0x2611[9]](),controller[_0x2611[15]]);router[_0x2611[17]](_0x2611[14],auth[_0x2611[9]](),controller[_0x2611[16]]);router[_0x2611[19]](_0x2611[14],auth[_0x2611[9]](),controller[_0x2611[18]]);module[_0x2611[20]]= router
\ No newline at end of file
index d14bb3b..bf4915d 100644 (file)
@@ -1 +1 @@
-var _0xe356=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45","\x49\x4E\x54\x45\x47\x45\x52","\x65\x6E\x64\x74\x69\x6D\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x66\x6F\x6C\x6C\x6F\x77\x75\x70\x74\x69\x6D\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x61\x74","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xe356[0];var Sequelize=require(_0xe356[1]);var moment=require(_0xe356[2]);module[_0xe356[3]]= {state:{type:Sequelize.INTEGER(2)},statedesc:{type:Sequelize[_0xe356[4]]},scheduledat:{type:Sequelize[_0xe356[5]]},countbusyretry:{type:Sequelize[_0xe356[6]],defaultValue:0},countcongestionretry:{type:Sequelize[_0xe356[6]],defaultValue:0},countnoanswerretry:{type:Sequelize[_0xe356[6]],defaultValue:0},countglobal:{type:Sequelize[_0xe356[6]],defaultValue:0},uniqueid:{type:Sequelize[_0xe356[4]]},calleridnum:{type:Sequelize[_0xe356[4]]},calleridname:{type:Sequelize[_0xe356[4]]},starttime:{type:Sequelize[_0xe356[5]]},responsetime:{type:Sequelize[_0xe356[5]]},answertime:{type:Sequelize[_0xe356[5]]},droptime:{type:Sequelize[_0xe356[5]]},endtime:{type:Sequelize[_0xe356[5]]},ringtime:{type:Sequelize[_0xe356[6]],defaultValue:0},holdtime:{type:Sequelize[_0xe356[6]],defaultValue:0},talktime:{type:Sequelize[_0xe356[6]],defaultValue:0},followuptime:{type:Sequelize[_0xe356[6]],defaultValue:0},dropreason:{type:Sequelize[_0xe356[4]]},campaign:{type:Sequelize[_0xe356[4]]},campaigntype:{type:Sequelize[_0xe356[4]]},membername:{type:Sequelize[_0xe356[4]]},reason:{type:Sequelize[_0xe356[4]]},disposition:{type:Sequelize[_0xe356[4]]},dispositionat:{type:Sequelize[_0xe356[5]],set:function(_0x924ex3){var _0x924ex4=this[_0xe356[8]](_0xe356[7]);if(_0x924ex4&& _0x924ex3){this[_0xe356[12]](_0xe356[9],moment(_0x924ex3)[_0xe356[11]](moment(_0x924ex4),_0xe356[10]))};return this[_0xe356[12]](_0xe356[13],_0x924ex3)}},amd:{type:Sequelize[_0xe356[14]],defaultValue:false},fax:{type:Sequelize[_0xe356[14]],defaultValue:false},blacklist:{type:Sequelize[_0xe356[14]],defaultValue:false},rescheduled:{type:Sequelize[_0xe356[14]],defaultValue:false},rescheduledat:{type:Sequelize[_0xe356[5]]},callback:{type:Sequelize[_0xe356[14]],defaultValue:false},callbackuniqueid:{type:Sequelize[_0xe356[4]],defaultValue:null},callbackat:{type:Sequelize[_0xe356[5]]},deleted:{type:Sequelize[_0xe356[4]],defaultValue:null},deletedat:{type:Sequelize[_0xe356[5]]}}
\ No newline at end of file
+var _0x1609=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45","\x49\x4E\x54\x45\x47\x45\x52","\x65\x6E\x64\x74\x69\x6D\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x66\x6F\x6C\x6C\x6F\x77\x75\x70\x74\x69\x6D\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x61\x74","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x1609[0];var Sequelize=require(_0x1609[1]);var moment=require(_0x1609[2]);module[_0x1609[3]]= {state:{type:Sequelize.INTEGER(2)},statedesc:{type:Sequelize[_0x1609[4]]},scheduledat:{type:Sequelize[_0x1609[5]]},countbusyretry:{type:Sequelize[_0x1609[6]],defaultValue:0},countcongestionretry:{type:Sequelize[_0x1609[6]],defaultValue:0},countnoanswerretry:{type:Sequelize[_0x1609[6]],defaultValue:0},countglobal:{type:Sequelize[_0x1609[6]],defaultValue:0},uniqueid:{type:Sequelize[_0x1609[4]]},calleridnum:{type:Sequelize[_0x1609[4]]},calleridname:{type:Sequelize[_0x1609[4]]},starttime:{type:Sequelize[_0x1609[5]]},responsetime:{type:Sequelize[_0x1609[5]]},answertime:{type:Sequelize[_0x1609[5]]},droptime:{type:Sequelize[_0x1609[5]]},endtime:{type:Sequelize[_0x1609[5]]},ringtime:{type:Sequelize[_0x1609[6]],defaultValue:0},holdtime:{type:Sequelize[_0x1609[6]],defaultValue:0},talktime:{type:Sequelize[_0x1609[6]],defaultValue:0},followuptime:{type:Sequelize[_0x1609[6]],defaultValue:0},dropreason:{type:Sequelize[_0x1609[4]]},campaign:{type:Sequelize[_0x1609[4]]},campaigntype:{type:Sequelize[_0x1609[4]]},membername:{type:Sequelize[_0x1609[4]]},reason:{type:Sequelize[_0x1609[4]]},disposition:{type:Sequelize[_0x1609[4]]},dispositionat:{type:Sequelize[_0x1609[5]],set:function(_0xd992x3){var _0xd992x4=this[_0x1609[8]](_0x1609[7]);if(_0xd992x4&& _0xd992x3){this[_0x1609[12]](_0x1609[9],moment(_0xd992x3)[_0x1609[11]](moment(_0xd992x4),_0x1609[10]))};return this[_0x1609[12]](_0x1609[13],_0xd992x3)}},amd:{type:Sequelize[_0x1609[14]],defaultValue:false},fax:{type:Sequelize[_0x1609[14]],defaultValue:false},blacklist:{type:Sequelize[_0x1609[14]],defaultValue:false},rescheduled:{type:Sequelize[_0x1609[14]],defaultValue:false},rescheduledat:{type:Sequelize[_0x1609[5]]},callback:{type:Sequelize[_0x1609[14]],defaultValue:false},callbackuniqueid:{type:Sequelize[_0x1609[4]],defaultValue:null},callbackat:{type:Sequelize[_0x1609[5]]},deleted:{type:Sequelize[_0x1609[4]],defaultValue:null},deletedat:{type:Sequelize[_0x1609[5]]}}
\ No newline at end of file
index c17ea7b..e60837b 100644 (file)
@@ -1 +1 @@
-var _0x29fa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x64\x65\x73\x63\x72\x69\x62\x65","\x75\x6E\x69\x71\x75\x65\x69\x64","\x62\x6F\x64\x79"];_0x29fa[0];var jsonpatch=require(_0x29fa[1]);var rp=require(_0x29fa[2]);var moment=require(_0x29fa[3]);var BPromise=require(_0x29fa[4]);var util=require(_0x29fa[5]);var path=require(_0x29fa[6]);var sox=require(_0x29fa[7]);var ejs=require(_0x29fa[8]);var fs=require(_0x29fa[9]);var _=require(_0x29fa[10]);var squel=require(_0x29fa[11]);var crypto=require(_0x29fa[12]);var jsforce=require(_0x29fa[13]);var toCsv=require(_0x29fa[14]);var qs=require(_0x29fa[15]);var logger=require(_0x29fa[17])(_0x29fa[16]);var utils=require(_0x29fa[18]);var config=require(_0x29fa[19]);var db=require(_0x29fa[21])[_0x29fa[20]];function respondWithStatusCode(_0x5f1dx15,_0x5f1dx16,_0x5f1dx17){_0x5f1dx16= _0x5f1dx16|| 204;return function(_0x5f1dx18){if(_0x5f1dx18){logger[_0x29fa[24]](_0x29fa[22],_0x5f1dx17,_0x5f1dx16,_0x29fa[23]);logger[_0x29fa[26]](_0x29fa[25],_0x5f1dx17,_0x5f1dx16,_0x29fa[23]);return _0x5f1dx15[_0x29fa[27]](_0x5f1dx16)};return _0x5f1dx15[_0x29fa[29]](304)[_0x29fa[28]]()}}function respondWithResult(_0x5f1dx15,_0x5f1dx16,_0x5f1dx17){_0x5f1dx16= _0x5f1dx16|| 200;return function(_0x5f1dx18){if(_0x5f1dx18){logger[_0x29fa[24]](_0x29fa[22],_0x5f1dx17,_0x5f1dx16,_0x29fa[30]);logger[_0x29fa[26]](_0x29fa[25],_0x5f1dx17,_0x5f1dx16,_0x29fa[30],JSON[_0x29fa[31]](_0x5f1dx18));return _0x5f1dx15[_0x29fa[29]](_0x5f1dx16)[_0x29fa[32]](_0x5f1dx18)};return _0x5f1dx15[_0x29fa[29]](304)[_0x29fa[28]]()}}function respondWithFilteredResult(_0x5f1dx15,_0x5f1dx1b,_0x5f1dx17){return function(_0x5f1dx18){if(_0x5f1dx18){var _0x5f1dx1c=_0x5f1dx18[_0x29fa[33]],_0x5f1dx1d=_0x5f1dx1b[_0x29fa[34]],_0x5f1dx1e=_0x5f1dx1b[_0x29fa[34]]+ _0x5f1dx1b[_0x29fa[35]],_0x5f1dx16;if(_0x5f1dx1e>= _0x5f1dx1c){_0x5f1dx1e= _0x5f1dx1c;_0x5f1dx16= 200}else {_0x5f1dx16= 206};_0x5f1dx15[_0x29fa[29]](_0x5f1dx16);logger[_0x29fa[24]](_0x29fa[22],_0x5f1dx17,_0x5f1dx16,_0x29fa[36]);logger[_0x29fa[26]](_0x29fa[25],_0x5f1dx17,_0x5f1dx16,_0x29fa[30],JSON[_0x29fa[31]](_0x5f1dx18));return _0x5f1dx15[_0x29fa[40]](_0x29fa[37],_0x5f1dx1d+ _0x29fa[38]+ _0x5f1dx1e+ _0x29fa[39]+ _0x5f1dx1c)[_0x29fa[32]](_0x5f1dx18)};return null}}function patchUpdates(_0x5f1dx20){return function(_0x5f1dx18){try{jsonpatch[_0x29fa[41]](_0x5f1dx18,_0x5f1dx20,true)}catch(err){return BPromise[_0x29fa[42]](err)};return _0x5f1dx18[_0x29fa[43]]()}}function saveUpdates(_0x5f1dx22,_0x5f1dx16,_0x5f1dx17){return function(_0x5f1dx18){if(_0x5f1dx18){return _0x5f1dx18[_0x29fa[46]](_0x5f1dx22)[_0x29fa[45]](function(_0x5f1dx23){logger[_0x29fa[24]](_0x29fa[22],_0x5f1dx17,_0x5f1dx16,_0x29fa[44]);logger[_0x29fa[26]](_0x29fa[25],_0x5f1dx17,_0x5f1dx16,_0x29fa[44],JSON[_0x29fa[31]](_0x5f1dx18));return _0x5f1dx23})};return null}}function removeEntity(_0x5f1dx15,_0x5f1dx16,_0x5f1dx17){return function(_0x5f1dx18){if(_0x5f1dx18){return _0x5f1dx18[_0x29fa[48]]()[_0x29fa[45]](function(){logger[_0x29fa[24]](_0x29fa[22],_0x5f1dx17,_0x5f1dx16,_0x29fa[47]);logger[_0x29fa[26]](_0x29fa[25],_0x5f1dx17,_0x5f1dx16,_0x29fa[47],JSON[_0x29fa[31]](_0x5f1dx18));_0x5f1dx15[_0x29fa[29]](204)[_0x29fa[28]]()})}}}function handleEntityNotFound(_0x5f1dx15,_0x5f1dx16,_0x5f1dx17){return function(_0x5f1dx18){if(!_0x5f1dx18){logger[_0x29fa[50]](_0x29fa[22],_0x5f1dx17,404,_0x29fa[49]);_0x5f1dx15[_0x29fa[29]](404)[_0x29fa[28]]();return null};return _0x5f1dx18}}function handleError(_0x5f1dx15,_0x5f1dx16,_0x5f1dx17){_0x5f1dx16= _0x5f1dx16|| 500;return function(_0x5f1dx27){logger[_0x29fa[50]](_0x29fa[22],_0x5f1dx17,_0x5f1dx16,JSON[_0x29fa[31]](_0x5f1dx27));delete _0x5f1dx27[_0x29fa[51]];_0x5f1dx15[_0x29fa[29]](_0x5f1dx16)[_0x29fa[52]](_0x5f1dx27)}}exports[_0x29fa[53]]= function(_0x5f1dx28,_0x5f1dx15){var _0x5f1dx1b={},_0x5f1dx29={};_0x5f1dx29[_0x29fa[54]]= _[_0x29fa[57]](db[_0x29fa[56]][_0x29fa[55]]);_0x5f1dx29[_0x29fa[58]]= _[_0x29fa[57]](_0x5f1dx28[_0x29fa[58]]);_0x5f1dx29[_0x29fa[59]]= _[_0x29fa[60]](_0x5f1dx29[_0x29fa[54]],_0x5f1dx29[_0x29fa[58]]);_0x5f1dx1b[_0x29fa[61]]= _[_0x29fa[60]](_0x5f1dx29[_0x29fa[54]],qs[_0x29fa[62]](_0x5f1dx28[_0x29fa[58]][_0x29fa[62]]));_0x5f1dx1b[_0x29fa[61]]= (_0x5f1dx1b[_0x29fa[61]][_0x29fa[63]])?_0x5f1dx1b[_0x29fa[61]]:_0x5f1dx29[_0x29fa[54]];if(!_0x5f1dx28[_0x29fa[58]][_0x29fa[65]](_0x29fa[64])){_0x5f1dx1b[_0x29fa[35]]= qs[_0x29fa[35]](_0x5f1dx28[_0x29fa[58]][_0x29fa[35]]);_0x5f1dx1b[_0x29fa[34]]= qs[_0x29fa[34]](_0x5f1dx28[_0x29fa[58]][_0x29fa[34]])};_0x5f1dx1b[_0x29fa[66]]= qs[_0x29fa[67]](_0x5f1dx28[_0x29fa[58]][_0x29fa[67]]);_0x5f1dx1b[_0x29fa[68]]= qs[_0x29fa[59]](_[_0x29fa[69]](_0x5f1dx28[_0x29fa[58]],_0x5f1dx29[_0x29fa[59]]));if(_0x5f1dx28[_0x29fa[58]][_0x29fa[70]]){_0x5f1dx1b[_0x29fa[68]]= _[_0x29fa[73]](_0x5f1dx1b[_0x29fa[68]],{$or:_[_0x29fa[72]](_0x5f1dx1b[_0x29fa[61]],function(_0x5f1dx2a){var _0x5f1dx2b={};_0x5f1dx2b[_0x5f1dx2a]= {$like:_0x29fa[71]+ _0x5f1dx28[_0x29fa[58]][_0x29fa[70]]+ _0x29fa[71]};return _0x5f1dx2b})})};_0x5f1dx1b= _[_0x29fa[73]]({},_0x5f1dx1b,_0x5f1dx28[_0x29fa[74]]);return db[_0x29fa[56]][_0x29fa[76]](_0x5f1dx1b)[_0x29fa[45]](respondWithFilteredResult(_0x5f1dx15,_0x5f1dx1b,_0x29fa[53]))[_0x29fa[75]](handleError(_0x5f1dx15,null,_0x29fa[53]))};exports[_0x29fa[77]]= function(_0x5f1dx28,_0x5f1dx15){var _0x5f1dx1b={raw:true,where:{id:_0x5f1dx28[_0x29fa[79]][_0x29fa[78]]}},_0x5f1dx29={};_0x5f1dx29[_0x29fa[54]]= _[_0x29fa[57]](db[_0x29fa[56]][_0x29fa[55]]);_0x5f1dx29[_0x29fa[58]]= _[_0x29fa[57]](_0x5f1dx28[_0x29fa[58]]);_0x5f1dx29[_0x29fa[59]]= _[_0x29fa[60]](_0x5f1dx29[_0x29fa[54]],_0x5f1dx29[_0x29fa[58]]);_0x5f1dx1b[_0x29fa[61]]= _[_0x29fa[60]](_0x5f1dx29[_0x29fa[54]],qs[_0x29fa[62]](_0x5f1dx28[_0x29fa[58]][_0x29fa[62]]));_0x5f1dx1b[_0x29fa[61]]= (_0x5f1dx1b[_0x29fa[61]][_0x29fa[63]])?_0x5f1dx1b[_0x29fa[61]]:_0x5f1dx29[_0x29fa[54]];_0x5f1dx1b= _[_0x29fa[73]]({},_0x5f1dx1b,_0x5f1dx28[_0x29fa[74]]);return db[_0x29fa[56]][_0x29fa[80]](_0x5f1dx1b)[_0x29fa[45]](handleEntityNotFound(_0x5f1dx15,null,_0x29fa[77]))[_0x29fa[45]](respondWithResult(_0x5f1dx15,null,_0x29fa[77]))[_0x29fa[75]](handleError(_0x5f1dx15,null,_0x29fa[77]))};exports[_0x29fa[81]]= function(_0x5f1dx28,_0x5f1dx15){return db[_0x29fa[56]][_0x29fa[81]]()[_0x29fa[45]](respondWithResult(_0x5f1dx15,null,_0x29fa[81]))[_0x29fa[75]](handleError(_0x5f1dx15,null,_0x29fa[81]))};exports[_0x29fa[46]]= function(_0x5f1dx28,_0x5f1dx15){if(_0x5f1dx28[_0x29fa[83]][_0x29fa[82]]){delete _0x5f1dx28[_0x29fa[83]][_0x29fa[82]]};return db[_0x29fa[56]][_0x29fa[80]]({where:{uniqueid:_0x5f1dx28[_0x29fa[79]][_0x29fa[78]]}})[_0x29fa[45]](handleEntityNotFound(_0x5f1dx15,null,_0x29fa[46]))[_0x29fa[45]](saveUpdates(_0x5f1dx28[_0x29fa[83]],null,_0x29fa[46]))[_0x29fa[45]](respondWithResult(_0x5f1dx15,null,_0x29fa[46]))[_0x29fa[75]](handleError(_0x5f1dx15,null,_0x29fa[46]))}
\ No newline at end of file
+var _0x3e18=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x64\x65\x73\x63\x72\x69\x62\x65","\x75\x6E\x69\x71\x75\x65\x69\x64","\x62\x6F\x64\x79"];_0x3e18[0];var jsonpatch=require(_0x3e18[1]);var rp=require(_0x3e18[2]);var moment=require(_0x3e18[3]);var BPromise=require(_0x3e18[4]);var util=require(_0x3e18[5]);var path=require(_0x3e18[6]);var sox=require(_0x3e18[7]);var ejs=require(_0x3e18[8]);var fs=require(_0x3e18[9]);var _=require(_0x3e18[10]);var squel=require(_0x3e18[11]);var crypto=require(_0x3e18[12]);var jsforce=require(_0x3e18[13]);var toCsv=require(_0x3e18[14]);var qs=require(_0x3e18[15]);var logger=require(_0x3e18[17])(_0x3e18[16]);var utils=require(_0x3e18[18]);var config=require(_0x3e18[19]);var db=require(_0x3e18[21])[_0x3e18[20]];function respondWithStatusCode(_0xf6e5x15,_0xf6e5x16,_0xf6e5x17){_0xf6e5x16= _0xf6e5x16|| 204;return function(_0xf6e5x18){if(_0xf6e5x18){logger[_0x3e18[24]](_0x3e18[22],_0xf6e5x17,_0xf6e5x16,_0x3e18[23]);logger[_0x3e18[26]](_0x3e18[25],_0xf6e5x17,_0xf6e5x16,_0x3e18[23]);return _0xf6e5x15[_0x3e18[27]](_0xf6e5x16)};return _0xf6e5x15[_0x3e18[29]](304)[_0x3e18[28]]()}}function respondWithResult(_0xf6e5x15,_0xf6e5x16,_0xf6e5x17){_0xf6e5x16= _0xf6e5x16|| 200;return function(_0xf6e5x18){if(_0xf6e5x18){logger[_0x3e18[24]](_0x3e18[22],_0xf6e5x17,_0xf6e5x16,_0x3e18[30]);logger[_0x3e18[26]](_0x3e18[25],_0xf6e5x17,_0xf6e5x16,_0x3e18[30],JSON[_0x3e18[31]](_0xf6e5x18));return _0xf6e5x15[_0x3e18[29]](_0xf6e5x16)[_0x3e18[32]](_0xf6e5x18)};return _0xf6e5x15[_0x3e18[29]](304)[_0x3e18[28]]()}}function respondWithFilteredResult(_0xf6e5x15,_0xf6e5x1b,_0xf6e5x17){return function(_0xf6e5x18){if(_0xf6e5x18){var _0xf6e5x1c=_0xf6e5x18[_0x3e18[33]],_0xf6e5x1d=_0xf6e5x1b[_0x3e18[34]],_0xf6e5x1e=_0xf6e5x1b[_0x3e18[34]]+ _0xf6e5x1b[_0x3e18[35]],_0xf6e5x16;if(_0xf6e5x1e>= _0xf6e5x1c){_0xf6e5x1e= _0xf6e5x1c;_0xf6e5x16= 200}else {_0xf6e5x16= 206};_0xf6e5x15[_0x3e18[29]](_0xf6e5x16);logger[_0x3e18[24]](_0x3e18[22],_0xf6e5x17,_0xf6e5x16,_0x3e18[36]);logger[_0x3e18[26]](_0x3e18[25],_0xf6e5x17,_0xf6e5x16,_0x3e18[30],JSON[_0x3e18[31]](_0xf6e5x18));return _0xf6e5x15[_0x3e18[40]](_0x3e18[37],_0xf6e5x1d+ _0x3e18[38]+ _0xf6e5x1e+ _0x3e18[39]+ _0xf6e5x1c)[_0x3e18[32]](_0xf6e5x18)};return null}}function patchUpdates(_0xf6e5x20){return function(_0xf6e5x18){try{jsonpatch[_0x3e18[41]](_0xf6e5x18,_0xf6e5x20,true)}catch(err){return BPromise[_0x3e18[42]](err)};return _0xf6e5x18[_0x3e18[43]]()}}function saveUpdates(_0xf6e5x22,_0xf6e5x16,_0xf6e5x17){return function(_0xf6e5x18){if(_0xf6e5x18){return _0xf6e5x18[_0x3e18[46]](_0xf6e5x22)[_0x3e18[45]](function(_0xf6e5x23){logger[_0x3e18[24]](_0x3e18[22],_0xf6e5x17,_0xf6e5x16,_0x3e18[44]);logger[_0x3e18[26]](_0x3e18[25],_0xf6e5x17,_0xf6e5x16,_0x3e18[44],JSON[_0x3e18[31]](_0xf6e5x18));return _0xf6e5x23})};return null}}function removeEntity(_0xf6e5x15,_0xf6e5x16,_0xf6e5x17){return function(_0xf6e5x18){if(_0xf6e5x18){return _0xf6e5x18[_0x3e18[48]]()[_0x3e18[45]](function(){logger[_0x3e18[24]](_0x3e18[22],_0xf6e5x17,_0xf6e5x16,_0x3e18[47]);logger[_0x3e18[26]](_0x3e18[25],_0xf6e5x17,_0xf6e5x16,_0x3e18[47],JSON[_0x3e18[31]](_0xf6e5x18));_0xf6e5x15[_0x3e18[29]](204)[_0x3e18[28]]()})}}}function handleEntityNotFound(_0xf6e5x15,_0xf6e5x16,_0xf6e5x17){return function(_0xf6e5x18){if(!_0xf6e5x18){logger[_0x3e18[50]](_0x3e18[22],_0xf6e5x17,404,_0x3e18[49]);_0xf6e5x15[_0x3e18[29]](404)[_0x3e18[28]]();return null};return _0xf6e5x18}}function handleError(_0xf6e5x15,_0xf6e5x16,_0xf6e5x17){_0xf6e5x16= _0xf6e5x16|| 500;return function(_0xf6e5x27){logger[_0x3e18[50]](_0x3e18[22],_0xf6e5x17,_0xf6e5x16,JSON[_0x3e18[31]](_0xf6e5x27));delete _0xf6e5x27[_0x3e18[51]];_0xf6e5x15[_0x3e18[29]](_0xf6e5x16)[_0x3e18[52]](_0xf6e5x27)}}exports[_0x3e18[53]]= function(_0xf6e5x28,_0xf6e5x15){var _0xf6e5x1b={},_0xf6e5x29={};_0xf6e5x29[_0x3e18[54]]= _[_0x3e18[57]](db[_0x3e18[56]][_0x3e18[55]]);_0xf6e5x29[_0x3e18[58]]= _[_0x3e18[57]](_0xf6e5x28[_0x3e18[58]]);_0xf6e5x29[_0x3e18[59]]= _[_0x3e18[60]](_0xf6e5x29[_0x3e18[54]],_0xf6e5x29[_0x3e18[58]]);_0xf6e5x1b[_0x3e18[61]]= _[_0x3e18[60]](_0xf6e5x29[_0x3e18[54]],qs[_0x3e18[62]](_0xf6e5x28[_0x3e18[58]][_0x3e18[62]]));_0xf6e5x1b[_0x3e18[61]]= (_0xf6e5x1b[_0x3e18[61]][_0x3e18[63]])?_0xf6e5x1b[_0x3e18[61]]:_0xf6e5x29[_0x3e18[54]];if(!_0xf6e5x28[_0x3e18[58]][_0x3e18[65]](_0x3e18[64])){_0xf6e5x1b[_0x3e18[35]]= qs[_0x3e18[35]](_0xf6e5x28[_0x3e18[58]][_0x3e18[35]]);_0xf6e5x1b[_0x3e18[34]]= qs[_0x3e18[34]](_0xf6e5x28[_0x3e18[58]][_0x3e18[34]])};_0xf6e5x1b[_0x3e18[66]]= qs[_0x3e18[67]](_0xf6e5x28[_0x3e18[58]][_0x3e18[67]]);_0xf6e5x1b[_0x3e18[68]]= qs[_0x3e18[59]](_[_0x3e18[69]](_0xf6e5x28[_0x3e18[58]],_0xf6e5x29[_0x3e18[59]]));if(_0xf6e5x28[_0x3e18[58]][_0x3e18[70]]){_0xf6e5x1b[_0x3e18[68]]= _[_0x3e18[73]](_0xf6e5x1b[_0x3e18[68]],{$or:_[_0x3e18[72]](_0xf6e5x1b[_0x3e18[61]],function(_0xf6e5x2a){var _0xf6e5x2b={};_0xf6e5x2b[_0xf6e5x2a]= {$like:_0x3e18[71]+ _0xf6e5x28[_0x3e18[58]][_0x3e18[70]]+ _0x3e18[71]};return _0xf6e5x2b})})};_0xf6e5x1b= _[_0x3e18[73]]({},_0xf6e5x1b,_0xf6e5x28[_0x3e18[74]]);return db[_0x3e18[56]][_0x3e18[76]](_0xf6e5x1b)[_0x3e18[45]](respondWithFilteredResult(_0xf6e5x15,_0xf6e5x1b,_0x3e18[53]))[_0x3e18[75]](handleError(_0xf6e5x15,null,_0x3e18[53]))};exports[_0x3e18[77]]= function(_0xf6e5x28,_0xf6e5x15){var _0xf6e5x1b={raw:true,where:{id:_0xf6e5x28[_0x3e18[79]][_0x3e18[78]]}},_0xf6e5x29={};_0xf6e5x29[_0x3e18[54]]= _[_0x3e18[57]](db[_0x3e18[56]][_0x3e18[55]]);_0xf6e5x29[_0x3e18[58]]= _[_0x3e18[57]](_0xf6e5x28[_0x3e18[58]]);_0xf6e5x29[_0x3e18[59]]= _[_0x3e18[60]](_0xf6e5x29[_0x3e18[54]],_0xf6e5x29[_0x3e18[58]]);_0xf6e5x1b[_0x3e18[61]]= _[_0x3e18[60]](_0xf6e5x29[_0x3e18[54]],qs[_0x3e18[62]](_0xf6e5x28[_0x3e18[58]][_0x3e18[62]]));_0xf6e5x1b[_0x3e18[61]]= (_0xf6e5x1b[_0x3e18[61]][_0x3e18[63]])?_0xf6e5x1b[_0x3e18[61]]:_0xf6e5x29[_0x3e18[54]];_0xf6e5x1b= _[_0x3e18[73]]({},_0xf6e5x1b,_0xf6e5x28[_0x3e18[74]]);return db[_0x3e18[56]][_0x3e18[80]](_0xf6e5x1b)[_0x3e18[45]](handleEntityNotFound(_0xf6e5x15,null,_0x3e18[77]))[_0x3e18[45]](respondWithResult(_0xf6e5x15,null,_0x3e18[77]))[_0x3e18[75]](handleError(_0xf6e5x15,null,_0x3e18[77]))};exports[_0x3e18[81]]= function(_0xf6e5x28,_0xf6e5x15){return db[_0x3e18[56]][_0x3e18[81]]()[_0x3e18[45]](respondWithResult(_0xf6e5x15,null,_0x3e18[81]))[_0x3e18[75]](handleError(_0xf6e5x15,null,_0x3e18[81]))};exports[_0x3e18[46]]= function(_0xf6e5x28,_0xf6e5x15){if(_0xf6e5x28[_0x3e18[83]][_0x3e18[82]]){delete _0xf6e5x28[_0x3e18[83]][_0x3e18[82]]};return db[_0x3e18[56]][_0x3e18[80]]({where:{uniqueid:_0xf6e5x28[_0x3e18[79]][_0x3e18[78]]}})[_0x3e18[45]](handleEntityNotFound(_0xf6e5x15,null,_0x3e18[46]))[_0x3e18[45]](saveUpdates(_0xf6e5x28[_0x3e18[83]],null,_0x3e18[46]))[_0x3e18[45]](respondWithResult(_0xf6e5x15,null,_0x3e18[46]))[_0x3e18[75]](handleError(_0xf6e5x15,null,_0x3e18[46]))}
\ No newline at end of file
index 3ac9c2e..4971251 100644 (file)
@@ -1 +1 @@
-var _0x4070=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x64\x65\x66\x69\x6E\x65"];_0x4070[0];var _=require(_0x4070[1]);var util=require(_0x4070[2]);var logger=require(_0x4070[4])(_0x4070[3]);var attributes=require(_0x4070[5]);module[_0x4070[6]]= function(_0xed1bx5,_0xed1bx6){return _0xed1bx5[_0x4070[9]](_0x4070[7],attributes,{tableName:_0x4070[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x9073=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x64\x65\x66\x69\x6E\x65"];_0x9073[0];var _=require(_0x9073[1]);var util=require(_0x9073[2]);var logger=require(_0x9073[4])(_0x9073[3]);var attributes=require(_0x9073[5]);module[_0x9073[6]]= function(_0x21d6x5,_0x21d6x6){return _0x21d6x5[_0x9073[9]](_0x9073[7],attributes,{tableName:_0x9073[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index da12bb5..6ad1c89 100644 (file)
@@ -1 +1 @@
-var _0x8480=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C"];_0x8480[0];var _=require(_0x8480[1]);var util=require(_0x8480[2]);var moment=require(_0x8480[3]);var BPromise=require(_0x8480[4]);var db=require(_0x8480[6])[_0x8480[5]];var utils=require(_0x8480[7]);var logger=require(_0x8480[9])(_0x8480[8]);var jayson=require(_0x8480[10]);var client=jayson[_0x8480[12]][_0x8480[11]]({port:9002});function respondWithRpcPromise(_0x4178xb,_0x4178xc,_0x4178xd){return  new BPromise(function(_0x4178xe,_0x4178xf){return client[_0x8480[25]](_0x4178xb,_0x4178xd)[_0x8480[24]](function(_0x4178x11){logger[_0x8480[17]](_0x8480[13],_0x4178xc,_0x8480[16]);logger[_0x8480[20]](_0x8480[18],_0x4178xc,_0x8480[16],JSON[_0x8480[19]](_0x4178x11));if(_0x4178x11[_0x8480[14]]){if(_0x4178x11[_0x8480[14]][_0x8480[21]]=== 500){logger[_0x8480[14]](_0x8480[13],_0x4178xc,_0x4178x11[_0x8480[14]][_0x8480[22]]);return _0x4178xf(_0x4178x11[_0x8480[14]][_0x8480[22]])};logger[_0x8480[14]](_0x8480[13],_0x4178xc,_0x4178x11[_0x8480[14]][_0x8480[22]]);return _0x4178xe(_0x4178x11[_0x8480[14]][_0x8480[22]])}else {logger[_0x8480[17]](_0x8480[13],_0x4178xc,_0x8480[16]);_0x4178xe(_0x4178x11[_0x8480[23]][_0x8480[22]])}})[_0x8480[15]](function(_0x4178x10){logger[_0x8480[14]](_0x8480[13],_0x4178xc,_0x4178x10);_0x4178xf(_0x4178x10)})})}exports[_0x8480[26]]= function(_0x4178xd){var _0x4178x12=this;return  new Promise(function(_0x4178xe,_0x4178xf){return db[_0x8480[31]][_0x8480[30]](_0x4178xd[_0x8480[27]],{raw:_0x4178xd[_0x8480[28]]?(_0x4178xd[_0x8480[28]][_0x8480[29]]=== undefined)?true:false:true})[_0x8480[24]](function(_0x4178x11){logger[_0x8480[17]](_0x8480[26],_0x4178xd);logger[_0x8480[20]](_0x8480[26],_0x4178xd,JSON[_0x8480[19]](_0x4178x11));_0x4178xe(_0x4178x11)})[_0x8480[15]](function(_0x4178x10){logger[_0x8480[14]](_0x8480[26],_0x4178x10[_0x8480[22]],_0x4178xd);_0x4178xf(_0x4178x12[_0x8480[14]](500,_0x4178x10[_0x8480[22]]))})})}
\ No newline at end of file
+var _0xc1a8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C"];_0xc1a8[0];var _=require(_0xc1a8[1]);var util=require(_0xc1a8[2]);var moment=require(_0xc1a8[3]);var BPromise=require(_0xc1a8[4]);var db=require(_0xc1a8[6])[_0xc1a8[5]];var utils=require(_0xc1a8[7]);var logger=require(_0xc1a8[9])(_0xc1a8[8]);var jayson=require(_0xc1a8[10]);var client=jayson[_0xc1a8[12]][_0xc1a8[11]]({port:9002});function respondWithRpcPromise(_0xe079xb,_0xe079xc,_0xe079xd){return  new BPromise(function(_0xe079xe,_0xe079xf){return client[_0xc1a8[25]](_0xe079xb,_0xe079xd)[_0xc1a8[24]](function(_0xe079x11){logger[_0xc1a8[17]](_0xc1a8[13],_0xe079xc,_0xc1a8[16]);logger[_0xc1a8[20]](_0xc1a8[18],_0xe079xc,_0xc1a8[16],JSON[_0xc1a8[19]](_0xe079x11));if(_0xe079x11[_0xc1a8[14]]){if(_0xe079x11[_0xc1a8[14]][_0xc1a8[21]]=== 500){logger[_0xc1a8[14]](_0xc1a8[13],_0xe079xc,_0xe079x11[_0xc1a8[14]][_0xc1a8[22]]);return _0xe079xf(_0xe079x11[_0xc1a8[14]][_0xc1a8[22]])};logger[_0xc1a8[14]](_0xc1a8[13],_0xe079xc,_0xe079x11[_0xc1a8[14]][_0xc1a8[22]]);return _0xe079xe(_0xe079x11[_0xc1a8[14]][_0xc1a8[22]])}else {logger[_0xc1a8[17]](_0xc1a8[13],_0xe079xc,_0xc1a8[16]);_0xe079xe(_0xe079x11[_0xc1a8[23]][_0xc1a8[22]])}})[_0xc1a8[15]](function(_0xe079x10){logger[_0xc1a8[14]](_0xc1a8[13],_0xe079xc,_0xe079x10);_0xe079xf(_0xe079x10)})})}exports[_0xc1a8[26]]= function(_0xe079xd){var _0xe079x12=this;return  new Promise(function(_0xe079xe,_0xe079xf){return db[_0xc1a8[31]][_0xc1a8[30]](_0xe079xd[_0xc1a8[27]],{raw:_0xe079xd[_0xc1a8[28]]?(_0xe079xd[_0xc1a8[28]][_0xc1a8[29]]=== undefined)?true:false:true})[_0xc1a8[24]](function(_0xe079x11){logger[_0xc1a8[17]](_0xc1a8[26],_0xe079xd);logger[_0xc1a8[20]](_0xc1a8[26],_0xe079xd,JSON[_0xc1a8[19]](_0xe079x11));_0xe079xe(_0xe079x11)})[_0xc1a8[15]](function(_0xe079x10){logger[_0xc1a8[14]](_0xc1a8[26],_0xe079x10[_0xc1a8[22]],_0xe079xd);_0xe079xf(_0xe079x12[_0xc1a8[14]](500,_0xe079x10[_0xc1a8[22]]))})})}
\ No newline at end of file
index e86cc4e..82c5321 100644 (file)
@@ -1 +1 @@
-var _0xb027=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xb027[0];var multer=require(_0xb027[1]);var util=require(_0xb027[2]);var path=require(_0xb027[3]);var express=require(_0xb027[4]);var router=express.Router();var auth=require(_0xb027[5]);var config=require(_0xb027[6]);var controller=require(_0xb027[7]);router[_0xb027[11]](_0xb027[8],auth[_0xb027[9]](),controller[_0xb027[10]]);router[_0xb027[11]](_0xb027[12],auth[_0xb027[9]](),controller[_0xb027[13]]);router[_0xb027[11]](_0xb027[14],auth[_0xb027[9]](),controller[_0xb027[15]]);router[_0xb027[17]](_0xb027[14],auth[_0xb027[9]](),controller[_0xb027[16]]);module[_0xb027[18]]= router
\ No newline at end of file
+var _0x4e03=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x4e03[0];var multer=require(_0x4e03[1]);var util=require(_0x4e03[2]);var path=require(_0x4e03[3]);var express=require(_0x4e03[4]);var router=express.Router();var auth=require(_0x4e03[5]);var config=require(_0x4e03[6]);var controller=require(_0x4e03[7]);router[_0x4e03[11]](_0x4e03[8],auth[_0x4e03[9]](),controller[_0x4e03[10]]);router[_0x4e03[11]](_0x4e03[12],auth[_0x4e03[9]](),controller[_0x4e03[13]]);router[_0x4e03[11]](_0x4e03[14],auth[_0x4e03[9]](),controller[_0x4e03[15]]);router[_0x4e03[17]](_0x4e03[14],auth[_0x4e03[9]](),controller[_0x4e03[16]]);module[_0x4e03[18]]= router
\ No newline at end of file
index 83a82f8..1d467c9 100644 (file)
@@ -1 +1 @@
-var _0xb152=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xb152[0];var Sequelize=require(_0xb152[1]);module[_0xb152[2]]= {state:{type:Sequelize.INTEGER(2)},statedesc:{type:Sequelize[_0xb152[3]]},scheduledat:{type:Sequelize[_0xb152[4]]},countbusyretry:{type:Sequelize[_0xb152[5]],defaultValue:0},countcongestionretry:{type:Sequelize[_0xb152[5]],defaultValue:0},countnoanswerretry:{type:Sequelize[_0xb152[5]],defaultValue:0},countglobal:{type:Sequelize[_0xb152[5]],defaultValue:0},uniqueid:{type:Sequelize[_0xb152[3]]},calleridnum:{type:Sequelize[_0xb152[3]]},calleridname:{type:Sequelize[_0xb152[3]]},starttime:{type:Sequelize[_0xb152[4]]},responsetime:{type:Sequelize[_0xb152[4]]},answertime:{type:Sequelize[_0xb152[4]]},droptime:{type:Sequelize[_0xb152[4]]},endtime:{type:Sequelize[_0xb152[4]]},ringtime:{type:Sequelize[_0xb152[5]],defaultValue:0},holdtime:{type:Sequelize[_0xb152[5]],defaultValue:0},talktime:{type:Sequelize[_0xb152[5]],defaultValue:0},followuptime:{type:Sequelize[_0xb152[5]],defaultValue:0},dropreason:{type:Sequelize[_0xb152[3]]},campaign:{type:Sequelize[_0xb152[3]]},campaigntype:{type:Sequelize[_0xb152[3]]},membername:{type:Sequelize[_0xb152[3]]},reason:{type:Sequelize[_0xb152[3]]},amd:{type:Sequelize[_0xb152[6]],defaultValue:false},fax:{type:Sequelize[_0xb152[6]],defaultValue:false},callback:{type:Sequelize[_0xb152[6]],defaultValue:false},callbackuniqueid:{type:Sequelize[_0xb152[3]],defaultValue:null},callbackat:{type:Sequelize[_0xb152[4]]}}
\ No newline at end of file
+var _0x59b8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x59b8[0];var Sequelize=require(_0x59b8[1]);module[_0x59b8[2]]= {state:{type:Sequelize.INTEGER(2)},statedesc:{type:Sequelize[_0x59b8[3]]},scheduledat:{type:Sequelize[_0x59b8[4]]},countbusyretry:{type:Sequelize[_0x59b8[5]],defaultValue:0},countcongestionretry:{type:Sequelize[_0x59b8[5]],defaultValue:0},countnoanswerretry:{type:Sequelize[_0x59b8[5]],defaultValue:0},countglobal:{type:Sequelize[_0x59b8[5]],defaultValue:0},uniqueid:{type:Sequelize[_0x59b8[3]]},calleridnum:{type:Sequelize[_0x59b8[3]]},calleridname:{type:Sequelize[_0x59b8[3]]},starttime:{type:Sequelize[_0x59b8[4]]},responsetime:{type:Sequelize[_0x59b8[4]]},answertime:{type:Sequelize[_0x59b8[4]]},droptime:{type:Sequelize[_0x59b8[4]]},endtime:{type:Sequelize[_0x59b8[4]]},ringtime:{type:Sequelize[_0x59b8[5]],defaultValue:0},holdtime:{type:Sequelize[_0x59b8[5]],defaultValue:0},talktime:{type:Sequelize[_0x59b8[5]],defaultValue:0},followuptime:{type:Sequelize[_0x59b8[5]],defaultValue:0},dropreason:{type:Sequelize[_0x59b8[3]]},campaign:{type:Sequelize[_0x59b8[3]]},campaigntype:{type:Sequelize[_0x59b8[3]]},membername:{type:Sequelize[_0x59b8[3]]},reason:{type:Sequelize[_0x59b8[3]]},amd:{type:Sequelize[_0x59b8[6]],defaultValue:false},fax:{type:Sequelize[_0x59b8[6]],defaultValue:false},callback:{type:Sequelize[_0x59b8[6]],defaultValue:false},callbackuniqueid:{type:Sequelize[_0x59b8[3]],defaultValue:null},callbackat:{type:Sequelize[_0x59b8[4]]}}
\ No newline at end of file
index 9a1b3e7..6a06e88 100644 (file)
@@ -1 +1 @@
-var _0x6d09=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x64\x65\x73\x63\x72\x69\x62\x65","\x75\x6E\x69\x71\x75\x65\x69\x64","\x62\x6F\x64\x79"];_0x6d09[0];var jsonpatch=require(_0x6d09[1]);var rp=require(_0x6d09[2]);var moment=require(_0x6d09[3]);var BPromise=require(_0x6d09[4]);var util=require(_0x6d09[5]);var path=require(_0x6d09[6]);var sox=require(_0x6d09[7]);var ejs=require(_0x6d09[8]);var fs=require(_0x6d09[9]);var _=require(_0x6d09[10]);var squel=require(_0x6d09[11]);var crypto=require(_0x6d09[12]);var jsforce=require(_0x6d09[13]);var toCsv=require(_0x6d09[14]);var qs=require(_0x6d09[15]);var logger=require(_0x6d09[17])(_0x6d09[16]);var utils=require(_0x6d09[18]);var config=require(_0x6d09[19]);var db=require(_0x6d09[21])[_0x6d09[20]];function respondWithStatusCode(_0x460ax15,_0x460ax16,_0x460ax17){_0x460ax16= _0x460ax16|| 204;return function(_0x460ax18){if(_0x460ax18){logger[_0x6d09[24]](_0x6d09[22],_0x460ax17,_0x460ax16,_0x6d09[23]);logger[_0x6d09[26]](_0x6d09[25],_0x460ax17,_0x460ax16,_0x6d09[23]);return _0x460ax15[_0x6d09[27]](_0x460ax16)};return _0x460ax15[_0x6d09[29]](304)[_0x6d09[28]]()}}function respondWithResult(_0x460ax15,_0x460ax16,_0x460ax17){_0x460ax16= _0x460ax16|| 200;return function(_0x460ax18){if(_0x460ax18){logger[_0x6d09[24]](_0x6d09[22],_0x460ax17,_0x460ax16,_0x6d09[30]);logger[_0x6d09[26]](_0x6d09[25],_0x460ax17,_0x460ax16,_0x6d09[30],JSON[_0x6d09[31]](_0x460ax18));return _0x460ax15[_0x6d09[29]](_0x460ax16)[_0x6d09[32]](_0x460ax18)};return _0x460ax15[_0x6d09[29]](304)[_0x6d09[28]]()}}function respondWithFilteredResult(_0x460ax15,_0x460ax1b,_0x460ax17){return function(_0x460ax18){if(_0x460ax18){var _0x460ax1c=_0x460ax18[_0x6d09[33]],_0x460ax1d=_0x460ax1b[_0x6d09[34]],_0x460ax1e=_0x460ax1b[_0x6d09[34]]+ _0x460ax1b[_0x6d09[35]],_0x460ax16;if(_0x460ax1e>= _0x460ax1c){_0x460ax1e= _0x460ax1c;_0x460ax16= 200}else {_0x460ax16= 206};_0x460ax15[_0x6d09[29]](_0x460ax16);logger[_0x6d09[24]](_0x6d09[22],_0x460ax17,_0x460ax16,_0x6d09[36]);logger[_0x6d09[26]](_0x6d09[25],_0x460ax17,_0x460ax16,_0x6d09[30],JSON[_0x6d09[31]](_0x460ax18));return _0x460ax15[_0x6d09[40]](_0x6d09[37],_0x460ax1d+ _0x6d09[38]+ _0x460ax1e+ _0x6d09[39]+ _0x460ax1c)[_0x6d09[32]](_0x460ax18)};return null}}function patchUpdates(_0x460ax20){return function(_0x460ax18){try{jsonpatch[_0x6d09[41]](_0x460ax18,_0x460ax20,true)}catch(err){return BPromise[_0x6d09[42]](err)};return _0x460ax18[_0x6d09[43]]()}}function saveUpdates(_0x460ax22,_0x460ax16,_0x460ax17){return function(_0x460ax18){if(_0x460ax18){return _0x460ax18[_0x6d09[46]](_0x460ax22)[_0x6d09[45]](function(_0x460ax23){logger[_0x6d09[24]](_0x6d09[22],_0x460ax17,_0x460ax16,_0x6d09[44]);logger[_0x6d09[26]](_0x6d09[25],_0x460ax17,_0x460ax16,_0x6d09[44],JSON[_0x6d09[31]](_0x460ax18));return _0x460ax23})};return null}}function removeEntity(_0x460ax15,_0x460ax16,_0x460ax17){return function(_0x460ax18){if(_0x460ax18){return _0x460ax18[_0x6d09[48]]()[_0x6d09[45]](function(){logger[_0x6d09[24]](_0x6d09[22],_0x460ax17,_0x460ax16,_0x6d09[47]);logger[_0x6d09[26]](_0x6d09[25],_0x460ax17,_0x460ax16,_0x6d09[47],JSON[_0x6d09[31]](_0x460ax18));_0x460ax15[_0x6d09[29]](204)[_0x6d09[28]]()})}}}function handleEntityNotFound(_0x460ax15,_0x460ax16,_0x460ax17){return function(_0x460ax18){if(!_0x460ax18){logger[_0x6d09[50]](_0x6d09[22],_0x460ax17,404,_0x6d09[49]);_0x460ax15[_0x6d09[29]](404)[_0x6d09[28]]();return null};return _0x460ax18}}function handleError(_0x460ax15,_0x460ax16,_0x460ax17){_0x460ax16= _0x460ax16|| 500;return function(_0x460ax27){logger[_0x6d09[50]](_0x6d09[22],_0x460ax17,_0x460ax16,JSON[_0x6d09[31]](_0x460ax27));delete _0x460ax27[_0x6d09[51]];_0x460ax15[_0x6d09[29]](_0x460ax16)[_0x6d09[52]](_0x460ax27)}}exports[_0x6d09[53]]= function(_0x460ax28,_0x460ax15){var _0x460ax1b={},_0x460ax29={};_0x460ax29[_0x6d09[54]]= _[_0x6d09[57]](db[_0x6d09[56]][_0x6d09[55]]);_0x460ax29[_0x6d09[58]]= _[_0x6d09[57]](_0x460ax28[_0x6d09[58]]);_0x460ax29[_0x6d09[59]]= _[_0x6d09[60]](_0x460ax29[_0x6d09[54]],_0x460ax29[_0x6d09[58]]);_0x460ax1b[_0x6d09[61]]= _[_0x6d09[60]](_0x460ax29[_0x6d09[54]],qs[_0x6d09[62]](_0x460ax28[_0x6d09[58]][_0x6d09[62]]));_0x460ax1b[_0x6d09[61]]= (_0x460ax1b[_0x6d09[61]][_0x6d09[63]])?_0x460ax1b[_0x6d09[61]]:_0x460ax29[_0x6d09[54]];if(!_0x460ax28[_0x6d09[58]][_0x6d09[65]](_0x6d09[64])){_0x460ax1b[_0x6d09[35]]= qs[_0x6d09[35]](_0x460ax28[_0x6d09[58]][_0x6d09[35]]);_0x460ax1b[_0x6d09[34]]= qs[_0x6d09[34]](_0x460ax28[_0x6d09[58]][_0x6d09[34]])};_0x460ax1b[_0x6d09[66]]= qs[_0x6d09[67]](_0x460ax28[_0x6d09[58]][_0x6d09[67]]);_0x460ax1b[_0x6d09[68]]= qs[_0x6d09[59]](_[_0x6d09[69]](_0x460ax28[_0x6d09[58]],_0x460ax29[_0x6d09[59]]));if(_0x460ax28[_0x6d09[58]][_0x6d09[70]]){_0x460ax1b[_0x6d09[68]]= _[_0x6d09[73]](_0x460ax1b[_0x6d09[68]],{$or:_[_0x6d09[72]](_0x460ax1b[_0x6d09[61]],function(_0x460ax2a){var _0x460ax2b={};_0x460ax2b[_0x460ax2a]= {$like:_0x6d09[71]+ _0x460ax28[_0x6d09[58]][_0x6d09[70]]+ _0x6d09[71]};return _0x460ax2b})})};_0x460ax1b= _[_0x6d09[73]]({},_0x460ax1b,_0x460ax28[_0x6d09[74]]);return db[_0x6d09[56]][_0x6d09[76]](_0x460ax1b)[_0x6d09[45]](respondWithFilteredResult(_0x460ax15,_0x460ax1b,_0x6d09[53]))[_0x6d09[75]](handleError(_0x460ax15,null,_0x6d09[53]))};exports[_0x6d09[77]]= function(_0x460ax28,_0x460ax15){var _0x460ax1b={raw:true,where:{id:_0x460ax28[_0x6d09[79]][_0x6d09[78]]}},_0x460ax29={};_0x460ax29[_0x6d09[54]]= _[_0x6d09[57]](db[_0x6d09[56]][_0x6d09[55]]);_0x460ax29[_0x6d09[58]]= _[_0x6d09[57]](_0x460ax28[_0x6d09[58]]);_0x460ax29[_0x6d09[59]]= _[_0x6d09[60]](_0x460ax29[_0x6d09[54]],_0x460ax29[_0x6d09[58]]);_0x460ax1b[_0x6d09[61]]= _[_0x6d09[60]](_0x460ax29[_0x6d09[54]],qs[_0x6d09[62]](_0x460ax28[_0x6d09[58]][_0x6d09[62]]));_0x460ax1b[_0x6d09[61]]= (_0x460ax1b[_0x6d09[61]][_0x6d09[63]])?_0x460ax1b[_0x6d09[61]]:_0x460ax29[_0x6d09[54]];_0x460ax1b= _[_0x6d09[73]]({},_0x460ax1b,_0x460ax28[_0x6d09[74]]);return db[_0x6d09[56]][_0x6d09[80]](_0x460ax1b)[_0x6d09[45]](handleEntityNotFound(_0x460ax15,null,_0x6d09[77]))[_0x6d09[45]](respondWithResult(_0x460ax15,null,_0x6d09[77]))[_0x6d09[75]](handleError(_0x460ax15,null,_0x6d09[77]))};exports[_0x6d09[81]]= function(_0x460ax28,_0x460ax15){return db[_0x6d09[56]][_0x6d09[81]]()[_0x6d09[45]](respondWithResult(_0x460ax15,null,_0x6d09[81]))[_0x6d09[75]](handleError(_0x460ax15,null,_0x6d09[81]))};exports[_0x6d09[46]]= function(_0x460ax28,_0x460ax15){if(_0x460ax28[_0x6d09[83]][_0x6d09[82]]){delete _0x460ax28[_0x6d09[83]][_0x6d09[82]]};return db[_0x6d09[56]][_0x6d09[80]]({where:{uniqueid:_0x460ax28[_0x6d09[79]][_0x6d09[78]]}})[_0x6d09[45]](handleEntityNotFound(_0x460ax15,null,_0x6d09[46]))[_0x6d09[45]](saveUpdates(_0x460ax28[_0x6d09[83]],null,_0x6d09[46]))[_0x6d09[45]](respondWithResult(_0x460ax15,null,_0x6d09[46]))[_0x6d09[75]](handleError(_0x460ax15,null,_0x6d09[46]))}
\ No newline at end of file
+var _0x606e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x64\x65\x73\x63\x72\x69\x62\x65","\x75\x6E\x69\x71\x75\x65\x69\x64","\x62\x6F\x64\x79"];_0x606e[0];var jsonpatch=require(_0x606e[1]);var rp=require(_0x606e[2]);var moment=require(_0x606e[3]);var BPromise=require(_0x606e[4]);var util=require(_0x606e[5]);var path=require(_0x606e[6]);var sox=require(_0x606e[7]);var ejs=require(_0x606e[8]);var fs=require(_0x606e[9]);var _=require(_0x606e[10]);var squel=require(_0x606e[11]);var crypto=require(_0x606e[12]);var jsforce=require(_0x606e[13]);var toCsv=require(_0x606e[14]);var qs=require(_0x606e[15]);var logger=require(_0x606e[17])(_0x606e[16]);var utils=require(_0x606e[18]);var config=require(_0x606e[19]);var db=require(_0x606e[21])[_0x606e[20]];function respondWithStatusCode(_0x6b64x15,_0x6b64x16,_0x6b64x17){_0x6b64x16= _0x6b64x16|| 204;return function(_0x6b64x18){if(_0x6b64x18){logger[_0x606e[24]](_0x606e[22],_0x6b64x17,_0x6b64x16,_0x606e[23]);logger[_0x606e[26]](_0x606e[25],_0x6b64x17,_0x6b64x16,_0x606e[23]);return _0x6b64x15[_0x606e[27]](_0x6b64x16)};return _0x6b64x15[_0x606e[29]](304)[_0x606e[28]]()}}function respondWithResult(_0x6b64x15,_0x6b64x16,_0x6b64x17){_0x6b64x16= _0x6b64x16|| 200;return function(_0x6b64x18){if(_0x6b64x18){logger[_0x606e[24]](_0x606e[22],_0x6b64x17,_0x6b64x16,_0x606e[30]);logger[_0x606e[26]](_0x606e[25],_0x6b64x17,_0x6b64x16,_0x606e[30],JSON[_0x606e[31]](_0x6b64x18));return _0x6b64x15[_0x606e[29]](_0x6b64x16)[_0x606e[32]](_0x6b64x18)};return _0x6b64x15[_0x606e[29]](304)[_0x606e[28]]()}}function respondWithFilteredResult(_0x6b64x15,_0x6b64x1b,_0x6b64x17){return function(_0x6b64x18){if(_0x6b64x18){var _0x6b64x1c=_0x6b64x18[_0x606e[33]],_0x6b64x1d=_0x6b64x1b[_0x606e[34]],_0x6b64x1e=_0x6b64x1b[_0x606e[34]]+ _0x6b64x1b[_0x606e[35]],_0x6b64x16;if(_0x6b64x1e>= _0x6b64x1c){_0x6b64x1e= _0x6b64x1c;_0x6b64x16= 200}else {_0x6b64x16= 206};_0x6b64x15[_0x606e[29]](_0x6b64x16);logger[_0x606e[24]](_0x606e[22],_0x6b64x17,_0x6b64x16,_0x606e[36]);logger[_0x606e[26]](_0x606e[25],_0x6b64x17,_0x6b64x16,_0x606e[30],JSON[_0x606e[31]](_0x6b64x18));return _0x6b64x15[_0x606e[40]](_0x606e[37],_0x6b64x1d+ _0x606e[38]+ _0x6b64x1e+ _0x606e[39]+ _0x6b64x1c)[_0x606e[32]](_0x6b64x18)};return null}}function patchUpdates(_0x6b64x20){return function(_0x6b64x18){try{jsonpatch[_0x606e[41]](_0x6b64x18,_0x6b64x20,true)}catch(err){return BPromise[_0x606e[42]](err)};return _0x6b64x18[_0x606e[43]]()}}function saveUpdates(_0x6b64x22,_0x6b64x16,_0x6b64x17){return function(_0x6b64x18){if(_0x6b64x18){return _0x6b64x18[_0x606e[46]](_0x6b64x22)[_0x606e[45]](function(_0x6b64x23){logger[_0x606e[24]](_0x606e[22],_0x6b64x17,_0x6b64x16,_0x606e[44]);logger[_0x606e[26]](_0x606e[25],_0x6b64x17,_0x6b64x16,_0x606e[44],JSON[_0x606e[31]](_0x6b64x18));return _0x6b64x23})};return null}}function removeEntity(_0x6b64x15,_0x6b64x16,_0x6b64x17){return function(_0x6b64x18){if(_0x6b64x18){return _0x6b64x18[_0x606e[48]]()[_0x606e[45]](function(){logger[_0x606e[24]](_0x606e[22],_0x6b64x17,_0x6b64x16,_0x606e[47]);logger[_0x606e[26]](_0x606e[25],_0x6b64x17,_0x6b64x16,_0x606e[47],JSON[_0x606e[31]](_0x6b64x18));_0x6b64x15[_0x606e[29]](204)[_0x606e[28]]()})}}}function handleEntityNotFound(_0x6b64x15,_0x6b64x16,_0x6b64x17){return function(_0x6b64x18){if(!_0x6b64x18){logger[_0x606e[50]](_0x606e[22],_0x6b64x17,404,_0x606e[49]);_0x6b64x15[_0x606e[29]](404)[_0x606e[28]]();return null};return _0x6b64x18}}function handleError(_0x6b64x15,_0x6b64x16,_0x6b64x17){_0x6b64x16= _0x6b64x16|| 500;return function(_0x6b64x27){logger[_0x606e[50]](_0x606e[22],_0x6b64x17,_0x6b64x16,JSON[_0x606e[31]](_0x6b64x27));delete _0x6b64x27[_0x606e[51]];_0x6b64x15[_0x606e[29]](_0x6b64x16)[_0x606e[52]](_0x6b64x27)}}exports[_0x606e[53]]= function(_0x6b64x28,_0x6b64x15){var _0x6b64x1b={},_0x6b64x29={};_0x6b64x29[_0x606e[54]]= _[_0x606e[57]](db[_0x606e[56]][_0x606e[55]]);_0x6b64x29[_0x606e[58]]= _[_0x606e[57]](_0x6b64x28[_0x606e[58]]);_0x6b64x29[_0x606e[59]]= _[_0x606e[60]](_0x6b64x29[_0x606e[54]],_0x6b64x29[_0x606e[58]]);_0x6b64x1b[_0x606e[61]]= _[_0x606e[60]](_0x6b64x29[_0x606e[54]],qs[_0x606e[62]](_0x6b64x28[_0x606e[58]][_0x606e[62]]));_0x6b64x1b[_0x606e[61]]= (_0x6b64x1b[_0x606e[61]][_0x606e[63]])?_0x6b64x1b[_0x606e[61]]:_0x6b64x29[_0x606e[54]];if(!_0x6b64x28[_0x606e[58]][_0x606e[65]](_0x606e[64])){_0x6b64x1b[_0x606e[35]]= qs[_0x606e[35]](_0x6b64x28[_0x606e[58]][_0x606e[35]]);_0x6b64x1b[_0x606e[34]]= qs[_0x606e[34]](_0x6b64x28[_0x606e[58]][_0x606e[34]])};_0x6b64x1b[_0x606e[66]]= qs[_0x606e[67]](_0x6b64x28[_0x606e[58]][_0x606e[67]]);_0x6b64x1b[_0x606e[68]]= qs[_0x606e[59]](_[_0x606e[69]](_0x6b64x28[_0x606e[58]],_0x6b64x29[_0x606e[59]]));if(_0x6b64x28[_0x606e[58]][_0x606e[70]]){_0x6b64x1b[_0x606e[68]]= _[_0x606e[73]](_0x6b64x1b[_0x606e[68]],{$or:_[_0x606e[72]](_0x6b64x1b[_0x606e[61]],function(_0x6b64x2a){var _0x6b64x2b={};_0x6b64x2b[_0x6b64x2a]= {$like:_0x606e[71]+ _0x6b64x28[_0x606e[58]][_0x606e[70]]+ _0x606e[71]};return _0x6b64x2b})})};_0x6b64x1b= _[_0x606e[73]]({},_0x6b64x1b,_0x6b64x28[_0x606e[74]]);return db[_0x606e[56]][_0x606e[76]](_0x6b64x1b)[_0x606e[45]](respondWithFilteredResult(_0x6b64x15,_0x6b64x1b,_0x606e[53]))[_0x606e[75]](handleError(_0x6b64x15,null,_0x606e[53]))};exports[_0x606e[77]]= function(_0x6b64x28,_0x6b64x15){var _0x6b64x1b={raw:true,where:{id:_0x6b64x28[_0x606e[79]][_0x606e[78]]}},_0x6b64x29={};_0x6b64x29[_0x606e[54]]= _[_0x606e[57]](db[_0x606e[56]][_0x606e[55]]);_0x6b64x29[_0x606e[58]]= _[_0x606e[57]](_0x6b64x28[_0x606e[58]]);_0x6b64x29[_0x606e[59]]= _[_0x606e[60]](_0x6b64x29[_0x606e[54]],_0x6b64x29[_0x606e[58]]);_0x6b64x1b[_0x606e[61]]= _[_0x606e[60]](_0x6b64x29[_0x606e[54]],qs[_0x606e[62]](_0x6b64x28[_0x606e[58]][_0x606e[62]]));_0x6b64x1b[_0x606e[61]]= (_0x6b64x1b[_0x606e[61]][_0x606e[63]])?_0x6b64x1b[_0x606e[61]]:_0x6b64x29[_0x606e[54]];_0x6b64x1b= _[_0x606e[73]]({},_0x6b64x1b,_0x6b64x28[_0x606e[74]]);return db[_0x606e[56]][_0x606e[80]](_0x6b64x1b)[_0x606e[45]](handleEntityNotFound(_0x6b64x15,null,_0x606e[77]))[_0x606e[45]](respondWithResult(_0x6b64x15,null,_0x606e[77]))[_0x606e[75]](handleError(_0x6b64x15,null,_0x606e[77]))};exports[_0x606e[81]]= function(_0x6b64x28,_0x6b64x15){return db[_0x606e[56]][_0x606e[81]]()[_0x606e[45]](respondWithResult(_0x6b64x15,null,_0x606e[81]))[_0x606e[75]](handleError(_0x6b64x15,null,_0x606e[81]))};exports[_0x606e[46]]= function(_0x6b64x28,_0x6b64x15){if(_0x6b64x28[_0x606e[83]][_0x606e[82]]){delete _0x6b64x28[_0x606e[83]][_0x606e[82]]};return db[_0x606e[56]][_0x606e[80]]({where:{uniqueid:_0x6b64x28[_0x606e[79]][_0x606e[78]]}})[_0x606e[45]](handleEntityNotFound(_0x6b64x15,null,_0x606e[46]))[_0x606e[45]](saveUpdates(_0x6b64x28[_0x606e[83]],null,_0x606e[46]))[_0x606e[45]](respondWithResult(_0x6b64x15,null,_0x606e[46]))[_0x606e[75]](handleError(_0x6b64x15,null,_0x606e[46]))}
\ No newline at end of file
index be09946..f6e509d 100644 (file)
@@ -1 +1 @@
-var _0xabdb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79","\x65\x6E\x64\x74\x69\x6D\x65","\x64\x65\x66\x69\x6E\x65"];_0xabdb[0];var _=require(_0xabdb[1]);var util=require(_0xabdb[2]);var logger=require(_0xabdb[4])(_0xabdb[3]);var attributes=require(_0xabdb[5]);module[_0xabdb[6]]= function(_0xf33fx5,_0xf33fx6){return _0xf33fx5[_0xabdb[10]](_0xabdb[7],attributes,{tableName:_0xabdb[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0xabdb[9],"\x66\x69\x65\x6C\x64\x73":[_0xabdb[9]]}],timestamps:true})}
\ No newline at end of file
+var _0xa423=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79","\x65\x6E\x64\x74\x69\x6D\x65","\x64\x65\x66\x69\x6E\x65"];_0xa423[0];var _=require(_0xa423[1]);var util=require(_0xa423[2]);var logger=require(_0xa423[4])(_0xa423[3]);var attributes=require(_0xa423[5]);module[_0xa423[6]]= function(_0x7a8cx5,_0x7a8cx6){return _0x7a8cx5[_0xa423[10]](_0xa423[7],attributes,{tableName:_0xa423[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0xa423[9],"\x66\x69\x65\x6C\x64\x73":[_0xa423[9]]}],timestamps:true})}
\ No newline at end of file
index eb69d8f..1138789 100644 (file)
@@ -1 +1 @@
-var _0xedce=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x41\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x77\x68\x65\x72\x65","\x43\x4F\x55\x4E\x54","\x69\x64","\x63\x6F\x6C","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x6E","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73","\x49\x46","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x34\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6C\x69\x74\x65\x72\x61\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x6E\x73\x77\x65\x72\x65\x64\x43\x61\x6C\x6C\x73","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x30\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x54\x69\x6D\x65\x6F\x75\x74","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x31\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x41\x56\x47","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x34\x2C\x20\x60\x68\x6F\x6C\x64\x74\x69\x6D\x65\x60\x2C\x20\x6E\x75\x6C\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x48\x6F\x6C\x64\x74\x69\x6D\x65","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x34\x2C\x20\x60\x74\x61\x6C\x6B\x74\x69\x6D\x65\x60\x2C\x20\x6E\x75\x6C\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x54\x61\x6C\x6B\x74\x69\x6D\x65","\x66\x69\x6E\x64\x41\x6C\x6C","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x6E\x61\x6D\x65","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x30\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x53\x75\x63\x68\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x33\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x35\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x75\x73\x79\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x38\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x30\x20\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x54\x69\x6D\x65\x6F\x75\x74","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x31\x20\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x32\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x55\x6E\x6B\x6E\x6F\x77\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x33\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x34\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x46\x61\x69\x6C\x75\x72\x65\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x36\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x41\x67\x69\x43\x61\x6C\x6C\x73\x44\x61\x79","\x47\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x69\x76\x72\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73\x44\x61\x79\x73","\x69\x76\x72\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79"];_0xedce[0];var _=require(_0xedce[1]);var util=require(_0xedce[2]);var moment=require(_0xedce[3]);var BPromise=require(_0xedce[4]);var db=require(_0xedce[6])[_0xedce[5]];var utils=require(_0xedce[7]);var logger=require(_0xedce[9])(_0xedce[8]);var jayson=require(_0xedce[10]);var client=jayson[_0xedce[12]][_0xedce[11]]({port:9002});function respondWithRpcPromise(_0x4412xb,_0x4412xc,_0x4412xd){return  new BPromise(function(_0x4412xe,_0x4412xf){return client[_0xedce[25]](_0x4412xb,_0x4412xd)[_0xedce[24]](function(_0x4412x11){logger[_0xedce[17]](_0xedce[13],_0x4412xc,_0xedce[16]);logger[_0xedce[20]](_0xedce[18],_0x4412xc,_0xedce[16],JSON[_0xedce[19]](_0x4412x11));if(_0x4412x11[_0xedce[14]]){if(_0x4412x11[_0xedce[14]][_0xedce[21]]=== 500){logger[_0xedce[14]](_0xedce[13],_0x4412xc,_0x4412x11[_0xedce[14]][_0xedce[22]]);return _0x4412xf(_0x4412x11[_0xedce[14]][_0xedce[22]])};logger[_0xedce[14]](_0xedce[13],_0x4412xc,_0x4412x11[_0xedce[14]][_0xedce[22]]);return _0x4412xe(_0x4412x11[_0xedce[14]][_0xedce[22]])}else {logger[_0xedce[17]](_0xedce[13],_0x4412xc,_0xedce[16]);_0x4412xe(_0x4412x11[_0xedce[23]][_0xedce[22]])}})[_0xedce[15]](function(_0x4412x10){logger[_0xedce[14]](_0xedce[13],_0x4412xc,_0x4412x10);_0x4412xf(_0x4412x10)})})}exports[_0xedce[26]]= function(_0x4412xd){var _0x4412x12=this;return  new Promise(function(_0x4412xe,_0x4412xf){return db[_0xedce[31]][_0xedce[30]](_0x4412xd[_0xedce[27]],{raw:_0x4412xd[_0xedce[28]]?(_0x4412xd[_0xedce[28]][_0xedce[29]]=== undefined)?true:false:true})[_0xedce[24]](function(_0x4412x11){logger[_0xedce[17]](_0xedce[26],_0x4412xd);logger[_0xedce[20]](_0xedce[26],_0x4412xd,JSON[_0xedce[19]](_0x4412x11));_0x4412xe(_0x4412x11)})[_0xedce[15]](function(_0x4412x10){logger[_0xedce[14]](_0xedce[26],_0x4412x10[_0xedce[22]],_0x4412xd);_0x4412xf(_0x4412x12[_0xedce[14]](500,_0x4412x10[_0xedce[22]]))})})};exports[_0xedce[32]]= function(_0x4412xd){var _0x4412x12=this;return  new Promise(function(_0x4412xe,_0x4412xf){return db[_0xedce[31]][_0xedce[53]]({raw:_0x4412xd[_0xedce[28]]?(_0x4412xd[_0xedce[28]][_0xedce[29]]=== undefined)?true:false:true,where:_0x4412xd[_0xedce[28]]?_0x4412xd[_0xedce[28]][_0xedce[33]]|| null:null,attributes:[[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[36]](_0xedce[35])),_0xedce[39]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[41]))),_0xedce[43]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[44]))),_0xedce[45]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[46]))),_0xedce[47]],[db[_0xedce[37]][_0xedce[38]](_0xedce[48],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[49]))),_0xedce[50]],[db[_0xedce[37]][_0xedce[38]](_0xedce[48],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[51]))),_0xedce[52]]]})[_0xedce[24]](function(_0x4412x11){logger[_0xedce[17]](_0xedce[32],_0x4412xd);logger[_0xedce[20]](_0xedce[32],_0x4412xd,JSON[_0xedce[19]](_0x4412x11));_0x4412xe(_0x4412x11)})[_0xedce[15]](function(_0x4412x10){logger[_0xedce[14]](_0xedce[32],_0x4412x10[_0xedce[22]],_0x4412xd);_0x4412xf(_0x4412x12[_0xedce[14]](500,_0x4412x10[_0xedce[22]]))})})};exports[_0xedce[54]]= function(_0x4412xd){var _0x4412x12=this;return  new Promise(function(_0x4412xe,_0x4412xf){return db[_0xedce[31]][_0xedce[53]]({raw:_0x4412xd[_0xedce[28]]?(_0x4412xd[_0xedce[28]][_0xedce[29]]=== undefined)?true:false:true,where:_0x4412xd[_0xedce[28]]?_0x4412xd[_0xedce[28]][_0xedce[33]]|| null:null,attributes:[[_0xedce[55],_0xedce[56]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[57]))),_0xedce[58]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[59]))),_0xedce[60]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[41]))),_0xedce[61]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[62]))),_0xedce[63]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[64]))),_0xedce[65]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[66]))),_0xedce[67]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[68]))),_0xedce[69]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[70]))),_0xedce[71]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[72]))),_0xedce[73]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[74]))),_0xedce[75]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[76]))),_0xedce[77]]],group:[_0xedce[55]]})[_0xedce[24]](function(_0x4412x11){logger[_0xedce[17]](_0xedce[54],_0x4412xd);logger[_0xedce[20]](_0xedce[54],_0x4412xd,JSON[_0xedce[19]](_0x4412x11));_0x4412xe(_0x4412x11)})[_0xedce[15]](function(_0x4412x10){logger[_0xedce[14]](_0xedce[54],_0x4412x10[_0xedce[22]],_0x4412xd);_0x4412xf(_0x4412x12[_0xedce[14]](500,_0x4412x10[_0xedce[22]]))})})};exports[_0xedce[78]]= function(_0x4412xd){var _0x4412x12=this;return  new Promise(function(_0x4412xe,_0x4412xf){return db[_0xedce[31]][_0xedce[53]]({raw:_0x4412xd[_0xedce[28]]?(_0x4412xd[_0xedce[28]][_0xedce[29]]=== undefined)?true:false:true,where:_0x4412xd[_0xedce[28]]?_0x4412xd[_0xedce[28]][_0xedce[33]]|| null:null,attributes:[[_0xedce[55],_0xedce[56]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[36]](_0xedce[35])),_0xedce[79]],[db[_0xedce[37]][_0xedce[38]](_0xedce[34],db[_0xedce[37]][_0xedce[38]](_0xedce[40],db[_0xedce[37]][_0xedce[42]](_0xedce[41]))),_0xedce[80]]],group:[_0xedce[55]]})[_0xedce[24]](function(_0x4412x11){logger[_0xedce[17]](_0xedce[78],_0x4412xd);logger[_0xedce[20]](_0xedce[78],_0x4412xd,JSON[_0xedce[19]](_0x4412x11));_0x4412xe(_0x4412x11)})[_0xedce[15]](function(_0x4412x10){logger[_0xedce[14]](_0xedce[78],_0x4412x10[_0xedce[22]],_0x4412xd);_0x4412xf(_0x4412x12[_0xedce[14]](500,_0x4412x10[_0xedce[22]]))})})}
\ No newline at end of file
+var _0x57e0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x41\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x77\x68\x65\x72\x65","\x43\x4F\x55\x4E\x54","\x69\x64","\x63\x6F\x6C","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x6E","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73","\x49\x46","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x34\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6C\x69\x74\x65\x72\x61\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x6E\x73\x77\x65\x72\x65\x64\x43\x61\x6C\x6C\x73","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x30\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x54\x69\x6D\x65\x6F\x75\x74","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x31\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x41\x56\x47","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x34\x2C\x20\x60\x68\x6F\x6C\x64\x74\x69\x6D\x65\x60\x2C\x20\x6E\x75\x6C\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x48\x6F\x6C\x64\x74\x69\x6D\x65","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x34\x2C\x20\x60\x74\x61\x6C\x6B\x74\x69\x6D\x65\x60\x2C\x20\x6E\x75\x6C\x6C","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x54\x61\x6C\x6B\x74\x69\x6D\x65","\x66\x69\x6E\x64\x41\x6C\x6C","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x6E\x61\x6D\x65","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x30\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x53\x75\x63\x68\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x33\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x35\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x75\x73\x79\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x38\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x30\x20\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x54\x69\x6D\x65\x6F\x75\x74","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x31\x20\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x32\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x55\x6E\x6B\x6E\x6F\x77\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x33\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x34\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x46\x61\x69\x6C\x75\x72\x65\x43\x61\x6C\x6C\x73\x44\x61\x79","\x60\x73\x74\x61\x74\x65\x60\x20\x3D\x20\x31\x36\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x41\x67\x69\x43\x61\x6C\x6C\x73\x44\x61\x79","\x47\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x69\x76\x72\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73\x44\x61\x79\x73","\x69\x76\x72\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79"];_0x57e0[0];var _=require(_0x57e0[1]);var util=require(_0x57e0[2]);var moment=require(_0x57e0[3]);var BPromise=require(_0x57e0[4]);var db=require(_0x57e0[6])[_0x57e0[5]];var utils=require(_0x57e0[7]);var logger=require(_0x57e0[9])(_0x57e0[8]);var jayson=require(_0x57e0[10]);var client=jayson[_0x57e0[12]][_0x57e0[11]]({port:9002});function respondWithRpcPromise(_0xe838xb,_0xe838xc,_0xe838xd){return  new BPromise(function(_0xe838xe,_0xe838xf){return client[_0x57e0[25]](_0xe838xb,_0xe838xd)[_0x57e0[24]](function(_0xe838x11){logger[_0x57e0[17]](_0x57e0[13],_0xe838xc,_0x57e0[16]);logger[_0x57e0[20]](_0x57e0[18],_0xe838xc,_0x57e0[16],JSON[_0x57e0[19]](_0xe838x11));if(_0xe838x11[_0x57e0[14]]){if(_0xe838x11[_0x57e0[14]][_0x57e0[21]]=== 500){logger[_0x57e0[14]](_0x57e0[13],_0xe838xc,_0xe838x11[_0x57e0[14]][_0x57e0[22]]);return _0xe838xf(_0xe838x11[_0x57e0[14]][_0x57e0[22]])};logger[_0x57e0[14]](_0x57e0[13],_0xe838xc,_0xe838x11[_0x57e0[14]][_0x57e0[22]]);return _0xe838xe(_0xe838x11[_0x57e0[14]][_0x57e0[22]])}else {logger[_0x57e0[17]](_0x57e0[13],_0xe838xc,_0x57e0[16]);_0xe838xe(_0xe838x11[_0x57e0[23]][_0x57e0[22]])}})[_0x57e0[15]](function(_0xe838x10){logger[_0x57e0[14]](_0x57e0[13],_0xe838xc,_0xe838x10);_0xe838xf(_0xe838x10)})})}exports[_0x57e0[26]]= function(_0xe838xd){var _0xe838x12=this;return  new Promise(function(_0xe838xe,_0xe838xf){return db[_0x57e0[31]][_0x57e0[30]](_0xe838xd[_0x57e0[27]],{raw:_0xe838xd[_0x57e0[28]]?(_0xe838xd[_0x57e0[28]][_0x57e0[29]]=== undefined)?true:false:true})[_0x57e0[24]](function(_0xe838x11){logger[_0x57e0[17]](_0x57e0[26],_0xe838xd);logger[_0x57e0[20]](_0x57e0[26],_0xe838xd,JSON[_0x57e0[19]](_0xe838x11));_0xe838xe(_0xe838x11)})[_0x57e0[15]](function(_0xe838x10){logger[_0x57e0[14]](_0x57e0[26],_0xe838x10[_0x57e0[22]],_0xe838xd);_0xe838xf(_0xe838x12[_0x57e0[14]](500,_0xe838x10[_0x57e0[22]]))})})};exports[_0x57e0[32]]= function(_0xe838xd){var _0xe838x12=this;return  new Promise(function(_0xe838xe,_0xe838xf){return db[_0x57e0[31]][_0x57e0[53]]({raw:_0xe838xd[_0x57e0[28]]?(_0xe838xd[_0x57e0[28]][_0x57e0[29]]=== undefined)?true:false:true,where:_0xe838xd[_0x57e0[28]]?_0xe838xd[_0x57e0[28]][_0x57e0[33]]|| null:null,attributes:[[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[36]](_0x57e0[35])),_0x57e0[39]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[41]))),_0x57e0[43]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[44]))),_0x57e0[45]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[46]))),_0x57e0[47]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[48],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[49]))),_0x57e0[50]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[48],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[51]))),_0x57e0[52]]]})[_0x57e0[24]](function(_0xe838x11){logger[_0x57e0[17]](_0x57e0[32],_0xe838xd);logger[_0x57e0[20]](_0x57e0[32],_0xe838xd,JSON[_0x57e0[19]](_0xe838x11));_0xe838xe(_0xe838x11)})[_0x57e0[15]](function(_0xe838x10){logger[_0x57e0[14]](_0x57e0[32],_0xe838x10[_0x57e0[22]],_0xe838xd);_0xe838xf(_0xe838x12[_0x57e0[14]](500,_0xe838x10[_0x57e0[22]]))})})};exports[_0x57e0[54]]= function(_0xe838xd){var _0xe838x12=this;return  new Promise(function(_0xe838xe,_0xe838xf){return db[_0x57e0[31]][_0x57e0[53]]({raw:_0xe838xd[_0x57e0[28]]?(_0xe838xd[_0x57e0[28]][_0x57e0[29]]=== undefined)?true:false:true,where:_0xe838xd[_0x57e0[28]]?_0xe838xd[_0x57e0[28]][_0x57e0[33]]|| null:null,attributes:[[_0x57e0[55],_0x57e0[56]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[57]))),_0x57e0[58]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[59]))),_0x57e0[60]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[41]))),_0x57e0[61]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[62]))),_0x57e0[63]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[64]))),_0x57e0[65]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[66]))),_0x57e0[67]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[68]))),_0x57e0[69]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[70]))),_0x57e0[71]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[72]))),_0x57e0[73]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[74]))),_0x57e0[75]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[76]))),_0x57e0[77]]],group:[_0x57e0[55]]})[_0x57e0[24]](function(_0xe838x11){logger[_0x57e0[17]](_0x57e0[54],_0xe838xd);logger[_0x57e0[20]](_0x57e0[54],_0xe838xd,JSON[_0x57e0[19]](_0xe838x11));_0xe838xe(_0xe838x11)})[_0x57e0[15]](function(_0xe838x10){logger[_0x57e0[14]](_0x57e0[54],_0xe838x10[_0x57e0[22]],_0xe838xd);_0xe838xf(_0xe838x12[_0x57e0[14]](500,_0xe838x10[_0x57e0[22]]))})})};exports[_0x57e0[78]]= function(_0xe838xd){var _0xe838x12=this;return  new Promise(function(_0xe838xe,_0xe838xf){return db[_0x57e0[31]][_0x57e0[53]]({raw:_0xe838xd[_0x57e0[28]]?(_0xe838xd[_0x57e0[28]][_0x57e0[29]]=== undefined)?true:false:true,where:_0xe838xd[_0x57e0[28]]?_0xe838xd[_0x57e0[28]][_0x57e0[33]]|| null:null,attributes:[[_0x57e0[55],_0x57e0[56]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[36]](_0x57e0[35])),_0x57e0[79]],[db[_0x57e0[37]][_0x57e0[38]](_0x57e0[34],db[_0x57e0[37]][_0x57e0[38]](_0x57e0[40],db[_0x57e0[37]][_0x57e0[42]](_0x57e0[41]))),_0x57e0[80]]],group:[_0x57e0[55]]})[_0x57e0[24]](function(_0xe838x11){logger[_0x57e0[17]](_0x57e0[78],_0xe838xd);logger[_0x57e0[20]](_0x57e0[78],_0xe838xd,JSON[_0x57e0[19]](_0xe838x11));_0xe838xe(_0xe838x11)})[_0x57e0[15]](function(_0xe838x10){logger[_0x57e0[14]](_0x57e0[78],_0xe838x10[_0x57e0[22]],_0xe838xd);_0xe838xf(_0xe838x12[_0x57e0[14]](500,_0xe838x10[_0x57e0[22]]))})})}
\ No newline at end of file
index 0538b70..761792f 100644 (file)
@@ -1 +1 @@
-var _0x7f02=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x7f02[0];var multer=require(_0x7f02[1]);var util=require(_0x7f02[2]);var path=require(_0x7f02[3]);var express=require(_0x7f02[4]);var router=express.Router();var auth=require(_0x7f02[5]);var config=require(_0x7f02[6]);var controller=require(_0x7f02[7]);router[_0x7f02[11]](_0x7f02[8],auth[_0x7f02[9]](),controller[_0x7f02[10]]);router[_0x7f02[11]](_0x7f02[12],auth[_0x7f02[9]](),controller[_0x7f02[13]]);router[_0x7f02[11]](_0x7f02[14],auth[_0x7f02[9]](),controller[_0x7f02[15]]);router[_0x7f02[17]](_0x7f02[14],auth[_0x7f02[9]](),controller[_0x7f02[16]]);module[_0x7f02[18]]= router
\ No newline at end of file
+var _0x6b60=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x6b60[0];var multer=require(_0x6b60[1]);var util=require(_0x6b60[2]);var path=require(_0x6b60[3]);var express=require(_0x6b60[4]);var router=express.Router();var auth=require(_0x6b60[5]);var config=require(_0x6b60[6]);var controller=require(_0x6b60[7]);router[_0x6b60[11]](_0x6b60[8],auth[_0x6b60[9]](),controller[_0x6b60[10]]);router[_0x6b60[11]](_0x6b60[12],auth[_0x6b60[9]](),controller[_0x6b60[13]]);router[_0x6b60[11]](_0x6b60[14],auth[_0x6b60[9]](),controller[_0x6b60[15]]);router[_0x6b60[17]](_0x6b60[14],auth[_0x6b60[9]](),controller[_0x6b60[16]]);module[_0x6b60[18]]= router
\ No newline at end of file
index 2ef9930..e0c4dd9 100644 (file)
@@ -1 +1 @@
-var _0xacbb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0xacbb[0];var Sequelize=require(_0xacbb[1]);module[_0xacbb[2]]= {name:{type:Sequelize[_0xacbb[3]],unique:_0xacbb[4],allowNull:false,validate:{notEmpty:true}},description:{type:Sequelize[_0xacbb[3]]}}
\ No newline at end of file
+var _0x75a7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x75a7[0];var Sequelize=require(_0x75a7[1]);module[_0x75a7[2]]= {name:{type:Sequelize[_0x75a7[3]],unique:_0x75a7[4],allowNull:false,validate:{notEmpty:true}},description:{type:Sequelize[_0x75a7[3]]}}
\ No newline at end of file
index 56ad593..224cde5 100644 (file)
@@ -1 +1 @@
-var _0xc605=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x4C\x69\x73\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x4C\x69\x73\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x4C\x69\x73\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4C\x69\x73\x74\x49\x64","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x69\x64\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x63\x66\x5F\x25\x64","\x66\x6F\x72\x6D\x61\x74","\x63\x6F\x6E\x63\x61\x74","\x72\x61\x77","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73\x43\x73\x76","\x6E\x6F\x77","\x2F\x74\x6D\x70\x2F\x6C\x69\x73\x74\x5F\x25\x64\x5F\x25\x73\x2E\x63\x73\x76","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x3B\x20\x66\x69\x6C\x65\x6E\x61\x6D\x65\x3D","\x6C\x69\x73\x74\x5F\x25\x64\x5F\x25\x73\x2E\x63\x73\x76","\x73\x65\x74\x48\x65\x61\x64\x65\x72","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x74\x79\x70\x65","\x74\x65\x78\x74\x2F\x63\x73\x76","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x61\x64\x64\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x53\x54\x52\x49\x4E\x47","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x74\x79\x70\x65","\x74\x65\x78\x74","\x49\x4E\x54\x45\x47\x45\x52","\x6E\x75\x6D\x62\x65\x72","\x42\x4F\x4F\x4C\x45\x41\x4E","\x73\x77\x69\x74\x63\x68","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x63\x66\x5F\x25\x73","\x61\x64\x64\x43\x6F\x6C\x75\x6D\x6E","\x71\x75\x65\x72\x79\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x61\x64\x64\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x55\x73\x65\x72"];_0xc605[0];var jsonpatch=require(_0xc605[1]);var rp=require(_0xc605[2]);var moment=require(_0xc605[3]);var BPromise=require(_0xc605[4]);var util=require(_0xc605[5]);var path=require(_0xc605[6]);var sox=require(_0xc605[7]);var ejs=require(_0xc605[8]);var fs=require(_0xc605[9]);var _=require(_0xc605[10]);var squel=require(_0xc605[11]);var crypto=require(_0xc605[12]);var jsforce=require(_0xc605[13]);var toCsv=require(_0xc605[14]);var qs=require(_0xc605[15]);var logger=require(_0xc605[17])(_0xc605[16]);var utils=require(_0xc605[18]);var config=require(_0xc605[19]);var db=require(_0xc605[21])[_0xc605[20]];function respondWithStatusCode(_0xf3f6x15,_0xf3f6x16,_0xf3f6x17){_0xf3f6x16= _0xf3f6x16|| 204;return function(_0xf3f6x18){if(_0xf3f6x18){logger[_0xc605[24]](_0xc605[22],_0xf3f6x17,_0xf3f6x16,_0xc605[23]);logger[_0xc605[26]](_0xc605[25],_0xf3f6x17,_0xf3f6x16,_0xc605[23]);return _0xf3f6x15[_0xc605[27]](_0xf3f6x16)};return _0xf3f6x15[_0xc605[29]](304)[_0xc605[28]]()}}function respondWithResult(_0xf3f6x15,_0xf3f6x16,_0xf3f6x17){_0xf3f6x16= _0xf3f6x16|| 200;return function(_0xf3f6x18){if(_0xf3f6x18){logger[_0xc605[24]](_0xc605[22],_0xf3f6x17,_0xf3f6x16,_0xc605[30]);logger[_0xc605[26]](_0xc605[25],_0xf3f6x17,_0xf3f6x16,_0xc605[30],JSON[_0xc605[31]](_0xf3f6x18));return _0xf3f6x15[_0xc605[29]](_0xf3f6x16)[_0xc605[32]](_0xf3f6x18)};return _0xf3f6x15[_0xc605[29]](304)[_0xc605[28]]()}}function respondWithFilteredResult(_0xf3f6x15,_0xf3f6x1b,_0xf3f6x17){return function(_0xf3f6x18){if(_0xf3f6x18){var _0xf3f6x1c=_0xf3f6x18[_0xc605[33]],_0xf3f6x1d=_0xf3f6x1b[_0xc605[34]],_0xf3f6x1e=_0xf3f6x1b[_0xc605[34]]+ _0xf3f6x1b[_0xc605[35]],_0xf3f6x16;if(_0xf3f6x1e>= _0xf3f6x1c){_0xf3f6x1e= _0xf3f6x1c;_0xf3f6x16= 200}else {_0xf3f6x16= 206};_0xf3f6x15[_0xc605[29]](_0xf3f6x16);logger[_0xc605[24]](_0xc605[22],_0xf3f6x17,_0xf3f6x16,_0xc605[36]);logger[_0xc605[26]](_0xc605[25],_0xf3f6x17,_0xf3f6x16,_0xc605[30],JSON[_0xc605[31]](_0xf3f6x18));return _0xf3f6x15[_0xc605[40]](_0xc605[37],_0xf3f6x1d+ _0xc605[38]+ _0xf3f6x1e+ _0xc605[39]+ _0xf3f6x1c)[_0xc605[32]](_0xf3f6x18)};return null}}function patchUpdates(_0xf3f6x20){return function(_0xf3f6x18){try{jsonpatch[_0xc605[41]](_0xf3f6x18,_0xf3f6x20,true)}catch(err){return BPromise[_0xc605[42]](err)};return _0xf3f6x18[_0xc605[43]]()}}function saveUpdates(_0xf3f6x22,_0xf3f6x16,_0xf3f6x17){return function(_0xf3f6x18){if(_0xf3f6x18){return _0xf3f6x18[_0xc605[46]](_0xf3f6x22)[_0xc605[45]](function(_0xf3f6x23){logger[_0xc605[24]](_0xc605[22],_0xf3f6x17,_0xf3f6x16,_0xc605[44]);logger[_0xc605[26]](_0xc605[25],_0xf3f6x17,_0xf3f6x16,_0xc605[44],JSON[_0xc605[31]](_0xf3f6x18));return _0xf3f6x23})};return null}}function removeEntity(_0xf3f6x15,_0xf3f6x16,_0xf3f6x17){return function(_0xf3f6x18){if(_0xf3f6x18){return _0xf3f6x18[_0xc605[48]]()[_0xc605[45]](function(){logger[_0xc605[24]](_0xc605[22],_0xf3f6x17,_0xf3f6x16,_0xc605[47]);logger[_0xc605[26]](_0xc605[25],_0xf3f6x17,_0xf3f6x16,_0xc605[47],JSON[_0xc605[31]](_0xf3f6x18));_0xf3f6x15[_0xc605[29]](204)[_0xc605[28]]()})}}}function handleEntityNotFound(_0xf3f6x15,_0xf3f6x16,_0xf3f6x17){return function(_0xf3f6x18){if(!_0xf3f6x18){logger[_0xc605[50]](_0xc605[22],_0xf3f6x17,404,_0xc605[49]);_0xf3f6x15[_0xc605[29]](404)[_0xc605[28]]();return null};return _0xf3f6x18}}function handleError(_0xf3f6x15,_0xf3f6x16,_0xf3f6x17){_0xf3f6x16= _0xf3f6x16|| 500;return function(_0xf3f6x27){logger[_0xc605[50]](_0xc605[22],_0xf3f6x17,_0xf3f6x16,JSON[_0xc605[31]](_0xf3f6x27));delete _0xf3f6x27[_0xc605[51]];_0xf3f6x15[_0xc605[29]](_0xf3f6x16)[_0xc605[52]](_0xf3f6x27)}}exports[_0xc605[53]]= function(_0xf3f6x28,_0xf3f6x15){var _0xf3f6x1b={},_0xf3f6x29={};_0xf3f6x29[_0xc605[54]]= _[_0xc605[57]](db[_0xc605[56]][_0xc605[55]]);_0xf3f6x29[_0xc605[58]]= _[_0xc605[57]](_0xf3f6x28[_0xc605[58]]);_0xf3f6x29[_0xc605[59]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],_0xf3f6x29[_0xc605[58]]);_0xf3f6x1b[_0xc605[61]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],qs[_0xc605[62]](_0xf3f6x28[_0xc605[58]][_0xc605[62]]));_0xf3f6x1b[_0xc605[61]]= (_0xf3f6x1b[_0xc605[61]][_0xc605[63]])?_0xf3f6x1b[_0xc605[61]]:_0xf3f6x29[_0xc605[54]];if(!_0xf3f6x28[_0xc605[58]][_0xc605[65]](_0xc605[64])){_0xf3f6x1b[_0xc605[35]]= qs[_0xc605[35]](_0xf3f6x28[_0xc605[58]][_0xc605[35]]);_0xf3f6x1b[_0xc605[34]]= qs[_0xc605[34]](_0xf3f6x28[_0xc605[58]][_0xc605[34]])};_0xf3f6x1b[_0xc605[66]]= qs[_0xc605[67]](_0xf3f6x28[_0xc605[58]][_0xc605[67]]);_0xf3f6x1b[_0xc605[68]]= qs[_0xc605[59]](_[_0xc605[69]](_0xf3f6x28[_0xc605[58]],_0xf3f6x29[_0xc605[59]]));if(_0xf3f6x28[_0xc605[58]][_0xc605[70]]){_0xf3f6x1b[_0xc605[68]]= _[_0xc605[73]](_0xf3f6x1b[_0xc605[68]],{$or:_[_0xc605[72]](_0xf3f6x1b[_0xc605[61]],function(_0xf3f6x2a){var _0xf3f6x2b={};_0xf3f6x2b[_0xf3f6x2a]= {$like:_0xc605[71]+ _0xf3f6x28[_0xc605[58]][_0xc605[70]]+ _0xc605[71]};return _0xf3f6x2b})})};_0xf3f6x1b= _[_0xc605[73]]({},_0xf3f6x1b,_0xf3f6x28[_0xc605[74]]);return db[_0xc605[56]][_0xc605[76]](_0xf3f6x1b)[_0xc605[45]](respondWithFilteredResult(_0xf3f6x15,_0xf3f6x1b,_0xc605[53]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[53]))};exports[_0xc605[77]]= function(_0xf3f6x28,_0xf3f6x15){var _0xf3f6x1b={raw:false,where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}},_0xf3f6x29={};_0xf3f6x29[_0xc605[54]]= _[_0xc605[57]](db[_0xc605[56]][_0xc605[55]]);_0xf3f6x29[_0xc605[58]]= _[_0xc605[57]](_0xf3f6x28[_0xc605[58]]);_0xf3f6x29[_0xc605[59]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],_0xf3f6x29[_0xc605[58]]);_0xf3f6x1b[_0xc605[61]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],qs[_0xc605[62]](_0xf3f6x28[_0xc605[58]][_0xc605[62]]));_0xf3f6x1b[_0xc605[61]]= (_0xf3f6x1b[_0xc605[61]][_0xc605[63]])?_0xf3f6x1b[_0xc605[61]]:_0xf3f6x29[_0xc605[54]];_0xf3f6x1b= _[_0xc605[73]]({},_0xf3f6x1b,_0xf3f6x28[_0xc605[74]]);return db[_0xc605[56]][_0xc605[80]](_0xf3f6x1b)[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[77]))[_0xc605[45]](respondWithResult(_0xf3f6x15,null,_0xc605[77]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[77]))};exports[_0xc605[81]]= function(_0xf3f6x28,_0xf3f6x15){return db[_0xc605[56]][_0xc605[81]](_0xf3f6x28[_0xc605[82]],{})[_0xc605[45]](respondWithResult(_0xf3f6x15,201,_0xc605[81]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[81]))};exports[_0xc605[46]]= function(_0xf3f6x28,_0xf3f6x15){if(_0xf3f6x28[_0xc605[82]][_0xc605[78]]){delete _0xf3f6x28[_0xc605[82]][_0xc605[78]]};return db[_0xc605[56]][_0xc605[80]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[46]))[_0xc605[45]](saveUpdates(_0xf3f6x28[_0xc605[82]],null,_0xc605[46]))[_0xc605[45]](respondWithResult(_0xf3f6x15,null,_0xc605[46]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[46]))};exports[_0xc605[48]]= function(_0xf3f6x28,_0xf3f6x15){return db[_0xc605[56]][_0xc605[80]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[48]))[_0xc605[45]](removeEntity(_0xf3f6x15,null,_0xc605[48]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[48]))};exports[_0xc605[83]]= function(_0xf3f6x28,_0xf3f6x15,_0xf3f6x2c){if(_0xf3f6x28[_0xc605[82]][_0xc605[78]]){delete _0xf3f6x28[_0xc605[82]][_0xc605[78]]};return db[_0xc605[56]][_0xc605[80]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[83]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){_0xf3f6x28[_0xc605[82]][_0xc605[84]]= _0xf3f6x18[_0xc605[78]];return db[_0xc605[85]][_0xc605[81]](_0xf3f6x28[_0xc605[82]])}})[_0xc605[45]](respondWithResult(_0xf3f6x15,null,_0xc605[83]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[83]))};exports[_0xc605[86]]= function(_0xf3f6x28,_0xf3f6x18,_0xf3f6x2c){var _0xf3f6x1b={};var _0xf3f6x29={};var _0xf3f6x2d;var _0xf3f6x1c;return db[_0xc605[56]][_0xc605[87]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x18,null,_0xc605[86]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){_0xf3f6x2d= _0xf3f6x18;_0xf3f6x29[_0xc605[54]]= _[_0xc605[57]](db[_0xc605[85]][_0xc605[55]]);_0xf3f6x29[_0xc605[58]]= _[_0xc605[57]](_0xf3f6x28[_0xc605[58]]);_0xf3f6x29[_0xc605[59]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],_0xf3f6x29[_0xc605[58]]);_0xf3f6x1b[_0xc605[61]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],qs[_0xc605[62]](_0xf3f6x28[_0xc605[58]][_0xc605[62]]));_0xf3f6x1b[_0xc605[61]]= (_0xf3f6x1b[_0xc605[61]][_0xc605[63]])?_0xf3f6x1b[_0xc605[61]]:_0xf3f6x29[_0xc605[54]];_0xf3f6x1b[_0xc605[66]]= qs[_0xc605[67]](_0xf3f6x28[_0xc605[58]][_0xc605[67]]);_0xf3f6x1b[_0xc605[68]]= qs[_0xc605[59]](_[_0xc605[69]](_0xf3f6x28[_0xc605[58]],_0xf3f6x29[_0xc605[59]]));if(_0xf3f6x28[_0xc605[58]][_0xc605[70]]){_0xf3f6x1b[_0xc605[68]]= _[_0xc605[73]](_0xf3f6x1b[_0xc605[68]],{$or:_[_0xc605[72]](_0xf3f6x1b[_0xc605[61]],function(_0xf3f6x2a){var _0xf3f6x2b={};_0xf3f6x2b[_0xf3f6x2a]= {$like:_0xc605[71]+ _0xf3f6x28[_0xc605[58]][_0xc605[70]]+ _0xc605[71]};return _0xf3f6x2b})})};_0xf3f6x1b= _[_0xc605[73]]({},_0xf3f6x1b,_0xf3f6x28[_0xc605[74]]);return _0xf3f6x2d[_0xc605[86]](_0xf3f6x1b)}})[_0xc605[45]](function(_0xf3f6x2f){if(_0xf3f6x2f){_0xf3f6x1c= _0xf3f6x2f[_0xc605[63]];if(!_0xf3f6x28[_0xc605[58]][_0xc605[65]](_0xc605[64])){_0xf3f6x1b[_0xc605[35]]= qs[_0xc605[35]](_0xf3f6x28[_0xc605[58]][_0xc605[35]]);_0xf3f6x1b[_0xc605[34]]= qs[_0xc605[34]](_0xf3f6x28[_0xc605[58]][_0xc605[34]])};return _0xf3f6x2d[_0xc605[86]](_0xf3f6x1b)}})[_0xc605[45]](function(_0xf3f6x2e){return _0xf3f6x2e?{count:_0xf3f6x1c,rows:_0xf3f6x2e}:null})[_0xc605[45]](respondWithResult(_0xf3f6x18,null,_0xc605[86]))[_0xc605[75]](handleError(_0xf3f6x18,null,_0xc605[86]))};exports[_0xc605[88]]= function(_0xf3f6x28,_0xf3f6x15,_0xf3f6x2c){return db[_0xc605[56]][_0xc605[80]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[88]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){return _0xf3f6x18[_0xc605[88]](_0xf3f6x28[_0xc605[82]][_0xc605[89]],_[_0xc605[90]](_0xf3f6x28[_0xc605[82]],[_0xc605[89],_0xc605[78]])|| {})};return null})[_0xc605[45]](respondWithResult(_0xf3f6x15,null,_0xc605[88]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[88]))};exports[_0xc605[91]]= function(_0xf3f6x28,_0xf3f6x15,_0xf3f6x2c){var _0xf3f6x30;return db[_0xc605[56]][_0xc605[80]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]},include:[{model:db[_0xc605[97]],as:_0xc605[98]}]})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[91]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){_0xf3f6x30= _0xf3f6x18;return db[_0xc605[96]][_0xc605[55]]}})[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){var _0xf3f6x1b={};var _0xf3f6x29={};_0xf3f6x29[_0xc605[54]]= _[_0xc605[94]](_[_0xc605[57]](_0xf3f6x18),_[_0xc605[72]](_0xf3f6x30.CustomFields,function(_0xf3f6x31){return util[_0xc605[93]](_0xc605[92],_0xf3f6x31[_0xc605[78]])}));_0xf3f6x29[_0xc605[58]]= _[_0xc605[57]](_0xf3f6x28[_0xc605[58]]);_0xf3f6x29[_0xc605[59]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],_0xf3f6x29[_0xc605[58]]);_0xf3f6x1b[_0xc605[61]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],qs[_0xc605[62]](_0xf3f6x28[_0xc605[58]][_0xc605[62]]));_0xf3f6x1b[_0xc605[61]]= (_0xf3f6x1b[_0xc605[61]][_0xc605[63]])?_0xf3f6x1b[_0xc605[61]]:_0xf3f6x29[_0xc605[54]];_0xf3f6x1b[_0xc605[35]]= qs[_0xc605[35]](_0xf3f6x28[_0xc605[58]][_0xc605[35]]);_0xf3f6x1b[_0xc605[34]]= qs[_0xc605[34]](_0xf3f6x28[_0xc605[58]][_0xc605[34]]);_0xf3f6x1b[_0xc605[66]]= qs[_0xc605[67]](_0xf3f6x28[_0xc605[58]][_0xc605[67]]);_0xf3f6x1b[_0xc605[68]]= qs[_0xc605[59]](_[_0xc605[69]](_0xf3f6x28[_0xc605[58]],_0xf3f6x29[_0xc605[59]]));_0xf3f6x1b[_0xc605[95]]= true;if(_0xf3f6x28[_0xc605[58]][_0xc605[70]]){_0xf3f6x1b[_0xc605[68]]= _[_0xc605[73]](_0xf3f6x1b[_0xc605[68]],{$or:_[_0xc605[72]](_0xf3f6x1b[_0xc605[61]],function(_0xf3f6x2a){var _0xf3f6x2b={};_0xf3f6x2b[_0xf3f6x2a]= {$like:_0xc605[71]+ _0xf3f6x28[_0xc605[58]][_0xc605[70]]+ _0xc605[71]};return _0xf3f6x2b})})};_0xf3f6x1b= _[_0xc605[73]]({},_0xf3f6x1b,_0xf3f6x28[_0xc605[74]]);return _0xf3f6x30[_0xc605[91]](_0xf3f6x1b)}})[_0xc605[45]](respondWithResult(_0xf3f6x15,null,_0xc605[91]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[91]))};exports[_0xc605[99]]= function(_0xf3f6x28,_0xf3f6x15,_0xf3f6x2c){var _0xf3f6x30;return db[_0xc605[56]][_0xc605[80]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]},include:[{model:db[_0xc605[97]],as:_0xc605[98]}]})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[99]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){_0xf3f6x30= _0xf3f6x18;return db[_0xc605[96]][_0xc605[55]]}})[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){var _0xf3f6x1b={};var _0xf3f6x29={};_0xf3f6x29[_0xc605[54]]= _[_0xc605[94]](_[_0xc605[57]](_0xf3f6x18),_[_0xc605[72]](_0xf3f6x30.CustomFields,function(_0xf3f6x31){return util[_0xc605[93]](_0xc605[92],_0xf3f6x31[_0xc605[78]])}));_0xf3f6x29[_0xc605[58]]= _[_0xc605[57]](_0xf3f6x28[_0xc605[58]]);_0xf3f6x29[_0xc605[59]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],_0xf3f6x29[_0xc605[58]]);_0xf3f6x1b[_0xc605[61]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],qs[_0xc605[62]](_0xf3f6x28[_0xc605[58]][_0xc605[62]]));_0xf3f6x1b[_0xc605[61]]= (_0xf3f6x1b[_0xc605[61]][_0xc605[63]])?_0xf3f6x1b[_0xc605[61]]:_0xf3f6x29[_0xc605[54]];_0xf3f6x1b[_0xc605[35]]= qs[_0xc605[35]](_0xf3f6x28[_0xc605[58]][_0xc605[35]]);_0xf3f6x1b[_0xc605[34]]= qs[_0xc605[34]](_0xf3f6x28[_0xc605[58]][_0xc605[34]]);_0xf3f6x1b[_0xc605[66]]= qs[_0xc605[67]](_0xf3f6x28[_0xc605[58]][_0xc605[67]]);_0xf3f6x1b[_0xc605[68]]= qs[_0xc605[59]](_[_0xc605[69]](_0xf3f6x28[_0xc605[58]],_0xf3f6x29[_0xc605[59]]));_0xf3f6x1b[_0xc605[95]]= true;if(_0xf3f6x28[_0xc605[58]][_0xc605[70]]){_0xf3f6x1b[_0xc605[68]]= _[_0xc605[73]](_0xf3f6x1b[_0xc605[68]],{$or:_[_0xc605[72]](_0xf3f6x1b[_0xc605[61]],function(_0xf3f6x2a){var _0xf3f6x2b={};_0xf3f6x2b[_0xf3f6x2a]= {$like:_0xc605[71]+ _0xf3f6x28[_0xc605[58]][_0xc605[70]]+ _0xc605[71]};return _0xf3f6x2b})})};_0xf3f6x1b= _[_0xc605[73]]({},_0xf3f6x1b,_0xf3f6x28[_0xc605[74]]);return _0xf3f6x30[_0xc605[91]](_0xf3f6x1b)}})[_0xc605[45]](function(_0xf3f6x32){if(_0xf3f6x32){var _0xf3f6x33=toCsv(_0xf3f6x32);var _0xf3f6x34=Date[_0xc605[100]]();fs[_0xc605[102]](util[_0xc605[93]](_0xc605[101],_0xf3f6x30[_0xc605[78]],_0xf3f6x34),_0xf3f6x33);_0xf3f6x15[_0xc605[106]](_0xc605[103],_0xc605[104]+ util[_0xc605[93]](_0xc605[105],_0xf3f6x30[_0xc605[78]],_0xf3f6x34));_0xf3f6x15[_0xc605[106]](_0xc605[107],_0xc605[108]);_0xf3f6x15[_0xc605[109]](util[_0xc605[93]](_0xc605[101],_0xf3f6x30[_0xc605[78]],_0xf3f6x34))}})[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[99]))};exports[_0xc605[110]]= function(_0xf3f6x28,_0xf3f6x15,_0xf3f6x2c){var _0xf3f6x35;delete _0xf3f6x28[_0xc605[82]][_0xc605[78]];return db[_0xc605[56]][_0xc605[87]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[110]))[_0xc605[45]](function(_0xf3f6x30){if(_0xf3f6x30){return db[_0xc605[123]][_0xc605[125]](function(_0xf3f6x36){return db[_0xc605[97]][_0xc605[81]](_0xf3f6x28[_0xc605[82]],{transaction:_0xf3f6x36})[_0xc605[45]](function(_0xf3f6x38){_0xf3f6x35= _0xf3f6x38;return _0xf3f6x30[_0xc605[124]](_0xf3f6x38,{transaction:_0xf3f6x36})})[_0xc605[45]](function(){var _0xf3f6x37={type:db[_0xc605[112]][_0xc605[111]],transaction:_0xf3f6x36};switch(_0xf3f6x28[_0xc605[82]][_0xc605[113]]){case _0xc605[114]:_0xf3f6x37[_0xc605[113]]= db[_0xc605[112]][_0xc605[111]];break;case _0xc605[116]:_0xf3f6x37[_0xc605[113]]= db[_0xc605[112]][_0xc605[115]];break;case _0xc605[118]:_0xf3f6x37[_0xc605[113]]= db[_0xc605[112]][_0xc605[117]];break;default:};return db[_0xc605[123]][_0xc605[122]][_0xc605[121]](_0xc605[119],util[_0xc605[93]](_0xc605[120],_0xf3f6x35[_0xc605[78]]),_0xf3f6x37)})[_0xc605[45]](function(){return _0xf3f6x35})})}})[_0xc605[45]](respondWithResult(_0xf3f6x15,null,_0xc605[110]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[110]))};exports[_0xc605[126]]= function(_0xf3f6x28,_0xf3f6x18,_0xf3f6x2c){var _0xf3f6x1b={};var _0xf3f6x29={};var _0xf3f6x2d;var _0xf3f6x1c;return db[_0xc605[56]][_0xc605[87]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x18,null,_0xc605[126]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){_0xf3f6x2d= _0xf3f6x18;_0xf3f6x29[_0xc605[54]]= _[_0xc605[57]](db[_0xc605[97]][_0xc605[55]]);_0xf3f6x29[_0xc605[58]]= _[_0xc605[57]](_0xf3f6x28[_0xc605[58]]);_0xf3f6x29[_0xc605[59]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],_0xf3f6x29[_0xc605[58]]);_0xf3f6x1b[_0xc605[61]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],qs[_0xc605[62]](_0xf3f6x28[_0xc605[58]][_0xc605[62]]));_0xf3f6x1b[_0xc605[61]]= (_0xf3f6x1b[_0xc605[61]][_0xc605[63]])?_0xf3f6x1b[_0xc605[61]]:_0xf3f6x29[_0xc605[54]];_0xf3f6x1b[_0xc605[66]]= qs[_0xc605[67]](_0xf3f6x28[_0xc605[58]][_0xc605[67]]);_0xf3f6x1b[_0xc605[68]]= qs[_0xc605[59]](_[_0xc605[69]](_0xf3f6x28[_0xc605[58]],_0xf3f6x29[_0xc605[59]]));_0xf3f6x1b[_0xc605[68]]= _[_0xc605[73]](_0xf3f6x1b[_0xc605[68]],{$or:[{ListId:_0xf3f6x18[_0xc605[78]]},{ListId:null}]});if(_0xf3f6x28[_0xc605[58]][_0xc605[70]]){_0xf3f6x1b[_0xc605[68]]= _[_0xc605[73]](_0xf3f6x1b[_0xc605[68]],{$or:_[_0xc605[72]](_0xf3f6x1b[_0xc605[61]],function(_0xf3f6x2a){var _0xf3f6x2b={};_0xf3f6x2b[_0xf3f6x2a]= {$like:_0xc605[71]+ _0xf3f6x28[_0xc605[58]][_0xc605[70]]+ _0xc605[71]};return _0xf3f6x2b})})};_0xf3f6x1b= _[_0xc605[73]]({},_0xf3f6x1b,_0xf3f6x28[_0xc605[74]]);return db[_0xc605[97]][_0xc605[76]](_0xf3f6x1b)}})[_0xc605[45]](respondWithResult(_0xf3f6x18,null,_0xc605[126]))[_0xc605[75]](handleError(_0xf3f6x18,null,_0xc605[126]))};exports[_0xc605[127]]= function(_0xf3f6x28,_0xf3f6x15,_0xf3f6x2c){return db[_0xc605[56]][_0xc605[80]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[127]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){return _0xf3f6x18[_0xc605[127]](_0xf3f6x28[_0xc605[82]][_0xc605[89]],_[_0xc605[90]](_0xf3f6x28[_0xc605[82]],[_0xc605[89],_0xc605[78]])|| {})};return null})[_0xc605[45]](respondWithResult(_0xf3f6x15,null,_0xc605[127]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[127]))};exports[_0xc605[128]]= function(_0xf3f6x28,_0xf3f6x15,_0xf3f6x2c){var _0xf3f6x2f;return db[_0xc605[56]][_0xc605[80]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x15,null,_0xc605[128]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){return _0xf3f6x18[_0xc605[128]](_0xf3f6x28[_0xc605[58]][_0xc605[89]])}})[_0xc605[45]](respondWithStatusCode(_0xf3f6x15,null,_0xc605[128]))[_0xc605[75]](handleError(_0xf3f6x15,null,_0xc605[128]))};exports[_0xc605[129]]= function(_0xf3f6x28,_0xf3f6x18,_0xf3f6x2c){var _0xf3f6x1b={};var _0xf3f6x29={};var _0xf3f6x2d;var _0xf3f6x1c;return db[_0xc605[56]][_0xc605[87]]({where:{id:_0xf3f6x28[_0xc605[79]][_0xc605[78]]}})[_0xc605[45]](handleEntityNotFound(_0xf3f6x18,null,_0xc605[129]))[_0xc605[45]](function(_0xf3f6x18){if(_0xf3f6x18){_0xf3f6x2d= _0xf3f6x18;_0xf3f6x29[_0xc605[54]]= _[_0xc605[57]](db[_0xc605[130]][_0xc605[55]]);_0xf3f6x29[_0xc605[58]]= _[_0xc605[57]](_0xf3f6x28[_0xc605[58]]);_0xf3f6x29[_0xc605[59]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],_0xf3f6x29[_0xc605[58]]);_0xf3f6x1b[_0xc605[61]]= _[_0xc605[60]](_0xf3f6x29[_0xc605[54]],qs[_0xc605[62]](_0xf3f6x28[_0xc605[58]][_0xc605[62]]));_0xf3f6x1b[_0xc605[61]]= (_0xf3f6x1b[_0xc605[61]][_0xc605[63]])?_0xf3f6x1b[_0xc605[61]]:_0xf3f6x29[_0xc605[54]];_0xf3f6x1b[_0xc605[66]]= qs[_0xc605[67]](_0xf3f6x28[_0xc605[58]][_0xc605[67]]);_0xf3f6x1b[_0xc605[68]]= qs[_0xc605[59]](_[_0xc605[69]](_0xf3f6x28[_0xc605[58]],_0xf3f6x29[_0xc605[59]]));if(_0xf3f6x28[_0xc605[58]][_0xc605[70]]){_0xf3f6x1b[_0xc605[68]]= _[_0xc605[73]](_0xf3f6x1b[_0xc605[68]],{$or:_[_0xc605[72]](_0xf3f6x1b[_0xc605[61]],function(_0xf3f6x2a){var _0xf3f6x2b={};_0xf3f6x2b[_0xf3f6x2a]= {$like:_0xc605[71]+ _0xf3f6x28[_0xc605[58]][_0xc605[70]]+ _0xc605[71]};return _0xf3f6x2b})})};_0xf3f6x1b= _[_0xc605[73]]({},_0xf3f6x1b,_0xf3f6x28[_0xc605[74]]);return _0xf3f6x2d[_0xc605[129]](_0xf3f6x1b)}})[_0xc605[45]](function(_0xf3f6x2f){if(_0xf3f6x2f){_0xf3f6x1c= _0xf3f6x2f[_0xc605[63]];if(!_0xf3f6x28[_0xc605[58]][_0xc605[65]](_0xc605[64])){_0xf3f6x1b[_0xc605[35]]= qs[_0xc605[35]](_0xf3f6x28[_0xc605[58]][_0xc605[35]]);_0xf3f6x1b[_0xc605[34]]= qs[_0xc605[34]](_0xf3f6x28[_0xc605[58]][_0xc605[34]])};return _0xf3f6x2d[_0xc605[129]](_0xf3f6x1b)}})[_0xc605[45]](function(_0xf3f6x2e){return _0xf3f6x2e?{count:_0xf3f6x1c,rows:_0xf3f6x2e}:null})[_0xc605[45]](respondWithResult(_0xf3f6x18,null,_0xc605[129]))[_0xc605[75]](handleError(_0xf3f6x18,null,_0xc605[129]))}
\ No newline at end of file
+var _0x2b27=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6D\x4C\x69\x73\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x4C\x69\x73\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x43\x6D\x4C\x69\x73\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4C\x69\x73\x74\x49\x64","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x69\x64\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x63\x66\x5F\x25\x64","\x66\x6F\x72\x6D\x61\x74","\x63\x6F\x6E\x63\x61\x74","\x72\x61\x77","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73\x43\x73\x76","\x6E\x6F\x77","\x2F\x74\x6D\x70\x2F\x6C\x69\x73\x74\x5F\x25\x64\x5F\x25\x73\x2E\x63\x73\x76","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x3B\x20\x66\x69\x6C\x65\x6E\x61\x6D\x65\x3D","\x6C\x69\x73\x74\x5F\x25\x64\x5F\x25\x73\x2E\x63\x73\x76","\x73\x65\x74\x48\x65\x61\x64\x65\x72","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x74\x79\x70\x65","\x74\x65\x78\x74\x2F\x63\x73\x76","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x61\x64\x64\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x53\x54\x52\x49\x4E\x47","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x74\x79\x70\x65","\x74\x65\x78\x74","\x49\x4E\x54\x45\x47\x45\x52","\x6E\x75\x6D\x62\x65\x72","\x42\x4F\x4F\x4C\x45\x41\x4E","\x73\x77\x69\x74\x63\x68","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x63\x66\x5F\x25\x73","\x61\x64\x64\x43\x6F\x6C\x75\x6D\x6E","\x71\x75\x65\x72\x79\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x61\x64\x64\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x55\x73\x65\x72"];_0x2b27[0];var jsonpatch=require(_0x2b27[1]);var rp=require(_0x2b27[2]);var moment=require(_0x2b27[3]);var BPromise=require(_0x2b27[4]);var util=require(_0x2b27[5]);var path=require(_0x2b27[6]);var sox=require(_0x2b27[7]);var ejs=require(_0x2b27[8]);var fs=require(_0x2b27[9]);var _=require(_0x2b27[10]);var squel=require(_0x2b27[11]);var crypto=require(_0x2b27[12]);var jsforce=require(_0x2b27[13]);var toCsv=require(_0x2b27[14]);var qs=require(_0x2b27[15]);var logger=require(_0x2b27[17])(_0x2b27[16]);var utils=require(_0x2b27[18]);var config=require(_0x2b27[19]);var db=require(_0x2b27[21])[_0x2b27[20]];function respondWithStatusCode(_0x5fcbx15,_0x5fcbx16,_0x5fcbx17){_0x5fcbx16= _0x5fcbx16|| 204;return function(_0x5fcbx18){if(_0x5fcbx18){logger[_0x2b27[24]](_0x2b27[22],_0x5fcbx17,_0x5fcbx16,_0x2b27[23]);logger[_0x2b27[26]](_0x2b27[25],_0x5fcbx17,_0x5fcbx16,_0x2b27[23]);return _0x5fcbx15[_0x2b27[27]](_0x5fcbx16)};return _0x5fcbx15[_0x2b27[29]](304)[_0x2b27[28]]()}}function respondWithResult(_0x5fcbx15,_0x5fcbx16,_0x5fcbx17){_0x5fcbx16= _0x5fcbx16|| 200;return function(_0x5fcbx18){if(_0x5fcbx18){logger[_0x2b27[24]](_0x2b27[22],_0x5fcbx17,_0x5fcbx16,_0x2b27[30]);logger[_0x2b27[26]](_0x2b27[25],_0x5fcbx17,_0x5fcbx16,_0x2b27[30],JSON[_0x2b27[31]](_0x5fcbx18));return _0x5fcbx15[_0x2b27[29]](_0x5fcbx16)[_0x2b27[32]](_0x5fcbx18)};return _0x5fcbx15[_0x2b27[29]](304)[_0x2b27[28]]()}}function respondWithFilteredResult(_0x5fcbx15,_0x5fcbx1b,_0x5fcbx17){return function(_0x5fcbx18){if(_0x5fcbx18){var _0x5fcbx1c=_0x5fcbx18[_0x2b27[33]],_0x5fcbx1d=_0x5fcbx1b[_0x2b27[34]],_0x5fcbx1e=_0x5fcbx1b[_0x2b27[34]]+ _0x5fcbx1b[_0x2b27[35]],_0x5fcbx16;if(_0x5fcbx1e>= _0x5fcbx1c){_0x5fcbx1e= _0x5fcbx1c;_0x5fcbx16= 200}else {_0x5fcbx16= 206};_0x5fcbx15[_0x2b27[29]](_0x5fcbx16);logger[_0x2b27[24]](_0x2b27[22],_0x5fcbx17,_0x5fcbx16,_0x2b27[36]);logger[_0x2b27[26]](_0x2b27[25],_0x5fcbx17,_0x5fcbx16,_0x2b27[30],JSON[_0x2b27[31]](_0x5fcbx18));return _0x5fcbx15[_0x2b27[40]](_0x2b27[37],_0x5fcbx1d+ _0x2b27[38]+ _0x5fcbx1e+ _0x2b27[39]+ _0x5fcbx1c)[_0x2b27[32]](_0x5fcbx18)};return null}}function patchUpdates(_0x5fcbx20){return function(_0x5fcbx18){try{jsonpatch[_0x2b27[41]](_0x5fcbx18,_0x5fcbx20,true)}catch(err){return BPromise[_0x2b27[42]](err)};return _0x5fcbx18[_0x2b27[43]]()}}function saveUpdates(_0x5fcbx22,_0x5fcbx16,_0x5fcbx17){return function(_0x5fcbx18){if(_0x5fcbx18){return _0x5fcbx18[_0x2b27[46]](_0x5fcbx22)[_0x2b27[45]](function(_0x5fcbx23){logger[_0x2b27[24]](_0x2b27[22],_0x5fcbx17,_0x5fcbx16,_0x2b27[44]);logger[_0x2b27[26]](_0x2b27[25],_0x5fcbx17,_0x5fcbx16,_0x2b27[44],JSON[_0x2b27[31]](_0x5fcbx18));return _0x5fcbx23})};return null}}function removeEntity(_0x5fcbx15,_0x5fcbx16,_0x5fcbx17){return function(_0x5fcbx18){if(_0x5fcbx18){return _0x5fcbx18[_0x2b27[48]]()[_0x2b27[45]](function(){logger[_0x2b27[24]](_0x2b27[22],_0x5fcbx17,_0x5fcbx16,_0x2b27[47]);logger[_0x2b27[26]](_0x2b27[25],_0x5fcbx17,_0x5fcbx16,_0x2b27[47],JSON[_0x2b27[31]](_0x5fcbx18));_0x5fcbx15[_0x2b27[29]](204)[_0x2b27[28]]()})}}}function handleEntityNotFound(_0x5fcbx15,_0x5fcbx16,_0x5fcbx17){return function(_0x5fcbx18){if(!_0x5fcbx18){logger[_0x2b27[50]](_0x2b27[22],_0x5fcbx17,404,_0x2b27[49]);_0x5fcbx15[_0x2b27[29]](404)[_0x2b27[28]]();return null};return _0x5fcbx18}}function handleError(_0x5fcbx15,_0x5fcbx16,_0x5fcbx17){_0x5fcbx16= _0x5fcbx16|| 500;return function(_0x5fcbx27){logger[_0x2b27[50]](_0x2b27[22],_0x5fcbx17,_0x5fcbx16,JSON[_0x2b27[31]](_0x5fcbx27));delete _0x5fcbx27[_0x2b27[51]];_0x5fcbx15[_0x2b27[29]](_0x5fcbx16)[_0x2b27[52]](_0x5fcbx27)}}exports[_0x2b27[53]]= function(_0x5fcbx28,_0x5fcbx15){var _0x5fcbx1b={},_0x5fcbx29={};_0x5fcbx29[_0x2b27[54]]= _[_0x2b27[57]](db[_0x2b27[56]][_0x2b27[55]]);_0x5fcbx29[_0x2b27[58]]= _[_0x2b27[57]](_0x5fcbx28[_0x2b27[58]]);_0x5fcbx29[_0x2b27[59]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],_0x5fcbx29[_0x2b27[58]]);_0x5fcbx1b[_0x2b27[61]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],qs[_0x2b27[62]](_0x5fcbx28[_0x2b27[58]][_0x2b27[62]]));_0x5fcbx1b[_0x2b27[61]]= (_0x5fcbx1b[_0x2b27[61]][_0x2b27[63]])?_0x5fcbx1b[_0x2b27[61]]:_0x5fcbx29[_0x2b27[54]];if(!_0x5fcbx28[_0x2b27[58]][_0x2b27[65]](_0x2b27[64])){_0x5fcbx1b[_0x2b27[35]]= qs[_0x2b27[35]](_0x5fcbx28[_0x2b27[58]][_0x2b27[35]]);_0x5fcbx1b[_0x2b27[34]]= qs[_0x2b27[34]](_0x5fcbx28[_0x2b27[58]][_0x2b27[34]])};_0x5fcbx1b[_0x2b27[66]]= qs[_0x2b27[67]](_0x5fcbx28[_0x2b27[58]][_0x2b27[67]]);_0x5fcbx1b[_0x2b27[68]]= qs[_0x2b27[59]](_[_0x2b27[69]](_0x5fcbx28[_0x2b27[58]],_0x5fcbx29[_0x2b27[59]]));if(_0x5fcbx28[_0x2b27[58]][_0x2b27[70]]){_0x5fcbx1b[_0x2b27[68]]= _[_0x2b27[73]](_0x5fcbx1b[_0x2b27[68]],{$or:_[_0x2b27[72]](_0x5fcbx1b[_0x2b27[61]],function(_0x5fcbx2a){var _0x5fcbx2b={};_0x5fcbx2b[_0x5fcbx2a]= {$like:_0x2b27[71]+ _0x5fcbx28[_0x2b27[58]][_0x2b27[70]]+ _0x2b27[71]};return _0x5fcbx2b})})};_0x5fcbx1b= _[_0x2b27[73]]({},_0x5fcbx1b,_0x5fcbx28[_0x2b27[74]]);return db[_0x2b27[56]][_0x2b27[76]](_0x5fcbx1b)[_0x2b27[45]](respondWithFilteredResult(_0x5fcbx15,_0x5fcbx1b,_0x2b27[53]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[53]))};exports[_0x2b27[77]]= function(_0x5fcbx28,_0x5fcbx15){var _0x5fcbx1b={raw:false,where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}},_0x5fcbx29={};_0x5fcbx29[_0x2b27[54]]= _[_0x2b27[57]](db[_0x2b27[56]][_0x2b27[55]]);_0x5fcbx29[_0x2b27[58]]= _[_0x2b27[57]](_0x5fcbx28[_0x2b27[58]]);_0x5fcbx29[_0x2b27[59]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],_0x5fcbx29[_0x2b27[58]]);_0x5fcbx1b[_0x2b27[61]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],qs[_0x2b27[62]](_0x5fcbx28[_0x2b27[58]][_0x2b27[62]]));_0x5fcbx1b[_0x2b27[61]]= (_0x5fcbx1b[_0x2b27[61]][_0x2b27[63]])?_0x5fcbx1b[_0x2b27[61]]:_0x5fcbx29[_0x2b27[54]];_0x5fcbx1b= _[_0x2b27[73]]({},_0x5fcbx1b,_0x5fcbx28[_0x2b27[74]]);return db[_0x2b27[56]][_0x2b27[80]](_0x5fcbx1b)[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[77]))[_0x2b27[45]](respondWithResult(_0x5fcbx15,null,_0x2b27[77]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[77]))};exports[_0x2b27[81]]= function(_0x5fcbx28,_0x5fcbx15){return db[_0x2b27[56]][_0x2b27[81]](_0x5fcbx28[_0x2b27[82]],{})[_0x2b27[45]](respondWithResult(_0x5fcbx15,201,_0x2b27[81]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[81]))};exports[_0x2b27[46]]= function(_0x5fcbx28,_0x5fcbx15){if(_0x5fcbx28[_0x2b27[82]][_0x2b27[78]]){delete _0x5fcbx28[_0x2b27[82]][_0x2b27[78]]};return db[_0x2b27[56]][_0x2b27[80]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[46]))[_0x2b27[45]](saveUpdates(_0x5fcbx28[_0x2b27[82]],null,_0x2b27[46]))[_0x2b27[45]](respondWithResult(_0x5fcbx15,null,_0x2b27[46]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[46]))};exports[_0x2b27[48]]= function(_0x5fcbx28,_0x5fcbx15){return db[_0x2b27[56]][_0x2b27[80]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[48]))[_0x2b27[45]](removeEntity(_0x5fcbx15,null,_0x2b27[48]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[48]))};exports[_0x2b27[83]]= function(_0x5fcbx28,_0x5fcbx15,_0x5fcbx2c){if(_0x5fcbx28[_0x2b27[82]][_0x2b27[78]]){delete _0x5fcbx28[_0x2b27[82]][_0x2b27[78]]};return db[_0x2b27[56]][_0x2b27[80]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[83]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){_0x5fcbx28[_0x2b27[82]][_0x2b27[84]]= _0x5fcbx18[_0x2b27[78]];return db[_0x2b27[85]][_0x2b27[81]](_0x5fcbx28[_0x2b27[82]])}})[_0x2b27[45]](respondWithResult(_0x5fcbx15,null,_0x2b27[83]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[83]))};exports[_0x2b27[86]]= function(_0x5fcbx28,_0x5fcbx18,_0x5fcbx2c){var _0x5fcbx1b={};var _0x5fcbx29={};var _0x5fcbx2d;var _0x5fcbx1c;return db[_0x2b27[56]][_0x2b27[87]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx18,null,_0x2b27[86]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){_0x5fcbx2d= _0x5fcbx18;_0x5fcbx29[_0x2b27[54]]= _[_0x2b27[57]](db[_0x2b27[85]][_0x2b27[55]]);_0x5fcbx29[_0x2b27[58]]= _[_0x2b27[57]](_0x5fcbx28[_0x2b27[58]]);_0x5fcbx29[_0x2b27[59]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],_0x5fcbx29[_0x2b27[58]]);_0x5fcbx1b[_0x2b27[61]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],qs[_0x2b27[62]](_0x5fcbx28[_0x2b27[58]][_0x2b27[62]]));_0x5fcbx1b[_0x2b27[61]]= (_0x5fcbx1b[_0x2b27[61]][_0x2b27[63]])?_0x5fcbx1b[_0x2b27[61]]:_0x5fcbx29[_0x2b27[54]];_0x5fcbx1b[_0x2b27[66]]= qs[_0x2b27[67]](_0x5fcbx28[_0x2b27[58]][_0x2b27[67]]);_0x5fcbx1b[_0x2b27[68]]= qs[_0x2b27[59]](_[_0x2b27[69]](_0x5fcbx28[_0x2b27[58]],_0x5fcbx29[_0x2b27[59]]));if(_0x5fcbx28[_0x2b27[58]][_0x2b27[70]]){_0x5fcbx1b[_0x2b27[68]]= _[_0x2b27[73]](_0x5fcbx1b[_0x2b27[68]],{$or:_[_0x2b27[72]](_0x5fcbx1b[_0x2b27[61]],function(_0x5fcbx2a){var _0x5fcbx2b={};_0x5fcbx2b[_0x5fcbx2a]= {$like:_0x2b27[71]+ _0x5fcbx28[_0x2b27[58]][_0x2b27[70]]+ _0x2b27[71]};return _0x5fcbx2b})})};_0x5fcbx1b= _[_0x2b27[73]]({},_0x5fcbx1b,_0x5fcbx28[_0x2b27[74]]);return _0x5fcbx2d[_0x2b27[86]](_0x5fcbx1b)}})[_0x2b27[45]](function(_0x5fcbx2f){if(_0x5fcbx2f){_0x5fcbx1c= _0x5fcbx2f[_0x2b27[63]];if(!_0x5fcbx28[_0x2b27[58]][_0x2b27[65]](_0x2b27[64])){_0x5fcbx1b[_0x2b27[35]]= qs[_0x2b27[35]](_0x5fcbx28[_0x2b27[58]][_0x2b27[35]]);_0x5fcbx1b[_0x2b27[34]]= qs[_0x2b27[34]](_0x5fcbx28[_0x2b27[58]][_0x2b27[34]])};return _0x5fcbx2d[_0x2b27[86]](_0x5fcbx1b)}})[_0x2b27[45]](function(_0x5fcbx2e){return _0x5fcbx2e?{count:_0x5fcbx1c,rows:_0x5fcbx2e}:null})[_0x2b27[45]](respondWithResult(_0x5fcbx18,null,_0x2b27[86]))[_0x2b27[75]](handleError(_0x5fcbx18,null,_0x2b27[86]))};exports[_0x2b27[88]]= function(_0x5fcbx28,_0x5fcbx15,_0x5fcbx2c){return db[_0x2b27[56]][_0x2b27[80]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[88]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){return _0x5fcbx18[_0x2b27[88]](_0x5fcbx28[_0x2b27[82]][_0x2b27[89]],_[_0x2b27[90]](_0x5fcbx28[_0x2b27[82]],[_0x2b27[89],_0x2b27[78]])|| {})};return null})[_0x2b27[45]](respondWithResult(_0x5fcbx15,null,_0x2b27[88]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[88]))};exports[_0x2b27[91]]= function(_0x5fcbx28,_0x5fcbx15,_0x5fcbx2c){var _0x5fcbx30;return db[_0x2b27[56]][_0x2b27[80]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]},include:[{model:db[_0x2b27[97]],as:_0x2b27[98]}]})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[91]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){_0x5fcbx30= _0x5fcbx18;return db[_0x2b27[96]][_0x2b27[55]]}})[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){var _0x5fcbx1b={};var _0x5fcbx29={};_0x5fcbx29[_0x2b27[54]]= _[_0x2b27[94]](_[_0x2b27[57]](_0x5fcbx18),_[_0x2b27[72]](_0x5fcbx30.CustomFields,function(_0x5fcbx31){return util[_0x2b27[93]](_0x2b27[92],_0x5fcbx31[_0x2b27[78]])}));_0x5fcbx29[_0x2b27[58]]= _[_0x2b27[57]](_0x5fcbx28[_0x2b27[58]]);_0x5fcbx29[_0x2b27[59]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],_0x5fcbx29[_0x2b27[58]]);_0x5fcbx1b[_0x2b27[61]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],qs[_0x2b27[62]](_0x5fcbx28[_0x2b27[58]][_0x2b27[62]]));_0x5fcbx1b[_0x2b27[61]]= (_0x5fcbx1b[_0x2b27[61]][_0x2b27[63]])?_0x5fcbx1b[_0x2b27[61]]:_0x5fcbx29[_0x2b27[54]];_0x5fcbx1b[_0x2b27[35]]= qs[_0x2b27[35]](_0x5fcbx28[_0x2b27[58]][_0x2b27[35]]);_0x5fcbx1b[_0x2b27[34]]= qs[_0x2b27[34]](_0x5fcbx28[_0x2b27[58]][_0x2b27[34]]);_0x5fcbx1b[_0x2b27[66]]= qs[_0x2b27[67]](_0x5fcbx28[_0x2b27[58]][_0x2b27[67]]);_0x5fcbx1b[_0x2b27[68]]= qs[_0x2b27[59]](_[_0x2b27[69]](_0x5fcbx28[_0x2b27[58]],_0x5fcbx29[_0x2b27[59]]));_0x5fcbx1b[_0x2b27[95]]= true;if(_0x5fcbx28[_0x2b27[58]][_0x2b27[70]]){_0x5fcbx1b[_0x2b27[68]]= _[_0x2b27[73]](_0x5fcbx1b[_0x2b27[68]],{$or:_[_0x2b27[72]](_0x5fcbx1b[_0x2b27[61]],function(_0x5fcbx2a){var _0x5fcbx2b={};_0x5fcbx2b[_0x5fcbx2a]= {$like:_0x2b27[71]+ _0x5fcbx28[_0x2b27[58]][_0x2b27[70]]+ _0x2b27[71]};return _0x5fcbx2b})})};_0x5fcbx1b= _[_0x2b27[73]]({},_0x5fcbx1b,_0x5fcbx28[_0x2b27[74]]);return _0x5fcbx30[_0x2b27[91]](_0x5fcbx1b)}})[_0x2b27[45]](respondWithResult(_0x5fcbx15,null,_0x2b27[91]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[91]))};exports[_0x2b27[99]]= function(_0x5fcbx28,_0x5fcbx15,_0x5fcbx2c){var _0x5fcbx30;return db[_0x2b27[56]][_0x2b27[80]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]},include:[{model:db[_0x2b27[97]],as:_0x2b27[98]}]})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[99]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){_0x5fcbx30= _0x5fcbx18;return db[_0x2b27[96]][_0x2b27[55]]}})[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){var _0x5fcbx1b={};var _0x5fcbx29={};_0x5fcbx29[_0x2b27[54]]= _[_0x2b27[94]](_[_0x2b27[57]](_0x5fcbx18),_[_0x2b27[72]](_0x5fcbx30.CustomFields,function(_0x5fcbx31){return util[_0x2b27[93]](_0x2b27[92],_0x5fcbx31[_0x2b27[78]])}));_0x5fcbx29[_0x2b27[58]]= _[_0x2b27[57]](_0x5fcbx28[_0x2b27[58]]);_0x5fcbx29[_0x2b27[59]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],_0x5fcbx29[_0x2b27[58]]);_0x5fcbx1b[_0x2b27[61]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],qs[_0x2b27[62]](_0x5fcbx28[_0x2b27[58]][_0x2b27[62]]));_0x5fcbx1b[_0x2b27[61]]= (_0x5fcbx1b[_0x2b27[61]][_0x2b27[63]])?_0x5fcbx1b[_0x2b27[61]]:_0x5fcbx29[_0x2b27[54]];_0x5fcbx1b[_0x2b27[35]]= qs[_0x2b27[35]](_0x5fcbx28[_0x2b27[58]][_0x2b27[35]]);_0x5fcbx1b[_0x2b27[34]]= qs[_0x2b27[34]](_0x5fcbx28[_0x2b27[58]][_0x2b27[34]]);_0x5fcbx1b[_0x2b27[66]]= qs[_0x2b27[67]](_0x5fcbx28[_0x2b27[58]][_0x2b27[67]]);_0x5fcbx1b[_0x2b27[68]]= qs[_0x2b27[59]](_[_0x2b27[69]](_0x5fcbx28[_0x2b27[58]],_0x5fcbx29[_0x2b27[59]]));_0x5fcbx1b[_0x2b27[95]]= true;if(_0x5fcbx28[_0x2b27[58]][_0x2b27[70]]){_0x5fcbx1b[_0x2b27[68]]= _[_0x2b27[73]](_0x5fcbx1b[_0x2b27[68]],{$or:_[_0x2b27[72]](_0x5fcbx1b[_0x2b27[61]],function(_0x5fcbx2a){var _0x5fcbx2b={};_0x5fcbx2b[_0x5fcbx2a]= {$like:_0x2b27[71]+ _0x5fcbx28[_0x2b27[58]][_0x2b27[70]]+ _0x2b27[71]};return _0x5fcbx2b})})};_0x5fcbx1b= _[_0x2b27[73]]({},_0x5fcbx1b,_0x5fcbx28[_0x2b27[74]]);return _0x5fcbx30[_0x2b27[91]](_0x5fcbx1b)}})[_0x2b27[45]](function(_0x5fcbx32){if(_0x5fcbx32){var _0x5fcbx33=toCsv(_0x5fcbx32);var _0x5fcbx34=Date[_0x2b27[100]]();fs[_0x2b27[102]](util[_0x2b27[93]](_0x2b27[101],_0x5fcbx30[_0x2b27[78]],_0x5fcbx34),_0x5fcbx33);_0x5fcbx15[_0x2b27[106]](_0x2b27[103],_0x2b27[104]+ util[_0x2b27[93]](_0x2b27[105],_0x5fcbx30[_0x2b27[78]],_0x5fcbx34));_0x5fcbx15[_0x2b27[106]](_0x2b27[107],_0x2b27[108]);_0x5fcbx15[_0x2b27[109]](util[_0x2b27[93]](_0x2b27[101],_0x5fcbx30[_0x2b27[78]],_0x5fcbx34))}})[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[99]))};exports[_0x2b27[110]]= function(_0x5fcbx28,_0x5fcbx15,_0x5fcbx2c){var _0x5fcbx35;delete _0x5fcbx28[_0x2b27[82]][_0x2b27[78]];return db[_0x2b27[56]][_0x2b27[87]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[110]))[_0x2b27[45]](function(_0x5fcbx30){if(_0x5fcbx30){return db[_0x2b27[123]][_0x2b27[125]](function(_0x5fcbx36){return db[_0x2b27[97]][_0x2b27[81]](_0x5fcbx28[_0x2b27[82]],{transaction:_0x5fcbx36})[_0x2b27[45]](function(_0x5fcbx38){_0x5fcbx35= _0x5fcbx38;return _0x5fcbx30[_0x2b27[124]](_0x5fcbx38,{transaction:_0x5fcbx36})})[_0x2b27[45]](function(){var _0x5fcbx37={type:db[_0x2b27[112]][_0x2b27[111]],transaction:_0x5fcbx36};switch(_0x5fcbx28[_0x2b27[82]][_0x2b27[113]]){case _0x2b27[114]:_0x5fcbx37[_0x2b27[113]]= db[_0x2b27[112]][_0x2b27[111]];break;case _0x2b27[116]:_0x5fcbx37[_0x2b27[113]]= db[_0x2b27[112]][_0x2b27[115]];break;case _0x2b27[118]:_0x5fcbx37[_0x2b27[113]]= db[_0x2b27[112]][_0x2b27[117]];break;default:};return db[_0x2b27[123]][_0x2b27[122]][_0x2b27[121]](_0x2b27[119],util[_0x2b27[93]](_0x2b27[120],_0x5fcbx35[_0x2b27[78]]),_0x5fcbx37)})[_0x2b27[45]](function(){return _0x5fcbx35})})}})[_0x2b27[45]](respondWithResult(_0x5fcbx15,null,_0x2b27[110]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[110]))};exports[_0x2b27[126]]= function(_0x5fcbx28,_0x5fcbx18,_0x5fcbx2c){var _0x5fcbx1b={};var _0x5fcbx29={};var _0x5fcbx2d;var _0x5fcbx1c;return db[_0x2b27[56]][_0x2b27[87]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx18,null,_0x2b27[126]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){_0x5fcbx2d= _0x5fcbx18;_0x5fcbx29[_0x2b27[54]]= _[_0x2b27[57]](db[_0x2b27[97]][_0x2b27[55]]);_0x5fcbx29[_0x2b27[58]]= _[_0x2b27[57]](_0x5fcbx28[_0x2b27[58]]);_0x5fcbx29[_0x2b27[59]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],_0x5fcbx29[_0x2b27[58]]);_0x5fcbx1b[_0x2b27[61]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],qs[_0x2b27[62]](_0x5fcbx28[_0x2b27[58]][_0x2b27[62]]));_0x5fcbx1b[_0x2b27[61]]= (_0x5fcbx1b[_0x2b27[61]][_0x2b27[63]])?_0x5fcbx1b[_0x2b27[61]]:_0x5fcbx29[_0x2b27[54]];_0x5fcbx1b[_0x2b27[66]]= qs[_0x2b27[67]](_0x5fcbx28[_0x2b27[58]][_0x2b27[67]]);_0x5fcbx1b[_0x2b27[68]]= qs[_0x2b27[59]](_[_0x2b27[69]](_0x5fcbx28[_0x2b27[58]],_0x5fcbx29[_0x2b27[59]]));_0x5fcbx1b[_0x2b27[68]]= _[_0x2b27[73]](_0x5fcbx1b[_0x2b27[68]],{$or:[{ListId:_0x5fcbx18[_0x2b27[78]]},{ListId:null}]});if(_0x5fcbx28[_0x2b27[58]][_0x2b27[70]]){_0x5fcbx1b[_0x2b27[68]]= _[_0x2b27[73]](_0x5fcbx1b[_0x2b27[68]],{$or:_[_0x2b27[72]](_0x5fcbx1b[_0x2b27[61]],function(_0x5fcbx2a){var _0x5fcbx2b={};_0x5fcbx2b[_0x5fcbx2a]= {$like:_0x2b27[71]+ _0x5fcbx28[_0x2b27[58]][_0x2b27[70]]+ _0x2b27[71]};return _0x5fcbx2b})})};_0x5fcbx1b= _[_0x2b27[73]]({},_0x5fcbx1b,_0x5fcbx28[_0x2b27[74]]);return db[_0x2b27[97]][_0x2b27[76]](_0x5fcbx1b)}})[_0x2b27[45]](respondWithResult(_0x5fcbx18,null,_0x2b27[126]))[_0x2b27[75]](handleError(_0x5fcbx18,null,_0x2b27[126]))};exports[_0x2b27[127]]= function(_0x5fcbx28,_0x5fcbx15,_0x5fcbx2c){return db[_0x2b27[56]][_0x2b27[80]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[127]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){return _0x5fcbx18[_0x2b27[127]](_0x5fcbx28[_0x2b27[82]][_0x2b27[89]],_[_0x2b27[90]](_0x5fcbx28[_0x2b27[82]],[_0x2b27[89],_0x2b27[78]])|| {})};return null})[_0x2b27[45]](respondWithResult(_0x5fcbx15,null,_0x2b27[127]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[127]))};exports[_0x2b27[128]]= function(_0x5fcbx28,_0x5fcbx15,_0x5fcbx2c){var _0x5fcbx2f;return db[_0x2b27[56]][_0x2b27[80]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx15,null,_0x2b27[128]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){return _0x5fcbx18[_0x2b27[128]](_0x5fcbx28[_0x2b27[58]][_0x2b27[89]])}})[_0x2b27[45]](respondWithStatusCode(_0x5fcbx15,null,_0x2b27[128]))[_0x2b27[75]](handleError(_0x5fcbx15,null,_0x2b27[128]))};exports[_0x2b27[129]]= function(_0x5fcbx28,_0x5fcbx18,_0x5fcbx2c){var _0x5fcbx1b={};var _0x5fcbx29={};var _0x5fcbx2d;var _0x5fcbx1c;return db[_0x2b27[56]][_0x2b27[87]]({where:{id:_0x5fcbx28[_0x2b27[79]][_0x2b27[78]]}})[_0x2b27[45]](handleEntityNotFound(_0x5fcbx18,null,_0x2b27[129]))[_0x2b27[45]](function(_0x5fcbx18){if(_0x5fcbx18){_0x5fcbx2d= _0x5fcbx18;_0x5fcbx29[_0x2b27[54]]= _[_0x2b27[57]](db[_0x2b27[130]][_0x2b27[55]]);_0x5fcbx29[_0x2b27[58]]= _[_0x2b27[57]](_0x5fcbx28[_0x2b27[58]]);_0x5fcbx29[_0x2b27[59]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],_0x5fcbx29[_0x2b27[58]]);_0x5fcbx1b[_0x2b27[61]]= _[_0x2b27[60]](_0x5fcbx29[_0x2b27[54]],qs[_0x2b27[62]](_0x5fcbx28[_0x2b27[58]][_0x2b27[62]]));_0x5fcbx1b[_0x2b27[61]]= (_0x5fcbx1b[_0x2b27[61]][_0x2b27[63]])?_0x5fcbx1b[_0x2b27[61]]:_0x5fcbx29[_0x2b27[54]];_0x5fcbx1b[_0x2b27[66]]= qs[_0x2b27[67]](_0x5fcbx28[_0x2b27[58]][_0x2b27[67]]);_0x5fcbx1b[_0x2b27[68]]= qs[_0x2b27[59]](_[_0x2b27[69]](_0x5fcbx28[_0x2b27[58]],_0x5fcbx29[_0x2b27[59]]));if(_0x5fcbx28[_0x2b27[58]][_0x2b27[70]]){_0x5fcbx1b[_0x2b27[68]]= _[_0x2b27[73]](_0x5fcbx1b[_0x2b27[68]],{$or:_[_0x2b27[72]](_0x5fcbx1b[_0x2b27[61]],function(_0x5fcbx2a){var _0x5fcbx2b={};_0x5fcbx2b[_0x5fcbx2a]= {$like:_0x2b27[71]+ _0x5fcbx28[_0x2b27[58]][_0x2b27[70]]+ _0x2b27[71]};return _0x5fcbx2b})})};_0x5fcbx1b= _[_0x2b27[73]]({},_0x5fcbx1b,_0x5fcbx28[_0x2b27[74]]);return _0x5fcbx2d[_0x2b27[129]](_0x5fcbx1b)}})[_0x2b27[45]](function(_0x5fcbx2f){if(_0x5fcbx2f){_0x5fcbx1c= _0x5fcbx2f[_0x2b27[63]];if(!_0x5fcbx28[_0x2b27[58]][_0x2b27[65]](_0x2b27[64])){_0x5fcbx1b[_0x2b27[35]]= qs[_0x2b27[35]](_0x5fcbx28[_0x2b27[58]][_0x2b27[35]]);_0x5fcbx1b[_0x2b27[34]]= qs[_0x2b27[34]](_0x5fcbx28[_0x2b27[58]][_0x2b27[34]])};return _0x5fcbx2d[_0x2b27[129]](_0x5fcbx1b)}})[_0x2b27[45]](function(_0x5fcbx2e){return _0x5fcbx2e?{count:_0x5fcbx1c,rows:_0x5fcbx2e}:null})[_0x2b27[45]](respondWithResult(_0x5fcbx18,null,_0x2b27[129]))[_0x2b27[75]](handleError(_0x5fcbx18,null,_0x2b27[129]))}
\ No newline at end of file
index 68caa1a..ab92555 100644 (file)
@@ -1 +1 @@
-var _0xc227=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x4C\x69\x73\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x4C\x69\x73\x74","\x63\x6D\x5F\x6C\x69\x73\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xc227[0];var _=require(_0xc227[1]);var util=require(_0xc227[2]);var logger=require(_0xc227[4])(_0xc227[3]);var attributes=require(_0xc227[5]);module[_0xc227[6]]= function(_0xb99cx5,_0xb99cx6){return _0xb99cx5[_0xc227[9]](_0xc227[7],attributes,{tableName:_0xc227[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xfd75=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6D\x4C\x69\x73\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6D\x4C\x69\x73\x74","\x63\x6D\x5F\x6C\x69\x73\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xfd75[0];var _=require(_0xfd75[1]);var util=require(_0xfd75[2]);var logger=require(_0xfd75[4])(_0xfd75[3]);var attributes=require(_0xfd75[5]);module[_0xfd75[6]]= function(_0xb3b1x5,_0xb3b1x6){return _0xb3b1x5[_0xfd75[9]](_0xfd75[7],attributes,{tableName:_0xfd75[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5871f1c..6232c5e 100644 (file)
@@ -1 +1 @@
-var _0xb1d1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x4C\x69\x73\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x4C\x69\x73\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xb1d1[0];var _=require(_0xb1d1[1]);var util=require(_0xb1d1[2]);var moment=require(_0xb1d1[3]);var BPromise=require(_0xb1d1[4]);var db=require(_0xb1d1[6])[_0xb1d1[5]];var utils=require(_0xb1d1[7]);var logger=require(_0xb1d1[9])(_0xb1d1[8]);var jayson=require(_0xb1d1[10]);var client=jayson[_0xb1d1[12]][_0xb1d1[11]]({port:9002});function respondWithRpcPromise(_0x80fdxb,_0x80fdxc,_0x80fdxd){return  new BPromise(function(_0x80fdxe,_0x80fdxf){return client[_0xb1d1[25]](_0x80fdxb,_0x80fdxd)[_0xb1d1[24]](function(_0x80fdx11){logger[_0xb1d1[17]](_0xb1d1[13],_0x80fdxc,_0xb1d1[16]);logger[_0xb1d1[20]](_0xb1d1[18],_0x80fdxc,_0xb1d1[16],JSON[_0xb1d1[19]](_0x80fdx11));if(_0x80fdx11[_0xb1d1[14]]){if(_0x80fdx11[_0xb1d1[14]][_0xb1d1[21]]=== 500){logger[_0xb1d1[14]](_0xb1d1[13],_0x80fdxc,_0x80fdx11[_0xb1d1[14]][_0xb1d1[22]]);return _0x80fdxf(_0x80fdx11[_0xb1d1[14]][_0xb1d1[22]])};logger[_0xb1d1[14]](_0xb1d1[13],_0x80fdxc,_0x80fdx11[_0xb1d1[14]][_0xb1d1[22]]);return _0x80fdxe(_0x80fdx11[_0xb1d1[14]][_0xb1d1[22]])}else {logger[_0xb1d1[17]](_0xb1d1[13],_0x80fdxc,_0xb1d1[16]);_0x80fdxe(_0x80fdx11[_0xb1d1[23]][_0xb1d1[22]])}})[_0xb1d1[15]](function(_0x80fdx10){logger[_0xb1d1[14]](_0xb1d1[13],_0x80fdxc,_0x80fdx10);_0x80fdxf(_0x80fdx10)})})}
\ No newline at end of file
+var _0x2919=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6D\x4C\x69\x73\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6D\x4C\x69\x73\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2919[0];var _=require(_0x2919[1]);var util=require(_0x2919[2]);var moment=require(_0x2919[3]);var BPromise=require(_0x2919[4]);var db=require(_0x2919[6])[_0x2919[5]];var utils=require(_0x2919[7]);var logger=require(_0x2919[9])(_0x2919[8]);var jayson=require(_0x2919[10]);var client=jayson[_0x2919[12]][_0x2919[11]]({port:9002});function respondWithRpcPromise(_0x5e5dxb,_0x5e5dxc,_0x5e5dxd){return  new BPromise(function(_0x5e5dxe,_0x5e5dxf){return client[_0x2919[25]](_0x5e5dxb,_0x5e5dxd)[_0x2919[24]](function(_0x5e5dx11){logger[_0x2919[17]](_0x2919[13],_0x5e5dxc,_0x2919[16]);logger[_0x2919[20]](_0x2919[18],_0x5e5dxc,_0x2919[16],JSON[_0x2919[19]](_0x5e5dx11));if(_0x5e5dx11[_0x2919[14]]){if(_0x5e5dx11[_0x2919[14]][_0x2919[21]]=== 500){logger[_0x2919[14]](_0x2919[13],_0x5e5dxc,_0x5e5dx11[_0x2919[14]][_0x2919[22]]);return _0x5e5dxf(_0x5e5dx11[_0x2919[14]][_0x2919[22]])};logger[_0x2919[14]](_0x2919[13],_0x5e5dxc,_0x5e5dx11[_0x2919[14]][_0x2919[22]]);return _0x5e5dxe(_0x5e5dx11[_0x2919[14]][_0x2919[22]])}else {logger[_0x2919[17]](_0x2919[13],_0x5e5dxc,_0x2919[16]);_0x5e5dxe(_0x5e5dx11[_0x2919[23]][_0x2919[22]])}})[_0x2919[15]](function(_0x5e5dx10){logger[_0x2919[14]](_0x2919[13],_0x5e5dxc,_0x5e5dx10);_0x5e5dxf(_0x5e5dx10)})})}
\ No newline at end of file
index d790313..f3877bb 100644 (file)
@@ -1 +1 @@
-var _0x4c9b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x4C\x69\x73\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73\x2F\x63\x73\x76","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73\x43\x73\x76","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x61\x64\x64\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x4c9b[0];var multer=require(_0x4c9b[1]);var util=require(_0x4c9b[2]);var path=require(_0x4c9b[3]);var express=require(_0x4c9b[4]);var router=express.Router();var auth=require(_0x4c9b[5]);var config=require(_0x4c9b[6]);var controller=require(_0x4c9b[7]);router[_0x4c9b[11]](_0x4c9b[8],auth[_0x4c9b[9]](),controller[_0x4c9b[10]]);router[_0x4c9b[11]](_0x4c9b[12],auth[_0x4c9b[9]](),controller[_0x4c9b[13]]);router[_0x4c9b[11]](_0x4c9b[14],auth[_0x4c9b[9]](),controller[_0x4c9b[15]]);router[_0x4c9b[11]](_0x4c9b[16],auth[_0x4c9b[9]](),controller[_0x4c9b[17]]);router[_0x4c9b[11]](_0x4c9b[18],controller[_0x4c9b[19]]);router[_0x4c9b[11]](_0x4c9b[20],auth[_0x4c9b[9]](),controller[_0x4c9b[21]]);router[_0x4c9b[11]](_0x4c9b[22],auth[_0x4c9b[9]](),controller[_0x4c9b[23]]);router[_0x4c9b[25]](_0x4c9b[8],auth[_0x4c9b[9]](),controller[_0x4c9b[24]]);router[_0x4c9b[25]](_0x4c9b[14],auth[_0x4c9b[9]](),controller[_0x4c9b[26]]);router[_0x4c9b[25]](_0x4c9b[16],auth[_0x4c9b[9]](),controller[_0x4c9b[27]]);router[_0x4c9b[25]](_0x4c9b[20],auth[_0x4c9b[9]](),controller[_0x4c9b[28]]);router[_0x4c9b[25]](_0x4c9b[22],auth[_0x4c9b[9]](),controller[_0x4c9b[29]]);router[_0x4c9b[31]](_0x4c9b[12],auth[_0x4c9b[9]](),controller[_0x4c9b[30]]);router[_0x4c9b[33]](_0x4c9b[12],auth[_0x4c9b[9]](),controller[_0x4c9b[32]]);router[_0x4c9b[33]](_0x4c9b[22],auth[_0x4c9b[9]](),controller[_0x4c9b[34]]);module[_0x4c9b[35]]= router
\ No newline at end of file
+var _0xac1e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6D\x4C\x69\x73\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73\x2F\x63\x73\x76","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73\x43\x73\x76","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x61\x64\x64\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xac1e[0];var multer=require(_0xac1e[1]);var util=require(_0xac1e[2]);var path=require(_0xac1e[3]);var express=require(_0xac1e[4]);var router=express.Router();var auth=require(_0xac1e[5]);var config=require(_0xac1e[6]);var controller=require(_0xac1e[7]);router[_0xac1e[11]](_0xac1e[8],auth[_0xac1e[9]](),controller[_0xac1e[10]]);router[_0xac1e[11]](_0xac1e[12],auth[_0xac1e[9]](),controller[_0xac1e[13]]);router[_0xac1e[11]](_0xac1e[14],auth[_0xac1e[9]](),controller[_0xac1e[15]]);router[_0xac1e[11]](_0xac1e[16],auth[_0xac1e[9]](),controller[_0xac1e[17]]);router[_0xac1e[11]](_0xac1e[18],controller[_0xac1e[19]]);router[_0xac1e[11]](_0xac1e[20],auth[_0xac1e[9]](),controller[_0xac1e[21]]);router[_0xac1e[11]](_0xac1e[22],auth[_0xac1e[9]](),controller[_0xac1e[23]]);router[_0xac1e[25]](_0xac1e[8],auth[_0xac1e[9]](),controller[_0xac1e[24]]);router[_0xac1e[25]](_0xac1e[14],auth[_0xac1e[9]](),controller[_0xac1e[26]]);router[_0xac1e[25]](_0xac1e[16],auth[_0xac1e[9]](),controller[_0xac1e[27]]);router[_0xac1e[25]](_0xac1e[20],auth[_0xac1e[9]](),controller[_0xac1e[28]]);router[_0xac1e[25]](_0xac1e[22],auth[_0xac1e[9]](),controller[_0xac1e[29]]);router[_0xac1e[31]](_0xac1e[12],auth[_0xac1e[9]](),controller[_0xac1e[30]]);router[_0xac1e[33]](_0xac1e[12],auth[_0xac1e[9]](),controller[_0xac1e[32]]);router[_0xac1e[33]](_0xac1e[22],auth[_0xac1e[9]](),controller[_0xac1e[34]]);module[_0xac1e[35]]= router
\ No newline at end of file
index f03547f..aeb42e9 100644 (file)
@@ -1 +1 @@
-var _0x3890=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x66\x69\x65\x6C\x64","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47"];_0x3890[0];var Sequelize=require(_0x3890[1]);module[_0x3890[2]]= {name:{type:Sequelize[_0x3890[3]],get:function(_0x39d5x2){return this[_0x3890[5]](_0x3890[4])}},field:{type:Sequelize[_0x3890[6]],allowNull:false},operator:{type:Sequelize[_0x3890[6]],allowNull:false},value:{type:Sequelize[_0x3890[6]],allowNull:false}}
\ No newline at end of file
+var _0x6fef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x66\x69\x65\x6C\x64","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47"];_0x6fef[0];var Sequelize=require(_0x6fef[1]);module[_0x6fef[2]]= {name:{type:Sequelize[_0x6fef[3]],get:function(_0x1d42x2){return this[_0x6fef[5]](_0x6fef[4])}},field:{type:Sequelize[_0x6fef[6]],allowNull:false},operator:{type:Sequelize[_0x6fef[6]],allowNull:false},value:{type:Sequelize[_0x6fef[6]],allowNull:false}}
\ No newline at end of file
index e994476..fce5bd0 100644 (file)
@@ -1 +1 @@
-var _0x1c02=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x64","\x62\x6F\x64\x79","\x63\x61\x74\x63\x68","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E"];_0x1c02[0];var jsonpatch=require(_0x1c02[1]);var rp=require(_0x1c02[2]);var moment=require(_0x1c02[3]);var BPromise=require(_0x1c02[4]);var util=require(_0x1c02[5]);var path=require(_0x1c02[6]);var sox=require(_0x1c02[7]);var ejs=require(_0x1c02[8]);var fs=require(_0x1c02[9]);var _=require(_0x1c02[10]);var squel=require(_0x1c02[11]);var crypto=require(_0x1c02[12]);var jsforce=require(_0x1c02[13]);var toCsv=require(_0x1c02[14]);var qs=require(_0x1c02[15]);var logger=require(_0x1c02[17])(_0x1c02[16]);var utils=require(_0x1c02[18]);var config=require(_0x1c02[19]);var db=require(_0x1c02[21])[_0x1c02[20]];function respondWithStatusCode(_0xadb9x15,_0xadb9x16,_0xadb9x17){_0xadb9x16= _0xadb9x16|| 204;return function(_0xadb9x18){if(_0xadb9x18){logger[_0x1c02[24]](_0x1c02[22],_0xadb9x17,_0xadb9x16,_0x1c02[23]);logger[_0x1c02[26]](_0x1c02[25],_0xadb9x17,_0xadb9x16,_0x1c02[23]);return _0xadb9x15[_0x1c02[27]](_0xadb9x16)};return _0xadb9x15[_0x1c02[29]](304)[_0x1c02[28]]()}}function respondWithResult(_0xadb9x15,_0xadb9x16,_0xadb9x17){_0xadb9x16= _0xadb9x16|| 200;return function(_0xadb9x18){if(_0xadb9x18){logger[_0x1c02[24]](_0x1c02[22],_0xadb9x17,_0xadb9x16,_0x1c02[30]);logger[_0x1c02[26]](_0x1c02[25],_0xadb9x17,_0xadb9x16,_0x1c02[30],JSON[_0x1c02[31]](_0xadb9x18));return _0xadb9x15[_0x1c02[29]](_0xadb9x16)[_0x1c02[32]](_0xadb9x18)};return _0xadb9x15[_0x1c02[29]](304)[_0x1c02[28]]()}}function respondWithFilteredResult(_0xadb9x15,_0xadb9x1b,_0xadb9x17){return function(_0xadb9x18){if(_0xadb9x18){var _0xadb9x1c=_0xadb9x18[_0x1c02[33]],_0xadb9x1d=_0xadb9x1b[_0x1c02[34]],_0xadb9x1e=_0xadb9x1b[_0x1c02[34]]+ _0xadb9x1b[_0x1c02[35]],_0xadb9x16;if(_0xadb9x1e>= _0xadb9x1c){_0xadb9x1e= _0xadb9x1c;_0xadb9x16= 200}else {_0xadb9x16= 206};_0xadb9x15[_0x1c02[29]](_0xadb9x16);logger[_0x1c02[24]](_0x1c02[22],_0xadb9x17,_0xadb9x16,_0x1c02[36]);logger[_0x1c02[26]](_0x1c02[25],_0xadb9x17,_0xadb9x16,_0x1c02[30],JSON[_0x1c02[31]](_0xadb9x18));return _0xadb9x15[_0x1c02[40]](_0x1c02[37],_0xadb9x1d+ _0x1c02[38]+ _0xadb9x1e+ _0x1c02[39]+ _0xadb9x1c)[_0x1c02[32]](_0xadb9x18)};return null}}function patchUpdates(_0xadb9x20){return function(_0xadb9x18){try{jsonpatch[_0x1c02[41]](_0xadb9x18,_0xadb9x20,true)}catch(err){return BPromise[_0x1c02[42]](err)};return _0xadb9x18[_0x1c02[43]]()}}function saveUpdates(_0xadb9x22,_0xadb9x16,_0xadb9x17){return function(_0xadb9x18){if(_0xadb9x18){return _0xadb9x18[_0x1c02[46]](_0xadb9x22)[_0x1c02[45]](function(_0xadb9x23){logger[_0x1c02[24]](_0x1c02[22],_0xadb9x17,_0xadb9x16,_0x1c02[44]);logger[_0x1c02[26]](_0x1c02[25],_0xadb9x17,_0xadb9x16,_0x1c02[44],JSON[_0x1c02[31]](_0xadb9x18));return _0xadb9x23})};return null}}function removeEntity(_0xadb9x15,_0xadb9x16,_0xadb9x17){return function(_0xadb9x18){if(_0xadb9x18){return _0xadb9x18[_0x1c02[48]]()[_0x1c02[45]](function(){logger[_0x1c02[24]](_0x1c02[22],_0xadb9x17,_0xadb9x16,_0x1c02[47]);logger[_0x1c02[26]](_0x1c02[25],_0xadb9x17,_0xadb9x16,_0x1c02[47],JSON[_0x1c02[31]](_0xadb9x18));_0xadb9x15[_0x1c02[29]](204)[_0x1c02[28]]()})}}}function handleEntityNotFound(_0xadb9x15,_0xadb9x16,_0xadb9x17){return function(_0xadb9x18){if(!_0xadb9x18){logger[_0x1c02[50]](_0x1c02[22],_0xadb9x17,404,_0x1c02[49]);_0xadb9x15[_0x1c02[29]](404)[_0x1c02[28]]();return null};return _0xadb9x18}}function handleError(_0xadb9x15,_0xadb9x16,_0xadb9x17){_0xadb9x16= _0xadb9x16|| 500;return function(_0xadb9x27){logger[_0x1c02[50]](_0x1c02[22],_0xadb9x17,_0xadb9x16,JSON[_0x1c02[31]](_0xadb9x27));delete _0xadb9x27[_0x1c02[51]];_0xadb9x15[_0x1c02[29]](_0xadb9x16)[_0x1c02[52]](_0xadb9x27)}}exports[_0x1c02[46]]= function(_0xadb9x28,_0xadb9x15){if(_0xadb9x28[_0x1c02[54]][_0x1c02[53]]){delete _0xadb9x28[_0x1c02[54]][_0x1c02[53]]};return db[_0x1c02[58]][_0x1c02[57]]({where:{id:_0xadb9x28[_0x1c02[56]][_0x1c02[53]]}})[_0x1c02[45]](handleEntityNotFound(_0xadb9x15,null,_0x1c02[46]))[_0x1c02[45]](saveUpdates(_0xadb9x28[_0x1c02[54]],null,_0x1c02[46]))[_0x1c02[45]](respondWithResult(_0xadb9x15,null,_0x1c02[46]))[_0x1c02[55]](handleError(_0xadb9x15,null,_0x1c02[46]))};exports[_0x1c02[48]]= function(_0xadb9x28,_0xadb9x15){return db[_0x1c02[58]][_0x1c02[57]]({where:{id:_0xadb9x28[_0x1c02[56]][_0x1c02[53]]}})[_0x1c02[45]](handleEntityNotFound(_0xadb9x15,null,_0x1c02[48]))[_0x1c02[45]](removeEntity(_0xadb9x15,null,_0x1c02[48]))[_0x1c02[55]](handleError(_0xadb9x15,null,_0x1c02[48]))}
\ No newline at end of file
+var _0xbc06=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x64","\x62\x6F\x64\x79","\x63\x61\x74\x63\x68","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E"];_0xbc06[0];var jsonpatch=require(_0xbc06[1]);var rp=require(_0xbc06[2]);var moment=require(_0xbc06[3]);var BPromise=require(_0xbc06[4]);var util=require(_0xbc06[5]);var path=require(_0xbc06[6]);var sox=require(_0xbc06[7]);var ejs=require(_0xbc06[8]);var fs=require(_0xbc06[9]);var _=require(_0xbc06[10]);var squel=require(_0xbc06[11]);var crypto=require(_0xbc06[12]);var jsforce=require(_0xbc06[13]);var toCsv=require(_0xbc06[14]);var qs=require(_0xbc06[15]);var logger=require(_0xbc06[17])(_0xbc06[16]);var utils=require(_0xbc06[18]);var config=require(_0xbc06[19]);var db=require(_0xbc06[21])[_0xbc06[20]];function respondWithStatusCode(_0x44a2x15,_0x44a2x16,_0x44a2x17){_0x44a2x16= _0x44a2x16|| 204;return function(_0x44a2x18){if(_0x44a2x18){logger[_0xbc06[24]](_0xbc06[22],_0x44a2x17,_0x44a2x16,_0xbc06[23]);logger[_0xbc06[26]](_0xbc06[25],_0x44a2x17,_0x44a2x16,_0xbc06[23]);return _0x44a2x15[_0xbc06[27]](_0x44a2x16)};return _0x44a2x15[_0xbc06[29]](304)[_0xbc06[28]]()}}function respondWithResult(_0x44a2x15,_0x44a2x16,_0x44a2x17){_0x44a2x16= _0x44a2x16|| 200;return function(_0x44a2x18){if(_0x44a2x18){logger[_0xbc06[24]](_0xbc06[22],_0x44a2x17,_0x44a2x16,_0xbc06[30]);logger[_0xbc06[26]](_0xbc06[25],_0x44a2x17,_0x44a2x16,_0xbc06[30],JSON[_0xbc06[31]](_0x44a2x18));return _0x44a2x15[_0xbc06[29]](_0x44a2x16)[_0xbc06[32]](_0x44a2x18)};return _0x44a2x15[_0xbc06[29]](304)[_0xbc06[28]]()}}function respondWithFilteredResult(_0x44a2x15,_0x44a2x1b,_0x44a2x17){return function(_0x44a2x18){if(_0x44a2x18){var _0x44a2x1c=_0x44a2x18[_0xbc06[33]],_0x44a2x1d=_0x44a2x1b[_0xbc06[34]],_0x44a2x1e=_0x44a2x1b[_0xbc06[34]]+ _0x44a2x1b[_0xbc06[35]],_0x44a2x16;if(_0x44a2x1e>= _0x44a2x1c){_0x44a2x1e= _0x44a2x1c;_0x44a2x16= 200}else {_0x44a2x16= 206};_0x44a2x15[_0xbc06[29]](_0x44a2x16);logger[_0xbc06[24]](_0xbc06[22],_0x44a2x17,_0x44a2x16,_0xbc06[36]);logger[_0xbc06[26]](_0xbc06[25],_0x44a2x17,_0x44a2x16,_0xbc06[30],JSON[_0xbc06[31]](_0x44a2x18));return _0x44a2x15[_0xbc06[40]](_0xbc06[37],_0x44a2x1d+ _0xbc06[38]+ _0x44a2x1e+ _0xbc06[39]+ _0x44a2x1c)[_0xbc06[32]](_0x44a2x18)};return null}}function patchUpdates(_0x44a2x20){return function(_0x44a2x18){try{jsonpatch[_0xbc06[41]](_0x44a2x18,_0x44a2x20,true)}catch(err){return BPromise[_0xbc06[42]](err)};return _0x44a2x18[_0xbc06[43]]()}}function saveUpdates(_0x44a2x22,_0x44a2x16,_0x44a2x17){return function(_0x44a2x18){if(_0x44a2x18){return _0x44a2x18[_0xbc06[46]](_0x44a2x22)[_0xbc06[45]](function(_0x44a2x23){logger[_0xbc06[24]](_0xbc06[22],_0x44a2x17,_0x44a2x16,_0xbc06[44]);logger[_0xbc06[26]](_0xbc06[25],_0x44a2x17,_0x44a2x16,_0xbc06[44],JSON[_0xbc06[31]](_0x44a2x18));return _0x44a2x23})};return null}}function removeEntity(_0x44a2x15,_0x44a2x16,_0x44a2x17){return function(_0x44a2x18){if(_0x44a2x18){return _0x44a2x18[_0xbc06[48]]()[_0xbc06[45]](function(){logger[_0xbc06[24]](_0xbc06[22],_0x44a2x17,_0x44a2x16,_0xbc06[47]);logger[_0xbc06[26]](_0xbc06[25],_0x44a2x17,_0x44a2x16,_0xbc06[47],JSON[_0xbc06[31]](_0x44a2x18));_0x44a2x15[_0xbc06[29]](204)[_0xbc06[28]]()})}}}function handleEntityNotFound(_0x44a2x15,_0x44a2x16,_0x44a2x17){return function(_0x44a2x18){if(!_0x44a2x18){logger[_0xbc06[50]](_0xbc06[22],_0x44a2x17,404,_0xbc06[49]);_0x44a2x15[_0xbc06[29]](404)[_0xbc06[28]]();return null};return _0x44a2x18}}function handleError(_0x44a2x15,_0x44a2x16,_0x44a2x17){_0x44a2x16= _0x44a2x16|| 500;return function(_0x44a2x27){logger[_0xbc06[50]](_0xbc06[22],_0x44a2x17,_0x44a2x16,JSON[_0xbc06[31]](_0x44a2x27));delete _0x44a2x27[_0xbc06[51]];_0x44a2x15[_0xbc06[29]](_0x44a2x16)[_0xbc06[52]](_0x44a2x27)}}exports[_0xbc06[46]]= function(_0x44a2x28,_0x44a2x15){if(_0x44a2x28[_0xbc06[54]][_0xbc06[53]]){delete _0x44a2x28[_0xbc06[54]][_0xbc06[53]]};return db[_0xbc06[58]][_0xbc06[57]]({where:{id:_0x44a2x28[_0xbc06[56]][_0xbc06[53]]}})[_0xbc06[45]](handleEntityNotFound(_0x44a2x15,null,_0xbc06[46]))[_0xbc06[45]](saveUpdates(_0x44a2x28[_0xbc06[54]],null,_0xbc06[46]))[_0xbc06[45]](respondWithResult(_0x44a2x15,null,_0xbc06[46]))[_0xbc06[55]](handleError(_0x44a2x15,null,_0xbc06[46]))};exports[_0xbc06[48]]= function(_0x44a2x28,_0x44a2x15){return db[_0xbc06[58]][_0xbc06[57]]({where:{id:_0x44a2x28[_0xbc06[56]][_0xbc06[53]]}})[_0xbc06[45]](handleEntityNotFound(_0x44a2x15,null,_0xbc06[48]))[_0xbc06[45]](removeEntity(_0x44a2x15,null,_0xbc06[48]))[_0xbc06[55]](handleError(_0x44a2x15,null,_0xbc06[48]))}
\ No newline at end of file
index 7432ce6..8576967 100644 (file)
@@ -1 +1 @@
-var _0x990b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x74\x6F\x6F\x6C\x73\x5F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x990b[0];var _=require(_0x990b[1]);var util=require(_0x990b[2]);var logger=require(_0x990b[4])(_0x990b[3]);var attributes=require(_0x990b[5]);module[_0x990b[6]]= function(_0x2508x5,_0x2508x6){return _0x2508x5[_0x990b[9]](_0x990b[7],attributes,{tableName:_0x990b[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x787a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x74\x6F\x6F\x6C\x73\x5F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x787a[0];var _=require(_0x787a[1]);var util=require(_0x787a[2]);var logger=require(_0x787a[4])(_0x787a[3]);var attributes=require(_0x787a[5]);module[_0x787a[6]]= function(_0xf270x5,_0xf270x6){return _0xf270x5[_0x787a[9]](_0x787a[7],attributes,{tableName:_0x787a[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5b9bfde..d77893c 100644 (file)
@@ -1 +1 @@
-var _0x8d19=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x8d19[0];var _=require(_0x8d19[1]);var util=require(_0x8d19[2]);var moment=require(_0x8d19[3]);var BPromise=require(_0x8d19[4]);var db=require(_0x8d19[6])[_0x8d19[5]];var utils=require(_0x8d19[7]);var logger=require(_0x8d19[9])(_0x8d19[8]);var jayson=require(_0x8d19[10]);var client=jayson[_0x8d19[12]][_0x8d19[11]]({port:9002});function respondWithRpcPromise(_0x588dxb,_0x588dxc,_0x588dxd){return  new BPromise(function(_0x588dxe,_0x588dxf){return client[_0x8d19[25]](_0x588dxb,_0x588dxd)[_0x8d19[24]](function(_0x588dx11){logger[_0x8d19[17]](_0x8d19[13],_0x588dxc,_0x8d19[16]);logger[_0x8d19[20]](_0x8d19[18],_0x588dxc,_0x8d19[16],JSON[_0x8d19[19]](_0x588dx11));if(_0x588dx11[_0x8d19[14]]){if(_0x588dx11[_0x8d19[14]][_0x8d19[21]]=== 500){logger[_0x8d19[14]](_0x8d19[13],_0x588dxc,_0x588dx11[_0x8d19[14]][_0x8d19[22]]);return _0x588dxf(_0x588dx11[_0x8d19[14]][_0x8d19[22]])};logger[_0x8d19[14]](_0x8d19[13],_0x588dxc,_0x588dx11[_0x8d19[14]][_0x8d19[22]]);return _0x588dxe(_0x588dx11[_0x8d19[14]][_0x8d19[22]])}else {logger[_0x8d19[17]](_0x8d19[13],_0x588dxc,_0x8d19[16]);_0x588dxe(_0x588dx11[_0x8d19[23]][_0x8d19[22]])}})[_0x8d19[15]](function(_0x588dx10){logger[_0x8d19[14]](_0x8d19[13],_0x588dxc,_0x588dx10);_0x588dxf(_0x588dx10)})})}
\ No newline at end of file
+var _0x2fa4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2fa4[0];var _=require(_0x2fa4[1]);var util=require(_0x2fa4[2]);var moment=require(_0x2fa4[3]);var BPromise=require(_0x2fa4[4]);var db=require(_0x2fa4[6])[_0x2fa4[5]];var utils=require(_0x2fa4[7]);var logger=require(_0x2fa4[9])(_0x2fa4[8]);var jayson=require(_0x2fa4[10]);var client=jayson[_0x2fa4[12]][_0x2fa4[11]]({port:9002});function respondWithRpcPromise(_0x3f8cxb,_0x3f8cxc,_0x3f8cxd){return  new BPromise(function(_0x3f8cxe,_0x3f8cxf){return client[_0x2fa4[25]](_0x3f8cxb,_0x3f8cxd)[_0x2fa4[24]](function(_0x3f8cx11){logger[_0x2fa4[17]](_0x2fa4[13],_0x3f8cxc,_0x2fa4[16]);logger[_0x2fa4[20]](_0x2fa4[18],_0x3f8cxc,_0x2fa4[16],JSON[_0x2fa4[19]](_0x3f8cx11));if(_0x3f8cx11[_0x2fa4[14]]){if(_0x3f8cx11[_0x2fa4[14]][_0x2fa4[21]]=== 500){logger[_0x2fa4[14]](_0x2fa4[13],_0x3f8cxc,_0x3f8cx11[_0x2fa4[14]][_0x2fa4[22]]);return _0x3f8cxf(_0x3f8cx11[_0x2fa4[14]][_0x2fa4[22]])};logger[_0x2fa4[14]](_0x2fa4[13],_0x3f8cxc,_0x3f8cx11[_0x2fa4[14]][_0x2fa4[22]]);return _0x3f8cxe(_0x3f8cx11[_0x2fa4[14]][_0x2fa4[22]])}else {logger[_0x2fa4[17]](_0x2fa4[13],_0x3f8cxc,_0x2fa4[16]);_0x3f8cxe(_0x3f8cx11[_0x2fa4[23]][_0x2fa4[22]])}})[_0x2fa4[15]](function(_0x3f8cx10){logger[_0x2fa4[14]](_0x2fa4[13],_0x3f8cxc,_0x3f8cx10);_0x3f8cxf(_0x3f8cx10)})})}
\ No newline at end of file
index df8ff75..25a33d2 100644 (file)
@@ -1 +1 @@
-var _0x14f9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x14f9[0];var multer=require(_0x14f9[1]);var util=require(_0x14f9[2]);var path=require(_0x14f9[3]);var express=require(_0x14f9[4]);var router=express.Router();var auth=require(_0x14f9[5]);var config=require(_0x14f9[6]);var controller=require(_0x14f9[7]);router[_0x14f9[11]](_0x14f9[8],auth[_0x14f9[9]](),controller[_0x14f9[10]]);router[_0x14f9[13]](_0x14f9[8],auth[_0x14f9[9]](),controller[_0x14f9[12]]);module[_0x14f9[14]]= router
\ No newline at end of file
+var _0xe697=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe697[0];var multer=require(_0xe697[1]);var util=require(_0xe697[2]);var path=require(_0xe697[3]);var express=require(_0xe697[4]);var router=express.Router();var auth=require(_0xe697[5]);var config=require(_0xe697[6]);var controller=require(_0xe697[7]);router[_0xe697[11]](_0xe697[8],auth[_0xe697[9]](),controller[_0xe697[10]]);router[_0xe697[13]](_0xe697[8],auth[_0xe697[9]](),controller[_0xe697[12]]);module[_0xe697[14]]= router
\ No newline at end of file
index 1e10f38..d244eb1 100644 (file)
@@ -1 +1 @@
-var _0x84ca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52"];_0x84ca[0];var Sequelize=require(_0x84ca[1]);module[_0x84ca[2]]= {name:{type:Sequelize[_0x84ca[3]],allowNull:false,unique:_0x84ca[4]},description:{type:Sequelize[_0x84ca[3]]},interval:{type:Sequelize[_0x84ca[5]],defaultValue:5,allowNull:false,validate:{min:5}}}
\ No newline at end of file
+var _0x4a75=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52"];_0x4a75[0];var Sequelize=require(_0x4a75[1]);module[_0x4a75[2]]= {name:{type:Sequelize[_0x4a75[3]],allowNull:false,unique:_0x4a75[4]},description:{type:Sequelize[_0x4a75[3]]},interval:{type:Sequelize[_0x4a75[5]],defaultValue:5,allowNull:false,validate:{min:5}}}
\ No newline at end of file
index 0ed78d1..d32f326 100644 (file)
@@ -1 +1 @@
-var _0xccf3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x44\x61\x73\x68\x62\x6F\x61\x72\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x72\x75\x6E","\x70\x69\x64","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73\x2F\x72\x75\x6E","\x6A\x6F\x69\x6E","\x66\x6F\x72\x6B","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x61\x64\x64\x49\x74\x65\x6D","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x64","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x67\x65\x74\x49\x74\x65\x6D\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xccf3[0];var jsonpatch=require(_0xccf3[1]);var rp=require(_0xccf3[2]);var moment=require(_0xccf3[3]);var BPromise=require(_0xccf3[4]);var util=require(_0xccf3[5]);var path=require(_0xccf3[6]);var sox=require(_0xccf3[7]);var ejs=require(_0xccf3[8]);var fs=require(_0xccf3[9]);var _=require(_0xccf3[10]);var squel=require(_0xccf3[11]);var crypto=require(_0xccf3[12]);var jsforce=require(_0xccf3[13]);var toCsv=require(_0xccf3[14]);var qs=require(_0xccf3[15]);var logger=require(_0xccf3[17])(_0xccf3[16]);var utils=require(_0xccf3[18]);var config=require(_0xccf3[19]);var db=require(_0xccf3[21])[_0xccf3[20]];function respondWithStatusCode(_0xf362x15,_0xf362x16,_0xf362x17){_0xf362x16= _0xf362x16|| 204;return function(_0xf362x18){if(_0xf362x18){logger[_0xccf3[24]](_0xccf3[22],_0xf362x17,_0xf362x16,_0xccf3[23]);logger[_0xccf3[26]](_0xccf3[25],_0xf362x17,_0xf362x16,_0xccf3[23]);return _0xf362x15[_0xccf3[27]](_0xf362x16)};return _0xf362x15[_0xccf3[29]](304)[_0xccf3[28]]()}}function respondWithResult(_0xf362x15,_0xf362x16,_0xf362x17){_0xf362x16= _0xf362x16|| 200;return function(_0xf362x18){if(_0xf362x18){logger[_0xccf3[24]](_0xccf3[22],_0xf362x17,_0xf362x16,_0xccf3[30]);logger[_0xccf3[26]](_0xccf3[25],_0xf362x17,_0xf362x16,_0xccf3[30],JSON[_0xccf3[31]](_0xf362x18));return _0xf362x15[_0xccf3[29]](_0xf362x16)[_0xccf3[32]](_0xf362x18)};return _0xf362x15[_0xccf3[29]](304)[_0xccf3[28]]()}}function respondWithFilteredResult(_0xf362x15,_0xf362x1b,_0xf362x17){return function(_0xf362x18){if(_0xf362x18){var _0xf362x1c=_0xf362x18[_0xccf3[33]],_0xf362x1d=_0xf362x1b[_0xccf3[34]],_0xf362x1e=_0xf362x1b[_0xccf3[34]]+ _0xf362x1b[_0xccf3[35]],_0xf362x16;if(_0xf362x1e>= _0xf362x1c){_0xf362x1e= _0xf362x1c;_0xf362x16= 200}else {_0xf362x16= 206};_0xf362x15[_0xccf3[29]](_0xf362x16);logger[_0xccf3[24]](_0xccf3[22],_0xf362x17,_0xf362x16,_0xccf3[36]);logger[_0xccf3[26]](_0xccf3[25],_0xf362x17,_0xf362x16,_0xccf3[30],JSON[_0xccf3[31]](_0xf362x18));return _0xf362x15[_0xccf3[40]](_0xccf3[37],_0xf362x1d+ _0xccf3[38]+ _0xf362x1e+ _0xccf3[39]+ _0xf362x1c)[_0xccf3[32]](_0xf362x18)};return null}}function patchUpdates(_0xf362x20){return function(_0xf362x18){try{jsonpatch[_0xccf3[41]](_0xf362x18,_0xf362x20,true)}catch(err){return BPromise[_0xccf3[42]](err)};return _0xf362x18[_0xccf3[43]]()}}function saveUpdates(_0xf362x22,_0xf362x16,_0xf362x17){return function(_0xf362x18){if(_0xf362x18){return _0xf362x18[_0xccf3[46]](_0xf362x22)[_0xccf3[45]](function(_0xf362x23){logger[_0xccf3[24]](_0xccf3[22],_0xf362x17,_0xf362x16,_0xccf3[44]);logger[_0xccf3[26]](_0xccf3[25],_0xf362x17,_0xf362x16,_0xccf3[44],JSON[_0xccf3[31]](_0xf362x18));return _0xf362x23})};return null}}function removeEntity(_0xf362x15,_0xf362x16,_0xf362x17){return function(_0xf362x18){if(_0xf362x18){return _0xf362x18[_0xccf3[48]]()[_0xccf3[45]](function(){logger[_0xccf3[24]](_0xccf3[22],_0xf362x17,_0xf362x16,_0xccf3[47]);logger[_0xccf3[26]](_0xccf3[25],_0xf362x17,_0xf362x16,_0xccf3[47],JSON[_0xccf3[31]](_0xf362x18));_0xf362x15[_0xccf3[29]](204)[_0xccf3[28]]()})}}}function handleEntityNotFound(_0xf362x15,_0xf362x16,_0xf362x17){return function(_0xf362x18){if(!_0xf362x18){logger[_0xccf3[50]](_0xccf3[22],_0xf362x17,404,_0xccf3[49]);_0xf362x15[_0xccf3[29]](404)[_0xccf3[28]]();return null};return _0xf362x18}}function handleError(_0xf362x15,_0xf362x16,_0xf362x17){_0xf362x16= _0xf362x16|| 500;return function(_0xf362x27){logger[_0xccf3[50]](_0xccf3[22],_0xf362x17,_0xf362x16,JSON[_0xccf3[31]](_0xf362x27));delete _0xf362x27[_0xccf3[51]];_0xf362x15[_0xccf3[29]](_0xf362x16)[_0xccf3[52]](_0xf362x27)}}exports[_0xccf3[53]]= function(_0xf362x28,_0xf362x15){var _0xf362x1b={},_0xf362x29={};_0xf362x29[_0xccf3[54]]= _[_0xccf3[57]](db[_0xccf3[56]][_0xccf3[55]]);_0xf362x29[_0xccf3[58]]= _[_0xccf3[57]](_0xf362x28[_0xccf3[58]]);_0xf362x29[_0xccf3[59]]= _[_0xccf3[60]](_0xf362x29[_0xccf3[54]],_0xf362x29[_0xccf3[58]]);_0xf362x1b[_0xccf3[61]]= _[_0xccf3[60]](_0xf362x29[_0xccf3[54]],qs[_0xccf3[62]](_0xf362x28[_0xccf3[58]][_0xccf3[62]]));_0xf362x1b[_0xccf3[61]]= (_0xf362x1b[_0xccf3[61]][_0xccf3[63]])?_0xf362x1b[_0xccf3[61]]:_0xf362x29[_0xccf3[54]];if(!_0xf362x28[_0xccf3[58]][_0xccf3[65]](_0xccf3[64])){_0xf362x1b[_0xccf3[35]]= qs[_0xccf3[35]](_0xf362x28[_0xccf3[58]][_0xccf3[35]]);_0xf362x1b[_0xccf3[34]]= qs[_0xccf3[34]](_0xf362x28[_0xccf3[58]][_0xccf3[34]])};_0xf362x1b[_0xccf3[66]]= qs[_0xccf3[67]](_0xf362x28[_0xccf3[58]][_0xccf3[67]]);_0xf362x1b[_0xccf3[68]]= qs[_0xccf3[59]](_[_0xccf3[69]](_0xf362x28[_0xccf3[58]],_0xf362x29[_0xccf3[59]]));if(_0xf362x28[_0xccf3[58]][_0xccf3[70]]){_0xf362x1b[_0xccf3[68]]= _[_0xccf3[73]](_0xf362x1b[_0xccf3[68]],{$or:_[_0xccf3[72]](_0xf362x1b[_0xccf3[61]],function(_0xf362x2a){var _0xf362x2b={};_0xf362x2b[_0xf362x2a]= {$like:_0xccf3[71]+ _0xf362x28[_0xccf3[58]][_0xccf3[70]]+ _0xccf3[71]};return _0xf362x2b})})};_0xf362x1b= _[_0xccf3[73]]({},_0xf362x1b,_0xf362x28[_0xccf3[74]]);return db[_0xccf3[56]][_0xccf3[76]](_0xf362x1b)[_0xccf3[45]](respondWithFilteredResult(_0xf362x15,_0xf362x1b,_0xccf3[53]))[_0xccf3[75]](handleError(_0xf362x15,null,_0xccf3[53]))};exports[_0xccf3[77]]= function(_0xf362x28,_0xf362x15){var _0xf362x1b={raw:false,where:{id:_0xf362x28[_0xccf3[79]][_0xccf3[78]]}},_0xf362x29={};_0xf362x29[_0xccf3[54]]= _[_0xccf3[57]](db[_0xccf3[56]][_0xccf3[55]]);_0xf362x29[_0xccf3[58]]= _[_0xccf3[57]](_0xf362x28[_0xccf3[58]]);_0xf362x29[_0xccf3[59]]= _[_0xccf3[60]](_0xf362x29[_0xccf3[54]],_0xf362x29[_0xccf3[58]]);_0xf362x1b[_0xccf3[61]]= _[_0xccf3[60]](_0xf362x29[_0xccf3[54]],qs[_0xccf3[62]](_0xf362x28[_0xccf3[58]][_0xccf3[62]]));_0xf362x1b[_0xccf3[61]]= (_0xf362x1b[_0xccf3[61]][_0xccf3[63]])?_0xf362x1b[_0xccf3[61]]:_0xf362x29[_0xccf3[54]];_0xf362x1b= _[_0xccf3[73]]({},_0xf362x1b,_0xf362x28[_0xccf3[74]]);return db[_0xccf3[56]][_0xccf3[80]](_0xf362x1b)[_0xccf3[45]](handleEntityNotFound(_0xf362x15,null,_0xccf3[77]))[_0xccf3[45]](respondWithResult(_0xf362x15,null,_0xccf3[77]))[_0xccf3[75]](handleError(_0xf362x15,null,_0xccf3[77]))};exports[_0xccf3[81]]= function(_0xf362x28,_0xf362x15){return db[_0xccf3[56]][_0xccf3[81]](_0xf362x28[_0xccf3[82]],{})[_0xccf3[45]](respondWithResult(_0xf362x15,201,_0xccf3[81]))[_0xccf3[75]](handleError(_0xf362x15,null,_0xccf3[81]))};exports[_0xccf3[46]]= function(_0xf362x28,_0xf362x15){if(_0xf362x28[_0xccf3[82]][_0xccf3[78]]){delete _0xf362x28[_0xccf3[82]][_0xccf3[78]]};return db[_0xccf3[56]][_0xccf3[80]]({where:{id:_0xf362x28[_0xccf3[79]][_0xccf3[78]]}})[_0xccf3[45]](handleEntityNotFound(_0xf362x15,null,_0xccf3[46]))[_0xccf3[45]](saveUpdates(_0xf362x28[_0xccf3[82]],null,_0xccf3[46]))[_0xccf3[45]](respondWithResult(_0xf362x15,null,_0xccf3[46]))[_0xccf3[75]](handleError(_0xf362x15,null,_0xccf3[46]))};exports[_0xccf3[48]]= function(_0xf362x28,_0xf362x15){return db[_0xccf3[56]][_0xccf3[80]]({where:{id:_0xf362x28[_0xccf3[79]][_0xccf3[78]]}})[_0xccf3[45]](handleEntityNotFound(_0xf362x15,null,_0xccf3[48]))[_0xccf3[45]](removeEntity(_0xf362x15,null,_0xccf3[48]))[_0xccf3[75]](handleError(_0xf362x15,null,_0xccf3[48]))};exports[_0xccf3[83]]= function(_0xf362x28,_0xf362x15,_0xf362x2c){var _0xf362x2d;return db[_0xccf3[56]][_0xccf3[80]]({where:{id:_0xf362x28[_0xccf3[79]][_0xccf3[78]]},attributes:[_0xccf3[78]]})[_0xccf3[45]](handleEntityNotFound(_0xf362x15,null,_0xccf3[83]))[_0xccf3[45]](function(_0xf362x18){if(_0xf362x18){require(_0xccf3[88])[_0xccf3[87]](path[_0xccf3[86]](__dirname,_0xccf3[85]),[_0xf362x18[_0xccf3[78]]])}})[_0xccf3[45]](function(_0xf362x18){if(_0xf362x18){return {pid:_0xf362x18[_0xccf3[84]]}}})[_0xccf3[45]](respondWithResult(_0xf362x15,null,_0xccf3[83]))[_0xccf3[75]](handleError(_0xf362x15,null,_0xccf3[83]))};exports[_0xccf3[89]]= function(_0xf362x28,_0xf362x15,_0xf362x2c){if(_0xf362x28[_0xccf3[82]][_0xccf3[78]]){delete _0xf362x28[_0xccf3[82]][_0xccf3[78]]};return db[_0xccf3[56]][_0xccf3[80]]({where:{id:_0xf362x28[_0xccf3[79]][_0xccf3[78]]}})[_0xccf3[45]](handleEntityNotFound(_0xf362x15,null,_0xccf3[89]))[_0xccf3[45]](function(_0xf362x18){if(_0xf362x18){_0xf362x28[_0xccf3[82]][_0xccf3[90]]= _0xf362x18[_0xccf3[78]];return db[_0xccf3[91]][_0xccf3[81]](_0xf362x28[_0xccf3[82]])}})[_0xccf3[45]](respondWithResult(_0xf362x15,null,_0xccf3[89]))[_0xccf3[75]](handleError(_0xf362x15,null,_0xccf3[89]))};exports[_0xccf3[92]]= function(_0xf362x28,_0xf362x18,_0xf362x2c){var _0xf362x1b={};var _0xf362x29={};var _0xf362x2e;var _0xf362x1c;return db[_0xccf3[56]][_0xccf3[93]]({where:{id:_0xf362x28[_0xccf3[79]][_0xccf3[78]]}})[_0xccf3[45]](handleEntityNotFound(_0xf362x18,null,_0xccf3[92]))[_0xccf3[45]](function(_0xf362x18){if(_0xf362x18){_0xf362x2e= _0xf362x18;_0xf362x29[_0xccf3[54]]= _[_0xccf3[57]](db[_0xccf3[91]][_0xccf3[55]]);_0xf362x29[_0xccf3[58]]= _[_0xccf3[57]](_0xf362x28[_0xccf3[58]]);_0xf362x29[_0xccf3[59]]= _[_0xccf3[60]](_0xf362x29[_0xccf3[54]],_0xf362x29[_0xccf3[58]]);_0xf362x1b[_0xccf3[61]]= _[_0xccf3[60]](_0xf362x29[_0xccf3[54]],qs[_0xccf3[62]](_0xf362x28[_0xccf3[58]][_0xccf3[62]]));_0xf362x1b[_0xccf3[61]]= (_0xf362x1b[_0xccf3[61]][_0xccf3[63]])?_0xf362x1b[_0xccf3[61]]:_0xf362x29[_0xccf3[54]];_0xf362x1b[_0xccf3[66]]= qs[_0xccf3[67]](_0xf362x28[_0xccf3[58]][_0xccf3[67]]);_0xf362x1b[_0xccf3[68]]= qs[_0xccf3[59]](_[_0xccf3[69]](_0xf362x28[_0xccf3[58]],_0xf362x29[_0xccf3[59]]));if(_0xf362x28[_0xccf3[58]][_0xccf3[70]]){_0xf362x1b[_0xccf3[68]]= _[_0xccf3[73]](_0xf362x1b[_0xccf3[68]],{$or:_[_0xccf3[72]](_0xf362x1b[_0xccf3[61]],function(_0xf362x2a){var _0xf362x2b={};_0xf362x2b[_0xf362x2a]= {$like:_0xccf3[71]+ _0xf362x28[_0xccf3[58]][_0xccf3[70]]+ _0xccf3[71]};return _0xf362x2b})})};_0xf362x1b= _[_0xccf3[73]]({},_0xf362x1b,_0xf362x28[_0xccf3[74]]);return _0xf362x2e[_0xccf3[92]](_0xf362x1b)}})[_0xccf3[45]](function(_0xf362x30){if(_0xf362x30){_0xf362x1c= _0xf362x30[_0xccf3[63]];if(!_0xf362x28[_0xccf3[58]][_0xccf3[65]](_0xccf3[64])){_0xf362x1b[_0xccf3[35]]= qs[_0xccf3[35]](_0xf362x28[_0xccf3[58]][_0xccf3[35]]);_0xf362x1b[_0xccf3[34]]= qs[_0xccf3[34]](_0xf362x28[_0xccf3[58]][_0xccf3[34]])};return _0xf362x2e[_0xccf3[92]](_0xf362x1b)}})[_0xccf3[45]](function(_0xf362x2f){return _0xf362x2f?{count:_0xf362x1c,rows:_0xf362x2f}:null})[_0xccf3[45]](respondWithResult(_0xf362x18,null,_0xccf3[92]))[_0xccf3[75]](handleError(_0xf362x18,null,_0xccf3[92]))}
\ No newline at end of file
+var _0x74b2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x44\x61\x73\x68\x62\x6F\x61\x72\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x72\x75\x6E","\x70\x69\x64","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73\x2F\x72\x75\x6E","\x6A\x6F\x69\x6E","\x66\x6F\x72\x6B","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x61\x64\x64\x49\x74\x65\x6D","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x64","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x67\x65\x74\x49\x74\x65\x6D\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0x74b2[0];var jsonpatch=require(_0x74b2[1]);var rp=require(_0x74b2[2]);var moment=require(_0x74b2[3]);var BPromise=require(_0x74b2[4]);var util=require(_0x74b2[5]);var path=require(_0x74b2[6]);var sox=require(_0x74b2[7]);var ejs=require(_0x74b2[8]);var fs=require(_0x74b2[9]);var _=require(_0x74b2[10]);var squel=require(_0x74b2[11]);var crypto=require(_0x74b2[12]);var jsforce=require(_0x74b2[13]);var toCsv=require(_0x74b2[14]);var qs=require(_0x74b2[15]);var logger=require(_0x74b2[17])(_0x74b2[16]);var utils=require(_0x74b2[18]);var config=require(_0x74b2[19]);var db=require(_0x74b2[21])[_0x74b2[20]];function respondWithStatusCode(_0x4978x15,_0x4978x16,_0x4978x17){_0x4978x16= _0x4978x16|| 204;return function(_0x4978x18){if(_0x4978x18){logger[_0x74b2[24]](_0x74b2[22],_0x4978x17,_0x4978x16,_0x74b2[23]);logger[_0x74b2[26]](_0x74b2[25],_0x4978x17,_0x4978x16,_0x74b2[23]);return _0x4978x15[_0x74b2[27]](_0x4978x16)};return _0x4978x15[_0x74b2[29]](304)[_0x74b2[28]]()}}function respondWithResult(_0x4978x15,_0x4978x16,_0x4978x17){_0x4978x16= _0x4978x16|| 200;return function(_0x4978x18){if(_0x4978x18){logger[_0x74b2[24]](_0x74b2[22],_0x4978x17,_0x4978x16,_0x74b2[30]);logger[_0x74b2[26]](_0x74b2[25],_0x4978x17,_0x4978x16,_0x74b2[30],JSON[_0x74b2[31]](_0x4978x18));return _0x4978x15[_0x74b2[29]](_0x4978x16)[_0x74b2[32]](_0x4978x18)};return _0x4978x15[_0x74b2[29]](304)[_0x74b2[28]]()}}function respondWithFilteredResult(_0x4978x15,_0x4978x1b,_0x4978x17){return function(_0x4978x18){if(_0x4978x18){var _0x4978x1c=_0x4978x18[_0x74b2[33]],_0x4978x1d=_0x4978x1b[_0x74b2[34]],_0x4978x1e=_0x4978x1b[_0x74b2[34]]+ _0x4978x1b[_0x74b2[35]],_0x4978x16;if(_0x4978x1e>= _0x4978x1c){_0x4978x1e= _0x4978x1c;_0x4978x16= 200}else {_0x4978x16= 206};_0x4978x15[_0x74b2[29]](_0x4978x16);logger[_0x74b2[24]](_0x74b2[22],_0x4978x17,_0x4978x16,_0x74b2[36]);logger[_0x74b2[26]](_0x74b2[25],_0x4978x17,_0x4978x16,_0x74b2[30],JSON[_0x74b2[31]](_0x4978x18));return _0x4978x15[_0x74b2[40]](_0x74b2[37],_0x4978x1d+ _0x74b2[38]+ _0x4978x1e+ _0x74b2[39]+ _0x4978x1c)[_0x74b2[32]](_0x4978x18)};return null}}function patchUpdates(_0x4978x20){return function(_0x4978x18){try{jsonpatch[_0x74b2[41]](_0x4978x18,_0x4978x20,true)}catch(err){return BPromise[_0x74b2[42]](err)};return _0x4978x18[_0x74b2[43]]()}}function saveUpdates(_0x4978x22,_0x4978x16,_0x4978x17){return function(_0x4978x18){if(_0x4978x18){return _0x4978x18[_0x74b2[46]](_0x4978x22)[_0x74b2[45]](function(_0x4978x23){logger[_0x74b2[24]](_0x74b2[22],_0x4978x17,_0x4978x16,_0x74b2[44]);logger[_0x74b2[26]](_0x74b2[25],_0x4978x17,_0x4978x16,_0x74b2[44],JSON[_0x74b2[31]](_0x4978x18));return _0x4978x23})};return null}}function removeEntity(_0x4978x15,_0x4978x16,_0x4978x17){return function(_0x4978x18){if(_0x4978x18){return _0x4978x18[_0x74b2[48]]()[_0x74b2[45]](function(){logger[_0x74b2[24]](_0x74b2[22],_0x4978x17,_0x4978x16,_0x74b2[47]);logger[_0x74b2[26]](_0x74b2[25],_0x4978x17,_0x4978x16,_0x74b2[47],JSON[_0x74b2[31]](_0x4978x18));_0x4978x15[_0x74b2[29]](204)[_0x74b2[28]]()})}}}function handleEntityNotFound(_0x4978x15,_0x4978x16,_0x4978x17){return function(_0x4978x18){if(!_0x4978x18){logger[_0x74b2[50]](_0x74b2[22],_0x4978x17,404,_0x74b2[49]);_0x4978x15[_0x74b2[29]](404)[_0x74b2[28]]();return null};return _0x4978x18}}function handleError(_0x4978x15,_0x4978x16,_0x4978x17){_0x4978x16= _0x4978x16|| 500;return function(_0x4978x27){logger[_0x74b2[50]](_0x74b2[22],_0x4978x17,_0x4978x16,JSON[_0x74b2[31]](_0x4978x27));delete _0x4978x27[_0x74b2[51]];_0x4978x15[_0x74b2[29]](_0x4978x16)[_0x74b2[52]](_0x4978x27)}}exports[_0x74b2[53]]= function(_0x4978x28,_0x4978x15){var _0x4978x1b={},_0x4978x29={};_0x4978x29[_0x74b2[54]]= _[_0x74b2[57]](db[_0x74b2[56]][_0x74b2[55]]);_0x4978x29[_0x74b2[58]]= _[_0x74b2[57]](_0x4978x28[_0x74b2[58]]);_0x4978x29[_0x74b2[59]]= _[_0x74b2[60]](_0x4978x29[_0x74b2[54]],_0x4978x29[_0x74b2[58]]);_0x4978x1b[_0x74b2[61]]= _[_0x74b2[60]](_0x4978x29[_0x74b2[54]],qs[_0x74b2[62]](_0x4978x28[_0x74b2[58]][_0x74b2[62]]));_0x4978x1b[_0x74b2[61]]= (_0x4978x1b[_0x74b2[61]][_0x74b2[63]])?_0x4978x1b[_0x74b2[61]]:_0x4978x29[_0x74b2[54]];if(!_0x4978x28[_0x74b2[58]][_0x74b2[65]](_0x74b2[64])){_0x4978x1b[_0x74b2[35]]= qs[_0x74b2[35]](_0x4978x28[_0x74b2[58]][_0x74b2[35]]);_0x4978x1b[_0x74b2[34]]= qs[_0x74b2[34]](_0x4978x28[_0x74b2[58]][_0x74b2[34]])};_0x4978x1b[_0x74b2[66]]= qs[_0x74b2[67]](_0x4978x28[_0x74b2[58]][_0x74b2[67]]);_0x4978x1b[_0x74b2[68]]= qs[_0x74b2[59]](_[_0x74b2[69]](_0x4978x28[_0x74b2[58]],_0x4978x29[_0x74b2[59]]));if(_0x4978x28[_0x74b2[58]][_0x74b2[70]]){_0x4978x1b[_0x74b2[68]]= _[_0x74b2[73]](_0x4978x1b[_0x74b2[68]],{$or:_[_0x74b2[72]](_0x4978x1b[_0x74b2[61]],function(_0x4978x2a){var _0x4978x2b={};_0x4978x2b[_0x4978x2a]= {$like:_0x74b2[71]+ _0x4978x28[_0x74b2[58]][_0x74b2[70]]+ _0x74b2[71]};return _0x4978x2b})})};_0x4978x1b= _[_0x74b2[73]]({},_0x4978x1b,_0x4978x28[_0x74b2[74]]);return db[_0x74b2[56]][_0x74b2[76]](_0x4978x1b)[_0x74b2[45]](respondWithFilteredResult(_0x4978x15,_0x4978x1b,_0x74b2[53]))[_0x74b2[75]](handleError(_0x4978x15,null,_0x74b2[53]))};exports[_0x74b2[77]]= function(_0x4978x28,_0x4978x15){var _0x4978x1b={raw:false,where:{id:_0x4978x28[_0x74b2[79]][_0x74b2[78]]}},_0x4978x29={};_0x4978x29[_0x74b2[54]]= _[_0x74b2[57]](db[_0x74b2[56]][_0x74b2[55]]);_0x4978x29[_0x74b2[58]]= _[_0x74b2[57]](_0x4978x28[_0x74b2[58]]);_0x4978x29[_0x74b2[59]]= _[_0x74b2[60]](_0x4978x29[_0x74b2[54]],_0x4978x29[_0x74b2[58]]);_0x4978x1b[_0x74b2[61]]= _[_0x74b2[60]](_0x4978x29[_0x74b2[54]],qs[_0x74b2[62]](_0x4978x28[_0x74b2[58]][_0x74b2[62]]));_0x4978x1b[_0x74b2[61]]= (_0x4978x1b[_0x74b2[61]][_0x74b2[63]])?_0x4978x1b[_0x74b2[61]]:_0x4978x29[_0x74b2[54]];_0x4978x1b= _[_0x74b2[73]]({},_0x4978x1b,_0x4978x28[_0x74b2[74]]);return db[_0x74b2[56]][_0x74b2[80]](_0x4978x1b)[_0x74b2[45]](handleEntityNotFound(_0x4978x15,null,_0x74b2[77]))[_0x74b2[45]](respondWithResult(_0x4978x15,null,_0x74b2[77]))[_0x74b2[75]](handleError(_0x4978x15,null,_0x74b2[77]))};exports[_0x74b2[81]]= function(_0x4978x28,_0x4978x15){return db[_0x74b2[56]][_0x74b2[81]](_0x4978x28[_0x74b2[82]],{})[_0x74b2[45]](respondWithResult(_0x4978x15,201,_0x74b2[81]))[_0x74b2[75]](handleError(_0x4978x15,null,_0x74b2[81]))};exports[_0x74b2[46]]= function(_0x4978x28,_0x4978x15){if(_0x4978x28[_0x74b2[82]][_0x74b2[78]]){delete _0x4978x28[_0x74b2[82]][_0x74b2[78]]};return db[_0x74b2[56]][_0x74b2[80]]({where:{id:_0x4978x28[_0x74b2[79]][_0x74b2[78]]}})[_0x74b2[45]](handleEntityNotFound(_0x4978x15,null,_0x74b2[46]))[_0x74b2[45]](saveUpdates(_0x4978x28[_0x74b2[82]],null,_0x74b2[46]))[_0x74b2[45]](respondWithResult(_0x4978x15,null,_0x74b2[46]))[_0x74b2[75]](handleError(_0x4978x15,null,_0x74b2[46]))};exports[_0x74b2[48]]= function(_0x4978x28,_0x4978x15){return db[_0x74b2[56]][_0x74b2[80]]({where:{id:_0x4978x28[_0x74b2[79]][_0x74b2[78]]}})[_0x74b2[45]](handleEntityNotFound(_0x4978x15,null,_0x74b2[48]))[_0x74b2[45]](removeEntity(_0x4978x15,null,_0x74b2[48]))[_0x74b2[75]](handleError(_0x4978x15,null,_0x74b2[48]))};exports[_0x74b2[83]]= function(_0x4978x28,_0x4978x15,_0x4978x2c){var _0x4978x2d;return db[_0x74b2[56]][_0x74b2[80]]({where:{id:_0x4978x28[_0x74b2[79]][_0x74b2[78]]},attributes:[_0x74b2[78]]})[_0x74b2[45]](handleEntityNotFound(_0x4978x15,null,_0x74b2[83]))[_0x74b2[45]](function(_0x4978x18){if(_0x4978x18){require(_0x74b2[88])[_0x74b2[87]](path[_0x74b2[86]](__dirname,_0x74b2[85]),[_0x4978x18[_0x74b2[78]]])}})[_0x74b2[45]](function(_0x4978x18){if(_0x4978x18){return {pid:_0x4978x18[_0x74b2[84]]}}})[_0x74b2[45]](respondWithResult(_0x4978x15,null,_0x74b2[83]))[_0x74b2[75]](handleError(_0x4978x15,null,_0x74b2[83]))};exports[_0x74b2[89]]= function(_0x4978x28,_0x4978x15,_0x4978x2c){if(_0x4978x28[_0x74b2[82]][_0x74b2[78]]){delete _0x4978x28[_0x74b2[82]][_0x74b2[78]]};return db[_0x74b2[56]][_0x74b2[80]]({where:{id:_0x4978x28[_0x74b2[79]][_0x74b2[78]]}})[_0x74b2[45]](handleEntityNotFound(_0x4978x15,null,_0x74b2[89]))[_0x74b2[45]](function(_0x4978x18){if(_0x4978x18){_0x4978x28[_0x74b2[82]][_0x74b2[90]]= _0x4978x18[_0x74b2[78]];return db[_0x74b2[91]][_0x74b2[81]](_0x4978x28[_0x74b2[82]])}})[_0x74b2[45]](respondWithResult(_0x4978x15,null,_0x74b2[89]))[_0x74b2[75]](handleError(_0x4978x15,null,_0x74b2[89]))};exports[_0x74b2[92]]= function(_0x4978x28,_0x4978x18,_0x4978x2c){var _0x4978x1b={};var _0x4978x29={};var _0x4978x2e;var _0x4978x1c;return db[_0x74b2[56]][_0x74b2[93]]({where:{id:_0x4978x28[_0x74b2[79]][_0x74b2[78]]}})[_0x74b2[45]](handleEntityNotFound(_0x4978x18,null,_0x74b2[92]))[_0x74b2[45]](function(_0x4978x18){if(_0x4978x18){_0x4978x2e= _0x4978x18;_0x4978x29[_0x74b2[54]]= _[_0x74b2[57]](db[_0x74b2[91]][_0x74b2[55]]);_0x4978x29[_0x74b2[58]]= _[_0x74b2[57]](_0x4978x28[_0x74b2[58]]);_0x4978x29[_0x74b2[59]]= _[_0x74b2[60]](_0x4978x29[_0x74b2[54]],_0x4978x29[_0x74b2[58]]);_0x4978x1b[_0x74b2[61]]= _[_0x74b2[60]](_0x4978x29[_0x74b2[54]],qs[_0x74b2[62]](_0x4978x28[_0x74b2[58]][_0x74b2[62]]));_0x4978x1b[_0x74b2[61]]= (_0x4978x1b[_0x74b2[61]][_0x74b2[63]])?_0x4978x1b[_0x74b2[61]]:_0x4978x29[_0x74b2[54]];_0x4978x1b[_0x74b2[66]]= qs[_0x74b2[67]](_0x4978x28[_0x74b2[58]][_0x74b2[67]]);_0x4978x1b[_0x74b2[68]]= qs[_0x74b2[59]](_[_0x74b2[69]](_0x4978x28[_0x74b2[58]],_0x4978x29[_0x74b2[59]]));if(_0x4978x28[_0x74b2[58]][_0x74b2[70]]){_0x4978x1b[_0x74b2[68]]= _[_0x74b2[73]](_0x4978x1b[_0x74b2[68]],{$or:_[_0x74b2[72]](_0x4978x1b[_0x74b2[61]],function(_0x4978x2a){var _0x4978x2b={};_0x4978x2b[_0x4978x2a]= {$like:_0x74b2[71]+ _0x4978x28[_0x74b2[58]][_0x74b2[70]]+ _0x74b2[71]};return _0x4978x2b})})};_0x4978x1b= _[_0x74b2[73]]({},_0x4978x1b,_0x4978x28[_0x74b2[74]]);return _0x4978x2e[_0x74b2[92]](_0x4978x1b)}})[_0x74b2[45]](function(_0x4978x30){if(_0x4978x30){_0x4978x1c= _0x4978x30[_0x74b2[63]];if(!_0x4978x28[_0x74b2[58]][_0x74b2[65]](_0x74b2[64])){_0x4978x1b[_0x74b2[35]]= qs[_0x74b2[35]](_0x4978x28[_0x74b2[58]][_0x74b2[35]]);_0x4978x1b[_0x74b2[34]]= qs[_0x74b2[34]](_0x4978x28[_0x74b2[58]][_0x74b2[34]])};return _0x4978x2e[_0x74b2[92]](_0x4978x1b)}})[_0x74b2[45]](function(_0x4978x2f){return _0x4978x2f?{count:_0x4978x1c,rows:_0x4978x2f}:null})[_0x74b2[45]](respondWithResult(_0x4978x18,null,_0x74b2[92]))[_0x74b2[75]](handleError(_0x4978x18,null,_0x74b2[92]))}
\ No newline at end of file
index d3e27e4..772b962 100644 (file)
@@ -1 +1 @@
-var _0xb8ab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x44\x61\x73\x68\x62\x6F\x61\x72\x64","\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0xb8ab[0];var _=require(_0xb8ab[1]);var util=require(_0xb8ab[2]);var logger=require(_0xb8ab[4])(_0xb8ab[3]);var attributes=require(_0xb8ab[5]);module[_0xb8ab[6]]= function(_0x5643x5,_0x5643x6){return _0x5643x5[_0xb8ab[9]](_0xb8ab[7],attributes,{tableName:_0xb8ab[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x1ca5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x44\x61\x73\x68\x62\x6F\x61\x72\x64","\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x1ca5[0];var _=require(_0x1ca5[1]);var util=require(_0x1ca5[2]);var logger=require(_0x1ca5[4])(_0x1ca5[3]);var attributes=require(_0x1ca5[5]);module[_0x1ca5[6]]= function(_0x9169x5,_0x9169x6){return _0x9169x5[_0x1ca5[9]](_0x1ca5[7],attributes,{tableName:_0x1ca5[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 990a8a2..7af642f 100644 (file)
@@ -1 +1 @@
-var _0x9221=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9221[0];var _=require(_0x9221[1]);var util=require(_0x9221[2]);var moment=require(_0x9221[3]);var BPromise=require(_0x9221[4]);var db=require(_0x9221[6])[_0x9221[5]];var utils=require(_0x9221[7]);var logger=require(_0x9221[9])(_0x9221[8]);var jayson=require(_0x9221[10]);var client=jayson[_0x9221[12]][_0x9221[11]]({port:9002});function respondWithRpcPromise(_0x4526xb,_0x4526xc,_0x4526xd){return  new BPromise(function(_0x4526xe,_0x4526xf){return client[_0x9221[25]](_0x4526xb,_0x4526xd)[_0x9221[24]](function(_0x4526x11){logger[_0x9221[17]](_0x9221[13],_0x4526xc,_0x9221[16]);logger[_0x9221[20]](_0x9221[18],_0x4526xc,_0x9221[16],JSON[_0x9221[19]](_0x4526x11));if(_0x4526x11[_0x9221[14]]){if(_0x4526x11[_0x9221[14]][_0x9221[21]]=== 500){logger[_0x9221[14]](_0x9221[13],_0x4526xc,_0x4526x11[_0x9221[14]][_0x9221[22]]);return _0x4526xf(_0x4526x11[_0x9221[14]][_0x9221[22]])};logger[_0x9221[14]](_0x9221[13],_0x4526xc,_0x4526x11[_0x9221[14]][_0x9221[22]]);return _0x4526xe(_0x4526x11[_0x9221[14]][_0x9221[22]])}else {logger[_0x9221[17]](_0x9221[13],_0x4526xc,_0x9221[16]);_0x4526xe(_0x4526x11[_0x9221[23]][_0x9221[22]])}})[_0x9221[15]](function(_0x4526x10){logger[_0x9221[14]](_0x9221[13],_0x4526xc,_0x4526x10);_0x4526xf(_0x4526x10)})})}
\ No newline at end of file
+var _0x1f9c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x1f9c[0];var _=require(_0x1f9c[1]);var util=require(_0x1f9c[2]);var moment=require(_0x1f9c[3]);var BPromise=require(_0x1f9c[4]);var db=require(_0x1f9c[6])[_0x1f9c[5]];var utils=require(_0x1f9c[7]);var logger=require(_0x1f9c[9])(_0x1f9c[8]);var jayson=require(_0x1f9c[10]);var client=jayson[_0x1f9c[12]][_0x1f9c[11]]({port:9002});function respondWithRpcPromise(_0xa4adxb,_0xa4adxc,_0xa4adxd){return  new BPromise(function(_0xa4adxe,_0xa4adxf){return client[_0x1f9c[25]](_0xa4adxb,_0xa4adxd)[_0x1f9c[24]](function(_0xa4adx11){logger[_0x1f9c[17]](_0x1f9c[13],_0xa4adxc,_0x1f9c[16]);logger[_0x1f9c[20]](_0x1f9c[18],_0xa4adxc,_0x1f9c[16],JSON[_0x1f9c[19]](_0xa4adx11));if(_0xa4adx11[_0x1f9c[14]]){if(_0xa4adx11[_0x1f9c[14]][_0x1f9c[21]]=== 500){logger[_0x1f9c[14]](_0x1f9c[13],_0xa4adxc,_0xa4adx11[_0x1f9c[14]][_0x1f9c[22]]);return _0xa4adxf(_0xa4adx11[_0x1f9c[14]][_0x1f9c[22]])};logger[_0x1f9c[14]](_0x1f9c[13],_0xa4adxc,_0xa4adx11[_0x1f9c[14]][_0x1f9c[22]]);return _0xa4adxe(_0xa4adx11[_0x1f9c[14]][_0x1f9c[22]])}else {logger[_0x1f9c[17]](_0x1f9c[13],_0xa4adxc,_0x1f9c[16]);_0xa4adxe(_0xa4adx11[_0x1f9c[23]][_0x1f9c[22]])}})[_0x1f9c[15]](function(_0xa4adx10){logger[_0x1f9c[14]](_0x1f9c[13],_0xa4adxc,_0xa4adx10);_0xa4adxf(_0xa4adx10)})})}
\ No newline at end of file
index 54a17fe..1df089a 100644 (file)
@@ -1 +1 @@
-var _0xa2cc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x72\x75\x6E","\x72\x75\x6E","\x2F\x3A\x69\x64\x2F\x69\x74\x65\x6D\x73","\x67\x65\x74\x49\x74\x65\x6D\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x74\x65\x6D","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa2cc[0];var multer=require(_0xa2cc[1]);var util=require(_0xa2cc[2]);var path=require(_0xa2cc[3]);var express=require(_0xa2cc[4]);var router=express.Router();var auth=require(_0xa2cc[5]);var config=require(_0xa2cc[6]);var controller=require(_0xa2cc[7]);router[_0xa2cc[11]](_0xa2cc[8],auth[_0xa2cc[9]](),controller[_0xa2cc[10]]);router[_0xa2cc[11]](_0xa2cc[12],auth[_0xa2cc[9]](),controller[_0xa2cc[13]]);router[_0xa2cc[11]](_0xa2cc[14],auth[_0xa2cc[9]](),controller[_0xa2cc[15]]);router[_0xa2cc[11]](_0xa2cc[16],auth[_0xa2cc[9]](),controller[_0xa2cc[17]]);router[_0xa2cc[19]](_0xa2cc[8],auth[_0xa2cc[9]](),controller[_0xa2cc[18]]);router[_0xa2cc[19]](_0xa2cc[16],auth[_0xa2cc[9]](),controller[_0xa2cc[20]]);router[_0xa2cc[22]](_0xa2cc[12],auth[_0xa2cc[9]](),controller[_0xa2cc[21]]);router[_0xa2cc[24]](_0xa2cc[12],auth[_0xa2cc[9]](),controller[_0xa2cc[23]]);module[_0xa2cc[25]]= router
\ No newline at end of file
+var _0xf3c0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x72\x75\x6E","\x72\x75\x6E","\x2F\x3A\x69\x64\x2F\x69\x74\x65\x6D\x73","\x67\x65\x74\x49\x74\x65\x6D\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x74\x65\x6D","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf3c0[0];var multer=require(_0xf3c0[1]);var util=require(_0xf3c0[2]);var path=require(_0xf3c0[3]);var express=require(_0xf3c0[4]);var router=express.Router();var auth=require(_0xf3c0[5]);var config=require(_0xf3c0[6]);var controller=require(_0xf3c0[7]);router[_0xf3c0[11]](_0xf3c0[8],auth[_0xf3c0[9]](),controller[_0xf3c0[10]]);router[_0xf3c0[11]](_0xf3c0[12],auth[_0xf3c0[9]](),controller[_0xf3c0[13]]);router[_0xf3c0[11]](_0xf3c0[14],auth[_0xf3c0[9]](),controller[_0xf3c0[15]]);router[_0xf3c0[11]](_0xf3c0[16],auth[_0xf3c0[9]](),controller[_0xf3c0[17]]);router[_0xf3c0[19]](_0xf3c0[8],auth[_0xf3c0[9]](),controller[_0xf3c0[18]]);router[_0xf3c0[19]](_0xf3c0[16],auth[_0xf3c0[9]](),controller[_0xf3c0[20]]);router[_0xf3c0[22]](_0xf3c0[12],auth[_0xf3c0[9]](),controller[_0xf3c0[21]]);router[_0xf3c0[24]](_0xf3c0[12],auth[_0xf3c0[9]](),controller[_0xf3c0[23]]);module[_0xf3c0[25]]= router
\ No newline at end of file
index a6824d5..4c50f7f 100644 (file)
@@ -1 +1 @@
-var _0x79f4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x73\x71\x75\x65\x6C","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x63\x6F\x75\x6E\x74\x65\x72","\x74\x61\x62\x6C\x65","\x69\x66\x72\x61\x6D\x65","\x63\x6C\x6F\x63\x6B","\x49\x4E\x54\x45\x47\x45\x52","\x54\x45\x58\x54","\x42\x4C\x4F\x42","\x64\x61\x74\x61","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x71\x75\x65\x72\x79","\x73\x65\x6C\x65\x63\x74","\x66\x69\x65\x6C\x64\x73","\x69\x73\x41\x72\x72\x61\x79","\x6C\x65\x6E\x67\x74\x68","\x66\x69\x65\x6C\x64","\x66\x72\x6F\x6D","\x77\x68\x65\x72\x65","\x67\x72\x6F\x75\x70","\x6F\x72\x64\x65\x72","\x6C\x69\x6D\x69\x74"];_0x79f4[0];var Sequelize=require(_0x79f4[1]);var squel=require(_0x79f4[2]);var _=require(_0x79f4[3]);module[_0x79f4[4]]= {type:{type:Sequelize.ENUM(_0x79f4[5],_0x79f4[6],_0x79f4[7],_0x79f4[8]),allowNull:false,defaultValue:_0x79f4[8]},sizeX:{type:Sequelize[_0x79f4[9]],allowNull:false,defaultValue:1},sizeY:{type:Sequelize[_0x79f4[9]],allowNull:false,defaultValue:1},row:{type:Sequelize[_0x79f4[9]]},col:{type:Sequelize[_0x79f4[9]]},query:{type:Sequelize[_0x79f4[10]]},data:{type:Sequelize[_0x79f4[11]],get:function(){if(this[_0x79f4[13]](_0x79f4[12])){return JSON[_0x79f4[14]](this[_0x79f4[13]](_0x79f4[12]))}},set:function(_0x8c44x4){if(_0x8c44x4){var _0x8c44x5=JSON[_0x79f4[15]](_0x8c44x4);this[_0x79f4[16]](_0x79f4[12],_0x8c44x5);if(_0x8c44x4[_0x79f4[17]]){var _0x8c44x6=squel[_0x79f4[18]]();if(_0x8c44x4[_0x79f4[17]][_0x79f4[19]]){if(_[_0x79f4[20]](_0x8c44x4[_0x79f4[17]][_0x79f4[19]])){for(var _0x8c44x7=0;_0x8c44x7< _0x8c44x4[_0x79f4[17]][_0x79f4[19]][_0x79f4[21]];_0x8c44x7++){_0x8c44x6[_0x79f4[22]](_0x8c44x4[_0x79f4[17]][_0x79f4[19]][_0x8c44x7])}}else {_0x8c44x6[_0x79f4[22]](_0x8c44x4[_0x79f4[17]][_0x79f4[19]])}};if(_0x8c44x4[_0x79f4[17]][_0x79f4[23]]){_0x8c44x6[_0x79f4[23]](_0x8c44x4[_0x79f4[17]][_0x79f4[23]])};if(_0x8c44x4[_0x79f4[17]][_0x79f4[24]]){_0x8c44x6[_0x79f4[24]](_0x8c44x4[_0x79f4[17]][_0x79f4[24]])};if(_0x8c44x4[_0x79f4[17]][_0x79f4[25]]){_0x8c44x6[_0x79f4[25]](_0x8c44x4[_0x79f4[17]][_0x79f4[25]])};if(_0x8c44x4[_0x79f4[17]][_0x79f4[26]]){_0x8c44x6[_0x79f4[26]](_0x8c44x4[_0x79f4[17]][_0x79f4[26]])};if(_0x8c44x4[_0x79f4[17]][_0x79f4[27]]){_0x8c44x6[_0x79f4[27]](_0x8c44x4[_0x79f4[17]][_0x79f4[27]])};this[_0x79f4[16]](_0x79f4[17],_0x8c44x6.toString())}}}}}
\ No newline at end of file
+var _0x99d1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x73\x71\x75\x65\x6C","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x63\x6F\x75\x6E\x74\x65\x72","\x74\x61\x62\x6C\x65","\x69\x66\x72\x61\x6D\x65","\x63\x6C\x6F\x63\x6B","\x49\x4E\x54\x45\x47\x45\x52","\x54\x45\x58\x54","\x42\x4C\x4F\x42","\x64\x61\x74\x61","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x71\x75\x65\x72\x79","\x73\x65\x6C\x65\x63\x74","\x66\x69\x65\x6C\x64\x73","\x69\x73\x41\x72\x72\x61\x79","\x6C\x65\x6E\x67\x74\x68","\x66\x69\x65\x6C\x64","\x66\x72\x6F\x6D","\x77\x68\x65\x72\x65","\x67\x72\x6F\x75\x70","\x6F\x72\x64\x65\x72","\x6C\x69\x6D\x69\x74"];_0x99d1[0];var Sequelize=require(_0x99d1[1]);var squel=require(_0x99d1[2]);var _=require(_0x99d1[3]);module[_0x99d1[4]]= {type:{type:Sequelize.ENUM(_0x99d1[5],_0x99d1[6],_0x99d1[7],_0x99d1[8]),allowNull:false,defaultValue:_0x99d1[8]},sizeX:{type:Sequelize[_0x99d1[9]],allowNull:false,defaultValue:1},sizeY:{type:Sequelize[_0x99d1[9]],allowNull:false,defaultValue:1},row:{type:Sequelize[_0x99d1[9]]},col:{type:Sequelize[_0x99d1[9]]},query:{type:Sequelize[_0x99d1[10]]},data:{type:Sequelize[_0x99d1[11]],get:function(){if(this[_0x99d1[13]](_0x99d1[12])){return JSON[_0x99d1[14]](this[_0x99d1[13]](_0x99d1[12]))}},set:function(_0x567bx4){if(_0x567bx4){var _0x567bx5=JSON[_0x99d1[15]](_0x567bx4);this[_0x99d1[16]](_0x99d1[12],_0x567bx5);if(_0x567bx4[_0x99d1[17]]){var _0x567bx6=squel[_0x99d1[18]]();if(_0x567bx4[_0x99d1[17]][_0x99d1[19]]){if(_[_0x99d1[20]](_0x567bx4[_0x99d1[17]][_0x99d1[19]])){for(var _0x567bx7=0;_0x567bx7< _0x567bx4[_0x99d1[17]][_0x99d1[19]][_0x99d1[21]];_0x567bx7++){_0x567bx6[_0x99d1[22]](_0x567bx4[_0x99d1[17]][_0x99d1[19]][_0x567bx7])}}else {_0x567bx6[_0x99d1[22]](_0x567bx4[_0x99d1[17]][_0x99d1[19]])}};if(_0x567bx4[_0x99d1[17]][_0x99d1[23]]){_0x567bx6[_0x99d1[23]](_0x567bx4[_0x99d1[17]][_0x99d1[23]])};if(_0x567bx4[_0x99d1[17]][_0x99d1[24]]){_0x567bx6[_0x99d1[24]](_0x567bx4[_0x99d1[17]][_0x99d1[24]])};if(_0x567bx4[_0x99d1[17]][_0x99d1[25]]){_0x567bx6[_0x99d1[25]](_0x567bx4[_0x99d1[17]][_0x99d1[25]])};if(_0x567bx4[_0x99d1[17]][_0x99d1[26]]){_0x567bx6[_0x99d1[26]](_0x567bx4[_0x99d1[17]][_0x99d1[26]])};if(_0x567bx4[_0x99d1[17]][_0x99d1[27]]){_0x567bx6[_0x99d1[27]](_0x567bx4[_0x99d1[17]][_0x99d1[27]])};this[_0x99d1[16]](_0x99d1[17],_0x567bx6.toString())}}}}}
\ No newline at end of file
index 1fb5824..2b8cab5 100644 (file)
@@ -1 +1 @@
-var _0x13ef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x64\x62\x48","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x13ef[0];var jsonpatch=require(_0x13ef[1]);var rp=require(_0x13ef[2]);var moment=require(_0x13ef[3]);var BPromise=require(_0x13ef[4]);var util=require(_0x13ef[5]);var path=require(_0x13ef[6]);var sox=require(_0x13ef[7]);var ejs=require(_0x13ef[8]);var fs=require(_0x13ef[9]);var _=require(_0x13ef[10]);var squel=require(_0x13ef[11]);var crypto=require(_0x13ef[12]);var jsforce=require(_0x13ef[13]);var toCsv=require(_0x13ef[14]);var qs=require(_0x13ef[15]);var logger=require(_0x13ef[17])(_0x13ef[16]);var utils=require(_0x13ef[18]);var config=require(_0x13ef[19]);var db=require(_0x13ef[21])[_0x13ef[20]];var dbH=require(_0x13ef[21])[_0x13ef[22]];function respondWithStatusCode(_0x3752x16,_0x3752x17,_0x3752x18){_0x3752x17= _0x3752x17|| 204;return function(_0x3752x19){if(_0x3752x19){logger[_0x13ef[25]](_0x13ef[23],_0x3752x18,_0x3752x17,_0x13ef[24]);logger[_0x13ef[27]](_0x13ef[26],_0x3752x18,_0x3752x17,_0x13ef[24]);return _0x3752x16[_0x13ef[28]](_0x3752x17)};return _0x3752x16[_0x13ef[30]](304)[_0x13ef[29]]()}}function respondWithResult(_0x3752x16,_0x3752x17,_0x3752x18){_0x3752x17= _0x3752x17|| 200;return function(_0x3752x19){if(_0x3752x19){logger[_0x13ef[25]](_0x13ef[23],_0x3752x18,_0x3752x17,_0x13ef[31]);logger[_0x13ef[27]](_0x13ef[26],_0x3752x18,_0x3752x17,_0x13ef[31],JSON[_0x13ef[32]](_0x3752x19));return _0x3752x16[_0x13ef[30]](_0x3752x17)[_0x13ef[33]](_0x3752x19)};return _0x3752x16[_0x13ef[30]](304)[_0x13ef[29]]()}}function respondWithFilteredResult(_0x3752x16,_0x3752x1c,_0x3752x18){return function(_0x3752x19){if(_0x3752x19){var _0x3752x1d=_0x3752x19[_0x13ef[34]],_0x3752x1e=_0x3752x1c[_0x13ef[35]],_0x3752x1f=_0x3752x1c[_0x13ef[35]]+ _0x3752x1c[_0x13ef[36]],_0x3752x17;if(_0x3752x1f>= _0x3752x1d){_0x3752x1f= _0x3752x1d;_0x3752x17= 200}else {_0x3752x17= 206};_0x3752x16[_0x13ef[30]](_0x3752x17);logger[_0x13ef[25]](_0x13ef[23],_0x3752x18,_0x3752x17,_0x13ef[37]);logger[_0x13ef[27]](_0x13ef[26],_0x3752x18,_0x3752x17,_0x13ef[31],JSON[_0x13ef[32]](_0x3752x19));return _0x3752x16[_0x13ef[41]](_0x13ef[38],_0x3752x1e+ _0x13ef[39]+ _0x3752x1f+ _0x13ef[40]+ _0x3752x1d)[_0x13ef[33]](_0x3752x19)};return null}}function patchUpdates(_0x3752x21){return function(_0x3752x19){try{jsonpatch[_0x13ef[42]](_0x3752x19,_0x3752x21,true)}catch(err){return BPromise[_0x13ef[43]](err)};return _0x3752x19[_0x13ef[44]]()}}function saveUpdates(_0x3752x23,_0x3752x17,_0x3752x18){return function(_0x3752x19){if(_0x3752x19){return _0x3752x19[_0x13ef[47]](_0x3752x23)[_0x13ef[46]](function(_0x3752x24){logger[_0x13ef[25]](_0x13ef[23],_0x3752x18,_0x3752x17,_0x13ef[45]);logger[_0x13ef[27]](_0x13ef[26],_0x3752x18,_0x3752x17,_0x13ef[45],JSON[_0x13ef[32]](_0x3752x19));return _0x3752x24})};return null}}function removeEntity(_0x3752x16,_0x3752x17,_0x3752x18){return function(_0x3752x19){if(_0x3752x19){return _0x3752x19[_0x13ef[49]]()[_0x13ef[46]](function(){logger[_0x13ef[25]](_0x13ef[23],_0x3752x18,_0x3752x17,_0x13ef[48]);logger[_0x13ef[27]](_0x13ef[26],_0x3752x18,_0x3752x17,_0x13ef[48],JSON[_0x13ef[32]](_0x3752x19));_0x3752x16[_0x13ef[30]](204)[_0x13ef[29]]()})}}}function handleEntityNotFound(_0x3752x16,_0x3752x17,_0x3752x18){return function(_0x3752x19){if(!_0x3752x19){logger[_0x13ef[51]](_0x13ef[23],_0x3752x18,404,_0x13ef[50]);_0x3752x16[_0x13ef[30]](404)[_0x13ef[29]]();return null};return _0x3752x19}}function handleError(_0x3752x16,_0x3752x17,_0x3752x18){_0x3752x17= _0x3752x17|| 500;return function(_0x3752x28){logger[_0x13ef[51]](_0x13ef[23],_0x3752x18,_0x3752x17,JSON[_0x13ef[32]](_0x3752x28));delete _0x3752x28[_0x13ef[52]];_0x3752x16[_0x13ef[30]](_0x3752x17)[_0x13ef[53]](_0x3752x28)}}exports[_0x13ef[54]]= function(_0x3752x29,_0x3752x16){var _0x3752x1c={raw:false,where:{id:_0x3752x29[_0x13ef[56]][_0x13ef[55]]}},_0x3752x2a={};_0x3752x2a[_0x13ef[57]]= _[_0x13ef[60]](db[_0x13ef[59]][_0x13ef[58]]);_0x3752x2a[_0x13ef[61]]= _[_0x13ef[60]](_0x3752x29[_0x13ef[61]]);_0x3752x2a[_0x13ef[62]]= _[_0x13ef[63]](_0x3752x2a[_0x13ef[57]],_0x3752x2a[_0x13ef[61]]);_0x3752x1c[_0x13ef[64]]= _[_0x13ef[63]](_0x3752x2a[_0x13ef[57]],qs[_0x13ef[65]](_0x3752x29[_0x13ef[61]][_0x13ef[65]]));_0x3752x1c[_0x13ef[64]]= (_0x3752x1c[_0x13ef[64]][_0x13ef[66]])?_0x3752x1c[_0x13ef[64]]:_0x3752x2a[_0x13ef[57]];_0x3752x1c= _[_0x13ef[68]]({},_0x3752x1c,_0x3752x29[_0x13ef[67]]);return db[_0x13ef[59]][_0x13ef[70]](_0x3752x1c)[_0x13ef[46]](handleEntityNotFound(_0x3752x16,null,_0x13ef[54]))[_0x13ef[46]](respondWithResult(_0x3752x16,null,_0x13ef[54]))[_0x13ef[69]](handleError(_0x3752x16,null,_0x13ef[54]))};exports[_0x13ef[47]]= function(_0x3752x29,_0x3752x16){if(_0x3752x29[_0x13ef[71]][_0x13ef[55]]){delete _0x3752x29[_0x13ef[71]][_0x13ef[55]]};return db[_0x13ef[59]][_0x13ef[70]]({where:{id:_0x3752x29[_0x13ef[56]][_0x13ef[55]]}})[_0x13ef[46]](handleEntityNotFound(_0x3752x16,null,_0x13ef[47]))[_0x13ef[46]](saveUpdates(_0x3752x29[_0x13ef[71]],null,_0x13ef[47]))[_0x13ef[46]](respondWithResult(_0x3752x16,null,_0x13ef[47]))[_0x13ef[69]](handleError(_0x3752x16,null,_0x13ef[47]))};exports[_0x13ef[49]]= function(_0x3752x29,_0x3752x16){return db[_0x13ef[59]][_0x13ef[70]]({where:{id:_0x3752x29[_0x13ef[56]][_0x13ef[55]]}})[_0x13ef[46]](handleEntityNotFound(_0x3752x16,null,_0x13ef[49]))[_0x13ef[46]](removeEntity(_0x3752x16,null,_0x13ef[49]))[_0x13ef[69]](handleError(_0x3752x16,null,_0x13ef[49]))}
\ No newline at end of file
+var _0x45ff=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x64\x62\x48","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x45ff[0];var jsonpatch=require(_0x45ff[1]);var rp=require(_0x45ff[2]);var moment=require(_0x45ff[3]);var BPromise=require(_0x45ff[4]);var util=require(_0x45ff[5]);var path=require(_0x45ff[6]);var sox=require(_0x45ff[7]);var ejs=require(_0x45ff[8]);var fs=require(_0x45ff[9]);var _=require(_0x45ff[10]);var squel=require(_0x45ff[11]);var crypto=require(_0x45ff[12]);var jsforce=require(_0x45ff[13]);var toCsv=require(_0x45ff[14]);var qs=require(_0x45ff[15]);var logger=require(_0x45ff[17])(_0x45ff[16]);var utils=require(_0x45ff[18]);var config=require(_0x45ff[19]);var db=require(_0x45ff[21])[_0x45ff[20]];var dbH=require(_0x45ff[21])[_0x45ff[22]];function respondWithStatusCode(_0xd3e4x16,_0xd3e4x17,_0xd3e4x18){_0xd3e4x17= _0xd3e4x17|| 204;return function(_0xd3e4x19){if(_0xd3e4x19){logger[_0x45ff[25]](_0x45ff[23],_0xd3e4x18,_0xd3e4x17,_0x45ff[24]);logger[_0x45ff[27]](_0x45ff[26],_0xd3e4x18,_0xd3e4x17,_0x45ff[24]);return _0xd3e4x16[_0x45ff[28]](_0xd3e4x17)};return _0xd3e4x16[_0x45ff[30]](304)[_0x45ff[29]]()}}function respondWithResult(_0xd3e4x16,_0xd3e4x17,_0xd3e4x18){_0xd3e4x17= _0xd3e4x17|| 200;return function(_0xd3e4x19){if(_0xd3e4x19){logger[_0x45ff[25]](_0x45ff[23],_0xd3e4x18,_0xd3e4x17,_0x45ff[31]);logger[_0x45ff[27]](_0x45ff[26],_0xd3e4x18,_0xd3e4x17,_0x45ff[31],JSON[_0x45ff[32]](_0xd3e4x19));return _0xd3e4x16[_0x45ff[30]](_0xd3e4x17)[_0x45ff[33]](_0xd3e4x19)};return _0xd3e4x16[_0x45ff[30]](304)[_0x45ff[29]]()}}function respondWithFilteredResult(_0xd3e4x16,_0xd3e4x1c,_0xd3e4x18){return function(_0xd3e4x19){if(_0xd3e4x19){var _0xd3e4x1d=_0xd3e4x19[_0x45ff[34]],_0xd3e4x1e=_0xd3e4x1c[_0x45ff[35]],_0xd3e4x1f=_0xd3e4x1c[_0x45ff[35]]+ _0xd3e4x1c[_0x45ff[36]],_0xd3e4x17;if(_0xd3e4x1f>= _0xd3e4x1d){_0xd3e4x1f= _0xd3e4x1d;_0xd3e4x17= 200}else {_0xd3e4x17= 206};_0xd3e4x16[_0x45ff[30]](_0xd3e4x17);logger[_0x45ff[25]](_0x45ff[23],_0xd3e4x18,_0xd3e4x17,_0x45ff[37]);logger[_0x45ff[27]](_0x45ff[26],_0xd3e4x18,_0xd3e4x17,_0x45ff[31],JSON[_0x45ff[32]](_0xd3e4x19));return _0xd3e4x16[_0x45ff[41]](_0x45ff[38],_0xd3e4x1e+ _0x45ff[39]+ _0xd3e4x1f+ _0x45ff[40]+ _0xd3e4x1d)[_0x45ff[33]](_0xd3e4x19)};return null}}function patchUpdates(_0xd3e4x21){return function(_0xd3e4x19){try{jsonpatch[_0x45ff[42]](_0xd3e4x19,_0xd3e4x21,true)}catch(err){return BPromise[_0x45ff[43]](err)};return _0xd3e4x19[_0x45ff[44]]()}}function saveUpdates(_0xd3e4x23,_0xd3e4x17,_0xd3e4x18){return function(_0xd3e4x19){if(_0xd3e4x19){return _0xd3e4x19[_0x45ff[47]](_0xd3e4x23)[_0x45ff[46]](function(_0xd3e4x24){logger[_0x45ff[25]](_0x45ff[23],_0xd3e4x18,_0xd3e4x17,_0x45ff[45]);logger[_0x45ff[27]](_0x45ff[26],_0xd3e4x18,_0xd3e4x17,_0x45ff[45],JSON[_0x45ff[32]](_0xd3e4x19));return _0xd3e4x24})};return null}}function removeEntity(_0xd3e4x16,_0xd3e4x17,_0xd3e4x18){return function(_0xd3e4x19){if(_0xd3e4x19){return _0xd3e4x19[_0x45ff[49]]()[_0x45ff[46]](function(){logger[_0x45ff[25]](_0x45ff[23],_0xd3e4x18,_0xd3e4x17,_0x45ff[48]);logger[_0x45ff[27]](_0x45ff[26],_0xd3e4x18,_0xd3e4x17,_0x45ff[48],JSON[_0x45ff[32]](_0xd3e4x19));_0xd3e4x16[_0x45ff[30]](204)[_0x45ff[29]]()})}}}function handleEntityNotFound(_0xd3e4x16,_0xd3e4x17,_0xd3e4x18){return function(_0xd3e4x19){if(!_0xd3e4x19){logger[_0x45ff[51]](_0x45ff[23],_0xd3e4x18,404,_0x45ff[50]);_0xd3e4x16[_0x45ff[30]](404)[_0x45ff[29]]();return null};return _0xd3e4x19}}function handleError(_0xd3e4x16,_0xd3e4x17,_0xd3e4x18){_0xd3e4x17= _0xd3e4x17|| 500;return function(_0xd3e4x28){logger[_0x45ff[51]](_0x45ff[23],_0xd3e4x18,_0xd3e4x17,JSON[_0x45ff[32]](_0xd3e4x28));delete _0xd3e4x28[_0x45ff[52]];_0xd3e4x16[_0x45ff[30]](_0xd3e4x17)[_0x45ff[53]](_0xd3e4x28)}}exports[_0x45ff[54]]= function(_0xd3e4x29,_0xd3e4x16){var _0xd3e4x1c={raw:false,where:{id:_0xd3e4x29[_0x45ff[56]][_0x45ff[55]]}},_0xd3e4x2a={};_0xd3e4x2a[_0x45ff[57]]= _[_0x45ff[60]](db[_0x45ff[59]][_0x45ff[58]]);_0xd3e4x2a[_0x45ff[61]]= _[_0x45ff[60]](_0xd3e4x29[_0x45ff[61]]);_0xd3e4x2a[_0x45ff[62]]= _[_0x45ff[63]](_0xd3e4x2a[_0x45ff[57]],_0xd3e4x2a[_0x45ff[61]]);_0xd3e4x1c[_0x45ff[64]]= _[_0x45ff[63]](_0xd3e4x2a[_0x45ff[57]],qs[_0x45ff[65]](_0xd3e4x29[_0x45ff[61]][_0x45ff[65]]));_0xd3e4x1c[_0x45ff[64]]= (_0xd3e4x1c[_0x45ff[64]][_0x45ff[66]])?_0xd3e4x1c[_0x45ff[64]]:_0xd3e4x2a[_0x45ff[57]];_0xd3e4x1c= _[_0x45ff[68]]({},_0xd3e4x1c,_0xd3e4x29[_0x45ff[67]]);return db[_0x45ff[59]][_0x45ff[70]](_0xd3e4x1c)[_0x45ff[46]](handleEntityNotFound(_0xd3e4x16,null,_0x45ff[54]))[_0x45ff[46]](respondWithResult(_0xd3e4x16,null,_0x45ff[54]))[_0x45ff[69]](handleError(_0xd3e4x16,null,_0x45ff[54]))};exports[_0x45ff[47]]= function(_0xd3e4x29,_0xd3e4x16){if(_0xd3e4x29[_0x45ff[71]][_0x45ff[55]]){delete _0xd3e4x29[_0x45ff[71]][_0x45ff[55]]};return db[_0x45ff[59]][_0x45ff[70]]({where:{id:_0xd3e4x29[_0x45ff[56]][_0x45ff[55]]}})[_0x45ff[46]](handleEntityNotFound(_0xd3e4x16,null,_0x45ff[47]))[_0x45ff[46]](saveUpdates(_0xd3e4x29[_0x45ff[71]],null,_0x45ff[47]))[_0x45ff[46]](respondWithResult(_0xd3e4x16,null,_0x45ff[47]))[_0x45ff[69]](handleError(_0xd3e4x16,null,_0x45ff[47]))};exports[_0x45ff[49]]= function(_0xd3e4x29,_0xd3e4x16){return db[_0x45ff[59]][_0x45ff[70]]({where:{id:_0xd3e4x29[_0x45ff[56]][_0x45ff[55]]}})[_0x45ff[46]](handleEntityNotFound(_0xd3e4x16,null,_0x45ff[49]))[_0x45ff[46]](removeEntity(_0xd3e4x16,null,_0x45ff[49]))[_0x45ff[69]](handleError(_0xd3e4x16,null,_0x45ff[49]))}
\ No newline at end of file
index 2205543..d028995 100644 (file)
@@ -1 +1 @@
-var _0x8864=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x5F\x69\x74\x65\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x8864[0];var _=require(_0x8864[1]);var util=require(_0x8864[2]);var logger=require(_0x8864[4])(_0x8864[3]);var attributes=require(_0x8864[5]);module[_0x8864[6]]= function(_0x87c7x5,_0x87c7x6){return _0x87c7x5[_0x8864[9]](_0x8864[7],attributes,{tableName:_0x8864[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x826d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x5F\x69\x74\x65\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x826d[0];var _=require(_0x826d[1]);var util=require(_0x826d[2]);var logger=require(_0x826d[4])(_0x826d[3]);var attributes=require(_0x826d[5]);module[_0x826d[6]]= function(_0x6e88x5,_0x6e88x6){return _0x6e88x5[_0x826d[9]](_0x826d[7],attributes,{tableName:_0x826d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 23dc046..645c661 100644 (file)
@@ -1 +1 @@
-var _0x19f5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x19f5[0];var _=require(_0x19f5[1]);var util=require(_0x19f5[2]);var moment=require(_0x19f5[3]);var BPromise=require(_0x19f5[4]);var db=require(_0x19f5[6])[_0x19f5[5]];var utils=require(_0x19f5[7]);var logger=require(_0x19f5[9])(_0x19f5[8]);var jayson=require(_0x19f5[10]);var client=jayson[_0x19f5[12]][_0x19f5[11]]({port:9002});function respondWithRpcPromise(_0x1accxb,_0x1accxc,_0x1accxd){return  new BPromise(function(_0x1accxe,_0x1accxf){return client[_0x19f5[25]](_0x1accxb,_0x1accxd)[_0x19f5[24]](function(_0x1accx11){logger[_0x19f5[17]](_0x19f5[13],_0x1accxc,_0x19f5[16]);logger[_0x19f5[20]](_0x19f5[18],_0x1accxc,_0x19f5[16],JSON[_0x19f5[19]](_0x1accx11));if(_0x1accx11[_0x19f5[14]]){if(_0x1accx11[_0x19f5[14]][_0x19f5[21]]=== 500){logger[_0x19f5[14]](_0x19f5[13],_0x1accxc,_0x1accx11[_0x19f5[14]][_0x19f5[22]]);return _0x1accxf(_0x1accx11[_0x19f5[14]][_0x19f5[22]])};logger[_0x19f5[14]](_0x19f5[13],_0x1accxc,_0x1accx11[_0x19f5[14]][_0x19f5[22]]);return _0x1accxe(_0x1accx11[_0x19f5[14]][_0x19f5[22]])}else {logger[_0x19f5[17]](_0x19f5[13],_0x1accxc,_0x19f5[16]);_0x1accxe(_0x1accx11[_0x19f5[23]][_0x19f5[22]])}})[_0x19f5[15]](function(_0x1accx10){logger[_0x19f5[14]](_0x19f5[13],_0x1accxc,_0x1accx10);_0x1accxf(_0x1accx10)})})}
\ No newline at end of file
+var _0xbb8e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xbb8e[0];var _=require(_0xbb8e[1]);var util=require(_0xbb8e[2]);var moment=require(_0xbb8e[3]);var BPromise=require(_0xbb8e[4]);var db=require(_0xbb8e[6])[_0xbb8e[5]];var utils=require(_0xbb8e[7]);var logger=require(_0xbb8e[9])(_0xbb8e[8]);var jayson=require(_0xbb8e[10]);var client=jayson[_0xbb8e[12]][_0xbb8e[11]]({port:9002});function respondWithRpcPromise(_0x4163xb,_0x4163xc,_0x4163xd){return  new BPromise(function(_0x4163xe,_0x4163xf){return client[_0xbb8e[25]](_0x4163xb,_0x4163xd)[_0xbb8e[24]](function(_0x4163x11){logger[_0xbb8e[17]](_0xbb8e[13],_0x4163xc,_0xbb8e[16]);logger[_0xbb8e[20]](_0xbb8e[18],_0x4163xc,_0xbb8e[16],JSON[_0xbb8e[19]](_0x4163x11));if(_0x4163x11[_0xbb8e[14]]){if(_0x4163x11[_0xbb8e[14]][_0xbb8e[21]]=== 500){logger[_0xbb8e[14]](_0xbb8e[13],_0x4163xc,_0x4163x11[_0xbb8e[14]][_0xbb8e[22]]);return _0x4163xf(_0x4163x11[_0xbb8e[14]][_0xbb8e[22]])};logger[_0xbb8e[14]](_0xbb8e[13],_0x4163xc,_0x4163x11[_0xbb8e[14]][_0xbb8e[22]]);return _0x4163xe(_0x4163x11[_0xbb8e[14]][_0xbb8e[22]])}else {logger[_0xbb8e[17]](_0xbb8e[13],_0x4163xc,_0xbb8e[16]);_0x4163xe(_0x4163x11[_0xbb8e[23]][_0xbb8e[22]])}})[_0xbb8e[15]](function(_0x4163x10){logger[_0xbb8e[14]](_0xbb8e[13],_0x4163xc,_0x4163x10);_0x4163xf(_0x4163x10)})})}
\ No newline at end of file
index 8510d0a..7cf9e33 100644 (file)
@@ -1 +1 @@
-var _0x8db0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8db0[0];var multer=require(_0x8db0[1]);var util=require(_0x8db0[2]);var path=require(_0x8db0[3]);var express=require(_0x8db0[4]);var router=express.Router();var auth=require(_0x8db0[5]);var config=require(_0x8db0[6]);var controller=require(_0x8db0[7]);router[_0x8db0[11]](_0x8db0[8],auth[_0x8db0[9]](),controller[_0x8db0[10]]);router[_0x8db0[13]](_0x8db0[8],auth[_0x8db0[9]](),controller[_0x8db0[12]]);router[_0x8db0[15]](_0x8db0[8],auth[_0x8db0[9]](),controller[_0x8db0[14]]);module[_0x8db0[16]]= router
\ No newline at end of file
+var _0xfd18=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xfd18[0];var multer=require(_0xfd18[1]);var util=require(_0xfd18[2]);var path=require(_0xfd18[3]);var express=require(_0xfd18[4]);var router=express.Router();var auth=require(_0xfd18[5]);var config=require(_0xfd18[6]);var controller=require(_0xfd18[7]);router[_0xfd18[11]](_0xfd18[8],auth[_0xfd18[9]](),controller[_0xfd18[10]]);router[_0xfd18[13]](_0xfd18[8],auth[_0xfd18[9]](),controller[_0xfd18[12]]);router[_0xfd18[15]](_0xfd18[8],auth[_0xfd18[9]](),controller[_0xfd18[14]]);module[_0xfd18[16]]= router
\ No newline at end of file
index fcbeb27..f49fb24 100644 (file)
@@ -1 +1 @@
-var _0xf39e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x79\x65\x73","\x6E\x6F","\x78\x43\x41\x4C\x4C\x59\x20\x4D\x6F\x74\x69\x6F\x6E\x20\x46\x61\x78","\x6C\x6F\x63\x61\x6C\x73\x74\x61\x74\x69\x6F\x6E\x69\x64","\x32\x34\x30\x30","\x34\x38\x30\x30","\x37\x32\x30\x30","\x39\x36\x30\x30","\x31\x32\x30\x30\x30","\x31\x34\x34\x30\x30","\x76\x31\x37\x2C\x76\x32\x37\x2C\x76\x32\x39","\x49\x4E\x54\x45\x47\x45\x52","\x53\x49\x50","\x49\x41\x58","\x44\x41\x44\x48\x49","\x4B\x48\x4F\x4D\x50","\x42\x4F\x4F\x4C\x45\x41\x4E","\x47\x45\x54","\x50\x4F\x53\x54","\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0xf39e[0];var Sequelize=require(_0xf39e[1]);module[_0xf39e[2]]= {name:{type:Sequelize[_0xf39e[3]],allowNull:false,validate:{notEmpty:true}},description:{type:Sequelize[_0xf39e[3]]},ecm:{type:Sequelize.ENUM(_0xf39e[4],_0xf39e[5]),defaultValue:_0xf39e[4]},headerinfo:{type:Sequelize[_0xf39e[3]],defaultValue:_0xf39e[6]},localstationid:{type:Sequelize[_0xf39e[3]],unique:_0xf39e[7]},minrate:{type:Sequelize.ENUM(_0xf39e[8],_0xf39e[9],_0xf39e[10],_0xf39e[11],_0xf39e[12],_0xf39e[13]),defaultValue:_0xf39e[9]},maxrate:{type:Sequelize.ENUM(_0xf39e[8],_0xf39e[9],_0xf39e[10],_0xf39e[11],_0xf39e[12],_0xf39e[13]),defaultValue:_0xf39e[13]},modem:{type:Sequelize[_0xf39e[3]],defaultValue:_0xf39e[14]},gateway:{type:Sequelize[_0xf39e[3]],defaultValue:_0xf39e[5],validate:{is:/^(?:yes|no|[0-9]+)$/}},faxdetect:{type:Sequelize[_0xf39e[3]],defaultValue:_0xf39e[5],validate:{is:/^(?:yes|no|t38|cng|[0-9]+)$/}},t38timeout:{type:Sequelize[_0xf39e[15]],defaultValue:5000,validate:{min:1000}},tech:{type:Sequelize.ENUM(_0xf39e[16],_0xf39e[17],_0xf39e[18],_0xf39e[19]),defaultValue:_0xf39e[16]},fidelity:{type:Sequelize[_0xf39e[20]],defaultValue:false},timeout:{type:Sequelize[_0xf39e[15]],defaultValue:0},acceptUrl:{type:Sequelize[_0xf39e[3]]},rejectUrl:{type:Sequelize[_0xf39e[3]]},acceptMethod:{type:Sequelize.ENUM(_0xf39e[21],_0xf39e[22])},rejectMethod:{type:Sequelize.ENUM(_0xf39e[21],_0xf39e[22])},actions:{type:Sequelize[_0xf39e[3]],get:function(){return this[_0xf39e[24]](_0xf39e[23])?JSON[_0xf39e[25]](this[_0xf39e[24]](_0xf39e[23])):[]},set:function(_0x7513x2){return this[_0xf39e[27]](_0xf39e[23],JSON[_0xf39e[26]](_0x7513x2))}},closeUrl:{type:Sequelize[_0xf39e[3]]},closeMethod:{type:Sequelize.ENUM(_0xf39e[21],_0xf39e[22])}}
\ No newline at end of file
+var _0x369b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x79\x65\x73","\x6E\x6F","\x78\x43\x41\x4C\x4C\x59\x20\x4D\x6F\x74\x69\x6F\x6E\x20\x46\x61\x78","\x6C\x6F\x63\x61\x6C\x73\x74\x61\x74\x69\x6F\x6E\x69\x64","\x32\x34\x30\x30","\x34\x38\x30\x30","\x37\x32\x30\x30","\x39\x36\x30\x30","\x31\x32\x30\x30\x30","\x31\x34\x34\x30\x30","\x76\x31\x37\x2C\x76\x32\x37\x2C\x76\x32\x39","\x49\x4E\x54\x45\x47\x45\x52","\x53\x49\x50","\x49\x41\x58","\x44\x41\x44\x48\x49","\x4B\x48\x4F\x4D\x50","\x42\x4F\x4F\x4C\x45\x41\x4E","\x47\x45\x54","\x50\x4F\x53\x54","\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0x369b[0];var Sequelize=require(_0x369b[1]);module[_0x369b[2]]= {name:{type:Sequelize[_0x369b[3]],allowNull:false,validate:{notEmpty:true}},description:{type:Sequelize[_0x369b[3]]},ecm:{type:Sequelize.ENUM(_0x369b[4],_0x369b[5]),defaultValue:_0x369b[4]},headerinfo:{type:Sequelize[_0x369b[3]],defaultValue:_0x369b[6]},localstationid:{type:Sequelize[_0x369b[3]],unique:_0x369b[7]},minrate:{type:Sequelize.ENUM(_0x369b[8],_0x369b[9],_0x369b[10],_0x369b[11],_0x369b[12],_0x369b[13]),defaultValue:_0x369b[9]},maxrate:{type:Sequelize.ENUM(_0x369b[8],_0x369b[9],_0x369b[10],_0x369b[11],_0x369b[12],_0x369b[13]),defaultValue:_0x369b[13]},modem:{type:Sequelize[_0x369b[3]],defaultValue:_0x369b[14]},gateway:{type:Sequelize[_0x369b[3]],defaultValue:_0x369b[5],validate:{is:/^(?:yes|no|[0-9]+)$/}},faxdetect:{type:Sequelize[_0x369b[3]],defaultValue:_0x369b[5],validate:{is:/^(?:yes|no|t38|cng|[0-9]+)$/}},t38timeout:{type:Sequelize[_0x369b[15]],defaultValue:5000,validate:{min:1000}},tech:{type:Sequelize.ENUM(_0x369b[16],_0x369b[17],_0x369b[18],_0x369b[19]),defaultValue:_0x369b[16]},fidelity:{type:Sequelize[_0x369b[20]],defaultValue:false},timeout:{type:Sequelize[_0x369b[15]],defaultValue:0},acceptUrl:{type:Sequelize[_0x369b[3]]},rejectUrl:{type:Sequelize[_0x369b[3]]},acceptMethod:{type:Sequelize.ENUM(_0x369b[21],_0x369b[22])},rejectMethod:{type:Sequelize.ENUM(_0x369b[21],_0x369b[22])},actions:{type:Sequelize[_0x369b[3]],get:function(){return this[_0x369b[24]](_0x369b[23])?JSON[_0x369b[25]](this[_0x369b[24]](_0x369b[23])):[]},set:function(_0x28fdx2){return this[_0x369b[27]](_0x369b[23],JSON[_0x369b[26]](_0x28fdx2))}},closeUrl:{type:Sequelize[_0x369b[3]]},closeMethod:{type:Sequelize.ENUM(_0x369b[21],_0x369b[22])}}
\ No newline at end of file
index ccfa182..a463a27 100644 (file)
@@ -1 +1 @@
-var _0x78dd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73"];_0x78dd[0];var jsonpatch=require(_0x78dd[1]);var rp=require(_0x78dd[2]);var moment=require(_0x78dd[3]);var BPromise=require(_0x78dd[4]);var util=require(_0x78dd[5]);var path=require(_0x78dd[6]);var sox=require(_0x78dd[7]);var ejs=require(_0x78dd[8]);var fs=require(_0x78dd[9]);var _=require(_0x78dd[10]);var squel=require(_0x78dd[11]);var crypto=require(_0x78dd[12]);var jsforce=require(_0x78dd[13]);var toCsv=require(_0x78dd[14]);var qs=require(_0x78dd[15]);var logger=require(_0x78dd[17])(_0x78dd[16]);var utils=require(_0x78dd[18]);var config=require(_0x78dd[19]);var db=require(_0x78dd[21])[_0x78dd[20]];function respondWithStatusCode(_0x33c9x15,_0x33c9x16,_0x33c9x17){_0x33c9x16= _0x33c9x16|| 204;return function(_0x33c9x18){if(_0x33c9x18){logger[_0x78dd[24]](_0x78dd[22],_0x33c9x17,_0x33c9x16,_0x78dd[23]);logger[_0x78dd[26]](_0x78dd[25],_0x33c9x17,_0x33c9x16,_0x78dd[23]);return _0x33c9x15[_0x78dd[27]](_0x33c9x16)};return _0x33c9x15[_0x78dd[29]](304)[_0x78dd[28]]()}}function respondWithResult(_0x33c9x15,_0x33c9x16,_0x33c9x17){_0x33c9x16= _0x33c9x16|| 200;return function(_0x33c9x18){if(_0x33c9x18){logger[_0x78dd[24]](_0x78dd[22],_0x33c9x17,_0x33c9x16,_0x78dd[30]);logger[_0x78dd[26]](_0x78dd[25],_0x33c9x17,_0x33c9x16,_0x78dd[30],JSON[_0x78dd[31]](_0x33c9x18));return _0x33c9x15[_0x78dd[29]](_0x33c9x16)[_0x78dd[32]](_0x33c9x18)};return _0x33c9x15[_0x78dd[29]](304)[_0x78dd[28]]()}}function respondWithFilteredResult(_0x33c9x15,_0x33c9x1b,_0x33c9x17){return function(_0x33c9x18){if(_0x33c9x18){var _0x33c9x1c=_0x33c9x18[_0x78dd[33]],_0x33c9x1d=_0x33c9x1b[_0x78dd[34]],_0x33c9x1e=_0x33c9x1b[_0x78dd[34]]+ _0x33c9x1b[_0x78dd[35]],_0x33c9x16;if(_0x33c9x1e>= _0x33c9x1c){_0x33c9x1e= _0x33c9x1c;_0x33c9x16= 200}else {_0x33c9x16= 206};_0x33c9x15[_0x78dd[29]](_0x33c9x16);logger[_0x78dd[24]](_0x78dd[22],_0x33c9x17,_0x33c9x16,_0x78dd[36]);logger[_0x78dd[26]](_0x78dd[25],_0x33c9x17,_0x33c9x16,_0x78dd[30],JSON[_0x78dd[31]](_0x33c9x18));return _0x33c9x15[_0x78dd[40]](_0x78dd[37],_0x33c9x1d+ _0x78dd[38]+ _0x33c9x1e+ _0x78dd[39]+ _0x33c9x1c)[_0x78dd[32]](_0x33c9x18)};return null}}function patchUpdates(_0x33c9x20){return function(_0x33c9x18){try{jsonpatch[_0x78dd[41]](_0x33c9x18,_0x33c9x20,true)}catch(err){return BPromise[_0x78dd[42]](err)};return _0x33c9x18[_0x78dd[43]]()}}function saveUpdates(_0x33c9x22,_0x33c9x16,_0x33c9x17){return function(_0x33c9x18){if(_0x33c9x18){return _0x33c9x18[_0x78dd[46]](_0x33c9x22)[_0x78dd[45]](function(_0x33c9x23){logger[_0x78dd[24]](_0x78dd[22],_0x33c9x17,_0x33c9x16,_0x78dd[44]);logger[_0x78dd[26]](_0x78dd[25],_0x33c9x17,_0x33c9x16,_0x78dd[44],JSON[_0x78dd[31]](_0x33c9x18));return _0x33c9x23})};return null}}function removeEntity(_0x33c9x15,_0x33c9x16,_0x33c9x17){return function(_0x33c9x18){if(_0x33c9x18){return _0x33c9x18[_0x78dd[48]]()[_0x78dd[45]](function(){logger[_0x78dd[24]](_0x78dd[22],_0x33c9x17,_0x33c9x16,_0x78dd[47]);logger[_0x78dd[26]](_0x78dd[25],_0x33c9x17,_0x33c9x16,_0x78dd[47],JSON[_0x78dd[31]](_0x33c9x18));_0x33c9x15[_0x78dd[29]](204)[_0x78dd[28]]()})}}}function handleEntityNotFound(_0x33c9x15,_0x33c9x16,_0x33c9x17){return function(_0x33c9x18){if(!_0x33c9x18){logger[_0x78dd[50]](_0x78dd[22],_0x33c9x17,404,_0x78dd[49]);_0x33c9x15[_0x78dd[29]](404)[_0x78dd[28]]();return null};return _0x33c9x18}}function handleError(_0x33c9x15,_0x33c9x16,_0x33c9x17){_0x33c9x16= _0x33c9x16|| 500;return function(_0x33c9x27){logger[_0x78dd[50]](_0x78dd[22],_0x33c9x17,_0x33c9x16,JSON[_0x78dd[31]](_0x33c9x27));delete _0x33c9x27[_0x78dd[51]];_0x33c9x15[_0x78dd[29]](_0x33c9x16)[_0x78dd[52]](_0x33c9x27)}}exports[_0x78dd[53]]= function(_0x33c9x28,_0x33c9x15){var _0x33c9x1b={},_0x33c9x29={};_0x33c9x29[_0x78dd[54]]= _[_0x78dd[57]](db[_0x78dd[56]][_0x78dd[55]]);_0x33c9x29[_0x78dd[58]]= _[_0x78dd[57]](_0x33c9x28[_0x78dd[58]]);_0x33c9x29[_0x78dd[59]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],_0x33c9x29[_0x78dd[58]]);_0x33c9x1b[_0x78dd[61]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],qs[_0x78dd[62]](_0x33c9x28[_0x78dd[58]][_0x78dd[62]]));_0x33c9x1b[_0x78dd[61]]= (_0x33c9x1b[_0x78dd[61]][_0x78dd[63]])?_0x33c9x1b[_0x78dd[61]]:_0x33c9x29[_0x78dd[54]];if(!_0x33c9x28[_0x78dd[58]][_0x78dd[65]](_0x78dd[64])){_0x33c9x1b[_0x78dd[35]]= qs[_0x78dd[35]](_0x33c9x28[_0x78dd[58]][_0x78dd[35]]);_0x33c9x1b[_0x78dd[34]]= qs[_0x78dd[34]](_0x33c9x28[_0x78dd[58]][_0x78dd[34]])};_0x33c9x1b[_0x78dd[66]]= qs[_0x78dd[67]](_0x33c9x28[_0x78dd[58]][_0x78dd[67]]);_0x33c9x1b[_0x78dd[68]]= qs[_0x78dd[59]](_[_0x78dd[69]](_0x33c9x28[_0x78dd[58]],_0x33c9x29[_0x78dd[59]]));if(_0x33c9x28[_0x78dd[58]][_0x78dd[70]]){_0x33c9x1b[_0x78dd[68]]= _[_0x78dd[73]](_0x33c9x1b[_0x78dd[68]],{$or:_[_0x78dd[72]](_0x33c9x1b[_0x78dd[61]],function(_0x33c9x2a){var _0x33c9x2b={};_0x33c9x2b[_0x33c9x2a]= {$like:_0x78dd[71]+ _0x33c9x28[_0x78dd[58]][_0x78dd[70]]+ _0x78dd[71]};return _0x33c9x2b})})};_0x33c9x1b= _[_0x78dd[73]]({},_0x33c9x1b,_0x33c9x28[_0x78dd[74]]);return db[_0x78dd[56]][_0x78dd[76]](_0x33c9x1b)[_0x78dd[45]](respondWithFilteredResult(_0x33c9x15,_0x33c9x1b,_0x78dd[53]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[53]))};exports[_0x78dd[77]]= function(_0x33c9x28,_0x33c9x15){var _0x33c9x1b={raw:false,where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}},_0x33c9x29={};_0x33c9x29[_0x78dd[54]]= _[_0x78dd[57]](db[_0x78dd[56]][_0x78dd[55]]);_0x33c9x29[_0x78dd[58]]= _[_0x78dd[57]](_0x33c9x28[_0x78dd[58]]);_0x33c9x29[_0x78dd[59]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],_0x33c9x29[_0x78dd[58]]);_0x33c9x1b[_0x78dd[61]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],qs[_0x78dd[62]](_0x33c9x28[_0x78dd[58]][_0x78dd[62]]));_0x33c9x1b[_0x78dd[61]]= (_0x33c9x1b[_0x78dd[61]][_0x78dd[63]])?_0x33c9x1b[_0x78dd[61]]:_0x33c9x29[_0x78dd[54]];_0x33c9x1b= _[_0x78dd[73]]({},_0x33c9x1b,_0x33c9x28[_0x78dd[74]]);return db[_0x78dd[56]][_0x78dd[80]](_0x33c9x1b)[_0x78dd[45]](handleEntityNotFound(_0x33c9x15,null,_0x78dd[77]))[_0x78dd[45]](respondWithResult(_0x33c9x15,null,_0x78dd[77]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[77]))};exports[_0x78dd[81]]= function(_0x33c9x28,_0x33c9x15){return db[_0x78dd[56]][_0x78dd[81]](_0x33c9x28[_0x78dd[82]],{})[_0x78dd[45]](respondWithResult(_0x33c9x15,201,_0x78dd[81]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[81]))};exports[_0x78dd[46]]= function(_0x33c9x28,_0x33c9x15){if(_0x33c9x28[_0x78dd[82]][_0x78dd[78]]){delete _0x33c9x28[_0x78dd[82]][_0x78dd[78]]};return db[_0x78dd[56]][_0x78dd[80]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x15,null,_0x78dd[46]))[_0x78dd[45]](saveUpdates(_0x33c9x28[_0x78dd[82]],null,_0x78dd[46]))[_0x78dd[45]](respondWithResult(_0x33c9x15,null,_0x78dd[46]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[46]))};exports[_0x78dd[48]]= function(_0x33c9x28,_0x33c9x15){return db[_0x78dd[56]][_0x78dd[80]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x15,null,_0x78dd[48]))[_0x78dd[45]](removeEntity(_0x33c9x15,null,_0x78dd[48]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[48]))};exports[_0x78dd[83]]= function(_0x33c9x28,_0x33c9x15,_0x33c9x2c){return db[_0x78dd[86]][_0x78dd[80]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x15,null,_0x78dd[83]))[_0x78dd[45]](function(_0x33c9x18){if(_0x33c9x18){return _0x33c9x18[_0x78dd[83]](_0x33c9x28[_0x78dd[82]][_0x78dd[84]],_[_0x78dd[85]](_0x33c9x28[_0x78dd[82]],[_0x78dd[84],_0x78dd[78]])|| {})};return null})[_0x78dd[45]](respondWithResult(_0x33c9x15,null,_0x78dd[83]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[83]))};exports[_0x78dd[87]]= function(_0x33c9x28,_0x33c9x18,_0x33c9x2c){var _0x33c9x1b={};var _0x33c9x29={};var _0x33c9x2d;var _0x33c9x1c;return db[_0x78dd[56]][_0x78dd[88]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x18,null,_0x78dd[87]))[_0x78dd[45]](function(_0x33c9x18){if(_0x33c9x18){_0x33c9x2d= _0x33c9x18;_0x33c9x29[_0x78dd[54]]= _[_0x78dd[57]](db[_0x78dd[86]][_0x78dd[55]]);_0x33c9x29[_0x78dd[58]]= _[_0x78dd[57]](_0x33c9x28[_0x78dd[58]]);_0x33c9x29[_0x78dd[59]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],_0x33c9x29[_0x78dd[58]]);_0x33c9x1b[_0x78dd[61]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],qs[_0x78dd[62]](_0x33c9x28[_0x78dd[58]][_0x78dd[62]]));_0x33c9x1b[_0x78dd[61]]= (_0x33c9x1b[_0x78dd[61]][_0x78dd[63]])?_0x33c9x1b[_0x78dd[61]]:_0x33c9x29[_0x78dd[54]];_0x33c9x1b[_0x78dd[66]]= qs[_0x78dd[67]](_0x33c9x28[_0x78dd[58]][_0x78dd[67]]);_0x33c9x1b[_0x78dd[68]]= qs[_0x78dd[59]](_[_0x78dd[69]](_0x33c9x28[_0x78dd[58]],_0x33c9x29[_0x78dd[59]]));if(_0x33c9x28[_0x78dd[58]][_0x78dd[70]]){_0x33c9x1b[_0x78dd[68]]= _[_0x78dd[73]](_0x33c9x1b[_0x78dd[68]],{$or:_[_0x78dd[72]](_0x33c9x1b[_0x78dd[61]],function(_0x33c9x2a){var _0x33c9x2b={};_0x33c9x2b[_0x33c9x2a]= {$like:_0x78dd[71]+ _0x33c9x28[_0x78dd[58]][_0x78dd[70]]+ _0x78dd[71]};return _0x33c9x2b})})};_0x33c9x1b= _[_0x78dd[73]]({},_0x33c9x1b,_0x33c9x28[_0x78dd[74]]);return _0x33c9x2d[_0x78dd[87]](_0x33c9x1b)}})[_0x78dd[45]](function(_0x33c9x2f){if(_0x33c9x2f){_0x33c9x1c= _0x33c9x2f[_0x78dd[63]];if(!_0x33c9x28[_0x78dd[58]][_0x78dd[65]](_0x78dd[64])){_0x33c9x1b[_0x78dd[35]]= qs[_0x78dd[35]](_0x33c9x28[_0x78dd[58]][_0x78dd[35]]);_0x33c9x1b[_0x78dd[34]]= qs[_0x78dd[34]](_0x33c9x28[_0x78dd[58]][_0x78dd[34]])};return _0x33c9x2d[_0x78dd[87]](_0x33c9x1b)}})[_0x78dd[45]](function(_0x33c9x2e){return _0x33c9x2e?{count:_0x33c9x1c,rows:_0x33c9x2e}:null})[_0x78dd[45]](respondWithResult(_0x33c9x18,null,_0x78dd[87]))[_0x78dd[75]](handleError(_0x33c9x18,null,_0x78dd[87]))};exports[_0x78dd[89]]= function(_0x33c9x28,_0x33c9x15,_0x33c9x2c){return db[_0x78dd[90]][_0x78dd[80]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x15,null,_0x78dd[89]))[_0x78dd[45]](function(_0x33c9x18){if(_0x33c9x18){return _0x33c9x18[_0x78dd[89]](_0x33c9x28[_0x78dd[82]][_0x78dd[84]],_[_0x78dd[85]](_0x33c9x28[_0x78dd[82]],[_0x78dd[84],_0x78dd[78]])|| {})};return null})[_0x78dd[45]](respondWithResult(_0x33c9x15,null,_0x78dd[89]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[89]))};exports[_0x78dd[91]]= function(_0x33c9x28,_0x33c9x18,_0x33c9x2c){var _0x33c9x1b={};var _0x33c9x29={};var _0x33c9x2d;var _0x33c9x1c;return db[_0x78dd[56]][_0x78dd[88]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x18,null,_0x78dd[91]))[_0x78dd[45]](function(_0x33c9x18){if(_0x33c9x18){_0x33c9x2d= _0x33c9x18;_0x33c9x29[_0x78dd[54]]= _[_0x78dd[57]](db[_0x78dd[92]][_0x78dd[55]]);_0x33c9x29[_0x78dd[58]]= _[_0x78dd[57]](_0x33c9x28[_0x78dd[58]]);_0x33c9x29[_0x78dd[59]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],_0x33c9x29[_0x78dd[58]]);_0x33c9x1b[_0x78dd[61]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],qs[_0x78dd[62]](_0x33c9x28[_0x78dd[58]][_0x78dd[62]]));_0x33c9x1b[_0x78dd[61]]= (_0x33c9x1b[_0x78dd[61]][_0x78dd[63]])?_0x33c9x1b[_0x78dd[61]]:_0x33c9x29[_0x78dd[54]];_0x33c9x1b[_0x78dd[66]]= qs[_0x78dd[67]](_0x33c9x28[_0x78dd[58]][_0x78dd[67]]);_0x33c9x1b[_0x78dd[68]]= qs[_0x78dd[59]](_[_0x78dd[69]](_0x33c9x28[_0x78dd[58]],_0x33c9x29[_0x78dd[59]]));if(_0x33c9x28[_0x78dd[58]][_0x78dd[70]]){_0x33c9x1b[_0x78dd[68]]= _[_0x78dd[73]](_0x33c9x1b[_0x78dd[68]],{$or:_[_0x78dd[72]](_0x33c9x1b[_0x78dd[61]],function(_0x33c9x2a){var _0x33c9x2b={};_0x33c9x2b[_0x33c9x2a]= {$like:_0x78dd[71]+ _0x33c9x28[_0x78dd[58]][_0x78dd[70]]+ _0x78dd[71]};return _0x33c9x2b})})};_0x33c9x1b= _[_0x78dd[73]]({},_0x33c9x1b,_0x33c9x28[_0x78dd[74]]);return _0x33c9x2d[_0x78dd[91]](_0x33c9x1b)}})[_0x78dd[45]](function(_0x33c9x2f){if(_0x33c9x2f){_0x33c9x1c= _0x33c9x2f[_0x78dd[63]];if(!_0x33c9x28[_0x78dd[58]][_0x78dd[65]](_0x78dd[64])){_0x33c9x1b[_0x78dd[35]]= qs[_0x78dd[35]](_0x33c9x28[_0x78dd[58]][_0x78dd[35]]);_0x33c9x1b[_0x78dd[34]]= qs[_0x78dd[34]](_0x33c9x28[_0x78dd[58]][_0x78dd[34]])};return _0x33c9x2d[_0x78dd[91]](_0x33c9x1b)}})[_0x78dd[45]](function(_0x33c9x2e){return _0x33c9x2e?{count:_0x33c9x1c,rows:_0x33c9x2e}:null})[_0x78dd[45]](respondWithResult(_0x33c9x18,null,_0x78dd[91]))[_0x78dd[75]](handleError(_0x33c9x18,null,_0x78dd[91]))};exports[_0x78dd[93]]= function(_0x33c9x28,_0x33c9x15,_0x33c9x2c){if(_0x33c9x28[_0x78dd[82]][_0x78dd[78]]){delete _0x33c9x28[_0x78dd[82]][_0x78dd[78]]};return db[_0x78dd[56]][_0x78dd[80]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x15,null,_0x78dd[93]))[_0x78dd[45]](function(_0x33c9x18){if(_0x33c9x18){_0x33c9x28[_0x78dd[82]][_0x78dd[94]]= _0x33c9x18[_0x78dd[78]];return db[_0x78dd[95]][_0x78dd[81]](_0x33c9x28[_0x78dd[82]])}})[_0x78dd[45]](respondWithResult(_0x33c9x15,null,_0x78dd[93]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[93]))};exports[_0x78dd[96]]= function(_0x33c9x28,_0x33c9x15,_0x33c9x2c){return db[_0x78dd[97]][_0x78dd[80]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x15,null,_0x78dd[96]))[_0x78dd[45]](function(_0x33c9x18){if(_0x33c9x18){return _0x33c9x18[_0x78dd[96]](_0x33c9x28[_0x78dd[82]][_0x78dd[84]],_[_0x78dd[85]](_0x33c9x28[_0x78dd[82]],[_0x78dd[84],_0x78dd[78]])|| {})};return null})[_0x78dd[45]](respondWithResult(_0x33c9x15,null,_0x78dd[96]))[_0x78dd[75]](handleError(_0x33c9x15,null,_0x78dd[96]))};exports[_0x78dd[98]]= function(_0x33c9x28,_0x33c9x18,_0x33c9x2c){var _0x33c9x1b={};var _0x33c9x29={};var _0x33c9x2d;var _0x33c9x1c;return db[_0x78dd[56]][_0x78dd[88]]({where:{id:_0x33c9x28[_0x78dd[79]][_0x78dd[78]]}})[_0x78dd[45]](handleEntityNotFound(_0x33c9x18,null,_0x78dd[98]))[_0x78dd[45]](function(_0x33c9x18){if(_0x33c9x18){_0x33c9x2d= _0x33c9x18;_0x33c9x29[_0x78dd[54]]= _[_0x78dd[57]](db[_0x78dd[95]][_0x78dd[55]]);_0x33c9x29[_0x78dd[58]]= _[_0x78dd[57]](_0x33c9x28[_0x78dd[58]]);_0x33c9x29[_0x78dd[59]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],_0x33c9x29[_0x78dd[58]]);_0x33c9x1b[_0x78dd[61]]= _[_0x78dd[60]](_0x33c9x29[_0x78dd[54]],qs[_0x78dd[62]](_0x33c9x28[_0x78dd[58]][_0x78dd[62]]));_0x33c9x1b[_0x78dd[61]]= (_0x33c9x1b[_0x78dd[61]][_0x78dd[63]])?_0x33c9x1b[_0x78dd[61]]:_0x33c9x29[_0x78dd[54]];_0x33c9x1b[_0x78dd[66]]= qs[_0x78dd[67]](_0x33c9x28[_0x78dd[58]][_0x78dd[67]]);_0x33c9x1b[_0x78dd[68]]= qs[_0x78dd[59]](_[_0x78dd[69]](_0x33c9x28[_0x78dd[58]],_0x33c9x29[_0x78dd[59]]));if(_0x33c9x28[_0x78dd[58]][_0x78dd[70]]){_0x33c9x1b[_0x78dd[68]]= _[_0x78dd[73]](_0x33c9x1b[_0x78dd[68]],{$or:_[_0x78dd[72]](_0x33c9x1b[_0x78dd[61]],function(_0x33c9x2a){var _0x33c9x2b={};_0x33c9x2b[_0x33c9x2a]= {$like:_0x78dd[71]+ _0x33c9x28[_0x78dd[58]][_0x78dd[70]]+ _0x78dd[71]};return _0x33c9x2b})})};_0x33c9x1b= _[_0x78dd[73]]({},_0x33c9x1b,_0x33c9x28[_0x78dd[74]]);return _0x33c9x2d[_0x78dd[98]](_0x33c9x1b)}})[_0x78dd[45]](function(_0x33c9x2f){if(_0x33c9x2f){_0x33c9x1c= _0x33c9x2f[_0x78dd[63]];if(!_0x33c9x28[_0x78dd[58]][_0x78dd[65]](_0x78dd[64])){_0x33c9x1b[_0x78dd[35]]= qs[_0x78dd[35]](_0x33c9x28[_0x78dd[58]][_0x78dd[35]]);_0x33c9x1b[_0x78dd[34]]= qs[_0x78dd[34]](_0x33c9x28[_0x78dd[58]][_0x78dd[34]])};return _0x33c9x2d[_0x78dd[98]](_0x33c9x1b)}})[_0x78dd[45]](function(_0x33c9x2e){return _0x33c9x2e?{count:_0x33c9x1c,rows:_0x33c9x2e}:null})[_0x78dd[45]](respondWithResult(_0x33c9x18,null,_0x78dd[98]))[_0x78dd[75]](handleError(_0x33c9x18,null,_0x78dd[98]))}
\ No newline at end of file
+var _0x9afc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73"];_0x9afc[0];var jsonpatch=require(_0x9afc[1]);var rp=require(_0x9afc[2]);var moment=require(_0x9afc[3]);var BPromise=require(_0x9afc[4]);var util=require(_0x9afc[5]);var path=require(_0x9afc[6]);var sox=require(_0x9afc[7]);var ejs=require(_0x9afc[8]);var fs=require(_0x9afc[9]);var _=require(_0x9afc[10]);var squel=require(_0x9afc[11]);var crypto=require(_0x9afc[12]);var jsforce=require(_0x9afc[13]);var toCsv=require(_0x9afc[14]);var qs=require(_0x9afc[15]);var logger=require(_0x9afc[17])(_0x9afc[16]);var utils=require(_0x9afc[18]);var config=require(_0x9afc[19]);var db=require(_0x9afc[21])[_0x9afc[20]];function respondWithStatusCode(_0x9e82x15,_0x9e82x16,_0x9e82x17){_0x9e82x16= _0x9e82x16|| 204;return function(_0x9e82x18){if(_0x9e82x18){logger[_0x9afc[24]](_0x9afc[22],_0x9e82x17,_0x9e82x16,_0x9afc[23]);logger[_0x9afc[26]](_0x9afc[25],_0x9e82x17,_0x9e82x16,_0x9afc[23]);return _0x9e82x15[_0x9afc[27]](_0x9e82x16)};return _0x9e82x15[_0x9afc[29]](304)[_0x9afc[28]]()}}function respondWithResult(_0x9e82x15,_0x9e82x16,_0x9e82x17){_0x9e82x16= _0x9e82x16|| 200;return function(_0x9e82x18){if(_0x9e82x18){logger[_0x9afc[24]](_0x9afc[22],_0x9e82x17,_0x9e82x16,_0x9afc[30]);logger[_0x9afc[26]](_0x9afc[25],_0x9e82x17,_0x9e82x16,_0x9afc[30],JSON[_0x9afc[31]](_0x9e82x18));return _0x9e82x15[_0x9afc[29]](_0x9e82x16)[_0x9afc[32]](_0x9e82x18)};return _0x9e82x15[_0x9afc[29]](304)[_0x9afc[28]]()}}function respondWithFilteredResult(_0x9e82x15,_0x9e82x1b,_0x9e82x17){return function(_0x9e82x18){if(_0x9e82x18){var _0x9e82x1c=_0x9e82x18[_0x9afc[33]],_0x9e82x1d=_0x9e82x1b[_0x9afc[34]],_0x9e82x1e=_0x9e82x1b[_0x9afc[34]]+ _0x9e82x1b[_0x9afc[35]],_0x9e82x16;if(_0x9e82x1e>= _0x9e82x1c){_0x9e82x1e= _0x9e82x1c;_0x9e82x16= 200}else {_0x9e82x16= 206};_0x9e82x15[_0x9afc[29]](_0x9e82x16);logger[_0x9afc[24]](_0x9afc[22],_0x9e82x17,_0x9e82x16,_0x9afc[36]);logger[_0x9afc[26]](_0x9afc[25],_0x9e82x17,_0x9e82x16,_0x9afc[30],JSON[_0x9afc[31]](_0x9e82x18));return _0x9e82x15[_0x9afc[40]](_0x9afc[37],_0x9e82x1d+ _0x9afc[38]+ _0x9e82x1e+ _0x9afc[39]+ _0x9e82x1c)[_0x9afc[32]](_0x9e82x18)};return null}}function patchUpdates(_0x9e82x20){return function(_0x9e82x18){try{jsonpatch[_0x9afc[41]](_0x9e82x18,_0x9e82x20,true)}catch(err){return BPromise[_0x9afc[42]](err)};return _0x9e82x18[_0x9afc[43]]()}}function saveUpdates(_0x9e82x22,_0x9e82x16,_0x9e82x17){return function(_0x9e82x18){if(_0x9e82x18){return _0x9e82x18[_0x9afc[46]](_0x9e82x22)[_0x9afc[45]](function(_0x9e82x23){logger[_0x9afc[24]](_0x9afc[22],_0x9e82x17,_0x9e82x16,_0x9afc[44]);logger[_0x9afc[26]](_0x9afc[25],_0x9e82x17,_0x9e82x16,_0x9afc[44],JSON[_0x9afc[31]](_0x9e82x18));return _0x9e82x23})};return null}}function removeEntity(_0x9e82x15,_0x9e82x16,_0x9e82x17){return function(_0x9e82x18){if(_0x9e82x18){return _0x9e82x18[_0x9afc[48]]()[_0x9afc[45]](function(){logger[_0x9afc[24]](_0x9afc[22],_0x9e82x17,_0x9e82x16,_0x9afc[47]);logger[_0x9afc[26]](_0x9afc[25],_0x9e82x17,_0x9e82x16,_0x9afc[47],JSON[_0x9afc[31]](_0x9e82x18));_0x9e82x15[_0x9afc[29]](204)[_0x9afc[28]]()})}}}function handleEntityNotFound(_0x9e82x15,_0x9e82x16,_0x9e82x17){return function(_0x9e82x18){if(!_0x9e82x18){logger[_0x9afc[50]](_0x9afc[22],_0x9e82x17,404,_0x9afc[49]);_0x9e82x15[_0x9afc[29]](404)[_0x9afc[28]]();return null};return _0x9e82x18}}function handleError(_0x9e82x15,_0x9e82x16,_0x9e82x17){_0x9e82x16= _0x9e82x16|| 500;return function(_0x9e82x27){logger[_0x9afc[50]](_0x9afc[22],_0x9e82x17,_0x9e82x16,JSON[_0x9afc[31]](_0x9e82x27));delete _0x9e82x27[_0x9afc[51]];_0x9e82x15[_0x9afc[29]](_0x9e82x16)[_0x9afc[52]](_0x9e82x27)}}exports[_0x9afc[53]]= function(_0x9e82x28,_0x9e82x15){var _0x9e82x1b={},_0x9e82x29={};_0x9e82x29[_0x9afc[54]]= _[_0x9afc[57]](db[_0x9afc[56]][_0x9afc[55]]);_0x9e82x29[_0x9afc[58]]= _[_0x9afc[57]](_0x9e82x28[_0x9afc[58]]);_0x9e82x29[_0x9afc[59]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],_0x9e82x29[_0x9afc[58]]);_0x9e82x1b[_0x9afc[61]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],qs[_0x9afc[62]](_0x9e82x28[_0x9afc[58]][_0x9afc[62]]));_0x9e82x1b[_0x9afc[61]]= (_0x9e82x1b[_0x9afc[61]][_0x9afc[63]])?_0x9e82x1b[_0x9afc[61]]:_0x9e82x29[_0x9afc[54]];if(!_0x9e82x28[_0x9afc[58]][_0x9afc[65]](_0x9afc[64])){_0x9e82x1b[_0x9afc[35]]= qs[_0x9afc[35]](_0x9e82x28[_0x9afc[58]][_0x9afc[35]]);_0x9e82x1b[_0x9afc[34]]= qs[_0x9afc[34]](_0x9e82x28[_0x9afc[58]][_0x9afc[34]])};_0x9e82x1b[_0x9afc[66]]= qs[_0x9afc[67]](_0x9e82x28[_0x9afc[58]][_0x9afc[67]]);_0x9e82x1b[_0x9afc[68]]= qs[_0x9afc[59]](_[_0x9afc[69]](_0x9e82x28[_0x9afc[58]],_0x9e82x29[_0x9afc[59]]));if(_0x9e82x28[_0x9afc[58]][_0x9afc[70]]){_0x9e82x1b[_0x9afc[68]]= _[_0x9afc[73]](_0x9e82x1b[_0x9afc[68]],{$or:_[_0x9afc[72]](_0x9e82x1b[_0x9afc[61]],function(_0x9e82x2a){var _0x9e82x2b={};_0x9e82x2b[_0x9e82x2a]= {$like:_0x9afc[71]+ _0x9e82x28[_0x9afc[58]][_0x9afc[70]]+ _0x9afc[71]};return _0x9e82x2b})})};_0x9e82x1b= _[_0x9afc[73]]({},_0x9e82x1b,_0x9e82x28[_0x9afc[74]]);return db[_0x9afc[56]][_0x9afc[76]](_0x9e82x1b)[_0x9afc[45]](respondWithFilteredResult(_0x9e82x15,_0x9e82x1b,_0x9afc[53]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[53]))};exports[_0x9afc[77]]= function(_0x9e82x28,_0x9e82x15){var _0x9e82x1b={raw:false,where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}},_0x9e82x29={};_0x9e82x29[_0x9afc[54]]= _[_0x9afc[57]](db[_0x9afc[56]][_0x9afc[55]]);_0x9e82x29[_0x9afc[58]]= _[_0x9afc[57]](_0x9e82x28[_0x9afc[58]]);_0x9e82x29[_0x9afc[59]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],_0x9e82x29[_0x9afc[58]]);_0x9e82x1b[_0x9afc[61]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],qs[_0x9afc[62]](_0x9e82x28[_0x9afc[58]][_0x9afc[62]]));_0x9e82x1b[_0x9afc[61]]= (_0x9e82x1b[_0x9afc[61]][_0x9afc[63]])?_0x9e82x1b[_0x9afc[61]]:_0x9e82x29[_0x9afc[54]];_0x9e82x1b= _[_0x9afc[73]]({},_0x9e82x1b,_0x9e82x28[_0x9afc[74]]);return db[_0x9afc[56]][_0x9afc[80]](_0x9e82x1b)[_0x9afc[45]](handleEntityNotFound(_0x9e82x15,null,_0x9afc[77]))[_0x9afc[45]](respondWithResult(_0x9e82x15,null,_0x9afc[77]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[77]))};exports[_0x9afc[81]]= function(_0x9e82x28,_0x9e82x15){return db[_0x9afc[56]][_0x9afc[81]](_0x9e82x28[_0x9afc[82]],{})[_0x9afc[45]](respondWithResult(_0x9e82x15,201,_0x9afc[81]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[81]))};exports[_0x9afc[46]]= function(_0x9e82x28,_0x9e82x15){if(_0x9e82x28[_0x9afc[82]][_0x9afc[78]]){delete _0x9e82x28[_0x9afc[82]][_0x9afc[78]]};return db[_0x9afc[56]][_0x9afc[80]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x15,null,_0x9afc[46]))[_0x9afc[45]](saveUpdates(_0x9e82x28[_0x9afc[82]],null,_0x9afc[46]))[_0x9afc[45]](respondWithResult(_0x9e82x15,null,_0x9afc[46]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[46]))};exports[_0x9afc[48]]= function(_0x9e82x28,_0x9e82x15){return db[_0x9afc[56]][_0x9afc[80]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x15,null,_0x9afc[48]))[_0x9afc[45]](removeEntity(_0x9e82x15,null,_0x9afc[48]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[48]))};exports[_0x9afc[83]]= function(_0x9e82x28,_0x9e82x15,_0x9e82x2c){return db[_0x9afc[86]][_0x9afc[80]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x15,null,_0x9afc[83]))[_0x9afc[45]](function(_0x9e82x18){if(_0x9e82x18){return _0x9e82x18[_0x9afc[83]](_0x9e82x28[_0x9afc[82]][_0x9afc[84]],_[_0x9afc[85]](_0x9e82x28[_0x9afc[82]],[_0x9afc[84],_0x9afc[78]])|| {})};return null})[_0x9afc[45]](respondWithResult(_0x9e82x15,null,_0x9afc[83]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[83]))};exports[_0x9afc[87]]= function(_0x9e82x28,_0x9e82x18,_0x9e82x2c){var _0x9e82x1b={};var _0x9e82x29={};var _0x9e82x2d;var _0x9e82x1c;return db[_0x9afc[56]][_0x9afc[88]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x18,null,_0x9afc[87]))[_0x9afc[45]](function(_0x9e82x18){if(_0x9e82x18){_0x9e82x2d= _0x9e82x18;_0x9e82x29[_0x9afc[54]]= _[_0x9afc[57]](db[_0x9afc[86]][_0x9afc[55]]);_0x9e82x29[_0x9afc[58]]= _[_0x9afc[57]](_0x9e82x28[_0x9afc[58]]);_0x9e82x29[_0x9afc[59]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],_0x9e82x29[_0x9afc[58]]);_0x9e82x1b[_0x9afc[61]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],qs[_0x9afc[62]](_0x9e82x28[_0x9afc[58]][_0x9afc[62]]));_0x9e82x1b[_0x9afc[61]]= (_0x9e82x1b[_0x9afc[61]][_0x9afc[63]])?_0x9e82x1b[_0x9afc[61]]:_0x9e82x29[_0x9afc[54]];_0x9e82x1b[_0x9afc[66]]= qs[_0x9afc[67]](_0x9e82x28[_0x9afc[58]][_0x9afc[67]]);_0x9e82x1b[_0x9afc[68]]= qs[_0x9afc[59]](_[_0x9afc[69]](_0x9e82x28[_0x9afc[58]],_0x9e82x29[_0x9afc[59]]));if(_0x9e82x28[_0x9afc[58]][_0x9afc[70]]){_0x9e82x1b[_0x9afc[68]]= _[_0x9afc[73]](_0x9e82x1b[_0x9afc[68]],{$or:_[_0x9afc[72]](_0x9e82x1b[_0x9afc[61]],function(_0x9e82x2a){var _0x9e82x2b={};_0x9e82x2b[_0x9e82x2a]= {$like:_0x9afc[71]+ _0x9e82x28[_0x9afc[58]][_0x9afc[70]]+ _0x9afc[71]};return _0x9e82x2b})})};_0x9e82x1b= _[_0x9afc[73]]({},_0x9e82x1b,_0x9e82x28[_0x9afc[74]]);return _0x9e82x2d[_0x9afc[87]](_0x9e82x1b)}})[_0x9afc[45]](function(_0x9e82x2f){if(_0x9e82x2f){_0x9e82x1c= _0x9e82x2f[_0x9afc[63]];if(!_0x9e82x28[_0x9afc[58]][_0x9afc[65]](_0x9afc[64])){_0x9e82x1b[_0x9afc[35]]= qs[_0x9afc[35]](_0x9e82x28[_0x9afc[58]][_0x9afc[35]]);_0x9e82x1b[_0x9afc[34]]= qs[_0x9afc[34]](_0x9e82x28[_0x9afc[58]][_0x9afc[34]])};return _0x9e82x2d[_0x9afc[87]](_0x9e82x1b)}})[_0x9afc[45]](function(_0x9e82x2e){return _0x9e82x2e?{count:_0x9e82x1c,rows:_0x9e82x2e}:null})[_0x9afc[45]](respondWithResult(_0x9e82x18,null,_0x9afc[87]))[_0x9afc[75]](handleError(_0x9e82x18,null,_0x9afc[87]))};exports[_0x9afc[89]]= function(_0x9e82x28,_0x9e82x15,_0x9e82x2c){return db[_0x9afc[90]][_0x9afc[80]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x15,null,_0x9afc[89]))[_0x9afc[45]](function(_0x9e82x18){if(_0x9e82x18){return _0x9e82x18[_0x9afc[89]](_0x9e82x28[_0x9afc[82]][_0x9afc[84]],_[_0x9afc[85]](_0x9e82x28[_0x9afc[82]],[_0x9afc[84],_0x9afc[78]])|| {})};return null})[_0x9afc[45]](respondWithResult(_0x9e82x15,null,_0x9afc[89]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[89]))};exports[_0x9afc[91]]= function(_0x9e82x28,_0x9e82x18,_0x9e82x2c){var _0x9e82x1b={};var _0x9e82x29={};var _0x9e82x2d;var _0x9e82x1c;return db[_0x9afc[56]][_0x9afc[88]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x18,null,_0x9afc[91]))[_0x9afc[45]](function(_0x9e82x18){if(_0x9e82x18){_0x9e82x2d= _0x9e82x18;_0x9e82x29[_0x9afc[54]]= _[_0x9afc[57]](db[_0x9afc[92]][_0x9afc[55]]);_0x9e82x29[_0x9afc[58]]= _[_0x9afc[57]](_0x9e82x28[_0x9afc[58]]);_0x9e82x29[_0x9afc[59]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],_0x9e82x29[_0x9afc[58]]);_0x9e82x1b[_0x9afc[61]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],qs[_0x9afc[62]](_0x9e82x28[_0x9afc[58]][_0x9afc[62]]));_0x9e82x1b[_0x9afc[61]]= (_0x9e82x1b[_0x9afc[61]][_0x9afc[63]])?_0x9e82x1b[_0x9afc[61]]:_0x9e82x29[_0x9afc[54]];_0x9e82x1b[_0x9afc[66]]= qs[_0x9afc[67]](_0x9e82x28[_0x9afc[58]][_0x9afc[67]]);_0x9e82x1b[_0x9afc[68]]= qs[_0x9afc[59]](_[_0x9afc[69]](_0x9e82x28[_0x9afc[58]],_0x9e82x29[_0x9afc[59]]));if(_0x9e82x28[_0x9afc[58]][_0x9afc[70]]){_0x9e82x1b[_0x9afc[68]]= _[_0x9afc[73]](_0x9e82x1b[_0x9afc[68]],{$or:_[_0x9afc[72]](_0x9e82x1b[_0x9afc[61]],function(_0x9e82x2a){var _0x9e82x2b={};_0x9e82x2b[_0x9e82x2a]= {$like:_0x9afc[71]+ _0x9e82x28[_0x9afc[58]][_0x9afc[70]]+ _0x9afc[71]};return _0x9e82x2b})})};_0x9e82x1b= _[_0x9afc[73]]({},_0x9e82x1b,_0x9e82x28[_0x9afc[74]]);return _0x9e82x2d[_0x9afc[91]](_0x9e82x1b)}})[_0x9afc[45]](function(_0x9e82x2f){if(_0x9e82x2f){_0x9e82x1c= _0x9e82x2f[_0x9afc[63]];if(!_0x9e82x28[_0x9afc[58]][_0x9afc[65]](_0x9afc[64])){_0x9e82x1b[_0x9afc[35]]= qs[_0x9afc[35]](_0x9e82x28[_0x9afc[58]][_0x9afc[35]]);_0x9e82x1b[_0x9afc[34]]= qs[_0x9afc[34]](_0x9e82x28[_0x9afc[58]][_0x9afc[34]])};return _0x9e82x2d[_0x9afc[91]](_0x9e82x1b)}})[_0x9afc[45]](function(_0x9e82x2e){return _0x9e82x2e?{count:_0x9e82x1c,rows:_0x9e82x2e}:null})[_0x9afc[45]](respondWithResult(_0x9e82x18,null,_0x9afc[91]))[_0x9afc[75]](handleError(_0x9e82x18,null,_0x9afc[91]))};exports[_0x9afc[93]]= function(_0x9e82x28,_0x9e82x15,_0x9e82x2c){if(_0x9e82x28[_0x9afc[82]][_0x9afc[78]]){delete _0x9e82x28[_0x9afc[82]][_0x9afc[78]]};return db[_0x9afc[56]][_0x9afc[80]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x15,null,_0x9afc[93]))[_0x9afc[45]](function(_0x9e82x18){if(_0x9e82x18){_0x9e82x28[_0x9afc[82]][_0x9afc[94]]= _0x9e82x18[_0x9afc[78]];return db[_0x9afc[95]][_0x9afc[81]](_0x9e82x28[_0x9afc[82]])}})[_0x9afc[45]](respondWithResult(_0x9e82x15,null,_0x9afc[93]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[93]))};exports[_0x9afc[96]]= function(_0x9e82x28,_0x9e82x15,_0x9e82x2c){return db[_0x9afc[97]][_0x9afc[80]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x15,null,_0x9afc[96]))[_0x9afc[45]](function(_0x9e82x18){if(_0x9e82x18){return _0x9e82x18[_0x9afc[96]](_0x9e82x28[_0x9afc[82]][_0x9afc[84]],_[_0x9afc[85]](_0x9e82x28[_0x9afc[82]],[_0x9afc[84],_0x9afc[78]])|| {})};return null})[_0x9afc[45]](respondWithResult(_0x9e82x15,null,_0x9afc[96]))[_0x9afc[75]](handleError(_0x9e82x15,null,_0x9afc[96]))};exports[_0x9afc[98]]= function(_0x9e82x28,_0x9e82x18,_0x9e82x2c){var _0x9e82x1b={};var _0x9e82x29={};var _0x9e82x2d;var _0x9e82x1c;return db[_0x9afc[56]][_0x9afc[88]]({where:{id:_0x9e82x28[_0x9afc[79]][_0x9afc[78]]}})[_0x9afc[45]](handleEntityNotFound(_0x9e82x18,null,_0x9afc[98]))[_0x9afc[45]](function(_0x9e82x18){if(_0x9e82x18){_0x9e82x2d= _0x9e82x18;_0x9e82x29[_0x9afc[54]]= _[_0x9afc[57]](db[_0x9afc[95]][_0x9afc[55]]);_0x9e82x29[_0x9afc[58]]= _[_0x9afc[57]](_0x9e82x28[_0x9afc[58]]);_0x9e82x29[_0x9afc[59]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],_0x9e82x29[_0x9afc[58]]);_0x9e82x1b[_0x9afc[61]]= _[_0x9afc[60]](_0x9e82x29[_0x9afc[54]],qs[_0x9afc[62]](_0x9e82x28[_0x9afc[58]][_0x9afc[62]]));_0x9e82x1b[_0x9afc[61]]= (_0x9e82x1b[_0x9afc[61]][_0x9afc[63]])?_0x9e82x1b[_0x9afc[61]]:_0x9e82x29[_0x9afc[54]];_0x9e82x1b[_0x9afc[66]]= qs[_0x9afc[67]](_0x9e82x28[_0x9afc[58]][_0x9afc[67]]);_0x9e82x1b[_0x9afc[68]]= qs[_0x9afc[59]](_[_0x9afc[69]](_0x9e82x28[_0x9afc[58]],_0x9e82x29[_0x9afc[59]]));if(_0x9e82x28[_0x9afc[58]][_0x9afc[70]]){_0x9e82x1b[_0x9afc[68]]= _[_0x9afc[73]](_0x9e82x1b[_0x9afc[68]],{$or:_[_0x9afc[72]](_0x9e82x1b[_0x9afc[61]],function(_0x9e82x2a){var _0x9e82x2b={};_0x9e82x2b[_0x9e82x2a]= {$like:_0x9afc[71]+ _0x9e82x28[_0x9afc[58]][_0x9afc[70]]+ _0x9afc[71]};return _0x9e82x2b})})};_0x9e82x1b= _[_0x9afc[73]]({},_0x9e82x1b,_0x9e82x28[_0x9afc[74]]);return _0x9e82x2d[_0x9afc[98]](_0x9e82x1b)}})[_0x9afc[45]](function(_0x9e82x2f){if(_0x9e82x2f){_0x9e82x1c= _0x9e82x2f[_0x9afc[63]];if(!_0x9e82x28[_0x9afc[58]][_0x9afc[65]](_0x9afc[64])){_0x9e82x1b[_0x9afc[35]]= qs[_0x9afc[35]](_0x9e82x28[_0x9afc[58]][_0x9afc[35]]);_0x9e82x1b[_0x9afc[34]]= qs[_0x9afc[34]](_0x9e82x28[_0x9afc[58]][_0x9afc[34]])};return _0x9e82x2d[_0x9afc[98]](_0x9e82x1b)}})[_0x9afc[45]](function(_0x9e82x2e){return _0x9e82x2e?{count:_0x9e82x1c,rows:_0x9e82x2e}:null})[_0x9afc[45]](respondWithResult(_0x9e82x18,null,_0x9afc[98]))[_0x9afc[75]](handleError(_0x9e82x18,null,_0x9afc[98]))}
\ No newline at end of file
index fc8569d..78b2a3f 100644 (file)
@@ -1 +1 @@
-var _0x2b52=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x66\x61\x78\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x2b52[0];var _=require(_0x2b52[1]);var util=require(_0x2b52[2]);var logger=require(_0x2b52[4])(_0x2b52[3]);var attributes=require(_0x2b52[5]);module[_0x2b52[6]]= function(_0xa8d1x5,_0xa8d1x6){return _0xa8d1x5[_0x2b52[9]](_0x2b52[7],attributes,{tableName:_0x2b52[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xc16a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x66\x61\x78\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xc16a[0];var _=require(_0xc16a[1]);var util=require(_0xc16a[2]);var logger=require(_0xc16a[4])(_0xc16a[3]);var attributes=require(_0xc16a[5]);module[_0xc16a[6]]= function(_0x1629x5,_0x1629x6){return _0x1629x5[_0xc16a[9]](_0xc16a[7],attributes,{tableName:_0xc16a[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 1e85745..7642ca2 100644 (file)
@@ -1 +1 @@
-var _0x7ee0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x7ee0[0];var _=require(_0x7ee0[1]);var util=require(_0x7ee0[2]);var moment=require(_0x7ee0[3]);var BPromise=require(_0x7ee0[4]);var db=require(_0x7ee0[6])[_0x7ee0[5]];var utils=require(_0x7ee0[7]);var logger=require(_0x7ee0[9])(_0x7ee0[8]);var jayson=require(_0x7ee0[10]);var client=jayson[_0x7ee0[12]][_0x7ee0[11]]({port:9002});function respondWithRpcPromise(_0xa63dxb,_0xa63dxc,_0xa63dxd){return  new BPromise(function(_0xa63dxe,_0xa63dxf){return client[_0x7ee0[25]](_0xa63dxb,_0xa63dxd)[_0x7ee0[24]](function(_0xa63dx11){logger[_0x7ee0[17]](_0x7ee0[13],_0xa63dxc,_0x7ee0[16]);logger[_0x7ee0[20]](_0x7ee0[18],_0xa63dxc,_0x7ee0[16],JSON[_0x7ee0[19]](_0xa63dx11));if(_0xa63dx11[_0x7ee0[14]]){if(_0xa63dx11[_0x7ee0[14]][_0x7ee0[21]]=== 500){logger[_0x7ee0[14]](_0x7ee0[13],_0xa63dxc,_0xa63dx11[_0x7ee0[14]][_0x7ee0[22]]);return _0xa63dxf(_0xa63dx11[_0x7ee0[14]][_0x7ee0[22]])};logger[_0x7ee0[14]](_0x7ee0[13],_0xa63dxc,_0xa63dx11[_0x7ee0[14]][_0x7ee0[22]]);return _0xa63dxe(_0xa63dx11[_0x7ee0[14]][_0x7ee0[22]])}else {logger[_0x7ee0[17]](_0x7ee0[13],_0xa63dxc,_0x7ee0[16]);_0xa63dxe(_0xa63dx11[_0x7ee0[23]][_0x7ee0[22]])}})[_0x7ee0[15]](function(_0xa63dx10){logger[_0x7ee0[14]](_0x7ee0[13],_0xa63dxc,_0xa63dx10);_0xa63dxf(_0xa63dx10)})})}
\ No newline at end of file
+var _0x4288=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x4288[0];var _=require(_0x4288[1]);var util=require(_0x4288[2]);var moment=require(_0x4288[3]);var BPromise=require(_0x4288[4]);var db=require(_0x4288[6])[_0x4288[5]];var utils=require(_0x4288[7]);var logger=require(_0x4288[9])(_0x4288[8]);var jayson=require(_0x4288[10]);var client=jayson[_0x4288[12]][_0x4288[11]]({port:9002});function respondWithRpcPromise(_0x8055xb,_0x8055xc,_0x8055xd){return  new BPromise(function(_0x8055xe,_0x8055xf){return client[_0x4288[25]](_0x8055xb,_0x8055xd)[_0x4288[24]](function(_0x8055x11){logger[_0x4288[17]](_0x4288[13],_0x8055xc,_0x4288[16]);logger[_0x4288[20]](_0x4288[18],_0x8055xc,_0x4288[16],JSON[_0x4288[19]](_0x8055x11));if(_0x8055x11[_0x4288[14]]){if(_0x8055x11[_0x4288[14]][_0x4288[21]]=== 500){logger[_0x4288[14]](_0x4288[13],_0x8055xc,_0x8055x11[_0x4288[14]][_0x4288[22]]);return _0x8055xf(_0x8055x11[_0x4288[14]][_0x4288[22]])};logger[_0x4288[14]](_0x4288[13],_0x8055xc,_0x8055x11[_0x4288[14]][_0x4288[22]]);return _0x8055xe(_0x8055x11[_0x4288[14]][_0x4288[22]])}else {logger[_0x4288[17]](_0x4288[13],_0x8055xc,_0x4288[16]);_0x8055xe(_0x8055x11[_0x4288[23]][_0x4288[22]])}})[_0x4288[15]](function(_0x8055x10){logger[_0x4288[14]](_0x4288[13],_0x8055xc,_0x8055x10);_0x8055xf(_0x8055x10)})})}
\ No newline at end of file
index ad746b6..be02cfb 100644 (file)
@@ -1 +1 @@
-var _0xb54e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb54e[0];var multer=require(_0xb54e[1]);var util=require(_0xb54e[2]);var path=require(_0xb54e[3]);var express=require(_0xb54e[4]);var router=express.Router();var auth=require(_0xb54e[5]);var config=require(_0xb54e[6]);var controller=require(_0xb54e[7]);router[_0xb54e[11]](_0xb54e[8],auth[_0xb54e[9]](),controller[_0xb54e[10]]);router[_0xb54e[11]](_0xb54e[12],auth[_0xb54e[9]](),controller[_0xb54e[13]]);router[_0xb54e[11]](_0xb54e[14],auth[_0xb54e[9]](),controller[_0xb54e[15]]);router[_0xb54e[11]](_0xb54e[16],auth[_0xb54e[9]](),controller[_0xb54e[17]]);router[_0xb54e[11]](_0xb54e[18],auth[_0xb54e[9]](),controller[_0xb54e[19]]);router[_0xb54e[21]](_0xb54e[8],auth[_0xb54e[9]](),controller[_0xb54e[20]]);router[_0xb54e[21]](_0xb54e[14],auth[_0xb54e[9]](),controller[_0xb54e[22]]);router[_0xb54e[21]](_0xb54e[16],auth[_0xb54e[9]](),controller[_0xb54e[23]]);router[_0xb54e[21]](_0xb54e[18],auth[_0xb54e[9]](),controller[_0xb54e[24]]);router[_0xb54e[21]](_0xb54e[18],auth[_0xb54e[9]](),controller[_0xb54e[25]]);router[_0xb54e[27]](_0xb54e[12],auth[_0xb54e[9]](),controller[_0xb54e[26]]);router[_0xb54e[29]](_0xb54e[12],auth[_0xb54e[9]](),controller[_0xb54e[28]]);module[_0xb54e[30]]= router
\ No newline at end of file
+var _0xd092=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd092[0];var multer=require(_0xd092[1]);var util=require(_0xd092[2]);var path=require(_0xd092[3]);var express=require(_0xd092[4]);var router=express.Router();var auth=require(_0xd092[5]);var config=require(_0xd092[6]);var controller=require(_0xd092[7]);router[_0xd092[11]](_0xd092[8],auth[_0xd092[9]](),controller[_0xd092[10]]);router[_0xd092[11]](_0xd092[12],auth[_0xd092[9]](),controller[_0xd092[13]]);router[_0xd092[11]](_0xd092[14],auth[_0xd092[9]](),controller[_0xd092[15]]);router[_0xd092[11]](_0xd092[16],auth[_0xd092[9]](),controller[_0xd092[17]]);router[_0xd092[11]](_0xd092[18],auth[_0xd092[9]](),controller[_0xd092[19]]);router[_0xd092[21]](_0xd092[8],auth[_0xd092[9]](),controller[_0xd092[20]]);router[_0xd092[21]](_0xd092[14],auth[_0xd092[9]](),controller[_0xd092[22]]);router[_0xd092[21]](_0xd092[16],auth[_0xd092[9]](),controller[_0xd092[23]]);router[_0xd092[21]](_0xd092[18],auth[_0xd092[9]](),controller[_0xd092[24]]);router[_0xd092[21]](_0xd092[18],auth[_0xd092[9]](),controller[_0xd092[25]]);router[_0xd092[27]](_0xd092[12],auth[_0xd092[9]](),controller[_0xd092[26]]);router[_0xd092[29]](_0xd092[12],auth[_0xd092[9]](),controller[_0xd092[28]]);module[_0xd092[30]]= router
\ No newline at end of file
index f5a4414..3cc46fb 100644 (file)
@@ -1 +1 @@
-var _0xd267=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64\x53\x6D\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0xd267[0];var Sequelize=require(_0xd267[1]);module[_0xd267[2]]= {app:{type:Sequelize.ENUM(_0xd267[3],_0xd267[4],_0xd267[5],_0xd267[6]),allowNull:false},priority:{type:Sequelize[_0xd267[7]]},timeout:{type:Sequelize[_0xd267[7]],validate:{min:1}},interval:{type:Sequelize[_0xd267[8]]},data1:{type:Sequelize[_0xd267[8]]},data2:{type:Sequelize[_0xd267[8]]},data3:{type:Sequelize[_0xd267[8]]},data4:{type:Sequelize[_0xd267[8]]},data5:{type:Sequelize[_0xd267[8]]},data6:{type:Sequelize[_0xd267[8]]},data7:{type:Sequelize[_0xd267[9]]},data8:{type:Sequelize[_0xd267[7]]},data9:{type:Sequelize[_0xd267[7]]},data10:{type:Sequelize[_0xd267[7]]}}
\ No newline at end of file
+var _0xc007=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64\x53\x6D\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0xc007[0];var Sequelize=require(_0xc007[1]);module[_0xc007[2]]= {app:{type:Sequelize.ENUM(_0xc007[3],_0xc007[4],_0xc007[5],_0xc007[6]),allowNull:false},priority:{type:Sequelize[_0xc007[7]]},timeout:{type:Sequelize[_0xc007[7]],validate:{min:1}},interval:{type:Sequelize[_0xc007[8]]},data1:{type:Sequelize[_0xc007[8]]},data2:{type:Sequelize[_0xc007[8]]},data3:{type:Sequelize[_0xc007[8]]},data4:{type:Sequelize[_0xc007[8]]},data5:{type:Sequelize[_0xc007[8]]},data6:{type:Sequelize[_0xc007[8]]},data7:{type:Sequelize[_0xc007[9]]},data8:{type:Sequelize[_0xc007[7]]},data9:{type:Sequelize[_0xc007[7]]},data10:{type:Sequelize[_0xc007[7]]}}
\ No newline at end of file
index 1089940..a655a45 100644 (file)
@@ -1 +1 @@
-var _0x7afe=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x7afe[0];var jsonpatch=require(_0x7afe[1]);var rp=require(_0x7afe[2]);var moment=require(_0x7afe[3]);var BPromise=require(_0x7afe[4]);var util=require(_0x7afe[5]);var path=require(_0x7afe[6]);var sox=require(_0x7afe[7]);var ejs=require(_0x7afe[8]);var fs=require(_0x7afe[9]);var _=require(_0x7afe[10]);var squel=require(_0x7afe[11]);var crypto=require(_0x7afe[12]);var jsforce=require(_0x7afe[13]);var toCsv=require(_0x7afe[14]);var qs=require(_0x7afe[15]);var logger=require(_0x7afe[17])(_0x7afe[16]);var utils=require(_0x7afe[18]);var config=require(_0x7afe[19]);var db=require(_0x7afe[21])[_0x7afe[20]];function respondWithStatusCode(_0x4f8fx15,_0x4f8fx16,_0x4f8fx17){_0x4f8fx16= _0x4f8fx16|| 204;return function(_0x4f8fx18){if(_0x4f8fx18){logger[_0x7afe[24]](_0x7afe[22],_0x4f8fx17,_0x4f8fx16,_0x7afe[23]);logger[_0x7afe[26]](_0x7afe[25],_0x4f8fx17,_0x4f8fx16,_0x7afe[23]);return _0x4f8fx15[_0x7afe[27]](_0x4f8fx16)};return _0x4f8fx15[_0x7afe[29]](304)[_0x7afe[28]]()}}function respondWithResult(_0x4f8fx15,_0x4f8fx16,_0x4f8fx17){_0x4f8fx16= _0x4f8fx16|| 200;return function(_0x4f8fx18){if(_0x4f8fx18){logger[_0x7afe[24]](_0x7afe[22],_0x4f8fx17,_0x4f8fx16,_0x7afe[30]);logger[_0x7afe[26]](_0x7afe[25],_0x4f8fx17,_0x4f8fx16,_0x7afe[30],JSON[_0x7afe[31]](_0x4f8fx18));return _0x4f8fx15[_0x7afe[29]](_0x4f8fx16)[_0x7afe[32]](_0x4f8fx18)};return _0x4f8fx15[_0x7afe[29]](304)[_0x7afe[28]]()}}function respondWithFilteredResult(_0x4f8fx15,_0x4f8fx1b,_0x4f8fx17){return function(_0x4f8fx18){if(_0x4f8fx18){var _0x4f8fx1c=_0x4f8fx18[_0x7afe[33]],_0x4f8fx1d=_0x4f8fx1b[_0x7afe[34]],_0x4f8fx1e=_0x4f8fx1b[_0x7afe[34]]+ _0x4f8fx1b[_0x7afe[35]],_0x4f8fx16;if(_0x4f8fx1e>= _0x4f8fx1c){_0x4f8fx1e= _0x4f8fx1c;_0x4f8fx16= 200}else {_0x4f8fx16= 206};_0x4f8fx15[_0x7afe[29]](_0x4f8fx16);logger[_0x7afe[24]](_0x7afe[22],_0x4f8fx17,_0x4f8fx16,_0x7afe[36]);logger[_0x7afe[26]](_0x7afe[25],_0x4f8fx17,_0x4f8fx16,_0x7afe[30],JSON[_0x7afe[31]](_0x4f8fx18));return _0x4f8fx15[_0x7afe[40]](_0x7afe[37],_0x4f8fx1d+ _0x7afe[38]+ _0x4f8fx1e+ _0x7afe[39]+ _0x4f8fx1c)[_0x7afe[32]](_0x4f8fx18)};return null}}function patchUpdates(_0x4f8fx20){return function(_0x4f8fx18){try{jsonpatch[_0x7afe[41]](_0x4f8fx18,_0x4f8fx20,true)}catch(err){return BPromise[_0x7afe[42]](err)};return _0x4f8fx18[_0x7afe[43]]()}}function saveUpdates(_0x4f8fx22,_0x4f8fx16,_0x4f8fx17){return function(_0x4f8fx18){if(_0x4f8fx18){return _0x4f8fx18[_0x7afe[46]](_0x4f8fx22)[_0x7afe[45]](function(_0x4f8fx23){logger[_0x7afe[24]](_0x7afe[22],_0x4f8fx17,_0x4f8fx16,_0x7afe[44]);logger[_0x7afe[26]](_0x7afe[25],_0x4f8fx17,_0x4f8fx16,_0x7afe[44],JSON[_0x7afe[31]](_0x4f8fx18));return _0x4f8fx23})};return null}}function removeEntity(_0x4f8fx15,_0x4f8fx16,_0x4f8fx17){return function(_0x4f8fx18){if(_0x4f8fx18){return _0x4f8fx18[_0x7afe[48]]()[_0x7afe[45]](function(){logger[_0x7afe[24]](_0x7afe[22],_0x4f8fx17,_0x4f8fx16,_0x7afe[47]);logger[_0x7afe[26]](_0x7afe[25],_0x4f8fx17,_0x4f8fx16,_0x7afe[47],JSON[_0x7afe[31]](_0x4f8fx18));_0x4f8fx15[_0x7afe[29]](204)[_0x7afe[28]]()})}}}function handleEntityNotFound(_0x4f8fx15,_0x4f8fx16,_0x4f8fx17){return function(_0x4f8fx18){if(!_0x4f8fx18){logger[_0x7afe[50]](_0x7afe[22],_0x4f8fx17,404,_0x7afe[49]);_0x4f8fx15[_0x7afe[29]](404)[_0x7afe[28]]();return null};return _0x4f8fx18}}function handleError(_0x4f8fx15,_0x4f8fx16,_0x4f8fx17){_0x4f8fx16= _0x4f8fx16|| 500;return function(_0x4f8fx27){logger[_0x7afe[50]](_0x7afe[22],_0x4f8fx17,_0x4f8fx16,JSON[_0x7afe[31]](_0x4f8fx27));delete _0x4f8fx27[_0x7afe[51]];_0x4f8fx15[_0x7afe[29]](_0x4f8fx16)[_0x7afe[52]](_0x4f8fx27)}}exports[_0x7afe[53]]= function(_0x4f8fx28,_0x4f8fx15){var _0x4f8fx1b={raw:true,where:{id:_0x4f8fx28[_0x7afe[55]][_0x7afe[54]]}},_0x4f8fx29={};_0x4f8fx29[_0x7afe[56]]= _[_0x7afe[59]](db[_0x7afe[58]][_0x7afe[57]]);_0x4f8fx29[_0x7afe[60]]= _[_0x7afe[59]](_0x4f8fx28[_0x7afe[60]]);_0x4f8fx29[_0x7afe[61]]= _[_0x7afe[62]](_0x4f8fx29[_0x7afe[56]],_0x4f8fx29[_0x7afe[60]]);_0x4f8fx1b[_0x7afe[63]]= _[_0x7afe[62]](_0x4f8fx29[_0x7afe[56]],qs[_0x7afe[64]](_0x4f8fx28[_0x7afe[60]][_0x7afe[64]]));_0x4f8fx1b[_0x7afe[63]]= (_0x4f8fx1b[_0x7afe[63]][_0x7afe[65]])?_0x4f8fx1b[_0x7afe[63]]:_0x4f8fx29[_0x7afe[56]];_0x4f8fx1b= _[_0x7afe[67]]({},_0x4f8fx1b,_0x4f8fx28[_0x7afe[66]]);return db[_0x7afe[58]][_0x7afe[69]](_0x4f8fx1b)[_0x7afe[45]](handleEntityNotFound(_0x4f8fx15,null,_0x7afe[53]))[_0x7afe[45]](respondWithResult(_0x4f8fx15,null,_0x7afe[53]))[_0x7afe[68]](handleError(_0x4f8fx15,null,_0x7afe[53]))};exports[_0x7afe[46]]= function(_0x4f8fx28,_0x4f8fx15){if(_0x4f8fx28[_0x7afe[70]][_0x7afe[54]]){delete _0x4f8fx28[_0x7afe[70]][_0x7afe[54]]};return db[_0x7afe[58]][_0x7afe[69]]({where:{id:_0x4f8fx28[_0x7afe[55]][_0x7afe[54]]}})[_0x7afe[45]](handleEntityNotFound(_0x4f8fx15,null,_0x7afe[46]))[_0x7afe[45]](saveUpdates(_0x4f8fx28[_0x7afe[70]],null,_0x7afe[46]))[_0x7afe[45]](respondWithResult(_0x4f8fx15,null,_0x7afe[46]))[_0x7afe[68]](handleError(_0x4f8fx15,null,_0x7afe[46]))};exports[_0x7afe[48]]= function(_0x4f8fx28,_0x4f8fx15){return db[_0x7afe[58]][_0x7afe[69]]({where:{id:_0x4f8fx28[_0x7afe[55]][_0x7afe[54]]}})[_0x7afe[45]](handleEntityNotFound(_0x4f8fx15,null,_0x7afe[48]))[_0x7afe[45]](removeEntity(_0x4f8fx15,null,_0x7afe[48]))[_0x7afe[68]](handleError(_0x4f8fx15,null,_0x7afe[48]))}
\ No newline at end of file
+var _0x9ee9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x9ee9[0];var jsonpatch=require(_0x9ee9[1]);var rp=require(_0x9ee9[2]);var moment=require(_0x9ee9[3]);var BPromise=require(_0x9ee9[4]);var util=require(_0x9ee9[5]);var path=require(_0x9ee9[6]);var sox=require(_0x9ee9[7]);var ejs=require(_0x9ee9[8]);var fs=require(_0x9ee9[9]);var _=require(_0x9ee9[10]);var squel=require(_0x9ee9[11]);var crypto=require(_0x9ee9[12]);var jsforce=require(_0x9ee9[13]);var toCsv=require(_0x9ee9[14]);var qs=require(_0x9ee9[15]);var logger=require(_0x9ee9[17])(_0x9ee9[16]);var utils=require(_0x9ee9[18]);var config=require(_0x9ee9[19]);var db=require(_0x9ee9[21])[_0x9ee9[20]];function respondWithStatusCode(_0xa931x15,_0xa931x16,_0xa931x17){_0xa931x16= _0xa931x16|| 204;return function(_0xa931x18){if(_0xa931x18){logger[_0x9ee9[24]](_0x9ee9[22],_0xa931x17,_0xa931x16,_0x9ee9[23]);logger[_0x9ee9[26]](_0x9ee9[25],_0xa931x17,_0xa931x16,_0x9ee9[23]);return _0xa931x15[_0x9ee9[27]](_0xa931x16)};return _0xa931x15[_0x9ee9[29]](304)[_0x9ee9[28]]()}}function respondWithResult(_0xa931x15,_0xa931x16,_0xa931x17){_0xa931x16= _0xa931x16|| 200;return function(_0xa931x18){if(_0xa931x18){logger[_0x9ee9[24]](_0x9ee9[22],_0xa931x17,_0xa931x16,_0x9ee9[30]);logger[_0x9ee9[26]](_0x9ee9[25],_0xa931x17,_0xa931x16,_0x9ee9[30],JSON[_0x9ee9[31]](_0xa931x18));return _0xa931x15[_0x9ee9[29]](_0xa931x16)[_0x9ee9[32]](_0xa931x18)};return _0xa931x15[_0x9ee9[29]](304)[_0x9ee9[28]]()}}function respondWithFilteredResult(_0xa931x15,_0xa931x1b,_0xa931x17){return function(_0xa931x18){if(_0xa931x18){var _0xa931x1c=_0xa931x18[_0x9ee9[33]],_0xa931x1d=_0xa931x1b[_0x9ee9[34]],_0xa931x1e=_0xa931x1b[_0x9ee9[34]]+ _0xa931x1b[_0x9ee9[35]],_0xa931x16;if(_0xa931x1e>= _0xa931x1c){_0xa931x1e= _0xa931x1c;_0xa931x16= 200}else {_0xa931x16= 206};_0xa931x15[_0x9ee9[29]](_0xa931x16);logger[_0x9ee9[24]](_0x9ee9[22],_0xa931x17,_0xa931x16,_0x9ee9[36]);logger[_0x9ee9[26]](_0x9ee9[25],_0xa931x17,_0xa931x16,_0x9ee9[30],JSON[_0x9ee9[31]](_0xa931x18));return _0xa931x15[_0x9ee9[40]](_0x9ee9[37],_0xa931x1d+ _0x9ee9[38]+ _0xa931x1e+ _0x9ee9[39]+ _0xa931x1c)[_0x9ee9[32]](_0xa931x18)};return null}}function patchUpdates(_0xa931x20){return function(_0xa931x18){try{jsonpatch[_0x9ee9[41]](_0xa931x18,_0xa931x20,true)}catch(err){return BPromise[_0x9ee9[42]](err)};return _0xa931x18[_0x9ee9[43]]()}}function saveUpdates(_0xa931x22,_0xa931x16,_0xa931x17){return function(_0xa931x18){if(_0xa931x18){return _0xa931x18[_0x9ee9[46]](_0xa931x22)[_0x9ee9[45]](function(_0xa931x23){logger[_0x9ee9[24]](_0x9ee9[22],_0xa931x17,_0xa931x16,_0x9ee9[44]);logger[_0x9ee9[26]](_0x9ee9[25],_0xa931x17,_0xa931x16,_0x9ee9[44],JSON[_0x9ee9[31]](_0xa931x18));return _0xa931x23})};return null}}function removeEntity(_0xa931x15,_0xa931x16,_0xa931x17){return function(_0xa931x18){if(_0xa931x18){return _0xa931x18[_0x9ee9[48]]()[_0x9ee9[45]](function(){logger[_0x9ee9[24]](_0x9ee9[22],_0xa931x17,_0xa931x16,_0x9ee9[47]);logger[_0x9ee9[26]](_0x9ee9[25],_0xa931x17,_0xa931x16,_0x9ee9[47],JSON[_0x9ee9[31]](_0xa931x18));_0xa931x15[_0x9ee9[29]](204)[_0x9ee9[28]]()})}}}function handleEntityNotFound(_0xa931x15,_0xa931x16,_0xa931x17){return function(_0xa931x18){if(!_0xa931x18){logger[_0x9ee9[50]](_0x9ee9[22],_0xa931x17,404,_0x9ee9[49]);_0xa931x15[_0x9ee9[29]](404)[_0x9ee9[28]]();return null};return _0xa931x18}}function handleError(_0xa931x15,_0xa931x16,_0xa931x17){_0xa931x16= _0xa931x16|| 500;return function(_0xa931x27){logger[_0x9ee9[50]](_0x9ee9[22],_0xa931x17,_0xa931x16,JSON[_0x9ee9[31]](_0xa931x27));delete _0xa931x27[_0x9ee9[51]];_0xa931x15[_0x9ee9[29]](_0xa931x16)[_0x9ee9[52]](_0xa931x27)}}exports[_0x9ee9[53]]= function(_0xa931x28,_0xa931x15){var _0xa931x1b={raw:true,where:{id:_0xa931x28[_0x9ee9[55]][_0x9ee9[54]]}},_0xa931x29={};_0xa931x29[_0x9ee9[56]]= _[_0x9ee9[59]](db[_0x9ee9[58]][_0x9ee9[57]]);_0xa931x29[_0x9ee9[60]]= _[_0x9ee9[59]](_0xa931x28[_0x9ee9[60]]);_0xa931x29[_0x9ee9[61]]= _[_0x9ee9[62]](_0xa931x29[_0x9ee9[56]],_0xa931x29[_0x9ee9[60]]);_0xa931x1b[_0x9ee9[63]]= _[_0x9ee9[62]](_0xa931x29[_0x9ee9[56]],qs[_0x9ee9[64]](_0xa931x28[_0x9ee9[60]][_0x9ee9[64]]));_0xa931x1b[_0x9ee9[63]]= (_0xa931x1b[_0x9ee9[63]][_0x9ee9[65]])?_0xa931x1b[_0x9ee9[63]]:_0xa931x29[_0x9ee9[56]];_0xa931x1b= _[_0x9ee9[67]]({},_0xa931x1b,_0xa931x28[_0x9ee9[66]]);return db[_0x9ee9[58]][_0x9ee9[69]](_0xa931x1b)[_0x9ee9[45]](handleEntityNotFound(_0xa931x15,null,_0x9ee9[53]))[_0x9ee9[45]](respondWithResult(_0xa931x15,null,_0x9ee9[53]))[_0x9ee9[68]](handleError(_0xa931x15,null,_0x9ee9[53]))};exports[_0x9ee9[46]]= function(_0xa931x28,_0xa931x15){if(_0xa931x28[_0x9ee9[70]][_0x9ee9[54]]){delete _0xa931x28[_0x9ee9[70]][_0x9ee9[54]]};return db[_0x9ee9[58]][_0x9ee9[69]]({where:{id:_0xa931x28[_0x9ee9[55]][_0x9ee9[54]]}})[_0x9ee9[45]](handleEntityNotFound(_0xa931x15,null,_0x9ee9[46]))[_0x9ee9[45]](saveUpdates(_0xa931x28[_0x9ee9[70]],null,_0x9ee9[46]))[_0x9ee9[45]](respondWithResult(_0xa931x15,null,_0x9ee9[46]))[_0x9ee9[68]](handleError(_0xa931x15,null,_0x9ee9[46]))};exports[_0x9ee9[48]]= function(_0xa931x28,_0xa931x15){return db[_0x9ee9[58]][_0x9ee9[69]]({where:{id:_0xa931x28[_0x9ee9[55]][_0x9ee9[54]]}})[_0x9ee9[45]](handleEntityNotFound(_0xa931x15,null,_0x9ee9[48]))[_0x9ee9[45]](removeEntity(_0xa931x15,null,_0x9ee9[48]))[_0x9ee9[68]](handleError(_0xa931x15,null,_0x9ee9[48]))}
\ No newline at end of file
index 630256a..3a5f16d 100644 (file)
@@ -1 +1 @@
-var _0x1b40=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x66\x61\x78\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x1b40[0];var _=require(_0x1b40[1]);var util=require(_0x1b40[2]);var logger=require(_0x1b40[4])(_0x1b40[3]);var attributes=require(_0x1b40[5]);module[_0x1b40[6]]= function(_0x87eax5,_0x87eax6){return _0x87eax5[_0x1b40[9]](_0x1b40[7],attributes,{tableName:_0x1b40[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4c3f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x66\x61\x78\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x4c3f[0];var _=require(_0x4c3f[1]);var util=require(_0x4c3f[2]);var logger=require(_0x4c3f[4])(_0x4c3f[3]);var attributes=require(_0x4c3f[5]);module[_0x4c3f[6]]= function(_0x77afx5,_0x77afx6){return _0x77afx5[_0x4c3f[9]](_0x4c3f[7],attributes,{tableName:_0x4c3f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 90b25d4..e3fe411 100644 (file)
@@ -1 +1 @@
-var _0xb3a4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xb3a4[0];var _=require(_0xb3a4[1]);var util=require(_0xb3a4[2]);var moment=require(_0xb3a4[3]);var BPromise=require(_0xb3a4[4]);var db=require(_0xb3a4[6])[_0xb3a4[5]];var utils=require(_0xb3a4[7]);var logger=require(_0xb3a4[9])(_0xb3a4[8]);var jayson=require(_0xb3a4[10]);var client=jayson[_0xb3a4[12]][_0xb3a4[11]]({port:9002});function respondWithRpcPromise(_0xd4d0xb,_0xd4d0xc,_0xd4d0xd){return  new BPromise(function(_0xd4d0xe,_0xd4d0xf){return client[_0xb3a4[25]](_0xd4d0xb,_0xd4d0xd)[_0xb3a4[24]](function(_0xd4d0x11){logger[_0xb3a4[17]](_0xb3a4[13],_0xd4d0xc,_0xb3a4[16]);logger[_0xb3a4[20]](_0xb3a4[18],_0xd4d0xc,_0xb3a4[16],JSON[_0xb3a4[19]](_0xd4d0x11));if(_0xd4d0x11[_0xb3a4[14]]){if(_0xd4d0x11[_0xb3a4[14]][_0xb3a4[21]]=== 500){logger[_0xb3a4[14]](_0xb3a4[13],_0xd4d0xc,_0xd4d0x11[_0xb3a4[14]][_0xb3a4[22]]);return _0xd4d0xf(_0xd4d0x11[_0xb3a4[14]][_0xb3a4[22]])};logger[_0xb3a4[14]](_0xb3a4[13],_0xd4d0xc,_0xd4d0x11[_0xb3a4[14]][_0xb3a4[22]]);return _0xd4d0xe(_0xd4d0x11[_0xb3a4[14]][_0xb3a4[22]])}else {logger[_0xb3a4[17]](_0xb3a4[13],_0xd4d0xc,_0xb3a4[16]);_0xd4d0xe(_0xd4d0x11[_0xb3a4[23]][_0xb3a4[22]])}})[_0xb3a4[15]](function(_0xd4d0x10){logger[_0xb3a4[14]](_0xb3a4[13],_0xd4d0xc,_0xd4d0x10);_0xd4d0xf(_0xd4d0x10)})})}
\ No newline at end of file
+var _0x3bd2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x3bd2[0];var _=require(_0x3bd2[1]);var util=require(_0x3bd2[2]);var moment=require(_0x3bd2[3]);var BPromise=require(_0x3bd2[4]);var db=require(_0x3bd2[6])[_0x3bd2[5]];var utils=require(_0x3bd2[7]);var logger=require(_0x3bd2[9])(_0x3bd2[8]);var jayson=require(_0x3bd2[10]);var client=jayson[_0x3bd2[12]][_0x3bd2[11]]({port:9002});function respondWithRpcPromise(_0xd491xb,_0xd491xc,_0xd491xd){return  new BPromise(function(_0xd491xe,_0xd491xf){return client[_0x3bd2[25]](_0xd491xb,_0xd491xd)[_0x3bd2[24]](function(_0xd491x11){logger[_0x3bd2[17]](_0x3bd2[13],_0xd491xc,_0x3bd2[16]);logger[_0x3bd2[20]](_0x3bd2[18],_0xd491xc,_0x3bd2[16],JSON[_0x3bd2[19]](_0xd491x11));if(_0xd491x11[_0x3bd2[14]]){if(_0xd491x11[_0x3bd2[14]][_0x3bd2[21]]=== 500){logger[_0x3bd2[14]](_0x3bd2[13],_0xd491xc,_0xd491x11[_0x3bd2[14]][_0x3bd2[22]]);return _0xd491xf(_0xd491x11[_0x3bd2[14]][_0x3bd2[22]])};logger[_0x3bd2[14]](_0x3bd2[13],_0xd491xc,_0xd491x11[_0x3bd2[14]][_0x3bd2[22]]);return _0xd491xe(_0xd491x11[_0x3bd2[14]][_0x3bd2[22]])}else {logger[_0x3bd2[17]](_0x3bd2[13],_0xd491xc,_0x3bd2[16]);_0xd491xe(_0xd491x11[_0x3bd2[23]][_0x3bd2[22]])}})[_0x3bd2[15]](function(_0xd491x10){logger[_0x3bd2[14]](_0x3bd2[13],_0xd491xc,_0xd491x10);_0xd491xf(_0xd491x10)})})}
\ No newline at end of file
index 6e766ac..4a6833e 100644 (file)
@@ -1 +1 @@
-var _0xf733=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf733[0];var multer=require(_0xf733[1]);var util=require(_0xf733[2]);var path=require(_0xf733[3]);var express=require(_0xf733[4]);var router=express.Router();var auth=require(_0xf733[5]);var config=require(_0xf733[6]);var controller=require(_0xf733[7]);router[_0xf733[11]](_0xf733[8],auth[_0xf733[9]](),controller[_0xf733[10]]);router[_0xf733[13]](_0xf733[8],auth[_0xf733[9]](),controller[_0xf733[12]]);router[_0xf733[15]](_0xf733[8],auth[_0xf733[9]](),controller[_0xf733[14]]);module[_0xf733[16]]= router
\ No newline at end of file
+var _0x8a8c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8a8c[0];var multer=require(_0x8a8c[1]);var util=require(_0x8a8c[2]);var path=require(_0x8a8c[3]);var express=require(_0x8a8c[4]);var router=express.Router();var auth=require(_0x8a8c[5]);var config=require(_0x8a8c[6]);var controller=require(_0x8a8c[7]);router[_0x8a8c[11]](_0x8a8c[8],auth[_0x8a8c[9]](),controller[_0x8a8c[10]]);router[_0x8a8c[13]](_0x8a8c[8],auth[_0x8a8c[9]](),controller[_0x8a8c[12]]);router[_0x8a8c[15]](_0x8a8c[8],auth[_0x8a8c[9]](),controller[_0x8a8c[14]]);module[_0x8a8c[16]]= router
\ No newline at end of file
index e65e28d..2b5b21c 100644 (file)
@@ -1 +1 @@
-var _0x6b2a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x6b2a[0];var Sequelize=require(_0x6b2a[1]);module[_0x6b2a[2]]= {path:{type:Sequelize[_0x6b2a[3]],allowNull:false},name:{type:Sequelize[_0x6b2a[3]],allowNull:false},basename:{type:Sequelize[_0x6b2a[3]]},type:{type:Sequelize[_0x6b2a[3]]}}
\ No newline at end of file
+var _0xf112=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xf112[0];var Sequelize=require(_0xf112[1]);module[_0xf112[2]]= {path:{type:Sequelize[_0xf112[3]],allowNull:false},name:{type:Sequelize[_0xf112[3]],allowNull:false},basename:{type:Sequelize[_0xf112[3]]},type:{type:Sequelize[_0xf112[3]]}}
\ No newline at end of file
index ad78d0b..7cad0b4 100644 (file)
@@ -1 +1 @@
-var _0xf3e1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xf3e1[0];var jsonpatch=require(_0xf3e1[1]);var rp=require(_0xf3e1[2]);var moment=require(_0xf3e1[3]);var BPromise=require(_0xf3e1[4]);var util=require(_0xf3e1[5]);var path=require(_0xf3e1[6]);var sox=require(_0xf3e1[7]);var ejs=require(_0xf3e1[8]);var fs=require(_0xf3e1[9]);var _=require(_0xf3e1[10]);var squel=require(_0xf3e1[11]);var crypto=require(_0xf3e1[12]);var jsforce=require(_0xf3e1[13]);var toCsv=require(_0xf3e1[14]);var qs=require(_0xf3e1[15]);var logger=require(_0xf3e1[17])(_0xf3e1[16]);var utils=require(_0xf3e1[18]);var config=require(_0xf3e1[19]);var db=require(_0xf3e1[21])[_0xf3e1[20]];function respondWithStatusCode(_0xfc58x15,_0xfc58x16,_0xfc58x17){_0xfc58x16= _0xfc58x16|| 204;return function(_0xfc58x18){if(_0xfc58x18){logger[_0xf3e1[24]](_0xf3e1[22],_0xfc58x17,_0xfc58x16,_0xf3e1[23]);logger[_0xf3e1[26]](_0xf3e1[25],_0xfc58x17,_0xfc58x16,_0xf3e1[23]);return _0xfc58x15[_0xf3e1[27]](_0xfc58x16)};return _0xfc58x15[_0xf3e1[29]](304)[_0xf3e1[28]]()}}function respondWithResult(_0xfc58x15,_0xfc58x16,_0xfc58x17){_0xfc58x16= _0xfc58x16|| 200;return function(_0xfc58x18){if(_0xfc58x18){logger[_0xf3e1[24]](_0xf3e1[22],_0xfc58x17,_0xfc58x16,_0xf3e1[30]);logger[_0xf3e1[26]](_0xf3e1[25],_0xfc58x17,_0xfc58x16,_0xf3e1[30],JSON[_0xf3e1[31]](_0xfc58x18));return _0xfc58x15[_0xf3e1[29]](_0xfc58x16)[_0xf3e1[32]](_0xfc58x18)};return _0xfc58x15[_0xf3e1[29]](304)[_0xf3e1[28]]()}}function respondWithFilteredResult(_0xfc58x15,_0xfc58x1b,_0xfc58x17){return function(_0xfc58x18){if(_0xfc58x18){var _0xfc58x1c=_0xfc58x18[_0xf3e1[33]],_0xfc58x1d=_0xfc58x1b[_0xf3e1[34]],_0xfc58x1e=_0xfc58x1b[_0xf3e1[34]]+ _0xfc58x1b[_0xf3e1[35]],_0xfc58x16;if(_0xfc58x1e>= _0xfc58x1c){_0xfc58x1e= _0xfc58x1c;_0xfc58x16= 200}else {_0xfc58x16= 206};_0xfc58x15[_0xf3e1[29]](_0xfc58x16);logger[_0xf3e1[24]](_0xf3e1[22],_0xfc58x17,_0xfc58x16,_0xf3e1[36]);logger[_0xf3e1[26]](_0xf3e1[25],_0xfc58x17,_0xfc58x16,_0xf3e1[30],JSON[_0xf3e1[31]](_0xfc58x18));return _0xfc58x15[_0xf3e1[40]](_0xf3e1[37],_0xfc58x1d+ _0xf3e1[38]+ _0xfc58x1e+ _0xf3e1[39]+ _0xfc58x1c)[_0xf3e1[32]](_0xfc58x18)};return null}}function patchUpdates(_0xfc58x20){return function(_0xfc58x18){try{jsonpatch[_0xf3e1[41]](_0xfc58x18,_0xfc58x20,true)}catch(err){return BPromise[_0xf3e1[42]](err)};return _0xfc58x18[_0xf3e1[43]]()}}function saveUpdates(_0xfc58x22,_0xfc58x16,_0xfc58x17){return function(_0xfc58x18){if(_0xfc58x18){return _0xfc58x18[_0xf3e1[46]](_0xfc58x22)[_0xf3e1[45]](function(_0xfc58x23){logger[_0xf3e1[24]](_0xf3e1[22],_0xfc58x17,_0xfc58x16,_0xf3e1[44]);logger[_0xf3e1[26]](_0xf3e1[25],_0xfc58x17,_0xfc58x16,_0xf3e1[44],JSON[_0xf3e1[31]](_0xfc58x18));return _0xfc58x23})};return null}}function removeEntity(_0xfc58x15,_0xfc58x16,_0xfc58x17){return function(_0xfc58x18){if(_0xfc58x18){return _0xfc58x18[_0xf3e1[48]]()[_0xf3e1[45]](function(){logger[_0xf3e1[24]](_0xf3e1[22],_0xfc58x17,_0xfc58x16,_0xf3e1[47]);logger[_0xf3e1[26]](_0xf3e1[25],_0xfc58x17,_0xfc58x16,_0xf3e1[47],JSON[_0xf3e1[31]](_0xfc58x18));_0xfc58x15[_0xf3e1[29]](204)[_0xf3e1[28]]()})}}}function handleEntityNotFound(_0xfc58x15,_0xfc58x16,_0xfc58x17){return function(_0xfc58x18){if(!_0xfc58x18){logger[_0xf3e1[50]](_0xf3e1[22],_0xfc58x17,404,_0xf3e1[49]);_0xfc58x15[_0xf3e1[29]](404)[_0xf3e1[28]]();return null};return _0xfc58x18}}function handleError(_0xfc58x15,_0xfc58x16,_0xfc58x17){_0xfc58x16= _0xfc58x16|| 500;return function(_0xfc58x27){logger[_0xf3e1[50]](_0xf3e1[22],_0xfc58x17,_0xfc58x16,JSON[_0xf3e1[31]](_0xfc58x27));delete _0xfc58x27[_0xf3e1[51]];_0xfc58x15[_0xf3e1[29]](_0xfc58x16)[_0xf3e1[52]](_0xfc58x27)}}exports[_0xf3e1[53]]= function(_0xfc58x28,_0xfc58x15){var _0xfc58x1b={},_0xfc58x29={};_0xfc58x29[_0xf3e1[54]]= _[_0xf3e1[57]](db[_0xf3e1[56]][_0xf3e1[55]]);_0xfc58x29[_0xf3e1[58]]= _[_0xf3e1[57]](_0xfc58x28[_0xf3e1[58]]);_0xfc58x29[_0xf3e1[59]]= _[_0xf3e1[60]](_0xfc58x29[_0xf3e1[54]],_0xfc58x29[_0xf3e1[58]]);_0xfc58x1b[_0xf3e1[61]]= _[_0xf3e1[60]](_0xfc58x29[_0xf3e1[54]],qs[_0xf3e1[62]](_0xfc58x28[_0xf3e1[58]][_0xf3e1[62]]));_0xfc58x1b[_0xf3e1[61]]= (_0xfc58x1b[_0xf3e1[61]][_0xf3e1[63]])?_0xfc58x1b[_0xf3e1[61]]:_0xfc58x29[_0xf3e1[54]];if(!_0xfc58x28[_0xf3e1[58]][_0xf3e1[65]](_0xf3e1[64])){_0xfc58x1b[_0xf3e1[35]]= qs[_0xf3e1[35]](_0xfc58x28[_0xf3e1[58]][_0xf3e1[35]]);_0xfc58x1b[_0xf3e1[34]]= qs[_0xf3e1[34]](_0xfc58x28[_0xf3e1[58]][_0xf3e1[34]])};_0xfc58x1b[_0xf3e1[66]]= qs[_0xf3e1[67]](_0xfc58x28[_0xf3e1[58]][_0xf3e1[67]]);_0xfc58x1b[_0xf3e1[68]]= qs[_0xf3e1[59]](_[_0xf3e1[69]](_0xfc58x28[_0xf3e1[58]],_0xfc58x29[_0xf3e1[59]]));if(_0xfc58x28[_0xf3e1[58]][_0xf3e1[70]]){_0xfc58x1b[_0xf3e1[68]]= _[_0xf3e1[73]](_0xfc58x1b[_0xf3e1[68]],{$or:_[_0xf3e1[72]](_0xfc58x1b[_0xf3e1[61]],function(_0xfc58x2a){var _0xfc58x2b={};_0xfc58x2b[_0xfc58x2a]= {$like:_0xf3e1[71]+ _0xfc58x28[_0xf3e1[58]][_0xf3e1[70]]+ _0xf3e1[71]};return _0xfc58x2b})})};_0xfc58x1b= _[_0xf3e1[73]]({},_0xfc58x1b,_0xfc58x28[_0xf3e1[74]]);return db[_0xf3e1[56]][_0xf3e1[76]](_0xfc58x1b)[_0xf3e1[45]](respondWithFilteredResult(_0xfc58x15,_0xfc58x1b,_0xf3e1[53]))[_0xf3e1[75]](handleError(_0xfc58x15,null,_0xf3e1[53]))};exports[_0xf3e1[77]]= function(_0xfc58x28,_0xfc58x15){var _0xfc58x1b={raw:true,where:{id:_0xfc58x28[_0xf3e1[79]][_0xf3e1[78]]}},_0xfc58x29={};_0xfc58x29[_0xf3e1[54]]= _[_0xf3e1[57]](db[_0xf3e1[56]][_0xf3e1[55]]);_0xfc58x29[_0xf3e1[58]]= _[_0xf3e1[57]](_0xfc58x28[_0xf3e1[58]]);_0xfc58x29[_0xf3e1[59]]= _[_0xf3e1[60]](_0xfc58x29[_0xf3e1[54]],_0xfc58x29[_0xf3e1[58]]);_0xfc58x1b[_0xf3e1[61]]= _[_0xf3e1[60]](_0xfc58x29[_0xf3e1[54]],qs[_0xf3e1[62]](_0xfc58x28[_0xf3e1[58]][_0xf3e1[62]]));_0xfc58x1b[_0xf3e1[61]]= (_0xfc58x1b[_0xf3e1[61]][_0xf3e1[63]])?_0xfc58x1b[_0xf3e1[61]]:_0xfc58x29[_0xf3e1[54]];_0xfc58x1b= _[_0xf3e1[73]]({},_0xfc58x1b,_0xfc58x28[_0xf3e1[74]]);return db[_0xf3e1[56]][_0xf3e1[80]](_0xfc58x1b)[_0xf3e1[45]](handleEntityNotFound(_0xfc58x15,null,_0xf3e1[77]))[_0xf3e1[45]](respondWithResult(_0xfc58x15,null,_0xf3e1[77]))[_0xf3e1[75]](handleError(_0xfc58x15,null,_0xf3e1[77]))};exports[_0xf3e1[81]]= function(_0xfc58x28,_0xfc58x15){return db[_0xf3e1[56]][_0xf3e1[81]](_0xfc58x28[_0xf3e1[82]],{})[_0xf3e1[45]](respondWithResult(_0xfc58x15,201,_0xf3e1[81]))[_0xf3e1[75]](handleError(_0xfc58x15,null,_0xf3e1[81]))};exports[_0xf3e1[46]]= function(_0xfc58x28,_0xfc58x15){if(_0xfc58x28[_0xf3e1[82]][_0xf3e1[78]]){delete _0xfc58x28[_0xf3e1[82]][_0xf3e1[78]]};return db[_0xf3e1[56]][_0xf3e1[80]]({where:{id:_0xfc58x28[_0xf3e1[79]][_0xf3e1[78]]}})[_0xf3e1[45]](handleEntityNotFound(_0xfc58x15,null,_0xf3e1[46]))[_0xf3e1[45]](saveUpdates(_0xfc58x28[_0xf3e1[82]],null,_0xf3e1[46]))[_0xf3e1[45]](respondWithResult(_0xfc58x15,null,_0xf3e1[46]))[_0xf3e1[75]](handleError(_0xfc58x15,null,_0xf3e1[46]))};exports[_0xf3e1[48]]= function(_0xfc58x28,_0xfc58x15){return db[_0xf3e1[56]][_0xf3e1[80]]({where:{id:_0xfc58x28[_0xf3e1[79]][_0xf3e1[78]]}})[_0xf3e1[45]](handleEntityNotFound(_0xfc58x15,null,_0xf3e1[48]))[_0xf3e1[45]](removeEntity(_0xfc58x15,null,_0xf3e1[48]))[_0xf3e1[75]](handleError(_0xfc58x15,null,_0xf3e1[48]))}
\ No newline at end of file
+var _0xa95a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xa95a[0];var jsonpatch=require(_0xa95a[1]);var rp=require(_0xa95a[2]);var moment=require(_0xa95a[3]);var BPromise=require(_0xa95a[4]);var util=require(_0xa95a[5]);var path=require(_0xa95a[6]);var sox=require(_0xa95a[7]);var ejs=require(_0xa95a[8]);var fs=require(_0xa95a[9]);var _=require(_0xa95a[10]);var squel=require(_0xa95a[11]);var crypto=require(_0xa95a[12]);var jsforce=require(_0xa95a[13]);var toCsv=require(_0xa95a[14]);var qs=require(_0xa95a[15]);var logger=require(_0xa95a[17])(_0xa95a[16]);var utils=require(_0xa95a[18]);var config=require(_0xa95a[19]);var db=require(_0xa95a[21])[_0xa95a[20]];function respondWithStatusCode(_0x9c56x15,_0x9c56x16,_0x9c56x17){_0x9c56x16= _0x9c56x16|| 204;return function(_0x9c56x18){if(_0x9c56x18){logger[_0xa95a[24]](_0xa95a[22],_0x9c56x17,_0x9c56x16,_0xa95a[23]);logger[_0xa95a[26]](_0xa95a[25],_0x9c56x17,_0x9c56x16,_0xa95a[23]);return _0x9c56x15[_0xa95a[27]](_0x9c56x16)};return _0x9c56x15[_0xa95a[29]](304)[_0xa95a[28]]()}}function respondWithResult(_0x9c56x15,_0x9c56x16,_0x9c56x17){_0x9c56x16= _0x9c56x16|| 200;return function(_0x9c56x18){if(_0x9c56x18){logger[_0xa95a[24]](_0xa95a[22],_0x9c56x17,_0x9c56x16,_0xa95a[30]);logger[_0xa95a[26]](_0xa95a[25],_0x9c56x17,_0x9c56x16,_0xa95a[30],JSON[_0xa95a[31]](_0x9c56x18));return _0x9c56x15[_0xa95a[29]](_0x9c56x16)[_0xa95a[32]](_0x9c56x18)};return _0x9c56x15[_0xa95a[29]](304)[_0xa95a[28]]()}}function respondWithFilteredResult(_0x9c56x15,_0x9c56x1b,_0x9c56x17){return function(_0x9c56x18){if(_0x9c56x18){var _0x9c56x1c=_0x9c56x18[_0xa95a[33]],_0x9c56x1d=_0x9c56x1b[_0xa95a[34]],_0x9c56x1e=_0x9c56x1b[_0xa95a[34]]+ _0x9c56x1b[_0xa95a[35]],_0x9c56x16;if(_0x9c56x1e>= _0x9c56x1c){_0x9c56x1e= _0x9c56x1c;_0x9c56x16= 200}else {_0x9c56x16= 206};_0x9c56x15[_0xa95a[29]](_0x9c56x16);logger[_0xa95a[24]](_0xa95a[22],_0x9c56x17,_0x9c56x16,_0xa95a[36]);logger[_0xa95a[26]](_0xa95a[25],_0x9c56x17,_0x9c56x16,_0xa95a[30],JSON[_0xa95a[31]](_0x9c56x18));return _0x9c56x15[_0xa95a[40]](_0xa95a[37],_0x9c56x1d+ _0xa95a[38]+ _0x9c56x1e+ _0xa95a[39]+ _0x9c56x1c)[_0xa95a[32]](_0x9c56x18)};return null}}function patchUpdates(_0x9c56x20){return function(_0x9c56x18){try{jsonpatch[_0xa95a[41]](_0x9c56x18,_0x9c56x20,true)}catch(err){return BPromise[_0xa95a[42]](err)};return _0x9c56x18[_0xa95a[43]]()}}function saveUpdates(_0x9c56x22,_0x9c56x16,_0x9c56x17){return function(_0x9c56x18){if(_0x9c56x18){return _0x9c56x18[_0xa95a[46]](_0x9c56x22)[_0xa95a[45]](function(_0x9c56x23){logger[_0xa95a[24]](_0xa95a[22],_0x9c56x17,_0x9c56x16,_0xa95a[44]);logger[_0xa95a[26]](_0xa95a[25],_0x9c56x17,_0x9c56x16,_0xa95a[44],JSON[_0xa95a[31]](_0x9c56x18));return _0x9c56x23})};return null}}function removeEntity(_0x9c56x15,_0x9c56x16,_0x9c56x17){return function(_0x9c56x18){if(_0x9c56x18){return _0x9c56x18[_0xa95a[48]]()[_0xa95a[45]](function(){logger[_0xa95a[24]](_0xa95a[22],_0x9c56x17,_0x9c56x16,_0xa95a[47]);logger[_0xa95a[26]](_0xa95a[25],_0x9c56x17,_0x9c56x16,_0xa95a[47],JSON[_0xa95a[31]](_0x9c56x18));_0x9c56x15[_0xa95a[29]](204)[_0xa95a[28]]()})}}}function handleEntityNotFound(_0x9c56x15,_0x9c56x16,_0x9c56x17){return function(_0x9c56x18){if(!_0x9c56x18){logger[_0xa95a[50]](_0xa95a[22],_0x9c56x17,404,_0xa95a[49]);_0x9c56x15[_0xa95a[29]](404)[_0xa95a[28]]();return null};return _0x9c56x18}}function handleError(_0x9c56x15,_0x9c56x16,_0x9c56x17){_0x9c56x16= _0x9c56x16|| 500;return function(_0x9c56x27){logger[_0xa95a[50]](_0xa95a[22],_0x9c56x17,_0x9c56x16,JSON[_0xa95a[31]](_0x9c56x27));delete _0x9c56x27[_0xa95a[51]];_0x9c56x15[_0xa95a[29]](_0x9c56x16)[_0xa95a[52]](_0x9c56x27)}}exports[_0xa95a[53]]= function(_0x9c56x28,_0x9c56x15){var _0x9c56x1b={},_0x9c56x29={};_0x9c56x29[_0xa95a[54]]= _[_0xa95a[57]](db[_0xa95a[56]][_0xa95a[55]]);_0x9c56x29[_0xa95a[58]]= _[_0xa95a[57]](_0x9c56x28[_0xa95a[58]]);_0x9c56x29[_0xa95a[59]]= _[_0xa95a[60]](_0x9c56x29[_0xa95a[54]],_0x9c56x29[_0xa95a[58]]);_0x9c56x1b[_0xa95a[61]]= _[_0xa95a[60]](_0x9c56x29[_0xa95a[54]],qs[_0xa95a[62]](_0x9c56x28[_0xa95a[58]][_0xa95a[62]]));_0x9c56x1b[_0xa95a[61]]= (_0x9c56x1b[_0xa95a[61]][_0xa95a[63]])?_0x9c56x1b[_0xa95a[61]]:_0x9c56x29[_0xa95a[54]];if(!_0x9c56x28[_0xa95a[58]][_0xa95a[65]](_0xa95a[64])){_0x9c56x1b[_0xa95a[35]]= qs[_0xa95a[35]](_0x9c56x28[_0xa95a[58]][_0xa95a[35]]);_0x9c56x1b[_0xa95a[34]]= qs[_0xa95a[34]](_0x9c56x28[_0xa95a[58]][_0xa95a[34]])};_0x9c56x1b[_0xa95a[66]]= qs[_0xa95a[67]](_0x9c56x28[_0xa95a[58]][_0xa95a[67]]);_0x9c56x1b[_0xa95a[68]]= qs[_0xa95a[59]](_[_0xa95a[69]](_0x9c56x28[_0xa95a[58]],_0x9c56x29[_0xa95a[59]]));if(_0x9c56x28[_0xa95a[58]][_0xa95a[70]]){_0x9c56x1b[_0xa95a[68]]= _[_0xa95a[73]](_0x9c56x1b[_0xa95a[68]],{$or:_[_0xa95a[72]](_0x9c56x1b[_0xa95a[61]],function(_0x9c56x2a){var _0x9c56x2b={};_0x9c56x2b[_0x9c56x2a]= {$like:_0xa95a[71]+ _0x9c56x28[_0xa95a[58]][_0xa95a[70]]+ _0xa95a[71]};return _0x9c56x2b})})};_0x9c56x1b= _[_0xa95a[73]]({},_0x9c56x1b,_0x9c56x28[_0xa95a[74]]);return db[_0xa95a[56]][_0xa95a[76]](_0x9c56x1b)[_0xa95a[45]](respondWithFilteredResult(_0x9c56x15,_0x9c56x1b,_0xa95a[53]))[_0xa95a[75]](handleError(_0x9c56x15,null,_0xa95a[53]))};exports[_0xa95a[77]]= function(_0x9c56x28,_0x9c56x15){var _0x9c56x1b={raw:true,where:{id:_0x9c56x28[_0xa95a[79]][_0xa95a[78]]}},_0x9c56x29={};_0x9c56x29[_0xa95a[54]]= _[_0xa95a[57]](db[_0xa95a[56]][_0xa95a[55]]);_0x9c56x29[_0xa95a[58]]= _[_0xa95a[57]](_0x9c56x28[_0xa95a[58]]);_0x9c56x29[_0xa95a[59]]= _[_0xa95a[60]](_0x9c56x29[_0xa95a[54]],_0x9c56x29[_0xa95a[58]]);_0x9c56x1b[_0xa95a[61]]= _[_0xa95a[60]](_0x9c56x29[_0xa95a[54]],qs[_0xa95a[62]](_0x9c56x28[_0xa95a[58]][_0xa95a[62]]));_0x9c56x1b[_0xa95a[61]]= (_0x9c56x1b[_0xa95a[61]][_0xa95a[63]])?_0x9c56x1b[_0xa95a[61]]:_0x9c56x29[_0xa95a[54]];_0x9c56x1b= _[_0xa95a[73]]({},_0x9c56x1b,_0x9c56x28[_0xa95a[74]]);return db[_0xa95a[56]][_0xa95a[80]](_0x9c56x1b)[_0xa95a[45]](handleEntityNotFound(_0x9c56x15,null,_0xa95a[77]))[_0xa95a[45]](respondWithResult(_0x9c56x15,null,_0xa95a[77]))[_0xa95a[75]](handleError(_0x9c56x15,null,_0xa95a[77]))};exports[_0xa95a[81]]= function(_0x9c56x28,_0x9c56x15){return db[_0xa95a[56]][_0xa95a[81]](_0x9c56x28[_0xa95a[82]],{})[_0xa95a[45]](respondWithResult(_0x9c56x15,201,_0xa95a[81]))[_0xa95a[75]](handleError(_0x9c56x15,null,_0xa95a[81]))};exports[_0xa95a[46]]= function(_0x9c56x28,_0x9c56x15){if(_0x9c56x28[_0xa95a[82]][_0xa95a[78]]){delete _0x9c56x28[_0xa95a[82]][_0xa95a[78]]};return db[_0xa95a[56]][_0xa95a[80]]({where:{id:_0x9c56x28[_0xa95a[79]][_0xa95a[78]]}})[_0xa95a[45]](handleEntityNotFound(_0x9c56x15,null,_0xa95a[46]))[_0xa95a[45]](saveUpdates(_0x9c56x28[_0xa95a[82]],null,_0xa95a[46]))[_0xa95a[45]](respondWithResult(_0x9c56x15,null,_0xa95a[46]))[_0xa95a[75]](handleError(_0x9c56x15,null,_0xa95a[46]))};exports[_0xa95a[48]]= function(_0x9c56x28,_0x9c56x15){return db[_0xa95a[56]][_0xa95a[80]]({where:{id:_0x9c56x28[_0xa95a[79]][_0xa95a[78]]}})[_0xa95a[45]](handleEntityNotFound(_0x9c56x15,null,_0xa95a[48]))[_0xa95a[45]](removeEntity(_0x9c56x15,null,_0xa95a[48]))[_0xa95a[75]](handleError(_0x9c56x15,null,_0xa95a[48]))}
\ No newline at end of file
index 948bd4f..6037ea5 100644 (file)
@@ -1 +1 @@
-var _0xffd5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x66\x61\x78\x5F\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xffd5[0];var _=require(_0xffd5[1]);var util=require(_0xffd5[2]);var logger=require(_0xffd5[4])(_0xffd5[3]);var attributes=require(_0xffd5[5]);module[_0xffd5[6]]= function(_0x2860x5,_0x2860x6){return _0x2860x5[_0xffd5[9]](_0xffd5[7],attributes,{tableName:_0xffd5[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x9623=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x66\x61\x78\x5F\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x9623[0];var _=require(_0x9623[1]);var util=require(_0x9623[2]);var logger=require(_0x9623[4])(_0x9623[3]);var attributes=require(_0x9623[5]);module[_0x9623[6]]= function(_0x40fbx5,_0x40fbx6){return _0x40fbx5[_0x9623[9]](_0x9623[7],attributes,{tableName:_0x9623[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index c958e9d..666756d 100644 (file)
@@ -1 +1 @@
-var _0x4ec3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x4ec3[0];var _=require(_0x4ec3[1]);var util=require(_0x4ec3[2]);var moment=require(_0x4ec3[3]);var BPromise=require(_0x4ec3[4]);var db=require(_0x4ec3[6])[_0x4ec3[5]];var utils=require(_0x4ec3[7]);var logger=require(_0x4ec3[9])(_0x4ec3[8]);var jayson=require(_0x4ec3[10]);var client=jayson[_0x4ec3[12]][_0x4ec3[11]]({port:9002});function respondWithRpcPromise(_0x73bdxb,_0x73bdxc,_0x73bdxd){return  new BPromise(function(_0x73bdxe,_0x73bdxf){return client[_0x4ec3[25]](_0x73bdxb,_0x73bdxd)[_0x4ec3[24]](function(_0x73bdx11){logger[_0x4ec3[17]](_0x4ec3[13],_0x73bdxc,_0x4ec3[16]);logger[_0x4ec3[20]](_0x4ec3[18],_0x73bdxc,_0x4ec3[16],JSON[_0x4ec3[19]](_0x73bdx11));if(_0x73bdx11[_0x4ec3[14]]){if(_0x73bdx11[_0x4ec3[14]][_0x4ec3[21]]=== 500){logger[_0x4ec3[14]](_0x4ec3[13],_0x73bdxc,_0x73bdx11[_0x4ec3[14]][_0x4ec3[22]]);return _0x73bdxf(_0x73bdx11[_0x4ec3[14]][_0x4ec3[22]])};logger[_0x4ec3[14]](_0x4ec3[13],_0x73bdxc,_0x73bdx11[_0x4ec3[14]][_0x4ec3[22]]);return _0x73bdxe(_0x73bdx11[_0x4ec3[14]][_0x4ec3[22]])}else {logger[_0x4ec3[17]](_0x4ec3[13],_0x73bdxc,_0x4ec3[16]);_0x73bdxe(_0x73bdx11[_0x4ec3[23]][_0x4ec3[22]])}})[_0x4ec3[15]](function(_0x73bdx10){logger[_0x4ec3[14]](_0x4ec3[13],_0x73bdxc,_0x73bdx10);_0x73bdxf(_0x73bdx10)})})}
\ No newline at end of file
+var _0x1653=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x1653[0];var _=require(_0x1653[1]);var util=require(_0x1653[2]);var moment=require(_0x1653[3]);var BPromise=require(_0x1653[4]);var db=require(_0x1653[6])[_0x1653[5]];var utils=require(_0x1653[7]);var logger=require(_0x1653[9])(_0x1653[8]);var jayson=require(_0x1653[10]);var client=jayson[_0x1653[12]][_0x1653[11]]({port:9002});function respondWithRpcPromise(_0x11ffxb,_0x11ffxc,_0x11ffxd){return  new BPromise(function(_0x11ffxe,_0x11ffxf){return client[_0x1653[25]](_0x11ffxb,_0x11ffxd)[_0x1653[24]](function(_0x11ffx11){logger[_0x1653[17]](_0x1653[13],_0x11ffxc,_0x1653[16]);logger[_0x1653[20]](_0x1653[18],_0x11ffxc,_0x1653[16],JSON[_0x1653[19]](_0x11ffx11));if(_0x11ffx11[_0x1653[14]]){if(_0x11ffx11[_0x1653[14]][_0x1653[21]]=== 500){logger[_0x1653[14]](_0x1653[13],_0x11ffxc,_0x11ffx11[_0x1653[14]][_0x1653[22]]);return _0x11ffxf(_0x11ffx11[_0x1653[14]][_0x1653[22]])};logger[_0x1653[14]](_0x1653[13],_0x11ffxc,_0x11ffx11[_0x1653[14]][_0x1653[22]]);return _0x11ffxe(_0x11ffx11[_0x1653[14]][_0x1653[22]])}else {logger[_0x1653[17]](_0x1653[13],_0x11ffxc,_0x1653[16]);_0x11ffxe(_0x11ffx11[_0x1653[23]][_0x1653[22]])}})[_0x1653[15]](function(_0x11ffx10){logger[_0x1653[14]](_0x1653[13],_0x11ffxc,_0x11ffx10);_0x11ffxf(_0x11ffx10)})})}
\ No newline at end of file
index ba6bce6..31f8adc 100644 (file)
@@ -1 +1 @@
-var _0xa010=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa010[0];var multer=require(_0xa010[1]);var util=require(_0xa010[2]);var path=require(_0xa010[3]);var express=require(_0xa010[4]);var router=express.Router();var auth=require(_0xa010[5]);var config=require(_0xa010[6]);var controller=require(_0xa010[7]);router[_0xa010[11]](_0xa010[8],auth[_0xa010[9]](),controller[_0xa010[10]]);router[_0xa010[11]](_0xa010[12],auth[_0xa010[9]](),controller[_0xa010[13]]);router[_0xa010[15]](_0xa010[8],auth[_0xa010[9]](),controller[_0xa010[14]]);router[_0xa010[17]](_0xa010[12],auth[_0xa010[9]](),controller[_0xa010[16]]);router[_0xa010[19]](_0xa010[12],auth[_0xa010[9]](),controller[_0xa010[18]]);module[_0xa010[20]]= router
\ No newline at end of file
+var _0xc970=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xc970[0];var multer=require(_0xc970[1]);var util=require(_0xc970[2]);var path=require(_0xc970[3]);var express=require(_0xc970[4]);var router=express.Router();var auth=require(_0xc970[5]);var config=require(_0xc970[6]);var controller=require(_0xc970[7]);router[_0xc970[11]](_0xc970[8],auth[_0xc970[9]](),controller[_0xc970[10]]);router[_0xc970[11]](_0xc970[12],auth[_0xc970[9]](),controller[_0xc970[13]]);router[_0xc970[15]](_0xc970[8],auth[_0xc970[9]](),controller[_0xc970[14]]);router[_0xc970[17]](_0xc970[12],auth[_0xc970[9]](),controller[_0xc970[16]]);router[_0xc970[19]](_0xc970[12],auth[_0xc970[9]](),controller[_0xc970[18]]);module[_0xc970[20]]= router
\ No newline at end of file
index 575cea5..e65dbe8 100644 (file)
@@ -1 +1 @@
-var _0x1ef6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x1ef6[0];var Sequelize=require(_0x1ef6[1]);module[_0x1ef6[2]]= {name:{type:Sequelize[_0x1ef6[3]],allowNull:false}}
\ No newline at end of file
+var _0xd0d9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xd0d9[0];var Sequelize=require(_0xd0d9[1]);module[_0xd0d9[2]]= {name:{type:Sequelize[_0xd0d9[3]],allowNull:false}}
\ No newline at end of file
index 621ffe8..b508975 100644 (file)
@@ -1 +1 @@
-var _0x66b4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x66b4[0];var jsonpatch=require(_0x66b4[1]);var rp=require(_0x66b4[2]);var moment=require(_0x66b4[3]);var BPromise=require(_0x66b4[4]);var util=require(_0x66b4[5]);var path=require(_0x66b4[6]);var sox=require(_0x66b4[7]);var ejs=require(_0x66b4[8]);var fs=require(_0x66b4[9]);var _=require(_0x66b4[10]);var squel=require(_0x66b4[11]);var crypto=require(_0x66b4[12]);var jsforce=require(_0x66b4[13]);var toCsv=require(_0x66b4[14]);var qs=require(_0x66b4[15]);var logger=require(_0x66b4[17])(_0x66b4[16]);var utils=require(_0x66b4[18]);var config=require(_0x66b4[19]);var db=require(_0x66b4[21])[_0x66b4[20]];function respondWithStatusCode(_0xd89ex15,_0xd89ex16,_0xd89ex17){_0xd89ex16= _0xd89ex16|| 204;return function(_0xd89ex18){if(_0xd89ex18){logger[_0x66b4[24]](_0x66b4[22],_0xd89ex17,_0xd89ex16,_0x66b4[23]);logger[_0x66b4[26]](_0x66b4[25],_0xd89ex17,_0xd89ex16,_0x66b4[23]);return _0xd89ex15[_0x66b4[27]](_0xd89ex16)};return _0xd89ex15[_0x66b4[29]](304)[_0x66b4[28]]()}}function respondWithResult(_0xd89ex15,_0xd89ex16,_0xd89ex17){_0xd89ex16= _0xd89ex16|| 200;return function(_0xd89ex18){if(_0xd89ex18){logger[_0x66b4[24]](_0x66b4[22],_0xd89ex17,_0xd89ex16,_0x66b4[30]);logger[_0x66b4[26]](_0x66b4[25],_0xd89ex17,_0xd89ex16,_0x66b4[30],JSON[_0x66b4[31]](_0xd89ex18));return _0xd89ex15[_0x66b4[29]](_0xd89ex16)[_0x66b4[32]](_0xd89ex18)};return _0xd89ex15[_0x66b4[29]](304)[_0x66b4[28]]()}}function respondWithFilteredResult(_0xd89ex15,_0xd89ex1b,_0xd89ex17){return function(_0xd89ex18){if(_0xd89ex18){var _0xd89ex1c=_0xd89ex18[_0x66b4[33]],_0xd89ex1d=_0xd89ex1b[_0x66b4[34]],_0xd89ex1e=_0xd89ex1b[_0x66b4[34]]+ _0xd89ex1b[_0x66b4[35]],_0xd89ex16;if(_0xd89ex1e>= _0xd89ex1c){_0xd89ex1e= _0xd89ex1c;_0xd89ex16= 200}else {_0xd89ex16= 206};_0xd89ex15[_0x66b4[29]](_0xd89ex16);logger[_0x66b4[24]](_0x66b4[22],_0xd89ex17,_0xd89ex16,_0x66b4[36]);logger[_0x66b4[26]](_0x66b4[25],_0xd89ex17,_0xd89ex16,_0x66b4[30],JSON[_0x66b4[31]](_0xd89ex18));return _0xd89ex15[_0x66b4[40]](_0x66b4[37],_0xd89ex1d+ _0x66b4[38]+ _0xd89ex1e+ _0x66b4[39]+ _0xd89ex1c)[_0x66b4[32]](_0xd89ex18)};return null}}function patchUpdates(_0xd89ex20){return function(_0xd89ex18){try{jsonpatch[_0x66b4[41]](_0xd89ex18,_0xd89ex20,true)}catch(err){return BPromise[_0x66b4[42]](err)};return _0xd89ex18[_0x66b4[43]]()}}function saveUpdates(_0xd89ex22,_0xd89ex16,_0xd89ex17){return function(_0xd89ex18){if(_0xd89ex18){return _0xd89ex18[_0x66b4[46]](_0xd89ex22)[_0x66b4[45]](function(_0xd89ex23){logger[_0x66b4[24]](_0x66b4[22],_0xd89ex17,_0xd89ex16,_0x66b4[44]);logger[_0x66b4[26]](_0x66b4[25],_0xd89ex17,_0xd89ex16,_0x66b4[44],JSON[_0x66b4[31]](_0xd89ex18));return _0xd89ex23})};return null}}function removeEntity(_0xd89ex15,_0xd89ex16,_0xd89ex17){return function(_0xd89ex18){if(_0xd89ex18){return _0xd89ex18[_0x66b4[48]]()[_0x66b4[45]](function(){logger[_0x66b4[24]](_0x66b4[22],_0xd89ex17,_0xd89ex16,_0x66b4[47]);logger[_0x66b4[26]](_0x66b4[25],_0xd89ex17,_0xd89ex16,_0x66b4[47],JSON[_0x66b4[31]](_0xd89ex18));_0xd89ex15[_0x66b4[29]](204)[_0x66b4[28]]()})}}}function handleEntityNotFound(_0xd89ex15,_0xd89ex16,_0xd89ex17){return function(_0xd89ex18){if(!_0xd89ex18){logger[_0x66b4[50]](_0x66b4[22],_0xd89ex17,404,_0x66b4[49]);_0xd89ex15[_0x66b4[29]](404)[_0x66b4[28]]();return null};return _0xd89ex18}}function handleError(_0xd89ex15,_0xd89ex16,_0xd89ex17){_0xd89ex16= _0xd89ex16|| 500;return function(_0xd89ex27){logger[_0x66b4[50]](_0x66b4[22],_0xd89ex17,_0xd89ex16,JSON[_0x66b4[31]](_0xd89ex27));delete _0xd89ex27[_0x66b4[51]];_0xd89ex15[_0x66b4[29]](_0xd89ex16)[_0x66b4[52]](_0xd89ex27)}}exports[_0x66b4[53]]= function(_0xd89ex28,_0xd89ex15){var _0xd89ex1b={raw:true,where:{id:_0xd89ex28[_0x66b4[55]][_0x66b4[54]]}},_0xd89ex29={};_0xd89ex29[_0x66b4[56]]= _[_0x66b4[59]](db[_0x66b4[58]][_0x66b4[57]]);_0xd89ex29[_0x66b4[60]]= _[_0x66b4[59]](_0xd89ex28[_0x66b4[60]]);_0xd89ex29[_0x66b4[61]]= _[_0x66b4[62]](_0xd89ex29[_0x66b4[56]],_0xd89ex29[_0x66b4[60]]);_0xd89ex1b[_0x66b4[63]]= _[_0x66b4[62]](_0xd89ex29[_0x66b4[56]],qs[_0x66b4[64]](_0xd89ex28[_0x66b4[60]][_0x66b4[64]]));_0xd89ex1b[_0x66b4[63]]= (_0xd89ex1b[_0x66b4[63]][_0x66b4[65]])?_0xd89ex1b[_0x66b4[63]]:_0xd89ex29[_0x66b4[56]];_0xd89ex1b= _[_0x66b4[67]]({},_0xd89ex1b,_0xd89ex28[_0x66b4[66]]);return db[_0x66b4[58]][_0x66b4[69]](_0xd89ex1b)[_0x66b4[45]](handleEntityNotFound(_0xd89ex15,null,_0x66b4[53]))[_0x66b4[45]](respondWithResult(_0xd89ex15,null,_0x66b4[53]))[_0x66b4[68]](handleError(_0xd89ex15,null,_0x66b4[53]))};exports[_0x66b4[70]]= function(_0xd89ex28,_0xd89ex15){return db[_0x66b4[58]][_0x66b4[70]](_0xd89ex28[_0x66b4[71]],{})[_0x66b4[45]](respondWithResult(_0xd89ex15,201,_0x66b4[70]))[_0x66b4[68]](handleError(_0xd89ex15,null,_0x66b4[70]))};exports[_0x66b4[46]]= function(_0xd89ex28,_0xd89ex15){if(_0xd89ex28[_0x66b4[71]][_0x66b4[54]]){delete _0xd89ex28[_0x66b4[71]][_0x66b4[54]]};return db[_0x66b4[58]][_0x66b4[69]]({where:{id:_0xd89ex28[_0x66b4[55]][_0x66b4[54]]}})[_0x66b4[45]](handleEntityNotFound(_0xd89ex15,null,_0x66b4[46]))[_0x66b4[45]](saveUpdates(_0xd89ex28[_0x66b4[71]],null,_0x66b4[46]))[_0x66b4[45]](respondWithResult(_0xd89ex15,null,_0x66b4[46]))[_0x66b4[68]](handleError(_0xd89ex15,null,_0x66b4[46]))};exports[_0x66b4[48]]= function(_0xd89ex28,_0xd89ex15){return db[_0x66b4[58]][_0x66b4[69]]({where:{id:_0xd89ex28[_0x66b4[55]][_0x66b4[54]]}})[_0x66b4[45]](handleEntityNotFound(_0xd89ex15,null,_0x66b4[48]))[_0x66b4[45]](removeEntity(_0xd89ex15,null,_0x66b4[48]))[_0x66b4[68]](handleError(_0xd89ex15,null,_0x66b4[48]))}
\ No newline at end of file
+var _0x18fc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x18fc[0];var jsonpatch=require(_0x18fc[1]);var rp=require(_0x18fc[2]);var moment=require(_0x18fc[3]);var BPromise=require(_0x18fc[4]);var util=require(_0x18fc[5]);var path=require(_0x18fc[6]);var sox=require(_0x18fc[7]);var ejs=require(_0x18fc[8]);var fs=require(_0x18fc[9]);var _=require(_0x18fc[10]);var squel=require(_0x18fc[11]);var crypto=require(_0x18fc[12]);var jsforce=require(_0x18fc[13]);var toCsv=require(_0x18fc[14]);var qs=require(_0x18fc[15]);var logger=require(_0x18fc[17])(_0x18fc[16]);var utils=require(_0x18fc[18]);var config=require(_0x18fc[19]);var db=require(_0x18fc[21])[_0x18fc[20]];function respondWithStatusCode(_0x18e8x15,_0x18e8x16,_0x18e8x17){_0x18e8x16= _0x18e8x16|| 204;return function(_0x18e8x18){if(_0x18e8x18){logger[_0x18fc[24]](_0x18fc[22],_0x18e8x17,_0x18e8x16,_0x18fc[23]);logger[_0x18fc[26]](_0x18fc[25],_0x18e8x17,_0x18e8x16,_0x18fc[23]);return _0x18e8x15[_0x18fc[27]](_0x18e8x16)};return _0x18e8x15[_0x18fc[29]](304)[_0x18fc[28]]()}}function respondWithResult(_0x18e8x15,_0x18e8x16,_0x18e8x17){_0x18e8x16= _0x18e8x16|| 200;return function(_0x18e8x18){if(_0x18e8x18){logger[_0x18fc[24]](_0x18fc[22],_0x18e8x17,_0x18e8x16,_0x18fc[30]);logger[_0x18fc[26]](_0x18fc[25],_0x18e8x17,_0x18e8x16,_0x18fc[30],JSON[_0x18fc[31]](_0x18e8x18));return _0x18e8x15[_0x18fc[29]](_0x18e8x16)[_0x18fc[32]](_0x18e8x18)};return _0x18e8x15[_0x18fc[29]](304)[_0x18fc[28]]()}}function respondWithFilteredResult(_0x18e8x15,_0x18e8x1b,_0x18e8x17){return function(_0x18e8x18){if(_0x18e8x18){var _0x18e8x1c=_0x18e8x18[_0x18fc[33]],_0x18e8x1d=_0x18e8x1b[_0x18fc[34]],_0x18e8x1e=_0x18e8x1b[_0x18fc[34]]+ _0x18e8x1b[_0x18fc[35]],_0x18e8x16;if(_0x18e8x1e>= _0x18e8x1c){_0x18e8x1e= _0x18e8x1c;_0x18e8x16= 200}else {_0x18e8x16= 206};_0x18e8x15[_0x18fc[29]](_0x18e8x16);logger[_0x18fc[24]](_0x18fc[22],_0x18e8x17,_0x18e8x16,_0x18fc[36]);logger[_0x18fc[26]](_0x18fc[25],_0x18e8x17,_0x18e8x16,_0x18fc[30],JSON[_0x18fc[31]](_0x18e8x18));return _0x18e8x15[_0x18fc[40]](_0x18fc[37],_0x18e8x1d+ _0x18fc[38]+ _0x18e8x1e+ _0x18fc[39]+ _0x18e8x1c)[_0x18fc[32]](_0x18e8x18)};return null}}function patchUpdates(_0x18e8x20){return function(_0x18e8x18){try{jsonpatch[_0x18fc[41]](_0x18e8x18,_0x18e8x20,true)}catch(err){return BPromise[_0x18fc[42]](err)};return _0x18e8x18[_0x18fc[43]]()}}function saveUpdates(_0x18e8x22,_0x18e8x16,_0x18e8x17){return function(_0x18e8x18){if(_0x18e8x18){return _0x18e8x18[_0x18fc[46]](_0x18e8x22)[_0x18fc[45]](function(_0x18e8x23){logger[_0x18fc[24]](_0x18fc[22],_0x18e8x17,_0x18e8x16,_0x18fc[44]);logger[_0x18fc[26]](_0x18fc[25],_0x18e8x17,_0x18e8x16,_0x18fc[44],JSON[_0x18fc[31]](_0x18e8x18));return _0x18e8x23})};return null}}function removeEntity(_0x18e8x15,_0x18e8x16,_0x18e8x17){return function(_0x18e8x18){if(_0x18e8x18){return _0x18e8x18[_0x18fc[48]]()[_0x18fc[45]](function(){logger[_0x18fc[24]](_0x18fc[22],_0x18e8x17,_0x18e8x16,_0x18fc[47]);logger[_0x18fc[26]](_0x18fc[25],_0x18e8x17,_0x18e8x16,_0x18fc[47],JSON[_0x18fc[31]](_0x18e8x18));_0x18e8x15[_0x18fc[29]](204)[_0x18fc[28]]()})}}}function handleEntityNotFound(_0x18e8x15,_0x18e8x16,_0x18e8x17){return function(_0x18e8x18){if(!_0x18e8x18){logger[_0x18fc[50]](_0x18fc[22],_0x18e8x17,404,_0x18fc[49]);_0x18e8x15[_0x18fc[29]](404)[_0x18fc[28]]();return null};return _0x18e8x18}}function handleError(_0x18e8x15,_0x18e8x16,_0x18e8x17){_0x18e8x16= _0x18e8x16|| 500;return function(_0x18e8x27){logger[_0x18fc[50]](_0x18fc[22],_0x18e8x17,_0x18e8x16,JSON[_0x18fc[31]](_0x18e8x27));delete _0x18e8x27[_0x18fc[51]];_0x18e8x15[_0x18fc[29]](_0x18e8x16)[_0x18fc[52]](_0x18e8x27)}}exports[_0x18fc[53]]= function(_0x18e8x28,_0x18e8x15){var _0x18e8x1b={raw:true,where:{id:_0x18e8x28[_0x18fc[55]][_0x18fc[54]]}},_0x18e8x29={};_0x18e8x29[_0x18fc[56]]= _[_0x18fc[59]](db[_0x18fc[58]][_0x18fc[57]]);_0x18e8x29[_0x18fc[60]]= _[_0x18fc[59]](_0x18e8x28[_0x18fc[60]]);_0x18e8x29[_0x18fc[61]]= _[_0x18fc[62]](_0x18e8x29[_0x18fc[56]],_0x18e8x29[_0x18fc[60]]);_0x18e8x1b[_0x18fc[63]]= _[_0x18fc[62]](_0x18e8x29[_0x18fc[56]],qs[_0x18fc[64]](_0x18e8x28[_0x18fc[60]][_0x18fc[64]]));_0x18e8x1b[_0x18fc[63]]= (_0x18e8x1b[_0x18fc[63]][_0x18fc[65]])?_0x18e8x1b[_0x18fc[63]]:_0x18e8x29[_0x18fc[56]];_0x18e8x1b= _[_0x18fc[67]]({},_0x18e8x1b,_0x18e8x28[_0x18fc[66]]);return db[_0x18fc[58]][_0x18fc[69]](_0x18e8x1b)[_0x18fc[45]](handleEntityNotFound(_0x18e8x15,null,_0x18fc[53]))[_0x18fc[45]](respondWithResult(_0x18e8x15,null,_0x18fc[53]))[_0x18fc[68]](handleError(_0x18e8x15,null,_0x18fc[53]))};exports[_0x18fc[70]]= function(_0x18e8x28,_0x18e8x15){return db[_0x18fc[58]][_0x18fc[70]](_0x18e8x28[_0x18fc[71]],{})[_0x18fc[45]](respondWithResult(_0x18e8x15,201,_0x18fc[70]))[_0x18fc[68]](handleError(_0x18e8x15,null,_0x18fc[70]))};exports[_0x18fc[46]]= function(_0x18e8x28,_0x18e8x15){if(_0x18e8x28[_0x18fc[71]][_0x18fc[54]]){delete _0x18e8x28[_0x18fc[71]][_0x18fc[54]]};return db[_0x18fc[58]][_0x18fc[69]]({where:{id:_0x18e8x28[_0x18fc[55]][_0x18fc[54]]}})[_0x18fc[45]](handleEntityNotFound(_0x18e8x15,null,_0x18fc[46]))[_0x18fc[45]](saveUpdates(_0x18e8x28[_0x18fc[71]],null,_0x18fc[46]))[_0x18fc[45]](respondWithResult(_0x18e8x15,null,_0x18fc[46]))[_0x18fc[68]](handleError(_0x18e8x15,null,_0x18fc[46]))};exports[_0x18fc[48]]= function(_0x18e8x28,_0x18e8x15){return db[_0x18fc[58]][_0x18fc[69]]({where:{id:_0x18e8x28[_0x18fc[55]][_0x18fc[54]]}})[_0x18fc[45]](handleEntityNotFound(_0x18e8x15,null,_0x18fc[48]))[_0x18fc[45]](removeEntity(_0x18e8x15,null,_0x18fc[48]))[_0x18fc[68]](handleError(_0x18e8x15,null,_0x18fc[48]))}
\ No newline at end of file
index 00002c5..4eb38f5 100644 (file)
@@ -1 +1 @@
-var _0xacd9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x66\x61\x78\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xacd9[0];var _=require(_0xacd9[1]);var util=require(_0xacd9[2]);var logger=require(_0xacd9[4])(_0xacd9[3]);var attributes=require(_0xacd9[5]);module[_0xacd9[6]]= function(_0x4b84x5,_0x4b84x6){return _0x4b84x5[_0xacd9[9]](_0xacd9[7],attributes,{tableName:_0xacd9[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x8ac4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x66\x61\x78\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x8ac4[0];var _=require(_0x8ac4[1]);var util=require(_0x8ac4[2]);var logger=require(_0x8ac4[4])(_0x8ac4[3]);var attributes=require(_0x8ac4[5]);module[_0x8ac4[6]]= function(_0xd5efx5,_0xd5efx6){return _0xd5efx5[_0x8ac4[9]](_0x8ac4[7],attributes,{tableName:_0x8ac4[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index df8616c..234865e 100644 (file)
@@ -1 +1 @@
-var _0x3962=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x3962[0];var _=require(_0x3962[1]);var util=require(_0x3962[2]);var moment=require(_0x3962[3]);var BPromise=require(_0x3962[4]);var db=require(_0x3962[6])[_0x3962[5]];var utils=require(_0x3962[7]);var logger=require(_0x3962[9])(_0x3962[8]);var jayson=require(_0x3962[10]);var client=jayson[_0x3962[12]][_0x3962[11]]({port:9002});function respondWithRpcPromise(_0xd7dcxb,_0xd7dcxc,_0xd7dcxd){return  new BPromise(function(_0xd7dcxe,_0xd7dcxf){return client[_0x3962[25]](_0xd7dcxb,_0xd7dcxd)[_0x3962[24]](function(_0xd7dcx11){logger[_0x3962[17]](_0x3962[13],_0xd7dcxc,_0x3962[16]);logger[_0x3962[20]](_0x3962[18],_0xd7dcxc,_0x3962[16],JSON[_0x3962[19]](_0xd7dcx11));if(_0xd7dcx11[_0x3962[14]]){if(_0xd7dcx11[_0x3962[14]][_0x3962[21]]=== 500){logger[_0x3962[14]](_0x3962[13],_0xd7dcxc,_0xd7dcx11[_0x3962[14]][_0x3962[22]]);return _0xd7dcxf(_0xd7dcx11[_0x3962[14]][_0x3962[22]])};logger[_0x3962[14]](_0x3962[13],_0xd7dcxc,_0xd7dcx11[_0x3962[14]][_0x3962[22]]);return _0xd7dcxe(_0xd7dcx11[_0x3962[14]][_0x3962[22]])}else {logger[_0x3962[17]](_0x3962[13],_0xd7dcxc,_0x3962[16]);_0xd7dcxe(_0xd7dcx11[_0x3962[23]][_0x3962[22]])}})[_0x3962[15]](function(_0xd7dcx10){logger[_0x3962[14]](_0x3962[13],_0xd7dcxc,_0xd7dcx10);_0xd7dcxf(_0xd7dcx10)})})}
\ No newline at end of file
+var _0xd660=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd660[0];var _=require(_0xd660[1]);var util=require(_0xd660[2]);var moment=require(_0xd660[3]);var BPromise=require(_0xd660[4]);var db=require(_0xd660[6])[_0xd660[5]];var utils=require(_0xd660[7]);var logger=require(_0xd660[9])(_0xd660[8]);var jayson=require(_0xd660[10]);var client=jayson[_0xd660[12]][_0xd660[11]]({port:9002});function respondWithRpcPromise(_0x6e89xb,_0x6e89xc,_0x6e89xd){return  new BPromise(function(_0x6e89xe,_0x6e89xf){return client[_0xd660[25]](_0x6e89xb,_0x6e89xd)[_0xd660[24]](function(_0x6e89x11){logger[_0xd660[17]](_0xd660[13],_0x6e89xc,_0xd660[16]);logger[_0xd660[20]](_0xd660[18],_0x6e89xc,_0xd660[16],JSON[_0xd660[19]](_0x6e89x11));if(_0x6e89x11[_0xd660[14]]){if(_0x6e89x11[_0xd660[14]][_0xd660[21]]=== 500){logger[_0xd660[14]](_0xd660[13],_0x6e89xc,_0x6e89x11[_0xd660[14]][_0xd660[22]]);return _0x6e89xf(_0x6e89x11[_0xd660[14]][_0xd660[22]])};logger[_0xd660[14]](_0xd660[13],_0x6e89xc,_0x6e89x11[_0xd660[14]][_0xd660[22]]);return _0x6e89xe(_0x6e89x11[_0xd660[14]][_0xd660[22]])}else {logger[_0xd660[17]](_0xd660[13],_0x6e89xc,_0xd660[16]);_0x6e89xe(_0x6e89x11[_0xd660[23]][_0xd660[22]])}})[_0xd660[15]](function(_0x6e89x10){logger[_0xd660[14]](_0xd660[13],_0x6e89xc,_0x6e89x10);_0x6e89xf(_0x6e89x10)})})}
\ No newline at end of file
index 743f820..4a71591 100644 (file)
@@ -1 +1 @@
-var _0x37cf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x37cf[0];var multer=require(_0x37cf[1]);var util=require(_0x37cf[2]);var path=require(_0x37cf[3]);var express=require(_0x37cf[4]);var router=express.Router();var auth=require(_0x37cf[5]);var config=require(_0x37cf[6]);var controller=require(_0x37cf[7]);router[_0x37cf[11]](_0x37cf[8],auth[_0x37cf[9]](),controller[_0x37cf[10]]);router[_0x37cf[14]](_0x37cf[12],auth[_0x37cf[9]](),controller[_0x37cf[13]]);router[_0x37cf[16]](_0x37cf[8],auth[_0x37cf[9]](),controller[_0x37cf[15]]);router[_0x37cf[18]](_0x37cf[8],auth[_0x37cf[9]](),controller[_0x37cf[17]]);module[_0x37cf[19]]= router
\ No newline at end of file
+var _0x2bd8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2bd8[0];var multer=require(_0x2bd8[1]);var util=require(_0x2bd8[2]);var path=require(_0x2bd8[3]);var express=require(_0x2bd8[4]);var router=express.Router();var auth=require(_0x2bd8[5]);var config=require(_0x2bd8[6]);var controller=require(_0x2bd8[7]);router[_0x2bd8[11]](_0x2bd8[8],auth[_0x2bd8[9]](),controller[_0x2bd8[10]]);router[_0x2bd8[14]](_0x2bd8[12],auth[_0x2bd8[9]](),controller[_0x2bd8[13]]);router[_0x2bd8[16]](_0x2bd8[8],auth[_0x2bd8[9]](),controller[_0x2bd8[15]]);router[_0x2bd8[18]](_0x2bd8[8],auth[_0x2bd8[9]](),controller[_0x2bd8[17]]);module[_0x2bd8[19]]= router
\ No newline at end of file
index e8d6ef2..cf2a628 100644 (file)
@@ -1 +1 @@
-var _0xe3fc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x4E\x45\x57","\x4F\x50\x45\x4E","\x50\x45\x4E\x44\x49\x4E\x47","\x43\x4C\x4F\x53\x45\x44","\x73\x74\x61\x74\x75\x73","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x72\x72\x69\x76\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x6C\x6F\x73\x65\x64\x41\x74","\x53\x45\x4E\x54","\x53\x45\x4E\x44\x49\x4E\x47","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x44\x41\x54\x45","\x54\x45\x58\x54","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xe3fc[0];var Sequelize=require(_0xe3fc[1]);var moment=require(_0xe3fc[2]);module[_0xe3fc[3]]= {contact:{type:Sequelize[_0xe3fc[4]]},account:{type:Sequelize[_0xe3fc[4]]},faxIn:{type:Sequelize[_0xe3fc[5]],defaultValue:0},faxOut:{type:Sequelize[_0xe3fc[5]],defaultValue:0},status:{type:Sequelize.ENUM(_0xe3fc[6],_0xe3fc[7],_0xe3fc[8],_0xe3fc[9]),defaultValue:_0xe3fc[6],set:function(_0xf19dx3){this[_0xe3fc[11]](_0xe3fc[10],_0xf19dx3);switch(_0xf19dx3){case _0xe3fc[6]:this[_0xe3fc[11]](_0xe3fc[12],moment()[_0xe3fc[14]](_0xe3fc[13]));break;case _0xe3fc[9]:this[_0xe3fc[11]](_0xe3fc[15],moment()[_0xe3fc[14]](_0xe3fc[13]));break;default:}}},lastEvent:{type:Sequelize.ENUM(_0xe3fc[16],_0xe3fc[17],_0xe3fc[18],_0xe3fc[19],_0xe3fc[20])},lastEventAt:{type:Sequelize[_0xe3fc[21]]},tags:{type:Sequelize[_0xe3fc[22]],get:function(){var _0xf19dx4;if(this[_0xe3fc[24]](_0xe3fc[23])){_0xf19dx4= this[_0xe3fc[24]](_0xe3fc[23])[_0xe3fc[26]](_0xe3fc[25]);_0xf19dx4[_0xe3fc[27]]()}else {_0xf19dx4= []};return _0xf19dx4},set:function(_0xf19dx5){this[_0xe3fc[11]](_0xe3fc[23],_0xf19dx5&& _0xf19dx5[_0xe3fc[28]]?_0xf19dx5[_0xe3fc[29]](_0xe3fc[25])+ _0xe3fc[25]:null)}},waiting:{type:Sequelize[_0xe3fc[30]],defaultValue:false},disposition:{type:Sequelize[_0xe3fc[4]]},openReason:{type:Sequelize[_0xe3fc[4]]},arrivedAt:{type:Sequelize[_0xe3fc[21]]},closedAt:{type:Sequelize[_0xe3fc[21]]}}
\ No newline at end of file
+var _0xc27b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x4E\x45\x57","\x4F\x50\x45\x4E","\x50\x45\x4E\x44\x49\x4E\x47","\x43\x4C\x4F\x53\x45\x44","\x73\x74\x61\x74\x75\x73","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x72\x72\x69\x76\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x6C\x6F\x73\x65\x64\x41\x74","\x53\x45\x4E\x54","\x53\x45\x4E\x44\x49\x4E\x47","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x44\x41\x54\x45","\x54\x45\x58\x54","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xc27b[0];var Sequelize=require(_0xc27b[1]);var moment=require(_0xc27b[2]);module[_0xc27b[3]]= {contact:{type:Sequelize[_0xc27b[4]]},account:{type:Sequelize[_0xc27b[4]]},faxIn:{type:Sequelize[_0xc27b[5]],defaultValue:0},faxOut:{type:Sequelize[_0xc27b[5]],defaultValue:0},status:{type:Sequelize.ENUM(_0xc27b[6],_0xc27b[7],_0xc27b[8],_0xc27b[9]),defaultValue:_0xc27b[6],set:function(_0x864fx3){this[_0xc27b[11]](_0xc27b[10],_0x864fx3);switch(_0x864fx3){case _0xc27b[6]:this[_0xc27b[11]](_0xc27b[12],moment()[_0xc27b[14]](_0xc27b[13]));break;case _0xc27b[9]:this[_0xc27b[11]](_0xc27b[15],moment()[_0xc27b[14]](_0xc27b[13]));break;default:}}},lastEvent:{type:Sequelize.ENUM(_0xc27b[16],_0xc27b[17],_0xc27b[18],_0xc27b[19],_0xc27b[20])},lastEventAt:{type:Sequelize[_0xc27b[21]]},tags:{type:Sequelize[_0xc27b[22]],get:function(){var _0x864fx4;if(this[_0xc27b[24]](_0xc27b[23])){_0x864fx4= this[_0xc27b[24]](_0xc27b[23])[_0xc27b[26]](_0xc27b[25]);_0x864fx4[_0xc27b[27]]()}else {_0x864fx4= []};return _0x864fx4},set:function(_0x864fx5){this[_0xc27b[11]](_0xc27b[23],_0x864fx5&& _0x864fx5[_0xc27b[28]]?_0x864fx5[_0xc27b[29]](_0xc27b[25])+ _0xc27b[25]:null)}},waiting:{type:Sequelize[_0xc27b[30]],defaultValue:false},disposition:{type:Sequelize[_0xc27b[4]]},openReason:{type:Sequelize[_0xc27b[4]]},arrivedAt:{type:Sequelize[_0xc27b[21]]},closedAt:{type:Sequelize[_0xc27b[21]]}}
\ No newline at end of file
index 68d2a00..0b280de 100644 (file)
@@ -1 +1 @@
-var _0xbc44=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xbc44[0];var jsonpatch=require(_0xbc44[1]);var rp=require(_0xbc44[2]);var moment=require(_0xbc44[3]);var BPromise=require(_0xbc44[4]);var util=require(_0xbc44[5]);var path=require(_0xbc44[6]);var sox=require(_0xbc44[7]);var ejs=require(_0xbc44[8]);var fs=require(_0xbc44[9]);var _=require(_0xbc44[10]);var squel=require(_0xbc44[11]);var crypto=require(_0xbc44[12]);var jsforce=require(_0xbc44[13]);var toCsv=require(_0xbc44[14]);var qs=require(_0xbc44[15]);var logger=require(_0xbc44[17])(_0xbc44[16]);var utils=require(_0xbc44[18]);var config=require(_0xbc44[19]);var db=require(_0xbc44[21])[_0xbc44[20]];function respondWithStatusCode(_0x4a03x15,_0x4a03x16,_0x4a03x17){_0x4a03x16= _0x4a03x16|| 204;return function(_0x4a03x18){if(_0x4a03x18){logger[_0xbc44[24]](_0xbc44[22],_0x4a03x17,_0x4a03x16,_0xbc44[23]);logger[_0xbc44[26]](_0xbc44[25],_0x4a03x17,_0x4a03x16,_0xbc44[23]);return _0x4a03x15[_0xbc44[27]](_0x4a03x16)};return _0x4a03x15[_0xbc44[29]](304)[_0xbc44[28]]()}}function respondWithResult(_0x4a03x15,_0x4a03x16,_0x4a03x17){_0x4a03x16= _0x4a03x16|| 200;return function(_0x4a03x18){if(_0x4a03x18){logger[_0xbc44[24]](_0xbc44[22],_0x4a03x17,_0x4a03x16,_0xbc44[30]);logger[_0xbc44[26]](_0xbc44[25],_0x4a03x17,_0x4a03x16,_0xbc44[30],JSON[_0xbc44[31]](_0x4a03x18));return _0x4a03x15[_0xbc44[29]](_0x4a03x16)[_0xbc44[32]](_0x4a03x18)};return _0x4a03x15[_0xbc44[29]](304)[_0xbc44[28]]()}}function respondWithFilteredResult(_0x4a03x15,_0x4a03x1b,_0x4a03x17){return function(_0x4a03x18){if(_0x4a03x18){var _0x4a03x1c=_0x4a03x18[_0xbc44[33]],_0x4a03x1d=_0x4a03x1b[_0xbc44[34]],_0x4a03x1e=_0x4a03x1b[_0xbc44[34]]+ _0x4a03x1b[_0xbc44[35]],_0x4a03x16;if(_0x4a03x1e>= _0x4a03x1c){_0x4a03x1e= _0x4a03x1c;_0x4a03x16= 200}else {_0x4a03x16= 206};_0x4a03x15[_0xbc44[29]](_0x4a03x16);logger[_0xbc44[24]](_0xbc44[22],_0x4a03x17,_0x4a03x16,_0xbc44[36]);logger[_0xbc44[26]](_0xbc44[25],_0x4a03x17,_0x4a03x16,_0xbc44[30],JSON[_0xbc44[31]](_0x4a03x18));return _0x4a03x15[_0xbc44[40]](_0xbc44[37],_0x4a03x1d+ _0xbc44[38]+ _0x4a03x1e+ _0xbc44[39]+ _0x4a03x1c)[_0xbc44[32]](_0x4a03x18)};return null}}function patchUpdates(_0x4a03x20){return function(_0x4a03x18){try{jsonpatch[_0xbc44[41]](_0x4a03x18,_0x4a03x20,true)}catch(err){return BPromise[_0xbc44[42]](err)};return _0x4a03x18[_0xbc44[43]]()}}function saveUpdates(_0x4a03x22,_0x4a03x16,_0x4a03x17){return function(_0x4a03x18){if(_0x4a03x18){return _0x4a03x18[_0xbc44[46]](_0x4a03x22)[_0xbc44[45]](function(_0x4a03x23){logger[_0xbc44[24]](_0xbc44[22],_0x4a03x17,_0x4a03x16,_0xbc44[44]);logger[_0xbc44[26]](_0xbc44[25],_0x4a03x17,_0x4a03x16,_0xbc44[44],JSON[_0xbc44[31]](_0x4a03x18));return _0x4a03x23})};return null}}function removeEntity(_0x4a03x15,_0x4a03x16,_0x4a03x17){return function(_0x4a03x18){if(_0x4a03x18){return _0x4a03x18[_0xbc44[48]]()[_0xbc44[45]](function(){logger[_0xbc44[24]](_0xbc44[22],_0x4a03x17,_0x4a03x16,_0xbc44[47]);logger[_0xbc44[26]](_0xbc44[25],_0x4a03x17,_0x4a03x16,_0xbc44[47],JSON[_0xbc44[31]](_0x4a03x18));_0x4a03x15[_0xbc44[29]](204)[_0xbc44[28]]()})}}}function handleEntityNotFound(_0x4a03x15,_0x4a03x16,_0x4a03x17){return function(_0x4a03x18){if(!_0x4a03x18){logger[_0xbc44[50]](_0xbc44[22],_0x4a03x17,404,_0xbc44[49]);_0x4a03x15[_0xbc44[29]](404)[_0xbc44[28]]();return null};return _0x4a03x18}}function handleError(_0x4a03x15,_0x4a03x16,_0x4a03x17){_0x4a03x16= _0x4a03x16|| 500;return function(_0x4a03x27){logger[_0xbc44[50]](_0xbc44[22],_0x4a03x17,_0x4a03x16,JSON[_0xbc44[31]](_0x4a03x27));delete _0x4a03x27[_0xbc44[51]];_0x4a03x15[_0xbc44[29]](_0x4a03x16)[_0xbc44[52]](_0x4a03x27)}}exports[_0xbc44[53]]= function(_0x4a03x28,_0x4a03x15){var _0x4a03x1b={},_0x4a03x29={};_0x4a03x29[_0xbc44[54]]= _[_0xbc44[57]](db[_0xbc44[56]][_0xbc44[55]]);_0x4a03x29[_0xbc44[58]]= _[_0xbc44[57]](_0x4a03x28[_0xbc44[58]]);_0x4a03x29[_0xbc44[59]]= _[_0xbc44[60]](_0x4a03x29[_0xbc44[54]],_0x4a03x29[_0xbc44[58]]);_0x4a03x1b[_0xbc44[61]]= _[_0xbc44[60]](_0x4a03x29[_0xbc44[54]],qs[_0xbc44[62]](_0x4a03x28[_0xbc44[58]][_0xbc44[62]]));_0x4a03x1b[_0xbc44[61]]= (_0x4a03x1b[_0xbc44[61]][_0xbc44[63]])?_0x4a03x1b[_0xbc44[61]]:_0x4a03x29[_0xbc44[54]];if(!_0x4a03x28[_0xbc44[58]][_0xbc44[65]](_0xbc44[64])){_0x4a03x1b[_0xbc44[35]]= qs[_0xbc44[35]](_0x4a03x28[_0xbc44[58]][_0xbc44[35]]);_0x4a03x1b[_0xbc44[34]]= qs[_0xbc44[34]](_0x4a03x28[_0xbc44[58]][_0xbc44[34]])};_0x4a03x1b[_0xbc44[66]]= qs[_0xbc44[67]](_0x4a03x28[_0xbc44[58]][_0xbc44[67]]);_0x4a03x1b[_0xbc44[68]]= qs[_0xbc44[59]](_[_0xbc44[69]](_0x4a03x28[_0xbc44[58]],_0x4a03x29[_0xbc44[59]]));if(_0x4a03x28[_0xbc44[58]][_0xbc44[70]]){_0x4a03x1b[_0xbc44[68]]= _[_0xbc44[73]](_0x4a03x1b[_0xbc44[68]],{$or:_[_0xbc44[72]](_0x4a03x1b[_0xbc44[61]],function(_0x4a03x2a){var _0x4a03x2b={};_0x4a03x2b[_0x4a03x2a]= {$like:_0xbc44[71]+ _0x4a03x28[_0xbc44[58]][_0xbc44[70]]+ _0xbc44[71]};return _0x4a03x2b})})};_0x4a03x1b= _[_0xbc44[73]]({},_0x4a03x1b,_0x4a03x28[_0xbc44[74]]);return db[_0xbc44[56]][_0xbc44[76]](_0x4a03x1b)[_0xbc44[45]](respondWithFilteredResult(_0x4a03x15,_0x4a03x1b,_0xbc44[53]))[_0xbc44[75]](handleError(_0x4a03x15,null,_0xbc44[53]))};exports[_0xbc44[77]]= function(_0x4a03x28,_0x4a03x15){var _0x4a03x1b={raw:false,where:{id:_0x4a03x28[_0xbc44[79]][_0xbc44[78]]}},_0x4a03x29={};_0x4a03x29[_0xbc44[54]]= _[_0xbc44[57]](db[_0xbc44[56]][_0xbc44[55]]);_0x4a03x29[_0xbc44[58]]= _[_0xbc44[57]](_0x4a03x28[_0xbc44[58]]);_0x4a03x29[_0xbc44[59]]= _[_0xbc44[60]](_0x4a03x29[_0xbc44[54]],_0x4a03x29[_0xbc44[58]]);_0x4a03x1b[_0xbc44[61]]= _[_0xbc44[60]](_0x4a03x29[_0xbc44[54]],qs[_0xbc44[62]](_0x4a03x28[_0xbc44[58]][_0xbc44[62]]));_0x4a03x1b[_0xbc44[61]]= (_0x4a03x1b[_0xbc44[61]][_0xbc44[63]])?_0x4a03x1b[_0xbc44[61]]:_0x4a03x29[_0xbc44[54]];_0x4a03x1b= _[_0xbc44[73]]({},_0x4a03x1b,_0x4a03x28[_0xbc44[74]]);return db[_0xbc44[56]][_0xbc44[80]](_0x4a03x1b)[_0xbc44[45]](handleEntityNotFound(_0x4a03x15,null,_0xbc44[77]))[_0xbc44[45]](respondWithResult(_0x4a03x15,null,_0xbc44[77]))[_0xbc44[75]](handleError(_0x4a03x15,null,_0xbc44[77]))};exports[_0xbc44[81]]= function(_0x4a03x28,_0x4a03x15){return db[_0xbc44[56]][_0xbc44[81]](_0x4a03x28[_0xbc44[82]],{})[_0xbc44[45]](respondWithResult(_0x4a03x15,201,_0xbc44[81]))[_0xbc44[75]](handleError(_0x4a03x15,null,_0xbc44[81]))};exports[_0xbc44[46]]= function(_0x4a03x28,_0x4a03x15){if(_0x4a03x28[_0xbc44[82]][_0xbc44[78]]){delete _0x4a03x28[_0xbc44[82]][_0xbc44[78]]};return db[_0xbc44[56]][_0xbc44[80]]({where:{id:_0x4a03x28[_0xbc44[79]][_0xbc44[78]]}})[_0xbc44[45]](handleEntityNotFound(_0x4a03x15,null,_0xbc44[46]))[_0xbc44[45]](saveUpdates(_0x4a03x28[_0xbc44[82]],null,_0xbc44[46]))[_0xbc44[45]](respondWithResult(_0x4a03x15,null,_0xbc44[46]))[_0xbc44[75]](handleError(_0x4a03x15,null,_0xbc44[46]))};exports[_0xbc44[48]]= function(_0x4a03x28,_0x4a03x15){return db[_0xbc44[56]][_0xbc44[80]]({where:{id:_0x4a03x28[_0xbc44[79]][_0xbc44[78]]}})[_0xbc44[45]](handleEntityNotFound(_0x4a03x15,null,_0xbc44[48]))[_0xbc44[45]](removeEntity(_0x4a03x15,null,_0xbc44[48]))[_0xbc44[75]](handleError(_0x4a03x15,null,_0xbc44[48]))};exports[_0xbc44[83]]= function(_0x4a03x28,_0x4a03x15){return db[_0xbc44[56]][_0xbc44[83]]()[_0xbc44[45]](respondWithResult(_0x4a03x15,null,_0xbc44[83]))[_0xbc44[75]](handleError(_0x4a03x15,null,_0xbc44[83]))};exports[_0xbc44[84]]= function(_0x4a03x28,_0x4a03x15,_0x4a03x2c){return db[_0xbc44[87]][_0xbc44[80]]({where:{id:_0x4a03x28[_0xbc44[79]][_0xbc44[78]]}})[_0xbc44[45]](handleEntityNotFound(_0x4a03x15,null,_0xbc44[84]))[_0xbc44[45]](function(_0x4a03x18){if(_0x4a03x18){return _0x4a03x18[_0xbc44[84]](_0x4a03x28[_0xbc44[82]][_0xbc44[85]],_[_0xbc44[86]](_0x4a03x28[_0xbc44[82]],[_0xbc44[85],_0xbc44[78]])|| {})};return null})[_0xbc44[45]](respondWithResult(_0x4a03x15,null,_0xbc44[84]))[_0xbc44[75]](handleError(_0x4a03x15,null,_0xbc44[84]))};exports[_0xbc44[88]]= function(_0x4a03x28,_0x4a03x18,_0x4a03x2c){var _0x4a03x1b={};var _0x4a03x29={};var _0x4a03x2d;var _0x4a03x1c;return db[_0xbc44[56]][_0xbc44[89]]({where:{id:_0x4a03x28[_0xbc44[79]][_0xbc44[78]]}})[_0xbc44[45]](handleEntityNotFound(_0x4a03x18,null,_0xbc44[88]))[_0xbc44[45]](function(_0x4a03x18){if(_0x4a03x18){_0x4a03x2d= _0x4a03x18;_0x4a03x29[_0xbc44[54]]= _[_0xbc44[57]](db[_0xbc44[87]][_0xbc44[55]]);_0x4a03x29[_0xbc44[58]]= _[_0xbc44[57]](_0x4a03x28[_0xbc44[58]]);_0x4a03x29[_0xbc44[59]]= _[_0xbc44[60]](_0x4a03x29[_0xbc44[54]],_0x4a03x29[_0xbc44[58]]);_0x4a03x1b[_0xbc44[61]]= _[_0xbc44[60]](_0x4a03x29[_0xbc44[54]],qs[_0xbc44[62]](_0x4a03x28[_0xbc44[58]][_0xbc44[62]]));_0x4a03x1b[_0xbc44[61]]= (_0x4a03x1b[_0xbc44[61]][_0xbc44[63]])?_0x4a03x1b[_0xbc44[61]]:_0x4a03x29[_0xbc44[54]];_0x4a03x1b[_0xbc44[66]]= qs[_0xbc44[67]](_0x4a03x28[_0xbc44[58]][_0xbc44[67]]);_0x4a03x1b[_0xbc44[68]]= qs[_0xbc44[59]](_[_0xbc44[69]](_0x4a03x28[_0xbc44[58]],_0x4a03x29[_0xbc44[59]]));if(_0x4a03x28[_0xbc44[58]][_0xbc44[70]]){_0x4a03x1b[_0xbc44[68]]= _[_0xbc44[73]](_0x4a03x1b[_0xbc44[68]],{$or:_[_0xbc44[72]](_0x4a03x1b[_0xbc44[61]],function(_0x4a03x2a){var _0x4a03x2b={};_0x4a03x2b[_0x4a03x2a]= {$like:_0xbc44[71]+ _0x4a03x28[_0xbc44[58]][_0xbc44[70]]+ _0xbc44[71]};return _0x4a03x2b})})};_0x4a03x1b= _[_0xbc44[73]]({},_0x4a03x1b,_0x4a03x28[_0xbc44[74]]);return _0x4a03x2d[_0xbc44[88]](_0x4a03x1b)}})[_0xbc44[45]](function(_0x4a03x2f){if(_0x4a03x2f){_0x4a03x1c= _0x4a03x2f[_0xbc44[63]];if(!_0x4a03x28[_0xbc44[58]][_0xbc44[65]](_0xbc44[64])){_0x4a03x1b[_0xbc44[35]]= qs[_0xbc44[35]](_0x4a03x28[_0xbc44[58]][_0xbc44[35]]);_0x4a03x1b[_0xbc44[34]]= qs[_0xbc44[34]](_0x4a03x28[_0xbc44[58]][_0xbc44[34]])};return _0x4a03x2d[_0xbc44[88]](_0x4a03x1b)}})[_0xbc44[45]](function(_0x4a03x2e){return _0x4a03x2e?{count:_0x4a03x1c,rows:_0x4a03x2e}:null})[_0xbc44[45]](respondWithResult(_0x4a03x18,null,_0xbc44[88]))[_0xbc44[75]](handleError(_0x4a03x18,null,_0xbc44[88]))}
\ No newline at end of file
+var _0xdcb2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xdcb2[0];var jsonpatch=require(_0xdcb2[1]);var rp=require(_0xdcb2[2]);var moment=require(_0xdcb2[3]);var BPromise=require(_0xdcb2[4]);var util=require(_0xdcb2[5]);var path=require(_0xdcb2[6]);var sox=require(_0xdcb2[7]);var ejs=require(_0xdcb2[8]);var fs=require(_0xdcb2[9]);var _=require(_0xdcb2[10]);var squel=require(_0xdcb2[11]);var crypto=require(_0xdcb2[12]);var jsforce=require(_0xdcb2[13]);var toCsv=require(_0xdcb2[14]);var qs=require(_0xdcb2[15]);var logger=require(_0xdcb2[17])(_0xdcb2[16]);var utils=require(_0xdcb2[18]);var config=require(_0xdcb2[19]);var db=require(_0xdcb2[21])[_0xdcb2[20]];function respondWithStatusCode(_0x45c0x15,_0x45c0x16,_0x45c0x17){_0x45c0x16= _0x45c0x16|| 204;return function(_0x45c0x18){if(_0x45c0x18){logger[_0xdcb2[24]](_0xdcb2[22],_0x45c0x17,_0x45c0x16,_0xdcb2[23]);logger[_0xdcb2[26]](_0xdcb2[25],_0x45c0x17,_0x45c0x16,_0xdcb2[23]);return _0x45c0x15[_0xdcb2[27]](_0x45c0x16)};return _0x45c0x15[_0xdcb2[29]](304)[_0xdcb2[28]]()}}function respondWithResult(_0x45c0x15,_0x45c0x16,_0x45c0x17){_0x45c0x16= _0x45c0x16|| 200;return function(_0x45c0x18){if(_0x45c0x18){logger[_0xdcb2[24]](_0xdcb2[22],_0x45c0x17,_0x45c0x16,_0xdcb2[30]);logger[_0xdcb2[26]](_0xdcb2[25],_0x45c0x17,_0x45c0x16,_0xdcb2[30],JSON[_0xdcb2[31]](_0x45c0x18));return _0x45c0x15[_0xdcb2[29]](_0x45c0x16)[_0xdcb2[32]](_0x45c0x18)};return _0x45c0x15[_0xdcb2[29]](304)[_0xdcb2[28]]()}}function respondWithFilteredResult(_0x45c0x15,_0x45c0x1b,_0x45c0x17){return function(_0x45c0x18){if(_0x45c0x18){var _0x45c0x1c=_0x45c0x18[_0xdcb2[33]],_0x45c0x1d=_0x45c0x1b[_0xdcb2[34]],_0x45c0x1e=_0x45c0x1b[_0xdcb2[34]]+ _0x45c0x1b[_0xdcb2[35]],_0x45c0x16;if(_0x45c0x1e>= _0x45c0x1c){_0x45c0x1e= _0x45c0x1c;_0x45c0x16= 200}else {_0x45c0x16= 206};_0x45c0x15[_0xdcb2[29]](_0x45c0x16);logger[_0xdcb2[24]](_0xdcb2[22],_0x45c0x17,_0x45c0x16,_0xdcb2[36]);logger[_0xdcb2[26]](_0xdcb2[25],_0x45c0x17,_0x45c0x16,_0xdcb2[30],JSON[_0xdcb2[31]](_0x45c0x18));return _0x45c0x15[_0xdcb2[40]](_0xdcb2[37],_0x45c0x1d+ _0xdcb2[38]+ _0x45c0x1e+ _0xdcb2[39]+ _0x45c0x1c)[_0xdcb2[32]](_0x45c0x18)};return null}}function patchUpdates(_0x45c0x20){return function(_0x45c0x18){try{jsonpatch[_0xdcb2[41]](_0x45c0x18,_0x45c0x20,true)}catch(err){return BPromise[_0xdcb2[42]](err)};return _0x45c0x18[_0xdcb2[43]]()}}function saveUpdates(_0x45c0x22,_0x45c0x16,_0x45c0x17){return function(_0x45c0x18){if(_0x45c0x18){return _0x45c0x18[_0xdcb2[46]](_0x45c0x22)[_0xdcb2[45]](function(_0x45c0x23){logger[_0xdcb2[24]](_0xdcb2[22],_0x45c0x17,_0x45c0x16,_0xdcb2[44]);logger[_0xdcb2[26]](_0xdcb2[25],_0x45c0x17,_0x45c0x16,_0xdcb2[44],JSON[_0xdcb2[31]](_0x45c0x18));return _0x45c0x23})};return null}}function removeEntity(_0x45c0x15,_0x45c0x16,_0x45c0x17){return function(_0x45c0x18){if(_0x45c0x18){return _0x45c0x18[_0xdcb2[48]]()[_0xdcb2[45]](function(){logger[_0xdcb2[24]](_0xdcb2[22],_0x45c0x17,_0x45c0x16,_0xdcb2[47]);logger[_0xdcb2[26]](_0xdcb2[25],_0x45c0x17,_0x45c0x16,_0xdcb2[47],JSON[_0xdcb2[31]](_0x45c0x18));_0x45c0x15[_0xdcb2[29]](204)[_0xdcb2[28]]()})}}}function handleEntityNotFound(_0x45c0x15,_0x45c0x16,_0x45c0x17){return function(_0x45c0x18){if(!_0x45c0x18){logger[_0xdcb2[50]](_0xdcb2[22],_0x45c0x17,404,_0xdcb2[49]);_0x45c0x15[_0xdcb2[29]](404)[_0xdcb2[28]]();return null};return _0x45c0x18}}function handleError(_0x45c0x15,_0x45c0x16,_0x45c0x17){_0x45c0x16= _0x45c0x16|| 500;return function(_0x45c0x27){logger[_0xdcb2[50]](_0xdcb2[22],_0x45c0x17,_0x45c0x16,JSON[_0xdcb2[31]](_0x45c0x27));delete _0x45c0x27[_0xdcb2[51]];_0x45c0x15[_0xdcb2[29]](_0x45c0x16)[_0xdcb2[52]](_0x45c0x27)}}exports[_0xdcb2[53]]= function(_0x45c0x28,_0x45c0x15){var _0x45c0x1b={},_0x45c0x29={};_0x45c0x29[_0xdcb2[54]]= _[_0xdcb2[57]](db[_0xdcb2[56]][_0xdcb2[55]]);_0x45c0x29[_0xdcb2[58]]= _[_0xdcb2[57]](_0x45c0x28[_0xdcb2[58]]);_0x45c0x29[_0xdcb2[59]]= _[_0xdcb2[60]](_0x45c0x29[_0xdcb2[54]],_0x45c0x29[_0xdcb2[58]]);_0x45c0x1b[_0xdcb2[61]]= _[_0xdcb2[60]](_0x45c0x29[_0xdcb2[54]],qs[_0xdcb2[62]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[62]]));_0x45c0x1b[_0xdcb2[61]]= (_0x45c0x1b[_0xdcb2[61]][_0xdcb2[63]])?_0x45c0x1b[_0xdcb2[61]]:_0x45c0x29[_0xdcb2[54]];if(!_0x45c0x28[_0xdcb2[58]][_0xdcb2[65]](_0xdcb2[64])){_0x45c0x1b[_0xdcb2[35]]= qs[_0xdcb2[35]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[35]]);_0x45c0x1b[_0xdcb2[34]]= qs[_0xdcb2[34]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[34]])};_0x45c0x1b[_0xdcb2[66]]= qs[_0xdcb2[67]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[67]]);_0x45c0x1b[_0xdcb2[68]]= qs[_0xdcb2[59]](_[_0xdcb2[69]](_0x45c0x28[_0xdcb2[58]],_0x45c0x29[_0xdcb2[59]]));if(_0x45c0x28[_0xdcb2[58]][_0xdcb2[70]]){_0x45c0x1b[_0xdcb2[68]]= _[_0xdcb2[73]](_0x45c0x1b[_0xdcb2[68]],{$or:_[_0xdcb2[72]](_0x45c0x1b[_0xdcb2[61]],function(_0x45c0x2a){var _0x45c0x2b={};_0x45c0x2b[_0x45c0x2a]= {$like:_0xdcb2[71]+ _0x45c0x28[_0xdcb2[58]][_0xdcb2[70]]+ _0xdcb2[71]};return _0x45c0x2b})})};_0x45c0x1b= _[_0xdcb2[73]]({},_0x45c0x1b,_0x45c0x28[_0xdcb2[74]]);return db[_0xdcb2[56]][_0xdcb2[76]](_0x45c0x1b)[_0xdcb2[45]](respondWithFilteredResult(_0x45c0x15,_0x45c0x1b,_0xdcb2[53]))[_0xdcb2[75]](handleError(_0x45c0x15,null,_0xdcb2[53]))};exports[_0xdcb2[77]]= function(_0x45c0x28,_0x45c0x15){var _0x45c0x1b={raw:false,where:{id:_0x45c0x28[_0xdcb2[79]][_0xdcb2[78]]}},_0x45c0x29={};_0x45c0x29[_0xdcb2[54]]= _[_0xdcb2[57]](db[_0xdcb2[56]][_0xdcb2[55]]);_0x45c0x29[_0xdcb2[58]]= _[_0xdcb2[57]](_0x45c0x28[_0xdcb2[58]]);_0x45c0x29[_0xdcb2[59]]= _[_0xdcb2[60]](_0x45c0x29[_0xdcb2[54]],_0x45c0x29[_0xdcb2[58]]);_0x45c0x1b[_0xdcb2[61]]= _[_0xdcb2[60]](_0x45c0x29[_0xdcb2[54]],qs[_0xdcb2[62]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[62]]));_0x45c0x1b[_0xdcb2[61]]= (_0x45c0x1b[_0xdcb2[61]][_0xdcb2[63]])?_0x45c0x1b[_0xdcb2[61]]:_0x45c0x29[_0xdcb2[54]];_0x45c0x1b= _[_0xdcb2[73]]({},_0x45c0x1b,_0x45c0x28[_0xdcb2[74]]);return db[_0xdcb2[56]][_0xdcb2[80]](_0x45c0x1b)[_0xdcb2[45]](handleEntityNotFound(_0x45c0x15,null,_0xdcb2[77]))[_0xdcb2[45]](respondWithResult(_0x45c0x15,null,_0xdcb2[77]))[_0xdcb2[75]](handleError(_0x45c0x15,null,_0xdcb2[77]))};exports[_0xdcb2[81]]= function(_0x45c0x28,_0x45c0x15){return db[_0xdcb2[56]][_0xdcb2[81]](_0x45c0x28[_0xdcb2[82]],{})[_0xdcb2[45]](respondWithResult(_0x45c0x15,201,_0xdcb2[81]))[_0xdcb2[75]](handleError(_0x45c0x15,null,_0xdcb2[81]))};exports[_0xdcb2[46]]= function(_0x45c0x28,_0x45c0x15){if(_0x45c0x28[_0xdcb2[82]][_0xdcb2[78]]){delete _0x45c0x28[_0xdcb2[82]][_0xdcb2[78]]};return db[_0xdcb2[56]][_0xdcb2[80]]({where:{id:_0x45c0x28[_0xdcb2[79]][_0xdcb2[78]]}})[_0xdcb2[45]](handleEntityNotFound(_0x45c0x15,null,_0xdcb2[46]))[_0xdcb2[45]](saveUpdates(_0x45c0x28[_0xdcb2[82]],null,_0xdcb2[46]))[_0xdcb2[45]](respondWithResult(_0x45c0x15,null,_0xdcb2[46]))[_0xdcb2[75]](handleError(_0x45c0x15,null,_0xdcb2[46]))};exports[_0xdcb2[48]]= function(_0x45c0x28,_0x45c0x15){return db[_0xdcb2[56]][_0xdcb2[80]]({where:{id:_0x45c0x28[_0xdcb2[79]][_0xdcb2[78]]}})[_0xdcb2[45]](handleEntityNotFound(_0x45c0x15,null,_0xdcb2[48]))[_0xdcb2[45]](removeEntity(_0x45c0x15,null,_0xdcb2[48]))[_0xdcb2[75]](handleError(_0x45c0x15,null,_0xdcb2[48]))};exports[_0xdcb2[83]]= function(_0x45c0x28,_0x45c0x15){return db[_0xdcb2[56]][_0xdcb2[83]]()[_0xdcb2[45]](respondWithResult(_0x45c0x15,null,_0xdcb2[83]))[_0xdcb2[75]](handleError(_0x45c0x15,null,_0xdcb2[83]))};exports[_0xdcb2[84]]= function(_0x45c0x28,_0x45c0x15,_0x45c0x2c){return db[_0xdcb2[87]][_0xdcb2[80]]({where:{id:_0x45c0x28[_0xdcb2[79]][_0xdcb2[78]]}})[_0xdcb2[45]](handleEntityNotFound(_0x45c0x15,null,_0xdcb2[84]))[_0xdcb2[45]](function(_0x45c0x18){if(_0x45c0x18){return _0x45c0x18[_0xdcb2[84]](_0x45c0x28[_0xdcb2[82]][_0xdcb2[85]],_[_0xdcb2[86]](_0x45c0x28[_0xdcb2[82]],[_0xdcb2[85],_0xdcb2[78]])|| {})};return null})[_0xdcb2[45]](respondWithResult(_0x45c0x15,null,_0xdcb2[84]))[_0xdcb2[75]](handleError(_0x45c0x15,null,_0xdcb2[84]))};exports[_0xdcb2[88]]= function(_0x45c0x28,_0x45c0x18,_0x45c0x2c){var _0x45c0x1b={};var _0x45c0x29={};var _0x45c0x2d;var _0x45c0x1c;return db[_0xdcb2[56]][_0xdcb2[89]]({where:{id:_0x45c0x28[_0xdcb2[79]][_0xdcb2[78]]}})[_0xdcb2[45]](handleEntityNotFound(_0x45c0x18,null,_0xdcb2[88]))[_0xdcb2[45]](function(_0x45c0x18){if(_0x45c0x18){_0x45c0x2d= _0x45c0x18;_0x45c0x29[_0xdcb2[54]]= _[_0xdcb2[57]](db[_0xdcb2[87]][_0xdcb2[55]]);_0x45c0x29[_0xdcb2[58]]= _[_0xdcb2[57]](_0x45c0x28[_0xdcb2[58]]);_0x45c0x29[_0xdcb2[59]]= _[_0xdcb2[60]](_0x45c0x29[_0xdcb2[54]],_0x45c0x29[_0xdcb2[58]]);_0x45c0x1b[_0xdcb2[61]]= _[_0xdcb2[60]](_0x45c0x29[_0xdcb2[54]],qs[_0xdcb2[62]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[62]]));_0x45c0x1b[_0xdcb2[61]]= (_0x45c0x1b[_0xdcb2[61]][_0xdcb2[63]])?_0x45c0x1b[_0xdcb2[61]]:_0x45c0x29[_0xdcb2[54]];_0x45c0x1b[_0xdcb2[66]]= qs[_0xdcb2[67]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[67]]);_0x45c0x1b[_0xdcb2[68]]= qs[_0xdcb2[59]](_[_0xdcb2[69]](_0x45c0x28[_0xdcb2[58]],_0x45c0x29[_0xdcb2[59]]));if(_0x45c0x28[_0xdcb2[58]][_0xdcb2[70]]){_0x45c0x1b[_0xdcb2[68]]= _[_0xdcb2[73]](_0x45c0x1b[_0xdcb2[68]],{$or:_[_0xdcb2[72]](_0x45c0x1b[_0xdcb2[61]],function(_0x45c0x2a){var _0x45c0x2b={};_0x45c0x2b[_0x45c0x2a]= {$like:_0xdcb2[71]+ _0x45c0x28[_0xdcb2[58]][_0xdcb2[70]]+ _0xdcb2[71]};return _0x45c0x2b})})};_0x45c0x1b= _[_0xdcb2[73]]({},_0x45c0x1b,_0x45c0x28[_0xdcb2[74]]);return _0x45c0x2d[_0xdcb2[88]](_0x45c0x1b)}})[_0xdcb2[45]](function(_0x45c0x2f){if(_0x45c0x2f){_0x45c0x1c= _0x45c0x2f[_0xdcb2[63]];if(!_0x45c0x28[_0xdcb2[58]][_0xdcb2[65]](_0xdcb2[64])){_0x45c0x1b[_0xdcb2[35]]= qs[_0xdcb2[35]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[35]]);_0x45c0x1b[_0xdcb2[34]]= qs[_0xdcb2[34]](_0x45c0x28[_0xdcb2[58]][_0xdcb2[34]])};return _0x45c0x2d[_0xdcb2[88]](_0x45c0x1b)}})[_0xdcb2[45]](function(_0x45c0x2e){return _0x45c0x2e?{count:_0x45c0x1c,rows:_0x45c0x2e}:null})[_0xdcb2[45]](respondWithResult(_0x45c0x18,null,_0xdcb2[88]))[_0xdcb2[75]](handleError(_0x45c0x18,null,_0xdcb2[88]))}
\ No newline at end of file
index ac54d2e..41528d3 100644 (file)
@@ -1 +1 @@
-var _0xab5d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x66\x61\x78\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0xab5d[0];var _=require(_0xab5d[1]);var util=require(_0xab5d[2]);var logger=require(_0xab5d[4])(_0xab5d[3]);var attributes=require(_0xab5d[5]);module[_0xab5d[6]]= function(_0x7ae2x5,_0x7ae2x6){return _0x7ae2x5[_0xab5d[9]](_0xab5d[7],attributes,{tableName:_0xab5d[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xebfe=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x66\x61\x78\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0xebfe[0];var _=require(_0xebfe[1]);var util=require(_0xebfe[2]);var logger=require(_0xebfe[4])(_0xebfe[3]);var attributes=require(_0xebfe[5]);module[_0xebfe[6]]= function(_0x5ff5x5,_0x5ff5x6){return _0x5ff5x5[_0xebfe[9]](_0xebfe[7],attributes,{tableName:_0xebfe[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
index 1d9770f..7e724bd 100644 (file)
@@ -1 +1 @@
-var _0x8328=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x8328[0];var _=require(_0x8328[1]);var util=require(_0x8328[2]);var moment=require(_0x8328[3]);var BPromise=require(_0x8328[4]);var db=require(_0x8328[6])[_0x8328[5]];var utils=require(_0x8328[7]);var logger=require(_0x8328[9])(_0x8328[8]);var jayson=require(_0x8328[10]);var client=jayson[_0x8328[12]][_0x8328[11]]({port:9002});function respondWithRpcPromise(_0x1982xb,_0x1982xc,_0x1982xd){return  new BPromise(function(_0x1982xe,_0x1982xf){return client[_0x8328[25]](_0x1982xb,_0x1982xd)[_0x8328[24]](function(_0x1982x11){logger[_0x8328[17]](_0x8328[13],_0x1982xc,_0x8328[16]);logger[_0x8328[20]](_0x8328[18],_0x1982xc,_0x8328[16],JSON[_0x8328[19]](_0x1982x11));if(_0x1982x11[_0x8328[14]]){if(_0x1982x11[_0x8328[14]][_0x8328[21]]=== 500){logger[_0x8328[14]](_0x8328[13],_0x1982xc,_0x1982x11[_0x8328[14]][_0x8328[22]]);return _0x1982xf(_0x1982x11[_0x8328[14]][_0x8328[22]])};logger[_0x8328[14]](_0x8328[13],_0x1982xc,_0x1982x11[_0x8328[14]][_0x8328[22]]);return _0x1982xe(_0x1982x11[_0x8328[14]][_0x8328[22]])}else {logger[_0x8328[17]](_0x8328[13],_0x1982xc,_0x8328[16]);_0x1982xe(_0x1982x11[_0x8328[23]][_0x8328[22]])}})[_0x8328[15]](function(_0x1982x10){logger[_0x8328[14]](_0x8328[13],_0x1982xc,_0x1982x10);_0x1982xf(_0x1982x10)})})}
\ No newline at end of file
+var _0x98cb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x98cb[0];var _=require(_0x98cb[1]);var util=require(_0x98cb[2]);var moment=require(_0x98cb[3]);var BPromise=require(_0x98cb[4]);var db=require(_0x98cb[6])[_0x98cb[5]];var utils=require(_0x98cb[7]);var logger=require(_0x98cb[9])(_0x98cb[8]);var jayson=require(_0x98cb[10]);var client=jayson[_0x98cb[12]][_0x98cb[11]]({port:9002});function respondWithRpcPromise(_0x1e7cxb,_0x1e7cxc,_0x1e7cxd){return  new BPromise(function(_0x1e7cxe,_0x1e7cxf){return client[_0x98cb[25]](_0x1e7cxb,_0x1e7cxd)[_0x98cb[24]](function(_0x1e7cx11){logger[_0x98cb[17]](_0x98cb[13],_0x1e7cxc,_0x98cb[16]);logger[_0x98cb[20]](_0x98cb[18],_0x1e7cxc,_0x98cb[16],JSON[_0x98cb[19]](_0x1e7cx11));if(_0x1e7cx11[_0x98cb[14]]){if(_0x1e7cx11[_0x98cb[14]][_0x98cb[21]]=== 500){logger[_0x98cb[14]](_0x98cb[13],_0x1e7cxc,_0x1e7cx11[_0x98cb[14]][_0x98cb[22]]);return _0x1e7cxf(_0x1e7cx11[_0x98cb[14]][_0x98cb[22]])};logger[_0x98cb[14]](_0x98cb[13],_0x1e7cxc,_0x1e7cx11[_0x98cb[14]][_0x98cb[22]]);return _0x1e7cxe(_0x1e7cx11[_0x98cb[14]][_0x98cb[22]])}else {logger[_0x98cb[17]](_0x98cb[13],_0x1e7cxc,_0x98cb[16]);_0x1e7cxe(_0x1e7cx11[_0x98cb[23]][_0x98cb[22]])}})[_0x98cb[15]](function(_0x1e7cx10){logger[_0x98cb[14]](_0x98cb[13],_0x1e7cxc,_0x1e7cx10);_0x1e7cxf(_0x1e7cx10)})})}
\ No newline at end of file
index 642a0b8..5567782 100644 (file)
@@ -1 +1 @@
-var _0xb741=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb741[0];var multer=require(_0xb741[1]);var util=require(_0xb741[2]);var path=require(_0xb741[3]);var express=require(_0xb741[4]);var router=express.Router();var auth=require(_0xb741[5]);var config=require(_0xb741[6]);var controller=require(_0xb741[7]);router[_0xb741[11]](_0xb741[8],auth[_0xb741[9]](),controller[_0xb741[10]]);router[_0xb741[11]](_0xb741[12],auth[_0xb741[9]](),controller[_0xb741[13]]);router[_0xb741[11]](_0xb741[14],auth[_0xb741[9]](),controller[_0xb741[15]]);router[_0xb741[11]](_0xb741[16],auth[_0xb741[9]](),controller[_0xb741[17]]);router[_0xb741[19]](_0xb741[8],auth[_0xb741[9]](),controller[_0xb741[18]]);router[_0xb741[19]](_0xb741[16],auth[_0xb741[9]](),controller[_0xb741[20]]);router[_0xb741[22]](_0xb741[14],auth[_0xb741[9]](),controller[_0xb741[21]]);router[_0xb741[24]](_0xb741[14],auth[_0xb741[9]](),controller[_0xb741[23]]);module[_0xb741[25]]= router
\ No newline at end of file
+var _0xea50=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xea50[0];var multer=require(_0xea50[1]);var util=require(_0xea50[2]);var path=require(_0xea50[3]);var express=require(_0xea50[4]);var router=express.Router();var auth=require(_0xea50[5]);var config=require(_0xea50[6]);var controller=require(_0xea50[7]);router[_0xea50[11]](_0xea50[8],auth[_0xea50[9]](),controller[_0xea50[10]]);router[_0xea50[11]](_0xea50[12],auth[_0xea50[9]](),controller[_0xea50[13]]);router[_0xea50[11]](_0xea50[14],auth[_0xea50[9]](),controller[_0xea50[15]]);router[_0xea50[11]](_0xea50[16],auth[_0xea50[9]](),controller[_0xea50[17]]);router[_0xea50[19]](_0xea50[8],auth[_0xea50[9]](),controller[_0xea50[18]]);router[_0xea50[19]](_0xea50[16],auth[_0xea50[9]](),controller[_0xea50[20]]);router[_0xea50[22]](_0xea50[14],auth[_0xea50[9]](),controller[_0xea50[21]]);router[_0xea50[24]](_0xea50[14],auth[_0xea50[9]](),controller[_0xea50[23]]);module[_0xea50[25]]= router
\ No newline at end of file
index cf1fa62..68e5195 100644 (file)
@@ -1 +1 @@
-var _0x1964=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x53\x45\x4E\x54","\x53\x45\x4E\x44\x49\x4E\x47","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4C\x4F\x42","\x74\x65\x78\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0x1964[0];var Sequelize=require(_0x1964[1]);var _=require(_0x1964[2]);module[_0x1964[3]]= {from:{type:Sequelize[_0x1964[4]],allowNull:false},to:{type:Sequelize[_0x1964[4]],allowNull:false},status:{type:Sequelize.ENUM(_0x1964[5],_0x1964[6],_0x1964[7],_0x1964[8],_0x1964[9]),defaultValue:_0x1964[6]},channel:{type:Sequelize[_0x1964[4]]},channelstate:{type:Sequelize[_0x1964[10]]},channelstatedesc:{type:Sequelize[_0x1964[4]]},calleridnum:{type:Sequelize[_0x1964[4]]},calleridname:{type:Sequelize[_0x1964[4]]},connectedlinenum:{type:Sequelize[_0x1964[4]]},connectedlinename:{type:Sequelize[_0x1964[4]]},accountcode:{type:Sequelize[_0x1964[4]]},context:{type:Sequelize[_0x1964[4]]},exten:{type:Sequelize[_0x1964[4]]},priority:{type:Sequelize[_0x1964[10]]},uniqueid:{type:Sequelize[_0x1964[4]]},linkedid:{type:Sequelize[_0x1964[4]]},localstationid:{type:Sequelize[_0x1964[4]]},remotestationid:{type:Sequelize[_0x1964[4]]},pagestransferred:{type:Sequelize[_0x1964[10]],defaultValue:0},resolution:{type:Sequelize[_0x1964[4]]},transferrate:{type:Sequelize[_0x1964[4]]},filename:{type:Sequelize[_0x1964[4]]},lastStatus:{type:Sequelize[_0x1964[4]]},error:{type:Sequelize[_0x1964[4]]},text:{type:Sequelize[_0x1964[11]],get:function(){if(this[_0x1964[13]](_0x1964[12])){return _.toString(this[_0x1964[13]](_0x1964[12]))}}},retry:{type:Sequelize[_0x1964[10]],defaultValue:0}}
\ No newline at end of file
+var _0xae48=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x53\x45\x4E\x54","\x53\x45\x4E\x44\x49\x4E\x47","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4C\x4F\x42","\x74\x65\x78\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0xae48[0];var Sequelize=require(_0xae48[1]);var _=require(_0xae48[2]);module[_0xae48[3]]= {from:{type:Sequelize[_0xae48[4]],allowNull:false},to:{type:Sequelize[_0xae48[4]],allowNull:false},status:{type:Sequelize.ENUM(_0xae48[5],_0xae48[6],_0xae48[7],_0xae48[8],_0xae48[9]),defaultValue:_0xae48[6]},channel:{type:Sequelize[_0xae48[4]]},channelstate:{type:Sequelize[_0xae48[10]]},channelstatedesc:{type:Sequelize[_0xae48[4]]},calleridnum:{type:Sequelize[_0xae48[4]]},calleridname:{type:Sequelize[_0xae48[4]]},connectedlinenum:{type:Sequelize[_0xae48[4]]},connectedlinename:{type:Sequelize[_0xae48[4]]},accountcode:{type:Sequelize[_0xae48[4]]},context:{type:Sequelize[_0xae48[4]]},exten:{type:Sequelize[_0xae48[4]]},priority:{type:Sequelize[_0xae48[10]]},uniqueid:{type:Sequelize[_0xae48[4]]},linkedid:{type:Sequelize[_0xae48[4]]},localstationid:{type:Sequelize[_0xae48[4]]},remotestationid:{type:Sequelize[_0xae48[4]]},pagestransferred:{type:Sequelize[_0xae48[10]],defaultValue:0},resolution:{type:Sequelize[_0xae48[4]]},transferrate:{type:Sequelize[_0xae48[4]]},filename:{type:Sequelize[_0xae48[4]]},lastStatus:{type:Sequelize[_0xae48[4]]},error:{type:Sequelize[_0xae48[4]]},text:{type:Sequelize[_0xae48[11]],get:function(){if(this[_0xae48[13]](_0xae48[12])){return _.toString(this[_0xae48[13]](_0xae48[12]))}}},retry:{type:Sequelize[_0xae48[10]],defaultValue:0}}
\ No newline at end of file
index 32184aa..57131f5 100644 (file)
@@ -1 +1 @@
-var _0xb175=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xb175[0];var jsonpatch=require(_0xb175[1]);var rp=require(_0xb175[2]);var moment=require(_0xb175[3]);var BPromise=require(_0xb175[4]);var util=require(_0xb175[5]);var path=require(_0xb175[6]);var sox=require(_0xb175[7]);var ejs=require(_0xb175[8]);var fs=require(_0xb175[9]);var _=require(_0xb175[10]);var squel=require(_0xb175[11]);var crypto=require(_0xb175[12]);var jsforce=require(_0xb175[13]);var toCsv=require(_0xb175[14]);var qs=require(_0xb175[15]);var logger=require(_0xb175[17])(_0xb175[16]);var utils=require(_0xb175[18]);var config=require(_0xb175[19]);var db=require(_0xb175[21])[_0xb175[20]];function respondWithStatusCode(_0xdb89x15,_0xdb89x16,_0xdb89x17){_0xdb89x16= _0xdb89x16|| 204;return function(_0xdb89x18){if(_0xdb89x18){logger[_0xb175[24]](_0xb175[22],_0xdb89x17,_0xdb89x16,_0xb175[23]);logger[_0xb175[26]](_0xb175[25],_0xdb89x17,_0xdb89x16,_0xb175[23]);return _0xdb89x15[_0xb175[27]](_0xdb89x16)};return _0xdb89x15[_0xb175[29]](304)[_0xb175[28]]()}}function respondWithResult(_0xdb89x15,_0xdb89x16,_0xdb89x17){_0xdb89x16= _0xdb89x16|| 200;return function(_0xdb89x18){if(_0xdb89x18){logger[_0xb175[24]](_0xb175[22],_0xdb89x17,_0xdb89x16,_0xb175[30]);logger[_0xb175[26]](_0xb175[25],_0xdb89x17,_0xdb89x16,_0xb175[30],JSON[_0xb175[31]](_0xdb89x18));return _0xdb89x15[_0xb175[29]](_0xdb89x16)[_0xb175[32]](_0xdb89x18)};return _0xdb89x15[_0xb175[29]](304)[_0xb175[28]]()}}function respondWithFilteredResult(_0xdb89x15,_0xdb89x1b,_0xdb89x17){return function(_0xdb89x18){if(_0xdb89x18){var _0xdb89x1c=_0xdb89x18[_0xb175[33]],_0xdb89x1d=_0xdb89x1b[_0xb175[34]],_0xdb89x1e=_0xdb89x1b[_0xb175[34]]+ _0xdb89x1b[_0xb175[35]],_0xdb89x16;if(_0xdb89x1e>= _0xdb89x1c){_0xdb89x1e= _0xdb89x1c;_0xdb89x16= 200}else {_0xdb89x16= 206};_0xdb89x15[_0xb175[29]](_0xdb89x16);logger[_0xb175[24]](_0xb175[22],_0xdb89x17,_0xdb89x16,_0xb175[36]);logger[_0xb175[26]](_0xb175[25],_0xdb89x17,_0xdb89x16,_0xb175[30],JSON[_0xb175[31]](_0xdb89x18));return _0xdb89x15[_0xb175[40]](_0xb175[37],_0xdb89x1d+ _0xb175[38]+ _0xdb89x1e+ _0xb175[39]+ _0xdb89x1c)[_0xb175[32]](_0xdb89x18)};return null}}function patchUpdates(_0xdb89x20){return function(_0xdb89x18){try{jsonpatch[_0xb175[41]](_0xdb89x18,_0xdb89x20,true)}catch(err){return BPromise[_0xb175[42]](err)};return _0xdb89x18[_0xb175[43]]()}}function saveUpdates(_0xdb89x22,_0xdb89x16,_0xdb89x17){return function(_0xdb89x18){if(_0xdb89x18){return _0xdb89x18[_0xb175[46]](_0xdb89x22)[_0xb175[45]](function(_0xdb89x23){logger[_0xb175[24]](_0xb175[22],_0xdb89x17,_0xdb89x16,_0xb175[44]);logger[_0xb175[26]](_0xb175[25],_0xdb89x17,_0xdb89x16,_0xb175[44],JSON[_0xb175[31]](_0xdb89x18));return _0xdb89x23})};return null}}function removeEntity(_0xdb89x15,_0xdb89x16,_0xdb89x17){return function(_0xdb89x18){if(_0xdb89x18){return _0xdb89x18[_0xb175[48]]()[_0xb175[45]](function(){logger[_0xb175[24]](_0xb175[22],_0xdb89x17,_0xdb89x16,_0xb175[47]);logger[_0xb175[26]](_0xb175[25],_0xdb89x17,_0xdb89x16,_0xb175[47],JSON[_0xb175[31]](_0xdb89x18));_0xdb89x15[_0xb175[29]](204)[_0xb175[28]]()})}}}function handleEntityNotFound(_0xdb89x15,_0xdb89x16,_0xdb89x17){return function(_0xdb89x18){if(!_0xdb89x18){logger[_0xb175[50]](_0xb175[22],_0xdb89x17,404,_0xb175[49]);_0xdb89x15[_0xb175[29]](404)[_0xb175[28]]();return null};return _0xdb89x18}}function handleError(_0xdb89x15,_0xdb89x16,_0xdb89x17){_0xdb89x16= _0xdb89x16|| 500;return function(_0xdb89x27){logger[_0xb175[50]](_0xb175[22],_0xdb89x17,_0xdb89x16,JSON[_0xb175[31]](_0xdb89x27));delete _0xdb89x27[_0xb175[51]];_0xdb89x15[_0xb175[29]](_0xdb89x16)[_0xb175[52]](_0xdb89x27)}}exports[_0xb175[53]]= function(_0xdb89x28,_0xdb89x15){var _0xdb89x1b={},_0xdb89x29={};_0xdb89x29[_0xb175[54]]= _[_0xb175[57]](db[_0xb175[56]][_0xb175[55]]);_0xdb89x29[_0xb175[58]]= _[_0xb175[57]](_0xdb89x28[_0xb175[58]]);_0xdb89x29[_0xb175[59]]= _[_0xb175[60]](_0xdb89x29[_0xb175[54]],_0xdb89x29[_0xb175[58]]);_0xdb89x1b[_0xb175[61]]= _[_0xb175[60]](_0xdb89x29[_0xb175[54]],qs[_0xb175[62]](_0xdb89x28[_0xb175[58]][_0xb175[62]]));_0xdb89x1b[_0xb175[61]]= (_0xdb89x1b[_0xb175[61]][_0xb175[63]])?_0xdb89x1b[_0xb175[61]]:_0xdb89x29[_0xb175[54]];if(!_0xdb89x28[_0xb175[58]][_0xb175[65]](_0xb175[64])){_0xdb89x1b[_0xb175[35]]= qs[_0xb175[35]](_0xdb89x28[_0xb175[58]][_0xb175[35]]);_0xdb89x1b[_0xb175[34]]= qs[_0xb175[34]](_0xdb89x28[_0xb175[58]][_0xb175[34]])};_0xdb89x1b[_0xb175[66]]= qs[_0xb175[67]](_0xdb89x28[_0xb175[58]][_0xb175[67]]);_0xdb89x1b[_0xb175[68]]= qs[_0xb175[59]](_[_0xb175[69]](_0xdb89x28[_0xb175[58]],_0xdb89x29[_0xb175[59]]));if(_0xdb89x28[_0xb175[58]][_0xb175[70]]){_0xdb89x1b[_0xb175[68]]= _[_0xb175[73]](_0xdb89x1b[_0xb175[68]],{$or:_[_0xb175[72]](_0xdb89x1b[_0xb175[61]],function(_0xdb89x2a){var _0xdb89x2b={};_0xdb89x2b[_0xdb89x2a]= {$like:_0xb175[71]+ _0xdb89x28[_0xb175[58]][_0xb175[70]]+ _0xb175[71]};return _0xdb89x2b})})};_0xdb89x1b= _[_0xb175[73]]({},_0xdb89x1b,_0xdb89x28[_0xb175[74]]);return db[_0xb175[56]][_0xb175[76]](_0xdb89x1b)[_0xb175[45]](respondWithFilteredResult(_0xdb89x15,_0xdb89x1b,_0xb175[53]))[_0xb175[75]](handleError(_0xdb89x15,null,_0xb175[53]))};exports[_0xb175[77]]= function(_0xdb89x28,_0xdb89x15){var _0xdb89x1b={raw:true,where:{id:_0xdb89x28[_0xb175[79]][_0xb175[78]]}},_0xdb89x29={};_0xdb89x29[_0xb175[54]]= _[_0xb175[57]](db[_0xb175[56]][_0xb175[55]]);_0xdb89x29[_0xb175[58]]= _[_0xb175[57]](_0xdb89x28[_0xb175[58]]);_0xdb89x29[_0xb175[59]]= _[_0xb175[60]](_0xdb89x29[_0xb175[54]],_0xdb89x29[_0xb175[58]]);_0xdb89x1b[_0xb175[61]]= _[_0xb175[60]](_0xdb89x29[_0xb175[54]],qs[_0xb175[62]](_0xdb89x28[_0xb175[58]][_0xb175[62]]));_0xdb89x1b[_0xb175[61]]= (_0xdb89x1b[_0xb175[61]][_0xb175[63]])?_0xdb89x1b[_0xb175[61]]:_0xdb89x29[_0xb175[54]];_0xdb89x1b= _[_0xb175[73]]({},_0xdb89x1b,_0xdb89x28[_0xb175[74]]);return db[_0xb175[56]][_0xb175[80]](_0xdb89x1b)[_0xb175[45]](handleEntityNotFound(_0xdb89x15,null,_0xb175[77]))[_0xb175[45]](respondWithResult(_0xdb89x15,null,_0xb175[77]))[_0xb175[75]](handleError(_0xdb89x15,null,_0xb175[77]))};exports[_0xb175[81]]= function(_0xdb89x28,_0xdb89x15){return db[_0xb175[56]][_0xb175[81]](_0xdb89x28[_0xb175[82]],{})[_0xb175[45]](respondWithResult(_0xdb89x15,201,_0xb175[81]))[_0xb175[75]](handleError(_0xdb89x15,null,_0xb175[81]))};exports[_0xb175[46]]= function(_0xdb89x28,_0xdb89x15){if(_0xdb89x28[_0xb175[82]][_0xb175[78]]){delete _0xdb89x28[_0xb175[82]][_0xb175[78]]};return db[_0xb175[56]][_0xb175[80]]({where:{id:_0xdb89x28[_0xb175[79]][_0xb175[78]]}})[_0xb175[45]](handleEntityNotFound(_0xdb89x15,null,_0xb175[46]))[_0xb175[45]](saveUpdates(_0xdb89x28[_0xb175[82]],null,_0xb175[46]))[_0xb175[45]](respondWithResult(_0xdb89x15,null,_0xb175[46]))[_0xb175[75]](handleError(_0xdb89x15,null,_0xb175[46]))};exports[_0xb175[48]]= function(_0xdb89x28,_0xdb89x15){return db[_0xb175[56]][_0xb175[80]]({where:{id:_0xdb89x28[_0xb175[79]][_0xb175[78]]}})[_0xb175[45]](handleEntityNotFound(_0xdb89x15,null,_0xb175[48]))[_0xb175[45]](removeEntity(_0xdb89x15,null,_0xb175[48]))[_0xb175[75]](handleError(_0xdb89x15,null,_0xb175[48]))};exports[_0xb175[83]]= function(_0xdb89x28,_0xdb89x15){return db[_0xb175[56]][_0xb175[83]]()[_0xb175[45]](respondWithResult(_0xdb89x15,null,_0xb175[83]))[_0xb175[75]](handleError(_0xdb89x15,null,_0xb175[83]))}
\ No newline at end of file
+var _0x6723=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x6723[0];var jsonpatch=require(_0x6723[1]);var rp=require(_0x6723[2]);var moment=require(_0x6723[3]);var BPromise=require(_0x6723[4]);var util=require(_0x6723[5]);var path=require(_0x6723[6]);var sox=require(_0x6723[7]);var ejs=require(_0x6723[8]);var fs=require(_0x6723[9]);var _=require(_0x6723[10]);var squel=require(_0x6723[11]);var crypto=require(_0x6723[12]);var jsforce=require(_0x6723[13]);var toCsv=require(_0x6723[14]);var qs=require(_0x6723[15]);var logger=require(_0x6723[17])(_0x6723[16]);var utils=require(_0x6723[18]);var config=require(_0x6723[19]);var db=require(_0x6723[21])[_0x6723[20]];function respondWithStatusCode(_0x70f1x15,_0x70f1x16,_0x70f1x17){_0x70f1x16= _0x70f1x16|| 204;return function(_0x70f1x18){if(_0x70f1x18){logger[_0x6723[24]](_0x6723[22],_0x70f1x17,_0x70f1x16,_0x6723[23]);logger[_0x6723[26]](_0x6723[25],_0x70f1x17,_0x70f1x16,_0x6723[23]);return _0x70f1x15[_0x6723[27]](_0x70f1x16)};return _0x70f1x15[_0x6723[29]](304)[_0x6723[28]]()}}function respondWithResult(_0x70f1x15,_0x70f1x16,_0x70f1x17){_0x70f1x16= _0x70f1x16|| 200;return function(_0x70f1x18){if(_0x70f1x18){logger[_0x6723[24]](_0x6723[22],_0x70f1x17,_0x70f1x16,_0x6723[30]);logger[_0x6723[26]](_0x6723[25],_0x70f1x17,_0x70f1x16,_0x6723[30],JSON[_0x6723[31]](_0x70f1x18));return _0x70f1x15[_0x6723[29]](_0x70f1x16)[_0x6723[32]](_0x70f1x18)};return _0x70f1x15[_0x6723[29]](304)[_0x6723[28]]()}}function respondWithFilteredResult(_0x70f1x15,_0x70f1x1b,_0x70f1x17){return function(_0x70f1x18){if(_0x70f1x18){var _0x70f1x1c=_0x70f1x18[_0x6723[33]],_0x70f1x1d=_0x70f1x1b[_0x6723[34]],_0x70f1x1e=_0x70f1x1b[_0x6723[34]]+ _0x70f1x1b[_0x6723[35]],_0x70f1x16;if(_0x70f1x1e>= _0x70f1x1c){_0x70f1x1e= _0x70f1x1c;_0x70f1x16= 200}else {_0x70f1x16= 206};_0x70f1x15[_0x6723[29]](_0x70f1x16);logger[_0x6723[24]](_0x6723[22],_0x70f1x17,_0x70f1x16,_0x6723[36]);logger[_0x6723[26]](_0x6723[25],_0x70f1x17,_0x70f1x16,_0x6723[30],JSON[_0x6723[31]](_0x70f1x18));return _0x70f1x15[_0x6723[40]](_0x6723[37],_0x70f1x1d+ _0x6723[38]+ _0x70f1x1e+ _0x6723[39]+ _0x70f1x1c)[_0x6723[32]](_0x70f1x18)};return null}}function patchUpdates(_0x70f1x20){return function(_0x70f1x18){try{jsonpatch[_0x6723[41]](_0x70f1x18,_0x70f1x20,true)}catch(err){return BPromise[_0x6723[42]](err)};return _0x70f1x18[_0x6723[43]]()}}function saveUpdates(_0x70f1x22,_0x70f1x16,_0x70f1x17){return function(_0x70f1x18){if(_0x70f1x18){return _0x70f1x18[_0x6723[46]](_0x70f1x22)[_0x6723[45]](function(_0x70f1x23){logger[_0x6723[24]](_0x6723[22],_0x70f1x17,_0x70f1x16,_0x6723[44]);logger[_0x6723[26]](_0x6723[25],_0x70f1x17,_0x70f1x16,_0x6723[44],JSON[_0x6723[31]](_0x70f1x18));return _0x70f1x23})};return null}}function removeEntity(_0x70f1x15,_0x70f1x16,_0x70f1x17){return function(_0x70f1x18){if(_0x70f1x18){return _0x70f1x18[_0x6723[48]]()[_0x6723[45]](function(){logger[_0x6723[24]](_0x6723[22],_0x70f1x17,_0x70f1x16,_0x6723[47]);logger[_0x6723[26]](_0x6723[25],_0x70f1x17,_0x70f1x16,_0x6723[47],JSON[_0x6723[31]](_0x70f1x18));_0x70f1x15[_0x6723[29]](204)[_0x6723[28]]()})}}}function handleEntityNotFound(_0x70f1x15,_0x70f1x16,_0x70f1x17){return function(_0x70f1x18){if(!_0x70f1x18){logger[_0x6723[50]](_0x6723[22],_0x70f1x17,404,_0x6723[49]);_0x70f1x15[_0x6723[29]](404)[_0x6723[28]]();return null};return _0x70f1x18}}function handleError(_0x70f1x15,_0x70f1x16,_0x70f1x17){_0x70f1x16= _0x70f1x16|| 500;return function(_0x70f1x27){logger[_0x6723[50]](_0x6723[22],_0x70f1x17,_0x70f1x16,JSON[_0x6723[31]](_0x70f1x27));delete _0x70f1x27[_0x6723[51]];_0x70f1x15[_0x6723[29]](_0x70f1x16)[_0x6723[52]](_0x70f1x27)}}exports[_0x6723[53]]= function(_0x70f1x28,_0x70f1x15){var _0x70f1x1b={},_0x70f1x29={};_0x70f1x29[_0x6723[54]]= _[_0x6723[57]](db[_0x6723[56]][_0x6723[55]]);_0x70f1x29[_0x6723[58]]= _[_0x6723[57]](_0x70f1x28[_0x6723[58]]);_0x70f1x29[_0x6723[59]]= _[_0x6723[60]](_0x70f1x29[_0x6723[54]],_0x70f1x29[_0x6723[58]]);_0x70f1x1b[_0x6723[61]]= _[_0x6723[60]](_0x70f1x29[_0x6723[54]],qs[_0x6723[62]](_0x70f1x28[_0x6723[58]][_0x6723[62]]));_0x70f1x1b[_0x6723[61]]= (_0x70f1x1b[_0x6723[61]][_0x6723[63]])?_0x70f1x1b[_0x6723[61]]:_0x70f1x29[_0x6723[54]];if(!_0x70f1x28[_0x6723[58]][_0x6723[65]](_0x6723[64])){_0x70f1x1b[_0x6723[35]]= qs[_0x6723[35]](_0x70f1x28[_0x6723[58]][_0x6723[35]]);_0x70f1x1b[_0x6723[34]]= qs[_0x6723[34]](_0x70f1x28[_0x6723[58]][_0x6723[34]])};_0x70f1x1b[_0x6723[66]]= qs[_0x6723[67]](_0x70f1x28[_0x6723[58]][_0x6723[67]]);_0x70f1x1b[_0x6723[68]]= qs[_0x6723[59]](_[_0x6723[69]](_0x70f1x28[_0x6723[58]],_0x70f1x29[_0x6723[59]]));if(_0x70f1x28[_0x6723[58]][_0x6723[70]]){_0x70f1x1b[_0x6723[68]]= _[_0x6723[73]](_0x70f1x1b[_0x6723[68]],{$or:_[_0x6723[72]](_0x70f1x1b[_0x6723[61]],function(_0x70f1x2a){var _0x70f1x2b={};_0x70f1x2b[_0x70f1x2a]= {$like:_0x6723[71]+ _0x70f1x28[_0x6723[58]][_0x6723[70]]+ _0x6723[71]};return _0x70f1x2b})})};_0x70f1x1b= _[_0x6723[73]]({},_0x70f1x1b,_0x70f1x28[_0x6723[74]]);return db[_0x6723[56]][_0x6723[76]](_0x70f1x1b)[_0x6723[45]](respondWithFilteredResult(_0x70f1x15,_0x70f1x1b,_0x6723[53]))[_0x6723[75]](handleError(_0x70f1x15,null,_0x6723[53]))};exports[_0x6723[77]]= function(_0x70f1x28,_0x70f1x15){var _0x70f1x1b={raw:true,where:{id:_0x70f1x28[_0x6723[79]][_0x6723[78]]}},_0x70f1x29={};_0x70f1x29[_0x6723[54]]= _[_0x6723[57]](db[_0x6723[56]][_0x6723[55]]);_0x70f1x29[_0x6723[58]]= _[_0x6723[57]](_0x70f1x28[_0x6723[58]]);_0x70f1x29[_0x6723[59]]= _[_0x6723[60]](_0x70f1x29[_0x6723[54]],_0x70f1x29[_0x6723[58]]);_0x70f1x1b[_0x6723[61]]= _[_0x6723[60]](_0x70f1x29[_0x6723[54]],qs[_0x6723[62]](_0x70f1x28[_0x6723[58]][_0x6723[62]]));_0x70f1x1b[_0x6723[61]]= (_0x70f1x1b[_0x6723[61]][_0x6723[63]])?_0x70f1x1b[_0x6723[61]]:_0x70f1x29[_0x6723[54]];_0x70f1x1b= _[_0x6723[73]]({},_0x70f1x1b,_0x70f1x28[_0x6723[74]]);return db[_0x6723[56]][_0x6723[80]](_0x70f1x1b)[_0x6723[45]](handleEntityNotFound(_0x70f1x15,null,_0x6723[77]))[_0x6723[45]](respondWithResult(_0x70f1x15,null,_0x6723[77]))[_0x6723[75]](handleError(_0x70f1x15,null,_0x6723[77]))};exports[_0x6723[81]]= function(_0x70f1x28,_0x70f1x15){return db[_0x6723[56]][_0x6723[81]](_0x70f1x28[_0x6723[82]],{})[_0x6723[45]](respondWithResult(_0x70f1x15,201,_0x6723[81]))[_0x6723[75]](handleError(_0x70f1x15,null,_0x6723[81]))};exports[_0x6723[46]]= function(_0x70f1x28,_0x70f1x15){if(_0x70f1x28[_0x6723[82]][_0x6723[78]]){delete _0x70f1x28[_0x6723[82]][_0x6723[78]]};return db[_0x6723[56]][_0x6723[80]]({where:{id:_0x70f1x28[_0x6723[79]][_0x6723[78]]}})[_0x6723[45]](handleEntityNotFound(_0x70f1x15,null,_0x6723[46]))[_0x6723[45]](saveUpdates(_0x70f1x28[_0x6723[82]],null,_0x6723[46]))[_0x6723[45]](respondWithResult(_0x70f1x15,null,_0x6723[46]))[_0x6723[75]](handleError(_0x70f1x15,null,_0x6723[46]))};exports[_0x6723[48]]= function(_0x70f1x28,_0x70f1x15){return db[_0x6723[56]][_0x6723[80]]({where:{id:_0x70f1x28[_0x6723[79]][_0x6723[78]]}})[_0x6723[45]](handleEntityNotFound(_0x70f1x15,null,_0x6723[48]))[_0x6723[45]](removeEntity(_0x70f1x15,null,_0x6723[48]))[_0x6723[75]](handleError(_0x70f1x15,null,_0x6723[48]))};exports[_0x6723[83]]= function(_0x70f1x28,_0x70f1x15){return db[_0x6723[56]][_0x6723[83]]()[_0x6723[45]](respondWithResult(_0x70f1x15,null,_0x6723[83]))[_0x6723[75]](handleError(_0x70f1x15,null,_0x6723[83]))}
\ No newline at end of file
index c372e80..2b2791d 100644 (file)
@@ -1 +1 @@
-var _0xa682=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x66\x61\x78\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xa682[0];var _=require(_0xa682[1]);var util=require(_0xa682[2]);var logger=require(_0xa682[4])(_0xa682[3]);var attributes=require(_0xa682[5]);module[_0xa682[6]]= function(_0x5606x5,_0x5606x6){return _0x5606x5[_0xa682[9]](_0xa682[7],attributes,{tableName:_0xa682[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x9a77=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x66\x61\x78\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x9a77[0];var _=require(_0x9a77[1]);var util=require(_0x9a77[2]);var logger=require(_0x9a77[4])(_0x9a77[3]);var attributes=require(_0x9a77[5]);module[_0x9a77[6]]= function(_0x4dddx5,_0x4dddx6){return _0x4dddx5[_0x9a77[9]](_0x9a77[7],attributes,{tableName:_0x9a77[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
index 861186a..837f377 100644 (file)
@@ -1 +1 @@
-var _0xc6c6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xc6c6[0];var _=require(_0xc6c6[1]);var util=require(_0xc6c6[2]);var moment=require(_0xc6c6[3]);var BPromise=require(_0xc6c6[4]);var db=require(_0xc6c6[6])[_0xc6c6[5]];var utils=require(_0xc6c6[7]);var logger=require(_0xc6c6[9])(_0xc6c6[8]);var jayson=require(_0xc6c6[10]);var client=jayson[_0xc6c6[12]][_0xc6c6[11]]({port:9002});function respondWithRpcPromise(_0x3663xb,_0x3663xc,_0x3663xd){return  new BPromise(function(_0x3663xe,_0x3663xf){return client[_0xc6c6[25]](_0x3663xb,_0x3663xd)[_0xc6c6[24]](function(_0x3663x11){logger[_0xc6c6[17]](_0xc6c6[13],_0x3663xc,_0xc6c6[16]);logger[_0xc6c6[20]](_0xc6c6[18],_0x3663xc,_0xc6c6[16],JSON[_0xc6c6[19]](_0x3663x11));if(_0x3663x11[_0xc6c6[14]]){if(_0x3663x11[_0xc6c6[14]][_0xc6c6[21]]=== 500){logger[_0xc6c6[14]](_0xc6c6[13],_0x3663xc,_0x3663x11[_0xc6c6[14]][_0xc6c6[22]]);return _0x3663xf(_0x3663x11[_0xc6c6[14]][_0xc6c6[22]])};logger[_0xc6c6[14]](_0xc6c6[13],_0x3663xc,_0x3663x11[_0xc6c6[14]][_0xc6c6[22]]);return _0x3663xe(_0x3663x11[_0xc6c6[14]][_0xc6c6[22]])}else {logger[_0xc6c6[17]](_0xc6c6[13],_0x3663xc,_0xc6c6[16]);_0x3663xe(_0x3663x11[_0xc6c6[23]][_0xc6c6[22]])}})[_0xc6c6[15]](function(_0x3663x10){logger[_0xc6c6[14]](_0xc6c6[13],_0x3663xc,_0x3663x10);_0x3663xf(_0x3663x10)})})}
\ No newline at end of file
+var _0xec95=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xec95[0];var _=require(_0xec95[1]);var util=require(_0xec95[2]);var moment=require(_0xec95[3]);var BPromise=require(_0xec95[4]);var db=require(_0xec95[6])[_0xec95[5]];var utils=require(_0xec95[7]);var logger=require(_0xec95[9])(_0xec95[8]);var jayson=require(_0xec95[10]);var client=jayson[_0xec95[12]][_0xec95[11]]({port:9002});function respondWithRpcPromise(_0xa094xb,_0xa094xc,_0xa094xd){return  new BPromise(function(_0xa094xe,_0xa094xf){return client[_0xec95[25]](_0xa094xb,_0xa094xd)[_0xec95[24]](function(_0xa094x11){logger[_0xec95[17]](_0xec95[13],_0xa094xc,_0xec95[16]);logger[_0xec95[20]](_0xec95[18],_0xa094xc,_0xec95[16],JSON[_0xec95[19]](_0xa094x11));if(_0xa094x11[_0xec95[14]]){if(_0xa094x11[_0xec95[14]][_0xec95[21]]=== 500){logger[_0xec95[14]](_0xec95[13],_0xa094xc,_0xa094x11[_0xec95[14]][_0xec95[22]]);return _0xa094xf(_0xa094x11[_0xec95[14]][_0xec95[22]])};logger[_0xec95[14]](_0xec95[13],_0xa094xc,_0xa094x11[_0xec95[14]][_0xec95[22]]);return _0xa094xe(_0xa094x11[_0xec95[14]][_0xec95[22]])}else {logger[_0xec95[17]](_0xec95[13],_0xa094xc,_0xec95[16]);_0xa094xe(_0xa094x11[_0xec95[23]][_0xec95[22]])}})[_0xec95[15]](function(_0xa094x10){logger[_0xec95[14]](_0xec95[13],_0xa094xc,_0xa094x10);_0xa094xf(_0xa094x10)})})}
\ No newline at end of file
index e3ff6cf..8873e3a 100644 (file)
@@ -1 +1 @@
-var _0xa564=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa564[0];var multer=require(_0xa564[1]);var util=require(_0xa564[2]);var path=require(_0xa564[3]);var express=require(_0xa564[4]);var router=express.Router();var auth=require(_0xa564[5]);var config=require(_0xa564[6]);var controller=require(_0xa564[7]);router[_0xa564[11]](_0xa564[8],auth[_0xa564[9]](),controller[_0xa564[10]]);router[_0xa564[11]](_0xa564[12],auth[_0xa564[9]](),controller[_0xa564[13]]);router[_0xa564[11]](_0xa564[14],auth[_0xa564[9]](),controller[_0xa564[15]]);router[_0xa564[17]](_0xa564[8],auth[_0xa564[9]](),controller[_0xa564[16]]);router[_0xa564[19]](_0xa564[14],auth[_0xa564[9]](),controller[_0xa564[18]]);router[_0xa564[21]](_0xa564[14],auth[_0xa564[9]](),controller[_0xa564[20]]);module[_0xa564[22]]= router
\ No newline at end of file
+var _0xbd0b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xbd0b[0];var multer=require(_0xbd0b[1]);var util=require(_0xbd0b[2]);var path=require(_0xbd0b[3]);var express=require(_0xbd0b[4]);var router=express.Router();var auth=require(_0xbd0b[5]);var config=require(_0xbd0b[6]);var controller=require(_0xbd0b[7]);router[_0xbd0b[11]](_0xbd0b[8],auth[_0xbd0b[9]](),controller[_0xbd0b[10]]);router[_0xbd0b[11]](_0xbd0b[12],auth[_0xbd0b[9]](),controller[_0xbd0b[13]]);router[_0xbd0b[11]](_0xbd0b[14],auth[_0xbd0b[9]](),controller[_0xbd0b[15]]);router[_0xbd0b[17]](_0xbd0b[8],auth[_0xbd0b[9]](),controller[_0xbd0b[16]]);router[_0xbd0b[19]](_0xbd0b[14],auth[_0xbd0b[9]](),controller[_0xbd0b[18]]);router[_0xbd0b[21]](_0xbd0b[14],auth[_0xbd0b[9]](),controller[_0xbd0b[20]]);module[_0xbd0b[22]]= router
\ No newline at end of file
index 4ea4b72..6364d4f 100644 (file)
@@ -1 +1 @@
-var _0x83df=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0x83df[0];var Sequelize=require(_0x83df[1]);module[_0x83df[2]]= {name:{type:Sequelize[_0x83df[3]],unique:_0x83df[4],allowNull:false,validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0x83df[3]]},timeout:{type:Sequelize[_0x83df[5]],allowNull:false,validate:{min:1}},strategy:{type:Sequelize.ENUM(_0x83df[6],_0x83df[7],_0x83df[8]),allowNull:false},lastAgent:{type:Sequelize[_0x83df[5]],defaultValue:0}}
\ No newline at end of file
+var _0xf5fc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0xf5fc[0];var Sequelize=require(_0xf5fc[1]);module[_0xf5fc[2]]= {name:{type:Sequelize[_0xf5fc[3]],unique:_0xf5fc[4],allowNull:false,validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0xf5fc[3]]},timeout:{type:Sequelize[_0xf5fc[5]],allowNull:false,validate:{min:1}},strategy:{type:Sequelize.ENUM(_0xf5fc[6],_0xf5fc[7],_0xf5fc[8]),allowNull:false},lastAgent:{type:Sequelize[_0xf5fc[5]],defaultValue:0}}
\ No newline at end of file
index c7a301c..9ab6bbd 100644 (file)
@@ -1 +1 @@
-var _0x1d7e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0x1d7e[0];var jsonpatch=require(_0x1d7e[1]);var rp=require(_0x1d7e[2]);var moment=require(_0x1d7e[3]);var BPromise=require(_0x1d7e[4]);var util=require(_0x1d7e[5]);var path=require(_0x1d7e[6]);var sox=require(_0x1d7e[7]);var ejs=require(_0x1d7e[8]);var fs=require(_0x1d7e[9]);var _=require(_0x1d7e[10]);var squel=require(_0x1d7e[11]);var crypto=require(_0x1d7e[12]);var jsforce=require(_0x1d7e[13]);var toCsv=require(_0x1d7e[14]);var qs=require(_0x1d7e[15]);var logger=require(_0x1d7e[17])(_0x1d7e[16]);var utils=require(_0x1d7e[18]);var config=require(_0x1d7e[19]);var db=require(_0x1d7e[21])[_0x1d7e[20]];function respondWithStatusCode(_0x6108x15,_0x6108x16,_0x6108x17){_0x6108x16= _0x6108x16|| 204;return function(_0x6108x18){if(_0x6108x18){logger[_0x1d7e[24]](_0x1d7e[22],_0x6108x17,_0x6108x16,_0x1d7e[23]);logger[_0x1d7e[26]](_0x1d7e[25],_0x6108x17,_0x6108x16,_0x1d7e[23]);return _0x6108x15[_0x1d7e[27]](_0x6108x16)};return _0x6108x15[_0x1d7e[29]](304)[_0x1d7e[28]]()}}function respondWithResult(_0x6108x15,_0x6108x16,_0x6108x17){_0x6108x16= _0x6108x16|| 200;return function(_0x6108x18){if(_0x6108x18){logger[_0x1d7e[24]](_0x1d7e[22],_0x6108x17,_0x6108x16,_0x1d7e[30]);logger[_0x1d7e[26]](_0x1d7e[25],_0x6108x17,_0x6108x16,_0x1d7e[30],JSON[_0x1d7e[31]](_0x6108x18));return _0x6108x15[_0x1d7e[29]](_0x6108x16)[_0x1d7e[32]](_0x6108x18)};return _0x6108x15[_0x1d7e[29]](304)[_0x1d7e[28]]()}}function respondWithFilteredResult(_0x6108x15,_0x6108x1b,_0x6108x17){return function(_0x6108x18){if(_0x6108x18){var _0x6108x1c=_0x6108x18[_0x1d7e[33]],_0x6108x1d=_0x6108x1b[_0x1d7e[34]],_0x6108x1e=_0x6108x1b[_0x1d7e[34]]+ _0x6108x1b[_0x1d7e[35]],_0x6108x16;if(_0x6108x1e>= _0x6108x1c){_0x6108x1e= _0x6108x1c;_0x6108x16= 200}else {_0x6108x16= 206};_0x6108x15[_0x1d7e[29]](_0x6108x16);logger[_0x1d7e[24]](_0x1d7e[22],_0x6108x17,_0x6108x16,_0x1d7e[36]);logger[_0x1d7e[26]](_0x1d7e[25],_0x6108x17,_0x6108x16,_0x1d7e[30],JSON[_0x1d7e[31]](_0x6108x18));return _0x6108x15[_0x1d7e[40]](_0x1d7e[37],_0x6108x1d+ _0x1d7e[38]+ _0x6108x1e+ _0x1d7e[39]+ _0x6108x1c)[_0x1d7e[32]](_0x6108x18)};return null}}function patchUpdates(_0x6108x20){return function(_0x6108x18){try{jsonpatch[_0x1d7e[41]](_0x6108x18,_0x6108x20,true)}catch(err){return BPromise[_0x1d7e[42]](err)};return _0x6108x18[_0x1d7e[43]]()}}function saveUpdates(_0x6108x22,_0x6108x16,_0x6108x17){return function(_0x6108x18){if(_0x6108x18){return _0x6108x18[_0x1d7e[46]](_0x6108x22)[_0x1d7e[45]](function(_0x6108x23){logger[_0x1d7e[24]](_0x1d7e[22],_0x6108x17,_0x6108x16,_0x1d7e[44]);logger[_0x1d7e[26]](_0x1d7e[25],_0x6108x17,_0x6108x16,_0x1d7e[44],JSON[_0x1d7e[31]](_0x6108x18));return _0x6108x23})};return null}}function removeEntity(_0x6108x15,_0x6108x16,_0x6108x17){return function(_0x6108x18){if(_0x6108x18){return _0x6108x18[_0x1d7e[48]]()[_0x1d7e[45]](function(){logger[_0x1d7e[24]](_0x1d7e[22],_0x6108x17,_0x6108x16,_0x1d7e[47]);logger[_0x1d7e[26]](_0x1d7e[25],_0x6108x17,_0x6108x16,_0x1d7e[47],JSON[_0x1d7e[31]](_0x6108x18));_0x6108x15[_0x1d7e[29]](204)[_0x1d7e[28]]()})}}}function handleEntityNotFound(_0x6108x15,_0x6108x16,_0x6108x17){return function(_0x6108x18){if(!_0x6108x18){logger[_0x1d7e[50]](_0x1d7e[22],_0x6108x17,404,_0x1d7e[49]);_0x6108x15[_0x1d7e[29]](404)[_0x1d7e[28]]();return null};return _0x6108x18}}function handleError(_0x6108x15,_0x6108x16,_0x6108x17){_0x6108x16= _0x6108x16|| 500;return function(_0x6108x27){logger[_0x1d7e[50]](_0x1d7e[22],_0x6108x17,_0x6108x16,JSON[_0x1d7e[31]](_0x6108x27));delete _0x6108x27[_0x1d7e[51]];_0x6108x15[_0x1d7e[29]](_0x6108x16)[_0x1d7e[52]](_0x6108x27)}}exports[_0x1d7e[53]]= function(_0x6108x28,_0x6108x15){var _0x6108x1b={},_0x6108x29={};_0x6108x29[_0x1d7e[54]]= _[_0x1d7e[57]](db[_0x1d7e[56]][_0x1d7e[55]]);_0x6108x29[_0x1d7e[58]]= _[_0x1d7e[57]](_0x6108x28[_0x1d7e[58]]);_0x6108x29[_0x1d7e[59]]= _[_0x1d7e[60]](_0x6108x29[_0x1d7e[54]],_0x6108x29[_0x1d7e[58]]);_0x6108x1b[_0x1d7e[61]]= _[_0x1d7e[60]](_0x6108x29[_0x1d7e[54]],qs[_0x1d7e[62]](_0x6108x28[_0x1d7e[58]][_0x1d7e[62]]));_0x6108x1b[_0x1d7e[61]]= (_0x6108x1b[_0x1d7e[61]][_0x1d7e[63]])?_0x6108x1b[_0x1d7e[61]]:_0x6108x29[_0x1d7e[54]];if(!_0x6108x28[_0x1d7e[58]][_0x1d7e[65]](_0x1d7e[64])){_0x6108x1b[_0x1d7e[35]]= qs[_0x1d7e[35]](_0x6108x28[_0x1d7e[58]][_0x1d7e[35]]);_0x6108x1b[_0x1d7e[34]]= qs[_0x1d7e[34]](_0x6108x28[_0x1d7e[58]][_0x1d7e[34]])};_0x6108x1b[_0x1d7e[66]]= qs[_0x1d7e[67]](_0x6108x28[_0x1d7e[58]][_0x1d7e[67]]);_0x6108x1b[_0x1d7e[68]]= qs[_0x1d7e[59]](_[_0x1d7e[69]](_0x6108x28[_0x1d7e[58]],_0x6108x29[_0x1d7e[59]]));if(_0x6108x28[_0x1d7e[58]][_0x1d7e[70]]){_0x6108x1b[_0x1d7e[68]]= _[_0x1d7e[73]](_0x6108x1b[_0x1d7e[68]],{$or:_[_0x1d7e[72]](_0x6108x1b[_0x1d7e[61]],function(_0x6108x2a){var _0x6108x2b={};_0x6108x2b[_0x6108x2a]= {$like:_0x1d7e[71]+ _0x6108x28[_0x1d7e[58]][_0x1d7e[70]]+ _0x1d7e[71]};return _0x6108x2b})})};_0x6108x1b= _[_0x1d7e[73]]({},_0x6108x1b,_0x6108x28[_0x1d7e[74]]);return db[_0x1d7e[56]][_0x1d7e[76]](_0x6108x1b)[_0x1d7e[45]](respondWithFilteredResult(_0x6108x15,_0x6108x1b,_0x1d7e[53]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[53]))};exports[_0x1d7e[77]]= function(_0x6108x28,_0x6108x15){var _0x6108x1b={raw:true,where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}},_0x6108x29={};_0x6108x29[_0x1d7e[54]]= _[_0x1d7e[57]](db[_0x1d7e[56]][_0x1d7e[55]]);_0x6108x29[_0x1d7e[58]]= _[_0x1d7e[57]](_0x6108x28[_0x1d7e[58]]);_0x6108x29[_0x1d7e[59]]= _[_0x1d7e[60]](_0x6108x29[_0x1d7e[54]],_0x6108x29[_0x1d7e[58]]);_0x6108x1b[_0x1d7e[61]]= _[_0x1d7e[60]](_0x6108x29[_0x1d7e[54]],qs[_0x1d7e[62]](_0x6108x28[_0x1d7e[58]][_0x1d7e[62]]));_0x6108x1b[_0x1d7e[61]]= (_0x6108x1b[_0x1d7e[61]][_0x1d7e[63]])?_0x6108x1b[_0x1d7e[61]]:_0x6108x29[_0x1d7e[54]];_0x6108x1b= _[_0x1d7e[73]]({},_0x6108x1b,_0x6108x28[_0x1d7e[74]]);return db[_0x1d7e[56]][_0x1d7e[80]](_0x6108x1b)[_0x1d7e[45]](handleEntityNotFound(_0x6108x15,null,_0x1d7e[77]))[_0x1d7e[45]](respondWithResult(_0x6108x15,null,_0x1d7e[77]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[77]))};exports[_0x1d7e[81]]= function(_0x6108x28,_0x6108x15){return db[_0x1d7e[56]][_0x1d7e[81]](_0x6108x28[_0x1d7e[82]],{})[_0x1d7e[45]](respondWithResult(_0x6108x15,201,_0x1d7e[81]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[81]))};exports[_0x1d7e[46]]= function(_0x6108x28,_0x6108x15){if(_0x6108x28[_0x1d7e[82]][_0x1d7e[78]]){delete _0x6108x28[_0x1d7e[82]][_0x1d7e[78]]};return db[_0x1d7e[56]][_0x1d7e[80]]({where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}})[_0x1d7e[45]](handleEntityNotFound(_0x6108x15,null,_0x1d7e[46]))[_0x1d7e[45]](saveUpdates(_0x6108x28[_0x1d7e[82]],null,_0x1d7e[46]))[_0x1d7e[45]](respondWithResult(_0x6108x15,null,_0x1d7e[46]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[46]))};exports[_0x1d7e[48]]= function(_0x6108x28,_0x6108x15){return db[_0x1d7e[56]][_0x1d7e[80]]({where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}})[_0x1d7e[45]](handleEntityNotFound(_0x6108x15,null,_0x1d7e[48]))[_0x1d7e[45]](removeEntity(_0x6108x15,null,_0x1d7e[48]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[48]))};exports[_0x1d7e[83]]= function(_0x6108x28,_0x6108x18,_0x6108x2c){var _0x6108x1b={};var _0x6108x29={};var _0x6108x2d;var _0x6108x1c;return db[_0x1d7e[56]][_0x1d7e[85]]({where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}})[_0x1d7e[45]](handleEntityNotFound(_0x6108x18,null,_0x1d7e[83]))[_0x1d7e[45]](function(_0x6108x18){if(_0x6108x18){_0x6108x2d= _0x6108x18;_0x6108x29[_0x1d7e[54]]= _[_0x1d7e[57]](db[_0x1d7e[84]][_0x1d7e[55]]);_0x6108x29[_0x1d7e[58]]= _[_0x1d7e[57]](_0x6108x28[_0x1d7e[58]]);_0x6108x29[_0x1d7e[59]]= _[_0x1d7e[60]](_0x6108x29[_0x1d7e[54]],_0x6108x29[_0x1d7e[58]]);_0x6108x1b[_0x1d7e[61]]= _[_0x1d7e[60]](_0x6108x29[_0x1d7e[54]],qs[_0x1d7e[62]](_0x6108x28[_0x1d7e[58]][_0x1d7e[62]]));_0x6108x1b[_0x1d7e[61]]= (_0x6108x1b[_0x1d7e[61]][_0x1d7e[63]])?_0x6108x1b[_0x1d7e[61]]:_0x6108x29[_0x1d7e[54]];_0x6108x1b[_0x1d7e[66]]= qs[_0x1d7e[67]](_0x6108x28[_0x1d7e[58]][_0x1d7e[67]]);_0x6108x1b[_0x1d7e[68]]= qs[_0x1d7e[59]](_[_0x1d7e[69]](_0x6108x28[_0x1d7e[58]],_0x6108x29[_0x1d7e[59]]));if(_0x6108x28[_0x1d7e[58]][_0x1d7e[70]]){_0x6108x1b[_0x1d7e[68]]= _[_0x1d7e[73]](_0x6108x1b[_0x1d7e[68]],{$or:_[_0x1d7e[72]](_0x6108x1b[_0x1d7e[61]],function(_0x6108x2a){var _0x6108x2b={};_0x6108x2b[_0x6108x2a]= {$like:_0x1d7e[71]+ _0x6108x28[_0x1d7e[58]][_0x1d7e[70]]+ _0x1d7e[71]};return _0x6108x2b})})};_0x6108x1b= _[_0x1d7e[73]]({},_0x6108x1b,_0x6108x28[_0x1d7e[74]]);return _0x6108x2d[_0x1d7e[83]](_0x6108x1b)}})[_0x1d7e[45]](function(_0x6108x2f){if(_0x6108x2f){_0x6108x1c= _0x6108x2f[_0x1d7e[63]];if(!_0x6108x28[_0x1d7e[58]][_0x1d7e[65]](_0x1d7e[64])){_0x6108x1b[_0x1d7e[35]]= qs[_0x1d7e[35]](_0x6108x28[_0x1d7e[58]][_0x1d7e[35]]);_0x6108x1b[_0x1d7e[34]]= qs[_0x1d7e[34]](_0x6108x28[_0x1d7e[58]][_0x1d7e[34]])};return _0x6108x2d[_0x1d7e[83]](_0x6108x1b)}})[_0x1d7e[45]](function(_0x6108x2e){return _0x6108x2e?{count:_0x6108x1c,rows:_0x6108x2e}:null})[_0x1d7e[45]](respondWithResult(_0x6108x18,null,_0x1d7e[83]))[_0x1d7e[75]](handleError(_0x6108x18,null,_0x1d7e[83]))};exports[_0x1d7e[86]]= function(_0x6108x28,_0x6108x15,_0x6108x2c){var _0x6108x30=[];var _0x6108x31;return db[_0x1d7e[84]][_0x1d7e[93]]({where:{id:_0x6108x28[_0x1d7e[82]][_0x1d7e[87]]},attributes:[_0x1d7e[78]],include:[{model:db[_0x1d7e[92]],as:_0x1d7e[90],attributes:[_0x1d7e[78]],raw:true}]})[_0x1d7e[45]](function(_0x6108x34){if(_0x6108x34){for(var _0x6108x35=0;_0x6108x35< _0x6108x34[_0x1d7e[63]];_0x6108x35+= 1){for(var _0x6108x36=0;_0x6108x36< _0x6108x34[_0x6108x35][_0x1d7e[90]][_0x1d7e[63]];_0x6108x36+= 1){_0x6108x30= _[_0x1d7e[91]](_0x6108x30,[_0x6108x34[_0x6108x35][_0x1d7e[90]][_0x6108x36][_0x1d7e[78]]])}};return _0x6108x30}})[_0x1d7e[45]](function(_0x6108x33){if(_0x6108x33){return db[_0x1d7e[56]][_0x1d7e[80]]({where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}})}})[_0x1d7e[45]](function(_0x6108x32){if(_0x6108x32){_0x6108x31= _0x6108x32;return _0x6108x31[_0x1d7e[89]](_0x6108x30,{penalty:_0x6108x28[_0x1d7e[82]][_0x1d7e[88]]})}})[_0x1d7e[45]](function(_0x6108x18){if(_0x6108x18){return _0x6108x31[_0x1d7e[86]](_0x6108x28[_0x1d7e[82]][_0x1d7e[87]])}})[_0x1d7e[45]](handleEntityNotFound(_0x6108x15,null,_0x1d7e[86]))[_0x1d7e[45]](respondWithStatusCode(_0x6108x15,null,_0x1d7e[86]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[86]))};exports[_0x1d7e[94]]= function(_0x6108x28,_0x6108x15,_0x6108x2c){var _0x6108x30=[];var _0x6108x31;return db[_0x1d7e[84]][_0x1d7e[93]]({where:{id:_0x6108x28[_0x1d7e[58]][_0x1d7e[87]]},attributes:[_0x1d7e[78]],include:[{model:db[_0x1d7e[92]],as:_0x1d7e[90],attributes:[_0x1d7e[78]],raw:true}]})[_0x1d7e[45]](function(_0x6108x34){if(_0x6108x34){for(var _0x6108x35=0;_0x6108x35< _0x6108x34[_0x1d7e[63]];_0x6108x35+= 1){for(var _0x6108x36=0;_0x6108x36< _0x6108x34[_0x6108x35][_0x1d7e[90]][_0x1d7e[63]];_0x6108x36+= 1){_0x6108x30= _[_0x1d7e[91]](_0x6108x30,[_0x6108x34[_0x6108x35][_0x1d7e[90]][_0x6108x36][_0x1d7e[78]]])}};return _0x6108x30}})[_0x1d7e[45]](function(_0x6108x33){if(_0x6108x33){return db[_0x1d7e[56]][_0x1d7e[80]]({where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}})}})[_0x1d7e[45]](function(_0x6108x32){if(_0x6108x32){_0x6108x31= _0x6108x32;return _0x6108x31[_0x1d7e[95]](_0x6108x30)}})[_0x1d7e[45]](function(_0x6108x18){if(_0x6108x31){return _0x6108x31[_0x1d7e[94]](_0x6108x28[_0x1d7e[58]][_0x1d7e[87]])}})[_0x1d7e[45]](handleEntityNotFound(_0x6108x15,null,_0x1d7e[94]))[_0x1d7e[45]](respondWithStatusCode(_0x6108x15,null,_0x1d7e[94]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[94]))};exports[_0x1d7e[89]]= function(_0x6108x28,_0x6108x15,_0x6108x2c){return db[_0x1d7e[56]][_0x1d7e[80]]({where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}})[_0x1d7e[45]](handleEntityNotFound(_0x6108x15,null,_0x1d7e[89]))[_0x1d7e[45]](function(_0x6108x18){if(_0x6108x18){return _0x6108x18[_0x1d7e[89]](_0x6108x28[_0x1d7e[82]][_0x1d7e[87]],_[_0x1d7e[96]](_0x6108x28[_0x1d7e[82]],[_0x1d7e[87],_0x1d7e[78]])|| {})};return null})[_0x1d7e[45]](respondWithResult(_0x6108x15,null,_0x1d7e[89]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[89]))};exports[_0x1d7e[95]]= function(_0x6108x28,_0x6108x15,_0x6108x2c){var _0x6108x2f;return db[_0x1d7e[56]][_0x1d7e[80]]({where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}})[_0x1d7e[45]](handleEntityNotFound(_0x6108x15,null,_0x1d7e[95]))[_0x1d7e[45]](function(_0x6108x18){if(_0x6108x18){return _0x6108x18[_0x1d7e[95]](_0x6108x28[_0x1d7e[58]][_0x1d7e[87]])}})[_0x1d7e[45]](respondWithStatusCode(_0x6108x15,null,_0x1d7e[95]))[_0x1d7e[75]](handleError(_0x6108x15,null,_0x1d7e[95]))};exports[_0x1d7e[97]]= function(_0x6108x28,_0x6108x18,_0x6108x2c){var _0x6108x1b={};var _0x6108x29={};var _0x6108x2d;var _0x6108x1c;return db[_0x1d7e[56]][_0x1d7e[85]]({where:{id:_0x6108x28[_0x1d7e[79]][_0x1d7e[78]]}})[_0x1d7e[45]](handleEntityNotFound(_0x6108x18,null,_0x1d7e[97]))[_0x1d7e[45]](function(_0x6108x18){if(_0x6108x18){_0x6108x2d= _0x6108x18;_0x6108x29[_0x1d7e[54]]= _[_0x1d7e[57]](db[_0x1d7e[92]][_0x1d7e[55]]);_0x6108x29[_0x1d7e[58]]= _[_0x1d7e[57]](_0x6108x28[_0x1d7e[58]]);_0x6108x29[_0x1d7e[59]]= _[_0x1d7e[60]](_0x6108x29[_0x1d7e[54]],_0x6108x29[_0x1d7e[58]]);_0x6108x1b[_0x1d7e[61]]= _[_0x1d7e[60]](_0x6108x29[_0x1d7e[54]],qs[_0x1d7e[62]](_0x6108x28[_0x1d7e[58]][_0x1d7e[62]]));_0x6108x1b[_0x1d7e[61]]= (_0x6108x1b[_0x1d7e[61]][_0x1d7e[63]])?_0x6108x1b[_0x1d7e[61]]:_0x6108x29[_0x1d7e[54]];_0x6108x1b[_0x1d7e[66]]= qs[_0x1d7e[67]](_0x6108x28[_0x1d7e[58]][_0x1d7e[67]]);_0x6108x1b[_0x1d7e[68]]= qs[_0x1d7e[59]](_[_0x1d7e[69]](_0x6108x28[_0x1d7e[58]],_0x6108x29[_0x1d7e[59]]));if(_0x6108x28[_0x1d7e[58]][_0x1d7e[70]]){_0x6108x1b[_0x1d7e[68]]= _[_0x1d7e[73]](_0x6108x1b[_0x1d7e[68]],{$or:_[_0x1d7e[72]](_0x6108x1b[_0x1d7e[61]],function(_0x6108x2a){var _0x6108x2b={};_0x6108x2b[_0x6108x2a]= {$like:_0x1d7e[71]+ _0x6108x28[_0x1d7e[58]][_0x1d7e[70]]+ _0x1d7e[71]};return _0x6108x2b})})};_0x6108x1b= _[_0x1d7e[73]]({},_0x6108x1b,_0x6108x28[_0x1d7e[74]]);return _0x6108x2d[_0x1d7e[97]](_0x6108x1b)}})[_0x1d7e[45]](function(_0x6108x2f){if(_0x6108x2f){_0x6108x1c= _0x6108x2f[_0x1d7e[63]];if(!_0x6108x28[_0x1d7e[58]][_0x1d7e[65]](_0x1d7e[64])){_0x6108x1b[_0x1d7e[35]]= qs[_0x1d7e[35]](_0x6108x28[_0x1d7e[58]][_0x1d7e[35]]);_0x6108x1b[_0x1d7e[34]]= qs[_0x1d7e[34]](_0x6108x28[_0x1d7e[58]][_0x1d7e[34]])};return _0x6108x2d[_0x1d7e[97]](_0x6108x1b)}})[_0x1d7e[45]](function(_0x6108x2e){return _0x6108x2e?{count:_0x6108x1c,rows:_0x6108x2e}:null})[_0x1d7e[45]](respondWithResult(_0x6108x18,null,_0x1d7e[97]))[_0x1d7e[75]](handleError(_0x6108x18,null,_0x1d7e[97]))}
\ No newline at end of file
+var _0x2efb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0x2efb[0];var jsonpatch=require(_0x2efb[1]);var rp=require(_0x2efb[2]);var moment=require(_0x2efb[3]);var BPromise=require(_0x2efb[4]);var util=require(_0x2efb[5]);var path=require(_0x2efb[6]);var sox=require(_0x2efb[7]);var ejs=require(_0x2efb[8]);var fs=require(_0x2efb[9]);var _=require(_0x2efb[10]);var squel=require(_0x2efb[11]);var crypto=require(_0x2efb[12]);var jsforce=require(_0x2efb[13]);var toCsv=require(_0x2efb[14]);var qs=require(_0x2efb[15]);var logger=require(_0x2efb[17])(_0x2efb[16]);var utils=require(_0x2efb[18]);var config=require(_0x2efb[19]);var db=require(_0x2efb[21])[_0x2efb[20]];function respondWithStatusCode(_0xa75ex15,_0xa75ex16,_0xa75ex17){_0xa75ex16= _0xa75ex16|| 204;return function(_0xa75ex18){if(_0xa75ex18){logger[_0x2efb[24]](_0x2efb[22],_0xa75ex17,_0xa75ex16,_0x2efb[23]);logger[_0x2efb[26]](_0x2efb[25],_0xa75ex17,_0xa75ex16,_0x2efb[23]);return _0xa75ex15[_0x2efb[27]](_0xa75ex16)};return _0xa75ex15[_0x2efb[29]](304)[_0x2efb[28]]()}}function respondWithResult(_0xa75ex15,_0xa75ex16,_0xa75ex17){_0xa75ex16= _0xa75ex16|| 200;return function(_0xa75ex18){if(_0xa75ex18){logger[_0x2efb[24]](_0x2efb[22],_0xa75ex17,_0xa75ex16,_0x2efb[30]);logger[_0x2efb[26]](_0x2efb[25],_0xa75ex17,_0xa75ex16,_0x2efb[30],JSON[_0x2efb[31]](_0xa75ex18));return _0xa75ex15[_0x2efb[29]](_0xa75ex16)[_0x2efb[32]](_0xa75ex18)};return _0xa75ex15[_0x2efb[29]](304)[_0x2efb[28]]()}}function respondWithFilteredResult(_0xa75ex15,_0xa75ex1b,_0xa75ex17){return function(_0xa75ex18){if(_0xa75ex18){var _0xa75ex1c=_0xa75ex18[_0x2efb[33]],_0xa75ex1d=_0xa75ex1b[_0x2efb[34]],_0xa75ex1e=_0xa75ex1b[_0x2efb[34]]+ _0xa75ex1b[_0x2efb[35]],_0xa75ex16;if(_0xa75ex1e>= _0xa75ex1c){_0xa75ex1e= _0xa75ex1c;_0xa75ex16= 200}else {_0xa75ex16= 206};_0xa75ex15[_0x2efb[29]](_0xa75ex16);logger[_0x2efb[24]](_0x2efb[22],_0xa75ex17,_0xa75ex16,_0x2efb[36]);logger[_0x2efb[26]](_0x2efb[25],_0xa75ex17,_0xa75ex16,_0x2efb[30],JSON[_0x2efb[31]](_0xa75ex18));return _0xa75ex15[_0x2efb[40]](_0x2efb[37],_0xa75ex1d+ _0x2efb[38]+ _0xa75ex1e+ _0x2efb[39]+ _0xa75ex1c)[_0x2efb[32]](_0xa75ex18)};return null}}function patchUpdates(_0xa75ex20){return function(_0xa75ex18){try{jsonpatch[_0x2efb[41]](_0xa75ex18,_0xa75ex20,true)}catch(err){return BPromise[_0x2efb[42]](err)};return _0xa75ex18[_0x2efb[43]]()}}function saveUpdates(_0xa75ex22,_0xa75ex16,_0xa75ex17){return function(_0xa75ex18){if(_0xa75ex18){return _0xa75ex18[_0x2efb[46]](_0xa75ex22)[_0x2efb[45]](function(_0xa75ex23){logger[_0x2efb[24]](_0x2efb[22],_0xa75ex17,_0xa75ex16,_0x2efb[44]);logger[_0x2efb[26]](_0x2efb[25],_0xa75ex17,_0xa75ex16,_0x2efb[44],JSON[_0x2efb[31]](_0xa75ex18));return _0xa75ex23})};return null}}function removeEntity(_0xa75ex15,_0xa75ex16,_0xa75ex17){return function(_0xa75ex18){if(_0xa75ex18){return _0xa75ex18[_0x2efb[48]]()[_0x2efb[45]](function(){logger[_0x2efb[24]](_0x2efb[22],_0xa75ex17,_0xa75ex16,_0x2efb[47]);logger[_0x2efb[26]](_0x2efb[25],_0xa75ex17,_0xa75ex16,_0x2efb[47],JSON[_0x2efb[31]](_0xa75ex18));_0xa75ex15[_0x2efb[29]](204)[_0x2efb[28]]()})}}}function handleEntityNotFound(_0xa75ex15,_0xa75ex16,_0xa75ex17){return function(_0xa75ex18){if(!_0xa75ex18){logger[_0x2efb[50]](_0x2efb[22],_0xa75ex17,404,_0x2efb[49]);_0xa75ex15[_0x2efb[29]](404)[_0x2efb[28]]();return null};return _0xa75ex18}}function handleError(_0xa75ex15,_0xa75ex16,_0xa75ex17){_0xa75ex16= _0xa75ex16|| 500;return function(_0xa75ex27){logger[_0x2efb[50]](_0x2efb[22],_0xa75ex17,_0xa75ex16,JSON[_0x2efb[31]](_0xa75ex27));delete _0xa75ex27[_0x2efb[51]];_0xa75ex15[_0x2efb[29]](_0xa75ex16)[_0x2efb[52]](_0xa75ex27)}}exports[_0x2efb[53]]= function(_0xa75ex28,_0xa75ex15){var _0xa75ex1b={},_0xa75ex29={};_0xa75ex29[_0x2efb[54]]= _[_0x2efb[57]](db[_0x2efb[56]][_0x2efb[55]]);_0xa75ex29[_0x2efb[58]]= _[_0x2efb[57]](_0xa75ex28[_0x2efb[58]]);_0xa75ex29[_0x2efb[59]]= _[_0x2efb[60]](_0xa75ex29[_0x2efb[54]],_0xa75ex29[_0x2efb[58]]);_0xa75ex1b[_0x2efb[61]]= _[_0x2efb[60]](_0xa75ex29[_0x2efb[54]],qs[_0x2efb[62]](_0xa75ex28[_0x2efb[58]][_0x2efb[62]]));_0xa75ex1b[_0x2efb[61]]= (_0xa75ex1b[_0x2efb[61]][_0x2efb[63]])?_0xa75ex1b[_0x2efb[61]]:_0xa75ex29[_0x2efb[54]];if(!_0xa75ex28[_0x2efb[58]][_0x2efb[65]](_0x2efb[64])){_0xa75ex1b[_0x2efb[35]]= qs[_0x2efb[35]](_0xa75ex28[_0x2efb[58]][_0x2efb[35]]);_0xa75ex1b[_0x2efb[34]]= qs[_0x2efb[34]](_0xa75ex28[_0x2efb[58]][_0x2efb[34]])};_0xa75ex1b[_0x2efb[66]]= qs[_0x2efb[67]](_0xa75ex28[_0x2efb[58]][_0x2efb[67]]);_0xa75ex1b[_0x2efb[68]]= qs[_0x2efb[59]](_[_0x2efb[69]](_0xa75ex28[_0x2efb[58]],_0xa75ex29[_0x2efb[59]]));if(_0xa75ex28[_0x2efb[58]][_0x2efb[70]]){_0xa75ex1b[_0x2efb[68]]= _[_0x2efb[73]](_0xa75ex1b[_0x2efb[68]],{$or:_[_0x2efb[72]](_0xa75ex1b[_0x2efb[61]],function(_0xa75ex2a){var _0xa75ex2b={};_0xa75ex2b[_0xa75ex2a]= {$like:_0x2efb[71]+ _0xa75ex28[_0x2efb[58]][_0x2efb[70]]+ _0x2efb[71]};return _0xa75ex2b})})};_0xa75ex1b= _[_0x2efb[73]]({},_0xa75ex1b,_0xa75ex28[_0x2efb[74]]);return db[_0x2efb[56]][_0x2efb[76]](_0xa75ex1b)[_0x2efb[45]](respondWithFilteredResult(_0xa75ex15,_0xa75ex1b,_0x2efb[53]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[53]))};exports[_0x2efb[77]]= function(_0xa75ex28,_0xa75ex15){var _0xa75ex1b={raw:true,where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}},_0xa75ex29={};_0xa75ex29[_0x2efb[54]]= _[_0x2efb[57]](db[_0x2efb[56]][_0x2efb[55]]);_0xa75ex29[_0x2efb[58]]= _[_0x2efb[57]](_0xa75ex28[_0x2efb[58]]);_0xa75ex29[_0x2efb[59]]= _[_0x2efb[60]](_0xa75ex29[_0x2efb[54]],_0xa75ex29[_0x2efb[58]]);_0xa75ex1b[_0x2efb[61]]= _[_0x2efb[60]](_0xa75ex29[_0x2efb[54]],qs[_0x2efb[62]](_0xa75ex28[_0x2efb[58]][_0x2efb[62]]));_0xa75ex1b[_0x2efb[61]]= (_0xa75ex1b[_0x2efb[61]][_0x2efb[63]])?_0xa75ex1b[_0x2efb[61]]:_0xa75ex29[_0x2efb[54]];_0xa75ex1b= _[_0x2efb[73]]({},_0xa75ex1b,_0xa75ex28[_0x2efb[74]]);return db[_0x2efb[56]][_0x2efb[80]](_0xa75ex1b)[_0x2efb[45]](handleEntityNotFound(_0xa75ex15,null,_0x2efb[77]))[_0x2efb[45]](respondWithResult(_0xa75ex15,null,_0x2efb[77]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[77]))};exports[_0x2efb[81]]= function(_0xa75ex28,_0xa75ex15){return db[_0x2efb[56]][_0x2efb[81]](_0xa75ex28[_0x2efb[82]],{})[_0x2efb[45]](respondWithResult(_0xa75ex15,201,_0x2efb[81]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[81]))};exports[_0x2efb[46]]= function(_0xa75ex28,_0xa75ex15){if(_0xa75ex28[_0x2efb[82]][_0x2efb[78]]){delete _0xa75ex28[_0x2efb[82]][_0x2efb[78]]};return db[_0x2efb[56]][_0x2efb[80]]({where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}})[_0x2efb[45]](handleEntityNotFound(_0xa75ex15,null,_0x2efb[46]))[_0x2efb[45]](saveUpdates(_0xa75ex28[_0x2efb[82]],null,_0x2efb[46]))[_0x2efb[45]](respondWithResult(_0xa75ex15,null,_0x2efb[46]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[46]))};exports[_0x2efb[48]]= function(_0xa75ex28,_0xa75ex15){return db[_0x2efb[56]][_0x2efb[80]]({where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}})[_0x2efb[45]](handleEntityNotFound(_0xa75ex15,null,_0x2efb[48]))[_0x2efb[45]](removeEntity(_0xa75ex15,null,_0x2efb[48]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[48]))};exports[_0x2efb[83]]= function(_0xa75ex28,_0xa75ex18,_0xa75ex2c){var _0xa75ex1b={};var _0xa75ex29={};var _0xa75ex2d;var _0xa75ex1c;return db[_0x2efb[56]][_0x2efb[85]]({where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}})[_0x2efb[45]](handleEntityNotFound(_0xa75ex18,null,_0x2efb[83]))[_0x2efb[45]](function(_0xa75ex18){if(_0xa75ex18){_0xa75ex2d= _0xa75ex18;_0xa75ex29[_0x2efb[54]]= _[_0x2efb[57]](db[_0x2efb[84]][_0x2efb[55]]);_0xa75ex29[_0x2efb[58]]= _[_0x2efb[57]](_0xa75ex28[_0x2efb[58]]);_0xa75ex29[_0x2efb[59]]= _[_0x2efb[60]](_0xa75ex29[_0x2efb[54]],_0xa75ex29[_0x2efb[58]]);_0xa75ex1b[_0x2efb[61]]= _[_0x2efb[60]](_0xa75ex29[_0x2efb[54]],qs[_0x2efb[62]](_0xa75ex28[_0x2efb[58]][_0x2efb[62]]));_0xa75ex1b[_0x2efb[61]]= (_0xa75ex1b[_0x2efb[61]][_0x2efb[63]])?_0xa75ex1b[_0x2efb[61]]:_0xa75ex29[_0x2efb[54]];_0xa75ex1b[_0x2efb[66]]= qs[_0x2efb[67]](_0xa75ex28[_0x2efb[58]][_0x2efb[67]]);_0xa75ex1b[_0x2efb[68]]= qs[_0x2efb[59]](_[_0x2efb[69]](_0xa75ex28[_0x2efb[58]],_0xa75ex29[_0x2efb[59]]));if(_0xa75ex28[_0x2efb[58]][_0x2efb[70]]){_0xa75ex1b[_0x2efb[68]]= _[_0x2efb[73]](_0xa75ex1b[_0x2efb[68]],{$or:_[_0x2efb[72]](_0xa75ex1b[_0x2efb[61]],function(_0xa75ex2a){var _0xa75ex2b={};_0xa75ex2b[_0xa75ex2a]= {$like:_0x2efb[71]+ _0xa75ex28[_0x2efb[58]][_0x2efb[70]]+ _0x2efb[71]};return _0xa75ex2b})})};_0xa75ex1b= _[_0x2efb[73]]({},_0xa75ex1b,_0xa75ex28[_0x2efb[74]]);return _0xa75ex2d[_0x2efb[83]](_0xa75ex1b)}})[_0x2efb[45]](function(_0xa75ex2f){if(_0xa75ex2f){_0xa75ex1c= _0xa75ex2f[_0x2efb[63]];if(!_0xa75ex28[_0x2efb[58]][_0x2efb[65]](_0x2efb[64])){_0xa75ex1b[_0x2efb[35]]= qs[_0x2efb[35]](_0xa75ex28[_0x2efb[58]][_0x2efb[35]]);_0xa75ex1b[_0x2efb[34]]= qs[_0x2efb[34]](_0xa75ex28[_0x2efb[58]][_0x2efb[34]])};return _0xa75ex2d[_0x2efb[83]](_0xa75ex1b)}})[_0x2efb[45]](function(_0xa75ex2e){return _0xa75ex2e?{count:_0xa75ex1c,rows:_0xa75ex2e}:null})[_0x2efb[45]](respondWithResult(_0xa75ex18,null,_0x2efb[83]))[_0x2efb[75]](handleError(_0xa75ex18,null,_0x2efb[83]))};exports[_0x2efb[86]]= function(_0xa75ex28,_0xa75ex15,_0xa75ex2c){var _0xa75ex30=[];var _0xa75ex31;return db[_0x2efb[84]][_0x2efb[93]]({where:{id:_0xa75ex28[_0x2efb[82]][_0x2efb[87]]},attributes:[_0x2efb[78]],include:[{model:db[_0x2efb[92]],as:_0x2efb[90],attributes:[_0x2efb[78]],raw:true}]})[_0x2efb[45]](function(_0xa75ex34){if(_0xa75ex34){for(var _0xa75ex35=0;_0xa75ex35< _0xa75ex34[_0x2efb[63]];_0xa75ex35+= 1){for(var _0xa75ex36=0;_0xa75ex36< _0xa75ex34[_0xa75ex35][_0x2efb[90]][_0x2efb[63]];_0xa75ex36+= 1){_0xa75ex30= _[_0x2efb[91]](_0xa75ex30,[_0xa75ex34[_0xa75ex35][_0x2efb[90]][_0xa75ex36][_0x2efb[78]]])}};return _0xa75ex30}})[_0x2efb[45]](function(_0xa75ex33){if(_0xa75ex33){return db[_0x2efb[56]][_0x2efb[80]]({where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}})}})[_0x2efb[45]](function(_0xa75ex32){if(_0xa75ex32){_0xa75ex31= _0xa75ex32;return _0xa75ex31[_0x2efb[89]](_0xa75ex30,{penalty:_0xa75ex28[_0x2efb[82]][_0x2efb[88]]})}})[_0x2efb[45]](function(_0xa75ex18){if(_0xa75ex18){return _0xa75ex31[_0x2efb[86]](_0xa75ex28[_0x2efb[82]][_0x2efb[87]])}})[_0x2efb[45]](handleEntityNotFound(_0xa75ex15,null,_0x2efb[86]))[_0x2efb[45]](respondWithStatusCode(_0xa75ex15,null,_0x2efb[86]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[86]))};exports[_0x2efb[94]]= function(_0xa75ex28,_0xa75ex15,_0xa75ex2c){var _0xa75ex30=[];var _0xa75ex31;return db[_0x2efb[84]][_0x2efb[93]]({where:{id:_0xa75ex28[_0x2efb[58]][_0x2efb[87]]},attributes:[_0x2efb[78]],include:[{model:db[_0x2efb[92]],as:_0x2efb[90],attributes:[_0x2efb[78]],raw:true}]})[_0x2efb[45]](function(_0xa75ex34){if(_0xa75ex34){for(var _0xa75ex35=0;_0xa75ex35< _0xa75ex34[_0x2efb[63]];_0xa75ex35+= 1){for(var _0xa75ex36=0;_0xa75ex36< _0xa75ex34[_0xa75ex35][_0x2efb[90]][_0x2efb[63]];_0xa75ex36+= 1){_0xa75ex30= _[_0x2efb[91]](_0xa75ex30,[_0xa75ex34[_0xa75ex35][_0x2efb[90]][_0xa75ex36][_0x2efb[78]]])}};return _0xa75ex30}})[_0x2efb[45]](function(_0xa75ex33){if(_0xa75ex33){return db[_0x2efb[56]][_0x2efb[80]]({where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}})}})[_0x2efb[45]](function(_0xa75ex32){if(_0xa75ex32){_0xa75ex31= _0xa75ex32;return _0xa75ex31[_0x2efb[95]](_0xa75ex30)}})[_0x2efb[45]](function(_0xa75ex18){if(_0xa75ex31){return _0xa75ex31[_0x2efb[94]](_0xa75ex28[_0x2efb[58]][_0x2efb[87]])}})[_0x2efb[45]](handleEntityNotFound(_0xa75ex15,null,_0x2efb[94]))[_0x2efb[45]](respondWithStatusCode(_0xa75ex15,null,_0x2efb[94]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[94]))};exports[_0x2efb[89]]= function(_0xa75ex28,_0xa75ex15,_0xa75ex2c){return db[_0x2efb[56]][_0x2efb[80]]({where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}})[_0x2efb[45]](handleEntityNotFound(_0xa75ex15,null,_0x2efb[89]))[_0x2efb[45]](function(_0xa75ex18){if(_0xa75ex18){return _0xa75ex18[_0x2efb[89]](_0xa75ex28[_0x2efb[82]][_0x2efb[87]],_[_0x2efb[96]](_0xa75ex28[_0x2efb[82]],[_0x2efb[87],_0x2efb[78]])|| {})};return null})[_0x2efb[45]](respondWithResult(_0xa75ex15,null,_0x2efb[89]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[89]))};exports[_0x2efb[95]]= function(_0xa75ex28,_0xa75ex15,_0xa75ex2c){var _0xa75ex2f;return db[_0x2efb[56]][_0x2efb[80]]({where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}})[_0x2efb[45]](handleEntityNotFound(_0xa75ex15,null,_0x2efb[95]))[_0x2efb[45]](function(_0xa75ex18){if(_0xa75ex18){return _0xa75ex18[_0x2efb[95]](_0xa75ex28[_0x2efb[58]][_0x2efb[87]])}})[_0x2efb[45]](respondWithStatusCode(_0xa75ex15,null,_0x2efb[95]))[_0x2efb[75]](handleError(_0xa75ex15,null,_0x2efb[95]))};exports[_0x2efb[97]]= function(_0xa75ex28,_0xa75ex18,_0xa75ex2c){var _0xa75ex1b={};var _0xa75ex29={};var _0xa75ex2d;var _0xa75ex1c;return db[_0x2efb[56]][_0x2efb[85]]({where:{id:_0xa75ex28[_0x2efb[79]][_0x2efb[78]]}})[_0x2efb[45]](handleEntityNotFound(_0xa75ex18,null,_0x2efb[97]))[_0x2efb[45]](function(_0xa75ex18){if(_0xa75ex18){_0xa75ex2d= _0xa75ex18;_0xa75ex29[_0x2efb[54]]= _[_0x2efb[57]](db[_0x2efb[92]][_0x2efb[55]]);_0xa75ex29[_0x2efb[58]]= _[_0x2efb[57]](_0xa75ex28[_0x2efb[58]]);_0xa75ex29[_0x2efb[59]]= _[_0x2efb[60]](_0xa75ex29[_0x2efb[54]],_0xa75ex29[_0x2efb[58]]);_0xa75ex1b[_0x2efb[61]]= _[_0x2efb[60]](_0xa75ex29[_0x2efb[54]],qs[_0x2efb[62]](_0xa75ex28[_0x2efb[58]][_0x2efb[62]]));_0xa75ex1b[_0x2efb[61]]= (_0xa75ex1b[_0x2efb[61]][_0x2efb[63]])?_0xa75ex1b[_0x2efb[61]]:_0xa75ex29[_0x2efb[54]];_0xa75ex1b[_0x2efb[66]]= qs[_0x2efb[67]](_0xa75ex28[_0x2efb[58]][_0x2efb[67]]);_0xa75ex1b[_0x2efb[68]]= qs[_0x2efb[59]](_[_0x2efb[69]](_0xa75ex28[_0x2efb[58]],_0xa75ex29[_0x2efb[59]]));if(_0xa75ex28[_0x2efb[58]][_0x2efb[70]]){_0xa75ex1b[_0x2efb[68]]= _[_0x2efb[73]](_0xa75ex1b[_0x2efb[68]],{$or:_[_0x2efb[72]](_0xa75ex1b[_0x2efb[61]],function(_0xa75ex2a){var _0xa75ex2b={};_0xa75ex2b[_0xa75ex2a]= {$like:_0x2efb[71]+ _0xa75ex28[_0x2efb[58]][_0x2efb[70]]+ _0x2efb[71]};return _0xa75ex2b})})};_0xa75ex1b= _[_0x2efb[73]]({},_0xa75ex1b,_0xa75ex28[_0x2efb[74]]);return _0xa75ex2d[_0x2efb[97]](_0xa75ex1b)}})[_0x2efb[45]](function(_0xa75ex2f){if(_0xa75ex2f){_0xa75ex1c= _0xa75ex2f[_0x2efb[63]];if(!_0xa75ex28[_0x2efb[58]][_0x2efb[65]](_0x2efb[64])){_0xa75ex1b[_0x2efb[35]]= qs[_0x2efb[35]](_0xa75ex28[_0x2efb[58]][_0x2efb[35]]);_0xa75ex1b[_0x2efb[34]]= qs[_0x2efb[34]](_0xa75ex28[_0x2efb[58]][_0x2efb[34]])};return _0xa75ex2d[_0x2efb[97]](_0xa75ex1b)}})[_0x2efb[45]](function(_0xa75ex2e){return _0xa75ex2e?{count:_0xa75ex1c,rows:_0xa75ex2e}:null})[_0x2efb[45]](respondWithResult(_0xa75ex18,null,_0x2efb[97]))[_0x2efb[75]](handleError(_0xa75ex18,null,_0x2efb[97]))}
\ No newline at end of file
index 14028c9..b6c4190 100644 (file)
@@ -1 +1 @@
-var _0x4220=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x51\x75\x65\x75\x65","\x66\x61\x78\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x4220[0];var _=require(_0x4220[1]);var util=require(_0x4220[2]);var logger=require(_0x4220[4])(_0x4220[3]);var attributes=require(_0x4220[5]);module[_0x4220[6]]= function(_0xbf5ex5,_0xbf5ex6){return _0xbf5ex5[_0x4220[9]](_0x4220[7],attributes,{tableName:_0x4220[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x1b50=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x51\x75\x65\x75\x65","\x66\x61\x78\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x1b50[0];var _=require(_0x1b50[1]);var util=require(_0x1b50[2]);var logger=require(_0x1b50[4])(_0x1b50[3]);var attributes=require(_0x1b50[5]);module[_0x1b50[6]]= function(_0xd620x5,_0xd620x6){return _0xd620x5[_0x1b50[9]](_0x1b50[7],attributes,{tableName:_0x1b50[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index cb31113..cdfd7f0 100644 (file)
@@ -1 +1 @@
-var _0x31fe=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x31fe[0];var _=require(_0x31fe[1]);var util=require(_0x31fe[2]);var moment=require(_0x31fe[3]);var BPromise=require(_0x31fe[4]);var db=require(_0x31fe[6])[_0x31fe[5]];var utils=require(_0x31fe[7]);var logger=require(_0x31fe[9])(_0x31fe[8]);var jayson=require(_0x31fe[10]);var client=jayson[_0x31fe[12]][_0x31fe[11]]({port:9002});function respondWithRpcPromise(_0x84c9xb,_0x84c9xc,_0x84c9xd){return  new BPromise(function(_0x84c9xe,_0x84c9xf){return client[_0x31fe[25]](_0x84c9xb,_0x84c9xd)[_0x31fe[24]](function(_0x84c9x11){logger[_0x31fe[17]](_0x31fe[13],_0x84c9xc,_0x31fe[16]);logger[_0x31fe[20]](_0x31fe[18],_0x84c9xc,_0x31fe[16],JSON[_0x31fe[19]](_0x84c9x11));if(_0x84c9x11[_0x31fe[14]]){if(_0x84c9x11[_0x31fe[14]][_0x31fe[21]]=== 500){logger[_0x31fe[14]](_0x31fe[13],_0x84c9xc,_0x84c9x11[_0x31fe[14]][_0x31fe[22]]);return _0x84c9xf(_0x84c9x11[_0x31fe[14]][_0x31fe[22]])};logger[_0x31fe[14]](_0x31fe[13],_0x84c9xc,_0x84c9x11[_0x31fe[14]][_0x31fe[22]]);return _0x84c9xe(_0x84c9x11[_0x31fe[14]][_0x31fe[22]])}else {logger[_0x31fe[17]](_0x31fe[13],_0x84c9xc,_0x31fe[16]);_0x84c9xe(_0x84c9x11[_0x31fe[23]][_0x31fe[22]])}})[_0x31fe[15]](function(_0x84c9x10){logger[_0x31fe[14]](_0x31fe[13],_0x84c9xc,_0x84c9x10);_0x84c9xf(_0x84c9x10)})})}
\ No newline at end of file
+var _0x2956=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2956[0];var _=require(_0x2956[1]);var util=require(_0x2956[2]);var moment=require(_0x2956[3]);var BPromise=require(_0x2956[4]);var db=require(_0x2956[6])[_0x2956[5]];var utils=require(_0x2956[7]);var logger=require(_0x2956[9])(_0x2956[8]);var jayson=require(_0x2956[10]);var client=jayson[_0x2956[12]][_0x2956[11]]({port:9002});function respondWithRpcPromise(_0x6193xb,_0x6193xc,_0x6193xd){return  new BPromise(function(_0x6193xe,_0x6193xf){return client[_0x2956[25]](_0x6193xb,_0x6193xd)[_0x2956[24]](function(_0x6193x11){logger[_0x2956[17]](_0x2956[13],_0x6193xc,_0x2956[16]);logger[_0x2956[20]](_0x2956[18],_0x6193xc,_0x2956[16],JSON[_0x2956[19]](_0x6193x11));if(_0x6193x11[_0x2956[14]]){if(_0x6193x11[_0x2956[14]][_0x2956[21]]=== 500){logger[_0x2956[14]](_0x2956[13],_0x6193xc,_0x6193x11[_0x2956[14]][_0x2956[22]]);return _0x6193xf(_0x6193x11[_0x2956[14]][_0x2956[22]])};logger[_0x2956[14]](_0x2956[13],_0x6193xc,_0x6193x11[_0x2956[14]][_0x2956[22]]);return _0x6193xe(_0x6193x11[_0x2956[14]][_0x2956[22]])}else {logger[_0x2956[17]](_0x2956[13],_0x6193xc,_0x2956[16]);_0x6193xe(_0x6193x11[_0x2956[23]][_0x2956[22]])}})[_0x2956[15]](function(_0x6193x10){logger[_0x2956[14]](_0x2956[13],_0x6193xc,_0x6193x10);_0x6193xf(_0x6193x10)})})}
\ No newline at end of file
index 671a64a..488fe6c 100644 (file)
@@ -1 +1 @@
-var _0x4b3d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x4b3d[0];var multer=require(_0x4b3d[1]);var util=require(_0x4b3d[2]);var path=require(_0x4b3d[3]);var express=require(_0x4b3d[4]);var router=express.Router();var auth=require(_0x4b3d[5]);var config=require(_0x4b3d[6]);var controller=require(_0x4b3d[7]);router[_0x4b3d[11]](_0x4b3d[8],auth[_0x4b3d[9]](),controller[_0x4b3d[10]]);router[_0x4b3d[11]](_0x4b3d[12],auth[_0x4b3d[9]](),controller[_0x4b3d[13]]);router[_0x4b3d[11]](_0x4b3d[14],auth[_0x4b3d[9]](),controller[_0x4b3d[15]]);router[_0x4b3d[11]](_0x4b3d[16],auth[_0x4b3d[9]](),controller[_0x4b3d[17]]);router[_0x4b3d[19]](_0x4b3d[8],auth[_0x4b3d[9]](),controller[_0x4b3d[18]]);router[_0x4b3d[19]](_0x4b3d[14],auth[_0x4b3d[9]](),controller[_0x4b3d[20]]);router[_0x4b3d[19]](_0x4b3d[16],auth[_0x4b3d[9]](),controller[_0x4b3d[21]]);router[_0x4b3d[23]](_0x4b3d[12],auth[_0x4b3d[9]](),controller[_0x4b3d[22]]);router[_0x4b3d[25]](_0x4b3d[12],auth[_0x4b3d[9]](),controller[_0x4b3d[24]]);router[_0x4b3d[25]](_0x4b3d[14],auth[_0x4b3d[9]](),controller[_0x4b3d[26]]);router[_0x4b3d[25]](_0x4b3d[16],auth[_0x4b3d[9]](),controller[_0x4b3d[27]]);module[_0x4b3d[28]]= router
\ No newline at end of file
+var _0x869b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x869b[0];var multer=require(_0x869b[1]);var util=require(_0x869b[2]);var path=require(_0x869b[3]);var express=require(_0x869b[4]);var router=express.Router();var auth=require(_0x869b[5]);var config=require(_0x869b[6]);var controller=require(_0x869b[7]);router[_0x869b[11]](_0x869b[8],auth[_0x869b[9]](),controller[_0x869b[10]]);router[_0x869b[11]](_0x869b[12],auth[_0x869b[9]](),controller[_0x869b[13]]);router[_0x869b[11]](_0x869b[14],auth[_0x869b[9]](),controller[_0x869b[15]]);router[_0x869b[11]](_0x869b[16],auth[_0x869b[9]](),controller[_0x869b[17]]);router[_0x869b[19]](_0x869b[8],auth[_0x869b[9]](),controller[_0x869b[18]]);router[_0x869b[19]](_0x869b[14],auth[_0x869b[9]](),controller[_0x869b[20]]);router[_0x869b[19]](_0x869b[16],auth[_0x869b[9]](),controller[_0x869b[21]]);router[_0x869b[23]](_0x869b[12],auth[_0x869b[9]](),controller[_0x869b[22]]);router[_0x869b[25]](_0x869b[12],auth[_0x869b[9]](),controller[_0x869b[24]]);router[_0x869b[25]](_0x869b[14],auth[_0x869b[9]](),controller[_0x869b[26]]);router[_0x869b[25]](_0x869b[16],auth[_0x869b[9]](),controller[_0x869b[27]]);module[_0x869b[28]]= router
\ No newline at end of file
index 52aec1d..6ec2cce 100644 (file)
@@ -1 +1 @@
-var _0x154c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0x154c[0];var moment=require(_0x154c[1]);var Sequelize=require(_0x154c[2]);module[_0x154c[3]]= {uniqueid:{type:Sequelize[_0x154c[4]]},timeslot:{type:Sequelize[_0x154c[5]]},accountid:{type:Sequelize[_0x154c[4]]},accountname:{type:Sequelize[_0x154c[4]]},accountphone:{type:Sequelize[_0x154c[4]]},application:{type:Sequelize[_0x154c[4]]},memberid:{type:Sequelize[_0x154c[5]]},membername:{type:Sequelize[_0x154c[4]]},queue:{type:Sequelize[_0x154c[5]]},queuename:{type:Sequelize[_0x154c[4]]},roomid:{type:Sequelize[_0x154c[5]]},messageid:{type:Sequelize[_0x154c[5]]},reason:{type:Sequelize[_0x154c[4]],defaultValue:_0x154c[6]},connectid:{type:Sequelize[_0x154c[4]],unique:_0x154c[7],set:function(_0x3defx3){this[_0x154c[8]](_0x154c[7],_0x3defx3);this[_0x154c[8]](_0x154c[9],_0x154c[10]);this[_0x154c[8]](_0x154c[11],moment()[_0x154c[13]](_0x154c[12]))}},calledAt:{type:Sequelize[_0x154c[14]]},rejectedAt:{type:Sequelize[_0x154c[14]],set:function(_0x3defx4){this[_0x154c[8]](_0x154c[15],_0x3defx4);this[_0x154c[8]](_0x154c[9],_0x154c[16])}},connectedAt:{type:Sequelize[_0x154c[14]]},from:{type:Sequelize[_0x154c[4]]}}
\ No newline at end of file
+var _0x8897=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0x8897[0];var moment=require(_0x8897[1]);var Sequelize=require(_0x8897[2]);module[_0x8897[3]]= {uniqueid:{type:Sequelize[_0x8897[4]]},timeslot:{type:Sequelize[_0x8897[5]]},accountid:{type:Sequelize[_0x8897[4]]},accountname:{type:Sequelize[_0x8897[4]]},accountphone:{type:Sequelize[_0x8897[4]]},application:{type:Sequelize[_0x8897[4]]},memberid:{type:Sequelize[_0x8897[5]]},membername:{type:Sequelize[_0x8897[4]]},queue:{type:Sequelize[_0x8897[5]]},queuename:{type:Sequelize[_0x8897[4]]},roomid:{type:Sequelize[_0x8897[5]]},messageid:{type:Sequelize[_0x8897[5]]},reason:{type:Sequelize[_0x8897[4]],defaultValue:_0x8897[6]},connectid:{type:Sequelize[_0x8897[4]],unique:_0x8897[7],set:function(_0xa896x3){this[_0x8897[8]](_0x8897[7],_0xa896x3);this[_0x8897[8]](_0x8897[9],_0x8897[10]);this[_0x8897[8]](_0x8897[11],moment()[_0x8897[13]](_0x8897[12]))}},calledAt:{type:Sequelize[_0x8897[14]]},rejectedAt:{type:Sequelize[_0x8897[14]],set:function(_0xa896x4){this[_0x8897[8]](_0x8897[15],_0xa896x4);this[_0x8897[8]](_0x8897[9],_0x8897[16])}},connectedAt:{type:Sequelize[_0x8897[14]]},from:{type:Sequelize[_0x8897[4]]}}
\ No newline at end of file
index 07948c2..356b115 100644 (file)
@@ -1 +1 @@
-var _0x5e47=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x5e47[0];var jsonpatch=require(_0x5e47[1]);var rp=require(_0x5e47[2]);var moment=require(_0x5e47[3]);var BPromise=require(_0x5e47[4]);var util=require(_0x5e47[5]);var path=require(_0x5e47[6]);var sox=require(_0x5e47[7]);var ejs=require(_0x5e47[8]);var fs=require(_0x5e47[9]);var _=require(_0x5e47[10]);var squel=require(_0x5e47[11]);var crypto=require(_0x5e47[12]);var jsforce=require(_0x5e47[13]);var toCsv=require(_0x5e47[14]);var qs=require(_0x5e47[15]);var logger=require(_0x5e47[17])(_0x5e47[16]);var utils=require(_0x5e47[18]);var config=require(_0x5e47[19]);var db=require(_0x5e47[21])[_0x5e47[20]];function respondWithStatusCode(_0x64a6x15,_0x64a6x16,_0x64a6x17){_0x64a6x16= _0x64a6x16|| 204;return function(_0x64a6x18){if(_0x64a6x18){logger[_0x5e47[24]](_0x5e47[22],_0x64a6x17,_0x64a6x16,_0x5e47[23]);logger[_0x5e47[26]](_0x5e47[25],_0x64a6x17,_0x64a6x16,_0x5e47[23]);return _0x64a6x15[_0x5e47[27]](_0x64a6x16)};return _0x64a6x15[_0x5e47[29]](304)[_0x5e47[28]]()}}function respondWithResult(_0x64a6x15,_0x64a6x16,_0x64a6x17){_0x64a6x16= _0x64a6x16|| 200;return function(_0x64a6x18){if(_0x64a6x18){logger[_0x5e47[24]](_0x5e47[22],_0x64a6x17,_0x64a6x16,_0x5e47[30]);logger[_0x5e47[26]](_0x5e47[25],_0x64a6x17,_0x64a6x16,_0x5e47[30],JSON[_0x5e47[31]](_0x64a6x18));return _0x64a6x15[_0x5e47[29]](_0x64a6x16)[_0x5e47[32]](_0x64a6x18)};return _0x64a6x15[_0x5e47[29]](304)[_0x5e47[28]]()}}function respondWithFilteredResult(_0x64a6x15,_0x64a6x1b,_0x64a6x17){return function(_0x64a6x18){if(_0x64a6x18){var _0x64a6x1c=_0x64a6x18[_0x5e47[33]],_0x64a6x1d=_0x64a6x1b[_0x5e47[34]],_0x64a6x1e=_0x64a6x1b[_0x5e47[34]]+ _0x64a6x1b[_0x5e47[35]],_0x64a6x16;if(_0x64a6x1e>= _0x64a6x1c){_0x64a6x1e= _0x64a6x1c;_0x64a6x16= 200}else {_0x64a6x16= 206};_0x64a6x15[_0x5e47[29]](_0x64a6x16);logger[_0x5e47[24]](_0x5e47[22],_0x64a6x17,_0x64a6x16,_0x5e47[36]);logger[_0x5e47[26]](_0x5e47[25],_0x64a6x17,_0x64a6x16,_0x5e47[30],JSON[_0x5e47[31]](_0x64a6x18));return _0x64a6x15[_0x5e47[40]](_0x5e47[37],_0x64a6x1d+ _0x5e47[38]+ _0x64a6x1e+ _0x5e47[39]+ _0x64a6x1c)[_0x5e47[32]](_0x64a6x18)};return null}}function patchUpdates(_0x64a6x20){return function(_0x64a6x18){try{jsonpatch[_0x5e47[41]](_0x64a6x18,_0x64a6x20,true)}catch(err){return BPromise[_0x5e47[42]](err)};return _0x64a6x18[_0x5e47[43]]()}}function saveUpdates(_0x64a6x22,_0x64a6x16,_0x64a6x17){return function(_0x64a6x18){if(_0x64a6x18){return _0x64a6x18[_0x5e47[46]](_0x64a6x22)[_0x5e47[45]](function(_0x64a6x23){logger[_0x5e47[24]](_0x5e47[22],_0x64a6x17,_0x64a6x16,_0x5e47[44]);logger[_0x5e47[26]](_0x5e47[25],_0x64a6x17,_0x64a6x16,_0x5e47[44],JSON[_0x5e47[31]](_0x64a6x18));return _0x64a6x23})};return null}}function removeEntity(_0x64a6x15,_0x64a6x16,_0x64a6x17){return function(_0x64a6x18){if(_0x64a6x18){return _0x64a6x18[_0x5e47[48]]()[_0x5e47[45]](function(){logger[_0x5e47[24]](_0x5e47[22],_0x64a6x17,_0x64a6x16,_0x5e47[47]);logger[_0x5e47[26]](_0x5e47[25],_0x64a6x17,_0x64a6x16,_0x5e47[47],JSON[_0x5e47[31]](_0x64a6x18));_0x64a6x15[_0x5e47[29]](204)[_0x5e47[28]]()})}}}function handleEntityNotFound(_0x64a6x15,_0x64a6x16,_0x64a6x17){return function(_0x64a6x18){if(!_0x64a6x18){logger[_0x5e47[50]](_0x5e47[22],_0x64a6x17,404,_0x5e47[49]);_0x64a6x15[_0x5e47[29]](404)[_0x5e47[28]]();return null};return _0x64a6x18}}function handleError(_0x64a6x15,_0x64a6x16,_0x64a6x17){_0x64a6x16= _0x64a6x16|| 500;return function(_0x64a6x27){logger[_0x5e47[50]](_0x5e47[22],_0x64a6x17,_0x64a6x16,JSON[_0x5e47[31]](_0x64a6x27));delete _0x64a6x27[_0x5e47[51]];_0x64a6x15[_0x5e47[29]](_0x64a6x16)[_0x5e47[52]](_0x64a6x27)}}exports[_0x5e47[53]]= function(_0x64a6x28,_0x64a6x15){var _0x64a6x1b={},_0x64a6x29={};_0x64a6x29[_0x5e47[54]]= _[_0x5e47[57]](db[_0x5e47[56]][_0x5e47[55]]);_0x64a6x29[_0x5e47[58]]= _[_0x5e47[57]](_0x64a6x28[_0x5e47[58]]);_0x64a6x29[_0x5e47[59]]= _[_0x5e47[60]](_0x64a6x29[_0x5e47[54]],_0x64a6x29[_0x5e47[58]]);_0x64a6x1b[_0x5e47[61]]= _[_0x5e47[60]](_0x64a6x29[_0x5e47[54]],qs[_0x5e47[62]](_0x64a6x28[_0x5e47[58]][_0x5e47[62]]));_0x64a6x1b[_0x5e47[61]]= (_0x64a6x1b[_0x5e47[61]][_0x5e47[63]])?_0x64a6x1b[_0x5e47[61]]:_0x64a6x29[_0x5e47[54]];if(!_0x64a6x28[_0x5e47[58]][_0x5e47[65]](_0x5e47[64])){_0x64a6x1b[_0x5e47[35]]= qs[_0x5e47[35]](_0x64a6x28[_0x5e47[58]][_0x5e47[35]]);_0x64a6x1b[_0x5e47[34]]= qs[_0x5e47[34]](_0x64a6x28[_0x5e47[58]][_0x5e47[34]])};_0x64a6x1b[_0x5e47[66]]= qs[_0x5e47[67]](_0x64a6x28[_0x5e47[58]][_0x5e47[67]]);_0x64a6x1b[_0x5e47[68]]= qs[_0x5e47[59]](_[_0x5e47[69]](_0x64a6x28[_0x5e47[58]],_0x64a6x29[_0x5e47[59]]));if(_0x64a6x28[_0x5e47[58]][_0x5e47[70]]){_0x64a6x1b[_0x5e47[68]]= _[_0x5e47[73]](_0x64a6x1b[_0x5e47[68]],{$or:_[_0x5e47[72]](_0x64a6x1b[_0x5e47[61]],function(_0x64a6x2a){var _0x64a6x2b={};_0x64a6x2b[_0x64a6x2a]= {$like:_0x5e47[71]+ _0x64a6x28[_0x5e47[58]][_0x5e47[70]]+ _0x5e47[71]};return _0x64a6x2b})})};_0x64a6x1b= _[_0x5e47[73]]({},_0x64a6x1b,_0x64a6x28[_0x5e47[74]]);return db[_0x5e47[56]][_0x5e47[76]](_0x64a6x1b)[_0x5e47[45]](respondWithFilteredResult(_0x64a6x15,_0x64a6x1b,_0x5e47[53]))[_0x5e47[75]](handleError(_0x64a6x15,null,_0x5e47[53]))};exports[_0x5e47[77]]= function(_0x64a6x28,_0x64a6x15){var _0x64a6x1b={raw:true,where:{id:_0x64a6x28[_0x5e47[79]][_0x5e47[78]]}},_0x64a6x29={};_0x64a6x29[_0x5e47[54]]= _[_0x5e47[57]](db[_0x5e47[56]][_0x5e47[55]]);_0x64a6x29[_0x5e47[58]]= _[_0x5e47[57]](_0x64a6x28[_0x5e47[58]]);_0x64a6x29[_0x5e47[59]]= _[_0x5e47[60]](_0x64a6x29[_0x5e47[54]],_0x64a6x29[_0x5e47[58]]);_0x64a6x1b[_0x5e47[61]]= _[_0x5e47[60]](_0x64a6x29[_0x5e47[54]],qs[_0x5e47[62]](_0x64a6x28[_0x5e47[58]][_0x5e47[62]]));_0x64a6x1b[_0x5e47[61]]= (_0x64a6x1b[_0x5e47[61]][_0x5e47[63]])?_0x64a6x1b[_0x5e47[61]]:_0x64a6x29[_0x5e47[54]];_0x64a6x1b= _[_0x5e47[73]]({},_0x64a6x1b,_0x64a6x28[_0x5e47[74]]);return db[_0x5e47[56]][_0x5e47[80]](_0x64a6x1b)[_0x5e47[45]](handleEntityNotFound(_0x64a6x15,null,_0x5e47[77]))[_0x5e47[45]](respondWithResult(_0x64a6x15,null,_0x5e47[77]))[_0x5e47[75]](handleError(_0x64a6x15,null,_0x5e47[77]))};exports[_0x5e47[81]]= function(_0x64a6x28,_0x64a6x15){return db[_0x5e47[56]][_0x5e47[81]](_0x64a6x28[_0x5e47[82]],{})[_0x5e47[45]](respondWithResult(_0x64a6x15,201,_0x5e47[81]))[_0x5e47[75]](handleError(_0x64a6x15,null,_0x5e47[81]))};exports[_0x5e47[46]]= function(_0x64a6x28,_0x64a6x15){if(_0x64a6x28[_0x5e47[82]][_0x5e47[78]]){delete _0x64a6x28[_0x5e47[82]][_0x5e47[78]]};return db[_0x5e47[56]][_0x5e47[80]]({where:{id:_0x64a6x28[_0x5e47[79]][_0x5e47[78]]}})[_0x5e47[45]](handleEntityNotFound(_0x64a6x15,null,_0x5e47[46]))[_0x5e47[45]](saveUpdates(_0x64a6x28[_0x5e47[82]],null,_0x5e47[46]))[_0x5e47[45]](respondWithResult(_0x64a6x15,null,_0x5e47[46]))[_0x5e47[75]](handleError(_0x64a6x15,null,_0x5e47[46]))};exports[_0x5e47[48]]= function(_0x64a6x28,_0x64a6x15){return db[_0x5e47[56]][_0x5e47[80]]({where:{id:_0x64a6x28[_0x5e47[79]][_0x5e47[78]]}})[_0x5e47[45]](handleEntityNotFound(_0x64a6x15,null,_0x5e47[48]))[_0x5e47[45]](removeEntity(_0x64a6x15,null,_0x5e47[48]))[_0x5e47[75]](handleError(_0x64a6x15,null,_0x5e47[48]))}
\ No newline at end of file
+var _0x60d2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x60d2[0];var jsonpatch=require(_0x60d2[1]);var rp=require(_0x60d2[2]);var moment=require(_0x60d2[3]);var BPromise=require(_0x60d2[4]);var util=require(_0x60d2[5]);var path=require(_0x60d2[6]);var sox=require(_0x60d2[7]);var ejs=require(_0x60d2[8]);var fs=require(_0x60d2[9]);var _=require(_0x60d2[10]);var squel=require(_0x60d2[11]);var crypto=require(_0x60d2[12]);var jsforce=require(_0x60d2[13]);var toCsv=require(_0x60d2[14]);var qs=require(_0x60d2[15]);var logger=require(_0x60d2[17])(_0x60d2[16]);var utils=require(_0x60d2[18]);var config=require(_0x60d2[19]);var db=require(_0x60d2[21])[_0x60d2[20]];function respondWithStatusCode(_0xdb3cx15,_0xdb3cx16,_0xdb3cx17){_0xdb3cx16= _0xdb3cx16|| 204;return function(_0xdb3cx18){if(_0xdb3cx18){logger[_0x60d2[24]](_0x60d2[22],_0xdb3cx17,_0xdb3cx16,_0x60d2[23]);logger[_0x60d2[26]](_0x60d2[25],_0xdb3cx17,_0xdb3cx16,_0x60d2[23]);return _0xdb3cx15[_0x60d2[27]](_0xdb3cx16)};return _0xdb3cx15[_0x60d2[29]](304)[_0x60d2[28]]()}}function respondWithResult(_0xdb3cx15,_0xdb3cx16,_0xdb3cx17){_0xdb3cx16= _0xdb3cx16|| 200;return function(_0xdb3cx18){if(_0xdb3cx18){logger[_0x60d2[24]](_0x60d2[22],_0xdb3cx17,_0xdb3cx16,_0x60d2[30]);logger[_0x60d2[26]](_0x60d2[25],_0xdb3cx17,_0xdb3cx16,_0x60d2[30],JSON[_0x60d2[31]](_0xdb3cx18));return _0xdb3cx15[_0x60d2[29]](_0xdb3cx16)[_0x60d2[32]](_0xdb3cx18)};return _0xdb3cx15[_0x60d2[29]](304)[_0x60d2[28]]()}}function respondWithFilteredResult(_0xdb3cx15,_0xdb3cx1b,_0xdb3cx17){return function(_0xdb3cx18){if(_0xdb3cx18){var _0xdb3cx1c=_0xdb3cx18[_0x60d2[33]],_0xdb3cx1d=_0xdb3cx1b[_0x60d2[34]],_0xdb3cx1e=_0xdb3cx1b[_0x60d2[34]]+ _0xdb3cx1b[_0x60d2[35]],_0xdb3cx16;if(_0xdb3cx1e>= _0xdb3cx1c){_0xdb3cx1e= _0xdb3cx1c;_0xdb3cx16= 200}else {_0xdb3cx16= 206};_0xdb3cx15[_0x60d2[29]](_0xdb3cx16);logger[_0x60d2[24]](_0x60d2[22],_0xdb3cx17,_0xdb3cx16,_0x60d2[36]);logger[_0x60d2[26]](_0x60d2[25],_0xdb3cx17,_0xdb3cx16,_0x60d2[30],JSON[_0x60d2[31]](_0xdb3cx18));return _0xdb3cx15[_0x60d2[40]](_0x60d2[37],_0xdb3cx1d+ _0x60d2[38]+ _0xdb3cx1e+ _0x60d2[39]+ _0xdb3cx1c)[_0x60d2[32]](_0xdb3cx18)};return null}}function patchUpdates(_0xdb3cx20){return function(_0xdb3cx18){try{jsonpatch[_0x60d2[41]](_0xdb3cx18,_0xdb3cx20,true)}catch(err){return BPromise[_0x60d2[42]](err)};return _0xdb3cx18[_0x60d2[43]]()}}function saveUpdates(_0xdb3cx22,_0xdb3cx16,_0xdb3cx17){return function(_0xdb3cx18){if(_0xdb3cx18){return _0xdb3cx18[_0x60d2[46]](_0xdb3cx22)[_0x60d2[45]](function(_0xdb3cx23){logger[_0x60d2[24]](_0x60d2[22],_0xdb3cx17,_0xdb3cx16,_0x60d2[44]);logger[_0x60d2[26]](_0x60d2[25],_0xdb3cx17,_0xdb3cx16,_0x60d2[44],JSON[_0x60d2[31]](_0xdb3cx18));return _0xdb3cx23})};return null}}function removeEntity(_0xdb3cx15,_0xdb3cx16,_0xdb3cx17){return function(_0xdb3cx18){if(_0xdb3cx18){return _0xdb3cx18[_0x60d2[48]]()[_0x60d2[45]](function(){logger[_0x60d2[24]](_0x60d2[22],_0xdb3cx17,_0xdb3cx16,_0x60d2[47]);logger[_0x60d2[26]](_0x60d2[25],_0xdb3cx17,_0xdb3cx16,_0x60d2[47],JSON[_0x60d2[31]](_0xdb3cx18));_0xdb3cx15[_0x60d2[29]](204)[_0x60d2[28]]()})}}}function handleEntityNotFound(_0xdb3cx15,_0xdb3cx16,_0xdb3cx17){return function(_0xdb3cx18){if(!_0xdb3cx18){logger[_0x60d2[50]](_0x60d2[22],_0xdb3cx17,404,_0x60d2[49]);_0xdb3cx15[_0x60d2[29]](404)[_0x60d2[28]]();return null};return _0xdb3cx18}}function handleError(_0xdb3cx15,_0xdb3cx16,_0xdb3cx17){_0xdb3cx16= _0xdb3cx16|| 500;return function(_0xdb3cx27){logger[_0x60d2[50]](_0x60d2[22],_0xdb3cx17,_0xdb3cx16,JSON[_0x60d2[31]](_0xdb3cx27));delete _0xdb3cx27[_0x60d2[51]];_0xdb3cx15[_0x60d2[29]](_0xdb3cx16)[_0x60d2[52]](_0xdb3cx27)}}exports[_0x60d2[53]]= function(_0xdb3cx28,_0xdb3cx15){var _0xdb3cx1b={},_0xdb3cx29={};_0xdb3cx29[_0x60d2[54]]= _[_0x60d2[57]](db[_0x60d2[56]][_0x60d2[55]]);_0xdb3cx29[_0x60d2[58]]= _[_0x60d2[57]](_0xdb3cx28[_0x60d2[58]]);_0xdb3cx29[_0x60d2[59]]= _[_0x60d2[60]](_0xdb3cx29[_0x60d2[54]],_0xdb3cx29[_0x60d2[58]]);_0xdb3cx1b[_0x60d2[61]]= _[_0x60d2[60]](_0xdb3cx29[_0x60d2[54]],qs[_0x60d2[62]](_0xdb3cx28[_0x60d2[58]][_0x60d2[62]]));_0xdb3cx1b[_0x60d2[61]]= (_0xdb3cx1b[_0x60d2[61]][_0x60d2[63]])?_0xdb3cx1b[_0x60d2[61]]:_0xdb3cx29[_0x60d2[54]];if(!_0xdb3cx28[_0x60d2[58]][_0x60d2[65]](_0x60d2[64])){_0xdb3cx1b[_0x60d2[35]]= qs[_0x60d2[35]](_0xdb3cx28[_0x60d2[58]][_0x60d2[35]]);_0xdb3cx1b[_0x60d2[34]]= qs[_0x60d2[34]](_0xdb3cx28[_0x60d2[58]][_0x60d2[34]])};_0xdb3cx1b[_0x60d2[66]]= qs[_0x60d2[67]](_0xdb3cx28[_0x60d2[58]][_0x60d2[67]]);_0xdb3cx1b[_0x60d2[68]]= qs[_0x60d2[59]](_[_0x60d2[69]](_0xdb3cx28[_0x60d2[58]],_0xdb3cx29[_0x60d2[59]]));if(_0xdb3cx28[_0x60d2[58]][_0x60d2[70]]){_0xdb3cx1b[_0x60d2[68]]= _[_0x60d2[73]](_0xdb3cx1b[_0x60d2[68]],{$or:_[_0x60d2[72]](_0xdb3cx1b[_0x60d2[61]],function(_0xdb3cx2a){var _0xdb3cx2b={};_0xdb3cx2b[_0xdb3cx2a]= {$like:_0x60d2[71]+ _0xdb3cx28[_0x60d2[58]][_0x60d2[70]]+ _0x60d2[71]};return _0xdb3cx2b})})};_0xdb3cx1b= _[_0x60d2[73]]({},_0xdb3cx1b,_0xdb3cx28[_0x60d2[74]]);return db[_0x60d2[56]][_0x60d2[76]](_0xdb3cx1b)[_0x60d2[45]](respondWithFilteredResult(_0xdb3cx15,_0xdb3cx1b,_0x60d2[53]))[_0x60d2[75]](handleError(_0xdb3cx15,null,_0x60d2[53]))};exports[_0x60d2[77]]= function(_0xdb3cx28,_0xdb3cx15){var _0xdb3cx1b={raw:true,where:{id:_0xdb3cx28[_0x60d2[79]][_0x60d2[78]]}},_0xdb3cx29={};_0xdb3cx29[_0x60d2[54]]= _[_0x60d2[57]](db[_0x60d2[56]][_0x60d2[55]]);_0xdb3cx29[_0x60d2[58]]= _[_0x60d2[57]](_0xdb3cx28[_0x60d2[58]]);_0xdb3cx29[_0x60d2[59]]= _[_0x60d2[60]](_0xdb3cx29[_0x60d2[54]],_0xdb3cx29[_0x60d2[58]]);_0xdb3cx1b[_0x60d2[61]]= _[_0x60d2[60]](_0xdb3cx29[_0x60d2[54]],qs[_0x60d2[62]](_0xdb3cx28[_0x60d2[58]][_0x60d2[62]]));_0xdb3cx1b[_0x60d2[61]]= (_0xdb3cx1b[_0x60d2[61]][_0x60d2[63]])?_0xdb3cx1b[_0x60d2[61]]:_0xdb3cx29[_0x60d2[54]];_0xdb3cx1b= _[_0x60d2[73]]({},_0xdb3cx1b,_0xdb3cx28[_0x60d2[74]]);return db[_0x60d2[56]][_0x60d2[80]](_0xdb3cx1b)[_0x60d2[45]](handleEntityNotFound(_0xdb3cx15,null,_0x60d2[77]))[_0x60d2[45]](respondWithResult(_0xdb3cx15,null,_0x60d2[77]))[_0x60d2[75]](handleError(_0xdb3cx15,null,_0x60d2[77]))};exports[_0x60d2[81]]= function(_0xdb3cx28,_0xdb3cx15){return db[_0x60d2[56]][_0x60d2[81]](_0xdb3cx28[_0x60d2[82]],{})[_0x60d2[45]](respondWithResult(_0xdb3cx15,201,_0x60d2[81]))[_0x60d2[75]](handleError(_0xdb3cx15,null,_0x60d2[81]))};exports[_0x60d2[46]]= function(_0xdb3cx28,_0xdb3cx15){if(_0xdb3cx28[_0x60d2[82]][_0x60d2[78]]){delete _0xdb3cx28[_0x60d2[82]][_0x60d2[78]]};return db[_0x60d2[56]][_0x60d2[80]]({where:{id:_0xdb3cx28[_0x60d2[79]][_0x60d2[78]]}})[_0x60d2[45]](handleEntityNotFound(_0xdb3cx15,null,_0x60d2[46]))[_0x60d2[45]](saveUpdates(_0xdb3cx28[_0x60d2[82]],null,_0x60d2[46]))[_0x60d2[45]](respondWithResult(_0xdb3cx15,null,_0x60d2[46]))[_0x60d2[75]](handleError(_0xdb3cx15,null,_0x60d2[46]))};exports[_0x60d2[48]]= function(_0xdb3cx28,_0xdb3cx15){return db[_0x60d2[56]][_0x60d2[80]]({where:{id:_0xdb3cx28[_0x60d2[79]][_0x60d2[78]]}})[_0x60d2[45]](handleEntityNotFound(_0xdb3cx15,null,_0x60d2[48]))[_0x60d2[45]](removeEntity(_0xdb3cx15,null,_0x60d2[48]))[_0x60d2[75]](handleError(_0xdb3cx15,null,_0x60d2[48]))}
\ No newline at end of file
index 4952a8f..7600a79 100644 (file)
@@ -1 +1 @@
-var _0x91b6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x66\x61\x78","\x64\x65\x66\x69\x6E\x65"];_0x91b6[0];var _=require(_0x91b6[1]);var util=require(_0x91b6[2]);var logger=require(_0x91b6[4])(_0x91b6[3]);var attributes=require(_0x91b6[5]);module[_0x91b6[6]]= function(_0xf9f8x5,_0xf9f8x6){return _0xf9f8x5[_0x91b6[9]](_0x91b6[7],attributes,{tableName:_0x91b6[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xae35=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x66\x61\x78","\x64\x65\x66\x69\x6E\x65"];_0xae35[0];var _=require(_0xae35[1]);var util=require(_0xae35[2]);var logger=require(_0xae35[4])(_0xae35[3]);var attributes=require(_0xae35[5]);module[_0xae35[6]]= function(_0x4a8bx5,_0x4a8bx6){return _0x4a8bx5[_0xae35[9]](_0xae35[7],attributes,{tableName:_0xae35[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 8dd1b9d..5dd76a9 100644 (file)
@@ -1 +1 @@
-var _0xd0b2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd0b2[0];var _=require(_0xd0b2[1]);var util=require(_0xd0b2[2]);var moment=require(_0xd0b2[3]);var BPromise=require(_0xd0b2[4]);var db=require(_0xd0b2[6])[_0xd0b2[5]];var utils=require(_0xd0b2[7]);var logger=require(_0xd0b2[9])(_0xd0b2[8]);var jayson=require(_0xd0b2[10]);var client=jayson[_0xd0b2[12]][_0xd0b2[11]]({port:9002});function respondWithRpcPromise(_0x9c2cxb,_0x9c2cxc,_0x9c2cxd){return  new BPromise(function(_0x9c2cxe,_0x9c2cxf){return client[_0xd0b2[25]](_0x9c2cxb,_0x9c2cxd)[_0xd0b2[24]](function(_0x9c2cx11){logger[_0xd0b2[17]](_0xd0b2[13],_0x9c2cxc,_0xd0b2[16]);logger[_0xd0b2[20]](_0xd0b2[18],_0x9c2cxc,_0xd0b2[16],JSON[_0xd0b2[19]](_0x9c2cx11));if(_0x9c2cx11[_0xd0b2[14]]){if(_0x9c2cx11[_0xd0b2[14]][_0xd0b2[21]]=== 500){logger[_0xd0b2[14]](_0xd0b2[13],_0x9c2cxc,_0x9c2cx11[_0xd0b2[14]][_0xd0b2[22]]);return _0x9c2cxf(_0x9c2cx11[_0xd0b2[14]][_0xd0b2[22]])};logger[_0xd0b2[14]](_0xd0b2[13],_0x9c2cxc,_0x9c2cx11[_0xd0b2[14]][_0xd0b2[22]]);return _0x9c2cxe(_0x9c2cx11[_0xd0b2[14]][_0xd0b2[22]])}else {logger[_0xd0b2[17]](_0xd0b2[13],_0x9c2cxc,_0xd0b2[16]);_0x9c2cxe(_0x9c2cx11[_0xd0b2[23]][_0xd0b2[22]])}})[_0xd0b2[15]](function(_0x9c2cx10){logger[_0xd0b2[14]](_0xd0b2[13],_0x9c2cxc,_0x9c2cx10);_0x9c2cxf(_0x9c2cx10)})})}
\ No newline at end of file
+var _0x7037=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x7037[0];var _=require(_0x7037[1]);var util=require(_0x7037[2]);var moment=require(_0x7037[3]);var BPromise=require(_0x7037[4]);var db=require(_0x7037[6])[_0x7037[5]];var utils=require(_0x7037[7]);var logger=require(_0x7037[9])(_0x7037[8]);var jayson=require(_0x7037[10]);var client=jayson[_0x7037[12]][_0x7037[11]]({port:9002});function respondWithRpcPromise(_0xd47bxb,_0xd47bxc,_0xd47bxd){return  new BPromise(function(_0xd47bxe,_0xd47bxf){return client[_0x7037[25]](_0xd47bxb,_0xd47bxd)[_0x7037[24]](function(_0xd47bx11){logger[_0x7037[17]](_0x7037[13],_0xd47bxc,_0x7037[16]);logger[_0x7037[20]](_0x7037[18],_0xd47bxc,_0x7037[16],JSON[_0x7037[19]](_0xd47bx11));if(_0xd47bx11[_0x7037[14]]){if(_0xd47bx11[_0x7037[14]][_0x7037[21]]=== 500){logger[_0x7037[14]](_0x7037[13],_0xd47bxc,_0xd47bx11[_0x7037[14]][_0x7037[22]]);return _0xd47bxf(_0xd47bx11[_0x7037[14]][_0x7037[22]])};logger[_0x7037[14]](_0x7037[13],_0xd47bxc,_0xd47bx11[_0x7037[14]][_0x7037[22]]);return _0xd47bxe(_0xd47bx11[_0x7037[14]][_0x7037[22]])}else {logger[_0x7037[17]](_0x7037[13],_0xd47bxc,_0x7037[16]);_0xd47bxe(_0xd47bx11[_0x7037[23]][_0x7037[22]])}})[_0x7037[15]](function(_0xd47bx10){logger[_0x7037[14]](_0x7037[13],_0xd47bxc,_0xd47bx10);_0xd47bxf(_0xd47bx10)})})}
\ No newline at end of file
index 1d10105..379a7fb 100644 (file)
@@ -1 +1 @@
-var _0x82f6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x82f6[0];var multer=require(_0x82f6[1]);var util=require(_0x82f6[2]);var path=require(_0x82f6[3]);var express=require(_0x82f6[4]);var router=express.Router();var auth=require(_0x82f6[5]);var config=require(_0x82f6[6]);var controller=require(_0x82f6[7]);router[_0x82f6[11]](_0x82f6[8],auth[_0x82f6[9]](),controller[_0x82f6[10]]);router[_0x82f6[11]](_0x82f6[12],auth[_0x82f6[9]](),controller[_0x82f6[13]]);router[_0x82f6[15]](_0x82f6[8],auth[_0x82f6[9]](),controller[_0x82f6[14]]);router[_0x82f6[17]](_0x82f6[12],auth[_0x82f6[9]](),controller[_0x82f6[16]]);router[_0x82f6[19]](_0x82f6[12],auth[_0x82f6[9]](),controller[_0x82f6[18]]);module[_0x82f6[20]]= router
\ No newline at end of file
+var _0x3aae=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3aae[0];var multer=require(_0x3aae[1]);var util=require(_0x3aae[2]);var path=require(_0x3aae[3]);var express=require(_0x3aae[4]);var router=express.Router();var auth=require(_0x3aae[5]);var config=require(_0x3aae[6]);var controller=require(_0x3aae[7]);router[_0x3aae[11]](_0x3aae[8],auth[_0x3aae[9]](),controller[_0x3aae[10]]);router[_0x3aae[11]](_0x3aae[12],auth[_0x3aae[9]](),controller[_0x3aae[13]]);router[_0x3aae[15]](_0x3aae[8],auth[_0x3aae[9]](),controller[_0x3aae[14]]);router[_0x3aae[17]](_0x3aae[12],auth[_0x3aae[9]](),controller[_0x3aae[16]]);router[_0x3aae[19]](_0x3aae[12],auth[_0x3aae[9]](),controller[_0x3aae[18]]);module[_0x3aae[20]]= router
\ No newline at end of file
index c45ecca..7d4d6d6 100644 (file)
@@ -1 +1 @@
-var _0x6311=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74"];_0x6311[0];var Sequelize=require(_0x6311[1]);module[_0x6311[2]]= {uniqueid:{type:Sequelize[_0x6311[3]]},accountid:{type:Sequelize[_0x6311[3]]},accountname:{type:Sequelize[_0x6311[3]]},accountphone:{type:Sequelize[_0x6311[3]]},application:{type:Sequelize[_0x6311[3]]},memberid:{type:Sequelize[_0x6311[3]]},membername:{type:Sequelize[_0x6311[3]]},queue:{type:Sequelize[_0x6311[4]]},queuename:{type:Sequelize[_0x6311[3]]},roomid:{type:Sequelize[_0x6311[4]]},fidelity:{type:Sequelize[_0x6311[4]],defaultValue:0},joinAt:{type:Sequelize[_0x6311[5]]},leaveAt:{type:Sequelize[_0x6311[5]]},completeAt:{type:Sequelize[_0x6311[5]]},complete:{type:Sequelize[_0x6311[6]],defaulValue:false},completeReason:{type:Sequelize.ENUM(_0x6311[7])},timeout:{type:Sequelize[_0x6311[6]],defaultValue:false},timeslot:{type:Sequelize[_0x6311[4]]}}
\ No newline at end of file
+var _0x8ed5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74"];_0x8ed5[0];var Sequelize=require(_0x8ed5[1]);module[_0x8ed5[2]]= {uniqueid:{type:Sequelize[_0x8ed5[3]]},accountid:{type:Sequelize[_0x8ed5[3]]},accountname:{type:Sequelize[_0x8ed5[3]]},accountphone:{type:Sequelize[_0x8ed5[3]]},application:{type:Sequelize[_0x8ed5[3]]},memberid:{type:Sequelize[_0x8ed5[3]]},membername:{type:Sequelize[_0x8ed5[3]]},queue:{type:Sequelize[_0x8ed5[4]]},queuename:{type:Sequelize[_0x8ed5[3]]},roomid:{type:Sequelize[_0x8ed5[4]]},fidelity:{type:Sequelize[_0x8ed5[4]],defaultValue:0},joinAt:{type:Sequelize[_0x8ed5[5]]},leaveAt:{type:Sequelize[_0x8ed5[5]]},completeAt:{type:Sequelize[_0x8ed5[5]]},complete:{type:Sequelize[_0x8ed5[6]],defaulValue:false},completeReason:{type:Sequelize.ENUM(_0x8ed5[7])},timeout:{type:Sequelize[_0x8ed5[6]],defaultValue:false},timeslot:{type:Sequelize[_0x8ed5[4]]}}
\ No newline at end of file
index 613cc85..1403aca 100644 (file)
@@ -1 +1 @@
-var _0x8f88=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x8f88[0];var jsonpatch=require(_0x8f88[1]);var rp=require(_0x8f88[2]);var moment=require(_0x8f88[3]);var BPromise=require(_0x8f88[4]);var util=require(_0x8f88[5]);var path=require(_0x8f88[6]);var sox=require(_0x8f88[7]);var ejs=require(_0x8f88[8]);var fs=require(_0x8f88[9]);var _=require(_0x8f88[10]);var squel=require(_0x8f88[11]);var crypto=require(_0x8f88[12]);var jsforce=require(_0x8f88[13]);var toCsv=require(_0x8f88[14]);var qs=require(_0x8f88[15]);var logger=require(_0x8f88[17])(_0x8f88[16]);var utils=require(_0x8f88[18]);var config=require(_0x8f88[19]);var db=require(_0x8f88[21])[_0x8f88[20]];function respondWithStatusCode(_0xbc20x15,_0xbc20x16,_0xbc20x17){_0xbc20x16= _0xbc20x16|| 204;return function(_0xbc20x18){if(_0xbc20x18){logger[_0x8f88[24]](_0x8f88[22],_0xbc20x17,_0xbc20x16,_0x8f88[23]);logger[_0x8f88[26]](_0x8f88[25],_0xbc20x17,_0xbc20x16,_0x8f88[23]);return _0xbc20x15[_0x8f88[27]](_0xbc20x16)};return _0xbc20x15[_0x8f88[29]](304)[_0x8f88[28]]()}}function respondWithResult(_0xbc20x15,_0xbc20x16,_0xbc20x17){_0xbc20x16= _0xbc20x16|| 200;return function(_0xbc20x18){if(_0xbc20x18){logger[_0x8f88[24]](_0x8f88[22],_0xbc20x17,_0xbc20x16,_0x8f88[30]);logger[_0x8f88[26]](_0x8f88[25],_0xbc20x17,_0xbc20x16,_0x8f88[30],JSON[_0x8f88[31]](_0xbc20x18));return _0xbc20x15[_0x8f88[29]](_0xbc20x16)[_0x8f88[32]](_0xbc20x18)};return _0xbc20x15[_0x8f88[29]](304)[_0x8f88[28]]()}}function respondWithFilteredResult(_0xbc20x15,_0xbc20x1b,_0xbc20x17){return function(_0xbc20x18){if(_0xbc20x18){var _0xbc20x1c=_0xbc20x18[_0x8f88[33]],_0xbc20x1d=_0xbc20x1b[_0x8f88[34]],_0xbc20x1e=_0xbc20x1b[_0x8f88[34]]+ _0xbc20x1b[_0x8f88[35]],_0xbc20x16;if(_0xbc20x1e>= _0xbc20x1c){_0xbc20x1e= _0xbc20x1c;_0xbc20x16= 200}else {_0xbc20x16= 206};_0xbc20x15[_0x8f88[29]](_0xbc20x16);logger[_0x8f88[24]](_0x8f88[22],_0xbc20x17,_0xbc20x16,_0x8f88[36]);logger[_0x8f88[26]](_0x8f88[25],_0xbc20x17,_0xbc20x16,_0x8f88[30],JSON[_0x8f88[31]](_0xbc20x18));return _0xbc20x15[_0x8f88[40]](_0x8f88[37],_0xbc20x1d+ _0x8f88[38]+ _0xbc20x1e+ _0x8f88[39]+ _0xbc20x1c)[_0x8f88[32]](_0xbc20x18)};return null}}function patchUpdates(_0xbc20x20){return function(_0xbc20x18){try{jsonpatch[_0x8f88[41]](_0xbc20x18,_0xbc20x20,true)}catch(err){return BPromise[_0x8f88[42]](err)};return _0xbc20x18[_0x8f88[43]]()}}function saveUpdates(_0xbc20x22,_0xbc20x16,_0xbc20x17){return function(_0xbc20x18){if(_0xbc20x18){return _0xbc20x18[_0x8f88[46]](_0xbc20x22)[_0x8f88[45]](function(_0xbc20x23){logger[_0x8f88[24]](_0x8f88[22],_0xbc20x17,_0xbc20x16,_0x8f88[44]);logger[_0x8f88[26]](_0x8f88[25],_0xbc20x17,_0xbc20x16,_0x8f88[44],JSON[_0x8f88[31]](_0xbc20x18));return _0xbc20x23})};return null}}function removeEntity(_0xbc20x15,_0xbc20x16,_0xbc20x17){return function(_0xbc20x18){if(_0xbc20x18){return _0xbc20x18[_0x8f88[48]]()[_0x8f88[45]](function(){logger[_0x8f88[24]](_0x8f88[22],_0xbc20x17,_0xbc20x16,_0x8f88[47]);logger[_0x8f88[26]](_0x8f88[25],_0xbc20x17,_0xbc20x16,_0x8f88[47],JSON[_0x8f88[31]](_0xbc20x18));_0xbc20x15[_0x8f88[29]](204)[_0x8f88[28]]()})}}}function handleEntityNotFound(_0xbc20x15,_0xbc20x16,_0xbc20x17){return function(_0xbc20x18){if(!_0xbc20x18){logger[_0x8f88[50]](_0x8f88[22],_0xbc20x17,404,_0x8f88[49]);_0xbc20x15[_0x8f88[29]](404)[_0x8f88[28]]();return null};return _0xbc20x18}}function handleError(_0xbc20x15,_0xbc20x16,_0xbc20x17){_0xbc20x16= _0xbc20x16|| 500;return function(_0xbc20x27){logger[_0x8f88[50]](_0x8f88[22],_0xbc20x17,_0xbc20x16,JSON[_0x8f88[31]](_0xbc20x27));delete _0xbc20x27[_0x8f88[51]];_0xbc20x15[_0x8f88[29]](_0xbc20x16)[_0x8f88[52]](_0xbc20x27)}}exports[_0x8f88[53]]= function(_0xbc20x28,_0xbc20x15){var _0xbc20x1b={},_0xbc20x29={};_0xbc20x29[_0x8f88[54]]= _[_0x8f88[57]](db[_0x8f88[56]][_0x8f88[55]]);_0xbc20x29[_0x8f88[58]]= _[_0x8f88[57]](_0xbc20x28[_0x8f88[58]]);_0xbc20x29[_0x8f88[59]]= _[_0x8f88[60]](_0xbc20x29[_0x8f88[54]],_0xbc20x29[_0x8f88[58]]);_0xbc20x1b[_0x8f88[61]]= _[_0x8f88[60]](_0xbc20x29[_0x8f88[54]],qs[_0x8f88[62]](_0xbc20x28[_0x8f88[58]][_0x8f88[62]]));_0xbc20x1b[_0x8f88[61]]= (_0xbc20x1b[_0x8f88[61]][_0x8f88[63]])?_0xbc20x1b[_0x8f88[61]]:_0xbc20x29[_0x8f88[54]];if(!_0xbc20x28[_0x8f88[58]][_0x8f88[65]](_0x8f88[64])){_0xbc20x1b[_0x8f88[35]]= qs[_0x8f88[35]](_0xbc20x28[_0x8f88[58]][_0x8f88[35]]);_0xbc20x1b[_0x8f88[34]]= qs[_0x8f88[34]](_0xbc20x28[_0x8f88[58]][_0x8f88[34]])};_0xbc20x1b[_0x8f88[66]]= qs[_0x8f88[67]](_0xbc20x28[_0x8f88[58]][_0x8f88[67]]);_0xbc20x1b[_0x8f88[68]]= qs[_0x8f88[59]](_[_0x8f88[69]](_0xbc20x28[_0x8f88[58]],_0xbc20x29[_0x8f88[59]]));if(_0xbc20x28[_0x8f88[58]][_0x8f88[70]]){_0xbc20x1b[_0x8f88[68]]= _[_0x8f88[73]](_0xbc20x1b[_0x8f88[68]],{$or:_[_0x8f88[72]](_0xbc20x1b[_0x8f88[61]],function(_0xbc20x2a){var _0xbc20x2b={};_0xbc20x2b[_0xbc20x2a]= {$like:_0x8f88[71]+ _0xbc20x28[_0x8f88[58]][_0x8f88[70]]+ _0x8f88[71]};return _0xbc20x2b})})};_0xbc20x1b= _[_0x8f88[73]]({},_0xbc20x1b,_0xbc20x28[_0x8f88[74]]);return db[_0x8f88[56]][_0x8f88[76]](_0xbc20x1b)[_0x8f88[45]](respondWithFilteredResult(_0xbc20x15,_0xbc20x1b,_0x8f88[53]))[_0x8f88[75]](handleError(_0xbc20x15,null,_0x8f88[53]))};exports[_0x8f88[77]]= function(_0xbc20x28,_0xbc20x15){var _0xbc20x1b={raw:false,where:{id:_0xbc20x28[_0x8f88[79]][_0x8f88[78]]}},_0xbc20x29={};_0xbc20x29[_0x8f88[54]]= _[_0x8f88[57]](db[_0x8f88[56]][_0x8f88[55]]);_0xbc20x29[_0x8f88[58]]= _[_0x8f88[57]](_0xbc20x28[_0x8f88[58]]);_0xbc20x29[_0x8f88[59]]= _[_0x8f88[60]](_0xbc20x29[_0x8f88[54]],_0xbc20x29[_0x8f88[58]]);_0xbc20x1b[_0x8f88[61]]= _[_0x8f88[60]](_0xbc20x29[_0x8f88[54]],qs[_0x8f88[62]](_0xbc20x28[_0x8f88[58]][_0x8f88[62]]));_0xbc20x1b[_0x8f88[61]]= (_0xbc20x1b[_0x8f88[61]][_0x8f88[63]])?_0xbc20x1b[_0x8f88[61]]:_0xbc20x29[_0x8f88[54]];_0xbc20x1b= _[_0x8f88[73]]({},_0xbc20x1b,_0xbc20x28[_0x8f88[74]]);return db[_0x8f88[56]][_0x8f88[80]](_0xbc20x1b)[_0x8f88[45]](handleEntityNotFound(_0xbc20x15,null,_0x8f88[77]))[_0x8f88[45]](respondWithResult(_0xbc20x15,null,_0x8f88[77]))[_0x8f88[75]](handleError(_0xbc20x15,null,_0x8f88[77]))};exports[_0x8f88[81]]= function(_0xbc20x28,_0xbc20x15){return db[_0x8f88[56]][_0x8f88[81]](_0xbc20x28[_0x8f88[82]],{})[_0x8f88[45]](respondWithResult(_0xbc20x15,201,_0x8f88[81]))[_0x8f88[75]](handleError(_0xbc20x15,null,_0x8f88[81]))};exports[_0x8f88[46]]= function(_0xbc20x28,_0xbc20x15){if(_0xbc20x28[_0x8f88[82]][_0x8f88[78]]){delete _0xbc20x28[_0x8f88[82]][_0x8f88[78]]};return db[_0x8f88[56]][_0x8f88[80]]({where:{id:_0xbc20x28[_0x8f88[79]][_0x8f88[78]]}})[_0x8f88[45]](handleEntityNotFound(_0xbc20x15,null,_0x8f88[46]))[_0x8f88[45]](saveUpdates(_0xbc20x28[_0x8f88[82]],null,_0x8f88[46]))[_0x8f88[45]](respondWithResult(_0xbc20x15,null,_0x8f88[46]))[_0x8f88[75]](handleError(_0xbc20x15,null,_0x8f88[46]))};exports[_0x8f88[48]]= function(_0xbc20x28,_0xbc20x15){return db[_0x8f88[56]][_0x8f88[80]]({where:{id:_0xbc20x28[_0x8f88[79]][_0x8f88[78]]}})[_0x8f88[45]](handleEntityNotFound(_0xbc20x15,null,_0x8f88[48]))[_0x8f88[45]](removeEntity(_0xbc20x15,null,_0x8f88[48]))[_0x8f88[75]](handleError(_0xbc20x15,null,_0x8f88[48]))};exports[_0x8f88[83]]= function(_0xbc20x28,_0xbc20x15){return db[_0x8f88[56]][_0x8f88[83]]()[_0x8f88[45]](respondWithResult(_0xbc20x15,null,_0x8f88[83]))[_0x8f88[75]](handleError(_0xbc20x15,null,_0x8f88[83]))}
\ No newline at end of file
+var _0xee03=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xee03[0];var jsonpatch=require(_0xee03[1]);var rp=require(_0xee03[2]);var moment=require(_0xee03[3]);var BPromise=require(_0xee03[4]);var util=require(_0xee03[5]);var path=require(_0xee03[6]);var sox=require(_0xee03[7]);var ejs=require(_0xee03[8]);var fs=require(_0xee03[9]);var _=require(_0xee03[10]);var squel=require(_0xee03[11]);var crypto=require(_0xee03[12]);var jsforce=require(_0xee03[13]);var toCsv=require(_0xee03[14]);var qs=require(_0xee03[15]);var logger=require(_0xee03[17])(_0xee03[16]);var utils=require(_0xee03[18]);var config=require(_0xee03[19]);var db=require(_0xee03[21])[_0xee03[20]];function respondWithStatusCode(_0x2c7dx15,_0x2c7dx16,_0x2c7dx17){_0x2c7dx16= _0x2c7dx16|| 204;return function(_0x2c7dx18){if(_0x2c7dx18){logger[_0xee03[24]](_0xee03[22],_0x2c7dx17,_0x2c7dx16,_0xee03[23]);logger[_0xee03[26]](_0xee03[25],_0x2c7dx17,_0x2c7dx16,_0xee03[23]);return _0x2c7dx15[_0xee03[27]](_0x2c7dx16)};return _0x2c7dx15[_0xee03[29]](304)[_0xee03[28]]()}}function respondWithResult(_0x2c7dx15,_0x2c7dx16,_0x2c7dx17){_0x2c7dx16= _0x2c7dx16|| 200;return function(_0x2c7dx18){if(_0x2c7dx18){logger[_0xee03[24]](_0xee03[22],_0x2c7dx17,_0x2c7dx16,_0xee03[30]);logger[_0xee03[26]](_0xee03[25],_0x2c7dx17,_0x2c7dx16,_0xee03[30],JSON[_0xee03[31]](_0x2c7dx18));return _0x2c7dx15[_0xee03[29]](_0x2c7dx16)[_0xee03[32]](_0x2c7dx18)};return _0x2c7dx15[_0xee03[29]](304)[_0xee03[28]]()}}function respondWithFilteredResult(_0x2c7dx15,_0x2c7dx1b,_0x2c7dx17){return function(_0x2c7dx18){if(_0x2c7dx18){var _0x2c7dx1c=_0x2c7dx18[_0xee03[33]],_0x2c7dx1d=_0x2c7dx1b[_0xee03[34]],_0x2c7dx1e=_0x2c7dx1b[_0xee03[34]]+ _0x2c7dx1b[_0xee03[35]],_0x2c7dx16;if(_0x2c7dx1e>= _0x2c7dx1c){_0x2c7dx1e= _0x2c7dx1c;_0x2c7dx16= 200}else {_0x2c7dx16= 206};_0x2c7dx15[_0xee03[29]](_0x2c7dx16);logger[_0xee03[24]](_0xee03[22],_0x2c7dx17,_0x2c7dx16,_0xee03[36]);logger[_0xee03[26]](_0xee03[25],_0x2c7dx17,_0x2c7dx16,_0xee03[30],JSON[_0xee03[31]](_0x2c7dx18));return _0x2c7dx15[_0xee03[40]](_0xee03[37],_0x2c7dx1d+ _0xee03[38]+ _0x2c7dx1e+ _0xee03[39]+ _0x2c7dx1c)[_0xee03[32]](_0x2c7dx18)};return null}}function patchUpdates(_0x2c7dx20){return function(_0x2c7dx18){try{jsonpatch[_0xee03[41]](_0x2c7dx18,_0x2c7dx20,true)}catch(err){return BPromise[_0xee03[42]](err)};return _0x2c7dx18[_0xee03[43]]()}}function saveUpdates(_0x2c7dx22,_0x2c7dx16,_0x2c7dx17){return function(_0x2c7dx18){if(_0x2c7dx18){return _0x2c7dx18[_0xee03[46]](_0x2c7dx22)[_0xee03[45]](function(_0x2c7dx23){logger[_0xee03[24]](_0xee03[22],_0x2c7dx17,_0x2c7dx16,_0xee03[44]);logger[_0xee03[26]](_0xee03[25],_0x2c7dx17,_0x2c7dx16,_0xee03[44],JSON[_0xee03[31]](_0x2c7dx18));return _0x2c7dx23})};return null}}function removeEntity(_0x2c7dx15,_0x2c7dx16,_0x2c7dx17){return function(_0x2c7dx18){if(_0x2c7dx18){return _0x2c7dx18[_0xee03[48]]()[_0xee03[45]](function(){logger[_0xee03[24]](_0xee03[22],_0x2c7dx17,_0x2c7dx16,_0xee03[47]);logger[_0xee03[26]](_0xee03[25],_0x2c7dx17,_0x2c7dx16,_0xee03[47],JSON[_0xee03[31]](_0x2c7dx18));_0x2c7dx15[_0xee03[29]](204)[_0xee03[28]]()})}}}function handleEntityNotFound(_0x2c7dx15,_0x2c7dx16,_0x2c7dx17){return function(_0x2c7dx18){if(!_0x2c7dx18){logger[_0xee03[50]](_0xee03[22],_0x2c7dx17,404,_0xee03[49]);_0x2c7dx15[_0xee03[29]](404)[_0xee03[28]]();return null};return _0x2c7dx18}}function handleError(_0x2c7dx15,_0x2c7dx16,_0x2c7dx17){_0x2c7dx16= _0x2c7dx16|| 500;return function(_0x2c7dx27){logger[_0xee03[50]](_0xee03[22],_0x2c7dx17,_0x2c7dx16,JSON[_0xee03[31]](_0x2c7dx27));delete _0x2c7dx27[_0xee03[51]];_0x2c7dx15[_0xee03[29]](_0x2c7dx16)[_0xee03[52]](_0x2c7dx27)}}exports[_0xee03[53]]= function(_0x2c7dx28,_0x2c7dx15){var _0x2c7dx1b={},_0x2c7dx29={};_0x2c7dx29[_0xee03[54]]= _[_0xee03[57]](db[_0xee03[56]][_0xee03[55]]);_0x2c7dx29[_0xee03[58]]= _[_0xee03[57]](_0x2c7dx28[_0xee03[58]]);_0x2c7dx29[_0xee03[59]]= _[_0xee03[60]](_0x2c7dx29[_0xee03[54]],_0x2c7dx29[_0xee03[58]]);_0x2c7dx1b[_0xee03[61]]= _[_0xee03[60]](_0x2c7dx29[_0xee03[54]],qs[_0xee03[62]](_0x2c7dx28[_0xee03[58]][_0xee03[62]]));_0x2c7dx1b[_0xee03[61]]= (_0x2c7dx1b[_0xee03[61]][_0xee03[63]])?_0x2c7dx1b[_0xee03[61]]:_0x2c7dx29[_0xee03[54]];if(!_0x2c7dx28[_0xee03[58]][_0xee03[65]](_0xee03[64])){_0x2c7dx1b[_0xee03[35]]= qs[_0xee03[35]](_0x2c7dx28[_0xee03[58]][_0xee03[35]]);_0x2c7dx1b[_0xee03[34]]= qs[_0xee03[34]](_0x2c7dx28[_0xee03[58]][_0xee03[34]])};_0x2c7dx1b[_0xee03[66]]= qs[_0xee03[67]](_0x2c7dx28[_0xee03[58]][_0xee03[67]]);_0x2c7dx1b[_0xee03[68]]= qs[_0xee03[59]](_[_0xee03[69]](_0x2c7dx28[_0xee03[58]],_0x2c7dx29[_0xee03[59]]));if(_0x2c7dx28[_0xee03[58]][_0xee03[70]]){_0x2c7dx1b[_0xee03[68]]= _[_0xee03[73]](_0x2c7dx1b[_0xee03[68]],{$or:_[_0xee03[72]](_0x2c7dx1b[_0xee03[61]],function(_0x2c7dx2a){var _0x2c7dx2b={};_0x2c7dx2b[_0x2c7dx2a]= {$like:_0xee03[71]+ _0x2c7dx28[_0xee03[58]][_0xee03[70]]+ _0xee03[71]};return _0x2c7dx2b})})};_0x2c7dx1b= _[_0xee03[73]]({},_0x2c7dx1b,_0x2c7dx28[_0xee03[74]]);return db[_0xee03[56]][_0xee03[76]](_0x2c7dx1b)[_0xee03[45]](respondWithFilteredResult(_0x2c7dx15,_0x2c7dx1b,_0xee03[53]))[_0xee03[75]](handleError(_0x2c7dx15,null,_0xee03[53]))};exports[_0xee03[77]]= function(_0x2c7dx28,_0x2c7dx15){var _0x2c7dx1b={raw:false,where:{id:_0x2c7dx28[_0xee03[79]][_0xee03[78]]}},_0x2c7dx29={};_0x2c7dx29[_0xee03[54]]= _[_0xee03[57]](db[_0xee03[56]][_0xee03[55]]);_0x2c7dx29[_0xee03[58]]= _[_0xee03[57]](_0x2c7dx28[_0xee03[58]]);_0x2c7dx29[_0xee03[59]]= _[_0xee03[60]](_0x2c7dx29[_0xee03[54]],_0x2c7dx29[_0xee03[58]]);_0x2c7dx1b[_0xee03[61]]= _[_0xee03[60]](_0x2c7dx29[_0xee03[54]],qs[_0xee03[62]](_0x2c7dx28[_0xee03[58]][_0xee03[62]]));_0x2c7dx1b[_0xee03[61]]= (_0x2c7dx1b[_0xee03[61]][_0xee03[63]])?_0x2c7dx1b[_0xee03[61]]:_0x2c7dx29[_0xee03[54]];_0x2c7dx1b= _[_0xee03[73]]({},_0x2c7dx1b,_0x2c7dx28[_0xee03[74]]);return db[_0xee03[56]][_0xee03[80]](_0x2c7dx1b)[_0xee03[45]](handleEntityNotFound(_0x2c7dx15,null,_0xee03[77]))[_0xee03[45]](respondWithResult(_0x2c7dx15,null,_0xee03[77]))[_0xee03[75]](handleError(_0x2c7dx15,null,_0xee03[77]))};exports[_0xee03[81]]= function(_0x2c7dx28,_0x2c7dx15){return db[_0xee03[56]][_0xee03[81]](_0x2c7dx28[_0xee03[82]],{})[_0xee03[45]](respondWithResult(_0x2c7dx15,201,_0xee03[81]))[_0xee03[75]](handleError(_0x2c7dx15,null,_0xee03[81]))};exports[_0xee03[46]]= function(_0x2c7dx28,_0x2c7dx15){if(_0x2c7dx28[_0xee03[82]][_0xee03[78]]){delete _0x2c7dx28[_0xee03[82]][_0xee03[78]]};return db[_0xee03[56]][_0xee03[80]]({where:{id:_0x2c7dx28[_0xee03[79]][_0xee03[78]]}})[_0xee03[45]](handleEntityNotFound(_0x2c7dx15,null,_0xee03[46]))[_0xee03[45]](saveUpdates(_0x2c7dx28[_0xee03[82]],null,_0xee03[46]))[_0xee03[45]](respondWithResult(_0x2c7dx15,null,_0xee03[46]))[_0xee03[75]](handleError(_0x2c7dx15,null,_0xee03[46]))};exports[_0xee03[48]]= function(_0x2c7dx28,_0x2c7dx15){return db[_0xee03[56]][_0xee03[80]]({where:{id:_0x2c7dx28[_0xee03[79]][_0xee03[78]]}})[_0xee03[45]](handleEntityNotFound(_0x2c7dx15,null,_0xee03[48]))[_0xee03[45]](removeEntity(_0x2c7dx15,null,_0xee03[48]))[_0xee03[75]](handleError(_0x2c7dx15,null,_0xee03[48]))};exports[_0xee03[83]]= function(_0x2c7dx28,_0x2c7dx15){return db[_0xee03[56]][_0xee03[83]]()[_0xee03[45]](respondWithResult(_0x2c7dx15,null,_0xee03[83]))[_0xee03[75]](handleError(_0x2c7dx15,null,_0xee03[83]))}
\ No newline at end of file
index e7fa1e3..e940282 100644 (file)
@@ -1 +1 @@
-var _0x960b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x66\x61\x78\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x960b[0];var _=require(_0x960b[1]);var util=require(_0x960b[2]);var logger=require(_0x960b[4])(_0x960b[3]);var attributes=require(_0x960b[5]);module[_0x960b[6]]= function(_0xcbb5x5,_0xcbb5x6){return _0xcbb5x5[_0x960b[9]](_0x960b[7],attributes,{tableName:_0x960b[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4576=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x66\x61\x78\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x4576[0];var _=require(_0x4576[1]);var util=require(_0x4576[2]);var logger=require(_0x4576[4])(_0x4576[3]);var attributes=require(_0x4576[5]);module[_0x4576[6]]= function(_0x13eax5,_0x13eax6){return _0x13eax5[_0x4576[9]](_0x4576[7],attributes,{tableName:_0x4576[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5af7b50..f84d078 100644 (file)
@@ -1 +1 @@
-var _0xa110=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xa110[0];var _=require(_0xa110[1]);var util=require(_0xa110[2]);var moment=require(_0xa110[3]);var BPromise=require(_0xa110[4]);var db=require(_0xa110[6])[_0xa110[5]];var utils=require(_0xa110[7]);var logger=require(_0xa110[9])(_0xa110[8]);var jayson=require(_0xa110[10]);var client=jayson[_0xa110[12]][_0xa110[11]]({port:9002});function respondWithRpcPromise(_0x5c7axb,_0x5c7axc,_0x5c7axd){return  new BPromise(function(_0x5c7axe,_0x5c7axf){return client[_0xa110[25]](_0x5c7axb,_0x5c7axd)[_0xa110[24]](function(_0x5c7ax11){logger[_0xa110[17]](_0xa110[13],_0x5c7axc,_0xa110[16]);logger[_0xa110[20]](_0xa110[18],_0x5c7axc,_0xa110[16],JSON[_0xa110[19]](_0x5c7ax11));if(_0x5c7ax11[_0xa110[14]]){if(_0x5c7ax11[_0xa110[14]][_0xa110[21]]=== 500){logger[_0xa110[14]](_0xa110[13],_0x5c7axc,_0x5c7ax11[_0xa110[14]][_0xa110[22]]);return _0x5c7axf(_0x5c7ax11[_0xa110[14]][_0xa110[22]])};logger[_0xa110[14]](_0xa110[13],_0x5c7axc,_0x5c7ax11[_0xa110[14]][_0xa110[22]]);return _0x5c7axe(_0x5c7ax11[_0xa110[14]][_0xa110[22]])}else {logger[_0xa110[17]](_0xa110[13],_0x5c7axc,_0xa110[16]);_0x5c7axe(_0x5c7ax11[_0xa110[23]][_0xa110[22]])}})[_0xa110[15]](function(_0x5c7ax10){logger[_0xa110[14]](_0xa110[13],_0x5c7axc,_0x5c7ax10);_0x5c7axf(_0x5c7ax10)})})}
\ No newline at end of file
+var _0xa3b3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xa3b3[0];var _=require(_0xa3b3[1]);var util=require(_0xa3b3[2]);var moment=require(_0xa3b3[3]);var BPromise=require(_0xa3b3[4]);var db=require(_0xa3b3[6])[_0xa3b3[5]];var utils=require(_0xa3b3[7]);var logger=require(_0xa3b3[9])(_0xa3b3[8]);var jayson=require(_0xa3b3[10]);var client=jayson[_0xa3b3[12]][_0xa3b3[11]]({port:9002});function respondWithRpcPromise(_0x195exb,_0x195exc,_0x195exd){return  new BPromise(function(_0x195exe,_0x195exf){return client[_0xa3b3[25]](_0x195exb,_0x195exd)[_0xa3b3[24]](function(_0x195ex11){logger[_0xa3b3[17]](_0xa3b3[13],_0x195exc,_0xa3b3[16]);logger[_0xa3b3[20]](_0xa3b3[18],_0x195exc,_0xa3b3[16],JSON[_0xa3b3[19]](_0x195ex11));if(_0x195ex11[_0xa3b3[14]]){if(_0x195ex11[_0xa3b3[14]][_0xa3b3[21]]=== 500){logger[_0xa3b3[14]](_0xa3b3[13],_0x195exc,_0x195ex11[_0xa3b3[14]][_0xa3b3[22]]);return _0x195exf(_0x195ex11[_0xa3b3[14]][_0xa3b3[22]])};logger[_0xa3b3[14]](_0xa3b3[13],_0x195exc,_0x195ex11[_0xa3b3[14]][_0xa3b3[22]]);return _0x195exe(_0x195ex11[_0xa3b3[14]][_0xa3b3[22]])}else {logger[_0xa3b3[17]](_0xa3b3[13],_0x195exc,_0xa3b3[16]);_0x195exe(_0x195ex11[_0xa3b3[23]][_0xa3b3[22]])}})[_0xa3b3[15]](function(_0x195ex10){logger[_0xa3b3[14]](_0xa3b3[13],_0x195exc,_0x195ex10);_0x195exf(_0x195ex10)})})}
\ No newline at end of file
index 12ebb4a..40979b7 100644 (file)
@@ -1 +1 @@
-var _0x2610=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2610[0];var multer=require(_0x2610[1]);var util=require(_0x2610[2]);var path=require(_0x2610[3]);var express=require(_0x2610[4]);var router=express.Router();var auth=require(_0x2610[5]);var config=require(_0x2610[6]);var controller=require(_0x2610[7]);router[_0x2610[11]](_0x2610[8],auth[_0x2610[9]](),controller[_0x2610[10]]);router[_0x2610[11]](_0x2610[12],auth[_0x2610[9]](),controller[_0x2610[13]]);router[_0x2610[11]](_0x2610[14],auth[_0x2610[9]](),controller[_0x2610[15]]);router[_0x2610[17]](_0x2610[8],auth[_0x2610[9]](),controller[_0x2610[16]]);router[_0x2610[19]](_0x2610[14],auth[_0x2610[9]](),controller[_0x2610[18]]);router[_0x2610[21]](_0x2610[14],auth[_0x2610[9]](),controller[_0x2610[20]]);module[_0x2610[22]]= router
\ No newline at end of file
+var _0xea32=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xea32[0];var multer=require(_0xea32[1]);var util=require(_0xea32[2]);var path=require(_0xea32[3]);var express=require(_0xea32[4]);var router=express.Router();var auth=require(_0xea32[5]);var config=require(_0xea32[6]);var controller=require(_0xea32[7]);router[_0xea32[11]](_0xea32[8],auth[_0xea32[9]](),controller[_0xea32[10]]);router[_0xea32[11]](_0xea32[12],auth[_0xea32[9]](),controller[_0xea32[13]]);router[_0xea32[11]](_0xea32[14],auth[_0xea32[9]](),controller[_0xea32[15]]);router[_0xea32[17]](_0xea32[8],auth[_0xea32[9]](),controller[_0xea32[16]]);router[_0xea32[19]](_0xea32[14],auth[_0xea32[9]](),controller[_0xea32[18]]);router[_0xea32[21]](_0xea32[14],auth[_0xea32[9]](),controller[_0xea32[20]]);module[_0xea32[22]]= router
\ No newline at end of file
index 2e5a714..fdc9eec 100644 (file)
@@ -1 +1 @@
-var _0xd871=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd871[0];var multer=require(_0xd871[1]);var util=require(_0xd871[2]);var path=require(_0xd871[3]);var express=require(_0xd871[4]);var router=express.Router();var auth=require(_0xd871[5]);var config=require(_0xd871[6]);var controller=require(_0xd871[7]);router[_0xd871[11]](_0xd871[8],auth[_0xd871[9]](),controller[_0xd871[10]]);router[_0xd871[11]](_0xd871[12],auth[_0xd871[9]](),controller[_0xd871[13]]);router[_0xd871[11]](_0xd871[14],auth[_0xd871[9]](),controller[_0xd871[15]]);router[_0xd871[11]](_0xd871[16],auth[_0xd871[9]](),controller[_0xd871[17]]);router[_0xd871[19]](_0xd871[8],auth[_0xd871[9]](),controller[_0xd871[18]]);router[_0xd871[19]](_0xd871[14],auth[_0xd871[9]](),controller[_0xd871[20]]);router[_0xd871[22]](_0xd871[12],auth[_0xd871[9]](),controller[_0xd871[21]]);router[_0xd871[24]](_0xd871[12],auth[_0xd871[9]](),controller[_0xd871[23]]);module[_0xd871[25]]= router
\ No newline at end of file
+var _0xe56a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe56a[0];var multer=require(_0xe56a[1]);var util=require(_0xe56a[2]);var path=require(_0xe56a[3]);var express=require(_0xe56a[4]);var router=express.Router();var auth=require(_0xe56a[5]);var config=require(_0xe56a[6]);var controller=require(_0xe56a[7]);router[_0xe56a[11]](_0xe56a[8],auth[_0xe56a[9]](),controller[_0xe56a[10]]);router[_0xe56a[11]](_0xe56a[12],auth[_0xe56a[9]](),controller[_0xe56a[13]]);router[_0xe56a[11]](_0xe56a[14],auth[_0xe56a[9]](),controller[_0xe56a[15]]);router[_0xe56a[11]](_0xe56a[16],auth[_0xe56a[9]](),controller[_0xe56a[17]]);router[_0xe56a[19]](_0xe56a[8],auth[_0xe56a[9]](),controller[_0xe56a[18]]);router[_0xe56a[19]](_0xe56a[14],auth[_0xe56a[9]](),controller[_0xe56a[20]]);router[_0xe56a[22]](_0xe56a[12],auth[_0xe56a[9]](),controller[_0xe56a[21]]);router[_0xe56a[24]](_0xe56a[12],auth[_0xe56a[9]](),controller[_0xe56a[23]]);module[_0xe56a[25]]= router
\ No newline at end of file
index 4768075..3abd377 100644 (file)
@@ -1 +1 @@
-var _0x4b6f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69"];_0x4b6f[0];var Sequelize=require(_0x4b6f[1]);module[_0x4b6f[2]]= {name:{type:Sequelize[_0x4b6f[3]]},description:{type:Sequelize[_0x4b6f[3]]},username:{type:Sequelize[_0x4b6f[3]],unique:_0x4b6f[4]},apiKey:{type:Sequelize[_0x4b6f[3]]},remoteUri:{type:Sequelize[_0x4b6f[3]],unique:_0x4b6f[5]},serverUrl:{type:Sequelize[_0x4b6f[3]]}}
\ No newline at end of file
+var _0xf210=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69"];_0xf210[0];var Sequelize=require(_0xf210[1]);module[_0xf210[2]]= {name:{type:Sequelize[_0xf210[3]]},description:{type:Sequelize[_0xf210[3]]},username:{type:Sequelize[_0xf210[3]],unique:_0xf210[4]},apiKey:{type:Sequelize[_0xf210[3]]},remoteUri:{type:Sequelize[_0xf210[3]],unique:_0xf210[5]},serverUrl:{type:Sequelize[_0xf210[3]]}}
\ No newline at end of file
index 3d3c09e..76f3b67 100644 (file)
@@ -1 +1 @@
-var _0xf607=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x79\x70\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x72\x65\x71\x75\x65\x73\x74\x65\x72","\x73\x75\x62\x6A\x65\x63\x74","\x61\x67\x65\x6E\x74","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x67\x72\x6F\x75\x70","\x73\x6F\x75\x72\x63\x65","\x74\x69\x63\x6B\x65\x74\x5F\x74\x79\x70\x65","\x63\x6F\x6D\x70\x61\x6E\x79","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x6C\x61\x62\x65\x6C","\x64\x65\x66\x61\x75\x6C\x74","\x63\x68\x6F\x69\x63\x65\x73","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","\x47\x45\x54","\x25\x73\x25\x73","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x61\x70\x69\x2F\x76\x32\x2F\x74\x69\x63\x6B\x65\x74\x5F\x66\x69\x65\x6C\x64\x73","\x66\x6F\x72\x6D\x61\x74","\x42\x61\x73\x69\x63\x20\x25\x73","\x62\x61\x73\x65\x36\x34","\x25\x73\x3A\x58","\x61\x70\x69\x4B\x65\x79"];_0xf607[0];var jsonpatch=require(_0xf607[1]);var rp=require(_0xf607[2]);var moment=require(_0xf607[3]);var BPromise=require(_0xf607[4]);var util=require(_0xf607[5]);var path=require(_0xf607[6]);var sox=require(_0xf607[7]);var ejs=require(_0xf607[8]);var fs=require(_0xf607[9]);var _=require(_0xf607[10]);var squel=require(_0xf607[11]);var crypto=require(_0xf607[12]);var jsforce=require(_0xf607[13]);var toCsv=require(_0xf607[14]);var qs=require(_0xf607[15]);var logger=require(_0xf607[17])(_0xf607[16]);var utils=require(_0xf607[18]);var config=require(_0xf607[19]);var db=require(_0xf607[21])[_0xf607[20]];var integrations=require(_0xf607[22]);var jayson=require(_0xf607[23]);var client=jayson[_0xf607[25]][_0xf607[24]]({port:9002});function respondWithRpcPromise(_0x66a9x18,_0x66a9x19,_0x66a9x1a){return  new BPromise(function(_0x66a9x1b,_0x66a9x1c){return client[_0xf607[38]](_0x66a9x18,_0x66a9x1a)[_0xf607[37]](function(_0x66a9x1e){logger[_0xf607[30]](_0xf607[26],_0x66a9x19,_0xf607[29]);logger[_0xf607[33]](_0xf607[31],_0x66a9x19,_0xf607[29],JSON[_0xf607[32]](_0x66a9x1e));if(_0x66a9x1e[_0xf607[27]]){if(_0x66a9x1e[_0xf607[27]][_0xf607[34]]=== 500){logger[_0xf607[27]](_0xf607[26],_0x66a9x19,_0x66a9x1e[_0xf607[27]][_0xf607[35]]);return _0x66a9x1c(_0x66a9x1e[_0xf607[27]][_0xf607[35]])};logger[_0xf607[27]](_0xf607[26],_0x66a9x19,_0x66a9x1e[_0xf607[27]][_0xf607[35]]);return _0x66a9x1b(_0x66a9x1e[_0xf607[27]][_0xf607[35]])}else {logger[_0xf607[30]](_0xf607[26],_0x66a9x19,_0xf607[29]);_0x66a9x1b(_0x66a9x1e[_0xf607[36]][_0xf607[35]])}})[_0xf607[28]](function(_0x66a9x1d){logger[_0xf607[27]](_0xf607[26],_0x66a9x19,_0x66a9x1d);_0x66a9x1c(_0x66a9x1d)})})}function respondWithStatusCode(_0x66a9x1e,_0x66a9x20,_0x66a9x19){_0x66a9x20= _0x66a9x20|| 204;return function(_0x66a9x21){if(_0x66a9x21){logger[_0xf607[30]](_0xf607[31],_0x66a9x19,_0x66a9x20,_0xf607[39]);logger[_0xf607[33]](_0xf607[40],_0x66a9x19,_0x66a9x20,_0xf607[39]);return _0x66a9x1e[_0xf607[41]](_0x66a9x20)};return _0x66a9x1e[_0xf607[43]](304)[_0xf607[42]]()}}function respondWithResult(_0x66a9x1e,_0x66a9x20,_0x66a9x19){_0x66a9x20= _0x66a9x20|| 200;return function(_0x66a9x21){if(_0x66a9x21){logger[_0xf607[30]](_0xf607[31],_0x66a9x19,_0x66a9x20,_0xf607[44]);logger[_0xf607[33]](_0xf607[40],_0x66a9x19,_0x66a9x20,_0xf607[44],JSON[_0xf607[32]](_0x66a9x21));return _0x66a9x1e[_0xf607[43]](_0x66a9x20)[_0xf607[45]](_0x66a9x21)};return _0x66a9x1e[_0xf607[43]](304)[_0xf607[42]]()}}function respondWithFilteredResult(_0x66a9x1e,_0x66a9x24,_0x66a9x19){return function(_0x66a9x21){if(_0x66a9x21){var _0x66a9x25=_0x66a9x21[_0xf607[46]],_0x66a9x26=_0x66a9x24[_0xf607[47]],_0x66a9x27=_0x66a9x24[_0xf607[47]]+ _0x66a9x24[_0xf607[48]],_0x66a9x20;if(_0x66a9x27>= _0x66a9x25){_0x66a9x27= _0x66a9x25;_0x66a9x20= 200}else {_0x66a9x20= 206};_0x66a9x1e[_0xf607[43]](_0x66a9x20);logger[_0xf607[30]](_0xf607[31],_0x66a9x19,_0x66a9x20,_0xf607[49]);logger[_0xf607[33]](_0xf607[40],_0x66a9x19,_0x66a9x20,_0xf607[44],JSON[_0xf607[32]](_0x66a9x21));return _0x66a9x1e[_0xf607[53]](_0xf607[50],_0x66a9x26+ _0xf607[51]+ _0x66a9x27+ _0xf607[52]+ _0x66a9x25)[_0xf607[45]](_0x66a9x21)};return null}}function patchUpdates(_0x66a9x29){return function(_0x66a9x21){try{jsonpatch[_0xf607[54]](_0x66a9x21,_0x66a9x29,true)}catch(err){return BPromise[_0xf607[55]](err)};return _0x66a9x21[_0xf607[56]]()}}function saveUpdates(_0x66a9x2b,_0x66a9x20,_0x66a9x19){return function(_0x66a9x21){if(_0x66a9x21){return _0x66a9x21[_0xf607[58]](_0x66a9x2b)[_0xf607[37]](function(_0x66a9x2c){logger[_0xf607[30]](_0xf607[31],_0x66a9x19,_0x66a9x20,_0xf607[57]);logger[_0xf607[33]](_0xf607[40],_0x66a9x19,_0x66a9x20,_0xf607[57],JSON[_0xf607[32]](_0x66a9x21));return _0x66a9x2c})};return null}}function removeEntity(_0x66a9x1e,_0x66a9x20,_0x66a9x19){return function(_0x66a9x21){if(_0x66a9x21){return _0x66a9x21[_0xf607[60]]()[_0xf607[37]](function(){logger[_0xf607[30]](_0xf607[31],_0x66a9x19,_0x66a9x20,_0xf607[59]);logger[_0xf607[33]](_0xf607[40],_0x66a9x19,_0x66a9x20,_0xf607[59],JSON[_0xf607[32]](_0x66a9x21));_0x66a9x1e[_0xf607[43]](204)[_0xf607[42]]()})}}}function handleEntityNotFound(_0x66a9x1e,_0x66a9x20,_0x66a9x19){return function(_0x66a9x21){if(!_0x66a9x21){logger[_0xf607[27]](_0xf607[31],_0x66a9x19,404,_0xf607[61]);_0x66a9x1e[_0xf607[43]](404)[_0xf607[42]]();return null};return _0x66a9x21}}function handleError(_0x66a9x1e,_0x66a9x20,_0x66a9x19){_0x66a9x20= _0x66a9x20|| 500;return function(_0x66a9x1d){logger[_0xf607[27]](_0xf607[31],_0x66a9x19,_0x66a9x20,JSON[_0xf607[32]](_0x66a9x1d));delete _0x66a9x1d[_0xf607[62]];_0x66a9x1e[_0xf607[43]](_0x66a9x20)[_0xf607[63]](_0x66a9x1d)}}exports[_0xf607[64]]= function(_0x66a9x1a,_0x66a9x1e){var _0x66a9x24={},_0x66a9x30={};_0x66a9x30[_0xf607[65]]= _[_0xf607[68]](db[_0xf607[67]][_0xf607[66]]);_0x66a9x30[_0xf607[69]]= _[_0xf607[68]](_0x66a9x1a[_0xf607[69]]);_0x66a9x30[_0xf607[70]]= _[_0xf607[71]](_0x66a9x30[_0xf607[65]],_0x66a9x30[_0xf607[69]]);_0x66a9x24[_0xf607[72]]= _[_0xf607[71]](_0x66a9x30[_0xf607[65]],qs[_0xf607[73]](_0x66a9x1a[_0xf607[69]][_0xf607[73]]));_0x66a9x24[_0xf607[72]]= (_0x66a9x24[_0xf607[72]][_0xf607[74]])?_0x66a9x24[_0xf607[72]]:_0x66a9x30[_0xf607[65]];if(!_0x66a9x1a[_0xf607[69]][_0xf607[76]](_0xf607[75])){_0x66a9x24[_0xf607[48]]= qs[_0xf607[48]](_0x66a9x1a[_0xf607[69]][_0xf607[48]]);_0x66a9x24[_0xf607[47]]= qs[_0xf607[47]](_0x66a9x1a[_0xf607[69]][_0xf607[47]])};_0x66a9x24[_0xf607[77]]= qs[_0xf607[78]](_0x66a9x1a[_0xf607[69]][_0xf607[78]]);_0x66a9x24[_0xf607[79]]= qs[_0xf607[70]](_[_0xf607[80]](_0x66a9x1a[_0xf607[69]],_0x66a9x30[_0xf607[70]]));if(_0x66a9x1a[_0xf607[69]][_0xf607[81]]){_0x66a9x24[_0xf607[79]]= _[_0xf607[84]](_0x66a9x24[_0xf607[79]],{$or:_[_0xf607[83]](_0x66a9x24[_0xf607[72]],function(_0x66a9x31){var _0x66a9x32={};_0x66a9x32[_0x66a9x31]= {$like:_0xf607[82]+ _0x66a9x1a[_0xf607[69]][_0xf607[81]]+ _0xf607[82]};return _0x66a9x32})})};_0x66a9x24= _[_0xf607[84]]({},_0x66a9x24,_0x66a9x1a[_0xf607[85]]);return db[_0xf607[67]][_0xf607[86]](_0x66a9x24)[_0xf607[37]](respondWithFilteredResult(_0x66a9x1e,_0x66a9x24,_0xf607[64]))[_0xf607[28]](handleError(_0x66a9x1e,null,_0xf607[64]))};exports[_0xf607[87]]= function(_0x66a9x1a,_0x66a9x1e){var _0x66a9x24={raw:false,where:{id:_0x66a9x1a[_0xf607[89]][_0xf607[88]]}},_0x66a9x30={};_0x66a9x30[_0xf607[65]]= _[_0xf607[68]](db[_0xf607[67]][_0xf607[66]]);_0x66a9x30[_0xf607[69]]= _[_0xf607[68]](_0x66a9x1a[_0xf607[69]]);_0x66a9x30[_0xf607[70]]= _[_0xf607[71]](_0x66a9x30[_0xf607[65]],_0x66a9x30[_0xf607[69]]);_0x66a9x24[_0xf607[72]]= _[_0xf607[71]](_0x66a9x30[_0xf607[65]],qs[_0xf607[73]](_0x66a9x1a[_0xf607[69]][_0xf607[73]]));_0x66a9x24[_0xf607[72]]= (_0x66a9x24[_0xf607[72]][_0xf607[74]])?_0x66a9x24[_0xf607[72]]:_0x66a9x30[_0xf607[65]];_0x66a9x24= _[_0xf607[84]]({},_0x66a9x24,_0x66a9x1a[_0xf607[85]]);return db[_0xf607[67]][_0xf607[90]](_0x66a9x24)[_0xf607[37]](handleEntityNotFound(_0x66a9x1e,null,_0xf607[87]))[_0xf607[37]](respondWithResult(_0x66a9x1e,null,_0xf607[87]))[_0xf607[28]](handleError(_0x66a9x1e,null,_0xf607[87]))};exports[_0xf607[91]]= function(_0x66a9x1a,_0x66a9x1e){return db[_0xf607[67]][_0xf607[91]](_0x66a9x1a[_0xf607[92]],{})[_0xf607[37]](respondWithResult(_0x66a9x1e,201,_0xf607[91]))[_0xf607[28]](handleError(_0x66a9x1e,null,_0xf607[91]))};exports[_0xf607[58]]= function(_0x66a9x1a,_0x66a9x1e){if(_0x66a9x1a[_0xf607[92]][_0xf607[88]]){delete _0x66a9x1a[_0xf607[92]][_0xf607[88]]};return db[_0xf607[67]][_0xf607[90]]({where:{id:_0x66a9x1a[_0xf607[89]][_0xf607[88]]}})[_0xf607[37]](handleEntityNotFound(_0x66a9x1e,null,_0xf607[58]))[_0xf607[37]](saveUpdates(_0x66a9x1a[_0xf607[92]],null,_0xf607[58]))[_0xf607[37]](respondWithResult(_0x66a9x1e,null,_0xf607[58]))[_0xf607[28]](handleError(_0x66a9x1e,null,_0xf607[58]))};exports[_0xf607[60]]= function(_0x66a9x1a,_0x66a9x1e){return db[_0xf607[67]][_0xf607[90]]({where:{id:_0x66a9x1a[_0xf607[89]][_0xf607[88]]}})[_0xf607[37]](handleEntityNotFound(_0x66a9x1e,null,_0xf607[60]))[_0xf607[37]](removeEntity(_0x66a9x1e,null,_0xf607[60]))[_0xf607[28]](handleError(_0x66a9x1e,null,_0xf607[60]))};exports[_0xf607[93]]= function(_0x66a9x1a,_0x66a9x21,_0x66a9x33){var _0x66a9x24={};var _0x66a9x30={};var _0x66a9x34;var _0x66a9x25;return db[_0xf607[67]][_0xf607[95]]({where:{id:_0x66a9x1a[_0xf607[89]][_0xf607[88]]}})[_0xf607[37]](handleEntityNotFound(_0x66a9x21,null,_0xf607[93]))[_0xf607[37]](function(_0x66a9x21){if(_0x66a9x21){_0x66a9x34= _0x66a9x21;_0x66a9x30[_0xf607[65]]= _[_0xf607[68]](db[_0xf607[94]][_0xf607[66]]);_0x66a9x30[_0xf607[69]]= _[_0xf607[68]](_0x66a9x1a[_0xf607[69]]);_0x66a9x30[_0xf607[70]]= _[_0xf607[71]](_0x66a9x30[_0xf607[65]],_0x66a9x30[_0xf607[69]]);_0x66a9x24[_0xf607[72]]= _[_0xf607[71]](_0x66a9x30[_0xf607[65]],qs[_0xf607[73]](_0x66a9x1a[_0xf607[69]][_0xf607[73]]));_0x66a9x24[_0xf607[72]]= (_0x66a9x24[_0xf607[72]][_0xf607[74]])?_0x66a9x24[_0xf607[72]]:_0x66a9x30[_0xf607[65]];_0x66a9x24[_0xf607[77]]= qs[_0xf607[78]](_0x66a9x1a[_0xf607[69]][_0xf607[78]]);_0x66a9x24[_0xf607[79]]= qs[_0xf607[70]](_[_0xf607[80]](_0x66a9x1a[_0xf607[69]],_0x66a9x30[_0xf607[70]]));if(_0x66a9x1a[_0xf607[69]][_0xf607[81]]){_0x66a9x24[_0xf607[79]]= _[_0xf607[84]](_0x66a9x24[_0xf607[79]],{$or:_[_0xf607[83]](_0x66a9x24[_0xf607[72]],function(_0x66a9x31){var _0x66a9x32={};_0x66a9x32[_0x66a9x31]= {$like:_0xf607[82]+ _0x66a9x1a[_0xf607[69]][_0xf607[81]]+ _0xf607[82]};return _0x66a9x32})})};_0x66a9x24= _[_0xf607[84]]({},_0x66a9x24,_0x66a9x1a[_0xf607[85]]);return _0x66a9x34[_0xf607[93]](_0x66a9x24)}})[_0xf607[37]](function(_0x66a9x36){if(_0x66a9x36){_0x66a9x25= _0x66a9x36[_0xf607[74]];if(!_0x66a9x1a[_0xf607[69]][_0xf607[76]](_0xf607[75])){_0x66a9x24[_0xf607[48]]= qs[_0xf607[48]](_0x66a9x1a[_0xf607[69]][_0xf607[48]]);_0x66a9x24[_0xf607[47]]= qs[_0xf607[47]](_0x66a9x1a[_0xf607[69]][_0xf607[47]])};return _0x66a9x34[_0xf607[93]](_0x66a9x24)}})[_0xf607[37]](function(_0x66a9x35){return _0x66a9x35?{count:_0x66a9x25,rows:_0x66a9x35}:null})[_0xf607[37]](respondWithResult(_0x66a9x21,null,_0xf607[93]))[_0xf607[28]](handleError(_0x66a9x21,null,_0xf607[93]))};exports[_0xf607[96]]= function(_0x66a9x1a,_0x66a9x1e,_0x66a9x33){if(_0x66a9x1a[_0xf607[92]][_0xf607[88]]){delete _0x66a9x1a[_0xf607[92]][_0xf607[88]]};return db[_0xf607[67]][_0xf607[95]]({where:{id:_0x66a9x1a[_0xf607[89]][_0xf607[88]]}})[_0xf607[37]](handleEntityNotFound(_0x66a9x1e,null,_0xf607[96]))[_0xf607[37]](function(_0x66a9x21){if(_0x66a9x21){_0x66a9x1a[_0xf607[92]][_0xf607[97]]= _0x66a9x21[_0xf607[88]];_0x66a9x1a[_0xf607[92]][_0xf607[98]]= integrations[_0xf607[101]](_0x66a9x1a[_0xf607[92]][_0xf607[99]],_0x66a9x1a[_0xf607[92]][_0xf607[100]]);_0x66a9x1a[_0xf607[92]][_0xf607[102]]= integrations[_0xf607[103]](_0x66a9x1a[_0xf607[92]][_0xf607[99]],_0x66a9x1a[_0xf607[92]][_0xf607[100]]);return db[_0xf607[94]][_0xf607[91]](_0x66a9x1a[_0xf607[92]],{include:[{model:db[_0xf607[104]],as:_0xf607[98]},{model:db[_0xf607[104]],as:_0xf607[102]}]})};return null})[_0xf607[37]](respondWithResult(_0x66a9x1e,null,_0xf607[96]))[_0xf607[28]](handleError(_0x66a9x1e,null,_0xf607[96]))};exports[_0xf607[105]]= function(_0x66a9x1a,_0x66a9x1e,_0x66a9x33){return db[_0xf607[67]][_0xf607[95]]({where:{id:_0x66a9x1a[_0xf607[89]][_0xf607[88]]},attributes:[_0xf607[88],_0xf607[123],_0xf607[129]]})[_0xf607[37]](handleEntityNotFound(_0x66a9x1e,null,_0xf607[105]))[_0xf607[37]](function(_0x66a9x21){if(_0x66a9x21){return rp({method:_0xf607[121],uri:util[_0xf607[125]](_0xf607[122],_0x66a9x21[_0xf607[123]],_0xf607[124]),headers:{Authorization:util[_0xf607[125]](_0xf607[126], new Buffer(util[_0xf607[125]](_0xf607[128],_0x66a9x21[_0xf607[129]])).toString(_0xf607[127]))},json:true})}})[_0xf607[37]](function(_0x66a9x36){if(_0x66a9x36){var _0x66a9x37=[_0xf607[106],_0xf607[107],_0xf607[108],_0xf607[109],_0xf607[43],_0xf607[110],_0xf607[111],_0xf607[112],_0xf607[113],_0xf607[111],_0xf607[114]];_[_0xf607[116]](_0x66a9x36,function(_0x66a9x38){return _0x66a9x37[_0xf607[115]](_0x66a9x38[_0xf607[62]])});return {count:_0x66a9x36[_0xf607[74]],rows:_[_0xf607[83]](_0x66a9x36,function(_0x66a9x21){return {id:_0x66a9x21[_0xf607[62]],name:_0x66a9x21[_0xf607[117]],custom:!_0x66a9x21[_0xf607[118]],options:_0x66a9x21[_0xf607[119]]?_[_0xf607[83]](_0x66a9x21[_0xf607[119]],function(_0x66a9x39){return {name:_[_0xf607[120]](_0x66a9x39),value:_0x66a9x39}}):[]}})}}})[_0xf607[37]](respondWithResult(_0x66a9x1e,null,_0xf607[105]))[_0xf607[28]](handleError(_0x66a9x1e,null,_0xf607[105]))}
\ No newline at end of file
+var _0x3447=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x79\x70\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x72\x65\x71\x75\x65\x73\x74\x65\x72","\x73\x75\x62\x6A\x65\x63\x74","\x61\x67\x65\x6E\x74","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x67\x72\x6F\x75\x70","\x73\x6F\x75\x72\x63\x65","\x74\x69\x63\x6B\x65\x74\x5F\x74\x79\x70\x65","\x63\x6F\x6D\x70\x61\x6E\x79","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x6C\x61\x62\x65\x6C","\x64\x65\x66\x61\x75\x6C\x74","\x63\x68\x6F\x69\x63\x65\x73","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","\x47\x45\x54","\x25\x73\x25\x73","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x61\x70\x69\x2F\x76\x32\x2F\x74\x69\x63\x6B\x65\x74\x5F\x66\x69\x65\x6C\x64\x73","\x66\x6F\x72\x6D\x61\x74","\x42\x61\x73\x69\x63\x20\x25\x73","\x62\x61\x73\x65\x36\x34","\x25\x73\x3A\x58","\x61\x70\x69\x4B\x65\x79"];_0x3447[0];var jsonpatch=require(_0x3447[1]);var rp=require(_0x3447[2]);var moment=require(_0x3447[3]);var BPromise=require(_0x3447[4]);var util=require(_0x3447[5]);var path=require(_0x3447[6]);var sox=require(_0x3447[7]);var ejs=require(_0x3447[8]);var fs=require(_0x3447[9]);var _=require(_0x3447[10]);var squel=require(_0x3447[11]);var crypto=require(_0x3447[12]);var jsforce=require(_0x3447[13]);var toCsv=require(_0x3447[14]);var qs=require(_0x3447[15]);var logger=require(_0x3447[17])(_0x3447[16]);var utils=require(_0x3447[18]);var config=require(_0x3447[19]);var db=require(_0x3447[21])[_0x3447[20]];var integrations=require(_0x3447[22]);var jayson=require(_0x3447[23]);var client=jayson[_0x3447[25]][_0x3447[24]]({port:9002});function respondWithRpcPromise(_0x8b25x18,_0x8b25x19,_0x8b25x1a){return  new BPromise(function(_0x8b25x1b,_0x8b25x1c){return client[_0x3447[38]](_0x8b25x18,_0x8b25x1a)[_0x3447[37]](function(_0x8b25x1e){logger[_0x3447[30]](_0x3447[26],_0x8b25x19,_0x3447[29]);logger[_0x3447[33]](_0x3447[31],_0x8b25x19,_0x3447[29],JSON[_0x3447[32]](_0x8b25x1e));if(_0x8b25x1e[_0x3447[27]]){if(_0x8b25x1e[_0x3447[27]][_0x3447[34]]=== 500){logger[_0x3447[27]](_0x3447[26],_0x8b25x19,_0x8b25x1e[_0x3447[27]][_0x3447[35]]);return _0x8b25x1c(_0x8b25x1e[_0x3447[27]][_0x3447[35]])};logger[_0x3447[27]](_0x3447[26],_0x8b25x19,_0x8b25x1e[_0x3447[27]][_0x3447[35]]);return _0x8b25x1b(_0x8b25x1e[_0x3447[27]][_0x3447[35]])}else {logger[_0x3447[30]](_0x3447[26],_0x8b25x19,_0x3447[29]);_0x8b25x1b(_0x8b25x1e[_0x3447[36]][_0x3447[35]])}})[_0x3447[28]](function(_0x8b25x1d){logger[_0x3447[27]](_0x3447[26],_0x8b25x19,_0x8b25x1d);_0x8b25x1c(_0x8b25x1d)})})}function respondWithStatusCode(_0x8b25x1e,_0x8b25x20,_0x8b25x19){_0x8b25x20= _0x8b25x20|| 204;return function(_0x8b25x21){if(_0x8b25x21){logger[_0x3447[30]](_0x3447[31],_0x8b25x19,_0x8b25x20,_0x3447[39]);logger[_0x3447[33]](_0x3447[40],_0x8b25x19,_0x8b25x20,_0x3447[39]);return _0x8b25x1e[_0x3447[41]](_0x8b25x20)};return _0x8b25x1e[_0x3447[43]](304)[_0x3447[42]]()}}function respondWithResult(_0x8b25x1e,_0x8b25x20,_0x8b25x19){_0x8b25x20= _0x8b25x20|| 200;return function(_0x8b25x21){if(_0x8b25x21){logger[_0x3447[30]](_0x3447[31],_0x8b25x19,_0x8b25x20,_0x3447[44]);logger[_0x3447[33]](_0x3447[40],_0x8b25x19,_0x8b25x20,_0x3447[44],JSON[_0x3447[32]](_0x8b25x21));return _0x8b25x1e[_0x3447[43]](_0x8b25x20)[_0x3447[45]](_0x8b25x21)};return _0x8b25x1e[_0x3447[43]](304)[_0x3447[42]]()}}function respondWithFilteredResult(_0x8b25x1e,_0x8b25x24,_0x8b25x19){return function(_0x8b25x21){if(_0x8b25x21){var _0x8b25x25=_0x8b25x21[_0x3447[46]],_0x8b25x26=_0x8b25x24[_0x3447[47]],_0x8b25x27=_0x8b25x24[_0x3447[47]]+ _0x8b25x24[_0x3447[48]],_0x8b25x20;if(_0x8b25x27>= _0x8b25x25){_0x8b25x27= _0x8b25x25;_0x8b25x20= 200}else {_0x8b25x20= 206};_0x8b25x1e[_0x3447[43]](_0x8b25x20);logger[_0x3447[30]](_0x3447[31],_0x8b25x19,_0x8b25x20,_0x3447[49]);logger[_0x3447[33]](_0x3447[40],_0x8b25x19,_0x8b25x20,_0x3447[44],JSON[_0x3447[32]](_0x8b25x21));return _0x8b25x1e[_0x3447[53]](_0x3447[50],_0x8b25x26+ _0x3447[51]+ _0x8b25x27+ _0x3447[52]+ _0x8b25x25)[_0x3447[45]](_0x8b25x21)};return null}}function patchUpdates(_0x8b25x29){return function(_0x8b25x21){try{jsonpatch[_0x3447[54]](_0x8b25x21,_0x8b25x29,true)}catch(err){return BPromise[_0x3447[55]](err)};return _0x8b25x21[_0x3447[56]]()}}function saveUpdates(_0x8b25x2b,_0x8b25x20,_0x8b25x19){return function(_0x8b25x21){if(_0x8b25x21){return _0x8b25x21[_0x3447[58]](_0x8b25x2b)[_0x3447[37]](function(_0x8b25x2c){logger[_0x3447[30]](_0x3447[31],_0x8b25x19,_0x8b25x20,_0x3447[57]);logger[_0x3447[33]](_0x3447[40],_0x8b25x19,_0x8b25x20,_0x3447[57],JSON[_0x3447[32]](_0x8b25x21));return _0x8b25x2c})};return null}}function removeEntity(_0x8b25x1e,_0x8b25x20,_0x8b25x19){return function(_0x8b25x21){if(_0x8b25x21){return _0x8b25x21[_0x3447[60]]()[_0x3447[37]](function(){logger[_0x3447[30]](_0x3447[31],_0x8b25x19,_0x8b25x20,_0x3447[59]);logger[_0x3447[33]](_0x3447[40],_0x8b25x19,_0x8b25x20,_0x3447[59],JSON[_0x3447[32]](_0x8b25x21));_0x8b25x1e[_0x3447[43]](204)[_0x3447[42]]()})}}}function handleEntityNotFound(_0x8b25x1e,_0x8b25x20,_0x8b25x19){return function(_0x8b25x21){if(!_0x8b25x21){logger[_0x3447[27]](_0x3447[31],_0x8b25x19,404,_0x3447[61]);_0x8b25x1e[_0x3447[43]](404)[_0x3447[42]]();return null};return _0x8b25x21}}function handleError(_0x8b25x1e,_0x8b25x20,_0x8b25x19){_0x8b25x20= _0x8b25x20|| 500;return function(_0x8b25x1d){logger[_0x3447[27]](_0x3447[31],_0x8b25x19,_0x8b25x20,JSON[_0x3447[32]](_0x8b25x1d));delete _0x8b25x1d[_0x3447[62]];_0x8b25x1e[_0x3447[43]](_0x8b25x20)[_0x3447[63]](_0x8b25x1d)}}exports[_0x3447[64]]= function(_0x8b25x1a,_0x8b25x1e){var _0x8b25x24={},_0x8b25x30={};_0x8b25x30[_0x3447[65]]= _[_0x3447[68]](db[_0x3447[67]][_0x3447[66]]);_0x8b25x30[_0x3447[69]]= _[_0x3447[68]](_0x8b25x1a[_0x3447[69]]);_0x8b25x30[_0x3447[70]]= _[_0x3447[71]](_0x8b25x30[_0x3447[65]],_0x8b25x30[_0x3447[69]]);_0x8b25x24[_0x3447[72]]= _[_0x3447[71]](_0x8b25x30[_0x3447[65]],qs[_0x3447[73]](_0x8b25x1a[_0x3447[69]][_0x3447[73]]));_0x8b25x24[_0x3447[72]]= (_0x8b25x24[_0x3447[72]][_0x3447[74]])?_0x8b25x24[_0x3447[72]]:_0x8b25x30[_0x3447[65]];if(!_0x8b25x1a[_0x3447[69]][_0x3447[76]](_0x3447[75])){_0x8b25x24[_0x3447[48]]= qs[_0x3447[48]](_0x8b25x1a[_0x3447[69]][_0x3447[48]]);_0x8b25x24[_0x3447[47]]= qs[_0x3447[47]](_0x8b25x1a[_0x3447[69]][_0x3447[47]])};_0x8b25x24[_0x3447[77]]= qs[_0x3447[78]](_0x8b25x1a[_0x3447[69]][_0x3447[78]]);_0x8b25x24[_0x3447[79]]= qs[_0x3447[70]](_[_0x3447[80]](_0x8b25x1a[_0x3447[69]],_0x8b25x30[_0x3447[70]]));if(_0x8b25x1a[_0x3447[69]][_0x3447[81]]){_0x8b25x24[_0x3447[79]]= _[_0x3447[84]](_0x8b25x24[_0x3447[79]],{$or:_[_0x3447[83]](_0x8b25x24[_0x3447[72]],function(_0x8b25x31){var _0x8b25x32={};_0x8b25x32[_0x8b25x31]= {$like:_0x3447[82]+ _0x8b25x1a[_0x3447[69]][_0x3447[81]]+ _0x3447[82]};return _0x8b25x32})})};_0x8b25x24= _[_0x3447[84]]({},_0x8b25x24,_0x8b25x1a[_0x3447[85]]);return db[_0x3447[67]][_0x3447[86]](_0x8b25x24)[_0x3447[37]](respondWithFilteredResult(_0x8b25x1e,_0x8b25x24,_0x3447[64]))[_0x3447[28]](handleError(_0x8b25x1e,null,_0x3447[64]))};exports[_0x3447[87]]= function(_0x8b25x1a,_0x8b25x1e){var _0x8b25x24={raw:false,where:{id:_0x8b25x1a[_0x3447[89]][_0x3447[88]]}},_0x8b25x30={};_0x8b25x30[_0x3447[65]]= _[_0x3447[68]](db[_0x3447[67]][_0x3447[66]]);_0x8b25x30[_0x3447[69]]= _[_0x3447[68]](_0x8b25x1a[_0x3447[69]]);_0x8b25x30[_0x3447[70]]= _[_0x3447[71]](_0x8b25x30[_0x3447[65]],_0x8b25x30[_0x3447[69]]);_0x8b25x24[_0x3447[72]]= _[_0x3447[71]](_0x8b25x30[_0x3447[65]],qs[_0x3447[73]](_0x8b25x1a[_0x3447[69]][_0x3447[73]]));_0x8b25x24[_0x3447[72]]= (_0x8b25x24[_0x3447[72]][_0x3447[74]])?_0x8b25x24[_0x3447[72]]:_0x8b25x30[_0x3447[65]];_0x8b25x24= _[_0x3447[84]]({},_0x8b25x24,_0x8b25x1a[_0x3447[85]]);return db[_0x3447[67]][_0x3447[90]](_0x8b25x24)[_0x3447[37]](handleEntityNotFound(_0x8b25x1e,null,_0x3447[87]))[_0x3447[37]](respondWithResult(_0x8b25x1e,null,_0x3447[87]))[_0x3447[28]](handleError(_0x8b25x1e,null,_0x3447[87]))};exports[_0x3447[91]]= function(_0x8b25x1a,_0x8b25x1e){return db[_0x3447[67]][_0x3447[91]](_0x8b25x1a[_0x3447[92]],{})[_0x3447[37]](respondWithResult(_0x8b25x1e,201,_0x3447[91]))[_0x3447[28]](handleError(_0x8b25x1e,null,_0x3447[91]))};exports[_0x3447[58]]= function(_0x8b25x1a,_0x8b25x1e){if(_0x8b25x1a[_0x3447[92]][_0x3447[88]]){delete _0x8b25x1a[_0x3447[92]][_0x3447[88]]};return db[_0x3447[67]][_0x3447[90]]({where:{id:_0x8b25x1a[_0x3447[89]][_0x3447[88]]}})[_0x3447[37]](handleEntityNotFound(_0x8b25x1e,null,_0x3447[58]))[_0x3447[37]](saveUpdates(_0x8b25x1a[_0x3447[92]],null,_0x3447[58]))[_0x3447[37]](respondWithResult(_0x8b25x1e,null,_0x3447[58]))[_0x3447[28]](handleError(_0x8b25x1e,null,_0x3447[58]))};exports[_0x3447[60]]= function(_0x8b25x1a,_0x8b25x1e){return db[_0x3447[67]][_0x3447[90]]({where:{id:_0x8b25x1a[_0x3447[89]][_0x3447[88]]}})[_0x3447[37]](handleEntityNotFound(_0x8b25x1e,null,_0x3447[60]))[_0x3447[37]](removeEntity(_0x8b25x1e,null,_0x3447[60]))[_0x3447[28]](handleError(_0x8b25x1e,null,_0x3447[60]))};exports[_0x3447[93]]= function(_0x8b25x1a,_0x8b25x21,_0x8b25x33){var _0x8b25x24={};var _0x8b25x30={};var _0x8b25x34;var _0x8b25x25;return db[_0x3447[67]][_0x3447[95]]({where:{id:_0x8b25x1a[_0x3447[89]][_0x3447[88]]}})[_0x3447[37]](handleEntityNotFound(_0x8b25x21,null,_0x3447[93]))[_0x3447[37]](function(_0x8b25x21){if(_0x8b25x21){_0x8b25x34= _0x8b25x21;_0x8b25x30[_0x3447[65]]= _[_0x3447[68]](db[_0x3447[94]][_0x3447[66]]);_0x8b25x30[_0x3447[69]]= _[_0x3447[68]](_0x8b25x1a[_0x3447[69]]);_0x8b25x30[_0x3447[70]]= _[_0x3447[71]](_0x8b25x30[_0x3447[65]],_0x8b25x30[_0x3447[69]]);_0x8b25x24[_0x3447[72]]= _[_0x3447[71]](_0x8b25x30[_0x3447[65]],qs[_0x3447[73]](_0x8b25x1a[_0x3447[69]][_0x3447[73]]));_0x8b25x24[_0x3447[72]]= (_0x8b25x24[_0x3447[72]][_0x3447[74]])?_0x8b25x24[_0x3447[72]]:_0x8b25x30[_0x3447[65]];_0x8b25x24[_0x3447[77]]= qs[_0x3447[78]](_0x8b25x1a[_0x3447[69]][_0x3447[78]]);_0x8b25x24[_0x3447[79]]= qs[_0x3447[70]](_[_0x3447[80]](_0x8b25x1a[_0x3447[69]],_0x8b25x30[_0x3447[70]]));if(_0x8b25x1a[_0x3447[69]][_0x3447[81]]){_0x8b25x24[_0x3447[79]]= _[_0x3447[84]](_0x8b25x24[_0x3447[79]],{$or:_[_0x3447[83]](_0x8b25x24[_0x3447[72]],function(_0x8b25x31){var _0x8b25x32={};_0x8b25x32[_0x8b25x31]= {$like:_0x3447[82]+ _0x8b25x1a[_0x3447[69]][_0x3447[81]]+ _0x3447[82]};return _0x8b25x32})})};_0x8b25x24= _[_0x3447[84]]({},_0x8b25x24,_0x8b25x1a[_0x3447[85]]);return _0x8b25x34[_0x3447[93]](_0x8b25x24)}})[_0x3447[37]](function(_0x8b25x36){if(_0x8b25x36){_0x8b25x25= _0x8b25x36[_0x3447[74]];if(!_0x8b25x1a[_0x3447[69]][_0x3447[76]](_0x3447[75])){_0x8b25x24[_0x3447[48]]= qs[_0x3447[48]](_0x8b25x1a[_0x3447[69]][_0x3447[48]]);_0x8b25x24[_0x3447[47]]= qs[_0x3447[47]](_0x8b25x1a[_0x3447[69]][_0x3447[47]])};return _0x8b25x34[_0x3447[93]](_0x8b25x24)}})[_0x3447[37]](function(_0x8b25x35){return _0x8b25x35?{count:_0x8b25x25,rows:_0x8b25x35}:null})[_0x3447[37]](respondWithResult(_0x8b25x21,null,_0x3447[93]))[_0x3447[28]](handleError(_0x8b25x21,null,_0x3447[93]))};exports[_0x3447[96]]= function(_0x8b25x1a,_0x8b25x1e,_0x8b25x33){if(_0x8b25x1a[_0x3447[92]][_0x3447[88]]){delete _0x8b25x1a[_0x3447[92]][_0x3447[88]]};return db[_0x3447[67]][_0x3447[95]]({where:{id:_0x8b25x1a[_0x3447[89]][_0x3447[88]]}})[_0x3447[37]](handleEntityNotFound(_0x8b25x1e,null,_0x3447[96]))[_0x3447[37]](function(_0x8b25x21){if(_0x8b25x21){_0x8b25x1a[_0x3447[92]][_0x3447[97]]= _0x8b25x21[_0x3447[88]];_0x8b25x1a[_0x3447[92]][_0x3447[98]]= integrations[_0x3447[101]](_0x8b25x1a[_0x3447[92]][_0x3447[99]],_0x8b25x1a[_0x3447[92]][_0x3447[100]]);_0x8b25x1a[_0x3447[92]][_0x3447[102]]= integrations[_0x3447[103]](_0x8b25x1a[_0x3447[92]][_0x3447[99]],_0x8b25x1a[_0x3447[92]][_0x3447[100]]);return db[_0x3447[94]][_0x3447[91]](_0x8b25x1a[_0x3447[92]],{include:[{model:db[_0x3447[104]],as:_0x3447[98]},{model:db[_0x3447[104]],as:_0x3447[102]}]})};return null})[_0x3447[37]](respondWithResult(_0x8b25x1e,null,_0x3447[96]))[_0x3447[28]](handleError(_0x8b25x1e,null,_0x3447[96]))};exports[_0x3447[105]]= function(_0x8b25x1a,_0x8b25x1e,_0x8b25x33){return db[_0x3447[67]][_0x3447[95]]({where:{id:_0x8b25x1a[_0x3447[89]][_0x3447[88]]},attributes:[_0x3447[88],_0x3447[123],_0x3447[129]]})[_0x3447[37]](handleEntityNotFound(_0x8b25x1e,null,_0x3447[105]))[_0x3447[37]](function(_0x8b25x21){if(_0x8b25x21){return rp({method:_0x3447[121],uri:util[_0x3447[125]](_0x3447[122],_0x8b25x21[_0x3447[123]],_0x3447[124]),headers:{Authorization:util[_0x3447[125]](_0x3447[126], new Buffer(util[_0x3447[125]](_0x3447[128],_0x8b25x21[_0x3447[129]])).toString(_0x3447[127]))},json:true})}})[_0x3447[37]](function(_0x8b25x36){if(_0x8b25x36){var _0x8b25x37=[_0x3447[106],_0x3447[107],_0x3447[108],_0x3447[109],_0x3447[43],_0x3447[110],_0x3447[111],_0x3447[112],_0x3447[113],_0x3447[111],_0x3447[114]];_[_0x3447[116]](_0x8b25x36,function(_0x8b25x38){return _0x8b25x37[_0x3447[115]](_0x8b25x38[_0x3447[62]])});return {count:_0x8b25x36[_0x3447[74]],rows:_[_0x3447[83]](_0x8b25x36,function(_0x8b25x21){return {id:_0x8b25x21[_0x3447[62]],name:_0x8b25x21[_0x3447[117]],custom:!_0x8b25x21[_0x3447[118]],options:_0x8b25x21[_0x3447[119]]?_[_0x3447[83]](_0x8b25x21[_0x3447[119]],function(_0x8b25x39){return {name:_[_0x3447[120]](_0x8b25x39),value:_0x8b25x39}}):[]}})}}})[_0x3447[37]](respondWithResult(_0x8b25x1e,null,_0x3447[105]))[_0x3447[28]](handleError(_0x8b25x1e,null,_0x3447[105]))}
\ No newline at end of file
index b5b3a20..ba9f98a 100644 (file)
@@ -1 +1 @@
-var _0x568c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x69\x6E\x74\x5F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x568c[0];var _=require(_0x568c[1]);var util=require(_0x568c[2]);var logger=require(_0x568c[4])(_0x568c[3]);var attributes=require(_0x568c[5]);var integrations=require(_0x568c[6]);module[_0x568c[7]]= function(_0x2aa5x6,_0x2aa5x7){return _0x2aa5x6[_0x568c[10]](_0x568c[8],attributes,{tableName:_0x568c[9],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x90b9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x69\x6E\x74\x5F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x90b9[0];var _=require(_0x90b9[1]);var util=require(_0x90b9[2]);var logger=require(_0x90b9[4])(_0x90b9[3]);var attributes=require(_0x90b9[5]);var integrations=require(_0x90b9[6]);module[_0x90b9[7]]= function(_0x5c05x6,_0x5c05x7){return _0x5c05x6[_0x90b9[10]](_0x90b9[8],attributes,{tableName:_0x90b9[9],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 8644bfd..6674a2c 100644 (file)
@@ -1 +1 @@
-var _0x8a3e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x53\x68\x6F\x77\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64"];_0x8a3e[0];var _=require(_0x8a3e[1]);var util=require(_0x8a3e[2]);var moment=require(_0x8a3e[3]);var BPromise=require(_0x8a3e[4]);var db=require(_0x8a3e[6])[_0x8a3e[5]];var utils=require(_0x8a3e[7]);var logger=require(_0x8a3e[9])(_0x8a3e[8]);var jayson=require(_0x8a3e[10]);var client=jayson[_0x8a3e[12]][_0x8a3e[11]]({port:9002});function respondWithRpcPromise(_0x3474xb,_0x3474xc,_0x3474xd){return  new BPromise(function(_0x3474xe,_0x3474xf){return client[_0x8a3e[25]](_0x3474xb,_0x3474xd)[_0x8a3e[24]](function(_0x3474x11){logger[_0x8a3e[17]](_0x8a3e[13],_0x3474xc,_0x8a3e[16]);logger[_0x8a3e[20]](_0x8a3e[18],_0x3474xc,_0x8a3e[16],JSON[_0x8a3e[19]](_0x3474x11));if(_0x3474x11[_0x8a3e[14]]){if(_0x3474x11[_0x8a3e[14]][_0x8a3e[21]]=== 500){logger[_0x8a3e[14]](_0x8a3e[13],_0x3474xc,_0x3474x11[_0x8a3e[14]][_0x8a3e[22]]);return _0x3474xf(_0x3474x11[_0x8a3e[14]][_0x8a3e[22]])};logger[_0x8a3e[14]](_0x8a3e[13],_0x3474xc,_0x3474x11[_0x8a3e[14]][_0x8a3e[22]]);return _0x3474xe(_0x3474x11[_0x8a3e[14]][_0x8a3e[22]])}else {logger[_0x8a3e[17]](_0x8a3e[13],_0x3474xc,_0x8a3e[16]);_0x3474xe(_0x3474x11[_0x8a3e[23]][_0x8a3e[22]])}})[_0x8a3e[15]](function(_0x3474x10){logger[_0x8a3e[14]](_0x8a3e[13],_0x3474xc,_0x3474x10);_0x3474xf(_0x3474x10)})})}exports[_0x8a3e[26]]= function(_0x3474xd){var _0x3474x12=this;return  new Promise(function(_0x3474xe,_0x3474xf){return db[_0x8a3e[37]][_0x8a3e[36]]({raw:_0x3474xd[_0x8a3e[27]]?(_0x3474xd[_0x8a3e[27]][_0x8a3e[28]]=== undefined)?true:false:true,where:_0x3474xd[_0x8a3e[27]]?_0x3474xd[_0x8a3e[27]][_0x8a3e[29]]|| null:null,attributes:_0x3474xd[_0x8a3e[27]]?_0x3474xd[_0x8a3e[27]][_0x8a3e[30]]|| null:null,limit:_0x3474xd[_0x8a3e[27]]?_0x3474xd[_0x8a3e[27]][_0x8a3e[31]]|| null:null,include:_0x3474xd[_0x8a3e[27]]?(_0x3474xd[_0x8a3e[27]][_0x8a3e[32]]?_[_0x8a3e[35]](_0x3474xd[_0x8a3e[27]][_0x8a3e[32]],function(_0x3474x13){return {model:db[_0x3474x13[_0x8a3e[33]]],as:_0x3474x13[_0x8a3e[34]],attributes:_0x3474x13[_0x8a3e[30]],include:_0x3474x13[_0x8a3e[32]]?_[_0x8a3e[35]](_0x3474x13[_0x8a3e[32]],function(_0x3474x14){return {model:db[_0x3474x14[_0x8a3e[33]]],as:_0x3474x14[_0x8a3e[34]],attributes:_0x3474x14[_0x8a3e[30]],include:_0x3474x14[_0x8a3e[32]]?_[_0x8a3e[35]](_0x3474x14[_0x8a3e[32]],function(_0x3474x15){return {model:db[_0x3474x15[_0x8a3e[33]]],as:_0x3474x15[_0x8a3e[34]],attributes:_0x3474x15[_0x8a3e[30]]}}):[]}}):[]}}):[]):[]})[_0x8a3e[24]](function(_0x3474x11){logger[_0x8a3e[17]](_0x8a3e[26],_0x3474xd);logger[_0x8a3e[20]](_0x8a3e[26],_0x3474xd,JSON[_0x8a3e[19]](_0x3474x11));_0x3474xe(_0x3474x11)})[_0x8a3e[15]](function(_0x3474x10){logger[_0x8a3e[14]](_0x8a3e[26],_0x3474x10[_0x8a3e[22]],_0x3474xd);_0x3474xf(_0x3474x12[_0x8a3e[14]](500,_0x3474x10[_0x8a3e[22]]))})})};exports[_0x8a3e[38]]= function(_0x3474xd){var _0x3474x12=this;return  new Promise(function(_0x3474xe,_0x3474xf){return db[_0x8a3e[37]][_0x8a3e[39]]({raw:_0x3474xd[_0x8a3e[27]]?(_0x3474xd[_0x8a3e[27]][_0x8a3e[28]]=== undefined)?true:false:true,where:_0x3474xd[_0x8a3e[27]]?_0x3474xd[_0x8a3e[27]][_0x8a3e[29]]|| null:null,attributes:_0x3474xd[_0x8a3e[27]]?_0x3474xd[_0x8a3e[27]][_0x8a3e[30]]|| null:null,include:_0x3474xd[_0x8a3e[27]]?(_0x3474xd[_0x8a3e[27]][_0x8a3e[32]]?_[_0x8a3e[35]](_0x3474xd[_0x8a3e[27]][_0x8a3e[32]],function(_0x3474x13){return {model:db[_0x3474x13[_0x8a3e[33]]],as:_0x3474x13[_0x8a3e[34]],attributes:_0x3474x13[_0x8a3e[30]],include:_0x3474x13[_0x8a3e[32]]?_[_0x8a3e[35]](_0x3474x13[_0x8a3e[32]],function(_0x3474x14){return {model:db[_0x3474x14[_0x8a3e[33]]],as:_0x3474x14[_0x8a3e[34]],attributes:_0x3474x14[_0x8a3e[30]],include:_0x3474x14[_0x8a3e[32]]?_[_0x8a3e[35]](_0x3474x14[_0x8a3e[32]],function(_0x3474x15){return {model:db[_0x3474x15[_0x8a3e[33]]],as:_0x3474x15[_0x8a3e[34]],attributes:_0x3474x15[_0x8a3e[30]]}}):[]}}):[]}}):[]):[]})[_0x8a3e[24]](function(_0x3474x11){logger[_0x8a3e[17]](_0x8a3e[38],_0x3474xd);logger[_0x8a3e[20]](_0x8a3e[38],_0x3474xd,JSON[_0x8a3e[19]](_0x3474x11));_0x3474xe(_0x3474x11)})[_0x8a3e[15]](function(_0x3474x10){logger[_0x8a3e[14]](_0x8a3e[38],_0x3474x10[_0x8a3e[22]],_0x3474xd);_0x3474xf(_0x3474x12[_0x8a3e[14]](500,_0x3474x10[_0x8a3e[22]]))})})}
\ No newline at end of file
+var _0x6958=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x53\x68\x6F\x77\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64"];_0x6958[0];var _=require(_0x6958[1]);var util=require(_0x6958[2]);var moment=require(_0x6958[3]);var BPromise=require(_0x6958[4]);var db=require(_0x6958[6])[_0x6958[5]];var utils=require(_0x6958[7]);var logger=require(_0x6958[9])(_0x6958[8]);var jayson=require(_0x6958[10]);var client=jayson[_0x6958[12]][_0x6958[11]]({port:9002});function respondWithRpcPromise(_0xcf09xb,_0xcf09xc,_0xcf09xd){return  new BPromise(function(_0xcf09xe,_0xcf09xf){return client[_0x6958[25]](_0xcf09xb,_0xcf09xd)[_0x6958[24]](function(_0xcf09x11){logger[_0x6958[17]](_0x6958[13],_0xcf09xc,_0x6958[16]);logger[_0x6958[20]](_0x6958[18],_0xcf09xc,_0x6958[16],JSON[_0x6958[19]](_0xcf09x11));if(_0xcf09x11[_0x6958[14]]){if(_0xcf09x11[_0x6958[14]][_0x6958[21]]=== 500){logger[_0x6958[14]](_0x6958[13],_0xcf09xc,_0xcf09x11[_0x6958[14]][_0x6958[22]]);return _0xcf09xf(_0xcf09x11[_0x6958[14]][_0x6958[22]])};logger[_0x6958[14]](_0x6958[13],_0xcf09xc,_0xcf09x11[_0x6958[14]][_0x6958[22]]);return _0xcf09xe(_0xcf09x11[_0x6958[14]][_0x6958[22]])}else {logger[_0x6958[17]](_0x6958[13],_0xcf09xc,_0x6958[16]);_0xcf09xe(_0xcf09x11[_0x6958[23]][_0x6958[22]])}})[_0x6958[15]](function(_0xcf09x10){logger[_0x6958[14]](_0x6958[13],_0xcf09xc,_0xcf09x10);_0xcf09xf(_0xcf09x10)})})}exports[_0x6958[26]]= function(_0xcf09xd){var _0xcf09x12=this;return  new Promise(function(_0xcf09xe,_0xcf09xf){return db[_0x6958[37]][_0x6958[36]]({raw:_0xcf09xd[_0x6958[27]]?(_0xcf09xd[_0x6958[27]][_0x6958[28]]=== undefined)?true:false:true,where:_0xcf09xd[_0x6958[27]]?_0xcf09xd[_0x6958[27]][_0x6958[29]]|| null:null,attributes:_0xcf09xd[_0x6958[27]]?_0xcf09xd[_0x6958[27]][_0x6958[30]]|| null:null,limit:_0xcf09xd[_0x6958[27]]?_0xcf09xd[_0x6958[27]][_0x6958[31]]|| null:null,include:_0xcf09xd[_0x6958[27]]?(_0xcf09xd[_0x6958[27]][_0x6958[32]]?_[_0x6958[35]](_0xcf09xd[_0x6958[27]][_0x6958[32]],function(_0xcf09x13){return {model:db[_0xcf09x13[_0x6958[33]]],as:_0xcf09x13[_0x6958[34]],attributes:_0xcf09x13[_0x6958[30]],include:_0xcf09x13[_0x6958[32]]?_[_0x6958[35]](_0xcf09x13[_0x6958[32]],function(_0xcf09x14){return {model:db[_0xcf09x14[_0x6958[33]]],as:_0xcf09x14[_0x6958[34]],attributes:_0xcf09x14[_0x6958[30]],include:_0xcf09x14[_0x6958[32]]?_[_0x6958[35]](_0xcf09x14[_0x6958[32]],function(_0xcf09x15){return {model:db[_0xcf09x15[_0x6958[33]]],as:_0xcf09x15[_0x6958[34]],attributes:_0xcf09x15[_0x6958[30]]}}):[]}}):[]}}):[]):[]})[_0x6958[24]](function(_0xcf09x11){logger[_0x6958[17]](_0x6958[26],_0xcf09xd);logger[_0x6958[20]](_0x6958[26],_0xcf09xd,JSON[_0x6958[19]](_0xcf09x11));_0xcf09xe(_0xcf09x11)})[_0x6958[15]](function(_0xcf09x10){logger[_0x6958[14]](_0x6958[26],_0xcf09x10[_0x6958[22]],_0xcf09xd);_0xcf09xf(_0xcf09x12[_0x6958[14]](500,_0xcf09x10[_0x6958[22]]))})})};exports[_0x6958[38]]= function(_0xcf09xd){var _0xcf09x12=this;return  new Promise(function(_0xcf09xe,_0xcf09xf){return db[_0x6958[37]][_0x6958[39]]({raw:_0xcf09xd[_0x6958[27]]?(_0xcf09xd[_0x6958[27]][_0x6958[28]]=== undefined)?true:false:true,where:_0xcf09xd[_0x6958[27]]?_0xcf09xd[_0x6958[27]][_0x6958[29]]|| null:null,attributes:_0xcf09xd[_0x6958[27]]?_0xcf09xd[_0x6958[27]][_0x6958[30]]|| null:null,include:_0xcf09xd[_0x6958[27]]?(_0xcf09xd[_0x6958[27]][_0x6958[32]]?_[_0x6958[35]](_0xcf09xd[_0x6958[27]][_0x6958[32]],function(_0xcf09x13){return {model:db[_0xcf09x13[_0x6958[33]]],as:_0xcf09x13[_0x6958[34]],attributes:_0xcf09x13[_0x6958[30]],include:_0xcf09x13[_0x6958[32]]?_[_0x6958[35]](_0xcf09x13[_0x6958[32]],function(_0xcf09x14){return {model:db[_0xcf09x14[_0x6958[33]]],as:_0xcf09x14[_0x6958[34]],attributes:_0xcf09x14[_0x6958[30]],include:_0xcf09x14[_0x6958[32]]?_[_0x6958[35]](_0xcf09x14[_0x6958[32]],function(_0xcf09x15){return {model:db[_0xcf09x15[_0x6958[33]]],as:_0xcf09x15[_0x6958[34]],attributes:_0xcf09x15[_0x6958[30]]}}):[]}}):[]}}):[]):[]})[_0x6958[24]](function(_0xcf09x11){logger[_0x6958[17]](_0x6958[38],_0xcf09xd);logger[_0x6958[20]](_0x6958[38],_0xcf09xd,JSON[_0x6958[19]](_0xcf09x11));_0xcf09xe(_0xcf09x11)})[_0x6958[15]](function(_0xcf09x10){logger[_0x6958[14]](_0x6958[38],_0xcf09x10[_0x6958[22]],_0xcf09xd);_0xcf09xf(_0xcf09x12[_0x6958[14]](500,_0xcf09x10[_0x6958[22]]))})})}
\ No newline at end of file
index 451cddf..641a53d 100644 (file)
@@ -1 +1 @@
-var _0x3fb8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x74\x61\x67\x73","\x67\x65\x74\x54\x61\x67\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x73\x65\x74\x54\x61\x67\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3fb8[0];var multer=require(_0x3fb8[1]);var util=require(_0x3fb8[2]);var path=require(_0x3fb8[3]);var express=require(_0x3fb8[4]);var router=express.Router();var auth=require(_0x3fb8[5]);var config=require(_0x3fb8[6]);var controller=require(_0x3fb8[7]);router[_0x3fb8[11]](_0x3fb8[8],auth[_0x3fb8[9]](),controller[_0x3fb8[10]]);router[_0x3fb8[11]](_0x3fb8[12],auth[_0x3fb8[9]](),controller[_0x3fb8[13]]);router[_0x3fb8[11]](_0x3fb8[14],auth[_0x3fb8[9]](),controller[_0x3fb8[15]]);router[_0x3fb8[11]](_0x3fb8[16],auth[_0x3fb8[9]](),controller[_0x3fb8[17]]);router[_0x3fb8[11]](_0x3fb8[18],auth[_0x3fb8[9]](),controller[_0x3fb8[19]]);router[_0x3fb8[11]](_0x3fb8[20],auth[_0x3fb8[9]](),controller[_0x3fb8[21]]);router[_0x3fb8[23]](_0x3fb8[8],auth[_0x3fb8[9]](),controller[_0x3fb8[22]]);router[_0x3fb8[23]](_0x3fb8[20],auth[_0x3fb8[9]](),controller[_0x3fb8[24]]);router[_0x3fb8[26]](_0x3fb8[12],auth[_0x3fb8[9]](),controller[_0x3fb8[25]]);router[_0x3fb8[28]](_0x3fb8[12],auth[_0x3fb8[9]](),controller[_0x3fb8[27]]);module[_0x3fb8[29]]= router
\ No newline at end of file
+var _0xc786=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x74\x61\x67\x73","\x67\x65\x74\x54\x61\x67\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x73\x65\x74\x54\x61\x67\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xc786[0];var multer=require(_0xc786[1]);var util=require(_0xc786[2]);var path=require(_0xc786[3]);var express=require(_0xc786[4]);var router=express.Router();var auth=require(_0xc786[5]);var config=require(_0xc786[6]);var controller=require(_0xc786[7]);router[_0xc786[11]](_0xc786[8],auth[_0xc786[9]](),controller[_0xc786[10]]);router[_0xc786[11]](_0xc786[12],auth[_0xc786[9]](),controller[_0xc786[13]]);router[_0xc786[11]](_0xc786[14],auth[_0xc786[9]](),controller[_0xc786[15]]);router[_0xc786[11]](_0xc786[16],auth[_0xc786[9]](),controller[_0xc786[17]]);router[_0xc786[11]](_0xc786[18],auth[_0xc786[9]](),controller[_0xc786[19]]);router[_0xc786[11]](_0xc786[20],auth[_0xc786[9]](),controller[_0xc786[21]]);router[_0xc786[23]](_0xc786[8],auth[_0xc786[9]](),controller[_0xc786[22]]);router[_0xc786[23]](_0xc786[20],auth[_0xc786[9]](),controller[_0xc786[24]]);router[_0xc786[26]](_0xc786[12],auth[_0xc786[9]](),controller[_0xc786[25]]);router[_0xc786[28]](_0xc786[12],auth[_0xc786[9]](),controller[_0xc786[27]]);module[_0xc786[29]]= router
\ No newline at end of file
index 1642799..bc7e632 100644 (file)
@@ -1 +1 @@
-var _0x16b7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x16b7[0];var Sequelize=require(_0x16b7[1]);module[_0x16b7[2]]= {name:{type:Sequelize[_0x16b7[3]]},description:{type:Sequelize[_0x16b7[3]]}}
\ No newline at end of file
+var _0x1f54=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x1f54[0];var Sequelize=require(_0x1f54[1]);module[_0x1f54[2]]= {name:{type:Sequelize[_0x1f54[3]]},description:{type:Sequelize[_0x1f54[3]]}}
\ No newline at end of file
index 48559b3..9c76225 100644 (file)
@@ -1 +1 @@
-var _0x1f5f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x54\x61\x67\x73","\x54\x61\x67","\x73\x65\x74\x54\x61\x67\x73","\x69\x64\x73"];_0x1f5f[0];var jsonpatch=require(_0x1f5f[1]);var rp=require(_0x1f5f[2]);var moment=require(_0x1f5f[3]);var BPromise=require(_0x1f5f[4]);var util=require(_0x1f5f[5]);var path=require(_0x1f5f[6]);var sox=require(_0x1f5f[7]);var ejs=require(_0x1f5f[8]);var fs=require(_0x1f5f[9]);var _=require(_0x1f5f[10]);var squel=require(_0x1f5f[11]);var crypto=require(_0x1f5f[12]);var jsforce=require(_0x1f5f[13]);var toCsv=require(_0x1f5f[14]);var qs=require(_0x1f5f[15]);var logger=require(_0x1f5f[17])(_0x1f5f[16]);var utils=require(_0x1f5f[18]);var config=require(_0x1f5f[19]);var db=require(_0x1f5f[21])[_0x1f5f[20]];var jayson=require(_0x1f5f[22]);var client=jayson[_0x1f5f[24]][_0x1f5f[23]]({port:9002});function respondWithRpcPromise(_0xd415x17,_0xd415x18,_0xd415x19){return  new BPromise(function(_0xd415x1a,_0xd415x1b){return client[_0x1f5f[37]](_0xd415x17,_0xd415x19)[_0x1f5f[36]](function(_0xd415x1d){logger[_0x1f5f[29]](_0x1f5f[25],_0xd415x18,_0x1f5f[28]);logger[_0x1f5f[32]](_0x1f5f[30],_0xd415x18,_0x1f5f[28],JSON[_0x1f5f[31]](_0xd415x1d));if(_0xd415x1d[_0x1f5f[26]]){if(_0xd415x1d[_0x1f5f[26]][_0x1f5f[33]]=== 500){logger[_0x1f5f[26]](_0x1f5f[25],_0xd415x18,_0xd415x1d[_0x1f5f[26]][_0x1f5f[34]]);return _0xd415x1b(_0xd415x1d[_0x1f5f[26]][_0x1f5f[34]])};logger[_0x1f5f[26]](_0x1f5f[25],_0xd415x18,_0xd415x1d[_0x1f5f[26]][_0x1f5f[34]]);return _0xd415x1a(_0xd415x1d[_0x1f5f[26]][_0x1f5f[34]])}else {logger[_0x1f5f[29]](_0x1f5f[25],_0xd415x18,_0x1f5f[28]);_0xd415x1a(_0xd415x1d[_0x1f5f[35]][_0x1f5f[34]])}})[_0x1f5f[27]](function(_0xd415x1c){logger[_0x1f5f[26]](_0x1f5f[25],_0xd415x18,_0xd415x1c);_0xd415x1b(_0xd415x1c)})})}function respondWithStatusCode(_0xd415x1d,_0xd415x1f,_0xd415x18){_0xd415x1f= _0xd415x1f|| 204;return function(_0xd415x20){if(_0xd415x20){logger[_0x1f5f[29]](_0x1f5f[30],_0xd415x18,_0xd415x1f,_0x1f5f[38]);logger[_0x1f5f[32]](_0x1f5f[39],_0xd415x18,_0xd415x1f,_0x1f5f[38]);return _0xd415x1d[_0x1f5f[40]](_0xd415x1f)};return _0xd415x1d[_0x1f5f[42]](304)[_0x1f5f[41]]()}}function respondWithResult(_0xd415x1d,_0xd415x1f,_0xd415x18){_0xd415x1f= _0xd415x1f|| 200;return function(_0xd415x20){if(_0xd415x20){logger[_0x1f5f[29]](_0x1f5f[30],_0xd415x18,_0xd415x1f,_0x1f5f[43]);logger[_0x1f5f[32]](_0x1f5f[39],_0xd415x18,_0xd415x1f,_0x1f5f[43],JSON[_0x1f5f[31]](_0xd415x20));return _0xd415x1d[_0x1f5f[42]](_0xd415x1f)[_0x1f5f[44]](_0xd415x20)};return _0xd415x1d[_0x1f5f[42]](304)[_0x1f5f[41]]()}}function respondWithFilteredResult(_0xd415x1d,_0xd415x23,_0xd415x18){return function(_0xd415x20){if(_0xd415x20){var _0xd415x24=_0xd415x20[_0x1f5f[45]],_0xd415x25=_0xd415x23[_0x1f5f[46]],_0xd415x26=_0xd415x23[_0x1f5f[46]]+ _0xd415x23[_0x1f5f[47]],_0xd415x1f;if(_0xd415x26>= _0xd415x24){_0xd415x26= _0xd415x24;_0xd415x1f= 200}else {_0xd415x1f= 206};_0xd415x1d[_0x1f5f[42]](_0xd415x1f);logger[_0x1f5f[29]](_0x1f5f[30],_0xd415x18,_0xd415x1f,_0x1f5f[48]);logger[_0x1f5f[32]](_0x1f5f[39],_0xd415x18,_0xd415x1f,_0x1f5f[43],JSON[_0x1f5f[31]](_0xd415x20));return _0xd415x1d[_0x1f5f[52]](_0x1f5f[49],_0xd415x25+ _0x1f5f[50]+ _0xd415x26+ _0x1f5f[51]+ _0xd415x24)[_0x1f5f[44]](_0xd415x20)};return null}}function patchUpdates(_0xd415x28){return function(_0xd415x20){try{jsonpatch[_0x1f5f[53]](_0xd415x20,_0xd415x28,true)}catch(err){return BPromise[_0x1f5f[54]](err)};return _0xd415x20[_0x1f5f[55]]()}}function saveUpdates(_0xd415x2a,_0xd415x1f,_0xd415x18){return function(_0xd415x20){if(_0xd415x20){return _0xd415x20[_0x1f5f[57]](_0xd415x2a)[_0x1f5f[36]](function(_0xd415x2b){logger[_0x1f5f[29]](_0x1f5f[30],_0xd415x18,_0xd415x1f,_0x1f5f[56]);logger[_0x1f5f[32]](_0x1f5f[39],_0xd415x18,_0xd415x1f,_0x1f5f[56],JSON[_0x1f5f[31]](_0xd415x20));return _0xd415x2b})};return null}}function removeEntity(_0xd415x1d,_0xd415x1f,_0xd415x18){return function(_0xd415x20){if(_0xd415x20){return _0xd415x20[_0x1f5f[59]]()[_0x1f5f[36]](function(){logger[_0x1f5f[29]](_0x1f5f[30],_0xd415x18,_0xd415x1f,_0x1f5f[58]);logger[_0x1f5f[32]](_0x1f5f[39],_0xd415x18,_0xd415x1f,_0x1f5f[58],JSON[_0x1f5f[31]](_0xd415x20));_0xd415x1d[_0x1f5f[42]](204)[_0x1f5f[41]]()})}}}function handleEntityNotFound(_0xd415x1d,_0xd415x1f,_0xd415x18){return function(_0xd415x20){if(!_0xd415x20){logger[_0x1f5f[26]](_0x1f5f[30],_0xd415x18,404,_0x1f5f[60]);_0xd415x1d[_0x1f5f[42]](404)[_0x1f5f[41]]();return null};return _0xd415x20}}function handleError(_0xd415x1d,_0xd415x1f,_0xd415x18){_0xd415x1f= _0xd415x1f|| 500;return function(_0xd415x1c){logger[_0x1f5f[26]](_0x1f5f[30],_0xd415x18,_0xd415x1f,JSON[_0x1f5f[31]](_0xd415x1c));delete _0xd415x1c[_0x1f5f[61]];_0xd415x1d[_0x1f5f[42]](_0xd415x1f)[_0x1f5f[62]](_0xd415x1c)}}exports[_0x1f5f[63]]= function(_0xd415x19,_0xd415x1d){var _0xd415x23={},_0xd415x2f={};_0xd415x2f[_0x1f5f[64]]= _[_0x1f5f[67]](db[_0x1f5f[66]][_0x1f5f[65]]);_0xd415x2f[_0x1f5f[68]]= _[_0x1f5f[67]](_0xd415x19[_0x1f5f[68]]);_0xd415x2f[_0x1f5f[69]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],_0xd415x2f[_0x1f5f[68]]);_0xd415x23[_0x1f5f[71]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],qs[_0x1f5f[72]](_0xd415x19[_0x1f5f[68]][_0x1f5f[72]]));_0xd415x23[_0x1f5f[71]]= (_0xd415x23[_0x1f5f[71]][_0x1f5f[73]])?_0xd415x23[_0x1f5f[71]]:_0xd415x2f[_0x1f5f[64]];if(!_0xd415x19[_0x1f5f[68]][_0x1f5f[75]](_0x1f5f[74])){_0xd415x23[_0x1f5f[47]]= qs[_0x1f5f[47]](_0xd415x19[_0x1f5f[68]][_0x1f5f[47]]);_0xd415x23[_0x1f5f[46]]= qs[_0x1f5f[46]](_0xd415x19[_0x1f5f[68]][_0x1f5f[46]])};_0xd415x23[_0x1f5f[76]]= qs[_0x1f5f[77]](_0xd415x19[_0x1f5f[68]][_0x1f5f[77]]);_0xd415x23[_0x1f5f[78]]= qs[_0x1f5f[69]](_[_0x1f5f[79]](_0xd415x19[_0x1f5f[68]],_0xd415x2f[_0x1f5f[69]]));if(_0xd415x19[_0x1f5f[68]][_0x1f5f[80]]){_0xd415x23[_0x1f5f[78]]= _[_0x1f5f[83]](_0xd415x23[_0x1f5f[78]],{$or:_[_0x1f5f[82]](_0xd415x23[_0x1f5f[71]],function(_0xd415x30){var _0xd415x31={};_0xd415x31[_0xd415x30]= {$like:_0x1f5f[81]+ _0xd415x19[_0x1f5f[68]][_0x1f5f[80]]+ _0x1f5f[81]};return _0xd415x31})})};_0xd415x23= _[_0x1f5f[83]]({},_0xd415x23,_0xd415x19[_0x1f5f[84]]);return db[_0x1f5f[66]][_0x1f5f[85]](_0xd415x23)[_0x1f5f[36]](respondWithFilteredResult(_0xd415x1d,_0xd415x23,_0x1f5f[63]))[_0x1f5f[27]](handleError(_0xd415x1d,null,_0x1f5f[63]))};exports[_0x1f5f[86]]= function(_0xd415x19,_0xd415x1d){var _0xd415x23={raw:false,where:{id:_0xd415x19[_0x1f5f[88]][_0x1f5f[87]]}},_0xd415x2f={};_0xd415x2f[_0x1f5f[64]]= _[_0x1f5f[67]](db[_0x1f5f[66]][_0x1f5f[65]]);_0xd415x2f[_0x1f5f[68]]= _[_0x1f5f[67]](_0xd415x19[_0x1f5f[68]]);_0xd415x2f[_0x1f5f[69]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],_0xd415x2f[_0x1f5f[68]]);_0xd415x23[_0x1f5f[71]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],qs[_0x1f5f[72]](_0xd415x19[_0x1f5f[68]][_0x1f5f[72]]));_0xd415x23[_0x1f5f[71]]= (_0xd415x23[_0x1f5f[71]][_0x1f5f[73]])?_0xd415x23[_0x1f5f[71]]:_0xd415x2f[_0x1f5f[64]];_0xd415x23= _[_0x1f5f[83]]({},_0xd415x23,_0xd415x19[_0x1f5f[84]]);return db[_0x1f5f[66]][_0x1f5f[89]](_0xd415x23)[_0x1f5f[36]](handleEntityNotFound(_0xd415x1d,null,_0x1f5f[86]))[_0x1f5f[36]](respondWithResult(_0xd415x1d,null,_0x1f5f[86]))[_0x1f5f[27]](handleError(_0xd415x1d,null,_0x1f5f[86]))};exports[_0x1f5f[90]]= function(_0xd415x19,_0xd415x1d){return db[_0x1f5f[66]][_0x1f5f[90]](_0xd415x19[_0x1f5f[91]],{})[_0x1f5f[36]](respondWithResult(_0xd415x1d,201,_0x1f5f[90]))[_0x1f5f[27]](handleError(_0xd415x1d,null,_0x1f5f[90]))};exports[_0x1f5f[57]]= function(_0xd415x19,_0xd415x1d){if(_0xd415x19[_0x1f5f[91]][_0x1f5f[87]]){delete _0xd415x19[_0x1f5f[91]][_0x1f5f[87]]};return db[_0x1f5f[66]][_0x1f5f[89]]({where:{id:_0xd415x19[_0x1f5f[88]][_0x1f5f[87]]}})[_0x1f5f[36]](handleEntityNotFound(_0xd415x1d,null,_0x1f5f[57]))[_0x1f5f[36]](saveUpdates(_0xd415x19[_0x1f5f[91]],null,_0x1f5f[57]))[_0x1f5f[36]](respondWithResult(_0xd415x1d,null,_0x1f5f[57]))[_0x1f5f[27]](handleError(_0xd415x1d,null,_0x1f5f[57]))};exports[_0x1f5f[59]]= function(_0xd415x19,_0xd415x1d){return db[_0x1f5f[66]][_0x1f5f[89]]({where:{id:_0xd415x19[_0x1f5f[88]][_0x1f5f[87]]}})[_0x1f5f[36]](handleEntityNotFound(_0xd415x1d,null,_0x1f5f[59]))[_0x1f5f[36]](removeEntity(_0xd415x1d,null,_0x1f5f[59]))[_0x1f5f[27]](handleError(_0xd415x1d,null,_0x1f5f[59]))};exports[_0x1f5f[92]]= function(_0xd415x19,_0xd415x20,_0xd415x32){var _0xd415x23={};var _0xd415x2f={};var _0xd415x33;var _0xd415x24;return db[_0x1f5f[66]][_0x1f5f[94]]({where:{id:_0xd415x19[_0x1f5f[88]][_0x1f5f[87]]}})[_0x1f5f[36]](handleEntityNotFound(_0xd415x20,null,_0x1f5f[92]))[_0x1f5f[36]](function(_0xd415x20){if(_0xd415x20){_0xd415x33= _0xd415x20;_0xd415x2f[_0x1f5f[64]]= _[_0x1f5f[67]](db[_0x1f5f[93]][_0x1f5f[65]]);_0xd415x2f[_0x1f5f[68]]= _[_0x1f5f[67]](_0xd415x19[_0x1f5f[68]]);_0xd415x2f[_0x1f5f[69]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],_0xd415x2f[_0x1f5f[68]]);_0xd415x23[_0x1f5f[71]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],qs[_0x1f5f[72]](_0xd415x19[_0x1f5f[68]][_0x1f5f[72]]));_0xd415x23[_0x1f5f[71]]= (_0xd415x23[_0x1f5f[71]][_0x1f5f[73]])?_0xd415x23[_0x1f5f[71]]:_0xd415x2f[_0x1f5f[64]];_0xd415x23[_0x1f5f[76]]= qs[_0x1f5f[77]](_0xd415x19[_0x1f5f[68]][_0x1f5f[77]]);_0xd415x23[_0x1f5f[78]]= qs[_0x1f5f[69]](_[_0x1f5f[79]](_0xd415x19[_0x1f5f[68]],_0xd415x2f[_0x1f5f[69]]));if(_0xd415x19[_0x1f5f[68]][_0x1f5f[80]]){_0xd415x23[_0x1f5f[78]]= _[_0x1f5f[83]](_0xd415x23[_0x1f5f[78]],{$or:_[_0x1f5f[82]](_0xd415x23[_0x1f5f[71]],function(_0xd415x30){var _0xd415x31={};_0xd415x31[_0xd415x30]= {$like:_0x1f5f[81]+ _0xd415x19[_0x1f5f[68]][_0x1f5f[80]]+ _0x1f5f[81]};return _0xd415x31})})};_0xd415x23= _[_0x1f5f[83]]({},_0xd415x23,_0xd415x19[_0x1f5f[84]]);return _0xd415x33[_0x1f5f[92]](_0xd415x23)}})[_0x1f5f[36]](function(_0xd415x35){if(_0xd415x35){_0xd415x24= _0xd415x35[_0x1f5f[73]];if(!_0xd415x19[_0x1f5f[68]][_0x1f5f[75]](_0x1f5f[74])){_0xd415x23[_0x1f5f[47]]= qs[_0x1f5f[47]](_0xd415x19[_0x1f5f[68]][_0x1f5f[47]]);_0xd415x23[_0x1f5f[46]]= qs[_0x1f5f[46]](_0xd415x19[_0x1f5f[68]][_0x1f5f[46]])};return _0xd415x33[_0x1f5f[92]](_0xd415x23)}})[_0x1f5f[36]](function(_0xd415x34){return _0xd415x34?{count:_0xd415x24,rows:_0xd415x34}:null})[_0x1f5f[36]](respondWithResult(_0xd415x20,null,_0x1f5f[92]))[_0x1f5f[27]](handleError(_0xd415x20,null,_0x1f5f[92]))};exports[_0x1f5f[95]]= function(_0xd415x19,_0xd415x20,_0xd415x32){var _0xd415x23={};var _0xd415x2f={};var _0xd415x33;var _0xd415x24;return db[_0x1f5f[66]][_0x1f5f[94]]({where:{id:_0xd415x19[_0x1f5f[88]][_0x1f5f[87]]}})[_0x1f5f[36]](handleEntityNotFound(_0xd415x20,null,_0x1f5f[95]))[_0x1f5f[36]](function(_0xd415x20){if(_0xd415x20){_0xd415x33= _0xd415x20;_0xd415x2f[_0x1f5f[64]]= _[_0x1f5f[67]](db[_0x1f5f[93]][_0x1f5f[65]]);_0xd415x2f[_0x1f5f[68]]= _[_0x1f5f[67]](_0xd415x19[_0x1f5f[68]]);_0xd415x2f[_0x1f5f[69]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],_0xd415x2f[_0x1f5f[68]]);_0xd415x23[_0x1f5f[71]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],qs[_0x1f5f[72]](_0xd415x19[_0x1f5f[68]][_0x1f5f[72]]));_0xd415x23[_0x1f5f[71]]= (_0xd415x23[_0x1f5f[71]][_0x1f5f[73]])?_0xd415x23[_0x1f5f[71]]:_0xd415x2f[_0x1f5f[64]];_0xd415x23[_0x1f5f[76]]= qs[_0x1f5f[77]](_0xd415x19[_0x1f5f[68]][_0x1f5f[77]]);_0xd415x23[_0x1f5f[78]]= qs[_0x1f5f[69]](_[_0x1f5f[79]](_0xd415x19[_0x1f5f[68]],_0xd415x2f[_0x1f5f[69]]));if(_0xd415x19[_0x1f5f[68]][_0x1f5f[80]]){_0xd415x23[_0x1f5f[78]]= _[_0x1f5f[83]](_0xd415x23[_0x1f5f[78]],{$or:_[_0x1f5f[82]](_0xd415x23[_0x1f5f[71]],function(_0xd415x30){var _0xd415x31={};_0xd415x31[_0xd415x30]= {$like:_0x1f5f[81]+ _0xd415x19[_0x1f5f[68]][_0x1f5f[80]]+ _0x1f5f[81]};return _0xd415x31})})};_0xd415x23= _[_0x1f5f[83]]({},_0xd415x23,_0xd415x19[_0x1f5f[84]]);return _0xd415x33[_0x1f5f[95]](_0xd415x23)}})[_0x1f5f[36]](function(_0xd415x35){if(_0xd415x35){_0xd415x24= _0xd415x35[_0x1f5f[73]];if(!_0xd415x19[_0x1f5f[68]][_0x1f5f[75]](_0x1f5f[74])){_0xd415x23[_0x1f5f[47]]= qs[_0x1f5f[47]](_0xd415x19[_0x1f5f[68]][_0x1f5f[47]]);_0xd415x23[_0x1f5f[46]]= qs[_0x1f5f[46]](_0xd415x19[_0x1f5f[68]][_0x1f5f[46]])};return _0xd415x33[_0x1f5f[95]](_0xd415x23)}})[_0x1f5f[36]](function(_0xd415x34){return _0xd415x34?{count:_0xd415x24,rows:_0xd415x34}:null})[_0x1f5f[36]](respondWithResult(_0xd415x20,null,_0x1f5f[95]))[_0x1f5f[27]](handleError(_0xd415x20,null,_0x1f5f[95]))};exports[_0x1f5f[96]]= function(_0xd415x19,_0xd415x20,_0xd415x32){var _0xd415x23={};var _0xd415x2f={};var _0xd415x33;var _0xd415x24;return db[_0x1f5f[66]][_0x1f5f[94]]({where:{id:_0xd415x19[_0x1f5f[88]][_0x1f5f[87]]}})[_0x1f5f[36]](handleEntityNotFound(_0xd415x20,null,_0x1f5f[96]))[_0x1f5f[36]](function(_0xd415x20){if(_0xd415x20){_0xd415x33= _0xd415x20;_0xd415x2f[_0x1f5f[64]]= _[_0x1f5f[67]](db[_0x1f5f[93]][_0x1f5f[65]]);_0xd415x2f[_0x1f5f[68]]= _[_0x1f5f[67]](_0xd415x19[_0x1f5f[68]]);_0xd415x2f[_0x1f5f[69]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],_0xd415x2f[_0x1f5f[68]]);_0xd415x23[_0x1f5f[71]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],qs[_0x1f5f[72]](_0xd415x19[_0x1f5f[68]][_0x1f5f[72]]));_0xd415x23[_0x1f5f[71]]= (_0xd415x23[_0x1f5f[71]][_0x1f5f[73]])?_0xd415x23[_0x1f5f[71]]:_0xd415x2f[_0x1f5f[64]];_0xd415x23[_0x1f5f[76]]= qs[_0x1f5f[77]](_0xd415x19[_0x1f5f[68]][_0x1f5f[77]]);_0xd415x23[_0x1f5f[78]]= qs[_0x1f5f[69]](_[_0x1f5f[79]](_0xd415x19[_0x1f5f[68]],_0xd415x2f[_0x1f5f[69]]));if(_0xd415x19[_0x1f5f[68]][_0x1f5f[80]]){_0xd415x23[_0x1f5f[78]]= _[_0x1f5f[83]](_0xd415x23[_0x1f5f[78]],{$or:_[_0x1f5f[82]](_0xd415x23[_0x1f5f[71]],function(_0xd415x30){var _0xd415x31={};_0xd415x31[_0xd415x30]= {$like:_0x1f5f[81]+ _0xd415x19[_0x1f5f[68]][_0x1f5f[80]]+ _0x1f5f[81]};return _0xd415x31})})};_0xd415x23= _[_0x1f5f[83]]({},_0xd415x23,_0xd415x19[_0x1f5f[84]]);return _0xd415x33[_0x1f5f[96]](_0xd415x23)}})[_0x1f5f[36]](function(_0xd415x35){if(_0xd415x35){_0xd415x24= _0xd415x35[_0x1f5f[73]];if(!_0xd415x19[_0x1f5f[68]][_0x1f5f[75]](_0x1f5f[74])){_0xd415x23[_0x1f5f[47]]= qs[_0x1f5f[47]](_0xd415x19[_0x1f5f[68]][_0x1f5f[47]]);_0xd415x23[_0x1f5f[46]]= qs[_0x1f5f[46]](_0xd415x19[_0x1f5f[68]][_0x1f5f[46]])};return _0xd415x33[_0x1f5f[96]](_0xd415x23)}})[_0x1f5f[36]](function(_0xd415x34){return _0xd415x34?{count:_0xd415x24,rows:_0xd415x34}:null})[_0x1f5f[36]](respondWithResult(_0xd415x20,null,_0x1f5f[96]))[_0x1f5f[27]](handleError(_0xd415x20,null,_0x1f5f[96]))};exports[_0x1f5f[97]]= function(_0xd415x19,_0xd415x20,_0xd415x32){var _0xd415x23={};var _0xd415x2f={};var _0xd415x33;var _0xd415x24;return db[_0x1f5f[66]][_0x1f5f[94]]({where:{id:_0xd415x19[_0x1f5f[88]][_0x1f5f[87]]}})[_0x1f5f[36]](handleEntityNotFound(_0xd415x20,null,_0x1f5f[97]))[_0x1f5f[36]](function(_0xd415x20){if(_0xd415x20){_0xd415x33= _0xd415x20;_0xd415x2f[_0x1f5f[64]]= _[_0x1f5f[67]](db[_0x1f5f[98]][_0x1f5f[65]]);_0xd415x2f[_0x1f5f[68]]= _[_0x1f5f[67]](_0xd415x19[_0x1f5f[68]]);_0xd415x2f[_0x1f5f[69]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],_0xd415x2f[_0x1f5f[68]]);_0xd415x23[_0x1f5f[71]]= _[_0x1f5f[70]](_0xd415x2f[_0x1f5f[64]],qs[_0x1f5f[72]](_0xd415x19[_0x1f5f[68]][_0x1f5f[72]]));_0xd415x23[_0x1f5f[71]]= (_0xd415x23[_0x1f5f[71]][_0x1f5f[73]])?_0xd415x23[_0x1f5f[71]]:_0xd415x2f[_0x1f5f[64]];_0xd415x23[_0x1f5f[76]]= qs[_0x1f5f[77]](_0xd415x19[_0x1f5f[68]][_0x1f5f[77]]);_0xd415x23[_0x1f5f[78]]= qs[_0x1f5f[69]](_[_0x1f5f[79]](_0xd415x19[_0x1f5f[68]],_0xd415x2f[_0x1f5f[69]]));if(_0xd415x19[_0x1f5f[68]][_0x1f5f[80]]){_0xd415x23[_0x1f5f[78]]= _[_0x1f5f[83]](_0xd415x23[_0x1f5f[78]],{$or:_[_0x1f5f[82]](_0xd415x23[_0x1f5f[71]],function(_0xd415x30){var _0xd415x31={};_0xd415x31[_0xd415x30]= {$like:_0x1f5f[81]+ _0xd415x19[_0x1f5f[68]][_0x1f5f[80]]+ _0x1f5f[81]};return _0xd415x31})})};_0xd415x23= _[_0x1f5f[83]]({},_0xd415x23,_0xd415x19[_0x1f5f[84]]);return _0xd415x33[_0x1f5f[97]](_0xd415x23)}})[_0x1f5f[36]](function(_0xd415x35){if(_0xd415x35){_0xd415x24= _0xd415x35[_0x1f5f[73]];if(!_0xd415x19[_0x1f5f[68]][_0x1f5f[75]](_0x1f5f[74])){_0xd415x23[_0x1f5f[47]]= qs[_0x1f5f[47]](_0xd415x19[_0x1f5f[68]][_0x1f5f[47]]);_0xd415x23[_0x1f5f[46]]= qs[_0x1f5f[46]](_0xd415x19[_0x1f5f[68]][_0x1f5f[46]])};return _0xd415x33[_0x1f5f[97]](_0xd415x23)}})[_0x1f5f[36]](function(_0xd415x34){return _0xd415x34?{count:_0xd415x24,rows:_0xd415x34}:null})[_0x1f5f[36]](respondWithResult(_0xd415x20,null,_0x1f5f[97]))[_0x1f5f[27]](handleError(_0xd415x20,null,_0x1f5f[97]))};exports[_0x1f5f[99]]= function(_0xd415x19,_0xd415x1d,_0xd415x32){if(_0xd415x19[_0x1f5f[91]][_0x1f5f[87]]){delete _0xd415x19[_0x1f5f[91]][_0x1f5f[87]]};return db[_0x1f5f[66]][_0x1f5f[94]]({where:{id:_0xd415x19[_0x1f5f[88]][_0x1f5f[87]]}})[_0x1f5f[36]](handleEntityNotFound(_0xd415x1d,null,_0x1f5f[99]))[_0x1f5f[36]](function(_0xd415x20){if(_0xd415x20){return _0xd415x20[_0x1f5f[99]](_0xd415x19[_0x1f5f[91]][_0x1f5f[100]])};return null})[_0x1f5f[36]](respondWithResult(_0xd415x1d,null,_0x1f5f[99]))[_0x1f5f[27]](handleError(_0xd415x1d,null,_0x1f5f[99]))}
\ No newline at end of file
+var _0xf883=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x54\x61\x67\x73","\x54\x61\x67","\x73\x65\x74\x54\x61\x67\x73","\x69\x64\x73"];_0xf883[0];var jsonpatch=require(_0xf883[1]);var rp=require(_0xf883[2]);var moment=require(_0xf883[3]);var BPromise=require(_0xf883[4]);var util=require(_0xf883[5]);var path=require(_0xf883[6]);var sox=require(_0xf883[7]);var ejs=require(_0xf883[8]);var fs=require(_0xf883[9]);var _=require(_0xf883[10]);var squel=require(_0xf883[11]);var crypto=require(_0xf883[12]);var jsforce=require(_0xf883[13]);var toCsv=require(_0xf883[14]);var qs=require(_0xf883[15]);var logger=require(_0xf883[17])(_0xf883[16]);var utils=require(_0xf883[18]);var config=require(_0xf883[19]);var db=require(_0xf883[21])[_0xf883[20]];var jayson=require(_0xf883[22]);var client=jayson[_0xf883[24]][_0xf883[23]]({port:9002});function respondWithRpcPromise(_0x340bx17,_0x340bx18,_0x340bx19){return  new BPromise(function(_0x340bx1a,_0x340bx1b){return client[_0xf883[37]](_0x340bx17,_0x340bx19)[_0xf883[36]](function(_0x340bx1d){logger[_0xf883[29]](_0xf883[25],_0x340bx18,_0xf883[28]);logger[_0xf883[32]](_0xf883[30],_0x340bx18,_0xf883[28],JSON[_0xf883[31]](_0x340bx1d));if(_0x340bx1d[_0xf883[26]]){if(_0x340bx1d[_0xf883[26]][_0xf883[33]]=== 500){logger[_0xf883[26]](_0xf883[25],_0x340bx18,_0x340bx1d[_0xf883[26]][_0xf883[34]]);return _0x340bx1b(_0x340bx1d[_0xf883[26]][_0xf883[34]])};logger[_0xf883[26]](_0xf883[25],_0x340bx18,_0x340bx1d[_0xf883[26]][_0xf883[34]]);return _0x340bx1a(_0x340bx1d[_0xf883[26]][_0xf883[34]])}else {logger[_0xf883[29]](_0xf883[25],_0x340bx18,_0xf883[28]);_0x340bx1a(_0x340bx1d[_0xf883[35]][_0xf883[34]])}})[_0xf883[27]](function(_0x340bx1c){logger[_0xf883[26]](_0xf883[25],_0x340bx18,_0x340bx1c);_0x340bx1b(_0x340bx1c)})})}function respondWithStatusCode(_0x340bx1d,_0x340bx1f,_0x340bx18){_0x340bx1f= _0x340bx1f|| 204;return function(_0x340bx20){if(_0x340bx20){logger[_0xf883[29]](_0xf883[30],_0x340bx18,_0x340bx1f,_0xf883[38]);logger[_0xf883[32]](_0xf883[39],_0x340bx18,_0x340bx1f,_0xf883[38]);return _0x340bx1d[_0xf883[40]](_0x340bx1f)};return _0x340bx1d[_0xf883[42]](304)[_0xf883[41]]()}}function respondWithResult(_0x340bx1d,_0x340bx1f,_0x340bx18){_0x340bx1f= _0x340bx1f|| 200;return function(_0x340bx20){if(_0x340bx20){logger[_0xf883[29]](_0xf883[30],_0x340bx18,_0x340bx1f,_0xf883[43]);logger[_0xf883[32]](_0xf883[39],_0x340bx18,_0x340bx1f,_0xf883[43],JSON[_0xf883[31]](_0x340bx20));return _0x340bx1d[_0xf883[42]](_0x340bx1f)[_0xf883[44]](_0x340bx20)};return _0x340bx1d[_0xf883[42]](304)[_0xf883[41]]()}}function respondWithFilteredResult(_0x340bx1d,_0x340bx23,_0x340bx18){return function(_0x340bx20){if(_0x340bx20){var _0x340bx24=_0x340bx20[_0xf883[45]],_0x340bx25=_0x340bx23[_0xf883[46]],_0x340bx26=_0x340bx23[_0xf883[46]]+ _0x340bx23[_0xf883[47]],_0x340bx1f;if(_0x340bx26>= _0x340bx24){_0x340bx26= _0x340bx24;_0x340bx1f= 200}else {_0x340bx1f= 206};_0x340bx1d[_0xf883[42]](_0x340bx1f);logger[_0xf883[29]](_0xf883[30],_0x340bx18,_0x340bx1f,_0xf883[48]);logger[_0xf883[32]](_0xf883[39],_0x340bx18,_0x340bx1f,_0xf883[43],JSON[_0xf883[31]](_0x340bx20));return _0x340bx1d[_0xf883[52]](_0xf883[49],_0x340bx25+ _0xf883[50]+ _0x340bx26+ _0xf883[51]+ _0x340bx24)[_0xf883[44]](_0x340bx20)};return null}}function patchUpdates(_0x340bx28){return function(_0x340bx20){try{jsonpatch[_0xf883[53]](_0x340bx20,_0x340bx28,true)}catch(err){return BPromise[_0xf883[54]](err)};return _0x340bx20[_0xf883[55]]()}}function saveUpdates(_0x340bx2a,_0x340bx1f,_0x340bx18){return function(_0x340bx20){if(_0x340bx20){return _0x340bx20[_0xf883[57]](_0x340bx2a)[_0xf883[36]](function(_0x340bx2b){logger[_0xf883[29]](_0xf883[30],_0x340bx18,_0x340bx1f,_0xf883[56]);logger[_0xf883[32]](_0xf883[39],_0x340bx18,_0x340bx1f,_0xf883[56],JSON[_0xf883[31]](_0x340bx20));return _0x340bx2b})};return null}}function removeEntity(_0x340bx1d,_0x340bx1f,_0x340bx18){return function(_0x340bx20){if(_0x340bx20){return _0x340bx20[_0xf883[59]]()[_0xf883[36]](function(){logger[_0xf883[29]](_0xf883[30],_0x340bx18,_0x340bx1f,_0xf883[58]);logger[_0xf883[32]](_0xf883[39],_0x340bx18,_0x340bx1f,_0xf883[58],JSON[_0xf883[31]](_0x340bx20));_0x340bx1d[_0xf883[42]](204)[_0xf883[41]]()})}}}function handleEntityNotFound(_0x340bx1d,_0x340bx1f,_0x340bx18){return function(_0x340bx20){if(!_0x340bx20){logger[_0xf883[26]](_0xf883[30],_0x340bx18,404,_0xf883[60]);_0x340bx1d[_0xf883[42]](404)[_0xf883[41]]();return null};return _0x340bx20}}function handleError(_0x340bx1d,_0x340bx1f,_0x340bx18){_0x340bx1f= _0x340bx1f|| 500;return function(_0x340bx1c){logger[_0xf883[26]](_0xf883[30],_0x340bx18,_0x340bx1f,JSON[_0xf883[31]](_0x340bx1c));delete _0x340bx1c[_0xf883[61]];_0x340bx1d[_0xf883[42]](_0x340bx1f)[_0xf883[62]](_0x340bx1c)}}exports[_0xf883[63]]= function(_0x340bx19,_0x340bx1d){var _0x340bx23={},_0x340bx2f={};_0x340bx2f[_0xf883[64]]= _[_0xf883[67]](db[_0xf883[66]][_0xf883[65]]);_0x340bx2f[_0xf883[68]]= _[_0xf883[67]](_0x340bx19[_0xf883[68]]);_0x340bx2f[_0xf883[69]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],_0x340bx2f[_0xf883[68]]);_0x340bx23[_0xf883[71]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],qs[_0xf883[72]](_0x340bx19[_0xf883[68]][_0xf883[72]]));_0x340bx23[_0xf883[71]]= (_0x340bx23[_0xf883[71]][_0xf883[73]])?_0x340bx23[_0xf883[71]]:_0x340bx2f[_0xf883[64]];if(!_0x340bx19[_0xf883[68]][_0xf883[75]](_0xf883[74])){_0x340bx23[_0xf883[47]]= qs[_0xf883[47]](_0x340bx19[_0xf883[68]][_0xf883[47]]);_0x340bx23[_0xf883[46]]= qs[_0xf883[46]](_0x340bx19[_0xf883[68]][_0xf883[46]])};_0x340bx23[_0xf883[76]]= qs[_0xf883[77]](_0x340bx19[_0xf883[68]][_0xf883[77]]);_0x340bx23[_0xf883[78]]= qs[_0xf883[69]](_[_0xf883[79]](_0x340bx19[_0xf883[68]],_0x340bx2f[_0xf883[69]]));if(_0x340bx19[_0xf883[68]][_0xf883[80]]){_0x340bx23[_0xf883[78]]= _[_0xf883[83]](_0x340bx23[_0xf883[78]],{$or:_[_0xf883[82]](_0x340bx23[_0xf883[71]],function(_0x340bx30){var _0x340bx31={};_0x340bx31[_0x340bx30]= {$like:_0xf883[81]+ _0x340bx19[_0xf883[68]][_0xf883[80]]+ _0xf883[81]};return _0x340bx31})})};_0x340bx23= _[_0xf883[83]]({},_0x340bx23,_0x340bx19[_0xf883[84]]);return db[_0xf883[66]][_0xf883[85]](_0x340bx23)[_0xf883[36]](respondWithFilteredResult(_0x340bx1d,_0x340bx23,_0xf883[63]))[_0xf883[27]](handleError(_0x340bx1d,null,_0xf883[63]))};exports[_0xf883[86]]= function(_0x340bx19,_0x340bx1d){var _0x340bx23={raw:false,where:{id:_0x340bx19[_0xf883[88]][_0xf883[87]]}},_0x340bx2f={};_0x340bx2f[_0xf883[64]]= _[_0xf883[67]](db[_0xf883[66]][_0xf883[65]]);_0x340bx2f[_0xf883[68]]= _[_0xf883[67]](_0x340bx19[_0xf883[68]]);_0x340bx2f[_0xf883[69]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],_0x340bx2f[_0xf883[68]]);_0x340bx23[_0xf883[71]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],qs[_0xf883[72]](_0x340bx19[_0xf883[68]][_0xf883[72]]));_0x340bx23[_0xf883[71]]= (_0x340bx23[_0xf883[71]][_0xf883[73]])?_0x340bx23[_0xf883[71]]:_0x340bx2f[_0xf883[64]];_0x340bx23= _[_0xf883[83]]({},_0x340bx23,_0x340bx19[_0xf883[84]]);return db[_0xf883[66]][_0xf883[89]](_0x340bx23)[_0xf883[36]](handleEntityNotFound(_0x340bx1d,null,_0xf883[86]))[_0xf883[36]](respondWithResult(_0x340bx1d,null,_0xf883[86]))[_0xf883[27]](handleError(_0x340bx1d,null,_0xf883[86]))};exports[_0xf883[90]]= function(_0x340bx19,_0x340bx1d){return db[_0xf883[66]][_0xf883[90]](_0x340bx19[_0xf883[91]],{})[_0xf883[36]](respondWithResult(_0x340bx1d,201,_0xf883[90]))[_0xf883[27]](handleError(_0x340bx1d,null,_0xf883[90]))};exports[_0xf883[57]]= function(_0x340bx19,_0x340bx1d){if(_0x340bx19[_0xf883[91]][_0xf883[87]]){delete _0x340bx19[_0xf883[91]][_0xf883[87]]};return db[_0xf883[66]][_0xf883[89]]({where:{id:_0x340bx19[_0xf883[88]][_0xf883[87]]}})[_0xf883[36]](handleEntityNotFound(_0x340bx1d,null,_0xf883[57]))[_0xf883[36]](saveUpdates(_0x340bx19[_0xf883[91]],null,_0xf883[57]))[_0xf883[36]](respondWithResult(_0x340bx1d,null,_0xf883[57]))[_0xf883[27]](handleError(_0x340bx1d,null,_0xf883[57]))};exports[_0xf883[59]]= function(_0x340bx19,_0x340bx1d){return db[_0xf883[66]][_0xf883[89]]({where:{id:_0x340bx19[_0xf883[88]][_0xf883[87]]}})[_0xf883[36]](handleEntityNotFound(_0x340bx1d,null,_0xf883[59]))[_0xf883[36]](removeEntity(_0x340bx1d,null,_0xf883[59]))[_0xf883[27]](handleError(_0x340bx1d,null,_0xf883[59]))};exports[_0xf883[92]]= function(_0x340bx19,_0x340bx20,_0x340bx32){var _0x340bx23={};var _0x340bx2f={};var _0x340bx33;var _0x340bx24;return db[_0xf883[66]][_0xf883[94]]({where:{id:_0x340bx19[_0xf883[88]][_0xf883[87]]}})[_0xf883[36]](handleEntityNotFound(_0x340bx20,null,_0xf883[92]))[_0xf883[36]](function(_0x340bx20){if(_0x340bx20){_0x340bx33= _0x340bx20;_0x340bx2f[_0xf883[64]]= _[_0xf883[67]](db[_0xf883[93]][_0xf883[65]]);_0x340bx2f[_0xf883[68]]= _[_0xf883[67]](_0x340bx19[_0xf883[68]]);_0x340bx2f[_0xf883[69]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],_0x340bx2f[_0xf883[68]]);_0x340bx23[_0xf883[71]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],qs[_0xf883[72]](_0x340bx19[_0xf883[68]][_0xf883[72]]));_0x340bx23[_0xf883[71]]= (_0x340bx23[_0xf883[71]][_0xf883[73]])?_0x340bx23[_0xf883[71]]:_0x340bx2f[_0xf883[64]];_0x340bx23[_0xf883[76]]= qs[_0xf883[77]](_0x340bx19[_0xf883[68]][_0xf883[77]]);_0x340bx23[_0xf883[78]]= qs[_0xf883[69]](_[_0xf883[79]](_0x340bx19[_0xf883[68]],_0x340bx2f[_0xf883[69]]));if(_0x340bx19[_0xf883[68]][_0xf883[80]]){_0x340bx23[_0xf883[78]]= _[_0xf883[83]](_0x340bx23[_0xf883[78]],{$or:_[_0xf883[82]](_0x340bx23[_0xf883[71]],function(_0x340bx30){var _0x340bx31={};_0x340bx31[_0x340bx30]= {$like:_0xf883[81]+ _0x340bx19[_0xf883[68]][_0xf883[80]]+ _0xf883[81]};return _0x340bx31})})};_0x340bx23= _[_0xf883[83]]({},_0x340bx23,_0x340bx19[_0xf883[84]]);return _0x340bx33[_0xf883[92]](_0x340bx23)}})[_0xf883[36]](function(_0x340bx35){if(_0x340bx35){_0x340bx24= _0x340bx35[_0xf883[73]];if(!_0x340bx19[_0xf883[68]][_0xf883[75]](_0xf883[74])){_0x340bx23[_0xf883[47]]= qs[_0xf883[47]](_0x340bx19[_0xf883[68]][_0xf883[47]]);_0x340bx23[_0xf883[46]]= qs[_0xf883[46]](_0x340bx19[_0xf883[68]][_0xf883[46]])};return _0x340bx33[_0xf883[92]](_0x340bx23)}})[_0xf883[36]](function(_0x340bx34){return _0x340bx34?{count:_0x340bx24,rows:_0x340bx34}:null})[_0xf883[36]](respondWithResult(_0x340bx20,null,_0xf883[92]))[_0xf883[27]](handleError(_0x340bx20,null,_0xf883[92]))};exports[_0xf883[95]]= function(_0x340bx19,_0x340bx20,_0x340bx32){var _0x340bx23={};var _0x340bx2f={};var _0x340bx33;var _0x340bx24;return db[_0xf883[66]][_0xf883[94]]({where:{id:_0x340bx19[_0xf883[88]][_0xf883[87]]}})[_0xf883[36]](handleEntityNotFound(_0x340bx20,null,_0xf883[95]))[_0xf883[36]](function(_0x340bx20){if(_0x340bx20){_0x340bx33= _0x340bx20;_0x340bx2f[_0xf883[64]]= _[_0xf883[67]](db[_0xf883[93]][_0xf883[65]]);_0x340bx2f[_0xf883[68]]= _[_0xf883[67]](_0x340bx19[_0xf883[68]]);_0x340bx2f[_0xf883[69]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],_0x340bx2f[_0xf883[68]]);_0x340bx23[_0xf883[71]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],qs[_0xf883[72]](_0x340bx19[_0xf883[68]][_0xf883[72]]));_0x340bx23[_0xf883[71]]= (_0x340bx23[_0xf883[71]][_0xf883[73]])?_0x340bx23[_0xf883[71]]:_0x340bx2f[_0xf883[64]];_0x340bx23[_0xf883[76]]= qs[_0xf883[77]](_0x340bx19[_0xf883[68]][_0xf883[77]]);_0x340bx23[_0xf883[78]]= qs[_0xf883[69]](_[_0xf883[79]](_0x340bx19[_0xf883[68]],_0x340bx2f[_0xf883[69]]));if(_0x340bx19[_0xf883[68]][_0xf883[80]]){_0x340bx23[_0xf883[78]]= _[_0xf883[83]](_0x340bx23[_0xf883[78]],{$or:_[_0xf883[82]](_0x340bx23[_0xf883[71]],function(_0x340bx30){var _0x340bx31={};_0x340bx31[_0x340bx30]= {$like:_0xf883[81]+ _0x340bx19[_0xf883[68]][_0xf883[80]]+ _0xf883[81]};return _0x340bx31})})};_0x340bx23= _[_0xf883[83]]({},_0x340bx23,_0x340bx19[_0xf883[84]]);return _0x340bx33[_0xf883[95]](_0x340bx23)}})[_0xf883[36]](function(_0x340bx35){if(_0x340bx35){_0x340bx24= _0x340bx35[_0xf883[73]];if(!_0x340bx19[_0xf883[68]][_0xf883[75]](_0xf883[74])){_0x340bx23[_0xf883[47]]= qs[_0xf883[47]](_0x340bx19[_0xf883[68]][_0xf883[47]]);_0x340bx23[_0xf883[46]]= qs[_0xf883[46]](_0x340bx19[_0xf883[68]][_0xf883[46]])};return _0x340bx33[_0xf883[95]](_0x340bx23)}})[_0xf883[36]](function(_0x340bx34){return _0x340bx34?{count:_0x340bx24,rows:_0x340bx34}:null})[_0xf883[36]](respondWithResult(_0x340bx20,null,_0xf883[95]))[_0xf883[27]](handleError(_0x340bx20,null,_0xf883[95]))};exports[_0xf883[96]]= function(_0x340bx19,_0x340bx20,_0x340bx32){var _0x340bx23={};var _0x340bx2f={};var _0x340bx33;var _0x340bx24;return db[_0xf883[66]][_0xf883[94]]({where:{id:_0x340bx19[_0xf883[88]][_0xf883[87]]}})[_0xf883[36]](handleEntityNotFound(_0x340bx20,null,_0xf883[96]))[_0xf883[36]](function(_0x340bx20){if(_0x340bx20){_0x340bx33= _0x340bx20;_0x340bx2f[_0xf883[64]]= _[_0xf883[67]](db[_0xf883[93]][_0xf883[65]]);_0x340bx2f[_0xf883[68]]= _[_0xf883[67]](_0x340bx19[_0xf883[68]]);_0x340bx2f[_0xf883[69]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],_0x340bx2f[_0xf883[68]]);_0x340bx23[_0xf883[71]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],qs[_0xf883[72]](_0x340bx19[_0xf883[68]][_0xf883[72]]));_0x340bx23[_0xf883[71]]= (_0x340bx23[_0xf883[71]][_0xf883[73]])?_0x340bx23[_0xf883[71]]:_0x340bx2f[_0xf883[64]];_0x340bx23[_0xf883[76]]= qs[_0xf883[77]](_0x340bx19[_0xf883[68]][_0xf883[77]]);_0x340bx23[_0xf883[78]]= qs[_0xf883[69]](_[_0xf883[79]](_0x340bx19[_0xf883[68]],_0x340bx2f[_0xf883[69]]));if(_0x340bx19[_0xf883[68]][_0xf883[80]]){_0x340bx23[_0xf883[78]]= _[_0xf883[83]](_0x340bx23[_0xf883[78]],{$or:_[_0xf883[82]](_0x340bx23[_0xf883[71]],function(_0x340bx30){var _0x340bx31={};_0x340bx31[_0x340bx30]= {$like:_0xf883[81]+ _0x340bx19[_0xf883[68]][_0xf883[80]]+ _0xf883[81]};return _0x340bx31})})};_0x340bx23= _[_0xf883[83]]({},_0x340bx23,_0x340bx19[_0xf883[84]]);return _0x340bx33[_0xf883[96]](_0x340bx23)}})[_0xf883[36]](function(_0x340bx35){if(_0x340bx35){_0x340bx24= _0x340bx35[_0xf883[73]];if(!_0x340bx19[_0xf883[68]][_0xf883[75]](_0xf883[74])){_0x340bx23[_0xf883[47]]= qs[_0xf883[47]](_0x340bx19[_0xf883[68]][_0xf883[47]]);_0x340bx23[_0xf883[46]]= qs[_0xf883[46]](_0x340bx19[_0xf883[68]][_0xf883[46]])};return _0x340bx33[_0xf883[96]](_0x340bx23)}})[_0xf883[36]](function(_0x340bx34){return _0x340bx34?{count:_0x340bx24,rows:_0x340bx34}:null})[_0xf883[36]](respondWithResult(_0x340bx20,null,_0xf883[96]))[_0xf883[27]](handleError(_0x340bx20,null,_0xf883[96]))};exports[_0xf883[97]]= function(_0x340bx19,_0x340bx20,_0x340bx32){var _0x340bx23={};var _0x340bx2f={};var _0x340bx33;var _0x340bx24;return db[_0xf883[66]][_0xf883[94]]({where:{id:_0x340bx19[_0xf883[88]][_0xf883[87]]}})[_0xf883[36]](handleEntityNotFound(_0x340bx20,null,_0xf883[97]))[_0xf883[36]](function(_0x340bx20){if(_0x340bx20){_0x340bx33= _0x340bx20;_0x340bx2f[_0xf883[64]]= _[_0xf883[67]](db[_0xf883[98]][_0xf883[65]]);_0x340bx2f[_0xf883[68]]= _[_0xf883[67]](_0x340bx19[_0xf883[68]]);_0x340bx2f[_0xf883[69]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],_0x340bx2f[_0xf883[68]]);_0x340bx23[_0xf883[71]]= _[_0xf883[70]](_0x340bx2f[_0xf883[64]],qs[_0xf883[72]](_0x340bx19[_0xf883[68]][_0xf883[72]]));_0x340bx23[_0xf883[71]]= (_0x340bx23[_0xf883[71]][_0xf883[73]])?_0x340bx23[_0xf883[71]]:_0x340bx2f[_0xf883[64]];_0x340bx23[_0xf883[76]]= qs[_0xf883[77]](_0x340bx19[_0xf883[68]][_0xf883[77]]);_0x340bx23[_0xf883[78]]= qs[_0xf883[69]](_[_0xf883[79]](_0x340bx19[_0xf883[68]],_0x340bx2f[_0xf883[69]]));if(_0x340bx19[_0xf883[68]][_0xf883[80]]){_0x340bx23[_0xf883[78]]= _[_0xf883[83]](_0x340bx23[_0xf883[78]],{$or:_[_0xf883[82]](_0x340bx23[_0xf883[71]],function(_0x340bx30){var _0x340bx31={};_0x340bx31[_0x340bx30]= {$like:_0xf883[81]+ _0x340bx19[_0xf883[68]][_0xf883[80]]+ _0xf883[81]};return _0x340bx31})})};_0x340bx23= _[_0xf883[83]]({},_0x340bx23,_0x340bx19[_0xf883[84]]);return _0x340bx33[_0xf883[97]](_0x340bx23)}})[_0xf883[36]](function(_0x340bx35){if(_0x340bx35){_0x340bx24= _0x340bx35[_0xf883[73]];if(!_0x340bx19[_0xf883[68]][_0xf883[75]](_0xf883[74])){_0x340bx23[_0xf883[47]]= qs[_0xf883[47]](_0x340bx19[_0xf883[68]][_0xf883[47]]);_0x340bx23[_0xf883[46]]= qs[_0xf883[46]](_0x340bx19[_0xf883[68]][_0xf883[46]])};return _0x340bx33[_0xf883[97]](_0x340bx23)}})[_0xf883[36]](function(_0x340bx34){return _0x340bx34?{count:_0x340bx24,rows:_0x340bx34}:null})[_0xf883[36]](respondWithResult(_0x340bx20,null,_0xf883[97]))[_0xf883[27]](handleError(_0x340bx20,null,_0xf883[97]))};exports[_0xf883[99]]= function(_0x340bx19,_0x340bx1d,_0x340bx32){if(_0x340bx19[_0xf883[91]][_0xf883[87]]){delete _0x340bx19[_0xf883[91]][_0xf883[87]]};return db[_0xf883[66]][_0xf883[94]]({where:{id:_0x340bx19[_0xf883[88]][_0xf883[87]]}})[_0xf883[36]](handleEntityNotFound(_0x340bx1d,null,_0xf883[99]))[_0xf883[36]](function(_0x340bx20){if(_0x340bx20){return _0x340bx20[_0xf883[99]](_0x340bx19[_0xf883[91]][_0xf883[100]])};return null})[_0xf883[36]](respondWithResult(_0x340bx1d,null,_0xf883[99]))[_0xf883[27]](handleError(_0x340bx1d,null,_0xf883[99]))}
\ No newline at end of file
index b3a1880..5b014da 100644 (file)
@@ -1 +1 @@
-var _0x1167=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x5F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x1167[0];var _=require(_0x1167[1]);var util=require(_0x1167[2]);var logger=require(_0x1167[4])(_0x1167[3]);var attributes=require(_0x1167[5]);module[_0x1167[6]]= function(_0x51dfx5,_0x51dfx6){return _0x51dfx5[_0x1167[9]](_0x1167[7],attributes,{tableName:_0x1167[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa7d4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x5F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xa7d4[0];var _=require(_0xa7d4[1]);var util=require(_0xa7d4[2]);var logger=require(_0xa7d4[4])(_0xa7d4[3]);var attributes=require(_0xa7d4[5]);module[_0xa7d4[6]]= function(_0xf934x5,_0xf934x6){return _0xf934x5[_0xa7d4[9]](_0xa7d4[7],attributes,{tableName:_0xa7d4[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 3f80533..d515895 100644 (file)
@@ -1 +1 @@
-var _0xd236=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd236[0];var _=require(_0xd236[1]);var util=require(_0xd236[2]);var moment=require(_0xd236[3]);var BPromise=require(_0xd236[4]);var db=require(_0xd236[6])[_0xd236[5]];var utils=require(_0xd236[7]);var logger=require(_0xd236[9])(_0xd236[8]);var jayson=require(_0xd236[10]);var client=jayson[_0xd236[12]][_0xd236[11]]({port:9002});function respondWithRpcPromise(_0xf50dxb,_0xf50dxc,_0xf50dxd){return  new BPromise(function(_0xf50dxe,_0xf50dxf){return client[_0xd236[25]](_0xf50dxb,_0xf50dxd)[_0xd236[24]](function(_0xf50dx11){logger[_0xd236[17]](_0xd236[13],_0xf50dxc,_0xd236[16]);logger[_0xd236[20]](_0xd236[18],_0xf50dxc,_0xd236[16],JSON[_0xd236[19]](_0xf50dx11));if(_0xf50dx11[_0xd236[14]]){if(_0xf50dx11[_0xd236[14]][_0xd236[21]]=== 500){logger[_0xd236[14]](_0xd236[13],_0xf50dxc,_0xf50dx11[_0xd236[14]][_0xd236[22]]);return _0xf50dxf(_0xf50dx11[_0xd236[14]][_0xd236[22]])};logger[_0xd236[14]](_0xd236[13],_0xf50dxc,_0xf50dx11[_0xd236[14]][_0xd236[22]]);return _0xf50dxe(_0xf50dx11[_0xd236[14]][_0xd236[22]])}else {logger[_0xd236[17]](_0xd236[13],_0xf50dxc,_0xd236[16]);_0xf50dxe(_0xf50dx11[_0xd236[23]][_0xd236[22]])}})[_0xd236[15]](function(_0xf50dx10){logger[_0xd236[14]](_0xd236[13],_0xf50dxc,_0xf50dx10);_0xf50dxf(_0xf50dx10)})})}
\ No newline at end of file
+var _0x9ba5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9ba5[0];var _=require(_0x9ba5[1]);var util=require(_0x9ba5[2]);var moment=require(_0x9ba5[3]);var BPromise=require(_0x9ba5[4]);var db=require(_0x9ba5[6])[_0x9ba5[5]];var utils=require(_0x9ba5[7]);var logger=require(_0x9ba5[9])(_0x9ba5[8]);var jayson=require(_0x9ba5[10]);var client=jayson[_0x9ba5[12]][_0x9ba5[11]]({port:9002});function respondWithRpcPromise(_0xe047xb,_0xe047xc,_0xe047xd){return  new BPromise(function(_0xe047xe,_0xe047xf){return client[_0x9ba5[25]](_0xe047xb,_0xe047xd)[_0x9ba5[24]](function(_0xe047x11){logger[_0x9ba5[17]](_0x9ba5[13],_0xe047xc,_0x9ba5[16]);logger[_0x9ba5[20]](_0x9ba5[18],_0xe047xc,_0x9ba5[16],JSON[_0x9ba5[19]](_0xe047x11));if(_0xe047x11[_0x9ba5[14]]){if(_0xe047x11[_0x9ba5[14]][_0x9ba5[21]]=== 500){logger[_0x9ba5[14]](_0x9ba5[13],_0xe047xc,_0xe047x11[_0x9ba5[14]][_0x9ba5[22]]);return _0xe047xf(_0xe047x11[_0x9ba5[14]][_0x9ba5[22]])};logger[_0x9ba5[14]](_0x9ba5[13],_0xe047xc,_0xe047x11[_0x9ba5[14]][_0x9ba5[22]]);return _0xe047xe(_0xe047x11[_0x9ba5[14]][_0x9ba5[22]])}else {logger[_0x9ba5[17]](_0x9ba5[13],_0xe047xc,_0x9ba5[16]);_0xe047xe(_0xe047x11[_0x9ba5[23]][_0x9ba5[22]])}})[_0x9ba5[15]](function(_0xe047x10){logger[_0x9ba5[14]](_0x9ba5[13],_0xe047xc,_0xe047x10);_0xe047xf(_0xe047x10)})})}
\ No newline at end of file
index fa0f853..0f72e3f 100644 (file)
@@ -1 +1 @@
-var _0xddc0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xddc0[0];var multer=require(_0xddc0[1]);var util=require(_0xddc0[2]);var path=require(_0xddc0[3]);var express=require(_0xddc0[4]);var router=express.Router();var auth=require(_0xddc0[5]);var config=require(_0xddc0[6]);var controller=require(_0xddc0[7]);router[_0xddc0[11]](_0xddc0[8],auth[_0xddc0[9]](),controller[_0xddc0[10]]);router[_0xddc0[11]](_0xddc0[12],auth[_0xddc0[9]](),controller[_0xddc0[13]]);router[_0xddc0[15]](_0xddc0[8],auth[_0xddc0[9]](),controller[_0xddc0[14]]);router[_0xddc0[17]](_0xddc0[12],auth[_0xddc0[9]](),controller[_0xddc0[16]]);router[_0xddc0[19]](_0xddc0[12],auth[_0xddc0[9]](),controller[_0xddc0[18]]);module[_0xddc0[20]]= router
\ No newline at end of file
+var _0xa0e9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa0e9[0];var multer=require(_0xa0e9[1]);var util=require(_0xa0e9[2]);var path=require(_0xa0e9[3]);var express=require(_0xa0e9[4]);var router=express.Router();var auth=require(_0xa0e9[5]);var config=require(_0xa0e9[6]);var controller=require(_0xa0e9[7]);router[_0xa0e9[11]](_0xa0e9[8],auth[_0xa0e9[9]](),controller[_0xa0e9[10]]);router[_0xa0e9[11]](_0xa0e9[12],auth[_0xa0e9[9]](),controller[_0xa0e9[13]]);router[_0xa0e9[15]](_0xa0e9[8],auth[_0xa0e9[9]](),controller[_0xa0e9[14]]);router[_0xa0e9[17]](_0xa0e9[12],auth[_0xa0e9[9]](),controller[_0xa0e9[16]]);router[_0xa0e9[19]](_0xa0e9[12],auth[_0xa0e9[9]](),controller[_0xa0e9[18]]);module[_0xa0e9[20]]= router
\ No newline at end of file
index 46e9181..6640a60 100644 (file)
@@ -1 +1 @@
-var _0x82a9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x75\x73\x74\x6F\x6D\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x82a9[0];var Sequelize=require(_0x82a9[1]);module[_0x82a9[2]]= {type:{type:Sequelize.ENUM(_0x82a9[3],_0x82a9[4],_0x82a9[5],_0x82a9[6]),defaultValue:_0x82a9[3]},content:{type:Sequelize[_0x82a9[7]]},key:{type:Sequelize[_0x82a9[7]]},keyType:{type:Sequelize.ENUM(_0x82a9[3],_0x82a9[4],_0x82a9[5])},keyContent:{type:Sequelize[_0x82a9[7]]},idField:{type:Sequelize[_0x82a9[7]]},nameField:{type:Sequelize[_0x82a9[7]]},customField:{type:Sequelize[_0x82a9[8]],defaultValue:true},variableName:{type:Sequelize[_0x82a9[7]]}}
\ No newline at end of file
+var _0xdb71=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x75\x73\x74\x6F\x6D\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xdb71[0];var Sequelize=require(_0xdb71[1]);module[_0xdb71[2]]= {type:{type:Sequelize.ENUM(_0xdb71[3],_0xdb71[4],_0xdb71[5],_0xdb71[6]),defaultValue:_0xdb71[3]},content:{type:Sequelize[_0xdb71[7]]},key:{type:Sequelize[_0xdb71[7]]},keyType:{type:Sequelize.ENUM(_0xdb71[3],_0xdb71[4],_0xdb71[5])},keyContent:{type:Sequelize[_0xdb71[7]]},idField:{type:Sequelize[_0xdb71[7]]},nameField:{type:Sequelize[_0xdb71[7]]},customField:{type:Sequelize[_0xdb71[8]],defaultValue:true},variableName:{type:Sequelize[_0xdb71[7]]}}
\ No newline at end of file
index 71c6a48..db60c7d 100644 (file)
@@ -1 +1 @@
-var _0x9cf8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x9cf8[0];var jsonpatch=require(_0x9cf8[1]);var rp=require(_0x9cf8[2]);var moment=require(_0x9cf8[3]);var BPromise=require(_0x9cf8[4]);var util=require(_0x9cf8[5]);var path=require(_0x9cf8[6]);var sox=require(_0x9cf8[7]);var ejs=require(_0x9cf8[8]);var fs=require(_0x9cf8[9]);var _=require(_0x9cf8[10]);var squel=require(_0x9cf8[11]);var crypto=require(_0x9cf8[12]);var jsforce=require(_0x9cf8[13]);var toCsv=require(_0x9cf8[14]);var qs=require(_0x9cf8[15]);var logger=require(_0x9cf8[17])(_0x9cf8[16]);var utils=require(_0x9cf8[18]);var config=require(_0x9cf8[19]);var db=require(_0x9cf8[21])[_0x9cf8[20]];function respondWithStatusCode(_0x69a5x15,_0x69a5x16,_0x69a5x17){_0x69a5x16= _0x69a5x16|| 204;return function(_0x69a5x18){if(_0x69a5x18){logger[_0x9cf8[24]](_0x9cf8[22],_0x69a5x17,_0x69a5x16,_0x9cf8[23]);logger[_0x9cf8[26]](_0x9cf8[25],_0x69a5x17,_0x69a5x16,_0x9cf8[23]);return _0x69a5x15[_0x9cf8[27]](_0x69a5x16)};return _0x69a5x15[_0x9cf8[29]](304)[_0x9cf8[28]]()}}function respondWithResult(_0x69a5x15,_0x69a5x16,_0x69a5x17){_0x69a5x16= _0x69a5x16|| 200;return function(_0x69a5x18){if(_0x69a5x18){logger[_0x9cf8[24]](_0x9cf8[22],_0x69a5x17,_0x69a5x16,_0x9cf8[30]);logger[_0x9cf8[26]](_0x9cf8[25],_0x69a5x17,_0x69a5x16,_0x9cf8[30],JSON[_0x9cf8[31]](_0x69a5x18));return _0x69a5x15[_0x9cf8[29]](_0x69a5x16)[_0x9cf8[32]](_0x69a5x18)};return _0x69a5x15[_0x9cf8[29]](304)[_0x9cf8[28]]()}}function respondWithFilteredResult(_0x69a5x15,_0x69a5x1b,_0x69a5x17){return function(_0x69a5x18){if(_0x69a5x18){var _0x69a5x1c=_0x69a5x18[_0x9cf8[33]],_0x69a5x1d=_0x69a5x1b[_0x9cf8[34]],_0x69a5x1e=_0x69a5x1b[_0x9cf8[34]]+ _0x69a5x1b[_0x9cf8[35]],_0x69a5x16;if(_0x69a5x1e>= _0x69a5x1c){_0x69a5x1e= _0x69a5x1c;_0x69a5x16= 200}else {_0x69a5x16= 206};_0x69a5x15[_0x9cf8[29]](_0x69a5x16);logger[_0x9cf8[24]](_0x9cf8[22],_0x69a5x17,_0x69a5x16,_0x9cf8[36]);logger[_0x9cf8[26]](_0x9cf8[25],_0x69a5x17,_0x69a5x16,_0x9cf8[30],JSON[_0x9cf8[31]](_0x69a5x18));return _0x69a5x15[_0x9cf8[40]](_0x9cf8[37],_0x69a5x1d+ _0x9cf8[38]+ _0x69a5x1e+ _0x9cf8[39]+ _0x69a5x1c)[_0x9cf8[32]](_0x69a5x18)};return null}}function patchUpdates(_0x69a5x20){return function(_0x69a5x18){try{jsonpatch[_0x9cf8[41]](_0x69a5x18,_0x69a5x20,true)}catch(err){return BPromise[_0x9cf8[42]](err)};return _0x69a5x18[_0x9cf8[43]]()}}function saveUpdates(_0x69a5x22,_0x69a5x16,_0x69a5x17){return function(_0x69a5x18){if(_0x69a5x18){return _0x69a5x18[_0x9cf8[46]](_0x69a5x22)[_0x9cf8[45]](function(_0x69a5x23){logger[_0x9cf8[24]](_0x9cf8[22],_0x69a5x17,_0x69a5x16,_0x9cf8[44]);logger[_0x9cf8[26]](_0x9cf8[25],_0x69a5x17,_0x69a5x16,_0x9cf8[44],JSON[_0x9cf8[31]](_0x69a5x18));return _0x69a5x23})};return null}}function removeEntity(_0x69a5x15,_0x69a5x16,_0x69a5x17){return function(_0x69a5x18){if(_0x69a5x18){return _0x69a5x18[_0x9cf8[48]]()[_0x9cf8[45]](function(){logger[_0x9cf8[24]](_0x9cf8[22],_0x69a5x17,_0x69a5x16,_0x9cf8[47]);logger[_0x9cf8[26]](_0x9cf8[25],_0x69a5x17,_0x69a5x16,_0x9cf8[47],JSON[_0x9cf8[31]](_0x69a5x18));_0x69a5x15[_0x9cf8[29]](204)[_0x9cf8[28]]()})}}}function handleEntityNotFound(_0x69a5x15,_0x69a5x16,_0x69a5x17){return function(_0x69a5x18){if(!_0x69a5x18){logger[_0x9cf8[50]](_0x9cf8[22],_0x69a5x17,404,_0x9cf8[49]);_0x69a5x15[_0x9cf8[29]](404)[_0x9cf8[28]]();return null};return _0x69a5x18}}function handleError(_0x69a5x15,_0x69a5x16,_0x69a5x17){_0x69a5x16= _0x69a5x16|| 500;return function(_0x69a5x27){logger[_0x9cf8[50]](_0x9cf8[22],_0x69a5x17,_0x69a5x16,JSON[_0x9cf8[31]](_0x69a5x27));delete _0x69a5x27[_0x9cf8[51]];_0x69a5x15[_0x9cf8[29]](_0x69a5x16)[_0x9cf8[52]](_0x69a5x27)}}exports[_0x9cf8[53]]= function(_0x69a5x28,_0x69a5x15){var _0x69a5x1b={},_0x69a5x29={};_0x69a5x29[_0x9cf8[54]]= _[_0x9cf8[57]](db[_0x9cf8[56]][_0x9cf8[55]]);_0x69a5x29[_0x9cf8[58]]= _[_0x9cf8[57]](_0x69a5x28[_0x9cf8[58]]);_0x69a5x29[_0x9cf8[59]]= _[_0x9cf8[60]](_0x69a5x29[_0x9cf8[54]],_0x69a5x29[_0x9cf8[58]]);_0x69a5x1b[_0x9cf8[61]]= _[_0x9cf8[60]](_0x69a5x29[_0x9cf8[54]],qs[_0x9cf8[62]](_0x69a5x28[_0x9cf8[58]][_0x9cf8[62]]));_0x69a5x1b[_0x9cf8[61]]= (_0x69a5x1b[_0x9cf8[61]][_0x9cf8[63]])?_0x69a5x1b[_0x9cf8[61]]:_0x69a5x29[_0x9cf8[54]];if(!_0x69a5x28[_0x9cf8[58]][_0x9cf8[65]](_0x9cf8[64])){_0x69a5x1b[_0x9cf8[35]]= qs[_0x9cf8[35]](_0x69a5x28[_0x9cf8[58]][_0x9cf8[35]]);_0x69a5x1b[_0x9cf8[34]]= qs[_0x9cf8[34]](_0x69a5x28[_0x9cf8[58]][_0x9cf8[34]])};_0x69a5x1b[_0x9cf8[66]]= qs[_0x9cf8[67]](_0x69a5x28[_0x9cf8[58]][_0x9cf8[67]]);_0x69a5x1b[_0x9cf8[68]]= qs[_0x9cf8[59]](_[_0x9cf8[69]](_0x69a5x28[_0x9cf8[58]],_0x69a5x29[_0x9cf8[59]]));if(_0x69a5x28[_0x9cf8[58]][_0x9cf8[70]]){_0x69a5x1b[_0x9cf8[68]]= _[_0x9cf8[73]](_0x69a5x1b[_0x9cf8[68]],{$or:_[_0x9cf8[72]](_0x69a5x1b[_0x9cf8[61]],function(_0x69a5x2a){var _0x69a5x2b={};_0x69a5x2b[_0x69a5x2a]= {$like:_0x9cf8[71]+ _0x69a5x28[_0x9cf8[58]][_0x9cf8[70]]+ _0x9cf8[71]};return _0x69a5x2b})})};_0x69a5x1b= _[_0x9cf8[73]]({},_0x69a5x1b,_0x69a5x28[_0x9cf8[74]]);return db[_0x9cf8[56]][_0x9cf8[76]](_0x69a5x1b)[_0x9cf8[45]](respondWithFilteredResult(_0x69a5x15,_0x69a5x1b,_0x9cf8[53]))[_0x9cf8[75]](handleError(_0x69a5x15,null,_0x9cf8[53]))};exports[_0x9cf8[77]]= function(_0x69a5x28,_0x69a5x15){var _0x69a5x1b={raw:true,where:{id:_0x69a5x28[_0x9cf8[79]][_0x9cf8[78]]}},_0x69a5x29={};_0x69a5x29[_0x9cf8[54]]= _[_0x9cf8[57]](db[_0x9cf8[56]][_0x9cf8[55]]);_0x69a5x29[_0x9cf8[58]]= _[_0x9cf8[57]](_0x69a5x28[_0x9cf8[58]]);_0x69a5x29[_0x9cf8[59]]= _[_0x9cf8[60]](_0x69a5x29[_0x9cf8[54]],_0x69a5x29[_0x9cf8[58]]);_0x69a5x1b[_0x9cf8[61]]= _[_0x9cf8[60]](_0x69a5x29[_0x9cf8[54]],qs[_0x9cf8[62]](_0x69a5x28[_0x9cf8[58]][_0x9cf8[62]]));_0x69a5x1b[_0x9cf8[61]]= (_0x69a5x1b[_0x9cf8[61]][_0x9cf8[63]])?_0x69a5x1b[_0x9cf8[61]]:_0x69a5x29[_0x9cf8[54]];_0x69a5x1b= _[_0x9cf8[73]]({},_0x69a5x1b,_0x69a5x28[_0x9cf8[74]]);return db[_0x9cf8[56]][_0x9cf8[80]](_0x69a5x1b)[_0x9cf8[45]](handleEntityNotFound(_0x69a5x15,null,_0x9cf8[77]))[_0x9cf8[45]](respondWithResult(_0x69a5x15,null,_0x9cf8[77]))[_0x9cf8[75]](handleError(_0x69a5x15,null,_0x9cf8[77]))};exports[_0x9cf8[81]]= function(_0x69a5x28,_0x69a5x15){return db[_0x9cf8[56]][_0x9cf8[81]](_0x69a5x28[_0x9cf8[82]],{})[_0x9cf8[45]](respondWithResult(_0x69a5x15,201,_0x9cf8[81]))[_0x9cf8[75]](handleError(_0x69a5x15,null,_0x9cf8[81]))};exports[_0x9cf8[46]]= function(_0x69a5x28,_0x69a5x15){if(_0x69a5x28[_0x9cf8[82]][_0x9cf8[78]]){delete _0x69a5x28[_0x9cf8[82]][_0x9cf8[78]]};return db[_0x9cf8[56]][_0x9cf8[80]]({where:{id:_0x69a5x28[_0x9cf8[79]][_0x9cf8[78]]}})[_0x9cf8[45]](handleEntityNotFound(_0x69a5x15,null,_0x9cf8[46]))[_0x9cf8[45]](saveUpdates(_0x69a5x28[_0x9cf8[82]],null,_0x9cf8[46]))[_0x9cf8[45]](respondWithResult(_0x69a5x15,null,_0x9cf8[46]))[_0x9cf8[75]](handleError(_0x69a5x15,null,_0x9cf8[46]))};exports[_0x9cf8[48]]= function(_0x69a5x28,_0x69a5x15){return db[_0x9cf8[56]][_0x9cf8[80]]({where:{id:_0x69a5x28[_0x9cf8[79]][_0x9cf8[78]]}})[_0x9cf8[45]](handleEntityNotFound(_0x69a5x15,null,_0x9cf8[48]))[_0x9cf8[45]](removeEntity(_0x69a5x15,null,_0x9cf8[48]))[_0x9cf8[75]](handleError(_0x69a5x15,null,_0x9cf8[48]))}
\ No newline at end of file
+var _0x14c8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x14c8[0];var jsonpatch=require(_0x14c8[1]);var rp=require(_0x14c8[2]);var moment=require(_0x14c8[3]);var BPromise=require(_0x14c8[4]);var util=require(_0x14c8[5]);var path=require(_0x14c8[6]);var sox=require(_0x14c8[7]);var ejs=require(_0x14c8[8]);var fs=require(_0x14c8[9]);var _=require(_0x14c8[10]);var squel=require(_0x14c8[11]);var crypto=require(_0x14c8[12]);var jsforce=require(_0x14c8[13]);var toCsv=require(_0x14c8[14]);var qs=require(_0x14c8[15]);var logger=require(_0x14c8[17])(_0x14c8[16]);var utils=require(_0x14c8[18]);var config=require(_0x14c8[19]);var db=require(_0x14c8[21])[_0x14c8[20]];function respondWithStatusCode(_0x84fbx15,_0x84fbx16,_0x84fbx17){_0x84fbx16= _0x84fbx16|| 204;return function(_0x84fbx18){if(_0x84fbx18){logger[_0x14c8[24]](_0x14c8[22],_0x84fbx17,_0x84fbx16,_0x14c8[23]);logger[_0x14c8[26]](_0x14c8[25],_0x84fbx17,_0x84fbx16,_0x14c8[23]);return _0x84fbx15[_0x14c8[27]](_0x84fbx16)};return _0x84fbx15[_0x14c8[29]](304)[_0x14c8[28]]()}}function respondWithResult(_0x84fbx15,_0x84fbx16,_0x84fbx17){_0x84fbx16= _0x84fbx16|| 200;return function(_0x84fbx18){if(_0x84fbx18){logger[_0x14c8[24]](_0x14c8[22],_0x84fbx17,_0x84fbx16,_0x14c8[30]);logger[_0x14c8[26]](_0x14c8[25],_0x84fbx17,_0x84fbx16,_0x14c8[30],JSON[_0x14c8[31]](_0x84fbx18));return _0x84fbx15[_0x14c8[29]](_0x84fbx16)[_0x14c8[32]](_0x84fbx18)};return _0x84fbx15[_0x14c8[29]](304)[_0x14c8[28]]()}}function respondWithFilteredResult(_0x84fbx15,_0x84fbx1b,_0x84fbx17){return function(_0x84fbx18){if(_0x84fbx18){var _0x84fbx1c=_0x84fbx18[_0x14c8[33]],_0x84fbx1d=_0x84fbx1b[_0x14c8[34]],_0x84fbx1e=_0x84fbx1b[_0x14c8[34]]+ _0x84fbx1b[_0x14c8[35]],_0x84fbx16;if(_0x84fbx1e>= _0x84fbx1c){_0x84fbx1e= _0x84fbx1c;_0x84fbx16= 200}else {_0x84fbx16= 206};_0x84fbx15[_0x14c8[29]](_0x84fbx16);logger[_0x14c8[24]](_0x14c8[22],_0x84fbx17,_0x84fbx16,_0x14c8[36]);logger[_0x14c8[26]](_0x14c8[25],_0x84fbx17,_0x84fbx16,_0x14c8[30],JSON[_0x14c8[31]](_0x84fbx18));return _0x84fbx15[_0x14c8[40]](_0x14c8[37],_0x84fbx1d+ _0x14c8[38]+ _0x84fbx1e+ _0x14c8[39]+ _0x84fbx1c)[_0x14c8[32]](_0x84fbx18)};return null}}function patchUpdates(_0x84fbx20){return function(_0x84fbx18){try{jsonpatch[_0x14c8[41]](_0x84fbx18,_0x84fbx20,true)}catch(err){return BPromise[_0x14c8[42]](err)};return _0x84fbx18[_0x14c8[43]]()}}function saveUpdates(_0x84fbx22,_0x84fbx16,_0x84fbx17){return function(_0x84fbx18){if(_0x84fbx18){return _0x84fbx18[_0x14c8[46]](_0x84fbx22)[_0x14c8[45]](function(_0x84fbx23){logger[_0x14c8[24]](_0x14c8[22],_0x84fbx17,_0x84fbx16,_0x14c8[44]);logger[_0x14c8[26]](_0x14c8[25],_0x84fbx17,_0x84fbx16,_0x14c8[44],JSON[_0x14c8[31]](_0x84fbx18));return _0x84fbx23})};return null}}function removeEntity(_0x84fbx15,_0x84fbx16,_0x84fbx17){return function(_0x84fbx18){if(_0x84fbx18){return _0x84fbx18[_0x14c8[48]]()[_0x14c8[45]](function(){logger[_0x14c8[24]](_0x14c8[22],_0x84fbx17,_0x84fbx16,_0x14c8[47]);logger[_0x14c8[26]](_0x14c8[25],_0x84fbx17,_0x84fbx16,_0x14c8[47],JSON[_0x14c8[31]](_0x84fbx18));_0x84fbx15[_0x14c8[29]](204)[_0x14c8[28]]()})}}}function handleEntityNotFound(_0x84fbx15,_0x84fbx16,_0x84fbx17){return function(_0x84fbx18){if(!_0x84fbx18){logger[_0x14c8[50]](_0x14c8[22],_0x84fbx17,404,_0x14c8[49]);_0x84fbx15[_0x14c8[29]](404)[_0x14c8[28]]();return null};return _0x84fbx18}}function handleError(_0x84fbx15,_0x84fbx16,_0x84fbx17){_0x84fbx16= _0x84fbx16|| 500;return function(_0x84fbx27){logger[_0x14c8[50]](_0x14c8[22],_0x84fbx17,_0x84fbx16,JSON[_0x14c8[31]](_0x84fbx27));delete _0x84fbx27[_0x14c8[51]];_0x84fbx15[_0x14c8[29]](_0x84fbx16)[_0x14c8[52]](_0x84fbx27)}}exports[_0x14c8[53]]= function(_0x84fbx28,_0x84fbx15){var _0x84fbx1b={},_0x84fbx29={};_0x84fbx29[_0x14c8[54]]= _[_0x14c8[57]](db[_0x14c8[56]][_0x14c8[55]]);_0x84fbx29[_0x14c8[58]]= _[_0x14c8[57]](_0x84fbx28[_0x14c8[58]]);_0x84fbx29[_0x14c8[59]]= _[_0x14c8[60]](_0x84fbx29[_0x14c8[54]],_0x84fbx29[_0x14c8[58]]);_0x84fbx1b[_0x14c8[61]]= _[_0x14c8[60]](_0x84fbx29[_0x14c8[54]],qs[_0x14c8[62]](_0x84fbx28[_0x14c8[58]][_0x14c8[62]]));_0x84fbx1b[_0x14c8[61]]= (_0x84fbx1b[_0x14c8[61]][_0x14c8[63]])?_0x84fbx1b[_0x14c8[61]]:_0x84fbx29[_0x14c8[54]];if(!_0x84fbx28[_0x14c8[58]][_0x14c8[65]](_0x14c8[64])){_0x84fbx1b[_0x14c8[35]]= qs[_0x14c8[35]](_0x84fbx28[_0x14c8[58]][_0x14c8[35]]);_0x84fbx1b[_0x14c8[34]]= qs[_0x14c8[34]](_0x84fbx28[_0x14c8[58]][_0x14c8[34]])};_0x84fbx1b[_0x14c8[66]]= qs[_0x14c8[67]](_0x84fbx28[_0x14c8[58]][_0x14c8[67]]);_0x84fbx1b[_0x14c8[68]]= qs[_0x14c8[59]](_[_0x14c8[69]](_0x84fbx28[_0x14c8[58]],_0x84fbx29[_0x14c8[59]]));if(_0x84fbx28[_0x14c8[58]][_0x14c8[70]]){_0x84fbx1b[_0x14c8[68]]= _[_0x14c8[73]](_0x84fbx1b[_0x14c8[68]],{$or:_[_0x14c8[72]](_0x84fbx1b[_0x14c8[61]],function(_0x84fbx2a){var _0x84fbx2b={};_0x84fbx2b[_0x84fbx2a]= {$like:_0x14c8[71]+ _0x84fbx28[_0x14c8[58]][_0x14c8[70]]+ _0x14c8[71]};return _0x84fbx2b})})};_0x84fbx1b= _[_0x14c8[73]]({},_0x84fbx1b,_0x84fbx28[_0x14c8[74]]);return db[_0x14c8[56]][_0x14c8[76]](_0x84fbx1b)[_0x14c8[45]](respondWithFilteredResult(_0x84fbx15,_0x84fbx1b,_0x14c8[53]))[_0x14c8[75]](handleError(_0x84fbx15,null,_0x14c8[53]))};exports[_0x14c8[77]]= function(_0x84fbx28,_0x84fbx15){var _0x84fbx1b={raw:true,where:{id:_0x84fbx28[_0x14c8[79]][_0x14c8[78]]}},_0x84fbx29={};_0x84fbx29[_0x14c8[54]]= _[_0x14c8[57]](db[_0x14c8[56]][_0x14c8[55]]);_0x84fbx29[_0x14c8[58]]= _[_0x14c8[57]](_0x84fbx28[_0x14c8[58]]);_0x84fbx29[_0x14c8[59]]= _[_0x14c8[60]](_0x84fbx29[_0x14c8[54]],_0x84fbx29[_0x14c8[58]]);_0x84fbx1b[_0x14c8[61]]= _[_0x14c8[60]](_0x84fbx29[_0x14c8[54]],qs[_0x14c8[62]](_0x84fbx28[_0x14c8[58]][_0x14c8[62]]));_0x84fbx1b[_0x14c8[61]]= (_0x84fbx1b[_0x14c8[61]][_0x14c8[63]])?_0x84fbx1b[_0x14c8[61]]:_0x84fbx29[_0x14c8[54]];_0x84fbx1b= _[_0x14c8[73]]({},_0x84fbx1b,_0x84fbx28[_0x14c8[74]]);return db[_0x14c8[56]][_0x14c8[80]](_0x84fbx1b)[_0x14c8[45]](handleEntityNotFound(_0x84fbx15,null,_0x14c8[77]))[_0x14c8[45]](respondWithResult(_0x84fbx15,null,_0x14c8[77]))[_0x14c8[75]](handleError(_0x84fbx15,null,_0x14c8[77]))};exports[_0x14c8[81]]= function(_0x84fbx28,_0x84fbx15){return db[_0x14c8[56]][_0x14c8[81]](_0x84fbx28[_0x14c8[82]],{})[_0x14c8[45]](respondWithResult(_0x84fbx15,201,_0x14c8[81]))[_0x14c8[75]](handleError(_0x84fbx15,null,_0x14c8[81]))};exports[_0x14c8[46]]= function(_0x84fbx28,_0x84fbx15){if(_0x84fbx28[_0x14c8[82]][_0x14c8[78]]){delete _0x84fbx28[_0x14c8[82]][_0x14c8[78]]};return db[_0x14c8[56]][_0x14c8[80]]({where:{id:_0x84fbx28[_0x14c8[79]][_0x14c8[78]]}})[_0x14c8[45]](handleEntityNotFound(_0x84fbx15,null,_0x14c8[46]))[_0x14c8[45]](saveUpdates(_0x84fbx28[_0x14c8[82]],null,_0x14c8[46]))[_0x14c8[45]](respondWithResult(_0x84fbx15,null,_0x14c8[46]))[_0x14c8[75]](handleError(_0x84fbx15,null,_0x14c8[46]))};exports[_0x14c8[48]]= function(_0x84fbx28,_0x84fbx15){return db[_0x14c8[56]][_0x14c8[80]]({where:{id:_0x84fbx28[_0x14c8[79]][_0x14c8[78]]}})[_0x14c8[45]](handleEntityNotFound(_0x84fbx15,null,_0x14c8[48]))[_0x14c8[45]](removeEntity(_0x84fbx15,null,_0x14c8[48]))[_0x14c8[75]](handleError(_0x84fbx15,null,_0x14c8[48]))}
\ No newline at end of file
index f5de1f4..6e5d09c 100644 (file)
@@ -1 +1 @@
-var _0x9daf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x69\x6E\x74\x5F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x9daf[0];var _=require(_0x9daf[1]);var util=require(_0x9daf[2]);var logger=require(_0x9daf[4])(_0x9daf[3]);var attributes=require(_0x9daf[5]);module[_0x9daf[6]]= function(_0x5466x5,_0x5466x6){return _0x5466x5[_0x9daf[9]](_0x9daf[7],attributes,{tableName:_0x9daf[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x99d4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x69\x6E\x74\x5F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x99d4[0];var _=require(_0x99d4[1]);var util=require(_0x99d4[2]);var logger=require(_0x99d4[4])(_0x99d4[3]);var attributes=require(_0x99d4[5]);module[_0x99d4[6]]= function(_0x4e9ex5,_0x4e9ex6){return _0x4e9ex5[_0x99d4[9]](_0x99d4[7],attributes,{tableName:_0x99d4[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 1dbfa02..7c95dba 100644 (file)
@@ -1 +1 @@
-var _0x25a7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x25a7[0];var _=require(_0x25a7[1]);var util=require(_0x25a7[2]);var moment=require(_0x25a7[3]);var BPromise=require(_0x25a7[4]);var db=require(_0x25a7[6])[_0x25a7[5]];var utils=require(_0x25a7[7]);var logger=require(_0x25a7[9])(_0x25a7[8]);var jayson=require(_0x25a7[10]);var client=jayson[_0x25a7[12]][_0x25a7[11]]({port:9002});function respondWithRpcPromise(_0xab35xb,_0xab35xc,_0xab35xd){return  new BPromise(function(_0xab35xe,_0xab35xf){return client[_0x25a7[25]](_0xab35xb,_0xab35xd)[_0x25a7[24]](function(_0xab35x11){logger[_0x25a7[17]](_0x25a7[13],_0xab35xc,_0x25a7[16]);logger[_0x25a7[20]](_0x25a7[18],_0xab35xc,_0x25a7[16],JSON[_0x25a7[19]](_0xab35x11));if(_0xab35x11[_0x25a7[14]]){if(_0xab35x11[_0x25a7[14]][_0x25a7[21]]=== 500){logger[_0x25a7[14]](_0x25a7[13],_0xab35xc,_0xab35x11[_0x25a7[14]][_0x25a7[22]]);return _0xab35xf(_0xab35x11[_0x25a7[14]][_0x25a7[22]])};logger[_0x25a7[14]](_0x25a7[13],_0xab35xc,_0xab35x11[_0x25a7[14]][_0x25a7[22]]);return _0xab35xe(_0xab35x11[_0x25a7[14]][_0x25a7[22]])}else {logger[_0x25a7[17]](_0x25a7[13],_0xab35xc,_0x25a7[16]);_0xab35xe(_0xab35x11[_0x25a7[23]][_0x25a7[22]])}})[_0x25a7[15]](function(_0xab35x10){logger[_0x25a7[14]](_0x25a7[13],_0xab35xc,_0xab35x10);_0xab35xf(_0xab35x10)})})}
\ No newline at end of file
+var _0xdf23=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xdf23[0];var _=require(_0xdf23[1]);var util=require(_0xdf23[2]);var moment=require(_0xdf23[3]);var BPromise=require(_0xdf23[4]);var db=require(_0xdf23[6])[_0xdf23[5]];var utils=require(_0xdf23[7]);var logger=require(_0xdf23[9])(_0xdf23[8]);var jayson=require(_0xdf23[10]);var client=jayson[_0xdf23[12]][_0xdf23[11]]({port:9002});function respondWithRpcPromise(_0xabf5xb,_0xabf5xc,_0xabf5xd){return  new BPromise(function(_0xabf5xe,_0xabf5xf){return client[_0xdf23[25]](_0xabf5xb,_0xabf5xd)[_0xdf23[24]](function(_0xabf5x11){logger[_0xdf23[17]](_0xdf23[13],_0xabf5xc,_0xdf23[16]);logger[_0xdf23[20]](_0xdf23[18],_0xabf5xc,_0xdf23[16],JSON[_0xdf23[19]](_0xabf5x11));if(_0xabf5x11[_0xdf23[14]]){if(_0xabf5x11[_0xdf23[14]][_0xdf23[21]]=== 500){logger[_0xdf23[14]](_0xdf23[13],_0xabf5xc,_0xabf5x11[_0xdf23[14]][_0xdf23[22]]);return _0xabf5xf(_0xabf5x11[_0xdf23[14]][_0xdf23[22]])};logger[_0xdf23[14]](_0xdf23[13],_0xabf5xc,_0xabf5x11[_0xdf23[14]][_0xdf23[22]]);return _0xabf5xe(_0xabf5x11[_0xdf23[14]][_0xdf23[22]])}else {logger[_0xdf23[17]](_0xdf23[13],_0xabf5xc,_0xdf23[16]);_0xabf5xe(_0xabf5x11[_0xdf23[23]][_0xdf23[22]])}})[_0xdf23[15]](function(_0xabf5x10){logger[_0xdf23[14]](_0xdf23[13],_0xabf5xc,_0xabf5x10);_0xabf5xf(_0xabf5x10)})})}
\ No newline at end of file
index 6b2674d..929b6c1 100644 (file)
@@ -1 +1 @@
-var _0xd797=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd797[0];var multer=require(_0xd797[1]);var util=require(_0xd797[2]);var path=require(_0xd797[3]);var express=require(_0xd797[4]);var router=express.Router();var auth=require(_0xd797[5]);var config=require(_0xd797[6]);var controller=require(_0xd797[7]);router[_0xd797[11]](_0xd797[8],auth[_0xd797[9]](),controller[_0xd797[10]]);router[_0xd797[11]](_0xd797[12],auth[_0xd797[9]](),controller[_0xd797[13]]);router[_0xd797[11]](_0xd797[14],auth[_0xd797[9]](),controller[_0xd797[15]]);router[_0xd797[11]](_0xd797[16],auth[_0xd797[9]](),controller[_0xd797[17]]);router[_0xd797[19]](_0xd797[8],auth[_0xd797[9]](),controller[_0xd797[18]]);router[_0xd797[19]](_0xd797[14],auth[_0xd797[9]](),controller[_0xd797[20]]);router[_0xd797[22]](_0xd797[12],auth[_0xd797[9]](),controller[_0xd797[21]]);router[_0xd797[24]](_0xd797[12],auth[_0xd797[9]](),controller[_0xd797[23]]);module[_0xd797[25]]= router
\ No newline at end of file
+var _0xf3be=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf3be[0];var multer=require(_0xf3be[1]);var util=require(_0xf3be[2]);var path=require(_0xf3be[3]);var express=require(_0xf3be[4]);var router=express.Router();var auth=require(_0xf3be[5]);var config=require(_0xf3be[6]);var controller=require(_0xf3be[7]);router[_0xf3be[11]](_0xf3be[8],auth[_0xf3be[9]](),controller[_0xf3be[10]]);router[_0xf3be[11]](_0xf3be[12],auth[_0xf3be[9]](),controller[_0xf3be[13]]);router[_0xf3be[11]](_0xf3be[14],auth[_0xf3be[9]](),controller[_0xf3be[15]]);router[_0xf3be[11]](_0xf3be[16],auth[_0xf3be[9]](),controller[_0xf3be[17]]);router[_0xf3be[19]](_0xf3be[8],auth[_0xf3be[9]](),controller[_0xf3be[18]]);router[_0xf3be[19]](_0xf3be[14],auth[_0xf3be[9]](),controller[_0xf3be[20]]);router[_0xf3be[22]](_0xf3be[12],auth[_0xf3be[9]](),controller[_0xf3be[21]]);router[_0xf3be[24]](_0xf3be[12],auth[_0xf3be[9]](),controller[_0xf3be[23]]);module[_0xf3be[25]]= router
\ No newline at end of file
index 58a07d3..05d3f8c 100644 (file)
@@ -1 +1 @@
-var _0x3289=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65"];_0x3289[0];var Sequelize=require(_0x3289[1]);module[_0x3289[2]]= {name:{type:Sequelize[_0x3289[3]]},description:{type:Sequelize[_0x3289[3]]},username:{type:Sequelize[_0x3289[3]],unique:_0x3289[4]},remoteUri:{type:Sequelize[_0x3289[3]]},password:{type:Sequelize[_0x3289[3]]},clientId:{type:Sequelize[_0x3289[3]]},clientSecret:{type:Sequelize[_0x3289[3]]},securityToken:{type:Sequelize[_0x3289[3]]},serverUrl:{type:Sequelize[_0x3289[3]]}}
\ No newline at end of file
+var _0x3d86=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65"];_0x3d86[0];var Sequelize=require(_0x3d86[1]);module[_0x3d86[2]]= {name:{type:Sequelize[_0x3d86[3]]},description:{type:Sequelize[_0x3d86[3]]},username:{type:Sequelize[_0x3d86[3]],unique:_0x3d86[4]},remoteUri:{type:Sequelize[_0x3d86[3]]},password:{type:Sequelize[_0x3d86[3]]},clientId:{type:Sequelize[_0x3d86[3]]},clientSecret:{type:Sequelize[_0x3d86[3]]},securityToken:{type:Sequelize[_0x3d86[3]]},serverUrl:{type:Sequelize[_0x3d86[3]]}}
\ No newline at end of file
index 2c2fb41..6a5d5e9 100644 (file)
@@ -1 +1 @@
-var _0xee15=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x79\x70\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x43\x61\x6C\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x43\x61\x6C\x6C\x44\x75\x72\x61\x74\x69\x6F\x6E\x49\x6E\x53\x65\x63\x6F\x6E\x64\x73","\x43\x61\x6C\x6C\x4F\x62\x6A\x65\x63\x74","\x43\x61\x6C\x6C\x54\x79\x70\x65","\x49\x73\x41\x72\x63\x68\x69\x76\x65\x64","\x50\x72\x69\x6F\x72\x69\x74\x79","\x53\x74\x61\x74\x75\x73","\x54\x79\x70\x65","\x63\x75\x73\x74\x6F\x6D","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x6C\x61\x62\x65\x6C","\x70\x69\x63\x6B\x6C\x69\x73\x74\x56\x61\x6C\x75\x65\x73","\x76\x61\x6C\x75\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x54\x61\x73\x6B","\x73\x6F\x62\x6A\x65\x63\x74","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x63\x6C\x69\x65\x6E\x74\x49\x64","\x63\x6C\x69\x65\x6E\x74\x53\x65\x63\x72\x65\x74","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x73\x65\x63\x75\x72\x69\x74\x79\x54\x6F\x6B\x65\x6E","\x63\x6F\x6E\x63\x61\x74","\x70\x61\x73\x73\x77\x6F\x72\x64","\x6C\x6F\x67\x69\x6E"];_0xee15[0];var jsonpatch=require(_0xee15[1]);var rp=require(_0xee15[2]);var moment=require(_0xee15[3]);var BPromise=require(_0xee15[4]);var util=require(_0xee15[5]);var path=require(_0xee15[6]);var sox=require(_0xee15[7]);var ejs=require(_0xee15[8]);var fs=require(_0xee15[9]);var _=require(_0xee15[10]);var squel=require(_0xee15[11]);var crypto=require(_0xee15[12]);var jsforce=require(_0xee15[13]);var toCsv=require(_0xee15[14]);var qs=require(_0xee15[15]);var logger=require(_0xee15[17])(_0xee15[16]);var utils=require(_0xee15[18]);var config=require(_0xee15[19]);var db=require(_0xee15[21])[_0xee15[20]];var integrations=require(_0xee15[22]);var jayson=require(_0xee15[23]);var client=jayson[_0xee15[25]][_0xee15[24]]({port:9002});function respondWithRpcPromise(_0x8d85x18,_0x8d85x19,_0x8d85x1a){return  new BPromise(function(_0x8d85x1b,_0x8d85x1c){return client[_0xee15[38]](_0x8d85x18,_0x8d85x1a)[_0xee15[37]](function(_0x8d85x1e){logger[_0xee15[30]](_0xee15[26],_0x8d85x19,_0xee15[29]);logger[_0xee15[33]](_0xee15[31],_0x8d85x19,_0xee15[29],JSON[_0xee15[32]](_0x8d85x1e));if(_0x8d85x1e[_0xee15[27]]){if(_0x8d85x1e[_0xee15[27]][_0xee15[34]]=== 500){logger[_0xee15[27]](_0xee15[26],_0x8d85x19,_0x8d85x1e[_0xee15[27]][_0xee15[35]]);return _0x8d85x1c(_0x8d85x1e[_0xee15[27]][_0xee15[35]])};logger[_0xee15[27]](_0xee15[26],_0x8d85x19,_0x8d85x1e[_0xee15[27]][_0xee15[35]]);return _0x8d85x1b(_0x8d85x1e[_0xee15[27]][_0xee15[35]])}else {logger[_0xee15[30]](_0xee15[26],_0x8d85x19,_0xee15[29]);_0x8d85x1b(_0x8d85x1e[_0xee15[36]][_0xee15[35]])}})[_0xee15[28]](function(_0x8d85x1d){logger[_0xee15[27]](_0xee15[26],_0x8d85x19,_0x8d85x1d);_0x8d85x1c(_0x8d85x1d)})})}function respondWithStatusCode(_0x8d85x1e,_0x8d85x20,_0x8d85x19){_0x8d85x20= _0x8d85x20|| 204;return function(_0x8d85x21){if(_0x8d85x21){logger[_0xee15[30]](_0xee15[31],_0x8d85x19,_0x8d85x20,_0xee15[39]);logger[_0xee15[33]](_0xee15[40],_0x8d85x19,_0x8d85x20,_0xee15[39]);return _0x8d85x1e[_0xee15[41]](_0x8d85x20)};return _0x8d85x1e[_0xee15[43]](304)[_0xee15[42]]()}}function respondWithResult(_0x8d85x1e,_0x8d85x20,_0x8d85x19){_0x8d85x20= _0x8d85x20|| 200;return function(_0x8d85x21){if(_0x8d85x21){logger[_0xee15[30]](_0xee15[31],_0x8d85x19,_0x8d85x20,_0xee15[44]);logger[_0xee15[33]](_0xee15[40],_0x8d85x19,_0x8d85x20,_0xee15[44],JSON[_0xee15[32]](_0x8d85x21));return _0x8d85x1e[_0xee15[43]](_0x8d85x20)[_0xee15[45]](_0x8d85x21)};return _0x8d85x1e[_0xee15[43]](304)[_0xee15[42]]()}}function respondWithFilteredResult(_0x8d85x1e,_0x8d85x24,_0x8d85x19){return function(_0x8d85x21){if(_0x8d85x21){var _0x8d85x25=_0x8d85x21[_0xee15[46]],_0x8d85x26=_0x8d85x24[_0xee15[47]],_0x8d85x27=_0x8d85x24[_0xee15[47]]+ _0x8d85x24[_0xee15[48]],_0x8d85x20;if(_0x8d85x27>= _0x8d85x25){_0x8d85x27= _0x8d85x25;_0x8d85x20= 200}else {_0x8d85x20= 206};_0x8d85x1e[_0xee15[43]](_0x8d85x20);logger[_0xee15[30]](_0xee15[31],_0x8d85x19,_0x8d85x20,_0xee15[49]);logger[_0xee15[33]](_0xee15[40],_0x8d85x19,_0x8d85x20,_0xee15[44],JSON[_0xee15[32]](_0x8d85x21));return _0x8d85x1e[_0xee15[53]](_0xee15[50],_0x8d85x26+ _0xee15[51]+ _0x8d85x27+ _0xee15[52]+ _0x8d85x25)[_0xee15[45]](_0x8d85x21)};return null}}function patchUpdates(_0x8d85x29){return function(_0x8d85x21){try{jsonpatch[_0xee15[54]](_0x8d85x21,_0x8d85x29,true)}catch(err){return BPromise[_0xee15[55]](err)};return _0x8d85x21[_0xee15[56]]()}}function saveUpdates(_0x8d85x2b,_0x8d85x20,_0x8d85x19){return function(_0x8d85x21){if(_0x8d85x21){return _0x8d85x21[_0xee15[58]](_0x8d85x2b)[_0xee15[37]](function(_0x8d85x2c){logger[_0xee15[30]](_0xee15[31],_0x8d85x19,_0x8d85x20,_0xee15[57]);logger[_0xee15[33]](_0xee15[40],_0x8d85x19,_0x8d85x20,_0xee15[57],JSON[_0xee15[32]](_0x8d85x21));return _0x8d85x2c})};return null}}function removeEntity(_0x8d85x1e,_0x8d85x20,_0x8d85x19){return function(_0x8d85x21){if(_0x8d85x21){return _0x8d85x21[_0xee15[60]]()[_0xee15[37]](function(){logger[_0xee15[30]](_0xee15[31],_0x8d85x19,_0x8d85x20,_0xee15[59]);logger[_0xee15[33]](_0xee15[40],_0x8d85x19,_0x8d85x20,_0xee15[59],JSON[_0xee15[32]](_0x8d85x21));_0x8d85x1e[_0xee15[43]](204)[_0xee15[42]]()})}}}function handleEntityNotFound(_0x8d85x1e,_0x8d85x20,_0x8d85x19){return function(_0x8d85x21){if(!_0x8d85x21){logger[_0xee15[27]](_0xee15[31],_0x8d85x19,404,_0xee15[61]);_0x8d85x1e[_0xee15[43]](404)[_0xee15[42]]();return null};return _0x8d85x21}}function handleError(_0x8d85x1e,_0x8d85x20,_0x8d85x19){_0x8d85x20= _0x8d85x20|| 500;return function(_0x8d85x1d){logger[_0xee15[27]](_0xee15[31],_0x8d85x19,_0x8d85x20,JSON[_0xee15[32]](_0x8d85x1d));delete _0x8d85x1d[_0xee15[62]];_0x8d85x1e[_0xee15[43]](_0x8d85x20)[_0xee15[63]](_0x8d85x1d)}}exports[_0xee15[64]]= function(_0x8d85x1a,_0x8d85x1e){var _0x8d85x24={},_0x8d85x30={};_0x8d85x30[_0xee15[65]]= _[_0xee15[68]](db[_0xee15[67]][_0xee15[66]]);_0x8d85x30[_0xee15[69]]= _[_0xee15[68]](_0x8d85x1a[_0xee15[69]]);_0x8d85x30[_0xee15[70]]= _[_0xee15[71]](_0x8d85x30[_0xee15[65]],_0x8d85x30[_0xee15[69]]);_0x8d85x24[_0xee15[72]]= _[_0xee15[71]](_0x8d85x30[_0xee15[65]],qs[_0xee15[73]](_0x8d85x1a[_0xee15[69]][_0xee15[73]]));_0x8d85x24[_0xee15[72]]= (_0x8d85x24[_0xee15[72]][_0xee15[74]])?_0x8d85x24[_0xee15[72]]:_0x8d85x30[_0xee15[65]];if(!_0x8d85x1a[_0xee15[69]][_0xee15[76]](_0xee15[75])){_0x8d85x24[_0xee15[48]]= qs[_0xee15[48]](_0x8d85x1a[_0xee15[69]][_0xee15[48]]);_0x8d85x24[_0xee15[47]]= qs[_0xee15[47]](_0x8d85x1a[_0xee15[69]][_0xee15[47]])};_0x8d85x24[_0xee15[77]]= qs[_0xee15[78]](_0x8d85x1a[_0xee15[69]][_0xee15[78]]);_0x8d85x24[_0xee15[79]]= qs[_0xee15[70]](_[_0xee15[80]](_0x8d85x1a[_0xee15[69]],_0x8d85x30[_0xee15[70]]));if(_0x8d85x1a[_0xee15[69]][_0xee15[81]]){_0x8d85x24[_0xee15[79]]= _[_0xee15[84]](_0x8d85x24[_0xee15[79]],{$or:_[_0xee15[83]](_0x8d85x24[_0xee15[72]],function(_0x8d85x31){var _0x8d85x32={};_0x8d85x32[_0x8d85x31]= {$like:_0xee15[82]+ _0x8d85x1a[_0xee15[69]][_0xee15[81]]+ _0xee15[82]};return _0x8d85x32})})};_0x8d85x24= _[_0xee15[84]]({},_0x8d85x24,_0x8d85x1a[_0xee15[85]]);return db[_0xee15[67]][_0xee15[86]](_0x8d85x24)[_0xee15[37]](respondWithFilteredResult(_0x8d85x1e,_0x8d85x24,_0xee15[64]))[_0xee15[28]](handleError(_0x8d85x1e,null,_0xee15[64]))};exports[_0xee15[87]]= function(_0x8d85x1a,_0x8d85x1e){var _0x8d85x24={raw:false,where:{id:_0x8d85x1a[_0xee15[89]][_0xee15[88]]}},_0x8d85x30={};_0x8d85x30[_0xee15[65]]= _[_0xee15[68]](db[_0xee15[67]][_0xee15[66]]);_0x8d85x30[_0xee15[69]]= _[_0xee15[68]](_0x8d85x1a[_0xee15[69]]);_0x8d85x30[_0xee15[70]]= _[_0xee15[71]](_0x8d85x30[_0xee15[65]],_0x8d85x30[_0xee15[69]]);_0x8d85x24[_0xee15[72]]= _[_0xee15[71]](_0x8d85x30[_0xee15[65]],qs[_0xee15[73]](_0x8d85x1a[_0xee15[69]][_0xee15[73]]));_0x8d85x24[_0xee15[72]]= (_0x8d85x24[_0xee15[72]][_0xee15[74]])?_0x8d85x24[_0xee15[72]]:_0x8d85x30[_0xee15[65]];_0x8d85x24= _[_0xee15[84]]({},_0x8d85x24,_0x8d85x1a[_0xee15[85]]);return db[_0xee15[67]][_0xee15[90]](_0x8d85x24)[_0xee15[37]](handleEntityNotFound(_0x8d85x1e,null,_0xee15[87]))[_0xee15[37]](respondWithResult(_0x8d85x1e,null,_0xee15[87]))[_0xee15[28]](handleError(_0x8d85x1e,null,_0xee15[87]))};exports[_0xee15[91]]= function(_0x8d85x1a,_0x8d85x1e){return db[_0xee15[67]][_0xee15[91]](_0x8d85x1a[_0xee15[92]],{})[_0xee15[37]](respondWithResult(_0x8d85x1e,201,_0xee15[91]))[_0xee15[28]](handleError(_0x8d85x1e,null,_0xee15[91]))};exports[_0xee15[58]]= function(_0x8d85x1a,_0x8d85x1e){if(_0x8d85x1a[_0xee15[92]][_0xee15[88]]){delete _0x8d85x1a[_0xee15[92]][_0xee15[88]]};return db[_0xee15[67]][_0xee15[90]]({where:{id:_0x8d85x1a[_0xee15[89]][_0xee15[88]]}})[_0xee15[37]](handleEntityNotFound(_0x8d85x1e,null,_0xee15[58]))[_0xee15[37]](saveUpdates(_0x8d85x1a[_0xee15[92]],null,_0xee15[58]))[_0xee15[37]](respondWithResult(_0x8d85x1e,null,_0xee15[58]))[_0xee15[28]](handleError(_0x8d85x1e,null,_0xee15[58]))};exports[_0xee15[60]]= function(_0x8d85x1a,_0x8d85x1e){return db[_0xee15[67]][_0xee15[90]]({where:{id:_0x8d85x1a[_0xee15[89]][_0xee15[88]]}})[_0xee15[37]](handleEntityNotFound(_0x8d85x1e,null,_0xee15[60]))[_0xee15[37]](removeEntity(_0x8d85x1e,null,_0xee15[60]))[_0xee15[28]](handleError(_0x8d85x1e,null,_0xee15[60]))};exports[_0xee15[93]]= function(_0x8d85x1a,_0x8d85x21,_0x8d85x33){var _0x8d85x24={};var _0x8d85x30={};var _0x8d85x34;var _0x8d85x25;return db[_0xee15[67]][_0xee15[95]]({where:{id:_0x8d85x1a[_0xee15[89]][_0xee15[88]]}})[_0xee15[37]](handleEntityNotFound(_0x8d85x21,null,_0xee15[93]))[_0xee15[37]](function(_0x8d85x21){if(_0x8d85x21){_0x8d85x34= _0x8d85x21;_0x8d85x30[_0xee15[65]]= _[_0xee15[68]](db[_0xee15[94]][_0xee15[66]]);_0x8d85x30[_0xee15[69]]= _[_0xee15[68]](_0x8d85x1a[_0xee15[69]]);_0x8d85x30[_0xee15[70]]= _[_0xee15[71]](_0x8d85x30[_0xee15[65]],_0x8d85x30[_0xee15[69]]);_0x8d85x24[_0xee15[72]]= _[_0xee15[71]](_0x8d85x30[_0xee15[65]],qs[_0xee15[73]](_0x8d85x1a[_0xee15[69]][_0xee15[73]]));_0x8d85x24[_0xee15[72]]= (_0x8d85x24[_0xee15[72]][_0xee15[74]])?_0x8d85x24[_0xee15[72]]:_0x8d85x30[_0xee15[65]];_0x8d85x24[_0xee15[77]]= qs[_0xee15[78]](_0x8d85x1a[_0xee15[69]][_0xee15[78]]);_0x8d85x24[_0xee15[79]]= qs[_0xee15[70]](_[_0xee15[80]](_0x8d85x1a[_0xee15[69]],_0x8d85x30[_0xee15[70]]));if(_0x8d85x1a[_0xee15[69]][_0xee15[81]]){_0x8d85x24[_0xee15[79]]= _[_0xee15[84]](_0x8d85x24[_0xee15[79]],{$or:_[_0xee15[83]](_0x8d85x24[_0xee15[72]],function(_0x8d85x31){var _0x8d85x32={};_0x8d85x32[_0x8d85x31]= {$like:_0xee15[82]+ _0x8d85x1a[_0xee15[69]][_0xee15[81]]+ _0xee15[82]};return _0x8d85x32})})};_0x8d85x24= _[_0xee15[84]]({},_0x8d85x24,_0x8d85x1a[_0xee15[85]]);return _0x8d85x34[_0xee15[93]](_0x8d85x24)}})[_0xee15[37]](function(_0x8d85x36){if(_0x8d85x36){_0x8d85x25= _0x8d85x36[_0xee15[74]];if(!_0x8d85x1a[_0xee15[69]][_0xee15[76]](_0xee15[75])){_0x8d85x24[_0xee15[48]]= qs[_0xee15[48]](_0x8d85x1a[_0xee15[69]][_0xee15[48]]);_0x8d85x24[_0xee15[47]]= qs[_0xee15[47]](_0x8d85x1a[_0xee15[69]][_0xee15[47]])};return _0x8d85x34[_0xee15[93]](_0x8d85x24)}})[_0xee15[37]](function(_0x8d85x35){return _0x8d85x35?{count:_0x8d85x25,rows:_0x8d85x35}:null})[_0xee15[37]](respondWithResult(_0x8d85x21,null,_0xee15[93]))[_0xee15[28]](handleError(_0x8d85x21,null,_0xee15[93]))};exports[_0xee15[96]]= function(_0x8d85x1a,_0x8d85x1e,_0x8d85x33){if(_0x8d85x1a[_0xee15[92]][_0xee15[88]]){delete _0x8d85x1a[_0xee15[92]][_0xee15[88]]};return db[_0xee15[67]][_0xee15[95]]({where:{id:_0x8d85x1a[_0xee15[89]][_0xee15[88]]}})[_0xee15[37]](handleEntityNotFound(_0x8d85x1e,null,_0xee15[96]))[_0xee15[37]](function(_0x8d85x21){if(_0x8d85x21){_0x8d85x1a[_0xee15[92]][_0xee15[97]]= _0x8d85x21[_0xee15[88]];_0x8d85x1a[_0xee15[92]][_0xee15[98]]= integrations[_0xee15[101]](_0x8d85x1a[_0xee15[92]][_0xee15[99]],_0x8d85x1a[_0xee15[92]][_0xee15[100]]);_0x8d85x1a[_0xee15[92]][_0xee15[102]]= integrations[_0xee15[103]](_0x8d85x1a[_0xee15[92]][_0xee15[99]],_0x8d85x1a[_0xee15[92]][_0xee15[100]]);return db[_0xee15[94]][_0xee15[91]](_0x8d85x1a[_0xee15[92]],{include:[{model:db[_0xee15[104]],as:_0xee15[98]},{model:db[_0xee15[104]],as:_0xee15[102]}]})};return null})[_0xee15[37]](respondWithResult(_0x8d85x1e,null,_0xee15[96]))[_0xee15[28]](handleError(_0x8d85x1e,null,_0xee15[96]))};exports[_0xee15[105]]= function(_0x8d85x1a,_0x8d85x1e,_0x8d85x33){var _0x8d85x37;return db[_0xee15[67]][_0xee15[95]]({where:{id:_0x8d85x1a[_0xee15[89]][_0xee15[88]]},attributes:[_0xee15[88],_0xee15[123],_0xee15[124],_0xee15[125],_0xee15[126],_0xee15[129],_0xee15[127]]})[_0xee15[37]](handleEntityNotFound(_0x8d85x1e,null,_0xee15[105]))[_0xee15[37]](function(_0x8d85x21){if(_0x8d85x21){_0x8d85x37=  new jsforce.Connection({oauth2:{loginUrl:_0x8d85x21[_0xee15[123]],clientId:_0x8d85x21[_0xee15[124]],clientSecret:_0x8d85x21[_0xee15[125]]}});return _0x8d85x37[_0xee15[130]](_0x8d85x21[_0xee15[126]],_0x8d85x21[_0xee15[129]][_0xee15[128]](_0x8d85x21[_0xee15[127]]))}})[_0xee15[37]](function(_0x8d85x21){if(_0x8d85x21){return _0x8d85x37[_0xee15[122]](_0xee15[121])[_0xee15[120]]()}})[_0xee15[37]](function(_0x8d85x21){var _0x8d85x38=[_0xee15[106],_0xee15[107],_0xee15[108],_0xee15[109],_0xee15[110],_0xee15[111],_0xee15[112],_0xee15[113]];if(_0x8d85x21){_[_0xee15[116]](_0x8d85x21[_0xee15[73]],function(_0x8d85x39){return (_0x8d85x39[_0xee15[114]]=== false&&  !_0x8d85x38[_0xee15[115]](_0x8d85x39[_0xee15[62]]))});return {count:_0x8d85x21[_0xee15[73]][_0xee15[74]],rows:_[_0xee15[83]](_0x8d85x21[_0xee15[73]],function(_0x8d85x39){return {id:_0x8d85x39[_0xee15[62]],name:_0x8d85x39[_0xee15[117]],custom:false,options:_0x8d85x39[_0xee15[118]]?_[_0xee15[83]](_0x8d85x39[_0xee15[118]],function(_0x8d85x31){return {name:_0x8d85x31[_0xee15[117]],value:_0x8d85x31[_0xee15[119]]}}):[]}})}}})[_0xee15[37]](respondWithResult(_0x8d85x1e,null,_0xee15[105]))[_0xee15[28]](handleError(_0x8d85x1e,null,_0xee15[105]))}
\ No newline at end of file
+var _0x3e8c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x79\x70\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x43\x61\x6C\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x43\x61\x6C\x6C\x44\x75\x72\x61\x74\x69\x6F\x6E\x49\x6E\x53\x65\x63\x6F\x6E\x64\x73","\x43\x61\x6C\x6C\x4F\x62\x6A\x65\x63\x74","\x43\x61\x6C\x6C\x54\x79\x70\x65","\x49\x73\x41\x72\x63\x68\x69\x76\x65\x64","\x50\x72\x69\x6F\x72\x69\x74\x79","\x53\x74\x61\x74\x75\x73","\x54\x79\x70\x65","\x63\x75\x73\x74\x6F\x6D","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x6C\x61\x62\x65\x6C","\x70\x69\x63\x6B\x6C\x69\x73\x74\x56\x61\x6C\x75\x65\x73","\x76\x61\x6C\x75\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x54\x61\x73\x6B","\x73\x6F\x62\x6A\x65\x63\x74","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x63\x6C\x69\x65\x6E\x74\x49\x64","\x63\x6C\x69\x65\x6E\x74\x53\x65\x63\x72\x65\x74","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x73\x65\x63\x75\x72\x69\x74\x79\x54\x6F\x6B\x65\x6E","\x63\x6F\x6E\x63\x61\x74","\x70\x61\x73\x73\x77\x6F\x72\x64","\x6C\x6F\x67\x69\x6E"];_0x3e8c[0];var jsonpatch=require(_0x3e8c[1]);var rp=require(_0x3e8c[2]);var moment=require(_0x3e8c[3]);var BPromise=require(_0x3e8c[4]);var util=require(_0x3e8c[5]);var path=require(_0x3e8c[6]);var sox=require(_0x3e8c[7]);var ejs=require(_0x3e8c[8]);var fs=require(_0x3e8c[9]);var _=require(_0x3e8c[10]);var squel=require(_0x3e8c[11]);var crypto=require(_0x3e8c[12]);var jsforce=require(_0x3e8c[13]);var toCsv=require(_0x3e8c[14]);var qs=require(_0x3e8c[15]);var logger=require(_0x3e8c[17])(_0x3e8c[16]);var utils=require(_0x3e8c[18]);var config=require(_0x3e8c[19]);var db=require(_0x3e8c[21])[_0x3e8c[20]];var integrations=require(_0x3e8c[22]);var jayson=require(_0x3e8c[23]);var client=jayson[_0x3e8c[25]][_0x3e8c[24]]({port:9002});function respondWithRpcPromise(_0x4363x18,_0x4363x19,_0x4363x1a){return  new BPromise(function(_0x4363x1b,_0x4363x1c){return client[_0x3e8c[38]](_0x4363x18,_0x4363x1a)[_0x3e8c[37]](function(_0x4363x1e){logger[_0x3e8c[30]](_0x3e8c[26],_0x4363x19,_0x3e8c[29]);logger[_0x3e8c[33]](_0x3e8c[31],_0x4363x19,_0x3e8c[29],JSON[_0x3e8c[32]](_0x4363x1e));if(_0x4363x1e[_0x3e8c[27]]){if(_0x4363x1e[_0x3e8c[27]][_0x3e8c[34]]=== 500){logger[_0x3e8c[27]](_0x3e8c[26],_0x4363x19,_0x4363x1e[_0x3e8c[27]][_0x3e8c[35]]);return _0x4363x1c(_0x4363x1e[_0x3e8c[27]][_0x3e8c[35]])};logger[_0x3e8c[27]](_0x3e8c[26],_0x4363x19,_0x4363x1e[_0x3e8c[27]][_0x3e8c[35]]);return _0x4363x1b(_0x4363x1e[_0x3e8c[27]][_0x3e8c[35]])}else {logger[_0x3e8c[30]](_0x3e8c[26],_0x4363x19,_0x3e8c[29]);_0x4363x1b(_0x4363x1e[_0x3e8c[36]][_0x3e8c[35]])}})[_0x3e8c[28]](function(_0x4363x1d){logger[_0x3e8c[27]](_0x3e8c[26],_0x4363x19,_0x4363x1d);_0x4363x1c(_0x4363x1d)})})}function respondWithStatusCode(_0x4363x1e,_0x4363x20,_0x4363x19){_0x4363x20= _0x4363x20|| 204;return function(_0x4363x21){if(_0x4363x21){logger[_0x3e8c[30]](_0x3e8c[31],_0x4363x19,_0x4363x20,_0x3e8c[39]);logger[_0x3e8c[33]](_0x3e8c[40],_0x4363x19,_0x4363x20,_0x3e8c[39]);return _0x4363x1e[_0x3e8c[41]](_0x4363x20)};return _0x4363x1e[_0x3e8c[43]](304)[_0x3e8c[42]]()}}function respondWithResult(_0x4363x1e,_0x4363x20,_0x4363x19){_0x4363x20= _0x4363x20|| 200;return function(_0x4363x21){if(_0x4363x21){logger[_0x3e8c[30]](_0x3e8c[31],_0x4363x19,_0x4363x20,_0x3e8c[44]);logger[_0x3e8c[33]](_0x3e8c[40],_0x4363x19,_0x4363x20,_0x3e8c[44],JSON[_0x3e8c[32]](_0x4363x21));return _0x4363x1e[_0x3e8c[43]](_0x4363x20)[_0x3e8c[45]](_0x4363x21)};return _0x4363x1e[_0x3e8c[43]](304)[_0x3e8c[42]]()}}function respondWithFilteredResult(_0x4363x1e,_0x4363x24,_0x4363x19){return function(_0x4363x21){if(_0x4363x21){var _0x4363x25=_0x4363x21[_0x3e8c[46]],_0x4363x26=_0x4363x24[_0x3e8c[47]],_0x4363x27=_0x4363x24[_0x3e8c[47]]+ _0x4363x24[_0x3e8c[48]],_0x4363x20;if(_0x4363x27>= _0x4363x25){_0x4363x27= _0x4363x25;_0x4363x20= 200}else {_0x4363x20= 206};_0x4363x1e[_0x3e8c[43]](_0x4363x20);logger[_0x3e8c[30]](_0x3e8c[31],_0x4363x19,_0x4363x20,_0x3e8c[49]);logger[_0x3e8c[33]](_0x3e8c[40],_0x4363x19,_0x4363x20,_0x3e8c[44],JSON[_0x3e8c[32]](_0x4363x21));return _0x4363x1e[_0x3e8c[53]](_0x3e8c[50],_0x4363x26+ _0x3e8c[51]+ _0x4363x27+ _0x3e8c[52]+ _0x4363x25)[_0x3e8c[45]](_0x4363x21)};return null}}function patchUpdates(_0x4363x29){return function(_0x4363x21){try{jsonpatch[_0x3e8c[54]](_0x4363x21,_0x4363x29,true)}catch(err){return BPromise[_0x3e8c[55]](err)};return _0x4363x21[_0x3e8c[56]]()}}function saveUpdates(_0x4363x2b,_0x4363x20,_0x4363x19){return function(_0x4363x21){if(_0x4363x21){return _0x4363x21[_0x3e8c[58]](_0x4363x2b)[_0x3e8c[37]](function(_0x4363x2c){logger[_0x3e8c[30]](_0x3e8c[31],_0x4363x19,_0x4363x20,_0x3e8c[57]);logger[_0x3e8c[33]](_0x3e8c[40],_0x4363x19,_0x4363x20,_0x3e8c[57],JSON[_0x3e8c[32]](_0x4363x21));return _0x4363x2c})};return null}}function removeEntity(_0x4363x1e,_0x4363x20,_0x4363x19){return function(_0x4363x21){if(_0x4363x21){return _0x4363x21[_0x3e8c[60]]()[_0x3e8c[37]](function(){logger[_0x3e8c[30]](_0x3e8c[31],_0x4363x19,_0x4363x20,_0x3e8c[59]);logger[_0x3e8c[33]](_0x3e8c[40],_0x4363x19,_0x4363x20,_0x3e8c[59],JSON[_0x3e8c[32]](_0x4363x21));_0x4363x1e[_0x3e8c[43]](204)[_0x3e8c[42]]()})}}}function handleEntityNotFound(_0x4363x1e,_0x4363x20,_0x4363x19){return function(_0x4363x21){if(!_0x4363x21){logger[_0x3e8c[27]](_0x3e8c[31],_0x4363x19,404,_0x3e8c[61]);_0x4363x1e[_0x3e8c[43]](404)[_0x3e8c[42]]();return null};return _0x4363x21}}function handleError(_0x4363x1e,_0x4363x20,_0x4363x19){_0x4363x20= _0x4363x20|| 500;return function(_0x4363x1d){logger[_0x3e8c[27]](_0x3e8c[31],_0x4363x19,_0x4363x20,JSON[_0x3e8c[32]](_0x4363x1d));delete _0x4363x1d[_0x3e8c[62]];_0x4363x1e[_0x3e8c[43]](_0x4363x20)[_0x3e8c[63]](_0x4363x1d)}}exports[_0x3e8c[64]]= function(_0x4363x1a,_0x4363x1e){var _0x4363x24={},_0x4363x30={};_0x4363x30[_0x3e8c[65]]= _[_0x3e8c[68]](db[_0x3e8c[67]][_0x3e8c[66]]);_0x4363x30[_0x3e8c[69]]= _[_0x3e8c[68]](_0x4363x1a[_0x3e8c[69]]);_0x4363x30[_0x3e8c[70]]= _[_0x3e8c[71]](_0x4363x30[_0x3e8c[65]],_0x4363x30[_0x3e8c[69]]);_0x4363x24[_0x3e8c[72]]= _[_0x3e8c[71]](_0x4363x30[_0x3e8c[65]],qs[_0x3e8c[73]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[73]]));_0x4363x24[_0x3e8c[72]]= (_0x4363x24[_0x3e8c[72]][_0x3e8c[74]])?_0x4363x24[_0x3e8c[72]]:_0x4363x30[_0x3e8c[65]];if(!_0x4363x1a[_0x3e8c[69]][_0x3e8c[76]](_0x3e8c[75])){_0x4363x24[_0x3e8c[48]]= qs[_0x3e8c[48]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[48]]);_0x4363x24[_0x3e8c[47]]= qs[_0x3e8c[47]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[47]])};_0x4363x24[_0x3e8c[77]]= qs[_0x3e8c[78]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[78]]);_0x4363x24[_0x3e8c[79]]= qs[_0x3e8c[70]](_[_0x3e8c[80]](_0x4363x1a[_0x3e8c[69]],_0x4363x30[_0x3e8c[70]]));if(_0x4363x1a[_0x3e8c[69]][_0x3e8c[81]]){_0x4363x24[_0x3e8c[79]]= _[_0x3e8c[84]](_0x4363x24[_0x3e8c[79]],{$or:_[_0x3e8c[83]](_0x4363x24[_0x3e8c[72]],function(_0x4363x31){var _0x4363x32={};_0x4363x32[_0x4363x31]= {$like:_0x3e8c[82]+ _0x4363x1a[_0x3e8c[69]][_0x3e8c[81]]+ _0x3e8c[82]};return _0x4363x32})})};_0x4363x24= _[_0x3e8c[84]]({},_0x4363x24,_0x4363x1a[_0x3e8c[85]]);return db[_0x3e8c[67]][_0x3e8c[86]](_0x4363x24)[_0x3e8c[37]](respondWithFilteredResult(_0x4363x1e,_0x4363x24,_0x3e8c[64]))[_0x3e8c[28]](handleError(_0x4363x1e,null,_0x3e8c[64]))};exports[_0x3e8c[87]]= function(_0x4363x1a,_0x4363x1e){var _0x4363x24={raw:false,where:{id:_0x4363x1a[_0x3e8c[89]][_0x3e8c[88]]}},_0x4363x30={};_0x4363x30[_0x3e8c[65]]= _[_0x3e8c[68]](db[_0x3e8c[67]][_0x3e8c[66]]);_0x4363x30[_0x3e8c[69]]= _[_0x3e8c[68]](_0x4363x1a[_0x3e8c[69]]);_0x4363x30[_0x3e8c[70]]= _[_0x3e8c[71]](_0x4363x30[_0x3e8c[65]],_0x4363x30[_0x3e8c[69]]);_0x4363x24[_0x3e8c[72]]= _[_0x3e8c[71]](_0x4363x30[_0x3e8c[65]],qs[_0x3e8c[73]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[73]]));_0x4363x24[_0x3e8c[72]]= (_0x4363x24[_0x3e8c[72]][_0x3e8c[74]])?_0x4363x24[_0x3e8c[72]]:_0x4363x30[_0x3e8c[65]];_0x4363x24= _[_0x3e8c[84]]({},_0x4363x24,_0x4363x1a[_0x3e8c[85]]);return db[_0x3e8c[67]][_0x3e8c[90]](_0x4363x24)[_0x3e8c[37]](handleEntityNotFound(_0x4363x1e,null,_0x3e8c[87]))[_0x3e8c[37]](respondWithResult(_0x4363x1e,null,_0x3e8c[87]))[_0x3e8c[28]](handleError(_0x4363x1e,null,_0x3e8c[87]))};exports[_0x3e8c[91]]= function(_0x4363x1a,_0x4363x1e){return db[_0x3e8c[67]][_0x3e8c[91]](_0x4363x1a[_0x3e8c[92]],{})[_0x3e8c[37]](respondWithResult(_0x4363x1e,201,_0x3e8c[91]))[_0x3e8c[28]](handleError(_0x4363x1e,null,_0x3e8c[91]))};exports[_0x3e8c[58]]= function(_0x4363x1a,_0x4363x1e){if(_0x4363x1a[_0x3e8c[92]][_0x3e8c[88]]){delete _0x4363x1a[_0x3e8c[92]][_0x3e8c[88]]};return db[_0x3e8c[67]][_0x3e8c[90]]({where:{id:_0x4363x1a[_0x3e8c[89]][_0x3e8c[88]]}})[_0x3e8c[37]](handleEntityNotFound(_0x4363x1e,null,_0x3e8c[58]))[_0x3e8c[37]](saveUpdates(_0x4363x1a[_0x3e8c[92]],null,_0x3e8c[58]))[_0x3e8c[37]](respondWithResult(_0x4363x1e,null,_0x3e8c[58]))[_0x3e8c[28]](handleError(_0x4363x1e,null,_0x3e8c[58]))};exports[_0x3e8c[60]]= function(_0x4363x1a,_0x4363x1e){return db[_0x3e8c[67]][_0x3e8c[90]]({where:{id:_0x4363x1a[_0x3e8c[89]][_0x3e8c[88]]}})[_0x3e8c[37]](handleEntityNotFound(_0x4363x1e,null,_0x3e8c[60]))[_0x3e8c[37]](removeEntity(_0x4363x1e,null,_0x3e8c[60]))[_0x3e8c[28]](handleError(_0x4363x1e,null,_0x3e8c[60]))};exports[_0x3e8c[93]]= function(_0x4363x1a,_0x4363x21,_0x4363x33){var _0x4363x24={};var _0x4363x30={};var _0x4363x34;var _0x4363x25;return db[_0x3e8c[67]][_0x3e8c[95]]({where:{id:_0x4363x1a[_0x3e8c[89]][_0x3e8c[88]]}})[_0x3e8c[37]](handleEntityNotFound(_0x4363x21,null,_0x3e8c[93]))[_0x3e8c[37]](function(_0x4363x21){if(_0x4363x21){_0x4363x34= _0x4363x21;_0x4363x30[_0x3e8c[65]]= _[_0x3e8c[68]](db[_0x3e8c[94]][_0x3e8c[66]]);_0x4363x30[_0x3e8c[69]]= _[_0x3e8c[68]](_0x4363x1a[_0x3e8c[69]]);_0x4363x30[_0x3e8c[70]]= _[_0x3e8c[71]](_0x4363x30[_0x3e8c[65]],_0x4363x30[_0x3e8c[69]]);_0x4363x24[_0x3e8c[72]]= _[_0x3e8c[71]](_0x4363x30[_0x3e8c[65]],qs[_0x3e8c[73]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[73]]));_0x4363x24[_0x3e8c[72]]= (_0x4363x24[_0x3e8c[72]][_0x3e8c[74]])?_0x4363x24[_0x3e8c[72]]:_0x4363x30[_0x3e8c[65]];_0x4363x24[_0x3e8c[77]]= qs[_0x3e8c[78]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[78]]);_0x4363x24[_0x3e8c[79]]= qs[_0x3e8c[70]](_[_0x3e8c[80]](_0x4363x1a[_0x3e8c[69]],_0x4363x30[_0x3e8c[70]]));if(_0x4363x1a[_0x3e8c[69]][_0x3e8c[81]]){_0x4363x24[_0x3e8c[79]]= _[_0x3e8c[84]](_0x4363x24[_0x3e8c[79]],{$or:_[_0x3e8c[83]](_0x4363x24[_0x3e8c[72]],function(_0x4363x31){var _0x4363x32={};_0x4363x32[_0x4363x31]= {$like:_0x3e8c[82]+ _0x4363x1a[_0x3e8c[69]][_0x3e8c[81]]+ _0x3e8c[82]};return _0x4363x32})})};_0x4363x24= _[_0x3e8c[84]]({},_0x4363x24,_0x4363x1a[_0x3e8c[85]]);return _0x4363x34[_0x3e8c[93]](_0x4363x24)}})[_0x3e8c[37]](function(_0x4363x36){if(_0x4363x36){_0x4363x25= _0x4363x36[_0x3e8c[74]];if(!_0x4363x1a[_0x3e8c[69]][_0x3e8c[76]](_0x3e8c[75])){_0x4363x24[_0x3e8c[48]]= qs[_0x3e8c[48]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[48]]);_0x4363x24[_0x3e8c[47]]= qs[_0x3e8c[47]](_0x4363x1a[_0x3e8c[69]][_0x3e8c[47]])};return _0x4363x34[_0x3e8c[93]](_0x4363x24)}})[_0x3e8c[37]](function(_0x4363x35){return _0x4363x35?{count:_0x4363x25,rows:_0x4363x35}:null})[_0x3e8c[37]](respondWithResult(_0x4363x21,null,_0x3e8c[93]))[_0x3e8c[28]](handleError(_0x4363x21,null,_0x3e8c[93]))};exports[_0x3e8c[96]]= function(_0x4363x1a,_0x4363x1e,_0x4363x33){if(_0x4363x1a[_0x3e8c[92]][_0x3e8c[88]]){delete _0x4363x1a[_0x3e8c[92]][_0x3e8c[88]]};return db[_0x3e8c[67]][_0x3e8c[95]]({where:{id:_0x4363x1a[_0x3e8c[89]][_0x3e8c[88]]}})[_0x3e8c[37]](handleEntityNotFound(_0x4363x1e,null,_0x3e8c[96]))[_0x3e8c[37]](function(_0x4363x21){if(_0x4363x21){_0x4363x1a[_0x3e8c[92]][_0x3e8c[97]]= _0x4363x21[_0x3e8c[88]];_0x4363x1a[_0x3e8c[92]][_0x3e8c[98]]= integrations[_0x3e8c[101]](_0x4363x1a[_0x3e8c[92]][_0x3e8c[99]],_0x4363x1a[_0x3e8c[92]][_0x3e8c[100]]);_0x4363x1a[_0x3e8c[92]][_0x3e8c[102]]= integrations[_0x3e8c[103]](_0x4363x1a[_0x3e8c[92]][_0x3e8c[99]],_0x4363x1a[_0x3e8c[92]][_0x3e8c[100]]);return db[_0x3e8c[94]][_0x3e8c[91]](_0x4363x1a[_0x3e8c[92]],{include:[{model:db[_0x3e8c[104]],as:_0x3e8c[98]},{model:db[_0x3e8c[104]],as:_0x3e8c[102]}]})};return null})[_0x3e8c[37]](respondWithResult(_0x4363x1e,null,_0x3e8c[96]))[_0x3e8c[28]](handleError(_0x4363x1e,null,_0x3e8c[96]))};exports[_0x3e8c[105]]= function(_0x4363x1a,_0x4363x1e,_0x4363x33){var _0x4363x37;return db[_0x3e8c[67]][_0x3e8c[95]]({where:{id:_0x4363x1a[_0x3e8c[89]][_0x3e8c[88]]},attributes:[_0x3e8c[88],_0x3e8c[123],_0x3e8c[124],_0x3e8c[125],_0x3e8c[126],_0x3e8c[129],_0x3e8c[127]]})[_0x3e8c[37]](handleEntityNotFound(_0x4363x1e,null,_0x3e8c[105]))[_0x3e8c[37]](function(_0x4363x21){if(_0x4363x21){_0x4363x37=  new jsforce.Connection({oauth2:{loginUrl:_0x4363x21[_0x3e8c[123]],clientId:_0x4363x21[_0x3e8c[124]],clientSecret:_0x4363x21[_0x3e8c[125]]}});return _0x4363x37[_0x3e8c[130]](_0x4363x21[_0x3e8c[126]],_0x4363x21[_0x3e8c[129]][_0x3e8c[128]](_0x4363x21[_0x3e8c[127]]))}})[_0x3e8c[37]](function(_0x4363x21){if(_0x4363x21){return _0x4363x37[_0x3e8c[122]](_0x3e8c[121])[_0x3e8c[120]]()}})[_0x3e8c[37]](function(_0x4363x21){var _0x4363x38=[_0x3e8c[106],_0x3e8c[107],_0x3e8c[108],_0x3e8c[109],_0x3e8c[110],_0x3e8c[111],_0x3e8c[112],_0x3e8c[113]];if(_0x4363x21){_[_0x3e8c[116]](_0x4363x21[_0x3e8c[73]],function(_0x4363x39){return (_0x4363x39[_0x3e8c[114]]=== false&&  !_0x4363x38[_0x3e8c[115]](_0x4363x39[_0x3e8c[62]]))});return {count:_0x4363x21[_0x3e8c[73]][_0x3e8c[74]],rows:_[_0x3e8c[83]](_0x4363x21[_0x3e8c[73]],function(_0x4363x39){return {id:_0x4363x39[_0x3e8c[62]],name:_0x4363x39[_0x3e8c[117]],custom:false,options:_0x4363x39[_0x3e8c[118]]?_[_0x3e8c[83]](_0x4363x39[_0x3e8c[118]],function(_0x4363x31){return {name:_0x4363x31[_0x3e8c[117]],value:_0x4363x31[_0x3e8c[119]]}}):[]}})}}})[_0x3e8c[37]](respondWithResult(_0x4363x1e,null,_0x3e8c[105]))[_0x3e8c[28]](handleError(_0x4363x1e,null,_0x3e8c[105]))}
\ No newline at end of file
index 9ac1a7f..0943c39 100644 (file)
@@ -1 +1 @@
-var _0x32f3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x69\x6E\x74\x5F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x32f3[0];var _=require(_0x32f3[1]);var util=require(_0x32f3[2]);var logger=require(_0x32f3[4])(_0x32f3[3]);var attributes=require(_0x32f3[5]);var integrations=require(_0x32f3[6]);module[_0x32f3[7]]= function(_0x6b2dx6,_0x6b2dx7){return _0x6b2dx6[_0x32f3[10]](_0x32f3[8],attributes,{tableName:_0x32f3[9],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x28c6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x69\x6E\x74\x5F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x28c6[0];var _=require(_0x28c6[1]);var util=require(_0x28c6[2]);var logger=require(_0x28c6[4])(_0x28c6[3]);var attributes=require(_0x28c6[5]);var integrations=require(_0x28c6[6]);module[_0x28c6[7]]= function(_0xe29dx6,_0xe29dx7){return _0xe29dx6[_0x28c6[10]](_0x28c6[8],attributes,{tableName:_0x28c6[9],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index e74178e..cdf525e 100644 (file)
@@ -1 +1 @@
-var _0x2337=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x53\x68\x6F\x77\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64"];_0x2337[0];var _=require(_0x2337[1]);var util=require(_0x2337[2]);var moment=require(_0x2337[3]);var BPromise=require(_0x2337[4]);var db=require(_0x2337[6])[_0x2337[5]];var utils=require(_0x2337[7]);var logger=require(_0x2337[9])(_0x2337[8]);var jayson=require(_0x2337[10]);var client=jayson[_0x2337[12]][_0x2337[11]]({port:9002});function respondWithRpcPromise(_0x966exb,_0x966exc,_0x966exd){return  new BPromise(function(_0x966exe,_0x966exf){return client[_0x2337[25]](_0x966exb,_0x966exd)[_0x2337[24]](function(_0x966ex11){logger[_0x2337[17]](_0x2337[13],_0x966exc,_0x2337[16]);logger[_0x2337[20]](_0x2337[18],_0x966exc,_0x2337[16],JSON[_0x2337[19]](_0x966ex11));if(_0x966ex11[_0x2337[14]]){if(_0x966ex11[_0x2337[14]][_0x2337[21]]=== 500){logger[_0x2337[14]](_0x2337[13],_0x966exc,_0x966ex11[_0x2337[14]][_0x2337[22]]);return _0x966exf(_0x966ex11[_0x2337[14]][_0x2337[22]])};logger[_0x2337[14]](_0x2337[13],_0x966exc,_0x966ex11[_0x2337[14]][_0x2337[22]]);return _0x966exe(_0x966ex11[_0x2337[14]][_0x2337[22]])}else {logger[_0x2337[17]](_0x2337[13],_0x966exc,_0x2337[16]);_0x966exe(_0x966ex11[_0x2337[23]][_0x2337[22]])}})[_0x2337[15]](function(_0x966ex10){logger[_0x2337[14]](_0x2337[13],_0x966exc,_0x966ex10);_0x966exf(_0x966ex10)})})}exports[_0x2337[26]]= function(_0x966exd){var _0x966ex12=this;return  new Promise(function(_0x966exe,_0x966exf){return db[_0x2337[37]][_0x2337[36]]({raw:_0x966exd[_0x2337[27]]?(_0x966exd[_0x2337[27]][_0x2337[28]]=== undefined)?true:false:true,where:_0x966exd[_0x2337[27]]?_0x966exd[_0x2337[27]][_0x2337[29]]|| null:null,attributes:_0x966exd[_0x2337[27]]?_0x966exd[_0x2337[27]][_0x2337[30]]|| null:null,limit:_0x966exd[_0x2337[27]]?_0x966exd[_0x2337[27]][_0x2337[31]]|| null:null,include:_0x966exd[_0x2337[27]]?(_0x966exd[_0x2337[27]][_0x2337[32]]?_[_0x2337[35]](_0x966exd[_0x2337[27]][_0x2337[32]],function(_0x966ex13){return {model:db[_0x966ex13[_0x2337[33]]],as:_0x966ex13[_0x2337[34]],attributes:_0x966ex13[_0x2337[30]],include:_0x966ex13[_0x2337[32]]?_[_0x2337[35]](_0x966ex13[_0x2337[32]],function(_0x966ex14){return {model:db[_0x966ex14[_0x2337[33]]],as:_0x966ex14[_0x2337[34]],attributes:_0x966ex14[_0x2337[30]],include:_0x966ex14[_0x2337[32]]?_[_0x2337[35]](_0x966ex14[_0x2337[32]],function(_0x966ex15){return {model:db[_0x966ex15[_0x2337[33]]],as:_0x966ex15[_0x2337[34]],attributes:_0x966ex15[_0x2337[30]]}}):[]}}):[]}}):[]):[]})[_0x2337[24]](function(_0x966ex11){logger[_0x2337[17]](_0x2337[26],_0x966exd);logger[_0x2337[20]](_0x2337[26],_0x966exd,JSON[_0x2337[19]](_0x966ex11));_0x966exe(_0x966ex11)})[_0x2337[15]](function(_0x966ex10){logger[_0x2337[14]](_0x2337[26],_0x966ex10[_0x2337[22]],_0x966exd);_0x966exf(_0x966ex12[_0x2337[14]](500,_0x966ex10[_0x2337[22]]))})})};exports[_0x2337[38]]= function(_0x966exd){var _0x966ex12=this;return  new Promise(function(_0x966exe,_0x966exf){return db[_0x2337[37]][_0x2337[39]]({raw:_0x966exd[_0x2337[27]]?(_0x966exd[_0x2337[27]][_0x2337[28]]=== undefined)?true:false:true,where:_0x966exd[_0x2337[27]]?_0x966exd[_0x2337[27]][_0x2337[29]]|| null:null,attributes:_0x966exd[_0x2337[27]]?_0x966exd[_0x2337[27]][_0x2337[30]]|| null:null,include:_0x966exd[_0x2337[27]]?(_0x966exd[_0x2337[27]][_0x2337[32]]?_[_0x2337[35]](_0x966exd[_0x2337[27]][_0x2337[32]],function(_0x966ex13){return {model:db[_0x966ex13[_0x2337[33]]],as:_0x966ex13[_0x2337[34]],attributes:_0x966ex13[_0x2337[30]],include:_0x966ex13[_0x2337[32]]?_[_0x2337[35]](_0x966ex13[_0x2337[32]],function(_0x966ex14){return {model:db[_0x966ex14[_0x2337[33]]],as:_0x966ex14[_0x2337[34]],attributes:_0x966ex14[_0x2337[30]],include:_0x966ex14[_0x2337[32]]?_[_0x2337[35]](_0x966ex14[_0x2337[32]],function(_0x966ex15){return {model:db[_0x966ex15[_0x2337[33]]],as:_0x966ex15[_0x2337[34]],attributes:_0x966ex15[_0x2337[30]]}}):[]}}):[]}}):[]):[]})[_0x2337[24]](function(_0x966ex11){logger[_0x2337[17]](_0x2337[38],_0x966exd);logger[_0x2337[20]](_0x2337[38],_0x966exd,JSON[_0x2337[19]](_0x966ex11));_0x966exe(_0x966ex11)})[_0x2337[15]](function(_0x966ex10){logger[_0x2337[14]](_0x2337[38],_0x966ex10[_0x2337[22]],_0x966exd);_0x966exf(_0x966ex12[_0x2337[14]](500,_0x966ex10[_0x2337[22]]))})})}
\ No newline at end of file
+var _0x7edd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x53\x68\x6F\x77\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64"];_0x7edd[0];var _=require(_0x7edd[1]);var util=require(_0x7edd[2]);var moment=require(_0x7edd[3]);var BPromise=require(_0x7edd[4]);var db=require(_0x7edd[6])[_0x7edd[5]];var utils=require(_0x7edd[7]);var logger=require(_0x7edd[9])(_0x7edd[8]);var jayson=require(_0x7edd[10]);var client=jayson[_0x7edd[12]][_0x7edd[11]]({port:9002});function respondWithRpcPromise(_0xfd30xb,_0xfd30xc,_0xfd30xd){return  new BPromise(function(_0xfd30xe,_0xfd30xf){return client[_0x7edd[25]](_0xfd30xb,_0xfd30xd)[_0x7edd[24]](function(_0xfd30x11){logger[_0x7edd[17]](_0x7edd[13],_0xfd30xc,_0x7edd[16]);logger[_0x7edd[20]](_0x7edd[18],_0xfd30xc,_0x7edd[16],JSON[_0x7edd[19]](_0xfd30x11));if(_0xfd30x11[_0x7edd[14]]){if(_0xfd30x11[_0x7edd[14]][_0x7edd[21]]=== 500){logger[_0x7edd[14]](_0x7edd[13],_0xfd30xc,_0xfd30x11[_0x7edd[14]][_0x7edd[22]]);return _0xfd30xf(_0xfd30x11[_0x7edd[14]][_0x7edd[22]])};logger[_0x7edd[14]](_0x7edd[13],_0xfd30xc,_0xfd30x11[_0x7edd[14]][_0x7edd[22]]);return _0xfd30xe(_0xfd30x11[_0x7edd[14]][_0x7edd[22]])}else {logger[_0x7edd[17]](_0x7edd[13],_0xfd30xc,_0x7edd[16]);_0xfd30xe(_0xfd30x11[_0x7edd[23]][_0x7edd[22]])}})[_0x7edd[15]](function(_0xfd30x10){logger[_0x7edd[14]](_0x7edd[13],_0xfd30xc,_0xfd30x10);_0xfd30xf(_0xfd30x10)})})}exports[_0x7edd[26]]= function(_0xfd30xd){var _0xfd30x12=this;return  new Promise(function(_0xfd30xe,_0xfd30xf){return db[_0x7edd[37]][_0x7edd[36]]({raw:_0xfd30xd[_0x7edd[27]]?(_0xfd30xd[_0x7edd[27]][_0x7edd[28]]=== undefined)?true:false:true,where:_0xfd30xd[_0x7edd[27]]?_0xfd30xd[_0x7edd[27]][_0x7edd[29]]|| null:null,attributes:_0xfd30xd[_0x7edd[27]]?_0xfd30xd[_0x7edd[27]][_0x7edd[30]]|| null:null,limit:_0xfd30xd[_0x7edd[27]]?_0xfd30xd[_0x7edd[27]][_0x7edd[31]]|| null:null,include:_0xfd30xd[_0x7edd[27]]?(_0xfd30xd[_0x7edd[27]][_0x7edd[32]]?_[_0x7edd[35]](_0xfd30xd[_0x7edd[27]][_0x7edd[32]],function(_0xfd30x13){return {model:db[_0xfd30x13[_0x7edd[33]]],as:_0xfd30x13[_0x7edd[34]],attributes:_0xfd30x13[_0x7edd[30]],include:_0xfd30x13[_0x7edd[32]]?_[_0x7edd[35]](_0xfd30x13[_0x7edd[32]],function(_0xfd30x14){return {model:db[_0xfd30x14[_0x7edd[33]]],as:_0xfd30x14[_0x7edd[34]],attributes:_0xfd30x14[_0x7edd[30]],include:_0xfd30x14[_0x7edd[32]]?_[_0x7edd[35]](_0xfd30x14[_0x7edd[32]],function(_0xfd30x15){return {model:db[_0xfd30x15[_0x7edd[33]]],as:_0xfd30x15[_0x7edd[34]],attributes:_0xfd30x15[_0x7edd[30]]}}):[]}}):[]}}):[]):[]})[_0x7edd[24]](function(_0xfd30x11){logger[_0x7edd[17]](_0x7edd[26],_0xfd30xd);logger[_0x7edd[20]](_0x7edd[26],_0xfd30xd,JSON[_0x7edd[19]](_0xfd30x11));_0xfd30xe(_0xfd30x11)})[_0x7edd[15]](function(_0xfd30x10){logger[_0x7edd[14]](_0x7edd[26],_0xfd30x10[_0x7edd[22]],_0xfd30xd);_0xfd30xf(_0xfd30x12[_0x7edd[14]](500,_0xfd30x10[_0x7edd[22]]))})})};exports[_0x7edd[38]]= function(_0xfd30xd){var _0xfd30x12=this;return  new Promise(function(_0xfd30xe,_0xfd30xf){return db[_0x7edd[37]][_0x7edd[39]]({raw:_0xfd30xd[_0x7edd[27]]?(_0xfd30xd[_0x7edd[27]][_0x7edd[28]]=== undefined)?true:false:true,where:_0xfd30xd[_0x7edd[27]]?_0xfd30xd[_0x7edd[27]][_0x7edd[29]]|| null:null,attributes:_0xfd30xd[_0x7edd[27]]?_0xfd30xd[_0x7edd[27]][_0x7edd[30]]|| null:null,include:_0xfd30xd[_0x7edd[27]]?(_0xfd30xd[_0x7edd[27]][_0x7edd[32]]?_[_0x7edd[35]](_0xfd30xd[_0x7edd[27]][_0x7edd[32]],function(_0xfd30x13){return {model:db[_0xfd30x13[_0x7edd[33]]],as:_0xfd30x13[_0x7edd[34]],attributes:_0xfd30x13[_0x7edd[30]],include:_0xfd30x13[_0x7edd[32]]?_[_0x7edd[35]](_0xfd30x13[_0x7edd[32]],function(_0xfd30x14){return {model:db[_0xfd30x14[_0x7edd[33]]],as:_0xfd30x14[_0x7edd[34]],attributes:_0xfd30x14[_0x7edd[30]],include:_0xfd30x14[_0x7edd[32]]?_[_0x7edd[35]](_0xfd30x14[_0x7edd[32]],function(_0xfd30x15){return {model:db[_0xfd30x15[_0x7edd[33]]],as:_0xfd30x15[_0x7edd[34]],attributes:_0xfd30x15[_0x7edd[30]]}}):[]}}):[]}}):[]):[]})[_0x7edd[24]](function(_0xfd30x11){logger[_0x7edd[17]](_0x7edd[38],_0xfd30xd);logger[_0x7edd[20]](_0x7edd[38],_0xfd30xd,JSON[_0x7edd[19]](_0xfd30x11));_0xfd30xe(_0xfd30x11)})[_0x7edd[15]](function(_0xfd30x10){logger[_0x7edd[14]](_0x7edd[38],_0xfd30x10[_0x7edd[22]],_0xfd30xd);_0xfd30xf(_0xfd30x12[_0x7edd[14]](500,_0xfd30x10[_0x7edd[22]]))})})}
\ No newline at end of file
index c15d38d..75692d7 100644 (file)
@@ -1 +1 @@
-var _0x4753=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x4753[0];var multer=require(_0x4753[1]);var util=require(_0x4753[2]);var path=require(_0x4753[3]);var express=require(_0x4753[4]);var router=express.Router();var auth=require(_0x4753[5]);var config=require(_0x4753[6]);var controller=require(_0x4753[7]);router[_0x4753[11]](_0x4753[8],auth[_0x4753[9]](),controller[_0x4753[10]]);router[_0x4753[11]](_0x4753[12],auth[_0x4753[9]](),controller[_0x4753[13]]);router[_0x4753[11]](_0x4753[14],auth[_0x4753[9]](),controller[_0x4753[15]]);router[_0x4753[11]](_0x4753[16],auth[_0x4753[9]](),controller[_0x4753[17]]);router[_0x4753[11]](_0x4753[18],auth[_0x4753[9]](),controller[_0x4753[19]]);router[_0x4753[21]](_0x4753[8],auth[_0x4753[9]](),controller[_0x4753[20]]);router[_0x4753[23]](_0x4753[12],auth[_0x4753[9]](),controller[_0x4753[22]]);router[_0x4753[25]](_0x4753[12],auth[_0x4753[9]](),controller[_0x4753[24]]);module[_0x4753[26]]= router
\ No newline at end of file
+var _0xccfb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xccfb[0];var multer=require(_0xccfb[1]);var util=require(_0xccfb[2]);var path=require(_0xccfb[3]);var express=require(_0xccfb[4]);var router=express.Router();var auth=require(_0xccfb[5]);var config=require(_0xccfb[6]);var controller=require(_0xccfb[7]);router[_0xccfb[11]](_0xccfb[8],auth[_0xccfb[9]](),controller[_0xccfb[10]]);router[_0xccfb[11]](_0xccfb[12],auth[_0xccfb[9]](),controller[_0xccfb[13]]);router[_0xccfb[11]](_0xccfb[14],auth[_0xccfb[9]](),controller[_0xccfb[15]]);router[_0xccfb[11]](_0xccfb[16],auth[_0xccfb[9]](),controller[_0xccfb[17]]);router[_0xccfb[11]](_0xccfb[18],auth[_0xccfb[9]](),controller[_0xccfb[19]]);router[_0xccfb[21]](_0xccfb[8],auth[_0xccfb[9]](),controller[_0xccfb[20]]);router[_0xccfb[23]](_0xccfb[12],auth[_0xccfb[9]](),controller[_0xccfb[22]]);router[_0xccfb[25]](_0xccfb[12],auth[_0xccfb[9]](),controller[_0xccfb[24]]);module[_0xccfb[26]]= router
\ No newline at end of file
index 7d0825e..ddd0fbf 100644 (file)
@@ -1 +1 @@
-var _0x8150=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x8150[0];var Sequelize=require(_0x8150[1]);module[_0x8150[2]]= {name:{type:Sequelize[_0x8150[3]]},description:{type:Sequelize[_0x8150[3]]}}
\ No newline at end of file
+var _0x5bdf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x5bdf[0];var Sequelize=require(_0x5bdf[1]);module[_0x5bdf[2]]= {name:{type:Sequelize[_0x5bdf[3]]},description:{type:Sequelize[_0x5bdf[3]]}}
\ No newline at end of file
index ff7fa7e..7689bd1 100644 (file)
@@ -1 +1 @@
-var _0xa399=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73"];_0xa399[0];var jsonpatch=require(_0xa399[1]);var rp=require(_0xa399[2]);var moment=require(_0xa399[3]);var BPromise=require(_0xa399[4]);var util=require(_0xa399[5]);var path=require(_0xa399[6]);var sox=require(_0xa399[7]);var ejs=require(_0xa399[8]);var fs=require(_0xa399[9]);var _=require(_0xa399[10]);var squel=require(_0xa399[11]);var crypto=require(_0xa399[12]);var jsforce=require(_0xa399[13]);var toCsv=require(_0xa399[14]);var qs=require(_0xa399[15]);var logger=require(_0xa399[17])(_0xa399[16]);var utils=require(_0xa399[18]);var config=require(_0xa399[19]);var db=require(_0xa399[21])[_0xa399[20]];var jayson=require(_0xa399[22]);var client=jayson[_0xa399[24]][_0xa399[23]]({port:9002});function respondWithRpcPromise(_0xcedbx17,_0xcedbx18,_0xcedbx19){return  new BPromise(function(_0xcedbx1a,_0xcedbx1b){return client[_0xa399[37]](_0xcedbx17,_0xcedbx19)[_0xa399[36]](function(_0xcedbx1d){logger[_0xa399[29]](_0xa399[25],_0xcedbx18,_0xa399[28]);logger[_0xa399[32]](_0xa399[30],_0xcedbx18,_0xa399[28],JSON[_0xa399[31]](_0xcedbx1d));if(_0xcedbx1d[_0xa399[26]]){if(_0xcedbx1d[_0xa399[26]][_0xa399[33]]=== 500){logger[_0xa399[26]](_0xa399[25],_0xcedbx18,_0xcedbx1d[_0xa399[26]][_0xa399[34]]);return _0xcedbx1b(_0xcedbx1d[_0xa399[26]][_0xa399[34]])};logger[_0xa399[26]](_0xa399[25],_0xcedbx18,_0xcedbx1d[_0xa399[26]][_0xa399[34]]);return _0xcedbx1a(_0xcedbx1d[_0xa399[26]][_0xa399[34]])}else {logger[_0xa399[29]](_0xa399[25],_0xcedbx18,_0xa399[28]);_0xcedbx1a(_0xcedbx1d[_0xa399[35]][_0xa399[34]])}})[_0xa399[27]](function(_0xcedbx1c){logger[_0xa399[26]](_0xa399[25],_0xcedbx18,_0xcedbx1c);_0xcedbx1b(_0xcedbx1c)})})}function respondWithStatusCode(_0xcedbx1d,_0xcedbx1f,_0xcedbx18){_0xcedbx1f= _0xcedbx1f|| 204;return function(_0xcedbx20){if(_0xcedbx20){logger[_0xa399[29]](_0xa399[30],_0xcedbx18,_0xcedbx1f,_0xa399[38]);logger[_0xa399[32]](_0xa399[39],_0xcedbx18,_0xcedbx1f,_0xa399[38]);return _0xcedbx1d[_0xa399[40]](_0xcedbx1f)};return _0xcedbx1d[_0xa399[42]](304)[_0xa399[41]]()}}function respondWithResult(_0xcedbx1d,_0xcedbx1f,_0xcedbx18){_0xcedbx1f= _0xcedbx1f|| 200;return function(_0xcedbx20){if(_0xcedbx20){logger[_0xa399[29]](_0xa399[30],_0xcedbx18,_0xcedbx1f,_0xa399[43]);logger[_0xa399[32]](_0xa399[39],_0xcedbx18,_0xcedbx1f,_0xa399[43],JSON[_0xa399[31]](_0xcedbx20));return _0xcedbx1d[_0xa399[42]](_0xcedbx1f)[_0xa399[44]](_0xcedbx20)};return _0xcedbx1d[_0xa399[42]](304)[_0xa399[41]]()}}function respondWithFilteredResult(_0xcedbx1d,_0xcedbx23,_0xcedbx18){return function(_0xcedbx20){if(_0xcedbx20){var _0xcedbx24=_0xcedbx20[_0xa399[45]],_0xcedbx25=_0xcedbx23[_0xa399[46]],_0xcedbx26=_0xcedbx23[_0xa399[46]]+ _0xcedbx23[_0xa399[47]],_0xcedbx1f;if(_0xcedbx26>= _0xcedbx24){_0xcedbx26= _0xcedbx24;_0xcedbx1f= 200}else {_0xcedbx1f= 206};_0xcedbx1d[_0xa399[42]](_0xcedbx1f);logger[_0xa399[29]](_0xa399[30],_0xcedbx18,_0xcedbx1f,_0xa399[48]);logger[_0xa399[32]](_0xa399[39],_0xcedbx18,_0xcedbx1f,_0xa399[43],JSON[_0xa399[31]](_0xcedbx20));return _0xcedbx1d[_0xa399[52]](_0xa399[49],_0xcedbx25+ _0xa399[50]+ _0xcedbx26+ _0xa399[51]+ _0xcedbx24)[_0xa399[44]](_0xcedbx20)};return null}}function patchUpdates(_0xcedbx28){return function(_0xcedbx20){try{jsonpatch[_0xa399[53]](_0xcedbx20,_0xcedbx28,true)}catch(err){return BPromise[_0xa399[54]](err)};return _0xcedbx20[_0xa399[55]]()}}function saveUpdates(_0xcedbx2a,_0xcedbx1f,_0xcedbx18){return function(_0xcedbx20){if(_0xcedbx20){return _0xcedbx20[_0xa399[57]](_0xcedbx2a)[_0xa399[36]](function(_0xcedbx2b){logger[_0xa399[29]](_0xa399[30],_0xcedbx18,_0xcedbx1f,_0xa399[56]);logger[_0xa399[32]](_0xa399[39],_0xcedbx18,_0xcedbx1f,_0xa399[56],JSON[_0xa399[31]](_0xcedbx20));return _0xcedbx2b})};return null}}function removeEntity(_0xcedbx1d,_0xcedbx1f,_0xcedbx18){return function(_0xcedbx20){if(_0xcedbx20){return _0xcedbx20[_0xa399[59]]()[_0xa399[36]](function(){logger[_0xa399[29]](_0xa399[30],_0xcedbx18,_0xcedbx1f,_0xa399[58]);logger[_0xa399[32]](_0xa399[39],_0xcedbx18,_0xcedbx1f,_0xa399[58],JSON[_0xa399[31]](_0xcedbx20));_0xcedbx1d[_0xa399[42]](204)[_0xa399[41]]()})}}}function handleEntityNotFound(_0xcedbx1d,_0xcedbx1f,_0xcedbx18){return function(_0xcedbx20){if(!_0xcedbx20){logger[_0xa399[26]](_0xa399[30],_0xcedbx18,404,_0xa399[60]);_0xcedbx1d[_0xa399[42]](404)[_0xa399[41]]();return null};return _0xcedbx20}}function handleError(_0xcedbx1d,_0xcedbx1f,_0xcedbx18){_0xcedbx1f= _0xcedbx1f|| 500;return function(_0xcedbx1c){logger[_0xa399[26]](_0xa399[30],_0xcedbx18,_0xcedbx1f,JSON[_0xa399[31]](_0xcedbx1c));delete _0xcedbx1c[_0xa399[61]];_0xcedbx1d[_0xa399[42]](_0xcedbx1f)[_0xa399[62]](_0xcedbx1c)}}exports[_0xa399[63]]= function(_0xcedbx19,_0xcedbx1d){var _0xcedbx23={},_0xcedbx2f={};_0xcedbx2f[_0xa399[64]]= _[_0xa399[67]](db[_0xa399[66]][_0xa399[65]]);_0xcedbx2f[_0xa399[68]]= _[_0xa399[67]](_0xcedbx19[_0xa399[68]]);_0xcedbx2f[_0xa399[69]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],_0xcedbx2f[_0xa399[68]]);_0xcedbx23[_0xa399[71]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],qs[_0xa399[72]](_0xcedbx19[_0xa399[68]][_0xa399[72]]));_0xcedbx23[_0xa399[71]]= (_0xcedbx23[_0xa399[71]][_0xa399[73]])?_0xcedbx23[_0xa399[71]]:_0xcedbx2f[_0xa399[64]];if(!_0xcedbx19[_0xa399[68]][_0xa399[75]](_0xa399[74])){_0xcedbx23[_0xa399[47]]= qs[_0xa399[47]](_0xcedbx19[_0xa399[68]][_0xa399[47]]);_0xcedbx23[_0xa399[46]]= qs[_0xa399[46]](_0xcedbx19[_0xa399[68]][_0xa399[46]])};_0xcedbx23[_0xa399[76]]= qs[_0xa399[77]](_0xcedbx19[_0xa399[68]][_0xa399[77]]);_0xcedbx23[_0xa399[78]]= qs[_0xa399[69]](_[_0xa399[79]](_0xcedbx19[_0xa399[68]],_0xcedbx2f[_0xa399[69]]));if(_0xcedbx19[_0xa399[68]][_0xa399[80]]){_0xcedbx23[_0xa399[78]]= _[_0xa399[83]](_0xcedbx23[_0xa399[78]],{$or:_[_0xa399[82]](_0xcedbx23[_0xa399[71]],function(_0xcedbx30){var _0xcedbx31={};_0xcedbx31[_0xcedbx30]= {$like:_0xa399[81]+ _0xcedbx19[_0xa399[68]][_0xa399[80]]+ _0xa399[81]};return _0xcedbx31})})};_0xcedbx23= _[_0xa399[83]]({},_0xcedbx23,_0xcedbx19[_0xa399[84]]);return db[_0xa399[66]][_0xa399[85]](_0xcedbx23)[_0xa399[36]](respondWithFilteredResult(_0xcedbx1d,_0xcedbx23,_0xa399[63]))[_0xa399[27]](handleError(_0xcedbx1d,null,_0xa399[63]))};exports[_0xa399[86]]= function(_0xcedbx19,_0xcedbx1d){var _0xcedbx23={raw:false,where:{id:_0xcedbx19[_0xa399[88]][_0xa399[87]]}},_0xcedbx2f={};_0xcedbx2f[_0xa399[64]]= _[_0xa399[67]](db[_0xa399[66]][_0xa399[65]]);_0xcedbx2f[_0xa399[68]]= _[_0xa399[67]](_0xcedbx19[_0xa399[68]]);_0xcedbx2f[_0xa399[69]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],_0xcedbx2f[_0xa399[68]]);_0xcedbx23[_0xa399[71]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],qs[_0xa399[72]](_0xcedbx19[_0xa399[68]][_0xa399[72]]));_0xcedbx23[_0xa399[71]]= (_0xcedbx23[_0xa399[71]][_0xa399[73]])?_0xcedbx23[_0xa399[71]]:_0xcedbx2f[_0xa399[64]];_0xcedbx23= _[_0xa399[83]]({},_0xcedbx23,_0xcedbx19[_0xa399[84]]);return db[_0xa399[66]][_0xa399[89]](_0xcedbx23)[_0xa399[36]](handleEntityNotFound(_0xcedbx1d,null,_0xa399[86]))[_0xa399[36]](respondWithResult(_0xcedbx1d,null,_0xa399[86]))[_0xa399[27]](handleError(_0xcedbx1d,null,_0xa399[86]))};exports[_0xa399[90]]= function(_0xcedbx19,_0xcedbx1d){return db[_0xa399[66]][_0xa399[90]](_0xcedbx19[_0xa399[91]],{})[_0xa399[36]](respondWithResult(_0xcedbx1d,201,_0xa399[90]))[_0xa399[27]](handleError(_0xcedbx1d,null,_0xa399[90]))};exports[_0xa399[57]]= function(_0xcedbx19,_0xcedbx1d){if(_0xcedbx19[_0xa399[91]][_0xa399[87]]){delete _0xcedbx19[_0xa399[91]][_0xa399[87]]};return db[_0xa399[66]][_0xa399[89]]({where:{id:_0xcedbx19[_0xa399[88]][_0xa399[87]]}})[_0xa399[36]](handleEntityNotFound(_0xcedbx1d,null,_0xa399[57]))[_0xa399[36]](saveUpdates(_0xcedbx19[_0xa399[91]],null,_0xa399[57]))[_0xa399[36]](respondWithResult(_0xcedbx1d,null,_0xa399[57]))[_0xa399[27]](handleError(_0xcedbx1d,null,_0xa399[57]))};exports[_0xa399[59]]= function(_0xcedbx19,_0xcedbx1d){return db[_0xa399[66]][_0xa399[89]]({where:{id:_0xcedbx19[_0xa399[88]][_0xa399[87]]}})[_0xa399[36]](handleEntityNotFound(_0xcedbx1d,null,_0xa399[59]))[_0xa399[36]](removeEntity(_0xcedbx1d,null,_0xa399[59]))[_0xa399[27]](handleError(_0xcedbx1d,null,_0xa399[59]))};exports[_0xa399[92]]= function(_0xcedbx19,_0xcedbx20,_0xcedbx32){var _0xcedbx23={};var _0xcedbx2f={};var _0xcedbx33;var _0xcedbx24;return db[_0xa399[66]][_0xa399[94]]({where:{id:_0xcedbx19[_0xa399[88]][_0xa399[87]]}})[_0xa399[36]](handleEntityNotFound(_0xcedbx20,null,_0xa399[92]))[_0xa399[36]](function(_0xcedbx20){if(_0xcedbx20){_0xcedbx33= _0xcedbx20;_0xcedbx2f[_0xa399[64]]= _[_0xa399[67]](db[_0xa399[93]][_0xa399[65]]);_0xcedbx2f[_0xa399[68]]= _[_0xa399[67]](_0xcedbx19[_0xa399[68]]);_0xcedbx2f[_0xa399[69]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],_0xcedbx2f[_0xa399[68]]);_0xcedbx23[_0xa399[71]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],qs[_0xa399[72]](_0xcedbx19[_0xa399[68]][_0xa399[72]]));_0xcedbx23[_0xa399[71]]= (_0xcedbx23[_0xa399[71]][_0xa399[73]])?_0xcedbx23[_0xa399[71]]:_0xcedbx2f[_0xa399[64]];_0xcedbx23[_0xa399[76]]= qs[_0xa399[77]](_0xcedbx19[_0xa399[68]][_0xa399[77]]);_0xcedbx23[_0xa399[78]]= qs[_0xa399[69]](_[_0xa399[79]](_0xcedbx19[_0xa399[68]],_0xcedbx2f[_0xa399[69]]));if(_0xcedbx19[_0xa399[68]][_0xa399[80]]){_0xcedbx23[_0xa399[78]]= _[_0xa399[83]](_0xcedbx23[_0xa399[78]],{$or:_[_0xa399[82]](_0xcedbx23[_0xa399[71]],function(_0xcedbx30){var _0xcedbx31={};_0xcedbx31[_0xcedbx30]= {$like:_0xa399[81]+ _0xcedbx19[_0xa399[68]][_0xa399[80]]+ _0xa399[81]};return _0xcedbx31})})};_0xcedbx23= _[_0xa399[83]]({},_0xcedbx23,_0xcedbx19[_0xa399[84]]);return _0xcedbx33[_0xa399[92]](_0xcedbx23)}})[_0xa399[36]](function(_0xcedbx35){if(_0xcedbx35){_0xcedbx24= _0xcedbx35[_0xa399[73]];if(!_0xcedbx19[_0xa399[68]][_0xa399[75]](_0xa399[74])){_0xcedbx23[_0xa399[47]]= qs[_0xa399[47]](_0xcedbx19[_0xa399[68]][_0xa399[47]]);_0xcedbx23[_0xa399[46]]= qs[_0xa399[46]](_0xcedbx19[_0xa399[68]][_0xa399[46]])};return _0xcedbx33[_0xa399[92]](_0xcedbx23)}})[_0xa399[36]](function(_0xcedbx34){return _0xcedbx34?{count:_0xcedbx24,rows:_0xcedbx34}:null})[_0xa399[36]](respondWithResult(_0xcedbx20,null,_0xa399[92]))[_0xa399[27]](handleError(_0xcedbx20,null,_0xa399[92]))};exports[_0xa399[95]]= function(_0xcedbx19,_0xcedbx20,_0xcedbx32){var _0xcedbx23={};var _0xcedbx2f={};var _0xcedbx33;var _0xcedbx24;return db[_0xa399[66]][_0xa399[94]]({where:{id:_0xcedbx19[_0xa399[88]][_0xa399[87]]}})[_0xa399[36]](handleEntityNotFound(_0xcedbx20,null,_0xa399[95]))[_0xa399[36]](function(_0xcedbx20){if(_0xcedbx20){_0xcedbx33= _0xcedbx20;_0xcedbx2f[_0xa399[64]]= _[_0xa399[67]](db[_0xa399[93]][_0xa399[65]]);_0xcedbx2f[_0xa399[68]]= _[_0xa399[67]](_0xcedbx19[_0xa399[68]]);_0xcedbx2f[_0xa399[69]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],_0xcedbx2f[_0xa399[68]]);_0xcedbx23[_0xa399[71]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],qs[_0xa399[72]](_0xcedbx19[_0xa399[68]][_0xa399[72]]));_0xcedbx23[_0xa399[71]]= (_0xcedbx23[_0xa399[71]][_0xa399[73]])?_0xcedbx23[_0xa399[71]]:_0xcedbx2f[_0xa399[64]];_0xcedbx23[_0xa399[76]]= qs[_0xa399[77]](_0xcedbx19[_0xa399[68]][_0xa399[77]]);_0xcedbx23[_0xa399[78]]= qs[_0xa399[69]](_[_0xa399[79]](_0xcedbx19[_0xa399[68]],_0xcedbx2f[_0xa399[69]]));if(_0xcedbx19[_0xa399[68]][_0xa399[80]]){_0xcedbx23[_0xa399[78]]= _[_0xa399[83]](_0xcedbx23[_0xa399[78]],{$or:_[_0xa399[82]](_0xcedbx23[_0xa399[71]],function(_0xcedbx30){var _0xcedbx31={};_0xcedbx31[_0xcedbx30]= {$like:_0xa399[81]+ _0xcedbx19[_0xa399[68]][_0xa399[80]]+ _0xa399[81]};return _0xcedbx31})})};_0xcedbx23= _[_0xa399[83]]({},_0xcedbx23,_0xcedbx19[_0xa399[84]]);return _0xcedbx33[_0xa399[95]](_0xcedbx23)}})[_0xa399[36]](function(_0xcedbx35){if(_0xcedbx35){_0xcedbx24= _0xcedbx35[_0xa399[73]];if(!_0xcedbx19[_0xa399[68]][_0xa399[75]](_0xa399[74])){_0xcedbx23[_0xa399[47]]= qs[_0xa399[47]](_0xcedbx19[_0xa399[68]][_0xa399[47]]);_0xcedbx23[_0xa399[46]]= qs[_0xa399[46]](_0xcedbx19[_0xa399[68]][_0xa399[46]])};return _0xcedbx33[_0xa399[95]](_0xcedbx23)}})[_0xa399[36]](function(_0xcedbx34){return _0xcedbx34?{count:_0xcedbx24,rows:_0xcedbx34}:null})[_0xa399[36]](respondWithResult(_0xcedbx20,null,_0xa399[95]))[_0xa399[27]](handleError(_0xcedbx20,null,_0xa399[95]))};exports[_0xa399[96]]= function(_0xcedbx19,_0xcedbx20,_0xcedbx32){var _0xcedbx23={};var _0xcedbx2f={};var _0xcedbx33;var _0xcedbx24;return db[_0xa399[66]][_0xa399[94]]({where:{id:_0xcedbx19[_0xa399[88]][_0xa399[87]]}})[_0xa399[36]](handleEntityNotFound(_0xcedbx20,null,_0xa399[96]))[_0xa399[36]](function(_0xcedbx20){if(_0xcedbx20){_0xcedbx33= _0xcedbx20;_0xcedbx2f[_0xa399[64]]= _[_0xa399[67]](db[_0xa399[93]][_0xa399[65]]);_0xcedbx2f[_0xa399[68]]= _[_0xa399[67]](_0xcedbx19[_0xa399[68]]);_0xcedbx2f[_0xa399[69]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],_0xcedbx2f[_0xa399[68]]);_0xcedbx23[_0xa399[71]]= _[_0xa399[70]](_0xcedbx2f[_0xa399[64]],qs[_0xa399[72]](_0xcedbx19[_0xa399[68]][_0xa399[72]]));_0xcedbx23[_0xa399[71]]= (_0xcedbx23[_0xa399[71]][_0xa399[73]])?_0xcedbx23[_0xa399[71]]:_0xcedbx2f[_0xa399[64]];_0xcedbx23[_0xa399[76]]= qs[_0xa399[77]](_0xcedbx19[_0xa399[68]][_0xa399[77]]);_0xcedbx23[_0xa399[78]]= qs[_0xa399[69]](_[_0xa399[79]](_0xcedbx19[_0xa399[68]],_0xcedbx2f[_0xa399[69]]));if(_0xcedbx19[_0xa399[68]][_0xa399[80]]){_0xcedbx23[_0xa399[78]]= _[_0xa399[83]](_0xcedbx23[_0xa399[78]],{$or:_[_0xa399[82]](_0xcedbx23[_0xa399[71]],function(_0xcedbx30){var _0xcedbx31={};_0xcedbx31[_0xcedbx30]= {$like:_0xa399[81]+ _0xcedbx19[_0xa399[68]][_0xa399[80]]+ _0xa399[81]};return _0xcedbx31})})};_0xcedbx23= _[_0xa399[83]]({},_0xcedbx23,_0xcedbx19[_0xa399[84]]);return _0xcedbx33[_0xa399[96]](_0xcedbx23)}})[_0xa399[36]](function(_0xcedbx35){if(_0xcedbx35){_0xcedbx24= _0xcedbx35[_0xa399[73]];if(!_0xcedbx19[_0xa399[68]][_0xa399[75]](_0xa399[74])){_0xcedbx23[_0xa399[47]]= qs[_0xa399[47]](_0xcedbx19[_0xa399[68]][_0xa399[47]]);_0xcedbx23[_0xa399[46]]= qs[_0xa399[46]](_0xcedbx19[_0xa399[68]][_0xa399[46]])};return _0xcedbx33[_0xa399[96]](_0xcedbx23)}})[_0xa399[36]](function(_0xcedbx34){return _0xcedbx34?{count:_0xcedbx24,rows:_0xcedbx34}:null})[_0xa399[36]](respondWithResult(_0xcedbx20,null,_0xa399[96]))[_0xa399[27]](handleError(_0xcedbx20,null,_0xa399[96]))}
\ No newline at end of file
+var _0x288e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73"];_0x288e[0];var jsonpatch=require(_0x288e[1]);var rp=require(_0x288e[2]);var moment=require(_0x288e[3]);var BPromise=require(_0x288e[4]);var util=require(_0x288e[5]);var path=require(_0x288e[6]);var sox=require(_0x288e[7]);var ejs=require(_0x288e[8]);var fs=require(_0x288e[9]);var _=require(_0x288e[10]);var squel=require(_0x288e[11]);var crypto=require(_0x288e[12]);var jsforce=require(_0x288e[13]);var toCsv=require(_0x288e[14]);var qs=require(_0x288e[15]);var logger=require(_0x288e[17])(_0x288e[16]);var utils=require(_0x288e[18]);var config=require(_0x288e[19]);var db=require(_0x288e[21])[_0x288e[20]];var jayson=require(_0x288e[22]);var client=jayson[_0x288e[24]][_0x288e[23]]({port:9002});function respondWithRpcPromise(_0x9e49x17,_0x9e49x18,_0x9e49x19){return  new BPromise(function(_0x9e49x1a,_0x9e49x1b){return client[_0x288e[37]](_0x9e49x17,_0x9e49x19)[_0x288e[36]](function(_0x9e49x1d){logger[_0x288e[29]](_0x288e[25],_0x9e49x18,_0x288e[28]);logger[_0x288e[32]](_0x288e[30],_0x9e49x18,_0x288e[28],JSON[_0x288e[31]](_0x9e49x1d));if(_0x9e49x1d[_0x288e[26]]){if(_0x9e49x1d[_0x288e[26]][_0x288e[33]]=== 500){logger[_0x288e[26]](_0x288e[25],_0x9e49x18,_0x9e49x1d[_0x288e[26]][_0x288e[34]]);return _0x9e49x1b(_0x9e49x1d[_0x288e[26]][_0x288e[34]])};logger[_0x288e[26]](_0x288e[25],_0x9e49x18,_0x9e49x1d[_0x288e[26]][_0x288e[34]]);return _0x9e49x1a(_0x9e49x1d[_0x288e[26]][_0x288e[34]])}else {logger[_0x288e[29]](_0x288e[25],_0x9e49x18,_0x288e[28]);_0x9e49x1a(_0x9e49x1d[_0x288e[35]][_0x288e[34]])}})[_0x288e[27]](function(_0x9e49x1c){logger[_0x288e[26]](_0x288e[25],_0x9e49x18,_0x9e49x1c);_0x9e49x1b(_0x9e49x1c)})})}function respondWithStatusCode(_0x9e49x1d,_0x9e49x1f,_0x9e49x18){_0x9e49x1f= _0x9e49x1f|| 204;return function(_0x9e49x20){if(_0x9e49x20){logger[_0x288e[29]](_0x288e[30],_0x9e49x18,_0x9e49x1f,_0x288e[38]);logger[_0x288e[32]](_0x288e[39],_0x9e49x18,_0x9e49x1f,_0x288e[38]);return _0x9e49x1d[_0x288e[40]](_0x9e49x1f)};return _0x9e49x1d[_0x288e[42]](304)[_0x288e[41]]()}}function respondWithResult(_0x9e49x1d,_0x9e49x1f,_0x9e49x18){_0x9e49x1f= _0x9e49x1f|| 200;return function(_0x9e49x20){if(_0x9e49x20){logger[_0x288e[29]](_0x288e[30],_0x9e49x18,_0x9e49x1f,_0x288e[43]);logger[_0x288e[32]](_0x288e[39],_0x9e49x18,_0x9e49x1f,_0x288e[43],JSON[_0x288e[31]](_0x9e49x20));return _0x9e49x1d[_0x288e[42]](_0x9e49x1f)[_0x288e[44]](_0x9e49x20)};return _0x9e49x1d[_0x288e[42]](304)[_0x288e[41]]()}}function respondWithFilteredResult(_0x9e49x1d,_0x9e49x23,_0x9e49x18){return function(_0x9e49x20){if(_0x9e49x20){var _0x9e49x24=_0x9e49x20[_0x288e[45]],_0x9e49x25=_0x9e49x23[_0x288e[46]],_0x9e49x26=_0x9e49x23[_0x288e[46]]+ _0x9e49x23[_0x288e[47]],_0x9e49x1f;if(_0x9e49x26>= _0x9e49x24){_0x9e49x26= _0x9e49x24;_0x9e49x1f= 200}else {_0x9e49x1f= 206};_0x9e49x1d[_0x288e[42]](_0x9e49x1f);logger[_0x288e[29]](_0x288e[30],_0x9e49x18,_0x9e49x1f,_0x288e[48]);logger[_0x288e[32]](_0x288e[39],_0x9e49x18,_0x9e49x1f,_0x288e[43],JSON[_0x288e[31]](_0x9e49x20));return _0x9e49x1d[_0x288e[52]](_0x288e[49],_0x9e49x25+ _0x288e[50]+ _0x9e49x26+ _0x288e[51]+ _0x9e49x24)[_0x288e[44]](_0x9e49x20)};return null}}function patchUpdates(_0x9e49x28){return function(_0x9e49x20){try{jsonpatch[_0x288e[53]](_0x9e49x20,_0x9e49x28,true)}catch(err){return BPromise[_0x288e[54]](err)};return _0x9e49x20[_0x288e[55]]()}}function saveUpdates(_0x9e49x2a,_0x9e49x1f,_0x9e49x18){return function(_0x9e49x20){if(_0x9e49x20){return _0x9e49x20[_0x288e[57]](_0x9e49x2a)[_0x288e[36]](function(_0x9e49x2b){logger[_0x288e[29]](_0x288e[30],_0x9e49x18,_0x9e49x1f,_0x288e[56]);logger[_0x288e[32]](_0x288e[39],_0x9e49x18,_0x9e49x1f,_0x288e[56],JSON[_0x288e[31]](_0x9e49x20));return _0x9e49x2b})};return null}}function removeEntity(_0x9e49x1d,_0x9e49x1f,_0x9e49x18){return function(_0x9e49x20){if(_0x9e49x20){return _0x9e49x20[_0x288e[59]]()[_0x288e[36]](function(){logger[_0x288e[29]](_0x288e[30],_0x9e49x18,_0x9e49x1f,_0x288e[58]);logger[_0x288e[32]](_0x288e[39],_0x9e49x18,_0x9e49x1f,_0x288e[58],JSON[_0x288e[31]](_0x9e49x20));_0x9e49x1d[_0x288e[42]](204)[_0x288e[41]]()})}}}function handleEntityNotFound(_0x9e49x1d,_0x9e49x1f,_0x9e49x18){return function(_0x9e49x20){if(!_0x9e49x20){logger[_0x288e[26]](_0x288e[30],_0x9e49x18,404,_0x288e[60]);_0x9e49x1d[_0x288e[42]](404)[_0x288e[41]]();return null};return _0x9e49x20}}function handleError(_0x9e49x1d,_0x9e49x1f,_0x9e49x18){_0x9e49x1f= _0x9e49x1f|| 500;return function(_0x9e49x1c){logger[_0x288e[26]](_0x288e[30],_0x9e49x18,_0x9e49x1f,JSON[_0x288e[31]](_0x9e49x1c));delete _0x9e49x1c[_0x288e[61]];_0x9e49x1d[_0x288e[42]](_0x9e49x1f)[_0x288e[62]](_0x9e49x1c)}}exports[_0x288e[63]]= function(_0x9e49x19,_0x9e49x1d){var _0x9e49x23={},_0x9e49x2f={};_0x9e49x2f[_0x288e[64]]= _[_0x288e[67]](db[_0x288e[66]][_0x288e[65]]);_0x9e49x2f[_0x288e[68]]= _[_0x288e[67]](_0x9e49x19[_0x288e[68]]);_0x9e49x2f[_0x288e[69]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],_0x9e49x2f[_0x288e[68]]);_0x9e49x23[_0x288e[71]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],qs[_0x288e[72]](_0x9e49x19[_0x288e[68]][_0x288e[72]]));_0x9e49x23[_0x288e[71]]= (_0x9e49x23[_0x288e[71]][_0x288e[73]])?_0x9e49x23[_0x288e[71]]:_0x9e49x2f[_0x288e[64]];if(!_0x9e49x19[_0x288e[68]][_0x288e[75]](_0x288e[74])){_0x9e49x23[_0x288e[47]]= qs[_0x288e[47]](_0x9e49x19[_0x288e[68]][_0x288e[47]]);_0x9e49x23[_0x288e[46]]= qs[_0x288e[46]](_0x9e49x19[_0x288e[68]][_0x288e[46]])};_0x9e49x23[_0x288e[76]]= qs[_0x288e[77]](_0x9e49x19[_0x288e[68]][_0x288e[77]]);_0x9e49x23[_0x288e[78]]= qs[_0x288e[69]](_[_0x288e[79]](_0x9e49x19[_0x288e[68]],_0x9e49x2f[_0x288e[69]]));if(_0x9e49x19[_0x288e[68]][_0x288e[80]]){_0x9e49x23[_0x288e[78]]= _[_0x288e[83]](_0x9e49x23[_0x288e[78]],{$or:_[_0x288e[82]](_0x9e49x23[_0x288e[71]],function(_0x9e49x30){var _0x9e49x31={};_0x9e49x31[_0x9e49x30]= {$like:_0x288e[81]+ _0x9e49x19[_0x288e[68]][_0x288e[80]]+ _0x288e[81]};return _0x9e49x31})})};_0x9e49x23= _[_0x288e[83]]({},_0x9e49x23,_0x9e49x19[_0x288e[84]]);return db[_0x288e[66]][_0x288e[85]](_0x9e49x23)[_0x288e[36]](respondWithFilteredResult(_0x9e49x1d,_0x9e49x23,_0x288e[63]))[_0x288e[27]](handleError(_0x9e49x1d,null,_0x288e[63]))};exports[_0x288e[86]]= function(_0x9e49x19,_0x9e49x1d){var _0x9e49x23={raw:false,where:{id:_0x9e49x19[_0x288e[88]][_0x288e[87]]}},_0x9e49x2f={};_0x9e49x2f[_0x288e[64]]= _[_0x288e[67]](db[_0x288e[66]][_0x288e[65]]);_0x9e49x2f[_0x288e[68]]= _[_0x288e[67]](_0x9e49x19[_0x288e[68]]);_0x9e49x2f[_0x288e[69]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],_0x9e49x2f[_0x288e[68]]);_0x9e49x23[_0x288e[71]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],qs[_0x288e[72]](_0x9e49x19[_0x288e[68]][_0x288e[72]]));_0x9e49x23[_0x288e[71]]= (_0x9e49x23[_0x288e[71]][_0x288e[73]])?_0x9e49x23[_0x288e[71]]:_0x9e49x2f[_0x288e[64]];_0x9e49x23= _[_0x288e[83]]({},_0x9e49x23,_0x9e49x19[_0x288e[84]]);return db[_0x288e[66]][_0x288e[89]](_0x9e49x23)[_0x288e[36]](handleEntityNotFound(_0x9e49x1d,null,_0x288e[86]))[_0x288e[36]](respondWithResult(_0x9e49x1d,null,_0x288e[86]))[_0x288e[27]](handleError(_0x9e49x1d,null,_0x288e[86]))};exports[_0x288e[90]]= function(_0x9e49x19,_0x9e49x1d){return db[_0x288e[66]][_0x288e[90]](_0x9e49x19[_0x288e[91]],{})[_0x288e[36]](respondWithResult(_0x9e49x1d,201,_0x288e[90]))[_0x288e[27]](handleError(_0x9e49x1d,null,_0x288e[90]))};exports[_0x288e[57]]= function(_0x9e49x19,_0x9e49x1d){if(_0x9e49x19[_0x288e[91]][_0x288e[87]]){delete _0x9e49x19[_0x288e[91]][_0x288e[87]]};return db[_0x288e[66]][_0x288e[89]]({where:{id:_0x9e49x19[_0x288e[88]][_0x288e[87]]}})[_0x288e[36]](handleEntityNotFound(_0x9e49x1d,null,_0x288e[57]))[_0x288e[36]](saveUpdates(_0x9e49x19[_0x288e[91]],null,_0x288e[57]))[_0x288e[36]](respondWithResult(_0x9e49x1d,null,_0x288e[57]))[_0x288e[27]](handleError(_0x9e49x1d,null,_0x288e[57]))};exports[_0x288e[59]]= function(_0x9e49x19,_0x9e49x1d){return db[_0x288e[66]][_0x288e[89]]({where:{id:_0x9e49x19[_0x288e[88]][_0x288e[87]]}})[_0x288e[36]](handleEntityNotFound(_0x9e49x1d,null,_0x288e[59]))[_0x288e[36]](removeEntity(_0x9e49x1d,null,_0x288e[59]))[_0x288e[27]](handleError(_0x9e49x1d,null,_0x288e[59]))};exports[_0x288e[92]]= function(_0x9e49x19,_0x9e49x20,_0x9e49x32){var _0x9e49x23={};var _0x9e49x2f={};var _0x9e49x33;var _0x9e49x24;return db[_0x288e[66]][_0x288e[94]]({where:{id:_0x9e49x19[_0x288e[88]][_0x288e[87]]}})[_0x288e[36]](handleEntityNotFound(_0x9e49x20,null,_0x288e[92]))[_0x288e[36]](function(_0x9e49x20){if(_0x9e49x20){_0x9e49x33= _0x9e49x20;_0x9e49x2f[_0x288e[64]]= _[_0x288e[67]](db[_0x288e[93]][_0x288e[65]]);_0x9e49x2f[_0x288e[68]]= _[_0x288e[67]](_0x9e49x19[_0x288e[68]]);_0x9e49x2f[_0x288e[69]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],_0x9e49x2f[_0x288e[68]]);_0x9e49x23[_0x288e[71]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],qs[_0x288e[72]](_0x9e49x19[_0x288e[68]][_0x288e[72]]));_0x9e49x23[_0x288e[71]]= (_0x9e49x23[_0x288e[71]][_0x288e[73]])?_0x9e49x23[_0x288e[71]]:_0x9e49x2f[_0x288e[64]];_0x9e49x23[_0x288e[76]]= qs[_0x288e[77]](_0x9e49x19[_0x288e[68]][_0x288e[77]]);_0x9e49x23[_0x288e[78]]= qs[_0x288e[69]](_[_0x288e[79]](_0x9e49x19[_0x288e[68]],_0x9e49x2f[_0x288e[69]]));if(_0x9e49x19[_0x288e[68]][_0x288e[80]]){_0x9e49x23[_0x288e[78]]= _[_0x288e[83]](_0x9e49x23[_0x288e[78]],{$or:_[_0x288e[82]](_0x9e49x23[_0x288e[71]],function(_0x9e49x30){var _0x9e49x31={};_0x9e49x31[_0x9e49x30]= {$like:_0x288e[81]+ _0x9e49x19[_0x288e[68]][_0x288e[80]]+ _0x288e[81]};return _0x9e49x31})})};_0x9e49x23= _[_0x288e[83]]({},_0x9e49x23,_0x9e49x19[_0x288e[84]]);return _0x9e49x33[_0x288e[92]](_0x9e49x23)}})[_0x288e[36]](function(_0x9e49x35){if(_0x9e49x35){_0x9e49x24= _0x9e49x35[_0x288e[73]];if(!_0x9e49x19[_0x288e[68]][_0x288e[75]](_0x288e[74])){_0x9e49x23[_0x288e[47]]= qs[_0x288e[47]](_0x9e49x19[_0x288e[68]][_0x288e[47]]);_0x9e49x23[_0x288e[46]]= qs[_0x288e[46]](_0x9e49x19[_0x288e[68]][_0x288e[46]])};return _0x9e49x33[_0x288e[92]](_0x9e49x23)}})[_0x288e[36]](function(_0x9e49x34){return _0x9e49x34?{count:_0x9e49x24,rows:_0x9e49x34}:null})[_0x288e[36]](respondWithResult(_0x9e49x20,null,_0x288e[92]))[_0x288e[27]](handleError(_0x9e49x20,null,_0x288e[92]))};exports[_0x288e[95]]= function(_0x9e49x19,_0x9e49x20,_0x9e49x32){var _0x9e49x23={};var _0x9e49x2f={};var _0x9e49x33;var _0x9e49x24;return db[_0x288e[66]][_0x288e[94]]({where:{id:_0x9e49x19[_0x288e[88]][_0x288e[87]]}})[_0x288e[36]](handleEntityNotFound(_0x9e49x20,null,_0x288e[95]))[_0x288e[36]](function(_0x9e49x20){if(_0x9e49x20){_0x9e49x33= _0x9e49x20;_0x9e49x2f[_0x288e[64]]= _[_0x288e[67]](db[_0x288e[93]][_0x288e[65]]);_0x9e49x2f[_0x288e[68]]= _[_0x288e[67]](_0x9e49x19[_0x288e[68]]);_0x9e49x2f[_0x288e[69]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],_0x9e49x2f[_0x288e[68]]);_0x9e49x23[_0x288e[71]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],qs[_0x288e[72]](_0x9e49x19[_0x288e[68]][_0x288e[72]]));_0x9e49x23[_0x288e[71]]= (_0x9e49x23[_0x288e[71]][_0x288e[73]])?_0x9e49x23[_0x288e[71]]:_0x9e49x2f[_0x288e[64]];_0x9e49x23[_0x288e[76]]= qs[_0x288e[77]](_0x9e49x19[_0x288e[68]][_0x288e[77]]);_0x9e49x23[_0x288e[78]]= qs[_0x288e[69]](_[_0x288e[79]](_0x9e49x19[_0x288e[68]],_0x9e49x2f[_0x288e[69]]));if(_0x9e49x19[_0x288e[68]][_0x288e[80]]){_0x9e49x23[_0x288e[78]]= _[_0x288e[83]](_0x9e49x23[_0x288e[78]],{$or:_[_0x288e[82]](_0x9e49x23[_0x288e[71]],function(_0x9e49x30){var _0x9e49x31={};_0x9e49x31[_0x9e49x30]= {$like:_0x288e[81]+ _0x9e49x19[_0x288e[68]][_0x288e[80]]+ _0x288e[81]};return _0x9e49x31})})};_0x9e49x23= _[_0x288e[83]]({},_0x9e49x23,_0x9e49x19[_0x288e[84]]);return _0x9e49x33[_0x288e[95]](_0x9e49x23)}})[_0x288e[36]](function(_0x9e49x35){if(_0x9e49x35){_0x9e49x24= _0x9e49x35[_0x288e[73]];if(!_0x9e49x19[_0x288e[68]][_0x288e[75]](_0x288e[74])){_0x9e49x23[_0x288e[47]]= qs[_0x288e[47]](_0x9e49x19[_0x288e[68]][_0x288e[47]]);_0x9e49x23[_0x288e[46]]= qs[_0x288e[46]](_0x9e49x19[_0x288e[68]][_0x288e[46]])};return _0x9e49x33[_0x288e[95]](_0x9e49x23)}})[_0x288e[36]](function(_0x9e49x34){return _0x9e49x34?{count:_0x9e49x24,rows:_0x9e49x34}:null})[_0x288e[36]](respondWithResult(_0x9e49x20,null,_0x288e[95]))[_0x288e[27]](handleError(_0x9e49x20,null,_0x288e[95]))};exports[_0x288e[96]]= function(_0x9e49x19,_0x9e49x20,_0x9e49x32){var _0x9e49x23={};var _0x9e49x2f={};var _0x9e49x33;var _0x9e49x24;return db[_0x288e[66]][_0x288e[94]]({where:{id:_0x9e49x19[_0x288e[88]][_0x288e[87]]}})[_0x288e[36]](handleEntityNotFound(_0x9e49x20,null,_0x288e[96]))[_0x288e[36]](function(_0x9e49x20){if(_0x9e49x20){_0x9e49x33= _0x9e49x20;_0x9e49x2f[_0x288e[64]]= _[_0x288e[67]](db[_0x288e[93]][_0x288e[65]]);_0x9e49x2f[_0x288e[68]]= _[_0x288e[67]](_0x9e49x19[_0x288e[68]]);_0x9e49x2f[_0x288e[69]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],_0x9e49x2f[_0x288e[68]]);_0x9e49x23[_0x288e[71]]= _[_0x288e[70]](_0x9e49x2f[_0x288e[64]],qs[_0x288e[72]](_0x9e49x19[_0x288e[68]][_0x288e[72]]));_0x9e49x23[_0x288e[71]]= (_0x9e49x23[_0x288e[71]][_0x288e[73]])?_0x9e49x23[_0x288e[71]]:_0x9e49x2f[_0x288e[64]];_0x9e49x23[_0x288e[76]]= qs[_0x288e[77]](_0x9e49x19[_0x288e[68]][_0x288e[77]]);_0x9e49x23[_0x288e[78]]= qs[_0x288e[69]](_[_0x288e[79]](_0x9e49x19[_0x288e[68]],_0x9e49x2f[_0x288e[69]]));if(_0x9e49x19[_0x288e[68]][_0x288e[80]]){_0x9e49x23[_0x288e[78]]= _[_0x288e[83]](_0x9e49x23[_0x288e[78]],{$or:_[_0x288e[82]](_0x9e49x23[_0x288e[71]],function(_0x9e49x30){var _0x9e49x31={};_0x9e49x31[_0x9e49x30]= {$like:_0x288e[81]+ _0x9e49x19[_0x288e[68]][_0x288e[80]]+ _0x288e[81]};return _0x9e49x31})})};_0x9e49x23= _[_0x288e[83]]({},_0x9e49x23,_0x9e49x19[_0x288e[84]]);return _0x9e49x33[_0x288e[96]](_0x9e49x23)}})[_0x288e[36]](function(_0x9e49x35){if(_0x9e49x35){_0x9e49x24= _0x9e49x35[_0x288e[73]];if(!_0x9e49x19[_0x288e[68]][_0x288e[75]](_0x288e[74])){_0x9e49x23[_0x288e[47]]= qs[_0x288e[47]](_0x9e49x19[_0x288e[68]][_0x288e[47]]);_0x9e49x23[_0x288e[46]]= qs[_0x288e[46]](_0x9e49x19[_0x288e[68]][_0x288e[46]])};return _0x9e49x33[_0x288e[96]](_0x9e49x23)}})[_0x288e[36]](function(_0x9e49x34){return _0x9e49x34?{count:_0x9e49x24,rows:_0x9e49x34}:null})[_0x288e[36]](respondWithResult(_0x9e49x20,null,_0x288e[96]))[_0x288e[27]](handleError(_0x9e49x20,null,_0x288e[96]))}
\ No newline at end of file
index 2dadb44..c229d0f 100644 (file)
@@ -1 +1 @@
-var _0xe45c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x5F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xe45c[0];var _=require(_0xe45c[1]);var util=require(_0xe45c[2]);var logger=require(_0xe45c[4])(_0xe45c[3]);var attributes=require(_0xe45c[5]);module[_0xe45c[6]]= function(_0x2b5bx5,_0x2b5bx6){return _0x2b5bx5[_0xe45c[9]](_0xe45c[7],attributes,{tableName:_0xe45c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x795c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x5F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x795c[0];var _=require(_0x795c[1]);var util=require(_0x795c[2]);var logger=require(_0x795c[4])(_0x795c[3]);var attributes=require(_0x795c[5]);module[_0x795c[6]]= function(_0x43f3x5,_0x43f3x6){return _0x43f3x5[_0x795c[9]](_0x795c[7],attributes,{tableName:_0x795c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 304d082..f755039 100644 (file)
@@ -1 +1 @@
-var _0x88b9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x88b9[0];var _=require(_0x88b9[1]);var util=require(_0x88b9[2]);var moment=require(_0x88b9[3]);var BPromise=require(_0x88b9[4]);var db=require(_0x88b9[6])[_0x88b9[5]];var utils=require(_0x88b9[7]);var logger=require(_0x88b9[9])(_0x88b9[8]);var jayson=require(_0x88b9[10]);var client=jayson[_0x88b9[12]][_0x88b9[11]]({port:9002});function respondWithRpcPromise(_0x5ed0xb,_0x5ed0xc,_0x5ed0xd){return  new BPromise(function(_0x5ed0xe,_0x5ed0xf){return client[_0x88b9[25]](_0x5ed0xb,_0x5ed0xd)[_0x88b9[24]](function(_0x5ed0x11){logger[_0x88b9[17]](_0x88b9[13],_0x5ed0xc,_0x88b9[16]);logger[_0x88b9[20]](_0x88b9[18],_0x5ed0xc,_0x88b9[16],JSON[_0x88b9[19]](_0x5ed0x11));if(_0x5ed0x11[_0x88b9[14]]){if(_0x5ed0x11[_0x88b9[14]][_0x88b9[21]]=== 500){logger[_0x88b9[14]](_0x88b9[13],_0x5ed0xc,_0x5ed0x11[_0x88b9[14]][_0x88b9[22]]);return _0x5ed0xf(_0x5ed0x11[_0x88b9[14]][_0x88b9[22]])};logger[_0x88b9[14]](_0x88b9[13],_0x5ed0xc,_0x5ed0x11[_0x88b9[14]][_0x88b9[22]]);return _0x5ed0xe(_0x5ed0x11[_0x88b9[14]][_0x88b9[22]])}else {logger[_0x88b9[17]](_0x88b9[13],_0x5ed0xc,_0x88b9[16]);_0x5ed0xe(_0x5ed0x11[_0x88b9[23]][_0x88b9[22]])}})[_0x88b9[15]](function(_0x5ed0x10){logger[_0x88b9[14]](_0x88b9[13],_0x5ed0xc,_0x5ed0x10);_0x5ed0xf(_0x5ed0x10)})})}
\ No newline at end of file
+var _0x89b6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x89b6[0];var _=require(_0x89b6[1]);var util=require(_0x89b6[2]);var moment=require(_0x89b6[3]);var BPromise=require(_0x89b6[4]);var db=require(_0x89b6[6])[_0x89b6[5]];var utils=require(_0x89b6[7]);var logger=require(_0x89b6[9])(_0x89b6[8]);var jayson=require(_0x89b6[10]);var client=jayson[_0x89b6[12]][_0x89b6[11]]({port:9002});function respondWithRpcPromise(_0x95c6xb,_0x95c6xc,_0x95c6xd){return  new BPromise(function(_0x95c6xe,_0x95c6xf){return client[_0x89b6[25]](_0x95c6xb,_0x95c6xd)[_0x89b6[24]](function(_0x95c6x11){logger[_0x89b6[17]](_0x89b6[13],_0x95c6xc,_0x89b6[16]);logger[_0x89b6[20]](_0x89b6[18],_0x95c6xc,_0x89b6[16],JSON[_0x89b6[19]](_0x95c6x11));if(_0x95c6x11[_0x89b6[14]]){if(_0x95c6x11[_0x89b6[14]][_0x89b6[21]]=== 500){logger[_0x89b6[14]](_0x89b6[13],_0x95c6xc,_0x95c6x11[_0x89b6[14]][_0x89b6[22]]);return _0x95c6xf(_0x95c6x11[_0x89b6[14]][_0x89b6[22]])};logger[_0x89b6[14]](_0x89b6[13],_0x95c6xc,_0x95c6x11[_0x89b6[14]][_0x89b6[22]]);return _0x95c6xe(_0x95c6x11[_0x89b6[14]][_0x89b6[22]])}else {logger[_0x89b6[17]](_0x89b6[13],_0x95c6xc,_0x89b6[16]);_0x95c6xe(_0x95c6x11[_0x89b6[23]][_0x89b6[22]])}})[_0x89b6[15]](function(_0x95c6x10){logger[_0x89b6[14]](_0x89b6[13],_0x95c6xc,_0x95c6x10);_0x95c6xf(_0x95c6x10)})})}
\ No newline at end of file
index a3041ae..b5eefea 100644 (file)
@@ -1 +1 @@
-var _0x5767=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5767[0];var multer=require(_0x5767[1]);var util=require(_0x5767[2]);var path=require(_0x5767[3]);var express=require(_0x5767[4]);var router=express.Router();var auth=require(_0x5767[5]);var config=require(_0x5767[6]);var controller=require(_0x5767[7]);router[_0x5767[11]](_0x5767[8],auth[_0x5767[9]](),controller[_0x5767[10]]);router[_0x5767[11]](_0x5767[12],auth[_0x5767[9]](),controller[_0x5767[13]]);router[_0x5767[15]](_0x5767[8],auth[_0x5767[9]](),controller[_0x5767[14]]);router[_0x5767[17]](_0x5767[12],auth[_0x5767[9]](),controller[_0x5767[16]]);router[_0x5767[19]](_0x5767[12],auth[_0x5767[9]](),controller[_0x5767[18]]);module[_0x5767[20]]= router
\ No newline at end of file
+var _0x19c8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x19c8[0];var multer=require(_0x19c8[1]);var util=require(_0x19c8[2]);var path=require(_0x19c8[3]);var express=require(_0x19c8[4]);var router=express.Router();var auth=require(_0x19c8[5]);var config=require(_0x19c8[6]);var controller=require(_0x19c8[7]);router[_0x19c8[11]](_0x19c8[8],auth[_0x19c8[9]](),controller[_0x19c8[10]]);router[_0x19c8[11]](_0x19c8[12],auth[_0x19c8[9]](),controller[_0x19c8[13]]);router[_0x19c8[15]](_0x19c8[8],auth[_0x19c8[9]](),controller[_0x19c8[14]]);router[_0x19c8[17]](_0x19c8[12],auth[_0x19c8[9]](),controller[_0x19c8[16]]);router[_0x19c8[19]](_0x19c8[12],auth[_0x19c8[9]](),controller[_0x19c8[18]]);module[_0x19c8[20]]= router
\ No newline at end of file
index d3f0cc7..9692122 100644 (file)
@@ -1 +1 @@
-var _0x4fc8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x75\x73\x74\x6F\x6D\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47"];_0x4fc8[0];var Sequelize=require(_0x4fc8[1]);module[_0x4fc8[2]]= {type:{type:Sequelize.ENUM(_0x4fc8[3],_0x4fc8[4],_0x4fc8[5],_0x4fc8[6]),defaultValue:_0x4fc8[3]},content:{type:Sequelize[_0x4fc8[7]]},key:{type:Sequelize[_0x4fc8[7]]},keyType:{type:Sequelize.ENUM(_0x4fc8[3],_0x4fc8[4],_0x4fc8[5])},keyContent:{type:Sequelize[_0x4fc8[7]]},idField:{type:Sequelize[_0x4fc8[7]]},variableName:{type:Sequelize[_0x4fc8[7]]}}
\ No newline at end of file
+var _0x76a7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x75\x73\x74\x6F\x6D\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47"];_0x76a7[0];var Sequelize=require(_0x76a7[1]);module[_0x76a7[2]]= {type:{type:Sequelize.ENUM(_0x76a7[3],_0x76a7[4],_0x76a7[5],_0x76a7[6]),defaultValue:_0x76a7[3]},content:{type:Sequelize[_0x76a7[7]]},key:{type:Sequelize[_0x76a7[7]]},keyType:{type:Sequelize.ENUM(_0x76a7[3],_0x76a7[4],_0x76a7[5])},keyContent:{type:Sequelize[_0x76a7[7]]},idField:{type:Sequelize[_0x76a7[7]]},variableName:{type:Sequelize[_0x76a7[7]]}}
\ No newline at end of file
index 37f28f4..53be757 100644 (file)
@@ -1 +1 @@
-var _0xd613=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xd613[0];var jsonpatch=require(_0xd613[1]);var rp=require(_0xd613[2]);var moment=require(_0xd613[3]);var BPromise=require(_0xd613[4]);var util=require(_0xd613[5]);var path=require(_0xd613[6]);var sox=require(_0xd613[7]);var ejs=require(_0xd613[8]);var fs=require(_0xd613[9]);var _=require(_0xd613[10]);var squel=require(_0xd613[11]);var crypto=require(_0xd613[12]);var jsforce=require(_0xd613[13]);var toCsv=require(_0xd613[14]);var qs=require(_0xd613[15]);var logger=require(_0xd613[17])(_0xd613[16]);var utils=require(_0xd613[18]);var config=require(_0xd613[19]);var db=require(_0xd613[21])[_0xd613[20]];function respondWithStatusCode(_0x779ax15,_0x779ax16,_0x779ax17){_0x779ax16= _0x779ax16|| 204;return function(_0x779ax18){if(_0x779ax18){logger[_0xd613[24]](_0xd613[22],_0x779ax17,_0x779ax16,_0xd613[23]);logger[_0xd613[26]](_0xd613[25],_0x779ax17,_0x779ax16,_0xd613[23]);return _0x779ax15[_0xd613[27]](_0x779ax16)};return _0x779ax15[_0xd613[29]](304)[_0xd613[28]]()}}function respondWithResult(_0x779ax15,_0x779ax16,_0x779ax17){_0x779ax16= _0x779ax16|| 200;return function(_0x779ax18){if(_0x779ax18){logger[_0xd613[24]](_0xd613[22],_0x779ax17,_0x779ax16,_0xd613[30]);logger[_0xd613[26]](_0xd613[25],_0x779ax17,_0x779ax16,_0xd613[30],JSON[_0xd613[31]](_0x779ax18));return _0x779ax15[_0xd613[29]](_0x779ax16)[_0xd613[32]](_0x779ax18)};return _0x779ax15[_0xd613[29]](304)[_0xd613[28]]()}}function respondWithFilteredResult(_0x779ax15,_0x779ax1b,_0x779ax17){return function(_0x779ax18){if(_0x779ax18){var _0x779ax1c=_0x779ax18[_0xd613[33]],_0x779ax1d=_0x779ax1b[_0xd613[34]],_0x779ax1e=_0x779ax1b[_0xd613[34]]+ _0x779ax1b[_0xd613[35]],_0x779ax16;if(_0x779ax1e>= _0x779ax1c){_0x779ax1e= _0x779ax1c;_0x779ax16= 200}else {_0x779ax16= 206};_0x779ax15[_0xd613[29]](_0x779ax16);logger[_0xd613[24]](_0xd613[22],_0x779ax17,_0x779ax16,_0xd613[36]);logger[_0xd613[26]](_0xd613[25],_0x779ax17,_0x779ax16,_0xd613[30],JSON[_0xd613[31]](_0x779ax18));return _0x779ax15[_0xd613[40]](_0xd613[37],_0x779ax1d+ _0xd613[38]+ _0x779ax1e+ _0xd613[39]+ _0x779ax1c)[_0xd613[32]](_0x779ax18)};return null}}function patchUpdates(_0x779ax20){return function(_0x779ax18){try{jsonpatch[_0xd613[41]](_0x779ax18,_0x779ax20,true)}catch(err){return BPromise[_0xd613[42]](err)};return _0x779ax18[_0xd613[43]]()}}function saveUpdates(_0x779ax22,_0x779ax16,_0x779ax17){return function(_0x779ax18){if(_0x779ax18){return _0x779ax18[_0xd613[46]](_0x779ax22)[_0xd613[45]](function(_0x779ax23){logger[_0xd613[24]](_0xd613[22],_0x779ax17,_0x779ax16,_0xd613[44]);logger[_0xd613[26]](_0xd613[25],_0x779ax17,_0x779ax16,_0xd613[44],JSON[_0xd613[31]](_0x779ax18));return _0x779ax23})};return null}}function removeEntity(_0x779ax15,_0x779ax16,_0x779ax17){return function(_0x779ax18){if(_0x779ax18){return _0x779ax18[_0xd613[48]]()[_0xd613[45]](function(){logger[_0xd613[24]](_0xd613[22],_0x779ax17,_0x779ax16,_0xd613[47]);logger[_0xd613[26]](_0xd613[25],_0x779ax17,_0x779ax16,_0xd613[47],JSON[_0xd613[31]](_0x779ax18));_0x779ax15[_0xd613[29]](204)[_0xd613[28]]()})}}}function handleEntityNotFound(_0x779ax15,_0x779ax16,_0x779ax17){return function(_0x779ax18){if(!_0x779ax18){logger[_0xd613[50]](_0xd613[22],_0x779ax17,404,_0xd613[49]);_0x779ax15[_0xd613[29]](404)[_0xd613[28]]();return null};return _0x779ax18}}function handleError(_0x779ax15,_0x779ax16,_0x779ax17){_0x779ax16= _0x779ax16|| 500;return function(_0x779ax27){logger[_0xd613[50]](_0xd613[22],_0x779ax17,_0x779ax16,JSON[_0xd613[31]](_0x779ax27));delete _0x779ax27[_0xd613[51]];_0x779ax15[_0xd613[29]](_0x779ax16)[_0xd613[52]](_0x779ax27)}}exports[_0xd613[53]]= function(_0x779ax28,_0x779ax15){var _0x779ax1b={},_0x779ax29={};_0x779ax29[_0xd613[54]]= _[_0xd613[57]](db[_0xd613[56]][_0xd613[55]]);_0x779ax29[_0xd613[58]]= _[_0xd613[57]](_0x779ax28[_0xd613[58]]);_0x779ax29[_0xd613[59]]= _[_0xd613[60]](_0x779ax29[_0xd613[54]],_0x779ax29[_0xd613[58]]);_0x779ax1b[_0xd613[61]]= _[_0xd613[60]](_0x779ax29[_0xd613[54]],qs[_0xd613[62]](_0x779ax28[_0xd613[58]][_0xd613[62]]));_0x779ax1b[_0xd613[61]]= (_0x779ax1b[_0xd613[61]][_0xd613[63]])?_0x779ax1b[_0xd613[61]]:_0x779ax29[_0xd613[54]];if(!_0x779ax28[_0xd613[58]][_0xd613[65]](_0xd613[64])){_0x779ax1b[_0xd613[35]]= qs[_0xd613[35]](_0x779ax28[_0xd613[58]][_0xd613[35]]);_0x779ax1b[_0xd613[34]]= qs[_0xd613[34]](_0x779ax28[_0xd613[58]][_0xd613[34]])};_0x779ax1b[_0xd613[66]]= qs[_0xd613[67]](_0x779ax28[_0xd613[58]][_0xd613[67]]);_0x779ax1b[_0xd613[68]]= qs[_0xd613[59]](_[_0xd613[69]](_0x779ax28[_0xd613[58]],_0x779ax29[_0xd613[59]]));if(_0x779ax28[_0xd613[58]][_0xd613[70]]){_0x779ax1b[_0xd613[68]]= _[_0xd613[73]](_0x779ax1b[_0xd613[68]],{$or:_[_0xd613[72]](_0x779ax1b[_0xd613[61]],function(_0x779ax2a){var _0x779ax2b={};_0x779ax2b[_0x779ax2a]= {$like:_0xd613[71]+ _0x779ax28[_0xd613[58]][_0xd613[70]]+ _0xd613[71]};return _0x779ax2b})})};_0x779ax1b= _[_0xd613[73]]({},_0x779ax1b,_0x779ax28[_0xd613[74]]);return db[_0xd613[56]][_0xd613[76]](_0x779ax1b)[_0xd613[45]](respondWithFilteredResult(_0x779ax15,_0x779ax1b,_0xd613[53]))[_0xd613[75]](handleError(_0x779ax15,null,_0xd613[53]))};exports[_0xd613[77]]= function(_0x779ax28,_0x779ax15){var _0x779ax1b={raw:true,where:{id:_0x779ax28[_0xd613[79]][_0xd613[78]]}},_0x779ax29={};_0x779ax29[_0xd613[54]]= _[_0xd613[57]](db[_0xd613[56]][_0xd613[55]]);_0x779ax29[_0xd613[58]]= _[_0xd613[57]](_0x779ax28[_0xd613[58]]);_0x779ax29[_0xd613[59]]= _[_0xd613[60]](_0x779ax29[_0xd613[54]],_0x779ax29[_0xd613[58]]);_0x779ax1b[_0xd613[61]]= _[_0xd613[60]](_0x779ax29[_0xd613[54]],qs[_0xd613[62]](_0x779ax28[_0xd613[58]][_0xd613[62]]));_0x779ax1b[_0xd613[61]]= (_0x779ax1b[_0xd613[61]][_0xd613[63]])?_0x779ax1b[_0xd613[61]]:_0x779ax29[_0xd613[54]];_0x779ax1b= _[_0xd613[73]]({},_0x779ax1b,_0x779ax28[_0xd613[74]]);return db[_0xd613[56]][_0xd613[80]](_0x779ax1b)[_0xd613[45]](handleEntityNotFound(_0x779ax15,null,_0xd613[77]))[_0xd613[45]](respondWithResult(_0x779ax15,null,_0xd613[77]))[_0xd613[75]](handleError(_0x779ax15,null,_0xd613[77]))};exports[_0xd613[81]]= function(_0x779ax28,_0x779ax15){return db[_0xd613[56]][_0xd613[81]](_0x779ax28[_0xd613[82]],{})[_0xd613[45]](respondWithResult(_0x779ax15,201,_0xd613[81]))[_0xd613[75]](handleError(_0x779ax15,null,_0xd613[81]))};exports[_0xd613[46]]= function(_0x779ax28,_0x779ax15){if(_0x779ax28[_0xd613[82]][_0xd613[78]]){delete _0x779ax28[_0xd613[82]][_0xd613[78]]};return db[_0xd613[56]][_0xd613[80]]({where:{id:_0x779ax28[_0xd613[79]][_0xd613[78]]}})[_0xd613[45]](handleEntityNotFound(_0x779ax15,null,_0xd613[46]))[_0xd613[45]](saveUpdates(_0x779ax28[_0xd613[82]],null,_0xd613[46]))[_0xd613[45]](respondWithResult(_0x779ax15,null,_0xd613[46]))[_0xd613[75]](handleError(_0x779ax15,null,_0xd613[46]))};exports[_0xd613[48]]= function(_0x779ax28,_0x779ax15){return db[_0xd613[56]][_0xd613[80]]({where:{id:_0x779ax28[_0xd613[79]][_0xd613[78]]}})[_0xd613[45]](handleEntityNotFound(_0x779ax15,null,_0xd613[48]))[_0xd613[45]](removeEntity(_0x779ax15,null,_0xd613[48]))[_0xd613[75]](handleError(_0x779ax15,null,_0xd613[48]))}
\ No newline at end of file
+var _0xcdf1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xcdf1[0];var jsonpatch=require(_0xcdf1[1]);var rp=require(_0xcdf1[2]);var moment=require(_0xcdf1[3]);var BPromise=require(_0xcdf1[4]);var util=require(_0xcdf1[5]);var path=require(_0xcdf1[6]);var sox=require(_0xcdf1[7]);var ejs=require(_0xcdf1[8]);var fs=require(_0xcdf1[9]);var _=require(_0xcdf1[10]);var squel=require(_0xcdf1[11]);var crypto=require(_0xcdf1[12]);var jsforce=require(_0xcdf1[13]);var toCsv=require(_0xcdf1[14]);var qs=require(_0xcdf1[15]);var logger=require(_0xcdf1[17])(_0xcdf1[16]);var utils=require(_0xcdf1[18]);var config=require(_0xcdf1[19]);var db=require(_0xcdf1[21])[_0xcdf1[20]];function respondWithStatusCode(_0xdd9dx15,_0xdd9dx16,_0xdd9dx17){_0xdd9dx16= _0xdd9dx16|| 204;return function(_0xdd9dx18){if(_0xdd9dx18){logger[_0xcdf1[24]](_0xcdf1[22],_0xdd9dx17,_0xdd9dx16,_0xcdf1[23]);logger[_0xcdf1[26]](_0xcdf1[25],_0xdd9dx17,_0xdd9dx16,_0xcdf1[23]);return _0xdd9dx15[_0xcdf1[27]](_0xdd9dx16)};return _0xdd9dx15[_0xcdf1[29]](304)[_0xcdf1[28]]()}}function respondWithResult(_0xdd9dx15,_0xdd9dx16,_0xdd9dx17){_0xdd9dx16= _0xdd9dx16|| 200;return function(_0xdd9dx18){if(_0xdd9dx18){logger[_0xcdf1[24]](_0xcdf1[22],_0xdd9dx17,_0xdd9dx16,_0xcdf1[30]);logger[_0xcdf1[26]](_0xcdf1[25],_0xdd9dx17,_0xdd9dx16,_0xcdf1[30],JSON[_0xcdf1[31]](_0xdd9dx18));return _0xdd9dx15[_0xcdf1[29]](_0xdd9dx16)[_0xcdf1[32]](_0xdd9dx18)};return _0xdd9dx15[_0xcdf1[29]](304)[_0xcdf1[28]]()}}function respondWithFilteredResult(_0xdd9dx15,_0xdd9dx1b,_0xdd9dx17){return function(_0xdd9dx18){if(_0xdd9dx18){var _0xdd9dx1c=_0xdd9dx18[_0xcdf1[33]],_0xdd9dx1d=_0xdd9dx1b[_0xcdf1[34]],_0xdd9dx1e=_0xdd9dx1b[_0xcdf1[34]]+ _0xdd9dx1b[_0xcdf1[35]],_0xdd9dx16;if(_0xdd9dx1e>= _0xdd9dx1c){_0xdd9dx1e= _0xdd9dx1c;_0xdd9dx16= 200}else {_0xdd9dx16= 206};_0xdd9dx15[_0xcdf1[29]](_0xdd9dx16);logger[_0xcdf1[24]](_0xcdf1[22],_0xdd9dx17,_0xdd9dx16,_0xcdf1[36]);logger[_0xcdf1[26]](_0xcdf1[25],_0xdd9dx17,_0xdd9dx16,_0xcdf1[30],JSON[_0xcdf1[31]](_0xdd9dx18));return _0xdd9dx15[_0xcdf1[40]](_0xcdf1[37],_0xdd9dx1d+ _0xcdf1[38]+ _0xdd9dx1e+ _0xcdf1[39]+ _0xdd9dx1c)[_0xcdf1[32]](_0xdd9dx18)};return null}}function patchUpdates(_0xdd9dx20){return function(_0xdd9dx18){try{jsonpatch[_0xcdf1[41]](_0xdd9dx18,_0xdd9dx20,true)}catch(err){return BPromise[_0xcdf1[42]](err)};return _0xdd9dx18[_0xcdf1[43]]()}}function saveUpdates(_0xdd9dx22,_0xdd9dx16,_0xdd9dx17){return function(_0xdd9dx18){if(_0xdd9dx18){return _0xdd9dx18[_0xcdf1[46]](_0xdd9dx22)[_0xcdf1[45]](function(_0xdd9dx23){logger[_0xcdf1[24]](_0xcdf1[22],_0xdd9dx17,_0xdd9dx16,_0xcdf1[44]);logger[_0xcdf1[26]](_0xcdf1[25],_0xdd9dx17,_0xdd9dx16,_0xcdf1[44],JSON[_0xcdf1[31]](_0xdd9dx18));return _0xdd9dx23})};return null}}function removeEntity(_0xdd9dx15,_0xdd9dx16,_0xdd9dx17){return function(_0xdd9dx18){if(_0xdd9dx18){return _0xdd9dx18[_0xcdf1[48]]()[_0xcdf1[45]](function(){logger[_0xcdf1[24]](_0xcdf1[22],_0xdd9dx17,_0xdd9dx16,_0xcdf1[47]);logger[_0xcdf1[26]](_0xcdf1[25],_0xdd9dx17,_0xdd9dx16,_0xcdf1[47],JSON[_0xcdf1[31]](_0xdd9dx18));_0xdd9dx15[_0xcdf1[29]](204)[_0xcdf1[28]]()})}}}function handleEntityNotFound(_0xdd9dx15,_0xdd9dx16,_0xdd9dx17){return function(_0xdd9dx18){if(!_0xdd9dx18){logger[_0xcdf1[50]](_0xcdf1[22],_0xdd9dx17,404,_0xcdf1[49]);_0xdd9dx15[_0xcdf1[29]](404)[_0xcdf1[28]]();return null};return _0xdd9dx18}}function handleError(_0xdd9dx15,_0xdd9dx16,_0xdd9dx17){_0xdd9dx16= _0xdd9dx16|| 500;return function(_0xdd9dx27){logger[_0xcdf1[50]](_0xcdf1[22],_0xdd9dx17,_0xdd9dx16,JSON[_0xcdf1[31]](_0xdd9dx27));delete _0xdd9dx27[_0xcdf1[51]];_0xdd9dx15[_0xcdf1[29]](_0xdd9dx16)[_0xcdf1[52]](_0xdd9dx27)}}exports[_0xcdf1[53]]= function(_0xdd9dx28,_0xdd9dx15){var _0xdd9dx1b={},_0xdd9dx29={};_0xdd9dx29[_0xcdf1[54]]= _[_0xcdf1[57]](db[_0xcdf1[56]][_0xcdf1[55]]);_0xdd9dx29[_0xcdf1[58]]= _[_0xcdf1[57]](_0xdd9dx28[_0xcdf1[58]]);_0xdd9dx29[_0xcdf1[59]]= _[_0xcdf1[60]](_0xdd9dx29[_0xcdf1[54]],_0xdd9dx29[_0xcdf1[58]]);_0xdd9dx1b[_0xcdf1[61]]= _[_0xcdf1[60]](_0xdd9dx29[_0xcdf1[54]],qs[_0xcdf1[62]](_0xdd9dx28[_0xcdf1[58]][_0xcdf1[62]]));_0xdd9dx1b[_0xcdf1[61]]= (_0xdd9dx1b[_0xcdf1[61]][_0xcdf1[63]])?_0xdd9dx1b[_0xcdf1[61]]:_0xdd9dx29[_0xcdf1[54]];if(!_0xdd9dx28[_0xcdf1[58]][_0xcdf1[65]](_0xcdf1[64])){_0xdd9dx1b[_0xcdf1[35]]= qs[_0xcdf1[35]](_0xdd9dx28[_0xcdf1[58]][_0xcdf1[35]]);_0xdd9dx1b[_0xcdf1[34]]= qs[_0xcdf1[34]](_0xdd9dx28[_0xcdf1[58]][_0xcdf1[34]])};_0xdd9dx1b[_0xcdf1[66]]= qs[_0xcdf1[67]](_0xdd9dx28[_0xcdf1[58]][_0xcdf1[67]]);_0xdd9dx1b[_0xcdf1[68]]= qs[_0xcdf1[59]](_[_0xcdf1[69]](_0xdd9dx28[_0xcdf1[58]],_0xdd9dx29[_0xcdf1[59]]));if(_0xdd9dx28[_0xcdf1[58]][_0xcdf1[70]]){_0xdd9dx1b[_0xcdf1[68]]= _[_0xcdf1[73]](_0xdd9dx1b[_0xcdf1[68]],{$or:_[_0xcdf1[72]](_0xdd9dx1b[_0xcdf1[61]],function(_0xdd9dx2a){var _0xdd9dx2b={};_0xdd9dx2b[_0xdd9dx2a]= {$like:_0xcdf1[71]+ _0xdd9dx28[_0xcdf1[58]][_0xcdf1[70]]+ _0xcdf1[71]};return _0xdd9dx2b})})};_0xdd9dx1b= _[_0xcdf1[73]]({},_0xdd9dx1b,_0xdd9dx28[_0xcdf1[74]]);return db[_0xcdf1[56]][_0xcdf1[76]](_0xdd9dx1b)[_0xcdf1[45]](respondWithFilteredResult(_0xdd9dx15,_0xdd9dx1b,_0xcdf1[53]))[_0xcdf1[75]](handleError(_0xdd9dx15,null,_0xcdf1[53]))};exports[_0xcdf1[77]]= function(_0xdd9dx28,_0xdd9dx15){var _0xdd9dx1b={raw:true,where:{id:_0xdd9dx28[_0xcdf1[79]][_0xcdf1[78]]}},_0xdd9dx29={};_0xdd9dx29[_0xcdf1[54]]= _[_0xcdf1[57]](db[_0xcdf1[56]][_0xcdf1[55]]);_0xdd9dx29[_0xcdf1[58]]= _[_0xcdf1[57]](_0xdd9dx28[_0xcdf1[58]]);_0xdd9dx29[_0xcdf1[59]]= _[_0xcdf1[60]](_0xdd9dx29[_0xcdf1[54]],_0xdd9dx29[_0xcdf1[58]]);_0xdd9dx1b[_0xcdf1[61]]= _[_0xcdf1[60]](_0xdd9dx29[_0xcdf1[54]],qs[_0xcdf1[62]](_0xdd9dx28[_0xcdf1[58]][_0xcdf1[62]]));_0xdd9dx1b[_0xcdf1[61]]= (_0xdd9dx1b[_0xcdf1[61]][_0xcdf1[63]])?_0xdd9dx1b[_0xcdf1[61]]:_0xdd9dx29[_0xcdf1[54]];_0xdd9dx1b= _[_0xcdf1[73]]({},_0xdd9dx1b,_0xdd9dx28[_0xcdf1[74]]);return db[_0xcdf1[56]][_0xcdf1[80]](_0xdd9dx1b)[_0xcdf1[45]](handleEntityNotFound(_0xdd9dx15,null,_0xcdf1[77]))[_0xcdf1[45]](respondWithResult(_0xdd9dx15,null,_0xcdf1[77]))[_0xcdf1[75]](handleError(_0xdd9dx15,null,_0xcdf1[77]))};exports[_0xcdf1[81]]= function(_0xdd9dx28,_0xdd9dx15){return db[_0xcdf1[56]][_0xcdf1[81]](_0xdd9dx28[_0xcdf1[82]],{})[_0xcdf1[45]](respondWithResult(_0xdd9dx15,201,_0xcdf1[81]))[_0xcdf1[75]](handleError(_0xdd9dx15,null,_0xcdf1[81]))};exports[_0xcdf1[46]]= function(_0xdd9dx28,_0xdd9dx15){if(_0xdd9dx28[_0xcdf1[82]][_0xcdf1[78]]){delete _0xdd9dx28[_0xcdf1[82]][_0xcdf1[78]]};return db[_0xcdf1[56]][_0xcdf1[80]]({where:{id:_0xdd9dx28[_0xcdf1[79]][_0xcdf1[78]]}})[_0xcdf1[45]](handleEntityNotFound(_0xdd9dx15,null,_0xcdf1[46]))[_0xcdf1[45]](saveUpdates(_0xdd9dx28[_0xcdf1[82]],null,_0xcdf1[46]))[_0xcdf1[45]](respondWithResult(_0xdd9dx15,null,_0xcdf1[46]))[_0xcdf1[75]](handleError(_0xdd9dx15,null,_0xcdf1[46]))};exports[_0xcdf1[48]]= function(_0xdd9dx28,_0xdd9dx15){return db[_0xcdf1[56]][_0xcdf1[80]]({where:{id:_0xdd9dx28[_0xcdf1[79]][_0xcdf1[78]]}})[_0xcdf1[45]](handleEntityNotFound(_0xdd9dx15,null,_0xcdf1[48]))[_0xcdf1[45]](removeEntity(_0xdd9dx15,null,_0xcdf1[48]))[_0xcdf1[75]](handleError(_0xdd9dx15,null,_0xcdf1[48]))}
\ No newline at end of file
index 78fafba..7ee76ad 100644 (file)
@@ -1 +1 @@
-var _0x8928=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x69\x6E\x74\x5F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x8928[0];var _=require(_0x8928[1]);var util=require(_0x8928[2]);var logger=require(_0x8928[4])(_0x8928[3]);var attributes=require(_0x8928[5]);module[_0x8928[6]]= function(_0x9c84x5,_0x9c84x6){return _0x9c84x5[_0x8928[9]](_0x8928[7],attributes,{tableName:_0x8928[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x92cd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x69\x6E\x74\x5F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x92cd[0];var _=require(_0x92cd[1]);var util=require(_0x92cd[2]);var logger=require(_0x92cd[4])(_0x92cd[3]);var attributes=require(_0x92cd[5]);module[_0x92cd[6]]= function(_0xbce8x5,_0xbce8x6){return _0xbce8x5[_0x92cd[9]](_0x92cd[7],attributes,{tableName:_0x92cd[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 441a40b..d5bc8a5 100644 (file)
@@ -1 +1 @@
-var _0x3cc5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x3cc5[0];var _=require(_0x3cc5[1]);var util=require(_0x3cc5[2]);var moment=require(_0x3cc5[3]);var BPromise=require(_0x3cc5[4]);var db=require(_0x3cc5[6])[_0x3cc5[5]];var utils=require(_0x3cc5[7]);var logger=require(_0x3cc5[9])(_0x3cc5[8]);var jayson=require(_0x3cc5[10]);var client=jayson[_0x3cc5[12]][_0x3cc5[11]]({port:9002});function respondWithRpcPromise(_0xc56axb,_0xc56axc,_0xc56axd){return  new BPromise(function(_0xc56axe,_0xc56axf){return client[_0x3cc5[25]](_0xc56axb,_0xc56axd)[_0x3cc5[24]](function(_0xc56ax11){logger[_0x3cc5[17]](_0x3cc5[13],_0xc56axc,_0x3cc5[16]);logger[_0x3cc5[20]](_0x3cc5[18],_0xc56axc,_0x3cc5[16],JSON[_0x3cc5[19]](_0xc56ax11));if(_0xc56ax11[_0x3cc5[14]]){if(_0xc56ax11[_0x3cc5[14]][_0x3cc5[21]]=== 500){logger[_0x3cc5[14]](_0x3cc5[13],_0xc56axc,_0xc56ax11[_0x3cc5[14]][_0x3cc5[22]]);return _0xc56axf(_0xc56ax11[_0x3cc5[14]][_0x3cc5[22]])};logger[_0x3cc5[14]](_0x3cc5[13],_0xc56axc,_0xc56ax11[_0x3cc5[14]][_0x3cc5[22]]);return _0xc56axe(_0xc56ax11[_0x3cc5[14]][_0x3cc5[22]])}else {logger[_0x3cc5[17]](_0x3cc5[13],_0xc56axc,_0x3cc5[16]);_0xc56axe(_0xc56ax11[_0x3cc5[23]][_0x3cc5[22]])}})[_0x3cc5[15]](function(_0xc56ax10){logger[_0x3cc5[14]](_0x3cc5[13],_0xc56axc,_0xc56ax10);_0xc56axf(_0xc56ax10)})})}
\ No newline at end of file
+var _0x9e4c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9e4c[0];var _=require(_0x9e4c[1]);var util=require(_0x9e4c[2]);var moment=require(_0x9e4c[3]);var BPromise=require(_0x9e4c[4]);var db=require(_0x9e4c[6])[_0x9e4c[5]];var utils=require(_0x9e4c[7]);var logger=require(_0x9e4c[9])(_0x9e4c[8]);var jayson=require(_0x9e4c[10]);var client=jayson[_0x9e4c[12]][_0x9e4c[11]]({port:9002});function respondWithRpcPromise(_0x476dxb,_0x476dxc,_0x476dxd){return  new BPromise(function(_0x476dxe,_0x476dxf){return client[_0x9e4c[25]](_0x476dxb,_0x476dxd)[_0x9e4c[24]](function(_0x476dx11){logger[_0x9e4c[17]](_0x9e4c[13],_0x476dxc,_0x9e4c[16]);logger[_0x9e4c[20]](_0x9e4c[18],_0x476dxc,_0x9e4c[16],JSON[_0x9e4c[19]](_0x476dx11));if(_0x476dx11[_0x9e4c[14]]){if(_0x476dx11[_0x9e4c[14]][_0x9e4c[21]]=== 500){logger[_0x9e4c[14]](_0x9e4c[13],_0x476dxc,_0x476dx11[_0x9e4c[14]][_0x9e4c[22]]);return _0x476dxf(_0x476dx11[_0x9e4c[14]][_0x9e4c[22]])};logger[_0x9e4c[14]](_0x9e4c[13],_0x476dxc,_0x476dx11[_0x9e4c[14]][_0x9e4c[22]]);return _0x476dxe(_0x476dx11[_0x9e4c[14]][_0x9e4c[22]])}else {logger[_0x9e4c[17]](_0x9e4c[13],_0x476dxc,_0x9e4c[16]);_0x476dxe(_0x476dx11[_0x9e4c[23]][_0x9e4c[22]])}})[_0x9e4c[15]](function(_0x476dx10){logger[_0x9e4c[14]](_0x9e4c[13],_0x476dxc,_0x476dx10);_0x476dxf(_0x476dx10)})})}
\ No newline at end of file
index c1fc401..b9f8889 100644 (file)
@@ -1 +1 @@
-var _0xa194=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa194[0];var multer=require(_0xa194[1]);var util=require(_0xa194[2]);var path=require(_0xa194[3]);var express=require(_0xa194[4]);var router=express.Router();var auth=require(_0xa194[5]);var config=require(_0xa194[6]);var controller=require(_0xa194[7]);router[_0xa194[11]](_0xa194[8],auth[_0xa194[9]](),controller[_0xa194[10]]);router[_0xa194[11]](_0xa194[12],auth[_0xa194[9]](),controller[_0xa194[13]]);router[_0xa194[11]](_0xa194[14],auth[_0xa194[9]](),controller[_0xa194[15]]);router[_0xa194[11]](_0xa194[16],auth[_0xa194[9]](),controller[_0xa194[17]]);router[_0xa194[19]](_0xa194[8],auth[_0xa194[9]](),controller[_0xa194[18]]);router[_0xa194[19]](_0xa194[14],auth[_0xa194[9]](),controller[_0xa194[20]]);router[_0xa194[22]](_0xa194[12],auth[_0xa194[9]](),controller[_0xa194[21]]);router[_0xa194[24]](_0xa194[12],auth[_0xa194[9]](),controller[_0xa194[23]]);module[_0xa194[25]]= router
\ No newline at end of file
+var _0xcf74=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xcf74[0];var multer=require(_0xcf74[1]);var util=require(_0xcf74[2]);var path=require(_0xcf74[3]);var express=require(_0xcf74[4]);var router=express.Router();var auth=require(_0xcf74[5]);var config=require(_0xcf74[6]);var controller=require(_0xcf74[7]);router[_0xcf74[11]](_0xcf74[8],auth[_0xcf74[9]](),controller[_0xcf74[10]]);router[_0xcf74[11]](_0xcf74[12],auth[_0xcf74[9]](),controller[_0xcf74[13]]);router[_0xcf74[11]](_0xcf74[14],auth[_0xcf74[9]](),controller[_0xcf74[15]]);router[_0xcf74[11]](_0xcf74[16],auth[_0xcf74[9]](),controller[_0xcf74[17]]);router[_0xcf74[19]](_0xcf74[8],auth[_0xcf74[9]](),controller[_0xcf74[18]]);router[_0xcf74[19]](_0xcf74[14],auth[_0xcf74[9]](),controller[_0xcf74[20]]);router[_0xcf74[22]](_0xcf74[12],auth[_0xcf74[9]](),controller[_0xcf74[21]]);router[_0xcf74[24]](_0xcf74[12],auth[_0xcf74[9]](),controller[_0xcf74[23]]);module[_0xcf74[25]]= router
\ No newline at end of file
index 97d5b21..e199213 100644 (file)
@@ -1 +1 @@
-var _0x109e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69"];_0x109e[0];var Sequelize=require(_0x109e[1]);module[_0x109e[2]]= {name:{type:Sequelize[_0x109e[3]]},description:{type:Sequelize[_0x109e[3]]},username:{type:Sequelize[_0x109e[3]],unique:_0x109e[4]},password:{type:Sequelize[_0x109e[3]]},remoteUri:{type:Sequelize[_0x109e[3]],unique:_0x109e[5]},serverUrl:{type:Sequelize[_0x109e[3]]}}
\ No newline at end of file
+var _0xbdd9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69"];_0xbdd9[0];var Sequelize=require(_0xbdd9[1]);module[_0xbdd9[2]]= {name:{type:Sequelize[_0xbdd9[3]]},description:{type:Sequelize[_0xbdd9[3]]},username:{type:Sequelize[_0xbdd9[3]],unique:_0xbdd9[4]},password:{type:Sequelize[_0xbdd9[3]]},remoteUri:{type:Sequelize[_0xbdd9[3]],unique:_0xbdd9[5]},serverUrl:{type:Sequelize[_0xbdd9[3]]}}
\ No newline at end of file
index 2911733..6459945 100644 (file)
@@ -1 +1 @@
-var _0xe4d7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x79\x70\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x6D\x6F\x64\x75\x6C\x65\x5F\x66\x69\x65\x6C\x64\x73","\x76\x61\x6C\x75\x65\x73","\x6C\x61\x62\x65\x6C","\x63\x68\x6F\x69\x63\x65\x73","\x76\x61\x6C\x75\x65","\x50\x4F\x53\x54","\x25\x73\x25\x73","\x2F\x73\x65\x72\x76\x69\x63\x65\x2F\x76\x34\x5F\x31\x2F\x72\x65\x73\x74\x2E\x70\x68\x70","\x66\x6F\x72\x6D\x61\x74","\x67\x65\x74\x5F\x6D\x6F\x64\x75\x6C\x65\x5F\x66\x69\x65\x6C\x64\x73","\x4A\x53\x4F\x4E","\x43\x61\x6C\x6C\x73","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x6C\x6F\x67\x69\x6E","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x50\x4C\x41\x49\x4E","\x78\x43\x41\x4C\x4C\x59\x20\x4D\x6F\x74\x69\x6F\x6E\x20\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E"];_0xe4d7[0];var jsonpatch=require(_0xe4d7[1]);var rp=require(_0xe4d7[2]);var moment=require(_0xe4d7[3]);var BPromise=require(_0xe4d7[4]);var util=require(_0xe4d7[5]);var path=require(_0xe4d7[6]);var sox=require(_0xe4d7[7]);var ejs=require(_0xe4d7[8]);var fs=require(_0xe4d7[9]);var _=require(_0xe4d7[10]);var squel=require(_0xe4d7[11]);var crypto=require(_0xe4d7[12]);var jsforce=require(_0xe4d7[13]);var toCsv=require(_0xe4d7[14]);var qs=require(_0xe4d7[15]);var logger=require(_0xe4d7[17])(_0xe4d7[16]);var utils=require(_0xe4d7[18]);var config=require(_0xe4d7[19]);var db=require(_0xe4d7[21])[_0xe4d7[20]];var integrations=require(_0xe4d7[22]);var jayson=require(_0xe4d7[23]);var client=jayson[_0xe4d7[25]][_0xe4d7[24]]({port:9002});function respondWithRpcPromise(_0xc05cx18,_0xc05cx19,_0xc05cx1a){return  new BPromise(function(_0xc05cx1b,_0xc05cx1c){return client[_0xe4d7[38]](_0xc05cx18,_0xc05cx1a)[_0xe4d7[37]](function(_0xc05cx1e){logger[_0xe4d7[30]](_0xe4d7[26],_0xc05cx19,_0xe4d7[29]);logger[_0xe4d7[33]](_0xe4d7[31],_0xc05cx19,_0xe4d7[29],JSON[_0xe4d7[32]](_0xc05cx1e));if(_0xc05cx1e[_0xe4d7[27]]){if(_0xc05cx1e[_0xe4d7[27]][_0xe4d7[34]]=== 500){logger[_0xe4d7[27]](_0xe4d7[26],_0xc05cx19,_0xc05cx1e[_0xe4d7[27]][_0xe4d7[35]]);return _0xc05cx1c(_0xc05cx1e[_0xe4d7[27]][_0xe4d7[35]])};logger[_0xe4d7[27]](_0xe4d7[26],_0xc05cx19,_0xc05cx1e[_0xe4d7[27]][_0xe4d7[35]]);return _0xc05cx1b(_0xc05cx1e[_0xe4d7[27]][_0xe4d7[35]])}else {logger[_0xe4d7[30]](_0xe4d7[26],_0xc05cx19,_0xe4d7[29]);_0xc05cx1b(_0xc05cx1e[_0xe4d7[36]][_0xe4d7[35]])}})[_0xe4d7[28]](function(_0xc05cx1d){logger[_0xe4d7[27]](_0xe4d7[26],_0xc05cx19,_0xc05cx1d);_0xc05cx1c(_0xc05cx1d)})})}function respondWithStatusCode(_0xc05cx1e,_0xc05cx20,_0xc05cx19){_0xc05cx20= _0xc05cx20|| 204;return function(_0xc05cx21){if(_0xc05cx21){logger[_0xe4d7[30]](_0xe4d7[31],_0xc05cx19,_0xc05cx20,_0xe4d7[39]);logger[_0xe4d7[33]](_0xe4d7[40],_0xc05cx19,_0xc05cx20,_0xe4d7[39]);return _0xc05cx1e[_0xe4d7[41]](_0xc05cx20)};return _0xc05cx1e[_0xe4d7[43]](304)[_0xe4d7[42]]()}}function respondWithResult(_0xc05cx1e,_0xc05cx20,_0xc05cx19){_0xc05cx20= _0xc05cx20|| 200;return function(_0xc05cx21){if(_0xc05cx21){logger[_0xe4d7[30]](_0xe4d7[31],_0xc05cx19,_0xc05cx20,_0xe4d7[44]);logger[_0xe4d7[33]](_0xe4d7[40],_0xc05cx19,_0xc05cx20,_0xe4d7[44],JSON[_0xe4d7[32]](_0xc05cx21));return _0xc05cx1e[_0xe4d7[43]](_0xc05cx20)[_0xe4d7[45]](_0xc05cx21)};return _0xc05cx1e[_0xe4d7[43]](304)[_0xe4d7[42]]()}}function respondWithFilteredResult(_0xc05cx1e,_0xc05cx24,_0xc05cx19){return function(_0xc05cx21){if(_0xc05cx21){var _0xc05cx25=_0xc05cx21[_0xe4d7[46]],_0xc05cx26=_0xc05cx24[_0xe4d7[47]],_0xc05cx27=_0xc05cx24[_0xe4d7[47]]+ _0xc05cx24[_0xe4d7[48]],_0xc05cx20;if(_0xc05cx27>= _0xc05cx25){_0xc05cx27= _0xc05cx25;_0xc05cx20= 200}else {_0xc05cx20= 206};_0xc05cx1e[_0xe4d7[43]](_0xc05cx20);logger[_0xe4d7[30]](_0xe4d7[31],_0xc05cx19,_0xc05cx20,_0xe4d7[49]);logger[_0xe4d7[33]](_0xe4d7[40],_0xc05cx19,_0xc05cx20,_0xe4d7[44],JSON[_0xe4d7[32]](_0xc05cx21));return _0xc05cx1e[_0xe4d7[53]](_0xe4d7[50],_0xc05cx26+ _0xe4d7[51]+ _0xc05cx27+ _0xe4d7[52]+ _0xc05cx25)[_0xe4d7[45]](_0xc05cx21)};return null}}function patchUpdates(_0xc05cx29){return function(_0xc05cx21){try{jsonpatch[_0xe4d7[54]](_0xc05cx21,_0xc05cx29,true)}catch(err){return BPromise[_0xe4d7[55]](err)};return _0xc05cx21[_0xe4d7[56]]()}}function saveUpdates(_0xc05cx2b,_0xc05cx20,_0xc05cx19){return function(_0xc05cx21){if(_0xc05cx21){return _0xc05cx21[_0xe4d7[58]](_0xc05cx2b)[_0xe4d7[37]](function(_0xc05cx2c){logger[_0xe4d7[30]](_0xe4d7[31],_0xc05cx19,_0xc05cx20,_0xe4d7[57]);logger[_0xe4d7[33]](_0xe4d7[40],_0xc05cx19,_0xc05cx20,_0xe4d7[57],JSON[_0xe4d7[32]](_0xc05cx21));return _0xc05cx2c})};return null}}function removeEntity(_0xc05cx1e,_0xc05cx20,_0xc05cx19){return function(_0xc05cx21){if(_0xc05cx21){return _0xc05cx21[_0xe4d7[60]]()[_0xe4d7[37]](function(){logger[_0xe4d7[30]](_0xe4d7[31],_0xc05cx19,_0xc05cx20,_0xe4d7[59]);logger[_0xe4d7[33]](_0xe4d7[40],_0xc05cx19,_0xc05cx20,_0xe4d7[59],JSON[_0xe4d7[32]](_0xc05cx21));_0xc05cx1e[_0xe4d7[43]](204)[_0xe4d7[42]]()})}}}function handleEntityNotFound(_0xc05cx1e,_0xc05cx20,_0xc05cx19){return function(_0xc05cx21){if(!_0xc05cx21){logger[_0xe4d7[27]](_0xe4d7[31],_0xc05cx19,404,_0xe4d7[61]);_0xc05cx1e[_0xe4d7[43]](404)[_0xe4d7[42]]();return null};return _0xc05cx21}}function handleError(_0xc05cx1e,_0xc05cx20,_0xc05cx19){_0xc05cx20= _0xc05cx20|| 500;return function(_0xc05cx1d){logger[_0xe4d7[27]](_0xe4d7[31],_0xc05cx19,_0xc05cx20,JSON[_0xe4d7[32]](_0xc05cx1d));delete _0xc05cx1d[_0xe4d7[62]];_0xc05cx1e[_0xe4d7[43]](_0xc05cx20)[_0xe4d7[63]](_0xc05cx1d)}}exports[_0xe4d7[64]]= function(_0xc05cx1a,_0xc05cx1e){var _0xc05cx24={},_0xc05cx30={};_0xc05cx30[_0xe4d7[65]]= _[_0xe4d7[68]](db[_0xe4d7[67]][_0xe4d7[66]]);_0xc05cx30[_0xe4d7[69]]= _[_0xe4d7[68]](_0xc05cx1a[_0xe4d7[69]]);_0xc05cx30[_0xe4d7[70]]= _[_0xe4d7[71]](_0xc05cx30[_0xe4d7[65]],_0xc05cx30[_0xe4d7[69]]);_0xc05cx24[_0xe4d7[72]]= _[_0xe4d7[71]](_0xc05cx30[_0xe4d7[65]],qs[_0xe4d7[73]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[73]]));_0xc05cx24[_0xe4d7[72]]= (_0xc05cx24[_0xe4d7[72]][_0xe4d7[74]])?_0xc05cx24[_0xe4d7[72]]:_0xc05cx30[_0xe4d7[65]];if(!_0xc05cx1a[_0xe4d7[69]][_0xe4d7[76]](_0xe4d7[75])){_0xc05cx24[_0xe4d7[48]]= qs[_0xe4d7[48]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[48]]);_0xc05cx24[_0xe4d7[47]]= qs[_0xe4d7[47]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[47]])};_0xc05cx24[_0xe4d7[77]]= qs[_0xe4d7[78]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[78]]);_0xc05cx24[_0xe4d7[79]]= qs[_0xe4d7[70]](_[_0xe4d7[80]](_0xc05cx1a[_0xe4d7[69]],_0xc05cx30[_0xe4d7[70]]));if(_0xc05cx1a[_0xe4d7[69]][_0xe4d7[81]]){_0xc05cx24[_0xe4d7[79]]= _[_0xe4d7[84]](_0xc05cx24[_0xe4d7[79]],{$or:_[_0xe4d7[83]](_0xc05cx24[_0xe4d7[72]],function(_0xc05cx31){var _0xc05cx32={};_0xc05cx32[_0xc05cx31]= {$like:_0xe4d7[82]+ _0xc05cx1a[_0xe4d7[69]][_0xe4d7[81]]+ _0xe4d7[82]};return _0xc05cx32})})};_0xc05cx24= _[_0xe4d7[84]]({},_0xc05cx24,_0xc05cx1a[_0xe4d7[85]]);return db[_0xe4d7[67]][_0xe4d7[86]](_0xc05cx24)[_0xe4d7[37]](respondWithFilteredResult(_0xc05cx1e,_0xc05cx24,_0xe4d7[64]))[_0xe4d7[28]](handleError(_0xc05cx1e,null,_0xe4d7[64]))};exports[_0xe4d7[87]]= function(_0xc05cx1a,_0xc05cx1e){var _0xc05cx24={raw:false,where:{id:_0xc05cx1a[_0xe4d7[89]][_0xe4d7[88]]}},_0xc05cx30={};_0xc05cx30[_0xe4d7[65]]= _[_0xe4d7[68]](db[_0xe4d7[67]][_0xe4d7[66]]);_0xc05cx30[_0xe4d7[69]]= _[_0xe4d7[68]](_0xc05cx1a[_0xe4d7[69]]);_0xc05cx30[_0xe4d7[70]]= _[_0xe4d7[71]](_0xc05cx30[_0xe4d7[65]],_0xc05cx30[_0xe4d7[69]]);_0xc05cx24[_0xe4d7[72]]= _[_0xe4d7[71]](_0xc05cx30[_0xe4d7[65]],qs[_0xe4d7[73]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[73]]));_0xc05cx24[_0xe4d7[72]]= (_0xc05cx24[_0xe4d7[72]][_0xe4d7[74]])?_0xc05cx24[_0xe4d7[72]]:_0xc05cx30[_0xe4d7[65]];_0xc05cx24= _[_0xe4d7[84]]({},_0xc05cx24,_0xc05cx1a[_0xe4d7[85]]);return db[_0xe4d7[67]][_0xe4d7[90]](_0xc05cx24)[_0xe4d7[37]](handleEntityNotFound(_0xc05cx1e,null,_0xe4d7[87]))[_0xe4d7[37]](respondWithResult(_0xc05cx1e,null,_0xe4d7[87]))[_0xe4d7[28]](handleError(_0xc05cx1e,null,_0xe4d7[87]))};exports[_0xe4d7[91]]= function(_0xc05cx1a,_0xc05cx1e){return db[_0xe4d7[67]][_0xe4d7[91]](_0xc05cx1a[_0xe4d7[92]],{})[_0xe4d7[37]](respondWithResult(_0xc05cx1e,201,_0xe4d7[91]))[_0xe4d7[28]](handleError(_0xc05cx1e,null,_0xe4d7[91]))};exports[_0xe4d7[58]]= function(_0xc05cx1a,_0xc05cx1e){if(_0xc05cx1a[_0xe4d7[92]][_0xe4d7[88]]){delete _0xc05cx1a[_0xe4d7[92]][_0xe4d7[88]]};return db[_0xe4d7[67]][_0xe4d7[90]]({where:{id:_0xc05cx1a[_0xe4d7[89]][_0xe4d7[88]]}})[_0xe4d7[37]](handleEntityNotFound(_0xc05cx1e,null,_0xe4d7[58]))[_0xe4d7[37]](saveUpdates(_0xc05cx1a[_0xe4d7[92]],null,_0xe4d7[58]))[_0xe4d7[37]](respondWithResult(_0xc05cx1e,null,_0xe4d7[58]))[_0xe4d7[28]](handleError(_0xc05cx1e,null,_0xe4d7[58]))};exports[_0xe4d7[60]]= function(_0xc05cx1a,_0xc05cx1e){return db[_0xe4d7[67]][_0xe4d7[90]]({where:{id:_0xc05cx1a[_0xe4d7[89]][_0xe4d7[88]]}})[_0xe4d7[37]](handleEntityNotFound(_0xc05cx1e,null,_0xe4d7[60]))[_0xe4d7[37]](removeEntity(_0xc05cx1e,null,_0xe4d7[60]))[_0xe4d7[28]](handleError(_0xc05cx1e,null,_0xe4d7[60]))};exports[_0xe4d7[93]]= function(_0xc05cx1a,_0xc05cx21,_0xc05cx33){var _0xc05cx24={};var _0xc05cx30={};var _0xc05cx34;var _0xc05cx25;return db[_0xe4d7[67]][_0xe4d7[95]]({where:{id:_0xc05cx1a[_0xe4d7[89]][_0xe4d7[88]]}})[_0xe4d7[37]](handleEntityNotFound(_0xc05cx21,null,_0xe4d7[93]))[_0xe4d7[37]](function(_0xc05cx21){if(_0xc05cx21){_0xc05cx34= _0xc05cx21;_0xc05cx30[_0xe4d7[65]]= _[_0xe4d7[68]](db[_0xe4d7[94]][_0xe4d7[66]]);_0xc05cx30[_0xe4d7[69]]= _[_0xe4d7[68]](_0xc05cx1a[_0xe4d7[69]]);_0xc05cx30[_0xe4d7[70]]= _[_0xe4d7[71]](_0xc05cx30[_0xe4d7[65]],_0xc05cx30[_0xe4d7[69]]);_0xc05cx24[_0xe4d7[72]]= _[_0xe4d7[71]](_0xc05cx30[_0xe4d7[65]],qs[_0xe4d7[73]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[73]]));_0xc05cx24[_0xe4d7[72]]= (_0xc05cx24[_0xe4d7[72]][_0xe4d7[74]])?_0xc05cx24[_0xe4d7[72]]:_0xc05cx30[_0xe4d7[65]];_0xc05cx24[_0xe4d7[77]]= qs[_0xe4d7[78]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[78]]);_0xc05cx24[_0xe4d7[79]]= qs[_0xe4d7[70]](_[_0xe4d7[80]](_0xc05cx1a[_0xe4d7[69]],_0xc05cx30[_0xe4d7[70]]));if(_0xc05cx1a[_0xe4d7[69]][_0xe4d7[81]]){_0xc05cx24[_0xe4d7[79]]= _[_0xe4d7[84]](_0xc05cx24[_0xe4d7[79]],{$or:_[_0xe4d7[83]](_0xc05cx24[_0xe4d7[72]],function(_0xc05cx31){var _0xc05cx32={};_0xc05cx32[_0xc05cx31]= {$like:_0xe4d7[82]+ _0xc05cx1a[_0xe4d7[69]][_0xe4d7[81]]+ _0xe4d7[82]};return _0xc05cx32})})};_0xc05cx24= _[_0xe4d7[84]]({},_0xc05cx24,_0xc05cx1a[_0xe4d7[85]]);return _0xc05cx34[_0xe4d7[93]](_0xc05cx24)}})[_0xe4d7[37]](function(_0xc05cx36){if(_0xc05cx36){_0xc05cx25= _0xc05cx36[_0xe4d7[74]];if(!_0xc05cx1a[_0xe4d7[69]][_0xe4d7[76]](_0xe4d7[75])){_0xc05cx24[_0xe4d7[48]]= qs[_0xe4d7[48]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[48]]);_0xc05cx24[_0xe4d7[47]]= qs[_0xe4d7[47]](_0xc05cx1a[_0xe4d7[69]][_0xe4d7[47]])};return _0xc05cx34[_0xe4d7[93]](_0xc05cx24)}})[_0xe4d7[37]](function(_0xc05cx35){return _0xc05cx35?{count:_0xc05cx25,rows:_0xc05cx35}:null})[_0xe4d7[37]](respondWithResult(_0xc05cx21,null,_0xe4d7[93]))[_0xe4d7[28]](handleError(_0xc05cx21,null,_0xe4d7[93]))};exports[_0xe4d7[96]]= function(_0xc05cx1a,_0xc05cx1e,_0xc05cx33){if(_0xc05cx1a[_0xe4d7[92]][_0xe4d7[88]]){delete _0xc05cx1a[_0xe4d7[92]][_0xe4d7[88]]};return db[_0xe4d7[67]][_0xe4d7[95]]({where:{id:_0xc05cx1a[_0xe4d7[89]][_0xe4d7[88]]}})[_0xe4d7[37]](handleEntityNotFound(_0xc05cx1e,null,_0xe4d7[96]))[_0xe4d7[37]](function(_0xc05cx21){if(_0xc05cx21){_0xc05cx1a[_0xe4d7[92]][_0xe4d7[97]]= _0xc05cx21[_0xe4d7[88]];_0xc05cx1a[_0xe4d7[92]][_0xe4d7[98]]= integrations[_0xe4d7[101]](_0xc05cx1a[_0xe4d7[92]][_0xe4d7[99]],_0xc05cx1a[_0xe4d7[92]][_0xe4d7[100]]);_0xc05cx1a[_0xe4d7[92]][_0xe4d7[102]]= integrations[_0xe4d7[103]](_0xc05cx1a[_0xe4d7[92]][_0xe4d7[99]],_0xc05cx1a[_0xe4d7[92]][_0xe4d7[100]]);return db[_0xe4d7[94]][_0xe4d7[91]](_0xc05cx1a[_0xe4d7[92]],{include:[{model:db[_0xe4d7[104]],as:_0xe4d7[98]},{model:db[_0xe4d7[104]],as:_0xe4d7[102]}]})};return null})[_0xe4d7[37]](respondWithResult(_0xc05cx1e,null,_0xe4d7[96]))[_0xe4d7[28]](handleError(_0xc05cx1e,null,_0xe4d7[96]))};exports[_0xe4d7[105]]= function(_0xc05cx1a,_0xc05cx1e,_0xc05cx33){var _0xc05cx37;return db[_0xe4d7[67]][_0xe4d7[95]]({where:{id:_0xc05cx1a[_0xe4d7[89]][_0xe4d7[88]]},attributes:[_0xe4d7[88],_0xe4d7[120],_0xe4d7[121],_0xe4d7[118]]})[_0xe4d7[37]](handleEntityNotFound(_0xc05cx1e,null,_0xe4d7[105]))[_0xe4d7[37]](function(_0xc05cx21){if(_0xc05cx21){_0xc05cx37= _0xc05cx21[_0xe4d7[118]];return rp({method:_0xe4d7[111],uri:util[_0xe4d7[114]](_0xe4d7[112],_0xc05cx37,_0xe4d7[113]),json:true,form:{method:_0xe4d7[119],input_type:_0xe4d7[116],response_type:_0xe4d7[116],rest_data:JSON[_0xe4d7[32]]({user_auth:{user_name:_0xc05cx21[_0xe4d7[120]],password:_0xc05cx21[_0xe4d7[121]],encryption:_0xe4d7[122]},application:_0xe4d7[123]})}})}})[_0xe4d7[37]](function(_0xc05cx21){if(_0xc05cx21){return rp({method:_0xe4d7[111],uri:util[_0xe4d7[114]](_0xe4d7[112],_0xc05cx37,_0xe4d7[113]),json:true,form:{method:_0xe4d7[115],input_type:_0xe4d7[116],response_type:_0xe4d7[116],rest_data:JSON[_0xe4d7[32]]({session:_0xc05cx21[_0xe4d7[88]],module_name:_0xe4d7[117]})}})}})[_0xe4d7[37]](function(_0xc05cx21){if(_0xc05cx21){var _0xc05cx38=_[_0xe4d7[107]](_0xc05cx21[_0xe4d7[106]]);return {count:_0xc05cx38[_0xe4d7[74]],rows:_[_0xe4d7[83]](_0xc05cx38,function(_0xc05cx39){return {id:_0xc05cx39[_0xe4d7[62]],name:_0xc05cx39[_0xe4d7[108]],custom:_0xc05cx39[_0xe4d7[109]]?true:false,options:_0xc05cx39[_0xe4d7[85]]?_[_0xe4d7[83]](_[_0xe4d7[107]](_0xc05cx39[_0xe4d7[85]]),function(_0xc05cx39){return {name:_0xc05cx39[_0xe4d7[110]],value:_0xc05cx39[_0xe4d7[62]]}}):[]}})}}})[_0xe4d7[37]](respondWithResult(_0xc05cx1e,null,_0xe4d7[105]))[_0xe4d7[28]](handleError(_0xc05cx1e,null,_0xe4d7[105]))}
\ No newline at end of file
+var _0xb0f0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x79\x70\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x6D\x6F\x64\x75\x6C\x65\x5F\x66\x69\x65\x6C\x64\x73","\x76\x61\x6C\x75\x65\x73","\x6C\x61\x62\x65\x6C","\x63\x68\x6F\x69\x63\x65\x73","\x76\x61\x6C\x75\x65","\x50\x4F\x53\x54","\x25\x73\x25\x73","\x2F\x73\x65\x72\x76\x69\x63\x65\x2F\x76\x34\x5F\x31\x2F\x72\x65\x73\x74\x2E\x70\x68\x70","\x66\x6F\x72\x6D\x61\x74","\x67\x65\x74\x5F\x6D\x6F\x64\x75\x6C\x65\x5F\x66\x69\x65\x6C\x64\x73","\x4A\x53\x4F\x4E","\x43\x61\x6C\x6C\x73","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x6C\x6F\x67\x69\x6E","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x50\x4C\x41\x49\x4E","\x78\x43\x41\x4C\x4C\x59\x20\x4D\x6F\x74\x69\x6F\x6E\x20\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E"];_0xb0f0[0];var jsonpatch=require(_0xb0f0[1]);var rp=require(_0xb0f0[2]);var moment=require(_0xb0f0[3]);var BPromise=require(_0xb0f0[4]);var util=require(_0xb0f0[5]);var path=require(_0xb0f0[6]);var sox=require(_0xb0f0[7]);var ejs=require(_0xb0f0[8]);var fs=require(_0xb0f0[9]);var _=require(_0xb0f0[10]);var squel=require(_0xb0f0[11]);var crypto=require(_0xb0f0[12]);var jsforce=require(_0xb0f0[13]);var toCsv=require(_0xb0f0[14]);var qs=require(_0xb0f0[15]);var logger=require(_0xb0f0[17])(_0xb0f0[16]);var utils=require(_0xb0f0[18]);var config=require(_0xb0f0[19]);var db=require(_0xb0f0[21])[_0xb0f0[20]];var integrations=require(_0xb0f0[22]);var jayson=require(_0xb0f0[23]);var client=jayson[_0xb0f0[25]][_0xb0f0[24]]({port:9002});function respondWithRpcPromise(_0x4050x18,_0x4050x19,_0x4050x1a){return  new BPromise(function(_0x4050x1b,_0x4050x1c){return client[_0xb0f0[38]](_0x4050x18,_0x4050x1a)[_0xb0f0[37]](function(_0x4050x1e){logger[_0xb0f0[30]](_0xb0f0[26],_0x4050x19,_0xb0f0[29]);logger[_0xb0f0[33]](_0xb0f0[31],_0x4050x19,_0xb0f0[29],JSON[_0xb0f0[32]](_0x4050x1e));if(_0x4050x1e[_0xb0f0[27]]){if(_0x4050x1e[_0xb0f0[27]][_0xb0f0[34]]=== 500){logger[_0xb0f0[27]](_0xb0f0[26],_0x4050x19,_0x4050x1e[_0xb0f0[27]][_0xb0f0[35]]);return _0x4050x1c(_0x4050x1e[_0xb0f0[27]][_0xb0f0[35]])};logger[_0xb0f0[27]](_0xb0f0[26],_0x4050x19,_0x4050x1e[_0xb0f0[27]][_0xb0f0[35]]);return _0x4050x1b(_0x4050x1e[_0xb0f0[27]][_0xb0f0[35]])}else {logger[_0xb0f0[30]](_0xb0f0[26],_0x4050x19,_0xb0f0[29]);_0x4050x1b(_0x4050x1e[_0xb0f0[36]][_0xb0f0[35]])}})[_0xb0f0[28]](function(_0x4050x1d){logger[_0xb0f0[27]](_0xb0f0[26],_0x4050x19,_0x4050x1d);_0x4050x1c(_0x4050x1d)})})}function respondWithStatusCode(_0x4050x1e,_0x4050x20,_0x4050x19){_0x4050x20= _0x4050x20|| 204;return function(_0x4050x21){if(_0x4050x21){logger[_0xb0f0[30]](_0xb0f0[31],_0x4050x19,_0x4050x20,_0xb0f0[39]);logger[_0xb0f0[33]](_0xb0f0[40],_0x4050x19,_0x4050x20,_0xb0f0[39]);return _0x4050x1e[_0xb0f0[41]](_0x4050x20)};return _0x4050x1e[_0xb0f0[43]](304)[_0xb0f0[42]]()}}function respondWithResult(_0x4050x1e,_0x4050x20,_0x4050x19){_0x4050x20= _0x4050x20|| 200;return function(_0x4050x21){if(_0x4050x21){logger[_0xb0f0[30]](_0xb0f0[31],_0x4050x19,_0x4050x20,_0xb0f0[44]);logger[_0xb0f0[33]](_0xb0f0[40],_0x4050x19,_0x4050x20,_0xb0f0[44],JSON[_0xb0f0[32]](_0x4050x21));return _0x4050x1e[_0xb0f0[43]](_0x4050x20)[_0xb0f0[45]](_0x4050x21)};return _0x4050x1e[_0xb0f0[43]](304)[_0xb0f0[42]]()}}function respondWithFilteredResult(_0x4050x1e,_0x4050x24,_0x4050x19){return function(_0x4050x21){if(_0x4050x21){var _0x4050x25=_0x4050x21[_0xb0f0[46]],_0x4050x26=_0x4050x24[_0xb0f0[47]],_0x4050x27=_0x4050x24[_0xb0f0[47]]+ _0x4050x24[_0xb0f0[48]],_0x4050x20;if(_0x4050x27>= _0x4050x25){_0x4050x27= _0x4050x25;_0x4050x20= 200}else {_0x4050x20= 206};_0x4050x1e[_0xb0f0[43]](_0x4050x20);logger[_0xb0f0[30]](_0xb0f0[31],_0x4050x19,_0x4050x20,_0xb0f0[49]);logger[_0xb0f0[33]](_0xb0f0[40],_0x4050x19,_0x4050x20,_0xb0f0[44],JSON[_0xb0f0[32]](_0x4050x21));return _0x4050x1e[_0xb0f0[53]](_0xb0f0[50],_0x4050x26+ _0xb0f0[51]+ _0x4050x27+ _0xb0f0[52]+ _0x4050x25)[_0xb0f0[45]](_0x4050x21)};return null}}function patchUpdates(_0x4050x29){return function(_0x4050x21){try{jsonpatch[_0xb0f0[54]](_0x4050x21,_0x4050x29,true)}catch(err){return BPromise[_0xb0f0[55]](err)};return _0x4050x21[_0xb0f0[56]]()}}function saveUpdates(_0x4050x2b,_0x4050x20,_0x4050x19){return function(_0x4050x21){if(_0x4050x21){return _0x4050x21[_0xb0f0[58]](_0x4050x2b)[_0xb0f0[37]](function(_0x4050x2c){logger[_0xb0f0[30]](_0xb0f0[31],_0x4050x19,_0x4050x20,_0xb0f0[57]);logger[_0xb0f0[33]](_0xb0f0[40],_0x4050x19,_0x4050x20,_0xb0f0[57],JSON[_0xb0f0[32]](_0x4050x21));return _0x4050x2c})};return null}}function removeEntity(_0x4050x1e,_0x4050x20,_0x4050x19){return function(_0x4050x21){if(_0x4050x21){return _0x4050x21[_0xb0f0[60]]()[_0xb0f0[37]](function(){logger[_0xb0f0[30]](_0xb0f0[31],_0x4050x19,_0x4050x20,_0xb0f0[59]);logger[_0xb0f0[33]](_0xb0f0[40],_0x4050x19,_0x4050x20,_0xb0f0[59],JSON[_0xb0f0[32]](_0x4050x21));_0x4050x1e[_0xb0f0[43]](204)[_0xb0f0[42]]()})}}}function handleEntityNotFound(_0x4050x1e,_0x4050x20,_0x4050x19){return function(_0x4050x21){if(!_0x4050x21){logger[_0xb0f0[27]](_0xb0f0[31],_0x4050x19,404,_0xb0f0[61]);_0x4050x1e[_0xb0f0[43]](404)[_0xb0f0[42]]();return null};return _0x4050x21}}function handleError(_0x4050x1e,_0x4050x20,_0x4050x19){_0x4050x20= _0x4050x20|| 500;return function(_0x4050x1d){logger[_0xb0f0[27]](_0xb0f0[31],_0x4050x19,_0x4050x20,JSON[_0xb0f0[32]](_0x4050x1d));delete _0x4050x1d[_0xb0f0[62]];_0x4050x1e[_0xb0f0[43]](_0x4050x20)[_0xb0f0[63]](_0x4050x1d)}}exports[_0xb0f0[64]]= function(_0x4050x1a,_0x4050x1e){var _0x4050x24={},_0x4050x30={};_0x4050x30[_0xb0f0[65]]= _[_0xb0f0[68]](db[_0xb0f0[67]][_0xb0f0[66]]);_0x4050x30[_0xb0f0[69]]= _[_0xb0f0[68]](_0x4050x1a[_0xb0f0[69]]);_0x4050x30[_0xb0f0[70]]= _[_0xb0f0[71]](_0x4050x30[_0xb0f0[65]],_0x4050x30[_0xb0f0[69]]);_0x4050x24[_0xb0f0[72]]= _[_0xb0f0[71]](_0x4050x30[_0xb0f0[65]],qs[_0xb0f0[73]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[73]]));_0x4050x24[_0xb0f0[72]]= (_0x4050x24[_0xb0f0[72]][_0xb0f0[74]])?_0x4050x24[_0xb0f0[72]]:_0x4050x30[_0xb0f0[65]];if(!_0x4050x1a[_0xb0f0[69]][_0xb0f0[76]](_0xb0f0[75])){_0x4050x24[_0xb0f0[48]]= qs[_0xb0f0[48]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[48]]);_0x4050x24[_0xb0f0[47]]= qs[_0xb0f0[47]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[47]])};_0x4050x24[_0xb0f0[77]]= qs[_0xb0f0[78]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[78]]);_0x4050x24[_0xb0f0[79]]= qs[_0xb0f0[70]](_[_0xb0f0[80]](_0x4050x1a[_0xb0f0[69]],_0x4050x30[_0xb0f0[70]]));if(_0x4050x1a[_0xb0f0[69]][_0xb0f0[81]]){_0x4050x24[_0xb0f0[79]]= _[_0xb0f0[84]](_0x4050x24[_0xb0f0[79]],{$or:_[_0xb0f0[83]](_0x4050x24[_0xb0f0[72]],function(_0x4050x31){var _0x4050x32={};_0x4050x32[_0x4050x31]= {$like:_0xb0f0[82]+ _0x4050x1a[_0xb0f0[69]][_0xb0f0[81]]+ _0xb0f0[82]};return _0x4050x32})})};_0x4050x24= _[_0xb0f0[84]]({},_0x4050x24,_0x4050x1a[_0xb0f0[85]]);return db[_0xb0f0[67]][_0xb0f0[86]](_0x4050x24)[_0xb0f0[37]](respondWithFilteredResult(_0x4050x1e,_0x4050x24,_0xb0f0[64]))[_0xb0f0[28]](handleError(_0x4050x1e,null,_0xb0f0[64]))};exports[_0xb0f0[87]]= function(_0x4050x1a,_0x4050x1e){var _0x4050x24={raw:false,where:{id:_0x4050x1a[_0xb0f0[89]][_0xb0f0[88]]}},_0x4050x30={};_0x4050x30[_0xb0f0[65]]= _[_0xb0f0[68]](db[_0xb0f0[67]][_0xb0f0[66]]);_0x4050x30[_0xb0f0[69]]= _[_0xb0f0[68]](_0x4050x1a[_0xb0f0[69]]);_0x4050x30[_0xb0f0[70]]= _[_0xb0f0[71]](_0x4050x30[_0xb0f0[65]],_0x4050x30[_0xb0f0[69]]);_0x4050x24[_0xb0f0[72]]= _[_0xb0f0[71]](_0x4050x30[_0xb0f0[65]],qs[_0xb0f0[73]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[73]]));_0x4050x24[_0xb0f0[72]]= (_0x4050x24[_0xb0f0[72]][_0xb0f0[74]])?_0x4050x24[_0xb0f0[72]]:_0x4050x30[_0xb0f0[65]];_0x4050x24= _[_0xb0f0[84]]({},_0x4050x24,_0x4050x1a[_0xb0f0[85]]);return db[_0xb0f0[67]][_0xb0f0[90]](_0x4050x24)[_0xb0f0[37]](handleEntityNotFound(_0x4050x1e,null,_0xb0f0[87]))[_0xb0f0[37]](respondWithResult(_0x4050x1e,null,_0xb0f0[87]))[_0xb0f0[28]](handleError(_0x4050x1e,null,_0xb0f0[87]))};exports[_0xb0f0[91]]= function(_0x4050x1a,_0x4050x1e){return db[_0xb0f0[67]][_0xb0f0[91]](_0x4050x1a[_0xb0f0[92]],{})[_0xb0f0[37]](respondWithResult(_0x4050x1e,201,_0xb0f0[91]))[_0xb0f0[28]](handleError(_0x4050x1e,null,_0xb0f0[91]))};exports[_0xb0f0[58]]= function(_0x4050x1a,_0x4050x1e){if(_0x4050x1a[_0xb0f0[92]][_0xb0f0[88]]){delete _0x4050x1a[_0xb0f0[92]][_0xb0f0[88]]};return db[_0xb0f0[67]][_0xb0f0[90]]({where:{id:_0x4050x1a[_0xb0f0[89]][_0xb0f0[88]]}})[_0xb0f0[37]](handleEntityNotFound(_0x4050x1e,null,_0xb0f0[58]))[_0xb0f0[37]](saveUpdates(_0x4050x1a[_0xb0f0[92]],null,_0xb0f0[58]))[_0xb0f0[37]](respondWithResult(_0x4050x1e,null,_0xb0f0[58]))[_0xb0f0[28]](handleError(_0x4050x1e,null,_0xb0f0[58]))};exports[_0xb0f0[60]]= function(_0x4050x1a,_0x4050x1e){return db[_0xb0f0[67]][_0xb0f0[90]]({where:{id:_0x4050x1a[_0xb0f0[89]][_0xb0f0[88]]}})[_0xb0f0[37]](handleEntityNotFound(_0x4050x1e,null,_0xb0f0[60]))[_0xb0f0[37]](removeEntity(_0x4050x1e,null,_0xb0f0[60]))[_0xb0f0[28]](handleError(_0x4050x1e,null,_0xb0f0[60]))};exports[_0xb0f0[93]]= function(_0x4050x1a,_0x4050x21,_0x4050x33){var _0x4050x24={};var _0x4050x30={};var _0x4050x34;var _0x4050x25;return db[_0xb0f0[67]][_0xb0f0[95]]({where:{id:_0x4050x1a[_0xb0f0[89]][_0xb0f0[88]]}})[_0xb0f0[37]](handleEntityNotFound(_0x4050x21,null,_0xb0f0[93]))[_0xb0f0[37]](function(_0x4050x21){if(_0x4050x21){_0x4050x34= _0x4050x21;_0x4050x30[_0xb0f0[65]]= _[_0xb0f0[68]](db[_0xb0f0[94]][_0xb0f0[66]]);_0x4050x30[_0xb0f0[69]]= _[_0xb0f0[68]](_0x4050x1a[_0xb0f0[69]]);_0x4050x30[_0xb0f0[70]]= _[_0xb0f0[71]](_0x4050x30[_0xb0f0[65]],_0x4050x30[_0xb0f0[69]]);_0x4050x24[_0xb0f0[72]]= _[_0xb0f0[71]](_0x4050x30[_0xb0f0[65]],qs[_0xb0f0[73]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[73]]));_0x4050x24[_0xb0f0[72]]= (_0x4050x24[_0xb0f0[72]][_0xb0f0[74]])?_0x4050x24[_0xb0f0[72]]:_0x4050x30[_0xb0f0[65]];_0x4050x24[_0xb0f0[77]]= qs[_0xb0f0[78]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[78]]);_0x4050x24[_0xb0f0[79]]= qs[_0xb0f0[70]](_[_0xb0f0[80]](_0x4050x1a[_0xb0f0[69]],_0x4050x30[_0xb0f0[70]]));if(_0x4050x1a[_0xb0f0[69]][_0xb0f0[81]]){_0x4050x24[_0xb0f0[79]]= _[_0xb0f0[84]](_0x4050x24[_0xb0f0[79]],{$or:_[_0xb0f0[83]](_0x4050x24[_0xb0f0[72]],function(_0x4050x31){var _0x4050x32={};_0x4050x32[_0x4050x31]= {$like:_0xb0f0[82]+ _0x4050x1a[_0xb0f0[69]][_0xb0f0[81]]+ _0xb0f0[82]};return _0x4050x32})})};_0x4050x24= _[_0xb0f0[84]]({},_0x4050x24,_0x4050x1a[_0xb0f0[85]]);return _0x4050x34[_0xb0f0[93]](_0x4050x24)}})[_0xb0f0[37]](function(_0x4050x36){if(_0x4050x36){_0x4050x25= _0x4050x36[_0xb0f0[74]];if(!_0x4050x1a[_0xb0f0[69]][_0xb0f0[76]](_0xb0f0[75])){_0x4050x24[_0xb0f0[48]]= qs[_0xb0f0[48]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[48]]);_0x4050x24[_0xb0f0[47]]= qs[_0xb0f0[47]](_0x4050x1a[_0xb0f0[69]][_0xb0f0[47]])};return _0x4050x34[_0xb0f0[93]](_0x4050x24)}})[_0xb0f0[37]](function(_0x4050x35){return _0x4050x35?{count:_0x4050x25,rows:_0x4050x35}:null})[_0xb0f0[37]](respondWithResult(_0x4050x21,null,_0xb0f0[93]))[_0xb0f0[28]](handleError(_0x4050x21,null,_0xb0f0[93]))};exports[_0xb0f0[96]]= function(_0x4050x1a,_0x4050x1e,_0x4050x33){if(_0x4050x1a[_0xb0f0[92]][_0xb0f0[88]]){delete _0x4050x1a[_0xb0f0[92]][_0xb0f0[88]]};return db[_0xb0f0[67]][_0xb0f0[95]]({where:{id:_0x4050x1a[_0xb0f0[89]][_0xb0f0[88]]}})[_0xb0f0[37]](handleEntityNotFound(_0x4050x1e,null,_0xb0f0[96]))[_0xb0f0[37]](function(_0x4050x21){if(_0x4050x21){_0x4050x1a[_0xb0f0[92]][_0xb0f0[97]]= _0x4050x21[_0xb0f0[88]];_0x4050x1a[_0xb0f0[92]][_0xb0f0[98]]= integrations[_0xb0f0[101]](_0x4050x1a[_0xb0f0[92]][_0xb0f0[99]],_0x4050x1a[_0xb0f0[92]][_0xb0f0[100]]);_0x4050x1a[_0xb0f0[92]][_0xb0f0[102]]= integrations[_0xb0f0[103]](_0x4050x1a[_0xb0f0[92]][_0xb0f0[99]],_0x4050x1a[_0xb0f0[92]][_0xb0f0[100]]);return db[_0xb0f0[94]][_0xb0f0[91]](_0x4050x1a[_0xb0f0[92]],{include:[{model:db[_0xb0f0[104]],as:_0xb0f0[98]},{model:db[_0xb0f0[104]],as:_0xb0f0[102]}]})};return null})[_0xb0f0[37]](respondWithResult(_0x4050x1e,null,_0xb0f0[96]))[_0xb0f0[28]](handleError(_0x4050x1e,null,_0xb0f0[96]))};exports[_0xb0f0[105]]= function(_0x4050x1a,_0x4050x1e,_0x4050x33){var _0x4050x37;return db[_0xb0f0[67]][_0xb0f0[95]]({where:{id:_0x4050x1a[_0xb0f0[89]][_0xb0f0[88]]},attributes:[_0xb0f0[88],_0xb0f0[120],_0xb0f0[121],_0xb0f0[118]]})[_0xb0f0[37]](handleEntityNotFound(_0x4050x1e,null,_0xb0f0[105]))[_0xb0f0[37]](function(_0x4050x21){if(_0x4050x21){_0x4050x37= _0x4050x21[_0xb0f0[118]];return rp({method:_0xb0f0[111],uri:util[_0xb0f0[114]](_0xb0f0[112],_0x4050x37,_0xb0f0[113]),json:true,form:{method:_0xb0f0[119],input_type:_0xb0f0[116],response_type:_0xb0f0[116],rest_data:JSON[_0xb0f0[32]]({user_auth:{user_name:_0x4050x21[_0xb0f0[120]],password:_0x4050x21[_0xb0f0[121]],encryption:_0xb0f0[122]},application:_0xb0f0[123]})}})}})[_0xb0f0[37]](function(_0x4050x21){if(_0x4050x21){return rp({method:_0xb0f0[111],uri:util[_0xb0f0[114]](_0xb0f0[112],_0x4050x37,_0xb0f0[113]),json:true,form:{method:_0xb0f0[115],input_type:_0xb0f0[116],response_type:_0xb0f0[116],rest_data:JSON[_0xb0f0[32]]({session:_0x4050x21[_0xb0f0[88]],module_name:_0xb0f0[117]})}})}})[_0xb0f0[37]](function(_0x4050x21){if(_0x4050x21){var _0x4050x38=_[_0xb0f0[107]](_0x4050x21[_0xb0f0[106]]);return {count:_0x4050x38[_0xb0f0[74]],rows:_[_0xb0f0[83]](_0x4050x38,function(_0x4050x39){return {id:_0x4050x39[_0xb0f0[62]],name:_0x4050x39[_0xb0f0[108]],custom:_0x4050x39[_0xb0f0[109]]?true:false,options:_0x4050x39[_0xb0f0[85]]?_[_0xb0f0[83]](_[_0xb0f0[107]](_0x4050x39[_0xb0f0[85]]),function(_0x4050x39){return {name:_0x4050x39[_0xb0f0[110]],value:_0x4050x39[_0xb0f0[62]]}}):[]}})}}})[_0xb0f0[37]](respondWithResult(_0x4050x1e,null,_0xb0f0[105]))[_0xb0f0[28]](handleError(_0x4050x1e,null,_0xb0f0[105]))}
\ No newline at end of file
index da108d4..13b0566 100644 (file)
@@ -1 +1 @@
-var _0x90e8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x69\x6E\x74\x5F\x73\x75\x67\x61\x72\x63\x72\x6D\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x90e8[0];var _=require(_0x90e8[1]);var util=require(_0x90e8[2]);var logger=require(_0x90e8[4])(_0x90e8[3]);var attributes=require(_0x90e8[5]);var integrations=require(_0x90e8[6]);module[_0x90e8[7]]= function(_0xa8c3x6,_0xa8c3x7){return _0xa8c3x6[_0x90e8[10]](_0x90e8[8],attributes,{tableName:_0x90e8[9],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x2af4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x69\x6E\x74\x5F\x73\x75\x67\x61\x72\x63\x72\x6D\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x2af4[0];var _=require(_0x2af4[1]);var util=require(_0x2af4[2]);var logger=require(_0x2af4[4])(_0x2af4[3]);var attributes=require(_0x2af4[5]);var integrations=require(_0x2af4[6]);module[_0x2af4[7]]= function(_0x3a68x6,_0x3a68x7){return _0x3a68x6[_0x2af4[10]](_0x2af4[8],attributes,{tableName:_0x2af4[9],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 9a9484d..f24e046 100644 (file)
@@ -1 +1 @@
-var _0xdbaf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x53\x68\x6F\x77\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64"];_0xdbaf[0];var _=require(_0xdbaf[1]);var util=require(_0xdbaf[2]);var moment=require(_0xdbaf[3]);var BPromise=require(_0xdbaf[4]);var db=require(_0xdbaf[6])[_0xdbaf[5]];var utils=require(_0xdbaf[7]);var logger=require(_0xdbaf[9])(_0xdbaf[8]);var jayson=require(_0xdbaf[10]);var client=jayson[_0xdbaf[12]][_0xdbaf[11]]({port:9002});function respondWithRpcPromise(_0x22e8xb,_0x22e8xc,_0x22e8xd){return  new BPromise(function(_0x22e8xe,_0x22e8xf){return client[_0xdbaf[25]](_0x22e8xb,_0x22e8xd)[_0xdbaf[24]](function(_0x22e8x11){logger[_0xdbaf[17]](_0xdbaf[13],_0x22e8xc,_0xdbaf[16]);logger[_0xdbaf[20]](_0xdbaf[18],_0x22e8xc,_0xdbaf[16],JSON[_0xdbaf[19]](_0x22e8x11));if(_0x22e8x11[_0xdbaf[14]]){if(_0x22e8x11[_0xdbaf[14]][_0xdbaf[21]]=== 500){logger[_0xdbaf[14]](_0xdbaf[13],_0x22e8xc,_0x22e8x11[_0xdbaf[14]][_0xdbaf[22]]);return _0x22e8xf(_0x22e8x11[_0xdbaf[14]][_0xdbaf[22]])};logger[_0xdbaf[14]](_0xdbaf[13],_0x22e8xc,_0x22e8x11[_0xdbaf[14]][_0xdbaf[22]]);return _0x22e8xe(_0x22e8x11[_0xdbaf[14]][_0xdbaf[22]])}else {logger[_0xdbaf[17]](_0xdbaf[13],_0x22e8xc,_0xdbaf[16]);_0x22e8xe(_0x22e8x11[_0xdbaf[23]][_0xdbaf[22]])}})[_0xdbaf[15]](function(_0x22e8x10){logger[_0xdbaf[14]](_0xdbaf[13],_0x22e8xc,_0x22e8x10);_0x22e8xf(_0x22e8x10)})})}exports[_0xdbaf[26]]= function(_0x22e8xd){var _0x22e8x12=this;return  new Promise(function(_0x22e8xe,_0x22e8xf){return db[_0xdbaf[37]][_0xdbaf[36]]({raw:_0x22e8xd[_0xdbaf[27]]?(_0x22e8xd[_0xdbaf[27]][_0xdbaf[28]]=== undefined)?true:false:true,where:_0x22e8xd[_0xdbaf[27]]?_0x22e8xd[_0xdbaf[27]][_0xdbaf[29]]|| null:null,attributes:_0x22e8xd[_0xdbaf[27]]?_0x22e8xd[_0xdbaf[27]][_0xdbaf[30]]|| null:null,limit:_0x22e8xd[_0xdbaf[27]]?_0x22e8xd[_0xdbaf[27]][_0xdbaf[31]]|| null:null,include:_0x22e8xd[_0xdbaf[27]]?(_0x22e8xd[_0xdbaf[27]][_0xdbaf[32]]?_[_0xdbaf[35]](_0x22e8xd[_0xdbaf[27]][_0xdbaf[32]],function(_0x22e8x13){return {model:db[_0x22e8x13[_0xdbaf[33]]],as:_0x22e8x13[_0xdbaf[34]],attributes:_0x22e8x13[_0xdbaf[30]],include:_0x22e8x13[_0xdbaf[32]]?_[_0xdbaf[35]](_0x22e8x13[_0xdbaf[32]],function(_0x22e8x14){return {model:db[_0x22e8x14[_0xdbaf[33]]],as:_0x22e8x14[_0xdbaf[34]],attributes:_0x22e8x14[_0xdbaf[30]],include:_0x22e8x14[_0xdbaf[32]]?_[_0xdbaf[35]](_0x22e8x14[_0xdbaf[32]],function(_0x22e8x15){return {model:db[_0x22e8x15[_0xdbaf[33]]],as:_0x22e8x15[_0xdbaf[34]],attributes:_0x22e8x15[_0xdbaf[30]]}}):[]}}):[]}}):[]):[]})[_0xdbaf[24]](function(_0x22e8x11){logger[_0xdbaf[17]](_0xdbaf[26],_0x22e8xd);logger[_0xdbaf[20]](_0xdbaf[26],_0x22e8xd,JSON[_0xdbaf[19]](_0x22e8x11));_0x22e8xe(_0x22e8x11)})[_0xdbaf[15]](function(_0x22e8x10){logger[_0xdbaf[14]](_0xdbaf[26],_0x22e8x10[_0xdbaf[22]],_0x22e8xd);_0x22e8xf(_0x22e8x12[_0xdbaf[14]](500,_0x22e8x10[_0xdbaf[22]]))})})};exports[_0xdbaf[38]]= function(_0x22e8xd){var _0x22e8x12=this;return  new Promise(function(_0x22e8xe,_0x22e8xf){return db[_0xdbaf[37]][_0xdbaf[39]]({raw:_0x22e8xd[_0xdbaf[27]]?(_0x22e8xd[_0xdbaf[27]][_0xdbaf[28]]=== undefined)?true:false:true,where:_0x22e8xd[_0xdbaf[27]]?_0x22e8xd[_0xdbaf[27]][_0xdbaf[29]]|| null:null,attributes:_0x22e8xd[_0xdbaf[27]]?_0x22e8xd[_0xdbaf[27]][_0xdbaf[30]]|| null:null,include:_0x22e8xd[_0xdbaf[27]]?(_0x22e8xd[_0xdbaf[27]][_0xdbaf[32]]?_[_0xdbaf[35]](_0x22e8xd[_0xdbaf[27]][_0xdbaf[32]],function(_0x22e8x13){return {model:db[_0x22e8x13[_0xdbaf[33]]],as:_0x22e8x13[_0xdbaf[34]],attributes:_0x22e8x13[_0xdbaf[30]],include:_0x22e8x13[_0xdbaf[32]]?_[_0xdbaf[35]](_0x22e8x13[_0xdbaf[32]],function(_0x22e8x14){return {model:db[_0x22e8x14[_0xdbaf[33]]],as:_0x22e8x14[_0xdbaf[34]],attributes:_0x22e8x14[_0xdbaf[30]],include:_0x22e8x14[_0xdbaf[32]]?_[_0xdbaf[35]](_0x22e8x14[_0xdbaf[32]],function(_0x22e8x15){return {model:db[_0x22e8x15[_0xdbaf[33]]],as:_0x22e8x15[_0xdbaf[34]],attributes:_0x22e8x15[_0xdbaf[30]]}}):[]}}):[]}}):[]):[]})[_0xdbaf[24]](function(_0x22e8x11){logger[_0xdbaf[17]](_0xdbaf[38],_0x22e8xd);logger[_0xdbaf[20]](_0xdbaf[38],_0x22e8xd,JSON[_0xdbaf[19]](_0x22e8x11));_0x22e8xe(_0x22e8x11)})[_0xdbaf[15]](function(_0x22e8x10){logger[_0xdbaf[14]](_0xdbaf[38],_0x22e8x10[_0xdbaf[22]],_0x22e8xd);_0x22e8xf(_0x22e8x12[_0xdbaf[14]](500,_0x22e8x10[_0xdbaf[22]]))})})}
\ No newline at end of file
+var _0x3e4e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x53\x68\x6F\x77\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64"];_0x3e4e[0];var _=require(_0x3e4e[1]);var util=require(_0x3e4e[2]);var moment=require(_0x3e4e[3]);var BPromise=require(_0x3e4e[4]);var db=require(_0x3e4e[6])[_0x3e4e[5]];var utils=require(_0x3e4e[7]);var logger=require(_0x3e4e[9])(_0x3e4e[8]);var jayson=require(_0x3e4e[10]);var client=jayson[_0x3e4e[12]][_0x3e4e[11]]({port:9002});function respondWithRpcPromise(_0x8213xb,_0x8213xc,_0x8213xd){return  new BPromise(function(_0x8213xe,_0x8213xf){return client[_0x3e4e[25]](_0x8213xb,_0x8213xd)[_0x3e4e[24]](function(_0x8213x11){logger[_0x3e4e[17]](_0x3e4e[13],_0x8213xc,_0x3e4e[16]);logger[_0x3e4e[20]](_0x3e4e[18],_0x8213xc,_0x3e4e[16],JSON[_0x3e4e[19]](_0x8213x11));if(_0x8213x11[_0x3e4e[14]]){if(_0x8213x11[_0x3e4e[14]][_0x3e4e[21]]=== 500){logger[_0x3e4e[14]](_0x3e4e[13],_0x8213xc,_0x8213x11[_0x3e4e[14]][_0x3e4e[22]]);return _0x8213xf(_0x8213x11[_0x3e4e[14]][_0x3e4e[22]])};logger[_0x3e4e[14]](_0x3e4e[13],_0x8213xc,_0x8213x11[_0x3e4e[14]][_0x3e4e[22]]);return _0x8213xe(_0x8213x11[_0x3e4e[14]][_0x3e4e[22]])}else {logger[_0x3e4e[17]](_0x3e4e[13],_0x8213xc,_0x3e4e[16]);_0x8213xe(_0x8213x11[_0x3e4e[23]][_0x3e4e[22]])}})[_0x3e4e[15]](function(_0x8213x10){logger[_0x3e4e[14]](_0x3e4e[13],_0x8213xc,_0x8213x10);_0x8213xf(_0x8213x10)})})}exports[_0x3e4e[26]]= function(_0x8213xd){var _0x8213x12=this;return  new Promise(function(_0x8213xe,_0x8213xf){return db[_0x3e4e[37]][_0x3e4e[36]]({raw:_0x8213xd[_0x3e4e[27]]?(_0x8213xd[_0x3e4e[27]][_0x3e4e[28]]=== undefined)?true:false:true,where:_0x8213xd[_0x3e4e[27]]?_0x8213xd[_0x3e4e[27]][_0x3e4e[29]]|| null:null,attributes:_0x8213xd[_0x3e4e[27]]?_0x8213xd[_0x3e4e[27]][_0x3e4e[30]]|| null:null,limit:_0x8213xd[_0x3e4e[27]]?_0x8213xd[_0x3e4e[27]][_0x3e4e[31]]|| null:null,include:_0x8213xd[_0x3e4e[27]]?(_0x8213xd[_0x3e4e[27]][_0x3e4e[32]]?_[_0x3e4e[35]](_0x8213xd[_0x3e4e[27]][_0x3e4e[32]],function(_0x8213x13){return {model:db[_0x8213x13[_0x3e4e[33]]],as:_0x8213x13[_0x3e4e[34]],attributes:_0x8213x13[_0x3e4e[30]],include:_0x8213x13[_0x3e4e[32]]?_[_0x3e4e[35]](_0x8213x13[_0x3e4e[32]],function(_0x8213x14){return {model:db[_0x8213x14[_0x3e4e[33]]],as:_0x8213x14[_0x3e4e[34]],attributes:_0x8213x14[_0x3e4e[30]],include:_0x8213x14[_0x3e4e[32]]?_[_0x3e4e[35]](_0x8213x14[_0x3e4e[32]],function(_0x8213x15){return {model:db[_0x8213x15[_0x3e4e[33]]],as:_0x8213x15[_0x3e4e[34]],attributes:_0x8213x15[_0x3e4e[30]]}}):[]}}):[]}}):[]):[]})[_0x3e4e[24]](function(_0x8213x11){logger[_0x3e4e[17]](_0x3e4e[26],_0x8213xd);logger[_0x3e4e[20]](_0x3e4e[26],_0x8213xd,JSON[_0x3e4e[19]](_0x8213x11));_0x8213xe(_0x8213x11)})[_0x3e4e[15]](function(_0x8213x10){logger[_0x3e4e[14]](_0x3e4e[26],_0x8213x10[_0x3e4e[22]],_0x8213xd);_0x8213xf(_0x8213x12[_0x3e4e[14]](500,_0x8213x10[_0x3e4e[22]]))})})};exports[_0x3e4e[38]]= function(_0x8213xd){var _0x8213x12=this;return  new Promise(function(_0x8213xe,_0x8213xf){return db[_0x3e4e[37]][_0x3e4e[39]]({raw:_0x8213xd[_0x3e4e[27]]?(_0x8213xd[_0x3e4e[27]][_0x3e4e[28]]=== undefined)?true:false:true,where:_0x8213xd[_0x3e4e[27]]?_0x8213xd[_0x3e4e[27]][_0x3e4e[29]]|| null:null,attributes:_0x8213xd[_0x3e4e[27]]?_0x8213xd[_0x3e4e[27]][_0x3e4e[30]]|| null:null,include:_0x8213xd[_0x3e4e[27]]?(_0x8213xd[_0x3e4e[27]][_0x3e4e[32]]?_[_0x3e4e[35]](_0x8213xd[_0x3e4e[27]][_0x3e4e[32]],function(_0x8213x13){return {model:db[_0x8213x13[_0x3e4e[33]]],as:_0x8213x13[_0x3e4e[34]],attributes:_0x8213x13[_0x3e4e[30]],include:_0x8213x13[_0x3e4e[32]]?_[_0x3e4e[35]](_0x8213x13[_0x3e4e[32]],function(_0x8213x14){return {model:db[_0x8213x14[_0x3e4e[33]]],as:_0x8213x14[_0x3e4e[34]],attributes:_0x8213x14[_0x3e4e[30]],include:_0x8213x14[_0x3e4e[32]]?_[_0x3e4e[35]](_0x8213x14[_0x3e4e[32]],function(_0x8213x15){return {model:db[_0x8213x15[_0x3e4e[33]]],as:_0x8213x15[_0x3e4e[34]],attributes:_0x8213x15[_0x3e4e[30]]}}):[]}}):[]}}):[]):[]})[_0x3e4e[24]](function(_0x8213x11){logger[_0x3e4e[17]](_0x3e4e[38],_0x8213xd);logger[_0x3e4e[20]](_0x3e4e[38],_0x8213xd,JSON[_0x3e4e[19]](_0x8213x11));_0x8213xe(_0x8213x11)})[_0x3e4e[15]](function(_0x8213x10){logger[_0x3e4e[14]](_0x3e4e[38],_0x8213x10[_0x3e4e[22]],_0x8213xd);_0x8213xf(_0x8213x12[_0x3e4e[14]](500,_0x8213x10[_0x3e4e[22]]))})})}
\ No newline at end of file
index b7c040b..b9c4de2 100644 (file)
@@ -1 +1 @@
-var _0x9597=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x9597[0];var multer=require(_0x9597[1]);var util=require(_0x9597[2]);var path=require(_0x9597[3]);var express=require(_0x9597[4]);var router=express.Router();var auth=require(_0x9597[5]);var config=require(_0x9597[6]);var controller=require(_0x9597[7]);router[_0x9597[11]](_0x9597[8],auth[_0x9597[9]](),controller[_0x9597[10]]);router[_0x9597[11]](_0x9597[12],auth[_0x9597[9]](),controller[_0x9597[13]]);router[_0x9597[11]](_0x9597[14],auth[_0x9597[9]](),controller[_0x9597[15]]);router[_0x9597[11]](_0x9597[16],auth[_0x9597[9]](),controller[_0x9597[17]]);router[_0x9597[11]](_0x9597[18],auth[_0x9597[9]](),controller[_0x9597[19]]);router[_0x9597[21]](_0x9597[8],auth[_0x9597[9]](),controller[_0x9597[20]]);router[_0x9597[23]](_0x9597[12],auth[_0x9597[9]](),controller[_0x9597[22]]);router[_0x9597[25]](_0x9597[12],auth[_0x9597[9]](),controller[_0x9597[24]]);module[_0x9597[26]]= router
\ No newline at end of file
+var _0xa968=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa968[0];var multer=require(_0xa968[1]);var util=require(_0xa968[2]);var path=require(_0xa968[3]);var express=require(_0xa968[4]);var router=express.Router();var auth=require(_0xa968[5]);var config=require(_0xa968[6]);var controller=require(_0xa968[7]);router[_0xa968[11]](_0xa968[8],auth[_0xa968[9]](),controller[_0xa968[10]]);router[_0xa968[11]](_0xa968[12],auth[_0xa968[9]](),controller[_0xa968[13]]);router[_0xa968[11]](_0xa968[14],auth[_0xa968[9]](),controller[_0xa968[15]]);router[_0xa968[11]](_0xa968[16],auth[_0xa968[9]](),controller[_0xa968[17]]);router[_0xa968[11]](_0xa968[18],auth[_0xa968[9]](),controller[_0xa968[19]]);router[_0xa968[21]](_0xa968[8],auth[_0xa968[9]](),controller[_0xa968[20]]);router[_0xa968[23]](_0xa968[12],auth[_0xa968[9]](),controller[_0xa968[22]]);router[_0xa968[25]](_0xa968[12],auth[_0xa968[9]](),controller[_0xa968[24]]);module[_0xa968[26]]= router
\ No newline at end of file
index 66b9c0f..cc366f6 100644 (file)
@@ -1 +1 @@
-var _0xea21=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xea21[0];var Sequelize=require(_0xea21[1]);module[_0xea21[2]]= {name:{type:Sequelize[_0xea21[3]]},description:{type:Sequelize[_0xea21[3]]}}
\ No newline at end of file
+var _0x35b8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x35b8[0];var Sequelize=require(_0x35b8[1]);module[_0x35b8[2]]= {name:{type:Sequelize[_0x35b8[3]]},description:{type:Sequelize[_0x35b8[3]]}}
\ No newline at end of file
index a06115d..1acc405 100644 (file)
@@ -1 +1 @@
-var _0x6686=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73"];_0x6686[0];var jsonpatch=require(_0x6686[1]);var rp=require(_0x6686[2]);var moment=require(_0x6686[3]);var BPromise=require(_0x6686[4]);var util=require(_0x6686[5]);var path=require(_0x6686[6]);var sox=require(_0x6686[7]);var ejs=require(_0x6686[8]);var fs=require(_0x6686[9]);var _=require(_0x6686[10]);var squel=require(_0x6686[11]);var crypto=require(_0x6686[12]);var jsforce=require(_0x6686[13]);var toCsv=require(_0x6686[14]);var qs=require(_0x6686[15]);var logger=require(_0x6686[17])(_0x6686[16]);var utils=require(_0x6686[18]);var config=require(_0x6686[19]);var db=require(_0x6686[21])[_0x6686[20]];var jayson=require(_0x6686[22]);var client=jayson[_0x6686[24]][_0x6686[23]]({port:9002});function respondWithRpcPromise(_0xfb5cx17,_0xfb5cx18,_0xfb5cx19){return  new BPromise(function(_0xfb5cx1a,_0xfb5cx1b){return client[_0x6686[37]](_0xfb5cx17,_0xfb5cx19)[_0x6686[36]](function(_0xfb5cx1d){logger[_0x6686[29]](_0x6686[25],_0xfb5cx18,_0x6686[28]);logger[_0x6686[32]](_0x6686[30],_0xfb5cx18,_0x6686[28],JSON[_0x6686[31]](_0xfb5cx1d));if(_0xfb5cx1d[_0x6686[26]]){if(_0xfb5cx1d[_0x6686[26]][_0x6686[33]]=== 500){logger[_0x6686[26]](_0x6686[25],_0xfb5cx18,_0xfb5cx1d[_0x6686[26]][_0x6686[34]]);return _0xfb5cx1b(_0xfb5cx1d[_0x6686[26]][_0x6686[34]])};logger[_0x6686[26]](_0x6686[25],_0xfb5cx18,_0xfb5cx1d[_0x6686[26]][_0x6686[34]]);return _0xfb5cx1a(_0xfb5cx1d[_0x6686[26]][_0x6686[34]])}else {logger[_0x6686[29]](_0x6686[25],_0xfb5cx18,_0x6686[28]);_0xfb5cx1a(_0xfb5cx1d[_0x6686[35]][_0x6686[34]])}})[_0x6686[27]](function(_0xfb5cx1c){logger[_0x6686[26]](_0x6686[25],_0xfb5cx18,_0xfb5cx1c);_0xfb5cx1b(_0xfb5cx1c)})})}function respondWithStatusCode(_0xfb5cx1d,_0xfb5cx1f,_0xfb5cx18){_0xfb5cx1f= _0xfb5cx1f|| 204;return function(_0xfb5cx20){if(_0xfb5cx20){logger[_0x6686[29]](_0x6686[30],_0xfb5cx18,_0xfb5cx1f,_0x6686[38]);logger[_0x6686[32]](_0x6686[39],_0xfb5cx18,_0xfb5cx1f,_0x6686[38]);return _0xfb5cx1d[_0x6686[40]](_0xfb5cx1f)};return _0xfb5cx1d[_0x6686[42]](304)[_0x6686[41]]()}}function respondWithResult(_0xfb5cx1d,_0xfb5cx1f,_0xfb5cx18){_0xfb5cx1f= _0xfb5cx1f|| 200;return function(_0xfb5cx20){if(_0xfb5cx20){logger[_0x6686[29]](_0x6686[30],_0xfb5cx18,_0xfb5cx1f,_0x6686[43]);logger[_0x6686[32]](_0x6686[39],_0xfb5cx18,_0xfb5cx1f,_0x6686[43],JSON[_0x6686[31]](_0xfb5cx20));return _0xfb5cx1d[_0x6686[42]](_0xfb5cx1f)[_0x6686[44]](_0xfb5cx20)};return _0xfb5cx1d[_0x6686[42]](304)[_0x6686[41]]()}}function respondWithFilteredResult(_0xfb5cx1d,_0xfb5cx23,_0xfb5cx18){return function(_0xfb5cx20){if(_0xfb5cx20){var _0xfb5cx24=_0xfb5cx20[_0x6686[45]],_0xfb5cx25=_0xfb5cx23[_0x6686[46]],_0xfb5cx26=_0xfb5cx23[_0x6686[46]]+ _0xfb5cx23[_0x6686[47]],_0xfb5cx1f;if(_0xfb5cx26>= _0xfb5cx24){_0xfb5cx26= _0xfb5cx24;_0xfb5cx1f= 200}else {_0xfb5cx1f= 206};_0xfb5cx1d[_0x6686[42]](_0xfb5cx1f);logger[_0x6686[29]](_0x6686[30],_0xfb5cx18,_0xfb5cx1f,_0x6686[48]);logger[_0x6686[32]](_0x6686[39],_0xfb5cx18,_0xfb5cx1f,_0x6686[43],JSON[_0x6686[31]](_0xfb5cx20));return _0xfb5cx1d[_0x6686[52]](_0x6686[49],_0xfb5cx25+ _0x6686[50]+ _0xfb5cx26+ _0x6686[51]+ _0xfb5cx24)[_0x6686[44]](_0xfb5cx20)};return null}}function patchUpdates(_0xfb5cx28){return function(_0xfb5cx20){try{jsonpatch[_0x6686[53]](_0xfb5cx20,_0xfb5cx28,true)}catch(err){return BPromise[_0x6686[54]](err)};return _0xfb5cx20[_0x6686[55]]()}}function saveUpdates(_0xfb5cx2a,_0xfb5cx1f,_0xfb5cx18){return function(_0xfb5cx20){if(_0xfb5cx20){return _0xfb5cx20[_0x6686[57]](_0xfb5cx2a)[_0x6686[36]](function(_0xfb5cx2b){logger[_0x6686[29]](_0x6686[30],_0xfb5cx18,_0xfb5cx1f,_0x6686[56]);logger[_0x6686[32]](_0x6686[39],_0xfb5cx18,_0xfb5cx1f,_0x6686[56],JSON[_0x6686[31]](_0xfb5cx20));return _0xfb5cx2b})};return null}}function removeEntity(_0xfb5cx1d,_0xfb5cx1f,_0xfb5cx18){return function(_0xfb5cx20){if(_0xfb5cx20){return _0xfb5cx20[_0x6686[59]]()[_0x6686[36]](function(){logger[_0x6686[29]](_0x6686[30],_0xfb5cx18,_0xfb5cx1f,_0x6686[58]);logger[_0x6686[32]](_0x6686[39],_0xfb5cx18,_0xfb5cx1f,_0x6686[58],JSON[_0x6686[31]](_0xfb5cx20));_0xfb5cx1d[_0x6686[42]](204)[_0x6686[41]]()})}}}function handleEntityNotFound(_0xfb5cx1d,_0xfb5cx1f,_0xfb5cx18){return function(_0xfb5cx20){if(!_0xfb5cx20){logger[_0x6686[26]](_0x6686[30],_0xfb5cx18,404,_0x6686[60]);_0xfb5cx1d[_0x6686[42]](404)[_0x6686[41]]();return null};return _0xfb5cx20}}function handleError(_0xfb5cx1d,_0xfb5cx1f,_0xfb5cx18){_0xfb5cx1f= _0xfb5cx1f|| 500;return function(_0xfb5cx1c){logger[_0x6686[26]](_0x6686[30],_0xfb5cx18,_0xfb5cx1f,JSON[_0x6686[31]](_0xfb5cx1c));delete _0xfb5cx1c[_0x6686[61]];_0xfb5cx1d[_0x6686[42]](_0xfb5cx1f)[_0x6686[62]](_0xfb5cx1c)}}exports[_0x6686[63]]= function(_0xfb5cx19,_0xfb5cx1d){var _0xfb5cx23={},_0xfb5cx2f={};_0xfb5cx2f[_0x6686[64]]= _[_0x6686[67]](db[_0x6686[66]][_0x6686[65]]);_0xfb5cx2f[_0x6686[68]]= _[_0x6686[67]](_0xfb5cx19[_0x6686[68]]);_0xfb5cx2f[_0x6686[69]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],_0xfb5cx2f[_0x6686[68]]);_0xfb5cx23[_0x6686[71]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],qs[_0x6686[72]](_0xfb5cx19[_0x6686[68]][_0x6686[72]]));_0xfb5cx23[_0x6686[71]]= (_0xfb5cx23[_0x6686[71]][_0x6686[73]])?_0xfb5cx23[_0x6686[71]]:_0xfb5cx2f[_0x6686[64]];if(!_0xfb5cx19[_0x6686[68]][_0x6686[75]](_0x6686[74])){_0xfb5cx23[_0x6686[47]]= qs[_0x6686[47]](_0xfb5cx19[_0x6686[68]][_0x6686[47]]);_0xfb5cx23[_0x6686[46]]= qs[_0x6686[46]](_0xfb5cx19[_0x6686[68]][_0x6686[46]])};_0xfb5cx23[_0x6686[76]]= qs[_0x6686[77]](_0xfb5cx19[_0x6686[68]][_0x6686[77]]);_0xfb5cx23[_0x6686[78]]= qs[_0x6686[69]](_[_0x6686[79]](_0xfb5cx19[_0x6686[68]],_0xfb5cx2f[_0x6686[69]]));if(_0xfb5cx19[_0x6686[68]][_0x6686[80]]){_0xfb5cx23[_0x6686[78]]= _[_0x6686[83]](_0xfb5cx23[_0x6686[78]],{$or:_[_0x6686[82]](_0xfb5cx23[_0x6686[71]],function(_0xfb5cx30){var _0xfb5cx31={};_0xfb5cx31[_0xfb5cx30]= {$like:_0x6686[81]+ _0xfb5cx19[_0x6686[68]][_0x6686[80]]+ _0x6686[81]};return _0xfb5cx31})})};_0xfb5cx23= _[_0x6686[83]]({},_0xfb5cx23,_0xfb5cx19[_0x6686[84]]);return db[_0x6686[66]][_0x6686[85]](_0xfb5cx23)[_0x6686[36]](respondWithFilteredResult(_0xfb5cx1d,_0xfb5cx23,_0x6686[63]))[_0x6686[27]](handleError(_0xfb5cx1d,null,_0x6686[63]))};exports[_0x6686[86]]= function(_0xfb5cx19,_0xfb5cx1d){var _0xfb5cx23={raw:false,where:{id:_0xfb5cx19[_0x6686[88]][_0x6686[87]]}},_0xfb5cx2f={};_0xfb5cx2f[_0x6686[64]]= _[_0x6686[67]](db[_0x6686[66]][_0x6686[65]]);_0xfb5cx2f[_0x6686[68]]= _[_0x6686[67]](_0xfb5cx19[_0x6686[68]]);_0xfb5cx2f[_0x6686[69]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],_0xfb5cx2f[_0x6686[68]]);_0xfb5cx23[_0x6686[71]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],qs[_0x6686[72]](_0xfb5cx19[_0x6686[68]][_0x6686[72]]));_0xfb5cx23[_0x6686[71]]= (_0xfb5cx23[_0x6686[71]][_0x6686[73]])?_0xfb5cx23[_0x6686[71]]:_0xfb5cx2f[_0x6686[64]];_0xfb5cx23= _[_0x6686[83]]({},_0xfb5cx23,_0xfb5cx19[_0x6686[84]]);return db[_0x6686[66]][_0x6686[89]](_0xfb5cx23)[_0x6686[36]](handleEntityNotFound(_0xfb5cx1d,null,_0x6686[86]))[_0x6686[36]](respondWithResult(_0xfb5cx1d,null,_0x6686[86]))[_0x6686[27]](handleError(_0xfb5cx1d,null,_0x6686[86]))};exports[_0x6686[90]]= function(_0xfb5cx19,_0xfb5cx1d){return db[_0x6686[66]][_0x6686[90]](_0xfb5cx19[_0x6686[91]],{})[_0x6686[36]](respondWithResult(_0xfb5cx1d,201,_0x6686[90]))[_0x6686[27]](handleError(_0xfb5cx1d,null,_0x6686[90]))};exports[_0x6686[57]]= function(_0xfb5cx19,_0xfb5cx1d){if(_0xfb5cx19[_0x6686[91]][_0x6686[87]]){delete _0xfb5cx19[_0x6686[91]][_0x6686[87]]};return db[_0x6686[66]][_0x6686[89]]({where:{id:_0xfb5cx19[_0x6686[88]][_0x6686[87]]}})[_0x6686[36]](handleEntityNotFound(_0xfb5cx1d,null,_0x6686[57]))[_0x6686[36]](saveUpdates(_0xfb5cx19[_0x6686[91]],null,_0x6686[57]))[_0x6686[36]](respondWithResult(_0xfb5cx1d,null,_0x6686[57]))[_0x6686[27]](handleError(_0xfb5cx1d,null,_0x6686[57]))};exports[_0x6686[59]]= function(_0xfb5cx19,_0xfb5cx1d){return db[_0x6686[66]][_0x6686[89]]({where:{id:_0xfb5cx19[_0x6686[88]][_0x6686[87]]}})[_0x6686[36]](handleEntityNotFound(_0xfb5cx1d,null,_0x6686[59]))[_0x6686[36]](removeEntity(_0xfb5cx1d,null,_0x6686[59]))[_0x6686[27]](handleError(_0xfb5cx1d,null,_0x6686[59]))};exports[_0x6686[92]]= function(_0xfb5cx19,_0xfb5cx20,_0xfb5cx32){var _0xfb5cx23={};var _0xfb5cx2f={};var _0xfb5cx33;var _0xfb5cx24;return db[_0x6686[66]][_0x6686[94]]({where:{id:_0xfb5cx19[_0x6686[88]][_0x6686[87]]}})[_0x6686[36]](handleEntityNotFound(_0xfb5cx20,null,_0x6686[92]))[_0x6686[36]](function(_0xfb5cx20){if(_0xfb5cx20){_0xfb5cx33= _0xfb5cx20;_0xfb5cx2f[_0x6686[64]]= _[_0x6686[67]](db[_0x6686[93]][_0x6686[65]]);_0xfb5cx2f[_0x6686[68]]= _[_0x6686[67]](_0xfb5cx19[_0x6686[68]]);_0xfb5cx2f[_0x6686[69]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],_0xfb5cx2f[_0x6686[68]]);_0xfb5cx23[_0x6686[71]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],qs[_0x6686[72]](_0xfb5cx19[_0x6686[68]][_0x6686[72]]));_0xfb5cx23[_0x6686[71]]= (_0xfb5cx23[_0x6686[71]][_0x6686[73]])?_0xfb5cx23[_0x6686[71]]:_0xfb5cx2f[_0x6686[64]];_0xfb5cx23[_0x6686[76]]= qs[_0x6686[77]](_0xfb5cx19[_0x6686[68]][_0x6686[77]]);_0xfb5cx23[_0x6686[78]]= qs[_0x6686[69]](_[_0x6686[79]](_0xfb5cx19[_0x6686[68]],_0xfb5cx2f[_0x6686[69]]));if(_0xfb5cx19[_0x6686[68]][_0x6686[80]]){_0xfb5cx23[_0x6686[78]]= _[_0x6686[83]](_0xfb5cx23[_0x6686[78]],{$or:_[_0x6686[82]](_0xfb5cx23[_0x6686[71]],function(_0xfb5cx30){var _0xfb5cx31={};_0xfb5cx31[_0xfb5cx30]= {$like:_0x6686[81]+ _0xfb5cx19[_0x6686[68]][_0x6686[80]]+ _0x6686[81]};return _0xfb5cx31})})};_0xfb5cx23= _[_0x6686[83]]({},_0xfb5cx23,_0xfb5cx19[_0x6686[84]]);return _0xfb5cx33[_0x6686[92]](_0xfb5cx23)}})[_0x6686[36]](function(_0xfb5cx35){if(_0xfb5cx35){_0xfb5cx24= _0xfb5cx35[_0x6686[73]];if(!_0xfb5cx19[_0x6686[68]][_0x6686[75]](_0x6686[74])){_0xfb5cx23[_0x6686[47]]= qs[_0x6686[47]](_0xfb5cx19[_0x6686[68]][_0x6686[47]]);_0xfb5cx23[_0x6686[46]]= qs[_0x6686[46]](_0xfb5cx19[_0x6686[68]][_0x6686[46]])};return _0xfb5cx33[_0x6686[92]](_0xfb5cx23)}})[_0x6686[36]](function(_0xfb5cx34){return _0xfb5cx34?{count:_0xfb5cx24,rows:_0xfb5cx34}:null})[_0x6686[36]](respondWithResult(_0xfb5cx20,null,_0x6686[92]))[_0x6686[27]](handleError(_0xfb5cx20,null,_0x6686[92]))};exports[_0x6686[95]]= function(_0xfb5cx19,_0xfb5cx20,_0xfb5cx32){var _0xfb5cx23={};var _0xfb5cx2f={};var _0xfb5cx33;var _0xfb5cx24;return db[_0x6686[66]][_0x6686[94]]({where:{id:_0xfb5cx19[_0x6686[88]][_0x6686[87]]}})[_0x6686[36]](handleEntityNotFound(_0xfb5cx20,null,_0x6686[95]))[_0x6686[36]](function(_0xfb5cx20){if(_0xfb5cx20){_0xfb5cx33= _0xfb5cx20;_0xfb5cx2f[_0x6686[64]]= _[_0x6686[67]](db[_0x6686[93]][_0x6686[65]]);_0xfb5cx2f[_0x6686[68]]= _[_0x6686[67]](_0xfb5cx19[_0x6686[68]]);_0xfb5cx2f[_0x6686[69]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],_0xfb5cx2f[_0x6686[68]]);_0xfb5cx23[_0x6686[71]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],qs[_0x6686[72]](_0xfb5cx19[_0x6686[68]][_0x6686[72]]));_0xfb5cx23[_0x6686[71]]= (_0xfb5cx23[_0x6686[71]][_0x6686[73]])?_0xfb5cx23[_0x6686[71]]:_0xfb5cx2f[_0x6686[64]];_0xfb5cx23[_0x6686[76]]= qs[_0x6686[77]](_0xfb5cx19[_0x6686[68]][_0x6686[77]]);_0xfb5cx23[_0x6686[78]]= qs[_0x6686[69]](_[_0x6686[79]](_0xfb5cx19[_0x6686[68]],_0xfb5cx2f[_0x6686[69]]));if(_0xfb5cx19[_0x6686[68]][_0x6686[80]]){_0xfb5cx23[_0x6686[78]]= _[_0x6686[83]](_0xfb5cx23[_0x6686[78]],{$or:_[_0x6686[82]](_0xfb5cx23[_0x6686[71]],function(_0xfb5cx30){var _0xfb5cx31={};_0xfb5cx31[_0xfb5cx30]= {$like:_0x6686[81]+ _0xfb5cx19[_0x6686[68]][_0x6686[80]]+ _0x6686[81]};return _0xfb5cx31})})};_0xfb5cx23= _[_0x6686[83]]({},_0xfb5cx23,_0xfb5cx19[_0x6686[84]]);return _0xfb5cx33[_0x6686[95]](_0xfb5cx23)}})[_0x6686[36]](function(_0xfb5cx35){if(_0xfb5cx35){_0xfb5cx24= _0xfb5cx35[_0x6686[73]];if(!_0xfb5cx19[_0x6686[68]][_0x6686[75]](_0x6686[74])){_0xfb5cx23[_0x6686[47]]= qs[_0x6686[47]](_0xfb5cx19[_0x6686[68]][_0x6686[47]]);_0xfb5cx23[_0x6686[46]]= qs[_0x6686[46]](_0xfb5cx19[_0x6686[68]][_0x6686[46]])};return _0xfb5cx33[_0x6686[95]](_0xfb5cx23)}})[_0x6686[36]](function(_0xfb5cx34){return _0xfb5cx34?{count:_0xfb5cx24,rows:_0xfb5cx34}:null})[_0x6686[36]](respondWithResult(_0xfb5cx20,null,_0x6686[95]))[_0x6686[27]](handleError(_0xfb5cx20,null,_0x6686[95]))};exports[_0x6686[96]]= function(_0xfb5cx19,_0xfb5cx20,_0xfb5cx32){var _0xfb5cx23={};var _0xfb5cx2f={};var _0xfb5cx33;var _0xfb5cx24;return db[_0x6686[66]][_0x6686[94]]({where:{id:_0xfb5cx19[_0x6686[88]][_0x6686[87]]}})[_0x6686[36]](handleEntityNotFound(_0xfb5cx20,null,_0x6686[96]))[_0x6686[36]](function(_0xfb5cx20){if(_0xfb5cx20){_0xfb5cx33= _0xfb5cx20;_0xfb5cx2f[_0x6686[64]]= _[_0x6686[67]](db[_0x6686[93]][_0x6686[65]]);_0xfb5cx2f[_0x6686[68]]= _[_0x6686[67]](_0xfb5cx19[_0x6686[68]]);_0xfb5cx2f[_0x6686[69]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],_0xfb5cx2f[_0x6686[68]]);_0xfb5cx23[_0x6686[71]]= _[_0x6686[70]](_0xfb5cx2f[_0x6686[64]],qs[_0x6686[72]](_0xfb5cx19[_0x6686[68]][_0x6686[72]]));_0xfb5cx23[_0x6686[71]]= (_0xfb5cx23[_0x6686[71]][_0x6686[73]])?_0xfb5cx23[_0x6686[71]]:_0xfb5cx2f[_0x6686[64]];_0xfb5cx23[_0x6686[76]]= qs[_0x6686[77]](_0xfb5cx19[_0x6686[68]][_0x6686[77]]);_0xfb5cx23[_0x6686[78]]= qs[_0x6686[69]](_[_0x6686[79]](_0xfb5cx19[_0x6686[68]],_0xfb5cx2f[_0x6686[69]]));if(_0xfb5cx19[_0x6686[68]][_0x6686[80]]){_0xfb5cx23[_0x6686[78]]= _[_0x6686[83]](_0xfb5cx23[_0x6686[78]],{$or:_[_0x6686[82]](_0xfb5cx23[_0x6686[71]],function(_0xfb5cx30){var _0xfb5cx31={};_0xfb5cx31[_0xfb5cx30]= {$like:_0x6686[81]+ _0xfb5cx19[_0x6686[68]][_0x6686[80]]+ _0x6686[81]};return _0xfb5cx31})})};_0xfb5cx23= _[_0x6686[83]]({},_0xfb5cx23,_0xfb5cx19[_0x6686[84]]);return _0xfb5cx33[_0x6686[96]](_0xfb5cx23)}})[_0x6686[36]](function(_0xfb5cx35){if(_0xfb5cx35){_0xfb5cx24= _0xfb5cx35[_0x6686[73]];if(!_0xfb5cx19[_0x6686[68]][_0x6686[75]](_0x6686[74])){_0xfb5cx23[_0x6686[47]]= qs[_0x6686[47]](_0xfb5cx19[_0x6686[68]][_0x6686[47]]);_0xfb5cx23[_0x6686[46]]= qs[_0x6686[46]](_0xfb5cx19[_0x6686[68]][_0x6686[46]])};return _0xfb5cx33[_0x6686[96]](_0xfb5cx23)}})[_0x6686[36]](function(_0xfb5cx34){return _0xfb5cx34?{count:_0xfb5cx24,rows:_0xfb5cx34}:null})[_0x6686[36]](respondWithResult(_0xfb5cx20,null,_0x6686[96]))[_0x6686[27]](handleError(_0xfb5cx20,null,_0x6686[96]))}
\ No newline at end of file
+var _0xb66b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73"];_0xb66b[0];var jsonpatch=require(_0xb66b[1]);var rp=require(_0xb66b[2]);var moment=require(_0xb66b[3]);var BPromise=require(_0xb66b[4]);var util=require(_0xb66b[5]);var path=require(_0xb66b[6]);var sox=require(_0xb66b[7]);var ejs=require(_0xb66b[8]);var fs=require(_0xb66b[9]);var _=require(_0xb66b[10]);var squel=require(_0xb66b[11]);var crypto=require(_0xb66b[12]);var jsforce=require(_0xb66b[13]);var toCsv=require(_0xb66b[14]);var qs=require(_0xb66b[15]);var logger=require(_0xb66b[17])(_0xb66b[16]);var utils=require(_0xb66b[18]);var config=require(_0xb66b[19]);var db=require(_0xb66b[21])[_0xb66b[20]];var jayson=require(_0xb66b[22]);var client=jayson[_0xb66b[24]][_0xb66b[23]]({port:9002});function respondWithRpcPromise(_0x1176x17,_0x1176x18,_0x1176x19){return  new BPromise(function(_0x1176x1a,_0x1176x1b){return client[_0xb66b[37]](_0x1176x17,_0x1176x19)[_0xb66b[36]](function(_0x1176x1d){logger[_0xb66b[29]](_0xb66b[25],_0x1176x18,_0xb66b[28]);logger[_0xb66b[32]](_0xb66b[30],_0x1176x18,_0xb66b[28],JSON[_0xb66b[31]](_0x1176x1d));if(_0x1176x1d[_0xb66b[26]]){if(_0x1176x1d[_0xb66b[26]][_0xb66b[33]]=== 500){logger[_0xb66b[26]](_0xb66b[25],_0x1176x18,_0x1176x1d[_0xb66b[26]][_0xb66b[34]]);return _0x1176x1b(_0x1176x1d[_0xb66b[26]][_0xb66b[34]])};logger[_0xb66b[26]](_0xb66b[25],_0x1176x18,_0x1176x1d[_0xb66b[26]][_0xb66b[34]]);return _0x1176x1a(_0x1176x1d[_0xb66b[26]][_0xb66b[34]])}else {logger[_0xb66b[29]](_0xb66b[25],_0x1176x18,_0xb66b[28]);_0x1176x1a(_0x1176x1d[_0xb66b[35]][_0xb66b[34]])}})[_0xb66b[27]](function(_0x1176x1c){logger[_0xb66b[26]](_0xb66b[25],_0x1176x18,_0x1176x1c);_0x1176x1b(_0x1176x1c)})})}function respondWithStatusCode(_0x1176x1d,_0x1176x1f,_0x1176x18){_0x1176x1f= _0x1176x1f|| 204;return function(_0x1176x20){if(_0x1176x20){logger[_0xb66b[29]](_0xb66b[30],_0x1176x18,_0x1176x1f,_0xb66b[38]);logger[_0xb66b[32]](_0xb66b[39],_0x1176x18,_0x1176x1f,_0xb66b[38]);return _0x1176x1d[_0xb66b[40]](_0x1176x1f)};return _0x1176x1d[_0xb66b[42]](304)[_0xb66b[41]]()}}function respondWithResult(_0x1176x1d,_0x1176x1f,_0x1176x18){_0x1176x1f= _0x1176x1f|| 200;return function(_0x1176x20){if(_0x1176x20){logger[_0xb66b[29]](_0xb66b[30],_0x1176x18,_0x1176x1f,_0xb66b[43]);logger[_0xb66b[32]](_0xb66b[39],_0x1176x18,_0x1176x1f,_0xb66b[43],JSON[_0xb66b[31]](_0x1176x20));return _0x1176x1d[_0xb66b[42]](_0x1176x1f)[_0xb66b[44]](_0x1176x20)};return _0x1176x1d[_0xb66b[42]](304)[_0xb66b[41]]()}}function respondWithFilteredResult(_0x1176x1d,_0x1176x23,_0x1176x18){return function(_0x1176x20){if(_0x1176x20){var _0x1176x24=_0x1176x20[_0xb66b[45]],_0x1176x25=_0x1176x23[_0xb66b[46]],_0x1176x26=_0x1176x23[_0xb66b[46]]+ _0x1176x23[_0xb66b[47]],_0x1176x1f;if(_0x1176x26>= _0x1176x24){_0x1176x26= _0x1176x24;_0x1176x1f= 200}else {_0x1176x1f= 206};_0x1176x1d[_0xb66b[42]](_0x1176x1f);logger[_0xb66b[29]](_0xb66b[30],_0x1176x18,_0x1176x1f,_0xb66b[48]);logger[_0xb66b[32]](_0xb66b[39],_0x1176x18,_0x1176x1f,_0xb66b[43],JSON[_0xb66b[31]](_0x1176x20));return _0x1176x1d[_0xb66b[52]](_0xb66b[49],_0x1176x25+ _0xb66b[50]+ _0x1176x26+ _0xb66b[51]+ _0x1176x24)[_0xb66b[44]](_0x1176x20)};return null}}function patchUpdates(_0x1176x28){return function(_0x1176x20){try{jsonpatch[_0xb66b[53]](_0x1176x20,_0x1176x28,true)}catch(err){return BPromise[_0xb66b[54]](err)};return _0x1176x20[_0xb66b[55]]()}}function saveUpdates(_0x1176x2a,_0x1176x1f,_0x1176x18){return function(_0x1176x20){if(_0x1176x20){return _0x1176x20[_0xb66b[57]](_0x1176x2a)[_0xb66b[36]](function(_0x1176x2b){logger[_0xb66b[29]](_0xb66b[30],_0x1176x18,_0x1176x1f,_0xb66b[56]);logger[_0xb66b[32]](_0xb66b[39],_0x1176x18,_0x1176x1f,_0xb66b[56],JSON[_0xb66b[31]](_0x1176x20));return _0x1176x2b})};return null}}function removeEntity(_0x1176x1d,_0x1176x1f,_0x1176x18){return function(_0x1176x20){if(_0x1176x20){return _0x1176x20[_0xb66b[59]]()[_0xb66b[36]](function(){logger[_0xb66b[29]](_0xb66b[30],_0x1176x18,_0x1176x1f,_0xb66b[58]);logger[_0xb66b[32]](_0xb66b[39],_0x1176x18,_0x1176x1f,_0xb66b[58],JSON[_0xb66b[31]](_0x1176x20));_0x1176x1d[_0xb66b[42]](204)[_0xb66b[41]]()})}}}function handleEntityNotFound(_0x1176x1d,_0x1176x1f,_0x1176x18){return function(_0x1176x20){if(!_0x1176x20){logger[_0xb66b[26]](_0xb66b[30],_0x1176x18,404,_0xb66b[60]);_0x1176x1d[_0xb66b[42]](404)[_0xb66b[41]]();return null};return _0x1176x20}}function handleError(_0x1176x1d,_0x1176x1f,_0x1176x18){_0x1176x1f= _0x1176x1f|| 500;return function(_0x1176x1c){logger[_0xb66b[26]](_0xb66b[30],_0x1176x18,_0x1176x1f,JSON[_0xb66b[31]](_0x1176x1c));delete _0x1176x1c[_0xb66b[61]];_0x1176x1d[_0xb66b[42]](_0x1176x1f)[_0xb66b[62]](_0x1176x1c)}}exports[_0xb66b[63]]= function(_0x1176x19,_0x1176x1d){var _0x1176x23={},_0x1176x2f={};_0x1176x2f[_0xb66b[64]]= _[_0xb66b[67]](db[_0xb66b[66]][_0xb66b[65]]);_0x1176x2f[_0xb66b[68]]= _[_0xb66b[67]](_0x1176x19[_0xb66b[68]]);_0x1176x2f[_0xb66b[69]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],_0x1176x2f[_0xb66b[68]]);_0x1176x23[_0xb66b[71]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],qs[_0xb66b[72]](_0x1176x19[_0xb66b[68]][_0xb66b[72]]));_0x1176x23[_0xb66b[71]]= (_0x1176x23[_0xb66b[71]][_0xb66b[73]])?_0x1176x23[_0xb66b[71]]:_0x1176x2f[_0xb66b[64]];if(!_0x1176x19[_0xb66b[68]][_0xb66b[75]](_0xb66b[74])){_0x1176x23[_0xb66b[47]]= qs[_0xb66b[47]](_0x1176x19[_0xb66b[68]][_0xb66b[47]]);_0x1176x23[_0xb66b[46]]= qs[_0xb66b[46]](_0x1176x19[_0xb66b[68]][_0xb66b[46]])};_0x1176x23[_0xb66b[76]]= qs[_0xb66b[77]](_0x1176x19[_0xb66b[68]][_0xb66b[77]]);_0x1176x23[_0xb66b[78]]= qs[_0xb66b[69]](_[_0xb66b[79]](_0x1176x19[_0xb66b[68]],_0x1176x2f[_0xb66b[69]]));if(_0x1176x19[_0xb66b[68]][_0xb66b[80]]){_0x1176x23[_0xb66b[78]]= _[_0xb66b[83]](_0x1176x23[_0xb66b[78]],{$or:_[_0xb66b[82]](_0x1176x23[_0xb66b[71]],function(_0x1176x30){var _0x1176x31={};_0x1176x31[_0x1176x30]= {$like:_0xb66b[81]+ _0x1176x19[_0xb66b[68]][_0xb66b[80]]+ _0xb66b[81]};return _0x1176x31})})};_0x1176x23= _[_0xb66b[83]]({},_0x1176x23,_0x1176x19[_0xb66b[84]]);return db[_0xb66b[66]][_0xb66b[85]](_0x1176x23)[_0xb66b[36]](respondWithFilteredResult(_0x1176x1d,_0x1176x23,_0xb66b[63]))[_0xb66b[27]](handleError(_0x1176x1d,null,_0xb66b[63]))};exports[_0xb66b[86]]= function(_0x1176x19,_0x1176x1d){var _0x1176x23={raw:false,where:{id:_0x1176x19[_0xb66b[88]][_0xb66b[87]]}},_0x1176x2f={};_0x1176x2f[_0xb66b[64]]= _[_0xb66b[67]](db[_0xb66b[66]][_0xb66b[65]]);_0x1176x2f[_0xb66b[68]]= _[_0xb66b[67]](_0x1176x19[_0xb66b[68]]);_0x1176x2f[_0xb66b[69]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],_0x1176x2f[_0xb66b[68]]);_0x1176x23[_0xb66b[71]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],qs[_0xb66b[72]](_0x1176x19[_0xb66b[68]][_0xb66b[72]]));_0x1176x23[_0xb66b[71]]= (_0x1176x23[_0xb66b[71]][_0xb66b[73]])?_0x1176x23[_0xb66b[71]]:_0x1176x2f[_0xb66b[64]];_0x1176x23= _[_0xb66b[83]]({},_0x1176x23,_0x1176x19[_0xb66b[84]]);return db[_0xb66b[66]][_0xb66b[89]](_0x1176x23)[_0xb66b[36]](handleEntityNotFound(_0x1176x1d,null,_0xb66b[86]))[_0xb66b[36]](respondWithResult(_0x1176x1d,null,_0xb66b[86]))[_0xb66b[27]](handleError(_0x1176x1d,null,_0xb66b[86]))};exports[_0xb66b[90]]= function(_0x1176x19,_0x1176x1d){return db[_0xb66b[66]][_0xb66b[90]](_0x1176x19[_0xb66b[91]],{})[_0xb66b[36]](respondWithResult(_0x1176x1d,201,_0xb66b[90]))[_0xb66b[27]](handleError(_0x1176x1d,null,_0xb66b[90]))};exports[_0xb66b[57]]= function(_0x1176x19,_0x1176x1d){if(_0x1176x19[_0xb66b[91]][_0xb66b[87]]){delete _0x1176x19[_0xb66b[91]][_0xb66b[87]]};return db[_0xb66b[66]][_0xb66b[89]]({where:{id:_0x1176x19[_0xb66b[88]][_0xb66b[87]]}})[_0xb66b[36]](handleEntityNotFound(_0x1176x1d,null,_0xb66b[57]))[_0xb66b[36]](saveUpdates(_0x1176x19[_0xb66b[91]],null,_0xb66b[57]))[_0xb66b[36]](respondWithResult(_0x1176x1d,null,_0xb66b[57]))[_0xb66b[27]](handleError(_0x1176x1d,null,_0xb66b[57]))};exports[_0xb66b[59]]= function(_0x1176x19,_0x1176x1d){return db[_0xb66b[66]][_0xb66b[89]]({where:{id:_0x1176x19[_0xb66b[88]][_0xb66b[87]]}})[_0xb66b[36]](handleEntityNotFound(_0x1176x1d,null,_0xb66b[59]))[_0xb66b[36]](removeEntity(_0x1176x1d,null,_0xb66b[59]))[_0xb66b[27]](handleError(_0x1176x1d,null,_0xb66b[59]))};exports[_0xb66b[92]]= function(_0x1176x19,_0x1176x20,_0x1176x32){var _0x1176x23={};var _0x1176x2f={};var _0x1176x33;var _0x1176x24;return db[_0xb66b[66]][_0xb66b[94]]({where:{id:_0x1176x19[_0xb66b[88]][_0xb66b[87]]}})[_0xb66b[36]](handleEntityNotFound(_0x1176x20,null,_0xb66b[92]))[_0xb66b[36]](function(_0x1176x20){if(_0x1176x20){_0x1176x33= _0x1176x20;_0x1176x2f[_0xb66b[64]]= _[_0xb66b[67]](db[_0xb66b[93]][_0xb66b[65]]);_0x1176x2f[_0xb66b[68]]= _[_0xb66b[67]](_0x1176x19[_0xb66b[68]]);_0x1176x2f[_0xb66b[69]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],_0x1176x2f[_0xb66b[68]]);_0x1176x23[_0xb66b[71]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],qs[_0xb66b[72]](_0x1176x19[_0xb66b[68]][_0xb66b[72]]));_0x1176x23[_0xb66b[71]]= (_0x1176x23[_0xb66b[71]][_0xb66b[73]])?_0x1176x23[_0xb66b[71]]:_0x1176x2f[_0xb66b[64]];_0x1176x23[_0xb66b[76]]= qs[_0xb66b[77]](_0x1176x19[_0xb66b[68]][_0xb66b[77]]);_0x1176x23[_0xb66b[78]]= qs[_0xb66b[69]](_[_0xb66b[79]](_0x1176x19[_0xb66b[68]],_0x1176x2f[_0xb66b[69]]));if(_0x1176x19[_0xb66b[68]][_0xb66b[80]]){_0x1176x23[_0xb66b[78]]= _[_0xb66b[83]](_0x1176x23[_0xb66b[78]],{$or:_[_0xb66b[82]](_0x1176x23[_0xb66b[71]],function(_0x1176x30){var _0x1176x31={};_0x1176x31[_0x1176x30]= {$like:_0xb66b[81]+ _0x1176x19[_0xb66b[68]][_0xb66b[80]]+ _0xb66b[81]};return _0x1176x31})})};_0x1176x23= _[_0xb66b[83]]({},_0x1176x23,_0x1176x19[_0xb66b[84]]);return _0x1176x33[_0xb66b[92]](_0x1176x23)}})[_0xb66b[36]](function(_0x1176x35){if(_0x1176x35){_0x1176x24= _0x1176x35[_0xb66b[73]];if(!_0x1176x19[_0xb66b[68]][_0xb66b[75]](_0xb66b[74])){_0x1176x23[_0xb66b[47]]= qs[_0xb66b[47]](_0x1176x19[_0xb66b[68]][_0xb66b[47]]);_0x1176x23[_0xb66b[46]]= qs[_0xb66b[46]](_0x1176x19[_0xb66b[68]][_0xb66b[46]])};return _0x1176x33[_0xb66b[92]](_0x1176x23)}})[_0xb66b[36]](function(_0x1176x34){return _0x1176x34?{count:_0x1176x24,rows:_0x1176x34}:null})[_0xb66b[36]](respondWithResult(_0x1176x20,null,_0xb66b[92]))[_0xb66b[27]](handleError(_0x1176x20,null,_0xb66b[92]))};exports[_0xb66b[95]]= function(_0x1176x19,_0x1176x20,_0x1176x32){var _0x1176x23={};var _0x1176x2f={};var _0x1176x33;var _0x1176x24;return db[_0xb66b[66]][_0xb66b[94]]({where:{id:_0x1176x19[_0xb66b[88]][_0xb66b[87]]}})[_0xb66b[36]](handleEntityNotFound(_0x1176x20,null,_0xb66b[95]))[_0xb66b[36]](function(_0x1176x20){if(_0x1176x20){_0x1176x33= _0x1176x20;_0x1176x2f[_0xb66b[64]]= _[_0xb66b[67]](db[_0xb66b[93]][_0xb66b[65]]);_0x1176x2f[_0xb66b[68]]= _[_0xb66b[67]](_0x1176x19[_0xb66b[68]]);_0x1176x2f[_0xb66b[69]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],_0x1176x2f[_0xb66b[68]]);_0x1176x23[_0xb66b[71]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],qs[_0xb66b[72]](_0x1176x19[_0xb66b[68]][_0xb66b[72]]));_0x1176x23[_0xb66b[71]]= (_0x1176x23[_0xb66b[71]][_0xb66b[73]])?_0x1176x23[_0xb66b[71]]:_0x1176x2f[_0xb66b[64]];_0x1176x23[_0xb66b[76]]= qs[_0xb66b[77]](_0x1176x19[_0xb66b[68]][_0xb66b[77]]);_0x1176x23[_0xb66b[78]]= qs[_0xb66b[69]](_[_0xb66b[79]](_0x1176x19[_0xb66b[68]],_0x1176x2f[_0xb66b[69]]));if(_0x1176x19[_0xb66b[68]][_0xb66b[80]]){_0x1176x23[_0xb66b[78]]= _[_0xb66b[83]](_0x1176x23[_0xb66b[78]],{$or:_[_0xb66b[82]](_0x1176x23[_0xb66b[71]],function(_0x1176x30){var _0x1176x31={};_0x1176x31[_0x1176x30]= {$like:_0xb66b[81]+ _0x1176x19[_0xb66b[68]][_0xb66b[80]]+ _0xb66b[81]};return _0x1176x31})})};_0x1176x23= _[_0xb66b[83]]({},_0x1176x23,_0x1176x19[_0xb66b[84]]);return _0x1176x33[_0xb66b[95]](_0x1176x23)}})[_0xb66b[36]](function(_0x1176x35){if(_0x1176x35){_0x1176x24= _0x1176x35[_0xb66b[73]];if(!_0x1176x19[_0xb66b[68]][_0xb66b[75]](_0xb66b[74])){_0x1176x23[_0xb66b[47]]= qs[_0xb66b[47]](_0x1176x19[_0xb66b[68]][_0xb66b[47]]);_0x1176x23[_0xb66b[46]]= qs[_0xb66b[46]](_0x1176x19[_0xb66b[68]][_0xb66b[46]])};return _0x1176x33[_0xb66b[95]](_0x1176x23)}})[_0xb66b[36]](function(_0x1176x34){return _0x1176x34?{count:_0x1176x24,rows:_0x1176x34}:null})[_0xb66b[36]](respondWithResult(_0x1176x20,null,_0xb66b[95]))[_0xb66b[27]](handleError(_0x1176x20,null,_0xb66b[95]))};exports[_0xb66b[96]]= function(_0x1176x19,_0x1176x20,_0x1176x32){var _0x1176x23={};var _0x1176x2f={};var _0x1176x33;var _0x1176x24;return db[_0xb66b[66]][_0xb66b[94]]({where:{id:_0x1176x19[_0xb66b[88]][_0xb66b[87]]}})[_0xb66b[36]](handleEntityNotFound(_0x1176x20,null,_0xb66b[96]))[_0xb66b[36]](function(_0x1176x20){if(_0x1176x20){_0x1176x33= _0x1176x20;_0x1176x2f[_0xb66b[64]]= _[_0xb66b[67]](db[_0xb66b[93]][_0xb66b[65]]);_0x1176x2f[_0xb66b[68]]= _[_0xb66b[67]](_0x1176x19[_0xb66b[68]]);_0x1176x2f[_0xb66b[69]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],_0x1176x2f[_0xb66b[68]]);_0x1176x23[_0xb66b[71]]= _[_0xb66b[70]](_0x1176x2f[_0xb66b[64]],qs[_0xb66b[72]](_0x1176x19[_0xb66b[68]][_0xb66b[72]]));_0x1176x23[_0xb66b[71]]= (_0x1176x23[_0xb66b[71]][_0xb66b[73]])?_0x1176x23[_0xb66b[71]]:_0x1176x2f[_0xb66b[64]];_0x1176x23[_0xb66b[76]]= qs[_0xb66b[77]](_0x1176x19[_0xb66b[68]][_0xb66b[77]]);_0x1176x23[_0xb66b[78]]= qs[_0xb66b[69]](_[_0xb66b[79]](_0x1176x19[_0xb66b[68]],_0x1176x2f[_0xb66b[69]]));if(_0x1176x19[_0xb66b[68]][_0xb66b[80]]){_0x1176x23[_0xb66b[78]]= _[_0xb66b[83]](_0x1176x23[_0xb66b[78]],{$or:_[_0xb66b[82]](_0x1176x23[_0xb66b[71]],function(_0x1176x30){var _0x1176x31={};_0x1176x31[_0x1176x30]= {$like:_0xb66b[81]+ _0x1176x19[_0xb66b[68]][_0xb66b[80]]+ _0xb66b[81]};return _0x1176x31})})};_0x1176x23= _[_0xb66b[83]]({},_0x1176x23,_0x1176x19[_0xb66b[84]]);return _0x1176x33[_0xb66b[96]](_0x1176x23)}})[_0xb66b[36]](function(_0x1176x35){if(_0x1176x35){_0x1176x24= _0x1176x35[_0xb66b[73]];if(!_0x1176x19[_0xb66b[68]][_0xb66b[75]](_0xb66b[74])){_0x1176x23[_0xb66b[47]]= qs[_0xb66b[47]](_0x1176x19[_0xb66b[68]][_0xb66b[47]]);_0x1176x23[_0xb66b[46]]= qs[_0xb66b[46]](_0x1176x19[_0xb66b[68]][_0xb66b[46]])};return _0x1176x33[_0xb66b[96]](_0x1176x23)}})[_0xb66b[36]](function(_0x1176x34){return _0x1176x34?{count:_0x1176x24,rows:_0x1176x34}:null})[_0xb66b[36]](respondWithResult(_0x1176x20,null,_0xb66b[96]))[_0xb66b[27]](handleError(_0x1176x20,null,_0xb66b[96]))}
\ No newline at end of file
index 287424b..9f69e8b 100644 (file)
@@ -1 +1 @@
-var _0x902f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x5F\x73\x75\x67\x61\x72\x63\x72\x6D\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x902f[0];var _=require(_0x902f[1]);var util=require(_0x902f[2]);var logger=require(_0x902f[4])(_0x902f[3]);var attributes=require(_0x902f[5]);module[_0x902f[6]]= function(_0x90dbx5,_0x90dbx6){return _0x90dbx5[_0x902f[9]](_0x902f[7],attributes,{tableName:_0x902f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x68e2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x5F\x73\x75\x67\x61\x72\x63\x72\x6D\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x68e2[0];var _=require(_0x68e2[1]);var util=require(_0x68e2[2]);var logger=require(_0x68e2[4])(_0x68e2[3]);var attributes=require(_0x68e2[5]);module[_0x68e2[6]]= function(_0x4ecbx5,_0x4ecbx6){return _0x4ecbx5[_0x68e2[9]](_0x68e2[7],attributes,{tableName:_0x68e2[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index acdca5c..0df822b 100644 (file)
@@ -1 +1 @@
-var _0x58c9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x58c9[0];var _=require(_0x58c9[1]);var util=require(_0x58c9[2]);var moment=require(_0x58c9[3]);var BPromise=require(_0x58c9[4]);var db=require(_0x58c9[6])[_0x58c9[5]];var utils=require(_0x58c9[7]);var logger=require(_0x58c9[9])(_0x58c9[8]);var jayson=require(_0x58c9[10]);var client=jayson[_0x58c9[12]][_0x58c9[11]]({port:9002});function respondWithRpcPromise(_0xa7e8xb,_0xa7e8xc,_0xa7e8xd){return  new BPromise(function(_0xa7e8xe,_0xa7e8xf){return client[_0x58c9[25]](_0xa7e8xb,_0xa7e8xd)[_0x58c9[24]](function(_0xa7e8x11){logger[_0x58c9[17]](_0x58c9[13],_0xa7e8xc,_0x58c9[16]);logger[_0x58c9[20]](_0x58c9[18],_0xa7e8xc,_0x58c9[16],JSON[_0x58c9[19]](_0xa7e8x11));if(_0xa7e8x11[_0x58c9[14]]){if(_0xa7e8x11[_0x58c9[14]][_0x58c9[21]]=== 500){logger[_0x58c9[14]](_0x58c9[13],_0xa7e8xc,_0xa7e8x11[_0x58c9[14]][_0x58c9[22]]);return _0xa7e8xf(_0xa7e8x11[_0x58c9[14]][_0x58c9[22]])};logger[_0x58c9[14]](_0x58c9[13],_0xa7e8xc,_0xa7e8x11[_0x58c9[14]][_0x58c9[22]]);return _0xa7e8xe(_0xa7e8x11[_0x58c9[14]][_0x58c9[22]])}else {logger[_0x58c9[17]](_0x58c9[13],_0xa7e8xc,_0x58c9[16]);_0xa7e8xe(_0xa7e8x11[_0x58c9[23]][_0x58c9[22]])}})[_0x58c9[15]](function(_0xa7e8x10){logger[_0x58c9[14]](_0x58c9[13],_0xa7e8xc,_0xa7e8x10);_0xa7e8xf(_0xa7e8x10)})})}
\ No newline at end of file
+var _0xeb02=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xeb02[0];var _=require(_0xeb02[1]);var util=require(_0xeb02[2]);var moment=require(_0xeb02[3]);var BPromise=require(_0xeb02[4]);var db=require(_0xeb02[6])[_0xeb02[5]];var utils=require(_0xeb02[7]);var logger=require(_0xeb02[9])(_0xeb02[8]);var jayson=require(_0xeb02[10]);var client=jayson[_0xeb02[12]][_0xeb02[11]]({port:9002});function respondWithRpcPromise(_0xf40dxb,_0xf40dxc,_0xf40dxd){return  new BPromise(function(_0xf40dxe,_0xf40dxf){return client[_0xeb02[25]](_0xf40dxb,_0xf40dxd)[_0xeb02[24]](function(_0xf40dx11){logger[_0xeb02[17]](_0xeb02[13],_0xf40dxc,_0xeb02[16]);logger[_0xeb02[20]](_0xeb02[18],_0xf40dxc,_0xeb02[16],JSON[_0xeb02[19]](_0xf40dx11));if(_0xf40dx11[_0xeb02[14]]){if(_0xf40dx11[_0xeb02[14]][_0xeb02[21]]=== 500){logger[_0xeb02[14]](_0xeb02[13],_0xf40dxc,_0xf40dx11[_0xeb02[14]][_0xeb02[22]]);return _0xf40dxf(_0xf40dx11[_0xeb02[14]][_0xeb02[22]])};logger[_0xeb02[14]](_0xeb02[13],_0xf40dxc,_0xf40dx11[_0xeb02[14]][_0xeb02[22]]);return _0xf40dxe(_0xf40dx11[_0xeb02[14]][_0xeb02[22]])}else {logger[_0xeb02[17]](_0xeb02[13],_0xf40dxc,_0xeb02[16]);_0xf40dxe(_0xf40dx11[_0xeb02[23]][_0xeb02[22]])}})[_0xeb02[15]](function(_0xf40dx10){logger[_0xeb02[14]](_0xeb02[13],_0xf40dxc,_0xf40dx10);_0xf40dxf(_0xf40dx10)})})}
\ No newline at end of file
index 475a7b4..fdc93c8 100644 (file)
@@ -1 +1 @@
-var _0x1dd4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1dd4[0];var multer=require(_0x1dd4[1]);var util=require(_0x1dd4[2]);var path=require(_0x1dd4[3]);var express=require(_0x1dd4[4]);var router=express.Router();var auth=require(_0x1dd4[5]);var config=require(_0x1dd4[6]);var controller=require(_0x1dd4[7]);router[_0x1dd4[11]](_0x1dd4[8],auth[_0x1dd4[9]](),controller[_0x1dd4[10]]);router[_0x1dd4[11]](_0x1dd4[12],auth[_0x1dd4[9]](),controller[_0x1dd4[13]]);router[_0x1dd4[15]](_0x1dd4[8],auth[_0x1dd4[9]](),controller[_0x1dd4[14]]);router[_0x1dd4[17]](_0x1dd4[12],auth[_0x1dd4[9]](),controller[_0x1dd4[16]]);router[_0x1dd4[19]](_0x1dd4[12],auth[_0x1dd4[9]](),controller[_0x1dd4[18]]);module[_0x1dd4[20]]= router
\ No newline at end of file
+var _0x8e74=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8e74[0];var multer=require(_0x8e74[1]);var util=require(_0x8e74[2]);var path=require(_0x8e74[3]);var express=require(_0x8e74[4]);var router=express.Router();var auth=require(_0x8e74[5]);var config=require(_0x8e74[6]);var controller=require(_0x8e74[7]);router[_0x8e74[11]](_0x8e74[8],auth[_0x8e74[9]](),controller[_0x8e74[10]]);router[_0x8e74[11]](_0x8e74[12],auth[_0x8e74[9]](),controller[_0x8e74[13]]);router[_0x8e74[15]](_0x8e74[8],auth[_0x8e74[9]](),controller[_0x8e74[14]]);router[_0x8e74[17]](_0x8e74[12],auth[_0x8e74[9]](),controller[_0x8e74[16]]);router[_0x8e74[19]](_0x8e74[12],auth[_0x8e74[9]](),controller[_0x8e74[18]]);module[_0x8e74[20]]= router
\ No newline at end of file
index 7dbe5f5..25b1140 100644 (file)
@@ -1 +1 @@
-var _0x3098=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x75\x73\x74\x6F\x6D\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x3098[0];var Sequelize=require(_0x3098[1]);module[_0x3098[2]]= {type:{type:Sequelize.ENUM(_0x3098[3],_0x3098[4],_0x3098[5],_0x3098[6]),defaultValue:_0x3098[3]},content:{type:Sequelize[_0x3098[7]]},key:{type:Sequelize[_0x3098[7]]},keyType:{type:Sequelize.ENUM(_0x3098[3],_0x3098[4],_0x3098[5])},keyContent:{type:Sequelize[_0x3098[7]]},idField:{type:Sequelize[_0x3098[7]]},nameField:{type:Sequelize[_0x3098[7]]},customField:{type:Sequelize[_0x3098[8]],defaultValue:true},variableName:{type:Sequelize[_0x3098[7]]}}
\ No newline at end of file
+var _0x424a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x75\x73\x74\x6F\x6D\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x424a[0];var Sequelize=require(_0x424a[1]);module[_0x424a[2]]= {type:{type:Sequelize.ENUM(_0x424a[3],_0x424a[4],_0x424a[5],_0x424a[6]),defaultValue:_0x424a[3]},content:{type:Sequelize[_0x424a[7]]},key:{type:Sequelize[_0x424a[7]]},keyType:{type:Sequelize.ENUM(_0x424a[3],_0x424a[4],_0x424a[5])},keyContent:{type:Sequelize[_0x424a[7]]},idField:{type:Sequelize[_0x424a[7]]},nameField:{type:Sequelize[_0x424a[7]]},customField:{type:Sequelize[_0x424a[8]],defaultValue:true},variableName:{type:Sequelize[_0x424a[7]]}}
\ No newline at end of file
index 98169c1..889e02a 100644 (file)
@@ -1 +1 @@
-var _0x85d4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x85d4[0];var jsonpatch=require(_0x85d4[1]);var rp=require(_0x85d4[2]);var moment=require(_0x85d4[3]);var BPromise=require(_0x85d4[4]);var util=require(_0x85d4[5]);var path=require(_0x85d4[6]);var sox=require(_0x85d4[7]);var ejs=require(_0x85d4[8]);var fs=require(_0x85d4[9]);var _=require(_0x85d4[10]);var squel=require(_0x85d4[11]);var crypto=require(_0x85d4[12]);var jsforce=require(_0x85d4[13]);var toCsv=require(_0x85d4[14]);var qs=require(_0x85d4[15]);var logger=require(_0x85d4[17])(_0x85d4[16]);var utils=require(_0x85d4[18]);var config=require(_0x85d4[19]);var db=require(_0x85d4[21])[_0x85d4[20]];function respondWithStatusCode(_0xa07ax15,_0xa07ax16,_0xa07ax17){_0xa07ax16= _0xa07ax16|| 204;return function(_0xa07ax18){if(_0xa07ax18){logger[_0x85d4[24]](_0x85d4[22],_0xa07ax17,_0xa07ax16,_0x85d4[23]);logger[_0x85d4[26]](_0x85d4[25],_0xa07ax17,_0xa07ax16,_0x85d4[23]);return _0xa07ax15[_0x85d4[27]](_0xa07ax16)};return _0xa07ax15[_0x85d4[29]](304)[_0x85d4[28]]()}}function respondWithResult(_0xa07ax15,_0xa07ax16,_0xa07ax17){_0xa07ax16= _0xa07ax16|| 200;return function(_0xa07ax18){if(_0xa07ax18){logger[_0x85d4[24]](_0x85d4[22],_0xa07ax17,_0xa07ax16,_0x85d4[30]);logger[_0x85d4[26]](_0x85d4[25],_0xa07ax17,_0xa07ax16,_0x85d4[30],JSON[_0x85d4[31]](_0xa07ax18));return _0xa07ax15[_0x85d4[29]](_0xa07ax16)[_0x85d4[32]](_0xa07ax18)};return _0xa07ax15[_0x85d4[29]](304)[_0x85d4[28]]()}}function respondWithFilteredResult(_0xa07ax15,_0xa07ax1b,_0xa07ax17){return function(_0xa07ax18){if(_0xa07ax18){var _0xa07ax1c=_0xa07ax18[_0x85d4[33]],_0xa07ax1d=_0xa07ax1b[_0x85d4[34]],_0xa07ax1e=_0xa07ax1b[_0x85d4[34]]+ _0xa07ax1b[_0x85d4[35]],_0xa07ax16;if(_0xa07ax1e>= _0xa07ax1c){_0xa07ax1e= _0xa07ax1c;_0xa07ax16= 200}else {_0xa07ax16= 206};_0xa07ax15[_0x85d4[29]](_0xa07ax16);logger[_0x85d4[24]](_0x85d4[22],_0xa07ax17,_0xa07ax16,_0x85d4[36]);logger[_0x85d4[26]](_0x85d4[25],_0xa07ax17,_0xa07ax16,_0x85d4[30],JSON[_0x85d4[31]](_0xa07ax18));return _0xa07ax15[_0x85d4[40]](_0x85d4[37],_0xa07ax1d+ _0x85d4[38]+ _0xa07ax1e+ _0x85d4[39]+ _0xa07ax1c)[_0x85d4[32]](_0xa07ax18)};return null}}function patchUpdates(_0xa07ax20){return function(_0xa07ax18){try{jsonpatch[_0x85d4[41]](_0xa07ax18,_0xa07ax20,true)}catch(err){return BPromise[_0x85d4[42]](err)};return _0xa07ax18[_0x85d4[43]]()}}function saveUpdates(_0xa07ax22,_0xa07ax16,_0xa07ax17){return function(_0xa07ax18){if(_0xa07ax18){return _0xa07ax18[_0x85d4[46]](_0xa07ax22)[_0x85d4[45]](function(_0xa07ax23){logger[_0x85d4[24]](_0x85d4[22],_0xa07ax17,_0xa07ax16,_0x85d4[44]);logger[_0x85d4[26]](_0x85d4[25],_0xa07ax17,_0xa07ax16,_0x85d4[44],JSON[_0x85d4[31]](_0xa07ax18));return _0xa07ax23})};return null}}function removeEntity(_0xa07ax15,_0xa07ax16,_0xa07ax17){return function(_0xa07ax18){if(_0xa07ax18){return _0xa07ax18[_0x85d4[48]]()[_0x85d4[45]](function(){logger[_0x85d4[24]](_0x85d4[22],_0xa07ax17,_0xa07ax16,_0x85d4[47]);logger[_0x85d4[26]](_0x85d4[25],_0xa07ax17,_0xa07ax16,_0x85d4[47],JSON[_0x85d4[31]](_0xa07ax18));_0xa07ax15[_0x85d4[29]](204)[_0x85d4[28]]()})}}}function handleEntityNotFound(_0xa07ax15,_0xa07ax16,_0xa07ax17){return function(_0xa07ax18){if(!_0xa07ax18){logger[_0x85d4[50]](_0x85d4[22],_0xa07ax17,404,_0x85d4[49]);_0xa07ax15[_0x85d4[29]](404)[_0x85d4[28]]();return null};return _0xa07ax18}}function handleError(_0xa07ax15,_0xa07ax16,_0xa07ax17){_0xa07ax16= _0xa07ax16|| 500;return function(_0xa07ax27){logger[_0x85d4[50]](_0x85d4[22],_0xa07ax17,_0xa07ax16,JSON[_0x85d4[31]](_0xa07ax27));delete _0xa07ax27[_0x85d4[51]];_0xa07ax15[_0x85d4[29]](_0xa07ax16)[_0x85d4[52]](_0xa07ax27)}}exports[_0x85d4[53]]= function(_0xa07ax28,_0xa07ax15){var _0xa07ax1b={},_0xa07ax29={};_0xa07ax29[_0x85d4[54]]= _[_0x85d4[57]](db[_0x85d4[56]][_0x85d4[55]]);_0xa07ax29[_0x85d4[58]]= _[_0x85d4[57]](_0xa07ax28[_0x85d4[58]]);_0xa07ax29[_0x85d4[59]]= _[_0x85d4[60]](_0xa07ax29[_0x85d4[54]],_0xa07ax29[_0x85d4[58]]);_0xa07ax1b[_0x85d4[61]]= _[_0x85d4[60]](_0xa07ax29[_0x85d4[54]],qs[_0x85d4[62]](_0xa07ax28[_0x85d4[58]][_0x85d4[62]]));_0xa07ax1b[_0x85d4[61]]= (_0xa07ax1b[_0x85d4[61]][_0x85d4[63]])?_0xa07ax1b[_0x85d4[61]]:_0xa07ax29[_0x85d4[54]];if(!_0xa07ax28[_0x85d4[58]][_0x85d4[65]](_0x85d4[64])){_0xa07ax1b[_0x85d4[35]]= qs[_0x85d4[35]](_0xa07ax28[_0x85d4[58]][_0x85d4[35]]);_0xa07ax1b[_0x85d4[34]]= qs[_0x85d4[34]](_0xa07ax28[_0x85d4[58]][_0x85d4[34]])};_0xa07ax1b[_0x85d4[66]]= qs[_0x85d4[67]](_0xa07ax28[_0x85d4[58]][_0x85d4[67]]);_0xa07ax1b[_0x85d4[68]]= qs[_0x85d4[59]](_[_0x85d4[69]](_0xa07ax28[_0x85d4[58]],_0xa07ax29[_0x85d4[59]]));if(_0xa07ax28[_0x85d4[58]][_0x85d4[70]]){_0xa07ax1b[_0x85d4[68]]= _[_0x85d4[73]](_0xa07ax1b[_0x85d4[68]],{$or:_[_0x85d4[72]](_0xa07ax1b[_0x85d4[61]],function(_0xa07ax2a){var _0xa07ax2b={};_0xa07ax2b[_0xa07ax2a]= {$like:_0x85d4[71]+ _0xa07ax28[_0x85d4[58]][_0x85d4[70]]+ _0x85d4[71]};return _0xa07ax2b})})};_0xa07ax1b= _[_0x85d4[73]]({},_0xa07ax1b,_0xa07ax28[_0x85d4[74]]);return db[_0x85d4[56]][_0x85d4[76]](_0xa07ax1b)[_0x85d4[45]](respondWithFilteredResult(_0xa07ax15,_0xa07ax1b,_0x85d4[53]))[_0x85d4[75]](handleError(_0xa07ax15,null,_0x85d4[53]))};exports[_0x85d4[77]]= function(_0xa07ax28,_0xa07ax15){var _0xa07ax1b={raw:true,where:{id:_0xa07ax28[_0x85d4[79]][_0x85d4[78]]}},_0xa07ax29={};_0xa07ax29[_0x85d4[54]]= _[_0x85d4[57]](db[_0x85d4[56]][_0x85d4[55]]);_0xa07ax29[_0x85d4[58]]= _[_0x85d4[57]](_0xa07ax28[_0x85d4[58]]);_0xa07ax29[_0x85d4[59]]= _[_0x85d4[60]](_0xa07ax29[_0x85d4[54]],_0xa07ax29[_0x85d4[58]]);_0xa07ax1b[_0x85d4[61]]= _[_0x85d4[60]](_0xa07ax29[_0x85d4[54]],qs[_0x85d4[62]](_0xa07ax28[_0x85d4[58]][_0x85d4[62]]));_0xa07ax1b[_0x85d4[61]]= (_0xa07ax1b[_0x85d4[61]][_0x85d4[63]])?_0xa07ax1b[_0x85d4[61]]:_0xa07ax29[_0x85d4[54]];_0xa07ax1b= _[_0x85d4[73]]({},_0xa07ax1b,_0xa07ax28[_0x85d4[74]]);return db[_0x85d4[56]][_0x85d4[80]](_0xa07ax1b)[_0x85d4[45]](handleEntityNotFound(_0xa07ax15,null,_0x85d4[77]))[_0x85d4[45]](respondWithResult(_0xa07ax15,null,_0x85d4[77]))[_0x85d4[75]](handleError(_0xa07ax15,null,_0x85d4[77]))};exports[_0x85d4[81]]= function(_0xa07ax28,_0xa07ax15){return db[_0x85d4[56]][_0x85d4[81]](_0xa07ax28[_0x85d4[82]],{})[_0x85d4[45]](respondWithResult(_0xa07ax15,201,_0x85d4[81]))[_0x85d4[75]](handleError(_0xa07ax15,null,_0x85d4[81]))};exports[_0x85d4[46]]= function(_0xa07ax28,_0xa07ax15){if(_0xa07ax28[_0x85d4[82]][_0x85d4[78]]){delete _0xa07ax28[_0x85d4[82]][_0x85d4[78]]};return db[_0x85d4[56]][_0x85d4[80]]({where:{id:_0xa07ax28[_0x85d4[79]][_0x85d4[78]]}})[_0x85d4[45]](handleEntityNotFound(_0xa07ax15,null,_0x85d4[46]))[_0x85d4[45]](saveUpdates(_0xa07ax28[_0x85d4[82]],null,_0x85d4[46]))[_0x85d4[45]](respondWithResult(_0xa07ax15,null,_0x85d4[46]))[_0x85d4[75]](handleError(_0xa07ax15,null,_0x85d4[46]))};exports[_0x85d4[48]]= function(_0xa07ax28,_0xa07ax15){return db[_0x85d4[56]][_0x85d4[80]]({where:{id:_0xa07ax28[_0x85d4[79]][_0x85d4[78]]}})[_0x85d4[45]](handleEntityNotFound(_0xa07ax15,null,_0x85d4[48]))[_0x85d4[45]](removeEntity(_0xa07ax15,null,_0x85d4[48]))[_0x85d4[75]](handleError(_0xa07ax15,null,_0x85d4[48]))}
\ No newline at end of file
+var _0x5842=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x5842[0];var jsonpatch=require(_0x5842[1]);var rp=require(_0x5842[2]);var moment=require(_0x5842[3]);var BPromise=require(_0x5842[4]);var util=require(_0x5842[5]);var path=require(_0x5842[6]);var sox=require(_0x5842[7]);var ejs=require(_0x5842[8]);var fs=require(_0x5842[9]);var _=require(_0x5842[10]);var squel=require(_0x5842[11]);var crypto=require(_0x5842[12]);var jsforce=require(_0x5842[13]);var toCsv=require(_0x5842[14]);var qs=require(_0x5842[15]);var logger=require(_0x5842[17])(_0x5842[16]);var utils=require(_0x5842[18]);var config=require(_0x5842[19]);var db=require(_0x5842[21])[_0x5842[20]];function respondWithStatusCode(_0xfe48x15,_0xfe48x16,_0xfe48x17){_0xfe48x16= _0xfe48x16|| 204;return function(_0xfe48x18){if(_0xfe48x18){logger[_0x5842[24]](_0x5842[22],_0xfe48x17,_0xfe48x16,_0x5842[23]);logger[_0x5842[26]](_0x5842[25],_0xfe48x17,_0xfe48x16,_0x5842[23]);return _0xfe48x15[_0x5842[27]](_0xfe48x16)};return _0xfe48x15[_0x5842[29]](304)[_0x5842[28]]()}}function respondWithResult(_0xfe48x15,_0xfe48x16,_0xfe48x17){_0xfe48x16= _0xfe48x16|| 200;return function(_0xfe48x18){if(_0xfe48x18){logger[_0x5842[24]](_0x5842[22],_0xfe48x17,_0xfe48x16,_0x5842[30]);logger[_0x5842[26]](_0x5842[25],_0xfe48x17,_0xfe48x16,_0x5842[30],JSON[_0x5842[31]](_0xfe48x18));return _0xfe48x15[_0x5842[29]](_0xfe48x16)[_0x5842[32]](_0xfe48x18)};return _0xfe48x15[_0x5842[29]](304)[_0x5842[28]]()}}function respondWithFilteredResult(_0xfe48x15,_0xfe48x1b,_0xfe48x17){return function(_0xfe48x18){if(_0xfe48x18){var _0xfe48x1c=_0xfe48x18[_0x5842[33]],_0xfe48x1d=_0xfe48x1b[_0x5842[34]],_0xfe48x1e=_0xfe48x1b[_0x5842[34]]+ _0xfe48x1b[_0x5842[35]],_0xfe48x16;if(_0xfe48x1e>= _0xfe48x1c){_0xfe48x1e= _0xfe48x1c;_0xfe48x16= 200}else {_0xfe48x16= 206};_0xfe48x15[_0x5842[29]](_0xfe48x16);logger[_0x5842[24]](_0x5842[22],_0xfe48x17,_0xfe48x16,_0x5842[36]);logger[_0x5842[26]](_0x5842[25],_0xfe48x17,_0xfe48x16,_0x5842[30],JSON[_0x5842[31]](_0xfe48x18));return _0xfe48x15[_0x5842[40]](_0x5842[37],_0xfe48x1d+ _0x5842[38]+ _0xfe48x1e+ _0x5842[39]+ _0xfe48x1c)[_0x5842[32]](_0xfe48x18)};return null}}function patchUpdates(_0xfe48x20){return function(_0xfe48x18){try{jsonpatch[_0x5842[41]](_0xfe48x18,_0xfe48x20,true)}catch(err){return BPromise[_0x5842[42]](err)};return _0xfe48x18[_0x5842[43]]()}}function saveUpdates(_0xfe48x22,_0xfe48x16,_0xfe48x17){return function(_0xfe48x18){if(_0xfe48x18){return _0xfe48x18[_0x5842[46]](_0xfe48x22)[_0x5842[45]](function(_0xfe48x23){logger[_0x5842[24]](_0x5842[22],_0xfe48x17,_0xfe48x16,_0x5842[44]);logger[_0x5842[26]](_0x5842[25],_0xfe48x17,_0xfe48x16,_0x5842[44],JSON[_0x5842[31]](_0xfe48x18));return _0xfe48x23})};return null}}function removeEntity(_0xfe48x15,_0xfe48x16,_0xfe48x17){return function(_0xfe48x18){if(_0xfe48x18){return _0xfe48x18[_0x5842[48]]()[_0x5842[45]](function(){logger[_0x5842[24]](_0x5842[22],_0xfe48x17,_0xfe48x16,_0x5842[47]);logger[_0x5842[26]](_0x5842[25],_0xfe48x17,_0xfe48x16,_0x5842[47],JSON[_0x5842[31]](_0xfe48x18));_0xfe48x15[_0x5842[29]](204)[_0x5842[28]]()})}}}function handleEntityNotFound(_0xfe48x15,_0xfe48x16,_0xfe48x17){return function(_0xfe48x18){if(!_0xfe48x18){logger[_0x5842[50]](_0x5842[22],_0xfe48x17,404,_0x5842[49]);_0xfe48x15[_0x5842[29]](404)[_0x5842[28]]();return null};return _0xfe48x18}}function handleError(_0xfe48x15,_0xfe48x16,_0xfe48x17){_0xfe48x16= _0xfe48x16|| 500;return function(_0xfe48x27){logger[_0x5842[50]](_0x5842[22],_0xfe48x17,_0xfe48x16,JSON[_0x5842[31]](_0xfe48x27));delete _0xfe48x27[_0x5842[51]];_0xfe48x15[_0x5842[29]](_0xfe48x16)[_0x5842[52]](_0xfe48x27)}}exports[_0x5842[53]]= function(_0xfe48x28,_0xfe48x15){var _0xfe48x1b={},_0xfe48x29={};_0xfe48x29[_0x5842[54]]= _[_0x5842[57]](db[_0x5842[56]][_0x5842[55]]);_0xfe48x29[_0x5842[58]]= _[_0x5842[57]](_0xfe48x28[_0x5842[58]]);_0xfe48x29[_0x5842[59]]= _[_0x5842[60]](_0xfe48x29[_0x5842[54]],_0xfe48x29[_0x5842[58]]);_0xfe48x1b[_0x5842[61]]= _[_0x5842[60]](_0xfe48x29[_0x5842[54]],qs[_0x5842[62]](_0xfe48x28[_0x5842[58]][_0x5842[62]]));_0xfe48x1b[_0x5842[61]]= (_0xfe48x1b[_0x5842[61]][_0x5842[63]])?_0xfe48x1b[_0x5842[61]]:_0xfe48x29[_0x5842[54]];if(!_0xfe48x28[_0x5842[58]][_0x5842[65]](_0x5842[64])){_0xfe48x1b[_0x5842[35]]= qs[_0x5842[35]](_0xfe48x28[_0x5842[58]][_0x5842[35]]);_0xfe48x1b[_0x5842[34]]= qs[_0x5842[34]](_0xfe48x28[_0x5842[58]][_0x5842[34]])};_0xfe48x1b[_0x5842[66]]= qs[_0x5842[67]](_0xfe48x28[_0x5842[58]][_0x5842[67]]);_0xfe48x1b[_0x5842[68]]= qs[_0x5842[59]](_[_0x5842[69]](_0xfe48x28[_0x5842[58]],_0xfe48x29[_0x5842[59]]));if(_0xfe48x28[_0x5842[58]][_0x5842[70]]){_0xfe48x1b[_0x5842[68]]= _[_0x5842[73]](_0xfe48x1b[_0x5842[68]],{$or:_[_0x5842[72]](_0xfe48x1b[_0x5842[61]],function(_0xfe48x2a){var _0xfe48x2b={};_0xfe48x2b[_0xfe48x2a]= {$like:_0x5842[71]+ _0xfe48x28[_0x5842[58]][_0x5842[70]]+ _0x5842[71]};return _0xfe48x2b})})};_0xfe48x1b= _[_0x5842[73]]({},_0xfe48x1b,_0xfe48x28[_0x5842[74]]);return db[_0x5842[56]][_0x5842[76]](_0xfe48x1b)[_0x5842[45]](respondWithFilteredResult(_0xfe48x15,_0xfe48x1b,_0x5842[53]))[_0x5842[75]](handleError(_0xfe48x15,null,_0x5842[53]))};exports[_0x5842[77]]= function(_0xfe48x28,_0xfe48x15){var _0xfe48x1b={raw:true,where:{id:_0xfe48x28[_0x5842[79]][_0x5842[78]]}},_0xfe48x29={};_0xfe48x29[_0x5842[54]]= _[_0x5842[57]](db[_0x5842[56]][_0x5842[55]]);_0xfe48x29[_0x5842[58]]= _[_0x5842[57]](_0xfe48x28[_0x5842[58]]);_0xfe48x29[_0x5842[59]]= _[_0x5842[60]](_0xfe48x29[_0x5842[54]],_0xfe48x29[_0x5842[58]]);_0xfe48x1b[_0x5842[61]]= _[_0x5842[60]](_0xfe48x29[_0x5842[54]],qs[_0x5842[62]](_0xfe48x28[_0x5842[58]][_0x5842[62]]));_0xfe48x1b[_0x5842[61]]= (_0xfe48x1b[_0x5842[61]][_0x5842[63]])?_0xfe48x1b[_0x5842[61]]:_0xfe48x29[_0x5842[54]];_0xfe48x1b= _[_0x5842[73]]({},_0xfe48x1b,_0xfe48x28[_0x5842[74]]);return db[_0x5842[56]][_0x5842[80]](_0xfe48x1b)[_0x5842[45]](handleEntityNotFound(_0xfe48x15,null,_0x5842[77]))[_0x5842[45]](respondWithResult(_0xfe48x15,null,_0x5842[77]))[_0x5842[75]](handleError(_0xfe48x15,null,_0x5842[77]))};exports[_0x5842[81]]= function(_0xfe48x28,_0xfe48x15){return db[_0x5842[56]][_0x5842[81]](_0xfe48x28[_0x5842[82]],{})[_0x5842[45]](respondWithResult(_0xfe48x15,201,_0x5842[81]))[_0x5842[75]](handleError(_0xfe48x15,null,_0x5842[81]))};exports[_0x5842[46]]= function(_0xfe48x28,_0xfe48x15){if(_0xfe48x28[_0x5842[82]][_0x5842[78]]){delete _0xfe48x28[_0x5842[82]][_0x5842[78]]};return db[_0x5842[56]][_0x5842[80]]({where:{id:_0xfe48x28[_0x5842[79]][_0x5842[78]]}})[_0x5842[45]](handleEntityNotFound(_0xfe48x15,null,_0x5842[46]))[_0x5842[45]](saveUpdates(_0xfe48x28[_0x5842[82]],null,_0x5842[46]))[_0x5842[45]](respondWithResult(_0xfe48x15,null,_0x5842[46]))[_0x5842[75]](handleError(_0xfe48x15,null,_0x5842[46]))};exports[_0x5842[48]]= function(_0xfe48x28,_0xfe48x15){return db[_0x5842[56]][_0x5842[80]]({where:{id:_0xfe48x28[_0x5842[79]][_0x5842[78]]}})[_0x5842[45]](handleEntityNotFound(_0xfe48x15,null,_0x5842[48]))[_0x5842[45]](removeEntity(_0xfe48x15,null,_0x5842[48]))[_0x5842[75]](handleError(_0xfe48x15,null,_0x5842[48]))}
\ No newline at end of file
index 0707149..6f957f5 100644 (file)
@@ -1 +1 @@
-var _0xf899=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x69\x6E\x74\x5F\x73\x75\x67\x61\x72\x63\x72\x6D\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0xf899[0];var _=require(_0xf899[1]);var util=require(_0xf899[2]);var logger=require(_0xf899[4])(_0xf899[3]);var attributes=require(_0xf899[5]);module[_0xf899[6]]= function(_0x4d20x5,_0x4d20x6){return _0x4d20x5[_0xf899[9]](_0xf899[7],attributes,{tableName:_0xf899[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x6491=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x69\x6E\x74\x5F\x73\x75\x67\x61\x72\x63\x72\x6D\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x6491[0];var _=require(_0x6491[1]);var util=require(_0x6491[2]);var logger=require(_0x6491[4])(_0x6491[3]);var attributes=require(_0x6491[5]);module[_0x6491[6]]= function(_0xbc93x5,_0xbc93x6){return _0xbc93x5[_0x6491[9]](_0x6491[7],attributes,{tableName:_0x6491[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 300fa03..cf0d9c4 100644 (file)
@@ -1 +1 @@
-var _0x2eaa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2eaa[0];var _=require(_0x2eaa[1]);var util=require(_0x2eaa[2]);var moment=require(_0x2eaa[3]);var BPromise=require(_0x2eaa[4]);var db=require(_0x2eaa[6])[_0x2eaa[5]];var utils=require(_0x2eaa[7]);var logger=require(_0x2eaa[9])(_0x2eaa[8]);var jayson=require(_0x2eaa[10]);var client=jayson[_0x2eaa[12]][_0x2eaa[11]]({port:9002});function respondWithRpcPromise(_0x742bxb,_0x742bxc,_0x742bxd){return  new BPromise(function(_0x742bxe,_0x742bxf){return client[_0x2eaa[25]](_0x742bxb,_0x742bxd)[_0x2eaa[24]](function(_0x742bx11){logger[_0x2eaa[17]](_0x2eaa[13],_0x742bxc,_0x2eaa[16]);logger[_0x2eaa[20]](_0x2eaa[18],_0x742bxc,_0x2eaa[16],JSON[_0x2eaa[19]](_0x742bx11));if(_0x742bx11[_0x2eaa[14]]){if(_0x742bx11[_0x2eaa[14]][_0x2eaa[21]]=== 500){logger[_0x2eaa[14]](_0x2eaa[13],_0x742bxc,_0x742bx11[_0x2eaa[14]][_0x2eaa[22]]);return _0x742bxf(_0x742bx11[_0x2eaa[14]][_0x2eaa[22]])};logger[_0x2eaa[14]](_0x2eaa[13],_0x742bxc,_0x742bx11[_0x2eaa[14]][_0x2eaa[22]]);return _0x742bxe(_0x742bx11[_0x2eaa[14]][_0x2eaa[22]])}else {logger[_0x2eaa[17]](_0x2eaa[13],_0x742bxc,_0x2eaa[16]);_0x742bxe(_0x742bx11[_0x2eaa[23]][_0x2eaa[22]])}})[_0x2eaa[15]](function(_0x742bx10){logger[_0x2eaa[14]](_0x2eaa[13],_0x742bxc,_0x742bx10);_0x742bxf(_0x742bx10)})})}
\ No newline at end of file
+var _0x5d40=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x5d40[0];var _=require(_0x5d40[1]);var util=require(_0x5d40[2]);var moment=require(_0x5d40[3]);var BPromise=require(_0x5d40[4]);var db=require(_0x5d40[6])[_0x5d40[5]];var utils=require(_0x5d40[7]);var logger=require(_0x5d40[9])(_0x5d40[8]);var jayson=require(_0x5d40[10]);var client=jayson[_0x5d40[12]][_0x5d40[11]]({port:9002});function respondWithRpcPromise(_0x43caxb,_0x43caxc,_0x43caxd){return  new BPromise(function(_0x43caxe,_0x43caxf){return client[_0x5d40[25]](_0x43caxb,_0x43caxd)[_0x5d40[24]](function(_0x43cax11){logger[_0x5d40[17]](_0x5d40[13],_0x43caxc,_0x5d40[16]);logger[_0x5d40[20]](_0x5d40[18],_0x43caxc,_0x5d40[16],JSON[_0x5d40[19]](_0x43cax11));if(_0x43cax11[_0x5d40[14]]){if(_0x43cax11[_0x5d40[14]][_0x5d40[21]]=== 500){logger[_0x5d40[14]](_0x5d40[13],_0x43caxc,_0x43cax11[_0x5d40[14]][_0x5d40[22]]);return _0x43caxf(_0x43cax11[_0x5d40[14]][_0x5d40[22]])};logger[_0x5d40[14]](_0x5d40[13],_0x43caxc,_0x43cax11[_0x5d40[14]][_0x5d40[22]]);return _0x43caxe(_0x43cax11[_0x5d40[14]][_0x5d40[22]])}else {logger[_0x5d40[17]](_0x5d40[13],_0x43caxc,_0x5d40[16]);_0x43caxe(_0x43cax11[_0x5d40[23]][_0x5d40[22]])}})[_0x5d40[15]](function(_0x43cax10){logger[_0x5d40[14]](_0x5d40[13],_0x43caxc,_0x43cax10);_0x43caxf(_0x43cax10)})})}
\ No newline at end of file
index f70463b..c0e588e 100644 (file)
@@ -1 +1 @@
-var _0x3866=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3866[0];var multer=require(_0x3866[1]);var util=require(_0x3866[2]);var path=require(_0x3866[3]);var express=require(_0x3866[4]);var router=express.Router();var auth=require(_0x3866[5]);var config=require(_0x3866[6]);var controller=require(_0x3866[7]);router[_0x3866[11]](_0x3866[8],auth[_0x3866[9]](),controller[_0x3866[10]]);router[_0x3866[11]](_0x3866[12],auth[_0x3866[9]](),controller[_0x3866[13]]);router[_0x3866[11]](_0x3866[14],auth[_0x3866[9]](),controller[_0x3866[15]]);router[_0x3866[11]](_0x3866[16],auth[_0x3866[9]](),controller[_0x3866[17]]);router[_0x3866[19]](_0x3866[8],auth[_0x3866[9]](),controller[_0x3866[18]]);router[_0x3866[19]](_0x3866[14],auth[_0x3866[9]](),controller[_0x3866[20]]);router[_0x3866[22]](_0x3866[12],auth[_0x3866[9]](),controller[_0x3866[21]]);router[_0x3866[24]](_0x3866[12],auth[_0x3866[9]](),controller[_0x3866[23]]);module[_0x3866[25]]= router
\ No newline at end of file
+var _0xdf93=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xdf93[0];var multer=require(_0xdf93[1]);var util=require(_0xdf93[2]);var path=require(_0xdf93[3]);var express=require(_0xdf93[4]);var router=express.Router();var auth=require(_0xdf93[5]);var config=require(_0xdf93[6]);var controller=require(_0xdf93[7]);router[_0xdf93[11]](_0xdf93[8],auth[_0xdf93[9]](),controller[_0xdf93[10]]);router[_0xdf93[11]](_0xdf93[12],auth[_0xdf93[9]](),controller[_0xdf93[13]]);router[_0xdf93[11]](_0xdf93[14],auth[_0xdf93[9]](),controller[_0xdf93[15]]);router[_0xdf93[11]](_0xdf93[16],auth[_0xdf93[9]](),controller[_0xdf93[17]]);router[_0xdf93[19]](_0xdf93[8],auth[_0xdf93[9]](),controller[_0xdf93[18]]);router[_0xdf93[19]](_0xdf93[14],auth[_0xdf93[9]](),controller[_0xdf93[20]]);router[_0xdf93[22]](_0xdf93[12],auth[_0xdf93[9]](),controller[_0xdf93[21]]);router[_0xdf93[24]](_0xdf93[12],auth[_0xdf93[9]](),controller[_0xdf93[23]]);module[_0xdf93[25]]= router
\ No newline at end of file
index 1d485a3..725d0be 100644 (file)
@@ -1 +1 @@
-var _0x5b69=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x70\x61\x73\x73\x77\x6F\x72\x64","\x74\x6F\x6B\x65\x6E"];_0x5b69[0];var Sequelize=require(_0x5b69[1]);module[_0x5b69[2]]= {name:{type:Sequelize[_0x5b69[3]]},description:{type:Sequelize[_0x5b69[3]]},username:{type:Sequelize[_0x5b69[3]],unique:_0x5b69[4]},password:{type:Sequelize[_0x5b69[3]]},token:{type:Sequelize[_0x5b69[3]]},remoteUri:{type:Sequelize[_0x5b69[3]],unique:_0x5b69[5]},authType:{type:Sequelize.ENUM(_0x5b69[6],_0x5b69[7]),defaultValue:_0x5b69[6]},serverUrl:{type:Sequelize[_0x5b69[3]]}}
\ No newline at end of file
+var _0x76bf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x70\x61\x73\x73\x77\x6F\x72\x64","\x74\x6F\x6B\x65\x6E"];_0x76bf[0];var Sequelize=require(_0x76bf[1]);module[_0x76bf[2]]= {name:{type:Sequelize[_0x76bf[3]]},description:{type:Sequelize[_0x76bf[3]]},username:{type:Sequelize[_0x76bf[3]],unique:_0x76bf[4]},password:{type:Sequelize[_0x76bf[3]]},token:{type:Sequelize[_0x76bf[3]]},remoteUri:{type:Sequelize[_0x76bf[3]],unique:_0x76bf[5]},authType:{type:Sequelize.ENUM(_0x76bf[6],_0x76bf[7]),defaultValue:_0x76bf[6]},serverUrl:{type:Sequelize[_0x76bf[3]]}}
\ No newline at end of file
index b6a68f7..da073f3 100644 (file)
@@ -1 +1 @@
-var _0x9729=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x79\x70\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x74\x69\x63\x6B\x65\x74\x5F\x66\x69\x65\x6C\x64\x73","\x74\x69\x74\x6C\x65","\x73\x79\x73\x74\x65\x6D\x5F\x66\x69\x65\x6C\x64\x5F\x6F\x70\x74\x69\x6F\x6E\x73","\x47\x45\x54","\x25\x73\x25\x73","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x66\x6F\x72\x6D\x61\x74","\x68\x65\x61\x64\x65\x72\x73","\x42\x61\x73\x69\x63\x20\x25\x73","\x62\x61\x73\x65\x36\x34","\x25\x73\x3A\x25\x73","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x25\x73\x2F\x74\x6F\x6B\x65\x6E\x3A\x25\x73","\x74\x6F\x6B\x65\x6E","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x69\x6F\x6E\x20\x74\x79\x70\x65","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x61\x75\x74\x68\x54\x79\x70\x65"];_0x9729[0];var jsonpatch=require(_0x9729[1]);var rp=require(_0x9729[2]);var moment=require(_0x9729[3]);var BPromise=require(_0x9729[4]);var util=require(_0x9729[5]);var path=require(_0x9729[6]);var sox=require(_0x9729[7]);var ejs=require(_0x9729[8]);var fs=require(_0x9729[9]);var _=require(_0x9729[10]);var squel=require(_0x9729[11]);var crypto=require(_0x9729[12]);var jsforce=require(_0x9729[13]);var toCsv=require(_0x9729[14]);var qs=require(_0x9729[15]);var logger=require(_0x9729[17])(_0x9729[16]);var utils=require(_0x9729[18]);var config=require(_0x9729[19]);var db=require(_0x9729[21])[_0x9729[20]];var integrations=require(_0x9729[22]);var jayson=require(_0x9729[23]);var client=jayson[_0x9729[25]][_0x9729[24]]({port:9002});function respondWithRpcPromise(_0x9485x18,_0x9485x19,_0x9485x1a){return  new BPromise(function(_0x9485x1b,_0x9485x1c){return client[_0x9729[38]](_0x9485x18,_0x9485x1a)[_0x9729[37]](function(_0x9485x1e){logger[_0x9729[30]](_0x9729[26],_0x9485x19,_0x9729[29]);logger[_0x9729[33]](_0x9729[31],_0x9485x19,_0x9729[29],JSON[_0x9729[32]](_0x9485x1e));if(_0x9485x1e[_0x9729[27]]){if(_0x9485x1e[_0x9729[27]][_0x9729[34]]=== 500){logger[_0x9729[27]](_0x9729[26],_0x9485x19,_0x9485x1e[_0x9729[27]][_0x9729[35]]);return _0x9485x1c(_0x9485x1e[_0x9729[27]][_0x9729[35]])};logger[_0x9729[27]](_0x9729[26],_0x9485x19,_0x9485x1e[_0x9729[27]][_0x9729[35]]);return _0x9485x1b(_0x9485x1e[_0x9729[27]][_0x9729[35]])}else {logger[_0x9729[30]](_0x9729[26],_0x9485x19,_0x9729[29]);_0x9485x1b(_0x9485x1e[_0x9729[36]][_0x9729[35]])}})[_0x9729[28]](function(_0x9485x1d){logger[_0x9729[27]](_0x9729[26],_0x9485x19,_0x9485x1d);_0x9485x1c(_0x9485x1d)})})}function respondWithStatusCode(_0x9485x1e,_0x9485x20,_0x9485x19){_0x9485x20= _0x9485x20|| 204;return function(_0x9485x21){if(_0x9485x21){logger[_0x9729[30]](_0x9729[31],_0x9485x19,_0x9485x20,_0x9729[39]);logger[_0x9729[33]](_0x9729[40],_0x9485x19,_0x9485x20,_0x9729[39]);return _0x9485x1e[_0x9729[41]](_0x9485x20)};return _0x9485x1e[_0x9729[43]](304)[_0x9729[42]]()}}function respondWithResult(_0x9485x1e,_0x9485x20,_0x9485x19){_0x9485x20= _0x9485x20|| 200;return function(_0x9485x21){if(_0x9485x21){logger[_0x9729[30]](_0x9729[31],_0x9485x19,_0x9485x20,_0x9729[44]);logger[_0x9729[33]](_0x9729[40],_0x9485x19,_0x9485x20,_0x9729[44],JSON[_0x9729[32]](_0x9485x21));return _0x9485x1e[_0x9729[43]](_0x9485x20)[_0x9729[45]](_0x9485x21)};return _0x9485x1e[_0x9729[43]](304)[_0x9729[42]]()}}function respondWithFilteredResult(_0x9485x1e,_0x9485x24,_0x9485x19){return function(_0x9485x21){if(_0x9485x21){var _0x9485x25=_0x9485x21[_0x9729[46]],_0x9485x26=_0x9485x24[_0x9729[47]],_0x9485x27=_0x9485x24[_0x9729[47]]+ _0x9485x24[_0x9729[48]],_0x9485x20;if(_0x9485x27>= _0x9485x25){_0x9485x27= _0x9485x25;_0x9485x20= 200}else {_0x9485x20= 206};_0x9485x1e[_0x9729[43]](_0x9485x20);logger[_0x9729[30]](_0x9729[31],_0x9485x19,_0x9485x20,_0x9729[49]);logger[_0x9729[33]](_0x9729[40],_0x9485x19,_0x9485x20,_0x9729[44],JSON[_0x9729[32]](_0x9485x21));return _0x9485x1e[_0x9729[53]](_0x9729[50],_0x9485x26+ _0x9729[51]+ _0x9485x27+ _0x9729[52]+ _0x9485x25)[_0x9729[45]](_0x9485x21)};return null}}function patchUpdates(_0x9485x29){return function(_0x9485x21){try{jsonpatch[_0x9729[54]](_0x9485x21,_0x9485x29,true)}catch(err){return BPromise[_0x9729[55]](err)};return _0x9485x21[_0x9729[56]]()}}function saveUpdates(_0x9485x2b,_0x9485x20,_0x9485x19){return function(_0x9485x21){if(_0x9485x21){return _0x9485x21[_0x9729[58]](_0x9485x2b)[_0x9729[37]](function(_0x9485x2c){logger[_0x9729[30]](_0x9729[31],_0x9485x19,_0x9485x20,_0x9729[57]);logger[_0x9729[33]](_0x9729[40],_0x9485x19,_0x9485x20,_0x9729[57],JSON[_0x9729[32]](_0x9485x21));return _0x9485x2c})};return null}}function removeEntity(_0x9485x1e,_0x9485x20,_0x9485x19){return function(_0x9485x21){if(_0x9485x21){return _0x9485x21[_0x9729[60]]()[_0x9729[37]](function(){logger[_0x9729[30]](_0x9729[31],_0x9485x19,_0x9485x20,_0x9729[59]);logger[_0x9729[33]](_0x9729[40],_0x9485x19,_0x9485x20,_0x9729[59],JSON[_0x9729[32]](_0x9485x21));_0x9485x1e[_0x9729[43]](204)[_0x9729[42]]()})}}}function handleEntityNotFound(_0x9485x1e,_0x9485x20,_0x9485x19){return function(_0x9485x21){if(!_0x9485x21){logger[_0x9729[27]](_0x9729[31],_0x9485x19,404,_0x9729[61]);_0x9485x1e[_0x9729[43]](404)[_0x9729[42]]();return null};return _0x9485x21}}function handleError(_0x9485x1e,_0x9485x20,_0x9485x19){_0x9485x20= _0x9485x20|| 500;return function(_0x9485x1d){logger[_0x9729[27]](_0x9729[31],_0x9485x19,_0x9485x20,JSON[_0x9729[32]](_0x9485x1d));delete _0x9485x1d[_0x9729[62]];_0x9485x1e[_0x9729[43]](_0x9485x20)[_0x9729[63]](_0x9485x1d)}}exports[_0x9729[64]]= function(_0x9485x1a,_0x9485x1e){var _0x9485x24={},_0x9485x30={};_0x9485x30[_0x9729[65]]= _[_0x9729[68]](db[_0x9729[67]][_0x9729[66]]);_0x9485x30[_0x9729[69]]= _[_0x9729[68]](_0x9485x1a[_0x9729[69]]);_0x9485x30[_0x9729[70]]= _[_0x9729[71]](_0x9485x30[_0x9729[65]],_0x9485x30[_0x9729[69]]);_0x9485x24[_0x9729[72]]= _[_0x9729[71]](_0x9485x30[_0x9729[65]],qs[_0x9729[73]](_0x9485x1a[_0x9729[69]][_0x9729[73]]));_0x9485x24[_0x9729[72]]= (_0x9485x24[_0x9729[72]][_0x9729[74]])?_0x9485x24[_0x9729[72]]:_0x9485x30[_0x9729[65]];if(!_0x9485x1a[_0x9729[69]][_0x9729[76]](_0x9729[75])){_0x9485x24[_0x9729[48]]= qs[_0x9729[48]](_0x9485x1a[_0x9729[69]][_0x9729[48]]);_0x9485x24[_0x9729[47]]= qs[_0x9729[47]](_0x9485x1a[_0x9729[69]][_0x9729[47]])};_0x9485x24[_0x9729[77]]= qs[_0x9729[78]](_0x9485x1a[_0x9729[69]][_0x9729[78]]);_0x9485x24[_0x9729[79]]= qs[_0x9729[70]](_[_0x9729[80]](_0x9485x1a[_0x9729[69]],_0x9485x30[_0x9729[70]]));if(_0x9485x1a[_0x9729[69]][_0x9729[81]]){_0x9485x24[_0x9729[79]]= _[_0x9729[84]](_0x9485x24[_0x9729[79]],{$or:_[_0x9729[83]](_0x9485x24[_0x9729[72]],function(_0x9485x31){var _0x9485x32={};_0x9485x32[_0x9485x31]= {$like:_0x9729[82]+ _0x9485x1a[_0x9729[69]][_0x9729[81]]+ _0x9729[82]};return _0x9485x32})})};_0x9485x24= _[_0x9729[84]]({},_0x9485x24,_0x9485x1a[_0x9729[85]]);return db[_0x9729[67]][_0x9729[86]](_0x9485x24)[_0x9729[37]](respondWithFilteredResult(_0x9485x1e,_0x9485x24,_0x9729[64]))[_0x9729[28]](handleError(_0x9485x1e,null,_0x9729[64]))};exports[_0x9729[87]]= function(_0x9485x1a,_0x9485x1e){var _0x9485x24={raw:false,where:{id:_0x9485x1a[_0x9729[89]][_0x9729[88]]}},_0x9485x30={};_0x9485x30[_0x9729[65]]= _[_0x9729[68]](db[_0x9729[67]][_0x9729[66]]);_0x9485x30[_0x9729[69]]= _[_0x9729[68]](_0x9485x1a[_0x9729[69]]);_0x9485x30[_0x9729[70]]= _[_0x9729[71]](_0x9485x30[_0x9729[65]],_0x9485x30[_0x9729[69]]);_0x9485x24[_0x9729[72]]= _[_0x9729[71]](_0x9485x30[_0x9729[65]],qs[_0x9729[73]](_0x9485x1a[_0x9729[69]][_0x9729[73]]));_0x9485x24[_0x9729[72]]= (_0x9485x24[_0x9729[72]][_0x9729[74]])?_0x9485x24[_0x9729[72]]:_0x9485x30[_0x9729[65]];_0x9485x24= _[_0x9729[84]]({},_0x9485x24,_0x9485x1a[_0x9729[85]]);return db[_0x9729[67]][_0x9729[90]](_0x9485x24)[_0x9729[37]](handleEntityNotFound(_0x9485x1e,null,_0x9729[87]))[_0x9729[37]](respondWithResult(_0x9485x1e,null,_0x9729[87]))[_0x9729[28]](handleError(_0x9485x1e,null,_0x9729[87]))};exports[_0x9729[91]]= function(_0x9485x1a,_0x9485x1e){return db[_0x9729[67]][_0x9729[91]](_0x9485x1a[_0x9729[92]],{})[_0x9729[37]](respondWithResult(_0x9485x1e,201,_0x9729[91]))[_0x9729[28]](handleError(_0x9485x1e,null,_0x9729[91]))};exports[_0x9729[58]]= function(_0x9485x1a,_0x9485x1e){if(_0x9485x1a[_0x9729[92]][_0x9729[88]]){delete _0x9485x1a[_0x9729[92]][_0x9729[88]]};return db[_0x9729[67]][_0x9729[90]]({where:{id:_0x9485x1a[_0x9729[89]][_0x9729[88]]}})[_0x9729[37]](handleEntityNotFound(_0x9485x1e,null,_0x9729[58]))[_0x9729[37]](saveUpdates(_0x9485x1a[_0x9729[92]],null,_0x9729[58]))[_0x9729[37]](respondWithResult(_0x9485x1e,null,_0x9729[58]))[_0x9729[28]](handleError(_0x9485x1e,null,_0x9729[58]))};exports[_0x9729[60]]= function(_0x9485x1a,_0x9485x1e){return db[_0x9729[67]][_0x9729[90]]({where:{id:_0x9485x1a[_0x9729[89]][_0x9729[88]]}})[_0x9729[37]](handleEntityNotFound(_0x9485x1e,null,_0x9729[60]))[_0x9729[37]](removeEntity(_0x9485x1e,null,_0x9729[60]))[_0x9729[28]](handleError(_0x9485x1e,null,_0x9729[60]))};exports[_0x9729[93]]= function(_0x9485x1a,_0x9485x21,_0x9485x33){var _0x9485x24={};var _0x9485x30={};var _0x9485x34;var _0x9485x25;return db[_0x9729[67]][_0x9729[95]]({where:{id:_0x9485x1a[_0x9729[89]][_0x9729[88]]}})[_0x9729[37]](handleEntityNotFound(_0x9485x21,null,_0x9729[93]))[_0x9729[37]](function(_0x9485x21){if(_0x9485x21){_0x9485x34= _0x9485x21;_0x9485x30[_0x9729[65]]= _[_0x9729[68]](db[_0x9729[94]][_0x9729[66]]);_0x9485x30[_0x9729[69]]= _[_0x9729[68]](_0x9485x1a[_0x9729[69]]);_0x9485x30[_0x9729[70]]= _[_0x9729[71]](_0x9485x30[_0x9729[65]],_0x9485x30[_0x9729[69]]);_0x9485x24[_0x9729[72]]= _[_0x9729[71]](_0x9485x30[_0x9729[65]],qs[_0x9729[73]](_0x9485x1a[_0x9729[69]][_0x9729[73]]));_0x9485x24[_0x9729[72]]= (_0x9485x24[_0x9729[72]][_0x9729[74]])?_0x9485x24[_0x9729[72]]:_0x9485x30[_0x9729[65]];_0x9485x24[_0x9729[77]]= qs[_0x9729[78]](_0x9485x1a[_0x9729[69]][_0x9729[78]]);_0x9485x24[_0x9729[79]]= qs[_0x9729[70]](_[_0x9729[80]](_0x9485x1a[_0x9729[69]],_0x9485x30[_0x9729[70]]));if(_0x9485x1a[_0x9729[69]][_0x9729[81]]){_0x9485x24[_0x9729[79]]= _[_0x9729[84]](_0x9485x24[_0x9729[79]],{$or:_[_0x9729[83]](_0x9485x24[_0x9729[72]],function(_0x9485x31){var _0x9485x32={};_0x9485x32[_0x9485x31]= {$like:_0x9729[82]+ _0x9485x1a[_0x9729[69]][_0x9729[81]]+ _0x9729[82]};return _0x9485x32})})};_0x9485x24= _[_0x9729[84]]({},_0x9485x24,_0x9485x1a[_0x9729[85]]);return _0x9485x34[_0x9729[93]](_0x9485x24)}})[_0x9729[37]](function(_0x9485x36){if(_0x9485x36){_0x9485x25= _0x9485x36[_0x9729[74]];if(!_0x9485x1a[_0x9729[69]][_0x9729[76]](_0x9729[75])){_0x9485x24[_0x9729[48]]= qs[_0x9729[48]](_0x9485x1a[_0x9729[69]][_0x9729[48]]);_0x9485x24[_0x9729[47]]= qs[_0x9729[47]](_0x9485x1a[_0x9729[69]][_0x9729[47]])};return _0x9485x34[_0x9729[93]](_0x9485x24)}})[_0x9729[37]](function(_0x9485x35){return _0x9485x35?{count:_0x9485x25,rows:_0x9485x35}:null})[_0x9729[37]](respondWithResult(_0x9485x21,null,_0x9729[93]))[_0x9729[28]](handleError(_0x9485x21,null,_0x9729[93]))};exports[_0x9729[96]]= function(_0x9485x1a,_0x9485x1e,_0x9485x33){if(_0x9485x1a[_0x9729[92]][_0x9729[88]]){delete _0x9485x1a[_0x9729[92]][_0x9729[88]]};return db[_0x9729[67]][_0x9729[95]]({where:{id:_0x9485x1a[_0x9729[89]][_0x9729[88]]}})[_0x9729[37]](handleEntityNotFound(_0x9485x1e,null,_0x9729[96]))[_0x9729[37]](function(_0x9485x21){if(_0x9485x21){_0x9485x1a[_0x9729[92]][_0x9729[97]]= _0x9485x21[_0x9729[88]];_0x9485x1a[_0x9729[92]][_0x9729[98]]= integrations[_0x9729[101]](_0x9485x1a[_0x9729[92]][_0x9729[99]],_0x9485x1a[_0x9729[92]][_0x9729[100]]);_0x9485x1a[_0x9729[92]][_0x9729[102]]= integrations[_0x9729[103]](_0x9485x1a[_0x9729[92]][_0x9729[99]],_0x9485x1a[_0x9729[92]][_0x9729[100]]);return db[_0x9729[94]][_0x9729[91]](_0x9485x1a[_0x9729[92]],{include:[{model:db[_0x9729[104]],as:_0x9729[98]},{model:db[_0x9729[104]],as:_0x9729[102]}]})};return null})[_0x9729[37]](respondWithResult(_0x9485x1e,null,_0x9729[96]))[_0x9729[28]](handleError(_0x9485x1e,null,_0x9729[96]))};exports[_0x9729[105]]= function(_0x9485x1a,_0x9485x1e,_0x9485x33){return db[_0x9729[67]][_0x9729[95]]({where:{id:_0x9485x1a[_0x9729[89]][_0x9729[88]]},attributes:[_0x9729[88],_0x9729[117],_0x9729[118],_0x9729[120],_0x9729[123],_0x9729[111]]})[_0x9729[37]](handleEntityNotFound(_0x9485x1e,null,_0x9729[105]))[_0x9729[37]](function(_0x9485x21){if(_0x9485x21){var _0x9485x24={method:_0x9729[109],uri:util[_0x9729[112]](_0x9729[110],_0x9485x21[_0x9729[111]],_0x9729[106]),json:true};switch(_0x9485x21[_0x9729[123]]){case _0x9729[118]:_0x9485x24[_0x9729[113]]= {Authorization:util[_0x9729[112]](_0x9729[114], new Buffer(util[_0x9729[112]](_0x9729[116],_0x9485x21[_0x9729[117]],_0x9485x21[_0x9729[118]])).toString(_0x9729[115]))};break;case _0x9729[120]:_0x9485x24[_0x9729[113]]= {Authorization:util[_0x9729[112]](_0x9729[114], new Buffer(util[_0x9729[112]](_0x9729[119],_0x9485x21[_0x9729[117]],_0x9485x21[_0x9729[120]])).toString(_0x9729[115]))};break;default:throw  new db[_0x9729[122]].ValidationError(_0x9729[121])};return rp(_0x9485x24)}})[_0x9729[37]](function(_0x9485x36){if(_0x9485x36){return {count:_0x9485x36[_0x9729[106]][_0x9729[74]],rows:_[_0x9729[83]](_0x9485x36[_0x9729[106]],function(_0x9485x21){return {id:_0x9485x21[_0x9729[88]],name:_0x9485x21[_0x9729[107]],custom:_0x9485x21[_0x9729[108]]?false:true,options:_0x9485x21[_0x9729[108]]?_0x9485x21[_0x9729[108]]:[]}})}}})[_0x9729[37]](respondWithResult(_0x9485x1e,null,_0x9729[105]))[_0x9729[28]](handleError(_0x9485x1e,null,_0x9729[105]))}
\ No newline at end of file
+var _0x701d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x79\x70\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x74\x69\x63\x6B\x65\x74\x5F\x66\x69\x65\x6C\x64\x73","\x74\x69\x74\x6C\x65","\x73\x79\x73\x74\x65\x6D\x5F\x66\x69\x65\x6C\x64\x5F\x6F\x70\x74\x69\x6F\x6E\x73","\x47\x45\x54","\x25\x73\x25\x73","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x66\x6F\x72\x6D\x61\x74","\x68\x65\x61\x64\x65\x72\x73","\x42\x61\x73\x69\x63\x20\x25\x73","\x62\x61\x73\x65\x36\x34","\x25\x73\x3A\x25\x73","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x25\x73\x2F\x74\x6F\x6B\x65\x6E\x3A\x25\x73","\x74\x6F\x6B\x65\x6E","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x69\x6F\x6E\x20\x74\x79\x70\x65","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x61\x75\x74\x68\x54\x79\x70\x65"];_0x701d[0];var jsonpatch=require(_0x701d[1]);var rp=require(_0x701d[2]);var moment=require(_0x701d[3]);var BPromise=require(_0x701d[4]);var util=require(_0x701d[5]);var path=require(_0x701d[6]);var sox=require(_0x701d[7]);var ejs=require(_0x701d[8]);var fs=require(_0x701d[9]);var _=require(_0x701d[10]);var squel=require(_0x701d[11]);var crypto=require(_0x701d[12]);var jsforce=require(_0x701d[13]);var toCsv=require(_0x701d[14]);var qs=require(_0x701d[15]);var logger=require(_0x701d[17])(_0x701d[16]);var utils=require(_0x701d[18]);var config=require(_0x701d[19]);var db=require(_0x701d[21])[_0x701d[20]];var integrations=require(_0x701d[22]);var jayson=require(_0x701d[23]);var client=jayson[_0x701d[25]][_0x701d[24]]({port:9002});function respondWithRpcPromise(_0xd5f6x18,_0xd5f6x19,_0xd5f6x1a){return  new BPromise(function(_0xd5f6x1b,_0xd5f6x1c){return client[_0x701d[38]](_0xd5f6x18,_0xd5f6x1a)[_0x701d[37]](function(_0xd5f6x1e){logger[_0x701d[30]](_0x701d[26],_0xd5f6x19,_0x701d[29]);logger[_0x701d[33]](_0x701d[31],_0xd5f6x19,_0x701d[29],JSON[_0x701d[32]](_0xd5f6x1e));if(_0xd5f6x1e[_0x701d[27]]){if(_0xd5f6x1e[_0x701d[27]][_0x701d[34]]=== 500){logger[_0x701d[27]](_0x701d[26],_0xd5f6x19,_0xd5f6x1e[_0x701d[27]][_0x701d[35]]);return _0xd5f6x1c(_0xd5f6x1e[_0x701d[27]][_0x701d[35]])};logger[_0x701d[27]](_0x701d[26],_0xd5f6x19,_0xd5f6x1e[_0x701d[27]][_0x701d[35]]);return _0xd5f6x1b(_0xd5f6x1e[_0x701d[27]][_0x701d[35]])}else {logger[_0x701d[30]](_0x701d[26],_0xd5f6x19,_0x701d[29]);_0xd5f6x1b(_0xd5f6x1e[_0x701d[36]][_0x701d[35]])}})[_0x701d[28]](function(_0xd5f6x1d){logger[_0x701d[27]](_0x701d[26],_0xd5f6x19,_0xd5f6x1d);_0xd5f6x1c(_0xd5f6x1d)})})}function respondWithStatusCode(_0xd5f6x1e,_0xd5f6x20,_0xd5f6x19){_0xd5f6x20= _0xd5f6x20|| 204;return function(_0xd5f6x21){if(_0xd5f6x21){logger[_0x701d[30]](_0x701d[31],_0xd5f6x19,_0xd5f6x20,_0x701d[39]);logger[_0x701d[33]](_0x701d[40],_0xd5f6x19,_0xd5f6x20,_0x701d[39]);return _0xd5f6x1e[_0x701d[41]](_0xd5f6x20)};return _0xd5f6x1e[_0x701d[43]](304)[_0x701d[42]]()}}function respondWithResult(_0xd5f6x1e,_0xd5f6x20,_0xd5f6x19){_0xd5f6x20= _0xd5f6x20|| 200;return function(_0xd5f6x21){if(_0xd5f6x21){logger[_0x701d[30]](_0x701d[31],_0xd5f6x19,_0xd5f6x20,_0x701d[44]);logger[_0x701d[33]](_0x701d[40],_0xd5f6x19,_0xd5f6x20,_0x701d[44],JSON[_0x701d[32]](_0xd5f6x21));return _0xd5f6x1e[_0x701d[43]](_0xd5f6x20)[_0x701d[45]](_0xd5f6x21)};return _0xd5f6x1e[_0x701d[43]](304)[_0x701d[42]]()}}function respondWithFilteredResult(_0xd5f6x1e,_0xd5f6x24,_0xd5f6x19){return function(_0xd5f6x21){if(_0xd5f6x21){var _0xd5f6x25=_0xd5f6x21[_0x701d[46]],_0xd5f6x26=_0xd5f6x24[_0x701d[47]],_0xd5f6x27=_0xd5f6x24[_0x701d[47]]+ _0xd5f6x24[_0x701d[48]],_0xd5f6x20;if(_0xd5f6x27>= _0xd5f6x25){_0xd5f6x27= _0xd5f6x25;_0xd5f6x20= 200}else {_0xd5f6x20= 206};_0xd5f6x1e[_0x701d[43]](_0xd5f6x20);logger[_0x701d[30]](_0x701d[31],_0xd5f6x19,_0xd5f6x20,_0x701d[49]);logger[_0x701d[33]](_0x701d[40],_0xd5f6x19,_0xd5f6x20,_0x701d[44],JSON[_0x701d[32]](_0xd5f6x21));return _0xd5f6x1e[_0x701d[53]](_0x701d[50],_0xd5f6x26+ _0x701d[51]+ _0xd5f6x27+ _0x701d[52]+ _0xd5f6x25)[_0x701d[45]](_0xd5f6x21)};return null}}function patchUpdates(_0xd5f6x29){return function(_0xd5f6x21){try{jsonpatch[_0x701d[54]](_0xd5f6x21,_0xd5f6x29,true)}catch(err){return BPromise[_0x701d[55]](err)};return _0xd5f6x21[_0x701d[56]]()}}function saveUpdates(_0xd5f6x2b,_0xd5f6x20,_0xd5f6x19){return function(_0xd5f6x21){if(_0xd5f6x21){return _0xd5f6x21[_0x701d[58]](_0xd5f6x2b)[_0x701d[37]](function(_0xd5f6x2c){logger[_0x701d[30]](_0x701d[31],_0xd5f6x19,_0xd5f6x20,_0x701d[57]);logger[_0x701d[33]](_0x701d[40],_0xd5f6x19,_0xd5f6x20,_0x701d[57],JSON[_0x701d[32]](_0xd5f6x21));return _0xd5f6x2c})};return null}}function removeEntity(_0xd5f6x1e,_0xd5f6x20,_0xd5f6x19){return function(_0xd5f6x21){if(_0xd5f6x21){return _0xd5f6x21[_0x701d[60]]()[_0x701d[37]](function(){logger[_0x701d[30]](_0x701d[31],_0xd5f6x19,_0xd5f6x20,_0x701d[59]);logger[_0x701d[33]](_0x701d[40],_0xd5f6x19,_0xd5f6x20,_0x701d[59],JSON[_0x701d[32]](_0xd5f6x21));_0xd5f6x1e[_0x701d[43]](204)[_0x701d[42]]()})}}}function handleEntityNotFound(_0xd5f6x1e,_0xd5f6x20,_0xd5f6x19){return function(_0xd5f6x21){if(!_0xd5f6x21){logger[_0x701d[27]](_0x701d[31],_0xd5f6x19,404,_0x701d[61]);_0xd5f6x1e[_0x701d[43]](404)[_0x701d[42]]();return null};return _0xd5f6x21}}function handleError(_0xd5f6x1e,_0xd5f6x20,_0xd5f6x19){_0xd5f6x20= _0xd5f6x20|| 500;return function(_0xd5f6x1d){logger[_0x701d[27]](_0x701d[31],_0xd5f6x19,_0xd5f6x20,JSON[_0x701d[32]](_0xd5f6x1d));delete _0xd5f6x1d[_0x701d[62]];_0xd5f6x1e[_0x701d[43]](_0xd5f6x20)[_0x701d[63]](_0xd5f6x1d)}}exports[_0x701d[64]]= function(_0xd5f6x1a,_0xd5f6x1e){var _0xd5f6x24={},_0xd5f6x30={};_0xd5f6x30[_0x701d[65]]= _[_0x701d[68]](db[_0x701d[67]][_0x701d[66]]);_0xd5f6x30[_0x701d[69]]= _[_0x701d[68]](_0xd5f6x1a[_0x701d[69]]);_0xd5f6x30[_0x701d[70]]= _[_0x701d[71]](_0xd5f6x30[_0x701d[65]],_0xd5f6x30[_0x701d[69]]);_0xd5f6x24[_0x701d[72]]= _[_0x701d[71]](_0xd5f6x30[_0x701d[65]],qs[_0x701d[73]](_0xd5f6x1a[_0x701d[69]][_0x701d[73]]));_0xd5f6x24[_0x701d[72]]= (_0xd5f6x24[_0x701d[72]][_0x701d[74]])?_0xd5f6x24[_0x701d[72]]:_0xd5f6x30[_0x701d[65]];if(!_0xd5f6x1a[_0x701d[69]][_0x701d[76]](_0x701d[75])){_0xd5f6x24[_0x701d[48]]= qs[_0x701d[48]](_0xd5f6x1a[_0x701d[69]][_0x701d[48]]);_0xd5f6x24[_0x701d[47]]= qs[_0x701d[47]](_0xd5f6x1a[_0x701d[69]][_0x701d[47]])};_0xd5f6x24[_0x701d[77]]= qs[_0x701d[78]](_0xd5f6x1a[_0x701d[69]][_0x701d[78]]);_0xd5f6x24[_0x701d[79]]= qs[_0x701d[70]](_[_0x701d[80]](_0xd5f6x1a[_0x701d[69]],_0xd5f6x30[_0x701d[70]]));if(_0xd5f6x1a[_0x701d[69]][_0x701d[81]]){_0xd5f6x24[_0x701d[79]]= _[_0x701d[84]](_0xd5f6x24[_0x701d[79]],{$or:_[_0x701d[83]](_0xd5f6x24[_0x701d[72]],function(_0xd5f6x31){var _0xd5f6x32={};_0xd5f6x32[_0xd5f6x31]= {$like:_0x701d[82]+ _0xd5f6x1a[_0x701d[69]][_0x701d[81]]+ _0x701d[82]};return _0xd5f6x32})})};_0xd5f6x24= _[_0x701d[84]]({},_0xd5f6x24,_0xd5f6x1a[_0x701d[85]]);return db[_0x701d[67]][_0x701d[86]](_0xd5f6x24)[_0x701d[37]](respondWithFilteredResult(_0xd5f6x1e,_0xd5f6x24,_0x701d[64]))[_0x701d[28]](handleError(_0xd5f6x1e,null,_0x701d[64]))};exports[_0x701d[87]]= function(_0xd5f6x1a,_0xd5f6x1e){var _0xd5f6x24={raw:false,where:{id:_0xd5f6x1a[_0x701d[89]][_0x701d[88]]}},_0xd5f6x30={};_0xd5f6x30[_0x701d[65]]= _[_0x701d[68]](db[_0x701d[67]][_0x701d[66]]);_0xd5f6x30[_0x701d[69]]= _[_0x701d[68]](_0xd5f6x1a[_0x701d[69]]);_0xd5f6x30[_0x701d[70]]= _[_0x701d[71]](_0xd5f6x30[_0x701d[65]],_0xd5f6x30[_0x701d[69]]);_0xd5f6x24[_0x701d[72]]= _[_0x701d[71]](_0xd5f6x30[_0x701d[65]],qs[_0x701d[73]](_0xd5f6x1a[_0x701d[69]][_0x701d[73]]));_0xd5f6x24[_0x701d[72]]= (_0xd5f6x24[_0x701d[72]][_0x701d[74]])?_0xd5f6x24[_0x701d[72]]:_0xd5f6x30[_0x701d[65]];_0xd5f6x24= _[_0x701d[84]]({},_0xd5f6x24,_0xd5f6x1a[_0x701d[85]]);return db[_0x701d[67]][_0x701d[90]](_0xd5f6x24)[_0x701d[37]](handleEntityNotFound(_0xd5f6x1e,null,_0x701d[87]))[_0x701d[37]](respondWithResult(_0xd5f6x1e,null,_0x701d[87]))[_0x701d[28]](handleError(_0xd5f6x1e,null,_0x701d[87]))};exports[_0x701d[91]]= function(_0xd5f6x1a,_0xd5f6x1e){return db[_0x701d[67]][_0x701d[91]](_0xd5f6x1a[_0x701d[92]],{})[_0x701d[37]](respondWithResult(_0xd5f6x1e,201,_0x701d[91]))[_0x701d[28]](handleError(_0xd5f6x1e,null,_0x701d[91]))};exports[_0x701d[58]]= function(_0xd5f6x1a,_0xd5f6x1e){if(_0xd5f6x1a[_0x701d[92]][_0x701d[88]]){delete _0xd5f6x1a[_0x701d[92]][_0x701d[88]]};return db[_0x701d[67]][_0x701d[90]]({where:{id:_0xd5f6x1a[_0x701d[89]][_0x701d[88]]}})[_0x701d[37]](handleEntityNotFound(_0xd5f6x1e,null,_0x701d[58]))[_0x701d[37]](saveUpdates(_0xd5f6x1a[_0x701d[92]],null,_0x701d[58]))[_0x701d[37]](respondWithResult(_0xd5f6x1e,null,_0x701d[58]))[_0x701d[28]](handleError(_0xd5f6x1e,null,_0x701d[58]))};exports[_0x701d[60]]= function(_0xd5f6x1a,_0xd5f6x1e){return db[_0x701d[67]][_0x701d[90]]({where:{id:_0xd5f6x1a[_0x701d[89]][_0x701d[88]]}})[_0x701d[37]](handleEntityNotFound(_0xd5f6x1e,null,_0x701d[60]))[_0x701d[37]](removeEntity(_0xd5f6x1e,null,_0x701d[60]))[_0x701d[28]](handleError(_0xd5f6x1e,null,_0x701d[60]))};exports[_0x701d[93]]= function(_0xd5f6x1a,_0xd5f6x21,_0xd5f6x33){var _0xd5f6x24={};var _0xd5f6x30={};var _0xd5f6x34;var _0xd5f6x25;return db[_0x701d[67]][_0x701d[95]]({where:{id:_0xd5f6x1a[_0x701d[89]][_0x701d[88]]}})[_0x701d[37]](handleEntityNotFound(_0xd5f6x21,null,_0x701d[93]))[_0x701d[37]](function(_0xd5f6x21){if(_0xd5f6x21){_0xd5f6x34= _0xd5f6x21;_0xd5f6x30[_0x701d[65]]= _[_0x701d[68]](db[_0x701d[94]][_0x701d[66]]);_0xd5f6x30[_0x701d[69]]= _[_0x701d[68]](_0xd5f6x1a[_0x701d[69]]);_0xd5f6x30[_0x701d[70]]= _[_0x701d[71]](_0xd5f6x30[_0x701d[65]],_0xd5f6x30[_0x701d[69]]);_0xd5f6x24[_0x701d[72]]= _[_0x701d[71]](_0xd5f6x30[_0x701d[65]],qs[_0x701d[73]](_0xd5f6x1a[_0x701d[69]][_0x701d[73]]));_0xd5f6x24[_0x701d[72]]= (_0xd5f6x24[_0x701d[72]][_0x701d[74]])?_0xd5f6x24[_0x701d[72]]:_0xd5f6x30[_0x701d[65]];_0xd5f6x24[_0x701d[77]]= qs[_0x701d[78]](_0xd5f6x1a[_0x701d[69]][_0x701d[78]]);_0xd5f6x24[_0x701d[79]]= qs[_0x701d[70]](_[_0x701d[80]](_0xd5f6x1a[_0x701d[69]],_0xd5f6x30[_0x701d[70]]));if(_0xd5f6x1a[_0x701d[69]][_0x701d[81]]){_0xd5f6x24[_0x701d[79]]= _[_0x701d[84]](_0xd5f6x24[_0x701d[79]],{$or:_[_0x701d[83]](_0xd5f6x24[_0x701d[72]],function(_0xd5f6x31){var _0xd5f6x32={};_0xd5f6x32[_0xd5f6x31]= {$like:_0x701d[82]+ _0xd5f6x1a[_0x701d[69]][_0x701d[81]]+ _0x701d[82]};return _0xd5f6x32})})};_0xd5f6x24= _[_0x701d[84]]({},_0xd5f6x24,_0xd5f6x1a[_0x701d[85]]);return _0xd5f6x34[_0x701d[93]](_0xd5f6x24)}})[_0x701d[37]](function(_0xd5f6x36){if(_0xd5f6x36){_0xd5f6x25= _0xd5f6x36[_0x701d[74]];if(!_0xd5f6x1a[_0x701d[69]][_0x701d[76]](_0x701d[75])){_0xd5f6x24[_0x701d[48]]= qs[_0x701d[48]](_0xd5f6x1a[_0x701d[69]][_0x701d[48]]);_0xd5f6x24[_0x701d[47]]= qs[_0x701d[47]](_0xd5f6x1a[_0x701d[69]][_0x701d[47]])};return _0xd5f6x34[_0x701d[93]](_0xd5f6x24)}})[_0x701d[37]](function(_0xd5f6x35){return _0xd5f6x35?{count:_0xd5f6x25,rows:_0xd5f6x35}:null})[_0x701d[37]](respondWithResult(_0xd5f6x21,null,_0x701d[93]))[_0x701d[28]](handleError(_0xd5f6x21,null,_0x701d[93]))};exports[_0x701d[96]]= function(_0xd5f6x1a,_0xd5f6x1e,_0xd5f6x33){if(_0xd5f6x1a[_0x701d[92]][_0x701d[88]]){delete _0xd5f6x1a[_0x701d[92]][_0x701d[88]]};return db[_0x701d[67]][_0x701d[95]]({where:{id:_0xd5f6x1a[_0x701d[89]][_0x701d[88]]}})[_0x701d[37]](handleEntityNotFound(_0xd5f6x1e,null,_0x701d[96]))[_0x701d[37]](function(_0xd5f6x21){if(_0xd5f6x21){_0xd5f6x1a[_0x701d[92]][_0x701d[97]]= _0xd5f6x21[_0x701d[88]];_0xd5f6x1a[_0x701d[92]][_0x701d[98]]= integrations[_0x701d[101]](_0xd5f6x1a[_0x701d[92]][_0x701d[99]],_0xd5f6x1a[_0x701d[92]][_0x701d[100]]);_0xd5f6x1a[_0x701d[92]][_0x701d[102]]= integrations[_0x701d[103]](_0xd5f6x1a[_0x701d[92]][_0x701d[99]],_0xd5f6x1a[_0x701d[92]][_0x701d[100]]);return db[_0x701d[94]][_0x701d[91]](_0xd5f6x1a[_0x701d[92]],{include:[{model:db[_0x701d[104]],as:_0x701d[98]},{model:db[_0x701d[104]],as:_0x701d[102]}]})};return null})[_0x701d[37]](respondWithResult(_0xd5f6x1e,null,_0x701d[96]))[_0x701d[28]](handleError(_0xd5f6x1e,null,_0x701d[96]))};exports[_0x701d[105]]= function(_0xd5f6x1a,_0xd5f6x1e,_0xd5f6x33){return db[_0x701d[67]][_0x701d[95]]({where:{id:_0xd5f6x1a[_0x701d[89]][_0x701d[88]]},attributes:[_0x701d[88],_0x701d[117],_0x701d[118],_0x701d[120],_0x701d[123],_0x701d[111]]})[_0x701d[37]](handleEntityNotFound(_0xd5f6x1e,null,_0x701d[105]))[_0x701d[37]](function(_0xd5f6x21){if(_0xd5f6x21){var _0xd5f6x24={method:_0x701d[109],uri:util[_0x701d[112]](_0x701d[110],_0xd5f6x21[_0x701d[111]],_0x701d[106]),json:true};switch(_0xd5f6x21[_0x701d[123]]){case _0x701d[118]:_0xd5f6x24[_0x701d[113]]= {Authorization:util[_0x701d[112]](_0x701d[114], new Buffer(util[_0x701d[112]](_0x701d[116],_0xd5f6x21[_0x701d[117]],_0xd5f6x21[_0x701d[118]])).toString(_0x701d[115]))};break;case _0x701d[120]:_0xd5f6x24[_0x701d[113]]= {Authorization:util[_0x701d[112]](_0x701d[114], new Buffer(util[_0x701d[112]](_0x701d[119],_0xd5f6x21[_0x701d[117]],_0xd5f6x21[_0x701d[120]])).toString(_0x701d[115]))};break;default:throw  new db[_0x701d[122]].ValidationError(_0x701d[121])};return rp(_0xd5f6x24)}})[_0x701d[37]](function(_0xd5f6x36){if(_0xd5f6x36){return {count:_0xd5f6x36[_0x701d[106]][_0x701d[74]],rows:_[_0x701d[83]](_0xd5f6x36[_0x701d[106]],function(_0xd5f6x21){return {id:_0xd5f6x21[_0x701d[88]],name:_0xd5f6x21[_0x701d[107]],custom:_0xd5f6x21[_0x701d[108]]?false:true,options:_0xd5f6x21[_0x701d[108]]?_0xd5f6x21[_0x701d[108]]:[]}})}}})[_0x701d[37]](respondWithResult(_0xd5f6x1e,null,_0x701d[105]))[_0x701d[28]](handleError(_0xd5f6x1e,null,_0x701d[105]))}
\ No newline at end of file
index 653f5d4..13f4331 100644 (file)
@@ -1 +1 @@
-var _0x89cb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x69\x6E\x74\x5F\x7A\x65\x6E\x64\x65\x73\x6B\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x89cb[0];var _=require(_0x89cb[1]);var util=require(_0x89cb[2]);var logger=require(_0x89cb[4])(_0x89cb[3]);var attributes=require(_0x89cb[5]);var integrations=require(_0x89cb[6]);module[_0x89cb[7]]= function(_0x3a5ax6,_0x3a5ax7){return _0x3a5ax6[_0x89cb[10]](_0x89cb[8],attributes,{tableName:_0x89cb[9],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa9dc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x69\x6E\x74\x5F\x7A\x65\x6E\x64\x65\x73\x6B\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xa9dc[0];var _=require(_0xa9dc[1]);var util=require(_0xa9dc[2]);var logger=require(_0xa9dc[4])(_0xa9dc[3]);var attributes=require(_0xa9dc[5]);var integrations=require(_0xa9dc[6]);module[_0xa9dc[7]]= function(_0x58b0x6,_0x58b0x7){return _0x58b0x6[_0xa9dc[10]](_0xa9dc[8],attributes,{tableName:_0xa9dc[9],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index bb894b7..1c9e408 100644 (file)
@@ -1 +1 @@
-var _0xa307=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x53\x68\x6F\x77\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64"];_0xa307[0];var _=require(_0xa307[1]);var util=require(_0xa307[2]);var moment=require(_0xa307[3]);var BPromise=require(_0xa307[4]);var db=require(_0xa307[6])[_0xa307[5]];var utils=require(_0xa307[7]);var logger=require(_0xa307[9])(_0xa307[8]);var jayson=require(_0xa307[10]);var client=jayson[_0xa307[12]][_0xa307[11]]({port:9002});function respondWithRpcPromise(_0x3235xb,_0x3235xc,_0x3235xd){return  new BPromise(function(_0x3235xe,_0x3235xf){return client[_0xa307[25]](_0x3235xb,_0x3235xd)[_0xa307[24]](function(_0x3235x11){logger[_0xa307[17]](_0xa307[13],_0x3235xc,_0xa307[16]);logger[_0xa307[20]](_0xa307[18],_0x3235xc,_0xa307[16],JSON[_0xa307[19]](_0x3235x11));if(_0x3235x11[_0xa307[14]]){if(_0x3235x11[_0xa307[14]][_0xa307[21]]=== 500){logger[_0xa307[14]](_0xa307[13],_0x3235xc,_0x3235x11[_0xa307[14]][_0xa307[22]]);return _0x3235xf(_0x3235x11[_0xa307[14]][_0xa307[22]])};logger[_0xa307[14]](_0xa307[13],_0x3235xc,_0x3235x11[_0xa307[14]][_0xa307[22]]);return _0x3235xe(_0x3235x11[_0xa307[14]][_0xa307[22]])}else {logger[_0xa307[17]](_0xa307[13],_0x3235xc,_0xa307[16]);_0x3235xe(_0x3235x11[_0xa307[23]][_0xa307[22]])}})[_0xa307[15]](function(_0x3235x10){logger[_0xa307[14]](_0xa307[13],_0x3235xc,_0x3235x10);_0x3235xf(_0x3235x10)})})}exports[_0xa307[26]]= function(_0x3235xd){var _0x3235x12=this;return  new Promise(function(_0x3235xe,_0x3235xf){return db[_0xa307[37]][_0xa307[36]]({raw:_0x3235xd[_0xa307[27]]?(_0x3235xd[_0xa307[27]][_0xa307[28]]=== undefined)?true:false:true,where:_0x3235xd[_0xa307[27]]?_0x3235xd[_0xa307[27]][_0xa307[29]]|| null:null,attributes:_0x3235xd[_0xa307[27]]?_0x3235xd[_0xa307[27]][_0xa307[30]]|| null:null,limit:_0x3235xd[_0xa307[27]]?_0x3235xd[_0xa307[27]][_0xa307[31]]|| null:null,include:_0x3235xd[_0xa307[27]]?(_0x3235xd[_0xa307[27]][_0xa307[32]]?_[_0xa307[35]](_0x3235xd[_0xa307[27]][_0xa307[32]],function(_0x3235x13){return {model:db[_0x3235x13[_0xa307[33]]],as:_0x3235x13[_0xa307[34]],attributes:_0x3235x13[_0xa307[30]],include:_0x3235x13[_0xa307[32]]?_[_0xa307[35]](_0x3235x13[_0xa307[32]],function(_0x3235x14){return {model:db[_0x3235x14[_0xa307[33]]],as:_0x3235x14[_0xa307[34]],attributes:_0x3235x14[_0xa307[30]],include:_0x3235x14[_0xa307[32]]?_[_0xa307[35]](_0x3235x14[_0xa307[32]],function(_0x3235x15){return {model:db[_0x3235x15[_0xa307[33]]],as:_0x3235x15[_0xa307[34]],attributes:_0x3235x15[_0xa307[30]]}}):[]}}):[]}}):[]):[]})[_0xa307[24]](function(_0x3235x11){logger[_0xa307[17]](_0xa307[26],_0x3235xd);logger[_0xa307[20]](_0xa307[26],_0x3235xd,JSON[_0xa307[19]](_0x3235x11));_0x3235xe(_0x3235x11)})[_0xa307[15]](function(_0x3235x10){logger[_0xa307[14]](_0xa307[26],_0x3235x10[_0xa307[22]],_0x3235xd);_0x3235xf(_0x3235x12[_0xa307[14]](500,_0x3235x10[_0xa307[22]]))})})};exports[_0xa307[38]]= function(_0x3235xd){var _0x3235x12=this;return  new Promise(function(_0x3235xe,_0x3235xf){return db[_0xa307[37]][_0xa307[39]]({raw:_0x3235xd[_0xa307[27]]?(_0x3235xd[_0xa307[27]][_0xa307[28]]=== undefined)?true:false:true,where:_0x3235xd[_0xa307[27]]?_0x3235xd[_0xa307[27]][_0xa307[29]]|| null:null,attributes:_0x3235xd[_0xa307[27]]?_0x3235xd[_0xa307[27]][_0xa307[30]]|| null:null,include:_0x3235xd[_0xa307[27]]?(_0x3235xd[_0xa307[27]][_0xa307[32]]?_[_0xa307[35]](_0x3235xd[_0xa307[27]][_0xa307[32]],function(_0x3235x13){return {model:db[_0x3235x13[_0xa307[33]]],as:_0x3235x13[_0xa307[34]],attributes:_0x3235x13[_0xa307[30]],include:_0x3235x13[_0xa307[32]]?_[_0xa307[35]](_0x3235x13[_0xa307[32]],function(_0x3235x14){return {model:db[_0x3235x14[_0xa307[33]]],as:_0x3235x14[_0xa307[34]],attributes:_0x3235x14[_0xa307[30]],include:_0x3235x14[_0xa307[32]]?_[_0xa307[35]](_0x3235x14[_0xa307[32]],function(_0x3235x15){return {model:db[_0x3235x15[_0xa307[33]]],as:_0x3235x15[_0xa307[34]],attributes:_0x3235x15[_0xa307[30]]}}):[]}}):[]}}):[]):[]})[_0xa307[24]](function(_0x3235x11){logger[_0xa307[17]](_0xa307[38],_0x3235xd);logger[_0xa307[20]](_0xa307[38],_0x3235xd,JSON[_0xa307[19]](_0x3235x11));_0x3235xe(_0x3235x11)})[_0xa307[15]](function(_0x3235x10){logger[_0xa307[14]](_0xa307[38],_0x3235x10[_0xa307[22]],_0x3235xd);_0x3235xf(_0x3235x12[_0xa307[14]](500,_0x3235x10[_0xa307[22]]))})})}
\ No newline at end of file
+var _0xa16e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x53\x68\x6F\x77\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64"];_0xa16e[0];var _=require(_0xa16e[1]);var util=require(_0xa16e[2]);var moment=require(_0xa16e[3]);var BPromise=require(_0xa16e[4]);var db=require(_0xa16e[6])[_0xa16e[5]];var utils=require(_0xa16e[7]);var logger=require(_0xa16e[9])(_0xa16e[8]);var jayson=require(_0xa16e[10]);var client=jayson[_0xa16e[12]][_0xa16e[11]]({port:9002});function respondWithRpcPromise(_0xa086xb,_0xa086xc,_0xa086xd){return  new BPromise(function(_0xa086xe,_0xa086xf){return client[_0xa16e[25]](_0xa086xb,_0xa086xd)[_0xa16e[24]](function(_0xa086x11){logger[_0xa16e[17]](_0xa16e[13],_0xa086xc,_0xa16e[16]);logger[_0xa16e[20]](_0xa16e[18],_0xa086xc,_0xa16e[16],JSON[_0xa16e[19]](_0xa086x11));if(_0xa086x11[_0xa16e[14]]){if(_0xa086x11[_0xa16e[14]][_0xa16e[21]]=== 500){logger[_0xa16e[14]](_0xa16e[13],_0xa086xc,_0xa086x11[_0xa16e[14]][_0xa16e[22]]);return _0xa086xf(_0xa086x11[_0xa16e[14]][_0xa16e[22]])};logger[_0xa16e[14]](_0xa16e[13],_0xa086xc,_0xa086x11[_0xa16e[14]][_0xa16e[22]]);return _0xa086xe(_0xa086x11[_0xa16e[14]][_0xa16e[22]])}else {logger[_0xa16e[17]](_0xa16e[13],_0xa086xc,_0xa16e[16]);_0xa086xe(_0xa086x11[_0xa16e[23]][_0xa16e[22]])}})[_0xa16e[15]](function(_0xa086x10){logger[_0xa16e[14]](_0xa16e[13],_0xa086xc,_0xa086x10);_0xa086xf(_0xa086x10)})})}exports[_0xa16e[26]]= function(_0xa086xd){var _0xa086x12=this;return  new Promise(function(_0xa086xe,_0xa086xf){return db[_0xa16e[37]][_0xa16e[36]]({raw:_0xa086xd[_0xa16e[27]]?(_0xa086xd[_0xa16e[27]][_0xa16e[28]]=== undefined)?true:false:true,where:_0xa086xd[_0xa16e[27]]?_0xa086xd[_0xa16e[27]][_0xa16e[29]]|| null:null,attributes:_0xa086xd[_0xa16e[27]]?_0xa086xd[_0xa16e[27]][_0xa16e[30]]|| null:null,limit:_0xa086xd[_0xa16e[27]]?_0xa086xd[_0xa16e[27]][_0xa16e[31]]|| null:null,include:_0xa086xd[_0xa16e[27]]?(_0xa086xd[_0xa16e[27]][_0xa16e[32]]?_[_0xa16e[35]](_0xa086xd[_0xa16e[27]][_0xa16e[32]],function(_0xa086x13){return {model:db[_0xa086x13[_0xa16e[33]]],as:_0xa086x13[_0xa16e[34]],attributes:_0xa086x13[_0xa16e[30]],include:_0xa086x13[_0xa16e[32]]?_[_0xa16e[35]](_0xa086x13[_0xa16e[32]],function(_0xa086x14){return {model:db[_0xa086x14[_0xa16e[33]]],as:_0xa086x14[_0xa16e[34]],attributes:_0xa086x14[_0xa16e[30]],include:_0xa086x14[_0xa16e[32]]?_[_0xa16e[35]](_0xa086x14[_0xa16e[32]],function(_0xa086x15){return {model:db[_0xa086x15[_0xa16e[33]]],as:_0xa086x15[_0xa16e[34]],attributes:_0xa086x15[_0xa16e[30]]}}):[]}}):[]}}):[]):[]})[_0xa16e[24]](function(_0xa086x11){logger[_0xa16e[17]](_0xa16e[26],_0xa086xd);logger[_0xa16e[20]](_0xa16e[26],_0xa086xd,JSON[_0xa16e[19]](_0xa086x11));_0xa086xe(_0xa086x11)})[_0xa16e[15]](function(_0xa086x10){logger[_0xa16e[14]](_0xa16e[26],_0xa086x10[_0xa16e[22]],_0xa086xd);_0xa086xf(_0xa086x12[_0xa16e[14]](500,_0xa086x10[_0xa16e[22]]))})})};exports[_0xa16e[38]]= function(_0xa086xd){var _0xa086x12=this;return  new Promise(function(_0xa086xe,_0xa086xf){return db[_0xa16e[37]][_0xa16e[39]]({raw:_0xa086xd[_0xa16e[27]]?(_0xa086xd[_0xa16e[27]][_0xa16e[28]]=== undefined)?true:false:true,where:_0xa086xd[_0xa16e[27]]?_0xa086xd[_0xa16e[27]][_0xa16e[29]]|| null:null,attributes:_0xa086xd[_0xa16e[27]]?_0xa086xd[_0xa16e[27]][_0xa16e[30]]|| null:null,include:_0xa086xd[_0xa16e[27]]?(_0xa086xd[_0xa16e[27]][_0xa16e[32]]?_[_0xa16e[35]](_0xa086xd[_0xa16e[27]][_0xa16e[32]],function(_0xa086x13){return {model:db[_0xa086x13[_0xa16e[33]]],as:_0xa086x13[_0xa16e[34]],attributes:_0xa086x13[_0xa16e[30]],include:_0xa086x13[_0xa16e[32]]?_[_0xa16e[35]](_0xa086x13[_0xa16e[32]],function(_0xa086x14){return {model:db[_0xa086x14[_0xa16e[33]]],as:_0xa086x14[_0xa16e[34]],attributes:_0xa086x14[_0xa16e[30]],include:_0xa086x14[_0xa16e[32]]?_[_0xa16e[35]](_0xa086x14[_0xa16e[32]],function(_0xa086x15){return {model:db[_0xa086x15[_0xa16e[33]]],as:_0xa086x15[_0xa16e[34]],attributes:_0xa086x15[_0xa16e[30]]}}):[]}}):[]}}):[]):[]})[_0xa16e[24]](function(_0xa086x11){logger[_0xa16e[17]](_0xa16e[38],_0xa086xd);logger[_0xa16e[20]](_0xa16e[38],_0xa086xd,JSON[_0xa16e[19]](_0xa086x11));_0xa086xe(_0xa086x11)})[_0xa16e[15]](function(_0xa086x10){logger[_0xa16e[14]](_0xa16e[38],_0xa086x10[_0xa16e[22]],_0xa086xd);_0xa086xf(_0xa086x12[_0xa16e[14]](500,_0xa086x10[_0xa16e[22]]))})})}
\ No newline at end of file
index cc9e871..ea937e1 100644 (file)
@@ -1 +1 @@
-var _0x23ac=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x74\x61\x67\x73","\x67\x65\x74\x54\x61\x67\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x73\x65\x74\x54\x61\x67\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x23ac[0];var multer=require(_0x23ac[1]);var util=require(_0x23ac[2]);var path=require(_0x23ac[3]);var express=require(_0x23ac[4]);var router=express.Router();var auth=require(_0x23ac[5]);var config=require(_0x23ac[6]);var controller=require(_0x23ac[7]);router[_0x23ac[11]](_0x23ac[8],auth[_0x23ac[9]](),controller[_0x23ac[10]]);router[_0x23ac[11]](_0x23ac[12],auth[_0x23ac[9]](),controller[_0x23ac[13]]);router[_0x23ac[11]](_0x23ac[14],auth[_0x23ac[9]](),controller[_0x23ac[15]]);router[_0x23ac[11]](_0x23ac[16],auth[_0x23ac[9]](),controller[_0x23ac[17]]);router[_0x23ac[11]](_0x23ac[18],auth[_0x23ac[9]](),controller[_0x23ac[19]]);router[_0x23ac[11]](_0x23ac[20],auth[_0x23ac[9]](),controller[_0x23ac[21]]);router[_0x23ac[23]](_0x23ac[8],auth[_0x23ac[9]](),controller[_0x23ac[22]]);router[_0x23ac[23]](_0x23ac[20],auth[_0x23ac[9]](),controller[_0x23ac[24]]);router[_0x23ac[26]](_0x23ac[12],auth[_0x23ac[9]](),controller[_0x23ac[25]]);router[_0x23ac[28]](_0x23ac[12],auth[_0x23ac[9]](),controller[_0x23ac[27]]);module[_0x23ac[29]]= router
\ No newline at end of file
+var _0xf0ba=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x66\x69\x65\x6C\x64\x73","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x74\x61\x67\x73","\x67\x65\x74\x54\x61\x67\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x73\x65\x74\x54\x61\x67\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf0ba[0];var multer=require(_0xf0ba[1]);var util=require(_0xf0ba[2]);var path=require(_0xf0ba[3]);var express=require(_0xf0ba[4]);var router=express.Router();var auth=require(_0xf0ba[5]);var config=require(_0xf0ba[6]);var controller=require(_0xf0ba[7]);router[_0xf0ba[11]](_0xf0ba[8],auth[_0xf0ba[9]](),controller[_0xf0ba[10]]);router[_0xf0ba[11]](_0xf0ba[12],auth[_0xf0ba[9]](),controller[_0xf0ba[13]]);router[_0xf0ba[11]](_0xf0ba[14],auth[_0xf0ba[9]](),controller[_0xf0ba[15]]);router[_0xf0ba[11]](_0xf0ba[16],auth[_0xf0ba[9]](),controller[_0xf0ba[17]]);router[_0xf0ba[11]](_0xf0ba[18],auth[_0xf0ba[9]](),controller[_0xf0ba[19]]);router[_0xf0ba[11]](_0xf0ba[20],auth[_0xf0ba[9]](),controller[_0xf0ba[21]]);router[_0xf0ba[23]](_0xf0ba[8],auth[_0xf0ba[9]](),controller[_0xf0ba[22]]);router[_0xf0ba[23]](_0xf0ba[20],auth[_0xf0ba[9]](),controller[_0xf0ba[24]]);router[_0xf0ba[26]](_0xf0ba[12],auth[_0xf0ba[9]](),controller[_0xf0ba[25]]);router[_0xf0ba[28]](_0xf0ba[12],auth[_0xf0ba[9]](),controller[_0xf0ba[27]]);module[_0xf0ba[29]]= router
\ No newline at end of file
index f5e769e..edb6c7d 100644 (file)
@@ -1 +1 @@
-var _0x9d49=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x9d49[0];var Sequelize=require(_0x9d49[1]);module[_0x9d49[2]]= {name:{type:Sequelize[_0x9d49[3]]},description:{type:Sequelize[_0x9d49[3]]}}
\ No newline at end of file
+var _0x4c62=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x4c62[0];var Sequelize=require(_0x4c62[1]);module[_0x4c62[2]]= {name:{type:Sequelize[_0x4c62[3]]},description:{type:Sequelize[_0x4c62[3]]}}
\ No newline at end of file
index 740d19e..5361265 100644 (file)
@@ -1 +1 @@
-var _0xb34b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x54\x61\x67\x73","\x54\x61\x67","\x73\x65\x74\x54\x61\x67\x73","\x69\x64\x73"];_0xb34b[0];var jsonpatch=require(_0xb34b[1]);var rp=require(_0xb34b[2]);var moment=require(_0xb34b[3]);var BPromise=require(_0xb34b[4]);var util=require(_0xb34b[5]);var path=require(_0xb34b[6]);var sox=require(_0xb34b[7]);var ejs=require(_0xb34b[8]);var fs=require(_0xb34b[9]);var _=require(_0xb34b[10]);var squel=require(_0xb34b[11]);var crypto=require(_0xb34b[12]);var jsforce=require(_0xb34b[13]);var toCsv=require(_0xb34b[14]);var qs=require(_0xb34b[15]);var logger=require(_0xb34b[17])(_0xb34b[16]);var utils=require(_0xb34b[18]);var config=require(_0xb34b[19]);var db=require(_0xb34b[21])[_0xb34b[20]];var jayson=require(_0xb34b[22]);var client=jayson[_0xb34b[24]][_0xb34b[23]]({port:9002});function respondWithRpcPromise(_0xedf5x17,_0xedf5x18,_0xedf5x19){return  new BPromise(function(_0xedf5x1a,_0xedf5x1b){return client[_0xb34b[37]](_0xedf5x17,_0xedf5x19)[_0xb34b[36]](function(_0xedf5x1d){logger[_0xb34b[29]](_0xb34b[25],_0xedf5x18,_0xb34b[28]);logger[_0xb34b[32]](_0xb34b[30],_0xedf5x18,_0xb34b[28],JSON[_0xb34b[31]](_0xedf5x1d));if(_0xedf5x1d[_0xb34b[26]]){if(_0xedf5x1d[_0xb34b[26]][_0xb34b[33]]=== 500){logger[_0xb34b[26]](_0xb34b[25],_0xedf5x18,_0xedf5x1d[_0xb34b[26]][_0xb34b[34]]);return _0xedf5x1b(_0xedf5x1d[_0xb34b[26]][_0xb34b[34]])};logger[_0xb34b[26]](_0xb34b[25],_0xedf5x18,_0xedf5x1d[_0xb34b[26]][_0xb34b[34]]);return _0xedf5x1a(_0xedf5x1d[_0xb34b[26]][_0xb34b[34]])}else {logger[_0xb34b[29]](_0xb34b[25],_0xedf5x18,_0xb34b[28]);_0xedf5x1a(_0xedf5x1d[_0xb34b[35]][_0xb34b[34]])}})[_0xb34b[27]](function(_0xedf5x1c){logger[_0xb34b[26]](_0xb34b[25],_0xedf5x18,_0xedf5x1c);_0xedf5x1b(_0xedf5x1c)})})}function respondWithStatusCode(_0xedf5x1d,_0xedf5x1f,_0xedf5x18){_0xedf5x1f= _0xedf5x1f|| 204;return function(_0xedf5x20){if(_0xedf5x20){logger[_0xb34b[29]](_0xb34b[30],_0xedf5x18,_0xedf5x1f,_0xb34b[38]);logger[_0xb34b[32]](_0xb34b[39],_0xedf5x18,_0xedf5x1f,_0xb34b[38]);return _0xedf5x1d[_0xb34b[40]](_0xedf5x1f)};return _0xedf5x1d[_0xb34b[42]](304)[_0xb34b[41]]()}}function respondWithResult(_0xedf5x1d,_0xedf5x1f,_0xedf5x18){_0xedf5x1f= _0xedf5x1f|| 200;return function(_0xedf5x20){if(_0xedf5x20){logger[_0xb34b[29]](_0xb34b[30],_0xedf5x18,_0xedf5x1f,_0xb34b[43]);logger[_0xb34b[32]](_0xb34b[39],_0xedf5x18,_0xedf5x1f,_0xb34b[43],JSON[_0xb34b[31]](_0xedf5x20));return _0xedf5x1d[_0xb34b[42]](_0xedf5x1f)[_0xb34b[44]](_0xedf5x20)};return _0xedf5x1d[_0xb34b[42]](304)[_0xb34b[41]]()}}function respondWithFilteredResult(_0xedf5x1d,_0xedf5x23,_0xedf5x18){return function(_0xedf5x20){if(_0xedf5x20){var _0xedf5x24=_0xedf5x20[_0xb34b[45]],_0xedf5x25=_0xedf5x23[_0xb34b[46]],_0xedf5x26=_0xedf5x23[_0xb34b[46]]+ _0xedf5x23[_0xb34b[47]],_0xedf5x1f;if(_0xedf5x26>= _0xedf5x24){_0xedf5x26= _0xedf5x24;_0xedf5x1f= 200}else {_0xedf5x1f= 206};_0xedf5x1d[_0xb34b[42]](_0xedf5x1f);logger[_0xb34b[29]](_0xb34b[30],_0xedf5x18,_0xedf5x1f,_0xb34b[48]);logger[_0xb34b[32]](_0xb34b[39],_0xedf5x18,_0xedf5x1f,_0xb34b[43],JSON[_0xb34b[31]](_0xedf5x20));return _0xedf5x1d[_0xb34b[52]](_0xb34b[49],_0xedf5x25+ _0xb34b[50]+ _0xedf5x26+ _0xb34b[51]+ _0xedf5x24)[_0xb34b[44]](_0xedf5x20)};return null}}function patchUpdates(_0xedf5x28){return function(_0xedf5x20){try{jsonpatch[_0xb34b[53]](_0xedf5x20,_0xedf5x28,true)}catch(err){return BPromise[_0xb34b[54]](err)};return _0xedf5x20[_0xb34b[55]]()}}function saveUpdates(_0xedf5x2a,_0xedf5x1f,_0xedf5x18){return function(_0xedf5x20){if(_0xedf5x20){return _0xedf5x20[_0xb34b[57]](_0xedf5x2a)[_0xb34b[36]](function(_0xedf5x2b){logger[_0xb34b[29]](_0xb34b[30],_0xedf5x18,_0xedf5x1f,_0xb34b[56]);logger[_0xb34b[32]](_0xb34b[39],_0xedf5x18,_0xedf5x1f,_0xb34b[56],JSON[_0xb34b[31]](_0xedf5x20));return _0xedf5x2b})};return null}}function removeEntity(_0xedf5x1d,_0xedf5x1f,_0xedf5x18){return function(_0xedf5x20){if(_0xedf5x20){return _0xedf5x20[_0xb34b[59]]()[_0xb34b[36]](function(){logger[_0xb34b[29]](_0xb34b[30],_0xedf5x18,_0xedf5x1f,_0xb34b[58]);logger[_0xb34b[32]](_0xb34b[39],_0xedf5x18,_0xedf5x1f,_0xb34b[58],JSON[_0xb34b[31]](_0xedf5x20));_0xedf5x1d[_0xb34b[42]](204)[_0xb34b[41]]()})}}}function handleEntityNotFound(_0xedf5x1d,_0xedf5x1f,_0xedf5x18){return function(_0xedf5x20){if(!_0xedf5x20){logger[_0xb34b[26]](_0xb34b[30],_0xedf5x18,404,_0xb34b[60]);_0xedf5x1d[_0xb34b[42]](404)[_0xb34b[41]]();return null};return _0xedf5x20}}function handleError(_0xedf5x1d,_0xedf5x1f,_0xedf5x18){_0xedf5x1f= _0xedf5x1f|| 500;return function(_0xedf5x1c){logger[_0xb34b[26]](_0xb34b[30],_0xedf5x18,_0xedf5x1f,JSON[_0xb34b[31]](_0xedf5x1c));delete _0xedf5x1c[_0xb34b[61]];_0xedf5x1d[_0xb34b[42]](_0xedf5x1f)[_0xb34b[62]](_0xedf5x1c)}}exports[_0xb34b[63]]= function(_0xedf5x19,_0xedf5x1d){var _0xedf5x23={},_0xedf5x2f={};_0xedf5x2f[_0xb34b[64]]= _[_0xb34b[67]](db[_0xb34b[66]][_0xb34b[65]]);_0xedf5x2f[_0xb34b[68]]= _[_0xb34b[67]](_0xedf5x19[_0xb34b[68]]);_0xedf5x2f[_0xb34b[69]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],_0xedf5x2f[_0xb34b[68]]);_0xedf5x23[_0xb34b[71]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],qs[_0xb34b[72]](_0xedf5x19[_0xb34b[68]][_0xb34b[72]]));_0xedf5x23[_0xb34b[71]]= (_0xedf5x23[_0xb34b[71]][_0xb34b[73]])?_0xedf5x23[_0xb34b[71]]:_0xedf5x2f[_0xb34b[64]];if(!_0xedf5x19[_0xb34b[68]][_0xb34b[75]](_0xb34b[74])){_0xedf5x23[_0xb34b[47]]= qs[_0xb34b[47]](_0xedf5x19[_0xb34b[68]][_0xb34b[47]]);_0xedf5x23[_0xb34b[46]]= qs[_0xb34b[46]](_0xedf5x19[_0xb34b[68]][_0xb34b[46]])};_0xedf5x23[_0xb34b[76]]= qs[_0xb34b[77]](_0xedf5x19[_0xb34b[68]][_0xb34b[77]]);_0xedf5x23[_0xb34b[78]]= qs[_0xb34b[69]](_[_0xb34b[79]](_0xedf5x19[_0xb34b[68]],_0xedf5x2f[_0xb34b[69]]));if(_0xedf5x19[_0xb34b[68]][_0xb34b[80]]){_0xedf5x23[_0xb34b[78]]= _[_0xb34b[83]](_0xedf5x23[_0xb34b[78]],{$or:_[_0xb34b[82]](_0xedf5x23[_0xb34b[71]],function(_0xedf5x30){var _0xedf5x31={};_0xedf5x31[_0xedf5x30]= {$like:_0xb34b[81]+ _0xedf5x19[_0xb34b[68]][_0xb34b[80]]+ _0xb34b[81]};return _0xedf5x31})})};_0xedf5x23= _[_0xb34b[83]]({},_0xedf5x23,_0xedf5x19[_0xb34b[84]]);return db[_0xb34b[66]][_0xb34b[85]](_0xedf5x23)[_0xb34b[36]](respondWithFilteredResult(_0xedf5x1d,_0xedf5x23,_0xb34b[63]))[_0xb34b[27]](handleError(_0xedf5x1d,null,_0xb34b[63]))};exports[_0xb34b[86]]= function(_0xedf5x19,_0xedf5x1d){var _0xedf5x23={raw:false,where:{id:_0xedf5x19[_0xb34b[88]][_0xb34b[87]]}},_0xedf5x2f={};_0xedf5x2f[_0xb34b[64]]= _[_0xb34b[67]](db[_0xb34b[66]][_0xb34b[65]]);_0xedf5x2f[_0xb34b[68]]= _[_0xb34b[67]](_0xedf5x19[_0xb34b[68]]);_0xedf5x2f[_0xb34b[69]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],_0xedf5x2f[_0xb34b[68]]);_0xedf5x23[_0xb34b[71]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],qs[_0xb34b[72]](_0xedf5x19[_0xb34b[68]][_0xb34b[72]]));_0xedf5x23[_0xb34b[71]]= (_0xedf5x23[_0xb34b[71]][_0xb34b[73]])?_0xedf5x23[_0xb34b[71]]:_0xedf5x2f[_0xb34b[64]];_0xedf5x23= _[_0xb34b[83]]({},_0xedf5x23,_0xedf5x19[_0xb34b[84]]);return db[_0xb34b[66]][_0xb34b[89]](_0xedf5x23)[_0xb34b[36]](handleEntityNotFound(_0xedf5x1d,null,_0xb34b[86]))[_0xb34b[36]](respondWithResult(_0xedf5x1d,null,_0xb34b[86]))[_0xb34b[27]](handleError(_0xedf5x1d,null,_0xb34b[86]))};exports[_0xb34b[90]]= function(_0xedf5x19,_0xedf5x1d){return db[_0xb34b[66]][_0xb34b[90]](_0xedf5x19[_0xb34b[91]],{})[_0xb34b[36]](respondWithResult(_0xedf5x1d,201,_0xb34b[90]))[_0xb34b[27]](handleError(_0xedf5x1d,null,_0xb34b[90]))};exports[_0xb34b[57]]= function(_0xedf5x19,_0xedf5x1d){if(_0xedf5x19[_0xb34b[91]][_0xb34b[87]]){delete _0xedf5x19[_0xb34b[91]][_0xb34b[87]]};return db[_0xb34b[66]][_0xb34b[89]]({where:{id:_0xedf5x19[_0xb34b[88]][_0xb34b[87]]}})[_0xb34b[36]](handleEntityNotFound(_0xedf5x1d,null,_0xb34b[57]))[_0xb34b[36]](saveUpdates(_0xedf5x19[_0xb34b[91]],null,_0xb34b[57]))[_0xb34b[36]](respondWithResult(_0xedf5x1d,null,_0xb34b[57]))[_0xb34b[27]](handleError(_0xedf5x1d,null,_0xb34b[57]))};exports[_0xb34b[59]]= function(_0xedf5x19,_0xedf5x1d){return db[_0xb34b[66]][_0xb34b[89]]({where:{id:_0xedf5x19[_0xb34b[88]][_0xb34b[87]]}})[_0xb34b[36]](handleEntityNotFound(_0xedf5x1d,null,_0xb34b[59]))[_0xb34b[36]](removeEntity(_0xedf5x1d,null,_0xb34b[59]))[_0xb34b[27]](handleError(_0xedf5x1d,null,_0xb34b[59]))};exports[_0xb34b[92]]= function(_0xedf5x19,_0xedf5x20,_0xedf5x32){var _0xedf5x23={};var _0xedf5x2f={};var _0xedf5x33;var _0xedf5x24;return db[_0xb34b[66]][_0xb34b[94]]({where:{id:_0xedf5x19[_0xb34b[88]][_0xb34b[87]]}})[_0xb34b[36]](handleEntityNotFound(_0xedf5x20,null,_0xb34b[92]))[_0xb34b[36]](function(_0xedf5x20){if(_0xedf5x20){_0xedf5x33= _0xedf5x20;_0xedf5x2f[_0xb34b[64]]= _[_0xb34b[67]](db[_0xb34b[93]][_0xb34b[65]]);_0xedf5x2f[_0xb34b[68]]= _[_0xb34b[67]](_0xedf5x19[_0xb34b[68]]);_0xedf5x2f[_0xb34b[69]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],_0xedf5x2f[_0xb34b[68]]);_0xedf5x23[_0xb34b[71]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],qs[_0xb34b[72]](_0xedf5x19[_0xb34b[68]][_0xb34b[72]]));_0xedf5x23[_0xb34b[71]]= (_0xedf5x23[_0xb34b[71]][_0xb34b[73]])?_0xedf5x23[_0xb34b[71]]:_0xedf5x2f[_0xb34b[64]];_0xedf5x23[_0xb34b[76]]= qs[_0xb34b[77]](_0xedf5x19[_0xb34b[68]][_0xb34b[77]]);_0xedf5x23[_0xb34b[78]]= qs[_0xb34b[69]](_[_0xb34b[79]](_0xedf5x19[_0xb34b[68]],_0xedf5x2f[_0xb34b[69]]));if(_0xedf5x19[_0xb34b[68]][_0xb34b[80]]){_0xedf5x23[_0xb34b[78]]= _[_0xb34b[83]](_0xedf5x23[_0xb34b[78]],{$or:_[_0xb34b[82]](_0xedf5x23[_0xb34b[71]],function(_0xedf5x30){var _0xedf5x31={};_0xedf5x31[_0xedf5x30]= {$like:_0xb34b[81]+ _0xedf5x19[_0xb34b[68]][_0xb34b[80]]+ _0xb34b[81]};return _0xedf5x31})})};_0xedf5x23= _[_0xb34b[83]]({},_0xedf5x23,_0xedf5x19[_0xb34b[84]]);return _0xedf5x33[_0xb34b[92]](_0xedf5x23)}})[_0xb34b[36]](function(_0xedf5x35){if(_0xedf5x35){_0xedf5x24= _0xedf5x35[_0xb34b[73]];if(!_0xedf5x19[_0xb34b[68]][_0xb34b[75]](_0xb34b[74])){_0xedf5x23[_0xb34b[47]]= qs[_0xb34b[47]](_0xedf5x19[_0xb34b[68]][_0xb34b[47]]);_0xedf5x23[_0xb34b[46]]= qs[_0xb34b[46]](_0xedf5x19[_0xb34b[68]][_0xb34b[46]])};return _0xedf5x33[_0xb34b[92]](_0xedf5x23)}})[_0xb34b[36]](function(_0xedf5x34){return _0xedf5x34?{count:_0xedf5x24,rows:_0xedf5x34}:null})[_0xb34b[36]](respondWithResult(_0xedf5x20,null,_0xb34b[92]))[_0xb34b[27]](handleError(_0xedf5x20,null,_0xb34b[92]))};exports[_0xb34b[95]]= function(_0xedf5x19,_0xedf5x20,_0xedf5x32){var _0xedf5x23={};var _0xedf5x2f={};var _0xedf5x33;var _0xedf5x24;return db[_0xb34b[66]][_0xb34b[94]]({where:{id:_0xedf5x19[_0xb34b[88]][_0xb34b[87]]}})[_0xb34b[36]](handleEntityNotFound(_0xedf5x20,null,_0xb34b[95]))[_0xb34b[36]](function(_0xedf5x20){if(_0xedf5x20){_0xedf5x33= _0xedf5x20;_0xedf5x2f[_0xb34b[64]]= _[_0xb34b[67]](db[_0xb34b[93]][_0xb34b[65]]);_0xedf5x2f[_0xb34b[68]]= _[_0xb34b[67]](_0xedf5x19[_0xb34b[68]]);_0xedf5x2f[_0xb34b[69]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],_0xedf5x2f[_0xb34b[68]]);_0xedf5x23[_0xb34b[71]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],qs[_0xb34b[72]](_0xedf5x19[_0xb34b[68]][_0xb34b[72]]));_0xedf5x23[_0xb34b[71]]= (_0xedf5x23[_0xb34b[71]][_0xb34b[73]])?_0xedf5x23[_0xb34b[71]]:_0xedf5x2f[_0xb34b[64]];_0xedf5x23[_0xb34b[76]]= qs[_0xb34b[77]](_0xedf5x19[_0xb34b[68]][_0xb34b[77]]);_0xedf5x23[_0xb34b[78]]= qs[_0xb34b[69]](_[_0xb34b[79]](_0xedf5x19[_0xb34b[68]],_0xedf5x2f[_0xb34b[69]]));if(_0xedf5x19[_0xb34b[68]][_0xb34b[80]]){_0xedf5x23[_0xb34b[78]]= _[_0xb34b[83]](_0xedf5x23[_0xb34b[78]],{$or:_[_0xb34b[82]](_0xedf5x23[_0xb34b[71]],function(_0xedf5x30){var _0xedf5x31={};_0xedf5x31[_0xedf5x30]= {$like:_0xb34b[81]+ _0xedf5x19[_0xb34b[68]][_0xb34b[80]]+ _0xb34b[81]};return _0xedf5x31})})};_0xedf5x23= _[_0xb34b[83]]({},_0xedf5x23,_0xedf5x19[_0xb34b[84]]);return _0xedf5x33[_0xb34b[95]](_0xedf5x23)}})[_0xb34b[36]](function(_0xedf5x35){if(_0xedf5x35){_0xedf5x24= _0xedf5x35[_0xb34b[73]];if(!_0xedf5x19[_0xb34b[68]][_0xb34b[75]](_0xb34b[74])){_0xedf5x23[_0xb34b[47]]= qs[_0xb34b[47]](_0xedf5x19[_0xb34b[68]][_0xb34b[47]]);_0xedf5x23[_0xb34b[46]]= qs[_0xb34b[46]](_0xedf5x19[_0xb34b[68]][_0xb34b[46]])};return _0xedf5x33[_0xb34b[95]](_0xedf5x23)}})[_0xb34b[36]](function(_0xedf5x34){return _0xedf5x34?{count:_0xedf5x24,rows:_0xedf5x34}:null})[_0xb34b[36]](respondWithResult(_0xedf5x20,null,_0xb34b[95]))[_0xb34b[27]](handleError(_0xedf5x20,null,_0xb34b[95]))};exports[_0xb34b[96]]= function(_0xedf5x19,_0xedf5x20,_0xedf5x32){var _0xedf5x23={};var _0xedf5x2f={};var _0xedf5x33;var _0xedf5x24;return db[_0xb34b[66]][_0xb34b[94]]({where:{id:_0xedf5x19[_0xb34b[88]][_0xb34b[87]]}})[_0xb34b[36]](handleEntityNotFound(_0xedf5x20,null,_0xb34b[96]))[_0xb34b[36]](function(_0xedf5x20){if(_0xedf5x20){_0xedf5x33= _0xedf5x20;_0xedf5x2f[_0xb34b[64]]= _[_0xb34b[67]](db[_0xb34b[93]][_0xb34b[65]]);_0xedf5x2f[_0xb34b[68]]= _[_0xb34b[67]](_0xedf5x19[_0xb34b[68]]);_0xedf5x2f[_0xb34b[69]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],_0xedf5x2f[_0xb34b[68]]);_0xedf5x23[_0xb34b[71]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],qs[_0xb34b[72]](_0xedf5x19[_0xb34b[68]][_0xb34b[72]]));_0xedf5x23[_0xb34b[71]]= (_0xedf5x23[_0xb34b[71]][_0xb34b[73]])?_0xedf5x23[_0xb34b[71]]:_0xedf5x2f[_0xb34b[64]];_0xedf5x23[_0xb34b[76]]= qs[_0xb34b[77]](_0xedf5x19[_0xb34b[68]][_0xb34b[77]]);_0xedf5x23[_0xb34b[78]]= qs[_0xb34b[69]](_[_0xb34b[79]](_0xedf5x19[_0xb34b[68]],_0xedf5x2f[_0xb34b[69]]));if(_0xedf5x19[_0xb34b[68]][_0xb34b[80]]){_0xedf5x23[_0xb34b[78]]= _[_0xb34b[83]](_0xedf5x23[_0xb34b[78]],{$or:_[_0xb34b[82]](_0xedf5x23[_0xb34b[71]],function(_0xedf5x30){var _0xedf5x31={};_0xedf5x31[_0xedf5x30]= {$like:_0xb34b[81]+ _0xedf5x19[_0xb34b[68]][_0xb34b[80]]+ _0xb34b[81]};return _0xedf5x31})})};_0xedf5x23= _[_0xb34b[83]]({},_0xedf5x23,_0xedf5x19[_0xb34b[84]]);return _0xedf5x33[_0xb34b[96]](_0xedf5x23)}})[_0xb34b[36]](function(_0xedf5x35){if(_0xedf5x35){_0xedf5x24= _0xedf5x35[_0xb34b[73]];if(!_0xedf5x19[_0xb34b[68]][_0xb34b[75]](_0xb34b[74])){_0xedf5x23[_0xb34b[47]]= qs[_0xb34b[47]](_0xedf5x19[_0xb34b[68]][_0xb34b[47]]);_0xedf5x23[_0xb34b[46]]= qs[_0xb34b[46]](_0xedf5x19[_0xb34b[68]][_0xb34b[46]])};return _0xedf5x33[_0xb34b[96]](_0xedf5x23)}})[_0xb34b[36]](function(_0xedf5x34){return _0xedf5x34?{count:_0xedf5x24,rows:_0xedf5x34}:null})[_0xb34b[36]](respondWithResult(_0xedf5x20,null,_0xb34b[96]))[_0xb34b[27]](handleError(_0xedf5x20,null,_0xb34b[96]))};exports[_0xb34b[97]]= function(_0xedf5x19,_0xedf5x20,_0xedf5x32){var _0xedf5x23={};var _0xedf5x2f={};var _0xedf5x33;var _0xedf5x24;return db[_0xb34b[66]][_0xb34b[94]]({where:{id:_0xedf5x19[_0xb34b[88]][_0xb34b[87]]}})[_0xb34b[36]](handleEntityNotFound(_0xedf5x20,null,_0xb34b[97]))[_0xb34b[36]](function(_0xedf5x20){if(_0xedf5x20){_0xedf5x33= _0xedf5x20;_0xedf5x2f[_0xb34b[64]]= _[_0xb34b[67]](db[_0xb34b[98]][_0xb34b[65]]);_0xedf5x2f[_0xb34b[68]]= _[_0xb34b[67]](_0xedf5x19[_0xb34b[68]]);_0xedf5x2f[_0xb34b[69]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],_0xedf5x2f[_0xb34b[68]]);_0xedf5x23[_0xb34b[71]]= _[_0xb34b[70]](_0xedf5x2f[_0xb34b[64]],qs[_0xb34b[72]](_0xedf5x19[_0xb34b[68]][_0xb34b[72]]));_0xedf5x23[_0xb34b[71]]= (_0xedf5x23[_0xb34b[71]][_0xb34b[73]])?_0xedf5x23[_0xb34b[71]]:_0xedf5x2f[_0xb34b[64]];_0xedf5x23[_0xb34b[76]]= qs[_0xb34b[77]](_0xedf5x19[_0xb34b[68]][_0xb34b[77]]);_0xedf5x23[_0xb34b[78]]= qs[_0xb34b[69]](_[_0xb34b[79]](_0xedf5x19[_0xb34b[68]],_0xedf5x2f[_0xb34b[69]]));if(_0xedf5x19[_0xb34b[68]][_0xb34b[80]]){_0xedf5x23[_0xb34b[78]]= _[_0xb34b[83]](_0xedf5x23[_0xb34b[78]],{$or:_[_0xb34b[82]](_0xedf5x23[_0xb34b[71]],function(_0xedf5x30){var _0xedf5x31={};_0xedf5x31[_0xedf5x30]= {$like:_0xb34b[81]+ _0xedf5x19[_0xb34b[68]][_0xb34b[80]]+ _0xb34b[81]};return _0xedf5x31})})};_0xedf5x23= _[_0xb34b[83]]({},_0xedf5x23,_0xedf5x19[_0xb34b[84]]);return _0xedf5x33[_0xb34b[97]](_0xedf5x23)}})[_0xb34b[36]](function(_0xedf5x35){if(_0xedf5x35){_0xedf5x24= _0xedf5x35[_0xb34b[73]];if(!_0xedf5x19[_0xb34b[68]][_0xb34b[75]](_0xb34b[74])){_0xedf5x23[_0xb34b[47]]= qs[_0xb34b[47]](_0xedf5x19[_0xb34b[68]][_0xb34b[47]]);_0xedf5x23[_0xb34b[46]]= qs[_0xb34b[46]](_0xedf5x19[_0xb34b[68]][_0xb34b[46]])};return _0xedf5x33[_0xb34b[97]](_0xedf5x23)}})[_0xb34b[36]](function(_0xedf5x34){return _0xedf5x34?{count:_0xedf5x24,rows:_0xedf5x34}:null})[_0xb34b[36]](respondWithResult(_0xedf5x20,null,_0xb34b[97]))[_0xb34b[27]](handleError(_0xedf5x20,null,_0xb34b[97]))};exports[_0xb34b[99]]= function(_0xedf5x19,_0xedf5x1d,_0xedf5x32){if(_0xedf5x19[_0xb34b[91]][_0xb34b[87]]){delete _0xedf5x19[_0xb34b[91]][_0xb34b[87]]};return db[_0xb34b[66]][_0xb34b[94]]({where:{id:_0xedf5x19[_0xb34b[88]][_0xb34b[87]]}})[_0xb34b[36]](handleEntityNotFound(_0xedf5x1d,null,_0xb34b[99]))[_0xb34b[36]](function(_0xedf5x20){if(_0xedf5x20){return _0xedf5x20[_0xb34b[99]](_0xedf5x19[_0xb34b[91]][_0xb34b[100]])};return null})[_0xb34b[36]](respondWithResult(_0xedf5x1d,null,_0xb34b[99]))[_0xb34b[27]](handleError(_0xedf5x1d,null,_0xb34b[99]))}
\ No newline at end of file
+var _0xf0f3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x46\x69\x65\x6C\x64\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x67\x65\x74\x54\x61\x67\x73","\x54\x61\x67","\x73\x65\x74\x54\x61\x67\x73","\x69\x64\x73"];_0xf0f3[0];var jsonpatch=require(_0xf0f3[1]);var rp=require(_0xf0f3[2]);var moment=require(_0xf0f3[3]);var BPromise=require(_0xf0f3[4]);var util=require(_0xf0f3[5]);var path=require(_0xf0f3[6]);var sox=require(_0xf0f3[7]);var ejs=require(_0xf0f3[8]);var fs=require(_0xf0f3[9]);var _=require(_0xf0f3[10]);var squel=require(_0xf0f3[11]);var crypto=require(_0xf0f3[12]);var jsforce=require(_0xf0f3[13]);var toCsv=require(_0xf0f3[14]);var qs=require(_0xf0f3[15]);var logger=require(_0xf0f3[17])(_0xf0f3[16]);var utils=require(_0xf0f3[18]);var config=require(_0xf0f3[19]);var db=require(_0xf0f3[21])[_0xf0f3[20]];var jayson=require(_0xf0f3[22]);var client=jayson[_0xf0f3[24]][_0xf0f3[23]]({port:9002});function respondWithRpcPromise(_0xcac3x17,_0xcac3x18,_0xcac3x19){return  new BPromise(function(_0xcac3x1a,_0xcac3x1b){return client[_0xf0f3[37]](_0xcac3x17,_0xcac3x19)[_0xf0f3[36]](function(_0xcac3x1d){logger[_0xf0f3[29]](_0xf0f3[25],_0xcac3x18,_0xf0f3[28]);logger[_0xf0f3[32]](_0xf0f3[30],_0xcac3x18,_0xf0f3[28],JSON[_0xf0f3[31]](_0xcac3x1d));if(_0xcac3x1d[_0xf0f3[26]]){if(_0xcac3x1d[_0xf0f3[26]][_0xf0f3[33]]=== 500){logger[_0xf0f3[26]](_0xf0f3[25],_0xcac3x18,_0xcac3x1d[_0xf0f3[26]][_0xf0f3[34]]);return _0xcac3x1b(_0xcac3x1d[_0xf0f3[26]][_0xf0f3[34]])};logger[_0xf0f3[26]](_0xf0f3[25],_0xcac3x18,_0xcac3x1d[_0xf0f3[26]][_0xf0f3[34]]);return _0xcac3x1a(_0xcac3x1d[_0xf0f3[26]][_0xf0f3[34]])}else {logger[_0xf0f3[29]](_0xf0f3[25],_0xcac3x18,_0xf0f3[28]);_0xcac3x1a(_0xcac3x1d[_0xf0f3[35]][_0xf0f3[34]])}})[_0xf0f3[27]](function(_0xcac3x1c){logger[_0xf0f3[26]](_0xf0f3[25],_0xcac3x18,_0xcac3x1c);_0xcac3x1b(_0xcac3x1c)})})}function respondWithStatusCode(_0xcac3x1d,_0xcac3x1f,_0xcac3x18){_0xcac3x1f= _0xcac3x1f|| 204;return function(_0xcac3x20){if(_0xcac3x20){logger[_0xf0f3[29]](_0xf0f3[30],_0xcac3x18,_0xcac3x1f,_0xf0f3[38]);logger[_0xf0f3[32]](_0xf0f3[39],_0xcac3x18,_0xcac3x1f,_0xf0f3[38]);return _0xcac3x1d[_0xf0f3[40]](_0xcac3x1f)};return _0xcac3x1d[_0xf0f3[42]](304)[_0xf0f3[41]]()}}function respondWithResult(_0xcac3x1d,_0xcac3x1f,_0xcac3x18){_0xcac3x1f= _0xcac3x1f|| 200;return function(_0xcac3x20){if(_0xcac3x20){logger[_0xf0f3[29]](_0xf0f3[30],_0xcac3x18,_0xcac3x1f,_0xf0f3[43]);logger[_0xf0f3[32]](_0xf0f3[39],_0xcac3x18,_0xcac3x1f,_0xf0f3[43],JSON[_0xf0f3[31]](_0xcac3x20));return _0xcac3x1d[_0xf0f3[42]](_0xcac3x1f)[_0xf0f3[44]](_0xcac3x20)};return _0xcac3x1d[_0xf0f3[42]](304)[_0xf0f3[41]]()}}function respondWithFilteredResult(_0xcac3x1d,_0xcac3x23,_0xcac3x18){return function(_0xcac3x20){if(_0xcac3x20){var _0xcac3x24=_0xcac3x20[_0xf0f3[45]],_0xcac3x25=_0xcac3x23[_0xf0f3[46]],_0xcac3x26=_0xcac3x23[_0xf0f3[46]]+ _0xcac3x23[_0xf0f3[47]],_0xcac3x1f;if(_0xcac3x26>= _0xcac3x24){_0xcac3x26= _0xcac3x24;_0xcac3x1f= 200}else {_0xcac3x1f= 206};_0xcac3x1d[_0xf0f3[42]](_0xcac3x1f);logger[_0xf0f3[29]](_0xf0f3[30],_0xcac3x18,_0xcac3x1f,_0xf0f3[48]);logger[_0xf0f3[32]](_0xf0f3[39],_0xcac3x18,_0xcac3x1f,_0xf0f3[43],JSON[_0xf0f3[31]](_0xcac3x20));return _0xcac3x1d[_0xf0f3[52]](_0xf0f3[49],_0xcac3x25+ _0xf0f3[50]+ _0xcac3x26+ _0xf0f3[51]+ _0xcac3x24)[_0xf0f3[44]](_0xcac3x20)};return null}}function patchUpdates(_0xcac3x28){return function(_0xcac3x20){try{jsonpatch[_0xf0f3[53]](_0xcac3x20,_0xcac3x28,true)}catch(err){return BPromise[_0xf0f3[54]](err)};return _0xcac3x20[_0xf0f3[55]]()}}function saveUpdates(_0xcac3x2a,_0xcac3x1f,_0xcac3x18){return function(_0xcac3x20){if(_0xcac3x20){return _0xcac3x20[_0xf0f3[57]](_0xcac3x2a)[_0xf0f3[36]](function(_0xcac3x2b){logger[_0xf0f3[29]](_0xf0f3[30],_0xcac3x18,_0xcac3x1f,_0xf0f3[56]);logger[_0xf0f3[32]](_0xf0f3[39],_0xcac3x18,_0xcac3x1f,_0xf0f3[56],JSON[_0xf0f3[31]](_0xcac3x20));return _0xcac3x2b})};return null}}function removeEntity(_0xcac3x1d,_0xcac3x1f,_0xcac3x18){return function(_0xcac3x20){if(_0xcac3x20){return _0xcac3x20[_0xf0f3[59]]()[_0xf0f3[36]](function(){logger[_0xf0f3[29]](_0xf0f3[30],_0xcac3x18,_0xcac3x1f,_0xf0f3[58]);logger[_0xf0f3[32]](_0xf0f3[39],_0xcac3x18,_0xcac3x1f,_0xf0f3[58],JSON[_0xf0f3[31]](_0xcac3x20));_0xcac3x1d[_0xf0f3[42]](204)[_0xf0f3[41]]()})}}}function handleEntityNotFound(_0xcac3x1d,_0xcac3x1f,_0xcac3x18){return function(_0xcac3x20){if(!_0xcac3x20){logger[_0xf0f3[26]](_0xf0f3[30],_0xcac3x18,404,_0xf0f3[60]);_0xcac3x1d[_0xf0f3[42]](404)[_0xf0f3[41]]();return null};return _0xcac3x20}}function handleError(_0xcac3x1d,_0xcac3x1f,_0xcac3x18){_0xcac3x1f= _0xcac3x1f|| 500;return function(_0xcac3x1c){logger[_0xf0f3[26]](_0xf0f3[30],_0xcac3x18,_0xcac3x1f,JSON[_0xf0f3[31]](_0xcac3x1c));delete _0xcac3x1c[_0xf0f3[61]];_0xcac3x1d[_0xf0f3[42]](_0xcac3x1f)[_0xf0f3[62]](_0xcac3x1c)}}exports[_0xf0f3[63]]= function(_0xcac3x19,_0xcac3x1d){var _0xcac3x23={},_0xcac3x2f={};_0xcac3x2f[_0xf0f3[64]]= _[_0xf0f3[67]](db[_0xf0f3[66]][_0xf0f3[65]]);_0xcac3x2f[_0xf0f3[68]]= _[_0xf0f3[67]](_0xcac3x19[_0xf0f3[68]]);_0xcac3x2f[_0xf0f3[69]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],_0xcac3x2f[_0xf0f3[68]]);_0xcac3x23[_0xf0f3[71]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],qs[_0xf0f3[72]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[72]]));_0xcac3x23[_0xf0f3[71]]= (_0xcac3x23[_0xf0f3[71]][_0xf0f3[73]])?_0xcac3x23[_0xf0f3[71]]:_0xcac3x2f[_0xf0f3[64]];if(!_0xcac3x19[_0xf0f3[68]][_0xf0f3[75]](_0xf0f3[74])){_0xcac3x23[_0xf0f3[47]]= qs[_0xf0f3[47]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[47]]);_0xcac3x23[_0xf0f3[46]]= qs[_0xf0f3[46]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[46]])};_0xcac3x23[_0xf0f3[76]]= qs[_0xf0f3[77]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[77]]);_0xcac3x23[_0xf0f3[78]]= qs[_0xf0f3[69]](_[_0xf0f3[79]](_0xcac3x19[_0xf0f3[68]],_0xcac3x2f[_0xf0f3[69]]));if(_0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]){_0xcac3x23[_0xf0f3[78]]= _[_0xf0f3[83]](_0xcac3x23[_0xf0f3[78]],{$or:_[_0xf0f3[82]](_0xcac3x23[_0xf0f3[71]],function(_0xcac3x30){var _0xcac3x31={};_0xcac3x31[_0xcac3x30]= {$like:_0xf0f3[81]+ _0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]+ _0xf0f3[81]};return _0xcac3x31})})};_0xcac3x23= _[_0xf0f3[83]]({},_0xcac3x23,_0xcac3x19[_0xf0f3[84]]);return db[_0xf0f3[66]][_0xf0f3[85]](_0xcac3x23)[_0xf0f3[36]](respondWithFilteredResult(_0xcac3x1d,_0xcac3x23,_0xf0f3[63]))[_0xf0f3[27]](handleError(_0xcac3x1d,null,_0xf0f3[63]))};exports[_0xf0f3[86]]= function(_0xcac3x19,_0xcac3x1d){var _0xcac3x23={raw:false,where:{id:_0xcac3x19[_0xf0f3[88]][_0xf0f3[87]]}},_0xcac3x2f={};_0xcac3x2f[_0xf0f3[64]]= _[_0xf0f3[67]](db[_0xf0f3[66]][_0xf0f3[65]]);_0xcac3x2f[_0xf0f3[68]]= _[_0xf0f3[67]](_0xcac3x19[_0xf0f3[68]]);_0xcac3x2f[_0xf0f3[69]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],_0xcac3x2f[_0xf0f3[68]]);_0xcac3x23[_0xf0f3[71]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],qs[_0xf0f3[72]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[72]]));_0xcac3x23[_0xf0f3[71]]= (_0xcac3x23[_0xf0f3[71]][_0xf0f3[73]])?_0xcac3x23[_0xf0f3[71]]:_0xcac3x2f[_0xf0f3[64]];_0xcac3x23= _[_0xf0f3[83]]({},_0xcac3x23,_0xcac3x19[_0xf0f3[84]]);return db[_0xf0f3[66]][_0xf0f3[89]](_0xcac3x23)[_0xf0f3[36]](handleEntityNotFound(_0xcac3x1d,null,_0xf0f3[86]))[_0xf0f3[36]](respondWithResult(_0xcac3x1d,null,_0xf0f3[86]))[_0xf0f3[27]](handleError(_0xcac3x1d,null,_0xf0f3[86]))};exports[_0xf0f3[90]]= function(_0xcac3x19,_0xcac3x1d){return db[_0xf0f3[66]][_0xf0f3[90]](_0xcac3x19[_0xf0f3[91]],{})[_0xf0f3[36]](respondWithResult(_0xcac3x1d,201,_0xf0f3[90]))[_0xf0f3[27]](handleError(_0xcac3x1d,null,_0xf0f3[90]))};exports[_0xf0f3[57]]= function(_0xcac3x19,_0xcac3x1d){if(_0xcac3x19[_0xf0f3[91]][_0xf0f3[87]]){delete _0xcac3x19[_0xf0f3[91]][_0xf0f3[87]]};return db[_0xf0f3[66]][_0xf0f3[89]]({where:{id:_0xcac3x19[_0xf0f3[88]][_0xf0f3[87]]}})[_0xf0f3[36]](handleEntityNotFound(_0xcac3x1d,null,_0xf0f3[57]))[_0xf0f3[36]](saveUpdates(_0xcac3x19[_0xf0f3[91]],null,_0xf0f3[57]))[_0xf0f3[36]](respondWithResult(_0xcac3x1d,null,_0xf0f3[57]))[_0xf0f3[27]](handleError(_0xcac3x1d,null,_0xf0f3[57]))};exports[_0xf0f3[59]]= function(_0xcac3x19,_0xcac3x1d){return db[_0xf0f3[66]][_0xf0f3[89]]({where:{id:_0xcac3x19[_0xf0f3[88]][_0xf0f3[87]]}})[_0xf0f3[36]](handleEntityNotFound(_0xcac3x1d,null,_0xf0f3[59]))[_0xf0f3[36]](removeEntity(_0xcac3x1d,null,_0xf0f3[59]))[_0xf0f3[27]](handleError(_0xcac3x1d,null,_0xf0f3[59]))};exports[_0xf0f3[92]]= function(_0xcac3x19,_0xcac3x20,_0xcac3x32){var _0xcac3x23={};var _0xcac3x2f={};var _0xcac3x33;var _0xcac3x24;return db[_0xf0f3[66]][_0xf0f3[94]]({where:{id:_0xcac3x19[_0xf0f3[88]][_0xf0f3[87]]}})[_0xf0f3[36]](handleEntityNotFound(_0xcac3x20,null,_0xf0f3[92]))[_0xf0f3[36]](function(_0xcac3x20){if(_0xcac3x20){_0xcac3x33= _0xcac3x20;_0xcac3x2f[_0xf0f3[64]]= _[_0xf0f3[67]](db[_0xf0f3[93]][_0xf0f3[65]]);_0xcac3x2f[_0xf0f3[68]]= _[_0xf0f3[67]](_0xcac3x19[_0xf0f3[68]]);_0xcac3x2f[_0xf0f3[69]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],_0xcac3x2f[_0xf0f3[68]]);_0xcac3x23[_0xf0f3[71]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],qs[_0xf0f3[72]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[72]]));_0xcac3x23[_0xf0f3[71]]= (_0xcac3x23[_0xf0f3[71]][_0xf0f3[73]])?_0xcac3x23[_0xf0f3[71]]:_0xcac3x2f[_0xf0f3[64]];_0xcac3x23[_0xf0f3[76]]= qs[_0xf0f3[77]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[77]]);_0xcac3x23[_0xf0f3[78]]= qs[_0xf0f3[69]](_[_0xf0f3[79]](_0xcac3x19[_0xf0f3[68]],_0xcac3x2f[_0xf0f3[69]]));if(_0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]){_0xcac3x23[_0xf0f3[78]]= _[_0xf0f3[83]](_0xcac3x23[_0xf0f3[78]],{$or:_[_0xf0f3[82]](_0xcac3x23[_0xf0f3[71]],function(_0xcac3x30){var _0xcac3x31={};_0xcac3x31[_0xcac3x30]= {$like:_0xf0f3[81]+ _0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]+ _0xf0f3[81]};return _0xcac3x31})})};_0xcac3x23= _[_0xf0f3[83]]({},_0xcac3x23,_0xcac3x19[_0xf0f3[84]]);return _0xcac3x33[_0xf0f3[92]](_0xcac3x23)}})[_0xf0f3[36]](function(_0xcac3x35){if(_0xcac3x35){_0xcac3x24= _0xcac3x35[_0xf0f3[73]];if(!_0xcac3x19[_0xf0f3[68]][_0xf0f3[75]](_0xf0f3[74])){_0xcac3x23[_0xf0f3[47]]= qs[_0xf0f3[47]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[47]]);_0xcac3x23[_0xf0f3[46]]= qs[_0xf0f3[46]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[46]])};return _0xcac3x33[_0xf0f3[92]](_0xcac3x23)}})[_0xf0f3[36]](function(_0xcac3x34){return _0xcac3x34?{count:_0xcac3x24,rows:_0xcac3x34}:null})[_0xf0f3[36]](respondWithResult(_0xcac3x20,null,_0xf0f3[92]))[_0xf0f3[27]](handleError(_0xcac3x20,null,_0xf0f3[92]))};exports[_0xf0f3[95]]= function(_0xcac3x19,_0xcac3x20,_0xcac3x32){var _0xcac3x23={};var _0xcac3x2f={};var _0xcac3x33;var _0xcac3x24;return db[_0xf0f3[66]][_0xf0f3[94]]({where:{id:_0xcac3x19[_0xf0f3[88]][_0xf0f3[87]]}})[_0xf0f3[36]](handleEntityNotFound(_0xcac3x20,null,_0xf0f3[95]))[_0xf0f3[36]](function(_0xcac3x20){if(_0xcac3x20){_0xcac3x33= _0xcac3x20;_0xcac3x2f[_0xf0f3[64]]= _[_0xf0f3[67]](db[_0xf0f3[93]][_0xf0f3[65]]);_0xcac3x2f[_0xf0f3[68]]= _[_0xf0f3[67]](_0xcac3x19[_0xf0f3[68]]);_0xcac3x2f[_0xf0f3[69]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],_0xcac3x2f[_0xf0f3[68]]);_0xcac3x23[_0xf0f3[71]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],qs[_0xf0f3[72]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[72]]));_0xcac3x23[_0xf0f3[71]]= (_0xcac3x23[_0xf0f3[71]][_0xf0f3[73]])?_0xcac3x23[_0xf0f3[71]]:_0xcac3x2f[_0xf0f3[64]];_0xcac3x23[_0xf0f3[76]]= qs[_0xf0f3[77]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[77]]);_0xcac3x23[_0xf0f3[78]]= qs[_0xf0f3[69]](_[_0xf0f3[79]](_0xcac3x19[_0xf0f3[68]],_0xcac3x2f[_0xf0f3[69]]));if(_0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]){_0xcac3x23[_0xf0f3[78]]= _[_0xf0f3[83]](_0xcac3x23[_0xf0f3[78]],{$or:_[_0xf0f3[82]](_0xcac3x23[_0xf0f3[71]],function(_0xcac3x30){var _0xcac3x31={};_0xcac3x31[_0xcac3x30]= {$like:_0xf0f3[81]+ _0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]+ _0xf0f3[81]};return _0xcac3x31})})};_0xcac3x23= _[_0xf0f3[83]]({},_0xcac3x23,_0xcac3x19[_0xf0f3[84]]);return _0xcac3x33[_0xf0f3[95]](_0xcac3x23)}})[_0xf0f3[36]](function(_0xcac3x35){if(_0xcac3x35){_0xcac3x24= _0xcac3x35[_0xf0f3[73]];if(!_0xcac3x19[_0xf0f3[68]][_0xf0f3[75]](_0xf0f3[74])){_0xcac3x23[_0xf0f3[47]]= qs[_0xf0f3[47]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[47]]);_0xcac3x23[_0xf0f3[46]]= qs[_0xf0f3[46]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[46]])};return _0xcac3x33[_0xf0f3[95]](_0xcac3x23)}})[_0xf0f3[36]](function(_0xcac3x34){return _0xcac3x34?{count:_0xcac3x24,rows:_0xcac3x34}:null})[_0xf0f3[36]](respondWithResult(_0xcac3x20,null,_0xf0f3[95]))[_0xf0f3[27]](handleError(_0xcac3x20,null,_0xf0f3[95]))};exports[_0xf0f3[96]]= function(_0xcac3x19,_0xcac3x20,_0xcac3x32){var _0xcac3x23={};var _0xcac3x2f={};var _0xcac3x33;var _0xcac3x24;return db[_0xf0f3[66]][_0xf0f3[94]]({where:{id:_0xcac3x19[_0xf0f3[88]][_0xf0f3[87]]}})[_0xf0f3[36]](handleEntityNotFound(_0xcac3x20,null,_0xf0f3[96]))[_0xf0f3[36]](function(_0xcac3x20){if(_0xcac3x20){_0xcac3x33= _0xcac3x20;_0xcac3x2f[_0xf0f3[64]]= _[_0xf0f3[67]](db[_0xf0f3[93]][_0xf0f3[65]]);_0xcac3x2f[_0xf0f3[68]]= _[_0xf0f3[67]](_0xcac3x19[_0xf0f3[68]]);_0xcac3x2f[_0xf0f3[69]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],_0xcac3x2f[_0xf0f3[68]]);_0xcac3x23[_0xf0f3[71]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],qs[_0xf0f3[72]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[72]]));_0xcac3x23[_0xf0f3[71]]= (_0xcac3x23[_0xf0f3[71]][_0xf0f3[73]])?_0xcac3x23[_0xf0f3[71]]:_0xcac3x2f[_0xf0f3[64]];_0xcac3x23[_0xf0f3[76]]= qs[_0xf0f3[77]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[77]]);_0xcac3x23[_0xf0f3[78]]= qs[_0xf0f3[69]](_[_0xf0f3[79]](_0xcac3x19[_0xf0f3[68]],_0xcac3x2f[_0xf0f3[69]]));if(_0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]){_0xcac3x23[_0xf0f3[78]]= _[_0xf0f3[83]](_0xcac3x23[_0xf0f3[78]],{$or:_[_0xf0f3[82]](_0xcac3x23[_0xf0f3[71]],function(_0xcac3x30){var _0xcac3x31={};_0xcac3x31[_0xcac3x30]= {$like:_0xf0f3[81]+ _0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]+ _0xf0f3[81]};return _0xcac3x31})})};_0xcac3x23= _[_0xf0f3[83]]({},_0xcac3x23,_0xcac3x19[_0xf0f3[84]]);return _0xcac3x33[_0xf0f3[96]](_0xcac3x23)}})[_0xf0f3[36]](function(_0xcac3x35){if(_0xcac3x35){_0xcac3x24= _0xcac3x35[_0xf0f3[73]];if(!_0xcac3x19[_0xf0f3[68]][_0xf0f3[75]](_0xf0f3[74])){_0xcac3x23[_0xf0f3[47]]= qs[_0xf0f3[47]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[47]]);_0xcac3x23[_0xf0f3[46]]= qs[_0xf0f3[46]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[46]])};return _0xcac3x33[_0xf0f3[96]](_0xcac3x23)}})[_0xf0f3[36]](function(_0xcac3x34){return _0xcac3x34?{count:_0xcac3x24,rows:_0xcac3x34}:null})[_0xf0f3[36]](respondWithResult(_0xcac3x20,null,_0xf0f3[96]))[_0xf0f3[27]](handleError(_0xcac3x20,null,_0xf0f3[96]))};exports[_0xf0f3[97]]= function(_0xcac3x19,_0xcac3x20,_0xcac3x32){var _0xcac3x23={};var _0xcac3x2f={};var _0xcac3x33;var _0xcac3x24;return db[_0xf0f3[66]][_0xf0f3[94]]({where:{id:_0xcac3x19[_0xf0f3[88]][_0xf0f3[87]]}})[_0xf0f3[36]](handleEntityNotFound(_0xcac3x20,null,_0xf0f3[97]))[_0xf0f3[36]](function(_0xcac3x20){if(_0xcac3x20){_0xcac3x33= _0xcac3x20;_0xcac3x2f[_0xf0f3[64]]= _[_0xf0f3[67]](db[_0xf0f3[98]][_0xf0f3[65]]);_0xcac3x2f[_0xf0f3[68]]= _[_0xf0f3[67]](_0xcac3x19[_0xf0f3[68]]);_0xcac3x2f[_0xf0f3[69]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],_0xcac3x2f[_0xf0f3[68]]);_0xcac3x23[_0xf0f3[71]]= _[_0xf0f3[70]](_0xcac3x2f[_0xf0f3[64]],qs[_0xf0f3[72]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[72]]));_0xcac3x23[_0xf0f3[71]]= (_0xcac3x23[_0xf0f3[71]][_0xf0f3[73]])?_0xcac3x23[_0xf0f3[71]]:_0xcac3x2f[_0xf0f3[64]];_0xcac3x23[_0xf0f3[76]]= qs[_0xf0f3[77]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[77]]);_0xcac3x23[_0xf0f3[78]]= qs[_0xf0f3[69]](_[_0xf0f3[79]](_0xcac3x19[_0xf0f3[68]],_0xcac3x2f[_0xf0f3[69]]));if(_0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]){_0xcac3x23[_0xf0f3[78]]= _[_0xf0f3[83]](_0xcac3x23[_0xf0f3[78]],{$or:_[_0xf0f3[82]](_0xcac3x23[_0xf0f3[71]],function(_0xcac3x30){var _0xcac3x31={};_0xcac3x31[_0xcac3x30]= {$like:_0xf0f3[81]+ _0xcac3x19[_0xf0f3[68]][_0xf0f3[80]]+ _0xf0f3[81]};return _0xcac3x31})})};_0xcac3x23= _[_0xf0f3[83]]({},_0xcac3x23,_0xcac3x19[_0xf0f3[84]]);return _0xcac3x33[_0xf0f3[97]](_0xcac3x23)}})[_0xf0f3[36]](function(_0xcac3x35){if(_0xcac3x35){_0xcac3x24= _0xcac3x35[_0xf0f3[73]];if(!_0xcac3x19[_0xf0f3[68]][_0xf0f3[75]](_0xf0f3[74])){_0xcac3x23[_0xf0f3[47]]= qs[_0xf0f3[47]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[47]]);_0xcac3x23[_0xf0f3[46]]= qs[_0xf0f3[46]](_0xcac3x19[_0xf0f3[68]][_0xf0f3[46]])};return _0xcac3x33[_0xf0f3[97]](_0xcac3x23)}})[_0xf0f3[36]](function(_0xcac3x34){return _0xcac3x34?{count:_0xcac3x24,rows:_0xcac3x34}:null})[_0xf0f3[36]](respondWithResult(_0xcac3x20,null,_0xf0f3[97]))[_0xf0f3[27]](handleError(_0xcac3x20,null,_0xf0f3[97]))};exports[_0xf0f3[99]]= function(_0xcac3x19,_0xcac3x1d,_0xcac3x32){if(_0xcac3x19[_0xf0f3[91]][_0xf0f3[87]]){delete _0xcac3x19[_0xf0f3[91]][_0xf0f3[87]]};return db[_0xf0f3[66]][_0xf0f3[94]]({where:{id:_0xcac3x19[_0xf0f3[88]][_0xf0f3[87]]}})[_0xf0f3[36]](handleEntityNotFound(_0xcac3x1d,null,_0xf0f3[99]))[_0xf0f3[36]](function(_0xcac3x20){if(_0xcac3x20){return _0xcac3x20[_0xf0f3[99]](_0xcac3x19[_0xf0f3[91]][_0xf0f3[100]])};return null})[_0xf0f3[36]](respondWithResult(_0xcac3x1d,null,_0xf0f3[99]))[_0xf0f3[27]](handleError(_0xcac3x1d,null,_0xf0f3[99]))}
\ No newline at end of file
index be03488..6c08065 100644 (file)
@@ -1 +1 @@
-var _0x6a0e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x5F\x7A\x65\x6E\x64\x65\x73\x6B\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x6a0e[0];var _=require(_0x6a0e[1]);var util=require(_0x6a0e[2]);var logger=require(_0x6a0e[4])(_0x6a0e[3]);var attributes=require(_0x6a0e[5]);module[_0x6a0e[6]]= function(_0x646ex5,_0x646ex6){return _0x646ex5[_0x6a0e[9]](_0x6a0e[7],attributes,{tableName:_0x6a0e[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x87b3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x5F\x7A\x65\x6E\x64\x65\x73\x6B\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x87b3[0];var _=require(_0x87b3[1]);var util=require(_0x87b3[2]);var logger=require(_0x87b3[4])(_0x87b3[3]);var attributes=require(_0x87b3[5]);module[_0x87b3[6]]= function(_0xcbe6x5,_0xcbe6x6){return _0xcbe6x5[_0x87b3[9]](_0x87b3[7],attributes,{tableName:_0x87b3[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 1e6de3b..ba46b1e 100644 (file)
@@ -1 +1 @@
-var _0x5520=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x5520[0];var _=require(_0x5520[1]);var util=require(_0x5520[2]);var moment=require(_0x5520[3]);var BPromise=require(_0x5520[4]);var db=require(_0x5520[6])[_0x5520[5]];var utils=require(_0x5520[7]);var logger=require(_0x5520[9])(_0x5520[8]);var jayson=require(_0x5520[10]);var client=jayson[_0x5520[12]][_0x5520[11]]({port:9002});function respondWithRpcPromise(_0x3637xb,_0x3637xc,_0x3637xd){return  new BPromise(function(_0x3637xe,_0x3637xf){return client[_0x5520[25]](_0x3637xb,_0x3637xd)[_0x5520[24]](function(_0x3637x11){logger[_0x5520[17]](_0x5520[13],_0x3637xc,_0x5520[16]);logger[_0x5520[20]](_0x5520[18],_0x3637xc,_0x5520[16],JSON[_0x5520[19]](_0x3637x11));if(_0x3637x11[_0x5520[14]]){if(_0x3637x11[_0x5520[14]][_0x5520[21]]=== 500){logger[_0x5520[14]](_0x5520[13],_0x3637xc,_0x3637x11[_0x5520[14]][_0x5520[22]]);return _0x3637xf(_0x3637x11[_0x5520[14]][_0x5520[22]])};logger[_0x5520[14]](_0x5520[13],_0x3637xc,_0x3637x11[_0x5520[14]][_0x5520[22]]);return _0x3637xe(_0x3637x11[_0x5520[14]][_0x5520[22]])}else {logger[_0x5520[17]](_0x5520[13],_0x3637xc,_0x5520[16]);_0x3637xe(_0x3637x11[_0x5520[23]][_0x5520[22]])}})[_0x5520[15]](function(_0x3637x10){logger[_0x5520[14]](_0x5520[13],_0x3637xc,_0x3637x10);_0x3637xf(_0x3637x10)})})}
\ No newline at end of file
+var _0xccb0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xccb0[0];var _=require(_0xccb0[1]);var util=require(_0xccb0[2]);var moment=require(_0xccb0[3]);var BPromise=require(_0xccb0[4]);var db=require(_0xccb0[6])[_0xccb0[5]];var utils=require(_0xccb0[7]);var logger=require(_0xccb0[9])(_0xccb0[8]);var jayson=require(_0xccb0[10]);var client=jayson[_0xccb0[12]][_0xccb0[11]]({port:9002});function respondWithRpcPromise(_0xd1dexb,_0xd1dexc,_0xd1dexd){return  new BPromise(function(_0xd1dexe,_0xd1dexf){return client[_0xccb0[25]](_0xd1dexb,_0xd1dexd)[_0xccb0[24]](function(_0xd1dex11){logger[_0xccb0[17]](_0xccb0[13],_0xd1dexc,_0xccb0[16]);logger[_0xccb0[20]](_0xccb0[18],_0xd1dexc,_0xccb0[16],JSON[_0xccb0[19]](_0xd1dex11));if(_0xd1dex11[_0xccb0[14]]){if(_0xd1dex11[_0xccb0[14]][_0xccb0[21]]=== 500){logger[_0xccb0[14]](_0xccb0[13],_0xd1dexc,_0xd1dex11[_0xccb0[14]][_0xccb0[22]]);return _0xd1dexf(_0xd1dex11[_0xccb0[14]][_0xccb0[22]])};logger[_0xccb0[14]](_0xccb0[13],_0xd1dexc,_0xd1dex11[_0xccb0[14]][_0xccb0[22]]);return _0xd1dexe(_0xd1dex11[_0xccb0[14]][_0xccb0[22]])}else {logger[_0xccb0[17]](_0xccb0[13],_0xd1dexc,_0xccb0[16]);_0xd1dexe(_0xd1dex11[_0xccb0[23]][_0xccb0[22]])}})[_0xccb0[15]](function(_0xd1dex10){logger[_0xccb0[14]](_0xccb0[13],_0xd1dexc,_0xd1dex10);_0xd1dexf(_0xd1dex10)})})}
\ No newline at end of file
index 5ca89bd..4c29adc 100644 (file)
@@ -1 +1 @@
-var _0xa0a3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa0a3[0];var multer=require(_0xa0a3[1]);var util=require(_0xa0a3[2]);var path=require(_0xa0a3[3]);var express=require(_0xa0a3[4]);var router=express.Router();var auth=require(_0xa0a3[5]);var config=require(_0xa0a3[6]);var controller=require(_0xa0a3[7]);router[_0xa0a3[11]](_0xa0a3[8],auth[_0xa0a3[9]](),controller[_0xa0a3[10]]);router[_0xa0a3[11]](_0xa0a3[12],auth[_0xa0a3[9]](),controller[_0xa0a3[13]]);router[_0xa0a3[15]](_0xa0a3[8],auth[_0xa0a3[9]](),controller[_0xa0a3[14]]);router[_0xa0a3[17]](_0xa0a3[12],auth[_0xa0a3[9]](),controller[_0xa0a3[16]]);router[_0xa0a3[19]](_0xa0a3[12],auth[_0xa0a3[9]](),controller[_0xa0a3[18]]);module[_0xa0a3[20]]= router
\ No newline at end of file
+var _0x5d38=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5d38[0];var multer=require(_0x5d38[1]);var util=require(_0x5d38[2]);var path=require(_0x5d38[3]);var express=require(_0x5d38[4]);var router=express.Router();var auth=require(_0x5d38[5]);var config=require(_0x5d38[6]);var controller=require(_0x5d38[7]);router[_0x5d38[11]](_0x5d38[8],auth[_0x5d38[9]](),controller[_0x5d38[10]]);router[_0x5d38[11]](_0x5d38[12],auth[_0x5d38[9]](),controller[_0x5d38[13]]);router[_0x5d38[15]](_0x5d38[8],auth[_0x5d38[9]](),controller[_0x5d38[14]]);router[_0x5d38[17]](_0x5d38[12],auth[_0x5d38[9]](),controller[_0x5d38[16]]);router[_0x5d38[19]](_0x5d38[12],auth[_0x5d38[9]](),controller[_0x5d38[18]]);module[_0x5d38[20]]= router
\ No newline at end of file
index 5c211ef..6ffd8f1 100644 (file)
@@ -1 +1 @@
-var _0xdf2a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x75\x73\x74\x6F\x6D\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xdf2a[0];var Sequelize=require(_0xdf2a[1]);module[_0xdf2a[2]]= {type:{type:Sequelize.ENUM(_0xdf2a[3],_0xdf2a[4],_0xdf2a[5],_0xdf2a[6]),defaultValue:_0xdf2a[3]},content:{type:Sequelize[_0xdf2a[7]]},key:{type:Sequelize[_0xdf2a[7]]},keyType:{type:Sequelize.ENUM(_0xdf2a[3],_0xdf2a[4],_0xdf2a[5])},keyContent:{type:Sequelize[_0xdf2a[7]]},idField:{type:Sequelize[_0xdf2a[7]]},nameField:{type:Sequelize[_0xdf2a[7]]},customField:{type:Sequelize[_0xdf2a[8]],defaultValue:true},variableName:{type:Sequelize[_0xdf2a[7]]}}
\ No newline at end of file
+var _0xc4d8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x75\x73\x74\x6F\x6D\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xc4d8[0];var Sequelize=require(_0xc4d8[1]);module[_0xc4d8[2]]= {type:{type:Sequelize.ENUM(_0xc4d8[3],_0xc4d8[4],_0xc4d8[5],_0xc4d8[6]),defaultValue:_0xc4d8[3]},content:{type:Sequelize[_0xc4d8[7]]},key:{type:Sequelize[_0xc4d8[7]]},keyType:{type:Sequelize.ENUM(_0xc4d8[3],_0xc4d8[4],_0xc4d8[5])},keyContent:{type:Sequelize[_0xc4d8[7]]},idField:{type:Sequelize[_0xc4d8[7]]},nameField:{type:Sequelize[_0xc4d8[7]]},customField:{type:Sequelize[_0xc4d8[8]],defaultValue:true},variableName:{type:Sequelize[_0xc4d8[7]]}}
\ No newline at end of file
index 2242186..cf1430d 100644 (file)
@@ -1 +1 @@
-var _0x1f7c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x1f7c[0];var jsonpatch=require(_0x1f7c[1]);var rp=require(_0x1f7c[2]);var moment=require(_0x1f7c[3]);var BPromise=require(_0x1f7c[4]);var util=require(_0x1f7c[5]);var path=require(_0x1f7c[6]);var sox=require(_0x1f7c[7]);var ejs=require(_0x1f7c[8]);var fs=require(_0x1f7c[9]);var _=require(_0x1f7c[10]);var squel=require(_0x1f7c[11]);var crypto=require(_0x1f7c[12]);var jsforce=require(_0x1f7c[13]);var toCsv=require(_0x1f7c[14]);var qs=require(_0x1f7c[15]);var logger=require(_0x1f7c[17])(_0x1f7c[16]);var utils=require(_0x1f7c[18]);var config=require(_0x1f7c[19]);var db=require(_0x1f7c[21])[_0x1f7c[20]];function respondWithStatusCode(_0xc6fdx15,_0xc6fdx16,_0xc6fdx17){_0xc6fdx16= _0xc6fdx16|| 204;return function(_0xc6fdx18){if(_0xc6fdx18){logger[_0x1f7c[24]](_0x1f7c[22],_0xc6fdx17,_0xc6fdx16,_0x1f7c[23]);logger[_0x1f7c[26]](_0x1f7c[25],_0xc6fdx17,_0xc6fdx16,_0x1f7c[23]);return _0xc6fdx15[_0x1f7c[27]](_0xc6fdx16)};return _0xc6fdx15[_0x1f7c[29]](304)[_0x1f7c[28]]()}}function respondWithResult(_0xc6fdx15,_0xc6fdx16,_0xc6fdx17){_0xc6fdx16= _0xc6fdx16|| 200;return function(_0xc6fdx18){if(_0xc6fdx18){logger[_0x1f7c[24]](_0x1f7c[22],_0xc6fdx17,_0xc6fdx16,_0x1f7c[30]);logger[_0x1f7c[26]](_0x1f7c[25],_0xc6fdx17,_0xc6fdx16,_0x1f7c[30],JSON[_0x1f7c[31]](_0xc6fdx18));return _0xc6fdx15[_0x1f7c[29]](_0xc6fdx16)[_0x1f7c[32]](_0xc6fdx18)};return _0xc6fdx15[_0x1f7c[29]](304)[_0x1f7c[28]]()}}function respondWithFilteredResult(_0xc6fdx15,_0xc6fdx1b,_0xc6fdx17){return function(_0xc6fdx18){if(_0xc6fdx18){var _0xc6fdx1c=_0xc6fdx18[_0x1f7c[33]],_0xc6fdx1d=_0xc6fdx1b[_0x1f7c[34]],_0xc6fdx1e=_0xc6fdx1b[_0x1f7c[34]]+ _0xc6fdx1b[_0x1f7c[35]],_0xc6fdx16;if(_0xc6fdx1e>= _0xc6fdx1c){_0xc6fdx1e= _0xc6fdx1c;_0xc6fdx16= 200}else {_0xc6fdx16= 206};_0xc6fdx15[_0x1f7c[29]](_0xc6fdx16);logger[_0x1f7c[24]](_0x1f7c[22],_0xc6fdx17,_0xc6fdx16,_0x1f7c[36]);logger[_0x1f7c[26]](_0x1f7c[25],_0xc6fdx17,_0xc6fdx16,_0x1f7c[30],JSON[_0x1f7c[31]](_0xc6fdx18));return _0xc6fdx15[_0x1f7c[40]](_0x1f7c[37],_0xc6fdx1d+ _0x1f7c[38]+ _0xc6fdx1e+ _0x1f7c[39]+ _0xc6fdx1c)[_0x1f7c[32]](_0xc6fdx18)};return null}}function patchUpdates(_0xc6fdx20){return function(_0xc6fdx18){try{jsonpatch[_0x1f7c[41]](_0xc6fdx18,_0xc6fdx20,true)}catch(err){return BPromise[_0x1f7c[42]](err)};return _0xc6fdx18[_0x1f7c[43]]()}}function saveUpdates(_0xc6fdx22,_0xc6fdx16,_0xc6fdx17){return function(_0xc6fdx18){if(_0xc6fdx18){return _0xc6fdx18[_0x1f7c[46]](_0xc6fdx22)[_0x1f7c[45]](function(_0xc6fdx23){logger[_0x1f7c[24]](_0x1f7c[22],_0xc6fdx17,_0xc6fdx16,_0x1f7c[44]);logger[_0x1f7c[26]](_0x1f7c[25],_0xc6fdx17,_0xc6fdx16,_0x1f7c[44],JSON[_0x1f7c[31]](_0xc6fdx18));return _0xc6fdx23})};return null}}function removeEntity(_0xc6fdx15,_0xc6fdx16,_0xc6fdx17){return function(_0xc6fdx18){if(_0xc6fdx18){return _0xc6fdx18[_0x1f7c[48]]()[_0x1f7c[45]](function(){logger[_0x1f7c[24]](_0x1f7c[22],_0xc6fdx17,_0xc6fdx16,_0x1f7c[47]);logger[_0x1f7c[26]](_0x1f7c[25],_0xc6fdx17,_0xc6fdx16,_0x1f7c[47],JSON[_0x1f7c[31]](_0xc6fdx18));_0xc6fdx15[_0x1f7c[29]](204)[_0x1f7c[28]]()})}}}function handleEntityNotFound(_0xc6fdx15,_0xc6fdx16,_0xc6fdx17){return function(_0xc6fdx18){if(!_0xc6fdx18){logger[_0x1f7c[50]](_0x1f7c[22],_0xc6fdx17,404,_0x1f7c[49]);_0xc6fdx15[_0x1f7c[29]](404)[_0x1f7c[28]]();return null};return _0xc6fdx18}}function handleError(_0xc6fdx15,_0xc6fdx16,_0xc6fdx17){_0xc6fdx16= _0xc6fdx16|| 500;return function(_0xc6fdx27){logger[_0x1f7c[50]](_0x1f7c[22],_0xc6fdx17,_0xc6fdx16,JSON[_0x1f7c[31]](_0xc6fdx27));delete _0xc6fdx27[_0x1f7c[51]];_0xc6fdx15[_0x1f7c[29]](_0xc6fdx16)[_0x1f7c[52]](_0xc6fdx27)}}exports[_0x1f7c[53]]= function(_0xc6fdx28,_0xc6fdx15){var _0xc6fdx1b={},_0xc6fdx29={};_0xc6fdx29[_0x1f7c[54]]= _[_0x1f7c[57]](db[_0x1f7c[56]][_0x1f7c[55]]);_0xc6fdx29[_0x1f7c[58]]= _[_0x1f7c[57]](_0xc6fdx28[_0x1f7c[58]]);_0xc6fdx29[_0x1f7c[59]]= _[_0x1f7c[60]](_0xc6fdx29[_0x1f7c[54]],_0xc6fdx29[_0x1f7c[58]]);_0xc6fdx1b[_0x1f7c[61]]= _[_0x1f7c[60]](_0xc6fdx29[_0x1f7c[54]],qs[_0x1f7c[62]](_0xc6fdx28[_0x1f7c[58]][_0x1f7c[62]]));_0xc6fdx1b[_0x1f7c[61]]= (_0xc6fdx1b[_0x1f7c[61]][_0x1f7c[63]])?_0xc6fdx1b[_0x1f7c[61]]:_0xc6fdx29[_0x1f7c[54]];if(!_0xc6fdx28[_0x1f7c[58]][_0x1f7c[65]](_0x1f7c[64])){_0xc6fdx1b[_0x1f7c[35]]= qs[_0x1f7c[35]](_0xc6fdx28[_0x1f7c[58]][_0x1f7c[35]]);_0xc6fdx1b[_0x1f7c[34]]= qs[_0x1f7c[34]](_0xc6fdx28[_0x1f7c[58]][_0x1f7c[34]])};_0xc6fdx1b[_0x1f7c[66]]= qs[_0x1f7c[67]](_0xc6fdx28[_0x1f7c[58]][_0x1f7c[67]]);_0xc6fdx1b[_0x1f7c[68]]= qs[_0x1f7c[59]](_[_0x1f7c[69]](_0xc6fdx28[_0x1f7c[58]],_0xc6fdx29[_0x1f7c[59]]));if(_0xc6fdx28[_0x1f7c[58]][_0x1f7c[70]]){_0xc6fdx1b[_0x1f7c[68]]= _[_0x1f7c[73]](_0xc6fdx1b[_0x1f7c[68]],{$or:_[_0x1f7c[72]](_0xc6fdx1b[_0x1f7c[61]],function(_0xc6fdx2a){var _0xc6fdx2b={};_0xc6fdx2b[_0xc6fdx2a]= {$like:_0x1f7c[71]+ _0xc6fdx28[_0x1f7c[58]][_0x1f7c[70]]+ _0x1f7c[71]};return _0xc6fdx2b})})};_0xc6fdx1b= _[_0x1f7c[73]]({},_0xc6fdx1b,_0xc6fdx28[_0x1f7c[74]]);return db[_0x1f7c[56]][_0x1f7c[76]](_0xc6fdx1b)[_0x1f7c[45]](respondWithFilteredResult(_0xc6fdx15,_0xc6fdx1b,_0x1f7c[53]))[_0x1f7c[75]](handleError(_0xc6fdx15,null,_0x1f7c[53]))};exports[_0x1f7c[77]]= function(_0xc6fdx28,_0xc6fdx15){var _0xc6fdx1b={raw:true,where:{id:_0xc6fdx28[_0x1f7c[79]][_0x1f7c[78]]}},_0xc6fdx29={};_0xc6fdx29[_0x1f7c[54]]= _[_0x1f7c[57]](db[_0x1f7c[56]][_0x1f7c[55]]);_0xc6fdx29[_0x1f7c[58]]= _[_0x1f7c[57]](_0xc6fdx28[_0x1f7c[58]]);_0xc6fdx29[_0x1f7c[59]]= _[_0x1f7c[60]](_0xc6fdx29[_0x1f7c[54]],_0xc6fdx29[_0x1f7c[58]]);_0xc6fdx1b[_0x1f7c[61]]= _[_0x1f7c[60]](_0xc6fdx29[_0x1f7c[54]],qs[_0x1f7c[62]](_0xc6fdx28[_0x1f7c[58]][_0x1f7c[62]]));_0xc6fdx1b[_0x1f7c[61]]= (_0xc6fdx1b[_0x1f7c[61]][_0x1f7c[63]])?_0xc6fdx1b[_0x1f7c[61]]:_0xc6fdx29[_0x1f7c[54]];_0xc6fdx1b= _[_0x1f7c[73]]({},_0xc6fdx1b,_0xc6fdx28[_0x1f7c[74]]);return db[_0x1f7c[56]][_0x1f7c[80]](_0xc6fdx1b)[_0x1f7c[45]](handleEntityNotFound(_0xc6fdx15,null,_0x1f7c[77]))[_0x1f7c[45]](respondWithResult(_0xc6fdx15,null,_0x1f7c[77]))[_0x1f7c[75]](handleError(_0xc6fdx15,null,_0x1f7c[77]))};exports[_0x1f7c[81]]= function(_0xc6fdx28,_0xc6fdx15){return db[_0x1f7c[56]][_0x1f7c[81]](_0xc6fdx28[_0x1f7c[82]],{})[_0x1f7c[45]](respondWithResult(_0xc6fdx15,201,_0x1f7c[81]))[_0x1f7c[75]](handleError(_0xc6fdx15,null,_0x1f7c[81]))};exports[_0x1f7c[46]]= function(_0xc6fdx28,_0xc6fdx15){if(_0xc6fdx28[_0x1f7c[82]][_0x1f7c[78]]){delete _0xc6fdx28[_0x1f7c[82]][_0x1f7c[78]]};return db[_0x1f7c[56]][_0x1f7c[80]]({where:{id:_0xc6fdx28[_0x1f7c[79]][_0x1f7c[78]]}})[_0x1f7c[45]](handleEntityNotFound(_0xc6fdx15,null,_0x1f7c[46]))[_0x1f7c[45]](saveUpdates(_0xc6fdx28[_0x1f7c[82]],null,_0x1f7c[46]))[_0x1f7c[45]](respondWithResult(_0xc6fdx15,null,_0x1f7c[46]))[_0x1f7c[75]](handleError(_0xc6fdx15,null,_0x1f7c[46]))};exports[_0x1f7c[48]]= function(_0xc6fdx28,_0xc6fdx15){return db[_0x1f7c[56]][_0x1f7c[80]]({where:{id:_0xc6fdx28[_0x1f7c[79]][_0x1f7c[78]]}})[_0x1f7c[45]](handleEntityNotFound(_0xc6fdx15,null,_0x1f7c[48]))[_0x1f7c[45]](removeEntity(_0xc6fdx15,null,_0x1f7c[48]))[_0x1f7c[75]](handleError(_0xc6fdx15,null,_0x1f7c[48]))}
\ No newline at end of file
+var _0x8f47=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x8f47[0];var jsonpatch=require(_0x8f47[1]);var rp=require(_0x8f47[2]);var moment=require(_0x8f47[3]);var BPromise=require(_0x8f47[4]);var util=require(_0x8f47[5]);var path=require(_0x8f47[6]);var sox=require(_0x8f47[7]);var ejs=require(_0x8f47[8]);var fs=require(_0x8f47[9]);var _=require(_0x8f47[10]);var squel=require(_0x8f47[11]);var crypto=require(_0x8f47[12]);var jsforce=require(_0x8f47[13]);var toCsv=require(_0x8f47[14]);var qs=require(_0x8f47[15]);var logger=require(_0x8f47[17])(_0x8f47[16]);var utils=require(_0x8f47[18]);var config=require(_0x8f47[19]);var db=require(_0x8f47[21])[_0x8f47[20]];function respondWithStatusCode(_0xf4a9x15,_0xf4a9x16,_0xf4a9x17){_0xf4a9x16= _0xf4a9x16|| 204;return function(_0xf4a9x18){if(_0xf4a9x18){logger[_0x8f47[24]](_0x8f47[22],_0xf4a9x17,_0xf4a9x16,_0x8f47[23]);logger[_0x8f47[26]](_0x8f47[25],_0xf4a9x17,_0xf4a9x16,_0x8f47[23]);return _0xf4a9x15[_0x8f47[27]](_0xf4a9x16)};return _0xf4a9x15[_0x8f47[29]](304)[_0x8f47[28]]()}}function respondWithResult(_0xf4a9x15,_0xf4a9x16,_0xf4a9x17){_0xf4a9x16= _0xf4a9x16|| 200;return function(_0xf4a9x18){if(_0xf4a9x18){logger[_0x8f47[24]](_0x8f47[22],_0xf4a9x17,_0xf4a9x16,_0x8f47[30]);logger[_0x8f47[26]](_0x8f47[25],_0xf4a9x17,_0xf4a9x16,_0x8f47[30],JSON[_0x8f47[31]](_0xf4a9x18));return _0xf4a9x15[_0x8f47[29]](_0xf4a9x16)[_0x8f47[32]](_0xf4a9x18)};return _0xf4a9x15[_0x8f47[29]](304)[_0x8f47[28]]()}}function respondWithFilteredResult(_0xf4a9x15,_0xf4a9x1b,_0xf4a9x17){return function(_0xf4a9x18){if(_0xf4a9x18){var _0xf4a9x1c=_0xf4a9x18[_0x8f47[33]],_0xf4a9x1d=_0xf4a9x1b[_0x8f47[34]],_0xf4a9x1e=_0xf4a9x1b[_0x8f47[34]]+ _0xf4a9x1b[_0x8f47[35]],_0xf4a9x16;if(_0xf4a9x1e>= _0xf4a9x1c){_0xf4a9x1e= _0xf4a9x1c;_0xf4a9x16= 200}else {_0xf4a9x16= 206};_0xf4a9x15[_0x8f47[29]](_0xf4a9x16);logger[_0x8f47[24]](_0x8f47[22],_0xf4a9x17,_0xf4a9x16,_0x8f47[36]);logger[_0x8f47[26]](_0x8f47[25],_0xf4a9x17,_0xf4a9x16,_0x8f47[30],JSON[_0x8f47[31]](_0xf4a9x18));return _0xf4a9x15[_0x8f47[40]](_0x8f47[37],_0xf4a9x1d+ _0x8f47[38]+ _0xf4a9x1e+ _0x8f47[39]+ _0xf4a9x1c)[_0x8f47[32]](_0xf4a9x18)};return null}}function patchUpdates(_0xf4a9x20){return function(_0xf4a9x18){try{jsonpatch[_0x8f47[41]](_0xf4a9x18,_0xf4a9x20,true)}catch(err){return BPromise[_0x8f47[42]](err)};return _0xf4a9x18[_0x8f47[43]]()}}function saveUpdates(_0xf4a9x22,_0xf4a9x16,_0xf4a9x17){return function(_0xf4a9x18){if(_0xf4a9x18){return _0xf4a9x18[_0x8f47[46]](_0xf4a9x22)[_0x8f47[45]](function(_0xf4a9x23){logger[_0x8f47[24]](_0x8f47[22],_0xf4a9x17,_0xf4a9x16,_0x8f47[44]);logger[_0x8f47[26]](_0x8f47[25],_0xf4a9x17,_0xf4a9x16,_0x8f47[44],JSON[_0x8f47[31]](_0xf4a9x18));return _0xf4a9x23})};return null}}function removeEntity(_0xf4a9x15,_0xf4a9x16,_0xf4a9x17){return function(_0xf4a9x18){if(_0xf4a9x18){return _0xf4a9x18[_0x8f47[48]]()[_0x8f47[45]](function(){logger[_0x8f47[24]](_0x8f47[22],_0xf4a9x17,_0xf4a9x16,_0x8f47[47]);logger[_0x8f47[26]](_0x8f47[25],_0xf4a9x17,_0xf4a9x16,_0x8f47[47],JSON[_0x8f47[31]](_0xf4a9x18));_0xf4a9x15[_0x8f47[29]](204)[_0x8f47[28]]()})}}}function handleEntityNotFound(_0xf4a9x15,_0xf4a9x16,_0xf4a9x17){return function(_0xf4a9x18){if(!_0xf4a9x18){logger[_0x8f47[50]](_0x8f47[22],_0xf4a9x17,404,_0x8f47[49]);_0xf4a9x15[_0x8f47[29]](404)[_0x8f47[28]]();return null};return _0xf4a9x18}}function handleError(_0xf4a9x15,_0xf4a9x16,_0xf4a9x17){_0xf4a9x16= _0xf4a9x16|| 500;return function(_0xf4a9x27){logger[_0x8f47[50]](_0x8f47[22],_0xf4a9x17,_0xf4a9x16,JSON[_0x8f47[31]](_0xf4a9x27));delete _0xf4a9x27[_0x8f47[51]];_0xf4a9x15[_0x8f47[29]](_0xf4a9x16)[_0x8f47[52]](_0xf4a9x27)}}exports[_0x8f47[53]]= function(_0xf4a9x28,_0xf4a9x15){var _0xf4a9x1b={},_0xf4a9x29={};_0xf4a9x29[_0x8f47[54]]= _[_0x8f47[57]](db[_0x8f47[56]][_0x8f47[55]]);_0xf4a9x29[_0x8f47[58]]= _[_0x8f47[57]](_0xf4a9x28[_0x8f47[58]]);_0xf4a9x29[_0x8f47[59]]= _[_0x8f47[60]](_0xf4a9x29[_0x8f47[54]],_0xf4a9x29[_0x8f47[58]]);_0xf4a9x1b[_0x8f47[61]]= _[_0x8f47[60]](_0xf4a9x29[_0x8f47[54]],qs[_0x8f47[62]](_0xf4a9x28[_0x8f47[58]][_0x8f47[62]]));_0xf4a9x1b[_0x8f47[61]]= (_0xf4a9x1b[_0x8f47[61]][_0x8f47[63]])?_0xf4a9x1b[_0x8f47[61]]:_0xf4a9x29[_0x8f47[54]];if(!_0xf4a9x28[_0x8f47[58]][_0x8f47[65]](_0x8f47[64])){_0xf4a9x1b[_0x8f47[35]]= qs[_0x8f47[35]](_0xf4a9x28[_0x8f47[58]][_0x8f47[35]]);_0xf4a9x1b[_0x8f47[34]]= qs[_0x8f47[34]](_0xf4a9x28[_0x8f47[58]][_0x8f47[34]])};_0xf4a9x1b[_0x8f47[66]]= qs[_0x8f47[67]](_0xf4a9x28[_0x8f47[58]][_0x8f47[67]]);_0xf4a9x1b[_0x8f47[68]]= qs[_0x8f47[59]](_[_0x8f47[69]](_0xf4a9x28[_0x8f47[58]],_0xf4a9x29[_0x8f47[59]]));if(_0xf4a9x28[_0x8f47[58]][_0x8f47[70]]){_0xf4a9x1b[_0x8f47[68]]= _[_0x8f47[73]](_0xf4a9x1b[_0x8f47[68]],{$or:_[_0x8f47[72]](_0xf4a9x1b[_0x8f47[61]],function(_0xf4a9x2a){var _0xf4a9x2b={};_0xf4a9x2b[_0xf4a9x2a]= {$like:_0x8f47[71]+ _0xf4a9x28[_0x8f47[58]][_0x8f47[70]]+ _0x8f47[71]};return _0xf4a9x2b})})};_0xf4a9x1b= _[_0x8f47[73]]({},_0xf4a9x1b,_0xf4a9x28[_0x8f47[74]]);return db[_0x8f47[56]][_0x8f47[76]](_0xf4a9x1b)[_0x8f47[45]](respondWithFilteredResult(_0xf4a9x15,_0xf4a9x1b,_0x8f47[53]))[_0x8f47[75]](handleError(_0xf4a9x15,null,_0x8f47[53]))};exports[_0x8f47[77]]= function(_0xf4a9x28,_0xf4a9x15){var _0xf4a9x1b={raw:true,where:{id:_0xf4a9x28[_0x8f47[79]][_0x8f47[78]]}},_0xf4a9x29={};_0xf4a9x29[_0x8f47[54]]= _[_0x8f47[57]](db[_0x8f47[56]][_0x8f47[55]]);_0xf4a9x29[_0x8f47[58]]= _[_0x8f47[57]](_0xf4a9x28[_0x8f47[58]]);_0xf4a9x29[_0x8f47[59]]= _[_0x8f47[60]](_0xf4a9x29[_0x8f47[54]],_0xf4a9x29[_0x8f47[58]]);_0xf4a9x1b[_0x8f47[61]]= _[_0x8f47[60]](_0xf4a9x29[_0x8f47[54]],qs[_0x8f47[62]](_0xf4a9x28[_0x8f47[58]][_0x8f47[62]]));_0xf4a9x1b[_0x8f47[61]]= (_0xf4a9x1b[_0x8f47[61]][_0x8f47[63]])?_0xf4a9x1b[_0x8f47[61]]:_0xf4a9x29[_0x8f47[54]];_0xf4a9x1b= _[_0x8f47[73]]({},_0xf4a9x1b,_0xf4a9x28[_0x8f47[74]]);return db[_0x8f47[56]][_0x8f47[80]](_0xf4a9x1b)[_0x8f47[45]](handleEntityNotFound(_0xf4a9x15,null,_0x8f47[77]))[_0x8f47[45]](respondWithResult(_0xf4a9x15,null,_0x8f47[77]))[_0x8f47[75]](handleError(_0xf4a9x15,null,_0x8f47[77]))};exports[_0x8f47[81]]= function(_0xf4a9x28,_0xf4a9x15){return db[_0x8f47[56]][_0x8f47[81]](_0xf4a9x28[_0x8f47[82]],{})[_0x8f47[45]](respondWithResult(_0xf4a9x15,201,_0x8f47[81]))[_0x8f47[75]](handleError(_0xf4a9x15,null,_0x8f47[81]))};exports[_0x8f47[46]]= function(_0xf4a9x28,_0xf4a9x15){if(_0xf4a9x28[_0x8f47[82]][_0x8f47[78]]){delete _0xf4a9x28[_0x8f47[82]][_0x8f47[78]]};return db[_0x8f47[56]][_0x8f47[80]]({where:{id:_0xf4a9x28[_0x8f47[79]][_0x8f47[78]]}})[_0x8f47[45]](handleEntityNotFound(_0xf4a9x15,null,_0x8f47[46]))[_0x8f47[45]](saveUpdates(_0xf4a9x28[_0x8f47[82]],null,_0x8f47[46]))[_0x8f47[45]](respondWithResult(_0xf4a9x15,null,_0x8f47[46]))[_0x8f47[75]](handleError(_0xf4a9x15,null,_0x8f47[46]))};exports[_0x8f47[48]]= function(_0xf4a9x28,_0xf4a9x15){return db[_0x8f47[56]][_0x8f47[80]]({where:{id:_0xf4a9x28[_0x8f47[79]][_0x8f47[78]]}})[_0x8f47[45]](handleEntityNotFound(_0xf4a9x15,null,_0x8f47[48]))[_0x8f47[45]](removeEntity(_0xf4a9x15,null,_0x8f47[48]))[_0x8f47[75]](handleError(_0xf4a9x15,null,_0x8f47[48]))}
\ No newline at end of file
index 8720ad1..cc3a2ce 100644 (file)
@@ -1 +1 @@
-var _0xc151=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x69\x6E\x74\x5F\x7A\x65\x6E\x64\x65\x73\x6B\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0xc151[0];var _=require(_0xc151[1]);var util=require(_0xc151[2]);var logger=require(_0xc151[4])(_0xc151[3]);var attributes=require(_0xc151[5]);module[_0xc151[6]]= function(_0xd797x5,_0xd797x6){return _0xd797x5[_0xc151[9]](_0xc151[7],attributes,{tableName:_0xc151[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xb5b5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x69\x6E\x74\x5F\x7A\x65\x6E\x64\x65\x73\x6B\x5F\x66\x69\x65\x6C\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0xb5b5[0];var _=require(_0xb5b5[1]);var util=require(_0xb5b5[2]);var logger=require(_0xb5b5[4])(_0xb5b5[3]);var attributes=require(_0xb5b5[5]);module[_0xb5b5[6]]= function(_0x99c1x5,_0x99c1x6){return _0x99c1x5[_0xb5b5[9]](_0xb5b5[7],attributes,{tableName:_0xb5b5[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 2ca4fa8..fcce1b9 100644 (file)
@@ -1 +1 @@
-var _0x5915=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x5915[0];var _=require(_0x5915[1]);var util=require(_0x5915[2]);var moment=require(_0x5915[3]);var BPromise=require(_0x5915[4]);var db=require(_0x5915[6])[_0x5915[5]];var utils=require(_0x5915[7]);var logger=require(_0x5915[9])(_0x5915[8]);var jayson=require(_0x5915[10]);var client=jayson[_0x5915[12]][_0x5915[11]]({port:9002});function respondWithRpcPromise(_0xa555xb,_0xa555xc,_0xa555xd){return  new BPromise(function(_0xa555xe,_0xa555xf){return client[_0x5915[25]](_0xa555xb,_0xa555xd)[_0x5915[24]](function(_0xa555x11){logger[_0x5915[17]](_0x5915[13],_0xa555xc,_0x5915[16]);logger[_0x5915[20]](_0x5915[18],_0xa555xc,_0x5915[16],JSON[_0x5915[19]](_0xa555x11));if(_0xa555x11[_0x5915[14]]){if(_0xa555x11[_0x5915[14]][_0x5915[21]]=== 500){logger[_0x5915[14]](_0x5915[13],_0xa555xc,_0xa555x11[_0x5915[14]][_0x5915[22]]);return _0xa555xf(_0xa555x11[_0x5915[14]][_0x5915[22]])};logger[_0x5915[14]](_0x5915[13],_0xa555xc,_0xa555x11[_0x5915[14]][_0x5915[22]]);return _0xa555xe(_0xa555x11[_0x5915[14]][_0x5915[22]])}else {logger[_0x5915[17]](_0x5915[13],_0xa555xc,_0x5915[16]);_0xa555xe(_0xa555x11[_0x5915[23]][_0x5915[22]])}})[_0x5915[15]](function(_0xa555x10){logger[_0x5915[14]](_0x5915[13],_0xa555xc,_0xa555x10);_0xa555xf(_0xa555x10)})})}
\ No newline at end of file
+var _0x6538=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x6538[0];var _=require(_0x6538[1]);var util=require(_0x6538[2]);var moment=require(_0x6538[3]);var BPromise=require(_0x6538[4]);var db=require(_0x6538[6])[_0x6538[5]];var utils=require(_0x6538[7]);var logger=require(_0x6538[9])(_0x6538[8]);var jayson=require(_0x6538[10]);var client=jayson[_0x6538[12]][_0x6538[11]]({port:9002});function respondWithRpcPromise(_0x4d0exb,_0x4d0exc,_0x4d0exd){return  new BPromise(function(_0x4d0exe,_0x4d0exf){return client[_0x6538[25]](_0x4d0exb,_0x4d0exd)[_0x6538[24]](function(_0x4d0ex11){logger[_0x6538[17]](_0x6538[13],_0x4d0exc,_0x6538[16]);logger[_0x6538[20]](_0x6538[18],_0x4d0exc,_0x6538[16],JSON[_0x6538[19]](_0x4d0ex11));if(_0x4d0ex11[_0x6538[14]]){if(_0x4d0ex11[_0x6538[14]][_0x6538[21]]=== 500){logger[_0x6538[14]](_0x6538[13],_0x4d0exc,_0x4d0ex11[_0x6538[14]][_0x6538[22]]);return _0x4d0exf(_0x4d0ex11[_0x6538[14]][_0x6538[22]])};logger[_0x6538[14]](_0x6538[13],_0x4d0exc,_0x4d0ex11[_0x6538[14]][_0x6538[22]]);return _0x4d0exe(_0x4d0ex11[_0x6538[14]][_0x6538[22]])}else {logger[_0x6538[17]](_0x6538[13],_0x4d0exc,_0x6538[16]);_0x4d0exe(_0x4d0ex11[_0x6538[23]][_0x6538[22]])}})[_0x6538[15]](function(_0x4d0ex10){logger[_0x6538[14]](_0x6538[13],_0x4d0exc,_0x4d0ex10);_0x4d0exf(_0x4d0ex10)})})}
\ No newline at end of file
index d973d5e..a9e83f5 100644 (file)
@@ -1 +1 @@
-var _0x293b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x293b[0];var multer=require(_0x293b[1]);var util=require(_0x293b[2]);var path=require(_0x293b[3]);var express=require(_0x293b[4]);var router=express.Router();var auth=require(_0x293b[5]);var config=require(_0x293b[6]);module[_0x293b[7]]= router
\ No newline at end of file
+var _0xfb7b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xfb7b[0];var multer=require(_0xfb7b[1]);var util=require(_0xfb7b[2]);var path=require(_0xfb7b[3]);var express=require(_0xfb7b[4]);var router=express.Router();var auth=require(_0xfb7b[5]);var config=require(_0xfb7b[6]);module[_0xfb7b[7]]= router
\ No newline at end of file
index 3ef6174..d3bdd6f 100644 (file)
@@ -1 +1 @@
-var _0xbd92=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x6E\x69\x71\x75\x65\x5F\x6E\x61\x6D\x65\x5F\x61\x6E\x64\x5F\x76\x65\x72\x73\x69\x6F\x6E","\x61\x70\x70\x2E\x6A\x73","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x73\x74\x61\x74\x65","\x23"];_0xbd92[0];var Sequelize=require(_0xbd92[1]);module[_0xbd92[2]]= {name:{type:Sequelize[_0xbd92[3]],allowNull:false,unique:_0xbd92[4]},version:{type:Sequelize[_0xbd92[3]],allowNull:false,unique:_0xbd92[4]},main:{type:Sequelize[_0xbd92[3]],defaultValue:_0xbd92[5]},filename:{type:Sequelize[_0xbd92[3]]},path:{type:Sequelize[_0xbd92[3]]},type:{type:Sequelize[_0xbd92[3]]},size:{type:Sequelize[_0xbd92[6]]},active:{type:Sequelize[_0xbd92[7]],defaultValue:false},author:{type:Sequelize[_0xbd92[3]]},logo:{type:Sequelize[_0xbd92[3]]},state:{type:Sequelize[_0xbd92[3]],unique:_0xbd92[8]},description:{type:Sequelize[_0xbd92[3]]},title:{type:Sequelize[_0xbd92[3]]},remoteUri:{type:Sequelize[_0xbd92[3]]},link:{type:Sequelize[_0xbd92[3]],defaultValue:_0xbd92[9]}}
\ No newline at end of file
+var _0x857e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x6E\x69\x71\x75\x65\x5F\x6E\x61\x6D\x65\x5F\x61\x6E\x64\x5F\x76\x65\x72\x73\x69\x6F\x6E","\x61\x70\x70\x2E\x6A\x73","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x73\x74\x61\x74\x65","\x23"];_0x857e[0];var Sequelize=require(_0x857e[1]);module[_0x857e[2]]= {name:{type:Sequelize[_0x857e[3]],allowNull:false,unique:_0x857e[4]},version:{type:Sequelize[_0x857e[3]],allowNull:false,unique:_0x857e[4]},main:{type:Sequelize[_0x857e[3]],defaultValue:_0x857e[5]},filename:{type:Sequelize[_0x857e[3]]},path:{type:Sequelize[_0x857e[3]]},type:{type:Sequelize[_0x857e[3]]},size:{type:Sequelize[_0x857e[6]]},active:{type:Sequelize[_0x857e[7]],defaultValue:false},author:{type:Sequelize[_0x857e[3]]},logo:{type:Sequelize[_0x857e[3]]},state:{type:Sequelize[_0x857e[3]],unique:_0x857e[8]},description:{type:Sequelize[_0x857e[3]]},title:{type:Sequelize[_0x857e[3]]},remoteUri:{type:Sequelize[_0x857e[3]]},link:{type:Sequelize[_0x857e[3]],defaultValue:_0x857e[9]}}
\ No newline at end of file
index cbc7145..0192b34 100644 (file)
@@ -1 +1 @@
-var _0xeedd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xeedd[0];var jsonpatch=require(_0xeedd[1]);var rp=require(_0xeedd[2]);var moment=require(_0xeedd[3]);var BPromise=require(_0xeedd[4]);var util=require(_0xeedd[5]);var path=require(_0xeedd[6]);var sox=require(_0xeedd[7]);var ejs=require(_0xeedd[8]);var fs=require(_0xeedd[9]);var _=require(_0xeedd[10]);var squel=require(_0xeedd[11]);var crypto=require(_0xeedd[12]);var jsforce=require(_0xeedd[13]);var toCsv=require(_0xeedd[14]);var qs=require(_0xeedd[15]);var logger=require(_0xeedd[17])(_0xeedd[16]);var utils=require(_0xeedd[18]);var config=require(_0xeedd[19]);var db=require(_0xeedd[21])[_0xeedd[20]];function respondWithStatusCode(_0xb2f2x15,_0xb2f2x16,_0xb2f2x17){_0xb2f2x16= _0xb2f2x16|| 204;return function(_0xb2f2x18){if(_0xb2f2x18){logger[_0xeedd[24]](_0xeedd[22],_0xb2f2x17,_0xb2f2x16,_0xeedd[23]);logger[_0xeedd[26]](_0xeedd[25],_0xb2f2x17,_0xb2f2x16,_0xeedd[23]);return _0xb2f2x15[_0xeedd[27]](_0xb2f2x16)};return _0xb2f2x15[_0xeedd[29]](304)[_0xeedd[28]]()}}function respondWithResult(_0xb2f2x15,_0xb2f2x16,_0xb2f2x17){_0xb2f2x16= _0xb2f2x16|| 200;return function(_0xb2f2x18){if(_0xb2f2x18){logger[_0xeedd[24]](_0xeedd[22],_0xb2f2x17,_0xb2f2x16,_0xeedd[30]);logger[_0xeedd[26]](_0xeedd[25],_0xb2f2x17,_0xb2f2x16,_0xeedd[30],JSON[_0xeedd[31]](_0xb2f2x18));return _0xb2f2x15[_0xeedd[29]](_0xb2f2x16)[_0xeedd[32]](_0xb2f2x18)};return _0xb2f2x15[_0xeedd[29]](304)[_0xeedd[28]]()}}function respondWithFilteredResult(_0xb2f2x15,_0xb2f2x1b,_0xb2f2x17){return function(_0xb2f2x18){if(_0xb2f2x18){var _0xb2f2x1c=_0xb2f2x18[_0xeedd[33]],_0xb2f2x1d=_0xb2f2x1b[_0xeedd[34]],_0xb2f2x1e=_0xb2f2x1b[_0xeedd[34]]+ _0xb2f2x1b[_0xeedd[35]],_0xb2f2x16;if(_0xb2f2x1e>= _0xb2f2x1c){_0xb2f2x1e= _0xb2f2x1c;_0xb2f2x16= 200}else {_0xb2f2x16= 206};_0xb2f2x15[_0xeedd[29]](_0xb2f2x16);logger[_0xeedd[24]](_0xeedd[22],_0xb2f2x17,_0xb2f2x16,_0xeedd[36]);logger[_0xeedd[26]](_0xeedd[25],_0xb2f2x17,_0xb2f2x16,_0xeedd[30],JSON[_0xeedd[31]](_0xb2f2x18));return _0xb2f2x15[_0xeedd[40]](_0xeedd[37],_0xb2f2x1d+ _0xeedd[38]+ _0xb2f2x1e+ _0xeedd[39]+ _0xb2f2x1c)[_0xeedd[32]](_0xb2f2x18)};return null}}function patchUpdates(_0xb2f2x20){return function(_0xb2f2x18){try{jsonpatch[_0xeedd[41]](_0xb2f2x18,_0xb2f2x20,true)}catch(err){return BPromise[_0xeedd[42]](err)};return _0xb2f2x18[_0xeedd[43]]()}}function saveUpdates(_0xb2f2x22,_0xb2f2x16,_0xb2f2x17){return function(_0xb2f2x18){if(_0xb2f2x18){return _0xb2f2x18[_0xeedd[46]](_0xb2f2x22)[_0xeedd[45]](function(_0xb2f2x23){logger[_0xeedd[24]](_0xeedd[22],_0xb2f2x17,_0xb2f2x16,_0xeedd[44]);logger[_0xeedd[26]](_0xeedd[25],_0xb2f2x17,_0xb2f2x16,_0xeedd[44],JSON[_0xeedd[31]](_0xb2f2x18));return _0xb2f2x23})};return null}}function removeEntity(_0xb2f2x15,_0xb2f2x16,_0xb2f2x17){return function(_0xb2f2x18){if(_0xb2f2x18){return _0xb2f2x18[_0xeedd[48]]()[_0xeedd[45]](function(){logger[_0xeedd[24]](_0xeedd[22],_0xb2f2x17,_0xb2f2x16,_0xeedd[47]);logger[_0xeedd[26]](_0xeedd[25],_0xb2f2x17,_0xb2f2x16,_0xeedd[47],JSON[_0xeedd[31]](_0xb2f2x18));_0xb2f2x15[_0xeedd[29]](204)[_0xeedd[28]]()})}}}function handleEntityNotFound(_0xb2f2x15,_0xb2f2x16,_0xb2f2x17){return function(_0xb2f2x18){if(!_0xb2f2x18){logger[_0xeedd[50]](_0xeedd[22],_0xb2f2x17,404,_0xeedd[49]);_0xb2f2x15[_0xeedd[29]](404)[_0xeedd[28]]();return null};return _0xb2f2x18}}function handleError(_0xb2f2x15,_0xb2f2x16,_0xb2f2x17){_0xb2f2x16= _0xb2f2x16|| 500;return function(_0xb2f2x27){logger[_0xeedd[50]](_0xeedd[22],_0xb2f2x17,_0xb2f2x16,JSON[_0xeedd[31]](_0xb2f2x27));delete _0xb2f2x27[_0xeedd[51]];_0xb2f2x15[_0xeedd[29]](_0xb2f2x16)[_0xeedd[52]](_0xb2f2x27)}}exports[_0xeedd[53]]= function(_0xb2f2x28,_0xb2f2x15){var _0xb2f2x1b={},_0xb2f2x29={};_0xb2f2x29[_0xeedd[54]]= _[_0xeedd[57]](db[_0xeedd[56]][_0xeedd[55]]);_0xb2f2x29[_0xeedd[58]]= _[_0xeedd[57]](_0xb2f2x28[_0xeedd[58]]);_0xb2f2x29[_0xeedd[59]]= _[_0xeedd[60]](_0xb2f2x29[_0xeedd[54]],_0xb2f2x29[_0xeedd[58]]);_0xb2f2x1b[_0xeedd[61]]= _[_0xeedd[60]](_0xb2f2x29[_0xeedd[54]],qs[_0xeedd[62]](_0xb2f2x28[_0xeedd[58]][_0xeedd[62]]));_0xb2f2x1b[_0xeedd[61]]= (_0xb2f2x1b[_0xeedd[61]][_0xeedd[63]])?_0xb2f2x1b[_0xeedd[61]]:_0xb2f2x29[_0xeedd[54]];if(!_0xb2f2x28[_0xeedd[58]][_0xeedd[65]](_0xeedd[64])){_0xb2f2x1b[_0xeedd[35]]= qs[_0xeedd[35]](_0xb2f2x28[_0xeedd[58]][_0xeedd[35]]);_0xb2f2x1b[_0xeedd[34]]= qs[_0xeedd[34]](_0xb2f2x28[_0xeedd[58]][_0xeedd[34]])};_0xb2f2x1b[_0xeedd[66]]= qs[_0xeedd[67]](_0xb2f2x28[_0xeedd[58]][_0xeedd[67]]);_0xb2f2x1b[_0xeedd[68]]= qs[_0xeedd[59]](_[_0xeedd[69]](_0xb2f2x28[_0xeedd[58]],_0xb2f2x29[_0xeedd[59]]));if(_0xb2f2x28[_0xeedd[58]][_0xeedd[70]]){_0xb2f2x1b[_0xeedd[68]]= _[_0xeedd[73]](_0xb2f2x1b[_0xeedd[68]],{$or:_[_0xeedd[72]](_0xb2f2x1b[_0xeedd[61]],function(_0xb2f2x2a){var _0xb2f2x2b={};_0xb2f2x2b[_0xb2f2x2a]= {$like:_0xeedd[71]+ _0xb2f2x28[_0xeedd[58]][_0xeedd[70]]+ _0xeedd[71]};return _0xb2f2x2b})})};_0xb2f2x1b= _[_0xeedd[73]]({},_0xb2f2x1b,_0xb2f2x28[_0xeedd[74]]);return db[_0xeedd[56]][_0xeedd[76]](_0xb2f2x1b)[_0xeedd[45]](respondWithFilteredResult(_0xb2f2x15,_0xb2f2x1b,_0xeedd[53]))[_0xeedd[75]](handleError(_0xb2f2x15,null,_0xeedd[53]))};exports[_0xeedd[77]]= function(_0xb2f2x28,_0xb2f2x15){var _0xb2f2x1b={raw:false,where:{id:_0xb2f2x28[_0xeedd[79]][_0xeedd[78]]}},_0xb2f2x29={};_0xb2f2x29[_0xeedd[54]]= _[_0xeedd[57]](db[_0xeedd[56]][_0xeedd[55]]);_0xb2f2x29[_0xeedd[58]]= _[_0xeedd[57]](_0xb2f2x28[_0xeedd[58]]);_0xb2f2x29[_0xeedd[59]]= _[_0xeedd[60]](_0xb2f2x29[_0xeedd[54]],_0xb2f2x29[_0xeedd[58]]);_0xb2f2x1b[_0xeedd[61]]= _[_0xeedd[60]](_0xb2f2x29[_0xeedd[54]],qs[_0xeedd[62]](_0xb2f2x28[_0xeedd[58]][_0xeedd[62]]));_0xb2f2x1b[_0xeedd[61]]= (_0xb2f2x1b[_0xeedd[61]][_0xeedd[63]])?_0xb2f2x1b[_0xeedd[61]]:_0xb2f2x29[_0xeedd[54]];_0xb2f2x1b= _[_0xeedd[73]]({},_0xb2f2x1b,_0xb2f2x28[_0xeedd[74]]);return db[_0xeedd[56]][_0xeedd[80]](_0xb2f2x1b)[_0xeedd[45]](handleEntityNotFound(_0xb2f2x15,null,_0xeedd[77]))[_0xeedd[45]](respondWithResult(_0xb2f2x15,null,_0xeedd[77]))[_0xeedd[75]](handleError(_0xb2f2x15,null,_0xeedd[77]))};exports[_0xeedd[81]]= function(_0xb2f2x28,_0xb2f2x15){return db[_0xeedd[56]][_0xeedd[81]](_0xb2f2x28[_0xeedd[82]],{})[_0xeedd[45]](respondWithResult(_0xb2f2x15,201,_0xeedd[81]))[_0xeedd[75]](handleError(_0xb2f2x15,null,_0xeedd[81]))};exports[_0xeedd[46]]= function(_0xb2f2x28,_0xb2f2x15){if(_0xb2f2x28[_0xeedd[82]][_0xeedd[78]]){delete _0xb2f2x28[_0xeedd[82]][_0xeedd[78]]};return db[_0xeedd[56]][_0xeedd[80]]({where:{id:_0xb2f2x28[_0xeedd[79]][_0xeedd[78]]}})[_0xeedd[45]](handleEntityNotFound(_0xb2f2x15,null,_0xeedd[46]))[_0xeedd[45]](saveUpdates(_0xb2f2x28[_0xeedd[82]],null,_0xeedd[46]))[_0xeedd[45]](respondWithResult(_0xb2f2x15,null,_0xeedd[46]))[_0xeedd[75]](handleError(_0xb2f2x15,null,_0xeedd[46]))};exports[_0xeedd[48]]= function(_0xb2f2x28,_0xb2f2x15){return db[_0xeedd[56]][_0xeedd[80]]({where:{id:_0xb2f2x28[_0xeedd[79]][_0xeedd[78]]}})[_0xeedd[45]](handleEntityNotFound(_0xb2f2x15,null,_0xeedd[48]))[_0xeedd[45]](removeEntity(_0xb2f2x15,null,_0xeedd[48]))[_0xeedd[75]](handleError(_0xb2f2x15,null,_0xeedd[48]))}
\ No newline at end of file
+var _0xf7a3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xf7a3[0];var jsonpatch=require(_0xf7a3[1]);var rp=require(_0xf7a3[2]);var moment=require(_0xf7a3[3]);var BPromise=require(_0xf7a3[4]);var util=require(_0xf7a3[5]);var path=require(_0xf7a3[6]);var sox=require(_0xf7a3[7]);var ejs=require(_0xf7a3[8]);var fs=require(_0xf7a3[9]);var _=require(_0xf7a3[10]);var squel=require(_0xf7a3[11]);var crypto=require(_0xf7a3[12]);var jsforce=require(_0xf7a3[13]);var toCsv=require(_0xf7a3[14]);var qs=require(_0xf7a3[15]);var logger=require(_0xf7a3[17])(_0xf7a3[16]);var utils=require(_0xf7a3[18]);var config=require(_0xf7a3[19]);var db=require(_0xf7a3[21])[_0xf7a3[20]];function respondWithStatusCode(_0x80b7x15,_0x80b7x16,_0x80b7x17){_0x80b7x16= _0x80b7x16|| 204;return function(_0x80b7x18){if(_0x80b7x18){logger[_0xf7a3[24]](_0xf7a3[22],_0x80b7x17,_0x80b7x16,_0xf7a3[23]);logger[_0xf7a3[26]](_0xf7a3[25],_0x80b7x17,_0x80b7x16,_0xf7a3[23]);return _0x80b7x15[_0xf7a3[27]](_0x80b7x16)};return _0x80b7x15[_0xf7a3[29]](304)[_0xf7a3[28]]()}}function respondWithResult(_0x80b7x15,_0x80b7x16,_0x80b7x17){_0x80b7x16= _0x80b7x16|| 200;return function(_0x80b7x18){if(_0x80b7x18){logger[_0xf7a3[24]](_0xf7a3[22],_0x80b7x17,_0x80b7x16,_0xf7a3[30]);logger[_0xf7a3[26]](_0xf7a3[25],_0x80b7x17,_0x80b7x16,_0xf7a3[30],JSON[_0xf7a3[31]](_0x80b7x18));return _0x80b7x15[_0xf7a3[29]](_0x80b7x16)[_0xf7a3[32]](_0x80b7x18)};return _0x80b7x15[_0xf7a3[29]](304)[_0xf7a3[28]]()}}function respondWithFilteredResult(_0x80b7x15,_0x80b7x1b,_0x80b7x17){return function(_0x80b7x18){if(_0x80b7x18){var _0x80b7x1c=_0x80b7x18[_0xf7a3[33]],_0x80b7x1d=_0x80b7x1b[_0xf7a3[34]],_0x80b7x1e=_0x80b7x1b[_0xf7a3[34]]+ _0x80b7x1b[_0xf7a3[35]],_0x80b7x16;if(_0x80b7x1e>= _0x80b7x1c){_0x80b7x1e= _0x80b7x1c;_0x80b7x16= 200}else {_0x80b7x16= 206};_0x80b7x15[_0xf7a3[29]](_0x80b7x16);logger[_0xf7a3[24]](_0xf7a3[22],_0x80b7x17,_0x80b7x16,_0xf7a3[36]);logger[_0xf7a3[26]](_0xf7a3[25],_0x80b7x17,_0x80b7x16,_0xf7a3[30],JSON[_0xf7a3[31]](_0x80b7x18));return _0x80b7x15[_0xf7a3[40]](_0xf7a3[37],_0x80b7x1d+ _0xf7a3[38]+ _0x80b7x1e+ _0xf7a3[39]+ _0x80b7x1c)[_0xf7a3[32]](_0x80b7x18)};return null}}function patchUpdates(_0x80b7x20){return function(_0x80b7x18){try{jsonpatch[_0xf7a3[41]](_0x80b7x18,_0x80b7x20,true)}catch(err){return BPromise[_0xf7a3[42]](err)};return _0x80b7x18[_0xf7a3[43]]()}}function saveUpdates(_0x80b7x22,_0x80b7x16,_0x80b7x17){return function(_0x80b7x18){if(_0x80b7x18){return _0x80b7x18[_0xf7a3[46]](_0x80b7x22)[_0xf7a3[45]](function(_0x80b7x23){logger[_0xf7a3[24]](_0xf7a3[22],_0x80b7x17,_0x80b7x16,_0xf7a3[44]);logger[_0xf7a3[26]](_0xf7a3[25],_0x80b7x17,_0x80b7x16,_0xf7a3[44],JSON[_0xf7a3[31]](_0x80b7x18));return _0x80b7x23})};return null}}function removeEntity(_0x80b7x15,_0x80b7x16,_0x80b7x17){return function(_0x80b7x18){if(_0x80b7x18){return _0x80b7x18[_0xf7a3[48]]()[_0xf7a3[45]](function(){logger[_0xf7a3[24]](_0xf7a3[22],_0x80b7x17,_0x80b7x16,_0xf7a3[47]);logger[_0xf7a3[26]](_0xf7a3[25],_0x80b7x17,_0x80b7x16,_0xf7a3[47],JSON[_0xf7a3[31]](_0x80b7x18));_0x80b7x15[_0xf7a3[29]](204)[_0xf7a3[28]]()})}}}function handleEntityNotFound(_0x80b7x15,_0x80b7x16,_0x80b7x17){return function(_0x80b7x18){if(!_0x80b7x18){logger[_0xf7a3[50]](_0xf7a3[22],_0x80b7x17,404,_0xf7a3[49]);_0x80b7x15[_0xf7a3[29]](404)[_0xf7a3[28]]();return null};return _0x80b7x18}}function handleError(_0x80b7x15,_0x80b7x16,_0x80b7x17){_0x80b7x16= _0x80b7x16|| 500;return function(_0x80b7x27){logger[_0xf7a3[50]](_0xf7a3[22],_0x80b7x17,_0x80b7x16,JSON[_0xf7a3[31]](_0x80b7x27));delete _0x80b7x27[_0xf7a3[51]];_0x80b7x15[_0xf7a3[29]](_0x80b7x16)[_0xf7a3[52]](_0x80b7x27)}}exports[_0xf7a3[53]]= function(_0x80b7x28,_0x80b7x15){var _0x80b7x1b={},_0x80b7x29={};_0x80b7x29[_0xf7a3[54]]= _[_0xf7a3[57]](db[_0xf7a3[56]][_0xf7a3[55]]);_0x80b7x29[_0xf7a3[58]]= _[_0xf7a3[57]](_0x80b7x28[_0xf7a3[58]]);_0x80b7x29[_0xf7a3[59]]= _[_0xf7a3[60]](_0x80b7x29[_0xf7a3[54]],_0x80b7x29[_0xf7a3[58]]);_0x80b7x1b[_0xf7a3[61]]= _[_0xf7a3[60]](_0x80b7x29[_0xf7a3[54]],qs[_0xf7a3[62]](_0x80b7x28[_0xf7a3[58]][_0xf7a3[62]]));_0x80b7x1b[_0xf7a3[61]]= (_0x80b7x1b[_0xf7a3[61]][_0xf7a3[63]])?_0x80b7x1b[_0xf7a3[61]]:_0x80b7x29[_0xf7a3[54]];if(!_0x80b7x28[_0xf7a3[58]][_0xf7a3[65]](_0xf7a3[64])){_0x80b7x1b[_0xf7a3[35]]= qs[_0xf7a3[35]](_0x80b7x28[_0xf7a3[58]][_0xf7a3[35]]);_0x80b7x1b[_0xf7a3[34]]= qs[_0xf7a3[34]](_0x80b7x28[_0xf7a3[58]][_0xf7a3[34]])};_0x80b7x1b[_0xf7a3[66]]= qs[_0xf7a3[67]](_0x80b7x28[_0xf7a3[58]][_0xf7a3[67]]);_0x80b7x1b[_0xf7a3[68]]= qs[_0xf7a3[59]](_[_0xf7a3[69]](_0x80b7x28[_0xf7a3[58]],_0x80b7x29[_0xf7a3[59]]));if(_0x80b7x28[_0xf7a3[58]][_0xf7a3[70]]){_0x80b7x1b[_0xf7a3[68]]= _[_0xf7a3[73]](_0x80b7x1b[_0xf7a3[68]],{$or:_[_0xf7a3[72]](_0x80b7x1b[_0xf7a3[61]],function(_0x80b7x2a){var _0x80b7x2b={};_0x80b7x2b[_0x80b7x2a]= {$like:_0xf7a3[71]+ _0x80b7x28[_0xf7a3[58]][_0xf7a3[70]]+ _0xf7a3[71]};return _0x80b7x2b})})};_0x80b7x1b= _[_0xf7a3[73]]({},_0x80b7x1b,_0x80b7x28[_0xf7a3[74]]);return db[_0xf7a3[56]][_0xf7a3[76]](_0x80b7x1b)[_0xf7a3[45]](respondWithFilteredResult(_0x80b7x15,_0x80b7x1b,_0xf7a3[53]))[_0xf7a3[75]](handleError(_0x80b7x15,null,_0xf7a3[53]))};exports[_0xf7a3[77]]= function(_0x80b7x28,_0x80b7x15){var _0x80b7x1b={raw:false,where:{id:_0x80b7x28[_0xf7a3[79]][_0xf7a3[78]]}},_0x80b7x29={};_0x80b7x29[_0xf7a3[54]]= _[_0xf7a3[57]](db[_0xf7a3[56]][_0xf7a3[55]]);_0x80b7x29[_0xf7a3[58]]= _[_0xf7a3[57]](_0x80b7x28[_0xf7a3[58]]);_0x80b7x29[_0xf7a3[59]]= _[_0xf7a3[60]](_0x80b7x29[_0xf7a3[54]],_0x80b7x29[_0xf7a3[58]]);_0x80b7x1b[_0xf7a3[61]]= _[_0xf7a3[60]](_0x80b7x29[_0xf7a3[54]],qs[_0xf7a3[62]](_0x80b7x28[_0xf7a3[58]][_0xf7a3[62]]));_0x80b7x1b[_0xf7a3[61]]= (_0x80b7x1b[_0xf7a3[61]][_0xf7a3[63]])?_0x80b7x1b[_0xf7a3[61]]:_0x80b7x29[_0xf7a3[54]];_0x80b7x1b= _[_0xf7a3[73]]({},_0x80b7x1b,_0x80b7x28[_0xf7a3[74]]);return db[_0xf7a3[56]][_0xf7a3[80]](_0x80b7x1b)[_0xf7a3[45]](handleEntityNotFound(_0x80b7x15,null,_0xf7a3[77]))[_0xf7a3[45]](respondWithResult(_0x80b7x15,null,_0xf7a3[77]))[_0xf7a3[75]](handleError(_0x80b7x15,null,_0xf7a3[77]))};exports[_0xf7a3[81]]= function(_0x80b7x28,_0x80b7x15){return db[_0xf7a3[56]][_0xf7a3[81]](_0x80b7x28[_0xf7a3[82]],{})[_0xf7a3[45]](respondWithResult(_0x80b7x15,201,_0xf7a3[81]))[_0xf7a3[75]](handleError(_0x80b7x15,null,_0xf7a3[81]))};exports[_0xf7a3[46]]= function(_0x80b7x28,_0x80b7x15){if(_0x80b7x28[_0xf7a3[82]][_0xf7a3[78]]){delete _0x80b7x28[_0xf7a3[82]][_0xf7a3[78]]};return db[_0xf7a3[56]][_0xf7a3[80]]({where:{id:_0x80b7x28[_0xf7a3[79]][_0xf7a3[78]]}})[_0xf7a3[45]](handleEntityNotFound(_0x80b7x15,null,_0xf7a3[46]))[_0xf7a3[45]](saveUpdates(_0x80b7x28[_0xf7a3[82]],null,_0xf7a3[46]))[_0xf7a3[45]](respondWithResult(_0x80b7x15,null,_0xf7a3[46]))[_0xf7a3[75]](handleError(_0x80b7x15,null,_0xf7a3[46]))};exports[_0xf7a3[48]]= function(_0x80b7x28,_0x80b7x15){return db[_0xf7a3[56]][_0xf7a3[80]]({where:{id:_0x80b7x28[_0xf7a3[79]][_0xf7a3[78]]}})[_0xf7a3[45]](handleEntityNotFound(_0x80b7x15,null,_0xf7a3[48]))[_0xf7a3[45]](removeEntity(_0x80b7x15,null,_0xf7a3[48]))[_0xf7a3[75]](handleError(_0x80b7x15,null,_0xf7a3[48]))}
\ No newline at end of file
index e209df0..fd14907 100644 (file)
@@ -1 +1 @@
-var _0x2b42=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x2b42[0];var _=require(_0x2b42[1]);var util=require(_0x2b42[2]);var logger=require(_0x2b42[4])(_0x2b42[3]);var attributes=require(_0x2b42[5]);module[_0x2b42[6]]= function(_0x4323x5,_0x4323x6){return _0x4323x5[_0x2b42[9]](_0x2b42[7],attributes,{tableName:_0x2b42[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4b15=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x4b15[0];var _=require(_0x4b15[1]);var util=require(_0x4b15[2]);var logger=require(_0x4b15[4])(_0x4b15[3]);var attributes=require(_0x4b15[5]);module[_0x4b15[6]]= function(_0xdb84x5,_0xdb84x6){return _0xdb84x5[_0x4b15[9]](_0x4b15[7],attributes,{tableName:_0x4b15[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 505c0ef..7108509 100644 (file)
@@ -1 +1 @@
-var _0xb0f1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xb0f1[0];var _=require(_0xb0f1[1]);var util=require(_0xb0f1[2]);var moment=require(_0xb0f1[3]);var BPromise=require(_0xb0f1[4]);var db=require(_0xb0f1[6])[_0xb0f1[5]];var utils=require(_0xb0f1[7]);var logger=require(_0xb0f1[9])(_0xb0f1[8]);var jayson=require(_0xb0f1[10]);var client=jayson[_0xb0f1[12]][_0xb0f1[11]]({port:9002});function respondWithRpcPromise(_0xf9d9xb,_0xf9d9xc,_0xf9d9xd){return  new BPromise(function(_0xf9d9xe,_0xf9d9xf){return client[_0xb0f1[25]](_0xf9d9xb,_0xf9d9xd)[_0xb0f1[24]](function(_0xf9d9x11){logger[_0xb0f1[17]](_0xb0f1[13],_0xf9d9xc,_0xb0f1[16]);logger[_0xb0f1[20]](_0xb0f1[18],_0xf9d9xc,_0xb0f1[16],JSON[_0xb0f1[19]](_0xf9d9x11));if(_0xf9d9x11[_0xb0f1[14]]){if(_0xf9d9x11[_0xb0f1[14]][_0xb0f1[21]]=== 500){logger[_0xb0f1[14]](_0xb0f1[13],_0xf9d9xc,_0xf9d9x11[_0xb0f1[14]][_0xb0f1[22]]);return _0xf9d9xf(_0xf9d9x11[_0xb0f1[14]][_0xb0f1[22]])};logger[_0xb0f1[14]](_0xb0f1[13],_0xf9d9xc,_0xf9d9x11[_0xb0f1[14]][_0xb0f1[22]]);return _0xf9d9xe(_0xf9d9x11[_0xb0f1[14]][_0xb0f1[22]])}else {logger[_0xb0f1[17]](_0xb0f1[13],_0xf9d9xc,_0xb0f1[16]);_0xf9d9xe(_0xf9d9x11[_0xb0f1[23]][_0xb0f1[22]])}})[_0xb0f1[15]](function(_0xf9d9x10){logger[_0xb0f1[14]](_0xb0f1[13],_0xf9d9xc,_0xf9d9x10);_0xf9d9xf(_0xf9d9x10)})})}
\ No newline at end of file
+var _0x606b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x606b[0];var _=require(_0x606b[1]);var util=require(_0x606b[2]);var moment=require(_0x606b[3]);var BPromise=require(_0x606b[4]);var db=require(_0x606b[6])[_0x606b[5]];var utils=require(_0x606b[7]);var logger=require(_0x606b[9])(_0x606b[8]);var jayson=require(_0x606b[10]);var client=jayson[_0x606b[12]][_0x606b[11]]({port:9002});function respondWithRpcPromise(_0xabeexb,_0xabeexc,_0xabeexd){return  new BPromise(function(_0xabeexe,_0xabeexf){return client[_0x606b[25]](_0xabeexb,_0xabeexd)[_0x606b[24]](function(_0xabeex11){logger[_0x606b[17]](_0x606b[13],_0xabeexc,_0x606b[16]);logger[_0x606b[20]](_0x606b[18],_0xabeexc,_0x606b[16],JSON[_0x606b[19]](_0xabeex11));if(_0xabeex11[_0x606b[14]]){if(_0xabeex11[_0x606b[14]][_0x606b[21]]=== 500){logger[_0x606b[14]](_0x606b[13],_0xabeexc,_0xabeex11[_0x606b[14]][_0x606b[22]]);return _0xabeexf(_0xabeex11[_0x606b[14]][_0x606b[22]])};logger[_0x606b[14]](_0x606b[13],_0xabeexc,_0xabeex11[_0x606b[14]][_0x606b[22]]);return _0xabeexe(_0xabeex11[_0x606b[14]][_0x606b[22]])}else {logger[_0x606b[17]](_0x606b[13],_0xabeexc,_0x606b[16]);_0xabeexe(_0xabeex11[_0x606b[23]][_0x606b[22]])}})[_0x606b[15]](function(_0xabeex10){logger[_0x606b[14]](_0x606b[13],_0xabeexc,_0xabeex10);_0xabeexf(_0xabeex10)})})}
\ No newline at end of file
index a45f25b..aaef832 100644 (file)
@@ -1 +1 @@
-var _0x9987=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x9987[0];var multer=require(_0x9987[1]);var util=require(_0x9987[2]);var path=require(_0x9987[3]);var express=require(_0x9987[4]);var router=express.Router();var auth=require(_0x9987[5]);var config=require(_0x9987[6]);var controller=require(_0x9987[7]);router[_0x9987[11]](_0x9987[8],auth[_0x9987[9]](),controller[_0x9987[10]]);router[_0x9987[11]](_0x9987[12],auth[_0x9987[9]](),controller[_0x9987[13]]);router[_0x9987[11]](_0x9987[14],auth[_0x9987[9]](),controller[_0x9987[15]]);router[_0x9987[17]](_0x9987[8],auth[_0x9987[9]](),controller[_0x9987[16]]);router[_0x9987[19]](_0x9987[14],auth[_0x9987[9]](),controller[_0x9987[18]]);router[_0x9987[21]](_0x9987[14],auth[_0x9987[9]](),controller[_0x9987[20]]);module[_0x9987[22]]= router
\ No newline at end of file
+var _0x1028=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1028[0];var multer=require(_0x1028[1]);var util=require(_0x1028[2]);var path=require(_0x1028[3]);var express=require(_0x1028[4]);var router=express.Router();var auth=require(_0x1028[5]);var config=require(_0x1028[6]);var controller=require(_0x1028[7]);router[_0x1028[11]](_0x1028[8],auth[_0x1028[9]](),controller[_0x1028[10]]);router[_0x1028[11]](_0x1028[12],auth[_0x1028[9]](),controller[_0x1028[13]]);router[_0x1028[11]](_0x1028[14],auth[_0x1028[9]](),controller[_0x1028[15]]);router[_0x1028[17]](_0x1028[8],auth[_0x1028[9]](),controller[_0x1028[16]]);router[_0x1028[19]](_0x1028[14],auth[_0x1028[9]](),controller[_0x1028[18]]);router[_0x1028[21]](_0x1028[14],auth[_0x1028[9]](),controller[_0x1028[20]]);module[_0x1028[22]]= router
\ No newline at end of file
index ed14e41..3cae5fd 100644 (file)
@@ -1 +1 @@
-var _0xd42a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x54\x45\x58\x54","\x53\x45\x4E\x54","\x53\x45\x4E\x44\x49\x4E\x47","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44"];_0xd42a[0];var Sequelize=require(_0xd42a[1]);module[_0xd42a[2]]= {integration:{type:Sequelize[_0xd42a[3]]},eventChannel:{type:Sequelize[_0xd42a[3]]},exitStatus:{type:Sequelize[_0xd42a[3]]},ticketId:{type:Sequelize[_0xd42a[3]]},integrationId:{type:Sequelize[_0xd42a[4]]},contacts:{type:Sequelize[_0xd42a[3]]},uniqueid:{type:Sequelize[_0xd42a[3]]},calleridnum:{type:Sequelize[_0xd42a[3]]},calleridname:{type:Sequelize[_0xd42a[3]]},queue:{type:Sequelize[_0xd42a[3]]},interface:{type:Sequelize[_0xd42a[3]]},membername:{type:Sequelize[_0xd42a[3]]},agentcalledAt:{type:Sequelize[_0xd42a[5]]},agentconnectAt:{type:Sequelize[_0xd42a[5]]},holdtime:{type:Sequelize[_0xd42a[4]]},agentcomplete:{type:Sequelize[_0xd42a[6]],defaultValue:false},agentcompleteAt:{type:Sequelize[_0xd42a[5]]},talktime:{type:Sequelize[_0xd42a[4]]},agentacw:{type:Sequelize[_0xd42a[6]],defaultValue:false},acwtime:{type:Sequelize[_0xd42a[4]]},reason:{type:Sequelize[_0xd42a[3]]},agentringnoanswer:{type:Sequelize[_0xd42a[6]],defaultValue:false},agentringnoanswerAt:{type:Sequelize[_0xd42a[5]]},agentdump:{type:Sequelize[_0xd42a[6]],defaultValue:false},agentdumpAt:{type:Sequelize[_0xd42a[5]]},lastevent:{type:Sequelize[_0xd42a[3]]},channel:{type:Sequelize[_0xd42a[3]]},channelstate:{type:Sequelize[_0xd42a[4]]},channelstatedesc:{type:Sequelize[_0xd42a[3]]},connectedlinenum:{type:Sequelize[_0xd42a[3]]},connectedlinename:{type:Sequelize[_0xd42a[3]]},language:{type:Sequelize[_0xd42a[3]]},accountcode:{type:Sequelize[_0xd42a[3]]},context:{type:Sequelize[_0xd42a[3]]},exten:{type:Sequelize[_0xd42a[3]]},priority:{type:Sequelize[_0xd42a[3]]},destchannel:{type:Sequelize[_0xd42a[3]]},destchannelstate:{type:Sequelize[_0xd42a[4]]},destchannelstatedesc:{type:Sequelize[_0xd42a[3]]},destcalleridnum:{type:Sequelize[_0xd42a[3]]},destcalleridname:{type:Sequelize[_0xd42a[3]]},destconnectedlinenum:{type:Sequelize[_0xd42a[3]]},destconnectedlinename:{type:Sequelize[_0xd42a[3]]},destlanguage:{type:Sequelize[_0xd42a[3]]},destaccountcode:{type:Sequelize[_0xd42a[3]]},destcontext:{type:Sequelize[_0xd42a[3]]},destexten:{type:Sequelize[_0xd42a[3]]},destpriority:{type:Sequelize[_0xd42a[3]]},destuniqueid:{type:Sequelize[_0xd42a[3]]},messageId:{type:Sequelize[_0xd42a[3]]},inReplyTo:{type:Sequelize[_0xd42a[3]]},subject:{type:Sequelize[_0xd42a[3]]},from:{type:Sequelize[_0xd42a[3]]},to:{type:Sequelize[_0xd42a[3]]},cc:{type:Sequelize[_0xd42a[3]]},attachment:{type:Sequelize[_0xd42a[7]]},html:{type:Sequelize[_0xd42a[7]]},text:{type:Sequelize[_0xd42a[7]]},status:{type:Sequelize.ENUM(_0xd42a[8],_0xd42a[9],_0xd42a[10],_0xd42a[11])},url:{type:Sequelize[_0xd42a[3]]},app:{type:Sequelize[_0xd42a[3]]},appdata:{type:Sequelize[_0xd42a[3]]},projectId:{type:Sequelize[_0xd42a[4]]}}
\ No newline at end of file
+var _0xd525=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x54\x45\x58\x54","\x53\x45\x4E\x54","\x53\x45\x4E\x44\x49\x4E\x47","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44"];_0xd525[0];var Sequelize=require(_0xd525[1]);module[_0xd525[2]]= {integration:{type:Sequelize[_0xd525[3]]},eventChannel:{type:Sequelize[_0xd525[3]]},exitStatus:{type:Sequelize[_0xd525[3]]},ticketId:{type:Sequelize[_0xd525[3]]},integrationId:{type:Sequelize[_0xd525[4]]},contacts:{type:Sequelize[_0xd525[3]]},uniqueid:{type:Sequelize[_0xd525[3]]},calleridnum:{type:Sequelize[_0xd525[3]]},calleridname:{type:Sequelize[_0xd525[3]]},queue:{type:Sequelize[_0xd525[3]]},interface:{type:Sequelize[_0xd525[3]]},membername:{type:Sequelize[_0xd525[3]]},agentcalledAt:{type:Sequelize[_0xd525[5]]},agentconnectAt:{type:Sequelize[_0xd525[5]]},holdtime:{type:Sequelize[_0xd525[4]]},agentcomplete:{type:Sequelize[_0xd525[6]],defaultValue:false},agentcompleteAt:{type:Sequelize[_0xd525[5]]},talktime:{type:Sequelize[_0xd525[4]]},agentacw:{type:Sequelize[_0xd525[6]],defaultValue:false},acwtime:{type:Sequelize[_0xd525[4]]},reason:{type:Sequelize[_0xd525[3]]},agentringnoanswer:{type:Sequelize[_0xd525[6]],defaultValue:false},agentringnoanswerAt:{type:Sequelize[_0xd525[5]]},agentdump:{type:Sequelize[_0xd525[6]],defaultValue:false},agentdumpAt:{type:Sequelize[_0xd525[5]]},lastevent:{type:Sequelize[_0xd525[3]]},channel:{type:Sequelize[_0xd525[3]]},channelstate:{type:Sequelize[_0xd525[4]]},channelstatedesc:{type:Sequelize[_0xd525[3]]},connectedlinenum:{type:Sequelize[_0xd525[3]]},connectedlinename:{type:Sequelize[_0xd525[3]]},language:{type:Sequelize[_0xd525[3]]},accountcode:{type:Sequelize[_0xd525[3]]},context:{type:Sequelize[_0xd525[3]]},exten:{type:Sequelize[_0xd525[3]]},priority:{type:Sequelize[_0xd525[3]]},destchannel:{type:Sequelize[_0xd525[3]]},destchannelstate:{type:Sequelize[_0xd525[4]]},destchannelstatedesc:{type:Sequelize[_0xd525[3]]},destcalleridnum:{type:Sequelize[_0xd525[3]]},destcalleridname:{type:Sequelize[_0xd525[3]]},destconnectedlinenum:{type:Sequelize[_0xd525[3]]},destconnectedlinename:{type:Sequelize[_0xd525[3]]},destlanguage:{type:Sequelize[_0xd525[3]]},destaccountcode:{type:Sequelize[_0xd525[3]]},destcontext:{type:Sequelize[_0xd525[3]]},destexten:{type:Sequelize[_0xd525[3]]},destpriority:{type:Sequelize[_0xd525[3]]},destuniqueid:{type:Sequelize[_0xd525[3]]},messageId:{type:Sequelize[_0xd525[3]]},inReplyTo:{type:Sequelize[_0xd525[3]]},subject:{type:Sequelize[_0xd525[3]]},from:{type:Sequelize[_0xd525[3]]},to:{type:Sequelize[_0xd525[3]]},cc:{type:Sequelize[_0xd525[3]]},attachment:{type:Sequelize[_0xd525[7]]},html:{type:Sequelize[_0xd525[7]]},text:{type:Sequelize[_0xd525[7]]},status:{type:Sequelize.ENUM(_0xd525[8],_0xd525[9],_0xd525[10],_0xd525[11])},url:{type:Sequelize[_0xd525[3]]},app:{type:Sequelize[_0xd525[3]]},appdata:{type:Sequelize[_0xd525[3]]},projectId:{type:Sequelize[_0xd525[4]]}}
\ No newline at end of file
index 572151d..18c3619 100644 (file)
@@ -1 +1 @@
-var _0x72b1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x72b1[0];var jsonpatch=require(_0x72b1[1]);var rp=require(_0x72b1[2]);var moment=require(_0x72b1[3]);var BPromise=require(_0x72b1[4]);var util=require(_0x72b1[5]);var path=require(_0x72b1[6]);var sox=require(_0x72b1[7]);var ejs=require(_0x72b1[8]);var fs=require(_0x72b1[9]);var _=require(_0x72b1[10]);var squel=require(_0x72b1[11]);var crypto=require(_0x72b1[12]);var jsforce=require(_0x72b1[13]);var toCsv=require(_0x72b1[14]);var qs=require(_0x72b1[15]);var logger=require(_0x72b1[17])(_0x72b1[16]);var utils=require(_0x72b1[18]);var config=require(_0x72b1[19]);var db=require(_0x72b1[21])[_0x72b1[20]];function respondWithStatusCode(_0x2a08x15,_0x2a08x16,_0x2a08x17){_0x2a08x16= _0x2a08x16|| 204;return function(_0x2a08x18){if(_0x2a08x18){logger[_0x72b1[24]](_0x72b1[22],_0x2a08x17,_0x2a08x16,_0x72b1[23]);logger[_0x72b1[26]](_0x72b1[25],_0x2a08x17,_0x2a08x16,_0x72b1[23]);return _0x2a08x15[_0x72b1[27]](_0x2a08x16)};return _0x2a08x15[_0x72b1[29]](304)[_0x72b1[28]]()}}function respondWithResult(_0x2a08x15,_0x2a08x16,_0x2a08x17){_0x2a08x16= _0x2a08x16|| 200;return function(_0x2a08x18){if(_0x2a08x18){logger[_0x72b1[24]](_0x72b1[22],_0x2a08x17,_0x2a08x16,_0x72b1[30]);logger[_0x72b1[26]](_0x72b1[25],_0x2a08x17,_0x2a08x16,_0x72b1[30],JSON[_0x72b1[31]](_0x2a08x18));return _0x2a08x15[_0x72b1[29]](_0x2a08x16)[_0x72b1[32]](_0x2a08x18)};return _0x2a08x15[_0x72b1[29]](304)[_0x72b1[28]]()}}function respondWithFilteredResult(_0x2a08x15,_0x2a08x1b,_0x2a08x17){return function(_0x2a08x18){if(_0x2a08x18){var _0x2a08x1c=_0x2a08x18[_0x72b1[33]],_0x2a08x1d=_0x2a08x1b[_0x72b1[34]],_0x2a08x1e=_0x2a08x1b[_0x72b1[34]]+ _0x2a08x1b[_0x72b1[35]],_0x2a08x16;if(_0x2a08x1e>= _0x2a08x1c){_0x2a08x1e= _0x2a08x1c;_0x2a08x16= 200}else {_0x2a08x16= 206};_0x2a08x15[_0x72b1[29]](_0x2a08x16);logger[_0x72b1[24]](_0x72b1[22],_0x2a08x17,_0x2a08x16,_0x72b1[36]);logger[_0x72b1[26]](_0x72b1[25],_0x2a08x17,_0x2a08x16,_0x72b1[30],JSON[_0x72b1[31]](_0x2a08x18));return _0x2a08x15[_0x72b1[40]](_0x72b1[37],_0x2a08x1d+ _0x72b1[38]+ _0x2a08x1e+ _0x72b1[39]+ _0x2a08x1c)[_0x72b1[32]](_0x2a08x18)};return null}}function patchUpdates(_0x2a08x20){return function(_0x2a08x18){try{jsonpatch[_0x72b1[41]](_0x2a08x18,_0x2a08x20,true)}catch(err){return BPromise[_0x72b1[42]](err)};return _0x2a08x18[_0x72b1[43]]()}}function saveUpdates(_0x2a08x22,_0x2a08x16,_0x2a08x17){return function(_0x2a08x18){if(_0x2a08x18){return _0x2a08x18[_0x72b1[46]](_0x2a08x22)[_0x72b1[45]](function(_0x2a08x23){logger[_0x72b1[24]](_0x72b1[22],_0x2a08x17,_0x2a08x16,_0x72b1[44]);logger[_0x72b1[26]](_0x72b1[25],_0x2a08x17,_0x2a08x16,_0x72b1[44],JSON[_0x72b1[31]](_0x2a08x18));return _0x2a08x23})};return null}}function removeEntity(_0x2a08x15,_0x2a08x16,_0x2a08x17){return function(_0x2a08x18){if(_0x2a08x18){return _0x2a08x18[_0x72b1[48]]()[_0x72b1[45]](function(){logger[_0x72b1[24]](_0x72b1[22],_0x2a08x17,_0x2a08x16,_0x72b1[47]);logger[_0x72b1[26]](_0x72b1[25],_0x2a08x17,_0x2a08x16,_0x72b1[47],JSON[_0x72b1[31]](_0x2a08x18));_0x2a08x15[_0x72b1[29]](204)[_0x72b1[28]]()})}}}function handleEntityNotFound(_0x2a08x15,_0x2a08x16,_0x2a08x17){return function(_0x2a08x18){if(!_0x2a08x18){logger[_0x72b1[50]](_0x72b1[22],_0x2a08x17,404,_0x72b1[49]);_0x2a08x15[_0x72b1[29]](404)[_0x72b1[28]]();return null};return _0x2a08x18}}function handleError(_0x2a08x15,_0x2a08x16,_0x2a08x17){_0x2a08x16= _0x2a08x16|| 500;return function(_0x2a08x27){logger[_0x72b1[50]](_0x72b1[22],_0x2a08x17,_0x2a08x16,JSON[_0x72b1[31]](_0x2a08x27));delete _0x2a08x27[_0x72b1[51]];_0x2a08x15[_0x72b1[29]](_0x2a08x16)[_0x72b1[52]](_0x2a08x27)}}exports[_0x72b1[53]]= function(_0x2a08x28,_0x2a08x15){var _0x2a08x1b={},_0x2a08x29={};_0x2a08x29[_0x72b1[54]]= _[_0x72b1[57]](db[_0x72b1[56]][_0x72b1[55]]);_0x2a08x29[_0x72b1[58]]= _[_0x72b1[57]](_0x2a08x28[_0x72b1[58]]);_0x2a08x29[_0x72b1[59]]= _[_0x72b1[60]](_0x2a08x29[_0x72b1[54]],_0x2a08x29[_0x72b1[58]]);_0x2a08x1b[_0x72b1[61]]= _[_0x72b1[60]](_0x2a08x29[_0x72b1[54]],qs[_0x72b1[62]](_0x2a08x28[_0x72b1[58]][_0x72b1[62]]));_0x2a08x1b[_0x72b1[61]]= (_0x2a08x1b[_0x72b1[61]][_0x72b1[63]])?_0x2a08x1b[_0x72b1[61]]:_0x2a08x29[_0x72b1[54]];if(!_0x2a08x28[_0x72b1[58]][_0x72b1[65]](_0x72b1[64])){_0x2a08x1b[_0x72b1[35]]= qs[_0x72b1[35]](_0x2a08x28[_0x72b1[58]][_0x72b1[35]]);_0x2a08x1b[_0x72b1[34]]= qs[_0x72b1[34]](_0x2a08x28[_0x72b1[58]][_0x72b1[34]])};_0x2a08x1b[_0x72b1[66]]= qs[_0x72b1[67]](_0x2a08x28[_0x72b1[58]][_0x72b1[67]]);_0x2a08x1b[_0x72b1[68]]= qs[_0x72b1[59]](_[_0x72b1[69]](_0x2a08x28[_0x72b1[58]],_0x2a08x29[_0x72b1[59]]));if(_0x2a08x28[_0x72b1[58]][_0x72b1[70]]){_0x2a08x1b[_0x72b1[68]]= _[_0x72b1[73]](_0x2a08x1b[_0x72b1[68]],{$or:_[_0x72b1[72]](_0x2a08x1b[_0x72b1[61]],function(_0x2a08x2a){var _0x2a08x2b={};_0x2a08x2b[_0x2a08x2a]= {$like:_0x72b1[71]+ _0x2a08x28[_0x72b1[58]][_0x72b1[70]]+ _0x72b1[71]};return _0x2a08x2b})})};_0x2a08x1b= _[_0x72b1[73]]({},_0x2a08x1b,_0x2a08x28[_0x72b1[74]]);return db[_0x72b1[56]][_0x72b1[76]](_0x2a08x1b)[_0x72b1[45]](respondWithFilteredResult(_0x2a08x15,_0x2a08x1b,_0x72b1[53]))[_0x72b1[75]](handleError(_0x2a08x15,null,_0x72b1[53]))};exports[_0x72b1[77]]= function(_0x2a08x28,_0x2a08x15){var _0x2a08x1b={raw:false,where:{id:_0x2a08x28[_0x72b1[79]][_0x72b1[78]]}},_0x2a08x29={};_0x2a08x29[_0x72b1[54]]= _[_0x72b1[57]](db[_0x72b1[56]][_0x72b1[55]]);_0x2a08x29[_0x72b1[58]]= _[_0x72b1[57]](_0x2a08x28[_0x72b1[58]]);_0x2a08x29[_0x72b1[59]]= _[_0x72b1[60]](_0x2a08x29[_0x72b1[54]],_0x2a08x29[_0x72b1[58]]);_0x2a08x1b[_0x72b1[61]]= _[_0x72b1[60]](_0x2a08x29[_0x72b1[54]],qs[_0x72b1[62]](_0x2a08x28[_0x72b1[58]][_0x72b1[62]]));_0x2a08x1b[_0x72b1[61]]= (_0x2a08x1b[_0x72b1[61]][_0x72b1[63]])?_0x2a08x1b[_0x72b1[61]]:_0x2a08x29[_0x72b1[54]];_0x2a08x1b= _[_0x72b1[73]]({},_0x2a08x1b,_0x2a08x28[_0x72b1[74]]);return db[_0x72b1[56]][_0x72b1[80]](_0x2a08x1b)[_0x72b1[45]](handleEntityNotFound(_0x2a08x15,null,_0x72b1[77]))[_0x72b1[45]](respondWithResult(_0x2a08x15,null,_0x72b1[77]))[_0x72b1[75]](handleError(_0x2a08x15,null,_0x72b1[77]))};exports[_0x72b1[81]]= function(_0x2a08x28,_0x2a08x15){return db[_0x72b1[56]][_0x72b1[81]](_0x2a08x28[_0x72b1[82]],{})[_0x72b1[45]](respondWithResult(_0x2a08x15,201,_0x72b1[81]))[_0x72b1[75]](handleError(_0x2a08x15,null,_0x72b1[81]))};exports[_0x72b1[46]]= function(_0x2a08x28,_0x2a08x15){if(_0x2a08x28[_0x72b1[82]][_0x72b1[78]]){delete _0x2a08x28[_0x72b1[82]][_0x72b1[78]]};return db[_0x72b1[56]][_0x72b1[80]]({where:{id:_0x2a08x28[_0x72b1[79]][_0x72b1[78]]}})[_0x72b1[45]](handleEntityNotFound(_0x2a08x15,null,_0x72b1[46]))[_0x72b1[45]](saveUpdates(_0x2a08x28[_0x72b1[82]],null,_0x72b1[46]))[_0x72b1[45]](respondWithResult(_0x2a08x15,null,_0x72b1[46]))[_0x72b1[75]](handleError(_0x2a08x15,null,_0x72b1[46]))};exports[_0x72b1[48]]= function(_0x2a08x28,_0x2a08x15){return db[_0x72b1[56]][_0x72b1[80]]({where:{id:_0x2a08x28[_0x72b1[79]][_0x72b1[78]]}})[_0x72b1[45]](handleEntityNotFound(_0x2a08x15,null,_0x72b1[48]))[_0x72b1[45]](removeEntity(_0x2a08x15,null,_0x72b1[48]))[_0x72b1[75]](handleError(_0x2a08x15,null,_0x72b1[48]))};exports[_0x72b1[83]]= function(_0x2a08x28,_0x2a08x15){return db[_0x72b1[56]][_0x72b1[83]]()[_0x72b1[45]](respondWithResult(_0x2a08x15,null,_0x72b1[83]))[_0x72b1[75]](handleError(_0x2a08x15,null,_0x72b1[83]))}
\ No newline at end of file
+var _0x715b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x715b[0];var jsonpatch=require(_0x715b[1]);var rp=require(_0x715b[2]);var moment=require(_0x715b[3]);var BPromise=require(_0x715b[4]);var util=require(_0x715b[5]);var path=require(_0x715b[6]);var sox=require(_0x715b[7]);var ejs=require(_0x715b[8]);var fs=require(_0x715b[9]);var _=require(_0x715b[10]);var squel=require(_0x715b[11]);var crypto=require(_0x715b[12]);var jsforce=require(_0x715b[13]);var toCsv=require(_0x715b[14]);var qs=require(_0x715b[15]);var logger=require(_0x715b[17])(_0x715b[16]);var utils=require(_0x715b[18]);var config=require(_0x715b[19]);var db=require(_0x715b[21])[_0x715b[20]];function respondWithStatusCode(_0x9af8x15,_0x9af8x16,_0x9af8x17){_0x9af8x16= _0x9af8x16|| 204;return function(_0x9af8x18){if(_0x9af8x18){logger[_0x715b[24]](_0x715b[22],_0x9af8x17,_0x9af8x16,_0x715b[23]);logger[_0x715b[26]](_0x715b[25],_0x9af8x17,_0x9af8x16,_0x715b[23]);return _0x9af8x15[_0x715b[27]](_0x9af8x16)};return _0x9af8x15[_0x715b[29]](304)[_0x715b[28]]()}}function respondWithResult(_0x9af8x15,_0x9af8x16,_0x9af8x17){_0x9af8x16= _0x9af8x16|| 200;return function(_0x9af8x18){if(_0x9af8x18){logger[_0x715b[24]](_0x715b[22],_0x9af8x17,_0x9af8x16,_0x715b[30]);logger[_0x715b[26]](_0x715b[25],_0x9af8x17,_0x9af8x16,_0x715b[30],JSON[_0x715b[31]](_0x9af8x18));return _0x9af8x15[_0x715b[29]](_0x9af8x16)[_0x715b[32]](_0x9af8x18)};return _0x9af8x15[_0x715b[29]](304)[_0x715b[28]]()}}function respondWithFilteredResult(_0x9af8x15,_0x9af8x1b,_0x9af8x17){return function(_0x9af8x18){if(_0x9af8x18){var _0x9af8x1c=_0x9af8x18[_0x715b[33]],_0x9af8x1d=_0x9af8x1b[_0x715b[34]],_0x9af8x1e=_0x9af8x1b[_0x715b[34]]+ _0x9af8x1b[_0x715b[35]],_0x9af8x16;if(_0x9af8x1e>= _0x9af8x1c){_0x9af8x1e= _0x9af8x1c;_0x9af8x16= 200}else {_0x9af8x16= 206};_0x9af8x15[_0x715b[29]](_0x9af8x16);logger[_0x715b[24]](_0x715b[22],_0x9af8x17,_0x9af8x16,_0x715b[36]);logger[_0x715b[26]](_0x715b[25],_0x9af8x17,_0x9af8x16,_0x715b[30],JSON[_0x715b[31]](_0x9af8x18));return _0x9af8x15[_0x715b[40]](_0x715b[37],_0x9af8x1d+ _0x715b[38]+ _0x9af8x1e+ _0x715b[39]+ _0x9af8x1c)[_0x715b[32]](_0x9af8x18)};return null}}function patchUpdates(_0x9af8x20){return function(_0x9af8x18){try{jsonpatch[_0x715b[41]](_0x9af8x18,_0x9af8x20,true)}catch(err){return BPromise[_0x715b[42]](err)};return _0x9af8x18[_0x715b[43]]()}}function saveUpdates(_0x9af8x22,_0x9af8x16,_0x9af8x17){return function(_0x9af8x18){if(_0x9af8x18){return _0x9af8x18[_0x715b[46]](_0x9af8x22)[_0x715b[45]](function(_0x9af8x23){logger[_0x715b[24]](_0x715b[22],_0x9af8x17,_0x9af8x16,_0x715b[44]);logger[_0x715b[26]](_0x715b[25],_0x9af8x17,_0x9af8x16,_0x715b[44],JSON[_0x715b[31]](_0x9af8x18));return _0x9af8x23})};return null}}function removeEntity(_0x9af8x15,_0x9af8x16,_0x9af8x17){return function(_0x9af8x18){if(_0x9af8x18){return _0x9af8x18[_0x715b[48]]()[_0x715b[45]](function(){logger[_0x715b[24]](_0x715b[22],_0x9af8x17,_0x9af8x16,_0x715b[47]);logger[_0x715b[26]](_0x715b[25],_0x9af8x17,_0x9af8x16,_0x715b[47],JSON[_0x715b[31]](_0x9af8x18));_0x9af8x15[_0x715b[29]](204)[_0x715b[28]]()})}}}function handleEntityNotFound(_0x9af8x15,_0x9af8x16,_0x9af8x17){return function(_0x9af8x18){if(!_0x9af8x18){logger[_0x715b[50]](_0x715b[22],_0x9af8x17,404,_0x715b[49]);_0x9af8x15[_0x715b[29]](404)[_0x715b[28]]();return null};return _0x9af8x18}}function handleError(_0x9af8x15,_0x9af8x16,_0x9af8x17){_0x9af8x16= _0x9af8x16|| 500;return function(_0x9af8x27){logger[_0x715b[50]](_0x715b[22],_0x9af8x17,_0x9af8x16,JSON[_0x715b[31]](_0x9af8x27));delete _0x9af8x27[_0x715b[51]];_0x9af8x15[_0x715b[29]](_0x9af8x16)[_0x715b[52]](_0x9af8x27)}}exports[_0x715b[53]]= function(_0x9af8x28,_0x9af8x15){var _0x9af8x1b={},_0x9af8x29={};_0x9af8x29[_0x715b[54]]= _[_0x715b[57]](db[_0x715b[56]][_0x715b[55]]);_0x9af8x29[_0x715b[58]]= _[_0x715b[57]](_0x9af8x28[_0x715b[58]]);_0x9af8x29[_0x715b[59]]= _[_0x715b[60]](_0x9af8x29[_0x715b[54]],_0x9af8x29[_0x715b[58]]);_0x9af8x1b[_0x715b[61]]= _[_0x715b[60]](_0x9af8x29[_0x715b[54]],qs[_0x715b[62]](_0x9af8x28[_0x715b[58]][_0x715b[62]]));_0x9af8x1b[_0x715b[61]]= (_0x9af8x1b[_0x715b[61]][_0x715b[63]])?_0x9af8x1b[_0x715b[61]]:_0x9af8x29[_0x715b[54]];if(!_0x9af8x28[_0x715b[58]][_0x715b[65]](_0x715b[64])){_0x9af8x1b[_0x715b[35]]= qs[_0x715b[35]](_0x9af8x28[_0x715b[58]][_0x715b[35]]);_0x9af8x1b[_0x715b[34]]= qs[_0x715b[34]](_0x9af8x28[_0x715b[58]][_0x715b[34]])};_0x9af8x1b[_0x715b[66]]= qs[_0x715b[67]](_0x9af8x28[_0x715b[58]][_0x715b[67]]);_0x9af8x1b[_0x715b[68]]= qs[_0x715b[59]](_[_0x715b[69]](_0x9af8x28[_0x715b[58]],_0x9af8x29[_0x715b[59]]));if(_0x9af8x28[_0x715b[58]][_0x715b[70]]){_0x9af8x1b[_0x715b[68]]= _[_0x715b[73]](_0x9af8x1b[_0x715b[68]],{$or:_[_0x715b[72]](_0x9af8x1b[_0x715b[61]],function(_0x9af8x2a){var _0x9af8x2b={};_0x9af8x2b[_0x9af8x2a]= {$like:_0x715b[71]+ _0x9af8x28[_0x715b[58]][_0x715b[70]]+ _0x715b[71]};return _0x9af8x2b})})};_0x9af8x1b= _[_0x715b[73]]({},_0x9af8x1b,_0x9af8x28[_0x715b[74]]);return db[_0x715b[56]][_0x715b[76]](_0x9af8x1b)[_0x715b[45]](respondWithFilteredResult(_0x9af8x15,_0x9af8x1b,_0x715b[53]))[_0x715b[75]](handleError(_0x9af8x15,null,_0x715b[53]))};exports[_0x715b[77]]= function(_0x9af8x28,_0x9af8x15){var _0x9af8x1b={raw:false,where:{id:_0x9af8x28[_0x715b[79]][_0x715b[78]]}},_0x9af8x29={};_0x9af8x29[_0x715b[54]]= _[_0x715b[57]](db[_0x715b[56]][_0x715b[55]]);_0x9af8x29[_0x715b[58]]= _[_0x715b[57]](_0x9af8x28[_0x715b[58]]);_0x9af8x29[_0x715b[59]]= _[_0x715b[60]](_0x9af8x29[_0x715b[54]],_0x9af8x29[_0x715b[58]]);_0x9af8x1b[_0x715b[61]]= _[_0x715b[60]](_0x9af8x29[_0x715b[54]],qs[_0x715b[62]](_0x9af8x28[_0x715b[58]][_0x715b[62]]));_0x9af8x1b[_0x715b[61]]= (_0x9af8x1b[_0x715b[61]][_0x715b[63]])?_0x9af8x1b[_0x715b[61]]:_0x9af8x29[_0x715b[54]];_0x9af8x1b= _[_0x715b[73]]({},_0x9af8x1b,_0x9af8x28[_0x715b[74]]);return db[_0x715b[56]][_0x715b[80]](_0x9af8x1b)[_0x715b[45]](handleEntityNotFound(_0x9af8x15,null,_0x715b[77]))[_0x715b[45]](respondWithResult(_0x9af8x15,null,_0x715b[77]))[_0x715b[75]](handleError(_0x9af8x15,null,_0x715b[77]))};exports[_0x715b[81]]= function(_0x9af8x28,_0x9af8x15){return db[_0x715b[56]][_0x715b[81]](_0x9af8x28[_0x715b[82]],{})[_0x715b[45]](respondWithResult(_0x9af8x15,201,_0x715b[81]))[_0x715b[75]](handleError(_0x9af8x15,null,_0x715b[81]))};exports[_0x715b[46]]= function(_0x9af8x28,_0x9af8x15){if(_0x9af8x28[_0x715b[82]][_0x715b[78]]){delete _0x9af8x28[_0x715b[82]][_0x715b[78]]};return db[_0x715b[56]][_0x715b[80]]({where:{id:_0x9af8x28[_0x715b[79]][_0x715b[78]]}})[_0x715b[45]](handleEntityNotFound(_0x9af8x15,null,_0x715b[46]))[_0x715b[45]](saveUpdates(_0x9af8x28[_0x715b[82]],null,_0x715b[46]))[_0x715b[45]](respondWithResult(_0x9af8x15,null,_0x715b[46]))[_0x715b[75]](handleError(_0x9af8x15,null,_0x715b[46]))};exports[_0x715b[48]]= function(_0x9af8x28,_0x9af8x15){return db[_0x715b[56]][_0x715b[80]]({where:{id:_0x9af8x28[_0x715b[79]][_0x715b[78]]}})[_0x715b[45]](handleEntityNotFound(_0x9af8x15,null,_0x715b[48]))[_0x715b[45]](removeEntity(_0x9af8x15,null,_0x715b[48]))[_0x715b[75]](handleError(_0x9af8x15,null,_0x715b[48]))};exports[_0x715b[83]]= function(_0x9af8x28,_0x9af8x15){return db[_0x715b[56]][_0x715b[83]]()[_0x715b[45]](respondWithResult(_0x9af8x15,null,_0x715b[83]))[_0x715b[75]](handleError(_0x9af8x15,null,_0x715b[83]))}
\ No newline at end of file
index f0f7fbf..48dd164 100644 (file)
@@ -1 +1 @@
-var _0x7f88=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x7f88[0];var _=require(_0x7f88[1]);var util=require(_0x7f88[2]);var logger=require(_0x7f88[4])(_0x7f88[3]);var attributes=require(_0x7f88[5]);module[_0x7f88[6]]= function(_0xf00ax5,_0xf00ax6){return _0xf00ax5[_0x7f88[9]](_0x7f88[7],attributes,{tableName:_0x7f88[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x16bf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x16bf[0];var _=require(_0x16bf[1]);var util=require(_0x16bf[2]);var logger=require(_0x16bf[4])(_0x16bf[3]);var attributes=require(_0x16bf[5]);module[_0x16bf[6]]= function(_0x4f28x5,_0x4f28x6){return _0x4f28x5[_0x16bf[9]](_0x16bf[7],attributes,{tableName:_0x16bf[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 2b3cecb..804682f 100644 (file)
@@ -1 +1 @@
-var _0x13d9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x13d9[0];var _=require(_0x13d9[1]);var util=require(_0x13d9[2]);var moment=require(_0x13d9[3]);var BPromise=require(_0x13d9[4]);var db=require(_0x13d9[6])[_0x13d9[5]];var utils=require(_0x13d9[7]);var logger=require(_0x13d9[9])(_0x13d9[8]);var jayson=require(_0x13d9[10]);var client=jayson[_0x13d9[12]][_0x13d9[11]]({port:9002});function respondWithRpcPromise(_0x870fxb,_0x870fxc,_0x870fxd){return  new BPromise(function(_0x870fxe,_0x870fxf){return client[_0x13d9[25]](_0x870fxb,_0x870fxd)[_0x13d9[24]](function(_0x870fx11){logger[_0x13d9[17]](_0x13d9[13],_0x870fxc,_0x13d9[16]);logger[_0x13d9[20]](_0x13d9[18],_0x870fxc,_0x13d9[16],JSON[_0x13d9[19]](_0x870fx11));if(_0x870fx11[_0x13d9[14]]){if(_0x870fx11[_0x13d9[14]][_0x13d9[21]]=== 500){logger[_0x13d9[14]](_0x13d9[13],_0x870fxc,_0x870fx11[_0x13d9[14]][_0x13d9[22]]);return _0x870fxf(_0x870fx11[_0x13d9[14]][_0x13d9[22]])};logger[_0x13d9[14]](_0x13d9[13],_0x870fxc,_0x870fx11[_0x13d9[14]][_0x13d9[22]]);return _0x870fxe(_0x870fx11[_0x13d9[14]][_0x13d9[22]])}else {logger[_0x13d9[17]](_0x13d9[13],_0x870fxc,_0x13d9[16]);_0x870fxe(_0x870fx11[_0x13d9[23]][_0x13d9[22]])}})[_0x13d9[15]](function(_0x870fx10){logger[_0x13d9[14]](_0x13d9[13],_0x870fxc,_0x870fx10);_0x870fxf(_0x870fx10)})})}
\ No newline at end of file
+var _0x9d3a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9d3a[0];var _=require(_0x9d3a[1]);var util=require(_0x9d3a[2]);var moment=require(_0x9d3a[3]);var BPromise=require(_0x9d3a[4]);var db=require(_0x9d3a[6])[_0x9d3a[5]];var utils=require(_0x9d3a[7]);var logger=require(_0x9d3a[9])(_0x9d3a[8]);var jayson=require(_0x9d3a[10]);var client=jayson[_0x9d3a[12]][_0x9d3a[11]]({port:9002});function respondWithRpcPromise(_0xe106xb,_0xe106xc,_0xe106xd){return  new BPromise(function(_0xe106xe,_0xe106xf){return client[_0x9d3a[25]](_0xe106xb,_0xe106xd)[_0x9d3a[24]](function(_0xe106x11){logger[_0x9d3a[17]](_0x9d3a[13],_0xe106xc,_0x9d3a[16]);logger[_0x9d3a[20]](_0x9d3a[18],_0xe106xc,_0x9d3a[16],JSON[_0x9d3a[19]](_0xe106x11));if(_0xe106x11[_0x9d3a[14]]){if(_0xe106x11[_0x9d3a[14]][_0x9d3a[21]]=== 500){logger[_0x9d3a[14]](_0x9d3a[13],_0xe106xc,_0xe106x11[_0x9d3a[14]][_0x9d3a[22]]);return _0xe106xf(_0xe106x11[_0x9d3a[14]][_0x9d3a[22]])};logger[_0x9d3a[14]](_0x9d3a[13],_0xe106xc,_0xe106x11[_0x9d3a[14]][_0x9d3a[22]]);return _0xe106xe(_0xe106x11[_0x9d3a[14]][_0x9d3a[22]])}else {logger[_0x9d3a[17]](_0x9d3a[13],_0xe106xc,_0x9d3a[16]);_0xe106xe(_0xe106x11[_0x9d3a[23]][_0x9d3a[22]])}})[_0x9d3a[15]](function(_0xe106x10){logger[_0x9d3a[14]](_0x9d3a[13],_0xe106xc,_0xe106x10);_0xe106xf(_0xe106x10)})})}
\ No newline at end of file
index deed253..558dade 100644 (file)
@@ -1 +1 @@
-var _0xbf77=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x5F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x76\x61\x6C","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x5F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xbf77[0];var multer=require(_0xbf77[1]);var util=require(_0xbf77[2]);var path=require(_0xbf77[3]);var express=require(_0xbf77[4]);var router=express.Router();var auth=require(_0xbf77[5]);var config=require(_0xbf77[6]);var controller=require(_0xbf77[7]);router[_0xbf77[11]](_0xbf77[8],auth[_0xbf77[9]](),controller[_0xbf77[10]]);router[_0xbf77[11]](_0xbf77[12],auth[_0xbf77[9]](),controller[_0xbf77[13]]);router[_0xbf77[11]](_0xbf77[14],auth[_0xbf77[9]](),controller[_0xbf77[15]]);router[_0xbf77[17]](_0xbf77[8],auth[_0xbf77[9]](),controller[_0xbf77[16]]);router[_0xbf77[17]](_0xbf77[14],auth[_0xbf77[9]](),controller[_0xbf77[18]]);router[_0xbf77[17]](_0xbf77[19],auth[_0xbf77[9]](),controller[_0xbf77[20]]);router[_0xbf77[22]](_0xbf77[12],auth[_0xbf77[9]](),controller[_0xbf77[21]]);router[_0xbf77[24]](_0xbf77[12],auth[_0xbf77[9]](),controller[_0xbf77[23]]);module[_0xbf77[25]]= router
\ No newline at end of file
+var _0xbaa1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x5F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x76\x61\x6C","\x2F\x3A\x69\x64\x2F\x73\x75\x62\x5F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xbaa1[0];var multer=require(_0xbaa1[1]);var util=require(_0xbaa1[2]);var path=require(_0xbaa1[3]);var express=require(_0xbaa1[4]);var router=express.Router();var auth=require(_0xbaa1[5]);var config=require(_0xbaa1[6]);var controller=require(_0xbaa1[7]);router[_0xbaa1[11]](_0xbaa1[8],auth[_0xbaa1[9]](),controller[_0xbaa1[10]]);router[_0xbaa1[11]](_0xbaa1[12],auth[_0xbaa1[9]](),controller[_0xbaa1[13]]);router[_0xbaa1[11]](_0xbaa1[14],auth[_0xbaa1[9]](),controller[_0xbaa1[15]]);router[_0xbaa1[17]](_0xbaa1[8],auth[_0xbaa1[9]](),controller[_0xbaa1[16]]);router[_0xbaa1[17]](_0xbaa1[14],auth[_0xbaa1[9]](),controller[_0xbaa1[18]]);router[_0xbaa1[17]](_0xbaa1[19],auth[_0xbaa1[9]](),controller[_0xbaa1[20]]);router[_0xbaa1[22]](_0xbaa1[12],auth[_0xbaa1[9]](),controller[_0xbaa1[21]]);router[_0xbaa1[24]](_0xbaa1[12],auth[_0xbaa1[9]](),controller[_0xbaa1[23]]);module[_0xbaa1[25]]= router
\ No newline at end of file
index 43b3d2c..f65f89c 100644 (file)
@@ -1 +1 @@
-var _0x8fd7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x8fd7[0];var Sequelize=require(_0x8fd7[1]);module[_0x8fd7[2]]= {name:{type:Sequelize[_0x8fd7[3]]},description:{type:Sequelize[_0x8fd7[3]]},interval:{type:Sequelize[_0x8fd7[3]],allowNull:true}}
\ No newline at end of file
+var _0x951d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x951d[0];var Sequelize=require(_0x951d[1]);module[_0x951d[2]]= {name:{type:Sequelize[_0x951d[3]]},description:{type:Sequelize[_0x951d[3]]},interval:{type:Sequelize[_0x951d[3]],allowNull:true}}
\ No newline at end of file
index a9c1b78..bef6a6c 100644 (file)
@@ -1 +1 @@
-var _0x347e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x2F\x72\x65\x77\x72\x69\x74\x65","\x49\x6E\x74\x65\x72\x76\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x72\x76\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C\x49\x64","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0x347e[0];var jsonpatch=require(_0x347e[1]);var rp=require(_0x347e[2]);var moment=require(_0x347e[3]);var BPromise=require(_0x347e[4]);var util=require(_0x347e[5]);var path=require(_0x347e[6]);var sox=require(_0x347e[7]);var ejs=require(_0x347e[8]);var fs=require(_0x347e[9]);var _=require(_0x347e[10]);var squel=require(_0x347e[11]);var crypto=require(_0x347e[12]);var jsforce=require(_0x347e[13]);var toCsv=require(_0x347e[14]);var qs=require(_0x347e[15]);var logger=require(_0x347e[17])(_0x347e[16]);var utils=require(_0x347e[18]);var config=require(_0x347e[19]);var db=require(_0x347e[21])[_0x347e[20]];var extensions=require(_0x347e[22]);function respondWithStatusCode(_0x6767x16,_0x6767x17,_0x6767x18){_0x6767x17= _0x6767x17|| 204;return function(_0x6767x19){if(_0x6767x19){logger[_0x347e[25]](_0x347e[23],_0x6767x18,_0x6767x17,_0x347e[24]);logger[_0x347e[27]](_0x347e[26],_0x6767x18,_0x6767x17,_0x347e[24]);return _0x6767x16[_0x347e[28]](_0x6767x17)};return _0x6767x16[_0x347e[30]](304)[_0x347e[29]]()}}function respondWithResult(_0x6767x16,_0x6767x17,_0x6767x18){_0x6767x17= _0x6767x17|| 200;return function(_0x6767x19){if(_0x6767x19){logger[_0x347e[25]](_0x347e[23],_0x6767x18,_0x6767x17,_0x347e[31]);logger[_0x347e[27]](_0x347e[26],_0x6767x18,_0x6767x17,_0x347e[31],JSON[_0x347e[32]](_0x6767x19));return _0x6767x16[_0x347e[30]](_0x6767x17)[_0x347e[33]](_0x6767x19)};return _0x6767x16[_0x347e[30]](304)[_0x347e[29]]()}}function respondWithFilteredResult(_0x6767x16,_0x6767x1c,_0x6767x18){return function(_0x6767x19){if(_0x6767x19){var _0x6767x1d=_0x6767x19[_0x347e[34]],_0x6767x1e=_0x6767x1c[_0x347e[35]],_0x6767x1f=_0x6767x1c[_0x347e[35]]+ _0x6767x1c[_0x347e[36]],_0x6767x17;if(_0x6767x1f>= _0x6767x1d){_0x6767x1f= _0x6767x1d;_0x6767x17= 200}else {_0x6767x17= 206};_0x6767x16[_0x347e[30]](_0x6767x17);logger[_0x347e[25]](_0x347e[23],_0x6767x18,_0x6767x17,_0x347e[37]);logger[_0x347e[27]](_0x347e[26],_0x6767x18,_0x6767x17,_0x347e[31],JSON[_0x347e[32]](_0x6767x19));return _0x6767x16[_0x347e[41]](_0x347e[38],_0x6767x1e+ _0x347e[39]+ _0x6767x1f+ _0x347e[40]+ _0x6767x1d)[_0x347e[33]](_0x6767x19)};return null}}function patchUpdates(_0x6767x21){return function(_0x6767x19){try{jsonpatch[_0x347e[42]](_0x6767x19,_0x6767x21,true)}catch(err){return BPromise[_0x347e[43]](err)};return _0x6767x19[_0x347e[44]]()}}function saveUpdates(_0x6767x23,_0x6767x17,_0x6767x18){return function(_0x6767x19){if(_0x6767x19){return _0x6767x19[_0x347e[47]](_0x6767x23)[_0x347e[46]](function(_0x6767x24){logger[_0x347e[25]](_0x347e[23],_0x6767x18,_0x6767x17,_0x347e[45]);logger[_0x347e[27]](_0x347e[26],_0x6767x18,_0x6767x17,_0x347e[45],JSON[_0x347e[32]](_0x6767x19));return _0x6767x24})};return null}}function removeEntity(_0x6767x16,_0x6767x17,_0x6767x18){return function(_0x6767x19){if(_0x6767x19){return _0x6767x19[_0x347e[49]]()[_0x347e[46]](function(){logger[_0x347e[25]](_0x347e[23],_0x6767x18,_0x6767x17,_0x347e[48]);logger[_0x347e[27]](_0x347e[26],_0x6767x18,_0x6767x17,_0x347e[48],JSON[_0x347e[32]](_0x6767x19));_0x6767x16[_0x347e[30]](204)[_0x347e[29]]()})}}}function handleEntityNotFound(_0x6767x16,_0x6767x17,_0x6767x18){return function(_0x6767x19){if(!_0x6767x19){logger[_0x347e[51]](_0x347e[23],_0x6767x18,404,_0x347e[50]);_0x6767x16[_0x347e[30]](404)[_0x347e[29]]();return null};return _0x6767x19}}function handleError(_0x6767x16,_0x6767x17,_0x6767x18){_0x6767x17= _0x6767x17|| 500;return function(_0x6767x28){logger[_0x347e[51]](_0x347e[23],_0x6767x18,_0x6767x17,JSON[_0x347e[32]](_0x6767x28));delete _0x6767x28[_0x347e[52]];_0x6767x16[_0x347e[30]](_0x6767x17)[_0x347e[53]](_0x6767x28)}}exports[_0x347e[54]]= function(_0x6767x29,_0x6767x16){var _0x6767x1c={},_0x6767x2a={};_0x6767x2a[_0x347e[55]]= _[_0x347e[58]](db[_0x347e[57]][_0x347e[56]]);_0x6767x2a[_0x347e[59]]= _[_0x347e[58]](_0x6767x29[_0x347e[59]]);_0x6767x2a[_0x347e[60]]= _[_0x347e[61]](_0x6767x2a[_0x347e[55]],_0x6767x2a[_0x347e[59]]);_0x6767x1c[_0x347e[62]]= _[_0x347e[61]](_0x6767x2a[_0x347e[55]],qs[_0x347e[63]](_0x6767x29[_0x347e[59]][_0x347e[63]]));_0x6767x1c[_0x347e[62]]= (_0x6767x1c[_0x347e[62]][_0x347e[64]])?_0x6767x1c[_0x347e[62]]:_0x6767x2a[_0x347e[55]];if(!_0x6767x29[_0x347e[59]][_0x347e[66]](_0x347e[65])){_0x6767x1c[_0x347e[36]]= qs[_0x347e[36]](_0x6767x29[_0x347e[59]][_0x347e[36]]);_0x6767x1c[_0x347e[35]]= qs[_0x347e[35]](_0x6767x29[_0x347e[59]][_0x347e[35]])};_0x6767x1c[_0x347e[67]]= qs[_0x347e[68]](_0x6767x29[_0x347e[59]][_0x347e[68]]);_0x6767x1c[_0x347e[69]]= qs[_0x347e[60]](_[_0x347e[70]](_0x6767x29[_0x347e[59]],_0x6767x2a[_0x347e[60]]));if(_0x6767x29[_0x347e[59]][_0x347e[71]]){_0x6767x1c[_0x347e[69]]= _[_0x347e[74]](_0x6767x1c[_0x347e[69]],{$or:_[_0x347e[73]](_0x6767x1c[_0x347e[62]],function(_0x6767x2b){var _0x6767x2c={};_0x6767x2c[_0x6767x2b]= {$like:_0x347e[72]+ _0x6767x29[_0x347e[59]][_0x347e[71]]+ _0x347e[72]};return _0x6767x2c})})};_0x6767x1c= _[_0x347e[74]]({},_0x6767x1c,_0x6767x29[_0x347e[75]]);return db[_0x347e[57]][_0x347e[77]](_0x6767x1c)[_0x347e[46]](respondWithFilteredResult(_0x6767x16,_0x6767x1c,_0x347e[54]))[_0x347e[76]](handleError(_0x6767x16,null,_0x347e[54]))};exports[_0x347e[78]]= function(_0x6767x29,_0x6767x16){var _0x6767x1c={raw:true,where:{id:_0x6767x29[_0x347e[80]][_0x347e[79]]}},_0x6767x2a={};_0x6767x2a[_0x347e[55]]= _[_0x347e[58]](db[_0x347e[57]][_0x347e[56]]);_0x6767x2a[_0x347e[59]]= _[_0x347e[58]](_0x6767x29[_0x347e[59]]);_0x6767x2a[_0x347e[60]]= _[_0x347e[61]](_0x6767x2a[_0x347e[55]],_0x6767x2a[_0x347e[59]]);_0x6767x1c[_0x347e[62]]= _[_0x347e[61]](_0x6767x2a[_0x347e[55]],qs[_0x347e[63]](_0x6767x29[_0x347e[59]][_0x347e[63]]));_0x6767x1c[_0x347e[62]]= (_0x6767x1c[_0x347e[62]][_0x347e[64]])?_0x6767x1c[_0x347e[62]]:_0x6767x2a[_0x347e[55]];_0x6767x1c= _[_0x347e[74]]({},_0x6767x1c,_0x6767x29[_0x347e[75]]);return db[_0x347e[57]][_0x347e[81]](_0x6767x1c)[_0x347e[46]](handleEntityNotFound(_0x6767x16,null,_0x347e[78]))[_0x347e[46]](respondWithResult(_0x6767x16,null,_0x347e[78]))[_0x347e[76]](handleError(_0x6767x16,null,_0x347e[78]))};exports[_0x347e[82]]= function(_0x6767x29,_0x6767x16){return db[_0x347e[57]][_0x347e[82]](_0x6767x29[_0x347e[83]],{})[_0x347e[46]](respondWithResult(_0x6767x16,201,_0x347e[82]))[_0x347e[76]](handleError(_0x6767x16,null,_0x347e[82]))};exports[_0x347e[47]]= function(_0x6767x29,_0x6767x16){if(_0x6767x29[_0x347e[83]][_0x347e[79]]){delete _0x6767x29[_0x347e[83]][_0x347e[79]]};return db[_0x347e[57]][_0x347e[81]]({where:{id:_0x6767x29[_0x347e[80]][_0x347e[79]]}})[_0x347e[46]](handleEntityNotFound(_0x6767x16,null,_0x347e[47]))[_0x347e[46]](saveUpdates(_0x6767x29[_0x347e[83]],null,_0x347e[47]))[_0x347e[46]](respondWithResult(_0x6767x16,null,_0x347e[47]))[_0x347e[76]](handleError(_0x6767x16,null,_0x347e[47]))};exports[_0x347e[49]]= function(_0x6767x29,_0x6767x16){return db[_0x347e[57]][_0x347e[81]]({where:{id:_0x6767x29[_0x347e[80]][_0x347e[79]]}})[_0x347e[46]](handleEntityNotFound(_0x6767x16,null,_0x347e[49]))[_0x347e[46]](removeEntity(_0x6767x16,null,_0x347e[49]))[_0x347e[76]](handleError(_0x6767x16,null,_0x347e[49]))};exports[_0x347e[84]]= function(_0x6767x29,_0x6767x16,_0x6767x2d){if(_0x6767x29[_0x347e[83]][_0x347e[79]]){delete _0x6767x29[_0x347e[83]][_0x347e[79]]};return db[_0x347e[57]][_0x347e[81]]({where:{id:_0x6767x29[_0x347e[80]][_0x347e[79]]}})[_0x347e[46]](handleEntityNotFound(_0x6767x16,null,_0x347e[84]))[_0x347e[46]](function(_0x6767x19){if(_0x6767x19){_0x6767x29[_0x347e[83]][_0x347e[85]]= _0x6767x19[_0x347e[79]];return db[_0x347e[57]][_0x347e[82]](_0x6767x29[_0x347e[83]])}})[_0x347e[46]](respondWithResult(_0x6767x16,null,_0x347e[84]))[_0x347e[76]](handleError(_0x6767x16,null,_0x347e[84]))};exports[_0x347e[86]]= function(_0x6767x29,_0x6767x19,_0x6767x2d){var _0x6767x1c={};var _0x6767x2a={};var _0x6767x2e;var _0x6767x1d;return db[_0x347e[57]][_0x347e[87]]({where:{id:_0x6767x29[_0x347e[80]][_0x347e[79]]}})[_0x347e[46]](handleEntityNotFound(_0x6767x19,null,_0x347e[86]))[_0x347e[46]](function(_0x6767x19){if(_0x6767x19){_0x6767x2e= _0x6767x19;_0x6767x2a[_0x347e[55]]= _[_0x347e[58]](db[_0x347e[57]][_0x347e[56]]);_0x6767x2a[_0x347e[59]]= _[_0x347e[58]](_0x6767x29[_0x347e[59]]);_0x6767x2a[_0x347e[60]]= _[_0x347e[61]](_0x6767x2a[_0x347e[55]],_0x6767x2a[_0x347e[59]]);_0x6767x1c[_0x347e[62]]= _[_0x347e[61]](_0x6767x2a[_0x347e[55]],qs[_0x347e[63]](_0x6767x29[_0x347e[59]][_0x347e[63]]));_0x6767x1c[_0x347e[62]]= (_0x6767x1c[_0x347e[62]][_0x347e[64]])?_0x6767x1c[_0x347e[62]]:_0x6767x2a[_0x347e[55]];_0x6767x1c[_0x347e[67]]= qs[_0x347e[68]](_0x6767x29[_0x347e[59]][_0x347e[68]]);_0x6767x1c[_0x347e[69]]= qs[_0x347e[60]](_[_0x347e[70]](_0x6767x29[_0x347e[59]],_0x6767x2a[_0x347e[60]]));if(_0x6767x29[_0x347e[59]][_0x347e[71]]){_0x6767x1c[_0x347e[69]]= _[_0x347e[74]](_0x6767x1c[_0x347e[69]],{$or:_[_0x347e[73]](_0x6767x1c[_0x347e[62]],function(_0x6767x2b){var _0x6767x2c={};_0x6767x2c[_0x6767x2b]= {$like:_0x347e[72]+ _0x6767x29[_0x347e[59]][_0x347e[71]]+ _0x347e[72]};return _0x6767x2c})})};_0x6767x1c= _[_0x347e[74]]({},_0x6767x1c,_0x6767x29[_0x347e[75]]);return _0x6767x2e[_0x347e[86]](_0x6767x1c)}})[_0x347e[46]](function(_0x6767x30){if(_0x6767x30){_0x6767x1d= _0x6767x30[_0x347e[64]];if(!_0x6767x29[_0x347e[59]][_0x347e[66]](_0x347e[65])){_0x6767x1c[_0x347e[36]]= qs[_0x347e[36]](_0x6767x29[_0x347e[59]][_0x347e[36]]);_0x6767x1c[_0x347e[35]]= qs[_0x347e[35]](_0x6767x29[_0x347e[59]][_0x347e[35]])};return _0x6767x2e[_0x347e[86]](_0x6767x1c)}})[_0x347e[46]](function(_0x6767x2f){return _0x6767x2f?{count:_0x6767x1d,rows:_0x6767x2f}:null})[_0x347e[46]](respondWithResult(_0x6767x19,null,_0x347e[86]))[_0x347e[76]](handleError(_0x6767x19,null,_0x347e[86]))};exports[_0x347e[88]]= function(_0x6767x29,_0x6767x16,_0x6767x2d){return db[_0x347e[57]][_0x347e[87]]({where:{id:_0x6767x29[_0x347e[80]][_0x347e[79]]}})[_0x347e[46]](handleEntityNotFound(_0x6767x16,null,_0x347e[88]))[_0x347e[46]](function(_0x6767x19){if(_0x6767x19){return db[_0x347e[92]][_0x347e[91]](function(_0x6767x31){return db[_0x347e[57]][_0x347e[49]]({where:{IntervalId:_0x6767x29[_0x347e[80]][_0x347e[79]]},transaction:_0x6767x31})[_0x347e[46]](function(_0x6767x32){var _0x6767x33=_[_0x347e[73]](_0x6767x29[_0x347e[83]],function(_0x6767x34){delete _0x6767x34[_0x347e[79]];_0x6767x34[_0x347e[85]]= _0x6767x29[_0x347e[80]][_0x347e[79]];return _0x6767x34});return db[_0x347e[57]][_0x347e[90]](_0x6767x33,{transaction:_0x6767x31})})})[_0x347e[46]](function(){return db[_0x347e[57]][_0x347e[89]]({where:{IntervalId:_0x6767x29[_0x347e[80]][_0x347e[79]]}})})}})[_0x347e[46]](respondWithResult(_0x6767x16,null,_0x347e[88]))[_0x347e[76]](handleError(_0x6767x16,null,_0x347e[88]))}
\ No newline at end of file
+var _0x852a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x2F\x72\x65\x77\x72\x69\x74\x65","\x49\x6E\x74\x65\x72\x76\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x72\x76\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C\x49\x64","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0x852a[0];var jsonpatch=require(_0x852a[1]);var rp=require(_0x852a[2]);var moment=require(_0x852a[3]);var BPromise=require(_0x852a[4]);var util=require(_0x852a[5]);var path=require(_0x852a[6]);var sox=require(_0x852a[7]);var ejs=require(_0x852a[8]);var fs=require(_0x852a[9]);var _=require(_0x852a[10]);var squel=require(_0x852a[11]);var crypto=require(_0x852a[12]);var jsforce=require(_0x852a[13]);var toCsv=require(_0x852a[14]);var qs=require(_0x852a[15]);var logger=require(_0x852a[17])(_0x852a[16]);var utils=require(_0x852a[18]);var config=require(_0x852a[19]);var db=require(_0x852a[21])[_0x852a[20]];var extensions=require(_0x852a[22]);function respondWithStatusCode(_0x8522x16,_0x8522x17,_0x8522x18){_0x8522x17= _0x8522x17|| 204;return function(_0x8522x19){if(_0x8522x19){logger[_0x852a[25]](_0x852a[23],_0x8522x18,_0x8522x17,_0x852a[24]);logger[_0x852a[27]](_0x852a[26],_0x8522x18,_0x8522x17,_0x852a[24]);return _0x8522x16[_0x852a[28]](_0x8522x17)};return _0x8522x16[_0x852a[30]](304)[_0x852a[29]]()}}function respondWithResult(_0x8522x16,_0x8522x17,_0x8522x18){_0x8522x17= _0x8522x17|| 200;return function(_0x8522x19){if(_0x8522x19){logger[_0x852a[25]](_0x852a[23],_0x8522x18,_0x8522x17,_0x852a[31]);logger[_0x852a[27]](_0x852a[26],_0x8522x18,_0x8522x17,_0x852a[31],JSON[_0x852a[32]](_0x8522x19));return _0x8522x16[_0x852a[30]](_0x8522x17)[_0x852a[33]](_0x8522x19)};return _0x8522x16[_0x852a[30]](304)[_0x852a[29]]()}}function respondWithFilteredResult(_0x8522x16,_0x8522x1c,_0x8522x18){return function(_0x8522x19){if(_0x8522x19){var _0x8522x1d=_0x8522x19[_0x852a[34]],_0x8522x1e=_0x8522x1c[_0x852a[35]],_0x8522x1f=_0x8522x1c[_0x852a[35]]+ _0x8522x1c[_0x852a[36]],_0x8522x17;if(_0x8522x1f>= _0x8522x1d){_0x8522x1f= _0x8522x1d;_0x8522x17= 200}else {_0x8522x17= 206};_0x8522x16[_0x852a[30]](_0x8522x17);logger[_0x852a[25]](_0x852a[23],_0x8522x18,_0x8522x17,_0x852a[37]);logger[_0x852a[27]](_0x852a[26],_0x8522x18,_0x8522x17,_0x852a[31],JSON[_0x852a[32]](_0x8522x19));return _0x8522x16[_0x852a[41]](_0x852a[38],_0x8522x1e+ _0x852a[39]+ _0x8522x1f+ _0x852a[40]+ _0x8522x1d)[_0x852a[33]](_0x8522x19)};return null}}function patchUpdates(_0x8522x21){return function(_0x8522x19){try{jsonpatch[_0x852a[42]](_0x8522x19,_0x8522x21,true)}catch(err){return BPromise[_0x852a[43]](err)};return _0x8522x19[_0x852a[44]]()}}function saveUpdates(_0x8522x23,_0x8522x17,_0x8522x18){return function(_0x8522x19){if(_0x8522x19){return _0x8522x19[_0x852a[47]](_0x8522x23)[_0x852a[46]](function(_0x8522x24){logger[_0x852a[25]](_0x852a[23],_0x8522x18,_0x8522x17,_0x852a[45]);logger[_0x852a[27]](_0x852a[26],_0x8522x18,_0x8522x17,_0x852a[45],JSON[_0x852a[32]](_0x8522x19));return _0x8522x24})};return null}}function removeEntity(_0x8522x16,_0x8522x17,_0x8522x18){return function(_0x8522x19){if(_0x8522x19){return _0x8522x19[_0x852a[49]]()[_0x852a[46]](function(){logger[_0x852a[25]](_0x852a[23],_0x8522x18,_0x8522x17,_0x852a[48]);logger[_0x852a[27]](_0x852a[26],_0x8522x18,_0x8522x17,_0x852a[48],JSON[_0x852a[32]](_0x8522x19));_0x8522x16[_0x852a[30]](204)[_0x852a[29]]()})}}}function handleEntityNotFound(_0x8522x16,_0x8522x17,_0x8522x18){return function(_0x8522x19){if(!_0x8522x19){logger[_0x852a[51]](_0x852a[23],_0x8522x18,404,_0x852a[50]);_0x8522x16[_0x852a[30]](404)[_0x852a[29]]();return null};return _0x8522x19}}function handleError(_0x8522x16,_0x8522x17,_0x8522x18){_0x8522x17= _0x8522x17|| 500;return function(_0x8522x28){logger[_0x852a[51]](_0x852a[23],_0x8522x18,_0x8522x17,JSON[_0x852a[32]](_0x8522x28));delete _0x8522x28[_0x852a[52]];_0x8522x16[_0x852a[30]](_0x8522x17)[_0x852a[53]](_0x8522x28)}}exports[_0x852a[54]]= function(_0x8522x29,_0x8522x16){var _0x8522x1c={},_0x8522x2a={};_0x8522x2a[_0x852a[55]]= _[_0x852a[58]](db[_0x852a[57]][_0x852a[56]]);_0x8522x2a[_0x852a[59]]= _[_0x852a[58]](_0x8522x29[_0x852a[59]]);_0x8522x2a[_0x852a[60]]= _[_0x852a[61]](_0x8522x2a[_0x852a[55]],_0x8522x2a[_0x852a[59]]);_0x8522x1c[_0x852a[62]]= _[_0x852a[61]](_0x8522x2a[_0x852a[55]],qs[_0x852a[63]](_0x8522x29[_0x852a[59]][_0x852a[63]]));_0x8522x1c[_0x852a[62]]= (_0x8522x1c[_0x852a[62]][_0x852a[64]])?_0x8522x1c[_0x852a[62]]:_0x8522x2a[_0x852a[55]];if(!_0x8522x29[_0x852a[59]][_0x852a[66]](_0x852a[65])){_0x8522x1c[_0x852a[36]]= qs[_0x852a[36]](_0x8522x29[_0x852a[59]][_0x852a[36]]);_0x8522x1c[_0x852a[35]]= qs[_0x852a[35]](_0x8522x29[_0x852a[59]][_0x852a[35]])};_0x8522x1c[_0x852a[67]]= qs[_0x852a[68]](_0x8522x29[_0x852a[59]][_0x852a[68]]);_0x8522x1c[_0x852a[69]]= qs[_0x852a[60]](_[_0x852a[70]](_0x8522x29[_0x852a[59]],_0x8522x2a[_0x852a[60]]));if(_0x8522x29[_0x852a[59]][_0x852a[71]]){_0x8522x1c[_0x852a[69]]= _[_0x852a[74]](_0x8522x1c[_0x852a[69]],{$or:_[_0x852a[73]](_0x8522x1c[_0x852a[62]],function(_0x8522x2b){var _0x8522x2c={};_0x8522x2c[_0x8522x2b]= {$like:_0x852a[72]+ _0x8522x29[_0x852a[59]][_0x852a[71]]+ _0x852a[72]};return _0x8522x2c})})};_0x8522x1c= _[_0x852a[74]]({},_0x8522x1c,_0x8522x29[_0x852a[75]]);return db[_0x852a[57]][_0x852a[77]](_0x8522x1c)[_0x852a[46]](respondWithFilteredResult(_0x8522x16,_0x8522x1c,_0x852a[54]))[_0x852a[76]](handleError(_0x8522x16,null,_0x852a[54]))};exports[_0x852a[78]]= function(_0x8522x29,_0x8522x16){var _0x8522x1c={raw:true,where:{id:_0x8522x29[_0x852a[80]][_0x852a[79]]}},_0x8522x2a={};_0x8522x2a[_0x852a[55]]= _[_0x852a[58]](db[_0x852a[57]][_0x852a[56]]);_0x8522x2a[_0x852a[59]]= _[_0x852a[58]](_0x8522x29[_0x852a[59]]);_0x8522x2a[_0x852a[60]]= _[_0x852a[61]](_0x8522x2a[_0x852a[55]],_0x8522x2a[_0x852a[59]]);_0x8522x1c[_0x852a[62]]= _[_0x852a[61]](_0x8522x2a[_0x852a[55]],qs[_0x852a[63]](_0x8522x29[_0x852a[59]][_0x852a[63]]));_0x8522x1c[_0x852a[62]]= (_0x8522x1c[_0x852a[62]][_0x852a[64]])?_0x8522x1c[_0x852a[62]]:_0x8522x2a[_0x852a[55]];_0x8522x1c= _[_0x852a[74]]({},_0x8522x1c,_0x8522x29[_0x852a[75]]);return db[_0x852a[57]][_0x852a[81]](_0x8522x1c)[_0x852a[46]](handleEntityNotFound(_0x8522x16,null,_0x852a[78]))[_0x852a[46]](respondWithResult(_0x8522x16,null,_0x852a[78]))[_0x852a[76]](handleError(_0x8522x16,null,_0x852a[78]))};exports[_0x852a[82]]= function(_0x8522x29,_0x8522x16){return db[_0x852a[57]][_0x852a[82]](_0x8522x29[_0x852a[83]],{})[_0x852a[46]](respondWithResult(_0x8522x16,201,_0x852a[82]))[_0x852a[76]](handleError(_0x8522x16,null,_0x852a[82]))};exports[_0x852a[47]]= function(_0x8522x29,_0x8522x16){if(_0x8522x29[_0x852a[83]][_0x852a[79]]){delete _0x8522x29[_0x852a[83]][_0x852a[79]]};return db[_0x852a[57]][_0x852a[81]]({where:{id:_0x8522x29[_0x852a[80]][_0x852a[79]]}})[_0x852a[46]](handleEntityNotFound(_0x8522x16,null,_0x852a[47]))[_0x852a[46]](saveUpdates(_0x8522x29[_0x852a[83]],null,_0x852a[47]))[_0x852a[46]](respondWithResult(_0x8522x16,null,_0x852a[47]))[_0x852a[76]](handleError(_0x8522x16,null,_0x852a[47]))};exports[_0x852a[49]]= function(_0x8522x29,_0x8522x16){return db[_0x852a[57]][_0x852a[81]]({where:{id:_0x8522x29[_0x852a[80]][_0x852a[79]]}})[_0x852a[46]](handleEntityNotFound(_0x8522x16,null,_0x852a[49]))[_0x852a[46]](removeEntity(_0x8522x16,null,_0x852a[49]))[_0x852a[76]](handleError(_0x8522x16,null,_0x852a[49]))};exports[_0x852a[84]]= function(_0x8522x29,_0x8522x16,_0x8522x2d){if(_0x8522x29[_0x852a[83]][_0x852a[79]]){delete _0x8522x29[_0x852a[83]][_0x852a[79]]};return db[_0x852a[57]][_0x852a[81]]({where:{id:_0x8522x29[_0x852a[80]][_0x852a[79]]}})[_0x852a[46]](handleEntityNotFound(_0x8522x16,null,_0x852a[84]))[_0x852a[46]](function(_0x8522x19){if(_0x8522x19){_0x8522x29[_0x852a[83]][_0x852a[85]]= _0x8522x19[_0x852a[79]];return db[_0x852a[57]][_0x852a[82]](_0x8522x29[_0x852a[83]])}})[_0x852a[46]](respondWithResult(_0x8522x16,null,_0x852a[84]))[_0x852a[76]](handleError(_0x8522x16,null,_0x852a[84]))};exports[_0x852a[86]]= function(_0x8522x29,_0x8522x19,_0x8522x2d){var _0x8522x1c={};var _0x8522x2a={};var _0x8522x2e;var _0x8522x1d;return db[_0x852a[57]][_0x852a[87]]({where:{id:_0x8522x29[_0x852a[80]][_0x852a[79]]}})[_0x852a[46]](handleEntityNotFound(_0x8522x19,null,_0x852a[86]))[_0x852a[46]](function(_0x8522x19){if(_0x8522x19){_0x8522x2e= _0x8522x19;_0x8522x2a[_0x852a[55]]= _[_0x852a[58]](db[_0x852a[57]][_0x852a[56]]);_0x8522x2a[_0x852a[59]]= _[_0x852a[58]](_0x8522x29[_0x852a[59]]);_0x8522x2a[_0x852a[60]]= _[_0x852a[61]](_0x8522x2a[_0x852a[55]],_0x8522x2a[_0x852a[59]]);_0x8522x1c[_0x852a[62]]= _[_0x852a[61]](_0x8522x2a[_0x852a[55]],qs[_0x852a[63]](_0x8522x29[_0x852a[59]][_0x852a[63]]));_0x8522x1c[_0x852a[62]]= (_0x8522x1c[_0x852a[62]][_0x852a[64]])?_0x8522x1c[_0x852a[62]]:_0x8522x2a[_0x852a[55]];_0x8522x1c[_0x852a[67]]= qs[_0x852a[68]](_0x8522x29[_0x852a[59]][_0x852a[68]]);_0x8522x1c[_0x852a[69]]= qs[_0x852a[60]](_[_0x852a[70]](_0x8522x29[_0x852a[59]],_0x8522x2a[_0x852a[60]]));if(_0x8522x29[_0x852a[59]][_0x852a[71]]){_0x8522x1c[_0x852a[69]]= _[_0x852a[74]](_0x8522x1c[_0x852a[69]],{$or:_[_0x852a[73]](_0x8522x1c[_0x852a[62]],function(_0x8522x2b){var _0x8522x2c={};_0x8522x2c[_0x8522x2b]= {$like:_0x852a[72]+ _0x8522x29[_0x852a[59]][_0x852a[71]]+ _0x852a[72]};return _0x8522x2c})})};_0x8522x1c= _[_0x852a[74]]({},_0x8522x1c,_0x8522x29[_0x852a[75]]);return _0x8522x2e[_0x852a[86]](_0x8522x1c)}})[_0x852a[46]](function(_0x8522x30){if(_0x8522x30){_0x8522x1d= _0x8522x30[_0x852a[64]];if(!_0x8522x29[_0x852a[59]][_0x852a[66]](_0x852a[65])){_0x8522x1c[_0x852a[36]]= qs[_0x852a[36]](_0x8522x29[_0x852a[59]][_0x852a[36]]);_0x8522x1c[_0x852a[35]]= qs[_0x852a[35]](_0x8522x29[_0x852a[59]][_0x852a[35]])};return _0x8522x2e[_0x852a[86]](_0x8522x1c)}})[_0x852a[46]](function(_0x8522x2f){return _0x8522x2f?{count:_0x8522x1d,rows:_0x8522x2f}:null})[_0x852a[46]](respondWithResult(_0x8522x19,null,_0x852a[86]))[_0x852a[76]](handleError(_0x8522x19,null,_0x852a[86]))};exports[_0x852a[88]]= function(_0x8522x29,_0x8522x16,_0x8522x2d){return db[_0x852a[57]][_0x852a[87]]({where:{id:_0x8522x29[_0x852a[80]][_0x852a[79]]}})[_0x852a[46]](handleEntityNotFound(_0x8522x16,null,_0x852a[88]))[_0x852a[46]](function(_0x8522x19){if(_0x8522x19){return db[_0x852a[92]][_0x852a[91]](function(_0x8522x31){return db[_0x852a[57]][_0x852a[49]]({where:{IntervalId:_0x8522x29[_0x852a[80]][_0x852a[79]]},transaction:_0x8522x31})[_0x852a[46]](function(_0x8522x32){var _0x8522x33=_[_0x852a[73]](_0x8522x29[_0x852a[83]],function(_0x8522x34){delete _0x8522x34[_0x852a[79]];_0x8522x34[_0x852a[85]]= _0x8522x29[_0x852a[80]][_0x852a[79]];return _0x8522x34});return db[_0x852a[57]][_0x852a[90]](_0x8522x33,{transaction:_0x8522x31})})})[_0x852a[46]](function(){return db[_0x852a[57]][_0x852a[89]]({where:{IntervalId:_0x8522x29[_0x852a[80]][_0x852a[79]]}})})}})[_0x852a[46]](respondWithResult(_0x8522x16,null,_0x852a[88]))[_0x852a[76]](handleError(_0x8522x16,null,_0x852a[88]))}
\ No newline at end of file
index 38df5dc..d57262e 100644 (file)
@@ -1 +1 @@
-var _0xd95b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x2F\x72\x65\x77\x72\x69\x74\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x74\x6F\x6F\x6C\x73\x5F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x72\x65\x77\x72\x69\x74\x65","\x64\x65\x66\x69\x6E\x65"];_0xd95b[0];var _=require(_0xd95b[1]);var util=require(_0xd95b[2]);var logger=require(_0xd95b[4])(_0xd95b[3]);var attributes=require(_0xd95b[5]);var extensions=require(_0xd95b[6]);module[_0xd95b[7]]= function(_0xab22x6,_0xab22x7){return _0xab22x6[_0xd95b[11]](_0xd95b[8],attributes,{tableName:_0xd95b[9],paranoid:false,indexes:[],timestamps:true,hooks:{afterCreate:function(_0xab22x8,_0xab22x9){extensions[_0xd95b[10]](_0xab22x6,_0xab22x8)},afterBulkCreate:function(_0xab22xa,_0xab22x9,_0xab22xb){_0xab22xb();extensions[_0xd95b[10]](_0xab22x6,_0xab22xa[0])},afterUpdate:function(_0xab22x8,_0xab22x9){extensions[_0xd95b[10]](_0xab22x6,_0xab22x8)},afterDestroy:function(_0xab22x8,_0xab22x9){extensions[_0xd95b[10]](_0xab22x6,_0xab22x8)}}})}
\ No newline at end of file
+var _0x3eaa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x2F\x72\x65\x77\x72\x69\x74\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x74\x6F\x6F\x6C\x73\x5F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x72\x65\x77\x72\x69\x74\x65","\x64\x65\x66\x69\x6E\x65"];_0x3eaa[0];var _=require(_0x3eaa[1]);var util=require(_0x3eaa[2]);var logger=require(_0x3eaa[4])(_0x3eaa[3]);var attributes=require(_0x3eaa[5]);var extensions=require(_0x3eaa[6]);module[_0x3eaa[7]]= function(_0xfc31x6,_0xfc31x7){return _0xfc31x6[_0x3eaa[11]](_0x3eaa[8],attributes,{tableName:_0x3eaa[9],paranoid:false,indexes:[],timestamps:true,hooks:{afterCreate:function(_0xfc31x8,_0xfc31x9){extensions[_0x3eaa[10]](_0xfc31x6,_0xfc31x8)},afterBulkCreate:function(_0xfc31xa,_0xfc31x9,_0xfc31xb){_0xfc31xb();extensions[_0x3eaa[10]](_0xfc31x6,_0xfc31xa[0])},afterUpdate:function(_0xfc31x8,_0xfc31x9){extensions[_0x3eaa[10]](_0xfc31x6,_0xfc31x8)},afterDestroy:function(_0xfc31x8,_0xfc31x9){extensions[_0x3eaa[10]](_0xfc31x6,_0xfc31x8)}}})}
\ No newline at end of file
index 2348f6b..27391f9 100644 (file)
@@ -1 +1 @@
-var _0x3adc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x49\x6E\x74\x65\x72\x76\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x72\x76\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x49\x6E\x74\x65\x72\x76\x61\x6C","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x49\x6E\x74\x65\x72\x76\x61\x6C"];_0x3adc[0];var _=require(_0x3adc[1]);var util=require(_0x3adc[2]);var moment=require(_0x3adc[3]);var BPromise=require(_0x3adc[4]);var db=require(_0x3adc[6])[_0x3adc[5]];var utils=require(_0x3adc[7]);var logger=require(_0x3adc[9])(_0x3adc[8]);var jayson=require(_0x3adc[10]);var client=jayson[_0x3adc[12]][_0x3adc[11]]({port:9002});function respondWithRpcPromise(_0x625bxb,_0x625bxc,_0x625bxd){return  new BPromise(function(_0x625bxe,_0x625bxf){return client[_0x3adc[25]](_0x625bxb,_0x625bxd)[_0x3adc[24]](function(_0x625bx11){logger[_0x3adc[17]](_0x3adc[13],_0x625bxc,_0x3adc[16]);logger[_0x3adc[20]](_0x3adc[18],_0x625bxc,_0x3adc[16],JSON[_0x3adc[19]](_0x625bx11));if(_0x625bx11[_0x3adc[14]]){if(_0x625bx11[_0x3adc[14]][_0x3adc[21]]=== 500){logger[_0x3adc[14]](_0x3adc[13],_0x625bxc,_0x625bx11[_0x3adc[14]][_0x3adc[22]]);return _0x625bxf(_0x625bx11[_0x3adc[14]][_0x3adc[22]])};logger[_0x3adc[14]](_0x3adc[13],_0x625bxc,_0x625bx11[_0x3adc[14]][_0x3adc[22]]);return _0x625bxe(_0x625bx11[_0x3adc[14]][_0x3adc[22]])}else {logger[_0x3adc[17]](_0x3adc[13],_0x625bxc,_0x3adc[16]);_0x625bxe(_0x625bx11[_0x3adc[23]][_0x3adc[22]])}})[_0x3adc[15]](function(_0x625bx10){logger[_0x3adc[14]](_0x3adc[13],_0x625bxc,_0x625bx10);_0x625bxf(_0x625bx10)})})}exports[_0x3adc[26]]= function(_0x625bxd){var _0x625bx12=this;return  new Promise(function(_0x625bxe,_0x625bxf){return db[_0x3adc[36]][_0x3adc[35]]({raw:_0x625bxd[_0x3adc[27]]?(_0x625bxd[_0x3adc[27]][_0x3adc[28]]=== undefined)?true:false:true,where:_0x625bxd[_0x3adc[27]]?_0x625bxd[_0x3adc[27]][_0x3adc[29]]|| null:null,attributes:_0x625bxd[_0x3adc[27]]?_0x625bxd[_0x3adc[27]][_0x3adc[30]]|| null:null,include:_0x625bxd[_0x3adc[27]]?(_0x625bxd[_0x3adc[27]][_0x3adc[31]]?_[_0x3adc[34]](_0x625bxd[_0x3adc[27]][_0x3adc[31]],function(_0x625bx13){return {model:db[_0x625bx13[_0x3adc[32]]],as:_0x625bx13[_0x3adc[33]],attributes:_0x625bx13[_0x3adc[30]],include:_0x625bx13[_0x3adc[31]]?_[_0x3adc[34]](_0x625bx13[_0x3adc[31]],function(_0x625bx14){return {model:db[_0x625bx14[_0x3adc[32]]],as:_0x625bx14[_0x3adc[33]],attributes:_0x625bx14[_0x3adc[30]],include:_0x625bx14[_0x3adc[31]]?_[_0x3adc[34]](_0x625bx14[_0x3adc[31]],function(_0x625bx15){return {model:db[_0x625bx15[_0x3adc[32]]],as:_0x625bx15[_0x3adc[33]],attributes:_0x625bx15[_0x3adc[30]]}}):[]}}):[]}}):[]):[]})[_0x3adc[24]](function(_0x625bx11){logger[_0x3adc[17]](_0x3adc[26],_0x625bxd);logger[_0x3adc[20]](_0x3adc[26],_0x625bxd,JSON[_0x3adc[19]](_0x625bx11));_0x625bxe(_0x625bx11)})[_0x3adc[15]](function(_0x625bx10){logger[_0x3adc[14]](_0x3adc[26],_0x625bx10[_0x3adc[22]],_0x625bxd);_0x625bxf(_0x625bx12[_0x3adc[14]](500,_0x625bx10[_0x3adc[22]]))})})}
\ No newline at end of file
+var _0x5d7c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x49\x6E\x74\x65\x72\x76\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x49\x6E\x74\x65\x72\x76\x61\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x49\x6E\x74\x65\x72\x76\x61\x6C","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x49\x6E\x74\x65\x72\x76\x61\x6C"];_0x5d7c[0];var _=require(_0x5d7c[1]);var util=require(_0x5d7c[2]);var moment=require(_0x5d7c[3]);var BPromise=require(_0x5d7c[4]);var db=require(_0x5d7c[6])[_0x5d7c[5]];var utils=require(_0x5d7c[7]);var logger=require(_0x5d7c[9])(_0x5d7c[8]);var jayson=require(_0x5d7c[10]);var client=jayson[_0x5d7c[12]][_0x5d7c[11]]({port:9002});function respondWithRpcPromise(_0x4a80xb,_0x4a80xc,_0x4a80xd){return  new BPromise(function(_0x4a80xe,_0x4a80xf){return client[_0x5d7c[25]](_0x4a80xb,_0x4a80xd)[_0x5d7c[24]](function(_0x4a80x11){logger[_0x5d7c[17]](_0x5d7c[13],_0x4a80xc,_0x5d7c[16]);logger[_0x5d7c[20]](_0x5d7c[18],_0x4a80xc,_0x5d7c[16],JSON[_0x5d7c[19]](_0x4a80x11));if(_0x4a80x11[_0x5d7c[14]]){if(_0x4a80x11[_0x5d7c[14]][_0x5d7c[21]]=== 500){logger[_0x5d7c[14]](_0x5d7c[13],_0x4a80xc,_0x4a80x11[_0x5d7c[14]][_0x5d7c[22]]);return _0x4a80xf(_0x4a80x11[_0x5d7c[14]][_0x5d7c[22]])};logger[_0x5d7c[14]](_0x5d7c[13],_0x4a80xc,_0x4a80x11[_0x5d7c[14]][_0x5d7c[22]]);return _0x4a80xe(_0x4a80x11[_0x5d7c[14]][_0x5d7c[22]])}else {logger[_0x5d7c[17]](_0x5d7c[13],_0x4a80xc,_0x5d7c[16]);_0x4a80xe(_0x4a80x11[_0x5d7c[23]][_0x5d7c[22]])}})[_0x5d7c[15]](function(_0x4a80x10){logger[_0x5d7c[14]](_0x5d7c[13],_0x4a80xc,_0x4a80x10);_0x4a80xf(_0x4a80x10)})})}exports[_0x5d7c[26]]= function(_0x4a80xd){var _0x4a80x12=this;return  new Promise(function(_0x4a80xe,_0x4a80xf){return db[_0x5d7c[36]][_0x5d7c[35]]({raw:_0x4a80xd[_0x5d7c[27]]?(_0x4a80xd[_0x5d7c[27]][_0x5d7c[28]]=== undefined)?true:false:true,where:_0x4a80xd[_0x5d7c[27]]?_0x4a80xd[_0x5d7c[27]][_0x5d7c[29]]|| null:null,attributes:_0x4a80xd[_0x5d7c[27]]?_0x4a80xd[_0x5d7c[27]][_0x5d7c[30]]|| null:null,include:_0x4a80xd[_0x5d7c[27]]?(_0x4a80xd[_0x5d7c[27]][_0x5d7c[31]]?_[_0x5d7c[34]](_0x4a80xd[_0x5d7c[27]][_0x5d7c[31]],function(_0x4a80x13){return {model:db[_0x4a80x13[_0x5d7c[32]]],as:_0x4a80x13[_0x5d7c[33]],attributes:_0x4a80x13[_0x5d7c[30]],include:_0x4a80x13[_0x5d7c[31]]?_[_0x5d7c[34]](_0x4a80x13[_0x5d7c[31]],function(_0x4a80x14){return {model:db[_0x4a80x14[_0x5d7c[32]]],as:_0x4a80x14[_0x5d7c[33]],attributes:_0x4a80x14[_0x5d7c[30]],include:_0x4a80x14[_0x5d7c[31]]?_[_0x5d7c[34]](_0x4a80x14[_0x5d7c[31]],function(_0x4a80x15){return {model:db[_0x4a80x15[_0x5d7c[32]]],as:_0x4a80x15[_0x5d7c[33]],attributes:_0x4a80x15[_0x5d7c[30]]}}):[]}}):[]}}):[]):[]})[_0x5d7c[24]](function(_0x4a80x11){logger[_0x5d7c[17]](_0x5d7c[26],_0x4a80xd);logger[_0x5d7c[20]](_0x5d7c[26],_0x4a80xd,JSON[_0x5d7c[19]](_0x4a80x11));_0x4a80xe(_0x4a80x11)})[_0x5d7c[15]](function(_0x4a80x10){logger[_0x5d7c[14]](_0x5d7c[26],_0x4a80x10[_0x5d7c[22]],_0x4a80xd);_0x4a80xf(_0x4a80x12[_0x5d7c[14]](500,_0x4a80x10[_0x5d7c[22]]))})})}
\ No newline at end of file
index 3256433..826af96 100644 (file)
@@ -1 +1 @@
-var _0xccab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x6A\x69\x72\x61\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x65\x6E\x64","\x70\x6F\x73\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xccab[0];var express=require(_0xccab[1]);var router=express.Router();var auth=require(_0xccab[2]);var controller=require(_0xccab[3]);router[_0xccab[7]](_0xccab[4],auth[_0xccab[5]](),controller[_0xccab[6]]);module[_0xccab[8]]= router
\ No newline at end of file
+var _0x55fd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x6A\x69\x72\x61\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x65\x6E\x64","\x70\x6F\x73\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x55fd[0];var express=require(_0x55fd[1]);var router=express.Router();var auth=require(_0x55fd[2]);var controller=require(_0x55fd[3]);router[_0x55fd[7]](_0x55fd[4],auth[_0x55fd[5]](),controller[_0x55fd[6]]);module[_0x55fd[8]]= router
\ No newline at end of file
index d976ec9..e3643a5 100644 (file)
@@ -1 +1 @@
-var _0x8dec=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x68\x74\x74\x70\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x73\x75\x70\x70\x6F\x72\x74","\x33\x65\x41\x6D\x57\x70\x42\x56\x50\x30","\x73\x65\x6E\x64","\x78\x2D\x66\x6F\x72\x77\x61\x72\x64\x65\x64\x2D\x66\x6F\x72","\x68\x65\x61\x64\x65\x72\x73","\x72\x65\x6D\x6F\x74\x65\x41\x64\x64\x72\x65\x73\x73","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x73\x6F\x63\x6B\x65\x74","\x6B\x65\x79","\x62\x6F\x64\x79","\x4D\x4F\x54\x47\x55\x49","\x73\x75\x6D\x6D\x61\x72\x79","\x52\x65\x70\x6F\x72\x74","\x20\x66\x72\x6F\x6D\x20","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x69\x73\x73\x75\x65\x74\x79\x70\x65","\x42\x75\x67","\x70\x72\x6F\x6A\x65\x63\x74","\x66\x69\x65\x6C\x64\x73","\x63\x75\x73\x74\x6F\x6D\x66\x69\x65\x6C\x64\x5F\x31\x30\x31\x30\x32","\x74\x72\x61\x63\x6B\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D","\x2F\x72\x65\x73\x74\x2F\x61\x70\x69\x2F\x32\x2F\x69\x73\x73\x75\x65","\x50\x4F\x53\x54","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E","\x42\x61\x73\x69\x63\x20","\x62\x61\x73\x65\x36\x34","\x3A","\x75\x74\x66\x38","\x73\x65\x74\x45\x6E\x63\x6F\x64\x69\x6E\x67","","\x64\x61\x74\x61","\x6F\x6E","\x65\x6E\x64","\x70\x61\x72\x73\x65","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73\x43\x6F\x64\x65","\x73\x74\x61\x74\x75\x73","\x72\x65\x71\x75\x65\x73\x74","\x65\x72\x72\x6F\x72","\x77\x72\x69\x74\x65"];_0x8dec[0];var BPromise=require(_0x8dec[1]);var https=require(_0x8dec[2]);var logger=require(_0x8dec[4])(_0x8dec[3]);var USERNAME=_0x8dec[5];var PASSWORD=_0x8dec[6];exports[_0x8dec[7]]= function(_0x8cb1x6,_0x8cb1x7){var _0x8cb1x8=_0x8cb1x6[_0x8dec[9]][_0x8dec[8]]|| _0x8cb1x6[_0x8dec[11]][_0x8dec[10]]|| _0x8cb1x6[_0x8dec[12]][_0x8dec[10]]|| _0x8cb1x6[_0x8dec[11]][_0x8dec[12]][_0x8dec[10]];var _0x8cb1x9={fields:{project:{key:_0x8cb1x6[_0x8dec[14]][_0x8dec[13]]|| _0x8dec[15]},summary:(_0x8cb1x6[_0x8dec[14]][_0x8dec[16]]|| _0x8dec[17])+ _0x8dec[18]+ _0x8cb1x8,description:_0x8cb1x6[_0x8dec[14]][_0x8dec[19]]|| JSON[_0x8dec[20]](_0x8cb1x6[_0x8dec[14]]),issuetype:{name:_0x8cb1x6[_0x8dec[14]][_0x8dec[21]]|| _0x8dec[22]}}};_0x8cb1x9[_0x8dec[24]][_0x8dec[23]][_0x8dec[13]]=== _0x8dec[15]&& (_0x8cb1x9[_0x8dec[24]][_0x8dec[25]]= _0x8cb1x8);var _0x8cb1xa={host:_0x8dec[26],port:443,path:_0x8dec[27],method:_0x8dec[28],headers:{"\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65":_0x8dec[29],"\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E":_0x8dec[30]+  new Buffer(USERNAME+ _0x8dec[32]+ PASSWORD).toString(_0x8dec[31])}};var _0x8cb1xb=JSON[_0x8dec[20]](_0x8cb1x9);var _0x8cb1xc=https[_0x8dec[43]](_0x8cb1xa,function(_0x8cb1xd){_0x8cb1xd[_0x8dec[34]](_0x8dec[33]);var _0x8cb1xe=_0x8dec[35];_0x8cb1xd[_0x8dec[37]](_0x8dec[36],function(_0x8cb1xf){_0x8cb1xe+= _0x8cb1xf});_0x8cb1xd[_0x8dec[37]](_0x8dec[38],function(){return _0x8cb1x7[_0x8dec[42]](_0x8cb1xd[_0x8dec[41]])[_0x8dec[40]](JSON[_0x8dec[39]](_0x8cb1xe))})});_0x8cb1xc[_0x8dec[37]](_0x8dec[44],function(_0x8cb1x10){return _0x8cb1x7[_0x8dec[42]](500)[_0x8dec[40]](_0x8cb1x10)});_0x8cb1xc[_0x8dec[45]](_0x8cb1xb);_0x8cb1xc[_0x8dec[38]]()}
\ No newline at end of file
+var _0x80f3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x68\x74\x74\x70\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x73\x75\x70\x70\x6F\x72\x74","\x33\x65\x41\x6D\x57\x70\x42\x56\x50\x30","\x73\x65\x6E\x64","\x78\x2D\x66\x6F\x72\x77\x61\x72\x64\x65\x64\x2D\x66\x6F\x72","\x68\x65\x61\x64\x65\x72\x73","\x72\x65\x6D\x6F\x74\x65\x41\x64\x64\x72\x65\x73\x73","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x73\x6F\x63\x6B\x65\x74","\x6B\x65\x79","\x62\x6F\x64\x79","\x4D\x4F\x54\x47\x55\x49","\x73\x75\x6D\x6D\x61\x72\x79","\x52\x65\x70\x6F\x72\x74","\x20\x66\x72\x6F\x6D\x20","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x69\x73\x73\x75\x65\x74\x79\x70\x65","\x42\x75\x67","\x70\x72\x6F\x6A\x65\x63\x74","\x66\x69\x65\x6C\x64\x73","\x63\x75\x73\x74\x6F\x6D\x66\x69\x65\x6C\x64\x5F\x31\x30\x31\x30\x32","\x74\x72\x61\x63\x6B\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D","\x2F\x72\x65\x73\x74\x2F\x61\x70\x69\x2F\x32\x2F\x69\x73\x73\x75\x65","\x50\x4F\x53\x54","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E","\x42\x61\x73\x69\x63\x20","\x62\x61\x73\x65\x36\x34","\x3A","\x75\x74\x66\x38","\x73\x65\x74\x45\x6E\x63\x6F\x64\x69\x6E\x67","","\x64\x61\x74\x61","\x6F\x6E","\x65\x6E\x64","\x70\x61\x72\x73\x65","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73\x43\x6F\x64\x65","\x73\x74\x61\x74\x75\x73","\x72\x65\x71\x75\x65\x73\x74","\x65\x72\x72\x6F\x72","\x77\x72\x69\x74\x65"];_0x80f3[0];var BPromise=require(_0x80f3[1]);var https=require(_0x80f3[2]);var logger=require(_0x80f3[4])(_0x80f3[3]);var USERNAME=_0x80f3[5];var PASSWORD=_0x80f3[6];exports[_0x80f3[7]]= function(_0x3710x6,_0x3710x7){var _0x3710x8=_0x3710x6[_0x80f3[9]][_0x80f3[8]]|| _0x3710x6[_0x80f3[11]][_0x80f3[10]]|| _0x3710x6[_0x80f3[12]][_0x80f3[10]]|| _0x3710x6[_0x80f3[11]][_0x80f3[12]][_0x80f3[10]];var _0x3710x9={fields:{project:{key:_0x3710x6[_0x80f3[14]][_0x80f3[13]]|| _0x80f3[15]},summary:(_0x3710x6[_0x80f3[14]][_0x80f3[16]]|| _0x80f3[17])+ _0x80f3[18]+ _0x3710x8,description:_0x3710x6[_0x80f3[14]][_0x80f3[19]]|| JSON[_0x80f3[20]](_0x3710x6[_0x80f3[14]]),issuetype:{name:_0x3710x6[_0x80f3[14]][_0x80f3[21]]|| _0x80f3[22]}}};_0x3710x9[_0x80f3[24]][_0x80f3[23]][_0x80f3[13]]=== _0x80f3[15]&& (_0x3710x9[_0x80f3[24]][_0x80f3[25]]= _0x3710x8);var _0x3710xa={host:_0x80f3[26],port:443,path:_0x80f3[27],method:_0x80f3[28],headers:{"\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65":_0x80f3[29],"\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E":_0x80f3[30]+  new Buffer(USERNAME+ _0x80f3[32]+ PASSWORD).toString(_0x80f3[31])}};var _0x3710xb=JSON[_0x80f3[20]](_0x3710x9);var _0x3710xc=https[_0x80f3[43]](_0x3710xa,function(_0x3710xd){_0x3710xd[_0x80f3[34]](_0x80f3[33]);var _0x3710xe=_0x80f3[35];_0x3710xd[_0x80f3[37]](_0x80f3[36],function(_0x3710xf){_0x3710xe+= _0x3710xf});_0x3710xd[_0x80f3[37]](_0x80f3[38],function(){return _0x3710x7[_0x80f3[42]](_0x3710xd[_0x80f3[41]])[_0x80f3[40]](JSON[_0x80f3[39]](_0x3710xe))})});_0x3710xc[_0x80f3[37]](_0x80f3[44],function(_0x3710x10){return _0x3710x7[_0x80f3[42]](500)[_0x80f3[40]](_0x3710x10)});_0x3710xc[_0x80f3[45]](_0x3710xb);_0x3710xc[_0x80f3[38]]()}
\ No newline at end of file
index 90b16a5..7697f70 100644 (file)
@@ -1 +1 @@
-var _0xf578=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf578[0];var multer=require(_0xf578[1]);var util=require(_0xf578[2]);var path=require(_0xf578[3]);var express=require(_0xf578[4]);var router=express.Router();var auth=require(_0xf578[5]);var config=require(_0xf578[6]);var controller=require(_0xf578[7]);router[_0xf578[11]](_0xf578[8],auth[_0xf578[9]](),controller[_0xf578[10]]);router[_0xf578[11]](_0xf578[12],auth[_0xf578[9]](),controller[_0xf578[13]]);router[_0xf578[15]](_0xf578[8],auth[_0xf578[9]](),controller[_0xf578[14]]);router[_0xf578[17]](_0xf578[12],auth[_0xf578[9]](),controller[_0xf578[16]]);router[_0xf578[19]](_0xf578[12],auth[_0xf578[9]](),controller[_0xf578[18]]);module[_0xf578[20]]= router
\ No newline at end of file
+var _0xd8ac=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd8ac[0];var multer=require(_0xd8ac[1]);var util=require(_0xd8ac[2]);var path=require(_0xd8ac[3]);var express=require(_0xd8ac[4]);var router=express.Router();var auth=require(_0xd8ac[5]);var config=require(_0xd8ac[6]);var controller=require(_0xd8ac[7]);router[_0xd8ac[11]](_0xd8ac[8],auth[_0xd8ac[9]](),controller[_0xd8ac[10]]);router[_0xd8ac[11]](_0xd8ac[12],auth[_0xd8ac[9]](),controller[_0xd8ac[13]]);router[_0xd8ac[15]](_0xd8ac[8],auth[_0xd8ac[9]](),controller[_0xd8ac[14]]);router[_0xd8ac[17]](_0xd8ac[12],auth[_0xd8ac[9]](),controller[_0xd8ac[16]]);router[_0xd8ac[19]](_0xd8ac[12],auth[_0xd8ac[9]](),controller[_0xd8ac[18]]);module[_0xd8ac[20]]= router
\ No newline at end of file
index d4bd010..1dd3e10 100644 (file)
@@ -1 +1 @@
-var _0x5871=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0x5871[0];var Sequelize=require(_0x5871[1]);module[_0x5871[2]]= {sourceid:{type:Sequelize[_0x5871[3]]},input_id:{type:Sequelize[_0x5871[3]]},input_type:{type:Sequelize[_0x5871[4]]},input_label:{type:Sequelize[_0x5871[4]]},input_value:{type:Sequelize[_0x5871[4]]}}
\ No newline at end of file
+var _0xd279=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xd279[0];var Sequelize=require(_0xd279[1]);module[_0xd279[2]]= {sourceid:{type:Sequelize[_0xd279[3]]},input_id:{type:Sequelize[_0xd279[3]]},input_type:{type:Sequelize[_0xd279[4]]},input_label:{type:Sequelize[_0xd279[4]]},input_value:{type:Sequelize[_0xd279[4]]}}
\ No newline at end of file
index 998f199..9e411d8 100644 (file)
@@ -1 +1 @@
-var _0x86a9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x86a9[0];var jsonpatch=require(_0x86a9[1]);var rp=require(_0x86a9[2]);var moment=require(_0x86a9[3]);var BPromise=require(_0x86a9[4]);var util=require(_0x86a9[5]);var path=require(_0x86a9[6]);var sox=require(_0x86a9[7]);var ejs=require(_0x86a9[8]);var fs=require(_0x86a9[9]);var _=require(_0x86a9[10]);var squel=require(_0x86a9[11]);var crypto=require(_0x86a9[12]);var jsforce=require(_0x86a9[13]);var toCsv=require(_0x86a9[14]);var qs=require(_0x86a9[15]);var logger=require(_0x86a9[17])(_0x86a9[16]);var utils=require(_0x86a9[18]);var config=require(_0x86a9[19]);var db=require(_0x86a9[21])[_0x86a9[20]];function respondWithStatusCode(_0xd4f1x15,_0xd4f1x16,_0xd4f1x17){_0xd4f1x16= _0xd4f1x16|| 204;return function(_0xd4f1x18){if(_0xd4f1x18){logger[_0x86a9[24]](_0x86a9[22],_0xd4f1x17,_0xd4f1x16,_0x86a9[23]);logger[_0x86a9[26]](_0x86a9[25],_0xd4f1x17,_0xd4f1x16,_0x86a9[23]);return _0xd4f1x15[_0x86a9[27]](_0xd4f1x16)};return _0xd4f1x15[_0x86a9[29]](304)[_0x86a9[28]]()}}function respondWithResult(_0xd4f1x15,_0xd4f1x16,_0xd4f1x17){_0xd4f1x16= _0xd4f1x16|| 200;return function(_0xd4f1x18){if(_0xd4f1x18){logger[_0x86a9[24]](_0x86a9[22],_0xd4f1x17,_0xd4f1x16,_0x86a9[30]);logger[_0x86a9[26]](_0x86a9[25],_0xd4f1x17,_0xd4f1x16,_0x86a9[30],JSON[_0x86a9[31]](_0xd4f1x18));return _0xd4f1x15[_0x86a9[29]](_0xd4f1x16)[_0x86a9[32]](_0xd4f1x18)};return _0xd4f1x15[_0x86a9[29]](304)[_0x86a9[28]]()}}function respondWithFilteredResult(_0xd4f1x15,_0xd4f1x1b,_0xd4f1x17){return function(_0xd4f1x18){if(_0xd4f1x18){var _0xd4f1x1c=_0xd4f1x18[_0x86a9[33]],_0xd4f1x1d=_0xd4f1x1b[_0x86a9[34]],_0xd4f1x1e=_0xd4f1x1b[_0x86a9[34]]+ _0xd4f1x1b[_0x86a9[35]],_0xd4f1x16;if(_0xd4f1x1e>= _0xd4f1x1c){_0xd4f1x1e= _0xd4f1x1c;_0xd4f1x16= 200}else {_0xd4f1x16= 206};_0xd4f1x15[_0x86a9[29]](_0xd4f1x16);logger[_0x86a9[24]](_0x86a9[22],_0xd4f1x17,_0xd4f1x16,_0x86a9[36]);logger[_0x86a9[26]](_0x86a9[25],_0xd4f1x17,_0xd4f1x16,_0x86a9[30],JSON[_0x86a9[31]](_0xd4f1x18));return _0xd4f1x15[_0x86a9[40]](_0x86a9[37],_0xd4f1x1d+ _0x86a9[38]+ _0xd4f1x1e+ _0x86a9[39]+ _0xd4f1x1c)[_0x86a9[32]](_0xd4f1x18)};return null}}function patchUpdates(_0xd4f1x20){return function(_0xd4f1x18){try{jsonpatch[_0x86a9[41]](_0xd4f1x18,_0xd4f1x20,true)}catch(err){return BPromise[_0x86a9[42]](err)};return _0xd4f1x18[_0x86a9[43]]()}}function saveUpdates(_0xd4f1x22,_0xd4f1x16,_0xd4f1x17){return function(_0xd4f1x18){if(_0xd4f1x18){return _0xd4f1x18[_0x86a9[46]](_0xd4f1x22)[_0x86a9[45]](function(_0xd4f1x23){logger[_0x86a9[24]](_0x86a9[22],_0xd4f1x17,_0xd4f1x16,_0x86a9[44]);logger[_0x86a9[26]](_0x86a9[25],_0xd4f1x17,_0xd4f1x16,_0x86a9[44],JSON[_0x86a9[31]](_0xd4f1x18));return _0xd4f1x23})};return null}}function removeEntity(_0xd4f1x15,_0xd4f1x16,_0xd4f1x17){return function(_0xd4f1x18){if(_0xd4f1x18){return _0xd4f1x18[_0x86a9[48]]()[_0x86a9[45]](function(){logger[_0x86a9[24]](_0x86a9[22],_0xd4f1x17,_0xd4f1x16,_0x86a9[47]);logger[_0x86a9[26]](_0x86a9[25],_0xd4f1x17,_0xd4f1x16,_0x86a9[47],JSON[_0x86a9[31]](_0xd4f1x18));_0xd4f1x15[_0x86a9[29]](204)[_0x86a9[28]]()})}}}function handleEntityNotFound(_0xd4f1x15,_0xd4f1x16,_0xd4f1x17){return function(_0xd4f1x18){if(!_0xd4f1x18){logger[_0x86a9[50]](_0x86a9[22],_0xd4f1x17,404,_0x86a9[49]);_0xd4f1x15[_0x86a9[29]](404)[_0x86a9[28]]();return null};return _0xd4f1x18}}function handleError(_0xd4f1x15,_0xd4f1x16,_0xd4f1x17){_0xd4f1x16= _0xd4f1x16|| 500;return function(_0xd4f1x27){logger[_0x86a9[50]](_0x86a9[22],_0xd4f1x17,_0xd4f1x16,JSON[_0x86a9[31]](_0xd4f1x27));delete _0xd4f1x27[_0x86a9[51]];_0xd4f1x15[_0x86a9[29]](_0xd4f1x16)[_0x86a9[52]](_0xd4f1x27)}}exports[_0x86a9[53]]= function(_0xd4f1x28,_0xd4f1x15){var _0xd4f1x1b={},_0xd4f1x29={};_0xd4f1x29[_0x86a9[54]]= _[_0x86a9[57]](db[_0x86a9[56]][_0x86a9[55]]);_0xd4f1x29[_0x86a9[58]]= _[_0x86a9[57]](_0xd4f1x28[_0x86a9[58]]);_0xd4f1x29[_0x86a9[59]]= _[_0x86a9[60]](_0xd4f1x29[_0x86a9[54]],_0xd4f1x29[_0x86a9[58]]);_0xd4f1x1b[_0x86a9[61]]= _[_0x86a9[60]](_0xd4f1x29[_0x86a9[54]],qs[_0x86a9[62]](_0xd4f1x28[_0x86a9[58]][_0x86a9[62]]));_0xd4f1x1b[_0x86a9[61]]= (_0xd4f1x1b[_0x86a9[61]][_0x86a9[63]])?_0xd4f1x1b[_0x86a9[61]]:_0xd4f1x29[_0x86a9[54]];if(!_0xd4f1x28[_0x86a9[58]][_0x86a9[65]](_0x86a9[64])){_0xd4f1x1b[_0x86a9[35]]= qs[_0x86a9[35]](_0xd4f1x28[_0x86a9[58]][_0x86a9[35]]);_0xd4f1x1b[_0x86a9[34]]= qs[_0x86a9[34]](_0xd4f1x28[_0x86a9[58]][_0x86a9[34]])};_0xd4f1x1b[_0x86a9[66]]= qs[_0x86a9[67]](_0xd4f1x28[_0x86a9[58]][_0x86a9[67]]);_0xd4f1x1b[_0x86a9[68]]= qs[_0x86a9[59]](_[_0x86a9[69]](_0xd4f1x28[_0x86a9[58]],_0xd4f1x29[_0x86a9[59]]));if(_0xd4f1x28[_0x86a9[58]][_0x86a9[70]]){_0xd4f1x1b[_0x86a9[68]]= _[_0x86a9[73]](_0xd4f1x1b[_0x86a9[68]],{$or:_[_0x86a9[72]](_0xd4f1x1b[_0x86a9[61]],function(_0xd4f1x2a){var _0xd4f1x2b={};_0xd4f1x2b[_0xd4f1x2a]= {$like:_0x86a9[71]+ _0xd4f1x28[_0x86a9[58]][_0x86a9[70]]+ _0x86a9[71]};return _0xd4f1x2b})})};_0xd4f1x1b= _[_0x86a9[73]]({},_0xd4f1x1b,_0xd4f1x28[_0x86a9[74]]);return db[_0x86a9[56]][_0x86a9[76]](_0xd4f1x1b)[_0x86a9[45]](respondWithFilteredResult(_0xd4f1x15,_0xd4f1x1b,_0x86a9[53]))[_0x86a9[75]](handleError(_0xd4f1x15,null,_0x86a9[53]))};exports[_0x86a9[77]]= function(_0xd4f1x28,_0xd4f1x15){var _0xd4f1x1b={raw:true,where:{id:_0xd4f1x28[_0x86a9[79]][_0x86a9[78]]}},_0xd4f1x29={};_0xd4f1x29[_0x86a9[54]]= _[_0x86a9[57]](db[_0x86a9[56]][_0x86a9[55]]);_0xd4f1x29[_0x86a9[58]]= _[_0x86a9[57]](_0xd4f1x28[_0x86a9[58]]);_0xd4f1x29[_0x86a9[59]]= _[_0x86a9[60]](_0xd4f1x29[_0x86a9[54]],_0xd4f1x29[_0x86a9[58]]);_0xd4f1x1b[_0x86a9[61]]= _[_0x86a9[60]](_0xd4f1x29[_0x86a9[54]],qs[_0x86a9[62]](_0xd4f1x28[_0x86a9[58]][_0x86a9[62]]));_0xd4f1x1b[_0x86a9[61]]= (_0xd4f1x1b[_0x86a9[61]][_0x86a9[63]])?_0xd4f1x1b[_0x86a9[61]]:_0xd4f1x29[_0x86a9[54]];_0xd4f1x1b= _[_0x86a9[73]]({},_0xd4f1x1b,_0xd4f1x28[_0x86a9[74]]);return db[_0x86a9[56]][_0x86a9[80]](_0xd4f1x1b)[_0x86a9[45]](handleEntityNotFound(_0xd4f1x15,null,_0x86a9[77]))[_0x86a9[45]](respondWithResult(_0xd4f1x15,null,_0x86a9[77]))[_0x86a9[75]](handleError(_0xd4f1x15,null,_0x86a9[77]))};exports[_0x86a9[81]]= function(_0xd4f1x28,_0xd4f1x15){return db[_0x86a9[56]][_0x86a9[81]](_0xd4f1x28[_0x86a9[82]],{})[_0x86a9[45]](respondWithResult(_0xd4f1x15,201,_0x86a9[81]))[_0x86a9[75]](handleError(_0xd4f1x15,null,_0x86a9[81]))};exports[_0x86a9[46]]= function(_0xd4f1x28,_0xd4f1x15){if(_0xd4f1x28[_0x86a9[82]][_0x86a9[78]]){delete _0xd4f1x28[_0x86a9[82]][_0x86a9[78]]};return db[_0x86a9[56]][_0x86a9[80]]({where:{id:_0xd4f1x28[_0x86a9[79]][_0x86a9[78]]}})[_0x86a9[45]](handleEntityNotFound(_0xd4f1x15,null,_0x86a9[46]))[_0x86a9[45]](saveUpdates(_0xd4f1x28[_0x86a9[82]],null,_0x86a9[46]))[_0x86a9[45]](respondWithResult(_0xd4f1x15,null,_0x86a9[46]))[_0x86a9[75]](handleError(_0xd4f1x15,null,_0x86a9[46]))};exports[_0x86a9[48]]= function(_0xd4f1x28,_0xd4f1x15){return db[_0x86a9[56]][_0x86a9[80]]({where:{id:_0xd4f1x28[_0x86a9[79]][_0x86a9[78]]}})[_0x86a9[45]](handleEntityNotFound(_0xd4f1x15,null,_0x86a9[48]))[_0x86a9[45]](removeEntity(_0xd4f1x15,null,_0x86a9[48]))[_0x86a9[75]](handleError(_0xd4f1x15,null,_0x86a9[48]))}
\ No newline at end of file
+var _0x896b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x896b[0];var jsonpatch=require(_0x896b[1]);var rp=require(_0x896b[2]);var moment=require(_0x896b[3]);var BPromise=require(_0x896b[4]);var util=require(_0x896b[5]);var path=require(_0x896b[6]);var sox=require(_0x896b[7]);var ejs=require(_0x896b[8]);var fs=require(_0x896b[9]);var _=require(_0x896b[10]);var squel=require(_0x896b[11]);var crypto=require(_0x896b[12]);var jsforce=require(_0x896b[13]);var toCsv=require(_0x896b[14]);var qs=require(_0x896b[15]);var logger=require(_0x896b[17])(_0x896b[16]);var utils=require(_0x896b[18]);var config=require(_0x896b[19]);var db=require(_0x896b[21])[_0x896b[20]];function respondWithStatusCode(_0xc1efx15,_0xc1efx16,_0xc1efx17){_0xc1efx16= _0xc1efx16|| 204;return function(_0xc1efx18){if(_0xc1efx18){logger[_0x896b[24]](_0x896b[22],_0xc1efx17,_0xc1efx16,_0x896b[23]);logger[_0x896b[26]](_0x896b[25],_0xc1efx17,_0xc1efx16,_0x896b[23]);return _0xc1efx15[_0x896b[27]](_0xc1efx16)};return _0xc1efx15[_0x896b[29]](304)[_0x896b[28]]()}}function respondWithResult(_0xc1efx15,_0xc1efx16,_0xc1efx17){_0xc1efx16= _0xc1efx16|| 200;return function(_0xc1efx18){if(_0xc1efx18){logger[_0x896b[24]](_0x896b[22],_0xc1efx17,_0xc1efx16,_0x896b[30]);logger[_0x896b[26]](_0x896b[25],_0xc1efx17,_0xc1efx16,_0x896b[30],JSON[_0x896b[31]](_0xc1efx18));return _0xc1efx15[_0x896b[29]](_0xc1efx16)[_0x896b[32]](_0xc1efx18)};return _0xc1efx15[_0x896b[29]](304)[_0x896b[28]]()}}function respondWithFilteredResult(_0xc1efx15,_0xc1efx1b,_0xc1efx17){return function(_0xc1efx18){if(_0xc1efx18){var _0xc1efx1c=_0xc1efx18[_0x896b[33]],_0xc1efx1d=_0xc1efx1b[_0x896b[34]],_0xc1efx1e=_0xc1efx1b[_0x896b[34]]+ _0xc1efx1b[_0x896b[35]],_0xc1efx16;if(_0xc1efx1e>= _0xc1efx1c){_0xc1efx1e= _0xc1efx1c;_0xc1efx16= 200}else {_0xc1efx16= 206};_0xc1efx15[_0x896b[29]](_0xc1efx16);logger[_0x896b[24]](_0x896b[22],_0xc1efx17,_0xc1efx16,_0x896b[36]);logger[_0x896b[26]](_0x896b[25],_0xc1efx17,_0xc1efx16,_0x896b[30],JSON[_0x896b[31]](_0xc1efx18));return _0xc1efx15[_0x896b[40]](_0x896b[37],_0xc1efx1d+ _0x896b[38]+ _0xc1efx1e+ _0x896b[39]+ _0xc1efx1c)[_0x896b[32]](_0xc1efx18)};return null}}function patchUpdates(_0xc1efx20){return function(_0xc1efx18){try{jsonpatch[_0x896b[41]](_0xc1efx18,_0xc1efx20,true)}catch(err){return BPromise[_0x896b[42]](err)};return _0xc1efx18[_0x896b[43]]()}}function saveUpdates(_0xc1efx22,_0xc1efx16,_0xc1efx17){return function(_0xc1efx18){if(_0xc1efx18){return _0xc1efx18[_0x896b[46]](_0xc1efx22)[_0x896b[45]](function(_0xc1efx23){logger[_0x896b[24]](_0x896b[22],_0xc1efx17,_0xc1efx16,_0x896b[44]);logger[_0x896b[26]](_0x896b[25],_0xc1efx17,_0xc1efx16,_0x896b[44],JSON[_0x896b[31]](_0xc1efx18));return _0xc1efx23})};return null}}function removeEntity(_0xc1efx15,_0xc1efx16,_0xc1efx17){return function(_0xc1efx18){if(_0xc1efx18){return _0xc1efx18[_0x896b[48]]()[_0x896b[45]](function(){logger[_0x896b[24]](_0x896b[22],_0xc1efx17,_0xc1efx16,_0x896b[47]);logger[_0x896b[26]](_0x896b[25],_0xc1efx17,_0xc1efx16,_0x896b[47],JSON[_0x896b[31]](_0xc1efx18));_0xc1efx15[_0x896b[29]](204)[_0x896b[28]]()})}}}function handleEntityNotFound(_0xc1efx15,_0xc1efx16,_0xc1efx17){return function(_0xc1efx18){if(!_0xc1efx18){logger[_0x896b[50]](_0x896b[22],_0xc1efx17,404,_0x896b[49]);_0xc1efx15[_0x896b[29]](404)[_0x896b[28]]();return null};return _0xc1efx18}}function handleError(_0xc1efx15,_0xc1efx16,_0xc1efx17){_0xc1efx16= _0xc1efx16|| 500;return function(_0xc1efx27){logger[_0x896b[50]](_0x896b[22],_0xc1efx17,_0xc1efx16,JSON[_0x896b[31]](_0xc1efx27));delete _0xc1efx27[_0x896b[51]];_0xc1efx15[_0x896b[29]](_0xc1efx16)[_0x896b[52]](_0xc1efx27)}}exports[_0x896b[53]]= function(_0xc1efx28,_0xc1efx15){var _0xc1efx1b={},_0xc1efx29={};_0xc1efx29[_0x896b[54]]= _[_0x896b[57]](db[_0x896b[56]][_0x896b[55]]);_0xc1efx29[_0x896b[58]]= _[_0x896b[57]](_0xc1efx28[_0x896b[58]]);_0xc1efx29[_0x896b[59]]= _[_0x896b[60]](_0xc1efx29[_0x896b[54]],_0xc1efx29[_0x896b[58]]);_0xc1efx1b[_0x896b[61]]= _[_0x896b[60]](_0xc1efx29[_0x896b[54]],qs[_0x896b[62]](_0xc1efx28[_0x896b[58]][_0x896b[62]]));_0xc1efx1b[_0x896b[61]]= (_0xc1efx1b[_0x896b[61]][_0x896b[63]])?_0xc1efx1b[_0x896b[61]]:_0xc1efx29[_0x896b[54]];if(!_0xc1efx28[_0x896b[58]][_0x896b[65]](_0x896b[64])){_0xc1efx1b[_0x896b[35]]= qs[_0x896b[35]](_0xc1efx28[_0x896b[58]][_0x896b[35]]);_0xc1efx1b[_0x896b[34]]= qs[_0x896b[34]](_0xc1efx28[_0x896b[58]][_0x896b[34]])};_0xc1efx1b[_0x896b[66]]= qs[_0x896b[67]](_0xc1efx28[_0x896b[58]][_0x896b[67]]);_0xc1efx1b[_0x896b[68]]= qs[_0x896b[59]](_[_0x896b[69]](_0xc1efx28[_0x896b[58]],_0xc1efx29[_0x896b[59]]));if(_0xc1efx28[_0x896b[58]][_0x896b[70]]){_0xc1efx1b[_0x896b[68]]= _[_0x896b[73]](_0xc1efx1b[_0x896b[68]],{$or:_[_0x896b[72]](_0xc1efx1b[_0x896b[61]],function(_0xc1efx2a){var _0xc1efx2b={};_0xc1efx2b[_0xc1efx2a]= {$like:_0x896b[71]+ _0xc1efx28[_0x896b[58]][_0x896b[70]]+ _0x896b[71]};return _0xc1efx2b})})};_0xc1efx1b= _[_0x896b[73]]({},_0xc1efx1b,_0xc1efx28[_0x896b[74]]);return db[_0x896b[56]][_0x896b[76]](_0xc1efx1b)[_0x896b[45]](respondWithFilteredResult(_0xc1efx15,_0xc1efx1b,_0x896b[53]))[_0x896b[75]](handleError(_0xc1efx15,null,_0x896b[53]))};exports[_0x896b[77]]= function(_0xc1efx28,_0xc1efx15){var _0xc1efx1b={raw:true,where:{id:_0xc1efx28[_0x896b[79]][_0x896b[78]]}},_0xc1efx29={};_0xc1efx29[_0x896b[54]]= _[_0x896b[57]](db[_0x896b[56]][_0x896b[55]]);_0xc1efx29[_0x896b[58]]= _[_0x896b[57]](_0xc1efx28[_0x896b[58]]);_0xc1efx29[_0x896b[59]]= _[_0x896b[60]](_0xc1efx29[_0x896b[54]],_0xc1efx29[_0x896b[58]]);_0xc1efx1b[_0x896b[61]]= _[_0x896b[60]](_0xc1efx29[_0x896b[54]],qs[_0x896b[62]](_0xc1efx28[_0x896b[58]][_0x896b[62]]));_0xc1efx1b[_0x896b[61]]= (_0xc1efx1b[_0x896b[61]][_0x896b[63]])?_0xc1efx1b[_0x896b[61]]:_0xc1efx29[_0x896b[54]];_0xc1efx1b= _[_0x896b[73]]({},_0xc1efx1b,_0xc1efx28[_0x896b[74]]);return db[_0x896b[56]][_0x896b[80]](_0xc1efx1b)[_0x896b[45]](handleEntityNotFound(_0xc1efx15,null,_0x896b[77]))[_0x896b[45]](respondWithResult(_0xc1efx15,null,_0x896b[77]))[_0x896b[75]](handleError(_0xc1efx15,null,_0x896b[77]))};exports[_0x896b[81]]= function(_0xc1efx28,_0xc1efx15){return db[_0x896b[56]][_0x896b[81]](_0xc1efx28[_0x896b[82]],{})[_0x896b[45]](respondWithResult(_0xc1efx15,201,_0x896b[81]))[_0x896b[75]](handleError(_0xc1efx15,null,_0x896b[81]))};exports[_0x896b[46]]= function(_0xc1efx28,_0xc1efx15){if(_0xc1efx28[_0x896b[82]][_0x896b[78]]){delete _0xc1efx28[_0x896b[82]][_0x896b[78]]};return db[_0x896b[56]][_0x896b[80]]({where:{id:_0xc1efx28[_0x896b[79]][_0x896b[78]]}})[_0x896b[45]](handleEntityNotFound(_0xc1efx15,null,_0x896b[46]))[_0x896b[45]](saveUpdates(_0xc1efx28[_0x896b[82]],null,_0x896b[46]))[_0x896b[45]](respondWithResult(_0xc1efx15,null,_0x896b[46]))[_0x896b[75]](handleError(_0xc1efx15,null,_0x896b[46]))};exports[_0x896b[48]]= function(_0xc1efx28,_0xc1efx15){return db[_0x896b[56]][_0x896b[80]]({where:{id:_0xc1efx28[_0x896b[79]][_0x896b[78]]}})[_0x896b[45]](handleEntityNotFound(_0xc1efx15,null,_0x896b[48]))[_0x896b[45]](removeEntity(_0xc1efx15,null,_0x896b[48]))[_0x896b[75]](handleError(_0xc1efx15,null,_0x896b[48]))}
\ No newline at end of file
index 906f410..e799b31 100644 (file)
@@ -1 +1 @@
-var _0x1e2d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6A\x73\x63\x72\x69\x70\x74\x79\x5F\x69\x6E\x70\x75\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x1e2d[0];var _=require(_0x1e2d[1]);var util=require(_0x1e2d[2]);var logger=require(_0x1e2d[4])(_0x1e2d[3]);var attributes=require(_0x1e2d[5]);module[_0x1e2d[6]]= function(_0xed23x5,_0xed23x6){return _0xed23x5[_0x1e2d[9]](_0x1e2d[7],attributes,{tableName:_0x1e2d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x17af=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6A\x73\x63\x72\x69\x70\x74\x79\x5F\x69\x6E\x70\x75\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x17af[0];var _=require(_0x17af[1]);var util=require(_0x17af[2]);var logger=require(_0x17af[4])(_0x17af[3]);var attributes=require(_0x17af[5]);module[_0x17af[6]]= function(_0x469ax5,_0x469ax6){return _0x469ax5[_0x17af[9]](_0x17af[7],attributes,{tableName:_0x17af[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 97acdb3..962dea7 100644 (file)
@@ -1 +1 @@
-var _0xe4e7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe4e7[0];var _=require(_0xe4e7[1]);var util=require(_0xe4e7[2]);var moment=require(_0xe4e7[3]);var BPromise=require(_0xe4e7[4]);var db=require(_0xe4e7[6])[_0xe4e7[5]];var utils=require(_0xe4e7[7]);var logger=require(_0xe4e7[9])(_0xe4e7[8]);var jayson=require(_0xe4e7[10]);var client=jayson[_0xe4e7[12]][_0xe4e7[11]]({port:9002});function respondWithRpcPromise(_0xd38axb,_0xd38axc,_0xd38axd){return  new BPromise(function(_0xd38axe,_0xd38axf){return client[_0xe4e7[25]](_0xd38axb,_0xd38axd)[_0xe4e7[24]](function(_0xd38ax11){logger[_0xe4e7[17]](_0xe4e7[13],_0xd38axc,_0xe4e7[16]);logger[_0xe4e7[20]](_0xe4e7[18],_0xd38axc,_0xe4e7[16],JSON[_0xe4e7[19]](_0xd38ax11));if(_0xd38ax11[_0xe4e7[14]]){if(_0xd38ax11[_0xe4e7[14]][_0xe4e7[21]]=== 500){logger[_0xe4e7[14]](_0xe4e7[13],_0xd38axc,_0xd38ax11[_0xe4e7[14]][_0xe4e7[22]]);return _0xd38axf(_0xd38ax11[_0xe4e7[14]][_0xe4e7[22]])};logger[_0xe4e7[14]](_0xe4e7[13],_0xd38axc,_0xd38ax11[_0xe4e7[14]][_0xe4e7[22]]);return _0xd38axe(_0xd38ax11[_0xe4e7[14]][_0xe4e7[22]])}else {logger[_0xe4e7[17]](_0xe4e7[13],_0xd38axc,_0xe4e7[16]);_0xd38axe(_0xd38ax11[_0xe4e7[23]][_0xe4e7[22]])}})[_0xe4e7[15]](function(_0xd38ax10){logger[_0xe4e7[14]](_0xe4e7[13],_0xd38axc,_0xd38ax10);_0xd38axf(_0xd38ax10)})})}
\ No newline at end of file
+var _0x787b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x787b[0];var _=require(_0x787b[1]);var util=require(_0x787b[2]);var moment=require(_0x787b[3]);var BPromise=require(_0x787b[4]);var db=require(_0x787b[6])[_0x787b[5]];var utils=require(_0x787b[7]);var logger=require(_0x787b[9])(_0x787b[8]);var jayson=require(_0x787b[10]);var client=jayson[_0x787b[12]][_0x787b[11]]({port:9002});function respondWithRpcPromise(_0x6a5bxb,_0x6a5bxc,_0x6a5bxd){return  new BPromise(function(_0x6a5bxe,_0x6a5bxf){return client[_0x787b[25]](_0x6a5bxb,_0x6a5bxd)[_0x787b[24]](function(_0x6a5bx11){logger[_0x787b[17]](_0x787b[13],_0x6a5bxc,_0x787b[16]);logger[_0x787b[20]](_0x787b[18],_0x6a5bxc,_0x787b[16],JSON[_0x787b[19]](_0x6a5bx11));if(_0x6a5bx11[_0x787b[14]]){if(_0x6a5bx11[_0x787b[14]][_0x787b[21]]=== 500){logger[_0x787b[14]](_0x787b[13],_0x6a5bxc,_0x6a5bx11[_0x787b[14]][_0x787b[22]]);return _0x6a5bxf(_0x6a5bx11[_0x787b[14]][_0x787b[22]])};logger[_0x787b[14]](_0x787b[13],_0x6a5bxc,_0x6a5bx11[_0x787b[14]][_0x787b[22]]);return _0x6a5bxe(_0x6a5bx11[_0x787b[14]][_0x787b[22]])}else {logger[_0x787b[17]](_0x787b[13],_0x6a5bxc,_0x787b[16]);_0x6a5bxe(_0x6a5bx11[_0x787b[23]][_0x787b[22]])}})[_0x787b[15]](function(_0x6a5bx10){logger[_0x787b[14]](_0x787b[13],_0x6a5bxc,_0x6a5bx10);_0x6a5bxf(_0x6a5bx10)})})}
\ No newline at end of file
index 33cdbe3..738b6d3 100644 (file)
@@ -1 +1 @@
-var _0x8486=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8486[0];var multer=require(_0x8486[1]);var util=require(_0x8486[2]);var path=require(_0x8486[3]);var express=require(_0x8486[4]);var router=express.Router();var auth=require(_0x8486[5]);var config=require(_0x8486[6]);var controller=require(_0x8486[7]);router[_0x8486[11]](_0x8486[8],auth[_0x8486[9]](),controller[_0x8486[10]]);router[_0x8486[11]](_0x8486[12],auth[_0x8486[9]](),controller[_0x8486[13]]);router[_0x8486[15]](_0x8486[8],auth[_0x8486[9]](),controller[_0x8486[14]]);router[_0x8486[17]](_0x8486[12],auth[_0x8486[9]](),controller[_0x8486[16]]);router[_0x8486[19]](_0x8486[12],auth[_0x8486[9]](),controller[_0x8486[18]]);module[_0x8486[20]]= router
\ No newline at end of file
+var _0xa1b6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa1b6[0];var multer=require(_0xa1b6[1]);var util=require(_0xa1b6[2]);var path=require(_0xa1b6[3]);var express=require(_0xa1b6[4]);var router=express.Router();var auth=require(_0xa1b6[5]);var config=require(_0xa1b6[6]);var controller=require(_0xa1b6[7]);router[_0xa1b6[11]](_0xa1b6[8],auth[_0xa1b6[9]](),controller[_0xa1b6[10]]);router[_0xa1b6[11]](_0xa1b6[12],auth[_0xa1b6[9]](),controller[_0xa1b6[13]]);router[_0xa1b6[15]](_0xa1b6[8],auth[_0xa1b6[9]](),controller[_0xa1b6[14]]);router[_0xa1b6[17]](_0xa1b6[12],auth[_0xa1b6[9]](),controller[_0xa1b6[16]]);router[_0xa1b6[19]](_0xa1b6[12],auth[_0xa1b6[9]](),controller[_0xa1b6[18]]);module[_0xa1b6[20]]= router
\ No newline at end of file
index 8e383f7..7bfa73f 100644 (file)
@@ -1 +1 @@
-var _0xe319=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x54\x45\x58\x54"];_0xe319[0];var Sequelize=require(_0xe319[1]);module[_0xe319[2]]= {name:{type:Sequelize[_0xe319[3]],unique:_0xe319[4]},description:{type:Sequelize[_0xe319[3]]},draft:{type:Sequelize[_0xe319[5]]},production:{type:Sequelize[_0xe319[5]]}}
\ No newline at end of file
+var _0x6a36=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x54\x45\x58\x54"];_0x6a36[0];var Sequelize=require(_0x6a36[1]);module[_0x6a36[2]]= {name:{type:Sequelize[_0x6a36[3]],unique:_0x6a36[4]},description:{type:Sequelize[_0x6a36[3]]},draft:{type:Sequelize[_0x6a36[5]]},production:{type:Sequelize[_0x6a36[5]]}}
\ No newline at end of file
index 5512e95..65cd508 100644 (file)
@@ -1 +1 @@
-var _0x93ca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x93ca[0];var jsonpatch=require(_0x93ca[1]);var rp=require(_0x93ca[2]);var moment=require(_0x93ca[3]);var BPromise=require(_0x93ca[4]);var util=require(_0x93ca[5]);var path=require(_0x93ca[6]);var sox=require(_0x93ca[7]);var ejs=require(_0x93ca[8]);var fs=require(_0x93ca[9]);var _=require(_0x93ca[10]);var squel=require(_0x93ca[11]);var crypto=require(_0x93ca[12]);var jsforce=require(_0x93ca[13]);var toCsv=require(_0x93ca[14]);var qs=require(_0x93ca[15]);var logger=require(_0x93ca[17])(_0x93ca[16]);var utils=require(_0x93ca[18]);var config=require(_0x93ca[19]);var db=require(_0x93ca[21])[_0x93ca[20]];function respondWithStatusCode(_0x113cx15,_0x113cx16,_0x113cx17){_0x113cx16= _0x113cx16|| 204;return function(_0x113cx18){if(_0x113cx18){logger[_0x93ca[24]](_0x93ca[22],_0x113cx17,_0x113cx16,_0x93ca[23]);logger[_0x93ca[26]](_0x93ca[25],_0x113cx17,_0x113cx16,_0x93ca[23]);return _0x113cx15[_0x93ca[27]](_0x113cx16)};return _0x113cx15[_0x93ca[29]](304)[_0x93ca[28]]()}}function respondWithResult(_0x113cx15,_0x113cx16,_0x113cx17){_0x113cx16= _0x113cx16|| 200;return function(_0x113cx18){if(_0x113cx18){logger[_0x93ca[24]](_0x93ca[22],_0x113cx17,_0x113cx16,_0x93ca[30]);logger[_0x93ca[26]](_0x93ca[25],_0x113cx17,_0x113cx16,_0x93ca[30],JSON[_0x93ca[31]](_0x113cx18));return _0x113cx15[_0x93ca[29]](_0x113cx16)[_0x93ca[32]](_0x113cx18)};return _0x113cx15[_0x93ca[29]](304)[_0x93ca[28]]()}}function respondWithFilteredResult(_0x113cx15,_0x113cx1b,_0x113cx17){return function(_0x113cx18){if(_0x113cx18){var _0x113cx1c=_0x113cx18[_0x93ca[33]],_0x113cx1d=_0x113cx1b[_0x93ca[34]],_0x113cx1e=_0x113cx1b[_0x93ca[34]]+ _0x113cx1b[_0x93ca[35]],_0x113cx16;if(_0x113cx1e>= _0x113cx1c){_0x113cx1e= _0x113cx1c;_0x113cx16= 200}else {_0x113cx16= 206};_0x113cx15[_0x93ca[29]](_0x113cx16);logger[_0x93ca[24]](_0x93ca[22],_0x113cx17,_0x113cx16,_0x93ca[36]);logger[_0x93ca[26]](_0x93ca[25],_0x113cx17,_0x113cx16,_0x93ca[30],JSON[_0x93ca[31]](_0x113cx18));return _0x113cx15[_0x93ca[40]](_0x93ca[37],_0x113cx1d+ _0x93ca[38]+ _0x113cx1e+ _0x93ca[39]+ _0x113cx1c)[_0x93ca[32]](_0x113cx18)};return null}}function patchUpdates(_0x113cx20){return function(_0x113cx18){try{jsonpatch[_0x93ca[41]](_0x113cx18,_0x113cx20,true)}catch(err){return BPromise[_0x93ca[42]](err)};return _0x113cx18[_0x93ca[43]]()}}function saveUpdates(_0x113cx22,_0x113cx16,_0x113cx17){return function(_0x113cx18){if(_0x113cx18){return _0x113cx18[_0x93ca[46]](_0x113cx22)[_0x93ca[45]](function(_0x113cx23){logger[_0x93ca[24]](_0x93ca[22],_0x113cx17,_0x113cx16,_0x93ca[44]);logger[_0x93ca[26]](_0x93ca[25],_0x113cx17,_0x113cx16,_0x93ca[44],JSON[_0x93ca[31]](_0x113cx18));return _0x113cx23})};return null}}function removeEntity(_0x113cx15,_0x113cx16,_0x113cx17){return function(_0x113cx18){if(_0x113cx18){return _0x113cx18[_0x93ca[48]]()[_0x93ca[45]](function(){logger[_0x93ca[24]](_0x93ca[22],_0x113cx17,_0x113cx16,_0x93ca[47]);logger[_0x93ca[26]](_0x93ca[25],_0x113cx17,_0x113cx16,_0x93ca[47],JSON[_0x93ca[31]](_0x113cx18));_0x113cx15[_0x93ca[29]](204)[_0x93ca[28]]()})}}}function handleEntityNotFound(_0x113cx15,_0x113cx16,_0x113cx17){return function(_0x113cx18){if(!_0x113cx18){logger[_0x93ca[50]](_0x93ca[22],_0x113cx17,404,_0x93ca[49]);_0x113cx15[_0x93ca[29]](404)[_0x93ca[28]]();return null};return _0x113cx18}}function handleError(_0x113cx15,_0x113cx16,_0x113cx17){_0x113cx16= _0x113cx16|| 500;return function(_0x113cx27){logger[_0x93ca[50]](_0x93ca[22],_0x113cx17,_0x113cx16,JSON[_0x93ca[31]](_0x113cx27));delete _0x113cx27[_0x93ca[51]];_0x113cx15[_0x93ca[29]](_0x113cx16)[_0x93ca[52]](_0x113cx27)}}exports[_0x93ca[53]]= function(_0x113cx28,_0x113cx15){var _0x113cx1b={},_0x113cx29={};_0x113cx29[_0x93ca[54]]= _[_0x93ca[57]](db[_0x93ca[56]][_0x93ca[55]]);_0x113cx29[_0x93ca[58]]= _[_0x93ca[57]](_0x113cx28[_0x93ca[58]]);_0x113cx29[_0x93ca[59]]= _[_0x93ca[60]](_0x113cx29[_0x93ca[54]],_0x113cx29[_0x93ca[58]]);_0x113cx1b[_0x93ca[61]]= _[_0x93ca[60]](_0x113cx29[_0x93ca[54]],qs[_0x93ca[62]](_0x113cx28[_0x93ca[58]][_0x93ca[62]]));_0x113cx1b[_0x93ca[61]]= (_0x113cx1b[_0x93ca[61]][_0x93ca[63]])?_0x113cx1b[_0x93ca[61]]:_0x113cx29[_0x93ca[54]];if(!_0x113cx28[_0x93ca[58]][_0x93ca[65]](_0x93ca[64])){_0x113cx1b[_0x93ca[35]]= qs[_0x93ca[35]](_0x113cx28[_0x93ca[58]][_0x93ca[35]]);_0x113cx1b[_0x93ca[34]]= qs[_0x93ca[34]](_0x113cx28[_0x93ca[58]][_0x93ca[34]])};_0x113cx1b[_0x93ca[66]]= qs[_0x93ca[67]](_0x113cx28[_0x93ca[58]][_0x93ca[67]]);_0x113cx1b[_0x93ca[68]]= qs[_0x93ca[59]](_[_0x93ca[69]](_0x113cx28[_0x93ca[58]],_0x113cx29[_0x93ca[59]]));if(_0x113cx28[_0x93ca[58]][_0x93ca[70]]){_0x113cx1b[_0x93ca[68]]= _[_0x93ca[73]](_0x113cx1b[_0x93ca[68]],{$or:_[_0x93ca[72]](_0x113cx1b[_0x93ca[61]],function(_0x113cx2a){var _0x113cx2b={};_0x113cx2b[_0x113cx2a]= {$like:_0x93ca[71]+ _0x113cx28[_0x93ca[58]][_0x93ca[70]]+ _0x93ca[71]};return _0x113cx2b})})};_0x113cx1b= _[_0x93ca[73]]({},_0x113cx1b,_0x113cx28[_0x93ca[74]]);return db[_0x93ca[56]][_0x93ca[76]](_0x113cx1b)[_0x93ca[45]](respondWithFilteredResult(_0x113cx15,_0x113cx1b,_0x93ca[53]))[_0x93ca[75]](handleError(_0x113cx15,null,_0x93ca[53]))};exports[_0x93ca[77]]= function(_0x113cx28,_0x113cx15){var _0x113cx1b={raw:true,where:{id:_0x113cx28[_0x93ca[79]][_0x93ca[78]]}},_0x113cx29={};_0x113cx29[_0x93ca[54]]= _[_0x93ca[57]](db[_0x93ca[56]][_0x93ca[55]]);_0x113cx29[_0x93ca[58]]= _[_0x93ca[57]](_0x113cx28[_0x93ca[58]]);_0x113cx29[_0x93ca[59]]= _[_0x93ca[60]](_0x113cx29[_0x93ca[54]],_0x113cx29[_0x93ca[58]]);_0x113cx1b[_0x93ca[61]]= _[_0x93ca[60]](_0x113cx29[_0x93ca[54]],qs[_0x93ca[62]](_0x113cx28[_0x93ca[58]][_0x93ca[62]]));_0x113cx1b[_0x93ca[61]]= (_0x113cx1b[_0x93ca[61]][_0x93ca[63]])?_0x113cx1b[_0x93ca[61]]:_0x113cx29[_0x93ca[54]];_0x113cx1b= _[_0x93ca[73]]({},_0x113cx1b,_0x113cx28[_0x93ca[74]]);return db[_0x93ca[56]][_0x93ca[80]](_0x113cx1b)[_0x93ca[45]](handleEntityNotFound(_0x113cx15,null,_0x93ca[77]))[_0x93ca[45]](respondWithResult(_0x113cx15,null,_0x93ca[77]))[_0x93ca[75]](handleError(_0x113cx15,null,_0x93ca[77]))};exports[_0x93ca[81]]= function(_0x113cx28,_0x113cx15){return db[_0x93ca[56]][_0x93ca[81]](_0x113cx28[_0x93ca[82]],{})[_0x93ca[45]](respondWithResult(_0x113cx15,201,_0x93ca[81]))[_0x93ca[75]](handleError(_0x113cx15,null,_0x93ca[81]))};exports[_0x93ca[46]]= function(_0x113cx28,_0x113cx15){if(_0x113cx28[_0x93ca[82]][_0x93ca[78]]){delete _0x113cx28[_0x93ca[82]][_0x93ca[78]]};return db[_0x93ca[56]][_0x93ca[80]]({where:{id:_0x113cx28[_0x93ca[79]][_0x93ca[78]]}})[_0x93ca[45]](handleEntityNotFound(_0x113cx15,null,_0x93ca[46]))[_0x93ca[45]](saveUpdates(_0x113cx28[_0x93ca[82]],null,_0x93ca[46]))[_0x93ca[45]](respondWithResult(_0x113cx15,null,_0x93ca[46]))[_0x93ca[75]](handleError(_0x113cx15,null,_0x93ca[46]))};exports[_0x93ca[48]]= function(_0x113cx28,_0x113cx15){return db[_0x93ca[56]][_0x93ca[80]]({where:{id:_0x113cx28[_0x93ca[79]][_0x93ca[78]]}})[_0x93ca[45]](handleEntityNotFound(_0x113cx15,null,_0x93ca[48]))[_0x93ca[45]](removeEntity(_0x113cx15,null,_0x93ca[48]))[_0x93ca[75]](handleError(_0x113cx15,null,_0x93ca[48]))}
\ No newline at end of file
+var _0xb0f4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xb0f4[0];var jsonpatch=require(_0xb0f4[1]);var rp=require(_0xb0f4[2]);var moment=require(_0xb0f4[3]);var BPromise=require(_0xb0f4[4]);var util=require(_0xb0f4[5]);var path=require(_0xb0f4[6]);var sox=require(_0xb0f4[7]);var ejs=require(_0xb0f4[8]);var fs=require(_0xb0f4[9]);var _=require(_0xb0f4[10]);var squel=require(_0xb0f4[11]);var crypto=require(_0xb0f4[12]);var jsforce=require(_0xb0f4[13]);var toCsv=require(_0xb0f4[14]);var qs=require(_0xb0f4[15]);var logger=require(_0xb0f4[17])(_0xb0f4[16]);var utils=require(_0xb0f4[18]);var config=require(_0xb0f4[19]);var db=require(_0xb0f4[21])[_0xb0f4[20]];function respondWithStatusCode(_0x5f0dx15,_0x5f0dx16,_0x5f0dx17){_0x5f0dx16= _0x5f0dx16|| 204;return function(_0x5f0dx18){if(_0x5f0dx18){logger[_0xb0f4[24]](_0xb0f4[22],_0x5f0dx17,_0x5f0dx16,_0xb0f4[23]);logger[_0xb0f4[26]](_0xb0f4[25],_0x5f0dx17,_0x5f0dx16,_0xb0f4[23]);return _0x5f0dx15[_0xb0f4[27]](_0x5f0dx16)};return _0x5f0dx15[_0xb0f4[29]](304)[_0xb0f4[28]]()}}function respondWithResult(_0x5f0dx15,_0x5f0dx16,_0x5f0dx17){_0x5f0dx16= _0x5f0dx16|| 200;return function(_0x5f0dx18){if(_0x5f0dx18){logger[_0xb0f4[24]](_0xb0f4[22],_0x5f0dx17,_0x5f0dx16,_0xb0f4[30]);logger[_0xb0f4[26]](_0xb0f4[25],_0x5f0dx17,_0x5f0dx16,_0xb0f4[30],JSON[_0xb0f4[31]](_0x5f0dx18));return _0x5f0dx15[_0xb0f4[29]](_0x5f0dx16)[_0xb0f4[32]](_0x5f0dx18)};return _0x5f0dx15[_0xb0f4[29]](304)[_0xb0f4[28]]()}}function respondWithFilteredResult(_0x5f0dx15,_0x5f0dx1b,_0x5f0dx17){return function(_0x5f0dx18){if(_0x5f0dx18){var _0x5f0dx1c=_0x5f0dx18[_0xb0f4[33]],_0x5f0dx1d=_0x5f0dx1b[_0xb0f4[34]],_0x5f0dx1e=_0x5f0dx1b[_0xb0f4[34]]+ _0x5f0dx1b[_0xb0f4[35]],_0x5f0dx16;if(_0x5f0dx1e>= _0x5f0dx1c){_0x5f0dx1e= _0x5f0dx1c;_0x5f0dx16= 200}else {_0x5f0dx16= 206};_0x5f0dx15[_0xb0f4[29]](_0x5f0dx16);logger[_0xb0f4[24]](_0xb0f4[22],_0x5f0dx17,_0x5f0dx16,_0xb0f4[36]);logger[_0xb0f4[26]](_0xb0f4[25],_0x5f0dx17,_0x5f0dx16,_0xb0f4[30],JSON[_0xb0f4[31]](_0x5f0dx18));return _0x5f0dx15[_0xb0f4[40]](_0xb0f4[37],_0x5f0dx1d+ _0xb0f4[38]+ _0x5f0dx1e+ _0xb0f4[39]+ _0x5f0dx1c)[_0xb0f4[32]](_0x5f0dx18)};return null}}function patchUpdates(_0x5f0dx20){return function(_0x5f0dx18){try{jsonpatch[_0xb0f4[41]](_0x5f0dx18,_0x5f0dx20,true)}catch(err){return BPromise[_0xb0f4[42]](err)};return _0x5f0dx18[_0xb0f4[43]]()}}function saveUpdates(_0x5f0dx22,_0x5f0dx16,_0x5f0dx17){return function(_0x5f0dx18){if(_0x5f0dx18){return _0x5f0dx18[_0xb0f4[46]](_0x5f0dx22)[_0xb0f4[45]](function(_0x5f0dx23){logger[_0xb0f4[24]](_0xb0f4[22],_0x5f0dx17,_0x5f0dx16,_0xb0f4[44]);logger[_0xb0f4[26]](_0xb0f4[25],_0x5f0dx17,_0x5f0dx16,_0xb0f4[44],JSON[_0xb0f4[31]](_0x5f0dx18));return _0x5f0dx23})};return null}}function removeEntity(_0x5f0dx15,_0x5f0dx16,_0x5f0dx17){return function(_0x5f0dx18){if(_0x5f0dx18){return _0x5f0dx18[_0xb0f4[48]]()[_0xb0f4[45]](function(){logger[_0xb0f4[24]](_0xb0f4[22],_0x5f0dx17,_0x5f0dx16,_0xb0f4[47]);logger[_0xb0f4[26]](_0xb0f4[25],_0x5f0dx17,_0x5f0dx16,_0xb0f4[47],JSON[_0xb0f4[31]](_0x5f0dx18));_0x5f0dx15[_0xb0f4[29]](204)[_0xb0f4[28]]()})}}}function handleEntityNotFound(_0x5f0dx15,_0x5f0dx16,_0x5f0dx17){return function(_0x5f0dx18){if(!_0x5f0dx18){logger[_0xb0f4[50]](_0xb0f4[22],_0x5f0dx17,404,_0xb0f4[49]);_0x5f0dx15[_0xb0f4[29]](404)[_0xb0f4[28]]();return null};return _0x5f0dx18}}function handleError(_0x5f0dx15,_0x5f0dx16,_0x5f0dx17){_0x5f0dx16= _0x5f0dx16|| 500;return function(_0x5f0dx27){logger[_0xb0f4[50]](_0xb0f4[22],_0x5f0dx17,_0x5f0dx16,JSON[_0xb0f4[31]](_0x5f0dx27));delete _0x5f0dx27[_0xb0f4[51]];_0x5f0dx15[_0xb0f4[29]](_0x5f0dx16)[_0xb0f4[52]](_0x5f0dx27)}}exports[_0xb0f4[53]]= function(_0x5f0dx28,_0x5f0dx15){var _0x5f0dx1b={},_0x5f0dx29={};_0x5f0dx29[_0xb0f4[54]]= _[_0xb0f4[57]](db[_0xb0f4[56]][_0xb0f4[55]]);_0x5f0dx29[_0xb0f4[58]]= _[_0xb0f4[57]](_0x5f0dx28[_0xb0f4[58]]);_0x5f0dx29[_0xb0f4[59]]= _[_0xb0f4[60]](_0x5f0dx29[_0xb0f4[54]],_0x5f0dx29[_0xb0f4[58]]);_0x5f0dx1b[_0xb0f4[61]]= _[_0xb0f4[60]](_0x5f0dx29[_0xb0f4[54]],qs[_0xb0f4[62]](_0x5f0dx28[_0xb0f4[58]][_0xb0f4[62]]));_0x5f0dx1b[_0xb0f4[61]]= (_0x5f0dx1b[_0xb0f4[61]][_0xb0f4[63]])?_0x5f0dx1b[_0xb0f4[61]]:_0x5f0dx29[_0xb0f4[54]];if(!_0x5f0dx28[_0xb0f4[58]][_0xb0f4[65]](_0xb0f4[64])){_0x5f0dx1b[_0xb0f4[35]]= qs[_0xb0f4[35]](_0x5f0dx28[_0xb0f4[58]][_0xb0f4[35]]);_0x5f0dx1b[_0xb0f4[34]]= qs[_0xb0f4[34]](_0x5f0dx28[_0xb0f4[58]][_0xb0f4[34]])};_0x5f0dx1b[_0xb0f4[66]]= qs[_0xb0f4[67]](_0x5f0dx28[_0xb0f4[58]][_0xb0f4[67]]);_0x5f0dx1b[_0xb0f4[68]]= qs[_0xb0f4[59]](_[_0xb0f4[69]](_0x5f0dx28[_0xb0f4[58]],_0x5f0dx29[_0xb0f4[59]]));if(_0x5f0dx28[_0xb0f4[58]][_0xb0f4[70]]){_0x5f0dx1b[_0xb0f4[68]]= _[_0xb0f4[73]](_0x5f0dx1b[_0xb0f4[68]],{$or:_[_0xb0f4[72]](_0x5f0dx1b[_0xb0f4[61]],function(_0x5f0dx2a){var _0x5f0dx2b={};_0x5f0dx2b[_0x5f0dx2a]= {$like:_0xb0f4[71]+ _0x5f0dx28[_0xb0f4[58]][_0xb0f4[70]]+ _0xb0f4[71]};return _0x5f0dx2b})})};_0x5f0dx1b= _[_0xb0f4[73]]({},_0x5f0dx1b,_0x5f0dx28[_0xb0f4[74]]);return db[_0xb0f4[56]][_0xb0f4[76]](_0x5f0dx1b)[_0xb0f4[45]](respondWithFilteredResult(_0x5f0dx15,_0x5f0dx1b,_0xb0f4[53]))[_0xb0f4[75]](handleError(_0x5f0dx15,null,_0xb0f4[53]))};exports[_0xb0f4[77]]= function(_0x5f0dx28,_0x5f0dx15){var _0x5f0dx1b={raw:true,where:{id:_0x5f0dx28[_0xb0f4[79]][_0xb0f4[78]]}},_0x5f0dx29={};_0x5f0dx29[_0xb0f4[54]]= _[_0xb0f4[57]](db[_0xb0f4[56]][_0xb0f4[55]]);_0x5f0dx29[_0xb0f4[58]]= _[_0xb0f4[57]](_0x5f0dx28[_0xb0f4[58]]);_0x5f0dx29[_0xb0f4[59]]= _[_0xb0f4[60]](_0x5f0dx29[_0xb0f4[54]],_0x5f0dx29[_0xb0f4[58]]);_0x5f0dx1b[_0xb0f4[61]]= _[_0xb0f4[60]](_0x5f0dx29[_0xb0f4[54]],qs[_0xb0f4[62]](_0x5f0dx28[_0xb0f4[58]][_0xb0f4[62]]));_0x5f0dx1b[_0xb0f4[61]]= (_0x5f0dx1b[_0xb0f4[61]][_0xb0f4[63]])?_0x5f0dx1b[_0xb0f4[61]]:_0x5f0dx29[_0xb0f4[54]];_0x5f0dx1b= _[_0xb0f4[73]]({},_0x5f0dx1b,_0x5f0dx28[_0xb0f4[74]]);return db[_0xb0f4[56]][_0xb0f4[80]](_0x5f0dx1b)[_0xb0f4[45]](handleEntityNotFound(_0x5f0dx15,null,_0xb0f4[77]))[_0xb0f4[45]](respondWithResult(_0x5f0dx15,null,_0xb0f4[77]))[_0xb0f4[75]](handleError(_0x5f0dx15,null,_0xb0f4[77]))};exports[_0xb0f4[81]]= function(_0x5f0dx28,_0x5f0dx15){return db[_0xb0f4[56]][_0xb0f4[81]](_0x5f0dx28[_0xb0f4[82]],{})[_0xb0f4[45]](respondWithResult(_0x5f0dx15,201,_0xb0f4[81]))[_0xb0f4[75]](handleError(_0x5f0dx15,null,_0xb0f4[81]))};exports[_0xb0f4[46]]= function(_0x5f0dx28,_0x5f0dx15){if(_0x5f0dx28[_0xb0f4[82]][_0xb0f4[78]]){delete _0x5f0dx28[_0xb0f4[82]][_0xb0f4[78]]};return db[_0xb0f4[56]][_0xb0f4[80]]({where:{id:_0x5f0dx28[_0xb0f4[79]][_0xb0f4[78]]}})[_0xb0f4[45]](handleEntityNotFound(_0x5f0dx15,null,_0xb0f4[46]))[_0xb0f4[45]](saveUpdates(_0x5f0dx28[_0xb0f4[82]],null,_0xb0f4[46]))[_0xb0f4[45]](respondWithResult(_0x5f0dx15,null,_0xb0f4[46]))[_0xb0f4[75]](handleError(_0x5f0dx15,null,_0xb0f4[46]))};exports[_0xb0f4[48]]= function(_0x5f0dx28,_0x5f0dx15){return db[_0xb0f4[56]][_0xb0f4[80]]({where:{id:_0x5f0dx28[_0xb0f4[79]][_0xb0f4[78]]}})[_0xb0f4[45]](handleEntityNotFound(_0x5f0dx15,null,_0xb0f4[48]))[_0xb0f4[45]](removeEntity(_0x5f0dx15,null,_0xb0f4[48]))[_0xb0f4[75]](handleError(_0x5f0dx15,null,_0xb0f4[48]))}
\ No newline at end of file
index 3acb191..049634e 100644 (file)
@@ -1 +1 @@
-var _0xa9a3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74","\x6A\x73\x63\x72\x69\x70\x74\x79\x5F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xa9a3[0];var _=require(_0xa9a3[1]);var util=require(_0xa9a3[2]);var logger=require(_0xa9a3[4])(_0xa9a3[3]);var attributes=require(_0xa9a3[5]);module[_0xa9a3[6]]= function(_0x555fx5,_0x555fx6){return _0x555fx5[_0xa9a3[9]](_0xa9a3[7],attributes,{tableName:_0xa9a3[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x321c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74","\x6A\x73\x63\x72\x69\x70\x74\x79\x5F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x321c[0];var _=require(_0x321c[1]);var util=require(_0x321c[2]);var logger=require(_0x321c[4])(_0x321c[3]);var attributes=require(_0x321c[5]);module[_0x321c[6]]= function(_0xbfa1x5,_0xbfa1x6){return _0xbfa1x5[_0x321c[9]](_0x321c[7],attributes,{tableName:_0x321c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5cb256f..20cab60 100644 (file)
@@ -1 +1 @@
-var _0xd296=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd296[0];var _=require(_0xd296[1]);var util=require(_0xd296[2]);var moment=require(_0xd296[3]);var BPromise=require(_0xd296[4]);var db=require(_0xd296[6])[_0xd296[5]];var utils=require(_0xd296[7]);var logger=require(_0xd296[9])(_0xd296[8]);var jayson=require(_0xd296[10]);var client=jayson[_0xd296[12]][_0xd296[11]]({port:9002});function respondWithRpcPromise(_0xc596xb,_0xc596xc,_0xc596xd){return  new BPromise(function(_0xc596xe,_0xc596xf){return client[_0xd296[25]](_0xc596xb,_0xc596xd)[_0xd296[24]](function(_0xc596x11){logger[_0xd296[17]](_0xd296[13],_0xc596xc,_0xd296[16]);logger[_0xd296[20]](_0xd296[18],_0xc596xc,_0xd296[16],JSON[_0xd296[19]](_0xc596x11));if(_0xc596x11[_0xd296[14]]){if(_0xc596x11[_0xd296[14]][_0xd296[21]]=== 500){logger[_0xd296[14]](_0xd296[13],_0xc596xc,_0xc596x11[_0xd296[14]][_0xd296[22]]);return _0xc596xf(_0xc596x11[_0xd296[14]][_0xd296[22]])};logger[_0xd296[14]](_0xd296[13],_0xc596xc,_0xc596x11[_0xd296[14]][_0xd296[22]]);return _0xc596xe(_0xc596x11[_0xd296[14]][_0xd296[22]])}else {logger[_0xd296[17]](_0xd296[13],_0xc596xc,_0xd296[16]);_0xc596xe(_0xc596x11[_0xd296[23]][_0xd296[22]])}})[_0xd296[15]](function(_0xc596x10){logger[_0xd296[14]](_0xd296[13],_0xc596xc,_0xc596x10);_0xc596xf(_0xc596x10)})})}
\ No newline at end of file
+var _0x741e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x741e[0];var _=require(_0x741e[1]);var util=require(_0x741e[2]);var moment=require(_0x741e[3]);var BPromise=require(_0x741e[4]);var db=require(_0x741e[6])[_0x741e[5]];var utils=require(_0x741e[7]);var logger=require(_0x741e[9])(_0x741e[8]);var jayson=require(_0x741e[10]);var client=jayson[_0x741e[12]][_0x741e[11]]({port:9002});function respondWithRpcPromise(_0x48edxb,_0x48edxc,_0x48edxd){return  new BPromise(function(_0x48edxe,_0x48edxf){return client[_0x741e[25]](_0x48edxb,_0x48edxd)[_0x741e[24]](function(_0x48edx11){logger[_0x741e[17]](_0x741e[13],_0x48edxc,_0x741e[16]);logger[_0x741e[20]](_0x741e[18],_0x48edxc,_0x741e[16],JSON[_0x741e[19]](_0x48edx11));if(_0x48edx11[_0x741e[14]]){if(_0x48edx11[_0x741e[14]][_0x741e[21]]=== 500){logger[_0x741e[14]](_0x741e[13],_0x48edxc,_0x48edx11[_0x741e[14]][_0x741e[22]]);return _0x48edxf(_0x48edx11[_0x741e[14]][_0x741e[22]])};logger[_0x741e[14]](_0x741e[13],_0x48edxc,_0x48edx11[_0x741e[14]][_0x741e[22]]);return _0x48edxe(_0x48edx11[_0x741e[14]][_0x741e[22]])}else {logger[_0x741e[17]](_0x741e[13],_0x48edxc,_0x741e[16]);_0x48edxe(_0x48edx11[_0x741e[23]][_0x741e[22]])}})[_0x741e[15]](function(_0x48edx10){logger[_0x741e[14]](_0x741e[13],_0x48edxc,_0x48edx10);_0x48edxf(_0x48edx10)})})}
\ No newline at end of file
index 4aded6f..47a0b13 100644 (file)
@@ -1 +1 @@
-var _0x8121=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8121[0];var multer=require(_0x8121[1]);var util=require(_0x8121[2]);var path=require(_0x8121[3]);var express=require(_0x8121[4]);var router=express.Router();var auth=require(_0x8121[5]);var config=require(_0x8121[6]);var controller=require(_0x8121[7]);router[_0x8121[11]](_0x8121[8],auth[_0x8121[9]](),controller[_0x8121[10]]);router[_0x8121[11]](_0x8121[12],auth[_0x8121[9]](),controller[_0x8121[13]]);router[_0x8121[15]](_0x8121[8],auth[_0x8121[9]](),controller[_0x8121[14]]);router[_0x8121[17]](_0x8121[12],auth[_0x8121[9]](),controller[_0x8121[16]]);router[_0x8121[19]](_0x8121[12],auth[_0x8121[9]](),controller[_0x8121[18]]);module[_0x8121[20]]= router
\ No newline at end of file
+var _0x4ad3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x4ad3[0];var multer=require(_0x4ad3[1]);var util=require(_0x4ad3[2]);var path=require(_0x4ad3[3]);var express=require(_0x4ad3[4]);var router=express.Router();var auth=require(_0x4ad3[5]);var config=require(_0x4ad3[6]);var controller=require(_0x4ad3[7]);router[_0x4ad3[11]](_0x4ad3[8],auth[_0x4ad3[9]](),controller[_0x4ad3[10]]);router[_0x4ad3[11]](_0x4ad3[12],auth[_0x4ad3[9]](),controller[_0x4ad3[13]]);router[_0x4ad3[15]](_0x4ad3[8],auth[_0x4ad3[9]](),controller[_0x4ad3[14]]);router[_0x4ad3[17]](_0x4ad3[12],auth[_0x4ad3[9]](),controller[_0x4ad3[16]]);router[_0x4ad3[19]](_0x4ad3[12],auth[_0x4ad3[9]](),controller[_0x4ad3[18]]);module[_0x4ad3[20]]= router
\ No newline at end of file
index 788b29b..1692c04 100644 (file)
@@ -1 +1 @@
-var _0xf507=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xf507[0];var Sequelize=require(_0xf507[1]);module[_0xf507[2]]= {sourceid:{type:Sequelize[_0xf507[3]]},question_id:{type:Sequelize[_0xf507[3]]},question_type:{type:Sequelize[_0xf507[4]]},question_label:{type:Sequelize[_0xf507[4]]},question_text:{type:Sequelize[_0xf507[4]]},question_answer:{type:Sequelize[_0xf507[4]]},question_other_label:{type:Sequelize[_0xf507[4]]},question_other_answer:{type:Sequelize[_0xf507[4]]},question_options:{type:Sequelize[_0xf507[4]]},index:{type:Sequelize[_0xf507[3]]}}
\ No newline at end of file
+var _0x7fc0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0x7fc0[0];var Sequelize=require(_0x7fc0[1]);module[_0x7fc0[2]]= {sourceid:{type:Sequelize[_0x7fc0[3]]},question_id:{type:Sequelize[_0x7fc0[3]]},question_type:{type:Sequelize[_0x7fc0[4]]},question_label:{type:Sequelize[_0x7fc0[4]]},question_text:{type:Sequelize[_0x7fc0[4]]},question_answer:{type:Sequelize[_0x7fc0[4]]},question_other_label:{type:Sequelize[_0x7fc0[4]]},question_other_answer:{type:Sequelize[_0x7fc0[4]]},question_options:{type:Sequelize[_0x7fc0[4]]},index:{type:Sequelize[_0x7fc0[3]]}}
\ No newline at end of file
index e6a1abd..5fffc7a 100644 (file)
@@ -1 +1 @@
-var _0x51f0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x51f0[0];var jsonpatch=require(_0x51f0[1]);var rp=require(_0x51f0[2]);var moment=require(_0x51f0[3]);var BPromise=require(_0x51f0[4]);var util=require(_0x51f0[5]);var path=require(_0x51f0[6]);var sox=require(_0x51f0[7]);var ejs=require(_0x51f0[8]);var fs=require(_0x51f0[9]);var _=require(_0x51f0[10]);var squel=require(_0x51f0[11]);var crypto=require(_0x51f0[12]);var jsforce=require(_0x51f0[13]);var toCsv=require(_0x51f0[14]);var qs=require(_0x51f0[15]);var logger=require(_0x51f0[17])(_0x51f0[16]);var utils=require(_0x51f0[18]);var config=require(_0x51f0[19]);var db=require(_0x51f0[21])[_0x51f0[20]];function respondWithStatusCode(_0xac64x15,_0xac64x16,_0xac64x17){_0xac64x16= _0xac64x16|| 204;return function(_0xac64x18){if(_0xac64x18){logger[_0x51f0[24]](_0x51f0[22],_0xac64x17,_0xac64x16,_0x51f0[23]);logger[_0x51f0[26]](_0x51f0[25],_0xac64x17,_0xac64x16,_0x51f0[23]);return _0xac64x15[_0x51f0[27]](_0xac64x16)};return _0xac64x15[_0x51f0[29]](304)[_0x51f0[28]]()}}function respondWithResult(_0xac64x15,_0xac64x16,_0xac64x17){_0xac64x16= _0xac64x16|| 200;return function(_0xac64x18){if(_0xac64x18){logger[_0x51f0[24]](_0x51f0[22],_0xac64x17,_0xac64x16,_0x51f0[30]);logger[_0x51f0[26]](_0x51f0[25],_0xac64x17,_0xac64x16,_0x51f0[30],JSON[_0x51f0[31]](_0xac64x18));return _0xac64x15[_0x51f0[29]](_0xac64x16)[_0x51f0[32]](_0xac64x18)};return _0xac64x15[_0x51f0[29]](304)[_0x51f0[28]]()}}function respondWithFilteredResult(_0xac64x15,_0xac64x1b,_0xac64x17){return function(_0xac64x18){if(_0xac64x18){var _0xac64x1c=_0xac64x18[_0x51f0[33]],_0xac64x1d=_0xac64x1b[_0x51f0[34]],_0xac64x1e=_0xac64x1b[_0x51f0[34]]+ _0xac64x1b[_0x51f0[35]],_0xac64x16;if(_0xac64x1e>= _0xac64x1c){_0xac64x1e= _0xac64x1c;_0xac64x16= 200}else {_0xac64x16= 206};_0xac64x15[_0x51f0[29]](_0xac64x16);logger[_0x51f0[24]](_0x51f0[22],_0xac64x17,_0xac64x16,_0x51f0[36]);logger[_0x51f0[26]](_0x51f0[25],_0xac64x17,_0xac64x16,_0x51f0[30],JSON[_0x51f0[31]](_0xac64x18));return _0xac64x15[_0x51f0[40]](_0x51f0[37],_0xac64x1d+ _0x51f0[38]+ _0xac64x1e+ _0x51f0[39]+ _0xac64x1c)[_0x51f0[32]](_0xac64x18)};return null}}function patchUpdates(_0xac64x20){return function(_0xac64x18){try{jsonpatch[_0x51f0[41]](_0xac64x18,_0xac64x20,true)}catch(err){return BPromise[_0x51f0[42]](err)};return _0xac64x18[_0x51f0[43]]()}}function saveUpdates(_0xac64x22,_0xac64x16,_0xac64x17){return function(_0xac64x18){if(_0xac64x18){return _0xac64x18[_0x51f0[46]](_0xac64x22)[_0x51f0[45]](function(_0xac64x23){logger[_0x51f0[24]](_0x51f0[22],_0xac64x17,_0xac64x16,_0x51f0[44]);logger[_0x51f0[26]](_0x51f0[25],_0xac64x17,_0xac64x16,_0x51f0[44],JSON[_0x51f0[31]](_0xac64x18));return _0xac64x23})};return null}}function removeEntity(_0xac64x15,_0xac64x16,_0xac64x17){return function(_0xac64x18){if(_0xac64x18){return _0xac64x18[_0x51f0[48]]()[_0x51f0[45]](function(){logger[_0x51f0[24]](_0x51f0[22],_0xac64x17,_0xac64x16,_0x51f0[47]);logger[_0x51f0[26]](_0x51f0[25],_0xac64x17,_0xac64x16,_0x51f0[47],JSON[_0x51f0[31]](_0xac64x18));_0xac64x15[_0x51f0[29]](204)[_0x51f0[28]]()})}}}function handleEntityNotFound(_0xac64x15,_0xac64x16,_0xac64x17){return function(_0xac64x18){if(!_0xac64x18){logger[_0x51f0[50]](_0x51f0[22],_0xac64x17,404,_0x51f0[49]);_0xac64x15[_0x51f0[29]](404)[_0x51f0[28]]();return null};return _0xac64x18}}function handleError(_0xac64x15,_0xac64x16,_0xac64x17){_0xac64x16= _0xac64x16|| 500;return function(_0xac64x27){logger[_0x51f0[50]](_0x51f0[22],_0xac64x17,_0xac64x16,JSON[_0x51f0[31]](_0xac64x27));delete _0xac64x27[_0x51f0[51]];_0xac64x15[_0x51f0[29]](_0xac64x16)[_0x51f0[52]](_0xac64x27)}}exports[_0x51f0[53]]= function(_0xac64x28,_0xac64x15){var _0xac64x1b={},_0xac64x29={};_0xac64x29[_0x51f0[54]]= _[_0x51f0[57]](db[_0x51f0[56]][_0x51f0[55]]);_0xac64x29[_0x51f0[58]]= _[_0x51f0[57]](_0xac64x28[_0x51f0[58]]);_0xac64x29[_0x51f0[59]]= _[_0x51f0[60]](_0xac64x29[_0x51f0[54]],_0xac64x29[_0x51f0[58]]);_0xac64x1b[_0x51f0[61]]= _[_0x51f0[60]](_0xac64x29[_0x51f0[54]],qs[_0x51f0[62]](_0xac64x28[_0x51f0[58]][_0x51f0[62]]));_0xac64x1b[_0x51f0[61]]= (_0xac64x1b[_0x51f0[61]][_0x51f0[63]])?_0xac64x1b[_0x51f0[61]]:_0xac64x29[_0x51f0[54]];if(!_0xac64x28[_0x51f0[58]][_0x51f0[65]](_0x51f0[64])){_0xac64x1b[_0x51f0[35]]= qs[_0x51f0[35]](_0xac64x28[_0x51f0[58]][_0x51f0[35]]);_0xac64x1b[_0x51f0[34]]= qs[_0x51f0[34]](_0xac64x28[_0x51f0[58]][_0x51f0[34]])};_0xac64x1b[_0x51f0[66]]= qs[_0x51f0[67]](_0xac64x28[_0x51f0[58]][_0x51f0[67]]);_0xac64x1b[_0x51f0[68]]= qs[_0x51f0[59]](_[_0x51f0[69]](_0xac64x28[_0x51f0[58]],_0xac64x29[_0x51f0[59]]));if(_0xac64x28[_0x51f0[58]][_0x51f0[70]]){_0xac64x1b[_0x51f0[68]]= _[_0x51f0[73]](_0xac64x1b[_0x51f0[68]],{$or:_[_0x51f0[72]](_0xac64x1b[_0x51f0[61]],function(_0xac64x2a){var _0xac64x2b={};_0xac64x2b[_0xac64x2a]= {$like:_0x51f0[71]+ _0xac64x28[_0x51f0[58]][_0x51f0[70]]+ _0x51f0[71]};return _0xac64x2b})})};_0xac64x1b= _[_0x51f0[73]]({},_0xac64x1b,_0xac64x28[_0x51f0[74]]);return db[_0x51f0[56]][_0x51f0[76]](_0xac64x1b)[_0x51f0[45]](respondWithFilteredResult(_0xac64x15,_0xac64x1b,_0x51f0[53]))[_0x51f0[75]](handleError(_0xac64x15,null,_0x51f0[53]))};exports[_0x51f0[77]]= function(_0xac64x28,_0xac64x15){var _0xac64x1b={raw:true,where:{id:_0xac64x28[_0x51f0[79]][_0x51f0[78]]}},_0xac64x29={};_0xac64x29[_0x51f0[54]]= _[_0x51f0[57]](db[_0x51f0[56]][_0x51f0[55]]);_0xac64x29[_0x51f0[58]]= _[_0x51f0[57]](_0xac64x28[_0x51f0[58]]);_0xac64x29[_0x51f0[59]]= _[_0x51f0[60]](_0xac64x29[_0x51f0[54]],_0xac64x29[_0x51f0[58]]);_0xac64x1b[_0x51f0[61]]= _[_0x51f0[60]](_0xac64x29[_0x51f0[54]],qs[_0x51f0[62]](_0xac64x28[_0x51f0[58]][_0x51f0[62]]));_0xac64x1b[_0x51f0[61]]= (_0xac64x1b[_0x51f0[61]][_0x51f0[63]])?_0xac64x1b[_0x51f0[61]]:_0xac64x29[_0x51f0[54]];_0xac64x1b= _[_0x51f0[73]]({},_0xac64x1b,_0xac64x28[_0x51f0[74]]);return db[_0x51f0[56]][_0x51f0[80]](_0xac64x1b)[_0x51f0[45]](handleEntityNotFound(_0xac64x15,null,_0x51f0[77]))[_0x51f0[45]](respondWithResult(_0xac64x15,null,_0x51f0[77]))[_0x51f0[75]](handleError(_0xac64x15,null,_0x51f0[77]))};exports[_0x51f0[81]]= function(_0xac64x28,_0xac64x15){return db[_0x51f0[56]][_0x51f0[81]](_0xac64x28[_0x51f0[82]],{})[_0x51f0[45]](respondWithResult(_0xac64x15,201,_0x51f0[81]))[_0x51f0[75]](handleError(_0xac64x15,null,_0x51f0[81]))};exports[_0x51f0[46]]= function(_0xac64x28,_0xac64x15){if(_0xac64x28[_0x51f0[82]][_0x51f0[78]]){delete _0xac64x28[_0x51f0[82]][_0x51f0[78]]};return db[_0x51f0[56]][_0x51f0[80]]({where:{id:_0xac64x28[_0x51f0[79]][_0x51f0[78]]}})[_0x51f0[45]](handleEntityNotFound(_0xac64x15,null,_0x51f0[46]))[_0x51f0[45]](saveUpdates(_0xac64x28[_0x51f0[82]],null,_0x51f0[46]))[_0x51f0[45]](respondWithResult(_0xac64x15,null,_0x51f0[46]))[_0x51f0[75]](handleError(_0xac64x15,null,_0x51f0[46]))};exports[_0x51f0[48]]= function(_0xac64x28,_0xac64x15){return db[_0x51f0[56]][_0x51f0[80]]({where:{id:_0xac64x28[_0x51f0[79]][_0x51f0[78]]}})[_0x51f0[45]](handleEntityNotFound(_0xac64x15,null,_0x51f0[48]))[_0x51f0[45]](removeEntity(_0xac64x15,null,_0x51f0[48]))[_0x51f0[75]](handleError(_0xac64x15,null,_0x51f0[48]))}
\ No newline at end of file
+var _0xe81a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xe81a[0];var jsonpatch=require(_0xe81a[1]);var rp=require(_0xe81a[2]);var moment=require(_0xe81a[3]);var BPromise=require(_0xe81a[4]);var util=require(_0xe81a[5]);var path=require(_0xe81a[6]);var sox=require(_0xe81a[7]);var ejs=require(_0xe81a[8]);var fs=require(_0xe81a[9]);var _=require(_0xe81a[10]);var squel=require(_0xe81a[11]);var crypto=require(_0xe81a[12]);var jsforce=require(_0xe81a[13]);var toCsv=require(_0xe81a[14]);var qs=require(_0xe81a[15]);var logger=require(_0xe81a[17])(_0xe81a[16]);var utils=require(_0xe81a[18]);var config=require(_0xe81a[19]);var db=require(_0xe81a[21])[_0xe81a[20]];function respondWithStatusCode(_0x4f21x15,_0x4f21x16,_0x4f21x17){_0x4f21x16= _0x4f21x16|| 204;return function(_0x4f21x18){if(_0x4f21x18){logger[_0xe81a[24]](_0xe81a[22],_0x4f21x17,_0x4f21x16,_0xe81a[23]);logger[_0xe81a[26]](_0xe81a[25],_0x4f21x17,_0x4f21x16,_0xe81a[23]);return _0x4f21x15[_0xe81a[27]](_0x4f21x16)};return _0x4f21x15[_0xe81a[29]](304)[_0xe81a[28]]()}}function respondWithResult(_0x4f21x15,_0x4f21x16,_0x4f21x17){_0x4f21x16= _0x4f21x16|| 200;return function(_0x4f21x18){if(_0x4f21x18){logger[_0xe81a[24]](_0xe81a[22],_0x4f21x17,_0x4f21x16,_0xe81a[30]);logger[_0xe81a[26]](_0xe81a[25],_0x4f21x17,_0x4f21x16,_0xe81a[30],JSON[_0xe81a[31]](_0x4f21x18));return _0x4f21x15[_0xe81a[29]](_0x4f21x16)[_0xe81a[32]](_0x4f21x18)};return _0x4f21x15[_0xe81a[29]](304)[_0xe81a[28]]()}}function respondWithFilteredResult(_0x4f21x15,_0x4f21x1b,_0x4f21x17){return function(_0x4f21x18){if(_0x4f21x18){var _0x4f21x1c=_0x4f21x18[_0xe81a[33]],_0x4f21x1d=_0x4f21x1b[_0xe81a[34]],_0x4f21x1e=_0x4f21x1b[_0xe81a[34]]+ _0x4f21x1b[_0xe81a[35]],_0x4f21x16;if(_0x4f21x1e>= _0x4f21x1c){_0x4f21x1e= _0x4f21x1c;_0x4f21x16= 200}else {_0x4f21x16= 206};_0x4f21x15[_0xe81a[29]](_0x4f21x16);logger[_0xe81a[24]](_0xe81a[22],_0x4f21x17,_0x4f21x16,_0xe81a[36]);logger[_0xe81a[26]](_0xe81a[25],_0x4f21x17,_0x4f21x16,_0xe81a[30],JSON[_0xe81a[31]](_0x4f21x18));return _0x4f21x15[_0xe81a[40]](_0xe81a[37],_0x4f21x1d+ _0xe81a[38]+ _0x4f21x1e+ _0xe81a[39]+ _0x4f21x1c)[_0xe81a[32]](_0x4f21x18)};return null}}function patchUpdates(_0x4f21x20){return function(_0x4f21x18){try{jsonpatch[_0xe81a[41]](_0x4f21x18,_0x4f21x20,true)}catch(err){return BPromise[_0xe81a[42]](err)};return _0x4f21x18[_0xe81a[43]]()}}function saveUpdates(_0x4f21x22,_0x4f21x16,_0x4f21x17){return function(_0x4f21x18){if(_0x4f21x18){return _0x4f21x18[_0xe81a[46]](_0x4f21x22)[_0xe81a[45]](function(_0x4f21x23){logger[_0xe81a[24]](_0xe81a[22],_0x4f21x17,_0x4f21x16,_0xe81a[44]);logger[_0xe81a[26]](_0xe81a[25],_0x4f21x17,_0x4f21x16,_0xe81a[44],JSON[_0xe81a[31]](_0x4f21x18));return _0x4f21x23})};return null}}function removeEntity(_0x4f21x15,_0x4f21x16,_0x4f21x17){return function(_0x4f21x18){if(_0x4f21x18){return _0x4f21x18[_0xe81a[48]]()[_0xe81a[45]](function(){logger[_0xe81a[24]](_0xe81a[22],_0x4f21x17,_0x4f21x16,_0xe81a[47]);logger[_0xe81a[26]](_0xe81a[25],_0x4f21x17,_0x4f21x16,_0xe81a[47],JSON[_0xe81a[31]](_0x4f21x18));_0x4f21x15[_0xe81a[29]](204)[_0xe81a[28]]()})}}}function handleEntityNotFound(_0x4f21x15,_0x4f21x16,_0x4f21x17){return function(_0x4f21x18){if(!_0x4f21x18){logger[_0xe81a[50]](_0xe81a[22],_0x4f21x17,404,_0xe81a[49]);_0x4f21x15[_0xe81a[29]](404)[_0xe81a[28]]();return null};return _0x4f21x18}}function handleError(_0x4f21x15,_0x4f21x16,_0x4f21x17){_0x4f21x16= _0x4f21x16|| 500;return function(_0x4f21x27){logger[_0xe81a[50]](_0xe81a[22],_0x4f21x17,_0x4f21x16,JSON[_0xe81a[31]](_0x4f21x27));delete _0x4f21x27[_0xe81a[51]];_0x4f21x15[_0xe81a[29]](_0x4f21x16)[_0xe81a[52]](_0x4f21x27)}}exports[_0xe81a[53]]= function(_0x4f21x28,_0x4f21x15){var _0x4f21x1b={},_0x4f21x29={};_0x4f21x29[_0xe81a[54]]= _[_0xe81a[57]](db[_0xe81a[56]][_0xe81a[55]]);_0x4f21x29[_0xe81a[58]]= _[_0xe81a[57]](_0x4f21x28[_0xe81a[58]]);_0x4f21x29[_0xe81a[59]]= _[_0xe81a[60]](_0x4f21x29[_0xe81a[54]],_0x4f21x29[_0xe81a[58]]);_0x4f21x1b[_0xe81a[61]]= _[_0xe81a[60]](_0x4f21x29[_0xe81a[54]],qs[_0xe81a[62]](_0x4f21x28[_0xe81a[58]][_0xe81a[62]]));_0x4f21x1b[_0xe81a[61]]= (_0x4f21x1b[_0xe81a[61]][_0xe81a[63]])?_0x4f21x1b[_0xe81a[61]]:_0x4f21x29[_0xe81a[54]];if(!_0x4f21x28[_0xe81a[58]][_0xe81a[65]](_0xe81a[64])){_0x4f21x1b[_0xe81a[35]]= qs[_0xe81a[35]](_0x4f21x28[_0xe81a[58]][_0xe81a[35]]);_0x4f21x1b[_0xe81a[34]]= qs[_0xe81a[34]](_0x4f21x28[_0xe81a[58]][_0xe81a[34]])};_0x4f21x1b[_0xe81a[66]]= qs[_0xe81a[67]](_0x4f21x28[_0xe81a[58]][_0xe81a[67]]);_0x4f21x1b[_0xe81a[68]]= qs[_0xe81a[59]](_[_0xe81a[69]](_0x4f21x28[_0xe81a[58]],_0x4f21x29[_0xe81a[59]]));if(_0x4f21x28[_0xe81a[58]][_0xe81a[70]]){_0x4f21x1b[_0xe81a[68]]= _[_0xe81a[73]](_0x4f21x1b[_0xe81a[68]],{$or:_[_0xe81a[72]](_0x4f21x1b[_0xe81a[61]],function(_0x4f21x2a){var _0x4f21x2b={};_0x4f21x2b[_0x4f21x2a]= {$like:_0xe81a[71]+ _0x4f21x28[_0xe81a[58]][_0xe81a[70]]+ _0xe81a[71]};return _0x4f21x2b})})};_0x4f21x1b= _[_0xe81a[73]]({},_0x4f21x1b,_0x4f21x28[_0xe81a[74]]);return db[_0xe81a[56]][_0xe81a[76]](_0x4f21x1b)[_0xe81a[45]](respondWithFilteredResult(_0x4f21x15,_0x4f21x1b,_0xe81a[53]))[_0xe81a[75]](handleError(_0x4f21x15,null,_0xe81a[53]))};exports[_0xe81a[77]]= function(_0x4f21x28,_0x4f21x15){var _0x4f21x1b={raw:true,where:{id:_0x4f21x28[_0xe81a[79]][_0xe81a[78]]}},_0x4f21x29={};_0x4f21x29[_0xe81a[54]]= _[_0xe81a[57]](db[_0xe81a[56]][_0xe81a[55]]);_0x4f21x29[_0xe81a[58]]= _[_0xe81a[57]](_0x4f21x28[_0xe81a[58]]);_0x4f21x29[_0xe81a[59]]= _[_0xe81a[60]](_0x4f21x29[_0xe81a[54]],_0x4f21x29[_0xe81a[58]]);_0x4f21x1b[_0xe81a[61]]= _[_0xe81a[60]](_0x4f21x29[_0xe81a[54]],qs[_0xe81a[62]](_0x4f21x28[_0xe81a[58]][_0xe81a[62]]));_0x4f21x1b[_0xe81a[61]]= (_0x4f21x1b[_0xe81a[61]][_0xe81a[63]])?_0x4f21x1b[_0xe81a[61]]:_0x4f21x29[_0xe81a[54]];_0x4f21x1b= _[_0xe81a[73]]({},_0x4f21x1b,_0x4f21x28[_0xe81a[74]]);return db[_0xe81a[56]][_0xe81a[80]](_0x4f21x1b)[_0xe81a[45]](handleEntityNotFound(_0x4f21x15,null,_0xe81a[77]))[_0xe81a[45]](respondWithResult(_0x4f21x15,null,_0xe81a[77]))[_0xe81a[75]](handleError(_0x4f21x15,null,_0xe81a[77]))};exports[_0xe81a[81]]= function(_0x4f21x28,_0x4f21x15){return db[_0xe81a[56]][_0xe81a[81]](_0x4f21x28[_0xe81a[82]],{})[_0xe81a[45]](respondWithResult(_0x4f21x15,201,_0xe81a[81]))[_0xe81a[75]](handleError(_0x4f21x15,null,_0xe81a[81]))};exports[_0xe81a[46]]= function(_0x4f21x28,_0x4f21x15){if(_0x4f21x28[_0xe81a[82]][_0xe81a[78]]){delete _0x4f21x28[_0xe81a[82]][_0xe81a[78]]};return db[_0xe81a[56]][_0xe81a[80]]({where:{id:_0x4f21x28[_0xe81a[79]][_0xe81a[78]]}})[_0xe81a[45]](handleEntityNotFound(_0x4f21x15,null,_0xe81a[46]))[_0xe81a[45]](saveUpdates(_0x4f21x28[_0xe81a[82]],null,_0xe81a[46]))[_0xe81a[45]](respondWithResult(_0x4f21x15,null,_0xe81a[46]))[_0xe81a[75]](handleError(_0x4f21x15,null,_0xe81a[46]))};exports[_0xe81a[48]]= function(_0x4f21x28,_0x4f21x15){return db[_0xe81a[56]][_0xe81a[80]]({where:{id:_0x4f21x28[_0xe81a[79]][_0xe81a[78]]}})[_0xe81a[45]](handleEntityNotFound(_0x4f21x15,null,_0xe81a[48]))[_0xe81a[45]](removeEntity(_0x4f21x15,null,_0xe81a[48]))[_0xe81a[75]](handleError(_0x4f21x15,null,_0xe81a[48]))}
\ No newline at end of file
index 57ac214..3924153 100644 (file)
@@ -1 +1 @@
-var _0x8ee7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6A\x73\x63\x72\x69\x70\x74\x79\x5F\x71\x75\x65\x73\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x8ee7[0];var _=require(_0x8ee7[1]);var util=require(_0x8ee7[2]);var logger=require(_0x8ee7[4])(_0x8ee7[3]);var attributes=require(_0x8ee7[5]);module[_0x8ee7[6]]= function(_0xb3ddx5,_0xb3ddx6){return _0xb3ddx5[_0x8ee7[9]](_0x8ee7[7],attributes,{tableName:_0x8ee7[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x7766=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6A\x73\x63\x72\x69\x70\x74\x79\x5F\x71\x75\x65\x73\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x7766[0];var _=require(_0x7766[1]);var util=require(_0x7766[2]);var logger=require(_0x7766[4])(_0x7766[3]);var attributes=require(_0x7766[5]);module[_0x7766[6]]= function(_0xbc8bx5,_0xbc8bx6){return _0xbc8bx5[_0x7766[9]](_0x7766[7],attributes,{tableName:_0x7766[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 8e90be7..9bd181c 100644 (file)
@@ -1 +1 @@
-var _0xdeeb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xdeeb[0];var _=require(_0xdeeb[1]);var util=require(_0xdeeb[2]);var moment=require(_0xdeeb[3]);var BPromise=require(_0xdeeb[4]);var db=require(_0xdeeb[6])[_0xdeeb[5]];var utils=require(_0xdeeb[7]);var logger=require(_0xdeeb[9])(_0xdeeb[8]);var jayson=require(_0xdeeb[10]);var client=jayson[_0xdeeb[12]][_0xdeeb[11]]({port:9002});function respondWithRpcPromise(_0x1b69xb,_0x1b69xc,_0x1b69xd){return  new BPromise(function(_0x1b69xe,_0x1b69xf){return client[_0xdeeb[25]](_0x1b69xb,_0x1b69xd)[_0xdeeb[24]](function(_0x1b69x11){logger[_0xdeeb[17]](_0xdeeb[13],_0x1b69xc,_0xdeeb[16]);logger[_0xdeeb[20]](_0xdeeb[18],_0x1b69xc,_0xdeeb[16],JSON[_0xdeeb[19]](_0x1b69x11));if(_0x1b69x11[_0xdeeb[14]]){if(_0x1b69x11[_0xdeeb[14]][_0xdeeb[21]]=== 500){logger[_0xdeeb[14]](_0xdeeb[13],_0x1b69xc,_0x1b69x11[_0xdeeb[14]][_0xdeeb[22]]);return _0x1b69xf(_0x1b69x11[_0xdeeb[14]][_0xdeeb[22]])};logger[_0xdeeb[14]](_0xdeeb[13],_0x1b69xc,_0x1b69x11[_0xdeeb[14]][_0xdeeb[22]]);return _0x1b69xe(_0x1b69x11[_0xdeeb[14]][_0xdeeb[22]])}else {logger[_0xdeeb[17]](_0xdeeb[13],_0x1b69xc,_0xdeeb[16]);_0x1b69xe(_0x1b69x11[_0xdeeb[23]][_0xdeeb[22]])}})[_0xdeeb[15]](function(_0x1b69x10){logger[_0xdeeb[14]](_0xdeeb[13],_0x1b69xc,_0x1b69x10);_0x1b69xf(_0x1b69x10)})})}
\ No newline at end of file
+var _0xb986=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xb986[0];var _=require(_0xb986[1]);var util=require(_0xb986[2]);var moment=require(_0xb986[3]);var BPromise=require(_0xb986[4]);var db=require(_0xb986[6])[_0xb986[5]];var utils=require(_0xb986[7]);var logger=require(_0xb986[9])(_0xb986[8]);var jayson=require(_0xb986[10]);var client=jayson[_0xb986[12]][_0xb986[11]]({port:9002});function respondWithRpcPromise(_0x7561xb,_0x7561xc,_0x7561xd){return  new BPromise(function(_0x7561xe,_0x7561xf){return client[_0xb986[25]](_0x7561xb,_0x7561xd)[_0xb986[24]](function(_0x7561x11){logger[_0xb986[17]](_0xb986[13],_0x7561xc,_0xb986[16]);logger[_0xb986[20]](_0xb986[18],_0x7561xc,_0xb986[16],JSON[_0xb986[19]](_0x7561x11));if(_0x7561x11[_0xb986[14]]){if(_0x7561x11[_0xb986[14]][_0xb986[21]]=== 500){logger[_0xb986[14]](_0xb986[13],_0x7561xc,_0x7561x11[_0xb986[14]][_0xb986[22]]);return _0x7561xf(_0x7561x11[_0xb986[14]][_0xb986[22]])};logger[_0xb986[14]](_0xb986[13],_0x7561xc,_0x7561x11[_0xb986[14]][_0xb986[22]]);return _0x7561xe(_0x7561x11[_0xb986[14]][_0xb986[22]])}else {logger[_0xb986[17]](_0xb986[13],_0x7561xc,_0xb986[16]);_0x7561xe(_0x7561x11[_0xb986[23]][_0xb986[22]])}})[_0xb986[15]](function(_0x7561x10){logger[_0xb986[14]](_0xb986[13],_0x7561xc,_0x7561x10);_0x7561xf(_0x7561x10)})})}
\ No newline at end of file
index 0aeb4b2..0aefa86 100644 (file)
@@ -1 +1 @@
-var _0x5a0e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5a0e[0];var multer=require(_0x5a0e[1]);var util=require(_0x5a0e[2]);var path=require(_0x5a0e[3]);var express=require(_0x5a0e[4]);var router=express.Router();var auth=require(_0x5a0e[5]);var config=require(_0x5a0e[6]);var controller=require(_0x5a0e[7]);router[_0x5a0e[11]](_0x5a0e[8],auth[_0x5a0e[9]](),controller[_0x5a0e[10]]);router[_0x5a0e[11]](_0x5a0e[12],auth[_0x5a0e[9]](),controller[_0x5a0e[13]]);router[_0x5a0e[15]](_0x5a0e[8],auth[_0x5a0e[9]](),controller[_0x5a0e[14]]);router[_0x5a0e[17]](_0x5a0e[12],auth[_0x5a0e[9]](),controller[_0x5a0e[16]]);router[_0x5a0e[19]](_0x5a0e[12],auth[_0x5a0e[9]](),controller[_0x5a0e[18]]);module[_0x5a0e[20]]= router
\ No newline at end of file
+var _0x5bea=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5bea[0];var multer=require(_0x5bea[1]);var util=require(_0x5bea[2]);var path=require(_0x5bea[3]);var express=require(_0x5bea[4]);var router=express.Router();var auth=require(_0x5bea[5]);var config=require(_0x5bea[6]);var controller=require(_0x5bea[7]);router[_0x5bea[11]](_0x5bea[8],auth[_0x5bea[9]](),controller[_0x5bea[10]]);router[_0x5bea[11]](_0x5bea[12],auth[_0x5bea[9]](),controller[_0x5bea[13]]);router[_0x5bea[15]](_0x5bea[8],auth[_0x5bea[9]](),controller[_0x5bea[14]]);router[_0x5bea[17]](_0x5bea[12],auth[_0x5bea[9]](),controller[_0x5bea[16]]);router[_0x5bea[19]](_0x5bea[12],auth[_0x5bea[9]](),controller[_0x5bea[18]]);module[_0x5bea[20]]= router
\ No newline at end of file
index b0a1cff..7520dcc 100644 (file)
@@ -1 +1 @@
-var _0x71c4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x73\x74\x61\x72\x74\x65\x64","\x63\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x69\x6E\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x44\x41\x54\x45","\x63\x6F\x6D\x70\x6C\x65\x74\x65\x64\x41\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D","\x66\x6F\x72\x6D\x61\x74","","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x53\x54\x52\x49\x4E\x47"];_0x71c4[0];var moment=require(_0x71c4[1]);var Sequelize=require(_0x71c4[2]);module[_0x71c4[3]]= {sourceid:{type:Sequelize[_0x71c4[4]]},session_id:{type:Sequelize[_0x71c4[4]],primaryKey:true,autoIncrement:true},status:{type:Sequelize.ENUM(_0x71c4[5],_0x71c4[6],_0x71c4[7])},last_question_id:{type:Sequelize[_0x71c4[4]]},completedAt:{type:Sequelize[_0x71c4[8]],get:function(){return this[_0x71c4[10]](_0x71c4[9])?moment(this[_0x71c4[10]](_0x71c4[9]))[_0x71c4[12]](_0x71c4[11]):_0x71c4[13]}},createdAt:{type:Sequelize[_0x71c4[8]],get:function(){return moment(this[_0x71c4[10]](_0x71c4[14]))[_0x71c4[12]](_0x71c4[11])}},queue:{type:Sequelize[_0x71c4[15]]},calleridname:{type:Sequelize[_0x71c4[15]]},calleridnum:{type:Sequelize[_0x71c4[15]]},membername:{type:Sequelize[_0x71c4[15]]}}
\ No newline at end of file
+var _0x25ad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x73\x74\x61\x72\x74\x65\x64","\x63\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x69\x6E\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x44\x41\x54\x45","\x63\x6F\x6D\x70\x6C\x65\x74\x65\x64\x41\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D","\x66\x6F\x72\x6D\x61\x74","","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x53\x54\x52\x49\x4E\x47"];_0x25ad[0];var moment=require(_0x25ad[1]);var Sequelize=require(_0x25ad[2]);module[_0x25ad[3]]= {sourceid:{type:Sequelize[_0x25ad[4]]},session_id:{type:Sequelize[_0x25ad[4]],primaryKey:true,autoIncrement:true},status:{type:Sequelize.ENUM(_0x25ad[5],_0x25ad[6],_0x25ad[7])},last_question_id:{type:Sequelize[_0x25ad[4]]},completedAt:{type:Sequelize[_0x25ad[8]],get:function(){return this[_0x25ad[10]](_0x25ad[9])?moment(this[_0x25ad[10]](_0x25ad[9]))[_0x25ad[12]](_0x25ad[11]):_0x25ad[13]}},createdAt:{type:Sequelize[_0x25ad[8]],get:function(){return moment(this[_0x25ad[10]](_0x25ad[14]))[_0x25ad[12]](_0x25ad[11])}},queue:{type:Sequelize[_0x25ad[15]]},calleridname:{type:Sequelize[_0x25ad[15]]},calleridnum:{type:Sequelize[_0x25ad[15]]},membername:{type:Sequelize[_0x25ad[15]]}}
\ No newline at end of file
index f85bd1a..44c6e4b 100644 (file)
@@ -1 +1 @@
-var _0x9c8d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x9c8d[0];var jsonpatch=require(_0x9c8d[1]);var rp=require(_0x9c8d[2]);var moment=require(_0x9c8d[3]);var BPromise=require(_0x9c8d[4]);var util=require(_0x9c8d[5]);var path=require(_0x9c8d[6]);var sox=require(_0x9c8d[7]);var ejs=require(_0x9c8d[8]);var fs=require(_0x9c8d[9]);var _=require(_0x9c8d[10]);var squel=require(_0x9c8d[11]);var crypto=require(_0x9c8d[12]);var jsforce=require(_0x9c8d[13]);var toCsv=require(_0x9c8d[14]);var qs=require(_0x9c8d[15]);var logger=require(_0x9c8d[17])(_0x9c8d[16]);var utils=require(_0x9c8d[18]);var config=require(_0x9c8d[19]);var db=require(_0x9c8d[21])[_0x9c8d[20]];function respondWithStatusCode(_0xd1e7x15,_0xd1e7x16,_0xd1e7x17){_0xd1e7x16= _0xd1e7x16|| 204;return function(_0xd1e7x18){if(_0xd1e7x18){logger[_0x9c8d[24]](_0x9c8d[22],_0xd1e7x17,_0xd1e7x16,_0x9c8d[23]);logger[_0x9c8d[26]](_0x9c8d[25],_0xd1e7x17,_0xd1e7x16,_0x9c8d[23]);return _0xd1e7x15[_0x9c8d[27]](_0xd1e7x16)};return _0xd1e7x15[_0x9c8d[29]](304)[_0x9c8d[28]]()}}function respondWithResult(_0xd1e7x15,_0xd1e7x16,_0xd1e7x17){_0xd1e7x16= _0xd1e7x16|| 200;return function(_0xd1e7x18){if(_0xd1e7x18){logger[_0x9c8d[24]](_0x9c8d[22],_0xd1e7x17,_0xd1e7x16,_0x9c8d[30]);logger[_0x9c8d[26]](_0x9c8d[25],_0xd1e7x17,_0xd1e7x16,_0x9c8d[30],JSON[_0x9c8d[31]](_0xd1e7x18));return _0xd1e7x15[_0x9c8d[29]](_0xd1e7x16)[_0x9c8d[32]](_0xd1e7x18)};return _0xd1e7x15[_0x9c8d[29]](304)[_0x9c8d[28]]()}}function respondWithFilteredResult(_0xd1e7x15,_0xd1e7x1b,_0xd1e7x17){return function(_0xd1e7x18){if(_0xd1e7x18){var _0xd1e7x1c=_0xd1e7x18[_0x9c8d[33]],_0xd1e7x1d=_0xd1e7x1b[_0x9c8d[34]],_0xd1e7x1e=_0xd1e7x1b[_0x9c8d[34]]+ _0xd1e7x1b[_0x9c8d[35]],_0xd1e7x16;if(_0xd1e7x1e>= _0xd1e7x1c){_0xd1e7x1e= _0xd1e7x1c;_0xd1e7x16= 200}else {_0xd1e7x16= 206};_0xd1e7x15[_0x9c8d[29]](_0xd1e7x16);logger[_0x9c8d[24]](_0x9c8d[22],_0xd1e7x17,_0xd1e7x16,_0x9c8d[36]);logger[_0x9c8d[26]](_0x9c8d[25],_0xd1e7x17,_0xd1e7x16,_0x9c8d[30],JSON[_0x9c8d[31]](_0xd1e7x18));return _0xd1e7x15[_0x9c8d[40]](_0x9c8d[37],_0xd1e7x1d+ _0x9c8d[38]+ _0xd1e7x1e+ _0x9c8d[39]+ _0xd1e7x1c)[_0x9c8d[32]](_0xd1e7x18)};return null}}function patchUpdates(_0xd1e7x20){return function(_0xd1e7x18){try{jsonpatch[_0x9c8d[41]](_0xd1e7x18,_0xd1e7x20,true)}catch(err){return BPromise[_0x9c8d[42]](err)};return _0xd1e7x18[_0x9c8d[43]]()}}function saveUpdates(_0xd1e7x22,_0xd1e7x16,_0xd1e7x17){return function(_0xd1e7x18){if(_0xd1e7x18){return _0xd1e7x18[_0x9c8d[46]](_0xd1e7x22)[_0x9c8d[45]](function(_0xd1e7x23){logger[_0x9c8d[24]](_0x9c8d[22],_0xd1e7x17,_0xd1e7x16,_0x9c8d[44]);logger[_0x9c8d[26]](_0x9c8d[25],_0xd1e7x17,_0xd1e7x16,_0x9c8d[44],JSON[_0x9c8d[31]](_0xd1e7x18));return _0xd1e7x23})};return null}}function removeEntity(_0xd1e7x15,_0xd1e7x16,_0xd1e7x17){return function(_0xd1e7x18){if(_0xd1e7x18){return _0xd1e7x18[_0x9c8d[48]]()[_0x9c8d[45]](function(){logger[_0x9c8d[24]](_0x9c8d[22],_0xd1e7x17,_0xd1e7x16,_0x9c8d[47]);logger[_0x9c8d[26]](_0x9c8d[25],_0xd1e7x17,_0xd1e7x16,_0x9c8d[47],JSON[_0x9c8d[31]](_0xd1e7x18));_0xd1e7x15[_0x9c8d[29]](204)[_0x9c8d[28]]()})}}}function handleEntityNotFound(_0xd1e7x15,_0xd1e7x16,_0xd1e7x17){return function(_0xd1e7x18){if(!_0xd1e7x18){logger[_0x9c8d[50]](_0x9c8d[22],_0xd1e7x17,404,_0x9c8d[49]);_0xd1e7x15[_0x9c8d[29]](404)[_0x9c8d[28]]();return null};return _0xd1e7x18}}function handleError(_0xd1e7x15,_0xd1e7x16,_0xd1e7x17){_0xd1e7x16= _0xd1e7x16|| 500;return function(_0xd1e7x27){logger[_0x9c8d[50]](_0x9c8d[22],_0xd1e7x17,_0xd1e7x16,JSON[_0x9c8d[31]](_0xd1e7x27));delete _0xd1e7x27[_0x9c8d[51]];_0xd1e7x15[_0x9c8d[29]](_0xd1e7x16)[_0x9c8d[52]](_0xd1e7x27)}}exports[_0x9c8d[53]]= function(_0xd1e7x28,_0xd1e7x15){var _0xd1e7x1b={},_0xd1e7x29={};_0xd1e7x29[_0x9c8d[54]]= _[_0x9c8d[57]](db[_0x9c8d[56]][_0x9c8d[55]]);_0xd1e7x29[_0x9c8d[58]]= _[_0x9c8d[57]](_0xd1e7x28[_0x9c8d[58]]);_0xd1e7x29[_0x9c8d[59]]= _[_0x9c8d[60]](_0xd1e7x29[_0x9c8d[54]],_0xd1e7x29[_0x9c8d[58]]);_0xd1e7x1b[_0x9c8d[61]]= _[_0x9c8d[60]](_0xd1e7x29[_0x9c8d[54]],qs[_0x9c8d[62]](_0xd1e7x28[_0x9c8d[58]][_0x9c8d[62]]));_0xd1e7x1b[_0x9c8d[61]]= (_0xd1e7x1b[_0x9c8d[61]][_0x9c8d[63]])?_0xd1e7x1b[_0x9c8d[61]]:_0xd1e7x29[_0x9c8d[54]];if(!_0xd1e7x28[_0x9c8d[58]][_0x9c8d[65]](_0x9c8d[64])){_0xd1e7x1b[_0x9c8d[35]]= qs[_0x9c8d[35]](_0xd1e7x28[_0x9c8d[58]][_0x9c8d[35]]);_0xd1e7x1b[_0x9c8d[34]]= qs[_0x9c8d[34]](_0xd1e7x28[_0x9c8d[58]][_0x9c8d[34]])};_0xd1e7x1b[_0x9c8d[66]]= qs[_0x9c8d[67]](_0xd1e7x28[_0x9c8d[58]][_0x9c8d[67]]);_0xd1e7x1b[_0x9c8d[68]]= qs[_0x9c8d[59]](_[_0x9c8d[69]](_0xd1e7x28[_0x9c8d[58]],_0xd1e7x29[_0x9c8d[59]]));if(_0xd1e7x28[_0x9c8d[58]][_0x9c8d[70]]){_0xd1e7x1b[_0x9c8d[68]]= _[_0x9c8d[73]](_0xd1e7x1b[_0x9c8d[68]],{$or:_[_0x9c8d[72]](_0xd1e7x1b[_0x9c8d[61]],function(_0xd1e7x2a){var _0xd1e7x2b={};_0xd1e7x2b[_0xd1e7x2a]= {$like:_0x9c8d[71]+ _0xd1e7x28[_0x9c8d[58]][_0x9c8d[70]]+ _0x9c8d[71]};return _0xd1e7x2b})})};_0xd1e7x1b= _[_0x9c8d[73]]({},_0xd1e7x1b,_0xd1e7x28[_0x9c8d[74]]);return db[_0x9c8d[56]][_0x9c8d[76]](_0xd1e7x1b)[_0x9c8d[45]](respondWithFilteredResult(_0xd1e7x15,_0xd1e7x1b,_0x9c8d[53]))[_0x9c8d[75]](handleError(_0xd1e7x15,null,_0x9c8d[53]))};exports[_0x9c8d[77]]= function(_0xd1e7x28,_0xd1e7x15){var _0xd1e7x1b={raw:true,where:{id:_0xd1e7x28[_0x9c8d[79]][_0x9c8d[78]]}},_0xd1e7x29={};_0xd1e7x29[_0x9c8d[54]]= _[_0x9c8d[57]](db[_0x9c8d[56]][_0x9c8d[55]]);_0xd1e7x29[_0x9c8d[58]]= _[_0x9c8d[57]](_0xd1e7x28[_0x9c8d[58]]);_0xd1e7x29[_0x9c8d[59]]= _[_0x9c8d[60]](_0xd1e7x29[_0x9c8d[54]],_0xd1e7x29[_0x9c8d[58]]);_0xd1e7x1b[_0x9c8d[61]]= _[_0x9c8d[60]](_0xd1e7x29[_0x9c8d[54]],qs[_0x9c8d[62]](_0xd1e7x28[_0x9c8d[58]][_0x9c8d[62]]));_0xd1e7x1b[_0x9c8d[61]]= (_0xd1e7x1b[_0x9c8d[61]][_0x9c8d[63]])?_0xd1e7x1b[_0x9c8d[61]]:_0xd1e7x29[_0x9c8d[54]];_0xd1e7x1b= _[_0x9c8d[73]]({},_0xd1e7x1b,_0xd1e7x28[_0x9c8d[74]]);return db[_0x9c8d[56]][_0x9c8d[80]](_0xd1e7x1b)[_0x9c8d[45]](handleEntityNotFound(_0xd1e7x15,null,_0x9c8d[77]))[_0x9c8d[45]](respondWithResult(_0xd1e7x15,null,_0x9c8d[77]))[_0x9c8d[75]](handleError(_0xd1e7x15,null,_0x9c8d[77]))};exports[_0x9c8d[81]]= function(_0xd1e7x28,_0xd1e7x15){return db[_0x9c8d[56]][_0x9c8d[81]](_0xd1e7x28[_0x9c8d[82]],{})[_0x9c8d[45]](respondWithResult(_0xd1e7x15,201,_0x9c8d[81]))[_0x9c8d[75]](handleError(_0xd1e7x15,null,_0x9c8d[81]))};exports[_0x9c8d[46]]= function(_0xd1e7x28,_0xd1e7x15){if(_0xd1e7x28[_0x9c8d[82]][_0x9c8d[78]]){delete _0xd1e7x28[_0x9c8d[82]][_0x9c8d[78]]};return db[_0x9c8d[56]][_0x9c8d[80]]({where:{id:_0xd1e7x28[_0x9c8d[79]][_0x9c8d[78]]}})[_0x9c8d[45]](handleEntityNotFound(_0xd1e7x15,null,_0x9c8d[46]))[_0x9c8d[45]](saveUpdates(_0xd1e7x28[_0x9c8d[82]],null,_0x9c8d[46]))[_0x9c8d[45]](respondWithResult(_0xd1e7x15,null,_0x9c8d[46]))[_0x9c8d[75]](handleError(_0xd1e7x15,null,_0x9c8d[46]))};exports[_0x9c8d[48]]= function(_0xd1e7x28,_0xd1e7x15){return db[_0x9c8d[56]][_0x9c8d[80]]({where:{id:_0xd1e7x28[_0x9c8d[79]][_0x9c8d[78]]}})[_0x9c8d[45]](handleEntityNotFound(_0xd1e7x15,null,_0x9c8d[48]))[_0x9c8d[45]](removeEntity(_0xd1e7x15,null,_0x9c8d[48]))[_0x9c8d[75]](handleError(_0xd1e7x15,null,_0x9c8d[48]))}
\ No newline at end of file
+var _0xbce5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xbce5[0];var jsonpatch=require(_0xbce5[1]);var rp=require(_0xbce5[2]);var moment=require(_0xbce5[3]);var BPromise=require(_0xbce5[4]);var util=require(_0xbce5[5]);var path=require(_0xbce5[6]);var sox=require(_0xbce5[7]);var ejs=require(_0xbce5[8]);var fs=require(_0xbce5[9]);var _=require(_0xbce5[10]);var squel=require(_0xbce5[11]);var crypto=require(_0xbce5[12]);var jsforce=require(_0xbce5[13]);var toCsv=require(_0xbce5[14]);var qs=require(_0xbce5[15]);var logger=require(_0xbce5[17])(_0xbce5[16]);var utils=require(_0xbce5[18]);var config=require(_0xbce5[19]);var db=require(_0xbce5[21])[_0xbce5[20]];function respondWithStatusCode(_0x6785x15,_0x6785x16,_0x6785x17){_0x6785x16= _0x6785x16|| 204;return function(_0x6785x18){if(_0x6785x18){logger[_0xbce5[24]](_0xbce5[22],_0x6785x17,_0x6785x16,_0xbce5[23]);logger[_0xbce5[26]](_0xbce5[25],_0x6785x17,_0x6785x16,_0xbce5[23]);return _0x6785x15[_0xbce5[27]](_0x6785x16)};return _0x6785x15[_0xbce5[29]](304)[_0xbce5[28]]()}}function respondWithResult(_0x6785x15,_0x6785x16,_0x6785x17){_0x6785x16= _0x6785x16|| 200;return function(_0x6785x18){if(_0x6785x18){logger[_0xbce5[24]](_0xbce5[22],_0x6785x17,_0x6785x16,_0xbce5[30]);logger[_0xbce5[26]](_0xbce5[25],_0x6785x17,_0x6785x16,_0xbce5[30],JSON[_0xbce5[31]](_0x6785x18));return _0x6785x15[_0xbce5[29]](_0x6785x16)[_0xbce5[32]](_0x6785x18)};return _0x6785x15[_0xbce5[29]](304)[_0xbce5[28]]()}}function respondWithFilteredResult(_0x6785x15,_0x6785x1b,_0x6785x17){return function(_0x6785x18){if(_0x6785x18){var _0x6785x1c=_0x6785x18[_0xbce5[33]],_0x6785x1d=_0x6785x1b[_0xbce5[34]],_0x6785x1e=_0x6785x1b[_0xbce5[34]]+ _0x6785x1b[_0xbce5[35]],_0x6785x16;if(_0x6785x1e>= _0x6785x1c){_0x6785x1e= _0x6785x1c;_0x6785x16= 200}else {_0x6785x16= 206};_0x6785x15[_0xbce5[29]](_0x6785x16);logger[_0xbce5[24]](_0xbce5[22],_0x6785x17,_0x6785x16,_0xbce5[36]);logger[_0xbce5[26]](_0xbce5[25],_0x6785x17,_0x6785x16,_0xbce5[30],JSON[_0xbce5[31]](_0x6785x18));return _0x6785x15[_0xbce5[40]](_0xbce5[37],_0x6785x1d+ _0xbce5[38]+ _0x6785x1e+ _0xbce5[39]+ _0x6785x1c)[_0xbce5[32]](_0x6785x18)};return null}}function patchUpdates(_0x6785x20){return function(_0x6785x18){try{jsonpatch[_0xbce5[41]](_0x6785x18,_0x6785x20,true)}catch(err){return BPromise[_0xbce5[42]](err)};return _0x6785x18[_0xbce5[43]]()}}function saveUpdates(_0x6785x22,_0x6785x16,_0x6785x17){return function(_0x6785x18){if(_0x6785x18){return _0x6785x18[_0xbce5[46]](_0x6785x22)[_0xbce5[45]](function(_0x6785x23){logger[_0xbce5[24]](_0xbce5[22],_0x6785x17,_0x6785x16,_0xbce5[44]);logger[_0xbce5[26]](_0xbce5[25],_0x6785x17,_0x6785x16,_0xbce5[44],JSON[_0xbce5[31]](_0x6785x18));return _0x6785x23})};return null}}function removeEntity(_0x6785x15,_0x6785x16,_0x6785x17){return function(_0x6785x18){if(_0x6785x18){return _0x6785x18[_0xbce5[48]]()[_0xbce5[45]](function(){logger[_0xbce5[24]](_0xbce5[22],_0x6785x17,_0x6785x16,_0xbce5[47]);logger[_0xbce5[26]](_0xbce5[25],_0x6785x17,_0x6785x16,_0xbce5[47],JSON[_0xbce5[31]](_0x6785x18));_0x6785x15[_0xbce5[29]](204)[_0xbce5[28]]()})}}}function handleEntityNotFound(_0x6785x15,_0x6785x16,_0x6785x17){return function(_0x6785x18){if(!_0x6785x18){logger[_0xbce5[50]](_0xbce5[22],_0x6785x17,404,_0xbce5[49]);_0x6785x15[_0xbce5[29]](404)[_0xbce5[28]]();return null};return _0x6785x18}}function handleError(_0x6785x15,_0x6785x16,_0x6785x17){_0x6785x16= _0x6785x16|| 500;return function(_0x6785x27){logger[_0xbce5[50]](_0xbce5[22],_0x6785x17,_0x6785x16,JSON[_0xbce5[31]](_0x6785x27));delete _0x6785x27[_0xbce5[51]];_0x6785x15[_0xbce5[29]](_0x6785x16)[_0xbce5[52]](_0x6785x27)}}exports[_0xbce5[53]]= function(_0x6785x28,_0x6785x15){var _0x6785x1b={},_0x6785x29={};_0x6785x29[_0xbce5[54]]= _[_0xbce5[57]](db[_0xbce5[56]][_0xbce5[55]]);_0x6785x29[_0xbce5[58]]= _[_0xbce5[57]](_0x6785x28[_0xbce5[58]]);_0x6785x29[_0xbce5[59]]= _[_0xbce5[60]](_0x6785x29[_0xbce5[54]],_0x6785x29[_0xbce5[58]]);_0x6785x1b[_0xbce5[61]]= _[_0xbce5[60]](_0x6785x29[_0xbce5[54]],qs[_0xbce5[62]](_0x6785x28[_0xbce5[58]][_0xbce5[62]]));_0x6785x1b[_0xbce5[61]]= (_0x6785x1b[_0xbce5[61]][_0xbce5[63]])?_0x6785x1b[_0xbce5[61]]:_0x6785x29[_0xbce5[54]];if(!_0x6785x28[_0xbce5[58]][_0xbce5[65]](_0xbce5[64])){_0x6785x1b[_0xbce5[35]]= qs[_0xbce5[35]](_0x6785x28[_0xbce5[58]][_0xbce5[35]]);_0x6785x1b[_0xbce5[34]]= qs[_0xbce5[34]](_0x6785x28[_0xbce5[58]][_0xbce5[34]])};_0x6785x1b[_0xbce5[66]]= qs[_0xbce5[67]](_0x6785x28[_0xbce5[58]][_0xbce5[67]]);_0x6785x1b[_0xbce5[68]]= qs[_0xbce5[59]](_[_0xbce5[69]](_0x6785x28[_0xbce5[58]],_0x6785x29[_0xbce5[59]]));if(_0x6785x28[_0xbce5[58]][_0xbce5[70]]){_0x6785x1b[_0xbce5[68]]= _[_0xbce5[73]](_0x6785x1b[_0xbce5[68]],{$or:_[_0xbce5[72]](_0x6785x1b[_0xbce5[61]],function(_0x6785x2a){var _0x6785x2b={};_0x6785x2b[_0x6785x2a]= {$like:_0xbce5[71]+ _0x6785x28[_0xbce5[58]][_0xbce5[70]]+ _0xbce5[71]};return _0x6785x2b})})};_0x6785x1b= _[_0xbce5[73]]({},_0x6785x1b,_0x6785x28[_0xbce5[74]]);return db[_0xbce5[56]][_0xbce5[76]](_0x6785x1b)[_0xbce5[45]](respondWithFilteredResult(_0x6785x15,_0x6785x1b,_0xbce5[53]))[_0xbce5[75]](handleError(_0x6785x15,null,_0xbce5[53]))};exports[_0xbce5[77]]= function(_0x6785x28,_0x6785x15){var _0x6785x1b={raw:true,where:{id:_0x6785x28[_0xbce5[79]][_0xbce5[78]]}},_0x6785x29={};_0x6785x29[_0xbce5[54]]= _[_0xbce5[57]](db[_0xbce5[56]][_0xbce5[55]]);_0x6785x29[_0xbce5[58]]= _[_0xbce5[57]](_0x6785x28[_0xbce5[58]]);_0x6785x29[_0xbce5[59]]= _[_0xbce5[60]](_0x6785x29[_0xbce5[54]],_0x6785x29[_0xbce5[58]]);_0x6785x1b[_0xbce5[61]]= _[_0xbce5[60]](_0x6785x29[_0xbce5[54]],qs[_0xbce5[62]](_0x6785x28[_0xbce5[58]][_0xbce5[62]]));_0x6785x1b[_0xbce5[61]]= (_0x6785x1b[_0xbce5[61]][_0xbce5[63]])?_0x6785x1b[_0xbce5[61]]:_0x6785x29[_0xbce5[54]];_0x6785x1b= _[_0xbce5[73]]({},_0x6785x1b,_0x6785x28[_0xbce5[74]]);return db[_0xbce5[56]][_0xbce5[80]](_0x6785x1b)[_0xbce5[45]](handleEntityNotFound(_0x6785x15,null,_0xbce5[77]))[_0xbce5[45]](respondWithResult(_0x6785x15,null,_0xbce5[77]))[_0xbce5[75]](handleError(_0x6785x15,null,_0xbce5[77]))};exports[_0xbce5[81]]= function(_0x6785x28,_0x6785x15){return db[_0xbce5[56]][_0xbce5[81]](_0x6785x28[_0xbce5[82]],{})[_0xbce5[45]](respondWithResult(_0x6785x15,201,_0xbce5[81]))[_0xbce5[75]](handleError(_0x6785x15,null,_0xbce5[81]))};exports[_0xbce5[46]]= function(_0x6785x28,_0x6785x15){if(_0x6785x28[_0xbce5[82]][_0xbce5[78]]){delete _0x6785x28[_0xbce5[82]][_0xbce5[78]]};return db[_0xbce5[56]][_0xbce5[80]]({where:{id:_0x6785x28[_0xbce5[79]][_0xbce5[78]]}})[_0xbce5[45]](handleEntityNotFound(_0x6785x15,null,_0xbce5[46]))[_0xbce5[45]](saveUpdates(_0x6785x28[_0xbce5[82]],null,_0xbce5[46]))[_0xbce5[45]](respondWithResult(_0x6785x15,null,_0xbce5[46]))[_0xbce5[75]](handleError(_0x6785x15,null,_0xbce5[46]))};exports[_0xbce5[48]]= function(_0x6785x28,_0x6785x15){return db[_0xbce5[56]][_0xbce5[80]]({where:{id:_0x6785x28[_0xbce5[79]][_0xbce5[78]]}})[_0xbce5[45]](handleEntityNotFound(_0x6785x15,null,_0xbce5[48]))[_0xbce5[45]](removeEntity(_0x6785x15,null,_0xbce5[48]))[_0xbce5[75]](handleError(_0x6785x15,null,_0xbce5[48]))}
\ No newline at end of file
index 56f6dce..9197656 100644 (file)
@@ -1 +1 @@
-var _0x2e42=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6A\x73\x63\x72\x69\x70\x74\x79\x5F\x73\x65\x73\x73\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x2e42[0];var _=require(_0x2e42[1]);var util=require(_0x2e42[2]);var logger=require(_0x2e42[4])(_0x2e42[3]);var attributes=require(_0x2e42[5]);module[_0x2e42[6]]= function(_0x3fd0x5,_0x3fd0x6){return _0x3fd0x5[_0x2e42[9]](_0x2e42[7],attributes,{tableName:_0x2e42[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xef21=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6A\x73\x63\x72\x69\x70\x74\x79\x5F\x73\x65\x73\x73\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xef21[0];var _=require(_0xef21[1]);var util=require(_0xef21[2]);var logger=require(_0xef21[4])(_0xef21[3]);var attributes=require(_0xef21[5]);module[_0xef21[6]]= function(_0x67d9x5,_0x67d9x6){return _0x67d9x5[_0xef21[9]](_0xef21[7],attributes,{tableName:_0xef21[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 070e8fb..964bd16 100644 (file)
@@ -1 +1 @@
-var _0x1a5c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x1a5c[0];var _=require(_0x1a5c[1]);var util=require(_0x1a5c[2]);var moment=require(_0x1a5c[3]);var BPromise=require(_0x1a5c[4]);var db=require(_0x1a5c[6])[_0x1a5c[5]];var utils=require(_0x1a5c[7]);var logger=require(_0x1a5c[9])(_0x1a5c[8]);var jayson=require(_0x1a5c[10]);var client=jayson[_0x1a5c[12]][_0x1a5c[11]]({port:9002});function respondWithRpcPromise(_0xdc24xb,_0xdc24xc,_0xdc24xd){return  new BPromise(function(_0xdc24xe,_0xdc24xf){return client[_0x1a5c[25]](_0xdc24xb,_0xdc24xd)[_0x1a5c[24]](function(_0xdc24x11){logger[_0x1a5c[17]](_0x1a5c[13],_0xdc24xc,_0x1a5c[16]);logger[_0x1a5c[20]](_0x1a5c[18],_0xdc24xc,_0x1a5c[16],JSON[_0x1a5c[19]](_0xdc24x11));if(_0xdc24x11[_0x1a5c[14]]){if(_0xdc24x11[_0x1a5c[14]][_0x1a5c[21]]=== 500){logger[_0x1a5c[14]](_0x1a5c[13],_0xdc24xc,_0xdc24x11[_0x1a5c[14]][_0x1a5c[22]]);return _0xdc24xf(_0xdc24x11[_0x1a5c[14]][_0x1a5c[22]])};logger[_0x1a5c[14]](_0x1a5c[13],_0xdc24xc,_0xdc24x11[_0x1a5c[14]][_0x1a5c[22]]);return _0xdc24xe(_0xdc24x11[_0x1a5c[14]][_0x1a5c[22]])}else {logger[_0x1a5c[17]](_0x1a5c[13],_0xdc24xc,_0x1a5c[16]);_0xdc24xe(_0xdc24x11[_0x1a5c[23]][_0x1a5c[22]])}})[_0x1a5c[15]](function(_0xdc24x10){logger[_0x1a5c[14]](_0x1a5c[13],_0xdc24xc,_0xdc24x10);_0xdc24xf(_0xdc24x10)})})}
\ No newline at end of file
+var _0xea9e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xea9e[0];var _=require(_0xea9e[1]);var util=require(_0xea9e[2]);var moment=require(_0xea9e[3]);var BPromise=require(_0xea9e[4]);var db=require(_0xea9e[6])[_0xea9e[5]];var utils=require(_0xea9e[7]);var logger=require(_0xea9e[9])(_0xea9e[8]);var jayson=require(_0xea9e[10]);var client=jayson[_0xea9e[12]][_0xea9e[11]]({port:9002});function respondWithRpcPromise(_0x6894xb,_0x6894xc,_0x6894xd){return  new BPromise(function(_0x6894xe,_0x6894xf){return client[_0xea9e[25]](_0x6894xb,_0x6894xd)[_0xea9e[24]](function(_0x6894x11){logger[_0xea9e[17]](_0xea9e[13],_0x6894xc,_0xea9e[16]);logger[_0xea9e[20]](_0xea9e[18],_0x6894xc,_0xea9e[16],JSON[_0xea9e[19]](_0x6894x11));if(_0x6894x11[_0xea9e[14]]){if(_0x6894x11[_0xea9e[14]][_0xea9e[21]]=== 500){logger[_0xea9e[14]](_0xea9e[13],_0x6894xc,_0x6894x11[_0xea9e[14]][_0xea9e[22]]);return _0x6894xf(_0x6894x11[_0xea9e[14]][_0xea9e[22]])};logger[_0xea9e[14]](_0xea9e[13],_0x6894xc,_0x6894x11[_0xea9e[14]][_0xea9e[22]]);return _0x6894xe(_0x6894x11[_0xea9e[14]][_0xea9e[22]])}else {logger[_0xea9e[17]](_0xea9e[13],_0x6894xc,_0xea9e[16]);_0x6894xe(_0x6894x11[_0xea9e[23]][_0xea9e[22]])}})[_0xea9e[15]](function(_0x6894x10){logger[_0xea9e[14]](_0xea9e[13],_0x6894xc,_0x6894x10);_0x6894xf(_0x6894x10)})})}
\ No newline at end of file
index 208d0c1..955b85d 100644 (file)
@@ -1 +1 @@
-var _0xd952=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xd952[0];var multer=require(_0xd952[1]);var util=require(_0xd952[2]);var path=require(_0xd952[3]);var express=require(_0xd952[4]);var router=express.Router();var auth=require(_0xd952[5]);var config=require(_0xd952[6]);var controller=require(_0xd952[7]);router[_0xd952[10]](_0xd952[8],controller[_0xd952[9]]);router[_0xd952[14]](_0xd952[11],auth[_0xd952[12]](),controller[_0xd952[13]]);module[_0xd952[15]]= router
\ No newline at end of file
+var _0xfbfa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xfbfa[0];var multer=require(_0xfbfa[1]);var util=require(_0xfbfa[2]);var path=require(_0xfbfa[3]);var express=require(_0xfbfa[4]);var router=express.Router();var auth=require(_0xfbfa[5]);var config=require(_0xfbfa[6]);var controller=require(_0xfbfa[7]);router[_0xfbfa[10]](_0xfbfa[8],controller[_0xfbfa[9]]);router[_0xfbfa[14]](_0xfbfa[11],auth[_0xfbfa[12]](),controller[_0xfbfa[13]]);module[_0xfbfa[15]]= router
\ No newline at end of file
index 5a32752..724937f 100644 (file)
@@ -1 +1 @@
-var _0xdcab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x54\x45\x58\x54","\x53\x54\x52\x49\x4E\x47"];_0xdcab[0];var Sequelize=require(_0xdcab[1]);module[_0xdcab[2]]= {license:{type:Sequelize[_0xdcab[3]]},data1:{type:Sequelize[_0xdcab[4]]},data2:{type:Sequelize[_0xdcab[4]]}}
\ No newline at end of file
+var _0xd9b8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x54\x45\x58\x54","\x53\x54\x52\x49\x4E\x47"];_0xd9b8[0];var Sequelize=require(_0xd9b8[1]);module[_0xd9b8[2]]= {license:{type:Sequelize[_0xd9b8[3]]},data1:{type:Sequelize[_0xd9b8[4]]},data2:{type:Sequelize[_0xd9b8[4]]}}
\ No newline at end of file
index 3120458..b5ef9c9 100644 (file)
@@ -1 +1 @@
-var _0xae22=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x64","\x62\x6F\x64\x79","\x63\x61\x74\x63\x68","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x4C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x75\x74\x69\x6C","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x73\x68\x6F\x77","\x67\x65\x74\x4C\x69\x63\x65\x6E\x73\x65"];_0xae22[0];var jsonpatch=require(_0xae22[1]);var rp=require(_0xae22[2]);var moment=require(_0xae22[3]);var BPromise=require(_0xae22[4]);var util=require(_0xae22[5]);var path=require(_0xae22[6]);var sox=require(_0xae22[7]);var ejs=require(_0xae22[8]);var fs=require(_0xae22[9]);var _=require(_0xae22[10]);var squel=require(_0xae22[11]);var crypto=require(_0xae22[12]);var jsforce=require(_0xae22[13]);var toCsv=require(_0xae22[14]);var qs=require(_0xae22[15]);var logger=require(_0xae22[17])(_0xae22[16]);var utils=require(_0xae22[18]);var config=require(_0xae22[19]);var db=require(_0xae22[21])[_0xae22[20]];function respondWithStatusCode(_0xe85fx15,_0xe85fx16,_0xe85fx17){_0xe85fx16= _0xe85fx16|| 204;return function(_0xe85fx18){if(_0xe85fx18){logger[_0xae22[24]](_0xae22[22],_0xe85fx17,_0xe85fx16,_0xae22[23]);logger[_0xae22[26]](_0xae22[25],_0xe85fx17,_0xe85fx16,_0xae22[23]);return _0xe85fx15[_0xae22[27]](_0xe85fx16)};return _0xe85fx15[_0xae22[29]](304)[_0xae22[28]]()}}function respondWithResult(_0xe85fx15,_0xe85fx16,_0xe85fx17){_0xe85fx16= _0xe85fx16|| 200;return function(_0xe85fx18){if(_0xe85fx18){logger[_0xae22[24]](_0xae22[22],_0xe85fx17,_0xe85fx16,_0xae22[30]);logger[_0xae22[26]](_0xae22[25],_0xe85fx17,_0xe85fx16,_0xae22[30],JSON[_0xae22[31]](_0xe85fx18));return _0xe85fx15[_0xae22[29]](_0xe85fx16)[_0xae22[32]](_0xe85fx18)};return _0xe85fx15[_0xae22[29]](304)[_0xae22[28]]()}}function respondWithFilteredResult(_0xe85fx15,_0xe85fx1b,_0xe85fx17){return function(_0xe85fx18){if(_0xe85fx18){var _0xe85fx1c=_0xe85fx18[_0xae22[33]],_0xe85fx1d=_0xe85fx1b[_0xae22[34]],_0xe85fx1e=_0xe85fx1b[_0xae22[34]]+ _0xe85fx1b[_0xae22[35]],_0xe85fx16;if(_0xe85fx1e>= _0xe85fx1c){_0xe85fx1e= _0xe85fx1c;_0xe85fx16= 200}else {_0xe85fx16= 206};_0xe85fx15[_0xae22[29]](_0xe85fx16);logger[_0xae22[24]](_0xae22[22],_0xe85fx17,_0xe85fx16,_0xae22[36]);logger[_0xae22[26]](_0xae22[25],_0xe85fx17,_0xe85fx16,_0xae22[30],JSON[_0xae22[31]](_0xe85fx18));return _0xe85fx15[_0xae22[40]](_0xae22[37],_0xe85fx1d+ _0xae22[38]+ _0xe85fx1e+ _0xae22[39]+ _0xe85fx1c)[_0xae22[32]](_0xe85fx18)};return null}}function patchUpdates(_0xe85fx20){return function(_0xe85fx18){try{jsonpatch[_0xae22[41]](_0xe85fx18,_0xe85fx20,true)}catch(err){return BPromise[_0xae22[42]](err)};return _0xe85fx18[_0xae22[43]]()}}function saveUpdates(_0xe85fx22,_0xe85fx16,_0xe85fx17){return function(_0xe85fx18){if(_0xe85fx18){return _0xe85fx18[_0xae22[46]](_0xe85fx22)[_0xae22[45]](function(_0xe85fx23){logger[_0xae22[24]](_0xae22[22],_0xe85fx17,_0xe85fx16,_0xae22[44]);logger[_0xae22[26]](_0xae22[25],_0xe85fx17,_0xe85fx16,_0xae22[44],JSON[_0xae22[31]](_0xe85fx18));return _0xe85fx23})};return null}}function removeEntity(_0xe85fx15,_0xe85fx16,_0xe85fx17){return function(_0xe85fx18){if(_0xe85fx18){return _0xe85fx18[_0xae22[48]]()[_0xae22[45]](function(){logger[_0xae22[24]](_0xae22[22],_0xe85fx17,_0xe85fx16,_0xae22[47]);logger[_0xae22[26]](_0xae22[25],_0xe85fx17,_0xe85fx16,_0xae22[47],JSON[_0xae22[31]](_0xe85fx18));_0xe85fx15[_0xae22[29]](204)[_0xae22[28]]()})}}}function handleEntityNotFound(_0xe85fx15,_0xe85fx16,_0xe85fx17){return function(_0xe85fx18){if(!_0xe85fx18){logger[_0xae22[50]](_0xae22[22],_0xe85fx17,404,_0xae22[49]);_0xe85fx15[_0xae22[29]](404)[_0xae22[28]]();return null};return _0xe85fx18}}function handleError(_0xe85fx15,_0xe85fx16,_0xe85fx17){_0xe85fx16= _0xe85fx16|| 500;return function(_0xe85fx27){logger[_0xae22[50]](_0xae22[22],_0xe85fx17,_0xe85fx16,JSON[_0xae22[31]](_0xe85fx27));delete _0xe85fx27[_0xae22[51]];_0xe85fx15[_0xae22[29]](_0xe85fx16)[_0xae22[52]](_0xe85fx27)}}exports[_0xae22[46]]= function(_0xe85fx28,_0xe85fx15){if(_0xe85fx28[_0xae22[54]][_0xae22[53]]){delete _0xe85fx28[_0xae22[54]][_0xae22[53]]};return db[_0xae22[58]][_0xae22[57]]({where:{id:_0xe85fx28[_0xae22[56]][_0xae22[53]]}})[_0xae22[45]](handleEntityNotFound(_0xe85fx15,null,_0xae22[46]))[_0xae22[45]](saveUpdates(_0xe85fx28[_0xae22[54]],null,_0xae22[46]))[_0xae22[45]](respondWithResult(_0xe85fx15,null,_0xae22[46]))[_0xae22[55]](handleError(_0xe85fx15,null,_0xae22[46]))};var utilLicense=require(_0xae22[59]);exports[_0xae22[60]]= function(_0xe85fx28,_0xe85fx15){var _0xe85fx1b={raw:true,where:{id:1}},_0xe85fx2a={};_0xe85fx2a[_0xae22[61]]= _[_0xae22[63]](db[_0xae22[58]][_0xae22[62]]);_0xe85fx2a[_0xae22[64]]= _[_0xae22[63]](_0xe85fx28[_0xae22[64]]);_0xe85fx2a[_0xae22[65]]= _[_0xae22[66]](_0xe85fx2a[_0xae22[61]],_0xe85fx2a[_0xae22[64]]);_0xe85fx1b[_0xae22[67]]= _[_0xae22[66]](_0xe85fx2a[_0xae22[61]],qs[_0xae22[68]](_0xe85fx28[_0xae22[64]][_0xae22[68]]));_0xe85fx1b[_0xae22[67]]= (_0xe85fx1b[_0xae22[67]][_0xae22[69]])?_0xe85fx1b[_0xae22[67]]:_0xe85fx2a[_0xae22[61]];_0xe85fx1b= _[_0xae22[71]]({},_0xe85fx1b,_0xe85fx28[_0xae22[70]]);return utilLicense[_0xae22[73]](_0xe85fx1b)[_0xae22[45]](respondWithResult(_0xe85fx15,null,_0xae22[72]))[_0xae22[55]](handleError(_0xe85fx15,null,_0xae22[72]))}
\ No newline at end of file
+var _0x122d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x64","\x62\x6F\x64\x79","\x63\x61\x74\x63\x68","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x4C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x75\x74\x69\x6C","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x73\x68\x6F\x77","\x67\x65\x74\x4C\x69\x63\x65\x6E\x73\x65"];_0x122d[0];var jsonpatch=require(_0x122d[1]);var rp=require(_0x122d[2]);var moment=require(_0x122d[3]);var BPromise=require(_0x122d[4]);var util=require(_0x122d[5]);var path=require(_0x122d[6]);var sox=require(_0x122d[7]);var ejs=require(_0x122d[8]);var fs=require(_0x122d[9]);var _=require(_0x122d[10]);var squel=require(_0x122d[11]);var crypto=require(_0x122d[12]);var jsforce=require(_0x122d[13]);var toCsv=require(_0x122d[14]);var qs=require(_0x122d[15]);var logger=require(_0x122d[17])(_0x122d[16]);var utils=require(_0x122d[18]);var config=require(_0x122d[19]);var db=require(_0x122d[21])[_0x122d[20]];function respondWithStatusCode(_0x17bcx15,_0x17bcx16,_0x17bcx17){_0x17bcx16= _0x17bcx16|| 204;return function(_0x17bcx18){if(_0x17bcx18){logger[_0x122d[24]](_0x122d[22],_0x17bcx17,_0x17bcx16,_0x122d[23]);logger[_0x122d[26]](_0x122d[25],_0x17bcx17,_0x17bcx16,_0x122d[23]);return _0x17bcx15[_0x122d[27]](_0x17bcx16)};return _0x17bcx15[_0x122d[29]](304)[_0x122d[28]]()}}function respondWithResult(_0x17bcx15,_0x17bcx16,_0x17bcx17){_0x17bcx16= _0x17bcx16|| 200;return function(_0x17bcx18){if(_0x17bcx18){logger[_0x122d[24]](_0x122d[22],_0x17bcx17,_0x17bcx16,_0x122d[30]);logger[_0x122d[26]](_0x122d[25],_0x17bcx17,_0x17bcx16,_0x122d[30],JSON[_0x122d[31]](_0x17bcx18));return _0x17bcx15[_0x122d[29]](_0x17bcx16)[_0x122d[32]](_0x17bcx18)};return _0x17bcx15[_0x122d[29]](304)[_0x122d[28]]()}}function respondWithFilteredResult(_0x17bcx15,_0x17bcx1b,_0x17bcx17){return function(_0x17bcx18){if(_0x17bcx18){var _0x17bcx1c=_0x17bcx18[_0x122d[33]],_0x17bcx1d=_0x17bcx1b[_0x122d[34]],_0x17bcx1e=_0x17bcx1b[_0x122d[34]]+ _0x17bcx1b[_0x122d[35]],_0x17bcx16;if(_0x17bcx1e>= _0x17bcx1c){_0x17bcx1e= _0x17bcx1c;_0x17bcx16= 200}else {_0x17bcx16= 206};_0x17bcx15[_0x122d[29]](_0x17bcx16);logger[_0x122d[24]](_0x122d[22],_0x17bcx17,_0x17bcx16,_0x122d[36]);logger[_0x122d[26]](_0x122d[25],_0x17bcx17,_0x17bcx16,_0x122d[30],JSON[_0x122d[31]](_0x17bcx18));return _0x17bcx15[_0x122d[40]](_0x122d[37],_0x17bcx1d+ _0x122d[38]+ _0x17bcx1e+ _0x122d[39]+ _0x17bcx1c)[_0x122d[32]](_0x17bcx18)};return null}}function patchUpdates(_0x17bcx20){return function(_0x17bcx18){try{jsonpatch[_0x122d[41]](_0x17bcx18,_0x17bcx20,true)}catch(err){return BPromise[_0x122d[42]](err)};return _0x17bcx18[_0x122d[43]]()}}function saveUpdates(_0x17bcx22,_0x17bcx16,_0x17bcx17){return function(_0x17bcx18){if(_0x17bcx18){return _0x17bcx18[_0x122d[46]](_0x17bcx22)[_0x122d[45]](function(_0x17bcx23){logger[_0x122d[24]](_0x122d[22],_0x17bcx17,_0x17bcx16,_0x122d[44]);logger[_0x122d[26]](_0x122d[25],_0x17bcx17,_0x17bcx16,_0x122d[44],JSON[_0x122d[31]](_0x17bcx18));return _0x17bcx23})};return null}}function removeEntity(_0x17bcx15,_0x17bcx16,_0x17bcx17){return function(_0x17bcx18){if(_0x17bcx18){return _0x17bcx18[_0x122d[48]]()[_0x122d[45]](function(){logger[_0x122d[24]](_0x122d[22],_0x17bcx17,_0x17bcx16,_0x122d[47]);logger[_0x122d[26]](_0x122d[25],_0x17bcx17,_0x17bcx16,_0x122d[47],JSON[_0x122d[31]](_0x17bcx18));_0x17bcx15[_0x122d[29]](204)[_0x122d[28]]()})}}}function handleEntityNotFound(_0x17bcx15,_0x17bcx16,_0x17bcx17){return function(_0x17bcx18){if(!_0x17bcx18){logger[_0x122d[50]](_0x122d[22],_0x17bcx17,404,_0x122d[49]);_0x17bcx15[_0x122d[29]](404)[_0x122d[28]]();return null};return _0x17bcx18}}function handleError(_0x17bcx15,_0x17bcx16,_0x17bcx17){_0x17bcx16= _0x17bcx16|| 500;return function(_0x17bcx27){logger[_0x122d[50]](_0x122d[22],_0x17bcx17,_0x17bcx16,JSON[_0x122d[31]](_0x17bcx27));delete _0x17bcx27[_0x122d[51]];_0x17bcx15[_0x122d[29]](_0x17bcx16)[_0x122d[52]](_0x17bcx27)}}exports[_0x122d[46]]= function(_0x17bcx28,_0x17bcx15){if(_0x17bcx28[_0x122d[54]][_0x122d[53]]){delete _0x17bcx28[_0x122d[54]][_0x122d[53]]};return db[_0x122d[58]][_0x122d[57]]({where:{id:_0x17bcx28[_0x122d[56]][_0x122d[53]]}})[_0x122d[45]](handleEntityNotFound(_0x17bcx15,null,_0x122d[46]))[_0x122d[45]](saveUpdates(_0x17bcx28[_0x122d[54]],null,_0x122d[46]))[_0x122d[45]](respondWithResult(_0x17bcx15,null,_0x122d[46]))[_0x122d[55]](handleError(_0x17bcx15,null,_0x122d[46]))};var utilLicense=require(_0x122d[59]);exports[_0x122d[60]]= function(_0x17bcx28,_0x17bcx15){var _0x17bcx1b={raw:true,where:{id:1}},_0x17bcx2a={};_0x17bcx2a[_0x122d[61]]= _[_0x122d[63]](db[_0x122d[58]][_0x122d[62]]);_0x17bcx2a[_0x122d[64]]= _[_0x122d[63]](_0x17bcx28[_0x122d[64]]);_0x17bcx2a[_0x122d[65]]= _[_0x122d[66]](_0x17bcx2a[_0x122d[61]],_0x17bcx2a[_0x122d[64]]);_0x17bcx1b[_0x122d[67]]= _[_0x122d[66]](_0x17bcx2a[_0x122d[61]],qs[_0x122d[68]](_0x17bcx28[_0x122d[64]][_0x122d[68]]));_0x17bcx1b[_0x122d[67]]= (_0x17bcx1b[_0x122d[67]][_0x122d[69]])?_0x17bcx1b[_0x122d[67]]:_0x17bcx2a[_0x122d[61]];_0x17bcx1b= _[_0x122d[71]]({},_0x17bcx1b,_0x17bcx28[_0x122d[70]]);return utilLicense[_0x122d[73]](_0x17bcx1b)[_0x122d[45]](respondWithResult(_0x17bcx15,null,_0x122d[72]))[_0x122d[55]](handleError(_0x17bcx15,null,_0x122d[72]))}
\ No newline at end of file
index 282bbb4..6f1228f 100644 (file)
@@ -1 +1 @@
-var _0x8c0c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4C\x69\x63\x65\x6E\x73\x65","\x6C\x69\x63\x65\x6E\x73\x65","\x64\x65\x66\x69\x6E\x65"];_0x8c0c[0];var _=require(_0x8c0c[1]);var util=require(_0x8c0c[2]);var logger=require(_0x8c0c[4])(_0x8c0c[3]);var attributes=require(_0x8c0c[5]);module[_0x8c0c[6]]= function(_0x6955x5,_0x6955x6){return _0x6955x5[_0x8c0c[9]](_0x8c0c[7],attributes,{tableName:_0x8c0c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xd9d8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4C\x69\x63\x65\x6E\x73\x65","\x6C\x69\x63\x65\x6E\x73\x65","\x64\x65\x66\x69\x6E\x65"];_0xd9d8[0];var _=require(_0xd9d8[1]);var util=require(_0xd9d8[2]);var logger=require(_0xd9d8[4])(_0xd9d8[3]);var attributes=require(_0xd9d8[5]);module[_0xd9d8[6]]= function(_0x7e1bx5,_0x7e1bx6){return _0x7e1bx5[_0xd9d8[9]](_0xd9d8[7],attributes,{tableName:_0xd9d8[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 3222ffc..924e615 100644 (file)
@@ -1 +1 @@
-var _0xcd8f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xcd8f[0];var _=require(_0xcd8f[1]);var util=require(_0xcd8f[2]);var moment=require(_0xcd8f[3]);var BPromise=require(_0xcd8f[4]);var db=require(_0xcd8f[6])[_0xcd8f[5]];var utils=require(_0xcd8f[7]);var logger=require(_0xcd8f[9])(_0xcd8f[8]);var jayson=require(_0xcd8f[10]);var client=jayson[_0xcd8f[12]][_0xcd8f[11]]({port:9002});function respondWithRpcPromise(_0x6547xb,_0x6547xc,_0x6547xd){return  new BPromise(function(_0x6547xe,_0x6547xf){return client[_0xcd8f[25]](_0x6547xb,_0x6547xd)[_0xcd8f[24]](function(_0x6547x11){logger[_0xcd8f[17]](_0xcd8f[13],_0x6547xc,_0xcd8f[16]);logger[_0xcd8f[20]](_0xcd8f[18],_0x6547xc,_0xcd8f[16],JSON[_0xcd8f[19]](_0x6547x11));if(_0x6547x11[_0xcd8f[14]]){if(_0x6547x11[_0xcd8f[14]][_0xcd8f[21]]=== 500){logger[_0xcd8f[14]](_0xcd8f[13],_0x6547xc,_0x6547x11[_0xcd8f[14]][_0xcd8f[22]]);return _0x6547xf(_0x6547x11[_0xcd8f[14]][_0xcd8f[22]])};logger[_0xcd8f[14]](_0xcd8f[13],_0x6547xc,_0x6547x11[_0xcd8f[14]][_0xcd8f[22]]);return _0x6547xe(_0x6547x11[_0xcd8f[14]][_0xcd8f[22]])}else {logger[_0xcd8f[17]](_0xcd8f[13],_0x6547xc,_0xcd8f[16]);_0x6547xe(_0x6547x11[_0xcd8f[23]][_0xcd8f[22]])}})[_0xcd8f[15]](function(_0x6547x10){logger[_0xcd8f[14]](_0xcd8f[13],_0x6547xc,_0x6547x10);_0x6547xf(_0x6547x10)})})}
\ No newline at end of file
+var _0x86a0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x86a0[0];var _=require(_0x86a0[1]);var util=require(_0x86a0[2]);var moment=require(_0x86a0[3]);var BPromise=require(_0x86a0[4]);var db=require(_0x86a0[6])[_0x86a0[5]];var utils=require(_0x86a0[7]);var logger=require(_0x86a0[9])(_0x86a0[8]);var jayson=require(_0x86a0[10]);var client=jayson[_0x86a0[12]][_0x86a0[11]]({port:9002});function respondWithRpcPromise(_0x7a85xb,_0x7a85xc,_0x7a85xd){return  new BPromise(function(_0x7a85xe,_0x7a85xf){return client[_0x86a0[25]](_0x7a85xb,_0x7a85xd)[_0x86a0[24]](function(_0x7a85x11){logger[_0x86a0[17]](_0x86a0[13],_0x7a85xc,_0x86a0[16]);logger[_0x86a0[20]](_0x86a0[18],_0x7a85xc,_0x86a0[16],JSON[_0x86a0[19]](_0x7a85x11));if(_0x7a85x11[_0x86a0[14]]){if(_0x7a85x11[_0x86a0[14]][_0x86a0[21]]=== 500){logger[_0x86a0[14]](_0x86a0[13],_0x7a85xc,_0x7a85x11[_0x86a0[14]][_0x86a0[22]]);return _0x7a85xf(_0x7a85x11[_0x86a0[14]][_0x86a0[22]])};logger[_0x86a0[14]](_0x86a0[13],_0x7a85xc,_0x7a85x11[_0x86a0[14]][_0x86a0[22]]);return _0x7a85xe(_0x7a85x11[_0x86a0[14]][_0x86a0[22]])}else {logger[_0x86a0[17]](_0x86a0[13],_0x7a85xc,_0x86a0[16]);_0x7a85xe(_0x7a85x11[_0x86a0[23]][_0x86a0[22]])}})[_0x86a0[15]](function(_0x7a85x10){logger[_0x86a0[14]](_0x86a0[13],_0x7a85xc,_0x7a85x10);_0x7a85xf(_0x7a85x10)})})}
\ No newline at end of file
index f286f1c..c2b1715 100644 (file)
@@ -1 +1 @@
-var _0x60de=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x5F\x73\x65\x72\x76\x65\x72\x73","\x67\x65\x74\x49\x6D\x61\x70","\x2F\x3A\x69\x64\x2F\x6F\x75\x74\x5F\x73\x65\x72\x76\x65\x72\x73","\x67\x65\x74\x53\x6D\x74\x70","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x76\x65\x72\x69\x66\x79","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6D\x61\x70","\x61\x64\x64\x53\x6D\x74\x70","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x73\x65\x6E\x64","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x49\x6D\x61\x70","\x72\x65\x6D\x6F\x76\x65\x53\x6D\x74\x70","\x65\x78\x70\x6F\x72\x74\x73"];_0x60de[0];var multer=require(_0x60de[1]);var util=require(_0x60de[2]);var path=require(_0x60de[3]);var express=require(_0x60de[4]);var router=express.Router();var auth=require(_0x60de[5]);var config=require(_0x60de[6]);var controller=require(_0x60de[7]);router[_0x60de[11]](_0x60de[8],auth[_0x60de[9]](),controller[_0x60de[10]]);router[_0x60de[11]](_0x60de[12],auth[_0x60de[9]](),controller[_0x60de[13]]);router[_0x60de[11]](_0x60de[14],auth[_0x60de[9]](),controller[_0x60de[15]]);router[_0x60de[11]](_0x60de[16],auth[_0x60de[9]](),controller[_0x60de[17]]);router[_0x60de[11]](_0x60de[18],auth[_0x60de[9]](),controller[_0x60de[19]]);router[_0x60de[11]](_0x60de[20],auth[_0x60de[9]](),controller[_0x60de[21]]);router[_0x60de[11]](_0x60de[22],auth[_0x60de[9]](),controller[_0x60de[23]]);router[_0x60de[11]](_0x60de[24],auth[_0x60de[9]](),controller[_0x60de[25]]);router[_0x60de[27]](_0x60de[8],auth[_0x60de[9]](),controller[_0x60de[26]]);router[_0x60de[27]](_0x60de[14],auth[_0x60de[9]](),controller[_0x60de[28]]);router[_0x60de[27]](_0x60de[16],auth[_0x60de[9]](),controller[_0x60de[29]]);router[_0x60de[27]](_0x60de[18],auth[_0x60de[9]](),controller[_0x60de[30]]);router[_0x60de[27]](_0x60de[20],auth[_0x60de[9]](),controller[_0x60de[31]]);router[_0x60de[27]](_0x60de[22],auth[_0x60de[9]](),controller[_0x60de[32]]);router[_0x60de[27]](_0x60de[22],auth[_0x60de[9]](),controller[_0x60de[33]]);router[_0x60de[27]](_0x60de[34],auth[_0x60de[9]](),controller[_0x60de[35]]);router[_0x60de[37]](_0x60de[12],auth[_0x60de[9]](),controller[_0x60de[36]]);router[_0x60de[39]](_0x60de[12],auth[_0x60de[9]](),controller[_0x60de[38]]);router[_0x60de[39]](_0x60de[14],auth[_0x60de[9]](),controller[_0x60de[40]]);router[_0x60de[39]](_0x60de[16],auth[_0x60de[9]](),controller[_0x60de[41]]);module[_0x60de[42]]= router
\ No newline at end of file
+var _0x3c33=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x5F\x73\x65\x72\x76\x65\x72\x73","\x67\x65\x74\x49\x6D\x61\x70","\x2F\x3A\x69\x64\x2F\x6F\x75\x74\x5F\x73\x65\x72\x76\x65\x72\x73","\x67\x65\x74\x53\x6D\x74\x70","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x76\x65\x72\x69\x66\x79","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6D\x61\x70","\x61\x64\x64\x53\x6D\x74\x70","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x73\x65\x6E\x64","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x49\x6D\x61\x70","\x72\x65\x6D\x6F\x76\x65\x53\x6D\x74\x70","\x65\x78\x70\x6F\x72\x74\x73"];_0x3c33[0];var multer=require(_0x3c33[1]);var util=require(_0x3c33[2]);var path=require(_0x3c33[3]);var express=require(_0x3c33[4]);var router=express.Router();var auth=require(_0x3c33[5]);var config=require(_0x3c33[6]);var controller=require(_0x3c33[7]);router[_0x3c33[11]](_0x3c33[8],auth[_0x3c33[9]](),controller[_0x3c33[10]]);router[_0x3c33[11]](_0x3c33[12],auth[_0x3c33[9]](),controller[_0x3c33[13]]);router[_0x3c33[11]](_0x3c33[14],auth[_0x3c33[9]](),controller[_0x3c33[15]]);router[_0x3c33[11]](_0x3c33[16],auth[_0x3c33[9]](),controller[_0x3c33[17]]);router[_0x3c33[11]](_0x3c33[18],auth[_0x3c33[9]](),controller[_0x3c33[19]]);router[_0x3c33[11]](_0x3c33[20],auth[_0x3c33[9]](),controller[_0x3c33[21]]);router[_0x3c33[11]](_0x3c33[22],auth[_0x3c33[9]](),controller[_0x3c33[23]]);router[_0x3c33[11]](_0x3c33[24],auth[_0x3c33[9]](),controller[_0x3c33[25]]);router[_0x3c33[27]](_0x3c33[8],auth[_0x3c33[9]](),controller[_0x3c33[26]]);router[_0x3c33[27]](_0x3c33[14],auth[_0x3c33[9]](),controller[_0x3c33[28]]);router[_0x3c33[27]](_0x3c33[16],auth[_0x3c33[9]](),controller[_0x3c33[29]]);router[_0x3c33[27]](_0x3c33[18],auth[_0x3c33[9]](),controller[_0x3c33[30]]);router[_0x3c33[27]](_0x3c33[20],auth[_0x3c33[9]](),controller[_0x3c33[31]]);router[_0x3c33[27]](_0x3c33[22],auth[_0x3c33[9]](),controller[_0x3c33[32]]);router[_0x3c33[27]](_0x3c33[22],auth[_0x3c33[9]](),controller[_0x3c33[33]]);router[_0x3c33[27]](_0x3c33[34],auth[_0x3c33[9]](),controller[_0x3c33[35]]);router[_0x3c33[37]](_0x3c33[12],auth[_0x3c33[9]](),controller[_0x3c33[36]]);router[_0x3c33[39]](_0x3c33[12],auth[_0x3c33[9]](),controller[_0x3c33[38]]);router[_0x3c33[39]](_0x3c33[14],auth[_0x3c33[9]](),controller[_0x3c33[40]]);router[_0x3c33[39]](_0x3c33[16],auth[_0x3c33[9]](),controller[_0x3c33[41]]);module[_0x3c33[42]]= router
\ No newline at end of file
index fe6779c..850dc62 100644 (file)
@@ -1 +1 @@
-var _0xba3a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52","\x47\x45\x54","\x50\x4F\x53\x54","\x42\x4C\x4F\x42"];_0xba3a[0];var Sequelize=require(_0xba3a[1]);module[_0xba3a[2]]= {description:{type:Sequelize[_0xba3a[3]]},name:{type:Sequelize[_0xba3a[3]],allowNull:false},fidelity:{type:Sequelize[_0xba3a[4]],defaultValue:false},timeout:{type:Sequelize[_0xba3a[5]],defaultValue:0},whiteLabel:{type:Sequelize[_0xba3a[3]]},acceptUrl:{type:Sequelize[_0xba3a[3]]},rejectUrl:{type:Sequelize[_0xba3a[3]]},acceptMethod:{type:Sequelize.ENUM(_0xba3a[6],_0xba3a[7])},rejectMethod:{type:Sequelize.ENUM(_0xba3a[6],_0xba3a[7])},actions:{type:Sequelize[_0xba3a[3]],get:function(){},set:function(_0x880fx2){}},closeUrl:{type:Sequelize[_0xba3a[3]]},closeMethod:{type:Sequelize.ENUM(_0xba3a[6],_0xba3a[7])},signature:{type:Sequelize[_0xba3a[8]],get:function(){}},custom:{type:Sequelize[_0xba3a[4]],defaultValue:false},service:{type:Sequelize[_0xba3a[4]],defaultValue:false}}
\ No newline at end of file
+var _0x79d5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52","\x47\x45\x54","\x50\x4F\x53\x54","\x42\x4C\x4F\x42"];_0x79d5[0];var Sequelize=require(_0x79d5[1]);module[_0x79d5[2]]= {description:{type:Sequelize[_0x79d5[3]]},name:{type:Sequelize[_0x79d5[3]],allowNull:false},fidelity:{type:Sequelize[_0x79d5[4]],defaultValue:false},timeout:{type:Sequelize[_0x79d5[5]],defaultValue:0},whiteLabel:{type:Sequelize[_0x79d5[3]]},acceptUrl:{type:Sequelize[_0x79d5[3]]},rejectUrl:{type:Sequelize[_0x79d5[3]]},acceptMethod:{type:Sequelize.ENUM(_0x79d5[6],_0x79d5[7])},rejectMethod:{type:Sequelize.ENUM(_0x79d5[6],_0x79d5[7])},actions:{type:Sequelize[_0x79d5[3]],get:function(){},set:function(_0xab2fx2){}},closeUrl:{type:Sequelize[_0x79d5[3]]},closeMethod:{type:Sequelize.ENUM(_0x79d5[6],_0x79d5[7])},signature:{type:Sequelize[_0x79d5[8]],get:function(){}},custom:{type:Sequelize[_0x79d5[4]],defaultValue:false},service:{type:Sequelize[_0x79d5[4]],defaultValue:false}}
\ No newline at end of file
index 6ac1f91..0bb420d 100644 (file)
@@ -1 +1 @@
-var _0x9821=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E","\x49\x6D\x61\x70","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x53\x6D\x74\x70","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x49\x6D\x61\x70","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x49\x6D\x61\x70","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x72\x65\x6D\x6F\x76\x65\x49\x6D\x61\x70","\x73\x65\x74\x49\x6D\x61\x70","\x67\x65\x74\x53\x6D\x74\x70","\x61\x64\x64\x53\x6D\x74\x70","\x72\x65\x6D\x6F\x76\x65\x53\x6D\x74\x70","\x73\x65\x74\x53\x6D\x74\x70","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x53\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x72\x76\x69\x63\x65","\x68\x6F\x73\x74","\x70\x6F\x72\x74","\x73\x65\x63\x75\x72\x65","\x75\x73\x65\x72","\x70\x61\x73\x73","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x56\x65\x72\x69\x66\x79\x53\x6D\x74\x70"];_0x9821[0];var jsonpatch=require(_0x9821[1]);var rp=require(_0x9821[2]);var moment=require(_0x9821[3]);var BPromise=require(_0x9821[4]);var util=require(_0x9821[5]);var path=require(_0x9821[6]);var sox=require(_0x9821[7]);var ejs=require(_0x9821[8]);var fs=require(_0x9821[9]);var _=require(_0x9821[10]);var squel=require(_0x9821[11]);var crypto=require(_0x9821[12]);var jsforce=require(_0x9821[13]);var toCsv=require(_0x9821[14]);var qs=require(_0x9821[15]);var logger=require(_0x9821[17])(_0x9821[16]);var utils=require(_0x9821[18]);var config=require(_0x9821[19]);var db=require(_0x9821[21])[_0x9821[20]];var jayson=require(_0x9821[22]);var client=jayson[_0x9821[24]][_0x9821[23]]({port:9003});function respondWithRpcPromise(_0xd41bx17,_0xd41bx18,_0xd41bx19){return  new BPromise(function(_0xd41bx1a,_0xd41bx1b){return client[_0x9821[37]](_0xd41bx17,_0xd41bx19)[_0x9821[36]](function(_0xd41bx1d){logger[_0x9821[29]](_0x9821[25],_0xd41bx18,_0x9821[28]);logger[_0x9821[32]](_0x9821[30],_0xd41bx18,_0x9821[28],JSON[_0x9821[31]](_0xd41bx1d));if(_0xd41bx1d[_0x9821[26]]){if(_0xd41bx1d[_0x9821[26]][_0x9821[33]]=== 500){logger[_0x9821[26]](_0x9821[25],_0xd41bx18,_0xd41bx1d[_0x9821[26]][_0x9821[34]]);return _0xd41bx1b(_0xd41bx1d[_0x9821[26]][_0x9821[34]])};logger[_0x9821[26]](_0x9821[25],_0xd41bx18,_0xd41bx1d[_0x9821[26]][_0x9821[34]]);return _0xd41bx1a(_0xd41bx1d[_0x9821[26]][_0x9821[34]])}else {logger[_0x9821[29]](_0x9821[25],_0xd41bx18,_0x9821[28]);_0xd41bx1a(_0xd41bx1d[_0x9821[35]][_0x9821[34]])}})[_0x9821[27]](function(_0xd41bx1c){logger[_0x9821[26]](_0x9821[25],_0xd41bx18,_0xd41bx1c);_0xd41bx1b(_0xd41bx1c)})})}function respondWithStatusCode(_0xd41bx1d,_0xd41bx1f,_0xd41bx18){_0xd41bx1f= _0xd41bx1f|| 204;return function(_0xd41bx20){if(_0xd41bx20){logger[_0x9821[29]](_0x9821[30],_0xd41bx18,_0xd41bx1f,_0x9821[38]);logger[_0x9821[32]](_0x9821[39],_0xd41bx18,_0xd41bx1f,_0x9821[38]);return _0xd41bx1d[_0x9821[40]](_0xd41bx1f)};return _0xd41bx1d[_0x9821[42]](304)[_0x9821[41]]()}}function respondWithResult(_0xd41bx1d,_0xd41bx1f,_0xd41bx18){_0xd41bx1f= _0xd41bx1f|| 200;return function(_0xd41bx20){if(_0xd41bx20){logger[_0x9821[29]](_0x9821[30],_0xd41bx18,_0xd41bx1f,_0x9821[43]);logger[_0x9821[32]](_0x9821[39],_0xd41bx18,_0xd41bx1f,_0x9821[43],JSON[_0x9821[31]](_0xd41bx20));return _0xd41bx1d[_0x9821[42]](_0xd41bx1f)[_0x9821[44]](_0xd41bx20)};return _0xd41bx1d[_0x9821[42]](304)[_0x9821[41]]()}}function respondWithFilteredResult(_0xd41bx1d,_0xd41bx23,_0xd41bx18){return function(_0xd41bx20){if(_0xd41bx20){var _0xd41bx24=_0xd41bx20[_0x9821[45]],_0xd41bx25=_0xd41bx23[_0x9821[46]],_0xd41bx26=_0xd41bx23[_0x9821[46]]+ _0xd41bx23[_0x9821[47]],_0xd41bx1f;if(_0xd41bx26>= _0xd41bx24){_0xd41bx26= _0xd41bx24;_0xd41bx1f= 200}else {_0xd41bx1f= 206};_0xd41bx1d[_0x9821[42]](_0xd41bx1f);logger[_0x9821[29]](_0x9821[30],_0xd41bx18,_0xd41bx1f,_0x9821[48]);logger[_0x9821[32]](_0x9821[39],_0xd41bx18,_0xd41bx1f,_0x9821[43],JSON[_0x9821[31]](_0xd41bx20));return _0xd41bx1d[_0x9821[52]](_0x9821[49],_0xd41bx25+ _0x9821[50]+ _0xd41bx26+ _0x9821[51]+ _0xd41bx24)[_0x9821[44]](_0xd41bx20)};return null}}function patchUpdates(_0xd41bx28){return function(_0xd41bx20){try{jsonpatch[_0x9821[53]](_0xd41bx20,_0xd41bx28,true)}catch(err){return BPromise[_0x9821[54]](err)};return _0xd41bx20[_0x9821[55]]()}}function saveUpdates(_0xd41bx2a,_0xd41bx1f,_0xd41bx18){return function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[57]](_0xd41bx2a)[_0x9821[36]](function(_0xd41bx2b){logger[_0x9821[29]](_0x9821[30],_0xd41bx18,_0xd41bx1f,_0x9821[56]);logger[_0x9821[32]](_0x9821[39],_0xd41bx18,_0xd41bx1f,_0x9821[56],JSON[_0x9821[31]](_0xd41bx20));return _0xd41bx2b})};return null}}function removeEntity(_0xd41bx1d,_0xd41bx1f,_0xd41bx18){return function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[59]]()[_0x9821[36]](function(){logger[_0x9821[29]](_0x9821[30],_0xd41bx18,_0xd41bx1f,_0x9821[58]);logger[_0x9821[32]](_0x9821[39],_0xd41bx18,_0xd41bx1f,_0x9821[58],JSON[_0x9821[31]](_0xd41bx20));_0xd41bx1d[_0x9821[42]](204)[_0x9821[41]]()})}}}function handleEntityNotFound(_0xd41bx1d,_0xd41bx1f,_0xd41bx18){return function(_0xd41bx20){if(!_0xd41bx20){logger[_0x9821[26]](_0x9821[30],_0xd41bx18,404,_0x9821[60]);_0xd41bx1d[_0x9821[42]](404)[_0x9821[41]]();return null};return _0xd41bx20}}function handleError(_0xd41bx1d,_0xd41bx1f,_0xd41bx18){_0xd41bx1f= _0xd41bx1f|| 500;return function(_0xd41bx1c){logger[_0x9821[26]](_0x9821[30],_0xd41bx18,_0xd41bx1f,JSON[_0x9821[31]](_0xd41bx1c));delete _0xd41bx1c[_0x9821[61]];_0xd41bx1d[_0x9821[42]](_0xd41bx1f)[_0x9821[62]](_0xd41bx1c)}}exports[_0x9821[63]]= function(_0xd41bx19,_0xd41bx1d){var _0xd41bx23={include:[{model:db[_0x9821[64]],as:_0x9821[65]},{model:db[_0x9821[66]],as:_0x9821[67]}]},_0xd41bx2f={};_0xd41bx2f[_0x9821[68]]= _[_0x9821[71]](db[_0x9821[70]][_0x9821[69]]);_0xd41bx2f[_0x9821[72]]= _[_0x9821[71]](_0xd41bx19[_0x9821[72]]);_0xd41bx2f[_0x9821[73]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],_0xd41bx2f[_0x9821[72]]);_0xd41bx23[_0x9821[75]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],qs[_0x9821[76]](_0xd41bx19[_0x9821[72]][_0x9821[76]]));_0xd41bx23[_0x9821[75]]= (_0xd41bx23[_0x9821[75]][_0x9821[77]])?_0xd41bx23[_0x9821[75]]:_0xd41bx2f[_0x9821[68]];if(!_0xd41bx19[_0x9821[72]][_0x9821[79]](_0x9821[78])){_0xd41bx23[_0x9821[47]]= qs[_0x9821[47]](_0xd41bx19[_0x9821[72]][_0x9821[47]]);_0xd41bx23[_0x9821[46]]= qs[_0x9821[46]](_0xd41bx19[_0x9821[72]][_0x9821[46]])};_0xd41bx23[_0x9821[80]]= qs[_0x9821[81]](_0xd41bx19[_0x9821[72]][_0x9821[81]]);_0xd41bx23[_0x9821[82]]= qs[_0x9821[73]](_[_0x9821[83]](_0xd41bx19[_0x9821[72]],_0xd41bx2f[_0x9821[73]]));if(_0xd41bx19[_0x9821[72]][_0x9821[84]]){_0xd41bx23[_0x9821[82]]= _[_0x9821[87]](_0xd41bx23[_0x9821[82]],{$or:_[_0x9821[86]](_0xd41bx23[_0x9821[75]],function(_0xd41bx30){var _0xd41bx31={};_0xd41bx31[_0xd41bx30]= {$like:_0x9821[85]+ _0xd41bx19[_0x9821[72]][_0x9821[84]]+ _0x9821[85]};return _0xd41bx31})})};_0xd41bx23= _[_0x9821[87]]({},_0xd41bx23,_0xd41bx19[_0x9821[88]]);return db[_0x9821[70]][_0x9821[89]](_0xd41bx23)[_0x9821[36]](respondWithFilteredResult(_0xd41bx1d,_0xd41bx23,_0x9821[63]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[63]))};exports[_0x9821[90]]= function(_0xd41bx19,_0xd41bx1d){var _0xd41bx23={raw:false,where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]},include:[{model:db[_0x9821[64]],as:_0x9821[65]},{model:db[_0x9821[66]],as:_0x9821[67]}]},_0xd41bx2f={};_0xd41bx2f[_0x9821[68]]= _[_0x9821[71]](db[_0x9821[70]][_0x9821[69]]);_0xd41bx2f[_0x9821[72]]= _[_0x9821[71]](_0xd41bx19[_0x9821[72]]);_0xd41bx2f[_0x9821[73]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],_0xd41bx2f[_0x9821[72]]);_0xd41bx23[_0x9821[75]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],qs[_0x9821[76]](_0xd41bx19[_0x9821[72]][_0x9821[76]]));_0xd41bx23[_0x9821[75]]= (_0xd41bx23[_0x9821[75]][_0x9821[77]])?_0xd41bx23[_0x9821[75]]:_0xd41bx2f[_0x9821[68]];_0xd41bx23= _[_0x9821[87]]({},_0xd41bx23,_0xd41bx19[_0x9821[88]]);return db[_0x9821[70]][_0x9821[93]](_0xd41bx23)[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[90]))[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[90]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[90]))};exports[_0x9821[94]]= function(_0xd41bx19,_0xd41bx1d){return db[_0x9821[70]][_0x9821[94]](_0xd41bx19[_0x9821[95]],{include:[{model:db[_0x9821[66]],as:_0x9821[67]}]})[_0x9821[36]](respondWithResult(_0xd41bx1d,201,_0x9821[94]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[94]))};exports[_0x9821[57]]= function(_0xd41bx19,_0xd41bx1d){if(_0xd41bx19[_0x9821[95]][_0x9821[91]]){delete _0xd41bx19[_0x9821[95]][_0x9821[91]]};return db[_0x9821[70]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]},include:[{model:db[_0x9821[64]],as:_0x9821[65]},{model:db[_0x9821[66]],as:_0x9821[67]}]})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[57]))[_0x9821[36]](saveUpdates(_0xd41bx19[_0x9821[95]],null,_0x9821[57]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20&& _0xd41bx19[_0x9821[95]][_0x9821[65]]){return db[_0x9821[64]][_0x9821[57]](_0xd41bx19[_0x9821[95]].Imap,{where:{MailAccountId:_0xd41bx20[_0x9821[91]]}})[_0x9821[36]](function(){return _0xd41bx20})};return _0xd41bx20})[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20&& _0xd41bx19[_0x9821[95]][_0x9821[67]]){return db[_0x9821[66]][_0x9821[57]](_0xd41bx19[_0x9821[95]].Smtp,{where:{MailAccountId:_0xd41bx20[_0x9821[91]]}})[_0x9821[36]](function(){return _0xd41bx20})};return _0xd41bx20})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[57]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[57]))};exports[_0x9821[59]]= function(_0xd41bx19,_0xd41bx1d){return db[_0x9821[70]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[59]))[_0x9821[36]](removeEntity(_0xd41bx1d,null,_0x9821[59]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[59]))};exports[_0x9821[96]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){return db[_0x9821[70]][_0x9821[97]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[96]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[96]]()};return null})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[96]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[96]))};exports[_0x9821[98]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){if(_0xd41bx19[_0x9821[95]][_0x9821[91]]){delete _0xd41bx19[_0x9821[95]][_0x9821[91]]};return db[_0x9821[70]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[98]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){_0xd41bx19[_0x9821[95]][_0x9821[99]]= _0xd41bx20[_0x9821[91]];return db[_0x9821[64]][_0x9821[94]](_0xd41bx19[_0x9821[95]])}})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[98]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[98]))};exports[_0x9821[100]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){return db[_0x9821[70]][_0x9821[97]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[100]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[101]](null)};return null})[_0x9821[36]](respondWithStatusCode(_0xd41bx1d,null,_0x9821[100]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[100]))};exports[_0x9821[102]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){return db[_0x9821[70]][_0x9821[97]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[102]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[102]]()};return null})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[102]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[102]))};exports[_0x9821[103]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){if(_0xd41bx19[_0x9821[95]][_0x9821[91]]){delete _0xd41bx19[_0x9821[95]][_0x9821[91]]};return db[_0x9821[70]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[103]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){_0xd41bx19[_0x9821[95]][_0x9821[99]]= _0xd41bx20[_0x9821[91]];return db[_0x9821[66]][_0x9821[94]](_0xd41bx19[_0x9821[95]])}})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[103]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[103]))};exports[_0x9821[104]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){return db[_0x9821[70]][_0x9821[97]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[104]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[105]](null)};return null})[_0x9821[36]](respondWithStatusCode(_0xd41bx1d,null,_0x9821[104]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[104]))};exports[_0x9821[106]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){return db[_0x9821[109]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[106]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[106]](_0xd41bx19[_0x9821[95]][_0x9821[107]],_[_0x9821[108]](_0xd41bx19[_0x9821[95]],[_0x9821[107],_0x9821[91]])|| {})};return null})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[106]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[106]))};exports[_0x9821[110]]= function(_0xd41bx19,_0xd41bx20,_0xd41bx32){var _0xd41bx23={};var _0xd41bx2f={};var _0xd41bx33;var _0xd41bx24;return db[_0x9821[70]][_0x9821[97]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx20,null,_0x9821[110]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){_0xd41bx33= _0xd41bx20;_0xd41bx2f[_0x9821[68]]= _[_0x9821[71]](db[_0x9821[109]][_0x9821[69]]);_0xd41bx2f[_0x9821[72]]= _[_0x9821[71]](_0xd41bx19[_0x9821[72]]);_0xd41bx2f[_0x9821[73]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],_0xd41bx2f[_0x9821[72]]);_0xd41bx23[_0x9821[75]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],qs[_0x9821[76]](_0xd41bx19[_0x9821[72]][_0x9821[76]]));_0xd41bx23[_0x9821[75]]= (_0xd41bx23[_0x9821[75]][_0x9821[77]])?_0xd41bx23[_0x9821[75]]:_0xd41bx2f[_0x9821[68]];_0xd41bx23[_0x9821[80]]= qs[_0x9821[81]](_0xd41bx19[_0x9821[72]][_0x9821[81]]);_0xd41bx23[_0x9821[82]]= qs[_0x9821[73]](_[_0x9821[83]](_0xd41bx19[_0x9821[72]],_0xd41bx2f[_0x9821[73]]));if(_0xd41bx19[_0x9821[72]][_0x9821[84]]){_0xd41bx23[_0x9821[82]]= _[_0x9821[87]](_0xd41bx23[_0x9821[82]],{$or:_[_0x9821[86]](_0xd41bx23[_0x9821[75]],function(_0xd41bx30){var _0xd41bx31={};_0xd41bx31[_0xd41bx30]= {$like:_0x9821[85]+ _0xd41bx19[_0x9821[72]][_0x9821[84]]+ _0x9821[85]};return _0xd41bx31})})};_0xd41bx23= _[_0x9821[87]]({},_0xd41bx23,_0xd41bx19[_0x9821[88]]);return _0xd41bx33[_0x9821[110]](_0xd41bx23)}})[_0x9821[36]](function(_0xd41bx35){if(_0xd41bx35){_0xd41bx24= _0xd41bx35[_0x9821[77]];if(!_0xd41bx19[_0x9821[72]][_0x9821[79]](_0x9821[78])){_0xd41bx23[_0x9821[47]]= qs[_0x9821[47]](_0xd41bx19[_0x9821[72]][_0x9821[47]]);_0xd41bx23[_0x9821[46]]= qs[_0x9821[46]](_0xd41bx19[_0x9821[72]][_0x9821[46]])};return _0xd41bx33[_0x9821[110]](_0xd41bx23)}})[_0x9821[36]](function(_0xd41bx34){return _0xd41bx34?{count:_0xd41bx24,rows:_0xd41bx34}:null})[_0x9821[36]](respondWithResult(_0xd41bx20,null,_0x9821[110]))[_0x9821[27]](handleError(_0xd41bx20,null,_0x9821[110]))};exports[_0x9821[111]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){return db[_0x9821[112]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[111]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[111]](_0xd41bx19[_0x9821[95]][_0x9821[107]],_[_0x9821[108]](_0xd41bx19[_0x9821[95]],[_0x9821[107],_0x9821[91]])|| {})};return null})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[111]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[111]))};exports[_0x9821[113]]= function(_0xd41bx19,_0xd41bx20,_0xd41bx32){var _0xd41bx23={};var _0xd41bx2f={};var _0xd41bx33;var _0xd41bx24;return db[_0x9821[70]][_0x9821[97]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx20,null,_0x9821[113]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){_0xd41bx33= _0xd41bx20;_0xd41bx2f[_0x9821[68]]= _[_0x9821[71]](db[_0x9821[114]][_0x9821[69]]);_0xd41bx2f[_0x9821[72]]= _[_0x9821[71]](_0xd41bx19[_0x9821[72]]);_0xd41bx2f[_0x9821[73]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],_0xd41bx2f[_0x9821[72]]);_0xd41bx23[_0x9821[75]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],qs[_0x9821[76]](_0xd41bx19[_0x9821[72]][_0x9821[76]]));_0xd41bx23[_0x9821[75]]= (_0xd41bx23[_0x9821[75]][_0x9821[77]])?_0xd41bx23[_0x9821[75]]:_0xd41bx2f[_0x9821[68]];_0xd41bx23[_0x9821[80]]= qs[_0x9821[81]](_0xd41bx19[_0x9821[72]][_0x9821[81]]);_0xd41bx23[_0x9821[82]]= qs[_0x9821[73]](_[_0x9821[83]](_0xd41bx19[_0x9821[72]],_0xd41bx2f[_0x9821[73]]));if(_0xd41bx19[_0x9821[72]][_0x9821[84]]){_0xd41bx23[_0x9821[82]]= _[_0x9821[87]](_0xd41bx23[_0x9821[82]],{$or:_[_0x9821[86]](_0xd41bx23[_0x9821[75]],function(_0xd41bx30){var _0xd41bx31={};_0xd41bx31[_0xd41bx30]= {$like:_0x9821[85]+ _0xd41bx19[_0x9821[72]][_0x9821[84]]+ _0x9821[85]};return _0xd41bx31})})};_0xd41bx23= _[_0x9821[87]]({},_0xd41bx23,_0xd41bx19[_0x9821[88]]);return _0xd41bx33[_0x9821[113]](_0xd41bx23)}})[_0x9821[36]](function(_0xd41bx35){if(_0xd41bx35){_0xd41bx24= _0xd41bx35[_0x9821[77]];if(!_0xd41bx19[_0x9821[72]][_0x9821[79]](_0x9821[78])){_0xd41bx23[_0x9821[47]]= qs[_0x9821[47]](_0xd41bx19[_0x9821[72]][_0x9821[47]]);_0xd41bx23[_0x9821[46]]= qs[_0x9821[46]](_0xd41bx19[_0x9821[72]][_0x9821[46]])};return _0xd41bx33[_0x9821[113]](_0xd41bx23)}})[_0x9821[36]](function(_0xd41bx34){return _0xd41bx34?{count:_0xd41bx24,rows:_0xd41bx34}:null})[_0x9821[36]](respondWithResult(_0xd41bx20,null,_0x9821[113]))[_0x9821[27]](handleError(_0xd41bx20,null,_0x9821[113]))};exports[_0x9821[115]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){if(_0xd41bx19[_0x9821[95]][_0x9821[91]]){delete _0xd41bx19[_0x9821[95]][_0x9821[91]]};return db[_0x9821[70]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[115]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){_0xd41bx19[_0x9821[95]][_0x9821[99]]= _0xd41bx20[_0x9821[91]];return db[_0x9821[116]][_0x9821[94]](_0xd41bx19[_0x9821[95]])}})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[115]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[115]))};exports[_0x9821[117]]= function(_0xd41bx19,_0xd41bx1d,_0xd41bx32){return db[_0x9821[118]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx1d,null,_0x9821[117]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){return _0xd41bx20[_0x9821[117]](_0xd41bx19[_0x9821[95]][_0x9821[107]],_[_0x9821[108]](_0xd41bx19[_0x9821[95]],[_0x9821[107],_0x9821[91]])|| {})};return null})[_0x9821[36]](respondWithResult(_0xd41bx1d,null,_0x9821[117]))[_0x9821[27]](handleError(_0xd41bx1d,null,_0x9821[117]))};exports[_0x9821[119]]= function(_0xd41bx19,_0xd41bx20,_0xd41bx32){var _0xd41bx23={};var _0xd41bx2f={};var _0xd41bx33;var _0xd41bx24;return db[_0x9821[70]][_0x9821[97]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]}})[_0x9821[36]](handleEntityNotFound(_0xd41bx20,null,_0x9821[119]))[_0x9821[36]](function(_0xd41bx20){if(_0xd41bx20){_0xd41bx33= _0xd41bx20;_0xd41bx2f[_0x9821[68]]= _[_0x9821[71]](db[_0x9821[116]][_0x9821[69]]);_0xd41bx2f[_0x9821[72]]= _[_0x9821[71]](_0xd41bx19[_0x9821[72]]);_0xd41bx2f[_0x9821[73]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],_0xd41bx2f[_0x9821[72]]);_0xd41bx23[_0x9821[75]]= _[_0x9821[74]](_0xd41bx2f[_0x9821[68]],qs[_0x9821[76]](_0xd41bx19[_0x9821[72]][_0x9821[76]]));_0xd41bx23[_0x9821[75]]= (_0xd41bx23[_0x9821[75]][_0x9821[77]])?_0xd41bx23[_0x9821[75]]:_0xd41bx2f[_0x9821[68]];_0xd41bx23[_0x9821[80]]= qs[_0x9821[81]](_0xd41bx19[_0x9821[72]][_0x9821[81]]);_0xd41bx23[_0x9821[82]]= qs[_0x9821[73]](_[_0x9821[83]](_0xd41bx19[_0x9821[72]],_0xd41bx2f[_0x9821[73]]));if(_0xd41bx19[_0x9821[72]][_0x9821[84]]){_0xd41bx23[_0x9821[82]]= _[_0x9821[87]](_0xd41bx23[_0x9821[82]],{$or:_[_0x9821[86]](_0xd41bx23[_0x9821[75]],function(_0xd41bx30){var _0xd41bx31={};_0xd41bx31[_0xd41bx30]= {$like:_0x9821[85]+ _0xd41bx19[_0x9821[72]][_0x9821[84]]+ _0x9821[85]};return _0xd41bx31})})};_0xd41bx23= _[_0x9821[87]]({},_0xd41bx23,_0xd41bx19[_0x9821[88]]);return _0xd41bx33[_0x9821[119]](_0xd41bx23)}})[_0x9821[36]](function(_0xd41bx35){if(_0xd41bx35){_0xd41bx24= _0xd41bx35[_0x9821[77]];if(!_0xd41bx19[_0x9821[72]][_0x9821[79]](_0x9821[78])){_0xd41bx23[_0x9821[47]]= qs[_0x9821[47]](_0xd41bx19[_0x9821[72]][_0x9821[47]]);_0xd41bx23[_0x9821[46]]= qs[_0x9821[46]](_0xd41bx19[_0x9821[72]][_0x9821[46]])};return _0xd41bx33[_0x9821[119]](_0xd41bx23)}})[_0x9821[36]](function(_0xd41bx34){return _0xd41bx34?{count:_0xd41bx24,rows:_0xd41bx34}:null})[_0x9821[36]](respondWithResult(_0xd41bx20,null,_0x9821[119]))[_0x9821[27]](handleError(_0xd41bx20,null,_0x9821[119]))};exports[_0x9821[120]]= function(_0xd41bx19,_0xd41bx20,_0xd41bx32){return db[_0x9821[70]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]},include:[{model:db[_0x9821[66]],as:_0x9821[67],raw:true}]})[_0x9821[36]](handleEntityNotFound(_0xd41bx20,null,_0x9821[120]))[_0x9821[36]](function(_0xd41bx36){if(_0xd41bx36&& _0xd41bx36[_0x9821[67]]){return respondWithRpcPromise(_0x9821[121],_0x9821[120],{account:{service:_0xd41bx36[_0x9821[67]][_0x9821[122]],host:_0xd41bx36[_0x9821[67]][_0x9821[123]],port:_0xd41bx36[_0x9821[67]][_0x9821[124]],secure:_0xd41bx36[_0x9821[67]][_0x9821[125]],auth:{user:_0xd41bx36[_0x9821[67]][_0x9821[126]],pass:_0xd41bx36[_0x9821[67]][_0x9821[127]]},tls:{rejectUnauthorized:false}},message:_0xd41bx19[_0x9821[95]]})}})[_0x9821[36]](respondWithResult(_0xd41bx20,null,_0x9821[120]))[_0x9821[27]](handleError(_0xd41bx20,null,_0x9821[120]))};exports[_0x9821[128]]= function(_0xd41bx19,_0xd41bx20,_0xd41bx32){return db[_0x9821[70]][_0x9821[93]]({where:{id:_0xd41bx19[_0x9821[92]][_0x9821[91]]},include:[{model:db[_0x9821[66]],as:_0x9821[67],raw:true}]})[_0x9821[36]](handleEntityNotFound(_0xd41bx20,null,_0x9821[128]))[_0x9821[36]](function(_0xd41bx36){if(_0xd41bx36&& _0xd41bx36[_0x9821[67]]){return respondWithRpcPromise(_0x9821[129],_0x9821[128],{account:{service:_0xd41bx36[_0x9821[67]][_0x9821[122]],host:_0xd41bx36[_0x9821[67]][_0x9821[123]],port:_0xd41bx36[_0x9821[67]][_0x9821[124]],secure:_0xd41bx36[_0x9821[67]][_0x9821[125]],auth:{user:_0xd41bx36[_0x9821[67]][_0x9821[126]],pass:_0xd41bx36[_0x9821[67]][_0x9821[127]]},tls:{rejectUnauthorized:false}}})}})[_0x9821[36]](respondWithResult(_0xd41bx20,null,_0x9821[128]))[_0x9821[27]](handleError(_0xd41bx20,null,_0x9821[128]))}
\ No newline at end of file
+var _0xa5bd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E","\x49\x6D\x61\x70","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x53\x6D\x74\x70","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x49\x6D\x61\x70","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x49\x6D\x61\x70","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x72\x65\x6D\x6F\x76\x65\x49\x6D\x61\x70","\x73\x65\x74\x49\x6D\x61\x70","\x67\x65\x74\x53\x6D\x74\x70","\x61\x64\x64\x53\x6D\x74\x70","\x72\x65\x6D\x6F\x76\x65\x53\x6D\x74\x70","\x73\x65\x74\x53\x6D\x74\x70","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x53\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x72\x76\x69\x63\x65","\x68\x6F\x73\x74","\x70\x6F\x72\x74","\x73\x65\x63\x75\x72\x65","\x75\x73\x65\x72","\x70\x61\x73\x73","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x56\x65\x72\x69\x66\x79\x53\x6D\x74\x70"];_0xa5bd[0];var jsonpatch=require(_0xa5bd[1]);var rp=require(_0xa5bd[2]);var moment=require(_0xa5bd[3]);var BPromise=require(_0xa5bd[4]);var util=require(_0xa5bd[5]);var path=require(_0xa5bd[6]);var sox=require(_0xa5bd[7]);var ejs=require(_0xa5bd[8]);var fs=require(_0xa5bd[9]);var _=require(_0xa5bd[10]);var squel=require(_0xa5bd[11]);var crypto=require(_0xa5bd[12]);var jsforce=require(_0xa5bd[13]);var toCsv=require(_0xa5bd[14]);var qs=require(_0xa5bd[15]);var logger=require(_0xa5bd[17])(_0xa5bd[16]);var utils=require(_0xa5bd[18]);var config=require(_0xa5bd[19]);var db=require(_0xa5bd[21])[_0xa5bd[20]];var jayson=require(_0xa5bd[22]);var client=jayson[_0xa5bd[24]][_0xa5bd[23]]({port:9003});function respondWithRpcPromise(_0xdd67x17,_0xdd67x18,_0xdd67x19){return  new BPromise(function(_0xdd67x1a,_0xdd67x1b){return client[_0xa5bd[37]](_0xdd67x17,_0xdd67x19)[_0xa5bd[36]](function(_0xdd67x1d){logger[_0xa5bd[29]](_0xa5bd[25],_0xdd67x18,_0xa5bd[28]);logger[_0xa5bd[32]](_0xa5bd[30],_0xdd67x18,_0xa5bd[28],JSON[_0xa5bd[31]](_0xdd67x1d));if(_0xdd67x1d[_0xa5bd[26]]){if(_0xdd67x1d[_0xa5bd[26]][_0xa5bd[33]]=== 500){logger[_0xa5bd[26]](_0xa5bd[25],_0xdd67x18,_0xdd67x1d[_0xa5bd[26]][_0xa5bd[34]]);return _0xdd67x1b(_0xdd67x1d[_0xa5bd[26]][_0xa5bd[34]])};logger[_0xa5bd[26]](_0xa5bd[25],_0xdd67x18,_0xdd67x1d[_0xa5bd[26]][_0xa5bd[34]]);return _0xdd67x1a(_0xdd67x1d[_0xa5bd[26]][_0xa5bd[34]])}else {logger[_0xa5bd[29]](_0xa5bd[25],_0xdd67x18,_0xa5bd[28]);_0xdd67x1a(_0xdd67x1d[_0xa5bd[35]][_0xa5bd[34]])}})[_0xa5bd[27]](function(_0xdd67x1c){logger[_0xa5bd[26]](_0xa5bd[25],_0xdd67x18,_0xdd67x1c);_0xdd67x1b(_0xdd67x1c)})})}function respondWithStatusCode(_0xdd67x1d,_0xdd67x1f,_0xdd67x18){_0xdd67x1f= _0xdd67x1f|| 204;return function(_0xdd67x20){if(_0xdd67x20){logger[_0xa5bd[29]](_0xa5bd[30],_0xdd67x18,_0xdd67x1f,_0xa5bd[38]);logger[_0xa5bd[32]](_0xa5bd[39],_0xdd67x18,_0xdd67x1f,_0xa5bd[38]);return _0xdd67x1d[_0xa5bd[40]](_0xdd67x1f)};return _0xdd67x1d[_0xa5bd[42]](304)[_0xa5bd[41]]()}}function respondWithResult(_0xdd67x1d,_0xdd67x1f,_0xdd67x18){_0xdd67x1f= _0xdd67x1f|| 200;return function(_0xdd67x20){if(_0xdd67x20){logger[_0xa5bd[29]](_0xa5bd[30],_0xdd67x18,_0xdd67x1f,_0xa5bd[43]);logger[_0xa5bd[32]](_0xa5bd[39],_0xdd67x18,_0xdd67x1f,_0xa5bd[43],JSON[_0xa5bd[31]](_0xdd67x20));return _0xdd67x1d[_0xa5bd[42]](_0xdd67x1f)[_0xa5bd[44]](_0xdd67x20)};return _0xdd67x1d[_0xa5bd[42]](304)[_0xa5bd[41]]()}}function respondWithFilteredResult(_0xdd67x1d,_0xdd67x23,_0xdd67x18){return function(_0xdd67x20){if(_0xdd67x20){var _0xdd67x24=_0xdd67x20[_0xa5bd[45]],_0xdd67x25=_0xdd67x23[_0xa5bd[46]],_0xdd67x26=_0xdd67x23[_0xa5bd[46]]+ _0xdd67x23[_0xa5bd[47]],_0xdd67x1f;if(_0xdd67x26>= _0xdd67x24){_0xdd67x26= _0xdd67x24;_0xdd67x1f= 200}else {_0xdd67x1f= 206};_0xdd67x1d[_0xa5bd[42]](_0xdd67x1f);logger[_0xa5bd[29]](_0xa5bd[30],_0xdd67x18,_0xdd67x1f,_0xa5bd[48]);logger[_0xa5bd[32]](_0xa5bd[39],_0xdd67x18,_0xdd67x1f,_0xa5bd[43],JSON[_0xa5bd[31]](_0xdd67x20));return _0xdd67x1d[_0xa5bd[52]](_0xa5bd[49],_0xdd67x25+ _0xa5bd[50]+ _0xdd67x26+ _0xa5bd[51]+ _0xdd67x24)[_0xa5bd[44]](_0xdd67x20)};return null}}function patchUpdates(_0xdd67x28){return function(_0xdd67x20){try{jsonpatch[_0xa5bd[53]](_0xdd67x20,_0xdd67x28,true)}catch(err){return BPromise[_0xa5bd[54]](err)};return _0xdd67x20[_0xa5bd[55]]()}}function saveUpdates(_0xdd67x2a,_0xdd67x1f,_0xdd67x18){return function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[57]](_0xdd67x2a)[_0xa5bd[36]](function(_0xdd67x2b){logger[_0xa5bd[29]](_0xa5bd[30],_0xdd67x18,_0xdd67x1f,_0xa5bd[56]);logger[_0xa5bd[32]](_0xa5bd[39],_0xdd67x18,_0xdd67x1f,_0xa5bd[56],JSON[_0xa5bd[31]](_0xdd67x20));return _0xdd67x2b})};return null}}function removeEntity(_0xdd67x1d,_0xdd67x1f,_0xdd67x18){return function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[59]]()[_0xa5bd[36]](function(){logger[_0xa5bd[29]](_0xa5bd[30],_0xdd67x18,_0xdd67x1f,_0xa5bd[58]);logger[_0xa5bd[32]](_0xa5bd[39],_0xdd67x18,_0xdd67x1f,_0xa5bd[58],JSON[_0xa5bd[31]](_0xdd67x20));_0xdd67x1d[_0xa5bd[42]](204)[_0xa5bd[41]]()})}}}function handleEntityNotFound(_0xdd67x1d,_0xdd67x1f,_0xdd67x18){return function(_0xdd67x20){if(!_0xdd67x20){logger[_0xa5bd[26]](_0xa5bd[30],_0xdd67x18,404,_0xa5bd[60]);_0xdd67x1d[_0xa5bd[42]](404)[_0xa5bd[41]]();return null};return _0xdd67x20}}function handleError(_0xdd67x1d,_0xdd67x1f,_0xdd67x18){_0xdd67x1f= _0xdd67x1f|| 500;return function(_0xdd67x1c){logger[_0xa5bd[26]](_0xa5bd[30],_0xdd67x18,_0xdd67x1f,JSON[_0xa5bd[31]](_0xdd67x1c));delete _0xdd67x1c[_0xa5bd[61]];_0xdd67x1d[_0xa5bd[42]](_0xdd67x1f)[_0xa5bd[62]](_0xdd67x1c)}}exports[_0xa5bd[63]]= function(_0xdd67x19,_0xdd67x1d){var _0xdd67x23={include:[{model:db[_0xa5bd[64]],as:_0xa5bd[65]},{model:db[_0xa5bd[66]],as:_0xa5bd[67]}]},_0xdd67x2f={};_0xdd67x2f[_0xa5bd[68]]= _[_0xa5bd[71]](db[_0xa5bd[70]][_0xa5bd[69]]);_0xdd67x2f[_0xa5bd[72]]= _[_0xa5bd[71]](_0xdd67x19[_0xa5bd[72]]);_0xdd67x2f[_0xa5bd[73]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],_0xdd67x2f[_0xa5bd[72]]);_0xdd67x23[_0xa5bd[75]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],qs[_0xa5bd[76]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[76]]));_0xdd67x23[_0xa5bd[75]]= (_0xdd67x23[_0xa5bd[75]][_0xa5bd[77]])?_0xdd67x23[_0xa5bd[75]]:_0xdd67x2f[_0xa5bd[68]];if(!_0xdd67x19[_0xa5bd[72]][_0xa5bd[79]](_0xa5bd[78])){_0xdd67x23[_0xa5bd[47]]= qs[_0xa5bd[47]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[47]]);_0xdd67x23[_0xa5bd[46]]= qs[_0xa5bd[46]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[46]])};_0xdd67x23[_0xa5bd[80]]= qs[_0xa5bd[81]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[81]]);_0xdd67x23[_0xa5bd[82]]= qs[_0xa5bd[73]](_[_0xa5bd[83]](_0xdd67x19[_0xa5bd[72]],_0xdd67x2f[_0xa5bd[73]]));if(_0xdd67x19[_0xa5bd[72]][_0xa5bd[84]]){_0xdd67x23[_0xa5bd[82]]= _[_0xa5bd[87]](_0xdd67x23[_0xa5bd[82]],{$or:_[_0xa5bd[86]](_0xdd67x23[_0xa5bd[75]],function(_0xdd67x30){var _0xdd67x31={};_0xdd67x31[_0xdd67x30]= {$like:_0xa5bd[85]+ _0xdd67x19[_0xa5bd[72]][_0xa5bd[84]]+ _0xa5bd[85]};return _0xdd67x31})})};_0xdd67x23= _[_0xa5bd[87]]({},_0xdd67x23,_0xdd67x19[_0xa5bd[88]]);return db[_0xa5bd[70]][_0xa5bd[89]](_0xdd67x23)[_0xa5bd[36]](respondWithFilteredResult(_0xdd67x1d,_0xdd67x23,_0xa5bd[63]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[63]))};exports[_0xa5bd[90]]= function(_0xdd67x19,_0xdd67x1d){var _0xdd67x23={raw:false,where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]},include:[{model:db[_0xa5bd[64]],as:_0xa5bd[65]},{model:db[_0xa5bd[66]],as:_0xa5bd[67]}]},_0xdd67x2f={};_0xdd67x2f[_0xa5bd[68]]= _[_0xa5bd[71]](db[_0xa5bd[70]][_0xa5bd[69]]);_0xdd67x2f[_0xa5bd[72]]= _[_0xa5bd[71]](_0xdd67x19[_0xa5bd[72]]);_0xdd67x2f[_0xa5bd[73]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],_0xdd67x2f[_0xa5bd[72]]);_0xdd67x23[_0xa5bd[75]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],qs[_0xa5bd[76]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[76]]));_0xdd67x23[_0xa5bd[75]]= (_0xdd67x23[_0xa5bd[75]][_0xa5bd[77]])?_0xdd67x23[_0xa5bd[75]]:_0xdd67x2f[_0xa5bd[68]];_0xdd67x23= _[_0xa5bd[87]]({},_0xdd67x23,_0xdd67x19[_0xa5bd[88]]);return db[_0xa5bd[70]][_0xa5bd[93]](_0xdd67x23)[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[90]))[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[90]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[90]))};exports[_0xa5bd[94]]= function(_0xdd67x19,_0xdd67x1d){return db[_0xa5bd[70]][_0xa5bd[94]](_0xdd67x19[_0xa5bd[95]],{include:[{model:db[_0xa5bd[66]],as:_0xa5bd[67]}]})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,201,_0xa5bd[94]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[94]))};exports[_0xa5bd[57]]= function(_0xdd67x19,_0xdd67x1d){if(_0xdd67x19[_0xa5bd[95]][_0xa5bd[91]]){delete _0xdd67x19[_0xa5bd[95]][_0xa5bd[91]]};return db[_0xa5bd[70]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]},include:[{model:db[_0xa5bd[64]],as:_0xa5bd[65]},{model:db[_0xa5bd[66]],as:_0xa5bd[67]}]})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[57]))[_0xa5bd[36]](saveUpdates(_0xdd67x19[_0xa5bd[95]],null,_0xa5bd[57]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20&& _0xdd67x19[_0xa5bd[95]][_0xa5bd[65]]){return db[_0xa5bd[64]][_0xa5bd[57]](_0xdd67x19[_0xa5bd[95]].Imap,{where:{MailAccountId:_0xdd67x20[_0xa5bd[91]]}})[_0xa5bd[36]](function(){return _0xdd67x20})};return _0xdd67x20})[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20&& _0xdd67x19[_0xa5bd[95]][_0xa5bd[67]]){return db[_0xa5bd[66]][_0xa5bd[57]](_0xdd67x19[_0xa5bd[95]].Smtp,{where:{MailAccountId:_0xdd67x20[_0xa5bd[91]]}})[_0xa5bd[36]](function(){return _0xdd67x20})};return _0xdd67x20})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[57]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[57]))};exports[_0xa5bd[59]]= function(_0xdd67x19,_0xdd67x1d){return db[_0xa5bd[70]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[59]))[_0xa5bd[36]](removeEntity(_0xdd67x1d,null,_0xa5bd[59]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[59]))};exports[_0xa5bd[96]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){return db[_0xa5bd[70]][_0xa5bd[97]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[96]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[96]]()};return null})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[96]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[96]))};exports[_0xa5bd[98]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){if(_0xdd67x19[_0xa5bd[95]][_0xa5bd[91]]){delete _0xdd67x19[_0xa5bd[95]][_0xa5bd[91]]};return db[_0xa5bd[70]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[98]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){_0xdd67x19[_0xa5bd[95]][_0xa5bd[99]]= _0xdd67x20[_0xa5bd[91]];return db[_0xa5bd[64]][_0xa5bd[94]](_0xdd67x19[_0xa5bd[95]])}})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[98]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[98]))};exports[_0xa5bd[100]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){return db[_0xa5bd[70]][_0xa5bd[97]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[100]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[101]](null)};return null})[_0xa5bd[36]](respondWithStatusCode(_0xdd67x1d,null,_0xa5bd[100]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[100]))};exports[_0xa5bd[102]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){return db[_0xa5bd[70]][_0xa5bd[97]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[102]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[102]]()};return null})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[102]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[102]))};exports[_0xa5bd[103]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){if(_0xdd67x19[_0xa5bd[95]][_0xa5bd[91]]){delete _0xdd67x19[_0xa5bd[95]][_0xa5bd[91]]};return db[_0xa5bd[70]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[103]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){_0xdd67x19[_0xa5bd[95]][_0xa5bd[99]]= _0xdd67x20[_0xa5bd[91]];return db[_0xa5bd[66]][_0xa5bd[94]](_0xdd67x19[_0xa5bd[95]])}})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[103]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[103]))};exports[_0xa5bd[104]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){return db[_0xa5bd[70]][_0xa5bd[97]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[104]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[105]](null)};return null})[_0xa5bd[36]](respondWithStatusCode(_0xdd67x1d,null,_0xa5bd[104]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[104]))};exports[_0xa5bd[106]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){return db[_0xa5bd[109]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[106]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[106]](_0xdd67x19[_0xa5bd[95]][_0xa5bd[107]],_[_0xa5bd[108]](_0xdd67x19[_0xa5bd[95]],[_0xa5bd[107],_0xa5bd[91]])|| {})};return null})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[106]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[106]))};exports[_0xa5bd[110]]= function(_0xdd67x19,_0xdd67x20,_0xdd67x32){var _0xdd67x23={};var _0xdd67x2f={};var _0xdd67x33;var _0xdd67x24;return db[_0xa5bd[70]][_0xa5bd[97]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x20,null,_0xa5bd[110]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){_0xdd67x33= _0xdd67x20;_0xdd67x2f[_0xa5bd[68]]= _[_0xa5bd[71]](db[_0xa5bd[109]][_0xa5bd[69]]);_0xdd67x2f[_0xa5bd[72]]= _[_0xa5bd[71]](_0xdd67x19[_0xa5bd[72]]);_0xdd67x2f[_0xa5bd[73]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],_0xdd67x2f[_0xa5bd[72]]);_0xdd67x23[_0xa5bd[75]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],qs[_0xa5bd[76]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[76]]));_0xdd67x23[_0xa5bd[75]]= (_0xdd67x23[_0xa5bd[75]][_0xa5bd[77]])?_0xdd67x23[_0xa5bd[75]]:_0xdd67x2f[_0xa5bd[68]];_0xdd67x23[_0xa5bd[80]]= qs[_0xa5bd[81]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[81]]);_0xdd67x23[_0xa5bd[82]]= qs[_0xa5bd[73]](_[_0xa5bd[83]](_0xdd67x19[_0xa5bd[72]],_0xdd67x2f[_0xa5bd[73]]));if(_0xdd67x19[_0xa5bd[72]][_0xa5bd[84]]){_0xdd67x23[_0xa5bd[82]]= _[_0xa5bd[87]](_0xdd67x23[_0xa5bd[82]],{$or:_[_0xa5bd[86]](_0xdd67x23[_0xa5bd[75]],function(_0xdd67x30){var _0xdd67x31={};_0xdd67x31[_0xdd67x30]= {$like:_0xa5bd[85]+ _0xdd67x19[_0xa5bd[72]][_0xa5bd[84]]+ _0xa5bd[85]};return _0xdd67x31})})};_0xdd67x23= _[_0xa5bd[87]]({},_0xdd67x23,_0xdd67x19[_0xa5bd[88]]);return _0xdd67x33[_0xa5bd[110]](_0xdd67x23)}})[_0xa5bd[36]](function(_0xdd67x35){if(_0xdd67x35){_0xdd67x24= _0xdd67x35[_0xa5bd[77]];if(!_0xdd67x19[_0xa5bd[72]][_0xa5bd[79]](_0xa5bd[78])){_0xdd67x23[_0xa5bd[47]]= qs[_0xa5bd[47]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[47]]);_0xdd67x23[_0xa5bd[46]]= qs[_0xa5bd[46]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[46]])};return _0xdd67x33[_0xa5bd[110]](_0xdd67x23)}})[_0xa5bd[36]](function(_0xdd67x34){return _0xdd67x34?{count:_0xdd67x24,rows:_0xdd67x34}:null})[_0xa5bd[36]](respondWithResult(_0xdd67x20,null,_0xa5bd[110]))[_0xa5bd[27]](handleError(_0xdd67x20,null,_0xa5bd[110]))};exports[_0xa5bd[111]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){return db[_0xa5bd[112]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[111]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[111]](_0xdd67x19[_0xa5bd[95]][_0xa5bd[107]],_[_0xa5bd[108]](_0xdd67x19[_0xa5bd[95]],[_0xa5bd[107],_0xa5bd[91]])|| {})};return null})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[111]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[111]))};exports[_0xa5bd[113]]= function(_0xdd67x19,_0xdd67x20,_0xdd67x32){var _0xdd67x23={};var _0xdd67x2f={};var _0xdd67x33;var _0xdd67x24;return db[_0xa5bd[70]][_0xa5bd[97]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x20,null,_0xa5bd[113]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){_0xdd67x33= _0xdd67x20;_0xdd67x2f[_0xa5bd[68]]= _[_0xa5bd[71]](db[_0xa5bd[114]][_0xa5bd[69]]);_0xdd67x2f[_0xa5bd[72]]= _[_0xa5bd[71]](_0xdd67x19[_0xa5bd[72]]);_0xdd67x2f[_0xa5bd[73]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],_0xdd67x2f[_0xa5bd[72]]);_0xdd67x23[_0xa5bd[75]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],qs[_0xa5bd[76]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[76]]));_0xdd67x23[_0xa5bd[75]]= (_0xdd67x23[_0xa5bd[75]][_0xa5bd[77]])?_0xdd67x23[_0xa5bd[75]]:_0xdd67x2f[_0xa5bd[68]];_0xdd67x23[_0xa5bd[80]]= qs[_0xa5bd[81]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[81]]);_0xdd67x23[_0xa5bd[82]]= qs[_0xa5bd[73]](_[_0xa5bd[83]](_0xdd67x19[_0xa5bd[72]],_0xdd67x2f[_0xa5bd[73]]));if(_0xdd67x19[_0xa5bd[72]][_0xa5bd[84]]){_0xdd67x23[_0xa5bd[82]]= _[_0xa5bd[87]](_0xdd67x23[_0xa5bd[82]],{$or:_[_0xa5bd[86]](_0xdd67x23[_0xa5bd[75]],function(_0xdd67x30){var _0xdd67x31={};_0xdd67x31[_0xdd67x30]= {$like:_0xa5bd[85]+ _0xdd67x19[_0xa5bd[72]][_0xa5bd[84]]+ _0xa5bd[85]};return _0xdd67x31})})};_0xdd67x23= _[_0xa5bd[87]]({},_0xdd67x23,_0xdd67x19[_0xa5bd[88]]);return _0xdd67x33[_0xa5bd[113]](_0xdd67x23)}})[_0xa5bd[36]](function(_0xdd67x35){if(_0xdd67x35){_0xdd67x24= _0xdd67x35[_0xa5bd[77]];if(!_0xdd67x19[_0xa5bd[72]][_0xa5bd[79]](_0xa5bd[78])){_0xdd67x23[_0xa5bd[47]]= qs[_0xa5bd[47]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[47]]);_0xdd67x23[_0xa5bd[46]]= qs[_0xa5bd[46]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[46]])};return _0xdd67x33[_0xa5bd[113]](_0xdd67x23)}})[_0xa5bd[36]](function(_0xdd67x34){return _0xdd67x34?{count:_0xdd67x24,rows:_0xdd67x34}:null})[_0xa5bd[36]](respondWithResult(_0xdd67x20,null,_0xa5bd[113]))[_0xa5bd[27]](handleError(_0xdd67x20,null,_0xa5bd[113]))};exports[_0xa5bd[115]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){if(_0xdd67x19[_0xa5bd[95]][_0xa5bd[91]]){delete _0xdd67x19[_0xa5bd[95]][_0xa5bd[91]]};return db[_0xa5bd[70]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[115]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){_0xdd67x19[_0xa5bd[95]][_0xa5bd[99]]= _0xdd67x20[_0xa5bd[91]];return db[_0xa5bd[116]][_0xa5bd[94]](_0xdd67x19[_0xa5bd[95]])}})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[115]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[115]))};exports[_0xa5bd[117]]= function(_0xdd67x19,_0xdd67x1d,_0xdd67x32){return db[_0xa5bd[118]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x1d,null,_0xa5bd[117]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){return _0xdd67x20[_0xa5bd[117]](_0xdd67x19[_0xa5bd[95]][_0xa5bd[107]],_[_0xa5bd[108]](_0xdd67x19[_0xa5bd[95]],[_0xa5bd[107],_0xa5bd[91]])|| {})};return null})[_0xa5bd[36]](respondWithResult(_0xdd67x1d,null,_0xa5bd[117]))[_0xa5bd[27]](handleError(_0xdd67x1d,null,_0xa5bd[117]))};exports[_0xa5bd[119]]= function(_0xdd67x19,_0xdd67x20,_0xdd67x32){var _0xdd67x23={};var _0xdd67x2f={};var _0xdd67x33;var _0xdd67x24;return db[_0xa5bd[70]][_0xa5bd[97]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]}})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x20,null,_0xa5bd[119]))[_0xa5bd[36]](function(_0xdd67x20){if(_0xdd67x20){_0xdd67x33= _0xdd67x20;_0xdd67x2f[_0xa5bd[68]]= _[_0xa5bd[71]](db[_0xa5bd[116]][_0xa5bd[69]]);_0xdd67x2f[_0xa5bd[72]]= _[_0xa5bd[71]](_0xdd67x19[_0xa5bd[72]]);_0xdd67x2f[_0xa5bd[73]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],_0xdd67x2f[_0xa5bd[72]]);_0xdd67x23[_0xa5bd[75]]= _[_0xa5bd[74]](_0xdd67x2f[_0xa5bd[68]],qs[_0xa5bd[76]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[76]]));_0xdd67x23[_0xa5bd[75]]= (_0xdd67x23[_0xa5bd[75]][_0xa5bd[77]])?_0xdd67x23[_0xa5bd[75]]:_0xdd67x2f[_0xa5bd[68]];_0xdd67x23[_0xa5bd[80]]= qs[_0xa5bd[81]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[81]]);_0xdd67x23[_0xa5bd[82]]= qs[_0xa5bd[73]](_[_0xa5bd[83]](_0xdd67x19[_0xa5bd[72]],_0xdd67x2f[_0xa5bd[73]]));if(_0xdd67x19[_0xa5bd[72]][_0xa5bd[84]]){_0xdd67x23[_0xa5bd[82]]= _[_0xa5bd[87]](_0xdd67x23[_0xa5bd[82]],{$or:_[_0xa5bd[86]](_0xdd67x23[_0xa5bd[75]],function(_0xdd67x30){var _0xdd67x31={};_0xdd67x31[_0xdd67x30]= {$like:_0xa5bd[85]+ _0xdd67x19[_0xa5bd[72]][_0xa5bd[84]]+ _0xa5bd[85]};return _0xdd67x31})})};_0xdd67x23= _[_0xa5bd[87]]({},_0xdd67x23,_0xdd67x19[_0xa5bd[88]]);return _0xdd67x33[_0xa5bd[119]](_0xdd67x23)}})[_0xa5bd[36]](function(_0xdd67x35){if(_0xdd67x35){_0xdd67x24= _0xdd67x35[_0xa5bd[77]];if(!_0xdd67x19[_0xa5bd[72]][_0xa5bd[79]](_0xa5bd[78])){_0xdd67x23[_0xa5bd[47]]= qs[_0xa5bd[47]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[47]]);_0xdd67x23[_0xa5bd[46]]= qs[_0xa5bd[46]](_0xdd67x19[_0xa5bd[72]][_0xa5bd[46]])};return _0xdd67x33[_0xa5bd[119]](_0xdd67x23)}})[_0xa5bd[36]](function(_0xdd67x34){return _0xdd67x34?{count:_0xdd67x24,rows:_0xdd67x34}:null})[_0xa5bd[36]](respondWithResult(_0xdd67x20,null,_0xa5bd[119]))[_0xa5bd[27]](handleError(_0xdd67x20,null,_0xa5bd[119]))};exports[_0xa5bd[120]]= function(_0xdd67x19,_0xdd67x20,_0xdd67x32){return db[_0xa5bd[70]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]},include:[{model:db[_0xa5bd[66]],as:_0xa5bd[67],raw:true}]})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x20,null,_0xa5bd[120]))[_0xa5bd[36]](function(_0xdd67x36){if(_0xdd67x36&& _0xdd67x36[_0xa5bd[67]]){return respondWithRpcPromise(_0xa5bd[121],_0xa5bd[120],{account:{service:_0xdd67x36[_0xa5bd[67]][_0xa5bd[122]],host:_0xdd67x36[_0xa5bd[67]][_0xa5bd[123]],port:_0xdd67x36[_0xa5bd[67]][_0xa5bd[124]],secure:_0xdd67x36[_0xa5bd[67]][_0xa5bd[125]],auth:{user:_0xdd67x36[_0xa5bd[67]][_0xa5bd[126]],pass:_0xdd67x36[_0xa5bd[67]][_0xa5bd[127]]},tls:{rejectUnauthorized:false}},message:_0xdd67x19[_0xa5bd[95]]})}})[_0xa5bd[36]](respondWithResult(_0xdd67x20,null,_0xa5bd[120]))[_0xa5bd[27]](handleError(_0xdd67x20,null,_0xa5bd[120]))};exports[_0xa5bd[128]]= function(_0xdd67x19,_0xdd67x20,_0xdd67x32){return db[_0xa5bd[70]][_0xa5bd[93]]({where:{id:_0xdd67x19[_0xa5bd[92]][_0xa5bd[91]]},include:[{model:db[_0xa5bd[66]],as:_0xa5bd[67],raw:true}]})[_0xa5bd[36]](handleEntityNotFound(_0xdd67x20,null,_0xa5bd[128]))[_0xa5bd[36]](function(_0xdd67x36){if(_0xdd67x36&& _0xdd67x36[_0xa5bd[67]]){return respondWithRpcPromise(_0xa5bd[129],_0xa5bd[128],{account:{service:_0xdd67x36[_0xa5bd[67]][_0xa5bd[122]],host:_0xdd67x36[_0xa5bd[67]][_0xa5bd[123]],port:_0xdd67x36[_0xa5bd[67]][_0xa5bd[124]],secure:_0xdd67x36[_0xa5bd[67]][_0xa5bd[125]],auth:{user:_0xdd67x36[_0xa5bd[67]][_0xa5bd[126]],pass:_0xdd67x36[_0xa5bd[67]][_0xa5bd[127]]},tls:{rejectUnauthorized:false}}})}})[_0xa5bd[36]](respondWithResult(_0xdd67x20,null,_0xa5bd[128]))[_0xa5bd[27]](handleError(_0xdd67x20,null,_0xa5bd[128]))}
\ No newline at end of file
index 1006a66..dbf1714 100644 (file)
@@ -1 +1 @@
-var _0xbfcf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x6D\x61\x69\x6C\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xbfcf[0];var _=require(_0xbfcf[1]);var util=require(_0xbfcf[2]);var logger=require(_0xbfcf[4])(_0xbfcf[3]);var attributes=require(_0xbfcf[5]);module[_0xbfcf[6]]= function(_0x8b1ax5,_0x8b1ax6){return _0x8b1ax5[_0xbfcf[9]](_0xbfcf[7],attributes,{tableName:_0xbfcf[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xb76a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x6D\x61\x69\x6C\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xb76a[0];var _=require(_0xb76a[1]);var util=require(_0xb76a[2]);var logger=require(_0xb76a[4])(_0xb76a[3]);var attributes=require(_0xb76a[5]);module[_0xb76a[6]]= function(_0xd3e5x5,_0xd3e5x6){return _0xd3e5x5[_0xb76a[9]](_0xb76a[7],attributes,{tableName:_0xb76a[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 9de9d3d..7d23ae6 100644 (file)
@@ -1 +1 @@
-var _0xefba=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xefba[0];var _=require(_0xefba[1]);var util=require(_0xefba[2]);var moment=require(_0xefba[3]);var BPromise=require(_0xefba[4]);var db=require(_0xefba[6])[_0xefba[5]];var utils=require(_0xefba[7]);var logger=require(_0xefba[9])(_0xefba[8]);var jayson=require(_0xefba[10]);var client=jayson[_0xefba[12]][_0xefba[11]]({port:9002});function respondWithRpcPromise(_0x25fdxb,_0x25fdxc,_0x25fdxd){return  new BPromise(function(_0x25fdxe,_0x25fdxf){return client[_0xefba[25]](_0x25fdxb,_0x25fdxd)[_0xefba[24]](function(_0x25fdx11){logger[_0xefba[17]](_0xefba[13],_0x25fdxc,_0xefba[16]);logger[_0xefba[20]](_0xefba[18],_0x25fdxc,_0xefba[16],JSON[_0xefba[19]](_0x25fdx11));if(_0x25fdx11[_0xefba[14]]){if(_0x25fdx11[_0xefba[14]][_0xefba[21]]=== 500){logger[_0xefba[14]](_0xefba[13],_0x25fdxc,_0x25fdx11[_0xefba[14]][_0xefba[22]]);return _0x25fdxf(_0x25fdx11[_0xefba[14]][_0xefba[22]])};logger[_0xefba[14]](_0xefba[13],_0x25fdxc,_0x25fdx11[_0xefba[14]][_0xefba[22]]);return _0x25fdxe(_0x25fdx11[_0xefba[14]][_0xefba[22]])}else {logger[_0xefba[17]](_0xefba[13],_0x25fdxc,_0xefba[16]);_0x25fdxe(_0x25fdx11[_0xefba[23]][_0xefba[22]])}})[_0xefba[15]](function(_0x25fdx10){logger[_0xefba[14]](_0xefba[13],_0x25fdxc,_0x25fdx10);_0x25fdxf(_0x25fdx10)})})}
\ No newline at end of file
+var _0xb8b9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xb8b9[0];var _=require(_0xb8b9[1]);var util=require(_0xb8b9[2]);var moment=require(_0xb8b9[3]);var BPromise=require(_0xb8b9[4]);var db=require(_0xb8b9[6])[_0xb8b9[5]];var utils=require(_0xb8b9[7]);var logger=require(_0xb8b9[9])(_0xb8b9[8]);var jayson=require(_0xb8b9[10]);var client=jayson[_0xb8b9[12]][_0xb8b9[11]]({port:9002});function respondWithRpcPromise(_0x485cxb,_0x485cxc,_0x485cxd){return  new BPromise(function(_0x485cxe,_0x485cxf){return client[_0xb8b9[25]](_0x485cxb,_0x485cxd)[_0xb8b9[24]](function(_0x485cx11){logger[_0xb8b9[17]](_0xb8b9[13],_0x485cxc,_0xb8b9[16]);logger[_0xb8b9[20]](_0xb8b9[18],_0x485cxc,_0xb8b9[16],JSON[_0xb8b9[19]](_0x485cx11));if(_0x485cx11[_0xb8b9[14]]){if(_0x485cx11[_0xb8b9[14]][_0xb8b9[21]]=== 500){logger[_0xb8b9[14]](_0xb8b9[13],_0x485cxc,_0x485cx11[_0xb8b9[14]][_0xb8b9[22]]);return _0x485cxf(_0x485cx11[_0xb8b9[14]][_0xb8b9[22]])};logger[_0xb8b9[14]](_0xb8b9[13],_0x485cxc,_0x485cx11[_0xb8b9[14]][_0xb8b9[22]]);return _0x485cxe(_0x485cx11[_0xb8b9[14]][_0xb8b9[22]])}else {logger[_0xb8b9[17]](_0xb8b9[13],_0x485cxc,_0xb8b9[16]);_0x485cxe(_0x485cx11[_0xb8b9[23]][_0xb8b9[22]])}})[_0xb8b9[15]](function(_0x485cx10){logger[_0xb8b9[14]](_0xb8b9[13],_0x485cxc,_0x485cx10);_0x485cxf(_0x485cx10)})})}
\ No newline at end of file
index 4f83a1d..b14492f 100644 (file)
@@ -1 +1 @@
-var _0x23dc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x23dc[0];var multer=require(_0x23dc[1]);var util=require(_0x23dc[2]);var path=require(_0x23dc[3]);var express=require(_0x23dc[4]);var router=express.Router();var auth=require(_0x23dc[5]);var config=require(_0x23dc[6]);var controller=require(_0x23dc[7]);router[_0x23dc[11]](_0x23dc[8],auth[_0x23dc[9]](),controller[_0x23dc[10]]);router[_0x23dc[13]](_0x23dc[8],auth[_0x23dc[9]](),controller[_0x23dc[12]]);router[_0x23dc[15]](_0x23dc[8],auth[_0x23dc[9]](),controller[_0x23dc[14]]);module[_0x23dc[16]]= router
\ No newline at end of file
+var _0xf3f3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf3f3[0];var multer=require(_0xf3f3[1]);var util=require(_0xf3f3[2]);var path=require(_0xf3f3[3]);var express=require(_0xf3f3[4]);var router=express.Router();var auth=require(_0xf3f3[5]);var config=require(_0xf3f3[6]);var controller=require(_0xf3f3[7]);router[_0xf3f3[11]](_0xf3f3[8],auth[_0xf3f3[9]](),controller[_0xf3f3[10]]);router[_0xf3f3[13]](_0xf3f3[8],auth[_0xf3f3[9]](),controller[_0xf3f3[12]]);router[_0xf3f3[15]](_0xf3f3[8],auth[_0xf3f3[9]](),controller[_0xf3f3[14]]);module[_0xf3f3[16]]= router
\ No newline at end of file
index c1b4f75..2a304fd 100644 (file)
@@ -1 +1 @@
-var _0x6245=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x72\x65\x70\x6C\x79\x4D\x61\x69\x6C","\x73\x65\x6E\x64\x53\x6D\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0x6245[0];var Sequelize=require(_0x6245[1]);module[_0x6245[2]]= {app:{type:Sequelize.ENUM(_0x6245[3],_0x6245[4],_0x6245[5],_0x6245[6],_0x6245[7])},priority:{type:Sequelize[_0x6245[8]]},timeout:{type:Sequelize[_0x6245[8]],validate:{min:1}},interval:{type:Sequelize[_0x6245[9]]},data1:{type:Sequelize[_0x6245[9]]},data2:{type:Sequelize[_0x6245[9]]},data3:{type:Sequelize[_0x6245[9]]},data4:{type:Sequelize[_0x6245[9]]},data5:{type:Sequelize[_0x6245[9]]},data6:{type:Sequelize[_0x6245[9]]},data7:{type:Sequelize[_0x6245[10]]},data8:{type:Sequelize[_0x6245[8]]},data9:{type:Sequelize[_0x6245[8]]},data10:{type:Sequelize[_0x6245[8]]}}
\ No newline at end of file
+var _0x520f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x72\x65\x70\x6C\x79\x4D\x61\x69\x6C","\x73\x65\x6E\x64\x53\x6D\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0x520f[0];var Sequelize=require(_0x520f[1]);module[_0x520f[2]]= {app:{type:Sequelize.ENUM(_0x520f[3],_0x520f[4],_0x520f[5],_0x520f[6],_0x520f[7])},priority:{type:Sequelize[_0x520f[8]]},timeout:{type:Sequelize[_0x520f[8]],validate:{min:1}},interval:{type:Sequelize[_0x520f[9]]},data1:{type:Sequelize[_0x520f[9]]},data2:{type:Sequelize[_0x520f[9]]},data3:{type:Sequelize[_0x520f[9]]},data4:{type:Sequelize[_0x520f[9]]},data5:{type:Sequelize[_0x520f[9]]},data6:{type:Sequelize[_0x520f[9]]},data7:{type:Sequelize[_0x520f[10]]},data8:{type:Sequelize[_0x520f[8]]},data9:{type:Sequelize[_0x520f[8]]},data10:{type:Sequelize[_0x520f[8]]}}
\ No newline at end of file
index 2e9047c..63482ac 100644 (file)
@@ -1 +1 @@
-var _0x1953=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x1953[0];var jsonpatch=require(_0x1953[1]);var rp=require(_0x1953[2]);var moment=require(_0x1953[3]);var BPromise=require(_0x1953[4]);var util=require(_0x1953[5]);var path=require(_0x1953[6]);var sox=require(_0x1953[7]);var ejs=require(_0x1953[8]);var fs=require(_0x1953[9]);var _=require(_0x1953[10]);var squel=require(_0x1953[11]);var crypto=require(_0x1953[12]);var jsforce=require(_0x1953[13]);var toCsv=require(_0x1953[14]);var qs=require(_0x1953[15]);var logger=require(_0x1953[17])(_0x1953[16]);var utils=require(_0x1953[18]);var config=require(_0x1953[19]);var db=require(_0x1953[21])[_0x1953[20]];function respondWithStatusCode(_0x7c8bx15,_0x7c8bx16,_0x7c8bx17){_0x7c8bx16= _0x7c8bx16|| 204;return function(_0x7c8bx18){if(_0x7c8bx18){logger[_0x1953[24]](_0x1953[22],_0x7c8bx17,_0x7c8bx16,_0x1953[23]);logger[_0x1953[26]](_0x1953[25],_0x7c8bx17,_0x7c8bx16,_0x1953[23]);return _0x7c8bx15[_0x1953[27]](_0x7c8bx16)};return _0x7c8bx15[_0x1953[29]](304)[_0x1953[28]]()}}function respondWithResult(_0x7c8bx15,_0x7c8bx16,_0x7c8bx17){_0x7c8bx16= _0x7c8bx16|| 200;return function(_0x7c8bx18){if(_0x7c8bx18){logger[_0x1953[24]](_0x1953[22],_0x7c8bx17,_0x7c8bx16,_0x1953[30]);logger[_0x1953[26]](_0x1953[25],_0x7c8bx17,_0x7c8bx16,_0x1953[30],JSON[_0x1953[31]](_0x7c8bx18));return _0x7c8bx15[_0x1953[29]](_0x7c8bx16)[_0x1953[32]](_0x7c8bx18)};return _0x7c8bx15[_0x1953[29]](304)[_0x1953[28]]()}}function respondWithFilteredResult(_0x7c8bx15,_0x7c8bx1b,_0x7c8bx17){return function(_0x7c8bx18){if(_0x7c8bx18){var _0x7c8bx1c=_0x7c8bx18[_0x1953[33]],_0x7c8bx1d=_0x7c8bx1b[_0x1953[34]],_0x7c8bx1e=_0x7c8bx1b[_0x1953[34]]+ _0x7c8bx1b[_0x1953[35]],_0x7c8bx16;if(_0x7c8bx1e>= _0x7c8bx1c){_0x7c8bx1e= _0x7c8bx1c;_0x7c8bx16= 200}else {_0x7c8bx16= 206};_0x7c8bx15[_0x1953[29]](_0x7c8bx16);logger[_0x1953[24]](_0x1953[22],_0x7c8bx17,_0x7c8bx16,_0x1953[36]);logger[_0x1953[26]](_0x1953[25],_0x7c8bx17,_0x7c8bx16,_0x1953[30],JSON[_0x1953[31]](_0x7c8bx18));return _0x7c8bx15[_0x1953[40]](_0x1953[37],_0x7c8bx1d+ _0x1953[38]+ _0x7c8bx1e+ _0x1953[39]+ _0x7c8bx1c)[_0x1953[32]](_0x7c8bx18)};return null}}function patchUpdates(_0x7c8bx20){return function(_0x7c8bx18){try{jsonpatch[_0x1953[41]](_0x7c8bx18,_0x7c8bx20,true)}catch(err){return BPromise[_0x1953[42]](err)};return _0x7c8bx18[_0x1953[43]]()}}function saveUpdates(_0x7c8bx22,_0x7c8bx16,_0x7c8bx17){return function(_0x7c8bx18){if(_0x7c8bx18){return _0x7c8bx18[_0x1953[46]](_0x7c8bx22)[_0x1953[45]](function(_0x7c8bx23){logger[_0x1953[24]](_0x1953[22],_0x7c8bx17,_0x7c8bx16,_0x1953[44]);logger[_0x1953[26]](_0x1953[25],_0x7c8bx17,_0x7c8bx16,_0x1953[44],JSON[_0x1953[31]](_0x7c8bx18));return _0x7c8bx23})};return null}}function removeEntity(_0x7c8bx15,_0x7c8bx16,_0x7c8bx17){return function(_0x7c8bx18){if(_0x7c8bx18){return _0x7c8bx18[_0x1953[48]]()[_0x1953[45]](function(){logger[_0x1953[24]](_0x1953[22],_0x7c8bx17,_0x7c8bx16,_0x1953[47]);logger[_0x1953[26]](_0x1953[25],_0x7c8bx17,_0x7c8bx16,_0x1953[47],JSON[_0x1953[31]](_0x7c8bx18));_0x7c8bx15[_0x1953[29]](204)[_0x1953[28]]()})}}}function handleEntityNotFound(_0x7c8bx15,_0x7c8bx16,_0x7c8bx17){return function(_0x7c8bx18){if(!_0x7c8bx18){logger[_0x1953[50]](_0x1953[22],_0x7c8bx17,404,_0x1953[49]);_0x7c8bx15[_0x1953[29]](404)[_0x1953[28]]();return null};return _0x7c8bx18}}function handleError(_0x7c8bx15,_0x7c8bx16,_0x7c8bx17){_0x7c8bx16= _0x7c8bx16|| 500;return function(_0x7c8bx27){logger[_0x1953[50]](_0x1953[22],_0x7c8bx17,_0x7c8bx16,JSON[_0x1953[31]](_0x7c8bx27));delete _0x7c8bx27[_0x1953[51]];_0x7c8bx15[_0x1953[29]](_0x7c8bx16)[_0x1953[52]](_0x7c8bx27)}}exports[_0x1953[53]]= function(_0x7c8bx28,_0x7c8bx15){var _0x7c8bx1b={raw:true,where:{id:_0x7c8bx28[_0x1953[55]][_0x1953[54]]}},_0x7c8bx29={};_0x7c8bx29[_0x1953[56]]= _[_0x1953[59]](db[_0x1953[58]][_0x1953[57]]);_0x7c8bx29[_0x1953[60]]= _[_0x1953[59]](_0x7c8bx28[_0x1953[60]]);_0x7c8bx29[_0x1953[61]]= _[_0x1953[62]](_0x7c8bx29[_0x1953[56]],_0x7c8bx29[_0x1953[60]]);_0x7c8bx1b[_0x1953[63]]= _[_0x1953[62]](_0x7c8bx29[_0x1953[56]],qs[_0x1953[64]](_0x7c8bx28[_0x1953[60]][_0x1953[64]]));_0x7c8bx1b[_0x1953[63]]= (_0x7c8bx1b[_0x1953[63]][_0x1953[65]])?_0x7c8bx1b[_0x1953[63]]:_0x7c8bx29[_0x1953[56]];_0x7c8bx1b= _[_0x1953[67]]({},_0x7c8bx1b,_0x7c8bx28[_0x1953[66]]);return db[_0x1953[58]][_0x1953[69]](_0x7c8bx1b)[_0x1953[45]](handleEntityNotFound(_0x7c8bx15,null,_0x1953[53]))[_0x1953[45]](respondWithResult(_0x7c8bx15,null,_0x1953[53]))[_0x1953[68]](handleError(_0x7c8bx15,null,_0x1953[53]))};exports[_0x1953[46]]= function(_0x7c8bx28,_0x7c8bx15){if(_0x7c8bx28[_0x1953[70]][_0x1953[54]]){delete _0x7c8bx28[_0x1953[70]][_0x1953[54]]};return db[_0x1953[58]][_0x1953[69]]({where:{id:_0x7c8bx28[_0x1953[55]][_0x1953[54]]}})[_0x1953[45]](handleEntityNotFound(_0x7c8bx15,null,_0x1953[46]))[_0x1953[45]](saveUpdates(_0x7c8bx28[_0x1953[70]],null,_0x1953[46]))[_0x1953[45]](respondWithResult(_0x7c8bx15,null,_0x1953[46]))[_0x1953[68]](handleError(_0x7c8bx15,null,_0x1953[46]))};exports[_0x1953[48]]= function(_0x7c8bx28,_0x7c8bx15){return db[_0x1953[58]][_0x1953[69]]({where:{id:_0x7c8bx28[_0x1953[55]][_0x1953[54]]}})[_0x1953[45]](handleEntityNotFound(_0x7c8bx15,null,_0x1953[48]))[_0x1953[45]](removeEntity(_0x7c8bx15,null,_0x1953[48]))[_0x1953[68]](handleError(_0x7c8bx15,null,_0x1953[48]))}
\ No newline at end of file
+var _0x4874=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x4874[0];var jsonpatch=require(_0x4874[1]);var rp=require(_0x4874[2]);var moment=require(_0x4874[3]);var BPromise=require(_0x4874[4]);var util=require(_0x4874[5]);var path=require(_0x4874[6]);var sox=require(_0x4874[7]);var ejs=require(_0x4874[8]);var fs=require(_0x4874[9]);var _=require(_0x4874[10]);var squel=require(_0x4874[11]);var crypto=require(_0x4874[12]);var jsforce=require(_0x4874[13]);var toCsv=require(_0x4874[14]);var qs=require(_0x4874[15]);var logger=require(_0x4874[17])(_0x4874[16]);var utils=require(_0x4874[18]);var config=require(_0x4874[19]);var db=require(_0x4874[21])[_0x4874[20]];function respondWithStatusCode(_0xb5c8x15,_0xb5c8x16,_0xb5c8x17){_0xb5c8x16= _0xb5c8x16|| 204;return function(_0xb5c8x18){if(_0xb5c8x18){logger[_0x4874[24]](_0x4874[22],_0xb5c8x17,_0xb5c8x16,_0x4874[23]);logger[_0x4874[26]](_0x4874[25],_0xb5c8x17,_0xb5c8x16,_0x4874[23]);return _0xb5c8x15[_0x4874[27]](_0xb5c8x16)};return _0xb5c8x15[_0x4874[29]](304)[_0x4874[28]]()}}function respondWithResult(_0xb5c8x15,_0xb5c8x16,_0xb5c8x17){_0xb5c8x16= _0xb5c8x16|| 200;return function(_0xb5c8x18){if(_0xb5c8x18){logger[_0x4874[24]](_0x4874[22],_0xb5c8x17,_0xb5c8x16,_0x4874[30]);logger[_0x4874[26]](_0x4874[25],_0xb5c8x17,_0xb5c8x16,_0x4874[30],JSON[_0x4874[31]](_0xb5c8x18));return _0xb5c8x15[_0x4874[29]](_0xb5c8x16)[_0x4874[32]](_0xb5c8x18)};return _0xb5c8x15[_0x4874[29]](304)[_0x4874[28]]()}}function respondWithFilteredResult(_0xb5c8x15,_0xb5c8x1b,_0xb5c8x17){return function(_0xb5c8x18){if(_0xb5c8x18){var _0xb5c8x1c=_0xb5c8x18[_0x4874[33]],_0xb5c8x1d=_0xb5c8x1b[_0x4874[34]],_0xb5c8x1e=_0xb5c8x1b[_0x4874[34]]+ _0xb5c8x1b[_0x4874[35]],_0xb5c8x16;if(_0xb5c8x1e>= _0xb5c8x1c){_0xb5c8x1e= _0xb5c8x1c;_0xb5c8x16= 200}else {_0xb5c8x16= 206};_0xb5c8x15[_0x4874[29]](_0xb5c8x16);logger[_0x4874[24]](_0x4874[22],_0xb5c8x17,_0xb5c8x16,_0x4874[36]);logger[_0x4874[26]](_0x4874[25],_0xb5c8x17,_0xb5c8x16,_0x4874[30],JSON[_0x4874[31]](_0xb5c8x18));return _0xb5c8x15[_0x4874[40]](_0x4874[37],_0xb5c8x1d+ _0x4874[38]+ _0xb5c8x1e+ _0x4874[39]+ _0xb5c8x1c)[_0x4874[32]](_0xb5c8x18)};return null}}function patchUpdates(_0xb5c8x20){return function(_0xb5c8x18){try{jsonpatch[_0x4874[41]](_0xb5c8x18,_0xb5c8x20,true)}catch(err){return BPromise[_0x4874[42]](err)};return _0xb5c8x18[_0x4874[43]]()}}function saveUpdates(_0xb5c8x22,_0xb5c8x16,_0xb5c8x17){return function(_0xb5c8x18){if(_0xb5c8x18){return _0xb5c8x18[_0x4874[46]](_0xb5c8x22)[_0x4874[45]](function(_0xb5c8x23){logger[_0x4874[24]](_0x4874[22],_0xb5c8x17,_0xb5c8x16,_0x4874[44]);logger[_0x4874[26]](_0x4874[25],_0xb5c8x17,_0xb5c8x16,_0x4874[44],JSON[_0x4874[31]](_0xb5c8x18));return _0xb5c8x23})};return null}}function removeEntity(_0xb5c8x15,_0xb5c8x16,_0xb5c8x17){return function(_0xb5c8x18){if(_0xb5c8x18){return _0xb5c8x18[_0x4874[48]]()[_0x4874[45]](function(){logger[_0x4874[24]](_0x4874[22],_0xb5c8x17,_0xb5c8x16,_0x4874[47]);logger[_0x4874[26]](_0x4874[25],_0xb5c8x17,_0xb5c8x16,_0x4874[47],JSON[_0x4874[31]](_0xb5c8x18));_0xb5c8x15[_0x4874[29]](204)[_0x4874[28]]()})}}}function handleEntityNotFound(_0xb5c8x15,_0xb5c8x16,_0xb5c8x17){return function(_0xb5c8x18){if(!_0xb5c8x18){logger[_0x4874[50]](_0x4874[22],_0xb5c8x17,404,_0x4874[49]);_0xb5c8x15[_0x4874[29]](404)[_0x4874[28]]();return null};return _0xb5c8x18}}function handleError(_0xb5c8x15,_0xb5c8x16,_0xb5c8x17){_0xb5c8x16= _0xb5c8x16|| 500;return function(_0xb5c8x27){logger[_0x4874[50]](_0x4874[22],_0xb5c8x17,_0xb5c8x16,JSON[_0x4874[31]](_0xb5c8x27));delete _0xb5c8x27[_0x4874[51]];_0xb5c8x15[_0x4874[29]](_0xb5c8x16)[_0x4874[52]](_0xb5c8x27)}}exports[_0x4874[53]]= function(_0xb5c8x28,_0xb5c8x15){var _0xb5c8x1b={raw:true,where:{id:_0xb5c8x28[_0x4874[55]][_0x4874[54]]}},_0xb5c8x29={};_0xb5c8x29[_0x4874[56]]= _[_0x4874[59]](db[_0x4874[58]][_0x4874[57]]);_0xb5c8x29[_0x4874[60]]= _[_0x4874[59]](_0xb5c8x28[_0x4874[60]]);_0xb5c8x29[_0x4874[61]]= _[_0x4874[62]](_0xb5c8x29[_0x4874[56]],_0xb5c8x29[_0x4874[60]]);_0xb5c8x1b[_0x4874[63]]= _[_0x4874[62]](_0xb5c8x29[_0x4874[56]],qs[_0x4874[64]](_0xb5c8x28[_0x4874[60]][_0x4874[64]]));_0xb5c8x1b[_0x4874[63]]= (_0xb5c8x1b[_0x4874[63]][_0x4874[65]])?_0xb5c8x1b[_0x4874[63]]:_0xb5c8x29[_0x4874[56]];_0xb5c8x1b= _[_0x4874[67]]({},_0xb5c8x1b,_0xb5c8x28[_0x4874[66]]);return db[_0x4874[58]][_0x4874[69]](_0xb5c8x1b)[_0x4874[45]](handleEntityNotFound(_0xb5c8x15,null,_0x4874[53]))[_0x4874[45]](respondWithResult(_0xb5c8x15,null,_0x4874[53]))[_0x4874[68]](handleError(_0xb5c8x15,null,_0x4874[53]))};exports[_0x4874[46]]= function(_0xb5c8x28,_0xb5c8x15){if(_0xb5c8x28[_0x4874[70]][_0x4874[54]]){delete _0xb5c8x28[_0x4874[70]][_0x4874[54]]};return db[_0x4874[58]][_0x4874[69]]({where:{id:_0xb5c8x28[_0x4874[55]][_0x4874[54]]}})[_0x4874[45]](handleEntityNotFound(_0xb5c8x15,null,_0x4874[46]))[_0x4874[45]](saveUpdates(_0xb5c8x28[_0x4874[70]],null,_0x4874[46]))[_0x4874[45]](respondWithResult(_0xb5c8x15,null,_0x4874[46]))[_0x4874[68]](handleError(_0xb5c8x15,null,_0x4874[46]))};exports[_0x4874[48]]= function(_0xb5c8x28,_0xb5c8x15){return db[_0x4874[58]][_0x4874[69]]({where:{id:_0xb5c8x28[_0x4874[55]][_0x4874[54]]}})[_0x4874[45]](handleEntityNotFound(_0xb5c8x15,null,_0x4874[48]))[_0x4874[45]](removeEntity(_0xb5c8x15,null,_0x4874[48]))[_0x4874[68]](handleError(_0xb5c8x15,null,_0x4874[48]))}
\ No newline at end of file
index 1d2c98e..4391ebd 100644 (file)
@@ -1 +1 @@
-var _0x686c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6D\x61\x69\x6C\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x686c[0];var _=require(_0x686c[1]);var util=require(_0x686c[2]);var logger=require(_0x686c[4])(_0x686c[3]);var attributes=require(_0x686c[5]);module[_0x686c[6]]= function(_0x9443x5,_0x9443x6){return _0x9443x5[_0x686c[9]](_0x686c[7],attributes,{tableName:_0x686c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa7c5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6D\x61\x69\x6C\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xa7c5[0];var _=require(_0xa7c5[1]);var util=require(_0xa7c5[2]);var logger=require(_0xa7c5[4])(_0xa7c5[3]);var attributes=require(_0xa7c5[5]);module[_0xa7c5[6]]= function(_0x7841x5,_0x7841x6){return _0x7841x5[_0xa7c5[9]](_0xa7c5[7],attributes,{tableName:_0xa7c5[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index c5dfc47..5fcd099 100644 (file)
@@ -1 +1 @@
-var _0x624a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x55\x70\x64\x61\x74\x65\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E"];_0x624a[0];var _=require(_0x624a[1]);var util=require(_0x624a[2]);var moment=require(_0x624a[3]);var BPromise=require(_0x624a[4]);var db=require(_0x624a[6])[_0x624a[5]];var utils=require(_0x624a[7]);var logger=require(_0x624a[9])(_0x624a[8]);var jayson=require(_0x624a[10]);var client=jayson[_0x624a[12]][_0x624a[11]]({port:9002});function respondWithRpcPromise(_0x9328xb,_0x9328xc,_0x9328xd){return  new BPromise(function(_0x9328xe,_0x9328xf){return client[_0x624a[25]](_0x9328xb,_0x9328xd)[_0x624a[24]](function(_0x9328x11){logger[_0x624a[17]](_0x624a[13],_0x9328xc,_0x624a[16]);logger[_0x624a[20]](_0x624a[18],_0x9328xc,_0x624a[16],JSON[_0x624a[19]](_0x9328x11));if(_0x9328x11[_0x624a[14]]){if(_0x9328x11[_0x624a[14]][_0x624a[21]]=== 500){logger[_0x624a[14]](_0x624a[13],_0x9328xc,_0x9328x11[_0x624a[14]][_0x624a[22]]);return _0x9328xf(_0x9328x11[_0x624a[14]][_0x624a[22]])};logger[_0x624a[14]](_0x624a[13],_0x9328xc,_0x9328x11[_0x624a[14]][_0x624a[22]]);return _0x9328xe(_0x9328x11[_0x624a[14]][_0x624a[22]])}else {logger[_0x624a[17]](_0x624a[13],_0x9328xc,_0x624a[16]);_0x9328xe(_0x9328x11[_0x624a[23]][_0x624a[22]])}})[_0x624a[15]](function(_0x9328x10){logger[_0x624a[14]](_0x624a[13],_0x9328xc,_0x9328x10);_0x9328xf(_0x9328x10)})})}exports[_0x624a[26]]= function(_0x9328xd){var _0x9328x12=this;return  new Promise(function(_0x9328xe,_0x9328xf){return db[_0x624a[34]][_0x624a[33]](_0x9328xd[_0x624a[27]],{raw:_0x9328xd[_0x624a[28]]?(_0x9328xd[_0x624a[28]][_0x624a[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x9328xd[_0x624a[28]]?_0x9328xd[_0x624a[28]][_0x624a[30]]|| null:null,attributes:_0x9328xd[_0x624a[28]]?_0x9328xd[_0x624a[28]][_0x624a[31]]|| null:null,limit:_0x9328xd[_0x624a[28]]?_0x9328xd[_0x624a[28]][_0x624a[32]]|| null:null})[_0x624a[24]](function(_0x9328x11){logger[_0x624a[17]](_0x624a[26],_0x9328xd);logger[_0x624a[20]](_0x624a[26],_0x9328xd,JSON[_0x624a[19]](_0x9328x11));_0x9328xe(_0x9328x11)})[_0x624a[15]](function(_0x9328x10){logger[_0x624a[14]](_0x624a[26],_0x9328x10[_0x624a[22]],_0x9328xd);_0x9328xf(_0x9328x12[_0x624a[14]](500,_0x9328x10[_0x624a[22]]))})})}
\ No newline at end of file
+var _0x6df9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x55\x70\x64\x61\x74\x65\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E"];_0x6df9[0];var _=require(_0x6df9[1]);var util=require(_0x6df9[2]);var moment=require(_0x6df9[3]);var BPromise=require(_0x6df9[4]);var db=require(_0x6df9[6])[_0x6df9[5]];var utils=require(_0x6df9[7]);var logger=require(_0x6df9[9])(_0x6df9[8]);var jayson=require(_0x6df9[10]);var client=jayson[_0x6df9[12]][_0x6df9[11]]({port:9002});function respondWithRpcPromise(_0x5669xb,_0x5669xc,_0x5669xd){return  new BPromise(function(_0x5669xe,_0x5669xf){return client[_0x6df9[25]](_0x5669xb,_0x5669xd)[_0x6df9[24]](function(_0x5669x11){logger[_0x6df9[17]](_0x6df9[13],_0x5669xc,_0x6df9[16]);logger[_0x6df9[20]](_0x6df9[18],_0x5669xc,_0x6df9[16],JSON[_0x6df9[19]](_0x5669x11));if(_0x5669x11[_0x6df9[14]]){if(_0x5669x11[_0x6df9[14]][_0x6df9[21]]=== 500){logger[_0x6df9[14]](_0x6df9[13],_0x5669xc,_0x5669x11[_0x6df9[14]][_0x6df9[22]]);return _0x5669xf(_0x5669x11[_0x6df9[14]][_0x6df9[22]])};logger[_0x6df9[14]](_0x6df9[13],_0x5669xc,_0x5669x11[_0x6df9[14]][_0x6df9[22]]);return _0x5669xe(_0x5669x11[_0x6df9[14]][_0x6df9[22]])}else {logger[_0x6df9[17]](_0x6df9[13],_0x5669xc,_0x6df9[16]);_0x5669xe(_0x5669x11[_0x6df9[23]][_0x6df9[22]])}})[_0x6df9[15]](function(_0x5669x10){logger[_0x6df9[14]](_0x6df9[13],_0x5669xc,_0x5669x10);_0x5669xf(_0x5669x10)})})}exports[_0x6df9[26]]= function(_0x5669xd){var _0x5669x12=this;return  new Promise(function(_0x5669xe,_0x5669xf){return db[_0x6df9[34]][_0x6df9[33]](_0x5669xd[_0x6df9[27]],{raw:_0x5669xd[_0x6df9[28]]?(_0x5669xd[_0x6df9[28]][_0x6df9[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x5669xd[_0x6df9[28]]?_0x5669xd[_0x6df9[28]][_0x6df9[30]]|| null:null,attributes:_0x5669xd[_0x6df9[28]]?_0x5669xd[_0x6df9[28]][_0x6df9[31]]|| null:null,limit:_0x5669xd[_0x6df9[28]]?_0x5669xd[_0x6df9[28]][_0x6df9[32]]|| null:null})[_0x6df9[24]](function(_0x5669x11){logger[_0x6df9[17]](_0x6df9[26],_0x5669xd);logger[_0x6df9[20]](_0x6df9[26],_0x5669xd,JSON[_0x6df9[19]](_0x5669x11));_0x5669xe(_0x5669x11)})[_0x6df9[15]](function(_0x5669x10){logger[_0x6df9[14]](_0x6df9[26],_0x5669x10[_0x6df9[22]],_0x5669xd);_0x5669xf(_0x5669x12[_0x6df9[14]](500,_0x5669x10[_0x6df9[22]]))})})}
\ No newline at end of file
index 0624d1b..5aaa79d 100644 (file)
@@ -1 +1 @@
-var _0x7525=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7525[0];var multer=require(_0x7525[1]);var util=require(_0x7525[2]);var path=require(_0x7525[3]);var express=require(_0x7525[4]);var router=express.Router();var auth=require(_0x7525[5]);var config=require(_0x7525[6]);var controller=require(_0x7525[7]);router[_0x7525[11]](_0x7525[8],auth[_0x7525[9]](),controller[_0x7525[10]]);router[_0x7525[11]](_0x7525[12],auth[_0x7525[9]](),controller[_0x7525[13]]);router[_0x7525[15]](_0x7525[8],auth[_0x7525[9]](),controller[_0x7525[14]]);router[_0x7525[17]](_0x7525[12],auth[_0x7525[9]](),controller[_0x7525[16]]);router[_0x7525[19]](_0x7525[12],auth[_0x7525[9]](),controller[_0x7525[18]]);module[_0x7525[20]]= router
\ No newline at end of file
+var _0x9632=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x9632[0];var multer=require(_0x9632[1]);var util=require(_0x9632[2]);var path=require(_0x9632[3]);var express=require(_0x9632[4]);var router=express.Router();var auth=require(_0x9632[5]);var config=require(_0x9632[6]);var controller=require(_0x9632[7]);router[_0x9632[11]](_0x9632[8],auth[_0x9632[9]](),controller[_0x9632[10]]);router[_0x9632[11]](_0x9632[12],auth[_0x9632[9]](),controller[_0x9632[13]]);router[_0x9632[15]](_0x9632[8],auth[_0x9632[9]](),controller[_0x9632[14]]);router[_0x9632[17]](_0x9632[12],auth[_0x9632[9]](),controller[_0x9632[16]]);router[_0x9632[19]](_0x9632[12],auth[_0x9632[9]](),controller[_0x9632[18]]);module[_0x9632[20]]= router
\ No newline at end of file
index d2617f6..1e4d2dd 100644 (file)
@@ -1 +1 @@
-var _0xb8de=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52"];_0xb8de[0];var Sequelize=require(_0xb8de[1]);module[_0xb8de[2]]= {domain:{type:Sequelize[_0xb8de[3]]},size:{type:Sequelize[_0xb8de[4]]},path:{type:Sequelize[_0xb8de[3]]},name:{type:Sequelize[_0xb8de[3]]},basename:{type:Sequelize[_0xb8de[3]]},type:{type:Sequelize[_0xb8de[3]]}}
\ No newline at end of file
+var _0x230f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52"];_0x230f[0];var Sequelize=require(_0x230f[1]);module[_0x230f[2]]= {domain:{type:Sequelize[_0x230f[3]]},size:{type:Sequelize[_0x230f[4]]},path:{type:Sequelize[_0x230f[3]]},name:{type:Sequelize[_0x230f[3]]},basename:{type:Sequelize[_0x230f[3]]},type:{type:Sequelize[_0x230f[3]]}}
\ No newline at end of file
index 57cc1de..9af838a 100644 (file)
@@ -1 +1 @@
-var _0xffa6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xffa6[0];var jsonpatch=require(_0xffa6[1]);var rp=require(_0xffa6[2]);var moment=require(_0xffa6[3]);var BPromise=require(_0xffa6[4]);var util=require(_0xffa6[5]);var path=require(_0xffa6[6]);var sox=require(_0xffa6[7]);var ejs=require(_0xffa6[8]);var fs=require(_0xffa6[9]);var _=require(_0xffa6[10]);var squel=require(_0xffa6[11]);var crypto=require(_0xffa6[12]);var jsforce=require(_0xffa6[13]);var toCsv=require(_0xffa6[14]);var qs=require(_0xffa6[15]);var logger=require(_0xffa6[17])(_0xffa6[16]);var utils=require(_0xffa6[18]);var config=require(_0xffa6[19]);var db=require(_0xffa6[21])[_0xffa6[20]];function respondWithStatusCode(_0xedb0x15,_0xedb0x16,_0xedb0x17){_0xedb0x16= _0xedb0x16|| 204;return function(_0xedb0x18){if(_0xedb0x18){logger[_0xffa6[24]](_0xffa6[22],_0xedb0x17,_0xedb0x16,_0xffa6[23]);logger[_0xffa6[26]](_0xffa6[25],_0xedb0x17,_0xedb0x16,_0xffa6[23]);return _0xedb0x15[_0xffa6[27]](_0xedb0x16)};return _0xedb0x15[_0xffa6[29]](304)[_0xffa6[28]]()}}function respondWithResult(_0xedb0x15,_0xedb0x16,_0xedb0x17){_0xedb0x16= _0xedb0x16|| 200;return function(_0xedb0x18){if(_0xedb0x18){logger[_0xffa6[24]](_0xffa6[22],_0xedb0x17,_0xedb0x16,_0xffa6[30]);logger[_0xffa6[26]](_0xffa6[25],_0xedb0x17,_0xedb0x16,_0xffa6[30],JSON[_0xffa6[31]](_0xedb0x18));return _0xedb0x15[_0xffa6[29]](_0xedb0x16)[_0xffa6[32]](_0xedb0x18)};return _0xedb0x15[_0xffa6[29]](304)[_0xffa6[28]]()}}function respondWithFilteredResult(_0xedb0x15,_0xedb0x1b,_0xedb0x17){return function(_0xedb0x18){if(_0xedb0x18){var _0xedb0x1c=_0xedb0x18[_0xffa6[33]],_0xedb0x1d=_0xedb0x1b[_0xffa6[34]],_0xedb0x1e=_0xedb0x1b[_0xffa6[34]]+ _0xedb0x1b[_0xffa6[35]],_0xedb0x16;if(_0xedb0x1e>= _0xedb0x1c){_0xedb0x1e= _0xedb0x1c;_0xedb0x16= 200}else {_0xedb0x16= 206};_0xedb0x15[_0xffa6[29]](_0xedb0x16);logger[_0xffa6[24]](_0xffa6[22],_0xedb0x17,_0xedb0x16,_0xffa6[36]);logger[_0xffa6[26]](_0xffa6[25],_0xedb0x17,_0xedb0x16,_0xffa6[30],JSON[_0xffa6[31]](_0xedb0x18));return _0xedb0x15[_0xffa6[40]](_0xffa6[37],_0xedb0x1d+ _0xffa6[38]+ _0xedb0x1e+ _0xffa6[39]+ _0xedb0x1c)[_0xffa6[32]](_0xedb0x18)};return null}}function patchUpdates(_0xedb0x20){return function(_0xedb0x18){try{jsonpatch[_0xffa6[41]](_0xedb0x18,_0xedb0x20,true)}catch(err){return BPromise[_0xffa6[42]](err)};return _0xedb0x18[_0xffa6[43]]()}}function saveUpdates(_0xedb0x22,_0xedb0x16,_0xedb0x17){return function(_0xedb0x18){if(_0xedb0x18){return _0xedb0x18[_0xffa6[46]](_0xedb0x22)[_0xffa6[45]](function(_0xedb0x23){logger[_0xffa6[24]](_0xffa6[22],_0xedb0x17,_0xedb0x16,_0xffa6[44]);logger[_0xffa6[26]](_0xffa6[25],_0xedb0x17,_0xedb0x16,_0xffa6[44],JSON[_0xffa6[31]](_0xedb0x18));return _0xedb0x23})};return null}}function removeEntity(_0xedb0x15,_0xedb0x16,_0xedb0x17){return function(_0xedb0x18){if(_0xedb0x18){return _0xedb0x18[_0xffa6[48]]()[_0xffa6[45]](function(){logger[_0xffa6[24]](_0xffa6[22],_0xedb0x17,_0xedb0x16,_0xffa6[47]);logger[_0xffa6[26]](_0xffa6[25],_0xedb0x17,_0xedb0x16,_0xffa6[47],JSON[_0xffa6[31]](_0xedb0x18));_0xedb0x15[_0xffa6[29]](204)[_0xffa6[28]]()})}}}function handleEntityNotFound(_0xedb0x15,_0xedb0x16,_0xedb0x17){return function(_0xedb0x18){if(!_0xedb0x18){logger[_0xffa6[50]](_0xffa6[22],_0xedb0x17,404,_0xffa6[49]);_0xedb0x15[_0xffa6[29]](404)[_0xffa6[28]]();return null};return _0xedb0x18}}function handleError(_0xedb0x15,_0xedb0x16,_0xedb0x17){_0xedb0x16= _0xedb0x16|| 500;return function(_0xedb0x27){logger[_0xffa6[50]](_0xffa6[22],_0xedb0x17,_0xedb0x16,JSON[_0xffa6[31]](_0xedb0x27));delete _0xedb0x27[_0xffa6[51]];_0xedb0x15[_0xffa6[29]](_0xedb0x16)[_0xffa6[52]](_0xedb0x27)}}exports[_0xffa6[53]]= function(_0xedb0x28,_0xedb0x15){var _0xedb0x1b={},_0xedb0x29={};_0xedb0x29[_0xffa6[54]]= _[_0xffa6[57]](db[_0xffa6[56]][_0xffa6[55]]);_0xedb0x29[_0xffa6[58]]= _[_0xffa6[57]](_0xedb0x28[_0xffa6[58]]);_0xedb0x29[_0xffa6[59]]= _[_0xffa6[60]](_0xedb0x29[_0xffa6[54]],_0xedb0x29[_0xffa6[58]]);_0xedb0x1b[_0xffa6[61]]= _[_0xffa6[60]](_0xedb0x29[_0xffa6[54]],qs[_0xffa6[62]](_0xedb0x28[_0xffa6[58]][_0xffa6[62]]));_0xedb0x1b[_0xffa6[61]]= (_0xedb0x1b[_0xffa6[61]][_0xffa6[63]])?_0xedb0x1b[_0xffa6[61]]:_0xedb0x29[_0xffa6[54]];if(!_0xedb0x28[_0xffa6[58]][_0xffa6[65]](_0xffa6[64])){_0xedb0x1b[_0xffa6[35]]= qs[_0xffa6[35]](_0xedb0x28[_0xffa6[58]][_0xffa6[35]]);_0xedb0x1b[_0xffa6[34]]= qs[_0xffa6[34]](_0xedb0x28[_0xffa6[58]][_0xffa6[34]])};_0xedb0x1b[_0xffa6[66]]= qs[_0xffa6[67]](_0xedb0x28[_0xffa6[58]][_0xffa6[67]]);_0xedb0x1b[_0xffa6[68]]= qs[_0xffa6[59]](_[_0xffa6[69]](_0xedb0x28[_0xffa6[58]],_0xedb0x29[_0xffa6[59]]));if(_0xedb0x28[_0xffa6[58]][_0xffa6[70]]){_0xedb0x1b[_0xffa6[68]]= _[_0xffa6[73]](_0xedb0x1b[_0xffa6[68]],{$or:_[_0xffa6[72]](_0xedb0x1b[_0xffa6[61]],function(_0xedb0x2a){var _0xedb0x2b={};_0xedb0x2b[_0xedb0x2a]= {$like:_0xffa6[71]+ _0xedb0x28[_0xffa6[58]][_0xffa6[70]]+ _0xffa6[71]};return _0xedb0x2b})})};_0xedb0x1b= _[_0xffa6[73]]({},_0xedb0x1b,_0xedb0x28[_0xffa6[74]]);return db[_0xffa6[56]][_0xffa6[76]](_0xedb0x1b)[_0xffa6[45]](respondWithFilteredResult(_0xedb0x15,_0xedb0x1b,_0xffa6[53]))[_0xffa6[75]](handleError(_0xedb0x15,null,_0xffa6[53]))};exports[_0xffa6[77]]= function(_0xedb0x28,_0xedb0x15){var _0xedb0x1b={raw:true,where:{id:_0xedb0x28[_0xffa6[79]][_0xffa6[78]]}},_0xedb0x29={};_0xedb0x29[_0xffa6[54]]= _[_0xffa6[57]](db[_0xffa6[56]][_0xffa6[55]]);_0xedb0x29[_0xffa6[58]]= _[_0xffa6[57]](_0xedb0x28[_0xffa6[58]]);_0xedb0x29[_0xffa6[59]]= _[_0xffa6[60]](_0xedb0x29[_0xffa6[54]],_0xedb0x29[_0xffa6[58]]);_0xedb0x1b[_0xffa6[61]]= _[_0xffa6[60]](_0xedb0x29[_0xffa6[54]],qs[_0xffa6[62]](_0xedb0x28[_0xffa6[58]][_0xffa6[62]]));_0xedb0x1b[_0xffa6[61]]= (_0xedb0x1b[_0xffa6[61]][_0xffa6[63]])?_0xedb0x1b[_0xffa6[61]]:_0xedb0x29[_0xffa6[54]];_0xedb0x1b= _[_0xffa6[73]]({},_0xedb0x1b,_0xedb0x28[_0xffa6[74]]);return db[_0xffa6[56]][_0xffa6[80]](_0xedb0x1b)[_0xffa6[45]](handleEntityNotFound(_0xedb0x15,null,_0xffa6[77]))[_0xffa6[45]](respondWithResult(_0xedb0x15,null,_0xffa6[77]))[_0xffa6[75]](handleError(_0xedb0x15,null,_0xffa6[77]))};exports[_0xffa6[81]]= function(_0xedb0x28,_0xedb0x15){return db[_0xffa6[56]][_0xffa6[81]](_0xedb0x28[_0xffa6[82]],{})[_0xffa6[45]](respondWithResult(_0xedb0x15,201,_0xffa6[81]))[_0xffa6[75]](handleError(_0xedb0x15,null,_0xffa6[81]))};exports[_0xffa6[46]]= function(_0xedb0x28,_0xedb0x15){if(_0xedb0x28[_0xffa6[82]][_0xffa6[78]]){delete _0xedb0x28[_0xffa6[82]][_0xffa6[78]]};return db[_0xffa6[56]][_0xffa6[80]]({where:{id:_0xedb0x28[_0xffa6[79]][_0xffa6[78]]}})[_0xffa6[45]](handleEntityNotFound(_0xedb0x15,null,_0xffa6[46]))[_0xffa6[45]](saveUpdates(_0xedb0x28[_0xffa6[82]],null,_0xffa6[46]))[_0xffa6[45]](respondWithResult(_0xedb0x15,null,_0xffa6[46]))[_0xffa6[75]](handleError(_0xedb0x15,null,_0xffa6[46]))};exports[_0xffa6[48]]= function(_0xedb0x28,_0xedb0x15){return db[_0xffa6[56]][_0xffa6[80]]({where:{id:_0xedb0x28[_0xffa6[79]][_0xffa6[78]]}})[_0xffa6[45]](handleEntityNotFound(_0xedb0x15,null,_0xffa6[48]))[_0xffa6[45]](removeEntity(_0xedb0x15,null,_0xffa6[48]))[_0xffa6[75]](handleError(_0xedb0x15,null,_0xffa6[48]))}
\ No newline at end of file
+var _0x86a7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x86a7[0];var jsonpatch=require(_0x86a7[1]);var rp=require(_0x86a7[2]);var moment=require(_0x86a7[3]);var BPromise=require(_0x86a7[4]);var util=require(_0x86a7[5]);var path=require(_0x86a7[6]);var sox=require(_0x86a7[7]);var ejs=require(_0x86a7[8]);var fs=require(_0x86a7[9]);var _=require(_0x86a7[10]);var squel=require(_0x86a7[11]);var crypto=require(_0x86a7[12]);var jsforce=require(_0x86a7[13]);var toCsv=require(_0x86a7[14]);var qs=require(_0x86a7[15]);var logger=require(_0x86a7[17])(_0x86a7[16]);var utils=require(_0x86a7[18]);var config=require(_0x86a7[19]);var db=require(_0x86a7[21])[_0x86a7[20]];function respondWithStatusCode(_0x55e1x15,_0x55e1x16,_0x55e1x17){_0x55e1x16= _0x55e1x16|| 204;return function(_0x55e1x18){if(_0x55e1x18){logger[_0x86a7[24]](_0x86a7[22],_0x55e1x17,_0x55e1x16,_0x86a7[23]);logger[_0x86a7[26]](_0x86a7[25],_0x55e1x17,_0x55e1x16,_0x86a7[23]);return _0x55e1x15[_0x86a7[27]](_0x55e1x16)};return _0x55e1x15[_0x86a7[29]](304)[_0x86a7[28]]()}}function respondWithResult(_0x55e1x15,_0x55e1x16,_0x55e1x17){_0x55e1x16= _0x55e1x16|| 200;return function(_0x55e1x18){if(_0x55e1x18){logger[_0x86a7[24]](_0x86a7[22],_0x55e1x17,_0x55e1x16,_0x86a7[30]);logger[_0x86a7[26]](_0x86a7[25],_0x55e1x17,_0x55e1x16,_0x86a7[30],JSON[_0x86a7[31]](_0x55e1x18));return _0x55e1x15[_0x86a7[29]](_0x55e1x16)[_0x86a7[32]](_0x55e1x18)};return _0x55e1x15[_0x86a7[29]](304)[_0x86a7[28]]()}}function respondWithFilteredResult(_0x55e1x15,_0x55e1x1b,_0x55e1x17){return function(_0x55e1x18){if(_0x55e1x18){var _0x55e1x1c=_0x55e1x18[_0x86a7[33]],_0x55e1x1d=_0x55e1x1b[_0x86a7[34]],_0x55e1x1e=_0x55e1x1b[_0x86a7[34]]+ _0x55e1x1b[_0x86a7[35]],_0x55e1x16;if(_0x55e1x1e>= _0x55e1x1c){_0x55e1x1e= _0x55e1x1c;_0x55e1x16= 200}else {_0x55e1x16= 206};_0x55e1x15[_0x86a7[29]](_0x55e1x16);logger[_0x86a7[24]](_0x86a7[22],_0x55e1x17,_0x55e1x16,_0x86a7[36]);logger[_0x86a7[26]](_0x86a7[25],_0x55e1x17,_0x55e1x16,_0x86a7[30],JSON[_0x86a7[31]](_0x55e1x18));return _0x55e1x15[_0x86a7[40]](_0x86a7[37],_0x55e1x1d+ _0x86a7[38]+ _0x55e1x1e+ _0x86a7[39]+ _0x55e1x1c)[_0x86a7[32]](_0x55e1x18)};return null}}function patchUpdates(_0x55e1x20){return function(_0x55e1x18){try{jsonpatch[_0x86a7[41]](_0x55e1x18,_0x55e1x20,true)}catch(err){return BPromise[_0x86a7[42]](err)};return _0x55e1x18[_0x86a7[43]]()}}function saveUpdates(_0x55e1x22,_0x55e1x16,_0x55e1x17){return function(_0x55e1x18){if(_0x55e1x18){return _0x55e1x18[_0x86a7[46]](_0x55e1x22)[_0x86a7[45]](function(_0x55e1x23){logger[_0x86a7[24]](_0x86a7[22],_0x55e1x17,_0x55e1x16,_0x86a7[44]);logger[_0x86a7[26]](_0x86a7[25],_0x55e1x17,_0x55e1x16,_0x86a7[44],JSON[_0x86a7[31]](_0x55e1x18));return _0x55e1x23})};return null}}function removeEntity(_0x55e1x15,_0x55e1x16,_0x55e1x17){return function(_0x55e1x18){if(_0x55e1x18){return _0x55e1x18[_0x86a7[48]]()[_0x86a7[45]](function(){logger[_0x86a7[24]](_0x86a7[22],_0x55e1x17,_0x55e1x16,_0x86a7[47]);logger[_0x86a7[26]](_0x86a7[25],_0x55e1x17,_0x55e1x16,_0x86a7[47],JSON[_0x86a7[31]](_0x55e1x18));_0x55e1x15[_0x86a7[29]](204)[_0x86a7[28]]()})}}}function handleEntityNotFound(_0x55e1x15,_0x55e1x16,_0x55e1x17){return function(_0x55e1x18){if(!_0x55e1x18){logger[_0x86a7[50]](_0x86a7[22],_0x55e1x17,404,_0x86a7[49]);_0x55e1x15[_0x86a7[29]](404)[_0x86a7[28]]();return null};return _0x55e1x18}}function handleError(_0x55e1x15,_0x55e1x16,_0x55e1x17){_0x55e1x16= _0x55e1x16|| 500;return function(_0x55e1x27){logger[_0x86a7[50]](_0x86a7[22],_0x55e1x17,_0x55e1x16,JSON[_0x86a7[31]](_0x55e1x27));delete _0x55e1x27[_0x86a7[51]];_0x55e1x15[_0x86a7[29]](_0x55e1x16)[_0x86a7[52]](_0x55e1x27)}}exports[_0x86a7[53]]= function(_0x55e1x28,_0x55e1x15){var _0x55e1x1b={},_0x55e1x29={};_0x55e1x29[_0x86a7[54]]= _[_0x86a7[57]](db[_0x86a7[56]][_0x86a7[55]]);_0x55e1x29[_0x86a7[58]]= _[_0x86a7[57]](_0x55e1x28[_0x86a7[58]]);_0x55e1x29[_0x86a7[59]]= _[_0x86a7[60]](_0x55e1x29[_0x86a7[54]],_0x55e1x29[_0x86a7[58]]);_0x55e1x1b[_0x86a7[61]]= _[_0x86a7[60]](_0x55e1x29[_0x86a7[54]],qs[_0x86a7[62]](_0x55e1x28[_0x86a7[58]][_0x86a7[62]]));_0x55e1x1b[_0x86a7[61]]= (_0x55e1x1b[_0x86a7[61]][_0x86a7[63]])?_0x55e1x1b[_0x86a7[61]]:_0x55e1x29[_0x86a7[54]];if(!_0x55e1x28[_0x86a7[58]][_0x86a7[65]](_0x86a7[64])){_0x55e1x1b[_0x86a7[35]]= qs[_0x86a7[35]](_0x55e1x28[_0x86a7[58]][_0x86a7[35]]);_0x55e1x1b[_0x86a7[34]]= qs[_0x86a7[34]](_0x55e1x28[_0x86a7[58]][_0x86a7[34]])};_0x55e1x1b[_0x86a7[66]]= qs[_0x86a7[67]](_0x55e1x28[_0x86a7[58]][_0x86a7[67]]);_0x55e1x1b[_0x86a7[68]]= qs[_0x86a7[59]](_[_0x86a7[69]](_0x55e1x28[_0x86a7[58]],_0x55e1x29[_0x86a7[59]]));if(_0x55e1x28[_0x86a7[58]][_0x86a7[70]]){_0x55e1x1b[_0x86a7[68]]= _[_0x86a7[73]](_0x55e1x1b[_0x86a7[68]],{$or:_[_0x86a7[72]](_0x55e1x1b[_0x86a7[61]],function(_0x55e1x2a){var _0x55e1x2b={};_0x55e1x2b[_0x55e1x2a]= {$like:_0x86a7[71]+ _0x55e1x28[_0x86a7[58]][_0x86a7[70]]+ _0x86a7[71]};return _0x55e1x2b})})};_0x55e1x1b= _[_0x86a7[73]]({},_0x55e1x1b,_0x55e1x28[_0x86a7[74]]);return db[_0x86a7[56]][_0x86a7[76]](_0x55e1x1b)[_0x86a7[45]](respondWithFilteredResult(_0x55e1x15,_0x55e1x1b,_0x86a7[53]))[_0x86a7[75]](handleError(_0x55e1x15,null,_0x86a7[53]))};exports[_0x86a7[77]]= function(_0x55e1x28,_0x55e1x15){var _0x55e1x1b={raw:true,where:{id:_0x55e1x28[_0x86a7[79]][_0x86a7[78]]}},_0x55e1x29={};_0x55e1x29[_0x86a7[54]]= _[_0x86a7[57]](db[_0x86a7[56]][_0x86a7[55]]);_0x55e1x29[_0x86a7[58]]= _[_0x86a7[57]](_0x55e1x28[_0x86a7[58]]);_0x55e1x29[_0x86a7[59]]= _[_0x86a7[60]](_0x55e1x29[_0x86a7[54]],_0x55e1x29[_0x86a7[58]]);_0x55e1x1b[_0x86a7[61]]= _[_0x86a7[60]](_0x55e1x29[_0x86a7[54]],qs[_0x86a7[62]](_0x55e1x28[_0x86a7[58]][_0x86a7[62]]));_0x55e1x1b[_0x86a7[61]]= (_0x55e1x1b[_0x86a7[61]][_0x86a7[63]])?_0x55e1x1b[_0x86a7[61]]:_0x55e1x29[_0x86a7[54]];_0x55e1x1b= _[_0x86a7[73]]({},_0x55e1x1b,_0x55e1x28[_0x86a7[74]]);return db[_0x86a7[56]][_0x86a7[80]](_0x55e1x1b)[_0x86a7[45]](handleEntityNotFound(_0x55e1x15,null,_0x86a7[77]))[_0x86a7[45]](respondWithResult(_0x55e1x15,null,_0x86a7[77]))[_0x86a7[75]](handleError(_0x55e1x15,null,_0x86a7[77]))};exports[_0x86a7[81]]= function(_0x55e1x28,_0x55e1x15){return db[_0x86a7[56]][_0x86a7[81]](_0x55e1x28[_0x86a7[82]],{})[_0x86a7[45]](respondWithResult(_0x55e1x15,201,_0x86a7[81]))[_0x86a7[75]](handleError(_0x55e1x15,null,_0x86a7[81]))};exports[_0x86a7[46]]= function(_0x55e1x28,_0x55e1x15){if(_0x55e1x28[_0x86a7[82]][_0x86a7[78]]){delete _0x55e1x28[_0x86a7[82]][_0x86a7[78]]};return db[_0x86a7[56]][_0x86a7[80]]({where:{id:_0x55e1x28[_0x86a7[79]][_0x86a7[78]]}})[_0x86a7[45]](handleEntityNotFound(_0x55e1x15,null,_0x86a7[46]))[_0x86a7[45]](saveUpdates(_0x55e1x28[_0x86a7[82]],null,_0x86a7[46]))[_0x86a7[45]](respondWithResult(_0x55e1x15,null,_0x86a7[46]))[_0x86a7[75]](handleError(_0x55e1x15,null,_0x86a7[46]))};exports[_0x86a7[48]]= function(_0x55e1x28,_0x55e1x15){return db[_0x86a7[56]][_0x86a7[80]]({where:{id:_0x55e1x28[_0x86a7[79]][_0x86a7[78]]}})[_0x86a7[45]](handleEntityNotFound(_0x55e1x15,null,_0x86a7[48]))[_0x86a7[45]](removeEntity(_0x55e1x15,null,_0x86a7[48]))[_0x86a7[75]](handleError(_0x55e1x15,null,_0x86a7[48]))}
\ No newline at end of file
index 4d26579..6ea7d1d 100644 (file)
@@ -1 +1 @@
-var _0x355f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x6D\x61\x69\x6C\x5F\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x355f[0];var _=require(_0x355f[1]);var util=require(_0x355f[2]);var logger=require(_0x355f[4])(_0x355f[3]);var attributes=require(_0x355f[5]);module[_0x355f[6]]= function(_0xd51cx5,_0xd51cx6){return _0xd51cx5[_0x355f[9]](_0x355f[7],attributes,{tableName:_0x355f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4465=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x6D\x61\x69\x6C\x5F\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x4465[0];var _=require(_0x4465[1]);var util=require(_0x4465[2]);var logger=require(_0x4465[4])(_0x4465[3]);var attributes=require(_0x4465[5]);module[_0x4465[6]]= function(_0xab16x5,_0xab16x6){return _0xab16x5[_0x4465[9]](_0x4465[7],attributes,{tableName:_0x4465[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 94b44fb..c672724 100644 (file)
@@ -1 +1 @@
-var _0x8ea6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x8ea6[0];var _=require(_0x8ea6[1]);var util=require(_0x8ea6[2]);var moment=require(_0x8ea6[3]);var BPromise=require(_0x8ea6[4]);var db=require(_0x8ea6[6])[_0x8ea6[5]];var utils=require(_0x8ea6[7]);var logger=require(_0x8ea6[9])(_0x8ea6[8]);var jayson=require(_0x8ea6[10]);var client=jayson[_0x8ea6[12]][_0x8ea6[11]]({port:9002});function respondWithRpcPromise(_0xc1a9xb,_0xc1a9xc,_0xc1a9xd){return  new BPromise(function(_0xc1a9xe,_0xc1a9xf){return client[_0x8ea6[25]](_0xc1a9xb,_0xc1a9xd)[_0x8ea6[24]](function(_0xc1a9x11){logger[_0x8ea6[17]](_0x8ea6[13],_0xc1a9xc,_0x8ea6[16]);logger[_0x8ea6[20]](_0x8ea6[18],_0xc1a9xc,_0x8ea6[16],JSON[_0x8ea6[19]](_0xc1a9x11));if(_0xc1a9x11[_0x8ea6[14]]){if(_0xc1a9x11[_0x8ea6[14]][_0x8ea6[21]]=== 500){logger[_0x8ea6[14]](_0x8ea6[13],_0xc1a9xc,_0xc1a9x11[_0x8ea6[14]][_0x8ea6[22]]);return _0xc1a9xf(_0xc1a9x11[_0x8ea6[14]][_0x8ea6[22]])};logger[_0x8ea6[14]](_0x8ea6[13],_0xc1a9xc,_0xc1a9x11[_0x8ea6[14]][_0x8ea6[22]]);return _0xc1a9xe(_0xc1a9x11[_0x8ea6[14]][_0x8ea6[22]])}else {logger[_0x8ea6[17]](_0x8ea6[13],_0xc1a9xc,_0x8ea6[16]);_0xc1a9xe(_0xc1a9x11[_0x8ea6[23]][_0x8ea6[22]])}})[_0x8ea6[15]](function(_0xc1a9x10){logger[_0x8ea6[14]](_0x8ea6[13],_0xc1a9xc,_0xc1a9x10);_0xc1a9xf(_0xc1a9x10)})})}
\ No newline at end of file
+var _0x5fc0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x5fc0[0];var _=require(_0x5fc0[1]);var util=require(_0x5fc0[2]);var moment=require(_0x5fc0[3]);var BPromise=require(_0x5fc0[4]);var db=require(_0x5fc0[6])[_0x5fc0[5]];var utils=require(_0x5fc0[7]);var logger=require(_0x5fc0[9])(_0x5fc0[8]);var jayson=require(_0x5fc0[10]);var client=jayson[_0x5fc0[12]][_0x5fc0[11]]({port:9002});function respondWithRpcPromise(_0x2cf2xb,_0x2cf2xc,_0x2cf2xd){return  new BPromise(function(_0x2cf2xe,_0x2cf2xf){return client[_0x5fc0[25]](_0x2cf2xb,_0x2cf2xd)[_0x5fc0[24]](function(_0x2cf2x11){logger[_0x5fc0[17]](_0x5fc0[13],_0x2cf2xc,_0x5fc0[16]);logger[_0x5fc0[20]](_0x5fc0[18],_0x2cf2xc,_0x5fc0[16],JSON[_0x5fc0[19]](_0x2cf2x11));if(_0x2cf2x11[_0x5fc0[14]]){if(_0x2cf2x11[_0x5fc0[14]][_0x5fc0[21]]=== 500){logger[_0x5fc0[14]](_0x5fc0[13],_0x2cf2xc,_0x2cf2x11[_0x5fc0[14]][_0x5fc0[22]]);return _0x2cf2xf(_0x2cf2x11[_0x5fc0[14]][_0x5fc0[22]])};logger[_0x5fc0[14]](_0x5fc0[13],_0x2cf2xc,_0x2cf2x11[_0x5fc0[14]][_0x5fc0[22]]);return _0x2cf2xe(_0x2cf2x11[_0x5fc0[14]][_0x5fc0[22]])}else {logger[_0x5fc0[17]](_0x5fc0[13],_0x2cf2xc,_0x5fc0[16]);_0x2cf2xe(_0x2cf2x11[_0x5fc0[23]][_0x5fc0[22]])}})[_0x5fc0[15]](function(_0x2cf2x10){logger[_0x5fc0[14]](_0x5fc0[13],_0x2cf2xc,_0x2cf2x10);_0x2cf2xf(_0x2cf2x10)})})}
\ No newline at end of file
index 1ef9bab..b13060e 100644 (file)
@@ -1 +1 @@
-var _0x3713=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3713[0];var multer=require(_0x3713[1]);var util=require(_0x3713[2]);var path=require(_0x3713[3]);var express=require(_0x3713[4]);var router=express.Router();var auth=require(_0x3713[5]);var config=require(_0x3713[6]);var controller=require(_0x3713[7]);router[_0x3713[11]](_0x3713[8],auth[_0x3713[9]](),controller[_0x3713[10]]);router[_0x3713[14]](_0x3713[12],auth[_0x3713[9]](),controller[_0x3713[13]]);router[_0x3713[16]](_0x3713[8],auth[_0x3713[9]](),controller[_0x3713[15]]);router[_0x3713[18]](_0x3713[8],auth[_0x3713[9]](),controller[_0x3713[17]]);module[_0x3713[19]]= router
\ No newline at end of file
+var _0xa723=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa723[0];var multer=require(_0xa723[1]);var util=require(_0xa723[2]);var path=require(_0xa723[3]);var express=require(_0xa723[4]);var router=express.Router();var auth=require(_0xa723[5]);var config=require(_0xa723[6]);var controller=require(_0xa723[7]);router[_0xa723[11]](_0xa723[8],auth[_0xa723[9]](),controller[_0xa723[10]]);router[_0xa723[14]](_0xa723[12],auth[_0xa723[9]](),controller[_0xa723[13]]);router[_0xa723[16]](_0xa723[8],auth[_0xa723[9]](),controller[_0xa723[15]]);router[_0xa723[18]](_0xa723[8],auth[_0xa723[9]](),controller[_0xa723[17]]);module[_0xa723[19]]= router
\ No newline at end of file
index b60ba7d..e82c4c0 100644 (file)
@@ -1 +1 @@
-var _0x8b04=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x8b04[0];var Sequelize=require(_0x8b04[1]);module[_0x8b04[2]]= {name:{type:Sequelize[_0x8b04[3]]}}
\ No newline at end of file
+var _0x16a5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x16a5[0];var Sequelize=require(_0x16a5[1]);module[_0x16a5[2]]= {name:{type:Sequelize[_0x16a5[3]]}}
\ No newline at end of file
index bcb522f..d8c6f81 100644 (file)
@@ -1 +1 @@
-var _0x2d52=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x2d52[0];var jsonpatch=require(_0x2d52[1]);var rp=require(_0x2d52[2]);var moment=require(_0x2d52[3]);var BPromise=require(_0x2d52[4]);var util=require(_0x2d52[5]);var path=require(_0x2d52[6]);var sox=require(_0x2d52[7]);var ejs=require(_0x2d52[8]);var fs=require(_0x2d52[9]);var _=require(_0x2d52[10]);var squel=require(_0x2d52[11]);var crypto=require(_0x2d52[12]);var jsforce=require(_0x2d52[13]);var toCsv=require(_0x2d52[14]);var qs=require(_0x2d52[15]);var logger=require(_0x2d52[17])(_0x2d52[16]);var utils=require(_0x2d52[18]);var config=require(_0x2d52[19]);var db=require(_0x2d52[21])[_0x2d52[20]];function respondWithStatusCode(_0xc197x15,_0xc197x16,_0xc197x17){_0xc197x16= _0xc197x16|| 204;return function(_0xc197x18){if(_0xc197x18){logger[_0x2d52[24]](_0x2d52[22],_0xc197x17,_0xc197x16,_0x2d52[23]);logger[_0x2d52[26]](_0x2d52[25],_0xc197x17,_0xc197x16,_0x2d52[23]);return _0xc197x15[_0x2d52[27]](_0xc197x16)};return _0xc197x15[_0x2d52[29]](304)[_0x2d52[28]]()}}function respondWithResult(_0xc197x15,_0xc197x16,_0xc197x17){_0xc197x16= _0xc197x16|| 200;return function(_0xc197x18){if(_0xc197x18){logger[_0x2d52[24]](_0x2d52[22],_0xc197x17,_0xc197x16,_0x2d52[30]);logger[_0x2d52[26]](_0x2d52[25],_0xc197x17,_0xc197x16,_0x2d52[30],JSON[_0x2d52[31]](_0xc197x18));return _0xc197x15[_0x2d52[29]](_0xc197x16)[_0x2d52[32]](_0xc197x18)};return _0xc197x15[_0x2d52[29]](304)[_0x2d52[28]]()}}function respondWithFilteredResult(_0xc197x15,_0xc197x1b,_0xc197x17){return function(_0xc197x18){if(_0xc197x18){var _0xc197x1c=_0xc197x18[_0x2d52[33]],_0xc197x1d=_0xc197x1b[_0x2d52[34]],_0xc197x1e=_0xc197x1b[_0x2d52[34]]+ _0xc197x1b[_0x2d52[35]],_0xc197x16;if(_0xc197x1e>= _0xc197x1c){_0xc197x1e= _0xc197x1c;_0xc197x16= 200}else {_0xc197x16= 206};_0xc197x15[_0x2d52[29]](_0xc197x16);logger[_0x2d52[24]](_0x2d52[22],_0xc197x17,_0xc197x16,_0x2d52[36]);logger[_0x2d52[26]](_0x2d52[25],_0xc197x17,_0xc197x16,_0x2d52[30],JSON[_0x2d52[31]](_0xc197x18));return _0xc197x15[_0x2d52[40]](_0x2d52[37],_0xc197x1d+ _0x2d52[38]+ _0xc197x1e+ _0x2d52[39]+ _0xc197x1c)[_0x2d52[32]](_0xc197x18)};return null}}function patchUpdates(_0xc197x20){return function(_0xc197x18){try{jsonpatch[_0x2d52[41]](_0xc197x18,_0xc197x20,true)}catch(err){return BPromise[_0x2d52[42]](err)};return _0xc197x18[_0x2d52[43]]()}}function saveUpdates(_0xc197x22,_0xc197x16,_0xc197x17){return function(_0xc197x18){if(_0xc197x18){return _0xc197x18[_0x2d52[46]](_0xc197x22)[_0x2d52[45]](function(_0xc197x23){logger[_0x2d52[24]](_0x2d52[22],_0xc197x17,_0xc197x16,_0x2d52[44]);logger[_0x2d52[26]](_0x2d52[25],_0xc197x17,_0xc197x16,_0x2d52[44],JSON[_0x2d52[31]](_0xc197x18));return _0xc197x23})};return null}}function removeEntity(_0xc197x15,_0xc197x16,_0xc197x17){return function(_0xc197x18){if(_0xc197x18){return _0xc197x18[_0x2d52[48]]()[_0x2d52[45]](function(){logger[_0x2d52[24]](_0x2d52[22],_0xc197x17,_0xc197x16,_0x2d52[47]);logger[_0x2d52[26]](_0x2d52[25],_0xc197x17,_0xc197x16,_0x2d52[47],JSON[_0x2d52[31]](_0xc197x18));_0xc197x15[_0x2d52[29]](204)[_0x2d52[28]]()})}}}function handleEntityNotFound(_0xc197x15,_0xc197x16,_0xc197x17){return function(_0xc197x18){if(!_0xc197x18){logger[_0x2d52[50]](_0x2d52[22],_0xc197x17,404,_0x2d52[49]);_0xc197x15[_0x2d52[29]](404)[_0x2d52[28]]();return null};return _0xc197x18}}function handleError(_0xc197x15,_0xc197x16,_0xc197x17){_0xc197x16= _0xc197x16|| 500;return function(_0xc197x27){logger[_0x2d52[50]](_0x2d52[22],_0xc197x17,_0xc197x16,JSON[_0x2d52[31]](_0xc197x27));delete _0xc197x27[_0x2d52[51]];_0xc197x15[_0x2d52[29]](_0xc197x16)[_0x2d52[52]](_0xc197x27)}}exports[_0x2d52[53]]= function(_0xc197x28,_0xc197x15){var _0xc197x1b={raw:true,where:{id:_0xc197x28[_0x2d52[55]][_0x2d52[54]]}},_0xc197x29={};_0xc197x29[_0x2d52[56]]= _[_0x2d52[59]](db[_0x2d52[58]][_0x2d52[57]]);_0xc197x29[_0x2d52[60]]= _[_0x2d52[59]](_0xc197x28[_0x2d52[60]]);_0xc197x29[_0x2d52[61]]= _[_0x2d52[62]](_0xc197x29[_0x2d52[56]],_0xc197x29[_0x2d52[60]]);_0xc197x1b[_0x2d52[63]]= _[_0x2d52[62]](_0xc197x29[_0x2d52[56]],qs[_0x2d52[64]](_0xc197x28[_0x2d52[60]][_0x2d52[64]]));_0xc197x1b[_0x2d52[63]]= (_0xc197x1b[_0x2d52[63]][_0x2d52[65]])?_0xc197x1b[_0x2d52[63]]:_0xc197x29[_0x2d52[56]];_0xc197x1b= _[_0x2d52[67]]({},_0xc197x1b,_0xc197x28[_0x2d52[66]]);return db[_0x2d52[58]][_0x2d52[69]](_0xc197x1b)[_0x2d52[45]](handleEntityNotFound(_0xc197x15,null,_0x2d52[53]))[_0x2d52[45]](respondWithResult(_0xc197x15,null,_0x2d52[53]))[_0x2d52[68]](handleError(_0xc197x15,null,_0x2d52[53]))};exports[_0x2d52[70]]= function(_0xc197x28,_0xc197x15){return db[_0x2d52[58]][_0x2d52[70]](_0xc197x28[_0x2d52[71]],{})[_0x2d52[45]](respondWithResult(_0xc197x15,201,_0x2d52[70]))[_0x2d52[68]](handleError(_0xc197x15,null,_0x2d52[70]))};exports[_0x2d52[46]]= function(_0xc197x28,_0xc197x15){if(_0xc197x28[_0x2d52[71]][_0x2d52[54]]){delete _0xc197x28[_0x2d52[71]][_0x2d52[54]]};return db[_0x2d52[58]][_0x2d52[69]]({where:{id:_0xc197x28[_0x2d52[55]][_0x2d52[54]]}})[_0x2d52[45]](handleEntityNotFound(_0xc197x15,null,_0x2d52[46]))[_0x2d52[45]](saveUpdates(_0xc197x28[_0x2d52[71]],null,_0x2d52[46]))[_0x2d52[45]](respondWithResult(_0xc197x15,null,_0x2d52[46]))[_0x2d52[68]](handleError(_0xc197x15,null,_0x2d52[46]))};exports[_0x2d52[48]]= function(_0xc197x28,_0xc197x15){return db[_0x2d52[58]][_0x2d52[69]]({where:{id:_0xc197x28[_0x2d52[55]][_0x2d52[54]]}})[_0x2d52[45]](handleEntityNotFound(_0xc197x15,null,_0x2d52[48]))[_0x2d52[45]](removeEntity(_0xc197x15,null,_0x2d52[48]))[_0x2d52[68]](handleError(_0xc197x15,null,_0x2d52[48]))}
\ No newline at end of file
+var _0xb172=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xb172[0];var jsonpatch=require(_0xb172[1]);var rp=require(_0xb172[2]);var moment=require(_0xb172[3]);var BPromise=require(_0xb172[4]);var util=require(_0xb172[5]);var path=require(_0xb172[6]);var sox=require(_0xb172[7]);var ejs=require(_0xb172[8]);var fs=require(_0xb172[9]);var _=require(_0xb172[10]);var squel=require(_0xb172[11]);var crypto=require(_0xb172[12]);var jsforce=require(_0xb172[13]);var toCsv=require(_0xb172[14]);var qs=require(_0xb172[15]);var logger=require(_0xb172[17])(_0xb172[16]);var utils=require(_0xb172[18]);var config=require(_0xb172[19]);var db=require(_0xb172[21])[_0xb172[20]];function respondWithStatusCode(_0x6ec8x15,_0x6ec8x16,_0x6ec8x17){_0x6ec8x16= _0x6ec8x16|| 204;return function(_0x6ec8x18){if(_0x6ec8x18){logger[_0xb172[24]](_0xb172[22],_0x6ec8x17,_0x6ec8x16,_0xb172[23]);logger[_0xb172[26]](_0xb172[25],_0x6ec8x17,_0x6ec8x16,_0xb172[23]);return _0x6ec8x15[_0xb172[27]](_0x6ec8x16)};return _0x6ec8x15[_0xb172[29]](304)[_0xb172[28]]()}}function respondWithResult(_0x6ec8x15,_0x6ec8x16,_0x6ec8x17){_0x6ec8x16= _0x6ec8x16|| 200;return function(_0x6ec8x18){if(_0x6ec8x18){logger[_0xb172[24]](_0xb172[22],_0x6ec8x17,_0x6ec8x16,_0xb172[30]);logger[_0xb172[26]](_0xb172[25],_0x6ec8x17,_0x6ec8x16,_0xb172[30],JSON[_0xb172[31]](_0x6ec8x18));return _0x6ec8x15[_0xb172[29]](_0x6ec8x16)[_0xb172[32]](_0x6ec8x18)};return _0x6ec8x15[_0xb172[29]](304)[_0xb172[28]]()}}function respondWithFilteredResult(_0x6ec8x15,_0x6ec8x1b,_0x6ec8x17){return function(_0x6ec8x18){if(_0x6ec8x18){var _0x6ec8x1c=_0x6ec8x18[_0xb172[33]],_0x6ec8x1d=_0x6ec8x1b[_0xb172[34]],_0x6ec8x1e=_0x6ec8x1b[_0xb172[34]]+ _0x6ec8x1b[_0xb172[35]],_0x6ec8x16;if(_0x6ec8x1e>= _0x6ec8x1c){_0x6ec8x1e= _0x6ec8x1c;_0x6ec8x16= 200}else {_0x6ec8x16= 206};_0x6ec8x15[_0xb172[29]](_0x6ec8x16);logger[_0xb172[24]](_0xb172[22],_0x6ec8x17,_0x6ec8x16,_0xb172[36]);logger[_0xb172[26]](_0xb172[25],_0x6ec8x17,_0x6ec8x16,_0xb172[30],JSON[_0xb172[31]](_0x6ec8x18));return _0x6ec8x15[_0xb172[40]](_0xb172[37],_0x6ec8x1d+ _0xb172[38]+ _0x6ec8x1e+ _0xb172[39]+ _0x6ec8x1c)[_0xb172[32]](_0x6ec8x18)};return null}}function patchUpdates(_0x6ec8x20){return function(_0x6ec8x18){try{jsonpatch[_0xb172[41]](_0x6ec8x18,_0x6ec8x20,true)}catch(err){return BPromise[_0xb172[42]](err)};return _0x6ec8x18[_0xb172[43]]()}}function saveUpdates(_0x6ec8x22,_0x6ec8x16,_0x6ec8x17){return function(_0x6ec8x18){if(_0x6ec8x18){return _0x6ec8x18[_0xb172[46]](_0x6ec8x22)[_0xb172[45]](function(_0x6ec8x23){logger[_0xb172[24]](_0xb172[22],_0x6ec8x17,_0x6ec8x16,_0xb172[44]);logger[_0xb172[26]](_0xb172[25],_0x6ec8x17,_0x6ec8x16,_0xb172[44],JSON[_0xb172[31]](_0x6ec8x18));return _0x6ec8x23})};return null}}function removeEntity(_0x6ec8x15,_0x6ec8x16,_0x6ec8x17){return function(_0x6ec8x18){if(_0x6ec8x18){return _0x6ec8x18[_0xb172[48]]()[_0xb172[45]](function(){logger[_0xb172[24]](_0xb172[22],_0x6ec8x17,_0x6ec8x16,_0xb172[47]);logger[_0xb172[26]](_0xb172[25],_0x6ec8x17,_0x6ec8x16,_0xb172[47],JSON[_0xb172[31]](_0x6ec8x18));_0x6ec8x15[_0xb172[29]](204)[_0xb172[28]]()})}}}function handleEntityNotFound(_0x6ec8x15,_0x6ec8x16,_0x6ec8x17){return function(_0x6ec8x18){if(!_0x6ec8x18){logger[_0xb172[50]](_0xb172[22],_0x6ec8x17,404,_0xb172[49]);_0x6ec8x15[_0xb172[29]](404)[_0xb172[28]]();return null};return _0x6ec8x18}}function handleError(_0x6ec8x15,_0x6ec8x16,_0x6ec8x17){_0x6ec8x16= _0x6ec8x16|| 500;return function(_0x6ec8x27){logger[_0xb172[50]](_0xb172[22],_0x6ec8x17,_0x6ec8x16,JSON[_0xb172[31]](_0x6ec8x27));delete _0x6ec8x27[_0xb172[51]];_0x6ec8x15[_0xb172[29]](_0x6ec8x16)[_0xb172[52]](_0x6ec8x27)}}exports[_0xb172[53]]= function(_0x6ec8x28,_0x6ec8x15){var _0x6ec8x1b={raw:true,where:{id:_0x6ec8x28[_0xb172[55]][_0xb172[54]]}},_0x6ec8x29={};_0x6ec8x29[_0xb172[56]]= _[_0xb172[59]](db[_0xb172[58]][_0xb172[57]]);_0x6ec8x29[_0xb172[60]]= _[_0xb172[59]](_0x6ec8x28[_0xb172[60]]);_0x6ec8x29[_0xb172[61]]= _[_0xb172[62]](_0x6ec8x29[_0xb172[56]],_0x6ec8x29[_0xb172[60]]);_0x6ec8x1b[_0xb172[63]]= _[_0xb172[62]](_0x6ec8x29[_0xb172[56]],qs[_0xb172[64]](_0x6ec8x28[_0xb172[60]][_0xb172[64]]));_0x6ec8x1b[_0xb172[63]]= (_0x6ec8x1b[_0xb172[63]][_0xb172[65]])?_0x6ec8x1b[_0xb172[63]]:_0x6ec8x29[_0xb172[56]];_0x6ec8x1b= _[_0xb172[67]]({},_0x6ec8x1b,_0x6ec8x28[_0xb172[66]]);return db[_0xb172[58]][_0xb172[69]](_0x6ec8x1b)[_0xb172[45]](handleEntityNotFound(_0x6ec8x15,null,_0xb172[53]))[_0xb172[45]](respondWithResult(_0x6ec8x15,null,_0xb172[53]))[_0xb172[68]](handleError(_0x6ec8x15,null,_0xb172[53]))};exports[_0xb172[70]]= function(_0x6ec8x28,_0x6ec8x15){return db[_0xb172[58]][_0xb172[70]](_0x6ec8x28[_0xb172[71]],{})[_0xb172[45]](respondWithResult(_0x6ec8x15,201,_0xb172[70]))[_0xb172[68]](handleError(_0x6ec8x15,null,_0xb172[70]))};exports[_0xb172[46]]= function(_0x6ec8x28,_0x6ec8x15){if(_0x6ec8x28[_0xb172[71]][_0xb172[54]]){delete _0x6ec8x28[_0xb172[71]][_0xb172[54]]};return db[_0xb172[58]][_0xb172[69]]({where:{id:_0x6ec8x28[_0xb172[55]][_0xb172[54]]}})[_0xb172[45]](handleEntityNotFound(_0x6ec8x15,null,_0xb172[46]))[_0xb172[45]](saveUpdates(_0x6ec8x28[_0xb172[71]],null,_0xb172[46]))[_0xb172[45]](respondWithResult(_0x6ec8x15,null,_0xb172[46]))[_0xb172[68]](handleError(_0x6ec8x15,null,_0xb172[46]))};exports[_0xb172[48]]= function(_0x6ec8x28,_0x6ec8x15){return db[_0xb172[58]][_0xb172[69]]({where:{id:_0x6ec8x28[_0xb172[55]][_0xb172[54]]}})[_0xb172[45]](handleEntityNotFound(_0x6ec8x15,null,_0xb172[48]))[_0xb172[45]](removeEntity(_0x6ec8x15,null,_0xb172[48]))[_0xb172[68]](handleError(_0x6ec8x15,null,_0xb172[48]))}
\ No newline at end of file
index 3ac3ddd..023c8d1 100644 (file)
@@ -1 +1 @@
-var _0x7d43=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6D\x61\x69\x6C\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x7d43[0];var _=require(_0x7d43[1]);var util=require(_0x7d43[2]);var logger=require(_0x7d43[4])(_0x7d43[3]);var attributes=require(_0x7d43[5]);module[_0x7d43[6]]= function(_0xefacx5,_0xefacx6){return _0xefacx5[_0x7d43[9]](_0x7d43[7],attributes,{tableName:_0x7d43[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xcf44=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6D\x61\x69\x6C\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xcf44[0];var _=require(_0xcf44[1]);var util=require(_0xcf44[2]);var logger=require(_0xcf44[4])(_0xcf44[3]);var attributes=require(_0xcf44[5]);module[_0xcf44[6]]= function(_0xb21cx5,_0xb21cx6){return _0xb21cx5[_0xcf44[9]](_0xcf44[7],attributes,{tableName:_0xcf44[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index aac5405..1670693 100644 (file)
@@ -1 +1 @@
-var _0x764e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x55\x70\x64\x61\x74\x65\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E"];_0x764e[0];var _=require(_0x764e[1]);var util=require(_0x764e[2]);var moment=require(_0x764e[3]);var BPromise=require(_0x764e[4]);var db=require(_0x764e[6])[_0x764e[5]];var utils=require(_0x764e[7]);var logger=require(_0x764e[9])(_0x764e[8]);var jayson=require(_0x764e[10]);var client=jayson[_0x764e[12]][_0x764e[11]]({port:9002});function respondWithRpcPromise(_0x4533xb,_0x4533xc,_0x4533xd){return  new BPromise(function(_0x4533xe,_0x4533xf){return client[_0x764e[25]](_0x4533xb,_0x4533xd)[_0x764e[24]](function(_0x4533x11){logger[_0x764e[17]](_0x764e[13],_0x4533xc,_0x764e[16]);logger[_0x764e[20]](_0x764e[18],_0x4533xc,_0x764e[16],JSON[_0x764e[19]](_0x4533x11));if(_0x4533x11[_0x764e[14]]){if(_0x4533x11[_0x764e[14]][_0x764e[21]]=== 500){logger[_0x764e[14]](_0x764e[13],_0x4533xc,_0x4533x11[_0x764e[14]][_0x764e[22]]);return _0x4533xf(_0x4533x11[_0x764e[14]][_0x764e[22]])};logger[_0x764e[14]](_0x764e[13],_0x4533xc,_0x4533x11[_0x764e[14]][_0x764e[22]]);return _0x4533xe(_0x4533x11[_0x764e[14]][_0x764e[22]])}else {logger[_0x764e[17]](_0x764e[13],_0x4533xc,_0x764e[16]);_0x4533xe(_0x4533x11[_0x764e[23]][_0x764e[22]])}})[_0x764e[15]](function(_0x4533x10){logger[_0x764e[14]](_0x764e[13],_0x4533xc,_0x4533x10);_0x4533xf(_0x4533x10)})})}exports[_0x764e[26]]= function(_0x4533xd){var _0x4533x12=this;return  new Promise(function(_0x4533xe,_0x4533xf){return db[_0x764e[34]][_0x764e[33]](_0x4533xd[_0x764e[27]],{raw:_0x4533xd[_0x764e[28]]?(_0x4533xd[_0x764e[28]][_0x764e[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x4533xd[_0x764e[28]]?_0x4533xd[_0x764e[28]][_0x764e[30]]|| null:null,attributes:_0x4533xd[_0x764e[28]]?_0x4533xd[_0x764e[28]][_0x764e[31]]|| null:null,limit:_0x4533xd[_0x764e[28]]?_0x4533xd[_0x764e[28]][_0x764e[32]]|| null:null})[_0x764e[24]](function(_0x4533x11){logger[_0x764e[17]](_0x764e[26],_0x4533xd);logger[_0x764e[20]](_0x764e[26],_0x4533xd,JSON[_0x764e[19]](_0x4533x11));_0x4533xe(_0x4533x11)})[_0x764e[15]](function(_0x4533x10){logger[_0x764e[14]](_0x764e[26],_0x4533x10[_0x764e[22]],_0x4533xd);_0x4533xf(_0x4533x12[_0x764e[14]](500,_0x4533x10[_0x764e[22]]))})})}
\ No newline at end of file
+var _0x87ef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x55\x70\x64\x61\x74\x65\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E"];_0x87ef[0];var _=require(_0x87ef[1]);var util=require(_0x87ef[2]);var moment=require(_0x87ef[3]);var BPromise=require(_0x87ef[4]);var db=require(_0x87ef[6])[_0x87ef[5]];var utils=require(_0x87ef[7]);var logger=require(_0x87ef[9])(_0x87ef[8]);var jayson=require(_0x87ef[10]);var client=jayson[_0x87ef[12]][_0x87ef[11]]({port:9002});function respondWithRpcPromise(_0xb455xb,_0xb455xc,_0xb455xd){return  new BPromise(function(_0xb455xe,_0xb455xf){return client[_0x87ef[25]](_0xb455xb,_0xb455xd)[_0x87ef[24]](function(_0xb455x11){logger[_0x87ef[17]](_0x87ef[13],_0xb455xc,_0x87ef[16]);logger[_0x87ef[20]](_0x87ef[18],_0xb455xc,_0x87ef[16],JSON[_0x87ef[19]](_0xb455x11));if(_0xb455x11[_0x87ef[14]]){if(_0xb455x11[_0x87ef[14]][_0x87ef[21]]=== 500){logger[_0x87ef[14]](_0x87ef[13],_0xb455xc,_0xb455x11[_0x87ef[14]][_0x87ef[22]]);return _0xb455xf(_0xb455x11[_0x87ef[14]][_0x87ef[22]])};logger[_0x87ef[14]](_0x87ef[13],_0xb455xc,_0xb455x11[_0x87ef[14]][_0x87ef[22]]);return _0xb455xe(_0xb455x11[_0x87ef[14]][_0x87ef[22]])}else {logger[_0x87ef[17]](_0x87ef[13],_0xb455xc,_0x87ef[16]);_0xb455xe(_0xb455x11[_0x87ef[23]][_0x87ef[22]])}})[_0x87ef[15]](function(_0xb455x10){logger[_0x87ef[14]](_0x87ef[13],_0xb455xc,_0xb455x10);_0xb455xf(_0xb455x10)})})}exports[_0x87ef[26]]= function(_0xb455xd){var _0xb455x12=this;return  new Promise(function(_0xb455xe,_0xb455xf){return db[_0x87ef[34]][_0x87ef[33]](_0xb455xd[_0x87ef[27]],{raw:_0xb455xd[_0x87ef[28]]?(_0xb455xd[_0x87ef[28]][_0x87ef[29]]=== undefined)?true:false:true,individualHooks:true,where:_0xb455xd[_0x87ef[28]]?_0xb455xd[_0x87ef[28]][_0x87ef[30]]|| null:null,attributes:_0xb455xd[_0x87ef[28]]?_0xb455xd[_0x87ef[28]][_0x87ef[31]]|| null:null,limit:_0xb455xd[_0x87ef[28]]?_0xb455xd[_0x87ef[28]][_0x87ef[32]]|| null:null})[_0x87ef[24]](function(_0xb455x11){logger[_0x87ef[17]](_0x87ef[26],_0xb455xd);logger[_0x87ef[20]](_0x87ef[26],_0xb455xd,JSON[_0x87ef[19]](_0xb455x11));_0xb455xe(_0xb455x11)})[_0x87ef[15]](function(_0xb455x10){logger[_0x87ef[14]](_0x87ef[26],_0xb455x10[_0x87ef[22]],_0xb455xd);_0xb455xf(_0xb455x12[_0x87ef[14]](500,_0xb455x10[_0x87ef[22]]))})})}
\ No newline at end of file
index 4d41ffa..c4cfd3e 100644 (file)
@@ -1 +1 @@
-var _0x8610=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8610[0];var multer=require(_0x8610[1]);var util=require(_0x8610[2]);var path=require(_0x8610[3]);var express=require(_0x8610[4]);var router=express.Router();var auth=require(_0x8610[5]);var config=require(_0x8610[6]);var controller=require(_0x8610[7]);router[_0x8610[11]](_0x8610[8],auth[_0x8610[9]](),controller[_0x8610[10]]);router[_0x8610[11]](_0x8610[12],auth[_0x8610[9]](),controller[_0x8610[13]]);router[_0x8610[11]](_0x8610[14],auth[_0x8610[9]](),controller[_0x8610[15]]);router[_0x8610[11]](_0x8610[16],auth[_0x8610[9]](),controller[_0x8610[17]]);router[_0x8610[19]](_0x8610[8],auth[_0x8610[9]](),controller[_0x8610[18]]);router[_0x8610[19]](_0x8610[16],auth[_0x8610[9]](),controller[_0x8610[20]]);router[_0x8610[22]](_0x8610[14],auth[_0x8610[9]](),controller[_0x8610[21]]);router[_0x8610[24]](_0x8610[14],auth[_0x8610[9]](),controller[_0x8610[23]]);module[_0x8610[25]]= router
\ No newline at end of file
+var _0x761d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x761d[0];var multer=require(_0x761d[1]);var util=require(_0x761d[2]);var path=require(_0x761d[3]);var express=require(_0x761d[4]);var router=express.Router();var auth=require(_0x761d[5]);var config=require(_0x761d[6]);var controller=require(_0x761d[7]);router[_0x761d[11]](_0x761d[8],auth[_0x761d[9]](),controller[_0x761d[10]]);router[_0x761d[11]](_0x761d[12],auth[_0x761d[9]](),controller[_0x761d[13]]);router[_0x761d[11]](_0x761d[14],auth[_0x761d[9]](),controller[_0x761d[15]]);router[_0x761d[11]](_0x761d[16],auth[_0x761d[9]](),controller[_0x761d[17]]);router[_0x761d[19]](_0x761d[8],auth[_0x761d[9]](),controller[_0x761d[18]]);router[_0x761d[19]](_0x761d[16],auth[_0x761d[9]](),controller[_0x761d[20]]);router[_0x761d[22]](_0x761d[14],auth[_0x761d[9]](),controller[_0x761d[21]]);router[_0x761d[24]](_0x761d[14],auth[_0x761d[9]](),controller[_0x761d[23]]);module[_0x761d[25]]= router
\ No newline at end of file
index 1d34f06..cd0885f 100644 (file)
@@ -1 +1 @@
-var _0xa846=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52","\x4E\x45\x57","\x4F\x50\x45\x4E","\x50\x45\x4E\x44\x49\x4E\x47","\x43\x4C\x4F\x53\x45\x44","\x73\x74\x61\x74\x75\x73","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x72\x72\x69\x76\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x6C\x6F\x73\x65\x64\x41\x74","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x44\x41\x54\x45","\x54\x45\x58\x54","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E"];_0xa846[0];var Sequelize=require(_0xa846[1]);var moment=require(_0xa846[2]);module[_0xa846[3]]= {subject:{type:Sequelize[_0xa846[4]]},from:{type:Sequelize[_0xa846[4]]},account:{type:Sequelize[_0xa846[4]]},attachment:{type:Sequelize[_0xa846[5]],defaultValue:false},mailIn:{type:Sequelize[_0xa846[6]],defaultValue:0},mailOut:{type:Sequelize[_0xa846[6]],defaultValue:0},status:{type:Sequelize.ENUM(_0xa846[7],_0xa846[8],_0xa846[9],_0xa846[10]),defaultValue:_0xa846[7],set:function(_0x8f47x3){this[_0xa846[12]](_0xa846[11],_0x8f47x3);switch(_0x8f47x3){case _0xa846[7]:this[_0xa846[12]](_0xa846[13],moment()[_0xa846[15]](_0xa846[14]));break;case _0xa846[10]:this[_0xa846[12]](_0xa846[16],moment()[_0xa846[15]](_0xa846[14]));break;default:}}},lastEvent:{type:Sequelize.ENUM(_0xa846[17],_0xa846[18],_0xa846[19],_0xa846[20],_0xa846[21])},lastEventAt:{type:Sequelize[_0xa846[22]]},deleted:{type:Sequelize[_0xa846[5]],defaultValue:false},waiting:{type:Sequelize[_0xa846[5]],defaultValue:false},tags:{type:Sequelize[_0xa846[23]],get:function(){var _0x8f47x4;if(this[_0xa846[25]](_0xa846[24])){_0x8f47x4= this[_0xa846[25]](_0xa846[24])[_0xa846[27]](_0xa846[26]);_0x8f47x4[_0xa846[28]]()}else {_0x8f47x4= []};return _0x8f47x4},set:function(_0x8f47x5){this[_0xa846[12]](_0xa846[24],_0x8f47x5&& _0x8f47x5[_0xa846[29]]?_0x8f47x5[_0xa846[30]](_0xa846[26])+ _0xa846[26]:null)}},disposition:{type:Sequelize[_0xa846[4]]},openReason:{type:Sequelize[_0xa846[4]]},ParentId:{type:Sequelize[_0xa846[6]]},arrivedAt:{type:Sequelize[_0xa846[22]]},closedAt:{type:Sequelize[_0xa846[22]]}}
\ No newline at end of file
+var _0x68bf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52","\x4E\x45\x57","\x4F\x50\x45\x4E","\x50\x45\x4E\x44\x49\x4E\x47","\x43\x4C\x4F\x53\x45\x44","\x73\x74\x61\x74\x75\x73","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x72\x72\x69\x76\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x6C\x6F\x73\x65\x64\x41\x74","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x44\x41\x54\x45","\x54\x45\x58\x54","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E"];_0x68bf[0];var Sequelize=require(_0x68bf[1]);var moment=require(_0x68bf[2]);module[_0x68bf[3]]= {subject:{type:Sequelize[_0x68bf[4]]},from:{type:Sequelize[_0x68bf[4]]},account:{type:Sequelize[_0x68bf[4]]},attachment:{type:Sequelize[_0x68bf[5]],defaultValue:false},mailIn:{type:Sequelize[_0x68bf[6]],defaultValue:0},mailOut:{type:Sequelize[_0x68bf[6]],defaultValue:0},status:{type:Sequelize.ENUM(_0x68bf[7],_0x68bf[8],_0x68bf[9],_0x68bf[10]),defaultValue:_0x68bf[7],set:function(_0x46bex3){this[_0x68bf[12]](_0x68bf[11],_0x46bex3);switch(_0x46bex3){case _0x68bf[7]:this[_0x68bf[12]](_0x68bf[13],moment()[_0x68bf[15]](_0x68bf[14]));break;case _0x68bf[10]:this[_0x68bf[12]](_0x68bf[16],moment()[_0x68bf[15]](_0x68bf[14]));break;default:}}},lastEvent:{type:Sequelize.ENUM(_0x68bf[17],_0x68bf[18],_0x68bf[19],_0x68bf[20],_0x68bf[21])},lastEventAt:{type:Sequelize[_0x68bf[22]]},deleted:{type:Sequelize[_0x68bf[5]],defaultValue:false},waiting:{type:Sequelize[_0x68bf[5]],defaultValue:false},tags:{type:Sequelize[_0x68bf[23]],get:function(){var _0x46bex4;if(this[_0x68bf[25]](_0x68bf[24])){_0x46bex4= this[_0x68bf[25]](_0x68bf[24])[_0x68bf[27]](_0x68bf[26]);_0x46bex4[_0x68bf[28]]()}else {_0x46bex4= []};return _0x46bex4},set:function(_0x46bex5){this[_0x68bf[12]](_0x68bf[24],_0x46bex5&& _0x46bex5[_0x68bf[29]]?_0x46bex5[_0x68bf[30]](_0x68bf[26])+ _0x68bf[26]:null)}},disposition:{type:Sequelize[_0x68bf[4]]},openReason:{type:Sequelize[_0x68bf[4]]},ParentId:{type:Sequelize[_0x68bf[6]]},arrivedAt:{type:Sequelize[_0x68bf[22]]},closedAt:{type:Sequelize[_0x68bf[22]]}}
\ No newline at end of file
index 87eefc2..a614250 100644 (file)
@@ -1 +1 @@
-var _0x3fe1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0x3fe1[0];var jsonpatch=require(_0x3fe1[1]);var rp=require(_0x3fe1[2]);var moment=require(_0x3fe1[3]);var BPromise=require(_0x3fe1[4]);var util=require(_0x3fe1[5]);var path=require(_0x3fe1[6]);var sox=require(_0x3fe1[7]);var ejs=require(_0x3fe1[8]);var fs=require(_0x3fe1[9]);var _=require(_0x3fe1[10]);var squel=require(_0x3fe1[11]);var crypto=require(_0x3fe1[12]);var jsforce=require(_0x3fe1[13]);var toCsv=require(_0x3fe1[14]);var qs=require(_0x3fe1[15]);var logger=require(_0x3fe1[17])(_0x3fe1[16]);var utils=require(_0x3fe1[18]);var config=require(_0x3fe1[19]);var db=require(_0x3fe1[21])[_0x3fe1[20]];function respondWithStatusCode(_0x26c6x15,_0x26c6x16,_0x26c6x17){_0x26c6x16= _0x26c6x16|| 204;return function(_0x26c6x18){if(_0x26c6x18){logger[_0x3fe1[24]](_0x3fe1[22],_0x26c6x17,_0x26c6x16,_0x3fe1[23]);logger[_0x3fe1[26]](_0x3fe1[25],_0x26c6x17,_0x26c6x16,_0x3fe1[23]);return _0x26c6x15[_0x3fe1[27]](_0x26c6x16)};return _0x26c6x15[_0x3fe1[29]](304)[_0x3fe1[28]]()}}function respondWithResult(_0x26c6x15,_0x26c6x16,_0x26c6x17){_0x26c6x16= _0x26c6x16|| 200;return function(_0x26c6x18){if(_0x26c6x18){logger[_0x3fe1[24]](_0x3fe1[22],_0x26c6x17,_0x26c6x16,_0x3fe1[30]);logger[_0x3fe1[26]](_0x3fe1[25],_0x26c6x17,_0x26c6x16,_0x3fe1[30],JSON[_0x3fe1[31]](_0x26c6x18));return _0x26c6x15[_0x3fe1[29]](_0x26c6x16)[_0x3fe1[32]](_0x26c6x18)};return _0x26c6x15[_0x3fe1[29]](304)[_0x3fe1[28]]()}}function respondWithFilteredResult(_0x26c6x15,_0x26c6x1b,_0x26c6x17){return function(_0x26c6x18){if(_0x26c6x18){var _0x26c6x1c=_0x26c6x18[_0x3fe1[33]],_0x26c6x1d=_0x26c6x1b[_0x3fe1[34]],_0x26c6x1e=_0x26c6x1b[_0x3fe1[34]]+ _0x26c6x1b[_0x3fe1[35]],_0x26c6x16;if(_0x26c6x1e>= _0x26c6x1c){_0x26c6x1e= _0x26c6x1c;_0x26c6x16= 200}else {_0x26c6x16= 206};_0x26c6x15[_0x3fe1[29]](_0x26c6x16);logger[_0x3fe1[24]](_0x3fe1[22],_0x26c6x17,_0x26c6x16,_0x3fe1[36]);logger[_0x3fe1[26]](_0x3fe1[25],_0x26c6x17,_0x26c6x16,_0x3fe1[30],JSON[_0x3fe1[31]](_0x26c6x18));return _0x26c6x15[_0x3fe1[40]](_0x3fe1[37],_0x26c6x1d+ _0x3fe1[38]+ _0x26c6x1e+ _0x3fe1[39]+ _0x26c6x1c)[_0x3fe1[32]](_0x26c6x18)};return null}}function patchUpdates(_0x26c6x20){return function(_0x26c6x18){try{jsonpatch[_0x3fe1[41]](_0x26c6x18,_0x26c6x20,true)}catch(err){return BPromise[_0x3fe1[42]](err)};return _0x26c6x18[_0x3fe1[43]]()}}function saveUpdates(_0x26c6x22,_0x26c6x16,_0x26c6x17){return function(_0x26c6x18){if(_0x26c6x18){return _0x26c6x18[_0x3fe1[46]](_0x26c6x22)[_0x3fe1[45]](function(_0x26c6x23){logger[_0x3fe1[24]](_0x3fe1[22],_0x26c6x17,_0x26c6x16,_0x3fe1[44]);logger[_0x3fe1[26]](_0x3fe1[25],_0x26c6x17,_0x26c6x16,_0x3fe1[44],JSON[_0x3fe1[31]](_0x26c6x18));return _0x26c6x23})};return null}}function removeEntity(_0x26c6x15,_0x26c6x16,_0x26c6x17){return function(_0x26c6x18){if(_0x26c6x18){return _0x26c6x18[_0x3fe1[48]]()[_0x3fe1[45]](function(){logger[_0x3fe1[24]](_0x3fe1[22],_0x26c6x17,_0x26c6x16,_0x3fe1[47]);logger[_0x3fe1[26]](_0x3fe1[25],_0x26c6x17,_0x26c6x16,_0x3fe1[47],JSON[_0x3fe1[31]](_0x26c6x18));_0x26c6x15[_0x3fe1[29]](204)[_0x3fe1[28]]()})}}}function handleEntityNotFound(_0x26c6x15,_0x26c6x16,_0x26c6x17){return function(_0x26c6x18){if(!_0x26c6x18){logger[_0x3fe1[50]](_0x3fe1[22],_0x26c6x17,404,_0x3fe1[49]);_0x26c6x15[_0x3fe1[29]](404)[_0x3fe1[28]]();return null};return _0x26c6x18}}function handleError(_0x26c6x15,_0x26c6x16,_0x26c6x17){_0x26c6x16= _0x26c6x16|| 500;return function(_0x26c6x27){logger[_0x3fe1[50]](_0x3fe1[22],_0x26c6x17,_0x26c6x16,JSON[_0x3fe1[31]](_0x26c6x27));delete _0x26c6x27[_0x3fe1[51]];_0x26c6x15[_0x3fe1[29]](_0x26c6x16)[_0x3fe1[52]](_0x26c6x27)}}exports[_0x3fe1[53]]= function(_0x26c6x28,_0x26c6x15){var _0x26c6x1b={},_0x26c6x29={};_0x26c6x29[_0x3fe1[54]]= _[_0x3fe1[57]](db[_0x3fe1[56]][_0x3fe1[55]]);_0x26c6x29[_0x3fe1[58]]= _[_0x3fe1[57]](_0x26c6x28[_0x3fe1[58]]);_0x26c6x29[_0x3fe1[59]]= _[_0x3fe1[60]](_0x26c6x29[_0x3fe1[54]],_0x26c6x29[_0x3fe1[58]]);_0x26c6x1b[_0x3fe1[61]]= _[_0x3fe1[60]](_0x26c6x29[_0x3fe1[54]],qs[_0x3fe1[62]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[62]]));_0x26c6x1b[_0x3fe1[61]]= (_0x26c6x1b[_0x3fe1[61]][_0x3fe1[63]])?_0x26c6x1b[_0x3fe1[61]]:_0x26c6x29[_0x3fe1[54]];if(!_0x26c6x28[_0x3fe1[58]][_0x3fe1[65]](_0x3fe1[64])){_0x26c6x1b[_0x3fe1[35]]= qs[_0x3fe1[35]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[35]]);_0x26c6x1b[_0x3fe1[34]]= qs[_0x3fe1[34]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[34]])};_0x26c6x1b[_0x3fe1[66]]= qs[_0x3fe1[67]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[67]]);_0x26c6x1b[_0x3fe1[68]]= qs[_0x3fe1[59]](_[_0x3fe1[69]](_0x26c6x28[_0x3fe1[58]],_0x26c6x29[_0x3fe1[59]]));if(_0x26c6x28[_0x3fe1[58]][_0x3fe1[70]]){_0x26c6x1b[_0x3fe1[68]]= _[_0x3fe1[73]](_0x26c6x1b[_0x3fe1[68]],{$or:_[_0x3fe1[72]](_0x26c6x1b[_0x3fe1[61]],function(_0x26c6x2a){var _0x26c6x2b={};_0x26c6x2b[_0x26c6x2a]= {$like:_0x3fe1[71]+ _0x26c6x28[_0x3fe1[58]][_0x3fe1[70]]+ _0x3fe1[71]};return _0x26c6x2b})})};_0x26c6x1b= _[_0x3fe1[73]]({},_0x26c6x1b,_0x26c6x28[_0x3fe1[74]]);return db[_0x3fe1[56]][_0x3fe1[76]](_0x26c6x1b)[_0x3fe1[45]](respondWithFilteredResult(_0x26c6x15,_0x26c6x1b,_0x3fe1[53]))[_0x3fe1[75]](handleError(_0x26c6x15,null,_0x3fe1[53]))};exports[_0x3fe1[77]]= function(_0x26c6x28,_0x26c6x15){var _0x26c6x1b={raw:false,where:{id:_0x26c6x28[_0x3fe1[79]][_0x3fe1[78]]}},_0x26c6x29={};_0x26c6x29[_0x3fe1[54]]= _[_0x3fe1[57]](db[_0x3fe1[56]][_0x3fe1[55]]);_0x26c6x29[_0x3fe1[58]]= _[_0x3fe1[57]](_0x26c6x28[_0x3fe1[58]]);_0x26c6x29[_0x3fe1[59]]= _[_0x3fe1[60]](_0x26c6x29[_0x3fe1[54]],_0x26c6x29[_0x3fe1[58]]);_0x26c6x1b[_0x3fe1[61]]= _[_0x3fe1[60]](_0x26c6x29[_0x3fe1[54]],qs[_0x3fe1[62]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[62]]));_0x26c6x1b[_0x3fe1[61]]= (_0x26c6x1b[_0x3fe1[61]][_0x3fe1[63]])?_0x26c6x1b[_0x3fe1[61]]:_0x26c6x29[_0x3fe1[54]];_0x26c6x1b= _[_0x3fe1[73]]({},_0x26c6x1b,_0x26c6x28[_0x3fe1[74]]);return db[_0x3fe1[56]][_0x3fe1[80]](_0x26c6x1b)[_0x3fe1[45]](handleEntityNotFound(_0x26c6x15,null,_0x3fe1[77]))[_0x3fe1[45]](respondWithResult(_0x26c6x15,null,_0x3fe1[77]))[_0x3fe1[75]](handleError(_0x26c6x15,null,_0x3fe1[77]))};exports[_0x3fe1[81]]= function(_0x26c6x28,_0x26c6x15){return db[_0x3fe1[56]][_0x3fe1[81]](_0x26c6x28[_0x3fe1[82]],{})[_0x3fe1[45]](respondWithResult(_0x26c6x15,201,_0x3fe1[81]))[_0x3fe1[75]](handleError(_0x26c6x15,null,_0x3fe1[81]))};exports[_0x3fe1[46]]= function(_0x26c6x28,_0x26c6x15){if(_0x26c6x28[_0x3fe1[82]][_0x3fe1[78]]){delete _0x26c6x28[_0x3fe1[82]][_0x3fe1[78]]};return db[_0x3fe1[56]][_0x3fe1[80]]({where:{id:_0x26c6x28[_0x3fe1[79]][_0x3fe1[78]]}})[_0x3fe1[45]](handleEntityNotFound(_0x26c6x15,null,_0x3fe1[46]))[_0x3fe1[45]](saveUpdates(_0x26c6x28[_0x3fe1[82]],null,_0x3fe1[46]))[_0x3fe1[45]](respondWithResult(_0x26c6x15,null,_0x3fe1[46]))[_0x3fe1[75]](handleError(_0x26c6x15,null,_0x3fe1[46]))};exports[_0x3fe1[48]]= function(_0x26c6x28,_0x26c6x15){return db[_0x3fe1[56]][_0x3fe1[80]]({where:{id:_0x26c6x28[_0x3fe1[79]][_0x3fe1[78]]}})[_0x3fe1[45]](handleEntityNotFound(_0x26c6x15,null,_0x3fe1[48]))[_0x3fe1[45]](removeEntity(_0x26c6x15,null,_0x3fe1[48]))[_0x3fe1[75]](handleError(_0x26c6x15,null,_0x3fe1[48]))};exports[_0x3fe1[83]]= function(_0x26c6x28,_0x26c6x15){return db[_0x3fe1[56]][_0x3fe1[83]]()[_0x3fe1[45]](respondWithResult(_0x26c6x15,null,_0x3fe1[83]))[_0x3fe1[75]](handleError(_0x26c6x15,null,_0x3fe1[83]))};exports[_0x3fe1[84]]= function(_0x26c6x28,_0x26c6x15,_0x26c6x2c){return db[_0x3fe1[87]][_0x3fe1[80]]({where:{id:_0x26c6x28[_0x3fe1[79]][_0x3fe1[78]]}})[_0x3fe1[45]](handleEntityNotFound(_0x26c6x15,null,_0x3fe1[84]))[_0x3fe1[45]](function(_0x26c6x18){if(_0x26c6x18){return _0x26c6x18[_0x3fe1[84]](_0x26c6x28[_0x3fe1[82]][_0x3fe1[85]],_[_0x3fe1[86]](_0x26c6x28[_0x3fe1[82]],[_0x3fe1[85],_0x3fe1[78]])|| {})};return null})[_0x3fe1[45]](respondWithResult(_0x26c6x15,null,_0x3fe1[84]))[_0x3fe1[75]](handleError(_0x26c6x15,null,_0x3fe1[84]))};exports[_0x3fe1[88]]= function(_0x26c6x28,_0x26c6x18,_0x26c6x2c){var _0x26c6x1b={};var _0x26c6x29={};var _0x26c6x2d;var _0x26c6x1c;return db[_0x3fe1[56]][_0x3fe1[89]]({where:{id:_0x26c6x28[_0x3fe1[79]][_0x3fe1[78]]}})[_0x3fe1[45]](handleEntityNotFound(_0x26c6x18,null,_0x3fe1[88]))[_0x3fe1[45]](function(_0x26c6x18){if(_0x26c6x18){_0x26c6x2d= _0x26c6x18;_0x26c6x29[_0x3fe1[54]]= _[_0x3fe1[57]](db[_0x3fe1[87]][_0x3fe1[55]]);_0x26c6x29[_0x3fe1[58]]= _[_0x3fe1[57]](_0x26c6x28[_0x3fe1[58]]);_0x26c6x29[_0x3fe1[59]]= _[_0x3fe1[60]](_0x26c6x29[_0x3fe1[54]],_0x26c6x29[_0x3fe1[58]]);_0x26c6x1b[_0x3fe1[61]]= _[_0x3fe1[60]](_0x26c6x29[_0x3fe1[54]],qs[_0x3fe1[62]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[62]]));_0x26c6x1b[_0x3fe1[61]]= (_0x26c6x1b[_0x3fe1[61]][_0x3fe1[63]])?_0x26c6x1b[_0x3fe1[61]]:_0x26c6x29[_0x3fe1[54]];_0x26c6x1b[_0x3fe1[66]]= qs[_0x3fe1[67]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[67]]);_0x26c6x1b[_0x3fe1[68]]= qs[_0x3fe1[59]](_[_0x3fe1[69]](_0x26c6x28[_0x3fe1[58]],_0x26c6x29[_0x3fe1[59]]));if(_0x26c6x28[_0x3fe1[58]][_0x3fe1[70]]){_0x26c6x1b[_0x3fe1[68]]= _[_0x3fe1[73]](_0x26c6x1b[_0x3fe1[68]],{$or:_[_0x3fe1[72]](_0x26c6x1b[_0x3fe1[61]],function(_0x26c6x2a){var _0x26c6x2b={};_0x26c6x2b[_0x26c6x2a]= {$like:_0x3fe1[71]+ _0x26c6x28[_0x3fe1[58]][_0x3fe1[70]]+ _0x3fe1[71]};return _0x26c6x2b})})};_0x26c6x1b= _[_0x3fe1[73]]({},_0x26c6x1b,_0x26c6x28[_0x3fe1[74]]);return _0x26c6x2d[_0x3fe1[88]](_0x26c6x1b)}})[_0x3fe1[45]](function(_0x26c6x2f){if(_0x26c6x2f){_0x26c6x1c= _0x26c6x2f[_0x3fe1[63]];if(!_0x26c6x28[_0x3fe1[58]][_0x3fe1[65]](_0x3fe1[64])){_0x26c6x1b[_0x3fe1[35]]= qs[_0x3fe1[35]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[35]]);_0x26c6x1b[_0x3fe1[34]]= qs[_0x3fe1[34]](_0x26c6x28[_0x3fe1[58]][_0x3fe1[34]])};return _0x26c6x2d[_0x3fe1[88]](_0x26c6x1b)}})[_0x3fe1[45]](function(_0x26c6x2e){return _0x26c6x2e?{count:_0x26c6x1c,rows:_0x26c6x2e}:null})[_0x3fe1[45]](respondWithResult(_0x26c6x18,null,_0x3fe1[88]))[_0x3fe1[75]](handleError(_0x26c6x18,null,_0x3fe1[88]))}
\ No newline at end of file
+var _0xa4df=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xa4df[0];var jsonpatch=require(_0xa4df[1]);var rp=require(_0xa4df[2]);var moment=require(_0xa4df[3]);var BPromise=require(_0xa4df[4]);var util=require(_0xa4df[5]);var path=require(_0xa4df[6]);var sox=require(_0xa4df[7]);var ejs=require(_0xa4df[8]);var fs=require(_0xa4df[9]);var _=require(_0xa4df[10]);var squel=require(_0xa4df[11]);var crypto=require(_0xa4df[12]);var jsforce=require(_0xa4df[13]);var toCsv=require(_0xa4df[14]);var qs=require(_0xa4df[15]);var logger=require(_0xa4df[17])(_0xa4df[16]);var utils=require(_0xa4df[18]);var config=require(_0xa4df[19]);var db=require(_0xa4df[21])[_0xa4df[20]];function respondWithStatusCode(_0x4f56x15,_0x4f56x16,_0x4f56x17){_0x4f56x16= _0x4f56x16|| 204;return function(_0x4f56x18){if(_0x4f56x18){logger[_0xa4df[24]](_0xa4df[22],_0x4f56x17,_0x4f56x16,_0xa4df[23]);logger[_0xa4df[26]](_0xa4df[25],_0x4f56x17,_0x4f56x16,_0xa4df[23]);return _0x4f56x15[_0xa4df[27]](_0x4f56x16)};return _0x4f56x15[_0xa4df[29]](304)[_0xa4df[28]]()}}function respondWithResult(_0x4f56x15,_0x4f56x16,_0x4f56x17){_0x4f56x16= _0x4f56x16|| 200;return function(_0x4f56x18){if(_0x4f56x18){logger[_0xa4df[24]](_0xa4df[22],_0x4f56x17,_0x4f56x16,_0xa4df[30]);logger[_0xa4df[26]](_0xa4df[25],_0x4f56x17,_0x4f56x16,_0xa4df[30],JSON[_0xa4df[31]](_0x4f56x18));return _0x4f56x15[_0xa4df[29]](_0x4f56x16)[_0xa4df[32]](_0x4f56x18)};return _0x4f56x15[_0xa4df[29]](304)[_0xa4df[28]]()}}function respondWithFilteredResult(_0x4f56x15,_0x4f56x1b,_0x4f56x17){return function(_0x4f56x18){if(_0x4f56x18){var _0x4f56x1c=_0x4f56x18[_0xa4df[33]],_0x4f56x1d=_0x4f56x1b[_0xa4df[34]],_0x4f56x1e=_0x4f56x1b[_0xa4df[34]]+ _0x4f56x1b[_0xa4df[35]],_0x4f56x16;if(_0x4f56x1e>= _0x4f56x1c){_0x4f56x1e= _0x4f56x1c;_0x4f56x16= 200}else {_0x4f56x16= 206};_0x4f56x15[_0xa4df[29]](_0x4f56x16);logger[_0xa4df[24]](_0xa4df[22],_0x4f56x17,_0x4f56x16,_0xa4df[36]);logger[_0xa4df[26]](_0xa4df[25],_0x4f56x17,_0x4f56x16,_0xa4df[30],JSON[_0xa4df[31]](_0x4f56x18));return _0x4f56x15[_0xa4df[40]](_0xa4df[37],_0x4f56x1d+ _0xa4df[38]+ _0x4f56x1e+ _0xa4df[39]+ _0x4f56x1c)[_0xa4df[32]](_0x4f56x18)};return null}}function patchUpdates(_0x4f56x20){return function(_0x4f56x18){try{jsonpatch[_0xa4df[41]](_0x4f56x18,_0x4f56x20,true)}catch(err){return BPromise[_0xa4df[42]](err)};return _0x4f56x18[_0xa4df[43]]()}}function saveUpdates(_0x4f56x22,_0x4f56x16,_0x4f56x17){return function(_0x4f56x18){if(_0x4f56x18){return _0x4f56x18[_0xa4df[46]](_0x4f56x22)[_0xa4df[45]](function(_0x4f56x23){logger[_0xa4df[24]](_0xa4df[22],_0x4f56x17,_0x4f56x16,_0xa4df[44]);logger[_0xa4df[26]](_0xa4df[25],_0x4f56x17,_0x4f56x16,_0xa4df[44],JSON[_0xa4df[31]](_0x4f56x18));return _0x4f56x23})};return null}}function removeEntity(_0x4f56x15,_0x4f56x16,_0x4f56x17){return function(_0x4f56x18){if(_0x4f56x18){return _0x4f56x18[_0xa4df[48]]()[_0xa4df[45]](function(){logger[_0xa4df[24]](_0xa4df[22],_0x4f56x17,_0x4f56x16,_0xa4df[47]);logger[_0xa4df[26]](_0xa4df[25],_0x4f56x17,_0x4f56x16,_0xa4df[47],JSON[_0xa4df[31]](_0x4f56x18));_0x4f56x15[_0xa4df[29]](204)[_0xa4df[28]]()})}}}function handleEntityNotFound(_0x4f56x15,_0x4f56x16,_0x4f56x17){return function(_0x4f56x18){if(!_0x4f56x18){logger[_0xa4df[50]](_0xa4df[22],_0x4f56x17,404,_0xa4df[49]);_0x4f56x15[_0xa4df[29]](404)[_0xa4df[28]]();return null};return _0x4f56x18}}function handleError(_0x4f56x15,_0x4f56x16,_0x4f56x17){_0x4f56x16= _0x4f56x16|| 500;return function(_0x4f56x27){logger[_0xa4df[50]](_0xa4df[22],_0x4f56x17,_0x4f56x16,JSON[_0xa4df[31]](_0x4f56x27));delete _0x4f56x27[_0xa4df[51]];_0x4f56x15[_0xa4df[29]](_0x4f56x16)[_0xa4df[52]](_0x4f56x27)}}exports[_0xa4df[53]]= function(_0x4f56x28,_0x4f56x15){var _0x4f56x1b={},_0x4f56x29={};_0x4f56x29[_0xa4df[54]]= _[_0xa4df[57]](db[_0xa4df[56]][_0xa4df[55]]);_0x4f56x29[_0xa4df[58]]= _[_0xa4df[57]](_0x4f56x28[_0xa4df[58]]);_0x4f56x29[_0xa4df[59]]= _[_0xa4df[60]](_0x4f56x29[_0xa4df[54]],_0x4f56x29[_0xa4df[58]]);_0x4f56x1b[_0xa4df[61]]= _[_0xa4df[60]](_0x4f56x29[_0xa4df[54]],qs[_0xa4df[62]](_0x4f56x28[_0xa4df[58]][_0xa4df[62]]));_0x4f56x1b[_0xa4df[61]]= (_0x4f56x1b[_0xa4df[61]][_0xa4df[63]])?_0x4f56x1b[_0xa4df[61]]:_0x4f56x29[_0xa4df[54]];if(!_0x4f56x28[_0xa4df[58]][_0xa4df[65]](_0xa4df[64])){_0x4f56x1b[_0xa4df[35]]= qs[_0xa4df[35]](_0x4f56x28[_0xa4df[58]][_0xa4df[35]]);_0x4f56x1b[_0xa4df[34]]= qs[_0xa4df[34]](_0x4f56x28[_0xa4df[58]][_0xa4df[34]])};_0x4f56x1b[_0xa4df[66]]= qs[_0xa4df[67]](_0x4f56x28[_0xa4df[58]][_0xa4df[67]]);_0x4f56x1b[_0xa4df[68]]= qs[_0xa4df[59]](_[_0xa4df[69]](_0x4f56x28[_0xa4df[58]],_0x4f56x29[_0xa4df[59]]));if(_0x4f56x28[_0xa4df[58]][_0xa4df[70]]){_0x4f56x1b[_0xa4df[68]]= _[_0xa4df[73]](_0x4f56x1b[_0xa4df[68]],{$or:_[_0xa4df[72]](_0x4f56x1b[_0xa4df[61]],function(_0x4f56x2a){var _0x4f56x2b={};_0x4f56x2b[_0x4f56x2a]= {$like:_0xa4df[71]+ _0x4f56x28[_0xa4df[58]][_0xa4df[70]]+ _0xa4df[71]};return _0x4f56x2b})})};_0x4f56x1b= _[_0xa4df[73]]({},_0x4f56x1b,_0x4f56x28[_0xa4df[74]]);return db[_0xa4df[56]][_0xa4df[76]](_0x4f56x1b)[_0xa4df[45]](respondWithFilteredResult(_0x4f56x15,_0x4f56x1b,_0xa4df[53]))[_0xa4df[75]](handleError(_0x4f56x15,null,_0xa4df[53]))};exports[_0xa4df[77]]= function(_0x4f56x28,_0x4f56x15){var _0x4f56x1b={raw:false,where:{id:_0x4f56x28[_0xa4df[79]][_0xa4df[78]]}},_0x4f56x29={};_0x4f56x29[_0xa4df[54]]= _[_0xa4df[57]](db[_0xa4df[56]][_0xa4df[55]]);_0x4f56x29[_0xa4df[58]]= _[_0xa4df[57]](_0x4f56x28[_0xa4df[58]]);_0x4f56x29[_0xa4df[59]]= _[_0xa4df[60]](_0x4f56x29[_0xa4df[54]],_0x4f56x29[_0xa4df[58]]);_0x4f56x1b[_0xa4df[61]]= _[_0xa4df[60]](_0x4f56x29[_0xa4df[54]],qs[_0xa4df[62]](_0x4f56x28[_0xa4df[58]][_0xa4df[62]]));_0x4f56x1b[_0xa4df[61]]= (_0x4f56x1b[_0xa4df[61]][_0xa4df[63]])?_0x4f56x1b[_0xa4df[61]]:_0x4f56x29[_0xa4df[54]];_0x4f56x1b= _[_0xa4df[73]]({},_0x4f56x1b,_0x4f56x28[_0xa4df[74]]);return db[_0xa4df[56]][_0xa4df[80]](_0x4f56x1b)[_0xa4df[45]](handleEntityNotFound(_0x4f56x15,null,_0xa4df[77]))[_0xa4df[45]](respondWithResult(_0x4f56x15,null,_0xa4df[77]))[_0xa4df[75]](handleError(_0x4f56x15,null,_0xa4df[77]))};exports[_0xa4df[81]]= function(_0x4f56x28,_0x4f56x15){return db[_0xa4df[56]][_0xa4df[81]](_0x4f56x28[_0xa4df[82]],{})[_0xa4df[45]](respondWithResult(_0x4f56x15,201,_0xa4df[81]))[_0xa4df[75]](handleError(_0x4f56x15,null,_0xa4df[81]))};exports[_0xa4df[46]]= function(_0x4f56x28,_0x4f56x15){if(_0x4f56x28[_0xa4df[82]][_0xa4df[78]]){delete _0x4f56x28[_0xa4df[82]][_0xa4df[78]]};return db[_0xa4df[56]][_0xa4df[80]]({where:{id:_0x4f56x28[_0xa4df[79]][_0xa4df[78]]}})[_0xa4df[45]](handleEntityNotFound(_0x4f56x15,null,_0xa4df[46]))[_0xa4df[45]](saveUpdates(_0x4f56x28[_0xa4df[82]],null,_0xa4df[46]))[_0xa4df[45]](respondWithResult(_0x4f56x15,null,_0xa4df[46]))[_0xa4df[75]](handleError(_0x4f56x15,null,_0xa4df[46]))};exports[_0xa4df[48]]= function(_0x4f56x28,_0x4f56x15){return db[_0xa4df[56]][_0xa4df[80]]({where:{id:_0x4f56x28[_0xa4df[79]][_0xa4df[78]]}})[_0xa4df[45]](handleEntityNotFound(_0x4f56x15,null,_0xa4df[48]))[_0xa4df[45]](removeEntity(_0x4f56x15,null,_0xa4df[48]))[_0xa4df[75]](handleError(_0x4f56x15,null,_0xa4df[48]))};exports[_0xa4df[83]]= function(_0x4f56x28,_0x4f56x15){return db[_0xa4df[56]][_0xa4df[83]]()[_0xa4df[45]](respondWithResult(_0x4f56x15,null,_0xa4df[83]))[_0xa4df[75]](handleError(_0x4f56x15,null,_0xa4df[83]))};exports[_0xa4df[84]]= function(_0x4f56x28,_0x4f56x15,_0x4f56x2c){return db[_0xa4df[87]][_0xa4df[80]]({where:{id:_0x4f56x28[_0xa4df[79]][_0xa4df[78]]}})[_0xa4df[45]](handleEntityNotFound(_0x4f56x15,null,_0xa4df[84]))[_0xa4df[45]](function(_0x4f56x18){if(_0x4f56x18){return _0x4f56x18[_0xa4df[84]](_0x4f56x28[_0xa4df[82]][_0xa4df[85]],_[_0xa4df[86]](_0x4f56x28[_0xa4df[82]],[_0xa4df[85],_0xa4df[78]])|| {})};return null})[_0xa4df[45]](respondWithResult(_0x4f56x15,null,_0xa4df[84]))[_0xa4df[75]](handleError(_0x4f56x15,null,_0xa4df[84]))};exports[_0xa4df[88]]= function(_0x4f56x28,_0x4f56x18,_0x4f56x2c){var _0x4f56x1b={};var _0x4f56x29={};var _0x4f56x2d;var _0x4f56x1c;return db[_0xa4df[56]][_0xa4df[89]]({where:{id:_0x4f56x28[_0xa4df[79]][_0xa4df[78]]}})[_0xa4df[45]](handleEntityNotFound(_0x4f56x18,null,_0xa4df[88]))[_0xa4df[45]](function(_0x4f56x18){if(_0x4f56x18){_0x4f56x2d= _0x4f56x18;_0x4f56x29[_0xa4df[54]]= _[_0xa4df[57]](db[_0xa4df[87]][_0xa4df[55]]);_0x4f56x29[_0xa4df[58]]= _[_0xa4df[57]](_0x4f56x28[_0xa4df[58]]);_0x4f56x29[_0xa4df[59]]= _[_0xa4df[60]](_0x4f56x29[_0xa4df[54]],_0x4f56x29[_0xa4df[58]]);_0x4f56x1b[_0xa4df[61]]= _[_0xa4df[60]](_0x4f56x29[_0xa4df[54]],qs[_0xa4df[62]](_0x4f56x28[_0xa4df[58]][_0xa4df[62]]));_0x4f56x1b[_0xa4df[61]]= (_0x4f56x1b[_0xa4df[61]][_0xa4df[63]])?_0x4f56x1b[_0xa4df[61]]:_0x4f56x29[_0xa4df[54]];_0x4f56x1b[_0xa4df[66]]= qs[_0xa4df[67]](_0x4f56x28[_0xa4df[58]][_0xa4df[67]]);_0x4f56x1b[_0xa4df[68]]= qs[_0xa4df[59]](_[_0xa4df[69]](_0x4f56x28[_0xa4df[58]],_0x4f56x29[_0xa4df[59]]));if(_0x4f56x28[_0xa4df[58]][_0xa4df[70]]){_0x4f56x1b[_0xa4df[68]]= _[_0xa4df[73]](_0x4f56x1b[_0xa4df[68]],{$or:_[_0xa4df[72]](_0x4f56x1b[_0xa4df[61]],function(_0x4f56x2a){var _0x4f56x2b={};_0x4f56x2b[_0x4f56x2a]= {$like:_0xa4df[71]+ _0x4f56x28[_0xa4df[58]][_0xa4df[70]]+ _0xa4df[71]};return _0x4f56x2b})})};_0x4f56x1b= _[_0xa4df[73]]({},_0x4f56x1b,_0x4f56x28[_0xa4df[74]]);return _0x4f56x2d[_0xa4df[88]](_0x4f56x1b)}})[_0xa4df[45]](function(_0x4f56x2f){if(_0x4f56x2f){_0x4f56x1c= _0x4f56x2f[_0xa4df[63]];if(!_0x4f56x28[_0xa4df[58]][_0xa4df[65]](_0xa4df[64])){_0x4f56x1b[_0xa4df[35]]= qs[_0xa4df[35]](_0x4f56x28[_0xa4df[58]][_0xa4df[35]]);_0x4f56x1b[_0xa4df[34]]= qs[_0xa4df[34]](_0x4f56x28[_0xa4df[58]][_0xa4df[34]])};return _0x4f56x2d[_0xa4df[88]](_0x4f56x1b)}})[_0xa4df[45]](function(_0x4f56x2e){return _0x4f56x2e?{count:_0x4f56x1c,rows:_0x4f56x2e}:null})[_0xa4df[45]](respondWithResult(_0x4f56x18,null,_0xa4df[88]))[_0xa4df[75]](handleError(_0x4f56x18,null,_0xa4df[88]))}
\ No newline at end of file
index 0a8bcec..03fbee4 100644 (file)
@@ -1 +1 @@
-var _0x4463=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6D\x61\x69\x6C\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x4463[0];var _=require(_0x4463[1]);var util=require(_0x4463[2]);var logger=require(_0x4463[4])(_0x4463[3]);var attributes=require(_0x4463[5]);module[_0x4463[6]]= function(_0x2db9x5,_0x2db9x6){return _0x2db9x5[_0x4463[9]](_0x4463[7],attributes,{tableName:_0x4463[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x9f4b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6D\x61\x69\x6C\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x9f4b[0];var _=require(_0x9f4b[1]);var util=require(_0x9f4b[2]);var logger=require(_0x9f4b[4])(_0x9f4b[3]);var attributes=require(_0x9f4b[5]);module[_0x9f4b[6]]= function(_0x5118x5,_0x5118x6){return _0x5118x5[_0x9f4b[9]](_0x9f4b[7],attributes,{tableName:_0x9f4b[8],paranoid:true,indexes:[],timestamps:true})}
\ No newline at end of file
index cbce9a9..40669bb 100644 (file)
@@ -1 +1 @@
-var _0xaa73=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xaa73[0];var _=require(_0xaa73[1]);var util=require(_0xaa73[2]);var moment=require(_0xaa73[3]);var BPromise=require(_0xaa73[4]);var db=require(_0xaa73[6])[_0xaa73[5]];var utils=require(_0xaa73[7]);var logger=require(_0xaa73[9])(_0xaa73[8]);var jayson=require(_0xaa73[10]);var client=jayson[_0xaa73[12]][_0xaa73[11]]({port:9002});function respondWithRpcPromise(_0xa913xb,_0xa913xc,_0xa913xd){return  new BPromise(function(_0xa913xe,_0xa913xf){return client[_0xaa73[25]](_0xa913xb,_0xa913xd)[_0xaa73[24]](function(_0xa913x11){logger[_0xaa73[17]](_0xaa73[13],_0xa913xc,_0xaa73[16]);logger[_0xaa73[20]](_0xaa73[18],_0xa913xc,_0xaa73[16],JSON[_0xaa73[19]](_0xa913x11));if(_0xa913x11[_0xaa73[14]]){if(_0xa913x11[_0xaa73[14]][_0xaa73[21]]=== 500){logger[_0xaa73[14]](_0xaa73[13],_0xa913xc,_0xa913x11[_0xaa73[14]][_0xaa73[22]]);return _0xa913xf(_0xa913x11[_0xaa73[14]][_0xaa73[22]])};logger[_0xaa73[14]](_0xaa73[13],_0xa913xc,_0xa913x11[_0xaa73[14]][_0xaa73[22]]);return _0xa913xe(_0xa913x11[_0xaa73[14]][_0xaa73[22]])}else {logger[_0xaa73[17]](_0xaa73[13],_0xa913xc,_0xaa73[16]);_0xa913xe(_0xa913x11[_0xaa73[23]][_0xaa73[22]])}})[_0xaa73[15]](function(_0xa913x10){logger[_0xaa73[14]](_0xaa73[13],_0xa913xc,_0xa913x10);_0xa913xf(_0xa913x10)})})}
\ No newline at end of file
+var _0xc7fb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xc7fb[0];var _=require(_0xc7fb[1]);var util=require(_0xc7fb[2]);var moment=require(_0xc7fb[3]);var BPromise=require(_0xc7fb[4]);var db=require(_0xc7fb[6])[_0xc7fb[5]];var utils=require(_0xc7fb[7]);var logger=require(_0xc7fb[9])(_0xc7fb[8]);var jayson=require(_0xc7fb[10]);var client=jayson[_0xc7fb[12]][_0xc7fb[11]]({port:9002});function respondWithRpcPromise(_0xc51dxb,_0xc51dxc,_0xc51dxd){return  new BPromise(function(_0xc51dxe,_0xc51dxf){return client[_0xc7fb[25]](_0xc51dxb,_0xc51dxd)[_0xc7fb[24]](function(_0xc51dx11){logger[_0xc7fb[17]](_0xc7fb[13],_0xc51dxc,_0xc7fb[16]);logger[_0xc7fb[20]](_0xc7fb[18],_0xc51dxc,_0xc7fb[16],JSON[_0xc7fb[19]](_0xc51dx11));if(_0xc51dx11[_0xc7fb[14]]){if(_0xc51dx11[_0xc7fb[14]][_0xc7fb[21]]=== 500){logger[_0xc7fb[14]](_0xc7fb[13],_0xc51dxc,_0xc51dx11[_0xc7fb[14]][_0xc7fb[22]]);return _0xc51dxf(_0xc51dx11[_0xc7fb[14]][_0xc7fb[22]])};logger[_0xc7fb[14]](_0xc7fb[13],_0xc51dxc,_0xc51dx11[_0xc7fb[14]][_0xc7fb[22]]);return _0xc51dxe(_0xc51dx11[_0xc7fb[14]][_0xc7fb[22]])}else {logger[_0xc7fb[17]](_0xc7fb[13],_0xc51dxc,_0xc7fb[16]);_0xc51dxe(_0xc51dx11[_0xc7fb[23]][_0xc7fb[22]])}})[_0xc7fb[15]](function(_0xc51dx10){logger[_0xc7fb[14]](_0xc7fb[13],_0xc51dxc,_0xc51dx10);_0xc51dxf(_0xc51dx10)})})}
\ No newline at end of file
index 87ec017..52ee17a 100644 (file)
@@ -1 +1 @@
-var _0x1f72=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1f72[0];var multer=require(_0x1f72[1]);var util=require(_0x1f72[2]);var path=require(_0x1f72[3]);var express=require(_0x1f72[4]);var router=express.Router();var auth=require(_0x1f72[5]);var config=require(_0x1f72[6]);var controller=require(_0x1f72[7]);router[_0x1f72[11]](_0x1f72[8],auth[_0x1f72[9]](),controller[_0x1f72[10]]);router[_0x1f72[11]](_0x1f72[12],auth[_0x1f72[9]](),controller[_0x1f72[13]]);router[_0x1f72[11]](_0x1f72[14],auth[_0x1f72[9]](),controller[_0x1f72[15]]);router[_0x1f72[17]](_0x1f72[8],auth[_0x1f72[9]](),controller[_0x1f72[16]]);router[_0x1f72[19]](_0x1f72[14],auth[_0x1f72[9]](),controller[_0x1f72[18]]);router[_0x1f72[21]](_0x1f72[14],auth[_0x1f72[9]](),controller[_0x1f72[20]]);module[_0x1f72[22]]= router
\ No newline at end of file
+var _0x24b6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x24b6[0];var multer=require(_0x24b6[1]);var util=require(_0x24b6[2]);var path=require(_0x24b6[3]);var express=require(_0x24b6[4]);var router=express.Router();var auth=require(_0x24b6[5]);var config=require(_0x24b6[6]);var controller=require(_0x24b6[7]);router[_0x24b6[11]](_0x24b6[8],auth[_0x24b6[9]](),controller[_0x24b6[10]]);router[_0x24b6[11]](_0x24b6[12],auth[_0x24b6[9]](),controller[_0x24b6[13]]);router[_0x24b6[11]](_0x24b6[14],auth[_0x24b6[9]](),controller[_0x24b6[15]]);router[_0x24b6[17]](_0x24b6[8],auth[_0x24b6[9]](),controller[_0x24b6[16]]);router[_0x24b6[19]](_0x24b6[14],auth[_0x24b6[9]](),controller[_0x24b6[18]]);router[_0x24b6[21]](_0x24b6[14],auth[_0x24b6[9]](),controller[_0x24b6[20]]);module[_0x24b6[22]]= router
\ No newline at end of file
index 51197b2..93c2bf4 100644 (file)
@@ -1 +1 @@
-var _0x352f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54","\x74\x6F","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x63\x63","\x62\x63\x63","\x49\x4E\x54\x45\x47\x45\x52","\x6C\x6F\x6E\x67","\x74\x65\x78\x74","\x68\x74\x6D\x6C","\x42\x4F\x4F\x4C\x45\x41\x4E","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45"];_0x352f[0];var Sequelize=require(_0x352f[1]);var _=require(_0x352f[2]);module[_0x352f[3]]= {messageId:{type:Sequelize[_0x352f[4]]},inReplyTo:{type:Sequelize[_0x352f[4]]},subject:{type:Sequelize[_0x352f[4]]},from:{type:Sequelize[_0x352f[4]]},to:{type:Sequelize[_0x352f[5]],get:function(){return this[_0x352f[7]](_0x352f[6])?this[_0x352f[7]](_0x352f[6])[_0x352f[9]](_0x352f[8]):[]},set:function(_0x608dx3){this[_0x352f[11]](_0x352f[6],_0x608dx3[_0x352f[10]](_0x352f[8]))}},cc:{type:Sequelize[_0x352f[5]],get:function(){return this[_0x352f[7]](_0x352f[12])?this[_0x352f[7]](_0x352f[12])[_0x352f[9]](_0x352f[8]):[]},set:function(_0x608dx3){this[_0x352f[11]](_0x352f[12],_0x608dx3[_0x352f[10]](_0x352f[8]))}},bcc:{type:Sequelize[_0x352f[5]],get:function(){return this[_0x352f[7]](_0x352f[13])?this[_0x352f[7]](_0x352f[13])[_0x352f[9]](_0x352f[8]):[]},set:function(_0x608dx3){this[_0x352f[11]](_0x352f[13],_0x608dx3[_0x352f[10]](_0x352f[8]))}},fromId:{type:Sequelize[_0x352f[14]]},attachment:{type:Sequelize[_0x352f[5]]},text:{type:Sequelize.BLOB(_0x352f[15]),get:function(){if(this[_0x352f[7]](_0x352f[16])){return _.toString(this[_0x352f[7]](_0x352f[16]))}}},html:{type:Sequelize.BLOB(_0x352f[15]),get:function(){if(this[_0x352f[7]](_0x352f[17])){if(this[_0x352f[7]](_0x352f[17])){return _.toString(this[_0x352f[7]](_0x352f[17]))}}}},reason:{type:Sequelize[_0x352f[5]]},auto:{type:Sequelize[_0x352f[18]],defaultValue:false},status:{type:Sequelize.ENUM(_0x352f[19],_0x352f[20],_0x352f[21],_0x352f[22],_0x352f[23]),defaultValue:_0x352f[19]},retry:{type:Sequelize[_0x352f[14]],defaultValue:0},voiceSource:{type:Sequelize[_0x352f[4]]},userName:{type:Sequelize[_0x352f[4]]},userFullname:{type:Sequelize[_0x352f[4]]},accountId:{type:Sequelize[_0x352f[14]]},accountName:{type:Sequelize[_0x352f[4]]}}
\ No newline at end of file
+var _0xf977=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54","\x74\x6F","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x63\x63","\x62\x63\x63","\x49\x4E\x54\x45\x47\x45\x52","\x6C\x6F\x6E\x67","\x74\x65\x78\x74","\x68\x74\x6D\x6C","\x42\x4F\x4F\x4C\x45\x41\x4E","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45"];_0xf977[0];var Sequelize=require(_0xf977[1]);var _=require(_0xf977[2]);module[_0xf977[3]]= {messageId:{type:Sequelize[_0xf977[4]]},inReplyTo:{type:Sequelize[_0xf977[4]]},subject:{type:Sequelize[_0xf977[4]]},from:{type:Sequelize[_0xf977[4]]},to:{type:Sequelize[_0xf977[5]],get:function(){return this[_0xf977[7]](_0xf977[6])?this[_0xf977[7]](_0xf977[6])[_0xf977[9]](_0xf977[8]):[]},set:function(_0xf523x3){this[_0xf977[11]](_0xf977[6],_0xf523x3[_0xf977[10]](_0xf977[8]))}},cc:{type:Sequelize[_0xf977[5]],get:function(){return this[_0xf977[7]](_0xf977[12])?this[_0xf977[7]](_0xf977[12])[_0xf977[9]](_0xf977[8]):[]},set:function(_0xf523x3){this[_0xf977[11]](_0xf977[12],_0xf523x3[_0xf977[10]](_0xf977[8]))}},bcc:{type:Sequelize[_0xf977[5]],get:function(){return this[_0xf977[7]](_0xf977[13])?this[_0xf977[7]](_0xf977[13])[_0xf977[9]](_0xf977[8]):[]},set:function(_0xf523x3){this[_0xf977[11]](_0xf977[13],_0xf523x3[_0xf977[10]](_0xf977[8]))}},fromId:{type:Sequelize[_0xf977[14]]},attachment:{type:Sequelize[_0xf977[5]]},text:{type:Sequelize.BLOB(_0xf977[15]),get:function(){if(this[_0xf977[7]](_0xf977[16])){return _.toString(this[_0xf977[7]](_0xf977[16]))}}},html:{type:Sequelize.BLOB(_0xf977[15]),get:function(){if(this[_0xf977[7]](_0xf977[17])){if(this[_0xf977[7]](_0xf977[17])){return _.toString(this[_0xf977[7]](_0xf977[17]))}}}},reason:{type:Sequelize[_0xf977[5]]},auto:{type:Sequelize[_0xf977[18]],defaultValue:false},status:{type:Sequelize.ENUM(_0xf977[19],_0xf977[20],_0xf977[21],_0xf977[22],_0xf977[23]),defaultValue:_0xf977[19]},retry:{type:Sequelize[_0xf977[14]],defaultValue:0},voiceSource:{type:Sequelize[_0xf977[4]]},userName:{type:Sequelize[_0xf977[4]]},userFullname:{type:Sequelize[_0xf977[4]]},accountId:{type:Sequelize[_0xf977[14]]},accountName:{type:Sequelize[_0xf977[4]]}}
\ No newline at end of file
index 7c38bff..7f03969 100644 (file)
@@ -1 +1 @@
-var _0x21d4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x21d4[0];var jsonpatch=require(_0x21d4[1]);var rp=require(_0x21d4[2]);var moment=require(_0x21d4[3]);var BPromise=require(_0x21d4[4]);var util=require(_0x21d4[5]);var path=require(_0x21d4[6]);var sox=require(_0x21d4[7]);var ejs=require(_0x21d4[8]);var fs=require(_0x21d4[9]);var _=require(_0x21d4[10]);var squel=require(_0x21d4[11]);var crypto=require(_0x21d4[12]);var jsforce=require(_0x21d4[13]);var toCsv=require(_0x21d4[14]);var qs=require(_0x21d4[15]);var logger=require(_0x21d4[17])(_0x21d4[16]);var utils=require(_0x21d4[18]);var config=require(_0x21d4[19]);var db=require(_0x21d4[21])[_0x21d4[20]];function respondWithStatusCode(_0x3eaex15,_0x3eaex16,_0x3eaex17){_0x3eaex16= _0x3eaex16|| 204;return function(_0x3eaex18){if(_0x3eaex18){logger[_0x21d4[24]](_0x21d4[22],_0x3eaex17,_0x3eaex16,_0x21d4[23]);logger[_0x21d4[26]](_0x21d4[25],_0x3eaex17,_0x3eaex16,_0x21d4[23]);return _0x3eaex15[_0x21d4[27]](_0x3eaex16)};return _0x3eaex15[_0x21d4[29]](304)[_0x21d4[28]]()}}function respondWithResult(_0x3eaex15,_0x3eaex16,_0x3eaex17){_0x3eaex16= _0x3eaex16|| 200;return function(_0x3eaex18){if(_0x3eaex18){logger[_0x21d4[24]](_0x21d4[22],_0x3eaex17,_0x3eaex16,_0x21d4[30]);logger[_0x21d4[26]](_0x21d4[25],_0x3eaex17,_0x3eaex16,_0x21d4[30],JSON[_0x21d4[31]](_0x3eaex18));return _0x3eaex15[_0x21d4[29]](_0x3eaex16)[_0x21d4[32]](_0x3eaex18)};return _0x3eaex15[_0x21d4[29]](304)[_0x21d4[28]]()}}function respondWithFilteredResult(_0x3eaex15,_0x3eaex1b,_0x3eaex17){return function(_0x3eaex18){if(_0x3eaex18){var _0x3eaex1c=_0x3eaex18[_0x21d4[33]],_0x3eaex1d=_0x3eaex1b[_0x21d4[34]],_0x3eaex1e=_0x3eaex1b[_0x21d4[34]]+ _0x3eaex1b[_0x21d4[35]],_0x3eaex16;if(_0x3eaex1e>= _0x3eaex1c){_0x3eaex1e= _0x3eaex1c;_0x3eaex16= 200}else {_0x3eaex16= 206};_0x3eaex15[_0x21d4[29]](_0x3eaex16);logger[_0x21d4[24]](_0x21d4[22],_0x3eaex17,_0x3eaex16,_0x21d4[36]);logger[_0x21d4[26]](_0x21d4[25],_0x3eaex17,_0x3eaex16,_0x21d4[30],JSON[_0x21d4[31]](_0x3eaex18));return _0x3eaex15[_0x21d4[40]](_0x21d4[37],_0x3eaex1d+ _0x21d4[38]+ _0x3eaex1e+ _0x21d4[39]+ _0x3eaex1c)[_0x21d4[32]](_0x3eaex18)};return null}}function patchUpdates(_0x3eaex20){return function(_0x3eaex18){try{jsonpatch[_0x21d4[41]](_0x3eaex18,_0x3eaex20,true)}catch(err){return BPromise[_0x21d4[42]](err)};return _0x3eaex18[_0x21d4[43]]()}}function saveUpdates(_0x3eaex22,_0x3eaex16,_0x3eaex17){return function(_0x3eaex18){if(_0x3eaex18){return _0x3eaex18[_0x21d4[46]](_0x3eaex22)[_0x21d4[45]](function(_0x3eaex23){logger[_0x21d4[24]](_0x21d4[22],_0x3eaex17,_0x3eaex16,_0x21d4[44]);logger[_0x21d4[26]](_0x21d4[25],_0x3eaex17,_0x3eaex16,_0x21d4[44],JSON[_0x21d4[31]](_0x3eaex18));return _0x3eaex23})};return null}}function removeEntity(_0x3eaex15,_0x3eaex16,_0x3eaex17){return function(_0x3eaex18){if(_0x3eaex18){return _0x3eaex18[_0x21d4[48]]()[_0x21d4[45]](function(){logger[_0x21d4[24]](_0x21d4[22],_0x3eaex17,_0x3eaex16,_0x21d4[47]);logger[_0x21d4[26]](_0x21d4[25],_0x3eaex17,_0x3eaex16,_0x21d4[47],JSON[_0x21d4[31]](_0x3eaex18));_0x3eaex15[_0x21d4[29]](204)[_0x21d4[28]]()})}}}function handleEntityNotFound(_0x3eaex15,_0x3eaex16,_0x3eaex17){return function(_0x3eaex18){if(!_0x3eaex18){logger[_0x21d4[50]](_0x21d4[22],_0x3eaex17,404,_0x21d4[49]);_0x3eaex15[_0x21d4[29]](404)[_0x21d4[28]]();return null};return _0x3eaex18}}function handleError(_0x3eaex15,_0x3eaex16,_0x3eaex17){_0x3eaex16= _0x3eaex16|| 500;return function(_0x3eaex27){logger[_0x21d4[50]](_0x21d4[22],_0x3eaex17,_0x3eaex16,JSON[_0x21d4[31]](_0x3eaex27));delete _0x3eaex27[_0x21d4[51]];_0x3eaex15[_0x21d4[29]](_0x3eaex16)[_0x21d4[52]](_0x3eaex27)}}exports[_0x21d4[53]]= function(_0x3eaex28,_0x3eaex15){var _0x3eaex1b={raw:true},_0x3eaex29={};_0x3eaex29[_0x21d4[54]]= _[_0x21d4[57]](db[_0x21d4[56]][_0x21d4[55]]);_0x3eaex29[_0x21d4[58]]= _[_0x21d4[57]](_0x3eaex28[_0x21d4[58]]);_0x3eaex29[_0x21d4[59]]= _[_0x21d4[60]](_0x3eaex29[_0x21d4[54]],_0x3eaex29[_0x21d4[58]]);_0x3eaex1b[_0x21d4[61]]= _[_0x21d4[60]](_0x3eaex29[_0x21d4[54]],qs[_0x21d4[62]](_0x3eaex28[_0x21d4[58]][_0x21d4[62]]));_0x3eaex1b[_0x21d4[61]]= (_0x3eaex1b[_0x21d4[61]][_0x21d4[63]])?_0x3eaex1b[_0x21d4[61]]:_0x3eaex29[_0x21d4[54]];if(!_0x3eaex28[_0x21d4[58]][_0x21d4[65]](_0x21d4[64])){_0x3eaex1b[_0x21d4[35]]= qs[_0x21d4[35]](_0x3eaex28[_0x21d4[58]][_0x21d4[35]]);_0x3eaex1b[_0x21d4[34]]= qs[_0x21d4[34]](_0x3eaex28[_0x21d4[58]][_0x21d4[34]])};_0x3eaex1b[_0x21d4[66]]= qs[_0x21d4[67]](_0x3eaex28[_0x21d4[58]][_0x21d4[67]]);_0x3eaex1b[_0x21d4[68]]= qs[_0x21d4[59]](_[_0x21d4[69]](_0x3eaex28[_0x21d4[58]],_0x3eaex29[_0x21d4[59]]));if(_0x3eaex28[_0x21d4[58]][_0x21d4[70]]){_0x3eaex1b[_0x21d4[68]]= _[_0x21d4[73]](_0x3eaex1b[_0x21d4[68]],{$or:_[_0x21d4[72]](_0x3eaex1b[_0x21d4[61]],function(_0x3eaex2a){var _0x3eaex2b={};_0x3eaex2b[_0x3eaex2a]= {$like:_0x21d4[71]+ _0x3eaex28[_0x21d4[58]][_0x21d4[70]]+ _0x21d4[71]};return _0x3eaex2b})})};_0x3eaex1b= _[_0x21d4[73]]({},_0x3eaex1b,_0x3eaex28[_0x21d4[74]]);return db[_0x21d4[56]][_0x21d4[76]](_0x3eaex1b)[_0x21d4[45]](respondWithFilteredResult(_0x3eaex15,_0x3eaex1b,_0x21d4[53]))[_0x21d4[75]](handleError(_0x3eaex15,null,_0x21d4[53]))};exports[_0x21d4[77]]= function(_0x3eaex28,_0x3eaex15){var _0x3eaex1b={raw:true,where:{id:_0x3eaex28[_0x21d4[79]][_0x21d4[78]]}},_0x3eaex29={};_0x3eaex29[_0x21d4[54]]= _[_0x21d4[57]](db[_0x21d4[56]][_0x21d4[55]]);_0x3eaex29[_0x21d4[58]]= _[_0x21d4[57]](_0x3eaex28[_0x21d4[58]]);_0x3eaex29[_0x21d4[59]]= _[_0x21d4[60]](_0x3eaex29[_0x21d4[54]],_0x3eaex29[_0x21d4[58]]);_0x3eaex1b[_0x21d4[61]]= _[_0x21d4[60]](_0x3eaex29[_0x21d4[54]],qs[_0x21d4[62]](_0x3eaex28[_0x21d4[58]][_0x21d4[62]]));_0x3eaex1b[_0x21d4[61]]= (_0x3eaex1b[_0x21d4[61]][_0x21d4[63]])?_0x3eaex1b[_0x21d4[61]]:_0x3eaex29[_0x21d4[54]];_0x3eaex1b= _[_0x21d4[73]]({},_0x3eaex1b,_0x3eaex28[_0x21d4[74]]);return db[_0x21d4[56]][_0x21d4[80]](_0x3eaex1b)[_0x21d4[45]](handleEntityNotFound(_0x3eaex15,null,_0x21d4[77]))[_0x21d4[45]](respondWithResult(_0x3eaex15,null,_0x21d4[77]))[_0x21d4[75]](handleError(_0x3eaex15,null,_0x21d4[77]))};exports[_0x21d4[81]]= function(_0x3eaex28,_0x3eaex15){return db[_0x21d4[56]][_0x21d4[81]](_0x3eaex28[_0x21d4[82]],{})[_0x21d4[45]](respondWithResult(_0x3eaex15,201,_0x21d4[81]))[_0x21d4[75]](handleError(_0x3eaex15,null,_0x21d4[81]))};exports[_0x21d4[46]]= function(_0x3eaex28,_0x3eaex15){if(_0x3eaex28[_0x21d4[82]][_0x21d4[78]]){delete _0x3eaex28[_0x21d4[82]][_0x21d4[78]]};return db[_0x21d4[56]][_0x21d4[80]]({where:{id:_0x3eaex28[_0x21d4[79]][_0x21d4[78]]}})[_0x21d4[45]](handleEntityNotFound(_0x3eaex15,null,_0x21d4[46]))[_0x21d4[45]](saveUpdates(_0x3eaex28[_0x21d4[82]],null,_0x21d4[46]))[_0x21d4[45]](respondWithResult(_0x3eaex15,null,_0x21d4[46]))[_0x21d4[75]](handleError(_0x3eaex15,null,_0x21d4[46]))};exports[_0x21d4[48]]= function(_0x3eaex28,_0x3eaex15){return db[_0x21d4[56]][_0x21d4[80]]({where:{id:_0x3eaex28[_0x21d4[79]][_0x21d4[78]]}})[_0x21d4[45]](handleEntityNotFound(_0x3eaex15,null,_0x21d4[48]))[_0x21d4[45]](removeEntity(_0x3eaex15,null,_0x21d4[48]))[_0x21d4[75]](handleError(_0x3eaex15,null,_0x21d4[48]))};exports[_0x21d4[83]]= function(_0x3eaex28,_0x3eaex15){return db[_0x21d4[56]][_0x21d4[83]]()[_0x21d4[45]](respondWithResult(_0x3eaex15,null,_0x21d4[83]))[_0x21d4[75]](handleError(_0x3eaex15,null,_0x21d4[83]))}
\ No newline at end of file
+var _0xc4a4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xc4a4[0];var jsonpatch=require(_0xc4a4[1]);var rp=require(_0xc4a4[2]);var moment=require(_0xc4a4[3]);var BPromise=require(_0xc4a4[4]);var util=require(_0xc4a4[5]);var path=require(_0xc4a4[6]);var sox=require(_0xc4a4[7]);var ejs=require(_0xc4a4[8]);var fs=require(_0xc4a4[9]);var _=require(_0xc4a4[10]);var squel=require(_0xc4a4[11]);var crypto=require(_0xc4a4[12]);var jsforce=require(_0xc4a4[13]);var toCsv=require(_0xc4a4[14]);var qs=require(_0xc4a4[15]);var logger=require(_0xc4a4[17])(_0xc4a4[16]);var utils=require(_0xc4a4[18]);var config=require(_0xc4a4[19]);var db=require(_0xc4a4[21])[_0xc4a4[20]];function respondWithStatusCode(_0xd7a7x15,_0xd7a7x16,_0xd7a7x17){_0xd7a7x16= _0xd7a7x16|| 204;return function(_0xd7a7x18){if(_0xd7a7x18){logger[_0xc4a4[24]](_0xc4a4[22],_0xd7a7x17,_0xd7a7x16,_0xc4a4[23]);logger[_0xc4a4[26]](_0xc4a4[25],_0xd7a7x17,_0xd7a7x16,_0xc4a4[23]);return _0xd7a7x15[_0xc4a4[27]](_0xd7a7x16)};return _0xd7a7x15[_0xc4a4[29]](304)[_0xc4a4[28]]()}}function respondWithResult(_0xd7a7x15,_0xd7a7x16,_0xd7a7x17){_0xd7a7x16= _0xd7a7x16|| 200;return function(_0xd7a7x18){if(_0xd7a7x18){logger[_0xc4a4[24]](_0xc4a4[22],_0xd7a7x17,_0xd7a7x16,_0xc4a4[30]);logger[_0xc4a4[26]](_0xc4a4[25],_0xd7a7x17,_0xd7a7x16,_0xc4a4[30],JSON[_0xc4a4[31]](_0xd7a7x18));return _0xd7a7x15[_0xc4a4[29]](_0xd7a7x16)[_0xc4a4[32]](_0xd7a7x18)};return _0xd7a7x15[_0xc4a4[29]](304)[_0xc4a4[28]]()}}function respondWithFilteredResult(_0xd7a7x15,_0xd7a7x1b,_0xd7a7x17){return function(_0xd7a7x18){if(_0xd7a7x18){var _0xd7a7x1c=_0xd7a7x18[_0xc4a4[33]],_0xd7a7x1d=_0xd7a7x1b[_0xc4a4[34]],_0xd7a7x1e=_0xd7a7x1b[_0xc4a4[34]]+ _0xd7a7x1b[_0xc4a4[35]],_0xd7a7x16;if(_0xd7a7x1e>= _0xd7a7x1c){_0xd7a7x1e= _0xd7a7x1c;_0xd7a7x16= 200}else {_0xd7a7x16= 206};_0xd7a7x15[_0xc4a4[29]](_0xd7a7x16);logger[_0xc4a4[24]](_0xc4a4[22],_0xd7a7x17,_0xd7a7x16,_0xc4a4[36]);logger[_0xc4a4[26]](_0xc4a4[25],_0xd7a7x17,_0xd7a7x16,_0xc4a4[30],JSON[_0xc4a4[31]](_0xd7a7x18));return _0xd7a7x15[_0xc4a4[40]](_0xc4a4[37],_0xd7a7x1d+ _0xc4a4[38]+ _0xd7a7x1e+ _0xc4a4[39]+ _0xd7a7x1c)[_0xc4a4[32]](_0xd7a7x18)};return null}}function patchUpdates(_0xd7a7x20){return function(_0xd7a7x18){try{jsonpatch[_0xc4a4[41]](_0xd7a7x18,_0xd7a7x20,true)}catch(err){return BPromise[_0xc4a4[42]](err)};return _0xd7a7x18[_0xc4a4[43]]()}}function saveUpdates(_0xd7a7x22,_0xd7a7x16,_0xd7a7x17){return function(_0xd7a7x18){if(_0xd7a7x18){return _0xd7a7x18[_0xc4a4[46]](_0xd7a7x22)[_0xc4a4[45]](function(_0xd7a7x23){logger[_0xc4a4[24]](_0xc4a4[22],_0xd7a7x17,_0xd7a7x16,_0xc4a4[44]);logger[_0xc4a4[26]](_0xc4a4[25],_0xd7a7x17,_0xd7a7x16,_0xc4a4[44],JSON[_0xc4a4[31]](_0xd7a7x18));return _0xd7a7x23})};return null}}function removeEntity(_0xd7a7x15,_0xd7a7x16,_0xd7a7x17){return function(_0xd7a7x18){if(_0xd7a7x18){return _0xd7a7x18[_0xc4a4[48]]()[_0xc4a4[45]](function(){logger[_0xc4a4[24]](_0xc4a4[22],_0xd7a7x17,_0xd7a7x16,_0xc4a4[47]);logger[_0xc4a4[26]](_0xc4a4[25],_0xd7a7x17,_0xd7a7x16,_0xc4a4[47],JSON[_0xc4a4[31]](_0xd7a7x18));_0xd7a7x15[_0xc4a4[29]](204)[_0xc4a4[28]]()})}}}function handleEntityNotFound(_0xd7a7x15,_0xd7a7x16,_0xd7a7x17){return function(_0xd7a7x18){if(!_0xd7a7x18){logger[_0xc4a4[50]](_0xc4a4[22],_0xd7a7x17,404,_0xc4a4[49]);_0xd7a7x15[_0xc4a4[29]](404)[_0xc4a4[28]]();return null};return _0xd7a7x18}}function handleError(_0xd7a7x15,_0xd7a7x16,_0xd7a7x17){_0xd7a7x16= _0xd7a7x16|| 500;return function(_0xd7a7x27){logger[_0xc4a4[50]](_0xc4a4[22],_0xd7a7x17,_0xd7a7x16,JSON[_0xc4a4[31]](_0xd7a7x27));delete _0xd7a7x27[_0xc4a4[51]];_0xd7a7x15[_0xc4a4[29]](_0xd7a7x16)[_0xc4a4[52]](_0xd7a7x27)}}exports[_0xc4a4[53]]= function(_0xd7a7x28,_0xd7a7x15){var _0xd7a7x1b={raw:true},_0xd7a7x29={};_0xd7a7x29[_0xc4a4[54]]= _[_0xc4a4[57]](db[_0xc4a4[56]][_0xc4a4[55]]);_0xd7a7x29[_0xc4a4[58]]= _[_0xc4a4[57]](_0xd7a7x28[_0xc4a4[58]]);_0xd7a7x29[_0xc4a4[59]]= _[_0xc4a4[60]](_0xd7a7x29[_0xc4a4[54]],_0xd7a7x29[_0xc4a4[58]]);_0xd7a7x1b[_0xc4a4[61]]= _[_0xc4a4[60]](_0xd7a7x29[_0xc4a4[54]],qs[_0xc4a4[62]](_0xd7a7x28[_0xc4a4[58]][_0xc4a4[62]]));_0xd7a7x1b[_0xc4a4[61]]= (_0xd7a7x1b[_0xc4a4[61]][_0xc4a4[63]])?_0xd7a7x1b[_0xc4a4[61]]:_0xd7a7x29[_0xc4a4[54]];if(!_0xd7a7x28[_0xc4a4[58]][_0xc4a4[65]](_0xc4a4[64])){_0xd7a7x1b[_0xc4a4[35]]= qs[_0xc4a4[35]](_0xd7a7x28[_0xc4a4[58]][_0xc4a4[35]]);_0xd7a7x1b[_0xc4a4[34]]= qs[_0xc4a4[34]](_0xd7a7x28[_0xc4a4[58]][_0xc4a4[34]])};_0xd7a7x1b[_0xc4a4[66]]= qs[_0xc4a4[67]](_0xd7a7x28[_0xc4a4[58]][_0xc4a4[67]]);_0xd7a7x1b[_0xc4a4[68]]= qs[_0xc4a4[59]](_[_0xc4a4[69]](_0xd7a7x28[_0xc4a4[58]],_0xd7a7x29[_0xc4a4[59]]));if(_0xd7a7x28[_0xc4a4[58]][_0xc4a4[70]]){_0xd7a7x1b[_0xc4a4[68]]= _[_0xc4a4[73]](_0xd7a7x1b[_0xc4a4[68]],{$or:_[_0xc4a4[72]](_0xd7a7x1b[_0xc4a4[61]],function(_0xd7a7x2a){var _0xd7a7x2b={};_0xd7a7x2b[_0xd7a7x2a]= {$like:_0xc4a4[71]+ _0xd7a7x28[_0xc4a4[58]][_0xc4a4[70]]+ _0xc4a4[71]};return _0xd7a7x2b})})};_0xd7a7x1b= _[_0xc4a4[73]]({},_0xd7a7x1b,_0xd7a7x28[_0xc4a4[74]]);return db[_0xc4a4[56]][_0xc4a4[76]](_0xd7a7x1b)[_0xc4a4[45]](respondWithFilteredResult(_0xd7a7x15,_0xd7a7x1b,_0xc4a4[53]))[_0xc4a4[75]](handleError(_0xd7a7x15,null,_0xc4a4[53]))};exports[_0xc4a4[77]]= function(_0xd7a7x28,_0xd7a7x15){var _0xd7a7x1b={raw:true,where:{id:_0xd7a7x28[_0xc4a4[79]][_0xc4a4[78]]}},_0xd7a7x29={};_0xd7a7x29[_0xc4a4[54]]= _[_0xc4a4[57]](db[_0xc4a4[56]][_0xc4a4[55]]);_0xd7a7x29[_0xc4a4[58]]= _[_0xc4a4[57]](_0xd7a7x28[_0xc4a4[58]]);_0xd7a7x29[_0xc4a4[59]]= _[_0xc4a4[60]](_0xd7a7x29[_0xc4a4[54]],_0xd7a7x29[_0xc4a4[58]]);_0xd7a7x1b[_0xc4a4[61]]= _[_0xc4a4[60]](_0xd7a7x29[_0xc4a4[54]],qs[_0xc4a4[62]](_0xd7a7x28[_0xc4a4[58]][_0xc4a4[62]]));_0xd7a7x1b[_0xc4a4[61]]= (_0xd7a7x1b[_0xc4a4[61]][_0xc4a4[63]])?_0xd7a7x1b[_0xc4a4[61]]:_0xd7a7x29[_0xc4a4[54]];_0xd7a7x1b= _[_0xc4a4[73]]({},_0xd7a7x1b,_0xd7a7x28[_0xc4a4[74]]);return db[_0xc4a4[56]][_0xc4a4[80]](_0xd7a7x1b)[_0xc4a4[45]](handleEntityNotFound(_0xd7a7x15,null,_0xc4a4[77]))[_0xc4a4[45]](respondWithResult(_0xd7a7x15,null,_0xc4a4[77]))[_0xc4a4[75]](handleError(_0xd7a7x15,null,_0xc4a4[77]))};exports[_0xc4a4[81]]= function(_0xd7a7x28,_0xd7a7x15){return db[_0xc4a4[56]][_0xc4a4[81]](_0xd7a7x28[_0xc4a4[82]],{})[_0xc4a4[45]](respondWithResult(_0xd7a7x15,201,_0xc4a4[81]))[_0xc4a4[75]](handleError(_0xd7a7x15,null,_0xc4a4[81]))};exports[_0xc4a4[46]]= function(_0xd7a7x28,_0xd7a7x15){if(_0xd7a7x28[_0xc4a4[82]][_0xc4a4[78]]){delete _0xd7a7x28[_0xc4a4[82]][_0xc4a4[78]]};return db[_0xc4a4[56]][_0xc4a4[80]]({where:{id:_0xd7a7x28[_0xc4a4[79]][_0xc4a4[78]]}})[_0xc4a4[45]](handleEntityNotFound(_0xd7a7x15,null,_0xc4a4[46]))[_0xc4a4[45]](saveUpdates(_0xd7a7x28[_0xc4a4[82]],null,_0xc4a4[46]))[_0xc4a4[45]](respondWithResult(_0xd7a7x15,null,_0xc4a4[46]))[_0xc4a4[75]](handleError(_0xd7a7x15,null,_0xc4a4[46]))};exports[_0xc4a4[48]]= function(_0xd7a7x28,_0xd7a7x15){return db[_0xc4a4[56]][_0xc4a4[80]]({where:{id:_0xd7a7x28[_0xc4a4[79]][_0xc4a4[78]]}})[_0xc4a4[45]](handleEntityNotFound(_0xd7a7x15,null,_0xc4a4[48]))[_0xc4a4[45]](removeEntity(_0xd7a7x15,null,_0xc4a4[48]))[_0xc4a4[75]](handleError(_0xd7a7x15,null,_0xc4a4[48]))};exports[_0xc4a4[83]]= function(_0xd7a7x28,_0xd7a7x15){return db[_0xc4a4[56]][_0xc4a4[83]]()[_0xc4a4[45]](respondWithResult(_0xd7a7x15,null,_0xc4a4[83]))[_0xc4a4[75]](handleError(_0xd7a7x15,null,_0xc4a4[83]))}
\ No newline at end of file
index 08cc48f..e5e57f4 100644 (file)
@@ -1 +1 @@
-var _0xbc07=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6D\x61\x69\x6C\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xbc07[0];var _=require(_0xbc07[1]);var util=require(_0xbc07[2]);var logger=require(_0xbc07[4])(_0xbc07[3]);var attributes=require(_0xbc07[5]);module[_0xbc07[6]]= function(_0x57e1x5,_0x57e1x6){return _0x57e1x5[_0xbc07[9]](_0xbc07[7],attributes,{tableName:_0xbc07[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x3b55=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6D\x61\x69\x6C\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x3b55[0];var _=require(_0x3b55[1]);var util=require(_0x3b55[2]);var logger=require(_0x3b55[4])(_0x3b55[3]);var attributes=require(_0x3b55[5]);module[_0x3b55[6]]= function(_0x1eebx5,_0x1eebx6){return _0x1eebx5[_0x3b55[9]](_0x3b55[7],attributes,{tableName:_0x3b55[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 42d91a5..d25fd68 100644 (file)
@@ -1 +1 @@
-var _0xbc20=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xbc20[0];var _=require(_0xbc20[1]);var util=require(_0xbc20[2]);var moment=require(_0xbc20[3]);var BPromise=require(_0xbc20[4]);var db=require(_0xbc20[6])[_0xbc20[5]];var utils=require(_0xbc20[7]);var logger=require(_0xbc20[9])(_0xbc20[8]);var jayson=require(_0xbc20[10]);var client=jayson[_0xbc20[12]][_0xbc20[11]]({port:9002});function respondWithRpcPromise(_0x8684xb,_0x8684xc,_0x8684xd){return  new BPromise(function(_0x8684xe,_0x8684xf){return client[_0xbc20[25]](_0x8684xb,_0x8684xd)[_0xbc20[24]](function(_0x8684x11){logger[_0xbc20[17]](_0xbc20[13],_0x8684xc,_0xbc20[16]);logger[_0xbc20[20]](_0xbc20[18],_0x8684xc,_0xbc20[16],JSON[_0xbc20[19]](_0x8684x11));if(_0x8684x11[_0xbc20[14]]){if(_0x8684x11[_0xbc20[14]][_0xbc20[21]]=== 500){logger[_0xbc20[14]](_0xbc20[13],_0x8684xc,_0x8684x11[_0xbc20[14]][_0xbc20[22]]);return _0x8684xf(_0x8684x11[_0xbc20[14]][_0xbc20[22]])};logger[_0xbc20[14]](_0xbc20[13],_0x8684xc,_0x8684x11[_0xbc20[14]][_0xbc20[22]]);return _0x8684xe(_0x8684x11[_0xbc20[14]][_0xbc20[22]])}else {logger[_0xbc20[17]](_0xbc20[13],_0x8684xc,_0xbc20[16]);_0x8684xe(_0x8684x11[_0xbc20[23]][_0xbc20[22]])}})[_0xbc20[15]](function(_0x8684x10){logger[_0xbc20[14]](_0xbc20[13],_0x8684xc,_0x8684x10);_0x8684xf(_0x8684x10)})})}
\ No newline at end of file
+var _0xcf86=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xcf86[0];var _=require(_0xcf86[1]);var util=require(_0xcf86[2]);var moment=require(_0xcf86[3]);var BPromise=require(_0xcf86[4]);var db=require(_0xcf86[6])[_0xcf86[5]];var utils=require(_0xcf86[7]);var logger=require(_0xcf86[9])(_0xcf86[8]);var jayson=require(_0xcf86[10]);var client=jayson[_0xcf86[12]][_0xcf86[11]]({port:9002});function respondWithRpcPromise(_0x2e56xb,_0x2e56xc,_0x2e56xd){return  new BPromise(function(_0x2e56xe,_0x2e56xf){return client[_0xcf86[25]](_0x2e56xb,_0x2e56xd)[_0xcf86[24]](function(_0x2e56x11){logger[_0xcf86[17]](_0xcf86[13],_0x2e56xc,_0xcf86[16]);logger[_0xcf86[20]](_0xcf86[18],_0x2e56xc,_0xcf86[16],JSON[_0xcf86[19]](_0x2e56x11));if(_0x2e56x11[_0xcf86[14]]){if(_0x2e56x11[_0xcf86[14]][_0xcf86[21]]=== 500){logger[_0xcf86[14]](_0xcf86[13],_0x2e56xc,_0x2e56x11[_0xcf86[14]][_0xcf86[22]]);return _0x2e56xf(_0x2e56x11[_0xcf86[14]][_0xcf86[22]])};logger[_0xcf86[14]](_0xcf86[13],_0x2e56xc,_0x2e56x11[_0xcf86[14]][_0xcf86[22]]);return _0x2e56xe(_0x2e56x11[_0xcf86[14]][_0xcf86[22]])}else {logger[_0xcf86[17]](_0xcf86[13],_0x2e56xc,_0xcf86[16]);_0x2e56xe(_0x2e56x11[_0xcf86[23]][_0xcf86[22]])}})[_0xcf86[15]](function(_0x2e56x10){logger[_0xcf86[14]](_0xcf86[13],_0x2e56xc,_0x2e56x10);_0x2e56xf(_0x2e56x10)})})}
\ No newline at end of file
index 8d7f6dc..dead84d 100644 (file)
@@ -1 +1 @@
-var _0x4158=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x4158[0];var multer=require(_0x4158[1]);var util=require(_0x4158[2]);var path=require(_0x4158[3]);var express=require(_0x4158[4]);var router=express.Router();var auth=require(_0x4158[5]);var config=require(_0x4158[6]);var controller=require(_0x4158[7]);router[_0x4158[11]](_0x4158[8],auth[_0x4158[9]](),controller[_0x4158[10]]);router[_0x4158[11]](_0x4158[12],auth[_0x4158[9]](),controller[_0x4158[13]]);router[_0x4158[11]](_0x4158[14],auth[_0x4158[9]](),controller[_0x4158[15]]);router[_0x4158[11]](_0x4158[16],auth[_0x4158[9]](),controller[_0x4158[17]]);router[_0x4158[19]](_0x4158[8],auth[_0x4158[9]](),controller[_0x4158[18]]);router[_0x4158[19]](_0x4158[14],auth[_0x4158[9]](),controller[_0x4158[20]]);router[_0x4158[19]](_0x4158[16],auth[_0x4158[9]](),controller[_0x4158[21]]);router[_0x4158[23]](_0x4158[12],auth[_0x4158[9]](),controller[_0x4158[22]]);router[_0x4158[25]](_0x4158[12],auth[_0x4158[9]](),controller[_0x4158[24]]);router[_0x4158[25]](_0x4158[14],auth[_0x4158[9]](),controller[_0x4158[26]]);router[_0x4158[25]](_0x4158[16],auth[_0x4158[9]](),controller[_0x4158[27]]);module[_0x4158[28]]= router
\ No newline at end of file
+var _0xb6ae=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xb6ae[0];var multer=require(_0xb6ae[1]);var util=require(_0xb6ae[2]);var path=require(_0xb6ae[3]);var express=require(_0xb6ae[4]);var router=express.Router();var auth=require(_0xb6ae[5]);var config=require(_0xb6ae[6]);var controller=require(_0xb6ae[7]);router[_0xb6ae[11]](_0xb6ae[8],auth[_0xb6ae[9]](),controller[_0xb6ae[10]]);router[_0xb6ae[11]](_0xb6ae[12],auth[_0xb6ae[9]](),controller[_0xb6ae[13]]);router[_0xb6ae[11]](_0xb6ae[14],auth[_0xb6ae[9]](),controller[_0xb6ae[15]]);router[_0xb6ae[11]](_0xb6ae[16],auth[_0xb6ae[9]](),controller[_0xb6ae[17]]);router[_0xb6ae[19]](_0xb6ae[8],auth[_0xb6ae[9]](),controller[_0xb6ae[18]]);router[_0xb6ae[19]](_0xb6ae[14],auth[_0xb6ae[9]](),controller[_0xb6ae[20]]);router[_0xb6ae[19]](_0xb6ae[16],auth[_0xb6ae[9]](),controller[_0xb6ae[21]]);router[_0xb6ae[23]](_0xb6ae[12],auth[_0xb6ae[9]](),controller[_0xb6ae[22]]);router[_0xb6ae[25]](_0xb6ae[12],auth[_0xb6ae[9]](),controller[_0xb6ae[24]]);router[_0xb6ae[25]](_0xb6ae[14],auth[_0xb6ae[9]](),controller[_0xb6ae[26]]);router[_0xb6ae[25]](_0xb6ae[16],auth[_0xb6ae[9]](),controller[_0xb6ae[27]]);module[_0xb6ae[28]]= router
\ No newline at end of file
index 1cdc38a..9b6fe9d 100644 (file)
@@ -1 +1 @@
-var _0x8ba9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0x8ba9[0];var Sequelize=require(_0x8ba9[1]);module[_0x8ba9[2]]= {name:{type:Sequelize[_0x8ba9[3]],unique:_0x8ba9[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0x8ba9[3]]},timeout:{type:Sequelize[_0x8ba9[5]],validate:{min:1}},strategy:{type:Sequelize.ENUM(_0x8ba9[6],_0x8ba9[7],_0x8ba9[8])},lastAgent:{type:Sequelize[_0x8ba9[5]],defaultValue:0}}
\ No newline at end of file
+var _0xed0e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0xed0e[0];var Sequelize=require(_0xed0e[1]);module[_0xed0e[2]]= {name:{type:Sequelize[_0xed0e[3]],unique:_0xed0e[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0xed0e[3]]},timeout:{type:Sequelize[_0xed0e[5]],validate:{min:1}},strategy:{type:Sequelize.ENUM(_0xed0e[6],_0xed0e[7],_0xed0e[8])},lastAgent:{type:Sequelize[_0xed0e[5]],defaultValue:0}}
\ No newline at end of file
index 10d3d13..baf246e 100644 (file)
@@ -1 +1 @@
-var _0xd8dc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0xd8dc[0];var jsonpatch=require(_0xd8dc[1]);var rp=require(_0xd8dc[2]);var moment=require(_0xd8dc[3]);var BPromise=require(_0xd8dc[4]);var util=require(_0xd8dc[5]);var path=require(_0xd8dc[6]);var sox=require(_0xd8dc[7]);var ejs=require(_0xd8dc[8]);var fs=require(_0xd8dc[9]);var _=require(_0xd8dc[10]);var squel=require(_0xd8dc[11]);var crypto=require(_0xd8dc[12]);var jsforce=require(_0xd8dc[13]);var toCsv=require(_0xd8dc[14]);var qs=require(_0xd8dc[15]);var logger=require(_0xd8dc[17])(_0xd8dc[16]);var utils=require(_0xd8dc[18]);var config=require(_0xd8dc[19]);var db=require(_0xd8dc[21])[_0xd8dc[20]];function respondWithStatusCode(_0x9792x15,_0x9792x16,_0x9792x17){_0x9792x16= _0x9792x16|| 204;return function(_0x9792x18){if(_0x9792x18){logger[_0xd8dc[24]](_0xd8dc[22],_0x9792x17,_0x9792x16,_0xd8dc[23]);logger[_0xd8dc[26]](_0xd8dc[25],_0x9792x17,_0x9792x16,_0xd8dc[23]);return _0x9792x15[_0xd8dc[27]](_0x9792x16)};return _0x9792x15[_0xd8dc[29]](304)[_0xd8dc[28]]()}}function respondWithResult(_0x9792x15,_0x9792x16,_0x9792x17){_0x9792x16= _0x9792x16|| 200;return function(_0x9792x18){if(_0x9792x18){logger[_0xd8dc[24]](_0xd8dc[22],_0x9792x17,_0x9792x16,_0xd8dc[30]);logger[_0xd8dc[26]](_0xd8dc[25],_0x9792x17,_0x9792x16,_0xd8dc[30],JSON[_0xd8dc[31]](_0x9792x18));return _0x9792x15[_0xd8dc[29]](_0x9792x16)[_0xd8dc[32]](_0x9792x18)};return _0x9792x15[_0xd8dc[29]](304)[_0xd8dc[28]]()}}function respondWithFilteredResult(_0x9792x15,_0x9792x1b,_0x9792x17){return function(_0x9792x18){if(_0x9792x18){var _0x9792x1c=_0x9792x18[_0xd8dc[33]],_0x9792x1d=_0x9792x1b[_0xd8dc[34]],_0x9792x1e=_0x9792x1b[_0xd8dc[34]]+ _0x9792x1b[_0xd8dc[35]],_0x9792x16;if(_0x9792x1e>= _0x9792x1c){_0x9792x1e= _0x9792x1c;_0x9792x16= 200}else {_0x9792x16= 206};_0x9792x15[_0xd8dc[29]](_0x9792x16);logger[_0xd8dc[24]](_0xd8dc[22],_0x9792x17,_0x9792x16,_0xd8dc[36]);logger[_0xd8dc[26]](_0xd8dc[25],_0x9792x17,_0x9792x16,_0xd8dc[30],JSON[_0xd8dc[31]](_0x9792x18));return _0x9792x15[_0xd8dc[40]](_0xd8dc[37],_0x9792x1d+ _0xd8dc[38]+ _0x9792x1e+ _0xd8dc[39]+ _0x9792x1c)[_0xd8dc[32]](_0x9792x18)};return null}}function patchUpdates(_0x9792x20){return function(_0x9792x18){try{jsonpatch[_0xd8dc[41]](_0x9792x18,_0x9792x20,true)}catch(err){return BPromise[_0xd8dc[42]](err)};return _0x9792x18[_0xd8dc[43]]()}}function saveUpdates(_0x9792x22,_0x9792x16,_0x9792x17){return function(_0x9792x18){if(_0x9792x18){return _0x9792x18[_0xd8dc[46]](_0x9792x22)[_0xd8dc[45]](function(_0x9792x23){logger[_0xd8dc[24]](_0xd8dc[22],_0x9792x17,_0x9792x16,_0xd8dc[44]);logger[_0xd8dc[26]](_0xd8dc[25],_0x9792x17,_0x9792x16,_0xd8dc[44],JSON[_0xd8dc[31]](_0x9792x18));return _0x9792x23})};return null}}function removeEntity(_0x9792x15,_0x9792x16,_0x9792x17){return function(_0x9792x18){if(_0x9792x18){return _0x9792x18[_0xd8dc[48]]()[_0xd8dc[45]](function(){logger[_0xd8dc[24]](_0xd8dc[22],_0x9792x17,_0x9792x16,_0xd8dc[47]);logger[_0xd8dc[26]](_0xd8dc[25],_0x9792x17,_0x9792x16,_0xd8dc[47],JSON[_0xd8dc[31]](_0x9792x18));_0x9792x15[_0xd8dc[29]](204)[_0xd8dc[28]]()})}}}function handleEntityNotFound(_0x9792x15,_0x9792x16,_0x9792x17){return function(_0x9792x18){if(!_0x9792x18){logger[_0xd8dc[50]](_0xd8dc[22],_0x9792x17,404,_0xd8dc[49]);_0x9792x15[_0xd8dc[29]](404)[_0xd8dc[28]]();return null};return _0x9792x18}}function handleError(_0x9792x15,_0x9792x16,_0x9792x17){_0x9792x16= _0x9792x16|| 500;return function(_0x9792x27){logger[_0xd8dc[50]](_0xd8dc[22],_0x9792x17,_0x9792x16,JSON[_0xd8dc[31]](_0x9792x27));delete _0x9792x27[_0xd8dc[51]];_0x9792x15[_0xd8dc[29]](_0x9792x16)[_0xd8dc[52]](_0x9792x27)}}exports[_0xd8dc[53]]= function(_0x9792x28,_0x9792x15){var _0x9792x1b={},_0x9792x29={};_0x9792x29[_0xd8dc[54]]= _[_0xd8dc[57]](db[_0xd8dc[56]][_0xd8dc[55]]);_0x9792x29[_0xd8dc[58]]= _[_0xd8dc[57]](_0x9792x28[_0xd8dc[58]]);_0x9792x29[_0xd8dc[59]]= _[_0xd8dc[60]](_0x9792x29[_0xd8dc[54]],_0x9792x29[_0xd8dc[58]]);_0x9792x1b[_0xd8dc[61]]= _[_0xd8dc[60]](_0x9792x29[_0xd8dc[54]],qs[_0xd8dc[62]](_0x9792x28[_0xd8dc[58]][_0xd8dc[62]]));_0x9792x1b[_0xd8dc[61]]= (_0x9792x1b[_0xd8dc[61]][_0xd8dc[63]])?_0x9792x1b[_0xd8dc[61]]:_0x9792x29[_0xd8dc[54]];if(!_0x9792x28[_0xd8dc[58]][_0xd8dc[65]](_0xd8dc[64])){_0x9792x1b[_0xd8dc[35]]= qs[_0xd8dc[35]](_0x9792x28[_0xd8dc[58]][_0xd8dc[35]]);_0x9792x1b[_0xd8dc[34]]= qs[_0xd8dc[34]](_0x9792x28[_0xd8dc[58]][_0xd8dc[34]])};_0x9792x1b[_0xd8dc[66]]= qs[_0xd8dc[67]](_0x9792x28[_0xd8dc[58]][_0xd8dc[67]]);_0x9792x1b[_0xd8dc[68]]= qs[_0xd8dc[59]](_[_0xd8dc[69]](_0x9792x28[_0xd8dc[58]],_0x9792x29[_0xd8dc[59]]));if(_0x9792x28[_0xd8dc[58]][_0xd8dc[70]]){_0x9792x1b[_0xd8dc[68]]= _[_0xd8dc[73]](_0x9792x1b[_0xd8dc[68]],{$or:_[_0xd8dc[72]](_0x9792x1b[_0xd8dc[61]],function(_0x9792x2a){var _0x9792x2b={};_0x9792x2b[_0x9792x2a]= {$like:_0xd8dc[71]+ _0x9792x28[_0xd8dc[58]][_0xd8dc[70]]+ _0xd8dc[71]};return _0x9792x2b})})};_0x9792x1b= _[_0xd8dc[73]]({},_0x9792x1b,_0x9792x28[_0xd8dc[74]]);return db[_0xd8dc[56]][_0xd8dc[76]](_0x9792x1b)[_0xd8dc[45]](respondWithFilteredResult(_0x9792x15,_0x9792x1b,_0xd8dc[53]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[53]))};exports[_0xd8dc[77]]= function(_0x9792x28,_0x9792x15){var _0x9792x1b={raw:true,where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}},_0x9792x29={};_0x9792x29[_0xd8dc[54]]= _[_0xd8dc[57]](db[_0xd8dc[56]][_0xd8dc[55]]);_0x9792x29[_0xd8dc[58]]= _[_0xd8dc[57]](_0x9792x28[_0xd8dc[58]]);_0x9792x29[_0xd8dc[59]]= _[_0xd8dc[60]](_0x9792x29[_0xd8dc[54]],_0x9792x29[_0xd8dc[58]]);_0x9792x1b[_0xd8dc[61]]= _[_0xd8dc[60]](_0x9792x29[_0xd8dc[54]],qs[_0xd8dc[62]](_0x9792x28[_0xd8dc[58]][_0xd8dc[62]]));_0x9792x1b[_0xd8dc[61]]= (_0x9792x1b[_0xd8dc[61]][_0xd8dc[63]])?_0x9792x1b[_0xd8dc[61]]:_0x9792x29[_0xd8dc[54]];_0x9792x1b= _[_0xd8dc[73]]({},_0x9792x1b,_0x9792x28[_0xd8dc[74]]);return db[_0xd8dc[56]][_0xd8dc[80]](_0x9792x1b)[_0xd8dc[45]](handleEntityNotFound(_0x9792x15,null,_0xd8dc[77]))[_0xd8dc[45]](respondWithResult(_0x9792x15,null,_0xd8dc[77]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[77]))};exports[_0xd8dc[81]]= function(_0x9792x28,_0x9792x15){return db[_0xd8dc[56]][_0xd8dc[81]](_0x9792x28[_0xd8dc[82]],{})[_0xd8dc[45]](respondWithResult(_0x9792x15,201,_0xd8dc[81]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[81]))};exports[_0xd8dc[46]]= function(_0x9792x28,_0x9792x15){if(_0x9792x28[_0xd8dc[82]][_0xd8dc[78]]){delete _0x9792x28[_0xd8dc[82]][_0xd8dc[78]]};return db[_0xd8dc[56]][_0xd8dc[80]]({where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}})[_0xd8dc[45]](handleEntityNotFound(_0x9792x15,null,_0xd8dc[46]))[_0xd8dc[45]](saveUpdates(_0x9792x28[_0xd8dc[82]],null,_0xd8dc[46]))[_0xd8dc[45]](respondWithResult(_0x9792x15,null,_0xd8dc[46]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[46]))};exports[_0xd8dc[48]]= function(_0x9792x28,_0x9792x15){return db[_0xd8dc[56]][_0xd8dc[80]]({where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}})[_0xd8dc[45]](handleEntityNotFound(_0x9792x15,null,_0xd8dc[48]))[_0xd8dc[45]](removeEntity(_0x9792x15,null,_0xd8dc[48]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[48]))};exports[_0xd8dc[83]]= function(_0x9792x28,_0x9792x18,_0x9792x2c){var _0x9792x1b={};var _0x9792x29={};var _0x9792x2d;var _0x9792x1c;return db[_0xd8dc[56]][_0xd8dc[85]]({where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}})[_0xd8dc[45]](handleEntityNotFound(_0x9792x18,null,_0xd8dc[83]))[_0xd8dc[45]](function(_0x9792x18){if(_0x9792x18){_0x9792x2d= _0x9792x18;_0x9792x29[_0xd8dc[54]]= _[_0xd8dc[57]](db[_0xd8dc[84]][_0xd8dc[55]]);_0x9792x29[_0xd8dc[58]]= _[_0xd8dc[57]](_0x9792x28[_0xd8dc[58]]);_0x9792x29[_0xd8dc[59]]= _[_0xd8dc[60]](_0x9792x29[_0xd8dc[54]],_0x9792x29[_0xd8dc[58]]);_0x9792x1b[_0xd8dc[61]]= _[_0xd8dc[60]](_0x9792x29[_0xd8dc[54]],qs[_0xd8dc[62]](_0x9792x28[_0xd8dc[58]][_0xd8dc[62]]));_0x9792x1b[_0xd8dc[61]]= (_0x9792x1b[_0xd8dc[61]][_0xd8dc[63]])?_0x9792x1b[_0xd8dc[61]]:_0x9792x29[_0xd8dc[54]];_0x9792x1b[_0xd8dc[66]]= qs[_0xd8dc[67]](_0x9792x28[_0xd8dc[58]][_0xd8dc[67]]);_0x9792x1b[_0xd8dc[68]]= qs[_0xd8dc[59]](_[_0xd8dc[69]](_0x9792x28[_0xd8dc[58]],_0x9792x29[_0xd8dc[59]]));if(_0x9792x28[_0xd8dc[58]][_0xd8dc[70]]){_0x9792x1b[_0xd8dc[68]]= _[_0xd8dc[73]](_0x9792x1b[_0xd8dc[68]],{$or:_[_0xd8dc[72]](_0x9792x1b[_0xd8dc[61]],function(_0x9792x2a){var _0x9792x2b={};_0x9792x2b[_0x9792x2a]= {$like:_0xd8dc[71]+ _0x9792x28[_0xd8dc[58]][_0xd8dc[70]]+ _0xd8dc[71]};return _0x9792x2b})})};_0x9792x1b= _[_0xd8dc[73]]({},_0x9792x1b,_0x9792x28[_0xd8dc[74]]);return _0x9792x2d[_0xd8dc[83]](_0x9792x1b)}})[_0xd8dc[45]](function(_0x9792x2f){if(_0x9792x2f){_0x9792x1c= _0x9792x2f[_0xd8dc[63]];if(!_0x9792x28[_0xd8dc[58]][_0xd8dc[65]](_0xd8dc[64])){_0x9792x1b[_0xd8dc[35]]= qs[_0xd8dc[35]](_0x9792x28[_0xd8dc[58]][_0xd8dc[35]]);_0x9792x1b[_0xd8dc[34]]= qs[_0xd8dc[34]](_0x9792x28[_0xd8dc[58]][_0xd8dc[34]])};return _0x9792x2d[_0xd8dc[83]](_0x9792x1b)}})[_0xd8dc[45]](function(_0x9792x2e){return _0x9792x2e?{count:_0x9792x1c,rows:_0x9792x2e}:null})[_0xd8dc[45]](respondWithResult(_0x9792x18,null,_0xd8dc[83]))[_0xd8dc[75]](handleError(_0x9792x18,null,_0xd8dc[83]))};exports[_0xd8dc[86]]= function(_0x9792x28,_0x9792x15,_0x9792x2c){var _0x9792x30=[];var _0x9792x31;return db[_0xd8dc[84]][_0xd8dc[93]]({where:{id:_0x9792x28[_0xd8dc[82]][_0xd8dc[87]]},attributes:[_0xd8dc[78]],include:[{model:db[_0xd8dc[92]],as:_0xd8dc[90],attributes:[_0xd8dc[78]],raw:true}]})[_0xd8dc[45]](function(_0x9792x34){if(_0x9792x34){for(var _0x9792x35=0;_0x9792x35< _0x9792x34[_0xd8dc[63]];_0x9792x35+= 1){for(var _0x9792x36=0;_0x9792x36< _0x9792x34[_0x9792x35][_0xd8dc[90]][_0xd8dc[63]];_0x9792x36+= 1){_0x9792x30= _[_0xd8dc[91]](_0x9792x30,[_0x9792x34[_0x9792x35][_0xd8dc[90]][_0x9792x36][_0xd8dc[78]]])}};return _0x9792x30}})[_0xd8dc[45]](function(_0x9792x33){if(_0x9792x33){return db[_0xd8dc[56]][_0xd8dc[80]]({where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}})}})[_0xd8dc[45]](function(_0x9792x32){if(_0x9792x32){_0x9792x31= _0x9792x32;return _0x9792x31[_0xd8dc[89]](_0x9792x30,{penalty:_0x9792x28[_0xd8dc[82]][_0xd8dc[88]]})}})[_0xd8dc[45]](function(_0x9792x18){if(_0x9792x18){return _0x9792x31[_0xd8dc[86]](_0x9792x28[_0xd8dc[82]][_0xd8dc[87]])}})[_0xd8dc[45]](handleEntityNotFound(_0x9792x15,null,_0xd8dc[86]))[_0xd8dc[45]](respondWithStatusCode(_0x9792x15,null,_0xd8dc[86]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[86]))};exports[_0xd8dc[94]]= function(_0x9792x28,_0x9792x15,_0x9792x2c){var _0x9792x30=[];var _0x9792x31;return db[_0xd8dc[84]][_0xd8dc[93]]({where:{id:_0x9792x28[_0xd8dc[58]][_0xd8dc[87]]},attributes:[_0xd8dc[78]],include:[{model:db[_0xd8dc[92]],as:_0xd8dc[90],attributes:[_0xd8dc[78]],raw:true}]})[_0xd8dc[45]](function(_0x9792x34){if(_0x9792x34){for(var _0x9792x35=0;_0x9792x35< _0x9792x34[_0xd8dc[63]];_0x9792x35+= 1){for(var _0x9792x36=0;_0x9792x36< _0x9792x34[_0x9792x35][_0xd8dc[90]][_0xd8dc[63]];_0x9792x36+= 1){_0x9792x30= _[_0xd8dc[91]](_0x9792x30,[_0x9792x34[_0x9792x35][_0xd8dc[90]][_0x9792x36][_0xd8dc[78]]])}};return _0x9792x30}})[_0xd8dc[45]](function(_0x9792x33){if(_0x9792x33){return db[_0xd8dc[56]][_0xd8dc[80]]({where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}})}})[_0xd8dc[45]](function(_0x9792x32){if(_0x9792x32){_0x9792x31= _0x9792x32;return _0x9792x31[_0xd8dc[95]](_0x9792x30)}})[_0xd8dc[45]](function(_0x9792x18){if(_0x9792x31){return _0x9792x31[_0xd8dc[94]](_0x9792x28[_0xd8dc[58]][_0xd8dc[87]])}})[_0xd8dc[45]](handleEntityNotFound(_0x9792x15,null,_0xd8dc[94]))[_0xd8dc[45]](respondWithStatusCode(_0x9792x15,null,_0xd8dc[94]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[94]))};exports[_0xd8dc[89]]= function(_0x9792x28,_0x9792x15,_0x9792x2c){return db[_0xd8dc[56]][_0xd8dc[80]]({where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}})[_0xd8dc[45]](handleEntityNotFound(_0x9792x15,null,_0xd8dc[89]))[_0xd8dc[45]](function(_0x9792x18){if(_0x9792x18){return _0x9792x18[_0xd8dc[89]](_0x9792x28[_0xd8dc[82]][_0xd8dc[87]],_[_0xd8dc[96]](_0x9792x28[_0xd8dc[82]],[_0xd8dc[87],_0xd8dc[78]])|| {})};return null})[_0xd8dc[45]](respondWithResult(_0x9792x15,null,_0xd8dc[89]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[89]))};exports[_0xd8dc[95]]= function(_0x9792x28,_0x9792x15,_0x9792x2c){var _0x9792x2f;return db[_0xd8dc[56]][_0xd8dc[80]]({where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}})[_0xd8dc[45]](handleEntityNotFound(_0x9792x15,null,_0xd8dc[95]))[_0xd8dc[45]](function(_0x9792x18){if(_0x9792x18){return _0x9792x18[_0xd8dc[95]](_0x9792x28[_0xd8dc[58]][_0xd8dc[87]])}})[_0xd8dc[45]](respondWithStatusCode(_0x9792x15,null,_0xd8dc[95]))[_0xd8dc[75]](handleError(_0x9792x15,null,_0xd8dc[95]))};exports[_0xd8dc[97]]= function(_0x9792x28,_0x9792x18,_0x9792x2c){var _0x9792x1b={};var _0x9792x29={};var _0x9792x2d;var _0x9792x1c;return db[_0xd8dc[56]][_0xd8dc[85]]({where:{id:_0x9792x28[_0xd8dc[79]][_0xd8dc[78]]}})[_0xd8dc[45]](handleEntityNotFound(_0x9792x18,null,_0xd8dc[97]))[_0xd8dc[45]](function(_0x9792x18){if(_0x9792x18){_0x9792x2d= _0x9792x18;_0x9792x29[_0xd8dc[54]]= _[_0xd8dc[57]](db[_0xd8dc[92]][_0xd8dc[55]]);_0x9792x29[_0xd8dc[58]]= _[_0xd8dc[57]](_0x9792x28[_0xd8dc[58]]);_0x9792x29[_0xd8dc[59]]= _[_0xd8dc[60]](_0x9792x29[_0xd8dc[54]],_0x9792x29[_0xd8dc[58]]);_0x9792x1b[_0xd8dc[61]]= _[_0xd8dc[60]](_0x9792x29[_0xd8dc[54]],qs[_0xd8dc[62]](_0x9792x28[_0xd8dc[58]][_0xd8dc[62]]));_0x9792x1b[_0xd8dc[61]]= (_0x9792x1b[_0xd8dc[61]][_0xd8dc[63]])?_0x9792x1b[_0xd8dc[61]]:_0x9792x29[_0xd8dc[54]];_0x9792x1b[_0xd8dc[66]]= qs[_0xd8dc[67]](_0x9792x28[_0xd8dc[58]][_0xd8dc[67]]);_0x9792x1b[_0xd8dc[68]]= qs[_0xd8dc[59]](_[_0xd8dc[69]](_0x9792x28[_0xd8dc[58]],_0x9792x29[_0xd8dc[59]]));if(_0x9792x28[_0xd8dc[58]][_0xd8dc[70]]){_0x9792x1b[_0xd8dc[68]]= _[_0xd8dc[73]](_0x9792x1b[_0xd8dc[68]],{$or:_[_0xd8dc[72]](_0x9792x1b[_0xd8dc[61]],function(_0x9792x2a){var _0x9792x2b={};_0x9792x2b[_0x9792x2a]= {$like:_0xd8dc[71]+ _0x9792x28[_0xd8dc[58]][_0xd8dc[70]]+ _0xd8dc[71]};return _0x9792x2b})})};_0x9792x1b= _[_0xd8dc[73]]({},_0x9792x1b,_0x9792x28[_0xd8dc[74]]);return _0x9792x2d[_0xd8dc[97]](_0x9792x1b)}})[_0xd8dc[45]](function(_0x9792x2f){if(_0x9792x2f){_0x9792x1c= _0x9792x2f[_0xd8dc[63]];if(!_0x9792x28[_0xd8dc[58]][_0xd8dc[65]](_0xd8dc[64])){_0x9792x1b[_0xd8dc[35]]= qs[_0xd8dc[35]](_0x9792x28[_0xd8dc[58]][_0xd8dc[35]]);_0x9792x1b[_0xd8dc[34]]= qs[_0xd8dc[34]](_0x9792x28[_0xd8dc[58]][_0xd8dc[34]])};return _0x9792x2d[_0xd8dc[97]](_0x9792x1b)}})[_0xd8dc[45]](function(_0x9792x2e){return _0x9792x2e?{count:_0x9792x1c,rows:_0x9792x2e}:null})[_0xd8dc[45]](respondWithResult(_0x9792x18,null,_0xd8dc[97]))[_0xd8dc[75]](handleError(_0x9792x18,null,_0xd8dc[97]))}
\ No newline at end of file
+var _0xc43e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0xc43e[0];var jsonpatch=require(_0xc43e[1]);var rp=require(_0xc43e[2]);var moment=require(_0xc43e[3]);var BPromise=require(_0xc43e[4]);var util=require(_0xc43e[5]);var path=require(_0xc43e[6]);var sox=require(_0xc43e[7]);var ejs=require(_0xc43e[8]);var fs=require(_0xc43e[9]);var _=require(_0xc43e[10]);var squel=require(_0xc43e[11]);var crypto=require(_0xc43e[12]);var jsforce=require(_0xc43e[13]);var toCsv=require(_0xc43e[14]);var qs=require(_0xc43e[15]);var logger=require(_0xc43e[17])(_0xc43e[16]);var utils=require(_0xc43e[18]);var config=require(_0xc43e[19]);var db=require(_0xc43e[21])[_0xc43e[20]];function respondWithStatusCode(_0x6f1ax15,_0x6f1ax16,_0x6f1ax17){_0x6f1ax16= _0x6f1ax16|| 204;return function(_0x6f1ax18){if(_0x6f1ax18){logger[_0xc43e[24]](_0xc43e[22],_0x6f1ax17,_0x6f1ax16,_0xc43e[23]);logger[_0xc43e[26]](_0xc43e[25],_0x6f1ax17,_0x6f1ax16,_0xc43e[23]);return _0x6f1ax15[_0xc43e[27]](_0x6f1ax16)};return _0x6f1ax15[_0xc43e[29]](304)[_0xc43e[28]]()}}function respondWithResult(_0x6f1ax15,_0x6f1ax16,_0x6f1ax17){_0x6f1ax16= _0x6f1ax16|| 200;return function(_0x6f1ax18){if(_0x6f1ax18){logger[_0xc43e[24]](_0xc43e[22],_0x6f1ax17,_0x6f1ax16,_0xc43e[30]);logger[_0xc43e[26]](_0xc43e[25],_0x6f1ax17,_0x6f1ax16,_0xc43e[30],JSON[_0xc43e[31]](_0x6f1ax18));return _0x6f1ax15[_0xc43e[29]](_0x6f1ax16)[_0xc43e[32]](_0x6f1ax18)};return _0x6f1ax15[_0xc43e[29]](304)[_0xc43e[28]]()}}function respondWithFilteredResult(_0x6f1ax15,_0x6f1ax1b,_0x6f1ax17){return function(_0x6f1ax18){if(_0x6f1ax18){var _0x6f1ax1c=_0x6f1ax18[_0xc43e[33]],_0x6f1ax1d=_0x6f1ax1b[_0xc43e[34]],_0x6f1ax1e=_0x6f1ax1b[_0xc43e[34]]+ _0x6f1ax1b[_0xc43e[35]],_0x6f1ax16;if(_0x6f1ax1e>= _0x6f1ax1c){_0x6f1ax1e= _0x6f1ax1c;_0x6f1ax16= 200}else {_0x6f1ax16= 206};_0x6f1ax15[_0xc43e[29]](_0x6f1ax16);logger[_0xc43e[24]](_0xc43e[22],_0x6f1ax17,_0x6f1ax16,_0xc43e[36]);logger[_0xc43e[26]](_0xc43e[25],_0x6f1ax17,_0x6f1ax16,_0xc43e[30],JSON[_0xc43e[31]](_0x6f1ax18));return _0x6f1ax15[_0xc43e[40]](_0xc43e[37],_0x6f1ax1d+ _0xc43e[38]+ _0x6f1ax1e+ _0xc43e[39]+ _0x6f1ax1c)[_0xc43e[32]](_0x6f1ax18)};return null}}function patchUpdates(_0x6f1ax20){return function(_0x6f1ax18){try{jsonpatch[_0xc43e[41]](_0x6f1ax18,_0x6f1ax20,true)}catch(err){return BPromise[_0xc43e[42]](err)};return _0x6f1ax18[_0xc43e[43]]()}}function saveUpdates(_0x6f1ax22,_0x6f1ax16,_0x6f1ax17){return function(_0x6f1ax18){if(_0x6f1ax18){return _0x6f1ax18[_0xc43e[46]](_0x6f1ax22)[_0xc43e[45]](function(_0x6f1ax23){logger[_0xc43e[24]](_0xc43e[22],_0x6f1ax17,_0x6f1ax16,_0xc43e[44]);logger[_0xc43e[26]](_0xc43e[25],_0x6f1ax17,_0x6f1ax16,_0xc43e[44],JSON[_0xc43e[31]](_0x6f1ax18));return _0x6f1ax23})};return null}}function removeEntity(_0x6f1ax15,_0x6f1ax16,_0x6f1ax17){return function(_0x6f1ax18){if(_0x6f1ax18){return _0x6f1ax18[_0xc43e[48]]()[_0xc43e[45]](function(){logger[_0xc43e[24]](_0xc43e[22],_0x6f1ax17,_0x6f1ax16,_0xc43e[47]);logger[_0xc43e[26]](_0xc43e[25],_0x6f1ax17,_0x6f1ax16,_0xc43e[47],JSON[_0xc43e[31]](_0x6f1ax18));_0x6f1ax15[_0xc43e[29]](204)[_0xc43e[28]]()})}}}function handleEntityNotFound(_0x6f1ax15,_0x6f1ax16,_0x6f1ax17){return function(_0x6f1ax18){if(!_0x6f1ax18){logger[_0xc43e[50]](_0xc43e[22],_0x6f1ax17,404,_0xc43e[49]);_0x6f1ax15[_0xc43e[29]](404)[_0xc43e[28]]();return null};return _0x6f1ax18}}function handleError(_0x6f1ax15,_0x6f1ax16,_0x6f1ax17){_0x6f1ax16= _0x6f1ax16|| 500;return function(_0x6f1ax27){logger[_0xc43e[50]](_0xc43e[22],_0x6f1ax17,_0x6f1ax16,JSON[_0xc43e[31]](_0x6f1ax27));delete _0x6f1ax27[_0xc43e[51]];_0x6f1ax15[_0xc43e[29]](_0x6f1ax16)[_0xc43e[52]](_0x6f1ax27)}}exports[_0xc43e[53]]= function(_0x6f1ax28,_0x6f1ax15){var _0x6f1ax1b={},_0x6f1ax29={};_0x6f1ax29[_0xc43e[54]]= _[_0xc43e[57]](db[_0xc43e[56]][_0xc43e[55]]);_0x6f1ax29[_0xc43e[58]]= _[_0xc43e[57]](_0x6f1ax28[_0xc43e[58]]);_0x6f1ax29[_0xc43e[59]]= _[_0xc43e[60]](_0x6f1ax29[_0xc43e[54]],_0x6f1ax29[_0xc43e[58]]);_0x6f1ax1b[_0xc43e[61]]= _[_0xc43e[60]](_0x6f1ax29[_0xc43e[54]],qs[_0xc43e[62]](_0x6f1ax28[_0xc43e[58]][_0xc43e[62]]));_0x6f1ax1b[_0xc43e[61]]= (_0x6f1ax1b[_0xc43e[61]][_0xc43e[63]])?_0x6f1ax1b[_0xc43e[61]]:_0x6f1ax29[_0xc43e[54]];if(!_0x6f1ax28[_0xc43e[58]][_0xc43e[65]](_0xc43e[64])){_0x6f1ax1b[_0xc43e[35]]= qs[_0xc43e[35]](_0x6f1ax28[_0xc43e[58]][_0xc43e[35]]);_0x6f1ax1b[_0xc43e[34]]= qs[_0xc43e[34]](_0x6f1ax28[_0xc43e[58]][_0xc43e[34]])};_0x6f1ax1b[_0xc43e[66]]= qs[_0xc43e[67]](_0x6f1ax28[_0xc43e[58]][_0xc43e[67]]);_0x6f1ax1b[_0xc43e[68]]= qs[_0xc43e[59]](_[_0xc43e[69]](_0x6f1ax28[_0xc43e[58]],_0x6f1ax29[_0xc43e[59]]));if(_0x6f1ax28[_0xc43e[58]][_0xc43e[70]]){_0x6f1ax1b[_0xc43e[68]]= _[_0xc43e[73]](_0x6f1ax1b[_0xc43e[68]],{$or:_[_0xc43e[72]](_0x6f1ax1b[_0xc43e[61]],function(_0x6f1ax2a){var _0x6f1ax2b={};_0x6f1ax2b[_0x6f1ax2a]= {$like:_0xc43e[71]+ _0x6f1ax28[_0xc43e[58]][_0xc43e[70]]+ _0xc43e[71]};return _0x6f1ax2b})})};_0x6f1ax1b= _[_0xc43e[73]]({},_0x6f1ax1b,_0x6f1ax28[_0xc43e[74]]);return db[_0xc43e[56]][_0xc43e[76]](_0x6f1ax1b)[_0xc43e[45]](respondWithFilteredResult(_0x6f1ax15,_0x6f1ax1b,_0xc43e[53]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[53]))};exports[_0xc43e[77]]= function(_0x6f1ax28,_0x6f1ax15){var _0x6f1ax1b={raw:true,where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}},_0x6f1ax29={};_0x6f1ax29[_0xc43e[54]]= _[_0xc43e[57]](db[_0xc43e[56]][_0xc43e[55]]);_0x6f1ax29[_0xc43e[58]]= _[_0xc43e[57]](_0x6f1ax28[_0xc43e[58]]);_0x6f1ax29[_0xc43e[59]]= _[_0xc43e[60]](_0x6f1ax29[_0xc43e[54]],_0x6f1ax29[_0xc43e[58]]);_0x6f1ax1b[_0xc43e[61]]= _[_0xc43e[60]](_0x6f1ax29[_0xc43e[54]],qs[_0xc43e[62]](_0x6f1ax28[_0xc43e[58]][_0xc43e[62]]));_0x6f1ax1b[_0xc43e[61]]= (_0x6f1ax1b[_0xc43e[61]][_0xc43e[63]])?_0x6f1ax1b[_0xc43e[61]]:_0x6f1ax29[_0xc43e[54]];_0x6f1ax1b= _[_0xc43e[73]]({},_0x6f1ax1b,_0x6f1ax28[_0xc43e[74]]);return db[_0xc43e[56]][_0xc43e[80]](_0x6f1ax1b)[_0xc43e[45]](handleEntityNotFound(_0x6f1ax15,null,_0xc43e[77]))[_0xc43e[45]](respondWithResult(_0x6f1ax15,null,_0xc43e[77]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[77]))};exports[_0xc43e[81]]= function(_0x6f1ax28,_0x6f1ax15){return db[_0xc43e[56]][_0xc43e[81]](_0x6f1ax28[_0xc43e[82]],{})[_0xc43e[45]](respondWithResult(_0x6f1ax15,201,_0xc43e[81]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[81]))};exports[_0xc43e[46]]= function(_0x6f1ax28,_0x6f1ax15){if(_0x6f1ax28[_0xc43e[82]][_0xc43e[78]]){delete _0x6f1ax28[_0xc43e[82]][_0xc43e[78]]};return db[_0xc43e[56]][_0xc43e[80]]({where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}})[_0xc43e[45]](handleEntityNotFound(_0x6f1ax15,null,_0xc43e[46]))[_0xc43e[45]](saveUpdates(_0x6f1ax28[_0xc43e[82]],null,_0xc43e[46]))[_0xc43e[45]](respondWithResult(_0x6f1ax15,null,_0xc43e[46]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[46]))};exports[_0xc43e[48]]= function(_0x6f1ax28,_0x6f1ax15){return db[_0xc43e[56]][_0xc43e[80]]({where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}})[_0xc43e[45]](handleEntityNotFound(_0x6f1ax15,null,_0xc43e[48]))[_0xc43e[45]](removeEntity(_0x6f1ax15,null,_0xc43e[48]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[48]))};exports[_0xc43e[83]]= function(_0x6f1ax28,_0x6f1ax18,_0x6f1ax2c){var _0x6f1ax1b={};var _0x6f1ax29={};var _0x6f1ax2d;var _0x6f1ax1c;return db[_0xc43e[56]][_0xc43e[85]]({where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}})[_0xc43e[45]](handleEntityNotFound(_0x6f1ax18,null,_0xc43e[83]))[_0xc43e[45]](function(_0x6f1ax18){if(_0x6f1ax18){_0x6f1ax2d= _0x6f1ax18;_0x6f1ax29[_0xc43e[54]]= _[_0xc43e[57]](db[_0xc43e[84]][_0xc43e[55]]);_0x6f1ax29[_0xc43e[58]]= _[_0xc43e[57]](_0x6f1ax28[_0xc43e[58]]);_0x6f1ax29[_0xc43e[59]]= _[_0xc43e[60]](_0x6f1ax29[_0xc43e[54]],_0x6f1ax29[_0xc43e[58]]);_0x6f1ax1b[_0xc43e[61]]= _[_0xc43e[60]](_0x6f1ax29[_0xc43e[54]],qs[_0xc43e[62]](_0x6f1ax28[_0xc43e[58]][_0xc43e[62]]));_0x6f1ax1b[_0xc43e[61]]= (_0x6f1ax1b[_0xc43e[61]][_0xc43e[63]])?_0x6f1ax1b[_0xc43e[61]]:_0x6f1ax29[_0xc43e[54]];_0x6f1ax1b[_0xc43e[66]]= qs[_0xc43e[67]](_0x6f1ax28[_0xc43e[58]][_0xc43e[67]]);_0x6f1ax1b[_0xc43e[68]]= qs[_0xc43e[59]](_[_0xc43e[69]](_0x6f1ax28[_0xc43e[58]],_0x6f1ax29[_0xc43e[59]]));if(_0x6f1ax28[_0xc43e[58]][_0xc43e[70]]){_0x6f1ax1b[_0xc43e[68]]= _[_0xc43e[73]](_0x6f1ax1b[_0xc43e[68]],{$or:_[_0xc43e[72]](_0x6f1ax1b[_0xc43e[61]],function(_0x6f1ax2a){var _0x6f1ax2b={};_0x6f1ax2b[_0x6f1ax2a]= {$like:_0xc43e[71]+ _0x6f1ax28[_0xc43e[58]][_0xc43e[70]]+ _0xc43e[71]};return _0x6f1ax2b})})};_0x6f1ax1b= _[_0xc43e[73]]({},_0x6f1ax1b,_0x6f1ax28[_0xc43e[74]]);return _0x6f1ax2d[_0xc43e[83]](_0x6f1ax1b)}})[_0xc43e[45]](function(_0x6f1ax2f){if(_0x6f1ax2f){_0x6f1ax1c= _0x6f1ax2f[_0xc43e[63]];if(!_0x6f1ax28[_0xc43e[58]][_0xc43e[65]](_0xc43e[64])){_0x6f1ax1b[_0xc43e[35]]= qs[_0xc43e[35]](_0x6f1ax28[_0xc43e[58]][_0xc43e[35]]);_0x6f1ax1b[_0xc43e[34]]= qs[_0xc43e[34]](_0x6f1ax28[_0xc43e[58]][_0xc43e[34]])};return _0x6f1ax2d[_0xc43e[83]](_0x6f1ax1b)}})[_0xc43e[45]](function(_0x6f1ax2e){return _0x6f1ax2e?{count:_0x6f1ax1c,rows:_0x6f1ax2e}:null})[_0xc43e[45]](respondWithResult(_0x6f1ax18,null,_0xc43e[83]))[_0xc43e[75]](handleError(_0x6f1ax18,null,_0xc43e[83]))};exports[_0xc43e[86]]= function(_0x6f1ax28,_0x6f1ax15,_0x6f1ax2c){var _0x6f1ax30=[];var _0x6f1ax31;return db[_0xc43e[84]][_0xc43e[93]]({where:{id:_0x6f1ax28[_0xc43e[82]][_0xc43e[87]]},attributes:[_0xc43e[78]],include:[{model:db[_0xc43e[92]],as:_0xc43e[90],attributes:[_0xc43e[78]],raw:true}]})[_0xc43e[45]](function(_0x6f1ax34){if(_0x6f1ax34){for(var _0x6f1ax35=0;_0x6f1ax35< _0x6f1ax34[_0xc43e[63]];_0x6f1ax35+= 1){for(var _0x6f1ax36=0;_0x6f1ax36< _0x6f1ax34[_0x6f1ax35][_0xc43e[90]][_0xc43e[63]];_0x6f1ax36+= 1){_0x6f1ax30= _[_0xc43e[91]](_0x6f1ax30,[_0x6f1ax34[_0x6f1ax35][_0xc43e[90]][_0x6f1ax36][_0xc43e[78]]])}};return _0x6f1ax30}})[_0xc43e[45]](function(_0x6f1ax33){if(_0x6f1ax33){return db[_0xc43e[56]][_0xc43e[80]]({where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}})}})[_0xc43e[45]](function(_0x6f1ax32){if(_0x6f1ax32){_0x6f1ax31= _0x6f1ax32;return _0x6f1ax31[_0xc43e[89]](_0x6f1ax30,{penalty:_0x6f1ax28[_0xc43e[82]][_0xc43e[88]]})}})[_0xc43e[45]](function(_0x6f1ax18){if(_0x6f1ax18){return _0x6f1ax31[_0xc43e[86]](_0x6f1ax28[_0xc43e[82]][_0xc43e[87]])}})[_0xc43e[45]](handleEntityNotFound(_0x6f1ax15,null,_0xc43e[86]))[_0xc43e[45]](respondWithStatusCode(_0x6f1ax15,null,_0xc43e[86]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[86]))};exports[_0xc43e[94]]= function(_0x6f1ax28,_0x6f1ax15,_0x6f1ax2c){var _0x6f1ax30=[];var _0x6f1ax31;return db[_0xc43e[84]][_0xc43e[93]]({where:{id:_0x6f1ax28[_0xc43e[58]][_0xc43e[87]]},attributes:[_0xc43e[78]],include:[{model:db[_0xc43e[92]],as:_0xc43e[90],attributes:[_0xc43e[78]],raw:true}]})[_0xc43e[45]](function(_0x6f1ax34){if(_0x6f1ax34){for(var _0x6f1ax35=0;_0x6f1ax35< _0x6f1ax34[_0xc43e[63]];_0x6f1ax35+= 1){for(var _0x6f1ax36=0;_0x6f1ax36< _0x6f1ax34[_0x6f1ax35][_0xc43e[90]][_0xc43e[63]];_0x6f1ax36+= 1){_0x6f1ax30= _[_0xc43e[91]](_0x6f1ax30,[_0x6f1ax34[_0x6f1ax35][_0xc43e[90]][_0x6f1ax36][_0xc43e[78]]])}};return _0x6f1ax30}})[_0xc43e[45]](function(_0x6f1ax33){if(_0x6f1ax33){return db[_0xc43e[56]][_0xc43e[80]]({where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}})}})[_0xc43e[45]](function(_0x6f1ax32){if(_0x6f1ax32){_0x6f1ax31= _0x6f1ax32;return _0x6f1ax31[_0xc43e[95]](_0x6f1ax30)}})[_0xc43e[45]](function(_0x6f1ax18){if(_0x6f1ax31){return _0x6f1ax31[_0xc43e[94]](_0x6f1ax28[_0xc43e[58]][_0xc43e[87]])}})[_0xc43e[45]](handleEntityNotFound(_0x6f1ax15,null,_0xc43e[94]))[_0xc43e[45]](respondWithStatusCode(_0x6f1ax15,null,_0xc43e[94]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[94]))};exports[_0xc43e[89]]= function(_0x6f1ax28,_0x6f1ax15,_0x6f1ax2c){return db[_0xc43e[56]][_0xc43e[80]]({where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}})[_0xc43e[45]](handleEntityNotFound(_0x6f1ax15,null,_0xc43e[89]))[_0xc43e[45]](function(_0x6f1ax18){if(_0x6f1ax18){return _0x6f1ax18[_0xc43e[89]](_0x6f1ax28[_0xc43e[82]][_0xc43e[87]],_[_0xc43e[96]](_0x6f1ax28[_0xc43e[82]],[_0xc43e[87],_0xc43e[78]])|| {})};return null})[_0xc43e[45]](respondWithResult(_0x6f1ax15,null,_0xc43e[89]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[89]))};exports[_0xc43e[95]]= function(_0x6f1ax28,_0x6f1ax15,_0x6f1ax2c){var _0x6f1ax2f;return db[_0xc43e[56]][_0xc43e[80]]({where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}})[_0xc43e[45]](handleEntityNotFound(_0x6f1ax15,null,_0xc43e[95]))[_0xc43e[45]](function(_0x6f1ax18){if(_0x6f1ax18){return _0x6f1ax18[_0xc43e[95]](_0x6f1ax28[_0xc43e[58]][_0xc43e[87]])}})[_0xc43e[45]](respondWithStatusCode(_0x6f1ax15,null,_0xc43e[95]))[_0xc43e[75]](handleError(_0x6f1ax15,null,_0xc43e[95]))};exports[_0xc43e[97]]= function(_0x6f1ax28,_0x6f1ax18,_0x6f1ax2c){var _0x6f1ax1b={};var _0x6f1ax29={};var _0x6f1ax2d;var _0x6f1ax1c;return db[_0xc43e[56]][_0xc43e[85]]({where:{id:_0x6f1ax28[_0xc43e[79]][_0xc43e[78]]}})[_0xc43e[45]](handleEntityNotFound(_0x6f1ax18,null,_0xc43e[97]))[_0xc43e[45]](function(_0x6f1ax18){if(_0x6f1ax18){_0x6f1ax2d= _0x6f1ax18;_0x6f1ax29[_0xc43e[54]]= _[_0xc43e[57]](db[_0xc43e[92]][_0xc43e[55]]);_0x6f1ax29[_0xc43e[58]]= _[_0xc43e[57]](_0x6f1ax28[_0xc43e[58]]);_0x6f1ax29[_0xc43e[59]]= _[_0xc43e[60]](_0x6f1ax29[_0xc43e[54]],_0x6f1ax29[_0xc43e[58]]);_0x6f1ax1b[_0xc43e[61]]= _[_0xc43e[60]](_0x6f1ax29[_0xc43e[54]],qs[_0xc43e[62]](_0x6f1ax28[_0xc43e[58]][_0xc43e[62]]));_0x6f1ax1b[_0xc43e[61]]= (_0x6f1ax1b[_0xc43e[61]][_0xc43e[63]])?_0x6f1ax1b[_0xc43e[61]]:_0x6f1ax29[_0xc43e[54]];_0x6f1ax1b[_0xc43e[66]]= qs[_0xc43e[67]](_0x6f1ax28[_0xc43e[58]][_0xc43e[67]]);_0x6f1ax1b[_0xc43e[68]]= qs[_0xc43e[59]](_[_0xc43e[69]](_0x6f1ax28[_0xc43e[58]],_0x6f1ax29[_0xc43e[59]]));if(_0x6f1ax28[_0xc43e[58]][_0xc43e[70]]){_0x6f1ax1b[_0xc43e[68]]= _[_0xc43e[73]](_0x6f1ax1b[_0xc43e[68]],{$or:_[_0xc43e[72]](_0x6f1ax1b[_0xc43e[61]],function(_0x6f1ax2a){var _0x6f1ax2b={};_0x6f1ax2b[_0x6f1ax2a]= {$like:_0xc43e[71]+ _0x6f1ax28[_0xc43e[58]][_0xc43e[70]]+ _0xc43e[71]};return _0x6f1ax2b})})};_0x6f1ax1b= _[_0xc43e[73]]({},_0x6f1ax1b,_0x6f1ax28[_0xc43e[74]]);return _0x6f1ax2d[_0xc43e[97]](_0x6f1ax1b)}})[_0xc43e[45]](function(_0x6f1ax2f){if(_0x6f1ax2f){_0x6f1ax1c= _0x6f1ax2f[_0xc43e[63]];if(!_0x6f1ax28[_0xc43e[58]][_0xc43e[65]](_0xc43e[64])){_0x6f1ax1b[_0xc43e[35]]= qs[_0xc43e[35]](_0x6f1ax28[_0xc43e[58]][_0xc43e[35]]);_0x6f1ax1b[_0xc43e[34]]= qs[_0xc43e[34]](_0x6f1ax28[_0xc43e[58]][_0xc43e[34]])};return _0x6f1ax2d[_0xc43e[97]](_0x6f1ax1b)}})[_0xc43e[45]](function(_0x6f1ax2e){return _0x6f1ax2e?{count:_0x6f1ax1c,rows:_0x6f1ax2e}:null})[_0xc43e[45]](respondWithResult(_0x6f1ax18,null,_0xc43e[97]))[_0xc43e[75]](handleError(_0x6f1ax18,null,_0xc43e[97]))}
\ No newline at end of file
index 1804d51..b4d5322 100644 (file)
@@ -1 +1 @@
-var _0xd277=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x6D\x61\x69\x6C\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xd277[0];var _=require(_0xd277[1]);var util=require(_0xd277[2]);var logger=require(_0xd277[4])(_0xd277[3]);var attributes=require(_0xd277[5]);module[_0xd277[6]]= function(_0x640ex5,_0x640ex6){return _0x640ex5[_0xd277[9]](_0xd277[7],attributes,{tableName:_0xd277[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4f3f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x6D\x61\x69\x6C\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x4f3f[0];var _=require(_0x4f3f[1]);var util=require(_0x4f3f[2]);var logger=require(_0x4f3f[4])(_0x4f3f[3]);var attributes=require(_0x4f3f[5]);module[_0x4f3f[6]]= function(_0x4d82x5,_0x4d82x6){return _0x4d82x5[_0x4f3f[9]](_0x4f3f[7],attributes,{tableName:_0x4f3f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 99e40fe..7166486 100644 (file)
@@ -1 +1 @@
-var _0x5145=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x5145[0];var _=require(_0x5145[1]);var util=require(_0x5145[2]);var moment=require(_0x5145[3]);var BPromise=require(_0x5145[4]);var db=require(_0x5145[6])[_0x5145[5]];var utils=require(_0x5145[7]);var logger=require(_0x5145[9])(_0x5145[8]);var jayson=require(_0x5145[10]);var client=jayson[_0x5145[12]][_0x5145[11]]({port:9002});function respondWithRpcPromise(_0xf7f2xb,_0xf7f2xc,_0xf7f2xd){return  new BPromise(function(_0xf7f2xe,_0xf7f2xf){return client[_0x5145[25]](_0xf7f2xb,_0xf7f2xd)[_0x5145[24]](function(_0xf7f2x11){logger[_0x5145[17]](_0x5145[13],_0xf7f2xc,_0x5145[16]);logger[_0x5145[20]](_0x5145[18],_0xf7f2xc,_0x5145[16],JSON[_0x5145[19]](_0xf7f2x11));if(_0xf7f2x11[_0x5145[14]]){if(_0xf7f2x11[_0x5145[14]][_0x5145[21]]=== 500){logger[_0x5145[14]](_0x5145[13],_0xf7f2xc,_0xf7f2x11[_0x5145[14]][_0x5145[22]]);return _0xf7f2xf(_0xf7f2x11[_0x5145[14]][_0x5145[22]])};logger[_0x5145[14]](_0x5145[13],_0xf7f2xc,_0xf7f2x11[_0x5145[14]][_0x5145[22]]);return _0xf7f2xe(_0xf7f2x11[_0x5145[14]][_0x5145[22]])}else {logger[_0x5145[17]](_0x5145[13],_0xf7f2xc,_0x5145[16]);_0xf7f2xe(_0xf7f2x11[_0x5145[23]][_0x5145[22]])}})[_0x5145[15]](function(_0xf7f2x10){logger[_0x5145[14]](_0x5145[13],_0xf7f2xc,_0xf7f2x10);_0xf7f2xf(_0xf7f2x10)})})}
\ No newline at end of file
+var _0xdcd2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xdcd2[0];var _=require(_0xdcd2[1]);var util=require(_0xdcd2[2]);var moment=require(_0xdcd2[3]);var BPromise=require(_0xdcd2[4]);var db=require(_0xdcd2[6])[_0xdcd2[5]];var utils=require(_0xdcd2[7]);var logger=require(_0xdcd2[9])(_0xdcd2[8]);var jayson=require(_0xdcd2[10]);var client=jayson[_0xdcd2[12]][_0xdcd2[11]]({port:9002});function respondWithRpcPromise(_0x834exb,_0x834exc,_0x834exd){return  new BPromise(function(_0x834exe,_0x834exf){return client[_0xdcd2[25]](_0x834exb,_0x834exd)[_0xdcd2[24]](function(_0x834ex11){logger[_0xdcd2[17]](_0xdcd2[13],_0x834exc,_0xdcd2[16]);logger[_0xdcd2[20]](_0xdcd2[18],_0x834exc,_0xdcd2[16],JSON[_0xdcd2[19]](_0x834ex11));if(_0x834ex11[_0xdcd2[14]]){if(_0x834ex11[_0xdcd2[14]][_0xdcd2[21]]=== 500){logger[_0xdcd2[14]](_0xdcd2[13],_0x834exc,_0x834ex11[_0xdcd2[14]][_0xdcd2[22]]);return _0x834exf(_0x834ex11[_0xdcd2[14]][_0xdcd2[22]])};logger[_0xdcd2[14]](_0xdcd2[13],_0x834exc,_0x834ex11[_0xdcd2[14]][_0xdcd2[22]]);return _0x834exe(_0x834ex11[_0xdcd2[14]][_0xdcd2[22]])}else {logger[_0xdcd2[17]](_0xdcd2[13],_0x834exc,_0xdcd2[16]);_0x834exe(_0x834ex11[_0xdcd2[23]][_0xdcd2[22]])}})[_0xdcd2[15]](function(_0x834ex10){logger[_0xdcd2[14]](_0xdcd2[13],_0x834exc,_0x834ex10);_0x834exf(_0x834ex10)})})}
\ No newline at end of file
index b27e541..2cb92ea 100644 (file)
@@ -1 +1 @@
-var _0x9462=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x9462[0];var multer=require(_0x9462[1]);var util=require(_0x9462[2]);var path=require(_0x9462[3]);var express=require(_0x9462[4]);var router=express.Router();var auth=require(_0x9462[5]);var config=require(_0x9462[6]);var controller=require(_0x9462[7]);router[_0x9462[11]](_0x9462[8],auth[_0x9462[9]](),controller[_0x9462[10]]);router[_0x9462[11]](_0x9462[12],auth[_0x9462[9]](),controller[_0x9462[13]]);router[_0x9462[15]](_0x9462[8],auth[_0x9462[9]](),controller[_0x9462[14]]);router[_0x9462[17]](_0x9462[12],auth[_0x9462[9]](),controller[_0x9462[16]]);router[_0x9462[19]](_0x9462[12],auth[_0x9462[9]](),controller[_0x9462[18]]);module[_0x9462[20]]= router
\ No newline at end of file
+var _0xa260=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa260[0];var multer=require(_0xa260[1]);var util=require(_0xa260[2]);var path=require(_0xa260[3]);var express=require(_0xa260[4]);var router=express.Router();var auth=require(_0xa260[5]);var config=require(_0xa260[6]);var controller=require(_0xa260[7]);router[_0xa260[11]](_0xa260[8],auth[_0xa260[9]](),controller[_0xa260[10]]);router[_0xa260[11]](_0xa260[12],auth[_0xa260[9]](),controller[_0xa260[13]]);router[_0xa260[15]](_0xa260[8],auth[_0xa260[9]](),controller[_0xa260[14]]);router[_0xa260[17]](_0xa260[12],auth[_0xa260[9]](),controller[_0xa260[16]]);router[_0xa260[19]](_0xa260[12],auth[_0xa260[9]](),controller[_0xa260[18]]);module[_0xa260[20]]= router
\ No newline at end of file
index 049a18e..4e8ab79 100644 (file)
@@ -1 +1 @@
-var _0xd3ab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0xd3ab[0];var Sequelize=require(_0xd3ab[1]);var moment=require(_0xd3ab[2]);module[_0xd3ab[3]]= {sourceid:{type:Sequelize[_0xd3ab[4]]},uniqueid:{type:Sequelize[_0xd3ab[5]]},timeslot:{type:Sequelize[_0xd3ab[4]]},subject:{type:Sequelize[_0xd3ab[5]]},accountid:{type:Sequelize[_0xd3ab[5]]},accountname:{type:Sequelize[_0xd3ab[5]]},accountaddress:{type:Sequelize[_0xd3ab[5]]},application:{type:Sequelize[_0xd3ab[5]]},memberid:{type:Sequelize[_0xd3ab[4]]},membername:{type:Sequelize[_0xd3ab[5]]},queue:{type:Sequelize[_0xd3ab[4]]},queuename:{type:Sequelize[_0xd3ab[5]]},roomid:{type:Sequelize[_0xd3ab[4]]},messageid:{type:Sequelize[_0xd3ab[4]]},reason:{type:Sequelize[_0xd3ab[5]],defaultValue:_0xd3ab[6]},connectid:{type:Sequelize[_0xd3ab[5]],unique:_0xd3ab[7],set:function(_0xb1b2x3){this[_0xd3ab[8]](_0xd3ab[7],_0xb1b2x3);this[_0xd3ab[8]](_0xd3ab[9],_0xd3ab[10]);this[_0xd3ab[8]](_0xd3ab[11],moment()[_0xd3ab[13]](_0xd3ab[12]))}},calledAt:{type:Sequelize[_0xd3ab[14]]},rejectedAt:{type:Sequelize[_0xd3ab[14]],set:function(_0xb1b2x4){this[_0xd3ab[8]](_0xd3ab[15],_0xb1b2x4);this[_0xd3ab[8]](_0xd3ab[9],_0xd3ab[16])}},connectedAt:{type:Sequelize[_0xd3ab[14]]},from:{type:Sequelize[_0xd3ab[5]]}}
\ No newline at end of file
+var _0xb795=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0xb795[0];var Sequelize=require(_0xb795[1]);var moment=require(_0xb795[2]);module[_0xb795[3]]= {sourceid:{type:Sequelize[_0xb795[4]]},uniqueid:{type:Sequelize[_0xb795[5]]},timeslot:{type:Sequelize[_0xb795[4]]},subject:{type:Sequelize[_0xb795[5]]},accountid:{type:Sequelize[_0xb795[5]]},accountname:{type:Sequelize[_0xb795[5]]},accountaddress:{type:Sequelize[_0xb795[5]]},application:{type:Sequelize[_0xb795[5]]},memberid:{type:Sequelize[_0xb795[4]]},membername:{type:Sequelize[_0xb795[5]]},queue:{type:Sequelize[_0xb795[4]]},queuename:{type:Sequelize[_0xb795[5]]},roomid:{type:Sequelize[_0xb795[4]]},messageid:{type:Sequelize[_0xb795[4]]},reason:{type:Sequelize[_0xb795[5]],defaultValue:_0xb795[6]},connectid:{type:Sequelize[_0xb795[5]],unique:_0xb795[7],set:function(_0x5b63x3){this[_0xb795[8]](_0xb795[7],_0x5b63x3);this[_0xb795[8]](_0xb795[9],_0xb795[10]);this[_0xb795[8]](_0xb795[11],moment()[_0xb795[13]](_0xb795[12]))}},calledAt:{type:Sequelize[_0xb795[14]]},rejectedAt:{type:Sequelize[_0xb795[14]],set:function(_0x5b63x4){this[_0xb795[8]](_0xb795[15],_0x5b63x4);this[_0xb795[8]](_0xb795[9],_0xb795[16])}},connectedAt:{type:Sequelize[_0xb795[14]]},from:{type:Sequelize[_0xb795[5]]}}
\ No newline at end of file
index 6a79f61..621316c 100644 (file)
@@ -1 +1 @@
-var _0x4fa1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x4fa1[0];var jsonpatch=require(_0x4fa1[1]);var rp=require(_0x4fa1[2]);var moment=require(_0x4fa1[3]);var BPromise=require(_0x4fa1[4]);var util=require(_0x4fa1[5]);var path=require(_0x4fa1[6]);var sox=require(_0x4fa1[7]);var ejs=require(_0x4fa1[8]);var fs=require(_0x4fa1[9]);var _=require(_0x4fa1[10]);var squel=require(_0x4fa1[11]);var crypto=require(_0x4fa1[12]);var jsforce=require(_0x4fa1[13]);var toCsv=require(_0x4fa1[14]);var qs=require(_0x4fa1[15]);var logger=require(_0x4fa1[17])(_0x4fa1[16]);var utils=require(_0x4fa1[18]);var config=require(_0x4fa1[19]);var db=require(_0x4fa1[21])[_0x4fa1[20]];function respondWithStatusCode(_0x6f26x15,_0x6f26x16,_0x6f26x17){_0x6f26x16= _0x6f26x16|| 204;return function(_0x6f26x18){if(_0x6f26x18){logger[_0x4fa1[24]](_0x4fa1[22],_0x6f26x17,_0x6f26x16,_0x4fa1[23]);logger[_0x4fa1[26]](_0x4fa1[25],_0x6f26x17,_0x6f26x16,_0x4fa1[23]);return _0x6f26x15[_0x4fa1[27]](_0x6f26x16)};return _0x6f26x15[_0x4fa1[29]](304)[_0x4fa1[28]]()}}function respondWithResult(_0x6f26x15,_0x6f26x16,_0x6f26x17){_0x6f26x16= _0x6f26x16|| 200;return function(_0x6f26x18){if(_0x6f26x18){logger[_0x4fa1[24]](_0x4fa1[22],_0x6f26x17,_0x6f26x16,_0x4fa1[30]);logger[_0x4fa1[26]](_0x4fa1[25],_0x6f26x17,_0x6f26x16,_0x4fa1[30],JSON[_0x4fa1[31]](_0x6f26x18));return _0x6f26x15[_0x4fa1[29]](_0x6f26x16)[_0x4fa1[32]](_0x6f26x18)};return _0x6f26x15[_0x4fa1[29]](304)[_0x4fa1[28]]()}}function respondWithFilteredResult(_0x6f26x15,_0x6f26x1b,_0x6f26x17){return function(_0x6f26x18){if(_0x6f26x18){var _0x6f26x1c=_0x6f26x18[_0x4fa1[33]],_0x6f26x1d=_0x6f26x1b[_0x4fa1[34]],_0x6f26x1e=_0x6f26x1b[_0x4fa1[34]]+ _0x6f26x1b[_0x4fa1[35]],_0x6f26x16;if(_0x6f26x1e>= _0x6f26x1c){_0x6f26x1e= _0x6f26x1c;_0x6f26x16= 200}else {_0x6f26x16= 206};_0x6f26x15[_0x4fa1[29]](_0x6f26x16);logger[_0x4fa1[24]](_0x4fa1[22],_0x6f26x17,_0x6f26x16,_0x4fa1[36]);logger[_0x4fa1[26]](_0x4fa1[25],_0x6f26x17,_0x6f26x16,_0x4fa1[30],JSON[_0x4fa1[31]](_0x6f26x18));return _0x6f26x15[_0x4fa1[40]](_0x4fa1[37],_0x6f26x1d+ _0x4fa1[38]+ _0x6f26x1e+ _0x4fa1[39]+ _0x6f26x1c)[_0x4fa1[32]](_0x6f26x18)};return null}}function patchUpdates(_0x6f26x20){return function(_0x6f26x18){try{jsonpatch[_0x4fa1[41]](_0x6f26x18,_0x6f26x20,true)}catch(err){return BPromise[_0x4fa1[42]](err)};return _0x6f26x18[_0x4fa1[43]]()}}function saveUpdates(_0x6f26x22,_0x6f26x16,_0x6f26x17){return function(_0x6f26x18){if(_0x6f26x18){return _0x6f26x18[_0x4fa1[46]](_0x6f26x22)[_0x4fa1[45]](function(_0x6f26x23){logger[_0x4fa1[24]](_0x4fa1[22],_0x6f26x17,_0x6f26x16,_0x4fa1[44]);logger[_0x4fa1[26]](_0x4fa1[25],_0x6f26x17,_0x6f26x16,_0x4fa1[44],JSON[_0x4fa1[31]](_0x6f26x18));return _0x6f26x23})};return null}}function removeEntity(_0x6f26x15,_0x6f26x16,_0x6f26x17){return function(_0x6f26x18){if(_0x6f26x18){return _0x6f26x18[_0x4fa1[48]]()[_0x4fa1[45]](function(){logger[_0x4fa1[24]](_0x4fa1[22],_0x6f26x17,_0x6f26x16,_0x4fa1[47]);logger[_0x4fa1[26]](_0x4fa1[25],_0x6f26x17,_0x6f26x16,_0x4fa1[47],JSON[_0x4fa1[31]](_0x6f26x18));_0x6f26x15[_0x4fa1[29]](204)[_0x4fa1[28]]()})}}}function handleEntityNotFound(_0x6f26x15,_0x6f26x16,_0x6f26x17){return function(_0x6f26x18){if(!_0x6f26x18){logger[_0x4fa1[50]](_0x4fa1[22],_0x6f26x17,404,_0x4fa1[49]);_0x6f26x15[_0x4fa1[29]](404)[_0x4fa1[28]]();return null};return _0x6f26x18}}function handleError(_0x6f26x15,_0x6f26x16,_0x6f26x17){_0x6f26x16= _0x6f26x16|| 500;return function(_0x6f26x27){logger[_0x4fa1[50]](_0x4fa1[22],_0x6f26x17,_0x6f26x16,JSON[_0x4fa1[31]](_0x6f26x27));delete _0x6f26x27[_0x4fa1[51]];_0x6f26x15[_0x4fa1[29]](_0x6f26x16)[_0x4fa1[52]](_0x6f26x27)}}exports[_0x4fa1[53]]= function(_0x6f26x28,_0x6f26x15){var _0x6f26x1b={},_0x6f26x29={};_0x6f26x29[_0x4fa1[54]]= _[_0x4fa1[57]](db[_0x4fa1[56]][_0x4fa1[55]]);_0x6f26x29[_0x4fa1[58]]= _[_0x4fa1[57]](_0x6f26x28[_0x4fa1[58]]);_0x6f26x29[_0x4fa1[59]]= _[_0x4fa1[60]](_0x6f26x29[_0x4fa1[54]],_0x6f26x29[_0x4fa1[58]]);_0x6f26x1b[_0x4fa1[61]]= _[_0x4fa1[60]](_0x6f26x29[_0x4fa1[54]],qs[_0x4fa1[62]](_0x6f26x28[_0x4fa1[58]][_0x4fa1[62]]));_0x6f26x1b[_0x4fa1[61]]= (_0x6f26x1b[_0x4fa1[61]][_0x4fa1[63]])?_0x6f26x1b[_0x4fa1[61]]:_0x6f26x29[_0x4fa1[54]];if(!_0x6f26x28[_0x4fa1[58]][_0x4fa1[65]](_0x4fa1[64])){_0x6f26x1b[_0x4fa1[35]]= qs[_0x4fa1[35]](_0x6f26x28[_0x4fa1[58]][_0x4fa1[35]]);_0x6f26x1b[_0x4fa1[34]]= qs[_0x4fa1[34]](_0x6f26x28[_0x4fa1[58]][_0x4fa1[34]])};_0x6f26x1b[_0x4fa1[66]]= qs[_0x4fa1[67]](_0x6f26x28[_0x4fa1[58]][_0x4fa1[67]]);_0x6f26x1b[_0x4fa1[68]]= qs[_0x4fa1[59]](_[_0x4fa1[69]](_0x6f26x28[_0x4fa1[58]],_0x6f26x29[_0x4fa1[59]]));if(_0x6f26x28[_0x4fa1[58]][_0x4fa1[70]]){_0x6f26x1b[_0x4fa1[68]]= _[_0x4fa1[73]](_0x6f26x1b[_0x4fa1[68]],{$or:_[_0x4fa1[72]](_0x6f26x1b[_0x4fa1[61]],function(_0x6f26x2a){var _0x6f26x2b={};_0x6f26x2b[_0x6f26x2a]= {$like:_0x4fa1[71]+ _0x6f26x28[_0x4fa1[58]][_0x4fa1[70]]+ _0x4fa1[71]};return _0x6f26x2b})})};_0x6f26x1b= _[_0x4fa1[73]]({},_0x6f26x1b,_0x6f26x28[_0x4fa1[74]]);return db[_0x4fa1[56]][_0x4fa1[76]](_0x6f26x1b)[_0x4fa1[45]](respondWithFilteredResult(_0x6f26x15,_0x6f26x1b,_0x4fa1[53]))[_0x4fa1[75]](handleError(_0x6f26x15,null,_0x4fa1[53]))};exports[_0x4fa1[77]]= function(_0x6f26x28,_0x6f26x15){var _0x6f26x1b={raw:true,where:{id:_0x6f26x28[_0x4fa1[79]][_0x4fa1[78]]}},_0x6f26x29={};_0x6f26x29[_0x4fa1[54]]= _[_0x4fa1[57]](db[_0x4fa1[56]][_0x4fa1[55]]);_0x6f26x29[_0x4fa1[58]]= _[_0x4fa1[57]](_0x6f26x28[_0x4fa1[58]]);_0x6f26x29[_0x4fa1[59]]= _[_0x4fa1[60]](_0x6f26x29[_0x4fa1[54]],_0x6f26x29[_0x4fa1[58]]);_0x6f26x1b[_0x4fa1[61]]= _[_0x4fa1[60]](_0x6f26x29[_0x4fa1[54]],qs[_0x4fa1[62]](_0x6f26x28[_0x4fa1[58]][_0x4fa1[62]]));_0x6f26x1b[_0x4fa1[61]]= (_0x6f26x1b[_0x4fa1[61]][_0x4fa1[63]])?_0x6f26x1b[_0x4fa1[61]]:_0x6f26x29[_0x4fa1[54]];_0x6f26x1b= _[_0x4fa1[73]]({},_0x6f26x1b,_0x6f26x28[_0x4fa1[74]]);return db[_0x4fa1[56]][_0x4fa1[80]](_0x6f26x1b)[_0x4fa1[45]](handleEntityNotFound(_0x6f26x15,null,_0x4fa1[77]))[_0x4fa1[45]](respondWithResult(_0x6f26x15,null,_0x4fa1[77]))[_0x4fa1[75]](handleError(_0x6f26x15,null,_0x4fa1[77]))};exports[_0x4fa1[81]]= function(_0x6f26x28,_0x6f26x15){return db[_0x4fa1[56]][_0x4fa1[81]](_0x6f26x28[_0x4fa1[82]],{})[_0x4fa1[45]](respondWithResult(_0x6f26x15,201,_0x4fa1[81]))[_0x4fa1[75]](handleError(_0x6f26x15,null,_0x4fa1[81]))};exports[_0x4fa1[46]]= function(_0x6f26x28,_0x6f26x15){if(_0x6f26x28[_0x4fa1[82]][_0x4fa1[78]]){delete _0x6f26x28[_0x4fa1[82]][_0x4fa1[78]]};return db[_0x4fa1[56]][_0x4fa1[80]]({where:{id:_0x6f26x28[_0x4fa1[79]][_0x4fa1[78]]}})[_0x4fa1[45]](handleEntityNotFound(_0x6f26x15,null,_0x4fa1[46]))[_0x4fa1[45]](saveUpdates(_0x6f26x28[_0x4fa1[82]],null,_0x4fa1[46]))[_0x4fa1[45]](respondWithResult(_0x6f26x15,null,_0x4fa1[46]))[_0x4fa1[75]](handleError(_0x6f26x15,null,_0x4fa1[46]))};exports[_0x4fa1[48]]= function(_0x6f26x28,_0x6f26x15){return db[_0x4fa1[56]][_0x4fa1[80]]({where:{id:_0x6f26x28[_0x4fa1[79]][_0x4fa1[78]]}})[_0x4fa1[45]](handleEntityNotFound(_0x6f26x15,null,_0x4fa1[48]))[_0x4fa1[45]](removeEntity(_0x6f26x15,null,_0x4fa1[48]))[_0x4fa1[75]](handleError(_0x6f26x15,null,_0x4fa1[48]))}
\ No newline at end of file
+var _0xcc71=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xcc71[0];var jsonpatch=require(_0xcc71[1]);var rp=require(_0xcc71[2]);var moment=require(_0xcc71[3]);var BPromise=require(_0xcc71[4]);var util=require(_0xcc71[5]);var path=require(_0xcc71[6]);var sox=require(_0xcc71[7]);var ejs=require(_0xcc71[8]);var fs=require(_0xcc71[9]);var _=require(_0xcc71[10]);var squel=require(_0xcc71[11]);var crypto=require(_0xcc71[12]);var jsforce=require(_0xcc71[13]);var toCsv=require(_0xcc71[14]);var qs=require(_0xcc71[15]);var logger=require(_0xcc71[17])(_0xcc71[16]);var utils=require(_0xcc71[18]);var config=require(_0xcc71[19]);var db=require(_0xcc71[21])[_0xcc71[20]];function respondWithStatusCode(_0x36cax15,_0x36cax16,_0x36cax17){_0x36cax16= _0x36cax16|| 204;return function(_0x36cax18){if(_0x36cax18){logger[_0xcc71[24]](_0xcc71[22],_0x36cax17,_0x36cax16,_0xcc71[23]);logger[_0xcc71[26]](_0xcc71[25],_0x36cax17,_0x36cax16,_0xcc71[23]);return _0x36cax15[_0xcc71[27]](_0x36cax16)};return _0x36cax15[_0xcc71[29]](304)[_0xcc71[28]]()}}function respondWithResult(_0x36cax15,_0x36cax16,_0x36cax17){_0x36cax16= _0x36cax16|| 200;return function(_0x36cax18){if(_0x36cax18){logger[_0xcc71[24]](_0xcc71[22],_0x36cax17,_0x36cax16,_0xcc71[30]);logger[_0xcc71[26]](_0xcc71[25],_0x36cax17,_0x36cax16,_0xcc71[30],JSON[_0xcc71[31]](_0x36cax18));return _0x36cax15[_0xcc71[29]](_0x36cax16)[_0xcc71[32]](_0x36cax18)};return _0x36cax15[_0xcc71[29]](304)[_0xcc71[28]]()}}function respondWithFilteredResult(_0x36cax15,_0x36cax1b,_0x36cax17){return function(_0x36cax18){if(_0x36cax18){var _0x36cax1c=_0x36cax18[_0xcc71[33]],_0x36cax1d=_0x36cax1b[_0xcc71[34]],_0x36cax1e=_0x36cax1b[_0xcc71[34]]+ _0x36cax1b[_0xcc71[35]],_0x36cax16;if(_0x36cax1e>= _0x36cax1c){_0x36cax1e= _0x36cax1c;_0x36cax16= 200}else {_0x36cax16= 206};_0x36cax15[_0xcc71[29]](_0x36cax16);logger[_0xcc71[24]](_0xcc71[22],_0x36cax17,_0x36cax16,_0xcc71[36]);logger[_0xcc71[26]](_0xcc71[25],_0x36cax17,_0x36cax16,_0xcc71[30],JSON[_0xcc71[31]](_0x36cax18));return _0x36cax15[_0xcc71[40]](_0xcc71[37],_0x36cax1d+ _0xcc71[38]+ _0x36cax1e+ _0xcc71[39]+ _0x36cax1c)[_0xcc71[32]](_0x36cax18)};return null}}function patchUpdates(_0x36cax20){return function(_0x36cax18){try{jsonpatch[_0xcc71[41]](_0x36cax18,_0x36cax20,true)}catch(err){return BPromise[_0xcc71[42]](err)};return _0x36cax18[_0xcc71[43]]()}}function saveUpdates(_0x36cax22,_0x36cax16,_0x36cax17){return function(_0x36cax18){if(_0x36cax18){return _0x36cax18[_0xcc71[46]](_0x36cax22)[_0xcc71[45]](function(_0x36cax23){logger[_0xcc71[24]](_0xcc71[22],_0x36cax17,_0x36cax16,_0xcc71[44]);logger[_0xcc71[26]](_0xcc71[25],_0x36cax17,_0x36cax16,_0xcc71[44],JSON[_0xcc71[31]](_0x36cax18));return _0x36cax23})};return null}}function removeEntity(_0x36cax15,_0x36cax16,_0x36cax17){return function(_0x36cax18){if(_0x36cax18){return _0x36cax18[_0xcc71[48]]()[_0xcc71[45]](function(){logger[_0xcc71[24]](_0xcc71[22],_0x36cax17,_0x36cax16,_0xcc71[47]);logger[_0xcc71[26]](_0xcc71[25],_0x36cax17,_0x36cax16,_0xcc71[47],JSON[_0xcc71[31]](_0x36cax18));_0x36cax15[_0xcc71[29]](204)[_0xcc71[28]]()})}}}function handleEntityNotFound(_0x36cax15,_0x36cax16,_0x36cax17){return function(_0x36cax18){if(!_0x36cax18){logger[_0xcc71[50]](_0xcc71[22],_0x36cax17,404,_0xcc71[49]);_0x36cax15[_0xcc71[29]](404)[_0xcc71[28]]();return null};return _0x36cax18}}function handleError(_0x36cax15,_0x36cax16,_0x36cax17){_0x36cax16= _0x36cax16|| 500;return function(_0x36cax27){logger[_0xcc71[50]](_0xcc71[22],_0x36cax17,_0x36cax16,JSON[_0xcc71[31]](_0x36cax27));delete _0x36cax27[_0xcc71[51]];_0x36cax15[_0xcc71[29]](_0x36cax16)[_0xcc71[52]](_0x36cax27)}}exports[_0xcc71[53]]= function(_0x36cax28,_0x36cax15){var _0x36cax1b={},_0x36cax29={};_0x36cax29[_0xcc71[54]]= _[_0xcc71[57]](db[_0xcc71[56]][_0xcc71[55]]);_0x36cax29[_0xcc71[58]]= _[_0xcc71[57]](_0x36cax28[_0xcc71[58]]);_0x36cax29[_0xcc71[59]]= _[_0xcc71[60]](_0x36cax29[_0xcc71[54]],_0x36cax29[_0xcc71[58]]);_0x36cax1b[_0xcc71[61]]= _[_0xcc71[60]](_0x36cax29[_0xcc71[54]],qs[_0xcc71[62]](_0x36cax28[_0xcc71[58]][_0xcc71[62]]));_0x36cax1b[_0xcc71[61]]= (_0x36cax1b[_0xcc71[61]][_0xcc71[63]])?_0x36cax1b[_0xcc71[61]]:_0x36cax29[_0xcc71[54]];if(!_0x36cax28[_0xcc71[58]][_0xcc71[65]](_0xcc71[64])){_0x36cax1b[_0xcc71[35]]= qs[_0xcc71[35]](_0x36cax28[_0xcc71[58]][_0xcc71[35]]);_0x36cax1b[_0xcc71[34]]= qs[_0xcc71[34]](_0x36cax28[_0xcc71[58]][_0xcc71[34]])};_0x36cax1b[_0xcc71[66]]= qs[_0xcc71[67]](_0x36cax28[_0xcc71[58]][_0xcc71[67]]);_0x36cax1b[_0xcc71[68]]= qs[_0xcc71[59]](_[_0xcc71[69]](_0x36cax28[_0xcc71[58]],_0x36cax29[_0xcc71[59]]));if(_0x36cax28[_0xcc71[58]][_0xcc71[70]]){_0x36cax1b[_0xcc71[68]]= _[_0xcc71[73]](_0x36cax1b[_0xcc71[68]],{$or:_[_0xcc71[72]](_0x36cax1b[_0xcc71[61]],function(_0x36cax2a){var _0x36cax2b={};_0x36cax2b[_0x36cax2a]= {$like:_0xcc71[71]+ _0x36cax28[_0xcc71[58]][_0xcc71[70]]+ _0xcc71[71]};return _0x36cax2b})})};_0x36cax1b= _[_0xcc71[73]]({},_0x36cax1b,_0x36cax28[_0xcc71[74]]);return db[_0xcc71[56]][_0xcc71[76]](_0x36cax1b)[_0xcc71[45]](respondWithFilteredResult(_0x36cax15,_0x36cax1b,_0xcc71[53]))[_0xcc71[75]](handleError(_0x36cax15,null,_0xcc71[53]))};exports[_0xcc71[77]]= function(_0x36cax28,_0x36cax15){var _0x36cax1b={raw:true,where:{id:_0x36cax28[_0xcc71[79]][_0xcc71[78]]}},_0x36cax29={};_0x36cax29[_0xcc71[54]]= _[_0xcc71[57]](db[_0xcc71[56]][_0xcc71[55]]);_0x36cax29[_0xcc71[58]]= _[_0xcc71[57]](_0x36cax28[_0xcc71[58]]);_0x36cax29[_0xcc71[59]]= _[_0xcc71[60]](_0x36cax29[_0xcc71[54]],_0x36cax29[_0xcc71[58]]);_0x36cax1b[_0xcc71[61]]= _[_0xcc71[60]](_0x36cax29[_0xcc71[54]],qs[_0xcc71[62]](_0x36cax28[_0xcc71[58]][_0xcc71[62]]));_0x36cax1b[_0xcc71[61]]= (_0x36cax1b[_0xcc71[61]][_0xcc71[63]])?_0x36cax1b[_0xcc71[61]]:_0x36cax29[_0xcc71[54]];_0x36cax1b= _[_0xcc71[73]]({},_0x36cax1b,_0x36cax28[_0xcc71[74]]);return db[_0xcc71[56]][_0xcc71[80]](_0x36cax1b)[_0xcc71[45]](handleEntityNotFound(_0x36cax15,null,_0xcc71[77]))[_0xcc71[45]](respondWithResult(_0x36cax15,null,_0xcc71[77]))[_0xcc71[75]](handleError(_0x36cax15,null,_0xcc71[77]))};exports[_0xcc71[81]]= function(_0x36cax28,_0x36cax15){return db[_0xcc71[56]][_0xcc71[81]](_0x36cax28[_0xcc71[82]],{})[_0xcc71[45]](respondWithResult(_0x36cax15,201,_0xcc71[81]))[_0xcc71[75]](handleError(_0x36cax15,null,_0xcc71[81]))};exports[_0xcc71[46]]= function(_0x36cax28,_0x36cax15){if(_0x36cax28[_0xcc71[82]][_0xcc71[78]]){delete _0x36cax28[_0xcc71[82]][_0xcc71[78]]};return db[_0xcc71[56]][_0xcc71[80]]({where:{id:_0x36cax28[_0xcc71[79]][_0xcc71[78]]}})[_0xcc71[45]](handleEntityNotFound(_0x36cax15,null,_0xcc71[46]))[_0xcc71[45]](saveUpdates(_0x36cax28[_0xcc71[82]],null,_0xcc71[46]))[_0xcc71[45]](respondWithResult(_0x36cax15,null,_0xcc71[46]))[_0xcc71[75]](handleError(_0x36cax15,null,_0xcc71[46]))};exports[_0xcc71[48]]= function(_0x36cax28,_0x36cax15){return db[_0xcc71[56]][_0xcc71[80]]({where:{id:_0x36cax28[_0xcc71[79]][_0xcc71[78]]}})[_0xcc71[45]](handleEntityNotFound(_0x36cax15,null,_0xcc71[48]))[_0xcc71[45]](removeEntity(_0x36cax15,null,_0xcc71[48]))[_0xcc71[75]](handleError(_0x36cax15,null,_0xcc71[48]))}
\ No newline at end of file
index 529707c..87f1239 100644 (file)
@@ -1 +1 @@
-var _0x61fd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x61\x69\x6C","\x64\x65\x66\x69\x6E\x65"];_0x61fd[0];var _=require(_0x61fd[1]);var util=require(_0x61fd[2]);var logger=require(_0x61fd[4])(_0x61fd[3]);var attributes=require(_0x61fd[5]);module[_0x61fd[6]]= function(_0xfc77x5,_0xfc77x6){return _0xfc77x5[_0x61fd[9]](_0x61fd[7],attributes,{tableName:_0x61fd[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x7d96=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x61\x69\x6C","\x64\x65\x66\x69\x6E\x65"];_0x7d96[0];var _=require(_0x7d96[1]);var util=require(_0x7d96[2]);var logger=require(_0x7d96[4])(_0x7d96[3]);var attributes=require(_0x7d96[5]);module[_0x7d96[6]]= function(_0x515cx5,_0x515cx6){return _0x515cx5[_0x7d96[9]](_0x7d96[7],attributes,{tableName:_0x7d96[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index ae89482..d98cb3a 100644 (file)
@@ -1 +1 @@
-var _0x4536=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x4536[0];var _=require(_0x4536[1]);var util=require(_0x4536[2]);var moment=require(_0x4536[3]);var BPromise=require(_0x4536[4]);var db=require(_0x4536[6])[_0x4536[5]];var utils=require(_0x4536[7]);var logger=require(_0x4536[9])(_0x4536[8]);var jayson=require(_0x4536[10]);var client=jayson[_0x4536[12]][_0x4536[11]]({port:9002});function respondWithRpcPromise(_0x7126xb,_0x7126xc,_0x7126xd){return  new BPromise(function(_0x7126xe,_0x7126xf){return client[_0x4536[25]](_0x7126xb,_0x7126xd)[_0x4536[24]](function(_0x7126x11){logger[_0x4536[17]](_0x4536[13],_0x7126xc,_0x4536[16]);logger[_0x4536[20]](_0x4536[18],_0x7126xc,_0x4536[16],JSON[_0x4536[19]](_0x7126x11));if(_0x7126x11[_0x4536[14]]){if(_0x7126x11[_0x4536[14]][_0x4536[21]]=== 500){logger[_0x4536[14]](_0x4536[13],_0x7126xc,_0x7126x11[_0x4536[14]][_0x4536[22]]);return _0x7126xf(_0x7126x11[_0x4536[14]][_0x4536[22]])};logger[_0x4536[14]](_0x4536[13],_0x7126xc,_0x7126x11[_0x4536[14]][_0x4536[22]]);return _0x7126xe(_0x7126x11[_0x4536[14]][_0x4536[22]])}else {logger[_0x4536[17]](_0x4536[13],_0x7126xc,_0x4536[16]);_0x7126xe(_0x7126x11[_0x4536[23]][_0x4536[22]])}})[_0x4536[15]](function(_0x7126x10){logger[_0x4536[14]](_0x4536[13],_0x7126xc,_0x7126x10);_0x7126xf(_0x7126x10)})})}
\ No newline at end of file
+var _0x8d56=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x8d56[0];var _=require(_0x8d56[1]);var util=require(_0x8d56[2]);var moment=require(_0x8d56[3]);var BPromise=require(_0x8d56[4]);var db=require(_0x8d56[6])[_0x8d56[5]];var utils=require(_0x8d56[7]);var logger=require(_0x8d56[9])(_0x8d56[8]);var jayson=require(_0x8d56[10]);var client=jayson[_0x8d56[12]][_0x8d56[11]]({port:9002});function respondWithRpcPromise(_0x34f1xb,_0x34f1xc,_0x34f1xd){return  new BPromise(function(_0x34f1xe,_0x34f1xf){return client[_0x8d56[25]](_0x34f1xb,_0x34f1xd)[_0x8d56[24]](function(_0x34f1x11){logger[_0x8d56[17]](_0x8d56[13],_0x34f1xc,_0x8d56[16]);logger[_0x8d56[20]](_0x8d56[18],_0x34f1xc,_0x8d56[16],JSON[_0x8d56[19]](_0x34f1x11));if(_0x34f1x11[_0x8d56[14]]){if(_0x34f1x11[_0x8d56[14]][_0x8d56[21]]=== 500){logger[_0x8d56[14]](_0x8d56[13],_0x34f1xc,_0x34f1x11[_0x8d56[14]][_0x8d56[22]]);return _0x34f1xf(_0x34f1x11[_0x8d56[14]][_0x8d56[22]])};logger[_0x8d56[14]](_0x8d56[13],_0x34f1xc,_0x34f1x11[_0x8d56[14]][_0x8d56[22]]);return _0x34f1xe(_0x34f1x11[_0x8d56[14]][_0x8d56[22]])}else {logger[_0x8d56[17]](_0x8d56[13],_0x34f1xc,_0x8d56[16]);_0x34f1xe(_0x34f1x11[_0x8d56[23]][_0x8d56[22]])}})[_0x8d56[15]](function(_0x34f1x10){logger[_0x8d56[14]](_0x8d56[13],_0x34f1xc,_0x34f1x10);_0x34f1xf(_0x34f1x10)})})}
\ No newline at end of file
index 1f4038b..cf06ad1 100644 (file)
@@ -1 +1 @@
-var _0xf359=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xf359[0];var multer=require(_0xf359[1]);var util=require(_0xf359[2]);var path=require(_0xf359[3]);var express=require(_0xf359[4]);var router=express.Router();var auth=require(_0xf359[5]);var config=require(_0xf359[6]);module[_0xf359[7]]= router
\ No newline at end of file
+var _0x59f4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x59f4[0];var multer=require(_0x59f4[1]);var util=require(_0x59f4[2]);var path=require(_0x59f4[3]);var express=require(_0x59f4[4]);var router=express.Router();var auth=require(_0x59f4[5]);var config=require(_0x59f4[6]);module[_0x59f4[7]]= router
\ No newline at end of file
index 77f553b..5666654 100644 (file)
@@ -1 +1 @@
-var _0x3787=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x55\x4E\x53\x45\x45\x4E","\x49\x4D\x41\x50","\x50\x4F\x50\x33","\x43\x4F\x4E\x4E\x45\x43\x54\x49\x4E\x47","\x43\x4F\x4E\x4E\x45\x43\x54\x45\x44","\x44\x49\x53\x43\x4F\x4E\x4E\x45\x43\x54\x45\x44","\x45\x52\x52\x4F\x52","\x55\x4E\x4B\x4E\x4F\x57\x4E","\x63\x6F\x6E\x6E\x54\x69\x6D\x65\x6F\x75\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x75\x74\x68\x54\x69\x6D\x65\x6F\x75\x74"];_0x3787[0];var Sequelize=require(_0x3787[1]);module[_0x3787[2]]= {description:{type:Sequelize[_0x3787[3]]},host:{type:Sequelize[_0x3787[3]]},username:{type:Sequelize[_0x3787[3]],unique:_0x3787[4]},password:{type:Sequelize[_0x3787[3]]},port:{type:Sequelize[_0x3787[5]]},mailbox:{type:Sequelize[_0x3787[3]]},ssl:{type:Sequelize[_0x3787[6]],defaultValue:false},delete:{type:Sequelize[_0x3787[6]],defaultValue:false},filter:{type:Sequelize.ENUM(_0x3787[7]),defaultValue:_0x3787[7]},protocol:{type:Sequelize.ENUM(_0x3787[8],_0x3787[9]),defaultValue:_0x3787[8]},state:{type:Sequelize.ENUM(_0x3787[10],_0x3787[11],_0x3787[12],_0x3787[13],_0x3787[14]),defaultValue:_0x3787[14]},source:{type:Sequelize[_0x3787[3]]},connTimeout:{type:Sequelize[_0x3787[5]],defaultValue:10000,get:function(){return this[_0x3787[16]](_0x3787[15])?this[_0x3787[16]](_0x3787[15])/ 1000:null},set:function(_0x417bx2){this[_0x3787[17]](_0x3787[15],_0x417bx2* 1000)}},authTimeout:{type:Sequelize[_0x3787[5]],defaultValue:5000,get:function(){return this[_0x3787[16]](_0x3787[18])?this[_0x3787[16]](_0x3787[18])/ 1000:null},set:function(_0x417bx2){this[_0x3787[17]](_0x3787[18],_0x417bx2* 1000)}},keepalive:{type:Sequelize[_0x3787[6]],defaultValue:true}}
\ No newline at end of file
+var _0x5b91=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x55\x4E\x53\x45\x45\x4E","\x49\x4D\x41\x50","\x50\x4F\x50\x33","\x43\x4F\x4E\x4E\x45\x43\x54\x49\x4E\x47","\x43\x4F\x4E\x4E\x45\x43\x54\x45\x44","\x44\x49\x53\x43\x4F\x4E\x4E\x45\x43\x54\x45\x44","\x45\x52\x52\x4F\x52","\x55\x4E\x4B\x4E\x4F\x57\x4E","\x63\x6F\x6E\x6E\x54\x69\x6D\x65\x6F\x75\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x75\x74\x68\x54\x69\x6D\x65\x6F\x75\x74"];_0x5b91[0];var Sequelize=require(_0x5b91[1]);module[_0x5b91[2]]= {description:{type:Sequelize[_0x5b91[3]]},host:{type:Sequelize[_0x5b91[3]]},username:{type:Sequelize[_0x5b91[3]],unique:_0x5b91[4]},password:{type:Sequelize[_0x5b91[3]]},port:{type:Sequelize[_0x5b91[5]]},mailbox:{type:Sequelize[_0x5b91[3]]},ssl:{type:Sequelize[_0x5b91[6]],defaultValue:false},delete:{type:Sequelize[_0x5b91[6]],defaultValue:false},filter:{type:Sequelize.ENUM(_0x5b91[7]),defaultValue:_0x5b91[7]},protocol:{type:Sequelize.ENUM(_0x5b91[8],_0x5b91[9]),defaultValue:_0x5b91[8]},state:{type:Sequelize.ENUM(_0x5b91[10],_0x5b91[11],_0x5b91[12],_0x5b91[13],_0x5b91[14]),defaultValue:_0x5b91[14]},source:{type:Sequelize[_0x5b91[3]]},connTimeout:{type:Sequelize[_0x5b91[5]],defaultValue:10000,get:function(){return this[_0x5b91[16]](_0x5b91[15])?this[_0x5b91[16]](_0x5b91[15])/ 1000:null},set:function(_0xa46bx2){this[_0x5b91[17]](_0x5b91[15],_0xa46bx2* 1000)}},authTimeout:{type:Sequelize[_0x5b91[5]],defaultValue:5000,get:function(){return this[_0x5b91[16]](_0x5b91[18])?this[_0x5b91[16]](_0x5b91[18])/ 1000:null},set:function(_0xa46bx2){this[_0x5b91[17]](_0x5b91[18],_0xa46bx2* 1000)}},keepalive:{type:Sequelize[_0x5b91[6]],defaultValue:true}}
\ No newline at end of file
index 5b1ac3d..b6d04b7 100644 (file)
@@ -1 +1 @@
-var _0x7611=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E","\x6D\x61\x69\x6C\x5F\x73\x65\x72\x76\x65\x72\x73\x5F\x69\x6E","\x64\x65\x66\x69\x6E\x65"];_0x7611[0];var _=require(_0x7611[1]);var util=require(_0x7611[2]);var logger=require(_0x7611[4])(_0x7611[3]);var attributes=require(_0x7611[5]);module[_0x7611[6]]= function(_0x986fx5,_0x986fx6){return _0x986fx5[_0x7611[9]](_0x7611[7],attributes,{tableName:_0x7611[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xe5ad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E","\x6D\x61\x69\x6C\x5F\x73\x65\x72\x76\x65\x72\x73\x5F\x69\x6E","\x64\x65\x66\x69\x6E\x65"];_0xe5ad[0];var _=require(_0xe5ad[1]);var util=require(_0xe5ad[2]);var logger=require(_0xe5ad[4])(_0xe5ad[3]);var attributes=require(_0xe5ad[5]);module[_0xe5ad[6]]= function(_0xa722x5,_0xa722x6){return _0xa722x5[_0xe5ad[9]](_0xe5ad[7],attributes,{tableName:_0xe5ad[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index c50f5d8..9342d46 100644 (file)
@@ -1 +1 @@
-var _0x112f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x112f[0];var _=require(_0x112f[1]);var util=require(_0x112f[2]);var moment=require(_0x112f[3]);var BPromise=require(_0x112f[4]);var db=require(_0x112f[6])[_0x112f[5]];var utils=require(_0x112f[7]);var logger=require(_0x112f[9])(_0x112f[8]);var jayson=require(_0x112f[10]);var client=jayson[_0x112f[12]][_0x112f[11]]({port:9002});function respondWithRpcPromise(_0x8212xb,_0x8212xc,_0x8212xd){return  new BPromise(function(_0x8212xe,_0x8212xf){return client[_0x112f[25]](_0x8212xb,_0x8212xd)[_0x112f[24]](function(_0x8212x11){logger[_0x112f[17]](_0x112f[13],_0x8212xc,_0x112f[16]);logger[_0x112f[20]](_0x112f[18],_0x8212xc,_0x112f[16],JSON[_0x112f[19]](_0x8212x11));if(_0x8212x11[_0x112f[14]]){if(_0x8212x11[_0x112f[14]][_0x112f[21]]=== 500){logger[_0x112f[14]](_0x112f[13],_0x8212xc,_0x8212x11[_0x112f[14]][_0x112f[22]]);return _0x8212xf(_0x8212x11[_0x112f[14]][_0x112f[22]])};logger[_0x112f[14]](_0x112f[13],_0x8212xc,_0x8212x11[_0x112f[14]][_0x112f[22]]);return _0x8212xe(_0x8212x11[_0x112f[14]][_0x112f[22]])}else {logger[_0x112f[17]](_0x112f[13],_0x8212xc,_0x112f[16]);_0x8212xe(_0x8212x11[_0x112f[23]][_0x112f[22]])}})[_0x112f[15]](function(_0x8212x10){logger[_0x112f[14]](_0x112f[13],_0x8212xc,_0x8212x10);_0x8212xf(_0x8212x10)})})}
\ No newline at end of file
+var _0xda48=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xda48[0];var _=require(_0xda48[1]);var util=require(_0xda48[2]);var moment=require(_0xda48[3]);var BPromise=require(_0xda48[4]);var db=require(_0xda48[6])[_0xda48[5]];var utils=require(_0xda48[7]);var logger=require(_0xda48[9])(_0xda48[8]);var jayson=require(_0xda48[10]);var client=jayson[_0xda48[12]][_0xda48[11]]({port:9002});function respondWithRpcPromise(_0x92efxb,_0x92efxc,_0x92efxd){return  new BPromise(function(_0x92efxe,_0x92efxf){return client[_0xda48[25]](_0x92efxb,_0x92efxd)[_0xda48[24]](function(_0x92efx11){logger[_0xda48[17]](_0xda48[13],_0x92efxc,_0xda48[16]);logger[_0xda48[20]](_0xda48[18],_0x92efxc,_0xda48[16],JSON[_0xda48[19]](_0x92efx11));if(_0x92efx11[_0xda48[14]]){if(_0x92efx11[_0xda48[14]][_0xda48[21]]=== 500){logger[_0xda48[14]](_0xda48[13],_0x92efxc,_0x92efx11[_0xda48[14]][_0xda48[22]]);return _0x92efxf(_0x92efx11[_0xda48[14]][_0xda48[22]])};logger[_0xda48[14]](_0xda48[13],_0x92efxc,_0x92efx11[_0xda48[14]][_0xda48[22]]);return _0x92efxe(_0x92efx11[_0xda48[14]][_0xda48[22]])}else {logger[_0xda48[17]](_0xda48[13],_0x92efxc,_0xda48[16]);_0x92efxe(_0x92efx11[_0xda48[23]][_0xda48[22]])}})[_0xda48[15]](function(_0x92efx10){logger[_0xda48[14]](_0xda48[13],_0x92efxc,_0x92efx10);_0x92efxf(_0x92efx10)})})}
\ No newline at end of file
index 89b12d9..98e2512 100644 (file)
@@ -1 +1 @@
-var _0xa35b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa35b[0];var multer=require(_0xa35b[1]);var util=require(_0xa35b[2]);var path=require(_0xa35b[3]);var express=require(_0xa35b[4]);var router=express.Router();var auth=require(_0xa35b[5]);var config=require(_0xa35b[6]);var controller=require(_0xa35b[7]);router[_0xa35b[11]](_0xa35b[8],auth[_0xa35b[9]](),controller[_0xa35b[10]]);router[_0xa35b[11]](_0xa35b[12],auth[_0xa35b[9]](),controller[_0xa35b[13]]);router[_0xa35b[15]](_0xa35b[8],auth[_0xa35b[9]](),controller[_0xa35b[14]]);router[_0xa35b[17]](_0xa35b[12],auth[_0xa35b[9]](),controller[_0xa35b[16]]);router[_0xa35b[19]](_0xa35b[12],auth[_0xa35b[9]](),controller[_0xa35b[18]]);module[_0xa35b[20]]= router
\ No newline at end of file
+var _0x8560=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8560[0];var multer=require(_0x8560[1]);var util=require(_0x8560[2]);var path=require(_0x8560[3]);var express=require(_0x8560[4]);var router=express.Router();var auth=require(_0x8560[5]);var config=require(_0x8560[6]);var controller=require(_0x8560[7]);router[_0x8560[11]](_0x8560[8],auth[_0x8560[9]](),controller[_0x8560[10]]);router[_0x8560[11]](_0x8560[12],auth[_0x8560[9]](),controller[_0x8560[13]]);router[_0x8560[15]](_0x8560[8],auth[_0x8560[9]](),controller[_0x8560[14]]);router[_0x8560[17]](_0x8560[12],auth[_0x8560[9]](),controller[_0x8560[16]]);router[_0x8560[19]](_0x8560[12],auth[_0x8560[9]](),controller[_0x8560[18]]);module[_0x8560[20]]= router
\ No newline at end of file
index 60d9a0b..0561514 100644 (file)
@@ -1 +1 @@
-var _0xc29d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xc29d[0];var Sequelize=require(_0xc29d[1]);module[_0xc29d[2]]= {description:{type:Sequelize[_0xc29d[3]]},service:{type:Sequelize[_0xc29d[3]]},host:{type:Sequelize[_0xc29d[3]]},user:{type:Sequelize[_0xc29d[3]]},pass:{type:Sequelize[_0xc29d[3]]},port:{type:Sequelize[_0xc29d[4]]},secure:{type:Sequelize[_0xc29d[5]],defaultValue:false},state:{type:Sequelize[_0xc29d[3]]}}
\ No newline at end of file
+var _0xc6c2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xc6c2[0];var Sequelize=require(_0xc6c2[1]);module[_0xc6c2[2]]= {description:{type:Sequelize[_0xc6c2[3]]},service:{type:Sequelize[_0xc6c2[3]]},host:{type:Sequelize[_0xc6c2[3]]},user:{type:Sequelize[_0xc6c2[3]]},pass:{type:Sequelize[_0xc6c2[3]]},port:{type:Sequelize[_0xc6c2[4]]},secure:{type:Sequelize[_0xc6c2[5]],defaultValue:false},state:{type:Sequelize[_0xc6c2[3]]}}
\ No newline at end of file
index 4518c77..b5dd699 100644 (file)
@@ -1 +1 @@
-var _0xd82c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xd82c[0];var jsonpatch=require(_0xd82c[1]);var rp=require(_0xd82c[2]);var moment=require(_0xd82c[3]);var BPromise=require(_0xd82c[4]);var util=require(_0xd82c[5]);var path=require(_0xd82c[6]);var sox=require(_0xd82c[7]);var ejs=require(_0xd82c[8]);var fs=require(_0xd82c[9]);var _=require(_0xd82c[10]);var squel=require(_0xd82c[11]);var crypto=require(_0xd82c[12]);var jsforce=require(_0xd82c[13]);var toCsv=require(_0xd82c[14]);var qs=require(_0xd82c[15]);var logger=require(_0xd82c[17])(_0xd82c[16]);var utils=require(_0xd82c[18]);var config=require(_0xd82c[19]);var db=require(_0xd82c[21])[_0xd82c[20]];function respondWithStatusCode(_0x59edx15,_0x59edx16,_0x59edx17){_0x59edx16= _0x59edx16|| 204;return function(_0x59edx18){if(_0x59edx18){logger[_0xd82c[24]](_0xd82c[22],_0x59edx17,_0x59edx16,_0xd82c[23]);logger[_0xd82c[26]](_0xd82c[25],_0x59edx17,_0x59edx16,_0xd82c[23]);return _0x59edx15[_0xd82c[27]](_0x59edx16)};return _0x59edx15[_0xd82c[29]](304)[_0xd82c[28]]()}}function respondWithResult(_0x59edx15,_0x59edx16,_0x59edx17){_0x59edx16= _0x59edx16|| 200;return function(_0x59edx18){if(_0x59edx18){logger[_0xd82c[24]](_0xd82c[22],_0x59edx17,_0x59edx16,_0xd82c[30]);logger[_0xd82c[26]](_0xd82c[25],_0x59edx17,_0x59edx16,_0xd82c[30],JSON[_0xd82c[31]](_0x59edx18));return _0x59edx15[_0xd82c[29]](_0x59edx16)[_0xd82c[32]](_0x59edx18)};return _0x59edx15[_0xd82c[29]](304)[_0xd82c[28]]()}}function respondWithFilteredResult(_0x59edx15,_0x59edx1b,_0x59edx17){return function(_0x59edx18){if(_0x59edx18){var _0x59edx1c=_0x59edx18[_0xd82c[33]],_0x59edx1d=_0x59edx1b[_0xd82c[34]],_0x59edx1e=_0x59edx1b[_0xd82c[34]]+ _0x59edx1b[_0xd82c[35]],_0x59edx16;if(_0x59edx1e>= _0x59edx1c){_0x59edx1e= _0x59edx1c;_0x59edx16= 200}else {_0x59edx16= 206};_0x59edx15[_0xd82c[29]](_0x59edx16);logger[_0xd82c[24]](_0xd82c[22],_0x59edx17,_0x59edx16,_0xd82c[36]);logger[_0xd82c[26]](_0xd82c[25],_0x59edx17,_0x59edx16,_0xd82c[30],JSON[_0xd82c[31]](_0x59edx18));return _0x59edx15[_0xd82c[40]](_0xd82c[37],_0x59edx1d+ _0xd82c[38]+ _0x59edx1e+ _0xd82c[39]+ _0x59edx1c)[_0xd82c[32]](_0x59edx18)};return null}}function patchUpdates(_0x59edx20){return function(_0x59edx18){try{jsonpatch[_0xd82c[41]](_0x59edx18,_0x59edx20,true)}catch(err){return BPromise[_0xd82c[42]](err)};return _0x59edx18[_0xd82c[43]]()}}function saveUpdates(_0x59edx22,_0x59edx16,_0x59edx17){return function(_0x59edx18){if(_0x59edx18){return _0x59edx18[_0xd82c[46]](_0x59edx22)[_0xd82c[45]](function(_0x59edx23){logger[_0xd82c[24]](_0xd82c[22],_0x59edx17,_0x59edx16,_0xd82c[44]);logger[_0xd82c[26]](_0xd82c[25],_0x59edx17,_0x59edx16,_0xd82c[44],JSON[_0xd82c[31]](_0x59edx18));return _0x59edx23})};return null}}function removeEntity(_0x59edx15,_0x59edx16,_0x59edx17){return function(_0x59edx18){if(_0x59edx18){return _0x59edx18[_0xd82c[48]]()[_0xd82c[45]](function(){logger[_0xd82c[24]](_0xd82c[22],_0x59edx17,_0x59edx16,_0xd82c[47]);logger[_0xd82c[26]](_0xd82c[25],_0x59edx17,_0x59edx16,_0xd82c[47],JSON[_0xd82c[31]](_0x59edx18));_0x59edx15[_0xd82c[29]](204)[_0xd82c[28]]()})}}}function handleEntityNotFound(_0x59edx15,_0x59edx16,_0x59edx17){return function(_0x59edx18){if(!_0x59edx18){logger[_0xd82c[50]](_0xd82c[22],_0x59edx17,404,_0xd82c[49]);_0x59edx15[_0xd82c[29]](404)[_0xd82c[28]]();return null};return _0x59edx18}}function handleError(_0x59edx15,_0x59edx16,_0x59edx17){_0x59edx16= _0x59edx16|| 500;return function(_0x59edx27){logger[_0xd82c[50]](_0xd82c[22],_0x59edx17,_0x59edx16,JSON[_0xd82c[31]](_0x59edx27));delete _0x59edx27[_0xd82c[51]];_0x59edx15[_0xd82c[29]](_0x59edx16)[_0xd82c[52]](_0x59edx27)}}exports[_0xd82c[53]]= function(_0x59edx28,_0x59edx15){var _0x59edx1b={},_0x59edx29={};_0x59edx29[_0xd82c[54]]= _[_0xd82c[57]](db[_0xd82c[56]][_0xd82c[55]]);_0x59edx29[_0xd82c[58]]= _[_0xd82c[57]](_0x59edx28[_0xd82c[58]]);_0x59edx29[_0xd82c[59]]= _[_0xd82c[60]](_0x59edx29[_0xd82c[54]],_0x59edx29[_0xd82c[58]]);_0x59edx1b[_0xd82c[61]]= _[_0xd82c[60]](_0x59edx29[_0xd82c[54]],qs[_0xd82c[62]](_0x59edx28[_0xd82c[58]][_0xd82c[62]]));_0x59edx1b[_0xd82c[61]]= (_0x59edx1b[_0xd82c[61]][_0xd82c[63]])?_0x59edx1b[_0xd82c[61]]:_0x59edx29[_0xd82c[54]];if(!_0x59edx28[_0xd82c[58]][_0xd82c[65]](_0xd82c[64])){_0x59edx1b[_0xd82c[35]]= qs[_0xd82c[35]](_0x59edx28[_0xd82c[58]][_0xd82c[35]]);_0x59edx1b[_0xd82c[34]]= qs[_0xd82c[34]](_0x59edx28[_0xd82c[58]][_0xd82c[34]])};_0x59edx1b[_0xd82c[66]]= qs[_0xd82c[67]](_0x59edx28[_0xd82c[58]][_0xd82c[67]]);_0x59edx1b[_0xd82c[68]]= qs[_0xd82c[59]](_[_0xd82c[69]](_0x59edx28[_0xd82c[58]],_0x59edx29[_0xd82c[59]]));if(_0x59edx28[_0xd82c[58]][_0xd82c[70]]){_0x59edx1b[_0xd82c[68]]= _[_0xd82c[73]](_0x59edx1b[_0xd82c[68]],{$or:_[_0xd82c[72]](_0x59edx1b[_0xd82c[61]],function(_0x59edx2a){var _0x59edx2b={};_0x59edx2b[_0x59edx2a]= {$like:_0xd82c[71]+ _0x59edx28[_0xd82c[58]][_0xd82c[70]]+ _0xd82c[71]};return _0x59edx2b})})};_0x59edx1b= _[_0xd82c[73]]({},_0x59edx1b,_0x59edx28[_0xd82c[74]]);return db[_0xd82c[56]][_0xd82c[76]](_0x59edx1b)[_0xd82c[45]](respondWithFilteredResult(_0x59edx15,_0x59edx1b,_0xd82c[53]))[_0xd82c[75]](handleError(_0x59edx15,null,_0xd82c[53]))};exports[_0xd82c[77]]= function(_0x59edx28,_0x59edx15){var _0x59edx1b={raw:true,where:{id:_0x59edx28[_0xd82c[79]][_0xd82c[78]]}},_0x59edx29={};_0x59edx29[_0xd82c[54]]= _[_0xd82c[57]](db[_0xd82c[56]][_0xd82c[55]]);_0x59edx29[_0xd82c[58]]= _[_0xd82c[57]](_0x59edx28[_0xd82c[58]]);_0x59edx29[_0xd82c[59]]= _[_0xd82c[60]](_0x59edx29[_0xd82c[54]],_0x59edx29[_0xd82c[58]]);_0x59edx1b[_0xd82c[61]]= _[_0xd82c[60]](_0x59edx29[_0xd82c[54]],qs[_0xd82c[62]](_0x59edx28[_0xd82c[58]][_0xd82c[62]]));_0x59edx1b[_0xd82c[61]]= (_0x59edx1b[_0xd82c[61]][_0xd82c[63]])?_0x59edx1b[_0xd82c[61]]:_0x59edx29[_0xd82c[54]];_0x59edx1b= _[_0xd82c[73]]({},_0x59edx1b,_0x59edx28[_0xd82c[74]]);return db[_0xd82c[56]][_0xd82c[80]](_0x59edx1b)[_0xd82c[45]](handleEntityNotFound(_0x59edx15,null,_0xd82c[77]))[_0xd82c[45]](respondWithResult(_0x59edx15,null,_0xd82c[77]))[_0xd82c[75]](handleError(_0x59edx15,null,_0xd82c[77]))};exports[_0xd82c[81]]= function(_0x59edx28,_0x59edx15){return db[_0xd82c[56]][_0xd82c[81]](_0x59edx28[_0xd82c[82]],{})[_0xd82c[45]](respondWithResult(_0x59edx15,201,_0xd82c[81]))[_0xd82c[75]](handleError(_0x59edx15,null,_0xd82c[81]))};exports[_0xd82c[46]]= function(_0x59edx28,_0x59edx15){if(_0x59edx28[_0xd82c[82]][_0xd82c[78]]){delete _0x59edx28[_0xd82c[82]][_0xd82c[78]]};return db[_0xd82c[56]][_0xd82c[80]]({where:{id:_0x59edx28[_0xd82c[79]][_0xd82c[78]]}})[_0xd82c[45]](handleEntityNotFound(_0x59edx15,null,_0xd82c[46]))[_0xd82c[45]](saveUpdates(_0x59edx28[_0xd82c[82]],null,_0xd82c[46]))[_0xd82c[45]](respondWithResult(_0x59edx15,null,_0xd82c[46]))[_0xd82c[75]](handleError(_0x59edx15,null,_0xd82c[46]))};exports[_0xd82c[48]]= function(_0x59edx28,_0x59edx15){return db[_0xd82c[56]][_0xd82c[80]]({where:{id:_0x59edx28[_0xd82c[79]][_0xd82c[78]]}})[_0xd82c[45]](handleEntityNotFound(_0x59edx15,null,_0xd82c[48]))[_0xd82c[45]](removeEntity(_0x59edx15,null,_0xd82c[48]))[_0xd82c[75]](handleError(_0x59edx15,null,_0xd82c[48]))}
\ No newline at end of file
+var _0x335e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x335e[0];var jsonpatch=require(_0x335e[1]);var rp=require(_0x335e[2]);var moment=require(_0x335e[3]);var BPromise=require(_0x335e[4]);var util=require(_0x335e[5]);var path=require(_0x335e[6]);var sox=require(_0x335e[7]);var ejs=require(_0x335e[8]);var fs=require(_0x335e[9]);var _=require(_0x335e[10]);var squel=require(_0x335e[11]);var crypto=require(_0x335e[12]);var jsforce=require(_0x335e[13]);var toCsv=require(_0x335e[14]);var qs=require(_0x335e[15]);var logger=require(_0x335e[17])(_0x335e[16]);var utils=require(_0x335e[18]);var config=require(_0x335e[19]);var db=require(_0x335e[21])[_0x335e[20]];function respondWithStatusCode(_0x8fdax15,_0x8fdax16,_0x8fdax17){_0x8fdax16= _0x8fdax16|| 204;return function(_0x8fdax18){if(_0x8fdax18){logger[_0x335e[24]](_0x335e[22],_0x8fdax17,_0x8fdax16,_0x335e[23]);logger[_0x335e[26]](_0x335e[25],_0x8fdax17,_0x8fdax16,_0x335e[23]);return _0x8fdax15[_0x335e[27]](_0x8fdax16)};return _0x8fdax15[_0x335e[29]](304)[_0x335e[28]]()}}function respondWithResult(_0x8fdax15,_0x8fdax16,_0x8fdax17){_0x8fdax16= _0x8fdax16|| 200;return function(_0x8fdax18){if(_0x8fdax18){logger[_0x335e[24]](_0x335e[22],_0x8fdax17,_0x8fdax16,_0x335e[30]);logger[_0x335e[26]](_0x335e[25],_0x8fdax17,_0x8fdax16,_0x335e[30],JSON[_0x335e[31]](_0x8fdax18));return _0x8fdax15[_0x335e[29]](_0x8fdax16)[_0x335e[32]](_0x8fdax18)};return _0x8fdax15[_0x335e[29]](304)[_0x335e[28]]()}}function respondWithFilteredResult(_0x8fdax15,_0x8fdax1b,_0x8fdax17){return function(_0x8fdax18){if(_0x8fdax18){var _0x8fdax1c=_0x8fdax18[_0x335e[33]],_0x8fdax1d=_0x8fdax1b[_0x335e[34]],_0x8fdax1e=_0x8fdax1b[_0x335e[34]]+ _0x8fdax1b[_0x335e[35]],_0x8fdax16;if(_0x8fdax1e>= _0x8fdax1c){_0x8fdax1e= _0x8fdax1c;_0x8fdax16= 200}else {_0x8fdax16= 206};_0x8fdax15[_0x335e[29]](_0x8fdax16);logger[_0x335e[24]](_0x335e[22],_0x8fdax17,_0x8fdax16,_0x335e[36]);logger[_0x335e[26]](_0x335e[25],_0x8fdax17,_0x8fdax16,_0x335e[30],JSON[_0x335e[31]](_0x8fdax18));return _0x8fdax15[_0x335e[40]](_0x335e[37],_0x8fdax1d+ _0x335e[38]+ _0x8fdax1e+ _0x335e[39]+ _0x8fdax1c)[_0x335e[32]](_0x8fdax18)};return null}}function patchUpdates(_0x8fdax20){return function(_0x8fdax18){try{jsonpatch[_0x335e[41]](_0x8fdax18,_0x8fdax20,true)}catch(err){return BPromise[_0x335e[42]](err)};return _0x8fdax18[_0x335e[43]]()}}function saveUpdates(_0x8fdax22,_0x8fdax16,_0x8fdax17){return function(_0x8fdax18){if(_0x8fdax18){return _0x8fdax18[_0x335e[46]](_0x8fdax22)[_0x335e[45]](function(_0x8fdax23){logger[_0x335e[24]](_0x335e[22],_0x8fdax17,_0x8fdax16,_0x335e[44]);logger[_0x335e[26]](_0x335e[25],_0x8fdax17,_0x8fdax16,_0x335e[44],JSON[_0x335e[31]](_0x8fdax18));return _0x8fdax23})};return null}}function removeEntity(_0x8fdax15,_0x8fdax16,_0x8fdax17){return function(_0x8fdax18){if(_0x8fdax18){return _0x8fdax18[_0x335e[48]]()[_0x335e[45]](function(){logger[_0x335e[24]](_0x335e[22],_0x8fdax17,_0x8fdax16,_0x335e[47]);logger[_0x335e[26]](_0x335e[25],_0x8fdax17,_0x8fdax16,_0x335e[47],JSON[_0x335e[31]](_0x8fdax18));_0x8fdax15[_0x335e[29]](204)[_0x335e[28]]()})}}}function handleEntityNotFound(_0x8fdax15,_0x8fdax16,_0x8fdax17){return function(_0x8fdax18){if(!_0x8fdax18){logger[_0x335e[50]](_0x335e[22],_0x8fdax17,404,_0x335e[49]);_0x8fdax15[_0x335e[29]](404)[_0x335e[28]]();return null};return _0x8fdax18}}function handleError(_0x8fdax15,_0x8fdax16,_0x8fdax17){_0x8fdax16= _0x8fdax16|| 500;return function(_0x8fdax27){logger[_0x335e[50]](_0x335e[22],_0x8fdax17,_0x8fdax16,JSON[_0x335e[31]](_0x8fdax27));delete _0x8fdax27[_0x335e[51]];_0x8fdax15[_0x335e[29]](_0x8fdax16)[_0x335e[52]](_0x8fdax27)}}exports[_0x335e[53]]= function(_0x8fdax28,_0x8fdax15){var _0x8fdax1b={},_0x8fdax29={};_0x8fdax29[_0x335e[54]]= _[_0x335e[57]](db[_0x335e[56]][_0x335e[55]]);_0x8fdax29[_0x335e[58]]= _[_0x335e[57]](_0x8fdax28[_0x335e[58]]);_0x8fdax29[_0x335e[59]]= _[_0x335e[60]](_0x8fdax29[_0x335e[54]],_0x8fdax29[_0x335e[58]]);_0x8fdax1b[_0x335e[61]]= _[_0x335e[60]](_0x8fdax29[_0x335e[54]],qs[_0x335e[62]](_0x8fdax28[_0x335e[58]][_0x335e[62]]));_0x8fdax1b[_0x335e[61]]= (_0x8fdax1b[_0x335e[61]][_0x335e[63]])?_0x8fdax1b[_0x335e[61]]:_0x8fdax29[_0x335e[54]];if(!_0x8fdax28[_0x335e[58]][_0x335e[65]](_0x335e[64])){_0x8fdax1b[_0x335e[35]]= qs[_0x335e[35]](_0x8fdax28[_0x335e[58]][_0x335e[35]]);_0x8fdax1b[_0x335e[34]]= qs[_0x335e[34]](_0x8fdax28[_0x335e[58]][_0x335e[34]])};_0x8fdax1b[_0x335e[66]]= qs[_0x335e[67]](_0x8fdax28[_0x335e[58]][_0x335e[67]]);_0x8fdax1b[_0x335e[68]]= qs[_0x335e[59]](_[_0x335e[69]](_0x8fdax28[_0x335e[58]],_0x8fdax29[_0x335e[59]]));if(_0x8fdax28[_0x335e[58]][_0x335e[70]]){_0x8fdax1b[_0x335e[68]]= _[_0x335e[73]](_0x8fdax1b[_0x335e[68]],{$or:_[_0x335e[72]](_0x8fdax1b[_0x335e[61]],function(_0x8fdax2a){var _0x8fdax2b={};_0x8fdax2b[_0x8fdax2a]= {$like:_0x335e[71]+ _0x8fdax28[_0x335e[58]][_0x335e[70]]+ _0x335e[71]};return _0x8fdax2b})})};_0x8fdax1b= _[_0x335e[73]]({},_0x8fdax1b,_0x8fdax28[_0x335e[74]]);return db[_0x335e[56]][_0x335e[76]](_0x8fdax1b)[_0x335e[45]](respondWithFilteredResult(_0x8fdax15,_0x8fdax1b,_0x335e[53]))[_0x335e[75]](handleError(_0x8fdax15,null,_0x335e[53]))};exports[_0x335e[77]]= function(_0x8fdax28,_0x8fdax15){var _0x8fdax1b={raw:true,where:{id:_0x8fdax28[_0x335e[79]][_0x335e[78]]}},_0x8fdax29={};_0x8fdax29[_0x335e[54]]= _[_0x335e[57]](db[_0x335e[56]][_0x335e[55]]);_0x8fdax29[_0x335e[58]]= _[_0x335e[57]](_0x8fdax28[_0x335e[58]]);_0x8fdax29[_0x335e[59]]= _[_0x335e[60]](_0x8fdax29[_0x335e[54]],_0x8fdax29[_0x335e[58]]);_0x8fdax1b[_0x335e[61]]= _[_0x335e[60]](_0x8fdax29[_0x335e[54]],qs[_0x335e[62]](_0x8fdax28[_0x335e[58]][_0x335e[62]]));_0x8fdax1b[_0x335e[61]]= (_0x8fdax1b[_0x335e[61]][_0x335e[63]])?_0x8fdax1b[_0x335e[61]]:_0x8fdax29[_0x335e[54]];_0x8fdax1b= _[_0x335e[73]]({},_0x8fdax1b,_0x8fdax28[_0x335e[74]]);return db[_0x335e[56]][_0x335e[80]](_0x8fdax1b)[_0x335e[45]](handleEntityNotFound(_0x8fdax15,null,_0x335e[77]))[_0x335e[45]](respondWithResult(_0x8fdax15,null,_0x335e[77]))[_0x335e[75]](handleError(_0x8fdax15,null,_0x335e[77]))};exports[_0x335e[81]]= function(_0x8fdax28,_0x8fdax15){return db[_0x335e[56]][_0x335e[81]](_0x8fdax28[_0x335e[82]],{})[_0x335e[45]](respondWithResult(_0x8fdax15,201,_0x335e[81]))[_0x335e[75]](handleError(_0x8fdax15,null,_0x335e[81]))};exports[_0x335e[46]]= function(_0x8fdax28,_0x8fdax15){if(_0x8fdax28[_0x335e[82]][_0x335e[78]]){delete _0x8fdax28[_0x335e[82]][_0x335e[78]]};return db[_0x335e[56]][_0x335e[80]]({where:{id:_0x8fdax28[_0x335e[79]][_0x335e[78]]}})[_0x335e[45]](handleEntityNotFound(_0x8fdax15,null,_0x335e[46]))[_0x335e[45]](saveUpdates(_0x8fdax28[_0x335e[82]],null,_0x335e[46]))[_0x335e[45]](respondWithResult(_0x8fdax15,null,_0x335e[46]))[_0x335e[75]](handleError(_0x8fdax15,null,_0x335e[46]))};exports[_0x335e[48]]= function(_0x8fdax28,_0x8fdax15){return db[_0x335e[56]][_0x335e[80]]({where:{id:_0x8fdax28[_0x335e[79]][_0x335e[78]]}})[_0x335e[45]](handleEntityNotFound(_0x8fdax15,null,_0x335e[48]))[_0x335e[45]](removeEntity(_0x8fdax15,null,_0x335e[48]))[_0x335e[75]](handleError(_0x8fdax15,null,_0x335e[48]))}
\ No newline at end of file
index 93c2d5c..8b9bf9c 100644 (file)
@@ -1 +1 @@
-var _0xd856=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x6D\x61\x69\x6C\x5F\x73\x65\x72\x76\x65\x72\x73\x5F\x6F\x75\x74","\x64\x65\x66\x69\x6E\x65"];_0xd856[0];var _=require(_0xd856[1]);var util=require(_0xd856[2]);var logger=require(_0xd856[4])(_0xd856[3]);var attributes=require(_0xd856[5]);module[_0xd856[6]]= function(_0x5b03x5,_0x5b03x6){return _0x5b03x5[_0xd856[9]](_0xd856[7],attributes,{tableName:_0xd856[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x5663=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x6D\x61\x69\x6C\x5F\x73\x65\x72\x76\x65\x72\x73\x5F\x6F\x75\x74","\x64\x65\x66\x69\x6E\x65"];_0x5663[0];var _=require(_0x5663[1]);var util=require(_0x5663[2]);var logger=require(_0x5663[4])(_0x5663[3]);var attributes=require(_0x5663[5]);module[_0x5663[6]]= function(_0xb7aax5,_0xb7aax6){return _0xb7aax5[_0x5663[9]](_0x5663[7],attributes,{tableName:_0x5663[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index b1cdc77..a5e57c0 100644 (file)
@@ -1 +1 @@
-var _0x5e8f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x5e8f[0];var _=require(_0x5e8f[1]);var util=require(_0x5e8f[2]);var moment=require(_0x5e8f[3]);var BPromise=require(_0x5e8f[4]);var db=require(_0x5e8f[6])[_0x5e8f[5]];var utils=require(_0x5e8f[7]);var logger=require(_0x5e8f[9])(_0x5e8f[8]);var jayson=require(_0x5e8f[10]);var client=jayson[_0x5e8f[12]][_0x5e8f[11]]({port:9002});function respondWithRpcPromise(_0xe635xb,_0xe635xc,_0xe635xd){return  new BPromise(function(_0xe635xe,_0xe635xf){return client[_0x5e8f[25]](_0xe635xb,_0xe635xd)[_0x5e8f[24]](function(_0xe635x11){logger[_0x5e8f[17]](_0x5e8f[13],_0xe635xc,_0x5e8f[16]);logger[_0x5e8f[20]](_0x5e8f[18],_0xe635xc,_0x5e8f[16],JSON[_0x5e8f[19]](_0xe635x11));if(_0xe635x11[_0x5e8f[14]]){if(_0xe635x11[_0x5e8f[14]][_0x5e8f[21]]=== 500){logger[_0x5e8f[14]](_0x5e8f[13],_0xe635xc,_0xe635x11[_0x5e8f[14]][_0x5e8f[22]]);return _0xe635xf(_0xe635x11[_0x5e8f[14]][_0x5e8f[22]])};logger[_0x5e8f[14]](_0x5e8f[13],_0xe635xc,_0xe635x11[_0x5e8f[14]][_0x5e8f[22]]);return _0xe635xe(_0xe635x11[_0x5e8f[14]][_0x5e8f[22]])}else {logger[_0x5e8f[17]](_0x5e8f[13],_0xe635xc,_0x5e8f[16]);_0xe635xe(_0xe635x11[_0x5e8f[23]][_0x5e8f[22]])}})[_0x5e8f[15]](function(_0xe635x10){logger[_0x5e8f[14]](_0x5e8f[13],_0xe635xc,_0xe635x10);_0xe635xf(_0xe635x10)})})}
\ No newline at end of file
+var _0x4475=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x4475[0];var _=require(_0x4475[1]);var util=require(_0x4475[2]);var moment=require(_0x4475[3]);var BPromise=require(_0x4475[4]);var db=require(_0x4475[6])[_0x4475[5]];var utils=require(_0x4475[7]);var logger=require(_0x4475[9])(_0x4475[8]);var jayson=require(_0x4475[10]);var client=jayson[_0x4475[12]][_0x4475[11]]({port:9002});function respondWithRpcPromise(_0xac51xb,_0xac51xc,_0xac51xd){return  new BPromise(function(_0xac51xe,_0xac51xf){return client[_0x4475[25]](_0xac51xb,_0xac51xd)[_0x4475[24]](function(_0xac51x11){logger[_0x4475[17]](_0x4475[13],_0xac51xc,_0x4475[16]);logger[_0x4475[20]](_0x4475[18],_0xac51xc,_0x4475[16],JSON[_0x4475[19]](_0xac51x11));if(_0xac51x11[_0x4475[14]]){if(_0xac51x11[_0x4475[14]][_0x4475[21]]=== 500){logger[_0x4475[14]](_0x4475[13],_0xac51xc,_0xac51x11[_0x4475[14]][_0x4475[22]]);return _0xac51xf(_0xac51x11[_0x4475[14]][_0x4475[22]])};logger[_0x4475[14]](_0x4475[13],_0xac51xc,_0xac51x11[_0x4475[14]][_0x4475[22]]);return _0xac51xe(_0xac51x11[_0x4475[14]][_0x4475[22]])}else {logger[_0x4475[17]](_0x4475[13],_0xac51xc,_0x4475[16]);_0xac51xe(_0xac51x11[_0x4475[23]][_0x4475[22]])}})[_0x4475[15]](function(_0xac51x10){logger[_0x4475[14]](_0x4475[13],_0xac51xc,_0xac51x10);_0xac51xf(_0xac51x10)})})}
\ No newline at end of file
index 833237e..5157c08 100644 (file)
@@ -1 +1 @@
-var _0x4965=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x4965[0];var multer=require(_0x4965[1]);var util=require(_0x4965[2]);var path=require(_0x4965[3]);var express=require(_0x4965[4]);var router=express.Router();var auth=require(_0x4965[5]);var config=require(_0x4965[6]);var controller=require(_0x4965[7]);router[_0x4965[11]](_0x4965[8],auth[_0x4965[9]](),controller[_0x4965[10]]);router[_0x4965[11]](_0x4965[12],auth[_0x4965[9]](),controller[_0x4965[13]]);router[_0x4965[11]](_0x4965[14],auth[_0x4965[9]](),controller[_0x4965[15]]);router[_0x4965[17]](_0x4965[8],auth[_0x4965[9]](),controller[_0x4965[16]]);router[_0x4965[19]](_0x4965[14],auth[_0x4965[9]](),controller[_0x4965[18]]);router[_0x4965[21]](_0x4965[14],auth[_0x4965[9]](),controller[_0x4965[20]]);module[_0x4965[22]]= router
\ No newline at end of file
+var _0x36e6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x36e6[0];var multer=require(_0x36e6[1]);var util=require(_0x36e6[2]);var path=require(_0x36e6[3]);var express=require(_0x36e6[4]);var router=express.Router();var auth=require(_0x36e6[5]);var config=require(_0x36e6[6]);var controller=require(_0x36e6[7]);router[_0x36e6[11]](_0x36e6[8],auth[_0x36e6[9]](),controller[_0x36e6[10]]);router[_0x36e6[11]](_0x36e6[12],auth[_0x36e6[9]](),controller[_0x36e6[13]]);router[_0x36e6[11]](_0x36e6[14],auth[_0x36e6[9]](),controller[_0x36e6[15]]);router[_0x36e6[17]](_0x36e6[8],auth[_0x36e6[9]](),controller[_0x36e6[16]]);router[_0x36e6[19]](_0x36e6[14],auth[_0x36e6[9]](),controller[_0x36e6[18]]);router[_0x36e6[21]](_0x36e6[14],auth[_0x36e6[9]](),controller[_0x36e6[20]]);module[_0x36e6[22]]= router
\ No newline at end of file
index 9291478..7d4ea8e 100644 (file)
@@ -1 +1 @@
-var _0x1a5f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74"];_0x1a5f[0];var Sequelize=require(_0x1a5f[1]);module[_0x1a5f[2]]= {uniqueid:{type:Sequelize[_0x1a5f[3]]},subject:{type:Sequelize[_0x1a5f[3]]},accountid:{type:Sequelize[_0x1a5f[3]]},accountname:{type:Sequelize[_0x1a5f[3]]},accountaddress:{type:Sequelize[_0x1a5f[3]]},application:{type:Sequelize[_0x1a5f[3]]},memberid:{type:Sequelize[_0x1a5f[3]]},membername:{type:Sequelize[_0x1a5f[3]]},queue:{type:Sequelize[_0x1a5f[4]]},queuename:{type:Sequelize[_0x1a5f[3]]},roomid:{type:Sequelize[_0x1a5f[4]]},fidelity:{type:Sequelize[_0x1a5f[4]],defaultValue:0},joinAt:{type:Sequelize[_0x1a5f[5]]},leaveAt:{type:Sequelize[_0x1a5f[5]]},completeAt:{type:Sequelize[_0x1a5f[5]]},complete:{type:Sequelize[_0x1a5f[6]],defaulValue:false},completeReason:{type:Sequelize.ENUM(_0x1a5f[7])},timeout:{type:Sequelize[_0x1a5f[6]],defaultValue:false},timeslot:{type:Sequelize[_0x1a5f[4]]}}
\ No newline at end of file
+var _0x3d65=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74"];_0x3d65[0];var Sequelize=require(_0x3d65[1]);module[_0x3d65[2]]= {uniqueid:{type:Sequelize[_0x3d65[3]]},subject:{type:Sequelize[_0x3d65[3]]},accountid:{type:Sequelize[_0x3d65[3]]},accountname:{type:Sequelize[_0x3d65[3]]},accountaddress:{type:Sequelize[_0x3d65[3]]},application:{type:Sequelize[_0x3d65[3]]},memberid:{type:Sequelize[_0x3d65[3]]},membername:{type:Sequelize[_0x3d65[3]]},queue:{type:Sequelize[_0x3d65[4]]},queuename:{type:Sequelize[_0x3d65[3]]},roomid:{type:Sequelize[_0x3d65[4]]},fidelity:{type:Sequelize[_0x3d65[4]],defaultValue:0},joinAt:{type:Sequelize[_0x3d65[5]]},leaveAt:{type:Sequelize[_0x3d65[5]]},completeAt:{type:Sequelize[_0x3d65[5]]},complete:{type:Sequelize[_0x3d65[6]],defaulValue:false},completeReason:{type:Sequelize.ENUM(_0x3d65[7])},timeout:{type:Sequelize[_0x3d65[6]],defaultValue:false},timeslot:{type:Sequelize[_0x3d65[4]]}}
\ No newline at end of file
index 8909ef8..cf1eef2 100644 (file)
@@ -1 +1 @@
-var _0x8e93=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x8e93[0];var jsonpatch=require(_0x8e93[1]);var rp=require(_0x8e93[2]);var moment=require(_0x8e93[3]);var BPromise=require(_0x8e93[4]);var util=require(_0x8e93[5]);var path=require(_0x8e93[6]);var sox=require(_0x8e93[7]);var ejs=require(_0x8e93[8]);var fs=require(_0x8e93[9]);var _=require(_0x8e93[10]);var squel=require(_0x8e93[11]);var crypto=require(_0x8e93[12]);var jsforce=require(_0x8e93[13]);var toCsv=require(_0x8e93[14]);var qs=require(_0x8e93[15]);var logger=require(_0x8e93[17])(_0x8e93[16]);var utils=require(_0x8e93[18]);var config=require(_0x8e93[19]);var db=require(_0x8e93[21])[_0x8e93[20]];function respondWithStatusCode(_0x7617x15,_0x7617x16,_0x7617x17){_0x7617x16= _0x7617x16|| 204;return function(_0x7617x18){if(_0x7617x18){logger[_0x8e93[24]](_0x8e93[22],_0x7617x17,_0x7617x16,_0x8e93[23]);logger[_0x8e93[26]](_0x8e93[25],_0x7617x17,_0x7617x16,_0x8e93[23]);return _0x7617x15[_0x8e93[27]](_0x7617x16)};return _0x7617x15[_0x8e93[29]](304)[_0x8e93[28]]()}}function respondWithResult(_0x7617x15,_0x7617x16,_0x7617x17){_0x7617x16= _0x7617x16|| 200;return function(_0x7617x18){if(_0x7617x18){logger[_0x8e93[24]](_0x8e93[22],_0x7617x17,_0x7617x16,_0x8e93[30]);logger[_0x8e93[26]](_0x8e93[25],_0x7617x17,_0x7617x16,_0x8e93[30],JSON[_0x8e93[31]](_0x7617x18));return _0x7617x15[_0x8e93[29]](_0x7617x16)[_0x8e93[32]](_0x7617x18)};return _0x7617x15[_0x8e93[29]](304)[_0x8e93[28]]()}}function respondWithFilteredResult(_0x7617x15,_0x7617x1b,_0x7617x17){return function(_0x7617x18){if(_0x7617x18){var _0x7617x1c=_0x7617x18[_0x8e93[33]],_0x7617x1d=_0x7617x1b[_0x8e93[34]],_0x7617x1e=_0x7617x1b[_0x8e93[34]]+ _0x7617x1b[_0x8e93[35]],_0x7617x16;if(_0x7617x1e>= _0x7617x1c){_0x7617x1e= _0x7617x1c;_0x7617x16= 200}else {_0x7617x16= 206};_0x7617x15[_0x8e93[29]](_0x7617x16);logger[_0x8e93[24]](_0x8e93[22],_0x7617x17,_0x7617x16,_0x8e93[36]);logger[_0x8e93[26]](_0x8e93[25],_0x7617x17,_0x7617x16,_0x8e93[30],JSON[_0x8e93[31]](_0x7617x18));return _0x7617x15[_0x8e93[40]](_0x8e93[37],_0x7617x1d+ _0x8e93[38]+ _0x7617x1e+ _0x8e93[39]+ _0x7617x1c)[_0x8e93[32]](_0x7617x18)};return null}}function patchUpdates(_0x7617x20){return function(_0x7617x18){try{jsonpatch[_0x8e93[41]](_0x7617x18,_0x7617x20,true)}catch(err){return BPromise[_0x8e93[42]](err)};return _0x7617x18[_0x8e93[43]]()}}function saveUpdates(_0x7617x22,_0x7617x16,_0x7617x17){return function(_0x7617x18){if(_0x7617x18){return _0x7617x18[_0x8e93[46]](_0x7617x22)[_0x8e93[45]](function(_0x7617x23){logger[_0x8e93[24]](_0x8e93[22],_0x7617x17,_0x7617x16,_0x8e93[44]);logger[_0x8e93[26]](_0x8e93[25],_0x7617x17,_0x7617x16,_0x8e93[44],JSON[_0x8e93[31]](_0x7617x18));return _0x7617x23})};return null}}function removeEntity(_0x7617x15,_0x7617x16,_0x7617x17){return function(_0x7617x18){if(_0x7617x18){return _0x7617x18[_0x8e93[48]]()[_0x8e93[45]](function(){logger[_0x8e93[24]](_0x8e93[22],_0x7617x17,_0x7617x16,_0x8e93[47]);logger[_0x8e93[26]](_0x8e93[25],_0x7617x17,_0x7617x16,_0x8e93[47],JSON[_0x8e93[31]](_0x7617x18));_0x7617x15[_0x8e93[29]](204)[_0x8e93[28]]()})}}}function handleEntityNotFound(_0x7617x15,_0x7617x16,_0x7617x17){return function(_0x7617x18){if(!_0x7617x18){logger[_0x8e93[50]](_0x8e93[22],_0x7617x17,404,_0x8e93[49]);_0x7617x15[_0x8e93[29]](404)[_0x8e93[28]]();return null};return _0x7617x18}}function handleError(_0x7617x15,_0x7617x16,_0x7617x17){_0x7617x16= _0x7617x16|| 500;return function(_0x7617x27){logger[_0x8e93[50]](_0x8e93[22],_0x7617x17,_0x7617x16,JSON[_0x8e93[31]](_0x7617x27));delete _0x7617x27[_0x8e93[51]];_0x7617x15[_0x8e93[29]](_0x7617x16)[_0x8e93[52]](_0x7617x27)}}exports[_0x8e93[53]]= function(_0x7617x28,_0x7617x15){var _0x7617x1b={},_0x7617x29={};_0x7617x29[_0x8e93[54]]= _[_0x8e93[57]](db[_0x8e93[56]][_0x8e93[55]]);_0x7617x29[_0x8e93[58]]= _[_0x8e93[57]](_0x7617x28[_0x8e93[58]]);_0x7617x29[_0x8e93[59]]= _[_0x8e93[60]](_0x7617x29[_0x8e93[54]],_0x7617x29[_0x8e93[58]]);_0x7617x1b[_0x8e93[61]]= _[_0x8e93[60]](_0x7617x29[_0x8e93[54]],qs[_0x8e93[62]](_0x7617x28[_0x8e93[58]][_0x8e93[62]]));_0x7617x1b[_0x8e93[61]]= (_0x7617x1b[_0x8e93[61]][_0x8e93[63]])?_0x7617x1b[_0x8e93[61]]:_0x7617x29[_0x8e93[54]];if(!_0x7617x28[_0x8e93[58]][_0x8e93[65]](_0x8e93[64])){_0x7617x1b[_0x8e93[35]]= qs[_0x8e93[35]](_0x7617x28[_0x8e93[58]][_0x8e93[35]]);_0x7617x1b[_0x8e93[34]]= qs[_0x8e93[34]](_0x7617x28[_0x8e93[58]][_0x8e93[34]])};_0x7617x1b[_0x8e93[66]]= qs[_0x8e93[67]](_0x7617x28[_0x8e93[58]][_0x8e93[67]]);_0x7617x1b[_0x8e93[68]]= qs[_0x8e93[59]](_[_0x8e93[69]](_0x7617x28[_0x8e93[58]],_0x7617x29[_0x8e93[59]]));if(_0x7617x28[_0x8e93[58]][_0x8e93[70]]){_0x7617x1b[_0x8e93[68]]= _[_0x8e93[73]](_0x7617x1b[_0x8e93[68]],{$or:_[_0x8e93[72]](_0x7617x1b[_0x8e93[61]],function(_0x7617x2a){var _0x7617x2b={};_0x7617x2b[_0x7617x2a]= {$like:_0x8e93[71]+ _0x7617x28[_0x8e93[58]][_0x8e93[70]]+ _0x8e93[71]};return _0x7617x2b})})};_0x7617x1b= _[_0x8e93[73]]({},_0x7617x1b,_0x7617x28[_0x8e93[74]]);return db[_0x8e93[56]][_0x8e93[76]](_0x7617x1b)[_0x8e93[45]](respondWithFilteredResult(_0x7617x15,_0x7617x1b,_0x8e93[53]))[_0x8e93[75]](handleError(_0x7617x15,null,_0x8e93[53]))};exports[_0x8e93[77]]= function(_0x7617x28,_0x7617x15){var _0x7617x1b={raw:false,where:{id:_0x7617x28[_0x8e93[79]][_0x8e93[78]]}},_0x7617x29={};_0x7617x29[_0x8e93[54]]= _[_0x8e93[57]](db[_0x8e93[56]][_0x8e93[55]]);_0x7617x29[_0x8e93[58]]= _[_0x8e93[57]](_0x7617x28[_0x8e93[58]]);_0x7617x29[_0x8e93[59]]= _[_0x8e93[60]](_0x7617x29[_0x8e93[54]],_0x7617x29[_0x8e93[58]]);_0x7617x1b[_0x8e93[61]]= _[_0x8e93[60]](_0x7617x29[_0x8e93[54]],qs[_0x8e93[62]](_0x7617x28[_0x8e93[58]][_0x8e93[62]]));_0x7617x1b[_0x8e93[61]]= (_0x7617x1b[_0x8e93[61]][_0x8e93[63]])?_0x7617x1b[_0x8e93[61]]:_0x7617x29[_0x8e93[54]];_0x7617x1b= _[_0x8e93[73]]({},_0x7617x1b,_0x7617x28[_0x8e93[74]]);return db[_0x8e93[56]][_0x8e93[80]](_0x7617x1b)[_0x8e93[45]](handleEntityNotFound(_0x7617x15,null,_0x8e93[77]))[_0x8e93[45]](respondWithResult(_0x7617x15,null,_0x8e93[77]))[_0x8e93[75]](handleError(_0x7617x15,null,_0x8e93[77]))};exports[_0x8e93[81]]= function(_0x7617x28,_0x7617x15){return db[_0x8e93[56]][_0x8e93[81]](_0x7617x28[_0x8e93[82]],{})[_0x8e93[45]](respondWithResult(_0x7617x15,201,_0x8e93[81]))[_0x8e93[75]](handleError(_0x7617x15,null,_0x8e93[81]))};exports[_0x8e93[46]]= function(_0x7617x28,_0x7617x15){if(_0x7617x28[_0x8e93[82]][_0x8e93[78]]){delete _0x7617x28[_0x8e93[82]][_0x8e93[78]]};return db[_0x8e93[56]][_0x8e93[80]]({where:{id:_0x7617x28[_0x8e93[79]][_0x8e93[78]]}})[_0x8e93[45]](handleEntityNotFound(_0x7617x15,null,_0x8e93[46]))[_0x8e93[45]](saveUpdates(_0x7617x28[_0x8e93[82]],null,_0x8e93[46]))[_0x8e93[45]](respondWithResult(_0x7617x15,null,_0x8e93[46]))[_0x8e93[75]](handleError(_0x7617x15,null,_0x8e93[46]))};exports[_0x8e93[48]]= function(_0x7617x28,_0x7617x15){return db[_0x8e93[56]][_0x8e93[80]]({where:{id:_0x7617x28[_0x8e93[79]][_0x8e93[78]]}})[_0x8e93[45]](handleEntityNotFound(_0x7617x15,null,_0x8e93[48]))[_0x8e93[45]](removeEntity(_0x7617x15,null,_0x8e93[48]))[_0x8e93[75]](handleError(_0x7617x15,null,_0x8e93[48]))};exports[_0x8e93[83]]= function(_0x7617x28,_0x7617x15){return db[_0x8e93[56]][_0x8e93[83]]()[_0x8e93[45]](respondWithResult(_0x7617x15,null,_0x8e93[83]))[_0x8e93[75]](handleError(_0x7617x15,null,_0x8e93[83]))}
\ No newline at end of file
+var _0x34f5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x34f5[0];var jsonpatch=require(_0x34f5[1]);var rp=require(_0x34f5[2]);var moment=require(_0x34f5[3]);var BPromise=require(_0x34f5[4]);var util=require(_0x34f5[5]);var path=require(_0x34f5[6]);var sox=require(_0x34f5[7]);var ejs=require(_0x34f5[8]);var fs=require(_0x34f5[9]);var _=require(_0x34f5[10]);var squel=require(_0x34f5[11]);var crypto=require(_0x34f5[12]);var jsforce=require(_0x34f5[13]);var toCsv=require(_0x34f5[14]);var qs=require(_0x34f5[15]);var logger=require(_0x34f5[17])(_0x34f5[16]);var utils=require(_0x34f5[18]);var config=require(_0x34f5[19]);var db=require(_0x34f5[21])[_0x34f5[20]];function respondWithStatusCode(_0xdef0x15,_0xdef0x16,_0xdef0x17){_0xdef0x16= _0xdef0x16|| 204;return function(_0xdef0x18){if(_0xdef0x18){logger[_0x34f5[24]](_0x34f5[22],_0xdef0x17,_0xdef0x16,_0x34f5[23]);logger[_0x34f5[26]](_0x34f5[25],_0xdef0x17,_0xdef0x16,_0x34f5[23]);return _0xdef0x15[_0x34f5[27]](_0xdef0x16)};return _0xdef0x15[_0x34f5[29]](304)[_0x34f5[28]]()}}function respondWithResult(_0xdef0x15,_0xdef0x16,_0xdef0x17){_0xdef0x16= _0xdef0x16|| 200;return function(_0xdef0x18){if(_0xdef0x18){logger[_0x34f5[24]](_0x34f5[22],_0xdef0x17,_0xdef0x16,_0x34f5[30]);logger[_0x34f5[26]](_0x34f5[25],_0xdef0x17,_0xdef0x16,_0x34f5[30],JSON[_0x34f5[31]](_0xdef0x18));return _0xdef0x15[_0x34f5[29]](_0xdef0x16)[_0x34f5[32]](_0xdef0x18)};return _0xdef0x15[_0x34f5[29]](304)[_0x34f5[28]]()}}function respondWithFilteredResult(_0xdef0x15,_0xdef0x1b,_0xdef0x17){return function(_0xdef0x18){if(_0xdef0x18){var _0xdef0x1c=_0xdef0x18[_0x34f5[33]],_0xdef0x1d=_0xdef0x1b[_0x34f5[34]],_0xdef0x1e=_0xdef0x1b[_0x34f5[34]]+ _0xdef0x1b[_0x34f5[35]],_0xdef0x16;if(_0xdef0x1e>= _0xdef0x1c){_0xdef0x1e= _0xdef0x1c;_0xdef0x16= 200}else {_0xdef0x16= 206};_0xdef0x15[_0x34f5[29]](_0xdef0x16);logger[_0x34f5[24]](_0x34f5[22],_0xdef0x17,_0xdef0x16,_0x34f5[36]);logger[_0x34f5[26]](_0x34f5[25],_0xdef0x17,_0xdef0x16,_0x34f5[30],JSON[_0x34f5[31]](_0xdef0x18));return _0xdef0x15[_0x34f5[40]](_0x34f5[37],_0xdef0x1d+ _0x34f5[38]+ _0xdef0x1e+ _0x34f5[39]+ _0xdef0x1c)[_0x34f5[32]](_0xdef0x18)};return null}}function patchUpdates(_0xdef0x20){return function(_0xdef0x18){try{jsonpatch[_0x34f5[41]](_0xdef0x18,_0xdef0x20,true)}catch(err){return BPromise[_0x34f5[42]](err)};return _0xdef0x18[_0x34f5[43]]()}}function saveUpdates(_0xdef0x22,_0xdef0x16,_0xdef0x17){return function(_0xdef0x18){if(_0xdef0x18){return _0xdef0x18[_0x34f5[46]](_0xdef0x22)[_0x34f5[45]](function(_0xdef0x23){logger[_0x34f5[24]](_0x34f5[22],_0xdef0x17,_0xdef0x16,_0x34f5[44]);logger[_0x34f5[26]](_0x34f5[25],_0xdef0x17,_0xdef0x16,_0x34f5[44],JSON[_0x34f5[31]](_0xdef0x18));return _0xdef0x23})};return null}}function removeEntity(_0xdef0x15,_0xdef0x16,_0xdef0x17){return function(_0xdef0x18){if(_0xdef0x18){return _0xdef0x18[_0x34f5[48]]()[_0x34f5[45]](function(){logger[_0x34f5[24]](_0x34f5[22],_0xdef0x17,_0xdef0x16,_0x34f5[47]);logger[_0x34f5[26]](_0x34f5[25],_0xdef0x17,_0xdef0x16,_0x34f5[47],JSON[_0x34f5[31]](_0xdef0x18));_0xdef0x15[_0x34f5[29]](204)[_0x34f5[28]]()})}}}function handleEntityNotFound(_0xdef0x15,_0xdef0x16,_0xdef0x17){return function(_0xdef0x18){if(!_0xdef0x18){logger[_0x34f5[50]](_0x34f5[22],_0xdef0x17,404,_0x34f5[49]);_0xdef0x15[_0x34f5[29]](404)[_0x34f5[28]]();return null};return _0xdef0x18}}function handleError(_0xdef0x15,_0xdef0x16,_0xdef0x17){_0xdef0x16= _0xdef0x16|| 500;return function(_0xdef0x27){logger[_0x34f5[50]](_0x34f5[22],_0xdef0x17,_0xdef0x16,JSON[_0x34f5[31]](_0xdef0x27));delete _0xdef0x27[_0x34f5[51]];_0xdef0x15[_0x34f5[29]](_0xdef0x16)[_0x34f5[52]](_0xdef0x27)}}exports[_0x34f5[53]]= function(_0xdef0x28,_0xdef0x15){var _0xdef0x1b={},_0xdef0x29={};_0xdef0x29[_0x34f5[54]]= _[_0x34f5[57]](db[_0x34f5[56]][_0x34f5[55]]);_0xdef0x29[_0x34f5[58]]= _[_0x34f5[57]](_0xdef0x28[_0x34f5[58]]);_0xdef0x29[_0x34f5[59]]= _[_0x34f5[60]](_0xdef0x29[_0x34f5[54]],_0xdef0x29[_0x34f5[58]]);_0xdef0x1b[_0x34f5[61]]= _[_0x34f5[60]](_0xdef0x29[_0x34f5[54]],qs[_0x34f5[62]](_0xdef0x28[_0x34f5[58]][_0x34f5[62]]));_0xdef0x1b[_0x34f5[61]]= (_0xdef0x1b[_0x34f5[61]][_0x34f5[63]])?_0xdef0x1b[_0x34f5[61]]:_0xdef0x29[_0x34f5[54]];if(!_0xdef0x28[_0x34f5[58]][_0x34f5[65]](_0x34f5[64])){_0xdef0x1b[_0x34f5[35]]= qs[_0x34f5[35]](_0xdef0x28[_0x34f5[58]][_0x34f5[35]]);_0xdef0x1b[_0x34f5[34]]= qs[_0x34f5[34]](_0xdef0x28[_0x34f5[58]][_0x34f5[34]])};_0xdef0x1b[_0x34f5[66]]= qs[_0x34f5[67]](_0xdef0x28[_0x34f5[58]][_0x34f5[67]]);_0xdef0x1b[_0x34f5[68]]= qs[_0x34f5[59]](_[_0x34f5[69]](_0xdef0x28[_0x34f5[58]],_0xdef0x29[_0x34f5[59]]));if(_0xdef0x28[_0x34f5[58]][_0x34f5[70]]){_0xdef0x1b[_0x34f5[68]]= _[_0x34f5[73]](_0xdef0x1b[_0x34f5[68]],{$or:_[_0x34f5[72]](_0xdef0x1b[_0x34f5[61]],function(_0xdef0x2a){var _0xdef0x2b={};_0xdef0x2b[_0xdef0x2a]= {$like:_0x34f5[71]+ _0xdef0x28[_0x34f5[58]][_0x34f5[70]]+ _0x34f5[71]};return _0xdef0x2b})})};_0xdef0x1b= _[_0x34f5[73]]({},_0xdef0x1b,_0xdef0x28[_0x34f5[74]]);return db[_0x34f5[56]][_0x34f5[76]](_0xdef0x1b)[_0x34f5[45]](respondWithFilteredResult(_0xdef0x15,_0xdef0x1b,_0x34f5[53]))[_0x34f5[75]](handleError(_0xdef0x15,null,_0x34f5[53]))};exports[_0x34f5[77]]= function(_0xdef0x28,_0xdef0x15){var _0xdef0x1b={raw:false,where:{id:_0xdef0x28[_0x34f5[79]][_0x34f5[78]]}},_0xdef0x29={};_0xdef0x29[_0x34f5[54]]= _[_0x34f5[57]](db[_0x34f5[56]][_0x34f5[55]]);_0xdef0x29[_0x34f5[58]]= _[_0x34f5[57]](_0xdef0x28[_0x34f5[58]]);_0xdef0x29[_0x34f5[59]]= _[_0x34f5[60]](_0xdef0x29[_0x34f5[54]],_0xdef0x29[_0x34f5[58]]);_0xdef0x1b[_0x34f5[61]]= _[_0x34f5[60]](_0xdef0x29[_0x34f5[54]],qs[_0x34f5[62]](_0xdef0x28[_0x34f5[58]][_0x34f5[62]]));_0xdef0x1b[_0x34f5[61]]= (_0xdef0x1b[_0x34f5[61]][_0x34f5[63]])?_0xdef0x1b[_0x34f5[61]]:_0xdef0x29[_0x34f5[54]];_0xdef0x1b= _[_0x34f5[73]]({},_0xdef0x1b,_0xdef0x28[_0x34f5[74]]);return db[_0x34f5[56]][_0x34f5[80]](_0xdef0x1b)[_0x34f5[45]](handleEntityNotFound(_0xdef0x15,null,_0x34f5[77]))[_0x34f5[45]](respondWithResult(_0xdef0x15,null,_0x34f5[77]))[_0x34f5[75]](handleError(_0xdef0x15,null,_0x34f5[77]))};exports[_0x34f5[81]]= function(_0xdef0x28,_0xdef0x15){return db[_0x34f5[56]][_0x34f5[81]](_0xdef0x28[_0x34f5[82]],{})[_0x34f5[45]](respondWithResult(_0xdef0x15,201,_0x34f5[81]))[_0x34f5[75]](handleError(_0xdef0x15,null,_0x34f5[81]))};exports[_0x34f5[46]]= function(_0xdef0x28,_0xdef0x15){if(_0xdef0x28[_0x34f5[82]][_0x34f5[78]]){delete _0xdef0x28[_0x34f5[82]][_0x34f5[78]]};return db[_0x34f5[56]][_0x34f5[80]]({where:{id:_0xdef0x28[_0x34f5[79]][_0x34f5[78]]}})[_0x34f5[45]](handleEntityNotFound(_0xdef0x15,null,_0x34f5[46]))[_0x34f5[45]](saveUpdates(_0xdef0x28[_0x34f5[82]],null,_0x34f5[46]))[_0x34f5[45]](respondWithResult(_0xdef0x15,null,_0x34f5[46]))[_0x34f5[75]](handleError(_0xdef0x15,null,_0x34f5[46]))};exports[_0x34f5[48]]= function(_0xdef0x28,_0xdef0x15){return db[_0x34f5[56]][_0x34f5[80]]({where:{id:_0xdef0x28[_0x34f5[79]][_0x34f5[78]]}})[_0x34f5[45]](handleEntityNotFound(_0xdef0x15,null,_0x34f5[48]))[_0x34f5[45]](removeEntity(_0xdef0x15,null,_0x34f5[48]))[_0x34f5[75]](handleError(_0xdef0x15,null,_0x34f5[48]))};exports[_0x34f5[83]]= function(_0xdef0x28,_0xdef0x15){return db[_0x34f5[56]][_0x34f5[83]]()[_0x34f5[45]](respondWithResult(_0xdef0x15,null,_0x34f5[83]))[_0x34f5[75]](handleError(_0xdef0x15,null,_0x34f5[83]))}
\ No newline at end of file
index 38d2559..f41ecb9 100644 (file)
@@ -1 +1 @@
-var _0xe640=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x61\x69\x6C\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0xe640[0];var _=require(_0xe640[1]);var util=require(_0xe640[2]);var logger=require(_0xe640[4])(_0xe640[3]);var attributes=require(_0xe640[5]);module[_0xe640[6]]= function(_0xab66x5,_0xab66x6){return _0xab66x5[_0xe640[9]](_0xe640[7],attributes,{tableName:_0xe640[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x69da=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x61\x69\x6C\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x69da[0];var _=require(_0x69da[1]);var util=require(_0x69da[2]);var logger=require(_0x69da[4])(_0x69da[3]);var attributes=require(_0x69da[5]);module[_0x69da[6]]= function(_0xfcf5x5,_0xfcf5x6){return _0xfcf5x5[_0x69da[9]](_0x69da[7],attributes,{tableName:_0x69da[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 3c391a2..2c96d94 100644 (file)
@@ -1 +1 @@
-var _0x4396=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x4396[0];var _=require(_0x4396[1]);var util=require(_0x4396[2]);var moment=require(_0x4396[3]);var BPromise=require(_0x4396[4]);var db=require(_0x4396[6])[_0x4396[5]];var utils=require(_0x4396[7]);var logger=require(_0x4396[9])(_0x4396[8]);var jayson=require(_0x4396[10]);var client=jayson[_0x4396[12]][_0x4396[11]]({port:9002});function respondWithRpcPromise(_0x8748xb,_0x8748xc,_0x8748xd){return  new BPromise(function(_0x8748xe,_0x8748xf){return client[_0x4396[25]](_0x8748xb,_0x8748xd)[_0x4396[24]](function(_0x8748x11){logger[_0x4396[17]](_0x4396[13],_0x8748xc,_0x4396[16]);logger[_0x4396[20]](_0x4396[18],_0x8748xc,_0x4396[16],JSON[_0x4396[19]](_0x8748x11));if(_0x8748x11[_0x4396[14]]){if(_0x8748x11[_0x4396[14]][_0x4396[21]]=== 500){logger[_0x4396[14]](_0x4396[13],_0x8748xc,_0x8748x11[_0x4396[14]][_0x4396[22]]);return _0x8748xf(_0x8748x11[_0x4396[14]][_0x4396[22]])};logger[_0x4396[14]](_0x4396[13],_0x8748xc,_0x8748x11[_0x4396[14]][_0x4396[22]]);return _0x8748xe(_0x8748x11[_0x4396[14]][_0x4396[22]])}else {logger[_0x4396[17]](_0x4396[13],_0x8748xc,_0x4396[16]);_0x8748xe(_0x8748x11[_0x4396[23]][_0x4396[22]])}})[_0x4396[15]](function(_0x8748x10){logger[_0x4396[14]](_0x4396[13],_0x8748xc,_0x8748x10);_0x8748xf(_0x8748x10)})})}
\ No newline at end of file
+var _0x13e7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x13e7[0];var _=require(_0x13e7[1]);var util=require(_0x13e7[2]);var moment=require(_0x13e7[3]);var BPromise=require(_0x13e7[4]);var db=require(_0x13e7[6])[_0x13e7[5]];var utils=require(_0x13e7[7]);var logger=require(_0x13e7[9])(_0x13e7[8]);var jayson=require(_0x13e7[10]);var client=jayson[_0x13e7[12]][_0x13e7[11]]({port:9002});function respondWithRpcPromise(_0xd8c6xb,_0xd8c6xc,_0xd8c6xd){return  new BPromise(function(_0xd8c6xe,_0xd8c6xf){return client[_0x13e7[25]](_0xd8c6xb,_0xd8c6xd)[_0x13e7[24]](function(_0xd8c6x11){logger[_0x13e7[17]](_0x13e7[13],_0xd8c6xc,_0x13e7[16]);logger[_0x13e7[20]](_0x13e7[18],_0xd8c6xc,_0x13e7[16],JSON[_0x13e7[19]](_0xd8c6x11));if(_0xd8c6x11[_0x13e7[14]]){if(_0xd8c6x11[_0x13e7[14]][_0x13e7[21]]=== 500){logger[_0x13e7[14]](_0x13e7[13],_0xd8c6xc,_0xd8c6x11[_0x13e7[14]][_0x13e7[22]]);return _0xd8c6xf(_0xd8c6x11[_0x13e7[14]][_0x13e7[22]])};logger[_0x13e7[14]](_0x13e7[13],_0xd8c6xc,_0xd8c6x11[_0x13e7[14]][_0x13e7[22]]);return _0xd8c6xe(_0xd8c6x11[_0x13e7[14]][_0x13e7[22]])}else {logger[_0x13e7[17]](_0x13e7[13],_0xd8c6xc,_0x13e7[16]);_0xd8c6xe(_0xd8c6x11[_0x13e7[23]][_0x13e7[22]])}})[_0x13e7[15]](function(_0xd8c6x10){logger[_0x13e7[14]](_0x13e7[13],_0xd8c6xc,_0xd8c6x10);_0xd8c6xf(_0xd8c6x10)})})}
\ No newline at end of file
index 401a2d3..f40a466 100644 (file)
@@ -1 +1 @@
-var _0xbad5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xbad5[0];var multer=require(_0xbad5[1]);var util=require(_0xbad5[2]);var path=require(_0xbad5[3]);var express=require(_0xbad5[4]);var router=express.Router();var auth=require(_0xbad5[5]);var config=require(_0xbad5[6]);var controller=require(_0xbad5[7]);router[_0xbad5[11]](_0xbad5[8],auth[_0xbad5[9]](),controller[_0xbad5[10]]);router[_0xbad5[11]](_0xbad5[12],auth[_0xbad5[9]](),controller[_0xbad5[13]]);router[_0xbad5[11]](_0xbad5[14],auth[_0xbad5[9]](),controller[_0xbad5[15]]);router[_0xbad5[17]](_0xbad5[8],auth[_0xbad5[9]](),controller[_0xbad5[16]]);router[_0xbad5[19]](_0xbad5[14],auth[_0xbad5[9]](),controller[_0xbad5[18]]);router[_0xbad5[21]](_0xbad5[14],auth[_0xbad5[9]](),controller[_0xbad5[20]]);module[_0xbad5[22]]= router
\ No newline at end of file
+var _0xbed7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xbed7[0];var multer=require(_0xbed7[1]);var util=require(_0xbed7[2]);var path=require(_0xbed7[3]);var express=require(_0xbed7[4]);var router=express.Router();var auth=require(_0xbed7[5]);var config=require(_0xbed7[6]);var controller=require(_0xbed7[7]);router[_0xbed7[11]](_0xbed7[8],auth[_0xbed7[9]](),controller[_0xbed7[10]]);router[_0xbed7[11]](_0xbed7[12],auth[_0xbed7[9]](),controller[_0xbed7[13]]);router[_0xbed7[11]](_0xbed7[14],auth[_0xbed7[9]](),controller[_0xbed7[15]]);router[_0xbed7[17]](_0xbed7[8],auth[_0xbed7[9]](),controller[_0xbed7[16]]);router[_0xbed7[19]](_0xbed7[14],auth[_0xbed7[9]](),controller[_0xbed7[18]]);router[_0xbed7[21]](_0xbed7[14],auth[_0xbed7[9]](),controller[_0xbed7[20]]);module[_0xbed7[22]]= router
\ No newline at end of file
index 91052a3..d758751 100644 (file)
@@ -1 +1 @@
-var _0x3b93=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x45\x46\x41\x55\x4C\x54\x20\x50\x41\x55\x53\x45","\x4C\x4F\x47\x49\x4E\x2C\x20\x50\x41\x55\x53\x45\x2C\x20\x54\x41\x4C\x4B\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x65\x6E\x74\x65\x72\x41\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x65\x78\x69\x74\x41\x74","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x74\x61\x6C\x6B\x3A\x5B\x69\x6E\x62\x6F\x75\x6E\x64\x2C\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x5D\x2C\x20\x70\x61\x75\x73\x65\x3A\x5B\x72\x65\x61\x73\x6F\x6E\x5D","\x74\x61\x6C\x6B\x3A\x5B\x73\x74\x61\x72\x74\x5D","\x74\x61\x6C\x6B\x3A\x5B\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x5D","\x74\x61\x6C\x6B\x3A\x5B\x64\x69\x61\x6C\x20\x73\x74\x72\x69\x6E\x67\x5D","\x74\x61\x6C\x6B\x3A\x5B\x71\x75\x65\x75\x65\x5D"];_0x3b93[0];var Sequelize=require(_0x3b93[1]);var moment=require(_0x3b93[2]);module[_0x3b93[3]]= {channel:{type:Sequelize[_0x3b93[4]]},membername:{type:Sequelize[_0x3b93[4]]},interface:{type:Sequelize[_0x3b93[4]]},type:{type:Sequelize[_0x3b93[4]],defaultValue:_0x3b93[5],comment:_0x3b93[6]},duration:{type:Sequelize[_0x3b93[7]]},enterAt:{type:Sequelize[_0x3b93[8]]},exitAt:{type:Sequelize[_0x3b93[8]],set:function(_0x2520x3){var _0x2520x4=moment(_0x2520x3);var _0x2520x5=moment(this[_0x3b93[10]](_0x3b93[9]));var _0x2520x6=_0x2520x4[_0x3b93[12]](_0x2520x5,_0x3b93[11]);this[_0x3b93[14]](_0x3b93[13],_0x2520x3);this[_0x3b93[14]](_0x3b93[15],_0x2520x6|| null)}},data1:{type:Sequelize[_0x3b93[4]],comment:_0x3b93[16]},data2:{type:Sequelize[_0x3b93[4]],comment:_0x3b93[17]},data3:{type:Sequelize[_0x3b93[4]],comment:_0x3b93[18]},data4:{type:Sequelize[_0x3b93[4]],comment:_0x3b93[19]},data5:{type:Sequelize[_0x3b93[4]],comment:_0x3b93[20]},role:{type:Sequelize[_0x3b93[4]]},internal:{type:Sequelize[_0x3b93[7]]},uniqueid:{type:Sequelize[_0x3b93[4]]}}
\ No newline at end of file
+var _0x45b5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x45\x46\x41\x55\x4C\x54\x20\x50\x41\x55\x53\x45","\x4C\x4F\x47\x49\x4E\x2C\x20\x50\x41\x55\x53\x45\x2C\x20\x54\x41\x4C\x4B\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x65\x6E\x74\x65\x72\x41\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x65\x78\x69\x74\x41\x74","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x74\x61\x6C\x6B\x3A\x5B\x69\x6E\x62\x6F\x75\x6E\x64\x2C\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x5D\x2C\x20\x70\x61\x75\x73\x65\x3A\x5B\x72\x65\x61\x73\x6F\x6E\x5D","\x74\x61\x6C\x6B\x3A\x5B\x73\x74\x61\x72\x74\x5D","\x74\x61\x6C\x6B\x3A\x5B\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x5D","\x74\x61\x6C\x6B\x3A\x5B\x64\x69\x61\x6C\x20\x73\x74\x72\x69\x6E\x67\x5D","\x74\x61\x6C\x6B\x3A\x5B\x71\x75\x65\x75\x65\x5D"];_0x45b5[0];var Sequelize=require(_0x45b5[1]);var moment=require(_0x45b5[2]);module[_0x45b5[3]]= {channel:{type:Sequelize[_0x45b5[4]]},membername:{type:Sequelize[_0x45b5[4]]},interface:{type:Sequelize[_0x45b5[4]]},type:{type:Sequelize[_0x45b5[4]],defaultValue:_0x45b5[5],comment:_0x45b5[6]},duration:{type:Sequelize[_0x45b5[7]]},enterAt:{type:Sequelize[_0x45b5[8]]},exitAt:{type:Sequelize[_0x45b5[8]],set:function(_0x8df8x3){var _0x8df8x4=moment(_0x8df8x3);var _0x8df8x5=moment(this[_0x45b5[10]](_0x45b5[9]));var _0x8df8x6=_0x8df8x4[_0x45b5[12]](_0x8df8x5,_0x45b5[11]);this[_0x45b5[14]](_0x45b5[13],_0x8df8x3);this[_0x45b5[14]](_0x45b5[15],_0x8df8x6|| null)}},data1:{type:Sequelize[_0x45b5[4]],comment:_0x45b5[16]},data2:{type:Sequelize[_0x45b5[4]],comment:_0x45b5[17]},data3:{type:Sequelize[_0x45b5[4]],comment:_0x45b5[18]},data4:{type:Sequelize[_0x45b5[4]],comment:_0x45b5[19]},data5:{type:Sequelize[_0x45b5[4]],comment:_0x45b5[20]},role:{type:Sequelize[_0x45b5[4]]},internal:{type:Sequelize[_0x45b5[7]]},uniqueid:{type:Sequelize[_0x45b5[4]]}}
\ No newline at end of file
index 219a8fc..2d1baaf 100644 (file)
@@ -1 +1 @@
-var _0x5602=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x5602[0];var jsonpatch=require(_0x5602[1]);var rp=require(_0x5602[2]);var moment=require(_0x5602[3]);var BPromise=require(_0x5602[4]);var util=require(_0x5602[5]);var path=require(_0x5602[6]);var sox=require(_0x5602[7]);var ejs=require(_0x5602[8]);var fs=require(_0x5602[9]);var _=require(_0x5602[10]);var squel=require(_0x5602[11]);var crypto=require(_0x5602[12]);var jsforce=require(_0x5602[13]);var toCsv=require(_0x5602[14]);var qs=require(_0x5602[15]);var logger=require(_0x5602[17])(_0x5602[16]);var utils=require(_0x5602[18]);var config=require(_0x5602[19]);var db=require(_0x5602[21])[_0x5602[20]];function respondWithStatusCode(_0x1c6dx15,_0x1c6dx16,_0x1c6dx17){_0x1c6dx16= _0x1c6dx16|| 204;return function(_0x1c6dx18){if(_0x1c6dx18){logger[_0x5602[24]](_0x5602[22],_0x1c6dx17,_0x1c6dx16,_0x5602[23]);logger[_0x5602[26]](_0x5602[25],_0x1c6dx17,_0x1c6dx16,_0x5602[23]);return _0x1c6dx15[_0x5602[27]](_0x1c6dx16)};return _0x1c6dx15[_0x5602[29]](304)[_0x5602[28]]()}}function respondWithResult(_0x1c6dx15,_0x1c6dx16,_0x1c6dx17){_0x1c6dx16= _0x1c6dx16|| 200;return function(_0x1c6dx18){if(_0x1c6dx18){logger[_0x5602[24]](_0x5602[22],_0x1c6dx17,_0x1c6dx16,_0x5602[30]);logger[_0x5602[26]](_0x5602[25],_0x1c6dx17,_0x1c6dx16,_0x5602[30],JSON[_0x5602[31]](_0x1c6dx18));return _0x1c6dx15[_0x5602[29]](_0x1c6dx16)[_0x5602[32]](_0x1c6dx18)};return _0x1c6dx15[_0x5602[29]](304)[_0x5602[28]]()}}function respondWithFilteredResult(_0x1c6dx15,_0x1c6dx1b,_0x1c6dx17){return function(_0x1c6dx18){if(_0x1c6dx18){var _0x1c6dx1c=_0x1c6dx18[_0x5602[33]],_0x1c6dx1d=_0x1c6dx1b[_0x5602[34]],_0x1c6dx1e=_0x1c6dx1b[_0x5602[34]]+ _0x1c6dx1b[_0x5602[35]],_0x1c6dx16;if(_0x1c6dx1e>= _0x1c6dx1c){_0x1c6dx1e= _0x1c6dx1c;_0x1c6dx16= 200}else {_0x1c6dx16= 206};_0x1c6dx15[_0x5602[29]](_0x1c6dx16);logger[_0x5602[24]](_0x5602[22],_0x1c6dx17,_0x1c6dx16,_0x5602[36]);logger[_0x5602[26]](_0x5602[25],_0x1c6dx17,_0x1c6dx16,_0x5602[30],JSON[_0x5602[31]](_0x1c6dx18));return _0x1c6dx15[_0x5602[40]](_0x5602[37],_0x1c6dx1d+ _0x5602[38]+ _0x1c6dx1e+ _0x5602[39]+ _0x1c6dx1c)[_0x5602[32]](_0x1c6dx18)};return null}}function patchUpdates(_0x1c6dx20){return function(_0x1c6dx18){try{jsonpatch[_0x5602[41]](_0x1c6dx18,_0x1c6dx20,true)}catch(err){return BPromise[_0x5602[42]](err)};return _0x1c6dx18[_0x5602[43]]()}}function saveUpdates(_0x1c6dx22,_0x1c6dx16,_0x1c6dx17){return function(_0x1c6dx18){if(_0x1c6dx18){return _0x1c6dx18[_0x5602[46]](_0x1c6dx22)[_0x5602[45]](function(_0x1c6dx23){logger[_0x5602[24]](_0x5602[22],_0x1c6dx17,_0x1c6dx16,_0x5602[44]);logger[_0x5602[26]](_0x5602[25],_0x1c6dx17,_0x1c6dx16,_0x5602[44],JSON[_0x5602[31]](_0x1c6dx18));return _0x1c6dx23})};return null}}function removeEntity(_0x1c6dx15,_0x1c6dx16,_0x1c6dx17){return function(_0x1c6dx18){if(_0x1c6dx18){return _0x1c6dx18[_0x5602[48]]()[_0x5602[45]](function(){logger[_0x5602[24]](_0x5602[22],_0x1c6dx17,_0x1c6dx16,_0x5602[47]);logger[_0x5602[26]](_0x5602[25],_0x1c6dx17,_0x1c6dx16,_0x5602[47],JSON[_0x5602[31]](_0x1c6dx18));_0x1c6dx15[_0x5602[29]](204)[_0x5602[28]]()})}}}function handleEntityNotFound(_0x1c6dx15,_0x1c6dx16,_0x1c6dx17){return function(_0x1c6dx18){if(!_0x1c6dx18){logger[_0x5602[50]](_0x5602[22],_0x1c6dx17,404,_0x5602[49]);_0x1c6dx15[_0x5602[29]](404)[_0x5602[28]]();return null};return _0x1c6dx18}}function handleError(_0x1c6dx15,_0x1c6dx16,_0x1c6dx17){_0x1c6dx16= _0x1c6dx16|| 500;return function(_0x1c6dx27){logger[_0x5602[50]](_0x5602[22],_0x1c6dx17,_0x1c6dx16,JSON[_0x5602[31]](_0x1c6dx27));delete _0x1c6dx27[_0x5602[51]];_0x1c6dx15[_0x5602[29]](_0x1c6dx16)[_0x5602[52]](_0x1c6dx27)}}exports[_0x5602[53]]= function(_0x1c6dx28,_0x1c6dx15){var _0x1c6dx1b={},_0x1c6dx29={};_0x1c6dx29[_0x5602[54]]= _[_0x5602[57]](db[_0x5602[56]][_0x5602[55]]);_0x1c6dx29[_0x5602[58]]= _[_0x5602[57]](_0x1c6dx28[_0x5602[58]]);_0x1c6dx29[_0x5602[59]]= _[_0x5602[60]](_0x1c6dx29[_0x5602[54]],_0x1c6dx29[_0x5602[58]]);_0x1c6dx1b[_0x5602[61]]= _[_0x5602[60]](_0x1c6dx29[_0x5602[54]],qs[_0x5602[62]](_0x1c6dx28[_0x5602[58]][_0x5602[62]]));_0x1c6dx1b[_0x5602[61]]= (_0x1c6dx1b[_0x5602[61]][_0x5602[63]])?_0x1c6dx1b[_0x5602[61]]:_0x1c6dx29[_0x5602[54]];if(!_0x1c6dx28[_0x5602[58]][_0x5602[65]](_0x5602[64])){_0x1c6dx1b[_0x5602[35]]= qs[_0x5602[35]](_0x1c6dx28[_0x5602[58]][_0x5602[35]]);_0x1c6dx1b[_0x5602[34]]= qs[_0x5602[34]](_0x1c6dx28[_0x5602[58]][_0x5602[34]])};_0x1c6dx1b[_0x5602[66]]= qs[_0x5602[67]](_0x1c6dx28[_0x5602[58]][_0x5602[67]]);_0x1c6dx1b[_0x5602[68]]= qs[_0x5602[59]](_[_0x5602[69]](_0x1c6dx28[_0x5602[58]],_0x1c6dx29[_0x5602[59]]));if(_0x1c6dx28[_0x5602[58]][_0x5602[70]]){_0x1c6dx1b[_0x5602[68]]= _[_0x5602[73]](_0x1c6dx1b[_0x5602[68]],{$or:_[_0x5602[72]](_0x1c6dx1b[_0x5602[61]],function(_0x1c6dx2a){var _0x1c6dx2b={};_0x1c6dx2b[_0x1c6dx2a]= {$like:_0x5602[71]+ _0x1c6dx28[_0x5602[58]][_0x5602[70]]+ _0x5602[71]};return _0x1c6dx2b})})};_0x1c6dx1b= _[_0x5602[73]]({},_0x1c6dx1b,_0x1c6dx28[_0x5602[74]]);return db[_0x5602[56]][_0x5602[76]](_0x1c6dx1b)[_0x5602[45]](respondWithFilteredResult(_0x1c6dx15,_0x1c6dx1b,_0x5602[53]))[_0x5602[75]](handleError(_0x1c6dx15,null,_0x5602[53]))};exports[_0x5602[77]]= function(_0x1c6dx28,_0x1c6dx15){var _0x1c6dx1b={raw:true,where:{id:_0x1c6dx28[_0x5602[79]][_0x5602[78]]}},_0x1c6dx29={};_0x1c6dx29[_0x5602[54]]= _[_0x5602[57]](db[_0x5602[56]][_0x5602[55]]);_0x1c6dx29[_0x5602[58]]= _[_0x5602[57]](_0x1c6dx28[_0x5602[58]]);_0x1c6dx29[_0x5602[59]]= _[_0x5602[60]](_0x1c6dx29[_0x5602[54]],_0x1c6dx29[_0x5602[58]]);_0x1c6dx1b[_0x5602[61]]= _[_0x5602[60]](_0x1c6dx29[_0x5602[54]],qs[_0x5602[62]](_0x1c6dx28[_0x5602[58]][_0x5602[62]]));_0x1c6dx1b[_0x5602[61]]= (_0x1c6dx1b[_0x5602[61]][_0x5602[63]])?_0x1c6dx1b[_0x5602[61]]:_0x1c6dx29[_0x5602[54]];_0x1c6dx1b= _[_0x5602[73]]({},_0x1c6dx1b,_0x1c6dx28[_0x5602[74]]);return db[_0x5602[56]][_0x5602[80]](_0x1c6dx1b)[_0x5602[45]](handleEntityNotFound(_0x1c6dx15,null,_0x5602[77]))[_0x5602[45]](respondWithResult(_0x1c6dx15,null,_0x5602[77]))[_0x5602[75]](handleError(_0x1c6dx15,null,_0x5602[77]))};exports[_0x5602[81]]= function(_0x1c6dx28,_0x1c6dx15){return db[_0x5602[56]][_0x5602[81]](_0x1c6dx28[_0x5602[82]],{})[_0x5602[45]](respondWithResult(_0x1c6dx15,201,_0x5602[81]))[_0x5602[75]](handleError(_0x1c6dx15,null,_0x5602[81]))};exports[_0x5602[46]]= function(_0x1c6dx28,_0x1c6dx15){if(_0x1c6dx28[_0x5602[82]][_0x5602[78]]){delete _0x1c6dx28[_0x5602[82]][_0x5602[78]]};return db[_0x5602[56]][_0x5602[80]]({where:{id:_0x1c6dx28[_0x5602[79]][_0x5602[78]]}})[_0x5602[45]](handleEntityNotFound(_0x1c6dx15,null,_0x5602[46]))[_0x5602[45]](saveUpdates(_0x1c6dx28[_0x5602[82]],null,_0x5602[46]))[_0x5602[45]](respondWithResult(_0x1c6dx15,null,_0x5602[46]))[_0x5602[75]](handleError(_0x1c6dx15,null,_0x5602[46]))};exports[_0x5602[48]]= function(_0x1c6dx28,_0x1c6dx15){return db[_0x5602[56]][_0x5602[80]]({where:{id:_0x1c6dx28[_0x5602[79]][_0x5602[78]]}})[_0x5602[45]](handleEntityNotFound(_0x1c6dx15,null,_0x5602[48]))[_0x5602[45]](removeEntity(_0x1c6dx15,null,_0x5602[48]))[_0x5602[75]](handleError(_0x1c6dx15,null,_0x5602[48]))};exports[_0x5602[83]]= function(_0x1c6dx28,_0x1c6dx15){return db[_0x5602[56]][_0x5602[83]]()[_0x5602[45]](respondWithResult(_0x1c6dx15,null,_0x5602[83]))[_0x5602[75]](handleError(_0x1c6dx15,null,_0x5602[83]))}
\ No newline at end of file
+var _0xd4a4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xd4a4[0];var jsonpatch=require(_0xd4a4[1]);var rp=require(_0xd4a4[2]);var moment=require(_0xd4a4[3]);var BPromise=require(_0xd4a4[4]);var util=require(_0xd4a4[5]);var path=require(_0xd4a4[6]);var sox=require(_0xd4a4[7]);var ejs=require(_0xd4a4[8]);var fs=require(_0xd4a4[9]);var _=require(_0xd4a4[10]);var squel=require(_0xd4a4[11]);var crypto=require(_0xd4a4[12]);var jsforce=require(_0xd4a4[13]);var toCsv=require(_0xd4a4[14]);var qs=require(_0xd4a4[15]);var logger=require(_0xd4a4[17])(_0xd4a4[16]);var utils=require(_0xd4a4[18]);var config=require(_0xd4a4[19]);var db=require(_0xd4a4[21])[_0xd4a4[20]];function respondWithStatusCode(_0x857bx15,_0x857bx16,_0x857bx17){_0x857bx16= _0x857bx16|| 204;return function(_0x857bx18){if(_0x857bx18){logger[_0xd4a4[24]](_0xd4a4[22],_0x857bx17,_0x857bx16,_0xd4a4[23]);logger[_0xd4a4[26]](_0xd4a4[25],_0x857bx17,_0x857bx16,_0xd4a4[23]);return _0x857bx15[_0xd4a4[27]](_0x857bx16)};return _0x857bx15[_0xd4a4[29]](304)[_0xd4a4[28]]()}}function respondWithResult(_0x857bx15,_0x857bx16,_0x857bx17){_0x857bx16= _0x857bx16|| 200;return function(_0x857bx18){if(_0x857bx18){logger[_0xd4a4[24]](_0xd4a4[22],_0x857bx17,_0x857bx16,_0xd4a4[30]);logger[_0xd4a4[26]](_0xd4a4[25],_0x857bx17,_0x857bx16,_0xd4a4[30],JSON[_0xd4a4[31]](_0x857bx18));return _0x857bx15[_0xd4a4[29]](_0x857bx16)[_0xd4a4[32]](_0x857bx18)};return _0x857bx15[_0xd4a4[29]](304)[_0xd4a4[28]]()}}function respondWithFilteredResult(_0x857bx15,_0x857bx1b,_0x857bx17){return function(_0x857bx18){if(_0x857bx18){var _0x857bx1c=_0x857bx18[_0xd4a4[33]],_0x857bx1d=_0x857bx1b[_0xd4a4[34]],_0x857bx1e=_0x857bx1b[_0xd4a4[34]]+ _0x857bx1b[_0xd4a4[35]],_0x857bx16;if(_0x857bx1e>= _0x857bx1c){_0x857bx1e= _0x857bx1c;_0x857bx16= 200}else {_0x857bx16= 206};_0x857bx15[_0xd4a4[29]](_0x857bx16);logger[_0xd4a4[24]](_0xd4a4[22],_0x857bx17,_0x857bx16,_0xd4a4[36]);logger[_0xd4a4[26]](_0xd4a4[25],_0x857bx17,_0x857bx16,_0xd4a4[30],JSON[_0xd4a4[31]](_0x857bx18));return _0x857bx15[_0xd4a4[40]](_0xd4a4[37],_0x857bx1d+ _0xd4a4[38]+ _0x857bx1e+ _0xd4a4[39]+ _0x857bx1c)[_0xd4a4[32]](_0x857bx18)};return null}}function patchUpdates(_0x857bx20){return function(_0x857bx18){try{jsonpatch[_0xd4a4[41]](_0x857bx18,_0x857bx20,true)}catch(err){return BPromise[_0xd4a4[42]](err)};return _0x857bx18[_0xd4a4[43]]()}}function saveUpdates(_0x857bx22,_0x857bx16,_0x857bx17){return function(_0x857bx18){if(_0x857bx18){return _0x857bx18[_0xd4a4[46]](_0x857bx22)[_0xd4a4[45]](function(_0x857bx23){logger[_0xd4a4[24]](_0xd4a4[22],_0x857bx17,_0x857bx16,_0xd4a4[44]);logger[_0xd4a4[26]](_0xd4a4[25],_0x857bx17,_0x857bx16,_0xd4a4[44],JSON[_0xd4a4[31]](_0x857bx18));return _0x857bx23})};return null}}function removeEntity(_0x857bx15,_0x857bx16,_0x857bx17){return function(_0x857bx18){if(_0x857bx18){return _0x857bx18[_0xd4a4[48]]()[_0xd4a4[45]](function(){logger[_0xd4a4[24]](_0xd4a4[22],_0x857bx17,_0x857bx16,_0xd4a4[47]);logger[_0xd4a4[26]](_0xd4a4[25],_0x857bx17,_0x857bx16,_0xd4a4[47],JSON[_0xd4a4[31]](_0x857bx18));_0x857bx15[_0xd4a4[29]](204)[_0xd4a4[28]]()})}}}function handleEntityNotFound(_0x857bx15,_0x857bx16,_0x857bx17){return function(_0x857bx18){if(!_0x857bx18){logger[_0xd4a4[50]](_0xd4a4[22],_0x857bx17,404,_0xd4a4[49]);_0x857bx15[_0xd4a4[29]](404)[_0xd4a4[28]]();return null};return _0x857bx18}}function handleError(_0x857bx15,_0x857bx16,_0x857bx17){_0x857bx16= _0x857bx16|| 500;return function(_0x857bx27){logger[_0xd4a4[50]](_0xd4a4[22],_0x857bx17,_0x857bx16,JSON[_0xd4a4[31]](_0x857bx27));delete _0x857bx27[_0xd4a4[51]];_0x857bx15[_0xd4a4[29]](_0x857bx16)[_0xd4a4[52]](_0x857bx27)}}exports[_0xd4a4[53]]= function(_0x857bx28,_0x857bx15){var _0x857bx1b={},_0x857bx29={};_0x857bx29[_0xd4a4[54]]= _[_0xd4a4[57]](db[_0xd4a4[56]][_0xd4a4[55]]);_0x857bx29[_0xd4a4[58]]= _[_0xd4a4[57]](_0x857bx28[_0xd4a4[58]]);_0x857bx29[_0xd4a4[59]]= _[_0xd4a4[60]](_0x857bx29[_0xd4a4[54]],_0x857bx29[_0xd4a4[58]]);_0x857bx1b[_0xd4a4[61]]= _[_0xd4a4[60]](_0x857bx29[_0xd4a4[54]],qs[_0xd4a4[62]](_0x857bx28[_0xd4a4[58]][_0xd4a4[62]]));_0x857bx1b[_0xd4a4[61]]= (_0x857bx1b[_0xd4a4[61]][_0xd4a4[63]])?_0x857bx1b[_0xd4a4[61]]:_0x857bx29[_0xd4a4[54]];if(!_0x857bx28[_0xd4a4[58]][_0xd4a4[65]](_0xd4a4[64])){_0x857bx1b[_0xd4a4[35]]= qs[_0xd4a4[35]](_0x857bx28[_0xd4a4[58]][_0xd4a4[35]]);_0x857bx1b[_0xd4a4[34]]= qs[_0xd4a4[34]](_0x857bx28[_0xd4a4[58]][_0xd4a4[34]])};_0x857bx1b[_0xd4a4[66]]= qs[_0xd4a4[67]](_0x857bx28[_0xd4a4[58]][_0xd4a4[67]]);_0x857bx1b[_0xd4a4[68]]= qs[_0xd4a4[59]](_[_0xd4a4[69]](_0x857bx28[_0xd4a4[58]],_0x857bx29[_0xd4a4[59]]));if(_0x857bx28[_0xd4a4[58]][_0xd4a4[70]]){_0x857bx1b[_0xd4a4[68]]= _[_0xd4a4[73]](_0x857bx1b[_0xd4a4[68]],{$or:_[_0xd4a4[72]](_0x857bx1b[_0xd4a4[61]],function(_0x857bx2a){var _0x857bx2b={};_0x857bx2b[_0x857bx2a]= {$like:_0xd4a4[71]+ _0x857bx28[_0xd4a4[58]][_0xd4a4[70]]+ _0xd4a4[71]};return _0x857bx2b})})};_0x857bx1b= _[_0xd4a4[73]]({},_0x857bx1b,_0x857bx28[_0xd4a4[74]]);return db[_0xd4a4[56]][_0xd4a4[76]](_0x857bx1b)[_0xd4a4[45]](respondWithFilteredResult(_0x857bx15,_0x857bx1b,_0xd4a4[53]))[_0xd4a4[75]](handleError(_0x857bx15,null,_0xd4a4[53]))};exports[_0xd4a4[77]]= function(_0x857bx28,_0x857bx15){var _0x857bx1b={raw:true,where:{id:_0x857bx28[_0xd4a4[79]][_0xd4a4[78]]}},_0x857bx29={};_0x857bx29[_0xd4a4[54]]= _[_0xd4a4[57]](db[_0xd4a4[56]][_0xd4a4[55]]);_0x857bx29[_0xd4a4[58]]= _[_0xd4a4[57]](_0x857bx28[_0xd4a4[58]]);_0x857bx29[_0xd4a4[59]]= _[_0xd4a4[60]](_0x857bx29[_0xd4a4[54]],_0x857bx29[_0xd4a4[58]]);_0x857bx1b[_0xd4a4[61]]= _[_0xd4a4[60]](_0x857bx29[_0xd4a4[54]],qs[_0xd4a4[62]](_0x857bx28[_0xd4a4[58]][_0xd4a4[62]]));_0x857bx1b[_0xd4a4[61]]= (_0x857bx1b[_0xd4a4[61]][_0xd4a4[63]])?_0x857bx1b[_0xd4a4[61]]:_0x857bx29[_0xd4a4[54]];_0x857bx1b= _[_0xd4a4[73]]({},_0x857bx1b,_0x857bx28[_0xd4a4[74]]);return db[_0xd4a4[56]][_0xd4a4[80]](_0x857bx1b)[_0xd4a4[45]](handleEntityNotFound(_0x857bx15,null,_0xd4a4[77]))[_0xd4a4[45]](respondWithResult(_0x857bx15,null,_0xd4a4[77]))[_0xd4a4[75]](handleError(_0x857bx15,null,_0xd4a4[77]))};exports[_0xd4a4[81]]= function(_0x857bx28,_0x857bx15){return db[_0xd4a4[56]][_0xd4a4[81]](_0x857bx28[_0xd4a4[82]],{})[_0xd4a4[45]](respondWithResult(_0x857bx15,201,_0xd4a4[81]))[_0xd4a4[75]](handleError(_0x857bx15,null,_0xd4a4[81]))};exports[_0xd4a4[46]]= function(_0x857bx28,_0x857bx15){if(_0x857bx28[_0xd4a4[82]][_0xd4a4[78]]){delete _0x857bx28[_0xd4a4[82]][_0xd4a4[78]]};return db[_0xd4a4[56]][_0xd4a4[80]]({where:{id:_0x857bx28[_0xd4a4[79]][_0xd4a4[78]]}})[_0xd4a4[45]](handleEntityNotFound(_0x857bx15,null,_0xd4a4[46]))[_0xd4a4[45]](saveUpdates(_0x857bx28[_0xd4a4[82]],null,_0xd4a4[46]))[_0xd4a4[45]](respondWithResult(_0x857bx15,null,_0xd4a4[46]))[_0xd4a4[75]](handleError(_0x857bx15,null,_0xd4a4[46]))};exports[_0xd4a4[48]]= function(_0x857bx28,_0x857bx15){return db[_0xd4a4[56]][_0xd4a4[80]]({where:{id:_0x857bx28[_0xd4a4[79]][_0xd4a4[78]]}})[_0xd4a4[45]](handleEntityNotFound(_0x857bx15,null,_0xd4a4[48]))[_0xd4a4[45]](removeEntity(_0x857bx15,null,_0xd4a4[48]))[_0xd4a4[75]](handleError(_0x857bx15,null,_0xd4a4[48]))};exports[_0xd4a4[83]]= function(_0x857bx28,_0x857bx15){return db[_0xd4a4[56]][_0xd4a4[83]]()[_0xd4a4[45]](respondWithResult(_0x857bx15,null,_0xd4a4[83]))[_0xd4a4[75]](handleError(_0x857bx15,null,_0xd4a4[83]))}
\ No newline at end of file
index 3ff5643..32bd162 100644 (file)
@@ -1 +1 @@
-var _0x6e76=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x65\x6D\x62\x65\x72","\x64\x65\x66\x69\x6E\x65"];_0x6e76[0];var _=require(_0x6e76[1]);var util=require(_0x6e76[2]);var logger=require(_0x6e76[4])(_0x6e76[3]);var attributes=require(_0x6e76[5]);module[_0x6e76[6]]= function(_0x9c94x5,_0x9c94x6){return _0x9c94x5[_0x6e76[9]](_0x6e76[7],attributes,{tableName:_0x6e76[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x832d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x65\x6D\x62\x65\x72","\x64\x65\x66\x69\x6E\x65"];_0x832d[0];var _=require(_0x832d[1]);var util=require(_0x832d[2]);var logger=require(_0x832d[4])(_0x832d[3]);var attributes=require(_0x832d[5]);module[_0x832d[6]]= function(_0xaba6x5,_0xaba6x6){return _0xaba6x5[_0x832d[9]](_0x832d[7],attributes,{tableName:_0x832d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 220ce48..cb6e78b 100644 (file)
@@ -1 +1 @@
-var _0x14f7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x55\x70\x64\x61\x74\x65\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65"];_0x14f7[0];var _=require(_0x14f7[1]);var util=require(_0x14f7[2]);var moment=require(_0x14f7[3]);var BPromise=require(_0x14f7[4]);var db=require(_0x14f7[6])[_0x14f7[5]];var utils=require(_0x14f7[7]);var logger=require(_0x14f7[9])(_0x14f7[8]);var jayson=require(_0x14f7[10]);var client=jayson[_0x14f7[12]][_0x14f7[11]]({port:9002});function respondWithRpcPromise(_0x5871xb,_0x5871xc,_0x5871xd){return  new BPromise(function(_0x5871xe,_0x5871xf){return client[_0x14f7[25]](_0x5871xb,_0x5871xd)[_0x14f7[24]](function(_0x5871x11){logger[_0x14f7[17]](_0x14f7[13],_0x5871xc,_0x14f7[16]);logger[_0x14f7[20]](_0x14f7[18],_0x5871xc,_0x14f7[16],JSON[_0x14f7[19]](_0x5871x11));if(_0x5871x11[_0x14f7[14]]){if(_0x5871x11[_0x14f7[14]][_0x14f7[21]]=== 500){logger[_0x14f7[14]](_0x14f7[13],_0x5871xc,_0x5871x11[_0x14f7[14]][_0x14f7[22]]);return _0x5871xf(_0x5871x11[_0x14f7[14]][_0x14f7[22]])};logger[_0x14f7[14]](_0x14f7[13],_0x5871xc,_0x5871x11[_0x14f7[14]][_0x14f7[22]]);return _0x5871xe(_0x5871x11[_0x14f7[14]][_0x14f7[22]])}else {logger[_0x14f7[17]](_0x14f7[13],_0x5871xc,_0x14f7[16]);_0x5871xe(_0x5871x11[_0x14f7[23]][_0x14f7[22]])}})[_0x14f7[15]](function(_0x5871x10){logger[_0x14f7[14]](_0x14f7[13],_0x5871xc,_0x5871x10);_0x5871xf(_0x5871x10)})})}exports[_0x14f7[26]]= function(_0x5871xd){var _0x5871x12=this;return  new Promise(function(_0x5871xe,_0x5871xf){return db[_0x14f7[37]][_0x14f7[36]]({raw:_0x5871xd[_0x14f7[27]]?(_0x5871xd[_0x14f7[27]][_0x14f7[28]]=== undefined)?true:false:true,where:_0x5871xd[_0x14f7[27]]?_0x5871xd[_0x14f7[27]][_0x14f7[29]]|| null:null,attributes:_0x5871xd[_0x14f7[27]]?_0x5871xd[_0x14f7[27]][_0x14f7[30]]|| null:null,limit:_0x5871xd[_0x14f7[27]]?_0x5871xd[_0x14f7[27]][_0x14f7[31]]|| null:null,include:_0x5871xd[_0x14f7[27]]?(_0x5871xd[_0x14f7[27]][_0x14f7[32]]?_[_0x14f7[35]](_0x5871xd[_0x14f7[27]][_0x14f7[32]],function(_0x5871x13){return {model:db[_0x5871x13[_0x14f7[33]]],as:_0x5871x13[_0x14f7[34]],attributes:_0x5871x13[_0x14f7[30]],include:_0x5871x13[_0x14f7[32]]?_[_0x14f7[35]](_0x5871x13[_0x14f7[32]],function(_0x5871x14){return {model:db[_0x5871x14[_0x14f7[33]]],as:_0x5871x14[_0x14f7[34]],attributes:_0x5871x14[_0x14f7[30]],include:_0x5871x14[_0x14f7[32]]?_[_0x14f7[35]](_0x5871x14[_0x14f7[32]],function(_0x5871x15){return {model:db[_0x5871x15[_0x14f7[33]]],as:_0x5871x15[_0x14f7[34]],attributes:_0x5871x15[_0x14f7[30]]}}):[]}}):[]}}):[]):[]})[_0x14f7[24]](function(_0x5871x11){logger[_0x14f7[17]](_0x14f7[26],_0x5871xd);logger[_0x14f7[20]](_0x14f7[26],_0x5871xd,JSON[_0x14f7[19]](_0x5871x11));_0x5871xe(_0x5871x11)})[_0x14f7[15]](function(_0x5871x10){logger[_0x14f7[14]](_0x14f7[26],_0x5871x10[_0x14f7[22]],_0x5871xd);_0x5871xf(_0x5871x12[_0x14f7[14]](500,_0x5871x10[_0x14f7[22]]))})})};exports[_0x14f7[38]]= function(_0x5871xd){var _0x5871x12=this;return  new Promise(function(_0x5871xe,_0x5871xf){return db[_0x14f7[37]][_0x14f7[40]](_0x5871xd[_0x14f7[39]],{raw:_0x5871xd[_0x14f7[27]]?(_0x5871xd[_0x14f7[27]][_0x14f7[28]]=== undefined)?true:false:true})[_0x14f7[24]](function(_0x5871x11){logger[_0x14f7[17]](_0x14f7[38],_0x5871xd);logger[_0x14f7[20]](_0x14f7[38],_0x5871xd,JSON[_0x14f7[19]](_0x5871x11));_0x5871xe(_0x5871x11)})[_0x14f7[15]](function(_0x5871x10){logger[_0x14f7[14]](_0x14f7[38],_0x5871x10[_0x14f7[22]],_0x5871xd);_0x5871xf(_0x5871x12[_0x14f7[14]](500,_0x5871x10[_0x14f7[22]]))})})};exports[_0x14f7[41]]= function(_0x5871xd){var _0x5871x12=this;return  new Promise(function(_0x5871xe,_0x5871xf){return db[_0x14f7[37]][_0x14f7[42]](_0x5871xd[_0x14f7[39]],{raw:_0x5871xd[_0x14f7[27]]?(_0x5871xd[_0x14f7[27]][_0x14f7[28]]=== undefined)?true:false:true,individualHooks:true,where:_0x5871xd[_0x14f7[27]]?_0x5871xd[_0x14f7[27]][_0x14f7[29]]|| null:null,attributes:_0x5871xd[_0x14f7[27]]?_0x5871xd[_0x14f7[27]][_0x14f7[30]]|| null:null,limit:_0x5871xd[_0x14f7[27]]?_0x5871xd[_0x14f7[27]][_0x14f7[31]]|| null:null})[_0x14f7[24]](function(_0x5871x11){logger[_0x14f7[17]](_0x14f7[41],_0x5871xd);logger[_0x14f7[20]](_0x14f7[41],_0x5871xd,JSON[_0x14f7[19]](_0x5871x11));_0x5871xe(_0x5871x11)})[_0x14f7[15]](function(_0x5871x10){logger[_0x14f7[14]](_0x14f7[41],_0x5871x10[_0x14f7[22]],_0x5871xd);_0x5871xf(_0x5871x12[_0x14f7[14]](500,_0x5871x10[_0x14f7[22]]))})})}
\ No newline at end of file
+var _0x2257=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x55\x70\x64\x61\x74\x65\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65"];_0x2257[0];var _=require(_0x2257[1]);var util=require(_0x2257[2]);var moment=require(_0x2257[3]);var BPromise=require(_0x2257[4]);var db=require(_0x2257[6])[_0x2257[5]];var utils=require(_0x2257[7]);var logger=require(_0x2257[9])(_0x2257[8]);var jayson=require(_0x2257[10]);var client=jayson[_0x2257[12]][_0x2257[11]]({port:9002});function respondWithRpcPromise(_0x5408xb,_0x5408xc,_0x5408xd){return  new BPromise(function(_0x5408xe,_0x5408xf){return client[_0x2257[25]](_0x5408xb,_0x5408xd)[_0x2257[24]](function(_0x5408x11){logger[_0x2257[17]](_0x2257[13],_0x5408xc,_0x2257[16]);logger[_0x2257[20]](_0x2257[18],_0x5408xc,_0x2257[16],JSON[_0x2257[19]](_0x5408x11));if(_0x5408x11[_0x2257[14]]){if(_0x5408x11[_0x2257[14]][_0x2257[21]]=== 500){logger[_0x2257[14]](_0x2257[13],_0x5408xc,_0x5408x11[_0x2257[14]][_0x2257[22]]);return _0x5408xf(_0x5408x11[_0x2257[14]][_0x2257[22]])};logger[_0x2257[14]](_0x2257[13],_0x5408xc,_0x5408x11[_0x2257[14]][_0x2257[22]]);return _0x5408xe(_0x5408x11[_0x2257[14]][_0x2257[22]])}else {logger[_0x2257[17]](_0x2257[13],_0x5408xc,_0x2257[16]);_0x5408xe(_0x5408x11[_0x2257[23]][_0x2257[22]])}})[_0x2257[15]](function(_0x5408x10){logger[_0x2257[14]](_0x2257[13],_0x5408xc,_0x5408x10);_0x5408xf(_0x5408x10)})})}exports[_0x2257[26]]= function(_0x5408xd){var _0x5408x12=this;return  new Promise(function(_0x5408xe,_0x5408xf){return db[_0x2257[37]][_0x2257[36]]({raw:_0x5408xd[_0x2257[27]]?(_0x5408xd[_0x2257[27]][_0x2257[28]]=== undefined)?true:false:true,where:_0x5408xd[_0x2257[27]]?_0x5408xd[_0x2257[27]][_0x2257[29]]|| null:null,attributes:_0x5408xd[_0x2257[27]]?_0x5408xd[_0x2257[27]][_0x2257[30]]|| null:null,limit:_0x5408xd[_0x2257[27]]?_0x5408xd[_0x2257[27]][_0x2257[31]]|| null:null,include:_0x5408xd[_0x2257[27]]?(_0x5408xd[_0x2257[27]][_0x2257[32]]?_[_0x2257[35]](_0x5408xd[_0x2257[27]][_0x2257[32]],function(_0x5408x13){return {model:db[_0x5408x13[_0x2257[33]]],as:_0x5408x13[_0x2257[34]],attributes:_0x5408x13[_0x2257[30]],include:_0x5408x13[_0x2257[32]]?_[_0x2257[35]](_0x5408x13[_0x2257[32]],function(_0x5408x14){return {model:db[_0x5408x14[_0x2257[33]]],as:_0x5408x14[_0x2257[34]],attributes:_0x5408x14[_0x2257[30]],include:_0x5408x14[_0x2257[32]]?_[_0x2257[35]](_0x5408x14[_0x2257[32]],function(_0x5408x15){return {model:db[_0x5408x15[_0x2257[33]]],as:_0x5408x15[_0x2257[34]],attributes:_0x5408x15[_0x2257[30]]}}):[]}}):[]}}):[]):[]})[_0x2257[24]](function(_0x5408x11){logger[_0x2257[17]](_0x2257[26],_0x5408xd);logger[_0x2257[20]](_0x2257[26],_0x5408xd,JSON[_0x2257[19]](_0x5408x11));_0x5408xe(_0x5408x11)})[_0x2257[15]](function(_0x5408x10){logger[_0x2257[14]](_0x2257[26],_0x5408x10[_0x2257[22]],_0x5408xd);_0x5408xf(_0x5408x12[_0x2257[14]](500,_0x5408x10[_0x2257[22]]))})})};exports[_0x2257[38]]= function(_0x5408xd){var _0x5408x12=this;return  new Promise(function(_0x5408xe,_0x5408xf){return db[_0x2257[37]][_0x2257[40]](_0x5408xd[_0x2257[39]],{raw:_0x5408xd[_0x2257[27]]?(_0x5408xd[_0x2257[27]][_0x2257[28]]=== undefined)?true:false:true})[_0x2257[24]](function(_0x5408x11){logger[_0x2257[17]](_0x2257[38],_0x5408xd);logger[_0x2257[20]](_0x2257[38],_0x5408xd,JSON[_0x2257[19]](_0x5408x11));_0x5408xe(_0x5408x11)})[_0x2257[15]](function(_0x5408x10){logger[_0x2257[14]](_0x2257[38],_0x5408x10[_0x2257[22]],_0x5408xd);_0x5408xf(_0x5408x12[_0x2257[14]](500,_0x5408x10[_0x2257[22]]))})})};exports[_0x2257[41]]= function(_0x5408xd){var _0x5408x12=this;return  new Promise(function(_0x5408xe,_0x5408xf){return db[_0x2257[37]][_0x2257[42]](_0x5408xd[_0x2257[39]],{raw:_0x5408xd[_0x2257[27]]?(_0x5408xd[_0x2257[27]][_0x2257[28]]=== undefined)?true:false:true,individualHooks:true,where:_0x5408xd[_0x2257[27]]?_0x5408xd[_0x2257[27]][_0x2257[29]]|| null:null,attributes:_0x5408xd[_0x2257[27]]?_0x5408xd[_0x2257[27]][_0x2257[30]]|| null:null,limit:_0x5408xd[_0x2257[27]]?_0x5408xd[_0x2257[27]][_0x2257[31]]|| null:null})[_0x2257[24]](function(_0x5408x11){logger[_0x2257[17]](_0x2257[41],_0x5408xd);logger[_0x2257[20]](_0x2257[41],_0x5408xd,JSON[_0x2257[19]](_0x5408x11));_0x5408xe(_0x5408x11)})[_0x2257[15]](function(_0x5408x10){logger[_0x2257[14]](_0x2257[41],_0x5408x10[_0x2257[22]],_0x5408xd);_0x5408xf(_0x5408x12[_0x2257[14]](500,_0x5408x10[_0x2257[22]]))})})}
\ No newline at end of file
index 03cf7f6..b963dca 100644 (file)
@@ -1 +1 @@
-var _0x6706=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x6706[0];var multer=require(_0x6706[1]);var util=require(_0x6706[2]);var path=require(_0x6706[3]);var express=require(_0x6706[4]);var router=express.Router();var auth=require(_0x6706[5]);var config=require(_0x6706[6]);var controller=require(_0x6706[7]);router[_0x6706[11]](_0x6706[8],auth[_0x6706[9]](),controller[_0x6706[10]]);router[_0x6706[11]](_0x6706[12],auth[_0x6706[9]](),controller[_0x6706[13]]);router[_0x6706[15]](_0x6706[8],auth[_0x6706[9]](),controller[_0x6706[14]]);router[_0x6706[17]](_0x6706[12],auth[_0x6706[9]](),controller[_0x6706[16]]);router[_0x6706[19]](_0x6706[12],auth[_0x6706[9]](),controller[_0x6706[18]]);module[_0x6706[20]]= router
\ No newline at end of file
+var _0x33fe=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x33fe[0];var multer=require(_0x33fe[1]);var util=require(_0x33fe[2]);var path=require(_0x33fe[3]);var express=require(_0x33fe[4]);var router=express.Router();var auth=require(_0x33fe[5]);var config=require(_0x33fe[6]);var controller=require(_0x33fe[7]);router[_0x33fe[11]](_0x33fe[8],auth[_0x33fe[9]](),controller[_0x33fe[10]]);router[_0x33fe[11]](_0x33fe[12],auth[_0x33fe[9]](),controller[_0x33fe[13]]);router[_0x33fe[15]](_0x33fe[8],auth[_0x33fe[9]](),controller[_0x33fe[14]]);router[_0x33fe[17]](_0x33fe[12],auth[_0x33fe[9]](),controller[_0x33fe[16]]);router[_0x33fe[19]](_0x33fe[12],auth[_0x33fe[9]](),controller[_0x33fe[18]]);module[_0x33fe[20]]= router
\ No newline at end of file
index 935272e..2e0de13 100644 (file)
@@ -1 +1 @@
-var _0x6377=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x6C\x6F\x63\x61\x6C\x6E\x65\x74","\x65\x78\x74\x65\x72\x6E\x69\x70","\x53\x54\x52\x49\x4E\x47"];_0x6377[0];var Sequelize=require(_0x6377[1]);module[_0x6377[2]]= {type:{type:Sequelize.ENUM(_0x6377[3],_0x6377[4])},value:{type:Sequelize[_0x6377[5]]}}
\ No newline at end of file
+var _0x7fbe=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x6C\x6F\x63\x61\x6C\x6E\x65\x74","\x65\x78\x74\x65\x72\x6E\x69\x70","\x53\x54\x52\x49\x4E\x47"];_0x7fbe[0];var Sequelize=require(_0x7fbe[1]);module[_0x7fbe[2]]= {type:{type:Sequelize.ENUM(_0x7fbe[3],_0x7fbe[4])},value:{type:Sequelize[_0x7fbe[5]]}}
\ No newline at end of file
index 5c99998..d4faba4 100644 (file)
@@ -1 +1 @@
-var _0x6202=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4E\x65\x74\x77\x6F\x72\x6B","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x52\x65\x6C\x6F\x61\x64","\x63\x68\x61\x6E\x5F\x73\x69\x70\x2E\x73\x6F","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2E\x65\x6A\x73","\x6A\x6F\x69\x6E","\x75\x74\x66\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x72\x65\x6E\x64\x65\x72","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x73\x69\x70\x5F\x78\x63\x61\x6C\x6C\x79\x5F\x25\x73\x2E\x63\x6F\x6E\x66","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x74\x79\x70\x65","\x62\x6F\x64\x79","\x66\x6F\x72\x6D\x61\x74","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x66\x69\x6E\x64\x41\x6C\x6C","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0x6202[0];var jsonpatch=require(_0x6202[1]);var rp=require(_0x6202[2]);var moment=require(_0x6202[3]);var BPromise=require(_0x6202[4]);var util=require(_0x6202[5]);var path=require(_0x6202[6]);var sox=require(_0x6202[7]);var ejs=require(_0x6202[8]);var fs=require(_0x6202[9]);var _=require(_0x6202[10]);var squel=require(_0x6202[11]);var crypto=require(_0x6202[12]);var jsforce=require(_0x6202[13]);var toCsv=require(_0x6202[14]);var qs=require(_0x6202[15]);var logger=require(_0x6202[17])(_0x6202[16]);var utils=require(_0x6202[18]);var config=require(_0x6202[19]);var db=require(_0x6202[21])[_0x6202[20]];var jayson=require(_0x6202[22]);var client=jayson[_0x6202[24]][_0x6202[23]]({port:9002});function respondWithRpcPromise(_0x854fx17,_0x854fx18,_0x854fx19){return  new BPromise(function(_0x854fx1a,_0x854fx1b){return client[_0x6202[37]](_0x854fx17,_0x854fx19)[_0x6202[36]](function(_0x854fx1d){logger[_0x6202[29]](_0x6202[25],_0x854fx18,_0x6202[28]);logger[_0x6202[32]](_0x6202[30],_0x854fx18,_0x6202[28],JSON[_0x6202[31]](_0x854fx1d));if(_0x854fx1d[_0x6202[26]]){if(_0x854fx1d[_0x6202[26]][_0x6202[33]]=== 500){logger[_0x6202[26]](_0x6202[25],_0x854fx18,_0x854fx1d[_0x6202[26]][_0x6202[34]]);return _0x854fx1b(_0x854fx1d[_0x6202[26]][_0x6202[34]])};logger[_0x6202[26]](_0x6202[25],_0x854fx18,_0x854fx1d[_0x6202[26]][_0x6202[34]]);return _0x854fx1a(_0x854fx1d[_0x6202[26]][_0x6202[34]])}else {logger[_0x6202[29]](_0x6202[25],_0x854fx18,_0x6202[28]);_0x854fx1a(_0x854fx1d[_0x6202[35]][_0x6202[34]])}})[_0x6202[27]](function(_0x854fx1c){logger[_0x6202[26]](_0x6202[25],_0x854fx18,_0x854fx1c);_0x854fx1b(_0x854fx1c)})})}function respondWithStatusCode(_0x854fx1d,_0x854fx1f,_0x854fx18){_0x854fx1f= _0x854fx1f|| 204;return function(_0x854fx20){if(_0x854fx20){logger[_0x6202[29]](_0x6202[30],_0x854fx18,_0x854fx1f,_0x6202[38]);logger[_0x6202[32]](_0x6202[39],_0x854fx18,_0x854fx1f,_0x6202[38]);return _0x854fx1d[_0x6202[40]](_0x854fx1f)};return _0x854fx1d[_0x6202[42]](304)[_0x6202[41]]()}}function respondWithResult(_0x854fx1d,_0x854fx1f,_0x854fx18){_0x854fx1f= _0x854fx1f|| 200;return function(_0x854fx20){if(_0x854fx20){logger[_0x6202[29]](_0x6202[30],_0x854fx18,_0x854fx1f,_0x6202[43]);logger[_0x6202[32]](_0x6202[39],_0x854fx18,_0x854fx1f,_0x6202[43],JSON[_0x6202[31]](_0x854fx20));return _0x854fx1d[_0x6202[42]](_0x854fx1f)[_0x6202[44]](_0x854fx20)};return _0x854fx1d[_0x6202[42]](304)[_0x6202[41]]()}}function respondWithFilteredResult(_0x854fx1d,_0x854fx23,_0x854fx18){return function(_0x854fx20){if(_0x854fx20){var _0x854fx24=_0x854fx20[_0x6202[45]],_0x854fx25=_0x854fx23[_0x6202[46]],_0x854fx26=_0x854fx23[_0x6202[46]]+ _0x854fx23[_0x6202[47]],_0x854fx1f;if(_0x854fx26>= _0x854fx24){_0x854fx26= _0x854fx24;_0x854fx1f= 200}else {_0x854fx1f= 206};_0x854fx1d[_0x6202[42]](_0x854fx1f);logger[_0x6202[29]](_0x6202[30],_0x854fx18,_0x854fx1f,_0x6202[48]);logger[_0x6202[32]](_0x6202[39],_0x854fx18,_0x854fx1f,_0x6202[43],JSON[_0x6202[31]](_0x854fx20));return _0x854fx1d[_0x6202[52]](_0x6202[49],_0x854fx25+ _0x6202[50]+ _0x854fx26+ _0x6202[51]+ _0x854fx24)[_0x6202[44]](_0x854fx20)};return null}}function patchUpdates(_0x854fx28){return function(_0x854fx20){try{jsonpatch[_0x6202[53]](_0x854fx20,_0x854fx28,true)}catch(err){return BPromise[_0x6202[54]](err)};return _0x854fx20[_0x6202[55]]()}}function saveUpdates(_0x854fx2a,_0x854fx1f,_0x854fx18){return function(_0x854fx20){if(_0x854fx20){return _0x854fx20[_0x6202[57]](_0x854fx2a)[_0x6202[36]](function(_0x854fx2b){logger[_0x6202[29]](_0x6202[30],_0x854fx18,_0x854fx1f,_0x6202[56]);logger[_0x6202[32]](_0x6202[39],_0x854fx18,_0x854fx1f,_0x6202[56],JSON[_0x6202[31]](_0x854fx20));return _0x854fx2b})};return null}}function removeEntity(_0x854fx1d,_0x854fx1f,_0x854fx18){return function(_0x854fx20){if(_0x854fx20){return _0x854fx20[_0x6202[59]]()[_0x6202[36]](function(){logger[_0x6202[29]](_0x6202[30],_0x854fx18,_0x854fx1f,_0x6202[58]);logger[_0x6202[32]](_0x6202[39],_0x854fx18,_0x854fx1f,_0x6202[58],JSON[_0x6202[31]](_0x854fx20));_0x854fx1d[_0x6202[42]](204)[_0x6202[41]]()})}}}function handleEntityNotFound(_0x854fx1d,_0x854fx1f,_0x854fx18){return function(_0x854fx20){if(!_0x854fx20){logger[_0x6202[26]](_0x6202[30],_0x854fx18,404,_0x6202[60]);_0x854fx1d[_0x6202[42]](404)[_0x6202[41]]();return null};return _0x854fx20}}function handleError(_0x854fx1d,_0x854fx1f,_0x854fx18){_0x854fx1f= _0x854fx1f|| 500;return function(_0x854fx1c){logger[_0x6202[26]](_0x6202[30],_0x854fx18,_0x854fx1f,JSON[_0x6202[31]](_0x854fx1c));delete _0x854fx1c[_0x6202[61]];_0x854fx1d[_0x6202[42]](_0x854fx1f)[_0x6202[62]](_0x854fx1c)}}exports[_0x6202[63]]= function(_0x854fx19,_0x854fx1d){var _0x854fx23={},_0x854fx2f={};_0x854fx2f[_0x6202[64]]= _[_0x6202[67]](db[_0x6202[66]][_0x6202[65]]);_0x854fx2f[_0x6202[68]]= _[_0x6202[67]](_0x854fx19[_0x6202[68]]);_0x854fx2f[_0x6202[69]]= _[_0x6202[70]](_0x854fx2f[_0x6202[64]],_0x854fx2f[_0x6202[68]]);_0x854fx23[_0x6202[71]]= _[_0x6202[70]](_0x854fx2f[_0x6202[64]],qs[_0x6202[72]](_0x854fx19[_0x6202[68]][_0x6202[72]]));_0x854fx23[_0x6202[71]]= (_0x854fx23[_0x6202[71]][_0x6202[73]])?_0x854fx23[_0x6202[71]]:_0x854fx2f[_0x6202[64]];if(!_0x854fx19[_0x6202[68]][_0x6202[75]](_0x6202[74])){_0x854fx23[_0x6202[47]]= qs[_0x6202[47]](_0x854fx19[_0x6202[68]][_0x6202[47]]);_0x854fx23[_0x6202[46]]= qs[_0x6202[46]](_0x854fx19[_0x6202[68]][_0x6202[46]])};_0x854fx23[_0x6202[76]]= qs[_0x6202[77]](_0x854fx19[_0x6202[68]][_0x6202[77]]);_0x854fx23[_0x6202[78]]= qs[_0x6202[69]](_[_0x6202[79]](_0x854fx19[_0x6202[68]],_0x854fx2f[_0x6202[69]]));if(_0x854fx19[_0x6202[68]][_0x6202[80]]){_0x854fx23[_0x6202[78]]= _[_0x6202[83]](_0x854fx23[_0x6202[78]],{$or:_[_0x6202[82]](_0x854fx23[_0x6202[71]],function(_0x854fx30){var _0x854fx31={};_0x854fx31[_0x854fx30]= {$like:_0x6202[81]+ _0x854fx19[_0x6202[68]][_0x6202[80]]+ _0x6202[81]};return _0x854fx31})})};_0x854fx23= _[_0x6202[83]]({},_0x854fx23,_0x854fx19[_0x6202[84]]);return db[_0x6202[66]][_0x6202[85]](_0x854fx23)[_0x6202[36]](respondWithFilteredResult(_0x854fx1d,_0x854fx23,_0x6202[63]))[_0x6202[27]](handleError(_0x854fx1d,null,_0x6202[63]))};exports[_0x6202[86]]= function(_0x854fx19,_0x854fx1d){var _0x854fx23={raw:true,where:{id:_0x854fx19[_0x6202[88]][_0x6202[87]]}},_0x854fx2f={};_0x854fx2f[_0x6202[64]]= _[_0x6202[67]](db[_0x6202[66]][_0x6202[65]]);_0x854fx2f[_0x6202[68]]= _[_0x6202[67]](_0x854fx19[_0x6202[68]]);_0x854fx2f[_0x6202[69]]= _[_0x6202[70]](_0x854fx2f[_0x6202[64]],_0x854fx2f[_0x6202[68]]);_0x854fx23[_0x6202[71]]= _[_0x6202[70]](_0x854fx2f[_0x6202[64]],qs[_0x6202[72]](_0x854fx19[_0x6202[68]][_0x6202[72]]));_0x854fx23[_0x6202[71]]= (_0x854fx23[_0x6202[71]][_0x6202[73]])?_0x854fx23[_0x6202[71]]:_0x854fx2f[_0x6202[64]];_0x854fx23= _[_0x6202[83]]({},_0x854fx23,_0x854fx19[_0x6202[84]]);return db[_0x6202[66]][_0x6202[89]](_0x854fx23)[_0x6202[36]](handleEntityNotFound(_0x854fx1d,null,_0x6202[86]))[_0x6202[36]](respondWithResult(_0x854fx1d,null,_0x6202[86]))[_0x6202[27]](handleError(_0x854fx1d,null,_0x6202[86]))};exports[_0x6202[90]]= function(_0x854fx19,_0x854fx1d,_0x854fx32){var _0x854fx33;return db[_0x6202[107]][_0x6202[106]](function(_0x854fx34){return db[_0x6202[66]][_0x6202[90]](_0x854fx19[_0x6202[102]],{raw:true})[_0x6202[36]](function(_0x854fx20){_0x854fx33= _0x854fx20;return db[_0x6202[66]][_0x6202[105]]({where:{type:_0x854fx19[_0x6202[102]][_0x6202[101]]},raw:true})})[_0x6202[36]](function(_0x854fx35){var _0x854fx36=fs[_0x6202[97]](path[_0x6202[95]](config[_0x6202[93]],_0x6202[94]),_0x6202[96]);var _0x854fx37=ejs[_0x6202[98]](_0x854fx36,{networks:_0x854fx35|| []});fs[_0x6202[104]](util[_0x6202[103]](_0x6202[99],_0x854fx19[_0x6202[102]][_0x6202[101]][_0x6202[100]]()),_0x854fx37)})[_0x6202[36]](function(){return respondWithRpcPromise(_0x6202[91],_0x6202[90],{module:_0x6202[92]})})[_0x6202[36]](function(){return _0x854fx33})})[_0x6202[36]](respondWithResult(_0x854fx1d,201,_0x6202[90]))[_0x6202[27]](handleError(_0x854fx1d,null,_0x6202[90]))};exports[_0x6202[57]]= function(_0x854fx19,_0x854fx1d,_0x854fx32){var _0x854fx33;return db[_0x6202[107]][_0x6202[106]](function(_0x854fx34){return db[_0x6202[66]][_0x6202[89]]({where:{id:_0x854fx19[_0x6202[88]][_0x6202[87]]}})[_0x6202[36]](handleEntityNotFound(_0x854fx1d,null,_0x6202[57]))[_0x6202[36]](saveUpdates(_0x854fx19[_0x6202[102]],null,_0x6202[57]))[_0x6202[36]](function(_0x854fx20){if(_0x854fx20){_0x854fx33= _0x854fx20;return db[_0x6202[66]][_0x6202[105]]({where:{type:_0x854fx33[_0x6202[101]]},raw:true})};return null})[_0x6202[36]](function(_0x854fx35){if(_0x854fx35){var _0x854fx36=fs[_0x6202[97]](path[_0x6202[95]](config[_0x6202[93]],_0x6202[94]),_0x6202[96]);var _0x854fx37=ejs[_0x6202[98]](_0x854fx36,{networks:_0x854fx35|| []});fs[_0x6202[104]](util[_0x6202[103]](_0x6202[99],_0x854fx33[_0x6202[101]][_0x6202[100]]()),_0x854fx37);return respondWithRpcPromise(_0x6202[91],_0x6202[57],{module:_0x6202[92]})};return null})[_0x6202[36]](function(_0x854fx20){if(_0x854fx20){return _0x854fx33};return null})})[_0x6202[36]](respondWithResult(_0x854fx1d,null,_0x6202[57]))[_0x6202[27]](handleError(_0x854fx1d,null,_0x6202[57]))};exports[_0x6202[59]]= function(_0x854fx19,_0x854fx1d,_0x854fx32){var _0x854fx33;return db[_0x6202[66]][_0x6202[89]]({where:{id:_0x854fx19[_0x6202[88]][_0x6202[87]]}})[_0x6202[36]](function(_0x854fx20){_0x854fx33= _0x854fx20;return _0x854fx20})[_0x6202[36]](handleEntityNotFound(_0x854fx1d,null,_0x6202[59]))[_0x6202[36]](removeEntity(_0x854fx1d,null,_0x6202[59]))[_0x6202[36]](function(){if(_0x854fx33){return db[_0x6202[66]][_0x6202[105]]({where:{type:_0x854fx33[_0x6202[101]]},raw:true})}})[_0x6202[36]](function(_0x854fx35){if(_0x854fx35){var _0x854fx36=fs[_0x6202[97]](path[_0x6202[95]](config[_0x6202[93]],_0x6202[94]),_0x6202[96]);var _0x854fx37=ejs[_0x6202[98]](_0x854fx36,{networks:_0x854fx35|| []});fs[_0x6202[104]](util[_0x6202[103]](_0x6202[99],_0x854fx33[_0x6202[101]][_0x6202[100]]()),_0x854fx37);return respondWithRpcPromise(_0x6202[91],_0x6202[59],{module:_0x6202[92]})}})[_0x6202[27]](handleError(_0x854fx1d,null,_0x6202[59]))}
\ No newline at end of file
+var _0x52ed=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4E\x65\x74\x77\x6F\x72\x6B","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x52\x65\x6C\x6F\x61\x64","\x63\x68\x61\x6E\x5F\x73\x69\x70\x2E\x73\x6F","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2E\x65\x6A\x73","\x6A\x6F\x69\x6E","\x75\x74\x66\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x72\x65\x6E\x64\x65\x72","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x73\x69\x70\x5F\x78\x63\x61\x6C\x6C\x79\x5F\x25\x73\x2E\x63\x6F\x6E\x66","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x74\x79\x70\x65","\x62\x6F\x64\x79","\x66\x6F\x72\x6D\x61\x74","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x66\x69\x6E\x64\x41\x6C\x6C","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0x52ed[0];var jsonpatch=require(_0x52ed[1]);var rp=require(_0x52ed[2]);var moment=require(_0x52ed[3]);var BPromise=require(_0x52ed[4]);var util=require(_0x52ed[5]);var path=require(_0x52ed[6]);var sox=require(_0x52ed[7]);var ejs=require(_0x52ed[8]);var fs=require(_0x52ed[9]);var _=require(_0x52ed[10]);var squel=require(_0x52ed[11]);var crypto=require(_0x52ed[12]);var jsforce=require(_0x52ed[13]);var toCsv=require(_0x52ed[14]);var qs=require(_0x52ed[15]);var logger=require(_0x52ed[17])(_0x52ed[16]);var utils=require(_0x52ed[18]);var config=require(_0x52ed[19]);var db=require(_0x52ed[21])[_0x52ed[20]];var jayson=require(_0x52ed[22]);var client=jayson[_0x52ed[24]][_0x52ed[23]]({port:9002});function respondWithRpcPromise(_0x697ex17,_0x697ex18,_0x697ex19){return  new BPromise(function(_0x697ex1a,_0x697ex1b){return client[_0x52ed[37]](_0x697ex17,_0x697ex19)[_0x52ed[36]](function(_0x697ex1d){logger[_0x52ed[29]](_0x52ed[25],_0x697ex18,_0x52ed[28]);logger[_0x52ed[32]](_0x52ed[30],_0x697ex18,_0x52ed[28],JSON[_0x52ed[31]](_0x697ex1d));if(_0x697ex1d[_0x52ed[26]]){if(_0x697ex1d[_0x52ed[26]][_0x52ed[33]]=== 500){logger[_0x52ed[26]](_0x52ed[25],_0x697ex18,_0x697ex1d[_0x52ed[26]][_0x52ed[34]]);return _0x697ex1b(_0x697ex1d[_0x52ed[26]][_0x52ed[34]])};logger[_0x52ed[26]](_0x52ed[25],_0x697ex18,_0x697ex1d[_0x52ed[26]][_0x52ed[34]]);return _0x697ex1a(_0x697ex1d[_0x52ed[26]][_0x52ed[34]])}else {logger[_0x52ed[29]](_0x52ed[25],_0x697ex18,_0x52ed[28]);_0x697ex1a(_0x697ex1d[_0x52ed[35]][_0x52ed[34]])}})[_0x52ed[27]](function(_0x697ex1c){logger[_0x52ed[26]](_0x52ed[25],_0x697ex18,_0x697ex1c);_0x697ex1b(_0x697ex1c)})})}function respondWithStatusCode(_0x697ex1d,_0x697ex1f,_0x697ex18){_0x697ex1f= _0x697ex1f|| 204;return function(_0x697ex20){if(_0x697ex20){logger[_0x52ed[29]](_0x52ed[30],_0x697ex18,_0x697ex1f,_0x52ed[38]);logger[_0x52ed[32]](_0x52ed[39],_0x697ex18,_0x697ex1f,_0x52ed[38]);return _0x697ex1d[_0x52ed[40]](_0x697ex1f)};return _0x697ex1d[_0x52ed[42]](304)[_0x52ed[41]]()}}function respondWithResult(_0x697ex1d,_0x697ex1f,_0x697ex18){_0x697ex1f= _0x697ex1f|| 200;return function(_0x697ex20){if(_0x697ex20){logger[_0x52ed[29]](_0x52ed[30],_0x697ex18,_0x697ex1f,_0x52ed[43]);logger[_0x52ed[32]](_0x52ed[39],_0x697ex18,_0x697ex1f,_0x52ed[43],JSON[_0x52ed[31]](_0x697ex20));return _0x697ex1d[_0x52ed[42]](_0x697ex1f)[_0x52ed[44]](_0x697ex20)};return _0x697ex1d[_0x52ed[42]](304)[_0x52ed[41]]()}}function respondWithFilteredResult(_0x697ex1d,_0x697ex23,_0x697ex18){return function(_0x697ex20){if(_0x697ex20){var _0x697ex24=_0x697ex20[_0x52ed[45]],_0x697ex25=_0x697ex23[_0x52ed[46]],_0x697ex26=_0x697ex23[_0x52ed[46]]+ _0x697ex23[_0x52ed[47]],_0x697ex1f;if(_0x697ex26>= _0x697ex24){_0x697ex26= _0x697ex24;_0x697ex1f= 200}else {_0x697ex1f= 206};_0x697ex1d[_0x52ed[42]](_0x697ex1f);logger[_0x52ed[29]](_0x52ed[30],_0x697ex18,_0x697ex1f,_0x52ed[48]);logger[_0x52ed[32]](_0x52ed[39],_0x697ex18,_0x697ex1f,_0x52ed[43],JSON[_0x52ed[31]](_0x697ex20));return _0x697ex1d[_0x52ed[52]](_0x52ed[49],_0x697ex25+ _0x52ed[50]+ _0x697ex26+ _0x52ed[51]+ _0x697ex24)[_0x52ed[44]](_0x697ex20)};return null}}function patchUpdates(_0x697ex28){return function(_0x697ex20){try{jsonpatch[_0x52ed[53]](_0x697ex20,_0x697ex28,true)}catch(err){return BPromise[_0x52ed[54]](err)};return _0x697ex20[_0x52ed[55]]()}}function saveUpdates(_0x697ex2a,_0x697ex1f,_0x697ex18){return function(_0x697ex20){if(_0x697ex20){return _0x697ex20[_0x52ed[57]](_0x697ex2a)[_0x52ed[36]](function(_0x697ex2b){logger[_0x52ed[29]](_0x52ed[30],_0x697ex18,_0x697ex1f,_0x52ed[56]);logger[_0x52ed[32]](_0x52ed[39],_0x697ex18,_0x697ex1f,_0x52ed[56],JSON[_0x52ed[31]](_0x697ex20));return _0x697ex2b})};return null}}function removeEntity(_0x697ex1d,_0x697ex1f,_0x697ex18){return function(_0x697ex20){if(_0x697ex20){return _0x697ex20[_0x52ed[59]]()[_0x52ed[36]](function(){logger[_0x52ed[29]](_0x52ed[30],_0x697ex18,_0x697ex1f,_0x52ed[58]);logger[_0x52ed[32]](_0x52ed[39],_0x697ex18,_0x697ex1f,_0x52ed[58],JSON[_0x52ed[31]](_0x697ex20));_0x697ex1d[_0x52ed[42]](204)[_0x52ed[41]]()})}}}function handleEntityNotFound(_0x697ex1d,_0x697ex1f,_0x697ex18){return function(_0x697ex20){if(!_0x697ex20){logger[_0x52ed[26]](_0x52ed[30],_0x697ex18,404,_0x52ed[60]);_0x697ex1d[_0x52ed[42]](404)[_0x52ed[41]]();return null};return _0x697ex20}}function handleError(_0x697ex1d,_0x697ex1f,_0x697ex18){_0x697ex1f= _0x697ex1f|| 500;return function(_0x697ex1c){logger[_0x52ed[26]](_0x52ed[30],_0x697ex18,_0x697ex1f,JSON[_0x52ed[31]](_0x697ex1c));delete _0x697ex1c[_0x52ed[61]];_0x697ex1d[_0x52ed[42]](_0x697ex1f)[_0x52ed[62]](_0x697ex1c)}}exports[_0x52ed[63]]= function(_0x697ex19,_0x697ex1d){var _0x697ex23={},_0x697ex2f={};_0x697ex2f[_0x52ed[64]]= _[_0x52ed[67]](db[_0x52ed[66]][_0x52ed[65]]);_0x697ex2f[_0x52ed[68]]= _[_0x52ed[67]](_0x697ex19[_0x52ed[68]]);_0x697ex2f[_0x52ed[69]]= _[_0x52ed[70]](_0x697ex2f[_0x52ed[64]],_0x697ex2f[_0x52ed[68]]);_0x697ex23[_0x52ed[71]]= _[_0x52ed[70]](_0x697ex2f[_0x52ed[64]],qs[_0x52ed[72]](_0x697ex19[_0x52ed[68]][_0x52ed[72]]));_0x697ex23[_0x52ed[71]]= (_0x697ex23[_0x52ed[71]][_0x52ed[73]])?_0x697ex23[_0x52ed[71]]:_0x697ex2f[_0x52ed[64]];if(!_0x697ex19[_0x52ed[68]][_0x52ed[75]](_0x52ed[74])){_0x697ex23[_0x52ed[47]]= qs[_0x52ed[47]](_0x697ex19[_0x52ed[68]][_0x52ed[47]]);_0x697ex23[_0x52ed[46]]= qs[_0x52ed[46]](_0x697ex19[_0x52ed[68]][_0x52ed[46]])};_0x697ex23[_0x52ed[76]]= qs[_0x52ed[77]](_0x697ex19[_0x52ed[68]][_0x52ed[77]]);_0x697ex23[_0x52ed[78]]= qs[_0x52ed[69]](_[_0x52ed[79]](_0x697ex19[_0x52ed[68]],_0x697ex2f[_0x52ed[69]]));if(_0x697ex19[_0x52ed[68]][_0x52ed[80]]){_0x697ex23[_0x52ed[78]]= _[_0x52ed[83]](_0x697ex23[_0x52ed[78]],{$or:_[_0x52ed[82]](_0x697ex23[_0x52ed[71]],function(_0x697ex30){var _0x697ex31={};_0x697ex31[_0x697ex30]= {$like:_0x52ed[81]+ _0x697ex19[_0x52ed[68]][_0x52ed[80]]+ _0x52ed[81]};return _0x697ex31})})};_0x697ex23= _[_0x52ed[83]]({},_0x697ex23,_0x697ex19[_0x52ed[84]]);return db[_0x52ed[66]][_0x52ed[85]](_0x697ex23)[_0x52ed[36]](respondWithFilteredResult(_0x697ex1d,_0x697ex23,_0x52ed[63]))[_0x52ed[27]](handleError(_0x697ex1d,null,_0x52ed[63]))};exports[_0x52ed[86]]= function(_0x697ex19,_0x697ex1d){var _0x697ex23={raw:true,where:{id:_0x697ex19[_0x52ed[88]][_0x52ed[87]]}},_0x697ex2f={};_0x697ex2f[_0x52ed[64]]= _[_0x52ed[67]](db[_0x52ed[66]][_0x52ed[65]]);_0x697ex2f[_0x52ed[68]]= _[_0x52ed[67]](_0x697ex19[_0x52ed[68]]);_0x697ex2f[_0x52ed[69]]= _[_0x52ed[70]](_0x697ex2f[_0x52ed[64]],_0x697ex2f[_0x52ed[68]]);_0x697ex23[_0x52ed[71]]= _[_0x52ed[70]](_0x697ex2f[_0x52ed[64]],qs[_0x52ed[72]](_0x697ex19[_0x52ed[68]][_0x52ed[72]]));_0x697ex23[_0x52ed[71]]= (_0x697ex23[_0x52ed[71]][_0x52ed[73]])?_0x697ex23[_0x52ed[71]]:_0x697ex2f[_0x52ed[64]];_0x697ex23= _[_0x52ed[83]]({},_0x697ex23,_0x697ex19[_0x52ed[84]]);return db[_0x52ed[66]][_0x52ed[89]](_0x697ex23)[_0x52ed[36]](handleEntityNotFound(_0x697ex1d,null,_0x52ed[86]))[_0x52ed[36]](respondWithResult(_0x697ex1d,null,_0x52ed[86]))[_0x52ed[27]](handleError(_0x697ex1d,null,_0x52ed[86]))};exports[_0x52ed[90]]= function(_0x697ex19,_0x697ex1d,_0x697ex32){var _0x697ex33;return db[_0x52ed[107]][_0x52ed[106]](function(_0x697ex34){return db[_0x52ed[66]][_0x52ed[90]](_0x697ex19[_0x52ed[102]],{raw:true})[_0x52ed[36]](function(_0x697ex20){_0x697ex33= _0x697ex20;return db[_0x52ed[66]][_0x52ed[105]]({where:{type:_0x697ex19[_0x52ed[102]][_0x52ed[101]]},raw:true})})[_0x52ed[36]](function(_0x697ex35){var _0x697ex36=fs[_0x52ed[97]](path[_0x52ed[95]](config[_0x52ed[93]],_0x52ed[94]),_0x52ed[96]);var _0x697ex37=ejs[_0x52ed[98]](_0x697ex36,{networks:_0x697ex35|| []});fs[_0x52ed[104]](util[_0x52ed[103]](_0x52ed[99],_0x697ex19[_0x52ed[102]][_0x52ed[101]][_0x52ed[100]]()),_0x697ex37)})[_0x52ed[36]](function(){return respondWithRpcPromise(_0x52ed[91],_0x52ed[90],{module:_0x52ed[92]})})[_0x52ed[36]](function(){return _0x697ex33})})[_0x52ed[36]](respondWithResult(_0x697ex1d,201,_0x52ed[90]))[_0x52ed[27]](handleError(_0x697ex1d,null,_0x52ed[90]))};exports[_0x52ed[57]]= function(_0x697ex19,_0x697ex1d,_0x697ex32){var _0x697ex33;return db[_0x52ed[107]][_0x52ed[106]](function(_0x697ex34){return db[_0x52ed[66]][_0x52ed[89]]({where:{id:_0x697ex19[_0x52ed[88]][_0x52ed[87]]}})[_0x52ed[36]](handleEntityNotFound(_0x697ex1d,null,_0x52ed[57]))[_0x52ed[36]](saveUpdates(_0x697ex19[_0x52ed[102]],null,_0x52ed[57]))[_0x52ed[36]](function(_0x697ex20){if(_0x697ex20){_0x697ex33= _0x697ex20;return db[_0x52ed[66]][_0x52ed[105]]({where:{type:_0x697ex33[_0x52ed[101]]},raw:true})};return null})[_0x52ed[36]](function(_0x697ex35){if(_0x697ex35){var _0x697ex36=fs[_0x52ed[97]](path[_0x52ed[95]](config[_0x52ed[93]],_0x52ed[94]),_0x52ed[96]);var _0x697ex37=ejs[_0x52ed[98]](_0x697ex36,{networks:_0x697ex35|| []});fs[_0x52ed[104]](util[_0x52ed[103]](_0x52ed[99],_0x697ex33[_0x52ed[101]][_0x52ed[100]]()),_0x697ex37);return respondWithRpcPromise(_0x52ed[91],_0x52ed[57],{module:_0x52ed[92]})};return null})[_0x52ed[36]](function(_0x697ex20){if(_0x697ex20){return _0x697ex33};return null})})[_0x52ed[36]](respondWithResult(_0x697ex1d,null,_0x52ed[57]))[_0x52ed[27]](handleError(_0x697ex1d,null,_0x52ed[57]))};exports[_0x52ed[59]]= function(_0x697ex19,_0x697ex1d,_0x697ex32){var _0x697ex33;return db[_0x52ed[66]][_0x52ed[89]]({where:{id:_0x697ex19[_0x52ed[88]][_0x52ed[87]]}})[_0x52ed[36]](function(_0x697ex20){_0x697ex33= _0x697ex20;return _0x697ex20})[_0x52ed[36]](handleEntityNotFound(_0x697ex1d,null,_0x52ed[59]))[_0x52ed[36]](removeEntity(_0x697ex1d,null,_0x52ed[59]))[_0x52ed[36]](function(){if(_0x697ex33){return db[_0x52ed[66]][_0x52ed[105]]({where:{type:_0x697ex33[_0x52ed[101]]},raw:true})}})[_0x52ed[36]](function(_0x697ex35){if(_0x697ex35){var _0x697ex36=fs[_0x52ed[97]](path[_0x52ed[95]](config[_0x52ed[93]],_0x52ed[94]),_0x52ed[96]);var _0x697ex37=ejs[_0x52ed[98]](_0x697ex36,{networks:_0x697ex35|| []});fs[_0x52ed[104]](util[_0x52ed[103]](_0x52ed[99],_0x697ex33[_0x52ed[101]][_0x52ed[100]]()),_0x697ex37);return respondWithRpcPromise(_0x52ed[91],_0x52ed[59],{module:_0x52ed[92]})}})[_0x52ed[27]](handleError(_0x697ex1d,null,_0x52ed[59]))}
\ No newline at end of file
index 941e1b6..44c0b15 100644 (file)
@@ -1 +1 @@
-var _0x9f36=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4E\x65\x74\x77\x6F\x72\x6B","\x6E\x65\x74\x77\x6F\x72\x6B","\x64\x65\x66\x69\x6E\x65"];_0x9f36[0];var _=require(_0x9f36[1]);var util=require(_0x9f36[2]);var logger=require(_0x9f36[4])(_0x9f36[3]);var attributes=require(_0x9f36[5]);module[_0x9f36[6]]= function(_0x3ca7x5,_0x3ca7x6){return _0x3ca7x5[_0x9f36[9]](_0x9f36[7],attributes,{tableName:_0x9f36[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x505b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4E\x65\x74\x77\x6F\x72\x6B","\x6E\x65\x74\x77\x6F\x72\x6B","\x64\x65\x66\x69\x6E\x65"];_0x505b[0];var _=require(_0x505b[1]);var util=require(_0x505b[2]);var logger=require(_0x505b[4])(_0x505b[3]);var attributes=require(_0x505b[5]);module[_0x505b[6]]= function(_0x9345x5,_0x9345x6){return _0x9345x5[_0x505b[9]](_0x505b[7],attributes,{tableName:_0x505b[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 24762b6..aba949c 100644 (file)
@@ -1 +1 @@
-var _0xc6b2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xc6b2[0];var _=require(_0xc6b2[1]);var util=require(_0xc6b2[2]);var moment=require(_0xc6b2[3]);var BPromise=require(_0xc6b2[4]);var db=require(_0xc6b2[6])[_0xc6b2[5]];var utils=require(_0xc6b2[7]);var logger=require(_0xc6b2[9])(_0xc6b2[8]);var jayson=require(_0xc6b2[10]);var client=jayson[_0xc6b2[12]][_0xc6b2[11]]({port:9002});function respondWithRpcPromise(_0x435axb,_0x435axc,_0x435axd){return  new BPromise(function(_0x435axe,_0x435axf){return client[_0xc6b2[25]](_0x435axb,_0x435axd)[_0xc6b2[24]](function(_0x435ax11){logger[_0xc6b2[17]](_0xc6b2[13],_0x435axc,_0xc6b2[16]);logger[_0xc6b2[20]](_0xc6b2[18],_0x435axc,_0xc6b2[16],JSON[_0xc6b2[19]](_0x435ax11));if(_0x435ax11[_0xc6b2[14]]){if(_0x435ax11[_0xc6b2[14]][_0xc6b2[21]]=== 500){logger[_0xc6b2[14]](_0xc6b2[13],_0x435axc,_0x435ax11[_0xc6b2[14]][_0xc6b2[22]]);return _0x435axf(_0x435ax11[_0xc6b2[14]][_0xc6b2[22]])};logger[_0xc6b2[14]](_0xc6b2[13],_0x435axc,_0x435ax11[_0xc6b2[14]][_0xc6b2[22]]);return _0x435axe(_0x435ax11[_0xc6b2[14]][_0xc6b2[22]])}else {logger[_0xc6b2[17]](_0xc6b2[13],_0x435axc,_0xc6b2[16]);_0x435axe(_0x435ax11[_0xc6b2[23]][_0xc6b2[22]])}})[_0xc6b2[15]](function(_0x435ax10){logger[_0xc6b2[14]](_0xc6b2[13],_0x435axc,_0x435ax10);_0x435axf(_0x435ax10)})})}
\ No newline at end of file
+var _0xd4cf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4E\x65\x74\x77\x6F\x72\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd4cf[0];var _=require(_0xd4cf[1]);var util=require(_0xd4cf[2]);var moment=require(_0xd4cf[3]);var BPromise=require(_0xd4cf[4]);var db=require(_0xd4cf[6])[_0xd4cf[5]];var utils=require(_0xd4cf[7]);var logger=require(_0xd4cf[9])(_0xd4cf[8]);var jayson=require(_0xd4cf[10]);var client=jayson[_0xd4cf[12]][_0xd4cf[11]]({port:9002});function respondWithRpcPromise(_0xe0f8xb,_0xe0f8xc,_0xe0f8xd){return  new BPromise(function(_0xe0f8xe,_0xe0f8xf){return client[_0xd4cf[25]](_0xe0f8xb,_0xe0f8xd)[_0xd4cf[24]](function(_0xe0f8x11){logger[_0xd4cf[17]](_0xd4cf[13],_0xe0f8xc,_0xd4cf[16]);logger[_0xd4cf[20]](_0xd4cf[18],_0xe0f8xc,_0xd4cf[16],JSON[_0xd4cf[19]](_0xe0f8x11));if(_0xe0f8x11[_0xd4cf[14]]){if(_0xe0f8x11[_0xd4cf[14]][_0xd4cf[21]]=== 500){logger[_0xd4cf[14]](_0xd4cf[13],_0xe0f8xc,_0xe0f8x11[_0xd4cf[14]][_0xd4cf[22]]);return _0xe0f8xf(_0xe0f8x11[_0xd4cf[14]][_0xd4cf[22]])};logger[_0xd4cf[14]](_0xd4cf[13],_0xe0f8xc,_0xe0f8x11[_0xd4cf[14]][_0xd4cf[22]]);return _0xe0f8xe(_0xe0f8x11[_0xd4cf[14]][_0xd4cf[22]])}else {logger[_0xd4cf[17]](_0xd4cf[13],_0xe0f8xc,_0xd4cf[16]);_0xe0f8xe(_0xe0f8x11[_0xd4cf[23]][_0xd4cf[22]])}})[_0xd4cf[15]](function(_0xe0f8x10){logger[_0xd4cf[14]](_0xd4cf[13],_0xe0f8xc,_0xe0f8x10);_0xe0f8xf(_0xe0f8x10)})})}
\ No newline at end of file
index 607144e..b38f1c3 100644 (file)
@@ -1 +1 @@
-var _0xd71a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd71a[0];var multer=require(_0xd71a[1]);var util=require(_0xd71a[2]);var path=require(_0xd71a[3]);var express=require(_0xd71a[4]);var router=express.Router();var auth=require(_0xd71a[5]);var config=require(_0xd71a[6]);var controller=require(_0xd71a[7]);router[_0xd71a[11]](_0xd71a[8],auth[_0xd71a[9]](),controller[_0xd71a[10]]);router[_0xd71a[11]](_0xd71a[12],auth[_0xd71a[9]](),controller[_0xd71a[13]]);router[_0xd71a[11]](_0xd71a[14],auth[_0xd71a[9]](),controller[_0xd71a[15]]);router[_0xd71a[11]](_0xd71a[16],auth[_0xd71a[9]](),controller[_0xd71a[17]]);router[_0xd71a[11]](_0xd71a[18],auth[_0xd71a[9]](),controller[_0xd71a[19]]);router[_0xd71a[21]](_0xd71a[8],auth[_0xd71a[9]](),controller[_0xd71a[20]]);router[_0xd71a[21]](_0xd71a[14],auth[_0xd71a[9]](),controller[_0xd71a[22]]);router[_0xd71a[21]](_0xd71a[16],auth[_0xd71a[9]](),controller[_0xd71a[23]]);router[_0xd71a[21]](_0xd71a[18],auth[_0xd71a[9]](),controller[_0xd71a[24]]);router[_0xd71a[21]](_0xd71a[18],auth[_0xd71a[9]](),controller[_0xd71a[25]]);router[_0xd71a[27]](_0xd71a[12],auth[_0xd71a[9]](),controller[_0xd71a[26]]);router[_0xd71a[29]](_0xd71a[12],auth[_0xd71a[9]](),controller[_0xd71a[28]]);module[_0xd71a[30]]= router
\ No newline at end of file
+var _0x96ba=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x96ba[0];var multer=require(_0x96ba[1]);var util=require(_0x96ba[2]);var path=require(_0x96ba[3]);var express=require(_0x96ba[4]);var router=express.Router();var auth=require(_0x96ba[5]);var config=require(_0x96ba[6]);var controller=require(_0x96ba[7]);router[_0x96ba[11]](_0x96ba[8],auth[_0x96ba[9]](),controller[_0x96ba[10]]);router[_0x96ba[11]](_0x96ba[12],auth[_0x96ba[9]](),controller[_0x96ba[13]]);router[_0x96ba[11]](_0x96ba[14],auth[_0x96ba[9]](),controller[_0x96ba[15]]);router[_0x96ba[11]](_0x96ba[16],auth[_0x96ba[9]](),controller[_0x96ba[17]]);router[_0x96ba[11]](_0x96ba[18],auth[_0x96ba[9]](),controller[_0x96ba[19]]);router[_0x96ba[21]](_0x96ba[8],auth[_0x96ba[9]](),controller[_0x96ba[20]]);router[_0x96ba[21]](_0x96ba[14],auth[_0x96ba[9]](),controller[_0x96ba[22]]);router[_0x96ba[21]](_0x96ba[16],auth[_0x96ba[9]](),controller[_0x96ba[23]]);router[_0x96ba[21]](_0x96ba[18],auth[_0x96ba[9]](),controller[_0x96ba[24]]);router[_0x96ba[21]](_0x96ba[18],auth[_0x96ba[9]](),controller[_0x96ba[25]]);router[_0x96ba[27]](_0x96ba[12],auth[_0x96ba[9]](),controller[_0x96ba[26]]);router[_0x96ba[29]](_0x96ba[12],auth[_0x96ba[9]](),controller[_0x96ba[28]]);module[_0x96ba[30]]= router
\ No newline at end of file
index b1ab9f1..6dde754 100644 (file)
@@ -1 +1 @@
-var _0x642a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52","\x47\x45\x54","\x50\x4F\x53\x54","\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0x642a[0];var Sequelize=require(_0x642a[1]);module[_0x642a[2]]= {name:{type:Sequelize[_0x642a[3]]},description:{type:Sequelize[_0x642a[3]]},remote:{type:Sequelize[_0x642a[3]]},fidelity:{type:Sequelize[_0x642a[4]],defaultValue:false},timeout:{type:Sequelize[_0x642a[5]],defaultValue:0},acceptUrl:{type:Sequelize[_0x642a[3]]},rejectUrl:{type:Sequelize[_0x642a[3]]},replyUrl:{type:Sequelize[_0x642a[3]]},acceptMethod:{type:Sequelize.ENUM(_0x642a[6],_0x642a[7])},rejectMethod:{type:Sequelize.ENUM(_0x642a[6],_0x642a[7])},replyMethod:{type:Sequelize.ENUM(_0x642a[6],_0x642a[7])},closeUrl:{type:Sequelize[_0x642a[3]]},closeMethod:{type:Sequelize.ENUM(_0x642a[6],_0x642a[7])},actions:{type:Sequelize[_0x642a[3]],get:function(){return this[_0x642a[9]](_0x642a[8])?JSON[_0x642a[10]](this[_0x642a[9]](_0x642a[8])):[]},set:function(_0x1e7ex2){return this[_0x642a[12]](_0x642a[8],JSON[_0x642a[11]](_0x1e7ex2))}}}
\ No newline at end of file
+var _0xb49a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52","\x47\x45\x54","\x50\x4F\x53\x54","\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0xb49a[0];var Sequelize=require(_0xb49a[1]);module[_0xb49a[2]]= {name:{type:Sequelize[_0xb49a[3]]},description:{type:Sequelize[_0xb49a[3]]},remote:{type:Sequelize[_0xb49a[3]]},fidelity:{type:Sequelize[_0xb49a[4]],defaultValue:false},timeout:{type:Sequelize[_0xb49a[5]],defaultValue:0},acceptUrl:{type:Sequelize[_0xb49a[3]]},rejectUrl:{type:Sequelize[_0xb49a[3]]},replyUrl:{type:Sequelize[_0xb49a[3]]},acceptMethod:{type:Sequelize.ENUM(_0xb49a[6],_0xb49a[7])},rejectMethod:{type:Sequelize.ENUM(_0xb49a[6],_0xb49a[7])},replyMethod:{type:Sequelize.ENUM(_0xb49a[6],_0xb49a[7])},closeUrl:{type:Sequelize[_0xb49a[3]]},closeMethod:{type:Sequelize.ENUM(_0xb49a[6],_0xb49a[7])},actions:{type:Sequelize[_0xb49a[3]],get:function(){return this[_0xb49a[9]](_0xb49a[8])?JSON[_0xb49a[10]](this[_0xb49a[9]](_0xb49a[8])):[]},set:function(_0x9594x2){return this[_0xb49a[12]](_0xb49a[8],JSON[_0xb49a[11]](_0x9594x2))}}}
\ No newline at end of file
index 0b3830d..2f3888b 100644 (file)
@@ -1 +1 @@
-var _0x6a29=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73"];_0x6a29[0];var jsonpatch=require(_0x6a29[1]);var rp=require(_0x6a29[2]);var moment=require(_0x6a29[3]);var BPromise=require(_0x6a29[4]);var util=require(_0x6a29[5]);var path=require(_0x6a29[6]);var sox=require(_0x6a29[7]);var ejs=require(_0x6a29[8]);var fs=require(_0x6a29[9]);var _=require(_0x6a29[10]);var squel=require(_0x6a29[11]);var crypto=require(_0x6a29[12]);var jsforce=require(_0x6a29[13]);var toCsv=require(_0x6a29[14]);var qs=require(_0x6a29[15]);var logger=require(_0x6a29[17])(_0x6a29[16]);var utils=require(_0x6a29[18]);var config=require(_0x6a29[19]);var db=require(_0x6a29[21])[_0x6a29[20]];function respondWithStatusCode(_0x18ecx15,_0x18ecx16,_0x18ecx17){_0x18ecx16= _0x18ecx16|| 204;return function(_0x18ecx18){if(_0x18ecx18){logger[_0x6a29[24]](_0x6a29[22],_0x18ecx17,_0x18ecx16,_0x6a29[23]);logger[_0x6a29[26]](_0x6a29[25],_0x18ecx17,_0x18ecx16,_0x6a29[23]);return _0x18ecx15[_0x6a29[27]](_0x18ecx16)};return _0x18ecx15[_0x6a29[29]](304)[_0x6a29[28]]()}}function respondWithResult(_0x18ecx15,_0x18ecx16,_0x18ecx17){_0x18ecx16= _0x18ecx16|| 200;return function(_0x18ecx18){if(_0x18ecx18){logger[_0x6a29[24]](_0x6a29[22],_0x18ecx17,_0x18ecx16,_0x6a29[30]);logger[_0x6a29[26]](_0x6a29[25],_0x18ecx17,_0x18ecx16,_0x6a29[30],JSON[_0x6a29[31]](_0x18ecx18));return _0x18ecx15[_0x6a29[29]](_0x18ecx16)[_0x6a29[32]](_0x18ecx18)};return _0x18ecx15[_0x6a29[29]](304)[_0x6a29[28]]()}}function respondWithFilteredResult(_0x18ecx15,_0x18ecx1b,_0x18ecx17){return function(_0x18ecx18){if(_0x18ecx18){var _0x18ecx1c=_0x18ecx18[_0x6a29[33]],_0x18ecx1d=_0x18ecx1b[_0x6a29[34]],_0x18ecx1e=_0x18ecx1b[_0x6a29[34]]+ _0x18ecx1b[_0x6a29[35]],_0x18ecx16;if(_0x18ecx1e>= _0x18ecx1c){_0x18ecx1e= _0x18ecx1c;_0x18ecx16= 200}else {_0x18ecx16= 206};_0x18ecx15[_0x6a29[29]](_0x18ecx16);logger[_0x6a29[24]](_0x6a29[22],_0x18ecx17,_0x18ecx16,_0x6a29[36]);logger[_0x6a29[26]](_0x6a29[25],_0x18ecx17,_0x18ecx16,_0x6a29[30],JSON[_0x6a29[31]](_0x18ecx18));return _0x18ecx15[_0x6a29[40]](_0x6a29[37],_0x18ecx1d+ _0x6a29[38]+ _0x18ecx1e+ _0x6a29[39]+ _0x18ecx1c)[_0x6a29[32]](_0x18ecx18)};return null}}function patchUpdates(_0x18ecx20){return function(_0x18ecx18){try{jsonpatch[_0x6a29[41]](_0x18ecx18,_0x18ecx20,true)}catch(err){return BPromise[_0x6a29[42]](err)};return _0x18ecx18[_0x6a29[43]]()}}function saveUpdates(_0x18ecx22,_0x18ecx16,_0x18ecx17){return function(_0x18ecx18){if(_0x18ecx18){return _0x18ecx18[_0x6a29[46]](_0x18ecx22)[_0x6a29[45]](function(_0x18ecx23){logger[_0x6a29[24]](_0x6a29[22],_0x18ecx17,_0x18ecx16,_0x6a29[44]);logger[_0x6a29[26]](_0x6a29[25],_0x18ecx17,_0x18ecx16,_0x6a29[44],JSON[_0x6a29[31]](_0x18ecx18));return _0x18ecx23})};return null}}function removeEntity(_0x18ecx15,_0x18ecx16,_0x18ecx17){return function(_0x18ecx18){if(_0x18ecx18){return _0x18ecx18[_0x6a29[48]]()[_0x6a29[45]](function(){logger[_0x6a29[24]](_0x6a29[22],_0x18ecx17,_0x18ecx16,_0x6a29[47]);logger[_0x6a29[26]](_0x6a29[25],_0x18ecx17,_0x18ecx16,_0x6a29[47],JSON[_0x6a29[31]](_0x18ecx18));_0x18ecx15[_0x6a29[29]](204)[_0x6a29[28]]()})}}}function handleEntityNotFound(_0x18ecx15,_0x18ecx16,_0x18ecx17){return function(_0x18ecx18){if(!_0x18ecx18){logger[_0x6a29[50]](_0x6a29[22],_0x18ecx17,404,_0x6a29[49]);_0x18ecx15[_0x6a29[29]](404)[_0x6a29[28]]();return null};return _0x18ecx18}}function handleError(_0x18ecx15,_0x18ecx16,_0x18ecx17){_0x18ecx16= _0x18ecx16|| 500;return function(_0x18ecx27){logger[_0x6a29[50]](_0x6a29[22],_0x18ecx17,_0x18ecx16,JSON[_0x6a29[31]](_0x18ecx27));delete _0x18ecx27[_0x6a29[51]];_0x18ecx15[_0x6a29[29]](_0x18ecx16)[_0x6a29[52]](_0x18ecx27)}}exports[_0x6a29[53]]= function(_0x18ecx28,_0x18ecx15){var _0x18ecx1b={},_0x18ecx29={};_0x18ecx29[_0x6a29[54]]= _[_0x6a29[57]](db[_0x6a29[56]][_0x6a29[55]]);_0x18ecx29[_0x6a29[58]]= _[_0x6a29[57]](_0x18ecx28[_0x6a29[58]]);_0x18ecx29[_0x6a29[59]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],_0x18ecx29[_0x6a29[58]]);_0x18ecx1b[_0x6a29[61]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],qs[_0x6a29[62]](_0x18ecx28[_0x6a29[58]][_0x6a29[62]]));_0x18ecx1b[_0x6a29[61]]= (_0x18ecx1b[_0x6a29[61]][_0x6a29[63]])?_0x18ecx1b[_0x6a29[61]]:_0x18ecx29[_0x6a29[54]];if(!_0x18ecx28[_0x6a29[58]][_0x6a29[65]](_0x6a29[64])){_0x18ecx1b[_0x6a29[35]]= qs[_0x6a29[35]](_0x18ecx28[_0x6a29[58]][_0x6a29[35]]);_0x18ecx1b[_0x6a29[34]]= qs[_0x6a29[34]](_0x18ecx28[_0x6a29[58]][_0x6a29[34]])};_0x18ecx1b[_0x6a29[66]]= qs[_0x6a29[67]](_0x18ecx28[_0x6a29[58]][_0x6a29[67]]);_0x18ecx1b[_0x6a29[68]]= qs[_0x6a29[59]](_[_0x6a29[69]](_0x18ecx28[_0x6a29[58]],_0x18ecx29[_0x6a29[59]]));if(_0x18ecx28[_0x6a29[58]][_0x6a29[70]]){_0x18ecx1b[_0x6a29[68]]= _[_0x6a29[73]](_0x18ecx1b[_0x6a29[68]],{$or:_[_0x6a29[72]](_0x18ecx1b[_0x6a29[61]],function(_0x18ecx2a){var _0x18ecx2b={};_0x18ecx2b[_0x18ecx2a]= {$like:_0x6a29[71]+ _0x18ecx28[_0x6a29[58]][_0x6a29[70]]+ _0x6a29[71]};return _0x18ecx2b})})};_0x18ecx1b= _[_0x6a29[73]]({},_0x18ecx1b,_0x18ecx28[_0x6a29[74]]);return db[_0x6a29[56]][_0x6a29[76]](_0x18ecx1b)[_0x6a29[45]](respondWithFilteredResult(_0x18ecx15,_0x18ecx1b,_0x6a29[53]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[53]))};exports[_0x6a29[77]]= function(_0x18ecx28,_0x18ecx15){var _0x18ecx1b={raw:false,where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}},_0x18ecx29={};_0x18ecx29[_0x6a29[54]]= _[_0x6a29[57]](db[_0x6a29[56]][_0x6a29[55]]);_0x18ecx29[_0x6a29[58]]= _[_0x6a29[57]](_0x18ecx28[_0x6a29[58]]);_0x18ecx29[_0x6a29[59]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],_0x18ecx29[_0x6a29[58]]);_0x18ecx1b[_0x6a29[61]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],qs[_0x6a29[62]](_0x18ecx28[_0x6a29[58]][_0x6a29[62]]));_0x18ecx1b[_0x6a29[61]]= (_0x18ecx1b[_0x6a29[61]][_0x6a29[63]])?_0x18ecx1b[_0x6a29[61]]:_0x18ecx29[_0x6a29[54]];_0x18ecx1b= _[_0x6a29[73]]({},_0x18ecx1b,_0x18ecx28[_0x6a29[74]]);return db[_0x6a29[56]][_0x6a29[80]](_0x18ecx1b)[_0x6a29[45]](handleEntityNotFound(_0x18ecx15,null,_0x6a29[77]))[_0x6a29[45]](respondWithResult(_0x18ecx15,null,_0x6a29[77]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[77]))};exports[_0x6a29[81]]= function(_0x18ecx28,_0x18ecx15){return db[_0x6a29[56]][_0x6a29[81]](_0x18ecx28[_0x6a29[82]],{})[_0x6a29[45]](respondWithResult(_0x18ecx15,201,_0x6a29[81]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[81]))};exports[_0x6a29[46]]= function(_0x18ecx28,_0x18ecx15){if(_0x18ecx28[_0x6a29[82]][_0x6a29[78]]){delete _0x18ecx28[_0x6a29[82]][_0x6a29[78]]};return db[_0x6a29[56]][_0x6a29[80]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx15,null,_0x6a29[46]))[_0x6a29[45]](saveUpdates(_0x18ecx28[_0x6a29[82]],null,_0x6a29[46]))[_0x6a29[45]](respondWithResult(_0x18ecx15,null,_0x6a29[46]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[46]))};exports[_0x6a29[48]]= function(_0x18ecx28,_0x18ecx15){return db[_0x6a29[56]][_0x6a29[80]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx15,null,_0x6a29[48]))[_0x6a29[45]](removeEntity(_0x18ecx15,null,_0x6a29[48]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[48]))};exports[_0x6a29[83]]= function(_0x18ecx28,_0x18ecx15,_0x18ecx2c){return db[_0x6a29[86]][_0x6a29[80]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx15,null,_0x6a29[83]))[_0x6a29[45]](function(_0x18ecx18){if(_0x18ecx18){return _0x18ecx18[_0x6a29[83]](_0x18ecx28[_0x6a29[82]][_0x6a29[84]],_[_0x6a29[85]](_0x18ecx28[_0x6a29[82]],[_0x6a29[84],_0x6a29[78]])|| {})};return null})[_0x6a29[45]](respondWithResult(_0x18ecx15,null,_0x6a29[83]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[83]))};exports[_0x6a29[87]]= function(_0x18ecx28,_0x18ecx18,_0x18ecx2c){var _0x18ecx1b={};var _0x18ecx29={};var _0x18ecx2d;var _0x18ecx1c;return db[_0x6a29[56]][_0x6a29[88]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx18,null,_0x6a29[87]))[_0x6a29[45]](function(_0x18ecx18){if(_0x18ecx18){_0x18ecx2d= _0x18ecx18;_0x18ecx29[_0x6a29[54]]= _[_0x6a29[57]](db[_0x6a29[86]][_0x6a29[55]]);_0x18ecx29[_0x6a29[58]]= _[_0x6a29[57]](_0x18ecx28[_0x6a29[58]]);_0x18ecx29[_0x6a29[59]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],_0x18ecx29[_0x6a29[58]]);_0x18ecx1b[_0x6a29[61]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],qs[_0x6a29[62]](_0x18ecx28[_0x6a29[58]][_0x6a29[62]]));_0x18ecx1b[_0x6a29[61]]= (_0x18ecx1b[_0x6a29[61]][_0x6a29[63]])?_0x18ecx1b[_0x6a29[61]]:_0x18ecx29[_0x6a29[54]];_0x18ecx1b[_0x6a29[66]]= qs[_0x6a29[67]](_0x18ecx28[_0x6a29[58]][_0x6a29[67]]);_0x18ecx1b[_0x6a29[68]]= qs[_0x6a29[59]](_[_0x6a29[69]](_0x18ecx28[_0x6a29[58]],_0x18ecx29[_0x6a29[59]]));if(_0x18ecx28[_0x6a29[58]][_0x6a29[70]]){_0x18ecx1b[_0x6a29[68]]= _[_0x6a29[73]](_0x18ecx1b[_0x6a29[68]],{$or:_[_0x6a29[72]](_0x18ecx1b[_0x6a29[61]],function(_0x18ecx2a){var _0x18ecx2b={};_0x18ecx2b[_0x18ecx2a]= {$like:_0x6a29[71]+ _0x18ecx28[_0x6a29[58]][_0x6a29[70]]+ _0x6a29[71]};return _0x18ecx2b})})};_0x18ecx1b= _[_0x6a29[73]]({},_0x18ecx1b,_0x18ecx28[_0x6a29[74]]);return _0x18ecx2d[_0x6a29[87]](_0x18ecx1b)}})[_0x6a29[45]](function(_0x18ecx2f){if(_0x18ecx2f){_0x18ecx1c= _0x18ecx2f[_0x6a29[63]];if(!_0x18ecx28[_0x6a29[58]][_0x6a29[65]](_0x6a29[64])){_0x18ecx1b[_0x6a29[35]]= qs[_0x6a29[35]](_0x18ecx28[_0x6a29[58]][_0x6a29[35]]);_0x18ecx1b[_0x6a29[34]]= qs[_0x6a29[34]](_0x18ecx28[_0x6a29[58]][_0x6a29[34]])};return _0x18ecx2d[_0x6a29[87]](_0x18ecx1b)}})[_0x6a29[45]](function(_0x18ecx2e){return _0x18ecx2e?{count:_0x18ecx1c,rows:_0x18ecx2e}:null})[_0x6a29[45]](respondWithResult(_0x18ecx18,null,_0x6a29[87]))[_0x6a29[75]](handleError(_0x18ecx18,null,_0x6a29[87]))};exports[_0x6a29[89]]= function(_0x18ecx28,_0x18ecx15,_0x18ecx2c){return db[_0x6a29[90]][_0x6a29[80]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx15,null,_0x6a29[89]))[_0x6a29[45]](function(_0x18ecx18){if(_0x18ecx18){return _0x18ecx18[_0x6a29[89]](_0x18ecx28[_0x6a29[82]][_0x6a29[84]],_[_0x6a29[85]](_0x18ecx28[_0x6a29[82]],[_0x6a29[84],_0x6a29[78]])|| {})};return null})[_0x6a29[45]](respondWithResult(_0x18ecx15,null,_0x6a29[89]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[89]))};exports[_0x6a29[91]]= function(_0x18ecx28,_0x18ecx18,_0x18ecx2c){var _0x18ecx1b={};var _0x18ecx29={};var _0x18ecx2d;var _0x18ecx1c;return db[_0x6a29[56]][_0x6a29[88]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx18,null,_0x6a29[91]))[_0x6a29[45]](function(_0x18ecx18){if(_0x18ecx18){_0x18ecx2d= _0x18ecx18;_0x18ecx29[_0x6a29[54]]= _[_0x6a29[57]](db[_0x6a29[92]][_0x6a29[55]]);_0x18ecx29[_0x6a29[58]]= _[_0x6a29[57]](_0x18ecx28[_0x6a29[58]]);_0x18ecx29[_0x6a29[59]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],_0x18ecx29[_0x6a29[58]]);_0x18ecx1b[_0x6a29[61]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],qs[_0x6a29[62]](_0x18ecx28[_0x6a29[58]][_0x6a29[62]]));_0x18ecx1b[_0x6a29[61]]= (_0x18ecx1b[_0x6a29[61]][_0x6a29[63]])?_0x18ecx1b[_0x6a29[61]]:_0x18ecx29[_0x6a29[54]];_0x18ecx1b[_0x6a29[66]]= qs[_0x6a29[67]](_0x18ecx28[_0x6a29[58]][_0x6a29[67]]);_0x18ecx1b[_0x6a29[68]]= qs[_0x6a29[59]](_[_0x6a29[69]](_0x18ecx28[_0x6a29[58]],_0x18ecx29[_0x6a29[59]]));if(_0x18ecx28[_0x6a29[58]][_0x6a29[70]]){_0x18ecx1b[_0x6a29[68]]= _[_0x6a29[73]](_0x18ecx1b[_0x6a29[68]],{$or:_[_0x6a29[72]](_0x18ecx1b[_0x6a29[61]],function(_0x18ecx2a){var _0x18ecx2b={};_0x18ecx2b[_0x18ecx2a]= {$like:_0x6a29[71]+ _0x18ecx28[_0x6a29[58]][_0x6a29[70]]+ _0x6a29[71]};return _0x18ecx2b})})};_0x18ecx1b= _[_0x6a29[73]]({},_0x18ecx1b,_0x18ecx28[_0x6a29[74]]);return _0x18ecx2d[_0x6a29[91]](_0x18ecx1b)}})[_0x6a29[45]](function(_0x18ecx2f){if(_0x18ecx2f){_0x18ecx1c= _0x18ecx2f[_0x6a29[63]];if(!_0x18ecx28[_0x6a29[58]][_0x6a29[65]](_0x6a29[64])){_0x18ecx1b[_0x6a29[35]]= qs[_0x6a29[35]](_0x18ecx28[_0x6a29[58]][_0x6a29[35]]);_0x18ecx1b[_0x6a29[34]]= qs[_0x6a29[34]](_0x18ecx28[_0x6a29[58]][_0x6a29[34]])};return _0x18ecx2d[_0x6a29[91]](_0x18ecx1b)}})[_0x6a29[45]](function(_0x18ecx2e){return _0x18ecx2e?{count:_0x18ecx1c,rows:_0x18ecx2e}:null})[_0x6a29[45]](respondWithResult(_0x18ecx18,null,_0x6a29[91]))[_0x6a29[75]](handleError(_0x18ecx18,null,_0x6a29[91]))};exports[_0x6a29[93]]= function(_0x18ecx28,_0x18ecx15,_0x18ecx2c){if(_0x18ecx28[_0x6a29[82]][_0x6a29[78]]){delete _0x18ecx28[_0x6a29[82]][_0x6a29[78]]};return db[_0x6a29[56]][_0x6a29[80]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx15,null,_0x6a29[93]))[_0x6a29[45]](function(_0x18ecx18){if(_0x18ecx18){_0x18ecx28[_0x6a29[82]][_0x6a29[94]]= _0x18ecx18[_0x6a29[78]];return db[_0x6a29[95]][_0x6a29[81]](_0x18ecx28[_0x6a29[82]])}})[_0x6a29[45]](respondWithResult(_0x18ecx15,null,_0x6a29[93]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[93]))};exports[_0x6a29[96]]= function(_0x18ecx28,_0x18ecx15,_0x18ecx2c){return db[_0x6a29[97]][_0x6a29[80]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx15,null,_0x6a29[96]))[_0x6a29[45]](function(_0x18ecx18){if(_0x18ecx18){return _0x18ecx18[_0x6a29[96]](_0x18ecx28[_0x6a29[82]][_0x6a29[84]],_[_0x6a29[85]](_0x18ecx28[_0x6a29[82]],[_0x6a29[84],_0x6a29[78]])|| {})};return null})[_0x6a29[45]](respondWithResult(_0x18ecx15,null,_0x6a29[96]))[_0x6a29[75]](handleError(_0x18ecx15,null,_0x6a29[96]))};exports[_0x6a29[98]]= function(_0x18ecx28,_0x18ecx18,_0x18ecx2c){var _0x18ecx1b={};var _0x18ecx29={};var _0x18ecx2d;var _0x18ecx1c;return db[_0x6a29[56]][_0x6a29[88]]({where:{id:_0x18ecx28[_0x6a29[79]][_0x6a29[78]]}})[_0x6a29[45]](handleEntityNotFound(_0x18ecx18,null,_0x6a29[98]))[_0x6a29[45]](function(_0x18ecx18){if(_0x18ecx18){_0x18ecx2d= _0x18ecx18;_0x18ecx29[_0x6a29[54]]= _[_0x6a29[57]](db[_0x6a29[95]][_0x6a29[55]]);_0x18ecx29[_0x6a29[58]]= _[_0x6a29[57]](_0x18ecx28[_0x6a29[58]]);_0x18ecx29[_0x6a29[59]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],_0x18ecx29[_0x6a29[58]]);_0x18ecx1b[_0x6a29[61]]= _[_0x6a29[60]](_0x18ecx29[_0x6a29[54]],qs[_0x6a29[62]](_0x18ecx28[_0x6a29[58]][_0x6a29[62]]));_0x18ecx1b[_0x6a29[61]]= (_0x18ecx1b[_0x6a29[61]][_0x6a29[63]])?_0x18ecx1b[_0x6a29[61]]:_0x18ecx29[_0x6a29[54]];_0x18ecx1b[_0x6a29[66]]= qs[_0x6a29[67]](_0x18ecx28[_0x6a29[58]][_0x6a29[67]]);_0x18ecx1b[_0x6a29[68]]= qs[_0x6a29[59]](_[_0x6a29[69]](_0x18ecx28[_0x6a29[58]],_0x18ecx29[_0x6a29[59]]));if(_0x18ecx28[_0x6a29[58]][_0x6a29[70]]){_0x18ecx1b[_0x6a29[68]]= _[_0x6a29[73]](_0x18ecx1b[_0x6a29[68]],{$or:_[_0x6a29[72]](_0x18ecx1b[_0x6a29[61]],function(_0x18ecx2a){var _0x18ecx2b={};_0x18ecx2b[_0x18ecx2a]= {$like:_0x6a29[71]+ _0x18ecx28[_0x6a29[58]][_0x6a29[70]]+ _0x6a29[71]};return _0x18ecx2b})})};_0x18ecx1b= _[_0x6a29[73]]({},_0x18ecx1b,_0x18ecx28[_0x6a29[74]]);return _0x18ecx2d[_0x6a29[98]](_0x18ecx1b)}})[_0x6a29[45]](function(_0x18ecx2f){if(_0x18ecx2f){_0x18ecx1c= _0x18ecx2f[_0x6a29[63]];if(!_0x18ecx28[_0x6a29[58]][_0x6a29[65]](_0x6a29[64])){_0x18ecx1b[_0x6a29[35]]= qs[_0x6a29[35]](_0x18ecx28[_0x6a29[58]][_0x6a29[35]]);_0x18ecx1b[_0x6a29[34]]= qs[_0x6a29[34]](_0x18ecx28[_0x6a29[58]][_0x6a29[34]])};return _0x18ecx2d[_0x6a29[98]](_0x18ecx1b)}})[_0x6a29[45]](function(_0x18ecx2e){return _0x18ecx2e?{count:_0x18ecx1c,rows:_0x18ecx2e}:null})[_0x6a29[45]](respondWithResult(_0x18ecx18,null,_0x6a29[98]))[_0x6a29[75]](handleError(_0x18ecx18,null,_0x6a29[98]))}
\ No newline at end of file
+var _0x7f3f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73"];_0x7f3f[0];var jsonpatch=require(_0x7f3f[1]);var rp=require(_0x7f3f[2]);var moment=require(_0x7f3f[3]);var BPromise=require(_0x7f3f[4]);var util=require(_0x7f3f[5]);var path=require(_0x7f3f[6]);var sox=require(_0x7f3f[7]);var ejs=require(_0x7f3f[8]);var fs=require(_0x7f3f[9]);var _=require(_0x7f3f[10]);var squel=require(_0x7f3f[11]);var crypto=require(_0x7f3f[12]);var jsforce=require(_0x7f3f[13]);var toCsv=require(_0x7f3f[14]);var qs=require(_0x7f3f[15]);var logger=require(_0x7f3f[17])(_0x7f3f[16]);var utils=require(_0x7f3f[18]);var config=require(_0x7f3f[19]);var db=require(_0x7f3f[21])[_0x7f3f[20]];function respondWithStatusCode(_0x6ec4x15,_0x6ec4x16,_0x6ec4x17){_0x6ec4x16= _0x6ec4x16|| 204;return function(_0x6ec4x18){if(_0x6ec4x18){logger[_0x7f3f[24]](_0x7f3f[22],_0x6ec4x17,_0x6ec4x16,_0x7f3f[23]);logger[_0x7f3f[26]](_0x7f3f[25],_0x6ec4x17,_0x6ec4x16,_0x7f3f[23]);return _0x6ec4x15[_0x7f3f[27]](_0x6ec4x16)};return _0x6ec4x15[_0x7f3f[29]](304)[_0x7f3f[28]]()}}function respondWithResult(_0x6ec4x15,_0x6ec4x16,_0x6ec4x17){_0x6ec4x16= _0x6ec4x16|| 200;return function(_0x6ec4x18){if(_0x6ec4x18){logger[_0x7f3f[24]](_0x7f3f[22],_0x6ec4x17,_0x6ec4x16,_0x7f3f[30]);logger[_0x7f3f[26]](_0x7f3f[25],_0x6ec4x17,_0x6ec4x16,_0x7f3f[30],JSON[_0x7f3f[31]](_0x6ec4x18));return _0x6ec4x15[_0x7f3f[29]](_0x6ec4x16)[_0x7f3f[32]](_0x6ec4x18)};return _0x6ec4x15[_0x7f3f[29]](304)[_0x7f3f[28]]()}}function respondWithFilteredResult(_0x6ec4x15,_0x6ec4x1b,_0x6ec4x17){return function(_0x6ec4x18){if(_0x6ec4x18){var _0x6ec4x1c=_0x6ec4x18[_0x7f3f[33]],_0x6ec4x1d=_0x6ec4x1b[_0x7f3f[34]],_0x6ec4x1e=_0x6ec4x1b[_0x7f3f[34]]+ _0x6ec4x1b[_0x7f3f[35]],_0x6ec4x16;if(_0x6ec4x1e>= _0x6ec4x1c){_0x6ec4x1e= _0x6ec4x1c;_0x6ec4x16= 200}else {_0x6ec4x16= 206};_0x6ec4x15[_0x7f3f[29]](_0x6ec4x16);logger[_0x7f3f[24]](_0x7f3f[22],_0x6ec4x17,_0x6ec4x16,_0x7f3f[36]);logger[_0x7f3f[26]](_0x7f3f[25],_0x6ec4x17,_0x6ec4x16,_0x7f3f[30],JSON[_0x7f3f[31]](_0x6ec4x18));return _0x6ec4x15[_0x7f3f[40]](_0x7f3f[37],_0x6ec4x1d+ _0x7f3f[38]+ _0x6ec4x1e+ _0x7f3f[39]+ _0x6ec4x1c)[_0x7f3f[32]](_0x6ec4x18)};return null}}function patchUpdates(_0x6ec4x20){return function(_0x6ec4x18){try{jsonpatch[_0x7f3f[41]](_0x6ec4x18,_0x6ec4x20,true)}catch(err){return BPromise[_0x7f3f[42]](err)};return _0x6ec4x18[_0x7f3f[43]]()}}function saveUpdates(_0x6ec4x22,_0x6ec4x16,_0x6ec4x17){return function(_0x6ec4x18){if(_0x6ec4x18){return _0x6ec4x18[_0x7f3f[46]](_0x6ec4x22)[_0x7f3f[45]](function(_0x6ec4x23){logger[_0x7f3f[24]](_0x7f3f[22],_0x6ec4x17,_0x6ec4x16,_0x7f3f[44]);logger[_0x7f3f[26]](_0x7f3f[25],_0x6ec4x17,_0x6ec4x16,_0x7f3f[44],JSON[_0x7f3f[31]](_0x6ec4x18));return _0x6ec4x23})};return null}}function removeEntity(_0x6ec4x15,_0x6ec4x16,_0x6ec4x17){return function(_0x6ec4x18){if(_0x6ec4x18){return _0x6ec4x18[_0x7f3f[48]]()[_0x7f3f[45]](function(){logger[_0x7f3f[24]](_0x7f3f[22],_0x6ec4x17,_0x6ec4x16,_0x7f3f[47]);logger[_0x7f3f[26]](_0x7f3f[25],_0x6ec4x17,_0x6ec4x16,_0x7f3f[47],JSON[_0x7f3f[31]](_0x6ec4x18));_0x6ec4x15[_0x7f3f[29]](204)[_0x7f3f[28]]()})}}}function handleEntityNotFound(_0x6ec4x15,_0x6ec4x16,_0x6ec4x17){return function(_0x6ec4x18){if(!_0x6ec4x18){logger[_0x7f3f[50]](_0x7f3f[22],_0x6ec4x17,404,_0x7f3f[49]);_0x6ec4x15[_0x7f3f[29]](404)[_0x7f3f[28]]();return null};return _0x6ec4x18}}function handleError(_0x6ec4x15,_0x6ec4x16,_0x6ec4x17){_0x6ec4x16= _0x6ec4x16|| 500;return function(_0x6ec4x27){logger[_0x7f3f[50]](_0x7f3f[22],_0x6ec4x17,_0x6ec4x16,JSON[_0x7f3f[31]](_0x6ec4x27));delete _0x6ec4x27[_0x7f3f[51]];_0x6ec4x15[_0x7f3f[29]](_0x6ec4x16)[_0x7f3f[52]](_0x6ec4x27)}}exports[_0x7f3f[53]]= function(_0x6ec4x28,_0x6ec4x15){var _0x6ec4x1b={},_0x6ec4x29={};_0x6ec4x29[_0x7f3f[54]]= _[_0x7f3f[57]](db[_0x7f3f[56]][_0x7f3f[55]]);_0x6ec4x29[_0x7f3f[58]]= _[_0x7f3f[57]](_0x6ec4x28[_0x7f3f[58]]);_0x6ec4x29[_0x7f3f[59]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],_0x6ec4x29[_0x7f3f[58]]);_0x6ec4x1b[_0x7f3f[61]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],qs[_0x7f3f[62]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[62]]));_0x6ec4x1b[_0x7f3f[61]]= (_0x6ec4x1b[_0x7f3f[61]][_0x7f3f[63]])?_0x6ec4x1b[_0x7f3f[61]]:_0x6ec4x29[_0x7f3f[54]];if(!_0x6ec4x28[_0x7f3f[58]][_0x7f3f[65]](_0x7f3f[64])){_0x6ec4x1b[_0x7f3f[35]]= qs[_0x7f3f[35]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[35]]);_0x6ec4x1b[_0x7f3f[34]]= qs[_0x7f3f[34]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[34]])};_0x6ec4x1b[_0x7f3f[66]]= qs[_0x7f3f[67]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[67]]);_0x6ec4x1b[_0x7f3f[68]]= qs[_0x7f3f[59]](_[_0x7f3f[69]](_0x6ec4x28[_0x7f3f[58]],_0x6ec4x29[_0x7f3f[59]]));if(_0x6ec4x28[_0x7f3f[58]][_0x7f3f[70]]){_0x6ec4x1b[_0x7f3f[68]]= _[_0x7f3f[73]](_0x6ec4x1b[_0x7f3f[68]],{$or:_[_0x7f3f[72]](_0x6ec4x1b[_0x7f3f[61]],function(_0x6ec4x2a){var _0x6ec4x2b={};_0x6ec4x2b[_0x6ec4x2a]= {$like:_0x7f3f[71]+ _0x6ec4x28[_0x7f3f[58]][_0x7f3f[70]]+ _0x7f3f[71]};return _0x6ec4x2b})})};_0x6ec4x1b= _[_0x7f3f[73]]({},_0x6ec4x1b,_0x6ec4x28[_0x7f3f[74]]);return db[_0x7f3f[56]][_0x7f3f[76]](_0x6ec4x1b)[_0x7f3f[45]](respondWithFilteredResult(_0x6ec4x15,_0x6ec4x1b,_0x7f3f[53]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[53]))};exports[_0x7f3f[77]]= function(_0x6ec4x28,_0x6ec4x15){var _0x6ec4x1b={raw:false,where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}},_0x6ec4x29={};_0x6ec4x29[_0x7f3f[54]]= _[_0x7f3f[57]](db[_0x7f3f[56]][_0x7f3f[55]]);_0x6ec4x29[_0x7f3f[58]]= _[_0x7f3f[57]](_0x6ec4x28[_0x7f3f[58]]);_0x6ec4x29[_0x7f3f[59]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],_0x6ec4x29[_0x7f3f[58]]);_0x6ec4x1b[_0x7f3f[61]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],qs[_0x7f3f[62]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[62]]));_0x6ec4x1b[_0x7f3f[61]]= (_0x6ec4x1b[_0x7f3f[61]][_0x7f3f[63]])?_0x6ec4x1b[_0x7f3f[61]]:_0x6ec4x29[_0x7f3f[54]];_0x6ec4x1b= _[_0x7f3f[73]]({},_0x6ec4x1b,_0x6ec4x28[_0x7f3f[74]]);return db[_0x7f3f[56]][_0x7f3f[80]](_0x6ec4x1b)[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x15,null,_0x7f3f[77]))[_0x7f3f[45]](respondWithResult(_0x6ec4x15,null,_0x7f3f[77]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[77]))};exports[_0x7f3f[81]]= function(_0x6ec4x28,_0x6ec4x15){return db[_0x7f3f[56]][_0x7f3f[81]](_0x6ec4x28[_0x7f3f[82]],{})[_0x7f3f[45]](respondWithResult(_0x6ec4x15,201,_0x7f3f[81]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[81]))};exports[_0x7f3f[46]]= function(_0x6ec4x28,_0x6ec4x15){if(_0x6ec4x28[_0x7f3f[82]][_0x7f3f[78]]){delete _0x6ec4x28[_0x7f3f[82]][_0x7f3f[78]]};return db[_0x7f3f[56]][_0x7f3f[80]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x15,null,_0x7f3f[46]))[_0x7f3f[45]](saveUpdates(_0x6ec4x28[_0x7f3f[82]],null,_0x7f3f[46]))[_0x7f3f[45]](respondWithResult(_0x6ec4x15,null,_0x7f3f[46]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[46]))};exports[_0x7f3f[48]]= function(_0x6ec4x28,_0x6ec4x15){return db[_0x7f3f[56]][_0x7f3f[80]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x15,null,_0x7f3f[48]))[_0x7f3f[45]](removeEntity(_0x6ec4x15,null,_0x7f3f[48]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[48]))};exports[_0x7f3f[83]]= function(_0x6ec4x28,_0x6ec4x15,_0x6ec4x2c){return db[_0x7f3f[86]][_0x7f3f[80]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x15,null,_0x7f3f[83]))[_0x7f3f[45]](function(_0x6ec4x18){if(_0x6ec4x18){return _0x6ec4x18[_0x7f3f[83]](_0x6ec4x28[_0x7f3f[82]][_0x7f3f[84]],_[_0x7f3f[85]](_0x6ec4x28[_0x7f3f[82]],[_0x7f3f[84],_0x7f3f[78]])|| {})};return null})[_0x7f3f[45]](respondWithResult(_0x6ec4x15,null,_0x7f3f[83]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[83]))};exports[_0x7f3f[87]]= function(_0x6ec4x28,_0x6ec4x18,_0x6ec4x2c){var _0x6ec4x1b={};var _0x6ec4x29={};var _0x6ec4x2d;var _0x6ec4x1c;return db[_0x7f3f[56]][_0x7f3f[88]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x18,null,_0x7f3f[87]))[_0x7f3f[45]](function(_0x6ec4x18){if(_0x6ec4x18){_0x6ec4x2d= _0x6ec4x18;_0x6ec4x29[_0x7f3f[54]]= _[_0x7f3f[57]](db[_0x7f3f[86]][_0x7f3f[55]]);_0x6ec4x29[_0x7f3f[58]]= _[_0x7f3f[57]](_0x6ec4x28[_0x7f3f[58]]);_0x6ec4x29[_0x7f3f[59]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],_0x6ec4x29[_0x7f3f[58]]);_0x6ec4x1b[_0x7f3f[61]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],qs[_0x7f3f[62]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[62]]));_0x6ec4x1b[_0x7f3f[61]]= (_0x6ec4x1b[_0x7f3f[61]][_0x7f3f[63]])?_0x6ec4x1b[_0x7f3f[61]]:_0x6ec4x29[_0x7f3f[54]];_0x6ec4x1b[_0x7f3f[66]]= qs[_0x7f3f[67]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[67]]);_0x6ec4x1b[_0x7f3f[68]]= qs[_0x7f3f[59]](_[_0x7f3f[69]](_0x6ec4x28[_0x7f3f[58]],_0x6ec4x29[_0x7f3f[59]]));if(_0x6ec4x28[_0x7f3f[58]][_0x7f3f[70]]){_0x6ec4x1b[_0x7f3f[68]]= _[_0x7f3f[73]](_0x6ec4x1b[_0x7f3f[68]],{$or:_[_0x7f3f[72]](_0x6ec4x1b[_0x7f3f[61]],function(_0x6ec4x2a){var _0x6ec4x2b={};_0x6ec4x2b[_0x6ec4x2a]= {$like:_0x7f3f[71]+ _0x6ec4x28[_0x7f3f[58]][_0x7f3f[70]]+ _0x7f3f[71]};return _0x6ec4x2b})})};_0x6ec4x1b= _[_0x7f3f[73]]({},_0x6ec4x1b,_0x6ec4x28[_0x7f3f[74]]);return _0x6ec4x2d[_0x7f3f[87]](_0x6ec4x1b)}})[_0x7f3f[45]](function(_0x6ec4x2f){if(_0x6ec4x2f){_0x6ec4x1c= _0x6ec4x2f[_0x7f3f[63]];if(!_0x6ec4x28[_0x7f3f[58]][_0x7f3f[65]](_0x7f3f[64])){_0x6ec4x1b[_0x7f3f[35]]= qs[_0x7f3f[35]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[35]]);_0x6ec4x1b[_0x7f3f[34]]= qs[_0x7f3f[34]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[34]])};return _0x6ec4x2d[_0x7f3f[87]](_0x6ec4x1b)}})[_0x7f3f[45]](function(_0x6ec4x2e){return _0x6ec4x2e?{count:_0x6ec4x1c,rows:_0x6ec4x2e}:null})[_0x7f3f[45]](respondWithResult(_0x6ec4x18,null,_0x7f3f[87]))[_0x7f3f[75]](handleError(_0x6ec4x18,null,_0x7f3f[87]))};exports[_0x7f3f[89]]= function(_0x6ec4x28,_0x6ec4x15,_0x6ec4x2c){return db[_0x7f3f[90]][_0x7f3f[80]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x15,null,_0x7f3f[89]))[_0x7f3f[45]](function(_0x6ec4x18){if(_0x6ec4x18){return _0x6ec4x18[_0x7f3f[89]](_0x6ec4x28[_0x7f3f[82]][_0x7f3f[84]],_[_0x7f3f[85]](_0x6ec4x28[_0x7f3f[82]],[_0x7f3f[84],_0x7f3f[78]])|| {})};return null})[_0x7f3f[45]](respondWithResult(_0x6ec4x15,null,_0x7f3f[89]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[89]))};exports[_0x7f3f[91]]= function(_0x6ec4x28,_0x6ec4x18,_0x6ec4x2c){var _0x6ec4x1b={};var _0x6ec4x29={};var _0x6ec4x2d;var _0x6ec4x1c;return db[_0x7f3f[56]][_0x7f3f[88]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x18,null,_0x7f3f[91]))[_0x7f3f[45]](function(_0x6ec4x18){if(_0x6ec4x18){_0x6ec4x2d= _0x6ec4x18;_0x6ec4x29[_0x7f3f[54]]= _[_0x7f3f[57]](db[_0x7f3f[92]][_0x7f3f[55]]);_0x6ec4x29[_0x7f3f[58]]= _[_0x7f3f[57]](_0x6ec4x28[_0x7f3f[58]]);_0x6ec4x29[_0x7f3f[59]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],_0x6ec4x29[_0x7f3f[58]]);_0x6ec4x1b[_0x7f3f[61]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],qs[_0x7f3f[62]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[62]]));_0x6ec4x1b[_0x7f3f[61]]= (_0x6ec4x1b[_0x7f3f[61]][_0x7f3f[63]])?_0x6ec4x1b[_0x7f3f[61]]:_0x6ec4x29[_0x7f3f[54]];_0x6ec4x1b[_0x7f3f[66]]= qs[_0x7f3f[67]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[67]]);_0x6ec4x1b[_0x7f3f[68]]= qs[_0x7f3f[59]](_[_0x7f3f[69]](_0x6ec4x28[_0x7f3f[58]],_0x6ec4x29[_0x7f3f[59]]));if(_0x6ec4x28[_0x7f3f[58]][_0x7f3f[70]]){_0x6ec4x1b[_0x7f3f[68]]= _[_0x7f3f[73]](_0x6ec4x1b[_0x7f3f[68]],{$or:_[_0x7f3f[72]](_0x6ec4x1b[_0x7f3f[61]],function(_0x6ec4x2a){var _0x6ec4x2b={};_0x6ec4x2b[_0x6ec4x2a]= {$like:_0x7f3f[71]+ _0x6ec4x28[_0x7f3f[58]][_0x7f3f[70]]+ _0x7f3f[71]};return _0x6ec4x2b})})};_0x6ec4x1b= _[_0x7f3f[73]]({},_0x6ec4x1b,_0x6ec4x28[_0x7f3f[74]]);return _0x6ec4x2d[_0x7f3f[91]](_0x6ec4x1b)}})[_0x7f3f[45]](function(_0x6ec4x2f){if(_0x6ec4x2f){_0x6ec4x1c= _0x6ec4x2f[_0x7f3f[63]];if(!_0x6ec4x28[_0x7f3f[58]][_0x7f3f[65]](_0x7f3f[64])){_0x6ec4x1b[_0x7f3f[35]]= qs[_0x7f3f[35]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[35]]);_0x6ec4x1b[_0x7f3f[34]]= qs[_0x7f3f[34]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[34]])};return _0x6ec4x2d[_0x7f3f[91]](_0x6ec4x1b)}})[_0x7f3f[45]](function(_0x6ec4x2e){return _0x6ec4x2e?{count:_0x6ec4x1c,rows:_0x6ec4x2e}:null})[_0x7f3f[45]](respondWithResult(_0x6ec4x18,null,_0x7f3f[91]))[_0x7f3f[75]](handleError(_0x6ec4x18,null,_0x7f3f[91]))};exports[_0x7f3f[93]]= function(_0x6ec4x28,_0x6ec4x15,_0x6ec4x2c){if(_0x6ec4x28[_0x7f3f[82]][_0x7f3f[78]]){delete _0x6ec4x28[_0x7f3f[82]][_0x7f3f[78]]};return db[_0x7f3f[56]][_0x7f3f[80]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x15,null,_0x7f3f[93]))[_0x7f3f[45]](function(_0x6ec4x18){if(_0x6ec4x18){_0x6ec4x28[_0x7f3f[82]][_0x7f3f[94]]= _0x6ec4x18[_0x7f3f[78]];return db[_0x7f3f[95]][_0x7f3f[81]](_0x6ec4x28[_0x7f3f[82]])}})[_0x7f3f[45]](respondWithResult(_0x6ec4x15,null,_0x7f3f[93]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[93]))};exports[_0x7f3f[96]]= function(_0x6ec4x28,_0x6ec4x15,_0x6ec4x2c){return db[_0x7f3f[97]][_0x7f3f[80]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x15,null,_0x7f3f[96]))[_0x7f3f[45]](function(_0x6ec4x18){if(_0x6ec4x18){return _0x6ec4x18[_0x7f3f[96]](_0x6ec4x28[_0x7f3f[82]][_0x7f3f[84]],_[_0x7f3f[85]](_0x6ec4x28[_0x7f3f[82]],[_0x7f3f[84],_0x7f3f[78]])|| {})};return null})[_0x7f3f[45]](respondWithResult(_0x6ec4x15,null,_0x7f3f[96]))[_0x7f3f[75]](handleError(_0x6ec4x15,null,_0x7f3f[96]))};exports[_0x7f3f[98]]= function(_0x6ec4x28,_0x6ec4x18,_0x6ec4x2c){var _0x6ec4x1b={};var _0x6ec4x29={};var _0x6ec4x2d;var _0x6ec4x1c;return db[_0x7f3f[56]][_0x7f3f[88]]({where:{id:_0x6ec4x28[_0x7f3f[79]][_0x7f3f[78]]}})[_0x7f3f[45]](handleEntityNotFound(_0x6ec4x18,null,_0x7f3f[98]))[_0x7f3f[45]](function(_0x6ec4x18){if(_0x6ec4x18){_0x6ec4x2d= _0x6ec4x18;_0x6ec4x29[_0x7f3f[54]]= _[_0x7f3f[57]](db[_0x7f3f[95]][_0x7f3f[55]]);_0x6ec4x29[_0x7f3f[58]]= _[_0x7f3f[57]](_0x6ec4x28[_0x7f3f[58]]);_0x6ec4x29[_0x7f3f[59]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],_0x6ec4x29[_0x7f3f[58]]);_0x6ec4x1b[_0x7f3f[61]]= _[_0x7f3f[60]](_0x6ec4x29[_0x7f3f[54]],qs[_0x7f3f[62]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[62]]));_0x6ec4x1b[_0x7f3f[61]]= (_0x6ec4x1b[_0x7f3f[61]][_0x7f3f[63]])?_0x6ec4x1b[_0x7f3f[61]]:_0x6ec4x29[_0x7f3f[54]];_0x6ec4x1b[_0x7f3f[66]]= qs[_0x7f3f[67]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[67]]);_0x6ec4x1b[_0x7f3f[68]]= qs[_0x7f3f[59]](_[_0x7f3f[69]](_0x6ec4x28[_0x7f3f[58]],_0x6ec4x29[_0x7f3f[59]]));if(_0x6ec4x28[_0x7f3f[58]][_0x7f3f[70]]){_0x6ec4x1b[_0x7f3f[68]]= _[_0x7f3f[73]](_0x6ec4x1b[_0x7f3f[68]],{$or:_[_0x7f3f[72]](_0x6ec4x1b[_0x7f3f[61]],function(_0x6ec4x2a){var _0x6ec4x2b={};_0x6ec4x2b[_0x6ec4x2a]= {$like:_0x7f3f[71]+ _0x6ec4x28[_0x7f3f[58]][_0x7f3f[70]]+ _0x7f3f[71]};return _0x6ec4x2b})})};_0x6ec4x1b= _[_0x7f3f[73]]({},_0x6ec4x1b,_0x6ec4x28[_0x7f3f[74]]);return _0x6ec4x2d[_0x7f3f[98]](_0x6ec4x1b)}})[_0x7f3f[45]](function(_0x6ec4x2f){if(_0x6ec4x2f){_0x6ec4x1c= _0x6ec4x2f[_0x7f3f[63]];if(!_0x6ec4x28[_0x7f3f[58]][_0x7f3f[65]](_0x7f3f[64])){_0x6ec4x1b[_0x7f3f[35]]= qs[_0x7f3f[35]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[35]]);_0x6ec4x1b[_0x7f3f[34]]= qs[_0x7f3f[34]](_0x6ec4x28[_0x7f3f[58]][_0x7f3f[34]])};return _0x6ec4x2d[_0x7f3f[98]](_0x6ec4x1b)}})[_0x7f3f[45]](function(_0x6ec4x2e){return _0x6ec4x2e?{count:_0x6ec4x1c,rows:_0x6ec4x2e}:null})[_0x7f3f[45]](respondWithResult(_0x6ec4x18,null,_0x7f3f[98]))[_0x7f3f[75]](handleError(_0x6ec4x18,null,_0x7f3f[98]))}
\ No newline at end of file
index 341520c..b6242cc 100644 (file)
@@ -1 +1 @@
-var _0x3248=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x3248[0];var _=require(_0x3248[1]);var util=require(_0x3248[2]);var logger=require(_0x3248[4])(_0x3248[3]);var attributes=require(_0x3248[5]);module[_0x3248[6]]= function(_0xadd9x5,_0xadd9x6){return _0xadd9x5[_0x3248[9]](_0x3248[7],attributes,{tableName:_0x3248[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xd5ff=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xd5ff[0];var _=require(_0xd5ff[1]);var util=require(_0xd5ff[2]);var logger=require(_0xd5ff[4])(_0xd5ff[3]);var attributes=require(_0xd5ff[5]);module[_0xd5ff[6]]= function(_0x7b97x5,_0x7b97x6){return _0x7b97x5[_0xd5ff[9]](_0xd5ff[7],attributes,{tableName:_0xd5ff[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 53bbaba..bb2af28 100644 (file)
@@ -1 +1 @@
-var _0xd03d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd03d[0];var _=require(_0xd03d[1]);var util=require(_0xd03d[2]);var moment=require(_0xd03d[3]);var BPromise=require(_0xd03d[4]);var db=require(_0xd03d[6])[_0xd03d[5]];var utils=require(_0xd03d[7]);var logger=require(_0xd03d[9])(_0xd03d[8]);var jayson=require(_0xd03d[10]);var client=jayson[_0xd03d[12]][_0xd03d[11]]({port:9002});function respondWithRpcPromise(_0xe814xb,_0xe814xc,_0xe814xd){return  new BPromise(function(_0xe814xe,_0xe814xf){return client[_0xd03d[25]](_0xe814xb,_0xe814xd)[_0xd03d[24]](function(_0xe814x11){logger[_0xd03d[17]](_0xd03d[13],_0xe814xc,_0xd03d[16]);logger[_0xd03d[20]](_0xd03d[18],_0xe814xc,_0xd03d[16],JSON[_0xd03d[19]](_0xe814x11));if(_0xe814x11[_0xd03d[14]]){if(_0xe814x11[_0xd03d[14]][_0xd03d[21]]=== 500){logger[_0xd03d[14]](_0xd03d[13],_0xe814xc,_0xe814x11[_0xd03d[14]][_0xd03d[22]]);return _0xe814xf(_0xe814x11[_0xd03d[14]][_0xd03d[22]])};logger[_0xd03d[14]](_0xd03d[13],_0xe814xc,_0xe814x11[_0xd03d[14]][_0xd03d[22]]);return _0xe814xe(_0xe814x11[_0xd03d[14]][_0xd03d[22]])}else {logger[_0xd03d[17]](_0xd03d[13],_0xe814xc,_0xd03d[16]);_0xe814xe(_0xe814x11[_0xd03d[23]][_0xd03d[22]])}})[_0xd03d[15]](function(_0xe814x10){logger[_0xd03d[14]](_0xd03d[13],_0xe814xc,_0xe814x10);_0xe814xf(_0xe814x10)})})}
\ No newline at end of file
+var _0x3e92=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x3e92[0];var _=require(_0x3e92[1]);var util=require(_0x3e92[2]);var moment=require(_0x3e92[3]);var BPromise=require(_0x3e92[4]);var db=require(_0x3e92[6])[_0x3e92[5]];var utils=require(_0x3e92[7]);var logger=require(_0x3e92[9])(_0x3e92[8]);var jayson=require(_0x3e92[10]);var client=jayson[_0x3e92[12]][_0x3e92[11]]({port:9002});function respondWithRpcPromise(_0xcfaexb,_0xcfaexc,_0xcfaexd){return  new BPromise(function(_0xcfaexe,_0xcfaexf){return client[_0x3e92[25]](_0xcfaexb,_0xcfaexd)[_0x3e92[24]](function(_0xcfaex11){logger[_0x3e92[17]](_0x3e92[13],_0xcfaexc,_0x3e92[16]);logger[_0x3e92[20]](_0x3e92[18],_0xcfaexc,_0x3e92[16],JSON[_0x3e92[19]](_0xcfaex11));if(_0xcfaex11[_0x3e92[14]]){if(_0xcfaex11[_0x3e92[14]][_0x3e92[21]]=== 500){logger[_0x3e92[14]](_0x3e92[13],_0xcfaexc,_0xcfaex11[_0x3e92[14]][_0x3e92[22]]);return _0xcfaexf(_0xcfaex11[_0x3e92[14]][_0x3e92[22]])};logger[_0x3e92[14]](_0x3e92[13],_0xcfaexc,_0xcfaex11[_0x3e92[14]][_0x3e92[22]]);return _0xcfaexe(_0xcfaex11[_0x3e92[14]][_0x3e92[22]])}else {logger[_0x3e92[17]](_0x3e92[13],_0xcfaexc,_0x3e92[16]);_0xcfaexe(_0xcfaex11[_0x3e92[23]][_0x3e92[22]])}})[_0x3e92[15]](function(_0xcfaex10){logger[_0x3e92[14]](_0x3e92[13],_0xcfaexc,_0xcfaex10);_0xcfaexf(_0xcfaex10)})})}
\ No newline at end of file
index d7acb1d..002a404 100644 (file)
@@ -1 +1 @@
-var _0xc21d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xc21d[0];var multer=require(_0xc21d[1]);var util=require(_0xc21d[2]);var path=require(_0xc21d[3]);var express=require(_0xc21d[4]);var router=express.Router();var auth=require(_0xc21d[5]);var config=require(_0xc21d[6]);var controller=require(_0xc21d[7]);router[_0xc21d[11]](_0xc21d[8],auth[_0xc21d[9]](),controller[_0xc21d[10]]);router[_0xc21d[13]](_0xc21d[8],auth[_0xc21d[9]](),controller[_0xc21d[12]]);router[_0xc21d[15]](_0xc21d[8],auth[_0xc21d[9]](),controller[_0xc21d[14]]);module[_0xc21d[16]]= router
\ No newline at end of file
+var _0x801e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x801e[0];var multer=require(_0x801e[1]);var util=require(_0x801e[2]);var path=require(_0x801e[3]);var express=require(_0x801e[4]);var router=express.Router();var auth=require(_0x801e[5]);var config=require(_0x801e[6]);var controller=require(_0x801e[7]);router[_0x801e[11]](_0x801e[8],auth[_0x801e[9]](),controller[_0x801e[10]]);router[_0x801e[13]](_0x801e[8],auth[_0x801e[9]](),controller[_0x801e[12]]);router[_0x801e[15]](_0x801e[8],auth[_0x801e[9]](),controller[_0x801e[14]]);module[_0x801e[16]]= router
\ No newline at end of file
index 385c5ad..b88668b 100644 (file)
@@ -1 +1 @@
-var _0x154c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64\x53\x6D\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0x154c[0];var Sequelize=require(_0x154c[1]);module[_0x154c[2]]= {app:{type:Sequelize.ENUM(_0x154c[3],_0x154c[4],_0x154c[5],_0x154c[6])},priority:{type:Sequelize[_0x154c[7]]},timeout:{type:Sequelize[_0x154c[7]],validate:{min:1}},interval:{type:Sequelize[_0x154c[8]]},data1:{type:Sequelize[_0x154c[8]]},data2:{type:Sequelize[_0x154c[8]]},data3:{type:Sequelize[_0x154c[8]]},data4:{type:Sequelize[_0x154c[8]]},data5:{type:Sequelize[_0x154c[8]]},data6:{type:Sequelize[_0x154c[8]]},data7:{type:Sequelize[_0x154c[9]]},data8:{type:Sequelize[_0x154c[7]]},data9:{type:Sequelize[_0x154c[7]]},data10:{type:Sequelize[_0x154c[7]]}}
\ No newline at end of file
+var _0xf0ef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64\x53\x6D\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0xf0ef[0];var Sequelize=require(_0xf0ef[1]);module[_0xf0ef[2]]= {app:{type:Sequelize.ENUM(_0xf0ef[3],_0xf0ef[4],_0xf0ef[5],_0xf0ef[6])},priority:{type:Sequelize[_0xf0ef[7]]},timeout:{type:Sequelize[_0xf0ef[7]],validate:{min:1}},interval:{type:Sequelize[_0xf0ef[8]]},data1:{type:Sequelize[_0xf0ef[8]]},data2:{type:Sequelize[_0xf0ef[8]]},data3:{type:Sequelize[_0xf0ef[8]]},data4:{type:Sequelize[_0xf0ef[8]]},data5:{type:Sequelize[_0xf0ef[8]]},data6:{type:Sequelize[_0xf0ef[8]]},data7:{type:Sequelize[_0xf0ef[9]]},data8:{type:Sequelize[_0xf0ef[7]]},data9:{type:Sequelize[_0xf0ef[7]]},data10:{type:Sequelize[_0xf0ef[7]]}}
\ No newline at end of file
index 5f12310..a942f7d 100644 (file)
@@ -1 +1 @@
-var _0x6910=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x6910[0];var jsonpatch=require(_0x6910[1]);var rp=require(_0x6910[2]);var moment=require(_0x6910[3]);var BPromise=require(_0x6910[4]);var util=require(_0x6910[5]);var path=require(_0x6910[6]);var sox=require(_0x6910[7]);var ejs=require(_0x6910[8]);var fs=require(_0x6910[9]);var _=require(_0x6910[10]);var squel=require(_0x6910[11]);var crypto=require(_0x6910[12]);var jsforce=require(_0x6910[13]);var toCsv=require(_0x6910[14]);var qs=require(_0x6910[15]);var logger=require(_0x6910[17])(_0x6910[16]);var utils=require(_0x6910[18]);var config=require(_0x6910[19]);var db=require(_0x6910[21])[_0x6910[20]];function respondWithStatusCode(_0x6b9ax15,_0x6b9ax16,_0x6b9ax17){_0x6b9ax16= _0x6b9ax16|| 204;return function(_0x6b9ax18){if(_0x6b9ax18){logger[_0x6910[24]](_0x6910[22],_0x6b9ax17,_0x6b9ax16,_0x6910[23]);logger[_0x6910[26]](_0x6910[25],_0x6b9ax17,_0x6b9ax16,_0x6910[23]);return _0x6b9ax15[_0x6910[27]](_0x6b9ax16)};return _0x6b9ax15[_0x6910[29]](304)[_0x6910[28]]()}}function respondWithResult(_0x6b9ax15,_0x6b9ax16,_0x6b9ax17){_0x6b9ax16= _0x6b9ax16|| 200;return function(_0x6b9ax18){if(_0x6b9ax18){logger[_0x6910[24]](_0x6910[22],_0x6b9ax17,_0x6b9ax16,_0x6910[30]);logger[_0x6910[26]](_0x6910[25],_0x6b9ax17,_0x6b9ax16,_0x6910[30],JSON[_0x6910[31]](_0x6b9ax18));return _0x6b9ax15[_0x6910[29]](_0x6b9ax16)[_0x6910[32]](_0x6b9ax18)};return _0x6b9ax15[_0x6910[29]](304)[_0x6910[28]]()}}function respondWithFilteredResult(_0x6b9ax15,_0x6b9ax1b,_0x6b9ax17){return function(_0x6b9ax18){if(_0x6b9ax18){var _0x6b9ax1c=_0x6b9ax18[_0x6910[33]],_0x6b9ax1d=_0x6b9ax1b[_0x6910[34]],_0x6b9ax1e=_0x6b9ax1b[_0x6910[34]]+ _0x6b9ax1b[_0x6910[35]],_0x6b9ax16;if(_0x6b9ax1e>= _0x6b9ax1c){_0x6b9ax1e= _0x6b9ax1c;_0x6b9ax16= 200}else {_0x6b9ax16= 206};_0x6b9ax15[_0x6910[29]](_0x6b9ax16);logger[_0x6910[24]](_0x6910[22],_0x6b9ax17,_0x6b9ax16,_0x6910[36]);logger[_0x6910[26]](_0x6910[25],_0x6b9ax17,_0x6b9ax16,_0x6910[30],JSON[_0x6910[31]](_0x6b9ax18));return _0x6b9ax15[_0x6910[40]](_0x6910[37],_0x6b9ax1d+ _0x6910[38]+ _0x6b9ax1e+ _0x6910[39]+ _0x6b9ax1c)[_0x6910[32]](_0x6b9ax18)};return null}}function patchUpdates(_0x6b9ax20){return function(_0x6b9ax18){try{jsonpatch[_0x6910[41]](_0x6b9ax18,_0x6b9ax20,true)}catch(err){return BPromise[_0x6910[42]](err)};return _0x6b9ax18[_0x6910[43]]()}}function saveUpdates(_0x6b9ax22,_0x6b9ax16,_0x6b9ax17){return function(_0x6b9ax18){if(_0x6b9ax18){return _0x6b9ax18[_0x6910[46]](_0x6b9ax22)[_0x6910[45]](function(_0x6b9ax23){logger[_0x6910[24]](_0x6910[22],_0x6b9ax17,_0x6b9ax16,_0x6910[44]);logger[_0x6910[26]](_0x6910[25],_0x6b9ax17,_0x6b9ax16,_0x6910[44],JSON[_0x6910[31]](_0x6b9ax18));return _0x6b9ax23})};return null}}function removeEntity(_0x6b9ax15,_0x6b9ax16,_0x6b9ax17){return function(_0x6b9ax18){if(_0x6b9ax18){return _0x6b9ax18[_0x6910[48]]()[_0x6910[45]](function(){logger[_0x6910[24]](_0x6910[22],_0x6b9ax17,_0x6b9ax16,_0x6910[47]);logger[_0x6910[26]](_0x6910[25],_0x6b9ax17,_0x6b9ax16,_0x6910[47],JSON[_0x6910[31]](_0x6b9ax18));_0x6b9ax15[_0x6910[29]](204)[_0x6910[28]]()})}}}function handleEntityNotFound(_0x6b9ax15,_0x6b9ax16,_0x6b9ax17){return function(_0x6b9ax18){if(!_0x6b9ax18){logger[_0x6910[50]](_0x6910[22],_0x6b9ax17,404,_0x6910[49]);_0x6b9ax15[_0x6910[29]](404)[_0x6910[28]]();return null};return _0x6b9ax18}}function handleError(_0x6b9ax15,_0x6b9ax16,_0x6b9ax17){_0x6b9ax16= _0x6b9ax16|| 500;return function(_0x6b9ax27){logger[_0x6910[50]](_0x6910[22],_0x6b9ax17,_0x6b9ax16,JSON[_0x6910[31]](_0x6b9ax27));delete _0x6b9ax27[_0x6910[51]];_0x6b9ax15[_0x6910[29]](_0x6b9ax16)[_0x6910[52]](_0x6b9ax27)}}exports[_0x6910[53]]= function(_0x6b9ax28,_0x6b9ax15){var _0x6b9ax1b={raw:true,where:{id:_0x6b9ax28[_0x6910[55]][_0x6910[54]]}},_0x6b9ax29={};_0x6b9ax29[_0x6910[56]]= _[_0x6910[59]](db[_0x6910[58]][_0x6910[57]]);_0x6b9ax29[_0x6910[60]]= _[_0x6910[59]](_0x6b9ax28[_0x6910[60]]);_0x6b9ax29[_0x6910[61]]= _[_0x6910[62]](_0x6b9ax29[_0x6910[56]],_0x6b9ax29[_0x6910[60]]);_0x6b9ax1b[_0x6910[63]]= _[_0x6910[62]](_0x6b9ax29[_0x6910[56]],qs[_0x6910[64]](_0x6b9ax28[_0x6910[60]][_0x6910[64]]));_0x6b9ax1b[_0x6910[63]]= (_0x6b9ax1b[_0x6910[63]][_0x6910[65]])?_0x6b9ax1b[_0x6910[63]]:_0x6b9ax29[_0x6910[56]];_0x6b9ax1b= _[_0x6910[67]]({},_0x6b9ax1b,_0x6b9ax28[_0x6910[66]]);return db[_0x6910[58]][_0x6910[69]](_0x6b9ax1b)[_0x6910[45]](handleEntityNotFound(_0x6b9ax15,null,_0x6910[53]))[_0x6910[45]](respondWithResult(_0x6b9ax15,null,_0x6910[53]))[_0x6910[68]](handleError(_0x6b9ax15,null,_0x6910[53]))};exports[_0x6910[46]]= function(_0x6b9ax28,_0x6b9ax15){if(_0x6b9ax28[_0x6910[70]][_0x6910[54]]){delete _0x6b9ax28[_0x6910[70]][_0x6910[54]]};return db[_0x6910[58]][_0x6910[69]]({where:{id:_0x6b9ax28[_0x6910[55]][_0x6910[54]]}})[_0x6910[45]](handleEntityNotFound(_0x6b9ax15,null,_0x6910[46]))[_0x6910[45]](saveUpdates(_0x6b9ax28[_0x6910[70]],null,_0x6910[46]))[_0x6910[45]](respondWithResult(_0x6b9ax15,null,_0x6910[46]))[_0x6910[68]](handleError(_0x6b9ax15,null,_0x6910[46]))};exports[_0x6910[48]]= function(_0x6b9ax28,_0x6b9ax15){return db[_0x6910[58]][_0x6910[69]]({where:{id:_0x6b9ax28[_0x6910[55]][_0x6910[54]]}})[_0x6910[45]](handleEntityNotFound(_0x6b9ax15,null,_0x6910[48]))[_0x6910[45]](removeEntity(_0x6b9ax15,null,_0x6910[48]))[_0x6910[68]](handleError(_0x6b9ax15,null,_0x6910[48]))}
\ No newline at end of file
+var _0xc052=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0xc052[0];var jsonpatch=require(_0xc052[1]);var rp=require(_0xc052[2]);var moment=require(_0xc052[3]);var BPromise=require(_0xc052[4]);var util=require(_0xc052[5]);var path=require(_0xc052[6]);var sox=require(_0xc052[7]);var ejs=require(_0xc052[8]);var fs=require(_0xc052[9]);var _=require(_0xc052[10]);var squel=require(_0xc052[11]);var crypto=require(_0xc052[12]);var jsforce=require(_0xc052[13]);var toCsv=require(_0xc052[14]);var qs=require(_0xc052[15]);var logger=require(_0xc052[17])(_0xc052[16]);var utils=require(_0xc052[18]);var config=require(_0xc052[19]);var db=require(_0xc052[21])[_0xc052[20]];function respondWithStatusCode(_0x7813x15,_0x7813x16,_0x7813x17){_0x7813x16= _0x7813x16|| 204;return function(_0x7813x18){if(_0x7813x18){logger[_0xc052[24]](_0xc052[22],_0x7813x17,_0x7813x16,_0xc052[23]);logger[_0xc052[26]](_0xc052[25],_0x7813x17,_0x7813x16,_0xc052[23]);return _0x7813x15[_0xc052[27]](_0x7813x16)};return _0x7813x15[_0xc052[29]](304)[_0xc052[28]]()}}function respondWithResult(_0x7813x15,_0x7813x16,_0x7813x17){_0x7813x16= _0x7813x16|| 200;return function(_0x7813x18){if(_0x7813x18){logger[_0xc052[24]](_0xc052[22],_0x7813x17,_0x7813x16,_0xc052[30]);logger[_0xc052[26]](_0xc052[25],_0x7813x17,_0x7813x16,_0xc052[30],JSON[_0xc052[31]](_0x7813x18));return _0x7813x15[_0xc052[29]](_0x7813x16)[_0xc052[32]](_0x7813x18)};return _0x7813x15[_0xc052[29]](304)[_0xc052[28]]()}}function respondWithFilteredResult(_0x7813x15,_0x7813x1b,_0x7813x17){return function(_0x7813x18){if(_0x7813x18){var _0x7813x1c=_0x7813x18[_0xc052[33]],_0x7813x1d=_0x7813x1b[_0xc052[34]],_0x7813x1e=_0x7813x1b[_0xc052[34]]+ _0x7813x1b[_0xc052[35]],_0x7813x16;if(_0x7813x1e>= _0x7813x1c){_0x7813x1e= _0x7813x1c;_0x7813x16= 200}else {_0x7813x16= 206};_0x7813x15[_0xc052[29]](_0x7813x16);logger[_0xc052[24]](_0xc052[22],_0x7813x17,_0x7813x16,_0xc052[36]);logger[_0xc052[26]](_0xc052[25],_0x7813x17,_0x7813x16,_0xc052[30],JSON[_0xc052[31]](_0x7813x18));return _0x7813x15[_0xc052[40]](_0xc052[37],_0x7813x1d+ _0xc052[38]+ _0x7813x1e+ _0xc052[39]+ _0x7813x1c)[_0xc052[32]](_0x7813x18)};return null}}function patchUpdates(_0x7813x20){return function(_0x7813x18){try{jsonpatch[_0xc052[41]](_0x7813x18,_0x7813x20,true)}catch(err){return BPromise[_0xc052[42]](err)};return _0x7813x18[_0xc052[43]]()}}function saveUpdates(_0x7813x22,_0x7813x16,_0x7813x17){return function(_0x7813x18){if(_0x7813x18){return _0x7813x18[_0xc052[46]](_0x7813x22)[_0xc052[45]](function(_0x7813x23){logger[_0xc052[24]](_0xc052[22],_0x7813x17,_0x7813x16,_0xc052[44]);logger[_0xc052[26]](_0xc052[25],_0x7813x17,_0x7813x16,_0xc052[44],JSON[_0xc052[31]](_0x7813x18));return _0x7813x23})};return null}}function removeEntity(_0x7813x15,_0x7813x16,_0x7813x17){return function(_0x7813x18){if(_0x7813x18){return _0x7813x18[_0xc052[48]]()[_0xc052[45]](function(){logger[_0xc052[24]](_0xc052[22],_0x7813x17,_0x7813x16,_0xc052[47]);logger[_0xc052[26]](_0xc052[25],_0x7813x17,_0x7813x16,_0xc052[47],JSON[_0xc052[31]](_0x7813x18));_0x7813x15[_0xc052[29]](204)[_0xc052[28]]()})}}}function handleEntityNotFound(_0x7813x15,_0x7813x16,_0x7813x17){return function(_0x7813x18){if(!_0x7813x18){logger[_0xc052[50]](_0xc052[22],_0x7813x17,404,_0xc052[49]);_0x7813x15[_0xc052[29]](404)[_0xc052[28]]();return null};return _0x7813x18}}function handleError(_0x7813x15,_0x7813x16,_0x7813x17){_0x7813x16= _0x7813x16|| 500;return function(_0x7813x27){logger[_0xc052[50]](_0xc052[22],_0x7813x17,_0x7813x16,JSON[_0xc052[31]](_0x7813x27));delete _0x7813x27[_0xc052[51]];_0x7813x15[_0xc052[29]](_0x7813x16)[_0xc052[52]](_0x7813x27)}}exports[_0xc052[53]]= function(_0x7813x28,_0x7813x15){var _0x7813x1b={raw:true,where:{id:_0x7813x28[_0xc052[55]][_0xc052[54]]}},_0x7813x29={};_0x7813x29[_0xc052[56]]= _[_0xc052[59]](db[_0xc052[58]][_0xc052[57]]);_0x7813x29[_0xc052[60]]= _[_0xc052[59]](_0x7813x28[_0xc052[60]]);_0x7813x29[_0xc052[61]]= _[_0xc052[62]](_0x7813x29[_0xc052[56]],_0x7813x29[_0xc052[60]]);_0x7813x1b[_0xc052[63]]= _[_0xc052[62]](_0x7813x29[_0xc052[56]],qs[_0xc052[64]](_0x7813x28[_0xc052[60]][_0xc052[64]]));_0x7813x1b[_0xc052[63]]= (_0x7813x1b[_0xc052[63]][_0xc052[65]])?_0x7813x1b[_0xc052[63]]:_0x7813x29[_0xc052[56]];_0x7813x1b= _[_0xc052[67]]({},_0x7813x1b,_0x7813x28[_0xc052[66]]);return db[_0xc052[58]][_0xc052[69]](_0x7813x1b)[_0xc052[45]](handleEntityNotFound(_0x7813x15,null,_0xc052[53]))[_0xc052[45]](respondWithResult(_0x7813x15,null,_0xc052[53]))[_0xc052[68]](handleError(_0x7813x15,null,_0xc052[53]))};exports[_0xc052[46]]= function(_0x7813x28,_0x7813x15){if(_0x7813x28[_0xc052[70]][_0xc052[54]]){delete _0x7813x28[_0xc052[70]][_0xc052[54]]};return db[_0xc052[58]][_0xc052[69]]({where:{id:_0x7813x28[_0xc052[55]][_0xc052[54]]}})[_0xc052[45]](handleEntityNotFound(_0x7813x15,null,_0xc052[46]))[_0xc052[45]](saveUpdates(_0x7813x28[_0xc052[70]],null,_0xc052[46]))[_0xc052[45]](respondWithResult(_0x7813x15,null,_0xc052[46]))[_0xc052[68]](handleError(_0x7813x15,null,_0xc052[46]))};exports[_0xc052[48]]= function(_0x7813x28,_0x7813x15){return db[_0xc052[58]][_0xc052[69]]({where:{id:_0x7813x28[_0xc052[55]][_0xc052[54]]}})[_0xc052[45]](handleEntityNotFound(_0x7813x15,null,_0xc052[48]))[_0xc052[45]](removeEntity(_0x7813x15,null,_0xc052[48]))[_0xc052[68]](handleError(_0x7813x15,null,_0xc052[48]))}
\ No newline at end of file
index 05c8865..4f04774 100644 (file)
@@ -1 +1 @@
-var _0x203c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x203c[0];var _=require(_0x203c[1]);var util=require(_0x203c[2]);var logger=require(_0x203c[4])(_0x203c[3]);var attributes=require(_0x203c[5]);module[_0x203c[6]]= function(_0xaf83x5,_0xaf83x6){return _0xaf83x5[_0x203c[9]](_0x203c[7],attributes,{tableName:_0x203c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x25d3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x25d3[0];var _=require(_0x25d3[1]);var util=require(_0x25d3[2]);var logger=require(_0x25d3[4])(_0x25d3[3]);var attributes=require(_0x25d3[5]);module[_0x25d3[6]]= function(_0xbae9x5,_0xbae9x6){return _0xbae9x5[_0x25d3[9]](_0x25d3[7],attributes,{tableName:_0x25d3[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 41f2f0c..bba4139 100644 (file)
@@ -1 +1 @@
-var _0x7956=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x55\x70\x64\x61\x74\x65\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E"];_0x7956[0];var _=require(_0x7956[1]);var util=require(_0x7956[2]);var moment=require(_0x7956[3]);var BPromise=require(_0x7956[4]);var db=require(_0x7956[6])[_0x7956[5]];var utils=require(_0x7956[7]);var logger=require(_0x7956[9])(_0x7956[8]);var jayson=require(_0x7956[10]);var client=jayson[_0x7956[12]][_0x7956[11]]({port:9002});function respondWithRpcPromise(_0xaf6exb,_0xaf6exc,_0xaf6exd){return  new BPromise(function(_0xaf6exe,_0xaf6exf){return client[_0x7956[25]](_0xaf6exb,_0xaf6exd)[_0x7956[24]](function(_0xaf6ex11){logger[_0x7956[17]](_0x7956[13],_0xaf6exc,_0x7956[16]);logger[_0x7956[20]](_0x7956[18],_0xaf6exc,_0x7956[16],JSON[_0x7956[19]](_0xaf6ex11));if(_0xaf6ex11[_0x7956[14]]){if(_0xaf6ex11[_0x7956[14]][_0x7956[21]]=== 500){logger[_0x7956[14]](_0x7956[13],_0xaf6exc,_0xaf6ex11[_0x7956[14]][_0x7956[22]]);return _0xaf6exf(_0xaf6ex11[_0x7956[14]][_0x7956[22]])};logger[_0x7956[14]](_0x7956[13],_0xaf6exc,_0xaf6ex11[_0x7956[14]][_0x7956[22]]);return _0xaf6exe(_0xaf6ex11[_0x7956[14]][_0x7956[22]])}else {logger[_0x7956[17]](_0x7956[13],_0xaf6exc,_0x7956[16]);_0xaf6exe(_0xaf6ex11[_0x7956[23]][_0x7956[22]])}})[_0x7956[15]](function(_0xaf6ex10){logger[_0x7956[14]](_0x7956[13],_0xaf6exc,_0xaf6ex10);_0xaf6exf(_0xaf6ex10)})})}exports[_0x7956[26]]= function(_0xaf6exd){var _0xaf6ex12=this;return  new Promise(function(_0xaf6exe,_0xaf6exf){return db[_0x7956[34]][_0x7956[33]](_0xaf6exd[_0x7956[27]],{raw:_0xaf6exd[_0x7956[28]]?(_0xaf6exd[_0x7956[28]][_0x7956[29]]=== undefined)?true:false:true,individualHooks:true,where:_0xaf6exd[_0x7956[28]]?_0xaf6exd[_0x7956[28]][_0x7956[30]]|| null:null,attributes:_0xaf6exd[_0x7956[28]]?_0xaf6exd[_0x7956[28]][_0x7956[31]]|| null:null,limit:_0xaf6exd[_0x7956[28]]?_0xaf6exd[_0x7956[28]][_0x7956[32]]|| null:null})[_0x7956[24]](function(_0xaf6ex11){logger[_0x7956[17]](_0x7956[26],_0xaf6exd);logger[_0x7956[20]](_0x7956[26],_0xaf6exd,JSON[_0x7956[19]](_0xaf6ex11));_0xaf6exe(_0xaf6ex11)})[_0x7956[15]](function(_0xaf6ex10){logger[_0x7956[14]](_0x7956[26],_0xaf6ex10[_0x7956[22]],_0xaf6exd);_0xaf6exf(_0xaf6ex12[_0x7956[14]](500,_0xaf6ex10[_0x7956[22]]))})})}
\ No newline at end of file
+var _0x9c3e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x55\x70\x64\x61\x74\x65\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E"];_0x9c3e[0];var _=require(_0x9c3e[1]);var util=require(_0x9c3e[2]);var moment=require(_0x9c3e[3]);var BPromise=require(_0x9c3e[4]);var db=require(_0x9c3e[6])[_0x9c3e[5]];var utils=require(_0x9c3e[7]);var logger=require(_0x9c3e[9])(_0x9c3e[8]);var jayson=require(_0x9c3e[10]);var client=jayson[_0x9c3e[12]][_0x9c3e[11]]({port:9002});function respondWithRpcPromise(_0x7923xb,_0x7923xc,_0x7923xd){return  new BPromise(function(_0x7923xe,_0x7923xf){return client[_0x9c3e[25]](_0x7923xb,_0x7923xd)[_0x9c3e[24]](function(_0x7923x11){logger[_0x9c3e[17]](_0x9c3e[13],_0x7923xc,_0x9c3e[16]);logger[_0x9c3e[20]](_0x9c3e[18],_0x7923xc,_0x9c3e[16],JSON[_0x9c3e[19]](_0x7923x11));if(_0x7923x11[_0x9c3e[14]]){if(_0x7923x11[_0x9c3e[14]][_0x9c3e[21]]=== 500){logger[_0x9c3e[14]](_0x9c3e[13],_0x7923xc,_0x7923x11[_0x9c3e[14]][_0x9c3e[22]]);return _0x7923xf(_0x7923x11[_0x9c3e[14]][_0x9c3e[22]])};logger[_0x9c3e[14]](_0x9c3e[13],_0x7923xc,_0x7923x11[_0x9c3e[14]][_0x9c3e[22]]);return _0x7923xe(_0x7923x11[_0x9c3e[14]][_0x9c3e[22]])}else {logger[_0x9c3e[17]](_0x9c3e[13],_0x7923xc,_0x9c3e[16]);_0x7923xe(_0x7923x11[_0x9c3e[23]][_0x9c3e[22]])}})[_0x9c3e[15]](function(_0x7923x10){logger[_0x9c3e[14]](_0x9c3e[13],_0x7923xc,_0x7923x10);_0x7923xf(_0x7923x10)})})}exports[_0x9c3e[26]]= function(_0x7923xd){var _0x7923x12=this;return  new Promise(function(_0x7923xe,_0x7923xf){return db[_0x9c3e[34]][_0x9c3e[33]](_0x7923xd[_0x9c3e[27]],{raw:_0x7923xd[_0x9c3e[28]]?(_0x7923xd[_0x9c3e[28]][_0x9c3e[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x7923xd[_0x9c3e[28]]?_0x7923xd[_0x9c3e[28]][_0x9c3e[30]]|| null:null,attributes:_0x7923xd[_0x9c3e[28]]?_0x7923xd[_0x9c3e[28]][_0x9c3e[31]]|| null:null,limit:_0x7923xd[_0x9c3e[28]]?_0x7923xd[_0x9c3e[28]][_0x9c3e[32]]|| null:null})[_0x9c3e[24]](function(_0x7923x11){logger[_0x9c3e[17]](_0x9c3e[26],_0x7923xd);logger[_0x9c3e[20]](_0x9c3e[26],_0x7923xd,JSON[_0x9c3e[19]](_0x7923x11));_0x7923xe(_0x7923x11)})[_0x9c3e[15]](function(_0x7923x10){logger[_0x9c3e[14]](_0x9c3e[26],_0x7923x10[_0x9c3e[22]],_0x7923xd);_0x7923xf(_0x7923x12[_0x9c3e[14]](500,_0x7923x10[_0x9c3e[22]]))})})}
\ No newline at end of file
index 65b11d9..3f39f90 100644 (file)
@@ -1 +1 @@
-var _0x5abd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5abd[0];var multer=require(_0x5abd[1]);var util=require(_0x5abd[2]);var path=require(_0x5abd[3]);var express=require(_0x5abd[4]);var router=express.Router();var auth=require(_0x5abd[5]);var config=require(_0x5abd[6]);var controller=require(_0x5abd[7]);router[_0x5abd[11]](_0x5abd[8],auth[_0x5abd[9]](),controller[_0x5abd[10]]);router[_0x5abd[14]](_0x5abd[12],auth[_0x5abd[9]](),controller[_0x5abd[13]]);router[_0x5abd[16]](_0x5abd[8],auth[_0x5abd[9]](),controller[_0x5abd[15]]);router[_0x5abd[18]](_0x5abd[8],auth[_0x5abd[9]](),controller[_0x5abd[17]]);module[_0x5abd[19]]= router
\ No newline at end of file
+var _0xe546=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe546[0];var multer=require(_0xe546[1]);var util=require(_0xe546[2]);var path=require(_0xe546[3]);var express=require(_0xe546[4]);var router=express.Router();var auth=require(_0xe546[5]);var config=require(_0xe546[6]);var controller=require(_0xe546[7]);router[_0xe546[11]](_0xe546[8],auth[_0xe546[9]](),controller[_0xe546[10]]);router[_0xe546[14]](_0xe546[12],auth[_0xe546[9]](),controller[_0xe546[13]]);router[_0xe546[16]](_0xe546[8],auth[_0xe546[9]](),controller[_0xe546[15]]);router[_0xe546[18]](_0xe546[8],auth[_0xe546[9]](),controller[_0xe546[17]]);module[_0xe546[19]]= router
\ No newline at end of file
index c3451d0..96aa62a 100644 (file)
@@ -1 +1 @@
-var _0xf962=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xf962[0];var Sequelize=require(_0xf962[1]);module[_0xf962[2]]= {name:{type:Sequelize[_0xf962[3]]}}
\ No newline at end of file
+var _0x75f0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x75f0[0];var Sequelize=require(_0x75f0[1]);module[_0x75f0[2]]= {name:{type:Sequelize[_0x75f0[3]]}}
\ No newline at end of file
index 4a0b0d6..ebb27ee 100644 (file)
@@ -1 +1 @@
-var _0x1b47=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x1b47[0];var jsonpatch=require(_0x1b47[1]);var rp=require(_0x1b47[2]);var moment=require(_0x1b47[3]);var BPromise=require(_0x1b47[4]);var util=require(_0x1b47[5]);var path=require(_0x1b47[6]);var sox=require(_0x1b47[7]);var ejs=require(_0x1b47[8]);var fs=require(_0x1b47[9]);var _=require(_0x1b47[10]);var squel=require(_0x1b47[11]);var crypto=require(_0x1b47[12]);var jsforce=require(_0x1b47[13]);var toCsv=require(_0x1b47[14]);var qs=require(_0x1b47[15]);var logger=require(_0x1b47[17])(_0x1b47[16]);var utils=require(_0x1b47[18]);var config=require(_0x1b47[19]);var db=require(_0x1b47[21])[_0x1b47[20]];function respondWithStatusCode(_0x9a93x15,_0x9a93x16,_0x9a93x17){_0x9a93x16= _0x9a93x16|| 204;return function(_0x9a93x18){if(_0x9a93x18){logger[_0x1b47[24]](_0x1b47[22],_0x9a93x17,_0x9a93x16,_0x1b47[23]);logger[_0x1b47[26]](_0x1b47[25],_0x9a93x17,_0x9a93x16,_0x1b47[23]);return _0x9a93x15[_0x1b47[27]](_0x9a93x16)};return _0x9a93x15[_0x1b47[29]](304)[_0x1b47[28]]()}}function respondWithResult(_0x9a93x15,_0x9a93x16,_0x9a93x17){_0x9a93x16= _0x9a93x16|| 200;return function(_0x9a93x18){if(_0x9a93x18){logger[_0x1b47[24]](_0x1b47[22],_0x9a93x17,_0x9a93x16,_0x1b47[30]);logger[_0x1b47[26]](_0x1b47[25],_0x9a93x17,_0x9a93x16,_0x1b47[30],JSON[_0x1b47[31]](_0x9a93x18));return _0x9a93x15[_0x1b47[29]](_0x9a93x16)[_0x1b47[32]](_0x9a93x18)};return _0x9a93x15[_0x1b47[29]](304)[_0x1b47[28]]()}}function respondWithFilteredResult(_0x9a93x15,_0x9a93x1b,_0x9a93x17){return function(_0x9a93x18){if(_0x9a93x18){var _0x9a93x1c=_0x9a93x18[_0x1b47[33]],_0x9a93x1d=_0x9a93x1b[_0x1b47[34]],_0x9a93x1e=_0x9a93x1b[_0x1b47[34]]+ _0x9a93x1b[_0x1b47[35]],_0x9a93x16;if(_0x9a93x1e>= _0x9a93x1c){_0x9a93x1e= _0x9a93x1c;_0x9a93x16= 200}else {_0x9a93x16= 206};_0x9a93x15[_0x1b47[29]](_0x9a93x16);logger[_0x1b47[24]](_0x1b47[22],_0x9a93x17,_0x9a93x16,_0x1b47[36]);logger[_0x1b47[26]](_0x1b47[25],_0x9a93x17,_0x9a93x16,_0x1b47[30],JSON[_0x1b47[31]](_0x9a93x18));return _0x9a93x15[_0x1b47[40]](_0x1b47[37],_0x9a93x1d+ _0x1b47[38]+ _0x9a93x1e+ _0x1b47[39]+ _0x9a93x1c)[_0x1b47[32]](_0x9a93x18)};return null}}function patchUpdates(_0x9a93x20){return function(_0x9a93x18){try{jsonpatch[_0x1b47[41]](_0x9a93x18,_0x9a93x20,true)}catch(err){return BPromise[_0x1b47[42]](err)};return _0x9a93x18[_0x1b47[43]]()}}function saveUpdates(_0x9a93x22,_0x9a93x16,_0x9a93x17){return function(_0x9a93x18){if(_0x9a93x18){return _0x9a93x18[_0x1b47[46]](_0x9a93x22)[_0x1b47[45]](function(_0x9a93x23){logger[_0x1b47[24]](_0x1b47[22],_0x9a93x17,_0x9a93x16,_0x1b47[44]);logger[_0x1b47[26]](_0x1b47[25],_0x9a93x17,_0x9a93x16,_0x1b47[44],JSON[_0x1b47[31]](_0x9a93x18));return _0x9a93x23})};return null}}function removeEntity(_0x9a93x15,_0x9a93x16,_0x9a93x17){return function(_0x9a93x18){if(_0x9a93x18){return _0x9a93x18[_0x1b47[48]]()[_0x1b47[45]](function(){logger[_0x1b47[24]](_0x1b47[22],_0x9a93x17,_0x9a93x16,_0x1b47[47]);logger[_0x1b47[26]](_0x1b47[25],_0x9a93x17,_0x9a93x16,_0x1b47[47],JSON[_0x1b47[31]](_0x9a93x18));_0x9a93x15[_0x1b47[29]](204)[_0x1b47[28]]()})}}}function handleEntityNotFound(_0x9a93x15,_0x9a93x16,_0x9a93x17){return function(_0x9a93x18){if(!_0x9a93x18){logger[_0x1b47[50]](_0x1b47[22],_0x9a93x17,404,_0x1b47[49]);_0x9a93x15[_0x1b47[29]](404)[_0x1b47[28]]();return null};return _0x9a93x18}}function handleError(_0x9a93x15,_0x9a93x16,_0x9a93x17){_0x9a93x16= _0x9a93x16|| 500;return function(_0x9a93x27){logger[_0x1b47[50]](_0x1b47[22],_0x9a93x17,_0x9a93x16,JSON[_0x1b47[31]](_0x9a93x27));delete _0x9a93x27[_0x1b47[51]];_0x9a93x15[_0x1b47[29]](_0x9a93x16)[_0x1b47[52]](_0x9a93x27)}}exports[_0x1b47[53]]= function(_0x9a93x28,_0x9a93x15){var _0x9a93x1b={raw:true,where:{id:_0x9a93x28[_0x1b47[55]][_0x1b47[54]]}},_0x9a93x29={};_0x9a93x29[_0x1b47[56]]= _[_0x1b47[59]](db[_0x1b47[58]][_0x1b47[57]]);_0x9a93x29[_0x1b47[60]]= _[_0x1b47[59]](_0x9a93x28[_0x1b47[60]]);_0x9a93x29[_0x1b47[61]]= _[_0x1b47[62]](_0x9a93x29[_0x1b47[56]],_0x9a93x29[_0x1b47[60]]);_0x9a93x1b[_0x1b47[63]]= _[_0x1b47[62]](_0x9a93x29[_0x1b47[56]],qs[_0x1b47[64]](_0x9a93x28[_0x1b47[60]][_0x1b47[64]]));_0x9a93x1b[_0x1b47[63]]= (_0x9a93x1b[_0x1b47[63]][_0x1b47[65]])?_0x9a93x1b[_0x1b47[63]]:_0x9a93x29[_0x1b47[56]];_0x9a93x1b= _[_0x1b47[67]]({},_0x9a93x1b,_0x9a93x28[_0x1b47[66]]);return db[_0x1b47[58]][_0x1b47[69]](_0x9a93x1b)[_0x1b47[45]](handleEntityNotFound(_0x9a93x15,null,_0x1b47[53]))[_0x1b47[45]](respondWithResult(_0x9a93x15,null,_0x1b47[53]))[_0x1b47[68]](handleError(_0x9a93x15,null,_0x1b47[53]))};exports[_0x1b47[70]]= function(_0x9a93x28,_0x9a93x15){return db[_0x1b47[58]][_0x1b47[70]](_0x9a93x28[_0x1b47[71]],{})[_0x1b47[45]](respondWithResult(_0x9a93x15,201,_0x1b47[70]))[_0x1b47[68]](handleError(_0x9a93x15,null,_0x1b47[70]))};exports[_0x1b47[46]]= function(_0x9a93x28,_0x9a93x15){if(_0x9a93x28[_0x1b47[71]][_0x1b47[54]]){delete _0x9a93x28[_0x1b47[71]][_0x1b47[54]]};return db[_0x1b47[58]][_0x1b47[69]]({where:{id:_0x9a93x28[_0x1b47[55]][_0x1b47[54]]}})[_0x1b47[45]](handleEntityNotFound(_0x9a93x15,null,_0x1b47[46]))[_0x1b47[45]](saveUpdates(_0x9a93x28[_0x1b47[71]],null,_0x1b47[46]))[_0x1b47[45]](respondWithResult(_0x9a93x15,null,_0x1b47[46]))[_0x1b47[68]](handleError(_0x9a93x15,null,_0x1b47[46]))};exports[_0x1b47[48]]= function(_0x9a93x28,_0x9a93x15){return db[_0x1b47[58]][_0x1b47[69]]({where:{id:_0x9a93x28[_0x1b47[55]][_0x1b47[54]]}})[_0x1b47[45]](handleEntityNotFound(_0x9a93x15,null,_0x1b47[48]))[_0x1b47[45]](removeEntity(_0x9a93x15,null,_0x1b47[48]))[_0x1b47[68]](handleError(_0x9a93x15,null,_0x1b47[48]))}
\ No newline at end of file
+var _0x5a4a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x5a4a[0];var jsonpatch=require(_0x5a4a[1]);var rp=require(_0x5a4a[2]);var moment=require(_0x5a4a[3]);var BPromise=require(_0x5a4a[4]);var util=require(_0x5a4a[5]);var path=require(_0x5a4a[6]);var sox=require(_0x5a4a[7]);var ejs=require(_0x5a4a[8]);var fs=require(_0x5a4a[9]);var _=require(_0x5a4a[10]);var squel=require(_0x5a4a[11]);var crypto=require(_0x5a4a[12]);var jsforce=require(_0x5a4a[13]);var toCsv=require(_0x5a4a[14]);var qs=require(_0x5a4a[15]);var logger=require(_0x5a4a[17])(_0x5a4a[16]);var utils=require(_0x5a4a[18]);var config=require(_0x5a4a[19]);var db=require(_0x5a4a[21])[_0x5a4a[20]];function respondWithStatusCode(_0xd3bex15,_0xd3bex16,_0xd3bex17){_0xd3bex16= _0xd3bex16|| 204;return function(_0xd3bex18){if(_0xd3bex18){logger[_0x5a4a[24]](_0x5a4a[22],_0xd3bex17,_0xd3bex16,_0x5a4a[23]);logger[_0x5a4a[26]](_0x5a4a[25],_0xd3bex17,_0xd3bex16,_0x5a4a[23]);return _0xd3bex15[_0x5a4a[27]](_0xd3bex16)};return _0xd3bex15[_0x5a4a[29]](304)[_0x5a4a[28]]()}}function respondWithResult(_0xd3bex15,_0xd3bex16,_0xd3bex17){_0xd3bex16= _0xd3bex16|| 200;return function(_0xd3bex18){if(_0xd3bex18){logger[_0x5a4a[24]](_0x5a4a[22],_0xd3bex17,_0xd3bex16,_0x5a4a[30]);logger[_0x5a4a[26]](_0x5a4a[25],_0xd3bex17,_0xd3bex16,_0x5a4a[30],JSON[_0x5a4a[31]](_0xd3bex18));return _0xd3bex15[_0x5a4a[29]](_0xd3bex16)[_0x5a4a[32]](_0xd3bex18)};return _0xd3bex15[_0x5a4a[29]](304)[_0x5a4a[28]]()}}function respondWithFilteredResult(_0xd3bex15,_0xd3bex1b,_0xd3bex17){return function(_0xd3bex18){if(_0xd3bex18){var _0xd3bex1c=_0xd3bex18[_0x5a4a[33]],_0xd3bex1d=_0xd3bex1b[_0x5a4a[34]],_0xd3bex1e=_0xd3bex1b[_0x5a4a[34]]+ _0xd3bex1b[_0x5a4a[35]],_0xd3bex16;if(_0xd3bex1e>= _0xd3bex1c){_0xd3bex1e= _0xd3bex1c;_0xd3bex16= 200}else {_0xd3bex16= 206};_0xd3bex15[_0x5a4a[29]](_0xd3bex16);logger[_0x5a4a[24]](_0x5a4a[22],_0xd3bex17,_0xd3bex16,_0x5a4a[36]);logger[_0x5a4a[26]](_0x5a4a[25],_0xd3bex17,_0xd3bex16,_0x5a4a[30],JSON[_0x5a4a[31]](_0xd3bex18));return _0xd3bex15[_0x5a4a[40]](_0x5a4a[37],_0xd3bex1d+ _0x5a4a[38]+ _0xd3bex1e+ _0x5a4a[39]+ _0xd3bex1c)[_0x5a4a[32]](_0xd3bex18)};return null}}function patchUpdates(_0xd3bex20){return function(_0xd3bex18){try{jsonpatch[_0x5a4a[41]](_0xd3bex18,_0xd3bex20,true)}catch(err){return BPromise[_0x5a4a[42]](err)};return _0xd3bex18[_0x5a4a[43]]()}}function saveUpdates(_0xd3bex22,_0xd3bex16,_0xd3bex17){return function(_0xd3bex18){if(_0xd3bex18){return _0xd3bex18[_0x5a4a[46]](_0xd3bex22)[_0x5a4a[45]](function(_0xd3bex23){logger[_0x5a4a[24]](_0x5a4a[22],_0xd3bex17,_0xd3bex16,_0x5a4a[44]);logger[_0x5a4a[26]](_0x5a4a[25],_0xd3bex17,_0xd3bex16,_0x5a4a[44],JSON[_0x5a4a[31]](_0xd3bex18));return _0xd3bex23})};return null}}function removeEntity(_0xd3bex15,_0xd3bex16,_0xd3bex17){return function(_0xd3bex18){if(_0xd3bex18){return _0xd3bex18[_0x5a4a[48]]()[_0x5a4a[45]](function(){logger[_0x5a4a[24]](_0x5a4a[22],_0xd3bex17,_0xd3bex16,_0x5a4a[47]);logger[_0x5a4a[26]](_0x5a4a[25],_0xd3bex17,_0xd3bex16,_0x5a4a[47],JSON[_0x5a4a[31]](_0xd3bex18));_0xd3bex15[_0x5a4a[29]](204)[_0x5a4a[28]]()})}}}function handleEntityNotFound(_0xd3bex15,_0xd3bex16,_0xd3bex17){return function(_0xd3bex18){if(!_0xd3bex18){logger[_0x5a4a[50]](_0x5a4a[22],_0xd3bex17,404,_0x5a4a[49]);_0xd3bex15[_0x5a4a[29]](404)[_0x5a4a[28]]();return null};return _0xd3bex18}}function handleError(_0xd3bex15,_0xd3bex16,_0xd3bex17){_0xd3bex16= _0xd3bex16|| 500;return function(_0xd3bex27){logger[_0x5a4a[50]](_0x5a4a[22],_0xd3bex17,_0xd3bex16,JSON[_0x5a4a[31]](_0xd3bex27));delete _0xd3bex27[_0x5a4a[51]];_0xd3bex15[_0x5a4a[29]](_0xd3bex16)[_0x5a4a[52]](_0xd3bex27)}}exports[_0x5a4a[53]]= function(_0xd3bex28,_0xd3bex15){var _0xd3bex1b={raw:true,where:{id:_0xd3bex28[_0x5a4a[55]][_0x5a4a[54]]}},_0xd3bex29={};_0xd3bex29[_0x5a4a[56]]= _[_0x5a4a[59]](db[_0x5a4a[58]][_0x5a4a[57]]);_0xd3bex29[_0x5a4a[60]]= _[_0x5a4a[59]](_0xd3bex28[_0x5a4a[60]]);_0xd3bex29[_0x5a4a[61]]= _[_0x5a4a[62]](_0xd3bex29[_0x5a4a[56]],_0xd3bex29[_0x5a4a[60]]);_0xd3bex1b[_0x5a4a[63]]= _[_0x5a4a[62]](_0xd3bex29[_0x5a4a[56]],qs[_0x5a4a[64]](_0xd3bex28[_0x5a4a[60]][_0x5a4a[64]]));_0xd3bex1b[_0x5a4a[63]]= (_0xd3bex1b[_0x5a4a[63]][_0x5a4a[65]])?_0xd3bex1b[_0x5a4a[63]]:_0xd3bex29[_0x5a4a[56]];_0xd3bex1b= _[_0x5a4a[67]]({},_0xd3bex1b,_0xd3bex28[_0x5a4a[66]]);return db[_0x5a4a[58]][_0x5a4a[69]](_0xd3bex1b)[_0x5a4a[45]](handleEntityNotFound(_0xd3bex15,null,_0x5a4a[53]))[_0x5a4a[45]](respondWithResult(_0xd3bex15,null,_0x5a4a[53]))[_0x5a4a[68]](handleError(_0xd3bex15,null,_0x5a4a[53]))};exports[_0x5a4a[70]]= function(_0xd3bex28,_0xd3bex15){return db[_0x5a4a[58]][_0x5a4a[70]](_0xd3bex28[_0x5a4a[71]],{})[_0x5a4a[45]](respondWithResult(_0xd3bex15,201,_0x5a4a[70]))[_0x5a4a[68]](handleError(_0xd3bex15,null,_0x5a4a[70]))};exports[_0x5a4a[46]]= function(_0xd3bex28,_0xd3bex15){if(_0xd3bex28[_0x5a4a[71]][_0x5a4a[54]]){delete _0xd3bex28[_0x5a4a[71]][_0x5a4a[54]]};return db[_0x5a4a[58]][_0x5a4a[69]]({where:{id:_0xd3bex28[_0x5a4a[55]][_0x5a4a[54]]}})[_0x5a4a[45]](handleEntityNotFound(_0xd3bex15,null,_0x5a4a[46]))[_0x5a4a[45]](saveUpdates(_0xd3bex28[_0x5a4a[71]],null,_0x5a4a[46]))[_0x5a4a[45]](respondWithResult(_0xd3bex15,null,_0x5a4a[46]))[_0x5a4a[68]](handleError(_0xd3bex15,null,_0x5a4a[46]))};exports[_0x5a4a[48]]= function(_0xd3bex28,_0xd3bex15){return db[_0x5a4a[58]][_0x5a4a[69]]({where:{id:_0xd3bex28[_0x5a4a[55]][_0x5a4a[54]]}})[_0x5a4a[45]](handleEntityNotFound(_0xd3bex15,null,_0x5a4a[48]))[_0x5a4a[45]](removeEntity(_0xd3bex15,null,_0x5a4a[48]))[_0x5a4a[68]](handleError(_0xd3bex15,null,_0x5a4a[48]))}
\ No newline at end of file
index ebc1797..247155b 100644 (file)
@@ -1 +1 @@
-var _0xe176=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xe176[0];var _=require(_0xe176[1]);var util=require(_0xe176[2]);var logger=require(_0xe176[4])(_0xe176[3]);var attributes=require(_0xe176[5]);module[_0xe176[6]]= function(_0xd058x5,_0xd058x6){return _0xd058x5[_0xe176[9]](_0xe176[7],attributes,{tableName:_0xe176[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x2a01=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x2a01[0];var _=require(_0x2a01[1]);var util=require(_0x2a01[2]);var logger=require(_0x2a01[4])(_0x2a01[3]);var attributes=require(_0x2a01[5]);module[_0x2a01[6]]= function(_0x752bx5,_0x752bx6){return _0x752bx5[_0x2a01[9]](_0x2a01[7],attributes,{tableName:_0x2a01[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 1d3fe67..b3061ca 100644 (file)
@@ -1 +1 @@
-var _0xf207=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x55\x70\x64\x61\x74\x65\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E"];_0xf207[0];var _=require(_0xf207[1]);var util=require(_0xf207[2]);var moment=require(_0xf207[3]);var BPromise=require(_0xf207[4]);var db=require(_0xf207[6])[_0xf207[5]];var utils=require(_0xf207[7]);var logger=require(_0xf207[9])(_0xf207[8]);var jayson=require(_0xf207[10]);var client=jayson[_0xf207[12]][_0xf207[11]]({port:9002});function respondWithRpcPromise(_0x5e25xb,_0x5e25xc,_0x5e25xd){return  new BPromise(function(_0x5e25xe,_0x5e25xf){return client[_0xf207[25]](_0x5e25xb,_0x5e25xd)[_0xf207[24]](function(_0x5e25x11){logger[_0xf207[17]](_0xf207[13],_0x5e25xc,_0xf207[16]);logger[_0xf207[20]](_0xf207[18],_0x5e25xc,_0xf207[16],JSON[_0xf207[19]](_0x5e25x11));if(_0x5e25x11[_0xf207[14]]){if(_0x5e25x11[_0xf207[14]][_0xf207[21]]=== 500){logger[_0xf207[14]](_0xf207[13],_0x5e25xc,_0x5e25x11[_0xf207[14]][_0xf207[22]]);return _0x5e25xf(_0x5e25x11[_0xf207[14]][_0xf207[22]])};logger[_0xf207[14]](_0xf207[13],_0x5e25xc,_0x5e25x11[_0xf207[14]][_0xf207[22]]);return _0x5e25xe(_0x5e25x11[_0xf207[14]][_0xf207[22]])}else {logger[_0xf207[17]](_0xf207[13],_0x5e25xc,_0xf207[16]);_0x5e25xe(_0x5e25x11[_0xf207[23]][_0xf207[22]])}})[_0xf207[15]](function(_0x5e25x10){logger[_0xf207[14]](_0xf207[13],_0x5e25xc,_0x5e25x10);_0x5e25xf(_0x5e25x10)})})}exports[_0xf207[26]]= function(_0x5e25xd){var _0x5e25x12=this;return  new Promise(function(_0x5e25xe,_0x5e25xf){return db[_0xf207[34]][_0xf207[33]](_0x5e25xd[_0xf207[27]],{raw:_0x5e25xd[_0xf207[28]]?(_0x5e25xd[_0xf207[28]][_0xf207[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x5e25xd[_0xf207[28]]?_0x5e25xd[_0xf207[28]][_0xf207[30]]|| null:null,attributes:_0x5e25xd[_0xf207[28]]?_0x5e25xd[_0xf207[28]][_0xf207[31]]|| null:null,limit:_0x5e25xd[_0xf207[28]]?_0x5e25xd[_0xf207[28]][_0xf207[32]]|| null:null})[_0xf207[24]](function(_0x5e25x11){logger[_0xf207[17]](_0xf207[26],_0x5e25xd);logger[_0xf207[20]](_0xf207[26],_0x5e25xd,JSON[_0xf207[19]](_0x5e25x11));_0x5e25xe(_0x5e25x11)})[_0xf207[15]](function(_0x5e25x10){logger[_0xf207[14]](_0xf207[26],_0x5e25x10[_0xf207[22]],_0x5e25xd);_0x5e25xf(_0x5e25x12[_0xf207[14]](500,_0x5e25x10[_0xf207[22]]))})})}
\ No newline at end of file
+var _0xfea3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x55\x70\x64\x61\x74\x65\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E"];_0xfea3[0];var _=require(_0xfea3[1]);var util=require(_0xfea3[2]);var moment=require(_0xfea3[3]);var BPromise=require(_0xfea3[4]);var db=require(_0xfea3[6])[_0xfea3[5]];var utils=require(_0xfea3[7]);var logger=require(_0xfea3[9])(_0xfea3[8]);var jayson=require(_0xfea3[10]);var client=jayson[_0xfea3[12]][_0xfea3[11]]({port:9002});function respondWithRpcPromise(_0x280cxb,_0x280cxc,_0x280cxd){return  new BPromise(function(_0x280cxe,_0x280cxf){return client[_0xfea3[25]](_0x280cxb,_0x280cxd)[_0xfea3[24]](function(_0x280cx11){logger[_0xfea3[17]](_0xfea3[13],_0x280cxc,_0xfea3[16]);logger[_0xfea3[20]](_0xfea3[18],_0x280cxc,_0xfea3[16],JSON[_0xfea3[19]](_0x280cx11));if(_0x280cx11[_0xfea3[14]]){if(_0x280cx11[_0xfea3[14]][_0xfea3[21]]=== 500){logger[_0xfea3[14]](_0xfea3[13],_0x280cxc,_0x280cx11[_0xfea3[14]][_0xfea3[22]]);return _0x280cxf(_0x280cx11[_0xfea3[14]][_0xfea3[22]])};logger[_0xfea3[14]](_0xfea3[13],_0x280cxc,_0x280cx11[_0xfea3[14]][_0xfea3[22]]);return _0x280cxe(_0x280cx11[_0xfea3[14]][_0xfea3[22]])}else {logger[_0xfea3[17]](_0xfea3[13],_0x280cxc,_0xfea3[16]);_0x280cxe(_0x280cx11[_0xfea3[23]][_0xfea3[22]])}})[_0xfea3[15]](function(_0x280cx10){logger[_0xfea3[14]](_0xfea3[13],_0x280cxc,_0x280cx10);_0x280cxf(_0x280cx10)})})}exports[_0xfea3[26]]= function(_0x280cxd){var _0x280cx12=this;return  new Promise(function(_0x280cxe,_0x280cxf){return db[_0xfea3[34]][_0xfea3[33]](_0x280cxd[_0xfea3[27]],{raw:_0x280cxd[_0xfea3[28]]?(_0x280cxd[_0xfea3[28]][_0xfea3[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x280cxd[_0xfea3[28]]?_0x280cxd[_0xfea3[28]][_0xfea3[30]]|| null:null,attributes:_0x280cxd[_0xfea3[28]]?_0x280cxd[_0xfea3[28]][_0xfea3[31]]|| null:null,limit:_0x280cxd[_0xfea3[28]]?_0x280cxd[_0xfea3[28]][_0xfea3[32]]|| null:null})[_0xfea3[24]](function(_0x280cx11){logger[_0xfea3[17]](_0xfea3[26],_0x280cxd);logger[_0xfea3[20]](_0xfea3[26],_0x280cxd,JSON[_0xfea3[19]](_0x280cx11));_0x280cxe(_0x280cx11)})[_0xfea3[15]](function(_0x280cx10){logger[_0xfea3[14]](_0xfea3[26],_0x280cx10[_0xfea3[22]],_0x280cxd);_0x280cxf(_0x280cx12[_0xfea3[14]](500,_0x280cx10[_0xfea3[22]]))})})}
\ No newline at end of file
index 7f9d84b..95fcecd 100644 (file)
@@ -1 +1 @@
-var _0xa84e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa84e[0];var multer=require(_0xa84e[1]);var util=require(_0xa84e[2]);var path=require(_0xa84e[3]);var express=require(_0xa84e[4]);var router=express.Router();var auth=require(_0xa84e[5]);var config=require(_0xa84e[6]);var controller=require(_0xa84e[7]);router[_0xa84e[11]](_0xa84e[8],auth[_0xa84e[9]](),controller[_0xa84e[10]]);router[_0xa84e[11]](_0xa84e[12],auth[_0xa84e[9]](),controller[_0xa84e[13]]);router[_0xa84e[11]](_0xa84e[14],auth[_0xa84e[9]](),controller[_0xa84e[15]]);router[_0xa84e[11]](_0xa84e[16],auth[_0xa84e[9]](),controller[_0xa84e[17]]);router[_0xa84e[19]](_0xa84e[8],auth[_0xa84e[9]](),controller[_0xa84e[18]]);router[_0xa84e[19]](_0xa84e[16],auth[_0xa84e[9]](),controller[_0xa84e[20]]);router[_0xa84e[22]](_0xa84e[14],auth[_0xa84e[9]](),controller[_0xa84e[21]]);router[_0xa84e[24]](_0xa84e[14],auth[_0xa84e[9]](),controller[_0xa84e[23]]);module[_0xa84e[25]]= router
\ No newline at end of file
+var _0xc913=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xc913[0];var multer=require(_0xc913[1]);var util=require(_0xc913[2]);var path=require(_0xc913[3]);var express=require(_0xc913[4]);var router=express.Router();var auth=require(_0xc913[5]);var config=require(_0xc913[6]);var controller=require(_0xc913[7]);router[_0xc913[11]](_0xc913[8],auth[_0xc913[9]](),controller[_0xc913[10]]);router[_0xc913[11]](_0xc913[12],auth[_0xc913[9]](),controller[_0xc913[13]]);router[_0xc913[11]](_0xc913[14],auth[_0xc913[9]](),controller[_0xc913[15]]);router[_0xc913[11]](_0xc913[16],auth[_0xc913[9]](),controller[_0xc913[17]]);router[_0xc913[19]](_0xc913[8],auth[_0xc913[9]](),controller[_0xc913[18]]);router[_0xc913[19]](_0xc913[16],auth[_0xc913[9]](),controller[_0xc913[20]]);router[_0xc913[22]](_0xc913[14],auth[_0xc913[9]](),controller[_0xc913[21]]);router[_0xc913[24]](_0xc913[14],auth[_0xc913[9]](),controller[_0xc913[23]]);module[_0xc913[25]]= router
\ No newline at end of file
index ae4482a..db9a94e 100644 (file)
@@ -1 +1 @@
-var _0x9f7f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x4E\x45\x57","\x4F\x50\x45\x4E","\x50\x45\x4E\x44\x49\x4E\x47","\x43\x4C\x4F\x53\x45\x44","\x73\x74\x61\x74\x75\x73","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x72\x72\x69\x76\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x6C\x6F\x73\x65\x64\x41\x74","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x44\x41\x54\x45","\x54\x45\x58\x54","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x9f7f[0];var Sequelize=require(_0x9f7f[1]);var moment=require(_0x9f7f[2]);module[_0x9f7f[3]]= {contact:{type:Sequelize[_0x9f7f[4]]},openchannelIn:{type:Sequelize[_0x9f7f[5]],defaultValue:0},openchannelOut:{type:Sequelize[_0x9f7f[5]],defaultValue:0},status:{type:Sequelize.ENUM(_0x9f7f[6],_0x9f7f[7],_0x9f7f[8],_0x9f7f[9]),defaultValue:_0x9f7f[6],set:function(_0x12ffx3){this[_0x9f7f[11]](_0x9f7f[10],_0x12ffx3);switch(_0x12ffx3){case _0x9f7f[6]:this[_0x9f7f[11]](_0x9f7f[12],moment()[_0x9f7f[14]](_0x9f7f[13]));break;case _0x9f7f[9]:this[_0x9f7f[11]](_0x9f7f[15],moment()[_0x9f7f[14]](_0x9f7f[13]));break;default:}}},lastEvent:{type:Sequelize.ENUM(_0x9f7f[16],_0x9f7f[17],_0x9f7f[18],_0x9f7f[19],_0x9f7f[20])},lastEventAt:{type:Sequelize[_0x9f7f[21]]},tags:{type:Sequelize[_0x9f7f[22]],get:function(){var _0x12ffx4;if(this[_0x9f7f[24]](_0x9f7f[23])){_0x12ffx4= this[_0x9f7f[24]](_0x9f7f[23])[_0x9f7f[26]](_0x9f7f[25]);_0x12ffx4[_0x9f7f[27]]()}else {_0x12ffx4= []};return _0x12ffx4},set:function(_0x12ffx5){this[_0x9f7f[11]](_0x9f7f[23],_0x12ffx5&& _0x12ffx5[_0x9f7f[28]]?_0x12ffx5[_0x9f7f[29]](_0x9f7f[25])+ _0x9f7f[25]:null)}},disposition:{type:Sequelize[_0x9f7f[4]]},ParentId:{type:Sequelize[_0x9f7f[5]]},waiting:{type:Sequelize[_0x9f7f[30]],defaultValue:false},openReason:{type:Sequelize[_0x9f7f[4]]},arrivedAt:{type:Sequelize[_0x9f7f[21]]},closedAt:{type:Sequelize[_0x9f7f[21]]}}
\ No newline at end of file
+var _0x6939=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x4E\x45\x57","\x4F\x50\x45\x4E","\x50\x45\x4E\x44\x49\x4E\x47","\x43\x4C\x4F\x53\x45\x44","\x73\x74\x61\x74\x75\x73","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x72\x72\x69\x76\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x6C\x6F\x73\x65\x64\x41\x74","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x44\x41\x54\x45","\x54\x45\x58\x54","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x6939[0];var Sequelize=require(_0x6939[1]);var moment=require(_0x6939[2]);module[_0x6939[3]]= {contact:{type:Sequelize[_0x6939[4]]},openchannelIn:{type:Sequelize[_0x6939[5]],defaultValue:0},openchannelOut:{type:Sequelize[_0x6939[5]],defaultValue:0},status:{type:Sequelize.ENUM(_0x6939[6],_0x6939[7],_0x6939[8],_0x6939[9]),defaultValue:_0x6939[6],set:function(_0xc91cx3){this[_0x6939[11]](_0x6939[10],_0xc91cx3);switch(_0xc91cx3){case _0x6939[6]:this[_0x6939[11]](_0x6939[12],moment()[_0x6939[14]](_0x6939[13]));break;case _0x6939[9]:this[_0x6939[11]](_0x6939[15],moment()[_0x6939[14]](_0x6939[13]));break;default:}}},lastEvent:{type:Sequelize.ENUM(_0x6939[16],_0x6939[17],_0x6939[18],_0x6939[19],_0x6939[20])},lastEventAt:{type:Sequelize[_0x6939[21]]},tags:{type:Sequelize[_0x6939[22]],get:function(){var _0xc91cx4;if(this[_0x6939[24]](_0x6939[23])){_0xc91cx4= this[_0x6939[24]](_0x6939[23])[_0x6939[26]](_0x6939[25]);_0xc91cx4[_0x6939[27]]()}else {_0xc91cx4= []};return _0xc91cx4},set:function(_0xc91cx5){this[_0x6939[11]](_0x6939[23],_0xc91cx5&& _0xc91cx5[_0x6939[28]]?_0xc91cx5[_0x6939[29]](_0x6939[25])+ _0x6939[25]:null)}},disposition:{type:Sequelize[_0x6939[4]]},ParentId:{type:Sequelize[_0x6939[5]]},waiting:{type:Sequelize[_0x6939[30]],defaultValue:false},openReason:{type:Sequelize[_0x6939[4]]},arrivedAt:{type:Sequelize[_0x6939[21]]},closedAt:{type:Sequelize[_0x6939[21]]}}
\ No newline at end of file
index 2a5eeb1..12464c3 100644 (file)
@@ -1 +1 @@
-var _0xe649=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xe649[0];var jsonpatch=require(_0xe649[1]);var rp=require(_0xe649[2]);var moment=require(_0xe649[3]);var BPromise=require(_0xe649[4]);var util=require(_0xe649[5]);var path=require(_0xe649[6]);var sox=require(_0xe649[7]);var ejs=require(_0xe649[8]);var fs=require(_0xe649[9]);var _=require(_0xe649[10]);var squel=require(_0xe649[11]);var crypto=require(_0xe649[12]);var jsforce=require(_0xe649[13]);var toCsv=require(_0xe649[14]);var qs=require(_0xe649[15]);var logger=require(_0xe649[17])(_0xe649[16]);var utils=require(_0xe649[18]);var config=require(_0xe649[19]);var db=require(_0xe649[21])[_0xe649[20]];function respondWithStatusCode(_0xac8dx15,_0xac8dx16,_0xac8dx17){_0xac8dx16= _0xac8dx16|| 204;return function(_0xac8dx18){if(_0xac8dx18){logger[_0xe649[24]](_0xe649[22],_0xac8dx17,_0xac8dx16,_0xe649[23]);logger[_0xe649[26]](_0xe649[25],_0xac8dx17,_0xac8dx16,_0xe649[23]);return _0xac8dx15[_0xe649[27]](_0xac8dx16)};return _0xac8dx15[_0xe649[29]](304)[_0xe649[28]]()}}function respondWithResult(_0xac8dx15,_0xac8dx16,_0xac8dx17){_0xac8dx16= _0xac8dx16|| 200;return function(_0xac8dx18){if(_0xac8dx18){logger[_0xe649[24]](_0xe649[22],_0xac8dx17,_0xac8dx16,_0xe649[30]);logger[_0xe649[26]](_0xe649[25],_0xac8dx17,_0xac8dx16,_0xe649[30],JSON[_0xe649[31]](_0xac8dx18));return _0xac8dx15[_0xe649[29]](_0xac8dx16)[_0xe649[32]](_0xac8dx18)};return _0xac8dx15[_0xe649[29]](304)[_0xe649[28]]()}}function respondWithFilteredResult(_0xac8dx15,_0xac8dx1b,_0xac8dx17){return function(_0xac8dx18){if(_0xac8dx18){var _0xac8dx1c=_0xac8dx18[_0xe649[33]],_0xac8dx1d=_0xac8dx1b[_0xe649[34]],_0xac8dx1e=_0xac8dx1b[_0xe649[34]]+ _0xac8dx1b[_0xe649[35]],_0xac8dx16;if(_0xac8dx1e>= _0xac8dx1c){_0xac8dx1e= _0xac8dx1c;_0xac8dx16= 200}else {_0xac8dx16= 206};_0xac8dx15[_0xe649[29]](_0xac8dx16);logger[_0xe649[24]](_0xe649[22],_0xac8dx17,_0xac8dx16,_0xe649[36]);logger[_0xe649[26]](_0xe649[25],_0xac8dx17,_0xac8dx16,_0xe649[30],JSON[_0xe649[31]](_0xac8dx18));return _0xac8dx15[_0xe649[40]](_0xe649[37],_0xac8dx1d+ _0xe649[38]+ _0xac8dx1e+ _0xe649[39]+ _0xac8dx1c)[_0xe649[32]](_0xac8dx18)};return null}}function patchUpdates(_0xac8dx20){return function(_0xac8dx18){try{jsonpatch[_0xe649[41]](_0xac8dx18,_0xac8dx20,true)}catch(err){return BPromise[_0xe649[42]](err)};return _0xac8dx18[_0xe649[43]]()}}function saveUpdates(_0xac8dx22,_0xac8dx16,_0xac8dx17){return function(_0xac8dx18){if(_0xac8dx18){return _0xac8dx18[_0xe649[46]](_0xac8dx22)[_0xe649[45]](function(_0xac8dx23){logger[_0xe649[24]](_0xe649[22],_0xac8dx17,_0xac8dx16,_0xe649[44]);logger[_0xe649[26]](_0xe649[25],_0xac8dx17,_0xac8dx16,_0xe649[44],JSON[_0xe649[31]](_0xac8dx18));return _0xac8dx23})};return null}}function removeEntity(_0xac8dx15,_0xac8dx16,_0xac8dx17){return function(_0xac8dx18){if(_0xac8dx18){return _0xac8dx18[_0xe649[48]]()[_0xe649[45]](function(){logger[_0xe649[24]](_0xe649[22],_0xac8dx17,_0xac8dx16,_0xe649[47]);logger[_0xe649[26]](_0xe649[25],_0xac8dx17,_0xac8dx16,_0xe649[47],JSON[_0xe649[31]](_0xac8dx18));_0xac8dx15[_0xe649[29]](204)[_0xe649[28]]()})}}}function handleEntityNotFound(_0xac8dx15,_0xac8dx16,_0xac8dx17){return function(_0xac8dx18){if(!_0xac8dx18){logger[_0xe649[50]](_0xe649[22],_0xac8dx17,404,_0xe649[49]);_0xac8dx15[_0xe649[29]](404)[_0xe649[28]]();return null};return _0xac8dx18}}function handleError(_0xac8dx15,_0xac8dx16,_0xac8dx17){_0xac8dx16= _0xac8dx16|| 500;return function(_0xac8dx27){logger[_0xe649[50]](_0xe649[22],_0xac8dx17,_0xac8dx16,JSON[_0xe649[31]](_0xac8dx27));delete _0xac8dx27[_0xe649[51]];_0xac8dx15[_0xe649[29]](_0xac8dx16)[_0xe649[52]](_0xac8dx27)}}exports[_0xe649[53]]= function(_0xac8dx28,_0xac8dx15){var _0xac8dx1b={},_0xac8dx29={};_0xac8dx29[_0xe649[54]]= _[_0xe649[57]](db[_0xe649[56]][_0xe649[55]]);_0xac8dx29[_0xe649[58]]= _[_0xe649[57]](_0xac8dx28[_0xe649[58]]);_0xac8dx29[_0xe649[59]]= _[_0xe649[60]](_0xac8dx29[_0xe649[54]],_0xac8dx29[_0xe649[58]]);_0xac8dx1b[_0xe649[61]]= _[_0xe649[60]](_0xac8dx29[_0xe649[54]],qs[_0xe649[62]](_0xac8dx28[_0xe649[58]][_0xe649[62]]));_0xac8dx1b[_0xe649[61]]= (_0xac8dx1b[_0xe649[61]][_0xe649[63]])?_0xac8dx1b[_0xe649[61]]:_0xac8dx29[_0xe649[54]];if(!_0xac8dx28[_0xe649[58]][_0xe649[65]](_0xe649[64])){_0xac8dx1b[_0xe649[35]]= qs[_0xe649[35]](_0xac8dx28[_0xe649[58]][_0xe649[35]]);_0xac8dx1b[_0xe649[34]]= qs[_0xe649[34]](_0xac8dx28[_0xe649[58]][_0xe649[34]])};_0xac8dx1b[_0xe649[66]]= qs[_0xe649[67]](_0xac8dx28[_0xe649[58]][_0xe649[67]]);_0xac8dx1b[_0xe649[68]]= qs[_0xe649[59]](_[_0xe649[69]](_0xac8dx28[_0xe649[58]],_0xac8dx29[_0xe649[59]]));if(_0xac8dx28[_0xe649[58]][_0xe649[70]]){_0xac8dx1b[_0xe649[68]]= _[_0xe649[73]](_0xac8dx1b[_0xe649[68]],{$or:_[_0xe649[72]](_0xac8dx1b[_0xe649[61]],function(_0xac8dx2a){var _0xac8dx2b={};_0xac8dx2b[_0xac8dx2a]= {$like:_0xe649[71]+ _0xac8dx28[_0xe649[58]][_0xe649[70]]+ _0xe649[71]};return _0xac8dx2b})})};_0xac8dx1b= _[_0xe649[73]]({},_0xac8dx1b,_0xac8dx28[_0xe649[74]]);return db[_0xe649[56]][_0xe649[76]](_0xac8dx1b)[_0xe649[45]](respondWithFilteredResult(_0xac8dx15,_0xac8dx1b,_0xe649[53]))[_0xe649[75]](handleError(_0xac8dx15,null,_0xe649[53]))};exports[_0xe649[77]]= function(_0xac8dx28,_0xac8dx15){var _0xac8dx1b={raw:false,where:{id:_0xac8dx28[_0xe649[79]][_0xe649[78]]}},_0xac8dx29={};_0xac8dx29[_0xe649[54]]= _[_0xe649[57]](db[_0xe649[56]][_0xe649[55]]);_0xac8dx29[_0xe649[58]]= _[_0xe649[57]](_0xac8dx28[_0xe649[58]]);_0xac8dx29[_0xe649[59]]= _[_0xe649[60]](_0xac8dx29[_0xe649[54]],_0xac8dx29[_0xe649[58]]);_0xac8dx1b[_0xe649[61]]= _[_0xe649[60]](_0xac8dx29[_0xe649[54]],qs[_0xe649[62]](_0xac8dx28[_0xe649[58]][_0xe649[62]]));_0xac8dx1b[_0xe649[61]]= (_0xac8dx1b[_0xe649[61]][_0xe649[63]])?_0xac8dx1b[_0xe649[61]]:_0xac8dx29[_0xe649[54]];_0xac8dx1b= _[_0xe649[73]]({},_0xac8dx1b,_0xac8dx28[_0xe649[74]]);return db[_0xe649[56]][_0xe649[80]](_0xac8dx1b)[_0xe649[45]](handleEntityNotFound(_0xac8dx15,null,_0xe649[77]))[_0xe649[45]](respondWithResult(_0xac8dx15,null,_0xe649[77]))[_0xe649[75]](handleError(_0xac8dx15,null,_0xe649[77]))};exports[_0xe649[81]]= function(_0xac8dx28,_0xac8dx15){return db[_0xe649[56]][_0xe649[81]](_0xac8dx28[_0xe649[82]],{})[_0xe649[45]](respondWithResult(_0xac8dx15,201,_0xe649[81]))[_0xe649[75]](handleError(_0xac8dx15,null,_0xe649[81]))};exports[_0xe649[46]]= function(_0xac8dx28,_0xac8dx15){if(_0xac8dx28[_0xe649[82]][_0xe649[78]]){delete _0xac8dx28[_0xe649[82]][_0xe649[78]]};return db[_0xe649[56]][_0xe649[80]]({where:{id:_0xac8dx28[_0xe649[79]][_0xe649[78]]}})[_0xe649[45]](handleEntityNotFound(_0xac8dx15,null,_0xe649[46]))[_0xe649[45]](saveUpdates(_0xac8dx28[_0xe649[82]],null,_0xe649[46]))[_0xe649[45]](respondWithResult(_0xac8dx15,null,_0xe649[46]))[_0xe649[75]](handleError(_0xac8dx15,null,_0xe649[46]))};exports[_0xe649[48]]= function(_0xac8dx28,_0xac8dx15){return db[_0xe649[56]][_0xe649[80]]({where:{id:_0xac8dx28[_0xe649[79]][_0xe649[78]]}})[_0xe649[45]](handleEntityNotFound(_0xac8dx15,null,_0xe649[48]))[_0xe649[45]](removeEntity(_0xac8dx15,null,_0xe649[48]))[_0xe649[75]](handleError(_0xac8dx15,null,_0xe649[48]))};exports[_0xe649[83]]= function(_0xac8dx28,_0xac8dx15){return db[_0xe649[56]][_0xe649[83]]()[_0xe649[45]](respondWithResult(_0xac8dx15,null,_0xe649[83]))[_0xe649[75]](handleError(_0xac8dx15,null,_0xe649[83]))};exports[_0xe649[84]]= function(_0xac8dx28,_0xac8dx15,_0xac8dx2c){return db[_0xe649[87]][_0xe649[80]]({where:{id:_0xac8dx28[_0xe649[79]][_0xe649[78]]}})[_0xe649[45]](handleEntityNotFound(_0xac8dx15,null,_0xe649[84]))[_0xe649[45]](function(_0xac8dx18){if(_0xac8dx18){return _0xac8dx18[_0xe649[84]](_0xac8dx28[_0xe649[82]][_0xe649[85]],_[_0xe649[86]](_0xac8dx28[_0xe649[82]],[_0xe649[85],_0xe649[78]])|| {})};return null})[_0xe649[45]](respondWithResult(_0xac8dx15,null,_0xe649[84]))[_0xe649[75]](handleError(_0xac8dx15,null,_0xe649[84]))};exports[_0xe649[88]]= function(_0xac8dx28,_0xac8dx18,_0xac8dx2c){var _0xac8dx1b={};var _0xac8dx29={};var _0xac8dx2d;var _0xac8dx1c;return db[_0xe649[56]][_0xe649[89]]({where:{id:_0xac8dx28[_0xe649[79]][_0xe649[78]]}})[_0xe649[45]](handleEntityNotFound(_0xac8dx18,null,_0xe649[88]))[_0xe649[45]](function(_0xac8dx18){if(_0xac8dx18){_0xac8dx2d= _0xac8dx18;_0xac8dx29[_0xe649[54]]= _[_0xe649[57]](db[_0xe649[87]][_0xe649[55]]);_0xac8dx29[_0xe649[58]]= _[_0xe649[57]](_0xac8dx28[_0xe649[58]]);_0xac8dx29[_0xe649[59]]= _[_0xe649[60]](_0xac8dx29[_0xe649[54]],_0xac8dx29[_0xe649[58]]);_0xac8dx1b[_0xe649[61]]= _[_0xe649[60]](_0xac8dx29[_0xe649[54]],qs[_0xe649[62]](_0xac8dx28[_0xe649[58]][_0xe649[62]]));_0xac8dx1b[_0xe649[61]]= (_0xac8dx1b[_0xe649[61]][_0xe649[63]])?_0xac8dx1b[_0xe649[61]]:_0xac8dx29[_0xe649[54]];_0xac8dx1b[_0xe649[66]]= qs[_0xe649[67]](_0xac8dx28[_0xe649[58]][_0xe649[67]]);_0xac8dx1b[_0xe649[68]]= qs[_0xe649[59]](_[_0xe649[69]](_0xac8dx28[_0xe649[58]],_0xac8dx29[_0xe649[59]]));if(_0xac8dx28[_0xe649[58]][_0xe649[70]]){_0xac8dx1b[_0xe649[68]]= _[_0xe649[73]](_0xac8dx1b[_0xe649[68]],{$or:_[_0xe649[72]](_0xac8dx1b[_0xe649[61]],function(_0xac8dx2a){var _0xac8dx2b={};_0xac8dx2b[_0xac8dx2a]= {$like:_0xe649[71]+ _0xac8dx28[_0xe649[58]][_0xe649[70]]+ _0xe649[71]};return _0xac8dx2b})})};_0xac8dx1b= _[_0xe649[73]]({},_0xac8dx1b,_0xac8dx28[_0xe649[74]]);return _0xac8dx2d[_0xe649[88]](_0xac8dx1b)}})[_0xe649[45]](function(_0xac8dx2f){if(_0xac8dx2f){_0xac8dx1c= _0xac8dx2f[_0xe649[63]];if(!_0xac8dx28[_0xe649[58]][_0xe649[65]](_0xe649[64])){_0xac8dx1b[_0xe649[35]]= qs[_0xe649[35]](_0xac8dx28[_0xe649[58]][_0xe649[35]]);_0xac8dx1b[_0xe649[34]]= qs[_0xe649[34]](_0xac8dx28[_0xe649[58]][_0xe649[34]])};return _0xac8dx2d[_0xe649[88]](_0xac8dx1b)}})[_0xe649[45]](function(_0xac8dx2e){return _0xac8dx2e?{count:_0xac8dx1c,rows:_0xac8dx2e}:null})[_0xe649[45]](respondWithResult(_0xac8dx18,null,_0xe649[88]))[_0xe649[75]](handleError(_0xac8dx18,null,_0xe649[88]))}
\ No newline at end of file
+var _0xf525=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xf525[0];var jsonpatch=require(_0xf525[1]);var rp=require(_0xf525[2]);var moment=require(_0xf525[3]);var BPromise=require(_0xf525[4]);var util=require(_0xf525[5]);var path=require(_0xf525[6]);var sox=require(_0xf525[7]);var ejs=require(_0xf525[8]);var fs=require(_0xf525[9]);var _=require(_0xf525[10]);var squel=require(_0xf525[11]);var crypto=require(_0xf525[12]);var jsforce=require(_0xf525[13]);var toCsv=require(_0xf525[14]);var qs=require(_0xf525[15]);var logger=require(_0xf525[17])(_0xf525[16]);var utils=require(_0xf525[18]);var config=require(_0xf525[19]);var db=require(_0xf525[21])[_0xf525[20]];function respondWithStatusCode(_0x61f2x15,_0x61f2x16,_0x61f2x17){_0x61f2x16= _0x61f2x16|| 204;return function(_0x61f2x18){if(_0x61f2x18){logger[_0xf525[24]](_0xf525[22],_0x61f2x17,_0x61f2x16,_0xf525[23]);logger[_0xf525[26]](_0xf525[25],_0x61f2x17,_0x61f2x16,_0xf525[23]);return _0x61f2x15[_0xf525[27]](_0x61f2x16)};return _0x61f2x15[_0xf525[29]](304)[_0xf525[28]]()}}function respondWithResult(_0x61f2x15,_0x61f2x16,_0x61f2x17){_0x61f2x16= _0x61f2x16|| 200;return function(_0x61f2x18){if(_0x61f2x18){logger[_0xf525[24]](_0xf525[22],_0x61f2x17,_0x61f2x16,_0xf525[30]);logger[_0xf525[26]](_0xf525[25],_0x61f2x17,_0x61f2x16,_0xf525[30],JSON[_0xf525[31]](_0x61f2x18));return _0x61f2x15[_0xf525[29]](_0x61f2x16)[_0xf525[32]](_0x61f2x18)};return _0x61f2x15[_0xf525[29]](304)[_0xf525[28]]()}}function respondWithFilteredResult(_0x61f2x15,_0x61f2x1b,_0x61f2x17){return function(_0x61f2x18){if(_0x61f2x18){var _0x61f2x1c=_0x61f2x18[_0xf525[33]],_0x61f2x1d=_0x61f2x1b[_0xf525[34]],_0x61f2x1e=_0x61f2x1b[_0xf525[34]]+ _0x61f2x1b[_0xf525[35]],_0x61f2x16;if(_0x61f2x1e>= _0x61f2x1c){_0x61f2x1e= _0x61f2x1c;_0x61f2x16= 200}else {_0x61f2x16= 206};_0x61f2x15[_0xf525[29]](_0x61f2x16);logger[_0xf525[24]](_0xf525[22],_0x61f2x17,_0x61f2x16,_0xf525[36]);logger[_0xf525[26]](_0xf525[25],_0x61f2x17,_0x61f2x16,_0xf525[30],JSON[_0xf525[31]](_0x61f2x18));return _0x61f2x15[_0xf525[40]](_0xf525[37],_0x61f2x1d+ _0xf525[38]+ _0x61f2x1e+ _0xf525[39]+ _0x61f2x1c)[_0xf525[32]](_0x61f2x18)};return null}}function patchUpdates(_0x61f2x20){return function(_0x61f2x18){try{jsonpatch[_0xf525[41]](_0x61f2x18,_0x61f2x20,true)}catch(err){return BPromise[_0xf525[42]](err)};return _0x61f2x18[_0xf525[43]]()}}function saveUpdates(_0x61f2x22,_0x61f2x16,_0x61f2x17){return function(_0x61f2x18){if(_0x61f2x18){return _0x61f2x18[_0xf525[46]](_0x61f2x22)[_0xf525[45]](function(_0x61f2x23){logger[_0xf525[24]](_0xf525[22],_0x61f2x17,_0x61f2x16,_0xf525[44]);logger[_0xf525[26]](_0xf525[25],_0x61f2x17,_0x61f2x16,_0xf525[44],JSON[_0xf525[31]](_0x61f2x18));return _0x61f2x23})};return null}}function removeEntity(_0x61f2x15,_0x61f2x16,_0x61f2x17){return function(_0x61f2x18){if(_0x61f2x18){return _0x61f2x18[_0xf525[48]]()[_0xf525[45]](function(){logger[_0xf525[24]](_0xf525[22],_0x61f2x17,_0x61f2x16,_0xf525[47]);logger[_0xf525[26]](_0xf525[25],_0x61f2x17,_0x61f2x16,_0xf525[47],JSON[_0xf525[31]](_0x61f2x18));_0x61f2x15[_0xf525[29]](204)[_0xf525[28]]()})}}}function handleEntityNotFound(_0x61f2x15,_0x61f2x16,_0x61f2x17){return function(_0x61f2x18){if(!_0x61f2x18){logger[_0xf525[50]](_0xf525[22],_0x61f2x17,404,_0xf525[49]);_0x61f2x15[_0xf525[29]](404)[_0xf525[28]]();return null};return _0x61f2x18}}function handleError(_0x61f2x15,_0x61f2x16,_0x61f2x17){_0x61f2x16= _0x61f2x16|| 500;return function(_0x61f2x27){logger[_0xf525[50]](_0xf525[22],_0x61f2x17,_0x61f2x16,JSON[_0xf525[31]](_0x61f2x27));delete _0x61f2x27[_0xf525[51]];_0x61f2x15[_0xf525[29]](_0x61f2x16)[_0xf525[52]](_0x61f2x27)}}exports[_0xf525[53]]= function(_0x61f2x28,_0x61f2x15){var _0x61f2x1b={},_0x61f2x29={};_0x61f2x29[_0xf525[54]]= _[_0xf525[57]](db[_0xf525[56]][_0xf525[55]]);_0x61f2x29[_0xf525[58]]= _[_0xf525[57]](_0x61f2x28[_0xf525[58]]);_0x61f2x29[_0xf525[59]]= _[_0xf525[60]](_0x61f2x29[_0xf525[54]],_0x61f2x29[_0xf525[58]]);_0x61f2x1b[_0xf525[61]]= _[_0xf525[60]](_0x61f2x29[_0xf525[54]],qs[_0xf525[62]](_0x61f2x28[_0xf525[58]][_0xf525[62]]));_0x61f2x1b[_0xf525[61]]= (_0x61f2x1b[_0xf525[61]][_0xf525[63]])?_0x61f2x1b[_0xf525[61]]:_0x61f2x29[_0xf525[54]];if(!_0x61f2x28[_0xf525[58]][_0xf525[65]](_0xf525[64])){_0x61f2x1b[_0xf525[35]]= qs[_0xf525[35]](_0x61f2x28[_0xf525[58]][_0xf525[35]]);_0x61f2x1b[_0xf525[34]]= qs[_0xf525[34]](_0x61f2x28[_0xf525[58]][_0xf525[34]])};_0x61f2x1b[_0xf525[66]]= qs[_0xf525[67]](_0x61f2x28[_0xf525[58]][_0xf525[67]]);_0x61f2x1b[_0xf525[68]]= qs[_0xf525[59]](_[_0xf525[69]](_0x61f2x28[_0xf525[58]],_0x61f2x29[_0xf525[59]]));if(_0x61f2x28[_0xf525[58]][_0xf525[70]]){_0x61f2x1b[_0xf525[68]]= _[_0xf525[73]](_0x61f2x1b[_0xf525[68]],{$or:_[_0xf525[72]](_0x61f2x1b[_0xf525[61]],function(_0x61f2x2a){var _0x61f2x2b={};_0x61f2x2b[_0x61f2x2a]= {$like:_0xf525[71]+ _0x61f2x28[_0xf525[58]][_0xf525[70]]+ _0xf525[71]};return _0x61f2x2b})})};_0x61f2x1b= _[_0xf525[73]]({},_0x61f2x1b,_0x61f2x28[_0xf525[74]]);return db[_0xf525[56]][_0xf525[76]](_0x61f2x1b)[_0xf525[45]](respondWithFilteredResult(_0x61f2x15,_0x61f2x1b,_0xf525[53]))[_0xf525[75]](handleError(_0x61f2x15,null,_0xf525[53]))};exports[_0xf525[77]]= function(_0x61f2x28,_0x61f2x15){var _0x61f2x1b={raw:false,where:{id:_0x61f2x28[_0xf525[79]][_0xf525[78]]}},_0x61f2x29={};_0x61f2x29[_0xf525[54]]= _[_0xf525[57]](db[_0xf525[56]][_0xf525[55]]);_0x61f2x29[_0xf525[58]]= _[_0xf525[57]](_0x61f2x28[_0xf525[58]]);_0x61f2x29[_0xf525[59]]= _[_0xf525[60]](_0x61f2x29[_0xf525[54]],_0x61f2x29[_0xf525[58]]);_0x61f2x1b[_0xf525[61]]= _[_0xf525[60]](_0x61f2x29[_0xf525[54]],qs[_0xf525[62]](_0x61f2x28[_0xf525[58]][_0xf525[62]]));_0x61f2x1b[_0xf525[61]]= (_0x61f2x1b[_0xf525[61]][_0xf525[63]])?_0x61f2x1b[_0xf525[61]]:_0x61f2x29[_0xf525[54]];_0x61f2x1b= _[_0xf525[73]]({},_0x61f2x1b,_0x61f2x28[_0xf525[74]]);return db[_0xf525[56]][_0xf525[80]](_0x61f2x1b)[_0xf525[45]](handleEntityNotFound(_0x61f2x15,null,_0xf525[77]))[_0xf525[45]](respondWithResult(_0x61f2x15,null,_0xf525[77]))[_0xf525[75]](handleError(_0x61f2x15,null,_0xf525[77]))};exports[_0xf525[81]]= function(_0x61f2x28,_0x61f2x15){return db[_0xf525[56]][_0xf525[81]](_0x61f2x28[_0xf525[82]],{})[_0xf525[45]](respondWithResult(_0x61f2x15,201,_0xf525[81]))[_0xf525[75]](handleError(_0x61f2x15,null,_0xf525[81]))};exports[_0xf525[46]]= function(_0x61f2x28,_0x61f2x15){if(_0x61f2x28[_0xf525[82]][_0xf525[78]]){delete _0x61f2x28[_0xf525[82]][_0xf525[78]]};return db[_0xf525[56]][_0xf525[80]]({where:{id:_0x61f2x28[_0xf525[79]][_0xf525[78]]}})[_0xf525[45]](handleEntityNotFound(_0x61f2x15,null,_0xf525[46]))[_0xf525[45]](saveUpdates(_0x61f2x28[_0xf525[82]],null,_0xf525[46]))[_0xf525[45]](respondWithResult(_0x61f2x15,null,_0xf525[46]))[_0xf525[75]](handleError(_0x61f2x15,null,_0xf525[46]))};exports[_0xf525[48]]= function(_0x61f2x28,_0x61f2x15){return db[_0xf525[56]][_0xf525[80]]({where:{id:_0x61f2x28[_0xf525[79]][_0xf525[78]]}})[_0xf525[45]](handleEntityNotFound(_0x61f2x15,null,_0xf525[48]))[_0xf525[45]](removeEntity(_0x61f2x15,null,_0xf525[48]))[_0xf525[75]](handleError(_0x61f2x15,null,_0xf525[48]))};exports[_0xf525[83]]= function(_0x61f2x28,_0x61f2x15){return db[_0xf525[56]][_0xf525[83]]()[_0xf525[45]](respondWithResult(_0x61f2x15,null,_0xf525[83]))[_0xf525[75]](handleError(_0x61f2x15,null,_0xf525[83]))};exports[_0xf525[84]]= function(_0x61f2x28,_0x61f2x15,_0x61f2x2c){return db[_0xf525[87]][_0xf525[80]]({where:{id:_0x61f2x28[_0xf525[79]][_0xf525[78]]}})[_0xf525[45]](handleEntityNotFound(_0x61f2x15,null,_0xf525[84]))[_0xf525[45]](function(_0x61f2x18){if(_0x61f2x18){return _0x61f2x18[_0xf525[84]](_0x61f2x28[_0xf525[82]][_0xf525[85]],_[_0xf525[86]](_0x61f2x28[_0xf525[82]],[_0xf525[85],_0xf525[78]])|| {})};return null})[_0xf525[45]](respondWithResult(_0x61f2x15,null,_0xf525[84]))[_0xf525[75]](handleError(_0x61f2x15,null,_0xf525[84]))};exports[_0xf525[88]]= function(_0x61f2x28,_0x61f2x18,_0x61f2x2c){var _0x61f2x1b={};var _0x61f2x29={};var _0x61f2x2d;var _0x61f2x1c;return db[_0xf525[56]][_0xf525[89]]({where:{id:_0x61f2x28[_0xf525[79]][_0xf525[78]]}})[_0xf525[45]](handleEntityNotFound(_0x61f2x18,null,_0xf525[88]))[_0xf525[45]](function(_0x61f2x18){if(_0x61f2x18){_0x61f2x2d= _0x61f2x18;_0x61f2x29[_0xf525[54]]= _[_0xf525[57]](db[_0xf525[87]][_0xf525[55]]);_0x61f2x29[_0xf525[58]]= _[_0xf525[57]](_0x61f2x28[_0xf525[58]]);_0x61f2x29[_0xf525[59]]= _[_0xf525[60]](_0x61f2x29[_0xf525[54]],_0x61f2x29[_0xf525[58]]);_0x61f2x1b[_0xf525[61]]= _[_0xf525[60]](_0x61f2x29[_0xf525[54]],qs[_0xf525[62]](_0x61f2x28[_0xf525[58]][_0xf525[62]]));_0x61f2x1b[_0xf525[61]]= (_0x61f2x1b[_0xf525[61]][_0xf525[63]])?_0x61f2x1b[_0xf525[61]]:_0x61f2x29[_0xf525[54]];_0x61f2x1b[_0xf525[66]]= qs[_0xf525[67]](_0x61f2x28[_0xf525[58]][_0xf525[67]]);_0x61f2x1b[_0xf525[68]]= qs[_0xf525[59]](_[_0xf525[69]](_0x61f2x28[_0xf525[58]],_0x61f2x29[_0xf525[59]]));if(_0x61f2x28[_0xf525[58]][_0xf525[70]]){_0x61f2x1b[_0xf525[68]]= _[_0xf525[73]](_0x61f2x1b[_0xf525[68]],{$or:_[_0xf525[72]](_0x61f2x1b[_0xf525[61]],function(_0x61f2x2a){var _0x61f2x2b={};_0x61f2x2b[_0x61f2x2a]= {$like:_0xf525[71]+ _0x61f2x28[_0xf525[58]][_0xf525[70]]+ _0xf525[71]};return _0x61f2x2b})})};_0x61f2x1b= _[_0xf525[73]]({},_0x61f2x1b,_0x61f2x28[_0xf525[74]]);return _0x61f2x2d[_0xf525[88]](_0x61f2x1b)}})[_0xf525[45]](function(_0x61f2x2f){if(_0x61f2x2f){_0x61f2x1c= _0x61f2x2f[_0xf525[63]];if(!_0x61f2x28[_0xf525[58]][_0xf525[65]](_0xf525[64])){_0x61f2x1b[_0xf525[35]]= qs[_0xf525[35]](_0x61f2x28[_0xf525[58]][_0xf525[35]]);_0x61f2x1b[_0xf525[34]]= qs[_0xf525[34]](_0x61f2x28[_0xf525[58]][_0xf525[34]])};return _0x61f2x2d[_0xf525[88]](_0x61f2x1b)}})[_0xf525[45]](function(_0x61f2x2e){return _0x61f2x2e?{count:_0x61f2x1c,rows:_0x61f2x2e}:null})[_0xf525[45]](respondWithResult(_0x61f2x18,null,_0xf525[88]))[_0xf525[75]](handleError(_0x61f2x18,null,_0xf525[88]))}
\ No newline at end of file
index 7be48d8..128cff6 100644 (file)
@@ -1 +1 @@
-var _0x70ce=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x70ce[0];var _=require(_0x70ce[1]);var util=require(_0x70ce[2]);var logger=require(_0x70ce[4])(_0x70ce[3]);var attributes=require(_0x70ce[5]);module[_0x70ce[6]]= function(_0xb5c8x5,_0xb5c8x6){return _0xb5c8x5[_0x70ce[9]](_0x70ce[7],attributes,{tableName:_0x70ce[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xae47=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0xae47[0];var _=require(_0xae47[1]);var util=require(_0xae47[2]);var logger=require(_0xae47[4])(_0xae47[3]);var attributes=require(_0xae47[5]);module[_0xae47[6]]= function(_0x4c3dx5,_0x4c3dx6){return _0x4c3dx5[_0xae47[9]](_0xae47[7],attributes,{tableName:_0xae47[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 0e50880..14f129c 100644 (file)
@@ -1 +1 @@
-var _0xbf0d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xbf0d[0];var _=require(_0xbf0d[1]);var util=require(_0xbf0d[2]);var moment=require(_0xbf0d[3]);var BPromise=require(_0xbf0d[4]);var db=require(_0xbf0d[6])[_0xbf0d[5]];var utils=require(_0xbf0d[7]);var logger=require(_0xbf0d[9])(_0xbf0d[8]);var jayson=require(_0xbf0d[10]);var client=jayson[_0xbf0d[12]][_0xbf0d[11]]({port:9002});function respondWithRpcPromise(_0x5af2xb,_0x5af2xc,_0x5af2xd){return  new BPromise(function(_0x5af2xe,_0x5af2xf){return client[_0xbf0d[25]](_0x5af2xb,_0x5af2xd)[_0xbf0d[24]](function(_0x5af2x11){logger[_0xbf0d[17]](_0xbf0d[13],_0x5af2xc,_0xbf0d[16]);logger[_0xbf0d[20]](_0xbf0d[18],_0x5af2xc,_0xbf0d[16],JSON[_0xbf0d[19]](_0x5af2x11));if(_0x5af2x11[_0xbf0d[14]]){if(_0x5af2x11[_0xbf0d[14]][_0xbf0d[21]]=== 500){logger[_0xbf0d[14]](_0xbf0d[13],_0x5af2xc,_0x5af2x11[_0xbf0d[14]][_0xbf0d[22]]);return _0x5af2xf(_0x5af2x11[_0xbf0d[14]][_0xbf0d[22]])};logger[_0xbf0d[14]](_0xbf0d[13],_0x5af2xc,_0x5af2x11[_0xbf0d[14]][_0xbf0d[22]]);return _0x5af2xe(_0x5af2x11[_0xbf0d[14]][_0xbf0d[22]])}else {logger[_0xbf0d[17]](_0xbf0d[13],_0x5af2xc,_0xbf0d[16]);_0x5af2xe(_0x5af2x11[_0xbf0d[23]][_0xbf0d[22]])}})[_0xbf0d[15]](function(_0x5af2x10){logger[_0xbf0d[14]](_0xbf0d[13],_0x5af2xc,_0x5af2x10);_0x5af2xf(_0x5af2x10)})})}
\ No newline at end of file
+var _0x9e81=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9e81[0];var _=require(_0x9e81[1]);var util=require(_0x9e81[2]);var moment=require(_0x9e81[3]);var BPromise=require(_0x9e81[4]);var db=require(_0x9e81[6])[_0x9e81[5]];var utils=require(_0x9e81[7]);var logger=require(_0x9e81[9])(_0x9e81[8]);var jayson=require(_0x9e81[10]);var client=jayson[_0x9e81[12]][_0x9e81[11]]({port:9002});function respondWithRpcPromise(_0x61d7xb,_0x61d7xc,_0x61d7xd){return  new BPromise(function(_0x61d7xe,_0x61d7xf){return client[_0x9e81[25]](_0x61d7xb,_0x61d7xd)[_0x9e81[24]](function(_0x61d7x11){logger[_0x9e81[17]](_0x9e81[13],_0x61d7xc,_0x9e81[16]);logger[_0x9e81[20]](_0x9e81[18],_0x61d7xc,_0x9e81[16],JSON[_0x9e81[19]](_0x61d7x11));if(_0x61d7x11[_0x9e81[14]]){if(_0x61d7x11[_0x9e81[14]][_0x9e81[21]]=== 500){logger[_0x9e81[14]](_0x9e81[13],_0x61d7xc,_0x61d7x11[_0x9e81[14]][_0x9e81[22]]);return _0x61d7xf(_0x61d7x11[_0x9e81[14]][_0x9e81[22]])};logger[_0x9e81[14]](_0x9e81[13],_0x61d7xc,_0x61d7x11[_0x9e81[14]][_0x9e81[22]]);return _0x61d7xe(_0x61d7x11[_0x9e81[14]][_0x9e81[22]])}else {logger[_0x9e81[17]](_0x9e81[13],_0x61d7xc,_0x9e81[16]);_0x61d7xe(_0x61d7x11[_0x9e81[23]][_0x9e81[22]])}})[_0x9e81[15]](function(_0x61d7x10){logger[_0x9e81[14]](_0x9e81[13],_0x61d7xc,_0x61d7x10);_0x61d7xf(_0x61d7x10)})})}
\ No newline at end of file
index 349f66e..04a66fd 100644 (file)
@@ -1 +1 @@
-var _0xce70=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xce70[0];var multer=require(_0xce70[1]);var util=require(_0xce70[2]);var path=require(_0xce70[3]);var express=require(_0xce70[4]);var router=express.Router();var auth=require(_0xce70[5]);var config=require(_0xce70[6]);var controller=require(_0xce70[7]);router[_0xce70[11]](_0xce70[8],auth[_0xce70[9]](),controller[_0xce70[10]]);router[_0xce70[11]](_0xce70[12],auth[_0xce70[9]](),controller[_0xce70[13]]);router[_0xce70[11]](_0xce70[14],auth[_0xce70[9]](),controller[_0xce70[15]]);router[_0xce70[17]](_0xce70[8],auth[_0xce70[9]](),controller[_0xce70[16]]);router[_0xce70[19]](_0xce70[14],auth[_0xce70[9]](),controller[_0xce70[18]]);router[_0xce70[21]](_0xce70[14],auth[_0xce70[9]](),controller[_0xce70[20]]);module[_0xce70[22]]= router
\ No newline at end of file
+var _0x930c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x930c[0];var multer=require(_0x930c[1]);var util=require(_0x930c[2]);var path=require(_0x930c[3]);var express=require(_0x930c[4]);var router=express.Router();var auth=require(_0x930c[5]);var config=require(_0x930c[6]);var controller=require(_0x930c[7]);router[_0x930c[11]](_0x930c[8],auth[_0x930c[9]](),controller[_0x930c[10]]);router[_0x930c[11]](_0x930c[12],auth[_0x930c[9]](),controller[_0x930c[13]]);router[_0x930c[11]](_0x930c[14],auth[_0x930c[9]](),controller[_0x930c[15]]);router[_0x930c[17]](_0x930c[8],auth[_0x930c[9]](),controller[_0x930c[16]]);router[_0x930c[19]](_0x930c[14],auth[_0x930c[9]](),controller[_0x930c[18]]);router[_0x930c[21]](_0x930c[14],auth[_0x930c[9]](),controller[_0x930c[20]]);module[_0x930c[22]]= router
\ No newline at end of file
index 309d962..5e09d75 100644 (file)
@@ -1 +1 @@
-var _0x900c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42","\x62\x6F\x64\x79","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x45\x4E\x44\x49\x4E\x47","\x54\x45\x58\x54"];_0x900c[0];var Sequelize=require(_0x900c[1]);var _=require(_0x900c[2]);module[_0x900c[3]]= {from:{type:Sequelize[_0x900c[4]]},to:{type:Sequelize[_0x900c[4]]},body:{type:Sequelize[_0x900c[5]],get:function(){return this[_0x900c[7]](_0x900c[6]).toString()}},status:{type:Sequelize[_0x900c[4]],defaultValue:_0x900c[8]},res_data:{type:Sequelize[_0x900c[9]]},name:{type:Sequelize[_0x900c[4]]},phone:{type:Sequelize[_0x900c[4]]},email:{type:Sequelize[_0x900c[4]],validate:{isEmail:true}}}
\ No newline at end of file
+var _0xf057=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42","\x62\x6F\x64\x79","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x45\x4E\x44\x49\x4E\x47","\x54\x45\x58\x54"];_0xf057[0];var Sequelize=require(_0xf057[1]);var _=require(_0xf057[2]);module[_0xf057[3]]= {from:{type:Sequelize[_0xf057[4]]},to:{type:Sequelize[_0xf057[4]]},body:{type:Sequelize[_0xf057[5]],get:function(){return this[_0xf057[7]](_0xf057[6]).toString()}},status:{type:Sequelize[_0xf057[4]],defaultValue:_0xf057[8]},res_data:{type:Sequelize[_0xf057[9]]},name:{type:Sequelize[_0xf057[4]]},phone:{type:Sequelize[_0xf057[4]]},email:{type:Sequelize[_0xf057[4]],validate:{isEmail:true}}}
\ No newline at end of file
index 10b1ca9..3adff1e 100644 (file)
@@ -1 +1 @@
-var _0x9e3e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x9e3e[0];var jsonpatch=require(_0x9e3e[1]);var rp=require(_0x9e3e[2]);var moment=require(_0x9e3e[3]);var BPromise=require(_0x9e3e[4]);var util=require(_0x9e3e[5]);var path=require(_0x9e3e[6]);var sox=require(_0x9e3e[7]);var ejs=require(_0x9e3e[8]);var fs=require(_0x9e3e[9]);var _=require(_0x9e3e[10]);var squel=require(_0x9e3e[11]);var crypto=require(_0x9e3e[12]);var jsforce=require(_0x9e3e[13]);var toCsv=require(_0x9e3e[14]);var qs=require(_0x9e3e[15]);var logger=require(_0x9e3e[17])(_0x9e3e[16]);var utils=require(_0x9e3e[18]);var config=require(_0x9e3e[19]);var db=require(_0x9e3e[21])[_0x9e3e[20]];function respondWithStatusCode(_0x346fx15,_0x346fx16,_0x346fx17){_0x346fx16= _0x346fx16|| 204;return function(_0x346fx18){if(_0x346fx18){logger[_0x9e3e[24]](_0x9e3e[22],_0x346fx17,_0x346fx16,_0x9e3e[23]);logger[_0x9e3e[26]](_0x9e3e[25],_0x346fx17,_0x346fx16,_0x9e3e[23]);return _0x346fx15[_0x9e3e[27]](_0x346fx16)};return _0x346fx15[_0x9e3e[29]](304)[_0x9e3e[28]]()}}function respondWithResult(_0x346fx15,_0x346fx16,_0x346fx17){_0x346fx16= _0x346fx16|| 200;return function(_0x346fx18){if(_0x346fx18){logger[_0x9e3e[24]](_0x9e3e[22],_0x346fx17,_0x346fx16,_0x9e3e[30]);logger[_0x9e3e[26]](_0x9e3e[25],_0x346fx17,_0x346fx16,_0x9e3e[30],JSON[_0x9e3e[31]](_0x346fx18));return _0x346fx15[_0x9e3e[29]](_0x346fx16)[_0x9e3e[32]](_0x346fx18)};return _0x346fx15[_0x9e3e[29]](304)[_0x9e3e[28]]()}}function respondWithFilteredResult(_0x346fx15,_0x346fx1b,_0x346fx17){return function(_0x346fx18){if(_0x346fx18){var _0x346fx1c=_0x346fx18[_0x9e3e[33]],_0x346fx1d=_0x346fx1b[_0x9e3e[34]],_0x346fx1e=_0x346fx1b[_0x9e3e[34]]+ _0x346fx1b[_0x9e3e[35]],_0x346fx16;if(_0x346fx1e>= _0x346fx1c){_0x346fx1e= _0x346fx1c;_0x346fx16= 200}else {_0x346fx16= 206};_0x346fx15[_0x9e3e[29]](_0x346fx16);logger[_0x9e3e[24]](_0x9e3e[22],_0x346fx17,_0x346fx16,_0x9e3e[36]);logger[_0x9e3e[26]](_0x9e3e[25],_0x346fx17,_0x346fx16,_0x9e3e[30],JSON[_0x9e3e[31]](_0x346fx18));return _0x346fx15[_0x9e3e[40]](_0x9e3e[37],_0x346fx1d+ _0x9e3e[38]+ _0x346fx1e+ _0x9e3e[39]+ _0x346fx1c)[_0x9e3e[32]](_0x346fx18)};return null}}function patchUpdates(_0x346fx20){return function(_0x346fx18){try{jsonpatch[_0x9e3e[41]](_0x346fx18,_0x346fx20,true)}catch(err){return BPromise[_0x9e3e[42]](err)};return _0x346fx18[_0x9e3e[43]]()}}function saveUpdates(_0x346fx22,_0x346fx16,_0x346fx17){return function(_0x346fx18){if(_0x346fx18){return _0x346fx18[_0x9e3e[46]](_0x346fx22)[_0x9e3e[45]](function(_0x346fx23){logger[_0x9e3e[24]](_0x9e3e[22],_0x346fx17,_0x346fx16,_0x9e3e[44]);logger[_0x9e3e[26]](_0x9e3e[25],_0x346fx17,_0x346fx16,_0x9e3e[44],JSON[_0x9e3e[31]](_0x346fx18));return _0x346fx23})};return null}}function removeEntity(_0x346fx15,_0x346fx16,_0x346fx17){return function(_0x346fx18){if(_0x346fx18){return _0x346fx18[_0x9e3e[48]]()[_0x9e3e[45]](function(){logger[_0x9e3e[24]](_0x9e3e[22],_0x346fx17,_0x346fx16,_0x9e3e[47]);logger[_0x9e3e[26]](_0x9e3e[25],_0x346fx17,_0x346fx16,_0x9e3e[47],JSON[_0x9e3e[31]](_0x346fx18));_0x346fx15[_0x9e3e[29]](204)[_0x9e3e[28]]()})}}}function handleEntityNotFound(_0x346fx15,_0x346fx16,_0x346fx17){return function(_0x346fx18){if(!_0x346fx18){logger[_0x9e3e[50]](_0x9e3e[22],_0x346fx17,404,_0x9e3e[49]);_0x346fx15[_0x9e3e[29]](404)[_0x9e3e[28]]();return null};return _0x346fx18}}function handleError(_0x346fx15,_0x346fx16,_0x346fx17){_0x346fx16= _0x346fx16|| 500;return function(_0x346fx27){logger[_0x9e3e[50]](_0x9e3e[22],_0x346fx17,_0x346fx16,JSON[_0x9e3e[31]](_0x346fx27));delete _0x346fx27[_0x9e3e[51]];_0x346fx15[_0x9e3e[29]](_0x346fx16)[_0x9e3e[52]](_0x346fx27)}}exports[_0x9e3e[53]]= function(_0x346fx28,_0x346fx15){var _0x346fx1b={},_0x346fx29={};_0x346fx29[_0x9e3e[54]]= _[_0x9e3e[57]](db[_0x9e3e[56]][_0x9e3e[55]]);_0x346fx29[_0x9e3e[58]]= _[_0x9e3e[57]](_0x346fx28[_0x9e3e[58]]);_0x346fx29[_0x9e3e[59]]= _[_0x9e3e[60]](_0x346fx29[_0x9e3e[54]],_0x346fx29[_0x9e3e[58]]);_0x346fx1b[_0x9e3e[61]]= _[_0x9e3e[60]](_0x346fx29[_0x9e3e[54]],qs[_0x9e3e[62]](_0x346fx28[_0x9e3e[58]][_0x9e3e[62]]));_0x346fx1b[_0x9e3e[61]]= (_0x346fx1b[_0x9e3e[61]][_0x9e3e[63]])?_0x346fx1b[_0x9e3e[61]]:_0x346fx29[_0x9e3e[54]];if(!_0x346fx28[_0x9e3e[58]][_0x9e3e[65]](_0x9e3e[64])){_0x346fx1b[_0x9e3e[35]]= qs[_0x9e3e[35]](_0x346fx28[_0x9e3e[58]][_0x9e3e[35]]);_0x346fx1b[_0x9e3e[34]]= qs[_0x9e3e[34]](_0x346fx28[_0x9e3e[58]][_0x9e3e[34]])};_0x346fx1b[_0x9e3e[66]]= qs[_0x9e3e[67]](_0x346fx28[_0x9e3e[58]][_0x9e3e[67]]);_0x346fx1b[_0x9e3e[68]]= qs[_0x9e3e[59]](_[_0x9e3e[69]](_0x346fx28[_0x9e3e[58]],_0x346fx29[_0x9e3e[59]]));if(_0x346fx28[_0x9e3e[58]][_0x9e3e[70]]){_0x346fx1b[_0x9e3e[68]]= _[_0x9e3e[73]](_0x346fx1b[_0x9e3e[68]],{$or:_[_0x9e3e[72]](_0x346fx1b[_0x9e3e[61]],function(_0x346fx2a){var _0x346fx2b={};_0x346fx2b[_0x346fx2a]= {$like:_0x9e3e[71]+ _0x346fx28[_0x9e3e[58]][_0x9e3e[70]]+ _0x9e3e[71]};return _0x346fx2b})})};_0x346fx1b= _[_0x9e3e[73]]({},_0x346fx1b,_0x346fx28[_0x9e3e[74]]);return db[_0x9e3e[56]][_0x9e3e[76]](_0x346fx1b)[_0x9e3e[45]](respondWithFilteredResult(_0x346fx15,_0x346fx1b,_0x9e3e[53]))[_0x9e3e[75]](handleError(_0x346fx15,null,_0x9e3e[53]))};exports[_0x9e3e[77]]= function(_0x346fx28,_0x346fx15){var _0x346fx1b={raw:true,where:{id:_0x346fx28[_0x9e3e[79]][_0x9e3e[78]]}},_0x346fx29={};_0x346fx29[_0x9e3e[54]]= _[_0x9e3e[57]](db[_0x9e3e[56]][_0x9e3e[55]]);_0x346fx29[_0x9e3e[58]]= _[_0x9e3e[57]](_0x346fx28[_0x9e3e[58]]);_0x346fx29[_0x9e3e[59]]= _[_0x9e3e[60]](_0x346fx29[_0x9e3e[54]],_0x346fx29[_0x9e3e[58]]);_0x346fx1b[_0x9e3e[61]]= _[_0x9e3e[60]](_0x346fx29[_0x9e3e[54]],qs[_0x9e3e[62]](_0x346fx28[_0x9e3e[58]][_0x9e3e[62]]));_0x346fx1b[_0x9e3e[61]]= (_0x346fx1b[_0x9e3e[61]][_0x9e3e[63]])?_0x346fx1b[_0x9e3e[61]]:_0x346fx29[_0x9e3e[54]];_0x346fx1b= _[_0x9e3e[73]]({},_0x346fx1b,_0x346fx28[_0x9e3e[74]]);return db[_0x9e3e[56]][_0x9e3e[80]](_0x346fx1b)[_0x9e3e[45]](handleEntityNotFound(_0x346fx15,null,_0x9e3e[77]))[_0x9e3e[45]](respondWithResult(_0x346fx15,null,_0x9e3e[77]))[_0x9e3e[75]](handleError(_0x346fx15,null,_0x9e3e[77]))};exports[_0x9e3e[81]]= function(_0x346fx28,_0x346fx15){return db[_0x9e3e[56]][_0x9e3e[81]](_0x346fx28[_0x9e3e[82]],{})[_0x9e3e[45]](respondWithResult(_0x346fx15,201,_0x9e3e[81]))[_0x9e3e[75]](handleError(_0x346fx15,null,_0x9e3e[81]))};exports[_0x9e3e[46]]= function(_0x346fx28,_0x346fx15){if(_0x346fx28[_0x9e3e[82]][_0x9e3e[78]]){delete _0x346fx28[_0x9e3e[82]][_0x9e3e[78]]};return db[_0x9e3e[56]][_0x9e3e[80]]({where:{id:_0x346fx28[_0x9e3e[79]][_0x9e3e[78]]}})[_0x9e3e[45]](handleEntityNotFound(_0x346fx15,null,_0x9e3e[46]))[_0x9e3e[45]](saveUpdates(_0x346fx28[_0x9e3e[82]],null,_0x9e3e[46]))[_0x9e3e[45]](respondWithResult(_0x346fx15,null,_0x9e3e[46]))[_0x9e3e[75]](handleError(_0x346fx15,null,_0x9e3e[46]))};exports[_0x9e3e[48]]= function(_0x346fx28,_0x346fx15){return db[_0x9e3e[56]][_0x9e3e[80]]({where:{id:_0x346fx28[_0x9e3e[79]][_0x9e3e[78]]}})[_0x9e3e[45]](handleEntityNotFound(_0x346fx15,null,_0x9e3e[48]))[_0x9e3e[45]](removeEntity(_0x346fx15,null,_0x9e3e[48]))[_0x9e3e[75]](handleError(_0x346fx15,null,_0x9e3e[48]))};exports[_0x9e3e[83]]= function(_0x346fx28,_0x346fx15){return db[_0x9e3e[56]][_0x9e3e[83]]()[_0x9e3e[45]](respondWithResult(_0x346fx15,null,_0x9e3e[83]))[_0x9e3e[75]](handleError(_0x346fx15,null,_0x9e3e[83]))}
\ No newline at end of file
+var _0x24af=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x24af[0];var jsonpatch=require(_0x24af[1]);var rp=require(_0x24af[2]);var moment=require(_0x24af[3]);var BPromise=require(_0x24af[4]);var util=require(_0x24af[5]);var path=require(_0x24af[6]);var sox=require(_0x24af[7]);var ejs=require(_0x24af[8]);var fs=require(_0x24af[9]);var _=require(_0x24af[10]);var squel=require(_0x24af[11]);var crypto=require(_0x24af[12]);var jsforce=require(_0x24af[13]);var toCsv=require(_0x24af[14]);var qs=require(_0x24af[15]);var logger=require(_0x24af[17])(_0x24af[16]);var utils=require(_0x24af[18]);var config=require(_0x24af[19]);var db=require(_0x24af[21])[_0x24af[20]];function respondWithStatusCode(_0xa8fdx15,_0xa8fdx16,_0xa8fdx17){_0xa8fdx16= _0xa8fdx16|| 204;return function(_0xa8fdx18){if(_0xa8fdx18){logger[_0x24af[24]](_0x24af[22],_0xa8fdx17,_0xa8fdx16,_0x24af[23]);logger[_0x24af[26]](_0x24af[25],_0xa8fdx17,_0xa8fdx16,_0x24af[23]);return _0xa8fdx15[_0x24af[27]](_0xa8fdx16)};return _0xa8fdx15[_0x24af[29]](304)[_0x24af[28]]()}}function respondWithResult(_0xa8fdx15,_0xa8fdx16,_0xa8fdx17){_0xa8fdx16= _0xa8fdx16|| 200;return function(_0xa8fdx18){if(_0xa8fdx18){logger[_0x24af[24]](_0x24af[22],_0xa8fdx17,_0xa8fdx16,_0x24af[30]);logger[_0x24af[26]](_0x24af[25],_0xa8fdx17,_0xa8fdx16,_0x24af[30],JSON[_0x24af[31]](_0xa8fdx18));return _0xa8fdx15[_0x24af[29]](_0xa8fdx16)[_0x24af[32]](_0xa8fdx18)};return _0xa8fdx15[_0x24af[29]](304)[_0x24af[28]]()}}function respondWithFilteredResult(_0xa8fdx15,_0xa8fdx1b,_0xa8fdx17){return function(_0xa8fdx18){if(_0xa8fdx18){var _0xa8fdx1c=_0xa8fdx18[_0x24af[33]],_0xa8fdx1d=_0xa8fdx1b[_0x24af[34]],_0xa8fdx1e=_0xa8fdx1b[_0x24af[34]]+ _0xa8fdx1b[_0x24af[35]],_0xa8fdx16;if(_0xa8fdx1e>= _0xa8fdx1c){_0xa8fdx1e= _0xa8fdx1c;_0xa8fdx16= 200}else {_0xa8fdx16= 206};_0xa8fdx15[_0x24af[29]](_0xa8fdx16);logger[_0x24af[24]](_0x24af[22],_0xa8fdx17,_0xa8fdx16,_0x24af[36]);logger[_0x24af[26]](_0x24af[25],_0xa8fdx17,_0xa8fdx16,_0x24af[30],JSON[_0x24af[31]](_0xa8fdx18));return _0xa8fdx15[_0x24af[40]](_0x24af[37],_0xa8fdx1d+ _0x24af[38]+ _0xa8fdx1e+ _0x24af[39]+ _0xa8fdx1c)[_0x24af[32]](_0xa8fdx18)};return null}}function patchUpdates(_0xa8fdx20){return function(_0xa8fdx18){try{jsonpatch[_0x24af[41]](_0xa8fdx18,_0xa8fdx20,true)}catch(err){return BPromise[_0x24af[42]](err)};return _0xa8fdx18[_0x24af[43]]()}}function saveUpdates(_0xa8fdx22,_0xa8fdx16,_0xa8fdx17){return function(_0xa8fdx18){if(_0xa8fdx18){return _0xa8fdx18[_0x24af[46]](_0xa8fdx22)[_0x24af[45]](function(_0xa8fdx23){logger[_0x24af[24]](_0x24af[22],_0xa8fdx17,_0xa8fdx16,_0x24af[44]);logger[_0x24af[26]](_0x24af[25],_0xa8fdx17,_0xa8fdx16,_0x24af[44],JSON[_0x24af[31]](_0xa8fdx18));return _0xa8fdx23})};return null}}function removeEntity(_0xa8fdx15,_0xa8fdx16,_0xa8fdx17){return function(_0xa8fdx18){if(_0xa8fdx18){return _0xa8fdx18[_0x24af[48]]()[_0x24af[45]](function(){logger[_0x24af[24]](_0x24af[22],_0xa8fdx17,_0xa8fdx16,_0x24af[47]);logger[_0x24af[26]](_0x24af[25],_0xa8fdx17,_0xa8fdx16,_0x24af[47],JSON[_0x24af[31]](_0xa8fdx18));_0xa8fdx15[_0x24af[29]](204)[_0x24af[28]]()})}}}function handleEntityNotFound(_0xa8fdx15,_0xa8fdx16,_0xa8fdx17){return function(_0xa8fdx18){if(!_0xa8fdx18){logger[_0x24af[50]](_0x24af[22],_0xa8fdx17,404,_0x24af[49]);_0xa8fdx15[_0x24af[29]](404)[_0x24af[28]]();return null};return _0xa8fdx18}}function handleError(_0xa8fdx15,_0xa8fdx16,_0xa8fdx17){_0xa8fdx16= _0xa8fdx16|| 500;return function(_0xa8fdx27){logger[_0x24af[50]](_0x24af[22],_0xa8fdx17,_0xa8fdx16,JSON[_0x24af[31]](_0xa8fdx27));delete _0xa8fdx27[_0x24af[51]];_0xa8fdx15[_0x24af[29]](_0xa8fdx16)[_0x24af[52]](_0xa8fdx27)}}exports[_0x24af[53]]= function(_0xa8fdx28,_0xa8fdx15){var _0xa8fdx1b={},_0xa8fdx29={};_0xa8fdx29[_0x24af[54]]= _[_0x24af[57]](db[_0x24af[56]][_0x24af[55]]);_0xa8fdx29[_0x24af[58]]= _[_0x24af[57]](_0xa8fdx28[_0x24af[58]]);_0xa8fdx29[_0x24af[59]]= _[_0x24af[60]](_0xa8fdx29[_0x24af[54]],_0xa8fdx29[_0x24af[58]]);_0xa8fdx1b[_0x24af[61]]= _[_0x24af[60]](_0xa8fdx29[_0x24af[54]],qs[_0x24af[62]](_0xa8fdx28[_0x24af[58]][_0x24af[62]]));_0xa8fdx1b[_0x24af[61]]= (_0xa8fdx1b[_0x24af[61]][_0x24af[63]])?_0xa8fdx1b[_0x24af[61]]:_0xa8fdx29[_0x24af[54]];if(!_0xa8fdx28[_0x24af[58]][_0x24af[65]](_0x24af[64])){_0xa8fdx1b[_0x24af[35]]= qs[_0x24af[35]](_0xa8fdx28[_0x24af[58]][_0x24af[35]]);_0xa8fdx1b[_0x24af[34]]= qs[_0x24af[34]](_0xa8fdx28[_0x24af[58]][_0x24af[34]])};_0xa8fdx1b[_0x24af[66]]= qs[_0x24af[67]](_0xa8fdx28[_0x24af[58]][_0x24af[67]]);_0xa8fdx1b[_0x24af[68]]= qs[_0x24af[59]](_[_0x24af[69]](_0xa8fdx28[_0x24af[58]],_0xa8fdx29[_0x24af[59]]));if(_0xa8fdx28[_0x24af[58]][_0x24af[70]]){_0xa8fdx1b[_0x24af[68]]= _[_0x24af[73]](_0xa8fdx1b[_0x24af[68]],{$or:_[_0x24af[72]](_0xa8fdx1b[_0x24af[61]],function(_0xa8fdx2a){var _0xa8fdx2b={};_0xa8fdx2b[_0xa8fdx2a]= {$like:_0x24af[71]+ _0xa8fdx28[_0x24af[58]][_0x24af[70]]+ _0x24af[71]};return _0xa8fdx2b})})};_0xa8fdx1b= _[_0x24af[73]]({},_0xa8fdx1b,_0xa8fdx28[_0x24af[74]]);return db[_0x24af[56]][_0x24af[76]](_0xa8fdx1b)[_0x24af[45]](respondWithFilteredResult(_0xa8fdx15,_0xa8fdx1b,_0x24af[53]))[_0x24af[75]](handleError(_0xa8fdx15,null,_0x24af[53]))};exports[_0x24af[77]]= function(_0xa8fdx28,_0xa8fdx15){var _0xa8fdx1b={raw:true,where:{id:_0xa8fdx28[_0x24af[79]][_0x24af[78]]}},_0xa8fdx29={};_0xa8fdx29[_0x24af[54]]= _[_0x24af[57]](db[_0x24af[56]][_0x24af[55]]);_0xa8fdx29[_0x24af[58]]= _[_0x24af[57]](_0xa8fdx28[_0x24af[58]]);_0xa8fdx29[_0x24af[59]]= _[_0x24af[60]](_0xa8fdx29[_0x24af[54]],_0xa8fdx29[_0x24af[58]]);_0xa8fdx1b[_0x24af[61]]= _[_0x24af[60]](_0xa8fdx29[_0x24af[54]],qs[_0x24af[62]](_0xa8fdx28[_0x24af[58]][_0x24af[62]]));_0xa8fdx1b[_0x24af[61]]= (_0xa8fdx1b[_0x24af[61]][_0x24af[63]])?_0xa8fdx1b[_0x24af[61]]:_0xa8fdx29[_0x24af[54]];_0xa8fdx1b= _[_0x24af[73]]({},_0xa8fdx1b,_0xa8fdx28[_0x24af[74]]);return db[_0x24af[56]][_0x24af[80]](_0xa8fdx1b)[_0x24af[45]](handleEntityNotFound(_0xa8fdx15,null,_0x24af[77]))[_0x24af[45]](respondWithResult(_0xa8fdx15,null,_0x24af[77]))[_0x24af[75]](handleError(_0xa8fdx15,null,_0x24af[77]))};exports[_0x24af[81]]= function(_0xa8fdx28,_0xa8fdx15){return db[_0x24af[56]][_0x24af[81]](_0xa8fdx28[_0x24af[82]],{})[_0x24af[45]](respondWithResult(_0xa8fdx15,201,_0x24af[81]))[_0x24af[75]](handleError(_0xa8fdx15,null,_0x24af[81]))};exports[_0x24af[46]]= function(_0xa8fdx28,_0xa8fdx15){if(_0xa8fdx28[_0x24af[82]][_0x24af[78]]){delete _0xa8fdx28[_0x24af[82]][_0x24af[78]]};return db[_0x24af[56]][_0x24af[80]]({where:{id:_0xa8fdx28[_0x24af[79]][_0x24af[78]]}})[_0x24af[45]](handleEntityNotFound(_0xa8fdx15,null,_0x24af[46]))[_0x24af[45]](saveUpdates(_0xa8fdx28[_0x24af[82]],null,_0x24af[46]))[_0x24af[45]](respondWithResult(_0xa8fdx15,null,_0x24af[46]))[_0x24af[75]](handleError(_0xa8fdx15,null,_0x24af[46]))};exports[_0x24af[48]]= function(_0xa8fdx28,_0xa8fdx15){return db[_0x24af[56]][_0x24af[80]]({where:{id:_0xa8fdx28[_0x24af[79]][_0x24af[78]]}})[_0x24af[45]](handleEntityNotFound(_0xa8fdx15,null,_0x24af[48]))[_0x24af[45]](removeEntity(_0xa8fdx15,null,_0x24af[48]))[_0x24af[75]](handleError(_0xa8fdx15,null,_0x24af[48]))};exports[_0x24af[83]]= function(_0xa8fdx28,_0xa8fdx15){return db[_0x24af[56]][_0x24af[83]]()[_0x24af[45]](respondWithResult(_0xa8fdx15,null,_0x24af[83]))[_0x24af[75]](handleError(_0xa8fdx15,null,_0x24af[83]))}
\ No newline at end of file
index 5ac6f66..c522c28 100644 (file)
@@ -1 +1 @@
-var _0xc795=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xc795[0];var _=require(_0xc795[1]);var util=require(_0xc795[2]);var logger=require(_0xc795[4])(_0xc795[3]);var attributes=require(_0xc795[5]);module[_0xc795[6]]= function(_0xa083x5,_0xa083x6){return _0xa083x5[_0xc795[9]](_0xc795[7],attributes,{tableName:_0xc795[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x90db=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x90db[0];var _=require(_0x90db[1]);var util=require(_0x90db[2]);var logger=require(_0x90db[4])(_0x90db[3]);var attributes=require(_0x90db[5]);module[_0x90db[6]]= function(_0x5830x5,_0x5830x6){return _0x5830x5[_0x90db[9]](_0x90db[7],attributes,{tableName:_0x90db[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index db117f7..8955718 100644 (file)
@@ -1 +1 @@
-var _0x27ed=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x27ed[0];var _=require(_0x27ed[1]);var util=require(_0x27ed[2]);var moment=require(_0x27ed[3]);var BPromise=require(_0x27ed[4]);var db=require(_0x27ed[6])[_0x27ed[5]];var utils=require(_0x27ed[7]);var logger=require(_0x27ed[9])(_0x27ed[8]);var jayson=require(_0x27ed[10]);var client=jayson[_0x27ed[12]][_0x27ed[11]]({port:9002});function respondWithRpcPromise(_0x8762xb,_0x8762xc,_0x8762xd){return  new BPromise(function(_0x8762xe,_0x8762xf){return client[_0x27ed[25]](_0x8762xb,_0x8762xd)[_0x27ed[24]](function(_0x8762x11){logger[_0x27ed[17]](_0x27ed[13],_0x8762xc,_0x27ed[16]);logger[_0x27ed[20]](_0x27ed[18],_0x8762xc,_0x27ed[16],JSON[_0x27ed[19]](_0x8762x11));if(_0x8762x11[_0x27ed[14]]){if(_0x8762x11[_0x27ed[14]][_0x27ed[21]]=== 500){logger[_0x27ed[14]](_0x27ed[13],_0x8762xc,_0x8762x11[_0x27ed[14]][_0x27ed[22]]);return _0x8762xf(_0x8762x11[_0x27ed[14]][_0x27ed[22]])};logger[_0x27ed[14]](_0x27ed[13],_0x8762xc,_0x8762x11[_0x27ed[14]][_0x27ed[22]]);return _0x8762xe(_0x8762x11[_0x27ed[14]][_0x27ed[22]])}else {logger[_0x27ed[17]](_0x27ed[13],_0x8762xc,_0x27ed[16]);_0x8762xe(_0x8762x11[_0x27ed[23]][_0x27ed[22]])}})[_0x27ed[15]](function(_0x8762x10){logger[_0x27ed[14]](_0x27ed[13],_0x8762xc,_0x8762x10);_0x8762xf(_0x8762x10)})})}
\ No newline at end of file
+var _0x84d2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x84d2[0];var _=require(_0x84d2[1]);var util=require(_0x84d2[2]);var moment=require(_0x84d2[3]);var BPromise=require(_0x84d2[4]);var db=require(_0x84d2[6])[_0x84d2[5]];var utils=require(_0x84d2[7]);var logger=require(_0x84d2[9])(_0x84d2[8]);var jayson=require(_0x84d2[10]);var client=jayson[_0x84d2[12]][_0x84d2[11]]({port:9002});function respondWithRpcPromise(_0xf185xb,_0xf185xc,_0xf185xd){return  new BPromise(function(_0xf185xe,_0xf185xf){return client[_0x84d2[25]](_0xf185xb,_0xf185xd)[_0x84d2[24]](function(_0xf185x11){logger[_0x84d2[17]](_0x84d2[13],_0xf185xc,_0x84d2[16]);logger[_0x84d2[20]](_0x84d2[18],_0xf185xc,_0x84d2[16],JSON[_0x84d2[19]](_0xf185x11));if(_0xf185x11[_0x84d2[14]]){if(_0xf185x11[_0x84d2[14]][_0x84d2[21]]=== 500){logger[_0x84d2[14]](_0x84d2[13],_0xf185xc,_0xf185x11[_0x84d2[14]][_0x84d2[22]]);return _0xf185xf(_0xf185x11[_0x84d2[14]][_0x84d2[22]])};logger[_0x84d2[14]](_0x84d2[13],_0xf185xc,_0xf185x11[_0x84d2[14]][_0x84d2[22]]);return _0xf185xe(_0xf185x11[_0x84d2[14]][_0x84d2[22]])}else {logger[_0x84d2[17]](_0x84d2[13],_0xf185xc,_0x84d2[16]);_0xf185xe(_0xf185x11[_0x84d2[23]][_0x84d2[22]])}})[_0x84d2[15]](function(_0xf185x10){logger[_0x84d2[14]](_0x84d2[13],_0xf185xc,_0xf185x10);_0xf185xf(_0xf185x10)})})}
\ No newline at end of file
index a3fe1d1..19a6ea6 100644 (file)
@@ -1 +1 @@
-var _0xb22d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xb22d[0];var multer=require(_0xb22d[1]);var util=require(_0xb22d[2]);var path=require(_0xb22d[3]);var express=require(_0xb22d[4]);var router=express.Router();var auth=require(_0xb22d[5]);var config=require(_0xb22d[6]);var controller=require(_0xb22d[7]);router[_0xb22d[11]](_0xb22d[8],auth[_0xb22d[9]](),controller[_0xb22d[10]]);router[_0xb22d[11]](_0xb22d[12],auth[_0xb22d[9]](),controller[_0xb22d[13]]);router[_0xb22d[11]](_0xb22d[14],auth[_0xb22d[9]](),controller[_0xb22d[15]]);router[_0xb22d[11]](_0xb22d[16],auth[_0xb22d[9]](),controller[_0xb22d[17]]);router[_0xb22d[19]](_0xb22d[8],auth[_0xb22d[9]](),controller[_0xb22d[18]]);router[_0xb22d[19]](_0xb22d[14],auth[_0xb22d[9]](),controller[_0xb22d[20]]);router[_0xb22d[19]](_0xb22d[16],auth[_0xb22d[9]](),controller[_0xb22d[21]]);router[_0xb22d[23]](_0xb22d[12],auth[_0xb22d[9]](),controller[_0xb22d[22]]);router[_0xb22d[25]](_0xb22d[12],auth[_0xb22d[9]](),controller[_0xb22d[24]]);router[_0xb22d[25]](_0xb22d[14],auth[_0xb22d[9]](),controller[_0xb22d[26]]);router[_0xb22d[25]](_0xb22d[16],auth[_0xb22d[9]](),controller[_0xb22d[27]]);module[_0xb22d[28]]= router
\ No newline at end of file
+var _0x57d8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x57d8[0];var multer=require(_0x57d8[1]);var util=require(_0x57d8[2]);var path=require(_0x57d8[3]);var express=require(_0x57d8[4]);var router=express.Router();var auth=require(_0x57d8[5]);var config=require(_0x57d8[6]);var controller=require(_0x57d8[7]);router[_0x57d8[11]](_0x57d8[8],auth[_0x57d8[9]](),controller[_0x57d8[10]]);router[_0x57d8[11]](_0x57d8[12],auth[_0x57d8[9]](),controller[_0x57d8[13]]);router[_0x57d8[11]](_0x57d8[14],auth[_0x57d8[9]](),controller[_0x57d8[15]]);router[_0x57d8[11]](_0x57d8[16],auth[_0x57d8[9]](),controller[_0x57d8[17]]);router[_0x57d8[19]](_0x57d8[8],auth[_0x57d8[9]](),controller[_0x57d8[18]]);router[_0x57d8[19]](_0x57d8[14],auth[_0x57d8[9]](),controller[_0x57d8[20]]);router[_0x57d8[19]](_0x57d8[16],auth[_0x57d8[9]](),controller[_0x57d8[21]]);router[_0x57d8[23]](_0x57d8[12],auth[_0x57d8[9]](),controller[_0x57d8[22]]);router[_0x57d8[25]](_0x57d8[12],auth[_0x57d8[9]](),controller[_0x57d8[24]]);router[_0x57d8[25]](_0x57d8[14],auth[_0x57d8[9]](),controller[_0x57d8[26]]);router[_0x57d8[25]](_0x57d8[16],auth[_0x57d8[9]](),controller[_0x57d8[27]]);module[_0x57d8[28]]= router
\ No newline at end of file
index 2b68b33..7094047 100644 (file)
@@ -1 +1 @@
-var _0x7889=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0x7889[0];var Sequelize=require(_0x7889[1]);module[_0x7889[2]]= {name:{type:Sequelize[_0x7889[3]],unique:_0x7889[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0x7889[3]]},timeout:{type:Sequelize[_0x7889[5]],validate:{min:1}},strategy:{type:Sequelize.ENUM(_0x7889[6],_0x7889[7],_0x7889[8])},lastAgent:{type:Sequelize[_0x7889[5]],defaultValue:0}}
\ No newline at end of file
+var _0x1e87=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0x1e87[0];var Sequelize=require(_0x1e87[1]);module[_0x1e87[2]]= {name:{type:Sequelize[_0x1e87[3]],unique:_0x1e87[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0x1e87[3]]},timeout:{type:Sequelize[_0x1e87[5]],validate:{min:1}},strategy:{type:Sequelize.ENUM(_0x1e87[6],_0x1e87[7],_0x1e87[8])},lastAgent:{type:Sequelize[_0x1e87[5]],defaultValue:0}}
\ No newline at end of file
index 22087b4..7e27819 100644 (file)
@@ -1 +1 @@
-var _0xa342=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0xa342[0];var jsonpatch=require(_0xa342[1]);var rp=require(_0xa342[2]);var moment=require(_0xa342[3]);var BPromise=require(_0xa342[4]);var util=require(_0xa342[5]);var path=require(_0xa342[6]);var sox=require(_0xa342[7]);var ejs=require(_0xa342[8]);var fs=require(_0xa342[9]);var _=require(_0xa342[10]);var squel=require(_0xa342[11]);var crypto=require(_0xa342[12]);var jsforce=require(_0xa342[13]);var toCsv=require(_0xa342[14]);var qs=require(_0xa342[15]);var logger=require(_0xa342[17])(_0xa342[16]);var utils=require(_0xa342[18]);var config=require(_0xa342[19]);var db=require(_0xa342[21])[_0xa342[20]];function respondWithStatusCode(_0xac60x15,_0xac60x16,_0xac60x17){_0xac60x16= _0xac60x16|| 204;return function(_0xac60x18){if(_0xac60x18){logger[_0xa342[24]](_0xa342[22],_0xac60x17,_0xac60x16,_0xa342[23]);logger[_0xa342[26]](_0xa342[25],_0xac60x17,_0xac60x16,_0xa342[23]);return _0xac60x15[_0xa342[27]](_0xac60x16)};return _0xac60x15[_0xa342[29]](304)[_0xa342[28]]()}}function respondWithResult(_0xac60x15,_0xac60x16,_0xac60x17){_0xac60x16= _0xac60x16|| 200;return function(_0xac60x18){if(_0xac60x18){logger[_0xa342[24]](_0xa342[22],_0xac60x17,_0xac60x16,_0xa342[30]);logger[_0xa342[26]](_0xa342[25],_0xac60x17,_0xac60x16,_0xa342[30],JSON[_0xa342[31]](_0xac60x18));return _0xac60x15[_0xa342[29]](_0xac60x16)[_0xa342[32]](_0xac60x18)};return _0xac60x15[_0xa342[29]](304)[_0xa342[28]]()}}function respondWithFilteredResult(_0xac60x15,_0xac60x1b,_0xac60x17){return function(_0xac60x18){if(_0xac60x18){var _0xac60x1c=_0xac60x18[_0xa342[33]],_0xac60x1d=_0xac60x1b[_0xa342[34]],_0xac60x1e=_0xac60x1b[_0xa342[34]]+ _0xac60x1b[_0xa342[35]],_0xac60x16;if(_0xac60x1e>= _0xac60x1c){_0xac60x1e= _0xac60x1c;_0xac60x16= 200}else {_0xac60x16= 206};_0xac60x15[_0xa342[29]](_0xac60x16);logger[_0xa342[24]](_0xa342[22],_0xac60x17,_0xac60x16,_0xa342[36]);logger[_0xa342[26]](_0xa342[25],_0xac60x17,_0xac60x16,_0xa342[30],JSON[_0xa342[31]](_0xac60x18));return _0xac60x15[_0xa342[40]](_0xa342[37],_0xac60x1d+ _0xa342[38]+ _0xac60x1e+ _0xa342[39]+ _0xac60x1c)[_0xa342[32]](_0xac60x18)};return null}}function patchUpdates(_0xac60x20){return function(_0xac60x18){try{jsonpatch[_0xa342[41]](_0xac60x18,_0xac60x20,true)}catch(err){return BPromise[_0xa342[42]](err)};return _0xac60x18[_0xa342[43]]()}}function saveUpdates(_0xac60x22,_0xac60x16,_0xac60x17){return function(_0xac60x18){if(_0xac60x18){return _0xac60x18[_0xa342[46]](_0xac60x22)[_0xa342[45]](function(_0xac60x23){logger[_0xa342[24]](_0xa342[22],_0xac60x17,_0xac60x16,_0xa342[44]);logger[_0xa342[26]](_0xa342[25],_0xac60x17,_0xac60x16,_0xa342[44],JSON[_0xa342[31]](_0xac60x18));return _0xac60x23})};return null}}function removeEntity(_0xac60x15,_0xac60x16,_0xac60x17){return function(_0xac60x18){if(_0xac60x18){return _0xac60x18[_0xa342[48]]()[_0xa342[45]](function(){logger[_0xa342[24]](_0xa342[22],_0xac60x17,_0xac60x16,_0xa342[47]);logger[_0xa342[26]](_0xa342[25],_0xac60x17,_0xac60x16,_0xa342[47],JSON[_0xa342[31]](_0xac60x18));_0xac60x15[_0xa342[29]](204)[_0xa342[28]]()})}}}function handleEntityNotFound(_0xac60x15,_0xac60x16,_0xac60x17){return function(_0xac60x18){if(!_0xac60x18){logger[_0xa342[50]](_0xa342[22],_0xac60x17,404,_0xa342[49]);_0xac60x15[_0xa342[29]](404)[_0xa342[28]]();return null};return _0xac60x18}}function handleError(_0xac60x15,_0xac60x16,_0xac60x17){_0xac60x16= _0xac60x16|| 500;return function(_0xac60x27){logger[_0xa342[50]](_0xa342[22],_0xac60x17,_0xac60x16,JSON[_0xa342[31]](_0xac60x27));delete _0xac60x27[_0xa342[51]];_0xac60x15[_0xa342[29]](_0xac60x16)[_0xa342[52]](_0xac60x27)}}exports[_0xa342[53]]= function(_0xac60x28,_0xac60x15){var _0xac60x1b={},_0xac60x29={};_0xac60x29[_0xa342[54]]= _[_0xa342[57]](db[_0xa342[56]][_0xa342[55]]);_0xac60x29[_0xa342[58]]= _[_0xa342[57]](_0xac60x28[_0xa342[58]]);_0xac60x29[_0xa342[59]]= _[_0xa342[60]](_0xac60x29[_0xa342[54]],_0xac60x29[_0xa342[58]]);_0xac60x1b[_0xa342[61]]= _[_0xa342[60]](_0xac60x29[_0xa342[54]],qs[_0xa342[62]](_0xac60x28[_0xa342[58]][_0xa342[62]]));_0xac60x1b[_0xa342[61]]= (_0xac60x1b[_0xa342[61]][_0xa342[63]])?_0xac60x1b[_0xa342[61]]:_0xac60x29[_0xa342[54]];if(!_0xac60x28[_0xa342[58]][_0xa342[65]](_0xa342[64])){_0xac60x1b[_0xa342[35]]= qs[_0xa342[35]](_0xac60x28[_0xa342[58]][_0xa342[35]]);_0xac60x1b[_0xa342[34]]= qs[_0xa342[34]](_0xac60x28[_0xa342[58]][_0xa342[34]])};_0xac60x1b[_0xa342[66]]= qs[_0xa342[67]](_0xac60x28[_0xa342[58]][_0xa342[67]]);_0xac60x1b[_0xa342[68]]= qs[_0xa342[59]](_[_0xa342[69]](_0xac60x28[_0xa342[58]],_0xac60x29[_0xa342[59]]));if(_0xac60x28[_0xa342[58]][_0xa342[70]]){_0xac60x1b[_0xa342[68]]= _[_0xa342[73]](_0xac60x1b[_0xa342[68]],{$or:_[_0xa342[72]](_0xac60x1b[_0xa342[61]],function(_0xac60x2a){var _0xac60x2b={};_0xac60x2b[_0xac60x2a]= {$like:_0xa342[71]+ _0xac60x28[_0xa342[58]][_0xa342[70]]+ _0xa342[71]};return _0xac60x2b})})};_0xac60x1b= _[_0xa342[73]]({},_0xac60x1b,_0xac60x28[_0xa342[74]]);return db[_0xa342[56]][_0xa342[76]](_0xac60x1b)[_0xa342[45]](respondWithFilteredResult(_0xac60x15,_0xac60x1b,_0xa342[53]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[53]))};exports[_0xa342[77]]= function(_0xac60x28,_0xac60x15){var _0xac60x1b={raw:true,where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}},_0xac60x29={};_0xac60x29[_0xa342[54]]= _[_0xa342[57]](db[_0xa342[56]][_0xa342[55]]);_0xac60x29[_0xa342[58]]= _[_0xa342[57]](_0xac60x28[_0xa342[58]]);_0xac60x29[_0xa342[59]]= _[_0xa342[60]](_0xac60x29[_0xa342[54]],_0xac60x29[_0xa342[58]]);_0xac60x1b[_0xa342[61]]= _[_0xa342[60]](_0xac60x29[_0xa342[54]],qs[_0xa342[62]](_0xac60x28[_0xa342[58]][_0xa342[62]]));_0xac60x1b[_0xa342[61]]= (_0xac60x1b[_0xa342[61]][_0xa342[63]])?_0xac60x1b[_0xa342[61]]:_0xac60x29[_0xa342[54]];_0xac60x1b= _[_0xa342[73]]({},_0xac60x1b,_0xac60x28[_0xa342[74]]);return db[_0xa342[56]][_0xa342[80]](_0xac60x1b)[_0xa342[45]](handleEntityNotFound(_0xac60x15,null,_0xa342[77]))[_0xa342[45]](respondWithResult(_0xac60x15,null,_0xa342[77]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[77]))};exports[_0xa342[81]]= function(_0xac60x28,_0xac60x15){return db[_0xa342[56]][_0xa342[81]](_0xac60x28[_0xa342[82]],{})[_0xa342[45]](respondWithResult(_0xac60x15,201,_0xa342[81]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[81]))};exports[_0xa342[46]]= function(_0xac60x28,_0xac60x15){if(_0xac60x28[_0xa342[82]][_0xa342[78]]){delete _0xac60x28[_0xa342[82]][_0xa342[78]]};return db[_0xa342[56]][_0xa342[80]]({where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}})[_0xa342[45]](handleEntityNotFound(_0xac60x15,null,_0xa342[46]))[_0xa342[45]](saveUpdates(_0xac60x28[_0xa342[82]],null,_0xa342[46]))[_0xa342[45]](respondWithResult(_0xac60x15,null,_0xa342[46]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[46]))};exports[_0xa342[48]]= function(_0xac60x28,_0xac60x15){return db[_0xa342[56]][_0xa342[80]]({where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}})[_0xa342[45]](handleEntityNotFound(_0xac60x15,null,_0xa342[48]))[_0xa342[45]](removeEntity(_0xac60x15,null,_0xa342[48]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[48]))};exports[_0xa342[83]]= function(_0xac60x28,_0xac60x18,_0xac60x2c){var _0xac60x1b={};var _0xac60x29={};var _0xac60x2d;var _0xac60x1c;return db[_0xa342[56]][_0xa342[85]]({where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}})[_0xa342[45]](handleEntityNotFound(_0xac60x18,null,_0xa342[83]))[_0xa342[45]](function(_0xac60x18){if(_0xac60x18){_0xac60x2d= _0xac60x18;_0xac60x29[_0xa342[54]]= _[_0xa342[57]](db[_0xa342[84]][_0xa342[55]]);_0xac60x29[_0xa342[58]]= _[_0xa342[57]](_0xac60x28[_0xa342[58]]);_0xac60x29[_0xa342[59]]= _[_0xa342[60]](_0xac60x29[_0xa342[54]],_0xac60x29[_0xa342[58]]);_0xac60x1b[_0xa342[61]]= _[_0xa342[60]](_0xac60x29[_0xa342[54]],qs[_0xa342[62]](_0xac60x28[_0xa342[58]][_0xa342[62]]));_0xac60x1b[_0xa342[61]]= (_0xac60x1b[_0xa342[61]][_0xa342[63]])?_0xac60x1b[_0xa342[61]]:_0xac60x29[_0xa342[54]];_0xac60x1b[_0xa342[66]]= qs[_0xa342[67]](_0xac60x28[_0xa342[58]][_0xa342[67]]);_0xac60x1b[_0xa342[68]]= qs[_0xa342[59]](_[_0xa342[69]](_0xac60x28[_0xa342[58]],_0xac60x29[_0xa342[59]]));if(_0xac60x28[_0xa342[58]][_0xa342[70]]){_0xac60x1b[_0xa342[68]]= _[_0xa342[73]](_0xac60x1b[_0xa342[68]],{$or:_[_0xa342[72]](_0xac60x1b[_0xa342[61]],function(_0xac60x2a){var _0xac60x2b={};_0xac60x2b[_0xac60x2a]= {$like:_0xa342[71]+ _0xac60x28[_0xa342[58]][_0xa342[70]]+ _0xa342[71]};return _0xac60x2b})})};_0xac60x1b= _[_0xa342[73]]({},_0xac60x1b,_0xac60x28[_0xa342[74]]);return _0xac60x2d[_0xa342[83]](_0xac60x1b)}})[_0xa342[45]](function(_0xac60x2f){if(_0xac60x2f){_0xac60x1c= _0xac60x2f[_0xa342[63]];if(!_0xac60x28[_0xa342[58]][_0xa342[65]](_0xa342[64])){_0xac60x1b[_0xa342[35]]= qs[_0xa342[35]](_0xac60x28[_0xa342[58]][_0xa342[35]]);_0xac60x1b[_0xa342[34]]= qs[_0xa342[34]](_0xac60x28[_0xa342[58]][_0xa342[34]])};return _0xac60x2d[_0xa342[83]](_0xac60x1b)}})[_0xa342[45]](function(_0xac60x2e){return _0xac60x2e?{count:_0xac60x1c,rows:_0xac60x2e}:null})[_0xa342[45]](respondWithResult(_0xac60x18,null,_0xa342[83]))[_0xa342[75]](handleError(_0xac60x18,null,_0xa342[83]))};exports[_0xa342[86]]= function(_0xac60x28,_0xac60x15,_0xac60x2c){var _0xac60x30=[];var _0xac60x31;return db[_0xa342[84]][_0xa342[93]]({where:{id:_0xac60x28[_0xa342[82]][_0xa342[87]]},attributes:[_0xa342[78]],include:[{model:db[_0xa342[92]],as:_0xa342[90],attributes:[_0xa342[78]],raw:true}]})[_0xa342[45]](function(_0xac60x34){if(_0xac60x34){for(var _0xac60x35=0;_0xac60x35< _0xac60x34[_0xa342[63]];_0xac60x35+= 1){for(var _0xac60x36=0;_0xac60x36< _0xac60x34[_0xac60x35][_0xa342[90]][_0xa342[63]];_0xac60x36+= 1){_0xac60x30= _[_0xa342[91]](_0xac60x30,[_0xac60x34[_0xac60x35][_0xa342[90]][_0xac60x36][_0xa342[78]]])}};return _0xac60x30}})[_0xa342[45]](function(_0xac60x33){if(_0xac60x33){return db[_0xa342[56]][_0xa342[80]]({where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}})}})[_0xa342[45]](function(_0xac60x32){if(_0xac60x32){_0xac60x31= _0xac60x32;return _0xac60x31[_0xa342[89]](_0xac60x30,{penalty:_0xac60x28[_0xa342[82]][_0xa342[88]]})}})[_0xa342[45]](function(_0xac60x18){if(_0xac60x18){return _0xac60x31[_0xa342[86]](_0xac60x28[_0xa342[82]][_0xa342[87]])}})[_0xa342[45]](handleEntityNotFound(_0xac60x15,null,_0xa342[86]))[_0xa342[45]](respondWithStatusCode(_0xac60x15,null,_0xa342[86]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[86]))};exports[_0xa342[94]]= function(_0xac60x28,_0xac60x15,_0xac60x2c){var _0xac60x30=[];var _0xac60x31;return db[_0xa342[84]][_0xa342[93]]({where:{id:_0xac60x28[_0xa342[58]][_0xa342[87]]},attributes:[_0xa342[78]],include:[{model:db[_0xa342[92]],as:_0xa342[90],attributes:[_0xa342[78]],raw:true}]})[_0xa342[45]](function(_0xac60x34){if(_0xac60x34){for(var _0xac60x35=0;_0xac60x35< _0xac60x34[_0xa342[63]];_0xac60x35+= 1){for(var _0xac60x36=0;_0xac60x36< _0xac60x34[_0xac60x35][_0xa342[90]][_0xa342[63]];_0xac60x36+= 1){_0xac60x30= _[_0xa342[91]](_0xac60x30,[_0xac60x34[_0xac60x35][_0xa342[90]][_0xac60x36][_0xa342[78]]])}};return _0xac60x30}})[_0xa342[45]](function(_0xac60x33){if(_0xac60x33){return db[_0xa342[56]][_0xa342[80]]({where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}})}})[_0xa342[45]](function(_0xac60x32){if(_0xac60x32){_0xac60x31= _0xac60x32;return _0xac60x31[_0xa342[95]](_0xac60x30)}})[_0xa342[45]](function(_0xac60x18){if(_0xac60x31){return _0xac60x31[_0xa342[94]](_0xac60x28[_0xa342[58]][_0xa342[87]])}})[_0xa342[45]](handleEntityNotFound(_0xac60x15,null,_0xa342[94]))[_0xa342[45]](respondWithStatusCode(_0xac60x15,null,_0xa342[94]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[94]))};exports[_0xa342[89]]= function(_0xac60x28,_0xac60x15,_0xac60x2c){return db[_0xa342[56]][_0xa342[80]]({where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}})[_0xa342[45]](handleEntityNotFound(_0xac60x15,null,_0xa342[89]))[_0xa342[45]](function(_0xac60x18){if(_0xac60x18){return _0xac60x18[_0xa342[89]](_0xac60x28[_0xa342[82]][_0xa342[87]],_[_0xa342[96]](_0xac60x28[_0xa342[82]],[_0xa342[87],_0xa342[78]])|| {})};return null})[_0xa342[45]](respondWithResult(_0xac60x15,null,_0xa342[89]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[89]))};exports[_0xa342[95]]= function(_0xac60x28,_0xac60x15,_0xac60x2c){var _0xac60x2f;return db[_0xa342[56]][_0xa342[80]]({where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}})[_0xa342[45]](handleEntityNotFound(_0xac60x15,null,_0xa342[95]))[_0xa342[45]](function(_0xac60x18){if(_0xac60x18){return _0xac60x18[_0xa342[95]](_0xac60x28[_0xa342[58]][_0xa342[87]])}})[_0xa342[45]](respondWithStatusCode(_0xac60x15,null,_0xa342[95]))[_0xa342[75]](handleError(_0xac60x15,null,_0xa342[95]))};exports[_0xa342[97]]= function(_0xac60x28,_0xac60x18,_0xac60x2c){var _0xac60x1b={};var _0xac60x29={};var _0xac60x2d;var _0xac60x1c;return db[_0xa342[56]][_0xa342[85]]({where:{id:_0xac60x28[_0xa342[79]][_0xa342[78]]}})[_0xa342[45]](handleEntityNotFound(_0xac60x18,null,_0xa342[97]))[_0xa342[45]](function(_0xac60x18){if(_0xac60x18){_0xac60x2d= _0xac60x18;_0xac60x29[_0xa342[54]]= _[_0xa342[57]](db[_0xa342[92]][_0xa342[55]]);_0xac60x29[_0xa342[58]]= _[_0xa342[57]](_0xac60x28[_0xa342[58]]);_0xac60x29[_0xa342[59]]= _[_0xa342[60]](_0xac60x29[_0xa342[54]],_0xac60x29[_0xa342[58]]);_0xac60x1b[_0xa342[61]]= _[_0xa342[60]](_0xac60x29[_0xa342[54]],qs[_0xa342[62]](_0xac60x28[_0xa342[58]][_0xa342[62]]));_0xac60x1b[_0xa342[61]]= (_0xac60x1b[_0xa342[61]][_0xa342[63]])?_0xac60x1b[_0xa342[61]]:_0xac60x29[_0xa342[54]];_0xac60x1b[_0xa342[66]]= qs[_0xa342[67]](_0xac60x28[_0xa342[58]][_0xa342[67]]);_0xac60x1b[_0xa342[68]]= qs[_0xa342[59]](_[_0xa342[69]](_0xac60x28[_0xa342[58]],_0xac60x29[_0xa342[59]]));if(_0xac60x28[_0xa342[58]][_0xa342[70]]){_0xac60x1b[_0xa342[68]]= _[_0xa342[73]](_0xac60x1b[_0xa342[68]],{$or:_[_0xa342[72]](_0xac60x1b[_0xa342[61]],function(_0xac60x2a){var _0xac60x2b={};_0xac60x2b[_0xac60x2a]= {$like:_0xa342[71]+ _0xac60x28[_0xa342[58]][_0xa342[70]]+ _0xa342[71]};return _0xac60x2b})})};_0xac60x1b= _[_0xa342[73]]({},_0xac60x1b,_0xac60x28[_0xa342[74]]);return _0xac60x2d[_0xa342[97]](_0xac60x1b)}})[_0xa342[45]](function(_0xac60x2f){if(_0xac60x2f){_0xac60x1c= _0xac60x2f[_0xa342[63]];if(!_0xac60x28[_0xa342[58]][_0xa342[65]](_0xa342[64])){_0xac60x1b[_0xa342[35]]= qs[_0xa342[35]](_0xac60x28[_0xa342[58]][_0xa342[35]]);_0xac60x1b[_0xa342[34]]= qs[_0xa342[34]](_0xac60x28[_0xa342[58]][_0xa342[34]])};return _0xac60x2d[_0xa342[97]](_0xac60x1b)}})[_0xa342[45]](function(_0xac60x2e){return _0xac60x2e?{count:_0xac60x1c,rows:_0xac60x2e}:null})[_0xa342[45]](respondWithResult(_0xac60x18,null,_0xa342[97]))[_0xa342[75]](handleError(_0xac60x18,null,_0xa342[97]))}
\ No newline at end of file
+var _0x54ab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0x54ab[0];var jsonpatch=require(_0x54ab[1]);var rp=require(_0x54ab[2]);var moment=require(_0x54ab[3]);var BPromise=require(_0x54ab[4]);var util=require(_0x54ab[5]);var path=require(_0x54ab[6]);var sox=require(_0x54ab[7]);var ejs=require(_0x54ab[8]);var fs=require(_0x54ab[9]);var _=require(_0x54ab[10]);var squel=require(_0x54ab[11]);var crypto=require(_0x54ab[12]);var jsforce=require(_0x54ab[13]);var toCsv=require(_0x54ab[14]);var qs=require(_0x54ab[15]);var logger=require(_0x54ab[17])(_0x54ab[16]);var utils=require(_0x54ab[18]);var config=require(_0x54ab[19]);var db=require(_0x54ab[21])[_0x54ab[20]];function respondWithStatusCode(_0x1dfbx15,_0x1dfbx16,_0x1dfbx17){_0x1dfbx16= _0x1dfbx16|| 204;return function(_0x1dfbx18){if(_0x1dfbx18){logger[_0x54ab[24]](_0x54ab[22],_0x1dfbx17,_0x1dfbx16,_0x54ab[23]);logger[_0x54ab[26]](_0x54ab[25],_0x1dfbx17,_0x1dfbx16,_0x54ab[23]);return _0x1dfbx15[_0x54ab[27]](_0x1dfbx16)};return _0x1dfbx15[_0x54ab[29]](304)[_0x54ab[28]]()}}function respondWithResult(_0x1dfbx15,_0x1dfbx16,_0x1dfbx17){_0x1dfbx16= _0x1dfbx16|| 200;return function(_0x1dfbx18){if(_0x1dfbx18){logger[_0x54ab[24]](_0x54ab[22],_0x1dfbx17,_0x1dfbx16,_0x54ab[30]);logger[_0x54ab[26]](_0x54ab[25],_0x1dfbx17,_0x1dfbx16,_0x54ab[30],JSON[_0x54ab[31]](_0x1dfbx18));return _0x1dfbx15[_0x54ab[29]](_0x1dfbx16)[_0x54ab[32]](_0x1dfbx18)};return _0x1dfbx15[_0x54ab[29]](304)[_0x54ab[28]]()}}function respondWithFilteredResult(_0x1dfbx15,_0x1dfbx1b,_0x1dfbx17){return function(_0x1dfbx18){if(_0x1dfbx18){var _0x1dfbx1c=_0x1dfbx18[_0x54ab[33]],_0x1dfbx1d=_0x1dfbx1b[_0x54ab[34]],_0x1dfbx1e=_0x1dfbx1b[_0x54ab[34]]+ _0x1dfbx1b[_0x54ab[35]],_0x1dfbx16;if(_0x1dfbx1e>= _0x1dfbx1c){_0x1dfbx1e= _0x1dfbx1c;_0x1dfbx16= 200}else {_0x1dfbx16= 206};_0x1dfbx15[_0x54ab[29]](_0x1dfbx16);logger[_0x54ab[24]](_0x54ab[22],_0x1dfbx17,_0x1dfbx16,_0x54ab[36]);logger[_0x54ab[26]](_0x54ab[25],_0x1dfbx17,_0x1dfbx16,_0x54ab[30],JSON[_0x54ab[31]](_0x1dfbx18));return _0x1dfbx15[_0x54ab[40]](_0x54ab[37],_0x1dfbx1d+ _0x54ab[38]+ _0x1dfbx1e+ _0x54ab[39]+ _0x1dfbx1c)[_0x54ab[32]](_0x1dfbx18)};return null}}function patchUpdates(_0x1dfbx20){return function(_0x1dfbx18){try{jsonpatch[_0x54ab[41]](_0x1dfbx18,_0x1dfbx20,true)}catch(err){return BPromise[_0x54ab[42]](err)};return _0x1dfbx18[_0x54ab[43]]()}}function saveUpdates(_0x1dfbx22,_0x1dfbx16,_0x1dfbx17){return function(_0x1dfbx18){if(_0x1dfbx18){return _0x1dfbx18[_0x54ab[46]](_0x1dfbx22)[_0x54ab[45]](function(_0x1dfbx23){logger[_0x54ab[24]](_0x54ab[22],_0x1dfbx17,_0x1dfbx16,_0x54ab[44]);logger[_0x54ab[26]](_0x54ab[25],_0x1dfbx17,_0x1dfbx16,_0x54ab[44],JSON[_0x54ab[31]](_0x1dfbx18));return _0x1dfbx23})};return null}}function removeEntity(_0x1dfbx15,_0x1dfbx16,_0x1dfbx17){return function(_0x1dfbx18){if(_0x1dfbx18){return _0x1dfbx18[_0x54ab[48]]()[_0x54ab[45]](function(){logger[_0x54ab[24]](_0x54ab[22],_0x1dfbx17,_0x1dfbx16,_0x54ab[47]);logger[_0x54ab[26]](_0x54ab[25],_0x1dfbx17,_0x1dfbx16,_0x54ab[47],JSON[_0x54ab[31]](_0x1dfbx18));_0x1dfbx15[_0x54ab[29]](204)[_0x54ab[28]]()})}}}function handleEntityNotFound(_0x1dfbx15,_0x1dfbx16,_0x1dfbx17){return function(_0x1dfbx18){if(!_0x1dfbx18){logger[_0x54ab[50]](_0x54ab[22],_0x1dfbx17,404,_0x54ab[49]);_0x1dfbx15[_0x54ab[29]](404)[_0x54ab[28]]();return null};return _0x1dfbx18}}function handleError(_0x1dfbx15,_0x1dfbx16,_0x1dfbx17){_0x1dfbx16= _0x1dfbx16|| 500;return function(_0x1dfbx27){logger[_0x54ab[50]](_0x54ab[22],_0x1dfbx17,_0x1dfbx16,JSON[_0x54ab[31]](_0x1dfbx27));delete _0x1dfbx27[_0x54ab[51]];_0x1dfbx15[_0x54ab[29]](_0x1dfbx16)[_0x54ab[52]](_0x1dfbx27)}}exports[_0x54ab[53]]= function(_0x1dfbx28,_0x1dfbx15){var _0x1dfbx1b={},_0x1dfbx29={};_0x1dfbx29[_0x54ab[54]]= _[_0x54ab[57]](db[_0x54ab[56]][_0x54ab[55]]);_0x1dfbx29[_0x54ab[58]]= _[_0x54ab[57]](_0x1dfbx28[_0x54ab[58]]);_0x1dfbx29[_0x54ab[59]]= _[_0x54ab[60]](_0x1dfbx29[_0x54ab[54]],_0x1dfbx29[_0x54ab[58]]);_0x1dfbx1b[_0x54ab[61]]= _[_0x54ab[60]](_0x1dfbx29[_0x54ab[54]],qs[_0x54ab[62]](_0x1dfbx28[_0x54ab[58]][_0x54ab[62]]));_0x1dfbx1b[_0x54ab[61]]= (_0x1dfbx1b[_0x54ab[61]][_0x54ab[63]])?_0x1dfbx1b[_0x54ab[61]]:_0x1dfbx29[_0x54ab[54]];if(!_0x1dfbx28[_0x54ab[58]][_0x54ab[65]](_0x54ab[64])){_0x1dfbx1b[_0x54ab[35]]= qs[_0x54ab[35]](_0x1dfbx28[_0x54ab[58]][_0x54ab[35]]);_0x1dfbx1b[_0x54ab[34]]= qs[_0x54ab[34]](_0x1dfbx28[_0x54ab[58]][_0x54ab[34]])};_0x1dfbx1b[_0x54ab[66]]= qs[_0x54ab[67]](_0x1dfbx28[_0x54ab[58]][_0x54ab[67]]);_0x1dfbx1b[_0x54ab[68]]= qs[_0x54ab[59]](_[_0x54ab[69]](_0x1dfbx28[_0x54ab[58]],_0x1dfbx29[_0x54ab[59]]));if(_0x1dfbx28[_0x54ab[58]][_0x54ab[70]]){_0x1dfbx1b[_0x54ab[68]]= _[_0x54ab[73]](_0x1dfbx1b[_0x54ab[68]],{$or:_[_0x54ab[72]](_0x1dfbx1b[_0x54ab[61]],function(_0x1dfbx2a){var _0x1dfbx2b={};_0x1dfbx2b[_0x1dfbx2a]= {$like:_0x54ab[71]+ _0x1dfbx28[_0x54ab[58]][_0x54ab[70]]+ _0x54ab[71]};return _0x1dfbx2b})})};_0x1dfbx1b= _[_0x54ab[73]]({},_0x1dfbx1b,_0x1dfbx28[_0x54ab[74]]);return db[_0x54ab[56]][_0x54ab[76]](_0x1dfbx1b)[_0x54ab[45]](respondWithFilteredResult(_0x1dfbx15,_0x1dfbx1b,_0x54ab[53]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[53]))};exports[_0x54ab[77]]= function(_0x1dfbx28,_0x1dfbx15){var _0x1dfbx1b={raw:true,where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}},_0x1dfbx29={};_0x1dfbx29[_0x54ab[54]]= _[_0x54ab[57]](db[_0x54ab[56]][_0x54ab[55]]);_0x1dfbx29[_0x54ab[58]]= _[_0x54ab[57]](_0x1dfbx28[_0x54ab[58]]);_0x1dfbx29[_0x54ab[59]]= _[_0x54ab[60]](_0x1dfbx29[_0x54ab[54]],_0x1dfbx29[_0x54ab[58]]);_0x1dfbx1b[_0x54ab[61]]= _[_0x54ab[60]](_0x1dfbx29[_0x54ab[54]],qs[_0x54ab[62]](_0x1dfbx28[_0x54ab[58]][_0x54ab[62]]));_0x1dfbx1b[_0x54ab[61]]= (_0x1dfbx1b[_0x54ab[61]][_0x54ab[63]])?_0x1dfbx1b[_0x54ab[61]]:_0x1dfbx29[_0x54ab[54]];_0x1dfbx1b= _[_0x54ab[73]]({},_0x1dfbx1b,_0x1dfbx28[_0x54ab[74]]);return db[_0x54ab[56]][_0x54ab[80]](_0x1dfbx1b)[_0x54ab[45]](handleEntityNotFound(_0x1dfbx15,null,_0x54ab[77]))[_0x54ab[45]](respondWithResult(_0x1dfbx15,null,_0x54ab[77]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[77]))};exports[_0x54ab[81]]= function(_0x1dfbx28,_0x1dfbx15){return db[_0x54ab[56]][_0x54ab[81]](_0x1dfbx28[_0x54ab[82]],{})[_0x54ab[45]](respondWithResult(_0x1dfbx15,201,_0x54ab[81]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[81]))};exports[_0x54ab[46]]= function(_0x1dfbx28,_0x1dfbx15){if(_0x1dfbx28[_0x54ab[82]][_0x54ab[78]]){delete _0x1dfbx28[_0x54ab[82]][_0x54ab[78]]};return db[_0x54ab[56]][_0x54ab[80]]({where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}})[_0x54ab[45]](handleEntityNotFound(_0x1dfbx15,null,_0x54ab[46]))[_0x54ab[45]](saveUpdates(_0x1dfbx28[_0x54ab[82]],null,_0x54ab[46]))[_0x54ab[45]](respondWithResult(_0x1dfbx15,null,_0x54ab[46]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[46]))};exports[_0x54ab[48]]= function(_0x1dfbx28,_0x1dfbx15){return db[_0x54ab[56]][_0x54ab[80]]({where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}})[_0x54ab[45]](handleEntityNotFound(_0x1dfbx15,null,_0x54ab[48]))[_0x54ab[45]](removeEntity(_0x1dfbx15,null,_0x54ab[48]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[48]))};exports[_0x54ab[83]]= function(_0x1dfbx28,_0x1dfbx18,_0x1dfbx2c){var _0x1dfbx1b={};var _0x1dfbx29={};var _0x1dfbx2d;var _0x1dfbx1c;return db[_0x54ab[56]][_0x54ab[85]]({where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}})[_0x54ab[45]](handleEntityNotFound(_0x1dfbx18,null,_0x54ab[83]))[_0x54ab[45]](function(_0x1dfbx18){if(_0x1dfbx18){_0x1dfbx2d= _0x1dfbx18;_0x1dfbx29[_0x54ab[54]]= _[_0x54ab[57]](db[_0x54ab[84]][_0x54ab[55]]);_0x1dfbx29[_0x54ab[58]]= _[_0x54ab[57]](_0x1dfbx28[_0x54ab[58]]);_0x1dfbx29[_0x54ab[59]]= _[_0x54ab[60]](_0x1dfbx29[_0x54ab[54]],_0x1dfbx29[_0x54ab[58]]);_0x1dfbx1b[_0x54ab[61]]= _[_0x54ab[60]](_0x1dfbx29[_0x54ab[54]],qs[_0x54ab[62]](_0x1dfbx28[_0x54ab[58]][_0x54ab[62]]));_0x1dfbx1b[_0x54ab[61]]= (_0x1dfbx1b[_0x54ab[61]][_0x54ab[63]])?_0x1dfbx1b[_0x54ab[61]]:_0x1dfbx29[_0x54ab[54]];_0x1dfbx1b[_0x54ab[66]]= qs[_0x54ab[67]](_0x1dfbx28[_0x54ab[58]][_0x54ab[67]]);_0x1dfbx1b[_0x54ab[68]]= qs[_0x54ab[59]](_[_0x54ab[69]](_0x1dfbx28[_0x54ab[58]],_0x1dfbx29[_0x54ab[59]]));if(_0x1dfbx28[_0x54ab[58]][_0x54ab[70]]){_0x1dfbx1b[_0x54ab[68]]= _[_0x54ab[73]](_0x1dfbx1b[_0x54ab[68]],{$or:_[_0x54ab[72]](_0x1dfbx1b[_0x54ab[61]],function(_0x1dfbx2a){var _0x1dfbx2b={};_0x1dfbx2b[_0x1dfbx2a]= {$like:_0x54ab[71]+ _0x1dfbx28[_0x54ab[58]][_0x54ab[70]]+ _0x54ab[71]};return _0x1dfbx2b})})};_0x1dfbx1b= _[_0x54ab[73]]({},_0x1dfbx1b,_0x1dfbx28[_0x54ab[74]]);return _0x1dfbx2d[_0x54ab[83]](_0x1dfbx1b)}})[_0x54ab[45]](function(_0x1dfbx2f){if(_0x1dfbx2f){_0x1dfbx1c= _0x1dfbx2f[_0x54ab[63]];if(!_0x1dfbx28[_0x54ab[58]][_0x54ab[65]](_0x54ab[64])){_0x1dfbx1b[_0x54ab[35]]= qs[_0x54ab[35]](_0x1dfbx28[_0x54ab[58]][_0x54ab[35]]);_0x1dfbx1b[_0x54ab[34]]= qs[_0x54ab[34]](_0x1dfbx28[_0x54ab[58]][_0x54ab[34]])};return _0x1dfbx2d[_0x54ab[83]](_0x1dfbx1b)}})[_0x54ab[45]](function(_0x1dfbx2e){return _0x1dfbx2e?{count:_0x1dfbx1c,rows:_0x1dfbx2e}:null})[_0x54ab[45]](respondWithResult(_0x1dfbx18,null,_0x54ab[83]))[_0x54ab[75]](handleError(_0x1dfbx18,null,_0x54ab[83]))};exports[_0x54ab[86]]= function(_0x1dfbx28,_0x1dfbx15,_0x1dfbx2c){var _0x1dfbx30=[];var _0x1dfbx31;return db[_0x54ab[84]][_0x54ab[93]]({where:{id:_0x1dfbx28[_0x54ab[82]][_0x54ab[87]]},attributes:[_0x54ab[78]],include:[{model:db[_0x54ab[92]],as:_0x54ab[90],attributes:[_0x54ab[78]],raw:true}]})[_0x54ab[45]](function(_0x1dfbx34){if(_0x1dfbx34){for(var _0x1dfbx35=0;_0x1dfbx35< _0x1dfbx34[_0x54ab[63]];_0x1dfbx35+= 1){for(var _0x1dfbx36=0;_0x1dfbx36< _0x1dfbx34[_0x1dfbx35][_0x54ab[90]][_0x54ab[63]];_0x1dfbx36+= 1){_0x1dfbx30= _[_0x54ab[91]](_0x1dfbx30,[_0x1dfbx34[_0x1dfbx35][_0x54ab[90]][_0x1dfbx36][_0x54ab[78]]])}};return _0x1dfbx30}})[_0x54ab[45]](function(_0x1dfbx33){if(_0x1dfbx33){return db[_0x54ab[56]][_0x54ab[80]]({where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}})}})[_0x54ab[45]](function(_0x1dfbx32){if(_0x1dfbx32){_0x1dfbx31= _0x1dfbx32;return _0x1dfbx31[_0x54ab[89]](_0x1dfbx30,{penalty:_0x1dfbx28[_0x54ab[82]][_0x54ab[88]]})}})[_0x54ab[45]](function(_0x1dfbx18){if(_0x1dfbx18){return _0x1dfbx31[_0x54ab[86]](_0x1dfbx28[_0x54ab[82]][_0x54ab[87]])}})[_0x54ab[45]](handleEntityNotFound(_0x1dfbx15,null,_0x54ab[86]))[_0x54ab[45]](respondWithStatusCode(_0x1dfbx15,null,_0x54ab[86]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[86]))};exports[_0x54ab[94]]= function(_0x1dfbx28,_0x1dfbx15,_0x1dfbx2c){var _0x1dfbx30=[];var _0x1dfbx31;return db[_0x54ab[84]][_0x54ab[93]]({where:{id:_0x1dfbx28[_0x54ab[58]][_0x54ab[87]]},attributes:[_0x54ab[78]],include:[{model:db[_0x54ab[92]],as:_0x54ab[90],attributes:[_0x54ab[78]],raw:true}]})[_0x54ab[45]](function(_0x1dfbx34){if(_0x1dfbx34){for(var _0x1dfbx35=0;_0x1dfbx35< _0x1dfbx34[_0x54ab[63]];_0x1dfbx35+= 1){for(var _0x1dfbx36=0;_0x1dfbx36< _0x1dfbx34[_0x1dfbx35][_0x54ab[90]][_0x54ab[63]];_0x1dfbx36+= 1){_0x1dfbx30= _[_0x54ab[91]](_0x1dfbx30,[_0x1dfbx34[_0x1dfbx35][_0x54ab[90]][_0x1dfbx36][_0x54ab[78]]])}};return _0x1dfbx30}})[_0x54ab[45]](function(_0x1dfbx33){if(_0x1dfbx33){return db[_0x54ab[56]][_0x54ab[80]]({where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}})}})[_0x54ab[45]](function(_0x1dfbx32){if(_0x1dfbx32){_0x1dfbx31= _0x1dfbx32;return _0x1dfbx31[_0x54ab[95]](_0x1dfbx30)}})[_0x54ab[45]](function(_0x1dfbx18){if(_0x1dfbx31){return _0x1dfbx31[_0x54ab[94]](_0x1dfbx28[_0x54ab[58]][_0x54ab[87]])}})[_0x54ab[45]](handleEntityNotFound(_0x1dfbx15,null,_0x54ab[94]))[_0x54ab[45]](respondWithStatusCode(_0x1dfbx15,null,_0x54ab[94]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[94]))};exports[_0x54ab[89]]= function(_0x1dfbx28,_0x1dfbx15,_0x1dfbx2c){return db[_0x54ab[56]][_0x54ab[80]]({where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}})[_0x54ab[45]](handleEntityNotFound(_0x1dfbx15,null,_0x54ab[89]))[_0x54ab[45]](function(_0x1dfbx18){if(_0x1dfbx18){return _0x1dfbx18[_0x54ab[89]](_0x1dfbx28[_0x54ab[82]][_0x54ab[87]],_[_0x54ab[96]](_0x1dfbx28[_0x54ab[82]],[_0x54ab[87],_0x54ab[78]])|| {})};return null})[_0x54ab[45]](respondWithResult(_0x1dfbx15,null,_0x54ab[89]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[89]))};exports[_0x54ab[95]]= function(_0x1dfbx28,_0x1dfbx15,_0x1dfbx2c){var _0x1dfbx2f;return db[_0x54ab[56]][_0x54ab[80]]({where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}})[_0x54ab[45]](handleEntityNotFound(_0x1dfbx15,null,_0x54ab[95]))[_0x54ab[45]](function(_0x1dfbx18){if(_0x1dfbx18){return _0x1dfbx18[_0x54ab[95]](_0x1dfbx28[_0x54ab[58]][_0x54ab[87]])}})[_0x54ab[45]](respondWithStatusCode(_0x1dfbx15,null,_0x54ab[95]))[_0x54ab[75]](handleError(_0x1dfbx15,null,_0x54ab[95]))};exports[_0x54ab[97]]= function(_0x1dfbx28,_0x1dfbx18,_0x1dfbx2c){var _0x1dfbx1b={};var _0x1dfbx29={};var _0x1dfbx2d;var _0x1dfbx1c;return db[_0x54ab[56]][_0x54ab[85]]({where:{id:_0x1dfbx28[_0x54ab[79]][_0x54ab[78]]}})[_0x54ab[45]](handleEntityNotFound(_0x1dfbx18,null,_0x54ab[97]))[_0x54ab[45]](function(_0x1dfbx18){if(_0x1dfbx18){_0x1dfbx2d= _0x1dfbx18;_0x1dfbx29[_0x54ab[54]]= _[_0x54ab[57]](db[_0x54ab[92]][_0x54ab[55]]);_0x1dfbx29[_0x54ab[58]]= _[_0x54ab[57]](_0x1dfbx28[_0x54ab[58]]);_0x1dfbx29[_0x54ab[59]]= _[_0x54ab[60]](_0x1dfbx29[_0x54ab[54]],_0x1dfbx29[_0x54ab[58]]);_0x1dfbx1b[_0x54ab[61]]= _[_0x54ab[60]](_0x1dfbx29[_0x54ab[54]],qs[_0x54ab[62]](_0x1dfbx28[_0x54ab[58]][_0x54ab[62]]));_0x1dfbx1b[_0x54ab[61]]= (_0x1dfbx1b[_0x54ab[61]][_0x54ab[63]])?_0x1dfbx1b[_0x54ab[61]]:_0x1dfbx29[_0x54ab[54]];_0x1dfbx1b[_0x54ab[66]]= qs[_0x54ab[67]](_0x1dfbx28[_0x54ab[58]][_0x54ab[67]]);_0x1dfbx1b[_0x54ab[68]]= qs[_0x54ab[59]](_[_0x54ab[69]](_0x1dfbx28[_0x54ab[58]],_0x1dfbx29[_0x54ab[59]]));if(_0x1dfbx28[_0x54ab[58]][_0x54ab[70]]){_0x1dfbx1b[_0x54ab[68]]= _[_0x54ab[73]](_0x1dfbx1b[_0x54ab[68]],{$or:_[_0x54ab[72]](_0x1dfbx1b[_0x54ab[61]],function(_0x1dfbx2a){var _0x1dfbx2b={};_0x1dfbx2b[_0x1dfbx2a]= {$like:_0x54ab[71]+ _0x1dfbx28[_0x54ab[58]][_0x54ab[70]]+ _0x54ab[71]};return _0x1dfbx2b})})};_0x1dfbx1b= _[_0x54ab[73]]({},_0x1dfbx1b,_0x1dfbx28[_0x54ab[74]]);return _0x1dfbx2d[_0x54ab[97]](_0x1dfbx1b)}})[_0x54ab[45]](function(_0x1dfbx2f){if(_0x1dfbx2f){_0x1dfbx1c= _0x1dfbx2f[_0x54ab[63]];if(!_0x1dfbx28[_0x54ab[58]][_0x54ab[65]](_0x54ab[64])){_0x1dfbx1b[_0x54ab[35]]= qs[_0x54ab[35]](_0x1dfbx28[_0x54ab[58]][_0x54ab[35]]);_0x1dfbx1b[_0x54ab[34]]= qs[_0x54ab[34]](_0x1dfbx28[_0x54ab[58]][_0x54ab[34]])};return _0x1dfbx2d[_0x54ab[97]](_0x1dfbx1b)}})[_0x54ab[45]](function(_0x1dfbx2e){return _0x1dfbx2e?{count:_0x1dfbx1c,rows:_0x1dfbx2e}:null})[_0x54ab[45]](respondWithResult(_0x1dfbx18,null,_0x54ab[97]))[_0x54ab[75]](handleError(_0x1dfbx18,null,_0x54ab[97]))}
\ No newline at end of file
index e3540e4..f6fffbb 100644 (file)
@@ -1 +1 @@
-var _0xc2a1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xc2a1[0];var _=require(_0xc2a1[1]);var util=require(_0xc2a1[2]);var logger=require(_0xc2a1[4])(_0xc2a1[3]);var attributes=require(_0xc2a1[5]);module[_0xc2a1[6]]= function(_0x1089x5,_0x1089x6){return _0x1089x5[_0xc2a1[9]](_0xc2a1[7],attributes,{tableName:_0xc2a1[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xcc4f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xcc4f[0];var _=require(_0xcc4f[1]);var util=require(_0xcc4f[2]);var logger=require(_0xcc4f[4])(_0xcc4f[3]);var attributes=require(_0xcc4f[5]);module[_0xcc4f[6]]= function(_0x32fbx5,_0x32fbx6){return _0x32fbx5[_0xcc4f[9]](_0xcc4f[7],attributes,{tableName:_0xcc4f[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 2685587..8480ef2 100644 (file)
@@ -1 +1 @@
-var _0xf410=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xf410[0];var _=require(_0xf410[1]);var util=require(_0xf410[2]);var moment=require(_0xf410[3]);var BPromise=require(_0xf410[4]);var db=require(_0xf410[6])[_0xf410[5]];var utils=require(_0xf410[7]);var logger=require(_0xf410[9])(_0xf410[8]);var jayson=require(_0xf410[10]);var client=jayson[_0xf410[12]][_0xf410[11]]({port:9002});function respondWithRpcPromise(_0xa498xb,_0xa498xc,_0xa498xd){return  new BPromise(function(_0xa498xe,_0xa498xf){return client[_0xf410[25]](_0xa498xb,_0xa498xd)[_0xf410[24]](function(_0xa498x11){logger[_0xf410[17]](_0xf410[13],_0xa498xc,_0xf410[16]);logger[_0xf410[20]](_0xf410[18],_0xa498xc,_0xf410[16],JSON[_0xf410[19]](_0xa498x11));if(_0xa498x11[_0xf410[14]]){if(_0xa498x11[_0xf410[14]][_0xf410[21]]=== 500){logger[_0xf410[14]](_0xf410[13],_0xa498xc,_0xa498x11[_0xf410[14]][_0xf410[22]]);return _0xa498xf(_0xa498x11[_0xf410[14]][_0xf410[22]])};logger[_0xf410[14]](_0xf410[13],_0xa498xc,_0xa498x11[_0xf410[14]][_0xf410[22]]);return _0xa498xe(_0xa498x11[_0xf410[14]][_0xf410[22]])}else {logger[_0xf410[17]](_0xf410[13],_0xa498xc,_0xf410[16]);_0xa498xe(_0xa498x11[_0xf410[23]][_0xf410[22]])}})[_0xf410[15]](function(_0xa498x10){logger[_0xf410[14]](_0xf410[13],_0xa498xc,_0xa498x10);_0xa498xf(_0xa498x10)})})}
\ No newline at end of file
+var _0xe09d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe09d[0];var _=require(_0xe09d[1]);var util=require(_0xe09d[2]);var moment=require(_0xe09d[3]);var BPromise=require(_0xe09d[4]);var db=require(_0xe09d[6])[_0xe09d[5]];var utils=require(_0xe09d[7]);var logger=require(_0xe09d[9])(_0xe09d[8]);var jayson=require(_0xe09d[10]);var client=jayson[_0xe09d[12]][_0xe09d[11]]({port:9002});function respondWithRpcPromise(_0x99f8xb,_0x99f8xc,_0x99f8xd){return  new BPromise(function(_0x99f8xe,_0x99f8xf){return client[_0xe09d[25]](_0x99f8xb,_0x99f8xd)[_0xe09d[24]](function(_0x99f8x11){logger[_0xe09d[17]](_0xe09d[13],_0x99f8xc,_0xe09d[16]);logger[_0xe09d[20]](_0xe09d[18],_0x99f8xc,_0xe09d[16],JSON[_0xe09d[19]](_0x99f8x11));if(_0x99f8x11[_0xe09d[14]]){if(_0x99f8x11[_0xe09d[14]][_0xe09d[21]]=== 500){logger[_0xe09d[14]](_0xe09d[13],_0x99f8xc,_0x99f8x11[_0xe09d[14]][_0xe09d[22]]);return _0x99f8xf(_0x99f8x11[_0xe09d[14]][_0xe09d[22]])};logger[_0xe09d[14]](_0xe09d[13],_0x99f8xc,_0x99f8x11[_0xe09d[14]][_0xe09d[22]]);return _0x99f8xe(_0x99f8x11[_0xe09d[14]][_0xe09d[22]])}else {logger[_0xe09d[17]](_0xe09d[13],_0x99f8xc,_0xe09d[16]);_0x99f8xe(_0x99f8x11[_0xe09d[23]][_0xe09d[22]])}})[_0xe09d[15]](function(_0x99f8x10){logger[_0xe09d[14]](_0xe09d[13],_0x99f8xc,_0x99f8x10);_0x99f8xf(_0x99f8x10)})})}
\ No newline at end of file
index f32fa44..429d45d 100644 (file)
@@ -1 +1 @@
-var _0x8e96=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8e96[0];var multer=require(_0x8e96[1]);var util=require(_0x8e96[2]);var path=require(_0x8e96[3]);var express=require(_0x8e96[4]);var router=express.Router();var auth=require(_0x8e96[5]);var config=require(_0x8e96[6]);var controller=require(_0x8e96[7]);router[_0x8e96[11]](_0x8e96[8],auth[_0x8e96[9]](),controller[_0x8e96[10]]);router[_0x8e96[11]](_0x8e96[12],auth[_0x8e96[9]](),controller[_0x8e96[13]]);router[_0x8e96[15]](_0x8e96[8],auth[_0x8e96[9]](),controller[_0x8e96[14]]);router[_0x8e96[17]](_0x8e96[12],auth[_0x8e96[9]](),controller[_0x8e96[16]]);router[_0x8e96[19]](_0x8e96[12],auth[_0x8e96[9]](),controller[_0x8e96[18]]);module[_0x8e96[20]]= router
\ No newline at end of file
+var _0x92ad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x92ad[0];var multer=require(_0x92ad[1]);var util=require(_0x92ad[2]);var path=require(_0x92ad[3]);var express=require(_0x92ad[4]);var router=express.Router();var auth=require(_0x92ad[5]);var config=require(_0x92ad[6]);var controller=require(_0x92ad[7]);router[_0x92ad[11]](_0x92ad[8],auth[_0x92ad[9]](),controller[_0x92ad[10]]);router[_0x92ad[11]](_0x92ad[12],auth[_0x92ad[9]](),controller[_0x92ad[13]]);router[_0x92ad[15]](_0x92ad[8],auth[_0x92ad[9]](),controller[_0x92ad[14]]);router[_0x92ad[17]](_0x92ad[12],auth[_0x92ad[9]](),controller[_0x92ad[16]]);router[_0x92ad[19]](_0x92ad[12],auth[_0x92ad[9]](),controller[_0x92ad[18]]);module[_0x92ad[20]]= router
\ No newline at end of file
index 6accd91..3fa5c92 100644 (file)
@@ -1 +1 @@
-var _0xa812=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0xa812[0];var moment=require(_0xa812[1]);var Sequelize=require(_0xa812[2]);module[_0xa812[3]]= {uniqueid:{type:Sequelize[_0xa812[4]]},timeslot:{type:Sequelize[_0xa812[4]]},from:{type:Sequelize[_0xa812[4]]},accountid:{type:Sequelize[_0xa812[4]]},accountname:{type:Sequelize[_0xa812[4]]},application:{type:Sequelize[_0xa812[4]]},memberid:{type:Sequelize[_0xa812[4]]},membername:{type:Sequelize[_0xa812[4]]},queue:{type:Sequelize[_0xa812[4]]},queuename:{type:Sequelize[_0xa812[4]]},roomid:{type:Sequelize[_0xa812[5]]},messageid:{type:Sequelize[_0xa812[5]]},reason:{type:Sequelize[_0xa812[4]],defaultValue:_0xa812[6]},connectid:{type:Sequelize[_0xa812[4]],unique:_0xa812[7],set:function(_0x9554x3){this[_0xa812[8]](_0xa812[7],_0x9554x3);this[_0xa812[8]](_0xa812[9],_0xa812[10]);this[_0xa812[8]](_0xa812[11],moment()[_0xa812[13]](_0xa812[12]))}},calledAt:{type:Sequelize[_0xa812[14]]},rejectedAt:{type:Sequelize[_0xa812[14]],set:function(_0x9554x4){this[_0xa812[8]](_0xa812[15],_0x9554x4);this[_0xa812[8]](_0xa812[9],_0xa812[16])}},connectedAt:{type:Sequelize[_0xa812[14]]}}
\ No newline at end of file
+var _0x19cc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0x19cc[0];var moment=require(_0x19cc[1]);var Sequelize=require(_0x19cc[2]);module[_0x19cc[3]]= {uniqueid:{type:Sequelize[_0x19cc[4]]},timeslot:{type:Sequelize[_0x19cc[4]]},from:{type:Sequelize[_0x19cc[4]]},accountid:{type:Sequelize[_0x19cc[4]]},accountname:{type:Sequelize[_0x19cc[4]]},application:{type:Sequelize[_0x19cc[4]]},memberid:{type:Sequelize[_0x19cc[4]]},membername:{type:Sequelize[_0x19cc[4]]},queue:{type:Sequelize[_0x19cc[4]]},queuename:{type:Sequelize[_0x19cc[4]]},roomid:{type:Sequelize[_0x19cc[5]]},messageid:{type:Sequelize[_0x19cc[5]]},reason:{type:Sequelize[_0x19cc[4]],defaultValue:_0x19cc[6]},connectid:{type:Sequelize[_0x19cc[4]],unique:_0x19cc[7],set:function(_0x7b5fx3){this[_0x19cc[8]](_0x19cc[7],_0x7b5fx3);this[_0x19cc[8]](_0x19cc[9],_0x19cc[10]);this[_0x19cc[8]](_0x19cc[11],moment()[_0x19cc[13]](_0x19cc[12]))}},calledAt:{type:Sequelize[_0x19cc[14]]},rejectedAt:{type:Sequelize[_0x19cc[14]],set:function(_0x7b5fx4){this[_0x19cc[8]](_0x19cc[15],_0x7b5fx4);this[_0x19cc[8]](_0x19cc[9],_0x19cc[16])}},connectedAt:{type:Sequelize[_0x19cc[14]]}}
\ No newline at end of file
index d55c6b8..5b9c88f 100644 (file)
@@ -1 +1 @@
-var _0x3f5c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x3f5c[0];var jsonpatch=require(_0x3f5c[1]);var rp=require(_0x3f5c[2]);var moment=require(_0x3f5c[3]);var BPromise=require(_0x3f5c[4]);var util=require(_0x3f5c[5]);var path=require(_0x3f5c[6]);var sox=require(_0x3f5c[7]);var ejs=require(_0x3f5c[8]);var fs=require(_0x3f5c[9]);var _=require(_0x3f5c[10]);var squel=require(_0x3f5c[11]);var crypto=require(_0x3f5c[12]);var jsforce=require(_0x3f5c[13]);var toCsv=require(_0x3f5c[14]);var qs=require(_0x3f5c[15]);var logger=require(_0x3f5c[17])(_0x3f5c[16]);var utils=require(_0x3f5c[18]);var config=require(_0x3f5c[19]);var db=require(_0x3f5c[21])[_0x3f5c[20]];function respondWithStatusCode(_0xc6e7x15,_0xc6e7x16,_0xc6e7x17){_0xc6e7x16= _0xc6e7x16|| 204;return function(_0xc6e7x18){if(_0xc6e7x18){logger[_0x3f5c[24]](_0x3f5c[22],_0xc6e7x17,_0xc6e7x16,_0x3f5c[23]);logger[_0x3f5c[26]](_0x3f5c[25],_0xc6e7x17,_0xc6e7x16,_0x3f5c[23]);return _0xc6e7x15[_0x3f5c[27]](_0xc6e7x16)};return _0xc6e7x15[_0x3f5c[29]](304)[_0x3f5c[28]]()}}function respondWithResult(_0xc6e7x15,_0xc6e7x16,_0xc6e7x17){_0xc6e7x16= _0xc6e7x16|| 200;return function(_0xc6e7x18){if(_0xc6e7x18){logger[_0x3f5c[24]](_0x3f5c[22],_0xc6e7x17,_0xc6e7x16,_0x3f5c[30]);logger[_0x3f5c[26]](_0x3f5c[25],_0xc6e7x17,_0xc6e7x16,_0x3f5c[30],JSON[_0x3f5c[31]](_0xc6e7x18));return _0xc6e7x15[_0x3f5c[29]](_0xc6e7x16)[_0x3f5c[32]](_0xc6e7x18)};return _0xc6e7x15[_0x3f5c[29]](304)[_0x3f5c[28]]()}}function respondWithFilteredResult(_0xc6e7x15,_0xc6e7x1b,_0xc6e7x17){return function(_0xc6e7x18){if(_0xc6e7x18){var _0xc6e7x1c=_0xc6e7x18[_0x3f5c[33]],_0xc6e7x1d=_0xc6e7x1b[_0x3f5c[34]],_0xc6e7x1e=_0xc6e7x1b[_0x3f5c[34]]+ _0xc6e7x1b[_0x3f5c[35]],_0xc6e7x16;if(_0xc6e7x1e>= _0xc6e7x1c){_0xc6e7x1e= _0xc6e7x1c;_0xc6e7x16= 200}else {_0xc6e7x16= 206};_0xc6e7x15[_0x3f5c[29]](_0xc6e7x16);logger[_0x3f5c[24]](_0x3f5c[22],_0xc6e7x17,_0xc6e7x16,_0x3f5c[36]);logger[_0x3f5c[26]](_0x3f5c[25],_0xc6e7x17,_0xc6e7x16,_0x3f5c[30],JSON[_0x3f5c[31]](_0xc6e7x18));return _0xc6e7x15[_0x3f5c[40]](_0x3f5c[37],_0xc6e7x1d+ _0x3f5c[38]+ _0xc6e7x1e+ _0x3f5c[39]+ _0xc6e7x1c)[_0x3f5c[32]](_0xc6e7x18)};return null}}function patchUpdates(_0xc6e7x20){return function(_0xc6e7x18){try{jsonpatch[_0x3f5c[41]](_0xc6e7x18,_0xc6e7x20,true)}catch(err){return BPromise[_0x3f5c[42]](err)};return _0xc6e7x18[_0x3f5c[43]]()}}function saveUpdates(_0xc6e7x22,_0xc6e7x16,_0xc6e7x17){return function(_0xc6e7x18){if(_0xc6e7x18){return _0xc6e7x18[_0x3f5c[46]](_0xc6e7x22)[_0x3f5c[45]](function(_0xc6e7x23){logger[_0x3f5c[24]](_0x3f5c[22],_0xc6e7x17,_0xc6e7x16,_0x3f5c[44]);logger[_0x3f5c[26]](_0x3f5c[25],_0xc6e7x17,_0xc6e7x16,_0x3f5c[44],JSON[_0x3f5c[31]](_0xc6e7x18));return _0xc6e7x23})};return null}}function removeEntity(_0xc6e7x15,_0xc6e7x16,_0xc6e7x17){return function(_0xc6e7x18){if(_0xc6e7x18){return _0xc6e7x18[_0x3f5c[48]]()[_0x3f5c[45]](function(){logger[_0x3f5c[24]](_0x3f5c[22],_0xc6e7x17,_0xc6e7x16,_0x3f5c[47]);logger[_0x3f5c[26]](_0x3f5c[25],_0xc6e7x17,_0xc6e7x16,_0x3f5c[47],JSON[_0x3f5c[31]](_0xc6e7x18));_0xc6e7x15[_0x3f5c[29]](204)[_0x3f5c[28]]()})}}}function handleEntityNotFound(_0xc6e7x15,_0xc6e7x16,_0xc6e7x17){return function(_0xc6e7x18){if(!_0xc6e7x18){logger[_0x3f5c[50]](_0x3f5c[22],_0xc6e7x17,404,_0x3f5c[49]);_0xc6e7x15[_0x3f5c[29]](404)[_0x3f5c[28]]();return null};return _0xc6e7x18}}function handleError(_0xc6e7x15,_0xc6e7x16,_0xc6e7x17){_0xc6e7x16= _0xc6e7x16|| 500;return function(_0xc6e7x27){logger[_0x3f5c[50]](_0x3f5c[22],_0xc6e7x17,_0xc6e7x16,JSON[_0x3f5c[31]](_0xc6e7x27));delete _0xc6e7x27[_0x3f5c[51]];_0xc6e7x15[_0x3f5c[29]](_0xc6e7x16)[_0x3f5c[52]](_0xc6e7x27)}}exports[_0x3f5c[53]]= function(_0xc6e7x28,_0xc6e7x15){var _0xc6e7x1b={},_0xc6e7x29={};_0xc6e7x29[_0x3f5c[54]]= _[_0x3f5c[57]](db[_0x3f5c[56]][_0x3f5c[55]]);_0xc6e7x29[_0x3f5c[58]]= _[_0x3f5c[57]](_0xc6e7x28[_0x3f5c[58]]);_0xc6e7x29[_0x3f5c[59]]= _[_0x3f5c[60]](_0xc6e7x29[_0x3f5c[54]],_0xc6e7x29[_0x3f5c[58]]);_0xc6e7x1b[_0x3f5c[61]]= _[_0x3f5c[60]](_0xc6e7x29[_0x3f5c[54]],qs[_0x3f5c[62]](_0xc6e7x28[_0x3f5c[58]][_0x3f5c[62]]));_0xc6e7x1b[_0x3f5c[61]]= (_0xc6e7x1b[_0x3f5c[61]][_0x3f5c[63]])?_0xc6e7x1b[_0x3f5c[61]]:_0xc6e7x29[_0x3f5c[54]];if(!_0xc6e7x28[_0x3f5c[58]][_0x3f5c[65]](_0x3f5c[64])){_0xc6e7x1b[_0x3f5c[35]]= qs[_0x3f5c[35]](_0xc6e7x28[_0x3f5c[58]][_0x3f5c[35]]);_0xc6e7x1b[_0x3f5c[34]]= qs[_0x3f5c[34]](_0xc6e7x28[_0x3f5c[58]][_0x3f5c[34]])};_0xc6e7x1b[_0x3f5c[66]]= qs[_0x3f5c[67]](_0xc6e7x28[_0x3f5c[58]][_0x3f5c[67]]);_0xc6e7x1b[_0x3f5c[68]]= qs[_0x3f5c[59]](_[_0x3f5c[69]](_0xc6e7x28[_0x3f5c[58]],_0xc6e7x29[_0x3f5c[59]]));if(_0xc6e7x28[_0x3f5c[58]][_0x3f5c[70]]){_0xc6e7x1b[_0x3f5c[68]]= _[_0x3f5c[73]](_0xc6e7x1b[_0x3f5c[68]],{$or:_[_0x3f5c[72]](_0xc6e7x1b[_0x3f5c[61]],function(_0xc6e7x2a){var _0xc6e7x2b={};_0xc6e7x2b[_0xc6e7x2a]= {$like:_0x3f5c[71]+ _0xc6e7x28[_0x3f5c[58]][_0x3f5c[70]]+ _0x3f5c[71]};return _0xc6e7x2b})})};_0xc6e7x1b= _[_0x3f5c[73]]({},_0xc6e7x1b,_0xc6e7x28[_0x3f5c[74]]);return db[_0x3f5c[56]][_0x3f5c[76]](_0xc6e7x1b)[_0x3f5c[45]](respondWithFilteredResult(_0xc6e7x15,_0xc6e7x1b,_0x3f5c[53]))[_0x3f5c[75]](handleError(_0xc6e7x15,null,_0x3f5c[53]))};exports[_0x3f5c[77]]= function(_0xc6e7x28,_0xc6e7x15){var _0xc6e7x1b={raw:true,where:{id:_0xc6e7x28[_0x3f5c[79]][_0x3f5c[78]]}},_0xc6e7x29={};_0xc6e7x29[_0x3f5c[54]]= _[_0x3f5c[57]](db[_0x3f5c[56]][_0x3f5c[55]]);_0xc6e7x29[_0x3f5c[58]]= _[_0x3f5c[57]](_0xc6e7x28[_0x3f5c[58]]);_0xc6e7x29[_0x3f5c[59]]= _[_0x3f5c[60]](_0xc6e7x29[_0x3f5c[54]],_0xc6e7x29[_0x3f5c[58]]);_0xc6e7x1b[_0x3f5c[61]]= _[_0x3f5c[60]](_0xc6e7x29[_0x3f5c[54]],qs[_0x3f5c[62]](_0xc6e7x28[_0x3f5c[58]][_0x3f5c[62]]));_0xc6e7x1b[_0x3f5c[61]]= (_0xc6e7x1b[_0x3f5c[61]][_0x3f5c[63]])?_0xc6e7x1b[_0x3f5c[61]]:_0xc6e7x29[_0x3f5c[54]];_0xc6e7x1b= _[_0x3f5c[73]]({},_0xc6e7x1b,_0xc6e7x28[_0x3f5c[74]]);return db[_0x3f5c[56]][_0x3f5c[80]](_0xc6e7x1b)[_0x3f5c[45]](handleEntityNotFound(_0xc6e7x15,null,_0x3f5c[77]))[_0x3f5c[45]](respondWithResult(_0xc6e7x15,null,_0x3f5c[77]))[_0x3f5c[75]](handleError(_0xc6e7x15,null,_0x3f5c[77]))};exports[_0x3f5c[81]]= function(_0xc6e7x28,_0xc6e7x15){return db[_0x3f5c[56]][_0x3f5c[81]](_0xc6e7x28[_0x3f5c[82]],{})[_0x3f5c[45]](respondWithResult(_0xc6e7x15,201,_0x3f5c[81]))[_0x3f5c[75]](handleError(_0xc6e7x15,null,_0x3f5c[81]))};exports[_0x3f5c[46]]= function(_0xc6e7x28,_0xc6e7x15){if(_0xc6e7x28[_0x3f5c[82]][_0x3f5c[78]]){delete _0xc6e7x28[_0x3f5c[82]][_0x3f5c[78]]};return db[_0x3f5c[56]][_0x3f5c[80]]({where:{id:_0xc6e7x28[_0x3f5c[79]][_0x3f5c[78]]}})[_0x3f5c[45]](handleEntityNotFound(_0xc6e7x15,null,_0x3f5c[46]))[_0x3f5c[45]](saveUpdates(_0xc6e7x28[_0x3f5c[82]],null,_0x3f5c[46]))[_0x3f5c[45]](respondWithResult(_0xc6e7x15,null,_0x3f5c[46]))[_0x3f5c[75]](handleError(_0xc6e7x15,null,_0x3f5c[46]))};exports[_0x3f5c[48]]= function(_0xc6e7x28,_0xc6e7x15){return db[_0x3f5c[56]][_0x3f5c[80]]({where:{id:_0xc6e7x28[_0x3f5c[79]][_0x3f5c[78]]}})[_0x3f5c[45]](handleEntityNotFound(_0xc6e7x15,null,_0x3f5c[48]))[_0x3f5c[45]](removeEntity(_0xc6e7x15,null,_0x3f5c[48]))[_0x3f5c[75]](handleError(_0xc6e7x15,null,_0x3f5c[48]))}
\ No newline at end of file
+var _0x38fe=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x38fe[0];var jsonpatch=require(_0x38fe[1]);var rp=require(_0x38fe[2]);var moment=require(_0x38fe[3]);var BPromise=require(_0x38fe[4]);var util=require(_0x38fe[5]);var path=require(_0x38fe[6]);var sox=require(_0x38fe[7]);var ejs=require(_0x38fe[8]);var fs=require(_0x38fe[9]);var _=require(_0x38fe[10]);var squel=require(_0x38fe[11]);var crypto=require(_0x38fe[12]);var jsforce=require(_0x38fe[13]);var toCsv=require(_0x38fe[14]);var qs=require(_0x38fe[15]);var logger=require(_0x38fe[17])(_0x38fe[16]);var utils=require(_0x38fe[18]);var config=require(_0x38fe[19]);var db=require(_0x38fe[21])[_0x38fe[20]];function respondWithStatusCode(_0x96b9x15,_0x96b9x16,_0x96b9x17){_0x96b9x16= _0x96b9x16|| 204;return function(_0x96b9x18){if(_0x96b9x18){logger[_0x38fe[24]](_0x38fe[22],_0x96b9x17,_0x96b9x16,_0x38fe[23]);logger[_0x38fe[26]](_0x38fe[25],_0x96b9x17,_0x96b9x16,_0x38fe[23]);return _0x96b9x15[_0x38fe[27]](_0x96b9x16)};return _0x96b9x15[_0x38fe[29]](304)[_0x38fe[28]]()}}function respondWithResult(_0x96b9x15,_0x96b9x16,_0x96b9x17){_0x96b9x16= _0x96b9x16|| 200;return function(_0x96b9x18){if(_0x96b9x18){logger[_0x38fe[24]](_0x38fe[22],_0x96b9x17,_0x96b9x16,_0x38fe[30]);logger[_0x38fe[26]](_0x38fe[25],_0x96b9x17,_0x96b9x16,_0x38fe[30],JSON[_0x38fe[31]](_0x96b9x18));return _0x96b9x15[_0x38fe[29]](_0x96b9x16)[_0x38fe[32]](_0x96b9x18)};return _0x96b9x15[_0x38fe[29]](304)[_0x38fe[28]]()}}function respondWithFilteredResult(_0x96b9x15,_0x96b9x1b,_0x96b9x17){return function(_0x96b9x18){if(_0x96b9x18){var _0x96b9x1c=_0x96b9x18[_0x38fe[33]],_0x96b9x1d=_0x96b9x1b[_0x38fe[34]],_0x96b9x1e=_0x96b9x1b[_0x38fe[34]]+ _0x96b9x1b[_0x38fe[35]],_0x96b9x16;if(_0x96b9x1e>= _0x96b9x1c){_0x96b9x1e= _0x96b9x1c;_0x96b9x16= 200}else {_0x96b9x16= 206};_0x96b9x15[_0x38fe[29]](_0x96b9x16);logger[_0x38fe[24]](_0x38fe[22],_0x96b9x17,_0x96b9x16,_0x38fe[36]);logger[_0x38fe[26]](_0x38fe[25],_0x96b9x17,_0x96b9x16,_0x38fe[30],JSON[_0x38fe[31]](_0x96b9x18));return _0x96b9x15[_0x38fe[40]](_0x38fe[37],_0x96b9x1d+ _0x38fe[38]+ _0x96b9x1e+ _0x38fe[39]+ _0x96b9x1c)[_0x38fe[32]](_0x96b9x18)};return null}}function patchUpdates(_0x96b9x20){return function(_0x96b9x18){try{jsonpatch[_0x38fe[41]](_0x96b9x18,_0x96b9x20,true)}catch(err){return BPromise[_0x38fe[42]](err)};return _0x96b9x18[_0x38fe[43]]()}}function saveUpdates(_0x96b9x22,_0x96b9x16,_0x96b9x17){return function(_0x96b9x18){if(_0x96b9x18){return _0x96b9x18[_0x38fe[46]](_0x96b9x22)[_0x38fe[45]](function(_0x96b9x23){logger[_0x38fe[24]](_0x38fe[22],_0x96b9x17,_0x96b9x16,_0x38fe[44]);logger[_0x38fe[26]](_0x38fe[25],_0x96b9x17,_0x96b9x16,_0x38fe[44],JSON[_0x38fe[31]](_0x96b9x18));return _0x96b9x23})};return null}}function removeEntity(_0x96b9x15,_0x96b9x16,_0x96b9x17){return function(_0x96b9x18){if(_0x96b9x18){return _0x96b9x18[_0x38fe[48]]()[_0x38fe[45]](function(){logger[_0x38fe[24]](_0x38fe[22],_0x96b9x17,_0x96b9x16,_0x38fe[47]);logger[_0x38fe[26]](_0x38fe[25],_0x96b9x17,_0x96b9x16,_0x38fe[47],JSON[_0x38fe[31]](_0x96b9x18));_0x96b9x15[_0x38fe[29]](204)[_0x38fe[28]]()})}}}function handleEntityNotFound(_0x96b9x15,_0x96b9x16,_0x96b9x17){return function(_0x96b9x18){if(!_0x96b9x18){logger[_0x38fe[50]](_0x38fe[22],_0x96b9x17,404,_0x38fe[49]);_0x96b9x15[_0x38fe[29]](404)[_0x38fe[28]]();return null};return _0x96b9x18}}function handleError(_0x96b9x15,_0x96b9x16,_0x96b9x17){_0x96b9x16= _0x96b9x16|| 500;return function(_0x96b9x27){logger[_0x38fe[50]](_0x38fe[22],_0x96b9x17,_0x96b9x16,JSON[_0x38fe[31]](_0x96b9x27));delete _0x96b9x27[_0x38fe[51]];_0x96b9x15[_0x38fe[29]](_0x96b9x16)[_0x38fe[52]](_0x96b9x27)}}exports[_0x38fe[53]]= function(_0x96b9x28,_0x96b9x15){var _0x96b9x1b={},_0x96b9x29={};_0x96b9x29[_0x38fe[54]]= _[_0x38fe[57]](db[_0x38fe[56]][_0x38fe[55]]);_0x96b9x29[_0x38fe[58]]= _[_0x38fe[57]](_0x96b9x28[_0x38fe[58]]);_0x96b9x29[_0x38fe[59]]= _[_0x38fe[60]](_0x96b9x29[_0x38fe[54]],_0x96b9x29[_0x38fe[58]]);_0x96b9x1b[_0x38fe[61]]= _[_0x38fe[60]](_0x96b9x29[_0x38fe[54]],qs[_0x38fe[62]](_0x96b9x28[_0x38fe[58]][_0x38fe[62]]));_0x96b9x1b[_0x38fe[61]]= (_0x96b9x1b[_0x38fe[61]][_0x38fe[63]])?_0x96b9x1b[_0x38fe[61]]:_0x96b9x29[_0x38fe[54]];if(!_0x96b9x28[_0x38fe[58]][_0x38fe[65]](_0x38fe[64])){_0x96b9x1b[_0x38fe[35]]= qs[_0x38fe[35]](_0x96b9x28[_0x38fe[58]][_0x38fe[35]]);_0x96b9x1b[_0x38fe[34]]= qs[_0x38fe[34]](_0x96b9x28[_0x38fe[58]][_0x38fe[34]])};_0x96b9x1b[_0x38fe[66]]= qs[_0x38fe[67]](_0x96b9x28[_0x38fe[58]][_0x38fe[67]]);_0x96b9x1b[_0x38fe[68]]= qs[_0x38fe[59]](_[_0x38fe[69]](_0x96b9x28[_0x38fe[58]],_0x96b9x29[_0x38fe[59]]));if(_0x96b9x28[_0x38fe[58]][_0x38fe[70]]){_0x96b9x1b[_0x38fe[68]]= _[_0x38fe[73]](_0x96b9x1b[_0x38fe[68]],{$or:_[_0x38fe[72]](_0x96b9x1b[_0x38fe[61]],function(_0x96b9x2a){var _0x96b9x2b={};_0x96b9x2b[_0x96b9x2a]= {$like:_0x38fe[71]+ _0x96b9x28[_0x38fe[58]][_0x38fe[70]]+ _0x38fe[71]};return _0x96b9x2b})})};_0x96b9x1b= _[_0x38fe[73]]({},_0x96b9x1b,_0x96b9x28[_0x38fe[74]]);return db[_0x38fe[56]][_0x38fe[76]](_0x96b9x1b)[_0x38fe[45]](respondWithFilteredResult(_0x96b9x15,_0x96b9x1b,_0x38fe[53]))[_0x38fe[75]](handleError(_0x96b9x15,null,_0x38fe[53]))};exports[_0x38fe[77]]= function(_0x96b9x28,_0x96b9x15){var _0x96b9x1b={raw:true,where:{id:_0x96b9x28[_0x38fe[79]][_0x38fe[78]]}},_0x96b9x29={};_0x96b9x29[_0x38fe[54]]= _[_0x38fe[57]](db[_0x38fe[56]][_0x38fe[55]]);_0x96b9x29[_0x38fe[58]]= _[_0x38fe[57]](_0x96b9x28[_0x38fe[58]]);_0x96b9x29[_0x38fe[59]]= _[_0x38fe[60]](_0x96b9x29[_0x38fe[54]],_0x96b9x29[_0x38fe[58]]);_0x96b9x1b[_0x38fe[61]]= _[_0x38fe[60]](_0x96b9x29[_0x38fe[54]],qs[_0x38fe[62]](_0x96b9x28[_0x38fe[58]][_0x38fe[62]]));_0x96b9x1b[_0x38fe[61]]= (_0x96b9x1b[_0x38fe[61]][_0x38fe[63]])?_0x96b9x1b[_0x38fe[61]]:_0x96b9x29[_0x38fe[54]];_0x96b9x1b= _[_0x38fe[73]]({},_0x96b9x1b,_0x96b9x28[_0x38fe[74]]);return db[_0x38fe[56]][_0x38fe[80]](_0x96b9x1b)[_0x38fe[45]](handleEntityNotFound(_0x96b9x15,null,_0x38fe[77]))[_0x38fe[45]](respondWithResult(_0x96b9x15,null,_0x38fe[77]))[_0x38fe[75]](handleError(_0x96b9x15,null,_0x38fe[77]))};exports[_0x38fe[81]]= function(_0x96b9x28,_0x96b9x15){return db[_0x38fe[56]][_0x38fe[81]](_0x96b9x28[_0x38fe[82]],{})[_0x38fe[45]](respondWithResult(_0x96b9x15,201,_0x38fe[81]))[_0x38fe[75]](handleError(_0x96b9x15,null,_0x38fe[81]))};exports[_0x38fe[46]]= function(_0x96b9x28,_0x96b9x15){if(_0x96b9x28[_0x38fe[82]][_0x38fe[78]]){delete _0x96b9x28[_0x38fe[82]][_0x38fe[78]]};return db[_0x38fe[56]][_0x38fe[80]]({where:{id:_0x96b9x28[_0x38fe[79]][_0x38fe[78]]}})[_0x38fe[45]](handleEntityNotFound(_0x96b9x15,null,_0x38fe[46]))[_0x38fe[45]](saveUpdates(_0x96b9x28[_0x38fe[82]],null,_0x38fe[46]))[_0x38fe[45]](respondWithResult(_0x96b9x15,null,_0x38fe[46]))[_0x38fe[75]](handleError(_0x96b9x15,null,_0x38fe[46]))};exports[_0x38fe[48]]= function(_0x96b9x28,_0x96b9x15){return db[_0x38fe[56]][_0x38fe[80]]({where:{id:_0x96b9x28[_0x38fe[79]][_0x38fe[78]]}})[_0x38fe[45]](handleEntityNotFound(_0x96b9x15,null,_0x38fe[48]))[_0x38fe[45]](removeEntity(_0x96b9x15,null,_0x38fe[48]))[_0x38fe[75]](handleError(_0x96b9x15,null,_0x38fe[48]))}
\ No newline at end of file
index d632b5a..4c4941d 100644 (file)
@@ -1 +1 @@
-var _0x4e10=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x64\x65\x66\x69\x6E\x65"];_0x4e10[0];var _=require(_0x4e10[1]);var util=require(_0x4e10[2]);var logger=require(_0x4e10[4])(_0x4e10[3]);var attributes=require(_0x4e10[5]);module[_0x4e10[6]]= function(_0x8398x5,_0x8398x6){return _0x8398x5[_0x4e10[9]](_0x4e10[7],attributes,{tableName:_0x4e10[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xb5b9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x64\x65\x66\x69\x6E\x65"];_0xb5b9[0];var _=require(_0xb5b9[1]);var util=require(_0xb5b9[2]);var logger=require(_0xb5b9[4])(_0xb5b9[3]);var attributes=require(_0xb5b9[5]);module[_0xb5b9[6]]= function(_0x3267x5,_0x3267x6){return _0x3267x5[_0xb5b9[9]](_0xb5b9[7],attributes,{tableName:_0xb5b9[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 524008e..dc529f7 100644 (file)
@@ -1 +1 @@
-var _0x6c2d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x6c2d[0];var _=require(_0x6c2d[1]);var util=require(_0x6c2d[2]);var moment=require(_0x6c2d[3]);var BPromise=require(_0x6c2d[4]);var db=require(_0x6c2d[6])[_0x6c2d[5]];var utils=require(_0x6c2d[7]);var logger=require(_0x6c2d[9])(_0x6c2d[8]);var jayson=require(_0x6c2d[10]);var client=jayson[_0x6c2d[12]][_0x6c2d[11]]({port:9002});function respondWithRpcPromise(_0x2c71xb,_0x2c71xc,_0x2c71xd){return  new BPromise(function(_0x2c71xe,_0x2c71xf){return client[_0x6c2d[25]](_0x2c71xb,_0x2c71xd)[_0x6c2d[24]](function(_0x2c71x11){logger[_0x6c2d[17]](_0x6c2d[13],_0x2c71xc,_0x6c2d[16]);logger[_0x6c2d[20]](_0x6c2d[18],_0x2c71xc,_0x6c2d[16],JSON[_0x6c2d[19]](_0x2c71x11));if(_0x2c71x11[_0x6c2d[14]]){if(_0x2c71x11[_0x6c2d[14]][_0x6c2d[21]]=== 500){logger[_0x6c2d[14]](_0x6c2d[13],_0x2c71xc,_0x2c71x11[_0x6c2d[14]][_0x6c2d[22]]);return _0x2c71xf(_0x2c71x11[_0x6c2d[14]][_0x6c2d[22]])};logger[_0x6c2d[14]](_0x6c2d[13],_0x2c71xc,_0x2c71x11[_0x6c2d[14]][_0x6c2d[22]]);return _0x2c71xe(_0x2c71x11[_0x6c2d[14]][_0x6c2d[22]])}else {logger[_0x6c2d[17]](_0x6c2d[13],_0x2c71xc,_0x6c2d[16]);_0x2c71xe(_0x2c71x11[_0x6c2d[23]][_0x6c2d[22]])}})[_0x6c2d[15]](function(_0x2c71x10){logger[_0x6c2d[14]](_0x6c2d[13],_0x2c71xc,_0x2c71x10);_0x2c71xf(_0x2c71x10)})})}
\ No newline at end of file
+var _0x2b19=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2b19[0];var _=require(_0x2b19[1]);var util=require(_0x2b19[2]);var moment=require(_0x2b19[3]);var BPromise=require(_0x2b19[4]);var db=require(_0x2b19[6])[_0x2b19[5]];var utils=require(_0x2b19[7]);var logger=require(_0x2b19[9])(_0x2b19[8]);var jayson=require(_0x2b19[10]);var client=jayson[_0x2b19[12]][_0x2b19[11]]({port:9002});function respondWithRpcPromise(_0x702dxb,_0x702dxc,_0x702dxd){return  new BPromise(function(_0x702dxe,_0x702dxf){return client[_0x2b19[25]](_0x702dxb,_0x702dxd)[_0x2b19[24]](function(_0x702dx11){logger[_0x2b19[17]](_0x2b19[13],_0x702dxc,_0x2b19[16]);logger[_0x2b19[20]](_0x2b19[18],_0x702dxc,_0x2b19[16],JSON[_0x2b19[19]](_0x702dx11));if(_0x702dx11[_0x2b19[14]]){if(_0x702dx11[_0x2b19[14]][_0x2b19[21]]=== 500){logger[_0x2b19[14]](_0x2b19[13],_0x702dxc,_0x702dx11[_0x2b19[14]][_0x2b19[22]]);return _0x702dxf(_0x702dx11[_0x2b19[14]][_0x2b19[22]])};logger[_0x2b19[14]](_0x2b19[13],_0x702dxc,_0x702dx11[_0x2b19[14]][_0x2b19[22]]);return _0x702dxe(_0x702dx11[_0x2b19[14]][_0x2b19[22]])}else {logger[_0x2b19[17]](_0x2b19[13],_0x702dxc,_0x2b19[16]);_0x702dxe(_0x702dx11[_0x2b19[23]][_0x2b19[22]])}})[_0x2b19[15]](function(_0x702dx10){logger[_0x2b19[14]](_0x2b19[13],_0x702dxc,_0x702dx10);_0x702dxf(_0x702dx10)})})}
\ No newline at end of file
index 677a610..73990e9 100644 (file)
@@ -1 +1 @@
-var _0x6f69=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x6f69[0];var multer=require(_0x6f69[1]);var util=require(_0x6f69[2]);var path=require(_0x6f69[3]);var express=require(_0x6f69[4]);var router=express.Router();var auth=require(_0x6f69[5]);var config=require(_0x6f69[6]);var controller=require(_0x6f69[7]);router[_0x6f69[11]](_0x6f69[8],auth[_0x6f69[9]](),controller[_0x6f69[10]]);router[_0x6f69[11]](_0x6f69[12],auth[_0x6f69[9]](),controller[_0x6f69[13]]);router[_0x6f69[11]](_0x6f69[14],auth[_0x6f69[9]](),controller[_0x6f69[15]]);router[_0x6f69[17]](_0x6f69[8],auth[_0x6f69[9]](),controller[_0x6f69[16]]);router[_0x6f69[19]](_0x6f69[14],auth[_0x6f69[9]](),controller[_0x6f69[18]]);router[_0x6f69[21]](_0x6f69[14],auth[_0x6f69[9]](),controller[_0x6f69[20]]);module[_0x6f69[22]]= router
\ No newline at end of file
+var _0x8c02=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8c02[0];var multer=require(_0x8c02[1]);var util=require(_0x8c02[2]);var path=require(_0x8c02[3]);var express=require(_0x8c02[4]);var router=express.Router();var auth=require(_0x8c02[5]);var config=require(_0x8c02[6]);var controller=require(_0x8c02[7]);router[_0x8c02[11]](_0x8c02[8],auth[_0x8c02[9]](),controller[_0x8c02[10]]);router[_0x8c02[11]](_0x8c02[12],auth[_0x8c02[9]](),controller[_0x8c02[13]]);router[_0x8c02[11]](_0x8c02[14],auth[_0x8c02[9]](),controller[_0x8c02[15]]);router[_0x8c02[17]](_0x8c02[8],auth[_0x8c02[9]](),controller[_0x8c02[16]]);router[_0x8c02[19]](_0x8c02[14],auth[_0x8c02[9]](),controller[_0x8c02[18]]);router[_0x8c02[21]](_0x8c02[14],auth[_0x8c02[9]](),controller[_0x8c02[20]]);module[_0x8c02[22]]= router
\ No newline at end of file
index f8a78e7..d21d619 100644 (file)
@@ -1 +1 @@
-var _0x4387=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74"];_0x4387[0];var Sequelize=require(_0x4387[1]);module[_0x4387[2]]= {uniqueid:{type:Sequelize[_0x4387[3]]},accountid:{type:Sequelize[_0x4387[3]]},accountname:{type:Sequelize[_0x4387[3]]},application:{type:Sequelize[_0x4387[3]]},memberid:{type:Sequelize[_0x4387[3]]},membername:{type:Sequelize[_0x4387[3]]},queue:{type:Sequelize[_0x4387[4]]},queuename:{type:Sequelize[_0x4387[3]]},roomid:{type:Sequelize[_0x4387[4]]},fidelity:{type:Sequelize[_0x4387[4]],defaultValue:0},joinAt:{type:Sequelize[_0x4387[5]]},leaveAt:{type:Sequelize[_0x4387[5]]},completeAt:{type:Sequelize[_0x4387[5]]},complete:{type:Sequelize[_0x4387[6]],defaulValue:false},completeReason:{type:Sequelize.ENUM(_0x4387[7])},timeout:{type:Sequelize[_0x4387[6]],defaultValue:false},timeslot:{type:Sequelize[_0x4387[4]]}}
\ No newline at end of file
+var _0xe0a7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74"];_0xe0a7[0];var Sequelize=require(_0xe0a7[1]);module[_0xe0a7[2]]= {uniqueid:{type:Sequelize[_0xe0a7[3]]},accountid:{type:Sequelize[_0xe0a7[3]]},accountname:{type:Sequelize[_0xe0a7[3]]},application:{type:Sequelize[_0xe0a7[3]]},memberid:{type:Sequelize[_0xe0a7[3]]},membername:{type:Sequelize[_0xe0a7[3]]},queue:{type:Sequelize[_0xe0a7[4]]},queuename:{type:Sequelize[_0xe0a7[3]]},roomid:{type:Sequelize[_0xe0a7[4]]},fidelity:{type:Sequelize[_0xe0a7[4]],defaultValue:0},joinAt:{type:Sequelize[_0xe0a7[5]]},leaveAt:{type:Sequelize[_0xe0a7[5]]},completeAt:{type:Sequelize[_0xe0a7[5]]},complete:{type:Sequelize[_0xe0a7[6]],defaulValue:false},completeReason:{type:Sequelize.ENUM(_0xe0a7[7])},timeout:{type:Sequelize[_0xe0a7[6]],defaultValue:false},timeslot:{type:Sequelize[_0xe0a7[4]]}}
\ No newline at end of file
index b9d9838..d5ac572 100644 (file)
@@ -1 +1 @@
-var _0x40e0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x40e0[0];var jsonpatch=require(_0x40e0[1]);var rp=require(_0x40e0[2]);var moment=require(_0x40e0[3]);var BPromise=require(_0x40e0[4]);var util=require(_0x40e0[5]);var path=require(_0x40e0[6]);var sox=require(_0x40e0[7]);var ejs=require(_0x40e0[8]);var fs=require(_0x40e0[9]);var _=require(_0x40e0[10]);var squel=require(_0x40e0[11]);var crypto=require(_0x40e0[12]);var jsforce=require(_0x40e0[13]);var toCsv=require(_0x40e0[14]);var qs=require(_0x40e0[15]);var logger=require(_0x40e0[17])(_0x40e0[16]);var utils=require(_0x40e0[18]);var config=require(_0x40e0[19]);var db=require(_0x40e0[21])[_0x40e0[20]];function respondWithStatusCode(_0x67e5x15,_0x67e5x16,_0x67e5x17){_0x67e5x16= _0x67e5x16|| 204;return function(_0x67e5x18){if(_0x67e5x18){logger[_0x40e0[24]](_0x40e0[22],_0x67e5x17,_0x67e5x16,_0x40e0[23]);logger[_0x40e0[26]](_0x40e0[25],_0x67e5x17,_0x67e5x16,_0x40e0[23]);return _0x67e5x15[_0x40e0[27]](_0x67e5x16)};return _0x67e5x15[_0x40e0[29]](304)[_0x40e0[28]]()}}function respondWithResult(_0x67e5x15,_0x67e5x16,_0x67e5x17){_0x67e5x16= _0x67e5x16|| 200;return function(_0x67e5x18){if(_0x67e5x18){logger[_0x40e0[24]](_0x40e0[22],_0x67e5x17,_0x67e5x16,_0x40e0[30]);logger[_0x40e0[26]](_0x40e0[25],_0x67e5x17,_0x67e5x16,_0x40e0[30],JSON[_0x40e0[31]](_0x67e5x18));return _0x67e5x15[_0x40e0[29]](_0x67e5x16)[_0x40e0[32]](_0x67e5x18)};return _0x67e5x15[_0x40e0[29]](304)[_0x40e0[28]]()}}function respondWithFilteredResult(_0x67e5x15,_0x67e5x1b,_0x67e5x17){return function(_0x67e5x18){if(_0x67e5x18){var _0x67e5x1c=_0x67e5x18[_0x40e0[33]],_0x67e5x1d=_0x67e5x1b[_0x40e0[34]],_0x67e5x1e=_0x67e5x1b[_0x40e0[34]]+ _0x67e5x1b[_0x40e0[35]],_0x67e5x16;if(_0x67e5x1e>= _0x67e5x1c){_0x67e5x1e= _0x67e5x1c;_0x67e5x16= 200}else {_0x67e5x16= 206};_0x67e5x15[_0x40e0[29]](_0x67e5x16);logger[_0x40e0[24]](_0x40e0[22],_0x67e5x17,_0x67e5x16,_0x40e0[36]);logger[_0x40e0[26]](_0x40e0[25],_0x67e5x17,_0x67e5x16,_0x40e0[30],JSON[_0x40e0[31]](_0x67e5x18));return _0x67e5x15[_0x40e0[40]](_0x40e0[37],_0x67e5x1d+ _0x40e0[38]+ _0x67e5x1e+ _0x40e0[39]+ _0x67e5x1c)[_0x40e0[32]](_0x67e5x18)};return null}}function patchUpdates(_0x67e5x20){return function(_0x67e5x18){try{jsonpatch[_0x40e0[41]](_0x67e5x18,_0x67e5x20,true)}catch(err){return BPromise[_0x40e0[42]](err)};return _0x67e5x18[_0x40e0[43]]()}}function saveUpdates(_0x67e5x22,_0x67e5x16,_0x67e5x17){return function(_0x67e5x18){if(_0x67e5x18){return _0x67e5x18[_0x40e0[46]](_0x67e5x22)[_0x40e0[45]](function(_0x67e5x23){logger[_0x40e0[24]](_0x40e0[22],_0x67e5x17,_0x67e5x16,_0x40e0[44]);logger[_0x40e0[26]](_0x40e0[25],_0x67e5x17,_0x67e5x16,_0x40e0[44],JSON[_0x40e0[31]](_0x67e5x18));return _0x67e5x23})};return null}}function removeEntity(_0x67e5x15,_0x67e5x16,_0x67e5x17){return function(_0x67e5x18){if(_0x67e5x18){return _0x67e5x18[_0x40e0[48]]()[_0x40e0[45]](function(){logger[_0x40e0[24]](_0x40e0[22],_0x67e5x17,_0x67e5x16,_0x40e0[47]);logger[_0x40e0[26]](_0x40e0[25],_0x67e5x17,_0x67e5x16,_0x40e0[47],JSON[_0x40e0[31]](_0x67e5x18));_0x67e5x15[_0x40e0[29]](204)[_0x40e0[28]]()})}}}function handleEntityNotFound(_0x67e5x15,_0x67e5x16,_0x67e5x17){return function(_0x67e5x18){if(!_0x67e5x18){logger[_0x40e0[50]](_0x40e0[22],_0x67e5x17,404,_0x40e0[49]);_0x67e5x15[_0x40e0[29]](404)[_0x40e0[28]]();return null};return _0x67e5x18}}function handleError(_0x67e5x15,_0x67e5x16,_0x67e5x17){_0x67e5x16= _0x67e5x16|| 500;return function(_0x67e5x27){logger[_0x40e0[50]](_0x40e0[22],_0x67e5x17,_0x67e5x16,JSON[_0x40e0[31]](_0x67e5x27));delete _0x67e5x27[_0x40e0[51]];_0x67e5x15[_0x40e0[29]](_0x67e5x16)[_0x40e0[52]](_0x67e5x27)}}exports[_0x40e0[53]]= function(_0x67e5x28,_0x67e5x15){var _0x67e5x1b={},_0x67e5x29={};_0x67e5x29[_0x40e0[54]]= _[_0x40e0[57]](db[_0x40e0[56]][_0x40e0[55]]);_0x67e5x29[_0x40e0[58]]= _[_0x40e0[57]](_0x67e5x28[_0x40e0[58]]);_0x67e5x29[_0x40e0[59]]= _[_0x40e0[60]](_0x67e5x29[_0x40e0[54]],_0x67e5x29[_0x40e0[58]]);_0x67e5x1b[_0x40e0[61]]= _[_0x40e0[60]](_0x67e5x29[_0x40e0[54]],qs[_0x40e0[62]](_0x67e5x28[_0x40e0[58]][_0x40e0[62]]));_0x67e5x1b[_0x40e0[61]]= (_0x67e5x1b[_0x40e0[61]][_0x40e0[63]])?_0x67e5x1b[_0x40e0[61]]:_0x67e5x29[_0x40e0[54]];if(!_0x67e5x28[_0x40e0[58]][_0x40e0[65]](_0x40e0[64])){_0x67e5x1b[_0x40e0[35]]= qs[_0x40e0[35]](_0x67e5x28[_0x40e0[58]][_0x40e0[35]]);_0x67e5x1b[_0x40e0[34]]= qs[_0x40e0[34]](_0x67e5x28[_0x40e0[58]][_0x40e0[34]])};_0x67e5x1b[_0x40e0[66]]= qs[_0x40e0[67]](_0x67e5x28[_0x40e0[58]][_0x40e0[67]]);_0x67e5x1b[_0x40e0[68]]= qs[_0x40e0[59]](_[_0x40e0[69]](_0x67e5x28[_0x40e0[58]],_0x67e5x29[_0x40e0[59]]));if(_0x67e5x28[_0x40e0[58]][_0x40e0[70]]){_0x67e5x1b[_0x40e0[68]]= _[_0x40e0[73]](_0x67e5x1b[_0x40e0[68]],{$or:_[_0x40e0[72]](_0x67e5x1b[_0x40e0[61]],function(_0x67e5x2a){var _0x67e5x2b={};_0x67e5x2b[_0x67e5x2a]= {$like:_0x40e0[71]+ _0x67e5x28[_0x40e0[58]][_0x40e0[70]]+ _0x40e0[71]};return _0x67e5x2b})})};_0x67e5x1b= _[_0x40e0[73]]({},_0x67e5x1b,_0x67e5x28[_0x40e0[74]]);return db[_0x40e0[56]][_0x40e0[76]](_0x67e5x1b)[_0x40e0[45]](respondWithFilteredResult(_0x67e5x15,_0x67e5x1b,_0x40e0[53]))[_0x40e0[75]](handleError(_0x67e5x15,null,_0x40e0[53]))};exports[_0x40e0[77]]= function(_0x67e5x28,_0x67e5x15){var _0x67e5x1b={raw:false,where:{id:_0x67e5x28[_0x40e0[79]][_0x40e0[78]]}},_0x67e5x29={};_0x67e5x29[_0x40e0[54]]= _[_0x40e0[57]](db[_0x40e0[56]][_0x40e0[55]]);_0x67e5x29[_0x40e0[58]]= _[_0x40e0[57]](_0x67e5x28[_0x40e0[58]]);_0x67e5x29[_0x40e0[59]]= _[_0x40e0[60]](_0x67e5x29[_0x40e0[54]],_0x67e5x29[_0x40e0[58]]);_0x67e5x1b[_0x40e0[61]]= _[_0x40e0[60]](_0x67e5x29[_0x40e0[54]],qs[_0x40e0[62]](_0x67e5x28[_0x40e0[58]][_0x40e0[62]]));_0x67e5x1b[_0x40e0[61]]= (_0x67e5x1b[_0x40e0[61]][_0x40e0[63]])?_0x67e5x1b[_0x40e0[61]]:_0x67e5x29[_0x40e0[54]];_0x67e5x1b= _[_0x40e0[73]]({},_0x67e5x1b,_0x67e5x28[_0x40e0[74]]);return db[_0x40e0[56]][_0x40e0[80]](_0x67e5x1b)[_0x40e0[45]](handleEntityNotFound(_0x67e5x15,null,_0x40e0[77]))[_0x40e0[45]](respondWithResult(_0x67e5x15,null,_0x40e0[77]))[_0x40e0[75]](handleError(_0x67e5x15,null,_0x40e0[77]))};exports[_0x40e0[81]]= function(_0x67e5x28,_0x67e5x15){return db[_0x40e0[56]][_0x40e0[81]](_0x67e5x28[_0x40e0[82]],{})[_0x40e0[45]](respondWithResult(_0x67e5x15,201,_0x40e0[81]))[_0x40e0[75]](handleError(_0x67e5x15,null,_0x40e0[81]))};exports[_0x40e0[46]]= function(_0x67e5x28,_0x67e5x15){if(_0x67e5x28[_0x40e0[82]][_0x40e0[78]]){delete _0x67e5x28[_0x40e0[82]][_0x40e0[78]]};return db[_0x40e0[56]][_0x40e0[80]]({where:{id:_0x67e5x28[_0x40e0[79]][_0x40e0[78]]}})[_0x40e0[45]](handleEntityNotFound(_0x67e5x15,null,_0x40e0[46]))[_0x40e0[45]](saveUpdates(_0x67e5x28[_0x40e0[82]],null,_0x40e0[46]))[_0x40e0[45]](respondWithResult(_0x67e5x15,null,_0x40e0[46]))[_0x40e0[75]](handleError(_0x67e5x15,null,_0x40e0[46]))};exports[_0x40e0[48]]= function(_0x67e5x28,_0x67e5x15){return db[_0x40e0[56]][_0x40e0[80]]({where:{id:_0x67e5x28[_0x40e0[79]][_0x40e0[78]]}})[_0x40e0[45]](handleEntityNotFound(_0x67e5x15,null,_0x40e0[48]))[_0x40e0[45]](removeEntity(_0x67e5x15,null,_0x40e0[48]))[_0x40e0[75]](handleError(_0x67e5x15,null,_0x40e0[48]))};exports[_0x40e0[83]]= function(_0x67e5x28,_0x67e5x15){return db[_0x40e0[56]][_0x40e0[83]]()[_0x40e0[45]](respondWithResult(_0x67e5x15,null,_0x40e0[83]))[_0x40e0[75]](handleError(_0x67e5x15,null,_0x40e0[83]))}
\ No newline at end of file
+var _0x8b34=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x8b34[0];var jsonpatch=require(_0x8b34[1]);var rp=require(_0x8b34[2]);var moment=require(_0x8b34[3]);var BPromise=require(_0x8b34[4]);var util=require(_0x8b34[5]);var path=require(_0x8b34[6]);var sox=require(_0x8b34[7]);var ejs=require(_0x8b34[8]);var fs=require(_0x8b34[9]);var _=require(_0x8b34[10]);var squel=require(_0x8b34[11]);var crypto=require(_0x8b34[12]);var jsforce=require(_0x8b34[13]);var toCsv=require(_0x8b34[14]);var qs=require(_0x8b34[15]);var logger=require(_0x8b34[17])(_0x8b34[16]);var utils=require(_0x8b34[18]);var config=require(_0x8b34[19]);var db=require(_0x8b34[21])[_0x8b34[20]];function respondWithStatusCode(_0x435cx15,_0x435cx16,_0x435cx17){_0x435cx16= _0x435cx16|| 204;return function(_0x435cx18){if(_0x435cx18){logger[_0x8b34[24]](_0x8b34[22],_0x435cx17,_0x435cx16,_0x8b34[23]);logger[_0x8b34[26]](_0x8b34[25],_0x435cx17,_0x435cx16,_0x8b34[23]);return _0x435cx15[_0x8b34[27]](_0x435cx16)};return _0x435cx15[_0x8b34[29]](304)[_0x8b34[28]]()}}function respondWithResult(_0x435cx15,_0x435cx16,_0x435cx17){_0x435cx16= _0x435cx16|| 200;return function(_0x435cx18){if(_0x435cx18){logger[_0x8b34[24]](_0x8b34[22],_0x435cx17,_0x435cx16,_0x8b34[30]);logger[_0x8b34[26]](_0x8b34[25],_0x435cx17,_0x435cx16,_0x8b34[30],JSON[_0x8b34[31]](_0x435cx18));return _0x435cx15[_0x8b34[29]](_0x435cx16)[_0x8b34[32]](_0x435cx18)};return _0x435cx15[_0x8b34[29]](304)[_0x8b34[28]]()}}function respondWithFilteredResult(_0x435cx15,_0x435cx1b,_0x435cx17){return function(_0x435cx18){if(_0x435cx18){var _0x435cx1c=_0x435cx18[_0x8b34[33]],_0x435cx1d=_0x435cx1b[_0x8b34[34]],_0x435cx1e=_0x435cx1b[_0x8b34[34]]+ _0x435cx1b[_0x8b34[35]],_0x435cx16;if(_0x435cx1e>= _0x435cx1c){_0x435cx1e= _0x435cx1c;_0x435cx16= 200}else {_0x435cx16= 206};_0x435cx15[_0x8b34[29]](_0x435cx16);logger[_0x8b34[24]](_0x8b34[22],_0x435cx17,_0x435cx16,_0x8b34[36]);logger[_0x8b34[26]](_0x8b34[25],_0x435cx17,_0x435cx16,_0x8b34[30],JSON[_0x8b34[31]](_0x435cx18));return _0x435cx15[_0x8b34[40]](_0x8b34[37],_0x435cx1d+ _0x8b34[38]+ _0x435cx1e+ _0x8b34[39]+ _0x435cx1c)[_0x8b34[32]](_0x435cx18)};return null}}function patchUpdates(_0x435cx20){return function(_0x435cx18){try{jsonpatch[_0x8b34[41]](_0x435cx18,_0x435cx20,true)}catch(err){return BPromise[_0x8b34[42]](err)};return _0x435cx18[_0x8b34[43]]()}}function saveUpdates(_0x435cx22,_0x435cx16,_0x435cx17){return function(_0x435cx18){if(_0x435cx18){return _0x435cx18[_0x8b34[46]](_0x435cx22)[_0x8b34[45]](function(_0x435cx23){logger[_0x8b34[24]](_0x8b34[22],_0x435cx17,_0x435cx16,_0x8b34[44]);logger[_0x8b34[26]](_0x8b34[25],_0x435cx17,_0x435cx16,_0x8b34[44],JSON[_0x8b34[31]](_0x435cx18));return _0x435cx23})};return null}}function removeEntity(_0x435cx15,_0x435cx16,_0x435cx17){return function(_0x435cx18){if(_0x435cx18){return _0x435cx18[_0x8b34[48]]()[_0x8b34[45]](function(){logger[_0x8b34[24]](_0x8b34[22],_0x435cx17,_0x435cx16,_0x8b34[47]);logger[_0x8b34[26]](_0x8b34[25],_0x435cx17,_0x435cx16,_0x8b34[47],JSON[_0x8b34[31]](_0x435cx18));_0x435cx15[_0x8b34[29]](204)[_0x8b34[28]]()})}}}function handleEntityNotFound(_0x435cx15,_0x435cx16,_0x435cx17){return function(_0x435cx18){if(!_0x435cx18){logger[_0x8b34[50]](_0x8b34[22],_0x435cx17,404,_0x8b34[49]);_0x435cx15[_0x8b34[29]](404)[_0x8b34[28]]();return null};return _0x435cx18}}function handleError(_0x435cx15,_0x435cx16,_0x435cx17){_0x435cx16= _0x435cx16|| 500;return function(_0x435cx27){logger[_0x8b34[50]](_0x8b34[22],_0x435cx17,_0x435cx16,JSON[_0x8b34[31]](_0x435cx27));delete _0x435cx27[_0x8b34[51]];_0x435cx15[_0x8b34[29]](_0x435cx16)[_0x8b34[52]](_0x435cx27)}}exports[_0x8b34[53]]= function(_0x435cx28,_0x435cx15){var _0x435cx1b={},_0x435cx29={};_0x435cx29[_0x8b34[54]]= _[_0x8b34[57]](db[_0x8b34[56]][_0x8b34[55]]);_0x435cx29[_0x8b34[58]]= _[_0x8b34[57]](_0x435cx28[_0x8b34[58]]);_0x435cx29[_0x8b34[59]]= _[_0x8b34[60]](_0x435cx29[_0x8b34[54]],_0x435cx29[_0x8b34[58]]);_0x435cx1b[_0x8b34[61]]= _[_0x8b34[60]](_0x435cx29[_0x8b34[54]],qs[_0x8b34[62]](_0x435cx28[_0x8b34[58]][_0x8b34[62]]));_0x435cx1b[_0x8b34[61]]= (_0x435cx1b[_0x8b34[61]][_0x8b34[63]])?_0x435cx1b[_0x8b34[61]]:_0x435cx29[_0x8b34[54]];if(!_0x435cx28[_0x8b34[58]][_0x8b34[65]](_0x8b34[64])){_0x435cx1b[_0x8b34[35]]= qs[_0x8b34[35]](_0x435cx28[_0x8b34[58]][_0x8b34[35]]);_0x435cx1b[_0x8b34[34]]= qs[_0x8b34[34]](_0x435cx28[_0x8b34[58]][_0x8b34[34]])};_0x435cx1b[_0x8b34[66]]= qs[_0x8b34[67]](_0x435cx28[_0x8b34[58]][_0x8b34[67]]);_0x435cx1b[_0x8b34[68]]= qs[_0x8b34[59]](_[_0x8b34[69]](_0x435cx28[_0x8b34[58]],_0x435cx29[_0x8b34[59]]));if(_0x435cx28[_0x8b34[58]][_0x8b34[70]]){_0x435cx1b[_0x8b34[68]]= _[_0x8b34[73]](_0x435cx1b[_0x8b34[68]],{$or:_[_0x8b34[72]](_0x435cx1b[_0x8b34[61]],function(_0x435cx2a){var _0x435cx2b={};_0x435cx2b[_0x435cx2a]= {$like:_0x8b34[71]+ _0x435cx28[_0x8b34[58]][_0x8b34[70]]+ _0x8b34[71]};return _0x435cx2b})})};_0x435cx1b= _[_0x8b34[73]]({},_0x435cx1b,_0x435cx28[_0x8b34[74]]);return db[_0x8b34[56]][_0x8b34[76]](_0x435cx1b)[_0x8b34[45]](respondWithFilteredResult(_0x435cx15,_0x435cx1b,_0x8b34[53]))[_0x8b34[75]](handleError(_0x435cx15,null,_0x8b34[53]))};exports[_0x8b34[77]]= function(_0x435cx28,_0x435cx15){var _0x435cx1b={raw:false,where:{id:_0x435cx28[_0x8b34[79]][_0x8b34[78]]}},_0x435cx29={};_0x435cx29[_0x8b34[54]]= _[_0x8b34[57]](db[_0x8b34[56]][_0x8b34[55]]);_0x435cx29[_0x8b34[58]]= _[_0x8b34[57]](_0x435cx28[_0x8b34[58]]);_0x435cx29[_0x8b34[59]]= _[_0x8b34[60]](_0x435cx29[_0x8b34[54]],_0x435cx29[_0x8b34[58]]);_0x435cx1b[_0x8b34[61]]= _[_0x8b34[60]](_0x435cx29[_0x8b34[54]],qs[_0x8b34[62]](_0x435cx28[_0x8b34[58]][_0x8b34[62]]));_0x435cx1b[_0x8b34[61]]= (_0x435cx1b[_0x8b34[61]][_0x8b34[63]])?_0x435cx1b[_0x8b34[61]]:_0x435cx29[_0x8b34[54]];_0x435cx1b= _[_0x8b34[73]]({},_0x435cx1b,_0x435cx28[_0x8b34[74]]);return db[_0x8b34[56]][_0x8b34[80]](_0x435cx1b)[_0x8b34[45]](handleEntityNotFound(_0x435cx15,null,_0x8b34[77]))[_0x8b34[45]](respondWithResult(_0x435cx15,null,_0x8b34[77]))[_0x8b34[75]](handleError(_0x435cx15,null,_0x8b34[77]))};exports[_0x8b34[81]]= function(_0x435cx28,_0x435cx15){return db[_0x8b34[56]][_0x8b34[81]](_0x435cx28[_0x8b34[82]],{})[_0x8b34[45]](respondWithResult(_0x435cx15,201,_0x8b34[81]))[_0x8b34[75]](handleError(_0x435cx15,null,_0x8b34[81]))};exports[_0x8b34[46]]= function(_0x435cx28,_0x435cx15){if(_0x435cx28[_0x8b34[82]][_0x8b34[78]]){delete _0x435cx28[_0x8b34[82]][_0x8b34[78]]};return db[_0x8b34[56]][_0x8b34[80]]({where:{id:_0x435cx28[_0x8b34[79]][_0x8b34[78]]}})[_0x8b34[45]](handleEntityNotFound(_0x435cx15,null,_0x8b34[46]))[_0x8b34[45]](saveUpdates(_0x435cx28[_0x8b34[82]],null,_0x8b34[46]))[_0x8b34[45]](respondWithResult(_0x435cx15,null,_0x8b34[46]))[_0x8b34[75]](handleError(_0x435cx15,null,_0x8b34[46]))};exports[_0x8b34[48]]= function(_0x435cx28,_0x435cx15){return db[_0x8b34[56]][_0x8b34[80]]({where:{id:_0x435cx28[_0x8b34[79]][_0x8b34[78]]}})[_0x8b34[45]](handleEntityNotFound(_0x435cx15,null,_0x8b34[48]))[_0x8b34[45]](removeEntity(_0x435cx15,null,_0x8b34[48]))[_0x8b34[75]](handleError(_0x435cx15,null,_0x8b34[48]))};exports[_0x8b34[83]]= function(_0x435cx28,_0x435cx15){return db[_0x8b34[56]][_0x8b34[83]]()[_0x8b34[45]](respondWithResult(_0x435cx15,null,_0x8b34[83]))[_0x8b34[75]](handleError(_0x435cx15,null,_0x8b34[83]))}
\ No newline at end of file
index a991d13..691bfcc 100644 (file)
@@ -1 +1 @@
-var _0xca10=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0xca10[0];var _=require(_0xca10[1]);var util=require(_0xca10[2]);var logger=require(_0xca10[4])(_0xca10[3]);var attributes=require(_0xca10[5]);module[_0xca10[6]]= function(_0xf005x5,_0xf005x6){return _0xf005x5[_0xca10[9]](_0xca10[7],attributes,{tableName:_0xca10[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xaa98=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0xaa98[0];var _=require(_0xaa98[1]);var util=require(_0xaa98[2]);var logger=require(_0xaa98[4])(_0xaa98[3]);var attributes=require(_0xaa98[5]);module[_0xaa98[6]]= function(_0x57f2x5,_0x57f2x6){return _0x57f2x5[_0xaa98[9]](_0xaa98[7],attributes,{tableName:_0xaa98[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index ccf2243..074b4c3 100644 (file)
@@ -1 +1 @@
-var _0x36a0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x36a0[0];var _=require(_0x36a0[1]);var util=require(_0x36a0[2]);var moment=require(_0x36a0[3]);var BPromise=require(_0x36a0[4]);var db=require(_0x36a0[6])[_0x36a0[5]];var utils=require(_0x36a0[7]);var logger=require(_0x36a0[9])(_0x36a0[8]);var jayson=require(_0x36a0[10]);var client=jayson[_0x36a0[12]][_0x36a0[11]]({port:9002});function respondWithRpcPromise(_0xf258xb,_0xf258xc,_0xf258xd){return  new BPromise(function(_0xf258xe,_0xf258xf){return client[_0x36a0[25]](_0xf258xb,_0xf258xd)[_0x36a0[24]](function(_0xf258x11){logger[_0x36a0[17]](_0x36a0[13],_0xf258xc,_0x36a0[16]);logger[_0x36a0[20]](_0x36a0[18],_0xf258xc,_0x36a0[16],JSON[_0x36a0[19]](_0xf258x11));if(_0xf258x11[_0x36a0[14]]){if(_0xf258x11[_0x36a0[14]][_0x36a0[21]]=== 500){logger[_0x36a0[14]](_0x36a0[13],_0xf258xc,_0xf258x11[_0x36a0[14]][_0x36a0[22]]);return _0xf258xf(_0xf258x11[_0x36a0[14]][_0x36a0[22]])};logger[_0x36a0[14]](_0x36a0[13],_0xf258xc,_0xf258x11[_0x36a0[14]][_0x36a0[22]]);return _0xf258xe(_0xf258x11[_0x36a0[14]][_0x36a0[22]])}else {logger[_0x36a0[17]](_0x36a0[13],_0xf258xc,_0x36a0[16]);_0xf258xe(_0xf258x11[_0x36a0[23]][_0x36a0[22]])}})[_0x36a0[15]](function(_0xf258x10){logger[_0x36a0[14]](_0x36a0[13],_0xf258xc,_0xf258x10);_0xf258xf(_0xf258x10)})})}
\ No newline at end of file
+var _0x3de5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x3de5[0];var _=require(_0x3de5[1]);var util=require(_0x3de5[2]);var moment=require(_0x3de5[3]);var BPromise=require(_0x3de5[4]);var db=require(_0x3de5[6])[_0x3de5[5]];var utils=require(_0x3de5[7]);var logger=require(_0x3de5[9])(_0x3de5[8]);var jayson=require(_0x3de5[10]);var client=jayson[_0x3de5[12]][_0x3de5[11]]({port:9002});function respondWithRpcPromise(_0x74fcxb,_0x74fcxc,_0x74fcxd){return  new BPromise(function(_0x74fcxe,_0x74fcxf){return client[_0x3de5[25]](_0x74fcxb,_0x74fcxd)[_0x3de5[24]](function(_0x74fcx11){logger[_0x3de5[17]](_0x3de5[13],_0x74fcxc,_0x3de5[16]);logger[_0x3de5[20]](_0x3de5[18],_0x74fcxc,_0x3de5[16],JSON[_0x3de5[19]](_0x74fcx11));if(_0x74fcx11[_0x3de5[14]]){if(_0x74fcx11[_0x3de5[14]][_0x3de5[21]]=== 500){logger[_0x3de5[14]](_0x3de5[13],_0x74fcxc,_0x74fcx11[_0x3de5[14]][_0x3de5[22]]);return _0x74fcxf(_0x74fcx11[_0x3de5[14]][_0x3de5[22]])};logger[_0x3de5[14]](_0x3de5[13],_0x74fcxc,_0x74fcx11[_0x3de5[14]][_0x3de5[22]]);return _0x74fcxe(_0x74fcx11[_0x3de5[14]][_0x3de5[22]])}else {logger[_0x3de5[17]](_0x3de5[13],_0x74fcxc,_0x3de5[16]);_0x74fcxe(_0x74fcx11[_0x3de5[23]][_0x3de5[22]])}})[_0x3de5[15]](function(_0x74fcx10){logger[_0x3de5[14]](_0x3de5[13],_0x74fcxc,_0x74fcx10);_0x74fcxf(_0x74fcx10)})})}
\ No newline at end of file
index 24bc0d1..f3c6c4d 100644 (file)
@@ -1 +1 @@
-var _0xd758=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x70\x61\x75\x73\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd758[0];var multer=require(_0xd758[1]);var util=require(_0xd758[2]);var path=require(_0xd758[3]);var express=require(_0xd758[4]);var router=express.Router();var auth=require(_0xd758[5]);var config=require(_0xd758[6]);var controller=require(_0xd758[7]);router[_0xd758[11]](_0xd758[8],auth[_0xd758[9]](),controller[_0xd758[10]]);router[_0xd758[11]](_0xd758[12],auth[_0xd758[9]](),controller[_0xd758[13]]);router[_0xd758[15]](_0xd758[8],auth[_0xd758[9]](),controller[_0xd758[14]]);router[_0xd758[17]](_0xd758[12],auth[_0xd758[9]](),controller[_0xd758[16]]);router[_0xd758[19]](_0xd758[12],auth[_0xd758[9]](),controller[_0xd758[18]]);module[_0xd758[20]]= router
\ No newline at end of file
+var _0xb420=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x70\x61\x75\x73\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb420[0];var multer=require(_0xb420[1]);var util=require(_0xb420[2]);var path=require(_0xb420[3]);var express=require(_0xb420[4]);var router=express.Router();var auth=require(_0xb420[5]);var config=require(_0xb420[6]);var controller=require(_0xb420[7]);router[_0xb420[11]](_0xb420[8],auth[_0xb420[9]](),controller[_0xb420[10]]);router[_0xb420[11]](_0xb420[12],auth[_0xb420[9]](),controller[_0xb420[13]]);router[_0xb420[15]](_0xb420[8],auth[_0xb420[9]](),controller[_0xb420[14]]);router[_0xb420[17]](_0xb420[12],auth[_0xb420[9]](),controller[_0xb420[16]]);router[_0xb420[19]](_0xb420[12],auth[_0xb420[9]](),controller[_0xb420[18]]);module[_0xb420[20]]= router
\ No newline at end of file
index e248b00..7137aad 100644 (file)
@@ -1 +1 @@
-var _0x780d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x780d[0];var Sequelize=require(_0x780d[1]);module[_0x780d[2]]= {name:{type:Sequelize[_0x780d[3]],unique:_0x780d[4],allowNull:false},description:{type:Sequelize[_0x780d[3]]}}
\ No newline at end of file
+var _0x6cf7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x6cf7[0];var Sequelize=require(_0x6cf7[1]);module[_0x6cf7[2]]= {name:{type:Sequelize[_0x6cf7[3]],unique:_0x6cf7[4],allowNull:false},description:{type:Sequelize[_0x6cf7[3]]}}
\ No newline at end of file
index 3811284..8dbeb94 100644 (file)
@@ -1 +1 @@
-var _0xfad9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x50\x61\x75\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x50\x61\x75\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x50\x61\x75\x73\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xfad9[0];var jsonpatch=require(_0xfad9[1]);var rp=require(_0xfad9[2]);var moment=require(_0xfad9[3]);var BPromise=require(_0xfad9[4]);var util=require(_0xfad9[5]);var path=require(_0xfad9[6]);var sox=require(_0xfad9[7]);var ejs=require(_0xfad9[8]);var fs=require(_0xfad9[9]);var _=require(_0xfad9[10]);var squel=require(_0xfad9[11]);var crypto=require(_0xfad9[12]);var jsforce=require(_0xfad9[13]);var toCsv=require(_0xfad9[14]);var qs=require(_0xfad9[15]);var logger=require(_0xfad9[17])(_0xfad9[16]);var utils=require(_0xfad9[18]);var config=require(_0xfad9[19]);var db=require(_0xfad9[21])[_0xfad9[20]];function respondWithStatusCode(_0x2284x15,_0x2284x16,_0x2284x17){_0x2284x16= _0x2284x16|| 204;return function(_0x2284x18){if(_0x2284x18){logger[_0xfad9[24]](_0xfad9[22],_0x2284x17,_0x2284x16,_0xfad9[23]);logger[_0xfad9[26]](_0xfad9[25],_0x2284x17,_0x2284x16,_0xfad9[23]);return _0x2284x15[_0xfad9[27]](_0x2284x16)};return _0x2284x15[_0xfad9[29]](304)[_0xfad9[28]]()}}function respondWithResult(_0x2284x15,_0x2284x16,_0x2284x17){_0x2284x16= _0x2284x16|| 200;return function(_0x2284x18){if(_0x2284x18){logger[_0xfad9[24]](_0xfad9[22],_0x2284x17,_0x2284x16,_0xfad9[30]);logger[_0xfad9[26]](_0xfad9[25],_0x2284x17,_0x2284x16,_0xfad9[30],JSON[_0xfad9[31]](_0x2284x18));return _0x2284x15[_0xfad9[29]](_0x2284x16)[_0xfad9[32]](_0x2284x18)};return _0x2284x15[_0xfad9[29]](304)[_0xfad9[28]]()}}function respondWithFilteredResult(_0x2284x15,_0x2284x1b,_0x2284x17){return function(_0x2284x18){if(_0x2284x18){var _0x2284x1c=_0x2284x18[_0xfad9[33]],_0x2284x1d=_0x2284x1b[_0xfad9[34]],_0x2284x1e=_0x2284x1b[_0xfad9[34]]+ _0x2284x1b[_0xfad9[35]],_0x2284x16;if(_0x2284x1e>= _0x2284x1c){_0x2284x1e= _0x2284x1c;_0x2284x16= 200}else {_0x2284x16= 206};_0x2284x15[_0xfad9[29]](_0x2284x16);logger[_0xfad9[24]](_0xfad9[22],_0x2284x17,_0x2284x16,_0xfad9[36]);logger[_0xfad9[26]](_0xfad9[25],_0x2284x17,_0x2284x16,_0xfad9[30],JSON[_0xfad9[31]](_0x2284x18));return _0x2284x15[_0xfad9[40]](_0xfad9[37],_0x2284x1d+ _0xfad9[38]+ _0x2284x1e+ _0xfad9[39]+ _0x2284x1c)[_0xfad9[32]](_0x2284x18)};return null}}function patchUpdates(_0x2284x20){return function(_0x2284x18){try{jsonpatch[_0xfad9[41]](_0x2284x18,_0x2284x20,true)}catch(err){return BPromise[_0xfad9[42]](err)};return _0x2284x18[_0xfad9[43]]()}}function saveUpdates(_0x2284x22,_0x2284x16,_0x2284x17){return function(_0x2284x18){if(_0x2284x18){return _0x2284x18[_0xfad9[46]](_0x2284x22)[_0xfad9[45]](function(_0x2284x23){logger[_0xfad9[24]](_0xfad9[22],_0x2284x17,_0x2284x16,_0xfad9[44]);logger[_0xfad9[26]](_0xfad9[25],_0x2284x17,_0x2284x16,_0xfad9[44],JSON[_0xfad9[31]](_0x2284x18));return _0x2284x23})};return null}}function removeEntity(_0x2284x15,_0x2284x16,_0x2284x17){return function(_0x2284x18){if(_0x2284x18){return _0x2284x18[_0xfad9[48]]()[_0xfad9[45]](function(){logger[_0xfad9[24]](_0xfad9[22],_0x2284x17,_0x2284x16,_0xfad9[47]);logger[_0xfad9[26]](_0xfad9[25],_0x2284x17,_0x2284x16,_0xfad9[47],JSON[_0xfad9[31]](_0x2284x18));_0x2284x15[_0xfad9[29]](204)[_0xfad9[28]]()})}}}function handleEntityNotFound(_0x2284x15,_0x2284x16,_0x2284x17){return function(_0x2284x18){if(!_0x2284x18){logger[_0xfad9[50]](_0xfad9[22],_0x2284x17,404,_0xfad9[49]);_0x2284x15[_0xfad9[29]](404)[_0xfad9[28]]();return null};return _0x2284x18}}function handleError(_0x2284x15,_0x2284x16,_0x2284x17){_0x2284x16= _0x2284x16|| 500;return function(_0x2284x27){logger[_0xfad9[50]](_0xfad9[22],_0x2284x17,_0x2284x16,JSON[_0xfad9[31]](_0x2284x27));delete _0x2284x27[_0xfad9[51]];_0x2284x15[_0xfad9[29]](_0x2284x16)[_0xfad9[52]](_0x2284x27)}}exports[_0xfad9[53]]= function(_0x2284x28,_0x2284x15){var _0x2284x1b={},_0x2284x29={};_0x2284x29[_0xfad9[54]]= _[_0xfad9[57]](db[_0xfad9[56]][_0xfad9[55]]);_0x2284x29[_0xfad9[58]]= _[_0xfad9[57]](_0x2284x28[_0xfad9[58]]);_0x2284x29[_0xfad9[59]]= _[_0xfad9[60]](_0x2284x29[_0xfad9[54]],_0x2284x29[_0xfad9[58]]);_0x2284x1b[_0xfad9[61]]= _[_0xfad9[60]](_0x2284x29[_0xfad9[54]],qs[_0xfad9[62]](_0x2284x28[_0xfad9[58]][_0xfad9[62]]));_0x2284x1b[_0xfad9[61]]= (_0x2284x1b[_0xfad9[61]][_0xfad9[63]])?_0x2284x1b[_0xfad9[61]]:_0x2284x29[_0xfad9[54]];if(!_0x2284x28[_0xfad9[58]][_0xfad9[65]](_0xfad9[64])){_0x2284x1b[_0xfad9[35]]= qs[_0xfad9[35]](_0x2284x28[_0xfad9[58]][_0xfad9[35]]);_0x2284x1b[_0xfad9[34]]= qs[_0xfad9[34]](_0x2284x28[_0xfad9[58]][_0xfad9[34]])};_0x2284x1b[_0xfad9[66]]= qs[_0xfad9[67]](_0x2284x28[_0xfad9[58]][_0xfad9[67]]);_0x2284x1b[_0xfad9[68]]= qs[_0xfad9[59]](_[_0xfad9[69]](_0x2284x28[_0xfad9[58]],_0x2284x29[_0xfad9[59]]));if(_0x2284x28[_0xfad9[58]][_0xfad9[70]]){_0x2284x1b[_0xfad9[68]]= _[_0xfad9[73]](_0x2284x1b[_0xfad9[68]],{$or:_[_0xfad9[72]](_0x2284x1b[_0xfad9[61]],function(_0x2284x2a){var _0x2284x2b={};_0x2284x2b[_0x2284x2a]= {$like:_0xfad9[71]+ _0x2284x28[_0xfad9[58]][_0xfad9[70]]+ _0xfad9[71]};return _0x2284x2b})})};_0x2284x1b= _[_0xfad9[73]]({},_0x2284x1b,_0x2284x28[_0xfad9[74]]);return db[_0xfad9[56]][_0xfad9[76]](_0x2284x1b)[_0xfad9[45]](respondWithFilteredResult(_0x2284x15,_0x2284x1b,_0xfad9[53]))[_0xfad9[75]](handleError(_0x2284x15,null,_0xfad9[53]))};exports[_0xfad9[77]]= function(_0x2284x28,_0x2284x15){var _0x2284x1b={raw:true,where:{id:_0x2284x28[_0xfad9[79]][_0xfad9[78]]}},_0x2284x29={};_0x2284x29[_0xfad9[54]]= _[_0xfad9[57]](db[_0xfad9[56]][_0xfad9[55]]);_0x2284x29[_0xfad9[58]]= _[_0xfad9[57]](_0x2284x28[_0xfad9[58]]);_0x2284x29[_0xfad9[59]]= _[_0xfad9[60]](_0x2284x29[_0xfad9[54]],_0x2284x29[_0xfad9[58]]);_0x2284x1b[_0xfad9[61]]= _[_0xfad9[60]](_0x2284x29[_0xfad9[54]],qs[_0xfad9[62]](_0x2284x28[_0xfad9[58]][_0xfad9[62]]));_0x2284x1b[_0xfad9[61]]= (_0x2284x1b[_0xfad9[61]][_0xfad9[63]])?_0x2284x1b[_0xfad9[61]]:_0x2284x29[_0xfad9[54]];_0x2284x1b= _[_0xfad9[73]]({},_0x2284x1b,_0x2284x28[_0xfad9[74]]);return db[_0xfad9[56]][_0xfad9[80]](_0x2284x1b)[_0xfad9[45]](handleEntityNotFound(_0x2284x15,null,_0xfad9[77]))[_0xfad9[45]](respondWithResult(_0x2284x15,null,_0xfad9[77]))[_0xfad9[75]](handleError(_0x2284x15,null,_0xfad9[77]))};exports[_0xfad9[81]]= function(_0x2284x28,_0x2284x15){return db[_0xfad9[56]][_0xfad9[81]](_0x2284x28[_0xfad9[82]],{})[_0xfad9[45]](respondWithResult(_0x2284x15,201,_0xfad9[81]))[_0xfad9[75]](handleError(_0x2284x15,null,_0xfad9[81]))};exports[_0xfad9[46]]= function(_0x2284x28,_0x2284x15){if(_0x2284x28[_0xfad9[82]][_0xfad9[78]]){delete _0x2284x28[_0xfad9[82]][_0xfad9[78]]};return db[_0xfad9[56]][_0xfad9[80]]({where:{id:_0x2284x28[_0xfad9[79]][_0xfad9[78]]}})[_0xfad9[45]](handleEntityNotFound(_0x2284x15,null,_0xfad9[46]))[_0xfad9[45]](saveUpdates(_0x2284x28[_0xfad9[82]],null,_0xfad9[46]))[_0xfad9[45]](respondWithResult(_0x2284x15,null,_0xfad9[46]))[_0xfad9[75]](handleError(_0x2284x15,null,_0xfad9[46]))};exports[_0xfad9[48]]= function(_0x2284x28,_0x2284x15){return db[_0xfad9[56]][_0xfad9[80]]({where:{id:_0x2284x28[_0xfad9[79]][_0xfad9[78]]}})[_0xfad9[45]](handleEntityNotFound(_0x2284x15,null,_0xfad9[48]))[_0xfad9[45]](removeEntity(_0x2284x15,null,_0xfad9[48]))[_0xfad9[75]](handleError(_0x2284x15,null,_0xfad9[48]))}
\ No newline at end of file
+var _0xba04=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x50\x61\x75\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x50\x61\x75\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x50\x61\x75\x73\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xba04[0];var jsonpatch=require(_0xba04[1]);var rp=require(_0xba04[2]);var moment=require(_0xba04[3]);var BPromise=require(_0xba04[4]);var util=require(_0xba04[5]);var path=require(_0xba04[6]);var sox=require(_0xba04[7]);var ejs=require(_0xba04[8]);var fs=require(_0xba04[9]);var _=require(_0xba04[10]);var squel=require(_0xba04[11]);var crypto=require(_0xba04[12]);var jsforce=require(_0xba04[13]);var toCsv=require(_0xba04[14]);var qs=require(_0xba04[15]);var logger=require(_0xba04[17])(_0xba04[16]);var utils=require(_0xba04[18]);var config=require(_0xba04[19]);var db=require(_0xba04[21])[_0xba04[20]];function respondWithStatusCode(_0x8b15x15,_0x8b15x16,_0x8b15x17){_0x8b15x16= _0x8b15x16|| 204;return function(_0x8b15x18){if(_0x8b15x18){logger[_0xba04[24]](_0xba04[22],_0x8b15x17,_0x8b15x16,_0xba04[23]);logger[_0xba04[26]](_0xba04[25],_0x8b15x17,_0x8b15x16,_0xba04[23]);return _0x8b15x15[_0xba04[27]](_0x8b15x16)};return _0x8b15x15[_0xba04[29]](304)[_0xba04[28]]()}}function respondWithResult(_0x8b15x15,_0x8b15x16,_0x8b15x17){_0x8b15x16= _0x8b15x16|| 200;return function(_0x8b15x18){if(_0x8b15x18){logger[_0xba04[24]](_0xba04[22],_0x8b15x17,_0x8b15x16,_0xba04[30]);logger[_0xba04[26]](_0xba04[25],_0x8b15x17,_0x8b15x16,_0xba04[30],JSON[_0xba04[31]](_0x8b15x18));return _0x8b15x15[_0xba04[29]](_0x8b15x16)[_0xba04[32]](_0x8b15x18)};return _0x8b15x15[_0xba04[29]](304)[_0xba04[28]]()}}function respondWithFilteredResult(_0x8b15x15,_0x8b15x1b,_0x8b15x17){return function(_0x8b15x18){if(_0x8b15x18){var _0x8b15x1c=_0x8b15x18[_0xba04[33]],_0x8b15x1d=_0x8b15x1b[_0xba04[34]],_0x8b15x1e=_0x8b15x1b[_0xba04[34]]+ _0x8b15x1b[_0xba04[35]],_0x8b15x16;if(_0x8b15x1e>= _0x8b15x1c){_0x8b15x1e= _0x8b15x1c;_0x8b15x16= 200}else {_0x8b15x16= 206};_0x8b15x15[_0xba04[29]](_0x8b15x16);logger[_0xba04[24]](_0xba04[22],_0x8b15x17,_0x8b15x16,_0xba04[36]);logger[_0xba04[26]](_0xba04[25],_0x8b15x17,_0x8b15x16,_0xba04[30],JSON[_0xba04[31]](_0x8b15x18));return _0x8b15x15[_0xba04[40]](_0xba04[37],_0x8b15x1d+ _0xba04[38]+ _0x8b15x1e+ _0xba04[39]+ _0x8b15x1c)[_0xba04[32]](_0x8b15x18)};return null}}function patchUpdates(_0x8b15x20){return function(_0x8b15x18){try{jsonpatch[_0xba04[41]](_0x8b15x18,_0x8b15x20,true)}catch(err){return BPromise[_0xba04[42]](err)};return _0x8b15x18[_0xba04[43]]()}}function saveUpdates(_0x8b15x22,_0x8b15x16,_0x8b15x17){return function(_0x8b15x18){if(_0x8b15x18){return _0x8b15x18[_0xba04[46]](_0x8b15x22)[_0xba04[45]](function(_0x8b15x23){logger[_0xba04[24]](_0xba04[22],_0x8b15x17,_0x8b15x16,_0xba04[44]);logger[_0xba04[26]](_0xba04[25],_0x8b15x17,_0x8b15x16,_0xba04[44],JSON[_0xba04[31]](_0x8b15x18));return _0x8b15x23})};return null}}function removeEntity(_0x8b15x15,_0x8b15x16,_0x8b15x17){return function(_0x8b15x18){if(_0x8b15x18){return _0x8b15x18[_0xba04[48]]()[_0xba04[45]](function(){logger[_0xba04[24]](_0xba04[22],_0x8b15x17,_0x8b15x16,_0xba04[47]);logger[_0xba04[26]](_0xba04[25],_0x8b15x17,_0x8b15x16,_0xba04[47],JSON[_0xba04[31]](_0x8b15x18));_0x8b15x15[_0xba04[29]](204)[_0xba04[28]]()})}}}function handleEntityNotFound(_0x8b15x15,_0x8b15x16,_0x8b15x17){return function(_0x8b15x18){if(!_0x8b15x18){logger[_0xba04[50]](_0xba04[22],_0x8b15x17,404,_0xba04[49]);_0x8b15x15[_0xba04[29]](404)[_0xba04[28]]();return null};return _0x8b15x18}}function handleError(_0x8b15x15,_0x8b15x16,_0x8b15x17){_0x8b15x16= _0x8b15x16|| 500;return function(_0x8b15x27){logger[_0xba04[50]](_0xba04[22],_0x8b15x17,_0x8b15x16,JSON[_0xba04[31]](_0x8b15x27));delete _0x8b15x27[_0xba04[51]];_0x8b15x15[_0xba04[29]](_0x8b15x16)[_0xba04[52]](_0x8b15x27)}}exports[_0xba04[53]]= function(_0x8b15x28,_0x8b15x15){var _0x8b15x1b={},_0x8b15x29={};_0x8b15x29[_0xba04[54]]= _[_0xba04[57]](db[_0xba04[56]][_0xba04[55]]);_0x8b15x29[_0xba04[58]]= _[_0xba04[57]](_0x8b15x28[_0xba04[58]]);_0x8b15x29[_0xba04[59]]= _[_0xba04[60]](_0x8b15x29[_0xba04[54]],_0x8b15x29[_0xba04[58]]);_0x8b15x1b[_0xba04[61]]= _[_0xba04[60]](_0x8b15x29[_0xba04[54]],qs[_0xba04[62]](_0x8b15x28[_0xba04[58]][_0xba04[62]]));_0x8b15x1b[_0xba04[61]]= (_0x8b15x1b[_0xba04[61]][_0xba04[63]])?_0x8b15x1b[_0xba04[61]]:_0x8b15x29[_0xba04[54]];if(!_0x8b15x28[_0xba04[58]][_0xba04[65]](_0xba04[64])){_0x8b15x1b[_0xba04[35]]= qs[_0xba04[35]](_0x8b15x28[_0xba04[58]][_0xba04[35]]);_0x8b15x1b[_0xba04[34]]= qs[_0xba04[34]](_0x8b15x28[_0xba04[58]][_0xba04[34]])};_0x8b15x1b[_0xba04[66]]= qs[_0xba04[67]](_0x8b15x28[_0xba04[58]][_0xba04[67]]);_0x8b15x1b[_0xba04[68]]= qs[_0xba04[59]](_[_0xba04[69]](_0x8b15x28[_0xba04[58]],_0x8b15x29[_0xba04[59]]));if(_0x8b15x28[_0xba04[58]][_0xba04[70]]){_0x8b15x1b[_0xba04[68]]= _[_0xba04[73]](_0x8b15x1b[_0xba04[68]],{$or:_[_0xba04[72]](_0x8b15x1b[_0xba04[61]],function(_0x8b15x2a){var _0x8b15x2b={};_0x8b15x2b[_0x8b15x2a]= {$like:_0xba04[71]+ _0x8b15x28[_0xba04[58]][_0xba04[70]]+ _0xba04[71]};return _0x8b15x2b})})};_0x8b15x1b= _[_0xba04[73]]({},_0x8b15x1b,_0x8b15x28[_0xba04[74]]);return db[_0xba04[56]][_0xba04[76]](_0x8b15x1b)[_0xba04[45]](respondWithFilteredResult(_0x8b15x15,_0x8b15x1b,_0xba04[53]))[_0xba04[75]](handleError(_0x8b15x15,null,_0xba04[53]))};exports[_0xba04[77]]= function(_0x8b15x28,_0x8b15x15){var _0x8b15x1b={raw:true,where:{id:_0x8b15x28[_0xba04[79]][_0xba04[78]]}},_0x8b15x29={};_0x8b15x29[_0xba04[54]]= _[_0xba04[57]](db[_0xba04[56]][_0xba04[55]]);_0x8b15x29[_0xba04[58]]= _[_0xba04[57]](_0x8b15x28[_0xba04[58]]);_0x8b15x29[_0xba04[59]]= _[_0xba04[60]](_0x8b15x29[_0xba04[54]],_0x8b15x29[_0xba04[58]]);_0x8b15x1b[_0xba04[61]]= _[_0xba04[60]](_0x8b15x29[_0xba04[54]],qs[_0xba04[62]](_0x8b15x28[_0xba04[58]][_0xba04[62]]));_0x8b15x1b[_0xba04[61]]= (_0x8b15x1b[_0xba04[61]][_0xba04[63]])?_0x8b15x1b[_0xba04[61]]:_0x8b15x29[_0xba04[54]];_0x8b15x1b= _[_0xba04[73]]({},_0x8b15x1b,_0x8b15x28[_0xba04[74]]);return db[_0xba04[56]][_0xba04[80]](_0x8b15x1b)[_0xba04[45]](handleEntityNotFound(_0x8b15x15,null,_0xba04[77]))[_0xba04[45]](respondWithResult(_0x8b15x15,null,_0xba04[77]))[_0xba04[75]](handleError(_0x8b15x15,null,_0xba04[77]))};exports[_0xba04[81]]= function(_0x8b15x28,_0x8b15x15){return db[_0xba04[56]][_0xba04[81]](_0x8b15x28[_0xba04[82]],{})[_0xba04[45]](respondWithResult(_0x8b15x15,201,_0xba04[81]))[_0xba04[75]](handleError(_0x8b15x15,null,_0xba04[81]))};exports[_0xba04[46]]= function(_0x8b15x28,_0x8b15x15){if(_0x8b15x28[_0xba04[82]][_0xba04[78]]){delete _0x8b15x28[_0xba04[82]][_0xba04[78]]};return db[_0xba04[56]][_0xba04[80]]({where:{id:_0x8b15x28[_0xba04[79]][_0xba04[78]]}})[_0xba04[45]](handleEntityNotFound(_0x8b15x15,null,_0xba04[46]))[_0xba04[45]](saveUpdates(_0x8b15x28[_0xba04[82]],null,_0xba04[46]))[_0xba04[45]](respondWithResult(_0x8b15x15,null,_0xba04[46]))[_0xba04[75]](handleError(_0x8b15x15,null,_0xba04[46]))};exports[_0xba04[48]]= function(_0x8b15x28,_0x8b15x15){return db[_0xba04[56]][_0xba04[80]]({where:{id:_0x8b15x28[_0xba04[79]][_0xba04[78]]}})[_0xba04[45]](handleEntityNotFound(_0x8b15x15,null,_0xba04[48]))[_0xba04[45]](removeEntity(_0x8b15x15,null,_0xba04[48]))[_0xba04[75]](handleError(_0x8b15x15,null,_0xba04[48]))}
\ No newline at end of file
index 77b584a..7921d6a 100644 (file)
@@ -1 +1 @@
-var _0x4aea=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x70\x61\x75\x73\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x50\x61\x75\x73\x65","\x74\x6F\x6F\x6C\x73\x5F\x70\x61\x75\x73\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x4aea[0];var _=require(_0x4aea[1]);var util=require(_0x4aea[2]);var logger=require(_0x4aea[4])(_0x4aea[3]);var attributes=require(_0x4aea[5]);module[_0x4aea[6]]= function(_0x74e7x5,_0x74e7x6){return _0x74e7x5[_0x4aea[9]](_0x4aea[7],attributes,{tableName:_0x4aea[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x3eb8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x70\x61\x75\x73\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x50\x61\x75\x73\x65","\x74\x6F\x6F\x6C\x73\x5F\x70\x61\x75\x73\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x3eb8[0];var _=require(_0x3eb8[1]);var util=require(_0x3eb8[2]);var logger=require(_0x3eb8[4])(_0x3eb8[3]);var attributes=require(_0x3eb8[5]);module[_0x3eb8[6]]= function(_0xfcedx5,_0xfcedx6){return _0xfcedx5[_0x3eb8[9]](_0x3eb8[7],attributes,{tableName:_0x3eb8[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5d0c665..9e0fc93 100644 (file)
@@ -1 +1 @@
-var _0x4935=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x50\x61\x75\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x50\x61\x75\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x4935[0];var _=require(_0x4935[1]);var util=require(_0x4935[2]);var moment=require(_0x4935[3]);var BPromise=require(_0x4935[4]);var db=require(_0x4935[6])[_0x4935[5]];var utils=require(_0x4935[7]);var logger=require(_0x4935[9])(_0x4935[8]);var jayson=require(_0x4935[10]);var client=jayson[_0x4935[12]][_0x4935[11]]({port:9002});function respondWithRpcPromise(_0xd922xb,_0xd922xc,_0xd922xd){return  new BPromise(function(_0xd922xe,_0xd922xf){return client[_0x4935[25]](_0xd922xb,_0xd922xd)[_0x4935[24]](function(_0xd922x11){logger[_0x4935[17]](_0x4935[13],_0xd922xc,_0x4935[16]);logger[_0x4935[20]](_0x4935[18],_0xd922xc,_0x4935[16],JSON[_0x4935[19]](_0xd922x11));if(_0xd922x11[_0x4935[14]]){if(_0xd922x11[_0x4935[14]][_0x4935[21]]=== 500){logger[_0x4935[14]](_0x4935[13],_0xd922xc,_0xd922x11[_0x4935[14]][_0x4935[22]]);return _0xd922xf(_0xd922x11[_0x4935[14]][_0x4935[22]])};logger[_0x4935[14]](_0x4935[13],_0xd922xc,_0xd922x11[_0x4935[14]][_0x4935[22]]);return _0xd922xe(_0xd922x11[_0x4935[14]][_0x4935[22]])}else {logger[_0x4935[17]](_0x4935[13],_0xd922xc,_0x4935[16]);_0xd922xe(_0xd922x11[_0x4935[23]][_0x4935[22]])}})[_0x4935[15]](function(_0xd922x10){logger[_0x4935[14]](_0x4935[13],_0xd922xc,_0xd922x10);_0xd922xf(_0xd922x10)})})}
\ No newline at end of file
+var _0xb4b3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x50\x61\x75\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x50\x61\x75\x73\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xb4b3[0];var _=require(_0xb4b3[1]);var util=require(_0xb4b3[2]);var moment=require(_0xb4b3[3]);var BPromise=require(_0xb4b3[4]);var db=require(_0xb4b3[6])[_0xb4b3[5]];var utils=require(_0xb4b3[7]);var logger=require(_0xb4b3[9])(_0xb4b3[8]);var jayson=require(_0xb4b3[10]);var client=jayson[_0xb4b3[12]][_0xb4b3[11]]({port:9002});function respondWithRpcPromise(_0xc732xb,_0xc732xc,_0xc732xd){return  new BPromise(function(_0xc732xe,_0xc732xf){return client[_0xb4b3[25]](_0xc732xb,_0xc732xd)[_0xb4b3[24]](function(_0xc732x11){logger[_0xb4b3[17]](_0xb4b3[13],_0xc732xc,_0xb4b3[16]);logger[_0xb4b3[20]](_0xb4b3[18],_0xc732xc,_0xb4b3[16],JSON[_0xb4b3[19]](_0xc732x11));if(_0xc732x11[_0xb4b3[14]]){if(_0xc732x11[_0xb4b3[14]][_0xb4b3[21]]=== 500){logger[_0xb4b3[14]](_0xb4b3[13],_0xc732xc,_0xc732x11[_0xb4b3[14]][_0xb4b3[22]]);return _0xc732xf(_0xc732x11[_0xb4b3[14]][_0xb4b3[22]])};logger[_0xb4b3[14]](_0xb4b3[13],_0xc732xc,_0xc732x11[_0xb4b3[14]][_0xb4b3[22]]);return _0xc732xe(_0xc732x11[_0xb4b3[14]][_0xb4b3[22]])}else {logger[_0xb4b3[17]](_0xb4b3[13],_0xc732xc,_0xb4b3[16]);_0xc732xe(_0xc732x11[_0xb4b3[23]][_0xb4b3[22]])}})[_0xb4b3[15]](function(_0xc732x10){logger[_0xb4b3[14]](_0xb4b3[13],_0xc732xc,_0xc732x10);_0xc732xf(_0xc732x10)})})}
\ No newline at end of file
index e721abe..2e77ac5 100644 (file)
@@ -1 +1 @@
-var _0xb10e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x70\x6D\x32\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xb10e[0];var express=require(_0xb10e[1]);var router=express.Router();var auth=require(_0xb10e[2]);var controller=require(_0xb10e[3]);router[_0xb10e[6]](_0xb10e[4],controller[_0xb10e[5]]);router[_0xb10e[6]](_0xb10e[7],controller[_0xb10e[8]]);router[_0xb10e[10]](_0xb10e[7],controller[_0xb10e[9]]);module[_0xb10e[11]]= router
\ No newline at end of file
+var _0xa312=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x70\x6D\x32\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xa312[0];var express=require(_0xa312[1]);var router=express.Router();var auth=require(_0xa312[2]);var controller=require(_0xa312[3]);router[_0xa312[6]](_0xa312[4],controller[_0xa312[5]]);router[_0xa312[6]](_0xa312[7],controller[_0xa312[8]]);router[_0xa312[10]](_0xa312[7],controller[_0xa312[9]]);module[_0xa312[11]]= router
\ No newline at end of file
index 4598819..3855a05 100644 (file)
@@ -1 +1 @@
-var _0xb4e3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x70\x6D\x32","\x70\x6D\x32","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x70\x6D\x32\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x69\x6E\x66\x6F","\x70\x6D\x32\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x6A\x73\x6F\x6E","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6C\x69\x73\x74","\x63\x61\x74\x63\x68","\x65\x78\x70\x72\x65\x73\x73","\x6D\x6F\x74\x69\x6F\x6E\x32","\x72\x65\x6A\x65\x63\x74","\x6C\x65\x6E\x67\x74\x68","\x74\x68\x65\x6E","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x64\x65\x73\x63\x72\x69\x62\x65","\x75\x70\x64\x61\x74\x65","\x62\x6F\x64\x79","\x72\x65\x73\x74\x61\x72\x74","\x73\x74\x6F\x70","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x73\x74\x61\x74\x75\x73"];_0xb4e3[0];var _=require(_0xb4e3[1]);var pm2=require(_0xb4e3[2]);var logger=require(_0xb4e3[4])(_0xb4e3[3]);function handleEntityNotFound(_0x261bx5,_0x261bx6,_0x261bx7){return function(_0x261bx8){if(!_0x261bx8){logger[_0xb4e3[7]](_0xb4e3[5],_0x261bx7,404,_0xb4e3[6]);_0x261bx5[_0xb4e3[9]](404)[_0xb4e3[8]]();return null};return _0x261bx8}}function respondWithResult(_0x261bx5,_0x261bx6,_0x261bx7){_0x261bx6= _0x261bx6|| 200;return function(_0x261bx8){if(_0x261bx8){logger[_0xb4e3[11]](_0xb4e3[5],_0x261bx7,_0x261bx6,_0xb4e3[10]);logger[_0xb4e3[14]](_0xb4e3[12],_0x261bx7,_0x261bx6,_0xb4e3[10],JSON[_0xb4e3[13]](_0x261bx8));return _0x261bx5[_0xb4e3[9]](_0x261bx6)[_0xb4e3[15]](_0x261bx8)};return null}}function handleError(_0x261bx5,_0x261bx6,_0x261bx7){_0x261bx6= _0x261bx6|| 500;return function(_0x261bxb){logger[_0xb4e3[7]](_0xb4e3[5],_0x261bx7,_0x261bx6,JSON[_0xb4e3[13]](_0x261bxb));delete _0x261bxb[_0xb4e3[16]];_0x261bx5[_0xb4e3[9]](_0x261bx6)[_0xb4e3[17]](_0x261bxb)}}exports[_0xb4e3[18]]= function(_0x261bxc,_0x261bx5){logger[_0xb4e3[11]](_0xb4e3[19]);return pm2[_0xb4e3[19]]()[_0xb4e3[25]](function(_0x261bxd){if(_0x261bxd){logger[_0xb4e3[11]](_0xb4e3[5],_0xb4e3[18],200,_0xb4e3[10]);logger[_0xb4e3[14]](_0xb4e3[12],_0xb4e3[18],200,_0xb4e3[10],JSON[_0xb4e3[13]](_0x261bxd));var _0x261bxe=_[_0xb4e3[23]](_0x261bxd,function(_0x261bxf){return _0x261bxf[_0xb4e3[16]]=== _0xb4e3[21]|| _0x261bxf[_0xb4e3[16]]=== _0xb4e3[22]});return _0x261bx5[_0xb4e3[9]](200)[_0xb4e3[15]]({rows:_0x261bxe,count:_0x261bxe[_0xb4e3[24]]})};return null})[_0xb4e3[20]](handleError(_0x261bx5,null,_0xb4e3[18]))};exports[_0xb4e3[26]]= function(_0x261bxc,_0x261bx5){return pm2[_0xb4e3[29]](_0x261bxc[_0xb4e3[28]][_0xb4e3[27]])[_0xb4e3[25]](function(_0x261bx8){if(_0x261bx8){logger[_0xb4e3[11]](_0xb4e3[5],_0xb4e3[26],200,_0xb4e3[10]);logger[_0xb4e3[14]](_0xb4e3[12],_0xb4e3[26],200,_0xb4e3[10],JSON[_0xb4e3[13]](_0x261bx8));return _0x261bx5[_0xb4e3[9]](200)[_0xb4e3[15]](_0x261bx8)};return null})[_0xb4e3[25]](handleEntityNotFound(_0x261bx5,null,_0xb4e3[26]))[_0xb4e3[20]](handleError(_0x261bx5,null,_0xb4e3[26]))};exports[_0xb4e3[30]]= function(_0x261bxc,_0x261bx5){if(_0x261bxc[_0xb4e3[31]][_0xb4e3[27]]){delete _0x261bxc[_0xb4e3[31]][_0xb4e3[27]]};var _0x261bx10={online:_0xb4e3[32],stopped:_0xb4e3[33]};logger[_0xb4e3[11]](JSON[_0xb4e3[13]](_0x261bxc[_0xb4e3[31]]));logger[_0xb4e3[11]](JSON[_0xb4e3[13]](_0x261bxc[_0xb4e3[28]]));if(_0x261bx10[_0xb4e3[34]](_0x261bxc[_0xb4e3[31]][_0xb4e3[9]])){return pm2[_0x261bx10[_0x261bxc[_0xb4e3[31]][_0xb4e3[9]]]](_0x261bxc[_0xb4e3[28]][_0xb4e3[27]])[_0xb4e3[25]](respondWithResult(_0x261bx5,200,_0xb4e3[30]))[_0xb4e3[20]](handleError(_0x261bx5,null,_0xb4e3[30]))}else {logger[_0xb4e3[7]](_0xb4e3[5],_0xb4e3[30],500,_0xb4e3[6]);return _0x261bx5[_0xb4e3[9]](500)[_0xb4e3[17]]({message:_0xb4e3[35]})}}
\ No newline at end of file
+var _0xbba3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x70\x6D\x32","\x70\x6D\x32","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x70\x6D\x32\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x69\x6E\x66\x6F","\x70\x6D\x32\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x6A\x73\x6F\x6E","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6C\x69\x73\x74","\x63\x61\x74\x63\x68","\x65\x78\x70\x72\x65\x73\x73","\x6D\x6F\x74\x69\x6F\x6E\x32","\x72\x65\x6A\x65\x63\x74","\x6C\x65\x6E\x67\x74\x68","\x74\x68\x65\x6E","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x64\x65\x73\x63\x72\x69\x62\x65","\x75\x70\x64\x61\x74\x65","\x62\x6F\x64\x79","\x72\x65\x73\x74\x61\x72\x74","\x73\x74\x6F\x70","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x73\x74\x61\x74\x75\x73"];_0xbba3[0];var _=require(_0xbba3[1]);var pm2=require(_0xbba3[2]);var logger=require(_0xbba3[4])(_0xbba3[3]);function handleEntityNotFound(_0xdb29x5,_0xdb29x6,_0xdb29x7){return function(_0xdb29x8){if(!_0xdb29x8){logger[_0xbba3[7]](_0xbba3[5],_0xdb29x7,404,_0xbba3[6]);_0xdb29x5[_0xbba3[9]](404)[_0xbba3[8]]();return null};return _0xdb29x8}}function respondWithResult(_0xdb29x5,_0xdb29x6,_0xdb29x7){_0xdb29x6= _0xdb29x6|| 200;return function(_0xdb29x8){if(_0xdb29x8){logger[_0xbba3[11]](_0xbba3[5],_0xdb29x7,_0xdb29x6,_0xbba3[10]);logger[_0xbba3[14]](_0xbba3[12],_0xdb29x7,_0xdb29x6,_0xbba3[10],JSON[_0xbba3[13]](_0xdb29x8));return _0xdb29x5[_0xbba3[9]](_0xdb29x6)[_0xbba3[15]](_0xdb29x8)};return null}}function handleError(_0xdb29x5,_0xdb29x6,_0xdb29x7){_0xdb29x6= _0xdb29x6|| 500;return function(_0xdb29xb){logger[_0xbba3[7]](_0xbba3[5],_0xdb29x7,_0xdb29x6,JSON[_0xbba3[13]](_0xdb29xb));delete _0xdb29xb[_0xbba3[16]];_0xdb29x5[_0xbba3[9]](_0xdb29x6)[_0xbba3[17]](_0xdb29xb)}}exports[_0xbba3[18]]= function(_0xdb29xc,_0xdb29x5){logger[_0xbba3[11]](_0xbba3[19]);return pm2[_0xbba3[19]]()[_0xbba3[25]](function(_0xdb29xd){if(_0xdb29xd){logger[_0xbba3[11]](_0xbba3[5],_0xbba3[18],200,_0xbba3[10]);logger[_0xbba3[14]](_0xbba3[12],_0xbba3[18],200,_0xbba3[10],JSON[_0xbba3[13]](_0xdb29xd));var _0xdb29xe=_[_0xbba3[23]](_0xdb29xd,function(_0xdb29xf){return _0xdb29xf[_0xbba3[16]]=== _0xbba3[21]|| _0xdb29xf[_0xbba3[16]]=== _0xbba3[22]});return _0xdb29x5[_0xbba3[9]](200)[_0xbba3[15]]({rows:_0xdb29xe,count:_0xdb29xe[_0xbba3[24]]})};return null})[_0xbba3[20]](handleError(_0xdb29x5,null,_0xbba3[18]))};exports[_0xbba3[26]]= function(_0xdb29xc,_0xdb29x5){return pm2[_0xbba3[29]](_0xdb29xc[_0xbba3[28]][_0xbba3[27]])[_0xbba3[25]](function(_0xdb29x8){if(_0xdb29x8){logger[_0xbba3[11]](_0xbba3[5],_0xbba3[26],200,_0xbba3[10]);logger[_0xbba3[14]](_0xbba3[12],_0xbba3[26],200,_0xbba3[10],JSON[_0xbba3[13]](_0xdb29x8));return _0xdb29x5[_0xbba3[9]](200)[_0xbba3[15]](_0xdb29x8)};return null})[_0xbba3[25]](handleEntityNotFound(_0xdb29x5,null,_0xbba3[26]))[_0xbba3[20]](handleError(_0xdb29x5,null,_0xbba3[26]))};exports[_0xbba3[30]]= function(_0xdb29xc,_0xdb29x5){if(_0xdb29xc[_0xbba3[31]][_0xbba3[27]]){delete _0xdb29xc[_0xbba3[31]][_0xbba3[27]]};var _0xdb29x10={online:_0xbba3[32],stopped:_0xbba3[33]};logger[_0xbba3[11]](JSON[_0xbba3[13]](_0xdb29xc[_0xbba3[31]]));logger[_0xbba3[11]](JSON[_0xbba3[13]](_0xdb29xc[_0xbba3[28]]));if(_0xdb29x10[_0xbba3[34]](_0xdb29xc[_0xbba3[31]][_0xbba3[9]])){return pm2[_0xdb29x10[_0xdb29xc[_0xbba3[31]][_0xbba3[9]]]](_0xdb29xc[_0xbba3[28]][_0xbba3[27]])[_0xbba3[25]](respondWithResult(_0xdb29x5,200,_0xbba3[30]))[_0xbba3[20]](handleError(_0xdb29x5,null,_0xbba3[30]))}else {logger[_0xbba3[7]](_0xbba3[5],_0xbba3[30],500,_0xbba3[6]);return _0xdb29x5[_0xbba3[9]](500)[_0xbba3[17]]({message:_0xbba3[35]})}}
\ No newline at end of file
index 6bf5dcd..cd8fdc7 100644 (file)
@@ -1 +1 @@
-var _0xaabf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x72\x70\x63\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x67\x65\x74","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73\x2F\x3A\x75\x6E\x69\x71\x75\x65\x69\x64","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73\x2F\x3A\x75\x6E\x69\x71\x75\x65\x69\x64\x2F\x68\x61\x6E\x67\x75\x70","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x48\x61\x6E\x67\x75\x70","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73\x2F\x3A\x75\x6E\x69\x71\x75\x65\x69\x64\x2F\x72\x65\x64\x69\x72\x65\x63\x74\x2F\x3A\x65\x78\x74\x65\x6E","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x52\x65\x64\x69\x72\x65\x63\x74","\x2F\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x2F\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x2F\x61\x67\x65\x6E\x74\x73","\x61\x67\x65\x6E\x74\x73","\x2F\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x2F\x74\x72\x75\x6E\x6B\x73","\x74\x72\x75\x6E\x6B\x73","\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xaabf[0];var multer=require(_0xaabf[1]);var util=require(_0xaabf[2]);var path=require(_0xaabf[3]);var express=require(_0xaabf[4]);var router=express.Router();var auth=require(_0xaabf[5]);var controller=require(_0xaabf[6]);router[_0xaabf[9]](_0xaabf[7],controller[_0xaabf[8]]);router[_0xaabf[9]](_0xaabf[10],controller[_0xaabf[11]]);router[_0xaabf[9]](_0xaabf[12],controller[_0xaabf[13]]);router[_0xaabf[9]](_0xaabf[14],controller[_0xaabf[15]]);router[_0xaabf[9]](_0xaabf[16],controller[_0xaabf[17]]);router[_0xaabf[9]](_0xaabf[18],controller[_0xaabf[19]]);router[_0xaabf[9]](_0xaabf[20],controller[_0xaabf[21]]);router[_0xaabf[9]](_0xaabf[22],controller[_0xaabf[23]]);router[_0xaabf[9]](_0xaabf[24],controller[_0xaabf[25]]);router[_0xaabf[9]](_0xaabf[26],controller[_0xaabf[27]]);router[_0xaabf[9]](_0xaabf[28],controller[_0xaabf[29]]);module[_0xaabf[30]]= router
\ No newline at end of file
+var _0xb76a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x72\x70\x63\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x67\x65\x74","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73\x2F\x3A\x75\x6E\x69\x71\x75\x65\x69\x64","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73\x2F\x3A\x75\x6E\x69\x71\x75\x65\x69\x64\x2F\x68\x61\x6E\x67\x75\x70","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x48\x61\x6E\x67\x75\x70","\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73\x2F\x3A\x75\x6E\x69\x71\x75\x65\x69\x64\x2F\x72\x65\x64\x69\x72\x65\x63\x74\x2F\x3A\x65\x78\x74\x65\x6E","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x52\x65\x64\x69\x72\x65\x63\x74","\x2F\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x2F\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2F\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x2F\x61\x67\x65\x6E\x74\x73","\x61\x67\x65\x6E\x74\x73","\x2F\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x2F\x74\x72\x75\x6E\x6B\x73","\x74\x72\x75\x6E\x6B\x73","\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xb76a[0];var multer=require(_0xb76a[1]);var util=require(_0xb76a[2]);var path=require(_0xb76a[3]);var express=require(_0xb76a[4]);var router=express.Router();var auth=require(_0xb76a[5]);var controller=require(_0xb76a[6]);router[_0xb76a[9]](_0xb76a[7],controller[_0xb76a[8]]);router[_0xb76a[9]](_0xb76a[10],controller[_0xb76a[11]]);router[_0xb76a[9]](_0xb76a[12],controller[_0xb76a[13]]);router[_0xb76a[9]](_0xb76a[14],controller[_0xb76a[15]]);router[_0xb76a[9]](_0xb76a[16],controller[_0xb76a[17]]);router[_0xb76a[9]](_0xb76a[18],controller[_0xb76a[19]]);router[_0xb76a[9]](_0xb76a[20],controller[_0xb76a[21]]);router[_0xb76a[9]](_0xb76a[22],controller[_0xb76a[23]]);router[_0xb76a[9]](_0xb76a[24],controller[_0xb76a[25]]);router[_0xb76a[9]](_0xb76a[26],controller[_0xb76a[27]]);router[_0xb76a[9]](_0xb76a[28],controller[_0xb76a[29]]);module[_0xb76a[30]]= router
\ No newline at end of file
index 9dd275f..f2f7096 100644 (file)
@@ -1 +1 @@
-var _0xdd94=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x6F\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x52\x70\x63\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x52\x70\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x52\x70\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x73\x65\x6E\x64","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x71\x75\x65\x72\x79","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C","\x70\x61\x72\x61\x6D\x73","\x6D\x65\x72\x67\x65","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x48\x61\x6E\x67\x75\x70","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x48\x61\x6E\x67\x75\x70","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x52\x65\x64\x69\x72\x65\x63\x74","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x52\x65\x64\x69\x72\x65\x63\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x4F\x75\x74\x62\x6F\x75\x6E\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x61\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x72\x75\x6E\x6B\x73","\x54\x72\x75\x6E\x6B\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x43\x61\x6D\x70\x61\x69\x67\x6E\x73"];_0xdd94[0];var BPromise=require(_0xdd94[1]);var moment=require(_0xdd94[2]);var _=require(_0xdd94[3]);var db=require(_0xdd94[5])[_0xdd94[4]];var logger=require(_0xdd94[7])(_0xdd94[6]);var jayson=require(_0xdd94[8]);var client=jayson[_0xdd94[10]][_0xdd94[9]]({port:9002});function respondWithRpcPromise(_0x171dx9,_0x171dxa,_0x171dxb){return  new BPromise(function(_0x171dxc,_0x171dxd){return client[_0xdd94[23]](_0x171dx9,_0x171dxb)[_0xdd94[22]](function(_0x171dxf){logger[_0xdd94[15]](_0xdd94[11],_0x171dxa,_0xdd94[14]);logger[_0xdd94[18]](_0xdd94[16],_0x171dxa,_0xdd94[14],JSON[_0xdd94[17]](_0x171dxf));if(_0x171dxf[_0xdd94[12]]){if(_0x171dxf[_0xdd94[12]][_0xdd94[19]]=== 500){logger[_0xdd94[12]](_0xdd94[11],_0x171dxa,_0x171dxf[_0xdd94[12]][_0xdd94[20]]);return _0x171dxd(_0x171dxf[_0xdd94[12]][_0xdd94[20]])};logger[_0xdd94[12]](_0xdd94[11],_0x171dxa,_0x171dxf[_0xdd94[12]][_0xdd94[20]]);return _0x171dxc(_0x171dxf[_0xdd94[12]][_0xdd94[20]])}else {logger[_0xdd94[15]](_0xdd94[11],_0x171dxa,_0xdd94[14]);_0x171dxc(_0x171dxf[_0xdd94[21]])}})[_0xdd94[13]](function(_0x171dxe){logger[_0xdd94[12]](_0xdd94[11],_0x171dxa,_0x171dxe);_0x171dxd(_0x171dxe)})})}function respondWithResult(_0x171dxf,_0x171dx11,_0x171dxa){_0x171dx11= _0x171dx11|| 200;return function(_0x171dx12){if(_0x171dx12){logger[_0xdd94[15]](_0xdd94[16],_0x171dxa,_0x171dx11,_0xdd94[24]);logger[_0xdd94[18]](_0xdd94[25],_0x171dxa,_0x171dx11,_0xdd94[24],JSON[_0xdd94[17]](_0x171dx12));return _0x171dxf[_0xdd94[27]](_0x171dx11)[_0xdd94[26]](_0x171dx12)};return null}}function handleError(_0x171dxf,_0x171dx11,_0x171dxa){_0x171dx11= _0x171dx11|| 500;return function(_0x171dxe){logger[_0xdd94[12]](_0xdd94[11],_0x171dxa,_0x171dx11,_0x171dxe);_0x171dxf[_0xdd94[27]](_0x171dx11)[_0xdd94[28]](_0x171dxe)}}exports[_0xdd94[29]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[30],_0xdd94[30],_0x171dxb[_0xdd94[31]])[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[30]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[30]))};exports[_0xdd94[32]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[33],_0xdd94[33],_0x171dxb[_0xdd94[31]])[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[33]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[33]))};exports[_0xdd94[34]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[35],_0xdd94[35],_[_0xdd94[37]](_0x171dxb[_0xdd94[31]],_0x171dxb[_0xdd94[36]]))[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[35]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[35]))};exports[_0xdd94[38]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[39],_0xdd94[39],_[_0xdd94[37]](_0x171dxb[_0xdd94[31]],_0x171dxb[_0xdd94[36]]))[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[39]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[39]))};exports[_0xdd94[40]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[41],_0xdd94[41],_[_0xdd94[37]](_0x171dxb[_0xdd94[31]],_0x171dxb[_0xdd94[36]]))[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[41]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[41]))};exports[_0xdd94[42]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[43],_0xdd94[43],_0x171dxb[_0xdd94[31]])[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[43]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[43]))};exports[_0xdd94[44]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[45],_0xdd94[45],_0x171dxb[_0xdd94[31]])[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[45]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[45]))};exports[_0xdd94[46]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[47],_0xdd94[47],_0x171dxb[_0xdd94[31]])[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[47]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[47]))};exports[_0xdd94[48]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[49],_0xdd94[49],_0x171dxb[_0xdd94[31]])[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[49]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[49]))};exports[_0xdd94[50]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[51],_0xdd94[51],_0x171dxb[_0xdd94[31]])[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[51]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[51]))};exports[_0xdd94[52]]= function(_0x171dxb,_0x171dxf){return respondWithRpcPromise(_0xdd94[53],_0xdd94[53],_0x171dxb[_0xdd94[31]])[_0xdd94[22]](respondWithResult(_0x171dxf,null,_0xdd94[53]))[_0xdd94[13]](handleError(_0x171dxf,null,_0xdd94[53]))}
\ No newline at end of file
+var _0x30d8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x6F\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x52\x70\x63\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x52\x70\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x52\x70\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x73\x65\x6E\x64","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x71\x75\x65\x72\x79","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C","\x70\x61\x72\x61\x6D\x73","\x6D\x65\x72\x67\x65","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x48\x61\x6E\x67\x75\x70","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x48\x61\x6E\x67\x75\x70","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x52\x65\x64\x69\x72\x65\x63\x74","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x43\x68\x61\x6E\x6E\x65\x6C\x52\x65\x64\x69\x72\x65\x63\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x4F\x75\x74\x62\x6F\x75\x6E\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x61\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x72\x75\x6E\x6B\x73","\x54\x72\x75\x6E\x6B\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x43\x61\x6D\x70\x61\x69\x67\x6E\x73"];_0x30d8[0];var BPromise=require(_0x30d8[1]);var moment=require(_0x30d8[2]);var _=require(_0x30d8[3]);var db=require(_0x30d8[5])[_0x30d8[4]];var logger=require(_0x30d8[7])(_0x30d8[6]);var jayson=require(_0x30d8[8]);var client=jayson[_0x30d8[10]][_0x30d8[9]]({port:9002});function respondWithRpcPromise(_0xb8f3x9,_0xb8f3xa,_0xb8f3xb){return  new BPromise(function(_0xb8f3xc,_0xb8f3xd){return client[_0x30d8[23]](_0xb8f3x9,_0xb8f3xb)[_0x30d8[22]](function(_0xb8f3xf){logger[_0x30d8[15]](_0x30d8[11],_0xb8f3xa,_0x30d8[14]);logger[_0x30d8[18]](_0x30d8[16],_0xb8f3xa,_0x30d8[14],JSON[_0x30d8[17]](_0xb8f3xf));if(_0xb8f3xf[_0x30d8[12]]){if(_0xb8f3xf[_0x30d8[12]][_0x30d8[19]]=== 500){logger[_0x30d8[12]](_0x30d8[11],_0xb8f3xa,_0xb8f3xf[_0x30d8[12]][_0x30d8[20]]);return _0xb8f3xd(_0xb8f3xf[_0x30d8[12]][_0x30d8[20]])};logger[_0x30d8[12]](_0x30d8[11],_0xb8f3xa,_0xb8f3xf[_0x30d8[12]][_0x30d8[20]]);return _0xb8f3xc(_0xb8f3xf[_0x30d8[12]][_0x30d8[20]])}else {logger[_0x30d8[15]](_0x30d8[11],_0xb8f3xa,_0x30d8[14]);_0xb8f3xc(_0xb8f3xf[_0x30d8[21]])}})[_0x30d8[13]](function(_0xb8f3xe){logger[_0x30d8[12]](_0x30d8[11],_0xb8f3xa,_0xb8f3xe);_0xb8f3xd(_0xb8f3xe)})})}function respondWithResult(_0xb8f3xf,_0xb8f3x11,_0xb8f3xa){_0xb8f3x11= _0xb8f3x11|| 200;return function(_0xb8f3x12){if(_0xb8f3x12){logger[_0x30d8[15]](_0x30d8[16],_0xb8f3xa,_0xb8f3x11,_0x30d8[24]);logger[_0x30d8[18]](_0x30d8[25],_0xb8f3xa,_0xb8f3x11,_0x30d8[24],JSON[_0x30d8[17]](_0xb8f3x12));return _0xb8f3xf[_0x30d8[27]](_0xb8f3x11)[_0x30d8[26]](_0xb8f3x12)};return null}}function handleError(_0xb8f3xf,_0xb8f3x11,_0xb8f3xa){_0xb8f3x11= _0xb8f3x11|| 500;return function(_0xb8f3xe){logger[_0x30d8[12]](_0x30d8[11],_0xb8f3xa,_0xb8f3x11,_0xb8f3xe);_0xb8f3xf[_0x30d8[27]](_0xb8f3x11)[_0x30d8[28]](_0xb8f3xe)}}exports[_0x30d8[29]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[30],_0x30d8[30],_0xb8f3xb[_0x30d8[31]])[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[30]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[30]))};exports[_0x30d8[32]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[33],_0x30d8[33],_0xb8f3xb[_0x30d8[31]])[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[33]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[33]))};exports[_0x30d8[34]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[35],_0x30d8[35],_[_0x30d8[37]](_0xb8f3xb[_0x30d8[31]],_0xb8f3xb[_0x30d8[36]]))[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[35]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[35]))};exports[_0x30d8[38]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[39],_0x30d8[39],_[_0x30d8[37]](_0xb8f3xb[_0x30d8[31]],_0xb8f3xb[_0x30d8[36]]))[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[39]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[39]))};exports[_0x30d8[40]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[41],_0x30d8[41],_[_0x30d8[37]](_0xb8f3xb[_0x30d8[31]],_0xb8f3xb[_0x30d8[36]]))[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[41]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[41]))};exports[_0x30d8[42]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[43],_0x30d8[43],_0xb8f3xb[_0x30d8[31]])[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[43]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[43]))};exports[_0x30d8[44]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[45],_0x30d8[45],_0xb8f3xb[_0x30d8[31]])[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[45]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[45]))};exports[_0x30d8[46]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[47],_0x30d8[47],_0xb8f3xb[_0x30d8[31]])[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[47]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[47]))};exports[_0x30d8[48]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[49],_0x30d8[49],_0xb8f3xb[_0x30d8[31]])[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[49]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[49]))};exports[_0x30d8[50]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[51],_0x30d8[51],_0xb8f3xb[_0x30d8[31]])[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[51]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[51]))};exports[_0x30d8[52]]= function(_0xb8f3xb,_0xb8f3xf){return respondWithRpcPromise(_0x30d8[53],_0x30d8[53],_0xb8f3xb[_0x30d8[31]])[_0x30d8[22]](respondWithResult(_0xb8f3xf,null,_0x30d8[53]))[_0x30d8[13]](handleError(_0xb8f3xf,null,_0x30d8[53]))}
\ No newline at end of file
index a5a9cfb..6cf2879 100644 (file)
@@ -1 +1 @@
-var _0x3825=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3825[0];var multer=require(_0x3825[1]);var util=require(_0x3825[2]);var path=require(_0x3825[3]);var express=require(_0x3825[4]);var router=express.Router();var auth=require(_0x3825[5]);var config=require(_0x3825[6]);var controller=require(_0x3825[7]);router[_0x3825[11]](_0x3825[8],auth[_0x3825[9]](),controller[_0x3825[10]]);router[_0x3825[11]](_0x3825[12],auth[_0x3825[9]](),controller[_0x3825[13]]);router[_0x3825[15]](_0x3825[8],auth[_0x3825[9]](),controller[_0x3825[14]]);router[_0x3825[17]](_0x3825[12],auth[_0x3825[9]](),controller[_0x3825[16]]);router[_0x3825[19]](_0x3825[12],auth[_0x3825[9]](),controller[_0x3825[18]]);module[_0x3825[20]]= router
\ No newline at end of file
+var _0xe38e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe38e[0];var multer=require(_0xe38e[1]);var util=require(_0xe38e[2]);var path=require(_0xe38e[3]);var express=require(_0xe38e[4]);var router=express.Router();var auth=require(_0xe38e[5]);var config=require(_0xe38e[6]);var controller=require(_0xe38e[7]);router[_0xe38e[11]](_0xe38e[8],auth[_0xe38e[9]](),controller[_0xe38e[10]]);router[_0xe38e[11]](_0xe38e[12],auth[_0xe38e[9]](),controller[_0xe38e[13]]);router[_0xe38e[15]](_0xe38e[8],auth[_0xe38e[9]](),controller[_0xe38e[14]]);router[_0xe38e[17]](_0xe38e[12],auth[_0xe38e[9]](),controller[_0xe38e[16]]);router[_0xe38e[19]](_0xe38e[12],auth[_0xe38e[9]](),controller[_0xe38e[18]]);module[_0xe38e[20]]= router
\ No newline at end of file
index e117032..4b214e3 100644 (file)
@@ -1 +1 @@
-var _0x6e11=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52"];_0x6e11[0];var Sequelize=require(_0x6e11[1]);module[_0x6e11[2]]= {name:{type:Sequelize[_0x6e11[3]]},description:{type:Sequelize[_0x6e11[3]]},type:{type:Sequelize[_0x6e11[3]]},active:{type:Sequelize[_0x6e11[4]],defaultValue:false},reportRange:{type:Sequelize[_0x6e11[3]]},sendMail:{type:Sequelize[_0x6e11[4]],defaultValue:false},email:{type:Sequelize[_0x6e11[3]],validate:{isEmail:true}},validityStart:{type:Sequelize[_0x6e11[5]],defaultValue:8},validityEnd:{type:Sequelize[_0x6e11[5]],defaultValue:16},cronType:{type:Sequelize[_0x6e11[3]]},cron:{type:Sequelize[_0x6e11[3]]},reportType:{type:Sequelize[_0x6e11[3]]},reportId:{type:Sequelize[_0x6e11[5]]},reportOutput:{type:Sequelize[_0x6e11[3]]},defaultEntry:{type:Sequelize[_0x6e11[4]],defaultValue:false}}
\ No newline at end of file
+var _0x4a28=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52"];_0x4a28[0];var Sequelize=require(_0x4a28[1]);module[_0x4a28[2]]= {name:{type:Sequelize[_0x4a28[3]]},description:{type:Sequelize[_0x4a28[3]]},type:{type:Sequelize[_0x4a28[3]]},active:{type:Sequelize[_0x4a28[4]],defaultValue:false},reportRange:{type:Sequelize[_0x4a28[3]]},sendMail:{type:Sequelize[_0x4a28[4]],defaultValue:false},email:{type:Sequelize[_0x4a28[3]],validate:{isEmail:true}},validityStart:{type:Sequelize[_0x4a28[5]],defaultValue:8},validityEnd:{type:Sequelize[_0x4a28[5]],defaultValue:16},cronType:{type:Sequelize[_0x4a28[3]]},cron:{type:Sequelize[_0x4a28[3]]},reportType:{type:Sequelize[_0x4a28[3]]},reportId:{type:Sequelize[_0x4a28[5]]},reportOutput:{type:Sequelize[_0x4a28[3]]},defaultEntry:{type:Sequelize[_0x4a28[4]],defaultValue:false}}
\ No newline at end of file
index 76b48ab..357bb43 100644 (file)
@@ -1 +1 @@
-var _0x13cd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x63\x68\x65\x64\x75\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x63\x68\x65\x64\x75\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x63\x68\x65\x64\x75\x6C\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x13cd[0];var jsonpatch=require(_0x13cd[1]);var rp=require(_0x13cd[2]);var moment=require(_0x13cd[3]);var BPromise=require(_0x13cd[4]);var util=require(_0x13cd[5]);var path=require(_0x13cd[6]);var sox=require(_0x13cd[7]);var ejs=require(_0x13cd[8]);var fs=require(_0x13cd[9]);var _=require(_0x13cd[10]);var squel=require(_0x13cd[11]);var crypto=require(_0x13cd[12]);var jsforce=require(_0x13cd[13]);var toCsv=require(_0x13cd[14]);var qs=require(_0x13cd[15]);var logger=require(_0x13cd[17])(_0x13cd[16]);var utils=require(_0x13cd[18]);var config=require(_0x13cd[19]);var db=require(_0x13cd[21])[_0x13cd[20]];function respondWithStatusCode(_0xd6e0x15,_0xd6e0x16,_0xd6e0x17){_0xd6e0x16= _0xd6e0x16|| 204;return function(_0xd6e0x18){if(_0xd6e0x18){logger[_0x13cd[24]](_0x13cd[22],_0xd6e0x17,_0xd6e0x16,_0x13cd[23]);logger[_0x13cd[26]](_0x13cd[25],_0xd6e0x17,_0xd6e0x16,_0x13cd[23]);return _0xd6e0x15[_0x13cd[27]](_0xd6e0x16)};return _0xd6e0x15[_0x13cd[29]](304)[_0x13cd[28]]()}}function respondWithResult(_0xd6e0x15,_0xd6e0x16,_0xd6e0x17){_0xd6e0x16= _0xd6e0x16|| 200;return function(_0xd6e0x18){if(_0xd6e0x18){logger[_0x13cd[24]](_0x13cd[22],_0xd6e0x17,_0xd6e0x16,_0x13cd[30]);logger[_0x13cd[26]](_0x13cd[25],_0xd6e0x17,_0xd6e0x16,_0x13cd[30],JSON[_0x13cd[31]](_0xd6e0x18));return _0xd6e0x15[_0x13cd[29]](_0xd6e0x16)[_0x13cd[32]](_0xd6e0x18)};return _0xd6e0x15[_0x13cd[29]](304)[_0x13cd[28]]()}}function respondWithFilteredResult(_0xd6e0x15,_0xd6e0x1b,_0xd6e0x17){return function(_0xd6e0x18){if(_0xd6e0x18){var _0xd6e0x1c=_0xd6e0x18[_0x13cd[33]],_0xd6e0x1d=_0xd6e0x1b[_0x13cd[34]],_0xd6e0x1e=_0xd6e0x1b[_0x13cd[34]]+ _0xd6e0x1b[_0x13cd[35]],_0xd6e0x16;if(_0xd6e0x1e>= _0xd6e0x1c){_0xd6e0x1e= _0xd6e0x1c;_0xd6e0x16= 200}else {_0xd6e0x16= 206};_0xd6e0x15[_0x13cd[29]](_0xd6e0x16);logger[_0x13cd[24]](_0x13cd[22],_0xd6e0x17,_0xd6e0x16,_0x13cd[36]);logger[_0x13cd[26]](_0x13cd[25],_0xd6e0x17,_0xd6e0x16,_0x13cd[30],JSON[_0x13cd[31]](_0xd6e0x18));return _0xd6e0x15[_0x13cd[40]](_0x13cd[37],_0xd6e0x1d+ _0x13cd[38]+ _0xd6e0x1e+ _0x13cd[39]+ _0xd6e0x1c)[_0x13cd[32]](_0xd6e0x18)};return null}}function patchUpdates(_0xd6e0x20){return function(_0xd6e0x18){try{jsonpatch[_0x13cd[41]](_0xd6e0x18,_0xd6e0x20,true)}catch(err){return BPromise[_0x13cd[42]](err)};return _0xd6e0x18[_0x13cd[43]]()}}function saveUpdates(_0xd6e0x22,_0xd6e0x16,_0xd6e0x17){return function(_0xd6e0x18){if(_0xd6e0x18){return _0xd6e0x18[_0x13cd[46]](_0xd6e0x22)[_0x13cd[45]](function(_0xd6e0x23){logger[_0x13cd[24]](_0x13cd[22],_0xd6e0x17,_0xd6e0x16,_0x13cd[44]);logger[_0x13cd[26]](_0x13cd[25],_0xd6e0x17,_0xd6e0x16,_0x13cd[44],JSON[_0x13cd[31]](_0xd6e0x18));return _0xd6e0x23})};return null}}function removeEntity(_0xd6e0x15,_0xd6e0x16,_0xd6e0x17){return function(_0xd6e0x18){if(_0xd6e0x18){return _0xd6e0x18[_0x13cd[48]]()[_0x13cd[45]](function(){logger[_0x13cd[24]](_0x13cd[22],_0xd6e0x17,_0xd6e0x16,_0x13cd[47]);logger[_0x13cd[26]](_0x13cd[25],_0xd6e0x17,_0xd6e0x16,_0x13cd[47],JSON[_0x13cd[31]](_0xd6e0x18));_0xd6e0x15[_0x13cd[29]](204)[_0x13cd[28]]()})}}}function handleEntityNotFound(_0xd6e0x15,_0xd6e0x16,_0xd6e0x17){return function(_0xd6e0x18){if(!_0xd6e0x18){logger[_0x13cd[50]](_0x13cd[22],_0xd6e0x17,404,_0x13cd[49]);_0xd6e0x15[_0x13cd[29]](404)[_0x13cd[28]]();return null};return _0xd6e0x18}}function handleError(_0xd6e0x15,_0xd6e0x16,_0xd6e0x17){_0xd6e0x16= _0xd6e0x16|| 500;return function(_0xd6e0x27){logger[_0x13cd[50]](_0x13cd[22],_0xd6e0x17,_0xd6e0x16,JSON[_0x13cd[31]](_0xd6e0x27));delete _0xd6e0x27[_0x13cd[51]];_0xd6e0x15[_0x13cd[29]](_0xd6e0x16)[_0x13cd[52]](_0xd6e0x27)}}exports[_0x13cd[53]]= function(_0xd6e0x28,_0xd6e0x15){var _0xd6e0x1b={},_0xd6e0x29={};_0xd6e0x29[_0x13cd[54]]= _[_0x13cd[57]](db[_0x13cd[56]][_0x13cd[55]]);_0xd6e0x29[_0x13cd[58]]= _[_0x13cd[57]](_0xd6e0x28[_0x13cd[58]]);_0xd6e0x29[_0x13cd[59]]= _[_0x13cd[60]](_0xd6e0x29[_0x13cd[54]],_0xd6e0x29[_0x13cd[58]]);_0xd6e0x1b[_0x13cd[61]]= _[_0x13cd[60]](_0xd6e0x29[_0x13cd[54]],qs[_0x13cd[62]](_0xd6e0x28[_0x13cd[58]][_0x13cd[62]]));_0xd6e0x1b[_0x13cd[61]]= (_0xd6e0x1b[_0x13cd[61]][_0x13cd[63]])?_0xd6e0x1b[_0x13cd[61]]:_0xd6e0x29[_0x13cd[54]];if(!_0xd6e0x28[_0x13cd[58]][_0x13cd[65]](_0x13cd[64])){_0xd6e0x1b[_0x13cd[35]]= qs[_0x13cd[35]](_0xd6e0x28[_0x13cd[58]][_0x13cd[35]]);_0xd6e0x1b[_0x13cd[34]]= qs[_0x13cd[34]](_0xd6e0x28[_0x13cd[58]][_0x13cd[34]])};_0xd6e0x1b[_0x13cd[66]]= qs[_0x13cd[67]](_0xd6e0x28[_0x13cd[58]][_0x13cd[67]]);_0xd6e0x1b[_0x13cd[68]]= qs[_0x13cd[59]](_[_0x13cd[69]](_0xd6e0x28[_0x13cd[58]],_0xd6e0x29[_0x13cd[59]]));if(_0xd6e0x28[_0x13cd[58]][_0x13cd[70]]){_0xd6e0x1b[_0x13cd[68]]= _[_0x13cd[73]](_0xd6e0x1b[_0x13cd[68]],{$or:_[_0x13cd[72]](_0xd6e0x1b[_0x13cd[61]],function(_0xd6e0x2a){var _0xd6e0x2b={};_0xd6e0x2b[_0xd6e0x2a]= {$like:_0x13cd[71]+ _0xd6e0x28[_0x13cd[58]][_0x13cd[70]]+ _0x13cd[71]};return _0xd6e0x2b})})};_0xd6e0x1b= _[_0x13cd[73]]({},_0xd6e0x1b,_0xd6e0x28[_0x13cd[74]]);return db[_0x13cd[56]][_0x13cd[76]](_0xd6e0x1b)[_0x13cd[45]](respondWithFilteredResult(_0xd6e0x15,_0xd6e0x1b,_0x13cd[53]))[_0x13cd[75]](handleError(_0xd6e0x15,null,_0x13cd[53]))};exports[_0x13cd[77]]= function(_0xd6e0x28,_0xd6e0x15){var _0xd6e0x1b={raw:false,where:{id:_0xd6e0x28[_0x13cd[79]][_0x13cd[78]]}},_0xd6e0x29={};_0xd6e0x29[_0x13cd[54]]= _[_0x13cd[57]](db[_0x13cd[56]][_0x13cd[55]]);_0xd6e0x29[_0x13cd[58]]= _[_0x13cd[57]](_0xd6e0x28[_0x13cd[58]]);_0xd6e0x29[_0x13cd[59]]= _[_0x13cd[60]](_0xd6e0x29[_0x13cd[54]],_0xd6e0x29[_0x13cd[58]]);_0xd6e0x1b[_0x13cd[61]]= _[_0x13cd[60]](_0xd6e0x29[_0x13cd[54]],qs[_0x13cd[62]](_0xd6e0x28[_0x13cd[58]][_0x13cd[62]]));_0xd6e0x1b[_0x13cd[61]]= (_0xd6e0x1b[_0x13cd[61]][_0x13cd[63]])?_0xd6e0x1b[_0x13cd[61]]:_0xd6e0x29[_0x13cd[54]];_0xd6e0x1b= _[_0x13cd[73]]({},_0xd6e0x1b,_0xd6e0x28[_0x13cd[74]]);return db[_0x13cd[56]][_0x13cd[80]](_0xd6e0x1b)[_0x13cd[45]](handleEntityNotFound(_0xd6e0x15,null,_0x13cd[77]))[_0x13cd[45]](respondWithResult(_0xd6e0x15,null,_0x13cd[77]))[_0x13cd[75]](handleError(_0xd6e0x15,null,_0x13cd[77]))};exports[_0x13cd[81]]= function(_0xd6e0x28,_0xd6e0x15){return db[_0x13cd[56]][_0x13cd[81]](_0xd6e0x28[_0x13cd[82]],{})[_0x13cd[45]](respondWithResult(_0xd6e0x15,201,_0x13cd[81]))[_0x13cd[75]](handleError(_0xd6e0x15,null,_0x13cd[81]))};exports[_0x13cd[46]]= function(_0xd6e0x28,_0xd6e0x15){if(_0xd6e0x28[_0x13cd[82]][_0x13cd[78]]){delete _0xd6e0x28[_0x13cd[82]][_0x13cd[78]]};return db[_0x13cd[56]][_0x13cd[80]]({where:{id:_0xd6e0x28[_0x13cd[79]][_0x13cd[78]]}})[_0x13cd[45]](handleEntityNotFound(_0xd6e0x15,null,_0x13cd[46]))[_0x13cd[45]](saveUpdates(_0xd6e0x28[_0x13cd[82]],null,_0x13cd[46]))[_0x13cd[45]](respondWithResult(_0xd6e0x15,null,_0x13cd[46]))[_0x13cd[75]](handleError(_0xd6e0x15,null,_0x13cd[46]))};exports[_0x13cd[48]]= function(_0xd6e0x28,_0xd6e0x15){return db[_0x13cd[56]][_0x13cd[80]]({where:{id:_0xd6e0x28[_0x13cd[79]][_0x13cd[78]]}})[_0x13cd[45]](handleEntityNotFound(_0xd6e0x15,null,_0x13cd[48]))[_0x13cd[45]](removeEntity(_0xd6e0x15,null,_0x13cd[48]))[_0x13cd[75]](handleError(_0xd6e0x15,null,_0x13cd[48]))}
\ No newline at end of file
+var _0x36f2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x63\x68\x65\x64\x75\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x63\x68\x65\x64\x75\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x63\x68\x65\x64\x75\x6C\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x36f2[0];var jsonpatch=require(_0x36f2[1]);var rp=require(_0x36f2[2]);var moment=require(_0x36f2[3]);var BPromise=require(_0x36f2[4]);var util=require(_0x36f2[5]);var path=require(_0x36f2[6]);var sox=require(_0x36f2[7]);var ejs=require(_0x36f2[8]);var fs=require(_0x36f2[9]);var _=require(_0x36f2[10]);var squel=require(_0x36f2[11]);var crypto=require(_0x36f2[12]);var jsforce=require(_0x36f2[13]);var toCsv=require(_0x36f2[14]);var qs=require(_0x36f2[15]);var logger=require(_0x36f2[17])(_0x36f2[16]);var utils=require(_0x36f2[18]);var config=require(_0x36f2[19]);var db=require(_0x36f2[21])[_0x36f2[20]];function respondWithStatusCode(_0x8ff8x15,_0x8ff8x16,_0x8ff8x17){_0x8ff8x16= _0x8ff8x16|| 204;return function(_0x8ff8x18){if(_0x8ff8x18){logger[_0x36f2[24]](_0x36f2[22],_0x8ff8x17,_0x8ff8x16,_0x36f2[23]);logger[_0x36f2[26]](_0x36f2[25],_0x8ff8x17,_0x8ff8x16,_0x36f2[23]);return _0x8ff8x15[_0x36f2[27]](_0x8ff8x16)};return _0x8ff8x15[_0x36f2[29]](304)[_0x36f2[28]]()}}function respondWithResult(_0x8ff8x15,_0x8ff8x16,_0x8ff8x17){_0x8ff8x16= _0x8ff8x16|| 200;return function(_0x8ff8x18){if(_0x8ff8x18){logger[_0x36f2[24]](_0x36f2[22],_0x8ff8x17,_0x8ff8x16,_0x36f2[30]);logger[_0x36f2[26]](_0x36f2[25],_0x8ff8x17,_0x8ff8x16,_0x36f2[30],JSON[_0x36f2[31]](_0x8ff8x18));return _0x8ff8x15[_0x36f2[29]](_0x8ff8x16)[_0x36f2[32]](_0x8ff8x18)};return _0x8ff8x15[_0x36f2[29]](304)[_0x36f2[28]]()}}function respondWithFilteredResult(_0x8ff8x15,_0x8ff8x1b,_0x8ff8x17){return function(_0x8ff8x18){if(_0x8ff8x18){var _0x8ff8x1c=_0x8ff8x18[_0x36f2[33]],_0x8ff8x1d=_0x8ff8x1b[_0x36f2[34]],_0x8ff8x1e=_0x8ff8x1b[_0x36f2[34]]+ _0x8ff8x1b[_0x36f2[35]],_0x8ff8x16;if(_0x8ff8x1e>= _0x8ff8x1c){_0x8ff8x1e= _0x8ff8x1c;_0x8ff8x16= 200}else {_0x8ff8x16= 206};_0x8ff8x15[_0x36f2[29]](_0x8ff8x16);logger[_0x36f2[24]](_0x36f2[22],_0x8ff8x17,_0x8ff8x16,_0x36f2[36]);logger[_0x36f2[26]](_0x36f2[25],_0x8ff8x17,_0x8ff8x16,_0x36f2[30],JSON[_0x36f2[31]](_0x8ff8x18));return _0x8ff8x15[_0x36f2[40]](_0x36f2[37],_0x8ff8x1d+ _0x36f2[38]+ _0x8ff8x1e+ _0x36f2[39]+ _0x8ff8x1c)[_0x36f2[32]](_0x8ff8x18)};return null}}function patchUpdates(_0x8ff8x20){return function(_0x8ff8x18){try{jsonpatch[_0x36f2[41]](_0x8ff8x18,_0x8ff8x20,true)}catch(err){return BPromise[_0x36f2[42]](err)};return _0x8ff8x18[_0x36f2[43]]()}}function saveUpdates(_0x8ff8x22,_0x8ff8x16,_0x8ff8x17){return function(_0x8ff8x18){if(_0x8ff8x18){return _0x8ff8x18[_0x36f2[46]](_0x8ff8x22)[_0x36f2[45]](function(_0x8ff8x23){logger[_0x36f2[24]](_0x36f2[22],_0x8ff8x17,_0x8ff8x16,_0x36f2[44]);logger[_0x36f2[26]](_0x36f2[25],_0x8ff8x17,_0x8ff8x16,_0x36f2[44],JSON[_0x36f2[31]](_0x8ff8x18));return _0x8ff8x23})};return null}}function removeEntity(_0x8ff8x15,_0x8ff8x16,_0x8ff8x17){return function(_0x8ff8x18){if(_0x8ff8x18){return _0x8ff8x18[_0x36f2[48]]()[_0x36f2[45]](function(){logger[_0x36f2[24]](_0x36f2[22],_0x8ff8x17,_0x8ff8x16,_0x36f2[47]);logger[_0x36f2[26]](_0x36f2[25],_0x8ff8x17,_0x8ff8x16,_0x36f2[47],JSON[_0x36f2[31]](_0x8ff8x18));_0x8ff8x15[_0x36f2[29]](204)[_0x36f2[28]]()})}}}function handleEntityNotFound(_0x8ff8x15,_0x8ff8x16,_0x8ff8x17){return function(_0x8ff8x18){if(!_0x8ff8x18){logger[_0x36f2[50]](_0x36f2[22],_0x8ff8x17,404,_0x36f2[49]);_0x8ff8x15[_0x36f2[29]](404)[_0x36f2[28]]();return null};return _0x8ff8x18}}function handleError(_0x8ff8x15,_0x8ff8x16,_0x8ff8x17){_0x8ff8x16= _0x8ff8x16|| 500;return function(_0x8ff8x27){logger[_0x36f2[50]](_0x36f2[22],_0x8ff8x17,_0x8ff8x16,JSON[_0x36f2[31]](_0x8ff8x27));delete _0x8ff8x27[_0x36f2[51]];_0x8ff8x15[_0x36f2[29]](_0x8ff8x16)[_0x36f2[52]](_0x8ff8x27)}}exports[_0x36f2[53]]= function(_0x8ff8x28,_0x8ff8x15){var _0x8ff8x1b={},_0x8ff8x29={};_0x8ff8x29[_0x36f2[54]]= _[_0x36f2[57]](db[_0x36f2[56]][_0x36f2[55]]);_0x8ff8x29[_0x36f2[58]]= _[_0x36f2[57]](_0x8ff8x28[_0x36f2[58]]);_0x8ff8x29[_0x36f2[59]]= _[_0x36f2[60]](_0x8ff8x29[_0x36f2[54]],_0x8ff8x29[_0x36f2[58]]);_0x8ff8x1b[_0x36f2[61]]= _[_0x36f2[60]](_0x8ff8x29[_0x36f2[54]],qs[_0x36f2[62]](_0x8ff8x28[_0x36f2[58]][_0x36f2[62]]));_0x8ff8x1b[_0x36f2[61]]= (_0x8ff8x1b[_0x36f2[61]][_0x36f2[63]])?_0x8ff8x1b[_0x36f2[61]]:_0x8ff8x29[_0x36f2[54]];if(!_0x8ff8x28[_0x36f2[58]][_0x36f2[65]](_0x36f2[64])){_0x8ff8x1b[_0x36f2[35]]= qs[_0x36f2[35]](_0x8ff8x28[_0x36f2[58]][_0x36f2[35]]);_0x8ff8x1b[_0x36f2[34]]= qs[_0x36f2[34]](_0x8ff8x28[_0x36f2[58]][_0x36f2[34]])};_0x8ff8x1b[_0x36f2[66]]= qs[_0x36f2[67]](_0x8ff8x28[_0x36f2[58]][_0x36f2[67]]);_0x8ff8x1b[_0x36f2[68]]= qs[_0x36f2[59]](_[_0x36f2[69]](_0x8ff8x28[_0x36f2[58]],_0x8ff8x29[_0x36f2[59]]));if(_0x8ff8x28[_0x36f2[58]][_0x36f2[70]]){_0x8ff8x1b[_0x36f2[68]]= _[_0x36f2[73]](_0x8ff8x1b[_0x36f2[68]],{$or:_[_0x36f2[72]](_0x8ff8x1b[_0x36f2[61]],function(_0x8ff8x2a){var _0x8ff8x2b={};_0x8ff8x2b[_0x8ff8x2a]= {$like:_0x36f2[71]+ _0x8ff8x28[_0x36f2[58]][_0x36f2[70]]+ _0x36f2[71]};return _0x8ff8x2b})})};_0x8ff8x1b= _[_0x36f2[73]]({},_0x8ff8x1b,_0x8ff8x28[_0x36f2[74]]);return db[_0x36f2[56]][_0x36f2[76]](_0x8ff8x1b)[_0x36f2[45]](respondWithFilteredResult(_0x8ff8x15,_0x8ff8x1b,_0x36f2[53]))[_0x36f2[75]](handleError(_0x8ff8x15,null,_0x36f2[53]))};exports[_0x36f2[77]]= function(_0x8ff8x28,_0x8ff8x15){var _0x8ff8x1b={raw:false,where:{id:_0x8ff8x28[_0x36f2[79]][_0x36f2[78]]}},_0x8ff8x29={};_0x8ff8x29[_0x36f2[54]]= _[_0x36f2[57]](db[_0x36f2[56]][_0x36f2[55]]);_0x8ff8x29[_0x36f2[58]]= _[_0x36f2[57]](_0x8ff8x28[_0x36f2[58]]);_0x8ff8x29[_0x36f2[59]]= _[_0x36f2[60]](_0x8ff8x29[_0x36f2[54]],_0x8ff8x29[_0x36f2[58]]);_0x8ff8x1b[_0x36f2[61]]= _[_0x36f2[60]](_0x8ff8x29[_0x36f2[54]],qs[_0x36f2[62]](_0x8ff8x28[_0x36f2[58]][_0x36f2[62]]));_0x8ff8x1b[_0x36f2[61]]= (_0x8ff8x1b[_0x36f2[61]][_0x36f2[63]])?_0x8ff8x1b[_0x36f2[61]]:_0x8ff8x29[_0x36f2[54]];_0x8ff8x1b= _[_0x36f2[73]]({},_0x8ff8x1b,_0x8ff8x28[_0x36f2[74]]);return db[_0x36f2[56]][_0x36f2[80]](_0x8ff8x1b)[_0x36f2[45]](handleEntityNotFound(_0x8ff8x15,null,_0x36f2[77]))[_0x36f2[45]](respondWithResult(_0x8ff8x15,null,_0x36f2[77]))[_0x36f2[75]](handleError(_0x8ff8x15,null,_0x36f2[77]))};exports[_0x36f2[81]]= function(_0x8ff8x28,_0x8ff8x15){return db[_0x36f2[56]][_0x36f2[81]](_0x8ff8x28[_0x36f2[82]],{})[_0x36f2[45]](respondWithResult(_0x8ff8x15,201,_0x36f2[81]))[_0x36f2[75]](handleError(_0x8ff8x15,null,_0x36f2[81]))};exports[_0x36f2[46]]= function(_0x8ff8x28,_0x8ff8x15){if(_0x8ff8x28[_0x36f2[82]][_0x36f2[78]]){delete _0x8ff8x28[_0x36f2[82]][_0x36f2[78]]};return db[_0x36f2[56]][_0x36f2[80]]({where:{id:_0x8ff8x28[_0x36f2[79]][_0x36f2[78]]}})[_0x36f2[45]](handleEntityNotFound(_0x8ff8x15,null,_0x36f2[46]))[_0x36f2[45]](saveUpdates(_0x8ff8x28[_0x36f2[82]],null,_0x36f2[46]))[_0x36f2[45]](respondWithResult(_0x8ff8x15,null,_0x36f2[46]))[_0x36f2[75]](handleError(_0x8ff8x15,null,_0x36f2[46]))};exports[_0x36f2[48]]= function(_0x8ff8x28,_0x8ff8x15){return db[_0x36f2[56]][_0x36f2[80]]({where:{id:_0x8ff8x28[_0x36f2[79]][_0x36f2[78]]}})[_0x36f2[45]](handleEntityNotFound(_0x8ff8x15,null,_0x36f2[48]))[_0x36f2[45]](removeEntity(_0x8ff8x15,null,_0x36f2[48]))[_0x36f2[75]](handleError(_0x8ff8x15,null,_0x36f2[48]))}
\ No newline at end of file
index 249a4ec..0aa61da 100644 (file)
@@ -1 +1 @@
-var _0xe86b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x63\x68\x65\x64\x75\x6C\x65","\x74\x6F\x6F\x6C\x73\x5F\x73\x63\x68\x65\x64\x75\x6C\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xe86b[0];var _=require(_0xe86b[1]);var util=require(_0xe86b[2]);var logger=require(_0xe86b[4])(_0xe86b[3]);var attributes=require(_0xe86b[5]);module[_0xe86b[6]]= function(_0xf8a7x5,_0xf8a7x6){return _0xf8a7x5[_0xe86b[9]](_0xe86b[7],attributes,{tableName:_0xe86b[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa8b9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x63\x68\x65\x64\x75\x6C\x65","\x74\x6F\x6F\x6C\x73\x5F\x73\x63\x68\x65\x64\x75\x6C\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xa8b9[0];var _=require(_0xa8b9[1]);var util=require(_0xa8b9[2]);var logger=require(_0xa8b9[4])(_0xa8b9[3]);var attributes=require(_0xa8b9[5]);module[_0xa8b9[6]]= function(_0xc1fax5,_0xc1fax6){return _0xc1fax5[_0xa8b9[9]](_0xa8b9[7],attributes,{tableName:_0xa8b9[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 235cd4e..f41aab0 100644 (file)
@@ -1 +1 @@
-var _0x9310=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x63\x68\x65\x64\x75\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x63\x68\x65\x64\x75\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9310[0];var _=require(_0x9310[1]);var util=require(_0x9310[2]);var moment=require(_0x9310[3]);var BPromise=require(_0x9310[4]);var db=require(_0x9310[6])[_0x9310[5]];var utils=require(_0x9310[7]);var logger=require(_0x9310[9])(_0x9310[8]);var jayson=require(_0x9310[10]);var client=jayson[_0x9310[12]][_0x9310[11]]({port:9002});function respondWithRpcPromise(_0x88aaxb,_0x88aaxc,_0x88aaxd){return  new BPromise(function(_0x88aaxe,_0x88aaxf){return client[_0x9310[25]](_0x88aaxb,_0x88aaxd)[_0x9310[24]](function(_0x88aax11){logger[_0x9310[17]](_0x9310[13],_0x88aaxc,_0x9310[16]);logger[_0x9310[20]](_0x9310[18],_0x88aaxc,_0x9310[16],JSON[_0x9310[19]](_0x88aax11));if(_0x88aax11[_0x9310[14]]){if(_0x88aax11[_0x9310[14]][_0x9310[21]]=== 500){logger[_0x9310[14]](_0x9310[13],_0x88aaxc,_0x88aax11[_0x9310[14]][_0x9310[22]]);return _0x88aaxf(_0x88aax11[_0x9310[14]][_0x9310[22]])};logger[_0x9310[14]](_0x9310[13],_0x88aaxc,_0x88aax11[_0x9310[14]][_0x9310[22]]);return _0x88aaxe(_0x88aax11[_0x9310[14]][_0x9310[22]])}else {logger[_0x9310[17]](_0x9310[13],_0x88aaxc,_0x9310[16]);_0x88aaxe(_0x88aax11[_0x9310[23]][_0x9310[22]])}})[_0x9310[15]](function(_0x88aax10){logger[_0x9310[14]](_0x9310[13],_0x88aaxc,_0x88aax10);_0x88aaxf(_0x88aax10)})})}
\ No newline at end of file
+var _0x48b1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x63\x68\x65\x64\x75\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x63\x68\x65\x64\x75\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x48b1[0];var _=require(_0x48b1[1]);var util=require(_0x48b1[2]);var moment=require(_0x48b1[3]);var BPromise=require(_0x48b1[4]);var db=require(_0x48b1[6])[_0x48b1[5]];var utils=require(_0x48b1[7]);var logger=require(_0x48b1[9])(_0x48b1[8]);var jayson=require(_0x48b1[10]);var client=jayson[_0x48b1[12]][_0x48b1[11]]({port:9002});function respondWithRpcPromise(_0x2172xb,_0x2172xc,_0x2172xd){return  new BPromise(function(_0x2172xe,_0x2172xf){return client[_0x48b1[25]](_0x2172xb,_0x2172xd)[_0x48b1[24]](function(_0x2172x11){logger[_0x48b1[17]](_0x48b1[13],_0x2172xc,_0x48b1[16]);logger[_0x48b1[20]](_0x48b1[18],_0x2172xc,_0x48b1[16],JSON[_0x48b1[19]](_0x2172x11));if(_0x2172x11[_0x48b1[14]]){if(_0x2172x11[_0x48b1[14]][_0x48b1[21]]=== 500){logger[_0x48b1[14]](_0x48b1[13],_0x2172xc,_0x2172x11[_0x48b1[14]][_0x48b1[22]]);return _0x2172xf(_0x2172x11[_0x48b1[14]][_0x48b1[22]])};logger[_0x48b1[14]](_0x48b1[13],_0x2172xc,_0x2172x11[_0x48b1[14]][_0x48b1[22]]);return _0x2172xe(_0x2172x11[_0x48b1[14]][_0x48b1[22]])}else {logger[_0x48b1[17]](_0x48b1[13],_0x2172xc,_0x48b1[16]);_0x2172xe(_0x2172x11[_0x48b1[23]][_0x48b1[22]])}})[_0x48b1[15]](function(_0x2172x10){logger[_0x48b1[14]](_0x48b1[13],_0x2172xc,_0x2172x10);_0x2172xf(_0x2172x10)})})}
\ No newline at end of file
index 5e81da6..b64f082 100644 (file)
@@ -1 +1 @@
-var _0x8734=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x65\x74\x74\x69\x6E\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6C\x6F\x67\x6F","\x67\x65\x74\x4C\x6F\x67\x6F","\x2F\x3A\x69\x64\x2F\x6C\x6F\x67\x6F\x5F\x6C\x6F\x67\x69\x6E","\x67\x65\x74\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F\x6C\x6F\x67\x6F\x73\x2F","\x6A\x6F\x69\x6E","\x25\x73\x25\x73","\x6C\x6F\x67\x6F","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x6E\x61\x6D\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x64\x69\x73\x6B\x53\x74\x6F\x72\x61\x67\x65","\x66\x69\x6C\x65","\x73\x69\x6E\x67\x6C\x65","\x61\x64\x64\x4C\x6F\x67\x6F","\x70\x6F\x73\x74","\x6C\x6F\x67\x6F\x6C\x6F\x67\x69\x6E","\x61\x64\x64\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x8734[0];var multer=require(_0x8734[1]);var util=require(_0x8734[2]);var path=require(_0x8734[3]);var express=require(_0x8734[4]);var router=express.Router();var auth=require(_0x8734[5]);var config=require(_0x8734[6]);var controller=require(_0x8734[7]);router[_0x8734[11]](_0x8734[8],auth[_0x8734[9]](),controller[_0x8734[10]]);router[_0x8734[11]](_0x8734[12],controller[_0x8734[13]]);router[_0x8734[11]](_0x8734[14],controller[_0x8734[15]]);router[_0x8734[11]](_0x8734[16],controller[_0x8734[17]]);var upload=multer({storage:multer[_0x8734[26]]({destination:function(_0xce1fxa,_0xce1fxb,_0xce1fxc){_0xce1fxc(null,path[_0x8734[20]](config[_0x8734[18]],_0x8734[19]))},filename:function(_0xce1fxa,_0xce1fxb,_0xce1fxc){_0xce1fxc(null,util[_0x8734[25]](_0x8734[21],_0x8734[22],path[_0x8734[24]](_0xce1fxb[_0x8734[23]])))}})});router[_0x8734[30]](_0x8734[14],upload[_0x8734[28]](_0x8734[27]),controller[_0x8734[29]]);var upload=multer({storage:multer[_0x8734[26]]({destination:function(_0xce1fxa,_0xce1fxb,_0xce1fxc){_0xce1fxc(null,path[_0x8734[20]](config[_0x8734[18]],_0x8734[19]))},filename:function(_0xce1fxa,_0xce1fxb,_0xce1fxc){_0xce1fxc(null,util[_0x8734[25]](_0x8734[21],_0x8734[31],path[_0x8734[24]](_0xce1fxb[_0x8734[23]])))}})});router[_0x8734[30]](_0x8734[16],upload[_0x8734[28]](_0x8734[27]),controller[_0x8734[32]]);router[_0x8734[34]](_0x8734[12],auth[_0x8734[9]](),controller[_0x8734[33]]);module[_0x8734[35]]= router
\ No newline at end of file
+var _0x17b0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x65\x74\x74\x69\x6E\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6C\x6F\x67\x6F","\x67\x65\x74\x4C\x6F\x67\x6F","\x2F\x3A\x69\x64\x2F\x6C\x6F\x67\x6F\x5F\x6C\x6F\x67\x69\x6E","\x67\x65\x74\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F\x6C\x6F\x67\x6F\x73\x2F","\x6A\x6F\x69\x6E","\x25\x73\x25\x73","\x6C\x6F\x67\x6F","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x6E\x61\x6D\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x64\x69\x73\x6B\x53\x74\x6F\x72\x61\x67\x65","\x66\x69\x6C\x65","\x73\x69\x6E\x67\x6C\x65","\x61\x64\x64\x4C\x6F\x67\x6F","\x70\x6F\x73\x74","\x6C\x6F\x67\x6F\x6C\x6F\x67\x69\x6E","\x61\x64\x64\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x17b0[0];var multer=require(_0x17b0[1]);var util=require(_0x17b0[2]);var path=require(_0x17b0[3]);var express=require(_0x17b0[4]);var router=express.Router();var auth=require(_0x17b0[5]);var config=require(_0x17b0[6]);var controller=require(_0x17b0[7]);router[_0x17b0[11]](_0x17b0[8],auth[_0x17b0[9]](),controller[_0x17b0[10]]);router[_0x17b0[11]](_0x17b0[12],controller[_0x17b0[13]]);router[_0x17b0[11]](_0x17b0[14],controller[_0x17b0[15]]);router[_0x17b0[11]](_0x17b0[16],controller[_0x17b0[17]]);var upload=multer({storage:multer[_0x17b0[26]]({destination:function(_0xe81exa,_0xe81exb,_0xe81exc){_0xe81exc(null,path[_0x17b0[20]](config[_0x17b0[18]],_0x17b0[19]))},filename:function(_0xe81exa,_0xe81exb,_0xe81exc){_0xe81exc(null,util[_0x17b0[25]](_0x17b0[21],_0x17b0[22],path[_0x17b0[24]](_0xe81exb[_0x17b0[23]])))}})});router[_0x17b0[30]](_0x17b0[14],upload[_0x17b0[28]](_0x17b0[27]),controller[_0x17b0[29]]);var upload=multer({storage:multer[_0x17b0[26]]({destination:function(_0xe81exa,_0xe81exb,_0xe81exc){_0xe81exc(null,path[_0x17b0[20]](config[_0x17b0[18]],_0x17b0[19]))},filename:function(_0xe81exa,_0xe81exb,_0xe81exc){_0xe81exc(null,util[_0x17b0[25]](_0x17b0[21],_0x17b0[31],path[_0x17b0[24]](_0xe81exb[_0x17b0[23]])))}})});router[_0x17b0[30]](_0x17b0[16],upload[_0x17b0[28]](_0x17b0[27]),controller[_0x17b0[32]]);router[_0x17b0[34]](_0x17b0[12],auth[_0x17b0[9]](),controller[_0x17b0[33]]);module[_0x17b0[35]]= router
\ No newline at end of file
index 9800039..a6547a0 100644 (file)
@@ -1 +1 @@
-var _0xc401=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x69\x6E\x5F\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x6D\x69\x6E\x5F\x6D\x61\x69\x6C\x62\x6F\x78","\x53\x54\x52\x49\x4E\x47","\x2F\x76\x61\x72\x2F\x6F\x70\x74\x2F\x6D\x6F\x74\x69\x6F\x6E\x32\x2F\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x63\x6F\x6E\x76\x65\x72\x74\x65\x64","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xc401[0];var Sequelize=require(_0xc401[1]);module[_0xc401[2]]= {min_internal:{type:Sequelize.INTEGER(11),unique:_0xc401[3],defaultValue:1000},min_mailbox:{type:Sequelize.INTEGER(11),unique:_0xc401[4],defaultValue:1000},agi_port:{type:Sequelize.INTEGER(11),defaultValue:4573},soundPath:{type:Sequelize[_0xc401[5]],defaultValue:_0xc401[6]},logo:{type:Sequelize[_0xc401[5]]},defaultLogo:{type:Sequelize[_0xc401[7]],defaultValue:true},loginLogo:{type:Sequelize[_0xc401[5]]},defaultLoginLogo:{type:Sequelize[_0xc401[7]],defaultValue:true},headerWhiteLabel:{type:Sequelize[_0xc401[5]]},defaultHeaderWhiteLabel:{type:Sequelize[_0xc401[7]],defaultValue:true},securePassword:{type:Sequelize[_0xc401[7]],defaultValue:true},firstSetup:{type:Sequelize[_0xc401[7]],defaultValue:true},stunaddr:{type:Sequelize[_0xc401[5]]}}
\ No newline at end of file
+var _0x5e1d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x69\x6E\x5F\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x6D\x69\x6E\x5F\x6D\x61\x69\x6C\x62\x6F\x78","\x53\x54\x52\x49\x4E\x47","\x2F\x76\x61\x72\x2F\x6F\x70\x74\x2F\x6D\x6F\x74\x69\x6F\x6E\x32\x2F\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x63\x6F\x6E\x76\x65\x72\x74\x65\x64","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x5e1d[0];var Sequelize=require(_0x5e1d[1]);module[_0x5e1d[2]]= {min_internal:{type:Sequelize.INTEGER(11),unique:_0x5e1d[3],defaultValue:1000},min_mailbox:{type:Sequelize.INTEGER(11),unique:_0x5e1d[4],defaultValue:1000},agi_port:{type:Sequelize.INTEGER(11),defaultValue:4573},soundPath:{type:Sequelize[_0x5e1d[5]],defaultValue:_0x5e1d[6]},logo:{type:Sequelize[_0x5e1d[5]]},defaultLogo:{type:Sequelize[_0x5e1d[7]],defaultValue:true},loginLogo:{type:Sequelize[_0x5e1d[5]]},defaultLoginLogo:{type:Sequelize[_0x5e1d[7]],defaultValue:true},headerWhiteLabel:{type:Sequelize[_0x5e1d[5]]},defaultHeaderWhiteLabel:{type:Sequelize[_0x5e1d[7]],defaultValue:true},securePassword:{type:Sequelize[_0x5e1d[7]],defaultValue:true},firstSetup:{type:Sequelize[_0x5e1d[7]],defaultValue:true},stunaddr:{type:Sequelize[_0x5e1d[5]]}}
\ No newline at end of file
index 6c686f2..2e08752 100644 (file)
@@ -1 +1 @@
-var _0x1272=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x65\x74\x74\x69\x6E\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x72\x74\x70\x2E\x65\x6A\x73","\x6A\x6F\x69\x6E","\x75\x74\x66\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x73\x74\x75\x6E\x61\x64\x64\x72","\x72\x65\x6E\x64\x65\x72","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x72\x74\x70\x5F\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6E\x66","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x63\x68\x61\x6E\x67\x65\x64","\x52\x65\x6C\x6F\x61\x64","\x63\x68\x61\x6E\x5F\x73\x69\x70\x2E\x73\x6F","\x62\x6F\x64\x79","\x61\x64\x64\x4C\x6F\x67\x6F","\x66\x69\x6C\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x6C\x6F\x67\x6F","\x61\x76\x61\x64\x64\x4C\x6F\x67\x6F\x61\x74\x61\x72","\x61\x64\x64\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E","\x6C\x6F\x67\x69\x6E\x4C\x6F\x67\x6F","\x61\x76\x61\x64\x64\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E\x61\x74\x61\x72","\x67\x65\x74\x4C\x6F\x67\x6F","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F\x6C\x6F\x67\x6F\x73","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x74\x6F\x4C\x6F\x77\x65\x72","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x64\x65\x66\x61\x75\x6C\x74\x5F\x6C\x6F\x67\x6F\x2E\x70\x6E\x67","\x64\x65\x66\x61\x75\x6C\x74","\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74","\x4C\x6F\x67\x6F\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x65\x66\x61\x75\x6C\x74\x4C\x6F\x67\x6F","\x64\x65\x66\x61\x75\x6C\x74\x4C\x6F\x67\x69\x6E\x4C\x6F\x67\x6F","\x67\x65\x74\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E","\x64\x65\x66\x61\x75\x6C\x74\x5F\x6C\x6F\x67\x69\x6E\x4C\x6F\x67\x6F\x2E\x70\x6E\x67"];_0x1272[0];var jsonpatch=require(_0x1272[1]);var rp=require(_0x1272[2]);var moment=require(_0x1272[3]);var BPromise=require(_0x1272[4]);var util=require(_0x1272[5]);var path=require(_0x1272[6]);var sox=require(_0x1272[7]);var ejs=require(_0x1272[8]);var fs=require(_0x1272[9]);var _=require(_0x1272[10]);var squel=require(_0x1272[11]);var crypto=require(_0x1272[12]);var jsforce=require(_0x1272[13]);var toCsv=require(_0x1272[14]);var qs=require(_0x1272[15]);var logger=require(_0x1272[17])(_0x1272[16]);var utils=require(_0x1272[18]);var config=require(_0x1272[19]);var db=require(_0x1272[21])[_0x1272[20]];var jayson=require(_0x1272[22]);var client=jayson[_0x1272[24]][_0x1272[23]]({port:9002});function respondWithRpcPromise(_0x5bcbx17,_0x5bcbx18,_0x5bcbx19){return  new BPromise(function(_0x5bcbx1a,_0x5bcbx1b){return client[_0x1272[37]](_0x5bcbx17,_0x5bcbx19)[_0x1272[36]](function(_0x5bcbx1d){logger[_0x1272[29]](_0x1272[25],_0x5bcbx18,_0x1272[28]);logger[_0x1272[32]](_0x1272[30],_0x5bcbx18,_0x1272[28],JSON[_0x1272[31]](_0x5bcbx1d));if(_0x5bcbx1d[_0x1272[26]]){if(_0x5bcbx1d[_0x1272[26]][_0x1272[33]]=== 500){logger[_0x1272[26]](_0x1272[25],_0x5bcbx18,_0x5bcbx1d[_0x1272[26]][_0x1272[34]]);return _0x5bcbx1b(_0x5bcbx1d[_0x1272[26]][_0x1272[34]])};logger[_0x1272[26]](_0x1272[25],_0x5bcbx18,_0x5bcbx1d[_0x1272[26]][_0x1272[34]]);return _0x5bcbx1a(_0x5bcbx1d[_0x1272[26]][_0x1272[34]])}else {logger[_0x1272[29]](_0x1272[25],_0x5bcbx18,_0x1272[28]);_0x5bcbx1a(_0x5bcbx1d[_0x1272[35]][_0x1272[34]])}})[_0x1272[27]](function(_0x5bcbx1c){logger[_0x1272[26]](_0x1272[25],_0x5bcbx18,_0x5bcbx1c);_0x5bcbx1b(_0x5bcbx1c)})})}function respondWithStatusCode(_0x5bcbx1d,_0x5bcbx1f,_0x5bcbx18){_0x5bcbx1f= _0x5bcbx1f|| 204;return function(_0x5bcbx20){if(_0x5bcbx20){logger[_0x1272[29]](_0x1272[30],_0x5bcbx18,_0x5bcbx1f,_0x1272[38]);logger[_0x1272[32]](_0x1272[39],_0x5bcbx18,_0x5bcbx1f,_0x1272[38]);return _0x5bcbx1d[_0x1272[40]](_0x5bcbx1f)};return _0x5bcbx1d[_0x1272[42]](304)[_0x1272[41]]()}}function respondWithResult(_0x5bcbx1d,_0x5bcbx1f,_0x5bcbx18){_0x5bcbx1f= _0x5bcbx1f|| 200;return function(_0x5bcbx20){if(_0x5bcbx20){logger[_0x1272[29]](_0x1272[30],_0x5bcbx18,_0x5bcbx1f,_0x1272[43]);logger[_0x1272[32]](_0x1272[39],_0x5bcbx18,_0x5bcbx1f,_0x1272[43],JSON[_0x1272[31]](_0x5bcbx20));return _0x5bcbx1d[_0x1272[42]](_0x5bcbx1f)[_0x1272[44]](_0x5bcbx20)};return _0x5bcbx1d[_0x1272[42]](304)[_0x1272[41]]()}}function respondWithFilteredResult(_0x5bcbx1d,_0x5bcbx23,_0x5bcbx18){return function(_0x5bcbx20){if(_0x5bcbx20){var _0x5bcbx24=_0x5bcbx20[_0x1272[45]],_0x5bcbx25=_0x5bcbx23[_0x1272[46]],_0x5bcbx26=_0x5bcbx23[_0x1272[46]]+ _0x5bcbx23[_0x1272[47]],_0x5bcbx1f;if(_0x5bcbx26>= _0x5bcbx24){_0x5bcbx26= _0x5bcbx24;_0x5bcbx1f= 200}else {_0x5bcbx1f= 206};_0x5bcbx1d[_0x1272[42]](_0x5bcbx1f);logger[_0x1272[29]](_0x1272[30],_0x5bcbx18,_0x5bcbx1f,_0x1272[48]);logger[_0x1272[32]](_0x1272[39],_0x5bcbx18,_0x5bcbx1f,_0x1272[43],JSON[_0x1272[31]](_0x5bcbx20));return _0x5bcbx1d[_0x1272[52]](_0x1272[49],_0x5bcbx25+ _0x1272[50]+ _0x5bcbx26+ _0x1272[51]+ _0x5bcbx24)[_0x1272[44]](_0x5bcbx20)};return null}}function patchUpdates(_0x5bcbx28){return function(_0x5bcbx20){try{jsonpatch[_0x1272[53]](_0x5bcbx20,_0x5bcbx28,true)}catch(err){return BPromise[_0x1272[54]](err)};return _0x5bcbx20[_0x1272[55]]()}}function saveUpdates(_0x5bcbx2a,_0x5bcbx1f,_0x5bcbx18){return function(_0x5bcbx20){if(_0x5bcbx20){return _0x5bcbx20[_0x1272[57]](_0x5bcbx2a)[_0x1272[36]](function(_0x5bcbx2b){logger[_0x1272[29]](_0x1272[30],_0x5bcbx18,_0x5bcbx1f,_0x1272[56]);logger[_0x1272[32]](_0x1272[39],_0x5bcbx18,_0x5bcbx1f,_0x1272[56],JSON[_0x1272[31]](_0x5bcbx20));return _0x5bcbx2b})};return null}}function removeEntity(_0x5bcbx1d,_0x5bcbx1f,_0x5bcbx18){return function(_0x5bcbx20){if(_0x5bcbx20){return _0x5bcbx20[_0x1272[59]]()[_0x1272[36]](function(){logger[_0x1272[29]](_0x1272[30],_0x5bcbx18,_0x5bcbx1f,_0x1272[58]);logger[_0x1272[32]](_0x1272[39],_0x5bcbx18,_0x5bcbx1f,_0x1272[58],JSON[_0x1272[31]](_0x5bcbx20));_0x5bcbx1d[_0x1272[42]](204)[_0x1272[41]]()})}}}function handleEntityNotFound(_0x5bcbx1d,_0x5bcbx1f,_0x5bcbx18){return function(_0x5bcbx20){if(!_0x5bcbx20){logger[_0x1272[26]](_0x1272[30],_0x5bcbx18,404,_0x1272[60]);_0x5bcbx1d[_0x1272[42]](404)[_0x1272[41]]();return null};return _0x5bcbx20}}function handleError(_0x5bcbx1d,_0x5bcbx1f,_0x5bcbx18){_0x5bcbx1f= _0x5bcbx1f|| 500;return function(_0x5bcbx1c){logger[_0x1272[26]](_0x1272[30],_0x5bcbx18,_0x5bcbx1f,JSON[_0x1272[31]](_0x5bcbx1c));delete _0x5bcbx1c[_0x1272[61]];_0x5bcbx1d[_0x1272[42]](_0x5bcbx1f)[_0x1272[62]](_0x5bcbx1c)}}exports[_0x1272[63]]= function(_0x5bcbx19,_0x5bcbx1d){var _0x5bcbx23={},_0x5bcbx2f={};_0x5bcbx2f[_0x1272[64]]= _[_0x1272[67]](db[_0x1272[66]][_0x1272[65]]);_0x5bcbx2f[_0x1272[68]]= _[_0x1272[67]](_0x5bcbx19[_0x1272[68]]);_0x5bcbx2f[_0x1272[69]]= _[_0x1272[70]](_0x5bcbx2f[_0x1272[64]],_0x5bcbx2f[_0x1272[68]]);_0x5bcbx23[_0x1272[71]]= _[_0x1272[70]](_0x5bcbx2f[_0x1272[64]],qs[_0x1272[72]](_0x5bcbx19[_0x1272[68]][_0x1272[72]]));_0x5bcbx23[_0x1272[71]]= (_0x5bcbx23[_0x1272[71]][_0x1272[73]])?_0x5bcbx23[_0x1272[71]]:_0x5bcbx2f[_0x1272[64]];if(!_0x5bcbx19[_0x1272[68]][_0x1272[75]](_0x1272[74])){_0x5bcbx23[_0x1272[47]]= qs[_0x1272[47]](_0x5bcbx19[_0x1272[68]][_0x1272[47]]);_0x5bcbx23[_0x1272[46]]= qs[_0x1272[46]](_0x5bcbx19[_0x1272[68]][_0x1272[46]])};_0x5bcbx23[_0x1272[76]]= qs[_0x1272[77]](_0x5bcbx19[_0x1272[68]][_0x1272[77]]);_0x5bcbx23[_0x1272[78]]= qs[_0x1272[69]](_[_0x1272[79]](_0x5bcbx19[_0x1272[68]],_0x5bcbx2f[_0x1272[69]]));if(_0x5bcbx19[_0x1272[68]][_0x1272[80]]){_0x5bcbx23[_0x1272[78]]= _[_0x1272[83]](_0x5bcbx23[_0x1272[78]],{$or:_[_0x1272[82]](_0x5bcbx23[_0x1272[71]],function(_0x5bcbx30){var _0x5bcbx31={};_0x5bcbx31[_0x5bcbx30]= {$like:_0x1272[81]+ _0x5bcbx19[_0x1272[68]][_0x1272[80]]+ _0x1272[81]};return _0x5bcbx31})})};_0x5bcbx23= _[_0x1272[83]]({},_0x5bcbx23,_0x5bcbx19[_0x1272[84]]);return db[_0x1272[66]][_0x1272[85]](_0x5bcbx23)[_0x1272[36]](respondWithFilteredResult(_0x5bcbx1d,_0x5bcbx23,_0x1272[63]))[_0x1272[27]](handleError(_0x5bcbx1d,null,_0x1272[63]))};exports[_0x1272[86]]= function(_0x5bcbx19,_0x5bcbx1d){var _0x5bcbx23={raw:false,where:{id:_0x5bcbx19[_0x1272[88]][_0x1272[87]]}},_0x5bcbx2f={};_0x5bcbx2f[_0x1272[64]]= _[_0x1272[67]](db[_0x1272[66]][_0x1272[65]]);_0x5bcbx2f[_0x1272[68]]= _[_0x1272[67]](_0x5bcbx19[_0x1272[68]]);_0x5bcbx2f[_0x1272[69]]= _[_0x1272[70]](_0x5bcbx2f[_0x1272[64]],_0x5bcbx2f[_0x1272[68]]);_0x5bcbx23[_0x1272[71]]= _[_0x1272[70]](_0x5bcbx2f[_0x1272[64]],qs[_0x1272[72]](_0x5bcbx19[_0x1272[68]][_0x1272[72]]));_0x5bcbx23[_0x1272[71]]= (_0x5bcbx23[_0x1272[71]][_0x1272[73]])?_0x5bcbx23[_0x1272[71]]:_0x5bcbx2f[_0x1272[64]];_0x5bcbx23= _[_0x1272[83]]({},_0x5bcbx23,_0x5bcbx19[_0x1272[84]]);return db[_0x1272[66]][_0x1272[89]](_0x5bcbx23)[_0x1272[36]](handleEntityNotFound(_0x5bcbx1d,null,_0x1272[86]))[_0x1272[36]](respondWithResult(_0x5bcbx1d,null,_0x1272[86]))[_0x1272[27]](handleError(_0x5bcbx1d,null,_0x1272[86]))};exports[_0x1272[57]]= function(_0x5bcbx19,_0x5bcbx1d,_0x5bcbx32){var _0x5bcbx33;return db[_0x1272[66]][_0x1272[89]]({where:{id:_0x5bcbx19[_0x1272[88]][_0x1272[87]]}})[_0x1272[36]](handleEntityNotFound(_0x5bcbx1d,null,_0x1272[57]))[_0x1272[36]](saveUpdates(_0x5bcbx19[_0x1272[102]],null,_0x1272[57]))[_0x1272[36]](function(_0x5bcbx20){if(_0x5bcbx20){_0x5bcbx33= _0x5bcbx20;var _0x5bcbx34=fs[_0x1272[94]](path[_0x1272[92]](config[_0x1272[90]],_0x1272[91]),_0x1272[93]);var _0x5bcbx35=ejs[_0x1272[96]](_0x5bcbx34,{settings:_0x5bcbx20[_0x1272[95]]?[{stunaddr:_0x5bcbx20[_0x1272[95]]}]:[]});fs[_0x1272[98]](_0x1272[97],_0x5bcbx35);if(_0x5bcbx20[_0x1272[99]](_0x1272[95])){return respondWithRpcPromise(_0x1272[100],_0x1272[57],{module:_0x1272[101]})}}})[_0x1272[36]](function(){return _0x5bcbx33|| null})[_0x1272[36]](respondWithResult(_0x5bcbx1d,null,_0x1272[57]))[_0x1272[27]](handleError(_0x5bcbx1d,null,_0x1272[57]))};exports[_0x1272[103]]= function(_0x5bcbx19,_0x5bcbx1d,_0x5bcbx32){if(_0x5bcbx19[_0x1272[104]]&& _0x5bcbx19[_0x1272[104]][_0x1272[105]]){_0x5bcbx19[_0x1272[102]][_0x1272[106]]= _0x5bcbx19[_0x1272[104]][_0x1272[105]]};return db[_0x1272[66]][_0x1272[89]]({where:{id:_0x5bcbx19[_0x1272[88]][_0x1272[87]]}})[_0x1272[36]](handleEntityNotFound(_0x5bcbx1d,null,_0x1272[103]))[_0x1272[36]](saveUpdates(_0x5bcbx19[_0x1272[102]],null,_0x1272[103]))[_0x1272[36]](respondWithResult(_0x5bcbx1d,null,_0x1272[107]))[_0x1272[27]](handleError(_0x5bcbx1d,null,_0x1272[103]))};exports[_0x1272[108]]= function(_0x5bcbx19,_0x5bcbx1d,_0x5bcbx32){if(_0x5bcbx19[_0x1272[104]]&& _0x5bcbx19[_0x1272[104]][_0x1272[105]]){_0x5bcbx19[_0x1272[102]][_0x1272[109]]= _0x5bcbx19[_0x1272[104]][_0x1272[105]]};return db[_0x1272[66]][_0x1272[89]]({where:{id:_0x5bcbx19[_0x1272[88]][_0x1272[87]]}})[_0x1272[36]](handleEntityNotFound(_0x5bcbx1d,null,_0x1272[108]))[_0x1272[36]](saveUpdates(_0x5bcbx19[_0x1272[102]],null,_0x1272[108]))[_0x1272[36]](respondWithResult(_0x5bcbx1d,null,_0x1272[110]))[_0x1272[27]](handleError(_0x5bcbx1d,null,_0x1272[108]))};exports[_0x1272[111]]= function(_0x5bcbx19,_0x5bcbx1d,_0x5bcbx32){var _0x5bcbx36=_0x1272[112];return db[_0x1272[66]][_0x1272[89]]({where:{id:_0x5bcbx19[_0x1272[88]][_0x1272[87]]},attributes:[_0x1272[106],_0x1272[109],_0x1272[123],_0x1272[124]],raw:true})[_0x1272[36]](handleEntityNotFound(_0x5bcbx1d,null,_0x1272[111]))[_0x1272[36]](function(_0x5bcbx20){if(_0x5bcbx20){logger[_0x1272[29]](_0x1272[113],_0x1272[111],_0x1272[43]);logger[_0x1272[32]](_0x1272[114],_0x1272[111],_0x1272[43],JSON[_0x1272[31]](_0x5bcbx20));var _0x5bcbx37=(_0x5bcbx20[_0x1272[106]]&& fs[_0x1272[116]](path[_0x1272[92]](config[_0x1272[90]],_0x5bcbx36,_[_0x1272[115]](_0x5bcbx20[_0x1272[106]]))))?path[_0x1272[92]](config[_0x1272[90]],_0x5bcbx36,_[_0x1272[115]](_0x5bcbx20[_0x1272[106]])):path[_0x1272[92]](config[_0x1272[90]],_0x5bcbx36,_[_0x1272[115]](_0x1272[117]));var _0x5bcbx38=_0x1272[118]+ _[_0x1272[119]](_0x1272[106]);if(_0x5bcbx20[_0x5bcbx38]){_0x5bcbx37= path[_0x1272[92]](config[_0x1272[90]],_0x5bcbx36,_[_0x1272[115]](_0x1272[117]))};if(!fs[_0x1272[116]](_0x5bcbx37)){throw  new db[_0x1272[121]].ValidationError(_0x1272[120])};return _0x5bcbx1d[_0x1272[122]](_0x5bcbx37)}})[_0x1272[27]](handleError(_0x5bcbx1d,null,_0x1272[86]))};exports[_0x1272[125]]= function(_0x5bcbx19,_0x5bcbx1d,_0x5bcbx32){var _0x5bcbx36=_0x1272[112];return db[_0x1272[66]][_0x1272[89]]({where:{id:_0x5bcbx19[_0x1272[88]][_0x1272[87]]},attributes:[_0x1272[106],_0x1272[109],_0x1272[123],_0x1272[124]],raw:true})[_0x1272[36]](handleEntityNotFound(_0x5bcbx1d,null,_0x1272[125]))[_0x1272[36]](function(_0x5bcbx20){if(_0x5bcbx20){logger[_0x1272[29]](_0x1272[113],_0x1272[125],_0x1272[43]);logger[_0x1272[32]](_0x1272[114],_0x1272[125],_0x1272[43],JSON[_0x1272[31]](_0x5bcbx20));var _0x5bcbx37=(_0x5bcbx20[_0x1272[109]]&& fs[_0x1272[116]](path[_0x1272[92]](config[_0x1272[90]],_0x5bcbx36,_[_0x1272[115]](_0x5bcbx20[_0x1272[109]]))))?path[_0x1272[92]](config[_0x1272[90]],_0x5bcbx36,_[_0x1272[115]](_0x5bcbx20[_0x1272[109]])):path[_0x1272[92]](config[_0x1272[90]],_0x5bcbx36,_[_0x1272[115]](_0x1272[126]));var _0x5bcbx38=_0x1272[118]+ _[_0x1272[119]](_0x1272[109]);if(_0x5bcbx20[_0x5bcbx38]){_0x5bcbx37= path[_0x1272[92]](config[_0x1272[90]],_0x5bcbx36,_[_0x1272[115]](_0x1272[126]))};if(!fs[_0x1272[116]](_0x5bcbx37)){throw  new db[_0x1272[121]].ValidationError(_0x1272[120])};return _0x5bcbx1d[_0x1272[122]](_0x5bcbx37)}})[_0x1272[27]](handleError(_0x5bcbx1d,null,_0x1272[86]))}
\ No newline at end of file
+var _0x998d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x65\x74\x74\x69\x6E\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x72\x74\x70\x2E\x65\x6A\x73","\x6A\x6F\x69\x6E","\x75\x74\x66\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x73\x74\x75\x6E\x61\x64\x64\x72","\x72\x65\x6E\x64\x65\x72","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x72\x74\x70\x5F\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6E\x66","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x63\x68\x61\x6E\x67\x65\x64","\x52\x65\x6C\x6F\x61\x64","\x63\x68\x61\x6E\x5F\x73\x69\x70\x2E\x73\x6F","\x62\x6F\x64\x79","\x61\x64\x64\x4C\x6F\x67\x6F","\x66\x69\x6C\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x6C\x6F\x67\x6F","\x61\x76\x61\x64\x64\x4C\x6F\x67\x6F\x61\x74\x61\x72","\x61\x64\x64\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E","\x6C\x6F\x67\x69\x6E\x4C\x6F\x67\x6F","\x61\x76\x61\x64\x64\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E\x61\x74\x61\x72","\x67\x65\x74\x4C\x6F\x67\x6F","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F\x6C\x6F\x67\x6F\x73","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x74\x6F\x4C\x6F\x77\x65\x72","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x64\x65\x66\x61\x75\x6C\x74\x5F\x6C\x6F\x67\x6F\x2E\x70\x6E\x67","\x64\x65\x66\x61\x75\x6C\x74","\x75\x70\x70\x65\x72\x46\x69\x72\x73\x74","\x4C\x6F\x67\x6F\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x65\x66\x61\x75\x6C\x74\x4C\x6F\x67\x6F","\x64\x65\x66\x61\x75\x6C\x74\x4C\x6F\x67\x69\x6E\x4C\x6F\x67\x6F","\x67\x65\x74\x4C\x6F\x67\x6F\x4C\x6F\x67\x69\x6E","\x64\x65\x66\x61\x75\x6C\x74\x5F\x6C\x6F\x67\x69\x6E\x4C\x6F\x67\x6F\x2E\x70\x6E\x67"];_0x998d[0];var jsonpatch=require(_0x998d[1]);var rp=require(_0x998d[2]);var moment=require(_0x998d[3]);var BPromise=require(_0x998d[4]);var util=require(_0x998d[5]);var path=require(_0x998d[6]);var sox=require(_0x998d[7]);var ejs=require(_0x998d[8]);var fs=require(_0x998d[9]);var _=require(_0x998d[10]);var squel=require(_0x998d[11]);var crypto=require(_0x998d[12]);var jsforce=require(_0x998d[13]);var toCsv=require(_0x998d[14]);var qs=require(_0x998d[15]);var logger=require(_0x998d[17])(_0x998d[16]);var utils=require(_0x998d[18]);var config=require(_0x998d[19]);var db=require(_0x998d[21])[_0x998d[20]];var jayson=require(_0x998d[22]);var client=jayson[_0x998d[24]][_0x998d[23]]({port:9002});function respondWithRpcPromise(_0x1bdex17,_0x1bdex18,_0x1bdex19){return  new BPromise(function(_0x1bdex1a,_0x1bdex1b){return client[_0x998d[37]](_0x1bdex17,_0x1bdex19)[_0x998d[36]](function(_0x1bdex1d){logger[_0x998d[29]](_0x998d[25],_0x1bdex18,_0x998d[28]);logger[_0x998d[32]](_0x998d[30],_0x1bdex18,_0x998d[28],JSON[_0x998d[31]](_0x1bdex1d));if(_0x1bdex1d[_0x998d[26]]){if(_0x1bdex1d[_0x998d[26]][_0x998d[33]]=== 500){logger[_0x998d[26]](_0x998d[25],_0x1bdex18,_0x1bdex1d[_0x998d[26]][_0x998d[34]]);return _0x1bdex1b(_0x1bdex1d[_0x998d[26]][_0x998d[34]])};logger[_0x998d[26]](_0x998d[25],_0x1bdex18,_0x1bdex1d[_0x998d[26]][_0x998d[34]]);return _0x1bdex1a(_0x1bdex1d[_0x998d[26]][_0x998d[34]])}else {logger[_0x998d[29]](_0x998d[25],_0x1bdex18,_0x998d[28]);_0x1bdex1a(_0x1bdex1d[_0x998d[35]][_0x998d[34]])}})[_0x998d[27]](function(_0x1bdex1c){logger[_0x998d[26]](_0x998d[25],_0x1bdex18,_0x1bdex1c);_0x1bdex1b(_0x1bdex1c)})})}function respondWithStatusCode(_0x1bdex1d,_0x1bdex1f,_0x1bdex18){_0x1bdex1f= _0x1bdex1f|| 204;return function(_0x1bdex20){if(_0x1bdex20){logger[_0x998d[29]](_0x998d[30],_0x1bdex18,_0x1bdex1f,_0x998d[38]);logger[_0x998d[32]](_0x998d[39],_0x1bdex18,_0x1bdex1f,_0x998d[38]);return _0x1bdex1d[_0x998d[40]](_0x1bdex1f)};return _0x1bdex1d[_0x998d[42]](304)[_0x998d[41]]()}}function respondWithResult(_0x1bdex1d,_0x1bdex1f,_0x1bdex18){_0x1bdex1f= _0x1bdex1f|| 200;return function(_0x1bdex20){if(_0x1bdex20){logger[_0x998d[29]](_0x998d[30],_0x1bdex18,_0x1bdex1f,_0x998d[43]);logger[_0x998d[32]](_0x998d[39],_0x1bdex18,_0x1bdex1f,_0x998d[43],JSON[_0x998d[31]](_0x1bdex20));return _0x1bdex1d[_0x998d[42]](_0x1bdex1f)[_0x998d[44]](_0x1bdex20)};return _0x1bdex1d[_0x998d[42]](304)[_0x998d[41]]()}}function respondWithFilteredResult(_0x1bdex1d,_0x1bdex23,_0x1bdex18){return function(_0x1bdex20){if(_0x1bdex20){var _0x1bdex24=_0x1bdex20[_0x998d[45]],_0x1bdex25=_0x1bdex23[_0x998d[46]],_0x1bdex26=_0x1bdex23[_0x998d[46]]+ _0x1bdex23[_0x998d[47]],_0x1bdex1f;if(_0x1bdex26>= _0x1bdex24){_0x1bdex26= _0x1bdex24;_0x1bdex1f= 200}else {_0x1bdex1f= 206};_0x1bdex1d[_0x998d[42]](_0x1bdex1f);logger[_0x998d[29]](_0x998d[30],_0x1bdex18,_0x1bdex1f,_0x998d[48]);logger[_0x998d[32]](_0x998d[39],_0x1bdex18,_0x1bdex1f,_0x998d[43],JSON[_0x998d[31]](_0x1bdex20));return _0x1bdex1d[_0x998d[52]](_0x998d[49],_0x1bdex25+ _0x998d[50]+ _0x1bdex26+ _0x998d[51]+ _0x1bdex24)[_0x998d[44]](_0x1bdex20)};return null}}function patchUpdates(_0x1bdex28){return function(_0x1bdex20){try{jsonpatch[_0x998d[53]](_0x1bdex20,_0x1bdex28,true)}catch(err){return BPromise[_0x998d[54]](err)};return _0x1bdex20[_0x998d[55]]()}}function saveUpdates(_0x1bdex2a,_0x1bdex1f,_0x1bdex18){return function(_0x1bdex20){if(_0x1bdex20){return _0x1bdex20[_0x998d[57]](_0x1bdex2a)[_0x998d[36]](function(_0x1bdex2b){logger[_0x998d[29]](_0x998d[30],_0x1bdex18,_0x1bdex1f,_0x998d[56]);logger[_0x998d[32]](_0x998d[39],_0x1bdex18,_0x1bdex1f,_0x998d[56],JSON[_0x998d[31]](_0x1bdex20));return _0x1bdex2b})};return null}}function removeEntity(_0x1bdex1d,_0x1bdex1f,_0x1bdex18){return function(_0x1bdex20){if(_0x1bdex20){return _0x1bdex20[_0x998d[59]]()[_0x998d[36]](function(){logger[_0x998d[29]](_0x998d[30],_0x1bdex18,_0x1bdex1f,_0x998d[58]);logger[_0x998d[32]](_0x998d[39],_0x1bdex18,_0x1bdex1f,_0x998d[58],JSON[_0x998d[31]](_0x1bdex20));_0x1bdex1d[_0x998d[42]](204)[_0x998d[41]]()})}}}function handleEntityNotFound(_0x1bdex1d,_0x1bdex1f,_0x1bdex18){return function(_0x1bdex20){if(!_0x1bdex20){logger[_0x998d[26]](_0x998d[30],_0x1bdex18,404,_0x998d[60]);_0x1bdex1d[_0x998d[42]](404)[_0x998d[41]]();return null};return _0x1bdex20}}function handleError(_0x1bdex1d,_0x1bdex1f,_0x1bdex18){_0x1bdex1f= _0x1bdex1f|| 500;return function(_0x1bdex1c){logger[_0x998d[26]](_0x998d[30],_0x1bdex18,_0x1bdex1f,JSON[_0x998d[31]](_0x1bdex1c));delete _0x1bdex1c[_0x998d[61]];_0x1bdex1d[_0x998d[42]](_0x1bdex1f)[_0x998d[62]](_0x1bdex1c)}}exports[_0x998d[63]]= function(_0x1bdex19,_0x1bdex1d){var _0x1bdex23={},_0x1bdex2f={};_0x1bdex2f[_0x998d[64]]= _[_0x998d[67]](db[_0x998d[66]][_0x998d[65]]);_0x1bdex2f[_0x998d[68]]= _[_0x998d[67]](_0x1bdex19[_0x998d[68]]);_0x1bdex2f[_0x998d[69]]= _[_0x998d[70]](_0x1bdex2f[_0x998d[64]],_0x1bdex2f[_0x998d[68]]);_0x1bdex23[_0x998d[71]]= _[_0x998d[70]](_0x1bdex2f[_0x998d[64]],qs[_0x998d[72]](_0x1bdex19[_0x998d[68]][_0x998d[72]]));_0x1bdex23[_0x998d[71]]= (_0x1bdex23[_0x998d[71]][_0x998d[73]])?_0x1bdex23[_0x998d[71]]:_0x1bdex2f[_0x998d[64]];if(!_0x1bdex19[_0x998d[68]][_0x998d[75]](_0x998d[74])){_0x1bdex23[_0x998d[47]]= qs[_0x998d[47]](_0x1bdex19[_0x998d[68]][_0x998d[47]]);_0x1bdex23[_0x998d[46]]= qs[_0x998d[46]](_0x1bdex19[_0x998d[68]][_0x998d[46]])};_0x1bdex23[_0x998d[76]]= qs[_0x998d[77]](_0x1bdex19[_0x998d[68]][_0x998d[77]]);_0x1bdex23[_0x998d[78]]= qs[_0x998d[69]](_[_0x998d[79]](_0x1bdex19[_0x998d[68]],_0x1bdex2f[_0x998d[69]]));if(_0x1bdex19[_0x998d[68]][_0x998d[80]]){_0x1bdex23[_0x998d[78]]= _[_0x998d[83]](_0x1bdex23[_0x998d[78]],{$or:_[_0x998d[82]](_0x1bdex23[_0x998d[71]],function(_0x1bdex30){var _0x1bdex31={};_0x1bdex31[_0x1bdex30]= {$like:_0x998d[81]+ _0x1bdex19[_0x998d[68]][_0x998d[80]]+ _0x998d[81]};return _0x1bdex31})})};_0x1bdex23= _[_0x998d[83]]({},_0x1bdex23,_0x1bdex19[_0x998d[84]]);return db[_0x998d[66]][_0x998d[85]](_0x1bdex23)[_0x998d[36]](respondWithFilteredResult(_0x1bdex1d,_0x1bdex23,_0x998d[63]))[_0x998d[27]](handleError(_0x1bdex1d,null,_0x998d[63]))};exports[_0x998d[86]]= function(_0x1bdex19,_0x1bdex1d){var _0x1bdex23={raw:false,where:{id:_0x1bdex19[_0x998d[88]][_0x998d[87]]}},_0x1bdex2f={};_0x1bdex2f[_0x998d[64]]= _[_0x998d[67]](db[_0x998d[66]][_0x998d[65]]);_0x1bdex2f[_0x998d[68]]= _[_0x998d[67]](_0x1bdex19[_0x998d[68]]);_0x1bdex2f[_0x998d[69]]= _[_0x998d[70]](_0x1bdex2f[_0x998d[64]],_0x1bdex2f[_0x998d[68]]);_0x1bdex23[_0x998d[71]]= _[_0x998d[70]](_0x1bdex2f[_0x998d[64]],qs[_0x998d[72]](_0x1bdex19[_0x998d[68]][_0x998d[72]]));_0x1bdex23[_0x998d[71]]= (_0x1bdex23[_0x998d[71]][_0x998d[73]])?_0x1bdex23[_0x998d[71]]:_0x1bdex2f[_0x998d[64]];_0x1bdex23= _[_0x998d[83]]({},_0x1bdex23,_0x1bdex19[_0x998d[84]]);return db[_0x998d[66]][_0x998d[89]](_0x1bdex23)[_0x998d[36]](handleEntityNotFound(_0x1bdex1d,null,_0x998d[86]))[_0x998d[36]](respondWithResult(_0x1bdex1d,null,_0x998d[86]))[_0x998d[27]](handleError(_0x1bdex1d,null,_0x998d[86]))};exports[_0x998d[57]]= function(_0x1bdex19,_0x1bdex1d,_0x1bdex32){var _0x1bdex33;return db[_0x998d[66]][_0x998d[89]]({where:{id:_0x1bdex19[_0x998d[88]][_0x998d[87]]}})[_0x998d[36]](handleEntityNotFound(_0x1bdex1d,null,_0x998d[57]))[_0x998d[36]](saveUpdates(_0x1bdex19[_0x998d[102]],null,_0x998d[57]))[_0x998d[36]](function(_0x1bdex20){if(_0x1bdex20){_0x1bdex33= _0x1bdex20;var _0x1bdex34=fs[_0x998d[94]](path[_0x998d[92]](config[_0x998d[90]],_0x998d[91]),_0x998d[93]);var _0x1bdex35=ejs[_0x998d[96]](_0x1bdex34,{settings:_0x1bdex20[_0x998d[95]]?[{stunaddr:_0x1bdex20[_0x998d[95]]}]:[]});fs[_0x998d[98]](_0x998d[97],_0x1bdex35);if(_0x1bdex20[_0x998d[99]](_0x998d[95])){return respondWithRpcPromise(_0x998d[100],_0x998d[57],{module:_0x998d[101]})}}})[_0x998d[36]](function(){return _0x1bdex33|| null})[_0x998d[36]](respondWithResult(_0x1bdex1d,null,_0x998d[57]))[_0x998d[27]](handleError(_0x1bdex1d,null,_0x998d[57]))};exports[_0x998d[103]]= function(_0x1bdex19,_0x1bdex1d,_0x1bdex32){if(_0x1bdex19[_0x998d[104]]&& _0x1bdex19[_0x998d[104]][_0x998d[105]]){_0x1bdex19[_0x998d[102]][_0x998d[106]]= _0x1bdex19[_0x998d[104]][_0x998d[105]]};return db[_0x998d[66]][_0x998d[89]]({where:{id:_0x1bdex19[_0x998d[88]][_0x998d[87]]}})[_0x998d[36]](handleEntityNotFound(_0x1bdex1d,null,_0x998d[103]))[_0x998d[36]](saveUpdates(_0x1bdex19[_0x998d[102]],null,_0x998d[103]))[_0x998d[36]](respondWithResult(_0x1bdex1d,null,_0x998d[107]))[_0x998d[27]](handleError(_0x1bdex1d,null,_0x998d[103]))};exports[_0x998d[108]]= function(_0x1bdex19,_0x1bdex1d,_0x1bdex32){if(_0x1bdex19[_0x998d[104]]&& _0x1bdex19[_0x998d[104]][_0x998d[105]]){_0x1bdex19[_0x998d[102]][_0x998d[109]]= _0x1bdex19[_0x998d[104]][_0x998d[105]]};return db[_0x998d[66]][_0x998d[89]]({where:{id:_0x1bdex19[_0x998d[88]][_0x998d[87]]}})[_0x998d[36]](handleEntityNotFound(_0x1bdex1d,null,_0x998d[108]))[_0x998d[36]](saveUpdates(_0x1bdex19[_0x998d[102]],null,_0x998d[108]))[_0x998d[36]](respondWithResult(_0x1bdex1d,null,_0x998d[110]))[_0x998d[27]](handleError(_0x1bdex1d,null,_0x998d[108]))};exports[_0x998d[111]]= function(_0x1bdex19,_0x1bdex1d,_0x1bdex32){var _0x1bdex36=_0x998d[112];return db[_0x998d[66]][_0x998d[89]]({where:{id:_0x1bdex19[_0x998d[88]][_0x998d[87]]},attributes:[_0x998d[106],_0x998d[109],_0x998d[123],_0x998d[124]],raw:true})[_0x998d[36]](handleEntityNotFound(_0x1bdex1d,null,_0x998d[111]))[_0x998d[36]](function(_0x1bdex20){if(_0x1bdex20){logger[_0x998d[29]](_0x998d[113],_0x998d[111],_0x998d[43]);logger[_0x998d[32]](_0x998d[114],_0x998d[111],_0x998d[43],JSON[_0x998d[31]](_0x1bdex20));var _0x1bdex37=(_0x1bdex20[_0x998d[106]]&& fs[_0x998d[116]](path[_0x998d[92]](config[_0x998d[90]],_0x1bdex36,_[_0x998d[115]](_0x1bdex20[_0x998d[106]]))))?path[_0x998d[92]](config[_0x998d[90]],_0x1bdex36,_[_0x998d[115]](_0x1bdex20[_0x998d[106]])):path[_0x998d[92]](config[_0x998d[90]],_0x1bdex36,_[_0x998d[115]](_0x998d[117]));var _0x1bdex38=_0x998d[118]+ _[_0x998d[119]](_0x998d[106]);if(_0x1bdex20[_0x1bdex38]){_0x1bdex37= path[_0x998d[92]](config[_0x998d[90]],_0x1bdex36,_[_0x998d[115]](_0x998d[117]))};if(!fs[_0x998d[116]](_0x1bdex37)){throw  new db[_0x998d[121]].ValidationError(_0x998d[120])};return _0x1bdex1d[_0x998d[122]](_0x1bdex37)}})[_0x998d[27]](handleError(_0x1bdex1d,null,_0x998d[86]))};exports[_0x998d[125]]= function(_0x1bdex19,_0x1bdex1d,_0x1bdex32){var _0x1bdex36=_0x998d[112];return db[_0x998d[66]][_0x998d[89]]({where:{id:_0x1bdex19[_0x998d[88]][_0x998d[87]]},attributes:[_0x998d[106],_0x998d[109],_0x998d[123],_0x998d[124]],raw:true})[_0x998d[36]](handleEntityNotFound(_0x1bdex1d,null,_0x998d[125]))[_0x998d[36]](function(_0x1bdex20){if(_0x1bdex20){logger[_0x998d[29]](_0x998d[113],_0x998d[125],_0x998d[43]);logger[_0x998d[32]](_0x998d[114],_0x998d[125],_0x998d[43],JSON[_0x998d[31]](_0x1bdex20));var _0x1bdex37=(_0x1bdex20[_0x998d[109]]&& fs[_0x998d[116]](path[_0x998d[92]](config[_0x998d[90]],_0x1bdex36,_[_0x998d[115]](_0x1bdex20[_0x998d[109]]))))?path[_0x998d[92]](config[_0x998d[90]],_0x1bdex36,_[_0x998d[115]](_0x1bdex20[_0x998d[109]])):path[_0x998d[92]](config[_0x998d[90]],_0x1bdex36,_[_0x998d[115]](_0x998d[126]));var _0x1bdex38=_0x998d[118]+ _[_0x998d[119]](_0x998d[109]);if(_0x1bdex20[_0x1bdex38]){_0x1bdex37= path[_0x998d[92]](config[_0x998d[90]],_0x1bdex36,_[_0x998d[115]](_0x998d[126]))};if(!fs[_0x998d[116]](_0x1bdex37)){throw  new db[_0x998d[121]].ValidationError(_0x998d[120])};return _0x1bdex1d[_0x998d[122]](_0x1bdex37)}})[_0x998d[27]](handleError(_0x1bdex1d,null,_0x998d[86]))}
\ No newline at end of file
index d87dccc..e313dfc 100644 (file)
@@ -1 +1 @@
-var _0x6220=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x65\x74\x74\x69\x6E\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x65\x74\x74\x69\x6E\x67","\x73\x65\x74\x74\x69\x6E\x67\x73","\x64\x65\x66\x69\x6E\x65"];_0x6220[0];var _=require(_0x6220[1]);var util=require(_0x6220[2]);var logger=require(_0x6220[4])(_0x6220[3]);var attributes=require(_0x6220[5]);module[_0x6220[6]]= function(_0x21c0x5,_0x21c0x6){return _0x21c0x5[_0x6220[9]](_0x6220[7],attributes,{tableName:_0x6220[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xe43e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x65\x74\x74\x69\x6E\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x65\x74\x74\x69\x6E\x67","\x73\x65\x74\x74\x69\x6E\x67\x73","\x64\x65\x66\x69\x6E\x65"];_0xe43e[0];var _=require(_0xe43e[1]);var util=require(_0xe43e[2]);var logger=require(_0xe43e[4])(_0xe43e[3]);var attributes=require(_0xe43e[5]);module[_0xe43e[6]]= function(_0x8086x5,_0x8086x6){return _0x8086x5[_0xe43e[9]](_0xe43e[7],attributes,{tableName:_0xe43e[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5968e55..ad6bd0a 100644 (file)
@@ -1 +1 @@
-var _0x125b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x125b[0];var _=require(_0x125b[1]);var util=require(_0x125b[2]);var moment=require(_0x125b[3]);var BPromise=require(_0x125b[4]);var db=require(_0x125b[6])[_0x125b[5]];var utils=require(_0x125b[7]);var logger=require(_0x125b[9])(_0x125b[8]);var jayson=require(_0x125b[10]);var client=jayson[_0x125b[12]][_0x125b[11]]({port:9002});function respondWithRpcPromise(_0xc469xb,_0xc469xc,_0xc469xd){return  new BPromise(function(_0xc469xe,_0xc469xf){return client[_0x125b[25]](_0xc469xb,_0xc469xd)[_0x125b[24]](function(_0xc469x11){logger[_0x125b[17]](_0x125b[13],_0xc469xc,_0x125b[16]);logger[_0x125b[20]](_0x125b[18],_0xc469xc,_0x125b[16],JSON[_0x125b[19]](_0xc469x11));if(_0xc469x11[_0x125b[14]]){if(_0xc469x11[_0x125b[14]][_0x125b[21]]=== 500){logger[_0x125b[14]](_0x125b[13],_0xc469xc,_0xc469x11[_0x125b[14]][_0x125b[22]]);return _0xc469xf(_0xc469x11[_0x125b[14]][_0x125b[22]])};logger[_0x125b[14]](_0x125b[13],_0xc469xc,_0xc469x11[_0x125b[14]][_0x125b[22]]);return _0xc469xe(_0xc469x11[_0x125b[14]][_0x125b[22]])}else {logger[_0x125b[17]](_0x125b[13],_0xc469xc,_0x125b[16]);_0xc469xe(_0xc469x11[_0x125b[23]][_0x125b[22]])}})[_0x125b[15]](function(_0xc469x10){logger[_0x125b[14]](_0x125b[13],_0xc469xc,_0xc469x10);_0xc469xf(_0xc469x10)})})}
\ No newline at end of file
+var _0x456b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x65\x74\x74\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x456b[0];var _=require(_0x456b[1]);var util=require(_0x456b[2]);var moment=require(_0x456b[3]);var BPromise=require(_0x456b[4]);var db=require(_0x456b[6])[_0x456b[5]];var utils=require(_0x456b[7]);var logger=require(_0x456b[9])(_0x456b[8]);var jayson=require(_0x456b[10]);var client=jayson[_0x456b[12]][_0x456b[11]]({port:9002});function respondWithRpcPromise(_0xd649xb,_0xd649xc,_0xd649xd){return  new BPromise(function(_0xd649xe,_0xd649xf){return client[_0x456b[25]](_0xd649xb,_0xd649xd)[_0x456b[24]](function(_0xd649x11){logger[_0x456b[17]](_0x456b[13],_0xd649xc,_0x456b[16]);logger[_0x456b[20]](_0x456b[18],_0xd649xc,_0x456b[16],JSON[_0x456b[19]](_0xd649x11));if(_0xd649x11[_0x456b[14]]){if(_0xd649x11[_0x456b[14]][_0x456b[21]]=== 500){logger[_0x456b[14]](_0x456b[13],_0xd649xc,_0xd649x11[_0x456b[14]][_0x456b[22]]);return _0xd649xf(_0xd649x11[_0x456b[14]][_0x456b[22]])};logger[_0x456b[14]](_0x456b[13],_0xd649xc,_0xd649x11[_0x456b[14]][_0x456b[22]]);return _0xd649xe(_0xd649x11[_0x456b[14]][_0x456b[22]])}else {logger[_0x456b[17]](_0x456b[13],_0xd649xc,_0x456b[16]);_0xd649xe(_0xd649x11[_0x456b[23]][_0x456b[22]])}})[_0x456b[15]](function(_0xd649x10){logger[_0x456b[14]](_0x456b[13],_0xd649xc,_0xd649x10);_0xd649xf(_0xd649x10)})})}
\ No newline at end of file
index 0f2954b..7a3dfe1 100644 (file)
@@ -1 +1 @@
-var _0xa7eb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa7eb[0];var multer=require(_0xa7eb[1]);var util=require(_0xa7eb[2]);var path=require(_0xa7eb[3]);var express=require(_0xa7eb[4]);var router=express.Router();var auth=require(_0xa7eb[5]);var config=require(_0xa7eb[6]);var controller=require(_0xa7eb[7]);router[_0xa7eb[11]](_0xa7eb[8],auth[_0xa7eb[9]](),controller[_0xa7eb[10]]);router[_0xa7eb[11]](_0xa7eb[12],auth[_0xa7eb[9]](),controller[_0xa7eb[13]]);router[_0xa7eb[11]](_0xa7eb[14],auth[_0xa7eb[9]](),controller[_0xa7eb[15]]);router[_0xa7eb[11]](_0xa7eb[16],auth[_0xa7eb[9]](),controller[_0xa7eb[17]]);router[_0xa7eb[11]](_0xa7eb[18],auth[_0xa7eb[9]](),controller[_0xa7eb[19]]);router[_0xa7eb[21]](_0xa7eb[8],auth[_0xa7eb[9]](),controller[_0xa7eb[20]]);router[_0xa7eb[21]](_0xa7eb[14],auth[_0xa7eb[9]](),controller[_0xa7eb[22]]);router[_0xa7eb[21]](_0xa7eb[16],auth[_0xa7eb[9]](),controller[_0xa7eb[23]]);router[_0xa7eb[21]](_0xa7eb[18],auth[_0xa7eb[9]](),controller[_0xa7eb[24]]);router[_0xa7eb[21]](_0xa7eb[18],auth[_0xa7eb[9]](),controller[_0xa7eb[25]]);router[_0xa7eb[27]](_0xa7eb[12],auth[_0xa7eb[9]](),controller[_0xa7eb[26]]);router[_0xa7eb[29]](_0xa7eb[12],auth[_0xa7eb[9]](),controller[_0xa7eb[28]]);module[_0xa7eb[30]]= router
\ No newline at end of file
+var _0x53f1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x53f1[0];var multer=require(_0x53f1[1]);var util=require(_0x53f1[2]);var path=require(_0x53f1[3]);var express=require(_0x53f1[4]);var router=express.Router();var auth=require(_0x53f1[5]);var config=require(_0x53f1[6]);var controller=require(_0x53f1[7]);router[_0x53f1[11]](_0x53f1[8],auth[_0x53f1[9]](),controller[_0x53f1[10]]);router[_0x53f1[11]](_0x53f1[12],auth[_0x53f1[9]](),controller[_0x53f1[13]]);router[_0x53f1[11]](_0x53f1[14],auth[_0x53f1[9]](),controller[_0x53f1[15]]);router[_0x53f1[11]](_0x53f1[16],auth[_0x53f1[9]](),controller[_0x53f1[17]]);router[_0x53f1[11]](_0x53f1[18],auth[_0x53f1[9]](),controller[_0x53f1[19]]);router[_0x53f1[21]](_0x53f1[8],auth[_0x53f1[9]](),controller[_0x53f1[20]]);router[_0x53f1[21]](_0x53f1[14],auth[_0x53f1[9]](),controller[_0x53f1[22]]);router[_0x53f1[21]](_0x53f1[16],auth[_0x53f1[9]](),controller[_0x53f1[23]]);router[_0x53f1[21]](_0x53f1[18],auth[_0x53f1[9]](),controller[_0x53f1[24]]);router[_0x53f1[21]](_0x53f1[18],auth[_0x53f1[9]](),controller[_0x53f1[25]]);router[_0x53f1[27]](_0x53f1[12],auth[_0x53f1[9]](),controller[_0x53f1[26]]);router[_0x53f1[29]](_0x53f1[12],auth[_0x53f1[9]](),controller[_0x53f1[28]]);module[_0x53f1[30]]= router
\ No newline at end of file
index 8539e76..f049015 100644 (file)
@@ -1 +1 @@
-var _0x830d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x74\x77\x69\x6C\x69\x6F","\x73\x6B\x65\x62\x62\x79","\x62\x61\x73\x69\x63","\x63\x6C\x61\x73\x73\x69\x63","\x63\x6C\x61\x73\x73\x69\x63\x2B","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52","\x70\x68\x6F\x6E\x65","\x47\x45\x54","\x50\x4F\x53\x54","\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0x830d[0];var Sequelize=require(_0x830d[1]);module[_0x830d[2]]= {name:{type:Sequelize[_0x830d[3]]},description:{type:Sequelize[_0x830d[3]]},type:{type:Sequelize.ENUM(_0x830d[4],_0x830d[5])},smstype:{type:Sequelize.ENUM(_0x830d[6],_0x830d[7],_0x830d[8])},remote:{type:Sequelize[_0x830d[3]]},fidelity:{type:Sequelize[_0x830d[9]],defaultValue:false},timeout:{type:Sequelize[_0x830d[10]],defaultValue:0},phone:{type:Sequelize[_0x830d[3]],unique:_0x830d[11],validate:{is:/^[0-9]+$/}},sid:{type:Sequelize[_0x830d[3]]},token:{type:Sequelize[_0x830d[3]]},username:{type:Sequelize[_0x830d[3]]},password:{type:Sequelize[_0x830d[3]]},acceptUrl:{type:Sequelize[_0x830d[3]]},rejectUrl:{type:Sequelize[_0x830d[3]]},acceptMethod:{type:Sequelize.ENUM(_0x830d[12],_0x830d[13])},rejectMethod:{type:Sequelize.ENUM(_0x830d[12],_0x830d[13])},closeUrl:{type:Sequelize[_0x830d[3]]},closeMethod:{type:Sequelize.ENUM(_0x830d[12],_0x830d[13])},actions:{type:Sequelize[_0x830d[3]],get:function(){return this[_0x830d[15]](_0x830d[14])?JSON[_0x830d[16]](this[_0x830d[15]](_0x830d[14])):[]},set:function(_0x97cdx2){return this[_0x830d[18]](_0x830d[14],JSON[_0x830d[17]](_0x97cdx2))}}}
\ No newline at end of file
+var _0x2554=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x74\x77\x69\x6C\x69\x6F","\x73\x6B\x65\x62\x62\x79","\x62\x61\x73\x69\x63","\x63\x6C\x61\x73\x73\x69\x63","\x63\x6C\x61\x73\x73\x69\x63\x2B","\x42\x4F\x4F\x4C\x45\x41\x4E","\x49\x4E\x54\x45\x47\x45\x52","\x70\x68\x6F\x6E\x65","\x47\x45\x54","\x50\x4F\x53\x54","\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x70\x61\x72\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65"];_0x2554[0];var Sequelize=require(_0x2554[1]);module[_0x2554[2]]= {name:{type:Sequelize[_0x2554[3]]},description:{type:Sequelize[_0x2554[3]]},type:{type:Sequelize.ENUM(_0x2554[4],_0x2554[5])},smstype:{type:Sequelize.ENUM(_0x2554[6],_0x2554[7],_0x2554[8])},remote:{type:Sequelize[_0x2554[3]]},fidelity:{type:Sequelize[_0x2554[9]],defaultValue:false},timeout:{type:Sequelize[_0x2554[10]],defaultValue:0},phone:{type:Sequelize[_0x2554[3]],unique:_0x2554[11],validate:{is:/^[0-9]+$/}},sid:{type:Sequelize[_0x2554[3]]},token:{type:Sequelize[_0x2554[3]]},username:{type:Sequelize[_0x2554[3]]},password:{type:Sequelize[_0x2554[3]]},acceptUrl:{type:Sequelize[_0x2554[3]]},rejectUrl:{type:Sequelize[_0x2554[3]]},acceptMethod:{type:Sequelize.ENUM(_0x2554[12],_0x2554[13])},rejectMethod:{type:Sequelize.ENUM(_0x2554[12],_0x2554[13])},closeUrl:{type:Sequelize[_0x2554[3]]},closeMethod:{type:Sequelize.ENUM(_0x2554[12],_0x2554[13])},actions:{type:Sequelize[_0x2554[3]],get:function(){return this[_0x2554[15]](_0x2554[14])?JSON[_0x2554[16]](this[_0x2554[15]](_0x2554[14])):[]},set:function(_0xe6c9x2){return this[_0x2554[18]](_0x2554[14],JSON[_0x2554[17]](_0xe6c9x2))}}}
\ No newline at end of file
index f60b983..21124ad 100644 (file)
@@ -1 +1 @@
-var _0xcef3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73"];_0xcef3[0];var jsonpatch=require(_0xcef3[1]);var rp=require(_0xcef3[2]);var moment=require(_0xcef3[3]);var BPromise=require(_0xcef3[4]);var util=require(_0xcef3[5]);var path=require(_0xcef3[6]);var sox=require(_0xcef3[7]);var ejs=require(_0xcef3[8]);var fs=require(_0xcef3[9]);var _=require(_0xcef3[10]);var squel=require(_0xcef3[11]);var crypto=require(_0xcef3[12]);var jsforce=require(_0xcef3[13]);var toCsv=require(_0xcef3[14]);var qs=require(_0xcef3[15]);var logger=require(_0xcef3[17])(_0xcef3[16]);var utils=require(_0xcef3[18]);var config=require(_0xcef3[19]);var db=require(_0xcef3[21])[_0xcef3[20]];function respondWithStatusCode(_0x2c05x15,_0x2c05x16,_0x2c05x17){_0x2c05x16= _0x2c05x16|| 204;return function(_0x2c05x18){if(_0x2c05x18){logger[_0xcef3[24]](_0xcef3[22],_0x2c05x17,_0x2c05x16,_0xcef3[23]);logger[_0xcef3[26]](_0xcef3[25],_0x2c05x17,_0x2c05x16,_0xcef3[23]);return _0x2c05x15[_0xcef3[27]](_0x2c05x16)};return _0x2c05x15[_0xcef3[29]](304)[_0xcef3[28]]()}}function respondWithResult(_0x2c05x15,_0x2c05x16,_0x2c05x17){_0x2c05x16= _0x2c05x16|| 200;return function(_0x2c05x18){if(_0x2c05x18){logger[_0xcef3[24]](_0xcef3[22],_0x2c05x17,_0x2c05x16,_0xcef3[30]);logger[_0xcef3[26]](_0xcef3[25],_0x2c05x17,_0x2c05x16,_0xcef3[30],JSON[_0xcef3[31]](_0x2c05x18));return _0x2c05x15[_0xcef3[29]](_0x2c05x16)[_0xcef3[32]](_0x2c05x18)};return _0x2c05x15[_0xcef3[29]](304)[_0xcef3[28]]()}}function respondWithFilteredResult(_0x2c05x15,_0x2c05x1b,_0x2c05x17){return function(_0x2c05x18){if(_0x2c05x18){var _0x2c05x1c=_0x2c05x18[_0xcef3[33]],_0x2c05x1d=_0x2c05x1b[_0xcef3[34]],_0x2c05x1e=_0x2c05x1b[_0xcef3[34]]+ _0x2c05x1b[_0xcef3[35]],_0x2c05x16;if(_0x2c05x1e>= _0x2c05x1c){_0x2c05x1e= _0x2c05x1c;_0x2c05x16= 200}else {_0x2c05x16= 206};_0x2c05x15[_0xcef3[29]](_0x2c05x16);logger[_0xcef3[24]](_0xcef3[22],_0x2c05x17,_0x2c05x16,_0xcef3[36]);logger[_0xcef3[26]](_0xcef3[25],_0x2c05x17,_0x2c05x16,_0xcef3[30],JSON[_0xcef3[31]](_0x2c05x18));return _0x2c05x15[_0xcef3[40]](_0xcef3[37],_0x2c05x1d+ _0xcef3[38]+ _0x2c05x1e+ _0xcef3[39]+ _0x2c05x1c)[_0xcef3[32]](_0x2c05x18)};return null}}function patchUpdates(_0x2c05x20){return function(_0x2c05x18){try{jsonpatch[_0xcef3[41]](_0x2c05x18,_0x2c05x20,true)}catch(err){return BPromise[_0xcef3[42]](err)};return _0x2c05x18[_0xcef3[43]]()}}function saveUpdates(_0x2c05x22,_0x2c05x16,_0x2c05x17){return function(_0x2c05x18){if(_0x2c05x18){return _0x2c05x18[_0xcef3[46]](_0x2c05x22)[_0xcef3[45]](function(_0x2c05x23){logger[_0xcef3[24]](_0xcef3[22],_0x2c05x17,_0x2c05x16,_0xcef3[44]);logger[_0xcef3[26]](_0xcef3[25],_0x2c05x17,_0x2c05x16,_0xcef3[44],JSON[_0xcef3[31]](_0x2c05x18));return _0x2c05x23})};return null}}function removeEntity(_0x2c05x15,_0x2c05x16,_0x2c05x17){return function(_0x2c05x18){if(_0x2c05x18){return _0x2c05x18[_0xcef3[48]]()[_0xcef3[45]](function(){logger[_0xcef3[24]](_0xcef3[22],_0x2c05x17,_0x2c05x16,_0xcef3[47]);logger[_0xcef3[26]](_0xcef3[25],_0x2c05x17,_0x2c05x16,_0xcef3[47],JSON[_0xcef3[31]](_0x2c05x18));_0x2c05x15[_0xcef3[29]](204)[_0xcef3[28]]()})}}}function handleEntityNotFound(_0x2c05x15,_0x2c05x16,_0x2c05x17){return function(_0x2c05x18){if(!_0x2c05x18){logger[_0xcef3[50]](_0xcef3[22],_0x2c05x17,404,_0xcef3[49]);_0x2c05x15[_0xcef3[29]](404)[_0xcef3[28]]();return null};return _0x2c05x18}}function handleError(_0x2c05x15,_0x2c05x16,_0x2c05x17){_0x2c05x16= _0x2c05x16|| 500;return function(_0x2c05x27){logger[_0xcef3[50]](_0xcef3[22],_0x2c05x17,_0x2c05x16,JSON[_0xcef3[31]](_0x2c05x27));delete _0x2c05x27[_0xcef3[51]];_0x2c05x15[_0xcef3[29]](_0x2c05x16)[_0xcef3[52]](_0x2c05x27)}}exports[_0xcef3[53]]= function(_0x2c05x28,_0x2c05x15){var _0x2c05x1b={},_0x2c05x29={};_0x2c05x29[_0xcef3[54]]= _[_0xcef3[57]](db[_0xcef3[56]][_0xcef3[55]]);_0x2c05x29[_0xcef3[58]]= _[_0xcef3[57]](_0x2c05x28[_0xcef3[58]]);_0x2c05x29[_0xcef3[59]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],_0x2c05x29[_0xcef3[58]]);_0x2c05x1b[_0xcef3[61]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],qs[_0xcef3[62]](_0x2c05x28[_0xcef3[58]][_0xcef3[62]]));_0x2c05x1b[_0xcef3[61]]= (_0x2c05x1b[_0xcef3[61]][_0xcef3[63]])?_0x2c05x1b[_0xcef3[61]]:_0x2c05x29[_0xcef3[54]];if(!_0x2c05x28[_0xcef3[58]][_0xcef3[65]](_0xcef3[64])){_0x2c05x1b[_0xcef3[35]]= qs[_0xcef3[35]](_0x2c05x28[_0xcef3[58]][_0xcef3[35]]);_0x2c05x1b[_0xcef3[34]]= qs[_0xcef3[34]](_0x2c05x28[_0xcef3[58]][_0xcef3[34]])};_0x2c05x1b[_0xcef3[66]]= qs[_0xcef3[67]](_0x2c05x28[_0xcef3[58]][_0xcef3[67]]);_0x2c05x1b[_0xcef3[68]]= qs[_0xcef3[59]](_[_0xcef3[69]](_0x2c05x28[_0xcef3[58]],_0x2c05x29[_0xcef3[59]]));if(_0x2c05x28[_0xcef3[58]][_0xcef3[70]]){_0x2c05x1b[_0xcef3[68]]= _[_0xcef3[73]](_0x2c05x1b[_0xcef3[68]],{$or:_[_0xcef3[72]](_0x2c05x1b[_0xcef3[61]],function(_0x2c05x2a){var _0x2c05x2b={};_0x2c05x2b[_0x2c05x2a]= {$like:_0xcef3[71]+ _0x2c05x28[_0xcef3[58]][_0xcef3[70]]+ _0xcef3[71]};return _0x2c05x2b})})};_0x2c05x1b= _[_0xcef3[73]]({},_0x2c05x1b,_0x2c05x28[_0xcef3[74]]);return db[_0xcef3[56]][_0xcef3[76]](_0x2c05x1b)[_0xcef3[45]](respondWithFilteredResult(_0x2c05x15,_0x2c05x1b,_0xcef3[53]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[53]))};exports[_0xcef3[77]]= function(_0x2c05x28,_0x2c05x15){var _0x2c05x1b={raw:false,where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}},_0x2c05x29={};_0x2c05x29[_0xcef3[54]]= _[_0xcef3[57]](db[_0xcef3[56]][_0xcef3[55]]);_0x2c05x29[_0xcef3[58]]= _[_0xcef3[57]](_0x2c05x28[_0xcef3[58]]);_0x2c05x29[_0xcef3[59]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],_0x2c05x29[_0xcef3[58]]);_0x2c05x1b[_0xcef3[61]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],qs[_0xcef3[62]](_0x2c05x28[_0xcef3[58]][_0xcef3[62]]));_0x2c05x1b[_0xcef3[61]]= (_0x2c05x1b[_0xcef3[61]][_0xcef3[63]])?_0x2c05x1b[_0xcef3[61]]:_0x2c05x29[_0xcef3[54]];_0x2c05x1b= _[_0xcef3[73]]({},_0x2c05x1b,_0x2c05x28[_0xcef3[74]]);return db[_0xcef3[56]][_0xcef3[80]](_0x2c05x1b)[_0xcef3[45]](handleEntityNotFound(_0x2c05x15,null,_0xcef3[77]))[_0xcef3[45]](respondWithResult(_0x2c05x15,null,_0xcef3[77]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[77]))};exports[_0xcef3[81]]= function(_0x2c05x28,_0x2c05x15){return db[_0xcef3[56]][_0xcef3[81]](_0x2c05x28[_0xcef3[82]],{})[_0xcef3[45]](respondWithResult(_0x2c05x15,201,_0xcef3[81]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[81]))};exports[_0xcef3[46]]= function(_0x2c05x28,_0x2c05x15){if(_0x2c05x28[_0xcef3[82]][_0xcef3[78]]){delete _0x2c05x28[_0xcef3[82]][_0xcef3[78]]};return db[_0xcef3[56]][_0xcef3[80]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x15,null,_0xcef3[46]))[_0xcef3[45]](saveUpdates(_0x2c05x28[_0xcef3[82]],null,_0xcef3[46]))[_0xcef3[45]](respondWithResult(_0x2c05x15,null,_0xcef3[46]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[46]))};exports[_0xcef3[48]]= function(_0x2c05x28,_0x2c05x15){return db[_0xcef3[56]][_0xcef3[80]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x15,null,_0xcef3[48]))[_0xcef3[45]](removeEntity(_0x2c05x15,null,_0xcef3[48]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[48]))};exports[_0xcef3[83]]= function(_0x2c05x28,_0x2c05x15,_0x2c05x2c){return db[_0xcef3[86]][_0xcef3[80]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x15,null,_0xcef3[83]))[_0xcef3[45]](function(_0x2c05x18){if(_0x2c05x18){return _0x2c05x18[_0xcef3[83]](_0x2c05x28[_0xcef3[82]][_0xcef3[84]],_[_0xcef3[85]](_0x2c05x28[_0xcef3[82]],[_0xcef3[84],_0xcef3[78]])|| {})};return null})[_0xcef3[45]](respondWithResult(_0x2c05x15,null,_0xcef3[83]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[83]))};exports[_0xcef3[87]]= function(_0x2c05x28,_0x2c05x18,_0x2c05x2c){var _0x2c05x1b={};var _0x2c05x29={};var _0x2c05x2d;var _0x2c05x1c;return db[_0xcef3[56]][_0xcef3[88]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x18,null,_0xcef3[87]))[_0xcef3[45]](function(_0x2c05x18){if(_0x2c05x18){_0x2c05x2d= _0x2c05x18;_0x2c05x29[_0xcef3[54]]= _[_0xcef3[57]](db[_0xcef3[86]][_0xcef3[55]]);_0x2c05x29[_0xcef3[58]]= _[_0xcef3[57]](_0x2c05x28[_0xcef3[58]]);_0x2c05x29[_0xcef3[59]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],_0x2c05x29[_0xcef3[58]]);_0x2c05x1b[_0xcef3[61]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],qs[_0xcef3[62]](_0x2c05x28[_0xcef3[58]][_0xcef3[62]]));_0x2c05x1b[_0xcef3[61]]= (_0x2c05x1b[_0xcef3[61]][_0xcef3[63]])?_0x2c05x1b[_0xcef3[61]]:_0x2c05x29[_0xcef3[54]];_0x2c05x1b[_0xcef3[66]]= qs[_0xcef3[67]](_0x2c05x28[_0xcef3[58]][_0xcef3[67]]);_0x2c05x1b[_0xcef3[68]]= qs[_0xcef3[59]](_[_0xcef3[69]](_0x2c05x28[_0xcef3[58]],_0x2c05x29[_0xcef3[59]]));if(_0x2c05x28[_0xcef3[58]][_0xcef3[70]]){_0x2c05x1b[_0xcef3[68]]= _[_0xcef3[73]](_0x2c05x1b[_0xcef3[68]],{$or:_[_0xcef3[72]](_0x2c05x1b[_0xcef3[61]],function(_0x2c05x2a){var _0x2c05x2b={};_0x2c05x2b[_0x2c05x2a]= {$like:_0xcef3[71]+ _0x2c05x28[_0xcef3[58]][_0xcef3[70]]+ _0xcef3[71]};return _0x2c05x2b})})};_0x2c05x1b= _[_0xcef3[73]]({},_0x2c05x1b,_0x2c05x28[_0xcef3[74]]);return _0x2c05x2d[_0xcef3[87]](_0x2c05x1b)}})[_0xcef3[45]](function(_0x2c05x2f){if(_0x2c05x2f){_0x2c05x1c= _0x2c05x2f[_0xcef3[63]];if(!_0x2c05x28[_0xcef3[58]][_0xcef3[65]](_0xcef3[64])){_0x2c05x1b[_0xcef3[35]]= qs[_0xcef3[35]](_0x2c05x28[_0xcef3[58]][_0xcef3[35]]);_0x2c05x1b[_0xcef3[34]]= qs[_0xcef3[34]](_0x2c05x28[_0xcef3[58]][_0xcef3[34]])};return _0x2c05x2d[_0xcef3[87]](_0x2c05x1b)}})[_0xcef3[45]](function(_0x2c05x2e){return _0x2c05x2e?{count:_0x2c05x1c,rows:_0x2c05x2e}:null})[_0xcef3[45]](respondWithResult(_0x2c05x18,null,_0xcef3[87]))[_0xcef3[75]](handleError(_0x2c05x18,null,_0xcef3[87]))};exports[_0xcef3[89]]= function(_0x2c05x28,_0x2c05x15,_0x2c05x2c){return db[_0xcef3[90]][_0xcef3[80]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x15,null,_0xcef3[89]))[_0xcef3[45]](function(_0x2c05x18){if(_0x2c05x18){return _0x2c05x18[_0xcef3[89]](_0x2c05x28[_0xcef3[82]][_0xcef3[84]],_[_0xcef3[85]](_0x2c05x28[_0xcef3[82]],[_0xcef3[84],_0xcef3[78]])|| {})};return null})[_0xcef3[45]](respondWithResult(_0x2c05x15,null,_0xcef3[89]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[89]))};exports[_0xcef3[91]]= function(_0x2c05x28,_0x2c05x18,_0x2c05x2c){var _0x2c05x1b={};var _0x2c05x29={};var _0x2c05x2d;var _0x2c05x1c;return db[_0xcef3[56]][_0xcef3[88]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x18,null,_0xcef3[91]))[_0xcef3[45]](function(_0x2c05x18){if(_0x2c05x18){_0x2c05x2d= _0x2c05x18;_0x2c05x29[_0xcef3[54]]= _[_0xcef3[57]](db[_0xcef3[92]][_0xcef3[55]]);_0x2c05x29[_0xcef3[58]]= _[_0xcef3[57]](_0x2c05x28[_0xcef3[58]]);_0x2c05x29[_0xcef3[59]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],_0x2c05x29[_0xcef3[58]]);_0x2c05x1b[_0xcef3[61]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],qs[_0xcef3[62]](_0x2c05x28[_0xcef3[58]][_0xcef3[62]]));_0x2c05x1b[_0xcef3[61]]= (_0x2c05x1b[_0xcef3[61]][_0xcef3[63]])?_0x2c05x1b[_0xcef3[61]]:_0x2c05x29[_0xcef3[54]];_0x2c05x1b[_0xcef3[66]]= qs[_0xcef3[67]](_0x2c05x28[_0xcef3[58]][_0xcef3[67]]);_0x2c05x1b[_0xcef3[68]]= qs[_0xcef3[59]](_[_0xcef3[69]](_0x2c05x28[_0xcef3[58]],_0x2c05x29[_0xcef3[59]]));if(_0x2c05x28[_0xcef3[58]][_0xcef3[70]]){_0x2c05x1b[_0xcef3[68]]= _[_0xcef3[73]](_0x2c05x1b[_0xcef3[68]],{$or:_[_0xcef3[72]](_0x2c05x1b[_0xcef3[61]],function(_0x2c05x2a){var _0x2c05x2b={};_0x2c05x2b[_0x2c05x2a]= {$like:_0xcef3[71]+ _0x2c05x28[_0xcef3[58]][_0xcef3[70]]+ _0xcef3[71]};return _0x2c05x2b})})};_0x2c05x1b= _[_0xcef3[73]]({},_0x2c05x1b,_0x2c05x28[_0xcef3[74]]);return _0x2c05x2d[_0xcef3[91]](_0x2c05x1b)}})[_0xcef3[45]](function(_0x2c05x2f){if(_0x2c05x2f){_0x2c05x1c= _0x2c05x2f[_0xcef3[63]];if(!_0x2c05x28[_0xcef3[58]][_0xcef3[65]](_0xcef3[64])){_0x2c05x1b[_0xcef3[35]]= qs[_0xcef3[35]](_0x2c05x28[_0xcef3[58]][_0xcef3[35]]);_0x2c05x1b[_0xcef3[34]]= qs[_0xcef3[34]](_0x2c05x28[_0xcef3[58]][_0xcef3[34]])};return _0x2c05x2d[_0xcef3[91]](_0x2c05x1b)}})[_0xcef3[45]](function(_0x2c05x2e){return _0x2c05x2e?{count:_0x2c05x1c,rows:_0x2c05x2e}:null})[_0xcef3[45]](respondWithResult(_0x2c05x18,null,_0xcef3[91]))[_0xcef3[75]](handleError(_0x2c05x18,null,_0xcef3[91]))};exports[_0xcef3[93]]= function(_0x2c05x28,_0x2c05x15,_0x2c05x2c){if(_0x2c05x28[_0xcef3[82]][_0xcef3[78]]){delete _0x2c05x28[_0xcef3[82]][_0xcef3[78]]};return db[_0xcef3[56]][_0xcef3[80]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x15,null,_0xcef3[93]))[_0xcef3[45]](function(_0x2c05x18){if(_0x2c05x18){_0x2c05x28[_0xcef3[82]][_0xcef3[94]]= _0x2c05x18[_0xcef3[78]];return db[_0xcef3[95]][_0xcef3[81]](_0x2c05x28[_0xcef3[82]])}})[_0xcef3[45]](respondWithResult(_0x2c05x15,null,_0xcef3[93]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[93]))};exports[_0xcef3[96]]= function(_0x2c05x28,_0x2c05x15,_0x2c05x2c){return db[_0xcef3[97]][_0xcef3[80]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x15,null,_0xcef3[96]))[_0xcef3[45]](function(_0x2c05x18){if(_0x2c05x18){return _0x2c05x18[_0xcef3[96]](_0x2c05x28[_0xcef3[82]][_0xcef3[84]],_[_0xcef3[85]](_0x2c05x28[_0xcef3[82]],[_0xcef3[84],_0xcef3[78]])|| {})};return null})[_0xcef3[45]](respondWithResult(_0x2c05x15,null,_0xcef3[96]))[_0xcef3[75]](handleError(_0x2c05x15,null,_0xcef3[96]))};exports[_0xcef3[98]]= function(_0x2c05x28,_0x2c05x18,_0x2c05x2c){var _0x2c05x1b={};var _0x2c05x29={};var _0x2c05x2d;var _0x2c05x1c;return db[_0xcef3[56]][_0xcef3[88]]({where:{id:_0x2c05x28[_0xcef3[79]][_0xcef3[78]]}})[_0xcef3[45]](handleEntityNotFound(_0x2c05x18,null,_0xcef3[98]))[_0xcef3[45]](function(_0x2c05x18){if(_0x2c05x18){_0x2c05x2d= _0x2c05x18;_0x2c05x29[_0xcef3[54]]= _[_0xcef3[57]](db[_0xcef3[95]][_0xcef3[55]]);_0x2c05x29[_0xcef3[58]]= _[_0xcef3[57]](_0x2c05x28[_0xcef3[58]]);_0x2c05x29[_0xcef3[59]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],_0x2c05x29[_0xcef3[58]]);_0x2c05x1b[_0xcef3[61]]= _[_0xcef3[60]](_0x2c05x29[_0xcef3[54]],qs[_0xcef3[62]](_0x2c05x28[_0xcef3[58]][_0xcef3[62]]));_0x2c05x1b[_0xcef3[61]]= (_0x2c05x1b[_0xcef3[61]][_0xcef3[63]])?_0x2c05x1b[_0xcef3[61]]:_0x2c05x29[_0xcef3[54]];_0x2c05x1b[_0xcef3[66]]= qs[_0xcef3[67]](_0x2c05x28[_0xcef3[58]][_0xcef3[67]]);_0x2c05x1b[_0xcef3[68]]= qs[_0xcef3[59]](_[_0xcef3[69]](_0x2c05x28[_0xcef3[58]],_0x2c05x29[_0xcef3[59]]));if(_0x2c05x28[_0xcef3[58]][_0xcef3[70]]){_0x2c05x1b[_0xcef3[68]]= _[_0xcef3[73]](_0x2c05x1b[_0xcef3[68]],{$or:_[_0xcef3[72]](_0x2c05x1b[_0xcef3[61]],function(_0x2c05x2a){var _0x2c05x2b={};_0x2c05x2b[_0x2c05x2a]= {$like:_0xcef3[71]+ _0x2c05x28[_0xcef3[58]][_0xcef3[70]]+ _0xcef3[71]};return _0x2c05x2b})})};_0x2c05x1b= _[_0xcef3[73]]({},_0x2c05x1b,_0x2c05x28[_0xcef3[74]]);return _0x2c05x2d[_0xcef3[98]](_0x2c05x1b)}})[_0xcef3[45]](function(_0x2c05x2f){if(_0x2c05x2f){_0x2c05x1c= _0x2c05x2f[_0xcef3[63]];if(!_0x2c05x28[_0xcef3[58]][_0xcef3[65]](_0xcef3[64])){_0x2c05x1b[_0xcef3[35]]= qs[_0xcef3[35]](_0x2c05x28[_0xcef3[58]][_0xcef3[35]]);_0x2c05x1b[_0xcef3[34]]= qs[_0xcef3[34]](_0x2c05x28[_0xcef3[58]][_0xcef3[34]])};return _0x2c05x2d[_0xcef3[98]](_0x2c05x1b)}})[_0xcef3[45]](function(_0x2c05x2e){return _0x2c05x2e?{count:_0x2c05x1c,rows:_0x2c05x2e}:null})[_0xcef3[45]](respondWithResult(_0x2c05x18,null,_0xcef3[98]))[_0xcef3[75]](handleError(_0x2c05x18,null,_0xcef3[98]))}
\ No newline at end of file
+var _0x8ae3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x69\x64\x73","\x6F\x6D\x69\x74","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x67\x65\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x67\x65\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73"];_0x8ae3[0];var jsonpatch=require(_0x8ae3[1]);var rp=require(_0x8ae3[2]);var moment=require(_0x8ae3[3]);var BPromise=require(_0x8ae3[4]);var util=require(_0x8ae3[5]);var path=require(_0x8ae3[6]);var sox=require(_0x8ae3[7]);var ejs=require(_0x8ae3[8]);var fs=require(_0x8ae3[9]);var _=require(_0x8ae3[10]);var squel=require(_0x8ae3[11]);var crypto=require(_0x8ae3[12]);var jsforce=require(_0x8ae3[13]);var toCsv=require(_0x8ae3[14]);var qs=require(_0x8ae3[15]);var logger=require(_0x8ae3[17])(_0x8ae3[16]);var utils=require(_0x8ae3[18]);var config=require(_0x8ae3[19]);var db=require(_0x8ae3[21])[_0x8ae3[20]];function respondWithStatusCode(_0x6b86x15,_0x6b86x16,_0x6b86x17){_0x6b86x16= _0x6b86x16|| 204;return function(_0x6b86x18){if(_0x6b86x18){logger[_0x8ae3[24]](_0x8ae3[22],_0x6b86x17,_0x6b86x16,_0x8ae3[23]);logger[_0x8ae3[26]](_0x8ae3[25],_0x6b86x17,_0x6b86x16,_0x8ae3[23]);return _0x6b86x15[_0x8ae3[27]](_0x6b86x16)};return _0x6b86x15[_0x8ae3[29]](304)[_0x8ae3[28]]()}}function respondWithResult(_0x6b86x15,_0x6b86x16,_0x6b86x17){_0x6b86x16= _0x6b86x16|| 200;return function(_0x6b86x18){if(_0x6b86x18){logger[_0x8ae3[24]](_0x8ae3[22],_0x6b86x17,_0x6b86x16,_0x8ae3[30]);logger[_0x8ae3[26]](_0x8ae3[25],_0x6b86x17,_0x6b86x16,_0x8ae3[30],JSON[_0x8ae3[31]](_0x6b86x18));return _0x6b86x15[_0x8ae3[29]](_0x6b86x16)[_0x8ae3[32]](_0x6b86x18)};return _0x6b86x15[_0x8ae3[29]](304)[_0x8ae3[28]]()}}function respondWithFilteredResult(_0x6b86x15,_0x6b86x1b,_0x6b86x17){return function(_0x6b86x18){if(_0x6b86x18){var _0x6b86x1c=_0x6b86x18[_0x8ae3[33]],_0x6b86x1d=_0x6b86x1b[_0x8ae3[34]],_0x6b86x1e=_0x6b86x1b[_0x8ae3[34]]+ _0x6b86x1b[_0x8ae3[35]],_0x6b86x16;if(_0x6b86x1e>= _0x6b86x1c){_0x6b86x1e= _0x6b86x1c;_0x6b86x16= 200}else {_0x6b86x16= 206};_0x6b86x15[_0x8ae3[29]](_0x6b86x16);logger[_0x8ae3[24]](_0x8ae3[22],_0x6b86x17,_0x6b86x16,_0x8ae3[36]);logger[_0x8ae3[26]](_0x8ae3[25],_0x6b86x17,_0x6b86x16,_0x8ae3[30],JSON[_0x8ae3[31]](_0x6b86x18));return _0x6b86x15[_0x8ae3[40]](_0x8ae3[37],_0x6b86x1d+ _0x8ae3[38]+ _0x6b86x1e+ _0x8ae3[39]+ _0x6b86x1c)[_0x8ae3[32]](_0x6b86x18)};return null}}function patchUpdates(_0x6b86x20){return function(_0x6b86x18){try{jsonpatch[_0x8ae3[41]](_0x6b86x18,_0x6b86x20,true)}catch(err){return BPromise[_0x8ae3[42]](err)};return _0x6b86x18[_0x8ae3[43]]()}}function saveUpdates(_0x6b86x22,_0x6b86x16,_0x6b86x17){return function(_0x6b86x18){if(_0x6b86x18){return _0x6b86x18[_0x8ae3[46]](_0x6b86x22)[_0x8ae3[45]](function(_0x6b86x23){logger[_0x8ae3[24]](_0x8ae3[22],_0x6b86x17,_0x6b86x16,_0x8ae3[44]);logger[_0x8ae3[26]](_0x8ae3[25],_0x6b86x17,_0x6b86x16,_0x8ae3[44],JSON[_0x8ae3[31]](_0x6b86x18));return _0x6b86x23})};return null}}function removeEntity(_0x6b86x15,_0x6b86x16,_0x6b86x17){return function(_0x6b86x18){if(_0x6b86x18){return _0x6b86x18[_0x8ae3[48]]()[_0x8ae3[45]](function(){logger[_0x8ae3[24]](_0x8ae3[22],_0x6b86x17,_0x6b86x16,_0x8ae3[47]);logger[_0x8ae3[26]](_0x8ae3[25],_0x6b86x17,_0x6b86x16,_0x8ae3[47],JSON[_0x8ae3[31]](_0x6b86x18));_0x6b86x15[_0x8ae3[29]](204)[_0x8ae3[28]]()})}}}function handleEntityNotFound(_0x6b86x15,_0x6b86x16,_0x6b86x17){return function(_0x6b86x18){if(!_0x6b86x18){logger[_0x8ae3[50]](_0x8ae3[22],_0x6b86x17,404,_0x8ae3[49]);_0x6b86x15[_0x8ae3[29]](404)[_0x8ae3[28]]();return null};return _0x6b86x18}}function handleError(_0x6b86x15,_0x6b86x16,_0x6b86x17){_0x6b86x16= _0x6b86x16|| 500;return function(_0x6b86x27){logger[_0x8ae3[50]](_0x8ae3[22],_0x6b86x17,_0x6b86x16,JSON[_0x8ae3[31]](_0x6b86x27));delete _0x6b86x27[_0x8ae3[51]];_0x6b86x15[_0x8ae3[29]](_0x6b86x16)[_0x8ae3[52]](_0x6b86x27)}}exports[_0x8ae3[53]]= function(_0x6b86x28,_0x6b86x15){var _0x6b86x1b={},_0x6b86x29={};_0x6b86x29[_0x8ae3[54]]= _[_0x8ae3[57]](db[_0x8ae3[56]][_0x8ae3[55]]);_0x6b86x29[_0x8ae3[58]]= _[_0x8ae3[57]](_0x6b86x28[_0x8ae3[58]]);_0x6b86x29[_0x8ae3[59]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],_0x6b86x29[_0x8ae3[58]]);_0x6b86x1b[_0x8ae3[61]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],qs[_0x8ae3[62]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[62]]));_0x6b86x1b[_0x8ae3[61]]= (_0x6b86x1b[_0x8ae3[61]][_0x8ae3[63]])?_0x6b86x1b[_0x8ae3[61]]:_0x6b86x29[_0x8ae3[54]];if(!_0x6b86x28[_0x8ae3[58]][_0x8ae3[65]](_0x8ae3[64])){_0x6b86x1b[_0x8ae3[35]]= qs[_0x8ae3[35]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[35]]);_0x6b86x1b[_0x8ae3[34]]= qs[_0x8ae3[34]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[34]])};_0x6b86x1b[_0x8ae3[66]]= qs[_0x8ae3[67]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[67]]);_0x6b86x1b[_0x8ae3[68]]= qs[_0x8ae3[59]](_[_0x8ae3[69]](_0x6b86x28[_0x8ae3[58]],_0x6b86x29[_0x8ae3[59]]));if(_0x6b86x28[_0x8ae3[58]][_0x8ae3[70]]){_0x6b86x1b[_0x8ae3[68]]= _[_0x8ae3[73]](_0x6b86x1b[_0x8ae3[68]],{$or:_[_0x8ae3[72]](_0x6b86x1b[_0x8ae3[61]],function(_0x6b86x2a){var _0x6b86x2b={};_0x6b86x2b[_0x6b86x2a]= {$like:_0x8ae3[71]+ _0x6b86x28[_0x8ae3[58]][_0x8ae3[70]]+ _0x8ae3[71]};return _0x6b86x2b})})};_0x6b86x1b= _[_0x8ae3[73]]({},_0x6b86x1b,_0x6b86x28[_0x8ae3[74]]);return db[_0x8ae3[56]][_0x8ae3[76]](_0x6b86x1b)[_0x8ae3[45]](respondWithFilteredResult(_0x6b86x15,_0x6b86x1b,_0x8ae3[53]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[53]))};exports[_0x8ae3[77]]= function(_0x6b86x28,_0x6b86x15){var _0x6b86x1b={raw:false,where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}},_0x6b86x29={};_0x6b86x29[_0x8ae3[54]]= _[_0x8ae3[57]](db[_0x8ae3[56]][_0x8ae3[55]]);_0x6b86x29[_0x8ae3[58]]= _[_0x8ae3[57]](_0x6b86x28[_0x8ae3[58]]);_0x6b86x29[_0x8ae3[59]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],_0x6b86x29[_0x8ae3[58]]);_0x6b86x1b[_0x8ae3[61]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],qs[_0x8ae3[62]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[62]]));_0x6b86x1b[_0x8ae3[61]]= (_0x6b86x1b[_0x8ae3[61]][_0x8ae3[63]])?_0x6b86x1b[_0x8ae3[61]]:_0x6b86x29[_0x8ae3[54]];_0x6b86x1b= _[_0x8ae3[73]]({},_0x6b86x1b,_0x6b86x28[_0x8ae3[74]]);return db[_0x8ae3[56]][_0x8ae3[80]](_0x6b86x1b)[_0x8ae3[45]](handleEntityNotFound(_0x6b86x15,null,_0x8ae3[77]))[_0x8ae3[45]](respondWithResult(_0x6b86x15,null,_0x8ae3[77]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[77]))};exports[_0x8ae3[81]]= function(_0x6b86x28,_0x6b86x15){return db[_0x8ae3[56]][_0x8ae3[81]](_0x6b86x28[_0x8ae3[82]],{})[_0x8ae3[45]](respondWithResult(_0x6b86x15,201,_0x8ae3[81]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[81]))};exports[_0x8ae3[46]]= function(_0x6b86x28,_0x6b86x15){if(_0x6b86x28[_0x8ae3[82]][_0x8ae3[78]]){delete _0x6b86x28[_0x8ae3[82]][_0x8ae3[78]]};return db[_0x8ae3[56]][_0x8ae3[80]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x15,null,_0x8ae3[46]))[_0x8ae3[45]](saveUpdates(_0x6b86x28[_0x8ae3[82]],null,_0x8ae3[46]))[_0x8ae3[45]](respondWithResult(_0x6b86x15,null,_0x8ae3[46]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[46]))};exports[_0x8ae3[48]]= function(_0x6b86x28,_0x6b86x15){return db[_0x8ae3[56]][_0x8ae3[80]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x15,null,_0x8ae3[48]))[_0x8ae3[45]](removeEntity(_0x6b86x15,null,_0x8ae3[48]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[48]))};exports[_0x8ae3[83]]= function(_0x6b86x28,_0x6b86x15,_0x6b86x2c){return db[_0x8ae3[86]][_0x8ae3[80]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x15,null,_0x8ae3[83]))[_0x8ae3[45]](function(_0x6b86x18){if(_0x6b86x18){return _0x6b86x18[_0x8ae3[83]](_0x6b86x28[_0x8ae3[82]][_0x8ae3[84]],_[_0x8ae3[85]](_0x6b86x28[_0x8ae3[82]],[_0x8ae3[84],_0x8ae3[78]])|| {})};return null})[_0x8ae3[45]](respondWithResult(_0x6b86x15,null,_0x8ae3[83]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[83]))};exports[_0x8ae3[87]]= function(_0x6b86x28,_0x6b86x18,_0x6b86x2c){var _0x6b86x1b={};var _0x6b86x29={};var _0x6b86x2d;var _0x6b86x1c;return db[_0x8ae3[56]][_0x8ae3[88]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x18,null,_0x8ae3[87]))[_0x8ae3[45]](function(_0x6b86x18){if(_0x6b86x18){_0x6b86x2d= _0x6b86x18;_0x6b86x29[_0x8ae3[54]]= _[_0x8ae3[57]](db[_0x8ae3[86]][_0x8ae3[55]]);_0x6b86x29[_0x8ae3[58]]= _[_0x8ae3[57]](_0x6b86x28[_0x8ae3[58]]);_0x6b86x29[_0x8ae3[59]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],_0x6b86x29[_0x8ae3[58]]);_0x6b86x1b[_0x8ae3[61]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],qs[_0x8ae3[62]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[62]]));_0x6b86x1b[_0x8ae3[61]]= (_0x6b86x1b[_0x8ae3[61]][_0x8ae3[63]])?_0x6b86x1b[_0x8ae3[61]]:_0x6b86x29[_0x8ae3[54]];_0x6b86x1b[_0x8ae3[66]]= qs[_0x8ae3[67]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[67]]);_0x6b86x1b[_0x8ae3[68]]= qs[_0x8ae3[59]](_[_0x8ae3[69]](_0x6b86x28[_0x8ae3[58]],_0x6b86x29[_0x8ae3[59]]));if(_0x6b86x28[_0x8ae3[58]][_0x8ae3[70]]){_0x6b86x1b[_0x8ae3[68]]= _[_0x8ae3[73]](_0x6b86x1b[_0x8ae3[68]],{$or:_[_0x8ae3[72]](_0x6b86x1b[_0x8ae3[61]],function(_0x6b86x2a){var _0x6b86x2b={};_0x6b86x2b[_0x6b86x2a]= {$like:_0x8ae3[71]+ _0x6b86x28[_0x8ae3[58]][_0x8ae3[70]]+ _0x8ae3[71]};return _0x6b86x2b})})};_0x6b86x1b= _[_0x8ae3[73]]({},_0x6b86x1b,_0x6b86x28[_0x8ae3[74]]);return _0x6b86x2d[_0x8ae3[87]](_0x6b86x1b)}})[_0x8ae3[45]](function(_0x6b86x2f){if(_0x6b86x2f){_0x6b86x1c= _0x6b86x2f[_0x8ae3[63]];if(!_0x6b86x28[_0x8ae3[58]][_0x8ae3[65]](_0x8ae3[64])){_0x6b86x1b[_0x8ae3[35]]= qs[_0x8ae3[35]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[35]]);_0x6b86x1b[_0x8ae3[34]]= qs[_0x8ae3[34]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[34]])};return _0x6b86x2d[_0x8ae3[87]](_0x6b86x1b)}})[_0x8ae3[45]](function(_0x6b86x2e){return _0x6b86x2e?{count:_0x6b86x1c,rows:_0x6b86x2e}:null})[_0x8ae3[45]](respondWithResult(_0x6b86x18,null,_0x8ae3[87]))[_0x8ae3[75]](handleError(_0x6b86x18,null,_0x8ae3[87]))};exports[_0x8ae3[89]]= function(_0x6b86x28,_0x6b86x15,_0x6b86x2c){return db[_0x8ae3[90]][_0x8ae3[80]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x15,null,_0x8ae3[89]))[_0x8ae3[45]](function(_0x6b86x18){if(_0x6b86x18){return _0x6b86x18[_0x8ae3[89]](_0x6b86x28[_0x8ae3[82]][_0x8ae3[84]],_[_0x8ae3[85]](_0x6b86x28[_0x8ae3[82]],[_0x8ae3[84],_0x8ae3[78]])|| {})};return null})[_0x8ae3[45]](respondWithResult(_0x6b86x15,null,_0x8ae3[89]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[89]))};exports[_0x8ae3[91]]= function(_0x6b86x28,_0x6b86x18,_0x6b86x2c){var _0x6b86x1b={};var _0x6b86x29={};var _0x6b86x2d;var _0x6b86x1c;return db[_0x8ae3[56]][_0x8ae3[88]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x18,null,_0x8ae3[91]))[_0x8ae3[45]](function(_0x6b86x18){if(_0x6b86x18){_0x6b86x2d= _0x6b86x18;_0x6b86x29[_0x8ae3[54]]= _[_0x8ae3[57]](db[_0x8ae3[92]][_0x8ae3[55]]);_0x6b86x29[_0x8ae3[58]]= _[_0x8ae3[57]](_0x6b86x28[_0x8ae3[58]]);_0x6b86x29[_0x8ae3[59]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],_0x6b86x29[_0x8ae3[58]]);_0x6b86x1b[_0x8ae3[61]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],qs[_0x8ae3[62]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[62]]));_0x6b86x1b[_0x8ae3[61]]= (_0x6b86x1b[_0x8ae3[61]][_0x8ae3[63]])?_0x6b86x1b[_0x8ae3[61]]:_0x6b86x29[_0x8ae3[54]];_0x6b86x1b[_0x8ae3[66]]= qs[_0x8ae3[67]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[67]]);_0x6b86x1b[_0x8ae3[68]]= qs[_0x8ae3[59]](_[_0x8ae3[69]](_0x6b86x28[_0x8ae3[58]],_0x6b86x29[_0x8ae3[59]]));if(_0x6b86x28[_0x8ae3[58]][_0x8ae3[70]]){_0x6b86x1b[_0x8ae3[68]]= _[_0x8ae3[73]](_0x6b86x1b[_0x8ae3[68]],{$or:_[_0x8ae3[72]](_0x6b86x1b[_0x8ae3[61]],function(_0x6b86x2a){var _0x6b86x2b={};_0x6b86x2b[_0x6b86x2a]= {$like:_0x8ae3[71]+ _0x6b86x28[_0x8ae3[58]][_0x8ae3[70]]+ _0x8ae3[71]};return _0x6b86x2b})})};_0x6b86x1b= _[_0x8ae3[73]]({},_0x6b86x1b,_0x6b86x28[_0x8ae3[74]]);return _0x6b86x2d[_0x8ae3[91]](_0x6b86x1b)}})[_0x8ae3[45]](function(_0x6b86x2f){if(_0x6b86x2f){_0x6b86x1c= _0x6b86x2f[_0x8ae3[63]];if(!_0x6b86x28[_0x8ae3[58]][_0x8ae3[65]](_0x8ae3[64])){_0x6b86x1b[_0x8ae3[35]]= qs[_0x8ae3[35]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[35]]);_0x6b86x1b[_0x8ae3[34]]= qs[_0x8ae3[34]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[34]])};return _0x6b86x2d[_0x8ae3[91]](_0x6b86x1b)}})[_0x8ae3[45]](function(_0x6b86x2e){return _0x6b86x2e?{count:_0x6b86x1c,rows:_0x6b86x2e}:null})[_0x8ae3[45]](respondWithResult(_0x6b86x18,null,_0x8ae3[91]))[_0x8ae3[75]](handleError(_0x6b86x18,null,_0x8ae3[91]))};exports[_0x8ae3[93]]= function(_0x6b86x28,_0x6b86x15,_0x6b86x2c){if(_0x6b86x28[_0x8ae3[82]][_0x8ae3[78]]){delete _0x6b86x28[_0x8ae3[82]][_0x8ae3[78]]};return db[_0x8ae3[56]][_0x8ae3[80]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x15,null,_0x8ae3[93]))[_0x8ae3[45]](function(_0x6b86x18){if(_0x6b86x18){_0x6b86x28[_0x8ae3[82]][_0x8ae3[94]]= _0x6b86x18[_0x8ae3[78]];return db[_0x8ae3[95]][_0x8ae3[81]](_0x6b86x28[_0x8ae3[82]])}})[_0x8ae3[45]](respondWithResult(_0x6b86x15,null,_0x8ae3[93]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[93]))};exports[_0x8ae3[96]]= function(_0x6b86x28,_0x6b86x15,_0x6b86x2c){return db[_0x8ae3[97]][_0x8ae3[80]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x15,null,_0x8ae3[96]))[_0x8ae3[45]](function(_0x6b86x18){if(_0x6b86x18){return _0x6b86x18[_0x8ae3[96]](_0x6b86x28[_0x8ae3[82]][_0x8ae3[84]],_[_0x8ae3[85]](_0x6b86x28[_0x8ae3[82]],[_0x8ae3[84],_0x8ae3[78]])|| {})};return null})[_0x8ae3[45]](respondWithResult(_0x6b86x15,null,_0x8ae3[96]))[_0x8ae3[75]](handleError(_0x6b86x15,null,_0x8ae3[96]))};exports[_0x8ae3[98]]= function(_0x6b86x28,_0x6b86x18,_0x6b86x2c){var _0x6b86x1b={};var _0x6b86x29={};var _0x6b86x2d;var _0x6b86x1c;return db[_0x8ae3[56]][_0x8ae3[88]]({where:{id:_0x6b86x28[_0x8ae3[79]][_0x8ae3[78]]}})[_0x8ae3[45]](handleEntityNotFound(_0x6b86x18,null,_0x8ae3[98]))[_0x8ae3[45]](function(_0x6b86x18){if(_0x6b86x18){_0x6b86x2d= _0x6b86x18;_0x6b86x29[_0x8ae3[54]]= _[_0x8ae3[57]](db[_0x8ae3[95]][_0x8ae3[55]]);_0x6b86x29[_0x8ae3[58]]= _[_0x8ae3[57]](_0x6b86x28[_0x8ae3[58]]);_0x6b86x29[_0x8ae3[59]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],_0x6b86x29[_0x8ae3[58]]);_0x6b86x1b[_0x8ae3[61]]= _[_0x8ae3[60]](_0x6b86x29[_0x8ae3[54]],qs[_0x8ae3[62]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[62]]));_0x6b86x1b[_0x8ae3[61]]= (_0x6b86x1b[_0x8ae3[61]][_0x8ae3[63]])?_0x6b86x1b[_0x8ae3[61]]:_0x6b86x29[_0x8ae3[54]];_0x6b86x1b[_0x8ae3[66]]= qs[_0x8ae3[67]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[67]]);_0x6b86x1b[_0x8ae3[68]]= qs[_0x8ae3[59]](_[_0x8ae3[69]](_0x6b86x28[_0x8ae3[58]],_0x6b86x29[_0x8ae3[59]]));if(_0x6b86x28[_0x8ae3[58]][_0x8ae3[70]]){_0x6b86x1b[_0x8ae3[68]]= _[_0x8ae3[73]](_0x6b86x1b[_0x8ae3[68]],{$or:_[_0x8ae3[72]](_0x6b86x1b[_0x8ae3[61]],function(_0x6b86x2a){var _0x6b86x2b={};_0x6b86x2b[_0x6b86x2a]= {$like:_0x8ae3[71]+ _0x6b86x28[_0x8ae3[58]][_0x8ae3[70]]+ _0x8ae3[71]};return _0x6b86x2b})})};_0x6b86x1b= _[_0x8ae3[73]]({},_0x6b86x1b,_0x6b86x28[_0x8ae3[74]]);return _0x6b86x2d[_0x8ae3[98]](_0x6b86x1b)}})[_0x8ae3[45]](function(_0x6b86x2f){if(_0x6b86x2f){_0x6b86x1c= _0x6b86x2f[_0x8ae3[63]];if(!_0x6b86x28[_0x8ae3[58]][_0x8ae3[65]](_0x8ae3[64])){_0x6b86x1b[_0x8ae3[35]]= qs[_0x8ae3[35]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[35]]);_0x6b86x1b[_0x8ae3[34]]= qs[_0x8ae3[34]](_0x6b86x28[_0x8ae3[58]][_0x8ae3[34]])};return _0x6b86x2d[_0x8ae3[98]](_0x6b86x1b)}})[_0x8ae3[45]](function(_0x6b86x2e){return _0x6b86x2e?{count:_0x6b86x1c,rows:_0x6b86x2e}:null})[_0x8ae3[45]](respondWithResult(_0x6b86x18,null,_0x8ae3[98]))[_0x8ae3[75]](handleError(_0x6b86x18,null,_0x8ae3[98]))}
\ No newline at end of file
index 85bc329..df260d6 100644 (file)
@@ -1 +1 @@
-var _0xf2b3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74","\x73\x6D\x73\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xf2b3[0];var _=require(_0xf2b3[1]);var util=require(_0xf2b3[2]);var logger=require(_0xf2b3[4])(_0xf2b3[3]);var attributes=require(_0xf2b3[5]);module[_0xf2b3[6]]= function(_0x14f4x5,_0x14f4x6){return _0x14f4x5[_0xf2b3[9]](_0xf2b3[7],attributes,{tableName:_0xf2b3[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x64f7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74","\x73\x6D\x73\x5F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x64f7[0];var _=require(_0x64f7[1]);var util=require(_0x64f7[2]);var logger=require(_0x64f7[4])(_0x64f7[3]);var attributes=require(_0x64f7[5]);module[_0x64f7[6]]= function(_0xd5a5x5,_0xd5a5x6){return _0xd5a5x5[_0x64f7[9]](_0x64f7[7],attributes,{tableName:_0x64f7[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 450a6b0..7e44769 100644 (file)
@@ -1 +1 @@
-var _0xd19a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd19a[0];var _=require(_0xd19a[1]);var util=require(_0xd19a[2]);var moment=require(_0xd19a[3]);var BPromise=require(_0xd19a[4]);var db=require(_0xd19a[6])[_0xd19a[5]];var utils=require(_0xd19a[7]);var logger=require(_0xd19a[9])(_0xd19a[8]);var jayson=require(_0xd19a[10]);var client=jayson[_0xd19a[12]][_0xd19a[11]]({port:9002});function respondWithRpcPromise(_0xa709xb,_0xa709xc,_0xa709xd){return  new BPromise(function(_0xa709xe,_0xa709xf){return client[_0xd19a[25]](_0xa709xb,_0xa709xd)[_0xd19a[24]](function(_0xa709x11){logger[_0xd19a[17]](_0xd19a[13],_0xa709xc,_0xd19a[16]);logger[_0xd19a[20]](_0xd19a[18],_0xa709xc,_0xd19a[16],JSON[_0xd19a[19]](_0xa709x11));if(_0xa709x11[_0xd19a[14]]){if(_0xa709x11[_0xd19a[14]][_0xd19a[21]]=== 500){logger[_0xd19a[14]](_0xd19a[13],_0xa709xc,_0xa709x11[_0xd19a[14]][_0xd19a[22]]);return _0xa709xf(_0xa709x11[_0xd19a[14]][_0xd19a[22]])};logger[_0xd19a[14]](_0xd19a[13],_0xa709xc,_0xa709x11[_0xd19a[14]][_0xd19a[22]]);return _0xa709xe(_0xa709x11[_0xd19a[14]][_0xd19a[22]])}else {logger[_0xd19a[17]](_0xd19a[13],_0xa709xc,_0xd19a[16]);_0xa709xe(_0xa709x11[_0xd19a[23]][_0xd19a[22]])}})[_0xd19a[15]](function(_0xa709x10){logger[_0xd19a[14]](_0xd19a[13],_0xa709xc,_0xa709x10);_0xa709xf(_0xa709x10)})})}
\ No newline at end of file
+var _0xd644=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd644[0];var _=require(_0xd644[1]);var util=require(_0xd644[2]);var moment=require(_0xd644[3]);var BPromise=require(_0xd644[4]);var db=require(_0xd644[6])[_0xd644[5]];var utils=require(_0xd644[7]);var logger=require(_0xd644[9])(_0xd644[8]);var jayson=require(_0xd644[10]);var client=jayson[_0xd644[12]][_0xd644[11]]({port:9002});function respondWithRpcPromise(_0x4447xb,_0x4447xc,_0x4447xd){return  new BPromise(function(_0x4447xe,_0x4447xf){return client[_0xd644[25]](_0x4447xb,_0x4447xd)[_0xd644[24]](function(_0x4447x11){logger[_0xd644[17]](_0xd644[13],_0x4447xc,_0xd644[16]);logger[_0xd644[20]](_0xd644[18],_0x4447xc,_0xd644[16],JSON[_0xd644[19]](_0x4447x11));if(_0x4447x11[_0xd644[14]]){if(_0x4447x11[_0xd644[14]][_0xd644[21]]=== 500){logger[_0xd644[14]](_0xd644[13],_0x4447xc,_0x4447x11[_0xd644[14]][_0xd644[22]]);return _0x4447xf(_0x4447x11[_0xd644[14]][_0xd644[22]])};logger[_0xd644[14]](_0xd644[13],_0x4447xc,_0x4447x11[_0xd644[14]][_0xd644[22]]);return _0x4447xe(_0x4447x11[_0xd644[14]][_0xd644[22]])}else {logger[_0xd644[17]](_0xd644[13],_0x4447xc,_0xd644[16]);_0x4447xe(_0x4447x11[_0xd644[23]][_0xd644[22]])}})[_0xd644[15]](function(_0x4447x10){logger[_0xd644[14]](_0xd644[13],_0x4447xc,_0x4447x10);_0x4447xf(_0x4447x10)})})}
\ No newline at end of file
index 3af0f5b..17c0964 100644 (file)
@@ -1 +1 @@
-var _0x1f58=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1f58[0];var multer=require(_0x1f58[1]);var util=require(_0x1f58[2]);var path=require(_0x1f58[3]);var express=require(_0x1f58[4]);var router=express.Router();var auth=require(_0x1f58[5]);var config=require(_0x1f58[6]);var controller=require(_0x1f58[7]);router[_0x1f58[11]](_0x1f58[8],auth[_0x1f58[9]](),controller[_0x1f58[10]]);router[_0x1f58[13]](_0x1f58[8],auth[_0x1f58[9]](),controller[_0x1f58[12]]);router[_0x1f58[15]](_0x1f58[8],auth[_0x1f58[9]](),controller[_0x1f58[14]]);module[_0x1f58[16]]= router
\ No newline at end of file
+var _0x49a8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x49a8[0];var multer=require(_0x49a8[1]);var util=require(_0x49a8[2]);var path=require(_0x49a8[3]);var express=require(_0x49a8[4]);var router=express.Router();var auth=require(_0x49a8[5]);var config=require(_0x49a8[6]);var controller=require(_0x49a8[7]);router[_0x49a8[11]](_0x49a8[8],auth[_0x49a8[9]](),controller[_0x49a8[10]]);router[_0x49a8[13]](_0x49a8[8],auth[_0x49a8[9]](),controller[_0x49a8[12]]);router[_0x49a8[15]](_0x49a8[8],auth[_0x49a8[9]](),controller[_0x49a8[14]]);module[_0x49a8[16]]= router
\ No newline at end of file
index af7a4f1..6c13dca 100644 (file)
@@ -1 +1 @@
-var _0x3830=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0x3830[0];var Sequelize=require(_0x3830[1]);module[_0x3830[2]]= {app:{type:Sequelize.ENUM(_0x3830[3],_0x3830[4])},priority:{type:Sequelize[_0x3830[5]]},timeout:{type:Sequelize[_0x3830[5]],validate:{min:1}},interval:{type:Sequelize[_0x3830[6]]},data1:{type:Sequelize[_0x3830[6]]},data2:{type:Sequelize[_0x3830[6]]},data3:{type:Sequelize[_0x3830[6]]},data4:{type:Sequelize[_0x3830[6]]},data5:{type:Sequelize[_0x3830[6]]},data6:{type:Sequelize[_0x3830[6]]},data7:{type:Sequelize[_0x3830[7]]},data8:{type:Sequelize[_0x3830[5]]},data9:{type:Sequelize[_0x3830[5]]},data10:{type:Sequelize[_0x3830[5]]}}
\ No newline at end of file
+var _0x73ba=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47","\x42\x4C\x4F\x42"];_0x73ba[0];var Sequelize=require(_0x73ba[1]);module[_0x73ba[2]]= {app:{type:Sequelize.ENUM(_0x73ba[3],_0x73ba[4])},priority:{type:Sequelize[_0x73ba[5]]},timeout:{type:Sequelize[_0x73ba[5]],validate:{min:1}},interval:{type:Sequelize[_0x73ba[6]]},data1:{type:Sequelize[_0x73ba[6]]},data2:{type:Sequelize[_0x73ba[6]]},data3:{type:Sequelize[_0x73ba[6]]},data4:{type:Sequelize[_0x73ba[6]]},data5:{type:Sequelize[_0x73ba[6]]},data6:{type:Sequelize[_0x73ba[6]]},data7:{type:Sequelize[_0x73ba[7]]},data8:{type:Sequelize[_0x73ba[5]]},data9:{type:Sequelize[_0x73ba[5]]},data10:{type:Sequelize[_0x73ba[5]]}}
\ No newline at end of file
index d8f8d59..02863a1 100644 (file)
@@ -1 +1 @@
-var _0x6deb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0x6deb[0];var jsonpatch=require(_0x6deb[1]);var rp=require(_0x6deb[2]);var moment=require(_0x6deb[3]);var BPromise=require(_0x6deb[4]);var util=require(_0x6deb[5]);var path=require(_0x6deb[6]);var sox=require(_0x6deb[7]);var ejs=require(_0x6deb[8]);var fs=require(_0x6deb[9]);var _=require(_0x6deb[10]);var squel=require(_0x6deb[11]);var crypto=require(_0x6deb[12]);var jsforce=require(_0x6deb[13]);var toCsv=require(_0x6deb[14]);var qs=require(_0x6deb[15]);var logger=require(_0x6deb[17])(_0x6deb[16]);var utils=require(_0x6deb[18]);var config=require(_0x6deb[19]);var db=require(_0x6deb[21])[_0x6deb[20]];function respondWithStatusCode(_0x8bd3x15,_0x8bd3x16,_0x8bd3x17){_0x8bd3x16= _0x8bd3x16|| 204;return function(_0x8bd3x18){if(_0x8bd3x18){logger[_0x6deb[24]](_0x6deb[22],_0x8bd3x17,_0x8bd3x16,_0x6deb[23]);logger[_0x6deb[26]](_0x6deb[25],_0x8bd3x17,_0x8bd3x16,_0x6deb[23]);return _0x8bd3x15[_0x6deb[27]](_0x8bd3x16)};return _0x8bd3x15[_0x6deb[29]](304)[_0x6deb[28]]()}}function respondWithResult(_0x8bd3x15,_0x8bd3x16,_0x8bd3x17){_0x8bd3x16= _0x8bd3x16|| 200;return function(_0x8bd3x18){if(_0x8bd3x18){logger[_0x6deb[24]](_0x6deb[22],_0x8bd3x17,_0x8bd3x16,_0x6deb[30]);logger[_0x6deb[26]](_0x6deb[25],_0x8bd3x17,_0x8bd3x16,_0x6deb[30],JSON[_0x6deb[31]](_0x8bd3x18));return _0x8bd3x15[_0x6deb[29]](_0x8bd3x16)[_0x6deb[32]](_0x8bd3x18)};return _0x8bd3x15[_0x6deb[29]](304)[_0x6deb[28]]()}}function respondWithFilteredResult(_0x8bd3x15,_0x8bd3x1b,_0x8bd3x17){return function(_0x8bd3x18){if(_0x8bd3x18){var _0x8bd3x1c=_0x8bd3x18[_0x6deb[33]],_0x8bd3x1d=_0x8bd3x1b[_0x6deb[34]],_0x8bd3x1e=_0x8bd3x1b[_0x6deb[34]]+ _0x8bd3x1b[_0x6deb[35]],_0x8bd3x16;if(_0x8bd3x1e>= _0x8bd3x1c){_0x8bd3x1e= _0x8bd3x1c;_0x8bd3x16= 200}else {_0x8bd3x16= 206};_0x8bd3x15[_0x6deb[29]](_0x8bd3x16);logger[_0x6deb[24]](_0x6deb[22],_0x8bd3x17,_0x8bd3x16,_0x6deb[36]);logger[_0x6deb[26]](_0x6deb[25],_0x8bd3x17,_0x8bd3x16,_0x6deb[30],JSON[_0x6deb[31]](_0x8bd3x18));return _0x8bd3x15[_0x6deb[40]](_0x6deb[37],_0x8bd3x1d+ _0x6deb[38]+ _0x8bd3x1e+ _0x6deb[39]+ _0x8bd3x1c)[_0x6deb[32]](_0x8bd3x18)};return null}}function patchUpdates(_0x8bd3x20){return function(_0x8bd3x18){try{jsonpatch[_0x6deb[41]](_0x8bd3x18,_0x8bd3x20,true)}catch(err){return BPromise[_0x6deb[42]](err)};return _0x8bd3x18[_0x6deb[43]]()}}function saveUpdates(_0x8bd3x22,_0x8bd3x16,_0x8bd3x17){return function(_0x8bd3x18){if(_0x8bd3x18){return _0x8bd3x18[_0x6deb[46]](_0x8bd3x22)[_0x6deb[45]](function(_0x8bd3x23){logger[_0x6deb[24]](_0x6deb[22],_0x8bd3x17,_0x8bd3x16,_0x6deb[44]);logger[_0x6deb[26]](_0x6deb[25],_0x8bd3x17,_0x8bd3x16,_0x6deb[44],JSON[_0x6deb[31]](_0x8bd3x18));return _0x8bd3x23})};return null}}function removeEntity(_0x8bd3x15,_0x8bd3x16,_0x8bd3x17){return function(_0x8bd3x18){if(_0x8bd3x18){return _0x8bd3x18[_0x6deb[48]]()[_0x6deb[45]](function(){logger[_0x6deb[24]](_0x6deb[22],_0x8bd3x17,_0x8bd3x16,_0x6deb[47]);logger[_0x6deb[26]](_0x6deb[25],_0x8bd3x17,_0x8bd3x16,_0x6deb[47],JSON[_0x6deb[31]](_0x8bd3x18));_0x8bd3x15[_0x6deb[29]](204)[_0x6deb[28]]()})}}}function handleEntityNotFound(_0x8bd3x15,_0x8bd3x16,_0x8bd3x17){return function(_0x8bd3x18){if(!_0x8bd3x18){logger[_0x6deb[50]](_0x6deb[22],_0x8bd3x17,404,_0x6deb[49]);_0x8bd3x15[_0x6deb[29]](404)[_0x6deb[28]]();return null};return _0x8bd3x18}}function handleError(_0x8bd3x15,_0x8bd3x16,_0x8bd3x17){_0x8bd3x16= _0x8bd3x16|| 500;return function(_0x8bd3x27){logger[_0x6deb[50]](_0x6deb[22],_0x8bd3x17,_0x8bd3x16,JSON[_0x6deb[31]](_0x8bd3x27));delete _0x8bd3x27[_0x6deb[51]];_0x8bd3x15[_0x6deb[29]](_0x8bd3x16)[_0x6deb[52]](_0x8bd3x27)}}exports[_0x6deb[53]]= function(_0x8bd3x28,_0x8bd3x15){var _0x8bd3x1b={raw:true,where:{id:_0x8bd3x28[_0x6deb[55]][_0x6deb[54]]}},_0x8bd3x29={};_0x8bd3x29[_0x6deb[56]]= _[_0x6deb[59]](db[_0x6deb[58]][_0x6deb[57]]);_0x8bd3x29[_0x6deb[60]]= _[_0x6deb[59]](_0x8bd3x28[_0x6deb[60]]);_0x8bd3x29[_0x6deb[61]]= _[_0x6deb[62]](_0x8bd3x29[_0x6deb[56]],_0x8bd3x29[_0x6deb[60]]);_0x8bd3x1b[_0x6deb[63]]= _[_0x6deb[62]](_0x8bd3x29[_0x6deb[56]],qs[_0x6deb[64]](_0x8bd3x28[_0x6deb[60]][_0x6deb[64]]));_0x8bd3x1b[_0x6deb[63]]= (_0x8bd3x1b[_0x6deb[63]][_0x6deb[65]])?_0x8bd3x1b[_0x6deb[63]]:_0x8bd3x29[_0x6deb[56]];_0x8bd3x1b= _[_0x6deb[67]]({},_0x8bd3x1b,_0x8bd3x28[_0x6deb[66]]);return db[_0x6deb[58]][_0x6deb[69]](_0x8bd3x1b)[_0x6deb[45]](handleEntityNotFound(_0x8bd3x15,null,_0x6deb[53]))[_0x6deb[45]](respondWithResult(_0x8bd3x15,null,_0x6deb[53]))[_0x6deb[68]](handleError(_0x8bd3x15,null,_0x6deb[53]))};exports[_0x6deb[46]]= function(_0x8bd3x28,_0x8bd3x15){if(_0x8bd3x28[_0x6deb[70]][_0x6deb[54]]){delete _0x8bd3x28[_0x6deb[70]][_0x6deb[54]]};return db[_0x6deb[58]][_0x6deb[69]]({where:{id:_0x8bd3x28[_0x6deb[55]][_0x6deb[54]]}})[_0x6deb[45]](handleEntityNotFound(_0x8bd3x15,null,_0x6deb[46]))[_0x6deb[45]](saveUpdates(_0x8bd3x28[_0x6deb[70]],null,_0x6deb[46]))[_0x6deb[45]](respondWithResult(_0x8bd3x15,null,_0x6deb[46]))[_0x6deb[68]](handleError(_0x8bd3x15,null,_0x6deb[46]))};exports[_0x6deb[48]]= function(_0x8bd3x28,_0x8bd3x15){return db[_0x6deb[58]][_0x6deb[69]]({where:{id:_0x8bd3x28[_0x6deb[55]][_0x6deb[54]]}})[_0x6deb[45]](handleEntityNotFound(_0x8bd3x15,null,_0x6deb[48]))[_0x6deb[45]](removeEntity(_0x8bd3x15,null,_0x6deb[48]))[_0x6deb[68]](handleError(_0x8bd3x15,null,_0x6deb[48]))}
\ No newline at end of file
+var _0xfc48=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x62\x6F\x64\x79"];_0xfc48[0];var jsonpatch=require(_0xfc48[1]);var rp=require(_0xfc48[2]);var moment=require(_0xfc48[3]);var BPromise=require(_0xfc48[4]);var util=require(_0xfc48[5]);var path=require(_0xfc48[6]);var sox=require(_0xfc48[7]);var ejs=require(_0xfc48[8]);var fs=require(_0xfc48[9]);var _=require(_0xfc48[10]);var squel=require(_0xfc48[11]);var crypto=require(_0xfc48[12]);var jsforce=require(_0xfc48[13]);var toCsv=require(_0xfc48[14]);var qs=require(_0xfc48[15]);var logger=require(_0xfc48[17])(_0xfc48[16]);var utils=require(_0xfc48[18]);var config=require(_0xfc48[19]);var db=require(_0xfc48[21])[_0xfc48[20]];function respondWithStatusCode(_0x9ab0x15,_0x9ab0x16,_0x9ab0x17){_0x9ab0x16= _0x9ab0x16|| 204;return function(_0x9ab0x18){if(_0x9ab0x18){logger[_0xfc48[24]](_0xfc48[22],_0x9ab0x17,_0x9ab0x16,_0xfc48[23]);logger[_0xfc48[26]](_0xfc48[25],_0x9ab0x17,_0x9ab0x16,_0xfc48[23]);return _0x9ab0x15[_0xfc48[27]](_0x9ab0x16)};return _0x9ab0x15[_0xfc48[29]](304)[_0xfc48[28]]()}}function respondWithResult(_0x9ab0x15,_0x9ab0x16,_0x9ab0x17){_0x9ab0x16= _0x9ab0x16|| 200;return function(_0x9ab0x18){if(_0x9ab0x18){logger[_0xfc48[24]](_0xfc48[22],_0x9ab0x17,_0x9ab0x16,_0xfc48[30]);logger[_0xfc48[26]](_0xfc48[25],_0x9ab0x17,_0x9ab0x16,_0xfc48[30],JSON[_0xfc48[31]](_0x9ab0x18));return _0x9ab0x15[_0xfc48[29]](_0x9ab0x16)[_0xfc48[32]](_0x9ab0x18)};return _0x9ab0x15[_0xfc48[29]](304)[_0xfc48[28]]()}}function respondWithFilteredResult(_0x9ab0x15,_0x9ab0x1b,_0x9ab0x17){return function(_0x9ab0x18){if(_0x9ab0x18){var _0x9ab0x1c=_0x9ab0x18[_0xfc48[33]],_0x9ab0x1d=_0x9ab0x1b[_0xfc48[34]],_0x9ab0x1e=_0x9ab0x1b[_0xfc48[34]]+ _0x9ab0x1b[_0xfc48[35]],_0x9ab0x16;if(_0x9ab0x1e>= _0x9ab0x1c){_0x9ab0x1e= _0x9ab0x1c;_0x9ab0x16= 200}else {_0x9ab0x16= 206};_0x9ab0x15[_0xfc48[29]](_0x9ab0x16);logger[_0xfc48[24]](_0xfc48[22],_0x9ab0x17,_0x9ab0x16,_0xfc48[36]);logger[_0xfc48[26]](_0xfc48[25],_0x9ab0x17,_0x9ab0x16,_0xfc48[30],JSON[_0xfc48[31]](_0x9ab0x18));return _0x9ab0x15[_0xfc48[40]](_0xfc48[37],_0x9ab0x1d+ _0xfc48[38]+ _0x9ab0x1e+ _0xfc48[39]+ _0x9ab0x1c)[_0xfc48[32]](_0x9ab0x18)};return null}}function patchUpdates(_0x9ab0x20){return function(_0x9ab0x18){try{jsonpatch[_0xfc48[41]](_0x9ab0x18,_0x9ab0x20,true)}catch(err){return BPromise[_0xfc48[42]](err)};return _0x9ab0x18[_0xfc48[43]]()}}function saveUpdates(_0x9ab0x22,_0x9ab0x16,_0x9ab0x17){return function(_0x9ab0x18){if(_0x9ab0x18){return _0x9ab0x18[_0xfc48[46]](_0x9ab0x22)[_0xfc48[45]](function(_0x9ab0x23){logger[_0xfc48[24]](_0xfc48[22],_0x9ab0x17,_0x9ab0x16,_0xfc48[44]);logger[_0xfc48[26]](_0xfc48[25],_0x9ab0x17,_0x9ab0x16,_0xfc48[44],JSON[_0xfc48[31]](_0x9ab0x18));return _0x9ab0x23})};return null}}function removeEntity(_0x9ab0x15,_0x9ab0x16,_0x9ab0x17){return function(_0x9ab0x18){if(_0x9ab0x18){return _0x9ab0x18[_0xfc48[48]]()[_0xfc48[45]](function(){logger[_0xfc48[24]](_0xfc48[22],_0x9ab0x17,_0x9ab0x16,_0xfc48[47]);logger[_0xfc48[26]](_0xfc48[25],_0x9ab0x17,_0x9ab0x16,_0xfc48[47],JSON[_0xfc48[31]](_0x9ab0x18));_0x9ab0x15[_0xfc48[29]](204)[_0xfc48[28]]()})}}}function handleEntityNotFound(_0x9ab0x15,_0x9ab0x16,_0x9ab0x17){return function(_0x9ab0x18){if(!_0x9ab0x18){logger[_0xfc48[50]](_0xfc48[22],_0x9ab0x17,404,_0xfc48[49]);_0x9ab0x15[_0xfc48[29]](404)[_0xfc48[28]]();return null};return _0x9ab0x18}}function handleError(_0x9ab0x15,_0x9ab0x16,_0x9ab0x17){_0x9ab0x16= _0x9ab0x16|| 500;return function(_0x9ab0x27){logger[_0xfc48[50]](_0xfc48[22],_0x9ab0x17,_0x9ab0x16,JSON[_0xfc48[31]](_0x9ab0x27));delete _0x9ab0x27[_0xfc48[51]];_0x9ab0x15[_0xfc48[29]](_0x9ab0x16)[_0xfc48[52]](_0x9ab0x27)}}exports[_0xfc48[53]]= function(_0x9ab0x28,_0x9ab0x15){var _0x9ab0x1b={raw:true,where:{id:_0x9ab0x28[_0xfc48[55]][_0xfc48[54]]}},_0x9ab0x29={};_0x9ab0x29[_0xfc48[56]]= _[_0xfc48[59]](db[_0xfc48[58]][_0xfc48[57]]);_0x9ab0x29[_0xfc48[60]]= _[_0xfc48[59]](_0x9ab0x28[_0xfc48[60]]);_0x9ab0x29[_0xfc48[61]]= _[_0xfc48[62]](_0x9ab0x29[_0xfc48[56]],_0x9ab0x29[_0xfc48[60]]);_0x9ab0x1b[_0xfc48[63]]= _[_0xfc48[62]](_0x9ab0x29[_0xfc48[56]],qs[_0xfc48[64]](_0x9ab0x28[_0xfc48[60]][_0xfc48[64]]));_0x9ab0x1b[_0xfc48[63]]= (_0x9ab0x1b[_0xfc48[63]][_0xfc48[65]])?_0x9ab0x1b[_0xfc48[63]]:_0x9ab0x29[_0xfc48[56]];_0x9ab0x1b= _[_0xfc48[67]]({},_0x9ab0x1b,_0x9ab0x28[_0xfc48[66]]);return db[_0xfc48[58]][_0xfc48[69]](_0x9ab0x1b)[_0xfc48[45]](handleEntityNotFound(_0x9ab0x15,null,_0xfc48[53]))[_0xfc48[45]](respondWithResult(_0x9ab0x15,null,_0xfc48[53]))[_0xfc48[68]](handleError(_0x9ab0x15,null,_0xfc48[53]))};exports[_0xfc48[46]]= function(_0x9ab0x28,_0x9ab0x15){if(_0x9ab0x28[_0xfc48[70]][_0xfc48[54]]){delete _0x9ab0x28[_0xfc48[70]][_0xfc48[54]]};return db[_0xfc48[58]][_0xfc48[69]]({where:{id:_0x9ab0x28[_0xfc48[55]][_0xfc48[54]]}})[_0xfc48[45]](handleEntityNotFound(_0x9ab0x15,null,_0xfc48[46]))[_0xfc48[45]](saveUpdates(_0x9ab0x28[_0xfc48[70]],null,_0xfc48[46]))[_0xfc48[45]](respondWithResult(_0x9ab0x15,null,_0xfc48[46]))[_0xfc48[68]](handleError(_0x9ab0x15,null,_0xfc48[46]))};exports[_0xfc48[48]]= function(_0x9ab0x28,_0x9ab0x15){return db[_0xfc48[58]][_0xfc48[69]]({where:{id:_0x9ab0x28[_0xfc48[55]][_0xfc48[54]]}})[_0xfc48[45]](handleEntityNotFound(_0x9ab0x15,null,_0xfc48[48]))[_0xfc48[45]](removeEntity(_0x9ab0x15,null,_0xfc48[48]))[_0xfc48[68]](handleError(_0x9ab0x15,null,_0xfc48[48]))}
\ No newline at end of file
index 17dc8dd..07d1058 100644 (file)
@@ -1 +1 @@
-var _0x23f3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x73\x6D\x73\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x23f3[0];var _=require(_0x23f3[1]);var util=require(_0x23f3[2]);var logger=require(_0x23f3[4])(_0x23f3[3]);var attributes=require(_0x23f3[5]);module[_0x23f3[6]]= function(_0x3c86x5,_0x3c86x6){return _0x3c86x5[_0x23f3[9]](_0x23f3[7],attributes,{tableName:_0x23f3[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x7001=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x73\x6D\x73\x5F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x7001[0];var _=require(_0x7001[1]);var util=require(_0x7001[2]);var logger=require(_0x7001[4])(_0x7001[3]);var attributes=require(_0x7001[5]);module[_0x7001[6]]= function(_0xee3ax5,_0xee3ax6){return _0xee3ax5[_0x7001[9]](_0x7001[7],attributes,{tableName:_0x7001[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index bd99dae..786de4a 100644 (file)
@@ -1 +1 @@
-var _0xea0a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xea0a[0];var _=require(_0xea0a[1]);var util=require(_0xea0a[2]);var moment=require(_0xea0a[3]);var BPromise=require(_0xea0a[4]);var db=require(_0xea0a[6])[_0xea0a[5]];var utils=require(_0xea0a[7]);var logger=require(_0xea0a[9])(_0xea0a[8]);var jayson=require(_0xea0a[10]);var client=jayson[_0xea0a[12]][_0xea0a[11]]({port:9002});function respondWithRpcPromise(_0xd983xb,_0xd983xc,_0xd983xd){return  new BPromise(function(_0xd983xe,_0xd983xf){return client[_0xea0a[25]](_0xd983xb,_0xd983xd)[_0xea0a[24]](function(_0xd983x11){logger[_0xea0a[17]](_0xea0a[13],_0xd983xc,_0xea0a[16]);logger[_0xea0a[20]](_0xea0a[18],_0xd983xc,_0xea0a[16],JSON[_0xea0a[19]](_0xd983x11));if(_0xd983x11[_0xea0a[14]]){if(_0xd983x11[_0xea0a[14]][_0xea0a[21]]=== 500){logger[_0xea0a[14]](_0xea0a[13],_0xd983xc,_0xd983x11[_0xea0a[14]][_0xea0a[22]]);return _0xd983xf(_0xd983x11[_0xea0a[14]][_0xea0a[22]])};logger[_0xea0a[14]](_0xea0a[13],_0xd983xc,_0xd983x11[_0xea0a[14]][_0xea0a[22]]);return _0xd983xe(_0xd983x11[_0xea0a[14]][_0xea0a[22]])}else {logger[_0xea0a[17]](_0xea0a[13],_0xd983xc,_0xea0a[16]);_0xd983xe(_0xd983x11[_0xea0a[23]][_0xea0a[22]])}})[_0xea0a[15]](function(_0xd983x10){logger[_0xea0a[14]](_0xea0a[13],_0xd983xc,_0xd983x10);_0xd983xf(_0xd983x10)})})}
\ No newline at end of file
+var _0xc19f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xc19f[0];var _=require(_0xc19f[1]);var util=require(_0xc19f[2]);var moment=require(_0xc19f[3]);var BPromise=require(_0xc19f[4]);var db=require(_0xc19f[6])[_0xc19f[5]];var utils=require(_0xc19f[7]);var logger=require(_0xc19f[9])(_0xc19f[8]);var jayson=require(_0xc19f[10]);var client=jayson[_0xc19f[12]][_0xc19f[11]]({port:9002});function respondWithRpcPromise(_0xa634xb,_0xa634xc,_0xa634xd){return  new BPromise(function(_0xa634xe,_0xa634xf){return client[_0xc19f[25]](_0xa634xb,_0xa634xd)[_0xc19f[24]](function(_0xa634x11){logger[_0xc19f[17]](_0xc19f[13],_0xa634xc,_0xc19f[16]);logger[_0xc19f[20]](_0xc19f[18],_0xa634xc,_0xc19f[16],JSON[_0xc19f[19]](_0xa634x11));if(_0xa634x11[_0xc19f[14]]){if(_0xa634x11[_0xc19f[14]][_0xc19f[21]]=== 500){logger[_0xc19f[14]](_0xc19f[13],_0xa634xc,_0xa634x11[_0xc19f[14]][_0xc19f[22]]);return _0xa634xf(_0xa634x11[_0xc19f[14]][_0xc19f[22]])};logger[_0xc19f[14]](_0xc19f[13],_0xa634xc,_0xa634x11[_0xc19f[14]][_0xc19f[22]]);return _0xa634xe(_0xa634x11[_0xc19f[14]][_0xc19f[22]])}else {logger[_0xc19f[17]](_0xc19f[13],_0xa634xc,_0xc19f[16]);_0xa634xe(_0xa634x11[_0xc19f[23]][_0xc19f[22]])}})[_0xc19f[15]](function(_0xa634x10){logger[_0xc19f[14]](_0xc19f[13],_0xa634xc,_0xa634x10);_0xa634xf(_0xa634x10)})})}
\ No newline at end of file
index d3c4e45..38a4ef3 100644 (file)
@@ -1 +1 @@
-var _0x9d48=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x9d48[0];var multer=require(_0x9d48[1]);var util=require(_0x9d48[2]);var path=require(_0x9d48[3]);var express=require(_0x9d48[4]);var router=express.Router();var auth=require(_0x9d48[5]);var config=require(_0x9d48[6]);var controller=require(_0x9d48[7]);router[_0x9d48[11]](_0x9d48[8],auth[_0x9d48[9]](),controller[_0x9d48[10]]);router[_0x9d48[14]](_0x9d48[12],auth[_0x9d48[9]](),controller[_0x9d48[13]]);router[_0x9d48[16]](_0x9d48[8],auth[_0x9d48[9]](),controller[_0x9d48[15]]);router[_0x9d48[18]](_0x9d48[8],auth[_0x9d48[9]](),controller[_0x9d48[17]]);module[_0x9d48[19]]= router
\ No newline at end of file
+var _0x57e9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F\x3A\x69\x64","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x68\x6F\x77","\x67\x65\x74","\x2F","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x57e9[0];var multer=require(_0x57e9[1]);var util=require(_0x57e9[2]);var path=require(_0x57e9[3]);var express=require(_0x57e9[4]);var router=express.Router();var auth=require(_0x57e9[5]);var config=require(_0x57e9[6]);var controller=require(_0x57e9[7]);router[_0x57e9[11]](_0x57e9[8],auth[_0x57e9[9]](),controller[_0x57e9[10]]);router[_0x57e9[14]](_0x57e9[12],auth[_0x57e9[9]](),controller[_0x57e9[13]]);router[_0x57e9[16]](_0x57e9[8],auth[_0x57e9[9]](),controller[_0x57e9[15]]);router[_0x57e9[18]](_0x57e9[8],auth[_0x57e9[9]](),controller[_0x57e9[17]]);module[_0x57e9[19]]= router
\ No newline at end of file
index 7132820..c960125 100644 (file)
@@ -1 +1 @@
-var _0xb6fb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xb6fb[0];var Sequelize=require(_0xb6fb[1]);module[_0xb6fb[2]]= {name:{type:Sequelize[_0xb6fb[3]]}}
\ No newline at end of file
+var _0x16a4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x16a4[0];var Sequelize=require(_0x16a4[1]);module[_0x16a4[2]]= {name:{type:Sequelize[_0x16a4[3]]}}
\ No newline at end of file
index d39b5fa..7bb62c1 100644 (file)
@@ -1 +1 @@
-var _0x6fa4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x6fa4[0];var jsonpatch=require(_0x6fa4[1]);var rp=require(_0x6fa4[2]);var moment=require(_0x6fa4[3]);var BPromise=require(_0x6fa4[4]);var util=require(_0x6fa4[5]);var path=require(_0x6fa4[6]);var sox=require(_0x6fa4[7]);var ejs=require(_0x6fa4[8]);var fs=require(_0x6fa4[9]);var _=require(_0x6fa4[10]);var squel=require(_0x6fa4[11]);var crypto=require(_0x6fa4[12]);var jsforce=require(_0x6fa4[13]);var toCsv=require(_0x6fa4[14]);var qs=require(_0x6fa4[15]);var logger=require(_0x6fa4[17])(_0x6fa4[16]);var utils=require(_0x6fa4[18]);var config=require(_0x6fa4[19]);var db=require(_0x6fa4[21])[_0x6fa4[20]];function respondWithStatusCode(_0xc292x15,_0xc292x16,_0xc292x17){_0xc292x16= _0xc292x16|| 204;return function(_0xc292x18){if(_0xc292x18){logger[_0x6fa4[24]](_0x6fa4[22],_0xc292x17,_0xc292x16,_0x6fa4[23]);logger[_0x6fa4[26]](_0x6fa4[25],_0xc292x17,_0xc292x16,_0x6fa4[23]);return _0xc292x15[_0x6fa4[27]](_0xc292x16)};return _0xc292x15[_0x6fa4[29]](304)[_0x6fa4[28]]()}}function respondWithResult(_0xc292x15,_0xc292x16,_0xc292x17){_0xc292x16= _0xc292x16|| 200;return function(_0xc292x18){if(_0xc292x18){logger[_0x6fa4[24]](_0x6fa4[22],_0xc292x17,_0xc292x16,_0x6fa4[30]);logger[_0x6fa4[26]](_0x6fa4[25],_0xc292x17,_0xc292x16,_0x6fa4[30],JSON[_0x6fa4[31]](_0xc292x18));return _0xc292x15[_0x6fa4[29]](_0xc292x16)[_0x6fa4[32]](_0xc292x18)};return _0xc292x15[_0x6fa4[29]](304)[_0x6fa4[28]]()}}function respondWithFilteredResult(_0xc292x15,_0xc292x1b,_0xc292x17){return function(_0xc292x18){if(_0xc292x18){var _0xc292x1c=_0xc292x18[_0x6fa4[33]],_0xc292x1d=_0xc292x1b[_0x6fa4[34]],_0xc292x1e=_0xc292x1b[_0x6fa4[34]]+ _0xc292x1b[_0x6fa4[35]],_0xc292x16;if(_0xc292x1e>= _0xc292x1c){_0xc292x1e= _0xc292x1c;_0xc292x16= 200}else {_0xc292x16= 206};_0xc292x15[_0x6fa4[29]](_0xc292x16);logger[_0x6fa4[24]](_0x6fa4[22],_0xc292x17,_0xc292x16,_0x6fa4[36]);logger[_0x6fa4[26]](_0x6fa4[25],_0xc292x17,_0xc292x16,_0x6fa4[30],JSON[_0x6fa4[31]](_0xc292x18));return _0xc292x15[_0x6fa4[40]](_0x6fa4[37],_0xc292x1d+ _0x6fa4[38]+ _0xc292x1e+ _0x6fa4[39]+ _0xc292x1c)[_0x6fa4[32]](_0xc292x18)};return null}}function patchUpdates(_0xc292x20){return function(_0xc292x18){try{jsonpatch[_0x6fa4[41]](_0xc292x18,_0xc292x20,true)}catch(err){return BPromise[_0x6fa4[42]](err)};return _0xc292x18[_0x6fa4[43]]()}}function saveUpdates(_0xc292x22,_0xc292x16,_0xc292x17){return function(_0xc292x18){if(_0xc292x18){return _0xc292x18[_0x6fa4[46]](_0xc292x22)[_0x6fa4[45]](function(_0xc292x23){logger[_0x6fa4[24]](_0x6fa4[22],_0xc292x17,_0xc292x16,_0x6fa4[44]);logger[_0x6fa4[26]](_0x6fa4[25],_0xc292x17,_0xc292x16,_0x6fa4[44],JSON[_0x6fa4[31]](_0xc292x18));return _0xc292x23})};return null}}function removeEntity(_0xc292x15,_0xc292x16,_0xc292x17){return function(_0xc292x18){if(_0xc292x18){return _0xc292x18[_0x6fa4[48]]()[_0x6fa4[45]](function(){logger[_0x6fa4[24]](_0x6fa4[22],_0xc292x17,_0xc292x16,_0x6fa4[47]);logger[_0x6fa4[26]](_0x6fa4[25],_0xc292x17,_0xc292x16,_0x6fa4[47],JSON[_0x6fa4[31]](_0xc292x18));_0xc292x15[_0x6fa4[29]](204)[_0x6fa4[28]]()})}}}function handleEntityNotFound(_0xc292x15,_0xc292x16,_0xc292x17){return function(_0xc292x18){if(!_0xc292x18){logger[_0x6fa4[50]](_0x6fa4[22],_0xc292x17,404,_0x6fa4[49]);_0xc292x15[_0x6fa4[29]](404)[_0x6fa4[28]]();return null};return _0xc292x18}}function handleError(_0xc292x15,_0xc292x16,_0xc292x17){_0xc292x16= _0xc292x16|| 500;return function(_0xc292x27){logger[_0x6fa4[50]](_0x6fa4[22],_0xc292x17,_0xc292x16,JSON[_0x6fa4[31]](_0xc292x27));delete _0xc292x27[_0x6fa4[51]];_0xc292x15[_0x6fa4[29]](_0xc292x16)[_0x6fa4[52]](_0xc292x27)}}exports[_0x6fa4[53]]= function(_0xc292x28,_0xc292x15){var _0xc292x1b={raw:true,where:{id:_0xc292x28[_0x6fa4[55]][_0x6fa4[54]]}},_0xc292x29={};_0xc292x29[_0x6fa4[56]]= _[_0x6fa4[59]](db[_0x6fa4[58]][_0x6fa4[57]]);_0xc292x29[_0x6fa4[60]]= _[_0x6fa4[59]](_0xc292x28[_0x6fa4[60]]);_0xc292x29[_0x6fa4[61]]= _[_0x6fa4[62]](_0xc292x29[_0x6fa4[56]],_0xc292x29[_0x6fa4[60]]);_0xc292x1b[_0x6fa4[63]]= _[_0x6fa4[62]](_0xc292x29[_0x6fa4[56]],qs[_0x6fa4[64]](_0xc292x28[_0x6fa4[60]][_0x6fa4[64]]));_0xc292x1b[_0x6fa4[63]]= (_0xc292x1b[_0x6fa4[63]][_0x6fa4[65]])?_0xc292x1b[_0x6fa4[63]]:_0xc292x29[_0x6fa4[56]];_0xc292x1b= _[_0x6fa4[67]]({},_0xc292x1b,_0xc292x28[_0x6fa4[66]]);return db[_0x6fa4[58]][_0x6fa4[69]](_0xc292x1b)[_0x6fa4[45]](handleEntityNotFound(_0xc292x15,null,_0x6fa4[53]))[_0x6fa4[45]](respondWithResult(_0xc292x15,null,_0x6fa4[53]))[_0x6fa4[68]](handleError(_0xc292x15,null,_0x6fa4[53]))};exports[_0x6fa4[70]]= function(_0xc292x28,_0xc292x15){return db[_0x6fa4[58]][_0x6fa4[70]](_0xc292x28[_0x6fa4[71]],{})[_0x6fa4[45]](respondWithResult(_0xc292x15,201,_0x6fa4[70]))[_0x6fa4[68]](handleError(_0xc292x15,null,_0x6fa4[70]))};exports[_0x6fa4[46]]= function(_0xc292x28,_0xc292x15){if(_0xc292x28[_0x6fa4[71]][_0x6fa4[54]]){delete _0xc292x28[_0x6fa4[71]][_0x6fa4[54]]};return db[_0x6fa4[58]][_0x6fa4[69]]({where:{id:_0xc292x28[_0x6fa4[55]][_0x6fa4[54]]}})[_0x6fa4[45]](handleEntityNotFound(_0xc292x15,null,_0x6fa4[46]))[_0x6fa4[45]](saveUpdates(_0xc292x28[_0x6fa4[71]],null,_0x6fa4[46]))[_0x6fa4[45]](respondWithResult(_0xc292x15,null,_0x6fa4[46]))[_0x6fa4[68]](handleError(_0xc292x15,null,_0x6fa4[46]))};exports[_0x6fa4[48]]= function(_0xc292x28,_0xc292x15){return db[_0x6fa4[58]][_0x6fa4[69]]({where:{id:_0xc292x28[_0x6fa4[55]][_0x6fa4[54]]}})[_0x6fa4[45]](handleEntityNotFound(_0xc292x15,null,_0x6fa4[48]))[_0x6fa4[45]](removeEntity(_0xc292x15,null,_0x6fa4[48]))[_0x6fa4[68]](handleError(_0xc292x15,null,_0x6fa4[48]))}
\ No newline at end of file
+var _0xfe3c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6F\x70\x74\x69\x6F\x6E\x73","\x6D\x65\x72\x67\x65","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xfe3c[0];var jsonpatch=require(_0xfe3c[1]);var rp=require(_0xfe3c[2]);var moment=require(_0xfe3c[3]);var BPromise=require(_0xfe3c[4]);var util=require(_0xfe3c[5]);var path=require(_0xfe3c[6]);var sox=require(_0xfe3c[7]);var ejs=require(_0xfe3c[8]);var fs=require(_0xfe3c[9]);var _=require(_0xfe3c[10]);var squel=require(_0xfe3c[11]);var crypto=require(_0xfe3c[12]);var jsforce=require(_0xfe3c[13]);var toCsv=require(_0xfe3c[14]);var qs=require(_0xfe3c[15]);var logger=require(_0xfe3c[17])(_0xfe3c[16]);var utils=require(_0xfe3c[18]);var config=require(_0xfe3c[19]);var db=require(_0xfe3c[21])[_0xfe3c[20]];function respondWithStatusCode(_0x2b5cx15,_0x2b5cx16,_0x2b5cx17){_0x2b5cx16= _0x2b5cx16|| 204;return function(_0x2b5cx18){if(_0x2b5cx18){logger[_0xfe3c[24]](_0xfe3c[22],_0x2b5cx17,_0x2b5cx16,_0xfe3c[23]);logger[_0xfe3c[26]](_0xfe3c[25],_0x2b5cx17,_0x2b5cx16,_0xfe3c[23]);return _0x2b5cx15[_0xfe3c[27]](_0x2b5cx16)};return _0x2b5cx15[_0xfe3c[29]](304)[_0xfe3c[28]]()}}function respondWithResult(_0x2b5cx15,_0x2b5cx16,_0x2b5cx17){_0x2b5cx16= _0x2b5cx16|| 200;return function(_0x2b5cx18){if(_0x2b5cx18){logger[_0xfe3c[24]](_0xfe3c[22],_0x2b5cx17,_0x2b5cx16,_0xfe3c[30]);logger[_0xfe3c[26]](_0xfe3c[25],_0x2b5cx17,_0x2b5cx16,_0xfe3c[30],JSON[_0xfe3c[31]](_0x2b5cx18));return _0x2b5cx15[_0xfe3c[29]](_0x2b5cx16)[_0xfe3c[32]](_0x2b5cx18)};return _0x2b5cx15[_0xfe3c[29]](304)[_0xfe3c[28]]()}}function respondWithFilteredResult(_0x2b5cx15,_0x2b5cx1b,_0x2b5cx17){return function(_0x2b5cx18){if(_0x2b5cx18){var _0x2b5cx1c=_0x2b5cx18[_0xfe3c[33]],_0x2b5cx1d=_0x2b5cx1b[_0xfe3c[34]],_0x2b5cx1e=_0x2b5cx1b[_0xfe3c[34]]+ _0x2b5cx1b[_0xfe3c[35]],_0x2b5cx16;if(_0x2b5cx1e>= _0x2b5cx1c){_0x2b5cx1e= _0x2b5cx1c;_0x2b5cx16= 200}else {_0x2b5cx16= 206};_0x2b5cx15[_0xfe3c[29]](_0x2b5cx16);logger[_0xfe3c[24]](_0xfe3c[22],_0x2b5cx17,_0x2b5cx16,_0xfe3c[36]);logger[_0xfe3c[26]](_0xfe3c[25],_0x2b5cx17,_0x2b5cx16,_0xfe3c[30],JSON[_0xfe3c[31]](_0x2b5cx18));return _0x2b5cx15[_0xfe3c[40]](_0xfe3c[37],_0x2b5cx1d+ _0xfe3c[38]+ _0x2b5cx1e+ _0xfe3c[39]+ _0x2b5cx1c)[_0xfe3c[32]](_0x2b5cx18)};return null}}function patchUpdates(_0x2b5cx20){return function(_0x2b5cx18){try{jsonpatch[_0xfe3c[41]](_0x2b5cx18,_0x2b5cx20,true)}catch(err){return BPromise[_0xfe3c[42]](err)};return _0x2b5cx18[_0xfe3c[43]]()}}function saveUpdates(_0x2b5cx22,_0x2b5cx16,_0x2b5cx17){return function(_0x2b5cx18){if(_0x2b5cx18){return _0x2b5cx18[_0xfe3c[46]](_0x2b5cx22)[_0xfe3c[45]](function(_0x2b5cx23){logger[_0xfe3c[24]](_0xfe3c[22],_0x2b5cx17,_0x2b5cx16,_0xfe3c[44]);logger[_0xfe3c[26]](_0xfe3c[25],_0x2b5cx17,_0x2b5cx16,_0xfe3c[44],JSON[_0xfe3c[31]](_0x2b5cx18));return _0x2b5cx23})};return null}}function removeEntity(_0x2b5cx15,_0x2b5cx16,_0x2b5cx17){return function(_0x2b5cx18){if(_0x2b5cx18){return _0x2b5cx18[_0xfe3c[48]]()[_0xfe3c[45]](function(){logger[_0xfe3c[24]](_0xfe3c[22],_0x2b5cx17,_0x2b5cx16,_0xfe3c[47]);logger[_0xfe3c[26]](_0xfe3c[25],_0x2b5cx17,_0x2b5cx16,_0xfe3c[47],JSON[_0xfe3c[31]](_0x2b5cx18));_0x2b5cx15[_0xfe3c[29]](204)[_0xfe3c[28]]()})}}}function handleEntityNotFound(_0x2b5cx15,_0x2b5cx16,_0x2b5cx17){return function(_0x2b5cx18){if(!_0x2b5cx18){logger[_0xfe3c[50]](_0xfe3c[22],_0x2b5cx17,404,_0xfe3c[49]);_0x2b5cx15[_0xfe3c[29]](404)[_0xfe3c[28]]();return null};return _0x2b5cx18}}function handleError(_0x2b5cx15,_0x2b5cx16,_0x2b5cx17){_0x2b5cx16= _0x2b5cx16|| 500;return function(_0x2b5cx27){logger[_0xfe3c[50]](_0xfe3c[22],_0x2b5cx17,_0x2b5cx16,JSON[_0xfe3c[31]](_0x2b5cx27));delete _0x2b5cx27[_0xfe3c[51]];_0x2b5cx15[_0xfe3c[29]](_0x2b5cx16)[_0xfe3c[52]](_0x2b5cx27)}}exports[_0xfe3c[53]]= function(_0x2b5cx28,_0x2b5cx15){var _0x2b5cx1b={raw:true,where:{id:_0x2b5cx28[_0xfe3c[55]][_0xfe3c[54]]}},_0x2b5cx29={};_0x2b5cx29[_0xfe3c[56]]= _[_0xfe3c[59]](db[_0xfe3c[58]][_0xfe3c[57]]);_0x2b5cx29[_0xfe3c[60]]= _[_0xfe3c[59]](_0x2b5cx28[_0xfe3c[60]]);_0x2b5cx29[_0xfe3c[61]]= _[_0xfe3c[62]](_0x2b5cx29[_0xfe3c[56]],_0x2b5cx29[_0xfe3c[60]]);_0x2b5cx1b[_0xfe3c[63]]= _[_0xfe3c[62]](_0x2b5cx29[_0xfe3c[56]],qs[_0xfe3c[64]](_0x2b5cx28[_0xfe3c[60]][_0xfe3c[64]]));_0x2b5cx1b[_0xfe3c[63]]= (_0x2b5cx1b[_0xfe3c[63]][_0xfe3c[65]])?_0x2b5cx1b[_0xfe3c[63]]:_0x2b5cx29[_0xfe3c[56]];_0x2b5cx1b= _[_0xfe3c[67]]({},_0x2b5cx1b,_0x2b5cx28[_0xfe3c[66]]);return db[_0xfe3c[58]][_0xfe3c[69]](_0x2b5cx1b)[_0xfe3c[45]](handleEntityNotFound(_0x2b5cx15,null,_0xfe3c[53]))[_0xfe3c[45]](respondWithResult(_0x2b5cx15,null,_0xfe3c[53]))[_0xfe3c[68]](handleError(_0x2b5cx15,null,_0xfe3c[53]))};exports[_0xfe3c[70]]= function(_0x2b5cx28,_0x2b5cx15){return db[_0xfe3c[58]][_0xfe3c[70]](_0x2b5cx28[_0xfe3c[71]],{})[_0xfe3c[45]](respondWithResult(_0x2b5cx15,201,_0xfe3c[70]))[_0xfe3c[68]](handleError(_0x2b5cx15,null,_0xfe3c[70]))};exports[_0xfe3c[46]]= function(_0x2b5cx28,_0x2b5cx15){if(_0x2b5cx28[_0xfe3c[71]][_0xfe3c[54]]){delete _0x2b5cx28[_0xfe3c[71]][_0xfe3c[54]]};return db[_0xfe3c[58]][_0xfe3c[69]]({where:{id:_0x2b5cx28[_0xfe3c[55]][_0xfe3c[54]]}})[_0xfe3c[45]](handleEntityNotFound(_0x2b5cx15,null,_0xfe3c[46]))[_0xfe3c[45]](saveUpdates(_0x2b5cx28[_0xfe3c[71]],null,_0xfe3c[46]))[_0xfe3c[45]](respondWithResult(_0x2b5cx15,null,_0xfe3c[46]))[_0xfe3c[68]](handleError(_0x2b5cx15,null,_0xfe3c[46]))};exports[_0xfe3c[48]]= function(_0x2b5cx28,_0x2b5cx15){return db[_0xfe3c[58]][_0xfe3c[69]]({where:{id:_0x2b5cx28[_0xfe3c[55]][_0xfe3c[54]]}})[_0xfe3c[45]](handleEntityNotFound(_0x2b5cx15,null,_0xfe3c[48]))[_0xfe3c[45]](removeEntity(_0x2b5cx15,null,_0xfe3c[48]))[_0xfe3c[68]](handleError(_0x2b5cx15,null,_0xfe3c[48]))}
\ No newline at end of file
index 26fab25..49f423d 100644 (file)
@@ -1 +1 @@
-var _0x4f76=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x73\x6D\x73\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x4f76[0];var _=require(_0x4f76[1]);var util=require(_0x4f76[2]);var logger=require(_0x4f76[4])(_0x4f76[3]);var attributes=require(_0x4f76[5]);module[_0x4f76[6]]= function(_0xe2e9x5,_0xe2e9x6){return _0xe2e9x5[_0x4f76[9]](_0x4f76[7],attributes,{tableName:_0x4f76[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xf73d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x73\x6D\x73\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xf73d[0];var _=require(_0xf73d[1]);var util=require(_0xf73d[2]);var logger=require(_0xf73d[4])(_0xf73d[3]);var attributes=require(_0xf73d[5]);module[_0xf73d[6]]= function(_0x99a1x5,_0x99a1x6){return _0x99a1x5[_0xf73d[9]](_0xf73d[7],attributes,{tableName:_0xf73d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 2eb3b64..0c41fc2 100644 (file)
@@ -1 +1 @@
-var _0x28cf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x28cf[0];var _=require(_0x28cf[1]);var util=require(_0x28cf[2]);var moment=require(_0x28cf[3]);var BPromise=require(_0x28cf[4]);var db=require(_0x28cf[6])[_0x28cf[5]];var utils=require(_0x28cf[7]);var logger=require(_0x28cf[9])(_0x28cf[8]);var jayson=require(_0x28cf[10]);var client=jayson[_0x28cf[12]][_0x28cf[11]]({port:9002});function respondWithRpcPromise(_0x4f63xb,_0x4f63xc,_0x4f63xd){return  new BPromise(function(_0x4f63xe,_0x4f63xf){return client[_0x28cf[25]](_0x4f63xb,_0x4f63xd)[_0x28cf[24]](function(_0x4f63x11){logger[_0x28cf[17]](_0x28cf[13],_0x4f63xc,_0x28cf[16]);logger[_0x28cf[20]](_0x28cf[18],_0x4f63xc,_0x28cf[16],JSON[_0x28cf[19]](_0x4f63x11));if(_0x4f63x11[_0x28cf[14]]){if(_0x4f63x11[_0x28cf[14]][_0x28cf[21]]=== 500){logger[_0x28cf[14]](_0x28cf[13],_0x4f63xc,_0x4f63x11[_0x28cf[14]][_0x28cf[22]]);return _0x4f63xf(_0x4f63x11[_0x28cf[14]][_0x28cf[22]])};logger[_0x28cf[14]](_0x28cf[13],_0x4f63xc,_0x4f63x11[_0x28cf[14]][_0x28cf[22]]);return _0x4f63xe(_0x4f63x11[_0x28cf[14]][_0x28cf[22]])}else {logger[_0x28cf[17]](_0x28cf[13],_0x4f63xc,_0x28cf[16]);_0x4f63xe(_0x4f63x11[_0x28cf[23]][_0x28cf[22]])}})[_0x28cf[15]](function(_0x4f63x10){logger[_0x28cf[14]](_0x28cf[13],_0x4f63xc,_0x4f63x10);_0x4f63xf(_0x4f63x10)})})}
\ No newline at end of file
+var _0x58a1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x58a1[0];var _=require(_0x58a1[1]);var util=require(_0x58a1[2]);var moment=require(_0x58a1[3]);var BPromise=require(_0x58a1[4]);var db=require(_0x58a1[6])[_0x58a1[5]];var utils=require(_0x58a1[7]);var logger=require(_0x58a1[9])(_0x58a1[8]);var jayson=require(_0x58a1[10]);var client=jayson[_0x58a1[12]][_0x58a1[11]]({port:9002});function respondWithRpcPromise(_0x3c18xb,_0x3c18xc,_0x3c18xd){return  new BPromise(function(_0x3c18xe,_0x3c18xf){return client[_0x58a1[25]](_0x3c18xb,_0x3c18xd)[_0x58a1[24]](function(_0x3c18x11){logger[_0x58a1[17]](_0x58a1[13],_0x3c18xc,_0x58a1[16]);logger[_0x58a1[20]](_0x58a1[18],_0x3c18xc,_0x58a1[16],JSON[_0x58a1[19]](_0x3c18x11));if(_0x3c18x11[_0x58a1[14]]){if(_0x3c18x11[_0x58a1[14]][_0x58a1[21]]=== 500){logger[_0x58a1[14]](_0x58a1[13],_0x3c18xc,_0x3c18x11[_0x58a1[14]][_0x58a1[22]]);return _0x3c18xf(_0x3c18x11[_0x58a1[14]][_0x58a1[22]])};logger[_0x58a1[14]](_0x58a1[13],_0x3c18xc,_0x3c18x11[_0x58a1[14]][_0x58a1[22]]);return _0x3c18xe(_0x3c18x11[_0x58a1[14]][_0x58a1[22]])}else {logger[_0x58a1[17]](_0x58a1[13],_0x3c18xc,_0x58a1[16]);_0x3c18xe(_0x3c18x11[_0x58a1[23]][_0x58a1[22]])}})[_0x58a1[15]](function(_0x3c18x10){logger[_0x58a1[14]](_0x58a1[13],_0x3c18xc,_0x3c18x10);_0x3c18xf(_0x3c18x10)})})}
\ No newline at end of file
index 7eb32d8..f7096ac 100644 (file)
@@ -1 +1 @@
-var _0x36ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x36ee[0];var multer=require(_0x36ee[1]);var util=require(_0x36ee[2]);var path=require(_0x36ee[3]);var express=require(_0x36ee[4]);var router=express.Router();var auth=require(_0x36ee[5]);var config=require(_0x36ee[6]);var controller=require(_0x36ee[7]);router[_0x36ee[11]](_0x36ee[8],auth[_0x36ee[9]](),controller[_0x36ee[10]]);router[_0x36ee[11]](_0x36ee[12],auth[_0x36ee[9]](),controller[_0x36ee[13]]);router[_0x36ee[11]](_0x36ee[14],auth[_0x36ee[9]](),controller[_0x36ee[15]]);router[_0x36ee[11]](_0x36ee[16],auth[_0x36ee[9]](),controller[_0x36ee[17]]);router[_0x36ee[19]](_0x36ee[8],auth[_0x36ee[9]](),controller[_0x36ee[18]]);router[_0x36ee[19]](_0x36ee[16],auth[_0x36ee[9]](),controller[_0x36ee[20]]);router[_0x36ee[22]](_0x36ee[14],auth[_0x36ee[9]](),controller[_0x36ee[21]]);router[_0x36ee[24]](_0x36ee[14],auth[_0x36ee[9]](),controller[_0x36ee[23]]);module[_0x36ee[25]]= router
\ No newline at end of file
+var _0x7d8f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7d8f[0];var multer=require(_0x7d8f[1]);var util=require(_0x7d8f[2]);var path=require(_0x7d8f[3]);var express=require(_0x7d8f[4]);var router=express.Router();var auth=require(_0x7d8f[5]);var config=require(_0x7d8f[6]);var controller=require(_0x7d8f[7]);router[_0x7d8f[11]](_0x7d8f[8],auth[_0x7d8f[9]](),controller[_0x7d8f[10]]);router[_0x7d8f[11]](_0x7d8f[12],auth[_0x7d8f[9]](),controller[_0x7d8f[13]]);router[_0x7d8f[11]](_0x7d8f[14],auth[_0x7d8f[9]](),controller[_0x7d8f[15]]);router[_0x7d8f[11]](_0x7d8f[16],auth[_0x7d8f[9]](),controller[_0x7d8f[17]]);router[_0x7d8f[19]](_0x7d8f[8],auth[_0x7d8f[9]](),controller[_0x7d8f[18]]);router[_0x7d8f[19]](_0x7d8f[16],auth[_0x7d8f[9]](),controller[_0x7d8f[20]]);router[_0x7d8f[22]](_0x7d8f[14],auth[_0x7d8f[9]](),controller[_0x7d8f[21]]);router[_0x7d8f[24]](_0x7d8f[14],auth[_0x7d8f[9]](),controller[_0x7d8f[23]]);module[_0x7d8f[25]]= router
\ No newline at end of file
index 15b00a3..20eb873 100644 (file)
@@ -1 +1 @@
-var _0xc323=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x4E\x45\x57","\x4F\x50\x45\x4E","\x50\x45\x4E\x44\x49\x4E\x47","\x43\x4C\x4F\x53\x45\x44","\x73\x74\x61\x74\x75\x73","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x72\x72\x69\x76\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x6C\x6F\x73\x65\x64\x41\x74","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x54\x45\x58\x54","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E"];_0xc323[0];var Sequelize=require(_0xc323[1]);var moment=require(_0xc323[2]);module[_0xc323[3]]= {contact:{type:Sequelize[_0xc323[4]],validate:{is:/^[\+]?[0-9]+$/}},smsIn:{type:Sequelize[_0xc323[5]],defaultValue:0},smsOut:{type:Sequelize[_0xc323[5]],defaultValue:0},status:{type:Sequelize.ENUM(_0xc323[6],_0xc323[7],_0xc323[8],_0xc323[9]),defaultValue:_0xc323[6],set:function(_0x1427x3){this[_0xc323[11]](_0xc323[10],_0x1427x3);switch(_0x1427x3){case _0xc323[6]:this[_0xc323[11]](_0xc323[12],moment()[_0xc323[14]](_0xc323[13]));break;case _0xc323[9]:this[_0xc323[11]](_0xc323[15],moment()[_0xc323[14]](_0xc323[13]));break;default:}}},lastEvent:{type:Sequelize.ENUM(_0xc323[16],_0xc323[17],_0xc323[18],_0xc323[19],_0xc323[20])},lastEventAt:{type:Sequelize[_0xc323[21]]},waiting:{type:Sequelize[_0xc323[22]],defaultValue:false},tags:{type:Sequelize[_0xc323[23]],get:function(){var _0x1427x4;if(this[_0xc323[25]](_0xc323[24])){_0x1427x4= this[_0xc323[25]](_0xc323[24])[_0xc323[27]](_0xc323[26]);_0x1427x4[_0xc323[28]]()}else {_0x1427x4= []};return _0x1427x4},set:function(_0x1427x5){this[_0xc323[11]](_0xc323[24],_0x1427x5&& _0x1427x5[_0xc323[29]]?_0x1427x5[_0xc323[30]](_0xc323[26])+ _0xc323[26]:null)}},disposition:{type:Sequelize[_0xc323[4]]},openReason:{type:Sequelize[_0xc323[4]]},arrivedAt:{type:Sequelize[_0xc323[21]]},closedAt:{type:Sequelize[_0xc323[21]]},ParentId:{type:Sequelize[_0xc323[5]]},voiceSource:{type:Sequelize[_0xc323[22]],defaultValue:false},account:{type:Sequelize[_0xc323[4]]}}
\ No newline at end of file
+var _0xfcf8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x4E\x45\x57","\x4F\x50\x45\x4E","\x50\x45\x4E\x44\x49\x4E\x47","\x43\x4C\x4F\x53\x45\x44","\x73\x74\x61\x74\x75\x73","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x61\x72\x72\x69\x76\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x6C\x6F\x73\x65\x64\x41\x74","\x53\x45\x4E\x44\x49\x4E\x47","\x53\x45\x4E\x54","\x52\x45\x43\x45\x49\x56\x45\x44","\x46\x41\x49\x4C\x45\x44","\x4E\x4F\x54\x45","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x54\x45\x58\x54","\x74\x61\x67\x73","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x3B","\x73\x70\x6C\x69\x74","\x70\x6F\x70","\x6C\x65\x6E\x67\x74\x68","\x6A\x6F\x69\x6E"];_0xfcf8[0];var Sequelize=require(_0xfcf8[1]);var moment=require(_0xfcf8[2]);module[_0xfcf8[3]]= {contact:{type:Sequelize[_0xfcf8[4]],validate:{is:/^[\+]?[0-9]+$/}},smsIn:{type:Sequelize[_0xfcf8[5]],defaultValue:0},smsOut:{type:Sequelize[_0xfcf8[5]],defaultValue:0},status:{type:Sequelize.ENUM(_0xfcf8[6],_0xfcf8[7],_0xfcf8[8],_0xfcf8[9]),defaultValue:_0xfcf8[6],set:function(_0x9c73x3){this[_0xfcf8[11]](_0xfcf8[10],_0x9c73x3);switch(_0x9c73x3){case _0xfcf8[6]:this[_0xfcf8[11]](_0xfcf8[12],moment()[_0xfcf8[14]](_0xfcf8[13]));break;case _0xfcf8[9]:this[_0xfcf8[11]](_0xfcf8[15],moment()[_0xfcf8[14]](_0xfcf8[13]));break;default:}}},lastEvent:{type:Sequelize.ENUM(_0xfcf8[16],_0xfcf8[17],_0xfcf8[18],_0xfcf8[19],_0xfcf8[20])},lastEventAt:{type:Sequelize[_0xfcf8[21]]},waiting:{type:Sequelize[_0xfcf8[22]],defaultValue:false},tags:{type:Sequelize[_0xfcf8[23]],get:function(){var _0x9c73x4;if(this[_0xfcf8[25]](_0xfcf8[24])){_0x9c73x4= this[_0xfcf8[25]](_0xfcf8[24])[_0xfcf8[27]](_0xfcf8[26]);_0x9c73x4[_0xfcf8[28]]()}else {_0x9c73x4= []};return _0x9c73x4},set:function(_0x9c73x5){this[_0xfcf8[11]](_0xfcf8[24],_0x9c73x5&& _0x9c73x5[_0xfcf8[29]]?_0x9c73x5[_0xfcf8[30]](_0xfcf8[26])+ _0xfcf8[26]:null)}},disposition:{type:Sequelize[_0xfcf8[4]]},openReason:{type:Sequelize[_0xfcf8[4]]},arrivedAt:{type:Sequelize[_0xfcf8[21]]},closedAt:{type:Sequelize[_0xfcf8[21]]},ParentId:{type:Sequelize[_0xfcf8[5]]},voiceSource:{type:Sequelize[_0xfcf8[22]],defaultValue:false},account:{type:Sequelize[_0xfcf8[4]]}}
\ No newline at end of file
index 37acbfe..64bc2d9 100644 (file)
@@ -1 +1 @@
-var _0x1e08=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0x1e08[0];var jsonpatch=require(_0x1e08[1]);var rp=require(_0x1e08[2]);var moment=require(_0x1e08[3]);var BPromise=require(_0x1e08[4]);var util=require(_0x1e08[5]);var path=require(_0x1e08[6]);var sox=require(_0x1e08[7]);var ejs=require(_0x1e08[8]);var fs=require(_0x1e08[9]);var _=require(_0x1e08[10]);var squel=require(_0x1e08[11]);var crypto=require(_0x1e08[12]);var jsforce=require(_0x1e08[13]);var toCsv=require(_0x1e08[14]);var qs=require(_0x1e08[15]);var logger=require(_0x1e08[17])(_0x1e08[16]);var utils=require(_0x1e08[18]);var config=require(_0x1e08[19]);var db=require(_0x1e08[21])[_0x1e08[20]];function respondWithStatusCode(_0xa950x15,_0xa950x16,_0xa950x17){_0xa950x16= _0xa950x16|| 204;return function(_0xa950x18){if(_0xa950x18){logger[_0x1e08[24]](_0x1e08[22],_0xa950x17,_0xa950x16,_0x1e08[23]);logger[_0x1e08[26]](_0x1e08[25],_0xa950x17,_0xa950x16,_0x1e08[23]);return _0xa950x15[_0x1e08[27]](_0xa950x16)};return _0xa950x15[_0x1e08[29]](304)[_0x1e08[28]]()}}function respondWithResult(_0xa950x15,_0xa950x16,_0xa950x17){_0xa950x16= _0xa950x16|| 200;return function(_0xa950x18){if(_0xa950x18){logger[_0x1e08[24]](_0x1e08[22],_0xa950x17,_0xa950x16,_0x1e08[30]);logger[_0x1e08[26]](_0x1e08[25],_0xa950x17,_0xa950x16,_0x1e08[30],JSON[_0x1e08[31]](_0xa950x18));return _0xa950x15[_0x1e08[29]](_0xa950x16)[_0x1e08[32]](_0xa950x18)};return _0xa950x15[_0x1e08[29]](304)[_0x1e08[28]]()}}function respondWithFilteredResult(_0xa950x15,_0xa950x1b,_0xa950x17){return function(_0xa950x18){if(_0xa950x18){var _0xa950x1c=_0xa950x18[_0x1e08[33]],_0xa950x1d=_0xa950x1b[_0x1e08[34]],_0xa950x1e=_0xa950x1b[_0x1e08[34]]+ _0xa950x1b[_0x1e08[35]],_0xa950x16;if(_0xa950x1e>= _0xa950x1c){_0xa950x1e= _0xa950x1c;_0xa950x16= 200}else {_0xa950x16= 206};_0xa950x15[_0x1e08[29]](_0xa950x16);logger[_0x1e08[24]](_0x1e08[22],_0xa950x17,_0xa950x16,_0x1e08[36]);logger[_0x1e08[26]](_0x1e08[25],_0xa950x17,_0xa950x16,_0x1e08[30],JSON[_0x1e08[31]](_0xa950x18));return _0xa950x15[_0x1e08[40]](_0x1e08[37],_0xa950x1d+ _0x1e08[38]+ _0xa950x1e+ _0x1e08[39]+ _0xa950x1c)[_0x1e08[32]](_0xa950x18)};return null}}function patchUpdates(_0xa950x20){return function(_0xa950x18){try{jsonpatch[_0x1e08[41]](_0xa950x18,_0xa950x20,true)}catch(err){return BPromise[_0x1e08[42]](err)};return _0xa950x18[_0x1e08[43]]()}}function saveUpdates(_0xa950x22,_0xa950x16,_0xa950x17){return function(_0xa950x18){if(_0xa950x18){return _0xa950x18[_0x1e08[46]](_0xa950x22)[_0x1e08[45]](function(_0xa950x23){logger[_0x1e08[24]](_0x1e08[22],_0xa950x17,_0xa950x16,_0x1e08[44]);logger[_0x1e08[26]](_0x1e08[25],_0xa950x17,_0xa950x16,_0x1e08[44],JSON[_0x1e08[31]](_0xa950x18));return _0xa950x23})};return null}}function removeEntity(_0xa950x15,_0xa950x16,_0xa950x17){return function(_0xa950x18){if(_0xa950x18){return _0xa950x18[_0x1e08[48]]()[_0x1e08[45]](function(){logger[_0x1e08[24]](_0x1e08[22],_0xa950x17,_0xa950x16,_0x1e08[47]);logger[_0x1e08[26]](_0x1e08[25],_0xa950x17,_0xa950x16,_0x1e08[47],JSON[_0x1e08[31]](_0xa950x18));_0xa950x15[_0x1e08[29]](204)[_0x1e08[28]]()})}}}function handleEntityNotFound(_0xa950x15,_0xa950x16,_0xa950x17){return function(_0xa950x18){if(!_0xa950x18){logger[_0x1e08[50]](_0x1e08[22],_0xa950x17,404,_0x1e08[49]);_0xa950x15[_0x1e08[29]](404)[_0x1e08[28]]();return null};return _0xa950x18}}function handleError(_0xa950x15,_0xa950x16,_0xa950x17){_0xa950x16= _0xa950x16|| 500;return function(_0xa950x27){logger[_0x1e08[50]](_0x1e08[22],_0xa950x17,_0xa950x16,JSON[_0x1e08[31]](_0xa950x27));delete _0xa950x27[_0x1e08[51]];_0xa950x15[_0x1e08[29]](_0xa950x16)[_0x1e08[52]](_0xa950x27)}}exports[_0x1e08[53]]= function(_0xa950x28,_0xa950x15){var _0xa950x1b={},_0xa950x29={};_0xa950x29[_0x1e08[54]]= _[_0x1e08[57]](db[_0x1e08[56]][_0x1e08[55]]);_0xa950x29[_0x1e08[58]]= _[_0x1e08[57]](_0xa950x28[_0x1e08[58]]);_0xa950x29[_0x1e08[59]]= _[_0x1e08[60]](_0xa950x29[_0x1e08[54]],_0xa950x29[_0x1e08[58]]);_0xa950x1b[_0x1e08[61]]= _[_0x1e08[60]](_0xa950x29[_0x1e08[54]],qs[_0x1e08[62]](_0xa950x28[_0x1e08[58]][_0x1e08[62]]));_0xa950x1b[_0x1e08[61]]= (_0xa950x1b[_0x1e08[61]][_0x1e08[63]])?_0xa950x1b[_0x1e08[61]]:_0xa950x29[_0x1e08[54]];if(!_0xa950x28[_0x1e08[58]][_0x1e08[65]](_0x1e08[64])){_0xa950x1b[_0x1e08[35]]= qs[_0x1e08[35]](_0xa950x28[_0x1e08[58]][_0x1e08[35]]);_0xa950x1b[_0x1e08[34]]= qs[_0x1e08[34]](_0xa950x28[_0x1e08[58]][_0x1e08[34]])};_0xa950x1b[_0x1e08[66]]= qs[_0x1e08[67]](_0xa950x28[_0x1e08[58]][_0x1e08[67]]);_0xa950x1b[_0x1e08[68]]= qs[_0x1e08[59]](_[_0x1e08[69]](_0xa950x28[_0x1e08[58]],_0xa950x29[_0x1e08[59]]));if(_0xa950x28[_0x1e08[58]][_0x1e08[70]]){_0xa950x1b[_0x1e08[68]]= _[_0x1e08[73]](_0xa950x1b[_0x1e08[68]],{$or:_[_0x1e08[72]](_0xa950x1b[_0x1e08[61]],function(_0xa950x2a){var _0xa950x2b={};_0xa950x2b[_0xa950x2a]= {$like:_0x1e08[71]+ _0xa950x28[_0x1e08[58]][_0x1e08[70]]+ _0x1e08[71]};return _0xa950x2b})})};_0xa950x1b= _[_0x1e08[73]]({},_0xa950x1b,_0xa950x28[_0x1e08[74]]);return db[_0x1e08[56]][_0x1e08[76]](_0xa950x1b)[_0x1e08[45]](respondWithFilteredResult(_0xa950x15,_0xa950x1b,_0x1e08[53]))[_0x1e08[75]](handleError(_0xa950x15,null,_0x1e08[53]))};exports[_0x1e08[77]]= function(_0xa950x28,_0xa950x15){var _0xa950x1b={raw:false,where:{id:_0xa950x28[_0x1e08[79]][_0x1e08[78]]}},_0xa950x29={};_0xa950x29[_0x1e08[54]]= _[_0x1e08[57]](db[_0x1e08[56]][_0x1e08[55]]);_0xa950x29[_0x1e08[58]]= _[_0x1e08[57]](_0xa950x28[_0x1e08[58]]);_0xa950x29[_0x1e08[59]]= _[_0x1e08[60]](_0xa950x29[_0x1e08[54]],_0xa950x29[_0x1e08[58]]);_0xa950x1b[_0x1e08[61]]= _[_0x1e08[60]](_0xa950x29[_0x1e08[54]],qs[_0x1e08[62]](_0xa950x28[_0x1e08[58]][_0x1e08[62]]));_0xa950x1b[_0x1e08[61]]= (_0xa950x1b[_0x1e08[61]][_0x1e08[63]])?_0xa950x1b[_0x1e08[61]]:_0xa950x29[_0x1e08[54]];_0xa950x1b= _[_0x1e08[73]]({},_0xa950x1b,_0xa950x28[_0x1e08[74]]);return db[_0x1e08[56]][_0x1e08[80]](_0xa950x1b)[_0x1e08[45]](handleEntityNotFound(_0xa950x15,null,_0x1e08[77]))[_0x1e08[45]](respondWithResult(_0xa950x15,null,_0x1e08[77]))[_0x1e08[75]](handleError(_0xa950x15,null,_0x1e08[77]))};exports[_0x1e08[81]]= function(_0xa950x28,_0xa950x15){return db[_0x1e08[56]][_0x1e08[81]](_0xa950x28[_0x1e08[82]],{})[_0x1e08[45]](respondWithResult(_0xa950x15,201,_0x1e08[81]))[_0x1e08[75]](handleError(_0xa950x15,null,_0x1e08[81]))};exports[_0x1e08[46]]= function(_0xa950x28,_0xa950x15){if(_0xa950x28[_0x1e08[82]][_0x1e08[78]]){delete _0xa950x28[_0x1e08[82]][_0x1e08[78]]};return db[_0x1e08[56]][_0x1e08[80]]({where:{id:_0xa950x28[_0x1e08[79]][_0x1e08[78]]}})[_0x1e08[45]](handleEntityNotFound(_0xa950x15,null,_0x1e08[46]))[_0x1e08[45]](saveUpdates(_0xa950x28[_0x1e08[82]],null,_0x1e08[46]))[_0x1e08[45]](respondWithResult(_0xa950x15,null,_0x1e08[46]))[_0x1e08[75]](handleError(_0xa950x15,null,_0x1e08[46]))};exports[_0x1e08[48]]= function(_0xa950x28,_0xa950x15){return db[_0x1e08[56]][_0x1e08[80]]({where:{id:_0xa950x28[_0x1e08[79]][_0x1e08[78]]}})[_0x1e08[45]](handleEntityNotFound(_0xa950x15,null,_0x1e08[48]))[_0x1e08[45]](removeEntity(_0xa950x15,null,_0x1e08[48]))[_0x1e08[75]](handleError(_0xa950x15,null,_0x1e08[48]))};exports[_0x1e08[83]]= function(_0xa950x28,_0xa950x15){return db[_0x1e08[56]][_0x1e08[83]]()[_0x1e08[45]](respondWithResult(_0xa950x15,null,_0x1e08[83]))[_0x1e08[75]](handleError(_0xa950x15,null,_0x1e08[83]))};exports[_0x1e08[84]]= function(_0xa950x28,_0xa950x15,_0xa950x2c){return db[_0x1e08[87]][_0x1e08[80]]({where:{id:_0xa950x28[_0x1e08[79]][_0x1e08[78]]}})[_0x1e08[45]](handleEntityNotFound(_0xa950x15,null,_0x1e08[84]))[_0x1e08[45]](function(_0xa950x18){if(_0xa950x18){return _0xa950x18[_0x1e08[84]](_0xa950x28[_0x1e08[82]][_0x1e08[85]],_[_0x1e08[86]](_0xa950x28[_0x1e08[82]],[_0x1e08[85],_0x1e08[78]])|| {})};return null})[_0x1e08[45]](respondWithResult(_0xa950x15,null,_0x1e08[84]))[_0x1e08[75]](handleError(_0xa950x15,null,_0x1e08[84]))};exports[_0x1e08[88]]= function(_0xa950x28,_0xa950x18,_0xa950x2c){var _0xa950x1b={};var _0xa950x29={};var _0xa950x2d;var _0xa950x1c;return db[_0x1e08[56]][_0x1e08[89]]({where:{id:_0xa950x28[_0x1e08[79]][_0x1e08[78]]}})[_0x1e08[45]](handleEntityNotFound(_0xa950x18,null,_0x1e08[88]))[_0x1e08[45]](function(_0xa950x18){if(_0xa950x18){_0xa950x2d= _0xa950x18;_0xa950x29[_0x1e08[54]]= _[_0x1e08[57]](db[_0x1e08[87]][_0x1e08[55]]);_0xa950x29[_0x1e08[58]]= _[_0x1e08[57]](_0xa950x28[_0x1e08[58]]);_0xa950x29[_0x1e08[59]]= _[_0x1e08[60]](_0xa950x29[_0x1e08[54]],_0xa950x29[_0x1e08[58]]);_0xa950x1b[_0x1e08[61]]= _[_0x1e08[60]](_0xa950x29[_0x1e08[54]],qs[_0x1e08[62]](_0xa950x28[_0x1e08[58]][_0x1e08[62]]));_0xa950x1b[_0x1e08[61]]= (_0xa950x1b[_0x1e08[61]][_0x1e08[63]])?_0xa950x1b[_0x1e08[61]]:_0xa950x29[_0x1e08[54]];_0xa950x1b[_0x1e08[66]]= qs[_0x1e08[67]](_0xa950x28[_0x1e08[58]][_0x1e08[67]]);_0xa950x1b[_0x1e08[68]]= qs[_0x1e08[59]](_[_0x1e08[69]](_0xa950x28[_0x1e08[58]],_0xa950x29[_0x1e08[59]]));if(_0xa950x28[_0x1e08[58]][_0x1e08[70]]){_0xa950x1b[_0x1e08[68]]= _[_0x1e08[73]](_0xa950x1b[_0x1e08[68]],{$or:_[_0x1e08[72]](_0xa950x1b[_0x1e08[61]],function(_0xa950x2a){var _0xa950x2b={};_0xa950x2b[_0xa950x2a]= {$like:_0x1e08[71]+ _0xa950x28[_0x1e08[58]][_0x1e08[70]]+ _0x1e08[71]};return _0xa950x2b})})};_0xa950x1b= _[_0x1e08[73]]({},_0xa950x1b,_0xa950x28[_0x1e08[74]]);return _0xa950x2d[_0x1e08[88]](_0xa950x1b)}})[_0x1e08[45]](function(_0xa950x2f){if(_0xa950x2f){_0xa950x1c= _0xa950x2f[_0x1e08[63]];if(!_0xa950x28[_0x1e08[58]][_0x1e08[65]](_0x1e08[64])){_0xa950x1b[_0x1e08[35]]= qs[_0x1e08[35]](_0xa950x28[_0x1e08[58]][_0x1e08[35]]);_0xa950x1b[_0x1e08[34]]= qs[_0x1e08[34]](_0xa950x28[_0x1e08[58]][_0x1e08[34]])};return _0xa950x2d[_0x1e08[88]](_0xa950x1b)}})[_0x1e08[45]](function(_0xa950x2e){return _0xa950x2e?{count:_0xa950x1c,rows:_0xa950x2e}:null})[_0x1e08[45]](respondWithResult(_0xa950x18,null,_0x1e08[88]))[_0x1e08[75]](handleError(_0xa950x18,null,_0x1e08[88]))}
\ No newline at end of file
+var _0x7dfe=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x61\x64\x64\x4D\x65\x73\x73\x61\x67\x65","\x69\x64\x73","\x6F\x6D\x69\x74","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65"];_0x7dfe[0];var jsonpatch=require(_0x7dfe[1]);var rp=require(_0x7dfe[2]);var moment=require(_0x7dfe[3]);var BPromise=require(_0x7dfe[4]);var util=require(_0x7dfe[5]);var path=require(_0x7dfe[6]);var sox=require(_0x7dfe[7]);var ejs=require(_0x7dfe[8]);var fs=require(_0x7dfe[9]);var _=require(_0x7dfe[10]);var squel=require(_0x7dfe[11]);var crypto=require(_0x7dfe[12]);var jsforce=require(_0x7dfe[13]);var toCsv=require(_0x7dfe[14]);var qs=require(_0x7dfe[15]);var logger=require(_0x7dfe[17])(_0x7dfe[16]);var utils=require(_0x7dfe[18]);var config=require(_0x7dfe[19]);var db=require(_0x7dfe[21])[_0x7dfe[20]];function respondWithStatusCode(_0x5825x15,_0x5825x16,_0x5825x17){_0x5825x16= _0x5825x16|| 204;return function(_0x5825x18){if(_0x5825x18){logger[_0x7dfe[24]](_0x7dfe[22],_0x5825x17,_0x5825x16,_0x7dfe[23]);logger[_0x7dfe[26]](_0x7dfe[25],_0x5825x17,_0x5825x16,_0x7dfe[23]);return _0x5825x15[_0x7dfe[27]](_0x5825x16)};return _0x5825x15[_0x7dfe[29]](304)[_0x7dfe[28]]()}}function respondWithResult(_0x5825x15,_0x5825x16,_0x5825x17){_0x5825x16= _0x5825x16|| 200;return function(_0x5825x18){if(_0x5825x18){logger[_0x7dfe[24]](_0x7dfe[22],_0x5825x17,_0x5825x16,_0x7dfe[30]);logger[_0x7dfe[26]](_0x7dfe[25],_0x5825x17,_0x5825x16,_0x7dfe[30],JSON[_0x7dfe[31]](_0x5825x18));return _0x5825x15[_0x7dfe[29]](_0x5825x16)[_0x7dfe[32]](_0x5825x18)};return _0x5825x15[_0x7dfe[29]](304)[_0x7dfe[28]]()}}function respondWithFilteredResult(_0x5825x15,_0x5825x1b,_0x5825x17){return function(_0x5825x18){if(_0x5825x18){var _0x5825x1c=_0x5825x18[_0x7dfe[33]],_0x5825x1d=_0x5825x1b[_0x7dfe[34]],_0x5825x1e=_0x5825x1b[_0x7dfe[34]]+ _0x5825x1b[_0x7dfe[35]],_0x5825x16;if(_0x5825x1e>= _0x5825x1c){_0x5825x1e= _0x5825x1c;_0x5825x16= 200}else {_0x5825x16= 206};_0x5825x15[_0x7dfe[29]](_0x5825x16);logger[_0x7dfe[24]](_0x7dfe[22],_0x5825x17,_0x5825x16,_0x7dfe[36]);logger[_0x7dfe[26]](_0x7dfe[25],_0x5825x17,_0x5825x16,_0x7dfe[30],JSON[_0x7dfe[31]](_0x5825x18));return _0x5825x15[_0x7dfe[40]](_0x7dfe[37],_0x5825x1d+ _0x7dfe[38]+ _0x5825x1e+ _0x7dfe[39]+ _0x5825x1c)[_0x7dfe[32]](_0x5825x18)};return null}}function patchUpdates(_0x5825x20){return function(_0x5825x18){try{jsonpatch[_0x7dfe[41]](_0x5825x18,_0x5825x20,true)}catch(err){return BPromise[_0x7dfe[42]](err)};return _0x5825x18[_0x7dfe[43]]()}}function saveUpdates(_0x5825x22,_0x5825x16,_0x5825x17){return function(_0x5825x18){if(_0x5825x18){return _0x5825x18[_0x7dfe[46]](_0x5825x22)[_0x7dfe[45]](function(_0x5825x23){logger[_0x7dfe[24]](_0x7dfe[22],_0x5825x17,_0x5825x16,_0x7dfe[44]);logger[_0x7dfe[26]](_0x7dfe[25],_0x5825x17,_0x5825x16,_0x7dfe[44],JSON[_0x7dfe[31]](_0x5825x18));return _0x5825x23})};return null}}function removeEntity(_0x5825x15,_0x5825x16,_0x5825x17){return function(_0x5825x18){if(_0x5825x18){return _0x5825x18[_0x7dfe[48]]()[_0x7dfe[45]](function(){logger[_0x7dfe[24]](_0x7dfe[22],_0x5825x17,_0x5825x16,_0x7dfe[47]);logger[_0x7dfe[26]](_0x7dfe[25],_0x5825x17,_0x5825x16,_0x7dfe[47],JSON[_0x7dfe[31]](_0x5825x18));_0x5825x15[_0x7dfe[29]](204)[_0x7dfe[28]]()})}}}function handleEntityNotFound(_0x5825x15,_0x5825x16,_0x5825x17){return function(_0x5825x18){if(!_0x5825x18){logger[_0x7dfe[50]](_0x7dfe[22],_0x5825x17,404,_0x7dfe[49]);_0x5825x15[_0x7dfe[29]](404)[_0x7dfe[28]]();return null};return _0x5825x18}}function handleError(_0x5825x15,_0x5825x16,_0x5825x17){_0x5825x16= _0x5825x16|| 500;return function(_0x5825x27){logger[_0x7dfe[50]](_0x7dfe[22],_0x5825x17,_0x5825x16,JSON[_0x7dfe[31]](_0x5825x27));delete _0x5825x27[_0x7dfe[51]];_0x5825x15[_0x7dfe[29]](_0x5825x16)[_0x7dfe[52]](_0x5825x27)}}exports[_0x7dfe[53]]= function(_0x5825x28,_0x5825x15){var _0x5825x1b={},_0x5825x29={};_0x5825x29[_0x7dfe[54]]= _[_0x7dfe[57]](db[_0x7dfe[56]][_0x7dfe[55]]);_0x5825x29[_0x7dfe[58]]= _[_0x7dfe[57]](_0x5825x28[_0x7dfe[58]]);_0x5825x29[_0x7dfe[59]]= _[_0x7dfe[60]](_0x5825x29[_0x7dfe[54]],_0x5825x29[_0x7dfe[58]]);_0x5825x1b[_0x7dfe[61]]= _[_0x7dfe[60]](_0x5825x29[_0x7dfe[54]],qs[_0x7dfe[62]](_0x5825x28[_0x7dfe[58]][_0x7dfe[62]]));_0x5825x1b[_0x7dfe[61]]= (_0x5825x1b[_0x7dfe[61]][_0x7dfe[63]])?_0x5825x1b[_0x7dfe[61]]:_0x5825x29[_0x7dfe[54]];if(!_0x5825x28[_0x7dfe[58]][_0x7dfe[65]](_0x7dfe[64])){_0x5825x1b[_0x7dfe[35]]= qs[_0x7dfe[35]](_0x5825x28[_0x7dfe[58]][_0x7dfe[35]]);_0x5825x1b[_0x7dfe[34]]= qs[_0x7dfe[34]](_0x5825x28[_0x7dfe[58]][_0x7dfe[34]])};_0x5825x1b[_0x7dfe[66]]= qs[_0x7dfe[67]](_0x5825x28[_0x7dfe[58]][_0x7dfe[67]]);_0x5825x1b[_0x7dfe[68]]= qs[_0x7dfe[59]](_[_0x7dfe[69]](_0x5825x28[_0x7dfe[58]],_0x5825x29[_0x7dfe[59]]));if(_0x5825x28[_0x7dfe[58]][_0x7dfe[70]]){_0x5825x1b[_0x7dfe[68]]= _[_0x7dfe[73]](_0x5825x1b[_0x7dfe[68]],{$or:_[_0x7dfe[72]](_0x5825x1b[_0x7dfe[61]],function(_0x5825x2a){var _0x5825x2b={};_0x5825x2b[_0x5825x2a]= {$like:_0x7dfe[71]+ _0x5825x28[_0x7dfe[58]][_0x7dfe[70]]+ _0x7dfe[71]};return _0x5825x2b})})};_0x5825x1b= _[_0x7dfe[73]]({},_0x5825x1b,_0x5825x28[_0x7dfe[74]]);return db[_0x7dfe[56]][_0x7dfe[76]](_0x5825x1b)[_0x7dfe[45]](respondWithFilteredResult(_0x5825x15,_0x5825x1b,_0x7dfe[53]))[_0x7dfe[75]](handleError(_0x5825x15,null,_0x7dfe[53]))};exports[_0x7dfe[77]]= function(_0x5825x28,_0x5825x15){var _0x5825x1b={raw:false,where:{id:_0x5825x28[_0x7dfe[79]][_0x7dfe[78]]}},_0x5825x29={};_0x5825x29[_0x7dfe[54]]= _[_0x7dfe[57]](db[_0x7dfe[56]][_0x7dfe[55]]);_0x5825x29[_0x7dfe[58]]= _[_0x7dfe[57]](_0x5825x28[_0x7dfe[58]]);_0x5825x29[_0x7dfe[59]]= _[_0x7dfe[60]](_0x5825x29[_0x7dfe[54]],_0x5825x29[_0x7dfe[58]]);_0x5825x1b[_0x7dfe[61]]= _[_0x7dfe[60]](_0x5825x29[_0x7dfe[54]],qs[_0x7dfe[62]](_0x5825x28[_0x7dfe[58]][_0x7dfe[62]]));_0x5825x1b[_0x7dfe[61]]= (_0x5825x1b[_0x7dfe[61]][_0x7dfe[63]])?_0x5825x1b[_0x7dfe[61]]:_0x5825x29[_0x7dfe[54]];_0x5825x1b= _[_0x7dfe[73]]({},_0x5825x1b,_0x5825x28[_0x7dfe[74]]);return db[_0x7dfe[56]][_0x7dfe[80]](_0x5825x1b)[_0x7dfe[45]](handleEntityNotFound(_0x5825x15,null,_0x7dfe[77]))[_0x7dfe[45]](respondWithResult(_0x5825x15,null,_0x7dfe[77]))[_0x7dfe[75]](handleError(_0x5825x15,null,_0x7dfe[77]))};exports[_0x7dfe[81]]= function(_0x5825x28,_0x5825x15){return db[_0x7dfe[56]][_0x7dfe[81]](_0x5825x28[_0x7dfe[82]],{})[_0x7dfe[45]](respondWithResult(_0x5825x15,201,_0x7dfe[81]))[_0x7dfe[75]](handleError(_0x5825x15,null,_0x7dfe[81]))};exports[_0x7dfe[46]]= function(_0x5825x28,_0x5825x15){if(_0x5825x28[_0x7dfe[82]][_0x7dfe[78]]){delete _0x5825x28[_0x7dfe[82]][_0x7dfe[78]]};return db[_0x7dfe[56]][_0x7dfe[80]]({where:{id:_0x5825x28[_0x7dfe[79]][_0x7dfe[78]]}})[_0x7dfe[45]](handleEntityNotFound(_0x5825x15,null,_0x7dfe[46]))[_0x7dfe[45]](saveUpdates(_0x5825x28[_0x7dfe[82]],null,_0x7dfe[46]))[_0x7dfe[45]](respondWithResult(_0x5825x15,null,_0x7dfe[46]))[_0x7dfe[75]](handleError(_0x5825x15,null,_0x7dfe[46]))};exports[_0x7dfe[48]]= function(_0x5825x28,_0x5825x15){return db[_0x7dfe[56]][_0x7dfe[80]]({where:{id:_0x5825x28[_0x7dfe[79]][_0x7dfe[78]]}})[_0x7dfe[45]](handleEntityNotFound(_0x5825x15,null,_0x7dfe[48]))[_0x7dfe[45]](removeEntity(_0x5825x15,null,_0x7dfe[48]))[_0x7dfe[75]](handleError(_0x5825x15,null,_0x7dfe[48]))};exports[_0x7dfe[83]]= function(_0x5825x28,_0x5825x15){return db[_0x7dfe[56]][_0x7dfe[83]]()[_0x7dfe[45]](respondWithResult(_0x5825x15,null,_0x7dfe[83]))[_0x7dfe[75]](handleError(_0x5825x15,null,_0x7dfe[83]))};exports[_0x7dfe[84]]= function(_0x5825x28,_0x5825x15,_0x5825x2c){return db[_0x7dfe[87]][_0x7dfe[80]]({where:{id:_0x5825x28[_0x7dfe[79]][_0x7dfe[78]]}})[_0x7dfe[45]](handleEntityNotFound(_0x5825x15,null,_0x7dfe[84]))[_0x7dfe[45]](function(_0x5825x18){if(_0x5825x18){return _0x5825x18[_0x7dfe[84]](_0x5825x28[_0x7dfe[82]][_0x7dfe[85]],_[_0x7dfe[86]](_0x5825x28[_0x7dfe[82]],[_0x7dfe[85],_0x7dfe[78]])|| {})};return null})[_0x7dfe[45]](respondWithResult(_0x5825x15,null,_0x7dfe[84]))[_0x7dfe[75]](handleError(_0x5825x15,null,_0x7dfe[84]))};exports[_0x7dfe[88]]= function(_0x5825x28,_0x5825x18,_0x5825x2c){var _0x5825x1b={};var _0x5825x29={};var _0x5825x2d;var _0x5825x1c;return db[_0x7dfe[56]][_0x7dfe[89]]({where:{id:_0x5825x28[_0x7dfe[79]][_0x7dfe[78]]}})[_0x7dfe[45]](handleEntityNotFound(_0x5825x18,null,_0x7dfe[88]))[_0x7dfe[45]](function(_0x5825x18){if(_0x5825x18){_0x5825x2d= _0x5825x18;_0x5825x29[_0x7dfe[54]]= _[_0x7dfe[57]](db[_0x7dfe[87]][_0x7dfe[55]]);_0x5825x29[_0x7dfe[58]]= _[_0x7dfe[57]](_0x5825x28[_0x7dfe[58]]);_0x5825x29[_0x7dfe[59]]= _[_0x7dfe[60]](_0x5825x29[_0x7dfe[54]],_0x5825x29[_0x7dfe[58]]);_0x5825x1b[_0x7dfe[61]]= _[_0x7dfe[60]](_0x5825x29[_0x7dfe[54]],qs[_0x7dfe[62]](_0x5825x28[_0x7dfe[58]][_0x7dfe[62]]));_0x5825x1b[_0x7dfe[61]]= (_0x5825x1b[_0x7dfe[61]][_0x7dfe[63]])?_0x5825x1b[_0x7dfe[61]]:_0x5825x29[_0x7dfe[54]];_0x5825x1b[_0x7dfe[66]]= qs[_0x7dfe[67]](_0x5825x28[_0x7dfe[58]][_0x7dfe[67]]);_0x5825x1b[_0x7dfe[68]]= qs[_0x7dfe[59]](_[_0x7dfe[69]](_0x5825x28[_0x7dfe[58]],_0x5825x29[_0x7dfe[59]]));if(_0x5825x28[_0x7dfe[58]][_0x7dfe[70]]){_0x5825x1b[_0x7dfe[68]]= _[_0x7dfe[73]](_0x5825x1b[_0x7dfe[68]],{$or:_[_0x7dfe[72]](_0x5825x1b[_0x7dfe[61]],function(_0x5825x2a){var _0x5825x2b={};_0x5825x2b[_0x5825x2a]= {$like:_0x7dfe[71]+ _0x5825x28[_0x7dfe[58]][_0x7dfe[70]]+ _0x7dfe[71]};return _0x5825x2b})})};_0x5825x1b= _[_0x7dfe[73]]({},_0x5825x1b,_0x5825x28[_0x7dfe[74]]);return _0x5825x2d[_0x7dfe[88]](_0x5825x1b)}})[_0x7dfe[45]](function(_0x5825x2f){if(_0x5825x2f){_0x5825x1c= _0x5825x2f[_0x7dfe[63]];if(!_0x5825x28[_0x7dfe[58]][_0x7dfe[65]](_0x7dfe[64])){_0x5825x1b[_0x7dfe[35]]= qs[_0x7dfe[35]](_0x5825x28[_0x7dfe[58]][_0x7dfe[35]]);_0x5825x1b[_0x7dfe[34]]= qs[_0x7dfe[34]](_0x5825x28[_0x7dfe[58]][_0x7dfe[34]])};return _0x5825x2d[_0x7dfe[88]](_0x5825x1b)}})[_0x7dfe[45]](function(_0x5825x2e){return _0x5825x2e?{count:_0x5825x1c,rows:_0x5825x2e}:null})[_0x7dfe[45]](respondWithResult(_0x5825x18,null,_0x7dfe[88]))[_0x7dfe[75]](handleError(_0x5825x18,null,_0x7dfe[88]))}
\ No newline at end of file
index b5b2cd5..eb8eaf2 100644 (file)
@@ -1 +1 @@
-var _0xc461=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x73\x6D\x73\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0xc461[0];var _=require(_0xc461[1]);var util=require(_0xc461[2]);var logger=require(_0xc461[4])(_0xc461[3]);var attributes=require(_0xc461[5]);module[_0xc461[6]]= function(_0xb997x5,_0xb997x6){return _0xb997x5[_0xc461[9]](_0xc461[7],attributes,{tableName:_0xc461[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xd46a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x73\x6D\x73\x5F\x72\x6F\x6F\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0xd46a[0];var _=require(_0xd46a[1]);var util=require(_0xd46a[2]);var logger=require(_0xd46a[4])(_0xd46a[3]);var attributes=require(_0xd46a[5]);module[_0xd46a[6]]= function(_0xfe19x5,_0xfe19x6){return _0xfe19x5[_0xd46a[9]](_0xd46a[7],attributes,{tableName:_0xd46a[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 1ee3d5b..3c3e277 100644 (file)
@@ -1 +1 @@
-var _0x993f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x993f[0];var _=require(_0x993f[1]);var util=require(_0x993f[2]);var moment=require(_0x993f[3]);var BPromise=require(_0x993f[4]);var db=require(_0x993f[6])[_0x993f[5]];var utils=require(_0x993f[7]);var logger=require(_0x993f[9])(_0x993f[8]);var jayson=require(_0x993f[10]);var client=jayson[_0x993f[12]][_0x993f[11]]({port:9002});function respondWithRpcPromise(_0xc884xb,_0xc884xc,_0xc884xd){return  new BPromise(function(_0xc884xe,_0xc884xf){return client[_0x993f[25]](_0xc884xb,_0xc884xd)[_0x993f[24]](function(_0xc884x11){logger[_0x993f[17]](_0x993f[13],_0xc884xc,_0x993f[16]);logger[_0x993f[20]](_0x993f[18],_0xc884xc,_0x993f[16],JSON[_0x993f[19]](_0xc884x11));if(_0xc884x11[_0x993f[14]]){if(_0xc884x11[_0x993f[14]][_0x993f[21]]=== 500){logger[_0x993f[14]](_0x993f[13],_0xc884xc,_0xc884x11[_0x993f[14]][_0x993f[22]]);return _0xc884xf(_0xc884x11[_0x993f[14]][_0x993f[22]])};logger[_0x993f[14]](_0x993f[13],_0xc884xc,_0xc884x11[_0x993f[14]][_0x993f[22]]);return _0xc884xe(_0xc884x11[_0x993f[14]][_0x993f[22]])}else {logger[_0x993f[17]](_0x993f[13],_0xc884xc,_0x993f[16]);_0xc884xe(_0xc884x11[_0x993f[23]][_0x993f[22]])}})[_0x993f[15]](function(_0xc884x10){logger[_0x993f[14]](_0x993f[13],_0xc884xc,_0xc884x10);_0xc884xf(_0xc884x10)})})}
\ No newline at end of file
+var _0xf683=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xf683[0];var _=require(_0xf683[1]);var util=require(_0xf683[2]);var moment=require(_0xf683[3]);var BPromise=require(_0xf683[4]);var db=require(_0xf683[6])[_0xf683[5]];var utils=require(_0xf683[7]);var logger=require(_0xf683[9])(_0xf683[8]);var jayson=require(_0xf683[10]);var client=jayson[_0xf683[12]][_0xf683[11]]({port:9002});function respondWithRpcPromise(_0x9e6bxb,_0x9e6bxc,_0x9e6bxd){return  new BPromise(function(_0x9e6bxe,_0x9e6bxf){return client[_0xf683[25]](_0x9e6bxb,_0x9e6bxd)[_0xf683[24]](function(_0x9e6bx11){logger[_0xf683[17]](_0xf683[13],_0x9e6bxc,_0xf683[16]);logger[_0xf683[20]](_0xf683[18],_0x9e6bxc,_0xf683[16],JSON[_0xf683[19]](_0x9e6bx11));if(_0x9e6bx11[_0xf683[14]]){if(_0x9e6bx11[_0xf683[14]][_0xf683[21]]=== 500){logger[_0xf683[14]](_0xf683[13],_0x9e6bxc,_0x9e6bx11[_0xf683[14]][_0xf683[22]]);return _0x9e6bxf(_0x9e6bx11[_0xf683[14]][_0xf683[22]])};logger[_0xf683[14]](_0xf683[13],_0x9e6bxc,_0x9e6bx11[_0xf683[14]][_0xf683[22]]);return _0x9e6bxe(_0x9e6bx11[_0xf683[14]][_0xf683[22]])}else {logger[_0xf683[17]](_0xf683[13],_0x9e6bxc,_0xf683[16]);_0x9e6bxe(_0x9e6bx11[_0xf683[23]][_0xf683[22]])}})[_0xf683[15]](function(_0x9e6bx10){logger[_0xf683[14]](_0xf683[13],_0x9e6bxc,_0x9e6bx10);_0x9e6bxf(_0x9e6bx10)})})}
\ No newline at end of file
index f81d990..b967f8b 100644 (file)
@@ -1 +1 @@
-var _0x86cf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x86cf[0];var multer=require(_0x86cf[1]);var util=require(_0x86cf[2]);var path=require(_0x86cf[3]);var express=require(_0x86cf[4]);var router=express.Router();var auth=require(_0x86cf[5]);var config=require(_0x86cf[6]);var controller=require(_0x86cf[7]);router[_0x86cf[11]](_0x86cf[8],auth[_0x86cf[9]](),controller[_0x86cf[10]]);router[_0x86cf[11]](_0x86cf[12],auth[_0x86cf[9]](),controller[_0x86cf[13]]);router[_0x86cf[11]](_0x86cf[14],auth[_0x86cf[9]](),controller[_0x86cf[15]]);router[_0x86cf[17]](_0x86cf[8],auth[_0x86cf[9]](),controller[_0x86cf[16]]);router[_0x86cf[19]](_0x86cf[14],auth[_0x86cf[9]](),controller[_0x86cf[18]]);router[_0x86cf[21]](_0x86cf[14],auth[_0x86cf[9]](),controller[_0x86cf[20]]);module[_0x86cf[22]]= router
\ No newline at end of file
+var _0x1cde=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1cde[0];var multer=require(_0x1cde[1]);var util=require(_0x1cde[2]);var path=require(_0x1cde[3]);var express=require(_0x1cde[4]);var router=express.Router();var auth=require(_0x1cde[5]);var config=require(_0x1cde[6]);var controller=require(_0x1cde[7]);router[_0x1cde[11]](_0x1cde[8],auth[_0x1cde[9]](),controller[_0x1cde[10]]);router[_0x1cde[11]](_0x1cde[12],auth[_0x1cde[9]](),controller[_0x1cde[13]]);router[_0x1cde[11]](_0x1cde[14],auth[_0x1cde[9]](),controller[_0x1cde[15]]);router[_0x1cde[17]](_0x1cde[8],auth[_0x1cde[9]](),controller[_0x1cde[16]]);router[_0x1cde[19]](_0x1cde[14],auth[_0x1cde[9]](),controller[_0x1cde[18]]);router[_0x1cde[21]](_0x1cde[14],auth[_0x1cde[9]](),controller[_0x1cde[20]]);module[_0x1cde[22]]= router
\ No newline at end of file
index 23befcd..a260938 100644 (file)
@@ -1 +1 @@
-var _0x6d1b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x53\x45\x4E\x44\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x6d1b[0];var Sequelize=require(_0x6d1b[1]);module[_0x6d1b[2]]= {from:{type:Sequelize[_0x6d1b[3]],allowNull:false,validate:{notEmpty:true,is:/^[\+]?[0-9]+$/}},to:{type:Sequelize[_0x6d1b[3]],allowNull:false,validate:{notEmpty:true,is:/^[\+]?[0-9]+$/}},body:{type:Sequelize[_0x6d1b[3]]},status:{type:Sequelize[_0x6d1b[3]],defaultValue:_0x6d1b[4]},errorcode:{type:Sequelize[_0x6d1b[3]]},skebby_message_id:{type:Sequelize[_0x6d1b[5]]},res_data:{type:Sequelize[_0x6d1b[3]]},source:{type:Sequelize[_0x6d1b[3]]},auto:{type:Sequelize[_0x6d1b[6]],defaultValue:false}}
\ No newline at end of file
+var _0x16bc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x53\x45\x4E\x44\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x16bc[0];var Sequelize=require(_0x16bc[1]);module[_0x16bc[2]]= {from:{type:Sequelize[_0x16bc[3]],allowNull:false,validate:{notEmpty:true,is:/^[\+]?[0-9]+$/}},to:{type:Sequelize[_0x16bc[3]],allowNull:false,validate:{notEmpty:true,is:/^[\+]?[0-9]+$/}},body:{type:Sequelize[_0x16bc[3]]},status:{type:Sequelize[_0x16bc[3]],defaultValue:_0x16bc[4]},errorcode:{type:Sequelize[_0x16bc[3]]},skebby_message_id:{type:Sequelize[_0x16bc[5]]},res_data:{type:Sequelize[_0x16bc[3]]},source:{type:Sequelize[_0x16bc[3]]},auto:{type:Sequelize[_0x16bc[6]],defaultValue:false}}
\ No newline at end of file
index c306169..c2c24ee 100644 (file)
@@ -1 +1 @@
-var _0x6503=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x6503[0];var jsonpatch=require(_0x6503[1]);var rp=require(_0x6503[2]);var moment=require(_0x6503[3]);var BPromise=require(_0x6503[4]);var util=require(_0x6503[5]);var path=require(_0x6503[6]);var sox=require(_0x6503[7]);var ejs=require(_0x6503[8]);var fs=require(_0x6503[9]);var _=require(_0x6503[10]);var squel=require(_0x6503[11]);var crypto=require(_0x6503[12]);var jsforce=require(_0x6503[13]);var toCsv=require(_0x6503[14]);var qs=require(_0x6503[15]);var logger=require(_0x6503[17])(_0x6503[16]);var utils=require(_0x6503[18]);var config=require(_0x6503[19]);var db=require(_0x6503[21])[_0x6503[20]];function respondWithStatusCode(_0x1105x15,_0x1105x16,_0x1105x17){_0x1105x16= _0x1105x16|| 204;return function(_0x1105x18){if(_0x1105x18){logger[_0x6503[24]](_0x6503[22],_0x1105x17,_0x1105x16,_0x6503[23]);logger[_0x6503[26]](_0x6503[25],_0x1105x17,_0x1105x16,_0x6503[23]);return _0x1105x15[_0x6503[27]](_0x1105x16)};return _0x1105x15[_0x6503[29]](304)[_0x6503[28]]()}}function respondWithResult(_0x1105x15,_0x1105x16,_0x1105x17){_0x1105x16= _0x1105x16|| 200;return function(_0x1105x18){if(_0x1105x18){logger[_0x6503[24]](_0x6503[22],_0x1105x17,_0x1105x16,_0x6503[30]);logger[_0x6503[26]](_0x6503[25],_0x1105x17,_0x1105x16,_0x6503[30],JSON[_0x6503[31]](_0x1105x18));return _0x1105x15[_0x6503[29]](_0x1105x16)[_0x6503[32]](_0x1105x18)};return _0x1105x15[_0x6503[29]](304)[_0x6503[28]]()}}function respondWithFilteredResult(_0x1105x15,_0x1105x1b,_0x1105x17){return function(_0x1105x18){if(_0x1105x18){var _0x1105x1c=_0x1105x18[_0x6503[33]],_0x1105x1d=_0x1105x1b[_0x6503[34]],_0x1105x1e=_0x1105x1b[_0x6503[34]]+ _0x1105x1b[_0x6503[35]],_0x1105x16;if(_0x1105x1e>= _0x1105x1c){_0x1105x1e= _0x1105x1c;_0x1105x16= 200}else {_0x1105x16= 206};_0x1105x15[_0x6503[29]](_0x1105x16);logger[_0x6503[24]](_0x6503[22],_0x1105x17,_0x1105x16,_0x6503[36]);logger[_0x6503[26]](_0x6503[25],_0x1105x17,_0x1105x16,_0x6503[30],JSON[_0x6503[31]](_0x1105x18));return _0x1105x15[_0x6503[40]](_0x6503[37],_0x1105x1d+ _0x6503[38]+ _0x1105x1e+ _0x6503[39]+ _0x1105x1c)[_0x6503[32]](_0x1105x18)};return null}}function patchUpdates(_0x1105x20){return function(_0x1105x18){try{jsonpatch[_0x6503[41]](_0x1105x18,_0x1105x20,true)}catch(err){return BPromise[_0x6503[42]](err)};return _0x1105x18[_0x6503[43]]()}}function saveUpdates(_0x1105x22,_0x1105x16,_0x1105x17){return function(_0x1105x18){if(_0x1105x18){return _0x1105x18[_0x6503[46]](_0x1105x22)[_0x6503[45]](function(_0x1105x23){logger[_0x6503[24]](_0x6503[22],_0x1105x17,_0x1105x16,_0x6503[44]);logger[_0x6503[26]](_0x6503[25],_0x1105x17,_0x1105x16,_0x6503[44],JSON[_0x6503[31]](_0x1105x18));return _0x1105x23})};return null}}function removeEntity(_0x1105x15,_0x1105x16,_0x1105x17){return function(_0x1105x18){if(_0x1105x18){return _0x1105x18[_0x6503[48]]()[_0x6503[45]](function(){logger[_0x6503[24]](_0x6503[22],_0x1105x17,_0x1105x16,_0x6503[47]);logger[_0x6503[26]](_0x6503[25],_0x1105x17,_0x1105x16,_0x6503[47],JSON[_0x6503[31]](_0x1105x18));_0x1105x15[_0x6503[29]](204)[_0x6503[28]]()})}}}function handleEntityNotFound(_0x1105x15,_0x1105x16,_0x1105x17){return function(_0x1105x18){if(!_0x1105x18){logger[_0x6503[50]](_0x6503[22],_0x1105x17,404,_0x6503[49]);_0x1105x15[_0x6503[29]](404)[_0x6503[28]]();return null};return _0x1105x18}}function handleError(_0x1105x15,_0x1105x16,_0x1105x17){_0x1105x16= _0x1105x16|| 500;return function(_0x1105x27){logger[_0x6503[50]](_0x6503[22],_0x1105x17,_0x1105x16,JSON[_0x6503[31]](_0x1105x27));delete _0x1105x27[_0x6503[51]];_0x1105x15[_0x6503[29]](_0x1105x16)[_0x6503[52]](_0x1105x27)}}exports[_0x6503[53]]= function(_0x1105x28,_0x1105x15){var _0x1105x1b={},_0x1105x29={};_0x1105x29[_0x6503[54]]= _[_0x6503[57]](db[_0x6503[56]][_0x6503[55]]);_0x1105x29[_0x6503[58]]= _[_0x6503[57]](_0x1105x28[_0x6503[58]]);_0x1105x29[_0x6503[59]]= _[_0x6503[60]](_0x1105x29[_0x6503[54]],_0x1105x29[_0x6503[58]]);_0x1105x1b[_0x6503[61]]= _[_0x6503[60]](_0x1105x29[_0x6503[54]],qs[_0x6503[62]](_0x1105x28[_0x6503[58]][_0x6503[62]]));_0x1105x1b[_0x6503[61]]= (_0x1105x1b[_0x6503[61]][_0x6503[63]])?_0x1105x1b[_0x6503[61]]:_0x1105x29[_0x6503[54]];if(!_0x1105x28[_0x6503[58]][_0x6503[65]](_0x6503[64])){_0x1105x1b[_0x6503[35]]= qs[_0x6503[35]](_0x1105x28[_0x6503[58]][_0x6503[35]]);_0x1105x1b[_0x6503[34]]= qs[_0x6503[34]](_0x1105x28[_0x6503[58]][_0x6503[34]])};_0x1105x1b[_0x6503[66]]= qs[_0x6503[67]](_0x1105x28[_0x6503[58]][_0x6503[67]]);_0x1105x1b[_0x6503[68]]= qs[_0x6503[59]](_[_0x6503[69]](_0x1105x28[_0x6503[58]],_0x1105x29[_0x6503[59]]));if(_0x1105x28[_0x6503[58]][_0x6503[70]]){_0x1105x1b[_0x6503[68]]= _[_0x6503[73]](_0x1105x1b[_0x6503[68]],{$or:_[_0x6503[72]](_0x1105x1b[_0x6503[61]],function(_0x1105x2a){var _0x1105x2b={};_0x1105x2b[_0x1105x2a]= {$like:_0x6503[71]+ _0x1105x28[_0x6503[58]][_0x6503[70]]+ _0x6503[71]};return _0x1105x2b})})};_0x1105x1b= _[_0x6503[73]]({},_0x1105x1b,_0x1105x28[_0x6503[74]]);return db[_0x6503[56]][_0x6503[76]](_0x1105x1b)[_0x6503[45]](respondWithFilteredResult(_0x1105x15,_0x1105x1b,_0x6503[53]))[_0x6503[75]](handleError(_0x1105x15,null,_0x6503[53]))};exports[_0x6503[77]]= function(_0x1105x28,_0x1105x15){var _0x1105x1b={raw:false,where:{id:_0x1105x28[_0x6503[79]][_0x6503[78]]}},_0x1105x29={};_0x1105x29[_0x6503[54]]= _[_0x6503[57]](db[_0x6503[56]][_0x6503[55]]);_0x1105x29[_0x6503[58]]= _[_0x6503[57]](_0x1105x28[_0x6503[58]]);_0x1105x29[_0x6503[59]]= _[_0x6503[60]](_0x1105x29[_0x6503[54]],_0x1105x29[_0x6503[58]]);_0x1105x1b[_0x6503[61]]= _[_0x6503[60]](_0x1105x29[_0x6503[54]],qs[_0x6503[62]](_0x1105x28[_0x6503[58]][_0x6503[62]]));_0x1105x1b[_0x6503[61]]= (_0x1105x1b[_0x6503[61]][_0x6503[63]])?_0x1105x1b[_0x6503[61]]:_0x1105x29[_0x6503[54]];_0x1105x1b= _[_0x6503[73]]({},_0x1105x1b,_0x1105x28[_0x6503[74]]);return db[_0x6503[56]][_0x6503[80]](_0x1105x1b)[_0x6503[45]](handleEntityNotFound(_0x1105x15,null,_0x6503[77]))[_0x6503[45]](respondWithResult(_0x1105x15,null,_0x6503[77]))[_0x6503[75]](handleError(_0x1105x15,null,_0x6503[77]))};exports[_0x6503[81]]= function(_0x1105x28,_0x1105x15){return db[_0x6503[56]][_0x6503[81]](_0x1105x28[_0x6503[82]],{})[_0x6503[45]](respondWithResult(_0x1105x15,201,_0x6503[81]))[_0x6503[75]](handleError(_0x1105x15,null,_0x6503[81]))};exports[_0x6503[46]]= function(_0x1105x28,_0x1105x15){if(_0x1105x28[_0x6503[82]][_0x6503[78]]){delete _0x1105x28[_0x6503[82]][_0x6503[78]]};return db[_0x6503[56]][_0x6503[80]]({where:{id:_0x1105x28[_0x6503[79]][_0x6503[78]]}})[_0x6503[45]](handleEntityNotFound(_0x1105x15,null,_0x6503[46]))[_0x6503[45]](saveUpdates(_0x1105x28[_0x6503[82]],null,_0x6503[46]))[_0x6503[45]](respondWithResult(_0x1105x15,null,_0x6503[46]))[_0x6503[75]](handleError(_0x1105x15,null,_0x6503[46]))};exports[_0x6503[48]]= function(_0x1105x28,_0x1105x15){return db[_0x6503[56]][_0x6503[80]]({where:{id:_0x1105x28[_0x6503[79]][_0x6503[78]]}})[_0x6503[45]](handleEntityNotFound(_0x1105x15,null,_0x6503[48]))[_0x6503[45]](removeEntity(_0x1105x15,null,_0x6503[48]))[_0x6503[75]](handleError(_0x1105x15,null,_0x6503[48]))};exports[_0x6503[83]]= function(_0x1105x28,_0x1105x15){return db[_0x6503[56]][_0x6503[83]]()[_0x6503[45]](respondWithResult(_0x1105x15,null,_0x6503[83]))[_0x6503[75]](handleError(_0x1105x15,null,_0x6503[83]))}
\ No newline at end of file
+var _0x1ab1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x1ab1[0];var jsonpatch=require(_0x1ab1[1]);var rp=require(_0x1ab1[2]);var moment=require(_0x1ab1[3]);var BPromise=require(_0x1ab1[4]);var util=require(_0x1ab1[5]);var path=require(_0x1ab1[6]);var sox=require(_0x1ab1[7]);var ejs=require(_0x1ab1[8]);var fs=require(_0x1ab1[9]);var _=require(_0x1ab1[10]);var squel=require(_0x1ab1[11]);var crypto=require(_0x1ab1[12]);var jsforce=require(_0x1ab1[13]);var toCsv=require(_0x1ab1[14]);var qs=require(_0x1ab1[15]);var logger=require(_0x1ab1[17])(_0x1ab1[16]);var utils=require(_0x1ab1[18]);var config=require(_0x1ab1[19]);var db=require(_0x1ab1[21])[_0x1ab1[20]];function respondWithStatusCode(_0xe4a3x15,_0xe4a3x16,_0xe4a3x17){_0xe4a3x16= _0xe4a3x16|| 204;return function(_0xe4a3x18){if(_0xe4a3x18){logger[_0x1ab1[24]](_0x1ab1[22],_0xe4a3x17,_0xe4a3x16,_0x1ab1[23]);logger[_0x1ab1[26]](_0x1ab1[25],_0xe4a3x17,_0xe4a3x16,_0x1ab1[23]);return _0xe4a3x15[_0x1ab1[27]](_0xe4a3x16)};return _0xe4a3x15[_0x1ab1[29]](304)[_0x1ab1[28]]()}}function respondWithResult(_0xe4a3x15,_0xe4a3x16,_0xe4a3x17){_0xe4a3x16= _0xe4a3x16|| 200;return function(_0xe4a3x18){if(_0xe4a3x18){logger[_0x1ab1[24]](_0x1ab1[22],_0xe4a3x17,_0xe4a3x16,_0x1ab1[30]);logger[_0x1ab1[26]](_0x1ab1[25],_0xe4a3x17,_0xe4a3x16,_0x1ab1[30],JSON[_0x1ab1[31]](_0xe4a3x18));return _0xe4a3x15[_0x1ab1[29]](_0xe4a3x16)[_0x1ab1[32]](_0xe4a3x18)};return _0xe4a3x15[_0x1ab1[29]](304)[_0x1ab1[28]]()}}function respondWithFilteredResult(_0xe4a3x15,_0xe4a3x1b,_0xe4a3x17){return function(_0xe4a3x18){if(_0xe4a3x18){var _0xe4a3x1c=_0xe4a3x18[_0x1ab1[33]],_0xe4a3x1d=_0xe4a3x1b[_0x1ab1[34]],_0xe4a3x1e=_0xe4a3x1b[_0x1ab1[34]]+ _0xe4a3x1b[_0x1ab1[35]],_0xe4a3x16;if(_0xe4a3x1e>= _0xe4a3x1c){_0xe4a3x1e= _0xe4a3x1c;_0xe4a3x16= 200}else {_0xe4a3x16= 206};_0xe4a3x15[_0x1ab1[29]](_0xe4a3x16);logger[_0x1ab1[24]](_0x1ab1[22],_0xe4a3x17,_0xe4a3x16,_0x1ab1[36]);logger[_0x1ab1[26]](_0x1ab1[25],_0xe4a3x17,_0xe4a3x16,_0x1ab1[30],JSON[_0x1ab1[31]](_0xe4a3x18));return _0xe4a3x15[_0x1ab1[40]](_0x1ab1[37],_0xe4a3x1d+ _0x1ab1[38]+ _0xe4a3x1e+ _0x1ab1[39]+ _0xe4a3x1c)[_0x1ab1[32]](_0xe4a3x18)};return null}}function patchUpdates(_0xe4a3x20){return function(_0xe4a3x18){try{jsonpatch[_0x1ab1[41]](_0xe4a3x18,_0xe4a3x20,true)}catch(err){return BPromise[_0x1ab1[42]](err)};return _0xe4a3x18[_0x1ab1[43]]()}}function saveUpdates(_0xe4a3x22,_0xe4a3x16,_0xe4a3x17){return function(_0xe4a3x18){if(_0xe4a3x18){return _0xe4a3x18[_0x1ab1[46]](_0xe4a3x22)[_0x1ab1[45]](function(_0xe4a3x23){logger[_0x1ab1[24]](_0x1ab1[22],_0xe4a3x17,_0xe4a3x16,_0x1ab1[44]);logger[_0x1ab1[26]](_0x1ab1[25],_0xe4a3x17,_0xe4a3x16,_0x1ab1[44],JSON[_0x1ab1[31]](_0xe4a3x18));return _0xe4a3x23})};return null}}function removeEntity(_0xe4a3x15,_0xe4a3x16,_0xe4a3x17){return function(_0xe4a3x18){if(_0xe4a3x18){return _0xe4a3x18[_0x1ab1[48]]()[_0x1ab1[45]](function(){logger[_0x1ab1[24]](_0x1ab1[22],_0xe4a3x17,_0xe4a3x16,_0x1ab1[47]);logger[_0x1ab1[26]](_0x1ab1[25],_0xe4a3x17,_0xe4a3x16,_0x1ab1[47],JSON[_0x1ab1[31]](_0xe4a3x18));_0xe4a3x15[_0x1ab1[29]](204)[_0x1ab1[28]]()})}}}function handleEntityNotFound(_0xe4a3x15,_0xe4a3x16,_0xe4a3x17){return function(_0xe4a3x18){if(!_0xe4a3x18){logger[_0x1ab1[50]](_0x1ab1[22],_0xe4a3x17,404,_0x1ab1[49]);_0xe4a3x15[_0x1ab1[29]](404)[_0x1ab1[28]]();return null};return _0xe4a3x18}}function handleError(_0xe4a3x15,_0xe4a3x16,_0xe4a3x17){_0xe4a3x16= _0xe4a3x16|| 500;return function(_0xe4a3x27){logger[_0x1ab1[50]](_0x1ab1[22],_0xe4a3x17,_0xe4a3x16,JSON[_0x1ab1[31]](_0xe4a3x27));delete _0xe4a3x27[_0x1ab1[51]];_0xe4a3x15[_0x1ab1[29]](_0xe4a3x16)[_0x1ab1[52]](_0xe4a3x27)}}exports[_0x1ab1[53]]= function(_0xe4a3x28,_0xe4a3x15){var _0xe4a3x1b={},_0xe4a3x29={};_0xe4a3x29[_0x1ab1[54]]= _[_0x1ab1[57]](db[_0x1ab1[56]][_0x1ab1[55]]);_0xe4a3x29[_0x1ab1[58]]= _[_0x1ab1[57]](_0xe4a3x28[_0x1ab1[58]]);_0xe4a3x29[_0x1ab1[59]]= _[_0x1ab1[60]](_0xe4a3x29[_0x1ab1[54]],_0xe4a3x29[_0x1ab1[58]]);_0xe4a3x1b[_0x1ab1[61]]= _[_0x1ab1[60]](_0xe4a3x29[_0x1ab1[54]],qs[_0x1ab1[62]](_0xe4a3x28[_0x1ab1[58]][_0x1ab1[62]]));_0xe4a3x1b[_0x1ab1[61]]= (_0xe4a3x1b[_0x1ab1[61]][_0x1ab1[63]])?_0xe4a3x1b[_0x1ab1[61]]:_0xe4a3x29[_0x1ab1[54]];if(!_0xe4a3x28[_0x1ab1[58]][_0x1ab1[65]](_0x1ab1[64])){_0xe4a3x1b[_0x1ab1[35]]= qs[_0x1ab1[35]](_0xe4a3x28[_0x1ab1[58]][_0x1ab1[35]]);_0xe4a3x1b[_0x1ab1[34]]= qs[_0x1ab1[34]](_0xe4a3x28[_0x1ab1[58]][_0x1ab1[34]])};_0xe4a3x1b[_0x1ab1[66]]= qs[_0x1ab1[67]](_0xe4a3x28[_0x1ab1[58]][_0x1ab1[67]]);_0xe4a3x1b[_0x1ab1[68]]= qs[_0x1ab1[59]](_[_0x1ab1[69]](_0xe4a3x28[_0x1ab1[58]],_0xe4a3x29[_0x1ab1[59]]));if(_0xe4a3x28[_0x1ab1[58]][_0x1ab1[70]]){_0xe4a3x1b[_0x1ab1[68]]= _[_0x1ab1[73]](_0xe4a3x1b[_0x1ab1[68]],{$or:_[_0x1ab1[72]](_0xe4a3x1b[_0x1ab1[61]],function(_0xe4a3x2a){var _0xe4a3x2b={};_0xe4a3x2b[_0xe4a3x2a]= {$like:_0x1ab1[71]+ _0xe4a3x28[_0x1ab1[58]][_0x1ab1[70]]+ _0x1ab1[71]};return _0xe4a3x2b})})};_0xe4a3x1b= _[_0x1ab1[73]]({},_0xe4a3x1b,_0xe4a3x28[_0x1ab1[74]]);return db[_0x1ab1[56]][_0x1ab1[76]](_0xe4a3x1b)[_0x1ab1[45]](respondWithFilteredResult(_0xe4a3x15,_0xe4a3x1b,_0x1ab1[53]))[_0x1ab1[75]](handleError(_0xe4a3x15,null,_0x1ab1[53]))};exports[_0x1ab1[77]]= function(_0xe4a3x28,_0xe4a3x15){var _0xe4a3x1b={raw:false,where:{id:_0xe4a3x28[_0x1ab1[79]][_0x1ab1[78]]}},_0xe4a3x29={};_0xe4a3x29[_0x1ab1[54]]= _[_0x1ab1[57]](db[_0x1ab1[56]][_0x1ab1[55]]);_0xe4a3x29[_0x1ab1[58]]= _[_0x1ab1[57]](_0xe4a3x28[_0x1ab1[58]]);_0xe4a3x29[_0x1ab1[59]]= _[_0x1ab1[60]](_0xe4a3x29[_0x1ab1[54]],_0xe4a3x29[_0x1ab1[58]]);_0xe4a3x1b[_0x1ab1[61]]= _[_0x1ab1[60]](_0xe4a3x29[_0x1ab1[54]],qs[_0x1ab1[62]](_0xe4a3x28[_0x1ab1[58]][_0x1ab1[62]]));_0xe4a3x1b[_0x1ab1[61]]= (_0xe4a3x1b[_0x1ab1[61]][_0x1ab1[63]])?_0xe4a3x1b[_0x1ab1[61]]:_0xe4a3x29[_0x1ab1[54]];_0xe4a3x1b= _[_0x1ab1[73]]({},_0xe4a3x1b,_0xe4a3x28[_0x1ab1[74]]);return db[_0x1ab1[56]][_0x1ab1[80]](_0xe4a3x1b)[_0x1ab1[45]](handleEntityNotFound(_0xe4a3x15,null,_0x1ab1[77]))[_0x1ab1[45]](respondWithResult(_0xe4a3x15,null,_0x1ab1[77]))[_0x1ab1[75]](handleError(_0xe4a3x15,null,_0x1ab1[77]))};exports[_0x1ab1[81]]= function(_0xe4a3x28,_0xe4a3x15){return db[_0x1ab1[56]][_0x1ab1[81]](_0xe4a3x28[_0x1ab1[82]],{})[_0x1ab1[45]](respondWithResult(_0xe4a3x15,201,_0x1ab1[81]))[_0x1ab1[75]](handleError(_0xe4a3x15,null,_0x1ab1[81]))};exports[_0x1ab1[46]]= function(_0xe4a3x28,_0xe4a3x15){if(_0xe4a3x28[_0x1ab1[82]][_0x1ab1[78]]){delete _0xe4a3x28[_0x1ab1[82]][_0x1ab1[78]]};return db[_0x1ab1[56]][_0x1ab1[80]]({where:{id:_0xe4a3x28[_0x1ab1[79]][_0x1ab1[78]]}})[_0x1ab1[45]](handleEntityNotFound(_0xe4a3x15,null,_0x1ab1[46]))[_0x1ab1[45]](saveUpdates(_0xe4a3x28[_0x1ab1[82]],null,_0x1ab1[46]))[_0x1ab1[45]](respondWithResult(_0xe4a3x15,null,_0x1ab1[46]))[_0x1ab1[75]](handleError(_0xe4a3x15,null,_0x1ab1[46]))};exports[_0x1ab1[48]]= function(_0xe4a3x28,_0xe4a3x15){return db[_0x1ab1[56]][_0x1ab1[80]]({where:{id:_0xe4a3x28[_0x1ab1[79]][_0x1ab1[78]]}})[_0x1ab1[45]](handleEntityNotFound(_0xe4a3x15,null,_0x1ab1[48]))[_0x1ab1[45]](removeEntity(_0xe4a3x15,null,_0x1ab1[48]))[_0x1ab1[75]](handleError(_0xe4a3x15,null,_0x1ab1[48]))};exports[_0x1ab1[83]]= function(_0xe4a3x28,_0xe4a3x15){return db[_0x1ab1[56]][_0x1ab1[83]]()[_0x1ab1[45]](respondWithResult(_0xe4a3x15,null,_0x1ab1[83]))[_0x1ab1[75]](handleError(_0xe4a3x15,null,_0x1ab1[83]))}
\ No newline at end of file
index 31e4dd0..6222550 100644 (file)
@@ -1 +1 @@
-var _0xac98=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x73\x6D\x73\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xac98[0];var _=require(_0xac98[1]);var util=require(_0xac98[2]);var logger=require(_0xac98[4])(_0xac98[3]);var attributes=require(_0xac98[5]);module[_0xac98[6]]= function(_0xa564x5,_0xa564x6){return _0xa564x5[_0xac98[9]](_0xac98[7],attributes,{tableName:_0xac98[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x680c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x73\x6D\x73\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x680c[0];var _=require(_0x680c[1]);var util=require(_0x680c[2]);var logger=require(_0x680c[4])(_0x680c[3]);var attributes=require(_0x680c[5]);module[_0x680c[6]]= function(_0xe53bx5,_0xe53bx6){return _0xe53bx5[_0x680c[9]](_0x680c[7],attributes,{tableName:_0x680c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 75324e4..30c4fcb 100644 (file)
@@ -1 +1 @@
-var _0xaf80=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xaf80[0];var _=require(_0xaf80[1]);var util=require(_0xaf80[2]);var moment=require(_0xaf80[3]);var BPromise=require(_0xaf80[4]);var db=require(_0xaf80[6])[_0xaf80[5]];var utils=require(_0xaf80[7]);var logger=require(_0xaf80[9])(_0xaf80[8]);var jayson=require(_0xaf80[10]);var client=jayson[_0xaf80[12]][_0xaf80[11]]({port:9002});function respondWithRpcPromise(_0xce48xb,_0xce48xc,_0xce48xd){return  new BPromise(function(_0xce48xe,_0xce48xf){return client[_0xaf80[25]](_0xce48xb,_0xce48xd)[_0xaf80[24]](function(_0xce48x11){logger[_0xaf80[17]](_0xaf80[13],_0xce48xc,_0xaf80[16]);logger[_0xaf80[20]](_0xaf80[18],_0xce48xc,_0xaf80[16],JSON[_0xaf80[19]](_0xce48x11));if(_0xce48x11[_0xaf80[14]]){if(_0xce48x11[_0xaf80[14]][_0xaf80[21]]=== 500){logger[_0xaf80[14]](_0xaf80[13],_0xce48xc,_0xce48x11[_0xaf80[14]][_0xaf80[22]]);return _0xce48xf(_0xce48x11[_0xaf80[14]][_0xaf80[22]])};logger[_0xaf80[14]](_0xaf80[13],_0xce48xc,_0xce48x11[_0xaf80[14]][_0xaf80[22]]);return _0xce48xe(_0xce48x11[_0xaf80[14]][_0xaf80[22]])}else {logger[_0xaf80[17]](_0xaf80[13],_0xce48xc,_0xaf80[16]);_0xce48xe(_0xce48x11[_0xaf80[23]][_0xaf80[22]])}})[_0xaf80[15]](function(_0xce48x10){logger[_0xaf80[14]](_0xaf80[13],_0xce48xc,_0xce48x10);_0xce48xf(_0xce48x10)})})}
\ No newline at end of file
+var _0x398c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x398c[0];var _=require(_0x398c[1]);var util=require(_0x398c[2]);var moment=require(_0x398c[3]);var BPromise=require(_0x398c[4]);var db=require(_0x398c[6])[_0x398c[5]];var utils=require(_0x398c[7]);var logger=require(_0x398c[9])(_0x398c[8]);var jayson=require(_0x398c[10]);var client=jayson[_0x398c[12]][_0x398c[11]]({port:9002});function respondWithRpcPromise(_0xa5b6xb,_0xa5b6xc,_0xa5b6xd){return  new BPromise(function(_0xa5b6xe,_0xa5b6xf){return client[_0x398c[25]](_0xa5b6xb,_0xa5b6xd)[_0x398c[24]](function(_0xa5b6x11){logger[_0x398c[17]](_0x398c[13],_0xa5b6xc,_0x398c[16]);logger[_0x398c[20]](_0x398c[18],_0xa5b6xc,_0x398c[16],JSON[_0x398c[19]](_0xa5b6x11));if(_0xa5b6x11[_0x398c[14]]){if(_0xa5b6x11[_0x398c[14]][_0x398c[21]]=== 500){logger[_0x398c[14]](_0x398c[13],_0xa5b6xc,_0xa5b6x11[_0x398c[14]][_0x398c[22]]);return _0xa5b6xf(_0xa5b6x11[_0x398c[14]][_0x398c[22]])};logger[_0x398c[14]](_0x398c[13],_0xa5b6xc,_0xa5b6x11[_0x398c[14]][_0x398c[22]]);return _0xa5b6xe(_0xa5b6x11[_0x398c[14]][_0x398c[22]])}else {logger[_0x398c[17]](_0x398c[13],_0xa5b6xc,_0x398c[16]);_0xa5b6xe(_0xa5b6x11[_0x398c[23]][_0x398c[22]])}})[_0x398c[15]](function(_0xa5b6x10){logger[_0x398c[14]](_0x398c[13],_0xa5b6xc,_0xa5b6x10);_0xa5b6xf(_0xa5b6x10)})})}
\ No newline at end of file
index db2b14f..9b4a5b5 100644 (file)
@@ -1 +1 @@
-var _0x436b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x436b[0];var multer=require(_0x436b[1]);var util=require(_0x436b[2]);var path=require(_0x436b[3]);var express=require(_0x436b[4]);var router=express.Router();var auth=require(_0x436b[5]);var config=require(_0x436b[6]);var controller=require(_0x436b[7]);router[_0x436b[11]](_0x436b[8],auth[_0x436b[9]](),controller[_0x436b[10]]);router[_0x436b[11]](_0x436b[12],auth[_0x436b[9]](),controller[_0x436b[13]]);router[_0x436b[11]](_0x436b[14],auth[_0x436b[9]](),controller[_0x436b[15]]);router[_0x436b[11]](_0x436b[16],auth[_0x436b[9]](),controller[_0x436b[17]]);router[_0x436b[19]](_0x436b[8],auth[_0x436b[9]](),controller[_0x436b[18]]);router[_0x436b[19]](_0x436b[14],auth[_0x436b[9]](),controller[_0x436b[20]]);router[_0x436b[19]](_0x436b[16],auth[_0x436b[9]](),controller[_0x436b[21]]);router[_0x436b[23]](_0x436b[12],auth[_0x436b[9]](),controller[_0x436b[22]]);router[_0x436b[25]](_0x436b[12],auth[_0x436b[9]](),controller[_0x436b[24]]);router[_0x436b[25]](_0x436b[14],auth[_0x436b[9]](),controller[_0x436b[26]]);router[_0x436b[25]](_0x436b[16],auth[_0x436b[9]](),controller[_0x436b[27]]);module[_0x436b[28]]= router
\ No newline at end of file
+var _0x7971=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x7971[0];var multer=require(_0x7971[1]);var util=require(_0x7971[2]);var path=require(_0x7971[3]);var express=require(_0x7971[4]);var router=express.Router();var auth=require(_0x7971[5]);var config=require(_0x7971[6]);var controller=require(_0x7971[7]);router[_0x7971[11]](_0x7971[8],auth[_0x7971[9]](),controller[_0x7971[10]]);router[_0x7971[11]](_0x7971[12],auth[_0x7971[9]](),controller[_0x7971[13]]);router[_0x7971[11]](_0x7971[14],auth[_0x7971[9]](),controller[_0x7971[15]]);router[_0x7971[11]](_0x7971[16],auth[_0x7971[9]](),controller[_0x7971[17]]);router[_0x7971[19]](_0x7971[8],auth[_0x7971[9]](),controller[_0x7971[18]]);router[_0x7971[19]](_0x7971[14],auth[_0x7971[9]](),controller[_0x7971[20]]);router[_0x7971[19]](_0x7971[16],auth[_0x7971[9]](),controller[_0x7971[21]]);router[_0x7971[23]](_0x7971[12],auth[_0x7971[9]](),controller[_0x7971[22]]);router[_0x7971[25]](_0x7971[12],auth[_0x7971[9]](),controller[_0x7971[24]]);router[_0x7971[25]](_0x7971[14],auth[_0x7971[9]](),controller[_0x7971[26]]);router[_0x7971[25]](_0x7971[16],auth[_0x7971[9]](),controller[_0x7971[27]]);module[_0x7971[28]]= router
\ No newline at end of file
index 8a60347..03f35f4 100644 (file)
@@ -1 +1 @@
-var _0xfa95=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0xfa95[0];var Sequelize=require(_0xfa95[1]);module[_0xfa95[2]]= {name:{type:Sequelize[_0xfa95[3]],unique:_0xfa95[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0xfa95[3]]},timeout:{type:Sequelize[_0xfa95[5]],validate:{min:1}},strategy:{type:Sequelize.ENUM(_0xfa95[6],_0xfa95[7],_0xfa95[8])},lastAgent:{type:Sequelize[_0xfa95[5]],defaultValue:0}}
\ No newline at end of file
+var _0x9cc0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x62\x65\x65\x70\x61\x6C\x6C","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E"];_0x9cc0[0];var Sequelize=require(_0x9cc0[1]);module[_0x9cc0[2]]= {name:{type:Sequelize[_0x9cc0[3]],unique:_0x9cc0[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},description:{type:Sequelize[_0x9cc0[3]]},timeout:{type:Sequelize[_0x9cc0[5]],validate:{min:1}},strategy:{type:Sequelize.ENUM(_0x9cc0[6],_0x9cc0[7],_0x9cc0[8])},lastAgent:{type:Sequelize[_0x9cc0[5]],defaultValue:0}}
\ No newline at end of file
index 628f638..5df878e 100644 (file)
@@ -1 +1 @@
-var _0x5565=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0x5565[0];var jsonpatch=require(_0x5565[1]);var rp=require(_0x5565[2]);var moment=require(_0x5565[3]);var BPromise=require(_0x5565[4]);var util=require(_0x5565[5]);var path=require(_0x5565[6]);var sox=require(_0x5565[7]);var ejs=require(_0x5565[8]);var fs=require(_0x5565[9]);var _=require(_0x5565[10]);var squel=require(_0x5565[11]);var crypto=require(_0x5565[12]);var jsforce=require(_0x5565[13]);var toCsv=require(_0x5565[14]);var qs=require(_0x5565[15]);var logger=require(_0x5565[17])(_0x5565[16]);var utils=require(_0x5565[18]);var config=require(_0x5565[19]);var db=require(_0x5565[21])[_0x5565[20]];function respondWithStatusCode(_0xe0e4x15,_0xe0e4x16,_0xe0e4x17){_0xe0e4x16= _0xe0e4x16|| 204;return function(_0xe0e4x18){if(_0xe0e4x18){logger[_0x5565[24]](_0x5565[22],_0xe0e4x17,_0xe0e4x16,_0x5565[23]);logger[_0x5565[26]](_0x5565[25],_0xe0e4x17,_0xe0e4x16,_0x5565[23]);return _0xe0e4x15[_0x5565[27]](_0xe0e4x16)};return _0xe0e4x15[_0x5565[29]](304)[_0x5565[28]]()}}function respondWithResult(_0xe0e4x15,_0xe0e4x16,_0xe0e4x17){_0xe0e4x16= _0xe0e4x16|| 200;return function(_0xe0e4x18){if(_0xe0e4x18){logger[_0x5565[24]](_0x5565[22],_0xe0e4x17,_0xe0e4x16,_0x5565[30]);logger[_0x5565[26]](_0x5565[25],_0xe0e4x17,_0xe0e4x16,_0x5565[30],JSON[_0x5565[31]](_0xe0e4x18));return _0xe0e4x15[_0x5565[29]](_0xe0e4x16)[_0x5565[32]](_0xe0e4x18)};return _0xe0e4x15[_0x5565[29]](304)[_0x5565[28]]()}}function respondWithFilteredResult(_0xe0e4x15,_0xe0e4x1b,_0xe0e4x17){return function(_0xe0e4x18){if(_0xe0e4x18){var _0xe0e4x1c=_0xe0e4x18[_0x5565[33]],_0xe0e4x1d=_0xe0e4x1b[_0x5565[34]],_0xe0e4x1e=_0xe0e4x1b[_0x5565[34]]+ _0xe0e4x1b[_0x5565[35]],_0xe0e4x16;if(_0xe0e4x1e>= _0xe0e4x1c){_0xe0e4x1e= _0xe0e4x1c;_0xe0e4x16= 200}else {_0xe0e4x16= 206};_0xe0e4x15[_0x5565[29]](_0xe0e4x16);logger[_0x5565[24]](_0x5565[22],_0xe0e4x17,_0xe0e4x16,_0x5565[36]);logger[_0x5565[26]](_0x5565[25],_0xe0e4x17,_0xe0e4x16,_0x5565[30],JSON[_0x5565[31]](_0xe0e4x18));return _0xe0e4x15[_0x5565[40]](_0x5565[37],_0xe0e4x1d+ _0x5565[38]+ _0xe0e4x1e+ _0x5565[39]+ _0xe0e4x1c)[_0x5565[32]](_0xe0e4x18)};return null}}function patchUpdates(_0xe0e4x20){return function(_0xe0e4x18){try{jsonpatch[_0x5565[41]](_0xe0e4x18,_0xe0e4x20,true)}catch(err){return BPromise[_0x5565[42]](err)};return _0xe0e4x18[_0x5565[43]]()}}function saveUpdates(_0xe0e4x22,_0xe0e4x16,_0xe0e4x17){return function(_0xe0e4x18){if(_0xe0e4x18){return _0xe0e4x18[_0x5565[46]](_0xe0e4x22)[_0x5565[45]](function(_0xe0e4x23){logger[_0x5565[24]](_0x5565[22],_0xe0e4x17,_0xe0e4x16,_0x5565[44]);logger[_0x5565[26]](_0x5565[25],_0xe0e4x17,_0xe0e4x16,_0x5565[44],JSON[_0x5565[31]](_0xe0e4x18));return _0xe0e4x23})};return null}}function removeEntity(_0xe0e4x15,_0xe0e4x16,_0xe0e4x17){return function(_0xe0e4x18){if(_0xe0e4x18){return _0xe0e4x18[_0x5565[48]]()[_0x5565[45]](function(){logger[_0x5565[24]](_0x5565[22],_0xe0e4x17,_0xe0e4x16,_0x5565[47]);logger[_0x5565[26]](_0x5565[25],_0xe0e4x17,_0xe0e4x16,_0x5565[47],JSON[_0x5565[31]](_0xe0e4x18));_0xe0e4x15[_0x5565[29]](204)[_0x5565[28]]()})}}}function handleEntityNotFound(_0xe0e4x15,_0xe0e4x16,_0xe0e4x17){return function(_0xe0e4x18){if(!_0xe0e4x18){logger[_0x5565[50]](_0x5565[22],_0xe0e4x17,404,_0x5565[49]);_0xe0e4x15[_0x5565[29]](404)[_0x5565[28]]();return null};return _0xe0e4x18}}function handleError(_0xe0e4x15,_0xe0e4x16,_0xe0e4x17){_0xe0e4x16= _0xe0e4x16|| 500;return function(_0xe0e4x27){logger[_0x5565[50]](_0x5565[22],_0xe0e4x17,_0xe0e4x16,JSON[_0x5565[31]](_0xe0e4x27));delete _0xe0e4x27[_0x5565[51]];_0xe0e4x15[_0x5565[29]](_0xe0e4x16)[_0x5565[52]](_0xe0e4x27)}}exports[_0x5565[53]]= function(_0xe0e4x28,_0xe0e4x15){var _0xe0e4x1b={},_0xe0e4x29={};_0xe0e4x29[_0x5565[54]]= _[_0x5565[57]](db[_0x5565[56]][_0x5565[55]]);_0xe0e4x29[_0x5565[58]]= _[_0x5565[57]](_0xe0e4x28[_0x5565[58]]);_0xe0e4x29[_0x5565[59]]= _[_0x5565[60]](_0xe0e4x29[_0x5565[54]],_0xe0e4x29[_0x5565[58]]);_0xe0e4x1b[_0x5565[61]]= _[_0x5565[60]](_0xe0e4x29[_0x5565[54]],qs[_0x5565[62]](_0xe0e4x28[_0x5565[58]][_0x5565[62]]));_0xe0e4x1b[_0x5565[61]]= (_0xe0e4x1b[_0x5565[61]][_0x5565[63]])?_0xe0e4x1b[_0x5565[61]]:_0xe0e4x29[_0x5565[54]];if(!_0xe0e4x28[_0x5565[58]][_0x5565[65]](_0x5565[64])){_0xe0e4x1b[_0x5565[35]]= qs[_0x5565[35]](_0xe0e4x28[_0x5565[58]][_0x5565[35]]);_0xe0e4x1b[_0x5565[34]]= qs[_0x5565[34]](_0xe0e4x28[_0x5565[58]][_0x5565[34]])};_0xe0e4x1b[_0x5565[66]]= qs[_0x5565[67]](_0xe0e4x28[_0x5565[58]][_0x5565[67]]);_0xe0e4x1b[_0x5565[68]]= qs[_0x5565[59]](_[_0x5565[69]](_0xe0e4x28[_0x5565[58]],_0xe0e4x29[_0x5565[59]]));if(_0xe0e4x28[_0x5565[58]][_0x5565[70]]){_0xe0e4x1b[_0x5565[68]]= _[_0x5565[73]](_0xe0e4x1b[_0x5565[68]],{$or:_[_0x5565[72]](_0xe0e4x1b[_0x5565[61]],function(_0xe0e4x2a){var _0xe0e4x2b={};_0xe0e4x2b[_0xe0e4x2a]= {$like:_0x5565[71]+ _0xe0e4x28[_0x5565[58]][_0x5565[70]]+ _0x5565[71]};return _0xe0e4x2b})})};_0xe0e4x1b= _[_0x5565[73]]({},_0xe0e4x1b,_0xe0e4x28[_0x5565[74]]);return db[_0x5565[56]][_0x5565[76]](_0xe0e4x1b)[_0x5565[45]](respondWithFilteredResult(_0xe0e4x15,_0xe0e4x1b,_0x5565[53]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[53]))};exports[_0x5565[77]]= function(_0xe0e4x28,_0xe0e4x15){var _0xe0e4x1b={raw:true,where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}},_0xe0e4x29={};_0xe0e4x29[_0x5565[54]]= _[_0x5565[57]](db[_0x5565[56]][_0x5565[55]]);_0xe0e4x29[_0x5565[58]]= _[_0x5565[57]](_0xe0e4x28[_0x5565[58]]);_0xe0e4x29[_0x5565[59]]= _[_0x5565[60]](_0xe0e4x29[_0x5565[54]],_0xe0e4x29[_0x5565[58]]);_0xe0e4x1b[_0x5565[61]]= _[_0x5565[60]](_0xe0e4x29[_0x5565[54]],qs[_0x5565[62]](_0xe0e4x28[_0x5565[58]][_0x5565[62]]));_0xe0e4x1b[_0x5565[61]]= (_0xe0e4x1b[_0x5565[61]][_0x5565[63]])?_0xe0e4x1b[_0x5565[61]]:_0xe0e4x29[_0x5565[54]];_0xe0e4x1b= _[_0x5565[73]]({},_0xe0e4x1b,_0xe0e4x28[_0x5565[74]]);return db[_0x5565[56]][_0x5565[80]](_0xe0e4x1b)[_0x5565[45]](handleEntityNotFound(_0xe0e4x15,null,_0x5565[77]))[_0x5565[45]](respondWithResult(_0xe0e4x15,null,_0x5565[77]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[77]))};exports[_0x5565[81]]= function(_0xe0e4x28,_0xe0e4x15){return db[_0x5565[56]][_0x5565[81]](_0xe0e4x28[_0x5565[82]],{})[_0x5565[45]](respondWithResult(_0xe0e4x15,201,_0x5565[81]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[81]))};exports[_0x5565[46]]= function(_0xe0e4x28,_0xe0e4x15){if(_0xe0e4x28[_0x5565[82]][_0x5565[78]]){delete _0xe0e4x28[_0x5565[82]][_0x5565[78]]};return db[_0x5565[56]][_0x5565[80]]({where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}})[_0x5565[45]](handleEntityNotFound(_0xe0e4x15,null,_0x5565[46]))[_0x5565[45]](saveUpdates(_0xe0e4x28[_0x5565[82]],null,_0x5565[46]))[_0x5565[45]](respondWithResult(_0xe0e4x15,null,_0x5565[46]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[46]))};exports[_0x5565[48]]= function(_0xe0e4x28,_0xe0e4x15){return db[_0x5565[56]][_0x5565[80]]({where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}})[_0x5565[45]](handleEntityNotFound(_0xe0e4x15,null,_0x5565[48]))[_0x5565[45]](removeEntity(_0xe0e4x15,null,_0x5565[48]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[48]))};exports[_0x5565[83]]= function(_0xe0e4x28,_0xe0e4x18,_0xe0e4x2c){var _0xe0e4x1b={};var _0xe0e4x29={};var _0xe0e4x2d;var _0xe0e4x1c;return db[_0x5565[56]][_0x5565[85]]({where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}})[_0x5565[45]](handleEntityNotFound(_0xe0e4x18,null,_0x5565[83]))[_0x5565[45]](function(_0xe0e4x18){if(_0xe0e4x18){_0xe0e4x2d= _0xe0e4x18;_0xe0e4x29[_0x5565[54]]= _[_0x5565[57]](db[_0x5565[84]][_0x5565[55]]);_0xe0e4x29[_0x5565[58]]= _[_0x5565[57]](_0xe0e4x28[_0x5565[58]]);_0xe0e4x29[_0x5565[59]]= _[_0x5565[60]](_0xe0e4x29[_0x5565[54]],_0xe0e4x29[_0x5565[58]]);_0xe0e4x1b[_0x5565[61]]= _[_0x5565[60]](_0xe0e4x29[_0x5565[54]],qs[_0x5565[62]](_0xe0e4x28[_0x5565[58]][_0x5565[62]]));_0xe0e4x1b[_0x5565[61]]= (_0xe0e4x1b[_0x5565[61]][_0x5565[63]])?_0xe0e4x1b[_0x5565[61]]:_0xe0e4x29[_0x5565[54]];_0xe0e4x1b[_0x5565[66]]= qs[_0x5565[67]](_0xe0e4x28[_0x5565[58]][_0x5565[67]]);_0xe0e4x1b[_0x5565[68]]= qs[_0x5565[59]](_[_0x5565[69]](_0xe0e4x28[_0x5565[58]],_0xe0e4x29[_0x5565[59]]));if(_0xe0e4x28[_0x5565[58]][_0x5565[70]]){_0xe0e4x1b[_0x5565[68]]= _[_0x5565[73]](_0xe0e4x1b[_0x5565[68]],{$or:_[_0x5565[72]](_0xe0e4x1b[_0x5565[61]],function(_0xe0e4x2a){var _0xe0e4x2b={};_0xe0e4x2b[_0xe0e4x2a]= {$like:_0x5565[71]+ _0xe0e4x28[_0x5565[58]][_0x5565[70]]+ _0x5565[71]};return _0xe0e4x2b})})};_0xe0e4x1b= _[_0x5565[73]]({},_0xe0e4x1b,_0xe0e4x28[_0x5565[74]]);return _0xe0e4x2d[_0x5565[83]](_0xe0e4x1b)}})[_0x5565[45]](function(_0xe0e4x2f){if(_0xe0e4x2f){_0xe0e4x1c= _0xe0e4x2f[_0x5565[63]];if(!_0xe0e4x28[_0x5565[58]][_0x5565[65]](_0x5565[64])){_0xe0e4x1b[_0x5565[35]]= qs[_0x5565[35]](_0xe0e4x28[_0x5565[58]][_0x5565[35]]);_0xe0e4x1b[_0x5565[34]]= qs[_0x5565[34]](_0xe0e4x28[_0x5565[58]][_0x5565[34]])};return _0xe0e4x2d[_0x5565[83]](_0xe0e4x1b)}})[_0x5565[45]](function(_0xe0e4x2e){return _0xe0e4x2e?{count:_0xe0e4x1c,rows:_0xe0e4x2e}:null})[_0x5565[45]](respondWithResult(_0xe0e4x18,null,_0x5565[83]))[_0x5565[75]](handleError(_0xe0e4x18,null,_0x5565[83]))};exports[_0x5565[86]]= function(_0xe0e4x28,_0xe0e4x15,_0xe0e4x2c){var _0xe0e4x30=[];var _0xe0e4x31;return db[_0x5565[84]][_0x5565[93]]({where:{id:_0xe0e4x28[_0x5565[82]][_0x5565[87]]},attributes:[_0x5565[78]],include:[{model:db[_0x5565[92]],as:_0x5565[90],attributes:[_0x5565[78]],raw:true}]})[_0x5565[45]](function(_0xe0e4x34){if(_0xe0e4x34){for(var _0xe0e4x35=0;_0xe0e4x35< _0xe0e4x34[_0x5565[63]];_0xe0e4x35+= 1){for(var _0xe0e4x36=0;_0xe0e4x36< _0xe0e4x34[_0xe0e4x35][_0x5565[90]][_0x5565[63]];_0xe0e4x36+= 1){_0xe0e4x30= _[_0x5565[91]](_0xe0e4x30,[_0xe0e4x34[_0xe0e4x35][_0x5565[90]][_0xe0e4x36][_0x5565[78]]])}};return _0xe0e4x30}})[_0x5565[45]](function(_0xe0e4x33){if(_0xe0e4x33){return db[_0x5565[56]][_0x5565[80]]({where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}})}})[_0x5565[45]](function(_0xe0e4x32){if(_0xe0e4x32){_0xe0e4x31= _0xe0e4x32;return _0xe0e4x31[_0x5565[89]](_0xe0e4x30,{penalty:_0xe0e4x28[_0x5565[82]][_0x5565[88]]})}})[_0x5565[45]](function(_0xe0e4x18){if(_0xe0e4x18){return _0xe0e4x31[_0x5565[86]](_0xe0e4x28[_0x5565[82]][_0x5565[87]])}})[_0x5565[45]](handleEntityNotFound(_0xe0e4x15,null,_0x5565[86]))[_0x5565[45]](respondWithStatusCode(_0xe0e4x15,null,_0x5565[86]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[86]))};exports[_0x5565[94]]= function(_0xe0e4x28,_0xe0e4x15,_0xe0e4x2c){var _0xe0e4x30=[];var _0xe0e4x31;return db[_0x5565[84]][_0x5565[93]]({where:{id:_0xe0e4x28[_0x5565[58]][_0x5565[87]]},attributes:[_0x5565[78]],include:[{model:db[_0x5565[92]],as:_0x5565[90],attributes:[_0x5565[78]],raw:true}]})[_0x5565[45]](function(_0xe0e4x34){if(_0xe0e4x34){for(var _0xe0e4x35=0;_0xe0e4x35< _0xe0e4x34[_0x5565[63]];_0xe0e4x35+= 1){for(var _0xe0e4x36=0;_0xe0e4x36< _0xe0e4x34[_0xe0e4x35][_0x5565[90]][_0x5565[63]];_0xe0e4x36+= 1){_0xe0e4x30= _[_0x5565[91]](_0xe0e4x30,[_0xe0e4x34[_0xe0e4x35][_0x5565[90]][_0xe0e4x36][_0x5565[78]]])}};return _0xe0e4x30}})[_0x5565[45]](function(_0xe0e4x33){if(_0xe0e4x33){return db[_0x5565[56]][_0x5565[80]]({where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}})}})[_0x5565[45]](function(_0xe0e4x32){if(_0xe0e4x32){_0xe0e4x31= _0xe0e4x32;return _0xe0e4x31[_0x5565[95]](_0xe0e4x30)}})[_0x5565[45]](function(_0xe0e4x18){if(_0xe0e4x31){return _0xe0e4x31[_0x5565[94]](_0xe0e4x28[_0x5565[58]][_0x5565[87]])}})[_0x5565[45]](handleEntityNotFound(_0xe0e4x15,null,_0x5565[94]))[_0x5565[45]](respondWithStatusCode(_0xe0e4x15,null,_0x5565[94]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[94]))};exports[_0x5565[89]]= function(_0xe0e4x28,_0xe0e4x15,_0xe0e4x2c){return db[_0x5565[56]][_0x5565[80]]({where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}})[_0x5565[45]](handleEntityNotFound(_0xe0e4x15,null,_0x5565[89]))[_0x5565[45]](function(_0xe0e4x18){if(_0xe0e4x18){return _0xe0e4x18[_0x5565[89]](_0xe0e4x28[_0x5565[82]][_0x5565[87]],_[_0x5565[96]](_0xe0e4x28[_0x5565[82]],[_0x5565[87],_0x5565[78]])|| {})};return null})[_0x5565[45]](respondWithResult(_0xe0e4x15,null,_0x5565[89]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[89]))};exports[_0x5565[95]]= function(_0xe0e4x28,_0xe0e4x15,_0xe0e4x2c){var _0xe0e4x2f;return db[_0x5565[56]][_0x5565[80]]({where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}})[_0x5565[45]](handleEntityNotFound(_0xe0e4x15,null,_0x5565[95]))[_0x5565[45]](function(_0xe0e4x18){if(_0xe0e4x18){return _0xe0e4x18[_0x5565[95]](_0xe0e4x28[_0x5565[58]][_0x5565[87]])}})[_0x5565[45]](respondWithStatusCode(_0xe0e4x15,null,_0x5565[95]))[_0x5565[75]](handleError(_0xe0e4x15,null,_0x5565[95]))};exports[_0x5565[97]]= function(_0xe0e4x28,_0xe0e4x18,_0xe0e4x2c){var _0xe0e4x1b={};var _0xe0e4x29={};var _0xe0e4x2d;var _0xe0e4x1c;return db[_0x5565[56]][_0x5565[85]]({where:{id:_0xe0e4x28[_0x5565[79]][_0x5565[78]]}})[_0x5565[45]](handleEntityNotFound(_0xe0e4x18,null,_0x5565[97]))[_0x5565[45]](function(_0xe0e4x18){if(_0xe0e4x18){_0xe0e4x2d= _0xe0e4x18;_0xe0e4x29[_0x5565[54]]= _[_0x5565[57]](db[_0x5565[92]][_0x5565[55]]);_0xe0e4x29[_0x5565[58]]= _[_0x5565[57]](_0xe0e4x28[_0x5565[58]]);_0xe0e4x29[_0x5565[59]]= _[_0x5565[60]](_0xe0e4x29[_0x5565[54]],_0xe0e4x29[_0x5565[58]]);_0xe0e4x1b[_0x5565[61]]= _[_0x5565[60]](_0xe0e4x29[_0x5565[54]],qs[_0x5565[62]](_0xe0e4x28[_0x5565[58]][_0x5565[62]]));_0xe0e4x1b[_0x5565[61]]= (_0xe0e4x1b[_0x5565[61]][_0x5565[63]])?_0xe0e4x1b[_0x5565[61]]:_0xe0e4x29[_0x5565[54]];_0xe0e4x1b[_0x5565[66]]= qs[_0x5565[67]](_0xe0e4x28[_0x5565[58]][_0x5565[67]]);_0xe0e4x1b[_0x5565[68]]= qs[_0x5565[59]](_[_0x5565[69]](_0xe0e4x28[_0x5565[58]],_0xe0e4x29[_0x5565[59]]));if(_0xe0e4x28[_0x5565[58]][_0x5565[70]]){_0xe0e4x1b[_0x5565[68]]= _[_0x5565[73]](_0xe0e4x1b[_0x5565[68]],{$or:_[_0x5565[72]](_0xe0e4x1b[_0x5565[61]],function(_0xe0e4x2a){var _0xe0e4x2b={};_0xe0e4x2b[_0xe0e4x2a]= {$like:_0x5565[71]+ _0xe0e4x28[_0x5565[58]][_0x5565[70]]+ _0x5565[71]};return _0xe0e4x2b})})};_0xe0e4x1b= _[_0x5565[73]]({},_0xe0e4x1b,_0xe0e4x28[_0x5565[74]]);return _0xe0e4x2d[_0x5565[97]](_0xe0e4x1b)}})[_0x5565[45]](function(_0xe0e4x2f){if(_0xe0e4x2f){_0xe0e4x1c= _0xe0e4x2f[_0x5565[63]];if(!_0xe0e4x28[_0x5565[58]][_0x5565[65]](_0x5565[64])){_0xe0e4x1b[_0x5565[35]]= qs[_0x5565[35]](_0xe0e4x28[_0x5565[58]][_0x5565[35]]);_0xe0e4x1b[_0x5565[34]]= qs[_0x5565[34]](_0xe0e4x28[_0x5565[58]][_0x5565[34]])};return _0xe0e4x2d[_0x5565[97]](_0xe0e4x1b)}})[_0x5565[45]](function(_0xe0e4x2e){return _0xe0e4x2e?{count:_0xe0e4x1c,rows:_0xe0e4x2e}:null})[_0x5565[45]](respondWithResult(_0xe0e4x18,null,_0x5565[97]))[_0x5565[75]](handleError(_0xe0e4x18,null,_0x5565[97]))}
\ No newline at end of file
+var _0xcc83=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73"];_0xcc83[0];var jsonpatch=require(_0xcc83[1]);var rp=require(_0xcc83[2]);var moment=require(_0xcc83[3]);var BPromise=require(_0xcc83[4]);var util=require(_0xcc83[5]);var path=require(_0xcc83[6]);var sox=require(_0xcc83[7]);var ejs=require(_0xcc83[8]);var fs=require(_0xcc83[9]);var _=require(_0xcc83[10]);var squel=require(_0xcc83[11]);var crypto=require(_0xcc83[12]);var jsforce=require(_0xcc83[13]);var toCsv=require(_0xcc83[14]);var qs=require(_0xcc83[15]);var logger=require(_0xcc83[17])(_0xcc83[16]);var utils=require(_0xcc83[18]);var config=require(_0xcc83[19]);var db=require(_0xcc83[21])[_0xcc83[20]];function respondWithStatusCode(_0x15d7x15,_0x15d7x16,_0x15d7x17){_0x15d7x16= _0x15d7x16|| 204;return function(_0x15d7x18){if(_0x15d7x18){logger[_0xcc83[24]](_0xcc83[22],_0x15d7x17,_0x15d7x16,_0xcc83[23]);logger[_0xcc83[26]](_0xcc83[25],_0x15d7x17,_0x15d7x16,_0xcc83[23]);return _0x15d7x15[_0xcc83[27]](_0x15d7x16)};return _0x15d7x15[_0xcc83[29]](304)[_0xcc83[28]]()}}function respondWithResult(_0x15d7x15,_0x15d7x16,_0x15d7x17){_0x15d7x16= _0x15d7x16|| 200;return function(_0x15d7x18){if(_0x15d7x18){logger[_0xcc83[24]](_0xcc83[22],_0x15d7x17,_0x15d7x16,_0xcc83[30]);logger[_0xcc83[26]](_0xcc83[25],_0x15d7x17,_0x15d7x16,_0xcc83[30],JSON[_0xcc83[31]](_0x15d7x18));return _0x15d7x15[_0xcc83[29]](_0x15d7x16)[_0xcc83[32]](_0x15d7x18)};return _0x15d7x15[_0xcc83[29]](304)[_0xcc83[28]]()}}function respondWithFilteredResult(_0x15d7x15,_0x15d7x1b,_0x15d7x17){return function(_0x15d7x18){if(_0x15d7x18){var _0x15d7x1c=_0x15d7x18[_0xcc83[33]],_0x15d7x1d=_0x15d7x1b[_0xcc83[34]],_0x15d7x1e=_0x15d7x1b[_0xcc83[34]]+ _0x15d7x1b[_0xcc83[35]],_0x15d7x16;if(_0x15d7x1e>= _0x15d7x1c){_0x15d7x1e= _0x15d7x1c;_0x15d7x16= 200}else {_0x15d7x16= 206};_0x15d7x15[_0xcc83[29]](_0x15d7x16);logger[_0xcc83[24]](_0xcc83[22],_0x15d7x17,_0x15d7x16,_0xcc83[36]);logger[_0xcc83[26]](_0xcc83[25],_0x15d7x17,_0x15d7x16,_0xcc83[30],JSON[_0xcc83[31]](_0x15d7x18));return _0x15d7x15[_0xcc83[40]](_0xcc83[37],_0x15d7x1d+ _0xcc83[38]+ _0x15d7x1e+ _0xcc83[39]+ _0x15d7x1c)[_0xcc83[32]](_0x15d7x18)};return null}}function patchUpdates(_0x15d7x20){return function(_0x15d7x18){try{jsonpatch[_0xcc83[41]](_0x15d7x18,_0x15d7x20,true)}catch(err){return BPromise[_0xcc83[42]](err)};return _0x15d7x18[_0xcc83[43]]()}}function saveUpdates(_0x15d7x22,_0x15d7x16,_0x15d7x17){return function(_0x15d7x18){if(_0x15d7x18){return _0x15d7x18[_0xcc83[46]](_0x15d7x22)[_0xcc83[45]](function(_0x15d7x23){logger[_0xcc83[24]](_0xcc83[22],_0x15d7x17,_0x15d7x16,_0xcc83[44]);logger[_0xcc83[26]](_0xcc83[25],_0x15d7x17,_0x15d7x16,_0xcc83[44],JSON[_0xcc83[31]](_0x15d7x18));return _0x15d7x23})};return null}}function removeEntity(_0x15d7x15,_0x15d7x16,_0x15d7x17){return function(_0x15d7x18){if(_0x15d7x18){return _0x15d7x18[_0xcc83[48]]()[_0xcc83[45]](function(){logger[_0xcc83[24]](_0xcc83[22],_0x15d7x17,_0x15d7x16,_0xcc83[47]);logger[_0xcc83[26]](_0xcc83[25],_0x15d7x17,_0x15d7x16,_0xcc83[47],JSON[_0xcc83[31]](_0x15d7x18));_0x15d7x15[_0xcc83[29]](204)[_0xcc83[28]]()})}}}function handleEntityNotFound(_0x15d7x15,_0x15d7x16,_0x15d7x17){return function(_0x15d7x18){if(!_0x15d7x18){logger[_0xcc83[50]](_0xcc83[22],_0x15d7x17,404,_0xcc83[49]);_0x15d7x15[_0xcc83[29]](404)[_0xcc83[28]]();return null};return _0x15d7x18}}function handleError(_0x15d7x15,_0x15d7x16,_0x15d7x17){_0x15d7x16= _0x15d7x16|| 500;return function(_0x15d7x27){logger[_0xcc83[50]](_0xcc83[22],_0x15d7x17,_0x15d7x16,JSON[_0xcc83[31]](_0x15d7x27));delete _0x15d7x27[_0xcc83[51]];_0x15d7x15[_0xcc83[29]](_0x15d7x16)[_0xcc83[52]](_0x15d7x27)}}exports[_0xcc83[53]]= function(_0x15d7x28,_0x15d7x15){var _0x15d7x1b={},_0x15d7x29={};_0x15d7x29[_0xcc83[54]]= _[_0xcc83[57]](db[_0xcc83[56]][_0xcc83[55]]);_0x15d7x29[_0xcc83[58]]= _[_0xcc83[57]](_0x15d7x28[_0xcc83[58]]);_0x15d7x29[_0xcc83[59]]= _[_0xcc83[60]](_0x15d7x29[_0xcc83[54]],_0x15d7x29[_0xcc83[58]]);_0x15d7x1b[_0xcc83[61]]= _[_0xcc83[60]](_0x15d7x29[_0xcc83[54]],qs[_0xcc83[62]](_0x15d7x28[_0xcc83[58]][_0xcc83[62]]));_0x15d7x1b[_0xcc83[61]]= (_0x15d7x1b[_0xcc83[61]][_0xcc83[63]])?_0x15d7x1b[_0xcc83[61]]:_0x15d7x29[_0xcc83[54]];if(!_0x15d7x28[_0xcc83[58]][_0xcc83[65]](_0xcc83[64])){_0x15d7x1b[_0xcc83[35]]= qs[_0xcc83[35]](_0x15d7x28[_0xcc83[58]][_0xcc83[35]]);_0x15d7x1b[_0xcc83[34]]= qs[_0xcc83[34]](_0x15d7x28[_0xcc83[58]][_0xcc83[34]])};_0x15d7x1b[_0xcc83[66]]= qs[_0xcc83[67]](_0x15d7x28[_0xcc83[58]][_0xcc83[67]]);_0x15d7x1b[_0xcc83[68]]= qs[_0xcc83[59]](_[_0xcc83[69]](_0x15d7x28[_0xcc83[58]],_0x15d7x29[_0xcc83[59]]));if(_0x15d7x28[_0xcc83[58]][_0xcc83[70]]){_0x15d7x1b[_0xcc83[68]]= _[_0xcc83[73]](_0x15d7x1b[_0xcc83[68]],{$or:_[_0xcc83[72]](_0x15d7x1b[_0xcc83[61]],function(_0x15d7x2a){var _0x15d7x2b={};_0x15d7x2b[_0x15d7x2a]= {$like:_0xcc83[71]+ _0x15d7x28[_0xcc83[58]][_0xcc83[70]]+ _0xcc83[71]};return _0x15d7x2b})})};_0x15d7x1b= _[_0xcc83[73]]({},_0x15d7x1b,_0x15d7x28[_0xcc83[74]]);return db[_0xcc83[56]][_0xcc83[76]](_0x15d7x1b)[_0xcc83[45]](respondWithFilteredResult(_0x15d7x15,_0x15d7x1b,_0xcc83[53]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[53]))};exports[_0xcc83[77]]= function(_0x15d7x28,_0x15d7x15){var _0x15d7x1b={raw:true,where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}},_0x15d7x29={};_0x15d7x29[_0xcc83[54]]= _[_0xcc83[57]](db[_0xcc83[56]][_0xcc83[55]]);_0x15d7x29[_0xcc83[58]]= _[_0xcc83[57]](_0x15d7x28[_0xcc83[58]]);_0x15d7x29[_0xcc83[59]]= _[_0xcc83[60]](_0x15d7x29[_0xcc83[54]],_0x15d7x29[_0xcc83[58]]);_0x15d7x1b[_0xcc83[61]]= _[_0xcc83[60]](_0x15d7x29[_0xcc83[54]],qs[_0xcc83[62]](_0x15d7x28[_0xcc83[58]][_0xcc83[62]]));_0x15d7x1b[_0xcc83[61]]= (_0x15d7x1b[_0xcc83[61]][_0xcc83[63]])?_0x15d7x1b[_0xcc83[61]]:_0x15d7x29[_0xcc83[54]];_0x15d7x1b= _[_0xcc83[73]]({},_0x15d7x1b,_0x15d7x28[_0xcc83[74]]);return db[_0xcc83[56]][_0xcc83[80]](_0x15d7x1b)[_0xcc83[45]](handleEntityNotFound(_0x15d7x15,null,_0xcc83[77]))[_0xcc83[45]](respondWithResult(_0x15d7x15,null,_0xcc83[77]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[77]))};exports[_0xcc83[81]]= function(_0x15d7x28,_0x15d7x15){return db[_0xcc83[56]][_0xcc83[81]](_0x15d7x28[_0xcc83[82]],{})[_0xcc83[45]](respondWithResult(_0x15d7x15,201,_0xcc83[81]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[81]))};exports[_0xcc83[46]]= function(_0x15d7x28,_0x15d7x15){if(_0x15d7x28[_0xcc83[82]][_0xcc83[78]]){delete _0x15d7x28[_0xcc83[82]][_0xcc83[78]]};return db[_0xcc83[56]][_0xcc83[80]]({where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}})[_0xcc83[45]](handleEntityNotFound(_0x15d7x15,null,_0xcc83[46]))[_0xcc83[45]](saveUpdates(_0x15d7x28[_0xcc83[82]],null,_0xcc83[46]))[_0xcc83[45]](respondWithResult(_0x15d7x15,null,_0xcc83[46]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[46]))};exports[_0xcc83[48]]= function(_0x15d7x28,_0x15d7x15){return db[_0xcc83[56]][_0xcc83[80]]({where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}})[_0xcc83[45]](handleEntityNotFound(_0x15d7x15,null,_0xcc83[48]))[_0xcc83[45]](removeEntity(_0x15d7x15,null,_0xcc83[48]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[48]))};exports[_0xcc83[83]]= function(_0x15d7x28,_0x15d7x18,_0x15d7x2c){var _0x15d7x1b={};var _0x15d7x29={};var _0x15d7x2d;var _0x15d7x1c;return db[_0xcc83[56]][_0xcc83[85]]({where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}})[_0xcc83[45]](handleEntityNotFound(_0x15d7x18,null,_0xcc83[83]))[_0xcc83[45]](function(_0x15d7x18){if(_0x15d7x18){_0x15d7x2d= _0x15d7x18;_0x15d7x29[_0xcc83[54]]= _[_0xcc83[57]](db[_0xcc83[84]][_0xcc83[55]]);_0x15d7x29[_0xcc83[58]]= _[_0xcc83[57]](_0x15d7x28[_0xcc83[58]]);_0x15d7x29[_0xcc83[59]]= _[_0xcc83[60]](_0x15d7x29[_0xcc83[54]],_0x15d7x29[_0xcc83[58]]);_0x15d7x1b[_0xcc83[61]]= _[_0xcc83[60]](_0x15d7x29[_0xcc83[54]],qs[_0xcc83[62]](_0x15d7x28[_0xcc83[58]][_0xcc83[62]]));_0x15d7x1b[_0xcc83[61]]= (_0x15d7x1b[_0xcc83[61]][_0xcc83[63]])?_0x15d7x1b[_0xcc83[61]]:_0x15d7x29[_0xcc83[54]];_0x15d7x1b[_0xcc83[66]]= qs[_0xcc83[67]](_0x15d7x28[_0xcc83[58]][_0xcc83[67]]);_0x15d7x1b[_0xcc83[68]]= qs[_0xcc83[59]](_[_0xcc83[69]](_0x15d7x28[_0xcc83[58]],_0x15d7x29[_0xcc83[59]]));if(_0x15d7x28[_0xcc83[58]][_0xcc83[70]]){_0x15d7x1b[_0xcc83[68]]= _[_0xcc83[73]](_0x15d7x1b[_0xcc83[68]],{$or:_[_0xcc83[72]](_0x15d7x1b[_0xcc83[61]],function(_0x15d7x2a){var _0x15d7x2b={};_0x15d7x2b[_0x15d7x2a]= {$like:_0xcc83[71]+ _0x15d7x28[_0xcc83[58]][_0xcc83[70]]+ _0xcc83[71]};return _0x15d7x2b})})};_0x15d7x1b= _[_0xcc83[73]]({},_0x15d7x1b,_0x15d7x28[_0xcc83[74]]);return _0x15d7x2d[_0xcc83[83]](_0x15d7x1b)}})[_0xcc83[45]](function(_0x15d7x2f){if(_0x15d7x2f){_0x15d7x1c= _0x15d7x2f[_0xcc83[63]];if(!_0x15d7x28[_0xcc83[58]][_0xcc83[65]](_0xcc83[64])){_0x15d7x1b[_0xcc83[35]]= qs[_0xcc83[35]](_0x15d7x28[_0xcc83[58]][_0xcc83[35]]);_0x15d7x1b[_0xcc83[34]]= qs[_0xcc83[34]](_0x15d7x28[_0xcc83[58]][_0xcc83[34]])};return _0x15d7x2d[_0xcc83[83]](_0x15d7x1b)}})[_0xcc83[45]](function(_0x15d7x2e){return _0x15d7x2e?{count:_0x15d7x1c,rows:_0x15d7x2e}:null})[_0xcc83[45]](respondWithResult(_0x15d7x18,null,_0xcc83[83]))[_0xcc83[75]](handleError(_0x15d7x18,null,_0xcc83[83]))};exports[_0xcc83[86]]= function(_0x15d7x28,_0x15d7x15,_0x15d7x2c){var _0x15d7x30=[];var _0x15d7x31;return db[_0xcc83[84]][_0xcc83[93]]({where:{id:_0x15d7x28[_0xcc83[82]][_0xcc83[87]]},attributes:[_0xcc83[78]],include:[{model:db[_0xcc83[92]],as:_0xcc83[90],attributes:[_0xcc83[78]],raw:true}]})[_0xcc83[45]](function(_0x15d7x34){if(_0x15d7x34){for(var _0x15d7x35=0;_0x15d7x35< _0x15d7x34[_0xcc83[63]];_0x15d7x35+= 1){for(var _0x15d7x36=0;_0x15d7x36< _0x15d7x34[_0x15d7x35][_0xcc83[90]][_0xcc83[63]];_0x15d7x36+= 1){_0x15d7x30= _[_0xcc83[91]](_0x15d7x30,[_0x15d7x34[_0x15d7x35][_0xcc83[90]][_0x15d7x36][_0xcc83[78]]])}};return _0x15d7x30}})[_0xcc83[45]](function(_0x15d7x33){if(_0x15d7x33){return db[_0xcc83[56]][_0xcc83[80]]({where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}})}})[_0xcc83[45]](function(_0x15d7x32){if(_0x15d7x32){_0x15d7x31= _0x15d7x32;return _0x15d7x31[_0xcc83[89]](_0x15d7x30,{penalty:_0x15d7x28[_0xcc83[82]][_0xcc83[88]]})}})[_0xcc83[45]](function(_0x15d7x18){if(_0x15d7x18){return _0x15d7x31[_0xcc83[86]](_0x15d7x28[_0xcc83[82]][_0xcc83[87]])}})[_0xcc83[45]](handleEntityNotFound(_0x15d7x15,null,_0xcc83[86]))[_0xcc83[45]](respondWithStatusCode(_0x15d7x15,null,_0xcc83[86]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[86]))};exports[_0xcc83[94]]= function(_0x15d7x28,_0x15d7x15,_0x15d7x2c){var _0x15d7x30=[];var _0x15d7x31;return db[_0xcc83[84]][_0xcc83[93]]({where:{id:_0x15d7x28[_0xcc83[58]][_0xcc83[87]]},attributes:[_0xcc83[78]],include:[{model:db[_0xcc83[92]],as:_0xcc83[90],attributes:[_0xcc83[78]],raw:true}]})[_0xcc83[45]](function(_0x15d7x34){if(_0x15d7x34){for(var _0x15d7x35=0;_0x15d7x35< _0x15d7x34[_0xcc83[63]];_0x15d7x35+= 1){for(var _0x15d7x36=0;_0x15d7x36< _0x15d7x34[_0x15d7x35][_0xcc83[90]][_0xcc83[63]];_0x15d7x36+= 1){_0x15d7x30= _[_0xcc83[91]](_0x15d7x30,[_0x15d7x34[_0x15d7x35][_0xcc83[90]][_0x15d7x36][_0xcc83[78]]])}};return _0x15d7x30}})[_0xcc83[45]](function(_0x15d7x33){if(_0x15d7x33){return db[_0xcc83[56]][_0xcc83[80]]({where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}})}})[_0xcc83[45]](function(_0x15d7x32){if(_0x15d7x32){_0x15d7x31= _0x15d7x32;return _0x15d7x31[_0xcc83[95]](_0x15d7x30)}})[_0xcc83[45]](function(_0x15d7x18){if(_0x15d7x31){return _0x15d7x31[_0xcc83[94]](_0x15d7x28[_0xcc83[58]][_0xcc83[87]])}})[_0xcc83[45]](handleEntityNotFound(_0x15d7x15,null,_0xcc83[94]))[_0xcc83[45]](respondWithStatusCode(_0x15d7x15,null,_0xcc83[94]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[94]))};exports[_0xcc83[89]]= function(_0x15d7x28,_0x15d7x15,_0x15d7x2c){return db[_0xcc83[56]][_0xcc83[80]]({where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}})[_0xcc83[45]](handleEntityNotFound(_0x15d7x15,null,_0xcc83[89]))[_0xcc83[45]](function(_0x15d7x18){if(_0x15d7x18){return _0x15d7x18[_0xcc83[89]](_0x15d7x28[_0xcc83[82]][_0xcc83[87]],_[_0xcc83[96]](_0x15d7x28[_0xcc83[82]],[_0xcc83[87],_0xcc83[78]])|| {})};return null})[_0xcc83[45]](respondWithResult(_0x15d7x15,null,_0xcc83[89]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[89]))};exports[_0xcc83[95]]= function(_0x15d7x28,_0x15d7x15,_0x15d7x2c){var _0x15d7x2f;return db[_0xcc83[56]][_0xcc83[80]]({where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}})[_0xcc83[45]](handleEntityNotFound(_0x15d7x15,null,_0xcc83[95]))[_0xcc83[45]](function(_0x15d7x18){if(_0x15d7x18){return _0x15d7x18[_0xcc83[95]](_0x15d7x28[_0xcc83[58]][_0xcc83[87]])}})[_0xcc83[45]](respondWithStatusCode(_0x15d7x15,null,_0xcc83[95]))[_0xcc83[75]](handleError(_0x15d7x15,null,_0xcc83[95]))};exports[_0xcc83[97]]= function(_0x15d7x28,_0x15d7x18,_0x15d7x2c){var _0x15d7x1b={};var _0x15d7x29={};var _0x15d7x2d;var _0x15d7x1c;return db[_0xcc83[56]][_0xcc83[85]]({where:{id:_0x15d7x28[_0xcc83[79]][_0xcc83[78]]}})[_0xcc83[45]](handleEntityNotFound(_0x15d7x18,null,_0xcc83[97]))[_0xcc83[45]](function(_0x15d7x18){if(_0x15d7x18){_0x15d7x2d= _0x15d7x18;_0x15d7x29[_0xcc83[54]]= _[_0xcc83[57]](db[_0xcc83[92]][_0xcc83[55]]);_0x15d7x29[_0xcc83[58]]= _[_0xcc83[57]](_0x15d7x28[_0xcc83[58]]);_0x15d7x29[_0xcc83[59]]= _[_0xcc83[60]](_0x15d7x29[_0xcc83[54]],_0x15d7x29[_0xcc83[58]]);_0x15d7x1b[_0xcc83[61]]= _[_0xcc83[60]](_0x15d7x29[_0xcc83[54]],qs[_0xcc83[62]](_0x15d7x28[_0xcc83[58]][_0xcc83[62]]));_0x15d7x1b[_0xcc83[61]]= (_0x15d7x1b[_0xcc83[61]][_0xcc83[63]])?_0x15d7x1b[_0xcc83[61]]:_0x15d7x29[_0xcc83[54]];_0x15d7x1b[_0xcc83[66]]= qs[_0xcc83[67]](_0x15d7x28[_0xcc83[58]][_0xcc83[67]]);_0x15d7x1b[_0xcc83[68]]= qs[_0xcc83[59]](_[_0xcc83[69]](_0x15d7x28[_0xcc83[58]],_0x15d7x29[_0xcc83[59]]));if(_0x15d7x28[_0xcc83[58]][_0xcc83[70]]){_0x15d7x1b[_0xcc83[68]]= _[_0xcc83[73]](_0x15d7x1b[_0xcc83[68]],{$or:_[_0xcc83[72]](_0x15d7x1b[_0xcc83[61]],function(_0x15d7x2a){var _0x15d7x2b={};_0x15d7x2b[_0x15d7x2a]= {$like:_0xcc83[71]+ _0x15d7x28[_0xcc83[58]][_0xcc83[70]]+ _0xcc83[71]};return _0x15d7x2b})})};_0x15d7x1b= _[_0xcc83[73]]({},_0x15d7x1b,_0x15d7x28[_0xcc83[74]]);return _0x15d7x2d[_0xcc83[97]](_0x15d7x1b)}})[_0xcc83[45]](function(_0x15d7x2f){if(_0x15d7x2f){_0x15d7x1c= _0x15d7x2f[_0xcc83[63]];if(!_0x15d7x28[_0xcc83[58]][_0xcc83[65]](_0xcc83[64])){_0x15d7x1b[_0xcc83[35]]= qs[_0xcc83[35]](_0x15d7x28[_0xcc83[58]][_0xcc83[35]]);_0x15d7x1b[_0xcc83[34]]= qs[_0xcc83[34]](_0x15d7x28[_0xcc83[58]][_0xcc83[34]])};return _0x15d7x2d[_0xcc83[97]](_0x15d7x1b)}})[_0xcc83[45]](function(_0x15d7x2e){return _0x15d7x2e?{count:_0x15d7x1c,rows:_0x15d7x2e}:null})[_0xcc83[45]](respondWithResult(_0x15d7x18,null,_0xcc83[97]))[_0xcc83[75]](handleError(_0x15d7x18,null,_0xcc83[97]))}
\ No newline at end of file
index a100ba8..9804baa 100644 (file)
@@ -1 +1 @@
-var _0x6223=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x51\x75\x65\x75\x65","\x73\x6D\x73\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x6223[0];var _=require(_0x6223[1]);var util=require(_0x6223[2]);var logger=require(_0x6223[4])(_0x6223[3]);var attributes=require(_0x6223[5]);module[_0x6223[6]]= function(_0x4b5bx5,_0x4b5bx6){return _0x4b5bx5[_0x6223[9]](_0x6223[7],attributes,{tableName:_0x6223[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xd034=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x51\x75\x65\x75\x65","\x73\x6D\x73\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xd034[0];var _=require(_0xd034[1]);var util=require(_0xd034[2]);var logger=require(_0xd034[4])(_0xd034[3]);var attributes=require(_0xd034[5]);module[_0xd034[6]]= function(_0xd379x5,_0xd379x6){return _0xd379x5[_0xd034[9]](_0xd034[7],attributes,{tableName:_0xd034[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5739cbb..a1e1e5b 100644 (file)
@@ -1 +1 @@
-var _0xd43a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd43a[0];var _=require(_0xd43a[1]);var util=require(_0xd43a[2]);var moment=require(_0xd43a[3]);var BPromise=require(_0xd43a[4]);var db=require(_0xd43a[6])[_0xd43a[5]];var utils=require(_0xd43a[7]);var logger=require(_0xd43a[9])(_0xd43a[8]);var jayson=require(_0xd43a[10]);var client=jayson[_0xd43a[12]][_0xd43a[11]]({port:9002});function respondWithRpcPromise(_0xbb50xb,_0xbb50xc,_0xbb50xd){return  new BPromise(function(_0xbb50xe,_0xbb50xf){return client[_0xd43a[25]](_0xbb50xb,_0xbb50xd)[_0xd43a[24]](function(_0xbb50x11){logger[_0xd43a[17]](_0xd43a[13],_0xbb50xc,_0xd43a[16]);logger[_0xd43a[20]](_0xd43a[18],_0xbb50xc,_0xd43a[16],JSON[_0xd43a[19]](_0xbb50x11));if(_0xbb50x11[_0xd43a[14]]){if(_0xbb50x11[_0xd43a[14]][_0xd43a[21]]=== 500){logger[_0xd43a[14]](_0xd43a[13],_0xbb50xc,_0xbb50x11[_0xd43a[14]][_0xd43a[22]]);return _0xbb50xf(_0xbb50x11[_0xd43a[14]][_0xd43a[22]])};logger[_0xd43a[14]](_0xd43a[13],_0xbb50xc,_0xbb50x11[_0xd43a[14]][_0xd43a[22]]);return _0xbb50xe(_0xbb50x11[_0xd43a[14]][_0xd43a[22]])}else {logger[_0xd43a[17]](_0xd43a[13],_0xbb50xc,_0xd43a[16]);_0xbb50xe(_0xbb50x11[_0xd43a[23]][_0xd43a[22]])}})[_0xd43a[15]](function(_0xbb50x10){logger[_0xd43a[14]](_0xd43a[13],_0xbb50xc,_0xbb50x10);_0xbb50xf(_0xbb50x10)})})}
\ No newline at end of file
+var _0xf9b2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xf9b2[0];var _=require(_0xf9b2[1]);var util=require(_0xf9b2[2]);var moment=require(_0xf9b2[3]);var BPromise=require(_0xf9b2[4]);var db=require(_0xf9b2[6])[_0xf9b2[5]];var utils=require(_0xf9b2[7]);var logger=require(_0xf9b2[9])(_0xf9b2[8]);var jayson=require(_0xf9b2[10]);var client=jayson[_0xf9b2[12]][_0xf9b2[11]]({port:9002});function respondWithRpcPromise(_0x1d80xb,_0x1d80xc,_0x1d80xd){return  new BPromise(function(_0x1d80xe,_0x1d80xf){return client[_0xf9b2[25]](_0x1d80xb,_0x1d80xd)[_0xf9b2[24]](function(_0x1d80x11){logger[_0xf9b2[17]](_0xf9b2[13],_0x1d80xc,_0xf9b2[16]);logger[_0xf9b2[20]](_0xf9b2[18],_0x1d80xc,_0xf9b2[16],JSON[_0xf9b2[19]](_0x1d80x11));if(_0x1d80x11[_0xf9b2[14]]){if(_0x1d80x11[_0xf9b2[14]][_0xf9b2[21]]=== 500){logger[_0xf9b2[14]](_0xf9b2[13],_0x1d80xc,_0x1d80x11[_0xf9b2[14]][_0xf9b2[22]]);return _0x1d80xf(_0x1d80x11[_0xf9b2[14]][_0xf9b2[22]])};logger[_0xf9b2[14]](_0xf9b2[13],_0x1d80xc,_0x1d80x11[_0xf9b2[14]][_0xf9b2[22]]);return _0x1d80xe(_0x1d80x11[_0xf9b2[14]][_0xf9b2[22]])}else {logger[_0xf9b2[17]](_0xf9b2[13],_0x1d80xc,_0xf9b2[16]);_0x1d80xe(_0x1d80x11[_0xf9b2[23]][_0xf9b2[22]])}})[_0xf9b2[15]](function(_0x1d80x10){logger[_0xf9b2[14]](_0xf9b2[13],_0x1d80xc,_0x1d80x10);_0x1d80xf(_0x1d80x10)})})}
\ No newline at end of file
index becd42b..412c1dd 100644 (file)
@@ -1 +1 @@
-var _0x1faf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1faf[0];var multer=require(_0x1faf[1]);var util=require(_0x1faf[2]);var path=require(_0x1faf[3]);var express=require(_0x1faf[4]);var router=express.Router();var auth=require(_0x1faf[5]);var config=require(_0x1faf[6]);var controller=require(_0x1faf[7]);router[_0x1faf[11]](_0x1faf[8],auth[_0x1faf[9]](),controller[_0x1faf[10]]);router[_0x1faf[11]](_0x1faf[12],auth[_0x1faf[9]](),controller[_0x1faf[13]]);router[_0x1faf[15]](_0x1faf[8],auth[_0x1faf[9]](),controller[_0x1faf[14]]);router[_0x1faf[17]](_0x1faf[12],auth[_0x1faf[9]](),controller[_0x1faf[16]]);router[_0x1faf[19]](_0x1faf[12],auth[_0x1faf[9]](),controller[_0x1faf[18]]);module[_0x1faf[20]]= router
\ No newline at end of file
+var _0x6652=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x6652[0];var multer=require(_0x6652[1]);var util=require(_0x6652[2]);var path=require(_0x6652[3]);var express=require(_0x6652[4]);var router=express.Router();var auth=require(_0x6652[5]);var config=require(_0x6652[6]);var controller=require(_0x6652[7]);router[_0x6652[11]](_0x6652[8],auth[_0x6652[9]](),controller[_0x6652[10]]);router[_0x6652[11]](_0x6652[12],auth[_0x6652[9]](),controller[_0x6652[13]]);router[_0x6652[15]](_0x6652[8],auth[_0x6652[9]](),controller[_0x6652[14]]);router[_0x6652[17]](_0x6652[12],auth[_0x6652[9]](),controller[_0x6652[16]]);router[_0x6652[19]](_0x6652[12],auth[_0x6652[9]](),controller[_0x6652[18]]);module[_0x6652[20]]= router
\ No newline at end of file
index 6b62f32..419162f 100644 (file)
@@ -1 +1 @@
-var _0xca0d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0xca0d[0];var Sequelize=require(_0xca0d[1]);var moment=require(_0xca0d[2]);module[_0xca0d[3]]= {uniqueid:{type:Sequelize[_0xca0d[4]]},timeslot:{type:Sequelize[_0xca0d[5]]},from:{type:Sequelize[_0xca0d[4]]},accountid:{type:Sequelize[_0xca0d[4]]},accountname:{type:Sequelize[_0xca0d[4]]},accountnumber:{type:Sequelize[_0xca0d[4]]},application:{type:Sequelize[_0xca0d[4]]},memberid:{type:Sequelize[_0xca0d[5]]},membername:{type:Sequelize[_0xca0d[4]]},queue:{type:Sequelize[_0xca0d[5]]},queuename:{type:Sequelize[_0xca0d[4]]},roomid:{type:Sequelize[_0xca0d[5]]},messageid:{type:Sequelize[_0xca0d[5]]},reason:{type:Sequelize[_0xca0d[4]],defaultValue:_0xca0d[6]},connectid:{type:Sequelize[_0xca0d[4]],unique:_0xca0d[7],set:function(_0xe9a5x3){this[_0xca0d[8]](_0xca0d[7],_0xe9a5x3);this[_0xca0d[8]](_0xca0d[9],_0xca0d[10]);this[_0xca0d[8]](_0xca0d[11],moment()[_0xca0d[13]](_0xca0d[12]))}},calledAt:{type:Sequelize[_0xca0d[14]]},rejectedAt:{type:Sequelize[_0xca0d[14]],set:function(_0xe9a5x4){this[_0xca0d[8]](_0xca0d[15],_0xe9a5x4);this[_0xca0d[8]](_0xca0d[9],_0xca0d[16])}},connectedAt:{type:Sequelize[_0xca0d[14]]}}
\ No newline at end of file
+var _0x3cb0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x63\x61\x6C\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x64","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x44\x41\x54\x45","\x72\x65\x6A\x65\x63\x74\x65\x64\x41\x74","\x72\x65\x6A\x65\x63\x74\x65\x64"];_0x3cb0[0];var Sequelize=require(_0x3cb0[1]);var moment=require(_0x3cb0[2]);module[_0x3cb0[3]]= {uniqueid:{type:Sequelize[_0x3cb0[4]]},timeslot:{type:Sequelize[_0x3cb0[5]]},from:{type:Sequelize[_0x3cb0[4]]},accountid:{type:Sequelize[_0x3cb0[4]]},accountname:{type:Sequelize[_0x3cb0[4]]},accountnumber:{type:Sequelize[_0x3cb0[4]]},application:{type:Sequelize[_0x3cb0[4]]},memberid:{type:Sequelize[_0x3cb0[5]]},membername:{type:Sequelize[_0x3cb0[4]]},queue:{type:Sequelize[_0x3cb0[5]]},queuename:{type:Sequelize[_0x3cb0[4]]},roomid:{type:Sequelize[_0x3cb0[5]]},messageid:{type:Sequelize[_0x3cb0[5]]},reason:{type:Sequelize[_0x3cb0[4]],defaultValue:_0x3cb0[6]},connectid:{type:Sequelize[_0x3cb0[4]],unique:_0x3cb0[7],set:function(_0x6c0cx3){this[_0x3cb0[8]](_0x3cb0[7],_0x6c0cx3);this[_0x3cb0[8]](_0x3cb0[9],_0x3cb0[10]);this[_0x3cb0[8]](_0x3cb0[11],moment()[_0x3cb0[13]](_0x3cb0[12]))}},calledAt:{type:Sequelize[_0x3cb0[14]]},rejectedAt:{type:Sequelize[_0x3cb0[14]],set:function(_0x6c0cx4){this[_0x3cb0[8]](_0x3cb0[15],_0x6c0cx4);this[_0x3cb0[8]](_0x3cb0[9],_0x3cb0[16])}},connectedAt:{type:Sequelize[_0x3cb0[14]]}}
\ No newline at end of file
index 41ba664..83af7c0 100644 (file)
@@ -1 +1 @@
-var _0xfcce=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xfcce[0];var jsonpatch=require(_0xfcce[1]);var rp=require(_0xfcce[2]);var moment=require(_0xfcce[3]);var BPromise=require(_0xfcce[4]);var util=require(_0xfcce[5]);var path=require(_0xfcce[6]);var sox=require(_0xfcce[7]);var ejs=require(_0xfcce[8]);var fs=require(_0xfcce[9]);var _=require(_0xfcce[10]);var squel=require(_0xfcce[11]);var crypto=require(_0xfcce[12]);var jsforce=require(_0xfcce[13]);var toCsv=require(_0xfcce[14]);var qs=require(_0xfcce[15]);var logger=require(_0xfcce[17])(_0xfcce[16]);var utils=require(_0xfcce[18]);var config=require(_0xfcce[19]);var db=require(_0xfcce[21])[_0xfcce[20]];function respondWithStatusCode(_0xc499x15,_0xc499x16,_0xc499x17){_0xc499x16= _0xc499x16|| 204;return function(_0xc499x18){if(_0xc499x18){logger[_0xfcce[24]](_0xfcce[22],_0xc499x17,_0xc499x16,_0xfcce[23]);logger[_0xfcce[26]](_0xfcce[25],_0xc499x17,_0xc499x16,_0xfcce[23]);return _0xc499x15[_0xfcce[27]](_0xc499x16)};return _0xc499x15[_0xfcce[29]](304)[_0xfcce[28]]()}}function respondWithResult(_0xc499x15,_0xc499x16,_0xc499x17){_0xc499x16= _0xc499x16|| 200;return function(_0xc499x18){if(_0xc499x18){logger[_0xfcce[24]](_0xfcce[22],_0xc499x17,_0xc499x16,_0xfcce[30]);logger[_0xfcce[26]](_0xfcce[25],_0xc499x17,_0xc499x16,_0xfcce[30],JSON[_0xfcce[31]](_0xc499x18));return _0xc499x15[_0xfcce[29]](_0xc499x16)[_0xfcce[32]](_0xc499x18)};return _0xc499x15[_0xfcce[29]](304)[_0xfcce[28]]()}}function respondWithFilteredResult(_0xc499x15,_0xc499x1b,_0xc499x17){return function(_0xc499x18){if(_0xc499x18){var _0xc499x1c=_0xc499x18[_0xfcce[33]],_0xc499x1d=_0xc499x1b[_0xfcce[34]],_0xc499x1e=_0xc499x1b[_0xfcce[34]]+ _0xc499x1b[_0xfcce[35]],_0xc499x16;if(_0xc499x1e>= _0xc499x1c){_0xc499x1e= _0xc499x1c;_0xc499x16= 200}else {_0xc499x16= 206};_0xc499x15[_0xfcce[29]](_0xc499x16);logger[_0xfcce[24]](_0xfcce[22],_0xc499x17,_0xc499x16,_0xfcce[36]);logger[_0xfcce[26]](_0xfcce[25],_0xc499x17,_0xc499x16,_0xfcce[30],JSON[_0xfcce[31]](_0xc499x18));return _0xc499x15[_0xfcce[40]](_0xfcce[37],_0xc499x1d+ _0xfcce[38]+ _0xc499x1e+ _0xfcce[39]+ _0xc499x1c)[_0xfcce[32]](_0xc499x18)};return null}}function patchUpdates(_0xc499x20){return function(_0xc499x18){try{jsonpatch[_0xfcce[41]](_0xc499x18,_0xc499x20,true)}catch(err){return BPromise[_0xfcce[42]](err)};return _0xc499x18[_0xfcce[43]]()}}function saveUpdates(_0xc499x22,_0xc499x16,_0xc499x17){return function(_0xc499x18){if(_0xc499x18){return _0xc499x18[_0xfcce[46]](_0xc499x22)[_0xfcce[45]](function(_0xc499x23){logger[_0xfcce[24]](_0xfcce[22],_0xc499x17,_0xc499x16,_0xfcce[44]);logger[_0xfcce[26]](_0xfcce[25],_0xc499x17,_0xc499x16,_0xfcce[44],JSON[_0xfcce[31]](_0xc499x18));return _0xc499x23})};return null}}function removeEntity(_0xc499x15,_0xc499x16,_0xc499x17){return function(_0xc499x18){if(_0xc499x18){return _0xc499x18[_0xfcce[48]]()[_0xfcce[45]](function(){logger[_0xfcce[24]](_0xfcce[22],_0xc499x17,_0xc499x16,_0xfcce[47]);logger[_0xfcce[26]](_0xfcce[25],_0xc499x17,_0xc499x16,_0xfcce[47],JSON[_0xfcce[31]](_0xc499x18));_0xc499x15[_0xfcce[29]](204)[_0xfcce[28]]()})}}}function handleEntityNotFound(_0xc499x15,_0xc499x16,_0xc499x17){return function(_0xc499x18){if(!_0xc499x18){logger[_0xfcce[50]](_0xfcce[22],_0xc499x17,404,_0xfcce[49]);_0xc499x15[_0xfcce[29]](404)[_0xfcce[28]]();return null};return _0xc499x18}}function handleError(_0xc499x15,_0xc499x16,_0xc499x17){_0xc499x16= _0xc499x16|| 500;return function(_0xc499x27){logger[_0xfcce[50]](_0xfcce[22],_0xc499x17,_0xc499x16,JSON[_0xfcce[31]](_0xc499x27));delete _0xc499x27[_0xfcce[51]];_0xc499x15[_0xfcce[29]](_0xc499x16)[_0xfcce[52]](_0xc499x27)}}exports[_0xfcce[53]]= function(_0xc499x28,_0xc499x15){var _0xc499x1b={},_0xc499x29={};_0xc499x29[_0xfcce[54]]= _[_0xfcce[57]](db[_0xfcce[56]][_0xfcce[55]]);_0xc499x29[_0xfcce[58]]= _[_0xfcce[57]](_0xc499x28[_0xfcce[58]]);_0xc499x29[_0xfcce[59]]= _[_0xfcce[60]](_0xc499x29[_0xfcce[54]],_0xc499x29[_0xfcce[58]]);_0xc499x1b[_0xfcce[61]]= _[_0xfcce[60]](_0xc499x29[_0xfcce[54]],qs[_0xfcce[62]](_0xc499x28[_0xfcce[58]][_0xfcce[62]]));_0xc499x1b[_0xfcce[61]]= (_0xc499x1b[_0xfcce[61]][_0xfcce[63]])?_0xc499x1b[_0xfcce[61]]:_0xc499x29[_0xfcce[54]];if(!_0xc499x28[_0xfcce[58]][_0xfcce[65]](_0xfcce[64])){_0xc499x1b[_0xfcce[35]]= qs[_0xfcce[35]](_0xc499x28[_0xfcce[58]][_0xfcce[35]]);_0xc499x1b[_0xfcce[34]]= qs[_0xfcce[34]](_0xc499x28[_0xfcce[58]][_0xfcce[34]])};_0xc499x1b[_0xfcce[66]]= qs[_0xfcce[67]](_0xc499x28[_0xfcce[58]][_0xfcce[67]]);_0xc499x1b[_0xfcce[68]]= qs[_0xfcce[59]](_[_0xfcce[69]](_0xc499x28[_0xfcce[58]],_0xc499x29[_0xfcce[59]]));if(_0xc499x28[_0xfcce[58]][_0xfcce[70]]){_0xc499x1b[_0xfcce[68]]= _[_0xfcce[73]](_0xc499x1b[_0xfcce[68]],{$or:_[_0xfcce[72]](_0xc499x1b[_0xfcce[61]],function(_0xc499x2a){var _0xc499x2b={};_0xc499x2b[_0xc499x2a]= {$like:_0xfcce[71]+ _0xc499x28[_0xfcce[58]][_0xfcce[70]]+ _0xfcce[71]};return _0xc499x2b})})};_0xc499x1b= _[_0xfcce[73]]({},_0xc499x1b,_0xc499x28[_0xfcce[74]]);return db[_0xfcce[56]][_0xfcce[76]](_0xc499x1b)[_0xfcce[45]](respondWithFilteredResult(_0xc499x15,_0xc499x1b,_0xfcce[53]))[_0xfcce[75]](handleError(_0xc499x15,null,_0xfcce[53]))};exports[_0xfcce[77]]= function(_0xc499x28,_0xc499x15){var _0xc499x1b={raw:true,where:{id:_0xc499x28[_0xfcce[79]][_0xfcce[78]]}},_0xc499x29={};_0xc499x29[_0xfcce[54]]= _[_0xfcce[57]](db[_0xfcce[56]][_0xfcce[55]]);_0xc499x29[_0xfcce[58]]= _[_0xfcce[57]](_0xc499x28[_0xfcce[58]]);_0xc499x29[_0xfcce[59]]= _[_0xfcce[60]](_0xc499x29[_0xfcce[54]],_0xc499x29[_0xfcce[58]]);_0xc499x1b[_0xfcce[61]]= _[_0xfcce[60]](_0xc499x29[_0xfcce[54]],qs[_0xfcce[62]](_0xc499x28[_0xfcce[58]][_0xfcce[62]]));_0xc499x1b[_0xfcce[61]]= (_0xc499x1b[_0xfcce[61]][_0xfcce[63]])?_0xc499x1b[_0xfcce[61]]:_0xc499x29[_0xfcce[54]];_0xc499x1b= _[_0xfcce[73]]({},_0xc499x1b,_0xc499x28[_0xfcce[74]]);return db[_0xfcce[56]][_0xfcce[80]](_0xc499x1b)[_0xfcce[45]](handleEntityNotFound(_0xc499x15,null,_0xfcce[77]))[_0xfcce[45]](respondWithResult(_0xc499x15,null,_0xfcce[77]))[_0xfcce[75]](handleError(_0xc499x15,null,_0xfcce[77]))};exports[_0xfcce[81]]= function(_0xc499x28,_0xc499x15){return db[_0xfcce[56]][_0xfcce[81]](_0xc499x28[_0xfcce[82]],{})[_0xfcce[45]](respondWithResult(_0xc499x15,201,_0xfcce[81]))[_0xfcce[75]](handleError(_0xc499x15,null,_0xfcce[81]))};exports[_0xfcce[46]]= function(_0xc499x28,_0xc499x15){if(_0xc499x28[_0xfcce[82]][_0xfcce[78]]){delete _0xc499x28[_0xfcce[82]][_0xfcce[78]]};return db[_0xfcce[56]][_0xfcce[80]]({where:{id:_0xc499x28[_0xfcce[79]][_0xfcce[78]]}})[_0xfcce[45]](handleEntityNotFound(_0xc499x15,null,_0xfcce[46]))[_0xfcce[45]](saveUpdates(_0xc499x28[_0xfcce[82]],null,_0xfcce[46]))[_0xfcce[45]](respondWithResult(_0xc499x15,null,_0xfcce[46]))[_0xfcce[75]](handleError(_0xc499x15,null,_0xfcce[46]))};exports[_0xfcce[48]]= function(_0xc499x28,_0xc499x15){return db[_0xfcce[56]][_0xfcce[80]]({where:{id:_0xc499x28[_0xfcce[79]][_0xfcce[78]]}})[_0xfcce[45]](handleEntityNotFound(_0xc499x15,null,_0xfcce[48]))[_0xfcce[45]](removeEntity(_0xc499x15,null,_0xfcce[48]))[_0xfcce[75]](handleError(_0xc499x15,null,_0xfcce[48]))}
\ No newline at end of file
+var _0xb8cf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xb8cf[0];var jsonpatch=require(_0xb8cf[1]);var rp=require(_0xb8cf[2]);var moment=require(_0xb8cf[3]);var BPromise=require(_0xb8cf[4]);var util=require(_0xb8cf[5]);var path=require(_0xb8cf[6]);var sox=require(_0xb8cf[7]);var ejs=require(_0xb8cf[8]);var fs=require(_0xb8cf[9]);var _=require(_0xb8cf[10]);var squel=require(_0xb8cf[11]);var crypto=require(_0xb8cf[12]);var jsforce=require(_0xb8cf[13]);var toCsv=require(_0xb8cf[14]);var qs=require(_0xb8cf[15]);var logger=require(_0xb8cf[17])(_0xb8cf[16]);var utils=require(_0xb8cf[18]);var config=require(_0xb8cf[19]);var db=require(_0xb8cf[21])[_0xb8cf[20]];function respondWithStatusCode(_0x41f6x15,_0x41f6x16,_0x41f6x17){_0x41f6x16= _0x41f6x16|| 204;return function(_0x41f6x18){if(_0x41f6x18){logger[_0xb8cf[24]](_0xb8cf[22],_0x41f6x17,_0x41f6x16,_0xb8cf[23]);logger[_0xb8cf[26]](_0xb8cf[25],_0x41f6x17,_0x41f6x16,_0xb8cf[23]);return _0x41f6x15[_0xb8cf[27]](_0x41f6x16)};return _0x41f6x15[_0xb8cf[29]](304)[_0xb8cf[28]]()}}function respondWithResult(_0x41f6x15,_0x41f6x16,_0x41f6x17){_0x41f6x16= _0x41f6x16|| 200;return function(_0x41f6x18){if(_0x41f6x18){logger[_0xb8cf[24]](_0xb8cf[22],_0x41f6x17,_0x41f6x16,_0xb8cf[30]);logger[_0xb8cf[26]](_0xb8cf[25],_0x41f6x17,_0x41f6x16,_0xb8cf[30],JSON[_0xb8cf[31]](_0x41f6x18));return _0x41f6x15[_0xb8cf[29]](_0x41f6x16)[_0xb8cf[32]](_0x41f6x18)};return _0x41f6x15[_0xb8cf[29]](304)[_0xb8cf[28]]()}}function respondWithFilteredResult(_0x41f6x15,_0x41f6x1b,_0x41f6x17){return function(_0x41f6x18){if(_0x41f6x18){var _0x41f6x1c=_0x41f6x18[_0xb8cf[33]],_0x41f6x1d=_0x41f6x1b[_0xb8cf[34]],_0x41f6x1e=_0x41f6x1b[_0xb8cf[34]]+ _0x41f6x1b[_0xb8cf[35]],_0x41f6x16;if(_0x41f6x1e>= _0x41f6x1c){_0x41f6x1e= _0x41f6x1c;_0x41f6x16= 200}else {_0x41f6x16= 206};_0x41f6x15[_0xb8cf[29]](_0x41f6x16);logger[_0xb8cf[24]](_0xb8cf[22],_0x41f6x17,_0x41f6x16,_0xb8cf[36]);logger[_0xb8cf[26]](_0xb8cf[25],_0x41f6x17,_0x41f6x16,_0xb8cf[30],JSON[_0xb8cf[31]](_0x41f6x18));return _0x41f6x15[_0xb8cf[40]](_0xb8cf[37],_0x41f6x1d+ _0xb8cf[38]+ _0x41f6x1e+ _0xb8cf[39]+ _0x41f6x1c)[_0xb8cf[32]](_0x41f6x18)};return null}}function patchUpdates(_0x41f6x20){return function(_0x41f6x18){try{jsonpatch[_0xb8cf[41]](_0x41f6x18,_0x41f6x20,true)}catch(err){return BPromise[_0xb8cf[42]](err)};return _0x41f6x18[_0xb8cf[43]]()}}function saveUpdates(_0x41f6x22,_0x41f6x16,_0x41f6x17){return function(_0x41f6x18){if(_0x41f6x18){return _0x41f6x18[_0xb8cf[46]](_0x41f6x22)[_0xb8cf[45]](function(_0x41f6x23){logger[_0xb8cf[24]](_0xb8cf[22],_0x41f6x17,_0x41f6x16,_0xb8cf[44]);logger[_0xb8cf[26]](_0xb8cf[25],_0x41f6x17,_0x41f6x16,_0xb8cf[44],JSON[_0xb8cf[31]](_0x41f6x18));return _0x41f6x23})};return null}}function removeEntity(_0x41f6x15,_0x41f6x16,_0x41f6x17){return function(_0x41f6x18){if(_0x41f6x18){return _0x41f6x18[_0xb8cf[48]]()[_0xb8cf[45]](function(){logger[_0xb8cf[24]](_0xb8cf[22],_0x41f6x17,_0x41f6x16,_0xb8cf[47]);logger[_0xb8cf[26]](_0xb8cf[25],_0x41f6x17,_0x41f6x16,_0xb8cf[47],JSON[_0xb8cf[31]](_0x41f6x18));_0x41f6x15[_0xb8cf[29]](204)[_0xb8cf[28]]()})}}}function handleEntityNotFound(_0x41f6x15,_0x41f6x16,_0x41f6x17){return function(_0x41f6x18){if(!_0x41f6x18){logger[_0xb8cf[50]](_0xb8cf[22],_0x41f6x17,404,_0xb8cf[49]);_0x41f6x15[_0xb8cf[29]](404)[_0xb8cf[28]]();return null};return _0x41f6x18}}function handleError(_0x41f6x15,_0x41f6x16,_0x41f6x17){_0x41f6x16= _0x41f6x16|| 500;return function(_0x41f6x27){logger[_0xb8cf[50]](_0xb8cf[22],_0x41f6x17,_0x41f6x16,JSON[_0xb8cf[31]](_0x41f6x27));delete _0x41f6x27[_0xb8cf[51]];_0x41f6x15[_0xb8cf[29]](_0x41f6x16)[_0xb8cf[52]](_0x41f6x27)}}exports[_0xb8cf[53]]= function(_0x41f6x28,_0x41f6x15){var _0x41f6x1b={},_0x41f6x29={};_0x41f6x29[_0xb8cf[54]]= _[_0xb8cf[57]](db[_0xb8cf[56]][_0xb8cf[55]]);_0x41f6x29[_0xb8cf[58]]= _[_0xb8cf[57]](_0x41f6x28[_0xb8cf[58]]);_0x41f6x29[_0xb8cf[59]]= _[_0xb8cf[60]](_0x41f6x29[_0xb8cf[54]],_0x41f6x29[_0xb8cf[58]]);_0x41f6x1b[_0xb8cf[61]]= _[_0xb8cf[60]](_0x41f6x29[_0xb8cf[54]],qs[_0xb8cf[62]](_0x41f6x28[_0xb8cf[58]][_0xb8cf[62]]));_0x41f6x1b[_0xb8cf[61]]= (_0x41f6x1b[_0xb8cf[61]][_0xb8cf[63]])?_0x41f6x1b[_0xb8cf[61]]:_0x41f6x29[_0xb8cf[54]];if(!_0x41f6x28[_0xb8cf[58]][_0xb8cf[65]](_0xb8cf[64])){_0x41f6x1b[_0xb8cf[35]]= qs[_0xb8cf[35]](_0x41f6x28[_0xb8cf[58]][_0xb8cf[35]]);_0x41f6x1b[_0xb8cf[34]]= qs[_0xb8cf[34]](_0x41f6x28[_0xb8cf[58]][_0xb8cf[34]])};_0x41f6x1b[_0xb8cf[66]]= qs[_0xb8cf[67]](_0x41f6x28[_0xb8cf[58]][_0xb8cf[67]]);_0x41f6x1b[_0xb8cf[68]]= qs[_0xb8cf[59]](_[_0xb8cf[69]](_0x41f6x28[_0xb8cf[58]],_0x41f6x29[_0xb8cf[59]]));if(_0x41f6x28[_0xb8cf[58]][_0xb8cf[70]]){_0x41f6x1b[_0xb8cf[68]]= _[_0xb8cf[73]](_0x41f6x1b[_0xb8cf[68]],{$or:_[_0xb8cf[72]](_0x41f6x1b[_0xb8cf[61]],function(_0x41f6x2a){var _0x41f6x2b={};_0x41f6x2b[_0x41f6x2a]= {$like:_0xb8cf[71]+ _0x41f6x28[_0xb8cf[58]][_0xb8cf[70]]+ _0xb8cf[71]};return _0x41f6x2b})})};_0x41f6x1b= _[_0xb8cf[73]]({},_0x41f6x1b,_0x41f6x28[_0xb8cf[74]]);return db[_0xb8cf[56]][_0xb8cf[76]](_0x41f6x1b)[_0xb8cf[45]](respondWithFilteredResult(_0x41f6x15,_0x41f6x1b,_0xb8cf[53]))[_0xb8cf[75]](handleError(_0x41f6x15,null,_0xb8cf[53]))};exports[_0xb8cf[77]]= function(_0x41f6x28,_0x41f6x15){var _0x41f6x1b={raw:true,where:{id:_0x41f6x28[_0xb8cf[79]][_0xb8cf[78]]}},_0x41f6x29={};_0x41f6x29[_0xb8cf[54]]= _[_0xb8cf[57]](db[_0xb8cf[56]][_0xb8cf[55]]);_0x41f6x29[_0xb8cf[58]]= _[_0xb8cf[57]](_0x41f6x28[_0xb8cf[58]]);_0x41f6x29[_0xb8cf[59]]= _[_0xb8cf[60]](_0x41f6x29[_0xb8cf[54]],_0x41f6x29[_0xb8cf[58]]);_0x41f6x1b[_0xb8cf[61]]= _[_0xb8cf[60]](_0x41f6x29[_0xb8cf[54]],qs[_0xb8cf[62]](_0x41f6x28[_0xb8cf[58]][_0xb8cf[62]]));_0x41f6x1b[_0xb8cf[61]]= (_0x41f6x1b[_0xb8cf[61]][_0xb8cf[63]])?_0x41f6x1b[_0xb8cf[61]]:_0x41f6x29[_0xb8cf[54]];_0x41f6x1b= _[_0xb8cf[73]]({},_0x41f6x1b,_0x41f6x28[_0xb8cf[74]]);return db[_0xb8cf[56]][_0xb8cf[80]](_0x41f6x1b)[_0xb8cf[45]](handleEntityNotFound(_0x41f6x15,null,_0xb8cf[77]))[_0xb8cf[45]](respondWithResult(_0x41f6x15,null,_0xb8cf[77]))[_0xb8cf[75]](handleError(_0x41f6x15,null,_0xb8cf[77]))};exports[_0xb8cf[81]]= function(_0x41f6x28,_0x41f6x15){return db[_0xb8cf[56]][_0xb8cf[81]](_0x41f6x28[_0xb8cf[82]],{})[_0xb8cf[45]](respondWithResult(_0x41f6x15,201,_0xb8cf[81]))[_0xb8cf[75]](handleError(_0x41f6x15,null,_0xb8cf[81]))};exports[_0xb8cf[46]]= function(_0x41f6x28,_0x41f6x15){if(_0x41f6x28[_0xb8cf[82]][_0xb8cf[78]]){delete _0x41f6x28[_0xb8cf[82]][_0xb8cf[78]]};return db[_0xb8cf[56]][_0xb8cf[80]]({where:{id:_0x41f6x28[_0xb8cf[79]][_0xb8cf[78]]}})[_0xb8cf[45]](handleEntityNotFound(_0x41f6x15,null,_0xb8cf[46]))[_0xb8cf[45]](saveUpdates(_0x41f6x28[_0xb8cf[82]],null,_0xb8cf[46]))[_0xb8cf[45]](respondWithResult(_0x41f6x15,null,_0xb8cf[46]))[_0xb8cf[75]](handleError(_0x41f6x15,null,_0xb8cf[46]))};exports[_0xb8cf[48]]= function(_0x41f6x28,_0x41f6x15){return db[_0xb8cf[56]][_0xb8cf[80]]({where:{id:_0x41f6x28[_0xb8cf[79]][_0xb8cf[78]]}})[_0xb8cf[45]](handleEntityNotFound(_0x41f6x15,null,_0xb8cf[48]))[_0xb8cf[45]](removeEntity(_0x41f6x15,null,_0xb8cf[48]))[_0xb8cf[75]](handleError(_0x41f6x15,null,_0xb8cf[48]))}
\ No newline at end of file
index ccaf135..b23d2f1 100644 (file)
@@ -1 +1 @@
-var _0x5600=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x73\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x5600[0];var _=require(_0x5600[1]);var util=require(_0x5600[2]);var logger=require(_0x5600[4])(_0x5600[3]);var attributes=require(_0x5600[5]);module[_0x5600[6]]= function(_0xdec6x5,_0xdec6x6){return _0xdec6x5[_0x5600[9]](_0x5600[7],attributes,{tableName:_0x5600[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x2869=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x73\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x2869[0];var _=require(_0x2869[1]);var util=require(_0x2869[2]);var logger=require(_0x2869[4])(_0x2869[3]);var attributes=require(_0x2869[5]);module[_0x2869[6]]= function(_0xa173x5,_0xa173x6){return _0xa173x5[_0x2869[9]](_0x2869[7],attributes,{tableName:_0x2869[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index f2f3314..c47518e 100644 (file)
@@ -1 +1 @@
-var _0xe01a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe01a[0];var _=require(_0xe01a[1]);var util=require(_0xe01a[2]);var moment=require(_0xe01a[3]);var BPromise=require(_0xe01a[4]);var db=require(_0xe01a[6])[_0xe01a[5]];var utils=require(_0xe01a[7]);var logger=require(_0xe01a[9])(_0xe01a[8]);var jayson=require(_0xe01a[10]);var client=jayson[_0xe01a[12]][_0xe01a[11]]({port:9002});function respondWithRpcPromise(_0x913bxb,_0x913bxc,_0x913bxd){return  new BPromise(function(_0x913bxe,_0x913bxf){return client[_0xe01a[25]](_0x913bxb,_0x913bxd)[_0xe01a[24]](function(_0x913bx11){logger[_0xe01a[17]](_0xe01a[13],_0x913bxc,_0xe01a[16]);logger[_0xe01a[20]](_0xe01a[18],_0x913bxc,_0xe01a[16],JSON[_0xe01a[19]](_0x913bx11));if(_0x913bx11[_0xe01a[14]]){if(_0x913bx11[_0xe01a[14]][_0xe01a[21]]=== 500){logger[_0xe01a[14]](_0xe01a[13],_0x913bxc,_0x913bx11[_0xe01a[14]][_0xe01a[22]]);return _0x913bxf(_0x913bx11[_0xe01a[14]][_0xe01a[22]])};logger[_0xe01a[14]](_0xe01a[13],_0x913bxc,_0x913bx11[_0xe01a[14]][_0xe01a[22]]);return _0x913bxe(_0x913bx11[_0xe01a[14]][_0xe01a[22]])}else {logger[_0xe01a[17]](_0xe01a[13],_0x913bxc,_0xe01a[16]);_0x913bxe(_0x913bx11[_0xe01a[23]][_0xe01a[22]])}})[_0xe01a[15]](function(_0x913bx10){logger[_0xe01a[14]](_0xe01a[13],_0x913bxc,_0x913bx10);_0x913bxf(_0x913bx10)})})}
\ No newline at end of file
+var _0x948e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x948e[0];var _=require(_0x948e[1]);var util=require(_0x948e[2]);var moment=require(_0x948e[3]);var BPromise=require(_0x948e[4]);var db=require(_0x948e[6])[_0x948e[5]];var utils=require(_0x948e[7]);var logger=require(_0x948e[9])(_0x948e[8]);var jayson=require(_0x948e[10]);var client=jayson[_0x948e[12]][_0x948e[11]]({port:9002});function respondWithRpcPromise(_0x465axb,_0x465axc,_0x465axd){return  new BPromise(function(_0x465axe,_0x465axf){return client[_0x948e[25]](_0x465axb,_0x465axd)[_0x948e[24]](function(_0x465ax11){logger[_0x948e[17]](_0x948e[13],_0x465axc,_0x948e[16]);logger[_0x948e[20]](_0x948e[18],_0x465axc,_0x948e[16],JSON[_0x948e[19]](_0x465ax11));if(_0x465ax11[_0x948e[14]]){if(_0x465ax11[_0x948e[14]][_0x948e[21]]=== 500){logger[_0x948e[14]](_0x948e[13],_0x465axc,_0x465ax11[_0x948e[14]][_0x948e[22]]);return _0x465axf(_0x465ax11[_0x948e[14]][_0x948e[22]])};logger[_0x948e[14]](_0x948e[13],_0x465axc,_0x465ax11[_0x948e[14]][_0x948e[22]]);return _0x465axe(_0x465ax11[_0x948e[14]][_0x948e[22]])}else {logger[_0x948e[17]](_0x948e[13],_0x465axc,_0x948e[16]);_0x465axe(_0x465ax11[_0x948e[23]][_0x948e[22]])}})[_0x948e[15]](function(_0x465ax10){logger[_0x948e[14]](_0x948e[13],_0x465axc,_0x465ax10);_0x465axf(_0x465ax10)})})}
\ No newline at end of file
index 3d5a7bb..aa52c83 100644 (file)
@@ -1 +1 @@
-var _0x4a49=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x4a49[0];var multer=require(_0x4a49[1]);var util=require(_0x4a49[2]);var path=require(_0x4a49[3]);var express=require(_0x4a49[4]);var router=express.Router();var auth=require(_0x4a49[5]);var config=require(_0x4a49[6]);var controller=require(_0x4a49[7]);router[_0x4a49[11]](_0x4a49[8],auth[_0x4a49[9]](),controller[_0x4a49[10]]);router[_0x4a49[11]](_0x4a49[12],auth[_0x4a49[9]](),controller[_0x4a49[13]]);router[_0x4a49[11]](_0x4a49[14],auth[_0x4a49[9]](),controller[_0x4a49[15]]);router[_0x4a49[17]](_0x4a49[8],auth[_0x4a49[9]](),controller[_0x4a49[16]]);router[_0x4a49[19]](_0x4a49[14],auth[_0x4a49[9]](),controller[_0x4a49[18]]);router[_0x4a49[21]](_0x4a49[14],auth[_0x4a49[9]](),controller[_0x4a49[20]]);module[_0x4a49[22]]= router
\ No newline at end of file
+var _0x220c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x220c[0];var multer=require(_0x220c[1]);var util=require(_0x220c[2]);var path=require(_0x220c[3]);var express=require(_0x220c[4]);var router=express.Router();var auth=require(_0x220c[5]);var config=require(_0x220c[6]);var controller=require(_0x220c[7]);router[_0x220c[11]](_0x220c[8],auth[_0x220c[9]](),controller[_0x220c[10]]);router[_0x220c[11]](_0x220c[12],auth[_0x220c[9]](),controller[_0x220c[13]]);router[_0x220c[11]](_0x220c[14],auth[_0x220c[9]](),controller[_0x220c[15]]);router[_0x220c[17]](_0x220c[8],auth[_0x220c[9]](),controller[_0x220c[16]]);router[_0x220c[19]](_0x220c[14],auth[_0x220c[9]](),controller[_0x220c[18]]);router[_0x220c[21]](_0x220c[14],auth[_0x220c[9]](),controller[_0x220c[20]]);module[_0x220c[22]]= router
\ No newline at end of file
index 8291796..4c0fda4 100644 (file)
@@ -1 +1 @@
-var _0x1ecd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74"];_0x1ecd[0];var Sequelize=require(_0x1ecd[1]);module[_0x1ecd[2]]= {uniqueid:{type:Sequelize[_0x1ecd[3]]},subject:{type:Sequelize[_0x1ecd[3]]},accountid:{type:Sequelize[_0x1ecd[3]]},accountname:{type:Sequelize[_0x1ecd[3]]},accountaddress:{type:Sequelize[_0x1ecd[3]]},application:{type:Sequelize[_0x1ecd[3]]},memberid:{type:Sequelize[_0x1ecd[3]]},membername:{type:Sequelize[_0x1ecd[3]]},queue:{type:Sequelize[_0x1ecd[4]]},queuename:{type:Sequelize[_0x1ecd[3]]},roomid:{type:Sequelize[_0x1ecd[4]]},fidelity:{type:Sequelize[_0x1ecd[4]],defaultValue:0},joinAt:{type:Sequelize[_0x1ecd[5]]},leaveAt:{type:Sequelize[_0x1ecd[5]]},completeAt:{type:Sequelize[_0x1ecd[5]]},complete:{type:Sequelize[_0x1ecd[6]],defaulValue:false},completeReason:{type:Sequelize.ENUM(_0x1ecd[7])},timeout:{type:Sequelize[_0x1ecd[6]],defaultValue:false},timeslot:{type:Sequelize[_0x1ecd[4]]}}
\ No newline at end of file
+var _0x475d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x42\x4F\x4F\x4C\x45\x41\x4E","\x61\x67\x65\x6E\x74"];_0x475d[0];var Sequelize=require(_0x475d[1]);module[_0x475d[2]]= {uniqueid:{type:Sequelize[_0x475d[3]]},subject:{type:Sequelize[_0x475d[3]]},accountid:{type:Sequelize[_0x475d[3]]},accountname:{type:Sequelize[_0x475d[3]]},accountaddress:{type:Sequelize[_0x475d[3]]},application:{type:Sequelize[_0x475d[3]]},memberid:{type:Sequelize[_0x475d[3]]},membername:{type:Sequelize[_0x475d[3]]},queue:{type:Sequelize[_0x475d[4]]},queuename:{type:Sequelize[_0x475d[3]]},roomid:{type:Sequelize[_0x475d[4]]},fidelity:{type:Sequelize[_0x475d[4]],defaultValue:0},joinAt:{type:Sequelize[_0x475d[5]]},leaveAt:{type:Sequelize[_0x475d[5]]},completeAt:{type:Sequelize[_0x475d[5]]},complete:{type:Sequelize[_0x475d[6]],defaulValue:false},completeReason:{type:Sequelize.ENUM(_0x475d[7])},timeout:{type:Sequelize[_0x475d[6]],defaultValue:false},timeslot:{type:Sequelize[_0x475d[4]]}}
\ No newline at end of file
index 46e8ad6..23190d5 100644 (file)
@@ -1 +1 @@
-var _0xd431=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xd431[0];var jsonpatch=require(_0xd431[1]);var rp=require(_0xd431[2]);var moment=require(_0xd431[3]);var BPromise=require(_0xd431[4]);var util=require(_0xd431[5]);var path=require(_0xd431[6]);var sox=require(_0xd431[7]);var ejs=require(_0xd431[8]);var fs=require(_0xd431[9]);var _=require(_0xd431[10]);var squel=require(_0xd431[11]);var crypto=require(_0xd431[12]);var jsforce=require(_0xd431[13]);var toCsv=require(_0xd431[14]);var qs=require(_0xd431[15]);var logger=require(_0xd431[17])(_0xd431[16]);var utils=require(_0xd431[18]);var config=require(_0xd431[19]);var db=require(_0xd431[21])[_0xd431[20]];function respondWithStatusCode(_0x732cx15,_0x732cx16,_0x732cx17){_0x732cx16= _0x732cx16|| 204;return function(_0x732cx18){if(_0x732cx18){logger[_0xd431[24]](_0xd431[22],_0x732cx17,_0x732cx16,_0xd431[23]);logger[_0xd431[26]](_0xd431[25],_0x732cx17,_0x732cx16,_0xd431[23]);return _0x732cx15[_0xd431[27]](_0x732cx16)};return _0x732cx15[_0xd431[29]](304)[_0xd431[28]]()}}function respondWithResult(_0x732cx15,_0x732cx16,_0x732cx17){_0x732cx16= _0x732cx16|| 200;return function(_0x732cx18){if(_0x732cx18){logger[_0xd431[24]](_0xd431[22],_0x732cx17,_0x732cx16,_0xd431[30]);logger[_0xd431[26]](_0xd431[25],_0x732cx17,_0x732cx16,_0xd431[30],JSON[_0xd431[31]](_0x732cx18));return _0x732cx15[_0xd431[29]](_0x732cx16)[_0xd431[32]](_0x732cx18)};return _0x732cx15[_0xd431[29]](304)[_0xd431[28]]()}}function respondWithFilteredResult(_0x732cx15,_0x732cx1b,_0x732cx17){return function(_0x732cx18){if(_0x732cx18){var _0x732cx1c=_0x732cx18[_0xd431[33]],_0x732cx1d=_0x732cx1b[_0xd431[34]],_0x732cx1e=_0x732cx1b[_0xd431[34]]+ _0x732cx1b[_0xd431[35]],_0x732cx16;if(_0x732cx1e>= _0x732cx1c){_0x732cx1e= _0x732cx1c;_0x732cx16= 200}else {_0x732cx16= 206};_0x732cx15[_0xd431[29]](_0x732cx16);logger[_0xd431[24]](_0xd431[22],_0x732cx17,_0x732cx16,_0xd431[36]);logger[_0xd431[26]](_0xd431[25],_0x732cx17,_0x732cx16,_0xd431[30],JSON[_0xd431[31]](_0x732cx18));return _0x732cx15[_0xd431[40]](_0xd431[37],_0x732cx1d+ _0xd431[38]+ _0x732cx1e+ _0xd431[39]+ _0x732cx1c)[_0xd431[32]](_0x732cx18)};return null}}function patchUpdates(_0x732cx20){return function(_0x732cx18){try{jsonpatch[_0xd431[41]](_0x732cx18,_0x732cx20,true)}catch(err){return BPromise[_0xd431[42]](err)};return _0x732cx18[_0xd431[43]]()}}function saveUpdates(_0x732cx22,_0x732cx16,_0x732cx17){return function(_0x732cx18){if(_0x732cx18){return _0x732cx18[_0xd431[46]](_0x732cx22)[_0xd431[45]](function(_0x732cx23){logger[_0xd431[24]](_0xd431[22],_0x732cx17,_0x732cx16,_0xd431[44]);logger[_0xd431[26]](_0xd431[25],_0x732cx17,_0x732cx16,_0xd431[44],JSON[_0xd431[31]](_0x732cx18));return _0x732cx23})};return null}}function removeEntity(_0x732cx15,_0x732cx16,_0x732cx17){return function(_0x732cx18){if(_0x732cx18){return _0x732cx18[_0xd431[48]]()[_0xd431[45]](function(){logger[_0xd431[24]](_0xd431[22],_0x732cx17,_0x732cx16,_0xd431[47]);logger[_0xd431[26]](_0xd431[25],_0x732cx17,_0x732cx16,_0xd431[47],JSON[_0xd431[31]](_0x732cx18));_0x732cx15[_0xd431[29]](204)[_0xd431[28]]()})}}}function handleEntityNotFound(_0x732cx15,_0x732cx16,_0x732cx17){return function(_0x732cx18){if(!_0x732cx18){logger[_0xd431[50]](_0xd431[22],_0x732cx17,404,_0xd431[49]);_0x732cx15[_0xd431[29]](404)[_0xd431[28]]();return null};return _0x732cx18}}function handleError(_0x732cx15,_0x732cx16,_0x732cx17){_0x732cx16= _0x732cx16|| 500;return function(_0x732cx27){logger[_0xd431[50]](_0xd431[22],_0x732cx17,_0x732cx16,JSON[_0xd431[31]](_0x732cx27));delete _0x732cx27[_0xd431[51]];_0x732cx15[_0xd431[29]](_0x732cx16)[_0xd431[52]](_0x732cx27)}}exports[_0xd431[53]]= function(_0x732cx28,_0x732cx15){var _0x732cx1b={raw:true},_0x732cx29={};_0x732cx29[_0xd431[54]]= _[_0xd431[57]](db[_0xd431[56]][_0xd431[55]]);_0x732cx29[_0xd431[58]]= _[_0xd431[57]](_0x732cx28[_0xd431[58]]);_0x732cx29[_0xd431[59]]= _[_0xd431[60]](_0x732cx29[_0xd431[54]],_0x732cx29[_0xd431[58]]);_0x732cx1b[_0xd431[61]]= _[_0xd431[60]](_0x732cx29[_0xd431[54]],qs[_0xd431[62]](_0x732cx28[_0xd431[58]][_0xd431[62]]));_0x732cx1b[_0xd431[61]]= (_0x732cx1b[_0xd431[61]][_0xd431[63]])?_0x732cx1b[_0xd431[61]]:_0x732cx29[_0xd431[54]];if(!_0x732cx28[_0xd431[58]][_0xd431[65]](_0xd431[64])){_0x732cx1b[_0xd431[35]]= qs[_0xd431[35]](_0x732cx28[_0xd431[58]][_0xd431[35]]);_0x732cx1b[_0xd431[34]]= qs[_0xd431[34]](_0x732cx28[_0xd431[58]][_0xd431[34]])};_0x732cx1b[_0xd431[66]]= qs[_0xd431[67]](_0x732cx28[_0xd431[58]][_0xd431[67]]);_0x732cx1b[_0xd431[68]]= qs[_0xd431[59]](_[_0xd431[69]](_0x732cx28[_0xd431[58]],_0x732cx29[_0xd431[59]]));if(_0x732cx28[_0xd431[58]][_0xd431[70]]){_0x732cx1b[_0xd431[68]]= _[_0xd431[73]](_0x732cx1b[_0xd431[68]],{$or:_[_0xd431[72]](_0x732cx1b[_0xd431[61]],function(_0x732cx2a){var _0x732cx2b={};_0x732cx2b[_0x732cx2a]= {$like:_0xd431[71]+ _0x732cx28[_0xd431[58]][_0xd431[70]]+ _0xd431[71]};return _0x732cx2b})})};_0x732cx1b= _[_0xd431[73]]({},_0x732cx1b,_0x732cx28[_0xd431[74]]);return db[_0xd431[56]][_0xd431[76]](_0x732cx1b)[_0xd431[45]](respondWithFilteredResult(_0x732cx15,_0x732cx1b,_0xd431[53]))[_0xd431[75]](handleError(_0x732cx15,null,_0xd431[53]))};exports[_0xd431[77]]= function(_0x732cx28,_0x732cx15){var _0x732cx1b={raw:true,where:{id:_0x732cx28[_0xd431[79]][_0xd431[78]]}},_0x732cx29={};_0x732cx29[_0xd431[54]]= _[_0xd431[57]](db[_0xd431[56]][_0xd431[55]]);_0x732cx29[_0xd431[58]]= _[_0xd431[57]](_0x732cx28[_0xd431[58]]);_0x732cx29[_0xd431[59]]= _[_0xd431[60]](_0x732cx29[_0xd431[54]],_0x732cx29[_0xd431[58]]);_0x732cx1b[_0xd431[61]]= _[_0xd431[60]](_0x732cx29[_0xd431[54]],qs[_0xd431[62]](_0x732cx28[_0xd431[58]][_0xd431[62]]));_0x732cx1b[_0xd431[61]]= (_0x732cx1b[_0xd431[61]][_0xd431[63]])?_0x732cx1b[_0xd431[61]]:_0x732cx29[_0xd431[54]];_0x732cx1b= _[_0xd431[73]]({},_0x732cx1b,_0x732cx28[_0xd431[74]]);return db[_0xd431[56]][_0xd431[80]](_0x732cx1b)[_0xd431[45]](handleEntityNotFound(_0x732cx15,null,_0xd431[77]))[_0xd431[45]](respondWithResult(_0x732cx15,null,_0xd431[77]))[_0xd431[75]](handleError(_0x732cx15,null,_0xd431[77]))};exports[_0xd431[81]]= function(_0x732cx28,_0x732cx15){return db[_0xd431[56]][_0xd431[81]](_0x732cx28[_0xd431[82]],{})[_0xd431[45]](respondWithResult(_0x732cx15,201,_0xd431[81]))[_0xd431[75]](handleError(_0x732cx15,null,_0xd431[81]))};exports[_0xd431[46]]= function(_0x732cx28,_0x732cx15){if(_0x732cx28[_0xd431[82]][_0xd431[78]]){delete _0x732cx28[_0xd431[82]][_0xd431[78]]};return db[_0xd431[56]][_0xd431[80]]({where:{id:_0x732cx28[_0xd431[79]][_0xd431[78]]}})[_0xd431[45]](handleEntityNotFound(_0x732cx15,null,_0xd431[46]))[_0xd431[45]](saveUpdates(_0x732cx28[_0xd431[82]],null,_0xd431[46]))[_0xd431[45]](respondWithResult(_0x732cx15,null,_0xd431[46]))[_0xd431[75]](handleError(_0x732cx15,null,_0xd431[46]))};exports[_0xd431[48]]= function(_0x732cx28,_0x732cx15){return db[_0xd431[56]][_0xd431[80]]({where:{id:_0x732cx28[_0xd431[79]][_0xd431[78]]}})[_0xd431[45]](handleEntityNotFound(_0x732cx15,null,_0xd431[48]))[_0xd431[45]](removeEntity(_0x732cx15,null,_0xd431[48]))[_0xd431[75]](handleError(_0x732cx15,null,_0xd431[48]))};exports[_0xd431[83]]= function(_0x732cx28,_0x732cx15){return db[_0xd431[56]][_0xd431[83]]()[_0xd431[45]](respondWithResult(_0x732cx15,null,_0xd431[83]))[_0xd431[75]](handleError(_0x732cx15,null,_0xd431[83]))}
\ No newline at end of file
+var _0xe63e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xe63e[0];var jsonpatch=require(_0xe63e[1]);var rp=require(_0xe63e[2]);var moment=require(_0xe63e[3]);var BPromise=require(_0xe63e[4]);var util=require(_0xe63e[5]);var path=require(_0xe63e[6]);var sox=require(_0xe63e[7]);var ejs=require(_0xe63e[8]);var fs=require(_0xe63e[9]);var _=require(_0xe63e[10]);var squel=require(_0xe63e[11]);var crypto=require(_0xe63e[12]);var jsforce=require(_0xe63e[13]);var toCsv=require(_0xe63e[14]);var qs=require(_0xe63e[15]);var logger=require(_0xe63e[17])(_0xe63e[16]);var utils=require(_0xe63e[18]);var config=require(_0xe63e[19]);var db=require(_0xe63e[21])[_0xe63e[20]];function respondWithStatusCode(_0xe3c9x15,_0xe3c9x16,_0xe3c9x17){_0xe3c9x16= _0xe3c9x16|| 204;return function(_0xe3c9x18){if(_0xe3c9x18){logger[_0xe63e[24]](_0xe63e[22],_0xe3c9x17,_0xe3c9x16,_0xe63e[23]);logger[_0xe63e[26]](_0xe63e[25],_0xe3c9x17,_0xe3c9x16,_0xe63e[23]);return _0xe3c9x15[_0xe63e[27]](_0xe3c9x16)};return _0xe3c9x15[_0xe63e[29]](304)[_0xe63e[28]]()}}function respondWithResult(_0xe3c9x15,_0xe3c9x16,_0xe3c9x17){_0xe3c9x16= _0xe3c9x16|| 200;return function(_0xe3c9x18){if(_0xe3c9x18){logger[_0xe63e[24]](_0xe63e[22],_0xe3c9x17,_0xe3c9x16,_0xe63e[30]);logger[_0xe63e[26]](_0xe63e[25],_0xe3c9x17,_0xe3c9x16,_0xe63e[30],JSON[_0xe63e[31]](_0xe3c9x18));return _0xe3c9x15[_0xe63e[29]](_0xe3c9x16)[_0xe63e[32]](_0xe3c9x18)};return _0xe3c9x15[_0xe63e[29]](304)[_0xe63e[28]]()}}function respondWithFilteredResult(_0xe3c9x15,_0xe3c9x1b,_0xe3c9x17){return function(_0xe3c9x18){if(_0xe3c9x18){var _0xe3c9x1c=_0xe3c9x18[_0xe63e[33]],_0xe3c9x1d=_0xe3c9x1b[_0xe63e[34]],_0xe3c9x1e=_0xe3c9x1b[_0xe63e[34]]+ _0xe3c9x1b[_0xe63e[35]],_0xe3c9x16;if(_0xe3c9x1e>= _0xe3c9x1c){_0xe3c9x1e= _0xe3c9x1c;_0xe3c9x16= 200}else {_0xe3c9x16= 206};_0xe3c9x15[_0xe63e[29]](_0xe3c9x16);logger[_0xe63e[24]](_0xe63e[22],_0xe3c9x17,_0xe3c9x16,_0xe63e[36]);logger[_0xe63e[26]](_0xe63e[25],_0xe3c9x17,_0xe3c9x16,_0xe63e[30],JSON[_0xe63e[31]](_0xe3c9x18));return _0xe3c9x15[_0xe63e[40]](_0xe63e[37],_0xe3c9x1d+ _0xe63e[38]+ _0xe3c9x1e+ _0xe63e[39]+ _0xe3c9x1c)[_0xe63e[32]](_0xe3c9x18)};return null}}function patchUpdates(_0xe3c9x20){return function(_0xe3c9x18){try{jsonpatch[_0xe63e[41]](_0xe3c9x18,_0xe3c9x20,true)}catch(err){return BPromise[_0xe63e[42]](err)};return _0xe3c9x18[_0xe63e[43]]()}}function saveUpdates(_0xe3c9x22,_0xe3c9x16,_0xe3c9x17){return function(_0xe3c9x18){if(_0xe3c9x18){return _0xe3c9x18[_0xe63e[46]](_0xe3c9x22)[_0xe63e[45]](function(_0xe3c9x23){logger[_0xe63e[24]](_0xe63e[22],_0xe3c9x17,_0xe3c9x16,_0xe63e[44]);logger[_0xe63e[26]](_0xe63e[25],_0xe3c9x17,_0xe3c9x16,_0xe63e[44],JSON[_0xe63e[31]](_0xe3c9x18));return _0xe3c9x23})};return null}}function removeEntity(_0xe3c9x15,_0xe3c9x16,_0xe3c9x17){return function(_0xe3c9x18){if(_0xe3c9x18){return _0xe3c9x18[_0xe63e[48]]()[_0xe63e[45]](function(){logger[_0xe63e[24]](_0xe63e[22],_0xe3c9x17,_0xe3c9x16,_0xe63e[47]);logger[_0xe63e[26]](_0xe63e[25],_0xe3c9x17,_0xe3c9x16,_0xe63e[47],JSON[_0xe63e[31]](_0xe3c9x18));_0xe3c9x15[_0xe63e[29]](204)[_0xe63e[28]]()})}}}function handleEntityNotFound(_0xe3c9x15,_0xe3c9x16,_0xe3c9x17){return function(_0xe3c9x18){if(!_0xe3c9x18){logger[_0xe63e[50]](_0xe63e[22],_0xe3c9x17,404,_0xe63e[49]);_0xe3c9x15[_0xe63e[29]](404)[_0xe63e[28]]();return null};return _0xe3c9x18}}function handleError(_0xe3c9x15,_0xe3c9x16,_0xe3c9x17){_0xe3c9x16= _0xe3c9x16|| 500;return function(_0xe3c9x27){logger[_0xe63e[50]](_0xe63e[22],_0xe3c9x17,_0xe3c9x16,JSON[_0xe63e[31]](_0xe3c9x27));delete _0xe3c9x27[_0xe63e[51]];_0xe3c9x15[_0xe63e[29]](_0xe3c9x16)[_0xe63e[52]](_0xe3c9x27)}}exports[_0xe63e[53]]= function(_0xe3c9x28,_0xe3c9x15){var _0xe3c9x1b={raw:true},_0xe3c9x29={};_0xe3c9x29[_0xe63e[54]]= _[_0xe63e[57]](db[_0xe63e[56]][_0xe63e[55]]);_0xe3c9x29[_0xe63e[58]]= _[_0xe63e[57]](_0xe3c9x28[_0xe63e[58]]);_0xe3c9x29[_0xe63e[59]]= _[_0xe63e[60]](_0xe3c9x29[_0xe63e[54]],_0xe3c9x29[_0xe63e[58]]);_0xe3c9x1b[_0xe63e[61]]= _[_0xe63e[60]](_0xe3c9x29[_0xe63e[54]],qs[_0xe63e[62]](_0xe3c9x28[_0xe63e[58]][_0xe63e[62]]));_0xe3c9x1b[_0xe63e[61]]= (_0xe3c9x1b[_0xe63e[61]][_0xe63e[63]])?_0xe3c9x1b[_0xe63e[61]]:_0xe3c9x29[_0xe63e[54]];if(!_0xe3c9x28[_0xe63e[58]][_0xe63e[65]](_0xe63e[64])){_0xe3c9x1b[_0xe63e[35]]= qs[_0xe63e[35]](_0xe3c9x28[_0xe63e[58]][_0xe63e[35]]);_0xe3c9x1b[_0xe63e[34]]= qs[_0xe63e[34]](_0xe3c9x28[_0xe63e[58]][_0xe63e[34]])};_0xe3c9x1b[_0xe63e[66]]= qs[_0xe63e[67]](_0xe3c9x28[_0xe63e[58]][_0xe63e[67]]);_0xe3c9x1b[_0xe63e[68]]= qs[_0xe63e[59]](_[_0xe63e[69]](_0xe3c9x28[_0xe63e[58]],_0xe3c9x29[_0xe63e[59]]));if(_0xe3c9x28[_0xe63e[58]][_0xe63e[70]]){_0xe3c9x1b[_0xe63e[68]]= _[_0xe63e[73]](_0xe3c9x1b[_0xe63e[68]],{$or:_[_0xe63e[72]](_0xe3c9x1b[_0xe63e[61]],function(_0xe3c9x2a){var _0xe3c9x2b={};_0xe3c9x2b[_0xe3c9x2a]= {$like:_0xe63e[71]+ _0xe3c9x28[_0xe63e[58]][_0xe63e[70]]+ _0xe63e[71]};return _0xe3c9x2b})})};_0xe3c9x1b= _[_0xe63e[73]]({},_0xe3c9x1b,_0xe3c9x28[_0xe63e[74]]);return db[_0xe63e[56]][_0xe63e[76]](_0xe3c9x1b)[_0xe63e[45]](respondWithFilteredResult(_0xe3c9x15,_0xe3c9x1b,_0xe63e[53]))[_0xe63e[75]](handleError(_0xe3c9x15,null,_0xe63e[53]))};exports[_0xe63e[77]]= function(_0xe3c9x28,_0xe3c9x15){var _0xe3c9x1b={raw:true,where:{id:_0xe3c9x28[_0xe63e[79]][_0xe63e[78]]}},_0xe3c9x29={};_0xe3c9x29[_0xe63e[54]]= _[_0xe63e[57]](db[_0xe63e[56]][_0xe63e[55]]);_0xe3c9x29[_0xe63e[58]]= _[_0xe63e[57]](_0xe3c9x28[_0xe63e[58]]);_0xe3c9x29[_0xe63e[59]]= _[_0xe63e[60]](_0xe3c9x29[_0xe63e[54]],_0xe3c9x29[_0xe63e[58]]);_0xe3c9x1b[_0xe63e[61]]= _[_0xe63e[60]](_0xe3c9x29[_0xe63e[54]],qs[_0xe63e[62]](_0xe3c9x28[_0xe63e[58]][_0xe63e[62]]));_0xe3c9x1b[_0xe63e[61]]= (_0xe3c9x1b[_0xe63e[61]][_0xe63e[63]])?_0xe3c9x1b[_0xe63e[61]]:_0xe3c9x29[_0xe63e[54]];_0xe3c9x1b= _[_0xe63e[73]]({},_0xe3c9x1b,_0xe3c9x28[_0xe63e[74]]);return db[_0xe63e[56]][_0xe63e[80]](_0xe3c9x1b)[_0xe63e[45]](handleEntityNotFound(_0xe3c9x15,null,_0xe63e[77]))[_0xe63e[45]](respondWithResult(_0xe3c9x15,null,_0xe63e[77]))[_0xe63e[75]](handleError(_0xe3c9x15,null,_0xe63e[77]))};exports[_0xe63e[81]]= function(_0xe3c9x28,_0xe3c9x15){return db[_0xe63e[56]][_0xe63e[81]](_0xe3c9x28[_0xe63e[82]],{})[_0xe63e[45]](respondWithResult(_0xe3c9x15,201,_0xe63e[81]))[_0xe63e[75]](handleError(_0xe3c9x15,null,_0xe63e[81]))};exports[_0xe63e[46]]= function(_0xe3c9x28,_0xe3c9x15){if(_0xe3c9x28[_0xe63e[82]][_0xe63e[78]]){delete _0xe3c9x28[_0xe63e[82]][_0xe63e[78]]};return db[_0xe63e[56]][_0xe63e[80]]({where:{id:_0xe3c9x28[_0xe63e[79]][_0xe63e[78]]}})[_0xe63e[45]](handleEntityNotFound(_0xe3c9x15,null,_0xe63e[46]))[_0xe63e[45]](saveUpdates(_0xe3c9x28[_0xe63e[82]],null,_0xe63e[46]))[_0xe63e[45]](respondWithResult(_0xe3c9x15,null,_0xe63e[46]))[_0xe63e[75]](handleError(_0xe3c9x15,null,_0xe63e[46]))};exports[_0xe63e[48]]= function(_0xe3c9x28,_0xe3c9x15){return db[_0xe63e[56]][_0xe63e[80]]({where:{id:_0xe3c9x28[_0xe63e[79]][_0xe63e[78]]}})[_0xe63e[45]](handleEntityNotFound(_0xe3c9x15,null,_0xe63e[48]))[_0xe63e[45]](removeEntity(_0xe3c9x15,null,_0xe63e[48]))[_0xe63e[75]](handleError(_0xe3c9x15,null,_0xe63e[48]))};exports[_0xe63e[83]]= function(_0xe3c9x28,_0xe3c9x15){return db[_0xe63e[56]][_0xe63e[83]]()[_0xe63e[45]](respondWithResult(_0xe3c9x15,null,_0xe63e[83]))[_0xe63e[75]](handleError(_0xe3c9x15,null,_0xe63e[83]))}
\ No newline at end of file
index 6872897..efd240b 100644 (file)
@@ -1 +1 @@
-var _0x1768=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x73\x6D\x73\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x1768[0];var _=require(_0x1768[1]);var util=require(_0x1768[2]);var logger=require(_0x1768[4])(_0x1768[3]);var attributes=require(_0x1768[5]);module[_0x1768[6]]= function(_0xff4ax5,_0xff4ax6){return _0xff4ax5[_0x1768[9]](_0x1768[7],attributes,{tableName:_0x1768[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x8d63=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x73\x6D\x73\x5F\x73\x65\x73\x73\x69\x6F\x6E","\x64\x65\x66\x69\x6E\x65"];_0x8d63[0];var _=require(_0x8d63[1]);var util=require(_0x8d63[2]);var logger=require(_0x8d63[4])(_0x8d63[3]);var attributes=require(_0x8d63[5]);module[_0x8d63[6]]= function(_0x53dbx5,_0x53dbx6){return _0x53dbx5[_0x8d63[9]](_0x8d63[7],attributes,{tableName:_0x8d63[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 557c2be..834287d 100644 (file)
@@ -1 +1 @@
-var _0x232b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x232b[0];var _=require(_0x232b[1]);var util=require(_0x232b[2]);var moment=require(_0x232b[3]);var BPromise=require(_0x232b[4]);var db=require(_0x232b[6])[_0x232b[5]];var utils=require(_0x232b[7]);var logger=require(_0x232b[9])(_0x232b[8]);var jayson=require(_0x232b[10]);var client=jayson[_0x232b[12]][_0x232b[11]]({port:9002});function respondWithRpcPromise(_0x27eaxb,_0x27eaxc,_0x27eaxd){return  new BPromise(function(_0x27eaxe,_0x27eaxf){return client[_0x232b[25]](_0x27eaxb,_0x27eaxd)[_0x232b[24]](function(_0x27eax11){logger[_0x232b[17]](_0x232b[13],_0x27eaxc,_0x232b[16]);logger[_0x232b[20]](_0x232b[18],_0x27eaxc,_0x232b[16],JSON[_0x232b[19]](_0x27eax11));if(_0x27eax11[_0x232b[14]]){if(_0x27eax11[_0x232b[14]][_0x232b[21]]=== 500){logger[_0x232b[14]](_0x232b[13],_0x27eaxc,_0x27eax11[_0x232b[14]][_0x232b[22]]);return _0x27eaxf(_0x27eax11[_0x232b[14]][_0x232b[22]])};logger[_0x232b[14]](_0x232b[13],_0x27eaxc,_0x27eax11[_0x232b[14]][_0x232b[22]]);return _0x27eaxe(_0x27eax11[_0x232b[14]][_0x232b[22]])}else {logger[_0x232b[17]](_0x232b[13],_0x27eaxc,_0x232b[16]);_0x27eaxe(_0x27eax11[_0x232b[23]][_0x232b[22]])}})[_0x232b[15]](function(_0x27eax10){logger[_0x232b[14]](_0x232b[13],_0x27eaxc,_0x27eax10);_0x27eaxf(_0x27eax10)})})}
\ No newline at end of file
+var _0xe292=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe292[0];var _=require(_0xe292[1]);var util=require(_0xe292[2]);var moment=require(_0xe292[3]);var BPromise=require(_0xe292[4]);var db=require(_0xe292[6])[_0xe292[5]];var utils=require(_0xe292[7]);var logger=require(_0xe292[9])(_0xe292[8]);var jayson=require(_0xe292[10]);var client=jayson[_0xe292[12]][_0xe292[11]]({port:9002});function respondWithRpcPromise(_0x7d97xb,_0x7d97xc,_0x7d97xd){return  new BPromise(function(_0x7d97xe,_0x7d97xf){return client[_0xe292[25]](_0x7d97xb,_0x7d97xd)[_0xe292[24]](function(_0x7d97x11){logger[_0xe292[17]](_0xe292[13],_0x7d97xc,_0xe292[16]);logger[_0xe292[20]](_0xe292[18],_0x7d97xc,_0xe292[16],JSON[_0xe292[19]](_0x7d97x11));if(_0x7d97x11[_0xe292[14]]){if(_0x7d97x11[_0xe292[14]][_0xe292[21]]=== 500){logger[_0xe292[14]](_0xe292[13],_0x7d97xc,_0x7d97x11[_0xe292[14]][_0xe292[22]]);return _0x7d97xf(_0x7d97x11[_0xe292[14]][_0xe292[22]])};logger[_0xe292[14]](_0xe292[13],_0x7d97xc,_0x7d97x11[_0xe292[14]][_0xe292[22]]);return _0x7d97xe(_0x7d97x11[_0xe292[14]][_0xe292[22]])}else {logger[_0xe292[17]](_0xe292[13],_0x7d97xc,_0xe292[16]);_0x7d97xe(_0x7d97x11[_0xe292[23]][_0xe292[22]])}})[_0xe292[15]](function(_0x7d97x10){logger[_0xe292[14]](_0xe292[13],_0x7d97xc,_0x7d97x10);_0x7d97xf(_0x7d97x10)})})}
\ No newline at end of file
index c1ba2ba..1bbced3 100644 (file)
@@ -1 +1 @@
-var _0xbc42=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6F\x75\x6E\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x6F\x72\x69\x67\x69\x6E\x61\x6C\x2F","\x6A\x6F\x69\x6E","\x25\x73\x2D\x25\x73\x25\x73","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x6E\x61\x6D\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x62\x61\x73\x65\x6E\x61\x6D\x65","\x6E\x6F\x77","\x66\x6F\x72\x6D\x61\x74","\x64\x69\x73\x6B\x53\x74\x6F\x72\x61\x67\x65","\x66\x69\x6C\x65","\x73\x69\x6E\x67\x6C\x65","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xbc42[0];var multer=require(_0xbc42[1]);var util=require(_0xbc42[2]);var path=require(_0xbc42[3]);var express=require(_0xbc42[4]);var router=express.Router();var auth=require(_0xbc42[5]);var config=require(_0xbc42[6]);var controller=require(_0xbc42[7]);router[_0xbc42[11]](_0xbc42[8],auth[_0xbc42[9]](),controller[_0xbc42[10]]);router[_0xbc42[11]](_0xbc42[12],auth[_0xbc42[9]](),controller[_0xbc42[13]]);router[_0xbc42[11]](_0xbc42[14],controller[_0xbc42[15]]);var upload=multer({storage:multer[_0xbc42[25]]({destination:function(_0xcfb7xa,_0xcfb7xb,_0xcfb7xc){_0xcfb7xc(null,path[_0xbc42[18]](config[_0xbc42[16]],_0xbc42[17]))},filename:function(_0xcfb7xa,_0xcfb7xb,_0xcfb7xc){_0xcfb7xc(null,util[_0xbc42[24]](_0xbc42[19],path[_0xbc42[22]](_0xcfb7xb[_0xbc42[20]],path[_0xbc42[21]](_0xcfb7xb[_0xbc42[20]])),Date[_0xbc42[23]](),path[_0xbc42[21]](_0xcfb7xb[_0xbc42[20]])))}})});router[_0xbc42[29]](_0xbc42[8],upload[_0xbc42[27]](_0xbc42[26]),controller[_0xbc42[28]]);router[_0xbc42[31]](_0xbc42[12],auth[_0xbc42[9]](),controller[_0xbc42[30]]);router[_0xbc42[32]](_0xbc42[12],auth[_0xbc42[9]](),controller[_0xbc42[32]]);module[_0xbc42[33]]= router
\ No newline at end of file
+var _0x3706=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x6F\x75\x6E\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x6F\x72\x69\x67\x69\x6E\x61\x6C\x2F","\x6A\x6F\x69\x6E","\x25\x73\x2D\x25\x73\x25\x73","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x6E\x61\x6D\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x62\x61\x73\x65\x6E\x61\x6D\x65","\x6E\x6F\x77","\x66\x6F\x72\x6D\x61\x74","\x64\x69\x73\x6B\x53\x74\x6F\x72\x61\x67\x65","\x66\x69\x6C\x65","\x73\x69\x6E\x67\x6C\x65","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3706[0];var multer=require(_0x3706[1]);var util=require(_0x3706[2]);var path=require(_0x3706[3]);var express=require(_0x3706[4]);var router=express.Router();var auth=require(_0x3706[5]);var config=require(_0x3706[6]);var controller=require(_0x3706[7]);router[_0x3706[11]](_0x3706[8],auth[_0x3706[9]](),controller[_0x3706[10]]);router[_0x3706[11]](_0x3706[12],auth[_0x3706[9]](),controller[_0x3706[13]]);router[_0x3706[11]](_0x3706[14],controller[_0x3706[15]]);var upload=multer({storage:multer[_0x3706[25]]({destination:function(_0xe1efxa,_0xe1efxb,_0xe1efxc){_0xe1efxc(null,path[_0x3706[18]](config[_0x3706[16]],_0x3706[17]))},filename:function(_0xe1efxa,_0xe1efxb,_0xe1efxc){_0xe1efxc(null,util[_0x3706[24]](_0x3706[19],path[_0x3706[22]](_0xe1efxb[_0x3706[20]],path[_0x3706[21]](_0xe1efxb[_0x3706[20]])),Date[_0x3706[23]](),path[_0x3706[21]](_0xe1efxb[_0x3706[20]])))}})});router[_0x3706[29]](_0x3706[8],upload[_0x3706[27]](_0x3706[26]),controller[_0x3706[28]]);router[_0x3706[31]](_0x3706[12],auth[_0x3706[9]](),controller[_0x3706[30]]);router[_0x3706[32]](_0x3706[12],auth[_0x3706[9]](),controller[_0x3706[32]]);module[_0x3706[33]]= router
\ No newline at end of file
index ec72af6..f1735d2 100644 (file)
@@ -1 +1 @@
-var _0x5797=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","","\x46\x4C\x4F\x41\x54","\x42\x49\x47\x49\x4E\x54","\x49\x4E\x54\x45\x47\x45\x52"];_0x5797[0];var Sequelize=require(_0x5797[1]);module[_0x5797[2]]= {name:{type:Sequelize[_0x5797[3]]},save_name:{type:Sequelize[_0x5797[3]]},display_name:{type:Sequelize[_0x5797[3]],defaultValue:_0x5797[4]},description:{type:Sequelize[_0x5797[3]]},original_format:{type:Sequelize[_0x5797[3]]},original_duration:{type:Sequelize[_0x5797[5]]},original_sampleCount:{type:Sequelize[_0x5797[6]]},original_channelCount:{type:Sequelize[_0x5797[7]]},original_bitRate:{type:Sequelize[_0x5797[6]]},original_sampleRate:{type:Sequelize[_0x5797[7]]},converted_format:{type:Sequelize[_0x5797[3]]},converted_duration:{type:Sequelize[_0x5797[5]]},converted_sampleCount:{type:Sequelize[_0x5797[6]]},converted_channelCount:{type:Sequelize[_0x5797[7]]},converted_bitRate:{type:Sequelize[_0x5797[6]]},converted_sampleRate:{type:Sequelize[_0x5797[7]]}}
\ No newline at end of file
+var _0x40ca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","","\x46\x4C\x4F\x41\x54","\x42\x49\x47\x49\x4E\x54","\x49\x4E\x54\x45\x47\x45\x52"];_0x40ca[0];var Sequelize=require(_0x40ca[1]);module[_0x40ca[2]]= {name:{type:Sequelize[_0x40ca[3]]},save_name:{type:Sequelize[_0x40ca[3]]},display_name:{type:Sequelize[_0x40ca[3]],defaultValue:_0x40ca[4]},description:{type:Sequelize[_0x40ca[3]]},original_format:{type:Sequelize[_0x40ca[3]]},original_duration:{type:Sequelize[_0x40ca[5]]},original_sampleCount:{type:Sequelize[_0x40ca[6]]},original_channelCount:{type:Sequelize[_0x40ca[7]]},original_bitRate:{type:Sequelize[_0x40ca[6]]},original_sampleRate:{type:Sequelize[_0x40ca[7]]},converted_format:{type:Sequelize[_0x40ca[3]]},converted_duration:{type:Sequelize[_0x40ca[5]]},converted_sampleCount:{type:Sequelize[_0x40ca[6]]},converted_channelCount:{type:Sequelize[_0x40ca[7]]},converted_bitRate:{type:Sequelize[_0x40ca[6]]},converted_sampleRate:{type:Sequelize[_0x40ca[7]]}}
\ No newline at end of file
index 7d2f60c..6cd1d5b 100644 (file)
@@ -1 +1 @@
-var _0x6eb3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6F\x75\x6E\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x63\x6F\x6E\x76\x65\x72\x74\x65\x64","\x73\x61\x76\x65\x5F\x6E\x61\x6D\x65","\x2E","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x66\x6F\x72\x6D\x61\x74","\x6A\x6F\x69\x6E","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x53\x6F\x75\x6E\x64\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x25\x73\x2E\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x6E\x61\x6D\x65","\x66\x69\x6C\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x62\x61\x73\x65\x6E\x61\x6D\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x77\x61\x76","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x6F\x72\x69\x67\x69\x6E\x61\x6C","\x53\x6F\x75\x6E\x64\x20\x75\x70\x6C\x6F\x61\x64\x20\x66\x69\x6C\x65\x70\x61\x74\x68\x3A\x20\x25\x73","\x53\x6F\x75\x6E\x64\x20\x75\x70\x6C\x6F\x61\x64\x20\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x3A\x20\x25\x73","\x30\x37\x37\x37","\x63\x68\x6D\x6F\x64\x53\x79\x6E\x63","\x74\x72\x61\x6E\x73\x63\x6F\x64\x65","\x6F\x6E","\x73\x72\x63","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x64\x75\x72\x61\x74\x69\x6F\x6E","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x73\x61\x6D\x70\x6C\x65\x43\x6F\x75\x6E\x74","\x73\x61\x6D\x70\x6C\x65\x43\x6F\x75\x6E\x74","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x43\x6F\x75\x6E\x74","\x63\x68\x61\x6E\x6E\x65\x6C\x43\x6F\x75\x6E\x74","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x62\x69\x74\x52\x61\x74\x65","\x62\x69\x74\x52\x61\x74\x65","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x73\x61\x6D\x70\x6C\x65\x52\x61\x74\x65","\x73\x61\x6D\x70\x6C\x65\x52\x61\x74\x65","\x64\x65\x73\x74","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x64\x75\x72\x61\x74\x69\x6F\x6E","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x73\x61\x6D\x70\x6C\x65\x43\x6F\x75\x6E\x74","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x43\x6F\x75\x6E\x74","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x62\x69\x74\x52\x61\x74\x65","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x73\x61\x6D\x70\x6C\x65\x52\x61\x74\x65","\x63\x72\x61\x74\x65","\x73\x74\x61\x72\x74","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x64\x65\x6C\x65\x74\x65","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x66\x6F\x72\x6D\x61\x74","\x75\x6E\x6C\x69\x6E\x6B\x53\x79\x6E\x63"];_0x6eb3[0];var jsonpatch=require(_0x6eb3[1]);var rp=require(_0x6eb3[2]);var moment=require(_0x6eb3[3]);var BPromise=require(_0x6eb3[4]);var util=require(_0x6eb3[5]);var path=require(_0x6eb3[6]);var sox=require(_0x6eb3[7]);var ejs=require(_0x6eb3[8]);var fs=require(_0x6eb3[9]);var _=require(_0x6eb3[10]);var squel=require(_0x6eb3[11]);var crypto=require(_0x6eb3[12]);var jsforce=require(_0x6eb3[13]);var toCsv=require(_0x6eb3[14]);var qs=require(_0x6eb3[15]);var logger=require(_0x6eb3[17])(_0x6eb3[16]);var utils=require(_0x6eb3[18]);var config=require(_0x6eb3[19]);var db=require(_0x6eb3[21])[_0x6eb3[20]];function respondWithStatusCode(_0x1e7ax15,_0x1e7ax16,_0x1e7ax17){_0x1e7ax16= _0x1e7ax16|| 204;return function(_0x1e7ax18){if(_0x1e7ax18){logger[_0x6eb3[24]](_0x6eb3[22],_0x1e7ax17,_0x1e7ax16,_0x6eb3[23]);logger[_0x6eb3[26]](_0x6eb3[25],_0x1e7ax17,_0x1e7ax16,_0x6eb3[23]);return _0x1e7ax15[_0x6eb3[27]](_0x1e7ax16)};return _0x1e7ax15[_0x6eb3[29]](304)[_0x6eb3[28]]()}}function respondWithResult(_0x1e7ax15,_0x1e7ax16,_0x1e7ax17){_0x1e7ax16= _0x1e7ax16|| 200;return function(_0x1e7ax18){if(_0x1e7ax18){logger[_0x6eb3[24]](_0x6eb3[22],_0x1e7ax17,_0x1e7ax16,_0x6eb3[30]);logger[_0x6eb3[26]](_0x6eb3[25],_0x1e7ax17,_0x1e7ax16,_0x6eb3[30],JSON[_0x6eb3[31]](_0x1e7ax18));return _0x1e7ax15[_0x6eb3[29]](_0x1e7ax16)[_0x6eb3[32]](_0x1e7ax18)};return _0x1e7ax15[_0x6eb3[29]](304)[_0x6eb3[28]]()}}function respondWithFilteredResult(_0x1e7ax15,_0x1e7ax1b,_0x1e7ax17){return function(_0x1e7ax18){if(_0x1e7ax18){var _0x1e7ax1c=_0x1e7ax18[_0x6eb3[33]],_0x1e7ax1d=_0x1e7ax1b[_0x6eb3[34]],_0x1e7ax1e=_0x1e7ax1b[_0x6eb3[34]]+ _0x1e7ax1b[_0x6eb3[35]],_0x1e7ax16;if(_0x1e7ax1e>= _0x1e7ax1c){_0x1e7ax1e= _0x1e7ax1c;_0x1e7ax16= 200}else {_0x1e7ax16= 206};_0x1e7ax15[_0x6eb3[29]](_0x1e7ax16);logger[_0x6eb3[24]](_0x6eb3[22],_0x1e7ax17,_0x1e7ax16,_0x6eb3[36]);logger[_0x6eb3[26]](_0x6eb3[25],_0x1e7ax17,_0x1e7ax16,_0x6eb3[30],JSON[_0x6eb3[31]](_0x1e7ax18));return _0x1e7ax15[_0x6eb3[40]](_0x6eb3[37],_0x1e7ax1d+ _0x6eb3[38]+ _0x1e7ax1e+ _0x6eb3[39]+ _0x1e7ax1c)[_0x6eb3[32]](_0x1e7ax18)};return null}}function patchUpdates(_0x1e7ax20){return function(_0x1e7ax18){try{jsonpatch[_0x6eb3[41]](_0x1e7ax18,_0x1e7ax20,true)}catch(err){return BPromise[_0x6eb3[42]](err)};return _0x1e7ax18[_0x6eb3[43]]()}}function saveUpdates(_0x1e7ax22,_0x1e7ax16,_0x1e7ax17){return function(_0x1e7ax18){if(_0x1e7ax18){return _0x1e7ax18[_0x6eb3[46]](_0x1e7ax22)[_0x6eb3[45]](function(_0x1e7ax23){logger[_0x6eb3[24]](_0x6eb3[22],_0x1e7ax17,_0x1e7ax16,_0x6eb3[44]);logger[_0x6eb3[26]](_0x6eb3[25],_0x1e7ax17,_0x1e7ax16,_0x6eb3[44],JSON[_0x6eb3[31]](_0x1e7ax18));return _0x1e7ax23})};return null}}function removeEntity(_0x1e7ax15,_0x1e7ax16,_0x1e7ax17){return function(_0x1e7ax18){if(_0x1e7ax18){return _0x1e7ax18[_0x6eb3[48]]()[_0x6eb3[45]](function(){logger[_0x6eb3[24]](_0x6eb3[22],_0x1e7ax17,_0x1e7ax16,_0x6eb3[47]);logger[_0x6eb3[26]](_0x6eb3[25],_0x1e7ax17,_0x1e7ax16,_0x6eb3[47],JSON[_0x6eb3[31]](_0x1e7ax18));_0x1e7ax15[_0x6eb3[29]](204)[_0x6eb3[28]]()})}}}function handleEntityNotFound(_0x1e7ax15,_0x1e7ax16,_0x1e7ax17){return function(_0x1e7ax18){if(!_0x1e7ax18){logger[_0x6eb3[50]](_0x6eb3[22],_0x1e7ax17,404,_0x6eb3[49]);_0x1e7ax15[_0x6eb3[29]](404)[_0x6eb3[28]]();return null};return _0x1e7ax18}}function handleError(_0x1e7ax15,_0x1e7ax16,_0x1e7ax17){_0x1e7ax16= _0x1e7ax16|| 500;return function(_0x1e7ax27){logger[_0x6eb3[50]](_0x6eb3[22],_0x1e7ax17,_0x1e7ax16,JSON[_0x6eb3[31]](_0x1e7ax27));delete _0x1e7ax27[_0x6eb3[51]];_0x1e7ax15[_0x6eb3[29]](_0x1e7ax16)[_0x6eb3[52]](_0x1e7ax27)}}exports[_0x6eb3[53]]= function(_0x1e7ax28,_0x1e7ax15){var _0x1e7ax1b={},_0x1e7ax29={};_0x1e7ax29[_0x6eb3[54]]= _[_0x6eb3[57]](db[_0x6eb3[56]][_0x6eb3[55]]);_0x1e7ax29[_0x6eb3[58]]= _[_0x6eb3[57]](_0x1e7ax28[_0x6eb3[58]]);_0x1e7ax29[_0x6eb3[59]]= _[_0x6eb3[60]](_0x1e7ax29[_0x6eb3[54]],_0x1e7ax29[_0x6eb3[58]]);_0x1e7ax1b[_0x6eb3[61]]= _[_0x6eb3[60]](_0x1e7ax29[_0x6eb3[54]],qs[_0x6eb3[62]](_0x1e7ax28[_0x6eb3[58]][_0x6eb3[62]]));_0x1e7ax1b[_0x6eb3[61]]= (_0x1e7ax1b[_0x6eb3[61]][_0x6eb3[63]])?_0x1e7ax1b[_0x6eb3[61]]:_0x1e7ax29[_0x6eb3[54]];if(!_0x1e7ax28[_0x6eb3[58]][_0x6eb3[65]](_0x6eb3[64])){_0x1e7ax1b[_0x6eb3[35]]= qs[_0x6eb3[35]](_0x1e7ax28[_0x6eb3[58]][_0x6eb3[35]]);_0x1e7ax1b[_0x6eb3[34]]= qs[_0x6eb3[34]](_0x1e7ax28[_0x6eb3[58]][_0x6eb3[34]])};_0x1e7ax1b[_0x6eb3[66]]= qs[_0x6eb3[67]](_0x1e7ax28[_0x6eb3[58]][_0x6eb3[67]]);_0x1e7ax1b[_0x6eb3[68]]= qs[_0x6eb3[59]](_[_0x6eb3[69]](_0x1e7ax28[_0x6eb3[58]],_0x1e7ax29[_0x6eb3[59]]));if(_0x1e7ax28[_0x6eb3[58]][_0x6eb3[70]]){_0x1e7ax1b[_0x6eb3[68]]= _[_0x6eb3[73]](_0x1e7ax1b[_0x6eb3[68]],{$or:_[_0x6eb3[72]](_0x1e7ax1b[_0x6eb3[61]],function(_0x1e7ax2a){var _0x1e7ax2b={};_0x1e7ax2b[_0x1e7ax2a]= {$like:_0x6eb3[71]+ _0x1e7ax28[_0x6eb3[58]][_0x6eb3[70]]+ _0x6eb3[71]};return _0x1e7ax2b})})};_0x1e7ax1b= _[_0x6eb3[73]]({},_0x1e7ax1b,_0x1e7ax28[_0x6eb3[74]]);return db[_0x6eb3[56]][_0x6eb3[76]](_0x1e7ax1b)[_0x6eb3[45]](respondWithFilteredResult(_0x1e7ax15,_0x1e7ax1b,_0x6eb3[53]))[_0x6eb3[75]](handleError(_0x1e7ax15,null,_0x6eb3[53]))};exports[_0x6eb3[77]]= function(_0x1e7ax28,_0x1e7ax15){var _0x1e7ax1b={raw:true,where:{id:_0x1e7ax28[_0x6eb3[79]][_0x6eb3[78]]}},_0x1e7ax29={};_0x1e7ax29[_0x6eb3[54]]= _[_0x6eb3[57]](db[_0x6eb3[56]][_0x6eb3[55]]);_0x1e7ax29[_0x6eb3[58]]= _[_0x6eb3[57]](_0x1e7ax28[_0x6eb3[58]]);_0x1e7ax29[_0x6eb3[59]]= _[_0x6eb3[60]](_0x1e7ax29[_0x6eb3[54]],_0x1e7ax29[_0x6eb3[58]]);_0x1e7ax1b[_0x6eb3[61]]= _[_0x6eb3[60]](_0x1e7ax29[_0x6eb3[54]],qs[_0x6eb3[62]](_0x1e7ax28[_0x6eb3[58]][_0x6eb3[62]]));_0x1e7ax1b[_0x6eb3[61]]= (_0x1e7ax1b[_0x6eb3[61]][_0x6eb3[63]])?_0x1e7ax1b[_0x6eb3[61]]:_0x1e7ax29[_0x6eb3[54]];_0x1e7ax1b= _[_0x6eb3[73]]({},_0x1e7ax1b,_0x1e7ax28[_0x6eb3[74]]);return db[_0x6eb3[56]][_0x6eb3[80]](_0x1e7ax1b)[_0x6eb3[45]](handleEntityNotFound(_0x1e7ax15,null,_0x6eb3[77]))[_0x6eb3[45]](respondWithResult(_0x1e7ax15,null,_0x6eb3[77]))[_0x6eb3[75]](handleError(_0x1e7ax15,null,_0x6eb3[77]))};exports[_0x6eb3[81]]= function(_0x1e7ax28,_0x1e7ax15,_0x1e7ax2c){return db[_0x6eb3[56]][_0x6eb3[80]]({where:{id:_0x1e7ax28[_0x6eb3[79]][_0x6eb3[78]]},attributes:[_0x6eb3[51],_0x6eb3[85],_0x6eb3[87]],raw:true})[_0x6eb3[45]](handleEntityNotFound(_0x1e7ax15,null,_0x6eb3[81]))[_0x6eb3[45]](function(_0x1e7ax18){if(_0x1e7ax18){logger[_0x6eb3[24]](_0x6eb3[82],_0x6eb3[81],_0x6eb3[30]);logger[_0x6eb3[26]](_0x6eb3[22],_0x6eb3[81],_0x6eb3[30],JSON[_0x6eb3[31]](_0x1e7ax18));if(!fs[_0x6eb3[89]](path[_0x6eb3[88]](config[_0x6eb3[83]],_0x6eb3[84],_0x1e7ax18[_0x6eb3[85]]+ _0x6eb3[86]+ _0x1e7ax18[_0x6eb3[87]]))){throw  new db[_0x6eb3[91]].ValidationError(_0x6eb3[90])};return _0x1e7ax15[_0x6eb3[81]](path[_0x6eb3[88]](config[_0x6eb3[83]],_0x6eb3[84],util[_0x6eb3[93]](_0x6eb3[92],_0x1e7ax18[_0x6eb3[85]],_0x1e7ax18[_0x6eb3[87]])),util[_0x6eb3[93]](_0x6eb3[92],_0x1e7ax18[_0x6eb3[51]],_0x1e7ax18[_0x6eb3[87]]))};return null})[_0x6eb3[75]](handleError(_0x1e7ax15,null,_0x6eb3[77]))};exports[_0x6eb3[94]]= function(_0x1e7ax28,_0x1e7ax15,_0x1e7ax2c){var _0x1e7ax2d={name:path[_0x6eb3[98]](_0x1e7ax28[_0x6eb3[96]][_0x6eb3[95]],path[_0x6eb3[97]](_0x1e7ax28[_0x6eb3[96]][_0x6eb3[95]])),save_name:path[_0x6eb3[98]](_0x1e7ax28[_0x6eb3[96]][_0x6eb3[99]],path[_0x6eb3[97]](_0x1e7ax28[_0x6eb3[96]][_0x6eb3[99]])),original_format:path[_0x6eb3[97]](_0x1e7ax28[_0x6eb3[96]][_0x6eb3[95]])[_0x6eb3[100]](1),converted_format:_0x6eb3[101]};var _0x1e7ax2e=path[_0x6eb3[88]](config[_0x6eb3[83]],_0x6eb3[102],_0x1e7ax28[_0x6eb3[96]][_0x6eb3[99]]);var _0x1e7ax2f=path[_0x6eb3[88]](config[_0x6eb3[83]],_0x6eb3[84],util[_0x6eb3[93]](_0x6eb3[92],path[_0x6eb3[98]](_0x1e7ax28[_0x6eb3[96]][_0x6eb3[99]],path[_0x6eb3[97]](_0x1e7ax28[_0x6eb3[96]][_0x6eb3[99]])),_0x1e7ax2d[_0x6eb3[87]]));logger[_0x6eb3[24]](_0x6eb3[103],_0x1e7ax2e);logger[_0x6eb3[24]](_0x6eb3[104],_0x1e7ax2f);try{fs[_0x6eb3[106]](_0x1e7ax2e,parseInt(_0x6eb3[105],8));var _0x1e7ax30=sox[_0x6eb3[107]](_0x1e7ax2e,_0x1e7ax2f,{sampleRate:8000,format:_0x6eb3[101],channelCount:1,bitRate:192* 1024,compressionQuality:5});_0x1e7ax30[_0x6eb3[108]](_0x6eb3[50],function(_0x1e7ax27){_0x1e7ax15[_0x6eb3[29]](500)[_0x6eb3[52]](_0x1e7ax27)});_0x1e7ax30[_0x6eb3[108]](_0x6eb3[109],function(_0x1e7ax31){_0x1e7ax2d[_0x6eb3[110]]= isNaN(_0x1e7ax31[_0x6eb3[111]])?null:_0x1e7ax31[_0x6eb3[111]]* 1000;_0x1e7ax2d[_0x6eb3[112]]= isNaN(_0x1e7ax31[_0x6eb3[113]])?null:_0x1e7ax31[_0x6eb3[113]];_0x1e7ax2d[_0x6eb3[114]]= isNaN(_0x1e7ax31[_0x6eb3[115]])?null:_0x1e7ax31[_0x6eb3[115]];_0x1e7ax2d[_0x6eb3[116]]= isNaN(_0x1e7ax31[_0x6eb3[117]])?null:_0x1e7ax31[_0x6eb3[117]];_0x1e7ax2d[_0x6eb3[118]]= isNaN(_0x1e7ax31[_0x6eb3[119]])?null:_0x1e7ax31[_0x6eb3[119]]});_0x1e7ax30[_0x6eb3[108]](_0x6eb3[120],function(_0x1e7ax31){_0x1e7ax2d[_0x6eb3[121]]= isNaN(_0x1e7ax31[_0x6eb3[111]])?null:_0x1e7ax31[_0x6eb3[111]]* 1000;_0x1e7ax2d[_0x6eb3[122]]= isNaN(_0x1e7ax31[_0x6eb3[113]])?null:_0x1e7ax31[_0x6eb3[113]];_0x1e7ax2d[_0x6eb3[123]]= isNaN(_0x1e7ax31[_0x6eb3[115]])?null:_0x1e7ax31[_0x6eb3[115]];_0x1e7ax2d[_0x6eb3[124]]= isNaN(_0x1e7ax31[_0x6eb3[117]])?null:_0x1e7ax31[_0x6eb3[117]];_0x1e7ax2d[_0x6eb3[125]]= isNaN(_0x1e7ax31[_0x6eb3[119]])?null:_0x1e7ax31[_0x6eb3[119]]});_0x1e7ax30[_0x6eb3[108]](_0x6eb3[28],function(){fs[_0x6eb3[106]](_0x1e7ax2f,parseInt(_0x6eb3[105],8));return db[_0x6eb3[56]][_0x6eb3[94]](_0x1e7ax2d)[_0x6eb3[45]](respondWithResult(_0x1e7ax15,null,_0x6eb3[94]))[_0x6eb3[75]](handleError(_0x1e7ax15,null,_0x6eb3[126]))});_0x1e7ax30[_0x6eb3[127]]()}catch(err){_0x1e7ax15[_0x6eb3[29]](500)[_0x6eb3[52]](err)}};exports[_0x6eb3[46]]= function(_0x1e7ax28,_0x1e7ax15,_0x1e7ax2c){return db[_0x6eb3[56]][_0x6eb3[80]]({where:{id:_0x1e7ax28[_0x6eb3[79]][_0x6eb3[78]]}})[_0x6eb3[45]](handleEntityNotFound(_0x1e7ax15,null,_0x6eb3[46]))[_0x6eb3[45]](saveUpdates(_[_0x6eb3[69]](_0x1e7ax28[_0x6eb3[128]],[_0x6eb3[51],_0x6eb3[129]]),null,_0x6eb3[46]))[_0x6eb3[45]](respondWithResult(_0x1e7ax15,null,_0x6eb3[46]))[_0x6eb3[75]](handleError(_0x1e7ax15,null,_0x6eb3[46]))};exports[_0x6eb3[130]]= function(_0x1e7ax28,_0x1e7ax15,_0x1e7ax2c){return db[_0x6eb3[56]][_0x6eb3[80]]({where:{id:_0x1e7ax28[_0x6eb3[79]][_0x6eb3[78]]}})[_0x6eb3[45]](function(_0x1e7ax18){if(_0x1e7ax18){return _0x1e7ax18[_0x6eb3[48]]()}})[_0x6eb3[45]](function(_0x1e7ax18){var _0x1e7ax32=path[_0x6eb3[88]](config[_0x6eb3[83]],_0x6eb3[102],util[_0x6eb3[93]](_0x6eb3[92],_0x1e7ax18[_0x6eb3[85]],_0x1e7ax18[_0x6eb3[131]]));var _0x1e7ax33=path[_0x6eb3[88]](config[_0x6eb3[83]],_0x6eb3[84],util[_0x6eb3[93]](_0x6eb3[92],_0x1e7ax18[_0x6eb3[85]],_0x1e7ax18[_0x6eb3[87]]));fs[_0x6eb3[132]](_0x1e7ax32);fs[_0x6eb3[132]](_0x1e7ax33);return _0x1e7ax18})[_0x6eb3[45]](function(_0x1e7ax18){if(_0x1e7ax18){return _0x1e7ax15[_0x6eb3[29]](204)[_0x6eb3[28]]()}})[_0x6eb3[45]](handleEntityNotFound(_0x1e7ax15,null,_0x6eb3[130]))[_0x6eb3[75]](handleError(_0x1e7ax15,null,_0x6eb3[130]))}
\ No newline at end of file
+var _0x827a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x6F\x75\x6E\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x63\x6F\x6E\x76\x65\x72\x74\x65\x64","\x73\x61\x76\x65\x5F\x6E\x61\x6D\x65","\x2E","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x66\x6F\x72\x6D\x61\x74","\x6A\x6F\x69\x6E","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x53\x6F\x75\x6E\x64\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x25\x73\x2E\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x6E\x61\x6D\x65","\x66\x69\x6C\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x62\x61\x73\x65\x6E\x61\x6D\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x77\x61\x76","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x6F\x72\x69\x67\x69\x6E\x61\x6C","\x53\x6F\x75\x6E\x64\x20\x75\x70\x6C\x6F\x61\x64\x20\x66\x69\x6C\x65\x70\x61\x74\x68\x3A\x20\x25\x73","\x53\x6F\x75\x6E\x64\x20\x75\x70\x6C\x6F\x61\x64\x20\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x3A\x20\x25\x73","\x30\x37\x37\x37","\x63\x68\x6D\x6F\x64\x53\x79\x6E\x63","\x74\x72\x61\x6E\x73\x63\x6F\x64\x65","\x6F\x6E","\x73\x72\x63","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x64\x75\x72\x61\x74\x69\x6F\x6E","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x73\x61\x6D\x70\x6C\x65\x43\x6F\x75\x6E\x74","\x73\x61\x6D\x70\x6C\x65\x43\x6F\x75\x6E\x74","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x43\x6F\x75\x6E\x74","\x63\x68\x61\x6E\x6E\x65\x6C\x43\x6F\x75\x6E\x74","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x62\x69\x74\x52\x61\x74\x65","\x62\x69\x74\x52\x61\x74\x65","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x73\x61\x6D\x70\x6C\x65\x52\x61\x74\x65","\x73\x61\x6D\x70\x6C\x65\x52\x61\x74\x65","\x64\x65\x73\x74","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x64\x75\x72\x61\x74\x69\x6F\x6E","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x73\x61\x6D\x70\x6C\x65\x43\x6F\x75\x6E\x74","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x43\x6F\x75\x6E\x74","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x62\x69\x74\x52\x61\x74\x65","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x73\x61\x6D\x70\x6C\x65\x52\x61\x74\x65","\x63\x72\x61\x74\x65","\x73\x74\x61\x72\x74","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x64\x65\x6C\x65\x74\x65","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x5F\x66\x6F\x72\x6D\x61\x74","\x75\x6E\x6C\x69\x6E\x6B\x53\x79\x6E\x63"];_0x827a[0];var jsonpatch=require(_0x827a[1]);var rp=require(_0x827a[2]);var moment=require(_0x827a[3]);var BPromise=require(_0x827a[4]);var util=require(_0x827a[5]);var path=require(_0x827a[6]);var sox=require(_0x827a[7]);var ejs=require(_0x827a[8]);var fs=require(_0x827a[9]);var _=require(_0x827a[10]);var squel=require(_0x827a[11]);var crypto=require(_0x827a[12]);var jsforce=require(_0x827a[13]);var toCsv=require(_0x827a[14]);var qs=require(_0x827a[15]);var logger=require(_0x827a[17])(_0x827a[16]);var utils=require(_0x827a[18]);var config=require(_0x827a[19]);var db=require(_0x827a[21])[_0x827a[20]];function respondWithStatusCode(_0x891ax15,_0x891ax16,_0x891ax17){_0x891ax16= _0x891ax16|| 204;return function(_0x891ax18){if(_0x891ax18){logger[_0x827a[24]](_0x827a[22],_0x891ax17,_0x891ax16,_0x827a[23]);logger[_0x827a[26]](_0x827a[25],_0x891ax17,_0x891ax16,_0x827a[23]);return _0x891ax15[_0x827a[27]](_0x891ax16)};return _0x891ax15[_0x827a[29]](304)[_0x827a[28]]()}}function respondWithResult(_0x891ax15,_0x891ax16,_0x891ax17){_0x891ax16= _0x891ax16|| 200;return function(_0x891ax18){if(_0x891ax18){logger[_0x827a[24]](_0x827a[22],_0x891ax17,_0x891ax16,_0x827a[30]);logger[_0x827a[26]](_0x827a[25],_0x891ax17,_0x891ax16,_0x827a[30],JSON[_0x827a[31]](_0x891ax18));return _0x891ax15[_0x827a[29]](_0x891ax16)[_0x827a[32]](_0x891ax18)};return _0x891ax15[_0x827a[29]](304)[_0x827a[28]]()}}function respondWithFilteredResult(_0x891ax15,_0x891ax1b,_0x891ax17){return function(_0x891ax18){if(_0x891ax18){var _0x891ax1c=_0x891ax18[_0x827a[33]],_0x891ax1d=_0x891ax1b[_0x827a[34]],_0x891ax1e=_0x891ax1b[_0x827a[34]]+ _0x891ax1b[_0x827a[35]],_0x891ax16;if(_0x891ax1e>= _0x891ax1c){_0x891ax1e= _0x891ax1c;_0x891ax16= 200}else {_0x891ax16= 206};_0x891ax15[_0x827a[29]](_0x891ax16);logger[_0x827a[24]](_0x827a[22],_0x891ax17,_0x891ax16,_0x827a[36]);logger[_0x827a[26]](_0x827a[25],_0x891ax17,_0x891ax16,_0x827a[30],JSON[_0x827a[31]](_0x891ax18));return _0x891ax15[_0x827a[40]](_0x827a[37],_0x891ax1d+ _0x827a[38]+ _0x891ax1e+ _0x827a[39]+ _0x891ax1c)[_0x827a[32]](_0x891ax18)};return null}}function patchUpdates(_0x891ax20){return function(_0x891ax18){try{jsonpatch[_0x827a[41]](_0x891ax18,_0x891ax20,true)}catch(err){return BPromise[_0x827a[42]](err)};return _0x891ax18[_0x827a[43]]()}}function saveUpdates(_0x891ax22,_0x891ax16,_0x891ax17){return function(_0x891ax18){if(_0x891ax18){return _0x891ax18[_0x827a[46]](_0x891ax22)[_0x827a[45]](function(_0x891ax23){logger[_0x827a[24]](_0x827a[22],_0x891ax17,_0x891ax16,_0x827a[44]);logger[_0x827a[26]](_0x827a[25],_0x891ax17,_0x891ax16,_0x827a[44],JSON[_0x827a[31]](_0x891ax18));return _0x891ax23})};return null}}function removeEntity(_0x891ax15,_0x891ax16,_0x891ax17){return function(_0x891ax18){if(_0x891ax18){return _0x891ax18[_0x827a[48]]()[_0x827a[45]](function(){logger[_0x827a[24]](_0x827a[22],_0x891ax17,_0x891ax16,_0x827a[47]);logger[_0x827a[26]](_0x827a[25],_0x891ax17,_0x891ax16,_0x827a[47],JSON[_0x827a[31]](_0x891ax18));_0x891ax15[_0x827a[29]](204)[_0x827a[28]]()})}}}function handleEntityNotFound(_0x891ax15,_0x891ax16,_0x891ax17){return function(_0x891ax18){if(!_0x891ax18){logger[_0x827a[50]](_0x827a[22],_0x891ax17,404,_0x827a[49]);_0x891ax15[_0x827a[29]](404)[_0x827a[28]]();return null};return _0x891ax18}}function handleError(_0x891ax15,_0x891ax16,_0x891ax17){_0x891ax16= _0x891ax16|| 500;return function(_0x891ax27){logger[_0x827a[50]](_0x827a[22],_0x891ax17,_0x891ax16,JSON[_0x827a[31]](_0x891ax27));delete _0x891ax27[_0x827a[51]];_0x891ax15[_0x827a[29]](_0x891ax16)[_0x827a[52]](_0x891ax27)}}exports[_0x827a[53]]= function(_0x891ax28,_0x891ax15){var _0x891ax1b={},_0x891ax29={};_0x891ax29[_0x827a[54]]= _[_0x827a[57]](db[_0x827a[56]][_0x827a[55]]);_0x891ax29[_0x827a[58]]= _[_0x827a[57]](_0x891ax28[_0x827a[58]]);_0x891ax29[_0x827a[59]]= _[_0x827a[60]](_0x891ax29[_0x827a[54]],_0x891ax29[_0x827a[58]]);_0x891ax1b[_0x827a[61]]= _[_0x827a[60]](_0x891ax29[_0x827a[54]],qs[_0x827a[62]](_0x891ax28[_0x827a[58]][_0x827a[62]]));_0x891ax1b[_0x827a[61]]= (_0x891ax1b[_0x827a[61]][_0x827a[63]])?_0x891ax1b[_0x827a[61]]:_0x891ax29[_0x827a[54]];if(!_0x891ax28[_0x827a[58]][_0x827a[65]](_0x827a[64])){_0x891ax1b[_0x827a[35]]= qs[_0x827a[35]](_0x891ax28[_0x827a[58]][_0x827a[35]]);_0x891ax1b[_0x827a[34]]= qs[_0x827a[34]](_0x891ax28[_0x827a[58]][_0x827a[34]])};_0x891ax1b[_0x827a[66]]= qs[_0x827a[67]](_0x891ax28[_0x827a[58]][_0x827a[67]]);_0x891ax1b[_0x827a[68]]= qs[_0x827a[59]](_[_0x827a[69]](_0x891ax28[_0x827a[58]],_0x891ax29[_0x827a[59]]));if(_0x891ax28[_0x827a[58]][_0x827a[70]]){_0x891ax1b[_0x827a[68]]= _[_0x827a[73]](_0x891ax1b[_0x827a[68]],{$or:_[_0x827a[72]](_0x891ax1b[_0x827a[61]],function(_0x891ax2a){var _0x891ax2b={};_0x891ax2b[_0x891ax2a]= {$like:_0x827a[71]+ _0x891ax28[_0x827a[58]][_0x827a[70]]+ _0x827a[71]};return _0x891ax2b})})};_0x891ax1b= _[_0x827a[73]]({},_0x891ax1b,_0x891ax28[_0x827a[74]]);return db[_0x827a[56]][_0x827a[76]](_0x891ax1b)[_0x827a[45]](respondWithFilteredResult(_0x891ax15,_0x891ax1b,_0x827a[53]))[_0x827a[75]](handleError(_0x891ax15,null,_0x827a[53]))};exports[_0x827a[77]]= function(_0x891ax28,_0x891ax15){var _0x891ax1b={raw:true,where:{id:_0x891ax28[_0x827a[79]][_0x827a[78]]}},_0x891ax29={};_0x891ax29[_0x827a[54]]= _[_0x827a[57]](db[_0x827a[56]][_0x827a[55]]);_0x891ax29[_0x827a[58]]= _[_0x827a[57]](_0x891ax28[_0x827a[58]]);_0x891ax29[_0x827a[59]]= _[_0x827a[60]](_0x891ax29[_0x827a[54]],_0x891ax29[_0x827a[58]]);_0x891ax1b[_0x827a[61]]= _[_0x827a[60]](_0x891ax29[_0x827a[54]],qs[_0x827a[62]](_0x891ax28[_0x827a[58]][_0x827a[62]]));_0x891ax1b[_0x827a[61]]= (_0x891ax1b[_0x827a[61]][_0x827a[63]])?_0x891ax1b[_0x827a[61]]:_0x891ax29[_0x827a[54]];_0x891ax1b= _[_0x827a[73]]({},_0x891ax1b,_0x891ax28[_0x827a[74]]);return db[_0x827a[56]][_0x827a[80]](_0x891ax1b)[_0x827a[45]](handleEntityNotFound(_0x891ax15,null,_0x827a[77]))[_0x827a[45]](respondWithResult(_0x891ax15,null,_0x827a[77]))[_0x827a[75]](handleError(_0x891ax15,null,_0x827a[77]))};exports[_0x827a[81]]= function(_0x891ax28,_0x891ax15,_0x891ax2c){return db[_0x827a[56]][_0x827a[80]]({where:{id:_0x891ax28[_0x827a[79]][_0x827a[78]]},attributes:[_0x827a[51],_0x827a[85],_0x827a[87]],raw:true})[_0x827a[45]](handleEntityNotFound(_0x891ax15,null,_0x827a[81]))[_0x827a[45]](function(_0x891ax18){if(_0x891ax18){logger[_0x827a[24]](_0x827a[82],_0x827a[81],_0x827a[30]);logger[_0x827a[26]](_0x827a[22],_0x827a[81],_0x827a[30],JSON[_0x827a[31]](_0x891ax18));if(!fs[_0x827a[89]](path[_0x827a[88]](config[_0x827a[83]],_0x827a[84],_0x891ax18[_0x827a[85]]+ _0x827a[86]+ _0x891ax18[_0x827a[87]]))){throw  new db[_0x827a[91]].ValidationError(_0x827a[90])};return _0x891ax15[_0x827a[81]](path[_0x827a[88]](config[_0x827a[83]],_0x827a[84],util[_0x827a[93]](_0x827a[92],_0x891ax18[_0x827a[85]],_0x891ax18[_0x827a[87]])),util[_0x827a[93]](_0x827a[92],_0x891ax18[_0x827a[51]],_0x891ax18[_0x827a[87]]))};return null})[_0x827a[75]](handleError(_0x891ax15,null,_0x827a[77]))};exports[_0x827a[94]]= function(_0x891ax28,_0x891ax15,_0x891ax2c){var _0x891ax2d={name:path[_0x827a[98]](_0x891ax28[_0x827a[96]][_0x827a[95]],path[_0x827a[97]](_0x891ax28[_0x827a[96]][_0x827a[95]])),save_name:path[_0x827a[98]](_0x891ax28[_0x827a[96]][_0x827a[99]],path[_0x827a[97]](_0x891ax28[_0x827a[96]][_0x827a[99]])),original_format:path[_0x827a[97]](_0x891ax28[_0x827a[96]][_0x827a[95]])[_0x827a[100]](1),converted_format:_0x827a[101]};var _0x891ax2e=path[_0x827a[88]](config[_0x827a[83]],_0x827a[102],_0x891ax28[_0x827a[96]][_0x827a[99]]);var _0x891ax2f=path[_0x827a[88]](config[_0x827a[83]],_0x827a[84],util[_0x827a[93]](_0x827a[92],path[_0x827a[98]](_0x891ax28[_0x827a[96]][_0x827a[99]],path[_0x827a[97]](_0x891ax28[_0x827a[96]][_0x827a[99]])),_0x891ax2d[_0x827a[87]]));logger[_0x827a[24]](_0x827a[103],_0x891ax2e);logger[_0x827a[24]](_0x827a[104],_0x891ax2f);try{fs[_0x827a[106]](_0x891ax2e,parseInt(_0x827a[105],8));var _0x891ax30=sox[_0x827a[107]](_0x891ax2e,_0x891ax2f,{sampleRate:8000,format:_0x827a[101],channelCount:1,bitRate:192* 1024,compressionQuality:5});_0x891ax30[_0x827a[108]](_0x827a[50],function(_0x891ax27){_0x891ax15[_0x827a[29]](500)[_0x827a[52]](_0x891ax27)});_0x891ax30[_0x827a[108]](_0x827a[109],function(_0x891ax31){_0x891ax2d[_0x827a[110]]= isNaN(_0x891ax31[_0x827a[111]])?null:_0x891ax31[_0x827a[111]]* 1000;_0x891ax2d[_0x827a[112]]= isNaN(_0x891ax31[_0x827a[113]])?null:_0x891ax31[_0x827a[113]];_0x891ax2d[_0x827a[114]]= isNaN(_0x891ax31[_0x827a[115]])?null:_0x891ax31[_0x827a[115]];_0x891ax2d[_0x827a[116]]= isNaN(_0x891ax31[_0x827a[117]])?null:_0x891ax31[_0x827a[117]];_0x891ax2d[_0x827a[118]]= isNaN(_0x891ax31[_0x827a[119]])?null:_0x891ax31[_0x827a[119]]});_0x891ax30[_0x827a[108]](_0x827a[120],function(_0x891ax31){_0x891ax2d[_0x827a[121]]= isNaN(_0x891ax31[_0x827a[111]])?null:_0x891ax31[_0x827a[111]]* 1000;_0x891ax2d[_0x827a[122]]= isNaN(_0x891ax31[_0x827a[113]])?null:_0x891ax31[_0x827a[113]];_0x891ax2d[_0x827a[123]]= isNaN(_0x891ax31[_0x827a[115]])?null:_0x891ax31[_0x827a[115]];_0x891ax2d[_0x827a[124]]= isNaN(_0x891ax31[_0x827a[117]])?null:_0x891ax31[_0x827a[117]];_0x891ax2d[_0x827a[125]]= isNaN(_0x891ax31[_0x827a[119]])?null:_0x891ax31[_0x827a[119]]});_0x891ax30[_0x827a[108]](_0x827a[28],function(){fs[_0x827a[106]](_0x891ax2f,parseInt(_0x827a[105],8));return db[_0x827a[56]][_0x827a[94]](_0x891ax2d)[_0x827a[45]](respondWithResult(_0x891ax15,null,_0x827a[94]))[_0x827a[75]](handleError(_0x891ax15,null,_0x827a[126]))});_0x891ax30[_0x827a[127]]()}catch(err){_0x891ax15[_0x827a[29]](500)[_0x827a[52]](err)}};exports[_0x827a[46]]= function(_0x891ax28,_0x891ax15,_0x891ax2c){return db[_0x827a[56]][_0x827a[80]]({where:{id:_0x891ax28[_0x827a[79]][_0x827a[78]]}})[_0x827a[45]](handleEntityNotFound(_0x891ax15,null,_0x827a[46]))[_0x827a[45]](saveUpdates(_[_0x827a[69]](_0x891ax28[_0x827a[128]],[_0x827a[51],_0x827a[129]]),null,_0x827a[46]))[_0x827a[45]](respondWithResult(_0x891ax15,null,_0x827a[46]))[_0x827a[75]](handleError(_0x891ax15,null,_0x827a[46]))};exports[_0x827a[130]]= function(_0x891ax28,_0x891ax15,_0x891ax2c){return db[_0x827a[56]][_0x827a[80]]({where:{id:_0x891ax28[_0x827a[79]][_0x827a[78]]}})[_0x827a[45]](function(_0x891ax18){if(_0x891ax18){return _0x891ax18[_0x827a[48]]()}})[_0x827a[45]](function(_0x891ax18){var _0x891ax32=path[_0x827a[88]](config[_0x827a[83]],_0x827a[102],util[_0x827a[93]](_0x827a[92],_0x891ax18[_0x827a[85]],_0x891ax18[_0x827a[131]]));var _0x891ax33=path[_0x827a[88]](config[_0x827a[83]],_0x827a[84],util[_0x827a[93]](_0x827a[92],_0x891ax18[_0x827a[85]],_0x891ax18[_0x827a[87]]));fs[_0x827a[132]](_0x891ax32);fs[_0x827a[132]](_0x891ax33);return _0x891ax18})[_0x827a[45]](function(_0x891ax18){if(_0x891ax18){return _0x891ax15[_0x827a[29]](204)[_0x827a[28]]()}})[_0x827a[45]](handleEntityNotFound(_0x891ax15,null,_0x827a[130]))[_0x827a[75]](handleError(_0x891ax15,null,_0x827a[130]))}
\ No newline at end of file
index bcee02c..1baeb1e 100644 (file)
@@ -1 +1 @@
-var _0x7de6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6F\x75\x6E\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6F\x75\x6E\x64","\x74\x6F\x6F\x6C\x73\x5F\x73\x6F\x75\x6E\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0x7de6[0];var _=require(_0x7de6[1]);var util=require(_0x7de6[2]);var logger=require(_0x7de6[4])(_0x7de6[3]);var attributes=require(_0x7de6[5]);module[_0x7de6[6]]= function(_0x7e5dx5,_0x7e5dx6){return _0x7e5dx5[_0x7de6[9]](_0x7de6[7],attributes,{tableName:_0x7de6[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xb5e2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x6F\x75\x6E\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x6F\x75\x6E\x64","\x74\x6F\x6F\x6C\x73\x5F\x73\x6F\x75\x6E\x64\x73","\x64\x65\x66\x69\x6E\x65"];_0xb5e2[0];var _=require(_0xb5e2[1]);var util=require(_0xb5e2[2]);var logger=require(_0xb5e2[4])(_0xb5e2[3]);var attributes=require(_0xb5e2[5]);module[_0xb5e2[6]]= function(_0xc16bx5,_0xc16bx6){return _0xc16bx5[_0xb5e2[9]](_0xb5e2[7],attributes,{tableName:_0xb5e2[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 4972bc8..f0dc410 100644 (file)
@@ -1 +1 @@
-var _0x7c97=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x53\x6F\x75\x6E\x64","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x53\x6F\x75\x6E\x64"];_0x7c97[0];var _=require(_0x7c97[1]);var util=require(_0x7c97[2]);var moment=require(_0x7c97[3]);var BPromise=require(_0x7c97[4]);var db=require(_0x7c97[6])[_0x7c97[5]];var utils=require(_0x7c97[7]);var logger=require(_0x7c97[9])(_0x7c97[8]);var jayson=require(_0x7c97[10]);var client=jayson[_0x7c97[12]][_0x7c97[11]]({port:9002});function respondWithRpcPromise(_0xbfc0xb,_0xbfc0xc,_0xbfc0xd){return  new BPromise(function(_0xbfc0xe,_0xbfc0xf){return client[_0x7c97[25]](_0xbfc0xb,_0xbfc0xd)[_0x7c97[24]](function(_0xbfc0x11){logger[_0x7c97[17]](_0x7c97[13],_0xbfc0xc,_0x7c97[16]);logger[_0x7c97[20]](_0x7c97[18],_0xbfc0xc,_0x7c97[16],JSON[_0x7c97[19]](_0xbfc0x11));if(_0xbfc0x11[_0x7c97[14]]){if(_0xbfc0x11[_0x7c97[14]][_0x7c97[21]]=== 500){logger[_0x7c97[14]](_0x7c97[13],_0xbfc0xc,_0xbfc0x11[_0x7c97[14]][_0x7c97[22]]);return _0xbfc0xf(_0xbfc0x11[_0x7c97[14]][_0x7c97[22]])};logger[_0x7c97[14]](_0x7c97[13],_0xbfc0xc,_0xbfc0x11[_0x7c97[14]][_0x7c97[22]]);return _0xbfc0xe(_0xbfc0x11[_0x7c97[14]][_0x7c97[22]])}else {logger[_0x7c97[17]](_0x7c97[13],_0xbfc0xc,_0x7c97[16]);_0xbfc0xe(_0xbfc0x11[_0x7c97[23]][_0x7c97[22]])}})[_0x7c97[15]](function(_0xbfc0x10){logger[_0x7c97[14]](_0x7c97[13],_0xbfc0xc,_0xbfc0x10);_0xbfc0xf(_0xbfc0x10)})})}exports[_0x7c97[26]]= function(_0xbfc0xd){var _0xbfc0x12=this;return  new Promise(function(_0xbfc0xe,_0xbfc0xf){return db[_0x7c97[36]][_0x7c97[35]]({raw:_0xbfc0xd[_0x7c97[27]]?(_0xbfc0xd[_0x7c97[27]][_0x7c97[28]]=== undefined)?true:false:true,where:_0xbfc0xd[_0x7c97[27]]?_0xbfc0xd[_0x7c97[27]][_0x7c97[29]]|| null:null,attributes:_0xbfc0xd[_0x7c97[27]]?_0xbfc0xd[_0x7c97[27]][_0x7c97[30]]|| null:null,include:_0xbfc0xd[_0x7c97[27]]?(_0xbfc0xd[_0x7c97[27]][_0x7c97[31]]?_[_0x7c97[34]](_0xbfc0xd[_0x7c97[27]][_0x7c97[31]],function(_0xbfc0x13){return {model:db[_0xbfc0x13[_0x7c97[32]]],as:_0xbfc0x13[_0x7c97[33]],attributes:_0xbfc0x13[_0x7c97[30]],include:_0xbfc0x13[_0x7c97[31]]?_[_0x7c97[34]](_0xbfc0x13[_0x7c97[31]],function(_0xbfc0x14){return {model:db[_0xbfc0x14[_0x7c97[32]]],as:_0xbfc0x14[_0x7c97[33]],attributes:_0xbfc0x14[_0x7c97[30]],include:_0xbfc0x14[_0x7c97[31]]?_[_0x7c97[34]](_0xbfc0x14[_0x7c97[31]],function(_0xbfc0x15){return {model:db[_0xbfc0x15[_0x7c97[32]]],as:_0xbfc0x15[_0x7c97[33]],attributes:_0xbfc0x15[_0x7c97[30]]}}):[]}}):[]}}):[]):[]})[_0x7c97[24]](function(_0xbfc0x11){logger[_0x7c97[17]](_0x7c97[26],_0xbfc0xd);logger[_0x7c97[20]](_0x7c97[26],_0xbfc0xd,JSON[_0x7c97[19]](_0xbfc0x11));_0xbfc0xe(_0xbfc0x11)})[_0x7c97[15]](function(_0xbfc0x10){logger[_0x7c97[14]](_0x7c97[26],_0xbfc0x10[_0x7c97[22]],_0xbfc0xd);_0xbfc0xf(_0xbfc0x12[_0x7c97[14]](500,_0xbfc0x10[_0x7c97[22]]))})})}
\ No newline at end of file
+var _0x3946=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x6F\x75\x6E\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x53\x6F\x75\x6E\x64","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x53\x6F\x75\x6E\x64"];_0x3946[0];var _=require(_0x3946[1]);var util=require(_0x3946[2]);var moment=require(_0x3946[3]);var BPromise=require(_0x3946[4]);var db=require(_0x3946[6])[_0x3946[5]];var utils=require(_0x3946[7]);var logger=require(_0x3946[9])(_0x3946[8]);var jayson=require(_0x3946[10]);var client=jayson[_0x3946[12]][_0x3946[11]]({port:9002});function respondWithRpcPromise(_0x91baxb,_0x91baxc,_0x91baxd){return  new BPromise(function(_0x91baxe,_0x91baxf){return client[_0x3946[25]](_0x91baxb,_0x91baxd)[_0x3946[24]](function(_0x91bax11){logger[_0x3946[17]](_0x3946[13],_0x91baxc,_0x3946[16]);logger[_0x3946[20]](_0x3946[18],_0x91baxc,_0x3946[16],JSON[_0x3946[19]](_0x91bax11));if(_0x91bax11[_0x3946[14]]){if(_0x91bax11[_0x3946[14]][_0x3946[21]]=== 500){logger[_0x3946[14]](_0x3946[13],_0x91baxc,_0x91bax11[_0x3946[14]][_0x3946[22]]);return _0x91baxf(_0x91bax11[_0x3946[14]][_0x3946[22]])};logger[_0x3946[14]](_0x3946[13],_0x91baxc,_0x91bax11[_0x3946[14]][_0x3946[22]]);return _0x91baxe(_0x91bax11[_0x3946[14]][_0x3946[22]])}else {logger[_0x3946[17]](_0x3946[13],_0x91baxc,_0x3946[16]);_0x91baxe(_0x91bax11[_0x3946[23]][_0x3946[22]])}})[_0x3946[15]](function(_0x91bax10){logger[_0x3946[14]](_0x3946[13],_0x91baxc,_0x91bax10);_0x91baxf(_0x91bax10)})})}exports[_0x3946[26]]= function(_0x91baxd){var _0x91bax12=this;return  new Promise(function(_0x91baxe,_0x91baxf){return db[_0x3946[36]][_0x3946[35]]({raw:_0x91baxd[_0x3946[27]]?(_0x91baxd[_0x3946[27]][_0x3946[28]]=== undefined)?true:false:true,where:_0x91baxd[_0x3946[27]]?_0x91baxd[_0x3946[27]][_0x3946[29]]|| null:null,attributes:_0x91baxd[_0x3946[27]]?_0x91baxd[_0x3946[27]][_0x3946[30]]|| null:null,include:_0x91baxd[_0x3946[27]]?(_0x91baxd[_0x3946[27]][_0x3946[31]]?_[_0x3946[34]](_0x91baxd[_0x3946[27]][_0x3946[31]],function(_0x91bax13){return {model:db[_0x91bax13[_0x3946[32]]],as:_0x91bax13[_0x3946[33]],attributes:_0x91bax13[_0x3946[30]],include:_0x91bax13[_0x3946[31]]?_[_0x3946[34]](_0x91bax13[_0x3946[31]],function(_0x91bax14){return {model:db[_0x91bax14[_0x3946[32]]],as:_0x91bax14[_0x3946[33]],attributes:_0x91bax14[_0x3946[30]],include:_0x91bax14[_0x3946[31]]?_[_0x3946[34]](_0x91bax14[_0x3946[31]],function(_0x91bax15){return {model:db[_0x91bax15[_0x3946[32]]],as:_0x91bax15[_0x3946[33]],attributes:_0x91bax15[_0x3946[30]]}}):[]}}):[]}}):[]):[]})[_0x3946[24]](function(_0x91bax11){logger[_0x3946[17]](_0x3946[26],_0x91baxd);logger[_0x3946[20]](_0x3946[26],_0x91baxd,JSON[_0x3946[19]](_0x91bax11));_0x91baxe(_0x91bax11)})[_0x3946[15]](function(_0x91bax10){logger[_0x3946[14]](_0x3946[26],_0x91bax10[_0x3946[22]],_0x91baxd);_0x91baxf(_0x91bax12[_0x3946[14]](500,_0x91bax10[_0x3946[22]]))})})}
\ No newline at end of file
index c9e43fe..0ed39e6 100644 (file)
@@ -1 +1 @@
-var _0xd383=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x73\x74","\x74\x65\x73\x74","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd383[0];var multer=require(_0xd383[1]);var util=require(_0xd383[2]);var path=require(_0xd383[3]);var express=require(_0xd383[4]);var router=express.Router();var auth=require(_0xd383[5]);var config=require(_0xd383[6]);var controller=require(_0xd383[7]);router[_0xd383[11]](_0xd383[8],auth[_0xd383[9]](),controller[_0xd383[10]]);router[_0xd383[11]](_0xd383[12],auth[_0xd383[9]](),controller[_0xd383[13]]);router[_0xd383[11]](_0xd383[14],auth[_0xd383[9]](),controller[_0xd383[15]]);router[_0xd383[17]](_0xd383[8],auth[_0xd383[9]](),controller[_0xd383[16]]);router[_0xd383[19]](_0xd383[12],auth[_0xd383[9]](),controller[_0xd383[18]]);router[_0xd383[21]](_0xd383[12],auth[_0xd383[9]](),controller[_0xd383[20]]);module[_0xd383[22]]= router
\ No newline at end of file
+var _0x7cfc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x74\x65\x73\x74","\x74\x65\x73\x74","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7cfc[0];var multer=require(_0x7cfc[1]);var util=require(_0x7cfc[2]);var path=require(_0x7cfc[3]);var express=require(_0x7cfc[4]);var router=express.Router();var auth=require(_0x7cfc[5]);var config=require(_0x7cfc[6]);var controller=require(_0x7cfc[7]);router[_0x7cfc[11]](_0x7cfc[8],auth[_0x7cfc[9]](),controller[_0x7cfc[10]]);router[_0x7cfc[11]](_0x7cfc[12],auth[_0x7cfc[9]](),controller[_0x7cfc[13]]);router[_0x7cfc[11]](_0x7cfc[14],auth[_0x7cfc[9]](),controller[_0x7cfc[15]]);router[_0x7cfc[17]](_0x7cfc[8],auth[_0x7cfc[9]](),controller[_0x7cfc[16]]);router[_0x7cfc[19]](_0x7cfc[12],auth[_0x7cfc[9]](),controller[_0x7cfc[18]]);router[_0x7cfc[21]](_0x7cfc[12],auth[_0x7cfc[9]](),controller[_0x7cfc[20]]);module[_0x7cfc[22]]= router
\ No newline at end of file
index 01e4a7e..79758c5 100644 (file)
@@ -1 +1 @@
-var _0xa761=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0xa761[0];var Sequelize=require(_0xa761[1]);module[_0xa761[2]]= {name:{type:Sequelize[_0xa761[3]],unique:_0xa761[4],allowNull:false},dsn:{type:Sequelize[_0xa761[3]]},description:{type:Sequelize[_0xa761[3]]}}
\ No newline at end of file
+var _0x4a3a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x4a3a[0];var Sequelize=require(_0x4a3a[1]);module[_0x4a3a[2]]= {name:{type:Sequelize[_0x4a3a[3]],unique:_0x4a3a[4],allowNull:false},dsn:{type:Sequelize[_0x4a3a[3]]},description:{type:Sequelize[_0x4a3a[3]]}}
\ No newline at end of file
index be5e6e2..626e52e 100644 (file)
@@ -1 +1 @@
-var _0x4099=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x74\x65\x73\x74","\x6F\x64\x62\x63","\x64\x73\x6E","\x6F\x70\x65\x6E\x53\x79\x6E\x63","\x63\x6C\x6F\x73\x65\x53\x79\x6E\x63"];_0x4099[0];var jsonpatch=require(_0x4099[1]);var rp=require(_0x4099[2]);var moment=require(_0x4099[3]);var BPromise=require(_0x4099[4]);var util=require(_0x4099[5]);var path=require(_0x4099[6]);var sox=require(_0x4099[7]);var ejs=require(_0x4099[8]);var fs=require(_0x4099[9]);var _=require(_0x4099[10]);var squel=require(_0x4099[11]);var crypto=require(_0x4099[12]);var jsforce=require(_0x4099[13]);var toCsv=require(_0x4099[14]);var qs=require(_0x4099[15]);var logger=require(_0x4099[17])(_0x4099[16]);var utils=require(_0x4099[18]);var config=require(_0x4099[19]);var db=require(_0x4099[21])[_0x4099[20]];function respondWithStatusCode(_0x21b8x15,_0x21b8x16,_0x21b8x17){_0x21b8x16= _0x21b8x16|| 204;return function(_0x21b8x18){if(_0x21b8x18){logger[_0x4099[24]](_0x4099[22],_0x21b8x17,_0x21b8x16,_0x4099[23]);logger[_0x4099[26]](_0x4099[25],_0x21b8x17,_0x21b8x16,_0x4099[23]);return _0x21b8x15[_0x4099[27]](_0x21b8x16)};return _0x21b8x15[_0x4099[29]](304)[_0x4099[28]]()}}function respondWithResult(_0x21b8x15,_0x21b8x16,_0x21b8x17){_0x21b8x16= _0x21b8x16|| 200;return function(_0x21b8x18){if(_0x21b8x18){logger[_0x4099[24]](_0x4099[22],_0x21b8x17,_0x21b8x16,_0x4099[30]);logger[_0x4099[26]](_0x4099[25],_0x21b8x17,_0x21b8x16,_0x4099[30],JSON[_0x4099[31]](_0x21b8x18));return _0x21b8x15[_0x4099[29]](_0x21b8x16)[_0x4099[32]](_0x21b8x18)};return _0x21b8x15[_0x4099[29]](304)[_0x4099[28]]()}}function respondWithFilteredResult(_0x21b8x15,_0x21b8x1b,_0x21b8x17){return function(_0x21b8x18){if(_0x21b8x18){var _0x21b8x1c=_0x21b8x18[_0x4099[33]],_0x21b8x1d=_0x21b8x1b[_0x4099[34]],_0x21b8x1e=_0x21b8x1b[_0x4099[34]]+ _0x21b8x1b[_0x4099[35]],_0x21b8x16;if(_0x21b8x1e>= _0x21b8x1c){_0x21b8x1e= _0x21b8x1c;_0x21b8x16= 200}else {_0x21b8x16= 206};_0x21b8x15[_0x4099[29]](_0x21b8x16);logger[_0x4099[24]](_0x4099[22],_0x21b8x17,_0x21b8x16,_0x4099[36]);logger[_0x4099[26]](_0x4099[25],_0x21b8x17,_0x21b8x16,_0x4099[30],JSON[_0x4099[31]](_0x21b8x18));return _0x21b8x15[_0x4099[40]](_0x4099[37],_0x21b8x1d+ _0x4099[38]+ _0x21b8x1e+ _0x4099[39]+ _0x21b8x1c)[_0x4099[32]](_0x21b8x18)};return null}}function patchUpdates(_0x21b8x20){return function(_0x21b8x18){try{jsonpatch[_0x4099[41]](_0x21b8x18,_0x21b8x20,true)}catch(err){return BPromise[_0x4099[42]](err)};return _0x21b8x18[_0x4099[43]]()}}function saveUpdates(_0x21b8x22,_0x21b8x16,_0x21b8x17){return function(_0x21b8x18){if(_0x21b8x18){return _0x21b8x18[_0x4099[46]](_0x21b8x22)[_0x4099[45]](function(_0x21b8x23){logger[_0x4099[24]](_0x4099[22],_0x21b8x17,_0x21b8x16,_0x4099[44]);logger[_0x4099[26]](_0x4099[25],_0x21b8x17,_0x21b8x16,_0x4099[44],JSON[_0x4099[31]](_0x21b8x18));return _0x21b8x23})};return null}}function removeEntity(_0x21b8x15,_0x21b8x16,_0x21b8x17){return function(_0x21b8x18){if(_0x21b8x18){return _0x21b8x18[_0x4099[48]]()[_0x4099[45]](function(){logger[_0x4099[24]](_0x4099[22],_0x21b8x17,_0x21b8x16,_0x4099[47]);logger[_0x4099[26]](_0x4099[25],_0x21b8x17,_0x21b8x16,_0x4099[47],JSON[_0x4099[31]](_0x21b8x18));_0x21b8x15[_0x4099[29]](204)[_0x4099[28]]()})}}}function handleEntityNotFound(_0x21b8x15,_0x21b8x16,_0x21b8x17){return function(_0x21b8x18){if(!_0x21b8x18){logger[_0x4099[50]](_0x4099[22],_0x21b8x17,404,_0x4099[49]);_0x21b8x15[_0x4099[29]](404)[_0x4099[28]]();return null};return _0x21b8x18}}function handleError(_0x21b8x15,_0x21b8x16,_0x21b8x17){_0x21b8x16= _0x21b8x16|| 500;return function(_0x21b8x27){logger[_0x4099[50]](_0x4099[22],_0x21b8x17,_0x21b8x16,JSON[_0x4099[31]](_0x21b8x27));delete _0x21b8x27[_0x4099[51]];_0x21b8x15[_0x4099[29]](_0x21b8x16)[_0x4099[52]](_0x21b8x27)}}exports[_0x4099[53]]= function(_0x21b8x28,_0x21b8x15){var _0x21b8x1b={},_0x21b8x29={};_0x21b8x29[_0x4099[54]]= _[_0x4099[57]](db[_0x4099[56]][_0x4099[55]]);_0x21b8x29[_0x4099[58]]= _[_0x4099[57]](_0x21b8x28[_0x4099[58]]);_0x21b8x29[_0x4099[59]]= _[_0x4099[60]](_0x21b8x29[_0x4099[54]],_0x21b8x29[_0x4099[58]]);_0x21b8x1b[_0x4099[61]]= _[_0x4099[60]](_0x21b8x29[_0x4099[54]],qs[_0x4099[62]](_0x21b8x28[_0x4099[58]][_0x4099[62]]));_0x21b8x1b[_0x4099[61]]= (_0x21b8x1b[_0x4099[61]][_0x4099[63]])?_0x21b8x1b[_0x4099[61]]:_0x21b8x29[_0x4099[54]];if(!_0x21b8x28[_0x4099[58]][_0x4099[65]](_0x4099[64])){_0x21b8x1b[_0x4099[35]]= qs[_0x4099[35]](_0x21b8x28[_0x4099[58]][_0x4099[35]]);_0x21b8x1b[_0x4099[34]]= qs[_0x4099[34]](_0x21b8x28[_0x4099[58]][_0x4099[34]])};_0x21b8x1b[_0x4099[66]]= qs[_0x4099[67]](_0x21b8x28[_0x4099[58]][_0x4099[67]]);_0x21b8x1b[_0x4099[68]]= qs[_0x4099[59]](_[_0x4099[69]](_0x21b8x28[_0x4099[58]],_0x21b8x29[_0x4099[59]]));if(_0x21b8x28[_0x4099[58]][_0x4099[70]]){_0x21b8x1b[_0x4099[68]]= _[_0x4099[73]](_0x21b8x1b[_0x4099[68]],{$or:_[_0x4099[72]](_0x21b8x1b[_0x4099[61]],function(_0x21b8x2a){var _0x21b8x2b={};_0x21b8x2b[_0x21b8x2a]= {$like:_0x4099[71]+ _0x21b8x28[_0x4099[58]][_0x4099[70]]+ _0x4099[71]};return _0x21b8x2b})})};_0x21b8x1b= _[_0x4099[73]]({},_0x21b8x1b,_0x21b8x28[_0x4099[74]]);return db[_0x4099[56]][_0x4099[76]](_0x21b8x1b)[_0x4099[45]](respondWithFilteredResult(_0x21b8x15,_0x21b8x1b,_0x4099[53]))[_0x4099[75]](handleError(_0x21b8x15,null,_0x4099[53]))};exports[_0x4099[77]]= function(_0x21b8x28,_0x21b8x15){var _0x21b8x1b={raw:true,where:{id:_0x21b8x28[_0x4099[79]][_0x4099[78]]}},_0x21b8x29={};_0x21b8x29[_0x4099[54]]= _[_0x4099[57]](db[_0x4099[56]][_0x4099[55]]);_0x21b8x29[_0x4099[58]]= _[_0x4099[57]](_0x21b8x28[_0x4099[58]]);_0x21b8x29[_0x4099[59]]= _[_0x4099[60]](_0x21b8x29[_0x4099[54]],_0x21b8x29[_0x4099[58]]);_0x21b8x1b[_0x4099[61]]= _[_0x4099[60]](_0x21b8x29[_0x4099[54]],qs[_0x4099[62]](_0x21b8x28[_0x4099[58]][_0x4099[62]]));_0x21b8x1b[_0x4099[61]]= (_0x21b8x1b[_0x4099[61]][_0x4099[63]])?_0x21b8x1b[_0x4099[61]]:_0x21b8x29[_0x4099[54]];_0x21b8x1b= _[_0x4099[73]]({},_0x21b8x1b,_0x21b8x28[_0x4099[74]]);return db[_0x4099[56]][_0x4099[80]](_0x21b8x1b)[_0x4099[45]](handleEntityNotFound(_0x21b8x15,null,_0x4099[77]))[_0x4099[45]](respondWithResult(_0x21b8x15,null,_0x4099[77]))[_0x4099[75]](handleError(_0x21b8x15,null,_0x4099[77]))};exports[_0x4099[81]]= function(_0x21b8x28,_0x21b8x15){return db[_0x4099[56]][_0x4099[81]](_0x21b8x28[_0x4099[82]],{})[_0x4099[45]](respondWithResult(_0x21b8x15,201,_0x4099[81]))[_0x4099[75]](handleError(_0x21b8x15,null,_0x4099[81]))};exports[_0x4099[46]]= function(_0x21b8x28,_0x21b8x15){if(_0x21b8x28[_0x4099[82]][_0x4099[78]]){delete _0x21b8x28[_0x4099[82]][_0x4099[78]]};return db[_0x4099[56]][_0x4099[80]]({where:{id:_0x21b8x28[_0x4099[79]][_0x4099[78]]}})[_0x4099[45]](handleEntityNotFound(_0x21b8x15,null,_0x4099[46]))[_0x4099[45]](saveUpdates(_0x21b8x28[_0x4099[82]],null,_0x4099[46]))[_0x4099[45]](respondWithResult(_0x21b8x15,null,_0x4099[46]))[_0x4099[75]](handleError(_0x21b8x15,null,_0x4099[46]))};exports[_0x4099[48]]= function(_0x21b8x28,_0x21b8x15){return db[_0x4099[56]][_0x4099[80]]({where:{id:_0x21b8x28[_0x4099[79]][_0x4099[78]]}})[_0x4099[45]](handleEntityNotFound(_0x21b8x15,null,_0x4099[48]))[_0x4099[45]](removeEntity(_0x21b8x15,null,_0x4099[48]))[_0x4099[75]](handleError(_0x21b8x15,null,_0x4099[48]))};exports[_0x4099[83]]= function(_0x21b8x28,_0x21b8x15,_0x21b8x2c){var _0x21b8x2d;return db[_0x4099[56]][_0x4099[80]]({where:{id:_0x21b8x28[_0x4099[79]][_0x4099[78]]},attributes:[_0x4099[78],_0x4099[85]]})[_0x4099[45]](handleEntityNotFound(_0x21b8x15,null,_0x4099[83]))[_0x4099[45]](function(_0x21b8x18){if(_0x21b8x18){var db=require(_0x4099[84])();db[_0x4099[86]](_0x21b8x18[_0x4099[85]]);db[_0x4099[87]]();return _0x21b8x18}})[_0x4099[45]](respondWithResult(_0x21b8x15,null,_0x4099[83]))[_0x4099[75]](handleError(_0x21b8x15,null,_0x4099[83]))}
\ No newline at end of file
+var _0xf22b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x74\x65\x73\x74","\x6F\x64\x62\x63","\x64\x73\x6E","\x6F\x70\x65\x6E\x53\x79\x6E\x63","\x63\x6C\x6F\x73\x65\x53\x79\x6E\x63"];_0xf22b[0];var jsonpatch=require(_0xf22b[1]);var rp=require(_0xf22b[2]);var moment=require(_0xf22b[3]);var BPromise=require(_0xf22b[4]);var util=require(_0xf22b[5]);var path=require(_0xf22b[6]);var sox=require(_0xf22b[7]);var ejs=require(_0xf22b[8]);var fs=require(_0xf22b[9]);var _=require(_0xf22b[10]);var squel=require(_0xf22b[11]);var crypto=require(_0xf22b[12]);var jsforce=require(_0xf22b[13]);var toCsv=require(_0xf22b[14]);var qs=require(_0xf22b[15]);var logger=require(_0xf22b[17])(_0xf22b[16]);var utils=require(_0xf22b[18]);var config=require(_0xf22b[19]);var db=require(_0xf22b[21])[_0xf22b[20]];function respondWithStatusCode(_0xf7eax15,_0xf7eax16,_0xf7eax17){_0xf7eax16= _0xf7eax16|| 204;return function(_0xf7eax18){if(_0xf7eax18){logger[_0xf22b[24]](_0xf22b[22],_0xf7eax17,_0xf7eax16,_0xf22b[23]);logger[_0xf22b[26]](_0xf22b[25],_0xf7eax17,_0xf7eax16,_0xf22b[23]);return _0xf7eax15[_0xf22b[27]](_0xf7eax16)};return _0xf7eax15[_0xf22b[29]](304)[_0xf22b[28]]()}}function respondWithResult(_0xf7eax15,_0xf7eax16,_0xf7eax17){_0xf7eax16= _0xf7eax16|| 200;return function(_0xf7eax18){if(_0xf7eax18){logger[_0xf22b[24]](_0xf22b[22],_0xf7eax17,_0xf7eax16,_0xf22b[30]);logger[_0xf22b[26]](_0xf22b[25],_0xf7eax17,_0xf7eax16,_0xf22b[30],JSON[_0xf22b[31]](_0xf7eax18));return _0xf7eax15[_0xf22b[29]](_0xf7eax16)[_0xf22b[32]](_0xf7eax18)};return _0xf7eax15[_0xf22b[29]](304)[_0xf22b[28]]()}}function respondWithFilteredResult(_0xf7eax15,_0xf7eax1b,_0xf7eax17){return function(_0xf7eax18){if(_0xf7eax18){var _0xf7eax1c=_0xf7eax18[_0xf22b[33]],_0xf7eax1d=_0xf7eax1b[_0xf22b[34]],_0xf7eax1e=_0xf7eax1b[_0xf22b[34]]+ _0xf7eax1b[_0xf22b[35]],_0xf7eax16;if(_0xf7eax1e>= _0xf7eax1c){_0xf7eax1e= _0xf7eax1c;_0xf7eax16= 200}else {_0xf7eax16= 206};_0xf7eax15[_0xf22b[29]](_0xf7eax16);logger[_0xf22b[24]](_0xf22b[22],_0xf7eax17,_0xf7eax16,_0xf22b[36]);logger[_0xf22b[26]](_0xf22b[25],_0xf7eax17,_0xf7eax16,_0xf22b[30],JSON[_0xf22b[31]](_0xf7eax18));return _0xf7eax15[_0xf22b[40]](_0xf22b[37],_0xf7eax1d+ _0xf22b[38]+ _0xf7eax1e+ _0xf22b[39]+ _0xf7eax1c)[_0xf22b[32]](_0xf7eax18)};return null}}function patchUpdates(_0xf7eax20){return function(_0xf7eax18){try{jsonpatch[_0xf22b[41]](_0xf7eax18,_0xf7eax20,true)}catch(err){return BPromise[_0xf22b[42]](err)};return _0xf7eax18[_0xf22b[43]]()}}function saveUpdates(_0xf7eax22,_0xf7eax16,_0xf7eax17){return function(_0xf7eax18){if(_0xf7eax18){return _0xf7eax18[_0xf22b[46]](_0xf7eax22)[_0xf22b[45]](function(_0xf7eax23){logger[_0xf22b[24]](_0xf22b[22],_0xf7eax17,_0xf7eax16,_0xf22b[44]);logger[_0xf22b[26]](_0xf22b[25],_0xf7eax17,_0xf7eax16,_0xf22b[44],JSON[_0xf22b[31]](_0xf7eax18));return _0xf7eax23})};return null}}function removeEntity(_0xf7eax15,_0xf7eax16,_0xf7eax17){return function(_0xf7eax18){if(_0xf7eax18){return _0xf7eax18[_0xf22b[48]]()[_0xf22b[45]](function(){logger[_0xf22b[24]](_0xf22b[22],_0xf7eax17,_0xf7eax16,_0xf22b[47]);logger[_0xf22b[26]](_0xf22b[25],_0xf7eax17,_0xf7eax16,_0xf22b[47],JSON[_0xf22b[31]](_0xf7eax18));_0xf7eax15[_0xf22b[29]](204)[_0xf22b[28]]()})}}}function handleEntityNotFound(_0xf7eax15,_0xf7eax16,_0xf7eax17){return function(_0xf7eax18){if(!_0xf7eax18){logger[_0xf22b[50]](_0xf22b[22],_0xf7eax17,404,_0xf22b[49]);_0xf7eax15[_0xf22b[29]](404)[_0xf22b[28]]();return null};return _0xf7eax18}}function handleError(_0xf7eax15,_0xf7eax16,_0xf7eax17){_0xf7eax16= _0xf7eax16|| 500;return function(_0xf7eax27){logger[_0xf22b[50]](_0xf22b[22],_0xf7eax17,_0xf7eax16,JSON[_0xf22b[31]](_0xf7eax27));delete _0xf7eax27[_0xf22b[51]];_0xf7eax15[_0xf22b[29]](_0xf7eax16)[_0xf22b[52]](_0xf7eax27)}}exports[_0xf22b[53]]= function(_0xf7eax28,_0xf7eax15){var _0xf7eax1b={},_0xf7eax29={};_0xf7eax29[_0xf22b[54]]= _[_0xf22b[57]](db[_0xf22b[56]][_0xf22b[55]]);_0xf7eax29[_0xf22b[58]]= _[_0xf22b[57]](_0xf7eax28[_0xf22b[58]]);_0xf7eax29[_0xf22b[59]]= _[_0xf22b[60]](_0xf7eax29[_0xf22b[54]],_0xf7eax29[_0xf22b[58]]);_0xf7eax1b[_0xf22b[61]]= _[_0xf22b[60]](_0xf7eax29[_0xf22b[54]],qs[_0xf22b[62]](_0xf7eax28[_0xf22b[58]][_0xf22b[62]]));_0xf7eax1b[_0xf22b[61]]= (_0xf7eax1b[_0xf22b[61]][_0xf22b[63]])?_0xf7eax1b[_0xf22b[61]]:_0xf7eax29[_0xf22b[54]];if(!_0xf7eax28[_0xf22b[58]][_0xf22b[65]](_0xf22b[64])){_0xf7eax1b[_0xf22b[35]]= qs[_0xf22b[35]](_0xf7eax28[_0xf22b[58]][_0xf22b[35]]);_0xf7eax1b[_0xf22b[34]]= qs[_0xf22b[34]](_0xf7eax28[_0xf22b[58]][_0xf22b[34]])};_0xf7eax1b[_0xf22b[66]]= qs[_0xf22b[67]](_0xf7eax28[_0xf22b[58]][_0xf22b[67]]);_0xf7eax1b[_0xf22b[68]]= qs[_0xf22b[59]](_[_0xf22b[69]](_0xf7eax28[_0xf22b[58]],_0xf7eax29[_0xf22b[59]]));if(_0xf7eax28[_0xf22b[58]][_0xf22b[70]]){_0xf7eax1b[_0xf22b[68]]= _[_0xf22b[73]](_0xf7eax1b[_0xf22b[68]],{$or:_[_0xf22b[72]](_0xf7eax1b[_0xf22b[61]],function(_0xf7eax2a){var _0xf7eax2b={};_0xf7eax2b[_0xf7eax2a]= {$like:_0xf22b[71]+ _0xf7eax28[_0xf22b[58]][_0xf22b[70]]+ _0xf22b[71]};return _0xf7eax2b})})};_0xf7eax1b= _[_0xf22b[73]]({},_0xf7eax1b,_0xf7eax28[_0xf22b[74]]);return db[_0xf22b[56]][_0xf22b[76]](_0xf7eax1b)[_0xf22b[45]](respondWithFilteredResult(_0xf7eax15,_0xf7eax1b,_0xf22b[53]))[_0xf22b[75]](handleError(_0xf7eax15,null,_0xf22b[53]))};exports[_0xf22b[77]]= function(_0xf7eax28,_0xf7eax15){var _0xf7eax1b={raw:true,where:{id:_0xf7eax28[_0xf22b[79]][_0xf22b[78]]}},_0xf7eax29={};_0xf7eax29[_0xf22b[54]]= _[_0xf22b[57]](db[_0xf22b[56]][_0xf22b[55]]);_0xf7eax29[_0xf22b[58]]= _[_0xf22b[57]](_0xf7eax28[_0xf22b[58]]);_0xf7eax29[_0xf22b[59]]= _[_0xf22b[60]](_0xf7eax29[_0xf22b[54]],_0xf7eax29[_0xf22b[58]]);_0xf7eax1b[_0xf22b[61]]= _[_0xf22b[60]](_0xf7eax29[_0xf22b[54]],qs[_0xf22b[62]](_0xf7eax28[_0xf22b[58]][_0xf22b[62]]));_0xf7eax1b[_0xf22b[61]]= (_0xf7eax1b[_0xf22b[61]][_0xf22b[63]])?_0xf7eax1b[_0xf22b[61]]:_0xf7eax29[_0xf22b[54]];_0xf7eax1b= _[_0xf22b[73]]({},_0xf7eax1b,_0xf7eax28[_0xf22b[74]]);return db[_0xf22b[56]][_0xf22b[80]](_0xf7eax1b)[_0xf22b[45]](handleEntityNotFound(_0xf7eax15,null,_0xf22b[77]))[_0xf22b[45]](respondWithResult(_0xf7eax15,null,_0xf22b[77]))[_0xf22b[75]](handleError(_0xf7eax15,null,_0xf22b[77]))};exports[_0xf22b[81]]= function(_0xf7eax28,_0xf7eax15){return db[_0xf22b[56]][_0xf22b[81]](_0xf7eax28[_0xf22b[82]],{})[_0xf22b[45]](respondWithResult(_0xf7eax15,201,_0xf22b[81]))[_0xf22b[75]](handleError(_0xf7eax15,null,_0xf22b[81]))};exports[_0xf22b[46]]= function(_0xf7eax28,_0xf7eax15){if(_0xf7eax28[_0xf22b[82]][_0xf22b[78]]){delete _0xf7eax28[_0xf22b[82]][_0xf22b[78]]};return db[_0xf22b[56]][_0xf22b[80]]({where:{id:_0xf7eax28[_0xf22b[79]][_0xf22b[78]]}})[_0xf22b[45]](handleEntityNotFound(_0xf7eax15,null,_0xf22b[46]))[_0xf22b[45]](saveUpdates(_0xf7eax28[_0xf22b[82]],null,_0xf22b[46]))[_0xf22b[45]](respondWithResult(_0xf7eax15,null,_0xf22b[46]))[_0xf22b[75]](handleError(_0xf7eax15,null,_0xf22b[46]))};exports[_0xf22b[48]]= function(_0xf7eax28,_0xf7eax15){return db[_0xf22b[56]][_0xf22b[80]]({where:{id:_0xf7eax28[_0xf22b[79]][_0xf22b[78]]}})[_0xf22b[45]](handleEntityNotFound(_0xf7eax15,null,_0xf22b[48]))[_0xf22b[45]](removeEntity(_0xf7eax15,null,_0xf22b[48]))[_0xf22b[75]](handleError(_0xf7eax15,null,_0xf22b[48]))};exports[_0xf22b[83]]= function(_0xf7eax28,_0xf7eax15,_0xf7eax2c){var _0xf7eax2d;return db[_0xf22b[56]][_0xf22b[80]]({where:{id:_0xf7eax28[_0xf22b[79]][_0xf22b[78]]},attributes:[_0xf22b[78],_0xf22b[85]]})[_0xf22b[45]](handleEntityNotFound(_0xf7eax15,null,_0xf22b[83]))[_0xf22b[45]](function(_0xf7eax18){if(_0xf7eax18){var db=require(_0xf22b[84])();db[_0xf22b[86]](_0xf7eax18[_0xf22b[85]]);db[_0xf22b[87]]();return _0xf7eax18}})[_0xf22b[45]](respondWithResult(_0xf7eax15,null,_0xf22b[83]))[_0xf22b[75]](handleError(_0xf7eax15,null,_0xf22b[83]))}
\ No newline at end of file
index 6aa2a81..0f7ad5f 100644 (file)
@@ -1 +1 @@
-var _0x972d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x73\x71\x75\x61\x72\x65\x5F\x6F\x64\x62\x63","\x64\x65\x66\x69\x6E\x65"];_0x972d[0];var _=require(_0x972d[1]);var util=require(_0x972d[2]);var logger=require(_0x972d[4])(_0x972d[3]);var attributes=require(_0x972d[5]);module[_0x972d[6]]= function(_0xe5f2x5,_0xe5f2x6){return _0xe5f2x5[_0x972d[9]](_0x972d[7],attributes,{tableName:_0x972d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xc94a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x73\x71\x75\x61\x72\x65\x5F\x6F\x64\x62\x63","\x64\x65\x66\x69\x6E\x65"];_0xc94a[0];var _=require(_0xc94a[1]);var util=require(_0xc94a[2]);var logger=require(_0xc94a[4])(_0xc94a[3]);var attributes=require(_0xc94a[5]);module[_0xc94a[6]]= function(_0xa976x5,_0xa976x6){return _0xa976x5[_0xc94a[9]](_0xc94a[7],attributes,{tableName:_0xc94a[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index bd06131..f2a13cf 100644 (file)
@@ -1 +1 @@
-var _0x68e2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63"];_0x68e2[0];var _=require(_0x68e2[1]);var util=require(_0x68e2[2]);var moment=require(_0x68e2[3]);var BPromise=require(_0x68e2[4]);var db=require(_0x68e2[6])[_0x68e2[5]];var utils=require(_0x68e2[7]);var logger=require(_0x68e2[9])(_0x68e2[8]);var jayson=require(_0x68e2[10]);var client=jayson[_0x68e2[12]][_0x68e2[11]]({port:9002});function respondWithRpcPromise(_0xb5c5xb,_0xb5c5xc,_0xb5c5xd){return  new BPromise(function(_0xb5c5xe,_0xb5c5xf){return client[_0x68e2[25]](_0xb5c5xb,_0xb5c5xd)[_0x68e2[24]](function(_0xb5c5x11){logger[_0x68e2[17]](_0x68e2[13],_0xb5c5xc,_0x68e2[16]);logger[_0x68e2[20]](_0x68e2[18],_0xb5c5xc,_0x68e2[16],JSON[_0x68e2[19]](_0xb5c5x11));if(_0xb5c5x11[_0x68e2[14]]){if(_0xb5c5x11[_0x68e2[14]][_0x68e2[21]]=== 500){logger[_0x68e2[14]](_0x68e2[13],_0xb5c5xc,_0xb5c5x11[_0x68e2[14]][_0x68e2[22]]);return _0xb5c5xf(_0xb5c5x11[_0x68e2[14]][_0x68e2[22]])};logger[_0x68e2[14]](_0x68e2[13],_0xb5c5xc,_0xb5c5x11[_0x68e2[14]][_0x68e2[22]]);return _0xb5c5xe(_0xb5c5x11[_0x68e2[14]][_0x68e2[22]])}else {logger[_0x68e2[17]](_0x68e2[13],_0xb5c5xc,_0x68e2[16]);_0xb5c5xe(_0xb5c5x11[_0x68e2[23]][_0x68e2[22]])}})[_0x68e2[15]](function(_0xb5c5x10){logger[_0x68e2[14]](_0x68e2[13],_0xb5c5xc,_0xb5c5x10);_0xb5c5xf(_0xb5c5x10)})})}exports[_0x68e2[26]]= function(_0xb5c5xd){var _0xb5c5x12=this;return  new Promise(function(_0xb5c5xe,_0xb5c5xf){return db[_0x68e2[36]][_0x68e2[35]]({raw:_0xb5c5xd[_0x68e2[27]]?(_0xb5c5xd[_0x68e2[27]][_0x68e2[28]]=== undefined)?true:false:true,where:_0xb5c5xd[_0x68e2[27]]?_0xb5c5xd[_0x68e2[27]][_0x68e2[29]]|| null:null,attributes:_0xb5c5xd[_0x68e2[27]]?_0xb5c5xd[_0x68e2[27]][_0x68e2[30]]|| null:null,include:_0xb5c5xd[_0x68e2[27]]?(_0xb5c5xd[_0x68e2[27]][_0x68e2[31]]?_[_0x68e2[34]](_0xb5c5xd[_0x68e2[27]][_0x68e2[31]],function(_0xb5c5x13){return {model:db[_0xb5c5x13[_0x68e2[32]]],as:_0xb5c5x13[_0x68e2[33]],attributes:_0xb5c5x13[_0x68e2[30]],include:_0xb5c5x13[_0x68e2[31]]?_[_0x68e2[34]](_0xb5c5x13[_0x68e2[31]],function(_0xb5c5x14){return {model:db[_0xb5c5x14[_0x68e2[32]]],as:_0xb5c5x14[_0x68e2[33]],attributes:_0xb5c5x14[_0x68e2[30]],include:_0xb5c5x14[_0x68e2[31]]?_[_0x68e2[34]](_0xb5c5x14[_0x68e2[31]],function(_0xb5c5x15){return {model:db[_0xb5c5x15[_0x68e2[32]]],as:_0xb5c5x15[_0x68e2[33]],attributes:_0xb5c5x15[_0x68e2[30]]}}):[]}}):[]}}):[]):[]})[_0x68e2[24]](function(_0xb5c5x11){logger[_0x68e2[17]](_0x68e2[26],_0xb5c5xd);logger[_0x68e2[20]](_0x68e2[26],_0xb5c5xd,JSON[_0x68e2[19]](_0xb5c5x11));_0xb5c5xe(_0xb5c5x11)})[_0x68e2[15]](function(_0xb5c5x10){logger[_0x68e2[14]](_0x68e2[26],_0xb5c5x10[_0x68e2[22]],_0xb5c5xd);_0xb5c5xf(_0xb5c5x12[_0x68e2[14]](500,_0xb5c5x10[_0x68e2[22]]))})})}
\ No newline at end of file
+var _0x4fa7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63"];_0x4fa7[0];var _=require(_0x4fa7[1]);var util=require(_0x4fa7[2]);var moment=require(_0x4fa7[3]);var BPromise=require(_0x4fa7[4]);var db=require(_0x4fa7[6])[_0x4fa7[5]];var utils=require(_0x4fa7[7]);var logger=require(_0x4fa7[9])(_0x4fa7[8]);var jayson=require(_0x4fa7[10]);var client=jayson[_0x4fa7[12]][_0x4fa7[11]]({port:9002});function respondWithRpcPromise(_0x3ddfxb,_0x3ddfxc,_0x3ddfxd){return  new BPromise(function(_0x3ddfxe,_0x3ddfxf){return client[_0x4fa7[25]](_0x3ddfxb,_0x3ddfxd)[_0x4fa7[24]](function(_0x3ddfx11){logger[_0x4fa7[17]](_0x4fa7[13],_0x3ddfxc,_0x4fa7[16]);logger[_0x4fa7[20]](_0x4fa7[18],_0x3ddfxc,_0x4fa7[16],JSON[_0x4fa7[19]](_0x3ddfx11));if(_0x3ddfx11[_0x4fa7[14]]){if(_0x3ddfx11[_0x4fa7[14]][_0x4fa7[21]]=== 500){logger[_0x4fa7[14]](_0x4fa7[13],_0x3ddfxc,_0x3ddfx11[_0x4fa7[14]][_0x4fa7[22]]);return _0x3ddfxf(_0x3ddfx11[_0x4fa7[14]][_0x4fa7[22]])};logger[_0x4fa7[14]](_0x4fa7[13],_0x3ddfxc,_0x3ddfx11[_0x4fa7[14]][_0x4fa7[22]]);return _0x3ddfxe(_0x3ddfx11[_0x4fa7[14]][_0x4fa7[22]])}else {logger[_0x4fa7[17]](_0x4fa7[13],_0x3ddfxc,_0x4fa7[16]);_0x3ddfxe(_0x3ddfx11[_0x4fa7[23]][_0x4fa7[22]])}})[_0x4fa7[15]](function(_0x3ddfx10){logger[_0x4fa7[14]](_0x4fa7[13],_0x3ddfxc,_0x3ddfx10);_0x3ddfxf(_0x3ddfx10)})})}exports[_0x4fa7[26]]= function(_0x3ddfxd){var _0x3ddfx12=this;return  new Promise(function(_0x3ddfxe,_0x3ddfxf){return db[_0x4fa7[36]][_0x4fa7[35]]({raw:_0x3ddfxd[_0x4fa7[27]]?(_0x3ddfxd[_0x4fa7[27]][_0x4fa7[28]]=== undefined)?true:false:true,where:_0x3ddfxd[_0x4fa7[27]]?_0x3ddfxd[_0x4fa7[27]][_0x4fa7[29]]|| null:null,attributes:_0x3ddfxd[_0x4fa7[27]]?_0x3ddfxd[_0x4fa7[27]][_0x4fa7[30]]|| null:null,include:_0x3ddfxd[_0x4fa7[27]]?(_0x3ddfxd[_0x4fa7[27]][_0x4fa7[31]]?_[_0x4fa7[34]](_0x3ddfxd[_0x4fa7[27]][_0x4fa7[31]],function(_0x3ddfx13){return {model:db[_0x3ddfx13[_0x4fa7[32]]],as:_0x3ddfx13[_0x4fa7[33]],attributes:_0x3ddfx13[_0x4fa7[30]],include:_0x3ddfx13[_0x4fa7[31]]?_[_0x4fa7[34]](_0x3ddfx13[_0x4fa7[31]],function(_0x3ddfx14){return {model:db[_0x3ddfx14[_0x4fa7[32]]],as:_0x3ddfx14[_0x4fa7[33]],attributes:_0x3ddfx14[_0x4fa7[30]],include:_0x3ddfx14[_0x4fa7[31]]?_[_0x4fa7[34]](_0x3ddfx14[_0x4fa7[31]],function(_0x3ddfx15){return {model:db[_0x3ddfx15[_0x4fa7[32]]],as:_0x3ddfx15[_0x4fa7[33]],attributes:_0x3ddfx15[_0x4fa7[30]]}}):[]}}):[]}}):[]):[]})[_0x4fa7[24]](function(_0x3ddfx11){logger[_0x4fa7[17]](_0x4fa7[26],_0x3ddfxd);logger[_0x4fa7[20]](_0x4fa7[26],_0x3ddfxd,JSON[_0x4fa7[19]](_0x3ddfx11));_0x3ddfxe(_0x3ddfx11)})[_0x4fa7[15]](function(_0x3ddfx10){logger[_0x4fa7[14]](_0x4fa7[26],_0x3ddfx10[_0x4fa7[22]],_0x3ddfxd);_0x3ddfxf(_0x3ddfx12[_0x4fa7[14]](500,_0x3ddfx10[_0x4fa7[22]]))})})}
\ No newline at end of file
index fea0ff8..b2ea298 100644 (file)
@@ -1 +1 @@
-var _0xeb38=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xeb38[0];var multer=require(_0xeb38[1]);var util=require(_0xeb38[2]);var path=require(_0xeb38[3]);var express=require(_0xeb38[4]);var router=express.Router();var auth=require(_0xeb38[5]);var config=require(_0xeb38[6]);var controller=require(_0xeb38[7]);router[_0xeb38[11]](_0xeb38[8],auth[_0xeb38[9]](),controller[_0xeb38[10]]);router[_0xeb38[11]](_0xeb38[12],auth[_0xeb38[9]](),controller[_0xeb38[13]]);router[_0xeb38[15]](_0xeb38[8],auth[_0xeb38[9]](),controller[_0xeb38[14]]);router[_0xeb38[17]](_0xeb38[12],auth[_0xeb38[9]](),controller[_0xeb38[16]]);router[_0xeb38[19]](_0xeb38[12],auth[_0xeb38[9]](),controller[_0xeb38[18]]);module[_0xeb38[20]]= router
\ No newline at end of file
+var _0x355d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x355d[0];var multer=require(_0x355d[1]);var util=require(_0x355d[2]);var path=require(_0x355d[3]);var express=require(_0x355d[4]);var router=express.Router();var auth=require(_0x355d[5]);var config=require(_0x355d[6]);var controller=require(_0x355d[7]);router[_0x355d[11]](_0x355d[8],auth[_0x355d[9]](),controller[_0x355d[10]]);router[_0x355d[11]](_0x355d[12],auth[_0x355d[9]](),controller[_0x355d[13]]);router[_0x355d[15]](_0x355d[8],auth[_0x355d[9]](),controller[_0x355d[14]]);router[_0x355d[17]](_0x355d[12],auth[_0x355d[9]](),controller[_0x355d[16]]);router[_0x355d[19]](_0x355d[12],auth[_0x355d[9]](),controller[_0x355d[18]]);module[_0x355d[20]]= router
\ No newline at end of file
index acc4d9f..036a85f 100644 (file)
@@ -1 +1 @@
-var _0x7b53=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x54\x45\x58\x54","\x6C\x6F\x6E\x67","\x70\x72\x65\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x75\x74\x66\x38","\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E"];_0x7b53[0];var Sequelize=require(_0x7b53[1]);module[_0x7b53[2]]= {name:{type:Sequelize[_0x7b53[3]],unique:_0x7b53[4],allowNull:false},description:{type:Sequelize[_0x7b53[3]]},notes:{type:Sequelize[_0x7b53[5]]},preproduction:{type:Sequelize.BLOB(_0x7b53[6]),get:function(){if(this[_0x7b53[8]](_0x7b53[7])){return this[_0x7b53[8]](_0x7b53[7]).toString(_0x7b53[9])}}},production:{type:Sequelize.BLOB(_0x7b53[6]),get:function(){if(this[_0x7b53[8]](_0x7b53[10])){return this[_0x7b53[8]](_0x7b53[10]).toString(_0x7b53[9])}}}}
\ No newline at end of file
+var _0x5a63=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x54\x45\x58\x54","\x6C\x6F\x6E\x67","\x70\x72\x65\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x75\x74\x66\x38","\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E"];_0x5a63[0];var Sequelize=require(_0x5a63[1]);module[_0x5a63[2]]= {name:{type:Sequelize[_0x5a63[3]],unique:_0x5a63[4],allowNull:false},description:{type:Sequelize[_0x5a63[3]]},notes:{type:Sequelize[_0x5a63[5]]},preproduction:{type:Sequelize.BLOB(_0x5a63[6]),get:function(){if(this[_0x5a63[8]](_0x5a63[7])){return this[_0x5a63[8]](_0x5a63[7]).toString(_0x5a63[9])}}},production:{type:Sequelize.BLOB(_0x5a63[6]),get:function(){if(this[_0x5a63[8]](_0x5a63[10])){return this[_0x5a63[8]](_0x5a63[10]).toString(_0x5a63[9])}}}}
\ No newline at end of file
index ddddf03..3851a8c 100644 (file)
@@ -1 +1 @@
-var _0x4371=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x4371[0];var jsonpatch=require(_0x4371[1]);var rp=require(_0x4371[2]);var moment=require(_0x4371[3]);var BPromise=require(_0x4371[4]);var util=require(_0x4371[5]);var path=require(_0x4371[6]);var sox=require(_0x4371[7]);var ejs=require(_0x4371[8]);var fs=require(_0x4371[9]);var _=require(_0x4371[10]);var squel=require(_0x4371[11]);var crypto=require(_0x4371[12]);var jsforce=require(_0x4371[13]);var toCsv=require(_0x4371[14]);var qs=require(_0x4371[15]);var logger=require(_0x4371[17])(_0x4371[16]);var utils=require(_0x4371[18]);var config=require(_0x4371[19]);var db=require(_0x4371[21])[_0x4371[20]];function respondWithStatusCode(_0x4b8bx15,_0x4b8bx16,_0x4b8bx17){_0x4b8bx16= _0x4b8bx16|| 204;return function(_0x4b8bx18){if(_0x4b8bx18){logger[_0x4371[24]](_0x4371[22],_0x4b8bx17,_0x4b8bx16,_0x4371[23]);logger[_0x4371[26]](_0x4371[25],_0x4b8bx17,_0x4b8bx16,_0x4371[23]);return _0x4b8bx15[_0x4371[27]](_0x4b8bx16)};return _0x4b8bx15[_0x4371[29]](304)[_0x4371[28]]()}}function respondWithResult(_0x4b8bx15,_0x4b8bx16,_0x4b8bx17){_0x4b8bx16= _0x4b8bx16|| 200;return function(_0x4b8bx18){if(_0x4b8bx18){logger[_0x4371[24]](_0x4371[22],_0x4b8bx17,_0x4b8bx16,_0x4371[30]);logger[_0x4371[26]](_0x4371[25],_0x4b8bx17,_0x4b8bx16,_0x4371[30],JSON[_0x4371[31]](_0x4b8bx18));return _0x4b8bx15[_0x4371[29]](_0x4b8bx16)[_0x4371[32]](_0x4b8bx18)};return _0x4b8bx15[_0x4371[29]](304)[_0x4371[28]]()}}function respondWithFilteredResult(_0x4b8bx15,_0x4b8bx1b,_0x4b8bx17){return function(_0x4b8bx18){if(_0x4b8bx18){var _0x4b8bx1c=_0x4b8bx18[_0x4371[33]],_0x4b8bx1d=_0x4b8bx1b[_0x4371[34]],_0x4b8bx1e=_0x4b8bx1b[_0x4371[34]]+ _0x4b8bx1b[_0x4371[35]],_0x4b8bx16;if(_0x4b8bx1e>= _0x4b8bx1c){_0x4b8bx1e= _0x4b8bx1c;_0x4b8bx16= 200}else {_0x4b8bx16= 206};_0x4b8bx15[_0x4371[29]](_0x4b8bx16);logger[_0x4371[24]](_0x4371[22],_0x4b8bx17,_0x4b8bx16,_0x4371[36]);logger[_0x4371[26]](_0x4371[25],_0x4b8bx17,_0x4b8bx16,_0x4371[30],JSON[_0x4371[31]](_0x4b8bx18));return _0x4b8bx15[_0x4371[40]](_0x4371[37],_0x4b8bx1d+ _0x4371[38]+ _0x4b8bx1e+ _0x4371[39]+ _0x4b8bx1c)[_0x4371[32]](_0x4b8bx18)};return null}}function patchUpdates(_0x4b8bx20){return function(_0x4b8bx18){try{jsonpatch[_0x4371[41]](_0x4b8bx18,_0x4b8bx20,true)}catch(err){return BPromise[_0x4371[42]](err)};return _0x4b8bx18[_0x4371[43]]()}}function saveUpdates(_0x4b8bx22,_0x4b8bx16,_0x4b8bx17){return function(_0x4b8bx18){if(_0x4b8bx18){return _0x4b8bx18[_0x4371[46]](_0x4b8bx22)[_0x4371[45]](function(_0x4b8bx23){logger[_0x4371[24]](_0x4371[22],_0x4b8bx17,_0x4b8bx16,_0x4371[44]);logger[_0x4371[26]](_0x4371[25],_0x4b8bx17,_0x4b8bx16,_0x4371[44],JSON[_0x4371[31]](_0x4b8bx18));return _0x4b8bx23})};return null}}function removeEntity(_0x4b8bx15,_0x4b8bx16,_0x4b8bx17){return function(_0x4b8bx18){if(_0x4b8bx18){return _0x4b8bx18[_0x4371[48]]()[_0x4371[45]](function(){logger[_0x4371[24]](_0x4371[22],_0x4b8bx17,_0x4b8bx16,_0x4371[47]);logger[_0x4371[26]](_0x4371[25],_0x4b8bx17,_0x4b8bx16,_0x4371[47],JSON[_0x4371[31]](_0x4b8bx18));_0x4b8bx15[_0x4371[29]](204)[_0x4371[28]]()})}}}function handleEntityNotFound(_0x4b8bx15,_0x4b8bx16,_0x4b8bx17){return function(_0x4b8bx18){if(!_0x4b8bx18){logger[_0x4371[50]](_0x4371[22],_0x4b8bx17,404,_0x4371[49]);_0x4b8bx15[_0x4371[29]](404)[_0x4371[28]]();return null};return _0x4b8bx18}}function handleError(_0x4b8bx15,_0x4b8bx16,_0x4b8bx17){_0x4b8bx16= _0x4b8bx16|| 500;return function(_0x4b8bx27){logger[_0x4371[50]](_0x4371[22],_0x4b8bx17,_0x4b8bx16,JSON[_0x4371[31]](_0x4b8bx27));delete _0x4b8bx27[_0x4371[51]];_0x4b8bx15[_0x4371[29]](_0x4b8bx16)[_0x4371[52]](_0x4b8bx27)}}exports[_0x4371[53]]= function(_0x4b8bx28,_0x4b8bx15){var _0x4b8bx1b={},_0x4b8bx29={};_0x4b8bx29[_0x4371[54]]= _[_0x4371[57]](db[_0x4371[56]][_0x4371[55]]);_0x4b8bx29[_0x4371[58]]= _[_0x4371[57]](_0x4b8bx28[_0x4371[58]]);_0x4b8bx29[_0x4371[59]]= _[_0x4371[60]](_0x4b8bx29[_0x4371[54]],_0x4b8bx29[_0x4371[58]]);_0x4b8bx1b[_0x4371[61]]= _[_0x4371[60]](_0x4b8bx29[_0x4371[54]],qs[_0x4371[62]](_0x4b8bx28[_0x4371[58]][_0x4371[62]]));_0x4b8bx1b[_0x4371[61]]= (_0x4b8bx1b[_0x4371[61]][_0x4371[63]])?_0x4b8bx1b[_0x4371[61]]:_0x4b8bx29[_0x4371[54]];if(!_0x4b8bx28[_0x4371[58]][_0x4371[65]](_0x4371[64])){_0x4b8bx1b[_0x4371[35]]= qs[_0x4371[35]](_0x4b8bx28[_0x4371[58]][_0x4371[35]]);_0x4b8bx1b[_0x4371[34]]= qs[_0x4371[34]](_0x4b8bx28[_0x4371[58]][_0x4371[34]])};_0x4b8bx1b[_0x4371[66]]= qs[_0x4371[67]](_0x4b8bx28[_0x4371[58]][_0x4371[67]]);_0x4b8bx1b[_0x4371[68]]= qs[_0x4371[59]](_[_0x4371[69]](_0x4b8bx28[_0x4371[58]],_0x4b8bx29[_0x4371[59]]));if(_0x4b8bx28[_0x4371[58]][_0x4371[70]]){_0x4b8bx1b[_0x4371[68]]= _[_0x4371[73]](_0x4b8bx1b[_0x4371[68]],{$or:_[_0x4371[72]](_0x4b8bx1b[_0x4371[61]],function(_0x4b8bx2a){var _0x4b8bx2b={};_0x4b8bx2b[_0x4b8bx2a]= {$like:_0x4371[71]+ _0x4b8bx28[_0x4371[58]][_0x4371[70]]+ _0x4371[71]};return _0x4b8bx2b})})};_0x4b8bx1b= _[_0x4371[73]]({},_0x4b8bx1b,_0x4b8bx28[_0x4371[74]]);return db[_0x4371[56]][_0x4371[76]](_0x4b8bx1b)[_0x4371[45]](respondWithFilteredResult(_0x4b8bx15,_0x4b8bx1b,_0x4371[53]))[_0x4371[75]](handleError(_0x4b8bx15,null,_0x4371[53]))};exports[_0x4371[77]]= function(_0x4b8bx28,_0x4b8bx15){var _0x4b8bx1b={raw:false,where:{id:_0x4b8bx28[_0x4371[79]][_0x4371[78]]}},_0x4b8bx29={};_0x4b8bx29[_0x4371[54]]= _[_0x4371[57]](db[_0x4371[56]][_0x4371[55]]);_0x4b8bx29[_0x4371[58]]= _[_0x4371[57]](_0x4b8bx28[_0x4371[58]]);_0x4b8bx29[_0x4371[59]]= _[_0x4371[60]](_0x4b8bx29[_0x4371[54]],_0x4b8bx29[_0x4371[58]]);_0x4b8bx1b[_0x4371[61]]= _[_0x4371[60]](_0x4b8bx29[_0x4371[54]],qs[_0x4371[62]](_0x4b8bx28[_0x4371[58]][_0x4371[62]]));_0x4b8bx1b[_0x4371[61]]= (_0x4b8bx1b[_0x4371[61]][_0x4371[63]])?_0x4b8bx1b[_0x4371[61]]:_0x4b8bx29[_0x4371[54]];_0x4b8bx1b= _[_0x4371[73]]({},_0x4b8bx1b,_0x4b8bx28[_0x4371[74]]);return db[_0x4371[56]][_0x4371[80]](_0x4b8bx1b)[_0x4371[45]](handleEntityNotFound(_0x4b8bx15,null,_0x4371[77]))[_0x4371[45]](respondWithResult(_0x4b8bx15,null,_0x4371[77]))[_0x4371[75]](handleError(_0x4b8bx15,null,_0x4371[77]))};exports[_0x4371[81]]= function(_0x4b8bx28,_0x4b8bx15){return db[_0x4371[56]][_0x4371[81]](_0x4b8bx28[_0x4371[82]],{})[_0x4371[45]](respondWithResult(_0x4b8bx15,201,_0x4371[81]))[_0x4371[75]](handleError(_0x4b8bx15,null,_0x4371[81]))};exports[_0x4371[46]]= function(_0x4b8bx28,_0x4b8bx15){if(_0x4b8bx28[_0x4371[82]][_0x4371[78]]){delete _0x4b8bx28[_0x4371[82]][_0x4371[78]]};return db[_0x4371[56]][_0x4371[80]]({where:{id:_0x4b8bx28[_0x4371[79]][_0x4371[78]]}})[_0x4371[45]](handleEntityNotFound(_0x4b8bx15,null,_0x4371[46]))[_0x4371[45]](saveUpdates(_0x4b8bx28[_0x4371[82]],null,_0x4371[46]))[_0x4371[45]](respondWithResult(_0x4b8bx15,null,_0x4371[46]))[_0x4371[75]](handleError(_0x4b8bx15,null,_0x4371[46]))};exports[_0x4371[48]]= function(_0x4b8bx28,_0x4b8bx15){return db[_0x4371[56]][_0x4371[80]]({where:{id:_0x4b8bx28[_0x4371[79]][_0x4371[78]]}})[_0x4371[45]](handleEntityNotFound(_0x4b8bx15,null,_0x4371[48]))[_0x4371[45]](removeEntity(_0x4b8bx15,null,_0x4371[48]))[_0x4371[75]](handleError(_0x4b8bx15,null,_0x4371[48]))}
\ No newline at end of file
+var _0xff2e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xff2e[0];var jsonpatch=require(_0xff2e[1]);var rp=require(_0xff2e[2]);var moment=require(_0xff2e[3]);var BPromise=require(_0xff2e[4]);var util=require(_0xff2e[5]);var path=require(_0xff2e[6]);var sox=require(_0xff2e[7]);var ejs=require(_0xff2e[8]);var fs=require(_0xff2e[9]);var _=require(_0xff2e[10]);var squel=require(_0xff2e[11]);var crypto=require(_0xff2e[12]);var jsforce=require(_0xff2e[13]);var toCsv=require(_0xff2e[14]);var qs=require(_0xff2e[15]);var logger=require(_0xff2e[17])(_0xff2e[16]);var utils=require(_0xff2e[18]);var config=require(_0xff2e[19]);var db=require(_0xff2e[21])[_0xff2e[20]];function respondWithStatusCode(_0xc311x15,_0xc311x16,_0xc311x17){_0xc311x16= _0xc311x16|| 204;return function(_0xc311x18){if(_0xc311x18){logger[_0xff2e[24]](_0xff2e[22],_0xc311x17,_0xc311x16,_0xff2e[23]);logger[_0xff2e[26]](_0xff2e[25],_0xc311x17,_0xc311x16,_0xff2e[23]);return _0xc311x15[_0xff2e[27]](_0xc311x16)};return _0xc311x15[_0xff2e[29]](304)[_0xff2e[28]]()}}function respondWithResult(_0xc311x15,_0xc311x16,_0xc311x17){_0xc311x16= _0xc311x16|| 200;return function(_0xc311x18){if(_0xc311x18){logger[_0xff2e[24]](_0xff2e[22],_0xc311x17,_0xc311x16,_0xff2e[30]);logger[_0xff2e[26]](_0xff2e[25],_0xc311x17,_0xc311x16,_0xff2e[30],JSON[_0xff2e[31]](_0xc311x18));return _0xc311x15[_0xff2e[29]](_0xc311x16)[_0xff2e[32]](_0xc311x18)};return _0xc311x15[_0xff2e[29]](304)[_0xff2e[28]]()}}function respondWithFilteredResult(_0xc311x15,_0xc311x1b,_0xc311x17){return function(_0xc311x18){if(_0xc311x18){var _0xc311x1c=_0xc311x18[_0xff2e[33]],_0xc311x1d=_0xc311x1b[_0xff2e[34]],_0xc311x1e=_0xc311x1b[_0xff2e[34]]+ _0xc311x1b[_0xff2e[35]],_0xc311x16;if(_0xc311x1e>= _0xc311x1c){_0xc311x1e= _0xc311x1c;_0xc311x16= 200}else {_0xc311x16= 206};_0xc311x15[_0xff2e[29]](_0xc311x16);logger[_0xff2e[24]](_0xff2e[22],_0xc311x17,_0xc311x16,_0xff2e[36]);logger[_0xff2e[26]](_0xff2e[25],_0xc311x17,_0xc311x16,_0xff2e[30],JSON[_0xff2e[31]](_0xc311x18));return _0xc311x15[_0xff2e[40]](_0xff2e[37],_0xc311x1d+ _0xff2e[38]+ _0xc311x1e+ _0xff2e[39]+ _0xc311x1c)[_0xff2e[32]](_0xc311x18)};return null}}function patchUpdates(_0xc311x20){return function(_0xc311x18){try{jsonpatch[_0xff2e[41]](_0xc311x18,_0xc311x20,true)}catch(err){return BPromise[_0xff2e[42]](err)};return _0xc311x18[_0xff2e[43]]()}}function saveUpdates(_0xc311x22,_0xc311x16,_0xc311x17){return function(_0xc311x18){if(_0xc311x18){return _0xc311x18[_0xff2e[46]](_0xc311x22)[_0xff2e[45]](function(_0xc311x23){logger[_0xff2e[24]](_0xff2e[22],_0xc311x17,_0xc311x16,_0xff2e[44]);logger[_0xff2e[26]](_0xff2e[25],_0xc311x17,_0xc311x16,_0xff2e[44],JSON[_0xff2e[31]](_0xc311x18));return _0xc311x23})};return null}}function removeEntity(_0xc311x15,_0xc311x16,_0xc311x17){return function(_0xc311x18){if(_0xc311x18){return _0xc311x18[_0xff2e[48]]()[_0xff2e[45]](function(){logger[_0xff2e[24]](_0xff2e[22],_0xc311x17,_0xc311x16,_0xff2e[47]);logger[_0xff2e[26]](_0xff2e[25],_0xc311x17,_0xc311x16,_0xff2e[47],JSON[_0xff2e[31]](_0xc311x18));_0xc311x15[_0xff2e[29]](204)[_0xff2e[28]]()})}}}function handleEntityNotFound(_0xc311x15,_0xc311x16,_0xc311x17){return function(_0xc311x18){if(!_0xc311x18){logger[_0xff2e[50]](_0xff2e[22],_0xc311x17,404,_0xff2e[49]);_0xc311x15[_0xff2e[29]](404)[_0xff2e[28]]();return null};return _0xc311x18}}function handleError(_0xc311x15,_0xc311x16,_0xc311x17){_0xc311x16= _0xc311x16|| 500;return function(_0xc311x27){logger[_0xff2e[50]](_0xff2e[22],_0xc311x17,_0xc311x16,JSON[_0xff2e[31]](_0xc311x27));delete _0xc311x27[_0xff2e[51]];_0xc311x15[_0xff2e[29]](_0xc311x16)[_0xff2e[52]](_0xc311x27)}}exports[_0xff2e[53]]= function(_0xc311x28,_0xc311x15){var _0xc311x1b={},_0xc311x29={};_0xc311x29[_0xff2e[54]]= _[_0xff2e[57]](db[_0xff2e[56]][_0xff2e[55]]);_0xc311x29[_0xff2e[58]]= _[_0xff2e[57]](_0xc311x28[_0xff2e[58]]);_0xc311x29[_0xff2e[59]]= _[_0xff2e[60]](_0xc311x29[_0xff2e[54]],_0xc311x29[_0xff2e[58]]);_0xc311x1b[_0xff2e[61]]= _[_0xff2e[60]](_0xc311x29[_0xff2e[54]],qs[_0xff2e[62]](_0xc311x28[_0xff2e[58]][_0xff2e[62]]));_0xc311x1b[_0xff2e[61]]= (_0xc311x1b[_0xff2e[61]][_0xff2e[63]])?_0xc311x1b[_0xff2e[61]]:_0xc311x29[_0xff2e[54]];if(!_0xc311x28[_0xff2e[58]][_0xff2e[65]](_0xff2e[64])){_0xc311x1b[_0xff2e[35]]= qs[_0xff2e[35]](_0xc311x28[_0xff2e[58]][_0xff2e[35]]);_0xc311x1b[_0xff2e[34]]= qs[_0xff2e[34]](_0xc311x28[_0xff2e[58]][_0xff2e[34]])};_0xc311x1b[_0xff2e[66]]= qs[_0xff2e[67]](_0xc311x28[_0xff2e[58]][_0xff2e[67]]);_0xc311x1b[_0xff2e[68]]= qs[_0xff2e[59]](_[_0xff2e[69]](_0xc311x28[_0xff2e[58]],_0xc311x29[_0xff2e[59]]));if(_0xc311x28[_0xff2e[58]][_0xff2e[70]]){_0xc311x1b[_0xff2e[68]]= _[_0xff2e[73]](_0xc311x1b[_0xff2e[68]],{$or:_[_0xff2e[72]](_0xc311x1b[_0xff2e[61]],function(_0xc311x2a){var _0xc311x2b={};_0xc311x2b[_0xc311x2a]= {$like:_0xff2e[71]+ _0xc311x28[_0xff2e[58]][_0xff2e[70]]+ _0xff2e[71]};return _0xc311x2b})})};_0xc311x1b= _[_0xff2e[73]]({},_0xc311x1b,_0xc311x28[_0xff2e[74]]);return db[_0xff2e[56]][_0xff2e[76]](_0xc311x1b)[_0xff2e[45]](respondWithFilteredResult(_0xc311x15,_0xc311x1b,_0xff2e[53]))[_0xff2e[75]](handleError(_0xc311x15,null,_0xff2e[53]))};exports[_0xff2e[77]]= function(_0xc311x28,_0xc311x15){var _0xc311x1b={raw:false,where:{id:_0xc311x28[_0xff2e[79]][_0xff2e[78]]}},_0xc311x29={};_0xc311x29[_0xff2e[54]]= _[_0xff2e[57]](db[_0xff2e[56]][_0xff2e[55]]);_0xc311x29[_0xff2e[58]]= _[_0xff2e[57]](_0xc311x28[_0xff2e[58]]);_0xc311x29[_0xff2e[59]]= _[_0xff2e[60]](_0xc311x29[_0xff2e[54]],_0xc311x29[_0xff2e[58]]);_0xc311x1b[_0xff2e[61]]= _[_0xff2e[60]](_0xc311x29[_0xff2e[54]],qs[_0xff2e[62]](_0xc311x28[_0xff2e[58]][_0xff2e[62]]));_0xc311x1b[_0xff2e[61]]= (_0xc311x1b[_0xff2e[61]][_0xff2e[63]])?_0xc311x1b[_0xff2e[61]]:_0xc311x29[_0xff2e[54]];_0xc311x1b= _[_0xff2e[73]]({},_0xc311x1b,_0xc311x28[_0xff2e[74]]);return db[_0xff2e[56]][_0xff2e[80]](_0xc311x1b)[_0xff2e[45]](handleEntityNotFound(_0xc311x15,null,_0xff2e[77]))[_0xff2e[45]](respondWithResult(_0xc311x15,null,_0xff2e[77]))[_0xff2e[75]](handleError(_0xc311x15,null,_0xff2e[77]))};exports[_0xff2e[81]]= function(_0xc311x28,_0xc311x15){return db[_0xff2e[56]][_0xff2e[81]](_0xc311x28[_0xff2e[82]],{})[_0xff2e[45]](respondWithResult(_0xc311x15,201,_0xff2e[81]))[_0xff2e[75]](handleError(_0xc311x15,null,_0xff2e[81]))};exports[_0xff2e[46]]= function(_0xc311x28,_0xc311x15){if(_0xc311x28[_0xff2e[82]][_0xff2e[78]]){delete _0xc311x28[_0xff2e[82]][_0xff2e[78]]};return db[_0xff2e[56]][_0xff2e[80]]({where:{id:_0xc311x28[_0xff2e[79]][_0xff2e[78]]}})[_0xff2e[45]](handleEntityNotFound(_0xc311x15,null,_0xff2e[46]))[_0xff2e[45]](saveUpdates(_0xc311x28[_0xff2e[82]],null,_0xff2e[46]))[_0xff2e[45]](respondWithResult(_0xc311x15,null,_0xff2e[46]))[_0xff2e[75]](handleError(_0xc311x15,null,_0xff2e[46]))};exports[_0xff2e[48]]= function(_0xc311x28,_0xc311x15){return db[_0xff2e[56]][_0xff2e[80]]({where:{id:_0xc311x28[_0xff2e[79]][_0xff2e[78]]}})[_0xff2e[45]](handleEntityNotFound(_0xc311x15,null,_0xff2e[48]))[_0xff2e[45]](removeEntity(_0xc311x15,null,_0xff2e[48]))[_0xff2e[75]](handleError(_0xc311x15,null,_0xff2e[48]))}
\ No newline at end of file
index bb1c0b3..798d585 100644 (file)
@@ -1 +1 @@
-var _0xd528=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x73\x71\x75\x61\x72\x65\x5F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xd528[0];var _=require(_0xd528[1]);var util=require(_0xd528[2]);var logger=require(_0xd528[4])(_0xd528[3]);var attributes=require(_0xd528[5]);module[_0xd528[6]]= function(_0x7900x5,_0x7900x6){return _0x7900x5[_0xd528[9]](_0xd528[7],attributes,{tableName:_0xd528[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa119=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x73\x71\x75\x61\x72\x65\x5F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xa119[0];var _=require(_0xa119[1]);var util=require(_0xa119[2]);var logger=require(_0xa119[4])(_0xa119[3]);var attributes=require(_0xa119[5]);module[_0xa119[6]]= function(_0xa922x5,_0xa922x6){return _0xa922x5[_0xa119[9]](_0xa119[7],attributes,{tableName:_0xa119[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index afb5345..e73fb28 100644 (file)
@@ -1 +1 @@
-var _0x1399=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74"];_0x1399[0];var _=require(_0x1399[1]);var util=require(_0x1399[2]);var moment=require(_0x1399[3]);var BPromise=require(_0x1399[4]);var db=require(_0x1399[6])[_0x1399[5]];var utils=require(_0x1399[7]);var logger=require(_0x1399[9])(_0x1399[8]);var jayson=require(_0x1399[10]);var client=jayson[_0x1399[12]][_0x1399[11]]({port:9002});function respondWithRpcPromise(_0x2271xb,_0x2271xc,_0x2271xd){return  new BPromise(function(_0x2271xe,_0x2271xf){return client[_0x1399[25]](_0x2271xb,_0x2271xd)[_0x1399[24]](function(_0x2271x11){logger[_0x1399[17]](_0x1399[13],_0x2271xc,_0x1399[16]);logger[_0x1399[20]](_0x1399[18],_0x2271xc,_0x1399[16],JSON[_0x1399[19]](_0x2271x11));if(_0x2271x11[_0x1399[14]]){if(_0x2271x11[_0x1399[14]][_0x1399[21]]=== 500){logger[_0x1399[14]](_0x1399[13],_0x2271xc,_0x2271x11[_0x1399[14]][_0x1399[22]]);return _0x2271xf(_0x2271x11[_0x1399[14]][_0x1399[22]])};logger[_0x1399[14]](_0x1399[13],_0x2271xc,_0x2271x11[_0x1399[14]][_0x1399[22]]);return _0x2271xe(_0x2271x11[_0x1399[14]][_0x1399[22]])}else {logger[_0x1399[17]](_0x1399[13],_0x2271xc,_0x1399[16]);_0x2271xe(_0x2271x11[_0x1399[23]][_0x1399[22]])}})[_0x1399[15]](function(_0x2271x10){logger[_0x1399[14]](_0x1399[13],_0x2271xc,_0x2271x10);_0x2271xf(_0x2271x10)})})}exports[_0x1399[26]]= function(_0x2271xd){var _0x2271x12=this;return  new Promise(function(_0x2271xe,_0x2271xf){return db[_0x1399[36]][_0x1399[35]]({raw:_0x2271xd[_0x1399[27]]?(_0x2271xd[_0x1399[27]][_0x1399[28]]=== undefined)?true:false:true,where:_0x2271xd[_0x1399[27]]?_0x2271xd[_0x1399[27]][_0x1399[29]]|| null:null,attributes:_0x2271xd[_0x1399[27]]?_0x2271xd[_0x1399[27]][_0x1399[30]]|| null:null,include:_0x2271xd[_0x1399[27]]?(_0x2271xd[_0x1399[27]][_0x1399[31]]?_[_0x1399[34]](_0x2271xd[_0x1399[27]][_0x1399[31]],function(_0x2271x13){return {model:db[_0x2271x13[_0x1399[32]]],as:_0x2271x13[_0x1399[33]],attributes:_0x2271x13[_0x1399[30]],include:_0x2271x13[_0x1399[31]]?_[_0x1399[34]](_0x2271x13[_0x1399[31]],function(_0x2271x14){return {model:db[_0x2271x14[_0x1399[32]]],as:_0x2271x14[_0x1399[33]],attributes:_0x2271x14[_0x1399[30]],include:_0x2271x14[_0x1399[31]]?_[_0x1399[34]](_0x2271x14[_0x1399[31]],function(_0x2271x15){return {model:db[_0x2271x15[_0x1399[32]]],as:_0x2271x15[_0x1399[33]],attributes:_0x2271x15[_0x1399[30]]}}):[]}}):[]}}):[]):[]})[_0x1399[24]](function(_0x2271x11){logger[_0x1399[17]](_0x1399[26],_0x2271xd);logger[_0x1399[20]](_0x1399[26],_0x2271xd,JSON[_0x1399[19]](_0x2271x11));_0x2271xe(_0x2271x11)})[_0x1399[15]](function(_0x2271x10){logger[_0x1399[14]](_0x1399[26],_0x2271x10[_0x1399[22]],_0x2271xd);_0x2271xf(_0x2271x12[_0x1399[14]](500,_0x2271x10[_0x1399[22]]))})})}
\ No newline at end of file
+var _0xb252=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74"];_0xb252[0];var _=require(_0xb252[1]);var util=require(_0xb252[2]);var moment=require(_0xb252[3]);var BPromise=require(_0xb252[4]);var db=require(_0xb252[6])[_0xb252[5]];var utils=require(_0xb252[7]);var logger=require(_0xb252[9])(_0xb252[8]);var jayson=require(_0xb252[10]);var client=jayson[_0xb252[12]][_0xb252[11]]({port:9002});function respondWithRpcPromise(_0x6c84xb,_0x6c84xc,_0x6c84xd){return  new BPromise(function(_0x6c84xe,_0x6c84xf){return client[_0xb252[25]](_0x6c84xb,_0x6c84xd)[_0xb252[24]](function(_0x6c84x11){logger[_0xb252[17]](_0xb252[13],_0x6c84xc,_0xb252[16]);logger[_0xb252[20]](_0xb252[18],_0x6c84xc,_0xb252[16],JSON[_0xb252[19]](_0x6c84x11));if(_0x6c84x11[_0xb252[14]]){if(_0x6c84x11[_0xb252[14]][_0xb252[21]]=== 500){logger[_0xb252[14]](_0xb252[13],_0x6c84xc,_0x6c84x11[_0xb252[14]][_0xb252[22]]);return _0x6c84xf(_0x6c84x11[_0xb252[14]][_0xb252[22]])};logger[_0xb252[14]](_0xb252[13],_0x6c84xc,_0x6c84x11[_0xb252[14]][_0xb252[22]]);return _0x6c84xe(_0x6c84x11[_0xb252[14]][_0xb252[22]])}else {logger[_0xb252[17]](_0xb252[13],_0x6c84xc,_0xb252[16]);_0x6c84xe(_0x6c84x11[_0xb252[23]][_0xb252[22]])}})[_0xb252[15]](function(_0x6c84x10){logger[_0xb252[14]](_0xb252[13],_0x6c84xc,_0x6c84x10);_0x6c84xf(_0x6c84x10)})})}exports[_0xb252[26]]= function(_0x6c84xd){var _0x6c84x12=this;return  new Promise(function(_0x6c84xe,_0x6c84xf){return db[_0xb252[36]][_0xb252[35]]({raw:_0x6c84xd[_0xb252[27]]?(_0x6c84xd[_0xb252[27]][_0xb252[28]]=== undefined)?true:false:true,where:_0x6c84xd[_0xb252[27]]?_0x6c84xd[_0xb252[27]][_0xb252[29]]|| null:null,attributes:_0x6c84xd[_0xb252[27]]?_0x6c84xd[_0xb252[27]][_0xb252[30]]|| null:null,include:_0x6c84xd[_0xb252[27]]?(_0x6c84xd[_0xb252[27]][_0xb252[31]]?_[_0xb252[34]](_0x6c84xd[_0xb252[27]][_0xb252[31]],function(_0x6c84x13){return {model:db[_0x6c84x13[_0xb252[32]]],as:_0x6c84x13[_0xb252[33]],attributes:_0x6c84x13[_0xb252[30]],include:_0x6c84x13[_0xb252[31]]?_[_0xb252[34]](_0x6c84x13[_0xb252[31]],function(_0x6c84x14){return {model:db[_0x6c84x14[_0xb252[32]]],as:_0x6c84x14[_0xb252[33]],attributes:_0x6c84x14[_0xb252[30]],include:_0x6c84x14[_0xb252[31]]?_[_0xb252[34]](_0x6c84x14[_0xb252[31]],function(_0x6c84x15){return {model:db[_0x6c84x15[_0xb252[32]]],as:_0x6c84x15[_0xb252[33]],attributes:_0x6c84x15[_0xb252[30]]}}):[]}}):[]}}):[]):[]})[_0xb252[24]](function(_0x6c84x11){logger[_0xb252[17]](_0xb252[26],_0x6c84xd);logger[_0xb252[20]](_0xb252[26],_0x6c84xd,JSON[_0xb252[19]](_0x6c84x11));_0x6c84xe(_0x6c84x11)})[_0xb252[15]](function(_0x6c84x10){logger[_0xb252[14]](_0xb252[26],_0x6c84x10[_0xb252[22]],_0x6c84xd);_0x6c84xf(_0x6c84x12[_0xb252[14]](500,_0x6c84x10[_0xb252[22]]))})})}
\ No newline at end of file
index 9d75c67..1a909df 100644 (file)
@@ -1 +1 @@
-var _0x47c1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x47c1[0];var multer=require(_0x47c1[1]);var util=require(_0x47c1[2]);var path=require(_0x47c1[3]);var express=require(_0x47c1[4]);var router=express.Router();var auth=require(_0x47c1[5]);var config=require(_0x47c1[6]);var controller=require(_0x47c1[7]);router[_0x47c1[11]](_0x47c1[8],auth[_0x47c1[9]](),controller[_0x47c1[10]]);router[_0x47c1[11]](_0x47c1[12],auth[_0x47c1[9]](),controller[_0x47c1[13]]);router[_0x47c1[11]](_0x47c1[14],controller[_0x47c1[15]]);router[_0x47c1[17]](_0x47c1[8],auth[_0x47c1[9]](),controller[_0x47c1[16]]);router[_0x47c1[19]](_0x47c1[12],auth[_0x47c1[9]](),controller[_0x47c1[18]]);router[_0x47c1[21]](_0x47c1[12],auth[_0x47c1[9]](),controller[_0x47c1[20]]);module[_0x47c1[22]]= router
\ No newline at end of file
+var _0x1ffc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1ffc[0];var multer=require(_0x1ffc[1]);var util=require(_0x1ffc[2]);var path=require(_0x1ffc[3]);var express=require(_0x1ffc[4]);var router=express.Router();var auth=require(_0x1ffc[5]);var config=require(_0x1ffc[6]);var controller=require(_0x1ffc[7]);router[_0x1ffc[11]](_0x1ffc[8],auth[_0x1ffc[9]](),controller[_0x1ffc[10]]);router[_0x1ffc[11]](_0x1ffc[12],auth[_0x1ffc[9]](),controller[_0x1ffc[13]]);router[_0x1ffc[11]](_0x1ffc[14],controller[_0x1ffc[15]]);router[_0x1ffc[17]](_0x1ffc[8],auth[_0x1ffc[9]](),controller[_0x1ffc[16]]);router[_0x1ffc[19]](_0x1ffc[12],auth[_0x1ffc[9]](),controller[_0x1ffc[18]]);router[_0x1ffc[21]](_0x1ffc[12],auth[_0x1ffc[9]](),controller[_0x1ffc[20]]);module[_0x1ffc[22]]= router
\ No newline at end of file
index 2280138..86dd900 100644 (file)
@@ -1 +1 @@
-var _0xdd12=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xdd12[0];var Sequelize=require(_0xdd12[1]);module[_0xdd12[2]]= {uniqueid:{type:Sequelize[_0xdd12[3]]},callerid:{type:Sequelize[_0xdd12[3]]},calleridname:{type:Sequelize[_0xdd12[3]]},context:{type:Sequelize[_0xdd12[3]]},extension:{type:Sequelize[_0xdd12[3]]},priority:{type:Sequelize[_0xdd12[3]]},accountcode:{type:Sequelize[_0xdd12[3]]},dnid:{type:Sequelize[_0xdd12[3]]},projectName:{type:Sequelize[_0xdd12[3]]},saveName:{type:Sequelize[_0xdd12[3]]},filename:{type:Sequelize[_0xdd12[3]]},savePath:{type:Sequelize[_0xdd12[3]]}}
\ No newline at end of file
+var _0xac21=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xac21[0];var Sequelize=require(_0xac21[1]);module[_0xac21[2]]= {uniqueid:{type:Sequelize[_0xac21[3]]},callerid:{type:Sequelize[_0xac21[3]]},calleridname:{type:Sequelize[_0xac21[3]]},context:{type:Sequelize[_0xac21[3]]},extension:{type:Sequelize[_0xac21[3]]},priority:{type:Sequelize[_0xac21[3]]},accountcode:{type:Sequelize[_0xac21[3]]},dnid:{type:Sequelize[_0xac21[3]]},projectName:{type:Sequelize[_0xac21[3]]},saveName:{type:Sequelize[_0xac21[3]]},filename:{type:Sequelize[_0xac21[3]]},savePath:{type:Sequelize[_0xac21[3]]}}
\ No newline at end of file
index 0c9d613..39c1de2 100644 (file)
@@ -1 +1 @@
-var _0xb47e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x2E\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x61\x76\x65\x50\x61\x74\x68","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0xb47e[0];var jsonpatch=require(_0xb47e[1]);var rp=require(_0xb47e[2]);var moment=require(_0xb47e[3]);var BPromise=require(_0xb47e[4]);var util=require(_0xb47e[5]);var path=require(_0xb47e[6]);var sox=require(_0xb47e[7]);var ejs=require(_0xb47e[8]);var fs=require(_0xb47e[9]);var _=require(_0xb47e[10]);var squel=require(_0xb47e[11]);var crypto=require(_0xb47e[12]);var jsforce=require(_0xb47e[13]);var toCsv=require(_0xb47e[14]);var qs=require(_0xb47e[15]);var logger=require(_0xb47e[17])(_0xb47e[16]);var utils=require(_0xb47e[18]);var config=require(_0xb47e[19]);var db=require(_0xb47e[21])[_0xb47e[20]];function respondWithStatusCode(_0x3bcex15,_0x3bcex16,_0x3bcex17){_0x3bcex16= _0x3bcex16|| 204;return function(_0x3bcex18){if(_0x3bcex18){logger[_0xb47e[24]](_0xb47e[22],_0x3bcex17,_0x3bcex16,_0xb47e[23]);logger[_0xb47e[26]](_0xb47e[25],_0x3bcex17,_0x3bcex16,_0xb47e[23]);return _0x3bcex15[_0xb47e[27]](_0x3bcex16)};return _0x3bcex15[_0xb47e[29]](304)[_0xb47e[28]]()}}function respondWithResult(_0x3bcex15,_0x3bcex16,_0x3bcex17){_0x3bcex16= _0x3bcex16|| 200;return function(_0x3bcex18){if(_0x3bcex18){logger[_0xb47e[24]](_0xb47e[22],_0x3bcex17,_0x3bcex16,_0xb47e[30]);logger[_0xb47e[26]](_0xb47e[25],_0x3bcex17,_0x3bcex16,_0xb47e[30],JSON[_0xb47e[31]](_0x3bcex18));return _0x3bcex15[_0xb47e[29]](_0x3bcex16)[_0xb47e[32]](_0x3bcex18)};return _0x3bcex15[_0xb47e[29]](304)[_0xb47e[28]]()}}function respondWithFilteredResult(_0x3bcex15,_0x3bcex1b,_0x3bcex17){return function(_0x3bcex18){if(_0x3bcex18){var _0x3bcex1c=_0x3bcex18[_0xb47e[33]],_0x3bcex1d=_0x3bcex1b[_0xb47e[34]],_0x3bcex1e=_0x3bcex1b[_0xb47e[34]]+ _0x3bcex1b[_0xb47e[35]],_0x3bcex16;if(_0x3bcex1e>= _0x3bcex1c){_0x3bcex1e= _0x3bcex1c;_0x3bcex16= 200}else {_0x3bcex16= 206};_0x3bcex15[_0xb47e[29]](_0x3bcex16);logger[_0xb47e[24]](_0xb47e[22],_0x3bcex17,_0x3bcex16,_0xb47e[36]);logger[_0xb47e[26]](_0xb47e[25],_0x3bcex17,_0x3bcex16,_0xb47e[30],JSON[_0xb47e[31]](_0x3bcex18));return _0x3bcex15[_0xb47e[40]](_0xb47e[37],_0x3bcex1d+ _0xb47e[38]+ _0x3bcex1e+ _0xb47e[39]+ _0x3bcex1c)[_0xb47e[32]](_0x3bcex18)};return null}}function patchUpdates(_0x3bcex20){return function(_0x3bcex18){try{jsonpatch[_0xb47e[41]](_0x3bcex18,_0x3bcex20,true)}catch(err){return BPromise[_0xb47e[42]](err)};return _0x3bcex18[_0xb47e[43]]()}}function saveUpdates(_0x3bcex22,_0x3bcex16,_0x3bcex17){return function(_0x3bcex18){if(_0x3bcex18){return _0x3bcex18[_0xb47e[46]](_0x3bcex22)[_0xb47e[45]](function(_0x3bcex23){logger[_0xb47e[24]](_0xb47e[22],_0x3bcex17,_0x3bcex16,_0xb47e[44]);logger[_0xb47e[26]](_0xb47e[25],_0x3bcex17,_0x3bcex16,_0xb47e[44],JSON[_0xb47e[31]](_0x3bcex18));return _0x3bcex23})};return null}}function removeEntity(_0x3bcex15,_0x3bcex16,_0x3bcex17){return function(_0x3bcex18){if(_0x3bcex18){return _0x3bcex18[_0xb47e[48]]()[_0xb47e[45]](function(){logger[_0xb47e[24]](_0xb47e[22],_0x3bcex17,_0x3bcex16,_0xb47e[47]);logger[_0xb47e[26]](_0xb47e[25],_0x3bcex17,_0x3bcex16,_0xb47e[47],JSON[_0xb47e[31]](_0x3bcex18));_0x3bcex15[_0xb47e[29]](204)[_0xb47e[28]]()})}}}function handleEntityNotFound(_0x3bcex15,_0x3bcex16,_0x3bcex17){return function(_0x3bcex18){if(!_0x3bcex18){logger[_0xb47e[50]](_0xb47e[22],_0x3bcex17,404,_0xb47e[49]);_0x3bcex15[_0xb47e[29]](404)[_0xb47e[28]]();return null};return _0x3bcex18}}function handleError(_0x3bcex15,_0x3bcex16,_0x3bcex17){_0x3bcex16= _0x3bcex16|| 500;return function(_0x3bcex27){logger[_0xb47e[50]](_0xb47e[22],_0x3bcex17,_0x3bcex16,JSON[_0xb47e[31]](_0x3bcex27));delete _0x3bcex27[_0xb47e[51]];_0x3bcex15[_0xb47e[29]](_0x3bcex16)[_0xb47e[52]](_0x3bcex27)}}exports[_0xb47e[53]]= function(_0x3bcex28,_0x3bcex15){var _0x3bcex1b={},_0x3bcex29={};_0x3bcex29[_0xb47e[54]]= _[_0xb47e[57]](db[_0xb47e[56]][_0xb47e[55]]);_0x3bcex29[_0xb47e[58]]= _[_0xb47e[57]](_0x3bcex28[_0xb47e[58]]);_0x3bcex29[_0xb47e[59]]= _[_0xb47e[60]](_0x3bcex29[_0xb47e[54]],_0x3bcex29[_0xb47e[58]]);_0x3bcex1b[_0xb47e[61]]= _[_0xb47e[60]](_0x3bcex29[_0xb47e[54]],qs[_0xb47e[62]](_0x3bcex28[_0xb47e[58]][_0xb47e[62]]));_0x3bcex1b[_0xb47e[61]]= (_0x3bcex1b[_0xb47e[61]][_0xb47e[63]])?_0x3bcex1b[_0xb47e[61]]:_0x3bcex29[_0xb47e[54]];if(!_0x3bcex28[_0xb47e[58]][_0xb47e[65]](_0xb47e[64])){_0x3bcex1b[_0xb47e[35]]= qs[_0xb47e[35]](_0x3bcex28[_0xb47e[58]][_0xb47e[35]]);_0x3bcex1b[_0xb47e[34]]= qs[_0xb47e[34]](_0x3bcex28[_0xb47e[58]][_0xb47e[34]])};_0x3bcex1b[_0xb47e[66]]= qs[_0xb47e[67]](_0x3bcex28[_0xb47e[58]][_0xb47e[67]]);_0x3bcex1b[_0xb47e[68]]= qs[_0xb47e[59]](_[_0xb47e[69]](_0x3bcex28[_0xb47e[58]],_0x3bcex29[_0xb47e[59]]));if(_0x3bcex28[_0xb47e[58]][_0xb47e[70]]){_0x3bcex1b[_0xb47e[68]]= _[_0xb47e[73]](_0x3bcex1b[_0xb47e[68]],{$or:_[_0xb47e[72]](_0x3bcex1b[_0xb47e[61]],function(_0x3bcex2a){var _0x3bcex2b={};_0x3bcex2b[_0x3bcex2a]= {$like:_0xb47e[71]+ _0x3bcex28[_0xb47e[58]][_0xb47e[70]]+ _0xb47e[71]};return _0x3bcex2b})})};_0x3bcex1b= _[_0xb47e[73]]({},_0x3bcex1b,_0x3bcex28[_0xb47e[74]]);return db[_0xb47e[56]][_0xb47e[76]](_0x3bcex1b)[_0xb47e[45]](respondWithFilteredResult(_0x3bcex15,_0x3bcex1b,_0xb47e[53]))[_0xb47e[75]](handleError(_0x3bcex15,null,_0xb47e[53]))};exports[_0xb47e[77]]= function(_0x3bcex28,_0x3bcex15){var _0x3bcex1b={raw:true,where:{id:_0x3bcex28[_0xb47e[79]][_0xb47e[78]]}},_0x3bcex29={};_0x3bcex29[_0xb47e[54]]= _[_0xb47e[57]](db[_0xb47e[56]][_0xb47e[55]]);_0x3bcex29[_0xb47e[58]]= _[_0xb47e[57]](_0x3bcex28[_0xb47e[58]]);_0x3bcex29[_0xb47e[59]]= _[_0xb47e[60]](_0x3bcex29[_0xb47e[54]],_0x3bcex29[_0xb47e[58]]);_0x3bcex1b[_0xb47e[61]]= _[_0xb47e[60]](_0x3bcex29[_0xb47e[54]],qs[_0xb47e[62]](_0x3bcex28[_0xb47e[58]][_0xb47e[62]]));_0x3bcex1b[_0xb47e[61]]= (_0x3bcex1b[_0xb47e[61]][_0xb47e[63]])?_0x3bcex1b[_0xb47e[61]]:_0x3bcex29[_0xb47e[54]];_0x3bcex1b= _[_0xb47e[73]]({},_0x3bcex1b,_0x3bcex28[_0xb47e[74]]);return db[_0xb47e[56]][_0xb47e[80]](_0x3bcex1b)[_0xb47e[45]](handleEntityNotFound(_0x3bcex15,null,_0xb47e[77]))[_0xb47e[45]](respondWithResult(_0x3bcex15,null,_0xb47e[77]))[_0xb47e[75]](handleError(_0x3bcex15,null,_0xb47e[77]))};exports[_0xb47e[81]]= function(_0x3bcex28,_0x3bcex15){return db[_0xb47e[56]][_0xb47e[81]](_0x3bcex28[_0xb47e[82]],{})[_0xb47e[45]](respondWithResult(_0x3bcex15,201,_0xb47e[81]))[_0xb47e[75]](handleError(_0x3bcex15,null,_0xb47e[81]))};exports[_0xb47e[46]]= function(_0x3bcex28,_0x3bcex15){if(_0x3bcex28[_0xb47e[82]][_0xb47e[78]]){delete _0x3bcex28[_0xb47e[82]][_0xb47e[78]]};return db[_0xb47e[56]][_0xb47e[80]]({where:{id:_0x3bcex28[_0xb47e[79]][_0xb47e[78]]}})[_0xb47e[45]](handleEntityNotFound(_0x3bcex15,null,_0xb47e[46]))[_0xb47e[45]](saveUpdates(_0x3bcex28[_0xb47e[82]],null,_0xb47e[46]))[_0xb47e[45]](respondWithResult(_0x3bcex15,null,_0xb47e[46]))[_0xb47e[75]](handleError(_0x3bcex15,null,_0xb47e[46]))};exports[_0xb47e[48]]= function(_0x3bcex28,_0x3bcex15){return db[_0xb47e[56]][_0xb47e[80]]({where:{id:_0x3bcex28[_0xb47e[79]][_0xb47e[78]]}})[_0xb47e[45]](handleEntityNotFound(_0x3bcex15,null,_0xb47e[48]))[_0xb47e[45]](removeEntity(_0x3bcex15,null,_0xb47e[48]))[_0xb47e[75]](handleError(_0x3bcex15,null,_0xb47e[48]))};exports[_0xb47e[83]]= function(_0x3bcex28,_0x3bcex15,_0x3bcex2c){return db[_0xb47e[56]][_0xb47e[80]]({where:{id:_0x3bcex28[_0xb47e[79]][_0xb47e[78]]},attributes:[_0xb47e[78],_0xb47e[86]],raw:true})[_0xb47e[45]](handleEntityNotFound(_0x3bcex15,null,_0xb47e[83]))[_0xb47e[45]](function(_0x3bcex18){if(_0x3bcex18){logger[_0xb47e[24]](_0xb47e[85],_0xb47e[83],_0xb47e[30]);logger[_0xb47e[26]](_0xb47e[22],_0xb47e[83],_0xb47e[30],JSON[_0xb47e[31]](_0x3bcex18));if(!fs[_0xb47e[87]](_0x3bcex18[_0xb47e[86]])){throw  new db[_0xb47e[89]].ValidationError(_0xb47e[88])};return _0x3bcex15[_0xb47e[83]](_0x3bcex18[_0xb47e[86]])}})[_0xb47e[75]](handleError(_0x3bcex15,null,_0xb47e[84]))}
\ No newline at end of file
+var _0xd754=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x2E\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x61\x76\x65\x50\x61\x74\x68","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0xd754[0];var jsonpatch=require(_0xd754[1]);var rp=require(_0xd754[2]);var moment=require(_0xd754[3]);var BPromise=require(_0xd754[4]);var util=require(_0xd754[5]);var path=require(_0xd754[6]);var sox=require(_0xd754[7]);var ejs=require(_0xd754[8]);var fs=require(_0xd754[9]);var _=require(_0xd754[10]);var squel=require(_0xd754[11]);var crypto=require(_0xd754[12]);var jsforce=require(_0xd754[13]);var toCsv=require(_0xd754[14]);var qs=require(_0xd754[15]);var logger=require(_0xd754[17])(_0xd754[16]);var utils=require(_0xd754[18]);var config=require(_0xd754[19]);var db=require(_0xd754[21])[_0xd754[20]];function respondWithStatusCode(_0xdb77x15,_0xdb77x16,_0xdb77x17){_0xdb77x16= _0xdb77x16|| 204;return function(_0xdb77x18){if(_0xdb77x18){logger[_0xd754[24]](_0xd754[22],_0xdb77x17,_0xdb77x16,_0xd754[23]);logger[_0xd754[26]](_0xd754[25],_0xdb77x17,_0xdb77x16,_0xd754[23]);return _0xdb77x15[_0xd754[27]](_0xdb77x16)};return _0xdb77x15[_0xd754[29]](304)[_0xd754[28]]()}}function respondWithResult(_0xdb77x15,_0xdb77x16,_0xdb77x17){_0xdb77x16= _0xdb77x16|| 200;return function(_0xdb77x18){if(_0xdb77x18){logger[_0xd754[24]](_0xd754[22],_0xdb77x17,_0xdb77x16,_0xd754[30]);logger[_0xd754[26]](_0xd754[25],_0xdb77x17,_0xdb77x16,_0xd754[30],JSON[_0xd754[31]](_0xdb77x18));return _0xdb77x15[_0xd754[29]](_0xdb77x16)[_0xd754[32]](_0xdb77x18)};return _0xdb77x15[_0xd754[29]](304)[_0xd754[28]]()}}function respondWithFilteredResult(_0xdb77x15,_0xdb77x1b,_0xdb77x17){return function(_0xdb77x18){if(_0xdb77x18){var _0xdb77x1c=_0xdb77x18[_0xd754[33]],_0xdb77x1d=_0xdb77x1b[_0xd754[34]],_0xdb77x1e=_0xdb77x1b[_0xd754[34]]+ _0xdb77x1b[_0xd754[35]],_0xdb77x16;if(_0xdb77x1e>= _0xdb77x1c){_0xdb77x1e= _0xdb77x1c;_0xdb77x16= 200}else {_0xdb77x16= 206};_0xdb77x15[_0xd754[29]](_0xdb77x16);logger[_0xd754[24]](_0xd754[22],_0xdb77x17,_0xdb77x16,_0xd754[36]);logger[_0xd754[26]](_0xd754[25],_0xdb77x17,_0xdb77x16,_0xd754[30],JSON[_0xd754[31]](_0xdb77x18));return _0xdb77x15[_0xd754[40]](_0xd754[37],_0xdb77x1d+ _0xd754[38]+ _0xdb77x1e+ _0xd754[39]+ _0xdb77x1c)[_0xd754[32]](_0xdb77x18)};return null}}function patchUpdates(_0xdb77x20){return function(_0xdb77x18){try{jsonpatch[_0xd754[41]](_0xdb77x18,_0xdb77x20,true)}catch(err){return BPromise[_0xd754[42]](err)};return _0xdb77x18[_0xd754[43]]()}}function saveUpdates(_0xdb77x22,_0xdb77x16,_0xdb77x17){return function(_0xdb77x18){if(_0xdb77x18){return _0xdb77x18[_0xd754[46]](_0xdb77x22)[_0xd754[45]](function(_0xdb77x23){logger[_0xd754[24]](_0xd754[22],_0xdb77x17,_0xdb77x16,_0xd754[44]);logger[_0xd754[26]](_0xd754[25],_0xdb77x17,_0xdb77x16,_0xd754[44],JSON[_0xd754[31]](_0xdb77x18));return _0xdb77x23})};return null}}function removeEntity(_0xdb77x15,_0xdb77x16,_0xdb77x17){return function(_0xdb77x18){if(_0xdb77x18){return _0xdb77x18[_0xd754[48]]()[_0xd754[45]](function(){logger[_0xd754[24]](_0xd754[22],_0xdb77x17,_0xdb77x16,_0xd754[47]);logger[_0xd754[26]](_0xd754[25],_0xdb77x17,_0xdb77x16,_0xd754[47],JSON[_0xd754[31]](_0xdb77x18));_0xdb77x15[_0xd754[29]](204)[_0xd754[28]]()})}}}function handleEntityNotFound(_0xdb77x15,_0xdb77x16,_0xdb77x17){return function(_0xdb77x18){if(!_0xdb77x18){logger[_0xd754[50]](_0xd754[22],_0xdb77x17,404,_0xd754[49]);_0xdb77x15[_0xd754[29]](404)[_0xd754[28]]();return null};return _0xdb77x18}}function handleError(_0xdb77x15,_0xdb77x16,_0xdb77x17){_0xdb77x16= _0xdb77x16|| 500;return function(_0xdb77x27){logger[_0xd754[50]](_0xd754[22],_0xdb77x17,_0xdb77x16,JSON[_0xd754[31]](_0xdb77x27));delete _0xdb77x27[_0xd754[51]];_0xdb77x15[_0xd754[29]](_0xdb77x16)[_0xd754[52]](_0xdb77x27)}}exports[_0xd754[53]]= function(_0xdb77x28,_0xdb77x15){var _0xdb77x1b={},_0xdb77x29={};_0xdb77x29[_0xd754[54]]= _[_0xd754[57]](db[_0xd754[56]][_0xd754[55]]);_0xdb77x29[_0xd754[58]]= _[_0xd754[57]](_0xdb77x28[_0xd754[58]]);_0xdb77x29[_0xd754[59]]= _[_0xd754[60]](_0xdb77x29[_0xd754[54]],_0xdb77x29[_0xd754[58]]);_0xdb77x1b[_0xd754[61]]= _[_0xd754[60]](_0xdb77x29[_0xd754[54]],qs[_0xd754[62]](_0xdb77x28[_0xd754[58]][_0xd754[62]]));_0xdb77x1b[_0xd754[61]]= (_0xdb77x1b[_0xd754[61]][_0xd754[63]])?_0xdb77x1b[_0xd754[61]]:_0xdb77x29[_0xd754[54]];if(!_0xdb77x28[_0xd754[58]][_0xd754[65]](_0xd754[64])){_0xdb77x1b[_0xd754[35]]= qs[_0xd754[35]](_0xdb77x28[_0xd754[58]][_0xd754[35]]);_0xdb77x1b[_0xd754[34]]= qs[_0xd754[34]](_0xdb77x28[_0xd754[58]][_0xd754[34]])};_0xdb77x1b[_0xd754[66]]= qs[_0xd754[67]](_0xdb77x28[_0xd754[58]][_0xd754[67]]);_0xdb77x1b[_0xd754[68]]= qs[_0xd754[59]](_[_0xd754[69]](_0xdb77x28[_0xd754[58]],_0xdb77x29[_0xd754[59]]));if(_0xdb77x28[_0xd754[58]][_0xd754[70]]){_0xdb77x1b[_0xd754[68]]= _[_0xd754[73]](_0xdb77x1b[_0xd754[68]],{$or:_[_0xd754[72]](_0xdb77x1b[_0xd754[61]],function(_0xdb77x2a){var _0xdb77x2b={};_0xdb77x2b[_0xdb77x2a]= {$like:_0xd754[71]+ _0xdb77x28[_0xd754[58]][_0xd754[70]]+ _0xd754[71]};return _0xdb77x2b})})};_0xdb77x1b= _[_0xd754[73]]({},_0xdb77x1b,_0xdb77x28[_0xd754[74]]);return db[_0xd754[56]][_0xd754[76]](_0xdb77x1b)[_0xd754[45]](respondWithFilteredResult(_0xdb77x15,_0xdb77x1b,_0xd754[53]))[_0xd754[75]](handleError(_0xdb77x15,null,_0xd754[53]))};exports[_0xd754[77]]= function(_0xdb77x28,_0xdb77x15){var _0xdb77x1b={raw:true,where:{id:_0xdb77x28[_0xd754[79]][_0xd754[78]]}},_0xdb77x29={};_0xdb77x29[_0xd754[54]]= _[_0xd754[57]](db[_0xd754[56]][_0xd754[55]]);_0xdb77x29[_0xd754[58]]= _[_0xd754[57]](_0xdb77x28[_0xd754[58]]);_0xdb77x29[_0xd754[59]]= _[_0xd754[60]](_0xdb77x29[_0xd754[54]],_0xdb77x29[_0xd754[58]]);_0xdb77x1b[_0xd754[61]]= _[_0xd754[60]](_0xdb77x29[_0xd754[54]],qs[_0xd754[62]](_0xdb77x28[_0xd754[58]][_0xd754[62]]));_0xdb77x1b[_0xd754[61]]= (_0xdb77x1b[_0xd754[61]][_0xd754[63]])?_0xdb77x1b[_0xd754[61]]:_0xdb77x29[_0xd754[54]];_0xdb77x1b= _[_0xd754[73]]({},_0xdb77x1b,_0xdb77x28[_0xd754[74]]);return db[_0xd754[56]][_0xd754[80]](_0xdb77x1b)[_0xd754[45]](handleEntityNotFound(_0xdb77x15,null,_0xd754[77]))[_0xd754[45]](respondWithResult(_0xdb77x15,null,_0xd754[77]))[_0xd754[75]](handleError(_0xdb77x15,null,_0xd754[77]))};exports[_0xd754[81]]= function(_0xdb77x28,_0xdb77x15){return db[_0xd754[56]][_0xd754[81]](_0xdb77x28[_0xd754[82]],{})[_0xd754[45]](respondWithResult(_0xdb77x15,201,_0xd754[81]))[_0xd754[75]](handleError(_0xdb77x15,null,_0xd754[81]))};exports[_0xd754[46]]= function(_0xdb77x28,_0xdb77x15){if(_0xdb77x28[_0xd754[82]][_0xd754[78]]){delete _0xdb77x28[_0xd754[82]][_0xd754[78]]};return db[_0xd754[56]][_0xd754[80]]({where:{id:_0xdb77x28[_0xd754[79]][_0xd754[78]]}})[_0xd754[45]](handleEntityNotFound(_0xdb77x15,null,_0xd754[46]))[_0xd754[45]](saveUpdates(_0xdb77x28[_0xd754[82]],null,_0xd754[46]))[_0xd754[45]](respondWithResult(_0xdb77x15,null,_0xd754[46]))[_0xd754[75]](handleError(_0xdb77x15,null,_0xd754[46]))};exports[_0xd754[48]]= function(_0xdb77x28,_0xdb77x15){return db[_0xd754[56]][_0xd754[80]]({where:{id:_0xdb77x28[_0xd754[79]][_0xd754[78]]}})[_0xd754[45]](handleEntityNotFound(_0xdb77x15,null,_0xd754[48]))[_0xd754[45]](removeEntity(_0xdb77x15,null,_0xd754[48]))[_0xd754[75]](handleError(_0xdb77x15,null,_0xd754[48]))};exports[_0xd754[83]]= function(_0xdb77x28,_0xdb77x15,_0xdb77x2c){return db[_0xd754[56]][_0xd754[80]]({where:{id:_0xdb77x28[_0xd754[79]][_0xd754[78]]},attributes:[_0xd754[78],_0xd754[86]],raw:true})[_0xd754[45]](handleEntityNotFound(_0xdb77x15,null,_0xd754[83]))[_0xd754[45]](function(_0xdb77x18){if(_0xdb77x18){logger[_0xd754[24]](_0xd754[85],_0xd754[83],_0xd754[30]);logger[_0xd754[26]](_0xd754[22],_0xd754[83],_0xd754[30],JSON[_0xd754[31]](_0xdb77x18));if(!fs[_0xd754[87]](_0xdb77x18[_0xd754[86]])){throw  new db[_0xd754[89]].ValidationError(_0xd754[88])};return _0xdb77x15[_0xd754[83]](_0xdb77x18[_0xd754[86]])}})[_0xd754[75]](handleError(_0xdb77x15,null,_0xd754[84]))}
\ No newline at end of file
index ff37ee9..dd40fe1 100644 (file)
@@ -1 +1 @@
-var _0x63bc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x73\x71\x75\x61\x72\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x64\x65\x66\x69\x6E\x65"];_0x63bc[0];var _=require(_0x63bc[1]);var util=require(_0x63bc[2]);var logger=require(_0x63bc[4])(_0x63bc[3]);var attributes=require(_0x63bc[5]);module[_0x63bc[6]]= function(_0x8d55x5,_0x8d55x6){return _0x8d55x5[_0x63bc[9]](_0x63bc[7],attributes,{tableName:_0x63bc[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x541e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x73\x71\x75\x61\x72\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x64\x65\x66\x69\x6E\x65"];_0x541e[0];var _=require(_0x541e[1]);var util=require(_0x541e[2]);var logger=require(_0x541e[4])(_0x541e[3]);var attributes=require(_0x541e[5]);module[_0x541e[6]]= function(_0xfffex5,_0xfffex6){return _0xfffex5[_0x541e[9]](_0x541e[7],attributes,{tableName:_0x541e[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 4b3b328..1845166 100644 (file)
@@ -1 +1 @@
-var _0x2cab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67"];_0x2cab[0];var _=require(_0x2cab[1]);var util=require(_0x2cab[2]);var moment=require(_0x2cab[3]);var BPromise=require(_0x2cab[4]);var db=require(_0x2cab[6])[_0x2cab[5]];var utils=require(_0x2cab[7]);var logger=require(_0x2cab[9])(_0x2cab[8]);var jayson=require(_0x2cab[10]);var client=jayson[_0x2cab[12]][_0x2cab[11]]({port:9002});function respondWithRpcPromise(_0x6ad0xb,_0x6ad0xc,_0x6ad0xd){return  new BPromise(function(_0x6ad0xe,_0x6ad0xf){return client[_0x2cab[25]](_0x6ad0xb,_0x6ad0xd)[_0x2cab[24]](function(_0x6ad0x11){logger[_0x2cab[17]](_0x2cab[13],_0x6ad0xc,_0x2cab[16]);logger[_0x2cab[20]](_0x2cab[18],_0x6ad0xc,_0x2cab[16],JSON[_0x2cab[19]](_0x6ad0x11));if(_0x6ad0x11[_0x2cab[14]]){if(_0x6ad0x11[_0x2cab[14]][_0x2cab[21]]=== 500){logger[_0x2cab[14]](_0x2cab[13],_0x6ad0xc,_0x6ad0x11[_0x2cab[14]][_0x2cab[22]]);return _0x6ad0xf(_0x6ad0x11[_0x2cab[14]][_0x2cab[22]])};logger[_0x2cab[14]](_0x2cab[13],_0x6ad0xc,_0x6ad0x11[_0x2cab[14]][_0x2cab[22]]);return _0x6ad0xe(_0x6ad0x11[_0x2cab[14]][_0x2cab[22]])}else {logger[_0x2cab[17]](_0x2cab[13],_0x6ad0xc,_0x2cab[16]);_0x6ad0xe(_0x6ad0x11[_0x2cab[23]][_0x2cab[22]])}})[_0x2cab[15]](function(_0x6ad0x10){logger[_0x2cab[14]](_0x2cab[13],_0x6ad0xc,_0x6ad0x10);_0x6ad0xf(_0x6ad0x10)})})}exports[_0x2cab[26]]= function(_0x6ad0xd){var _0x6ad0x12=this;return  new Promise(function(_0x6ad0xe,_0x6ad0xf){return db[_0x2cab[31]][_0x2cab[30]](_0x6ad0xd[_0x2cab[27]],{raw:_0x6ad0xd[_0x2cab[28]]?(_0x6ad0xd[_0x2cab[28]][_0x2cab[29]]=== undefined)?true:false:true})[_0x2cab[24]](function(_0x6ad0x11){logger[_0x2cab[17]](_0x2cab[26],_0x6ad0xd);logger[_0x2cab[20]](_0x2cab[26],_0x6ad0xd,JSON[_0x2cab[19]](_0x6ad0x11));_0x6ad0xe(_0x6ad0x11)})[_0x2cab[15]](function(_0x6ad0x10){logger[_0x2cab[14]](_0x2cab[26],_0x6ad0x10[_0x2cab[22]],_0x6ad0xd);_0x6ad0xf(_0x6ad0x12[_0x2cab[14]](500,_0x6ad0x10[_0x2cab[22]]))})})}
\ No newline at end of file
+var _0xeaf1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67"];_0xeaf1[0];var _=require(_0xeaf1[1]);var util=require(_0xeaf1[2]);var moment=require(_0xeaf1[3]);var BPromise=require(_0xeaf1[4]);var db=require(_0xeaf1[6])[_0xeaf1[5]];var utils=require(_0xeaf1[7]);var logger=require(_0xeaf1[9])(_0xeaf1[8]);var jayson=require(_0xeaf1[10]);var client=jayson[_0xeaf1[12]][_0xeaf1[11]]({port:9002});function respondWithRpcPromise(_0x9501xb,_0x9501xc,_0x9501xd){return  new BPromise(function(_0x9501xe,_0x9501xf){return client[_0xeaf1[25]](_0x9501xb,_0x9501xd)[_0xeaf1[24]](function(_0x9501x11){logger[_0xeaf1[17]](_0xeaf1[13],_0x9501xc,_0xeaf1[16]);logger[_0xeaf1[20]](_0xeaf1[18],_0x9501xc,_0xeaf1[16],JSON[_0xeaf1[19]](_0x9501x11));if(_0x9501x11[_0xeaf1[14]]){if(_0x9501x11[_0xeaf1[14]][_0xeaf1[21]]=== 500){logger[_0xeaf1[14]](_0xeaf1[13],_0x9501xc,_0x9501x11[_0xeaf1[14]][_0xeaf1[22]]);return _0x9501xf(_0x9501x11[_0xeaf1[14]][_0xeaf1[22]])};logger[_0xeaf1[14]](_0xeaf1[13],_0x9501xc,_0x9501x11[_0xeaf1[14]][_0xeaf1[22]]);return _0x9501xe(_0x9501x11[_0xeaf1[14]][_0xeaf1[22]])}else {logger[_0xeaf1[17]](_0xeaf1[13],_0x9501xc,_0xeaf1[16]);_0x9501xe(_0x9501x11[_0xeaf1[23]][_0xeaf1[22]])}})[_0xeaf1[15]](function(_0x9501x10){logger[_0xeaf1[14]](_0xeaf1[13],_0x9501xc,_0x9501x10);_0x9501xf(_0x9501x10)})})}exports[_0xeaf1[26]]= function(_0x9501xd){var _0x9501x12=this;return  new Promise(function(_0x9501xe,_0x9501xf){return db[_0xeaf1[31]][_0xeaf1[30]](_0x9501xd[_0xeaf1[27]],{raw:_0x9501xd[_0xeaf1[28]]?(_0x9501xd[_0xeaf1[28]][_0xeaf1[29]]=== undefined)?true:false:true})[_0xeaf1[24]](function(_0x9501x11){logger[_0xeaf1[17]](_0xeaf1[26],_0x9501xd);logger[_0xeaf1[20]](_0xeaf1[26],_0x9501xd,JSON[_0xeaf1[19]](_0x9501x11));_0x9501xe(_0x9501x11)})[_0xeaf1[15]](function(_0x9501x10){logger[_0xeaf1[14]](_0xeaf1[26],_0x9501x10[_0xeaf1[22]],_0x9501xd);_0x9501xf(_0x9501x12[_0xeaf1[14]](500,_0x9501x10[_0xeaf1[22]]))})})}
\ No newline at end of file
index 4dbc615..44f3c82 100644 (file)
@@ -1 +1 @@
-var _0x5994=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5994[0];var multer=require(_0x5994[1]);var util=require(_0x5994[2]);var path=require(_0x5994[3]);var express=require(_0x5994[4]);var router=express.Router();var auth=require(_0x5994[5]);var config=require(_0x5994[6]);var controller=require(_0x5994[7]);router[_0x5994[11]](_0x5994[8],auth[_0x5994[9]](),controller[_0x5994[10]]);router[_0x5994[11]](_0x5994[12],auth[_0x5994[9]](),controller[_0x5994[13]]);router[_0x5994[11]](_0x5994[14],auth[_0x5994[9]](),controller[_0x5994[15]]);router[_0x5994[17]](_0x5994[8],auth[_0x5994[9]](),controller[_0x5994[16]]);router[_0x5994[19]](_0x5994[14],auth[_0x5994[9]](),controller[_0x5994[18]]);router[_0x5994[21]](_0x5994[14],auth[_0x5994[9]](),controller[_0x5994[20]]);module[_0x5994[22]]= router
\ No newline at end of file
+var _0x2a8a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2a8a[0];var multer=require(_0x2a8a[1]);var util=require(_0x2a8a[2]);var path=require(_0x2a8a[3]);var express=require(_0x2a8a[4]);var router=express.Router();var auth=require(_0x2a8a[5]);var config=require(_0x2a8a[6]);var controller=require(_0x2a8a[7]);router[_0x2a8a[11]](_0x2a8a[8],auth[_0x2a8a[9]](),controller[_0x2a8a[10]]);router[_0x2a8a[11]](_0x2a8a[12],auth[_0x2a8a[9]](),controller[_0x2a8a[13]]);router[_0x2a8a[11]](_0x2a8a[14],auth[_0x2a8a[9]](),controller[_0x2a8a[15]]);router[_0x2a8a[17]](_0x2a8a[8],auth[_0x2a8a[9]](),controller[_0x2a8a[16]]);router[_0x2a8a[19]](_0x2a8a[14],auth[_0x2a8a[9]](),controller[_0x2a8a[18]]);router[_0x2a8a[21]](_0x2a8a[14],auth[_0x2a8a[9]](),controller[_0x2a8a[20]]);module[_0x2a8a[22]]= router
\ No newline at end of file
index d96a1f9..1416dcc 100644 (file)
@@ -1 +1 @@
-var _0x863f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45"];_0x863f[0];var Sequelize=require(_0x863f[1]);module[_0x863f[2]]= {network:{type:Sequelize[_0x863f[3]]},network_script:{type:Sequelize[_0x863f[3]]},request:{type:Sequelize[_0x863f[3]]},channel:{type:Sequelize[_0x863f[3]]},language:{type:Sequelize[_0x863f[3]]},type:{type:Sequelize[_0x863f[3]]},uniqueid:{type:Sequelize[_0x863f[3]]},version:{type:Sequelize[_0x863f[3]]},callerid:{type:Sequelize[_0x863f[3]]},calleridname:{type:Sequelize[_0x863f[3]]},callingpres:{type:Sequelize[_0x863f[3]]},callingani2:{type:Sequelize[_0x863f[3]]},callington:{type:Sequelize[_0x863f[3]]},callingtns:{type:Sequelize[_0x863f[3]]},dnid:{type:Sequelize[_0x863f[3]]},rdnis:{type:Sequelize[_0x863f[3]]},context:{type:Sequelize[_0x863f[3]]},extension:{type:Sequelize[_0x863f[3]]},priority:{type:Sequelize[_0x863f[3]]},enhanced:{type:Sequelize[_0x863f[3]]},accountcode:{type:Sequelize[_0x863f[3]]},threadid:{type:Sequelize[_0x863f[3]]},project_name:{type:Sequelize[_0x863f[3]]},joinAt:{type:Sequelize[_0x863f[4]]},leaveAt:{type:Sequelize[_0x863f[4]]}}
\ No newline at end of file
+var _0xf47f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45"];_0xf47f[0];var Sequelize=require(_0xf47f[1]);module[_0xf47f[2]]= {network:{type:Sequelize[_0xf47f[3]]},network_script:{type:Sequelize[_0xf47f[3]]},request:{type:Sequelize[_0xf47f[3]]},channel:{type:Sequelize[_0xf47f[3]]},language:{type:Sequelize[_0xf47f[3]]},type:{type:Sequelize[_0xf47f[3]]},uniqueid:{type:Sequelize[_0xf47f[3]]},version:{type:Sequelize[_0xf47f[3]]},callerid:{type:Sequelize[_0xf47f[3]]},calleridname:{type:Sequelize[_0xf47f[3]]},callingpres:{type:Sequelize[_0xf47f[3]]},callingani2:{type:Sequelize[_0xf47f[3]]},callington:{type:Sequelize[_0xf47f[3]]},callingtns:{type:Sequelize[_0xf47f[3]]},dnid:{type:Sequelize[_0xf47f[3]]},rdnis:{type:Sequelize[_0xf47f[3]]},context:{type:Sequelize[_0xf47f[3]]},extension:{type:Sequelize[_0xf47f[3]]},priority:{type:Sequelize[_0xf47f[3]]},enhanced:{type:Sequelize[_0xf47f[3]]},accountcode:{type:Sequelize[_0xf47f[3]]},threadid:{type:Sequelize[_0xf47f[3]]},project_name:{type:Sequelize[_0xf47f[3]]},joinAt:{type:Sequelize[_0xf47f[4]]},leaveAt:{type:Sequelize[_0xf47f[4]]}}
\ No newline at end of file
index dbe6748..114af9f 100644 (file)
@@ -1 +1 @@
-var _0xc9ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xc9ee[0];var jsonpatch=require(_0xc9ee[1]);var rp=require(_0xc9ee[2]);var moment=require(_0xc9ee[3]);var BPromise=require(_0xc9ee[4]);var util=require(_0xc9ee[5]);var path=require(_0xc9ee[6]);var sox=require(_0xc9ee[7]);var ejs=require(_0xc9ee[8]);var fs=require(_0xc9ee[9]);var _=require(_0xc9ee[10]);var squel=require(_0xc9ee[11]);var crypto=require(_0xc9ee[12]);var jsforce=require(_0xc9ee[13]);var toCsv=require(_0xc9ee[14]);var qs=require(_0xc9ee[15]);var logger=require(_0xc9ee[17])(_0xc9ee[16]);var utils=require(_0xc9ee[18]);var config=require(_0xc9ee[19]);var db=require(_0xc9ee[21])[_0xc9ee[20]];function respondWithStatusCode(_0x51ebx15,_0x51ebx16,_0x51ebx17){_0x51ebx16= _0x51ebx16|| 204;return function(_0x51ebx18){if(_0x51ebx18){logger[_0xc9ee[24]](_0xc9ee[22],_0x51ebx17,_0x51ebx16,_0xc9ee[23]);logger[_0xc9ee[26]](_0xc9ee[25],_0x51ebx17,_0x51ebx16,_0xc9ee[23]);return _0x51ebx15[_0xc9ee[27]](_0x51ebx16)};return _0x51ebx15[_0xc9ee[29]](304)[_0xc9ee[28]]()}}function respondWithResult(_0x51ebx15,_0x51ebx16,_0x51ebx17){_0x51ebx16= _0x51ebx16|| 200;return function(_0x51ebx18){if(_0x51ebx18){logger[_0xc9ee[24]](_0xc9ee[22],_0x51ebx17,_0x51ebx16,_0xc9ee[30]);logger[_0xc9ee[26]](_0xc9ee[25],_0x51ebx17,_0x51ebx16,_0xc9ee[30],JSON[_0xc9ee[31]](_0x51ebx18));return _0x51ebx15[_0xc9ee[29]](_0x51ebx16)[_0xc9ee[32]](_0x51ebx18)};return _0x51ebx15[_0xc9ee[29]](304)[_0xc9ee[28]]()}}function respondWithFilteredResult(_0x51ebx15,_0x51ebx1b,_0x51ebx17){return function(_0x51ebx18){if(_0x51ebx18){var _0x51ebx1c=_0x51ebx18[_0xc9ee[33]],_0x51ebx1d=_0x51ebx1b[_0xc9ee[34]],_0x51ebx1e=_0x51ebx1b[_0xc9ee[34]]+ _0x51ebx1b[_0xc9ee[35]],_0x51ebx16;if(_0x51ebx1e>= _0x51ebx1c){_0x51ebx1e= _0x51ebx1c;_0x51ebx16= 200}else {_0x51ebx16= 206};_0x51ebx15[_0xc9ee[29]](_0x51ebx16);logger[_0xc9ee[24]](_0xc9ee[22],_0x51ebx17,_0x51ebx16,_0xc9ee[36]);logger[_0xc9ee[26]](_0xc9ee[25],_0x51ebx17,_0x51ebx16,_0xc9ee[30],JSON[_0xc9ee[31]](_0x51ebx18));return _0x51ebx15[_0xc9ee[40]](_0xc9ee[37],_0x51ebx1d+ _0xc9ee[38]+ _0x51ebx1e+ _0xc9ee[39]+ _0x51ebx1c)[_0xc9ee[32]](_0x51ebx18)};return null}}function patchUpdates(_0x51ebx20){return function(_0x51ebx18){try{jsonpatch[_0xc9ee[41]](_0x51ebx18,_0x51ebx20,true)}catch(err){return BPromise[_0xc9ee[42]](err)};return _0x51ebx18[_0xc9ee[43]]()}}function saveUpdates(_0x51ebx22,_0x51ebx16,_0x51ebx17){return function(_0x51ebx18){if(_0x51ebx18){return _0x51ebx18[_0xc9ee[46]](_0x51ebx22)[_0xc9ee[45]](function(_0x51ebx23){logger[_0xc9ee[24]](_0xc9ee[22],_0x51ebx17,_0x51ebx16,_0xc9ee[44]);logger[_0xc9ee[26]](_0xc9ee[25],_0x51ebx17,_0x51ebx16,_0xc9ee[44],JSON[_0xc9ee[31]](_0x51ebx18));return _0x51ebx23})};return null}}function removeEntity(_0x51ebx15,_0x51ebx16,_0x51ebx17){return function(_0x51ebx18){if(_0x51ebx18){return _0x51ebx18[_0xc9ee[48]]()[_0xc9ee[45]](function(){logger[_0xc9ee[24]](_0xc9ee[22],_0x51ebx17,_0x51ebx16,_0xc9ee[47]);logger[_0xc9ee[26]](_0xc9ee[25],_0x51ebx17,_0x51ebx16,_0xc9ee[47],JSON[_0xc9ee[31]](_0x51ebx18));_0x51ebx15[_0xc9ee[29]](204)[_0xc9ee[28]]()})}}}function handleEntityNotFound(_0x51ebx15,_0x51ebx16,_0x51ebx17){return function(_0x51ebx18){if(!_0x51ebx18){logger[_0xc9ee[50]](_0xc9ee[22],_0x51ebx17,404,_0xc9ee[49]);_0x51ebx15[_0xc9ee[29]](404)[_0xc9ee[28]]();return null};return _0x51ebx18}}function handleError(_0x51ebx15,_0x51ebx16,_0x51ebx17){_0x51ebx16= _0x51ebx16|| 500;return function(_0x51ebx27){logger[_0xc9ee[50]](_0xc9ee[22],_0x51ebx17,_0x51ebx16,JSON[_0xc9ee[31]](_0x51ebx27));delete _0x51ebx27[_0xc9ee[51]];_0x51ebx15[_0xc9ee[29]](_0x51ebx16)[_0xc9ee[52]](_0x51ebx27)}}exports[_0xc9ee[53]]= function(_0x51ebx28,_0x51ebx15){var _0x51ebx1b={},_0x51ebx29={};_0x51ebx29[_0xc9ee[54]]= _[_0xc9ee[57]](db[_0xc9ee[56]][_0xc9ee[55]]);_0x51ebx29[_0xc9ee[58]]= _[_0xc9ee[57]](_0x51ebx28[_0xc9ee[58]]);_0x51ebx29[_0xc9ee[59]]= _[_0xc9ee[60]](_0x51ebx29[_0xc9ee[54]],_0x51ebx29[_0xc9ee[58]]);_0x51ebx1b[_0xc9ee[61]]= _[_0xc9ee[60]](_0x51ebx29[_0xc9ee[54]],qs[_0xc9ee[62]](_0x51ebx28[_0xc9ee[58]][_0xc9ee[62]]));_0x51ebx1b[_0xc9ee[61]]= (_0x51ebx1b[_0xc9ee[61]][_0xc9ee[63]])?_0x51ebx1b[_0xc9ee[61]]:_0x51ebx29[_0xc9ee[54]];if(!_0x51ebx28[_0xc9ee[58]][_0xc9ee[65]](_0xc9ee[64])){_0x51ebx1b[_0xc9ee[35]]= qs[_0xc9ee[35]](_0x51ebx28[_0xc9ee[58]][_0xc9ee[35]]);_0x51ebx1b[_0xc9ee[34]]= qs[_0xc9ee[34]](_0x51ebx28[_0xc9ee[58]][_0xc9ee[34]])};_0x51ebx1b[_0xc9ee[66]]= qs[_0xc9ee[67]](_0x51ebx28[_0xc9ee[58]][_0xc9ee[67]]);_0x51ebx1b[_0xc9ee[68]]= qs[_0xc9ee[59]](_[_0xc9ee[69]](_0x51ebx28[_0xc9ee[58]],_0x51ebx29[_0xc9ee[59]]));if(_0x51ebx28[_0xc9ee[58]][_0xc9ee[70]]){_0x51ebx1b[_0xc9ee[68]]= _[_0xc9ee[73]](_0x51ebx1b[_0xc9ee[68]],{$or:_[_0xc9ee[72]](_0x51ebx1b[_0xc9ee[61]],function(_0x51ebx2a){var _0x51ebx2b={};_0x51ebx2b[_0x51ebx2a]= {$like:_0xc9ee[71]+ _0x51ebx28[_0xc9ee[58]][_0xc9ee[70]]+ _0xc9ee[71]};return _0x51ebx2b})})};_0x51ebx1b= _[_0xc9ee[73]]({},_0x51ebx1b,_0x51ebx28[_0xc9ee[74]]);return db[_0xc9ee[56]][_0xc9ee[76]](_0x51ebx1b)[_0xc9ee[45]](respondWithFilteredResult(_0x51ebx15,_0x51ebx1b,_0xc9ee[53]))[_0xc9ee[75]](handleError(_0x51ebx15,null,_0xc9ee[53]))};exports[_0xc9ee[77]]= function(_0x51ebx28,_0x51ebx15){var _0x51ebx1b={raw:true,where:{id:_0x51ebx28[_0xc9ee[79]][_0xc9ee[78]]}},_0x51ebx29={};_0x51ebx29[_0xc9ee[54]]= _[_0xc9ee[57]](db[_0xc9ee[56]][_0xc9ee[55]]);_0x51ebx29[_0xc9ee[58]]= _[_0xc9ee[57]](_0x51ebx28[_0xc9ee[58]]);_0x51ebx29[_0xc9ee[59]]= _[_0xc9ee[60]](_0x51ebx29[_0xc9ee[54]],_0x51ebx29[_0xc9ee[58]]);_0x51ebx1b[_0xc9ee[61]]= _[_0xc9ee[60]](_0x51ebx29[_0xc9ee[54]],qs[_0xc9ee[62]](_0x51ebx28[_0xc9ee[58]][_0xc9ee[62]]));_0x51ebx1b[_0xc9ee[61]]= (_0x51ebx1b[_0xc9ee[61]][_0xc9ee[63]])?_0x51ebx1b[_0xc9ee[61]]:_0x51ebx29[_0xc9ee[54]];_0x51ebx1b= _[_0xc9ee[73]]({},_0x51ebx1b,_0x51ebx28[_0xc9ee[74]]);return db[_0xc9ee[56]][_0xc9ee[80]](_0x51ebx1b)[_0xc9ee[45]](handleEntityNotFound(_0x51ebx15,null,_0xc9ee[77]))[_0xc9ee[45]](respondWithResult(_0x51ebx15,null,_0xc9ee[77]))[_0xc9ee[75]](handleError(_0x51ebx15,null,_0xc9ee[77]))};exports[_0xc9ee[81]]= function(_0x51ebx28,_0x51ebx15){return db[_0xc9ee[56]][_0xc9ee[81]](_0x51ebx28[_0xc9ee[82]],{})[_0xc9ee[45]](respondWithResult(_0x51ebx15,201,_0xc9ee[81]))[_0xc9ee[75]](handleError(_0x51ebx15,null,_0xc9ee[81]))};exports[_0xc9ee[46]]= function(_0x51ebx28,_0x51ebx15){if(_0x51ebx28[_0xc9ee[82]][_0xc9ee[78]]){delete _0x51ebx28[_0xc9ee[82]][_0xc9ee[78]]};return db[_0xc9ee[56]][_0xc9ee[80]]({where:{id:_0x51ebx28[_0xc9ee[79]][_0xc9ee[78]]}})[_0xc9ee[45]](handleEntityNotFound(_0x51ebx15,null,_0xc9ee[46]))[_0xc9ee[45]](saveUpdates(_0x51ebx28[_0xc9ee[82]],null,_0xc9ee[46]))[_0xc9ee[45]](respondWithResult(_0x51ebx15,null,_0xc9ee[46]))[_0xc9ee[75]](handleError(_0x51ebx15,null,_0xc9ee[46]))};exports[_0xc9ee[48]]= function(_0x51ebx28,_0x51ebx15){return db[_0xc9ee[56]][_0xc9ee[80]]({where:{id:_0x51ebx28[_0xc9ee[79]][_0xc9ee[78]]}})[_0xc9ee[45]](handleEntityNotFound(_0x51ebx15,null,_0xc9ee[48]))[_0xc9ee[45]](removeEntity(_0x51ebx15,null,_0xc9ee[48]))[_0xc9ee[75]](handleError(_0x51ebx15,null,_0xc9ee[48]))};exports[_0xc9ee[83]]= function(_0x51ebx28,_0x51ebx15){return db[_0xc9ee[56]][_0xc9ee[83]]()[_0xc9ee[45]](respondWithResult(_0x51ebx15,null,_0xc9ee[83]))[_0xc9ee[75]](handleError(_0x51ebx15,null,_0xc9ee[83]))}
\ No newline at end of file
+var _0xd889=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xd889[0];var jsonpatch=require(_0xd889[1]);var rp=require(_0xd889[2]);var moment=require(_0xd889[3]);var BPromise=require(_0xd889[4]);var util=require(_0xd889[5]);var path=require(_0xd889[6]);var sox=require(_0xd889[7]);var ejs=require(_0xd889[8]);var fs=require(_0xd889[9]);var _=require(_0xd889[10]);var squel=require(_0xd889[11]);var crypto=require(_0xd889[12]);var jsforce=require(_0xd889[13]);var toCsv=require(_0xd889[14]);var qs=require(_0xd889[15]);var logger=require(_0xd889[17])(_0xd889[16]);var utils=require(_0xd889[18]);var config=require(_0xd889[19]);var db=require(_0xd889[21])[_0xd889[20]];function respondWithStatusCode(_0x3822x15,_0x3822x16,_0x3822x17){_0x3822x16= _0x3822x16|| 204;return function(_0x3822x18){if(_0x3822x18){logger[_0xd889[24]](_0xd889[22],_0x3822x17,_0x3822x16,_0xd889[23]);logger[_0xd889[26]](_0xd889[25],_0x3822x17,_0x3822x16,_0xd889[23]);return _0x3822x15[_0xd889[27]](_0x3822x16)};return _0x3822x15[_0xd889[29]](304)[_0xd889[28]]()}}function respondWithResult(_0x3822x15,_0x3822x16,_0x3822x17){_0x3822x16= _0x3822x16|| 200;return function(_0x3822x18){if(_0x3822x18){logger[_0xd889[24]](_0xd889[22],_0x3822x17,_0x3822x16,_0xd889[30]);logger[_0xd889[26]](_0xd889[25],_0x3822x17,_0x3822x16,_0xd889[30],JSON[_0xd889[31]](_0x3822x18));return _0x3822x15[_0xd889[29]](_0x3822x16)[_0xd889[32]](_0x3822x18)};return _0x3822x15[_0xd889[29]](304)[_0xd889[28]]()}}function respondWithFilteredResult(_0x3822x15,_0x3822x1b,_0x3822x17){return function(_0x3822x18){if(_0x3822x18){var _0x3822x1c=_0x3822x18[_0xd889[33]],_0x3822x1d=_0x3822x1b[_0xd889[34]],_0x3822x1e=_0x3822x1b[_0xd889[34]]+ _0x3822x1b[_0xd889[35]],_0x3822x16;if(_0x3822x1e>= _0x3822x1c){_0x3822x1e= _0x3822x1c;_0x3822x16= 200}else {_0x3822x16= 206};_0x3822x15[_0xd889[29]](_0x3822x16);logger[_0xd889[24]](_0xd889[22],_0x3822x17,_0x3822x16,_0xd889[36]);logger[_0xd889[26]](_0xd889[25],_0x3822x17,_0x3822x16,_0xd889[30],JSON[_0xd889[31]](_0x3822x18));return _0x3822x15[_0xd889[40]](_0xd889[37],_0x3822x1d+ _0xd889[38]+ _0x3822x1e+ _0xd889[39]+ _0x3822x1c)[_0xd889[32]](_0x3822x18)};return null}}function patchUpdates(_0x3822x20){return function(_0x3822x18){try{jsonpatch[_0xd889[41]](_0x3822x18,_0x3822x20,true)}catch(err){return BPromise[_0xd889[42]](err)};return _0x3822x18[_0xd889[43]]()}}function saveUpdates(_0x3822x22,_0x3822x16,_0x3822x17){return function(_0x3822x18){if(_0x3822x18){return _0x3822x18[_0xd889[46]](_0x3822x22)[_0xd889[45]](function(_0x3822x23){logger[_0xd889[24]](_0xd889[22],_0x3822x17,_0x3822x16,_0xd889[44]);logger[_0xd889[26]](_0xd889[25],_0x3822x17,_0x3822x16,_0xd889[44],JSON[_0xd889[31]](_0x3822x18));return _0x3822x23})};return null}}function removeEntity(_0x3822x15,_0x3822x16,_0x3822x17){return function(_0x3822x18){if(_0x3822x18){return _0x3822x18[_0xd889[48]]()[_0xd889[45]](function(){logger[_0xd889[24]](_0xd889[22],_0x3822x17,_0x3822x16,_0xd889[47]);logger[_0xd889[26]](_0xd889[25],_0x3822x17,_0x3822x16,_0xd889[47],JSON[_0xd889[31]](_0x3822x18));_0x3822x15[_0xd889[29]](204)[_0xd889[28]]()})}}}function handleEntityNotFound(_0x3822x15,_0x3822x16,_0x3822x17){return function(_0x3822x18){if(!_0x3822x18){logger[_0xd889[50]](_0xd889[22],_0x3822x17,404,_0xd889[49]);_0x3822x15[_0xd889[29]](404)[_0xd889[28]]();return null};return _0x3822x18}}function handleError(_0x3822x15,_0x3822x16,_0x3822x17){_0x3822x16= _0x3822x16|| 500;return function(_0x3822x27){logger[_0xd889[50]](_0xd889[22],_0x3822x17,_0x3822x16,JSON[_0xd889[31]](_0x3822x27));delete _0x3822x27[_0xd889[51]];_0x3822x15[_0xd889[29]](_0x3822x16)[_0xd889[52]](_0x3822x27)}}exports[_0xd889[53]]= function(_0x3822x28,_0x3822x15){var _0x3822x1b={},_0x3822x29={};_0x3822x29[_0xd889[54]]= _[_0xd889[57]](db[_0xd889[56]][_0xd889[55]]);_0x3822x29[_0xd889[58]]= _[_0xd889[57]](_0x3822x28[_0xd889[58]]);_0x3822x29[_0xd889[59]]= _[_0xd889[60]](_0x3822x29[_0xd889[54]],_0x3822x29[_0xd889[58]]);_0x3822x1b[_0xd889[61]]= _[_0xd889[60]](_0x3822x29[_0xd889[54]],qs[_0xd889[62]](_0x3822x28[_0xd889[58]][_0xd889[62]]));_0x3822x1b[_0xd889[61]]= (_0x3822x1b[_0xd889[61]][_0xd889[63]])?_0x3822x1b[_0xd889[61]]:_0x3822x29[_0xd889[54]];if(!_0x3822x28[_0xd889[58]][_0xd889[65]](_0xd889[64])){_0x3822x1b[_0xd889[35]]= qs[_0xd889[35]](_0x3822x28[_0xd889[58]][_0xd889[35]]);_0x3822x1b[_0xd889[34]]= qs[_0xd889[34]](_0x3822x28[_0xd889[58]][_0xd889[34]])};_0x3822x1b[_0xd889[66]]= qs[_0xd889[67]](_0x3822x28[_0xd889[58]][_0xd889[67]]);_0x3822x1b[_0xd889[68]]= qs[_0xd889[59]](_[_0xd889[69]](_0x3822x28[_0xd889[58]],_0x3822x29[_0xd889[59]]));if(_0x3822x28[_0xd889[58]][_0xd889[70]]){_0x3822x1b[_0xd889[68]]= _[_0xd889[73]](_0x3822x1b[_0xd889[68]],{$or:_[_0xd889[72]](_0x3822x1b[_0xd889[61]],function(_0x3822x2a){var _0x3822x2b={};_0x3822x2b[_0x3822x2a]= {$like:_0xd889[71]+ _0x3822x28[_0xd889[58]][_0xd889[70]]+ _0xd889[71]};return _0x3822x2b})})};_0x3822x1b= _[_0xd889[73]]({},_0x3822x1b,_0x3822x28[_0xd889[74]]);return db[_0xd889[56]][_0xd889[76]](_0x3822x1b)[_0xd889[45]](respondWithFilteredResult(_0x3822x15,_0x3822x1b,_0xd889[53]))[_0xd889[75]](handleError(_0x3822x15,null,_0xd889[53]))};exports[_0xd889[77]]= function(_0x3822x28,_0x3822x15){var _0x3822x1b={raw:true,where:{id:_0x3822x28[_0xd889[79]][_0xd889[78]]}},_0x3822x29={};_0x3822x29[_0xd889[54]]= _[_0xd889[57]](db[_0xd889[56]][_0xd889[55]]);_0x3822x29[_0xd889[58]]= _[_0xd889[57]](_0x3822x28[_0xd889[58]]);_0x3822x29[_0xd889[59]]= _[_0xd889[60]](_0x3822x29[_0xd889[54]],_0x3822x29[_0xd889[58]]);_0x3822x1b[_0xd889[61]]= _[_0xd889[60]](_0x3822x29[_0xd889[54]],qs[_0xd889[62]](_0x3822x28[_0xd889[58]][_0xd889[62]]));_0x3822x1b[_0xd889[61]]= (_0x3822x1b[_0xd889[61]][_0xd889[63]])?_0x3822x1b[_0xd889[61]]:_0x3822x29[_0xd889[54]];_0x3822x1b= _[_0xd889[73]]({},_0x3822x1b,_0x3822x28[_0xd889[74]]);return db[_0xd889[56]][_0xd889[80]](_0x3822x1b)[_0xd889[45]](handleEntityNotFound(_0x3822x15,null,_0xd889[77]))[_0xd889[45]](respondWithResult(_0x3822x15,null,_0xd889[77]))[_0xd889[75]](handleError(_0x3822x15,null,_0xd889[77]))};exports[_0xd889[81]]= function(_0x3822x28,_0x3822x15){return db[_0xd889[56]][_0xd889[81]](_0x3822x28[_0xd889[82]],{})[_0xd889[45]](respondWithResult(_0x3822x15,201,_0xd889[81]))[_0xd889[75]](handleError(_0x3822x15,null,_0xd889[81]))};exports[_0xd889[46]]= function(_0x3822x28,_0x3822x15){if(_0x3822x28[_0xd889[82]][_0xd889[78]]){delete _0x3822x28[_0xd889[82]][_0xd889[78]]};return db[_0xd889[56]][_0xd889[80]]({where:{id:_0x3822x28[_0xd889[79]][_0xd889[78]]}})[_0xd889[45]](handleEntityNotFound(_0x3822x15,null,_0xd889[46]))[_0xd889[45]](saveUpdates(_0x3822x28[_0xd889[82]],null,_0xd889[46]))[_0xd889[45]](respondWithResult(_0x3822x15,null,_0xd889[46]))[_0xd889[75]](handleError(_0x3822x15,null,_0xd889[46]))};exports[_0xd889[48]]= function(_0x3822x28,_0x3822x15){return db[_0xd889[56]][_0xd889[80]]({where:{id:_0x3822x28[_0xd889[79]][_0xd889[78]]}})[_0xd889[45]](handleEntityNotFound(_0x3822x15,null,_0xd889[48]))[_0xd889[45]](removeEntity(_0x3822x15,null,_0xd889[48]))[_0xd889[75]](handleError(_0x3822x15,null,_0xd889[48]))};exports[_0xd889[83]]= function(_0x3822x28,_0x3822x15){return db[_0xd889[56]][_0xd889[83]]()[_0xd889[45]](respondWithResult(_0x3822x15,null,_0xd889[83]))[_0xd889[75]](handleError(_0x3822x15,null,_0xd889[83]))}
\ No newline at end of file
index fe9fdb8..a5e84c7 100644 (file)
@@ -1 +1 @@
-var _0xae75=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x73\x71\x75\x61\x72\x65","\x64\x65\x66\x69\x6E\x65"];_0xae75[0];var _=require(_0xae75[1]);var util=require(_0xae75[2]);var logger=require(_0xae75[4])(_0xae75[3]);var attributes=require(_0xae75[5]);module[_0xae75[6]]= function(_0x18e4x5,_0x18e4x6){return _0x18e4x5[_0xae75[9]](_0xae75[7],attributes,{tableName:_0xae75[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x296e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x73\x71\x75\x61\x72\x65","\x64\x65\x66\x69\x6E\x65"];_0x296e[0];var _=require(_0x296e[1]);var util=require(_0x296e[2]);var logger=require(_0x296e[4])(_0x296e[3]);var attributes=require(_0x296e[5]);module[_0x296e[6]]= function(_0x5e88x5,_0x5e88x6){return _0x5e88x5[_0x296e[9]](_0x296e[7],attributes,{tableName:_0x296e[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 9818f6d..bcc6ba9 100644 (file)
@@ -1 +1 @@
-var _0xe08d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x55\x70\x64\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65"];_0xe08d[0];var _=require(_0xe08d[1]);var util=require(_0xe08d[2]);var moment=require(_0xe08d[3]);var BPromise=require(_0xe08d[4]);var db=require(_0xe08d[6])[_0xe08d[5]];var utils=require(_0xe08d[7]);var logger=require(_0xe08d[9])(_0xe08d[8]);var jayson=require(_0xe08d[10]);var client=jayson[_0xe08d[12]][_0xe08d[11]]({port:9002});function respondWithRpcPromise(_0x8938xb,_0x8938xc,_0x8938xd){return  new BPromise(function(_0x8938xe,_0x8938xf){return client[_0xe08d[25]](_0x8938xb,_0x8938xd)[_0xe08d[24]](function(_0x8938x11){logger[_0xe08d[17]](_0xe08d[13],_0x8938xc,_0xe08d[16]);logger[_0xe08d[20]](_0xe08d[18],_0x8938xc,_0xe08d[16],JSON[_0xe08d[19]](_0x8938x11));if(_0x8938x11[_0xe08d[14]]){if(_0x8938x11[_0xe08d[14]][_0xe08d[21]]=== 500){logger[_0xe08d[14]](_0xe08d[13],_0x8938xc,_0x8938x11[_0xe08d[14]][_0xe08d[22]]);return _0x8938xf(_0x8938x11[_0xe08d[14]][_0xe08d[22]])};logger[_0xe08d[14]](_0xe08d[13],_0x8938xc,_0x8938x11[_0xe08d[14]][_0xe08d[22]]);return _0x8938xe(_0x8938x11[_0xe08d[14]][_0xe08d[22]])}else {logger[_0xe08d[17]](_0xe08d[13],_0x8938xc,_0xe08d[16]);_0x8938xe(_0x8938x11[_0xe08d[23]][_0xe08d[22]])}})[_0xe08d[15]](function(_0x8938x10){logger[_0xe08d[14]](_0xe08d[13],_0x8938xc,_0x8938x10);_0x8938xf(_0x8938x10)})})}exports[_0xe08d[26]]= function(_0x8938xd){var _0x8938x12=this;return  new Promise(function(_0x8938xe,_0x8938xf){return db[_0xe08d[31]][_0xe08d[30]](_0x8938xd[_0xe08d[27]],{raw:_0x8938xd[_0xe08d[28]]?(_0x8938xd[_0xe08d[28]][_0xe08d[29]]=== undefined)?true:false:true})[_0xe08d[24]](function(_0x8938x11){logger[_0xe08d[17]](_0xe08d[26],_0x8938xd);logger[_0xe08d[20]](_0xe08d[26],_0x8938xd,JSON[_0xe08d[19]](_0x8938x11));_0x8938xe(_0x8938x11)})[_0xe08d[15]](function(_0x8938x10){logger[_0xe08d[14]](_0xe08d[26],_0x8938x10[_0xe08d[22]],_0x8938xd);_0x8938xf(_0x8938x12[_0xe08d[14]](500,_0x8938x10[_0xe08d[22]]))})})};exports[_0xe08d[32]]= function(_0x8938xd){var _0x8938x12=this;return  new Promise(function(_0x8938xe,_0x8938xf){return db[_0xe08d[31]][_0xe08d[36]](_0x8938xd[_0xe08d[27]],{raw:_0x8938xd[_0xe08d[28]]?(_0x8938xd[_0xe08d[28]][_0xe08d[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x8938xd[_0xe08d[28]]?_0x8938xd[_0xe08d[28]][_0xe08d[33]]|| null:null,attributes:_0x8938xd[_0xe08d[28]]?_0x8938xd[_0xe08d[28]][_0xe08d[34]]|| null:null,limit:_0x8938xd[_0xe08d[28]]?_0x8938xd[_0xe08d[28]][_0xe08d[35]]|| null:null})[_0xe08d[24]](function(_0x8938x11){logger[_0xe08d[17]](_0xe08d[32],_0x8938xd);logger[_0xe08d[20]](_0xe08d[32],_0x8938xd,JSON[_0xe08d[19]](_0x8938x11));_0x8938xe(_0x8938x11)})[_0xe08d[15]](function(_0x8938x10){logger[_0xe08d[14]](_0xe08d[32],_0x8938x10[_0xe08d[22]],_0x8938xd);_0x8938xf(_0x8938x12[_0xe08d[14]](500,_0x8938x10[_0xe08d[22]]))})})}
\ No newline at end of file
+var _0x6325=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x55\x70\x64\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65"];_0x6325[0];var _=require(_0x6325[1]);var util=require(_0x6325[2]);var moment=require(_0x6325[3]);var BPromise=require(_0x6325[4]);var db=require(_0x6325[6])[_0x6325[5]];var utils=require(_0x6325[7]);var logger=require(_0x6325[9])(_0x6325[8]);var jayson=require(_0x6325[10]);var client=jayson[_0x6325[12]][_0x6325[11]]({port:9002});function respondWithRpcPromise(_0x4c4bxb,_0x4c4bxc,_0x4c4bxd){return  new BPromise(function(_0x4c4bxe,_0x4c4bxf){return client[_0x6325[25]](_0x4c4bxb,_0x4c4bxd)[_0x6325[24]](function(_0x4c4bx11){logger[_0x6325[17]](_0x6325[13],_0x4c4bxc,_0x6325[16]);logger[_0x6325[20]](_0x6325[18],_0x4c4bxc,_0x6325[16],JSON[_0x6325[19]](_0x4c4bx11));if(_0x4c4bx11[_0x6325[14]]){if(_0x4c4bx11[_0x6325[14]][_0x6325[21]]=== 500){logger[_0x6325[14]](_0x6325[13],_0x4c4bxc,_0x4c4bx11[_0x6325[14]][_0x6325[22]]);return _0x4c4bxf(_0x4c4bx11[_0x6325[14]][_0x6325[22]])};logger[_0x6325[14]](_0x6325[13],_0x4c4bxc,_0x4c4bx11[_0x6325[14]][_0x6325[22]]);return _0x4c4bxe(_0x4c4bx11[_0x6325[14]][_0x6325[22]])}else {logger[_0x6325[17]](_0x6325[13],_0x4c4bxc,_0x6325[16]);_0x4c4bxe(_0x4c4bx11[_0x6325[23]][_0x6325[22]])}})[_0x6325[15]](function(_0x4c4bx10){logger[_0x6325[14]](_0x6325[13],_0x4c4bxc,_0x4c4bx10);_0x4c4bxf(_0x4c4bx10)})})}exports[_0x6325[26]]= function(_0x4c4bxd){var _0x4c4bx12=this;return  new Promise(function(_0x4c4bxe,_0x4c4bxf){return db[_0x6325[31]][_0x6325[30]](_0x4c4bxd[_0x6325[27]],{raw:_0x4c4bxd[_0x6325[28]]?(_0x4c4bxd[_0x6325[28]][_0x6325[29]]=== undefined)?true:false:true})[_0x6325[24]](function(_0x4c4bx11){logger[_0x6325[17]](_0x6325[26],_0x4c4bxd);logger[_0x6325[20]](_0x6325[26],_0x4c4bxd,JSON[_0x6325[19]](_0x4c4bx11));_0x4c4bxe(_0x4c4bx11)})[_0x6325[15]](function(_0x4c4bx10){logger[_0x6325[14]](_0x6325[26],_0x4c4bx10[_0x6325[22]],_0x4c4bxd);_0x4c4bxf(_0x4c4bx12[_0x6325[14]](500,_0x4c4bx10[_0x6325[22]]))})})};exports[_0x6325[32]]= function(_0x4c4bxd){var _0x4c4bx12=this;return  new Promise(function(_0x4c4bxe,_0x4c4bxf){return db[_0x6325[31]][_0x6325[36]](_0x4c4bxd[_0x6325[27]],{raw:_0x4c4bxd[_0x6325[28]]?(_0x4c4bxd[_0x6325[28]][_0x6325[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x4c4bxd[_0x6325[28]]?_0x4c4bxd[_0x6325[28]][_0x6325[33]]|| null:null,attributes:_0x4c4bxd[_0x6325[28]]?_0x4c4bxd[_0x6325[28]][_0x6325[34]]|| null:null,limit:_0x4c4bxd[_0x6325[28]]?_0x4c4bxd[_0x6325[28]][_0x6325[35]]|| null:null})[_0x6325[24]](function(_0x4c4bx11){logger[_0x6325[17]](_0x6325[32],_0x4c4bxd);logger[_0x6325[20]](_0x6325[32],_0x4c4bxd,JSON[_0x6325[19]](_0x4c4bx11));_0x4c4bxe(_0x4c4bx11)})[_0x6325[15]](function(_0x4c4bx10){logger[_0x6325[14]](_0x6325[32],_0x4c4bx10[_0x6325[22]],_0x4c4bxd);_0x4c4bxf(_0x4c4bx12[_0x6325[14]](500,_0x4c4bx10[_0x6325[22]]))})})}
\ No newline at end of file
index 21ac15b..c1b3d93 100644 (file)
@@ -1 +1 @@
-var _0x3f4a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3f4a[0];var multer=require(_0x3f4a[1]);var util=require(_0x3f4a[2]);var path=require(_0x3f4a[3]);var express=require(_0x3f4a[4]);var router=express.Router();var auth=require(_0x3f4a[5]);var config=require(_0x3f4a[6]);var controller=require(_0x3f4a[7]);router[_0x3f4a[11]](_0x3f4a[8],auth[_0x3f4a[9]](),controller[_0x3f4a[10]]);router[_0x3f4a[11]](_0x3f4a[12],auth[_0x3f4a[9]](),controller[_0x3f4a[13]]);router[_0x3f4a[11]](_0x3f4a[14],auth[_0x3f4a[9]](),controller[_0x3f4a[15]]);router[_0x3f4a[17]](_0x3f4a[8],auth[_0x3f4a[9]](),controller[_0x3f4a[16]]);router[_0x3f4a[19]](_0x3f4a[14],auth[_0x3f4a[9]](),controller[_0x3f4a[18]]);router[_0x3f4a[21]](_0x3f4a[14],auth[_0x3f4a[9]](),controller[_0x3f4a[20]]);module[_0x3f4a[22]]= router
\ No newline at end of file
+var _0xe212=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe212[0];var multer=require(_0xe212[1]);var util=require(_0xe212[2]);var path=require(_0xe212[3]);var express=require(_0xe212[4]);var router=express.Router();var auth=require(_0xe212[5]);var config=require(_0xe212[6]);var controller=require(_0xe212[7]);router[_0xe212[11]](_0xe212[8],auth[_0xe212[9]](),controller[_0xe212[10]]);router[_0xe212[11]](_0xe212[12],auth[_0xe212[9]](),controller[_0xe212[13]]);router[_0xe212[11]](_0xe212[14],auth[_0xe212[9]](),controller[_0xe212[15]]);router[_0xe212[17]](_0xe212[8],auth[_0xe212[9]](),controller[_0xe212[16]]);router[_0xe212[19]](_0xe212[14],auth[_0xe212[9]](),controller[_0xe212[18]]);router[_0xe212[21]](_0xe212[14],auth[_0xe212[9]](),controller[_0xe212[20]]);module[_0xe212[22]]= router
\ No newline at end of file
index 9f0a4ba..3d200fa 100644 (file)
@@ -1 +1 @@
-var _0xb2a5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0xb2a5[0];var Sequelize=require(_0xb2a5[1]);module[_0xb2a5[2]]= {uniqueid:{type:Sequelize[_0xb2a5[3]]},node:{type:Sequelize[_0xb2a5[3]]},application:{type:Sequelize[_0xb2a5[3]]},data:{type:Sequelize[_0xb2a5[4]]},project_name:{type:Sequelize[_0xb2a5[3]]},callerid:{type:Sequelize[_0xb2a5[3]]}}
\ No newline at end of file
+var _0x7636=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0x7636[0];var Sequelize=require(_0x7636[1]);module[_0x7636[2]]= {uniqueid:{type:Sequelize[_0x7636[3]]},node:{type:Sequelize[_0x7636[3]]},application:{type:Sequelize[_0x7636[3]]},data:{type:Sequelize[_0x7636[4]]},project_name:{type:Sequelize[_0x7636[3]]},callerid:{type:Sequelize[_0x7636[3]]}}
\ No newline at end of file
index e2deeef..d1fec16 100644 (file)
@@ -1 +1 @@
-var _0x35c3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x35c3[0];var jsonpatch=require(_0x35c3[1]);var rp=require(_0x35c3[2]);var moment=require(_0x35c3[3]);var BPromise=require(_0x35c3[4]);var util=require(_0x35c3[5]);var path=require(_0x35c3[6]);var sox=require(_0x35c3[7]);var ejs=require(_0x35c3[8]);var fs=require(_0x35c3[9]);var _=require(_0x35c3[10]);var squel=require(_0x35c3[11]);var crypto=require(_0x35c3[12]);var jsforce=require(_0x35c3[13]);var toCsv=require(_0x35c3[14]);var qs=require(_0x35c3[15]);var logger=require(_0x35c3[17])(_0x35c3[16]);var utils=require(_0x35c3[18]);var config=require(_0x35c3[19]);var db=require(_0x35c3[21])[_0x35c3[20]];function respondWithStatusCode(_0x929fx15,_0x929fx16,_0x929fx17){_0x929fx16= _0x929fx16|| 204;return function(_0x929fx18){if(_0x929fx18){logger[_0x35c3[24]](_0x35c3[22],_0x929fx17,_0x929fx16,_0x35c3[23]);logger[_0x35c3[26]](_0x35c3[25],_0x929fx17,_0x929fx16,_0x35c3[23]);return _0x929fx15[_0x35c3[27]](_0x929fx16)};return _0x929fx15[_0x35c3[29]](304)[_0x35c3[28]]()}}function respondWithResult(_0x929fx15,_0x929fx16,_0x929fx17){_0x929fx16= _0x929fx16|| 200;return function(_0x929fx18){if(_0x929fx18){logger[_0x35c3[24]](_0x35c3[22],_0x929fx17,_0x929fx16,_0x35c3[30]);logger[_0x35c3[26]](_0x35c3[25],_0x929fx17,_0x929fx16,_0x35c3[30],JSON[_0x35c3[31]](_0x929fx18));return _0x929fx15[_0x35c3[29]](_0x929fx16)[_0x35c3[32]](_0x929fx18)};return _0x929fx15[_0x35c3[29]](304)[_0x35c3[28]]()}}function respondWithFilteredResult(_0x929fx15,_0x929fx1b,_0x929fx17){return function(_0x929fx18){if(_0x929fx18){var _0x929fx1c=_0x929fx18[_0x35c3[33]],_0x929fx1d=_0x929fx1b[_0x35c3[34]],_0x929fx1e=_0x929fx1b[_0x35c3[34]]+ _0x929fx1b[_0x35c3[35]],_0x929fx16;if(_0x929fx1e>= _0x929fx1c){_0x929fx1e= _0x929fx1c;_0x929fx16= 200}else {_0x929fx16= 206};_0x929fx15[_0x35c3[29]](_0x929fx16);logger[_0x35c3[24]](_0x35c3[22],_0x929fx17,_0x929fx16,_0x35c3[36]);logger[_0x35c3[26]](_0x35c3[25],_0x929fx17,_0x929fx16,_0x35c3[30],JSON[_0x35c3[31]](_0x929fx18));return _0x929fx15[_0x35c3[40]](_0x35c3[37],_0x929fx1d+ _0x35c3[38]+ _0x929fx1e+ _0x35c3[39]+ _0x929fx1c)[_0x35c3[32]](_0x929fx18)};return null}}function patchUpdates(_0x929fx20){return function(_0x929fx18){try{jsonpatch[_0x35c3[41]](_0x929fx18,_0x929fx20,true)}catch(err){return BPromise[_0x35c3[42]](err)};return _0x929fx18[_0x35c3[43]]()}}function saveUpdates(_0x929fx22,_0x929fx16,_0x929fx17){return function(_0x929fx18){if(_0x929fx18){return _0x929fx18[_0x35c3[46]](_0x929fx22)[_0x35c3[45]](function(_0x929fx23){logger[_0x35c3[24]](_0x35c3[22],_0x929fx17,_0x929fx16,_0x35c3[44]);logger[_0x35c3[26]](_0x35c3[25],_0x929fx17,_0x929fx16,_0x35c3[44],JSON[_0x35c3[31]](_0x929fx18));return _0x929fx23})};return null}}function removeEntity(_0x929fx15,_0x929fx16,_0x929fx17){return function(_0x929fx18){if(_0x929fx18){return _0x929fx18[_0x35c3[48]]()[_0x35c3[45]](function(){logger[_0x35c3[24]](_0x35c3[22],_0x929fx17,_0x929fx16,_0x35c3[47]);logger[_0x35c3[26]](_0x35c3[25],_0x929fx17,_0x929fx16,_0x35c3[47],JSON[_0x35c3[31]](_0x929fx18));_0x929fx15[_0x35c3[29]](204)[_0x35c3[28]]()})}}}function handleEntityNotFound(_0x929fx15,_0x929fx16,_0x929fx17){return function(_0x929fx18){if(!_0x929fx18){logger[_0x35c3[50]](_0x35c3[22],_0x929fx17,404,_0x35c3[49]);_0x929fx15[_0x35c3[29]](404)[_0x35c3[28]]();return null};return _0x929fx18}}function handleError(_0x929fx15,_0x929fx16,_0x929fx17){_0x929fx16= _0x929fx16|| 500;return function(_0x929fx27){logger[_0x35c3[50]](_0x35c3[22],_0x929fx17,_0x929fx16,JSON[_0x35c3[31]](_0x929fx27));delete _0x929fx27[_0x35c3[51]];_0x929fx15[_0x35c3[29]](_0x929fx16)[_0x35c3[52]](_0x929fx27)}}exports[_0x35c3[53]]= function(_0x929fx28,_0x929fx15){var _0x929fx1b={},_0x929fx29={};_0x929fx29[_0x35c3[54]]= _[_0x35c3[57]](db[_0x35c3[56]][_0x35c3[55]]);_0x929fx29[_0x35c3[58]]= _[_0x35c3[57]](_0x929fx28[_0x35c3[58]]);_0x929fx29[_0x35c3[59]]= _[_0x35c3[60]](_0x929fx29[_0x35c3[54]],_0x929fx29[_0x35c3[58]]);_0x929fx1b[_0x35c3[61]]= _[_0x35c3[60]](_0x929fx29[_0x35c3[54]],qs[_0x35c3[62]](_0x929fx28[_0x35c3[58]][_0x35c3[62]]));_0x929fx1b[_0x35c3[61]]= (_0x929fx1b[_0x35c3[61]][_0x35c3[63]])?_0x929fx1b[_0x35c3[61]]:_0x929fx29[_0x35c3[54]];if(!_0x929fx28[_0x35c3[58]][_0x35c3[65]](_0x35c3[64])){_0x929fx1b[_0x35c3[35]]= qs[_0x35c3[35]](_0x929fx28[_0x35c3[58]][_0x35c3[35]]);_0x929fx1b[_0x35c3[34]]= qs[_0x35c3[34]](_0x929fx28[_0x35c3[58]][_0x35c3[34]])};_0x929fx1b[_0x35c3[66]]= qs[_0x35c3[67]](_0x929fx28[_0x35c3[58]][_0x35c3[67]]);_0x929fx1b[_0x35c3[68]]= qs[_0x35c3[59]](_[_0x35c3[69]](_0x929fx28[_0x35c3[58]],_0x929fx29[_0x35c3[59]]));if(_0x929fx28[_0x35c3[58]][_0x35c3[70]]){_0x929fx1b[_0x35c3[68]]= _[_0x35c3[73]](_0x929fx1b[_0x35c3[68]],{$or:_[_0x35c3[72]](_0x929fx1b[_0x35c3[61]],function(_0x929fx2a){var _0x929fx2b={};_0x929fx2b[_0x929fx2a]= {$like:_0x35c3[71]+ _0x929fx28[_0x35c3[58]][_0x35c3[70]]+ _0x35c3[71]};return _0x929fx2b})})};_0x929fx1b= _[_0x35c3[73]]({},_0x929fx1b,_0x929fx28[_0x35c3[74]]);return db[_0x35c3[56]][_0x35c3[76]](_0x929fx1b)[_0x35c3[45]](respondWithFilteredResult(_0x929fx15,_0x929fx1b,_0x35c3[53]))[_0x35c3[75]](handleError(_0x929fx15,null,_0x35c3[53]))};exports[_0x35c3[77]]= function(_0x929fx28,_0x929fx15){var _0x929fx1b={raw:true,where:{id:_0x929fx28[_0x35c3[79]][_0x35c3[78]]}},_0x929fx29={};_0x929fx29[_0x35c3[54]]= _[_0x35c3[57]](db[_0x35c3[56]][_0x35c3[55]]);_0x929fx29[_0x35c3[58]]= _[_0x35c3[57]](_0x929fx28[_0x35c3[58]]);_0x929fx29[_0x35c3[59]]= _[_0x35c3[60]](_0x929fx29[_0x35c3[54]],_0x929fx29[_0x35c3[58]]);_0x929fx1b[_0x35c3[61]]= _[_0x35c3[60]](_0x929fx29[_0x35c3[54]],qs[_0x35c3[62]](_0x929fx28[_0x35c3[58]][_0x35c3[62]]));_0x929fx1b[_0x35c3[61]]= (_0x929fx1b[_0x35c3[61]][_0x35c3[63]])?_0x929fx1b[_0x35c3[61]]:_0x929fx29[_0x35c3[54]];_0x929fx1b= _[_0x35c3[73]]({},_0x929fx1b,_0x929fx28[_0x35c3[74]]);return db[_0x35c3[56]][_0x35c3[80]](_0x929fx1b)[_0x35c3[45]](handleEntityNotFound(_0x929fx15,null,_0x35c3[77]))[_0x35c3[45]](respondWithResult(_0x929fx15,null,_0x35c3[77]))[_0x35c3[75]](handleError(_0x929fx15,null,_0x35c3[77]))};exports[_0x35c3[81]]= function(_0x929fx28,_0x929fx15){return db[_0x35c3[56]][_0x35c3[81]](_0x929fx28[_0x35c3[82]],{})[_0x35c3[45]](respondWithResult(_0x929fx15,201,_0x35c3[81]))[_0x35c3[75]](handleError(_0x929fx15,null,_0x35c3[81]))};exports[_0x35c3[46]]= function(_0x929fx28,_0x929fx15){if(_0x929fx28[_0x35c3[82]][_0x35c3[78]]){delete _0x929fx28[_0x35c3[82]][_0x35c3[78]]};return db[_0x35c3[56]][_0x35c3[80]]({where:{id:_0x929fx28[_0x35c3[79]][_0x35c3[78]]}})[_0x35c3[45]](handleEntityNotFound(_0x929fx15,null,_0x35c3[46]))[_0x35c3[45]](saveUpdates(_0x929fx28[_0x35c3[82]],null,_0x35c3[46]))[_0x35c3[45]](respondWithResult(_0x929fx15,null,_0x35c3[46]))[_0x35c3[75]](handleError(_0x929fx15,null,_0x35c3[46]))};exports[_0x35c3[48]]= function(_0x929fx28,_0x929fx15){return db[_0x35c3[56]][_0x35c3[80]]({where:{id:_0x929fx28[_0x35c3[79]][_0x35c3[78]]}})[_0x35c3[45]](handleEntityNotFound(_0x929fx15,null,_0x35c3[48]))[_0x35c3[45]](removeEntity(_0x929fx15,null,_0x35c3[48]))[_0x35c3[75]](handleError(_0x929fx15,null,_0x35c3[48]))};exports[_0x35c3[83]]= function(_0x929fx28,_0x929fx15){return db[_0x35c3[56]][_0x35c3[83]]()[_0x35c3[45]](respondWithResult(_0x929fx15,null,_0x35c3[83]))[_0x35c3[75]](handleError(_0x929fx15,null,_0x35c3[83]))}
\ No newline at end of file
+var _0xb9bc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xb9bc[0];var jsonpatch=require(_0xb9bc[1]);var rp=require(_0xb9bc[2]);var moment=require(_0xb9bc[3]);var BPromise=require(_0xb9bc[4]);var util=require(_0xb9bc[5]);var path=require(_0xb9bc[6]);var sox=require(_0xb9bc[7]);var ejs=require(_0xb9bc[8]);var fs=require(_0xb9bc[9]);var _=require(_0xb9bc[10]);var squel=require(_0xb9bc[11]);var crypto=require(_0xb9bc[12]);var jsforce=require(_0xb9bc[13]);var toCsv=require(_0xb9bc[14]);var qs=require(_0xb9bc[15]);var logger=require(_0xb9bc[17])(_0xb9bc[16]);var utils=require(_0xb9bc[18]);var config=require(_0xb9bc[19]);var db=require(_0xb9bc[21])[_0xb9bc[20]];function respondWithStatusCode(_0x8120x15,_0x8120x16,_0x8120x17){_0x8120x16= _0x8120x16|| 204;return function(_0x8120x18){if(_0x8120x18){logger[_0xb9bc[24]](_0xb9bc[22],_0x8120x17,_0x8120x16,_0xb9bc[23]);logger[_0xb9bc[26]](_0xb9bc[25],_0x8120x17,_0x8120x16,_0xb9bc[23]);return _0x8120x15[_0xb9bc[27]](_0x8120x16)};return _0x8120x15[_0xb9bc[29]](304)[_0xb9bc[28]]()}}function respondWithResult(_0x8120x15,_0x8120x16,_0x8120x17){_0x8120x16= _0x8120x16|| 200;return function(_0x8120x18){if(_0x8120x18){logger[_0xb9bc[24]](_0xb9bc[22],_0x8120x17,_0x8120x16,_0xb9bc[30]);logger[_0xb9bc[26]](_0xb9bc[25],_0x8120x17,_0x8120x16,_0xb9bc[30],JSON[_0xb9bc[31]](_0x8120x18));return _0x8120x15[_0xb9bc[29]](_0x8120x16)[_0xb9bc[32]](_0x8120x18)};return _0x8120x15[_0xb9bc[29]](304)[_0xb9bc[28]]()}}function respondWithFilteredResult(_0x8120x15,_0x8120x1b,_0x8120x17){return function(_0x8120x18){if(_0x8120x18){var _0x8120x1c=_0x8120x18[_0xb9bc[33]],_0x8120x1d=_0x8120x1b[_0xb9bc[34]],_0x8120x1e=_0x8120x1b[_0xb9bc[34]]+ _0x8120x1b[_0xb9bc[35]],_0x8120x16;if(_0x8120x1e>= _0x8120x1c){_0x8120x1e= _0x8120x1c;_0x8120x16= 200}else {_0x8120x16= 206};_0x8120x15[_0xb9bc[29]](_0x8120x16);logger[_0xb9bc[24]](_0xb9bc[22],_0x8120x17,_0x8120x16,_0xb9bc[36]);logger[_0xb9bc[26]](_0xb9bc[25],_0x8120x17,_0x8120x16,_0xb9bc[30],JSON[_0xb9bc[31]](_0x8120x18));return _0x8120x15[_0xb9bc[40]](_0xb9bc[37],_0x8120x1d+ _0xb9bc[38]+ _0x8120x1e+ _0xb9bc[39]+ _0x8120x1c)[_0xb9bc[32]](_0x8120x18)};return null}}function patchUpdates(_0x8120x20){return function(_0x8120x18){try{jsonpatch[_0xb9bc[41]](_0x8120x18,_0x8120x20,true)}catch(err){return BPromise[_0xb9bc[42]](err)};return _0x8120x18[_0xb9bc[43]]()}}function saveUpdates(_0x8120x22,_0x8120x16,_0x8120x17){return function(_0x8120x18){if(_0x8120x18){return _0x8120x18[_0xb9bc[46]](_0x8120x22)[_0xb9bc[45]](function(_0x8120x23){logger[_0xb9bc[24]](_0xb9bc[22],_0x8120x17,_0x8120x16,_0xb9bc[44]);logger[_0xb9bc[26]](_0xb9bc[25],_0x8120x17,_0x8120x16,_0xb9bc[44],JSON[_0xb9bc[31]](_0x8120x18));return _0x8120x23})};return null}}function removeEntity(_0x8120x15,_0x8120x16,_0x8120x17){return function(_0x8120x18){if(_0x8120x18){return _0x8120x18[_0xb9bc[48]]()[_0xb9bc[45]](function(){logger[_0xb9bc[24]](_0xb9bc[22],_0x8120x17,_0x8120x16,_0xb9bc[47]);logger[_0xb9bc[26]](_0xb9bc[25],_0x8120x17,_0x8120x16,_0xb9bc[47],JSON[_0xb9bc[31]](_0x8120x18));_0x8120x15[_0xb9bc[29]](204)[_0xb9bc[28]]()})}}}function handleEntityNotFound(_0x8120x15,_0x8120x16,_0x8120x17){return function(_0x8120x18){if(!_0x8120x18){logger[_0xb9bc[50]](_0xb9bc[22],_0x8120x17,404,_0xb9bc[49]);_0x8120x15[_0xb9bc[29]](404)[_0xb9bc[28]]();return null};return _0x8120x18}}function handleError(_0x8120x15,_0x8120x16,_0x8120x17){_0x8120x16= _0x8120x16|| 500;return function(_0x8120x27){logger[_0xb9bc[50]](_0xb9bc[22],_0x8120x17,_0x8120x16,JSON[_0xb9bc[31]](_0x8120x27));delete _0x8120x27[_0xb9bc[51]];_0x8120x15[_0xb9bc[29]](_0x8120x16)[_0xb9bc[52]](_0x8120x27)}}exports[_0xb9bc[53]]= function(_0x8120x28,_0x8120x15){var _0x8120x1b={},_0x8120x29={};_0x8120x29[_0xb9bc[54]]= _[_0xb9bc[57]](db[_0xb9bc[56]][_0xb9bc[55]]);_0x8120x29[_0xb9bc[58]]= _[_0xb9bc[57]](_0x8120x28[_0xb9bc[58]]);_0x8120x29[_0xb9bc[59]]= _[_0xb9bc[60]](_0x8120x29[_0xb9bc[54]],_0x8120x29[_0xb9bc[58]]);_0x8120x1b[_0xb9bc[61]]= _[_0xb9bc[60]](_0x8120x29[_0xb9bc[54]],qs[_0xb9bc[62]](_0x8120x28[_0xb9bc[58]][_0xb9bc[62]]));_0x8120x1b[_0xb9bc[61]]= (_0x8120x1b[_0xb9bc[61]][_0xb9bc[63]])?_0x8120x1b[_0xb9bc[61]]:_0x8120x29[_0xb9bc[54]];if(!_0x8120x28[_0xb9bc[58]][_0xb9bc[65]](_0xb9bc[64])){_0x8120x1b[_0xb9bc[35]]= qs[_0xb9bc[35]](_0x8120x28[_0xb9bc[58]][_0xb9bc[35]]);_0x8120x1b[_0xb9bc[34]]= qs[_0xb9bc[34]](_0x8120x28[_0xb9bc[58]][_0xb9bc[34]])};_0x8120x1b[_0xb9bc[66]]= qs[_0xb9bc[67]](_0x8120x28[_0xb9bc[58]][_0xb9bc[67]]);_0x8120x1b[_0xb9bc[68]]= qs[_0xb9bc[59]](_[_0xb9bc[69]](_0x8120x28[_0xb9bc[58]],_0x8120x29[_0xb9bc[59]]));if(_0x8120x28[_0xb9bc[58]][_0xb9bc[70]]){_0x8120x1b[_0xb9bc[68]]= _[_0xb9bc[73]](_0x8120x1b[_0xb9bc[68]],{$or:_[_0xb9bc[72]](_0x8120x1b[_0xb9bc[61]],function(_0x8120x2a){var _0x8120x2b={};_0x8120x2b[_0x8120x2a]= {$like:_0xb9bc[71]+ _0x8120x28[_0xb9bc[58]][_0xb9bc[70]]+ _0xb9bc[71]};return _0x8120x2b})})};_0x8120x1b= _[_0xb9bc[73]]({},_0x8120x1b,_0x8120x28[_0xb9bc[74]]);return db[_0xb9bc[56]][_0xb9bc[76]](_0x8120x1b)[_0xb9bc[45]](respondWithFilteredResult(_0x8120x15,_0x8120x1b,_0xb9bc[53]))[_0xb9bc[75]](handleError(_0x8120x15,null,_0xb9bc[53]))};exports[_0xb9bc[77]]= function(_0x8120x28,_0x8120x15){var _0x8120x1b={raw:true,where:{id:_0x8120x28[_0xb9bc[79]][_0xb9bc[78]]}},_0x8120x29={};_0x8120x29[_0xb9bc[54]]= _[_0xb9bc[57]](db[_0xb9bc[56]][_0xb9bc[55]]);_0x8120x29[_0xb9bc[58]]= _[_0xb9bc[57]](_0x8120x28[_0xb9bc[58]]);_0x8120x29[_0xb9bc[59]]= _[_0xb9bc[60]](_0x8120x29[_0xb9bc[54]],_0x8120x29[_0xb9bc[58]]);_0x8120x1b[_0xb9bc[61]]= _[_0xb9bc[60]](_0x8120x29[_0xb9bc[54]],qs[_0xb9bc[62]](_0x8120x28[_0xb9bc[58]][_0xb9bc[62]]));_0x8120x1b[_0xb9bc[61]]= (_0x8120x1b[_0xb9bc[61]][_0xb9bc[63]])?_0x8120x1b[_0xb9bc[61]]:_0x8120x29[_0xb9bc[54]];_0x8120x1b= _[_0xb9bc[73]]({},_0x8120x1b,_0x8120x28[_0xb9bc[74]]);return db[_0xb9bc[56]][_0xb9bc[80]](_0x8120x1b)[_0xb9bc[45]](handleEntityNotFound(_0x8120x15,null,_0xb9bc[77]))[_0xb9bc[45]](respondWithResult(_0x8120x15,null,_0xb9bc[77]))[_0xb9bc[75]](handleError(_0x8120x15,null,_0xb9bc[77]))};exports[_0xb9bc[81]]= function(_0x8120x28,_0x8120x15){return db[_0xb9bc[56]][_0xb9bc[81]](_0x8120x28[_0xb9bc[82]],{})[_0xb9bc[45]](respondWithResult(_0x8120x15,201,_0xb9bc[81]))[_0xb9bc[75]](handleError(_0x8120x15,null,_0xb9bc[81]))};exports[_0xb9bc[46]]= function(_0x8120x28,_0x8120x15){if(_0x8120x28[_0xb9bc[82]][_0xb9bc[78]]){delete _0x8120x28[_0xb9bc[82]][_0xb9bc[78]]};return db[_0xb9bc[56]][_0xb9bc[80]]({where:{id:_0x8120x28[_0xb9bc[79]][_0xb9bc[78]]}})[_0xb9bc[45]](handleEntityNotFound(_0x8120x15,null,_0xb9bc[46]))[_0xb9bc[45]](saveUpdates(_0x8120x28[_0xb9bc[82]],null,_0xb9bc[46]))[_0xb9bc[45]](respondWithResult(_0x8120x15,null,_0xb9bc[46]))[_0xb9bc[75]](handleError(_0x8120x15,null,_0xb9bc[46]))};exports[_0xb9bc[48]]= function(_0x8120x28,_0x8120x15){return db[_0xb9bc[56]][_0xb9bc[80]]({where:{id:_0x8120x28[_0xb9bc[79]][_0xb9bc[78]]}})[_0xb9bc[45]](handleEntityNotFound(_0x8120x15,null,_0xb9bc[48]))[_0xb9bc[45]](removeEntity(_0x8120x15,null,_0xb9bc[48]))[_0xb9bc[75]](handleError(_0x8120x15,null,_0xb9bc[48]))};exports[_0xb9bc[83]]= function(_0x8120x28,_0x8120x15){return db[_0xb9bc[56]][_0xb9bc[83]]()[_0xb9bc[45]](respondWithResult(_0x8120x15,null,_0xb9bc[83]))[_0xb9bc[75]](handleError(_0x8120x15,null,_0xb9bc[83]))}
\ No newline at end of file
index f148ec4..2fdc841 100644 (file)
@@ -1 +1 @@
-var _0x1fab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x73\x71\x75\x61\x72\x65\x5F\x64\x65\x74\x61\x69\x6C\x73","\x64\x65\x66\x69\x6E\x65"];_0x1fab[0];var _=require(_0x1fab[1]);var util=require(_0x1fab[2]);var logger=require(_0x1fab[4])(_0x1fab[3]);var attributes=require(_0x1fab[5]);module[_0x1fab[6]]= function(_0x809ex5,_0x809ex6){return _0x809ex5[_0x1fab[9]](_0x1fab[7],attributes,{tableName:_0x1fab[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x2b6d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x73\x71\x75\x61\x72\x65\x5F\x64\x65\x74\x61\x69\x6C\x73","\x64\x65\x66\x69\x6E\x65"];_0x2b6d[0];var _=require(_0x2b6d[1]);var util=require(_0x2b6d[2]);var logger=require(_0x2b6d[4])(_0x2b6d[3]);var attributes=require(_0x2b6d[5]);module[_0x2b6d[6]]= function(_0xf2dfx5,_0xf2dfx6){return _0xf2dfx5[_0x2b6d[9]](_0x2b6d[7],attributes,{tableName:_0x2b6d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 989ab3b..633efb5 100644 (file)
@@ -1 +1 @@
-var _0x3b94=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74"];_0x3b94[0];var _=require(_0x3b94[1]);var util=require(_0x3b94[2]);var moment=require(_0x3b94[3]);var BPromise=require(_0x3b94[4]);var db=require(_0x3b94[6])[_0x3b94[5]];var utils=require(_0x3b94[7]);var logger=require(_0x3b94[9])(_0x3b94[8]);var jayson=require(_0x3b94[10]);var client=jayson[_0x3b94[12]][_0x3b94[11]]({port:9002});function respondWithRpcPromise(_0xb63fxb,_0xb63fxc,_0xb63fxd){return  new BPromise(function(_0xb63fxe,_0xb63fxf){return client[_0x3b94[25]](_0xb63fxb,_0xb63fxd)[_0x3b94[24]](function(_0xb63fx11){logger[_0x3b94[17]](_0x3b94[13],_0xb63fxc,_0x3b94[16]);logger[_0x3b94[20]](_0x3b94[18],_0xb63fxc,_0x3b94[16],JSON[_0x3b94[19]](_0xb63fx11));if(_0xb63fx11[_0x3b94[14]]){if(_0xb63fx11[_0x3b94[14]][_0x3b94[21]]=== 500){logger[_0x3b94[14]](_0x3b94[13],_0xb63fxc,_0xb63fx11[_0x3b94[14]][_0x3b94[22]]);return _0xb63fxf(_0xb63fx11[_0x3b94[14]][_0x3b94[22]])};logger[_0x3b94[14]](_0x3b94[13],_0xb63fxc,_0xb63fx11[_0x3b94[14]][_0x3b94[22]]);return _0xb63fxe(_0xb63fx11[_0x3b94[14]][_0x3b94[22]])}else {logger[_0x3b94[17]](_0x3b94[13],_0xb63fxc,_0x3b94[16]);_0xb63fxe(_0xb63fx11[_0x3b94[23]][_0x3b94[22]])}})[_0x3b94[15]](function(_0xb63fx10){logger[_0x3b94[14]](_0x3b94[13],_0xb63fxc,_0xb63fx10);_0xb63fxf(_0xb63fx10)})})}exports[_0x3b94[26]]= function(_0xb63fxd){var _0xb63fx12=this;return  new Promise(function(_0xb63fxe,_0xb63fxf){return db[_0x3b94[31]][_0x3b94[30]](_0xb63fxd[_0x3b94[27]],{raw:_0xb63fxd[_0x3b94[28]]?(_0xb63fxd[_0x3b94[28]][_0x3b94[29]]=== undefined)?true:false:true})[_0x3b94[24]](function(_0xb63fx11){logger[_0x3b94[17]](_0x3b94[26],_0xb63fxd);logger[_0x3b94[20]](_0x3b94[26],_0xb63fxd,JSON[_0x3b94[19]](_0xb63fx11));_0xb63fxe(_0xb63fx11)})[_0x3b94[15]](function(_0xb63fx10){logger[_0x3b94[14]](_0x3b94[26],_0xb63fx10[_0x3b94[22]],_0xb63fxd);_0xb63fxf(_0xb63fx12[_0x3b94[14]](500,_0xb63fx10[_0x3b94[22]]))})})}
\ No newline at end of file
+var _0xbd14=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74"];_0xbd14[0];var _=require(_0xbd14[1]);var util=require(_0xbd14[2]);var moment=require(_0xbd14[3]);var BPromise=require(_0xbd14[4]);var db=require(_0xbd14[6])[_0xbd14[5]];var utils=require(_0xbd14[7]);var logger=require(_0xbd14[9])(_0xbd14[8]);var jayson=require(_0xbd14[10]);var client=jayson[_0xbd14[12]][_0xbd14[11]]({port:9002});function respondWithRpcPromise(_0x19b8xb,_0x19b8xc,_0x19b8xd){return  new BPromise(function(_0x19b8xe,_0x19b8xf){return client[_0xbd14[25]](_0x19b8xb,_0x19b8xd)[_0xbd14[24]](function(_0x19b8x11){logger[_0xbd14[17]](_0xbd14[13],_0x19b8xc,_0xbd14[16]);logger[_0xbd14[20]](_0xbd14[18],_0x19b8xc,_0xbd14[16],JSON[_0xbd14[19]](_0x19b8x11));if(_0x19b8x11[_0xbd14[14]]){if(_0x19b8x11[_0xbd14[14]][_0xbd14[21]]=== 500){logger[_0xbd14[14]](_0xbd14[13],_0x19b8xc,_0x19b8x11[_0xbd14[14]][_0xbd14[22]]);return _0x19b8xf(_0x19b8x11[_0xbd14[14]][_0xbd14[22]])};logger[_0xbd14[14]](_0xbd14[13],_0x19b8xc,_0x19b8x11[_0xbd14[14]][_0xbd14[22]]);return _0x19b8xe(_0x19b8x11[_0xbd14[14]][_0xbd14[22]])}else {logger[_0xbd14[17]](_0xbd14[13],_0x19b8xc,_0xbd14[16]);_0x19b8xe(_0x19b8x11[_0xbd14[23]][_0xbd14[22]])}})[_0xbd14[15]](function(_0x19b8x10){logger[_0xbd14[14]](_0xbd14[13],_0x19b8xc,_0x19b8x10);_0x19b8xf(_0x19b8x10)})})}exports[_0xbd14[26]]= function(_0x19b8xd){var _0x19b8x12=this;return  new Promise(function(_0x19b8xe,_0x19b8xf){return db[_0xbd14[31]][_0xbd14[30]](_0x19b8xd[_0xbd14[27]],{raw:_0x19b8xd[_0xbd14[28]]?(_0x19b8xd[_0xbd14[28]][_0xbd14[29]]=== undefined)?true:false:true})[_0xbd14[24]](function(_0x19b8x11){logger[_0xbd14[17]](_0xbd14[26],_0x19b8xd);logger[_0xbd14[20]](_0xbd14[26],_0x19b8xd,JSON[_0xbd14[19]](_0x19b8x11));_0x19b8xe(_0x19b8x11)})[_0xbd14[15]](function(_0x19b8x10){logger[_0xbd14[14]](_0xbd14[26],_0x19b8x10[_0xbd14[22]],_0x19b8xd);_0x19b8xf(_0x19b8x12[_0xbd14[14]](500,_0x19b8x10[_0xbd14[22]]))})})}
\ No newline at end of file
index 724c494..bd3fb8e 100644 (file)
@@ -1 +1 @@
-var _0x9115=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x73\x79\x73\x74\x65\x6D\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x9115[0];var express=require(_0x9115[1]);var router=express.Router();var auth=require(_0x9115[2]);var controller=require(_0x9115[3]);router[_0x9115[6]](_0x9115[4],controller[_0x9115[5]]);module[_0x9115[7]]= router
\ No newline at end of file
+var _0x3f49=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x73\x79\x73\x74\x65\x6D\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x3f49[0];var express=require(_0x3f49[1]);var router=express.Router();var auth=require(_0x3f49[2]);var controller=require(_0x3f49[3]);router[_0x3f49[6]](_0x3f49[4],controller[_0x3f49[5]]);module[_0x3f49[7]]= router
\ No newline at end of file
index 0cfb103..41df129 100644 (file)
@@ -1 +1 @@
-var _0x42fd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x79\x73\x74\x65\x6D\x69\x6E\x66\x6F\x72\x6D\x61\x74\x69\x6F\x6E","\x69\x6E\x64\x65\x78","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x67\x65\x74\x41\x6C\x6C\x44\x61\x74\x61"];_0x42fd[0];var info=require(_0x42fd[1]);exports[_0x42fd[2]]= function(_0x6347x2,_0x6347x3){return info[_0x42fd[7]]()[_0x42fd[6]](function(_0x6347x5){return _0x6347x3[_0x42fd[4]](200)[_0x42fd[3]](_0x6347x5)})[_0x42fd[5]](function(_0x6347x4){return _0x6347x3[_0x42fd[4]](500)[_0x42fd[3]](_0x6347x4)})}
\ No newline at end of file
+var _0x7ca6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x79\x73\x74\x65\x6D\x69\x6E\x66\x6F\x72\x6D\x61\x74\x69\x6F\x6E","\x69\x6E\x64\x65\x78","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x67\x65\x74\x41\x6C\x6C\x44\x61\x74\x61"];_0x7ca6[0];var info=require(_0x7ca6[1]);exports[_0x7ca6[2]]= function(_0x1beax2,_0x1beax3){return info[_0x7ca6[7]]()[_0x7ca6[6]](function(_0x1beax5){return _0x1beax3[_0x7ca6[4]](200)[_0x7ca6[3]](_0x1beax5)})[_0x7ca6[5]](function(_0x1beax4){return _0x1beax3[_0x7ca6[4]](500)[_0x7ca6[3]](_0x1beax4)})}
\ No newline at end of file
index 6a00630..c1518a9 100644 (file)
@@ -1 +1 @@
-var _0x8472=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x61\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8472[0];var multer=require(_0x8472[1]);var util=require(_0x8472[2]);var path=require(_0x8472[3]);var express=require(_0x8472[4]);var router=express.Router();var auth=require(_0x8472[5]);var config=require(_0x8472[6]);var controller=require(_0x8472[7]);router[_0x8472[11]](_0x8472[8],auth[_0x8472[9]](),controller[_0x8472[10]]);router[_0x8472[11]](_0x8472[12],auth[_0x8472[9]](),controller[_0x8472[13]]);router[_0x8472[15]](_0x8472[8],auth[_0x8472[9]](),controller[_0x8472[14]]);router[_0x8472[17]](_0x8472[12],auth[_0x8472[9]](),controller[_0x8472[16]]);router[_0x8472[19]](_0x8472[12],auth[_0x8472[9]](),controller[_0x8472[18]]);module[_0x8472[20]]= router
\ No newline at end of file
+var _0x2420=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x61\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2420[0];var multer=require(_0x2420[1]);var util=require(_0x2420[2]);var path=require(_0x2420[3]);var express=require(_0x2420[4]);var router=express.Router();var auth=require(_0x2420[5]);var config=require(_0x2420[6]);var controller=require(_0x2420[7]);router[_0x2420[11]](_0x2420[8],auth[_0x2420[9]](),controller[_0x2420[10]]);router[_0x2420[11]](_0x2420[12],auth[_0x2420[9]](),controller[_0x2420[13]]);router[_0x2420[15]](_0x2420[8],auth[_0x2420[9]](),controller[_0x2420[14]]);router[_0x2420[17]](_0x2420[12],auth[_0x2420[9]](),controller[_0x2420[16]]);router[_0x2420[19]](_0x2420[12],auth[_0x2420[9]](),controller[_0x2420[18]]);module[_0x2420[20]]= router
\ No newline at end of file
index 1dfe7fb..2a3fd0c 100644 (file)
@@ -1 +1 @@
-var _0xcd4f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0xcd4f[0];var Sequelize=require(_0xcd4f[1]);module[_0xcd4f[2]]= {name:{type:Sequelize[_0xcd4f[3]],unique:_0xcd4f[4],allowNull:false,validate:{is:/[A-Za-z0-9._\\+*!-]+/,notEmpty:true}},description:{type:Sequelize[_0xcd4f[3]]}}
\ No newline at end of file
+var _0x585a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x585a[0];var Sequelize=require(_0x585a[1]);module[_0x585a[2]]= {name:{type:Sequelize[_0x585a[3]],unique:_0x585a[4],allowNull:false,validate:{is:/[A-Za-z0-9._\\+*!-]+/,notEmpty:true}},description:{type:Sequelize[_0x585a[3]]}}
\ No newline at end of file
index b3ba662..b878baf 100644 (file)
@@ -1 +1 @@
-var _0xd32d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x54\x61\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x61\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x61\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xd32d[0];var jsonpatch=require(_0xd32d[1]);var rp=require(_0xd32d[2]);var moment=require(_0xd32d[3]);var BPromise=require(_0xd32d[4]);var util=require(_0xd32d[5]);var path=require(_0xd32d[6]);var sox=require(_0xd32d[7]);var ejs=require(_0xd32d[8]);var fs=require(_0xd32d[9]);var _=require(_0xd32d[10]);var squel=require(_0xd32d[11]);var crypto=require(_0xd32d[12]);var jsforce=require(_0xd32d[13]);var toCsv=require(_0xd32d[14]);var qs=require(_0xd32d[15]);var logger=require(_0xd32d[17])(_0xd32d[16]);var utils=require(_0xd32d[18]);var config=require(_0xd32d[19]);var db=require(_0xd32d[21])[_0xd32d[20]];function respondWithStatusCode(_0xa933x15,_0xa933x16,_0xa933x17){_0xa933x16= _0xa933x16|| 204;return function(_0xa933x18){if(_0xa933x18){logger[_0xd32d[24]](_0xd32d[22],_0xa933x17,_0xa933x16,_0xd32d[23]);logger[_0xd32d[26]](_0xd32d[25],_0xa933x17,_0xa933x16,_0xd32d[23]);return _0xa933x15[_0xd32d[27]](_0xa933x16)};return _0xa933x15[_0xd32d[29]](304)[_0xd32d[28]]()}}function respondWithResult(_0xa933x15,_0xa933x16,_0xa933x17){_0xa933x16= _0xa933x16|| 200;return function(_0xa933x18){if(_0xa933x18){logger[_0xd32d[24]](_0xd32d[22],_0xa933x17,_0xa933x16,_0xd32d[30]);logger[_0xd32d[26]](_0xd32d[25],_0xa933x17,_0xa933x16,_0xd32d[30],JSON[_0xd32d[31]](_0xa933x18));return _0xa933x15[_0xd32d[29]](_0xa933x16)[_0xd32d[32]](_0xa933x18)};return _0xa933x15[_0xd32d[29]](304)[_0xd32d[28]]()}}function respondWithFilteredResult(_0xa933x15,_0xa933x1b,_0xa933x17){return function(_0xa933x18){if(_0xa933x18){var _0xa933x1c=_0xa933x18[_0xd32d[33]],_0xa933x1d=_0xa933x1b[_0xd32d[34]],_0xa933x1e=_0xa933x1b[_0xd32d[34]]+ _0xa933x1b[_0xd32d[35]],_0xa933x16;if(_0xa933x1e>= _0xa933x1c){_0xa933x1e= _0xa933x1c;_0xa933x16= 200}else {_0xa933x16= 206};_0xa933x15[_0xd32d[29]](_0xa933x16);logger[_0xd32d[24]](_0xd32d[22],_0xa933x17,_0xa933x16,_0xd32d[36]);logger[_0xd32d[26]](_0xd32d[25],_0xa933x17,_0xa933x16,_0xd32d[30],JSON[_0xd32d[31]](_0xa933x18));return _0xa933x15[_0xd32d[40]](_0xd32d[37],_0xa933x1d+ _0xd32d[38]+ _0xa933x1e+ _0xd32d[39]+ _0xa933x1c)[_0xd32d[32]](_0xa933x18)};return null}}function patchUpdates(_0xa933x20){return function(_0xa933x18){try{jsonpatch[_0xd32d[41]](_0xa933x18,_0xa933x20,true)}catch(err){return BPromise[_0xd32d[42]](err)};return _0xa933x18[_0xd32d[43]]()}}function saveUpdates(_0xa933x22,_0xa933x16,_0xa933x17){return function(_0xa933x18){if(_0xa933x18){return _0xa933x18[_0xd32d[46]](_0xa933x22)[_0xd32d[45]](function(_0xa933x23){logger[_0xd32d[24]](_0xd32d[22],_0xa933x17,_0xa933x16,_0xd32d[44]);logger[_0xd32d[26]](_0xd32d[25],_0xa933x17,_0xa933x16,_0xd32d[44],JSON[_0xd32d[31]](_0xa933x18));return _0xa933x23})};return null}}function removeEntity(_0xa933x15,_0xa933x16,_0xa933x17){return function(_0xa933x18){if(_0xa933x18){return _0xa933x18[_0xd32d[48]]()[_0xd32d[45]](function(){logger[_0xd32d[24]](_0xd32d[22],_0xa933x17,_0xa933x16,_0xd32d[47]);logger[_0xd32d[26]](_0xd32d[25],_0xa933x17,_0xa933x16,_0xd32d[47],JSON[_0xd32d[31]](_0xa933x18));_0xa933x15[_0xd32d[29]](204)[_0xd32d[28]]()})}}}function handleEntityNotFound(_0xa933x15,_0xa933x16,_0xa933x17){return function(_0xa933x18){if(!_0xa933x18){logger[_0xd32d[50]](_0xd32d[22],_0xa933x17,404,_0xd32d[49]);_0xa933x15[_0xd32d[29]](404)[_0xd32d[28]]();return null};return _0xa933x18}}function handleError(_0xa933x15,_0xa933x16,_0xa933x17){_0xa933x16= _0xa933x16|| 500;return function(_0xa933x27){logger[_0xd32d[50]](_0xd32d[22],_0xa933x17,_0xa933x16,JSON[_0xd32d[31]](_0xa933x27));delete _0xa933x27[_0xd32d[51]];_0xa933x15[_0xd32d[29]](_0xa933x16)[_0xd32d[52]](_0xa933x27)}}exports[_0xd32d[53]]= function(_0xa933x28,_0xa933x15){var _0xa933x1b={},_0xa933x29={};_0xa933x29[_0xd32d[54]]= _[_0xd32d[57]](db[_0xd32d[56]][_0xd32d[55]]);_0xa933x29[_0xd32d[58]]= _[_0xd32d[57]](_0xa933x28[_0xd32d[58]]);_0xa933x29[_0xd32d[59]]= _[_0xd32d[60]](_0xa933x29[_0xd32d[54]],_0xa933x29[_0xd32d[58]]);_0xa933x1b[_0xd32d[61]]= _[_0xd32d[60]](_0xa933x29[_0xd32d[54]],qs[_0xd32d[62]](_0xa933x28[_0xd32d[58]][_0xd32d[62]]));_0xa933x1b[_0xd32d[61]]= (_0xa933x1b[_0xd32d[61]][_0xd32d[63]])?_0xa933x1b[_0xd32d[61]]:_0xa933x29[_0xd32d[54]];if(!_0xa933x28[_0xd32d[58]][_0xd32d[65]](_0xd32d[64])){_0xa933x1b[_0xd32d[35]]= qs[_0xd32d[35]](_0xa933x28[_0xd32d[58]][_0xd32d[35]]);_0xa933x1b[_0xd32d[34]]= qs[_0xd32d[34]](_0xa933x28[_0xd32d[58]][_0xd32d[34]])};_0xa933x1b[_0xd32d[66]]= qs[_0xd32d[67]](_0xa933x28[_0xd32d[58]][_0xd32d[67]]);_0xa933x1b[_0xd32d[68]]= qs[_0xd32d[59]](_[_0xd32d[69]](_0xa933x28[_0xd32d[58]],_0xa933x29[_0xd32d[59]]));if(_0xa933x28[_0xd32d[58]][_0xd32d[70]]){_0xa933x1b[_0xd32d[68]]= _[_0xd32d[73]](_0xa933x1b[_0xd32d[68]],{$or:_[_0xd32d[72]](_0xa933x1b[_0xd32d[61]],function(_0xa933x2a){var _0xa933x2b={};_0xa933x2b[_0xa933x2a]= {$like:_0xd32d[71]+ _0xa933x28[_0xd32d[58]][_0xd32d[70]]+ _0xd32d[71]};return _0xa933x2b})})};_0xa933x1b= _[_0xd32d[73]]({},_0xa933x1b,_0xa933x28[_0xd32d[74]]);return db[_0xd32d[56]][_0xd32d[76]](_0xa933x1b)[_0xd32d[45]](respondWithFilteredResult(_0xa933x15,_0xa933x1b,_0xd32d[53]))[_0xd32d[75]](handleError(_0xa933x15,null,_0xd32d[53]))};exports[_0xd32d[77]]= function(_0xa933x28,_0xa933x15){var _0xa933x1b={raw:true,where:{id:_0xa933x28[_0xd32d[79]][_0xd32d[78]]}},_0xa933x29={};_0xa933x29[_0xd32d[54]]= _[_0xd32d[57]](db[_0xd32d[56]][_0xd32d[55]]);_0xa933x29[_0xd32d[58]]= _[_0xd32d[57]](_0xa933x28[_0xd32d[58]]);_0xa933x29[_0xd32d[59]]= _[_0xd32d[60]](_0xa933x29[_0xd32d[54]],_0xa933x29[_0xd32d[58]]);_0xa933x1b[_0xd32d[61]]= _[_0xd32d[60]](_0xa933x29[_0xd32d[54]],qs[_0xd32d[62]](_0xa933x28[_0xd32d[58]][_0xd32d[62]]));_0xa933x1b[_0xd32d[61]]= (_0xa933x1b[_0xd32d[61]][_0xd32d[63]])?_0xa933x1b[_0xd32d[61]]:_0xa933x29[_0xd32d[54]];_0xa933x1b= _[_0xd32d[73]]({},_0xa933x1b,_0xa933x28[_0xd32d[74]]);return db[_0xd32d[56]][_0xd32d[80]](_0xa933x1b)[_0xd32d[45]](handleEntityNotFound(_0xa933x15,null,_0xd32d[77]))[_0xd32d[45]](respondWithResult(_0xa933x15,null,_0xd32d[77]))[_0xd32d[75]](handleError(_0xa933x15,null,_0xd32d[77]))};exports[_0xd32d[81]]= function(_0xa933x28,_0xa933x15){return db[_0xd32d[56]][_0xd32d[81]](_0xa933x28[_0xd32d[82]],{})[_0xd32d[45]](respondWithResult(_0xa933x15,201,_0xd32d[81]))[_0xd32d[75]](handleError(_0xa933x15,null,_0xd32d[81]))};exports[_0xd32d[46]]= function(_0xa933x28,_0xa933x15){if(_0xa933x28[_0xd32d[82]][_0xd32d[78]]){delete _0xa933x28[_0xd32d[82]][_0xd32d[78]]};return db[_0xd32d[56]][_0xd32d[80]]({where:{id:_0xa933x28[_0xd32d[79]][_0xd32d[78]]}})[_0xd32d[45]](handleEntityNotFound(_0xa933x15,null,_0xd32d[46]))[_0xd32d[45]](saveUpdates(_0xa933x28[_0xd32d[82]],null,_0xd32d[46]))[_0xd32d[45]](respondWithResult(_0xa933x15,null,_0xd32d[46]))[_0xd32d[75]](handleError(_0xa933x15,null,_0xd32d[46]))};exports[_0xd32d[48]]= function(_0xa933x28,_0xa933x15){return db[_0xd32d[56]][_0xd32d[80]]({where:{id:_0xa933x28[_0xd32d[79]][_0xd32d[78]]}})[_0xd32d[45]](handleEntityNotFound(_0xa933x15,null,_0xd32d[48]))[_0xd32d[45]](removeEntity(_0xa933x15,null,_0xd32d[48]))[_0xd32d[75]](handleError(_0xa933x15,null,_0xd32d[48]))}
\ No newline at end of file
+var _0xf6ae=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x54\x61\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x61\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x61\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xf6ae[0];var jsonpatch=require(_0xf6ae[1]);var rp=require(_0xf6ae[2]);var moment=require(_0xf6ae[3]);var BPromise=require(_0xf6ae[4]);var util=require(_0xf6ae[5]);var path=require(_0xf6ae[6]);var sox=require(_0xf6ae[7]);var ejs=require(_0xf6ae[8]);var fs=require(_0xf6ae[9]);var _=require(_0xf6ae[10]);var squel=require(_0xf6ae[11]);var crypto=require(_0xf6ae[12]);var jsforce=require(_0xf6ae[13]);var toCsv=require(_0xf6ae[14]);var qs=require(_0xf6ae[15]);var logger=require(_0xf6ae[17])(_0xf6ae[16]);var utils=require(_0xf6ae[18]);var config=require(_0xf6ae[19]);var db=require(_0xf6ae[21])[_0xf6ae[20]];function respondWithStatusCode(_0xa292x15,_0xa292x16,_0xa292x17){_0xa292x16= _0xa292x16|| 204;return function(_0xa292x18){if(_0xa292x18){logger[_0xf6ae[24]](_0xf6ae[22],_0xa292x17,_0xa292x16,_0xf6ae[23]);logger[_0xf6ae[26]](_0xf6ae[25],_0xa292x17,_0xa292x16,_0xf6ae[23]);return _0xa292x15[_0xf6ae[27]](_0xa292x16)};return _0xa292x15[_0xf6ae[29]](304)[_0xf6ae[28]]()}}function respondWithResult(_0xa292x15,_0xa292x16,_0xa292x17){_0xa292x16= _0xa292x16|| 200;return function(_0xa292x18){if(_0xa292x18){logger[_0xf6ae[24]](_0xf6ae[22],_0xa292x17,_0xa292x16,_0xf6ae[30]);logger[_0xf6ae[26]](_0xf6ae[25],_0xa292x17,_0xa292x16,_0xf6ae[30],JSON[_0xf6ae[31]](_0xa292x18));return _0xa292x15[_0xf6ae[29]](_0xa292x16)[_0xf6ae[32]](_0xa292x18)};return _0xa292x15[_0xf6ae[29]](304)[_0xf6ae[28]]()}}function respondWithFilteredResult(_0xa292x15,_0xa292x1b,_0xa292x17){return function(_0xa292x18){if(_0xa292x18){var _0xa292x1c=_0xa292x18[_0xf6ae[33]],_0xa292x1d=_0xa292x1b[_0xf6ae[34]],_0xa292x1e=_0xa292x1b[_0xf6ae[34]]+ _0xa292x1b[_0xf6ae[35]],_0xa292x16;if(_0xa292x1e>= _0xa292x1c){_0xa292x1e= _0xa292x1c;_0xa292x16= 200}else {_0xa292x16= 206};_0xa292x15[_0xf6ae[29]](_0xa292x16);logger[_0xf6ae[24]](_0xf6ae[22],_0xa292x17,_0xa292x16,_0xf6ae[36]);logger[_0xf6ae[26]](_0xf6ae[25],_0xa292x17,_0xa292x16,_0xf6ae[30],JSON[_0xf6ae[31]](_0xa292x18));return _0xa292x15[_0xf6ae[40]](_0xf6ae[37],_0xa292x1d+ _0xf6ae[38]+ _0xa292x1e+ _0xf6ae[39]+ _0xa292x1c)[_0xf6ae[32]](_0xa292x18)};return null}}function patchUpdates(_0xa292x20){return function(_0xa292x18){try{jsonpatch[_0xf6ae[41]](_0xa292x18,_0xa292x20,true)}catch(err){return BPromise[_0xf6ae[42]](err)};return _0xa292x18[_0xf6ae[43]]()}}function saveUpdates(_0xa292x22,_0xa292x16,_0xa292x17){return function(_0xa292x18){if(_0xa292x18){return _0xa292x18[_0xf6ae[46]](_0xa292x22)[_0xf6ae[45]](function(_0xa292x23){logger[_0xf6ae[24]](_0xf6ae[22],_0xa292x17,_0xa292x16,_0xf6ae[44]);logger[_0xf6ae[26]](_0xf6ae[25],_0xa292x17,_0xa292x16,_0xf6ae[44],JSON[_0xf6ae[31]](_0xa292x18));return _0xa292x23})};return null}}function removeEntity(_0xa292x15,_0xa292x16,_0xa292x17){return function(_0xa292x18){if(_0xa292x18){return _0xa292x18[_0xf6ae[48]]()[_0xf6ae[45]](function(){logger[_0xf6ae[24]](_0xf6ae[22],_0xa292x17,_0xa292x16,_0xf6ae[47]);logger[_0xf6ae[26]](_0xf6ae[25],_0xa292x17,_0xa292x16,_0xf6ae[47],JSON[_0xf6ae[31]](_0xa292x18));_0xa292x15[_0xf6ae[29]](204)[_0xf6ae[28]]()})}}}function handleEntityNotFound(_0xa292x15,_0xa292x16,_0xa292x17){return function(_0xa292x18){if(!_0xa292x18){logger[_0xf6ae[50]](_0xf6ae[22],_0xa292x17,404,_0xf6ae[49]);_0xa292x15[_0xf6ae[29]](404)[_0xf6ae[28]]();return null};return _0xa292x18}}function handleError(_0xa292x15,_0xa292x16,_0xa292x17){_0xa292x16= _0xa292x16|| 500;return function(_0xa292x27){logger[_0xf6ae[50]](_0xf6ae[22],_0xa292x17,_0xa292x16,JSON[_0xf6ae[31]](_0xa292x27));delete _0xa292x27[_0xf6ae[51]];_0xa292x15[_0xf6ae[29]](_0xa292x16)[_0xf6ae[52]](_0xa292x27)}}exports[_0xf6ae[53]]= function(_0xa292x28,_0xa292x15){var _0xa292x1b={},_0xa292x29={};_0xa292x29[_0xf6ae[54]]= _[_0xf6ae[57]](db[_0xf6ae[56]][_0xf6ae[55]]);_0xa292x29[_0xf6ae[58]]= _[_0xf6ae[57]](_0xa292x28[_0xf6ae[58]]);_0xa292x29[_0xf6ae[59]]= _[_0xf6ae[60]](_0xa292x29[_0xf6ae[54]],_0xa292x29[_0xf6ae[58]]);_0xa292x1b[_0xf6ae[61]]= _[_0xf6ae[60]](_0xa292x29[_0xf6ae[54]],qs[_0xf6ae[62]](_0xa292x28[_0xf6ae[58]][_0xf6ae[62]]));_0xa292x1b[_0xf6ae[61]]= (_0xa292x1b[_0xf6ae[61]][_0xf6ae[63]])?_0xa292x1b[_0xf6ae[61]]:_0xa292x29[_0xf6ae[54]];if(!_0xa292x28[_0xf6ae[58]][_0xf6ae[65]](_0xf6ae[64])){_0xa292x1b[_0xf6ae[35]]= qs[_0xf6ae[35]](_0xa292x28[_0xf6ae[58]][_0xf6ae[35]]);_0xa292x1b[_0xf6ae[34]]= qs[_0xf6ae[34]](_0xa292x28[_0xf6ae[58]][_0xf6ae[34]])};_0xa292x1b[_0xf6ae[66]]= qs[_0xf6ae[67]](_0xa292x28[_0xf6ae[58]][_0xf6ae[67]]);_0xa292x1b[_0xf6ae[68]]= qs[_0xf6ae[59]](_[_0xf6ae[69]](_0xa292x28[_0xf6ae[58]],_0xa292x29[_0xf6ae[59]]));if(_0xa292x28[_0xf6ae[58]][_0xf6ae[70]]){_0xa292x1b[_0xf6ae[68]]= _[_0xf6ae[73]](_0xa292x1b[_0xf6ae[68]],{$or:_[_0xf6ae[72]](_0xa292x1b[_0xf6ae[61]],function(_0xa292x2a){var _0xa292x2b={};_0xa292x2b[_0xa292x2a]= {$like:_0xf6ae[71]+ _0xa292x28[_0xf6ae[58]][_0xf6ae[70]]+ _0xf6ae[71]};return _0xa292x2b})})};_0xa292x1b= _[_0xf6ae[73]]({},_0xa292x1b,_0xa292x28[_0xf6ae[74]]);return db[_0xf6ae[56]][_0xf6ae[76]](_0xa292x1b)[_0xf6ae[45]](respondWithFilteredResult(_0xa292x15,_0xa292x1b,_0xf6ae[53]))[_0xf6ae[75]](handleError(_0xa292x15,null,_0xf6ae[53]))};exports[_0xf6ae[77]]= function(_0xa292x28,_0xa292x15){var _0xa292x1b={raw:true,where:{id:_0xa292x28[_0xf6ae[79]][_0xf6ae[78]]}},_0xa292x29={};_0xa292x29[_0xf6ae[54]]= _[_0xf6ae[57]](db[_0xf6ae[56]][_0xf6ae[55]]);_0xa292x29[_0xf6ae[58]]= _[_0xf6ae[57]](_0xa292x28[_0xf6ae[58]]);_0xa292x29[_0xf6ae[59]]= _[_0xf6ae[60]](_0xa292x29[_0xf6ae[54]],_0xa292x29[_0xf6ae[58]]);_0xa292x1b[_0xf6ae[61]]= _[_0xf6ae[60]](_0xa292x29[_0xf6ae[54]],qs[_0xf6ae[62]](_0xa292x28[_0xf6ae[58]][_0xf6ae[62]]));_0xa292x1b[_0xf6ae[61]]= (_0xa292x1b[_0xf6ae[61]][_0xf6ae[63]])?_0xa292x1b[_0xf6ae[61]]:_0xa292x29[_0xf6ae[54]];_0xa292x1b= _[_0xf6ae[73]]({},_0xa292x1b,_0xa292x28[_0xf6ae[74]]);return db[_0xf6ae[56]][_0xf6ae[80]](_0xa292x1b)[_0xf6ae[45]](handleEntityNotFound(_0xa292x15,null,_0xf6ae[77]))[_0xf6ae[45]](respondWithResult(_0xa292x15,null,_0xf6ae[77]))[_0xf6ae[75]](handleError(_0xa292x15,null,_0xf6ae[77]))};exports[_0xf6ae[81]]= function(_0xa292x28,_0xa292x15){return db[_0xf6ae[56]][_0xf6ae[81]](_0xa292x28[_0xf6ae[82]],{})[_0xf6ae[45]](respondWithResult(_0xa292x15,201,_0xf6ae[81]))[_0xf6ae[75]](handleError(_0xa292x15,null,_0xf6ae[81]))};exports[_0xf6ae[46]]= function(_0xa292x28,_0xa292x15){if(_0xa292x28[_0xf6ae[82]][_0xf6ae[78]]){delete _0xa292x28[_0xf6ae[82]][_0xf6ae[78]]};return db[_0xf6ae[56]][_0xf6ae[80]]({where:{id:_0xa292x28[_0xf6ae[79]][_0xf6ae[78]]}})[_0xf6ae[45]](handleEntityNotFound(_0xa292x15,null,_0xf6ae[46]))[_0xf6ae[45]](saveUpdates(_0xa292x28[_0xf6ae[82]],null,_0xf6ae[46]))[_0xf6ae[45]](respondWithResult(_0xa292x15,null,_0xf6ae[46]))[_0xf6ae[75]](handleError(_0xa292x15,null,_0xf6ae[46]))};exports[_0xf6ae[48]]= function(_0xa292x28,_0xa292x15){return db[_0xf6ae[56]][_0xf6ae[80]]({where:{id:_0xa292x28[_0xf6ae[79]][_0xf6ae[78]]}})[_0xf6ae[45]](handleEntityNotFound(_0xa292x15,null,_0xf6ae[48]))[_0xf6ae[45]](removeEntity(_0xa292x15,null,_0xf6ae[48]))[_0xf6ae[75]](handleError(_0xa292x15,null,_0xf6ae[48]))}
\ No newline at end of file
index 5524507..3883dc5 100644 (file)
@@ -1 +1 @@
-var _0x87ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x61\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x61\x67","\x74\x6F\x6F\x6C\x73\x5F\x74\x61\x67\x73","\x64\x65\x66\x69\x6E\x65"];_0x87ee[0];var _=require(_0x87ee[1]);var util=require(_0x87ee[2]);var logger=require(_0x87ee[4])(_0x87ee[3]);var attributes=require(_0x87ee[5]);module[_0x87ee[6]]= function(_0xdf73x5,_0xdf73x6){return _0xdf73x5[_0x87ee[9]](_0x87ee[7],attributes,{tableName:_0x87ee[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xd31c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x61\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x61\x67","\x74\x6F\x6F\x6C\x73\x5F\x74\x61\x67\x73","\x64\x65\x66\x69\x6E\x65"];_0xd31c[0];var _=require(_0xd31c[1]);var util=require(_0xd31c[2]);var logger=require(_0xd31c[4])(_0xd31c[3]);var attributes=require(_0xd31c[5]);module[_0xd31c[6]]= function(_0x7d49x5,_0x7d49x6){return _0x7d49x5[_0xd31c[9]](_0xd31c[7],attributes,{tableName:_0xd31c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 69f2f3f..05704a0 100644 (file)
@@ -1 +1 @@
-var _0xa9a0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x61\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x61\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xa9a0[0];var _=require(_0xa9a0[1]);var util=require(_0xa9a0[2]);var moment=require(_0xa9a0[3]);var BPromise=require(_0xa9a0[4]);var db=require(_0xa9a0[6])[_0xa9a0[5]];var utils=require(_0xa9a0[7]);var logger=require(_0xa9a0[9])(_0xa9a0[8]);var jayson=require(_0xa9a0[10]);var client=jayson[_0xa9a0[12]][_0xa9a0[11]]({port:9002});function respondWithRpcPromise(_0x2a8cxb,_0x2a8cxc,_0x2a8cxd){return  new BPromise(function(_0x2a8cxe,_0x2a8cxf){return client[_0xa9a0[25]](_0x2a8cxb,_0x2a8cxd)[_0xa9a0[24]](function(_0x2a8cx11){logger[_0xa9a0[17]](_0xa9a0[13],_0x2a8cxc,_0xa9a0[16]);logger[_0xa9a0[20]](_0xa9a0[18],_0x2a8cxc,_0xa9a0[16],JSON[_0xa9a0[19]](_0x2a8cx11));if(_0x2a8cx11[_0xa9a0[14]]){if(_0x2a8cx11[_0xa9a0[14]][_0xa9a0[21]]=== 500){logger[_0xa9a0[14]](_0xa9a0[13],_0x2a8cxc,_0x2a8cx11[_0xa9a0[14]][_0xa9a0[22]]);return _0x2a8cxf(_0x2a8cx11[_0xa9a0[14]][_0xa9a0[22]])};logger[_0xa9a0[14]](_0xa9a0[13],_0x2a8cxc,_0x2a8cx11[_0xa9a0[14]][_0xa9a0[22]]);return _0x2a8cxe(_0x2a8cx11[_0xa9a0[14]][_0xa9a0[22]])}else {logger[_0xa9a0[17]](_0xa9a0[13],_0x2a8cxc,_0xa9a0[16]);_0x2a8cxe(_0x2a8cx11[_0xa9a0[23]][_0xa9a0[22]])}})[_0xa9a0[15]](function(_0x2a8cx10){logger[_0xa9a0[14]](_0xa9a0[13],_0x2a8cxc,_0x2a8cx10);_0x2a8cxf(_0x2a8cx10)})})}
\ No newline at end of file
+var _0xfe6f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x61\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x61\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xfe6f[0];var _=require(_0xfe6f[1]);var util=require(_0xfe6f[2]);var moment=require(_0xfe6f[3]);var BPromise=require(_0xfe6f[4]);var db=require(_0xfe6f[6])[_0xfe6f[5]];var utils=require(_0xfe6f[7]);var logger=require(_0xfe6f[9])(_0xfe6f[8]);var jayson=require(_0xfe6f[10]);var client=jayson[_0xfe6f[12]][_0xfe6f[11]]({port:9002});function respondWithRpcPromise(_0x8368xb,_0x8368xc,_0x8368xd){return  new BPromise(function(_0x8368xe,_0x8368xf){return client[_0xfe6f[25]](_0x8368xb,_0x8368xd)[_0xfe6f[24]](function(_0x8368x11){logger[_0xfe6f[17]](_0xfe6f[13],_0x8368xc,_0xfe6f[16]);logger[_0xfe6f[20]](_0xfe6f[18],_0x8368xc,_0xfe6f[16],JSON[_0xfe6f[19]](_0x8368x11));if(_0x8368x11[_0xfe6f[14]]){if(_0x8368x11[_0xfe6f[14]][_0xfe6f[21]]=== 500){logger[_0xfe6f[14]](_0xfe6f[13],_0x8368xc,_0x8368x11[_0xfe6f[14]][_0xfe6f[22]]);return _0x8368xf(_0x8368x11[_0xfe6f[14]][_0xfe6f[22]])};logger[_0xfe6f[14]](_0xfe6f[13],_0x8368xc,_0x8368x11[_0xfe6f[14]][_0xfe6f[22]]);return _0x8368xe(_0x8368x11[_0xfe6f[14]][_0xfe6f[22]])}else {logger[_0xfe6f[17]](_0xfe6f[13],_0x8368xc,_0xfe6f[16]);_0x8368xe(_0x8368x11[_0xfe6f[23]][_0xfe6f[22]])}})[_0xfe6f[15]](function(_0x8368x10){logger[_0xfe6f[14]](_0xfe6f[13],_0x8368xc,_0x8368x10);_0x8368xf(_0x8368x10)})})}
\ No newline at end of file
index dbd7715..b3d9172 100644 (file)
@@ -1 +1 @@
-var _0x3c1b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x65\x61\x6D\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x75\x65\x73","\x67\x65\x74\x51\x75\x65\x75\x65\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x51\x75\x65\x75\x65\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x51\x75\x65\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x3c1b[0];var multer=require(_0x3c1b[1]);var util=require(_0x3c1b[2]);var path=require(_0x3c1b[3]);var express=require(_0x3c1b[4]);var router=express.Router();var auth=require(_0x3c1b[5]);var config=require(_0x3c1b[6]);var controller=require(_0x3c1b[7]);router[_0x3c1b[11]](_0x3c1b[8],auth[_0x3c1b[9]](),controller[_0x3c1b[10]]);router[_0x3c1b[11]](_0x3c1b[12],auth[_0x3c1b[9]](),controller[_0x3c1b[13]]);router[_0x3c1b[11]](_0x3c1b[14],auth[_0x3c1b[9]](),controller[_0x3c1b[15]]);router[_0x3c1b[11]](_0x3c1b[16],auth[_0x3c1b[9]](),controller[_0x3c1b[17]]);router[_0x3c1b[19]](_0x3c1b[8],auth[_0x3c1b[9]](),controller[_0x3c1b[18]]);router[_0x3c1b[19]](_0x3c1b[14],auth[_0x3c1b[9]](),controller[_0x3c1b[20]]);router[_0x3c1b[19]](_0x3c1b[16],auth[_0x3c1b[9]](),controller[_0x3c1b[21]]);router[_0x3c1b[23]](_0x3c1b[12],auth[_0x3c1b[9]](),controller[_0x3c1b[22]]);router[_0x3c1b[25]](_0x3c1b[12],auth[_0x3c1b[9]](),controller[_0x3c1b[24]]);router[_0x3c1b[25]](_0x3c1b[14],auth[_0x3c1b[9]](),controller[_0x3c1b[26]]);router[_0x3c1b[25]](_0x3c1b[16],auth[_0x3c1b[9]](),controller[_0x3c1b[27]]);module[_0x3c1b[28]]= router
\ No newline at end of file
+var _0xd74b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x65\x61\x6D\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x75\x65\x73","\x67\x65\x74\x51\x75\x65\x75\x65\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x51\x75\x65\x75\x65\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x51\x75\x65\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xd74b[0];var multer=require(_0xd74b[1]);var util=require(_0xd74b[2]);var path=require(_0xd74b[3]);var express=require(_0xd74b[4]);var router=express.Router();var auth=require(_0xd74b[5]);var config=require(_0xd74b[6]);var controller=require(_0xd74b[7]);router[_0xd74b[11]](_0xd74b[8],auth[_0xd74b[9]](),controller[_0xd74b[10]]);router[_0xd74b[11]](_0xd74b[12],auth[_0xd74b[9]](),controller[_0xd74b[13]]);router[_0xd74b[11]](_0xd74b[14],auth[_0xd74b[9]](),controller[_0xd74b[15]]);router[_0xd74b[11]](_0xd74b[16],auth[_0xd74b[9]](),controller[_0xd74b[17]]);router[_0xd74b[19]](_0xd74b[8],auth[_0xd74b[9]](),controller[_0xd74b[18]]);router[_0xd74b[19]](_0xd74b[14],auth[_0xd74b[9]](),controller[_0xd74b[20]]);router[_0xd74b[19]](_0xd74b[16],auth[_0xd74b[9]](),controller[_0xd74b[21]]);router[_0xd74b[23]](_0xd74b[12],auth[_0xd74b[9]](),controller[_0xd74b[22]]);router[_0xd74b[25]](_0xd74b[12],auth[_0xd74b[9]](),controller[_0xd74b[24]]);router[_0xd74b[25]](_0xd74b[14],auth[_0xd74b[9]](),controller[_0xd74b[26]]);router[_0xd74b[25]](_0xd74b[16],auth[_0xd74b[9]](),controller[_0xd74b[27]]);module[_0xd74b[28]]= router
\ No newline at end of file
index 658e924..a00678d 100644 (file)
@@ -1 +1 @@
-var _0x3ede=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x3ede[0];var Sequelize=require(_0x3ede[1]);module[_0x3ede[2]]= {name:{type:Sequelize[_0x3ede[3]],allowNull:false,unique:_0x3ede[4]},description:{type:Sequelize[_0x3ede[3]]}}
\ No newline at end of file
+var _0x9986=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x9986[0];var Sequelize=require(_0x9986[1]);module[_0x9986[2]]= {name:{type:Sequelize[_0x9986[3]],allowNull:false,unique:_0x9986[4]},description:{type:Sequelize[_0x9986[3]]}}
\ No newline at end of file
index 00afd06..6ce5d42 100644 (file)
@@ -1 +1 @@
-var _0x5bf9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x54\x65\x61\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x65\x61\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x65\x61\x6D","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x51\x75\x65\x75\x65\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x69\x73\x56\x61\x6C\x69\x64\x43\x68\x61\x6E\x6E\x65\x6C","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","\x51\x75\x65\x75\x65","\x67\x65\x74","\x51\x75\x65\x75\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x51\x75\x65\x75\x65\x73","\x69\x64\x73","\x61\x64\x64","\x72\x65\x6D\x6F\x76\x65\x51\x75\x65\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x55\x73\x65\x72"];_0x5bf9[0];var jsonpatch=require(_0x5bf9[1]);var rp=require(_0x5bf9[2]);var moment=require(_0x5bf9[3]);var BPromise=require(_0x5bf9[4]);var util=require(_0x5bf9[5]);var path=require(_0x5bf9[6]);var sox=require(_0x5bf9[7]);var ejs=require(_0x5bf9[8]);var fs=require(_0x5bf9[9]);var _=require(_0x5bf9[10]);var squel=require(_0x5bf9[11]);var crypto=require(_0x5bf9[12]);var jsforce=require(_0x5bf9[13]);var toCsv=require(_0x5bf9[14]);var qs=require(_0x5bf9[15]);var logger=require(_0x5bf9[17])(_0x5bf9[16]);var utils=require(_0x5bf9[18]);var config=require(_0x5bf9[19]);var db=require(_0x5bf9[21])[_0x5bf9[20]];function respondWithStatusCode(_0x45cbx15,_0x45cbx16,_0x45cbx17){_0x45cbx16= _0x45cbx16|| 204;return function(_0x45cbx18){if(_0x45cbx18){logger[_0x5bf9[24]](_0x5bf9[22],_0x45cbx17,_0x45cbx16,_0x5bf9[23]);logger[_0x5bf9[26]](_0x5bf9[25],_0x45cbx17,_0x45cbx16,_0x5bf9[23]);return _0x45cbx15[_0x5bf9[27]](_0x45cbx16)};return _0x45cbx15[_0x5bf9[29]](304)[_0x5bf9[28]]()}}function respondWithResult(_0x45cbx15,_0x45cbx16,_0x45cbx17){_0x45cbx16= _0x45cbx16|| 200;return function(_0x45cbx18){if(_0x45cbx18){logger[_0x5bf9[24]](_0x5bf9[22],_0x45cbx17,_0x45cbx16,_0x5bf9[30]);logger[_0x5bf9[26]](_0x5bf9[25],_0x45cbx17,_0x45cbx16,_0x5bf9[30],JSON[_0x5bf9[31]](_0x45cbx18));return _0x45cbx15[_0x5bf9[29]](_0x45cbx16)[_0x5bf9[32]](_0x45cbx18)};return _0x45cbx15[_0x5bf9[29]](304)[_0x5bf9[28]]()}}function respondWithFilteredResult(_0x45cbx15,_0x45cbx1b,_0x45cbx17){return function(_0x45cbx18){if(_0x45cbx18){var _0x45cbx1c=_0x45cbx18[_0x5bf9[33]],_0x45cbx1d=_0x45cbx1b[_0x5bf9[34]],_0x45cbx1e=_0x45cbx1b[_0x5bf9[34]]+ _0x45cbx1b[_0x5bf9[35]],_0x45cbx16;if(_0x45cbx1e>= _0x45cbx1c){_0x45cbx1e= _0x45cbx1c;_0x45cbx16= 200}else {_0x45cbx16= 206};_0x45cbx15[_0x5bf9[29]](_0x45cbx16);logger[_0x5bf9[24]](_0x5bf9[22],_0x45cbx17,_0x45cbx16,_0x5bf9[36]);logger[_0x5bf9[26]](_0x5bf9[25],_0x45cbx17,_0x45cbx16,_0x5bf9[30],JSON[_0x5bf9[31]](_0x45cbx18));return _0x45cbx15[_0x5bf9[40]](_0x5bf9[37],_0x45cbx1d+ _0x5bf9[38]+ _0x45cbx1e+ _0x5bf9[39]+ _0x45cbx1c)[_0x5bf9[32]](_0x45cbx18)};return null}}function patchUpdates(_0x45cbx20){return function(_0x45cbx18){try{jsonpatch[_0x5bf9[41]](_0x45cbx18,_0x45cbx20,true)}catch(err){return BPromise[_0x5bf9[42]](err)};return _0x45cbx18[_0x5bf9[43]]()}}function saveUpdates(_0x45cbx22,_0x45cbx16,_0x45cbx17){return function(_0x45cbx18){if(_0x45cbx18){return _0x45cbx18[_0x5bf9[46]](_0x45cbx22)[_0x5bf9[45]](function(_0x45cbx23){logger[_0x5bf9[24]](_0x5bf9[22],_0x45cbx17,_0x45cbx16,_0x5bf9[44]);logger[_0x5bf9[26]](_0x5bf9[25],_0x45cbx17,_0x45cbx16,_0x5bf9[44],JSON[_0x5bf9[31]](_0x45cbx18));return _0x45cbx23})};return null}}function removeEntity(_0x45cbx15,_0x45cbx16,_0x45cbx17){return function(_0x45cbx18){if(_0x45cbx18){return _0x45cbx18[_0x5bf9[48]]()[_0x5bf9[45]](function(){logger[_0x5bf9[24]](_0x5bf9[22],_0x45cbx17,_0x45cbx16,_0x5bf9[47]);logger[_0x5bf9[26]](_0x5bf9[25],_0x45cbx17,_0x45cbx16,_0x5bf9[47],JSON[_0x5bf9[31]](_0x45cbx18));_0x45cbx15[_0x5bf9[29]](204)[_0x5bf9[28]]()})}}}function handleEntityNotFound(_0x45cbx15,_0x45cbx16,_0x45cbx17){return function(_0x45cbx18){if(!_0x45cbx18){logger[_0x5bf9[50]](_0x5bf9[22],_0x45cbx17,404,_0x5bf9[49]);_0x45cbx15[_0x5bf9[29]](404)[_0x5bf9[28]]();return null};return _0x45cbx18}}function handleError(_0x45cbx15,_0x45cbx16,_0x45cbx17){_0x45cbx16= _0x45cbx16|| 500;return function(_0x45cbx27){logger[_0x5bf9[50]](_0x5bf9[22],_0x45cbx17,_0x45cbx16,JSON[_0x5bf9[31]](_0x45cbx27));delete _0x45cbx27[_0x5bf9[51]];_0x45cbx15[_0x5bf9[29]](_0x45cbx16)[_0x5bf9[52]](_0x45cbx27)}}exports[_0x5bf9[53]]= function(_0x45cbx28,_0x45cbx15){var _0x45cbx1b={},_0x45cbx29={};_0x45cbx29[_0x5bf9[54]]= _[_0x5bf9[57]](db[_0x5bf9[56]][_0x5bf9[55]]);_0x45cbx29[_0x5bf9[58]]= _[_0x5bf9[57]](_0x45cbx28[_0x5bf9[58]]);_0x45cbx29[_0x5bf9[59]]= _[_0x5bf9[60]](_0x45cbx29[_0x5bf9[54]],_0x45cbx29[_0x5bf9[58]]);_0x45cbx1b[_0x5bf9[61]]= _[_0x5bf9[60]](_0x45cbx29[_0x5bf9[54]],qs[_0x5bf9[62]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[62]]));_0x45cbx1b[_0x5bf9[61]]= (_0x45cbx1b[_0x5bf9[61]][_0x5bf9[63]])?_0x45cbx1b[_0x5bf9[61]]:_0x45cbx29[_0x5bf9[54]];if(!_0x45cbx28[_0x5bf9[58]][_0x5bf9[65]](_0x5bf9[64])){_0x45cbx1b[_0x5bf9[35]]= qs[_0x5bf9[35]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[35]]);_0x45cbx1b[_0x5bf9[34]]= qs[_0x5bf9[34]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[34]])};_0x45cbx1b[_0x5bf9[66]]= qs[_0x5bf9[67]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[67]]);_0x45cbx1b[_0x5bf9[68]]= qs[_0x5bf9[59]](_[_0x5bf9[69]](_0x45cbx28[_0x5bf9[58]],_0x45cbx29[_0x5bf9[59]]));if(_0x45cbx28[_0x5bf9[58]][_0x5bf9[70]]){_0x45cbx1b[_0x5bf9[68]]= _[_0x5bf9[73]](_0x45cbx1b[_0x5bf9[68]],{$or:_[_0x5bf9[72]](_0x45cbx1b[_0x5bf9[61]],function(_0x45cbx2a){var _0x45cbx2b={};_0x45cbx2b[_0x45cbx2a]= {$like:_0x5bf9[71]+ _0x45cbx28[_0x5bf9[58]][_0x5bf9[70]]+ _0x5bf9[71]};return _0x45cbx2b})})};_0x45cbx1b= _[_0x5bf9[73]]({},_0x45cbx1b,_0x45cbx28[_0x5bf9[74]]);return db[_0x5bf9[56]][_0x5bf9[76]](_0x45cbx1b)[_0x5bf9[45]](respondWithFilteredResult(_0x45cbx15,_0x45cbx1b,_0x5bf9[53]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[53]))};exports[_0x5bf9[77]]= function(_0x45cbx28,_0x45cbx15){var _0x45cbx1b={raw:false,where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}},_0x45cbx29={};_0x45cbx29[_0x5bf9[54]]= _[_0x5bf9[57]](db[_0x5bf9[56]][_0x5bf9[55]]);_0x45cbx29[_0x5bf9[58]]= _[_0x5bf9[57]](_0x45cbx28[_0x5bf9[58]]);_0x45cbx29[_0x5bf9[59]]= _[_0x5bf9[60]](_0x45cbx29[_0x5bf9[54]],_0x45cbx29[_0x5bf9[58]]);_0x45cbx1b[_0x5bf9[61]]= _[_0x5bf9[60]](_0x45cbx29[_0x5bf9[54]],qs[_0x5bf9[62]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[62]]));_0x45cbx1b[_0x5bf9[61]]= (_0x45cbx1b[_0x5bf9[61]][_0x5bf9[63]])?_0x45cbx1b[_0x5bf9[61]]:_0x45cbx29[_0x5bf9[54]];_0x45cbx1b= _[_0x5bf9[73]]({},_0x45cbx1b,_0x45cbx28[_0x5bf9[74]]);return db[_0x5bf9[56]][_0x5bf9[80]](_0x45cbx1b)[_0x5bf9[45]](handleEntityNotFound(_0x45cbx15,null,_0x5bf9[77]))[_0x5bf9[45]](respondWithResult(_0x45cbx15,null,_0x5bf9[77]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[77]))};exports[_0x5bf9[81]]= function(_0x45cbx28,_0x45cbx15){return db[_0x5bf9[56]][_0x5bf9[81]](_0x45cbx28[_0x5bf9[82]],{})[_0x5bf9[45]](respondWithResult(_0x45cbx15,201,_0x5bf9[81]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[81]))};exports[_0x5bf9[46]]= function(_0x45cbx28,_0x45cbx15){if(_0x45cbx28[_0x5bf9[82]][_0x5bf9[78]]){delete _0x45cbx28[_0x5bf9[82]][_0x5bf9[78]]};return db[_0x5bf9[56]][_0x5bf9[80]]({where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}})[_0x5bf9[45]](handleEntityNotFound(_0x45cbx15,null,_0x5bf9[46]))[_0x5bf9[45]](saveUpdates(_0x45cbx28[_0x5bf9[82]],null,_0x5bf9[46]))[_0x5bf9[45]](respondWithResult(_0x45cbx15,null,_0x5bf9[46]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[46]))};exports[_0x5bf9[48]]= function(_0x45cbx28,_0x45cbx15){return db[_0x5bf9[56]][_0x5bf9[80]]({where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}})[_0x5bf9[45]](handleEntityNotFound(_0x45cbx15,null,_0x5bf9[48]))[_0x5bf9[45]](removeEntity(_0x45cbx15,null,_0x5bf9[48]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[48]))};exports[_0x5bf9[83]]= function(_0x45cbx28,_0x45cbx15,_0x45cbx2c){return db[_0x5bf9[56]][_0x5bf9[93]]({where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}})[_0x5bf9[45]](handleEntityNotFound(_0x45cbx15,null,_0x5bf9[83]))[_0x5bf9[45]](function(_0x45cbx18){if(!_0x45cbx28[_0x5bf9[58]][_0x5bf9[84]]||  !utils[_0x5bf9[85]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[84]])){throw  new db[_0x5bf9[87]].ValidationError(_0x5bf9[86])};var _0x45cbx1b={};var _0x45cbx29={};_0x45cbx29[_0x5bf9[54]]= _[_0x5bf9[57]](db[_[_0x5bf9[89]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[84]][_0x5bf9[88]]())+ _0x5bf9[90]][_0x5bf9[55]]);_0x45cbx29[_0x5bf9[58]]= _[_0x5bf9[57]](_0x45cbx28[_0x5bf9[58]]);_0x45cbx29[_0x5bf9[59]]= _[_0x5bf9[60]](_0x45cbx29[_0x5bf9[54]],_0x45cbx29[_0x5bf9[58]]);_0x45cbx1b[_0x5bf9[61]]= _[_0x5bf9[60]](_0x45cbx29[_0x5bf9[54]],qs[_0x5bf9[62]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[62]]));_0x45cbx1b[_0x5bf9[61]]= (_0x45cbx1b[_0x5bf9[61]][_0x5bf9[63]])?_0x45cbx1b[_0x5bf9[61]]:_0x45cbx29[_0x5bf9[54]];_0x45cbx1b[_0x5bf9[35]]= qs[_0x5bf9[35]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[35]]);_0x45cbx1b[_0x5bf9[34]]= qs[_0x5bf9[34]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[34]]);_0x45cbx1b[_0x5bf9[66]]= qs[_0x5bf9[67]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[67]]);_0x45cbx1b[_0x5bf9[68]]= qs[_0x5bf9[59]](_[_0x5bf9[69]](_0x45cbx28[_0x5bf9[58]],_0x45cbx29[_0x5bf9[59]]));_0x45cbx1b= _[_0x5bf9[73]]({},_0x45cbx1b,_0x45cbx28[_0x5bf9[74]]);return _0x45cbx18[_0x5bf9[91]+ _[_0x5bf9[89]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[84]][_0x5bf9[88]]())+ _0x5bf9[92]](_0x45cbx1b)})[_0x5bf9[45]](respondWithResult(_0x45cbx15,null,_0x5bf9[83]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[83]))};exports[_0x5bf9[94]]= function(_0x45cbx28,_0x45cbx15,_0x45cbx2c){return db[_0x5bf9[56]][_0x5bf9[93]]({where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}})[_0x5bf9[45]](function(_0x45cbx18){if(_0x45cbx18){if(!_0x45cbx28[_0x5bf9[82]][_0x5bf9[84]]||  !utils[_0x5bf9[85]](_0x45cbx28[_0x5bf9[82]][_0x5bf9[84]])){throw  new db[_0x5bf9[87]].ValidationError(_0x5bf9[86])};return _0x45cbx18[_0x5bf9[96]+ _[_0x5bf9[89]](_0x45cbx28[_0x5bf9[82]][_0x5bf9[84]][_0x5bf9[88]]())+ _0x5bf9[92]](_0x45cbx28[_0x5bf9[82]][_0x5bf9[95]])};return null})[_0x5bf9[45]](handleEntityNotFound(_0x45cbx15,null,_0x5bf9[94]))[_0x5bf9[45]](respondWithStatusCode(_0x45cbx15,null,_0x5bf9[94]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[94]))};exports[_0x5bf9[97]]= function(_0x45cbx28,_0x45cbx15,_0x45cbx2c){return db[_0x5bf9[56]][_0x5bf9[93]]({where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}})[_0x5bf9[45]](function(_0x45cbx18){if(_0x45cbx18){if(!_0x45cbx28[_0x5bf9[58]][_0x5bf9[84]]||  !utils[_0x5bf9[85]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[84]])){throw  new db[_0x5bf9[87]].ValidationError(_0x5bf9[86])};return _0x45cbx18[_0x5bf9[98]+ _[_0x5bf9[89]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[84]][_0x5bf9[88]]())+ _0x5bf9[92]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[95]])};return null})[_0x5bf9[45]](handleEntityNotFound(_0x45cbx15,null,_0x5bf9[97]))[_0x5bf9[45]](respondWithStatusCode(_0x45cbx15,null,_0x5bf9[97]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[97]))};exports[_0x5bf9[99]]= function(_0x45cbx28,_0x45cbx15,_0x45cbx2c){return db[_0x5bf9[56]][_0x5bf9[80]]({where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}})[_0x5bf9[45]](handleEntityNotFound(_0x45cbx15,null,_0x5bf9[99]))[_0x5bf9[45]](function(_0x45cbx18){if(_0x45cbx18){return _0x45cbx18[_0x5bf9[99]](_0x45cbx28[_0x5bf9[82]][_0x5bf9[95]],_[_0x5bf9[100]](_0x45cbx28[_0x5bf9[82]],[_0x5bf9[95],_0x5bf9[78]])|| {})};return null})[_0x5bf9[45]](respondWithResult(_0x45cbx15,null,_0x5bf9[99]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[99]))};exports[_0x5bf9[101]]= function(_0x45cbx28,_0x45cbx15,_0x45cbx2c){var _0x45cbx2d;return db[_0x5bf9[56]][_0x5bf9[80]]({where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}})[_0x5bf9[45]](handleEntityNotFound(_0x45cbx15,null,_0x5bf9[101]))[_0x5bf9[45]](function(_0x45cbx18){if(_0x45cbx18){return _0x45cbx18[_0x5bf9[101]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[95]])}})[_0x5bf9[45]](respondWithStatusCode(_0x45cbx15,null,_0x5bf9[101]))[_0x5bf9[75]](handleError(_0x45cbx15,null,_0x5bf9[101]))};exports[_0x5bf9[102]]= function(_0x45cbx28,_0x45cbx18,_0x45cbx2c){var _0x45cbx1b={};var _0x45cbx29={};var _0x45cbx2e;var _0x45cbx1c;return db[_0x5bf9[56]][_0x5bf9[93]]({where:{id:_0x45cbx28[_0x5bf9[79]][_0x5bf9[78]]}})[_0x5bf9[45]](handleEntityNotFound(_0x45cbx18,null,_0x5bf9[102]))[_0x5bf9[45]](function(_0x45cbx18){if(_0x45cbx18){_0x45cbx2e= _0x45cbx18;_0x45cbx29[_0x5bf9[54]]= _[_0x5bf9[57]](db[_0x5bf9[103]][_0x5bf9[55]]);_0x45cbx29[_0x5bf9[58]]= _[_0x5bf9[57]](_0x45cbx28[_0x5bf9[58]]);_0x45cbx29[_0x5bf9[59]]= _[_0x5bf9[60]](_0x45cbx29[_0x5bf9[54]],_0x45cbx29[_0x5bf9[58]]);_0x45cbx1b[_0x5bf9[61]]= _[_0x5bf9[60]](_0x45cbx29[_0x5bf9[54]],qs[_0x5bf9[62]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[62]]));_0x45cbx1b[_0x5bf9[61]]= (_0x45cbx1b[_0x5bf9[61]][_0x5bf9[63]])?_0x45cbx1b[_0x5bf9[61]]:_0x45cbx29[_0x5bf9[54]];_0x45cbx1b[_0x5bf9[66]]= qs[_0x5bf9[67]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[67]]);_0x45cbx1b[_0x5bf9[68]]= qs[_0x5bf9[59]](_[_0x5bf9[69]](_0x45cbx28[_0x5bf9[58]],_0x45cbx29[_0x5bf9[59]]));if(_0x45cbx28[_0x5bf9[58]][_0x5bf9[70]]){_0x45cbx1b[_0x5bf9[68]]= _[_0x5bf9[73]](_0x45cbx1b[_0x5bf9[68]],{$or:_[_0x5bf9[72]](_0x45cbx1b[_0x5bf9[61]],function(_0x45cbx2a){var _0x45cbx2b={};_0x45cbx2b[_0x45cbx2a]= {$like:_0x5bf9[71]+ _0x45cbx28[_0x5bf9[58]][_0x5bf9[70]]+ _0x5bf9[71]};return _0x45cbx2b})})};_0x45cbx1b= _[_0x5bf9[73]]({},_0x45cbx1b,_0x45cbx28[_0x5bf9[74]]);return _0x45cbx2e[_0x5bf9[102]](_0x45cbx1b)}})[_0x5bf9[45]](function(_0x45cbx2d){if(_0x45cbx2d){_0x45cbx1c= _0x45cbx2d[_0x5bf9[63]];if(!_0x45cbx28[_0x5bf9[58]][_0x5bf9[65]](_0x5bf9[64])){_0x45cbx1b[_0x5bf9[35]]= qs[_0x5bf9[35]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[35]]);_0x45cbx1b[_0x5bf9[34]]= qs[_0x5bf9[34]](_0x45cbx28[_0x5bf9[58]][_0x5bf9[34]])};return _0x45cbx2e[_0x5bf9[102]](_0x45cbx1b)}})[_0x5bf9[45]](function(_0x45cbx2f){return _0x45cbx2f?{count:_0x45cbx1c,rows:_0x45cbx2f}:null})[_0x5bf9[45]](respondWithResult(_0x45cbx18,null,_0x5bf9[102]))[_0x5bf9[75]](handleError(_0x45cbx18,null,_0x5bf9[102]))}
\ No newline at end of file
+var _0xd72a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x54\x65\x61\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x65\x61\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x65\x61\x6D","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x51\x75\x65\x75\x65\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x69\x73\x56\x61\x6C\x69\x64\x43\x68\x61\x6E\x6E\x65\x6C","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","\x51\x75\x65\x75\x65","\x67\x65\x74","\x51\x75\x65\x75\x65\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x61\x64\x64\x51\x75\x65\x75\x65\x73","\x69\x64\x73","\x61\x64\x64","\x72\x65\x6D\x6F\x76\x65\x51\x75\x65\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x6F\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x55\x73\x65\x72"];_0xd72a[0];var jsonpatch=require(_0xd72a[1]);var rp=require(_0xd72a[2]);var moment=require(_0xd72a[3]);var BPromise=require(_0xd72a[4]);var util=require(_0xd72a[5]);var path=require(_0xd72a[6]);var sox=require(_0xd72a[7]);var ejs=require(_0xd72a[8]);var fs=require(_0xd72a[9]);var _=require(_0xd72a[10]);var squel=require(_0xd72a[11]);var crypto=require(_0xd72a[12]);var jsforce=require(_0xd72a[13]);var toCsv=require(_0xd72a[14]);var qs=require(_0xd72a[15]);var logger=require(_0xd72a[17])(_0xd72a[16]);var utils=require(_0xd72a[18]);var config=require(_0xd72a[19]);var db=require(_0xd72a[21])[_0xd72a[20]];function respondWithStatusCode(_0x5b6ex15,_0x5b6ex16,_0x5b6ex17){_0x5b6ex16= _0x5b6ex16|| 204;return function(_0x5b6ex18){if(_0x5b6ex18){logger[_0xd72a[24]](_0xd72a[22],_0x5b6ex17,_0x5b6ex16,_0xd72a[23]);logger[_0xd72a[26]](_0xd72a[25],_0x5b6ex17,_0x5b6ex16,_0xd72a[23]);return _0x5b6ex15[_0xd72a[27]](_0x5b6ex16)};return _0x5b6ex15[_0xd72a[29]](304)[_0xd72a[28]]()}}function respondWithResult(_0x5b6ex15,_0x5b6ex16,_0x5b6ex17){_0x5b6ex16= _0x5b6ex16|| 200;return function(_0x5b6ex18){if(_0x5b6ex18){logger[_0xd72a[24]](_0xd72a[22],_0x5b6ex17,_0x5b6ex16,_0xd72a[30]);logger[_0xd72a[26]](_0xd72a[25],_0x5b6ex17,_0x5b6ex16,_0xd72a[30],JSON[_0xd72a[31]](_0x5b6ex18));return _0x5b6ex15[_0xd72a[29]](_0x5b6ex16)[_0xd72a[32]](_0x5b6ex18)};return _0x5b6ex15[_0xd72a[29]](304)[_0xd72a[28]]()}}function respondWithFilteredResult(_0x5b6ex15,_0x5b6ex1b,_0x5b6ex17){return function(_0x5b6ex18){if(_0x5b6ex18){var _0x5b6ex1c=_0x5b6ex18[_0xd72a[33]],_0x5b6ex1d=_0x5b6ex1b[_0xd72a[34]],_0x5b6ex1e=_0x5b6ex1b[_0xd72a[34]]+ _0x5b6ex1b[_0xd72a[35]],_0x5b6ex16;if(_0x5b6ex1e>= _0x5b6ex1c){_0x5b6ex1e= _0x5b6ex1c;_0x5b6ex16= 200}else {_0x5b6ex16= 206};_0x5b6ex15[_0xd72a[29]](_0x5b6ex16);logger[_0xd72a[24]](_0xd72a[22],_0x5b6ex17,_0x5b6ex16,_0xd72a[36]);logger[_0xd72a[26]](_0xd72a[25],_0x5b6ex17,_0x5b6ex16,_0xd72a[30],JSON[_0xd72a[31]](_0x5b6ex18));return _0x5b6ex15[_0xd72a[40]](_0xd72a[37],_0x5b6ex1d+ _0xd72a[38]+ _0x5b6ex1e+ _0xd72a[39]+ _0x5b6ex1c)[_0xd72a[32]](_0x5b6ex18)};return null}}function patchUpdates(_0x5b6ex20){return function(_0x5b6ex18){try{jsonpatch[_0xd72a[41]](_0x5b6ex18,_0x5b6ex20,true)}catch(err){return BPromise[_0xd72a[42]](err)};return _0x5b6ex18[_0xd72a[43]]()}}function saveUpdates(_0x5b6ex22,_0x5b6ex16,_0x5b6ex17){return function(_0x5b6ex18){if(_0x5b6ex18){return _0x5b6ex18[_0xd72a[46]](_0x5b6ex22)[_0xd72a[45]](function(_0x5b6ex23){logger[_0xd72a[24]](_0xd72a[22],_0x5b6ex17,_0x5b6ex16,_0xd72a[44]);logger[_0xd72a[26]](_0xd72a[25],_0x5b6ex17,_0x5b6ex16,_0xd72a[44],JSON[_0xd72a[31]](_0x5b6ex18));return _0x5b6ex23})};return null}}function removeEntity(_0x5b6ex15,_0x5b6ex16,_0x5b6ex17){return function(_0x5b6ex18){if(_0x5b6ex18){return _0x5b6ex18[_0xd72a[48]]()[_0xd72a[45]](function(){logger[_0xd72a[24]](_0xd72a[22],_0x5b6ex17,_0x5b6ex16,_0xd72a[47]);logger[_0xd72a[26]](_0xd72a[25],_0x5b6ex17,_0x5b6ex16,_0xd72a[47],JSON[_0xd72a[31]](_0x5b6ex18));_0x5b6ex15[_0xd72a[29]](204)[_0xd72a[28]]()})}}}function handleEntityNotFound(_0x5b6ex15,_0x5b6ex16,_0x5b6ex17){return function(_0x5b6ex18){if(!_0x5b6ex18){logger[_0xd72a[50]](_0xd72a[22],_0x5b6ex17,404,_0xd72a[49]);_0x5b6ex15[_0xd72a[29]](404)[_0xd72a[28]]();return null};return _0x5b6ex18}}function handleError(_0x5b6ex15,_0x5b6ex16,_0x5b6ex17){_0x5b6ex16= _0x5b6ex16|| 500;return function(_0x5b6ex27){logger[_0xd72a[50]](_0xd72a[22],_0x5b6ex17,_0x5b6ex16,JSON[_0xd72a[31]](_0x5b6ex27));delete _0x5b6ex27[_0xd72a[51]];_0x5b6ex15[_0xd72a[29]](_0x5b6ex16)[_0xd72a[52]](_0x5b6ex27)}}exports[_0xd72a[53]]= function(_0x5b6ex28,_0x5b6ex15){var _0x5b6ex1b={},_0x5b6ex29={};_0x5b6ex29[_0xd72a[54]]= _[_0xd72a[57]](db[_0xd72a[56]][_0xd72a[55]]);_0x5b6ex29[_0xd72a[58]]= _[_0xd72a[57]](_0x5b6ex28[_0xd72a[58]]);_0x5b6ex29[_0xd72a[59]]= _[_0xd72a[60]](_0x5b6ex29[_0xd72a[54]],_0x5b6ex29[_0xd72a[58]]);_0x5b6ex1b[_0xd72a[61]]= _[_0xd72a[60]](_0x5b6ex29[_0xd72a[54]],qs[_0xd72a[62]](_0x5b6ex28[_0xd72a[58]][_0xd72a[62]]));_0x5b6ex1b[_0xd72a[61]]= (_0x5b6ex1b[_0xd72a[61]][_0xd72a[63]])?_0x5b6ex1b[_0xd72a[61]]:_0x5b6ex29[_0xd72a[54]];if(!_0x5b6ex28[_0xd72a[58]][_0xd72a[65]](_0xd72a[64])){_0x5b6ex1b[_0xd72a[35]]= qs[_0xd72a[35]](_0x5b6ex28[_0xd72a[58]][_0xd72a[35]]);_0x5b6ex1b[_0xd72a[34]]= qs[_0xd72a[34]](_0x5b6ex28[_0xd72a[58]][_0xd72a[34]])};_0x5b6ex1b[_0xd72a[66]]= qs[_0xd72a[67]](_0x5b6ex28[_0xd72a[58]][_0xd72a[67]]);_0x5b6ex1b[_0xd72a[68]]= qs[_0xd72a[59]](_[_0xd72a[69]](_0x5b6ex28[_0xd72a[58]],_0x5b6ex29[_0xd72a[59]]));if(_0x5b6ex28[_0xd72a[58]][_0xd72a[70]]){_0x5b6ex1b[_0xd72a[68]]= _[_0xd72a[73]](_0x5b6ex1b[_0xd72a[68]],{$or:_[_0xd72a[72]](_0x5b6ex1b[_0xd72a[61]],function(_0x5b6ex2a){var _0x5b6ex2b={};_0x5b6ex2b[_0x5b6ex2a]= {$like:_0xd72a[71]+ _0x5b6ex28[_0xd72a[58]][_0xd72a[70]]+ _0xd72a[71]};return _0x5b6ex2b})})};_0x5b6ex1b= _[_0xd72a[73]]({},_0x5b6ex1b,_0x5b6ex28[_0xd72a[74]]);return db[_0xd72a[56]][_0xd72a[76]](_0x5b6ex1b)[_0xd72a[45]](respondWithFilteredResult(_0x5b6ex15,_0x5b6ex1b,_0xd72a[53]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[53]))};exports[_0xd72a[77]]= function(_0x5b6ex28,_0x5b6ex15){var _0x5b6ex1b={raw:false,where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}},_0x5b6ex29={};_0x5b6ex29[_0xd72a[54]]= _[_0xd72a[57]](db[_0xd72a[56]][_0xd72a[55]]);_0x5b6ex29[_0xd72a[58]]= _[_0xd72a[57]](_0x5b6ex28[_0xd72a[58]]);_0x5b6ex29[_0xd72a[59]]= _[_0xd72a[60]](_0x5b6ex29[_0xd72a[54]],_0x5b6ex29[_0xd72a[58]]);_0x5b6ex1b[_0xd72a[61]]= _[_0xd72a[60]](_0x5b6ex29[_0xd72a[54]],qs[_0xd72a[62]](_0x5b6ex28[_0xd72a[58]][_0xd72a[62]]));_0x5b6ex1b[_0xd72a[61]]= (_0x5b6ex1b[_0xd72a[61]][_0xd72a[63]])?_0x5b6ex1b[_0xd72a[61]]:_0x5b6ex29[_0xd72a[54]];_0x5b6ex1b= _[_0xd72a[73]]({},_0x5b6ex1b,_0x5b6ex28[_0xd72a[74]]);return db[_0xd72a[56]][_0xd72a[80]](_0x5b6ex1b)[_0xd72a[45]](handleEntityNotFound(_0x5b6ex15,null,_0xd72a[77]))[_0xd72a[45]](respondWithResult(_0x5b6ex15,null,_0xd72a[77]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[77]))};exports[_0xd72a[81]]= function(_0x5b6ex28,_0x5b6ex15){return db[_0xd72a[56]][_0xd72a[81]](_0x5b6ex28[_0xd72a[82]],{})[_0xd72a[45]](respondWithResult(_0x5b6ex15,201,_0xd72a[81]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[81]))};exports[_0xd72a[46]]= function(_0x5b6ex28,_0x5b6ex15){if(_0x5b6ex28[_0xd72a[82]][_0xd72a[78]]){delete _0x5b6ex28[_0xd72a[82]][_0xd72a[78]]};return db[_0xd72a[56]][_0xd72a[80]]({where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}})[_0xd72a[45]](handleEntityNotFound(_0x5b6ex15,null,_0xd72a[46]))[_0xd72a[45]](saveUpdates(_0x5b6ex28[_0xd72a[82]],null,_0xd72a[46]))[_0xd72a[45]](respondWithResult(_0x5b6ex15,null,_0xd72a[46]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[46]))};exports[_0xd72a[48]]= function(_0x5b6ex28,_0x5b6ex15){return db[_0xd72a[56]][_0xd72a[80]]({where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}})[_0xd72a[45]](handleEntityNotFound(_0x5b6ex15,null,_0xd72a[48]))[_0xd72a[45]](removeEntity(_0x5b6ex15,null,_0xd72a[48]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[48]))};exports[_0xd72a[83]]= function(_0x5b6ex28,_0x5b6ex15,_0x5b6ex2c){return db[_0xd72a[56]][_0xd72a[93]]({where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}})[_0xd72a[45]](handleEntityNotFound(_0x5b6ex15,null,_0xd72a[83]))[_0xd72a[45]](function(_0x5b6ex18){if(!_0x5b6ex28[_0xd72a[58]][_0xd72a[84]]||  !utils[_0xd72a[85]](_0x5b6ex28[_0xd72a[58]][_0xd72a[84]])){throw  new db[_0xd72a[87]].ValidationError(_0xd72a[86])};var _0x5b6ex1b={};var _0x5b6ex29={};_0x5b6ex29[_0xd72a[54]]= _[_0xd72a[57]](db[_[_0xd72a[89]](_0x5b6ex28[_0xd72a[58]][_0xd72a[84]][_0xd72a[88]]())+ _0xd72a[90]][_0xd72a[55]]);_0x5b6ex29[_0xd72a[58]]= _[_0xd72a[57]](_0x5b6ex28[_0xd72a[58]]);_0x5b6ex29[_0xd72a[59]]= _[_0xd72a[60]](_0x5b6ex29[_0xd72a[54]],_0x5b6ex29[_0xd72a[58]]);_0x5b6ex1b[_0xd72a[61]]= _[_0xd72a[60]](_0x5b6ex29[_0xd72a[54]],qs[_0xd72a[62]](_0x5b6ex28[_0xd72a[58]][_0xd72a[62]]));_0x5b6ex1b[_0xd72a[61]]= (_0x5b6ex1b[_0xd72a[61]][_0xd72a[63]])?_0x5b6ex1b[_0xd72a[61]]:_0x5b6ex29[_0xd72a[54]];_0x5b6ex1b[_0xd72a[35]]= qs[_0xd72a[35]](_0x5b6ex28[_0xd72a[58]][_0xd72a[35]]);_0x5b6ex1b[_0xd72a[34]]= qs[_0xd72a[34]](_0x5b6ex28[_0xd72a[58]][_0xd72a[34]]);_0x5b6ex1b[_0xd72a[66]]= qs[_0xd72a[67]](_0x5b6ex28[_0xd72a[58]][_0xd72a[67]]);_0x5b6ex1b[_0xd72a[68]]= qs[_0xd72a[59]](_[_0xd72a[69]](_0x5b6ex28[_0xd72a[58]],_0x5b6ex29[_0xd72a[59]]));_0x5b6ex1b= _[_0xd72a[73]]({},_0x5b6ex1b,_0x5b6ex28[_0xd72a[74]]);return _0x5b6ex18[_0xd72a[91]+ _[_0xd72a[89]](_0x5b6ex28[_0xd72a[58]][_0xd72a[84]][_0xd72a[88]]())+ _0xd72a[92]](_0x5b6ex1b)})[_0xd72a[45]](respondWithResult(_0x5b6ex15,null,_0xd72a[83]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[83]))};exports[_0xd72a[94]]= function(_0x5b6ex28,_0x5b6ex15,_0x5b6ex2c){return db[_0xd72a[56]][_0xd72a[93]]({where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}})[_0xd72a[45]](function(_0x5b6ex18){if(_0x5b6ex18){if(!_0x5b6ex28[_0xd72a[82]][_0xd72a[84]]||  !utils[_0xd72a[85]](_0x5b6ex28[_0xd72a[82]][_0xd72a[84]])){throw  new db[_0xd72a[87]].ValidationError(_0xd72a[86])};return _0x5b6ex18[_0xd72a[96]+ _[_0xd72a[89]](_0x5b6ex28[_0xd72a[82]][_0xd72a[84]][_0xd72a[88]]())+ _0xd72a[92]](_0x5b6ex28[_0xd72a[82]][_0xd72a[95]])};return null})[_0xd72a[45]](handleEntityNotFound(_0x5b6ex15,null,_0xd72a[94]))[_0xd72a[45]](respondWithStatusCode(_0x5b6ex15,null,_0xd72a[94]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[94]))};exports[_0xd72a[97]]= function(_0x5b6ex28,_0x5b6ex15,_0x5b6ex2c){return db[_0xd72a[56]][_0xd72a[93]]({where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}})[_0xd72a[45]](function(_0x5b6ex18){if(_0x5b6ex18){if(!_0x5b6ex28[_0xd72a[58]][_0xd72a[84]]||  !utils[_0xd72a[85]](_0x5b6ex28[_0xd72a[58]][_0xd72a[84]])){throw  new db[_0xd72a[87]].ValidationError(_0xd72a[86])};return _0x5b6ex18[_0xd72a[98]+ _[_0xd72a[89]](_0x5b6ex28[_0xd72a[58]][_0xd72a[84]][_0xd72a[88]]())+ _0xd72a[92]](_0x5b6ex28[_0xd72a[58]][_0xd72a[95]])};return null})[_0xd72a[45]](handleEntityNotFound(_0x5b6ex15,null,_0xd72a[97]))[_0xd72a[45]](respondWithStatusCode(_0x5b6ex15,null,_0xd72a[97]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[97]))};exports[_0xd72a[99]]= function(_0x5b6ex28,_0x5b6ex15,_0x5b6ex2c){return db[_0xd72a[56]][_0xd72a[80]]({where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}})[_0xd72a[45]](handleEntityNotFound(_0x5b6ex15,null,_0xd72a[99]))[_0xd72a[45]](function(_0x5b6ex18){if(_0x5b6ex18){return _0x5b6ex18[_0xd72a[99]](_0x5b6ex28[_0xd72a[82]][_0xd72a[95]],_[_0xd72a[100]](_0x5b6ex28[_0xd72a[82]],[_0xd72a[95],_0xd72a[78]])|| {})};return null})[_0xd72a[45]](respondWithResult(_0x5b6ex15,null,_0xd72a[99]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[99]))};exports[_0xd72a[101]]= function(_0x5b6ex28,_0x5b6ex15,_0x5b6ex2c){var _0x5b6ex2d;return db[_0xd72a[56]][_0xd72a[80]]({where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}})[_0xd72a[45]](handleEntityNotFound(_0x5b6ex15,null,_0xd72a[101]))[_0xd72a[45]](function(_0x5b6ex18){if(_0x5b6ex18){return _0x5b6ex18[_0xd72a[101]](_0x5b6ex28[_0xd72a[58]][_0xd72a[95]])}})[_0xd72a[45]](respondWithStatusCode(_0x5b6ex15,null,_0xd72a[101]))[_0xd72a[75]](handleError(_0x5b6ex15,null,_0xd72a[101]))};exports[_0xd72a[102]]= function(_0x5b6ex28,_0x5b6ex18,_0x5b6ex2c){var _0x5b6ex1b={};var _0x5b6ex29={};var _0x5b6ex2e;var _0x5b6ex1c;return db[_0xd72a[56]][_0xd72a[93]]({where:{id:_0x5b6ex28[_0xd72a[79]][_0xd72a[78]]}})[_0xd72a[45]](handleEntityNotFound(_0x5b6ex18,null,_0xd72a[102]))[_0xd72a[45]](function(_0x5b6ex18){if(_0x5b6ex18){_0x5b6ex2e= _0x5b6ex18;_0x5b6ex29[_0xd72a[54]]= _[_0xd72a[57]](db[_0xd72a[103]][_0xd72a[55]]);_0x5b6ex29[_0xd72a[58]]= _[_0xd72a[57]](_0x5b6ex28[_0xd72a[58]]);_0x5b6ex29[_0xd72a[59]]= _[_0xd72a[60]](_0x5b6ex29[_0xd72a[54]],_0x5b6ex29[_0xd72a[58]]);_0x5b6ex1b[_0xd72a[61]]= _[_0xd72a[60]](_0x5b6ex29[_0xd72a[54]],qs[_0xd72a[62]](_0x5b6ex28[_0xd72a[58]][_0xd72a[62]]));_0x5b6ex1b[_0xd72a[61]]= (_0x5b6ex1b[_0xd72a[61]][_0xd72a[63]])?_0x5b6ex1b[_0xd72a[61]]:_0x5b6ex29[_0xd72a[54]];_0x5b6ex1b[_0xd72a[66]]= qs[_0xd72a[67]](_0x5b6ex28[_0xd72a[58]][_0xd72a[67]]);_0x5b6ex1b[_0xd72a[68]]= qs[_0xd72a[59]](_[_0xd72a[69]](_0x5b6ex28[_0xd72a[58]],_0x5b6ex29[_0xd72a[59]]));if(_0x5b6ex28[_0xd72a[58]][_0xd72a[70]]){_0x5b6ex1b[_0xd72a[68]]= _[_0xd72a[73]](_0x5b6ex1b[_0xd72a[68]],{$or:_[_0xd72a[72]](_0x5b6ex1b[_0xd72a[61]],function(_0x5b6ex2a){var _0x5b6ex2b={};_0x5b6ex2b[_0x5b6ex2a]= {$like:_0xd72a[71]+ _0x5b6ex28[_0xd72a[58]][_0xd72a[70]]+ _0xd72a[71]};return _0x5b6ex2b})})};_0x5b6ex1b= _[_0xd72a[73]]({},_0x5b6ex1b,_0x5b6ex28[_0xd72a[74]]);return _0x5b6ex2e[_0xd72a[102]](_0x5b6ex1b)}})[_0xd72a[45]](function(_0x5b6ex2d){if(_0x5b6ex2d){_0x5b6ex1c= _0x5b6ex2d[_0xd72a[63]];if(!_0x5b6ex28[_0xd72a[58]][_0xd72a[65]](_0xd72a[64])){_0x5b6ex1b[_0xd72a[35]]= qs[_0xd72a[35]](_0x5b6ex28[_0xd72a[58]][_0xd72a[35]]);_0x5b6ex1b[_0xd72a[34]]= qs[_0xd72a[34]](_0x5b6ex28[_0xd72a[58]][_0xd72a[34]])};return _0x5b6ex2e[_0xd72a[102]](_0x5b6ex1b)}})[_0xd72a[45]](function(_0x5b6ex2f){return _0x5b6ex2f?{count:_0x5b6ex1c,rows:_0x5b6ex2f}:null})[_0xd72a[45]](respondWithResult(_0x5b6ex18,null,_0xd72a[102]))[_0xd72a[75]](handleError(_0x5b6ex18,null,_0xd72a[102]))}
\ No newline at end of file
index 2d6df1c..b3485a5 100644 (file)
@@ -1 +1 @@
-var _0x13c2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x65\x61\x6D\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x65\x61\x6D","\x74\x65\x61\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x13c2[0];var _=require(_0x13c2[1]);var util=require(_0x13c2[2]);var logger=require(_0x13c2[4])(_0x13c2[3]);var attributes=require(_0x13c2[5]);module[_0x13c2[6]]= function(_0x495ax5,_0x495ax6){return _0x495ax5[_0x13c2[9]](_0x13c2[7],attributes,{tableName:_0x13c2[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x9daa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x65\x61\x6D\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x65\x61\x6D","\x74\x65\x61\x6D\x73","\x64\x65\x66\x69\x6E\x65"];_0x9daa[0];var _=require(_0x9daa[1]);var util=require(_0x9daa[2]);var logger=require(_0x9daa[4])(_0x9daa[3]);var attributes=require(_0x9daa[5]);module[_0x9daa[6]]= function(_0x2f93x5,_0x2f93x6){return _0x2f93x5[_0x9daa[9]](_0x9daa[7],attributes,{tableName:_0x9daa[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index a24dc1f..d0d81f7 100644 (file)
@@ -1 +1 @@
-var _0x94f4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x65\x61\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x65\x61\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x94f4[0];var _=require(_0x94f4[1]);var util=require(_0x94f4[2]);var moment=require(_0x94f4[3]);var BPromise=require(_0x94f4[4]);var db=require(_0x94f4[6])[_0x94f4[5]];var utils=require(_0x94f4[7]);var logger=require(_0x94f4[9])(_0x94f4[8]);var jayson=require(_0x94f4[10]);var client=jayson[_0x94f4[12]][_0x94f4[11]]({port:9002});function respondWithRpcPromise(_0x593cxb,_0x593cxc,_0x593cxd){return  new BPromise(function(_0x593cxe,_0x593cxf){return client[_0x94f4[25]](_0x593cxb,_0x593cxd)[_0x94f4[24]](function(_0x593cx11){logger[_0x94f4[17]](_0x94f4[13],_0x593cxc,_0x94f4[16]);logger[_0x94f4[20]](_0x94f4[18],_0x593cxc,_0x94f4[16],JSON[_0x94f4[19]](_0x593cx11));if(_0x593cx11[_0x94f4[14]]){if(_0x593cx11[_0x94f4[14]][_0x94f4[21]]=== 500){logger[_0x94f4[14]](_0x94f4[13],_0x593cxc,_0x593cx11[_0x94f4[14]][_0x94f4[22]]);return _0x593cxf(_0x593cx11[_0x94f4[14]][_0x94f4[22]])};logger[_0x94f4[14]](_0x94f4[13],_0x593cxc,_0x593cx11[_0x94f4[14]][_0x94f4[22]]);return _0x593cxe(_0x593cx11[_0x94f4[14]][_0x94f4[22]])}else {logger[_0x94f4[17]](_0x94f4[13],_0x593cxc,_0x94f4[16]);_0x593cxe(_0x593cx11[_0x94f4[23]][_0x94f4[22]])}})[_0x94f4[15]](function(_0x593cx10){logger[_0x94f4[14]](_0x94f4[13],_0x593cxc,_0x593cx10);_0x593cxf(_0x593cx10)})})}
\ No newline at end of file
+var _0xbd80=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x65\x61\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x65\x61\x6D\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xbd80[0];var _=require(_0xbd80[1]);var util=require(_0xbd80[2]);var moment=require(_0xbd80[3]);var BPromise=require(_0xbd80[4]);var db=require(_0xbd80[6])[_0xbd80[5]];var utils=require(_0xbd80[7]);var logger=require(_0xbd80[9])(_0xbd80[8]);var jayson=require(_0xbd80[10]);var client=jayson[_0xbd80[12]][_0xbd80[11]]({port:9002});function respondWithRpcPromise(_0xf02dxb,_0xf02dxc,_0xf02dxd){return  new BPromise(function(_0xf02dxe,_0xf02dxf){return client[_0xbd80[25]](_0xf02dxb,_0xf02dxd)[_0xbd80[24]](function(_0xf02dx11){logger[_0xbd80[17]](_0xbd80[13],_0xf02dxc,_0xbd80[16]);logger[_0xbd80[20]](_0xbd80[18],_0xf02dxc,_0xbd80[16],JSON[_0xbd80[19]](_0xf02dx11));if(_0xf02dx11[_0xbd80[14]]){if(_0xf02dx11[_0xbd80[14]][_0xbd80[21]]=== 500){logger[_0xbd80[14]](_0xbd80[13],_0xf02dxc,_0xf02dx11[_0xbd80[14]][_0xbd80[22]]);return _0xf02dxf(_0xf02dx11[_0xbd80[14]][_0xbd80[22]])};logger[_0xbd80[14]](_0xbd80[13],_0xf02dxc,_0xf02dx11[_0xbd80[14]][_0xbd80[22]]);return _0xf02dxe(_0xf02dx11[_0xbd80[14]][_0xbd80[22]])}else {logger[_0xbd80[17]](_0xbd80[13],_0xf02dxc,_0xbd80[16]);_0xf02dxe(_0xf02dx11[_0xbd80[23]][_0xbd80[22]])}})[_0xbd80[15]](function(_0xf02dx10){logger[_0xbd80[14]](_0xbd80[13],_0xf02dxc,_0xf02dx10);_0xf02dxf(_0xf02dx10)})})}
\ No newline at end of file
index 2b73756..24898b9 100644 (file)
@@ -1 +1 @@
-var _0x4117=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x4117[0];var multer=require(_0x4117[1]);var util=require(_0x4117[2]);var path=require(_0x4117[3]);var express=require(_0x4117[4]);var router=express.Router();var auth=require(_0x4117[5]);var config=require(_0x4117[6]);var controller=require(_0x4117[7]);router[_0x4117[11]](_0x4117[8],auth[_0x4117[9]](),controller[_0x4117[10]]);router[_0x4117[11]](_0x4117[12],auth[_0x4117[9]](),controller[_0x4117[13]]);router[_0x4117[15]](_0x4117[8],auth[_0x4117[9]](),controller[_0x4117[14]]);router[_0x4117[17]](_0x4117[12],auth[_0x4117[9]](),controller[_0x4117[16]]);router[_0x4117[19]](_0x4117[12],auth[_0x4117[9]](),controller[_0x4117[18]]);module[_0x4117[20]]= router
\ No newline at end of file
+var _0x31ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x31ee[0];var multer=require(_0x31ee[1]);var util=require(_0x31ee[2]);var path=require(_0x31ee[3]);var express=require(_0x31ee[4]);var router=express.Router();var auth=require(_0x31ee[5]);var config=require(_0x31ee[6]);var controller=require(_0x31ee[7]);router[_0x31ee[11]](_0x31ee[8],auth[_0x31ee[9]](),controller[_0x31ee[10]]);router[_0x31ee[11]](_0x31ee[12],auth[_0x31ee[9]](),controller[_0x31ee[13]]);router[_0x31ee[15]](_0x31ee[8],auth[_0x31ee[9]](),controller[_0x31ee[14]]);router[_0x31ee[17]](_0x31ee[12],auth[_0x31ee[9]](),controller[_0x31ee[16]]);router[_0x31ee[19]](_0x31ee[12],auth[_0x31ee[9]](),controller[_0x31ee[18]]);module[_0x31ee[20]]= router
\ No newline at end of file
index 0f0b074..52ac232 100644 (file)
@@ -1 +1 @@
-var _0x8f4f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0x8f4f[0];var Sequelize=require(_0x8f4f[1]);module[_0x8f4f[2]]= {name:{type:Sequelize[_0x8f4f[3]]},description:{type:Sequelize[_0x8f4f[3]]},subject:{type:Sequelize[_0x8f4f[3]]},html:{type:Sequelize[_0x8f4f[4]]}}
\ No newline at end of file
+var _0x9a4e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x54\x45\x58\x54"];_0x9a4e[0];var Sequelize=require(_0x9a4e[1]);module[_0x9a4e[2]]= {name:{type:Sequelize[_0x9a4e[3]]},description:{type:Sequelize[_0x9a4e[3]]},subject:{type:Sequelize[_0x9a4e[3]]},html:{type:Sequelize[_0x9a4e[4]]}}
\ No newline at end of file
index 0af75f3..958dba3 100644 (file)
@@ -1 +1 @@
-var _0x3f87=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x54\x65\x6D\x70\x6C\x61\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x65\x6D\x70\x6C\x61\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x65\x6D\x70\x6C\x61\x74\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x3f87[0];var jsonpatch=require(_0x3f87[1]);var rp=require(_0x3f87[2]);var moment=require(_0x3f87[3]);var BPromise=require(_0x3f87[4]);var util=require(_0x3f87[5]);var path=require(_0x3f87[6]);var sox=require(_0x3f87[7]);var ejs=require(_0x3f87[8]);var fs=require(_0x3f87[9]);var _=require(_0x3f87[10]);var squel=require(_0x3f87[11]);var crypto=require(_0x3f87[12]);var jsforce=require(_0x3f87[13]);var toCsv=require(_0x3f87[14]);var qs=require(_0x3f87[15]);var logger=require(_0x3f87[17])(_0x3f87[16]);var utils=require(_0x3f87[18]);var config=require(_0x3f87[19]);var db=require(_0x3f87[21])[_0x3f87[20]];function respondWithStatusCode(_0x514bx15,_0x514bx16,_0x514bx17){_0x514bx16= _0x514bx16|| 204;return function(_0x514bx18){if(_0x514bx18){logger[_0x3f87[24]](_0x3f87[22],_0x514bx17,_0x514bx16,_0x3f87[23]);logger[_0x3f87[26]](_0x3f87[25],_0x514bx17,_0x514bx16,_0x3f87[23]);return _0x514bx15[_0x3f87[27]](_0x514bx16)};return _0x514bx15[_0x3f87[29]](304)[_0x3f87[28]]()}}function respondWithResult(_0x514bx15,_0x514bx16,_0x514bx17){_0x514bx16= _0x514bx16|| 200;return function(_0x514bx18){if(_0x514bx18){logger[_0x3f87[24]](_0x3f87[22],_0x514bx17,_0x514bx16,_0x3f87[30]);logger[_0x3f87[26]](_0x3f87[25],_0x514bx17,_0x514bx16,_0x3f87[30],JSON[_0x3f87[31]](_0x514bx18));return _0x514bx15[_0x3f87[29]](_0x514bx16)[_0x3f87[32]](_0x514bx18)};return _0x514bx15[_0x3f87[29]](304)[_0x3f87[28]]()}}function respondWithFilteredResult(_0x514bx15,_0x514bx1b,_0x514bx17){return function(_0x514bx18){if(_0x514bx18){var _0x514bx1c=_0x514bx18[_0x3f87[33]],_0x514bx1d=_0x514bx1b[_0x3f87[34]],_0x514bx1e=_0x514bx1b[_0x3f87[34]]+ _0x514bx1b[_0x3f87[35]],_0x514bx16;if(_0x514bx1e>= _0x514bx1c){_0x514bx1e= _0x514bx1c;_0x514bx16= 200}else {_0x514bx16= 206};_0x514bx15[_0x3f87[29]](_0x514bx16);logger[_0x3f87[24]](_0x3f87[22],_0x514bx17,_0x514bx16,_0x3f87[36]);logger[_0x3f87[26]](_0x3f87[25],_0x514bx17,_0x514bx16,_0x3f87[30],JSON[_0x3f87[31]](_0x514bx18));return _0x514bx15[_0x3f87[40]](_0x3f87[37],_0x514bx1d+ _0x3f87[38]+ _0x514bx1e+ _0x3f87[39]+ _0x514bx1c)[_0x3f87[32]](_0x514bx18)};return null}}function patchUpdates(_0x514bx20){return function(_0x514bx18){try{jsonpatch[_0x3f87[41]](_0x514bx18,_0x514bx20,true)}catch(err){return BPromise[_0x3f87[42]](err)};return _0x514bx18[_0x3f87[43]]()}}function saveUpdates(_0x514bx22,_0x514bx16,_0x514bx17){return function(_0x514bx18){if(_0x514bx18){return _0x514bx18[_0x3f87[46]](_0x514bx22)[_0x3f87[45]](function(_0x514bx23){logger[_0x3f87[24]](_0x3f87[22],_0x514bx17,_0x514bx16,_0x3f87[44]);logger[_0x3f87[26]](_0x3f87[25],_0x514bx17,_0x514bx16,_0x3f87[44],JSON[_0x3f87[31]](_0x514bx18));return _0x514bx23})};return null}}function removeEntity(_0x514bx15,_0x514bx16,_0x514bx17){return function(_0x514bx18){if(_0x514bx18){return _0x514bx18[_0x3f87[48]]()[_0x3f87[45]](function(){logger[_0x3f87[24]](_0x3f87[22],_0x514bx17,_0x514bx16,_0x3f87[47]);logger[_0x3f87[26]](_0x3f87[25],_0x514bx17,_0x514bx16,_0x3f87[47],JSON[_0x3f87[31]](_0x514bx18));_0x514bx15[_0x3f87[29]](204)[_0x3f87[28]]()})}}}function handleEntityNotFound(_0x514bx15,_0x514bx16,_0x514bx17){return function(_0x514bx18){if(!_0x514bx18){logger[_0x3f87[50]](_0x3f87[22],_0x514bx17,404,_0x3f87[49]);_0x514bx15[_0x3f87[29]](404)[_0x3f87[28]]();return null};return _0x514bx18}}function handleError(_0x514bx15,_0x514bx16,_0x514bx17){_0x514bx16= _0x514bx16|| 500;return function(_0x514bx27){logger[_0x3f87[50]](_0x3f87[22],_0x514bx17,_0x514bx16,JSON[_0x3f87[31]](_0x514bx27));delete _0x514bx27[_0x3f87[51]];_0x514bx15[_0x3f87[29]](_0x514bx16)[_0x3f87[52]](_0x514bx27)}}exports[_0x3f87[53]]= function(_0x514bx28,_0x514bx15){var _0x514bx1b={},_0x514bx29={};_0x514bx29[_0x3f87[54]]= _[_0x3f87[57]](db[_0x3f87[56]][_0x3f87[55]]);_0x514bx29[_0x3f87[58]]= _[_0x3f87[57]](_0x514bx28[_0x3f87[58]]);_0x514bx29[_0x3f87[59]]= _[_0x3f87[60]](_0x514bx29[_0x3f87[54]],_0x514bx29[_0x3f87[58]]);_0x514bx1b[_0x3f87[61]]= _[_0x3f87[60]](_0x514bx29[_0x3f87[54]],qs[_0x3f87[62]](_0x514bx28[_0x3f87[58]][_0x3f87[62]]));_0x514bx1b[_0x3f87[61]]= (_0x514bx1b[_0x3f87[61]][_0x3f87[63]])?_0x514bx1b[_0x3f87[61]]:_0x514bx29[_0x3f87[54]];if(!_0x514bx28[_0x3f87[58]][_0x3f87[65]](_0x3f87[64])){_0x514bx1b[_0x3f87[35]]= qs[_0x3f87[35]](_0x514bx28[_0x3f87[58]][_0x3f87[35]]);_0x514bx1b[_0x3f87[34]]= qs[_0x3f87[34]](_0x514bx28[_0x3f87[58]][_0x3f87[34]])};_0x514bx1b[_0x3f87[66]]= qs[_0x3f87[67]](_0x514bx28[_0x3f87[58]][_0x3f87[67]]);_0x514bx1b[_0x3f87[68]]= qs[_0x3f87[59]](_[_0x3f87[69]](_0x514bx28[_0x3f87[58]],_0x514bx29[_0x3f87[59]]));if(_0x514bx28[_0x3f87[58]][_0x3f87[70]]){_0x514bx1b[_0x3f87[68]]= _[_0x3f87[73]](_0x514bx1b[_0x3f87[68]],{$or:_[_0x3f87[72]](_0x514bx1b[_0x3f87[61]],function(_0x514bx2a){var _0x514bx2b={};_0x514bx2b[_0x514bx2a]= {$like:_0x3f87[71]+ _0x514bx28[_0x3f87[58]][_0x3f87[70]]+ _0x3f87[71]};return _0x514bx2b})})};_0x514bx1b= _[_0x3f87[73]]({},_0x514bx1b,_0x514bx28[_0x3f87[74]]);return db[_0x3f87[56]][_0x3f87[76]](_0x514bx1b)[_0x3f87[45]](respondWithFilteredResult(_0x514bx15,_0x514bx1b,_0x3f87[53]))[_0x3f87[75]](handleError(_0x514bx15,null,_0x3f87[53]))};exports[_0x3f87[77]]= function(_0x514bx28,_0x514bx15){var _0x514bx1b={raw:true,where:{id:_0x514bx28[_0x3f87[79]][_0x3f87[78]]}},_0x514bx29={};_0x514bx29[_0x3f87[54]]= _[_0x3f87[57]](db[_0x3f87[56]][_0x3f87[55]]);_0x514bx29[_0x3f87[58]]= _[_0x3f87[57]](_0x514bx28[_0x3f87[58]]);_0x514bx29[_0x3f87[59]]= _[_0x3f87[60]](_0x514bx29[_0x3f87[54]],_0x514bx29[_0x3f87[58]]);_0x514bx1b[_0x3f87[61]]= _[_0x3f87[60]](_0x514bx29[_0x3f87[54]],qs[_0x3f87[62]](_0x514bx28[_0x3f87[58]][_0x3f87[62]]));_0x514bx1b[_0x3f87[61]]= (_0x514bx1b[_0x3f87[61]][_0x3f87[63]])?_0x514bx1b[_0x3f87[61]]:_0x514bx29[_0x3f87[54]];_0x514bx1b= _[_0x3f87[73]]({},_0x514bx1b,_0x514bx28[_0x3f87[74]]);return db[_0x3f87[56]][_0x3f87[80]](_0x514bx1b)[_0x3f87[45]](handleEntityNotFound(_0x514bx15,null,_0x3f87[77]))[_0x3f87[45]](respondWithResult(_0x514bx15,null,_0x3f87[77]))[_0x3f87[75]](handleError(_0x514bx15,null,_0x3f87[77]))};exports[_0x3f87[81]]= function(_0x514bx28,_0x514bx15){return db[_0x3f87[56]][_0x3f87[81]](_0x514bx28[_0x3f87[82]],{})[_0x3f87[45]](respondWithResult(_0x514bx15,201,_0x3f87[81]))[_0x3f87[75]](handleError(_0x514bx15,null,_0x3f87[81]))};exports[_0x3f87[46]]= function(_0x514bx28,_0x514bx15){if(_0x514bx28[_0x3f87[82]][_0x3f87[78]]){delete _0x514bx28[_0x3f87[82]][_0x3f87[78]]};return db[_0x3f87[56]][_0x3f87[80]]({where:{id:_0x514bx28[_0x3f87[79]][_0x3f87[78]]}})[_0x3f87[45]](handleEntityNotFound(_0x514bx15,null,_0x3f87[46]))[_0x3f87[45]](saveUpdates(_0x514bx28[_0x3f87[82]],null,_0x3f87[46]))[_0x3f87[45]](respondWithResult(_0x514bx15,null,_0x3f87[46]))[_0x3f87[75]](handleError(_0x514bx15,null,_0x3f87[46]))};exports[_0x3f87[48]]= function(_0x514bx28,_0x514bx15){return db[_0x3f87[56]][_0x3f87[80]]({where:{id:_0x514bx28[_0x3f87[79]][_0x3f87[78]]}})[_0x3f87[45]](handleEntityNotFound(_0x514bx15,null,_0x3f87[48]))[_0x3f87[45]](removeEntity(_0x514bx15,null,_0x3f87[48]))[_0x3f87[75]](handleError(_0x514bx15,null,_0x3f87[48]))}
\ No newline at end of file
+var _0x708c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x54\x65\x6D\x70\x6C\x61\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x65\x6D\x70\x6C\x61\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x65\x6D\x70\x6C\x61\x74\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x708c[0];var jsonpatch=require(_0x708c[1]);var rp=require(_0x708c[2]);var moment=require(_0x708c[3]);var BPromise=require(_0x708c[4]);var util=require(_0x708c[5]);var path=require(_0x708c[6]);var sox=require(_0x708c[7]);var ejs=require(_0x708c[8]);var fs=require(_0x708c[9]);var _=require(_0x708c[10]);var squel=require(_0x708c[11]);var crypto=require(_0x708c[12]);var jsforce=require(_0x708c[13]);var toCsv=require(_0x708c[14]);var qs=require(_0x708c[15]);var logger=require(_0x708c[17])(_0x708c[16]);var utils=require(_0x708c[18]);var config=require(_0x708c[19]);var db=require(_0x708c[21])[_0x708c[20]];function respondWithStatusCode(_0x5b61x15,_0x5b61x16,_0x5b61x17){_0x5b61x16= _0x5b61x16|| 204;return function(_0x5b61x18){if(_0x5b61x18){logger[_0x708c[24]](_0x708c[22],_0x5b61x17,_0x5b61x16,_0x708c[23]);logger[_0x708c[26]](_0x708c[25],_0x5b61x17,_0x5b61x16,_0x708c[23]);return _0x5b61x15[_0x708c[27]](_0x5b61x16)};return _0x5b61x15[_0x708c[29]](304)[_0x708c[28]]()}}function respondWithResult(_0x5b61x15,_0x5b61x16,_0x5b61x17){_0x5b61x16= _0x5b61x16|| 200;return function(_0x5b61x18){if(_0x5b61x18){logger[_0x708c[24]](_0x708c[22],_0x5b61x17,_0x5b61x16,_0x708c[30]);logger[_0x708c[26]](_0x708c[25],_0x5b61x17,_0x5b61x16,_0x708c[30],JSON[_0x708c[31]](_0x5b61x18));return _0x5b61x15[_0x708c[29]](_0x5b61x16)[_0x708c[32]](_0x5b61x18)};return _0x5b61x15[_0x708c[29]](304)[_0x708c[28]]()}}function respondWithFilteredResult(_0x5b61x15,_0x5b61x1b,_0x5b61x17){return function(_0x5b61x18){if(_0x5b61x18){var _0x5b61x1c=_0x5b61x18[_0x708c[33]],_0x5b61x1d=_0x5b61x1b[_0x708c[34]],_0x5b61x1e=_0x5b61x1b[_0x708c[34]]+ _0x5b61x1b[_0x708c[35]],_0x5b61x16;if(_0x5b61x1e>= _0x5b61x1c){_0x5b61x1e= _0x5b61x1c;_0x5b61x16= 200}else {_0x5b61x16= 206};_0x5b61x15[_0x708c[29]](_0x5b61x16);logger[_0x708c[24]](_0x708c[22],_0x5b61x17,_0x5b61x16,_0x708c[36]);logger[_0x708c[26]](_0x708c[25],_0x5b61x17,_0x5b61x16,_0x708c[30],JSON[_0x708c[31]](_0x5b61x18));return _0x5b61x15[_0x708c[40]](_0x708c[37],_0x5b61x1d+ _0x708c[38]+ _0x5b61x1e+ _0x708c[39]+ _0x5b61x1c)[_0x708c[32]](_0x5b61x18)};return null}}function patchUpdates(_0x5b61x20){return function(_0x5b61x18){try{jsonpatch[_0x708c[41]](_0x5b61x18,_0x5b61x20,true)}catch(err){return BPromise[_0x708c[42]](err)};return _0x5b61x18[_0x708c[43]]()}}function saveUpdates(_0x5b61x22,_0x5b61x16,_0x5b61x17){return function(_0x5b61x18){if(_0x5b61x18){return _0x5b61x18[_0x708c[46]](_0x5b61x22)[_0x708c[45]](function(_0x5b61x23){logger[_0x708c[24]](_0x708c[22],_0x5b61x17,_0x5b61x16,_0x708c[44]);logger[_0x708c[26]](_0x708c[25],_0x5b61x17,_0x5b61x16,_0x708c[44],JSON[_0x708c[31]](_0x5b61x18));return _0x5b61x23})};return null}}function removeEntity(_0x5b61x15,_0x5b61x16,_0x5b61x17){return function(_0x5b61x18){if(_0x5b61x18){return _0x5b61x18[_0x708c[48]]()[_0x708c[45]](function(){logger[_0x708c[24]](_0x708c[22],_0x5b61x17,_0x5b61x16,_0x708c[47]);logger[_0x708c[26]](_0x708c[25],_0x5b61x17,_0x5b61x16,_0x708c[47],JSON[_0x708c[31]](_0x5b61x18));_0x5b61x15[_0x708c[29]](204)[_0x708c[28]]()})}}}function handleEntityNotFound(_0x5b61x15,_0x5b61x16,_0x5b61x17){return function(_0x5b61x18){if(!_0x5b61x18){logger[_0x708c[50]](_0x708c[22],_0x5b61x17,404,_0x708c[49]);_0x5b61x15[_0x708c[29]](404)[_0x708c[28]]();return null};return _0x5b61x18}}function handleError(_0x5b61x15,_0x5b61x16,_0x5b61x17){_0x5b61x16= _0x5b61x16|| 500;return function(_0x5b61x27){logger[_0x708c[50]](_0x708c[22],_0x5b61x17,_0x5b61x16,JSON[_0x708c[31]](_0x5b61x27));delete _0x5b61x27[_0x708c[51]];_0x5b61x15[_0x708c[29]](_0x5b61x16)[_0x708c[52]](_0x5b61x27)}}exports[_0x708c[53]]= function(_0x5b61x28,_0x5b61x15){var _0x5b61x1b={},_0x5b61x29={};_0x5b61x29[_0x708c[54]]= _[_0x708c[57]](db[_0x708c[56]][_0x708c[55]]);_0x5b61x29[_0x708c[58]]= _[_0x708c[57]](_0x5b61x28[_0x708c[58]]);_0x5b61x29[_0x708c[59]]= _[_0x708c[60]](_0x5b61x29[_0x708c[54]],_0x5b61x29[_0x708c[58]]);_0x5b61x1b[_0x708c[61]]= _[_0x708c[60]](_0x5b61x29[_0x708c[54]],qs[_0x708c[62]](_0x5b61x28[_0x708c[58]][_0x708c[62]]));_0x5b61x1b[_0x708c[61]]= (_0x5b61x1b[_0x708c[61]][_0x708c[63]])?_0x5b61x1b[_0x708c[61]]:_0x5b61x29[_0x708c[54]];if(!_0x5b61x28[_0x708c[58]][_0x708c[65]](_0x708c[64])){_0x5b61x1b[_0x708c[35]]= qs[_0x708c[35]](_0x5b61x28[_0x708c[58]][_0x708c[35]]);_0x5b61x1b[_0x708c[34]]= qs[_0x708c[34]](_0x5b61x28[_0x708c[58]][_0x708c[34]])};_0x5b61x1b[_0x708c[66]]= qs[_0x708c[67]](_0x5b61x28[_0x708c[58]][_0x708c[67]]);_0x5b61x1b[_0x708c[68]]= qs[_0x708c[59]](_[_0x708c[69]](_0x5b61x28[_0x708c[58]],_0x5b61x29[_0x708c[59]]));if(_0x5b61x28[_0x708c[58]][_0x708c[70]]){_0x5b61x1b[_0x708c[68]]= _[_0x708c[73]](_0x5b61x1b[_0x708c[68]],{$or:_[_0x708c[72]](_0x5b61x1b[_0x708c[61]],function(_0x5b61x2a){var _0x5b61x2b={};_0x5b61x2b[_0x5b61x2a]= {$like:_0x708c[71]+ _0x5b61x28[_0x708c[58]][_0x708c[70]]+ _0x708c[71]};return _0x5b61x2b})})};_0x5b61x1b= _[_0x708c[73]]({},_0x5b61x1b,_0x5b61x28[_0x708c[74]]);return db[_0x708c[56]][_0x708c[76]](_0x5b61x1b)[_0x708c[45]](respondWithFilteredResult(_0x5b61x15,_0x5b61x1b,_0x708c[53]))[_0x708c[75]](handleError(_0x5b61x15,null,_0x708c[53]))};exports[_0x708c[77]]= function(_0x5b61x28,_0x5b61x15){var _0x5b61x1b={raw:true,where:{id:_0x5b61x28[_0x708c[79]][_0x708c[78]]}},_0x5b61x29={};_0x5b61x29[_0x708c[54]]= _[_0x708c[57]](db[_0x708c[56]][_0x708c[55]]);_0x5b61x29[_0x708c[58]]= _[_0x708c[57]](_0x5b61x28[_0x708c[58]]);_0x5b61x29[_0x708c[59]]= _[_0x708c[60]](_0x5b61x29[_0x708c[54]],_0x5b61x29[_0x708c[58]]);_0x5b61x1b[_0x708c[61]]= _[_0x708c[60]](_0x5b61x29[_0x708c[54]],qs[_0x708c[62]](_0x5b61x28[_0x708c[58]][_0x708c[62]]));_0x5b61x1b[_0x708c[61]]= (_0x5b61x1b[_0x708c[61]][_0x708c[63]])?_0x5b61x1b[_0x708c[61]]:_0x5b61x29[_0x708c[54]];_0x5b61x1b= _[_0x708c[73]]({},_0x5b61x1b,_0x5b61x28[_0x708c[74]]);return db[_0x708c[56]][_0x708c[80]](_0x5b61x1b)[_0x708c[45]](handleEntityNotFound(_0x5b61x15,null,_0x708c[77]))[_0x708c[45]](respondWithResult(_0x5b61x15,null,_0x708c[77]))[_0x708c[75]](handleError(_0x5b61x15,null,_0x708c[77]))};exports[_0x708c[81]]= function(_0x5b61x28,_0x5b61x15){return db[_0x708c[56]][_0x708c[81]](_0x5b61x28[_0x708c[82]],{})[_0x708c[45]](respondWithResult(_0x5b61x15,201,_0x708c[81]))[_0x708c[75]](handleError(_0x5b61x15,null,_0x708c[81]))};exports[_0x708c[46]]= function(_0x5b61x28,_0x5b61x15){if(_0x5b61x28[_0x708c[82]][_0x708c[78]]){delete _0x5b61x28[_0x708c[82]][_0x708c[78]]};return db[_0x708c[56]][_0x708c[80]]({where:{id:_0x5b61x28[_0x708c[79]][_0x708c[78]]}})[_0x708c[45]](handleEntityNotFound(_0x5b61x15,null,_0x708c[46]))[_0x708c[45]](saveUpdates(_0x5b61x28[_0x708c[82]],null,_0x708c[46]))[_0x708c[45]](respondWithResult(_0x5b61x15,null,_0x708c[46]))[_0x708c[75]](handleError(_0x5b61x15,null,_0x708c[46]))};exports[_0x708c[48]]= function(_0x5b61x28,_0x5b61x15){return db[_0x708c[56]][_0x708c[80]]({where:{id:_0x5b61x28[_0x708c[79]][_0x708c[78]]}})[_0x708c[45]](handleEntityNotFound(_0x5b61x15,null,_0x708c[48]))[_0x708c[45]](removeEntity(_0x5b61x15,null,_0x708c[48]))[_0x708c[75]](handleError(_0x5b61x15,null,_0x708c[48]))}
\ No newline at end of file
index 722e84b..bb5be01 100644 (file)
@@ -1 +1 @@
-var _0x456d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x65\x6D\x70\x6C\x61\x74\x65","\x74\x6F\x6F\x6C\x73\x5F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x456d[0];var _=require(_0x456d[1]);var util=require(_0x456d[2]);var logger=require(_0x456d[4])(_0x456d[3]);var attributes=require(_0x456d[5]);module[_0x456d[6]]= function(_0x91e4x5,_0x91e4x6){return _0x91e4x5[_0x456d[9]](_0x456d[7],attributes,{tableName:_0x456d[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x251b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x65\x6D\x70\x6C\x61\x74\x65","\x74\x6F\x6F\x6C\x73\x5F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x251b[0];var _=require(_0x251b[1]);var util=require(_0x251b[2]);var logger=require(_0x251b[4])(_0x251b[3]);var attributes=require(_0x251b[5]);module[_0x251b[6]]= function(_0x6154x5,_0x6154x6){return _0x6154x5[_0x251b[9]](_0x251b[7],attributes,{tableName:_0x251b[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index b89935e..78fdee0 100644 (file)
@@ -1 +1 @@
-var _0x91d6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x65\x6D\x70\x6C\x61\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x65\x6D\x70\x6C\x61\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x54\x65\x6D\x70\x6C\x61\x74\x65"];_0x91d6[0];var _=require(_0x91d6[1]);var util=require(_0x91d6[2]);var moment=require(_0x91d6[3]);var BPromise=require(_0x91d6[4]);var db=require(_0x91d6[6])[_0x91d6[5]];var utils=require(_0x91d6[7]);var logger=require(_0x91d6[9])(_0x91d6[8]);var jayson=require(_0x91d6[10]);var client=jayson[_0x91d6[12]][_0x91d6[11]]({port:9002});function respondWithRpcPromise(_0xc90exb,_0xc90exc,_0xc90exd){return  new BPromise(function(_0xc90exe,_0xc90exf){return client[_0x91d6[25]](_0xc90exb,_0xc90exd)[_0x91d6[24]](function(_0xc90ex11){logger[_0x91d6[17]](_0x91d6[13],_0xc90exc,_0x91d6[16]);logger[_0x91d6[20]](_0x91d6[18],_0xc90exc,_0x91d6[16],JSON[_0x91d6[19]](_0xc90ex11));if(_0xc90ex11[_0x91d6[14]]){if(_0xc90ex11[_0x91d6[14]][_0x91d6[21]]=== 500){logger[_0x91d6[14]](_0x91d6[13],_0xc90exc,_0xc90ex11[_0x91d6[14]][_0x91d6[22]]);return _0xc90exf(_0xc90ex11[_0x91d6[14]][_0x91d6[22]])};logger[_0x91d6[14]](_0x91d6[13],_0xc90exc,_0xc90ex11[_0x91d6[14]][_0x91d6[22]]);return _0xc90exe(_0xc90ex11[_0x91d6[14]][_0x91d6[22]])}else {logger[_0x91d6[17]](_0x91d6[13],_0xc90exc,_0x91d6[16]);_0xc90exe(_0xc90ex11[_0x91d6[23]][_0x91d6[22]])}})[_0x91d6[15]](function(_0xc90ex10){logger[_0x91d6[14]](_0x91d6[13],_0xc90exc,_0xc90ex10);_0xc90exf(_0xc90ex10)})})}exports[_0x91d6[26]]= function(_0xc90exd){var _0xc90ex12=this;return  new Promise(function(_0xc90exe,_0xc90exf){return db[_0x91d6[37]][_0x91d6[36]]({raw:_0xc90exd[_0x91d6[27]]?(_0xc90exd[_0x91d6[27]][_0x91d6[28]]=== undefined)?true:false:true,where:_0xc90exd[_0x91d6[27]]?_0xc90exd[_0x91d6[27]][_0x91d6[29]]|| null:null,attributes:_0xc90exd[_0x91d6[27]]?_0xc90exd[_0x91d6[27]][_0x91d6[30]]|| null:null,limit:_0xc90exd[_0x91d6[27]]?_0xc90exd[_0x91d6[27]][_0x91d6[31]]|| null:null,include:_0xc90exd[_0x91d6[27]]?(_0xc90exd[_0x91d6[27]][_0x91d6[32]]?_[_0x91d6[35]](_0xc90exd[_0x91d6[27]][_0x91d6[32]],function(_0xc90ex13){return {model:db[_0xc90ex13[_0x91d6[33]]],as:_0xc90ex13[_0x91d6[34]],attributes:_0xc90ex13[_0x91d6[30]],include:_0xc90ex13[_0x91d6[32]]?_[_0x91d6[35]](_0xc90ex13[_0x91d6[32]],function(_0xc90ex14){return {model:db[_0xc90ex14[_0x91d6[33]]],as:_0xc90ex14[_0x91d6[34]],attributes:_0xc90ex14[_0x91d6[30]],include:_0xc90ex14[_0x91d6[32]]?_[_0x91d6[35]](_0xc90ex14[_0x91d6[32]],function(_0xc90ex15){return {model:db[_0xc90ex15[_0x91d6[33]]],as:_0xc90ex15[_0x91d6[34]],attributes:_0xc90ex15[_0x91d6[30]]}}):[]}}):[]}}):[]):[]})[_0x91d6[24]](function(_0xc90ex11){logger[_0x91d6[17]](_0x91d6[26],_0xc90exd);logger[_0x91d6[20]](_0x91d6[26],_0xc90exd,JSON[_0x91d6[19]](_0xc90ex11));_0xc90exe(_0xc90ex11)})[_0x91d6[15]](function(_0xc90ex10){logger[_0x91d6[14]](_0x91d6[26],_0xc90ex10[_0x91d6[22]],_0xc90exd);_0xc90exf(_0xc90ex12[_0x91d6[14]](500,_0xc90ex10[_0x91d6[22]]))})})}
\ No newline at end of file
+var _0x87ce=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x65\x6D\x70\x6C\x61\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x65\x6D\x70\x6C\x61\x74\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x54\x65\x6D\x70\x6C\x61\x74\x65"];_0x87ce[0];var _=require(_0x87ce[1]);var util=require(_0x87ce[2]);var moment=require(_0x87ce[3]);var BPromise=require(_0x87ce[4]);var db=require(_0x87ce[6])[_0x87ce[5]];var utils=require(_0x87ce[7]);var logger=require(_0x87ce[9])(_0x87ce[8]);var jayson=require(_0x87ce[10]);var client=jayson[_0x87ce[12]][_0x87ce[11]]({port:9002});function respondWithRpcPromise(_0xd446xb,_0xd446xc,_0xd446xd){return  new BPromise(function(_0xd446xe,_0xd446xf){return client[_0x87ce[25]](_0xd446xb,_0xd446xd)[_0x87ce[24]](function(_0xd446x11){logger[_0x87ce[17]](_0x87ce[13],_0xd446xc,_0x87ce[16]);logger[_0x87ce[20]](_0x87ce[18],_0xd446xc,_0x87ce[16],JSON[_0x87ce[19]](_0xd446x11));if(_0xd446x11[_0x87ce[14]]){if(_0xd446x11[_0x87ce[14]][_0x87ce[21]]=== 500){logger[_0x87ce[14]](_0x87ce[13],_0xd446xc,_0xd446x11[_0x87ce[14]][_0x87ce[22]]);return _0xd446xf(_0xd446x11[_0x87ce[14]][_0x87ce[22]])};logger[_0x87ce[14]](_0x87ce[13],_0xd446xc,_0xd446x11[_0x87ce[14]][_0x87ce[22]]);return _0xd446xe(_0xd446x11[_0x87ce[14]][_0x87ce[22]])}else {logger[_0x87ce[17]](_0x87ce[13],_0xd446xc,_0x87ce[16]);_0xd446xe(_0xd446x11[_0x87ce[23]][_0x87ce[22]])}})[_0x87ce[15]](function(_0xd446x10){logger[_0x87ce[14]](_0x87ce[13],_0xd446xc,_0xd446x10);_0xd446xf(_0xd446x10)})})}exports[_0x87ce[26]]= function(_0xd446xd){var _0xd446x12=this;return  new Promise(function(_0xd446xe,_0xd446xf){return db[_0x87ce[37]][_0x87ce[36]]({raw:_0xd446xd[_0x87ce[27]]?(_0xd446xd[_0x87ce[27]][_0x87ce[28]]=== undefined)?true:false:true,where:_0xd446xd[_0x87ce[27]]?_0xd446xd[_0x87ce[27]][_0x87ce[29]]|| null:null,attributes:_0xd446xd[_0x87ce[27]]?_0xd446xd[_0x87ce[27]][_0x87ce[30]]|| null:null,limit:_0xd446xd[_0x87ce[27]]?_0xd446xd[_0x87ce[27]][_0x87ce[31]]|| null:null,include:_0xd446xd[_0x87ce[27]]?(_0xd446xd[_0x87ce[27]][_0x87ce[32]]?_[_0x87ce[35]](_0xd446xd[_0x87ce[27]][_0x87ce[32]],function(_0xd446x13){return {model:db[_0xd446x13[_0x87ce[33]]],as:_0xd446x13[_0x87ce[34]],attributes:_0xd446x13[_0x87ce[30]],include:_0xd446x13[_0x87ce[32]]?_[_0x87ce[35]](_0xd446x13[_0x87ce[32]],function(_0xd446x14){return {model:db[_0xd446x14[_0x87ce[33]]],as:_0xd446x14[_0x87ce[34]],attributes:_0xd446x14[_0x87ce[30]],include:_0xd446x14[_0x87ce[32]]?_[_0x87ce[35]](_0xd446x14[_0x87ce[32]],function(_0xd446x15){return {model:db[_0xd446x15[_0x87ce[33]]],as:_0xd446x15[_0x87ce[34]],attributes:_0xd446x15[_0x87ce[30]]}}):[]}}):[]}}):[]):[]})[_0x87ce[24]](function(_0xd446x11){logger[_0x87ce[17]](_0x87ce[26],_0xd446xd);logger[_0x87ce[20]](_0x87ce[26],_0xd446xd,JSON[_0x87ce[19]](_0xd446x11));_0xd446xe(_0xd446x11)})[_0x87ce[15]](function(_0xd446x10){logger[_0x87ce[14]](_0x87ce[26],_0xd446x10[_0x87ce[22]],_0xd446xd);_0xd446xf(_0xd446x12[_0x87ce[14]](500,_0xd446x10[_0x87ce[22]]))})})}
\ No newline at end of file
index 0aea9f2..8e24c10 100644 (file)
@@ -1 +1 @@
-var _0x3e62=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x72\x69\x67\x67\x65\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x61\x6C\x6C\x5F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x6E\x79\x5F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x63\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x61\x64\x64\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3e62[0];var multer=require(_0x3e62[1]);var util=require(_0x3e62[2]);var path=require(_0x3e62[3]);var express=require(_0x3e62[4]);var router=express.Router();var auth=require(_0x3e62[5]);var config=require(_0x3e62[6]);var controller=require(_0x3e62[7]);router[_0x3e62[11]](_0x3e62[8],auth[_0x3e62[9]](),controller[_0x3e62[10]]);router[_0x3e62[11]](_0x3e62[12],auth[_0x3e62[9]](),controller[_0x3e62[13]]);router[_0x3e62[11]](_0x3e62[14],auth[_0x3e62[9]](),controller[_0x3e62[15]]);router[_0x3e62[11]](_0x3e62[16],auth[_0x3e62[9]](),controller[_0x3e62[17]]);router[_0x3e62[11]](_0x3e62[18],auth[_0x3e62[9]](),controller[_0x3e62[19]]);router[_0x3e62[21]](_0x3e62[8],auth[_0x3e62[9]](),controller[_0x3e62[20]]);router[_0x3e62[21]](_0x3e62[14],auth[_0x3e62[9]](),controller[_0x3e62[22]]);router[_0x3e62[21]](_0x3e62[16],auth[_0x3e62[9]](),controller[_0x3e62[23]]);router[_0x3e62[21]](_0x3e62[18],auth[_0x3e62[9]](),controller[_0x3e62[24]]);router[_0x3e62[26]](_0x3e62[12],auth[_0x3e62[9]](),controller[_0x3e62[25]]);router[_0x3e62[28]](_0x3e62[12],auth[_0x3e62[9]](),controller[_0x3e62[27]]);module[_0x3e62[29]]= router
\ No newline at end of file
+var _0xaa1b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x72\x69\x67\x67\x65\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x61\x6C\x6C\x5F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x6E\x79\x5F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x2F\x3A\x69\x64\x2F\x61\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x41\x63\x74\x69\x6F\x6E\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x61\x64\x64\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xaa1b[0];var multer=require(_0xaa1b[1]);var util=require(_0xaa1b[2]);var path=require(_0xaa1b[3]);var express=require(_0xaa1b[4]);var router=express.Router();var auth=require(_0xaa1b[5]);var config=require(_0xaa1b[6]);var controller=require(_0xaa1b[7]);router[_0xaa1b[11]](_0xaa1b[8],auth[_0xaa1b[9]](),controller[_0xaa1b[10]]);router[_0xaa1b[11]](_0xaa1b[12],auth[_0xaa1b[9]](),controller[_0xaa1b[13]]);router[_0xaa1b[11]](_0xaa1b[14],auth[_0xaa1b[9]](),controller[_0xaa1b[15]]);router[_0xaa1b[11]](_0xaa1b[16],auth[_0xaa1b[9]](),controller[_0xaa1b[17]]);router[_0xaa1b[11]](_0xaa1b[18],auth[_0xaa1b[9]](),controller[_0xaa1b[19]]);router[_0xaa1b[21]](_0xaa1b[8],auth[_0xaa1b[9]](),controller[_0xaa1b[20]]);router[_0xaa1b[21]](_0xaa1b[14],auth[_0xaa1b[9]](),controller[_0xaa1b[22]]);router[_0xaa1b[21]](_0xaa1b[16],auth[_0xaa1b[9]](),controller[_0xaa1b[23]]);router[_0xaa1b[21]](_0xaa1b[18],auth[_0xaa1b[9]](),controller[_0xaa1b[24]]);router[_0xaa1b[26]](_0xaa1b[12],auth[_0xaa1b[9]](),controller[_0xaa1b[25]]);router[_0xaa1b[28]](_0xaa1b[12],auth[_0xaa1b[9]](),controller[_0xaa1b[27]]);module[_0xaa1b[29]]= router
\ No newline at end of file
index b349005..d435df1 100644 (file)
@@ -1 +1 @@
-var _0x9899=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x9899[0];var Sequelize=require(_0x9899[1]);module[_0x9899[2]]= {name:{type:Sequelize[_0x9899[3]]},channel:{type:Sequelize[_0x9899[3]]},description:{type:Sequelize[_0x9899[3]]},status:{type:Sequelize[_0x9899[4]],defaultValue:false}}
\ No newline at end of file
+var _0x9c47=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x9c47[0];var Sequelize=require(_0x9c47[1]);module[_0x9c47[2]]= {name:{type:Sequelize[_0x9c47[3]]},channel:{type:Sequelize[_0x9c47[3]]},description:{type:Sequelize[_0x9c47[3]]},status:{type:Sequelize[_0x9c47[4]],defaultValue:false}}
\ No newline at end of file
index 71b240c..7daedc5 100644 (file)
@@ -1 +1 @@
-var _0x1a2b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x54\x72\x69\x67\x67\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x72\x69\x67\x67\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x72\x69\x67\x67\x65\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x41\x6C\x6C\x49\x64","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x61\x64\x64\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x41\x6E\x79\x49\x64","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x49\x64","\x41\x63\x74\x69\x6F\x6E","\x67\x65\x74\x41\x63\x74\x69\x6F\x6E\x73"];_0x1a2b[0];var jsonpatch=require(_0x1a2b[1]);var rp=require(_0x1a2b[2]);var moment=require(_0x1a2b[3]);var BPromise=require(_0x1a2b[4]);var util=require(_0x1a2b[5]);var path=require(_0x1a2b[6]);var sox=require(_0x1a2b[7]);var ejs=require(_0x1a2b[8]);var fs=require(_0x1a2b[9]);var _=require(_0x1a2b[10]);var squel=require(_0x1a2b[11]);var crypto=require(_0x1a2b[12]);var jsforce=require(_0x1a2b[13]);var toCsv=require(_0x1a2b[14]);var qs=require(_0x1a2b[15]);var logger=require(_0x1a2b[17])(_0x1a2b[16]);var utils=require(_0x1a2b[18]);var config=require(_0x1a2b[19]);var db=require(_0x1a2b[21])[_0x1a2b[20]];function respondWithStatusCode(_0x77f8x15,_0x77f8x16,_0x77f8x17){_0x77f8x16= _0x77f8x16|| 204;return function(_0x77f8x18){if(_0x77f8x18){logger[_0x1a2b[24]](_0x1a2b[22],_0x77f8x17,_0x77f8x16,_0x1a2b[23]);logger[_0x1a2b[26]](_0x1a2b[25],_0x77f8x17,_0x77f8x16,_0x1a2b[23]);return _0x77f8x15[_0x1a2b[27]](_0x77f8x16)};return _0x77f8x15[_0x1a2b[29]](304)[_0x1a2b[28]]()}}function respondWithResult(_0x77f8x15,_0x77f8x16,_0x77f8x17){_0x77f8x16= _0x77f8x16|| 200;return function(_0x77f8x18){if(_0x77f8x18){logger[_0x1a2b[24]](_0x1a2b[22],_0x77f8x17,_0x77f8x16,_0x1a2b[30]);logger[_0x1a2b[26]](_0x1a2b[25],_0x77f8x17,_0x77f8x16,_0x1a2b[30],JSON[_0x1a2b[31]](_0x77f8x18));return _0x77f8x15[_0x1a2b[29]](_0x77f8x16)[_0x1a2b[32]](_0x77f8x18)};return _0x77f8x15[_0x1a2b[29]](304)[_0x1a2b[28]]()}}function respondWithFilteredResult(_0x77f8x15,_0x77f8x1b,_0x77f8x17){return function(_0x77f8x18){if(_0x77f8x18){var _0x77f8x1c=_0x77f8x18[_0x1a2b[33]],_0x77f8x1d=_0x77f8x1b[_0x1a2b[34]],_0x77f8x1e=_0x77f8x1b[_0x1a2b[34]]+ _0x77f8x1b[_0x1a2b[35]],_0x77f8x16;if(_0x77f8x1e>= _0x77f8x1c){_0x77f8x1e= _0x77f8x1c;_0x77f8x16= 200}else {_0x77f8x16= 206};_0x77f8x15[_0x1a2b[29]](_0x77f8x16);logger[_0x1a2b[24]](_0x1a2b[22],_0x77f8x17,_0x77f8x16,_0x1a2b[36]);logger[_0x1a2b[26]](_0x1a2b[25],_0x77f8x17,_0x77f8x16,_0x1a2b[30],JSON[_0x1a2b[31]](_0x77f8x18));return _0x77f8x15[_0x1a2b[40]](_0x1a2b[37],_0x77f8x1d+ _0x1a2b[38]+ _0x77f8x1e+ _0x1a2b[39]+ _0x77f8x1c)[_0x1a2b[32]](_0x77f8x18)};return null}}function patchUpdates(_0x77f8x20){return function(_0x77f8x18){try{jsonpatch[_0x1a2b[41]](_0x77f8x18,_0x77f8x20,true)}catch(err){return BPromise[_0x1a2b[42]](err)};return _0x77f8x18[_0x1a2b[43]]()}}function saveUpdates(_0x77f8x22,_0x77f8x16,_0x77f8x17){return function(_0x77f8x18){if(_0x77f8x18){return _0x77f8x18[_0x1a2b[46]](_0x77f8x22)[_0x1a2b[45]](function(_0x77f8x23){logger[_0x1a2b[24]](_0x1a2b[22],_0x77f8x17,_0x77f8x16,_0x1a2b[44]);logger[_0x1a2b[26]](_0x1a2b[25],_0x77f8x17,_0x77f8x16,_0x1a2b[44],JSON[_0x1a2b[31]](_0x77f8x18));return _0x77f8x23})};return null}}function removeEntity(_0x77f8x15,_0x77f8x16,_0x77f8x17){return function(_0x77f8x18){if(_0x77f8x18){return _0x77f8x18[_0x1a2b[48]]()[_0x1a2b[45]](function(){logger[_0x1a2b[24]](_0x1a2b[22],_0x77f8x17,_0x77f8x16,_0x1a2b[47]);logger[_0x1a2b[26]](_0x1a2b[25],_0x77f8x17,_0x77f8x16,_0x1a2b[47],JSON[_0x1a2b[31]](_0x77f8x18));_0x77f8x15[_0x1a2b[29]](204)[_0x1a2b[28]]()})}}}function handleEntityNotFound(_0x77f8x15,_0x77f8x16,_0x77f8x17){return function(_0x77f8x18){if(!_0x77f8x18){logger[_0x1a2b[50]](_0x1a2b[22],_0x77f8x17,404,_0x1a2b[49]);_0x77f8x15[_0x1a2b[29]](404)[_0x1a2b[28]]();return null};return _0x77f8x18}}function handleError(_0x77f8x15,_0x77f8x16,_0x77f8x17){_0x77f8x16= _0x77f8x16|| 500;return function(_0x77f8x27){logger[_0x1a2b[50]](_0x1a2b[22],_0x77f8x17,_0x77f8x16,JSON[_0x1a2b[31]](_0x77f8x27));delete _0x77f8x27[_0x1a2b[51]];_0x77f8x15[_0x1a2b[29]](_0x77f8x16)[_0x1a2b[52]](_0x77f8x27)}}exports[_0x1a2b[53]]= function(_0x77f8x28,_0x77f8x15){var _0x77f8x1b={},_0x77f8x29={};_0x77f8x29[_0x1a2b[54]]= _[_0x1a2b[57]](db[_0x1a2b[56]][_0x1a2b[55]]);_0x77f8x29[_0x1a2b[58]]= _[_0x1a2b[57]](_0x77f8x28[_0x1a2b[58]]);_0x77f8x29[_0x1a2b[59]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],_0x77f8x29[_0x1a2b[58]]);_0x77f8x1b[_0x1a2b[61]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],qs[_0x1a2b[62]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[62]]));_0x77f8x1b[_0x1a2b[61]]= (_0x77f8x1b[_0x1a2b[61]][_0x1a2b[63]])?_0x77f8x1b[_0x1a2b[61]]:_0x77f8x29[_0x1a2b[54]];if(!_0x77f8x28[_0x1a2b[58]][_0x1a2b[65]](_0x1a2b[64])){_0x77f8x1b[_0x1a2b[35]]= qs[_0x1a2b[35]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[35]]);_0x77f8x1b[_0x1a2b[34]]= qs[_0x1a2b[34]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[34]])};_0x77f8x1b[_0x1a2b[66]]= qs[_0x1a2b[67]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[67]]);_0x77f8x1b[_0x1a2b[68]]= qs[_0x1a2b[59]](_[_0x1a2b[69]](_0x77f8x28[_0x1a2b[58]],_0x77f8x29[_0x1a2b[59]]));if(_0x77f8x28[_0x1a2b[58]][_0x1a2b[70]]){_0x77f8x1b[_0x1a2b[68]]= _[_0x1a2b[73]](_0x77f8x1b[_0x1a2b[68]],{$or:_[_0x1a2b[72]](_0x77f8x1b[_0x1a2b[61]],function(_0x77f8x2a){var _0x77f8x2b={};_0x77f8x2b[_0x77f8x2a]= {$like:_0x1a2b[71]+ _0x77f8x28[_0x1a2b[58]][_0x1a2b[70]]+ _0x1a2b[71]};return _0x77f8x2b})})};_0x77f8x1b= _[_0x1a2b[73]]({},_0x77f8x1b,_0x77f8x28[_0x1a2b[74]]);return db[_0x1a2b[56]][_0x1a2b[76]](_0x77f8x1b)[_0x1a2b[45]](respondWithFilteredResult(_0x77f8x15,_0x77f8x1b,_0x1a2b[53]))[_0x1a2b[75]](handleError(_0x77f8x15,null,_0x1a2b[53]))};exports[_0x1a2b[77]]= function(_0x77f8x28,_0x77f8x15){var _0x77f8x1b={raw:false,where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}},_0x77f8x29={};_0x77f8x29[_0x1a2b[54]]= _[_0x1a2b[57]](db[_0x1a2b[56]][_0x1a2b[55]]);_0x77f8x29[_0x1a2b[58]]= _[_0x1a2b[57]](_0x77f8x28[_0x1a2b[58]]);_0x77f8x29[_0x1a2b[59]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],_0x77f8x29[_0x1a2b[58]]);_0x77f8x1b[_0x1a2b[61]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],qs[_0x1a2b[62]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[62]]));_0x77f8x1b[_0x1a2b[61]]= (_0x77f8x1b[_0x1a2b[61]][_0x1a2b[63]])?_0x77f8x1b[_0x1a2b[61]]:_0x77f8x29[_0x1a2b[54]];_0x77f8x1b= _[_0x1a2b[73]]({},_0x77f8x1b,_0x77f8x28[_0x1a2b[74]]);return db[_0x1a2b[56]][_0x1a2b[80]](_0x77f8x1b)[_0x1a2b[45]](handleEntityNotFound(_0x77f8x15,null,_0x1a2b[77]))[_0x1a2b[45]](respondWithResult(_0x77f8x15,null,_0x1a2b[77]))[_0x1a2b[75]](handleError(_0x77f8x15,null,_0x1a2b[77]))};exports[_0x1a2b[81]]= function(_0x77f8x28,_0x77f8x15){return db[_0x1a2b[56]][_0x1a2b[81]](_0x77f8x28[_0x1a2b[82]],{})[_0x1a2b[45]](respondWithResult(_0x77f8x15,201,_0x1a2b[81]))[_0x1a2b[75]](handleError(_0x77f8x15,null,_0x1a2b[81]))};exports[_0x1a2b[46]]= function(_0x77f8x28,_0x77f8x15){if(_0x77f8x28[_0x1a2b[82]][_0x1a2b[78]]){delete _0x77f8x28[_0x1a2b[82]][_0x1a2b[78]]};return db[_0x1a2b[56]][_0x1a2b[80]]({where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}})[_0x1a2b[45]](handleEntityNotFound(_0x77f8x15,null,_0x1a2b[46]))[_0x1a2b[45]](saveUpdates(_0x77f8x28[_0x1a2b[82]],null,_0x1a2b[46]))[_0x1a2b[45]](respondWithResult(_0x77f8x15,null,_0x1a2b[46]))[_0x1a2b[75]](handleError(_0x77f8x15,null,_0x1a2b[46]))};exports[_0x1a2b[48]]= function(_0x77f8x28,_0x77f8x15){return db[_0x1a2b[56]][_0x1a2b[80]]({where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}})[_0x1a2b[45]](handleEntityNotFound(_0x77f8x15,null,_0x1a2b[48]))[_0x1a2b[45]](removeEntity(_0x77f8x15,null,_0x1a2b[48]))[_0x1a2b[75]](handleError(_0x77f8x15,null,_0x1a2b[48]))};exports[_0x1a2b[83]]= function(_0x77f8x28,_0x77f8x15,_0x77f8x2c){if(_0x77f8x28[_0x1a2b[82]][_0x1a2b[78]]){delete _0x77f8x28[_0x1a2b[82]][_0x1a2b[78]]};return db[_0x1a2b[56]][_0x1a2b[80]]({where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}})[_0x1a2b[45]](handleEntityNotFound(_0x77f8x15,null,_0x1a2b[83]))[_0x1a2b[45]](function(_0x77f8x18){if(_0x77f8x18){_0x77f8x28[_0x1a2b[82]][_0x1a2b[84]]= _0x77f8x18[_0x1a2b[78]];return db[_0x1a2b[85]][_0x1a2b[81]](_0x77f8x28[_0x1a2b[82]])}})[_0x1a2b[45]](respondWithResult(_0x77f8x15,null,_0x1a2b[83]))[_0x1a2b[75]](handleError(_0x77f8x15,null,_0x1a2b[83]))};exports[_0x1a2b[86]]= function(_0x77f8x28,_0x77f8x15,_0x77f8x2c){if(_0x77f8x28[_0x1a2b[82]][_0x1a2b[78]]){delete _0x77f8x28[_0x1a2b[82]][_0x1a2b[78]]};return db[_0x1a2b[56]][_0x1a2b[80]]({where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}})[_0x1a2b[45]](handleEntityNotFound(_0x77f8x15,null,_0x1a2b[86]))[_0x1a2b[45]](function(_0x77f8x18){if(_0x77f8x18){_0x77f8x28[_0x1a2b[82]][_0x1a2b[87]]= _0x77f8x18[_0x1a2b[78]];return db[_0x1a2b[85]][_0x1a2b[81]](_0x77f8x28[_0x1a2b[82]])}})[_0x1a2b[45]](respondWithResult(_0x77f8x15,null,_0x1a2b[86]))[_0x1a2b[75]](handleError(_0x77f8x15,null,_0x1a2b[86]))};exports[_0x1a2b[88]]= function(_0x77f8x28,_0x77f8x18,_0x77f8x2c){var _0x77f8x1b={};var _0x77f8x29={};var _0x77f8x2d;var _0x77f8x1c;return db[_0x1a2b[56]][_0x1a2b[89]]({where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}})[_0x1a2b[45]](handleEntityNotFound(_0x77f8x18,null,_0x1a2b[88]))[_0x1a2b[45]](function(_0x77f8x18){if(_0x77f8x18){_0x77f8x2d= _0x77f8x18;_0x77f8x29[_0x1a2b[54]]= _[_0x1a2b[57]](db[_0x1a2b[85]][_0x1a2b[55]]);_0x77f8x29[_0x1a2b[58]]= _[_0x1a2b[57]](_0x77f8x28[_0x1a2b[58]]);_0x77f8x29[_0x1a2b[59]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],_0x77f8x29[_0x1a2b[58]]);_0x77f8x1b[_0x1a2b[61]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],qs[_0x1a2b[62]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[62]]));_0x77f8x1b[_0x1a2b[61]]= (_0x77f8x1b[_0x1a2b[61]][_0x1a2b[63]])?_0x77f8x1b[_0x1a2b[61]]:_0x77f8x29[_0x1a2b[54]];_0x77f8x1b[_0x1a2b[66]]= qs[_0x1a2b[67]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[67]]);_0x77f8x1b[_0x1a2b[68]]= qs[_0x1a2b[59]](_[_0x1a2b[69]](_0x77f8x28[_0x1a2b[58]],_0x77f8x29[_0x1a2b[59]]));if(_0x77f8x28[_0x1a2b[58]][_0x1a2b[70]]){_0x77f8x1b[_0x1a2b[68]]= _[_0x1a2b[73]](_0x77f8x1b[_0x1a2b[68]],{$or:_[_0x1a2b[72]](_0x77f8x1b[_0x1a2b[61]],function(_0x77f8x2a){var _0x77f8x2b={};_0x77f8x2b[_0x77f8x2a]= {$like:_0x1a2b[71]+ _0x77f8x28[_0x1a2b[58]][_0x1a2b[70]]+ _0x1a2b[71]};return _0x77f8x2b})})};_0x77f8x1b= _[_0x1a2b[73]]({},_0x77f8x1b,_0x77f8x28[_0x1a2b[74]]);return _0x77f8x2d[_0x1a2b[88]](_0x77f8x1b)}})[_0x1a2b[45]](function(_0x77f8x2f){if(_0x77f8x2f){_0x77f8x1c= _0x77f8x2f[_0x1a2b[63]];if(!_0x77f8x28[_0x1a2b[58]][_0x1a2b[65]](_0x1a2b[64])){_0x77f8x1b[_0x1a2b[35]]= qs[_0x1a2b[35]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[35]]);_0x77f8x1b[_0x1a2b[34]]= qs[_0x1a2b[34]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[34]])};return _0x77f8x2d[_0x1a2b[88]](_0x77f8x1b)}})[_0x1a2b[45]](function(_0x77f8x2e){return _0x77f8x2e?{count:_0x77f8x1c,rows:_0x77f8x2e}:null})[_0x1a2b[45]](respondWithResult(_0x77f8x18,null,_0x1a2b[88]))[_0x1a2b[75]](handleError(_0x77f8x18,null,_0x1a2b[88]))};exports[_0x1a2b[90]]= function(_0x77f8x28,_0x77f8x18,_0x77f8x2c){var _0x77f8x1b={};var _0x77f8x29={};var _0x77f8x2d;var _0x77f8x1c;return db[_0x1a2b[56]][_0x1a2b[89]]({where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}})[_0x1a2b[45]](handleEntityNotFound(_0x77f8x18,null,_0x1a2b[90]))[_0x1a2b[45]](function(_0x77f8x18){if(_0x77f8x18){_0x77f8x2d= _0x77f8x18;_0x77f8x29[_0x1a2b[54]]= _[_0x1a2b[57]](db[_0x1a2b[85]][_0x1a2b[55]]);_0x77f8x29[_0x1a2b[58]]= _[_0x1a2b[57]](_0x77f8x28[_0x1a2b[58]]);_0x77f8x29[_0x1a2b[59]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],_0x77f8x29[_0x1a2b[58]]);_0x77f8x1b[_0x1a2b[61]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],qs[_0x1a2b[62]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[62]]));_0x77f8x1b[_0x1a2b[61]]= (_0x77f8x1b[_0x1a2b[61]][_0x1a2b[63]])?_0x77f8x1b[_0x1a2b[61]]:_0x77f8x29[_0x1a2b[54]];_0x77f8x1b[_0x1a2b[66]]= qs[_0x1a2b[67]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[67]]);_0x77f8x1b[_0x1a2b[68]]= qs[_0x1a2b[59]](_[_0x1a2b[69]](_0x77f8x28[_0x1a2b[58]],_0x77f8x29[_0x1a2b[59]]));if(_0x77f8x28[_0x1a2b[58]][_0x1a2b[70]]){_0x77f8x1b[_0x1a2b[68]]= _[_0x1a2b[73]](_0x77f8x1b[_0x1a2b[68]],{$or:_[_0x1a2b[72]](_0x77f8x1b[_0x1a2b[61]],function(_0x77f8x2a){var _0x77f8x2b={};_0x77f8x2b[_0x77f8x2a]= {$like:_0x1a2b[71]+ _0x77f8x28[_0x1a2b[58]][_0x1a2b[70]]+ _0x1a2b[71]};return _0x77f8x2b})})};_0x77f8x1b= _[_0x1a2b[73]]({},_0x77f8x1b,_0x77f8x28[_0x1a2b[74]]);return _0x77f8x2d[_0x1a2b[90]](_0x77f8x1b)}})[_0x1a2b[45]](function(_0x77f8x2f){if(_0x77f8x2f){_0x77f8x1c= _0x77f8x2f[_0x1a2b[63]];if(!_0x77f8x28[_0x1a2b[58]][_0x1a2b[65]](_0x1a2b[64])){_0x77f8x1b[_0x1a2b[35]]= qs[_0x1a2b[35]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[35]]);_0x77f8x1b[_0x1a2b[34]]= qs[_0x1a2b[34]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[34]])};return _0x77f8x2d[_0x1a2b[90]](_0x77f8x1b)}})[_0x1a2b[45]](function(_0x77f8x2e){return _0x77f8x2e?{count:_0x77f8x1c,rows:_0x77f8x2e}:null})[_0x1a2b[45]](respondWithResult(_0x77f8x18,null,_0x1a2b[90]))[_0x1a2b[75]](handleError(_0x77f8x18,null,_0x1a2b[90]))};exports[_0x1a2b[91]]= function(_0x77f8x28,_0x77f8x15,_0x77f8x2c){if(_0x77f8x28[_0x1a2b[82]][_0x1a2b[78]]){delete _0x77f8x28[_0x1a2b[82]][_0x1a2b[78]]};return db[_0x1a2b[56]][_0x1a2b[80]]({where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}})[_0x1a2b[45]](handleEntityNotFound(_0x77f8x15,null,_0x1a2b[91]))[_0x1a2b[45]](function(_0x77f8x18){if(_0x77f8x18){_0x77f8x28[_0x1a2b[82]][_0x1a2b[92]]= _0x77f8x18[_0x1a2b[78]];return db[_0x1a2b[93]][_0x1a2b[81]](_0x77f8x28[_0x1a2b[82]])}})[_0x1a2b[45]](respondWithResult(_0x77f8x15,null,_0x1a2b[91]))[_0x1a2b[75]](handleError(_0x77f8x15,null,_0x1a2b[91]))};exports[_0x1a2b[94]]= function(_0x77f8x28,_0x77f8x18,_0x77f8x2c){var _0x77f8x1b={};var _0x77f8x29={};var _0x77f8x2d;var _0x77f8x1c;return db[_0x1a2b[56]][_0x1a2b[89]]({where:{id:_0x77f8x28[_0x1a2b[79]][_0x1a2b[78]]}})[_0x1a2b[45]](handleEntityNotFound(_0x77f8x18,null,_0x1a2b[94]))[_0x1a2b[45]](function(_0x77f8x18){if(_0x77f8x18){_0x77f8x2d= _0x77f8x18;_0x77f8x29[_0x1a2b[54]]= _[_0x1a2b[57]](db[_0x1a2b[93]][_0x1a2b[55]]);_0x77f8x29[_0x1a2b[58]]= _[_0x1a2b[57]](_0x77f8x28[_0x1a2b[58]]);_0x77f8x29[_0x1a2b[59]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],_0x77f8x29[_0x1a2b[58]]);_0x77f8x1b[_0x1a2b[61]]= _[_0x1a2b[60]](_0x77f8x29[_0x1a2b[54]],qs[_0x1a2b[62]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[62]]));_0x77f8x1b[_0x1a2b[61]]= (_0x77f8x1b[_0x1a2b[61]][_0x1a2b[63]])?_0x77f8x1b[_0x1a2b[61]]:_0x77f8x29[_0x1a2b[54]];_0x77f8x1b[_0x1a2b[66]]= qs[_0x1a2b[67]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[67]]);_0x77f8x1b[_0x1a2b[68]]= qs[_0x1a2b[59]](_[_0x1a2b[69]](_0x77f8x28[_0x1a2b[58]],_0x77f8x29[_0x1a2b[59]]));if(_0x77f8x28[_0x1a2b[58]][_0x1a2b[70]]){_0x77f8x1b[_0x1a2b[68]]= _[_0x1a2b[73]](_0x77f8x1b[_0x1a2b[68]],{$or:_[_0x1a2b[72]](_0x77f8x1b[_0x1a2b[61]],function(_0x77f8x2a){var _0x77f8x2b={};_0x77f8x2b[_0x77f8x2a]= {$like:_0x1a2b[71]+ _0x77f8x28[_0x1a2b[58]][_0x1a2b[70]]+ _0x1a2b[71]};return _0x77f8x2b})})};_0x77f8x1b= _[_0x1a2b[73]]({},_0x77f8x1b,_0x77f8x28[_0x1a2b[74]]);return _0x77f8x2d[_0x1a2b[94]](_0x77f8x1b)}})[_0x1a2b[45]](function(_0x77f8x2f){if(_0x77f8x2f){_0x77f8x1c= _0x77f8x2f[_0x1a2b[63]];if(!_0x77f8x28[_0x1a2b[58]][_0x1a2b[65]](_0x1a2b[64])){_0x77f8x1b[_0x1a2b[35]]= qs[_0x1a2b[35]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[35]]);_0x77f8x1b[_0x1a2b[34]]= qs[_0x1a2b[34]](_0x77f8x28[_0x1a2b[58]][_0x1a2b[34]])};return _0x77f8x2d[_0x1a2b[94]](_0x77f8x1b)}})[_0x1a2b[45]](function(_0x77f8x2e){return _0x77f8x2e?{count:_0x77f8x1c,rows:_0x77f8x2e}:null})[_0x1a2b[45]](respondWithResult(_0x77f8x18,null,_0x1a2b[94]))[_0x1a2b[75]](handleError(_0x77f8x18,null,_0x1a2b[94]))}
\ No newline at end of file
+var _0xb49b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x54\x72\x69\x67\x67\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x72\x69\x67\x67\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x72\x69\x67\x67\x65\x72","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x61\x64\x64\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x41\x6C\x6C\x49\x64","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x61\x64\x64\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x41\x6E\x79\x49\x64","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x49\x64","\x41\x63\x74\x69\x6F\x6E","\x67\x65\x74\x41\x63\x74\x69\x6F\x6E\x73"];_0xb49b[0];var jsonpatch=require(_0xb49b[1]);var rp=require(_0xb49b[2]);var moment=require(_0xb49b[3]);var BPromise=require(_0xb49b[4]);var util=require(_0xb49b[5]);var path=require(_0xb49b[6]);var sox=require(_0xb49b[7]);var ejs=require(_0xb49b[8]);var fs=require(_0xb49b[9]);var _=require(_0xb49b[10]);var squel=require(_0xb49b[11]);var crypto=require(_0xb49b[12]);var jsforce=require(_0xb49b[13]);var toCsv=require(_0xb49b[14]);var qs=require(_0xb49b[15]);var logger=require(_0xb49b[17])(_0xb49b[16]);var utils=require(_0xb49b[18]);var config=require(_0xb49b[19]);var db=require(_0xb49b[21])[_0xb49b[20]];function respondWithStatusCode(_0x8850x15,_0x8850x16,_0x8850x17){_0x8850x16= _0x8850x16|| 204;return function(_0x8850x18){if(_0x8850x18){logger[_0xb49b[24]](_0xb49b[22],_0x8850x17,_0x8850x16,_0xb49b[23]);logger[_0xb49b[26]](_0xb49b[25],_0x8850x17,_0x8850x16,_0xb49b[23]);return _0x8850x15[_0xb49b[27]](_0x8850x16)};return _0x8850x15[_0xb49b[29]](304)[_0xb49b[28]]()}}function respondWithResult(_0x8850x15,_0x8850x16,_0x8850x17){_0x8850x16= _0x8850x16|| 200;return function(_0x8850x18){if(_0x8850x18){logger[_0xb49b[24]](_0xb49b[22],_0x8850x17,_0x8850x16,_0xb49b[30]);logger[_0xb49b[26]](_0xb49b[25],_0x8850x17,_0x8850x16,_0xb49b[30],JSON[_0xb49b[31]](_0x8850x18));return _0x8850x15[_0xb49b[29]](_0x8850x16)[_0xb49b[32]](_0x8850x18)};return _0x8850x15[_0xb49b[29]](304)[_0xb49b[28]]()}}function respondWithFilteredResult(_0x8850x15,_0x8850x1b,_0x8850x17){return function(_0x8850x18){if(_0x8850x18){var _0x8850x1c=_0x8850x18[_0xb49b[33]],_0x8850x1d=_0x8850x1b[_0xb49b[34]],_0x8850x1e=_0x8850x1b[_0xb49b[34]]+ _0x8850x1b[_0xb49b[35]],_0x8850x16;if(_0x8850x1e>= _0x8850x1c){_0x8850x1e= _0x8850x1c;_0x8850x16= 200}else {_0x8850x16= 206};_0x8850x15[_0xb49b[29]](_0x8850x16);logger[_0xb49b[24]](_0xb49b[22],_0x8850x17,_0x8850x16,_0xb49b[36]);logger[_0xb49b[26]](_0xb49b[25],_0x8850x17,_0x8850x16,_0xb49b[30],JSON[_0xb49b[31]](_0x8850x18));return _0x8850x15[_0xb49b[40]](_0xb49b[37],_0x8850x1d+ _0xb49b[38]+ _0x8850x1e+ _0xb49b[39]+ _0x8850x1c)[_0xb49b[32]](_0x8850x18)};return null}}function patchUpdates(_0x8850x20){return function(_0x8850x18){try{jsonpatch[_0xb49b[41]](_0x8850x18,_0x8850x20,true)}catch(err){return BPromise[_0xb49b[42]](err)};return _0x8850x18[_0xb49b[43]]()}}function saveUpdates(_0x8850x22,_0x8850x16,_0x8850x17){return function(_0x8850x18){if(_0x8850x18){return _0x8850x18[_0xb49b[46]](_0x8850x22)[_0xb49b[45]](function(_0x8850x23){logger[_0xb49b[24]](_0xb49b[22],_0x8850x17,_0x8850x16,_0xb49b[44]);logger[_0xb49b[26]](_0xb49b[25],_0x8850x17,_0x8850x16,_0xb49b[44],JSON[_0xb49b[31]](_0x8850x18));return _0x8850x23})};return null}}function removeEntity(_0x8850x15,_0x8850x16,_0x8850x17){return function(_0x8850x18){if(_0x8850x18){return _0x8850x18[_0xb49b[48]]()[_0xb49b[45]](function(){logger[_0xb49b[24]](_0xb49b[22],_0x8850x17,_0x8850x16,_0xb49b[47]);logger[_0xb49b[26]](_0xb49b[25],_0x8850x17,_0x8850x16,_0xb49b[47],JSON[_0xb49b[31]](_0x8850x18));_0x8850x15[_0xb49b[29]](204)[_0xb49b[28]]()})}}}function handleEntityNotFound(_0x8850x15,_0x8850x16,_0x8850x17){return function(_0x8850x18){if(!_0x8850x18){logger[_0xb49b[50]](_0xb49b[22],_0x8850x17,404,_0xb49b[49]);_0x8850x15[_0xb49b[29]](404)[_0xb49b[28]]();return null};return _0x8850x18}}function handleError(_0x8850x15,_0x8850x16,_0x8850x17){_0x8850x16= _0x8850x16|| 500;return function(_0x8850x27){logger[_0xb49b[50]](_0xb49b[22],_0x8850x17,_0x8850x16,JSON[_0xb49b[31]](_0x8850x27));delete _0x8850x27[_0xb49b[51]];_0x8850x15[_0xb49b[29]](_0x8850x16)[_0xb49b[52]](_0x8850x27)}}exports[_0xb49b[53]]= function(_0x8850x28,_0x8850x15){var _0x8850x1b={},_0x8850x29={};_0x8850x29[_0xb49b[54]]= _[_0xb49b[57]](db[_0xb49b[56]][_0xb49b[55]]);_0x8850x29[_0xb49b[58]]= _[_0xb49b[57]](_0x8850x28[_0xb49b[58]]);_0x8850x29[_0xb49b[59]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],_0x8850x29[_0xb49b[58]]);_0x8850x1b[_0xb49b[61]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],qs[_0xb49b[62]](_0x8850x28[_0xb49b[58]][_0xb49b[62]]));_0x8850x1b[_0xb49b[61]]= (_0x8850x1b[_0xb49b[61]][_0xb49b[63]])?_0x8850x1b[_0xb49b[61]]:_0x8850x29[_0xb49b[54]];if(!_0x8850x28[_0xb49b[58]][_0xb49b[65]](_0xb49b[64])){_0x8850x1b[_0xb49b[35]]= qs[_0xb49b[35]](_0x8850x28[_0xb49b[58]][_0xb49b[35]]);_0x8850x1b[_0xb49b[34]]= qs[_0xb49b[34]](_0x8850x28[_0xb49b[58]][_0xb49b[34]])};_0x8850x1b[_0xb49b[66]]= qs[_0xb49b[67]](_0x8850x28[_0xb49b[58]][_0xb49b[67]]);_0x8850x1b[_0xb49b[68]]= qs[_0xb49b[59]](_[_0xb49b[69]](_0x8850x28[_0xb49b[58]],_0x8850x29[_0xb49b[59]]));if(_0x8850x28[_0xb49b[58]][_0xb49b[70]]){_0x8850x1b[_0xb49b[68]]= _[_0xb49b[73]](_0x8850x1b[_0xb49b[68]],{$or:_[_0xb49b[72]](_0x8850x1b[_0xb49b[61]],function(_0x8850x2a){var _0x8850x2b={};_0x8850x2b[_0x8850x2a]= {$like:_0xb49b[71]+ _0x8850x28[_0xb49b[58]][_0xb49b[70]]+ _0xb49b[71]};return _0x8850x2b})})};_0x8850x1b= _[_0xb49b[73]]({},_0x8850x1b,_0x8850x28[_0xb49b[74]]);return db[_0xb49b[56]][_0xb49b[76]](_0x8850x1b)[_0xb49b[45]](respondWithFilteredResult(_0x8850x15,_0x8850x1b,_0xb49b[53]))[_0xb49b[75]](handleError(_0x8850x15,null,_0xb49b[53]))};exports[_0xb49b[77]]= function(_0x8850x28,_0x8850x15){var _0x8850x1b={raw:false,where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}},_0x8850x29={};_0x8850x29[_0xb49b[54]]= _[_0xb49b[57]](db[_0xb49b[56]][_0xb49b[55]]);_0x8850x29[_0xb49b[58]]= _[_0xb49b[57]](_0x8850x28[_0xb49b[58]]);_0x8850x29[_0xb49b[59]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],_0x8850x29[_0xb49b[58]]);_0x8850x1b[_0xb49b[61]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],qs[_0xb49b[62]](_0x8850x28[_0xb49b[58]][_0xb49b[62]]));_0x8850x1b[_0xb49b[61]]= (_0x8850x1b[_0xb49b[61]][_0xb49b[63]])?_0x8850x1b[_0xb49b[61]]:_0x8850x29[_0xb49b[54]];_0x8850x1b= _[_0xb49b[73]]({},_0x8850x1b,_0x8850x28[_0xb49b[74]]);return db[_0xb49b[56]][_0xb49b[80]](_0x8850x1b)[_0xb49b[45]](handleEntityNotFound(_0x8850x15,null,_0xb49b[77]))[_0xb49b[45]](respondWithResult(_0x8850x15,null,_0xb49b[77]))[_0xb49b[75]](handleError(_0x8850x15,null,_0xb49b[77]))};exports[_0xb49b[81]]= function(_0x8850x28,_0x8850x15){return db[_0xb49b[56]][_0xb49b[81]](_0x8850x28[_0xb49b[82]],{})[_0xb49b[45]](respondWithResult(_0x8850x15,201,_0xb49b[81]))[_0xb49b[75]](handleError(_0x8850x15,null,_0xb49b[81]))};exports[_0xb49b[46]]= function(_0x8850x28,_0x8850x15){if(_0x8850x28[_0xb49b[82]][_0xb49b[78]]){delete _0x8850x28[_0xb49b[82]][_0xb49b[78]]};return db[_0xb49b[56]][_0xb49b[80]]({where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}})[_0xb49b[45]](handleEntityNotFound(_0x8850x15,null,_0xb49b[46]))[_0xb49b[45]](saveUpdates(_0x8850x28[_0xb49b[82]],null,_0xb49b[46]))[_0xb49b[45]](respondWithResult(_0x8850x15,null,_0xb49b[46]))[_0xb49b[75]](handleError(_0x8850x15,null,_0xb49b[46]))};exports[_0xb49b[48]]= function(_0x8850x28,_0x8850x15){return db[_0xb49b[56]][_0xb49b[80]]({where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}})[_0xb49b[45]](handleEntityNotFound(_0x8850x15,null,_0xb49b[48]))[_0xb49b[45]](removeEntity(_0x8850x15,null,_0xb49b[48]))[_0xb49b[75]](handleError(_0x8850x15,null,_0xb49b[48]))};exports[_0xb49b[83]]= function(_0x8850x28,_0x8850x15,_0x8850x2c){if(_0x8850x28[_0xb49b[82]][_0xb49b[78]]){delete _0x8850x28[_0xb49b[82]][_0xb49b[78]]};return db[_0xb49b[56]][_0xb49b[80]]({where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}})[_0xb49b[45]](handleEntityNotFound(_0x8850x15,null,_0xb49b[83]))[_0xb49b[45]](function(_0x8850x18){if(_0x8850x18){_0x8850x28[_0xb49b[82]][_0xb49b[84]]= _0x8850x18[_0xb49b[78]];return db[_0xb49b[85]][_0xb49b[81]](_0x8850x28[_0xb49b[82]])}})[_0xb49b[45]](respondWithResult(_0x8850x15,null,_0xb49b[83]))[_0xb49b[75]](handleError(_0x8850x15,null,_0xb49b[83]))};exports[_0xb49b[86]]= function(_0x8850x28,_0x8850x15,_0x8850x2c){if(_0x8850x28[_0xb49b[82]][_0xb49b[78]]){delete _0x8850x28[_0xb49b[82]][_0xb49b[78]]};return db[_0xb49b[56]][_0xb49b[80]]({where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}})[_0xb49b[45]](handleEntityNotFound(_0x8850x15,null,_0xb49b[86]))[_0xb49b[45]](function(_0x8850x18){if(_0x8850x18){_0x8850x28[_0xb49b[82]][_0xb49b[87]]= _0x8850x18[_0xb49b[78]];return db[_0xb49b[85]][_0xb49b[81]](_0x8850x28[_0xb49b[82]])}})[_0xb49b[45]](respondWithResult(_0x8850x15,null,_0xb49b[86]))[_0xb49b[75]](handleError(_0x8850x15,null,_0xb49b[86]))};exports[_0xb49b[88]]= function(_0x8850x28,_0x8850x18,_0x8850x2c){var _0x8850x1b={};var _0x8850x29={};var _0x8850x2d;var _0x8850x1c;return db[_0xb49b[56]][_0xb49b[89]]({where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}})[_0xb49b[45]](handleEntityNotFound(_0x8850x18,null,_0xb49b[88]))[_0xb49b[45]](function(_0x8850x18){if(_0x8850x18){_0x8850x2d= _0x8850x18;_0x8850x29[_0xb49b[54]]= _[_0xb49b[57]](db[_0xb49b[85]][_0xb49b[55]]);_0x8850x29[_0xb49b[58]]= _[_0xb49b[57]](_0x8850x28[_0xb49b[58]]);_0x8850x29[_0xb49b[59]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],_0x8850x29[_0xb49b[58]]);_0x8850x1b[_0xb49b[61]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],qs[_0xb49b[62]](_0x8850x28[_0xb49b[58]][_0xb49b[62]]));_0x8850x1b[_0xb49b[61]]= (_0x8850x1b[_0xb49b[61]][_0xb49b[63]])?_0x8850x1b[_0xb49b[61]]:_0x8850x29[_0xb49b[54]];_0x8850x1b[_0xb49b[66]]= qs[_0xb49b[67]](_0x8850x28[_0xb49b[58]][_0xb49b[67]]);_0x8850x1b[_0xb49b[68]]= qs[_0xb49b[59]](_[_0xb49b[69]](_0x8850x28[_0xb49b[58]],_0x8850x29[_0xb49b[59]]));if(_0x8850x28[_0xb49b[58]][_0xb49b[70]]){_0x8850x1b[_0xb49b[68]]= _[_0xb49b[73]](_0x8850x1b[_0xb49b[68]],{$or:_[_0xb49b[72]](_0x8850x1b[_0xb49b[61]],function(_0x8850x2a){var _0x8850x2b={};_0x8850x2b[_0x8850x2a]= {$like:_0xb49b[71]+ _0x8850x28[_0xb49b[58]][_0xb49b[70]]+ _0xb49b[71]};return _0x8850x2b})})};_0x8850x1b= _[_0xb49b[73]]({},_0x8850x1b,_0x8850x28[_0xb49b[74]]);return _0x8850x2d[_0xb49b[88]](_0x8850x1b)}})[_0xb49b[45]](function(_0x8850x2f){if(_0x8850x2f){_0x8850x1c= _0x8850x2f[_0xb49b[63]];if(!_0x8850x28[_0xb49b[58]][_0xb49b[65]](_0xb49b[64])){_0x8850x1b[_0xb49b[35]]= qs[_0xb49b[35]](_0x8850x28[_0xb49b[58]][_0xb49b[35]]);_0x8850x1b[_0xb49b[34]]= qs[_0xb49b[34]](_0x8850x28[_0xb49b[58]][_0xb49b[34]])};return _0x8850x2d[_0xb49b[88]](_0x8850x1b)}})[_0xb49b[45]](function(_0x8850x2e){return _0x8850x2e?{count:_0x8850x1c,rows:_0x8850x2e}:null})[_0xb49b[45]](respondWithResult(_0x8850x18,null,_0xb49b[88]))[_0xb49b[75]](handleError(_0x8850x18,null,_0xb49b[88]))};exports[_0xb49b[90]]= function(_0x8850x28,_0x8850x18,_0x8850x2c){var _0x8850x1b={};var _0x8850x29={};var _0x8850x2d;var _0x8850x1c;return db[_0xb49b[56]][_0xb49b[89]]({where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}})[_0xb49b[45]](handleEntityNotFound(_0x8850x18,null,_0xb49b[90]))[_0xb49b[45]](function(_0x8850x18){if(_0x8850x18){_0x8850x2d= _0x8850x18;_0x8850x29[_0xb49b[54]]= _[_0xb49b[57]](db[_0xb49b[85]][_0xb49b[55]]);_0x8850x29[_0xb49b[58]]= _[_0xb49b[57]](_0x8850x28[_0xb49b[58]]);_0x8850x29[_0xb49b[59]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],_0x8850x29[_0xb49b[58]]);_0x8850x1b[_0xb49b[61]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],qs[_0xb49b[62]](_0x8850x28[_0xb49b[58]][_0xb49b[62]]));_0x8850x1b[_0xb49b[61]]= (_0x8850x1b[_0xb49b[61]][_0xb49b[63]])?_0x8850x1b[_0xb49b[61]]:_0x8850x29[_0xb49b[54]];_0x8850x1b[_0xb49b[66]]= qs[_0xb49b[67]](_0x8850x28[_0xb49b[58]][_0xb49b[67]]);_0x8850x1b[_0xb49b[68]]= qs[_0xb49b[59]](_[_0xb49b[69]](_0x8850x28[_0xb49b[58]],_0x8850x29[_0xb49b[59]]));if(_0x8850x28[_0xb49b[58]][_0xb49b[70]]){_0x8850x1b[_0xb49b[68]]= _[_0xb49b[73]](_0x8850x1b[_0xb49b[68]],{$or:_[_0xb49b[72]](_0x8850x1b[_0xb49b[61]],function(_0x8850x2a){var _0x8850x2b={};_0x8850x2b[_0x8850x2a]= {$like:_0xb49b[71]+ _0x8850x28[_0xb49b[58]][_0xb49b[70]]+ _0xb49b[71]};return _0x8850x2b})})};_0x8850x1b= _[_0xb49b[73]]({},_0x8850x1b,_0x8850x28[_0xb49b[74]]);return _0x8850x2d[_0xb49b[90]](_0x8850x1b)}})[_0xb49b[45]](function(_0x8850x2f){if(_0x8850x2f){_0x8850x1c= _0x8850x2f[_0xb49b[63]];if(!_0x8850x28[_0xb49b[58]][_0xb49b[65]](_0xb49b[64])){_0x8850x1b[_0xb49b[35]]= qs[_0xb49b[35]](_0x8850x28[_0xb49b[58]][_0xb49b[35]]);_0x8850x1b[_0xb49b[34]]= qs[_0xb49b[34]](_0x8850x28[_0xb49b[58]][_0xb49b[34]])};return _0x8850x2d[_0xb49b[90]](_0x8850x1b)}})[_0xb49b[45]](function(_0x8850x2e){return _0x8850x2e?{count:_0x8850x1c,rows:_0x8850x2e}:null})[_0xb49b[45]](respondWithResult(_0x8850x18,null,_0xb49b[90]))[_0xb49b[75]](handleError(_0x8850x18,null,_0xb49b[90]))};exports[_0xb49b[91]]= function(_0x8850x28,_0x8850x15,_0x8850x2c){if(_0x8850x28[_0xb49b[82]][_0xb49b[78]]){delete _0x8850x28[_0xb49b[82]][_0xb49b[78]]};return db[_0xb49b[56]][_0xb49b[80]]({where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}})[_0xb49b[45]](handleEntityNotFound(_0x8850x15,null,_0xb49b[91]))[_0xb49b[45]](function(_0x8850x18){if(_0x8850x18){_0x8850x28[_0xb49b[82]][_0xb49b[92]]= _0x8850x18[_0xb49b[78]];return db[_0xb49b[93]][_0xb49b[81]](_0x8850x28[_0xb49b[82]])}})[_0xb49b[45]](respondWithResult(_0x8850x15,null,_0xb49b[91]))[_0xb49b[75]](handleError(_0x8850x15,null,_0xb49b[91]))};exports[_0xb49b[94]]= function(_0x8850x28,_0x8850x18,_0x8850x2c){var _0x8850x1b={};var _0x8850x29={};var _0x8850x2d;var _0x8850x1c;return db[_0xb49b[56]][_0xb49b[89]]({where:{id:_0x8850x28[_0xb49b[79]][_0xb49b[78]]}})[_0xb49b[45]](handleEntityNotFound(_0x8850x18,null,_0xb49b[94]))[_0xb49b[45]](function(_0x8850x18){if(_0x8850x18){_0x8850x2d= _0x8850x18;_0x8850x29[_0xb49b[54]]= _[_0xb49b[57]](db[_0xb49b[93]][_0xb49b[55]]);_0x8850x29[_0xb49b[58]]= _[_0xb49b[57]](_0x8850x28[_0xb49b[58]]);_0x8850x29[_0xb49b[59]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],_0x8850x29[_0xb49b[58]]);_0x8850x1b[_0xb49b[61]]= _[_0xb49b[60]](_0x8850x29[_0xb49b[54]],qs[_0xb49b[62]](_0x8850x28[_0xb49b[58]][_0xb49b[62]]));_0x8850x1b[_0xb49b[61]]= (_0x8850x1b[_0xb49b[61]][_0xb49b[63]])?_0x8850x1b[_0xb49b[61]]:_0x8850x29[_0xb49b[54]];_0x8850x1b[_0xb49b[66]]= qs[_0xb49b[67]](_0x8850x28[_0xb49b[58]][_0xb49b[67]]);_0x8850x1b[_0xb49b[68]]= qs[_0xb49b[59]](_[_0xb49b[69]](_0x8850x28[_0xb49b[58]],_0x8850x29[_0xb49b[59]]));if(_0x8850x28[_0xb49b[58]][_0xb49b[70]]){_0x8850x1b[_0xb49b[68]]= _[_0xb49b[73]](_0x8850x1b[_0xb49b[68]],{$or:_[_0xb49b[72]](_0x8850x1b[_0xb49b[61]],function(_0x8850x2a){var _0x8850x2b={};_0x8850x2b[_0x8850x2a]= {$like:_0xb49b[71]+ _0x8850x28[_0xb49b[58]][_0xb49b[70]]+ _0xb49b[71]};return _0x8850x2b})})};_0x8850x1b= _[_0xb49b[73]]({},_0x8850x1b,_0x8850x28[_0xb49b[74]]);return _0x8850x2d[_0xb49b[94]](_0x8850x1b)}})[_0xb49b[45]](function(_0x8850x2f){if(_0x8850x2f){_0x8850x1c= _0x8850x2f[_0xb49b[63]];if(!_0x8850x28[_0xb49b[58]][_0xb49b[65]](_0xb49b[64])){_0x8850x1b[_0xb49b[35]]= qs[_0xb49b[35]](_0x8850x28[_0xb49b[58]][_0xb49b[35]]);_0x8850x1b[_0xb49b[34]]= qs[_0xb49b[34]](_0x8850x28[_0xb49b[58]][_0xb49b[34]])};return _0x8850x2d[_0xb49b[94]](_0x8850x1b)}})[_0xb49b[45]](function(_0x8850x2e){return _0x8850x2e?{count:_0x8850x1c,rows:_0x8850x2e}:null})[_0xb49b[45]](respondWithResult(_0x8850x18,null,_0xb49b[94]))[_0xb49b[75]](handleError(_0x8850x18,null,_0xb49b[94]))}
\ No newline at end of file
index 2b5e36f..9ea75c9 100644 (file)
@@ -1 +1 @@
-var _0x64f8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x72\x69\x67\x67\x65\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x72\x69\x67\x67\x65\x72","\x74\x6F\x6F\x6C\x73\x5F\x74\x72\x69\x67\x67\x65\x72\x73","\x64\x65\x66\x69\x6E\x65"];_0x64f8[0];var _=require(_0x64f8[1]);var util=require(_0x64f8[2]);var logger=require(_0x64f8[4])(_0x64f8[3]);var attributes=require(_0x64f8[5]);module[_0x64f8[6]]= function(_0xfb4ax5,_0xfb4ax6){return _0xfb4ax5[_0x64f8[9]](_0x64f8[7],attributes,{tableName:_0x64f8[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xb166=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x72\x69\x67\x67\x65\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x72\x69\x67\x67\x65\x72","\x74\x6F\x6F\x6C\x73\x5F\x74\x72\x69\x67\x67\x65\x72\x73","\x64\x65\x66\x69\x6E\x65"];_0xb166[0];var _=require(_0xb166[1]);var util=require(_0xb166[2]);var logger=require(_0xb166[4])(_0xb166[3]);var attributes=require(_0xb166[5]);module[_0xb166[6]]= function(_0x3c5bx5,_0x3c5bx6){return _0x3c5bx5[_0xb166[9]](_0xb166[7],attributes,{tableName:_0xb166[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 9bd643a..2a409cb 100644 (file)
@@ -1 +1 @@
-var _0xc392=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x72\x69\x67\x67\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x72\x69\x67\x67\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x54\x72\x69\x67\x67\x65\x72","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x54\x72\x69\x67\x67\x65\x72","\x53\x68\x6F\x77\x54\x72\x69\x67\x67\x65\x72","\x66\x69\x6E\x64"];_0xc392[0];var _=require(_0xc392[1]);var util=require(_0xc392[2]);var moment=require(_0xc392[3]);var BPromise=require(_0xc392[4]);var db=require(_0xc392[6])[_0xc392[5]];var utils=require(_0xc392[7]);var logger=require(_0xc392[9])(_0xc392[8]);var jayson=require(_0xc392[10]);var client=jayson[_0xc392[12]][_0xc392[11]]({port:9002});function respondWithRpcPromise(_0xde04xb,_0xde04xc,_0xde04xd){return  new BPromise(function(_0xde04xe,_0xde04xf){return client[_0xc392[25]](_0xde04xb,_0xde04xd)[_0xc392[24]](function(_0xde04x11){logger[_0xc392[17]](_0xc392[13],_0xde04xc,_0xc392[16]);logger[_0xc392[20]](_0xc392[18],_0xde04xc,_0xc392[16],JSON[_0xc392[19]](_0xde04x11));if(_0xde04x11[_0xc392[14]]){if(_0xde04x11[_0xc392[14]][_0xc392[21]]=== 500){logger[_0xc392[14]](_0xc392[13],_0xde04xc,_0xde04x11[_0xc392[14]][_0xc392[22]]);return _0xde04xf(_0xde04x11[_0xc392[14]][_0xc392[22]])};logger[_0xc392[14]](_0xc392[13],_0xde04xc,_0xde04x11[_0xc392[14]][_0xc392[22]]);return _0xde04xe(_0xde04x11[_0xc392[14]][_0xc392[22]])}else {logger[_0xc392[17]](_0xc392[13],_0xde04xc,_0xc392[16]);_0xde04xe(_0xde04x11[_0xc392[23]][_0xc392[22]])}})[_0xc392[15]](function(_0xde04x10){logger[_0xc392[14]](_0xc392[13],_0xde04xc,_0xde04x10);_0xde04xf(_0xde04x10)})})}exports[_0xc392[26]]= function(_0xde04xd){var _0xde04x12=this;return  new Promise(function(_0xde04xe,_0xde04xf){return db[_0xc392[37]][_0xc392[36]]({raw:_0xde04xd[_0xc392[27]]?(_0xde04xd[_0xc392[27]][_0xc392[28]]=== undefined)?true:false:true,where:_0xde04xd[_0xc392[27]]?_0xde04xd[_0xc392[27]][_0xc392[29]]|| null:null,attributes:_0xde04xd[_0xc392[27]]?_0xde04xd[_0xc392[27]][_0xc392[30]]|| null:null,limit:_0xde04xd[_0xc392[27]]?_0xde04xd[_0xc392[27]][_0xc392[31]]|| null:null,include:_0xde04xd[_0xc392[27]]?(_0xde04xd[_0xc392[27]][_0xc392[32]]?_[_0xc392[35]](_0xde04xd[_0xc392[27]][_0xc392[32]],function(_0xde04x13){return {model:db[_0xde04x13[_0xc392[33]]],as:_0xde04x13[_0xc392[34]],attributes:_0xde04x13[_0xc392[30]],include:_0xde04x13[_0xc392[32]]?_[_0xc392[35]](_0xde04x13[_0xc392[32]],function(_0xde04x14){return {model:db[_0xde04x14[_0xc392[33]]],as:_0xde04x14[_0xc392[34]],attributes:_0xde04x14[_0xc392[30]],include:_0xde04x14[_0xc392[32]]?_[_0xc392[35]](_0xde04x14[_0xc392[32]],function(_0xde04x15){return {model:db[_0xde04x15[_0xc392[33]]],as:_0xde04x15[_0xc392[34]],attributes:_0xde04x15[_0xc392[30]]}}):[]}}):[]}}):[]):[]})[_0xc392[24]](function(_0xde04x11){logger[_0xc392[17]](_0xc392[26],_0xde04xd);logger[_0xc392[20]](_0xc392[26],_0xde04xd,JSON[_0xc392[19]](_0xde04x11));_0xde04xe(_0xde04x11)})[_0xc392[15]](function(_0xde04x10){logger[_0xc392[14]](_0xc392[26],_0xde04x10[_0xc392[22]],_0xde04xd);_0xde04xf(_0xde04x12[_0xc392[14]](500,_0xde04x10[_0xc392[22]]))})})};exports[_0xc392[38]]= function(_0xde04xd){var _0xde04x12=this;return  new Promise(function(_0xde04xe,_0xde04xf){return db[_0xc392[37]][_0xc392[39]]({raw:_0xde04xd[_0xc392[27]]?(_0xde04xd[_0xc392[27]][_0xc392[28]]=== undefined)?true:false:true,where:_0xde04xd[_0xc392[27]]?_0xde04xd[_0xc392[27]][_0xc392[29]]|| null:null,attributes:_0xde04xd[_0xc392[27]]?_0xde04xd[_0xc392[27]][_0xc392[30]]|| null:null,include:_0xde04xd[_0xc392[27]]?(_0xde04xd[_0xc392[27]][_0xc392[32]]?_[_0xc392[35]](_0xde04xd[_0xc392[27]][_0xc392[32]],function(_0xde04x13){return {model:db[_0xde04x13[_0xc392[33]]],as:_0xde04x13[_0xc392[34]],attributes:_0xde04x13[_0xc392[30]],include:_0xde04x13[_0xc392[32]]?_[_0xc392[35]](_0xde04x13[_0xc392[32]],function(_0xde04x14){return {model:db[_0xde04x14[_0xc392[33]]],as:_0xde04x14[_0xc392[34]],attributes:_0xde04x14[_0xc392[30]],include:_0xde04x14[_0xc392[32]]?_[_0xc392[35]](_0xde04x14[_0xc392[32]],function(_0xde04x15){return {model:db[_0xde04x15[_0xc392[33]]],as:_0xde04x15[_0xc392[34]],attributes:_0xde04x15[_0xc392[30]]}}):[]}}):[]}}):[]):[]})[_0xc392[24]](function(_0xde04x11){logger[_0xc392[17]](_0xc392[38],_0xde04xd);logger[_0xc392[20]](_0xc392[38],_0xde04xd,JSON[_0xc392[19]](_0xde04x11));_0xde04xe(_0xde04x11)})[_0xc392[15]](function(_0xde04x10){logger[_0xc392[14]](_0xc392[38],_0xde04x10[_0xc392[22]],_0xde04xd);_0xde04xf(_0xde04x12[_0xc392[14]](500,_0xde04x10[_0xc392[22]]))})})}
\ No newline at end of file
+var _0x897c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x72\x69\x67\x67\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x72\x69\x67\x67\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x54\x72\x69\x67\x67\x65\x72","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x54\x72\x69\x67\x67\x65\x72","\x53\x68\x6F\x77\x54\x72\x69\x67\x67\x65\x72","\x66\x69\x6E\x64"];_0x897c[0];var _=require(_0x897c[1]);var util=require(_0x897c[2]);var moment=require(_0x897c[3]);var BPromise=require(_0x897c[4]);var db=require(_0x897c[6])[_0x897c[5]];var utils=require(_0x897c[7]);var logger=require(_0x897c[9])(_0x897c[8]);var jayson=require(_0x897c[10]);var client=jayson[_0x897c[12]][_0x897c[11]]({port:9002});function respondWithRpcPromise(_0xdeebxb,_0xdeebxc,_0xdeebxd){return  new BPromise(function(_0xdeebxe,_0xdeebxf){return client[_0x897c[25]](_0xdeebxb,_0xdeebxd)[_0x897c[24]](function(_0xdeebx11){logger[_0x897c[17]](_0x897c[13],_0xdeebxc,_0x897c[16]);logger[_0x897c[20]](_0x897c[18],_0xdeebxc,_0x897c[16],JSON[_0x897c[19]](_0xdeebx11));if(_0xdeebx11[_0x897c[14]]){if(_0xdeebx11[_0x897c[14]][_0x897c[21]]=== 500){logger[_0x897c[14]](_0x897c[13],_0xdeebxc,_0xdeebx11[_0x897c[14]][_0x897c[22]]);return _0xdeebxf(_0xdeebx11[_0x897c[14]][_0x897c[22]])};logger[_0x897c[14]](_0x897c[13],_0xdeebxc,_0xdeebx11[_0x897c[14]][_0x897c[22]]);return _0xdeebxe(_0xdeebx11[_0x897c[14]][_0x897c[22]])}else {logger[_0x897c[17]](_0x897c[13],_0xdeebxc,_0x897c[16]);_0xdeebxe(_0xdeebx11[_0x897c[23]][_0x897c[22]])}})[_0x897c[15]](function(_0xdeebx10){logger[_0x897c[14]](_0x897c[13],_0xdeebxc,_0xdeebx10);_0xdeebxf(_0xdeebx10)})})}exports[_0x897c[26]]= function(_0xdeebxd){var _0xdeebx12=this;return  new Promise(function(_0xdeebxe,_0xdeebxf){return db[_0x897c[37]][_0x897c[36]]({raw:_0xdeebxd[_0x897c[27]]?(_0xdeebxd[_0x897c[27]][_0x897c[28]]=== undefined)?true:false:true,where:_0xdeebxd[_0x897c[27]]?_0xdeebxd[_0x897c[27]][_0x897c[29]]|| null:null,attributes:_0xdeebxd[_0x897c[27]]?_0xdeebxd[_0x897c[27]][_0x897c[30]]|| null:null,limit:_0xdeebxd[_0x897c[27]]?_0xdeebxd[_0x897c[27]][_0x897c[31]]|| null:null,include:_0xdeebxd[_0x897c[27]]?(_0xdeebxd[_0x897c[27]][_0x897c[32]]?_[_0x897c[35]](_0xdeebxd[_0x897c[27]][_0x897c[32]],function(_0xdeebx13){return {model:db[_0xdeebx13[_0x897c[33]]],as:_0xdeebx13[_0x897c[34]],attributes:_0xdeebx13[_0x897c[30]],include:_0xdeebx13[_0x897c[32]]?_[_0x897c[35]](_0xdeebx13[_0x897c[32]],function(_0xdeebx14){return {model:db[_0xdeebx14[_0x897c[33]]],as:_0xdeebx14[_0x897c[34]],attributes:_0xdeebx14[_0x897c[30]],include:_0xdeebx14[_0x897c[32]]?_[_0x897c[35]](_0xdeebx14[_0x897c[32]],function(_0xdeebx15){return {model:db[_0xdeebx15[_0x897c[33]]],as:_0xdeebx15[_0x897c[34]],attributes:_0xdeebx15[_0x897c[30]]}}):[]}}):[]}}):[]):[]})[_0x897c[24]](function(_0xdeebx11){logger[_0x897c[17]](_0x897c[26],_0xdeebxd);logger[_0x897c[20]](_0x897c[26],_0xdeebxd,JSON[_0x897c[19]](_0xdeebx11));_0xdeebxe(_0xdeebx11)})[_0x897c[15]](function(_0xdeebx10){logger[_0x897c[14]](_0x897c[26],_0xdeebx10[_0x897c[22]],_0xdeebxd);_0xdeebxf(_0xdeebx12[_0x897c[14]](500,_0xdeebx10[_0x897c[22]]))})})};exports[_0x897c[38]]= function(_0xdeebxd){var _0xdeebx12=this;return  new Promise(function(_0xdeebxe,_0xdeebxf){return db[_0x897c[37]][_0x897c[39]]({raw:_0xdeebxd[_0x897c[27]]?(_0xdeebxd[_0x897c[27]][_0x897c[28]]=== undefined)?true:false:true,where:_0xdeebxd[_0x897c[27]]?_0xdeebxd[_0x897c[27]][_0x897c[29]]|| null:null,attributes:_0xdeebxd[_0x897c[27]]?_0xdeebxd[_0x897c[27]][_0x897c[30]]|| null:null,include:_0xdeebxd[_0x897c[27]]?(_0xdeebxd[_0x897c[27]][_0x897c[32]]?_[_0x897c[35]](_0xdeebxd[_0x897c[27]][_0x897c[32]],function(_0xdeebx13){return {model:db[_0xdeebx13[_0x897c[33]]],as:_0xdeebx13[_0x897c[34]],attributes:_0xdeebx13[_0x897c[30]],include:_0xdeebx13[_0x897c[32]]?_[_0x897c[35]](_0xdeebx13[_0x897c[32]],function(_0xdeebx14){return {model:db[_0xdeebx14[_0x897c[33]]],as:_0xdeebx14[_0x897c[34]],attributes:_0xdeebx14[_0x897c[30]],include:_0xdeebx14[_0x897c[32]]?_[_0x897c[35]](_0xdeebx14[_0x897c[32]],function(_0xdeebx15){return {model:db[_0xdeebx15[_0x897c[33]]],as:_0xdeebx15[_0x897c[34]],attributes:_0xdeebx15[_0x897c[30]]}}):[]}}):[]}}):[]):[]})[_0x897c[24]](function(_0xdeebx11){logger[_0x897c[17]](_0x897c[38],_0xdeebxd);logger[_0x897c[20]](_0x897c[38],_0xdeebxd,JSON[_0x897c[19]](_0xdeebx11));_0xdeebxe(_0xdeebx11)})[_0x897c[15]](function(_0xdeebx10){logger[_0x897c[14]](_0x897c[38],_0xdeebx10[_0x897c[22]],_0xdeebxd);_0xdeebxf(_0xdeebx12[_0x897c[14]](500,_0xdeebx10[_0x897c[22]]))})})}
\ No newline at end of file
index b86e040..4b2a809 100644 (file)
@@ -1 +1 @@
-var _0xede3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x72\x75\x6E\x6B\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xede3[0];var multer=require(_0xede3[1]);var util=require(_0xede3[2]);var path=require(_0xede3[3]);var express=require(_0xede3[4]);var router=express.Router();var auth=require(_0xede3[5]);var config=require(_0xede3[6]);var controller=require(_0xede3[7]);router[_0xede3[11]](_0xede3[8],auth[_0xede3[9]](),controller[_0xede3[10]]);router[_0xede3[11]](_0xede3[12],auth[_0xede3[9]](),controller[_0xede3[13]]);router[_0xede3[15]](_0xede3[8],auth[_0xede3[9]](),controller[_0xede3[14]]);router[_0xede3[17]](_0xede3[12],auth[_0xede3[9]](),controller[_0xede3[16]]);router[_0xede3[19]](_0xede3[12],auth[_0xede3[9]](),controller[_0xede3[18]]);module[_0xede3[20]]= router
\ No newline at end of file
+var _0x3bb2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x74\x72\x75\x6E\x6B\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3bb2[0];var multer=require(_0x3bb2[1]);var util=require(_0x3bb2[2]);var path=require(_0x3bb2[3]);var express=require(_0x3bb2[4]);var router=express.Router();var auth=require(_0x3bb2[5]);var config=require(_0x3bb2[6]);var controller=require(_0x3bb2[7]);router[_0x3bb2[11]](_0x3bb2[8],auth[_0x3bb2[9]](),controller[_0x3bb2[10]]);router[_0x3bb2[11]](_0x3bb2[12],auth[_0x3bb2[9]](),controller[_0x3bb2[13]]);router[_0x3bb2[15]](_0x3bb2[8],auth[_0x3bb2[9]](),controller[_0x3bb2[14]]);router[_0x3bb2[17]](_0x3bb2[12],auth[_0x3bb2[9]](),controller[_0x3bb2[16]]);router[_0x3bb2[19]](_0x3bb2[12],auth[_0x3bb2[9]](),controller[_0x3bb2[18]]);module[_0x3bb2[20]]= router
\ No newline at end of file
index 02c0cf5..ef8d102 100644 (file)
@@ -1 +1 @@
-var _0x9be1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x66\x72\x69\x65\x6E\x64","\x75\x73\x65\x72","\x70\x65\x65\x72","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x70\x2D\x70\x72\x6F\x76\x69\x64\x65\x72","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x4E\x4F\x54\x5F\x53\x43\x52\x45\x45\x4E\x45\x44","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x50\x41\x53\x53\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x46\x41\x49\x4C\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x41\x4C\x4C\x4F\x57\x45\x44","\x50\x52\x4F\x48\x49\x42\x5F\x4E\x4F\x54\x5F\x53\x43\x52\x45\x45\x4E\x45\x44","\x50\x52\x4F\x48\x49\x42\x5F\x50\x41\x53\x53\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x50\x52\x4F\x48\x49\x42\x5F\x46\x41\x49\x4C\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x50\x52\x4F\x48\x49\x42","\x75\x64\x70","\x74\x72\x61\x6E\x73\x70\x6F\x72\x74","\x2C","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x70\x6C\x69\x74","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x75\x64\x70\x22\x2C\x20\x22\x74\x63\x70\x22\x5D","\x72\x66\x63\x32\x38\x33\x33","\x69\x6E\x66\x6F","\x73\x68\x6F\x72\x74\x69\x6E\x66\x6F","\x69\x6E\x62\x61\x6E\x64","\x61\x75\x74\x6F","\x79\x65\x73","\x6E\x6F","\x6E\x6F\x6E\x61\x74","\x75\x70\x64\x61\x74\x65","\x6F\x75\x74\x67\x6F\x69\x6E\x67","\x66\x6F\x72\x63\x65\x5F\x72\x70\x6F\x72\x74\x2C\x63\x6F\x6D\x65\x64\x69\x61","\x6E\x61\x74","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x66\x6F\x72\x63\x65\x5F\x72\x70\x6F\x72\x74\x22\x2C\x20\x22\x63\x6F\x6D\x65\x64\x69\x61\x22\x5D","\x65\x6E","\x61\x6C\x6C","\x61\x6C\x61\x77\x3B\x75\x6C\x61\x77\x3B\x67\x73\x6D","\x61\x6C\x6C\x6F\x77","\x3B","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x61\x6C\x61\x77\x22\x2C\x20\x22\x75\x6C\x61\x77\x22\x2C\x20\x22\x67\x73\x6D\x22\x5D","\x70\x6F\x72\x74\x2C\x69\x6E\x76\x69\x74\x65","\x69\x6E\x73\x65\x63\x75\x72\x65","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x70\x6F\x72\x74\x22\x2C\x20\x22\x69\x6E\x76\x69\x74\x65\x22\x5D","\x6E\x65\x76\x65\x72","\x22\x22\x20\x3C\x3E","\x61\x6C\x77\x61\x79\x73","\x61\x63\x63\x65\x70\x74","\x72\x65\x66\x75\x73\x65","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65","\x75\x61\x63","\x75\x61\x73","\x66\x69\x6E\x67\x65\x72\x70\x72\x69\x6E\x74","\x63\x65\x72\x74\x69\x66\x69\x63\x61\x74\x65","\x61\x63\x74\x69\x76\x65","\x70\x61\x73\x73\x69\x76\x65","\x61\x63\x74\x70\x61\x73\x73","\x64\x79\x6E\x61\x6D\x69\x63","\x75\x70\x64\x61\x74\x65\x2C\x6E\x6F\x6E\x61\x74","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x9be1[0];var Sequelize=require(_0x9be1[1]);module[_0x9be1[2]]= {name:{type:Sequelize[_0x9be1[3]],allowNull:false,unique:_0x9be1[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},type:{type:Sequelize.ENUM(_0x9be1[5],_0x9be1[6],_0x9be1[7]),allowNull:false,defaultValue:_0x9be1[5]},context:{type:Sequelize[_0x9be1[3]],allowNull:false,defaultValue:_0x9be1[8]},callingpres:{type:Sequelize.ENUM(_0x9be1[9],_0x9be1[10],_0x9be1[11],_0x9be1[12],_0x9be1[13],_0x9be1[14],_0x9be1[15],_0x9be1[16])},deny:{type:Sequelize[_0x9be1[3]]},permit:{type:Sequelize[_0x9be1[3]]},secret:{type:Sequelize[_0x9be1[3]]},md5secret:{type:Sequelize[_0x9be1[3]]},remotesecret:{type:Sequelize[_0x9be1[3]]},transport:{type:Sequelize[_0x9be1[3]],defaultValue:_0x9be1[17],set:function(_0x8775x2){this[_0x9be1[21]](_0x9be1[18],_0x8775x2?_0x8775x2[_0x9be1[20]](_0x9be1[19]):null)},get:function(){return this[_0x9be1[22]](_0x9be1[18])?this[_0x9be1[22]](_0x9be1[18])[_0x9be1[23]](_0x9be1[19]):null},comment:_0x9be1[24]},dtmfmode:{type:Sequelize.ENUM(_0x9be1[25],_0x9be1[26],_0x9be1[27],_0x9be1[28],_0x9be1[29]),defaultValue:_0x9be1[25]},directmedia:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31],_0x9be1[32],_0x9be1[33],_0x9be1[34]),defaultValue:_0x9be1[31]},directrtpsetup:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31]),defaultValue:_0x9be1[31]},directmediapermit:{type:Sequelize[_0x9be1[3]]},directmediadeny:{type:Sequelize[_0x9be1[3]]},nat:{type:Sequelize[_0x9be1[3]],defaultValue:_0x9be1[35],set:function(_0x8775x2){this[_0x9be1[21]](_0x9be1[36],_0x8775x2?_0x8775x2[_0x9be1[20]](_0x9be1[19]):null)},get:function(){return this[_0x9be1[22]](_0x9be1[36])?this[_0x9be1[22]](_0x9be1[36])[_0x9be1[23]](_0x9be1[19]):null},comment:_0x9be1[37]},callgroup:{type:Sequelize[_0x9be1[3]]},namedcallgroup:{type:Sequelize[_0x9be1[3]]},pickupgroup:{type:Sequelize[_0x9be1[3]]},namedpickupgroup:{type:Sequelize[_0x9be1[3]]},language:{type:Sequelize[_0x9be1[3]],defaultValue:_0x9be1[38]},tonezone:{type:Sequelize[_0x9be1[3]],allowNull:true},disallow:{type:Sequelize[_0x9be1[3]],defaultValue:_0x9be1[39]},allow:{type:Sequelize[_0x9be1[3]],defaultValue:_0x9be1[40],set:function(_0x8775x2){this[_0x9be1[21]](_0x9be1[41],_0x8775x2?_0x8775x2[_0x9be1[20]](_0x9be1[42]):null)},get:function(){return this[_0x9be1[22]](_0x9be1[41])?this[_0x9be1[22]](_0x9be1[41])[_0x9be1[23]](_0x9be1[42]):null},comment:_0x9be1[43]},autoframing:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},insecure:{type:Sequelize[_0x9be1[3]],defaultValue:_0x9be1[44],set:function(_0x8775x2){this[_0x9be1[21]](_0x9be1[45],_0x8775x2?_0x8775x2[_0x9be1[20]](_0x9be1[19]):null)},get:function(){return this[_0x9be1[22]](_0x9be1[45])?this[_0x9be1[22]](_0x9be1[45])[_0x9be1[23]](_0x9be1[19]):null},comment:_0x9be1[46]},trustrpid:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31]),defaultValue:_0x9be1[31]},trust_id_outbound:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31]),defaultValue:_0x9be1[31]},progressinband:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31],_0x9be1[47])},promiscredir:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},useclientcode:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},accountcode:{type:Sequelize.INTEGER(11)},setvar:{type:Sequelize[_0x9be1[3]]},callerid:{type:Sequelize[_0x9be1[3]],defaultValue:_0x9be1[48]},amaflags:{type:Sequelize[_0x9be1[3]]},callcounter:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31]),defaultValue:_0x9be1[30]},busylevel:{type:Sequelize.INTEGER(11)},allowoverlap:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},allowsubscribe:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},allowtransfer:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},ignoresdpversion:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},subscribecontext:{type:Sequelize[_0x9be1[3]]},template:{type:Sequelize[_0x9be1[3]]},videosupport:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31],_0x9be1[49]),defaultValue:_0x9be1[31]},maxcallbitrate:{type:Sequelize.INTEGER(11)},rfc2833compensate:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},mailbox:{type:Sequelize[_0x9be1[3]]},session_timers:{type:Sequelize.ENUM(_0x9be1[50],_0x9be1[51],_0x9be1[52])},session_expires:{type:Sequelize.INTEGER(11)},session_minse:{type:Sequelize.INTEGER(11)},session_refresher:{type:Sequelize.ENUM(_0x9be1[53],_0x9be1[54]),defaultValue:_0x9be1[54]},t38pt_usertpsource:{type:Sequelize[_0x9be1[3]]},regexten:{type:Sequelize[_0x9be1[3]]},fromdomain:{type:Sequelize[_0x9be1[3]]},fromuser:{type:Sequelize[_0x9be1[3]]},port:{type:Sequelize.INTEGER(5)},qualify:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31]),defaultValue:_0x9be1[30]},keepalive:{type:Sequelize.INTEGER(11)},defaultip:{type:Sequelize[_0x9be1[3]]},defaultuser:{type:Sequelize[_0x9be1[3]]},rtptimeout:{type:Sequelize.INTEGER(11)},rtpholdtimeout:{type:Sequelize.INTEGER(11)},rtpkeepalive:{type:Sequelize.INTEGER(11)},sendrpid:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31]),defaultValue:_0x9be1[31]},outboundproxy:{type:Sequelize[_0x9be1[3]]},callbackextension:{type:Sequelize[_0x9be1[3]]},timert1:{type:Sequelize.INTEGER(11)},timerb:{type:Sequelize.INTEGER(11)},qualifyfreq:{type:Sequelize.INTEGER(11)},contactpermit:{type:Sequelize[_0x9be1[3]]},contactdeny:{type:Sequelize[_0x9be1[3]]},contactacl:{type:Sequelize[_0x9be1[3]]},unsolicited_mailbox:{type:Sequelize[_0x9be1[3]]},use_q850_reason:{type:Sequelize[_0x9be1[3]]},maxforwards:{type:Sequelize.INTEGER(11)},encryption:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31]),defaultValue:_0x9be1[31]},avpf:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},force_avp:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},icesupport:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},dtlsenable:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},dtlsverify:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31],_0x9be1[55],_0x9be1[56])},dtlsrekey:{type:Sequelize.INTEGER(11)},dtlscertfile:{type:Sequelize[_0x9be1[3]]},dtlsprivatekey:{type:Sequelize[_0x9be1[3]]},dtlscipher:{type:Sequelize[_0x9be1[3]]},dtlscafile:{type:Sequelize[_0x9be1[3]]},dtlscapath:{type:Sequelize[_0x9be1[3]]},dtlssetup:{type:Sequelize.ENUM(_0x9be1[57],_0x9be1[58],_0x9be1[59]),allowNull:true},dtlsfingerprint:{type:Sequelize[_0x9be1[3]]},usereqphone:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31]),defaultValue:_0x9be1[31]},recordonfeature:{type:Sequelize[_0x9be1[3]]},recordofffeature:{type:Sequelize[_0x9be1[3]]},call_limit:{type:Sequelize.INTEGER(11),defaultValue:1000},registertrying:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},subscribemwi:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31])},vmexten:{type:Sequelize[_0x9be1[3]]},mohinterpret:{type:Sequelize[_0x9be1[3]]},mohsuggest:{type:Sequelize[_0x9be1[3]]},parkinglot:{type:Sequelize[_0x9be1[3]]},description:{type:Sequelize[_0x9be1[3]]},host:{type:Sequelize[_0x9be1[3]],defaultValue:_0x9be1[60]},canreinvite:{type:Sequelize.ENUM(_0x9be1[30],_0x9be1[31],_0x9be1[32],_0x9be1[33],_0x9be1[61]),defaultValue:_0x9be1[31]},registry:{type:Sequelize[_0x9be1[3]]},otherFields:{type:Sequelize[_0x9be1[3]]},active:{type:Sequelize[_0x9be1[62]],allowNull:false,defaultValue:true}}
\ No newline at end of file
+var _0x74b2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x66\x72\x69\x65\x6E\x64","\x75\x73\x65\x72","\x70\x65\x65\x72","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x70\x2D\x70\x72\x6F\x76\x69\x64\x65\x72","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x4E\x4F\x54\x5F\x53\x43\x52\x45\x45\x4E\x45\x44","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x50\x41\x53\x53\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x46\x41\x49\x4C\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x41\x4C\x4C\x4F\x57\x45\x44","\x50\x52\x4F\x48\x49\x42\x5F\x4E\x4F\x54\x5F\x53\x43\x52\x45\x45\x4E\x45\x44","\x50\x52\x4F\x48\x49\x42\x5F\x50\x41\x53\x53\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x50\x52\x4F\x48\x49\x42\x5F\x46\x41\x49\x4C\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x50\x52\x4F\x48\x49\x42","\x75\x64\x70","\x74\x72\x61\x6E\x73\x70\x6F\x72\x74","\x2C","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x70\x6C\x69\x74","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x75\x64\x70\x22\x2C\x20\x22\x74\x63\x70\x22\x5D","\x72\x66\x63\x32\x38\x33\x33","\x69\x6E\x66\x6F","\x73\x68\x6F\x72\x74\x69\x6E\x66\x6F","\x69\x6E\x62\x61\x6E\x64","\x61\x75\x74\x6F","\x79\x65\x73","\x6E\x6F","\x6E\x6F\x6E\x61\x74","\x75\x70\x64\x61\x74\x65","\x6F\x75\x74\x67\x6F\x69\x6E\x67","\x66\x6F\x72\x63\x65\x5F\x72\x70\x6F\x72\x74\x2C\x63\x6F\x6D\x65\x64\x69\x61","\x6E\x61\x74","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x66\x6F\x72\x63\x65\x5F\x72\x70\x6F\x72\x74\x22\x2C\x20\x22\x63\x6F\x6D\x65\x64\x69\x61\x22\x5D","\x65\x6E","\x61\x6C\x6C","\x61\x6C\x61\x77\x3B\x75\x6C\x61\x77\x3B\x67\x73\x6D","\x61\x6C\x6C\x6F\x77","\x3B","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x61\x6C\x61\x77\x22\x2C\x20\x22\x75\x6C\x61\x77\x22\x2C\x20\x22\x67\x73\x6D\x22\x5D","\x70\x6F\x72\x74\x2C\x69\x6E\x76\x69\x74\x65","\x69\x6E\x73\x65\x63\x75\x72\x65","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x70\x6F\x72\x74\x22\x2C\x20\x22\x69\x6E\x76\x69\x74\x65\x22\x5D","\x6E\x65\x76\x65\x72","\x22\x22\x20\x3C\x3E","\x61\x6C\x77\x61\x79\x73","\x61\x63\x63\x65\x70\x74","\x72\x65\x66\x75\x73\x65","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65","\x75\x61\x63","\x75\x61\x73","\x66\x69\x6E\x67\x65\x72\x70\x72\x69\x6E\x74","\x63\x65\x72\x74\x69\x66\x69\x63\x61\x74\x65","\x61\x63\x74\x69\x76\x65","\x70\x61\x73\x73\x69\x76\x65","\x61\x63\x74\x70\x61\x73\x73","\x64\x79\x6E\x61\x6D\x69\x63","\x75\x70\x64\x61\x74\x65\x2C\x6E\x6F\x6E\x61\x74","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x74b2[0];var Sequelize=require(_0x74b2[1]);module[_0x74b2[2]]= {name:{type:Sequelize[_0x74b2[3]],allowNull:false,unique:_0x74b2[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},type:{type:Sequelize.ENUM(_0x74b2[5],_0x74b2[6],_0x74b2[7]),allowNull:false,defaultValue:_0x74b2[5]},context:{type:Sequelize[_0x74b2[3]],allowNull:false,defaultValue:_0x74b2[8]},callingpres:{type:Sequelize.ENUM(_0x74b2[9],_0x74b2[10],_0x74b2[11],_0x74b2[12],_0x74b2[13],_0x74b2[14],_0x74b2[15],_0x74b2[16])},deny:{type:Sequelize[_0x74b2[3]]},permit:{type:Sequelize[_0x74b2[3]]},secret:{type:Sequelize[_0x74b2[3]]},md5secret:{type:Sequelize[_0x74b2[3]]},remotesecret:{type:Sequelize[_0x74b2[3]]},transport:{type:Sequelize[_0x74b2[3]],defaultValue:_0x74b2[17],set:function(_0xd23ax2){this[_0x74b2[21]](_0x74b2[18],_0xd23ax2?_0xd23ax2[_0x74b2[20]](_0x74b2[19]):null)},get:function(){return this[_0x74b2[22]](_0x74b2[18])?this[_0x74b2[22]](_0x74b2[18])[_0x74b2[23]](_0x74b2[19]):null},comment:_0x74b2[24]},dtmfmode:{type:Sequelize.ENUM(_0x74b2[25],_0x74b2[26],_0x74b2[27],_0x74b2[28],_0x74b2[29]),defaultValue:_0x74b2[25]},directmedia:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31],_0x74b2[32],_0x74b2[33],_0x74b2[34]),defaultValue:_0x74b2[31]},directrtpsetup:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31]),defaultValue:_0x74b2[31]},directmediapermit:{type:Sequelize[_0x74b2[3]]},directmediadeny:{type:Sequelize[_0x74b2[3]]},nat:{type:Sequelize[_0x74b2[3]],defaultValue:_0x74b2[35],set:function(_0xd23ax2){this[_0x74b2[21]](_0x74b2[36],_0xd23ax2?_0xd23ax2[_0x74b2[20]](_0x74b2[19]):null)},get:function(){return this[_0x74b2[22]](_0x74b2[36])?this[_0x74b2[22]](_0x74b2[36])[_0x74b2[23]](_0x74b2[19]):null},comment:_0x74b2[37]},callgroup:{type:Sequelize[_0x74b2[3]]},namedcallgroup:{type:Sequelize[_0x74b2[3]]},pickupgroup:{type:Sequelize[_0x74b2[3]]},namedpickupgroup:{type:Sequelize[_0x74b2[3]]},language:{type:Sequelize[_0x74b2[3]],defaultValue:_0x74b2[38]},tonezone:{type:Sequelize[_0x74b2[3]],allowNull:true},disallow:{type:Sequelize[_0x74b2[3]],defaultValue:_0x74b2[39]},allow:{type:Sequelize[_0x74b2[3]],defaultValue:_0x74b2[40],set:function(_0xd23ax2){this[_0x74b2[21]](_0x74b2[41],_0xd23ax2?_0xd23ax2[_0x74b2[20]](_0x74b2[42]):null)},get:function(){return this[_0x74b2[22]](_0x74b2[41])?this[_0x74b2[22]](_0x74b2[41])[_0x74b2[23]](_0x74b2[42]):null},comment:_0x74b2[43]},autoframing:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},insecure:{type:Sequelize[_0x74b2[3]],defaultValue:_0x74b2[44],set:function(_0xd23ax2){this[_0x74b2[21]](_0x74b2[45],_0xd23ax2?_0xd23ax2[_0x74b2[20]](_0x74b2[19]):null)},get:function(){return this[_0x74b2[22]](_0x74b2[45])?this[_0x74b2[22]](_0x74b2[45])[_0x74b2[23]](_0x74b2[19]):null},comment:_0x74b2[46]},trustrpid:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31]),defaultValue:_0x74b2[31]},trust_id_outbound:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31]),defaultValue:_0x74b2[31]},progressinband:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31],_0x74b2[47])},promiscredir:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},useclientcode:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},accountcode:{type:Sequelize.INTEGER(11)},setvar:{type:Sequelize[_0x74b2[3]]},callerid:{type:Sequelize[_0x74b2[3]],defaultValue:_0x74b2[48]},amaflags:{type:Sequelize[_0x74b2[3]]},callcounter:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31]),defaultValue:_0x74b2[30]},busylevel:{type:Sequelize.INTEGER(11)},allowoverlap:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},allowsubscribe:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},allowtransfer:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},ignoresdpversion:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},subscribecontext:{type:Sequelize[_0x74b2[3]]},template:{type:Sequelize[_0x74b2[3]]},videosupport:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31],_0x74b2[49]),defaultValue:_0x74b2[31]},maxcallbitrate:{type:Sequelize.INTEGER(11)},rfc2833compensate:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},mailbox:{type:Sequelize[_0x74b2[3]]},session_timers:{type:Sequelize.ENUM(_0x74b2[50],_0x74b2[51],_0x74b2[52])},session_expires:{type:Sequelize.INTEGER(11)},session_minse:{type:Sequelize.INTEGER(11)},session_refresher:{type:Sequelize.ENUM(_0x74b2[53],_0x74b2[54]),defaultValue:_0x74b2[54]},t38pt_usertpsource:{type:Sequelize[_0x74b2[3]]},regexten:{type:Sequelize[_0x74b2[3]]},fromdomain:{type:Sequelize[_0x74b2[3]]},fromuser:{type:Sequelize[_0x74b2[3]]},port:{type:Sequelize.INTEGER(5)},qualify:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31]),defaultValue:_0x74b2[30]},keepalive:{type:Sequelize.INTEGER(11)},defaultip:{type:Sequelize[_0x74b2[3]]},defaultuser:{type:Sequelize[_0x74b2[3]]},rtptimeout:{type:Sequelize.INTEGER(11)},rtpholdtimeout:{type:Sequelize.INTEGER(11)},rtpkeepalive:{type:Sequelize.INTEGER(11)},sendrpid:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31]),defaultValue:_0x74b2[31]},outboundproxy:{type:Sequelize[_0x74b2[3]]},callbackextension:{type:Sequelize[_0x74b2[3]]},timert1:{type:Sequelize.INTEGER(11)},timerb:{type:Sequelize.INTEGER(11)},qualifyfreq:{type:Sequelize.INTEGER(11)},contactpermit:{type:Sequelize[_0x74b2[3]]},contactdeny:{type:Sequelize[_0x74b2[3]]},contactacl:{type:Sequelize[_0x74b2[3]]},unsolicited_mailbox:{type:Sequelize[_0x74b2[3]]},use_q850_reason:{type:Sequelize[_0x74b2[3]]},maxforwards:{type:Sequelize.INTEGER(11)},encryption:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31]),defaultValue:_0x74b2[31]},avpf:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},force_avp:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},icesupport:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},dtlsenable:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},dtlsverify:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31],_0x74b2[55],_0x74b2[56])},dtlsrekey:{type:Sequelize.INTEGER(11)},dtlscertfile:{type:Sequelize[_0x74b2[3]]},dtlsprivatekey:{type:Sequelize[_0x74b2[3]]},dtlscipher:{type:Sequelize[_0x74b2[3]]},dtlscafile:{type:Sequelize[_0x74b2[3]]},dtlscapath:{type:Sequelize[_0x74b2[3]]},dtlssetup:{type:Sequelize.ENUM(_0x74b2[57],_0x74b2[58],_0x74b2[59]),allowNull:true},dtlsfingerprint:{type:Sequelize[_0x74b2[3]]},usereqphone:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31]),defaultValue:_0x74b2[31]},recordonfeature:{type:Sequelize[_0x74b2[3]]},recordofffeature:{type:Sequelize[_0x74b2[3]]},call_limit:{type:Sequelize.INTEGER(11),defaultValue:1000},registertrying:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},subscribemwi:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31])},vmexten:{type:Sequelize[_0x74b2[3]]},mohinterpret:{type:Sequelize[_0x74b2[3]]},mohsuggest:{type:Sequelize[_0x74b2[3]]},parkinglot:{type:Sequelize[_0x74b2[3]]},description:{type:Sequelize[_0x74b2[3]]},host:{type:Sequelize[_0x74b2[3]],defaultValue:_0x74b2[60]},canreinvite:{type:Sequelize.ENUM(_0x74b2[30],_0x74b2[31],_0x74b2[32],_0x74b2[33],_0x74b2[61]),defaultValue:_0x74b2[31]},registry:{type:Sequelize[_0x74b2[3]]},otherFields:{type:Sequelize[_0x74b2[3]]},active:{type:Sequelize[_0x74b2[62]],allowNull:false,defaultValue:true}}
\ No newline at end of file
index ed3d324..1f93f71 100644 (file)
@@ -1 +1 @@
-var _0xe1af=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x72\x75\x6E\x6B","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x52\x65\x6C\x6F\x61\x64","\x63\x68\x61\x6E\x5F\x73\x69\x70\x2E\x73\x6F","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x74\x72\x75\x6E\x6B\x2E\x65\x6A\x73","\x6A\x6F\x69\x6E","\x75\x74\x66\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x72\x65\x67\x69\x73\x74\x72\x79\x2E\x65\x6A\x73","\x72\x65\x6E\x64\x65\x72","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x73\x69\x70\x5F\x78\x63\x61\x6C\x6C\x79\x5F\x74\x72\x75\x6E\x6B\x73\x2E\x63\x6F\x6E\x66","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x72\x65\x67\x69\x73\x74\x72\x79","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x73\x69\x70\x5F\x78\x63\x61\x6C\x6C\x79\x5F\x72\x65\x67\x69\x73\x74\x65\x72\x73\x2E\x63\x6F\x6E\x66","\x66\x69\x6E\x64\x41\x6C\x6C","\x62\x6F\x64\x79"];_0xe1af[0];var jsonpatch=require(_0xe1af[1]);var rp=require(_0xe1af[2]);var moment=require(_0xe1af[3]);var BPromise=require(_0xe1af[4]);var util=require(_0xe1af[5]);var path=require(_0xe1af[6]);var sox=require(_0xe1af[7]);var ejs=require(_0xe1af[8]);var fs=require(_0xe1af[9]);var _=require(_0xe1af[10]);var squel=require(_0xe1af[11]);var crypto=require(_0xe1af[12]);var jsforce=require(_0xe1af[13]);var toCsv=require(_0xe1af[14]);var qs=require(_0xe1af[15]);var logger=require(_0xe1af[17])(_0xe1af[16]);var utils=require(_0xe1af[18]);var config=require(_0xe1af[19]);var db=require(_0xe1af[21])[_0xe1af[20]];var jayson=require(_0xe1af[22]);var client=jayson[_0xe1af[24]][_0xe1af[23]]({port:9002});function respondWithRpcPromise(_0xb683x17,_0xb683x18,_0xb683x19){return  new BPromise(function(_0xb683x1a,_0xb683x1b){return client[_0xe1af[37]](_0xb683x17,_0xb683x19)[_0xe1af[36]](function(_0xb683x1d){logger[_0xe1af[29]](_0xe1af[25],_0xb683x18,_0xe1af[28]);logger[_0xe1af[32]](_0xe1af[30],_0xb683x18,_0xe1af[28],JSON[_0xe1af[31]](_0xb683x1d));if(_0xb683x1d[_0xe1af[26]]){if(_0xb683x1d[_0xe1af[26]][_0xe1af[33]]=== 500){logger[_0xe1af[26]](_0xe1af[25],_0xb683x18,_0xb683x1d[_0xe1af[26]][_0xe1af[34]]);return _0xb683x1b(_0xb683x1d[_0xe1af[26]][_0xe1af[34]])};logger[_0xe1af[26]](_0xe1af[25],_0xb683x18,_0xb683x1d[_0xe1af[26]][_0xe1af[34]]);return _0xb683x1a(_0xb683x1d[_0xe1af[26]][_0xe1af[34]])}else {logger[_0xe1af[29]](_0xe1af[25],_0xb683x18,_0xe1af[28]);_0xb683x1a(_0xb683x1d[_0xe1af[35]][_0xe1af[34]])}})[_0xe1af[27]](function(_0xb683x1c){logger[_0xe1af[26]](_0xe1af[25],_0xb683x18,_0xb683x1c);_0xb683x1b(_0xb683x1c)})})}function respondWithStatusCode(_0xb683x1d,_0xb683x1f,_0xb683x18){_0xb683x1f= _0xb683x1f|| 204;return function(_0xb683x20){if(_0xb683x20){logger[_0xe1af[29]](_0xe1af[30],_0xb683x18,_0xb683x1f,_0xe1af[38]);logger[_0xe1af[32]](_0xe1af[39],_0xb683x18,_0xb683x1f,_0xe1af[38]);return _0xb683x1d[_0xe1af[40]](_0xb683x1f)};return _0xb683x1d[_0xe1af[42]](304)[_0xe1af[41]]()}}function respondWithResult(_0xb683x1d,_0xb683x1f,_0xb683x18){_0xb683x1f= _0xb683x1f|| 200;return function(_0xb683x20){if(_0xb683x20){logger[_0xe1af[29]](_0xe1af[30],_0xb683x18,_0xb683x1f,_0xe1af[43]);logger[_0xe1af[32]](_0xe1af[39],_0xb683x18,_0xb683x1f,_0xe1af[43],JSON[_0xe1af[31]](_0xb683x20));return _0xb683x1d[_0xe1af[42]](_0xb683x1f)[_0xe1af[44]](_0xb683x20)};return _0xb683x1d[_0xe1af[42]](304)[_0xe1af[41]]()}}function respondWithFilteredResult(_0xb683x1d,_0xb683x23,_0xb683x18){return function(_0xb683x20){if(_0xb683x20){var _0xb683x24=_0xb683x20[_0xe1af[45]],_0xb683x25=_0xb683x23[_0xe1af[46]],_0xb683x26=_0xb683x23[_0xe1af[46]]+ _0xb683x23[_0xe1af[47]],_0xb683x1f;if(_0xb683x26>= _0xb683x24){_0xb683x26= _0xb683x24;_0xb683x1f= 200}else {_0xb683x1f= 206};_0xb683x1d[_0xe1af[42]](_0xb683x1f);logger[_0xe1af[29]](_0xe1af[30],_0xb683x18,_0xb683x1f,_0xe1af[48]);logger[_0xe1af[32]](_0xe1af[39],_0xb683x18,_0xb683x1f,_0xe1af[43],JSON[_0xe1af[31]](_0xb683x20));return _0xb683x1d[_0xe1af[52]](_0xe1af[49],_0xb683x25+ _0xe1af[50]+ _0xb683x26+ _0xe1af[51]+ _0xb683x24)[_0xe1af[44]](_0xb683x20)};return null}}function patchUpdates(_0xb683x28){return function(_0xb683x20){try{jsonpatch[_0xe1af[53]](_0xb683x20,_0xb683x28,true)}catch(err){return BPromise[_0xe1af[54]](err)};return _0xb683x20[_0xe1af[55]]()}}function saveUpdates(_0xb683x2a,_0xb683x1f,_0xb683x18){return function(_0xb683x20){if(_0xb683x20){return _0xb683x20[_0xe1af[57]](_0xb683x2a)[_0xe1af[36]](function(_0xb683x2b){logger[_0xe1af[29]](_0xe1af[30],_0xb683x18,_0xb683x1f,_0xe1af[56]);logger[_0xe1af[32]](_0xe1af[39],_0xb683x18,_0xb683x1f,_0xe1af[56],JSON[_0xe1af[31]](_0xb683x20));return _0xb683x2b})};return null}}function removeEntity(_0xb683x1d,_0xb683x1f,_0xb683x18){return function(_0xb683x20){if(_0xb683x20){return _0xb683x20[_0xe1af[59]]()[_0xe1af[36]](function(){logger[_0xe1af[29]](_0xe1af[30],_0xb683x18,_0xb683x1f,_0xe1af[58]);logger[_0xe1af[32]](_0xe1af[39],_0xb683x18,_0xb683x1f,_0xe1af[58],JSON[_0xe1af[31]](_0xb683x20));_0xb683x1d[_0xe1af[42]](204)[_0xe1af[41]]()})}}}function handleEntityNotFound(_0xb683x1d,_0xb683x1f,_0xb683x18){return function(_0xb683x20){if(!_0xb683x20){logger[_0xe1af[26]](_0xe1af[30],_0xb683x18,404,_0xe1af[60]);_0xb683x1d[_0xe1af[42]](404)[_0xe1af[41]]();return null};return _0xb683x20}}function handleError(_0xb683x1d,_0xb683x1f,_0xb683x18){_0xb683x1f= _0xb683x1f|| 500;return function(_0xb683x1c){logger[_0xe1af[26]](_0xe1af[30],_0xb683x18,_0xb683x1f,JSON[_0xe1af[31]](_0xb683x1c));delete _0xb683x1c[_0xe1af[61]];_0xb683x1d[_0xe1af[42]](_0xb683x1f)[_0xe1af[62]](_0xb683x1c)}}exports[_0xe1af[63]]= function(_0xb683x19,_0xb683x1d){var _0xb683x23={},_0xb683x2f={};_0xb683x2f[_0xe1af[64]]= _[_0xe1af[67]](db[_0xe1af[66]][_0xe1af[65]]);_0xb683x2f[_0xe1af[68]]= _[_0xe1af[67]](_0xb683x19[_0xe1af[68]]);_0xb683x2f[_0xe1af[69]]= _[_0xe1af[70]](_0xb683x2f[_0xe1af[64]],_0xb683x2f[_0xe1af[68]]);_0xb683x23[_0xe1af[71]]= _[_0xe1af[70]](_0xb683x2f[_0xe1af[64]],qs[_0xe1af[72]](_0xb683x19[_0xe1af[68]][_0xe1af[72]]));_0xb683x23[_0xe1af[71]]= (_0xb683x23[_0xe1af[71]][_0xe1af[73]])?_0xb683x23[_0xe1af[71]]:_0xb683x2f[_0xe1af[64]];if(!_0xb683x19[_0xe1af[68]][_0xe1af[75]](_0xe1af[74])){_0xb683x23[_0xe1af[47]]= qs[_0xe1af[47]](_0xb683x19[_0xe1af[68]][_0xe1af[47]]);_0xb683x23[_0xe1af[46]]= qs[_0xe1af[46]](_0xb683x19[_0xe1af[68]][_0xe1af[46]])};_0xb683x23[_0xe1af[76]]= qs[_0xe1af[77]](_0xb683x19[_0xe1af[68]][_0xe1af[77]]);_0xb683x23[_0xe1af[78]]= qs[_0xe1af[69]](_[_0xe1af[79]](_0xb683x19[_0xe1af[68]],_0xb683x2f[_0xe1af[69]]));if(_0xb683x19[_0xe1af[68]][_0xe1af[80]]){_0xb683x23[_0xe1af[78]]= _[_0xe1af[83]](_0xb683x23[_0xe1af[78]],{$or:_[_0xe1af[82]](_0xb683x23[_0xe1af[71]],function(_0xb683x30){var _0xb683x31={};_0xb683x31[_0xb683x30]= {$like:_0xe1af[81]+ _0xb683x19[_0xe1af[68]][_0xe1af[80]]+ _0xe1af[81]};return _0xb683x31})})};_0xb683x23= _[_0xe1af[83]]({},_0xb683x23,_0xb683x19[_0xe1af[84]]);return db[_0xe1af[66]][_0xe1af[85]](_0xb683x23)[_0xe1af[36]](respondWithFilteredResult(_0xb683x1d,_0xb683x23,_0xe1af[63]))[_0xe1af[27]](handleError(_0xb683x1d,null,_0xe1af[63]))};exports[_0xe1af[86]]= function(_0xb683x19,_0xb683x1d){var _0xb683x23={raw:false,where:{id:_0xb683x19[_0xe1af[88]][_0xe1af[87]]}},_0xb683x2f={};_0xb683x2f[_0xe1af[64]]= _[_0xe1af[67]](db[_0xe1af[66]][_0xe1af[65]]);_0xb683x2f[_0xe1af[68]]= _[_0xe1af[67]](_0xb683x19[_0xe1af[68]]);_0xb683x2f[_0xe1af[69]]= _[_0xe1af[70]](_0xb683x2f[_0xe1af[64]],_0xb683x2f[_0xe1af[68]]);_0xb683x23[_0xe1af[71]]= _[_0xe1af[70]](_0xb683x2f[_0xe1af[64]],qs[_0xe1af[72]](_0xb683x19[_0xe1af[68]][_0xe1af[72]]));_0xb683x23[_0xe1af[71]]= (_0xb683x23[_0xe1af[71]][_0xe1af[73]])?_0xb683x23[_0xe1af[71]]:_0xb683x2f[_0xe1af[64]];_0xb683x23= _[_0xe1af[83]]({},_0xb683x23,_0xb683x19[_0xe1af[84]]);return db[_0xe1af[66]][_0xe1af[89]](_0xb683x23)[_0xe1af[36]](handleEntityNotFound(_0xb683x1d,null,_0xe1af[86]))[_0xe1af[36]](respondWithResult(_0xb683x1d,null,_0xe1af[86]))[_0xe1af[27]](handleError(_0xb683x1d,null,_0xe1af[86]))};exports[_0xe1af[90]]= function(_0xb683x19,_0xb683x1d,_0xb683x32){var _0xb683x33;return db[_0xe1af[66]][_0xe1af[90]](_0xb683x19[_0xe1af[105]],{raw:true})[_0xe1af[36]](function(_0xb683x20){_0xb683x33= _0xb683x20;return db[_0xe1af[66]][_0xe1af[104]]({raw:true})})[_0xe1af[36]](function(_0xb683x34){var _0xb683x35=fs[_0xe1af[97]](path[_0xe1af[95]](config[_0xe1af[93]],_0xe1af[94]),_0xe1af[96]);var _0xb683x36=fs[_0xe1af[97]](path[_0xe1af[95]](config[_0xe1af[93]],_0xe1af[98]),_0xe1af[96]);var _0xb683x37=ejs[_0xe1af[99]](_0xb683x35,{trunks:_0xb683x34|| []});fs[_0xe1af[101]](_0xe1af[100],_0xb683x37);if(_0xb683x33[_0xe1af[102]]){var _0xb683x38=ejs[_0xe1af[99]](_0xb683x36,{trunks:_0xb683x34|| []});fs[_0xe1af[101]](_0xe1af[103],_0xb683x38)}})[_0xe1af[36]](function(){return respondWithRpcPromise(_0xe1af[91],_0xe1af[90],{module:_0xe1af[92]})})[_0xe1af[36]](function(){return _0xb683x33})[_0xe1af[36]](respondWithResult(_0xb683x1d,201,_0xe1af[90]))[_0xe1af[27]](handleError(_0xb683x1d,null,_0xe1af[90]))};exports[_0xe1af[57]]= function(_0xb683x19,_0xb683x1d,_0xb683x32){var _0xb683x33;return db[_0xe1af[66]][_0xe1af[89]]({where:{id:_0xb683x19[_0xe1af[88]][_0xe1af[87]]}})[_0xe1af[36]](handleEntityNotFound(_0xb683x1d,null,_0xe1af[57]))[_0xe1af[36]](saveUpdates(_0xb683x19[_0xe1af[105]],null,_0xe1af[57]))[_0xe1af[36]](function(_0xb683x20){if(_0xb683x20){_0xb683x33= _0xb683x20;return db[_0xe1af[66]][_0xe1af[104]]({raw:true})}})[_0xe1af[36]](function(_0xb683x34){if(_0xb683x34){var _0xb683x35=fs[_0xe1af[97]](path[_0xe1af[95]](config[_0xe1af[93]],_0xe1af[94]),_0xe1af[96]);var _0xb683x36=fs[_0xe1af[97]](path[_0xe1af[95]](config[_0xe1af[93]],_0xe1af[98]),_0xe1af[96]);var _0xb683x37=ejs[_0xe1af[99]](_0xb683x35,{trunks:_0xb683x34|| []});fs[_0xe1af[101]](_0xe1af[100],_0xb683x37);var _0xb683x38=ejs[_0xe1af[99]](_0xb683x36,{trunks:_0xb683x34|| []});fs[_0xe1af[101]](_0xe1af[103],_0xb683x38);return respondWithRpcPromise(_0xe1af[91],_0xe1af[57],{module:_0xe1af[92]})};return null})[_0xe1af[36]](function(_0xb683x20){if(_0xb683x20){return _0xb683x33}})[_0xe1af[36]](respondWithResult(_0xb683x1d,null,_0xe1af[57]))[_0xe1af[27]](handleError(_0xb683x1d,null,_0xe1af[57]))};exports[_0xe1af[59]]= function(_0xb683x19,_0xb683x1d,_0xb683x32){var _0xb683x33;return db[_0xe1af[66]][_0xe1af[89]]({where:{id:_0xb683x19[_0xe1af[88]][_0xe1af[87]]}})[_0xe1af[36]](handleEntityNotFound(_0xb683x1d,null,_0xe1af[59]))[_0xe1af[36]](removeEntity(_0xb683x1d,null,_0xe1af[59]))[_0xe1af[36]](function(){return db[_0xe1af[66]][_0xe1af[104]]({raw:true})})[_0xe1af[36]](function(_0xb683x34){var _0xb683x35=fs[_0xe1af[97]](path[_0xe1af[95]](config[_0xe1af[93]],_0xe1af[94]),_0xe1af[96]);var _0xb683x36=fs[_0xe1af[97]](path[_0xe1af[95]](config[_0xe1af[93]],_0xe1af[98]),_0xe1af[96]);var _0xb683x37=ejs[_0xe1af[99]](_0xb683x35,{trunks:_0xb683x34});var _0xb683x38=ejs[_0xe1af[99]](_0xb683x36,{trunks:_0xb683x34});fs[_0xe1af[101]](_0xe1af[100],_0xb683x37);fs[_0xe1af[101]](_0xe1af[103],_0xb683x38);return respondWithRpcPromise(_0xe1af[91],_0xe1af[59],{module:_0xe1af[92]})})[_0xe1af[27]](handleError(_0xb683x1d,null,_0xe1af[59]))}
\ No newline at end of file
+var _0x2dd8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x54\x72\x75\x6E\x6B","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x52\x65\x6C\x6F\x61\x64","\x63\x68\x61\x6E\x5F\x73\x69\x70\x2E\x73\x6F","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x74\x72\x75\x6E\x6B\x2E\x65\x6A\x73","\x6A\x6F\x69\x6E","\x75\x74\x66\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x72\x65\x67\x69\x73\x74\x72\x79\x2E\x65\x6A\x73","\x72\x65\x6E\x64\x65\x72","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x73\x69\x70\x5F\x78\x63\x61\x6C\x6C\x79\x5F\x74\x72\x75\x6E\x6B\x73\x2E\x63\x6F\x6E\x66","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x72\x65\x67\x69\x73\x74\x72\x79","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x73\x69\x70\x5F\x78\x63\x61\x6C\x6C\x79\x5F\x72\x65\x67\x69\x73\x74\x65\x72\x73\x2E\x63\x6F\x6E\x66","\x66\x69\x6E\x64\x41\x6C\x6C","\x62\x6F\x64\x79"];_0x2dd8[0];var jsonpatch=require(_0x2dd8[1]);var rp=require(_0x2dd8[2]);var moment=require(_0x2dd8[3]);var BPromise=require(_0x2dd8[4]);var util=require(_0x2dd8[5]);var path=require(_0x2dd8[6]);var sox=require(_0x2dd8[7]);var ejs=require(_0x2dd8[8]);var fs=require(_0x2dd8[9]);var _=require(_0x2dd8[10]);var squel=require(_0x2dd8[11]);var crypto=require(_0x2dd8[12]);var jsforce=require(_0x2dd8[13]);var toCsv=require(_0x2dd8[14]);var qs=require(_0x2dd8[15]);var logger=require(_0x2dd8[17])(_0x2dd8[16]);var utils=require(_0x2dd8[18]);var config=require(_0x2dd8[19]);var db=require(_0x2dd8[21])[_0x2dd8[20]];var jayson=require(_0x2dd8[22]);var client=jayson[_0x2dd8[24]][_0x2dd8[23]]({port:9002});function respondWithRpcPromise(_0xd420x17,_0xd420x18,_0xd420x19){return  new BPromise(function(_0xd420x1a,_0xd420x1b){return client[_0x2dd8[37]](_0xd420x17,_0xd420x19)[_0x2dd8[36]](function(_0xd420x1d){logger[_0x2dd8[29]](_0x2dd8[25],_0xd420x18,_0x2dd8[28]);logger[_0x2dd8[32]](_0x2dd8[30],_0xd420x18,_0x2dd8[28],JSON[_0x2dd8[31]](_0xd420x1d));if(_0xd420x1d[_0x2dd8[26]]){if(_0xd420x1d[_0x2dd8[26]][_0x2dd8[33]]=== 500){logger[_0x2dd8[26]](_0x2dd8[25],_0xd420x18,_0xd420x1d[_0x2dd8[26]][_0x2dd8[34]]);return _0xd420x1b(_0xd420x1d[_0x2dd8[26]][_0x2dd8[34]])};logger[_0x2dd8[26]](_0x2dd8[25],_0xd420x18,_0xd420x1d[_0x2dd8[26]][_0x2dd8[34]]);return _0xd420x1a(_0xd420x1d[_0x2dd8[26]][_0x2dd8[34]])}else {logger[_0x2dd8[29]](_0x2dd8[25],_0xd420x18,_0x2dd8[28]);_0xd420x1a(_0xd420x1d[_0x2dd8[35]][_0x2dd8[34]])}})[_0x2dd8[27]](function(_0xd420x1c){logger[_0x2dd8[26]](_0x2dd8[25],_0xd420x18,_0xd420x1c);_0xd420x1b(_0xd420x1c)})})}function respondWithStatusCode(_0xd420x1d,_0xd420x1f,_0xd420x18){_0xd420x1f= _0xd420x1f|| 204;return function(_0xd420x20){if(_0xd420x20){logger[_0x2dd8[29]](_0x2dd8[30],_0xd420x18,_0xd420x1f,_0x2dd8[38]);logger[_0x2dd8[32]](_0x2dd8[39],_0xd420x18,_0xd420x1f,_0x2dd8[38]);return _0xd420x1d[_0x2dd8[40]](_0xd420x1f)};return _0xd420x1d[_0x2dd8[42]](304)[_0x2dd8[41]]()}}function respondWithResult(_0xd420x1d,_0xd420x1f,_0xd420x18){_0xd420x1f= _0xd420x1f|| 200;return function(_0xd420x20){if(_0xd420x20){logger[_0x2dd8[29]](_0x2dd8[30],_0xd420x18,_0xd420x1f,_0x2dd8[43]);logger[_0x2dd8[32]](_0x2dd8[39],_0xd420x18,_0xd420x1f,_0x2dd8[43],JSON[_0x2dd8[31]](_0xd420x20));return _0xd420x1d[_0x2dd8[42]](_0xd420x1f)[_0x2dd8[44]](_0xd420x20)};return _0xd420x1d[_0x2dd8[42]](304)[_0x2dd8[41]]()}}function respondWithFilteredResult(_0xd420x1d,_0xd420x23,_0xd420x18){return function(_0xd420x20){if(_0xd420x20){var _0xd420x24=_0xd420x20[_0x2dd8[45]],_0xd420x25=_0xd420x23[_0x2dd8[46]],_0xd420x26=_0xd420x23[_0x2dd8[46]]+ _0xd420x23[_0x2dd8[47]],_0xd420x1f;if(_0xd420x26>= _0xd420x24){_0xd420x26= _0xd420x24;_0xd420x1f= 200}else {_0xd420x1f= 206};_0xd420x1d[_0x2dd8[42]](_0xd420x1f);logger[_0x2dd8[29]](_0x2dd8[30],_0xd420x18,_0xd420x1f,_0x2dd8[48]);logger[_0x2dd8[32]](_0x2dd8[39],_0xd420x18,_0xd420x1f,_0x2dd8[43],JSON[_0x2dd8[31]](_0xd420x20));return _0xd420x1d[_0x2dd8[52]](_0x2dd8[49],_0xd420x25+ _0x2dd8[50]+ _0xd420x26+ _0x2dd8[51]+ _0xd420x24)[_0x2dd8[44]](_0xd420x20)};return null}}function patchUpdates(_0xd420x28){return function(_0xd420x20){try{jsonpatch[_0x2dd8[53]](_0xd420x20,_0xd420x28,true)}catch(err){return BPromise[_0x2dd8[54]](err)};return _0xd420x20[_0x2dd8[55]]()}}function saveUpdates(_0xd420x2a,_0xd420x1f,_0xd420x18){return function(_0xd420x20){if(_0xd420x20){return _0xd420x20[_0x2dd8[57]](_0xd420x2a)[_0x2dd8[36]](function(_0xd420x2b){logger[_0x2dd8[29]](_0x2dd8[30],_0xd420x18,_0xd420x1f,_0x2dd8[56]);logger[_0x2dd8[32]](_0x2dd8[39],_0xd420x18,_0xd420x1f,_0x2dd8[56],JSON[_0x2dd8[31]](_0xd420x20));return _0xd420x2b})};return null}}function removeEntity(_0xd420x1d,_0xd420x1f,_0xd420x18){return function(_0xd420x20){if(_0xd420x20){return _0xd420x20[_0x2dd8[59]]()[_0x2dd8[36]](function(){logger[_0x2dd8[29]](_0x2dd8[30],_0xd420x18,_0xd420x1f,_0x2dd8[58]);logger[_0x2dd8[32]](_0x2dd8[39],_0xd420x18,_0xd420x1f,_0x2dd8[58],JSON[_0x2dd8[31]](_0xd420x20));_0xd420x1d[_0x2dd8[42]](204)[_0x2dd8[41]]()})}}}function handleEntityNotFound(_0xd420x1d,_0xd420x1f,_0xd420x18){return function(_0xd420x20){if(!_0xd420x20){logger[_0x2dd8[26]](_0x2dd8[30],_0xd420x18,404,_0x2dd8[60]);_0xd420x1d[_0x2dd8[42]](404)[_0x2dd8[41]]();return null};return _0xd420x20}}function handleError(_0xd420x1d,_0xd420x1f,_0xd420x18){_0xd420x1f= _0xd420x1f|| 500;return function(_0xd420x1c){logger[_0x2dd8[26]](_0x2dd8[30],_0xd420x18,_0xd420x1f,JSON[_0x2dd8[31]](_0xd420x1c));delete _0xd420x1c[_0x2dd8[61]];_0xd420x1d[_0x2dd8[42]](_0xd420x1f)[_0x2dd8[62]](_0xd420x1c)}}exports[_0x2dd8[63]]= function(_0xd420x19,_0xd420x1d){var _0xd420x23={},_0xd420x2f={};_0xd420x2f[_0x2dd8[64]]= _[_0x2dd8[67]](db[_0x2dd8[66]][_0x2dd8[65]]);_0xd420x2f[_0x2dd8[68]]= _[_0x2dd8[67]](_0xd420x19[_0x2dd8[68]]);_0xd420x2f[_0x2dd8[69]]= _[_0x2dd8[70]](_0xd420x2f[_0x2dd8[64]],_0xd420x2f[_0x2dd8[68]]);_0xd420x23[_0x2dd8[71]]= _[_0x2dd8[70]](_0xd420x2f[_0x2dd8[64]],qs[_0x2dd8[72]](_0xd420x19[_0x2dd8[68]][_0x2dd8[72]]));_0xd420x23[_0x2dd8[71]]= (_0xd420x23[_0x2dd8[71]][_0x2dd8[73]])?_0xd420x23[_0x2dd8[71]]:_0xd420x2f[_0x2dd8[64]];if(!_0xd420x19[_0x2dd8[68]][_0x2dd8[75]](_0x2dd8[74])){_0xd420x23[_0x2dd8[47]]= qs[_0x2dd8[47]](_0xd420x19[_0x2dd8[68]][_0x2dd8[47]]);_0xd420x23[_0x2dd8[46]]= qs[_0x2dd8[46]](_0xd420x19[_0x2dd8[68]][_0x2dd8[46]])};_0xd420x23[_0x2dd8[76]]= qs[_0x2dd8[77]](_0xd420x19[_0x2dd8[68]][_0x2dd8[77]]);_0xd420x23[_0x2dd8[78]]= qs[_0x2dd8[69]](_[_0x2dd8[79]](_0xd420x19[_0x2dd8[68]],_0xd420x2f[_0x2dd8[69]]));if(_0xd420x19[_0x2dd8[68]][_0x2dd8[80]]){_0xd420x23[_0x2dd8[78]]= _[_0x2dd8[83]](_0xd420x23[_0x2dd8[78]],{$or:_[_0x2dd8[82]](_0xd420x23[_0x2dd8[71]],function(_0xd420x30){var _0xd420x31={};_0xd420x31[_0xd420x30]= {$like:_0x2dd8[81]+ _0xd420x19[_0x2dd8[68]][_0x2dd8[80]]+ _0x2dd8[81]};return _0xd420x31})})};_0xd420x23= _[_0x2dd8[83]]({},_0xd420x23,_0xd420x19[_0x2dd8[84]]);return db[_0x2dd8[66]][_0x2dd8[85]](_0xd420x23)[_0x2dd8[36]](respondWithFilteredResult(_0xd420x1d,_0xd420x23,_0x2dd8[63]))[_0x2dd8[27]](handleError(_0xd420x1d,null,_0x2dd8[63]))};exports[_0x2dd8[86]]= function(_0xd420x19,_0xd420x1d){var _0xd420x23={raw:false,where:{id:_0xd420x19[_0x2dd8[88]][_0x2dd8[87]]}},_0xd420x2f={};_0xd420x2f[_0x2dd8[64]]= _[_0x2dd8[67]](db[_0x2dd8[66]][_0x2dd8[65]]);_0xd420x2f[_0x2dd8[68]]= _[_0x2dd8[67]](_0xd420x19[_0x2dd8[68]]);_0xd420x2f[_0x2dd8[69]]= _[_0x2dd8[70]](_0xd420x2f[_0x2dd8[64]],_0xd420x2f[_0x2dd8[68]]);_0xd420x23[_0x2dd8[71]]= _[_0x2dd8[70]](_0xd420x2f[_0x2dd8[64]],qs[_0x2dd8[72]](_0xd420x19[_0x2dd8[68]][_0x2dd8[72]]));_0xd420x23[_0x2dd8[71]]= (_0xd420x23[_0x2dd8[71]][_0x2dd8[73]])?_0xd420x23[_0x2dd8[71]]:_0xd420x2f[_0x2dd8[64]];_0xd420x23= _[_0x2dd8[83]]({},_0xd420x23,_0xd420x19[_0x2dd8[84]]);return db[_0x2dd8[66]][_0x2dd8[89]](_0xd420x23)[_0x2dd8[36]](handleEntityNotFound(_0xd420x1d,null,_0x2dd8[86]))[_0x2dd8[36]](respondWithResult(_0xd420x1d,null,_0x2dd8[86]))[_0x2dd8[27]](handleError(_0xd420x1d,null,_0x2dd8[86]))};exports[_0x2dd8[90]]= function(_0xd420x19,_0xd420x1d,_0xd420x32){var _0xd420x33;return db[_0x2dd8[66]][_0x2dd8[90]](_0xd420x19[_0x2dd8[105]],{raw:true})[_0x2dd8[36]](function(_0xd420x20){_0xd420x33= _0xd420x20;return db[_0x2dd8[66]][_0x2dd8[104]]({raw:true})})[_0x2dd8[36]](function(_0xd420x34){var _0xd420x35=fs[_0x2dd8[97]](path[_0x2dd8[95]](config[_0x2dd8[93]],_0x2dd8[94]),_0x2dd8[96]);var _0xd420x36=fs[_0x2dd8[97]](path[_0x2dd8[95]](config[_0x2dd8[93]],_0x2dd8[98]),_0x2dd8[96]);var _0xd420x37=ejs[_0x2dd8[99]](_0xd420x35,{trunks:_0xd420x34|| []});fs[_0x2dd8[101]](_0x2dd8[100],_0xd420x37);if(_0xd420x33[_0x2dd8[102]]){var _0xd420x38=ejs[_0x2dd8[99]](_0xd420x36,{trunks:_0xd420x34|| []});fs[_0x2dd8[101]](_0x2dd8[103],_0xd420x38)}})[_0x2dd8[36]](function(){return respondWithRpcPromise(_0x2dd8[91],_0x2dd8[90],{module:_0x2dd8[92]})})[_0x2dd8[36]](function(){return _0xd420x33})[_0x2dd8[36]](respondWithResult(_0xd420x1d,201,_0x2dd8[90]))[_0x2dd8[27]](handleError(_0xd420x1d,null,_0x2dd8[90]))};exports[_0x2dd8[57]]= function(_0xd420x19,_0xd420x1d,_0xd420x32){var _0xd420x33;return db[_0x2dd8[66]][_0x2dd8[89]]({where:{id:_0xd420x19[_0x2dd8[88]][_0x2dd8[87]]}})[_0x2dd8[36]](handleEntityNotFound(_0xd420x1d,null,_0x2dd8[57]))[_0x2dd8[36]](saveUpdates(_0xd420x19[_0x2dd8[105]],null,_0x2dd8[57]))[_0x2dd8[36]](function(_0xd420x20){if(_0xd420x20){_0xd420x33= _0xd420x20;return db[_0x2dd8[66]][_0x2dd8[104]]({raw:true})}})[_0x2dd8[36]](function(_0xd420x34){if(_0xd420x34){var _0xd420x35=fs[_0x2dd8[97]](path[_0x2dd8[95]](config[_0x2dd8[93]],_0x2dd8[94]),_0x2dd8[96]);var _0xd420x36=fs[_0x2dd8[97]](path[_0x2dd8[95]](config[_0x2dd8[93]],_0x2dd8[98]),_0x2dd8[96]);var _0xd420x37=ejs[_0x2dd8[99]](_0xd420x35,{trunks:_0xd420x34|| []});fs[_0x2dd8[101]](_0x2dd8[100],_0xd420x37);var _0xd420x38=ejs[_0x2dd8[99]](_0xd420x36,{trunks:_0xd420x34|| []});fs[_0x2dd8[101]](_0x2dd8[103],_0xd420x38);return respondWithRpcPromise(_0x2dd8[91],_0x2dd8[57],{module:_0x2dd8[92]})};return null})[_0x2dd8[36]](function(_0xd420x20){if(_0xd420x20){return _0xd420x33}})[_0x2dd8[36]](respondWithResult(_0xd420x1d,null,_0x2dd8[57]))[_0x2dd8[27]](handleError(_0xd420x1d,null,_0x2dd8[57]))};exports[_0x2dd8[59]]= function(_0xd420x19,_0xd420x1d,_0xd420x32){var _0xd420x33;return db[_0x2dd8[66]][_0x2dd8[89]]({where:{id:_0xd420x19[_0x2dd8[88]][_0x2dd8[87]]}})[_0x2dd8[36]](handleEntityNotFound(_0xd420x1d,null,_0x2dd8[59]))[_0x2dd8[36]](removeEntity(_0xd420x1d,null,_0x2dd8[59]))[_0x2dd8[36]](function(){return db[_0x2dd8[66]][_0x2dd8[104]]({raw:true})})[_0x2dd8[36]](function(_0xd420x34){var _0xd420x35=fs[_0x2dd8[97]](path[_0x2dd8[95]](config[_0x2dd8[93]],_0x2dd8[94]),_0x2dd8[96]);var _0xd420x36=fs[_0x2dd8[97]](path[_0x2dd8[95]](config[_0x2dd8[93]],_0x2dd8[98]),_0x2dd8[96]);var _0xd420x37=ejs[_0x2dd8[99]](_0xd420x35,{trunks:_0xd420x34});var _0xd420x38=ejs[_0x2dd8[99]](_0xd420x36,{trunks:_0xd420x34});fs[_0x2dd8[101]](_0x2dd8[100],_0xd420x37);fs[_0x2dd8[101]](_0x2dd8[103],_0xd420x38);return respondWithRpcPromise(_0x2dd8[91],_0x2dd8[59],{module:_0x2dd8[92]})})[_0x2dd8[27]](handleError(_0xd420x1d,null,_0x2dd8[59]))}
\ No newline at end of file
index f5950cf..90737dd 100644 (file)
@@ -1 +1 @@
-var _0xd1c7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x72\x75\x6E\x6B\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x72\x75\x6E\x6B","\x74\x6F\x6F\x6C\x73\x5F\x74\x72\x75\x6E\x6B\x73","\x64\x65\x66\x69\x6E\x65"];_0xd1c7[0];var _=require(_0xd1c7[1]);var util=require(_0xd1c7[2]);var logger=require(_0xd1c7[4])(_0xd1c7[3]);var attributes=require(_0xd1c7[5]);module[_0xd1c7[6]]= function(_0x912ax5,_0x912ax6){return _0x912ax5[_0xd1c7[9]](_0xd1c7[7],attributes,{tableName:_0xd1c7[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x32f0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x72\x75\x6E\x6B\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x54\x72\x75\x6E\x6B","\x74\x6F\x6F\x6C\x73\x5F\x74\x72\x75\x6E\x6B\x73","\x64\x65\x66\x69\x6E\x65"];_0x32f0[0];var _=require(_0x32f0[1]);var util=require(_0x32f0[2]);var logger=require(_0x32f0[4])(_0x32f0[3]);var attributes=require(_0x32f0[5]);module[_0x32f0[6]]= function(_0x19ccx5,_0x19ccx6){return _0x19ccx5[_0x32f0[9]](_0x32f0[7],attributes,{tableName:_0x32f0[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 15d9912..51103f3 100644 (file)
@@ -1 +1 @@
-var _0xa92d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x54\x72\x75\x6E\x6B","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x54\x72\x75\x6E\x6B","\x53\x68\x6F\x77\x54\x72\x75\x6E\x6B","\x66\x69\x6E\x64"];_0xa92d[0];var _=require(_0xa92d[1]);var util=require(_0xa92d[2]);var moment=require(_0xa92d[3]);var BPromise=require(_0xa92d[4]);var db=require(_0xa92d[6])[_0xa92d[5]];var utils=require(_0xa92d[7]);var logger=require(_0xa92d[9])(_0xa92d[8]);var jayson=require(_0xa92d[10]);var client=jayson[_0xa92d[12]][_0xa92d[11]]({port:9002});function respondWithRpcPromise(_0x40fexb,_0x40fexc,_0x40fexd){return  new BPromise(function(_0x40fexe,_0x40fexf){return client[_0xa92d[25]](_0x40fexb,_0x40fexd)[_0xa92d[24]](function(_0x40fex11){logger[_0xa92d[17]](_0xa92d[13],_0x40fexc,_0xa92d[16]);logger[_0xa92d[20]](_0xa92d[18],_0x40fexc,_0xa92d[16],JSON[_0xa92d[19]](_0x40fex11));if(_0x40fex11[_0xa92d[14]]){if(_0x40fex11[_0xa92d[14]][_0xa92d[21]]=== 500){logger[_0xa92d[14]](_0xa92d[13],_0x40fexc,_0x40fex11[_0xa92d[14]][_0xa92d[22]]);return _0x40fexf(_0x40fex11[_0xa92d[14]][_0xa92d[22]])};logger[_0xa92d[14]](_0xa92d[13],_0x40fexc,_0x40fex11[_0xa92d[14]][_0xa92d[22]]);return _0x40fexe(_0x40fex11[_0xa92d[14]][_0xa92d[22]])}else {logger[_0xa92d[17]](_0xa92d[13],_0x40fexc,_0xa92d[16]);_0x40fexe(_0x40fex11[_0xa92d[23]][_0xa92d[22]])}})[_0xa92d[15]](function(_0x40fex10){logger[_0xa92d[14]](_0xa92d[13],_0x40fexc,_0x40fex10);_0x40fexf(_0x40fex10)})})}exports[_0xa92d[26]]= function(_0x40fexd){var _0x40fex12=this;return  new Promise(function(_0x40fexe,_0x40fexf){return db[_0xa92d[37]][_0xa92d[36]]({raw:_0x40fexd[_0xa92d[27]]?(_0x40fexd[_0xa92d[27]][_0xa92d[28]]=== undefined)?true:false:true,where:_0x40fexd[_0xa92d[27]]?_0x40fexd[_0xa92d[27]][_0xa92d[29]]|| null:null,attributes:_0x40fexd[_0xa92d[27]]?_0x40fexd[_0xa92d[27]][_0xa92d[30]]|| null:null,limit:_0x40fexd[_0xa92d[27]]?_0x40fexd[_0xa92d[27]][_0xa92d[31]]|| null:null,include:_0x40fexd[_0xa92d[27]]?(_0x40fexd[_0xa92d[27]][_0xa92d[32]]?_[_0xa92d[35]](_0x40fexd[_0xa92d[27]][_0xa92d[32]],function(_0x40fex13){return {model:db[_0x40fex13[_0xa92d[33]]],as:_0x40fex13[_0xa92d[34]],attributes:_0x40fex13[_0xa92d[30]],include:_0x40fex13[_0xa92d[32]]?_[_0xa92d[35]](_0x40fex13[_0xa92d[32]],function(_0x40fex14){return {model:db[_0x40fex14[_0xa92d[33]]],as:_0x40fex14[_0xa92d[34]],attributes:_0x40fex14[_0xa92d[30]],include:_0x40fex14[_0xa92d[32]]?_[_0xa92d[35]](_0x40fex14[_0xa92d[32]],function(_0x40fex15){return {model:db[_0x40fex15[_0xa92d[33]]],as:_0x40fex15[_0xa92d[34]],attributes:_0x40fex15[_0xa92d[30]]}}):[]}}):[]}}):[]):[]})[_0xa92d[24]](function(_0x40fex11){logger[_0xa92d[17]](_0xa92d[26],_0x40fexd);logger[_0xa92d[20]](_0xa92d[26],_0x40fexd,JSON[_0xa92d[19]](_0x40fex11));_0x40fexe(_0x40fex11)})[_0xa92d[15]](function(_0x40fex10){logger[_0xa92d[14]](_0xa92d[26],_0x40fex10[_0xa92d[22]],_0x40fexd);_0x40fexf(_0x40fex12[_0xa92d[14]](500,_0x40fex10[_0xa92d[22]]))})})};exports[_0xa92d[38]]= function(_0x40fexd){var _0x40fex12=this;return  new Promise(function(_0x40fexe,_0x40fexf){return db[_0xa92d[37]][_0xa92d[39]]({raw:_0x40fexd[_0xa92d[27]]?(_0x40fexd[_0xa92d[27]][_0xa92d[28]]=== undefined)?true:false:true,where:_0x40fexd[_0xa92d[27]]?_0x40fexd[_0xa92d[27]][_0xa92d[29]]|| null:null,attributes:_0x40fexd[_0xa92d[27]]?_0x40fexd[_0xa92d[27]][_0xa92d[30]]|| null:null,include:_0x40fexd[_0xa92d[27]]?(_0x40fexd[_0xa92d[27]][_0xa92d[32]]?_[_0xa92d[35]](_0x40fexd[_0xa92d[27]][_0xa92d[32]],function(_0x40fex13){return {model:db[_0x40fex13[_0xa92d[33]]],as:_0x40fex13[_0xa92d[34]],attributes:_0x40fex13[_0xa92d[30]],include:_0x40fex13[_0xa92d[32]]?_[_0xa92d[35]](_0x40fex13[_0xa92d[32]],function(_0x40fex14){return {model:db[_0x40fex14[_0xa92d[33]]],as:_0x40fex14[_0xa92d[34]],attributes:_0x40fex14[_0xa92d[30]],include:_0x40fex14[_0xa92d[32]]?_[_0xa92d[35]](_0x40fex14[_0xa92d[32]],function(_0x40fex15){return {model:db[_0x40fex15[_0xa92d[33]]],as:_0x40fex15[_0xa92d[34]],attributes:_0x40fex15[_0xa92d[30]]}}):[]}}):[]}}):[]):[]})[_0xa92d[24]](function(_0x40fex11){logger[_0xa92d[17]](_0xa92d[38],_0x40fexd);logger[_0xa92d[20]](_0xa92d[38],_0x40fexd,JSON[_0xa92d[19]](_0x40fex11));_0x40fexe(_0x40fex11)})[_0xa92d[15]](function(_0x40fex10){logger[_0xa92d[14]](_0xa92d[38],_0x40fex10[_0xa92d[22]],_0x40fexd);_0x40fexf(_0x40fex12[_0xa92d[14]](500,_0x40fex10[_0xa92d[22]]))})})}
\ No newline at end of file
+var _0xb7b7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x54\x72\x75\x6E\x6B\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x54\x72\x75\x6E\x6B","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x54\x72\x75\x6E\x6B","\x53\x68\x6F\x77\x54\x72\x75\x6E\x6B","\x66\x69\x6E\x64"];_0xb7b7[0];var _=require(_0xb7b7[1]);var util=require(_0xb7b7[2]);var moment=require(_0xb7b7[3]);var BPromise=require(_0xb7b7[4]);var db=require(_0xb7b7[6])[_0xb7b7[5]];var utils=require(_0xb7b7[7]);var logger=require(_0xb7b7[9])(_0xb7b7[8]);var jayson=require(_0xb7b7[10]);var client=jayson[_0xb7b7[12]][_0xb7b7[11]]({port:9002});function respondWithRpcPromise(_0xa583xb,_0xa583xc,_0xa583xd){return  new BPromise(function(_0xa583xe,_0xa583xf){return client[_0xb7b7[25]](_0xa583xb,_0xa583xd)[_0xb7b7[24]](function(_0xa583x11){logger[_0xb7b7[17]](_0xb7b7[13],_0xa583xc,_0xb7b7[16]);logger[_0xb7b7[20]](_0xb7b7[18],_0xa583xc,_0xb7b7[16],JSON[_0xb7b7[19]](_0xa583x11));if(_0xa583x11[_0xb7b7[14]]){if(_0xa583x11[_0xb7b7[14]][_0xb7b7[21]]=== 500){logger[_0xb7b7[14]](_0xb7b7[13],_0xa583xc,_0xa583x11[_0xb7b7[14]][_0xb7b7[22]]);return _0xa583xf(_0xa583x11[_0xb7b7[14]][_0xb7b7[22]])};logger[_0xb7b7[14]](_0xb7b7[13],_0xa583xc,_0xa583x11[_0xb7b7[14]][_0xb7b7[22]]);return _0xa583xe(_0xa583x11[_0xb7b7[14]][_0xb7b7[22]])}else {logger[_0xb7b7[17]](_0xb7b7[13],_0xa583xc,_0xb7b7[16]);_0xa583xe(_0xa583x11[_0xb7b7[23]][_0xb7b7[22]])}})[_0xb7b7[15]](function(_0xa583x10){logger[_0xb7b7[14]](_0xb7b7[13],_0xa583xc,_0xa583x10);_0xa583xf(_0xa583x10)})})}exports[_0xb7b7[26]]= function(_0xa583xd){var _0xa583x12=this;return  new Promise(function(_0xa583xe,_0xa583xf){return db[_0xb7b7[37]][_0xb7b7[36]]({raw:_0xa583xd[_0xb7b7[27]]?(_0xa583xd[_0xb7b7[27]][_0xb7b7[28]]=== undefined)?true:false:true,where:_0xa583xd[_0xb7b7[27]]?_0xa583xd[_0xb7b7[27]][_0xb7b7[29]]|| null:null,attributes:_0xa583xd[_0xb7b7[27]]?_0xa583xd[_0xb7b7[27]][_0xb7b7[30]]|| null:null,limit:_0xa583xd[_0xb7b7[27]]?_0xa583xd[_0xb7b7[27]][_0xb7b7[31]]|| null:null,include:_0xa583xd[_0xb7b7[27]]?(_0xa583xd[_0xb7b7[27]][_0xb7b7[32]]?_[_0xb7b7[35]](_0xa583xd[_0xb7b7[27]][_0xb7b7[32]],function(_0xa583x13){return {model:db[_0xa583x13[_0xb7b7[33]]],as:_0xa583x13[_0xb7b7[34]],attributes:_0xa583x13[_0xb7b7[30]],include:_0xa583x13[_0xb7b7[32]]?_[_0xb7b7[35]](_0xa583x13[_0xb7b7[32]],function(_0xa583x14){return {model:db[_0xa583x14[_0xb7b7[33]]],as:_0xa583x14[_0xb7b7[34]],attributes:_0xa583x14[_0xb7b7[30]],include:_0xa583x14[_0xb7b7[32]]?_[_0xb7b7[35]](_0xa583x14[_0xb7b7[32]],function(_0xa583x15){return {model:db[_0xa583x15[_0xb7b7[33]]],as:_0xa583x15[_0xb7b7[34]],attributes:_0xa583x15[_0xb7b7[30]]}}):[]}}):[]}}):[]):[]})[_0xb7b7[24]](function(_0xa583x11){logger[_0xb7b7[17]](_0xb7b7[26],_0xa583xd);logger[_0xb7b7[20]](_0xb7b7[26],_0xa583xd,JSON[_0xb7b7[19]](_0xa583x11));_0xa583xe(_0xa583x11)})[_0xb7b7[15]](function(_0xa583x10){logger[_0xb7b7[14]](_0xb7b7[26],_0xa583x10[_0xb7b7[22]],_0xa583xd);_0xa583xf(_0xa583x12[_0xb7b7[14]](500,_0xa583x10[_0xb7b7[22]]))})})};exports[_0xb7b7[38]]= function(_0xa583xd){var _0xa583x12=this;return  new Promise(function(_0xa583xe,_0xa583xf){return db[_0xb7b7[37]][_0xb7b7[39]]({raw:_0xa583xd[_0xb7b7[27]]?(_0xa583xd[_0xb7b7[27]][_0xb7b7[28]]=== undefined)?true:false:true,where:_0xa583xd[_0xb7b7[27]]?_0xa583xd[_0xb7b7[27]][_0xb7b7[29]]|| null:null,attributes:_0xa583xd[_0xb7b7[27]]?_0xa583xd[_0xb7b7[27]][_0xb7b7[30]]|| null:null,include:_0xa583xd[_0xb7b7[27]]?(_0xa583xd[_0xb7b7[27]][_0xb7b7[32]]?_[_0xb7b7[35]](_0xa583xd[_0xb7b7[27]][_0xb7b7[32]],function(_0xa583x13){return {model:db[_0xa583x13[_0xb7b7[33]]],as:_0xa583x13[_0xb7b7[34]],attributes:_0xa583x13[_0xb7b7[30]],include:_0xa583x13[_0xb7b7[32]]?_[_0xb7b7[35]](_0xa583x13[_0xb7b7[32]],function(_0xa583x14){return {model:db[_0xa583x14[_0xb7b7[33]]],as:_0xa583x14[_0xb7b7[34]],attributes:_0xa583x14[_0xb7b7[30]],include:_0xa583x14[_0xb7b7[32]]?_[_0xb7b7[35]](_0xa583x14[_0xb7b7[32]],function(_0xa583x15){return {model:db[_0xa583x15[_0xb7b7[33]]],as:_0xa583x15[_0xb7b7[34]],attributes:_0xa583x15[_0xb7b7[30]]}}):[]}}):[]}}):[]):[]})[_0xb7b7[24]](function(_0xa583x11){logger[_0xb7b7[17]](_0xb7b7[38],_0xa583xd);logger[_0xb7b7[20]](_0xb7b7[38],_0xa583xd,JSON[_0xb7b7[19]](_0xa583x11));_0xa583xe(_0xa583x11)})[_0xb7b7[15]](function(_0xa583x10){logger[_0xb7b7[14]](_0xb7b7[38],_0xa583x10[_0xb7b7[22]],_0xa583xd);_0xa583xf(_0xa583x12[_0xb7b7[14]](500,_0xa583x10[_0xb7b7[22]]))})})}
\ No newline at end of file
index 461b2cb..5377e8f 100644 (file)
@@ -1 +1 @@
-var _0x6338=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x75\x73\x65\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x61\x76\x61\x74\x61\x72","\x67\x65\x74\x41\x76\x61\x74\x61\x72","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x75\x65\x73","\x67\x65\x74\x51\x75\x65\x75\x65\x73","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x75\x65\x73\x5F\x72\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x52\x74","\x2F\x3A\x69\x64\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x67\x65\x74\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x6C\x69\x73\x74\x73","\x67\x65\x74\x4C\x69\x73\x74\x73","\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x63\x72\x65\x61\x74\x65","\x61\x64\x64\x51\x75\x65\x75\x65\x73","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F","\x6A\x6F\x69\x6E","\x25\x73\x2D\x25\x73","\x6E\x6F\x77","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x64\x69\x73\x6B\x53\x74\x6F\x72\x61\x67\x65","\x66\x69\x6C\x65","\x73\x69\x6E\x67\x6C\x65","\x61\x64\x64\x41\x76\x61\x74\x61\x72","\x2F\x3A\x69\x64\x2F\x6C\x6F\x67\x69\x6E","\x6C\x6F\x67\x69\x6E","\x2F\x3A\x69\x64\x2F\x6C\x6F\x67\x6F\x75\x74","\x6C\x6F\x67\x6F\x75\x74","\x2F\x3A\x69\x64\x2F\x70\x61\x75\x73\x65","\x70\x61\x75\x73\x65","\x2F\x3A\x69\x64\x2F\x75\x6E\x70\x61\x75\x73\x65","\x75\x6E\x70\x61\x75\x73\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x2F\x3A\x69\x64\x2F\x70\x61\x73\x73\x77\x6F\x72\x64","\x63\x68\x61\x6E\x67\x65\x50\x61\x73\x73\x77\x6F\x72\x64","\x2F\x64\x65\x73\x74\x72\x6F\x79\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x64\x65\x73\x74\x72\x6F\x79","\x72\x65\x6D\x6F\x76\x65\x51\x75\x65\x75\x65\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x6338[0];var multer=require(_0x6338[1]);var util=require(_0x6338[2]);var path=require(_0x6338[3]);var express=require(_0x6338[4]);var router=express.Router();var auth=require(_0x6338[5]);var config=require(_0x6338[6]);var controller=require(_0x6338[7]);router[_0x6338[11]](_0x6338[8],auth[_0x6338[9]](),controller[_0x6338[10]]);router[_0x6338[11]](_0x6338[12],auth[_0x6338[9]](),controller[_0x6338[13]]);router[_0x6338[11]](_0x6338[14],auth[_0x6338[9]](),controller[_0x6338[15]]);router[_0x6338[11]](_0x6338[16],controller[_0x6338[17]]);router[_0x6338[11]](_0x6338[18],auth[_0x6338[9]](),controller[_0x6338[19]]);router[_0x6338[11]](_0x6338[20],auth[_0x6338[9]](),controller[_0x6338[21]]);router[_0x6338[11]](_0x6338[22],auth[_0x6338[9]](),controller[_0x6338[23]]);router[_0x6338[11]](_0x6338[24],auth[_0x6338[9]](),controller[_0x6338[25]]);router[_0x6338[11]](_0x6338[26],auth[_0x6338[9]](),controller[_0x6338[27]]);router[_0x6338[11]](_0x6338[28],auth[_0x6338[9]](),controller[_0x6338[29]]);router[_0x6338[32]](_0x6338[30],auth[_0x6338[9]](),controller[_0x6338[31]]);router[_0x6338[32]](_0x6338[18],auth[_0x6338[9]](),controller[_0x6338[33]]);router[_0x6338[32]](_0x6338[8],auth[_0x6338[9]](),controller[_0x6338[34]]);router[_0x6338[32]](_0x6338[20],auth[_0x6338[9]](),controller[_0x6338[35]]);var upload=multer({storage:multer[_0x6338[43]]({destination:function(_0xb022xa,_0xb022xb,_0xb022xc){_0xb022xc(null,path[_0x6338[38]](config[_0x6338[36]],_0x6338[37]))},filename:function(_0xb022xa,_0xb022xb,_0xb022xc){_0xb022xc(null,util[_0x6338[42]](_0x6338[39],Date[_0x6338[40]](),_0xb022xb[_0x6338[41]]))}})});router[_0x6338[32]](_0x6338[16],upload[_0x6338[45]](_0x6338[44]),controller[_0x6338[46]]);router[_0x6338[32]](_0x6338[47],controller[_0x6338[48]]);router[_0x6338[32]](_0x6338[49],auth[_0x6338[9]](),controller[_0x6338[50]]);router[_0x6338[32]](_0x6338[51],auth[_0x6338[9]](),controller[_0x6338[52]]);router[_0x6338[32]](_0x6338[53],auth[_0x6338[9]](),controller[_0x6338[54]]);router[_0x6338[56]](_0x6338[14],auth[_0x6338[9]](),controller[_0x6338[55]]);router[_0x6338[56]](_0x6338[57],auth[_0x6338[9]](),controller[_0x6338[58]]);router[_0x6338[61]](_0x6338[59],auth[_0x6338[9]](),controller[_0x6338[60]]);router[_0x6338[61]](_0x6338[14],auth[_0x6338[9]](),controller[_0x6338[62]]);router[_0x6338[61]](_0x6338[20],auth[_0x6338[9]](),controller[_0x6338[63]]);module[_0x6338[64]]= router
\ No newline at end of file
+var _0xadf6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x75\x73\x65\x72\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x61\x76\x61\x74\x61\x72","\x67\x65\x74\x41\x76\x61\x74\x61\x72","\x2F\x3A\x69\x64\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x75\x65\x73","\x67\x65\x74\x51\x75\x65\x75\x65\x73","\x2F\x3A\x69\x64\x2F\x71\x75\x65\x75\x65\x73\x5F\x72\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x52\x74","\x2F\x3A\x69\x64\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x67\x65\x74\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x6C\x69\x73\x74\x73","\x67\x65\x74\x4C\x69\x73\x74\x73","\x2F\x63\x72\x65\x61\x74\x65\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x63\x72\x65\x61\x74\x65","\x61\x64\x64\x51\x75\x65\x75\x65\x73","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F","\x6A\x6F\x69\x6E","\x25\x73\x2D\x25\x73","\x6E\x6F\x77","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x64\x69\x73\x6B\x53\x74\x6F\x72\x61\x67\x65","\x66\x69\x6C\x65","\x73\x69\x6E\x67\x6C\x65","\x61\x64\x64\x41\x76\x61\x74\x61\x72","\x2F\x3A\x69\x64\x2F\x6C\x6F\x67\x69\x6E","\x6C\x6F\x67\x69\x6E","\x2F\x3A\x69\x64\x2F\x6C\x6F\x67\x6F\x75\x74","\x6C\x6F\x67\x6F\x75\x74","\x2F\x3A\x69\x64\x2F\x70\x61\x75\x73\x65","\x70\x61\x75\x73\x65","\x2F\x3A\x69\x64\x2F\x75\x6E\x70\x61\x75\x73\x65","\x75\x6E\x70\x61\x75\x73\x65","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x2F\x3A\x69\x64\x2F\x70\x61\x73\x73\x77\x6F\x72\x64","\x63\x68\x61\x6E\x67\x65\x50\x61\x73\x73\x77\x6F\x72\x64","\x2F\x64\x65\x73\x74\x72\x6F\x79\x5F\x6D\x61\x6E\x79","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x64\x65\x73\x74\x72\x6F\x79","\x72\x65\x6D\x6F\x76\x65\x51\x75\x65\x75\x65\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xadf6[0];var multer=require(_0xadf6[1]);var util=require(_0xadf6[2]);var path=require(_0xadf6[3]);var express=require(_0xadf6[4]);var router=express.Router();var auth=require(_0xadf6[5]);var config=require(_0xadf6[6]);var controller=require(_0xadf6[7]);router[_0xadf6[11]](_0xadf6[8],auth[_0xadf6[9]](),controller[_0xadf6[10]]);router[_0xadf6[11]](_0xadf6[12],auth[_0xadf6[9]](),controller[_0xadf6[13]]);router[_0xadf6[11]](_0xadf6[14],auth[_0xadf6[9]](),controller[_0xadf6[15]]);router[_0xadf6[11]](_0xadf6[16],controller[_0xadf6[17]]);router[_0xadf6[11]](_0xadf6[18],auth[_0xadf6[9]](),controller[_0xadf6[19]]);router[_0xadf6[11]](_0xadf6[20],auth[_0xadf6[9]](),controller[_0xadf6[21]]);router[_0xadf6[11]](_0xadf6[22],auth[_0xadf6[9]](),controller[_0xadf6[23]]);router[_0xadf6[11]](_0xadf6[24],auth[_0xadf6[9]](),controller[_0xadf6[25]]);router[_0xadf6[11]](_0xadf6[26],auth[_0xadf6[9]](),controller[_0xadf6[27]]);router[_0xadf6[11]](_0xadf6[28],auth[_0xadf6[9]](),controller[_0xadf6[29]]);router[_0xadf6[32]](_0xadf6[30],auth[_0xadf6[9]](),controller[_0xadf6[31]]);router[_0xadf6[32]](_0xadf6[18],auth[_0xadf6[9]](),controller[_0xadf6[33]]);router[_0xadf6[32]](_0xadf6[8],auth[_0xadf6[9]](),controller[_0xadf6[34]]);router[_0xadf6[32]](_0xadf6[20],auth[_0xadf6[9]](),controller[_0xadf6[35]]);var upload=multer({storage:multer[_0xadf6[43]]({destination:function(_0x1391xa,_0x1391xb,_0x1391xc){_0x1391xc(null,path[_0xadf6[38]](config[_0xadf6[36]],_0xadf6[37]))},filename:function(_0x1391xa,_0x1391xb,_0x1391xc){_0x1391xc(null,util[_0xadf6[42]](_0xadf6[39],Date[_0xadf6[40]](),_0x1391xb[_0xadf6[41]]))}})});router[_0xadf6[32]](_0xadf6[16],upload[_0xadf6[45]](_0xadf6[44]),controller[_0xadf6[46]]);router[_0xadf6[32]](_0xadf6[47],controller[_0xadf6[48]]);router[_0xadf6[32]](_0xadf6[49],auth[_0xadf6[9]](),controller[_0xadf6[50]]);router[_0xadf6[32]](_0xadf6[51],auth[_0xadf6[9]](),controller[_0xadf6[52]]);router[_0xadf6[32]](_0xadf6[53],auth[_0xadf6[9]](),controller[_0xadf6[54]]);router[_0xadf6[56]](_0xadf6[14],auth[_0xadf6[9]](),controller[_0xadf6[55]]);router[_0xadf6[56]](_0xadf6[57],auth[_0xadf6[9]](),controller[_0xadf6[58]]);router[_0xadf6[61]](_0xadf6[59],auth[_0xadf6[9]](),controller[_0xadf6[60]]);router[_0xadf6[61]](_0xadf6[14],auth[_0xadf6[9]](),controller[_0xadf6[62]]);router[_0xadf6[61]](_0xadf6[20],auth[_0xadf6[9]](),controller[_0xadf6[63]]);module[_0xadf6[64]]= router
\ No newline at end of file
index 3c791bb..ef4ca86 100644 (file)
@@ -1 +1 @@
-var _0xb677=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x64\x65\x66\x61\x75\x6C\x74\x75\x73\x65\x72","\x54\x68\x65\x20\x6E\x61\x6D\x65\x20\x6F\x66\x20\x74\x68\x65\x20\x75\x73\x65\x72","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x66\x6F\x72\x6D\x61\x74","\x65\x6D\x61\x69\x6C","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x61\x67\x65\x6E\x74","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x6C\x6F\x63\x61\x6C","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x42\x4F\x4F\x4C\x45\x41\x4E","\x44\x41\x54\x45","\x44\x45\x46\x41\x55\x4C\x54\x20\x50\x41\x55\x53\x45","\x49\x4E\x54\x45\x47\x45\x52","\x64\x79\x6E\x61\x6D\x69\x63","\x66\x72\x69\x65\x6E\x64","\x70\x65\x65\x72","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x4E\x4F\x54\x5F\x53\x43\x52\x45\x45\x4E\x45\x44","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x50\x41\x53\x53\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x46\x41\x49\x4C\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x41\x4C\x4C\x4F\x57\x45\x44","\x50\x52\x4F\x48\x49\x42\x5F\x4E\x4F\x54\x5F\x53\x43\x52\x45\x45\x4E\x45\x44","\x50\x52\x4F\x48\x49\x42\x5F\x50\x41\x53\x53\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x50\x52\x4F\x48\x49\x42\x5F\x46\x41\x49\x4C\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x50\x52\x4F\x48\x49\x42","\x75\x64\x70","\x74\x72\x61\x6E\x73\x70\x6F\x72\x74","\x2C","\x6A\x6F\x69\x6E","\x73\x70\x6C\x69\x74","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x75\x64\x70\x22\x2C\x20\x22\x74\x63\x70\x22\x5D","\x72\x66\x63\x32\x38\x33\x33","\x69\x6E\x66\x6F","\x73\x68\x6F\x72\x74\x69\x6E\x66\x6F","\x69\x6E\x62\x61\x6E\x64","\x61\x75\x74\x6F","\x79\x65\x73","\x6E\x6F","\x6E\x6F\x6E\x61\x74","\x75\x70\x64\x61\x74\x65","\x6F\x75\x74\x67\x6F\x69\x6E\x67","\x66\x6F\x72\x63\x65\x5F\x72\x70\x6F\x72\x74\x2C\x63\x6F\x6D\x65\x64\x69\x61","\x6E\x61\x74","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x66\x6F\x72\x63\x65\x5F\x72\x70\x6F\x72\x74\x22\x2C\x20\x22\x63\x6F\x6D\x65\x64\x69\x61\x22\x5D","\x65\x6E","\x61\x6C\x6C","\x61\x6C\x61\x77\x3B\x75\x6C\x61\x77\x3B\x67\x73\x6D","\x61\x6C\x6C\x6F\x77","\x3B","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x61\x6C\x61\x77\x22\x2C\x20\x22\x75\x6C\x61\x77\x22\x2C\x20\x22\x67\x73\x6D\x22\x5D","\x70\x6F\x72\x74\x2C\x69\x6E\x76\x69\x74\x65","\x69\x6E\x73\x65\x63\x75\x72\x65","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x70\x6F\x72\x74\x22\x2C\x20\x22\x69\x6E\x76\x69\x74\x65\x22\x5D","\x6E\x65\x76\x65\x72","\x22\x22\x20\x3C\x3E","\x61\x6C\x77\x61\x79\x73","\x61\x63\x63\x65\x70\x74","\x72\x65\x66\x75\x73\x65","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65","\x75\x61\x63","\x75\x61\x73","\x66\x69\x6E\x67\x65\x72\x70\x72\x69\x6E\x74","\x63\x65\x72\x74\x69\x66\x69\x63\x61\x74\x65","\x61\x63\x74\x69\x76\x65","\x70\x61\x73\x73\x69\x76\x65","\x61\x63\x74\x70\x61\x73\x73","\x75\x70\x64\x61\x74\x65\x2C\x6E\x6F\x6E\x61\x74","\x54\x45\x58\x54","\x70\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x73","\x6D\x61\x70"];_0xb677[0];var Sequelize=require(_0xb677[1]);var moment=require(_0xb677[2]);var util=require(_0xb677[3]);var _=require(_0xb677[4]);module[_0xb677[5]]= {name:{type:Sequelize[_0xb677[6]],allowNull:false,unique:_0xb677[7],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i},set:function(_0xfe68x5){this[_0xb677[8]](_0xb677[7],_0xfe68x5);this[_0xb677[8]](_0xb677[9],_0xfe68x5)},comment:_0xb677[10]},fullname:{type:Sequelize[_0xb677[6]],allowNull:false,set:function(_0xfe68x6){this[_0xb677[8]](_0xb677[11],_0xfe68x6);this[_0xb677[8]](_0xb677[12],util[_0xb677[16]](_0xb677[13],_0xfe68x6,this[_0xb677[15]](_0xb677[14])))}},email:{type:Sequelize[_0xb677[6]],allowNull:false,unique:_0xb677[17],validate:{isEmail:true},set:function(_0xfe68x7){if(_0xfe68x7){this[_0xb677[8]](_0xb677[17],_0xfe68x7[_0xb677[18]]())}}},role:{type:Sequelize.ENUM(_0xb677[19],_0xb677[20],_0xb677[21],_0xb677[22]),allowNull:false},password:{type:Sequelize[_0xb677[6]],allowNull:false,validate:{notEmpty:true}},provider:{type:Sequelize[_0xb677[6]],defaultValue:_0xb677[23]},internal:{type:Sequelize.INTEGER(11),allowNull:false,unique:_0xb677[14],set:function(_0xfe68x8){this[_0xb677[8]](_0xb677[14],_0xfe68x8);this[_0xb677[8]](_0xb677[24],_0xfe68x8);this[_0xb677[8]](_0xb677[12],util[_0xb677[16]](_0xb677[13],this[_0xb677[15]](_0xb677[11]),_0xfe68x8))}},salt:{type:Sequelize[_0xb677[6]]},phone:{type:Sequelize[_0xb677[6]]},mobile:{type:Sequelize[_0xb677[6]]},address:{type:Sequelize[_0xb677[6]]},zipcode:{type:Sequelize[_0xb677[6]]},userpic:{type:Sequelize[_0xb677[6]]},city:{type:Sequelize[_0xb677[6]]},country:{type:Sequelize[_0xb677[6]]},online:{type:Sequelize[_0xb677[25]],defaultValue:false},lastLoginAt:{type:Sequelize[_0xb677[26]]},voicePause:{type:Sequelize[_0xb677[25]],defaultValue:false},chatPause:{type:Sequelize[_0xb677[25]],defaultValue:false},mailPause:{type:Sequelize[_0xb677[25]],defaultValue:false},faxPause:{type:Sequelize[_0xb677[25]],defaultValue:false},smsPause:{type:Sequelize[_0xb677[25]],defaultValue:false},openchannelPause:{type:Sequelize[_0xb677[25]],defaultValue:false},pauseType:{type:Sequelize[_0xb677[6]],defaultValue:_0xb677[27]},lastPauseAt:{type:Sequelize[_0xb677[26]]},chatCapacity:{type:Sequelize[_0xb677[28]],defaultValue:0},mailCapacity:{type:Sequelize[_0xb677[28]],defaultValue:0},faxCapacity:{type:Sequelize[_0xb677[28]],defaultValue:0},smsCapacity:{type:Sequelize[_0xb677[28]],defaultValue:0},openchannelCapacity:{type:Sequelize[_0xb677[28]],defaultValue:0},phoneBarAutoAnswer:{type:Sequelize[_0xb677[25]],defaultValue:false},phoneBarEnableSettings:{type:Sequelize[_0xb677[25]],defaultValue:true},phoneBarListenPort:{type:Sequelize.INTEGER(5),defaultValue:5060},phoneBarExpires:{type:Sequelize.INTEGER(5),defaultValue:120},phoneBarRemoteControl:{type:Sequelize[_0xb677[25]],defaultValue:false},phoneBarRemoteControlPort:{type:Sequelize[_0xb677[28]],defaultValue:9888},phoneBarEnableRecording:{type:Sequelize[_0xb677[25]],defaultValue:false},phoneBarRingInUse:{type:Sequelize[_0xb677[25]],defaultValue:false},chanspy:{type:Sequelize[_0xb677[25]],defaultValue:false},description:{type:Sequelize[_0xb677[6]],allowNull:true},host:{type:Sequelize[_0xb677[6]],allowNull:true,defaultValue:_0xb677[29]},ipaddr:{type:Sequelize[_0xb677[6]],allowNull:true},port:{type:Sequelize.INTEGER(5),allowNull:true},regseconds:{type:Sequelize.INTEGER(11),allowNull:true},fullcontact:{type:Sequelize[_0xb677[6]],allowNull:true},regserver:{type:Sequelize[_0xb677[6]],allowNull:true},useragent:{type:Sequelize[_0xb677[6]],allowNull:true},lastms:{type:Sequelize.INTEGER(11),allowNull:true},type:{type:Sequelize.ENUM(_0xb677[30],_0xb677[20],_0xb677[31]),allowNull:true,defaultValue:_0xb677[30]},context:{type:Sequelize[_0xb677[6]],allowNull:true,defaultValue:_0xb677[32]},callingpres:{type:Sequelize.ENUM(_0xb677[33],_0xb677[34],_0xb677[35],_0xb677[36],_0xb677[37],_0xb677[38],_0xb677[39],_0xb677[40]),allowNull:true},deny:{type:Sequelize[_0xb677[6]],allowNull:true},permit:{type:Sequelize[_0xb677[6]],allowNull:true},secret:{type:Sequelize[_0xb677[6]],allowNull:true},md5secret:{type:Sequelize[_0xb677[6]],allowNull:true},remotesecret:{type:Sequelize[_0xb677[6]],allowNull:true},transport:{type:Sequelize[_0xb677[6]],allowNull:true,defaultValue:_0xb677[41],set:function(_0xfe68x9){this[_0xb677[8]](_0xb677[42],_0xfe68x9?_0xfe68x9[_0xb677[44]](_0xb677[43]):null)},get:function(){return this[_0xb677[15]](_0xb677[42])?this[_0xb677[15]](_0xb677[42])[_0xb677[45]](_0xb677[43]):null},comment:_0xb677[46]},dtmfmode:{type:Sequelize.ENUM(_0xb677[47],_0xb677[48],_0xb677[49],_0xb677[50],_0xb677[51]),allowNull:true,defaultValue:_0xb677[47]},directmedia:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53],_0xb677[54],_0xb677[55],_0xb677[56]),allowNull:true,defaultValue:_0xb677[53]},directrtpsetup:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true,defaultValue:_0xb677[53]},directmediapermit:{type:Sequelize[_0xb677[6]],allowNull:true},directmediadeny:{type:Sequelize[_0xb677[6]],allowNull:true},nat:{type:Sequelize[_0xb677[6]],allowNull:true,defaultValue:_0xb677[57],set:function(_0xfe68x9){this[_0xb677[8]](_0xb677[58],_0xfe68x9?_0xfe68x9[_0xb677[44]](_0xb677[43]):null)},get:function(){return this[_0xb677[15]](_0xb677[58])?this[_0xb677[15]](_0xb677[58])[_0xb677[45]](_0xb677[43]):null},comment:_0xb677[59]},callgroup:{type:Sequelize[_0xb677[6]]},namedcallgroup:{type:Sequelize[_0xb677[6]]},pickupgroup:{type:Sequelize[_0xb677[6]]},namedpickupgroup:{type:Sequelize[_0xb677[6]]},language:{type:Sequelize[_0xb677[6]],defaultValue:_0xb677[60]},tonezone:{type:Sequelize[_0xb677[6]]},disallow:{type:Sequelize[_0xb677[6]],allowNull:false,defaultValue:_0xb677[61]},allow:{type:Sequelize[_0xb677[6]],allowNull:false,defaultValue:_0xb677[62],set:function(_0xfe68x9){this[_0xb677[8]](_0xb677[63],_0xfe68x9?_0xfe68x9[_0xb677[44]](_0xb677[64]):null)},get:function(){return this[_0xb677[15]](_0xb677[63])?this[_0xb677[15]](_0xb677[63])[_0xb677[45]](_0xb677[64]):null},comment:_0xb677[65]},autoframing:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},insecure:{type:Sequelize[_0xb677[6]],allowNull:true,defaultValue:_0xb677[66],set:function(_0xfe68x9){this[_0xb677[8]](_0xb677[67],_0xfe68x9?_0xfe68x9[_0xb677[44]](_0xb677[43]):null)},get:function(){return this[_0xb677[15]](_0xb677[67])?this[_0xb677[15]](_0xb677[67])[_0xb677[45]](_0xb677[43]):null},comment:_0xb677[68]},trustrpid:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true,defaultValue:_0xb677[53]},trust_id_outbound:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true,defaultValue:_0xb677[53]},progressinband:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53],_0xb677[69]),allowNull:true},promiscredir:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},useclientcode:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},accountcode:{type:Sequelize.INTEGER(11),allowNull:true},setvar:{type:Sequelize[_0xb677[6]],allowNull:true},callerid:{type:Sequelize[_0xb677[6]],allowNull:true,defaultValue:_0xb677[70]},amaflags:{type:Sequelize[_0xb677[6]],allowNull:true},callcounter:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true,defaultValue:_0xb677[52]},busylevel:{type:Sequelize.INTEGER(11),allowNull:true},allowoverlap:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},allowsubscribe:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},allowtransfer:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},ignoresdpversion:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},subscribecontext:{type:Sequelize[_0xb677[6]],allowNull:true},template:{type:Sequelize[_0xb677[6]],allowNull:true},videosupport:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53],_0xb677[71]),allowNull:true,defaultValue:_0xb677[53]},maxcallbitrate:{type:Sequelize.INTEGER(11),allowNull:true},rfc2833compensate:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},mailbox:{type:Sequelize[_0xb677[6]],allowNull:true},session_timers:{type:Sequelize.ENUM(_0xb677[72],_0xb677[73],_0xb677[74]),allowNull:true},session_expires:{type:Sequelize.INTEGER(11),allowNull:true},session_minse:{type:Sequelize.INTEGER(11),allowNull:true},session_refresher:{type:Sequelize.ENUM(_0xb677[75],_0xb677[76]),allowNull:true,defaultValue:_0xb677[76]},t38pt_usertpsource:{type:Sequelize[_0xb677[6]],allowNull:true},regexten:{type:Sequelize[_0xb677[6]],allowNull:true},fromdomain:{type:Sequelize[_0xb677[6]],allowNull:true},fromuser:{type:Sequelize[_0xb677[6]],allowNull:true},qualify:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true,defaultValue:_0xb677[52]},keepalive:{type:Sequelize.INTEGER(11),allowNull:true},defaultip:{type:Sequelize[_0xb677[6]],allowNull:true},defaultuser:{type:Sequelize[_0xb677[6]],allowNull:true},rtptimeout:{type:Sequelize.INTEGER(11),allowNull:true},rtpholdtimeout:{type:Sequelize.INTEGER(11),allowNull:true},rtpkeepalive:{type:Sequelize.INTEGER(11),allowNull:true},sendrpid:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true,defaultValue:_0xb677[53]},outboundproxy:{type:Sequelize[_0xb677[6]],allowNull:true},callbackextension:{type:Sequelize[_0xb677[6]],allowNull:true},timert1:{type:Sequelize.INTEGER(11),allowNull:true},timerb:{type:Sequelize.INTEGER(11),allowNull:true},qualifyfreq:{type:Sequelize.INTEGER(11),allowNull:true},contactpermit:{type:Sequelize[_0xb677[6]],allowNull:true},contactdeny:{type:Sequelize[_0xb677[6]],allowNull:true},contactacl:{type:Sequelize[_0xb677[6]],allowNull:true},unsolicited_mailbox:{type:Sequelize[_0xb677[6]],allowNull:true},use_q850_reason:{type:Sequelize[_0xb677[6]],allowNull:true},maxforwards:{type:Sequelize.INTEGER(11),allowNull:true},encryption:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true,defaultValue:_0xb677[53]},avpf:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},force_avp:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},icesupport:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},dtlsenable:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},dtlsverify:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53],_0xb677[77],_0xb677[78]),allowNull:true},dtlsrekey:{type:Sequelize.INTEGER(11),allowNull:true},dtlscertfile:{type:Sequelize[_0xb677[6]],allowNull:true},dtlsprivatekey:{type:Sequelize[_0xb677[6]],allowNull:true},dtlscipher:{type:Sequelize[_0xb677[6]],allowNull:true},dtlscafile:{type:Sequelize[_0xb677[6]],allowNull:true},dtlscapath:{type:Sequelize[_0xb677[6]],allowNull:true},dtlssetup:{type:Sequelize.ENUM(_0xb677[79],_0xb677[80],_0xb677[81]),allowNull:true},dtlsfingerprint:{type:Sequelize[_0xb677[6]],allowNull:true},usereqphone:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true,defaultValue:_0xb677[53]},recordonfeature:{type:Sequelize[_0xb677[6]],allowNull:true},recordofffeature:{type:Sequelize[_0xb677[6]],allowNull:true},call_limit:{type:Sequelize.INTEGER(11),allowNull:true,defaultValue:10},registertrying:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},subscribemwi:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53]),allowNull:true},vmexten:{type:Sequelize[_0xb677[6]],allowNull:true},mohinterpret:{type:Sequelize[_0xb677[6]],allowNull:true},mohsuggest:{type:Sequelize[_0xb677[6]],allowNull:true},parkinglot:{type:Sequelize[_0xb677[6]],allowNull:true},canreinvite:{type:Sequelize.ENUM(_0xb677[52],_0xb677[53],_0xb677[54],_0xb677[55],_0xb677[82]),allowNull:true,defaultValue:_0xb677[53]},loginInPause:{type:Sequelize[_0xb677[25]],defaultValue:false},resetPasswordToken:{type:Sequelize[_0xb677[6]]},resetPasswordExpires:{type:Sequelize[_0xb677[26]]},showWebBar:{type:Sequelize[_0xb677[25]],defaultValue:false},permissions:{type:Sequelize[_0xb677[83]],set:function(_0xfe68x9){this[_0xb677[8]](_0xb677[84],_0xfe68x9?_0xfe68x9[_0xb677[44]](_0xb677[43]):[])},get:function(){return this[_0xb677[15]](_0xb677[84])?_[_0xb677[85]](this[_0xb677[15]](_0xb677[84])[_0xb677[45]](_0xb677[43]),function(_0xfe68xa){return parseInt(_0xfe68xa,10)}):[]}}}
\ No newline at end of file
+var _0xf66f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x64\x65\x66\x61\x75\x6C\x74\x75\x73\x65\x72","\x54\x68\x65\x20\x6E\x61\x6D\x65\x20\x6F\x66\x20\x74\x68\x65\x20\x75\x73\x65\x72","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x66\x6F\x72\x6D\x61\x74","\x65\x6D\x61\x69\x6C","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x61\x67\x65\x6E\x74","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x6C\x6F\x63\x61\x6C","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x42\x4F\x4F\x4C\x45\x41\x4E","\x44\x41\x54\x45","\x44\x45\x46\x41\x55\x4C\x54\x20\x50\x41\x55\x53\x45","\x49\x4E\x54\x45\x47\x45\x52","\x64\x79\x6E\x61\x6D\x69\x63","\x66\x72\x69\x65\x6E\x64","\x70\x65\x65\x72","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x4E\x4F\x54\x5F\x53\x43\x52\x45\x45\x4E\x45\x44","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x50\x41\x53\x53\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x41\x4C\x4C\x4F\x57\x45\x44\x5F\x46\x41\x49\x4C\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x41\x4C\x4C\x4F\x57\x45\x44","\x50\x52\x4F\x48\x49\x42\x5F\x4E\x4F\x54\x5F\x53\x43\x52\x45\x45\x4E\x45\x44","\x50\x52\x4F\x48\x49\x42\x5F\x50\x41\x53\x53\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x50\x52\x4F\x48\x49\x42\x5F\x46\x41\x49\x4C\x45\x44\x5F\x53\x43\x52\x45\x45\x4E","\x50\x52\x4F\x48\x49\x42","\x75\x64\x70","\x74\x72\x61\x6E\x73\x70\x6F\x72\x74","\x2C","\x6A\x6F\x69\x6E","\x73\x70\x6C\x69\x74","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x75\x64\x70\x22\x2C\x20\x22\x74\x63\x70\x22\x5D","\x72\x66\x63\x32\x38\x33\x33","\x69\x6E\x66\x6F","\x73\x68\x6F\x72\x74\x69\x6E\x66\x6F","\x69\x6E\x62\x61\x6E\x64","\x61\x75\x74\x6F","\x79\x65\x73","\x6E\x6F","\x6E\x6F\x6E\x61\x74","\x75\x70\x64\x61\x74\x65","\x6F\x75\x74\x67\x6F\x69\x6E\x67","\x66\x6F\x72\x63\x65\x5F\x72\x70\x6F\x72\x74\x2C\x63\x6F\x6D\x65\x64\x69\x61","\x6E\x61\x74","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x66\x6F\x72\x63\x65\x5F\x72\x70\x6F\x72\x74\x22\x2C\x20\x22\x63\x6F\x6D\x65\x64\x69\x61\x22\x5D","\x65\x6E","\x61\x6C\x6C","\x61\x6C\x61\x77\x3B\x75\x6C\x61\x77\x3B\x67\x73\x6D","\x61\x6C\x6C\x6F\x77","\x3B","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x61\x6C\x61\x77\x22\x2C\x20\x22\x75\x6C\x61\x77\x22\x2C\x20\x22\x67\x73\x6D\x22\x5D","\x70\x6F\x72\x74\x2C\x69\x6E\x76\x69\x74\x65","\x69\x6E\x73\x65\x63\x75\x72\x65","\x53\x74\x72\x69\x6E\x67\x20\x69\x73\x20\x64\x65\x70\x72\x65\x63\x61\x74\x65\x64\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x73\x65\x20\x61\x6E\x20\x41\x72\x72\x61\x79\x20\x61\x73\x20\x5B\x22\x70\x6F\x72\x74\x22\x2C\x20\x22\x69\x6E\x76\x69\x74\x65\x22\x5D","\x6E\x65\x76\x65\x72","\x22\x22\x20\x3C\x3E","\x61\x6C\x77\x61\x79\x73","\x61\x63\x63\x65\x70\x74","\x72\x65\x66\x75\x73\x65","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65","\x75\x61\x63","\x75\x61\x73","\x66\x69\x6E\x67\x65\x72\x70\x72\x69\x6E\x74","\x63\x65\x72\x74\x69\x66\x69\x63\x61\x74\x65","\x61\x63\x74\x69\x76\x65","\x70\x61\x73\x73\x69\x76\x65","\x61\x63\x74\x70\x61\x73\x73","\x75\x70\x64\x61\x74\x65\x2C\x6E\x6F\x6E\x61\x74","\x54\x45\x58\x54","\x70\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x73","\x6D\x61\x70"];_0xf66f[0];var Sequelize=require(_0xf66f[1]);var moment=require(_0xf66f[2]);var util=require(_0xf66f[3]);var _=require(_0xf66f[4]);module[_0xf66f[5]]= {name:{type:Sequelize[_0xf66f[6]],allowNull:false,unique:_0xf66f[7],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i},set:function(_0x21eex5){this[_0xf66f[8]](_0xf66f[7],_0x21eex5);this[_0xf66f[8]](_0xf66f[9],_0x21eex5)},comment:_0xf66f[10]},fullname:{type:Sequelize[_0xf66f[6]],allowNull:false,set:function(_0x21eex6){this[_0xf66f[8]](_0xf66f[11],_0x21eex6);this[_0xf66f[8]](_0xf66f[12],util[_0xf66f[16]](_0xf66f[13],_0x21eex6,this[_0xf66f[15]](_0xf66f[14])))}},email:{type:Sequelize[_0xf66f[6]],allowNull:false,unique:_0xf66f[17],validate:{isEmail:true},set:function(_0x21eex7){if(_0x21eex7){this[_0xf66f[8]](_0xf66f[17],_0x21eex7[_0xf66f[18]]())}}},role:{type:Sequelize.ENUM(_0xf66f[19],_0xf66f[20],_0xf66f[21],_0xf66f[22]),allowNull:false},password:{type:Sequelize[_0xf66f[6]],allowNull:false,validate:{notEmpty:true}},provider:{type:Sequelize[_0xf66f[6]],defaultValue:_0xf66f[23]},internal:{type:Sequelize.INTEGER(11),allowNull:false,unique:_0xf66f[14],set:function(_0x21eex8){this[_0xf66f[8]](_0xf66f[14],_0x21eex8);this[_0xf66f[8]](_0xf66f[24],_0x21eex8);this[_0xf66f[8]](_0xf66f[12],util[_0xf66f[16]](_0xf66f[13],this[_0xf66f[15]](_0xf66f[11]),_0x21eex8))}},salt:{type:Sequelize[_0xf66f[6]]},phone:{type:Sequelize[_0xf66f[6]]},mobile:{type:Sequelize[_0xf66f[6]]},address:{type:Sequelize[_0xf66f[6]]},zipcode:{type:Sequelize[_0xf66f[6]]},userpic:{type:Sequelize[_0xf66f[6]]},city:{type:Sequelize[_0xf66f[6]]},country:{type:Sequelize[_0xf66f[6]]},online:{type:Sequelize[_0xf66f[25]],defaultValue:false},lastLoginAt:{type:Sequelize[_0xf66f[26]]},voicePause:{type:Sequelize[_0xf66f[25]],defaultValue:false},chatPause:{type:Sequelize[_0xf66f[25]],defaultValue:false},mailPause:{type:Sequelize[_0xf66f[25]],defaultValue:false},faxPause:{type:Sequelize[_0xf66f[25]],defaultValue:false},smsPause:{type:Sequelize[_0xf66f[25]],defaultValue:false},openchannelPause:{type:Sequelize[_0xf66f[25]],defaultValue:false},pauseType:{type:Sequelize[_0xf66f[6]],defaultValue:_0xf66f[27]},lastPauseAt:{type:Sequelize[_0xf66f[26]]},chatCapacity:{type:Sequelize[_0xf66f[28]],defaultValue:0},mailCapacity:{type:Sequelize[_0xf66f[28]],defaultValue:0},faxCapacity:{type:Sequelize[_0xf66f[28]],defaultValue:0},smsCapacity:{type:Sequelize[_0xf66f[28]],defaultValue:0},openchannelCapacity:{type:Sequelize[_0xf66f[28]],defaultValue:0},phoneBarAutoAnswer:{type:Sequelize[_0xf66f[25]],defaultValue:false},phoneBarEnableSettings:{type:Sequelize[_0xf66f[25]],defaultValue:true},phoneBarListenPort:{type:Sequelize.INTEGER(5),defaultValue:5060},phoneBarExpires:{type:Sequelize.INTEGER(5),defaultValue:120},phoneBarRemoteControl:{type:Sequelize[_0xf66f[25]],defaultValue:false},phoneBarRemoteControlPort:{type:Sequelize[_0xf66f[28]],defaultValue:9888},phoneBarEnableRecording:{type:Sequelize[_0xf66f[25]],defaultValue:false},phoneBarRingInUse:{type:Sequelize[_0xf66f[25]],defaultValue:false},chanspy:{type:Sequelize[_0xf66f[25]],defaultValue:false},description:{type:Sequelize[_0xf66f[6]],allowNull:true},host:{type:Sequelize[_0xf66f[6]],allowNull:true,defaultValue:_0xf66f[29]},ipaddr:{type:Sequelize[_0xf66f[6]],allowNull:true},port:{type:Sequelize.INTEGER(5),allowNull:true},regseconds:{type:Sequelize.INTEGER(11),allowNull:true},fullcontact:{type:Sequelize[_0xf66f[6]],allowNull:true},regserver:{type:Sequelize[_0xf66f[6]],allowNull:true},useragent:{type:Sequelize[_0xf66f[6]],allowNull:true},lastms:{type:Sequelize.INTEGER(11),allowNull:true},type:{type:Sequelize.ENUM(_0xf66f[30],_0xf66f[20],_0xf66f[31]),allowNull:true,defaultValue:_0xf66f[30]},context:{type:Sequelize[_0xf66f[6]],allowNull:true,defaultValue:_0xf66f[32]},callingpres:{type:Sequelize.ENUM(_0xf66f[33],_0xf66f[34],_0xf66f[35],_0xf66f[36],_0xf66f[37],_0xf66f[38],_0xf66f[39],_0xf66f[40]),allowNull:true},deny:{type:Sequelize[_0xf66f[6]],allowNull:true},permit:{type:Sequelize[_0xf66f[6]],allowNull:true},secret:{type:Sequelize[_0xf66f[6]],allowNull:true},md5secret:{type:Sequelize[_0xf66f[6]],allowNull:true},remotesecret:{type:Sequelize[_0xf66f[6]],allowNull:true},transport:{type:Sequelize[_0xf66f[6]],allowNull:true,defaultValue:_0xf66f[41],set:function(_0x21eex9){this[_0xf66f[8]](_0xf66f[42],_0x21eex9?_0x21eex9[_0xf66f[44]](_0xf66f[43]):null)},get:function(){return this[_0xf66f[15]](_0xf66f[42])?this[_0xf66f[15]](_0xf66f[42])[_0xf66f[45]](_0xf66f[43]):null},comment:_0xf66f[46]},dtmfmode:{type:Sequelize.ENUM(_0xf66f[47],_0xf66f[48],_0xf66f[49],_0xf66f[50],_0xf66f[51]),allowNull:true,defaultValue:_0xf66f[47]},directmedia:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53],_0xf66f[54],_0xf66f[55],_0xf66f[56]),allowNull:true,defaultValue:_0xf66f[53]},directrtpsetup:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true,defaultValue:_0xf66f[53]},directmediapermit:{type:Sequelize[_0xf66f[6]],allowNull:true},directmediadeny:{type:Sequelize[_0xf66f[6]],allowNull:true},nat:{type:Sequelize[_0xf66f[6]],allowNull:true,defaultValue:_0xf66f[57],set:function(_0x21eex9){this[_0xf66f[8]](_0xf66f[58],_0x21eex9?_0x21eex9[_0xf66f[44]](_0xf66f[43]):null)},get:function(){return this[_0xf66f[15]](_0xf66f[58])?this[_0xf66f[15]](_0xf66f[58])[_0xf66f[45]](_0xf66f[43]):null},comment:_0xf66f[59]},callgroup:{type:Sequelize[_0xf66f[6]]},namedcallgroup:{type:Sequelize[_0xf66f[6]]},pickupgroup:{type:Sequelize[_0xf66f[6]]},namedpickupgroup:{type:Sequelize[_0xf66f[6]]},language:{type:Sequelize[_0xf66f[6]],defaultValue:_0xf66f[60]},tonezone:{type:Sequelize[_0xf66f[6]]},disallow:{type:Sequelize[_0xf66f[6]],allowNull:false,defaultValue:_0xf66f[61]},allow:{type:Sequelize[_0xf66f[6]],allowNull:false,defaultValue:_0xf66f[62],set:function(_0x21eex9){this[_0xf66f[8]](_0xf66f[63],_0x21eex9?_0x21eex9[_0xf66f[44]](_0xf66f[64]):null)},get:function(){return this[_0xf66f[15]](_0xf66f[63])?this[_0xf66f[15]](_0xf66f[63])[_0xf66f[45]](_0xf66f[64]):null},comment:_0xf66f[65]},autoframing:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},insecure:{type:Sequelize[_0xf66f[6]],allowNull:true,defaultValue:_0xf66f[66],set:function(_0x21eex9){this[_0xf66f[8]](_0xf66f[67],_0x21eex9?_0x21eex9[_0xf66f[44]](_0xf66f[43]):null)},get:function(){return this[_0xf66f[15]](_0xf66f[67])?this[_0xf66f[15]](_0xf66f[67])[_0xf66f[45]](_0xf66f[43]):null},comment:_0xf66f[68]},trustrpid:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true,defaultValue:_0xf66f[53]},trust_id_outbound:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true,defaultValue:_0xf66f[53]},progressinband:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53],_0xf66f[69]),allowNull:true},promiscredir:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},useclientcode:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},accountcode:{type:Sequelize.INTEGER(11),allowNull:true},setvar:{type:Sequelize[_0xf66f[6]],allowNull:true},callerid:{type:Sequelize[_0xf66f[6]],allowNull:true,defaultValue:_0xf66f[70]},amaflags:{type:Sequelize[_0xf66f[6]],allowNull:true},callcounter:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true,defaultValue:_0xf66f[52]},busylevel:{type:Sequelize.INTEGER(11),allowNull:true},allowoverlap:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},allowsubscribe:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},allowtransfer:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},ignoresdpversion:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},subscribecontext:{type:Sequelize[_0xf66f[6]],allowNull:true},template:{type:Sequelize[_0xf66f[6]],allowNull:true},videosupport:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53],_0xf66f[71]),allowNull:true,defaultValue:_0xf66f[53]},maxcallbitrate:{type:Sequelize.INTEGER(11),allowNull:true},rfc2833compensate:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},mailbox:{type:Sequelize[_0xf66f[6]],allowNull:true},session_timers:{type:Sequelize.ENUM(_0xf66f[72],_0xf66f[73],_0xf66f[74]),allowNull:true},session_expires:{type:Sequelize.INTEGER(11),allowNull:true},session_minse:{type:Sequelize.INTEGER(11),allowNull:true},session_refresher:{type:Sequelize.ENUM(_0xf66f[75],_0xf66f[76]),allowNull:true,defaultValue:_0xf66f[76]},t38pt_usertpsource:{type:Sequelize[_0xf66f[6]],allowNull:true},regexten:{type:Sequelize[_0xf66f[6]],allowNull:true},fromdomain:{type:Sequelize[_0xf66f[6]],allowNull:true},fromuser:{type:Sequelize[_0xf66f[6]],allowNull:true},qualify:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true,defaultValue:_0xf66f[52]},keepalive:{type:Sequelize.INTEGER(11),allowNull:true},defaultip:{type:Sequelize[_0xf66f[6]],allowNull:true},defaultuser:{type:Sequelize[_0xf66f[6]],allowNull:true},rtptimeout:{type:Sequelize.INTEGER(11),allowNull:true},rtpholdtimeout:{type:Sequelize.INTEGER(11),allowNull:true},rtpkeepalive:{type:Sequelize.INTEGER(11),allowNull:true},sendrpid:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true,defaultValue:_0xf66f[53]},outboundproxy:{type:Sequelize[_0xf66f[6]],allowNull:true},callbackextension:{type:Sequelize[_0xf66f[6]],allowNull:true},timert1:{type:Sequelize.INTEGER(11),allowNull:true},timerb:{type:Sequelize.INTEGER(11),allowNull:true},qualifyfreq:{type:Sequelize.INTEGER(11),allowNull:true},contactpermit:{type:Sequelize[_0xf66f[6]],allowNull:true},contactdeny:{type:Sequelize[_0xf66f[6]],allowNull:true},contactacl:{type:Sequelize[_0xf66f[6]],allowNull:true},unsolicited_mailbox:{type:Sequelize[_0xf66f[6]],allowNull:true},use_q850_reason:{type:Sequelize[_0xf66f[6]],allowNull:true},maxforwards:{type:Sequelize.INTEGER(11),allowNull:true},encryption:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true,defaultValue:_0xf66f[53]},avpf:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},force_avp:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},icesupport:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},dtlsenable:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},dtlsverify:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53],_0xf66f[77],_0xf66f[78]),allowNull:true},dtlsrekey:{type:Sequelize.INTEGER(11),allowNull:true},dtlscertfile:{type:Sequelize[_0xf66f[6]],allowNull:true},dtlsprivatekey:{type:Sequelize[_0xf66f[6]],allowNull:true},dtlscipher:{type:Sequelize[_0xf66f[6]],allowNull:true},dtlscafile:{type:Sequelize[_0xf66f[6]],allowNull:true},dtlscapath:{type:Sequelize[_0xf66f[6]],allowNull:true},dtlssetup:{type:Sequelize.ENUM(_0xf66f[79],_0xf66f[80],_0xf66f[81]),allowNull:true},dtlsfingerprint:{type:Sequelize[_0xf66f[6]],allowNull:true},usereqphone:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true,defaultValue:_0xf66f[53]},recordonfeature:{type:Sequelize[_0xf66f[6]],allowNull:true},recordofffeature:{type:Sequelize[_0xf66f[6]],allowNull:true},call_limit:{type:Sequelize.INTEGER(11),allowNull:true,defaultValue:10},registertrying:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},subscribemwi:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53]),allowNull:true},vmexten:{type:Sequelize[_0xf66f[6]],allowNull:true},mohinterpret:{type:Sequelize[_0xf66f[6]],allowNull:true},mohsuggest:{type:Sequelize[_0xf66f[6]],allowNull:true},parkinglot:{type:Sequelize[_0xf66f[6]],allowNull:true},canreinvite:{type:Sequelize.ENUM(_0xf66f[52],_0xf66f[53],_0xf66f[54],_0xf66f[55],_0xf66f[82]),allowNull:true,defaultValue:_0xf66f[53]},loginInPause:{type:Sequelize[_0xf66f[25]],defaultValue:false},resetPasswordToken:{type:Sequelize[_0xf66f[6]]},resetPasswordExpires:{type:Sequelize[_0xf66f[26]]},showWebBar:{type:Sequelize[_0xf66f[25]],defaultValue:false},permissions:{type:Sequelize[_0xf66f[83]],set:function(_0x21eex9){this[_0xf66f[8]](_0xf66f[84],_0x21eex9?_0x21eex9[_0xf66f[44]](_0xf66f[43]):[])},get:function(){return this[_0xf66f[15]](_0xf66f[84])?_[_0xf66f[85]](this[_0xf66f[15]](_0xf66f[84])[_0xf66f[45]](_0xf66f[43]),function(_0x21eexa){return parseInt(_0x21eexa,10)}):[]}}}
\ No newline at end of file
index 77b83f8..c95795d 100644 (file)
@@ -1 +1 @@
-var _0xecce=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x2E\x2F\x75\x73\x65\x72\x2E\x73\x6F\x63\x6B\x65\x74","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x55\x73\x65\x72","\x6B\x65\x79\x73","\x70\x61\x73\x73\x77\x6F\x72\x64","\x73\x61\x6C\x74","\x64\x69\x66\x66\x65\x72\x65\x6E\x63\x65\x42\x79","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x69\x64\x73","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x6F\x6D\x69\x74","\x72\x6F\x6C\x65","\x61\x67\x65\x6E\x74","\x61\x67\x65\x6E\x74\x20\x72\x6F\x6C\x65","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x75\x73\x65\x72\x73","\x4C\x69\x63\x65\x6E\x73\x65\x20\x6C\x69\x6D\x69\x74\x20\x72\x65\x61\x63\x68\x65\x64","\x63\x6F\x75\x6E\x74\x20\x25\x73\x3A\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x67\x65\x74\x4C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x75\x74\x69\x6C","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x63\x72\x65\x61\x74\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x6D\x61\x69\x6C\x62\x6F\x78","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x65\x6D\x61\x69\x6C","\x6D\x61\x78","\x63\x68\x61\x6E\x67\x65\x50\x61\x73\x73\x77\x6F\x72\x64","\x6E\x65\x77\x50\x61\x73\x73\x77\x6F\x72\x64","\x49\x6E\x76\x61\x6C\x69\x64\x20\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D\x61\x74","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6F\x6C\x64\x50\x61\x73\x73\x77\x6F\x72\x64","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x61\x64\x64\x51\x75\x65\x75\x65\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x76\x6F\x69\x63\x65","\x72\x65\x61\x6C\x74\x69\x6D\x65","\x25\x73\x2F\x25\x73","\x53\x49\x50","\x6C\x6F\x67\x69\x6E\x49\x6E\x50\x61\x75\x73\x65","\x70\x65\x6E\x61\x6C\x74\x79","\x75\x70\x73\x65\x72\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x70\x75\x73\x68","\x61\x6C\x6C","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x69\x73\x56\x61\x6C\x69\x64\x43\x68\x61\x6E\x6E\x65\x6C","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x61\x64\x64","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","\x51\x75\x65\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65\x51\x75\x65\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x61\x64\x64\x41\x76\x61\x74\x61\x72","\x75\x73\x65\x72\x70\x69\x63","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x66\x69\x6C\x65","\x61\x76\x61\x64\x64\x41\x76\x61\x74\x61\x72\x61\x74\x61\x72","\x67\x65\x74\x41\x76\x61\x74\x61\x72","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F\x6C\x6F\x67\x6F\x73\x2F\x64\x65\x66\x61\x75\x6C\x74\x5F\x70\x72\x6F\x66\x69\x6C\x65\x2E\x6A\x70\x67","\x6A\x6F\x69\x6E","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x51\x75\x65\x75\x65\x73","\x51\x75\x65\x75\x65","\x67\x65\x74","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x72\x6F\x6C\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x52\x74","\x67\x65\x74\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x6C\x6F\x67\x69\x6E","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x4C\x4F\x47\x49\x4E\x49\x4E\x50\x41\x55\x53\x45","\x67\x65\x74\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x4C\x4F\x47\x49\x4E","\x50\x41\x55\x53\x45","\x66\x6F\x72\x45\x61\x63\x68","\x63\x6F\x6E\x63\x61\x74","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x70\x65\x6E\x61\x6C\x74\x79","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x6C\x6F\x67\x6F\x75\x74","\x70\x61\x75\x73\x65","\x74\x79\x70\x65","\x44\x45\x46\x41\x55\x4C\x54\x20\x50\x41\x55\x53\x45","\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65","\x75\x6E\x70\x61\x75\x73\x65","\x6D\x61\x6E\x75\x61\x6C","\x6D\x61\x69\x6C","\x63\x68\x61\x74","\x66\x61\x78","\x73\x6D\x73","\x25\x73\x25\x73","\x50\x61\x75\x73\x65","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x67\x65\x74\x4C\x69\x73\x74\x73","\x43\x6D\x4C\x69\x73\x74"];_0xecce[0];var jsonpatch=require(_0xecce[1]);var rp=require(_0xecce[2]);var moment=require(_0xecce[3]);var BPromise=require(_0xecce[4]);var util=require(_0xecce[5]);var path=require(_0xecce[6]);var sox=require(_0xecce[7]);var ejs=require(_0xecce[8]);var fs=require(_0xecce[9]);var _=require(_0xecce[10]);var squel=require(_0xecce[11]);var crypto=require(_0xecce[12]);var jsforce=require(_0xecce[13]);var toCsv=require(_0xecce[14]);var qs=require(_0xecce[15]);var logger=require(_0xecce[17])(_0xecce[16]);var utils=require(_0xecce[18]);var config=require(_0xecce[19]);var db=require(_0xecce[21])[_0xecce[20]];var socket=require(_0xecce[23])({host:_0xecce[22],port:6379});require(_0xecce[25])[_0xecce[24]](socket);var jayson=require(_0xecce[26]);var client=jayson[_0xecce[28]][_0xecce[27]]({port:9002});function respondWithRpcPromise(_0xdbc1x18,_0xdbc1x19,_0xdbc1x1a){return  new BPromise(function(_0xdbc1x1b,_0xdbc1x1c){return client[_0xecce[41]](_0xdbc1x18,_0xdbc1x1a)[_0xecce[40]](function(_0xdbc1x1e){logger[_0xecce[33]](_0xecce[29],_0xdbc1x19,_0xecce[32]);logger[_0xecce[36]](_0xecce[34],_0xdbc1x19,_0xecce[32],JSON[_0xecce[35]](_0xdbc1x1e));if(_0xdbc1x1e[_0xecce[30]]){if(_0xdbc1x1e[_0xecce[30]][_0xecce[37]]=== 500){logger[_0xecce[30]](_0xecce[29],_0xdbc1x19,_0xdbc1x1e[_0xecce[30]][_0xecce[38]]);return _0xdbc1x1c(_0xdbc1x1e[_0xecce[30]][_0xecce[38]])};logger[_0xecce[30]](_0xecce[29],_0xdbc1x19,_0xdbc1x1e[_0xecce[30]][_0xecce[38]]);return _0xdbc1x1b(_0xdbc1x1e[_0xecce[30]][_0xecce[38]])}else {logger[_0xecce[33]](_0xecce[29],_0xdbc1x19,_0xecce[32]);_0xdbc1x1b(_0xdbc1x1e[_0xecce[39]][_0xecce[38]])}})[_0xecce[31]](function(_0xdbc1x1d){logger[_0xecce[30]](_0xecce[29],_0xdbc1x19,_0xdbc1x1d);_0xdbc1x1c(_0xdbc1x1d)})})}function respondWithStatusCode(_0xdbc1x1e,_0xdbc1x20,_0xdbc1x19){_0xdbc1x20= _0xdbc1x20|| 204;return function(_0xdbc1x21){if(_0xdbc1x21){logger[_0xecce[33]](_0xecce[34],_0xdbc1x19,_0xdbc1x20,_0xecce[42]);logger[_0xecce[36]](_0xecce[43],_0xdbc1x19,_0xdbc1x20,_0xecce[42]);return _0xdbc1x1e[_0xecce[44]](_0xdbc1x20)};return _0xdbc1x1e[_0xecce[46]](304)[_0xecce[45]]()}}function respondWithResult(_0xdbc1x1e,_0xdbc1x20,_0xdbc1x19){_0xdbc1x20= _0xdbc1x20|| 200;return function(_0xdbc1x21){if(_0xdbc1x21){logger[_0xecce[33]](_0xecce[34],_0xdbc1x19,_0xdbc1x20,_0xecce[47]);logger[_0xecce[36]](_0xecce[43],_0xdbc1x19,_0xdbc1x20,_0xecce[47],JSON[_0xecce[35]](_0xdbc1x21));return _0xdbc1x1e[_0xecce[46]](_0xdbc1x20)[_0xecce[48]](_0xdbc1x21)};return _0xdbc1x1e[_0xecce[46]](304)[_0xecce[45]]()}}function respondWithFilteredResult(_0xdbc1x1e,_0xdbc1x24,_0xdbc1x19){return function(_0xdbc1x21){if(_0xdbc1x21){var _0xdbc1x25=_0xdbc1x21[_0xecce[49]],_0xdbc1x26=_0xdbc1x24[_0xecce[50]],_0xdbc1x27=_0xdbc1x24[_0xecce[50]]+ _0xdbc1x24[_0xecce[51]],_0xdbc1x20;if(_0xdbc1x27>= _0xdbc1x25){_0xdbc1x27= _0xdbc1x25;_0xdbc1x20= 200}else {_0xdbc1x20= 206};_0xdbc1x1e[_0xecce[46]](_0xdbc1x20);logger[_0xecce[33]](_0xecce[34],_0xdbc1x19,_0xdbc1x20,_0xecce[52]);logger[_0xecce[36]](_0xecce[43],_0xdbc1x19,_0xdbc1x20,_0xecce[47],JSON[_0xecce[35]](_0xdbc1x21));return _0xdbc1x1e[_0xecce[56]](_0xecce[53],_0xdbc1x26+ _0xecce[54]+ _0xdbc1x27+ _0xecce[55]+ _0xdbc1x25)[_0xecce[48]](_0xdbc1x21)};return null}}function patchUpdates(_0xdbc1x29){return function(_0xdbc1x21){try{jsonpatch[_0xecce[57]](_0xdbc1x21,_0xdbc1x29,true)}catch(err){return BPromise[_0xecce[58]](err)};return _0xdbc1x21[_0xecce[59]]()}}function saveUpdates(_0xdbc1x2b,_0xdbc1x20,_0xdbc1x19){return function(_0xdbc1x21){if(_0xdbc1x21){return _0xdbc1x21[_0xecce[61]](_0xdbc1x2b)[_0xecce[40]](function(_0xdbc1x2c){logger[_0xecce[33]](_0xecce[34],_0xdbc1x19,_0xdbc1x20,_0xecce[60]);logger[_0xecce[36]](_0xecce[43],_0xdbc1x19,_0xdbc1x20,_0xecce[60],JSON[_0xecce[35]](_0xdbc1x21));return _0xdbc1x2c})};return null}}function removeEntity(_0xdbc1x1e,_0xdbc1x20,_0xdbc1x19){return function(_0xdbc1x21){if(_0xdbc1x21){return _0xdbc1x21[_0xecce[63]]()[_0xecce[40]](function(){logger[_0xecce[33]](_0xecce[34],_0xdbc1x19,_0xdbc1x20,_0xecce[62]);logger[_0xecce[36]](_0xecce[43],_0xdbc1x19,_0xdbc1x20,_0xecce[62],JSON[_0xecce[35]](_0xdbc1x21));_0xdbc1x1e[_0xecce[46]](204)[_0xecce[45]]()})}}}function handleEntityNotFound(_0xdbc1x1e,_0xdbc1x20,_0xdbc1x19){return function(_0xdbc1x21){if(!_0xdbc1x21){logger[_0xecce[30]](_0xecce[34],_0xdbc1x19,404,_0xecce[64]);_0xdbc1x1e[_0xecce[46]](404)[_0xecce[45]]();return null};return _0xdbc1x21}}function handleError(_0xdbc1x1e,_0xdbc1x20,_0xdbc1x19){_0xdbc1x20= _0xdbc1x20|| 500;return function(_0xdbc1x1d){logger[_0xecce[30]](_0xecce[34],_0xdbc1x19,_0xdbc1x20,JSON[_0xecce[35]](_0xdbc1x1d));delete _0xdbc1x1d[_0xecce[65]];_0xdbc1x1e[_0xecce[46]](_0xdbc1x20)[_0xecce[66]](_0xdbc1x1d)}}exports[_0xecce[67]]= function(_0xdbc1x1a,_0xdbc1x1e){var _0xdbc1x24={},_0xdbc1x30={};_0xdbc1x30[_0xecce[68]]= _[_0xecce[74]](_[_0xecce[71]](db[_0xecce[70]][_0xecce[69]]),[_0xecce[72],_0xecce[73]]);_0xdbc1x30[_0xecce[75]]= _[_0xecce[71]](_0xdbc1x1a[_0xecce[75]]);_0xdbc1x30[_0xecce[76]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],_0xdbc1x30[_0xecce[75]]);_0xdbc1x24[_0xecce[78]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],qs[_0xecce[79]](_0xdbc1x1a[_0xecce[75]][_0xecce[79]]));_0xdbc1x24[_0xecce[78]]= (_0xdbc1x24[_0xecce[78]][_0xecce[80]])?_0xdbc1x24[_0xecce[78]]:_0xdbc1x30[_0xecce[68]];if(!_0xdbc1x1a[_0xecce[75]][_0xecce[82]](_0xecce[81])){_0xdbc1x24[_0xecce[51]]= qs[_0xecce[51]](_0xdbc1x1a[_0xecce[75]][_0xecce[51]]);_0xdbc1x24[_0xecce[50]]= qs[_0xecce[50]](_0xdbc1x1a[_0xecce[75]][_0xecce[50]])};_0xdbc1x24[_0xecce[83]]= qs[_0xecce[84]](_0xdbc1x1a[_0xecce[75]][_0xecce[84]]);_0xdbc1x24[_0xecce[85]]= qs[_0xecce[76]](_[_0xecce[86]](_0xdbc1x1a[_0xecce[75]],_0xdbc1x30[_0xecce[76]]));if(_0xdbc1x1a[_0xecce[75]][_0xecce[87]]){_0xdbc1x24[_0xecce[85]]= _[_0xecce[90]](_0xdbc1x24[_0xecce[85]],{$or:_[_0xecce[89]](_0xdbc1x24[_0xecce[78]],function(_0xdbc1x31){var _0xdbc1x32={};_0xdbc1x32[_0xdbc1x31]= {$like:_0xecce[88]+ _0xdbc1x1a[_0xecce[75]][_0xecce[87]]+ _0xecce[88]};return _0xdbc1x32})})};_0xdbc1x24= _[_0xecce[90]]({},_0xdbc1x24,_0xdbc1x1a[_0xecce[91]]);return db[_0xecce[70]][_0xecce[92]](_0xdbc1x24)[_0xecce[40]](respondWithFilteredResult(_0xdbc1x1e,_0xdbc1x24,_0xecce[67]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[67]))};exports[_0xecce[93]]= function(_0xdbc1x1a,_0xdbc1x1e){var _0xdbc1x24={raw:false,where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}},_0xdbc1x30={};_0xdbc1x30[_0xecce[68]]= _[_0xecce[74]](_[_0xecce[71]](db[_0xecce[70]][_0xecce[69]]),[_0xecce[72],_0xecce[73]]);_0xdbc1x30[_0xecce[75]]= _[_0xecce[71]](_0xdbc1x1a[_0xecce[75]]);_0xdbc1x30[_0xecce[76]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],_0xdbc1x30[_0xecce[75]]);_0xdbc1x24[_0xecce[78]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],qs[_0xecce[79]](_0xdbc1x1a[_0xecce[75]][_0xecce[79]]));_0xdbc1x24[_0xecce[78]]= (_0xdbc1x24[_0xecce[78]][_0xecce[80]])?_0xdbc1x24[_0xecce[78]]:_0xdbc1x30[_0xecce[68]];_0xdbc1x24= _[_0xecce[90]]({},_0xdbc1x24,_0xdbc1x1a[_0xecce[91]]);return db[_0xecce[70]][_0xecce[96]](_0xdbc1x24)[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[93]))[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[93]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[93]))};exports[_0xecce[97]]= function(_0xdbc1x1a,_0xdbc1x1e){return db[_0xecce[70]][_0xecce[97]](_0xdbc1x1a[_0xecce[98]],{raw:false,individualHooks:true})[_0xecce[40]](respondWithResult(_0xdbc1x1e,201,_0xecce[97]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[97]))};exports[_0xecce[61]]= function(_0xdbc1x1a,_0xdbc1x1e){if(_0xdbc1x1a[_0xecce[98]][_0xecce[94]]){delete _0xdbc1x1a[_0xecce[98]][_0xecce[94]]};return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[61]))[_0xecce[40]](saveUpdates(_0xdbc1x1a[_0xecce[98]],null,_0xecce[61]))[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[61]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[61]))};exports[_0xecce[63]]= function(_0xdbc1x1a,_0xdbc1x1e){return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[63]))[_0xecce[40]](removeEntity(_0xdbc1x1e,null,_0xecce[63]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[63]))};exports[_0xecce[99]]= function(_0xdbc1x1a,_0xdbc1x1e){return db[_0xecce[70]][_0xecce[99]]()[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[99]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[99]))};exports[_0xecce[100]]= function(_0xdbc1x1a,_0xdbc1x1e){return db[_0xecce[70]][_0xecce[63]]({where:{id:_0xdbc1x1a[_0xecce[75]][_0xecce[101]]|| []},raw:false,individualHooks:true})[_0xecce[40]](respondWithResult(_0xdbc1x1e,204,_0xecce[100]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[100]))};exports[_0xecce[102]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[102]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){return _0xdbc1x21[_0xecce[102]](_0xdbc1x1a[_0xecce[98]][_0xecce[101]],_[_0xecce[103]](_0xdbc1x1a[_0xecce[98]],[_0xecce[101],_0xecce[94]])|| {})};return null})[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[102]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[102]))};var getLicense=function(_0xdbc1x1a){return  new BPromise(function(_0xdbc1x1b,_0xdbc1x1c){var _0xdbc1x35=0;_0xdbc1x1a[_0xecce[98]][_0xecce[104]]=== _0xecce[105]&& _0xdbc1x1b(_0xecce[106]);return db[_0xecce[70]][_0xecce[49]]({where:{$or:[{role:_0xdbc1x1a[_0xecce[98]][_0xecce[104]]=== _0xecce[107]?_0xecce[107]:[_0xecce[115],_0xecce[116]]}]}})[_0xecce[40]](function(_0xdbc1x25){_0xdbc1x35= _0xdbc1x25;return require(_0xecce[114])[_0xecce[113]]()})[_0xecce[40]](function(_0xdbc1x36){var _0xdbc1x37=_0xdbc1x1a[_0xecce[98]][_0xecce[104]]=== _0xecce[107]?_0xecce[108]:_0xecce[109];if(_0xdbc1x36[_0xdbc1x37]&& _0xdbc1x35>= _0xdbc1x36[_0xdbc1x37]){return _0xdbc1x1c({message:_0xecce[110]})};return _0xdbc1x1b(util[_0xecce[112]](_0xecce[111],_0xdbc1x37,_0xdbc1x35))})[_0xecce[31]](function(_0xdbc1x1d){return _0xdbc1x1c(_0xdbc1x1d)})})};exports[_0xecce[117]]= function(_0xdbc1x1a,_0xdbc1x1e){return getLicense(_0xdbc1x1a)[_0xecce[40]](function(_0xdbc1x39){return db[_0xecce[70]][_0xecce[124]](_0xecce[118])})[_0xecce[40]](function(_0xdbc1x38){_0xdbc1x1a[_0xecce[98]][_0xecce[118]]= _0xdbc1x1a[_0xecce[98]][_0xecce[118]]|| (_0xdbc1x38?_0xdbc1x38+ 1:1000);if(_0xdbc1x1a[_0xecce[98]][_0xecce[119]]){_0xdbc1x1a[_0xecce[98]][_0xecce[120]]= _0xdbc1x1a[_0xecce[98]][_0xecce[118]];_0xdbc1x1a[_0xecce[98]][_0xecce[121]]= {mailbox:_0xdbc1x1a[_0xecce[98]][_0xecce[118]],password:_0xdbc1x1a[_0xecce[98]][_0xecce[72]],fullname:_0xdbc1x1a[_0xecce[98]][_0xecce[122]],email:_0xdbc1x1a[_0xecce[98]][_0xecce[123]]}};return db[_0xecce[70]][_0xecce[117]](_0xdbc1x1a[_0xecce[98]],{include:[{model:db[_0xecce[121]],as:_0xecce[121]}]})})[_0xecce[40]](respondWithResult(_0xdbc1x1e,201,_0xecce[117]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[117]))};exports[_0xecce[125]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){if(_0xdbc1x1a[_0xecce[98]][_0xecce[94]]){delete _0xdbc1x1a[_0xecce[98]][_0xecce[94]]};return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){switch(_0xdbc1x1a[_0xecce[116]][_0xecce[104]]){case _0xecce[115]:;case _0xecce[116]:if(!_0xdbc1x1a[_0xecce[98]][_0xecce[126]]){throw  new db[_0xecce[128]].ValidationError(_0xecce[127])};return _0xdbc1x21;case _0xecce[105]:if(!_0xdbc1x1a[_0xecce[98]][_0xecce[129]]||  !_0xdbc1x1a[_0xecce[98]][_0xecce[126]]){throw  new db[_0xecce[128]].ValidationError(_0xecce[127])};if(!_0xdbc1x21[_0xecce[130]](_0xdbc1x1a[_0xecce[98]][_0xecce[129]])){_0xdbc1x1e[_0xecce[44]](403);return null}else {return _0xdbc1x21}}};return null})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[125]))[_0xecce[40]](saveUpdates({password:_0xdbc1x1a[_0xecce[98]][_0xecce[126]]},null,_0xecce[125]))[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[125]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[125]))};exports[_0xecce[131]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){var _0xdbc1x3a;return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]},attributes:[_0xecce[94],_0xecce[65],_0xecce[104],_0xecce[137]]})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[131]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3a= _0xdbc1x21;if(!utils[_0xecce[145]](_0xdbc1x1a[_0xecce[98]][_0xecce[132]])){throw  new db[_0xecce[128]].ValidationError(_0xecce[146])};return _0xdbc1x21[_0xecce[147]+ _[_0xecce[149]](_0xdbc1x1a[_0xecce[98]][_0xecce[132]][_0xecce[148]]())+ _0xecce[150]](_0xdbc1x1a[_0xecce[98]][_0xecce[101]],{penalty:_0xdbc1x1a[_0xecce[98]][_0xecce[138]]|| 0})}})[_0xecce[40]](function(){if(_0xdbc1x1a[_0xecce[98]][_0xecce[132]]=== _0xecce[133]&& _0xdbc1x1a[_0xecce[98]][_0xecce[134]]){return db[_0xecce[144]][_0xecce[143]]({where:{id:_0xdbc1x1a[_0xecce[98]][_0xecce[101]]|| []},raw:true,attributes:[_0xecce[94],_0xecce[65]]})}})[_0xecce[40]](function(_0xdbc1x3b){var _0xdbc1x3c=[];if(_0xdbc1x1a[_0xecce[98]][_0xecce[132]]=== _0xecce[133]&& _0xdbc1x1a[_0xecce[98]][_0xecce[134]]){for(var _0xdbc1x3d=0;_0xdbc1x3d< _0xdbc1x3b[_0xecce[80]];_0xdbc1x3d+= 1){_0xdbc1x3c[_0xecce[141]](db[_0xecce[140]][_0xecce[139]]({membername:_0xdbc1x3a[_0xecce[65]],UserId:_0xdbc1x3a[_0xecce[94]],queue_name:_0xdbc1x3b[_0xdbc1x3d][_0xecce[65]],VoiceQueueId:_0xdbc1x3b[_0xdbc1x3d][_0xecce[94]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),paused:_0xdbc1x3a[_0xecce[137]]|| false,penalty:_0xdbc1x1a[_0xecce[98]][_0xecce[138]]|| 0}))};return BPromise[_0xecce[142]](_0xdbc1x3c)};return _0xdbc1x3a})[_0xecce[40]](respondWithStatusCode(_0xdbc1x1e,null,_0xecce[131]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[131]))};exports[_0xecce[151]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){var _0xdbc1x3a;return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]},attributes:[_0xecce[94],_0xecce[65],_0xecce[104]]})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[151]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3a= _0xdbc1x21;if(!_0xdbc1x1a[_0xecce[75]][_0xecce[132]]||  !utils[_0xecce[145]](_0xdbc1x1a[_0xecce[75]][_0xecce[132]])){throw  new db[_0xecce[128]].ValidationError(_0xecce[146])};return _0xdbc1x21[_0xecce[152]+ _[_0xecce[149]](_0xdbc1x1a[_0xecce[75]][_0xecce[132]][_0xecce[148]]())+ _0xecce[150]](_0xdbc1x1a[_0xecce[75]][_0xecce[101]])}})[_0xecce[40]](function(_0xdbc1x3b){if(_0xdbc1x1a[_0xecce[75]][_0xecce[132]]=== _0xecce[133]){return db[_0xecce[140]][_0xecce[63]]({where:{UserId:_0xdbc1x1a[_0xecce[95]][_0xecce[94]],VoiceQueueId:_0xdbc1x1a[_0xecce[75]][_0xecce[101]]},individualHooks:true})[_0xecce[40]](function(){return _0xdbc1x3a})};return _0xdbc1x3a})[_0xecce[40]](respondWithStatusCode(_0xdbc1x1e,null,_0xecce[151]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[151]))};exports[_0xecce[153]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){_0xdbc1x1a[_0xecce[98]][_0xecce[154]]= _0xdbc1x1a[_0xecce[156]][_0xecce[155]];return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[153]))[_0xecce[40]](saveUpdates(_0xdbc1x1a[_0xecce[98]],null,_0xecce[153]))[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[157]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[153]))};exports[_0xecce[158]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){var _0xdbc1x3e=path[_0xecce[161]](config[_0xecce[159]],_0xecce[160]);return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]},attributes:[_0xecce[94],_0xecce[154]],raw:true})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[158]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){logger[_0xecce[33]](_0xecce[29],_0xecce[158],_0xecce[47]);logger[_0xecce[36]](_0xecce[34],_0xecce[158],_0xecce[47],JSON[_0xecce[35]](_0xdbc1x21));if(!fs[_0xecce[163]](path[_0xecce[161]](config[_0xecce[159]],_0xecce[162],_0xdbc1x21[_0xecce[154]]))){return _0xdbc1x1e[_0xecce[164]](_0xdbc1x3e)};return _0xdbc1x1e[_0xecce[164]](path[_0xecce[161]](config[_0xecce[159]],_0xecce[162],_0xdbc1x21[_0xecce[154]]))}})[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[93]))};exports[_0xecce[165]]= function(_0xdbc1x1a,_0xdbc1x21,_0xdbc1x33){var _0xdbc1x24={};var _0xdbc1x30={};var _0xdbc1x3f;var _0xdbc1x25;return db[_0xecce[70]][_0xecce[167]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x21,null,_0xecce[165]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3f= _0xdbc1x21;_0xdbc1x30[_0xecce[68]]= _[_0xecce[71]](db[_0xecce[166]][_0xecce[69]]);_0xdbc1x30[_0xecce[75]]= _[_0xecce[71]](_0xdbc1x1a[_0xecce[75]]);_0xdbc1x30[_0xecce[76]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],_0xdbc1x30[_0xecce[75]]);_0xdbc1x24[_0xecce[78]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],qs[_0xecce[79]](_0xdbc1x1a[_0xecce[75]][_0xecce[79]]));_0xdbc1x24[_0xecce[78]]= (_0xdbc1x24[_0xecce[78]][_0xecce[80]])?_0xdbc1x24[_0xecce[78]]:_0xdbc1x30[_0xecce[68]];_0xdbc1x24[_0xecce[83]]= qs[_0xecce[84]](_0xdbc1x1a[_0xecce[75]][_0xecce[84]]);_0xdbc1x24[_0xecce[85]]= qs[_0xecce[76]](_[_0xecce[86]](_0xdbc1x1a[_0xecce[75]],_0xdbc1x30[_0xecce[76]]));if(_0xdbc1x1a[_0xecce[75]][_0xecce[87]]){_0xdbc1x24[_0xecce[85]]= _[_0xecce[90]](_0xdbc1x24[_0xecce[85]],{$or:_[_0xecce[89]](_0xdbc1x24[_0xecce[78]],function(_0xdbc1x31){var _0xdbc1x32={};_0xdbc1x32[_0xdbc1x31]= {$like:_0xecce[88]+ _0xdbc1x1a[_0xecce[75]][_0xecce[87]]+ _0xecce[88]};return _0xdbc1x32})})};_0xdbc1x24= _[_0xecce[90]]({},_0xdbc1x24,_0xdbc1x1a[_0xecce[91]]);return _0xdbc1x3f[_0xecce[165]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x41){if(_0xdbc1x41){_0xdbc1x25= _0xdbc1x41[_0xecce[80]];if(!_0xdbc1x1a[_0xecce[75]][_0xecce[82]](_0xecce[81])){_0xdbc1x24[_0xecce[51]]= qs[_0xecce[51]](_0xdbc1x1a[_0xecce[75]][_0xecce[51]]);_0xdbc1x24[_0xecce[50]]= qs[_0xecce[50]](_0xdbc1x1a[_0xecce[75]][_0xecce[50]])};return _0xdbc1x3f[_0xecce[165]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x40){return _0xdbc1x40?{count:_0xdbc1x25,rows:_0xdbc1x40}:null})[_0xecce[40]](respondWithResult(_0xdbc1x21,null,_0xecce[165]))[_0xecce[31]](handleError(_0xdbc1x21,null,_0xecce[165]))};exports[_0xecce[168]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){var _0xdbc1x3a;var _0xdbc1x3b;var _0xdbc1x24={};var _0xdbc1x25;return db[_0xecce[70]][_0xecce[167]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]},attributes:[_0xecce[94],_0xecce[65],_0xecce[104]]})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[168]))[_0xecce[40]](function(_0xdbc1x42){if(!utils[_0xecce[145]](_0xdbc1x1a[_0xecce[75]][_0xecce[132]])){throw  new db[_0xecce[128]].ValidationError(_0xecce[146])};_0xdbc1x3a= _0xdbc1x42;var _0xdbc1x30={};_0xdbc1x30[_0xecce[68]]= _[_0xecce[71]](db[_[_0xecce[149]](_0xdbc1x1a[_0xecce[75]][_0xecce[132]])+ _0xecce[169]][_0xecce[69]]);_0xdbc1x30[_0xecce[75]]= _[_0xecce[71]](_0xdbc1x1a[_0xecce[75]]);_0xdbc1x30[_0xecce[76]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],_0xdbc1x30[_0xecce[75]]);_0xdbc1x24[_0xecce[78]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],qs[_0xecce[79]](_0xdbc1x1a[_0xecce[75]][_0xecce[79]]));_0xdbc1x24[_0xecce[78]]= (_0xdbc1x24[_0xecce[78]][_0xecce[80]])?_0xdbc1x24[_0xecce[78]]:_0xdbc1x30[_0xecce[68]];_0xdbc1x24[_0xecce[83]]= qs[_0xecce[84]](_0xdbc1x1a[_0xecce[75]][_0xecce[84]]);_0xdbc1x24[_0xecce[85]]= qs[_0xecce[76]](_[_0xecce[86]](_0xdbc1x1a[_0xecce[75]],_0xdbc1x30[_0xecce[76]]));if(_0xdbc1x1a[_0xecce[75]][_0xecce[87]]){_0xdbc1x24[_0xecce[85]]= _[_0xecce[90]](_0xdbc1x24[_0xecce[85]],{$or:_[_0xecce[89]](_0xdbc1x24[_0xecce[78]],function(_0xdbc1x31){var _0xdbc1x32={};_0xdbc1x32[_0xdbc1x31]= {$like:_0xecce[88]+ _0xdbc1x1a[_0xecce[75]][_0xecce[87]]+ _0xecce[88]};return _0xdbc1x32})})};_0xdbc1x24= _[_0xecce[90]]({},_0xdbc1x24,_0xdbc1x1a[_0xecce[91]]);switch(_0xdbc1x3a[_0xecce[104]]){case _0xecce[115]:return db[_[_0xecce[149]](_0xdbc1x1a[_0xecce[75]][_0xecce[132]])+ _0xecce[169]][_0xecce[143]](_0xdbc1x24);case _0xecce[116]:;case _0xecce[105]:return _0xdbc1x3a[_0xecce[170]+ _[_0xecce[149]](_0xdbc1x1a[_0xecce[75]][_0xecce[132]])+ _0xecce[150]](_0xdbc1x24);default:throw  new db[_0xecce[128]].ValidationError(_0xecce[171])}})[_0xecce[40]](function(_0xdbc1x41){_0xdbc1x25= _0xdbc1x41[_0xecce[80]];if(!_0xdbc1x1a[_0xecce[75]][_0xecce[82]](_0xecce[81])){_0xdbc1x24[_0xecce[51]]= qs[_0xecce[51]](_0xdbc1x1a[_0xecce[75]][_0xecce[51]]);_0xdbc1x24[_0xecce[50]]= qs[_0xecce[50]](_0xdbc1x1a[_0xecce[75]][_0xecce[50]])};switch(_0xdbc1x3a[_0xecce[104]]){case _0xecce[115]:return db[_[_0xecce[149]](_0xdbc1x1a[_0xecce[75]][_0xecce[132]])+ _0xecce[169]][_0xecce[143]](_0xdbc1x24);case _0xecce[116]:;case _0xecce[105]:return _0xdbc1x3a[_0xecce[170]+ _[_0xecce[149]](_0xdbc1x1a[_0xecce[75]][_0xecce[132]])+ _0xecce[150]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x40){return {count:_0xdbc1x25,rows:_0xdbc1x40}})[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[168]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[168]))};exports[_0xecce[172]]= function(_0xdbc1x1a,_0xdbc1x21,_0xdbc1x33){var _0xdbc1x24={};var _0xdbc1x30={};var _0xdbc1x3f;var _0xdbc1x25;return db[_0xecce[70]][_0xecce[167]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x21,null,_0xecce[172]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3f= _0xdbc1x21;_0xdbc1x30[_0xecce[68]]= _[_0xecce[71]](db[_0xecce[140]][_0xecce[69]]);_0xdbc1x30[_0xecce[75]]= _[_0xecce[71]](_0xdbc1x1a[_0xecce[75]]);_0xdbc1x30[_0xecce[76]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],_0xdbc1x30[_0xecce[75]]);_0xdbc1x24[_0xecce[78]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],qs[_0xecce[79]](_0xdbc1x1a[_0xecce[75]][_0xecce[79]]));_0xdbc1x24[_0xecce[78]]= (_0xdbc1x24[_0xecce[78]][_0xecce[80]])?_0xdbc1x24[_0xecce[78]]:_0xdbc1x30[_0xecce[68]];_0xdbc1x24[_0xecce[83]]= qs[_0xecce[84]](_0xdbc1x1a[_0xecce[75]][_0xecce[84]]);_0xdbc1x24[_0xecce[85]]= qs[_0xecce[76]](_[_0xecce[86]](_0xdbc1x1a[_0xecce[75]],_0xdbc1x30[_0xecce[76]]));if(_0xdbc1x1a[_0xecce[75]][_0xecce[87]]){_0xdbc1x24[_0xecce[85]]= _[_0xecce[90]](_0xdbc1x24[_0xecce[85]],{$or:_[_0xecce[89]](_0xdbc1x24[_0xecce[78]],function(_0xdbc1x31){var _0xdbc1x32={};_0xdbc1x32[_0xdbc1x31]= {$like:_0xecce[88]+ _0xdbc1x1a[_0xecce[75]][_0xecce[87]]+ _0xecce[88]};return _0xdbc1x32})})};_0xdbc1x24= _[_0xecce[90]]({},_0xdbc1x24,_0xdbc1x1a[_0xecce[91]]);return _0xdbc1x3f[_0xecce[172]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x41){if(_0xdbc1x41){_0xdbc1x25= _0xdbc1x41[_0xecce[80]];if(!_0xdbc1x1a[_0xecce[75]][_0xecce[82]](_0xecce[81])){_0xdbc1x24[_0xecce[51]]= qs[_0xecce[51]](_0xdbc1x1a[_0xecce[75]][_0xecce[51]]);_0xdbc1x24[_0xecce[50]]= qs[_0xecce[50]](_0xdbc1x1a[_0xecce[75]][_0xecce[50]])};return _0xdbc1x3f[_0xecce[172]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x40){return _0xdbc1x40?{count:_0xdbc1x25,rows:_0xdbc1x40}:null})[_0xecce[40]](respondWithResult(_0xdbc1x21,null,_0xecce[172]))[_0xecce[31]](handleError(_0xdbc1x21,null,_0xecce[172]))};exports[_0xecce[173]]= function(_0xdbc1x1a,_0xdbc1x21,_0xdbc1x33){var _0xdbc1x24={};var _0xdbc1x30={};var _0xdbc1x3f;var _0xdbc1x25;return db[_0xecce[70]][_0xecce[167]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x21,null,_0xecce[173]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3f= _0xdbc1x21;_0xdbc1x30[_0xecce[68]]= _[_0xecce[71]](db[_0xecce[174]][_0xecce[69]]);_0xdbc1x30[_0xecce[75]]= _[_0xecce[71]](_0xdbc1x1a[_0xecce[75]]);_0xdbc1x30[_0xecce[76]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],_0xdbc1x30[_0xecce[75]]);_0xdbc1x24[_0xecce[78]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],qs[_0xecce[79]](_0xdbc1x1a[_0xecce[75]][_0xecce[79]]));_0xdbc1x24[_0xecce[78]]= (_0xdbc1x24[_0xecce[78]][_0xecce[80]])?_0xdbc1x24[_0xecce[78]]:_0xdbc1x30[_0xecce[68]];_0xdbc1x24[_0xecce[83]]= qs[_0xecce[84]](_0xdbc1x1a[_0xecce[75]][_0xecce[84]]);_0xdbc1x24[_0xecce[85]]= qs[_0xecce[76]](_[_0xecce[86]](_0xdbc1x1a[_0xecce[75]],_0xdbc1x30[_0xecce[76]]));if(_0xdbc1x1a[_0xecce[75]][_0xecce[87]]){_0xdbc1x24[_0xecce[85]]= _[_0xecce[90]](_0xdbc1x24[_0xecce[85]],{$or:_[_0xecce[89]](_0xdbc1x24[_0xecce[78]],function(_0xdbc1x31){var _0xdbc1x32={};_0xdbc1x32[_0xdbc1x31]= {$like:_0xecce[88]+ _0xdbc1x1a[_0xecce[75]][_0xecce[87]]+ _0xecce[88]};return _0xdbc1x32})})};_0xdbc1x24= _[_0xecce[90]]({},_0xdbc1x24,_0xdbc1x1a[_0xecce[91]]);return _0xdbc1x3f[_0xecce[173]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x41){if(_0xdbc1x41){_0xdbc1x25= _0xdbc1x41[_0xecce[80]];if(!_0xdbc1x1a[_0xecce[75]][_0xecce[82]](_0xecce[81])){_0xdbc1x24[_0xecce[51]]= qs[_0xecce[51]](_0xdbc1x1a[_0xecce[75]][_0xecce[51]]);_0xdbc1x24[_0xecce[50]]= qs[_0xecce[50]](_0xdbc1x1a[_0xecce[75]][_0xecce[50]])};return _0xdbc1x3f[_0xecce[173]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x40){return _0xdbc1x40?{count:_0xdbc1x25,rows:_0xdbc1x40}:null})[_0xecce[40]](respondWithResult(_0xdbc1x21,null,_0xecce[173]))[_0xecce[31]](handleError(_0xdbc1x21,null,_0xecce[173]))};exports[_0xecce[175]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){var _0xdbc1x3a;var _0xdbc1x3b;return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]],role:_0xecce[105]},attributes:[_0xecce[94],_0xecce[65],_0xecce[104],_0xecce[118],_0xecce[137]]})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[175]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3a= _0xdbc1x21;return _0xdbc1x3a[_0xecce[185]]({raw:true})}})[_0xecce[40]](function(_0xdbc1x41){var _0xdbc1x3c=[];if(_0xdbc1x41){_0xdbc1x3b= _0xdbc1x41;if(_0xdbc1x3b[_0xecce[80]]){for(var _0xdbc1x3d=0;_0xdbc1x3d< _0xdbc1x3b[_0xecce[80]];_0xdbc1x3d++){_0xdbc1x3c[_0xecce[141]](db[_0xecce[140]][_0xecce[139]]({membername:_0xdbc1x3a[_0xecce[65]],UserId:_0xdbc1x3a[_0xecce[94]],queue_name:_0xdbc1x3b[_0xdbc1x3d][_0xecce[65]],VoiceQueueId:_0xdbc1x3b[_0xdbc1x3d][_0xecce[94]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),paused:_0xdbc1x3a[_0xecce[137]]|| false,penalty:_0xdbc1x3b[_0xdbc1x3d][_0xecce[184]]|| 0}))};return BPromise[_0xecce[142]](_0xdbc1x3c)}}})[_0xecce[40]](function(){return db[_0xecce[183]][_0xecce[143]]({where:{membername:_0xdbc1x3a[_0xecce[65]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),exitAt:null}})})[_0xecce[40]](function(){var _0xdbc1x43=[];var _0xdbc1x44=[];var _0xdbc1x45=utils[_0xecce[178]]();var _0xdbc1x46={membername:_0xdbc1x3a[_0xecce[65]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),enterAt:moment()[_0xecce[112]](_0xecce[176]),role:_0xdbc1x3a[_0xecce[104]],internal:_0xdbc1x3a[_0xecce[118]]};_0xdbc1x45[_0xecce[181]](function(_0xdbc1x47){_0xdbc1x43[_0xecce[141]](_[_0xecce[90]]({channel:_0xdbc1x47,type:_0xecce[179]},_0xdbc1x46));if(_0xdbc1x3a[_0xecce[137]]){_0xdbc1x44[_0xecce[141]](_[_0xecce[90]]({channel:_0xdbc1x47,type:_0xecce[180],data1:_0xecce[177]},_0xdbc1x46))}});return db[_0xecce[183]][_0xecce[97]](_0xdbc1x43[_0xecce[182]](_0xdbc1x44),{individualHooks:true})})[_0xecce[40]](function(){return _0xdbc1x3a[_0xecce[61]]({online:true,lastLoginAt:moment()[_0xecce[112]](_0xecce[176]),voicePause:_0xdbc1x3a[_0xecce[137]]|| false,mailPause:_0xdbc1x3a[_0xecce[137]]|| false,chatPause:_0xdbc1x3a[_0xecce[137]]|| false,faxPause:_0xdbc1x3a[_0xecce[137]]|| false,smsPause:_0xdbc1x3a[_0xecce[137]]|| false,openchannelPause:_0xdbc1x3a[_0xecce[137]]|| false,pauseType:_0xdbc1x3a[_0xecce[137]]?_0xecce[177]:null})})[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[175]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[175]))};exports[_0xecce[186]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){var _0xdbc1x3a;return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]],role:_0xecce[105]},attributes:[_0xecce[94],_0xecce[65],_0xecce[104]]})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[186]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3a= _0xdbc1x21;return db[_0xecce[140]][_0xecce[63]]({where:{membername:_0xdbc1x3a[_0xecce[65]]},individualHooks:true})}})[_0xecce[40]](function(){return db[_0xecce[183]][_0xecce[143]]({where:{membername:_0xdbc1x3a[_0xecce[65]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),exitAt:null}})})[_0xecce[40]](function(_0xdbc1x3c){var _0xdbc1x48=[];_0xdbc1x3c[_0xecce[181]](function(_0xdbc1x49){_0xdbc1x48[_0xecce[141]](_0xdbc1x49[_0xecce[61]]({exitAt:moment()[_0xecce[112]](_0xecce[176])}))});return BPromise[_0xecce[142]](_0xdbc1x48)})[_0xecce[40]](function(){return _0xdbc1x3a[_0xecce[61]]({online:false,lastLoginAt:null,voicePause:false,mailPause:false,chatPause:false,faxPause:false,smsPause:false,openchannelPause:false})})[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[186]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[186]))};exports[_0xecce[187]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){var _0xdbc1x3a;return db[_0xecce[140]][_0xecce[61]]({paused:1},{where:{UserId:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]},individualHooks:true})[_0xecce[40]](function(){return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]],role:_0xecce[105]},attributes:[_0xecce[94],_0xecce[65],_0xecce[104],_0xecce[118]]})})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[187]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3a= _0xdbc1x21;return respondWithRpcPromise(_0xecce[190],_0xecce[187],{id:_0xdbc1x3a[_0xecce[94]],name:_0xdbc1x3a[_0xecce[65]]})}})[_0xecce[40]](function(){if(_0xdbc1x3a){return db[_0xecce[183]][_0xecce[143]]({where:{membername:_0xdbc1x3a[_0xecce[65]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),type:_0xecce[180],exitAt:null}})}})[_0xecce[40]](function(_0xdbc1x3c){if(_0xdbc1x3c[_0xecce[80]]){return db[_0xecce[183]][_0xecce[61]]({exitAt:moment()[_0xecce[112]](_0xecce[176])},{where:{id:{$in:_[_0xecce[89]](_0xdbc1x3c,_0xecce[94])}},individualHooks:true})}})[_0xecce[40]](function(){var _0xdbc1x3c=[];var _0xdbc1x45=utils[_0xecce[178]]();_0xdbc1x45[_0xecce[181]](function(_0xdbc1x47){_0xdbc1x3c[_0xecce[141]]({channel:_0xdbc1x47,membername:_0xdbc1x3a[_0xecce[65]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),type:_0xecce[180],enterAt:moment()[_0xecce[112]](_0xecce[176]),data1:_0xdbc1x1a[_0xecce[98]][_0xecce[188]]|| _0xecce[189],role:_0xdbc1x3a[_0xecce[104]],internal:_0xdbc1x3a[_0xecce[118]]})});return db[_0xecce[183]][_0xecce[97]](_0xdbc1x3c,{individualHooks:true})})[_0xecce[40]](function(){return _0xdbc1x3a[_0xecce[61]]({voicePause:true,mailPause:true,chatPause:true,faxPause:true,smsPause:true,openchannelPause:true,pauseType:_0xdbc1x1a[_0xecce[98]][_0xecce[188]]|| _0xecce[189],lastPauseAt:moment()[_0xecce[112]](_0xecce[176])})})[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[187]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[187]))};exports[_0xecce[191]]= function(_0xdbc1x1a,_0xdbc1x1e,_0xdbc1x33){var _0xdbc1x3a;return db[_0xecce[70]][_0xecce[96]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]},attributes:[_0xecce[94],_0xecce[65],_0xecce[104]]})[_0xecce[40]](handleEntityNotFound(_0xdbc1x1e,null,_0xecce[191]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3a= _0xdbc1x21;if(_0xdbc1x1a[_0xecce[98]][_0xecce[132]]&&  !utils[_0xecce[145]](_0xdbc1x1a[_0xecce[98]][_0xecce[132]])){throw  new db[_0xecce[128]].ValidationError(_0xecce[146])};switch(_0xdbc1x1a[_0xecce[98]][_0xecce[132]]){case _0xecce[133]:return respondWithRpcPromise(_0xecce[190],_0xecce[191],{id:_0xdbc1x3a[_0xecce[94]],name:_0xdbc1x3a[_0xecce[65]]})[_0xecce[40]](function(){return db[_0xecce[140]][_0xecce[61]]({paused:0},{where:{UserId:_0xdbc1x3a[_0xecce[94]]},individualHooks:true})})[_0xecce[40]](function(){return db[_0xecce[183]][_0xecce[96]]({where:{channel:_0xdbc1x1a[_0xecce[98]][_0xecce[132]],membername:_0xdbc1x3a[_0xecce[65]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),type:_0xecce[180],exitAt:null}})})[_0xecce[40]](function(_0xdbc1x49){if(_0xdbc1x49){return _0xdbc1x49[_0xecce[61]]({exitAt:moment()[_0xecce[112]](_0xecce[176]),data2:_0xecce[192]},{individualHooks:true})};return null})[_0xecce[40]](function(){return _0xdbc1x3a[_0xecce[61]]({voicePause:false})});case _0xecce[193]:;case _0xecce[194]:;case _0xecce[195]:;case _0xecce[196]:;case _0xecce[199]:return db[_0xecce[183]][_0xecce[96]]({where:{channel:_0xdbc1x1a[_0xecce[98]][_0xecce[132]],membername:_0xdbc1x3a[_0xecce[65]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),type:_0xecce[180],exitAt:null}})[_0xecce[40]](function(_0xdbc1x49){return _0xdbc1x49[_0xecce[61]]({exitAt:moment()[_0xecce[112]](_0xecce[176]),data2:_0xecce[192]},{individualHooks:true})})[_0xecce[40]](function(){var _0xdbc1x4a={};_[_0xecce[56]](_0xdbc1x4a,util[_0xecce[112]](_0xecce[197],_0xdbc1x1a[_0xecce[98]][_0xecce[132]],_0xecce[198]),false);return _0xdbc1x3a[_0xecce[61]](_0xdbc1x4a)});default:return respondWithRpcPromise(_0xecce[190],_0xecce[191],{id:_0xdbc1x3a[_0xecce[94]],name:_0xdbc1x3a[_0xecce[65]]})[_0xecce[40]](function(){return db[_0xecce[140]][_0xecce[61]]({paused:0},{where:{UserId:_0xdbc1x3a[_0xecce[94]]}})})[_0xecce[40]](function(){return db[_0xecce[183]][_0xecce[143]]({where:{membername:_0xdbc1x3a[_0xecce[65]],interface:util[_0xecce[112]](_0xecce[135],_0xecce[136],_0xdbc1x3a[_0xecce[65]]),type:_0xecce[180],exitAt:null}})})[_0xecce[40]](function(_0xdbc1x3c){var _0xdbc1x48=[];_0xdbc1x3c[_0xecce[181]](function(_0xdbc1x49){_0xdbc1x48[_0xecce[141]](_0xdbc1x49[_0xecce[61]]({exitAt:moment()[_0xecce[112]](_0xecce[176]),data2:_0xecce[192]}))});return BPromise[_0xecce[142]](_0xdbc1x48)})[_0xecce[40]](function(){return _0xdbc1x3a[_0xecce[61]]({voicePause:false,mailPause:false,chatPause:false,faxPause:false,smsPause:false,openchannelPause:false})})}}})[_0xecce[40]](respondWithResult(_0xdbc1x1e,null,_0xecce[191]))[_0xecce[31]](handleError(_0xdbc1x1e,null,_0xecce[191]))};exports[_0xecce[200]]= function(_0xdbc1x1a,_0xdbc1x21,_0xdbc1x33){var _0xdbc1x24={};var _0xdbc1x30={};var _0xdbc1x3f;var _0xdbc1x25;return db[_0xecce[70]][_0xecce[167]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x21,null,_0xecce[200]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3f= _0xdbc1x21;_0xdbc1x30[_0xecce[68]]= _[_0xecce[71]](db[_0xecce[201]][_0xecce[69]]);_0xdbc1x30[_0xecce[75]]= _[_0xecce[71]](_0xdbc1x1a[_0xecce[75]]);_0xdbc1x30[_0xecce[76]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],_0xdbc1x30[_0xecce[75]]);_0xdbc1x24[_0xecce[78]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],qs[_0xecce[79]](_0xdbc1x1a[_0xecce[75]][_0xecce[79]]));_0xdbc1x24[_0xecce[78]]= (_0xdbc1x24[_0xecce[78]][_0xecce[80]])?_0xdbc1x24[_0xecce[78]]:_0xdbc1x30[_0xecce[68]];_0xdbc1x24[_0xecce[83]]= qs[_0xecce[84]](_0xdbc1x1a[_0xecce[75]][_0xecce[84]]);_0xdbc1x24[_0xecce[85]]= qs[_0xecce[76]](_[_0xecce[86]](_0xdbc1x1a[_0xecce[75]],_0xdbc1x30[_0xecce[76]]));if(_0xdbc1x1a[_0xecce[75]][_0xecce[87]]){_0xdbc1x24[_0xecce[85]]= _[_0xecce[90]](_0xdbc1x24[_0xecce[85]],{$or:_[_0xecce[89]](_0xdbc1x24[_0xecce[78]],function(_0xdbc1x31){var _0xdbc1x32={};_0xdbc1x32[_0xdbc1x31]= {$like:_0xecce[88]+ _0xdbc1x1a[_0xecce[75]][_0xecce[87]]+ _0xecce[88]};return _0xdbc1x32})})};_0xdbc1x24= _[_0xecce[90]]({},_0xdbc1x24,_0xdbc1x1a[_0xecce[91]]);return _0xdbc1x3f[_0xecce[200]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x41){if(_0xdbc1x41){_0xdbc1x25= _0xdbc1x41[_0xecce[80]];if(!_0xdbc1x1a[_0xecce[75]][_0xecce[82]](_0xecce[81])){_0xdbc1x24[_0xecce[51]]= qs[_0xecce[51]](_0xdbc1x1a[_0xecce[75]][_0xecce[51]]);_0xdbc1x24[_0xecce[50]]= qs[_0xecce[50]](_0xdbc1x1a[_0xecce[75]][_0xecce[50]])};return _0xdbc1x3f[_0xecce[200]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x40){return _0xdbc1x40?{count:_0xdbc1x25,rows:_0xdbc1x40}:null})[_0xecce[40]](respondWithResult(_0xdbc1x21,null,_0xecce[200]))[_0xecce[31]](handleError(_0xdbc1x21,null,_0xecce[200]))};exports[_0xecce[202]]= function(_0xdbc1x1a,_0xdbc1x21,_0xdbc1x33){var _0xdbc1x24={};var _0xdbc1x30={};var _0xdbc1x3f;var _0xdbc1x25;return db[_0xecce[70]][_0xecce[167]]({where:{id:_0xdbc1x1a[_0xecce[95]][_0xecce[94]]}})[_0xecce[40]](handleEntityNotFound(_0xdbc1x21,null,_0xecce[202]))[_0xecce[40]](function(_0xdbc1x21){if(_0xdbc1x21){_0xdbc1x3f= _0xdbc1x21;_0xdbc1x30[_0xecce[68]]= _[_0xecce[71]](db[_0xecce[203]][_0xecce[69]]);_0xdbc1x30[_0xecce[75]]= _[_0xecce[71]](_0xdbc1x1a[_0xecce[75]]);_0xdbc1x30[_0xecce[76]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],_0xdbc1x30[_0xecce[75]]);_0xdbc1x24[_0xecce[78]]= _[_0xecce[77]](_0xdbc1x30[_0xecce[68]],qs[_0xecce[79]](_0xdbc1x1a[_0xecce[75]][_0xecce[79]]));_0xdbc1x24[_0xecce[78]]= (_0xdbc1x24[_0xecce[78]][_0xecce[80]])?_0xdbc1x24[_0xecce[78]]:_0xdbc1x30[_0xecce[68]];_0xdbc1x24[_0xecce[83]]= qs[_0xecce[84]](_0xdbc1x1a[_0xecce[75]][_0xecce[84]]);_0xdbc1x24[_0xecce[85]]= qs[_0xecce[76]](_[_0xecce[86]](_0xdbc1x1a[_0xecce[75]],_0xdbc1x30[_0xecce[76]]));if(_0xdbc1x1a[_0xecce[75]][_0xecce[87]]){_0xdbc1x24[_0xecce[85]]= _[_0xecce[90]](_0xdbc1x24[_0xecce[85]],{$or:_[_0xecce[89]](_0xdbc1x24[_0xecce[78]],function(_0xdbc1x31){var _0xdbc1x32={};_0xdbc1x32[_0xdbc1x31]= {$like:_0xecce[88]+ _0xdbc1x1a[_0xecce[75]][_0xecce[87]]+ _0xecce[88]};return _0xdbc1x32})})};_0xdbc1x24= _[_0xecce[90]]({},_0xdbc1x24,_0xdbc1x1a[_0xecce[91]]);return _0xdbc1x3f[_0xecce[202]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x41){if(_0xdbc1x41){_0xdbc1x25= _0xdbc1x41[_0xecce[80]];if(!_0xdbc1x1a[_0xecce[75]][_0xecce[82]](_0xecce[81])){_0xdbc1x24[_0xecce[51]]= qs[_0xecce[51]](_0xdbc1x1a[_0xecce[75]][_0xecce[51]]);_0xdbc1x24[_0xecce[50]]= qs[_0xecce[50]](_0xdbc1x1a[_0xecce[75]][_0xecce[50]])};return _0xdbc1x3f[_0xecce[202]](_0xdbc1x24)}})[_0xecce[40]](function(_0xdbc1x40){return _0xdbc1x40?{count:_0xdbc1x25,rows:_0xdbc1x40}:null})[_0xecce[40]](respondWithResult(_0xdbc1x21,null,_0xecce[202]))[_0xecce[31]](handleError(_0xdbc1x21,null,_0xecce[202]))}
\ No newline at end of file
+var _0xad45=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x2E\x2F\x75\x73\x65\x72\x2E\x73\x6F\x63\x6B\x65\x74","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x55\x73\x65\x72","\x6B\x65\x79\x73","\x70\x61\x73\x73\x77\x6F\x72\x64","\x73\x61\x6C\x74","\x64\x69\x66\x66\x65\x72\x65\x6E\x63\x65\x42\x79","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x69\x64\x73","\x61\x64\x64\x43\x6F\x6E\x74\x61\x63\x74\x73","\x6F\x6D\x69\x74","\x72\x6F\x6C\x65","\x61\x67\x65\x6E\x74","\x61\x67\x65\x6E\x74\x20\x72\x6F\x6C\x65","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x75\x73\x65\x72\x73","\x4C\x69\x63\x65\x6E\x73\x65\x20\x6C\x69\x6D\x69\x74\x20\x72\x65\x61\x63\x68\x65\x64","\x63\x6F\x75\x6E\x74\x20\x25\x73\x3A\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x67\x65\x74\x4C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x75\x74\x69\x6C","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x63\x72\x65\x61\x74\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x6D\x61\x69\x6C\x62\x6F\x78","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x65\x6D\x61\x69\x6C","\x6D\x61\x78","\x63\x68\x61\x6E\x67\x65\x50\x61\x73\x73\x77\x6F\x72\x64","\x6E\x65\x77\x50\x61\x73\x73\x77\x6F\x72\x64","\x49\x6E\x76\x61\x6C\x69\x64\x20\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D\x61\x74","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6F\x6C\x64\x50\x61\x73\x73\x77\x6F\x72\x64","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x61\x64\x64\x51\x75\x65\x75\x65\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x76\x6F\x69\x63\x65","\x72\x65\x61\x6C\x74\x69\x6D\x65","\x25\x73\x2F\x25\x73","\x53\x49\x50","\x6C\x6F\x67\x69\x6E\x49\x6E\x50\x61\x75\x73\x65","\x70\x65\x6E\x61\x6C\x74\x79","\x75\x70\x73\x65\x72\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x70\x75\x73\x68","\x61\x6C\x6C","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x69\x73\x56\x61\x6C\x69\x64\x43\x68\x61\x6E\x6E\x65\x6C","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x61\x64\x64","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","\x51\x75\x65\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65\x51\x75\x65\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x61\x64\x64\x41\x76\x61\x74\x61\x72","\x75\x73\x65\x72\x70\x69\x63","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x66\x69\x6C\x65","\x61\x76\x61\x64\x64\x41\x76\x61\x74\x61\x72\x61\x74\x61\x72","\x67\x65\x74\x41\x76\x61\x74\x61\x72","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F\x6C\x6F\x67\x6F\x73\x2F\x64\x65\x66\x61\x75\x6C\x74\x5F\x70\x72\x6F\x66\x69\x6C\x65\x2E\x6A\x70\x67","\x6A\x6F\x69\x6E","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x69\x6D\x61\x67\x65\x73\x2F","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x51\x75\x65\x75\x65\x73","\x51\x75\x65\x75\x65","\x67\x65\x74","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x72\x6F\x6C\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x52\x74","\x67\x65\x74\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x6C\x6F\x67\x69\x6E","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x4C\x4F\x47\x49\x4E\x49\x4E\x50\x41\x55\x53\x45","\x67\x65\x74\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x4C\x4F\x47\x49\x4E","\x50\x41\x55\x53\x45","\x66\x6F\x72\x45\x61\x63\x68","\x63\x6F\x6E\x63\x61\x74","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x70\x65\x6E\x61\x6C\x74\x79","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x6C\x6F\x67\x6F\x75\x74","\x70\x61\x75\x73\x65","\x74\x79\x70\x65","\x44\x45\x46\x41\x55\x4C\x54\x20\x50\x41\x55\x53\x45","\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65","\x75\x6E\x70\x61\x75\x73\x65","\x6D\x61\x6E\x75\x61\x6C","\x6D\x61\x69\x6C","\x63\x68\x61\x74","\x66\x61\x78","\x73\x6D\x73","\x25\x73\x25\x73","\x50\x61\x75\x73\x65","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x67\x65\x74\x4C\x69\x73\x74\x73","\x43\x6D\x4C\x69\x73\x74"];_0xad45[0];var jsonpatch=require(_0xad45[1]);var rp=require(_0xad45[2]);var moment=require(_0xad45[3]);var BPromise=require(_0xad45[4]);var util=require(_0xad45[5]);var path=require(_0xad45[6]);var sox=require(_0xad45[7]);var ejs=require(_0xad45[8]);var fs=require(_0xad45[9]);var _=require(_0xad45[10]);var squel=require(_0xad45[11]);var crypto=require(_0xad45[12]);var jsforce=require(_0xad45[13]);var toCsv=require(_0xad45[14]);var qs=require(_0xad45[15]);var logger=require(_0xad45[17])(_0xad45[16]);var utils=require(_0xad45[18]);var config=require(_0xad45[19]);var db=require(_0xad45[21])[_0xad45[20]];var socket=require(_0xad45[23])({host:_0xad45[22],port:6379});require(_0xad45[25])[_0xad45[24]](socket);var jayson=require(_0xad45[26]);var client=jayson[_0xad45[28]][_0xad45[27]]({port:9002});function respondWithRpcPromise(_0x1f8ex18,_0x1f8ex19,_0x1f8ex1a){return  new BPromise(function(_0x1f8ex1b,_0x1f8ex1c){return client[_0xad45[41]](_0x1f8ex18,_0x1f8ex1a)[_0xad45[40]](function(_0x1f8ex1e){logger[_0xad45[33]](_0xad45[29],_0x1f8ex19,_0xad45[32]);logger[_0xad45[36]](_0xad45[34],_0x1f8ex19,_0xad45[32],JSON[_0xad45[35]](_0x1f8ex1e));if(_0x1f8ex1e[_0xad45[30]]){if(_0x1f8ex1e[_0xad45[30]][_0xad45[37]]=== 500){logger[_0xad45[30]](_0xad45[29],_0x1f8ex19,_0x1f8ex1e[_0xad45[30]][_0xad45[38]]);return _0x1f8ex1c(_0x1f8ex1e[_0xad45[30]][_0xad45[38]])};logger[_0xad45[30]](_0xad45[29],_0x1f8ex19,_0x1f8ex1e[_0xad45[30]][_0xad45[38]]);return _0x1f8ex1b(_0x1f8ex1e[_0xad45[30]][_0xad45[38]])}else {logger[_0xad45[33]](_0xad45[29],_0x1f8ex19,_0xad45[32]);_0x1f8ex1b(_0x1f8ex1e[_0xad45[39]][_0xad45[38]])}})[_0xad45[31]](function(_0x1f8ex1d){logger[_0xad45[30]](_0xad45[29],_0x1f8ex19,_0x1f8ex1d);_0x1f8ex1c(_0x1f8ex1d)})})}function respondWithStatusCode(_0x1f8ex1e,_0x1f8ex20,_0x1f8ex19){_0x1f8ex20= _0x1f8ex20|| 204;return function(_0x1f8ex21){if(_0x1f8ex21){logger[_0xad45[33]](_0xad45[34],_0x1f8ex19,_0x1f8ex20,_0xad45[42]);logger[_0xad45[36]](_0xad45[43],_0x1f8ex19,_0x1f8ex20,_0xad45[42]);return _0x1f8ex1e[_0xad45[44]](_0x1f8ex20)};return _0x1f8ex1e[_0xad45[46]](304)[_0xad45[45]]()}}function respondWithResult(_0x1f8ex1e,_0x1f8ex20,_0x1f8ex19){_0x1f8ex20= _0x1f8ex20|| 200;return function(_0x1f8ex21){if(_0x1f8ex21){logger[_0xad45[33]](_0xad45[34],_0x1f8ex19,_0x1f8ex20,_0xad45[47]);logger[_0xad45[36]](_0xad45[43],_0x1f8ex19,_0x1f8ex20,_0xad45[47],JSON[_0xad45[35]](_0x1f8ex21));return _0x1f8ex1e[_0xad45[46]](_0x1f8ex20)[_0xad45[48]](_0x1f8ex21)};return _0x1f8ex1e[_0xad45[46]](304)[_0xad45[45]]()}}function respondWithFilteredResult(_0x1f8ex1e,_0x1f8ex24,_0x1f8ex19){return function(_0x1f8ex21){if(_0x1f8ex21){var _0x1f8ex25=_0x1f8ex21[_0xad45[49]],_0x1f8ex26=_0x1f8ex24[_0xad45[50]],_0x1f8ex27=_0x1f8ex24[_0xad45[50]]+ _0x1f8ex24[_0xad45[51]],_0x1f8ex20;if(_0x1f8ex27>= _0x1f8ex25){_0x1f8ex27= _0x1f8ex25;_0x1f8ex20= 200}else {_0x1f8ex20= 206};_0x1f8ex1e[_0xad45[46]](_0x1f8ex20);logger[_0xad45[33]](_0xad45[34],_0x1f8ex19,_0x1f8ex20,_0xad45[52]);logger[_0xad45[36]](_0xad45[43],_0x1f8ex19,_0x1f8ex20,_0xad45[47],JSON[_0xad45[35]](_0x1f8ex21));return _0x1f8ex1e[_0xad45[56]](_0xad45[53],_0x1f8ex26+ _0xad45[54]+ _0x1f8ex27+ _0xad45[55]+ _0x1f8ex25)[_0xad45[48]](_0x1f8ex21)};return null}}function patchUpdates(_0x1f8ex29){return function(_0x1f8ex21){try{jsonpatch[_0xad45[57]](_0x1f8ex21,_0x1f8ex29,true)}catch(err){return BPromise[_0xad45[58]](err)};return _0x1f8ex21[_0xad45[59]]()}}function saveUpdates(_0x1f8ex2b,_0x1f8ex20,_0x1f8ex19){return function(_0x1f8ex21){if(_0x1f8ex21){return _0x1f8ex21[_0xad45[61]](_0x1f8ex2b)[_0xad45[40]](function(_0x1f8ex2c){logger[_0xad45[33]](_0xad45[34],_0x1f8ex19,_0x1f8ex20,_0xad45[60]);logger[_0xad45[36]](_0xad45[43],_0x1f8ex19,_0x1f8ex20,_0xad45[60],JSON[_0xad45[35]](_0x1f8ex21));return _0x1f8ex2c})};return null}}function removeEntity(_0x1f8ex1e,_0x1f8ex20,_0x1f8ex19){return function(_0x1f8ex21){if(_0x1f8ex21){return _0x1f8ex21[_0xad45[63]]()[_0xad45[40]](function(){logger[_0xad45[33]](_0xad45[34],_0x1f8ex19,_0x1f8ex20,_0xad45[62]);logger[_0xad45[36]](_0xad45[43],_0x1f8ex19,_0x1f8ex20,_0xad45[62],JSON[_0xad45[35]](_0x1f8ex21));_0x1f8ex1e[_0xad45[46]](204)[_0xad45[45]]()})}}}function handleEntityNotFound(_0x1f8ex1e,_0x1f8ex20,_0x1f8ex19){return function(_0x1f8ex21){if(!_0x1f8ex21){logger[_0xad45[30]](_0xad45[34],_0x1f8ex19,404,_0xad45[64]);_0x1f8ex1e[_0xad45[46]](404)[_0xad45[45]]();return null};return _0x1f8ex21}}function handleError(_0x1f8ex1e,_0x1f8ex20,_0x1f8ex19){_0x1f8ex20= _0x1f8ex20|| 500;return function(_0x1f8ex1d){logger[_0xad45[30]](_0xad45[34],_0x1f8ex19,_0x1f8ex20,JSON[_0xad45[35]](_0x1f8ex1d));delete _0x1f8ex1d[_0xad45[65]];_0x1f8ex1e[_0xad45[46]](_0x1f8ex20)[_0xad45[66]](_0x1f8ex1d)}}exports[_0xad45[67]]= function(_0x1f8ex1a,_0x1f8ex1e){var _0x1f8ex24={},_0x1f8ex30={};_0x1f8ex30[_0xad45[68]]= _[_0xad45[74]](_[_0xad45[71]](db[_0xad45[70]][_0xad45[69]]),[_0xad45[72],_0xad45[73]]);_0x1f8ex30[_0xad45[75]]= _[_0xad45[71]](_0x1f8ex1a[_0xad45[75]]);_0x1f8ex30[_0xad45[76]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],_0x1f8ex30[_0xad45[75]]);_0x1f8ex24[_0xad45[78]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],qs[_0xad45[79]](_0x1f8ex1a[_0xad45[75]][_0xad45[79]]));_0x1f8ex24[_0xad45[78]]= (_0x1f8ex24[_0xad45[78]][_0xad45[80]])?_0x1f8ex24[_0xad45[78]]:_0x1f8ex30[_0xad45[68]];if(!_0x1f8ex1a[_0xad45[75]][_0xad45[82]](_0xad45[81])){_0x1f8ex24[_0xad45[51]]= qs[_0xad45[51]](_0x1f8ex1a[_0xad45[75]][_0xad45[51]]);_0x1f8ex24[_0xad45[50]]= qs[_0xad45[50]](_0x1f8ex1a[_0xad45[75]][_0xad45[50]])};_0x1f8ex24[_0xad45[83]]= qs[_0xad45[84]](_0x1f8ex1a[_0xad45[75]][_0xad45[84]]);_0x1f8ex24[_0xad45[85]]= qs[_0xad45[76]](_[_0xad45[86]](_0x1f8ex1a[_0xad45[75]],_0x1f8ex30[_0xad45[76]]));if(_0x1f8ex1a[_0xad45[75]][_0xad45[87]]){_0x1f8ex24[_0xad45[85]]= _[_0xad45[90]](_0x1f8ex24[_0xad45[85]],{$or:_[_0xad45[89]](_0x1f8ex24[_0xad45[78]],function(_0x1f8ex31){var _0x1f8ex32={};_0x1f8ex32[_0x1f8ex31]= {$like:_0xad45[88]+ _0x1f8ex1a[_0xad45[75]][_0xad45[87]]+ _0xad45[88]};return _0x1f8ex32})})};_0x1f8ex24= _[_0xad45[90]]({},_0x1f8ex24,_0x1f8ex1a[_0xad45[91]]);return db[_0xad45[70]][_0xad45[92]](_0x1f8ex24)[_0xad45[40]](respondWithFilteredResult(_0x1f8ex1e,_0x1f8ex24,_0xad45[67]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[67]))};exports[_0xad45[93]]= function(_0x1f8ex1a,_0x1f8ex1e){var _0x1f8ex24={raw:false,where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}},_0x1f8ex30={};_0x1f8ex30[_0xad45[68]]= _[_0xad45[74]](_[_0xad45[71]](db[_0xad45[70]][_0xad45[69]]),[_0xad45[72],_0xad45[73]]);_0x1f8ex30[_0xad45[75]]= _[_0xad45[71]](_0x1f8ex1a[_0xad45[75]]);_0x1f8ex30[_0xad45[76]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],_0x1f8ex30[_0xad45[75]]);_0x1f8ex24[_0xad45[78]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],qs[_0xad45[79]](_0x1f8ex1a[_0xad45[75]][_0xad45[79]]));_0x1f8ex24[_0xad45[78]]= (_0x1f8ex24[_0xad45[78]][_0xad45[80]])?_0x1f8ex24[_0xad45[78]]:_0x1f8ex30[_0xad45[68]];_0x1f8ex24= _[_0xad45[90]]({},_0x1f8ex24,_0x1f8ex1a[_0xad45[91]]);return db[_0xad45[70]][_0xad45[96]](_0x1f8ex24)[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[93]))[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[93]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[93]))};exports[_0xad45[97]]= function(_0x1f8ex1a,_0x1f8ex1e){return db[_0xad45[70]][_0xad45[97]](_0x1f8ex1a[_0xad45[98]],{raw:false,individualHooks:true})[_0xad45[40]](respondWithResult(_0x1f8ex1e,201,_0xad45[97]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[97]))};exports[_0xad45[61]]= function(_0x1f8ex1a,_0x1f8ex1e){if(_0x1f8ex1a[_0xad45[98]][_0xad45[94]]){delete _0x1f8ex1a[_0xad45[98]][_0xad45[94]]};return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[61]))[_0xad45[40]](saveUpdates(_0x1f8ex1a[_0xad45[98]],null,_0xad45[61]))[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[61]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[61]))};exports[_0xad45[63]]= function(_0x1f8ex1a,_0x1f8ex1e){return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[63]))[_0xad45[40]](removeEntity(_0x1f8ex1e,null,_0xad45[63]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[63]))};exports[_0xad45[99]]= function(_0x1f8ex1a,_0x1f8ex1e){return db[_0xad45[70]][_0xad45[99]]()[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[99]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[99]))};exports[_0xad45[100]]= function(_0x1f8ex1a,_0x1f8ex1e){return db[_0xad45[70]][_0xad45[63]]({where:{id:_0x1f8ex1a[_0xad45[75]][_0xad45[101]]|| []},raw:false,individualHooks:true})[_0xad45[40]](respondWithResult(_0x1f8ex1e,204,_0xad45[100]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[100]))};exports[_0xad45[102]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[102]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){return _0x1f8ex21[_0xad45[102]](_0x1f8ex1a[_0xad45[98]][_0xad45[101]],_[_0xad45[103]](_0x1f8ex1a[_0xad45[98]],[_0xad45[101],_0xad45[94]])|| {})};return null})[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[102]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[102]))};var getLicense=function(_0x1f8ex1a){return  new BPromise(function(_0x1f8ex1b,_0x1f8ex1c){var _0x1f8ex35=0;_0x1f8ex1a[_0xad45[98]][_0xad45[104]]=== _0xad45[105]&& _0x1f8ex1b(_0xad45[106]);return db[_0xad45[70]][_0xad45[49]]({where:{$or:[{role:_0x1f8ex1a[_0xad45[98]][_0xad45[104]]=== _0xad45[107]?_0xad45[107]:[_0xad45[115],_0xad45[116]]}]}})[_0xad45[40]](function(_0x1f8ex25){_0x1f8ex35= _0x1f8ex25;return require(_0xad45[114])[_0xad45[113]]()})[_0xad45[40]](function(_0x1f8ex36){var _0x1f8ex37=_0x1f8ex1a[_0xad45[98]][_0xad45[104]]=== _0xad45[107]?_0xad45[108]:_0xad45[109];if(_0x1f8ex36[_0x1f8ex37]&& _0x1f8ex35>= _0x1f8ex36[_0x1f8ex37]){return _0x1f8ex1c({message:_0xad45[110]})};return _0x1f8ex1b(util[_0xad45[112]](_0xad45[111],_0x1f8ex37,_0x1f8ex35))})[_0xad45[31]](function(_0x1f8ex1d){return _0x1f8ex1c(_0x1f8ex1d)})})};exports[_0xad45[117]]= function(_0x1f8ex1a,_0x1f8ex1e){return getLicense(_0x1f8ex1a)[_0xad45[40]](function(_0x1f8ex39){return db[_0xad45[70]][_0xad45[124]](_0xad45[118])})[_0xad45[40]](function(_0x1f8ex38){_0x1f8ex1a[_0xad45[98]][_0xad45[118]]= _0x1f8ex1a[_0xad45[98]][_0xad45[118]]|| (_0x1f8ex38?_0x1f8ex38+ 1:1000);if(_0x1f8ex1a[_0xad45[98]][_0xad45[119]]){_0x1f8ex1a[_0xad45[98]][_0xad45[120]]= _0x1f8ex1a[_0xad45[98]][_0xad45[118]];_0x1f8ex1a[_0xad45[98]][_0xad45[121]]= {mailbox:_0x1f8ex1a[_0xad45[98]][_0xad45[118]],password:_0x1f8ex1a[_0xad45[98]][_0xad45[72]],fullname:_0x1f8ex1a[_0xad45[98]][_0xad45[122]],email:_0x1f8ex1a[_0xad45[98]][_0xad45[123]]}};return db[_0xad45[70]][_0xad45[117]](_0x1f8ex1a[_0xad45[98]],{include:[{model:db[_0xad45[121]],as:_0xad45[121]}]})})[_0xad45[40]](respondWithResult(_0x1f8ex1e,201,_0xad45[117]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[117]))};exports[_0xad45[125]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){if(_0x1f8ex1a[_0xad45[98]][_0xad45[94]]){delete _0x1f8ex1a[_0xad45[98]][_0xad45[94]]};return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){switch(_0x1f8ex1a[_0xad45[116]][_0xad45[104]]){case _0xad45[115]:;case _0xad45[116]:if(!_0x1f8ex1a[_0xad45[98]][_0xad45[126]]){throw  new db[_0xad45[128]].ValidationError(_0xad45[127])};return _0x1f8ex21;case _0xad45[105]:if(!_0x1f8ex1a[_0xad45[98]][_0xad45[129]]||  !_0x1f8ex1a[_0xad45[98]][_0xad45[126]]){throw  new db[_0xad45[128]].ValidationError(_0xad45[127])};if(!_0x1f8ex21[_0xad45[130]](_0x1f8ex1a[_0xad45[98]][_0xad45[129]])){_0x1f8ex1e[_0xad45[44]](403);return null}else {return _0x1f8ex21}}};return null})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[125]))[_0xad45[40]](saveUpdates({password:_0x1f8ex1a[_0xad45[98]][_0xad45[126]]},null,_0xad45[125]))[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[125]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[125]))};exports[_0xad45[131]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){var _0x1f8ex3a;return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]},attributes:[_0xad45[94],_0xad45[65],_0xad45[104],_0xad45[137]]})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[131]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3a= _0x1f8ex21;if(!utils[_0xad45[145]](_0x1f8ex1a[_0xad45[98]][_0xad45[132]])){throw  new db[_0xad45[128]].ValidationError(_0xad45[146])};return _0x1f8ex21[_0xad45[147]+ _[_0xad45[149]](_0x1f8ex1a[_0xad45[98]][_0xad45[132]][_0xad45[148]]())+ _0xad45[150]](_0x1f8ex1a[_0xad45[98]][_0xad45[101]],{penalty:_0x1f8ex1a[_0xad45[98]][_0xad45[138]]|| 0})}})[_0xad45[40]](function(){if(_0x1f8ex1a[_0xad45[98]][_0xad45[132]]=== _0xad45[133]&& _0x1f8ex1a[_0xad45[98]][_0xad45[134]]){return db[_0xad45[144]][_0xad45[143]]({where:{id:_0x1f8ex1a[_0xad45[98]][_0xad45[101]]|| []},raw:true,attributes:[_0xad45[94],_0xad45[65]]})}})[_0xad45[40]](function(_0x1f8ex3b){var _0x1f8ex3c=[];if(_0x1f8ex1a[_0xad45[98]][_0xad45[132]]=== _0xad45[133]&& _0x1f8ex1a[_0xad45[98]][_0xad45[134]]){for(var _0x1f8ex3d=0;_0x1f8ex3d< _0x1f8ex3b[_0xad45[80]];_0x1f8ex3d+= 1){_0x1f8ex3c[_0xad45[141]](db[_0xad45[140]][_0xad45[139]]({membername:_0x1f8ex3a[_0xad45[65]],UserId:_0x1f8ex3a[_0xad45[94]],queue_name:_0x1f8ex3b[_0x1f8ex3d][_0xad45[65]],VoiceQueueId:_0x1f8ex3b[_0x1f8ex3d][_0xad45[94]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),paused:_0x1f8ex3a[_0xad45[137]]|| false,penalty:_0x1f8ex1a[_0xad45[98]][_0xad45[138]]|| 0}))};return BPromise[_0xad45[142]](_0x1f8ex3c)};return _0x1f8ex3a})[_0xad45[40]](respondWithStatusCode(_0x1f8ex1e,null,_0xad45[131]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[131]))};exports[_0xad45[151]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){var _0x1f8ex3a;return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]},attributes:[_0xad45[94],_0xad45[65],_0xad45[104]]})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[151]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3a= _0x1f8ex21;if(!_0x1f8ex1a[_0xad45[75]][_0xad45[132]]||  !utils[_0xad45[145]](_0x1f8ex1a[_0xad45[75]][_0xad45[132]])){throw  new db[_0xad45[128]].ValidationError(_0xad45[146])};return _0x1f8ex21[_0xad45[152]+ _[_0xad45[149]](_0x1f8ex1a[_0xad45[75]][_0xad45[132]][_0xad45[148]]())+ _0xad45[150]](_0x1f8ex1a[_0xad45[75]][_0xad45[101]])}})[_0xad45[40]](function(_0x1f8ex3b){if(_0x1f8ex1a[_0xad45[75]][_0xad45[132]]=== _0xad45[133]){return db[_0xad45[140]][_0xad45[63]]({where:{UserId:_0x1f8ex1a[_0xad45[95]][_0xad45[94]],VoiceQueueId:_0x1f8ex1a[_0xad45[75]][_0xad45[101]]},individualHooks:true})[_0xad45[40]](function(){return _0x1f8ex3a})};return _0x1f8ex3a})[_0xad45[40]](respondWithStatusCode(_0x1f8ex1e,null,_0xad45[151]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[151]))};exports[_0xad45[153]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){_0x1f8ex1a[_0xad45[98]][_0xad45[154]]= _0x1f8ex1a[_0xad45[156]][_0xad45[155]];return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[153]))[_0xad45[40]](saveUpdates(_0x1f8ex1a[_0xad45[98]],null,_0xad45[153]))[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[157]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[153]))};exports[_0xad45[158]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){var _0x1f8ex3e=path[_0xad45[161]](config[_0xad45[159]],_0xad45[160]);return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]},attributes:[_0xad45[94],_0xad45[154]],raw:true})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[158]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){logger[_0xad45[33]](_0xad45[29],_0xad45[158],_0xad45[47]);logger[_0xad45[36]](_0xad45[34],_0xad45[158],_0xad45[47],JSON[_0xad45[35]](_0x1f8ex21));if(!fs[_0xad45[163]](path[_0xad45[161]](config[_0xad45[159]],_0xad45[162],_0x1f8ex21[_0xad45[154]]))){return _0x1f8ex1e[_0xad45[164]](_0x1f8ex3e)};return _0x1f8ex1e[_0xad45[164]](path[_0xad45[161]](config[_0xad45[159]],_0xad45[162],_0x1f8ex21[_0xad45[154]]))}})[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[93]))};exports[_0xad45[165]]= function(_0x1f8ex1a,_0x1f8ex21,_0x1f8ex33){var _0x1f8ex24={};var _0x1f8ex30={};var _0x1f8ex3f;var _0x1f8ex25;return db[_0xad45[70]][_0xad45[167]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex21,null,_0xad45[165]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3f= _0x1f8ex21;_0x1f8ex30[_0xad45[68]]= _[_0xad45[71]](db[_0xad45[166]][_0xad45[69]]);_0x1f8ex30[_0xad45[75]]= _[_0xad45[71]](_0x1f8ex1a[_0xad45[75]]);_0x1f8ex30[_0xad45[76]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],_0x1f8ex30[_0xad45[75]]);_0x1f8ex24[_0xad45[78]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],qs[_0xad45[79]](_0x1f8ex1a[_0xad45[75]][_0xad45[79]]));_0x1f8ex24[_0xad45[78]]= (_0x1f8ex24[_0xad45[78]][_0xad45[80]])?_0x1f8ex24[_0xad45[78]]:_0x1f8ex30[_0xad45[68]];_0x1f8ex24[_0xad45[83]]= qs[_0xad45[84]](_0x1f8ex1a[_0xad45[75]][_0xad45[84]]);_0x1f8ex24[_0xad45[85]]= qs[_0xad45[76]](_[_0xad45[86]](_0x1f8ex1a[_0xad45[75]],_0x1f8ex30[_0xad45[76]]));if(_0x1f8ex1a[_0xad45[75]][_0xad45[87]]){_0x1f8ex24[_0xad45[85]]= _[_0xad45[90]](_0x1f8ex24[_0xad45[85]],{$or:_[_0xad45[89]](_0x1f8ex24[_0xad45[78]],function(_0x1f8ex31){var _0x1f8ex32={};_0x1f8ex32[_0x1f8ex31]= {$like:_0xad45[88]+ _0x1f8ex1a[_0xad45[75]][_0xad45[87]]+ _0xad45[88]};return _0x1f8ex32})})};_0x1f8ex24= _[_0xad45[90]]({},_0x1f8ex24,_0x1f8ex1a[_0xad45[91]]);return _0x1f8ex3f[_0xad45[165]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex41){if(_0x1f8ex41){_0x1f8ex25= _0x1f8ex41[_0xad45[80]];if(!_0x1f8ex1a[_0xad45[75]][_0xad45[82]](_0xad45[81])){_0x1f8ex24[_0xad45[51]]= qs[_0xad45[51]](_0x1f8ex1a[_0xad45[75]][_0xad45[51]]);_0x1f8ex24[_0xad45[50]]= qs[_0xad45[50]](_0x1f8ex1a[_0xad45[75]][_0xad45[50]])};return _0x1f8ex3f[_0xad45[165]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex40){return _0x1f8ex40?{count:_0x1f8ex25,rows:_0x1f8ex40}:null})[_0xad45[40]](respondWithResult(_0x1f8ex21,null,_0xad45[165]))[_0xad45[31]](handleError(_0x1f8ex21,null,_0xad45[165]))};exports[_0xad45[168]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){var _0x1f8ex3a;var _0x1f8ex3b;var _0x1f8ex24={};var _0x1f8ex25;return db[_0xad45[70]][_0xad45[167]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]},attributes:[_0xad45[94],_0xad45[65],_0xad45[104]]})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[168]))[_0xad45[40]](function(_0x1f8ex42){if(!utils[_0xad45[145]](_0x1f8ex1a[_0xad45[75]][_0xad45[132]])){throw  new db[_0xad45[128]].ValidationError(_0xad45[146])};_0x1f8ex3a= _0x1f8ex42;var _0x1f8ex30={};_0x1f8ex30[_0xad45[68]]= _[_0xad45[71]](db[_[_0xad45[149]](_0x1f8ex1a[_0xad45[75]][_0xad45[132]])+ _0xad45[169]][_0xad45[69]]);_0x1f8ex30[_0xad45[75]]= _[_0xad45[71]](_0x1f8ex1a[_0xad45[75]]);_0x1f8ex30[_0xad45[76]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],_0x1f8ex30[_0xad45[75]]);_0x1f8ex24[_0xad45[78]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],qs[_0xad45[79]](_0x1f8ex1a[_0xad45[75]][_0xad45[79]]));_0x1f8ex24[_0xad45[78]]= (_0x1f8ex24[_0xad45[78]][_0xad45[80]])?_0x1f8ex24[_0xad45[78]]:_0x1f8ex30[_0xad45[68]];_0x1f8ex24[_0xad45[83]]= qs[_0xad45[84]](_0x1f8ex1a[_0xad45[75]][_0xad45[84]]);_0x1f8ex24[_0xad45[85]]= qs[_0xad45[76]](_[_0xad45[86]](_0x1f8ex1a[_0xad45[75]],_0x1f8ex30[_0xad45[76]]));if(_0x1f8ex1a[_0xad45[75]][_0xad45[87]]){_0x1f8ex24[_0xad45[85]]= _[_0xad45[90]](_0x1f8ex24[_0xad45[85]],{$or:_[_0xad45[89]](_0x1f8ex24[_0xad45[78]],function(_0x1f8ex31){var _0x1f8ex32={};_0x1f8ex32[_0x1f8ex31]= {$like:_0xad45[88]+ _0x1f8ex1a[_0xad45[75]][_0xad45[87]]+ _0xad45[88]};return _0x1f8ex32})})};_0x1f8ex24= _[_0xad45[90]]({},_0x1f8ex24,_0x1f8ex1a[_0xad45[91]]);switch(_0x1f8ex3a[_0xad45[104]]){case _0xad45[115]:return db[_[_0xad45[149]](_0x1f8ex1a[_0xad45[75]][_0xad45[132]])+ _0xad45[169]][_0xad45[143]](_0x1f8ex24);case _0xad45[116]:;case _0xad45[105]:return _0x1f8ex3a[_0xad45[170]+ _[_0xad45[149]](_0x1f8ex1a[_0xad45[75]][_0xad45[132]])+ _0xad45[150]](_0x1f8ex24);default:throw  new db[_0xad45[128]].ValidationError(_0xad45[171])}})[_0xad45[40]](function(_0x1f8ex41){_0x1f8ex25= _0x1f8ex41[_0xad45[80]];if(!_0x1f8ex1a[_0xad45[75]][_0xad45[82]](_0xad45[81])){_0x1f8ex24[_0xad45[51]]= qs[_0xad45[51]](_0x1f8ex1a[_0xad45[75]][_0xad45[51]]);_0x1f8ex24[_0xad45[50]]= qs[_0xad45[50]](_0x1f8ex1a[_0xad45[75]][_0xad45[50]])};switch(_0x1f8ex3a[_0xad45[104]]){case _0xad45[115]:return db[_[_0xad45[149]](_0x1f8ex1a[_0xad45[75]][_0xad45[132]])+ _0xad45[169]][_0xad45[143]](_0x1f8ex24);case _0xad45[116]:;case _0xad45[105]:return _0x1f8ex3a[_0xad45[170]+ _[_0xad45[149]](_0x1f8ex1a[_0xad45[75]][_0xad45[132]])+ _0xad45[150]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex40){return {count:_0x1f8ex25,rows:_0x1f8ex40}})[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[168]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[168]))};exports[_0xad45[172]]= function(_0x1f8ex1a,_0x1f8ex21,_0x1f8ex33){var _0x1f8ex24={};var _0x1f8ex30={};var _0x1f8ex3f;var _0x1f8ex25;return db[_0xad45[70]][_0xad45[167]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex21,null,_0xad45[172]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3f= _0x1f8ex21;_0x1f8ex30[_0xad45[68]]= _[_0xad45[71]](db[_0xad45[140]][_0xad45[69]]);_0x1f8ex30[_0xad45[75]]= _[_0xad45[71]](_0x1f8ex1a[_0xad45[75]]);_0x1f8ex30[_0xad45[76]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],_0x1f8ex30[_0xad45[75]]);_0x1f8ex24[_0xad45[78]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],qs[_0xad45[79]](_0x1f8ex1a[_0xad45[75]][_0xad45[79]]));_0x1f8ex24[_0xad45[78]]= (_0x1f8ex24[_0xad45[78]][_0xad45[80]])?_0x1f8ex24[_0xad45[78]]:_0x1f8ex30[_0xad45[68]];_0x1f8ex24[_0xad45[83]]= qs[_0xad45[84]](_0x1f8ex1a[_0xad45[75]][_0xad45[84]]);_0x1f8ex24[_0xad45[85]]= qs[_0xad45[76]](_[_0xad45[86]](_0x1f8ex1a[_0xad45[75]],_0x1f8ex30[_0xad45[76]]));if(_0x1f8ex1a[_0xad45[75]][_0xad45[87]]){_0x1f8ex24[_0xad45[85]]= _[_0xad45[90]](_0x1f8ex24[_0xad45[85]],{$or:_[_0xad45[89]](_0x1f8ex24[_0xad45[78]],function(_0x1f8ex31){var _0x1f8ex32={};_0x1f8ex32[_0x1f8ex31]= {$like:_0xad45[88]+ _0x1f8ex1a[_0xad45[75]][_0xad45[87]]+ _0xad45[88]};return _0x1f8ex32})})};_0x1f8ex24= _[_0xad45[90]]({},_0x1f8ex24,_0x1f8ex1a[_0xad45[91]]);return _0x1f8ex3f[_0xad45[172]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex41){if(_0x1f8ex41){_0x1f8ex25= _0x1f8ex41[_0xad45[80]];if(!_0x1f8ex1a[_0xad45[75]][_0xad45[82]](_0xad45[81])){_0x1f8ex24[_0xad45[51]]= qs[_0xad45[51]](_0x1f8ex1a[_0xad45[75]][_0xad45[51]]);_0x1f8ex24[_0xad45[50]]= qs[_0xad45[50]](_0x1f8ex1a[_0xad45[75]][_0xad45[50]])};return _0x1f8ex3f[_0xad45[172]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex40){return _0x1f8ex40?{count:_0x1f8ex25,rows:_0x1f8ex40}:null})[_0xad45[40]](respondWithResult(_0x1f8ex21,null,_0xad45[172]))[_0xad45[31]](handleError(_0x1f8ex21,null,_0xad45[172]))};exports[_0xad45[173]]= function(_0x1f8ex1a,_0x1f8ex21,_0x1f8ex33){var _0x1f8ex24={};var _0x1f8ex30={};var _0x1f8ex3f;var _0x1f8ex25;return db[_0xad45[70]][_0xad45[167]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex21,null,_0xad45[173]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3f= _0x1f8ex21;_0x1f8ex30[_0xad45[68]]= _[_0xad45[71]](db[_0xad45[174]][_0xad45[69]]);_0x1f8ex30[_0xad45[75]]= _[_0xad45[71]](_0x1f8ex1a[_0xad45[75]]);_0x1f8ex30[_0xad45[76]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],_0x1f8ex30[_0xad45[75]]);_0x1f8ex24[_0xad45[78]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],qs[_0xad45[79]](_0x1f8ex1a[_0xad45[75]][_0xad45[79]]));_0x1f8ex24[_0xad45[78]]= (_0x1f8ex24[_0xad45[78]][_0xad45[80]])?_0x1f8ex24[_0xad45[78]]:_0x1f8ex30[_0xad45[68]];_0x1f8ex24[_0xad45[83]]= qs[_0xad45[84]](_0x1f8ex1a[_0xad45[75]][_0xad45[84]]);_0x1f8ex24[_0xad45[85]]= qs[_0xad45[76]](_[_0xad45[86]](_0x1f8ex1a[_0xad45[75]],_0x1f8ex30[_0xad45[76]]));if(_0x1f8ex1a[_0xad45[75]][_0xad45[87]]){_0x1f8ex24[_0xad45[85]]= _[_0xad45[90]](_0x1f8ex24[_0xad45[85]],{$or:_[_0xad45[89]](_0x1f8ex24[_0xad45[78]],function(_0x1f8ex31){var _0x1f8ex32={};_0x1f8ex32[_0x1f8ex31]= {$like:_0xad45[88]+ _0x1f8ex1a[_0xad45[75]][_0xad45[87]]+ _0xad45[88]};return _0x1f8ex32})})};_0x1f8ex24= _[_0xad45[90]]({},_0x1f8ex24,_0x1f8ex1a[_0xad45[91]]);return _0x1f8ex3f[_0xad45[173]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex41){if(_0x1f8ex41){_0x1f8ex25= _0x1f8ex41[_0xad45[80]];if(!_0x1f8ex1a[_0xad45[75]][_0xad45[82]](_0xad45[81])){_0x1f8ex24[_0xad45[51]]= qs[_0xad45[51]](_0x1f8ex1a[_0xad45[75]][_0xad45[51]]);_0x1f8ex24[_0xad45[50]]= qs[_0xad45[50]](_0x1f8ex1a[_0xad45[75]][_0xad45[50]])};return _0x1f8ex3f[_0xad45[173]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex40){return _0x1f8ex40?{count:_0x1f8ex25,rows:_0x1f8ex40}:null})[_0xad45[40]](respondWithResult(_0x1f8ex21,null,_0xad45[173]))[_0xad45[31]](handleError(_0x1f8ex21,null,_0xad45[173]))};exports[_0xad45[175]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){var _0x1f8ex3a;var _0x1f8ex3b;return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]],role:_0xad45[105]},attributes:[_0xad45[94],_0xad45[65],_0xad45[104],_0xad45[118],_0xad45[137]]})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[175]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3a= _0x1f8ex21;return _0x1f8ex3a[_0xad45[185]]({raw:true})}})[_0xad45[40]](function(_0x1f8ex41){var _0x1f8ex3c=[];if(_0x1f8ex41){_0x1f8ex3b= _0x1f8ex41;if(_0x1f8ex3b[_0xad45[80]]){for(var _0x1f8ex3d=0;_0x1f8ex3d< _0x1f8ex3b[_0xad45[80]];_0x1f8ex3d++){_0x1f8ex3c[_0xad45[141]](db[_0xad45[140]][_0xad45[139]]({membername:_0x1f8ex3a[_0xad45[65]],UserId:_0x1f8ex3a[_0xad45[94]],queue_name:_0x1f8ex3b[_0x1f8ex3d][_0xad45[65]],VoiceQueueId:_0x1f8ex3b[_0x1f8ex3d][_0xad45[94]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),paused:_0x1f8ex3a[_0xad45[137]]|| false,penalty:_0x1f8ex3b[_0x1f8ex3d][_0xad45[184]]|| 0}))};return BPromise[_0xad45[142]](_0x1f8ex3c)}}})[_0xad45[40]](function(){return db[_0xad45[183]][_0xad45[143]]({where:{membername:_0x1f8ex3a[_0xad45[65]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),exitAt:null}})})[_0xad45[40]](function(){var _0x1f8ex43=[];var _0x1f8ex44=[];var _0x1f8ex45=utils[_0xad45[178]]();var _0x1f8ex46={membername:_0x1f8ex3a[_0xad45[65]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),enterAt:moment()[_0xad45[112]](_0xad45[176]),role:_0x1f8ex3a[_0xad45[104]],internal:_0x1f8ex3a[_0xad45[118]]};_0x1f8ex45[_0xad45[181]](function(_0x1f8ex47){_0x1f8ex43[_0xad45[141]](_[_0xad45[90]]({channel:_0x1f8ex47,type:_0xad45[179]},_0x1f8ex46));if(_0x1f8ex3a[_0xad45[137]]){_0x1f8ex44[_0xad45[141]](_[_0xad45[90]]({channel:_0x1f8ex47,type:_0xad45[180],data1:_0xad45[177]},_0x1f8ex46))}});return db[_0xad45[183]][_0xad45[97]](_0x1f8ex43[_0xad45[182]](_0x1f8ex44),{individualHooks:true})})[_0xad45[40]](function(){return _0x1f8ex3a[_0xad45[61]]({online:true,lastLoginAt:moment()[_0xad45[112]](_0xad45[176]),voicePause:_0x1f8ex3a[_0xad45[137]]|| false,mailPause:_0x1f8ex3a[_0xad45[137]]|| false,chatPause:_0x1f8ex3a[_0xad45[137]]|| false,faxPause:_0x1f8ex3a[_0xad45[137]]|| false,smsPause:_0x1f8ex3a[_0xad45[137]]|| false,openchannelPause:_0x1f8ex3a[_0xad45[137]]|| false,pauseType:_0x1f8ex3a[_0xad45[137]]?_0xad45[177]:null})})[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[175]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[175]))};exports[_0xad45[186]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){var _0x1f8ex3a;return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]],role:_0xad45[105]},attributes:[_0xad45[94],_0xad45[65],_0xad45[104]]})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[186]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3a= _0x1f8ex21;return db[_0xad45[140]][_0xad45[63]]({where:{membername:_0x1f8ex3a[_0xad45[65]]},individualHooks:true})}})[_0xad45[40]](function(){return db[_0xad45[183]][_0xad45[143]]({where:{membername:_0x1f8ex3a[_0xad45[65]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),exitAt:null}})})[_0xad45[40]](function(_0x1f8ex3c){var _0x1f8ex48=[];_0x1f8ex3c[_0xad45[181]](function(_0x1f8ex49){_0x1f8ex48[_0xad45[141]](_0x1f8ex49[_0xad45[61]]({exitAt:moment()[_0xad45[112]](_0xad45[176])}))});return BPromise[_0xad45[142]](_0x1f8ex48)})[_0xad45[40]](function(){return _0x1f8ex3a[_0xad45[61]]({online:false,lastLoginAt:null,voicePause:false,mailPause:false,chatPause:false,faxPause:false,smsPause:false,openchannelPause:false})})[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[186]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[186]))};exports[_0xad45[187]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){var _0x1f8ex3a;return db[_0xad45[140]][_0xad45[61]]({paused:1},{where:{UserId:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]},individualHooks:true})[_0xad45[40]](function(){return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]],role:_0xad45[105]},attributes:[_0xad45[94],_0xad45[65],_0xad45[104],_0xad45[118]]})})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[187]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3a= _0x1f8ex21;return respondWithRpcPromise(_0xad45[190],_0xad45[187],{id:_0x1f8ex3a[_0xad45[94]],name:_0x1f8ex3a[_0xad45[65]]})}})[_0xad45[40]](function(){if(_0x1f8ex3a){return db[_0xad45[183]][_0xad45[143]]({where:{membername:_0x1f8ex3a[_0xad45[65]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),type:_0xad45[180],exitAt:null}})}})[_0xad45[40]](function(_0x1f8ex3c){if(_0x1f8ex3c[_0xad45[80]]){return db[_0xad45[183]][_0xad45[61]]({exitAt:moment()[_0xad45[112]](_0xad45[176])},{where:{id:{$in:_[_0xad45[89]](_0x1f8ex3c,_0xad45[94])}},individualHooks:true})}})[_0xad45[40]](function(){var _0x1f8ex3c=[];var _0x1f8ex45=utils[_0xad45[178]]();_0x1f8ex45[_0xad45[181]](function(_0x1f8ex47){_0x1f8ex3c[_0xad45[141]]({channel:_0x1f8ex47,membername:_0x1f8ex3a[_0xad45[65]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),type:_0xad45[180],enterAt:moment()[_0xad45[112]](_0xad45[176]),data1:_0x1f8ex1a[_0xad45[98]][_0xad45[188]]|| _0xad45[189],role:_0x1f8ex3a[_0xad45[104]],internal:_0x1f8ex3a[_0xad45[118]]})});return db[_0xad45[183]][_0xad45[97]](_0x1f8ex3c,{individualHooks:true})})[_0xad45[40]](function(){return _0x1f8ex3a[_0xad45[61]]({voicePause:true,mailPause:true,chatPause:true,faxPause:true,smsPause:true,openchannelPause:true,pauseType:_0x1f8ex1a[_0xad45[98]][_0xad45[188]]|| _0xad45[189],lastPauseAt:moment()[_0xad45[112]](_0xad45[176])})})[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[187]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[187]))};exports[_0xad45[191]]= function(_0x1f8ex1a,_0x1f8ex1e,_0x1f8ex33){var _0x1f8ex3a;return db[_0xad45[70]][_0xad45[96]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]},attributes:[_0xad45[94],_0xad45[65],_0xad45[104]]})[_0xad45[40]](handleEntityNotFound(_0x1f8ex1e,null,_0xad45[191]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3a= _0x1f8ex21;if(_0x1f8ex1a[_0xad45[98]][_0xad45[132]]&&  !utils[_0xad45[145]](_0x1f8ex1a[_0xad45[98]][_0xad45[132]])){throw  new db[_0xad45[128]].ValidationError(_0xad45[146])};switch(_0x1f8ex1a[_0xad45[98]][_0xad45[132]]){case _0xad45[133]:return respondWithRpcPromise(_0xad45[190],_0xad45[191],{id:_0x1f8ex3a[_0xad45[94]],name:_0x1f8ex3a[_0xad45[65]]})[_0xad45[40]](function(){return db[_0xad45[140]][_0xad45[61]]({paused:0},{where:{UserId:_0x1f8ex3a[_0xad45[94]]},individualHooks:true})})[_0xad45[40]](function(){return db[_0xad45[183]][_0xad45[96]]({where:{channel:_0x1f8ex1a[_0xad45[98]][_0xad45[132]],membername:_0x1f8ex3a[_0xad45[65]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),type:_0xad45[180],exitAt:null}})})[_0xad45[40]](function(_0x1f8ex49){if(_0x1f8ex49){return _0x1f8ex49[_0xad45[61]]({exitAt:moment()[_0xad45[112]](_0xad45[176]),data2:_0xad45[192]},{individualHooks:true})};return null})[_0xad45[40]](function(){return _0x1f8ex3a[_0xad45[61]]({voicePause:false})});case _0xad45[193]:;case _0xad45[194]:;case _0xad45[195]:;case _0xad45[196]:;case _0xad45[199]:return db[_0xad45[183]][_0xad45[96]]({where:{channel:_0x1f8ex1a[_0xad45[98]][_0xad45[132]],membername:_0x1f8ex3a[_0xad45[65]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),type:_0xad45[180],exitAt:null}})[_0xad45[40]](function(_0x1f8ex49){return _0x1f8ex49[_0xad45[61]]({exitAt:moment()[_0xad45[112]](_0xad45[176]),data2:_0xad45[192]},{individualHooks:true})})[_0xad45[40]](function(){var _0x1f8ex4a={};_[_0xad45[56]](_0x1f8ex4a,util[_0xad45[112]](_0xad45[197],_0x1f8ex1a[_0xad45[98]][_0xad45[132]],_0xad45[198]),false);return _0x1f8ex3a[_0xad45[61]](_0x1f8ex4a)});default:return respondWithRpcPromise(_0xad45[190],_0xad45[191],{id:_0x1f8ex3a[_0xad45[94]],name:_0x1f8ex3a[_0xad45[65]]})[_0xad45[40]](function(){return db[_0xad45[140]][_0xad45[61]]({paused:0},{where:{UserId:_0x1f8ex3a[_0xad45[94]]}})})[_0xad45[40]](function(){return db[_0xad45[183]][_0xad45[143]]({where:{membername:_0x1f8ex3a[_0xad45[65]],interface:util[_0xad45[112]](_0xad45[135],_0xad45[136],_0x1f8ex3a[_0xad45[65]]),type:_0xad45[180],exitAt:null}})})[_0xad45[40]](function(_0x1f8ex3c){var _0x1f8ex48=[];_0x1f8ex3c[_0xad45[181]](function(_0x1f8ex49){_0x1f8ex48[_0xad45[141]](_0x1f8ex49[_0xad45[61]]({exitAt:moment()[_0xad45[112]](_0xad45[176]),data2:_0xad45[192]}))});return BPromise[_0xad45[142]](_0x1f8ex48)})[_0xad45[40]](function(){return _0x1f8ex3a[_0xad45[61]]({voicePause:false,mailPause:false,chatPause:false,faxPause:false,smsPause:false,openchannelPause:false})})}}})[_0xad45[40]](respondWithResult(_0x1f8ex1e,null,_0xad45[191]))[_0xad45[31]](handleError(_0x1f8ex1e,null,_0xad45[191]))};exports[_0xad45[200]]= function(_0x1f8ex1a,_0x1f8ex21,_0x1f8ex33){var _0x1f8ex24={};var _0x1f8ex30={};var _0x1f8ex3f;var _0x1f8ex25;return db[_0xad45[70]][_0xad45[167]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex21,null,_0xad45[200]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3f= _0x1f8ex21;_0x1f8ex30[_0xad45[68]]= _[_0xad45[71]](db[_0xad45[201]][_0xad45[69]]);_0x1f8ex30[_0xad45[75]]= _[_0xad45[71]](_0x1f8ex1a[_0xad45[75]]);_0x1f8ex30[_0xad45[76]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],_0x1f8ex30[_0xad45[75]]);_0x1f8ex24[_0xad45[78]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],qs[_0xad45[79]](_0x1f8ex1a[_0xad45[75]][_0xad45[79]]));_0x1f8ex24[_0xad45[78]]= (_0x1f8ex24[_0xad45[78]][_0xad45[80]])?_0x1f8ex24[_0xad45[78]]:_0x1f8ex30[_0xad45[68]];_0x1f8ex24[_0xad45[83]]= qs[_0xad45[84]](_0x1f8ex1a[_0xad45[75]][_0xad45[84]]);_0x1f8ex24[_0xad45[85]]= qs[_0xad45[76]](_[_0xad45[86]](_0x1f8ex1a[_0xad45[75]],_0x1f8ex30[_0xad45[76]]));if(_0x1f8ex1a[_0xad45[75]][_0xad45[87]]){_0x1f8ex24[_0xad45[85]]= _[_0xad45[90]](_0x1f8ex24[_0xad45[85]],{$or:_[_0xad45[89]](_0x1f8ex24[_0xad45[78]],function(_0x1f8ex31){var _0x1f8ex32={};_0x1f8ex32[_0x1f8ex31]= {$like:_0xad45[88]+ _0x1f8ex1a[_0xad45[75]][_0xad45[87]]+ _0xad45[88]};return _0x1f8ex32})})};_0x1f8ex24= _[_0xad45[90]]({},_0x1f8ex24,_0x1f8ex1a[_0xad45[91]]);return _0x1f8ex3f[_0xad45[200]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex41){if(_0x1f8ex41){_0x1f8ex25= _0x1f8ex41[_0xad45[80]];if(!_0x1f8ex1a[_0xad45[75]][_0xad45[82]](_0xad45[81])){_0x1f8ex24[_0xad45[51]]= qs[_0xad45[51]](_0x1f8ex1a[_0xad45[75]][_0xad45[51]]);_0x1f8ex24[_0xad45[50]]= qs[_0xad45[50]](_0x1f8ex1a[_0xad45[75]][_0xad45[50]])};return _0x1f8ex3f[_0xad45[200]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex40){return _0x1f8ex40?{count:_0x1f8ex25,rows:_0x1f8ex40}:null})[_0xad45[40]](respondWithResult(_0x1f8ex21,null,_0xad45[200]))[_0xad45[31]](handleError(_0x1f8ex21,null,_0xad45[200]))};exports[_0xad45[202]]= function(_0x1f8ex1a,_0x1f8ex21,_0x1f8ex33){var _0x1f8ex24={};var _0x1f8ex30={};var _0x1f8ex3f;var _0x1f8ex25;return db[_0xad45[70]][_0xad45[167]]({where:{id:_0x1f8ex1a[_0xad45[95]][_0xad45[94]]}})[_0xad45[40]](handleEntityNotFound(_0x1f8ex21,null,_0xad45[202]))[_0xad45[40]](function(_0x1f8ex21){if(_0x1f8ex21){_0x1f8ex3f= _0x1f8ex21;_0x1f8ex30[_0xad45[68]]= _[_0xad45[71]](db[_0xad45[203]][_0xad45[69]]);_0x1f8ex30[_0xad45[75]]= _[_0xad45[71]](_0x1f8ex1a[_0xad45[75]]);_0x1f8ex30[_0xad45[76]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],_0x1f8ex30[_0xad45[75]]);_0x1f8ex24[_0xad45[78]]= _[_0xad45[77]](_0x1f8ex30[_0xad45[68]],qs[_0xad45[79]](_0x1f8ex1a[_0xad45[75]][_0xad45[79]]));_0x1f8ex24[_0xad45[78]]= (_0x1f8ex24[_0xad45[78]][_0xad45[80]])?_0x1f8ex24[_0xad45[78]]:_0x1f8ex30[_0xad45[68]];_0x1f8ex24[_0xad45[83]]= qs[_0xad45[84]](_0x1f8ex1a[_0xad45[75]][_0xad45[84]]);_0x1f8ex24[_0xad45[85]]= qs[_0xad45[76]](_[_0xad45[86]](_0x1f8ex1a[_0xad45[75]],_0x1f8ex30[_0xad45[76]]));if(_0x1f8ex1a[_0xad45[75]][_0xad45[87]]){_0x1f8ex24[_0xad45[85]]= _[_0xad45[90]](_0x1f8ex24[_0xad45[85]],{$or:_[_0xad45[89]](_0x1f8ex24[_0xad45[78]],function(_0x1f8ex31){var _0x1f8ex32={};_0x1f8ex32[_0x1f8ex31]= {$like:_0xad45[88]+ _0x1f8ex1a[_0xad45[75]][_0xad45[87]]+ _0xad45[88]};return _0x1f8ex32})})};_0x1f8ex24= _[_0xad45[90]]({},_0x1f8ex24,_0x1f8ex1a[_0xad45[91]]);return _0x1f8ex3f[_0xad45[202]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex41){if(_0x1f8ex41){_0x1f8ex25= _0x1f8ex41[_0xad45[80]];if(!_0x1f8ex1a[_0xad45[75]][_0xad45[82]](_0xad45[81])){_0x1f8ex24[_0xad45[51]]= qs[_0xad45[51]](_0x1f8ex1a[_0xad45[75]][_0xad45[51]]);_0x1f8ex24[_0xad45[50]]= qs[_0xad45[50]](_0x1f8ex1a[_0xad45[75]][_0xad45[50]])};return _0x1f8ex3f[_0xad45[202]](_0x1f8ex24)}})[_0xad45[40]](function(_0x1f8ex40){return _0x1f8ex40?{count:_0x1f8ex25,rows:_0x1f8ex40}:null})[_0xad45[40]](respondWithResult(_0x1f8ex21,null,_0xad45[202]))[_0xad45[31]](handleError(_0x1f8ex21,null,_0xad45[202]))}
\ No newline at end of file
index 336136d..fca3d7d 100644 (file)
@@ -1 +1 @@
-var _0xeeac=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x76\x65\x6E\x74\x73","\x55\x73\x65\x72","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x73\x65\x74\x4D\x61\x78\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x73\x61\x76\x65","\x75\x70\x64\x61\x74\x65","\x72\x65\x6D\x6F\x76\x65","\x3A","\x69\x64","\x65\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x68\x6F\x6F\x6B","\x65\x78\x70\x6F\x72\x74\x73"];_0xeeac[0];var EventEmitter=require(_0xeeac[1]);var User=require(_0xeeac[4])[_0xeeac[3]][_0xeeac[2]];var UserEvents= new EventEmitter();UserEvents[_0xeeac[5]](0);var events={afterCreate:_0xeeac[6],afterUpdate:_0xeeac[7],afterDestroy:_0xeeac[8]};function emitEvent(event){return function(_0xb36ax7,_0xb36ax8,_0xb36ax9){UserEvents[_0xeeac[11]](event+ _0xeeac[9]+ _0xb36ax7[_0xeeac[10]],_0xb36ax7);UserEvents[_0xeeac[11]](event,_0xb36ax7);_0xb36ax9(null)}}for(var e in events){if(events[_0xeeac[12]](e)){var event=events[e];User[_0xeeac[13]](e,emitEvent(event))}};module[_0xeeac[14]]= UserEvents
\ No newline at end of file
+var _0x2c02=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x76\x65\x6E\x74\x73","\x55\x73\x65\x72","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x73\x65\x74\x4D\x61\x78\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x73\x61\x76\x65","\x75\x70\x64\x61\x74\x65","\x72\x65\x6D\x6F\x76\x65","\x3A","\x69\x64","\x65\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x68\x6F\x6F\x6B","\x65\x78\x70\x6F\x72\x74\x73"];_0x2c02[0];var EventEmitter=require(_0x2c02[1]);var User=require(_0x2c02[4])[_0x2c02[3]][_0x2c02[2]];var UserEvents= new EventEmitter();UserEvents[_0x2c02[5]](0);var events={afterCreate:_0x2c02[6],afterUpdate:_0x2c02[7],afterDestroy:_0x2c02[8]};function emitEvent(event){return function(_0xe635x7,_0xe635x8,_0xe635x9){UserEvents[_0x2c02[11]](event+ _0x2c02[9]+ _0xe635x7[_0x2c02[10]],_0xe635x7);UserEvents[_0x2c02[11]](event,_0xe635x7);_0xe635x9(null)}}for(var e in events){if(events[_0x2c02[12]](e)){var event=events[e];User[_0x2c02[13]](e,emitEvent(event))}};module[_0x2c02[14]]= UserEvents
\ No newline at end of file
index 4b9e6d3..b8e31b4 100644 (file)
@@ -1 +1 @@
-var _0x8da9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x63\x72\x79\x70\x74\x6F","\x75\x74\x69\x6C","\x6D\x64\x35","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x75\x73\x65\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x67\x6F\x6F\x67\x6C\x65","\x6C\x65\x6E\x67\x74\x68","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x73\x79\x73\x74\x65\x6D","\x69\x64","\x25\x73\x25\x73","\x70\x72\x65\x66\x69\x78","\x66\x6F\x72\x6D\x61\x74","\x72\x65\x63\x6F\x72\x64","\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x24\x7B\x55\x4E\x49\x51\x55\x45\x49\x44\x7D\x2E\x25\x73","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x46\x6F\x72\x6D\x61\x74","\x6D\x65\x72\x67\x65","\x70\x75\x73\x68","\x61\x75\x74\x68","\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x43\x68\x61\x6E\x53\x70\x79","\x53\x49\x50\x2F\x25\x73\x2C\x25\x73","\x6E\x61\x6D\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x53\x74\x6F\x70\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x53\x65\x74","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x44\x69\x61\x6C","\x53\x49\x50\x2F\x25\x73\x2C\x2C\x74\x54\x78\x58","\x48\x61\x6E\x67\x75\x70","\x70\x72\x69\x6F\x72\x69\x74\x79","\x64\x65\x66\x61\x75\x6C\x74\x73","\x63\x61\x74\x63\x68","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x63\x6F\x6E\x63\x61\x74","\x74\x68\x65\x6E","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x6F\x64\x65\x6C\x73","\x55\x73\x65\x72","\x75\x73\x65\x72\x73","\x75\x70\x64\x61\x74\x65\x4D\x64\x35\x50\x61\x73\x73\x77\x6F\x72\x64","\x75\x70\x64\x61\x74\x65\x50\x61\x73\x73\x77\x6F\x72\x64","\x63\x68\x61\x6E\x67\x65\x64","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x63\x68\x61\x6E\x73\x70\x79","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x63\x72\x79\x70\x74\x50\x61\x73\x73\x77\x6F\x72\x64","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x4D\x69\x73\x73\x69\x6E\x67\x20\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x62\x61\x73\x65\x36\x34","\x72\x61\x6E\x64\x6F\x6D\x42\x79\x74\x65\x73","\x73\x61\x6C\x74","\x73\x68\x61\x31","\x70\x62\x6B\x64\x66\x32\x53\x79\x6E\x63","\x70\x62\x6B\x64\x66\x32","\x70\x72\x6F\x76\x69\x64\x65\x72","\x69\x6E\x64\x65\x78\x4F\x66","\x49\x6E\x76\x61\x6C\x69\x64\x20\x70\x61\x73\x73\x77\x6F\x72\x64","\x6D\x61\x6B\x65\x53\x61\x6C\x74","\x6D\x64\x35\x73\x65\x63\x72\x65\x74","\x3A\x61\x73\x74\x65\x72\x69\x73\x6B\x3A","\x64\x65\x66\x69\x6E\x65"];_0x8da9[0];var BPromise=require(_0x8da9[1]);var crypto=require(_0x8da9[2]);var util=require(_0x8da9[3]);var md5=require(_0x8da9[4]);var _=require(_0x8da9[5]);var attributes=require(_0x8da9[6]);var authTypes=[_0x8da9[7]];var validatePresenceOf=function(_0xbfcdx9){return _0xbfcdx9&& _0xbfcdx9[_0x8da9[8]]};var getChanSpyApplications=function(_0xbfcdxb,_0xbfcdxc,_0xbfcdxd){var _0xbfcdxe={context:_0x8da9[9],type:_0x8da9[10],isApp:false,UserId:_0xbfcdxb[_0x8da9[11]]};var _0xbfcdxf=[];for(var _0xbfcdx10=0,_0xbfcdx11=1;_0xbfcdx10< _0xbfcdxd[_0x8da9[8]];_0xbfcdx10++,_0xbfcdx11= 1){var _0xbfcdx12={exten:util[_0x8da9[14]](_0x8da9[12],_0xbfcdxd[_0xbfcdx10][_0x8da9[13]],_0xbfcdxc),ChanSpyId:_0xbfcdxd[_0xbfcdx10][_0x8da9[11]]};if(_0xbfcdxd[_0xbfcdx10][_0x8da9[15]]){_0xbfcdxf[_0x8da9[20]](_[_0x8da9[19]]({app:_0x8da9[16],appdata:util[_0x8da9[14]](_0x8da9[17],_0xbfcdxd[_0xbfcdx10][_0x8da9[18]]),priority:_0xbfcdx11++},_0xbfcdxe,_0xbfcdx12))};if(_0xbfcdxd[_0xbfcdx10][_0x8da9[21]]){_0xbfcdxf[_0x8da9[20]](_[_0x8da9[19]]({app:_0x8da9[22],appdata:_0xbfcdxd[_0xbfcdx10][_0x8da9[23]],priority:_0xbfcdx11++},_0xbfcdxe,_0xbfcdx12))};_0xbfcdxf[_0x8da9[20]](_[_0x8da9[19]]({app:_0x8da9[24],appdata:util[_0x8da9[14]](_0x8da9[25],_0xbfcdxb[_0x8da9[26]],_0xbfcdxd[_0xbfcdx10][_0x8da9[27]]),priority:_0xbfcdx11++},_0xbfcdxe,_0xbfcdx12));if(_0xbfcdxd[_0xbfcdx10][_0x8da9[15]]){_0xbfcdxf[_0x8da9[20]](_[_0x8da9[19]]({app:_0x8da9[28],priority:_0xbfcdx11++},_0xbfcdxe,_0xbfcdx12))}};return _0xbfcdxf};var getUserApplications=function(_0xbfcdxb,_0xbfcdxc){var _0xbfcdxe={context:_0x8da9[9],exten:_0xbfcdxc,type:_0x8da9[10],isApp:false,UserId:_0xbfcdxb[_0x8da9[11]]};var _0xbfcdxf=[{app:_0x8da9[29],appdata:_0x8da9[30]},{app:_0x8da9[31],appdata:util[_0x8da9[14]](_0x8da9[32],_0xbfcdxb[_0x8da9[26]])},{app:_0x8da9[33]}];for(var _0xbfcdx10=0;_0xbfcdx10< _0xbfcdxf[_0x8da9[8]];_0xbfcdx10++){_0xbfcdxf[_0xbfcdx10][_0x8da9[34]]= _0xbfcdx10+ 1;_0xbfcdxf[_0xbfcdx10]= _[_0x8da9[35]](_0xbfcdxf[_0xbfcdx10],_0xbfcdxe)};return _0xbfcdxf};var getChanSpyPromise=function(_0xbfcdx15,_0xbfcdxb){return  new BPromise(function(_0xbfcdx16,_0xbfcdx17){return _0xbfcdx15[_0x8da9[41]][_0x8da9[40]]()[_0x8da9[39]](function(_0xbfcdx19){if(_0xbfcdx19){var _0xbfcdx1a=getChanSpyApplications(_0xbfcdxb,_0xbfcdxb[_0x8da9[37]],_0xbfcdx19);var _0xbfcdx1b=getChanSpyApplications(_0xbfcdxb,_0xbfcdxb[_0x8da9[26]],_0xbfcdx19);return _0xbfcdx16(_0xbfcdx1a[_0x8da9[38]](_0xbfcdx1b))};return _0xbfcdx16([])})[_0x8da9[36]](function(_0xbfcdx18){_0xbfcdx17(_0xbfcdx18)})})};module[_0x8da9[42]]= function(_0xbfcdx1c,_0xbfcdx1d){var _0xbfcdx15=_0xbfcdx1c[_0x8da9[43]];return _0xbfcdx1c[_0x8da9[68]](_0x8da9[44],attributes,{tableName:_0x8da9[45],hooks:{beforeCreate:function(_0xbfcdxb,_0xbfcdx1e,_0xbfcdx1f){_0xbfcdxb[_0x8da9[46]]();_0xbfcdxb[_0x8da9[47]](_0xbfcdx1f)},beforeUpdate:function(_0xbfcdxb,_0xbfcdx1e,_0xbfcdx1f){if(_0xbfcdxb[_0x8da9[48]](_0x8da9[23])){_0xbfcdxb[_0x8da9[46]]();return _0xbfcdxb[_0x8da9[47]](_0xbfcdx1f)};_0xbfcdx1f()},afterCreate:function(_0xbfcdxb,_0xbfcdx1e,_0xbfcdx1f){var _0xbfcdx20=getUserApplications(_0xbfcdxb,_0xbfcdxb[_0x8da9[37]]);var _0xbfcdx21=getUserApplications(_0xbfcdxb,_0xbfcdxb[_0x8da9[26]]);return _0xbfcdx15[_0x8da9[50]][_0x8da9[49]](_0xbfcdx20[_0x8da9[38]](_0xbfcdx21))[_0x8da9[39]](function(){if(_0xbfcdxb[_0x8da9[51]]){return getChanSpyPromise(_0xbfcdx15,_0xbfcdxb)}})[_0x8da9[39]](function(_0xbfcdxf){if(_0xbfcdxf&& _0xbfcdxf[_0x8da9[8]]){return _0xbfcdx15[_0x8da9[50]][_0x8da9[49]](_0xbfcdxf)}})[_0x8da9[39]](function(){_0xbfcdx1f()})[_0x8da9[36]](function(_0xbfcdx18){_0xbfcdx1f(_0xbfcdx18)})},afterUpdate:function(_0xbfcdxb,_0xbfcdx1e,_0xbfcdx1f){if(_0xbfcdxb[_0x8da9[48]](_0x8da9[51])){return _0xbfcdx15[_0x8da9[50]][_0x8da9[52]]({where:{UserId:_0xbfcdxb[_0x8da9[11]],type:_0x8da9[10]}})[_0x8da9[39]](function(){if(_0xbfcdxb[_0x8da9[51]]){return getChanSpyPromise(_0xbfcdx15,_0xbfcdxb)[_0x8da9[39]](function(_0xbfcdxf){if(_0xbfcdxf&& _0xbfcdxf[_0x8da9[8]]){return _0xbfcdx15[_0x8da9[50]][_0x8da9[49]](_0xbfcdxf)}})}else {return _0xbfcdx15[_0x8da9[50]][_0x8da9[52]]({where:{UserId:_0xbfcdxb[_0x8da9[11]],type:_0x8da9[10],ChanSpyId:{$ne:null}}})}})[_0x8da9[39]](function(){_0xbfcdx1f()})[_0x8da9[36]](function(_0xbfcdx18){_0xbfcdx1f(_0xbfcdx18)})}else {_0xbfcdx1f()}},afterDestroy:function(_0xbfcdxb,_0xbfcdx1e){return _0xbfcdx15[_0x8da9[50]][_0x8da9[52]]({where:{UserId:_0xbfcdxb[_0x8da9[11]],type:_0x8da9[10]}})}},instanceMethods:{authenticate:function(_0xbfcdx22,_0xbfcdx23){if(!_0xbfcdx23){return this[_0x8da9[23]]=== this[_0x8da9[53]](_0xbfcdx22)};var _0xbfcdx24=this;this[_0x8da9[53]](_0xbfcdx22,function(_0xbfcdx18,_0xbfcdx25){if(_0xbfcdx18){_0xbfcdx23(_0xbfcdx18)};if(_0xbfcdx24[_0x8da9[23]]=== _0xbfcdx25){_0xbfcdx23(null,true)}else {_0xbfcdx23(null,false)}})},makeSalt:function(_0xbfcdx26,_0xbfcdx23){var _0xbfcdx27=16;if( typeof arguments[0]=== _0x8da9[54]){_0xbfcdx23= arguments[0];_0xbfcdx26= _0xbfcdx27}else {if( typeof arguments[1]=== _0x8da9[54]){_0xbfcdx23= arguments[1]}else {throw  new Error(_0x8da9[55])}};if(!_0xbfcdx26){_0xbfcdx26= _0xbfcdx27};return crypto[_0x8da9[57]](_0xbfcdx26,function(_0xbfcdx18,_0xbfcdx28){if(_0xbfcdx18){_0xbfcdx23(_0xbfcdx18)};return _0xbfcdx23(null,_0xbfcdx28.toString(_0x8da9[56]))})},encryptPassword:function(_0xbfcdx22,_0xbfcdx23){if(!_0xbfcdx22||  !this[_0x8da9[58]]){return _0xbfcdx23?_0xbfcdx23(null):null};var _0xbfcdx29=10000;var _0xbfcdx2a=64;var _0xbfcdx28= new Buffer(this[_0x8da9[58]],_0x8da9[56]);if(!_0xbfcdx23){return crypto[_0x8da9[60]](_0xbfcdx22,_0xbfcdx28,_0xbfcdx29,_0xbfcdx2a,_0x8da9[59]).toString(_0x8da9[56])};return crypto[_0x8da9[61]](_0xbfcdx22,_0xbfcdx28,_0xbfcdx29,_0xbfcdx2a,_0x8da9[59],function(_0xbfcdx18,_0xbfcdx2b){if(_0xbfcdx18){_0xbfcdx23(_0xbfcdx18)};return _0xbfcdx23(null,_0xbfcdx2b.toString(_0x8da9[56]))})},updatePassword:function(_0xbfcdx1f){if(!this[_0x8da9[23]]){return _0xbfcdx1f(null)};if(!validatePresenceOf(this[_0x8da9[23]])&& authTypes[_0x8da9[63]](this[_0x8da9[62]])===  -1){_0xbfcdx1f( new Error(_0x8da9[64]))};var _0xbfcdx24=this;this[_0x8da9[65]](function(_0xbfcdx2c,_0xbfcdx28){if(_0xbfcdx2c){return _0xbfcdx1f(_0xbfcdx2c)};_0xbfcdx24[_0x8da9[58]]= _0xbfcdx28;_0xbfcdx24[_0x8da9[53]](_0xbfcdx24[_0x8da9[23]],function(_0xbfcdx2d,_0xbfcdx2e){if(_0xbfcdx2d){_0xbfcdx1f(_0xbfcdx2d)};_0xbfcdx24[_0x8da9[23]]= _0xbfcdx2e;_0xbfcdx1f(null)})})},updateMd5Password:function(){this[_0x8da9[66]]= md5(this[_0x8da9[26]]+ _0x8da9[67]+ this[_0x8da9[23]]);return this[_0x8da9[66]]}}})}
\ No newline at end of file
+var _0xb996=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x63\x72\x79\x70\x74\x6F","\x75\x74\x69\x6C","\x6D\x64\x35","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x75\x73\x65\x72\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x67\x6F\x6F\x67\x6C\x65","\x6C\x65\x6E\x67\x74\x68","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x73\x79\x73\x74\x65\x6D","\x69\x64","\x25\x73\x25\x73","\x70\x72\x65\x66\x69\x78","\x66\x6F\x72\x6D\x61\x74","\x72\x65\x63\x6F\x72\x64","\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x24\x7B\x55\x4E\x49\x51\x55\x45\x49\x44\x7D\x2E\x25\x73","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x46\x6F\x72\x6D\x61\x74","\x6D\x65\x72\x67\x65","\x70\x75\x73\x68","\x61\x75\x74\x68","\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x43\x68\x61\x6E\x53\x70\x79","\x53\x49\x50\x2F\x25\x73\x2C\x25\x73","\x6E\x61\x6D\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x53\x74\x6F\x70\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x53\x65\x74","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x44\x69\x61\x6C","\x53\x49\x50\x2F\x25\x73\x2C\x2C\x74\x54\x78\x58","\x48\x61\x6E\x67\x75\x70","\x70\x72\x69\x6F\x72\x69\x74\x79","\x64\x65\x66\x61\x75\x6C\x74\x73","\x63\x61\x74\x63\x68","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x63\x6F\x6E\x63\x61\x74","\x74\x68\x65\x6E","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x6F\x64\x65\x6C\x73","\x55\x73\x65\x72","\x75\x73\x65\x72\x73","\x75\x70\x64\x61\x74\x65\x4D\x64\x35\x50\x61\x73\x73\x77\x6F\x72\x64","\x75\x70\x64\x61\x74\x65\x50\x61\x73\x73\x77\x6F\x72\x64","\x63\x68\x61\x6E\x67\x65\x64","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x63\x68\x61\x6E\x73\x70\x79","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x63\x72\x79\x70\x74\x50\x61\x73\x73\x77\x6F\x72\x64","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x4D\x69\x73\x73\x69\x6E\x67\x20\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x62\x61\x73\x65\x36\x34","\x72\x61\x6E\x64\x6F\x6D\x42\x79\x74\x65\x73","\x73\x61\x6C\x74","\x73\x68\x61\x31","\x70\x62\x6B\x64\x66\x32\x53\x79\x6E\x63","\x70\x62\x6B\x64\x66\x32","\x70\x72\x6F\x76\x69\x64\x65\x72","\x69\x6E\x64\x65\x78\x4F\x66","\x49\x6E\x76\x61\x6C\x69\x64\x20\x70\x61\x73\x73\x77\x6F\x72\x64","\x6D\x61\x6B\x65\x53\x61\x6C\x74","\x6D\x64\x35\x73\x65\x63\x72\x65\x74","\x3A\x61\x73\x74\x65\x72\x69\x73\x6B\x3A","\x64\x65\x66\x69\x6E\x65"];_0xb996[0];var BPromise=require(_0xb996[1]);var crypto=require(_0xb996[2]);var util=require(_0xb996[3]);var md5=require(_0xb996[4]);var _=require(_0xb996[5]);var attributes=require(_0xb996[6]);var authTypes=[_0xb996[7]];var validatePresenceOf=function(_0xe5b6x9){return _0xe5b6x9&& _0xe5b6x9[_0xb996[8]]};var getChanSpyApplications=function(_0xe5b6xb,_0xe5b6xc,_0xe5b6xd){var _0xe5b6xe={context:_0xb996[9],type:_0xb996[10],isApp:false,UserId:_0xe5b6xb[_0xb996[11]]};var _0xe5b6xf=[];for(var _0xe5b6x10=0,_0xe5b6x11=1;_0xe5b6x10< _0xe5b6xd[_0xb996[8]];_0xe5b6x10++,_0xe5b6x11= 1){var _0xe5b6x12={exten:util[_0xb996[14]](_0xb996[12],_0xe5b6xd[_0xe5b6x10][_0xb996[13]],_0xe5b6xc),ChanSpyId:_0xe5b6xd[_0xe5b6x10][_0xb996[11]]};if(_0xe5b6xd[_0xe5b6x10][_0xb996[15]]){_0xe5b6xf[_0xb996[20]](_[_0xb996[19]]({app:_0xb996[16],appdata:util[_0xb996[14]](_0xb996[17],_0xe5b6xd[_0xe5b6x10][_0xb996[18]]),priority:_0xe5b6x11++},_0xe5b6xe,_0xe5b6x12))};if(_0xe5b6xd[_0xe5b6x10][_0xb996[21]]){_0xe5b6xf[_0xb996[20]](_[_0xb996[19]]({app:_0xb996[22],appdata:_0xe5b6xd[_0xe5b6x10][_0xb996[23]],priority:_0xe5b6x11++},_0xe5b6xe,_0xe5b6x12))};_0xe5b6xf[_0xb996[20]](_[_0xb996[19]]({app:_0xb996[24],appdata:util[_0xb996[14]](_0xb996[25],_0xe5b6xb[_0xb996[26]],_0xe5b6xd[_0xe5b6x10][_0xb996[27]]),priority:_0xe5b6x11++},_0xe5b6xe,_0xe5b6x12));if(_0xe5b6xd[_0xe5b6x10][_0xb996[15]]){_0xe5b6xf[_0xb996[20]](_[_0xb996[19]]({app:_0xb996[28],priority:_0xe5b6x11++},_0xe5b6xe,_0xe5b6x12))}};return _0xe5b6xf};var getUserApplications=function(_0xe5b6xb,_0xe5b6xc){var _0xe5b6xe={context:_0xb996[9],exten:_0xe5b6xc,type:_0xb996[10],isApp:false,UserId:_0xe5b6xb[_0xb996[11]]};var _0xe5b6xf=[{app:_0xb996[29],appdata:_0xb996[30]},{app:_0xb996[31],appdata:util[_0xb996[14]](_0xb996[32],_0xe5b6xb[_0xb996[26]])},{app:_0xb996[33]}];for(var _0xe5b6x10=0;_0xe5b6x10< _0xe5b6xf[_0xb996[8]];_0xe5b6x10++){_0xe5b6xf[_0xe5b6x10][_0xb996[34]]= _0xe5b6x10+ 1;_0xe5b6xf[_0xe5b6x10]= _[_0xb996[35]](_0xe5b6xf[_0xe5b6x10],_0xe5b6xe)};return _0xe5b6xf};var getChanSpyPromise=function(_0xe5b6x15,_0xe5b6xb){return  new BPromise(function(_0xe5b6x16,_0xe5b6x17){return _0xe5b6x15[_0xb996[41]][_0xb996[40]]()[_0xb996[39]](function(_0xe5b6x19){if(_0xe5b6x19){var _0xe5b6x1a=getChanSpyApplications(_0xe5b6xb,_0xe5b6xb[_0xb996[37]],_0xe5b6x19);var _0xe5b6x1b=getChanSpyApplications(_0xe5b6xb,_0xe5b6xb[_0xb996[26]],_0xe5b6x19);return _0xe5b6x16(_0xe5b6x1a[_0xb996[38]](_0xe5b6x1b))};return _0xe5b6x16([])})[_0xb996[36]](function(_0xe5b6x18){_0xe5b6x17(_0xe5b6x18)})})};module[_0xb996[42]]= function(_0xe5b6x1c,_0xe5b6x1d){var _0xe5b6x15=_0xe5b6x1c[_0xb996[43]];return _0xe5b6x1c[_0xb996[68]](_0xb996[44],attributes,{tableName:_0xb996[45],hooks:{beforeCreate:function(_0xe5b6xb,_0xe5b6x1e,_0xe5b6x1f){_0xe5b6xb[_0xb996[46]]();_0xe5b6xb[_0xb996[47]](_0xe5b6x1f)},beforeUpdate:function(_0xe5b6xb,_0xe5b6x1e,_0xe5b6x1f){if(_0xe5b6xb[_0xb996[48]](_0xb996[23])){_0xe5b6xb[_0xb996[46]]();return _0xe5b6xb[_0xb996[47]](_0xe5b6x1f)};_0xe5b6x1f()},afterCreate:function(_0xe5b6xb,_0xe5b6x1e,_0xe5b6x1f){var _0xe5b6x20=getUserApplications(_0xe5b6xb,_0xe5b6xb[_0xb996[37]]);var _0xe5b6x21=getUserApplications(_0xe5b6xb,_0xe5b6xb[_0xb996[26]]);return _0xe5b6x15[_0xb996[50]][_0xb996[49]](_0xe5b6x20[_0xb996[38]](_0xe5b6x21))[_0xb996[39]](function(){if(_0xe5b6xb[_0xb996[51]]){return getChanSpyPromise(_0xe5b6x15,_0xe5b6xb)}})[_0xb996[39]](function(_0xe5b6xf){if(_0xe5b6xf&& _0xe5b6xf[_0xb996[8]]){return _0xe5b6x15[_0xb996[50]][_0xb996[49]](_0xe5b6xf)}})[_0xb996[39]](function(){_0xe5b6x1f()})[_0xb996[36]](function(_0xe5b6x18){_0xe5b6x1f(_0xe5b6x18)})},afterUpdate:function(_0xe5b6xb,_0xe5b6x1e,_0xe5b6x1f){if(_0xe5b6xb[_0xb996[48]](_0xb996[51])){return _0xe5b6x15[_0xb996[50]][_0xb996[52]]({where:{UserId:_0xe5b6xb[_0xb996[11]],type:_0xb996[10]}})[_0xb996[39]](function(){if(_0xe5b6xb[_0xb996[51]]){return getChanSpyPromise(_0xe5b6x15,_0xe5b6xb)[_0xb996[39]](function(_0xe5b6xf){if(_0xe5b6xf&& _0xe5b6xf[_0xb996[8]]){return _0xe5b6x15[_0xb996[50]][_0xb996[49]](_0xe5b6xf)}})}else {return _0xe5b6x15[_0xb996[50]][_0xb996[52]]({where:{UserId:_0xe5b6xb[_0xb996[11]],type:_0xb996[10],ChanSpyId:{$ne:null}}})}})[_0xb996[39]](function(){_0xe5b6x1f()})[_0xb996[36]](function(_0xe5b6x18){_0xe5b6x1f(_0xe5b6x18)})}else {_0xe5b6x1f()}},afterDestroy:function(_0xe5b6xb,_0xe5b6x1e){return _0xe5b6x15[_0xb996[50]][_0xb996[52]]({where:{UserId:_0xe5b6xb[_0xb996[11]],type:_0xb996[10]}})}},instanceMethods:{authenticate:function(_0xe5b6x22,_0xe5b6x23){if(!_0xe5b6x23){return this[_0xb996[23]]=== this[_0xb996[53]](_0xe5b6x22)};var _0xe5b6x24=this;this[_0xb996[53]](_0xe5b6x22,function(_0xe5b6x18,_0xe5b6x25){if(_0xe5b6x18){_0xe5b6x23(_0xe5b6x18)};if(_0xe5b6x24[_0xb996[23]]=== _0xe5b6x25){_0xe5b6x23(null,true)}else {_0xe5b6x23(null,false)}})},makeSalt:function(_0xe5b6x26,_0xe5b6x23){var _0xe5b6x27=16;if( typeof arguments[0]=== _0xb996[54]){_0xe5b6x23= arguments[0];_0xe5b6x26= _0xe5b6x27}else {if( typeof arguments[1]=== _0xb996[54]){_0xe5b6x23= arguments[1]}else {throw  new Error(_0xb996[55])}};if(!_0xe5b6x26){_0xe5b6x26= _0xe5b6x27};return crypto[_0xb996[57]](_0xe5b6x26,function(_0xe5b6x18,_0xe5b6x28){if(_0xe5b6x18){_0xe5b6x23(_0xe5b6x18)};return _0xe5b6x23(null,_0xe5b6x28.toString(_0xb996[56]))})},encryptPassword:function(_0xe5b6x22,_0xe5b6x23){if(!_0xe5b6x22||  !this[_0xb996[58]]){return _0xe5b6x23?_0xe5b6x23(null):null};var _0xe5b6x29=10000;var _0xe5b6x2a=64;var _0xe5b6x28= new Buffer(this[_0xb996[58]],_0xb996[56]);if(!_0xe5b6x23){return crypto[_0xb996[60]](_0xe5b6x22,_0xe5b6x28,_0xe5b6x29,_0xe5b6x2a,_0xb996[59]).toString(_0xb996[56])};return crypto[_0xb996[61]](_0xe5b6x22,_0xe5b6x28,_0xe5b6x29,_0xe5b6x2a,_0xb996[59],function(_0xe5b6x18,_0xe5b6x2b){if(_0xe5b6x18){_0xe5b6x23(_0xe5b6x18)};return _0xe5b6x23(null,_0xe5b6x2b.toString(_0xb996[56]))})},updatePassword:function(_0xe5b6x1f){if(!this[_0xb996[23]]){return _0xe5b6x1f(null)};if(!validatePresenceOf(this[_0xb996[23]])&& authTypes[_0xb996[63]](this[_0xb996[62]])===  -1){_0xe5b6x1f( new Error(_0xb996[64]))};var _0xe5b6x24=this;this[_0xb996[65]](function(_0xe5b6x2c,_0xe5b6x28){if(_0xe5b6x2c){return _0xe5b6x1f(_0xe5b6x2c)};_0xe5b6x24[_0xb996[58]]= _0xe5b6x28;_0xe5b6x24[_0xb996[53]](_0xe5b6x24[_0xb996[23]],function(_0xe5b6x2d,_0xe5b6x2e){if(_0xe5b6x2d){_0xe5b6x1f(_0xe5b6x2d)};_0xe5b6x24[_0xb996[23]]= _0xe5b6x2e;_0xe5b6x1f(null)})})},updateMd5Password:function(){this[_0xb996[66]]= md5(this[_0xb996[26]]+ _0xb996[67]+ this[_0xb996[23]]);return this[_0xb996[66]]}}})}
\ No newline at end of file
index 2d976a9..df26bc3 100644 (file)
@@ -1 +1 @@
-var _0xdb2f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x2E\x2F\x75\x73\x65\x72\x2E\x73\x6F\x63\x6B\x65\x74","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x55\x73\x65\x72","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x55\x73\x65\x72","\x53\x68\x6F\x77\x55\x73\x65\x72","\x66\x69\x6E\x64","\x50\x61\x75\x73\x65\x55\x73\x65\x72","\x74\x79\x70\x65","\x62\x6F\x64\x79","\x44\x45\x46\x41\x55\x4C\x54\x20\x50\x41\x55\x53\x45","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x75\x70\x64\x61\x74\x65","\x67\x65\x74\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x6E\x61\x6D\x65","\x25\x73\x2F\x25\x73","\x53\x49\x50","\x50\x41\x55\x53\x45","\x72\x6F\x6C\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x70\x75\x73\x68","\x66\x6F\x72\x45\x61\x63\x68","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x6C\x65\x6E\x67\x74\x68","\x69\x64","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x55\x6E\x70\x61\x75\x73\x65\x55\x73\x65\x72","\x63\x68\x61\x6E\x6E\x65\x6C","\x69\x73\x56\x61\x6C\x69\x64\x43\x68\x61\x6E\x6E\x65\x6C","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x73\x79\x73\x74\x65\x6D","\x76\x6F\x69\x63\x65","\x6D\x61\x69\x6C","\x63\x68\x61\x74","\x66\x61\x78","\x73\x6D\x73","\x25\x73\x25\x73","\x50\x61\x75\x73\x65","\x73\x65\x74","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x61\x6C\x6C","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xdb2f[0];var _=require(_0xdb2f[1]);var util=require(_0xdb2f[2]);var moment=require(_0xdb2f[3]);var BPromise=require(_0xdb2f[4]);var db=require(_0xdb2f[6])[_0xdb2f[5]];var utils=require(_0xdb2f[7]);var logger=require(_0xdb2f[9])(_0xdb2f[8]);var jayson=require(_0xdb2f[10]);var client=jayson[_0xdb2f[12]][_0xdb2f[11]]({port:9002});var socket=require(_0xdb2f[14])({host:_0xdb2f[13],port:6379});require(_0xdb2f[16])[_0xdb2f[15]](socket);function respondWithRpcPromise(_0xa4bexc,_0xa4bexd,_0xa4bexe){return  new BPromise(function(_0xa4bexf,_0xa4bex10){return client[_0xdb2f[29]](_0xa4bexc,_0xa4bexe)[_0xdb2f[28]](function(_0xa4bex12){logger[_0xdb2f[21]](_0xdb2f[17],_0xa4bexd,_0xdb2f[20]);logger[_0xdb2f[24]](_0xdb2f[22],_0xa4bexd,_0xdb2f[20],JSON[_0xdb2f[23]](_0xa4bex12));if(_0xa4bex12[_0xdb2f[18]]){if(_0xa4bex12[_0xdb2f[18]][_0xdb2f[25]]=== 500){logger[_0xdb2f[18]](_0xdb2f[17],_0xa4bexd,_0xa4bex12[_0xdb2f[18]][_0xdb2f[26]]);return _0xa4bex10(_0xa4bex12[_0xdb2f[18]][_0xdb2f[26]])};logger[_0xdb2f[18]](_0xdb2f[17],_0xa4bexd,_0xa4bex12[_0xdb2f[18]][_0xdb2f[26]]);return _0xa4bexf(_0xa4bex12[_0xdb2f[18]][_0xdb2f[26]])}else {logger[_0xdb2f[21]](_0xdb2f[17],_0xa4bexd,_0xdb2f[20]);_0xa4bexf(_0xa4bex12[_0xdb2f[27]][_0xdb2f[26]])}})[_0xdb2f[19]](function(_0xa4bex11){logger[_0xdb2f[18]](_0xdb2f[17],_0xa4bexd,_0xa4bex11);_0xa4bex10(_0xa4bex11)})})}exports[_0xdb2f[30]]= function(_0xa4bexe){var _0xa4bex13=this;return  new Promise(function(_0xa4bexf,_0xa4bex10){return db[_0xdb2f[41]][_0xdb2f[40]]({raw:_0xa4bexe[_0xdb2f[31]]?(_0xa4bexe[_0xdb2f[31]][_0xdb2f[32]]=== undefined)?true:false:true,where:_0xa4bexe[_0xdb2f[31]]?_0xa4bexe[_0xdb2f[31]][_0xdb2f[33]]|| null:null,attributes:_0xa4bexe[_0xdb2f[31]]?_0xa4bexe[_0xdb2f[31]][_0xdb2f[34]]|| null:null,limit:_0xa4bexe[_0xdb2f[31]]?_0xa4bexe[_0xdb2f[31]][_0xdb2f[35]]|| null:null,include:_0xa4bexe[_0xdb2f[31]]?(_0xa4bexe[_0xdb2f[31]][_0xdb2f[36]]?_[_0xdb2f[39]](_0xa4bexe[_0xdb2f[31]][_0xdb2f[36]],function(_0xa4bex14){return {model:db[_0xa4bex14[_0xdb2f[37]]],as:_0xa4bex14[_0xdb2f[38]],attributes:_0xa4bex14[_0xdb2f[34]],include:_0xa4bex14[_0xdb2f[36]]?_[_0xdb2f[39]](_0xa4bex14[_0xdb2f[36]],function(_0xa4bex15){return {model:db[_0xa4bex15[_0xdb2f[37]]],as:_0xa4bex15[_0xdb2f[38]],attributes:_0xa4bex15[_0xdb2f[34]],include:_0xa4bex15[_0xdb2f[36]]?_[_0xdb2f[39]](_0xa4bex15[_0xdb2f[36]],function(_0xa4bex16){return {model:db[_0xa4bex16[_0xdb2f[37]]],as:_0xa4bex16[_0xdb2f[38]],attributes:_0xa4bex16[_0xdb2f[34]]}}):[]}}):[]}}):[]):[]})[_0xdb2f[28]](function(_0xa4bex12){logger[_0xdb2f[21]](_0xdb2f[30],_0xa4bexe);logger[_0xdb2f[24]](_0xdb2f[30],_0xa4bexe,JSON[_0xdb2f[23]](_0xa4bex12));_0xa4bexf(_0xa4bex12)})[_0xdb2f[19]](function(_0xa4bex11){logger[_0xdb2f[18]](_0xdb2f[30],_0xa4bex11[_0xdb2f[26]],_0xa4bexe);_0xa4bex10(_0xa4bex13[_0xdb2f[18]](500,_0xa4bex11[_0xdb2f[26]]))})})};exports[_0xdb2f[42]]= function(_0xa4bexe){var _0xa4bex13=this;return  new Promise(function(_0xa4bexf,_0xa4bex10){return db[_0xdb2f[41]][_0xdb2f[43]]({raw:_0xa4bexe[_0xdb2f[31]]?(_0xa4bexe[_0xdb2f[31]][_0xdb2f[32]]=== undefined)?true:false:true,where:_0xa4bexe[_0xdb2f[31]]?_0xa4bexe[_0xdb2f[31]][_0xdb2f[33]]|| null:null,attributes:_0xa4bexe[_0xdb2f[31]]?_0xa4bexe[_0xdb2f[31]][_0xdb2f[34]]|| null:null,include:_0xa4bexe[_0xdb2f[31]]?(_0xa4bexe[_0xdb2f[31]][_0xdb2f[36]]?_[_0xdb2f[39]](_0xa4bexe[_0xdb2f[31]][_0xdb2f[36]],function(_0xa4bex14){return {model:db[_0xa4bex14[_0xdb2f[37]]],as:_0xa4bex14[_0xdb2f[38]],attributes:_0xa4bex14[_0xdb2f[34]],include:_0xa4bex14[_0xdb2f[36]]?_[_0xdb2f[39]](_0xa4bex14[_0xdb2f[36]],function(_0xa4bex15){return {model:db[_0xa4bex15[_0xdb2f[37]]],as:_0xa4bex15[_0xdb2f[38]],attributes:_0xa4bex15[_0xdb2f[34]],include:_0xa4bex15[_0xdb2f[36]]?_[_0xdb2f[39]](_0xa4bex15[_0xdb2f[36]],function(_0xa4bex16){return {model:db[_0xa4bex16[_0xdb2f[37]]],as:_0xa4bex16[_0xdb2f[38]],attributes:_0xa4bex16[_0xdb2f[34]]}}):[]}}):[]}}):[]):[]})[_0xdb2f[28]](function(_0xa4bex12){logger[_0xdb2f[21]](_0xdb2f[42],_0xa4bexe);logger[_0xdb2f[24]](_0xdb2f[42],_0xa4bexe,JSON[_0xdb2f[23]](_0xa4bex12));_0xa4bexf(_0xa4bex12)})[_0xdb2f[19]](function(_0xa4bex11){logger[_0xdb2f[18]](_0xdb2f[42],_0xa4bex11[_0xdb2f[26]],_0xa4bexe);_0xa4bex10(_0xa4bex13[_0xdb2f[18]](500,_0xa4bex11[_0xdb2f[26]]))})})};exports[_0xdb2f[44]]= function(_0xa4bexe){var _0xa4bex13=this;return  new Promise(function(_0xa4bexf,_0xa4bex10){var _0xa4bex17;return db[_0xdb2f[41]][_0xdb2f[43]]({where:_0xa4bexe[_0xdb2f[31]][_0xdb2f[33]]|| {},attributes:[_0xdb2f[63],_0xdb2f[52],_0xdb2f[56],_0xdb2f[57]]})[_0xdb2f[28]](function(_0xa4bex18){if(_0xa4bex18){_0xa4bex17= _0xa4bex18;return db[_0xdb2f[64]][_0xdb2f[50]]({paused:1},{where:{UserId:_0xa4bex17[_0xdb2f[63]]},individualHooks:true})}})[_0xdb2f[28]](function(){if(_0xa4bex17){return db[_0xdb2f[61]][_0xdb2f[40]]({where:{membername:_0xa4bex17[_0xdb2f[52]],interface:util[_0xdb2f[49]](_0xdb2f[53],_0xdb2f[54],_0xa4bex17[_0xdb2f[52]]),type:_0xdb2f[55],exitAt:null},attributes:[_0xdb2f[63]]})}})[_0xdb2f[28]](function(_0xa4bex19){if(_0xa4bex19[_0xdb2f[62]]){return db[_0xdb2f[61]][_0xdb2f[50]]({exitAt:moment()[_0xdb2f[49]](_0xdb2f[48])},{where:{id:{$in:_[_0xdb2f[39]](_0xa4bex19,_0xdb2f[63])}},individualHooks:true})}})[_0xdb2f[28]](function(){var _0xa4bex19=[];var _0xa4bex1a=utils[_0xdb2f[51]]();_0xa4bex1a[_0xdb2f[59]](function(_0xa4bex1b){_0xa4bex19[_0xdb2f[58]]({channel:_0xa4bex1b,membername:_0xa4bex17[_0xdb2f[52]],interface:util[_0xdb2f[49]](_0xdb2f[53],_0xdb2f[54],_0xa4bex17[_0xdb2f[52]]),type:_0xdb2f[55],enterAt:moment()[_0xdb2f[49]](_0xdb2f[48]),data1:_0xa4bexe[_0xdb2f[46]][_0xdb2f[45]]|| _0xdb2f[47],role:_0xa4bex17[_0xdb2f[56]],internal:_0xa4bex17[_0xdb2f[57]]})});return db[_0xdb2f[61]][_0xdb2f[60]](_0xa4bex19,{individualHooks:true})})[_0xdb2f[28]](function(){return _0xa4bex17[_0xdb2f[50]]({voicePause:true,mailPause:true,chatPause:true,faxPause:true,smsPause:true,openchannelPause:true,pauseType:_0xa4bexe[_0xdb2f[46]][_0xdb2f[45]]|| _0xdb2f[47],lastPauseAt:moment()[_0xdb2f[49]](_0xdb2f[48])})})[_0xdb2f[28]](function(_0xa4bex18){_0xa4bexf(_0xa4bex18)})[_0xdb2f[19]](function(_0xa4bex11){_0xa4bex10(_0xa4bex13[_0xdb2f[18]](500,_0xa4bex11[_0xdb2f[26]]))})})};exports[_0xdb2f[65]]= function(_0xa4bexe){var _0xa4bex13=this;return  new Promise(function(_0xa4bexf,_0xa4bex10){var _0xa4bex17;return db[_0xdb2f[41]][_0xdb2f[80]]({where:_0xa4bexe[_0xdb2f[31]][_0xdb2f[33]]|| {},attributes:[_0xdb2f[63],_0xdb2f[52]]})[_0xdb2f[28]](function(_0xa4bex18){if(_0xa4bex18){_0xa4bex17= _0xa4bex18;if(_0xa4bexe[_0xdb2f[46]][_0xdb2f[66]]&&  !utils[_0xdb2f[67]](_0xa4bexe[_0xdb2f[46]][_0xdb2f[66]])){throw  new Error(_0xdb2f[68])};switch(_0xa4bexe[_0xdb2f[46]][_0xdb2f[66]]){case _0xdb2f[70]:return db[_0xdb2f[64]][_0xdb2f[50]]({paused:0},{where:{UserId:_0xa4bex17[_0xdb2f[63]]}})[_0xdb2f[28]](function(){return db[_0xdb2f[61]][_0xdb2f[43]]({where:{channel:_0xa4bexe[_0xdb2f[46]][_0xdb2f[66]],membername:_0xa4bex17[_0xdb2f[52]],interface:util[_0xdb2f[49]](_0xdb2f[53],_0xdb2f[54],_0xa4bex17[_0xdb2f[52]]),type:_0xdb2f[55],exitAt:null}})})[_0xdb2f[28]](function(_0xa4bex1c){if(_0xa4bex1c){return _0xa4bex1c[_0xdb2f[50]]({exitAt:moment()[_0xdb2f[49]](_0xdb2f[48]),data2:_0xdb2f[69]},{individualHooks:true})};return null})[_0xdb2f[28]](function(){return _0xa4bex17[_0xdb2f[50]]({voicePause:false})});case _0xdb2f[71]:;case _0xdb2f[72]:;case _0xdb2f[73]:;case _0xdb2f[74]:;case _0xdb2f[78]:return db[_0xdb2f[61]][_0xdb2f[43]]({where:{channel:_0xa4bexe[_0xdb2f[46]][_0xdb2f[66]],membername:_0xa4bex17[_0xdb2f[52]],interface:util[_0xdb2f[49]](_0xdb2f[53],_0xdb2f[54],_0xa4bex17[_0xdb2f[52]]),type:_0xdb2f[55],exitAt:null}})[_0xdb2f[28]](function(_0xa4bex1c){return _0xa4bex1c[_0xdb2f[50]]({exitAt:moment()[_0xdb2f[49]](_0xdb2f[48]),data2:_0xdb2f[69]},{individualHooks:true})})[_0xdb2f[28]](function(){var _0xa4bex1d={};_[_0xdb2f[77]](_0xa4bex1d,util[_0xdb2f[49]](_0xdb2f[75],_0xa4bexe[_0xdb2f[46]][_0xdb2f[66]],_0xdb2f[76]),false);return _0xa4bex17[_0xdb2f[50]](_0xa4bex1d)});default:return db[_0xdb2f[64]][_0xdb2f[50]]({paused:0},{where:{UserId:_0xa4bex17[_0xdb2f[63]]}})[_0xdb2f[28]](function(){return db[_0xdb2f[61]][_0xdb2f[40]]({where:{membername:_0xa4bex17[_0xdb2f[52]],interface:util[_0xdb2f[49]](_0xdb2f[53],_0xdb2f[54],_0xa4bex17[_0xdb2f[52]]),type:_0xdb2f[55],exitAt:null}})})[_0xdb2f[28]](function(_0xa4bex19){var _0xa4bex1e=[];_0xa4bex19[_0xdb2f[59]](function(_0xa4bex1c){_0xa4bex1e[_0xdb2f[58]](_0xa4bex1c[_0xdb2f[50]]({exitAt:moment()[_0xdb2f[49]](_0xdb2f[48]),data2:_0xdb2f[69]}))});return BPromise[_0xdb2f[79]](_0xa4bex1e)})[_0xdb2f[28]](function(){return _0xa4bex17[_0xdb2f[50]]({voicePause:false,mailPause:false,chatPause:false,faxPause:false,smsPause:false,openchannelPause:false})})}}})[_0xdb2f[28]](function(_0xa4bex18){_0xa4bexf(_0xa4bex18)})[_0xdb2f[19]](function(_0xa4bex11){_0xa4bex10(_0xa4bex13[_0xdb2f[18]](500,_0xa4bex11[_0xdb2f[26]]))})})}
\ No newline at end of file
+var _0xaa6f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x2E\x2F\x75\x73\x65\x72\x2E\x73\x6F\x63\x6B\x65\x74","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x55\x73\x65\x72","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x55\x73\x65\x72","\x53\x68\x6F\x77\x55\x73\x65\x72","\x66\x69\x6E\x64","\x50\x61\x75\x73\x65\x55\x73\x65\x72","\x74\x79\x70\x65","\x62\x6F\x64\x79","\x44\x45\x46\x41\x55\x4C\x54\x20\x50\x41\x55\x53\x45","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x75\x70\x64\x61\x74\x65","\x67\x65\x74\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x6E\x61\x6D\x65","\x25\x73\x2F\x25\x73","\x53\x49\x50","\x50\x41\x55\x53\x45","\x72\x6F\x6C\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x70\x75\x73\x68","\x66\x6F\x72\x45\x61\x63\x68","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x6C\x65\x6E\x67\x74\x68","\x69\x64","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x55\x6E\x70\x61\x75\x73\x65\x55\x73\x65\x72","\x63\x68\x61\x6E\x6E\x65\x6C","\x69\x73\x56\x61\x6C\x69\x64\x43\x68\x61\x6E\x6E\x65\x6C","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x73\x79\x73\x74\x65\x6D","\x76\x6F\x69\x63\x65","\x6D\x61\x69\x6C","\x63\x68\x61\x74","\x66\x61\x78","\x73\x6D\x73","\x25\x73\x25\x73","\x50\x61\x75\x73\x65","\x73\x65\x74","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x61\x6C\x6C","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xaa6f[0];var _=require(_0xaa6f[1]);var util=require(_0xaa6f[2]);var moment=require(_0xaa6f[3]);var BPromise=require(_0xaa6f[4]);var db=require(_0xaa6f[6])[_0xaa6f[5]];var utils=require(_0xaa6f[7]);var logger=require(_0xaa6f[9])(_0xaa6f[8]);var jayson=require(_0xaa6f[10]);var client=jayson[_0xaa6f[12]][_0xaa6f[11]]({port:9002});var socket=require(_0xaa6f[14])({host:_0xaa6f[13],port:6379});require(_0xaa6f[16])[_0xaa6f[15]](socket);function respondWithRpcPromise(_0x8817xc,_0x8817xd,_0x8817xe){return  new BPromise(function(_0x8817xf,_0x8817x10){return client[_0xaa6f[29]](_0x8817xc,_0x8817xe)[_0xaa6f[28]](function(_0x8817x12){logger[_0xaa6f[21]](_0xaa6f[17],_0x8817xd,_0xaa6f[20]);logger[_0xaa6f[24]](_0xaa6f[22],_0x8817xd,_0xaa6f[20],JSON[_0xaa6f[23]](_0x8817x12));if(_0x8817x12[_0xaa6f[18]]){if(_0x8817x12[_0xaa6f[18]][_0xaa6f[25]]=== 500){logger[_0xaa6f[18]](_0xaa6f[17],_0x8817xd,_0x8817x12[_0xaa6f[18]][_0xaa6f[26]]);return _0x8817x10(_0x8817x12[_0xaa6f[18]][_0xaa6f[26]])};logger[_0xaa6f[18]](_0xaa6f[17],_0x8817xd,_0x8817x12[_0xaa6f[18]][_0xaa6f[26]]);return _0x8817xf(_0x8817x12[_0xaa6f[18]][_0xaa6f[26]])}else {logger[_0xaa6f[21]](_0xaa6f[17],_0x8817xd,_0xaa6f[20]);_0x8817xf(_0x8817x12[_0xaa6f[27]][_0xaa6f[26]])}})[_0xaa6f[19]](function(_0x8817x11){logger[_0xaa6f[18]](_0xaa6f[17],_0x8817xd,_0x8817x11);_0x8817x10(_0x8817x11)})})}exports[_0xaa6f[30]]= function(_0x8817xe){var _0x8817x13=this;return  new Promise(function(_0x8817xf,_0x8817x10){return db[_0xaa6f[41]][_0xaa6f[40]]({raw:_0x8817xe[_0xaa6f[31]]?(_0x8817xe[_0xaa6f[31]][_0xaa6f[32]]=== undefined)?true:false:true,where:_0x8817xe[_0xaa6f[31]]?_0x8817xe[_0xaa6f[31]][_0xaa6f[33]]|| null:null,attributes:_0x8817xe[_0xaa6f[31]]?_0x8817xe[_0xaa6f[31]][_0xaa6f[34]]|| null:null,limit:_0x8817xe[_0xaa6f[31]]?_0x8817xe[_0xaa6f[31]][_0xaa6f[35]]|| null:null,include:_0x8817xe[_0xaa6f[31]]?(_0x8817xe[_0xaa6f[31]][_0xaa6f[36]]?_[_0xaa6f[39]](_0x8817xe[_0xaa6f[31]][_0xaa6f[36]],function(_0x8817x14){return {model:db[_0x8817x14[_0xaa6f[37]]],as:_0x8817x14[_0xaa6f[38]],attributes:_0x8817x14[_0xaa6f[34]],include:_0x8817x14[_0xaa6f[36]]?_[_0xaa6f[39]](_0x8817x14[_0xaa6f[36]],function(_0x8817x15){return {model:db[_0x8817x15[_0xaa6f[37]]],as:_0x8817x15[_0xaa6f[38]],attributes:_0x8817x15[_0xaa6f[34]],include:_0x8817x15[_0xaa6f[36]]?_[_0xaa6f[39]](_0x8817x15[_0xaa6f[36]],function(_0x8817x16){return {model:db[_0x8817x16[_0xaa6f[37]]],as:_0x8817x16[_0xaa6f[38]],attributes:_0x8817x16[_0xaa6f[34]]}}):[]}}):[]}}):[]):[]})[_0xaa6f[28]](function(_0x8817x12){logger[_0xaa6f[21]](_0xaa6f[30],_0x8817xe);logger[_0xaa6f[24]](_0xaa6f[30],_0x8817xe,JSON[_0xaa6f[23]](_0x8817x12));_0x8817xf(_0x8817x12)})[_0xaa6f[19]](function(_0x8817x11){logger[_0xaa6f[18]](_0xaa6f[30],_0x8817x11[_0xaa6f[26]],_0x8817xe);_0x8817x10(_0x8817x13[_0xaa6f[18]](500,_0x8817x11[_0xaa6f[26]]))})})};exports[_0xaa6f[42]]= function(_0x8817xe){var _0x8817x13=this;return  new Promise(function(_0x8817xf,_0x8817x10){return db[_0xaa6f[41]][_0xaa6f[43]]({raw:_0x8817xe[_0xaa6f[31]]?(_0x8817xe[_0xaa6f[31]][_0xaa6f[32]]=== undefined)?true:false:true,where:_0x8817xe[_0xaa6f[31]]?_0x8817xe[_0xaa6f[31]][_0xaa6f[33]]|| null:null,attributes:_0x8817xe[_0xaa6f[31]]?_0x8817xe[_0xaa6f[31]][_0xaa6f[34]]|| null:null,include:_0x8817xe[_0xaa6f[31]]?(_0x8817xe[_0xaa6f[31]][_0xaa6f[36]]?_[_0xaa6f[39]](_0x8817xe[_0xaa6f[31]][_0xaa6f[36]],function(_0x8817x14){return {model:db[_0x8817x14[_0xaa6f[37]]],as:_0x8817x14[_0xaa6f[38]],attributes:_0x8817x14[_0xaa6f[34]],include:_0x8817x14[_0xaa6f[36]]?_[_0xaa6f[39]](_0x8817x14[_0xaa6f[36]],function(_0x8817x15){return {model:db[_0x8817x15[_0xaa6f[37]]],as:_0x8817x15[_0xaa6f[38]],attributes:_0x8817x15[_0xaa6f[34]],include:_0x8817x15[_0xaa6f[36]]?_[_0xaa6f[39]](_0x8817x15[_0xaa6f[36]],function(_0x8817x16){return {model:db[_0x8817x16[_0xaa6f[37]]],as:_0x8817x16[_0xaa6f[38]],attributes:_0x8817x16[_0xaa6f[34]]}}):[]}}):[]}}):[]):[]})[_0xaa6f[28]](function(_0x8817x12){logger[_0xaa6f[21]](_0xaa6f[42],_0x8817xe);logger[_0xaa6f[24]](_0xaa6f[42],_0x8817xe,JSON[_0xaa6f[23]](_0x8817x12));_0x8817xf(_0x8817x12)})[_0xaa6f[19]](function(_0x8817x11){logger[_0xaa6f[18]](_0xaa6f[42],_0x8817x11[_0xaa6f[26]],_0x8817xe);_0x8817x10(_0x8817x13[_0xaa6f[18]](500,_0x8817x11[_0xaa6f[26]]))})})};exports[_0xaa6f[44]]= function(_0x8817xe){var _0x8817x13=this;return  new Promise(function(_0x8817xf,_0x8817x10){var _0x8817x17;return db[_0xaa6f[41]][_0xaa6f[43]]({where:_0x8817xe[_0xaa6f[31]][_0xaa6f[33]]|| {},attributes:[_0xaa6f[63],_0xaa6f[52],_0xaa6f[56],_0xaa6f[57]]})[_0xaa6f[28]](function(_0x8817x18){if(_0x8817x18){_0x8817x17= _0x8817x18;return db[_0xaa6f[64]][_0xaa6f[50]]({paused:1},{where:{UserId:_0x8817x17[_0xaa6f[63]]},individualHooks:true})}})[_0xaa6f[28]](function(){if(_0x8817x17){return db[_0xaa6f[61]][_0xaa6f[40]]({where:{membername:_0x8817x17[_0xaa6f[52]],interface:util[_0xaa6f[49]](_0xaa6f[53],_0xaa6f[54],_0x8817x17[_0xaa6f[52]]),type:_0xaa6f[55],exitAt:null},attributes:[_0xaa6f[63]]})}})[_0xaa6f[28]](function(_0x8817x19){if(_0x8817x19[_0xaa6f[62]]){return db[_0xaa6f[61]][_0xaa6f[50]]({exitAt:moment()[_0xaa6f[49]](_0xaa6f[48])},{where:{id:{$in:_[_0xaa6f[39]](_0x8817x19,_0xaa6f[63])}},individualHooks:true})}})[_0xaa6f[28]](function(){var _0x8817x19=[];var _0x8817x1a=utils[_0xaa6f[51]]();_0x8817x1a[_0xaa6f[59]](function(_0x8817x1b){_0x8817x19[_0xaa6f[58]]({channel:_0x8817x1b,membername:_0x8817x17[_0xaa6f[52]],interface:util[_0xaa6f[49]](_0xaa6f[53],_0xaa6f[54],_0x8817x17[_0xaa6f[52]]),type:_0xaa6f[55],enterAt:moment()[_0xaa6f[49]](_0xaa6f[48]),data1:_0x8817xe[_0xaa6f[46]][_0xaa6f[45]]|| _0xaa6f[47],role:_0x8817x17[_0xaa6f[56]],internal:_0x8817x17[_0xaa6f[57]]})});return db[_0xaa6f[61]][_0xaa6f[60]](_0x8817x19,{individualHooks:true})})[_0xaa6f[28]](function(){return _0x8817x17[_0xaa6f[50]]({voicePause:true,mailPause:true,chatPause:true,faxPause:true,smsPause:true,openchannelPause:true,pauseType:_0x8817xe[_0xaa6f[46]][_0xaa6f[45]]|| _0xaa6f[47],lastPauseAt:moment()[_0xaa6f[49]](_0xaa6f[48])})})[_0xaa6f[28]](function(_0x8817x18){_0x8817xf(_0x8817x18)})[_0xaa6f[19]](function(_0x8817x11){_0x8817x10(_0x8817x13[_0xaa6f[18]](500,_0x8817x11[_0xaa6f[26]]))})})};exports[_0xaa6f[65]]= function(_0x8817xe){var _0x8817x13=this;return  new Promise(function(_0x8817xf,_0x8817x10){var _0x8817x17;return db[_0xaa6f[41]][_0xaa6f[80]]({where:_0x8817xe[_0xaa6f[31]][_0xaa6f[33]]|| {},attributes:[_0xaa6f[63],_0xaa6f[52]]})[_0xaa6f[28]](function(_0x8817x18){if(_0x8817x18){_0x8817x17= _0x8817x18;if(_0x8817xe[_0xaa6f[46]][_0xaa6f[66]]&&  !utils[_0xaa6f[67]](_0x8817xe[_0xaa6f[46]][_0xaa6f[66]])){throw  new Error(_0xaa6f[68])};switch(_0x8817xe[_0xaa6f[46]][_0xaa6f[66]]){case _0xaa6f[70]:return db[_0xaa6f[64]][_0xaa6f[50]]({paused:0},{where:{UserId:_0x8817x17[_0xaa6f[63]]}})[_0xaa6f[28]](function(){return db[_0xaa6f[61]][_0xaa6f[43]]({where:{channel:_0x8817xe[_0xaa6f[46]][_0xaa6f[66]],membername:_0x8817x17[_0xaa6f[52]],interface:util[_0xaa6f[49]](_0xaa6f[53],_0xaa6f[54],_0x8817x17[_0xaa6f[52]]),type:_0xaa6f[55],exitAt:null}})})[_0xaa6f[28]](function(_0x8817x1c){if(_0x8817x1c){return _0x8817x1c[_0xaa6f[50]]({exitAt:moment()[_0xaa6f[49]](_0xaa6f[48]),data2:_0xaa6f[69]},{individualHooks:true})};return null})[_0xaa6f[28]](function(){return _0x8817x17[_0xaa6f[50]]({voicePause:false})});case _0xaa6f[71]:;case _0xaa6f[72]:;case _0xaa6f[73]:;case _0xaa6f[74]:;case _0xaa6f[78]:return db[_0xaa6f[61]][_0xaa6f[43]]({where:{channel:_0x8817xe[_0xaa6f[46]][_0xaa6f[66]],membername:_0x8817x17[_0xaa6f[52]],interface:util[_0xaa6f[49]](_0xaa6f[53],_0xaa6f[54],_0x8817x17[_0xaa6f[52]]),type:_0xaa6f[55],exitAt:null}})[_0xaa6f[28]](function(_0x8817x1c){return _0x8817x1c[_0xaa6f[50]]({exitAt:moment()[_0xaa6f[49]](_0xaa6f[48]),data2:_0xaa6f[69]},{individualHooks:true})})[_0xaa6f[28]](function(){var _0x8817x1d={};_[_0xaa6f[77]](_0x8817x1d,util[_0xaa6f[49]](_0xaa6f[75],_0x8817xe[_0xaa6f[46]][_0xaa6f[66]],_0xaa6f[76]),false);return _0x8817x17[_0xaa6f[50]](_0x8817x1d)});default:return db[_0xaa6f[64]][_0xaa6f[50]]({paused:0},{where:{UserId:_0x8817x17[_0xaa6f[63]]}})[_0xaa6f[28]](function(){return db[_0xaa6f[61]][_0xaa6f[40]]({where:{membername:_0x8817x17[_0xaa6f[52]],interface:util[_0xaa6f[49]](_0xaa6f[53],_0xaa6f[54],_0x8817x17[_0xaa6f[52]]),type:_0xaa6f[55],exitAt:null}})})[_0xaa6f[28]](function(_0x8817x19){var _0x8817x1e=[];_0x8817x19[_0xaa6f[59]](function(_0x8817x1c){_0x8817x1e[_0xaa6f[58]](_0x8817x1c[_0xaa6f[50]]({exitAt:moment()[_0xaa6f[49]](_0xaa6f[48]),data2:_0xaa6f[69]}))});return BPromise[_0xaa6f[79]](_0x8817x1e)})[_0xaa6f[28]](function(){return _0x8817x17[_0xaa6f[50]]({voicePause:false,mailPause:false,chatPause:false,faxPause:false,smsPause:false,openchannelPause:false})})}}})[_0xaa6f[28]](function(_0x8817x18){_0x8817xf(_0x8817x18)})[_0xaa6f[19]](function(_0x8817x11){_0x8817x10(_0x8817x13[_0xaa6f[18]](500,_0x8817x11[_0xaa6f[26]]))})})}
\ No newline at end of file
index d767507..3e621a5 100644 (file)
@@ -1 +1 @@
-var _0xc2bd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2F\x75\x73\x65\x72\x2E\x65\x76\x65\x6E\x74\x73","\x73\x61\x76\x65","\x72\x65\x6D\x6F\x76\x65","\x75\x70\x64\x61\x74\x65","\x65\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x6C\x65\x6E\x67\x74\x68","\x75\x73\x65\x72\x3A","\x6F\x6E"];_0xc2bd[0];var UserEvents=require(_0xc2bd[1]);var events=[_0xc2bd[2],_0xc2bd[3],_0xc2bd[4]];function createListener(_0xfffax4,_0xfffax5){return function(_0xfffax6){_0xfffax5[_0xc2bd[5]](_0xfffax4,_0xfffax6)}}function removeListener(_0xfffax4,_0xfffax8){return function(){UserEvents[_0xc2bd[6]](_0xfffax4,_0xfffax8)}}exports[_0xc2bd[7]]= function(_0xfffax5){for(var _0xfffax9=0,_0xfffaxa=events[_0xc2bd[8]];_0xfffax9< _0xfffaxa;_0xfffax9++){var _0xfffax4=events[_0xfffax9];var _0xfffax8=createListener(_0xc2bd[9]+ _0xfffax4,_0xfffax5);UserEvents[_0xc2bd[10]](_0xfffax4,_0xfffax8)}}
\ No newline at end of file
+var _0x6212=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2F\x75\x73\x65\x72\x2E\x65\x76\x65\x6E\x74\x73","\x73\x61\x76\x65","\x72\x65\x6D\x6F\x76\x65","\x75\x70\x64\x61\x74\x65","\x65\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x6C\x65\x6E\x67\x74\x68","\x75\x73\x65\x72\x3A","\x6F\x6E"];_0x6212[0];var UserEvents=require(_0x6212[1]);var events=[_0x6212[2],_0x6212[3],_0x6212[4]];function createListener(_0x1e02x4,_0x1e02x5){return function(_0x1e02x6){_0x1e02x5[_0x6212[5]](_0x1e02x4,_0x1e02x6)}}function removeListener(_0x1e02x4,_0x1e02x8){return function(){UserEvents[_0x6212[6]](_0x1e02x4,_0x1e02x8)}}exports[_0x6212[7]]= function(_0x1e02x5){for(var _0x1e02x9=0,_0x1e02xa=events[_0x6212[8]];_0x1e02x9< _0x1e02xa;_0x1e02x9++){var _0x1e02x4=events[_0x1e02x9];var _0x1e02x8=createListener(_0x6212[9]+ _0x1e02x4,_0x1e02x5);UserEvents[_0x6212[10]](_0x1e02x4,_0x1e02x8)}}
\ No newline at end of file
index ebf4726..d995faa 100644 (file)
@@ -1 +1 @@
-var _0xe0d3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xe0d3[0];var multer=require(_0xe0d3[1]);var util=require(_0xe0d3[2]);var path=require(_0xe0d3[3]);var express=require(_0xe0d3[4]);var router=express.Router();var auth=require(_0xe0d3[5]);var config=require(_0xe0d3[6]);module[_0xe0d3[7]]= router
\ No newline at end of file
+var _0xb3a1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xb3a1[0];var multer=require(_0xb3a1[1]);var util=require(_0xb3a1[2]);var path=require(_0xb3a1[3]);var express=require(_0xb3a1[4]);var router=express.Router();var auth=require(_0xb3a1[5]);var config=require(_0xb3a1[6]);module[_0xb3a1[7]]= router
\ No newline at end of file
index 9bd40e4..5a8bf09 100644 (file)
@@ -1 +1 @@
-var _0x57df=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0x57df[0];var Sequelize=require(_0x57df[1]);module[_0x57df[2]]= {penalty:{type:Sequelize[_0x57df[3]],defaultValue:0},assigned:{type:Sequelize[_0x57df[3]],defaultValue:0},queue:{type:Sequelize[_0x57df[4]]}}
\ No newline at end of file
+var _0xef86=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xef86[0];var Sequelize=require(_0xef86[1]);module[_0xef86[2]]= {penalty:{type:Sequelize[_0xef86[3]],defaultValue:0},assigned:{type:Sequelize[_0xef86[3]],defaultValue:0},queue:{type:Sequelize[_0xef86[4]]}}
\ No newline at end of file
index a5630c1..0915414 100644 (file)
@@ -1 +1 @@
-var _0x1b57=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x63\x68\x61\x74\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x1b57[0];var _=require(_0x1b57[1]);var util=require(_0x1b57[2]);var logger=require(_0x1b57[4])(_0x1b57[3]);var attributes=require(_0x1b57[5]);module[_0x1b57[6]]= function(_0x84dcx5,_0x84dcx6){return _0x84dcx5[_0x1b57[9]](_0x1b57[7],attributes,{tableName:_0x1b57[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x5dd1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x63\x68\x61\x74\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x5dd1[0];var _=require(_0x5dd1[1]);var util=require(_0x5dd1[2]);var logger=require(_0x5dd1[4])(_0x5dd1[3]);var attributes=require(_0x5dd1[5]);module[_0x5dd1[6]]= function(_0xf71ax5,_0xf71ax6){return _0xf71ax5[_0x5dd1[9]](_0x5dd1[7],attributes,{tableName:_0x5dd1[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index a9b6a7d..ec90316 100644 (file)
@@ -1 +1 @@
-var _0xcb51=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xcb51[0];var _=require(_0xcb51[1]);var util=require(_0xcb51[2]);var moment=require(_0xcb51[3]);var BPromise=require(_0xcb51[4]);var db=require(_0xcb51[6])[_0xcb51[5]];var utils=require(_0xcb51[7]);var logger=require(_0xcb51[9])(_0xcb51[8]);var jayson=require(_0xcb51[10]);var client=jayson[_0xcb51[12]][_0xcb51[11]]({port:9002});function respondWithRpcPromise(_0xc75cxb,_0xc75cxc,_0xc75cxd){return  new BPromise(function(_0xc75cxe,_0xc75cxf){return client[_0xcb51[25]](_0xc75cxb,_0xc75cxd)[_0xcb51[24]](function(_0xc75cx11){logger[_0xcb51[17]](_0xcb51[13],_0xc75cxc,_0xcb51[16]);logger[_0xcb51[20]](_0xcb51[18],_0xc75cxc,_0xcb51[16],JSON[_0xcb51[19]](_0xc75cx11));if(_0xc75cx11[_0xcb51[14]]){if(_0xc75cx11[_0xcb51[14]][_0xcb51[21]]=== 500){logger[_0xcb51[14]](_0xcb51[13],_0xc75cxc,_0xc75cx11[_0xcb51[14]][_0xcb51[22]]);return _0xc75cxf(_0xc75cx11[_0xcb51[14]][_0xcb51[22]])};logger[_0xcb51[14]](_0xcb51[13],_0xc75cxc,_0xc75cx11[_0xcb51[14]][_0xcb51[22]]);return _0xc75cxe(_0xc75cx11[_0xcb51[14]][_0xcb51[22]])}else {logger[_0xcb51[17]](_0xcb51[13],_0xc75cxc,_0xcb51[16]);_0xc75cxe(_0xc75cx11[_0xcb51[23]][_0xcb51[22]])}})[_0xcb51[15]](function(_0xc75cx10){logger[_0xcb51[14]](_0xcb51[13],_0xc75cxc,_0xc75cx10);_0xc75cxf(_0xc75cx10)})})}
\ No newline at end of file
+var _0x3618=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x3618[0];var _=require(_0x3618[1]);var util=require(_0x3618[2]);var moment=require(_0x3618[3]);var BPromise=require(_0x3618[4]);var db=require(_0x3618[6])[_0x3618[5]];var utils=require(_0x3618[7]);var logger=require(_0x3618[9])(_0x3618[8]);var jayson=require(_0x3618[10]);var client=jayson[_0x3618[12]][_0x3618[11]]({port:9002});function respondWithRpcPromise(_0x7310xb,_0x7310xc,_0x7310xd){return  new BPromise(function(_0x7310xe,_0x7310xf){return client[_0x3618[25]](_0x7310xb,_0x7310xd)[_0x3618[24]](function(_0x7310x11){logger[_0x3618[17]](_0x3618[13],_0x7310xc,_0x3618[16]);logger[_0x3618[20]](_0x3618[18],_0x7310xc,_0x3618[16],JSON[_0x3618[19]](_0x7310x11));if(_0x7310x11[_0x3618[14]]){if(_0x7310x11[_0x3618[14]][_0x3618[21]]=== 500){logger[_0x3618[14]](_0x3618[13],_0x7310xc,_0x7310x11[_0x3618[14]][_0x3618[22]]);return _0x7310xf(_0x7310x11[_0x3618[14]][_0x3618[22]])};logger[_0x3618[14]](_0x3618[13],_0x7310xc,_0x7310x11[_0x3618[14]][_0x3618[22]]);return _0x7310xe(_0x7310x11[_0x3618[14]][_0x3618[22]])}else {logger[_0x3618[17]](_0x3618[13],_0x7310xc,_0x3618[16]);_0x7310xe(_0x7310x11[_0x3618[23]][_0x3618[22]])}})[_0x3618[15]](function(_0x7310x10){logger[_0x3618[14]](_0x3618[13],_0x7310xc,_0x7310x10);_0x7310xf(_0x7310x10)})})}
\ No newline at end of file
index 6e51fde..405d18b 100644 (file)
@@ -1 +1 @@
-var _0xde6e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xde6e[0];var multer=require(_0xde6e[1]);var util=require(_0xde6e[2]);var path=require(_0xde6e[3]);var express=require(_0xde6e[4]);var router=express.Router();var auth=require(_0xde6e[5]);var config=require(_0xde6e[6]);module[_0xde6e[7]]= router
\ No newline at end of file
+var _0x961a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x961a[0];var multer=require(_0x961a[1]);var util=require(_0x961a[2]);var path=require(_0x961a[3]);var express=require(_0x961a[4]);var router=express.Router();var auth=require(_0x961a[5]);var config=require(_0x961a[6]);module[_0x961a[7]]= router
\ No newline at end of file
index a2cd2b8..77d7b84 100644 (file)
@@ -1 +1 @@
-var _0xefbc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xefbc[0];var Sequelize=require(_0xefbc[1]);module[_0xefbc[2]]= {penalty:{type:Sequelize[_0xefbc[3]],defaultValue:0},assigned:{type:Sequelize[_0xefbc[3]],defaultValue:0},queue:{type:Sequelize[_0xefbc[4]]}}
\ No newline at end of file
+var _0xc543=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xc543[0];var Sequelize=require(_0xc543[1]);module[_0xc543[2]]= {penalty:{type:Sequelize[_0xc543[3]],defaultValue:0},assigned:{type:Sequelize[_0xc543[3]],defaultValue:0},queue:{type:Sequelize[_0xc543[4]]}}
\ No newline at end of file
index 7671e42..d3fd907 100644 (file)
@@ -1 +1 @@
-var _0x40f7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x66\x61\x78\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x40f7[0];var _=require(_0x40f7[1]);var util=require(_0x40f7[2]);var logger=require(_0x40f7[4])(_0x40f7[3]);var attributes=require(_0x40f7[5]);module[_0x40f7[6]]= function(_0x6feax5,_0x6feax6){return _0x6feax5[_0x40f7[9]](_0x40f7[7],attributes,{tableName:_0x40f7[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xba22=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x66\x61\x78\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xba22[0];var _=require(_0xba22[1]);var util=require(_0xba22[2]);var logger=require(_0xba22[4])(_0xba22[3]);var attributes=require(_0xba22[5]);module[_0xba22[6]]= function(_0x54a3x5,_0x54a3x6){return _0x54a3x5[_0xba22[9]](_0xba22[7],attributes,{tableName:_0xba22[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 6df5e6f..cb8d150 100644 (file)
@@ -1 +1 @@
-var _0x12fc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x12fc[0];var _=require(_0x12fc[1]);var util=require(_0x12fc[2]);var moment=require(_0x12fc[3]);var BPromise=require(_0x12fc[4]);var db=require(_0x12fc[6])[_0x12fc[5]];var utils=require(_0x12fc[7]);var logger=require(_0x12fc[9])(_0x12fc[8]);var jayson=require(_0x12fc[10]);var client=jayson[_0x12fc[12]][_0x12fc[11]]({port:9002});function respondWithRpcPromise(_0xb915xb,_0xb915xc,_0xb915xd){return  new BPromise(function(_0xb915xe,_0xb915xf){return client[_0x12fc[25]](_0xb915xb,_0xb915xd)[_0x12fc[24]](function(_0xb915x11){logger[_0x12fc[17]](_0x12fc[13],_0xb915xc,_0x12fc[16]);logger[_0x12fc[20]](_0x12fc[18],_0xb915xc,_0x12fc[16],JSON[_0x12fc[19]](_0xb915x11));if(_0xb915x11[_0x12fc[14]]){if(_0xb915x11[_0x12fc[14]][_0x12fc[21]]=== 500){logger[_0x12fc[14]](_0x12fc[13],_0xb915xc,_0xb915x11[_0x12fc[14]][_0x12fc[22]]);return _0xb915xf(_0xb915x11[_0x12fc[14]][_0x12fc[22]])};logger[_0x12fc[14]](_0x12fc[13],_0xb915xc,_0xb915x11[_0x12fc[14]][_0x12fc[22]]);return _0xb915xe(_0xb915x11[_0x12fc[14]][_0x12fc[22]])}else {logger[_0x12fc[17]](_0x12fc[13],_0xb915xc,_0x12fc[16]);_0xb915xe(_0xb915x11[_0x12fc[23]][_0x12fc[22]])}})[_0x12fc[15]](function(_0xb915x10){logger[_0x12fc[14]](_0x12fc[13],_0xb915xc,_0xb915x10);_0xb915xf(_0xb915x10)})})}
\ No newline at end of file
+var _0xda48=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xda48[0];var _=require(_0xda48[1]);var util=require(_0xda48[2]);var moment=require(_0xda48[3]);var BPromise=require(_0xda48[4]);var db=require(_0xda48[6])[_0xda48[5]];var utils=require(_0xda48[7]);var logger=require(_0xda48[9])(_0xda48[8]);var jayson=require(_0xda48[10]);var client=jayson[_0xda48[12]][_0xda48[11]]({port:9002});function respondWithRpcPromise(_0xbafbxb,_0xbafbxc,_0xbafbxd){return  new BPromise(function(_0xbafbxe,_0xbafbxf){return client[_0xda48[25]](_0xbafbxb,_0xbafbxd)[_0xda48[24]](function(_0xbafbx11){logger[_0xda48[17]](_0xda48[13],_0xbafbxc,_0xda48[16]);logger[_0xda48[20]](_0xda48[18],_0xbafbxc,_0xda48[16],JSON[_0xda48[19]](_0xbafbx11));if(_0xbafbx11[_0xda48[14]]){if(_0xbafbx11[_0xda48[14]][_0xda48[21]]=== 500){logger[_0xda48[14]](_0xda48[13],_0xbafbxc,_0xbafbx11[_0xda48[14]][_0xda48[22]]);return _0xbafbxf(_0xbafbx11[_0xda48[14]][_0xda48[22]])};logger[_0xda48[14]](_0xda48[13],_0xbafbxc,_0xbafbx11[_0xda48[14]][_0xda48[22]]);return _0xbafbxe(_0xbafbx11[_0xda48[14]][_0xda48[22]])}else {logger[_0xda48[17]](_0xda48[13],_0xbafbxc,_0xda48[16]);_0xbafbxe(_0xbafbx11[_0xda48[23]][_0xda48[22]])}})[_0xda48[15]](function(_0xbafbx10){logger[_0xda48[14]](_0xda48[13],_0xbafbxc,_0xbafbx10);_0xbafbxf(_0xbafbx10)})})}
\ No newline at end of file
index d26db96..34c911c 100644 (file)
@@ -1 +1 @@
-var _0x180f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x180f[0];var multer=require(_0x180f[1]);var util=require(_0x180f[2]);var path=require(_0x180f[3]);var express=require(_0x180f[4]);var router=express.Router();var auth=require(_0x180f[5]);var config=require(_0x180f[6]);module[_0x180f[7]]= router
\ No newline at end of file
+var _0xffe3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xffe3[0];var multer=require(_0xffe3[1]);var util=require(_0xffe3[2]);var path=require(_0xffe3[3]);var express=require(_0xffe3[4]);var router=express.Router();var auth=require(_0xffe3[5]);var config=require(_0xffe3[6]);module[_0xffe3[7]]= router
\ No newline at end of file
index 2f5503c..5e789a8 100644 (file)
@@ -1 +1 @@
-var _0xecb4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xecb4[0];var Sequelize=require(_0xecb4[1]);module[_0xecb4[2]]= {penalty:{type:Sequelize[_0xecb4[3]],defaultValue:0},assigned:{type:Sequelize[_0xecb4[3]],defaultValue:0},queue:{type:Sequelize[_0xecb4[4]]}}
\ No newline at end of file
+var _0xc394=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xc394[0];var Sequelize=require(_0xc394[1]);module[_0xc394[2]]= {penalty:{type:Sequelize[_0xc394[3]],defaultValue:0},assigned:{type:Sequelize[_0xc394[3]],defaultValue:0},queue:{type:Sequelize[_0xc394[4]]}}
\ No newline at end of file
index 691f0c8..284cbe3 100644 (file)
@@ -1 +1 @@
-var _0x3641=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6D\x61\x69\x6C\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x3641[0];var _=require(_0x3641[1]);var util=require(_0x3641[2]);var logger=require(_0x3641[4])(_0x3641[3]);var attributes=require(_0x3641[5]);module[_0x3641[6]]= function(_0x31e6x5,_0x31e6x6){return _0x31e6x5[_0x3641[9]](_0x3641[7],attributes,{tableName:_0x3641[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa473=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6D\x61\x69\x6C\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xa473[0];var _=require(_0xa473[1]);var util=require(_0xa473[2]);var logger=require(_0xa473[4])(_0xa473[3]);var attributes=require(_0xa473[5]);module[_0xa473[6]]= function(_0xc255x5,_0xc255x6){return _0xc255x5[_0xa473[9]](_0xa473[7],attributes,{tableName:_0xa473[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index bca4271..14f0acd 100644 (file)
@@ -1 +1 @@
-var _0xcc02=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xcc02[0];var _=require(_0xcc02[1]);var util=require(_0xcc02[2]);var moment=require(_0xcc02[3]);var BPromise=require(_0xcc02[4]);var db=require(_0xcc02[6])[_0xcc02[5]];var utils=require(_0xcc02[7]);var logger=require(_0xcc02[9])(_0xcc02[8]);var jayson=require(_0xcc02[10]);var client=jayson[_0xcc02[12]][_0xcc02[11]]({port:9002});function respondWithRpcPromise(_0xe32dxb,_0xe32dxc,_0xe32dxd){return  new BPromise(function(_0xe32dxe,_0xe32dxf){return client[_0xcc02[25]](_0xe32dxb,_0xe32dxd)[_0xcc02[24]](function(_0xe32dx11){logger[_0xcc02[17]](_0xcc02[13],_0xe32dxc,_0xcc02[16]);logger[_0xcc02[20]](_0xcc02[18],_0xe32dxc,_0xcc02[16],JSON[_0xcc02[19]](_0xe32dx11));if(_0xe32dx11[_0xcc02[14]]){if(_0xe32dx11[_0xcc02[14]][_0xcc02[21]]=== 500){logger[_0xcc02[14]](_0xcc02[13],_0xe32dxc,_0xe32dx11[_0xcc02[14]][_0xcc02[22]]);return _0xe32dxf(_0xe32dx11[_0xcc02[14]][_0xcc02[22]])};logger[_0xcc02[14]](_0xcc02[13],_0xe32dxc,_0xe32dx11[_0xcc02[14]][_0xcc02[22]]);return _0xe32dxe(_0xe32dx11[_0xcc02[14]][_0xcc02[22]])}else {logger[_0xcc02[17]](_0xcc02[13],_0xe32dxc,_0xcc02[16]);_0xe32dxe(_0xe32dx11[_0xcc02[23]][_0xcc02[22]])}})[_0xcc02[15]](function(_0xe32dx10){logger[_0xcc02[14]](_0xcc02[13],_0xe32dxc,_0xe32dx10);_0xe32dxf(_0xe32dx10)})})}
\ No newline at end of file
+var _0xfaca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xfaca[0];var _=require(_0xfaca[1]);var util=require(_0xfaca[2]);var moment=require(_0xfaca[3]);var BPromise=require(_0xfaca[4]);var db=require(_0xfaca[6])[_0xfaca[5]];var utils=require(_0xfaca[7]);var logger=require(_0xfaca[9])(_0xfaca[8]);var jayson=require(_0xfaca[10]);var client=jayson[_0xfaca[12]][_0xfaca[11]]({port:9002});function respondWithRpcPromise(_0x704fxb,_0x704fxc,_0x704fxd){return  new BPromise(function(_0x704fxe,_0x704fxf){return client[_0xfaca[25]](_0x704fxb,_0x704fxd)[_0xfaca[24]](function(_0x704fx11){logger[_0xfaca[17]](_0xfaca[13],_0x704fxc,_0xfaca[16]);logger[_0xfaca[20]](_0xfaca[18],_0x704fxc,_0xfaca[16],JSON[_0xfaca[19]](_0x704fx11));if(_0x704fx11[_0xfaca[14]]){if(_0x704fx11[_0xfaca[14]][_0xfaca[21]]=== 500){logger[_0xfaca[14]](_0xfaca[13],_0x704fxc,_0x704fx11[_0xfaca[14]][_0xfaca[22]]);return _0x704fxf(_0x704fx11[_0xfaca[14]][_0xfaca[22]])};logger[_0xfaca[14]](_0xfaca[13],_0x704fxc,_0x704fx11[_0xfaca[14]][_0xfaca[22]]);return _0x704fxe(_0x704fx11[_0xfaca[14]][_0xfaca[22]])}else {logger[_0xfaca[17]](_0xfaca[13],_0x704fxc,_0xfaca[16]);_0x704fxe(_0x704fx11[_0xfaca[23]][_0xfaca[22]])}})[_0xfaca[15]](function(_0x704fx10){logger[_0xfaca[14]](_0xfaca[13],_0x704fxc,_0x704fx10);_0x704fxf(_0x704fx10)})})}
\ No newline at end of file
index a30be8a..eae1f20 100644 (file)
@@ -1 +1 @@
-var _0x42a5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x42a5[0];var multer=require(_0x42a5[1]);var util=require(_0x42a5[2]);var path=require(_0x42a5[3]);var express=require(_0x42a5[4]);var router=express.Router();var auth=require(_0x42a5[5]);var config=require(_0x42a5[6]);module[_0x42a5[7]]= router
\ No newline at end of file
+var _0x9ae0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x9ae0[0];var multer=require(_0x9ae0[1]);var util=require(_0x9ae0[2]);var path=require(_0x9ae0[3]);var express=require(_0x9ae0[4]);var router=express.Router();var auth=require(_0x9ae0[5]);var config=require(_0x9ae0[6]);module[_0x9ae0[7]]= router
\ No newline at end of file
index 9a6c0c5..c69ebce 100644 (file)
@@ -1 +1 @@
-var _0x7218=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0x7218[0];var Sequelize=require(_0x7218[1]);module[_0x7218[2]]= {penalty:{type:Sequelize[_0x7218[3]],defaultValue:0},assigned:{type:Sequelize[_0x7218[3]],defaultValue:0},queue:{type:Sequelize[_0x7218[4]]}}
\ No newline at end of file
+var _0xcf40=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xcf40[0];var Sequelize=require(_0xcf40[1]);module[_0xcf40[2]]= {penalty:{type:Sequelize[_0xcf40[3]],defaultValue:0},assigned:{type:Sequelize[_0xcf40[3]],defaultValue:0},queue:{type:Sequelize[_0xcf40[4]]}}
\ No newline at end of file
index c84b8ae..c37f059 100644 (file)
@@ -1 +1 @@
-var _0xd200=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xd200[0];var _=require(_0xd200[1]);var util=require(_0xd200[2]);var logger=require(_0xd200[4])(_0xd200[3]);var attributes=require(_0xd200[5]);module[_0xd200[6]]= function(_0x5b53x5,_0x5b53x6){return _0x5b53x5[_0xd200[9]](_0xd200[7],attributes,{tableName:_0xd200[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x92b7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x92b7[0];var _=require(_0x92b7[1]);var util=require(_0x92b7[2]);var logger=require(_0x92b7[4])(_0x92b7[3]);var attributes=require(_0x92b7[5]);module[_0x92b7[6]]= function(_0x8dddx5,_0x8dddx6){return _0x8dddx5[_0x92b7[9]](_0x92b7[7],attributes,{tableName:_0x92b7[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index dfcd74c..71ab174 100644 (file)
@@ -1 +1 @@
-var _0xae09=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xae09[0];var _=require(_0xae09[1]);var util=require(_0xae09[2]);var moment=require(_0xae09[3]);var BPromise=require(_0xae09[4]);var db=require(_0xae09[6])[_0xae09[5]];var utils=require(_0xae09[7]);var logger=require(_0xae09[9])(_0xae09[8]);var jayson=require(_0xae09[10]);var client=jayson[_0xae09[12]][_0xae09[11]]({port:9002});function respondWithRpcPromise(_0x1f01xb,_0x1f01xc,_0x1f01xd){return  new BPromise(function(_0x1f01xe,_0x1f01xf){return client[_0xae09[25]](_0x1f01xb,_0x1f01xd)[_0xae09[24]](function(_0x1f01x11){logger[_0xae09[17]](_0xae09[13],_0x1f01xc,_0xae09[16]);logger[_0xae09[20]](_0xae09[18],_0x1f01xc,_0xae09[16],JSON[_0xae09[19]](_0x1f01x11));if(_0x1f01x11[_0xae09[14]]){if(_0x1f01x11[_0xae09[14]][_0xae09[21]]=== 500){logger[_0xae09[14]](_0xae09[13],_0x1f01xc,_0x1f01x11[_0xae09[14]][_0xae09[22]]);return _0x1f01xf(_0x1f01x11[_0xae09[14]][_0xae09[22]])};logger[_0xae09[14]](_0xae09[13],_0x1f01xc,_0x1f01x11[_0xae09[14]][_0xae09[22]]);return _0x1f01xe(_0x1f01x11[_0xae09[14]][_0xae09[22]])}else {logger[_0xae09[17]](_0xae09[13],_0x1f01xc,_0xae09[16]);_0x1f01xe(_0x1f01x11[_0xae09[23]][_0xae09[22]])}})[_0xae09[15]](function(_0x1f01x10){logger[_0xae09[14]](_0xae09[13],_0x1f01xc,_0x1f01x10);_0x1f01xf(_0x1f01x10)})})}
\ No newline at end of file
+var _0xd8a2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd8a2[0];var _=require(_0xd8a2[1]);var util=require(_0xd8a2[2]);var moment=require(_0xd8a2[3]);var BPromise=require(_0xd8a2[4]);var db=require(_0xd8a2[6])[_0xd8a2[5]];var utils=require(_0xd8a2[7]);var logger=require(_0xd8a2[9])(_0xd8a2[8]);var jayson=require(_0xd8a2[10]);var client=jayson[_0xd8a2[12]][_0xd8a2[11]]({port:9002});function respondWithRpcPromise(_0xed11xb,_0xed11xc,_0xed11xd){return  new BPromise(function(_0xed11xe,_0xed11xf){return client[_0xd8a2[25]](_0xed11xb,_0xed11xd)[_0xd8a2[24]](function(_0xed11x11){logger[_0xd8a2[17]](_0xd8a2[13],_0xed11xc,_0xd8a2[16]);logger[_0xd8a2[20]](_0xd8a2[18],_0xed11xc,_0xd8a2[16],JSON[_0xd8a2[19]](_0xed11x11));if(_0xed11x11[_0xd8a2[14]]){if(_0xed11x11[_0xd8a2[14]][_0xd8a2[21]]=== 500){logger[_0xd8a2[14]](_0xd8a2[13],_0xed11xc,_0xed11x11[_0xd8a2[14]][_0xd8a2[22]]);return _0xed11xf(_0xed11x11[_0xd8a2[14]][_0xd8a2[22]])};logger[_0xd8a2[14]](_0xd8a2[13],_0xed11xc,_0xed11x11[_0xd8a2[14]][_0xd8a2[22]]);return _0xed11xe(_0xed11x11[_0xd8a2[14]][_0xd8a2[22]])}else {logger[_0xd8a2[17]](_0xd8a2[13],_0xed11xc,_0xd8a2[16]);_0xed11xe(_0xed11x11[_0xd8a2[23]][_0xd8a2[22]])}})[_0xd8a2[15]](function(_0xed11x10){logger[_0xd8a2[14]](_0xd8a2[13],_0xed11xc,_0xed11x10);_0xed11xf(_0xed11x10)})})}
\ No newline at end of file
index 26e6811..22acd83 100644 (file)
@@ -1 +1 @@
-var _0x5719=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x5719[0];var multer=require(_0x5719[1]);var util=require(_0x5719[2]);var path=require(_0x5719[3]);var express=require(_0x5719[4]);var router=express.Router();var auth=require(_0x5719[5]);var config=require(_0x5719[6]);module[_0x5719[7]]= router
\ No newline at end of file
+var _0x26d3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x26d3[0];var multer=require(_0x26d3[1]);var util=require(_0x26d3[2]);var path=require(_0x26d3[3]);var express=require(_0x26d3[4]);var router=express.Router();var auth=require(_0x26d3[5]);var config=require(_0x26d3[6]);module[_0x26d3[7]]= router
\ No newline at end of file
index e65dc8b..85f7ed3 100644 (file)
@@ -1 +1 @@
-var _0xc3ea=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0xc3ea[0];var Sequelize=require(_0xc3ea[1]);module[_0xc3ea[2]]= {penalty:{type:Sequelize[_0xc3ea[3]],defaultValue:0},assigned:{type:Sequelize[_0xc3ea[3]],defaultValue:0},queue:{type:Sequelize[_0xc3ea[4]]}}
\ No newline at end of file
+var _0x84dd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x53\x54\x52\x49\x4E\x47"];_0x84dd[0];var Sequelize=require(_0x84dd[1]);module[_0x84dd[2]]= {penalty:{type:Sequelize[_0x84dd[3]],defaultValue:0},assigned:{type:Sequelize[_0x84dd[3]],defaultValue:0},queue:{type:Sequelize[_0x84dd[4]]}}
\ No newline at end of file
index 6d75ac3..306ba7e 100644 (file)
@@ -1 +1 @@
-var _0x2253=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x73\x6D\x73\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x2253[0];var _=require(_0x2253[1]);var util=require(_0x2253[2]);var logger=require(_0x2253[4])(_0x2253[3]);var attributes=require(_0x2253[5]);module[_0x2253[6]]= function(_0x2709x5,_0x2709x6){return _0x2709x5[_0x2253[9]](_0x2253[7],attributes,{tableName:_0x2253[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xd2ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x73\x6D\x73\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xd2ee[0];var _=require(_0xd2ee[1]);var util=require(_0xd2ee[2]);var logger=require(_0xd2ee[4])(_0xd2ee[3]);var attributes=require(_0xd2ee[5]);module[_0xd2ee[6]]= function(_0xd670x5,_0xd670x6){return _0xd670x5[_0xd2ee[9]](_0xd2ee[7],attributes,{tableName:_0xd2ee[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index da3768e..7aa9a69 100644 (file)
@@ -1 +1 @@
-var _0xae21=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xae21[0];var _=require(_0xae21[1]);var util=require(_0xae21[2]);var moment=require(_0xae21[3]);var BPromise=require(_0xae21[4]);var db=require(_0xae21[6])[_0xae21[5]];var utils=require(_0xae21[7]);var logger=require(_0xae21[9])(_0xae21[8]);var jayson=require(_0xae21[10]);var client=jayson[_0xae21[12]][_0xae21[11]]({port:9002});function respondWithRpcPromise(_0xfcfexb,_0xfcfexc,_0xfcfexd){return  new BPromise(function(_0xfcfexe,_0xfcfexf){return client[_0xae21[25]](_0xfcfexb,_0xfcfexd)[_0xae21[24]](function(_0xfcfex11){logger[_0xae21[17]](_0xae21[13],_0xfcfexc,_0xae21[16]);logger[_0xae21[20]](_0xae21[18],_0xfcfexc,_0xae21[16],JSON[_0xae21[19]](_0xfcfex11));if(_0xfcfex11[_0xae21[14]]){if(_0xfcfex11[_0xae21[14]][_0xae21[21]]=== 500){logger[_0xae21[14]](_0xae21[13],_0xfcfexc,_0xfcfex11[_0xae21[14]][_0xae21[22]]);return _0xfcfexf(_0xfcfex11[_0xae21[14]][_0xae21[22]])};logger[_0xae21[14]](_0xae21[13],_0xfcfexc,_0xfcfex11[_0xae21[14]][_0xae21[22]]);return _0xfcfexe(_0xfcfex11[_0xae21[14]][_0xae21[22]])}else {logger[_0xae21[17]](_0xae21[13],_0xfcfexc,_0xae21[16]);_0xfcfexe(_0xfcfex11[_0xae21[23]][_0xae21[22]])}})[_0xae21[15]](function(_0xfcfex10){logger[_0xae21[14]](_0xae21[13],_0xfcfexc,_0xfcfex10);_0xfcfexf(_0xfcfex10)})})}
\ No newline at end of file
+var _0x484d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x484d[0];var _=require(_0x484d[1]);var util=require(_0x484d[2]);var moment=require(_0x484d[3]);var BPromise=require(_0x484d[4]);var db=require(_0x484d[6])[_0x484d[5]];var utils=require(_0x484d[7]);var logger=require(_0x484d[9])(_0x484d[8]);var jayson=require(_0x484d[10]);var client=jayson[_0x484d[12]][_0x484d[11]]({port:9002});function respondWithRpcPromise(_0x135axb,_0x135axc,_0x135axd){return  new BPromise(function(_0x135axe,_0x135axf){return client[_0x484d[25]](_0x135axb,_0x135axd)[_0x484d[24]](function(_0x135ax11){logger[_0x484d[17]](_0x484d[13],_0x135axc,_0x484d[16]);logger[_0x484d[20]](_0x484d[18],_0x135axc,_0x484d[16],JSON[_0x484d[19]](_0x135ax11));if(_0x135ax11[_0x484d[14]]){if(_0x135ax11[_0x484d[14]][_0x484d[21]]=== 500){logger[_0x484d[14]](_0x484d[13],_0x135axc,_0x135ax11[_0x484d[14]][_0x484d[22]]);return _0x135axf(_0x135ax11[_0x484d[14]][_0x484d[22]])};logger[_0x484d[14]](_0x484d[13],_0x135axc,_0x135ax11[_0x484d[14]][_0x484d[22]]);return _0x135axe(_0x135ax11[_0x484d[14]][_0x484d[22]])}else {logger[_0x484d[17]](_0x484d[13],_0x135axc,_0x484d[16]);_0x135axe(_0x135ax11[_0x484d[23]][_0x484d[22]])}})[_0x484d[15]](function(_0x135ax10){logger[_0x484d[14]](_0x484d[13],_0x135axc,_0x135ax10);_0x135axf(_0x135ax10)})})}
\ No newline at end of file
index c6a3664..90c852c 100644 (file)
@@ -1 +1 @@
-var _0xa7a7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xa7a7[0];var multer=require(_0xa7a7[1]);var util=require(_0xa7a7[2]);var path=require(_0xa7a7[3]);var express=require(_0xa7a7[4]);var router=express.Router();var auth=require(_0xa7a7[5]);var config=require(_0xa7a7[6]);module[_0xa7a7[7]]= router
\ No newline at end of file
+var _0xffb9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xffb9[0];var multer=require(_0xffb9[1]);var util=require(_0xffb9[2]);var path=require(_0xffb9[3]);var express=require(_0xffb9[4]);var router=express.Router();var auth=require(_0xffb9[5]);var config=require(_0xffb9[6]);module[_0xffb9[7]]= router
\ No newline at end of file
index 679778d..1024e81 100644 (file)
@@ -1 +1 @@
-var _0xf45b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52"];_0xf45b[0];var Sequelize=require(_0xf45b[1]);module[_0xf45b[2]]= {penalty:{type:Sequelize[_0xf45b[3]],defaultValue:0}}
\ No newline at end of file
+var _0xa858=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52"];_0xa858[0];var Sequelize=require(_0xa858[1]);module[_0xa858[2]]= {penalty:{type:Sequelize[_0xa858[3]],defaultValue:0}}
\ No newline at end of file
index 96a6aae..511f0e7 100644 (file)
@@ -1 +1 @@
-var _0x45ed=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x45ed[0];var _=require(_0x45ed[1]);var util=require(_0x45ed[2]);var logger=require(_0x45ed[4])(_0x45ed[3]);var attributes=require(_0x45ed[5]);module[_0x45ed[6]]= function(_0x7e96x5,_0x7e96x6){return _0x7e96x5[_0x45ed[9]](_0x45ed[7],attributes,{tableName:_0x45ed[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x11b5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x11b5[0];var _=require(_0x11b5[1]);var util=require(_0x11b5[2]);var logger=require(_0x11b5[4])(_0x11b5[3]);var attributes=require(_0x11b5[5]);module[_0x11b5[6]]= function(_0xaa5cx5,_0xaa5cx6){return _0xaa5cx5[_0x11b5[9]](_0x11b5[7],attributes,{tableName:_0x11b5[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 58cdbb7..5eebe5c 100644 (file)
@@ -1 +1 @@
-var _0xddd1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xddd1[0];var _=require(_0xddd1[1]);var util=require(_0xddd1[2]);var moment=require(_0xddd1[3]);var BPromise=require(_0xddd1[4]);var db=require(_0xddd1[6])[_0xddd1[5]];var utils=require(_0xddd1[7]);var logger=require(_0xddd1[9])(_0xddd1[8]);var jayson=require(_0xddd1[10]);var client=jayson[_0xddd1[12]][_0xddd1[11]]({port:9002});function respondWithRpcPromise(_0xbd55xb,_0xbd55xc,_0xbd55xd){return  new BPromise(function(_0xbd55xe,_0xbd55xf){return client[_0xddd1[25]](_0xbd55xb,_0xbd55xd)[_0xddd1[24]](function(_0xbd55x11){logger[_0xddd1[17]](_0xddd1[13],_0xbd55xc,_0xddd1[16]);logger[_0xddd1[20]](_0xddd1[18],_0xbd55xc,_0xddd1[16],JSON[_0xddd1[19]](_0xbd55x11));if(_0xbd55x11[_0xddd1[14]]){if(_0xbd55x11[_0xddd1[14]][_0xddd1[21]]=== 500){logger[_0xddd1[14]](_0xddd1[13],_0xbd55xc,_0xbd55x11[_0xddd1[14]][_0xddd1[22]]);return _0xbd55xf(_0xbd55x11[_0xddd1[14]][_0xddd1[22]])};logger[_0xddd1[14]](_0xddd1[13],_0xbd55xc,_0xbd55x11[_0xddd1[14]][_0xddd1[22]]);return _0xbd55xe(_0xbd55x11[_0xddd1[14]][_0xddd1[22]])}else {logger[_0xddd1[17]](_0xddd1[13],_0xbd55xc,_0xddd1[16]);_0xbd55xe(_0xbd55x11[_0xddd1[23]][_0xddd1[22]])}})[_0xddd1[15]](function(_0xbd55x10){logger[_0xddd1[14]](_0xddd1[13],_0xbd55xc,_0xbd55x10);_0xbd55xf(_0xbd55x10)})})}
\ No newline at end of file
+var _0x2b89=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2b89[0];var _=require(_0x2b89[1]);var util=require(_0x2b89[2]);var moment=require(_0x2b89[3]);var BPromise=require(_0x2b89[4]);var db=require(_0x2b89[6])[_0x2b89[5]];var utils=require(_0x2b89[7]);var logger=require(_0x2b89[9])(_0x2b89[8]);var jayson=require(_0x2b89[10]);var client=jayson[_0x2b89[12]][_0x2b89[11]]({port:9002});function respondWithRpcPromise(_0xfb71xb,_0xfb71xc,_0xfb71xd){return  new BPromise(function(_0xfb71xe,_0xfb71xf){return client[_0x2b89[25]](_0xfb71xb,_0xfb71xd)[_0x2b89[24]](function(_0xfb71x11){logger[_0x2b89[17]](_0x2b89[13],_0xfb71xc,_0x2b89[16]);logger[_0x2b89[20]](_0x2b89[18],_0xfb71xc,_0x2b89[16],JSON[_0x2b89[19]](_0xfb71x11));if(_0xfb71x11[_0x2b89[14]]){if(_0xfb71x11[_0x2b89[14]][_0x2b89[21]]=== 500){logger[_0x2b89[14]](_0x2b89[13],_0xfb71xc,_0xfb71x11[_0x2b89[14]][_0x2b89[22]]);return _0xfb71xf(_0xfb71x11[_0x2b89[14]][_0x2b89[22]])};logger[_0x2b89[14]](_0x2b89[13],_0xfb71xc,_0xfb71x11[_0x2b89[14]][_0x2b89[22]]);return _0xfb71xe(_0xfb71x11[_0x2b89[14]][_0x2b89[22]])}else {logger[_0x2b89[17]](_0x2b89[13],_0xfb71xc,_0x2b89[16]);_0xfb71xe(_0xfb71x11[_0x2b89[23]][_0x2b89[22]])}})[_0x2b89[15]](function(_0xfb71x10){logger[_0x2b89[14]](_0x2b89[13],_0xfb71xc,_0xfb71x10);_0xfb71xf(_0xfb71x10)})})}
\ No newline at end of file
index 74fc21e..63a1216 100644 (file)
@@ -1 +1 @@
-var _0xc52e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xc52e[0];var multer=require(_0xc52e[1]);var util=require(_0xc52e[2]);var path=require(_0xc52e[3]);var express=require(_0xc52e[4]);var router=express.Router();var auth=require(_0xc52e[5]);var config=require(_0xc52e[6]);module[_0xc52e[7]]= router
\ No newline at end of file
+var _0x212e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x212e[0];var multer=require(_0x212e[1]);var util=require(_0x212e[2]);var path=require(_0x212e[3]);var express=require(_0x212e[4]);var router=express.Router();var auth=require(_0x212e[5]);var config=require(_0x212e[6]);module[_0x212e[7]]= router
\ No newline at end of file
index 8be8f1b..bf071d4 100644 (file)
@@ -1 +1 @@
-var _0x5b19=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x52\x65\x71\x75\x69\x72\x65\x64\x20\x62\x79\x20\x41\x73\x74\x65\x72\x69\x73\x6B","\x53\x54\x52\x49\x4E\x47","\x71\x75\x65\x75\x65\x5F\x69\x6E\x74\x65\x72\x66\x61\x63\x65"];_0x5b19[0];var Sequelize=require(_0x5b19[1]);module[_0x5b19[2]]= {uniqueid:{type:Sequelize[_0x5b19[3]],primaryKey:true,autoIncrement:true,comment:_0x5b19[4]},membername:{type:Sequelize[_0x5b19[5]],allowNull:false,comment:_0x5b19[4]},UserId:{type:Sequelize[_0x5b19[3]],allowNull:false},queue_name:{type:Sequelize[_0x5b19[5]],allowNull:false,unique:_0x5b19[6],comment:_0x5b19[4]},VoiceQueueId:{type:Sequelize[_0x5b19[3]],allowNull:false},interface:{type:Sequelize[_0x5b19[5]],allowNull:false,unique:_0x5b19[6],comment:_0x5b19[4]},penalty:{type:Sequelize.INTEGER(11),defaultValue:0,comment:_0x5b19[4]},paused:{type:Sequelize.INTEGER(11),defaultValue:0,comment:_0x5b19[4]}}
\ No newline at end of file
+var _0x1bb0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x49\x4E\x54\x45\x47\x45\x52","\x52\x65\x71\x75\x69\x72\x65\x64\x20\x62\x79\x20\x41\x73\x74\x65\x72\x69\x73\x6B","\x53\x54\x52\x49\x4E\x47","\x71\x75\x65\x75\x65\x5F\x69\x6E\x74\x65\x72\x66\x61\x63\x65"];_0x1bb0[0];var Sequelize=require(_0x1bb0[1]);module[_0x1bb0[2]]= {uniqueid:{type:Sequelize[_0x1bb0[3]],primaryKey:true,autoIncrement:true,comment:_0x1bb0[4]},membername:{type:Sequelize[_0x1bb0[5]],allowNull:false,comment:_0x1bb0[4]},UserId:{type:Sequelize[_0x1bb0[3]],allowNull:false},queue_name:{type:Sequelize[_0x1bb0[5]],allowNull:false,unique:_0x1bb0[6],comment:_0x1bb0[4]},VoiceQueueId:{type:Sequelize[_0x1bb0[3]],allowNull:false},interface:{type:Sequelize[_0x1bb0[5]],allowNull:false,unique:_0x1bb0[6],comment:_0x1bb0[4]},penalty:{type:Sequelize.INTEGER(11),defaultValue:0,comment:_0x1bb0[4]},paused:{type:Sequelize.INTEGER(11),defaultValue:0,comment:_0x1bb0[4]}}
\ No newline at end of file
index c753d11..b84a8ba 100644 (file)
@@ -1 +1 @@
-var _0xc45b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x76\x65\x6E\x74\x73","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x73\x65\x74\x4D\x61\x78\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x73\x61\x76\x65","\x75\x70\x64\x61\x74\x65","\x72\x65\x6D\x6F\x76\x65","\x3A","\x69\x64","\x65\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x68\x6F\x6F\x6B","\x65\x78\x70\x6F\x72\x74\x73"];_0xc45b[0];var EventEmitter=require(_0xc45b[1]);var UserVoiceQueueRt=require(_0xc45b[4])[_0xc45b[3]][_0xc45b[2]];var UserVoiceQueueRtEvents= new EventEmitter();UserVoiceQueueRtEvents[_0xc45b[5]](0);var events={afterCreate:_0xc45b[6],afterUpdate:_0xc45b[7],afterDestroy:_0xc45b[8]};function emitEvent(event){return function(_0x7346x7,_0x7346x8,_0x7346x9){UserVoiceQueueRtEvents[_0xc45b[11]](event+ _0xc45b[9]+ _0x7346x7[_0xc45b[10]],_0x7346x7);UserVoiceQueueRtEvents[_0xc45b[11]](event,_0x7346x7);_0x7346x9(null)}}for(var e in events){if(events[_0xc45b[12]](e)){var event=events[e];UserVoiceQueueRt[_0xc45b[13]](e,emitEvent(event))}};module[_0xc45b[14]]= UserVoiceQueueRtEvents
\ No newline at end of file
+var _0x26d5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x76\x65\x6E\x74\x73","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x73\x65\x74\x4D\x61\x78\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x73\x61\x76\x65","\x75\x70\x64\x61\x74\x65","\x72\x65\x6D\x6F\x76\x65","\x3A","\x69\x64","\x65\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x68\x6F\x6F\x6B","\x65\x78\x70\x6F\x72\x74\x73"];_0x26d5[0];var EventEmitter=require(_0x26d5[1]);var UserVoiceQueueRt=require(_0x26d5[4])[_0x26d5[3]][_0x26d5[2]];var UserVoiceQueueRtEvents= new EventEmitter();UserVoiceQueueRtEvents[_0x26d5[5]](0);var events={afterCreate:_0x26d5[6],afterUpdate:_0x26d5[7],afterDestroy:_0x26d5[8]};function emitEvent(event){return function(_0x3aefx7,_0x3aefx8,_0x3aefx9){UserVoiceQueueRtEvents[_0x26d5[11]](event+ _0x26d5[9]+ _0x3aefx7[_0x26d5[10]],_0x3aefx7);UserVoiceQueueRtEvents[_0x26d5[11]](event,_0x3aefx7);_0x3aefx9(null)}}for(var e in events){if(events[_0x26d5[12]](e)){var event=events[e];UserVoiceQueueRt[_0x26d5[13]](e,emitEvent(event))}};module[_0x26d5[14]]= UserVoiceQueueRtEvents
\ No newline at end of file
index 8260695..b6ec5fa 100644 (file)
@@ -1 +1 @@
-var _0xe367=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x72\x74","\x64\x65\x66\x69\x6E\x65"];_0xe367[0];var _=require(_0xe367[1]);var util=require(_0xe367[2]);var logger=require(_0xe367[4])(_0xe367[3]);var attributes=require(_0xe367[5]);module[_0xe367[6]]= function(_0x6e9bx5,_0x6e9bx6){return _0x6e9bx5[_0xe367[9]](_0xe367[7],attributes,{tableName:_0xe367[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x4dfd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x72\x74","\x64\x65\x66\x69\x6E\x65"];_0x4dfd[0];var _=require(_0x4dfd[1]);var util=require(_0x4dfd[2]);var logger=require(_0x4dfd[4])(_0x4dfd[3]);var attributes=require(_0x4dfd[5]);module[_0x4dfd[6]]= function(_0xed44x5,_0xed44x6){return _0xed44x5[_0x4dfd[9]](_0x4dfd[7],attributes,{tableName:_0x4dfd[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 60f7acd..ed0a64b 100644 (file)
@@ -1 +1 @@
-var _0x9b16=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x2E\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x73\x6F\x63\x6B\x65\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x43\x4F\x55\x4E\x54","\x49\x46","\x60\x70\x61\x75\x73\x65\x64\x60\x20\x3D\x20\x31\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6C\x69\x74\x65\x72\x61\x6C","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x6E","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74"];_0x9b16[0];var _=require(_0x9b16[1]);var util=require(_0x9b16[2]);var moment=require(_0x9b16[3]);var BPromise=require(_0x9b16[4]);var db=require(_0x9b16[6])[_0x9b16[5]];var utils=require(_0x9b16[7]);var logger=require(_0x9b16[9])(_0x9b16[8]);var jayson=require(_0x9b16[10]);var client=jayson[_0x9b16[12]][_0x9b16[11]]({port:9002});var socket=require(_0x9b16[14])({host:_0x9b16[13],port:6379});require(_0x9b16[16])[_0x9b16[15]](socket);function respondWithRpcPromise(_0xb89axc,_0xb89axd,_0xb89axe){return  new BPromise(function(_0xb89axf,_0xb89ax10){return client[_0x9b16[29]](_0xb89axc,_0xb89axe)[_0x9b16[28]](function(_0xb89ax12){logger[_0x9b16[21]](_0x9b16[17],_0xb89axd,_0x9b16[20]);logger[_0x9b16[24]](_0x9b16[22],_0xb89axd,_0x9b16[20],JSON[_0x9b16[23]](_0xb89ax12));if(_0xb89ax12[_0x9b16[18]]){if(_0xb89ax12[_0x9b16[18]][_0x9b16[25]]=== 500){logger[_0x9b16[18]](_0x9b16[17],_0xb89axd,_0xb89ax12[_0x9b16[18]][_0x9b16[26]]);return _0xb89ax10(_0xb89ax12[_0x9b16[18]][_0x9b16[26]])};logger[_0x9b16[18]](_0x9b16[17],_0xb89axd,_0xb89ax12[_0x9b16[18]][_0x9b16[26]]);return _0xb89axf(_0xb89ax12[_0x9b16[18]][_0x9b16[26]])}else {logger[_0x9b16[21]](_0x9b16[17],_0xb89axd,_0x9b16[20]);_0xb89axf(_0xb89ax12[_0x9b16[27]][_0x9b16[26]])}})[_0x9b16[19]](function(_0xb89ax11){logger[_0x9b16[18]](_0x9b16[17],_0xb89axd,_0xb89ax11);_0xb89ax10(_0xb89ax11)})})}exports[_0x9b16[30]]= function(_0xb89axe){var _0xb89ax13=this;return  new Promise(function(_0xb89axf,_0xb89ax10){return db[_0x9b16[42]][_0x9b16[41]]({raw:_0xb89axe[_0x9b16[31]]?(_0xb89axe[_0x9b16[31]][_0x9b16[32]]=== undefined)?true:false:true,where:_0xb89axe[_0x9b16[31]]?_0xb89axe[_0x9b16[31]][_0x9b16[33]]|| null:null,attributes:[[db[_0x9b16[38]][_0x9b16[39]](_0x9b16[34],db[_0x9b16[38]][_0x9b16[39]](_0x9b16[35],db[_0x9b16[38]][_0x9b16[37]](_0x9b16[36]))),_0x9b16[40]]]})[_0x9b16[28]](function(_0xb89ax12){logger[_0x9b16[21]](_0x9b16[30],_0xb89axe);logger[_0x9b16[24]](_0x9b16[30],_0xb89axe,JSON[_0x9b16[23]](_0xb89ax12));_0xb89axf(_0xb89ax12)})[_0x9b16[19]](function(_0xb89ax11){logger[_0x9b16[18]](_0x9b16[30],_0xb89ax11[_0x9b16[26]],_0xb89axe);_0xb89ax10(_0xb89ax13[_0x9b16[18]](500,_0xb89ax11[_0x9b16[26]]))})})}
\ No newline at end of file
+var _0x293b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x2E\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x73\x6F\x63\x6B\x65\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x43\x4F\x55\x4E\x54","\x49\x46","\x60\x70\x61\x75\x73\x65\x64\x60\x20\x3D\x20\x31\x2C\x20\x31\x2C\x20\x6E\x75\x6C\x6C","\x6C\x69\x74\x65\x72\x61\x6C","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x6E","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65\x73","\x66\x69\x6E\x64\x41\x6C\x6C","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74"];_0x293b[0];var _=require(_0x293b[1]);var util=require(_0x293b[2]);var moment=require(_0x293b[3]);var BPromise=require(_0x293b[4]);var db=require(_0x293b[6])[_0x293b[5]];var utils=require(_0x293b[7]);var logger=require(_0x293b[9])(_0x293b[8]);var jayson=require(_0x293b[10]);var client=jayson[_0x293b[12]][_0x293b[11]]({port:9002});var socket=require(_0x293b[14])({host:_0x293b[13],port:6379});require(_0x293b[16])[_0x293b[15]](socket);function respondWithRpcPromise(_0x33f5xc,_0x33f5xd,_0x33f5xe){return  new BPromise(function(_0x33f5xf,_0x33f5x10){return client[_0x293b[29]](_0x33f5xc,_0x33f5xe)[_0x293b[28]](function(_0x33f5x12){logger[_0x293b[21]](_0x293b[17],_0x33f5xd,_0x293b[20]);logger[_0x293b[24]](_0x293b[22],_0x33f5xd,_0x293b[20],JSON[_0x293b[23]](_0x33f5x12));if(_0x33f5x12[_0x293b[18]]){if(_0x33f5x12[_0x293b[18]][_0x293b[25]]=== 500){logger[_0x293b[18]](_0x293b[17],_0x33f5xd,_0x33f5x12[_0x293b[18]][_0x293b[26]]);return _0x33f5x10(_0x33f5x12[_0x293b[18]][_0x293b[26]])};logger[_0x293b[18]](_0x293b[17],_0x33f5xd,_0x33f5x12[_0x293b[18]][_0x293b[26]]);return _0x33f5xf(_0x33f5x12[_0x293b[18]][_0x293b[26]])}else {logger[_0x293b[21]](_0x293b[17],_0x33f5xd,_0x293b[20]);_0x33f5xf(_0x33f5x12[_0x293b[27]][_0x293b[26]])}})[_0x293b[19]](function(_0x33f5x11){logger[_0x293b[18]](_0x293b[17],_0x33f5xd,_0x33f5x11);_0x33f5x10(_0x33f5x11)})})}exports[_0x293b[30]]= function(_0x33f5xe){var _0x33f5x13=this;return  new Promise(function(_0x33f5xf,_0x33f5x10){return db[_0x293b[42]][_0x293b[41]]({raw:_0x33f5xe[_0x293b[31]]?(_0x33f5xe[_0x293b[31]][_0x293b[32]]=== undefined)?true:false:true,where:_0x33f5xe[_0x293b[31]]?_0x33f5xe[_0x293b[31]][_0x293b[33]]|| null:null,attributes:[[db[_0x293b[38]][_0x293b[39]](_0x293b[34],db[_0x293b[38]][_0x293b[39]](_0x293b[35],db[_0x293b[38]][_0x293b[37]](_0x293b[36]))),_0x293b[40]]]})[_0x293b[28]](function(_0x33f5x12){logger[_0x293b[21]](_0x293b[30],_0x33f5xe);logger[_0x293b[24]](_0x293b[30],_0x33f5xe,JSON[_0x293b[23]](_0x33f5x12));_0x33f5xf(_0x33f5x12)})[_0x293b[19]](function(_0x33f5x11){logger[_0x293b[18]](_0x293b[30],_0x33f5x11[_0x293b[26]],_0x33f5xe);_0x33f5x10(_0x33f5x13[_0x293b[18]](500,_0x33f5x11[_0x293b[26]]))})})}
\ No newline at end of file
index 13460a1..c6b4ac3 100644 (file)
@@ -1 +1 @@
-var _0x6af9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x65\x76\x65\x6E\x74\x73","\x73\x61\x76\x65","\x72\x65\x6D\x6F\x76\x65","\x75\x70\x64\x61\x74\x65","\x65\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x6C\x65\x6E\x67\x74\x68","\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x3A","\x6F\x6E"];_0x6af9[0];var UserVoiceQueueRtEvents=require(_0x6af9[1]);var events=[_0x6af9[2],_0x6af9[3],_0x6af9[4]];function createListener(_0x7460x4,_0x7460x5){return function(_0x7460x6){_0x7460x5[_0x6af9[5]](_0x7460x4,_0x7460x6)}}function removeListener(_0x7460x4,_0x7460x8){return function(){UserVoiceQueueRtEvents[_0x6af9[6]](_0x7460x4,_0x7460x8)}}exports[_0x6af9[7]]= function(_0x7460x5){for(var _0x7460x9=0,_0x7460xa=events[_0x6af9[8]];_0x7460x9< _0x7460xa;_0x7460x9++){var _0x7460x4=events[_0x7460x9];var _0x7460x8=createListener(_0x6af9[9]+ _0x7460x4,_0x7460x5);UserVoiceQueueRtEvents[_0x6af9[10]](_0x7460x4,_0x7460x8)}}
\ No newline at end of file
+var _0x53aa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x65\x76\x65\x6E\x74\x73","\x73\x61\x76\x65","\x72\x65\x6D\x6F\x76\x65","\x75\x70\x64\x61\x74\x65","\x65\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x72\x65\x67\x69\x73\x74\x65\x72","\x6C\x65\x6E\x67\x74\x68","\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x3A","\x6F\x6E"];_0x53aa[0];var UserVoiceQueueRtEvents=require(_0x53aa[1]);var events=[_0x53aa[2],_0x53aa[3],_0x53aa[4]];function createListener(_0x2a87x4,_0x2a87x5){return function(_0x2a87x6){_0x2a87x5[_0x53aa[5]](_0x2a87x4,_0x2a87x6)}}function removeListener(_0x2a87x4,_0x2a87x8){return function(){UserVoiceQueueRtEvents[_0x53aa[6]](_0x2a87x4,_0x2a87x8)}}exports[_0x53aa[7]]= function(_0x2a87x5){for(var _0x2a87x9=0,_0x2a87xa=events[_0x53aa[8]];_0x2a87x9< _0x2a87xa;_0x2a87x9++){var _0x2a87x4=events[_0x2a87x9];var _0x2a87x8=createListener(_0x53aa[9]+ _0x2a87x4,_0x2a87x5);UserVoiceQueueRtEvents[_0x53aa[10]](_0x2a87x4,_0x2a87x8)}}
\ No newline at end of file
index a1c3ab9..aa27cff 100644 (file)
@@ -1 +1 @@
-var _0xf93e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf93e[0];var multer=require(_0xf93e[1]);var util=require(_0xf93e[2]);var path=require(_0xf93e[3]);var express=require(_0xf93e[4]);var router=express.Router();var auth=require(_0xf93e[5]);var config=require(_0xf93e[6]);var controller=require(_0xf93e[7]);router[_0xf93e[11]](_0xf93e[8],auth[_0xf93e[9]](),controller[_0xf93e[10]]);router[_0xf93e[11]](_0xf93e[12],auth[_0xf93e[9]](),controller[_0xf93e[13]]);router[_0xf93e[15]](_0xf93e[8],auth[_0xf93e[9]](),controller[_0xf93e[14]]);router[_0xf93e[17]](_0xf93e[12],auth[_0xf93e[9]](),controller[_0xf93e[16]]);router[_0xf93e[19]](_0xf93e[12],auth[_0xf93e[9]](),controller[_0xf93e[18]]);module[_0xf93e[20]]= router
\ No newline at end of file
+var _0x7138=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7138[0];var multer=require(_0x7138[1]);var util=require(_0x7138[2]);var path=require(_0x7138[3]);var express=require(_0x7138[4]);var router=express.Router();var auth=require(_0x7138[5]);var config=require(_0x7138[6]);var controller=require(_0x7138[7]);router[_0x7138[11]](_0x7138[8],auth[_0x7138[9]](),controller[_0x7138[10]]);router[_0x7138[11]](_0x7138[12],auth[_0x7138[9]](),controller[_0x7138[13]]);router[_0x7138[15]](_0x7138[8],auth[_0x7138[9]](),controller[_0x7138[14]]);router[_0x7138[17]](_0x7138[12],auth[_0x7138[9]](),controller[_0x7138[16]]);router[_0x7138[19]](_0x7138[12],auth[_0x7138[9]](),controller[_0x7138[18]]);module[_0x7138[20]]= router
\ No newline at end of file
index df5008d..9d7506a 100644 (file)
@@ -1 +1 @@
-var _0xb275=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0xb275[0];var Sequelize=require(_0xb275[1]);module[_0xb275[2]]= {name:{type:Sequelize[_0xb275[3]],unique:_0xb275[4],allowNull:false,validate:{notEmpty:true}},description:{type:Sequelize[_0xb275[3]]}}
\ No newline at end of file
+var _0x6468=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65"];_0x6468[0];var Sequelize=require(_0x6468[1]);module[_0x6468[2]]= {name:{type:Sequelize[_0x6468[3]],unique:_0x6468[4],allowNull:false,validate:{notEmpty:true}},description:{type:Sequelize[_0x6468[3]]}}
\ No newline at end of file
index 4887173..41cf2f2 100644 (file)
@@ -1 +1 @@
-var _0x7608=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x61\x72\x69\x61\x62\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x61\x72\x69\x61\x62\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x7608[0];var jsonpatch=require(_0x7608[1]);var rp=require(_0x7608[2]);var moment=require(_0x7608[3]);var BPromise=require(_0x7608[4]);var util=require(_0x7608[5]);var path=require(_0x7608[6]);var sox=require(_0x7608[7]);var ejs=require(_0x7608[8]);var fs=require(_0x7608[9]);var _=require(_0x7608[10]);var squel=require(_0x7608[11]);var crypto=require(_0x7608[12]);var jsforce=require(_0x7608[13]);var toCsv=require(_0x7608[14]);var qs=require(_0x7608[15]);var logger=require(_0x7608[17])(_0x7608[16]);var utils=require(_0x7608[18]);var config=require(_0x7608[19]);var db=require(_0x7608[21])[_0x7608[20]];function respondWithStatusCode(_0x3bb8x15,_0x3bb8x16,_0x3bb8x17){_0x3bb8x16= _0x3bb8x16|| 204;return function(_0x3bb8x18){if(_0x3bb8x18){logger[_0x7608[24]](_0x7608[22],_0x3bb8x17,_0x3bb8x16,_0x7608[23]);logger[_0x7608[26]](_0x7608[25],_0x3bb8x17,_0x3bb8x16,_0x7608[23]);return _0x3bb8x15[_0x7608[27]](_0x3bb8x16)};return _0x3bb8x15[_0x7608[29]](304)[_0x7608[28]]()}}function respondWithResult(_0x3bb8x15,_0x3bb8x16,_0x3bb8x17){_0x3bb8x16= _0x3bb8x16|| 200;return function(_0x3bb8x18){if(_0x3bb8x18){logger[_0x7608[24]](_0x7608[22],_0x3bb8x17,_0x3bb8x16,_0x7608[30]);logger[_0x7608[26]](_0x7608[25],_0x3bb8x17,_0x3bb8x16,_0x7608[30],JSON[_0x7608[31]](_0x3bb8x18));return _0x3bb8x15[_0x7608[29]](_0x3bb8x16)[_0x7608[32]](_0x3bb8x18)};return _0x3bb8x15[_0x7608[29]](304)[_0x7608[28]]()}}function respondWithFilteredResult(_0x3bb8x15,_0x3bb8x1b,_0x3bb8x17){return function(_0x3bb8x18){if(_0x3bb8x18){var _0x3bb8x1c=_0x3bb8x18[_0x7608[33]],_0x3bb8x1d=_0x3bb8x1b[_0x7608[34]],_0x3bb8x1e=_0x3bb8x1b[_0x7608[34]]+ _0x3bb8x1b[_0x7608[35]],_0x3bb8x16;if(_0x3bb8x1e>= _0x3bb8x1c){_0x3bb8x1e= _0x3bb8x1c;_0x3bb8x16= 200}else {_0x3bb8x16= 206};_0x3bb8x15[_0x7608[29]](_0x3bb8x16);logger[_0x7608[24]](_0x7608[22],_0x3bb8x17,_0x3bb8x16,_0x7608[36]);logger[_0x7608[26]](_0x7608[25],_0x3bb8x17,_0x3bb8x16,_0x7608[30],JSON[_0x7608[31]](_0x3bb8x18));return _0x3bb8x15[_0x7608[40]](_0x7608[37],_0x3bb8x1d+ _0x7608[38]+ _0x3bb8x1e+ _0x7608[39]+ _0x3bb8x1c)[_0x7608[32]](_0x3bb8x18)};return null}}function patchUpdates(_0x3bb8x20){return function(_0x3bb8x18){try{jsonpatch[_0x7608[41]](_0x3bb8x18,_0x3bb8x20,true)}catch(err){return BPromise[_0x7608[42]](err)};return _0x3bb8x18[_0x7608[43]]()}}function saveUpdates(_0x3bb8x22,_0x3bb8x16,_0x3bb8x17){return function(_0x3bb8x18){if(_0x3bb8x18){return _0x3bb8x18[_0x7608[46]](_0x3bb8x22)[_0x7608[45]](function(_0x3bb8x23){logger[_0x7608[24]](_0x7608[22],_0x3bb8x17,_0x3bb8x16,_0x7608[44]);logger[_0x7608[26]](_0x7608[25],_0x3bb8x17,_0x3bb8x16,_0x7608[44],JSON[_0x7608[31]](_0x3bb8x18));return _0x3bb8x23})};return null}}function removeEntity(_0x3bb8x15,_0x3bb8x16,_0x3bb8x17){return function(_0x3bb8x18){if(_0x3bb8x18){return _0x3bb8x18[_0x7608[48]]()[_0x7608[45]](function(){logger[_0x7608[24]](_0x7608[22],_0x3bb8x17,_0x3bb8x16,_0x7608[47]);logger[_0x7608[26]](_0x7608[25],_0x3bb8x17,_0x3bb8x16,_0x7608[47],JSON[_0x7608[31]](_0x3bb8x18));_0x3bb8x15[_0x7608[29]](204)[_0x7608[28]]()})}}}function handleEntityNotFound(_0x3bb8x15,_0x3bb8x16,_0x3bb8x17){return function(_0x3bb8x18){if(!_0x3bb8x18){logger[_0x7608[50]](_0x7608[22],_0x3bb8x17,404,_0x7608[49]);_0x3bb8x15[_0x7608[29]](404)[_0x7608[28]]();return null};return _0x3bb8x18}}function handleError(_0x3bb8x15,_0x3bb8x16,_0x3bb8x17){_0x3bb8x16= _0x3bb8x16|| 500;return function(_0x3bb8x27){logger[_0x7608[50]](_0x7608[22],_0x3bb8x17,_0x3bb8x16,JSON[_0x7608[31]](_0x3bb8x27));delete _0x3bb8x27[_0x7608[51]];_0x3bb8x15[_0x7608[29]](_0x3bb8x16)[_0x7608[52]](_0x3bb8x27)}}exports[_0x7608[53]]= function(_0x3bb8x28,_0x3bb8x15){var _0x3bb8x1b={},_0x3bb8x29={};_0x3bb8x29[_0x7608[54]]= _[_0x7608[57]](db[_0x7608[56]][_0x7608[55]]);_0x3bb8x29[_0x7608[58]]= _[_0x7608[57]](_0x3bb8x28[_0x7608[58]]);_0x3bb8x29[_0x7608[59]]= _[_0x7608[60]](_0x3bb8x29[_0x7608[54]],_0x3bb8x29[_0x7608[58]]);_0x3bb8x1b[_0x7608[61]]= _[_0x7608[60]](_0x3bb8x29[_0x7608[54]],qs[_0x7608[62]](_0x3bb8x28[_0x7608[58]][_0x7608[62]]));_0x3bb8x1b[_0x7608[61]]= (_0x3bb8x1b[_0x7608[61]][_0x7608[63]])?_0x3bb8x1b[_0x7608[61]]:_0x3bb8x29[_0x7608[54]];if(!_0x3bb8x28[_0x7608[58]][_0x7608[65]](_0x7608[64])){_0x3bb8x1b[_0x7608[35]]= qs[_0x7608[35]](_0x3bb8x28[_0x7608[58]][_0x7608[35]]);_0x3bb8x1b[_0x7608[34]]= qs[_0x7608[34]](_0x3bb8x28[_0x7608[58]][_0x7608[34]])};_0x3bb8x1b[_0x7608[66]]= qs[_0x7608[67]](_0x3bb8x28[_0x7608[58]][_0x7608[67]]);_0x3bb8x1b[_0x7608[68]]= qs[_0x7608[59]](_[_0x7608[69]](_0x3bb8x28[_0x7608[58]],_0x3bb8x29[_0x7608[59]]));if(_0x3bb8x28[_0x7608[58]][_0x7608[70]]){_0x3bb8x1b[_0x7608[68]]= _[_0x7608[73]](_0x3bb8x1b[_0x7608[68]],{$or:_[_0x7608[72]](_0x3bb8x1b[_0x7608[61]],function(_0x3bb8x2a){var _0x3bb8x2b={};_0x3bb8x2b[_0x3bb8x2a]= {$like:_0x7608[71]+ _0x3bb8x28[_0x7608[58]][_0x7608[70]]+ _0x7608[71]};return _0x3bb8x2b})})};_0x3bb8x1b= _[_0x7608[73]]({},_0x3bb8x1b,_0x3bb8x28[_0x7608[74]]);return db[_0x7608[56]][_0x7608[76]](_0x3bb8x1b)[_0x7608[45]](respondWithFilteredResult(_0x3bb8x15,_0x3bb8x1b,_0x7608[53]))[_0x7608[75]](handleError(_0x3bb8x15,null,_0x7608[53]))};exports[_0x7608[77]]= function(_0x3bb8x28,_0x3bb8x15){var _0x3bb8x1b={raw:true,where:{id:_0x3bb8x28[_0x7608[79]][_0x7608[78]]}},_0x3bb8x29={};_0x3bb8x29[_0x7608[54]]= _[_0x7608[57]](db[_0x7608[56]][_0x7608[55]]);_0x3bb8x29[_0x7608[58]]= _[_0x7608[57]](_0x3bb8x28[_0x7608[58]]);_0x3bb8x29[_0x7608[59]]= _[_0x7608[60]](_0x3bb8x29[_0x7608[54]],_0x3bb8x29[_0x7608[58]]);_0x3bb8x1b[_0x7608[61]]= _[_0x7608[60]](_0x3bb8x29[_0x7608[54]],qs[_0x7608[62]](_0x3bb8x28[_0x7608[58]][_0x7608[62]]));_0x3bb8x1b[_0x7608[61]]= (_0x3bb8x1b[_0x7608[61]][_0x7608[63]])?_0x3bb8x1b[_0x7608[61]]:_0x3bb8x29[_0x7608[54]];_0x3bb8x1b= _[_0x7608[73]]({},_0x3bb8x1b,_0x3bb8x28[_0x7608[74]]);return db[_0x7608[56]][_0x7608[80]](_0x3bb8x1b)[_0x7608[45]](handleEntityNotFound(_0x3bb8x15,null,_0x7608[77]))[_0x7608[45]](respondWithResult(_0x3bb8x15,null,_0x7608[77]))[_0x7608[75]](handleError(_0x3bb8x15,null,_0x7608[77]))};exports[_0x7608[81]]= function(_0x3bb8x28,_0x3bb8x15){return db[_0x7608[56]][_0x7608[81]](_0x3bb8x28[_0x7608[82]],{})[_0x7608[45]](respondWithResult(_0x3bb8x15,201,_0x7608[81]))[_0x7608[75]](handleError(_0x3bb8x15,null,_0x7608[81]))};exports[_0x7608[46]]= function(_0x3bb8x28,_0x3bb8x15){if(_0x3bb8x28[_0x7608[82]][_0x7608[78]]){delete _0x3bb8x28[_0x7608[82]][_0x7608[78]]};return db[_0x7608[56]][_0x7608[80]]({where:{id:_0x3bb8x28[_0x7608[79]][_0x7608[78]]}})[_0x7608[45]](handleEntityNotFound(_0x3bb8x15,null,_0x7608[46]))[_0x7608[45]](saveUpdates(_0x3bb8x28[_0x7608[82]],null,_0x7608[46]))[_0x7608[45]](respondWithResult(_0x3bb8x15,null,_0x7608[46]))[_0x7608[75]](handleError(_0x3bb8x15,null,_0x7608[46]))};exports[_0x7608[48]]= function(_0x3bb8x28,_0x3bb8x15){return db[_0x7608[56]][_0x7608[80]]({where:{id:_0x3bb8x28[_0x7608[79]][_0x7608[78]]}})[_0x7608[45]](handleEntityNotFound(_0x3bb8x15,null,_0x7608[48]))[_0x7608[45]](removeEntity(_0x3bb8x15,null,_0x7608[48]))[_0x7608[75]](handleError(_0x3bb8x15,null,_0x7608[48]))}
\ No newline at end of file
+var _0xd0ae=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x61\x72\x69\x61\x62\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x61\x72\x69\x61\x62\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xd0ae[0];var jsonpatch=require(_0xd0ae[1]);var rp=require(_0xd0ae[2]);var moment=require(_0xd0ae[3]);var BPromise=require(_0xd0ae[4]);var util=require(_0xd0ae[5]);var path=require(_0xd0ae[6]);var sox=require(_0xd0ae[7]);var ejs=require(_0xd0ae[8]);var fs=require(_0xd0ae[9]);var _=require(_0xd0ae[10]);var squel=require(_0xd0ae[11]);var crypto=require(_0xd0ae[12]);var jsforce=require(_0xd0ae[13]);var toCsv=require(_0xd0ae[14]);var qs=require(_0xd0ae[15]);var logger=require(_0xd0ae[17])(_0xd0ae[16]);var utils=require(_0xd0ae[18]);var config=require(_0xd0ae[19]);var db=require(_0xd0ae[21])[_0xd0ae[20]];function respondWithStatusCode(_0xc1d9x15,_0xc1d9x16,_0xc1d9x17){_0xc1d9x16= _0xc1d9x16|| 204;return function(_0xc1d9x18){if(_0xc1d9x18){logger[_0xd0ae[24]](_0xd0ae[22],_0xc1d9x17,_0xc1d9x16,_0xd0ae[23]);logger[_0xd0ae[26]](_0xd0ae[25],_0xc1d9x17,_0xc1d9x16,_0xd0ae[23]);return _0xc1d9x15[_0xd0ae[27]](_0xc1d9x16)};return _0xc1d9x15[_0xd0ae[29]](304)[_0xd0ae[28]]()}}function respondWithResult(_0xc1d9x15,_0xc1d9x16,_0xc1d9x17){_0xc1d9x16= _0xc1d9x16|| 200;return function(_0xc1d9x18){if(_0xc1d9x18){logger[_0xd0ae[24]](_0xd0ae[22],_0xc1d9x17,_0xc1d9x16,_0xd0ae[30]);logger[_0xd0ae[26]](_0xd0ae[25],_0xc1d9x17,_0xc1d9x16,_0xd0ae[30],JSON[_0xd0ae[31]](_0xc1d9x18));return _0xc1d9x15[_0xd0ae[29]](_0xc1d9x16)[_0xd0ae[32]](_0xc1d9x18)};return _0xc1d9x15[_0xd0ae[29]](304)[_0xd0ae[28]]()}}function respondWithFilteredResult(_0xc1d9x15,_0xc1d9x1b,_0xc1d9x17){return function(_0xc1d9x18){if(_0xc1d9x18){var _0xc1d9x1c=_0xc1d9x18[_0xd0ae[33]],_0xc1d9x1d=_0xc1d9x1b[_0xd0ae[34]],_0xc1d9x1e=_0xc1d9x1b[_0xd0ae[34]]+ _0xc1d9x1b[_0xd0ae[35]],_0xc1d9x16;if(_0xc1d9x1e>= _0xc1d9x1c){_0xc1d9x1e= _0xc1d9x1c;_0xc1d9x16= 200}else {_0xc1d9x16= 206};_0xc1d9x15[_0xd0ae[29]](_0xc1d9x16);logger[_0xd0ae[24]](_0xd0ae[22],_0xc1d9x17,_0xc1d9x16,_0xd0ae[36]);logger[_0xd0ae[26]](_0xd0ae[25],_0xc1d9x17,_0xc1d9x16,_0xd0ae[30],JSON[_0xd0ae[31]](_0xc1d9x18));return _0xc1d9x15[_0xd0ae[40]](_0xd0ae[37],_0xc1d9x1d+ _0xd0ae[38]+ _0xc1d9x1e+ _0xd0ae[39]+ _0xc1d9x1c)[_0xd0ae[32]](_0xc1d9x18)};return null}}function patchUpdates(_0xc1d9x20){return function(_0xc1d9x18){try{jsonpatch[_0xd0ae[41]](_0xc1d9x18,_0xc1d9x20,true)}catch(err){return BPromise[_0xd0ae[42]](err)};return _0xc1d9x18[_0xd0ae[43]]()}}function saveUpdates(_0xc1d9x22,_0xc1d9x16,_0xc1d9x17){return function(_0xc1d9x18){if(_0xc1d9x18){return _0xc1d9x18[_0xd0ae[46]](_0xc1d9x22)[_0xd0ae[45]](function(_0xc1d9x23){logger[_0xd0ae[24]](_0xd0ae[22],_0xc1d9x17,_0xc1d9x16,_0xd0ae[44]);logger[_0xd0ae[26]](_0xd0ae[25],_0xc1d9x17,_0xc1d9x16,_0xd0ae[44],JSON[_0xd0ae[31]](_0xc1d9x18));return _0xc1d9x23})};return null}}function removeEntity(_0xc1d9x15,_0xc1d9x16,_0xc1d9x17){return function(_0xc1d9x18){if(_0xc1d9x18){return _0xc1d9x18[_0xd0ae[48]]()[_0xd0ae[45]](function(){logger[_0xd0ae[24]](_0xd0ae[22],_0xc1d9x17,_0xc1d9x16,_0xd0ae[47]);logger[_0xd0ae[26]](_0xd0ae[25],_0xc1d9x17,_0xc1d9x16,_0xd0ae[47],JSON[_0xd0ae[31]](_0xc1d9x18));_0xc1d9x15[_0xd0ae[29]](204)[_0xd0ae[28]]()})}}}function handleEntityNotFound(_0xc1d9x15,_0xc1d9x16,_0xc1d9x17){return function(_0xc1d9x18){if(!_0xc1d9x18){logger[_0xd0ae[50]](_0xd0ae[22],_0xc1d9x17,404,_0xd0ae[49]);_0xc1d9x15[_0xd0ae[29]](404)[_0xd0ae[28]]();return null};return _0xc1d9x18}}function handleError(_0xc1d9x15,_0xc1d9x16,_0xc1d9x17){_0xc1d9x16= _0xc1d9x16|| 500;return function(_0xc1d9x27){logger[_0xd0ae[50]](_0xd0ae[22],_0xc1d9x17,_0xc1d9x16,JSON[_0xd0ae[31]](_0xc1d9x27));delete _0xc1d9x27[_0xd0ae[51]];_0xc1d9x15[_0xd0ae[29]](_0xc1d9x16)[_0xd0ae[52]](_0xc1d9x27)}}exports[_0xd0ae[53]]= function(_0xc1d9x28,_0xc1d9x15){var _0xc1d9x1b={},_0xc1d9x29={};_0xc1d9x29[_0xd0ae[54]]= _[_0xd0ae[57]](db[_0xd0ae[56]][_0xd0ae[55]]);_0xc1d9x29[_0xd0ae[58]]= _[_0xd0ae[57]](_0xc1d9x28[_0xd0ae[58]]);_0xc1d9x29[_0xd0ae[59]]= _[_0xd0ae[60]](_0xc1d9x29[_0xd0ae[54]],_0xc1d9x29[_0xd0ae[58]]);_0xc1d9x1b[_0xd0ae[61]]= _[_0xd0ae[60]](_0xc1d9x29[_0xd0ae[54]],qs[_0xd0ae[62]](_0xc1d9x28[_0xd0ae[58]][_0xd0ae[62]]));_0xc1d9x1b[_0xd0ae[61]]= (_0xc1d9x1b[_0xd0ae[61]][_0xd0ae[63]])?_0xc1d9x1b[_0xd0ae[61]]:_0xc1d9x29[_0xd0ae[54]];if(!_0xc1d9x28[_0xd0ae[58]][_0xd0ae[65]](_0xd0ae[64])){_0xc1d9x1b[_0xd0ae[35]]= qs[_0xd0ae[35]](_0xc1d9x28[_0xd0ae[58]][_0xd0ae[35]]);_0xc1d9x1b[_0xd0ae[34]]= qs[_0xd0ae[34]](_0xc1d9x28[_0xd0ae[58]][_0xd0ae[34]])};_0xc1d9x1b[_0xd0ae[66]]= qs[_0xd0ae[67]](_0xc1d9x28[_0xd0ae[58]][_0xd0ae[67]]);_0xc1d9x1b[_0xd0ae[68]]= qs[_0xd0ae[59]](_[_0xd0ae[69]](_0xc1d9x28[_0xd0ae[58]],_0xc1d9x29[_0xd0ae[59]]));if(_0xc1d9x28[_0xd0ae[58]][_0xd0ae[70]]){_0xc1d9x1b[_0xd0ae[68]]= _[_0xd0ae[73]](_0xc1d9x1b[_0xd0ae[68]],{$or:_[_0xd0ae[72]](_0xc1d9x1b[_0xd0ae[61]],function(_0xc1d9x2a){var _0xc1d9x2b={};_0xc1d9x2b[_0xc1d9x2a]= {$like:_0xd0ae[71]+ _0xc1d9x28[_0xd0ae[58]][_0xd0ae[70]]+ _0xd0ae[71]};return _0xc1d9x2b})})};_0xc1d9x1b= _[_0xd0ae[73]]({},_0xc1d9x1b,_0xc1d9x28[_0xd0ae[74]]);return db[_0xd0ae[56]][_0xd0ae[76]](_0xc1d9x1b)[_0xd0ae[45]](respondWithFilteredResult(_0xc1d9x15,_0xc1d9x1b,_0xd0ae[53]))[_0xd0ae[75]](handleError(_0xc1d9x15,null,_0xd0ae[53]))};exports[_0xd0ae[77]]= function(_0xc1d9x28,_0xc1d9x15){var _0xc1d9x1b={raw:true,where:{id:_0xc1d9x28[_0xd0ae[79]][_0xd0ae[78]]}},_0xc1d9x29={};_0xc1d9x29[_0xd0ae[54]]= _[_0xd0ae[57]](db[_0xd0ae[56]][_0xd0ae[55]]);_0xc1d9x29[_0xd0ae[58]]= _[_0xd0ae[57]](_0xc1d9x28[_0xd0ae[58]]);_0xc1d9x29[_0xd0ae[59]]= _[_0xd0ae[60]](_0xc1d9x29[_0xd0ae[54]],_0xc1d9x29[_0xd0ae[58]]);_0xc1d9x1b[_0xd0ae[61]]= _[_0xd0ae[60]](_0xc1d9x29[_0xd0ae[54]],qs[_0xd0ae[62]](_0xc1d9x28[_0xd0ae[58]][_0xd0ae[62]]));_0xc1d9x1b[_0xd0ae[61]]= (_0xc1d9x1b[_0xd0ae[61]][_0xd0ae[63]])?_0xc1d9x1b[_0xd0ae[61]]:_0xc1d9x29[_0xd0ae[54]];_0xc1d9x1b= _[_0xd0ae[73]]({},_0xc1d9x1b,_0xc1d9x28[_0xd0ae[74]]);return db[_0xd0ae[56]][_0xd0ae[80]](_0xc1d9x1b)[_0xd0ae[45]](handleEntityNotFound(_0xc1d9x15,null,_0xd0ae[77]))[_0xd0ae[45]](respondWithResult(_0xc1d9x15,null,_0xd0ae[77]))[_0xd0ae[75]](handleError(_0xc1d9x15,null,_0xd0ae[77]))};exports[_0xd0ae[81]]= function(_0xc1d9x28,_0xc1d9x15){return db[_0xd0ae[56]][_0xd0ae[81]](_0xc1d9x28[_0xd0ae[82]],{})[_0xd0ae[45]](respondWithResult(_0xc1d9x15,201,_0xd0ae[81]))[_0xd0ae[75]](handleError(_0xc1d9x15,null,_0xd0ae[81]))};exports[_0xd0ae[46]]= function(_0xc1d9x28,_0xc1d9x15){if(_0xc1d9x28[_0xd0ae[82]][_0xd0ae[78]]){delete _0xc1d9x28[_0xd0ae[82]][_0xd0ae[78]]};return db[_0xd0ae[56]][_0xd0ae[80]]({where:{id:_0xc1d9x28[_0xd0ae[79]][_0xd0ae[78]]}})[_0xd0ae[45]](handleEntityNotFound(_0xc1d9x15,null,_0xd0ae[46]))[_0xd0ae[45]](saveUpdates(_0xc1d9x28[_0xd0ae[82]],null,_0xd0ae[46]))[_0xd0ae[45]](respondWithResult(_0xc1d9x15,null,_0xd0ae[46]))[_0xd0ae[75]](handleError(_0xc1d9x15,null,_0xd0ae[46]))};exports[_0xd0ae[48]]= function(_0xc1d9x28,_0xc1d9x15){return db[_0xd0ae[56]][_0xd0ae[80]]({where:{id:_0xc1d9x28[_0xd0ae[79]][_0xd0ae[78]]}})[_0xd0ae[45]](handleEntityNotFound(_0xc1d9x15,null,_0xd0ae[48]))[_0xd0ae[45]](removeEntity(_0xc1d9x15,null,_0xd0ae[48]))[_0xd0ae[75]](handleError(_0xc1d9x15,null,_0xd0ae[48]))}
\ No newline at end of file
index d1f2117..b2c32b6 100644 (file)
@@ -1 +1 @@
-var _0x95d6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x61\x72\x69\x61\x62\x6C\x65","\x74\x6F\x6F\x6C\x73\x5F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x95d6[0];var _=require(_0x95d6[1]);var util=require(_0x95d6[2]);var logger=require(_0x95d6[4])(_0x95d6[3]);var attributes=require(_0x95d6[5]);module[_0x95d6[6]]= function(_0xe343x5,_0xe343x6){return _0xe343x5[_0x95d6[9]](_0x95d6[7],attributes,{tableName:_0x95d6[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x80c1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x61\x72\x69\x61\x62\x6C\x65","\x74\x6F\x6F\x6C\x73\x5F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0x80c1[0];var _=require(_0x80c1[1]);var util=require(_0x80c1[2]);var logger=require(_0x80c1[4])(_0x80c1[3]);var attributes=require(_0x80c1[5]);module[_0x80c1[6]]= function(_0x781ax5,_0x781ax6){return _0x781ax5[_0x80c1[9]](_0x80c1[7],attributes,{tableName:_0x80c1[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 14e9b40..423757b 100644 (file)
@@ -1 +1 @@
-var _0xf34f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x61\x72\x69\x61\x62\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x61\x72\x69\x61\x62\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x56\x61\x72\x69\x61\x62\x6C\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x56\x61\x72\x69\x61\x62\x6C\x65"];_0xf34f[0];var _=require(_0xf34f[1]);var util=require(_0xf34f[2]);var moment=require(_0xf34f[3]);var BPromise=require(_0xf34f[4]);var db=require(_0xf34f[6])[_0xf34f[5]];var utils=require(_0xf34f[7]);var logger=require(_0xf34f[9])(_0xf34f[8]);var jayson=require(_0xf34f[10]);var client=jayson[_0xf34f[12]][_0xf34f[11]]({port:9002});function respondWithRpcPromise(_0xd2c9xb,_0xd2c9xc,_0xd2c9xd){return  new BPromise(function(_0xd2c9xe,_0xd2c9xf){return client[_0xf34f[25]](_0xd2c9xb,_0xd2c9xd)[_0xf34f[24]](function(_0xd2c9x11){logger[_0xf34f[17]](_0xf34f[13],_0xd2c9xc,_0xf34f[16]);logger[_0xf34f[20]](_0xf34f[18],_0xd2c9xc,_0xf34f[16],JSON[_0xf34f[19]](_0xd2c9x11));if(_0xd2c9x11[_0xf34f[14]]){if(_0xd2c9x11[_0xf34f[14]][_0xf34f[21]]=== 500){logger[_0xf34f[14]](_0xf34f[13],_0xd2c9xc,_0xd2c9x11[_0xf34f[14]][_0xf34f[22]]);return _0xd2c9xf(_0xd2c9x11[_0xf34f[14]][_0xf34f[22]])};logger[_0xf34f[14]](_0xf34f[13],_0xd2c9xc,_0xd2c9x11[_0xf34f[14]][_0xf34f[22]]);return _0xd2c9xe(_0xd2c9x11[_0xf34f[14]][_0xf34f[22]])}else {logger[_0xf34f[17]](_0xf34f[13],_0xd2c9xc,_0xf34f[16]);_0xd2c9xe(_0xd2c9x11[_0xf34f[23]][_0xf34f[22]])}})[_0xf34f[15]](function(_0xd2c9x10){logger[_0xf34f[14]](_0xf34f[13],_0xd2c9xc,_0xd2c9x10);_0xd2c9xf(_0xd2c9x10)})})}exports[_0xf34f[26]]= function(_0xd2c9xd){var _0xd2c9x12=this;return  new Promise(function(_0xd2c9xe,_0xd2c9xf){return db[_0xf34f[36]][_0xf34f[35]]({raw:_0xd2c9xd[_0xf34f[27]]?(_0xd2c9xd[_0xf34f[27]][_0xf34f[28]]=== undefined)?true:false:true,where:_0xd2c9xd[_0xf34f[27]]?_0xd2c9xd[_0xf34f[27]][_0xf34f[29]]|| null:null,attributes:_0xd2c9xd[_0xf34f[27]]?_0xd2c9xd[_0xf34f[27]][_0xf34f[30]]|| null:null,include:_0xd2c9xd[_0xf34f[27]]?(_0xd2c9xd[_0xf34f[27]][_0xf34f[31]]?_[_0xf34f[34]](_0xd2c9xd[_0xf34f[27]][_0xf34f[31]],function(_0xd2c9x13){return {model:db[_0xd2c9x13[_0xf34f[32]]],as:_0xd2c9x13[_0xf34f[33]],attributes:_0xd2c9x13[_0xf34f[30]],include:_0xd2c9x13[_0xf34f[31]]?_[_0xf34f[34]](_0xd2c9x13[_0xf34f[31]],function(_0xd2c9x14){return {model:db[_0xd2c9x14[_0xf34f[32]]],as:_0xd2c9x14[_0xf34f[33]],attributes:_0xd2c9x14[_0xf34f[30]],include:_0xd2c9x14[_0xf34f[31]]?_[_0xf34f[34]](_0xd2c9x14[_0xf34f[31]],function(_0xd2c9x15){return {model:db[_0xd2c9x15[_0xf34f[32]]],as:_0xd2c9x15[_0xf34f[33]],attributes:_0xd2c9x15[_0xf34f[30]]}}):[]}}):[]}}):[]):[]})[_0xf34f[24]](function(_0xd2c9x11){logger[_0xf34f[17]](_0xf34f[26],_0xd2c9xd);logger[_0xf34f[20]](_0xf34f[26],_0xd2c9xd,JSON[_0xf34f[19]](_0xd2c9x11));_0xd2c9xe(_0xd2c9x11)})[_0xf34f[15]](function(_0xd2c9x10){logger[_0xf34f[14]](_0xf34f[26],_0xd2c9x10[_0xf34f[22]],_0xd2c9xd);_0xd2c9xf(_0xd2c9x12[_0xf34f[14]](500,_0xd2c9x10[_0xf34f[22]]))})})}
\ No newline at end of file
+var _0x3877=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x61\x72\x69\x61\x62\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x61\x72\x69\x61\x62\x6C\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x53\x68\x6F\x77\x56\x61\x72\x69\x61\x62\x6C\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64","\x56\x61\x72\x69\x61\x62\x6C\x65"];_0x3877[0];var _=require(_0x3877[1]);var util=require(_0x3877[2]);var moment=require(_0x3877[3]);var BPromise=require(_0x3877[4]);var db=require(_0x3877[6])[_0x3877[5]];var utils=require(_0x3877[7]);var logger=require(_0x3877[9])(_0x3877[8]);var jayson=require(_0x3877[10]);var client=jayson[_0x3877[12]][_0x3877[11]]({port:9002});function respondWithRpcPromise(_0x47adxb,_0x47adxc,_0x47adxd){return  new BPromise(function(_0x47adxe,_0x47adxf){return client[_0x3877[25]](_0x47adxb,_0x47adxd)[_0x3877[24]](function(_0x47adx11){logger[_0x3877[17]](_0x3877[13],_0x47adxc,_0x3877[16]);logger[_0x3877[20]](_0x3877[18],_0x47adxc,_0x3877[16],JSON[_0x3877[19]](_0x47adx11));if(_0x47adx11[_0x3877[14]]){if(_0x47adx11[_0x3877[14]][_0x3877[21]]=== 500){logger[_0x3877[14]](_0x3877[13],_0x47adxc,_0x47adx11[_0x3877[14]][_0x3877[22]]);return _0x47adxf(_0x47adx11[_0x3877[14]][_0x3877[22]])};logger[_0x3877[14]](_0x3877[13],_0x47adxc,_0x47adx11[_0x3877[14]][_0x3877[22]]);return _0x47adxe(_0x47adx11[_0x3877[14]][_0x3877[22]])}else {logger[_0x3877[17]](_0x3877[13],_0x47adxc,_0x3877[16]);_0x47adxe(_0x47adx11[_0x3877[23]][_0x3877[22]])}})[_0x3877[15]](function(_0x47adx10){logger[_0x3877[14]](_0x3877[13],_0x47adxc,_0x47adx10);_0x47adxf(_0x47adx10)})})}exports[_0x3877[26]]= function(_0x47adxd){var _0x47adx12=this;return  new Promise(function(_0x47adxe,_0x47adxf){return db[_0x3877[36]][_0x3877[35]]({raw:_0x47adxd[_0x3877[27]]?(_0x47adxd[_0x3877[27]][_0x3877[28]]=== undefined)?true:false:true,where:_0x47adxd[_0x3877[27]]?_0x47adxd[_0x3877[27]][_0x3877[29]]|| null:null,attributes:_0x47adxd[_0x3877[27]]?_0x47adxd[_0x3877[27]][_0x3877[30]]|| null:null,include:_0x47adxd[_0x3877[27]]?(_0x47adxd[_0x3877[27]][_0x3877[31]]?_[_0x3877[34]](_0x47adxd[_0x3877[27]][_0x3877[31]],function(_0x47adx13){return {model:db[_0x47adx13[_0x3877[32]]],as:_0x47adx13[_0x3877[33]],attributes:_0x47adx13[_0x3877[30]],include:_0x47adx13[_0x3877[31]]?_[_0x3877[34]](_0x47adx13[_0x3877[31]],function(_0x47adx14){return {model:db[_0x47adx14[_0x3877[32]]],as:_0x47adx14[_0x3877[33]],attributes:_0x47adx14[_0x3877[30]],include:_0x47adx14[_0x3877[31]]?_[_0x3877[34]](_0x47adx14[_0x3877[31]],function(_0x47adx15){return {model:db[_0x47adx15[_0x3877[32]]],as:_0x47adx15[_0x3877[33]],attributes:_0x47adx15[_0x3877[30]]}}):[]}}):[]}}):[]):[]})[_0x3877[24]](function(_0x47adx11){logger[_0x3877[17]](_0x3877[26],_0x47adxd);logger[_0x3877[20]](_0x3877[26],_0x47adxd,JSON[_0x3877[19]](_0x47adx11));_0x47adxe(_0x47adx11)})[_0x3877[15]](function(_0x47adx10){logger[_0x3877[14]](_0x3877[26],_0x47adx10[_0x3877[22]],_0x47adxd);_0x47adxf(_0x47adx12[_0x3877[14]](500,_0x47adx10[_0x3877[22]]))})})}
\ No newline at end of file
index a76f762..f64b300 100644 (file)
@@ -1 +1 @@
-var _0x43d2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x76\x65\x72\x73\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x66\x65\x74\x63\x68","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x66\x65\x74\x63\x68","\x2F\x72\x65\x73\x65\x74","\x72\x65\x73\x65\x74","\x2F\x70\x75\x6C\x6C","\x70\x75\x6C\x6C","\x2F\x72\x65\x73\x74\x61\x72\x74","\x72\x65\x73\x74\x61\x72\x74","\x2F\x6D\x69\x67\x72\x61\x74\x69\x6F\x6E\x73","\x6D\x69\x67\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x43d2[0];var express=require(_0x43d2[1]);var router=express.Router();var auth=require(_0x43d2[2]);var controller=require(_0x43d2[3]);router[_0x43d2[6]](_0x43d2[4],controller[_0x43d2[5]]);router[_0x43d2[6]](_0x43d2[7],auth[_0x43d2[8]](),controller[_0x43d2[9]]);router[_0x43d2[6]](_0x43d2[10],auth[_0x43d2[8]](),controller[_0x43d2[11]]);router[_0x43d2[6]](_0x43d2[12],auth[_0x43d2[8]](),controller[_0x43d2[13]]);router[_0x43d2[6]](_0x43d2[14],auth[_0x43d2[8]](),controller[_0x43d2[15]]);router[_0x43d2[6]](_0x43d2[16],controller[_0x43d2[17]]);module[_0x43d2[18]]= router
\ No newline at end of file
+var _0x1b15=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x76\x65\x72\x73\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x66\x65\x74\x63\x68","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x66\x65\x74\x63\x68","\x2F\x72\x65\x73\x65\x74","\x72\x65\x73\x65\x74","\x2F\x70\x75\x6C\x6C","\x70\x75\x6C\x6C","\x2F\x72\x65\x73\x74\x61\x72\x74","\x72\x65\x73\x74\x61\x72\x74","\x2F\x6D\x69\x67\x72\x61\x74\x69\x6F\x6E\x73","\x6D\x69\x67\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x1b15[0];var express=require(_0x1b15[1]);var router=express.Router();var auth=require(_0x1b15[2]);var controller=require(_0x1b15[3]);router[_0x1b15[6]](_0x1b15[4],controller[_0x1b15[5]]);router[_0x1b15[6]](_0x1b15[7],auth[_0x1b15[8]](),controller[_0x1b15[9]]);router[_0x1b15[6]](_0x1b15[10],auth[_0x1b15[8]](),controller[_0x1b15[11]]);router[_0x1b15[6]](_0x1b15[12],auth[_0x1b15[8]](),controller[_0x1b15[13]]);router[_0x1b15[6]](_0x1b15[14],auth[_0x1b15[8]](),controller[_0x1b15[15]]);router[_0x1b15[6]](_0x1b15[16],controller[_0x1b15[17]]);module[_0x1b15[18]]= router
\ No newline at end of file
index a620a98..1e819fd 100644 (file)
@@ -1 +1 @@
-var _0xecae=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x6D\x7A\x75\x67","\x70\x61\x74\x68","\x76\x65\x72\x73\x69\x6F\x6E","\x70\x6B\x67\x69\x6E\x66\x6F","\x65\x78\x65\x63","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x70\x6D\x32","\x75\x70\x64\x61\x74\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x72\x6F\x6F\x74","\x73\x69\x6D\x70\x6C\x65\x2D\x67\x69\x74","\x69\x6E\x64\x65\x78","\x65\x78\x70\x6F\x72\x74\x73","\x6C\x61\x74\x65\x73\x74","\x32\x2E\x30\x2E\x30","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x74\x61\x67\x73","\x66\x65\x74\x63\x68","\x6F\x72\x69\x67\x69\x6E","\x6D\x61\x73\x74\x65\x72","\x65\x72\x72\x6F\x72","\x67\x69\x74\x20\x66\x65\x74\x63\x68","\x69\x6E\x66\x6F","\x67\x69\x74\x20\x66\x65\x74\x63\x68\x20\x6F\x72\x69\x67\x69\x6E\x20\x6D\x61\x73\x74\x65\x72","\x72\x65\x73\x65\x74","\x2D\x2D\x68\x61\x72\x64","\x46\x45\x54\x43\x48\x5F\x48\x45\x41\x44","\x67\x69\x74\x20\x72\x65\x73\x65\x74\x20\x2D\x2D\x68\x61\x72\x64\x20\x46\x45\x54\x43\x48\x5F\x48\x45\x41\x44","\x67\x69\x74\x20\x72\x65\x73\x65\x74\x20\x2D\x2D\x68\x61\x72\x64","\x70\x75\x6C\x6C","\x6E\x70\x6D\x20\x69\x6E\x73\x74\x61\x6C\x6C\x20\x2D\x2D\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x72\x65\x73\x74\x61\x72\x74","\x63\x61\x74\x63\x68","\x70\x6D\x32\x20\x72\x65\x73\x74\x61\x72\x74\x20\x6D\x6F\x74\x69\x6F\x6E\x20\x25\x73","\x59\x6F\x75\x72\x20\x73\x79\x73\x74\x65\x6D\x20\x68\x61\x73\x20\x62\x65\x65\x6E\x20\x72\x65\x73\x74\x61\x72\x74\x20\x73\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79","\x74\x68\x65\x6E","\x6D\x6F\x74\x69\x6F\x6E\x32","\x6D\x69\x67\x72\x61\x74\x69\x6F\x6E\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x67\x65\x74\x51\x75\x65\x72\x79\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x4D\x69\x67\x72\x61\x74\x69\x6F\x6E\x20\x74\x72\x69\x65\x64\x20\x74\x6F\x20\x75\x73\x65\x20\x6F\x6C\x64\x20\x73\x74\x79\x6C\x65\x20\x22\x64\x6F\x6E\x65\x22\x20\x63\x61\x6C\x6C\x62\x61\x63\x6B\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x70\x67\x72\x61\x64\x65\x20\x74\x6F\x20\x22\x75\x6D\x7A\x75\x67\x22\x20\x61\x6E\x64\x20\x72\x65\x74\x75\x72\x6E\x20\x61\x20\x70\x72\x6F\x6D\x69\x73\x65\x20\x69\x6E\x73\x74\x65\x61\x64\x2E","\x73\x65\x72\x76\x65\x72","\x6A\x6F\x69\x6E","\x44\x61\x74\x61\x62\x61\x73\x65\x20\x4D\x69\x67\x72\x61\x74\x69\x6F\x6E\x20\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64\x21","\x75\x70"];_0xecae[0];var Umzug=require(_0xecae[1]);var path=require(_0xecae[2]);var pkginfo=require(_0xecae[4])(module,_0xecae[3]);var exec=require(_0xecae[6])[_0xecae[5]];var db=require(_0xecae[8])[_0xecae[7]];var config=require(_0xecae[9]);var pm2=require(_0xecae[10]);var logger=require(_0xecae[12])(_0xecae[11]);var git=require(_0xecae[14])(config[_0xecae[13]]);exports[_0xecae[15]]= function(_0x935exa,_0x935exb){return git[_0xecae[22]]()[_0xecae[21]](function(_0x935exc,_0x935exd){return _0x935exb[_0xecae[20]](200)[_0xecae[19]]({latest:(_0x935exc?module[_0xecae[16]][_0xecae[3]]:_0x935exd[_0xecae[17]])|| _0xecae[18],current:module[_0xecae[16]][_0xecae[3]],phonebar:2})})};exports[_0xecae[22]]= function(_0x935exa,_0x935exb){return git[_0xecae[22]]([_0xecae[23],_0xecae[24]],function(_0x935exc){if(_0x935exc){logger[_0xecae[25]](_0x935exc);return _0x935exb[_0xecae[20]](500)[_0xecae[19]](_0x935exc)};logger[_0xecae[27]](_0xecae[26]);return _0x935exb[_0xecae[20]](200)[_0xecae[19]]({output:_0xecae[28]})})};exports[_0xecae[29]]= function(_0x935exa,_0x935exb){return git[_0xecae[29]]([_0xecae[30],_0xecae[31]],function(_0x935exc){if(_0x935exc){logger[_0xecae[25]](_0x935exc);return _0x935exb[_0xecae[20]](500)[_0xecae[19]](_0x935exc)};logger[_0xecae[27]](_0xecae[32]);return _0x935exb[_0xecae[20]](200)[_0xecae[19]]({output:_0xecae[33]})})};exports[_0xecae[34]]= function(_0x935exa,_0x935exb){exec(_0xecae[35],function(_0x935exc,_0x935exe,_0x935exf){logger[_0xecae[27]](_0x935exe);logger[_0xecae[27]](_0x935exf);if(_0x935exc){logger[_0xecae[25]](_0x935exc);return _0x935exb[_0xecae[20]](500)[_0xecae[19]](_0x935exc)};return _0x935exb[_0xecae[20]](200)[_0xecae[19]]({output:_0x935exe})})};exports[_0xecae[36]]= function(_0x935exa,_0x935exb){return pm2[_0xecae[36]](_0xecae[41])[_0xecae[40]](function(_0x935ex10){logger[_0xecae[27]](_0xecae[38],_0x935ex10);return _0x935exb[_0xecae[20]](200)[_0xecae[19]]({output:_0xecae[39]})})[_0xecae[37]](function(_0x935exc){logger[_0xecae[25]](_0x935exc);return _0x935exb[_0xecae[20]](500)[_0xecae[19]](_0x935exc)})};exports[_0xecae[42]]= function(_0x935exa,_0x935exb){var _0x935ex11= new Umzug({storage:_0xecae[43],storageOptions:{sequelize:db[_0xecae[43]],tableName:_0xecae[42],columnName:_0xecae[3]},migrations:{params:[db[_0xecae[43]][_0xecae[44]](),db[_0xecae[43]][_0xecae[45]],function(){throw  new Error(_0xecae[46])}],path:path[_0xecae[48]](config[_0xecae[13]],_0xecae[47],_0xecae[42]),pattern:/\.js$/}});_0x935ex11[_0xecae[50]]()[_0xecae[40]](function(){return _0x935exb[_0xecae[20]](200)[_0xecae[19]]({output:_0xecae[49]})})[_0xecae[37]](function(_0x935exc){return _0x935exb[_0xecae[20]](500)[_0xecae[19]](_0x935exc)})}
\ No newline at end of file
+var _0x4de7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x6D\x7A\x75\x67","\x70\x61\x74\x68","\x76\x65\x72\x73\x69\x6F\x6E","\x70\x6B\x67\x69\x6E\x66\x6F","\x65\x78\x65\x63","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x70\x6D\x32","\x75\x70\x64\x61\x74\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x72\x6F\x6F\x74","\x73\x69\x6D\x70\x6C\x65\x2D\x67\x69\x74","\x69\x6E\x64\x65\x78","\x65\x78\x70\x6F\x72\x74\x73","\x6C\x61\x74\x65\x73\x74","\x32\x2E\x30\x2E\x30","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x74\x61\x67\x73","\x66\x65\x74\x63\x68","\x6F\x72\x69\x67\x69\x6E","\x6D\x61\x73\x74\x65\x72","\x65\x72\x72\x6F\x72","\x67\x69\x74\x20\x66\x65\x74\x63\x68","\x69\x6E\x66\x6F","\x67\x69\x74\x20\x66\x65\x74\x63\x68\x20\x6F\x72\x69\x67\x69\x6E\x20\x6D\x61\x73\x74\x65\x72","\x72\x65\x73\x65\x74","\x2D\x2D\x68\x61\x72\x64","\x46\x45\x54\x43\x48\x5F\x48\x45\x41\x44","\x67\x69\x74\x20\x72\x65\x73\x65\x74\x20\x2D\x2D\x68\x61\x72\x64\x20\x46\x45\x54\x43\x48\x5F\x48\x45\x41\x44","\x67\x69\x74\x20\x72\x65\x73\x65\x74\x20\x2D\x2D\x68\x61\x72\x64","\x70\x75\x6C\x6C","\x6E\x70\x6D\x20\x69\x6E\x73\x74\x61\x6C\x6C\x20\x2D\x2D\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x72\x65\x73\x74\x61\x72\x74","\x63\x61\x74\x63\x68","\x70\x6D\x32\x20\x72\x65\x73\x74\x61\x72\x74\x20\x6D\x6F\x74\x69\x6F\x6E\x20\x25\x73","\x59\x6F\x75\x72\x20\x73\x79\x73\x74\x65\x6D\x20\x68\x61\x73\x20\x62\x65\x65\x6E\x20\x72\x65\x73\x74\x61\x72\x74\x20\x73\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79","\x74\x68\x65\x6E","\x6D\x6F\x74\x69\x6F\x6E\x32","\x6D\x69\x67\x72\x61\x74\x69\x6F\x6E\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x67\x65\x74\x51\x75\x65\x72\x79\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x4D\x69\x67\x72\x61\x74\x69\x6F\x6E\x20\x74\x72\x69\x65\x64\x20\x74\x6F\x20\x75\x73\x65\x20\x6F\x6C\x64\x20\x73\x74\x79\x6C\x65\x20\x22\x64\x6F\x6E\x65\x22\x20\x63\x61\x6C\x6C\x62\x61\x63\x6B\x2E\x20\x50\x6C\x65\x61\x73\x65\x20\x75\x70\x67\x72\x61\x64\x65\x20\x74\x6F\x20\x22\x75\x6D\x7A\x75\x67\x22\x20\x61\x6E\x64\x20\x72\x65\x74\x75\x72\x6E\x20\x61\x20\x70\x72\x6F\x6D\x69\x73\x65\x20\x69\x6E\x73\x74\x65\x61\x64\x2E","\x73\x65\x72\x76\x65\x72","\x6A\x6F\x69\x6E","\x44\x61\x74\x61\x62\x61\x73\x65\x20\x4D\x69\x67\x72\x61\x74\x69\x6F\x6E\x20\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64\x21","\x75\x70"];_0x4de7[0];var Umzug=require(_0x4de7[1]);var path=require(_0x4de7[2]);var pkginfo=require(_0x4de7[4])(module,_0x4de7[3]);var exec=require(_0x4de7[6])[_0x4de7[5]];var db=require(_0x4de7[8])[_0x4de7[7]];var config=require(_0x4de7[9]);var pm2=require(_0x4de7[10]);var logger=require(_0x4de7[12])(_0x4de7[11]);var git=require(_0x4de7[14])(config[_0x4de7[13]]);exports[_0x4de7[15]]= function(_0x6ac0xa,_0x6ac0xb){return git[_0x4de7[22]]()[_0x4de7[21]](function(_0x6ac0xc,_0x6ac0xd){return _0x6ac0xb[_0x4de7[20]](200)[_0x4de7[19]]({latest:(_0x6ac0xc?module[_0x4de7[16]][_0x4de7[3]]:_0x6ac0xd[_0x4de7[17]])|| _0x4de7[18],current:module[_0x4de7[16]][_0x4de7[3]],phonebar:2})})};exports[_0x4de7[22]]= function(_0x6ac0xa,_0x6ac0xb){return git[_0x4de7[22]]([_0x4de7[23],_0x4de7[24]],function(_0x6ac0xc){if(_0x6ac0xc){logger[_0x4de7[25]](_0x6ac0xc);return _0x6ac0xb[_0x4de7[20]](500)[_0x4de7[19]](_0x6ac0xc)};logger[_0x4de7[27]](_0x4de7[26]);return _0x6ac0xb[_0x4de7[20]](200)[_0x4de7[19]]({output:_0x4de7[28]})})};exports[_0x4de7[29]]= function(_0x6ac0xa,_0x6ac0xb){return git[_0x4de7[29]]([_0x4de7[30],_0x4de7[31]],function(_0x6ac0xc){if(_0x6ac0xc){logger[_0x4de7[25]](_0x6ac0xc);return _0x6ac0xb[_0x4de7[20]](500)[_0x4de7[19]](_0x6ac0xc)};logger[_0x4de7[27]](_0x4de7[32]);return _0x6ac0xb[_0x4de7[20]](200)[_0x4de7[19]]({output:_0x4de7[33]})})};exports[_0x4de7[34]]= function(_0x6ac0xa,_0x6ac0xb){exec(_0x4de7[35],function(_0x6ac0xc,_0x6ac0xe,_0x6ac0xf){logger[_0x4de7[27]](_0x6ac0xe);logger[_0x4de7[27]](_0x6ac0xf);if(_0x6ac0xc){logger[_0x4de7[25]](_0x6ac0xc);return _0x6ac0xb[_0x4de7[20]](500)[_0x4de7[19]](_0x6ac0xc)};return _0x6ac0xb[_0x4de7[20]](200)[_0x4de7[19]]({output:_0x6ac0xe})})};exports[_0x4de7[36]]= function(_0x6ac0xa,_0x6ac0xb){return pm2[_0x4de7[36]](_0x4de7[41])[_0x4de7[40]](function(_0x6ac0x10){logger[_0x4de7[27]](_0x4de7[38],_0x6ac0x10);return _0x6ac0xb[_0x4de7[20]](200)[_0x4de7[19]]({output:_0x4de7[39]})})[_0x4de7[37]](function(_0x6ac0xc){logger[_0x4de7[25]](_0x6ac0xc);return _0x6ac0xb[_0x4de7[20]](500)[_0x4de7[19]](_0x6ac0xc)})};exports[_0x4de7[42]]= function(_0x6ac0xa,_0x6ac0xb){var _0x6ac0x11= new Umzug({storage:_0x4de7[43],storageOptions:{sequelize:db[_0x4de7[43]],tableName:_0x4de7[42],columnName:_0x4de7[3]},migrations:{params:[db[_0x4de7[43]][_0x4de7[44]](),db[_0x4de7[43]][_0x4de7[45]],function(){throw  new Error(_0x4de7[46])}],path:path[_0x4de7[48]](config[_0x4de7[13]],_0x4de7[47],_0x4de7[42]),pattern:/\.js$/}});_0x6ac0x11[_0x4de7[50]]()[_0x4de7[40]](function(){return _0x6ac0xb[_0x4de7[20]](200)[_0x4de7[19]]({output:_0x4de7[49]})})[_0x4de7[37]](function(_0x6ac0xc){return _0x6ac0xb[_0x4de7[20]](500)[_0x4de7[19]](_0x6ac0xc)})}
\ No newline at end of file
index 9150c98..9b48c5a 100644 (file)
@@ -1 +1 @@
-var _0x590e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x590e[0];var multer=require(_0x590e[1]);var util=require(_0x590e[2]);var path=require(_0x590e[3]);var express=require(_0x590e[4]);var router=express.Router();var auth=require(_0x590e[5]);var config=require(_0x590e[6]);var controller=require(_0x590e[7]);router[_0x590e[11]](_0x590e[8],auth[_0x590e[9]](),controller[_0x590e[10]]);router[_0x590e[11]](_0x590e[12],auth[_0x590e[9]](),controller[_0x590e[13]]);router[_0x590e[11]](_0x590e[14],auth[_0x590e[9]](),controller[_0x590e[15]]);router[_0x590e[17]](_0x590e[8],auth[_0x590e[9]](),controller[_0x590e[16]]);router[_0x590e[19]](_0x590e[14],auth[_0x590e[9]](),controller[_0x590e[18]]);router[_0x590e[21]](_0x590e[14],auth[_0x590e[9]](),controller[_0x590e[20]]);module[_0x590e[22]]= router
\ No newline at end of file
+var _0x42ff=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x42ff[0];var multer=require(_0x42ff[1]);var util=require(_0x42ff[2]);var path=require(_0x42ff[3]);var express=require(_0x42ff[4]);var router=express.Router();var auth=require(_0x42ff[5]);var config=require(_0x42ff[6]);var controller=require(_0x42ff[7]);router[_0x42ff[11]](_0x42ff[8],auth[_0x42ff[9]](),controller[_0x42ff[10]]);router[_0x42ff[11]](_0x42ff[12],auth[_0x42ff[9]](),controller[_0x42ff[13]]);router[_0x42ff[11]](_0x42ff[14],auth[_0x42ff[9]](),controller[_0x42ff[15]]);router[_0x42ff[17]](_0x42ff[8],auth[_0x42ff[9]](),controller[_0x42ff[16]]);router[_0x42ff[19]](_0x42ff[14],auth[_0x42ff[9]](),controller[_0x42ff[18]]);router[_0x42ff[21]](_0x42ff[14],auth[_0x42ff[9]](),controller[_0x42ff[20]]);module[_0x42ff[22]]= router
\ No newline at end of file
index 3b80103..6a56950 100644 (file)
@@ -1 +1 @@
-var _0x1f25=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x1f25[0];var Sequelize=require(_0x1f25[1]);module[_0x1f25[2]]= {type:{type:Sequelize[_0x1f25[3]]},uniqueid:{type:Sequelize[_0x1f25[3]]},calleridnum:{type:Sequelize[_0x1f25[3]]},calleridname:{type:Sequelize[_0x1f25[3]]},queue:{type:Sequelize[_0x1f25[3]]},interface:{type:Sequelize[_0x1f25[3]]},membername:{type:Sequelize[_0x1f25[3]]},agentcalledAt:{type:Sequelize[_0x1f25[4]]},agentconnectAt:{type:Sequelize[_0x1f25[4]]},agentcompleteAt:{type:Sequelize[_0x1f25[4]]},agentringnoanswerAt:{type:Sequelize[_0x1f25[4]]},agentdumpAt:{type:Sequelize[_0x1f25[4]]},holdtime:{type:Sequelize[_0x1f25[5]]},agentcomplete:{type:Sequelize[_0x1f25[6]],defaultValue:false},agentringnoanswer:{type:Sequelize[_0x1f25[6]],defaultValue:false},agentdump:{type:Sequelize[_0x1f25[6]],defaultValue:false},talktime:{type:Sequelize[_0x1f25[5]]},agentacw:{type:Sequelize[_0x1f25[6]],defaultValue:false},acwtime:{type:Sequelize[_0x1f25[5]]},reason:{type:Sequelize[_0x1f25[3]]},lastevent:{type:Sequelize[_0x1f25[3]]},channel:{type:Sequelize[_0x1f25[3]]},channelstate:{type:Sequelize[_0x1f25[5]]},channelstatedesc:{type:Sequelize[_0x1f25[3]]},connectedlinenum:{type:Sequelize[_0x1f25[3]]},connectedlinename:{type:Sequelize[_0x1f25[3]]},language:{type:Sequelize[_0x1f25[3]]},accountcode:{type:Sequelize[_0x1f25[3]]},context:{type:Sequelize[_0x1f25[3]]},exten:{type:Sequelize[_0x1f25[3]]},priority:{type:Sequelize[_0x1f25[3]]},destchannel:{type:Sequelize[_0x1f25[3]]},destchannelstate:{type:Sequelize[_0x1f25[5]]},destchannelstatedesc:{type:Sequelize[_0x1f25[3]]},destcalleridnum:{type:Sequelize[_0x1f25[3]]},destcalleridname:{type:Sequelize[_0x1f25[3]]},destconnectedlinenum:{type:Sequelize[_0x1f25[3]]},destconnectedlinename:{type:Sequelize[_0x1f25[3]]},destlanguage:{type:Sequelize[_0x1f25[3]]},destaccountcode:{type:Sequelize[_0x1f25[3]]},destcontext:{type:Sequelize[_0x1f25[3]]},destexten:{type:Sequelize[_0x1f25[3]]},destpriority:{type:Sequelize[_0x1f25[3]]},destuniqueid:{type:Sequelize[_0x1f25[3]]},answeredelsewheredestinationuniqueid:{type:Sequelize[_0x1f25[3]]},answeredelsewheremembername:{type:Sequelize[_0x1f25[3]]}}
\ No newline at end of file
+var _0x3b3b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x3b3b[0];var Sequelize=require(_0x3b3b[1]);module[_0x3b3b[2]]= {type:{type:Sequelize[_0x3b3b[3]]},uniqueid:{type:Sequelize[_0x3b3b[3]]},calleridnum:{type:Sequelize[_0x3b3b[3]]},calleridname:{type:Sequelize[_0x3b3b[3]]},queue:{type:Sequelize[_0x3b3b[3]]},interface:{type:Sequelize[_0x3b3b[3]]},membername:{type:Sequelize[_0x3b3b[3]]},agentcalledAt:{type:Sequelize[_0x3b3b[4]]},agentconnectAt:{type:Sequelize[_0x3b3b[4]]},agentcompleteAt:{type:Sequelize[_0x3b3b[4]]},agentringnoanswerAt:{type:Sequelize[_0x3b3b[4]]},agentdumpAt:{type:Sequelize[_0x3b3b[4]]},holdtime:{type:Sequelize[_0x3b3b[5]]},agentcomplete:{type:Sequelize[_0x3b3b[6]],defaultValue:false},agentringnoanswer:{type:Sequelize[_0x3b3b[6]],defaultValue:false},agentdump:{type:Sequelize[_0x3b3b[6]],defaultValue:false},talktime:{type:Sequelize[_0x3b3b[5]]},agentacw:{type:Sequelize[_0x3b3b[6]],defaultValue:false},acwtime:{type:Sequelize[_0x3b3b[5]]},reason:{type:Sequelize[_0x3b3b[3]]},lastevent:{type:Sequelize[_0x3b3b[3]]},channel:{type:Sequelize[_0x3b3b[3]]},channelstate:{type:Sequelize[_0x3b3b[5]]},channelstatedesc:{type:Sequelize[_0x3b3b[3]]},connectedlinenum:{type:Sequelize[_0x3b3b[3]]},connectedlinename:{type:Sequelize[_0x3b3b[3]]},language:{type:Sequelize[_0x3b3b[3]]},accountcode:{type:Sequelize[_0x3b3b[3]]},context:{type:Sequelize[_0x3b3b[3]]},exten:{type:Sequelize[_0x3b3b[3]]},priority:{type:Sequelize[_0x3b3b[3]]},destchannel:{type:Sequelize[_0x3b3b[3]]},destchannelstate:{type:Sequelize[_0x3b3b[5]]},destchannelstatedesc:{type:Sequelize[_0x3b3b[3]]},destcalleridnum:{type:Sequelize[_0x3b3b[3]]},destcalleridname:{type:Sequelize[_0x3b3b[3]]},destconnectedlinenum:{type:Sequelize[_0x3b3b[3]]},destconnectedlinename:{type:Sequelize[_0x3b3b[3]]},destlanguage:{type:Sequelize[_0x3b3b[3]]},destaccountcode:{type:Sequelize[_0x3b3b[3]]},destcontext:{type:Sequelize[_0x3b3b[3]]},destexten:{type:Sequelize[_0x3b3b[3]]},destpriority:{type:Sequelize[_0x3b3b[3]]},destuniqueid:{type:Sequelize[_0x3b3b[3]]},answeredelsewheredestinationuniqueid:{type:Sequelize[_0x3b3b[3]]},answeredelsewheremembername:{type:Sequelize[_0x3b3b[3]]}}
\ No newline at end of file
index 71ae018..fb741aa 100644 (file)
@@ -1 +1 @@
-var _0xfc52=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xfc52[0];var jsonpatch=require(_0xfc52[1]);var rp=require(_0xfc52[2]);var moment=require(_0xfc52[3]);var BPromise=require(_0xfc52[4]);var util=require(_0xfc52[5]);var path=require(_0xfc52[6]);var sox=require(_0xfc52[7]);var ejs=require(_0xfc52[8]);var fs=require(_0xfc52[9]);var _=require(_0xfc52[10]);var squel=require(_0xfc52[11]);var crypto=require(_0xfc52[12]);var jsforce=require(_0xfc52[13]);var toCsv=require(_0xfc52[14]);var qs=require(_0xfc52[15]);var logger=require(_0xfc52[17])(_0xfc52[16]);var utils=require(_0xfc52[18]);var config=require(_0xfc52[19]);var db=require(_0xfc52[21])[_0xfc52[20]];function respondWithStatusCode(_0x1b79x15,_0x1b79x16,_0x1b79x17){_0x1b79x16= _0x1b79x16|| 204;return function(_0x1b79x18){if(_0x1b79x18){logger[_0xfc52[24]](_0xfc52[22],_0x1b79x17,_0x1b79x16,_0xfc52[23]);logger[_0xfc52[26]](_0xfc52[25],_0x1b79x17,_0x1b79x16,_0xfc52[23]);return _0x1b79x15[_0xfc52[27]](_0x1b79x16)};return _0x1b79x15[_0xfc52[29]](304)[_0xfc52[28]]()}}function respondWithResult(_0x1b79x15,_0x1b79x16,_0x1b79x17){_0x1b79x16= _0x1b79x16|| 200;return function(_0x1b79x18){if(_0x1b79x18){logger[_0xfc52[24]](_0xfc52[22],_0x1b79x17,_0x1b79x16,_0xfc52[30]);logger[_0xfc52[26]](_0xfc52[25],_0x1b79x17,_0x1b79x16,_0xfc52[30],JSON[_0xfc52[31]](_0x1b79x18));return _0x1b79x15[_0xfc52[29]](_0x1b79x16)[_0xfc52[32]](_0x1b79x18)};return _0x1b79x15[_0xfc52[29]](304)[_0xfc52[28]]()}}function respondWithFilteredResult(_0x1b79x15,_0x1b79x1b,_0x1b79x17){return function(_0x1b79x18){if(_0x1b79x18){var _0x1b79x1c=_0x1b79x18[_0xfc52[33]],_0x1b79x1d=_0x1b79x1b[_0xfc52[34]],_0x1b79x1e=_0x1b79x1b[_0xfc52[34]]+ _0x1b79x1b[_0xfc52[35]],_0x1b79x16;if(_0x1b79x1e>= _0x1b79x1c){_0x1b79x1e= _0x1b79x1c;_0x1b79x16= 200}else {_0x1b79x16= 206};_0x1b79x15[_0xfc52[29]](_0x1b79x16);logger[_0xfc52[24]](_0xfc52[22],_0x1b79x17,_0x1b79x16,_0xfc52[36]);logger[_0xfc52[26]](_0xfc52[25],_0x1b79x17,_0x1b79x16,_0xfc52[30],JSON[_0xfc52[31]](_0x1b79x18));return _0x1b79x15[_0xfc52[40]](_0xfc52[37],_0x1b79x1d+ _0xfc52[38]+ _0x1b79x1e+ _0xfc52[39]+ _0x1b79x1c)[_0xfc52[32]](_0x1b79x18)};return null}}function patchUpdates(_0x1b79x20){return function(_0x1b79x18){try{jsonpatch[_0xfc52[41]](_0x1b79x18,_0x1b79x20,true)}catch(err){return BPromise[_0xfc52[42]](err)};return _0x1b79x18[_0xfc52[43]]()}}function saveUpdates(_0x1b79x22,_0x1b79x16,_0x1b79x17){return function(_0x1b79x18){if(_0x1b79x18){return _0x1b79x18[_0xfc52[46]](_0x1b79x22)[_0xfc52[45]](function(_0x1b79x23){logger[_0xfc52[24]](_0xfc52[22],_0x1b79x17,_0x1b79x16,_0xfc52[44]);logger[_0xfc52[26]](_0xfc52[25],_0x1b79x17,_0x1b79x16,_0xfc52[44],JSON[_0xfc52[31]](_0x1b79x18));return _0x1b79x23})};return null}}function removeEntity(_0x1b79x15,_0x1b79x16,_0x1b79x17){return function(_0x1b79x18){if(_0x1b79x18){return _0x1b79x18[_0xfc52[48]]()[_0xfc52[45]](function(){logger[_0xfc52[24]](_0xfc52[22],_0x1b79x17,_0x1b79x16,_0xfc52[47]);logger[_0xfc52[26]](_0xfc52[25],_0x1b79x17,_0x1b79x16,_0xfc52[47],JSON[_0xfc52[31]](_0x1b79x18));_0x1b79x15[_0xfc52[29]](204)[_0xfc52[28]]()})}}}function handleEntityNotFound(_0x1b79x15,_0x1b79x16,_0x1b79x17){return function(_0x1b79x18){if(!_0x1b79x18){logger[_0xfc52[50]](_0xfc52[22],_0x1b79x17,404,_0xfc52[49]);_0x1b79x15[_0xfc52[29]](404)[_0xfc52[28]]();return null};return _0x1b79x18}}function handleError(_0x1b79x15,_0x1b79x16,_0x1b79x17){_0x1b79x16= _0x1b79x16|| 500;return function(_0x1b79x27){logger[_0xfc52[50]](_0xfc52[22],_0x1b79x17,_0x1b79x16,JSON[_0xfc52[31]](_0x1b79x27));delete _0x1b79x27[_0xfc52[51]];_0x1b79x15[_0xfc52[29]](_0x1b79x16)[_0xfc52[52]](_0x1b79x27)}}exports[_0xfc52[53]]= function(_0x1b79x28,_0x1b79x15){var _0x1b79x1b={},_0x1b79x29={};_0x1b79x29[_0xfc52[54]]= _[_0xfc52[57]](db[_0xfc52[56]][_0xfc52[55]]);_0x1b79x29[_0xfc52[58]]= _[_0xfc52[57]](_0x1b79x28[_0xfc52[58]]);_0x1b79x29[_0xfc52[59]]= _[_0xfc52[60]](_0x1b79x29[_0xfc52[54]],_0x1b79x29[_0xfc52[58]]);_0x1b79x1b[_0xfc52[61]]= _[_0xfc52[60]](_0x1b79x29[_0xfc52[54]],qs[_0xfc52[62]](_0x1b79x28[_0xfc52[58]][_0xfc52[62]]));_0x1b79x1b[_0xfc52[61]]= (_0x1b79x1b[_0xfc52[61]][_0xfc52[63]])?_0x1b79x1b[_0xfc52[61]]:_0x1b79x29[_0xfc52[54]];if(!_0x1b79x28[_0xfc52[58]][_0xfc52[65]](_0xfc52[64])){_0x1b79x1b[_0xfc52[35]]= qs[_0xfc52[35]](_0x1b79x28[_0xfc52[58]][_0xfc52[35]]);_0x1b79x1b[_0xfc52[34]]= qs[_0xfc52[34]](_0x1b79x28[_0xfc52[58]][_0xfc52[34]])};_0x1b79x1b[_0xfc52[66]]= qs[_0xfc52[67]](_0x1b79x28[_0xfc52[58]][_0xfc52[67]]);_0x1b79x1b[_0xfc52[68]]= qs[_0xfc52[59]](_[_0xfc52[69]](_0x1b79x28[_0xfc52[58]],_0x1b79x29[_0xfc52[59]]));if(_0x1b79x28[_0xfc52[58]][_0xfc52[70]]){_0x1b79x1b[_0xfc52[68]]= _[_0xfc52[73]](_0x1b79x1b[_0xfc52[68]],{$or:_[_0xfc52[72]](_0x1b79x1b[_0xfc52[61]],function(_0x1b79x2a){var _0x1b79x2b={};_0x1b79x2b[_0x1b79x2a]= {$like:_0xfc52[71]+ _0x1b79x28[_0xfc52[58]][_0xfc52[70]]+ _0xfc52[71]};return _0x1b79x2b})})};_0x1b79x1b= _[_0xfc52[73]]({},_0x1b79x1b,_0x1b79x28[_0xfc52[74]]);return db[_0xfc52[56]][_0xfc52[76]](_0x1b79x1b)[_0xfc52[45]](respondWithFilteredResult(_0x1b79x15,_0x1b79x1b,_0xfc52[53]))[_0xfc52[75]](handleError(_0x1b79x15,null,_0xfc52[53]))};exports[_0xfc52[77]]= function(_0x1b79x28,_0x1b79x15){var _0x1b79x1b={raw:false,where:{id:_0x1b79x28[_0xfc52[79]][_0xfc52[78]]}},_0x1b79x29={};_0x1b79x29[_0xfc52[54]]= _[_0xfc52[57]](db[_0xfc52[56]][_0xfc52[55]]);_0x1b79x29[_0xfc52[58]]= _[_0xfc52[57]](_0x1b79x28[_0xfc52[58]]);_0x1b79x29[_0xfc52[59]]= _[_0xfc52[60]](_0x1b79x29[_0xfc52[54]],_0x1b79x29[_0xfc52[58]]);_0x1b79x1b[_0xfc52[61]]= _[_0xfc52[60]](_0x1b79x29[_0xfc52[54]],qs[_0xfc52[62]](_0x1b79x28[_0xfc52[58]][_0xfc52[62]]));_0x1b79x1b[_0xfc52[61]]= (_0x1b79x1b[_0xfc52[61]][_0xfc52[63]])?_0x1b79x1b[_0xfc52[61]]:_0x1b79x29[_0xfc52[54]];_0x1b79x1b= _[_0xfc52[73]]({},_0x1b79x1b,_0x1b79x28[_0xfc52[74]]);return db[_0xfc52[56]][_0xfc52[80]](_0x1b79x1b)[_0xfc52[45]](handleEntityNotFound(_0x1b79x15,null,_0xfc52[77]))[_0xfc52[45]](respondWithResult(_0x1b79x15,null,_0xfc52[77]))[_0xfc52[75]](handleError(_0x1b79x15,null,_0xfc52[77]))};exports[_0xfc52[81]]= function(_0x1b79x28,_0x1b79x15){return db[_0xfc52[56]][_0xfc52[81]](_0x1b79x28[_0xfc52[82]],{})[_0xfc52[45]](respondWithResult(_0x1b79x15,201,_0xfc52[81]))[_0xfc52[75]](handleError(_0x1b79x15,null,_0xfc52[81]))};exports[_0xfc52[46]]= function(_0x1b79x28,_0x1b79x15){if(_0x1b79x28[_0xfc52[82]][_0xfc52[78]]){delete _0x1b79x28[_0xfc52[82]][_0xfc52[78]]};return db[_0xfc52[56]][_0xfc52[80]]({where:{id:_0x1b79x28[_0xfc52[79]][_0xfc52[78]]}})[_0xfc52[45]](handleEntityNotFound(_0x1b79x15,null,_0xfc52[46]))[_0xfc52[45]](saveUpdates(_0x1b79x28[_0xfc52[82]],null,_0xfc52[46]))[_0xfc52[45]](respondWithResult(_0x1b79x15,null,_0xfc52[46]))[_0xfc52[75]](handleError(_0x1b79x15,null,_0xfc52[46]))};exports[_0xfc52[48]]= function(_0x1b79x28,_0x1b79x15){return db[_0xfc52[56]][_0xfc52[80]]({where:{id:_0x1b79x28[_0xfc52[79]][_0xfc52[78]]}})[_0xfc52[45]](handleEntityNotFound(_0x1b79x15,null,_0xfc52[48]))[_0xfc52[45]](removeEntity(_0x1b79x15,null,_0xfc52[48]))[_0xfc52[75]](handleError(_0x1b79x15,null,_0xfc52[48]))};exports[_0xfc52[83]]= function(_0x1b79x28,_0x1b79x15){return db[_0xfc52[56]][_0xfc52[83]]()[_0xfc52[45]](respondWithResult(_0x1b79x15,null,_0xfc52[83]))[_0xfc52[75]](handleError(_0x1b79x15,null,_0xfc52[83]))}
\ No newline at end of file
+var _0xe600=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xe600[0];var jsonpatch=require(_0xe600[1]);var rp=require(_0xe600[2]);var moment=require(_0xe600[3]);var BPromise=require(_0xe600[4]);var util=require(_0xe600[5]);var path=require(_0xe600[6]);var sox=require(_0xe600[7]);var ejs=require(_0xe600[8]);var fs=require(_0xe600[9]);var _=require(_0xe600[10]);var squel=require(_0xe600[11]);var crypto=require(_0xe600[12]);var jsforce=require(_0xe600[13]);var toCsv=require(_0xe600[14]);var qs=require(_0xe600[15]);var logger=require(_0xe600[17])(_0xe600[16]);var utils=require(_0xe600[18]);var config=require(_0xe600[19]);var db=require(_0xe600[21])[_0xe600[20]];function respondWithStatusCode(_0x206ax15,_0x206ax16,_0x206ax17){_0x206ax16= _0x206ax16|| 204;return function(_0x206ax18){if(_0x206ax18){logger[_0xe600[24]](_0xe600[22],_0x206ax17,_0x206ax16,_0xe600[23]);logger[_0xe600[26]](_0xe600[25],_0x206ax17,_0x206ax16,_0xe600[23]);return _0x206ax15[_0xe600[27]](_0x206ax16)};return _0x206ax15[_0xe600[29]](304)[_0xe600[28]]()}}function respondWithResult(_0x206ax15,_0x206ax16,_0x206ax17){_0x206ax16= _0x206ax16|| 200;return function(_0x206ax18){if(_0x206ax18){logger[_0xe600[24]](_0xe600[22],_0x206ax17,_0x206ax16,_0xe600[30]);logger[_0xe600[26]](_0xe600[25],_0x206ax17,_0x206ax16,_0xe600[30],JSON[_0xe600[31]](_0x206ax18));return _0x206ax15[_0xe600[29]](_0x206ax16)[_0xe600[32]](_0x206ax18)};return _0x206ax15[_0xe600[29]](304)[_0xe600[28]]()}}function respondWithFilteredResult(_0x206ax15,_0x206ax1b,_0x206ax17){return function(_0x206ax18){if(_0x206ax18){var _0x206ax1c=_0x206ax18[_0xe600[33]],_0x206ax1d=_0x206ax1b[_0xe600[34]],_0x206ax1e=_0x206ax1b[_0xe600[34]]+ _0x206ax1b[_0xe600[35]],_0x206ax16;if(_0x206ax1e>= _0x206ax1c){_0x206ax1e= _0x206ax1c;_0x206ax16= 200}else {_0x206ax16= 206};_0x206ax15[_0xe600[29]](_0x206ax16);logger[_0xe600[24]](_0xe600[22],_0x206ax17,_0x206ax16,_0xe600[36]);logger[_0xe600[26]](_0xe600[25],_0x206ax17,_0x206ax16,_0xe600[30],JSON[_0xe600[31]](_0x206ax18));return _0x206ax15[_0xe600[40]](_0xe600[37],_0x206ax1d+ _0xe600[38]+ _0x206ax1e+ _0xe600[39]+ _0x206ax1c)[_0xe600[32]](_0x206ax18)};return null}}function patchUpdates(_0x206ax20){return function(_0x206ax18){try{jsonpatch[_0xe600[41]](_0x206ax18,_0x206ax20,true)}catch(err){return BPromise[_0xe600[42]](err)};return _0x206ax18[_0xe600[43]]()}}function saveUpdates(_0x206ax22,_0x206ax16,_0x206ax17){return function(_0x206ax18){if(_0x206ax18){return _0x206ax18[_0xe600[46]](_0x206ax22)[_0xe600[45]](function(_0x206ax23){logger[_0xe600[24]](_0xe600[22],_0x206ax17,_0x206ax16,_0xe600[44]);logger[_0xe600[26]](_0xe600[25],_0x206ax17,_0x206ax16,_0xe600[44],JSON[_0xe600[31]](_0x206ax18));return _0x206ax23})};return null}}function removeEntity(_0x206ax15,_0x206ax16,_0x206ax17){return function(_0x206ax18){if(_0x206ax18){return _0x206ax18[_0xe600[48]]()[_0xe600[45]](function(){logger[_0xe600[24]](_0xe600[22],_0x206ax17,_0x206ax16,_0xe600[47]);logger[_0xe600[26]](_0xe600[25],_0x206ax17,_0x206ax16,_0xe600[47],JSON[_0xe600[31]](_0x206ax18));_0x206ax15[_0xe600[29]](204)[_0xe600[28]]()})}}}function handleEntityNotFound(_0x206ax15,_0x206ax16,_0x206ax17){return function(_0x206ax18){if(!_0x206ax18){logger[_0xe600[50]](_0xe600[22],_0x206ax17,404,_0xe600[49]);_0x206ax15[_0xe600[29]](404)[_0xe600[28]]();return null};return _0x206ax18}}function handleError(_0x206ax15,_0x206ax16,_0x206ax17){_0x206ax16= _0x206ax16|| 500;return function(_0x206ax27){logger[_0xe600[50]](_0xe600[22],_0x206ax17,_0x206ax16,JSON[_0xe600[31]](_0x206ax27));delete _0x206ax27[_0xe600[51]];_0x206ax15[_0xe600[29]](_0x206ax16)[_0xe600[52]](_0x206ax27)}}exports[_0xe600[53]]= function(_0x206ax28,_0x206ax15){var _0x206ax1b={},_0x206ax29={};_0x206ax29[_0xe600[54]]= _[_0xe600[57]](db[_0xe600[56]][_0xe600[55]]);_0x206ax29[_0xe600[58]]= _[_0xe600[57]](_0x206ax28[_0xe600[58]]);_0x206ax29[_0xe600[59]]= _[_0xe600[60]](_0x206ax29[_0xe600[54]],_0x206ax29[_0xe600[58]]);_0x206ax1b[_0xe600[61]]= _[_0xe600[60]](_0x206ax29[_0xe600[54]],qs[_0xe600[62]](_0x206ax28[_0xe600[58]][_0xe600[62]]));_0x206ax1b[_0xe600[61]]= (_0x206ax1b[_0xe600[61]][_0xe600[63]])?_0x206ax1b[_0xe600[61]]:_0x206ax29[_0xe600[54]];if(!_0x206ax28[_0xe600[58]][_0xe600[65]](_0xe600[64])){_0x206ax1b[_0xe600[35]]= qs[_0xe600[35]](_0x206ax28[_0xe600[58]][_0xe600[35]]);_0x206ax1b[_0xe600[34]]= qs[_0xe600[34]](_0x206ax28[_0xe600[58]][_0xe600[34]])};_0x206ax1b[_0xe600[66]]= qs[_0xe600[67]](_0x206ax28[_0xe600[58]][_0xe600[67]]);_0x206ax1b[_0xe600[68]]= qs[_0xe600[59]](_[_0xe600[69]](_0x206ax28[_0xe600[58]],_0x206ax29[_0xe600[59]]));if(_0x206ax28[_0xe600[58]][_0xe600[70]]){_0x206ax1b[_0xe600[68]]= _[_0xe600[73]](_0x206ax1b[_0xe600[68]],{$or:_[_0xe600[72]](_0x206ax1b[_0xe600[61]],function(_0x206ax2a){var _0x206ax2b={};_0x206ax2b[_0x206ax2a]= {$like:_0xe600[71]+ _0x206ax28[_0xe600[58]][_0xe600[70]]+ _0xe600[71]};return _0x206ax2b})})};_0x206ax1b= _[_0xe600[73]]({},_0x206ax1b,_0x206ax28[_0xe600[74]]);return db[_0xe600[56]][_0xe600[76]](_0x206ax1b)[_0xe600[45]](respondWithFilteredResult(_0x206ax15,_0x206ax1b,_0xe600[53]))[_0xe600[75]](handleError(_0x206ax15,null,_0xe600[53]))};exports[_0xe600[77]]= function(_0x206ax28,_0x206ax15){var _0x206ax1b={raw:false,where:{id:_0x206ax28[_0xe600[79]][_0xe600[78]]}},_0x206ax29={};_0x206ax29[_0xe600[54]]= _[_0xe600[57]](db[_0xe600[56]][_0xe600[55]]);_0x206ax29[_0xe600[58]]= _[_0xe600[57]](_0x206ax28[_0xe600[58]]);_0x206ax29[_0xe600[59]]= _[_0xe600[60]](_0x206ax29[_0xe600[54]],_0x206ax29[_0xe600[58]]);_0x206ax1b[_0xe600[61]]= _[_0xe600[60]](_0x206ax29[_0xe600[54]],qs[_0xe600[62]](_0x206ax28[_0xe600[58]][_0xe600[62]]));_0x206ax1b[_0xe600[61]]= (_0x206ax1b[_0xe600[61]][_0xe600[63]])?_0x206ax1b[_0xe600[61]]:_0x206ax29[_0xe600[54]];_0x206ax1b= _[_0xe600[73]]({},_0x206ax1b,_0x206ax28[_0xe600[74]]);return db[_0xe600[56]][_0xe600[80]](_0x206ax1b)[_0xe600[45]](handleEntityNotFound(_0x206ax15,null,_0xe600[77]))[_0xe600[45]](respondWithResult(_0x206ax15,null,_0xe600[77]))[_0xe600[75]](handleError(_0x206ax15,null,_0xe600[77]))};exports[_0xe600[81]]= function(_0x206ax28,_0x206ax15){return db[_0xe600[56]][_0xe600[81]](_0x206ax28[_0xe600[82]],{})[_0xe600[45]](respondWithResult(_0x206ax15,201,_0xe600[81]))[_0xe600[75]](handleError(_0x206ax15,null,_0xe600[81]))};exports[_0xe600[46]]= function(_0x206ax28,_0x206ax15){if(_0x206ax28[_0xe600[82]][_0xe600[78]]){delete _0x206ax28[_0xe600[82]][_0xe600[78]]};return db[_0xe600[56]][_0xe600[80]]({where:{id:_0x206ax28[_0xe600[79]][_0xe600[78]]}})[_0xe600[45]](handleEntityNotFound(_0x206ax15,null,_0xe600[46]))[_0xe600[45]](saveUpdates(_0x206ax28[_0xe600[82]],null,_0xe600[46]))[_0xe600[45]](respondWithResult(_0x206ax15,null,_0xe600[46]))[_0xe600[75]](handleError(_0x206ax15,null,_0xe600[46]))};exports[_0xe600[48]]= function(_0x206ax28,_0x206ax15){return db[_0xe600[56]][_0xe600[80]]({where:{id:_0x206ax28[_0xe600[79]][_0xe600[78]]}})[_0xe600[45]](handleEntityNotFound(_0x206ax15,null,_0xe600[48]))[_0xe600[45]](removeEntity(_0x206ax15,null,_0xe600[48]))[_0xe600[75]](handleError(_0x206ax15,null,_0xe600[48]))};exports[_0xe600[83]]= function(_0x206ax28,_0x206ax15){return db[_0xe600[56]][_0xe600[83]]()[_0xe600[45]](respondWithResult(_0x206ax15,null,_0xe600[83]))[_0xe600[75]](handleError(_0x206ax15,null,_0xe600[83]))}
\ No newline at end of file
index 2f387d4..fd66117 100644 (file)
@@ -1 +1 @@
-var _0x7efb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x61\x67\x65\x6E\x74","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x73\x74\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x66\x69\x6E\x65"];_0x7efb[0];var _=require(_0x7efb[1]);var util=require(_0x7efb[2]);var logger=require(_0x7efb[4])(_0x7efb[3]);var attributes=require(_0x7efb[5]);module[_0x7efb[6]]= function(_0x6a3fx5,_0x6a3fx6){return _0x6a3fx5[_0x7efb[11]](_0x7efb[7],attributes,{tableName:_0x7efb[8],paranoid:false,indexes:[{"\x66\x69\x65\x6C\x64\x73":[_0x7efb[9],_0x7efb[10]]}],timestamps:true})}
\ No newline at end of file
+var _0xd840=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x61\x67\x65\x6E\x74","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x73\x74\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x66\x69\x6E\x65"];_0xd840[0];var _=require(_0xd840[1]);var util=require(_0xd840[2]);var logger=require(_0xd840[4])(_0xd840[3]);var attributes=require(_0xd840[5]);module[_0xd840[6]]= function(_0x7c4cx5,_0x7c4cx6){return _0x7c4cx5[_0xd840[11]](_0xd840[7],attributes,{tableName:_0xd840[8],paranoid:false,indexes:[{"\x66\x69\x65\x6C\x64\x73":[_0xd840[9],_0xd840[10]]}],timestamps:true})}
\ No newline at end of file
index 92cf800..41f69ec 100644 (file)
@@ -1 +1 @@
-var _0x3176=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65"];_0x3176[0];var _=require(_0x3176[1]);var util=require(_0x3176[2]);var moment=require(_0x3176[3]);var BPromise=require(_0x3176[4]);var db=require(_0x3176[6])[_0x3176[5]];var utils=require(_0x3176[7]);var logger=require(_0x3176[9])(_0x3176[8]);var jayson=require(_0x3176[10]);var client=jayson[_0x3176[12]][_0x3176[11]]({port:9002});function respondWithRpcPromise(_0x5317xb,_0x5317xc,_0x5317xd){return  new BPromise(function(_0x5317xe,_0x5317xf){return client[_0x3176[25]](_0x5317xb,_0x5317xd)[_0x3176[24]](function(_0x5317x11){logger[_0x3176[17]](_0x3176[13],_0x5317xc,_0x3176[16]);logger[_0x3176[20]](_0x3176[18],_0x5317xc,_0x3176[16],JSON[_0x3176[19]](_0x5317x11));if(_0x5317x11[_0x3176[14]]){if(_0x5317x11[_0x3176[14]][_0x3176[21]]=== 500){logger[_0x3176[14]](_0x3176[13],_0x5317xc,_0x5317x11[_0x3176[14]][_0x3176[22]]);return _0x5317xf(_0x5317x11[_0x3176[14]][_0x3176[22]])};logger[_0x3176[14]](_0x3176[13],_0x5317xc,_0x5317x11[_0x3176[14]][_0x3176[22]]);return _0x5317xe(_0x5317x11[_0x3176[14]][_0x3176[22]])}else {logger[_0x3176[17]](_0x3176[13],_0x5317xc,_0x3176[16]);_0x5317xe(_0x5317x11[_0x3176[23]][_0x3176[22]])}})[_0x3176[15]](function(_0x5317x10){logger[_0x3176[14]](_0x3176[13],_0x5317xc,_0x5317x10);_0x5317xf(_0x5317x10)})})}exports[_0x3176[26]]= function(_0x5317xd){var _0x5317x12=this;return  new Promise(function(_0x5317xe,_0x5317xf){return db[_0x3176[31]][_0x3176[30]](_0x5317xd[_0x3176[27]],{raw:_0x5317xd[_0x3176[28]]?(_0x5317xd[_0x3176[28]][_0x3176[29]]=== undefined)?true:false:true})[_0x3176[24]](function(_0x5317x11){logger[_0x3176[17]](_0x3176[26],_0x5317xd);logger[_0x3176[20]](_0x3176[26],_0x5317xd,JSON[_0x3176[19]](_0x5317x11));_0x5317xe(_0x5317x11)})[_0x3176[15]](function(_0x5317x10){logger[_0x3176[14]](_0x3176[26],_0x5317x10[_0x3176[22]],_0x5317xd);_0x5317xf(_0x5317x12[_0x3176[14]](500,_0x5317x10[_0x3176[22]]))})})};exports[_0x3176[32]]= function(_0x5317xd){var _0x5317x12=this;return  new Promise(function(_0x5317xe,_0x5317xf){return db[_0x3176[31]][_0x3176[36]](_0x5317xd[_0x3176[27]],{raw:_0x5317xd[_0x3176[28]]?(_0x5317xd[_0x3176[28]][_0x3176[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x5317xd[_0x3176[28]]?_0x5317xd[_0x3176[28]][_0x3176[33]]|| null:null,attributes:_0x5317xd[_0x3176[28]]?_0x5317xd[_0x3176[28]][_0x3176[34]]|| null:null,limit:_0x5317xd[_0x3176[28]]?_0x5317xd[_0x3176[28]][_0x3176[35]]|| null:null})[_0x3176[24]](function(_0x5317x11){logger[_0x3176[17]](_0x3176[32],_0x5317xd);logger[_0x3176[20]](_0x3176[32],_0x5317xd,JSON[_0x3176[19]](_0x5317x11));_0x5317xe(_0x5317x11)})[_0x3176[15]](function(_0x5317x10){logger[_0x3176[14]](_0x3176[32],_0x5317x10[_0x3176[22]],_0x5317xd);_0x5317xf(_0x5317x12[_0x3176[14]](500,_0x5317x10[_0x3176[22]]))})})}
\ No newline at end of file
+var _0x7170=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65"];_0x7170[0];var _=require(_0x7170[1]);var util=require(_0x7170[2]);var moment=require(_0x7170[3]);var BPromise=require(_0x7170[4]);var db=require(_0x7170[6])[_0x7170[5]];var utils=require(_0x7170[7]);var logger=require(_0x7170[9])(_0x7170[8]);var jayson=require(_0x7170[10]);var client=jayson[_0x7170[12]][_0x7170[11]]({port:9002});function respondWithRpcPromise(_0xaa31xb,_0xaa31xc,_0xaa31xd){return  new BPromise(function(_0xaa31xe,_0xaa31xf){return client[_0x7170[25]](_0xaa31xb,_0xaa31xd)[_0x7170[24]](function(_0xaa31x11){logger[_0x7170[17]](_0x7170[13],_0xaa31xc,_0x7170[16]);logger[_0x7170[20]](_0x7170[18],_0xaa31xc,_0x7170[16],JSON[_0x7170[19]](_0xaa31x11));if(_0xaa31x11[_0x7170[14]]){if(_0xaa31x11[_0x7170[14]][_0x7170[21]]=== 500){logger[_0x7170[14]](_0x7170[13],_0xaa31xc,_0xaa31x11[_0x7170[14]][_0x7170[22]]);return _0xaa31xf(_0xaa31x11[_0x7170[14]][_0x7170[22]])};logger[_0x7170[14]](_0x7170[13],_0xaa31xc,_0xaa31x11[_0x7170[14]][_0x7170[22]]);return _0xaa31xe(_0xaa31x11[_0x7170[14]][_0x7170[22]])}else {logger[_0x7170[17]](_0x7170[13],_0xaa31xc,_0x7170[16]);_0xaa31xe(_0xaa31x11[_0x7170[23]][_0x7170[22]])}})[_0x7170[15]](function(_0xaa31x10){logger[_0x7170[14]](_0x7170[13],_0xaa31xc,_0xaa31x10);_0xaa31xf(_0xaa31x10)})})}exports[_0x7170[26]]= function(_0xaa31xd){var _0xaa31x12=this;return  new Promise(function(_0xaa31xe,_0xaa31xf){return db[_0x7170[31]][_0x7170[30]](_0xaa31xd[_0x7170[27]],{raw:_0xaa31xd[_0x7170[28]]?(_0xaa31xd[_0x7170[28]][_0x7170[29]]=== undefined)?true:false:true})[_0x7170[24]](function(_0xaa31x11){logger[_0x7170[17]](_0x7170[26],_0xaa31xd);logger[_0x7170[20]](_0x7170[26],_0xaa31xd,JSON[_0x7170[19]](_0xaa31x11));_0xaa31xe(_0xaa31x11)})[_0x7170[15]](function(_0xaa31x10){logger[_0x7170[14]](_0x7170[26],_0xaa31x10[_0x7170[22]],_0xaa31xd);_0xaa31xf(_0xaa31x12[_0x7170[14]](500,_0xaa31x10[_0x7170[22]]))})})};exports[_0x7170[32]]= function(_0xaa31xd){var _0xaa31x12=this;return  new Promise(function(_0xaa31xe,_0xaa31xf){return db[_0x7170[31]][_0x7170[36]](_0xaa31xd[_0x7170[27]],{raw:_0xaa31xd[_0x7170[28]]?(_0xaa31xd[_0x7170[28]][_0x7170[29]]=== undefined)?true:false:true,individualHooks:true,where:_0xaa31xd[_0x7170[28]]?_0xaa31xd[_0x7170[28]][_0x7170[33]]|| null:null,attributes:_0xaa31xd[_0x7170[28]]?_0xaa31xd[_0x7170[28]][_0x7170[34]]|| null:null,limit:_0xaa31xd[_0x7170[28]]?_0xaa31xd[_0x7170[28]][_0x7170[35]]|| null:null})[_0x7170[24]](function(_0xaa31x11){logger[_0x7170[17]](_0x7170[32],_0xaa31xd);logger[_0x7170[20]](_0x7170[32],_0xaa31xd,JSON[_0x7170[19]](_0xaa31x11));_0xaa31xe(_0xaa31x11)})[_0x7170[15]](function(_0xaa31x10){logger[_0x7170[14]](_0x7170[32],_0xaa31x10[_0x7170[22]],_0xaa31xd);_0xaa31xf(_0xaa31x12[_0x7170[14]](500,_0xaa31x10[_0x7170[22]]))})})}
\ No newline at end of file
index a022ff2..bb8dc0f 100644 (file)
@@ -1 +1 @@
-var _0x7746=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7746[0];var multer=require(_0x7746[1]);var util=require(_0x7746[2]);var path=require(_0x7746[3]);var express=require(_0x7746[4]);var router=express.Router();var auth=require(_0x7746[5]);var config=require(_0x7746[6]);var controller=require(_0x7746[7]);router[_0x7746[11]](_0x7746[8],auth[_0x7746[9]](),controller[_0x7746[10]]);router[_0x7746[11]](_0x7746[12],auth[_0x7746[9]](),controller[_0x7746[13]]);router[_0x7746[11]](_0x7746[14],auth[_0x7746[9]](),controller[_0x7746[15]]);router[_0x7746[17]](_0x7746[8],auth[_0x7746[9]](),controller[_0x7746[16]]);router[_0x7746[19]](_0x7746[14],auth[_0x7746[9]](),controller[_0x7746[18]]);router[_0x7746[21]](_0x7746[14],auth[_0x7746[9]](),controller[_0x7746[20]]);module[_0x7746[22]]= router
\ No newline at end of file
+var _0x8d8b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8d8b[0];var multer=require(_0x8d8b[1]);var util=require(_0x8d8b[2]);var path=require(_0x8d8b[3]);var express=require(_0x8d8b[4]);var router=express.Router();var auth=require(_0x8d8b[5]);var config=require(_0x8d8b[6]);var controller=require(_0x8d8b[7]);router[_0x8d8b[11]](_0x8d8b[8],auth[_0x8d8b[9]](),controller[_0x8d8b[10]]);router[_0x8d8b[11]](_0x8d8b[12],auth[_0x8d8b[9]](),controller[_0x8d8b[13]]);router[_0x8d8b[11]](_0x8d8b[14],auth[_0x8d8b[9]](),controller[_0x8d8b[15]]);router[_0x8d8b[17]](_0x8d8b[8],auth[_0x8d8b[9]](),controller[_0x8d8b[16]]);router[_0x8d8b[19]](_0x8d8b[14],auth[_0x8d8b[9]](),controller[_0x8d8b[18]]);router[_0x8d8b[21]](_0x8d8b[14],auth[_0x8d8b[9]](),controller[_0x8d8b[20]]);module[_0x8d8b[22]]= router
\ No newline at end of file
index 62eb845..b3f7d18 100644 (file)
@@ -1 +1 @@
-var _0xa47e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x6E\x69\x71\x75\x65\x69\x64","\x69\x6E\x62\x6F\x75\x6E\x64","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x69\x6E\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x64\x69\x61\x6C\x65\x72","\x44\x41\x54\x45","\x49\x4E\x54\x45\x47\x45\x52"];_0xa47e[0];var Sequelize=require(_0xa47e[1]);module[_0xa47e[2]]= {uniqueid:{type:Sequelize[_0xa47e[3]],unique:_0xa47e[4]},type:{type:Sequelize.ENUM(_0xa47e[5],_0xa47e[6],_0xa47e[7],_0xa47e[8],_0xa47e[9],_0xa47e[10])},tag:{type:Sequelize[_0xa47e[3]]},accountcode:{type:Sequelize[_0xa47e[3]]},source:{type:Sequelize[_0xa47e[3]]},destination:{type:Sequelize[_0xa47e[3]]},destinationcontext:{type:Sequelize[_0xa47e[3]]},callerid:{type:Sequelize[_0xa47e[3]]},channel:{type:Sequelize[_0xa47e[3]]},destinationchannel:{type:Sequelize[_0xa47e[3]]},lastapplication:{type:Sequelize[_0xa47e[3]]},lastdata:{type:Sequelize[_0xa47e[3]]},starttime:{type:Sequelize[_0xa47e[11]]},answertime:{type:Sequelize[_0xa47e[11]]},endtime:{type:Sequelize[_0xa47e[11]]},duration:{type:Sequelize[_0xa47e[12]]},billableseconds:{type:Sequelize[_0xa47e[12]]},disposition:{type:Sequelize[_0xa47e[3]]},amaflags:{type:Sequelize[_0xa47e[3]]},userfield:{type:Sequelize[_0xa47e[3]]},userDisposition:{type:Sequelize[_0xa47e[3]]}}
\ No newline at end of file
+var _0x7dd6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x75\x6E\x69\x71\x75\x65\x69\x64","\x69\x6E\x62\x6F\x75\x6E\x64","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x69\x6E\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x64\x69\x61\x6C\x65\x72","\x44\x41\x54\x45","\x49\x4E\x54\x45\x47\x45\x52"];_0x7dd6[0];var Sequelize=require(_0x7dd6[1]);module[_0x7dd6[2]]= {uniqueid:{type:Sequelize[_0x7dd6[3]],unique:_0x7dd6[4]},type:{type:Sequelize.ENUM(_0x7dd6[5],_0x7dd6[6],_0x7dd6[7],_0x7dd6[8],_0x7dd6[9],_0x7dd6[10])},tag:{type:Sequelize[_0x7dd6[3]]},accountcode:{type:Sequelize[_0x7dd6[3]]},source:{type:Sequelize[_0x7dd6[3]]},destination:{type:Sequelize[_0x7dd6[3]]},destinationcontext:{type:Sequelize[_0x7dd6[3]]},callerid:{type:Sequelize[_0x7dd6[3]]},channel:{type:Sequelize[_0x7dd6[3]]},destinationchannel:{type:Sequelize[_0x7dd6[3]]},lastapplication:{type:Sequelize[_0x7dd6[3]]},lastdata:{type:Sequelize[_0x7dd6[3]]},starttime:{type:Sequelize[_0x7dd6[11]]},answertime:{type:Sequelize[_0x7dd6[11]]},endtime:{type:Sequelize[_0x7dd6[11]]},duration:{type:Sequelize[_0x7dd6[12]]},billableseconds:{type:Sequelize[_0x7dd6[12]]},disposition:{type:Sequelize[_0x7dd6[3]]},amaflags:{type:Sequelize[_0x7dd6[3]]},userfield:{type:Sequelize[_0x7dd6[3]]},userDisposition:{type:Sequelize[_0x7dd6[3]]}}
\ No newline at end of file
index bb3d2c3..06b8ebf 100644 (file)
@@ -1 +1 @@
-var _0x87f1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x75\x6E\x69\x71\x75\x65\x69\x64"];_0x87f1[0];var jsonpatch=require(_0x87f1[1]);var rp=require(_0x87f1[2]);var moment=require(_0x87f1[3]);var BPromise=require(_0x87f1[4]);var util=require(_0x87f1[5]);var path=require(_0x87f1[6]);var sox=require(_0x87f1[7]);var ejs=require(_0x87f1[8]);var fs=require(_0x87f1[9]);var _=require(_0x87f1[10]);var squel=require(_0x87f1[11]);var crypto=require(_0x87f1[12]);var jsforce=require(_0x87f1[13]);var toCsv=require(_0x87f1[14]);var qs=require(_0x87f1[15]);var logger=require(_0x87f1[17])(_0x87f1[16]);var utils=require(_0x87f1[18]);var config=require(_0x87f1[19]);var db=require(_0x87f1[21])[_0x87f1[20]];function respondWithStatusCode(_0x4529x15,_0x4529x16,_0x4529x17){_0x4529x16= _0x4529x16|| 204;return function(_0x4529x18){if(_0x4529x18){logger[_0x87f1[24]](_0x87f1[22],_0x4529x17,_0x4529x16,_0x87f1[23]);logger[_0x87f1[26]](_0x87f1[25],_0x4529x17,_0x4529x16,_0x87f1[23]);return _0x4529x15[_0x87f1[27]](_0x4529x16)};return _0x4529x15[_0x87f1[29]](304)[_0x87f1[28]]()}}function respondWithResult(_0x4529x15,_0x4529x16,_0x4529x17){_0x4529x16= _0x4529x16|| 200;return function(_0x4529x18){if(_0x4529x18){logger[_0x87f1[24]](_0x87f1[22],_0x4529x17,_0x4529x16,_0x87f1[30]);logger[_0x87f1[26]](_0x87f1[25],_0x4529x17,_0x4529x16,_0x87f1[30],JSON[_0x87f1[31]](_0x4529x18));return _0x4529x15[_0x87f1[29]](_0x4529x16)[_0x87f1[32]](_0x4529x18)};return _0x4529x15[_0x87f1[29]](304)[_0x87f1[28]]()}}function respondWithFilteredResult(_0x4529x15,_0x4529x1b,_0x4529x17){return function(_0x4529x18){if(_0x4529x18){var _0x4529x1c=_0x4529x18[_0x87f1[33]],_0x4529x1d=_0x4529x1b[_0x87f1[34]],_0x4529x1e=_0x4529x1b[_0x87f1[34]]+ _0x4529x1b[_0x87f1[35]],_0x4529x16;if(_0x4529x1e>= _0x4529x1c){_0x4529x1e= _0x4529x1c;_0x4529x16= 200}else {_0x4529x16= 206};_0x4529x15[_0x87f1[29]](_0x4529x16);logger[_0x87f1[24]](_0x87f1[22],_0x4529x17,_0x4529x16,_0x87f1[36]);logger[_0x87f1[26]](_0x87f1[25],_0x4529x17,_0x4529x16,_0x87f1[30],JSON[_0x87f1[31]](_0x4529x18));return _0x4529x15[_0x87f1[40]](_0x87f1[37],_0x4529x1d+ _0x87f1[38]+ _0x4529x1e+ _0x87f1[39]+ _0x4529x1c)[_0x87f1[32]](_0x4529x18)};return null}}function patchUpdates(_0x4529x20){return function(_0x4529x18){try{jsonpatch[_0x87f1[41]](_0x4529x18,_0x4529x20,true)}catch(err){return BPromise[_0x87f1[42]](err)};return _0x4529x18[_0x87f1[43]]()}}function saveUpdates(_0x4529x22,_0x4529x16,_0x4529x17){return function(_0x4529x18){if(_0x4529x18){return _0x4529x18[_0x87f1[46]](_0x4529x22)[_0x87f1[45]](function(_0x4529x23){logger[_0x87f1[24]](_0x87f1[22],_0x4529x17,_0x4529x16,_0x87f1[44]);logger[_0x87f1[26]](_0x87f1[25],_0x4529x17,_0x4529x16,_0x87f1[44],JSON[_0x87f1[31]](_0x4529x18));return _0x4529x23})};return null}}function removeEntity(_0x4529x15,_0x4529x16,_0x4529x17){return function(_0x4529x18){if(_0x4529x18){return _0x4529x18[_0x87f1[48]]()[_0x87f1[45]](function(){logger[_0x87f1[24]](_0x87f1[22],_0x4529x17,_0x4529x16,_0x87f1[47]);logger[_0x87f1[26]](_0x87f1[25],_0x4529x17,_0x4529x16,_0x87f1[47],JSON[_0x87f1[31]](_0x4529x18));_0x4529x15[_0x87f1[29]](204)[_0x87f1[28]]()})}}}function handleEntityNotFound(_0x4529x15,_0x4529x16,_0x4529x17){return function(_0x4529x18){if(!_0x4529x18){logger[_0x87f1[50]](_0x87f1[22],_0x4529x17,404,_0x87f1[49]);_0x4529x15[_0x87f1[29]](404)[_0x87f1[28]]();return null};return _0x4529x18}}function handleError(_0x4529x15,_0x4529x16,_0x4529x17){_0x4529x16= _0x4529x16|| 500;return function(_0x4529x27){logger[_0x87f1[50]](_0x87f1[22],_0x4529x17,_0x4529x16,JSON[_0x87f1[31]](_0x4529x27));delete _0x4529x27[_0x87f1[51]];_0x4529x15[_0x87f1[29]](_0x4529x16)[_0x87f1[52]](_0x4529x27)}}exports[_0x87f1[53]]= function(_0x4529x28,_0x4529x15){var _0x4529x1b={},_0x4529x29={};_0x4529x29[_0x87f1[54]]= _[_0x87f1[57]](db[_0x87f1[56]][_0x87f1[55]]);_0x4529x29[_0x87f1[58]]= _[_0x87f1[57]](_0x4529x28[_0x87f1[58]]);_0x4529x29[_0x87f1[59]]= _[_0x87f1[60]](_0x4529x29[_0x87f1[54]],_0x4529x29[_0x87f1[58]]);_0x4529x1b[_0x87f1[61]]= _[_0x87f1[60]](_0x4529x29[_0x87f1[54]],qs[_0x87f1[62]](_0x4529x28[_0x87f1[58]][_0x87f1[62]]));_0x4529x1b[_0x87f1[61]]= (_0x4529x1b[_0x87f1[61]][_0x87f1[63]])?_0x4529x1b[_0x87f1[61]]:_0x4529x29[_0x87f1[54]];if(!_0x4529x28[_0x87f1[58]][_0x87f1[65]](_0x87f1[64])){_0x4529x1b[_0x87f1[35]]= qs[_0x87f1[35]](_0x4529x28[_0x87f1[58]][_0x87f1[35]]);_0x4529x1b[_0x87f1[34]]= qs[_0x87f1[34]](_0x4529x28[_0x87f1[58]][_0x87f1[34]])};_0x4529x1b[_0x87f1[66]]= qs[_0x87f1[67]](_0x4529x28[_0x87f1[58]][_0x87f1[67]]);_0x4529x1b[_0x87f1[68]]= qs[_0x87f1[59]](_[_0x87f1[69]](_0x4529x28[_0x87f1[58]],_0x4529x29[_0x87f1[59]]));if(_0x4529x28[_0x87f1[58]][_0x87f1[70]]){_0x4529x1b[_0x87f1[68]]= _[_0x87f1[73]](_0x4529x1b[_0x87f1[68]],{$or:_[_0x87f1[72]](_0x4529x1b[_0x87f1[61]],function(_0x4529x2a){var _0x4529x2b={};_0x4529x2b[_0x4529x2a]= {$like:_0x87f1[71]+ _0x4529x28[_0x87f1[58]][_0x87f1[70]]+ _0x87f1[71]};return _0x4529x2b})})};_0x4529x1b= _[_0x87f1[73]]({},_0x4529x1b,_0x4529x28[_0x87f1[74]]);return db[_0x87f1[56]][_0x87f1[76]](_0x4529x1b)[_0x87f1[45]](respondWithFilteredResult(_0x4529x15,_0x4529x1b,_0x87f1[53]))[_0x87f1[75]](handleError(_0x4529x15,null,_0x87f1[53]))};exports[_0x87f1[77]]= function(_0x4529x28,_0x4529x15){var _0x4529x1b={raw:true,where:{id:_0x4529x28[_0x87f1[79]][_0x87f1[78]]}},_0x4529x29={};_0x4529x29[_0x87f1[54]]= _[_0x87f1[57]](db[_0x87f1[56]][_0x87f1[55]]);_0x4529x29[_0x87f1[58]]= _[_0x87f1[57]](_0x4529x28[_0x87f1[58]]);_0x4529x29[_0x87f1[59]]= _[_0x87f1[60]](_0x4529x29[_0x87f1[54]],_0x4529x29[_0x87f1[58]]);_0x4529x1b[_0x87f1[61]]= _[_0x87f1[60]](_0x4529x29[_0x87f1[54]],qs[_0x87f1[62]](_0x4529x28[_0x87f1[58]][_0x87f1[62]]));_0x4529x1b[_0x87f1[61]]= (_0x4529x1b[_0x87f1[61]][_0x87f1[63]])?_0x4529x1b[_0x87f1[61]]:_0x4529x29[_0x87f1[54]];_0x4529x1b= _[_0x87f1[73]]({},_0x4529x1b,_0x4529x28[_0x87f1[74]]);return db[_0x87f1[56]][_0x87f1[80]](_0x4529x1b)[_0x87f1[45]](handleEntityNotFound(_0x4529x15,null,_0x87f1[77]))[_0x87f1[45]](respondWithResult(_0x4529x15,null,_0x87f1[77]))[_0x87f1[75]](handleError(_0x4529x15,null,_0x87f1[77]))};exports[_0x87f1[81]]= function(_0x4529x28,_0x4529x15){return db[_0x87f1[56]][_0x87f1[81]](_0x4529x28[_0x87f1[82]],{})[_0x87f1[45]](respondWithResult(_0x4529x15,201,_0x87f1[81]))[_0x87f1[75]](handleError(_0x4529x15,null,_0x87f1[81]))};exports[_0x87f1[48]]= function(_0x4529x28,_0x4529x15){return db[_0x87f1[56]][_0x87f1[80]]({where:{id:_0x4529x28[_0x87f1[79]][_0x87f1[78]]}})[_0x87f1[45]](handleEntityNotFound(_0x4529x15,null,_0x87f1[48]))[_0x87f1[45]](removeEntity(_0x4529x15,null,_0x87f1[48]))[_0x87f1[75]](handleError(_0x4529x15,null,_0x87f1[48]))};exports[_0x87f1[83]]= function(_0x4529x28,_0x4529x15){return db[_0x87f1[56]][_0x87f1[83]]()[_0x87f1[45]](respondWithResult(_0x4529x15,null,_0x87f1[83]))[_0x87f1[75]](handleError(_0x4529x15,null,_0x87f1[83]))};exports[_0x87f1[46]]= function(_0x4529x28,_0x4529x15){if(_0x4529x28[_0x87f1[82]][_0x87f1[84]]){delete _0x4529x28[_0x87f1[82]][_0x87f1[84]]};return db[_0x87f1[56]][_0x87f1[80]]({where:{uniqueid:_0x4529x28[_0x87f1[79]][_0x87f1[78]]}})[_0x87f1[45]](handleEntityNotFound(_0x4529x15,null,_0x87f1[46]))[_0x87f1[45]](saveUpdates(_0x4529x28[_0x87f1[82]],null,_0x87f1[46]))[_0x87f1[45]](respondWithResult(_0x4529x15,null,_0x87f1[46]))[_0x87f1[75]](handleError(_0x4529x15,null,_0x87f1[46]))}
\ No newline at end of file
+var _0xd993=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x75\x6E\x69\x71\x75\x65\x69\x64"];_0xd993[0];var jsonpatch=require(_0xd993[1]);var rp=require(_0xd993[2]);var moment=require(_0xd993[3]);var BPromise=require(_0xd993[4]);var util=require(_0xd993[5]);var path=require(_0xd993[6]);var sox=require(_0xd993[7]);var ejs=require(_0xd993[8]);var fs=require(_0xd993[9]);var _=require(_0xd993[10]);var squel=require(_0xd993[11]);var crypto=require(_0xd993[12]);var jsforce=require(_0xd993[13]);var toCsv=require(_0xd993[14]);var qs=require(_0xd993[15]);var logger=require(_0xd993[17])(_0xd993[16]);var utils=require(_0xd993[18]);var config=require(_0xd993[19]);var db=require(_0xd993[21])[_0xd993[20]];function respondWithStatusCode(_0xe06bx15,_0xe06bx16,_0xe06bx17){_0xe06bx16= _0xe06bx16|| 204;return function(_0xe06bx18){if(_0xe06bx18){logger[_0xd993[24]](_0xd993[22],_0xe06bx17,_0xe06bx16,_0xd993[23]);logger[_0xd993[26]](_0xd993[25],_0xe06bx17,_0xe06bx16,_0xd993[23]);return _0xe06bx15[_0xd993[27]](_0xe06bx16)};return _0xe06bx15[_0xd993[29]](304)[_0xd993[28]]()}}function respondWithResult(_0xe06bx15,_0xe06bx16,_0xe06bx17){_0xe06bx16= _0xe06bx16|| 200;return function(_0xe06bx18){if(_0xe06bx18){logger[_0xd993[24]](_0xd993[22],_0xe06bx17,_0xe06bx16,_0xd993[30]);logger[_0xd993[26]](_0xd993[25],_0xe06bx17,_0xe06bx16,_0xd993[30],JSON[_0xd993[31]](_0xe06bx18));return _0xe06bx15[_0xd993[29]](_0xe06bx16)[_0xd993[32]](_0xe06bx18)};return _0xe06bx15[_0xd993[29]](304)[_0xd993[28]]()}}function respondWithFilteredResult(_0xe06bx15,_0xe06bx1b,_0xe06bx17){return function(_0xe06bx18){if(_0xe06bx18){var _0xe06bx1c=_0xe06bx18[_0xd993[33]],_0xe06bx1d=_0xe06bx1b[_0xd993[34]],_0xe06bx1e=_0xe06bx1b[_0xd993[34]]+ _0xe06bx1b[_0xd993[35]],_0xe06bx16;if(_0xe06bx1e>= _0xe06bx1c){_0xe06bx1e= _0xe06bx1c;_0xe06bx16= 200}else {_0xe06bx16= 206};_0xe06bx15[_0xd993[29]](_0xe06bx16);logger[_0xd993[24]](_0xd993[22],_0xe06bx17,_0xe06bx16,_0xd993[36]);logger[_0xd993[26]](_0xd993[25],_0xe06bx17,_0xe06bx16,_0xd993[30],JSON[_0xd993[31]](_0xe06bx18));return _0xe06bx15[_0xd993[40]](_0xd993[37],_0xe06bx1d+ _0xd993[38]+ _0xe06bx1e+ _0xd993[39]+ _0xe06bx1c)[_0xd993[32]](_0xe06bx18)};return null}}function patchUpdates(_0xe06bx20){return function(_0xe06bx18){try{jsonpatch[_0xd993[41]](_0xe06bx18,_0xe06bx20,true)}catch(err){return BPromise[_0xd993[42]](err)};return _0xe06bx18[_0xd993[43]]()}}function saveUpdates(_0xe06bx22,_0xe06bx16,_0xe06bx17){return function(_0xe06bx18){if(_0xe06bx18){return _0xe06bx18[_0xd993[46]](_0xe06bx22)[_0xd993[45]](function(_0xe06bx23){logger[_0xd993[24]](_0xd993[22],_0xe06bx17,_0xe06bx16,_0xd993[44]);logger[_0xd993[26]](_0xd993[25],_0xe06bx17,_0xe06bx16,_0xd993[44],JSON[_0xd993[31]](_0xe06bx18));return _0xe06bx23})};return null}}function removeEntity(_0xe06bx15,_0xe06bx16,_0xe06bx17){return function(_0xe06bx18){if(_0xe06bx18){return _0xe06bx18[_0xd993[48]]()[_0xd993[45]](function(){logger[_0xd993[24]](_0xd993[22],_0xe06bx17,_0xe06bx16,_0xd993[47]);logger[_0xd993[26]](_0xd993[25],_0xe06bx17,_0xe06bx16,_0xd993[47],JSON[_0xd993[31]](_0xe06bx18));_0xe06bx15[_0xd993[29]](204)[_0xd993[28]]()})}}}function handleEntityNotFound(_0xe06bx15,_0xe06bx16,_0xe06bx17){return function(_0xe06bx18){if(!_0xe06bx18){logger[_0xd993[50]](_0xd993[22],_0xe06bx17,404,_0xd993[49]);_0xe06bx15[_0xd993[29]](404)[_0xd993[28]]();return null};return _0xe06bx18}}function handleError(_0xe06bx15,_0xe06bx16,_0xe06bx17){_0xe06bx16= _0xe06bx16|| 500;return function(_0xe06bx27){logger[_0xd993[50]](_0xd993[22],_0xe06bx17,_0xe06bx16,JSON[_0xd993[31]](_0xe06bx27));delete _0xe06bx27[_0xd993[51]];_0xe06bx15[_0xd993[29]](_0xe06bx16)[_0xd993[52]](_0xe06bx27)}}exports[_0xd993[53]]= function(_0xe06bx28,_0xe06bx15){var _0xe06bx1b={},_0xe06bx29={};_0xe06bx29[_0xd993[54]]= _[_0xd993[57]](db[_0xd993[56]][_0xd993[55]]);_0xe06bx29[_0xd993[58]]= _[_0xd993[57]](_0xe06bx28[_0xd993[58]]);_0xe06bx29[_0xd993[59]]= _[_0xd993[60]](_0xe06bx29[_0xd993[54]],_0xe06bx29[_0xd993[58]]);_0xe06bx1b[_0xd993[61]]= _[_0xd993[60]](_0xe06bx29[_0xd993[54]],qs[_0xd993[62]](_0xe06bx28[_0xd993[58]][_0xd993[62]]));_0xe06bx1b[_0xd993[61]]= (_0xe06bx1b[_0xd993[61]][_0xd993[63]])?_0xe06bx1b[_0xd993[61]]:_0xe06bx29[_0xd993[54]];if(!_0xe06bx28[_0xd993[58]][_0xd993[65]](_0xd993[64])){_0xe06bx1b[_0xd993[35]]= qs[_0xd993[35]](_0xe06bx28[_0xd993[58]][_0xd993[35]]);_0xe06bx1b[_0xd993[34]]= qs[_0xd993[34]](_0xe06bx28[_0xd993[58]][_0xd993[34]])};_0xe06bx1b[_0xd993[66]]= qs[_0xd993[67]](_0xe06bx28[_0xd993[58]][_0xd993[67]]);_0xe06bx1b[_0xd993[68]]= qs[_0xd993[59]](_[_0xd993[69]](_0xe06bx28[_0xd993[58]],_0xe06bx29[_0xd993[59]]));if(_0xe06bx28[_0xd993[58]][_0xd993[70]]){_0xe06bx1b[_0xd993[68]]= _[_0xd993[73]](_0xe06bx1b[_0xd993[68]],{$or:_[_0xd993[72]](_0xe06bx1b[_0xd993[61]],function(_0xe06bx2a){var _0xe06bx2b={};_0xe06bx2b[_0xe06bx2a]= {$like:_0xd993[71]+ _0xe06bx28[_0xd993[58]][_0xd993[70]]+ _0xd993[71]};return _0xe06bx2b})})};_0xe06bx1b= _[_0xd993[73]]({},_0xe06bx1b,_0xe06bx28[_0xd993[74]]);return db[_0xd993[56]][_0xd993[76]](_0xe06bx1b)[_0xd993[45]](respondWithFilteredResult(_0xe06bx15,_0xe06bx1b,_0xd993[53]))[_0xd993[75]](handleError(_0xe06bx15,null,_0xd993[53]))};exports[_0xd993[77]]= function(_0xe06bx28,_0xe06bx15){var _0xe06bx1b={raw:true,where:{id:_0xe06bx28[_0xd993[79]][_0xd993[78]]}},_0xe06bx29={};_0xe06bx29[_0xd993[54]]= _[_0xd993[57]](db[_0xd993[56]][_0xd993[55]]);_0xe06bx29[_0xd993[58]]= _[_0xd993[57]](_0xe06bx28[_0xd993[58]]);_0xe06bx29[_0xd993[59]]= _[_0xd993[60]](_0xe06bx29[_0xd993[54]],_0xe06bx29[_0xd993[58]]);_0xe06bx1b[_0xd993[61]]= _[_0xd993[60]](_0xe06bx29[_0xd993[54]],qs[_0xd993[62]](_0xe06bx28[_0xd993[58]][_0xd993[62]]));_0xe06bx1b[_0xd993[61]]= (_0xe06bx1b[_0xd993[61]][_0xd993[63]])?_0xe06bx1b[_0xd993[61]]:_0xe06bx29[_0xd993[54]];_0xe06bx1b= _[_0xd993[73]]({},_0xe06bx1b,_0xe06bx28[_0xd993[74]]);return db[_0xd993[56]][_0xd993[80]](_0xe06bx1b)[_0xd993[45]](handleEntityNotFound(_0xe06bx15,null,_0xd993[77]))[_0xd993[45]](respondWithResult(_0xe06bx15,null,_0xd993[77]))[_0xd993[75]](handleError(_0xe06bx15,null,_0xd993[77]))};exports[_0xd993[81]]= function(_0xe06bx28,_0xe06bx15){return db[_0xd993[56]][_0xd993[81]](_0xe06bx28[_0xd993[82]],{})[_0xd993[45]](respondWithResult(_0xe06bx15,201,_0xd993[81]))[_0xd993[75]](handleError(_0xe06bx15,null,_0xd993[81]))};exports[_0xd993[48]]= function(_0xe06bx28,_0xe06bx15){return db[_0xd993[56]][_0xd993[80]]({where:{id:_0xe06bx28[_0xd993[79]][_0xd993[78]]}})[_0xd993[45]](handleEntityNotFound(_0xe06bx15,null,_0xd993[48]))[_0xd993[45]](removeEntity(_0xe06bx15,null,_0xd993[48]))[_0xd993[75]](handleError(_0xe06bx15,null,_0xd993[48]))};exports[_0xd993[83]]= function(_0xe06bx28,_0xe06bx15){return db[_0xd993[56]][_0xd993[83]]()[_0xd993[45]](respondWithResult(_0xe06bx15,null,_0xd993[83]))[_0xd993[75]](handleError(_0xe06bx15,null,_0xd993[83]))};exports[_0xd993[46]]= function(_0xe06bx28,_0xe06bx15){if(_0xe06bx28[_0xd993[82]][_0xd993[84]]){delete _0xe06bx28[_0xd993[82]][_0xd993[84]]};return db[_0xd993[56]][_0xd993[80]]({where:{uniqueid:_0xe06bx28[_0xd993[79]][_0xd993[78]]}})[_0xd993[45]](handleEntityNotFound(_0xe06bx15,null,_0xd993[46]))[_0xd993[45]](saveUpdates(_0xe06bx28[_0xd993[82]],null,_0xd993[46]))[_0xd993[45]](respondWithResult(_0xe06bx15,null,_0xd993[46]))[_0xd993[75]](handleError(_0xe06bx15,null,_0xd993[46]))}
\ No newline at end of file
index 7a67ee9..dc68c84 100644 (file)
@@ -1 +1 @@
-var _0x2892=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x63\x61\x6C\x6C","\x64\x65\x66\x69\x6E\x65"];_0x2892[0];var _=require(_0x2892[1]);var util=require(_0x2892[2]);var logger=require(_0x2892[4])(_0x2892[3]);var attributes=require(_0x2892[5]);module[_0x2892[6]]= function(_0x1aa3x5,_0x1aa3x6){return _0x1aa3x5[_0x2892[9]](_0x2892[7],attributes,{tableName:_0x2892[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xab53=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x63\x61\x6C\x6C","\x64\x65\x66\x69\x6E\x65"];_0xab53[0];var _=require(_0xab53[1]);var util=require(_0xab53[2]);var logger=require(_0xab53[4])(_0xab53[3]);var attributes=require(_0xab53[5]);module[_0xab53[6]]= function(_0x5776x5,_0x5776x6){return _0x5776x5[_0xab53[9]](_0xab53[7],attributes,{tableName:_0xab53[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 5c1a6d0..f23b81e 100644 (file)
@@ -1 +1 @@
-var _0x1b7e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65"];_0x1b7e[0];var _=require(_0x1b7e[1]);var util=require(_0x1b7e[2]);var moment=require(_0x1b7e[3]);var BPromise=require(_0x1b7e[4]);var db=require(_0x1b7e[6])[_0x1b7e[5]];var utils=require(_0x1b7e[7]);var logger=require(_0x1b7e[9])(_0x1b7e[8]);var jayson=require(_0x1b7e[10]);var client=jayson[_0x1b7e[12]][_0x1b7e[11]]({port:9002});function respondWithRpcPromise(_0xaa08xb,_0xaa08xc,_0xaa08xd){return  new BPromise(function(_0xaa08xe,_0xaa08xf){return client[_0x1b7e[25]](_0xaa08xb,_0xaa08xd)[_0x1b7e[24]](function(_0xaa08x11){logger[_0x1b7e[17]](_0x1b7e[13],_0xaa08xc,_0x1b7e[16]);logger[_0x1b7e[20]](_0x1b7e[18],_0xaa08xc,_0x1b7e[16],JSON[_0x1b7e[19]](_0xaa08x11));if(_0xaa08x11[_0x1b7e[14]]){if(_0xaa08x11[_0x1b7e[14]][_0x1b7e[21]]=== 500){logger[_0x1b7e[14]](_0x1b7e[13],_0xaa08xc,_0xaa08x11[_0x1b7e[14]][_0x1b7e[22]]);return _0xaa08xf(_0xaa08x11[_0x1b7e[14]][_0x1b7e[22]])};logger[_0x1b7e[14]](_0x1b7e[13],_0xaa08xc,_0xaa08x11[_0x1b7e[14]][_0x1b7e[22]]);return _0xaa08xe(_0xaa08x11[_0x1b7e[14]][_0x1b7e[22]])}else {logger[_0x1b7e[17]](_0x1b7e[13],_0xaa08xc,_0x1b7e[16]);_0xaa08xe(_0xaa08x11[_0x1b7e[23]][_0x1b7e[22]])}})[_0x1b7e[15]](function(_0xaa08x10){logger[_0x1b7e[14]](_0x1b7e[13],_0xaa08xc,_0xaa08x10);_0xaa08xf(_0xaa08x10)})})}exports[_0x1b7e[26]]= function(_0xaa08xd){var _0xaa08x12=this;return  new Promise(function(_0xaa08xe,_0xaa08xf){return db[_0x1b7e[37]][_0x1b7e[36]]({raw:_0xaa08xd[_0x1b7e[27]]?(_0xaa08xd[_0x1b7e[27]][_0x1b7e[28]]=== undefined)?true:false:true,where:_0xaa08xd[_0x1b7e[27]]?_0xaa08xd[_0x1b7e[27]][_0x1b7e[29]]|| null:null,attributes:_0xaa08xd[_0x1b7e[27]]?_0xaa08xd[_0x1b7e[27]][_0x1b7e[30]]|| null:null,limit:_0xaa08xd[_0x1b7e[27]]?_0xaa08xd[_0x1b7e[27]][_0x1b7e[31]]|| null:null,include:_0xaa08xd[_0x1b7e[27]]?(_0xaa08xd[_0x1b7e[27]][_0x1b7e[32]]?_[_0x1b7e[35]](_0xaa08xd[_0x1b7e[27]][_0x1b7e[32]],function(_0xaa08x13){return {model:db[_0xaa08x13[_0x1b7e[33]]],as:_0xaa08x13[_0x1b7e[34]],attributes:_0xaa08x13[_0x1b7e[30]],include:_0xaa08x13[_0x1b7e[32]]?_[_0x1b7e[35]](_0xaa08x13[_0x1b7e[32]],function(_0xaa08x14){return {model:db[_0xaa08x14[_0x1b7e[33]]],as:_0xaa08x14[_0x1b7e[34]],attributes:_0xaa08x14[_0x1b7e[30]],include:_0xaa08x14[_0x1b7e[32]]?_[_0x1b7e[35]](_0xaa08x14[_0x1b7e[32]],function(_0xaa08x15){return {model:db[_0xaa08x15[_0x1b7e[33]]],as:_0xaa08x15[_0x1b7e[34]],attributes:_0xaa08x15[_0x1b7e[30]]}}):[]}}):[]}}):[]):[]})[_0x1b7e[24]](function(_0xaa08x11){logger[_0x1b7e[17]](_0x1b7e[26],_0xaa08xd);logger[_0x1b7e[20]](_0x1b7e[26],_0xaa08xd,JSON[_0x1b7e[19]](_0xaa08x11));_0xaa08xe(_0xaa08x11)})[_0x1b7e[15]](function(_0xaa08x10){logger[_0x1b7e[14]](_0x1b7e[26],_0xaa08x10[_0x1b7e[22]],_0xaa08xd);_0xaa08xf(_0xaa08x12[_0x1b7e[14]](500,_0xaa08x10[_0x1b7e[22]]))})})};exports[_0x1b7e[38]]= function(_0xaa08xd){var _0xaa08x12=this;return  new Promise(function(_0xaa08xe,_0xaa08xf){return db[_0x1b7e[37]][_0x1b7e[40]](_0xaa08xd[_0x1b7e[39]],{raw:_0xaa08xd[_0x1b7e[27]]?(_0xaa08xd[_0x1b7e[27]][_0x1b7e[28]]=== undefined)?true:false:true})[_0x1b7e[24]](function(_0xaa08x11){logger[_0x1b7e[17]](_0x1b7e[38],_0xaa08xd);logger[_0x1b7e[20]](_0x1b7e[38],_0xaa08xd,JSON[_0x1b7e[19]](_0xaa08x11));_0xaa08xe(_0xaa08x11)})[_0x1b7e[15]](function(_0xaa08x10){logger[_0x1b7e[14]](_0x1b7e[38],_0xaa08x10[_0x1b7e[22]],_0xaa08xd);_0xaa08xf(_0xaa08x12[_0x1b7e[14]](500,_0xaa08x10[_0x1b7e[22]]))})})};exports[_0x1b7e[41]]= function(_0xaa08xd){var _0xaa08x12=this;return  new Promise(function(_0xaa08xe,_0xaa08xf){return db[_0x1b7e[37]][_0x1b7e[42]](_0xaa08xd[_0x1b7e[39]],{raw:_0xaa08xd[_0x1b7e[27]]?(_0xaa08xd[_0x1b7e[27]][_0x1b7e[28]]=== undefined)?true:false:true,individualHooks:true,where:_0xaa08xd[_0x1b7e[27]]?_0xaa08xd[_0x1b7e[27]][_0x1b7e[29]]|| null:null,attributes:_0xaa08xd[_0x1b7e[27]]?_0xaa08xd[_0x1b7e[27]][_0x1b7e[30]]|| null:null,limit:_0xaa08xd[_0x1b7e[27]]?_0xaa08xd[_0x1b7e[27]][_0x1b7e[31]]|| null:null})[_0x1b7e[24]](function(_0xaa08x11){logger[_0x1b7e[17]](_0x1b7e[41],_0xaa08xd);logger[_0x1b7e[20]](_0x1b7e[41],_0xaa08xd,JSON[_0x1b7e[19]](_0xaa08x11));_0xaa08xe(_0xaa08x11)})[_0x1b7e[15]](function(_0xaa08x10){logger[_0x1b7e[14]](_0x1b7e[41],_0xaa08x10[_0x1b7e[22]],_0xaa08xd);_0xaa08xf(_0xaa08x12[_0x1b7e[14]](500,_0xaa08x10[_0x1b7e[22]]))})})}
\ No newline at end of file
+var _0x23fb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65"];_0x23fb[0];var _=require(_0x23fb[1]);var util=require(_0x23fb[2]);var moment=require(_0x23fb[3]);var BPromise=require(_0x23fb[4]);var db=require(_0x23fb[6])[_0x23fb[5]];var utils=require(_0x23fb[7]);var logger=require(_0x23fb[9])(_0x23fb[8]);var jayson=require(_0x23fb[10]);var client=jayson[_0x23fb[12]][_0x23fb[11]]({port:9002});function respondWithRpcPromise(_0xa6dexb,_0xa6dexc,_0xa6dexd){return  new BPromise(function(_0xa6dexe,_0xa6dexf){return client[_0x23fb[25]](_0xa6dexb,_0xa6dexd)[_0x23fb[24]](function(_0xa6dex11){logger[_0x23fb[17]](_0x23fb[13],_0xa6dexc,_0x23fb[16]);logger[_0x23fb[20]](_0x23fb[18],_0xa6dexc,_0x23fb[16],JSON[_0x23fb[19]](_0xa6dex11));if(_0xa6dex11[_0x23fb[14]]){if(_0xa6dex11[_0x23fb[14]][_0x23fb[21]]=== 500){logger[_0x23fb[14]](_0x23fb[13],_0xa6dexc,_0xa6dex11[_0x23fb[14]][_0x23fb[22]]);return _0xa6dexf(_0xa6dex11[_0x23fb[14]][_0x23fb[22]])};logger[_0x23fb[14]](_0x23fb[13],_0xa6dexc,_0xa6dex11[_0x23fb[14]][_0x23fb[22]]);return _0xa6dexe(_0xa6dex11[_0x23fb[14]][_0x23fb[22]])}else {logger[_0x23fb[17]](_0x23fb[13],_0xa6dexc,_0x23fb[16]);_0xa6dexe(_0xa6dex11[_0x23fb[23]][_0x23fb[22]])}})[_0x23fb[15]](function(_0xa6dex10){logger[_0x23fb[14]](_0x23fb[13],_0xa6dexc,_0xa6dex10);_0xa6dexf(_0xa6dex10)})})}exports[_0x23fb[26]]= function(_0xa6dexd){var _0xa6dex12=this;return  new Promise(function(_0xa6dexe,_0xa6dexf){return db[_0x23fb[37]][_0x23fb[36]]({raw:_0xa6dexd[_0x23fb[27]]?(_0xa6dexd[_0x23fb[27]][_0x23fb[28]]=== undefined)?true:false:true,where:_0xa6dexd[_0x23fb[27]]?_0xa6dexd[_0x23fb[27]][_0x23fb[29]]|| null:null,attributes:_0xa6dexd[_0x23fb[27]]?_0xa6dexd[_0x23fb[27]][_0x23fb[30]]|| null:null,limit:_0xa6dexd[_0x23fb[27]]?_0xa6dexd[_0x23fb[27]][_0x23fb[31]]|| null:null,include:_0xa6dexd[_0x23fb[27]]?(_0xa6dexd[_0x23fb[27]][_0x23fb[32]]?_[_0x23fb[35]](_0xa6dexd[_0x23fb[27]][_0x23fb[32]],function(_0xa6dex13){return {model:db[_0xa6dex13[_0x23fb[33]]],as:_0xa6dex13[_0x23fb[34]],attributes:_0xa6dex13[_0x23fb[30]],include:_0xa6dex13[_0x23fb[32]]?_[_0x23fb[35]](_0xa6dex13[_0x23fb[32]],function(_0xa6dex14){return {model:db[_0xa6dex14[_0x23fb[33]]],as:_0xa6dex14[_0x23fb[34]],attributes:_0xa6dex14[_0x23fb[30]],include:_0xa6dex14[_0x23fb[32]]?_[_0x23fb[35]](_0xa6dex14[_0x23fb[32]],function(_0xa6dex15){return {model:db[_0xa6dex15[_0x23fb[33]]],as:_0xa6dex15[_0x23fb[34]],attributes:_0xa6dex15[_0x23fb[30]]}}):[]}}):[]}}):[]):[]})[_0x23fb[24]](function(_0xa6dex11){logger[_0x23fb[17]](_0x23fb[26],_0xa6dexd);logger[_0x23fb[20]](_0x23fb[26],_0xa6dexd,JSON[_0x23fb[19]](_0xa6dex11));_0xa6dexe(_0xa6dex11)})[_0x23fb[15]](function(_0xa6dex10){logger[_0x23fb[14]](_0x23fb[26],_0xa6dex10[_0x23fb[22]],_0xa6dexd);_0xa6dexf(_0xa6dex12[_0x23fb[14]](500,_0xa6dex10[_0x23fb[22]]))})})};exports[_0x23fb[38]]= function(_0xa6dexd){var _0xa6dex12=this;return  new Promise(function(_0xa6dexe,_0xa6dexf){return db[_0x23fb[37]][_0x23fb[40]](_0xa6dexd[_0x23fb[39]],{raw:_0xa6dexd[_0x23fb[27]]?(_0xa6dexd[_0x23fb[27]][_0x23fb[28]]=== undefined)?true:false:true})[_0x23fb[24]](function(_0xa6dex11){logger[_0x23fb[17]](_0x23fb[38],_0xa6dexd);logger[_0x23fb[20]](_0x23fb[38],_0xa6dexd,JSON[_0x23fb[19]](_0xa6dex11));_0xa6dexe(_0xa6dex11)})[_0x23fb[15]](function(_0xa6dex10){logger[_0x23fb[14]](_0x23fb[38],_0xa6dex10[_0x23fb[22]],_0xa6dexd);_0xa6dexf(_0xa6dex12[_0x23fb[14]](500,_0xa6dex10[_0x23fb[22]]))})})};exports[_0x23fb[41]]= function(_0xa6dexd){var _0xa6dex12=this;return  new Promise(function(_0xa6dexe,_0xa6dexf){return db[_0x23fb[37]][_0x23fb[42]](_0xa6dexd[_0x23fb[39]],{raw:_0xa6dexd[_0x23fb[27]]?(_0xa6dexd[_0x23fb[27]][_0x23fb[28]]=== undefined)?true:false:true,individualHooks:true,where:_0xa6dexd[_0x23fb[27]]?_0xa6dexd[_0x23fb[27]][_0x23fb[29]]|| null:null,attributes:_0xa6dexd[_0x23fb[27]]?_0xa6dexd[_0x23fb[27]][_0x23fb[30]]|| null:null,limit:_0xa6dexd[_0x23fb[27]]?_0xa6dexd[_0x23fb[27]][_0x23fb[31]]|| null:null})[_0x23fb[24]](function(_0xa6dex11){logger[_0x23fb[17]](_0x23fb[41],_0xa6dexd);logger[_0x23fb[20]](_0x23fb[41],_0xa6dexd,JSON[_0x23fb[19]](_0xa6dex11));_0xa6dexe(_0xa6dex11)})[_0x23fb[15]](function(_0xa6dex10){logger[_0x23fb[14]](_0x23fb[41],_0xa6dex10[_0x23fb[22]],_0xa6dexd);_0xa6dexf(_0xa6dex12[_0x23fb[14]](500,_0xa6dex10[_0x23fb[22]]))})})}
\ No newline at end of file
index 53b82d5..46f8f7d 100644 (file)
@@ -1 +1 @@
-var _0x5797=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5797[0];var multer=require(_0x5797[1]);var util=require(_0x5797[2]);var path=require(_0x5797[3]);var express=require(_0x5797[4]);var router=express.Router();var auth=require(_0x5797[5]);var config=require(_0x5797[6]);var controller=require(_0x5797[7]);router[_0x5797[11]](_0x5797[8],auth[_0x5797[9]](),controller[_0x5797[10]]);router[_0x5797[11]](_0x5797[12],auth[_0x5797[9]](),controller[_0x5797[13]]);router[_0x5797[15]](_0x5797[8],auth[_0x5797[9]](),controller[_0x5797[14]]);router[_0x5797[17]](_0x5797[12],auth[_0x5797[9]](),controller[_0x5797[16]]);router[_0x5797[19]](_0x5797[12],auth[_0x5797[9]](),controller[_0x5797[18]]);module[_0x5797[20]]= router
\ No newline at end of file
+var _0x2c36=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x2c36[0];var multer=require(_0x2c36[1]);var util=require(_0x2c36[2]);var path=require(_0x2c36[3]);var express=require(_0x2c36[4]);var router=express.Router();var auth=require(_0x2c36[5]);var config=require(_0x2c36[6]);var controller=require(_0x2c36[7]);router[_0x2c36[11]](_0x2c36[8],auth[_0x2c36[9]](),controller[_0x2c36[10]]);router[_0x2c36[11]](_0x2c36[12],auth[_0x2c36[9]](),controller[_0x2c36[13]]);router[_0x2c36[15]](_0x2c36[8],auth[_0x2c36[9]](),controller[_0x2c36[14]]);router[_0x2c36[17]](_0x2c36[12],auth[_0x2c36[9]](),controller[_0x2c36[16]]);router[_0x2c36[19]](_0x2c36[12],auth[_0x2c36[9]](),controller[_0x2c36[18]]);module[_0x2c36[20]]= router
\ No newline at end of file
index 5b9c752..3481a06 100644 (file)
@@ -1 +1 @@
-var _0x74b2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x6F\x70\x74\x69\x6F\x6E\x73","","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x70\x6C\x69\x74","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x74b2[0];var Sequelize=require(_0x74b2[1]);module[_0x74b2[2]]= {name:{type:Sequelize[_0x74b2[3]]},prefix:{type:Sequelize[_0x74b2[3]],unique:_0x74b2[4],allowNull:false},options:{type:Sequelize[_0x74b2[3]],set:function(_0x819ex2){this[_0x74b2[8]](_0x74b2[5],_0x819ex2?_0x819ex2[_0x74b2[7]](_0x74b2[6]):[])},get:function(){return this[_0x74b2[9]](_0x74b2[5])?this[_0x74b2[9]](_0x74b2[5])[_0x74b2[10]](_0x74b2[6]):[]}},auth:{type:Sequelize[_0x74b2[11]],defaultValue:false},password:{type:Sequelize[_0x74b2[3]]},record:{type:Sequelize[_0x74b2[11]],defaultValue:false},recordingFormat:{type:Sequelize[_0x74b2[3]]},description:{type:Sequelize[_0x74b2[3]]}}
\ No newline at end of file
+var _0xd26d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x6F\x70\x74\x69\x6F\x6E\x73","","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x70\x6C\x69\x74","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xd26d[0];var Sequelize=require(_0xd26d[1]);module[_0xd26d[2]]= {name:{type:Sequelize[_0xd26d[3]]},prefix:{type:Sequelize[_0xd26d[3]],unique:_0xd26d[4],allowNull:false},options:{type:Sequelize[_0xd26d[3]],set:function(_0x681dx2){this[_0xd26d[8]](_0xd26d[5],_0x681dx2?_0x681dx2[_0xd26d[7]](_0xd26d[6]):[])},get:function(){return this[_0xd26d[9]](_0xd26d[5])?this[_0xd26d[9]](_0xd26d[5])[_0xd26d[10]](_0xd26d[6]):[]}},auth:{type:Sequelize[_0xd26d[11]],defaultValue:false},password:{type:Sequelize[_0xd26d[3]]},record:{type:Sequelize[_0xd26d[11]],defaultValue:false},recordingFormat:{type:Sequelize[_0xd26d[3]]},description:{type:Sequelize[_0xd26d[3]]}}
\ No newline at end of file
index c8bae72..dd61776 100644 (file)
@@ -1 +1 @@
-var _0x2619=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x2619[0];var jsonpatch=require(_0x2619[1]);var rp=require(_0x2619[2]);var moment=require(_0x2619[3]);var BPromise=require(_0x2619[4]);var util=require(_0x2619[5]);var path=require(_0x2619[6]);var sox=require(_0x2619[7]);var ejs=require(_0x2619[8]);var fs=require(_0x2619[9]);var _=require(_0x2619[10]);var squel=require(_0x2619[11]);var crypto=require(_0x2619[12]);var jsforce=require(_0x2619[13]);var toCsv=require(_0x2619[14]);var qs=require(_0x2619[15]);var logger=require(_0x2619[17])(_0x2619[16]);var utils=require(_0x2619[18]);var config=require(_0x2619[19]);var db=require(_0x2619[21])[_0x2619[20]];function respondWithStatusCode(_0x1a99x15,_0x1a99x16,_0x1a99x17){_0x1a99x16= _0x1a99x16|| 204;return function(_0x1a99x18){if(_0x1a99x18){logger[_0x2619[24]](_0x2619[22],_0x1a99x17,_0x1a99x16,_0x2619[23]);logger[_0x2619[26]](_0x2619[25],_0x1a99x17,_0x1a99x16,_0x2619[23]);return _0x1a99x15[_0x2619[27]](_0x1a99x16)};return _0x1a99x15[_0x2619[29]](304)[_0x2619[28]]()}}function respondWithResult(_0x1a99x15,_0x1a99x16,_0x1a99x17){_0x1a99x16= _0x1a99x16|| 200;return function(_0x1a99x18){if(_0x1a99x18){logger[_0x2619[24]](_0x2619[22],_0x1a99x17,_0x1a99x16,_0x2619[30]);logger[_0x2619[26]](_0x2619[25],_0x1a99x17,_0x1a99x16,_0x2619[30],JSON[_0x2619[31]](_0x1a99x18));return _0x1a99x15[_0x2619[29]](_0x1a99x16)[_0x2619[32]](_0x1a99x18)};return _0x1a99x15[_0x2619[29]](304)[_0x2619[28]]()}}function respondWithFilteredResult(_0x1a99x15,_0x1a99x1b,_0x1a99x17){return function(_0x1a99x18){if(_0x1a99x18){var _0x1a99x1c=_0x1a99x18[_0x2619[33]],_0x1a99x1d=_0x1a99x1b[_0x2619[34]],_0x1a99x1e=_0x1a99x1b[_0x2619[34]]+ _0x1a99x1b[_0x2619[35]],_0x1a99x16;if(_0x1a99x1e>= _0x1a99x1c){_0x1a99x1e= _0x1a99x1c;_0x1a99x16= 200}else {_0x1a99x16= 206};_0x1a99x15[_0x2619[29]](_0x1a99x16);logger[_0x2619[24]](_0x2619[22],_0x1a99x17,_0x1a99x16,_0x2619[36]);logger[_0x2619[26]](_0x2619[25],_0x1a99x17,_0x1a99x16,_0x2619[30],JSON[_0x2619[31]](_0x1a99x18));return _0x1a99x15[_0x2619[40]](_0x2619[37],_0x1a99x1d+ _0x2619[38]+ _0x1a99x1e+ _0x2619[39]+ _0x1a99x1c)[_0x2619[32]](_0x1a99x18)};return null}}function patchUpdates(_0x1a99x20){return function(_0x1a99x18){try{jsonpatch[_0x2619[41]](_0x1a99x18,_0x1a99x20,true)}catch(err){return BPromise[_0x2619[42]](err)};return _0x1a99x18[_0x2619[43]]()}}function saveUpdates(_0x1a99x22,_0x1a99x16,_0x1a99x17){return function(_0x1a99x18){if(_0x1a99x18){return _0x1a99x18[_0x2619[46]](_0x1a99x22)[_0x2619[45]](function(_0x1a99x23){logger[_0x2619[24]](_0x2619[22],_0x1a99x17,_0x1a99x16,_0x2619[44]);logger[_0x2619[26]](_0x2619[25],_0x1a99x17,_0x1a99x16,_0x2619[44],JSON[_0x2619[31]](_0x1a99x18));return _0x1a99x23})};return null}}function removeEntity(_0x1a99x15,_0x1a99x16,_0x1a99x17){return function(_0x1a99x18){if(_0x1a99x18){return _0x1a99x18[_0x2619[48]]()[_0x2619[45]](function(){logger[_0x2619[24]](_0x2619[22],_0x1a99x17,_0x1a99x16,_0x2619[47]);logger[_0x2619[26]](_0x2619[25],_0x1a99x17,_0x1a99x16,_0x2619[47],JSON[_0x2619[31]](_0x1a99x18));_0x1a99x15[_0x2619[29]](204)[_0x2619[28]]()})}}}function handleEntityNotFound(_0x1a99x15,_0x1a99x16,_0x1a99x17){return function(_0x1a99x18){if(!_0x1a99x18){logger[_0x2619[50]](_0x2619[22],_0x1a99x17,404,_0x2619[49]);_0x1a99x15[_0x2619[29]](404)[_0x2619[28]]();return null};return _0x1a99x18}}function handleError(_0x1a99x15,_0x1a99x16,_0x1a99x17){_0x1a99x16= _0x1a99x16|| 500;return function(_0x1a99x27){logger[_0x2619[50]](_0x2619[22],_0x1a99x17,_0x1a99x16,JSON[_0x2619[31]](_0x1a99x27));delete _0x1a99x27[_0x2619[51]];_0x1a99x15[_0x2619[29]](_0x1a99x16)[_0x2619[52]](_0x1a99x27)}}exports[_0x2619[53]]= function(_0x1a99x28,_0x1a99x15){var _0x1a99x1b={},_0x1a99x29={};_0x1a99x29[_0x2619[54]]= _[_0x2619[57]](db[_0x2619[56]][_0x2619[55]]);_0x1a99x29[_0x2619[58]]= _[_0x2619[57]](_0x1a99x28[_0x2619[58]]);_0x1a99x29[_0x2619[59]]= _[_0x2619[60]](_0x1a99x29[_0x2619[54]],_0x1a99x29[_0x2619[58]]);_0x1a99x1b[_0x2619[61]]= _[_0x2619[60]](_0x1a99x29[_0x2619[54]],qs[_0x2619[62]](_0x1a99x28[_0x2619[58]][_0x2619[62]]));_0x1a99x1b[_0x2619[61]]= (_0x1a99x1b[_0x2619[61]][_0x2619[63]])?_0x1a99x1b[_0x2619[61]]:_0x1a99x29[_0x2619[54]];if(!_0x1a99x28[_0x2619[58]][_0x2619[65]](_0x2619[64])){_0x1a99x1b[_0x2619[35]]= qs[_0x2619[35]](_0x1a99x28[_0x2619[58]][_0x2619[35]]);_0x1a99x1b[_0x2619[34]]= qs[_0x2619[34]](_0x1a99x28[_0x2619[58]][_0x2619[34]])};_0x1a99x1b[_0x2619[66]]= qs[_0x2619[67]](_0x1a99x28[_0x2619[58]][_0x2619[67]]);_0x1a99x1b[_0x2619[68]]= qs[_0x2619[59]](_[_0x2619[69]](_0x1a99x28[_0x2619[58]],_0x1a99x29[_0x2619[59]]));if(_0x1a99x28[_0x2619[58]][_0x2619[70]]){_0x1a99x1b[_0x2619[68]]= _[_0x2619[73]](_0x1a99x1b[_0x2619[68]],{$or:_[_0x2619[72]](_0x1a99x1b[_0x2619[61]],function(_0x1a99x2a){var _0x1a99x2b={};_0x1a99x2b[_0x1a99x2a]= {$like:_0x2619[71]+ _0x1a99x28[_0x2619[58]][_0x2619[70]]+ _0x2619[71]};return _0x1a99x2b})})};_0x1a99x1b= _[_0x2619[73]]({},_0x1a99x1b,_0x1a99x28[_0x2619[74]]);return db[_0x2619[56]][_0x2619[76]](_0x1a99x1b)[_0x2619[45]](respondWithFilteredResult(_0x1a99x15,_0x1a99x1b,_0x2619[53]))[_0x2619[75]](handleError(_0x1a99x15,null,_0x2619[53]))};exports[_0x2619[77]]= function(_0x1a99x28,_0x1a99x15){var _0x1a99x1b={raw:false,where:{id:_0x1a99x28[_0x2619[79]][_0x2619[78]]}},_0x1a99x29={};_0x1a99x29[_0x2619[54]]= _[_0x2619[57]](db[_0x2619[56]][_0x2619[55]]);_0x1a99x29[_0x2619[58]]= _[_0x2619[57]](_0x1a99x28[_0x2619[58]]);_0x1a99x29[_0x2619[59]]= _[_0x2619[60]](_0x1a99x29[_0x2619[54]],_0x1a99x29[_0x2619[58]]);_0x1a99x1b[_0x2619[61]]= _[_0x2619[60]](_0x1a99x29[_0x2619[54]],qs[_0x2619[62]](_0x1a99x28[_0x2619[58]][_0x2619[62]]));_0x1a99x1b[_0x2619[61]]= (_0x1a99x1b[_0x2619[61]][_0x2619[63]])?_0x1a99x1b[_0x2619[61]]:_0x1a99x29[_0x2619[54]];_0x1a99x1b= _[_0x2619[73]]({},_0x1a99x1b,_0x1a99x28[_0x2619[74]]);return db[_0x2619[56]][_0x2619[80]](_0x1a99x1b)[_0x2619[45]](handleEntityNotFound(_0x1a99x15,null,_0x2619[77]))[_0x2619[45]](respondWithResult(_0x1a99x15,null,_0x2619[77]))[_0x2619[75]](handleError(_0x1a99x15,null,_0x2619[77]))};exports[_0x2619[81]]= function(_0x1a99x28,_0x1a99x15){return db[_0x2619[56]][_0x2619[81]](_0x1a99x28[_0x2619[82]],{})[_0x2619[45]](respondWithResult(_0x1a99x15,201,_0x2619[81]))[_0x2619[75]](handleError(_0x1a99x15,null,_0x2619[81]))};exports[_0x2619[46]]= function(_0x1a99x28,_0x1a99x15){if(_0x1a99x28[_0x2619[82]][_0x2619[78]]){delete _0x1a99x28[_0x2619[82]][_0x2619[78]]};return db[_0x2619[56]][_0x2619[80]]({where:{id:_0x1a99x28[_0x2619[79]][_0x2619[78]]}})[_0x2619[45]](handleEntityNotFound(_0x1a99x15,null,_0x2619[46]))[_0x2619[45]](saveUpdates(_0x1a99x28[_0x2619[82]],null,_0x2619[46]))[_0x2619[45]](respondWithResult(_0x1a99x15,null,_0x2619[46]))[_0x2619[75]](handleError(_0x1a99x15,null,_0x2619[46]))};exports[_0x2619[48]]= function(_0x1a99x28,_0x1a99x15){return db[_0x2619[56]][_0x2619[80]]({where:{id:_0x1a99x28[_0x2619[79]][_0x2619[78]]}})[_0x2619[45]](handleEntityNotFound(_0x1a99x15,null,_0x2619[48]))[_0x2619[45]](removeEntity(_0x1a99x15,null,_0x2619[48]))[_0x2619[75]](handleError(_0x1a99x15,null,_0x2619[48]))}
\ No newline at end of file
+var _0x6945=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x6945[0];var jsonpatch=require(_0x6945[1]);var rp=require(_0x6945[2]);var moment=require(_0x6945[3]);var BPromise=require(_0x6945[4]);var util=require(_0x6945[5]);var path=require(_0x6945[6]);var sox=require(_0x6945[7]);var ejs=require(_0x6945[8]);var fs=require(_0x6945[9]);var _=require(_0x6945[10]);var squel=require(_0x6945[11]);var crypto=require(_0x6945[12]);var jsforce=require(_0x6945[13]);var toCsv=require(_0x6945[14]);var qs=require(_0x6945[15]);var logger=require(_0x6945[17])(_0x6945[16]);var utils=require(_0x6945[18]);var config=require(_0x6945[19]);var db=require(_0x6945[21])[_0x6945[20]];function respondWithStatusCode(_0xcf22x15,_0xcf22x16,_0xcf22x17){_0xcf22x16= _0xcf22x16|| 204;return function(_0xcf22x18){if(_0xcf22x18){logger[_0x6945[24]](_0x6945[22],_0xcf22x17,_0xcf22x16,_0x6945[23]);logger[_0x6945[26]](_0x6945[25],_0xcf22x17,_0xcf22x16,_0x6945[23]);return _0xcf22x15[_0x6945[27]](_0xcf22x16)};return _0xcf22x15[_0x6945[29]](304)[_0x6945[28]]()}}function respondWithResult(_0xcf22x15,_0xcf22x16,_0xcf22x17){_0xcf22x16= _0xcf22x16|| 200;return function(_0xcf22x18){if(_0xcf22x18){logger[_0x6945[24]](_0x6945[22],_0xcf22x17,_0xcf22x16,_0x6945[30]);logger[_0x6945[26]](_0x6945[25],_0xcf22x17,_0xcf22x16,_0x6945[30],JSON[_0x6945[31]](_0xcf22x18));return _0xcf22x15[_0x6945[29]](_0xcf22x16)[_0x6945[32]](_0xcf22x18)};return _0xcf22x15[_0x6945[29]](304)[_0x6945[28]]()}}function respondWithFilteredResult(_0xcf22x15,_0xcf22x1b,_0xcf22x17){return function(_0xcf22x18){if(_0xcf22x18){var _0xcf22x1c=_0xcf22x18[_0x6945[33]],_0xcf22x1d=_0xcf22x1b[_0x6945[34]],_0xcf22x1e=_0xcf22x1b[_0x6945[34]]+ _0xcf22x1b[_0x6945[35]],_0xcf22x16;if(_0xcf22x1e>= _0xcf22x1c){_0xcf22x1e= _0xcf22x1c;_0xcf22x16= 200}else {_0xcf22x16= 206};_0xcf22x15[_0x6945[29]](_0xcf22x16);logger[_0x6945[24]](_0x6945[22],_0xcf22x17,_0xcf22x16,_0x6945[36]);logger[_0x6945[26]](_0x6945[25],_0xcf22x17,_0xcf22x16,_0x6945[30],JSON[_0x6945[31]](_0xcf22x18));return _0xcf22x15[_0x6945[40]](_0x6945[37],_0xcf22x1d+ _0x6945[38]+ _0xcf22x1e+ _0x6945[39]+ _0xcf22x1c)[_0x6945[32]](_0xcf22x18)};return null}}function patchUpdates(_0xcf22x20){return function(_0xcf22x18){try{jsonpatch[_0x6945[41]](_0xcf22x18,_0xcf22x20,true)}catch(err){return BPromise[_0x6945[42]](err)};return _0xcf22x18[_0x6945[43]]()}}function saveUpdates(_0xcf22x22,_0xcf22x16,_0xcf22x17){return function(_0xcf22x18){if(_0xcf22x18){return _0xcf22x18[_0x6945[46]](_0xcf22x22)[_0x6945[45]](function(_0xcf22x23){logger[_0x6945[24]](_0x6945[22],_0xcf22x17,_0xcf22x16,_0x6945[44]);logger[_0x6945[26]](_0x6945[25],_0xcf22x17,_0xcf22x16,_0x6945[44],JSON[_0x6945[31]](_0xcf22x18));return _0xcf22x23})};return null}}function removeEntity(_0xcf22x15,_0xcf22x16,_0xcf22x17){return function(_0xcf22x18){if(_0xcf22x18){return _0xcf22x18[_0x6945[48]]()[_0x6945[45]](function(){logger[_0x6945[24]](_0x6945[22],_0xcf22x17,_0xcf22x16,_0x6945[47]);logger[_0x6945[26]](_0x6945[25],_0xcf22x17,_0xcf22x16,_0x6945[47],JSON[_0x6945[31]](_0xcf22x18));_0xcf22x15[_0x6945[29]](204)[_0x6945[28]]()})}}}function handleEntityNotFound(_0xcf22x15,_0xcf22x16,_0xcf22x17){return function(_0xcf22x18){if(!_0xcf22x18){logger[_0x6945[50]](_0x6945[22],_0xcf22x17,404,_0x6945[49]);_0xcf22x15[_0x6945[29]](404)[_0x6945[28]]();return null};return _0xcf22x18}}function handleError(_0xcf22x15,_0xcf22x16,_0xcf22x17){_0xcf22x16= _0xcf22x16|| 500;return function(_0xcf22x27){logger[_0x6945[50]](_0x6945[22],_0xcf22x17,_0xcf22x16,JSON[_0x6945[31]](_0xcf22x27));delete _0xcf22x27[_0x6945[51]];_0xcf22x15[_0x6945[29]](_0xcf22x16)[_0x6945[52]](_0xcf22x27)}}exports[_0x6945[53]]= function(_0xcf22x28,_0xcf22x15){var _0xcf22x1b={},_0xcf22x29={};_0xcf22x29[_0x6945[54]]= _[_0x6945[57]](db[_0x6945[56]][_0x6945[55]]);_0xcf22x29[_0x6945[58]]= _[_0x6945[57]](_0xcf22x28[_0x6945[58]]);_0xcf22x29[_0x6945[59]]= _[_0x6945[60]](_0xcf22x29[_0x6945[54]],_0xcf22x29[_0x6945[58]]);_0xcf22x1b[_0x6945[61]]= _[_0x6945[60]](_0xcf22x29[_0x6945[54]],qs[_0x6945[62]](_0xcf22x28[_0x6945[58]][_0x6945[62]]));_0xcf22x1b[_0x6945[61]]= (_0xcf22x1b[_0x6945[61]][_0x6945[63]])?_0xcf22x1b[_0x6945[61]]:_0xcf22x29[_0x6945[54]];if(!_0xcf22x28[_0x6945[58]][_0x6945[65]](_0x6945[64])){_0xcf22x1b[_0x6945[35]]= qs[_0x6945[35]](_0xcf22x28[_0x6945[58]][_0x6945[35]]);_0xcf22x1b[_0x6945[34]]= qs[_0x6945[34]](_0xcf22x28[_0x6945[58]][_0x6945[34]])};_0xcf22x1b[_0x6945[66]]= qs[_0x6945[67]](_0xcf22x28[_0x6945[58]][_0x6945[67]]);_0xcf22x1b[_0x6945[68]]= qs[_0x6945[59]](_[_0x6945[69]](_0xcf22x28[_0x6945[58]],_0xcf22x29[_0x6945[59]]));if(_0xcf22x28[_0x6945[58]][_0x6945[70]]){_0xcf22x1b[_0x6945[68]]= _[_0x6945[73]](_0xcf22x1b[_0x6945[68]],{$or:_[_0x6945[72]](_0xcf22x1b[_0x6945[61]],function(_0xcf22x2a){var _0xcf22x2b={};_0xcf22x2b[_0xcf22x2a]= {$like:_0x6945[71]+ _0xcf22x28[_0x6945[58]][_0x6945[70]]+ _0x6945[71]};return _0xcf22x2b})})};_0xcf22x1b= _[_0x6945[73]]({},_0xcf22x1b,_0xcf22x28[_0x6945[74]]);return db[_0x6945[56]][_0x6945[76]](_0xcf22x1b)[_0x6945[45]](respondWithFilteredResult(_0xcf22x15,_0xcf22x1b,_0x6945[53]))[_0x6945[75]](handleError(_0xcf22x15,null,_0x6945[53]))};exports[_0x6945[77]]= function(_0xcf22x28,_0xcf22x15){var _0xcf22x1b={raw:false,where:{id:_0xcf22x28[_0x6945[79]][_0x6945[78]]}},_0xcf22x29={};_0xcf22x29[_0x6945[54]]= _[_0x6945[57]](db[_0x6945[56]][_0x6945[55]]);_0xcf22x29[_0x6945[58]]= _[_0x6945[57]](_0xcf22x28[_0x6945[58]]);_0xcf22x29[_0x6945[59]]= _[_0x6945[60]](_0xcf22x29[_0x6945[54]],_0xcf22x29[_0x6945[58]]);_0xcf22x1b[_0x6945[61]]= _[_0x6945[60]](_0xcf22x29[_0x6945[54]],qs[_0x6945[62]](_0xcf22x28[_0x6945[58]][_0x6945[62]]));_0xcf22x1b[_0x6945[61]]= (_0xcf22x1b[_0x6945[61]][_0x6945[63]])?_0xcf22x1b[_0x6945[61]]:_0xcf22x29[_0x6945[54]];_0xcf22x1b= _[_0x6945[73]]({},_0xcf22x1b,_0xcf22x28[_0x6945[74]]);return db[_0x6945[56]][_0x6945[80]](_0xcf22x1b)[_0x6945[45]](handleEntityNotFound(_0xcf22x15,null,_0x6945[77]))[_0x6945[45]](respondWithResult(_0xcf22x15,null,_0x6945[77]))[_0x6945[75]](handleError(_0xcf22x15,null,_0x6945[77]))};exports[_0x6945[81]]= function(_0xcf22x28,_0xcf22x15){return db[_0x6945[56]][_0x6945[81]](_0xcf22x28[_0x6945[82]],{})[_0x6945[45]](respondWithResult(_0xcf22x15,201,_0x6945[81]))[_0x6945[75]](handleError(_0xcf22x15,null,_0x6945[81]))};exports[_0x6945[46]]= function(_0xcf22x28,_0xcf22x15){if(_0xcf22x28[_0x6945[82]][_0x6945[78]]){delete _0xcf22x28[_0x6945[82]][_0x6945[78]]};return db[_0x6945[56]][_0x6945[80]]({where:{id:_0xcf22x28[_0x6945[79]][_0x6945[78]]}})[_0x6945[45]](handleEntityNotFound(_0xcf22x15,null,_0x6945[46]))[_0x6945[45]](saveUpdates(_0xcf22x28[_0x6945[82]],null,_0x6945[46]))[_0x6945[45]](respondWithResult(_0xcf22x15,null,_0x6945[46]))[_0x6945[75]](handleError(_0xcf22x15,null,_0x6945[46]))};exports[_0x6945[48]]= function(_0xcf22x28,_0xcf22x15){return db[_0x6945[56]][_0x6945[80]]({where:{id:_0xcf22x28[_0x6945[79]][_0x6945[78]]}})[_0x6945[45]](handleEntityNotFound(_0xcf22x15,null,_0x6945[48]))[_0x6945[45]](removeEntity(_0xcf22x15,null,_0x6945[48]))[_0x6945[75]](handleError(_0xcf22x15,null,_0x6945[48]))}
\ No newline at end of file
index c9523c4..670d2e9 100644 (file)
@@ -1 +1 @@
-var _0x4beb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x73\x79\x73\x74\x65\x6D","\x25\x73\x25\x73","\x70\x72\x65\x66\x69\x78","\x66\x6F\x72\x6D\x61\x74","\x69\x64","\x72\x65\x63\x6F\x72\x64","\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x24\x7B\x55\x4E\x49\x51\x55\x45\x49\x44\x7D\x2E\x25\x73","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x46\x6F\x72\x6D\x61\x74","\x6D\x65\x72\x67\x65","\x70\x75\x73\x68","\x61\x75\x74\x68","\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x43\x68\x61\x6E\x53\x70\x79","\x53\x49\x50\x2F\x25\x73\x2C\x25\x73","\x6F\x70\x74\x69\x6F\x6E\x73","","\x6A\x6F\x69\x6E","\x53\x74\x6F\x70\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x6C\x65\x6E\x67\x74\x68","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x6E\x61\x6D\x65","\x63\x6F\x6E\x63\x61\x74","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x61\x67\x65\x6E\x74","\x66\x69\x6E\x64\x41\x6C\x6C","\x55\x73\x65\x72","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x6F\x64\x65\x6C\x73","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x76\x6F\x69\x63\x65\x5F\x63\x68\x61\x6E\x73\x70\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x66\x69\x6E\x65"];_0x4beb[0];var _=require(_0x4beb[1]);var util=require(_0x4beb[2]);var BPromise=require(_0x4beb[3]);var logger=require(_0x4beb[5])(_0x4beb[4]);var attributes=require(_0x4beb[6]);var getUserApplications=function(_0xa6f1x7,_0xa6f1x8,_0xa6f1x9){var _0xa6f1xa=1;var _0xa6f1xb=[];var _0xa6f1xc={context:_0x4beb[7],type:_0x4beb[8],isApp:false};var _0xa6f1xd={exten:util[_0x4beb[11]](_0x4beb[9],_0xa6f1x7[_0x4beb[10]],_0xa6f1x9),ChanSpyId:_0xa6f1x7[_0x4beb[12]],UserId:_0xa6f1x8[_0x4beb[12]]};if(_0xa6f1x7[_0x4beb[13]]){_0xa6f1xb[_0x4beb[18]](_[_0x4beb[17]]({app:_0x4beb[14],appdata:util[_0x4beb[11]](_0x4beb[15],_0xa6f1x7[_0x4beb[16]]),priority:_0xa6f1xa++},_0xa6f1xc,_0xa6f1xd))};if(_0xa6f1x7[_0x4beb[19]]){_0xa6f1xb[_0x4beb[18]](_[_0x4beb[17]]({app:_0x4beb[20],appdata:_0xa6f1x7[_0x4beb[21]],priority:_0xa6f1xa++},_0xa6f1xc,_0xa6f1xd))};_0xa6f1xb[_0x4beb[18]](_[_0x4beb[17]]({app:_0x4beb[22],appdata:util[_0x4beb[11]](_0x4beb[23],_0xa6f1x9,_0xa6f1x7[_0x4beb[24]]?_0xa6f1x7[_0x4beb[24]][_0x4beb[26]](_0x4beb[25]):null),priority:_0xa6f1xa++},_0xa6f1xc,_0xa6f1xd));if(_0xa6f1x7[_0x4beb[13]]){_0xa6f1xb[_0x4beb[18]](_[_0x4beb[17]]({app:_0x4beb[27],priority:_0xa6f1xa++},_0xa6f1xc,_0xa6f1xd))};return _0xa6f1xb};var getChanSpyApplications=function(_0xa6f1x7,_0xa6f1xf){var _0xa6f1xb=[];for(var _0xa6f1x10=0,_0xa6f1xa=1;_0xa6f1x10< _0xa6f1xf[_0x4beb[28]];_0xa6f1x10++,_0xa6f1xa= 1){var _0xa6f1x11=getUserApplications(_0xa6f1x7,_0xa6f1xf[_0xa6f1x10],_0xa6f1xf[_0xa6f1x10][_0x4beb[29]]);var _0xa6f1x12=getUserApplications(_0xa6f1x7,_0xa6f1xf[_0xa6f1x10],_0xa6f1xf[_0xa6f1x10][_0x4beb[30]]);_0xa6f1xb= _0xa6f1xb[_0x4beb[31]](_0xa6f1x11,_0xa6f1x12)};return _0xa6f1xb};var getChanSpyPromise=function(_0xa6f1x14,_0xa6f1x7){return  new BPromise(function(_0xa6f1x15,_0xa6f1x16){return _0xa6f1x14[_0x4beb[36]][_0x4beb[35]]({attributes:[_0x4beb[12],_0x4beb[30],_0x4beb[29]],where:{role:_0x4beb[34],chanspy:true},raw:true})[_0x4beb[33]](function(_0xa6f1x18){if(_0xa6f1x18){return _0xa6f1x15(getChanSpyApplications(_0xa6f1x7,_0xa6f1x18))};return _0xa6f1x15([])})[_0x4beb[32]](function(_0xa6f1x17){_0xa6f1x16(_0xa6f1x17)})})};module[_0x4beb[37]]= function(_0xa6f1x19,_0xa6f1x1a){var _0xa6f1x14=_0xa6f1x19[_0x4beb[38]];return _0xa6f1x19[_0x4beb[44]](_0x4beb[39],attributes,{tableName:_0x4beb[40],paranoid:false,indexes:[],timestamps:true,hooks:{afterCreate:function(_0xa6f1x1b,_0xa6f1x1c,_0xa6f1x1d){return getChanSpyPromise(_0xa6f1x14,_0xa6f1x1b)[_0x4beb[33]](function(_0xa6f1xb){if(_0xa6f1xb&& _0xa6f1xb[_0x4beb[28]]){return _0xa6f1x14[_0x4beb[42]][_0x4beb[41]](_0xa6f1xb)}})[_0x4beb[33]](function(){_0xa6f1x1d()})[_0x4beb[32]](function(_0xa6f1x17){_0xa6f1x1d(_0xa6f1x17)})},afterUpdate:function(_0xa6f1x1b,_0xa6f1x1c,_0xa6f1x1d){return _0xa6f1x14[_0x4beb[42]][_0x4beb[43]]({where:{ChanSpyId:_0xa6f1x1b[_0x4beb[12]]}})[_0x4beb[33]](function(){return getChanSpyPromise(_0xa6f1x14,_0xa6f1x1b)})[_0x4beb[33]](function(_0xa6f1xb){if(_0xa6f1xb&& _0xa6f1xb[_0x4beb[28]]){return _0xa6f1x14[_0x4beb[42]][_0x4beb[41]](_0xa6f1xb)}})[_0x4beb[33]](function(){_0xa6f1x1d()})[_0x4beb[32]](function(_0xa6f1x17){_0xa6f1x1d(_0xa6f1x17)})},afterDestroy:function(_0xa6f1x1b,_0xa6f1x1c,_0xa6f1x1d){return _0xa6f1x14[_0x4beb[42]][_0x4beb[43]]({where:{ChanSpyId:_0xa6f1x1b[_0x4beb[12]]}})[_0x4beb[33]](function(){_0xa6f1x1d()})[_0x4beb[32]](function(_0xa6f1x17){_0xa6f1x1d(_0xa6f1x17)})}}})}
\ No newline at end of file
+var _0x84a3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x73\x79\x73\x74\x65\x6D","\x25\x73\x25\x73","\x70\x72\x65\x66\x69\x78","\x66\x6F\x72\x6D\x61\x74","\x69\x64","\x72\x65\x63\x6F\x72\x64","\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x24\x7B\x55\x4E\x49\x51\x55\x45\x49\x44\x7D\x2E\x25\x73","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x46\x6F\x72\x6D\x61\x74","\x6D\x65\x72\x67\x65","\x70\x75\x73\x68","\x61\x75\x74\x68","\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x43\x68\x61\x6E\x53\x70\x79","\x53\x49\x50\x2F\x25\x73\x2C\x25\x73","\x6F\x70\x74\x69\x6F\x6E\x73","","\x6A\x6F\x69\x6E","\x53\x74\x6F\x70\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x6C\x65\x6E\x67\x74\x68","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x6E\x61\x6D\x65","\x63\x6F\x6E\x63\x61\x74","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x61\x67\x65\x6E\x74","\x66\x69\x6E\x64\x41\x6C\x6C","\x55\x73\x65\x72","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x6F\x64\x65\x6C\x73","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x76\x6F\x69\x63\x65\x5F\x63\x68\x61\x6E\x73\x70\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x66\x69\x6E\x65"];_0x84a3[0];var _=require(_0x84a3[1]);var util=require(_0x84a3[2]);var BPromise=require(_0x84a3[3]);var logger=require(_0x84a3[5])(_0x84a3[4]);var attributes=require(_0x84a3[6]);var getUserApplications=function(_0xb09dx7,_0xb09dx8,_0xb09dx9){var _0xb09dxa=1;var _0xb09dxb=[];var _0xb09dxc={context:_0x84a3[7],type:_0x84a3[8],isApp:false};var _0xb09dxd={exten:util[_0x84a3[11]](_0x84a3[9],_0xb09dx7[_0x84a3[10]],_0xb09dx9),ChanSpyId:_0xb09dx7[_0x84a3[12]],UserId:_0xb09dx8[_0x84a3[12]]};if(_0xb09dx7[_0x84a3[13]]){_0xb09dxb[_0x84a3[18]](_[_0x84a3[17]]({app:_0x84a3[14],appdata:util[_0x84a3[11]](_0x84a3[15],_0xb09dx7[_0x84a3[16]]),priority:_0xb09dxa++},_0xb09dxc,_0xb09dxd))};if(_0xb09dx7[_0x84a3[19]]){_0xb09dxb[_0x84a3[18]](_[_0x84a3[17]]({app:_0x84a3[20],appdata:_0xb09dx7[_0x84a3[21]],priority:_0xb09dxa++},_0xb09dxc,_0xb09dxd))};_0xb09dxb[_0x84a3[18]](_[_0x84a3[17]]({app:_0x84a3[22],appdata:util[_0x84a3[11]](_0x84a3[23],_0xb09dx9,_0xb09dx7[_0x84a3[24]]?_0xb09dx7[_0x84a3[24]][_0x84a3[26]](_0x84a3[25]):null),priority:_0xb09dxa++},_0xb09dxc,_0xb09dxd));if(_0xb09dx7[_0x84a3[13]]){_0xb09dxb[_0x84a3[18]](_[_0x84a3[17]]({app:_0x84a3[27],priority:_0xb09dxa++},_0xb09dxc,_0xb09dxd))};return _0xb09dxb};var getChanSpyApplications=function(_0xb09dx7,_0xb09dxf){var _0xb09dxb=[];for(var _0xb09dx10=0,_0xb09dxa=1;_0xb09dx10< _0xb09dxf[_0x84a3[28]];_0xb09dx10++,_0xb09dxa= 1){var _0xb09dx11=getUserApplications(_0xb09dx7,_0xb09dxf[_0xb09dx10],_0xb09dxf[_0xb09dx10][_0x84a3[29]]);var _0xb09dx12=getUserApplications(_0xb09dx7,_0xb09dxf[_0xb09dx10],_0xb09dxf[_0xb09dx10][_0x84a3[30]]);_0xb09dxb= _0xb09dxb[_0x84a3[31]](_0xb09dx11,_0xb09dx12)};return _0xb09dxb};var getChanSpyPromise=function(_0xb09dx14,_0xb09dx7){return  new BPromise(function(_0xb09dx15,_0xb09dx16){return _0xb09dx14[_0x84a3[36]][_0x84a3[35]]({attributes:[_0x84a3[12],_0x84a3[30],_0x84a3[29]],where:{role:_0x84a3[34],chanspy:true},raw:true})[_0x84a3[33]](function(_0xb09dx18){if(_0xb09dx18){return _0xb09dx15(getChanSpyApplications(_0xb09dx7,_0xb09dx18))};return _0xb09dx15([])})[_0x84a3[32]](function(_0xb09dx17){_0xb09dx16(_0xb09dx17)})})};module[_0x84a3[37]]= function(_0xb09dx19,_0xb09dx1a){var _0xb09dx14=_0xb09dx19[_0x84a3[38]];return _0xb09dx19[_0x84a3[44]](_0x84a3[39],attributes,{tableName:_0x84a3[40],paranoid:false,indexes:[],timestamps:true,hooks:{afterCreate:function(_0xb09dx1b,_0xb09dx1c,_0xb09dx1d){return getChanSpyPromise(_0xb09dx14,_0xb09dx1b)[_0x84a3[33]](function(_0xb09dxb){if(_0xb09dxb&& _0xb09dxb[_0x84a3[28]]){return _0xb09dx14[_0x84a3[42]][_0x84a3[41]](_0xb09dxb)}})[_0x84a3[33]](function(){_0xb09dx1d()})[_0x84a3[32]](function(_0xb09dx17){_0xb09dx1d(_0xb09dx17)})},afterUpdate:function(_0xb09dx1b,_0xb09dx1c,_0xb09dx1d){return _0xb09dx14[_0x84a3[42]][_0x84a3[43]]({where:{ChanSpyId:_0xb09dx1b[_0x84a3[12]]}})[_0x84a3[33]](function(){return getChanSpyPromise(_0xb09dx14,_0xb09dx1b)})[_0x84a3[33]](function(_0xb09dxb){if(_0xb09dxb&& _0xb09dxb[_0x84a3[28]]){return _0xb09dx14[_0x84a3[42]][_0x84a3[41]](_0xb09dxb)}})[_0x84a3[33]](function(){_0xb09dx1d()})[_0x84a3[32]](function(_0xb09dx17){_0xb09dx1d(_0xb09dx17)})},afterDestroy:function(_0xb09dx1b,_0xb09dx1c,_0xb09dx1d){return _0xb09dx14[_0x84a3[42]][_0x84a3[43]]({where:{ChanSpyId:_0xb09dx1b[_0x84a3[12]]}})[_0x84a3[33]](function(){_0xb09dx1d()})[_0x84a3[32]](function(_0xb09dx17){_0xb09dx1d(_0xb09dx17)})}}})}
\ No newline at end of file
index a9d84b9..09d0899 100644 (file)
@@ -1 +1 @@
-var _0x2312=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2312[0];var _=require(_0x2312[1]);var util=require(_0x2312[2]);var moment=require(_0x2312[3]);var BPromise=require(_0x2312[4]);var db=require(_0x2312[6])[_0x2312[5]];var utils=require(_0x2312[7]);var logger=require(_0x2312[9])(_0x2312[8]);var jayson=require(_0x2312[10]);var client=jayson[_0x2312[12]][_0x2312[11]]({port:9002});function respondWithRpcPromise(_0xf409xb,_0xf409xc,_0xf409xd){return  new BPromise(function(_0xf409xe,_0xf409xf){return client[_0x2312[25]](_0xf409xb,_0xf409xd)[_0x2312[24]](function(_0xf409x11){logger[_0x2312[17]](_0x2312[13],_0xf409xc,_0x2312[16]);logger[_0x2312[20]](_0x2312[18],_0xf409xc,_0x2312[16],JSON[_0x2312[19]](_0xf409x11));if(_0xf409x11[_0x2312[14]]){if(_0xf409x11[_0x2312[14]][_0x2312[21]]=== 500){logger[_0x2312[14]](_0x2312[13],_0xf409xc,_0xf409x11[_0x2312[14]][_0x2312[22]]);return _0xf409xf(_0xf409x11[_0x2312[14]][_0x2312[22]])};logger[_0x2312[14]](_0x2312[13],_0xf409xc,_0xf409x11[_0x2312[14]][_0x2312[22]]);return _0xf409xe(_0xf409x11[_0x2312[14]][_0x2312[22]])}else {logger[_0x2312[17]](_0x2312[13],_0xf409xc,_0x2312[16]);_0xf409xe(_0xf409x11[_0x2312[23]][_0x2312[22]])}})[_0x2312[15]](function(_0xf409x10){logger[_0x2312[14]](_0x2312[13],_0xf409xc,_0xf409x10);_0xf409xf(_0xf409x10)})})}
\ No newline at end of file
+var _0x80bf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x80bf[0];var _=require(_0x80bf[1]);var util=require(_0x80bf[2]);var moment=require(_0x80bf[3]);var BPromise=require(_0x80bf[4]);var db=require(_0x80bf[6])[_0x80bf[5]];var utils=require(_0x80bf[7]);var logger=require(_0x80bf[9])(_0x80bf[8]);var jayson=require(_0x80bf[10]);var client=jayson[_0x80bf[12]][_0x80bf[11]]({port:9002});function respondWithRpcPromise(_0xe2ffxb,_0xe2ffxc,_0xe2ffxd){return  new BPromise(function(_0xe2ffxe,_0xe2ffxf){return client[_0x80bf[25]](_0xe2ffxb,_0xe2ffxd)[_0x80bf[24]](function(_0xe2ffx11){logger[_0x80bf[17]](_0x80bf[13],_0xe2ffxc,_0x80bf[16]);logger[_0x80bf[20]](_0x80bf[18],_0xe2ffxc,_0x80bf[16],JSON[_0x80bf[19]](_0xe2ffx11));if(_0xe2ffx11[_0x80bf[14]]){if(_0xe2ffx11[_0x80bf[14]][_0x80bf[21]]=== 500){logger[_0x80bf[14]](_0x80bf[13],_0xe2ffxc,_0xe2ffx11[_0x80bf[14]][_0x80bf[22]]);return _0xe2ffxf(_0xe2ffx11[_0x80bf[14]][_0x80bf[22]])};logger[_0x80bf[14]](_0x80bf[13],_0xe2ffxc,_0xe2ffx11[_0x80bf[14]][_0x80bf[22]]);return _0xe2ffxe(_0xe2ffx11[_0x80bf[14]][_0x80bf[22]])}else {logger[_0x80bf[17]](_0x80bf[13],_0xe2ffxc,_0x80bf[16]);_0xe2ffxe(_0xe2ffx11[_0x80bf[23]][_0x80bf[22]])}})[_0x80bf[15]](function(_0xe2ffx10){logger[_0x80bf[14]](_0x80bf[13],_0xe2ffxc,_0xe2ffx10);_0xe2ffxf(_0xe2ffx10)})})}
\ No newline at end of file
index acd798a..86dd269 100644 (file)
@@ -1 +1 @@
-var _0x36fd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x36fd[0];var multer=require(_0x36fd[1]);var util=require(_0x36fd[2]);var path=require(_0x36fd[3]);var express=require(_0x36fd[4]);var router=express.Router();var auth=require(_0x36fd[5]);var config=require(_0x36fd[6]);var controller=require(_0x36fd[7]);router[_0x36fd[11]](_0x36fd[8],auth[_0x36fd[9]](),controller[_0x36fd[10]]);router[_0x36fd[11]](_0x36fd[12],auth[_0x36fd[9]](),controller[_0x36fd[13]]);router[_0x36fd[15]](_0x36fd[8],auth[_0x36fd[9]](),controller[_0x36fd[14]]);router[_0x36fd[17]](_0x36fd[12],auth[_0x36fd[9]](),controller[_0x36fd[16]]);router[_0x36fd[19]](_0x36fd[12],auth[_0x36fd[9]](),controller[_0x36fd[18]]);module[_0x36fd[20]]= router
\ No newline at end of file
+var _0xb893=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb893[0];var multer=require(_0xb893[1]);var util=require(_0xb893[2]);var path=require(_0xb893[3]);var express=require(_0xb893[4]);var router=express.Router();var auth=require(_0xb893[5]);var config=require(_0xb893[6]);var controller=require(_0xb893[7]);router[_0xb893[11]](_0xb893[8],auth[_0xb893[9]](),controller[_0xb893[10]]);router[_0xb893[11]](_0xb893[12],auth[_0xb893[9]](),controller[_0xb893[13]]);router[_0xb893[15]](_0xb893[8],auth[_0xb893[9]](),controller[_0xb893[14]]);router[_0xb893[17]](_0xb893[12],auth[_0xb893[9]](),controller[_0xb893[16]]);router[_0xb893[19]](_0xb893[12],auth[_0xb893[9]](),controller[_0xb893[18]]);module[_0xb893[20]]= router
\ No newline at end of file
index a74ba00..2241def 100644 (file)
@@ -1 +1 @@
-var _0xe0a0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xe0a0[0];var Sequelize=require(_0xe0a0[1]);module[_0xe0a0[2]]= {name:{type:Sequelize[_0xe0a0[3]],unique:_0xe0a0[4]},description:{type:Sequelize[_0xe0a0[3]],allowNull:true},defaultEntry:{type:Sequelize[_0xe0a0[5]],defaultValue:0}}
\ No newline at end of file
+var _0x469e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x469e[0];var Sequelize=require(_0x469e[1]);module[_0x469e[2]]= {name:{type:Sequelize[_0x469e[3]],unique:_0x469e[4]},description:{type:Sequelize[_0x469e[3]],allowNull:true},defaultEntry:{type:Sequelize[_0x469e[5]],defaultValue:0}}
\ No newline at end of file
index bee0089..91b6ddd 100644 (file)
@@ -1 +1 @@
-var _0x5c68=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x52\x65\x6C\x6F\x61\x64","\x63\x68\x61\x6E\x5F\x73\x69\x70\x2E\x73\x6F","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x63\x6F\x6E\x74\x65\x78\x74\x2E\x65\x6A\x73","\x6A\x6F\x69\x6E","\x75\x74\x66\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x72\x65\x6E\x64\x65\x72","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x5F\x78\x63\x61\x6C\x6C\x79\x5F\x63\x6F\x6E\x74\x65\x78\x74\x73\x2E\x63\x6F\x6E\x66","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x66\x69\x6E\x64\x41\x6C\x6C","\x62\x6F\x64\x79","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0x5c68[0];var jsonpatch=require(_0x5c68[1]);var rp=require(_0x5c68[2]);var moment=require(_0x5c68[3]);var BPromise=require(_0x5c68[4]);var util=require(_0x5c68[5]);var path=require(_0x5c68[6]);var sox=require(_0x5c68[7]);var ejs=require(_0x5c68[8]);var fs=require(_0x5c68[9]);var _=require(_0x5c68[10]);var squel=require(_0x5c68[11]);var crypto=require(_0x5c68[12]);var jsforce=require(_0x5c68[13]);var toCsv=require(_0x5c68[14]);var qs=require(_0x5c68[15]);var logger=require(_0x5c68[17])(_0x5c68[16]);var utils=require(_0x5c68[18]);var config=require(_0x5c68[19]);var db=require(_0x5c68[21])[_0x5c68[20]];var jayson=require(_0x5c68[22]);var client=jayson[_0x5c68[24]][_0x5c68[23]]({port:9002});function respondWithRpcPromise(_0x2323x17,_0x2323x18,_0x2323x19){return  new BPromise(function(_0x2323x1a,_0x2323x1b){return client[_0x5c68[37]](_0x2323x17,_0x2323x19)[_0x5c68[36]](function(_0x2323x1d){logger[_0x5c68[29]](_0x5c68[25],_0x2323x18,_0x5c68[28]);logger[_0x5c68[32]](_0x5c68[30],_0x2323x18,_0x5c68[28],JSON[_0x5c68[31]](_0x2323x1d));if(_0x2323x1d[_0x5c68[26]]){if(_0x2323x1d[_0x5c68[26]][_0x5c68[33]]=== 500){logger[_0x5c68[26]](_0x5c68[25],_0x2323x18,_0x2323x1d[_0x5c68[26]][_0x5c68[34]]);return _0x2323x1b(_0x2323x1d[_0x5c68[26]][_0x5c68[34]])};logger[_0x5c68[26]](_0x5c68[25],_0x2323x18,_0x2323x1d[_0x5c68[26]][_0x5c68[34]]);return _0x2323x1a(_0x2323x1d[_0x5c68[26]][_0x5c68[34]])}else {logger[_0x5c68[29]](_0x5c68[25],_0x2323x18,_0x5c68[28]);_0x2323x1a(_0x2323x1d[_0x5c68[35]][_0x5c68[34]])}})[_0x5c68[27]](function(_0x2323x1c){logger[_0x5c68[26]](_0x5c68[25],_0x2323x18,_0x2323x1c);_0x2323x1b(_0x2323x1c)})})}function respondWithStatusCode(_0x2323x1d,_0x2323x1f,_0x2323x18){_0x2323x1f= _0x2323x1f|| 204;return function(_0x2323x20){if(_0x2323x20){logger[_0x5c68[29]](_0x5c68[30],_0x2323x18,_0x2323x1f,_0x5c68[38]);logger[_0x5c68[32]](_0x5c68[39],_0x2323x18,_0x2323x1f,_0x5c68[38]);return _0x2323x1d[_0x5c68[40]](_0x2323x1f)};return _0x2323x1d[_0x5c68[42]](304)[_0x5c68[41]]()}}function respondWithResult(_0x2323x1d,_0x2323x1f,_0x2323x18){_0x2323x1f= _0x2323x1f|| 200;return function(_0x2323x20){if(_0x2323x20){logger[_0x5c68[29]](_0x5c68[30],_0x2323x18,_0x2323x1f,_0x5c68[43]);logger[_0x5c68[32]](_0x5c68[39],_0x2323x18,_0x2323x1f,_0x5c68[43],JSON[_0x5c68[31]](_0x2323x20));return _0x2323x1d[_0x5c68[42]](_0x2323x1f)[_0x5c68[44]](_0x2323x20)};return _0x2323x1d[_0x5c68[42]](304)[_0x5c68[41]]()}}function respondWithFilteredResult(_0x2323x1d,_0x2323x23,_0x2323x18){return function(_0x2323x20){if(_0x2323x20){var _0x2323x24=_0x2323x20[_0x5c68[45]],_0x2323x25=_0x2323x23[_0x5c68[46]],_0x2323x26=_0x2323x23[_0x5c68[46]]+ _0x2323x23[_0x5c68[47]],_0x2323x1f;if(_0x2323x26>= _0x2323x24){_0x2323x26= _0x2323x24;_0x2323x1f= 200}else {_0x2323x1f= 206};_0x2323x1d[_0x5c68[42]](_0x2323x1f);logger[_0x5c68[29]](_0x5c68[30],_0x2323x18,_0x2323x1f,_0x5c68[48]);logger[_0x5c68[32]](_0x5c68[39],_0x2323x18,_0x2323x1f,_0x5c68[43],JSON[_0x5c68[31]](_0x2323x20));return _0x2323x1d[_0x5c68[52]](_0x5c68[49],_0x2323x25+ _0x5c68[50]+ _0x2323x26+ _0x5c68[51]+ _0x2323x24)[_0x5c68[44]](_0x2323x20)};return null}}function patchUpdates(_0x2323x28){return function(_0x2323x20){try{jsonpatch[_0x5c68[53]](_0x2323x20,_0x2323x28,true)}catch(err){return BPromise[_0x5c68[54]](err)};return _0x2323x20[_0x5c68[55]]()}}function saveUpdates(_0x2323x2a,_0x2323x1f,_0x2323x18){return function(_0x2323x20){if(_0x2323x20){return _0x2323x20[_0x5c68[57]](_0x2323x2a)[_0x5c68[36]](function(_0x2323x2b){logger[_0x5c68[29]](_0x5c68[30],_0x2323x18,_0x2323x1f,_0x5c68[56]);logger[_0x5c68[32]](_0x5c68[39],_0x2323x18,_0x2323x1f,_0x5c68[56],JSON[_0x5c68[31]](_0x2323x20));return _0x2323x2b})};return null}}function removeEntity(_0x2323x1d,_0x2323x1f,_0x2323x18){return function(_0x2323x20){if(_0x2323x20){return _0x2323x20[_0x5c68[59]]()[_0x5c68[36]](function(){logger[_0x5c68[29]](_0x5c68[30],_0x2323x18,_0x2323x1f,_0x5c68[58]);logger[_0x5c68[32]](_0x5c68[39],_0x2323x18,_0x2323x1f,_0x5c68[58],JSON[_0x5c68[31]](_0x2323x20));_0x2323x1d[_0x5c68[42]](204)[_0x5c68[41]]()})}}}function handleEntityNotFound(_0x2323x1d,_0x2323x1f,_0x2323x18){return function(_0x2323x20){if(!_0x2323x20){logger[_0x5c68[26]](_0x5c68[30],_0x2323x18,404,_0x5c68[60]);_0x2323x1d[_0x5c68[42]](404)[_0x5c68[41]]();return null};return _0x2323x20}}function handleError(_0x2323x1d,_0x2323x1f,_0x2323x18){_0x2323x1f= _0x2323x1f|| 500;return function(_0x2323x1c){logger[_0x5c68[26]](_0x5c68[30],_0x2323x18,_0x2323x1f,JSON[_0x5c68[31]](_0x2323x1c));delete _0x2323x1c[_0x5c68[61]];_0x2323x1d[_0x5c68[42]](_0x2323x1f)[_0x5c68[62]](_0x2323x1c)}}exports[_0x5c68[63]]= function(_0x2323x19,_0x2323x1d){var _0x2323x23={},_0x2323x2f={};_0x2323x2f[_0x5c68[64]]= _[_0x5c68[67]](db[_0x5c68[66]][_0x5c68[65]]);_0x2323x2f[_0x5c68[68]]= _[_0x5c68[67]](_0x2323x19[_0x5c68[68]]);_0x2323x2f[_0x5c68[69]]= _[_0x5c68[70]](_0x2323x2f[_0x5c68[64]],_0x2323x2f[_0x5c68[68]]);_0x2323x23[_0x5c68[71]]= _[_0x5c68[70]](_0x2323x2f[_0x5c68[64]],qs[_0x5c68[72]](_0x2323x19[_0x5c68[68]][_0x5c68[72]]));_0x2323x23[_0x5c68[71]]= (_0x2323x23[_0x5c68[71]][_0x5c68[73]])?_0x2323x23[_0x5c68[71]]:_0x2323x2f[_0x5c68[64]];if(!_0x2323x19[_0x5c68[68]][_0x5c68[75]](_0x5c68[74])){_0x2323x23[_0x5c68[47]]= qs[_0x5c68[47]](_0x2323x19[_0x5c68[68]][_0x5c68[47]]);_0x2323x23[_0x5c68[46]]= qs[_0x5c68[46]](_0x2323x19[_0x5c68[68]][_0x5c68[46]])};_0x2323x23[_0x5c68[76]]= qs[_0x5c68[77]](_0x2323x19[_0x5c68[68]][_0x5c68[77]]);_0x2323x23[_0x5c68[78]]= qs[_0x5c68[69]](_[_0x5c68[79]](_0x2323x19[_0x5c68[68]],_0x2323x2f[_0x5c68[69]]));if(_0x2323x19[_0x5c68[68]][_0x5c68[80]]){_0x2323x23[_0x5c68[78]]= _[_0x5c68[83]](_0x2323x23[_0x5c68[78]],{$or:_[_0x5c68[82]](_0x2323x23[_0x5c68[71]],function(_0x2323x30){var _0x2323x31={};_0x2323x31[_0x2323x30]= {$like:_0x5c68[81]+ _0x2323x19[_0x5c68[68]][_0x5c68[80]]+ _0x5c68[81]};return _0x2323x31})})};_0x2323x23= _[_0x5c68[83]]({},_0x2323x23,_0x2323x19[_0x5c68[84]]);return db[_0x5c68[66]][_0x5c68[85]](_0x2323x23)[_0x5c68[36]](respondWithFilteredResult(_0x2323x1d,_0x2323x23,_0x5c68[63]))[_0x5c68[27]](handleError(_0x2323x1d,null,_0x5c68[63]))};exports[_0x5c68[86]]= function(_0x2323x19,_0x2323x1d){var _0x2323x23={raw:false,where:{id:_0x2323x19[_0x5c68[88]][_0x5c68[87]]}},_0x2323x2f={};_0x2323x2f[_0x5c68[64]]= _[_0x5c68[67]](db[_0x5c68[66]][_0x5c68[65]]);_0x2323x2f[_0x5c68[68]]= _[_0x5c68[67]](_0x2323x19[_0x5c68[68]]);_0x2323x2f[_0x5c68[69]]= _[_0x5c68[70]](_0x2323x2f[_0x5c68[64]],_0x2323x2f[_0x5c68[68]]);_0x2323x23[_0x5c68[71]]= _[_0x5c68[70]](_0x2323x2f[_0x5c68[64]],qs[_0x5c68[72]](_0x2323x19[_0x5c68[68]][_0x5c68[72]]));_0x2323x23[_0x5c68[71]]= (_0x2323x23[_0x5c68[71]][_0x5c68[73]])?_0x2323x23[_0x5c68[71]]:_0x2323x2f[_0x5c68[64]];_0x2323x23= _[_0x5c68[83]]({},_0x2323x23,_0x2323x19[_0x5c68[84]]);return db[_0x5c68[66]][_0x5c68[89]](_0x2323x23)[_0x5c68[36]](handleEntityNotFound(_0x2323x1d,null,_0x5c68[86]))[_0x5c68[36]](respondWithResult(_0x2323x1d,null,_0x5c68[86]))[_0x5c68[27]](handleError(_0x2323x1d,null,_0x5c68[86]))};exports[_0x5c68[90]]= function(_0x2323x19,_0x2323x1d,_0x2323x32){var _0x2323x33;return db[_0x5c68[104]][_0x5c68[103]](function(_0x2323x34){return db[_0x5c68[66]][_0x5c68[90]](_0x2323x19[_0x5c68[102]],{raw:true})[_0x5c68[36]](function(_0x2323x20){_0x2323x33= _0x2323x20;return db[_0x5c68[66]][_0x5c68[101]]({raw:true})})[_0x5c68[36]](function(_0x2323x35){var _0x2323x36=fs[_0x5c68[97]](path[_0x5c68[95]](config[_0x5c68[93]],_0x5c68[94]),_0x5c68[96]);var _0x2323x37=ejs[_0x5c68[98]](_0x2323x36,{contexts:_0x2323x35|| []});fs[_0x5c68[100]](_0x5c68[99],_0x2323x37)})[_0x5c68[36]](function(){return respondWithRpcPromise(_0x5c68[91],_0x5c68[90],{module:_0x5c68[92]})})[_0x5c68[36]](function(){return _0x2323x33})})[_0x5c68[36]](respondWithResult(_0x2323x1d,201,_0x5c68[90]))[_0x5c68[27]](handleError(_0x2323x1d,null,_0x5c68[90]))};exports[_0x5c68[57]]= function(_0x2323x19,_0x2323x1d,_0x2323x32){var _0x2323x33;return db[_0x5c68[104]][_0x5c68[103]](function(_0x2323x34){return db[_0x5c68[66]][_0x5c68[89]]({where:{id:_0x2323x19[_0x5c68[88]][_0x5c68[87]]}})[_0x5c68[36]](handleEntityNotFound(_0x2323x1d,null,_0x5c68[57]))[_0x5c68[36]](saveUpdates(_0x2323x19[_0x5c68[102]],null,_0x5c68[57]))[_0x5c68[36]](function(_0x2323x20){if(_0x2323x20){_0x2323x33= _0x2323x20;return db[_0x5c68[66]][_0x5c68[101]]({raw:true})};return null})[_0x5c68[36]](function(_0x2323x35){if(_0x2323x35){var _0x2323x36=fs[_0x5c68[97]](path[_0x5c68[95]](config[_0x5c68[93]],_0x5c68[94]),_0x5c68[96]);var _0x2323x37=ejs[_0x5c68[98]](_0x2323x36,{contexts:_0x2323x35|| []});fs[_0x5c68[100]](_0x5c68[99],_0x2323x37);return respondWithRpcPromise(_0x5c68[91],_0x5c68[57],{module:_0x5c68[92]})};return null})[_0x5c68[36]](function(_0x2323x20){if(_0x2323x20){return _0x2323x33};return null})})[_0x5c68[36]](respondWithResult(_0x2323x1d,null,_0x5c68[57]))[_0x5c68[27]](handleError(_0x2323x1d,null,_0x5c68[57]))};exports[_0x5c68[59]]= function(_0x2323x19,_0x2323x1d,_0x2323x32){var _0x2323x33;return db[_0x5c68[66]][_0x5c68[89]]({where:{id:_0x2323x19[_0x5c68[88]][_0x5c68[87]]}})[_0x5c68[36]](handleEntityNotFound(_0x2323x1d,null,_0x5c68[59]))[_0x5c68[36]](removeEntity(_0x2323x1d,null,_0x5c68[59]))[_0x5c68[36]](function(){return db[_0x5c68[66]][_0x5c68[101]]({raw:true})})[_0x5c68[36]](function(_0x2323x35){var _0x2323x36=fs[_0x5c68[97]](path[_0x5c68[95]](config[_0x5c68[93]],_0x5c68[94]),_0x5c68[96]);var _0x2323x37=ejs[_0x5c68[98]](_0x2323x36,{contexts:_0x2323x35});fs[_0x5c68[100]](_0x5c68[99],_0x2323x37);return respondWithRpcPromise(_0x5c68[91],_0x5c68[59],{module:_0x5c68[92]})})[_0x5c68[27]](handleError(_0x2323x1d,null,_0x5c68[59]))}
\ No newline at end of file
+var _0xccb0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x52\x65\x6C\x6F\x61\x64","\x63\x68\x61\x6E\x5F\x73\x69\x70\x2E\x73\x6F","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x63\x6F\x6E\x74\x65\x78\x74\x2E\x65\x6A\x73","\x6A\x6F\x69\x6E","\x75\x74\x66\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x72\x65\x6E\x64\x65\x72","\x2F\x65\x74\x63\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x5F\x78\x63\x61\x6C\x6C\x79\x5F\x63\x6F\x6E\x74\x65\x78\x74\x73\x2E\x63\x6F\x6E\x66","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x66\x69\x6E\x64\x41\x6C\x6C","\x62\x6F\x64\x79","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0xccb0[0];var jsonpatch=require(_0xccb0[1]);var rp=require(_0xccb0[2]);var moment=require(_0xccb0[3]);var BPromise=require(_0xccb0[4]);var util=require(_0xccb0[5]);var path=require(_0xccb0[6]);var sox=require(_0xccb0[7]);var ejs=require(_0xccb0[8]);var fs=require(_0xccb0[9]);var _=require(_0xccb0[10]);var squel=require(_0xccb0[11]);var crypto=require(_0xccb0[12]);var jsforce=require(_0xccb0[13]);var toCsv=require(_0xccb0[14]);var qs=require(_0xccb0[15]);var logger=require(_0xccb0[17])(_0xccb0[16]);var utils=require(_0xccb0[18]);var config=require(_0xccb0[19]);var db=require(_0xccb0[21])[_0xccb0[20]];var jayson=require(_0xccb0[22]);var client=jayson[_0xccb0[24]][_0xccb0[23]]({port:9002});function respondWithRpcPromise(_0x458dx17,_0x458dx18,_0x458dx19){return  new BPromise(function(_0x458dx1a,_0x458dx1b){return client[_0xccb0[37]](_0x458dx17,_0x458dx19)[_0xccb0[36]](function(_0x458dx1d){logger[_0xccb0[29]](_0xccb0[25],_0x458dx18,_0xccb0[28]);logger[_0xccb0[32]](_0xccb0[30],_0x458dx18,_0xccb0[28],JSON[_0xccb0[31]](_0x458dx1d));if(_0x458dx1d[_0xccb0[26]]){if(_0x458dx1d[_0xccb0[26]][_0xccb0[33]]=== 500){logger[_0xccb0[26]](_0xccb0[25],_0x458dx18,_0x458dx1d[_0xccb0[26]][_0xccb0[34]]);return _0x458dx1b(_0x458dx1d[_0xccb0[26]][_0xccb0[34]])};logger[_0xccb0[26]](_0xccb0[25],_0x458dx18,_0x458dx1d[_0xccb0[26]][_0xccb0[34]]);return _0x458dx1a(_0x458dx1d[_0xccb0[26]][_0xccb0[34]])}else {logger[_0xccb0[29]](_0xccb0[25],_0x458dx18,_0xccb0[28]);_0x458dx1a(_0x458dx1d[_0xccb0[35]][_0xccb0[34]])}})[_0xccb0[27]](function(_0x458dx1c){logger[_0xccb0[26]](_0xccb0[25],_0x458dx18,_0x458dx1c);_0x458dx1b(_0x458dx1c)})})}function respondWithStatusCode(_0x458dx1d,_0x458dx1f,_0x458dx18){_0x458dx1f= _0x458dx1f|| 204;return function(_0x458dx20){if(_0x458dx20){logger[_0xccb0[29]](_0xccb0[30],_0x458dx18,_0x458dx1f,_0xccb0[38]);logger[_0xccb0[32]](_0xccb0[39],_0x458dx18,_0x458dx1f,_0xccb0[38]);return _0x458dx1d[_0xccb0[40]](_0x458dx1f)};return _0x458dx1d[_0xccb0[42]](304)[_0xccb0[41]]()}}function respondWithResult(_0x458dx1d,_0x458dx1f,_0x458dx18){_0x458dx1f= _0x458dx1f|| 200;return function(_0x458dx20){if(_0x458dx20){logger[_0xccb0[29]](_0xccb0[30],_0x458dx18,_0x458dx1f,_0xccb0[43]);logger[_0xccb0[32]](_0xccb0[39],_0x458dx18,_0x458dx1f,_0xccb0[43],JSON[_0xccb0[31]](_0x458dx20));return _0x458dx1d[_0xccb0[42]](_0x458dx1f)[_0xccb0[44]](_0x458dx20)};return _0x458dx1d[_0xccb0[42]](304)[_0xccb0[41]]()}}function respondWithFilteredResult(_0x458dx1d,_0x458dx23,_0x458dx18){return function(_0x458dx20){if(_0x458dx20){var _0x458dx24=_0x458dx20[_0xccb0[45]],_0x458dx25=_0x458dx23[_0xccb0[46]],_0x458dx26=_0x458dx23[_0xccb0[46]]+ _0x458dx23[_0xccb0[47]],_0x458dx1f;if(_0x458dx26>= _0x458dx24){_0x458dx26= _0x458dx24;_0x458dx1f= 200}else {_0x458dx1f= 206};_0x458dx1d[_0xccb0[42]](_0x458dx1f);logger[_0xccb0[29]](_0xccb0[30],_0x458dx18,_0x458dx1f,_0xccb0[48]);logger[_0xccb0[32]](_0xccb0[39],_0x458dx18,_0x458dx1f,_0xccb0[43],JSON[_0xccb0[31]](_0x458dx20));return _0x458dx1d[_0xccb0[52]](_0xccb0[49],_0x458dx25+ _0xccb0[50]+ _0x458dx26+ _0xccb0[51]+ _0x458dx24)[_0xccb0[44]](_0x458dx20)};return null}}function patchUpdates(_0x458dx28){return function(_0x458dx20){try{jsonpatch[_0xccb0[53]](_0x458dx20,_0x458dx28,true)}catch(err){return BPromise[_0xccb0[54]](err)};return _0x458dx20[_0xccb0[55]]()}}function saveUpdates(_0x458dx2a,_0x458dx1f,_0x458dx18){return function(_0x458dx20){if(_0x458dx20){return _0x458dx20[_0xccb0[57]](_0x458dx2a)[_0xccb0[36]](function(_0x458dx2b){logger[_0xccb0[29]](_0xccb0[30],_0x458dx18,_0x458dx1f,_0xccb0[56]);logger[_0xccb0[32]](_0xccb0[39],_0x458dx18,_0x458dx1f,_0xccb0[56],JSON[_0xccb0[31]](_0x458dx20));return _0x458dx2b})};return null}}function removeEntity(_0x458dx1d,_0x458dx1f,_0x458dx18){return function(_0x458dx20){if(_0x458dx20){return _0x458dx20[_0xccb0[59]]()[_0xccb0[36]](function(){logger[_0xccb0[29]](_0xccb0[30],_0x458dx18,_0x458dx1f,_0xccb0[58]);logger[_0xccb0[32]](_0xccb0[39],_0x458dx18,_0x458dx1f,_0xccb0[58],JSON[_0xccb0[31]](_0x458dx20));_0x458dx1d[_0xccb0[42]](204)[_0xccb0[41]]()})}}}function handleEntityNotFound(_0x458dx1d,_0x458dx1f,_0x458dx18){return function(_0x458dx20){if(!_0x458dx20){logger[_0xccb0[26]](_0xccb0[30],_0x458dx18,404,_0xccb0[60]);_0x458dx1d[_0xccb0[42]](404)[_0xccb0[41]]();return null};return _0x458dx20}}function handleError(_0x458dx1d,_0x458dx1f,_0x458dx18){_0x458dx1f= _0x458dx1f|| 500;return function(_0x458dx1c){logger[_0xccb0[26]](_0xccb0[30],_0x458dx18,_0x458dx1f,JSON[_0xccb0[31]](_0x458dx1c));delete _0x458dx1c[_0xccb0[61]];_0x458dx1d[_0xccb0[42]](_0x458dx1f)[_0xccb0[62]](_0x458dx1c)}}exports[_0xccb0[63]]= function(_0x458dx19,_0x458dx1d){var _0x458dx23={},_0x458dx2f={};_0x458dx2f[_0xccb0[64]]= _[_0xccb0[67]](db[_0xccb0[66]][_0xccb0[65]]);_0x458dx2f[_0xccb0[68]]= _[_0xccb0[67]](_0x458dx19[_0xccb0[68]]);_0x458dx2f[_0xccb0[69]]= _[_0xccb0[70]](_0x458dx2f[_0xccb0[64]],_0x458dx2f[_0xccb0[68]]);_0x458dx23[_0xccb0[71]]= _[_0xccb0[70]](_0x458dx2f[_0xccb0[64]],qs[_0xccb0[72]](_0x458dx19[_0xccb0[68]][_0xccb0[72]]));_0x458dx23[_0xccb0[71]]= (_0x458dx23[_0xccb0[71]][_0xccb0[73]])?_0x458dx23[_0xccb0[71]]:_0x458dx2f[_0xccb0[64]];if(!_0x458dx19[_0xccb0[68]][_0xccb0[75]](_0xccb0[74])){_0x458dx23[_0xccb0[47]]= qs[_0xccb0[47]](_0x458dx19[_0xccb0[68]][_0xccb0[47]]);_0x458dx23[_0xccb0[46]]= qs[_0xccb0[46]](_0x458dx19[_0xccb0[68]][_0xccb0[46]])};_0x458dx23[_0xccb0[76]]= qs[_0xccb0[77]](_0x458dx19[_0xccb0[68]][_0xccb0[77]]);_0x458dx23[_0xccb0[78]]= qs[_0xccb0[69]](_[_0xccb0[79]](_0x458dx19[_0xccb0[68]],_0x458dx2f[_0xccb0[69]]));if(_0x458dx19[_0xccb0[68]][_0xccb0[80]]){_0x458dx23[_0xccb0[78]]= _[_0xccb0[83]](_0x458dx23[_0xccb0[78]],{$or:_[_0xccb0[82]](_0x458dx23[_0xccb0[71]],function(_0x458dx30){var _0x458dx31={};_0x458dx31[_0x458dx30]= {$like:_0xccb0[81]+ _0x458dx19[_0xccb0[68]][_0xccb0[80]]+ _0xccb0[81]};return _0x458dx31})})};_0x458dx23= _[_0xccb0[83]]({},_0x458dx23,_0x458dx19[_0xccb0[84]]);return db[_0xccb0[66]][_0xccb0[85]](_0x458dx23)[_0xccb0[36]](respondWithFilteredResult(_0x458dx1d,_0x458dx23,_0xccb0[63]))[_0xccb0[27]](handleError(_0x458dx1d,null,_0xccb0[63]))};exports[_0xccb0[86]]= function(_0x458dx19,_0x458dx1d){var _0x458dx23={raw:false,where:{id:_0x458dx19[_0xccb0[88]][_0xccb0[87]]}},_0x458dx2f={};_0x458dx2f[_0xccb0[64]]= _[_0xccb0[67]](db[_0xccb0[66]][_0xccb0[65]]);_0x458dx2f[_0xccb0[68]]= _[_0xccb0[67]](_0x458dx19[_0xccb0[68]]);_0x458dx2f[_0xccb0[69]]= _[_0xccb0[70]](_0x458dx2f[_0xccb0[64]],_0x458dx2f[_0xccb0[68]]);_0x458dx23[_0xccb0[71]]= _[_0xccb0[70]](_0x458dx2f[_0xccb0[64]],qs[_0xccb0[72]](_0x458dx19[_0xccb0[68]][_0xccb0[72]]));_0x458dx23[_0xccb0[71]]= (_0x458dx23[_0xccb0[71]][_0xccb0[73]])?_0x458dx23[_0xccb0[71]]:_0x458dx2f[_0xccb0[64]];_0x458dx23= _[_0xccb0[83]]({},_0x458dx23,_0x458dx19[_0xccb0[84]]);return db[_0xccb0[66]][_0xccb0[89]](_0x458dx23)[_0xccb0[36]](handleEntityNotFound(_0x458dx1d,null,_0xccb0[86]))[_0xccb0[36]](respondWithResult(_0x458dx1d,null,_0xccb0[86]))[_0xccb0[27]](handleError(_0x458dx1d,null,_0xccb0[86]))};exports[_0xccb0[90]]= function(_0x458dx19,_0x458dx1d,_0x458dx32){var _0x458dx33;return db[_0xccb0[104]][_0xccb0[103]](function(_0x458dx34){return db[_0xccb0[66]][_0xccb0[90]](_0x458dx19[_0xccb0[102]],{raw:true})[_0xccb0[36]](function(_0x458dx20){_0x458dx33= _0x458dx20;return db[_0xccb0[66]][_0xccb0[101]]({raw:true})})[_0xccb0[36]](function(_0x458dx35){var _0x458dx36=fs[_0xccb0[97]](path[_0xccb0[95]](config[_0xccb0[93]],_0xccb0[94]),_0xccb0[96]);var _0x458dx37=ejs[_0xccb0[98]](_0x458dx36,{contexts:_0x458dx35|| []});fs[_0xccb0[100]](_0xccb0[99],_0x458dx37)})[_0xccb0[36]](function(){return respondWithRpcPromise(_0xccb0[91],_0xccb0[90],{module:_0xccb0[92]})})[_0xccb0[36]](function(){return _0x458dx33})})[_0xccb0[36]](respondWithResult(_0x458dx1d,201,_0xccb0[90]))[_0xccb0[27]](handleError(_0x458dx1d,null,_0xccb0[90]))};exports[_0xccb0[57]]= function(_0x458dx19,_0x458dx1d,_0x458dx32){var _0x458dx33;return db[_0xccb0[104]][_0xccb0[103]](function(_0x458dx34){return db[_0xccb0[66]][_0xccb0[89]]({where:{id:_0x458dx19[_0xccb0[88]][_0xccb0[87]]}})[_0xccb0[36]](handleEntityNotFound(_0x458dx1d,null,_0xccb0[57]))[_0xccb0[36]](saveUpdates(_0x458dx19[_0xccb0[102]],null,_0xccb0[57]))[_0xccb0[36]](function(_0x458dx20){if(_0x458dx20){_0x458dx33= _0x458dx20;return db[_0xccb0[66]][_0xccb0[101]]({raw:true})};return null})[_0xccb0[36]](function(_0x458dx35){if(_0x458dx35){var _0x458dx36=fs[_0xccb0[97]](path[_0xccb0[95]](config[_0xccb0[93]],_0xccb0[94]),_0xccb0[96]);var _0x458dx37=ejs[_0xccb0[98]](_0x458dx36,{contexts:_0x458dx35|| []});fs[_0xccb0[100]](_0xccb0[99],_0x458dx37);return respondWithRpcPromise(_0xccb0[91],_0xccb0[57],{module:_0xccb0[92]})};return null})[_0xccb0[36]](function(_0x458dx20){if(_0x458dx20){return _0x458dx33};return null})})[_0xccb0[36]](respondWithResult(_0x458dx1d,null,_0xccb0[57]))[_0xccb0[27]](handleError(_0x458dx1d,null,_0xccb0[57]))};exports[_0xccb0[59]]= function(_0x458dx19,_0x458dx1d,_0x458dx32){var _0x458dx33;return db[_0xccb0[66]][_0xccb0[89]]({where:{id:_0x458dx19[_0xccb0[88]][_0xccb0[87]]}})[_0xccb0[36]](handleEntityNotFound(_0x458dx1d,null,_0xccb0[59]))[_0xccb0[36]](removeEntity(_0x458dx1d,null,_0xccb0[59]))[_0xccb0[36]](function(){return db[_0xccb0[66]][_0xccb0[101]]({raw:true})})[_0xccb0[36]](function(_0x458dx35){var _0x458dx36=fs[_0xccb0[97]](path[_0xccb0[95]](config[_0xccb0[93]],_0xccb0[94]),_0xccb0[96]);var _0x458dx37=ejs[_0xccb0[98]](_0x458dx36,{contexts:_0x458dx35});fs[_0xccb0[100]](_0xccb0[99],_0x458dx37);return respondWithRpcPromise(_0xccb0[91],_0xccb0[59],{module:_0xccb0[92]})})[_0xccb0[27]](handleError(_0x458dx1d,null,_0xccb0[59]))}
\ No newline at end of file
index 348ea25..f190af3 100644 (file)
@@ -1 +1 @@
-var _0xf05b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x76\x6F\x69\x63\x65\x5F\x63\x6F\x6E\x74\x65\x78\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0xf05b[0];var _=require(_0xf05b[1]);var util=require(_0xf05b[2]);var logger=require(_0xf05b[4])(_0xf05b[3]);var attributes=require(_0xf05b[5]);module[_0xf05b[6]]= function(_0x74c3x5,_0x74c3x6){return _0x74c3x5[_0xf05b[9]](_0xf05b[7],attributes,{tableName:_0xf05b[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x3f0c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x76\x6F\x69\x63\x65\x5F\x63\x6F\x6E\x74\x65\x78\x74\x73","\x64\x65\x66\x69\x6E\x65"];_0x3f0c[0];var _=require(_0x3f0c[1]);var util=require(_0x3f0c[2]);var logger=require(_0x3f0c[4])(_0x3f0c[3]);var attributes=require(_0x3f0c[5]);module[_0x3f0c[6]]= function(_0xe772x5,_0xe772x6){return _0xe772x5[_0x3f0c[9]](_0x3f0c[7],attributes,{tableName:_0x3f0c[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 03657d6..3517320 100644 (file)
@@ -1 +1 @@
-var _0x9896=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9896[0];var _=require(_0x9896[1]);var util=require(_0x9896[2]);var moment=require(_0x9896[3]);var BPromise=require(_0x9896[4]);var db=require(_0x9896[6])[_0x9896[5]];var utils=require(_0x9896[7]);var logger=require(_0x9896[9])(_0x9896[8]);var jayson=require(_0x9896[10]);var client=jayson[_0x9896[12]][_0x9896[11]]({port:9002});function respondWithRpcPromise(_0x582exb,_0x582exc,_0x582exd){return  new BPromise(function(_0x582exe,_0x582exf){return client[_0x9896[25]](_0x582exb,_0x582exd)[_0x9896[24]](function(_0x582ex11){logger[_0x9896[17]](_0x9896[13],_0x582exc,_0x9896[16]);logger[_0x9896[20]](_0x9896[18],_0x582exc,_0x9896[16],JSON[_0x9896[19]](_0x582ex11));if(_0x582ex11[_0x9896[14]]){if(_0x582ex11[_0x9896[14]][_0x9896[21]]=== 500){logger[_0x9896[14]](_0x9896[13],_0x582exc,_0x582ex11[_0x9896[14]][_0x9896[22]]);return _0x582exf(_0x582ex11[_0x9896[14]][_0x9896[22]])};logger[_0x9896[14]](_0x9896[13],_0x582exc,_0x582ex11[_0x9896[14]][_0x9896[22]]);return _0x582exe(_0x582ex11[_0x9896[14]][_0x9896[22]])}else {logger[_0x9896[17]](_0x9896[13],_0x582exc,_0x9896[16]);_0x582exe(_0x582ex11[_0x9896[23]][_0x9896[22]])}})[_0x9896[15]](function(_0x582ex10){logger[_0x9896[14]](_0x9896[13],_0x582exc,_0x582ex10);_0x582exf(_0x582ex10)})})}
\ No newline at end of file
+var _0xd220=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xd220[0];var _=require(_0xd220[1]);var util=require(_0xd220[2]);var moment=require(_0xd220[3]);var BPromise=require(_0xd220[4]);var db=require(_0xd220[6])[_0xd220[5]];var utils=require(_0xd220[7]);var logger=require(_0xd220[9])(_0xd220[8]);var jayson=require(_0xd220[10]);var client=jayson[_0xd220[12]][_0xd220[11]]({port:9002});function respondWithRpcPromise(_0x31cbxb,_0x31cbxc,_0x31cbxd){return  new BPromise(function(_0x31cbxe,_0x31cbxf){return client[_0xd220[25]](_0x31cbxb,_0x31cbxd)[_0xd220[24]](function(_0x31cbx11){logger[_0xd220[17]](_0xd220[13],_0x31cbxc,_0xd220[16]);logger[_0xd220[20]](_0xd220[18],_0x31cbxc,_0xd220[16],JSON[_0xd220[19]](_0x31cbx11));if(_0x31cbx11[_0xd220[14]]){if(_0x31cbx11[_0xd220[14]][_0xd220[21]]=== 500){logger[_0xd220[14]](_0xd220[13],_0x31cbxc,_0x31cbx11[_0xd220[14]][_0xd220[22]]);return _0x31cbxf(_0x31cbx11[_0xd220[14]][_0xd220[22]])};logger[_0xd220[14]](_0xd220[13],_0x31cbxc,_0x31cbx11[_0xd220[14]][_0xd220[22]]);return _0x31cbxe(_0x31cbx11[_0xd220[14]][_0xd220[22]])}else {logger[_0xd220[17]](_0xd220[13],_0x31cbxc,_0xd220[16]);_0x31cbxe(_0x31cbx11[_0xd220[23]][_0xd220[22]])}})[_0xd220[15]](function(_0x31cbx10){logger[_0xd220[14]](_0xd220[13],_0x31cbxc,_0x31cbx10);_0x31cbxf(_0x31cbx10)})})}
\ No newline at end of file
index 1d65592..7bcd00f 100644 (file)
@@ -1 +1 @@
-var _0x32f0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x32f0[0];var multer=require(_0x32f0[1]);var util=require(_0x32f0[2]);var path=require(_0x32f0[3]);var express=require(_0x32f0[4]);var router=express.Router();var auth=require(_0x32f0[5]);var config=require(_0x32f0[6]);var controller=require(_0x32f0[7]);router[_0x32f0[11]](_0x32f0[8],auth[_0x32f0[9]](),controller[_0x32f0[10]]);router[_0x32f0[11]](_0x32f0[12],auth[_0x32f0[9]](),controller[_0x32f0[13]]);router[_0x32f0[11]](_0x32f0[14],auth[_0x32f0[9]](),controller[_0x32f0[15]]);router[_0x32f0[17]](_0x32f0[8],auth[_0x32f0[9]](),controller[_0x32f0[16]]);router[_0x32f0[19]](_0x32f0[14],auth[_0x32f0[9]](),controller[_0x32f0[18]]);router[_0x32f0[21]](_0x32f0[14],auth[_0x32f0[9]](),controller[_0x32f0[20]]);module[_0x32f0[22]]= router
\ No newline at end of file
+var _0x74bd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x74bd[0];var multer=require(_0x74bd[1]);var util=require(_0x74bd[2]);var path=require(_0x74bd[3]);var express=require(_0x74bd[4]);var router=express.Router();var auth=require(_0x74bd[5]);var config=require(_0x74bd[6]);var controller=require(_0x74bd[7]);router[_0x74bd[11]](_0x74bd[8],auth[_0x74bd[9]](),controller[_0x74bd[10]]);router[_0x74bd[11]](_0x74bd[12],auth[_0x74bd[9]](),controller[_0x74bd[13]]);router[_0x74bd[11]](_0x74bd[14],auth[_0x74bd[9]](),controller[_0x74bd[15]]);router[_0x74bd[17]](_0x74bd[8],auth[_0x74bd[9]](),controller[_0x74bd[16]]);router[_0x74bd[19]](_0x74bd[14],auth[_0x74bd[9]](),controller[_0x74bd[18]]);router[_0x74bd[21]](_0x74bd[14],auth[_0x74bd[9]](),controller[_0x74bd[20]]);module[_0x74bd[22]]= router
\ No newline at end of file
index 15dd308..d66d353 100644 (file)
@@ -1 +1 @@
-var _0xa6f6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x63\x61\x6C\x6C\x65\x64\x2C\x63\x6F\x6E\x6E\x65\x63\x74\x2C\x63\x6F\x6D\x70\x6C\x65\x74\x65"];_0xa6f6[0];var Sequelize=require(_0xa6f6[1]);module[_0xa6f6[2]]= {privilege:{type:Sequelize[_0xa6f6[3]]},channel:{type:Sequelize[_0xa6f6[3]]},channelstate:{type:Sequelize[_0xa6f6[4]]},channelstatedesc:{type:Sequelize[_0xa6f6[3]]},calleridnum:{type:Sequelize[_0xa6f6[3]]},calleridname:{type:Sequelize[_0xa6f6[3]]},connectedlinenum:{type:Sequelize[_0xa6f6[3]]},connectedlinename:{type:Sequelize[_0xa6f6[3]]},language:{type:Sequelize[_0xa6f6[3]]},accountcode:{type:Sequelize[_0xa6f6[3]]},context:{type:Sequelize[_0xa6f6[3]]},exten:{type:Sequelize[_0xa6f6[3]]},priority:{type:Sequelize[_0xa6f6[4]]},uniqueid:{type:Sequelize[_0xa6f6[3]]},linkedid:{type:Sequelize[_0xa6f6[3]]},destchannel:{type:Sequelize[_0xa6f6[3]]},destchannelstate:{type:Sequelize[_0xa6f6[4]]},destchannelstatedesc:{type:Sequelize[_0xa6f6[3]]},destcalleridnum:{type:Sequelize[_0xa6f6[3]]},destcalleridname:{type:Sequelize[_0xa6f6[3]]},destconnectedlinenum:{type:Sequelize[_0xa6f6[3]]},destconnectedlinename:{type:Sequelize[_0xa6f6[3]]},destlanguage:{type:Sequelize[_0xa6f6[3]]},destaccountcode:{type:Sequelize[_0xa6f6[3]]},destcontext:{type:Sequelize[_0xa6f6[3]]},destexten:{type:Sequelize[_0xa6f6[3]]},destpriority:{type:Sequelize[_0xa6f6[4]]},destuniqueid:{type:Sequelize[_0xa6f6[3]]},destlinkedid:{type:Sequelize[_0xa6f6[3]]},dialstring:{type:Sequelize[_0xa6f6[3]]},dialstatus:{type:Sequelize[_0xa6f6[3]]},starttime:{type:Sequelize[_0xa6f6[5]]},answertime:{type:Sequelize[_0xa6f6[5]]},endtime:{type:Sequelize[_0xa6f6[5]]},lastevent:{type:Sequelize[_0xa6f6[3]],comment:_0xa6f6[6]},routeId:{type:Sequelize[_0xa6f6[4]]}}
\ No newline at end of file
+var _0xd126=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x63\x61\x6C\x6C\x65\x64\x2C\x63\x6F\x6E\x6E\x65\x63\x74\x2C\x63\x6F\x6D\x70\x6C\x65\x74\x65"];_0xd126[0];var Sequelize=require(_0xd126[1]);module[_0xd126[2]]= {privilege:{type:Sequelize[_0xd126[3]]},channel:{type:Sequelize[_0xd126[3]]},channelstate:{type:Sequelize[_0xd126[4]]},channelstatedesc:{type:Sequelize[_0xd126[3]]},calleridnum:{type:Sequelize[_0xd126[3]]},calleridname:{type:Sequelize[_0xd126[3]]},connectedlinenum:{type:Sequelize[_0xd126[3]]},connectedlinename:{type:Sequelize[_0xd126[3]]},language:{type:Sequelize[_0xd126[3]]},accountcode:{type:Sequelize[_0xd126[3]]},context:{type:Sequelize[_0xd126[3]]},exten:{type:Sequelize[_0xd126[3]]},priority:{type:Sequelize[_0xd126[4]]},uniqueid:{type:Sequelize[_0xd126[3]]},linkedid:{type:Sequelize[_0xd126[3]]},destchannel:{type:Sequelize[_0xd126[3]]},destchannelstate:{type:Sequelize[_0xd126[4]]},destchannelstatedesc:{type:Sequelize[_0xd126[3]]},destcalleridnum:{type:Sequelize[_0xd126[3]]},destcalleridname:{type:Sequelize[_0xd126[3]]},destconnectedlinenum:{type:Sequelize[_0xd126[3]]},destconnectedlinename:{type:Sequelize[_0xd126[3]]},destlanguage:{type:Sequelize[_0xd126[3]]},destaccountcode:{type:Sequelize[_0xd126[3]]},destcontext:{type:Sequelize[_0xd126[3]]},destexten:{type:Sequelize[_0xd126[3]]},destpriority:{type:Sequelize[_0xd126[4]]},destuniqueid:{type:Sequelize[_0xd126[3]]},destlinkedid:{type:Sequelize[_0xd126[3]]},dialstring:{type:Sequelize[_0xd126[3]]},dialstatus:{type:Sequelize[_0xd126[3]]},starttime:{type:Sequelize[_0xd126[5]]},answertime:{type:Sequelize[_0xd126[5]]},endtime:{type:Sequelize[_0xd126[5]]},lastevent:{type:Sequelize[_0xd126[3]],comment:_0xd126[6]},routeId:{type:Sequelize[_0xd126[4]]}}
\ No newline at end of file
index 0743484..3ccfc88 100644 (file)
@@ -1 +1 @@
-var _0x3fd3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x3fd3[0];var jsonpatch=require(_0x3fd3[1]);var rp=require(_0x3fd3[2]);var moment=require(_0x3fd3[3]);var BPromise=require(_0x3fd3[4]);var util=require(_0x3fd3[5]);var path=require(_0x3fd3[6]);var sox=require(_0x3fd3[7]);var ejs=require(_0x3fd3[8]);var fs=require(_0x3fd3[9]);var _=require(_0x3fd3[10]);var squel=require(_0x3fd3[11]);var crypto=require(_0x3fd3[12]);var jsforce=require(_0x3fd3[13]);var toCsv=require(_0x3fd3[14]);var qs=require(_0x3fd3[15]);var logger=require(_0x3fd3[17])(_0x3fd3[16]);var utils=require(_0x3fd3[18]);var config=require(_0x3fd3[19]);var db=require(_0x3fd3[21])[_0x3fd3[20]];function respondWithStatusCode(_0xf8fcx15,_0xf8fcx16,_0xf8fcx17){_0xf8fcx16= _0xf8fcx16|| 204;return function(_0xf8fcx18){if(_0xf8fcx18){logger[_0x3fd3[24]](_0x3fd3[22],_0xf8fcx17,_0xf8fcx16,_0x3fd3[23]);logger[_0x3fd3[26]](_0x3fd3[25],_0xf8fcx17,_0xf8fcx16,_0x3fd3[23]);return _0xf8fcx15[_0x3fd3[27]](_0xf8fcx16)};return _0xf8fcx15[_0x3fd3[29]](304)[_0x3fd3[28]]()}}function respondWithResult(_0xf8fcx15,_0xf8fcx16,_0xf8fcx17){_0xf8fcx16= _0xf8fcx16|| 200;return function(_0xf8fcx18){if(_0xf8fcx18){logger[_0x3fd3[24]](_0x3fd3[22],_0xf8fcx17,_0xf8fcx16,_0x3fd3[30]);logger[_0x3fd3[26]](_0x3fd3[25],_0xf8fcx17,_0xf8fcx16,_0x3fd3[30],JSON[_0x3fd3[31]](_0xf8fcx18));return _0xf8fcx15[_0x3fd3[29]](_0xf8fcx16)[_0x3fd3[32]](_0xf8fcx18)};return _0xf8fcx15[_0x3fd3[29]](304)[_0x3fd3[28]]()}}function respondWithFilteredResult(_0xf8fcx15,_0xf8fcx1b,_0xf8fcx17){return function(_0xf8fcx18){if(_0xf8fcx18){var _0xf8fcx1c=_0xf8fcx18[_0x3fd3[33]],_0xf8fcx1d=_0xf8fcx1b[_0x3fd3[34]],_0xf8fcx1e=_0xf8fcx1b[_0x3fd3[34]]+ _0xf8fcx1b[_0x3fd3[35]],_0xf8fcx16;if(_0xf8fcx1e>= _0xf8fcx1c){_0xf8fcx1e= _0xf8fcx1c;_0xf8fcx16= 200}else {_0xf8fcx16= 206};_0xf8fcx15[_0x3fd3[29]](_0xf8fcx16);logger[_0x3fd3[24]](_0x3fd3[22],_0xf8fcx17,_0xf8fcx16,_0x3fd3[36]);logger[_0x3fd3[26]](_0x3fd3[25],_0xf8fcx17,_0xf8fcx16,_0x3fd3[30],JSON[_0x3fd3[31]](_0xf8fcx18));return _0xf8fcx15[_0x3fd3[40]](_0x3fd3[37],_0xf8fcx1d+ _0x3fd3[38]+ _0xf8fcx1e+ _0x3fd3[39]+ _0xf8fcx1c)[_0x3fd3[32]](_0xf8fcx18)};return null}}function patchUpdates(_0xf8fcx20){return function(_0xf8fcx18){try{jsonpatch[_0x3fd3[41]](_0xf8fcx18,_0xf8fcx20,true)}catch(err){return BPromise[_0x3fd3[42]](err)};return _0xf8fcx18[_0x3fd3[43]]()}}function saveUpdates(_0xf8fcx22,_0xf8fcx16,_0xf8fcx17){return function(_0xf8fcx18){if(_0xf8fcx18){return _0xf8fcx18[_0x3fd3[46]](_0xf8fcx22)[_0x3fd3[45]](function(_0xf8fcx23){logger[_0x3fd3[24]](_0x3fd3[22],_0xf8fcx17,_0xf8fcx16,_0x3fd3[44]);logger[_0x3fd3[26]](_0x3fd3[25],_0xf8fcx17,_0xf8fcx16,_0x3fd3[44],JSON[_0x3fd3[31]](_0xf8fcx18));return _0xf8fcx23})};return null}}function removeEntity(_0xf8fcx15,_0xf8fcx16,_0xf8fcx17){return function(_0xf8fcx18){if(_0xf8fcx18){return _0xf8fcx18[_0x3fd3[48]]()[_0x3fd3[45]](function(){logger[_0x3fd3[24]](_0x3fd3[22],_0xf8fcx17,_0xf8fcx16,_0x3fd3[47]);logger[_0x3fd3[26]](_0x3fd3[25],_0xf8fcx17,_0xf8fcx16,_0x3fd3[47],JSON[_0x3fd3[31]](_0xf8fcx18));_0xf8fcx15[_0x3fd3[29]](204)[_0x3fd3[28]]()})}}}function handleEntityNotFound(_0xf8fcx15,_0xf8fcx16,_0xf8fcx17){return function(_0xf8fcx18){if(!_0xf8fcx18){logger[_0x3fd3[50]](_0x3fd3[22],_0xf8fcx17,404,_0x3fd3[49]);_0xf8fcx15[_0x3fd3[29]](404)[_0x3fd3[28]]();return null};return _0xf8fcx18}}function handleError(_0xf8fcx15,_0xf8fcx16,_0xf8fcx17){_0xf8fcx16= _0xf8fcx16|| 500;return function(_0xf8fcx27){logger[_0x3fd3[50]](_0x3fd3[22],_0xf8fcx17,_0xf8fcx16,JSON[_0x3fd3[31]](_0xf8fcx27));delete _0xf8fcx27[_0x3fd3[51]];_0xf8fcx15[_0x3fd3[29]](_0xf8fcx16)[_0x3fd3[52]](_0xf8fcx27)}}exports[_0x3fd3[53]]= function(_0xf8fcx28,_0xf8fcx15){var _0xf8fcx1b={},_0xf8fcx29={};_0xf8fcx29[_0x3fd3[54]]= _[_0x3fd3[57]](db[_0x3fd3[56]][_0x3fd3[55]]);_0xf8fcx29[_0x3fd3[58]]= _[_0x3fd3[57]](_0xf8fcx28[_0x3fd3[58]]);_0xf8fcx29[_0x3fd3[59]]= _[_0x3fd3[60]](_0xf8fcx29[_0x3fd3[54]],_0xf8fcx29[_0x3fd3[58]]);_0xf8fcx1b[_0x3fd3[61]]= _[_0x3fd3[60]](_0xf8fcx29[_0x3fd3[54]],qs[_0x3fd3[62]](_0xf8fcx28[_0x3fd3[58]][_0x3fd3[62]]));_0xf8fcx1b[_0x3fd3[61]]= (_0xf8fcx1b[_0x3fd3[61]][_0x3fd3[63]])?_0xf8fcx1b[_0x3fd3[61]]:_0xf8fcx29[_0x3fd3[54]];if(!_0xf8fcx28[_0x3fd3[58]][_0x3fd3[65]](_0x3fd3[64])){_0xf8fcx1b[_0x3fd3[35]]= qs[_0x3fd3[35]](_0xf8fcx28[_0x3fd3[58]][_0x3fd3[35]]);_0xf8fcx1b[_0x3fd3[34]]= qs[_0x3fd3[34]](_0xf8fcx28[_0x3fd3[58]][_0x3fd3[34]])};_0xf8fcx1b[_0x3fd3[66]]= qs[_0x3fd3[67]](_0xf8fcx28[_0x3fd3[58]][_0x3fd3[67]]);_0xf8fcx1b[_0x3fd3[68]]= qs[_0x3fd3[59]](_[_0x3fd3[69]](_0xf8fcx28[_0x3fd3[58]],_0xf8fcx29[_0x3fd3[59]]));if(_0xf8fcx28[_0x3fd3[58]][_0x3fd3[70]]){_0xf8fcx1b[_0x3fd3[68]]= _[_0x3fd3[73]](_0xf8fcx1b[_0x3fd3[68]],{$or:_[_0x3fd3[72]](_0xf8fcx1b[_0x3fd3[61]],function(_0xf8fcx2a){var _0xf8fcx2b={};_0xf8fcx2b[_0xf8fcx2a]= {$like:_0x3fd3[71]+ _0xf8fcx28[_0x3fd3[58]][_0x3fd3[70]]+ _0x3fd3[71]};return _0xf8fcx2b})})};_0xf8fcx1b= _[_0x3fd3[73]]({},_0xf8fcx1b,_0xf8fcx28[_0x3fd3[74]]);return db[_0x3fd3[56]][_0x3fd3[76]](_0xf8fcx1b)[_0x3fd3[45]](respondWithFilteredResult(_0xf8fcx15,_0xf8fcx1b,_0x3fd3[53]))[_0x3fd3[75]](handleError(_0xf8fcx15,null,_0x3fd3[53]))};exports[_0x3fd3[77]]= function(_0xf8fcx28,_0xf8fcx15){var _0xf8fcx1b={raw:true,where:{id:_0xf8fcx28[_0x3fd3[79]][_0x3fd3[78]]}},_0xf8fcx29={};_0xf8fcx29[_0x3fd3[54]]= _[_0x3fd3[57]](db[_0x3fd3[56]][_0x3fd3[55]]);_0xf8fcx29[_0x3fd3[58]]= _[_0x3fd3[57]](_0xf8fcx28[_0x3fd3[58]]);_0xf8fcx29[_0x3fd3[59]]= _[_0x3fd3[60]](_0xf8fcx29[_0x3fd3[54]],_0xf8fcx29[_0x3fd3[58]]);_0xf8fcx1b[_0x3fd3[61]]= _[_0x3fd3[60]](_0xf8fcx29[_0x3fd3[54]],qs[_0x3fd3[62]](_0xf8fcx28[_0x3fd3[58]][_0x3fd3[62]]));_0xf8fcx1b[_0x3fd3[61]]= (_0xf8fcx1b[_0x3fd3[61]][_0x3fd3[63]])?_0xf8fcx1b[_0x3fd3[61]]:_0xf8fcx29[_0x3fd3[54]];_0xf8fcx1b= _[_0x3fd3[73]]({},_0xf8fcx1b,_0xf8fcx28[_0x3fd3[74]]);return db[_0x3fd3[56]][_0x3fd3[80]](_0xf8fcx1b)[_0x3fd3[45]](handleEntityNotFound(_0xf8fcx15,null,_0x3fd3[77]))[_0x3fd3[45]](respondWithResult(_0xf8fcx15,null,_0x3fd3[77]))[_0x3fd3[75]](handleError(_0xf8fcx15,null,_0x3fd3[77]))};exports[_0x3fd3[81]]= function(_0xf8fcx28,_0xf8fcx15){return db[_0x3fd3[56]][_0x3fd3[81]](_0xf8fcx28[_0x3fd3[82]],{})[_0x3fd3[45]](respondWithResult(_0xf8fcx15,201,_0x3fd3[81]))[_0x3fd3[75]](handleError(_0xf8fcx15,null,_0x3fd3[81]))};exports[_0x3fd3[46]]= function(_0xf8fcx28,_0xf8fcx15){if(_0xf8fcx28[_0x3fd3[82]][_0x3fd3[78]]){delete _0xf8fcx28[_0x3fd3[82]][_0x3fd3[78]]};return db[_0x3fd3[56]][_0x3fd3[80]]({where:{id:_0xf8fcx28[_0x3fd3[79]][_0x3fd3[78]]}})[_0x3fd3[45]](handleEntityNotFound(_0xf8fcx15,null,_0x3fd3[46]))[_0x3fd3[45]](saveUpdates(_0xf8fcx28[_0x3fd3[82]],null,_0x3fd3[46]))[_0x3fd3[45]](respondWithResult(_0xf8fcx15,null,_0x3fd3[46]))[_0x3fd3[75]](handleError(_0xf8fcx15,null,_0x3fd3[46]))};exports[_0x3fd3[48]]= function(_0xf8fcx28,_0xf8fcx15){return db[_0x3fd3[56]][_0x3fd3[80]]({where:{id:_0xf8fcx28[_0x3fd3[79]][_0x3fd3[78]]}})[_0x3fd3[45]](handleEntityNotFound(_0xf8fcx15,null,_0x3fd3[48]))[_0x3fd3[45]](removeEntity(_0xf8fcx15,null,_0x3fd3[48]))[_0x3fd3[75]](handleError(_0xf8fcx15,null,_0x3fd3[48]))};exports[_0x3fd3[83]]= function(_0xf8fcx28,_0xf8fcx15){return db[_0x3fd3[56]][_0x3fd3[83]]()[_0x3fd3[45]](respondWithResult(_0xf8fcx15,null,_0x3fd3[83]))[_0x3fd3[75]](handleError(_0xf8fcx15,null,_0x3fd3[83]))}
\ No newline at end of file
+var _0x413e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x413e[0];var jsonpatch=require(_0x413e[1]);var rp=require(_0x413e[2]);var moment=require(_0x413e[3]);var BPromise=require(_0x413e[4]);var util=require(_0x413e[5]);var path=require(_0x413e[6]);var sox=require(_0x413e[7]);var ejs=require(_0x413e[8]);var fs=require(_0x413e[9]);var _=require(_0x413e[10]);var squel=require(_0x413e[11]);var crypto=require(_0x413e[12]);var jsforce=require(_0x413e[13]);var toCsv=require(_0x413e[14]);var qs=require(_0x413e[15]);var logger=require(_0x413e[17])(_0x413e[16]);var utils=require(_0x413e[18]);var config=require(_0x413e[19]);var db=require(_0x413e[21])[_0x413e[20]];function respondWithStatusCode(_0xf3d1x15,_0xf3d1x16,_0xf3d1x17){_0xf3d1x16= _0xf3d1x16|| 204;return function(_0xf3d1x18){if(_0xf3d1x18){logger[_0x413e[24]](_0x413e[22],_0xf3d1x17,_0xf3d1x16,_0x413e[23]);logger[_0x413e[26]](_0x413e[25],_0xf3d1x17,_0xf3d1x16,_0x413e[23]);return _0xf3d1x15[_0x413e[27]](_0xf3d1x16)};return _0xf3d1x15[_0x413e[29]](304)[_0x413e[28]]()}}function respondWithResult(_0xf3d1x15,_0xf3d1x16,_0xf3d1x17){_0xf3d1x16= _0xf3d1x16|| 200;return function(_0xf3d1x18){if(_0xf3d1x18){logger[_0x413e[24]](_0x413e[22],_0xf3d1x17,_0xf3d1x16,_0x413e[30]);logger[_0x413e[26]](_0x413e[25],_0xf3d1x17,_0xf3d1x16,_0x413e[30],JSON[_0x413e[31]](_0xf3d1x18));return _0xf3d1x15[_0x413e[29]](_0xf3d1x16)[_0x413e[32]](_0xf3d1x18)};return _0xf3d1x15[_0x413e[29]](304)[_0x413e[28]]()}}function respondWithFilteredResult(_0xf3d1x15,_0xf3d1x1b,_0xf3d1x17){return function(_0xf3d1x18){if(_0xf3d1x18){var _0xf3d1x1c=_0xf3d1x18[_0x413e[33]],_0xf3d1x1d=_0xf3d1x1b[_0x413e[34]],_0xf3d1x1e=_0xf3d1x1b[_0x413e[34]]+ _0xf3d1x1b[_0x413e[35]],_0xf3d1x16;if(_0xf3d1x1e>= _0xf3d1x1c){_0xf3d1x1e= _0xf3d1x1c;_0xf3d1x16= 200}else {_0xf3d1x16= 206};_0xf3d1x15[_0x413e[29]](_0xf3d1x16);logger[_0x413e[24]](_0x413e[22],_0xf3d1x17,_0xf3d1x16,_0x413e[36]);logger[_0x413e[26]](_0x413e[25],_0xf3d1x17,_0xf3d1x16,_0x413e[30],JSON[_0x413e[31]](_0xf3d1x18));return _0xf3d1x15[_0x413e[40]](_0x413e[37],_0xf3d1x1d+ _0x413e[38]+ _0xf3d1x1e+ _0x413e[39]+ _0xf3d1x1c)[_0x413e[32]](_0xf3d1x18)};return null}}function patchUpdates(_0xf3d1x20){return function(_0xf3d1x18){try{jsonpatch[_0x413e[41]](_0xf3d1x18,_0xf3d1x20,true)}catch(err){return BPromise[_0x413e[42]](err)};return _0xf3d1x18[_0x413e[43]]()}}function saveUpdates(_0xf3d1x22,_0xf3d1x16,_0xf3d1x17){return function(_0xf3d1x18){if(_0xf3d1x18){return _0xf3d1x18[_0x413e[46]](_0xf3d1x22)[_0x413e[45]](function(_0xf3d1x23){logger[_0x413e[24]](_0x413e[22],_0xf3d1x17,_0xf3d1x16,_0x413e[44]);logger[_0x413e[26]](_0x413e[25],_0xf3d1x17,_0xf3d1x16,_0x413e[44],JSON[_0x413e[31]](_0xf3d1x18));return _0xf3d1x23})};return null}}function removeEntity(_0xf3d1x15,_0xf3d1x16,_0xf3d1x17){return function(_0xf3d1x18){if(_0xf3d1x18){return _0xf3d1x18[_0x413e[48]]()[_0x413e[45]](function(){logger[_0x413e[24]](_0x413e[22],_0xf3d1x17,_0xf3d1x16,_0x413e[47]);logger[_0x413e[26]](_0x413e[25],_0xf3d1x17,_0xf3d1x16,_0x413e[47],JSON[_0x413e[31]](_0xf3d1x18));_0xf3d1x15[_0x413e[29]](204)[_0x413e[28]]()})}}}function handleEntityNotFound(_0xf3d1x15,_0xf3d1x16,_0xf3d1x17){return function(_0xf3d1x18){if(!_0xf3d1x18){logger[_0x413e[50]](_0x413e[22],_0xf3d1x17,404,_0x413e[49]);_0xf3d1x15[_0x413e[29]](404)[_0x413e[28]]();return null};return _0xf3d1x18}}function handleError(_0xf3d1x15,_0xf3d1x16,_0xf3d1x17){_0xf3d1x16= _0xf3d1x16|| 500;return function(_0xf3d1x27){logger[_0x413e[50]](_0x413e[22],_0xf3d1x17,_0xf3d1x16,JSON[_0x413e[31]](_0xf3d1x27));delete _0xf3d1x27[_0x413e[51]];_0xf3d1x15[_0x413e[29]](_0xf3d1x16)[_0x413e[52]](_0xf3d1x27)}}exports[_0x413e[53]]= function(_0xf3d1x28,_0xf3d1x15){var _0xf3d1x1b={},_0xf3d1x29={};_0xf3d1x29[_0x413e[54]]= _[_0x413e[57]](db[_0x413e[56]][_0x413e[55]]);_0xf3d1x29[_0x413e[58]]= _[_0x413e[57]](_0xf3d1x28[_0x413e[58]]);_0xf3d1x29[_0x413e[59]]= _[_0x413e[60]](_0xf3d1x29[_0x413e[54]],_0xf3d1x29[_0x413e[58]]);_0xf3d1x1b[_0x413e[61]]= _[_0x413e[60]](_0xf3d1x29[_0x413e[54]],qs[_0x413e[62]](_0xf3d1x28[_0x413e[58]][_0x413e[62]]));_0xf3d1x1b[_0x413e[61]]= (_0xf3d1x1b[_0x413e[61]][_0x413e[63]])?_0xf3d1x1b[_0x413e[61]]:_0xf3d1x29[_0x413e[54]];if(!_0xf3d1x28[_0x413e[58]][_0x413e[65]](_0x413e[64])){_0xf3d1x1b[_0x413e[35]]= qs[_0x413e[35]](_0xf3d1x28[_0x413e[58]][_0x413e[35]]);_0xf3d1x1b[_0x413e[34]]= qs[_0x413e[34]](_0xf3d1x28[_0x413e[58]][_0x413e[34]])};_0xf3d1x1b[_0x413e[66]]= qs[_0x413e[67]](_0xf3d1x28[_0x413e[58]][_0x413e[67]]);_0xf3d1x1b[_0x413e[68]]= qs[_0x413e[59]](_[_0x413e[69]](_0xf3d1x28[_0x413e[58]],_0xf3d1x29[_0x413e[59]]));if(_0xf3d1x28[_0x413e[58]][_0x413e[70]]){_0xf3d1x1b[_0x413e[68]]= _[_0x413e[73]](_0xf3d1x1b[_0x413e[68]],{$or:_[_0x413e[72]](_0xf3d1x1b[_0x413e[61]],function(_0xf3d1x2a){var _0xf3d1x2b={};_0xf3d1x2b[_0xf3d1x2a]= {$like:_0x413e[71]+ _0xf3d1x28[_0x413e[58]][_0x413e[70]]+ _0x413e[71]};return _0xf3d1x2b})})};_0xf3d1x1b= _[_0x413e[73]]({},_0xf3d1x1b,_0xf3d1x28[_0x413e[74]]);return db[_0x413e[56]][_0x413e[76]](_0xf3d1x1b)[_0x413e[45]](respondWithFilteredResult(_0xf3d1x15,_0xf3d1x1b,_0x413e[53]))[_0x413e[75]](handleError(_0xf3d1x15,null,_0x413e[53]))};exports[_0x413e[77]]= function(_0xf3d1x28,_0xf3d1x15){var _0xf3d1x1b={raw:true,where:{id:_0xf3d1x28[_0x413e[79]][_0x413e[78]]}},_0xf3d1x29={};_0xf3d1x29[_0x413e[54]]= _[_0x413e[57]](db[_0x413e[56]][_0x413e[55]]);_0xf3d1x29[_0x413e[58]]= _[_0x413e[57]](_0xf3d1x28[_0x413e[58]]);_0xf3d1x29[_0x413e[59]]= _[_0x413e[60]](_0xf3d1x29[_0x413e[54]],_0xf3d1x29[_0x413e[58]]);_0xf3d1x1b[_0x413e[61]]= _[_0x413e[60]](_0xf3d1x29[_0x413e[54]],qs[_0x413e[62]](_0xf3d1x28[_0x413e[58]][_0x413e[62]]));_0xf3d1x1b[_0x413e[61]]= (_0xf3d1x1b[_0x413e[61]][_0x413e[63]])?_0xf3d1x1b[_0x413e[61]]:_0xf3d1x29[_0x413e[54]];_0xf3d1x1b= _[_0x413e[73]]({},_0xf3d1x1b,_0xf3d1x28[_0x413e[74]]);return db[_0x413e[56]][_0x413e[80]](_0xf3d1x1b)[_0x413e[45]](handleEntityNotFound(_0xf3d1x15,null,_0x413e[77]))[_0x413e[45]](respondWithResult(_0xf3d1x15,null,_0x413e[77]))[_0x413e[75]](handleError(_0xf3d1x15,null,_0x413e[77]))};exports[_0x413e[81]]= function(_0xf3d1x28,_0xf3d1x15){return db[_0x413e[56]][_0x413e[81]](_0xf3d1x28[_0x413e[82]],{})[_0x413e[45]](respondWithResult(_0xf3d1x15,201,_0x413e[81]))[_0x413e[75]](handleError(_0xf3d1x15,null,_0x413e[81]))};exports[_0x413e[46]]= function(_0xf3d1x28,_0xf3d1x15){if(_0xf3d1x28[_0x413e[82]][_0x413e[78]]){delete _0xf3d1x28[_0x413e[82]][_0x413e[78]]};return db[_0x413e[56]][_0x413e[80]]({where:{id:_0xf3d1x28[_0x413e[79]][_0x413e[78]]}})[_0x413e[45]](handleEntityNotFound(_0xf3d1x15,null,_0x413e[46]))[_0x413e[45]](saveUpdates(_0xf3d1x28[_0x413e[82]],null,_0x413e[46]))[_0x413e[45]](respondWithResult(_0xf3d1x15,null,_0x413e[46]))[_0x413e[75]](handleError(_0xf3d1x15,null,_0x413e[46]))};exports[_0x413e[48]]= function(_0xf3d1x28,_0xf3d1x15){return db[_0x413e[56]][_0x413e[80]]({where:{id:_0xf3d1x28[_0x413e[79]][_0x413e[78]]}})[_0x413e[45]](handleEntityNotFound(_0xf3d1x15,null,_0x413e[48]))[_0x413e[45]](removeEntity(_0xf3d1x15,null,_0x413e[48]))[_0x413e[75]](handleError(_0xf3d1x15,null,_0x413e[48]))};exports[_0x413e[83]]= function(_0xf3d1x28,_0xf3d1x15){return db[_0x413e[56]][_0x413e[83]]()[_0x413e[45]](respondWithResult(_0xf3d1x15,null,_0x413e[83]))[_0x413e[75]](handleError(_0xf3d1x15,null,_0x413e[83]))}
\ No newline at end of file
index 33ca48b..e4c2df3 100644 (file)
@@ -1 +1 @@
-var _0x5d39=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x64\x69\x61\x6C","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x66\x69\x6E\x65"];_0x5d39[0];var _=require(_0x5d39[1]);var util=require(_0x5d39[2]);var logger=require(_0x5d39[4])(_0x5d39[3]);var attributes=require(_0x5d39[5]);module[_0x5d39[6]]= function(_0xc677x5,_0xc677x6){return _0xc677x5[_0x5d39[10]](_0x5d39[7],attributes,{tableName:_0x5d39[8],paranoid:false,indexes:[{"\x66\x69\x65\x6C\x64\x73":[_0x5d39[9]]}],timestamps:true})}
\ No newline at end of file
+var _0x7534=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x64\x69\x61\x6C","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x66\x69\x6E\x65"];_0x7534[0];var _=require(_0x7534[1]);var util=require(_0x7534[2]);var logger=require(_0x7534[4])(_0x7534[3]);var attributes=require(_0x7534[5]);module[_0x7534[6]]= function(_0xcb54x5,_0xcb54x6){return _0xcb54x5[_0x7534[10]](_0x7534[7],attributes,{tableName:_0x7534[8],paranoid:false,indexes:[{"\x66\x69\x65\x6C\x64\x73":[_0x7534[9]]}],timestamps:true})}
\ No newline at end of file
index b7b8e06..93c4715 100644 (file)
@@ -1 +1 @@
-var _0xbf47=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65"];_0xbf47[0];var _=require(_0xbf47[1]);var util=require(_0xbf47[2]);var moment=require(_0xbf47[3]);var BPromise=require(_0xbf47[4]);var db=require(_0xbf47[6])[_0xbf47[5]];var utils=require(_0xbf47[7]);var logger=require(_0xbf47[9])(_0xbf47[8]);var jayson=require(_0xbf47[10]);var client=jayson[_0xbf47[12]][_0xbf47[11]]({port:9002});function respondWithRpcPromise(_0xdefbxb,_0xdefbxc,_0xdefbxd){return  new BPromise(function(_0xdefbxe,_0xdefbxf){return client[_0xbf47[25]](_0xdefbxb,_0xdefbxd)[_0xbf47[24]](function(_0xdefbx11){logger[_0xbf47[17]](_0xbf47[13],_0xdefbxc,_0xbf47[16]);logger[_0xbf47[20]](_0xbf47[18],_0xdefbxc,_0xbf47[16],JSON[_0xbf47[19]](_0xdefbx11));if(_0xdefbx11[_0xbf47[14]]){if(_0xdefbx11[_0xbf47[14]][_0xbf47[21]]=== 500){logger[_0xbf47[14]](_0xbf47[13],_0xdefbxc,_0xdefbx11[_0xbf47[14]][_0xbf47[22]]);return _0xdefbxf(_0xdefbx11[_0xbf47[14]][_0xbf47[22]])};logger[_0xbf47[14]](_0xbf47[13],_0xdefbxc,_0xdefbx11[_0xbf47[14]][_0xbf47[22]]);return _0xdefbxe(_0xdefbx11[_0xbf47[14]][_0xbf47[22]])}else {logger[_0xbf47[17]](_0xbf47[13],_0xdefbxc,_0xbf47[16]);_0xdefbxe(_0xdefbx11[_0xbf47[23]][_0xbf47[22]])}})[_0xbf47[15]](function(_0xdefbx10){logger[_0xbf47[14]](_0xbf47[13],_0xdefbxc,_0xdefbx10);_0xdefbxf(_0xdefbx10)})})}exports[_0xbf47[26]]= function(_0xdefbxd){var _0xdefbx12=this;return  new Promise(function(_0xdefbxe,_0xdefbxf){return db[_0xbf47[31]][_0xbf47[30]](_0xdefbxd[_0xbf47[27]],{raw:_0xdefbxd[_0xbf47[28]]?(_0xdefbxd[_0xbf47[28]][_0xbf47[29]]=== undefined)?true:false:true})[_0xbf47[24]](function(_0xdefbx11){logger[_0xbf47[17]](_0xbf47[26],_0xdefbxd);logger[_0xbf47[20]](_0xbf47[26],_0xdefbxd,JSON[_0xbf47[19]](_0xdefbx11));_0xdefbxe(_0xdefbx11)})[_0xbf47[15]](function(_0xdefbx10){logger[_0xbf47[14]](_0xbf47[26],_0xdefbx10[_0xbf47[22]],_0xdefbxd);_0xdefbxf(_0xdefbx12[_0xbf47[14]](500,_0xdefbx10[_0xbf47[22]]))})})};exports[_0xbf47[32]]= function(_0xdefbxd){var _0xdefbx12=this;return  new Promise(function(_0xdefbxe,_0xdefbxf){return db[_0xbf47[31]][_0xbf47[36]](_0xdefbxd[_0xbf47[27]],{raw:_0xdefbxd[_0xbf47[28]]?(_0xdefbxd[_0xbf47[28]][_0xbf47[29]]=== undefined)?true:false:true,individualHooks:true,where:_0xdefbxd[_0xbf47[28]]?_0xdefbxd[_0xbf47[28]][_0xbf47[33]]|| null:null,attributes:_0xdefbxd[_0xbf47[28]]?_0xdefbxd[_0xbf47[28]][_0xbf47[34]]|| null:null,limit:_0xdefbxd[_0xbf47[28]]?_0xdefbxd[_0xbf47[28]][_0xbf47[35]]|| null:null})[_0xbf47[24]](function(_0xdefbx11){logger[_0xbf47[17]](_0xbf47[32],_0xdefbxd);logger[_0xbf47[20]](_0xbf47[32],_0xdefbxd,JSON[_0xbf47[19]](_0xdefbx11));_0xdefbxe(_0xdefbx11)})[_0xbf47[15]](function(_0xdefbx10){logger[_0xbf47[14]](_0xbf47[32],_0xdefbx10[_0xbf47[22]],_0xdefbxd);_0xdefbxf(_0xdefbx12[_0xbf47[14]](500,_0xdefbx10[_0xbf47[22]]))})})}
\ No newline at end of file
+var _0x147d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65"];_0x147d[0];var _=require(_0x147d[1]);var util=require(_0x147d[2]);var moment=require(_0x147d[3]);var BPromise=require(_0x147d[4]);var db=require(_0x147d[6])[_0x147d[5]];var utils=require(_0x147d[7]);var logger=require(_0x147d[9])(_0x147d[8]);var jayson=require(_0x147d[10]);var client=jayson[_0x147d[12]][_0x147d[11]]({port:9002});function respondWithRpcPromise(_0x965bxb,_0x965bxc,_0x965bxd){return  new BPromise(function(_0x965bxe,_0x965bxf){return client[_0x147d[25]](_0x965bxb,_0x965bxd)[_0x147d[24]](function(_0x965bx11){logger[_0x147d[17]](_0x147d[13],_0x965bxc,_0x147d[16]);logger[_0x147d[20]](_0x147d[18],_0x965bxc,_0x147d[16],JSON[_0x147d[19]](_0x965bx11));if(_0x965bx11[_0x147d[14]]){if(_0x965bx11[_0x147d[14]][_0x147d[21]]=== 500){logger[_0x147d[14]](_0x147d[13],_0x965bxc,_0x965bx11[_0x147d[14]][_0x147d[22]]);return _0x965bxf(_0x965bx11[_0x147d[14]][_0x147d[22]])};logger[_0x147d[14]](_0x147d[13],_0x965bxc,_0x965bx11[_0x147d[14]][_0x147d[22]]);return _0x965bxe(_0x965bx11[_0x147d[14]][_0x147d[22]])}else {logger[_0x147d[17]](_0x147d[13],_0x965bxc,_0x147d[16]);_0x965bxe(_0x965bx11[_0x147d[23]][_0x147d[22]])}})[_0x147d[15]](function(_0x965bx10){logger[_0x147d[14]](_0x147d[13],_0x965bxc,_0x965bx10);_0x965bxf(_0x965bx10)})})}exports[_0x147d[26]]= function(_0x965bxd){var _0x965bx12=this;return  new Promise(function(_0x965bxe,_0x965bxf){return db[_0x147d[31]][_0x147d[30]](_0x965bxd[_0x147d[27]],{raw:_0x965bxd[_0x147d[28]]?(_0x965bxd[_0x147d[28]][_0x147d[29]]=== undefined)?true:false:true})[_0x147d[24]](function(_0x965bx11){logger[_0x147d[17]](_0x147d[26],_0x965bxd);logger[_0x147d[20]](_0x147d[26],_0x965bxd,JSON[_0x147d[19]](_0x965bx11));_0x965bxe(_0x965bx11)})[_0x147d[15]](function(_0x965bx10){logger[_0x147d[14]](_0x147d[26],_0x965bx10[_0x147d[22]],_0x965bxd);_0x965bxf(_0x965bx12[_0x147d[14]](500,_0x965bx10[_0x147d[22]]))})})};exports[_0x147d[32]]= function(_0x965bxd){var _0x965bx12=this;return  new Promise(function(_0x965bxe,_0x965bxf){return db[_0x147d[31]][_0x147d[36]](_0x965bxd[_0x147d[27]],{raw:_0x965bxd[_0x147d[28]]?(_0x965bxd[_0x147d[28]][_0x147d[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x965bxd[_0x147d[28]]?_0x965bxd[_0x147d[28]][_0x147d[33]]|| null:null,attributes:_0x965bxd[_0x147d[28]]?_0x965bxd[_0x147d[28]][_0x147d[34]]|| null:null,limit:_0x965bxd[_0x147d[28]]?_0x965bxd[_0x147d[28]][_0x147d[35]]|| null:null})[_0x147d[24]](function(_0x965bx11){logger[_0x147d[17]](_0x147d[32],_0x965bxd);logger[_0x147d[20]](_0x147d[32],_0x965bxd,JSON[_0x147d[19]](_0x965bx11));_0x965bxe(_0x965bx11)})[_0x147d[15]](function(_0x965bx10){logger[_0x147d[14]](_0x147d[32],_0x965bx10[_0x147d[22]],_0x965bxd);_0x965bxf(_0x965bx12[_0x147d[14]](500,_0x965bx10[_0x147d[22]]))})})}
\ No newline at end of file
index cdcb64a..55c42a1 100644 (file)
@@ -1 +1 @@
-var _0x6bca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x6bca[0];var multer=require(_0x6bca[1]);var util=require(_0x6bca[2]);var path=require(_0x6bca[3]);var express=require(_0x6bca[4]);var router=express.Router();var auth=require(_0x6bca[5]);var config=require(_0x6bca[6]);var controller=require(_0x6bca[7]);router[_0x6bca[11]](_0x6bca[8],auth[_0x6bca[9]](),controller[_0x6bca[10]]);router[_0x6bca[11]](_0x6bca[12],auth[_0x6bca[9]](),controller[_0x6bca[13]]);router[_0x6bca[15]](_0x6bca[8],auth[_0x6bca[9]](),controller[_0x6bca[14]]);router[_0x6bca[17]](_0x6bca[12],auth[_0x6bca[9]](),controller[_0x6bca[16]]);router[_0x6bca[19]](_0x6bca[12],auth[_0x6bca[9]](),controller[_0x6bca[18]]);module[_0x6bca[20]]= router
\ No newline at end of file
+var _0x7696=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7696[0];var multer=require(_0x7696[1]);var util=require(_0x7696[2]);var path=require(_0x7696[3]);var express=require(_0x7696[4]);var router=express.Router();var auth=require(_0x7696[5]);var config=require(_0x7696[6]);var controller=require(_0x7696[7]);router[_0x7696[11]](_0x7696[8],auth[_0x7696[9]](),controller[_0x7696[10]]);router[_0x7696[11]](_0x7696[12],auth[_0x7696[9]](),controller[_0x7696[13]]);router[_0x7696[15]](_0x7696[8],auth[_0x7696[9]](),controller[_0x7696[14]]);router[_0x7696[17]](_0x7696[12],auth[_0x7696[9]](),controller[_0x7696[16]]);router[_0x7696[19]](_0x7696[12],auth[_0x7696[9]](),controller[_0x7696[18]]);module[_0x7696[20]]= router
\ No newline at end of file
index f6a821a..98d54b1 100644 (file)
@@ -1 +1 @@
-var _0xee3c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0xee3c[0];var Sequelize=require(_0xee3c[1]);module[_0xee3c[2]]= {name:{type:Sequelize[_0xee3c[3]]}}
\ No newline at end of file
+var _0x5079=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47"];_0x5079[0];var Sequelize=require(_0x5079[1]);module[_0x5079[2]]= {name:{type:Sequelize[_0x5079[3]]}}
\ No newline at end of file
index 4bc3009..2d5da7c 100644 (file)
@@ -1 +1 @@
-var _0xcb7c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xcb7c[0];var jsonpatch=require(_0xcb7c[1]);var rp=require(_0xcb7c[2]);var moment=require(_0xcb7c[3]);var BPromise=require(_0xcb7c[4]);var util=require(_0xcb7c[5]);var path=require(_0xcb7c[6]);var sox=require(_0xcb7c[7]);var ejs=require(_0xcb7c[8]);var fs=require(_0xcb7c[9]);var _=require(_0xcb7c[10]);var squel=require(_0xcb7c[11]);var crypto=require(_0xcb7c[12]);var jsforce=require(_0xcb7c[13]);var toCsv=require(_0xcb7c[14]);var qs=require(_0xcb7c[15]);var logger=require(_0xcb7c[17])(_0xcb7c[16]);var utils=require(_0xcb7c[18]);var config=require(_0xcb7c[19]);var db=require(_0xcb7c[21])[_0xcb7c[20]];function respondWithStatusCode(_0xdde3x15,_0xdde3x16,_0xdde3x17){_0xdde3x16= _0xdde3x16|| 204;return function(_0xdde3x18){if(_0xdde3x18){logger[_0xcb7c[24]](_0xcb7c[22],_0xdde3x17,_0xdde3x16,_0xcb7c[23]);logger[_0xcb7c[26]](_0xcb7c[25],_0xdde3x17,_0xdde3x16,_0xcb7c[23]);return _0xdde3x15[_0xcb7c[27]](_0xdde3x16)};return _0xdde3x15[_0xcb7c[29]](304)[_0xcb7c[28]]()}}function respondWithResult(_0xdde3x15,_0xdde3x16,_0xdde3x17){_0xdde3x16= _0xdde3x16|| 200;return function(_0xdde3x18){if(_0xdde3x18){logger[_0xcb7c[24]](_0xcb7c[22],_0xdde3x17,_0xdde3x16,_0xcb7c[30]);logger[_0xcb7c[26]](_0xcb7c[25],_0xdde3x17,_0xdde3x16,_0xcb7c[30],JSON[_0xcb7c[31]](_0xdde3x18));return _0xdde3x15[_0xcb7c[29]](_0xdde3x16)[_0xcb7c[32]](_0xdde3x18)};return _0xdde3x15[_0xcb7c[29]](304)[_0xcb7c[28]]()}}function respondWithFilteredResult(_0xdde3x15,_0xdde3x1b,_0xdde3x17){return function(_0xdde3x18){if(_0xdde3x18){var _0xdde3x1c=_0xdde3x18[_0xcb7c[33]],_0xdde3x1d=_0xdde3x1b[_0xcb7c[34]],_0xdde3x1e=_0xdde3x1b[_0xcb7c[34]]+ _0xdde3x1b[_0xcb7c[35]],_0xdde3x16;if(_0xdde3x1e>= _0xdde3x1c){_0xdde3x1e= _0xdde3x1c;_0xdde3x16= 200}else {_0xdde3x16= 206};_0xdde3x15[_0xcb7c[29]](_0xdde3x16);logger[_0xcb7c[24]](_0xcb7c[22],_0xdde3x17,_0xdde3x16,_0xcb7c[36]);logger[_0xcb7c[26]](_0xcb7c[25],_0xdde3x17,_0xdde3x16,_0xcb7c[30],JSON[_0xcb7c[31]](_0xdde3x18));return _0xdde3x15[_0xcb7c[40]](_0xcb7c[37],_0xdde3x1d+ _0xcb7c[38]+ _0xdde3x1e+ _0xcb7c[39]+ _0xdde3x1c)[_0xcb7c[32]](_0xdde3x18)};return null}}function patchUpdates(_0xdde3x20){return function(_0xdde3x18){try{jsonpatch[_0xcb7c[41]](_0xdde3x18,_0xdde3x20,true)}catch(err){return BPromise[_0xcb7c[42]](err)};return _0xdde3x18[_0xcb7c[43]]()}}function saveUpdates(_0xdde3x22,_0xdde3x16,_0xdde3x17){return function(_0xdde3x18){if(_0xdde3x18){return _0xdde3x18[_0xcb7c[46]](_0xdde3x22)[_0xcb7c[45]](function(_0xdde3x23){logger[_0xcb7c[24]](_0xcb7c[22],_0xdde3x17,_0xdde3x16,_0xcb7c[44]);logger[_0xcb7c[26]](_0xcb7c[25],_0xdde3x17,_0xdde3x16,_0xcb7c[44],JSON[_0xcb7c[31]](_0xdde3x18));return _0xdde3x23})};return null}}function removeEntity(_0xdde3x15,_0xdde3x16,_0xdde3x17){return function(_0xdde3x18){if(_0xdde3x18){return _0xdde3x18[_0xcb7c[48]]()[_0xcb7c[45]](function(){logger[_0xcb7c[24]](_0xcb7c[22],_0xdde3x17,_0xdde3x16,_0xcb7c[47]);logger[_0xcb7c[26]](_0xcb7c[25],_0xdde3x17,_0xdde3x16,_0xcb7c[47],JSON[_0xcb7c[31]](_0xdde3x18));_0xdde3x15[_0xcb7c[29]](204)[_0xcb7c[28]]()})}}}function handleEntityNotFound(_0xdde3x15,_0xdde3x16,_0xdde3x17){return function(_0xdde3x18){if(!_0xdde3x18){logger[_0xcb7c[50]](_0xcb7c[22],_0xdde3x17,404,_0xcb7c[49]);_0xdde3x15[_0xcb7c[29]](404)[_0xcb7c[28]]();return null};return _0xdde3x18}}function handleError(_0xdde3x15,_0xdde3x16,_0xdde3x17){_0xdde3x16= _0xdde3x16|| 500;return function(_0xdde3x27){logger[_0xcb7c[50]](_0xcb7c[22],_0xdde3x17,_0xdde3x16,JSON[_0xcb7c[31]](_0xdde3x27));delete _0xdde3x27[_0xcb7c[51]];_0xdde3x15[_0xcb7c[29]](_0xdde3x16)[_0xcb7c[52]](_0xdde3x27)}}exports[_0xcb7c[53]]= function(_0xdde3x28,_0xdde3x15){var _0xdde3x1b={},_0xdde3x29={};_0xdde3x29[_0xcb7c[54]]= _[_0xcb7c[57]](db[_0xcb7c[56]][_0xcb7c[55]]);_0xdde3x29[_0xcb7c[58]]= _[_0xcb7c[57]](_0xdde3x28[_0xcb7c[58]]);_0xdde3x29[_0xcb7c[59]]= _[_0xcb7c[60]](_0xdde3x29[_0xcb7c[54]],_0xdde3x29[_0xcb7c[58]]);_0xdde3x1b[_0xcb7c[61]]= _[_0xcb7c[60]](_0xdde3x29[_0xcb7c[54]],qs[_0xcb7c[62]](_0xdde3x28[_0xcb7c[58]][_0xcb7c[62]]));_0xdde3x1b[_0xcb7c[61]]= (_0xdde3x1b[_0xcb7c[61]][_0xcb7c[63]])?_0xdde3x1b[_0xcb7c[61]]:_0xdde3x29[_0xcb7c[54]];if(!_0xdde3x28[_0xcb7c[58]][_0xcb7c[65]](_0xcb7c[64])){_0xdde3x1b[_0xcb7c[35]]= qs[_0xcb7c[35]](_0xdde3x28[_0xcb7c[58]][_0xcb7c[35]]);_0xdde3x1b[_0xcb7c[34]]= qs[_0xcb7c[34]](_0xdde3x28[_0xcb7c[58]][_0xcb7c[34]])};_0xdde3x1b[_0xcb7c[66]]= qs[_0xcb7c[67]](_0xdde3x28[_0xcb7c[58]][_0xcb7c[67]]);_0xdde3x1b[_0xcb7c[68]]= qs[_0xcb7c[59]](_[_0xcb7c[69]](_0xdde3x28[_0xcb7c[58]],_0xdde3x29[_0xcb7c[59]]));if(_0xdde3x28[_0xcb7c[58]][_0xcb7c[70]]){_0xdde3x1b[_0xcb7c[68]]= _[_0xcb7c[73]](_0xdde3x1b[_0xcb7c[68]],{$or:_[_0xcb7c[72]](_0xdde3x1b[_0xcb7c[61]],function(_0xdde3x2a){var _0xdde3x2b={};_0xdde3x2b[_0xdde3x2a]= {$like:_0xcb7c[71]+ _0xdde3x28[_0xcb7c[58]][_0xcb7c[70]]+ _0xcb7c[71]};return _0xdde3x2b})})};_0xdde3x1b= _[_0xcb7c[73]]({},_0xdde3x1b,_0xdde3x28[_0xcb7c[74]]);return db[_0xcb7c[56]][_0xcb7c[76]](_0xdde3x1b)[_0xcb7c[45]](respondWithFilteredResult(_0xdde3x15,_0xdde3x1b,_0xcb7c[53]))[_0xcb7c[75]](handleError(_0xdde3x15,null,_0xcb7c[53]))};exports[_0xcb7c[77]]= function(_0xdde3x28,_0xdde3x15){var _0xdde3x1b={raw:true,where:{id:_0xdde3x28[_0xcb7c[79]][_0xcb7c[78]]}},_0xdde3x29={};_0xdde3x29[_0xcb7c[54]]= _[_0xcb7c[57]](db[_0xcb7c[56]][_0xcb7c[55]]);_0xdde3x29[_0xcb7c[58]]= _[_0xcb7c[57]](_0xdde3x28[_0xcb7c[58]]);_0xdde3x29[_0xcb7c[59]]= _[_0xcb7c[60]](_0xdde3x29[_0xcb7c[54]],_0xdde3x29[_0xcb7c[58]]);_0xdde3x1b[_0xcb7c[61]]= _[_0xcb7c[60]](_0xdde3x29[_0xcb7c[54]],qs[_0xcb7c[62]](_0xdde3x28[_0xcb7c[58]][_0xcb7c[62]]));_0xdde3x1b[_0xcb7c[61]]= (_0xdde3x1b[_0xcb7c[61]][_0xcb7c[63]])?_0xdde3x1b[_0xcb7c[61]]:_0xdde3x29[_0xcb7c[54]];_0xdde3x1b= _[_0xcb7c[73]]({},_0xdde3x1b,_0xdde3x28[_0xcb7c[74]]);return db[_0xcb7c[56]][_0xcb7c[80]](_0xdde3x1b)[_0xcb7c[45]](handleEntityNotFound(_0xdde3x15,null,_0xcb7c[77]))[_0xcb7c[45]](respondWithResult(_0xdde3x15,null,_0xcb7c[77]))[_0xcb7c[75]](handleError(_0xdde3x15,null,_0xcb7c[77]))};exports[_0xcb7c[81]]= function(_0xdde3x28,_0xdde3x15){return db[_0xcb7c[56]][_0xcb7c[81]](_0xdde3x28[_0xcb7c[82]],{})[_0xcb7c[45]](respondWithResult(_0xdde3x15,201,_0xcb7c[81]))[_0xcb7c[75]](handleError(_0xdde3x15,null,_0xcb7c[81]))};exports[_0xcb7c[46]]= function(_0xdde3x28,_0xdde3x15){if(_0xdde3x28[_0xcb7c[82]][_0xcb7c[78]]){delete _0xdde3x28[_0xcb7c[82]][_0xcb7c[78]]};return db[_0xcb7c[56]][_0xcb7c[80]]({where:{id:_0xdde3x28[_0xcb7c[79]][_0xcb7c[78]]}})[_0xcb7c[45]](handleEntityNotFound(_0xdde3x15,null,_0xcb7c[46]))[_0xcb7c[45]](saveUpdates(_0xdde3x28[_0xcb7c[82]],null,_0xcb7c[46]))[_0xcb7c[45]](respondWithResult(_0xdde3x15,null,_0xcb7c[46]))[_0xcb7c[75]](handleError(_0xdde3x15,null,_0xcb7c[46]))};exports[_0xcb7c[48]]= function(_0xdde3x28,_0xdde3x15){return db[_0xcb7c[56]][_0xcb7c[80]]({where:{id:_0xdde3x28[_0xcb7c[79]][_0xcb7c[78]]}})[_0xcb7c[45]](handleEntityNotFound(_0xdde3x15,null,_0xcb7c[48]))[_0xcb7c[45]](removeEntity(_0xdde3x15,null,_0xcb7c[48]))[_0xcb7c[75]](handleError(_0xdde3x15,null,_0xcb7c[48]))}
\ No newline at end of file
+var _0x156c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x156c[0];var jsonpatch=require(_0x156c[1]);var rp=require(_0x156c[2]);var moment=require(_0x156c[3]);var BPromise=require(_0x156c[4]);var util=require(_0x156c[5]);var path=require(_0x156c[6]);var sox=require(_0x156c[7]);var ejs=require(_0x156c[8]);var fs=require(_0x156c[9]);var _=require(_0x156c[10]);var squel=require(_0x156c[11]);var crypto=require(_0x156c[12]);var jsforce=require(_0x156c[13]);var toCsv=require(_0x156c[14]);var qs=require(_0x156c[15]);var logger=require(_0x156c[17])(_0x156c[16]);var utils=require(_0x156c[18]);var config=require(_0x156c[19]);var db=require(_0x156c[21])[_0x156c[20]];function respondWithStatusCode(_0x17e7x15,_0x17e7x16,_0x17e7x17){_0x17e7x16= _0x17e7x16|| 204;return function(_0x17e7x18){if(_0x17e7x18){logger[_0x156c[24]](_0x156c[22],_0x17e7x17,_0x17e7x16,_0x156c[23]);logger[_0x156c[26]](_0x156c[25],_0x17e7x17,_0x17e7x16,_0x156c[23]);return _0x17e7x15[_0x156c[27]](_0x17e7x16)};return _0x17e7x15[_0x156c[29]](304)[_0x156c[28]]()}}function respondWithResult(_0x17e7x15,_0x17e7x16,_0x17e7x17){_0x17e7x16= _0x17e7x16|| 200;return function(_0x17e7x18){if(_0x17e7x18){logger[_0x156c[24]](_0x156c[22],_0x17e7x17,_0x17e7x16,_0x156c[30]);logger[_0x156c[26]](_0x156c[25],_0x17e7x17,_0x17e7x16,_0x156c[30],JSON[_0x156c[31]](_0x17e7x18));return _0x17e7x15[_0x156c[29]](_0x17e7x16)[_0x156c[32]](_0x17e7x18)};return _0x17e7x15[_0x156c[29]](304)[_0x156c[28]]()}}function respondWithFilteredResult(_0x17e7x15,_0x17e7x1b,_0x17e7x17){return function(_0x17e7x18){if(_0x17e7x18){var _0x17e7x1c=_0x17e7x18[_0x156c[33]],_0x17e7x1d=_0x17e7x1b[_0x156c[34]],_0x17e7x1e=_0x17e7x1b[_0x156c[34]]+ _0x17e7x1b[_0x156c[35]],_0x17e7x16;if(_0x17e7x1e>= _0x17e7x1c){_0x17e7x1e= _0x17e7x1c;_0x17e7x16= 200}else {_0x17e7x16= 206};_0x17e7x15[_0x156c[29]](_0x17e7x16);logger[_0x156c[24]](_0x156c[22],_0x17e7x17,_0x17e7x16,_0x156c[36]);logger[_0x156c[26]](_0x156c[25],_0x17e7x17,_0x17e7x16,_0x156c[30],JSON[_0x156c[31]](_0x17e7x18));return _0x17e7x15[_0x156c[40]](_0x156c[37],_0x17e7x1d+ _0x156c[38]+ _0x17e7x1e+ _0x156c[39]+ _0x17e7x1c)[_0x156c[32]](_0x17e7x18)};return null}}function patchUpdates(_0x17e7x20){return function(_0x17e7x18){try{jsonpatch[_0x156c[41]](_0x17e7x18,_0x17e7x20,true)}catch(err){return BPromise[_0x156c[42]](err)};return _0x17e7x18[_0x156c[43]]()}}function saveUpdates(_0x17e7x22,_0x17e7x16,_0x17e7x17){return function(_0x17e7x18){if(_0x17e7x18){return _0x17e7x18[_0x156c[46]](_0x17e7x22)[_0x156c[45]](function(_0x17e7x23){logger[_0x156c[24]](_0x156c[22],_0x17e7x17,_0x17e7x16,_0x156c[44]);logger[_0x156c[26]](_0x156c[25],_0x17e7x17,_0x17e7x16,_0x156c[44],JSON[_0x156c[31]](_0x17e7x18));return _0x17e7x23})};return null}}function removeEntity(_0x17e7x15,_0x17e7x16,_0x17e7x17){return function(_0x17e7x18){if(_0x17e7x18){return _0x17e7x18[_0x156c[48]]()[_0x156c[45]](function(){logger[_0x156c[24]](_0x156c[22],_0x17e7x17,_0x17e7x16,_0x156c[47]);logger[_0x156c[26]](_0x156c[25],_0x17e7x17,_0x17e7x16,_0x156c[47],JSON[_0x156c[31]](_0x17e7x18));_0x17e7x15[_0x156c[29]](204)[_0x156c[28]]()})}}}function handleEntityNotFound(_0x17e7x15,_0x17e7x16,_0x17e7x17){return function(_0x17e7x18){if(!_0x17e7x18){logger[_0x156c[50]](_0x156c[22],_0x17e7x17,404,_0x156c[49]);_0x17e7x15[_0x156c[29]](404)[_0x156c[28]]();return null};return _0x17e7x18}}function handleError(_0x17e7x15,_0x17e7x16,_0x17e7x17){_0x17e7x16= _0x17e7x16|| 500;return function(_0x17e7x27){logger[_0x156c[50]](_0x156c[22],_0x17e7x17,_0x17e7x16,JSON[_0x156c[31]](_0x17e7x27));delete _0x17e7x27[_0x156c[51]];_0x17e7x15[_0x156c[29]](_0x17e7x16)[_0x156c[52]](_0x17e7x27)}}exports[_0x156c[53]]= function(_0x17e7x28,_0x17e7x15){var _0x17e7x1b={},_0x17e7x29={};_0x17e7x29[_0x156c[54]]= _[_0x156c[57]](db[_0x156c[56]][_0x156c[55]]);_0x17e7x29[_0x156c[58]]= _[_0x156c[57]](_0x17e7x28[_0x156c[58]]);_0x17e7x29[_0x156c[59]]= _[_0x156c[60]](_0x17e7x29[_0x156c[54]],_0x17e7x29[_0x156c[58]]);_0x17e7x1b[_0x156c[61]]= _[_0x156c[60]](_0x17e7x29[_0x156c[54]],qs[_0x156c[62]](_0x17e7x28[_0x156c[58]][_0x156c[62]]));_0x17e7x1b[_0x156c[61]]= (_0x17e7x1b[_0x156c[61]][_0x156c[63]])?_0x17e7x1b[_0x156c[61]]:_0x17e7x29[_0x156c[54]];if(!_0x17e7x28[_0x156c[58]][_0x156c[65]](_0x156c[64])){_0x17e7x1b[_0x156c[35]]= qs[_0x156c[35]](_0x17e7x28[_0x156c[58]][_0x156c[35]]);_0x17e7x1b[_0x156c[34]]= qs[_0x156c[34]](_0x17e7x28[_0x156c[58]][_0x156c[34]])};_0x17e7x1b[_0x156c[66]]= qs[_0x156c[67]](_0x17e7x28[_0x156c[58]][_0x156c[67]]);_0x17e7x1b[_0x156c[68]]= qs[_0x156c[59]](_[_0x156c[69]](_0x17e7x28[_0x156c[58]],_0x17e7x29[_0x156c[59]]));if(_0x17e7x28[_0x156c[58]][_0x156c[70]]){_0x17e7x1b[_0x156c[68]]= _[_0x156c[73]](_0x17e7x1b[_0x156c[68]],{$or:_[_0x156c[72]](_0x17e7x1b[_0x156c[61]],function(_0x17e7x2a){var _0x17e7x2b={};_0x17e7x2b[_0x17e7x2a]= {$like:_0x156c[71]+ _0x17e7x28[_0x156c[58]][_0x156c[70]]+ _0x156c[71]};return _0x17e7x2b})})};_0x17e7x1b= _[_0x156c[73]]({},_0x17e7x1b,_0x17e7x28[_0x156c[74]]);return db[_0x156c[56]][_0x156c[76]](_0x17e7x1b)[_0x156c[45]](respondWithFilteredResult(_0x17e7x15,_0x17e7x1b,_0x156c[53]))[_0x156c[75]](handleError(_0x17e7x15,null,_0x156c[53]))};exports[_0x156c[77]]= function(_0x17e7x28,_0x17e7x15){var _0x17e7x1b={raw:true,where:{id:_0x17e7x28[_0x156c[79]][_0x156c[78]]}},_0x17e7x29={};_0x17e7x29[_0x156c[54]]= _[_0x156c[57]](db[_0x156c[56]][_0x156c[55]]);_0x17e7x29[_0x156c[58]]= _[_0x156c[57]](_0x17e7x28[_0x156c[58]]);_0x17e7x29[_0x156c[59]]= _[_0x156c[60]](_0x17e7x29[_0x156c[54]],_0x17e7x29[_0x156c[58]]);_0x17e7x1b[_0x156c[61]]= _[_0x156c[60]](_0x17e7x29[_0x156c[54]],qs[_0x156c[62]](_0x17e7x28[_0x156c[58]][_0x156c[62]]));_0x17e7x1b[_0x156c[61]]= (_0x17e7x1b[_0x156c[61]][_0x156c[63]])?_0x17e7x1b[_0x156c[61]]:_0x17e7x29[_0x156c[54]];_0x17e7x1b= _[_0x156c[73]]({},_0x17e7x1b,_0x17e7x28[_0x156c[74]]);return db[_0x156c[56]][_0x156c[80]](_0x17e7x1b)[_0x156c[45]](handleEntityNotFound(_0x17e7x15,null,_0x156c[77]))[_0x156c[45]](respondWithResult(_0x17e7x15,null,_0x156c[77]))[_0x156c[75]](handleError(_0x17e7x15,null,_0x156c[77]))};exports[_0x156c[81]]= function(_0x17e7x28,_0x17e7x15){return db[_0x156c[56]][_0x156c[81]](_0x17e7x28[_0x156c[82]],{})[_0x156c[45]](respondWithResult(_0x17e7x15,201,_0x156c[81]))[_0x156c[75]](handleError(_0x17e7x15,null,_0x156c[81]))};exports[_0x156c[46]]= function(_0x17e7x28,_0x17e7x15){if(_0x17e7x28[_0x156c[82]][_0x156c[78]]){delete _0x17e7x28[_0x156c[82]][_0x156c[78]]};return db[_0x156c[56]][_0x156c[80]]({where:{id:_0x17e7x28[_0x156c[79]][_0x156c[78]]}})[_0x156c[45]](handleEntityNotFound(_0x17e7x15,null,_0x156c[46]))[_0x156c[45]](saveUpdates(_0x17e7x28[_0x156c[82]],null,_0x156c[46]))[_0x156c[45]](respondWithResult(_0x17e7x15,null,_0x156c[46]))[_0x156c[75]](handleError(_0x17e7x15,null,_0x156c[46]))};exports[_0x156c[48]]= function(_0x17e7x28,_0x17e7x15){return db[_0x156c[56]][_0x156c[80]]({where:{id:_0x17e7x28[_0x156c[79]][_0x156c[78]]}})[_0x156c[45]](handleEntityNotFound(_0x17e7x15,null,_0x156c[48]))[_0x156c[45]](removeEntity(_0x17e7x15,null,_0x156c[48]))[_0x156c[75]](handleError(_0x17e7x15,null,_0x156c[48]))}
\ No newline at end of file
index b899bc0..0afdf4b 100644 (file)
@@ -1 +1 @@
-var _0xa7eb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x76\x6F\x69\x63\x65\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0xa7eb[0];var _=require(_0xa7eb[1]);var util=require(_0xa7eb[2]);var logger=require(_0xa7eb[4])(_0xa7eb[3]);var attributes=require(_0xa7eb[5]);module[_0xa7eb[6]]= function(_0xd5b9x5,_0xd5b9x6){return _0xd5b9x5[_0xa7eb[9]](_0xa7eb[7],attributes,{tableName:_0xa7eb[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x95d9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x76\x6F\x69\x63\x65\x5F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x95d9[0];var _=require(_0x95d9[1]);var util=require(_0x95d9[2]);var logger=require(_0x95d9[4])(_0x95d9[3]);var attributes=require(_0x95d9[5]);module[_0x95d9[6]]= function(_0x6e33x5,_0x6e33x6){return _0x6e33x5[_0x95d9[9]](_0x95d9[7],attributes,{tableName:_0x95d9[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 0db8e39..25eab9f 100644 (file)
@@ -1 +1 @@
-var _0x2fa4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x2fa4[0];var _=require(_0x2fa4[1]);var util=require(_0x2fa4[2]);var moment=require(_0x2fa4[3]);var BPromise=require(_0x2fa4[4]);var db=require(_0x2fa4[6])[_0x2fa4[5]];var utils=require(_0x2fa4[7]);var logger=require(_0x2fa4[9])(_0x2fa4[8]);var jayson=require(_0x2fa4[10]);var client=jayson[_0x2fa4[12]][_0x2fa4[11]]({port:9002});function respondWithRpcPromise(_0x5c57xb,_0x5c57xc,_0x5c57xd){return  new BPromise(function(_0x5c57xe,_0x5c57xf){return client[_0x2fa4[25]](_0x5c57xb,_0x5c57xd)[_0x2fa4[24]](function(_0x5c57x11){logger[_0x2fa4[17]](_0x2fa4[13],_0x5c57xc,_0x2fa4[16]);logger[_0x2fa4[20]](_0x2fa4[18],_0x5c57xc,_0x2fa4[16],JSON[_0x2fa4[19]](_0x5c57x11));if(_0x5c57x11[_0x2fa4[14]]){if(_0x5c57x11[_0x2fa4[14]][_0x2fa4[21]]=== 500){logger[_0x2fa4[14]](_0x2fa4[13],_0x5c57xc,_0x5c57x11[_0x2fa4[14]][_0x2fa4[22]]);return _0x5c57xf(_0x5c57x11[_0x2fa4[14]][_0x2fa4[22]])};logger[_0x2fa4[14]](_0x2fa4[13],_0x5c57xc,_0x5c57x11[_0x2fa4[14]][_0x2fa4[22]]);return _0x5c57xe(_0x5c57x11[_0x2fa4[14]][_0x2fa4[22]])}else {logger[_0x2fa4[17]](_0x2fa4[13],_0x5c57xc,_0x2fa4[16]);_0x5c57xe(_0x5c57x11[_0x2fa4[23]][_0x2fa4[22]])}})[_0x2fa4[15]](function(_0x5c57x10){logger[_0x2fa4[14]](_0x2fa4[13],_0x5c57xc,_0x5c57x10);_0x5c57xf(_0x5c57x10)})})}
\ No newline at end of file
+var _0x9ba9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x9ba9[0];var _=require(_0x9ba9[1]);var util=require(_0x9ba9[2]);var moment=require(_0x9ba9[3]);var BPromise=require(_0x9ba9[4]);var db=require(_0x9ba9[6])[_0x9ba9[5]];var utils=require(_0x9ba9[7]);var logger=require(_0x9ba9[9])(_0x9ba9[8]);var jayson=require(_0x9ba9[10]);var client=jayson[_0x9ba9[12]][_0x9ba9[11]]({port:9002});function respondWithRpcPromise(_0x7724xb,_0x7724xc,_0x7724xd){return  new BPromise(function(_0x7724xe,_0x7724xf){return client[_0x9ba9[25]](_0x7724xb,_0x7724xd)[_0x9ba9[24]](function(_0x7724x11){logger[_0x9ba9[17]](_0x9ba9[13],_0x7724xc,_0x9ba9[16]);logger[_0x9ba9[20]](_0x9ba9[18],_0x7724xc,_0x9ba9[16],JSON[_0x9ba9[19]](_0x7724x11));if(_0x7724x11[_0x9ba9[14]]){if(_0x7724x11[_0x9ba9[14]][_0x9ba9[21]]=== 500){logger[_0x9ba9[14]](_0x9ba9[13],_0x7724xc,_0x7724x11[_0x9ba9[14]][_0x9ba9[22]]);return _0x7724xf(_0x7724x11[_0x9ba9[14]][_0x9ba9[22]])};logger[_0x9ba9[14]](_0x9ba9[13],_0x7724xc,_0x7724x11[_0x9ba9[14]][_0x9ba9[22]]);return _0x7724xe(_0x7724x11[_0x9ba9[14]][_0x9ba9[22]])}else {logger[_0x9ba9[17]](_0x9ba9[13],_0x7724xc,_0x9ba9[16]);_0x7724xe(_0x7724x11[_0x9ba9[23]][_0x9ba9[22]])}})[_0x9ba9[15]](function(_0x7724x10){logger[_0x9ba9[14]](_0x9ba9[13],_0x7724xc,_0x7724x10);_0x7724xf(_0x7724x10)})})}
\ No newline at end of file
index c25699c..9c9c928 100644 (file)
@@ -1 +1 @@
-var _0xea81=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xea81[0];var multer=require(_0xea81[1]);var util=require(_0xea81[2]);var path=require(_0xea81[3]);var express=require(_0xea81[4]);var router=express.Router();var auth=require(_0xea81[5]);var config=require(_0xea81[6]);var controller=require(_0xea81[7]);router[_0xea81[11]](_0xea81[8],auth[_0xea81[9]](),controller[_0xea81[10]]);router[_0xea81[11]](_0xea81[12],auth[_0xea81[9]](),controller[_0xea81[13]]);router[_0xea81[15]](_0xea81[8],auth[_0xea81[9]](),controller[_0xea81[14]]);router[_0xea81[15]](_0xea81[16],auth[_0xea81[9]](),controller[_0xea81[17]]);router[_0xea81[19]](_0xea81[12],auth[_0xea81[9]](),controller[_0xea81[18]]);router[_0xea81[21]](_0xea81[12],auth[_0xea81[9]](),controller[_0xea81[20]]);module[_0xea81[22]]= router
\ No newline at end of file
+var _0xfafb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x2F\x3A\x69\x64\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xfafb[0];var multer=require(_0xfafb[1]);var util=require(_0xfafb[2]);var path=require(_0xfafb[3]);var express=require(_0xfafb[4]);var router=express.Router();var auth=require(_0xfafb[5]);var config=require(_0xfafb[6]);var controller=require(_0xfafb[7]);router[_0xfafb[11]](_0xfafb[8],auth[_0xfafb[9]](),controller[_0xfafb[10]]);router[_0xfafb[11]](_0xfafb[12],auth[_0xfafb[9]](),controller[_0xfafb[13]]);router[_0xfafb[15]](_0xfafb[8],auth[_0xfafb[9]](),controller[_0xfafb[14]]);router[_0xfafb[15]](_0xfafb[16],auth[_0xfafb[9]](),controller[_0xfafb[17]]);router[_0xfafb[19]](_0xfafb[12],auth[_0xfafb[9]](),controller[_0xfafb[18]]);router[_0xfafb[21]](_0xfafb[12],auth[_0xfafb[9]](),controller[_0xfafb[20]]);module[_0xfafb[22]]= router
\ No newline at end of file
index e543d98..3e6ff52 100644 (file)
@@ -1 +1 @@
-var _0x315f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x63\x6F\x6D\x70\x6F\x73\x69\x74\x65\x49\x6E\x64\x65\x78","\x31","\x2D\x2D","\x4E\x6F\x4F\x70","","\x69\x6E\x62\x6F\x75\x6E\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x69\x6E\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x73\x79\x73\x74\x65\x6D","\x61\x6E\x79","\x2A\x2C\x2A\x2C\x2A\x2C\x2A","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x77\x61\x76"];_0x315f[0];var Sequelize=require(_0x315f[1]);module[_0x315f[2]]= {context:{type:Sequelize[_0x315f[3]],allowNull:false,unique:_0x315f[4],validate:{notEmpty:true,is:/[A-Za-z0-9._\+*!\-\[\]]+$/i}},exten:{type:Sequelize[_0x315f[3]],allowNull:false,unique:_0x315f[4]},priority:{type:Sequelize[_0x315f[3]],allowNull:false,defaultValue:_0x315f[5],unique:_0x315f[4]},tag:{type:Sequelize[_0x315f[3]],allowNull:false,defaultValue:_0x315f[6]},app:{type:Sequelize[_0x315f[3]],allowNull:false,defaultValue:_0x315f[7]},appdata:{type:Sequelize.STRING(4096),allowNull:true,defaultValue:_0x315f[8]},type:{type:Sequelize.ENUM(_0x315f[9],_0x315f[10],_0x315f[11],_0x315f[12],_0x315f[13],_0x315f[14],_0x315f[15]),allowNull:false},description:{type:Sequelize[_0x315f[3]]},interval:{type:Sequelize[_0x315f[3]],allowNull:false,defaultValue:_0x315f[16]},IntervalId:{type:Sequelize[_0x315f[17]]},isApp:{type:Sequelize[_0x315f[18]],allowNull:false,defaultValue:false},appType:{type:Sequelize[_0x315f[3]],defaultValue:null},callerID:{type:Sequelize[_0x315f[3]],allowNull:true},record:{type:Sequelize[_0x315f[18]],defaultValue:false},cutdigits:{type:Sequelize[_0x315f[17]]},recordingFormat:{type:Sequelize[_0x315f[3]],defaultValue:_0x315f[19]},answer:{type:Sequelize[_0x315f[18]],defaultValue:true}}
\ No newline at end of file
+var _0x3d19=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x63\x6F\x6D\x70\x6F\x73\x69\x74\x65\x49\x6E\x64\x65\x78","\x31","\x2D\x2D","\x4E\x6F\x4F\x70","","\x69\x6E\x62\x6F\x75\x6E\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x69\x6E\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x73\x79\x73\x74\x65\x6D","\x61\x6E\x79","\x2A\x2C\x2A\x2C\x2A\x2C\x2A","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E","\x77\x61\x76"];_0x3d19[0];var Sequelize=require(_0x3d19[1]);module[_0x3d19[2]]= {context:{type:Sequelize[_0x3d19[3]],allowNull:false,unique:_0x3d19[4],validate:{notEmpty:true,is:/[A-Za-z0-9._\+*!\-\[\]]+$/i}},exten:{type:Sequelize[_0x3d19[3]],allowNull:false,unique:_0x3d19[4]},priority:{type:Sequelize[_0x3d19[3]],allowNull:false,defaultValue:_0x3d19[5],unique:_0x3d19[4]},tag:{type:Sequelize[_0x3d19[3]],allowNull:false,defaultValue:_0x3d19[6]},app:{type:Sequelize[_0x3d19[3]],allowNull:false,defaultValue:_0x3d19[7]},appdata:{type:Sequelize.STRING(4096),allowNull:true,defaultValue:_0x3d19[8]},type:{type:Sequelize.ENUM(_0x3d19[9],_0x3d19[10],_0x3d19[11],_0x3d19[12],_0x3d19[13],_0x3d19[14],_0x3d19[15]),allowNull:false},description:{type:Sequelize[_0x3d19[3]]},interval:{type:Sequelize[_0x3d19[3]],allowNull:false,defaultValue:_0x3d19[16]},IntervalId:{type:Sequelize[_0x3d19[17]]},isApp:{type:Sequelize[_0x3d19[18]],allowNull:false,defaultValue:false},appType:{type:Sequelize[_0x3d19[3]],defaultValue:null},callerID:{type:Sequelize[_0x3d19[3]],allowNull:true},record:{type:Sequelize[_0x3d19[18]],defaultValue:false},cutdigits:{type:Sequelize[_0x3d19[17]]},recordingFormat:{type:Sequelize[_0x3d19[3]],defaultValue:_0x3d19[19]},answer:{type:Sequelize[_0x3d19[18]],defaultValue:true}}
\ No newline at end of file
index 5839e7f..e12e469 100644 (file)
@@ -1 +1 @@
-var _0xbada=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x74\x79\x70\x65","\x62\x6F\x64\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x65\x78\x74\x65\x6E","\x5F","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x63\x6F\x6E\x63\x61\x74","\x63\x6F\x6E\x74\x65\x78\x74","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x63\x61\x73\x74\x28\x70\x72\x69\x6F\x72\x69\x74\x79\x20\x61\x73\x20\x75\x6E\x73\x69\x67\x6E\x65\x64\x29","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x49\x64","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xbada[0];var jsonpatch=require(_0xbada[1]);var rp=require(_0xbada[2]);var moment=require(_0xbada[3]);var BPromise=require(_0xbada[4]);var util=require(_0xbada[5]);var path=require(_0xbada[6]);var sox=require(_0xbada[7]);var ejs=require(_0xbada[8]);var fs=require(_0xbada[9]);var _=require(_0xbada[10]);var squel=require(_0xbada[11]);var crypto=require(_0xbada[12]);var jsforce=require(_0xbada[13]);var toCsv=require(_0xbada[14]);var qs=require(_0xbada[15]);var logger=require(_0xbada[17])(_0xbada[16]);var utils=require(_0xbada[18]);var config=require(_0xbada[19]);var db=require(_0xbada[21])[_0xbada[20]];function respondWithStatusCode(_0xa017x15,_0xa017x16,_0xa017x17){_0xa017x16= _0xa017x16|| 204;return function(_0xa017x18){if(_0xa017x18){logger[_0xbada[24]](_0xbada[22],_0xa017x17,_0xa017x16,_0xbada[23]);logger[_0xbada[26]](_0xbada[25],_0xa017x17,_0xa017x16,_0xbada[23]);return _0xa017x15[_0xbada[27]](_0xa017x16)};return _0xa017x15[_0xbada[29]](304)[_0xbada[28]]()}}function respondWithResult(_0xa017x15,_0xa017x16,_0xa017x17){_0xa017x16= _0xa017x16|| 200;return function(_0xa017x18){if(_0xa017x18){logger[_0xbada[24]](_0xbada[22],_0xa017x17,_0xa017x16,_0xbada[30]);logger[_0xbada[26]](_0xbada[25],_0xa017x17,_0xa017x16,_0xbada[30],JSON[_0xbada[31]](_0xa017x18));return _0xa017x15[_0xbada[29]](_0xa017x16)[_0xbada[32]](_0xa017x18)};return _0xa017x15[_0xbada[29]](304)[_0xbada[28]]()}}function respondWithFilteredResult(_0xa017x15,_0xa017x1b,_0xa017x17){return function(_0xa017x18){if(_0xa017x18){var _0xa017x1c=_0xa017x18[_0xbada[33]],_0xa017x1d=_0xa017x1b[_0xbada[34]],_0xa017x1e=_0xa017x1b[_0xbada[34]]+ _0xa017x1b[_0xbada[35]],_0xa017x16;if(_0xa017x1e>= _0xa017x1c){_0xa017x1e= _0xa017x1c;_0xa017x16= 200}else {_0xa017x16= 206};_0xa017x15[_0xbada[29]](_0xa017x16);logger[_0xbada[24]](_0xbada[22],_0xa017x17,_0xa017x16,_0xbada[36]);logger[_0xbada[26]](_0xbada[25],_0xa017x17,_0xa017x16,_0xbada[30],JSON[_0xbada[31]](_0xa017x18));return _0xa017x15[_0xbada[40]](_0xbada[37],_0xa017x1d+ _0xbada[38]+ _0xa017x1e+ _0xbada[39]+ _0xa017x1c)[_0xbada[32]](_0xa017x18)};return null}}function patchUpdates(_0xa017x20){return function(_0xa017x18){try{jsonpatch[_0xbada[41]](_0xa017x18,_0xa017x20,true)}catch(err){return BPromise[_0xbada[42]](err)};return _0xa017x18[_0xbada[43]]()}}function saveUpdates(_0xa017x22,_0xa017x16,_0xa017x17){return function(_0xa017x18){if(_0xa017x18){return _0xa017x18[_0xbada[46]](_0xa017x22)[_0xbada[45]](function(_0xa017x23){logger[_0xbada[24]](_0xbada[22],_0xa017x17,_0xa017x16,_0xbada[44]);logger[_0xbada[26]](_0xbada[25],_0xa017x17,_0xa017x16,_0xbada[44],JSON[_0xbada[31]](_0xa017x18));return _0xa017x23})};return null}}function removeEntity(_0xa017x15,_0xa017x16,_0xa017x17){return function(_0xa017x18){if(_0xa017x18){return _0xa017x18[_0xbada[48]]()[_0xbada[45]](function(){logger[_0xbada[24]](_0xbada[22],_0xa017x17,_0xa017x16,_0xbada[47]);logger[_0xbada[26]](_0xbada[25],_0xa017x17,_0xa017x16,_0xbada[47],JSON[_0xbada[31]](_0xa017x18));_0xa017x15[_0xbada[29]](204)[_0xbada[28]]()})}}}function handleEntityNotFound(_0xa017x15,_0xa017x16,_0xa017x17){return function(_0xa017x18){if(!_0xa017x18){logger[_0xbada[50]](_0xbada[22],_0xa017x17,404,_0xbada[49]);_0xa017x15[_0xbada[29]](404)[_0xbada[28]]();return null};return _0xa017x18}}function handleError(_0xa017x15,_0xa017x16,_0xa017x17){_0xa017x16= _0xa017x16|| 500;return function(_0xa017x27){logger[_0xbada[50]](_0xbada[22],_0xa017x17,_0xa017x16,JSON[_0xbada[31]](_0xa017x27));delete _0xa017x27[_0xbada[51]];_0xa017x15[_0xbada[29]](_0xa017x16)[_0xbada[52]](_0xa017x27)}}exports[_0xbada[53]]= function(_0xa017x28,_0xa017x15){var _0xa017x1b={},_0xa017x29={};_0xa017x29[_0xbada[54]]= _[_0xbada[57]](db[_0xbada[56]][_0xbada[55]]);_0xa017x29[_0xbada[58]]= _[_0xbada[57]](_0xa017x28[_0xbada[58]]);_0xa017x29[_0xbada[59]]= _[_0xbada[60]](_0xa017x29[_0xbada[54]],_0xa017x29[_0xbada[58]]);_0xa017x1b[_0xbada[61]]= _[_0xbada[60]](_0xa017x29[_0xbada[54]],qs[_0xbada[62]](_0xa017x28[_0xbada[58]][_0xbada[62]]));_0xa017x1b[_0xbada[61]]= (_0xa017x1b[_0xbada[61]][_0xbada[63]])?_0xa017x1b[_0xbada[61]]:_0xa017x29[_0xbada[54]];if(!_0xa017x28[_0xbada[58]][_0xbada[65]](_0xbada[64])){_0xa017x1b[_0xbada[35]]= qs[_0xbada[35]](_0xa017x28[_0xbada[58]][_0xbada[35]]);_0xa017x1b[_0xbada[34]]= qs[_0xbada[34]](_0xa017x28[_0xbada[58]][_0xbada[34]])};_0xa017x1b[_0xbada[66]]= qs[_0xbada[67]](_0xa017x28[_0xbada[58]][_0xbada[67]]);_0xa017x1b[_0xbada[68]]= qs[_0xbada[59]](_[_0xbada[69]](_0xa017x28[_0xbada[58]],_0xa017x29[_0xbada[59]]));if(_0xa017x28[_0xbada[58]][_0xbada[70]]){_0xa017x1b[_0xbada[68]]= _[_0xbada[73]](_0xa017x1b[_0xbada[68]],{$or:_[_0xbada[72]](_0xa017x1b[_0xbada[61]],function(_0xa017x2a){var _0xa017x2b={};_0xa017x2b[_0xa017x2a]= {$like:_0xbada[71]+ _0xa017x28[_0xbada[58]][_0xbada[70]]+ _0xbada[71]};return _0xa017x2b})})};_0xa017x1b= _[_0xbada[73]]({},_0xa017x1b,_0xa017x28[_0xbada[74]]);return db[_0xbada[56]][_0xbada[76]](_0xa017x1b)[_0xbada[45]](respondWithFilteredResult(_0xa017x15,_0xa017x1b,_0xbada[53]))[_0xbada[75]](handleError(_0xa017x15,null,_0xbada[53]))};exports[_0xbada[77]]= function(_0xa017x28,_0xa017x15){var _0xa017x1b={raw:false,where:{id:_0xa017x28[_0xbada[79]][_0xbada[78]]}},_0xa017x29={};_0xa017x29[_0xbada[54]]= _[_0xbada[57]](db[_0xbada[56]][_0xbada[55]]);_0xa017x29[_0xbada[58]]= _[_0xbada[57]](_0xa017x28[_0xbada[58]]);_0xa017x29[_0xbada[59]]= _[_0xbada[60]](_0xa017x29[_0xbada[54]],_0xa017x29[_0xbada[58]]);_0xa017x1b[_0xbada[61]]= _[_0xbada[60]](_0xa017x29[_0xbada[54]],qs[_0xbada[62]](_0xa017x28[_0xbada[58]][_0xbada[62]]));_0xa017x1b[_0xbada[61]]= (_0xa017x1b[_0xbada[61]][_0xbada[63]])?_0xa017x1b[_0xbada[61]]:_0xa017x29[_0xbada[54]];_0xa017x1b= _[_0xbada[73]]({},_0xa017x1b,_0xa017x28[_0xbada[74]]);return db[_0xbada[56]][_0xbada[80]](_0xa017x1b)[_0xbada[45]](handleEntityNotFound(_0xa017x15,null,_0xbada[77]))[_0xbada[45]](respondWithResult(_0xa017x15,null,_0xbada[77]))[_0xbada[75]](handleError(_0xa017x15,null,_0xbada[77]))};exports[_0xbada[48]]= function(_0xa017x28,_0xa017x15){return db[_0xbada[56]][_0xbada[80]]({where:{id:_0xa017x28[_0xbada[79]][_0xbada[78]]}})[_0xbada[45]](handleEntityNotFound(_0xa017x15,null,_0xbada[48]))[_0xbada[45]](removeEntity(_0xa017x15,null,_0xbada[48]))[_0xbada[75]](handleError(_0xa017x15,null,_0xbada[48]))};exports[_0xbada[81]]= function(_0xa017x28,_0xa017x15){if(_0xa017x28[_0xbada[83]][_0xbada[82]]=== _0xbada[84]&&  !_[_0xbada[87]](_0xa017x28[_0xbada[83]][_0xbada[85]],_0xbada[86])){_0xa017x28[_0xbada[83]][_0xbada[85]]= _0xbada[86][_0xbada[88]](_0xa017x28[_0xbada[83]][_0xbada[85]])};return db[_0xbada[56]][_0xbada[81]](_0xa017x28[_0xbada[83]],{raw:false})[_0xbada[45]](respondWithResult(_0xa017x15,201,_0xbada[81]))[_0xbada[75]](handleError(_0xa017x15,null,_0xbada[81]))};exports[_0xbada[46]]= function(_0xa017x28,_0xa017x15){if(_0xa017x28[_0xbada[83]][_0xbada[78]]){delete _0xa017x28[_0xbada[83]][_0xbada[78]]};return db[_0xbada[56]][_0xbada[80]]({where:{id:_0xa017x28[_0xbada[79]][_0xbada[78]]}})[_0xbada[45]](handleEntityNotFound(_0xa017x15,null,_0xbada[46]))[_0xbada[45]](function(_0xa017x18){if(_0xa017x18){return db[_0xbada[56]][_0xbada[46]](_[_0xbada[69]](_0xa017x28[_0xbada[83]],[_0xbada[85],_0xbada[89],_0xbada[90]]),{where:{context:_0xa017x18[_0xbada[89]],exten:_0xa017x18[_0xbada[85]]}})[_0xbada[45]](function(_0xa017x23){logger[_0xbada[24]](_0xbada[22],_0xbada[46],204,_0xbada[44]);logger[_0xbada[26]](_0xbada[25],_0xbada[46],204,_0xbada[44],JSON[_0xbada[31]](_0xa017x18));return _0xa017x23})};return null})[_0xbada[45]](respondWithStatusCode(_0xa017x15,null,_0xbada[46]))[_0xbada[75]](handleError(_0xa017x15,null,_0xbada[46]))};exports[_0xbada[91]]= function(_0xa017x28,_0xa017x15,_0xa017x2c){return db[_0xbada[56]][_0xbada[97]]({where:{id:_0xa017x28[_0xbada[79]][_0xbada[78]]}})[_0xbada[45]](handleEntityNotFound(_0xa017x15,null,_0xbada[91]))[_0xbada[45]](function(_0xa017x18){if(_0xa017x18){return db[_0xbada[96]][_0xbada[95]](function(_0xa017x2d){return db[_0xbada[56]][_0xbada[48]]({where:{VoiceExtensionId:_0xa017x28[_0xbada[79]][_0xbada[78]]},transaction:_0xa017x2d})[_0xbada[45]](function(_0xa017x2e){var _0xa017x2f=_[_0xbada[72]](_0xa017x28[_0xbada[83]],function(_0xa017x30){_0xa017x30[_0xbada[93]]= _0xa017x28[_0xbada[79]][_0xbada[78]];return _0xa017x30});return db[_0xbada[56]][_0xbada[94]](_0xa017x2f,{transaction:_0xa017x2d})})})[_0xbada[45]](function(){return db[_0xbada[56]][_0xbada[76]]({where:{isApp:true,VoiceExtensionId:_0xa017x28[_0xbada[79]][_0xbada[78]]},order:_0xbada[92]})})}})[_0xbada[45]](respondWithResult(_0xa017x15,null,_0xbada[91]))[_0xbada[75]](handleError(_0xa017x15,null,_0xbada[91]))}
\ No newline at end of file
+var _0x714b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x74\x79\x70\x65","\x62\x6F\x64\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x65\x78\x74\x65\x6E","\x5F","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x63\x6F\x6E\x63\x61\x74","\x63\x6F\x6E\x74\x65\x78\x74","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x61\x64\x64\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x63\x61\x73\x74\x28\x70\x72\x69\x6F\x72\x69\x74\x79\x20\x61\x73\x20\x75\x6E\x73\x69\x67\x6E\x65\x64\x29","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x49\x64","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x6E\x64\x4F\x6E\x65"];_0x714b[0];var jsonpatch=require(_0x714b[1]);var rp=require(_0x714b[2]);var moment=require(_0x714b[3]);var BPromise=require(_0x714b[4]);var util=require(_0x714b[5]);var path=require(_0x714b[6]);var sox=require(_0x714b[7]);var ejs=require(_0x714b[8]);var fs=require(_0x714b[9]);var _=require(_0x714b[10]);var squel=require(_0x714b[11]);var crypto=require(_0x714b[12]);var jsforce=require(_0x714b[13]);var toCsv=require(_0x714b[14]);var qs=require(_0x714b[15]);var logger=require(_0x714b[17])(_0x714b[16]);var utils=require(_0x714b[18]);var config=require(_0x714b[19]);var db=require(_0x714b[21])[_0x714b[20]];function respondWithStatusCode(_0x784ax15,_0x784ax16,_0x784ax17){_0x784ax16= _0x784ax16|| 204;return function(_0x784ax18){if(_0x784ax18){logger[_0x714b[24]](_0x714b[22],_0x784ax17,_0x784ax16,_0x714b[23]);logger[_0x714b[26]](_0x714b[25],_0x784ax17,_0x784ax16,_0x714b[23]);return _0x784ax15[_0x714b[27]](_0x784ax16)};return _0x784ax15[_0x714b[29]](304)[_0x714b[28]]()}}function respondWithResult(_0x784ax15,_0x784ax16,_0x784ax17){_0x784ax16= _0x784ax16|| 200;return function(_0x784ax18){if(_0x784ax18){logger[_0x714b[24]](_0x714b[22],_0x784ax17,_0x784ax16,_0x714b[30]);logger[_0x714b[26]](_0x714b[25],_0x784ax17,_0x784ax16,_0x714b[30],JSON[_0x714b[31]](_0x784ax18));return _0x784ax15[_0x714b[29]](_0x784ax16)[_0x714b[32]](_0x784ax18)};return _0x784ax15[_0x714b[29]](304)[_0x714b[28]]()}}function respondWithFilteredResult(_0x784ax15,_0x784ax1b,_0x784ax17){return function(_0x784ax18){if(_0x784ax18){var _0x784ax1c=_0x784ax18[_0x714b[33]],_0x784ax1d=_0x784ax1b[_0x714b[34]],_0x784ax1e=_0x784ax1b[_0x714b[34]]+ _0x784ax1b[_0x714b[35]],_0x784ax16;if(_0x784ax1e>= _0x784ax1c){_0x784ax1e= _0x784ax1c;_0x784ax16= 200}else {_0x784ax16= 206};_0x784ax15[_0x714b[29]](_0x784ax16);logger[_0x714b[24]](_0x714b[22],_0x784ax17,_0x784ax16,_0x714b[36]);logger[_0x714b[26]](_0x714b[25],_0x784ax17,_0x784ax16,_0x714b[30],JSON[_0x714b[31]](_0x784ax18));return _0x784ax15[_0x714b[40]](_0x714b[37],_0x784ax1d+ _0x714b[38]+ _0x784ax1e+ _0x714b[39]+ _0x784ax1c)[_0x714b[32]](_0x784ax18)};return null}}function patchUpdates(_0x784ax20){return function(_0x784ax18){try{jsonpatch[_0x714b[41]](_0x784ax18,_0x784ax20,true)}catch(err){return BPromise[_0x714b[42]](err)};return _0x784ax18[_0x714b[43]]()}}function saveUpdates(_0x784ax22,_0x784ax16,_0x784ax17){return function(_0x784ax18){if(_0x784ax18){return _0x784ax18[_0x714b[46]](_0x784ax22)[_0x714b[45]](function(_0x784ax23){logger[_0x714b[24]](_0x714b[22],_0x784ax17,_0x784ax16,_0x714b[44]);logger[_0x714b[26]](_0x714b[25],_0x784ax17,_0x784ax16,_0x714b[44],JSON[_0x714b[31]](_0x784ax18));return _0x784ax23})};return null}}function removeEntity(_0x784ax15,_0x784ax16,_0x784ax17){return function(_0x784ax18){if(_0x784ax18){return _0x784ax18[_0x714b[48]]()[_0x714b[45]](function(){logger[_0x714b[24]](_0x714b[22],_0x784ax17,_0x784ax16,_0x714b[47]);logger[_0x714b[26]](_0x714b[25],_0x784ax17,_0x784ax16,_0x714b[47],JSON[_0x714b[31]](_0x784ax18));_0x784ax15[_0x714b[29]](204)[_0x714b[28]]()})}}}function handleEntityNotFound(_0x784ax15,_0x784ax16,_0x784ax17){return function(_0x784ax18){if(!_0x784ax18){logger[_0x714b[50]](_0x714b[22],_0x784ax17,404,_0x714b[49]);_0x784ax15[_0x714b[29]](404)[_0x714b[28]]();return null};return _0x784ax18}}function handleError(_0x784ax15,_0x784ax16,_0x784ax17){_0x784ax16= _0x784ax16|| 500;return function(_0x784ax27){logger[_0x714b[50]](_0x714b[22],_0x784ax17,_0x784ax16,JSON[_0x714b[31]](_0x784ax27));delete _0x784ax27[_0x714b[51]];_0x784ax15[_0x714b[29]](_0x784ax16)[_0x714b[52]](_0x784ax27)}}exports[_0x714b[53]]= function(_0x784ax28,_0x784ax15){var _0x784ax1b={},_0x784ax29={};_0x784ax29[_0x714b[54]]= _[_0x714b[57]](db[_0x714b[56]][_0x714b[55]]);_0x784ax29[_0x714b[58]]= _[_0x714b[57]](_0x784ax28[_0x714b[58]]);_0x784ax29[_0x714b[59]]= _[_0x714b[60]](_0x784ax29[_0x714b[54]],_0x784ax29[_0x714b[58]]);_0x784ax1b[_0x714b[61]]= _[_0x714b[60]](_0x784ax29[_0x714b[54]],qs[_0x714b[62]](_0x784ax28[_0x714b[58]][_0x714b[62]]));_0x784ax1b[_0x714b[61]]= (_0x784ax1b[_0x714b[61]][_0x714b[63]])?_0x784ax1b[_0x714b[61]]:_0x784ax29[_0x714b[54]];if(!_0x784ax28[_0x714b[58]][_0x714b[65]](_0x714b[64])){_0x784ax1b[_0x714b[35]]= qs[_0x714b[35]](_0x784ax28[_0x714b[58]][_0x714b[35]]);_0x784ax1b[_0x714b[34]]= qs[_0x714b[34]](_0x784ax28[_0x714b[58]][_0x714b[34]])};_0x784ax1b[_0x714b[66]]= qs[_0x714b[67]](_0x784ax28[_0x714b[58]][_0x714b[67]]);_0x784ax1b[_0x714b[68]]= qs[_0x714b[59]](_[_0x714b[69]](_0x784ax28[_0x714b[58]],_0x784ax29[_0x714b[59]]));if(_0x784ax28[_0x714b[58]][_0x714b[70]]){_0x784ax1b[_0x714b[68]]= _[_0x714b[73]](_0x784ax1b[_0x714b[68]],{$or:_[_0x714b[72]](_0x784ax1b[_0x714b[61]],function(_0x784ax2a){var _0x784ax2b={};_0x784ax2b[_0x784ax2a]= {$like:_0x714b[71]+ _0x784ax28[_0x714b[58]][_0x714b[70]]+ _0x714b[71]};return _0x784ax2b})})};_0x784ax1b= _[_0x714b[73]]({},_0x784ax1b,_0x784ax28[_0x714b[74]]);return db[_0x714b[56]][_0x714b[76]](_0x784ax1b)[_0x714b[45]](respondWithFilteredResult(_0x784ax15,_0x784ax1b,_0x714b[53]))[_0x714b[75]](handleError(_0x784ax15,null,_0x714b[53]))};exports[_0x714b[77]]= function(_0x784ax28,_0x784ax15){var _0x784ax1b={raw:false,where:{id:_0x784ax28[_0x714b[79]][_0x714b[78]]}},_0x784ax29={};_0x784ax29[_0x714b[54]]= _[_0x714b[57]](db[_0x714b[56]][_0x714b[55]]);_0x784ax29[_0x714b[58]]= _[_0x714b[57]](_0x784ax28[_0x714b[58]]);_0x784ax29[_0x714b[59]]= _[_0x714b[60]](_0x784ax29[_0x714b[54]],_0x784ax29[_0x714b[58]]);_0x784ax1b[_0x714b[61]]= _[_0x714b[60]](_0x784ax29[_0x714b[54]],qs[_0x714b[62]](_0x784ax28[_0x714b[58]][_0x714b[62]]));_0x784ax1b[_0x714b[61]]= (_0x784ax1b[_0x714b[61]][_0x714b[63]])?_0x784ax1b[_0x714b[61]]:_0x784ax29[_0x714b[54]];_0x784ax1b= _[_0x714b[73]]({},_0x784ax1b,_0x784ax28[_0x714b[74]]);return db[_0x714b[56]][_0x714b[80]](_0x784ax1b)[_0x714b[45]](handleEntityNotFound(_0x784ax15,null,_0x714b[77]))[_0x714b[45]](respondWithResult(_0x784ax15,null,_0x714b[77]))[_0x714b[75]](handleError(_0x784ax15,null,_0x714b[77]))};exports[_0x714b[48]]= function(_0x784ax28,_0x784ax15){return db[_0x714b[56]][_0x714b[80]]({where:{id:_0x784ax28[_0x714b[79]][_0x714b[78]]}})[_0x714b[45]](handleEntityNotFound(_0x784ax15,null,_0x714b[48]))[_0x714b[45]](removeEntity(_0x784ax15,null,_0x714b[48]))[_0x714b[75]](handleError(_0x784ax15,null,_0x714b[48]))};exports[_0x714b[81]]= function(_0x784ax28,_0x784ax15){if(_0x784ax28[_0x714b[83]][_0x714b[82]]=== _0x714b[84]&&  !_[_0x714b[87]](_0x784ax28[_0x714b[83]][_0x714b[85]],_0x714b[86])){_0x784ax28[_0x714b[83]][_0x714b[85]]= _0x714b[86][_0x714b[88]](_0x784ax28[_0x714b[83]][_0x714b[85]])};return db[_0x714b[56]][_0x714b[81]](_0x784ax28[_0x714b[83]],{raw:false})[_0x714b[45]](respondWithResult(_0x784ax15,201,_0x714b[81]))[_0x714b[75]](handleError(_0x784ax15,null,_0x714b[81]))};exports[_0x714b[46]]= function(_0x784ax28,_0x784ax15){if(_0x784ax28[_0x714b[83]][_0x714b[78]]){delete _0x784ax28[_0x714b[83]][_0x714b[78]]};return db[_0x714b[56]][_0x714b[80]]({where:{id:_0x784ax28[_0x714b[79]][_0x714b[78]]}})[_0x714b[45]](handleEntityNotFound(_0x784ax15,null,_0x714b[46]))[_0x714b[45]](function(_0x784ax18){if(_0x784ax18){return db[_0x714b[56]][_0x714b[46]](_[_0x714b[69]](_0x784ax28[_0x714b[83]],[_0x714b[85],_0x714b[89],_0x714b[90]]),{where:{context:_0x784ax18[_0x714b[89]],exten:_0x784ax18[_0x714b[85]]}})[_0x714b[45]](function(_0x784ax23){logger[_0x714b[24]](_0x714b[22],_0x714b[46],204,_0x714b[44]);logger[_0x714b[26]](_0x714b[25],_0x714b[46],204,_0x714b[44],JSON[_0x714b[31]](_0x784ax18));return _0x784ax23})};return null})[_0x714b[45]](respondWithStatusCode(_0x784ax15,null,_0x714b[46]))[_0x714b[75]](handleError(_0x784ax15,null,_0x714b[46]))};exports[_0x714b[91]]= function(_0x784ax28,_0x784ax15,_0x784ax2c){return db[_0x714b[56]][_0x714b[97]]({where:{id:_0x784ax28[_0x714b[79]][_0x714b[78]]}})[_0x714b[45]](handleEntityNotFound(_0x784ax15,null,_0x714b[91]))[_0x714b[45]](function(_0x784ax18){if(_0x784ax18){return db[_0x714b[96]][_0x714b[95]](function(_0x784ax2d){return db[_0x714b[56]][_0x714b[48]]({where:{VoiceExtensionId:_0x784ax28[_0x714b[79]][_0x714b[78]]},transaction:_0x784ax2d})[_0x714b[45]](function(_0x784ax2e){var _0x784ax2f=_[_0x714b[72]](_0x784ax28[_0x714b[83]],function(_0x784ax30){_0x784ax30[_0x714b[93]]= _0x784ax28[_0x714b[79]][_0x714b[78]];return _0x784ax30});return db[_0x714b[56]][_0x714b[94]](_0x784ax2f,{transaction:_0x784ax2d})})})[_0x714b[45]](function(){return db[_0x714b[56]][_0x714b[76]]({where:{isApp:true,VoiceExtensionId:_0x784ax28[_0x714b[79]][_0x714b[78]]},order:_0x714b[92]})})}})[_0x714b[45]](respondWithResult(_0x784ax15,null,_0x714b[91]))[_0x714b[75]](handleError(_0x784ax15,null,_0x714b[91]))}
\ No newline at end of file
index 4896aac..9d89e42 100644 (file)
@@ -1 +1 @@
-var _0x3fcf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x76\x6F\x69\x63\x65\x5F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x3fcf[0];var _=require(_0x3fcf[1]);var util=require(_0x3fcf[2]);var logger=require(_0x3fcf[4])(_0x3fcf[3]);var attributes=require(_0x3fcf[5]);module[_0x3fcf[6]]= function(_0x979cx5,_0x979cx6){return _0x979cx5[_0x3fcf[9]](_0x3fcf[7],attributes,{tableName:_0x3fcf[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x559a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x76\x6F\x69\x63\x65\x5F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x64\x65\x66\x69\x6E\x65"];_0x559a[0];var _=require(_0x559a[1]);var util=require(_0x559a[2]);var logger=require(_0x559a[4])(_0x559a[3]);var attributes=require(_0x559a[5]);module[_0x559a[6]]= function(_0x7c50x5,_0x7c50x6){return _0x7c50x5[_0x559a[9]](_0x559a[7],attributes,{tableName:_0x559a[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index b12cfaf..5b94b3f 100644 (file)
@@ -1 +1 @@
-var _0x59b8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x59b8[0];var _=require(_0x59b8[1]);var util=require(_0x59b8[2]);var moment=require(_0x59b8[3]);var BPromise=require(_0x59b8[4]);var db=require(_0x59b8[6])[_0x59b8[5]];var utils=require(_0x59b8[7]);var logger=require(_0x59b8[9])(_0x59b8[8]);var jayson=require(_0x59b8[10]);var client=jayson[_0x59b8[12]][_0x59b8[11]]({port:9002});function respondWithRpcPromise(_0x4d2dxb,_0x4d2dxc,_0x4d2dxd){return  new BPromise(function(_0x4d2dxe,_0x4d2dxf){return client[_0x59b8[25]](_0x4d2dxb,_0x4d2dxd)[_0x59b8[24]](function(_0x4d2dx11){logger[_0x59b8[17]](_0x59b8[13],_0x4d2dxc,_0x59b8[16]);logger[_0x59b8[20]](_0x59b8[18],_0x4d2dxc,_0x59b8[16],JSON[_0x59b8[19]](_0x4d2dx11));if(_0x4d2dx11[_0x59b8[14]]){if(_0x4d2dx11[_0x59b8[14]][_0x59b8[21]]=== 500){logger[_0x59b8[14]](_0x59b8[13],_0x4d2dxc,_0x4d2dx11[_0x59b8[14]][_0x59b8[22]]);return _0x4d2dxf(_0x4d2dx11[_0x59b8[14]][_0x59b8[22]])};logger[_0x59b8[14]](_0x59b8[13],_0x4d2dxc,_0x4d2dx11[_0x59b8[14]][_0x59b8[22]]);return _0x4d2dxe(_0x4d2dx11[_0x59b8[14]][_0x59b8[22]])}else {logger[_0x59b8[17]](_0x59b8[13],_0x4d2dxc,_0x59b8[16]);_0x4d2dxe(_0x4d2dx11[_0x59b8[23]][_0x59b8[22]])}})[_0x59b8[15]](function(_0x4d2dx10){logger[_0x59b8[14]](_0x59b8[13],_0x4d2dxc,_0x4d2dx10);_0x4d2dxf(_0x4d2dx10)})})}
\ No newline at end of file
+var _0x1f16=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x1f16[0];var _=require(_0x1f16[1]);var util=require(_0x1f16[2]);var moment=require(_0x1f16[3]);var BPromise=require(_0x1f16[4]);var db=require(_0x1f16[6])[_0x1f16[5]];var utils=require(_0x1f16[7]);var logger=require(_0x1f16[9])(_0x1f16[8]);var jayson=require(_0x1f16[10]);var client=jayson[_0x1f16[12]][_0x1f16[11]]({port:9002});function respondWithRpcPromise(_0xf9cbxb,_0xf9cbxc,_0xf9cbxd){return  new BPromise(function(_0xf9cbxe,_0xf9cbxf){return client[_0x1f16[25]](_0xf9cbxb,_0xf9cbxd)[_0x1f16[24]](function(_0xf9cbx11){logger[_0x1f16[17]](_0x1f16[13],_0xf9cbxc,_0x1f16[16]);logger[_0x1f16[20]](_0x1f16[18],_0xf9cbxc,_0x1f16[16],JSON[_0x1f16[19]](_0xf9cbx11));if(_0xf9cbx11[_0x1f16[14]]){if(_0xf9cbx11[_0x1f16[14]][_0x1f16[21]]=== 500){logger[_0x1f16[14]](_0x1f16[13],_0xf9cbxc,_0xf9cbx11[_0x1f16[14]][_0x1f16[22]]);return _0xf9cbxf(_0xf9cbx11[_0x1f16[14]][_0x1f16[22]])};logger[_0x1f16[14]](_0x1f16[13],_0xf9cbxc,_0xf9cbx11[_0x1f16[14]][_0x1f16[22]]);return _0xf9cbxe(_0xf9cbx11[_0x1f16[14]][_0x1f16[22]])}else {logger[_0x1f16[17]](_0x1f16[13],_0xf9cbxc,_0x1f16[16]);_0xf9cbxe(_0xf9cbx11[_0x1f16[23]][_0x1f16[22]])}})[_0x1f16[15]](function(_0xf9cbx10){logger[_0x1f16[14]](_0x1f16[13],_0xf9cbxc,_0xf9cbx10);_0xf9cbxf(_0xf9cbx10)})})}
\ No newline at end of file
index fcbc7e2..a9d0077 100644 (file)
@@ -1 +1 @@
-var _0xd5cb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xd5cb[0];var multer=require(_0xd5cb[1]);var util=require(_0xd5cb[2]);var path=require(_0xd5cb[3]);var express=require(_0xd5cb[4]);var router=express.Router();var auth=require(_0xd5cb[5]);var config=require(_0xd5cb[6]);var controller=require(_0xd5cb[7]);router[_0xd5cb[11]](_0xd5cb[8],auth[_0xd5cb[9]](),controller[_0xd5cb[10]]);router[_0xd5cb[11]](_0xd5cb[12],auth[_0xd5cb[9]](),controller[_0xd5cb[13]]);router[_0xd5cb[11]](_0xd5cb[14],auth[_0xd5cb[9]](),controller[_0xd5cb[15]]);router[_0xd5cb[17]](_0xd5cb[8],auth[_0xd5cb[9]](),controller[_0xd5cb[16]]);router[_0xd5cb[19]](_0xd5cb[12],auth[_0xd5cb[9]](),controller[_0xd5cb[18]]);router[_0xd5cb[21]](_0xd5cb[12],auth[_0xd5cb[9]](),controller[_0xd5cb[20]]);module[_0xd5cb[22]]= router
\ No newline at end of file
+var _0x8f41=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8f41[0];var multer=require(_0x8f41[1]);var util=require(_0x8f41[2]);var path=require(_0x8f41[3]);var express=require(_0x8f41[4]);var router=express.Router();var auth=require(_0x8f41[5]);var config=require(_0x8f41[6]);var controller=require(_0x8f41[7]);router[_0x8f41[11]](_0x8f41[8],auth[_0x8f41[9]](),controller[_0x8f41[10]]);router[_0x8f41[11]](_0x8f41[12],auth[_0x8f41[9]](),controller[_0x8f41[13]]);router[_0x8f41[11]](_0x8f41[14],auth[_0x8f41[9]](),controller[_0x8f41[15]]);router[_0x8f41[17]](_0x8f41[8],auth[_0x8f41[9]](),controller[_0x8f41[16]]);router[_0x8f41[19]](_0x8f41[12],auth[_0x8f41[9]](),controller[_0x8f41[18]]);router[_0x8f41[21]](_0x8f41[12],auth[_0x8f41[9]](),controller[_0x8f41[20]]);module[_0x8f41[22]]= router
\ No newline at end of file
index 6838f43..575fcf7 100644 (file)
@@ -1 +1 @@
-var _0x107b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x63\x6F\x6E\x74\x65\x73\x74\x5F\x6D\x61\x69\x6C\x62\x6F\x78","","\x63\x65\x6E\x74\x72\x61\x6C","\x79\x65\x73","\x6E\x6F","\x54\x49\x4E\x59\x49\x4E\x54\x28\x34\x29","\x54\x49\x4D\x45\x53\x54\x41\x4D\x50"];_0x107b[0];var Sequelize=require(_0x107b[1]);module[_0x107b[2]]= {customer_id:{type:Sequelize[_0x107b[3]]},context:{type:Sequelize[_0x107b[3]],defaultValue:_0x107b[4],unique:_0x107b[5]},mailbox:{type:Sequelize[_0x107b[3]],defaultValue:_0x107b[6],allowNull:false,unique:_0x107b[5]},password:{type:Sequelize[_0x107b[3]]},fullname:{type:Sequelize[_0x107b[3]]},email:{type:Sequelize[_0x107b[3]],validate:{isEmail:true}},pager:{type:Sequelize[_0x107b[3]]},tz:{type:Sequelize[_0x107b[3]],defaultValue:_0x107b[7]},attach:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[8],allowNull:false},saycid:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[8],allowNull:false},dialout:{type:Sequelize[_0x107b[3]]},callback:{type:Sequelize[_0x107b[3]]},review:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[9],allowNull:false},operator:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[9],allowNull:false},envelope:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[9],allowNull:false},sayduration:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[9],allowNull:false},saydurationm:{type:_0x107b[10],defaultValue:1,allowNull:false},sendvoicemail:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[9],allowNull:false},delete:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[9],allowNull:false},nextaftercmd:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[8],allowNull:false},forcename:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[9],allowNull:false},forcegreetings:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[9],allowNull:false},hidefromdir:{type:Sequelize.ENUM(_0x107b[8],_0x107b[9]),defaultValue:_0x107b[8],allowNull:false},stamp:{type:_0x107b[11]},emailsubject:{type:Sequelize[_0x107b[3]]},emailbody:{type:Sequelize[_0x107b[3]]},name:{type:Sequelize[_0x107b[3]]},maxsecs:{type:Sequelize.INTEGER(255),defaultValue:180,allowNull:false},maxmsg:{type:Sequelize.INTEGER(255),defaultValue:100,allowNull:false}}
\ No newline at end of file
+var _0x388a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x63\x6F\x6E\x74\x65\x73\x74\x5F\x6D\x61\x69\x6C\x62\x6F\x78","","\x63\x65\x6E\x74\x72\x61\x6C","\x79\x65\x73","\x6E\x6F","\x54\x49\x4E\x59\x49\x4E\x54\x28\x34\x29","\x54\x49\x4D\x45\x53\x54\x41\x4D\x50"];_0x388a[0];var Sequelize=require(_0x388a[1]);module[_0x388a[2]]= {customer_id:{type:Sequelize[_0x388a[3]]},context:{type:Sequelize[_0x388a[3]],defaultValue:_0x388a[4],unique:_0x388a[5]},mailbox:{type:Sequelize[_0x388a[3]],defaultValue:_0x388a[6],allowNull:false,unique:_0x388a[5]},password:{type:Sequelize[_0x388a[3]]},fullname:{type:Sequelize[_0x388a[3]]},email:{type:Sequelize[_0x388a[3]],validate:{isEmail:true}},pager:{type:Sequelize[_0x388a[3]]},tz:{type:Sequelize[_0x388a[3]],defaultValue:_0x388a[7]},attach:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[8],allowNull:false},saycid:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[8],allowNull:false},dialout:{type:Sequelize[_0x388a[3]]},callback:{type:Sequelize[_0x388a[3]]},review:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[9],allowNull:false},operator:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[9],allowNull:false},envelope:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[9],allowNull:false},sayduration:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[9],allowNull:false},saydurationm:{type:_0x388a[10],defaultValue:1,allowNull:false},sendvoicemail:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[9],allowNull:false},delete:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[9],allowNull:false},nextaftercmd:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[8],allowNull:false},forcename:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[9],allowNull:false},forcegreetings:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[9],allowNull:false},hidefromdir:{type:Sequelize.ENUM(_0x388a[8],_0x388a[9]),defaultValue:_0x388a[8],allowNull:false},stamp:{type:_0x388a[11]},emailsubject:{type:Sequelize[_0x388a[3]]},emailbody:{type:Sequelize[_0x388a[3]]},name:{type:Sequelize[_0x388a[3]]},maxsecs:{type:Sequelize.INTEGER(255),defaultValue:180,allowNull:false},maxmsg:{type:Sequelize.INTEGER(255),defaultValue:100,allowNull:false}}
\ No newline at end of file
index 21b5ea8..52b98b2 100644 (file)
@@ -1 +1 @@
-var _0xb64e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6D\x61\x69\x6C\x62\x6F\x78","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xb64e[0];var jsonpatch=require(_0xb64e[1]);var rp=require(_0xb64e[2]);var moment=require(_0xb64e[3]);var BPromise=require(_0xb64e[4]);var util=require(_0xb64e[5]);var path=require(_0xb64e[6]);var sox=require(_0xb64e[7]);var ejs=require(_0xb64e[8]);var fs=require(_0xb64e[9]);var _=require(_0xb64e[10]);var squel=require(_0xb64e[11]);var crypto=require(_0xb64e[12]);var jsforce=require(_0xb64e[13]);var toCsv=require(_0xb64e[14]);var qs=require(_0xb64e[15]);var logger=require(_0xb64e[17])(_0xb64e[16]);var utils=require(_0xb64e[18]);var config=require(_0xb64e[19]);var db=require(_0xb64e[21])[_0xb64e[20]];function respondWithStatusCode(_0xf44ax15,_0xf44ax16,_0xf44ax17){_0xf44ax16= _0xf44ax16|| 204;return function(_0xf44ax18){if(_0xf44ax18){logger[_0xb64e[24]](_0xb64e[22],_0xf44ax17,_0xf44ax16,_0xb64e[23]);logger[_0xb64e[26]](_0xb64e[25],_0xf44ax17,_0xf44ax16,_0xb64e[23]);return _0xf44ax15[_0xb64e[27]](_0xf44ax16)};return _0xf44ax15[_0xb64e[29]](304)[_0xb64e[28]]()}}function respondWithResult(_0xf44ax15,_0xf44ax16,_0xf44ax17){_0xf44ax16= _0xf44ax16|| 200;return function(_0xf44ax18){if(_0xf44ax18){logger[_0xb64e[24]](_0xb64e[22],_0xf44ax17,_0xf44ax16,_0xb64e[30]);logger[_0xb64e[26]](_0xb64e[25],_0xf44ax17,_0xf44ax16,_0xb64e[30],JSON[_0xb64e[31]](_0xf44ax18));return _0xf44ax15[_0xb64e[29]](_0xf44ax16)[_0xb64e[32]](_0xf44ax18)};return _0xf44ax15[_0xb64e[29]](304)[_0xb64e[28]]()}}function respondWithFilteredResult(_0xf44ax15,_0xf44ax1b,_0xf44ax17){return function(_0xf44ax18){if(_0xf44ax18){var _0xf44ax1c=_0xf44ax18[_0xb64e[33]],_0xf44ax1d=_0xf44ax1b[_0xb64e[34]],_0xf44ax1e=_0xf44ax1b[_0xb64e[34]]+ _0xf44ax1b[_0xb64e[35]],_0xf44ax16;if(_0xf44ax1e>= _0xf44ax1c){_0xf44ax1e= _0xf44ax1c;_0xf44ax16= 200}else {_0xf44ax16= 206};_0xf44ax15[_0xb64e[29]](_0xf44ax16);logger[_0xb64e[24]](_0xb64e[22],_0xf44ax17,_0xf44ax16,_0xb64e[36]);logger[_0xb64e[26]](_0xb64e[25],_0xf44ax17,_0xf44ax16,_0xb64e[30],JSON[_0xb64e[31]](_0xf44ax18));return _0xf44ax15[_0xb64e[40]](_0xb64e[37],_0xf44ax1d+ _0xb64e[38]+ _0xf44ax1e+ _0xb64e[39]+ _0xf44ax1c)[_0xb64e[32]](_0xf44ax18)};return null}}function patchUpdates(_0xf44ax20){return function(_0xf44ax18){try{jsonpatch[_0xb64e[41]](_0xf44ax18,_0xf44ax20,true)}catch(err){return BPromise[_0xb64e[42]](err)};return _0xf44ax18[_0xb64e[43]]()}}function saveUpdates(_0xf44ax22,_0xf44ax16,_0xf44ax17){return function(_0xf44ax18){if(_0xf44ax18){return _0xf44ax18[_0xb64e[46]](_0xf44ax22)[_0xb64e[45]](function(_0xf44ax23){logger[_0xb64e[24]](_0xb64e[22],_0xf44ax17,_0xf44ax16,_0xb64e[44]);logger[_0xb64e[26]](_0xb64e[25],_0xf44ax17,_0xf44ax16,_0xb64e[44],JSON[_0xb64e[31]](_0xf44ax18));return _0xf44ax23})};return null}}function removeEntity(_0xf44ax15,_0xf44ax16,_0xf44ax17){return function(_0xf44ax18){if(_0xf44ax18){return _0xf44ax18[_0xb64e[48]]()[_0xb64e[45]](function(){logger[_0xb64e[24]](_0xb64e[22],_0xf44ax17,_0xf44ax16,_0xb64e[47]);logger[_0xb64e[26]](_0xb64e[25],_0xf44ax17,_0xf44ax16,_0xb64e[47],JSON[_0xb64e[31]](_0xf44ax18));_0xf44ax15[_0xb64e[29]](204)[_0xb64e[28]]()})}}}function handleEntityNotFound(_0xf44ax15,_0xf44ax16,_0xf44ax17){return function(_0xf44ax18){if(!_0xf44ax18){logger[_0xb64e[50]](_0xb64e[22],_0xf44ax17,404,_0xb64e[49]);_0xf44ax15[_0xb64e[29]](404)[_0xb64e[28]]();return null};return _0xf44ax18}}function handleError(_0xf44ax15,_0xf44ax16,_0xf44ax17){_0xf44ax16= _0xf44ax16|| 500;return function(_0xf44ax27){logger[_0xb64e[50]](_0xb64e[22],_0xf44ax17,_0xf44ax16,JSON[_0xb64e[31]](_0xf44ax27));delete _0xf44ax27[_0xb64e[51]];_0xf44ax15[_0xb64e[29]](_0xf44ax16)[_0xb64e[52]](_0xf44ax27)}}exports[_0xb64e[53]]= function(_0xf44ax28,_0xf44ax15){var _0xf44ax1b={},_0xf44ax29={};_0xf44ax29[_0xb64e[54]]= _[_0xb64e[57]](db[_0xb64e[56]][_0xb64e[55]]);_0xf44ax29[_0xb64e[58]]= _[_0xb64e[57]](_0xf44ax28[_0xb64e[58]]);_0xf44ax29[_0xb64e[59]]= _[_0xb64e[60]](_0xf44ax29[_0xb64e[54]],_0xf44ax29[_0xb64e[58]]);_0xf44ax1b[_0xb64e[61]]= _[_0xb64e[60]](_0xf44ax29[_0xb64e[54]],qs[_0xb64e[62]](_0xf44ax28[_0xb64e[58]][_0xb64e[62]]));_0xf44ax1b[_0xb64e[61]]= (_0xf44ax1b[_0xb64e[61]][_0xb64e[63]])?_0xf44ax1b[_0xb64e[61]]:_0xf44ax29[_0xb64e[54]];if(!_0xf44ax28[_0xb64e[58]][_0xb64e[65]](_0xb64e[64])){_0xf44ax1b[_0xb64e[35]]= qs[_0xb64e[35]](_0xf44ax28[_0xb64e[58]][_0xb64e[35]]);_0xf44ax1b[_0xb64e[34]]= qs[_0xb64e[34]](_0xf44ax28[_0xb64e[58]][_0xb64e[34]])};_0xf44ax1b[_0xb64e[66]]= qs[_0xb64e[67]](_0xf44ax28[_0xb64e[58]][_0xb64e[67]]);_0xf44ax1b[_0xb64e[68]]= qs[_0xb64e[59]](_[_0xb64e[69]](_0xf44ax28[_0xb64e[58]],_0xf44ax29[_0xb64e[59]]));if(_0xf44ax28[_0xb64e[58]][_0xb64e[70]]){_0xf44ax1b[_0xb64e[68]]= _[_0xb64e[73]](_0xf44ax1b[_0xb64e[68]],{$or:_[_0xb64e[72]](_0xf44ax1b[_0xb64e[61]],function(_0xf44ax2a){var _0xf44ax2b={};_0xf44ax2b[_0xf44ax2a]= {$like:_0xb64e[71]+ _0xf44ax28[_0xb64e[58]][_0xb64e[70]]+ _0xb64e[71]};return _0xf44ax2b})})};_0xf44ax1b= _[_0xb64e[73]]({},_0xf44ax1b,_0xf44ax28[_0xb64e[74]]);return db[_0xb64e[56]][_0xb64e[76]](_0xf44ax1b)[_0xb64e[45]](respondWithFilteredResult(_0xf44ax15,_0xf44ax1b,_0xb64e[53]))[_0xb64e[75]](handleError(_0xf44ax15,null,_0xb64e[53]))};exports[_0xb64e[77]]= function(_0xf44ax28,_0xf44ax15){var _0xf44ax1b={raw:true,where:{id:_0xf44ax28[_0xb64e[79]][_0xb64e[78]]}},_0xf44ax29={};_0xf44ax29[_0xb64e[54]]= _[_0xb64e[57]](db[_0xb64e[56]][_0xb64e[55]]);_0xf44ax29[_0xb64e[58]]= _[_0xb64e[57]](_0xf44ax28[_0xb64e[58]]);_0xf44ax29[_0xb64e[59]]= _[_0xb64e[60]](_0xf44ax29[_0xb64e[54]],_0xf44ax29[_0xb64e[58]]);_0xf44ax1b[_0xb64e[61]]= _[_0xb64e[60]](_0xf44ax29[_0xb64e[54]],qs[_0xb64e[62]](_0xf44ax28[_0xb64e[58]][_0xb64e[62]]));_0xf44ax1b[_0xb64e[61]]= (_0xf44ax1b[_0xb64e[61]][_0xb64e[63]])?_0xf44ax1b[_0xb64e[61]]:_0xf44ax29[_0xb64e[54]];_0xf44ax1b= _[_0xb64e[73]]({},_0xf44ax1b,_0xf44ax28[_0xb64e[74]]);return db[_0xb64e[56]][_0xb64e[80]](_0xf44ax1b)[_0xb64e[45]](handleEntityNotFound(_0xf44ax15,null,_0xb64e[77]))[_0xb64e[45]](respondWithResult(_0xf44ax15,null,_0xb64e[77]))[_0xb64e[75]](handleError(_0xf44ax15,null,_0xb64e[77]))};exports[_0xb64e[81]]= function(_0xf44ax28,_0xf44ax15){return db[_0xb64e[56]][_0xb64e[81]](_0xf44ax28[_0xb64e[82]],{})[_0xb64e[45]](respondWithResult(_0xf44ax15,201,_0xb64e[81]))[_0xb64e[75]](handleError(_0xf44ax15,null,_0xb64e[81]))};exports[_0xb64e[46]]= function(_0xf44ax28,_0xf44ax15){if(_0xf44ax28[_0xb64e[82]][_0xb64e[78]]){delete _0xf44ax28[_0xb64e[82]][_0xb64e[78]]};return db[_0xb64e[56]][_0xb64e[80]]({where:{id:_0xf44ax28[_0xb64e[79]][_0xb64e[78]]}})[_0xb64e[45]](handleEntityNotFound(_0xf44ax15,null,_0xb64e[46]))[_0xb64e[45]](saveUpdates(_0xf44ax28[_0xb64e[82]],null,_0xb64e[46]))[_0xb64e[45]](respondWithResult(_0xf44ax15,null,_0xb64e[46]))[_0xb64e[75]](handleError(_0xf44ax15,null,_0xb64e[46]))};exports[_0xb64e[48]]= function(_0xf44ax28,_0xf44ax15){return db[_0xb64e[56]][_0xb64e[80]]({where:{id:_0xf44ax28[_0xb64e[79]][_0xb64e[78]]}})[_0xb64e[45]](handleEntityNotFound(_0xf44ax15,null,_0xb64e[48]))[_0xb64e[45]](removeEntity(_0xf44ax15,null,_0xb64e[48]))[_0xb64e[75]](handleError(_0xf44ax15,null,_0xb64e[48]))};exports[_0xb64e[83]]= function(_0xf44ax28,_0xf44ax15,_0xf44ax2c){return db[_0xb64e[56]][_0xb64e[86]]({where:{id:_0xf44ax28[_0xb64e[79]][_0xb64e[78]]}})[_0xb64e[45]](handleEntityNotFound(_0xf44ax15,null,_0xb64e[83]))[_0xb64e[45]](function(_0xf44ax2d){var _0xf44ax1c;var _0xf44ax1b={},_0xf44ax29={};_0xf44ax29[_0xb64e[54]]= _[_0xb64e[57]](db[_0xb64e[84]][_0xb64e[55]]);_0xf44ax29[_0xb64e[58]]= _[_0xb64e[57]](_0xf44ax28[_0xb64e[58]]);_0xf44ax29[_0xb64e[59]]= _[_0xb64e[60]](_0xf44ax29[_0xb64e[54]],_0xf44ax29[_0xb64e[58]]);_0xf44ax1b[_0xb64e[61]]= _[_0xb64e[60]](_0xf44ax29[_0xb64e[54]],qs[_0xb64e[62]](_0xf44ax28[_0xb64e[58]][_0xb64e[62]]));_0xf44ax1b[_0xb64e[61]]= (_0xf44ax1b[_0xb64e[61]][_0xb64e[63]])?_0xf44ax1b[_0xb64e[61]]:_0xf44ax29[_0xb64e[54]];if(!_0xf44ax28[_0xb64e[58]][_0xb64e[65]](_0xb64e[64])){_0xf44ax1b[_0xb64e[35]]= qs[_0xb64e[35]](_0xf44ax28[_0xb64e[58]][_0xb64e[35]]);_0xf44ax1b[_0xb64e[34]]= qs[_0xb64e[34]](_0xf44ax28[_0xb64e[58]][_0xb64e[34]])};_0xf44ax1b[_0xb64e[66]]= qs[_0xb64e[67]](_0xf44ax28[_0xb64e[58]][_0xb64e[67]]);_0xf44ax1b[_0xb64e[68]]= qs[_0xb64e[59]](_[_0xb64e[69]](_0xf44ax28[_0xb64e[58]],_0xf44ax29[_0xb64e[59]]));if(_0xf44ax28[_0xb64e[58]][_0xb64e[70]]){_0xf44ax1b[_0xb64e[68]]= _[_0xb64e[73]](_0xf44ax1b[_0xb64e[68]],{$or:_[_0xb64e[72]](_0xf44ax1b[_0xb64e[61]],function(_0xf44ax2a){var _0xf44ax2b={};_0xf44ax2b[_0xf44ax2a]= {$like:_0xb64e[71]+ _0xf44ax28[_0xb64e[58]][_0xb64e[70]]+ _0xb64e[71]};return _0xf44ax2b})})};_0xf44ax1b[_0xb64e[68]]= _[_0xb64e[73]](_0xf44ax1b[_0xb64e[68]],{mailboxuser:_0xf44ax2d[_0xb64e[85]]});_0xf44ax1b= _[_0xb64e[73]]({},_0xf44ax1b,_0xf44ax28[_0xb64e[74]]);return db[_0xb64e[84]][_0xb64e[76]](_0xf44ax1b)[_0xb64e[45]](respondWithFilteredResult(_0xf44ax15,_0xf44ax1b,_0xb64e[83]))})[_0xb64e[75]](handleError(_0xf44ax15,null,_0xb64e[83]))}
\ No newline at end of file
+var _0xc72d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x4D\x65\x73\x73\x61\x67\x65\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6D\x61\x69\x6C\x62\x6F\x78","\x66\x69\x6E\x64\x4F\x6E\x65"];_0xc72d[0];var jsonpatch=require(_0xc72d[1]);var rp=require(_0xc72d[2]);var moment=require(_0xc72d[3]);var BPromise=require(_0xc72d[4]);var util=require(_0xc72d[5]);var path=require(_0xc72d[6]);var sox=require(_0xc72d[7]);var ejs=require(_0xc72d[8]);var fs=require(_0xc72d[9]);var _=require(_0xc72d[10]);var squel=require(_0xc72d[11]);var crypto=require(_0xc72d[12]);var jsforce=require(_0xc72d[13]);var toCsv=require(_0xc72d[14]);var qs=require(_0xc72d[15]);var logger=require(_0xc72d[17])(_0xc72d[16]);var utils=require(_0xc72d[18]);var config=require(_0xc72d[19]);var db=require(_0xc72d[21])[_0xc72d[20]];function respondWithStatusCode(_0x6563x15,_0x6563x16,_0x6563x17){_0x6563x16= _0x6563x16|| 204;return function(_0x6563x18){if(_0x6563x18){logger[_0xc72d[24]](_0xc72d[22],_0x6563x17,_0x6563x16,_0xc72d[23]);logger[_0xc72d[26]](_0xc72d[25],_0x6563x17,_0x6563x16,_0xc72d[23]);return _0x6563x15[_0xc72d[27]](_0x6563x16)};return _0x6563x15[_0xc72d[29]](304)[_0xc72d[28]]()}}function respondWithResult(_0x6563x15,_0x6563x16,_0x6563x17){_0x6563x16= _0x6563x16|| 200;return function(_0x6563x18){if(_0x6563x18){logger[_0xc72d[24]](_0xc72d[22],_0x6563x17,_0x6563x16,_0xc72d[30]);logger[_0xc72d[26]](_0xc72d[25],_0x6563x17,_0x6563x16,_0xc72d[30],JSON[_0xc72d[31]](_0x6563x18));return _0x6563x15[_0xc72d[29]](_0x6563x16)[_0xc72d[32]](_0x6563x18)};return _0x6563x15[_0xc72d[29]](304)[_0xc72d[28]]()}}function respondWithFilteredResult(_0x6563x15,_0x6563x1b,_0x6563x17){return function(_0x6563x18){if(_0x6563x18){var _0x6563x1c=_0x6563x18[_0xc72d[33]],_0x6563x1d=_0x6563x1b[_0xc72d[34]],_0x6563x1e=_0x6563x1b[_0xc72d[34]]+ _0x6563x1b[_0xc72d[35]],_0x6563x16;if(_0x6563x1e>= _0x6563x1c){_0x6563x1e= _0x6563x1c;_0x6563x16= 200}else {_0x6563x16= 206};_0x6563x15[_0xc72d[29]](_0x6563x16);logger[_0xc72d[24]](_0xc72d[22],_0x6563x17,_0x6563x16,_0xc72d[36]);logger[_0xc72d[26]](_0xc72d[25],_0x6563x17,_0x6563x16,_0xc72d[30],JSON[_0xc72d[31]](_0x6563x18));return _0x6563x15[_0xc72d[40]](_0xc72d[37],_0x6563x1d+ _0xc72d[38]+ _0x6563x1e+ _0xc72d[39]+ _0x6563x1c)[_0xc72d[32]](_0x6563x18)};return null}}function patchUpdates(_0x6563x20){return function(_0x6563x18){try{jsonpatch[_0xc72d[41]](_0x6563x18,_0x6563x20,true)}catch(err){return BPromise[_0xc72d[42]](err)};return _0x6563x18[_0xc72d[43]]()}}function saveUpdates(_0x6563x22,_0x6563x16,_0x6563x17){return function(_0x6563x18){if(_0x6563x18){return _0x6563x18[_0xc72d[46]](_0x6563x22)[_0xc72d[45]](function(_0x6563x23){logger[_0xc72d[24]](_0xc72d[22],_0x6563x17,_0x6563x16,_0xc72d[44]);logger[_0xc72d[26]](_0xc72d[25],_0x6563x17,_0x6563x16,_0xc72d[44],JSON[_0xc72d[31]](_0x6563x18));return _0x6563x23})};return null}}function removeEntity(_0x6563x15,_0x6563x16,_0x6563x17){return function(_0x6563x18){if(_0x6563x18){return _0x6563x18[_0xc72d[48]]()[_0xc72d[45]](function(){logger[_0xc72d[24]](_0xc72d[22],_0x6563x17,_0x6563x16,_0xc72d[47]);logger[_0xc72d[26]](_0xc72d[25],_0x6563x17,_0x6563x16,_0xc72d[47],JSON[_0xc72d[31]](_0x6563x18));_0x6563x15[_0xc72d[29]](204)[_0xc72d[28]]()})}}}function handleEntityNotFound(_0x6563x15,_0x6563x16,_0x6563x17){return function(_0x6563x18){if(!_0x6563x18){logger[_0xc72d[50]](_0xc72d[22],_0x6563x17,404,_0xc72d[49]);_0x6563x15[_0xc72d[29]](404)[_0xc72d[28]]();return null};return _0x6563x18}}function handleError(_0x6563x15,_0x6563x16,_0x6563x17){_0x6563x16= _0x6563x16|| 500;return function(_0x6563x27){logger[_0xc72d[50]](_0xc72d[22],_0x6563x17,_0x6563x16,JSON[_0xc72d[31]](_0x6563x27));delete _0x6563x27[_0xc72d[51]];_0x6563x15[_0xc72d[29]](_0x6563x16)[_0xc72d[52]](_0x6563x27)}}exports[_0xc72d[53]]= function(_0x6563x28,_0x6563x15){var _0x6563x1b={},_0x6563x29={};_0x6563x29[_0xc72d[54]]= _[_0xc72d[57]](db[_0xc72d[56]][_0xc72d[55]]);_0x6563x29[_0xc72d[58]]= _[_0xc72d[57]](_0x6563x28[_0xc72d[58]]);_0x6563x29[_0xc72d[59]]= _[_0xc72d[60]](_0x6563x29[_0xc72d[54]],_0x6563x29[_0xc72d[58]]);_0x6563x1b[_0xc72d[61]]= _[_0xc72d[60]](_0x6563x29[_0xc72d[54]],qs[_0xc72d[62]](_0x6563x28[_0xc72d[58]][_0xc72d[62]]));_0x6563x1b[_0xc72d[61]]= (_0x6563x1b[_0xc72d[61]][_0xc72d[63]])?_0x6563x1b[_0xc72d[61]]:_0x6563x29[_0xc72d[54]];if(!_0x6563x28[_0xc72d[58]][_0xc72d[65]](_0xc72d[64])){_0x6563x1b[_0xc72d[35]]= qs[_0xc72d[35]](_0x6563x28[_0xc72d[58]][_0xc72d[35]]);_0x6563x1b[_0xc72d[34]]= qs[_0xc72d[34]](_0x6563x28[_0xc72d[58]][_0xc72d[34]])};_0x6563x1b[_0xc72d[66]]= qs[_0xc72d[67]](_0x6563x28[_0xc72d[58]][_0xc72d[67]]);_0x6563x1b[_0xc72d[68]]= qs[_0xc72d[59]](_[_0xc72d[69]](_0x6563x28[_0xc72d[58]],_0x6563x29[_0xc72d[59]]));if(_0x6563x28[_0xc72d[58]][_0xc72d[70]]){_0x6563x1b[_0xc72d[68]]= _[_0xc72d[73]](_0x6563x1b[_0xc72d[68]],{$or:_[_0xc72d[72]](_0x6563x1b[_0xc72d[61]],function(_0x6563x2a){var _0x6563x2b={};_0x6563x2b[_0x6563x2a]= {$like:_0xc72d[71]+ _0x6563x28[_0xc72d[58]][_0xc72d[70]]+ _0xc72d[71]};return _0x6563x2b})})};_0x6563x1b= _[_0xc72d[73]]({},_0x6563x1b,_0x6563x28[_0xc72d[74]]);return db[_0xc72d[56]][_0xc72d[76]](_0x6563x1b)[_0xc72d[45]](respondWithFilteredResult(_0x6563x15,_0x6563x1b,_0xc72d[53]))[_0xc72d[75]](handleError(_0x6563x15,null,_0xc72d[53]))};exports[_0xc72d[77]]= function(_0x6563x28,_0x6563x15){var _0x6563x1b={raw:true,where:{id:_0x6563x28[_0xc72d[79]][_0xc72d[78]]}},_0x6563x29={};_0x6563x29[_0xc72d[54]]= _[_0xc72d[57]](db[_0xc72d[56]][_0xc72d[55]]);_0x6563x29[_0xc72d[58]]= _[_0xc72d[57]](_0x6563x28[_0xc72d[58]]);_0x6563x29[_0xc72d[59]]= _[_0xc72d[60]](_0x6563x29[_0xc72d[54]],_0x6563x29[_0xc72d[58]]);_0x6563x1b[_0xc72d[61]]= _[_0xc72d[60]](_0x6563x29[_0xc72d[54]],qs[_0xc72d[62]](_0x6563x28[_0xc72d[58]][_0xc72d[62]]));_0x6563x1b[_0xc72d[61]]= (_0x6563x1b[_0xc72d[61]][_0xc72d[63]])?_0x6563x1b[_0xc72d[61]]:_0x6563x29[_0xc72d[54]];_0x6563x1b= _[_0xc72d[73]]({},_0x6563x1b,_0x6563x28[_0xc72d[74]]);return db[_0xc72d[56]][_0xc72d[80]](_0x6563x1b)[_0xc72d[45]](handleEntityNotFound(_0x6563x15,null,_0xc72d[77]))[_0xc72d[45]](respondWithResult(_0x6563x15,null,_0xc72d[77]))[_0xc72d[75]](handleError(_0x6563x15,null,_0xc72d[77]))};exports[_0xc72d[81]]= function(_0x6563x28,_0x6563x15){return db[_0xc72d[56]][_0xc72d[81]](_0x6563x28[_0xc72d[82]],{})[_0xc72d[45]](respondWithResult(_0x6563x15,201,_0xc72d[81]))[_0xc72d[75]](handleError(_0x6563x15,null,_0xc72d[81]))};exports[_0xc72d[46]]= function(_0x6563x28,_0x6563x15){if(_0x6563x28[_0xc72d[82]][_0xc72d[78]]){delete _0x6563x28[_0xc72d[82]][_0xc72d[78]]};return db[_0xc72d[56]][_0xc72d[80]]({where:{id:_0x6563x28[_0xc72d[79]][_0xc72d[78]]}})[_0xc72d[45]](handleEntityNotFound(_0x6563x15,null,_0xc72d[46]))[_0xc72d[45]](saveUpdates(_0x6563x28[_0xc72d[82]],null,_0xc72d[46]))[_0xc72d[45]](respondWithResult(_0x6563x15,null,_0xc72d[46]))[_0xc72d[75]](handleError(_0x6563x15,null,_0xc72d[46]))};exports[_0xc72d[48]]= function(_0x6563x28,_0x6563x15){return db[_0xc72d[56]][_0xc72d[80]]({where:{id:_0x6563x28[_0xc72d[79]][_0xc72d[78]]}})[_0xc72d[45]](handleEntityNotFound(_0x6563x15,null,_0xc72d[48]))[_0xc72d[45]](removeEntity(_0x6563x15,null,_0xc72d[48]))[_0xc72d[75]](handleError(_0x6563x15,null,_0xc72d[48]))};exports[_0xc72d[83]]= function(_0x6563x28,_0x6563x15,_0x6563x2c){return db[_0xc72d[56]][_0xc72d[86]]({where:{id:_0x6563x28[_0xc72d[79]][_0xc72d[78]]}})[_0xc72d[45]](handleEntityNotFound(_0x6563x15,null,_0xc72d[83]))[_0xc72d[45]](function(_0x6563x2d){var _0x6563x1c;var _0x6563x1b={},_0x6563x29={};_0x6563x29[_0xc72d[54]]= _[_0xc72d[57]](db[_0xc72d[84]][_0xc72d[55]]);_0x6563x29[_0xc72d[58]]= _[_0xc72d[57]](_0x6563x28[_0xc72d[58]]);_0x6563x29[_0xc72d[59]]= _[_0xc72d[60]](_0x6563x29[_0xc72d[54]],_0x6563x29[_0xc72d[58]]);_0x6563x1b[_0xc72d[61]]= _[_0xc72d[60]](_0x6563x29[_0xc72d[54]],qs[_0xc72d[62]](_0x6563x28[_0xc72d[58]][_0xc72d[62]]));_0x6563x1b[_0xc72d[61]]= (_0x6563x1b[_0xc72d[61]][_0xc72d[63]])?_0x6563x1b[_0xc72d[61]]:_0x6563x29[_0xc72d[54]];if(!_0x6563x28[_0xc72d[58]][_0xc72d[65]](_0xc72d[64])){_0x6563x1b[_0xc72d[35]]= qs[_0xc72d[35]](_0x6563x28[_0xc72d[58]][_0xc72d[35]]);_0x6563x1b[_0xc72d[34]]= qs[_0xc72d[34]](_0x6563x28[_0xc72d[58]][_0xc72d[34]])};_0x6563x1b[_0xc72d[66]]= qs[_0xc72d[67]](_0x6563x28[_0xc72d[58]][_0xc72d[67]]);_0x6563x1b[_0xc72d[68]]= qs[_0xc72d[59]](_[_0xc72d[69]](_0x6563x28[_0xc72d[58]],_0x6563x29[_0xc72d[59]]));if(_0x6563x28[_0xc72d[58]][_0xc72d[70]]){_0x6563x1b[_0xc72d[68]]= _[_0xc72d[73]](_0x6563x1b[_0xc72d[68]],{$or:_[_0xc72d[72]](_0x6563x1b[_0xc72d[61]],function(_0x6563x2a){var _0x6563x2b={};_0x6563x2b[_0x6563x2a]= {$like:_0xc72d[71]+ _0x6563x28[_0xc72d[58]][_0xc72d[70]]+ _0xc72d[71]};return _0x6563x2b})})};_0x6563x1b[_0xc72d[68]]= _[_0xc72d[73]](_0x6563x1b[_0xc72d[68]],{mailboxuser:_0x6563x2d[_0xc72d[85]]});_0x6563x1b= _[_0xc72d[73]]({},_0x6563x1b,_0x6563x28[_0xc72d[74]]);return db[_0xc72d[84]][_0xc72d[76]](_0x6563x1b)[_0xc72d[45]](respondWithFilteredResult(_0x6563x15,_0x6563x1b,_0xc72d[83]))})[_0xc72d[75]](handleError(_0x6563x15,null,_0xc72d[83]))}
\ No newline at end of file
index 9987bb9..816f5b4 100644 (file)
@@ -1 +1 @@
-var _0xa131=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x76\x6F\x69\x63\x65\x5F\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x6D\x61\x69\x6C\x62\x6F\x78\x5F\x63\x6F\x6E\x74\x65\x78\x74","\x6D\x61\x69\x6C\x62\x6F\x78","\x63\x6F\x6E\x74\x65\x78\x74","\x64\x65\x66\x69\x6E\x65"];_0xa131[0];var _=require(_0xa131[1]);var util=require(_0xa131[2]);var logger=require(_0xa131[4])(_0xa131[3]);var attributes=require(_0xa131[5]);module[_0xa131[6]]= function(_0xc291x5,_0xc291x6){return _0xc291x5[_0xa131[12]](_0xa131[7],attributes,{tableName:_0xa131[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0xa131[9],"\x66\x69\x65\x6C\x64\x73":[_0xa131[10],_0xa131[11]]}],timestamps:true})}
\ No newline at end of file
+var _0x53ed=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x76\x6F\x69\x63\x65\x5F\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x6D\x61\x69\x6C\x62\x6F\x78\x5F\x63\x6F\x6E\x74\x65\x78\x74","\x6D\x61\x69\x6C\x62\x6F\x78","\x63\x6F\x6E\x74\x65\x78\x74","\x64\x65\x66\x69\x6E\x65"];_0x53ed[0];var _=require(_0x53ed[1]);var util=require(_0x53ed[2]);var logger=require(_0x53ed[4])(_0x53ed[3]);var attributes=require(_0x53ed[5]);module[_0x53ed[6]]= function(_0xa7abx5,_0xa7abx6){return _0xa7abx5[_0x53ed[12]](_0x53ed[7],attributes,{tableName:_0x53ed[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0x53ed[9],"\x66\x69\x65\x6C\x64\x73":[_0x53ed[10],_0x53ed[11]]}],timestamps:true})}
\ No newline at end of file
index a7ca5c8..01762be 100644 (file)
@@ -1 +1 @@
-var _0xe8a6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe8a6[0];var _=require(_0xe8a6[1]);var util=require(_0xe8a6[2]);var moment=require(_0xe8a6[3]);var BPromise=require(_0xe8a6[4]);var db=require(_0xe8a6[6])[_0xe8a6[5]];var utils=require(_0xe8a6[7]);var logger=require(_0xe8a6[9])(_0xe8a6[8]);var jayson=require(_0xe8a6[10]);var client=jayson[_0xe8a6[12]][_0xe8a6[11]]({port:9002});function respondWithRpcPromise(_0xcea1xb,_0xcea1xc,_0xcea1xd){return  new BPromise(function(_0xcea1xe,_0xcea1xf){return client[_0xe8a6[25]](_0xcea1xb,_0xcea1xd)[_0xe8a6[24]](function(_0xcea1x11){logger[_0xe8a6[17]](_0xe8a6[13],_0xcea1xc,_0xe8a6[16]);logger[_0xe8a6[20]](_0xe8a6[18],_0xcea1xc,_0xe8a6[16],JSON[_0xe8a6[19]](_0xcea1x11));if(_0xcea1x11[_0xe8a6[14]]){if(_0xcea1x11[_0xe8a6[14]][_0xe8a6[21]]=== 500){logger[_0xe8a6[14]](_0xe8a6[13],_0xcea1xc,_0xcea1x11[_0xe8a6[14]][_0xe8a6[22]]);return _0xcea1xf(_0xcea1x11[_0xe8a6[14]][_0xe8a6[22]])};logger[_0xe8a6[14]](_0xe8a6[13],_0xcea1xc,_0xcea1x11[_0xe8a6[14]][_0xe8a6[22]]);return _0xcea1xe(_0xcea1x11[_0xe8a6[14]][_0xe8a6[22]])}else {logger[_0xe8a6[17]](_0xe8a6[13],_0xcea1xc,_0xe8a6[16]);_0xcea1xe(_0xcea1x11[_0xe8a6[23]][_0xe8a6[22]])}})[_0xe8a6[15]](function(_0xcea1x10){logger[_0xe8a6[14]](_0xe8a6[13],_0xcea1xc,_0xcea1x10);_0xcea1xf(_0xcea1x10)})})}
\ No newline at end of file
+var _0xcf88=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xcf88[0];var _=require(_0xcf88[1]);var util=require(_0xcf88[2]);var moment=require(_0xcf88[3]);var BPromise=require(_0xcf88[4]);var db=require(_0xcf88[6])[_0xcf88[5]];var utils=require(_0xcf88[7]);var logger=require(_0xcf88[9])(_0xcf88[8]);var jayson=require(_0xcf88[10]);var client=jayson[_0xcf88[12]][_0xcf88[11]]({port:9002});function respondWithRpcPromise(_0xdd86xb,_0xdd86xc,_0xdd86xd){return  new BPromise(function(_0xdd86xe,_0xdd86xf){return client[_0xcf88[25]](_0xdd86xb,_0xdd86xd)[_0xcf88[24]](function(_0xdd86x11){logger[_0xcf88[17]](_0xcf88[13],_0xdd86xc,_0xcf88[16]);logger[_0xcf88[20]](_0xcf88[18],_0xdd86xc,_0xcf88[16],JSON[_0xcf88[19]](_0xdd86x11));if(_0xdd86x11[_0xcf88[14]]){if(_0xdd86x11[_0xcf88[14]][_0xcf88[21]]=== 500){logger[_0xcf88[14]](_0xcf88[13],_0xdd86xc,_0xdd86x11[_0xcf88[14]][_0xcf88[22]]);return _0xdd86xf(_0xdd86x11[_0xcf88[14]][_0xcf88[22]])};logger[_0xcf88[14]](_0xcf88[13],_0xdd86xc,_0xdd86x11[_0xcf88[14]][_0xcf88[22]]);return _0xdd86xe(_0xdd86x11[_0xcf88[14]][_0xcf88[22]])}else {logger[_0xcf88[17]](_0xcf88[13],_0xdd86xc,_0xcf88[16]);_0xdd86xe(_0xdd86x11[_0xcf88[23]][_0xcf88[22]])}})[_0xcf88[15]](function(_0xdd86x10){logger[_0xcf88[14]](_0xcf88[13],_0xdd86xc,_0xdd86x10);_0xdd86xf(_0xdd86x10)})})}
\ No newline at end of file
index 28428cd..fe7ff63 100644 (file)
@@ -1 +1 @@
-var _0x5ba9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5ba9[0];var multer=require(_0x5ba9[1]);var util=require(_0x5ba9[2]);var path=require(_0x5ba9[3]);var express=require(_0x5ba9[4]);var router=express.Router();var auth=require(_0x5ba9[5]);var config=require(_0x5ba9[6]);var controller=require(_0x5ba9[7]);router[_0x5ba9[11]](_0x5ba9[8],auth[_0x5ba9[9]](),controller[_0x5ba9[10]]);router[_0x5ba9[11]](_0x5ba9[12],auth[_0x5ba9[9]](),controller[_0x5ba9[13]]);router[_0x5ba9[11]](_0x5ba9[14],controller[_0x5ba9[15]]);router[_0x5ba9[17]](_0x5ba9[8],auth[_0x5ba9[9]](),controller[_0x5ba9[16]]);router[_0x5ba9[19]](_0x5ba9[12],auth[_0x5ba9[9]](),controller[_0x5ba9[18]]);router[_0x5ba9[21]](_0x5ba9[12],auth[_0x5ba9[9]](),controller[_0x5ba9[20]]);module[_0x5ba9[22]]= router
\ No newline at end of file
+var _0xb6ad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xb6ad[0];var multer=require(_0xb6ad[1]);var util=require(_0xb6ad[2]);var path=require(_0xb6ad[3]);var express=require(_0xb6ad[4]);var router=express.Router();var auth=require(_0xb6ad[5]);var config=require(_0xb6ad[6]);var controller=require(_0xb6ad[7]);router[_0xb6ad[11]](_0xb6ad[8],auth[_0xb6ad[9]](),controller[_0xb6ad[10]]);router[_0xb6ad[11]](_0xb6ad[12],auth[_0xb6ad[9]](),controller[_0xb6ad[13]]);router[_0xb6ad[11]](_0xb6ad[14],controller[_0xb6ad[15]]);router[_0xb6ad[17]](_0xb6ad[8],auth[_0xb6ad[9]](),controller[_0xb6ad[16]]);router[_0xb6ad[19]](_0xb6ad[12],auth[_0xb6ad[9]](),controller[_0xb6ad[18]]);router[_0xb6ad[21]](_0xb6ad[12],auth[_0xb6ad[9]](),controller[_0xb6ad[20]]);module[_0xb6ad[22]]= router
\ No newline at end of file
index f1c35ff..fc34536 100644 (file)
@@ -1 +1 @@
-var _0x4dad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x69\x64","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","","\x6C\x6F\x6E\x67","\x54\x49\x4D\x45\x53\x54\x41\x4D\x50"];_0x4dad[0];var Sequelize=require(_0x4dad[1]);module[_0x4dad[2]]= {name:{type:Sequelize[_0x4dad[3]],get:function(_0x4f5bx2){return this[_0x4dad[5]](_0x4dad[4])}},msgnum:{type:Sequelize.INTEGER(11),defaultValue:0,allowNull:false},dir:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},context:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},macrocontext:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},callerid:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},origtime:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},duration:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},mailboxuser:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},mailboxcontext:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},recording:{type:Sequelize.BLOB(_0x4dad[8]),defaultValue:null},flag:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},msg_id:{type:Sequelize[_0x4dad[6]],defaultValue:_0x4dad[7]},stamp:{type:_0x4dad[9],allowNull:false}}
\ No newline at end of file
+var _0x4c3b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x69\x64","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x53\x54\x52\x49\x4E\x47","","\x6C\x6F\x6E\x67","\x54\x49\x4D\x45\x53\x54\x41\x4D\x50"];_0x4c3b[0];var Sequelize=require(_0x4c3b[1]);module[_0x4c3b[2]]= {name:{type:Sequelize[_0x4c3b[3]],get:function(_0xa9b4x2){return this[_0x4c3b[5]](_0x4c3b[4])}},msgnum:{type:Sequelize.INTEGER(11),defaultValue:0,allowNull:false},dir:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},context:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},macrocontext:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},callerid:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},origtime:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},duration:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},mailboxuser:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},mailboxcontext:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},recording:{type:Sequelize.BLOB(_0x4c3b[8]),defaultValue:null},flag:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},msg_id:{type:Sequelize[_0x4c3b[6]],defaultValue:_0x4c3b[7]},stamp:{type:_0x4c3b[9],allowNull:false}}
\ No newline at end of file
index bbd322b..038046f 100644 (file)
@@ -1 +1 @@
-var _0xd626=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x2E\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x61\x75\x64\x69\x6F\x2F\x77\x61\x76"];_0xd626[0];var jsonpatch=require(_0xd626[1]);var rp=require(_0xd626[2]);var moment=require(_0xd626[3]);var BPromise=require(_0xd626[4]);var util=require(_0xd626[5]);var path=require(_0xd626[6]);var sox=require(_0xd626[7]);var ejs=require(_0xd626[8]);var fs=require(_0xd626[9]);var _=require(_0xd626[10]);var squel=require(_0xd626[11]);var crypto=require(_0xd626[12]);var jsforce=require(_0xd626[13]);var toCsv=require(_0xd626[14]);var qs=require(_0xd626[15]);var logger=require(_0xd626[17])(_0xd626[16]);var utils=require(_0xd626[18]);var config=require(_0xd626[19]);var db=require(_0xd626[21])[_0xd626[20]];function respondWithStatusCode(_0x6546x15,_0x6546x16,_0x6546x17){_0x6546x16= _0x6546x16|| 204;return function(_0x6546x18){if(_0x6546x18){logger[_0xd626[24]](_0xd626[22],_0x6546x17,_0x6546x16,_0xd626[23]);logger[_0xd626[26]](_0xd626[25],_0x6546x17,_0x6546x16,_0xd626[23]);return _0x6546x15[_0xd626[27]](_0x6546x16)};return _0x6546x15[_0xd626[29]](304)[_0xd626[28]]()}}function respondWithResult(_0x6546x15,_0x6546x16,_0x6546x17){_0x6546x16= _0x6546x16|| 200;return function(_0x6546x18){if(_0x6546x18){logger[_0xd626[24]](_0xd626[22],_0x6546x17,_0x6546x16,_0xd626[30]);logger[_0xd626[26]](_0xd626[25],_0x6546x17,_0x6546x16,_0xd626[30],JSON[_0xd626[31]](_0x6546x18));return _0x6546x15[_0xd626[29]](_0x6546x16)[_0xd626[32]](_0x6546x18)};return _0x6546x15[_0xd626[29]](304)[_0xd626[28]]()}}function respondWithFilteredResult(_0x6546x15,_0x6546x1b,_0x6546x17){return function(_0x6546x18){if(_0x6546x18){var _0x6546x1c=_0x6546x18[_0xd626[33]],_0x6546x1d=_0x6546x1b[_0xd626[34]],_0x6546x1e=_0x6546x1b[_0xd626[34]]+ _0x6546x1b[_0xd626[35]],_0x6546x16;if(_0x6546x1e>= _0x6546x1c){_0x6546x1e= _0x6546x1c;_0x6546x16= 200}else {_0x6546x16= 206};_0x6546x15[_0xd626[29]](_0x6546x16);logger[_0xd626[24]](_0xd626[22],_0x6546x17,_0x6546x16,_0xd626[36]);logger[_0xd626[26]](_0xd626[25],_0x6546x17,_0x6546x16,_0xd626[30],JSON[_0xd626[31]](_0x6546x18));return _0x6546x15[_0xd626[40]](_0xd626[37],_0x6546x1d+ _0xd626[38]+ _0x6546x1e+ _0xd626[39]+ _0x6546x1c)[_0xd626[32]](_0x6546x18)};return null}}function patchUpdates(_0x6546x20){return function(_0x6546x18){try{jsonpatch[_0xd626[41]](_0x6546x18,_0x6546x20,true)}catch(err){return BPromise[_0xd626[42]](err)};return _0x6546x18[_0xd626[43]]()}}function saveUpdates(_0x6546x22,_0x6546x16,_0x6546x17){return function(_0x6546x18){if(_0x6546x18){return _0x6546x18[_0xd626[46]](_0x6546x22)[_0xd626[45]](function(_0x6546x23){logger[_0xd626[24]](_0xd626[22],_0x6546x17,_0x6546x16,_0xd626[44]);logger[_0xd626[26]](_0xd626[25],_0x6546x17,_0x6546x16,_0xd626[44],JSON[_0xd626[31]](_0x6546x18));return _0x6546x23})};return null}}function removeEntity(_0x6546x15,_0x6546x16,_0x6546x17){return function(_0x6546x18){if(_0x6546x18){return _0x6546x18[_0xd626[48]]()[_0xd626[45]](function(){logger[_0xd626[24]](_0xd626[22],_0x6546x17,_0x6546x16,_0xd626[47]);logger[_0xd626[26]](_0xd626[25],_0x6546x17,_0x6546x16,_0xd626[47],JSON[_0xd626[31]](_0x6546x18));_0x6546x15[_0xd626[29]](204)[_0xd626[28]]()})}}}function handleEntityNotFound(_0x6546x15,_0x6546x16,_0x6546x17){return function(_0x6546x18){if(!_0x6546x18){logger[_0xd626[50]](_0xd626[22],_0x6546x17,404,_0xd626[49]);_0x6546x15[_0xd626[29]](404)[_0xd626[28]]();return null};return _0x6546x18}}function handleError(_0x6546x15,_0x6546x16,_0x6546x17){_0x6546x16= _0x6546x16|| 500;return function(_0x6546x27){logger[_0xd626[50]](_0xd626[22],_0x6546x17,_0x6546x16,JSON[_0xd626[31]](_0x6546x27));delete _0x6546x27[_0xd626[51]];_0x6546x15[_0xd626[29]](_0x6546x16)[_0xd626[52]](_0x6546x27)}}exports[_0xd626[53]]= function(_0x6546x28,_0x6546x15){var _0x6546x1b={},_0x6546x29={};_0x6546x29[_0xd626[54]]= _[_0xd626[57]](db[_0xd626[56]][_0xd626[55]]);_0x6546x29[_0xd626[58]]= _[_0xd626[57]](_0x6546x28[_0xd626[58]]);_0x6546x29[_0xd626[59]]= _[_0xd626[60]](_0x6546x29[_0xd626[54]],_0x6546x29[_0xd626[58]]);_0x6546x1b[_0xd626[61]]= _[_0xd626[60]](_0x6546x29[_0xd626[54]],qs[_0xd626[62]](_0x6546x28[_0xd626[58]][_0xd626[62]]));_0x6546x1b[_0xd626[61]]= (_0x6546x1b[_0xd626[61]][_0xd626[63]])?_0x6546x1b[_0xd626[61]]:_0x6546x29[_0xd626[54]];if(!_0x6546x28[_0xd626[58]][_0xd626[65]](_0xd626[64])){_0x6546x1b[_0xd626[35]]= qs[_0xd626[35]](_0x6546x28[_0xd626[58]][_0xd626[35]]);_0x6546x1b[_0xd626[34]]= qs[_0xd626[34]](_0x6546x28[_0xd626[58]][_0xd626[34]])};_0x6546x1b[_0xd626[66]]= qs[_0xd626[67]](_0x6546x28[_0xd626[58]][_0xd626[67]]);_0x6546x1b[_0xd626[68]]= qs[_0xd626[59]](_[_0xd626[69]](_0x6546x28[_0xd626[58]],_0x6546x29[_0xd626[59]]));if(_0x6546x28[_0xd626[58]][_0xd626[70]]){_0x6546x1b[_0xd626[68]]= _[_0xd626[73]](_0x6546x1b[_0xd626[68]],{$or:_[_0xd626[72]](_0x6546x1b[_0xd626[61]],function(_0x6546x2a){var _0x6546x2b={};_0x6546x2b[_0x6546x2a]= {$like:_0xd626[71]+ _0x6546x28[_0xd626[58]][_0xd626[70]]+ _0xd626[71]};return _0x6546x2b})})};_0x6546x1b= _[_0xd626[73]]({},_0x6546x1b,_0x6546x28[_0xd626[74]]);return db[_0xd626[56]][_0xd626[76]](_0x6546x1b)[_0xd626[45]](respondWithFilteredResult(_0x6546x15,_0x6546x1b,_0xd626[53]))[_0xd626[75]](handleError(_0x6546x15,null,_0xd626[53]))};exports[_0xd626[77]]= function(_0x6546x28,_0x6546x15){var _0x6546x1b={raw:true,where:{id:_0x6546x28[_0xd626[79]][_0xd626[78]]}},_0x6546x29={};_0x6546x29[_0xd626[54]]= _[_0xd626[57]](db[_0xd626[56]][_0xd626[55]]);_0x6546x29[_0xd626[58]]= _[_0xd626[57]](_0x6546x28[_0xd626[58]]);_0x6546x29[_0xd626[59]]= _[_0xd626[60]](_0x6546x29[_0xd626[54]],_0x6546x29[_0xd626[58]]);_0x6546x1b[_0xd626[61]]= _[_0xd626[60]](_0x6546x29[_0xd626[54]],qs[_0xd626[62]](_0x6546x28[_0xd626[58]][_0xd626[62]]));_0x6546x1b[_0xd626[61]]= (_0x6546x1b[_0xd626[61]][_0xd626[63]])?_0x6546x1b[_0xd626[61]]:_0x6546x29[_0xd626[54]];_0x6546x1b= _[_0xd626[73]]({},_0x6546x1b,_0x6546x28[_0xd626[74]]);return db[_0xd626[56]][_0xd626[80]](_0x6546x1b)[_0xd626[45]](handleEntityNotFound(_0x6546x15,null,_0xd626[77]))[_0xd626[45]](respondWithResult(_0x6546x15,null,_0xd626[77]))[_0xd626[75]](handleError(_0x6546x15,null,_0xd626[77]))};exports[_0xd626[81]]= function(_0x6546x28,_0x6546x15){return db[_0xd626[56]][_0xd626[81]](_0x6546x28[_0xd626[82]],{})[_0xd626[45]](respondWithResult(_0x6546x15,201,_0xd626[81]))[_0xd626[75]](handleError(_0x6546x15,null,_0xd626[81]))};exports[_0xd626[46]]= function(_0x6546x28,_0x6546x15){if(_0x6546x28[_0xd626[82]][_0xd626[78]]){delete _0x6546x28[_0xd626[82]][_0xd626[78]]};return db[_0xd626[56]][_0xd626[80]]({where:{id:_0x6546x28[_0xd626[79]][_0xd626[78]]}})[_0xd626[45]](handleEntityNotFound(_0x6546x15,null,_0xd626[46]))[_0xd626[45]](saveUpdates(_0x6546x28[_0xd626[82]],null,_0xd626[46]))[_0xd626[45]](respondWithResult(_0x6546x15,null,_0xd626[46]))[_0xd626[75]](handleError(_0x6546x15,null,_0xd626[46]))};exports[_0xd626[48]]= function(_0x6546x28,_0x6546x15){return db[_0xd626[56]][_0xd626[80]]({where:{id:_0x6546x28[_0xd626[79]][_0xd626[78]]}})[_0xd626[45]](handleEntityNotFound(_0x6546x15,null,_0xd626[48]))[_0xd626[45]](removeEntity(_0x6546x15,null,_0xd626[48]))[_0xd626[75]](handleError(_0x6546x15,null,_0xd626[48]))};exports[_0xd626[83]]= function(_0x6546x28,_0x6546x15,_0x6546x2c){return db[_0xd626[56]][_0xd626[80]]({where:{id:_0x6546x28[_0xd626[79]][_0xd626[78]]},attributes:[_0xd626[78],_0xd626[86]]})[_0xd626[45]](handleEntityNotFound(_0x6546x15,null,_0xd626[83]))[_0xd626[45]](function(_0x6546x18){if(_0x6546x18){logger[_0xd626[24]](_0xd626[85],_0xd626[83],_0xd626[30]);logger[_0xd626[26]](_0xd626[22],_0xd626[83],_0xd626[30],JSON[_0xd626[31]](_0x6546x18));if(!_0x6546x18[_0xd626[86]]){throw  new db[_0xd626[88]].ValidationError(_0xd626[87])};_0x6546x15[_0xd626[40]]({"\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65":_0xd626[89]});return _0x6546x15[_0xd626[52]]( new Buffer(_0x6546x18[_0xd626[86]]))}})[_0xd626[75]](handleError(_0x6546x15,null,_0xd626[84]))}
\ No newline at end of file
+var _0x1262=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x2E\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x61\x75\x64\x69\x6F\x2F\x77\x61\x76"];_0x1262[0];var jsonpatch=require(_0x1262[1]);var rp=require(_0x1262[2]);var moment=require(_0x1262[3]);var BPromise=require(_0x1262[4]);var util=require(_0x1262[5]);var path=require(_0x1262[6]);var sox=require(_0x1262[7]);var ejs=require(_0x1262[8]);var fs=require(_0x1262[9]);var _=require(_0x1262[10]);var squel=require(_0x1262[11]);var crypto=require(_0x1262[12]);var jsforce=require(_0x1262[13]);var toCsv=require(_0x1262[14]);var qs=require(_0x1262[15]);var logger=require(_0x1262[17])(_0x1262[16]);var utils=require(_0x1262[18]);var config=require(_0x1262[19]);var db=require(_0x1262[21])[_0x1262[20]];function respondWithStatusCode(_0xed0cx15,_0xed0cx16,_0xed0cx17){_0xed0cx16= _0xed0cx16|| 204;return function(_0xed0cx18){if(_0xed0cx18){logger[_0x1262[24]](_0x1262[22],_0xed0cx17,_0xed0cx16,_0x1262[23]);logger[_0x1262[26]](_0x1262[25],_0xed0cx17,_0xed0cx16,_0x1262[23]);return _0xed0cx15[_0x1262[27]](_0xed0cx16)};return _0xed0cx15[_0x1262[29]](304)[_0x1262[28]]()}}function respondWithResult(_0xed0cx15,_0xed0cx16,_0xed0cx17){_0xed0cx16= _0xed0cx16|| 200;return function(_0xed0cx18){if(_0xed0cx18){logger[_0x1262[24]](_0x1262[22],_0xed0cx17,_0xed0cx16,_0x1262[30]);logger[_0x1262[26]](_0x1262[25],_0xed0cx17,_0xed0cx16,_0x1262[30],JSON[_0x1262[31]](_0xed0cx18));return _0xed0cx15[_0x1262[29]](_0xed0cx16)[_0x1262[32]](_0xed0cx18)};return _0xed0cx15[_0x1262[29]](304)[_0x1262[28]]()}}function respondWithFilteredResult(_0xed0cx15,_0xed0cx1b,_0xed0cx17){return function(_0xed0cx18){if(_0xed0cx18){var _0xed0cx1c=_0xed0cx18[_0x1262[33]],_0xed0cx1d=_0xed0cx1b[_0x1262[34]],_0xed0cx1e=_0xed0cx1b[_0x1262[34]]+ _0xed0cx1b[_0x1262[35]],_0xed0cx16;if(_0xed0cx1e>= _0xed0cx1c){_0xed0cx1e= _0xed0cx1c;_0xed0cx16= 200}else {_0xed0cx16= 206};_0xed0cx15[_0x1262[29]](_0xed0cx16);logger[_0x1262[24]](_0x1262[22],_0xed0cx17,_0xed0cx16,_0x1262[36]);logger[_0x1262[26]](_0x1262[25],_0xed0cx17,_0xed0cx16,_0x1262[30],JSON[_0x1262[31]](_0xed0cx18));return _0xed0cx15[_0x1262[40]](_0x1262[37],_0xed0cx1d+ _0x1262[38]+ _0xed0cx1e+ _0x1262[39]+ _0xed0cx1c)[_0x1262[32]](_0xed0cx18)};return null}}function patchUpdates(_0xed0cx20){return function(_0xed0cx18){try{jsonpatch[_0x1262[41]](_0xed0cx18,_0xed0cx20,true)}catch(err){return BPromise[_0x1262[42]](err)};return _0xed0cx18[_0x1262[43]]()}}function saveUpdates(_0xed0cx22,_0xed0cx16,_0xed0cx17){return function(_0xed0cx18){if(_0xed0cx18){return _0xed0cx18[_0x1262[46]](_0xed0cx22)[_0x1262[45]](function(_0xed0cx23){logger[_0x1262[24]](_0x1262[22],_0xed0cx17,_0xed0cx16,_0x1262[44]);logger[_0x1262[26]](_0x1262[25],_0xed0cx17,_0xed0cx16,_0x1262[44],JSON[_0x1262[31]](_0xed0cx18));return _0xed0cx23})};return null}}function removeEntity(_0xed0cx15,_0xed0cx16,_0xed0cx17){return function(_0xed0cx18){if(_0xed0cx18){return _0xed0cx18[_0x1262[48]]()[_0x1262[45]](function(){logger[_0x1262[24]](_0x1262[22],_0xed0cx17,_0xed0cx16,_0x1262[47]);logger[_0x1262[26]](_0x1262[25],_0xed0cx17,_0xed0cx16,_0x1262[47],JSON[_0x1262[31]](_0xed0cx18));_0xed0cx15[_0x1262[29]](204)[_0x1262[28]]()})}}}function handleEntityNotFound(_0xed0cx15,_0xed0cx16,_0xed0cx17){return function(_0xed0cx18){if(!_0xed0cx18){logger[_0x1262[50]](_0x1262[22],_0xed0cx17,404,_0x1262[49]);_0xed0cx15[_0x1262[29]](404)[_0x1262[28]]();return null};return _0xed0cx18}}function handleError(_0xed0cx15,_0xed0cx16,_0xed0cx17){_0xed0cx16= _0xed0cx16|| 500;return function(_0xed0cx27){logger[_0x1262[50]](_0x1262[22],_0xed0cx17,_0xed0cx16,JSON[_0x1262[31]](_0xed0cx27));delete _0xed0cx27[_0x1262[51]];_0xed0cx15[_0x1262[29]](_0xed0cx16)[_0x1262[52]](_0xed0cx27)}}exports[_0x1262[53]]= function(_0xed0cx28,_0xed0cx15){var _0xed0cx1b={},_0xed0cx29={};_0xed0cx29[_0x1262[54]]= _[_0x1262[57]](db[_0x1262[56]][_0x1262[55]]);_0xed0cx29[_0x1262[58]]= _[_0x1262[57]](_0xed0cx28[_0x1262[58]]);_0xed0cx29[_0x1262[59]]= _[_0x1262[60]](_0xed0cx29[_0x1262[54]],_0xed0cx29[_0x1262[58]]);_0xed0cx1b[_0x1262[61]]= _[_0x1262[60]](_0xed0cx29[_0x1262[54]],qs[_0x1262[62]](_0xed0cx28[_0x1262[58]][_0x1262[62]]));_0xed0cx1b[_0x1262[61]]= (_0xed0cx1b[_0x1262[61]][_0x1262[63]])?_0xed0cx1b[_0x1262[61]]:_0xed0cx29[_0x1262[54]];if(!_0xed0cx28[_0x1262[58]][_0x1262[65]](_0x1262[64])){_0xed0cx1b[_0x1262[35]]= qs[_0x1262[35]](_0xed0cx28[_0x1262[58]][_0x1262[35]]);_0xed0cx1b[_0x1262[34]]= qs[_0x1262[34]](_0xed0cx28[_0x1262[58]][_0x1262[34]])};_0xed0cx1b[_0x1262[66]]= qs[_0x1262[67]](_0xed0cx28[_0x1262[58]][_0x1262[67]]);_0xed0cx1b[_0x1262[68]]= qs[_0x1262[59]](_[_0x1262[69]](_0xed0cx28[_0x1262[58]],_0xed0cx29[_0x1262[59]]));if(_0xed0cx28[_0x1262[58]][_0x1262[70]]){_0xed0cx1b[_0x1262[68]]= _[_0x1262[73]](_0xed0cx1b[_0x1262[68]],{$or:_[_0x1262[72]](_0xed0cx1b[_0x1262[61]],function(_0xed0cx2a){var _0xed0cx2b={};_0xed0cx2b[_0xed0cx2a]= {$like:_0x1262[71]+ _0xed0cx28[_0x1262[58]][_0x1262[70]]+ _0x1262[71]};return _0xed0cx2b})})};_0xed0cx1b= _[_0x1262[73]]({},_0xed0cx1b,_0xed0cx28[_0x1262[74]]);return db[_0x1262[56]][_0x1262[76]](_0xed0cx1b)[_0x1262[45]](respondWithFilteredResult(_0xed0cx15,_0xed0cx1b,_0x1262[53]))[_0x1262[75]](handleError(_0xed0cx15,null,_0x1262[53]))};exports[_0x1262[77]]= function(_0xed0cx28,_0xed0cx15){var _0xed0cx1b={raw:true,where:{id:_0xed0cx28[_0x1262[79]][_0x1262[78]]}},_0xed0cx29={};_0xed0cx29[_0x1262[54]]= _[_0x1262[57]](db[_0x1262[56]][_0x1262[55]]);_0xed0cx29[_0x1262[58]]= _[_0x1262[57]](_0xed0cx28[_0x1262[58]]);_0xed0cx29[_0x1262[59]]= _[_0x1262[60]](_0xed0cx29[_0x1262[54]],_0xed0cx29[_0x1262[58]]);_0xed0cx1b[_0x1262[61]]= _[_0x1262[60]](_0xed0cx29[_0x1262[54]],qs[_0x1262[62]](_0xed0cx28[_0x1262[58]][_0x1262[62]]));_0xed0cx1b[_0x1262[61]]= (_0xed0cx1b[_0x1262[61]][_0x1262[63]])?_0xed0cx1b[_0x1262[61]]:_0xed0cx29[_0x1262[54]];_0xed0cx1b= _[_0x1262[73]]({},_0xed0cx1b,_0xed0cx28[_0x1262[74]]);return db[_0x1262[56]][_0x1262[80]](_0xed0cx1b)[_0x1262[45]](handleEntityNotFound(_0xed0cx15,null,_0x1262[77]))[_0x1262[45]](respondWithResult(_0xed0cx15,null,_0x1262[77]))[_0x1262[75]](handleError(_0xed0cx15,null,_0x1262[77]))};exports[_0x1262[81]]= function(_0xed0cx28,_0xed0cx15){return db[_0x1262[56]][_0x1262[81]](_0xed0cx28[_0x1262[82]],{})[_0x1262[45]](respondWithResult(_0xed0cx15,201,_0x1262[81]))[_0x1262[75]](handleError(_0xed0cx15,null,_0x1262[81]))};exports[_0x1262[46]]= function(_0xed0cx28,_0xed0cx15){if(_0xed0cx28[_0x1262[82]][_0x1262[78]]){delete _0xed0cx28[_0x1262[82]][_0x1262[78]]};return db[_0x1262[56]][_0x1262[80]]({where:{id:_0xed0cx28[_0x1262[79]][_0x1262[78]]}})[_0x1262[45]](handleEntityNotFound(_0xed0cx15,null,_0x1262[46]))[_0x1262[45]](saveUpdates(_0xed0cx28[_0x1262[82]],null,_0x1262[46]))[_0x1262[45]](respondWithResult(_0xed0cx15,null,_0x1262[46]))[_0x1262[75]](handleError(_0xed0cx15,null,_0x1262[46]))};exports[_0x1262[48]]= function(_0xed0cx28,_0xed0cx15){return db[_0x1262[56]][_0x1262[80]]({where:{id:_0xed0cx28[_0x1262[79]][_0x1262[78]]}})[_0x1262[45]](handleEntityNotFound(_0xed0cx15,null,_0x1262[48]))[_0x1262[45]](removeEntity(_0xed0cx15,null,_0x1262[48]))[_0x1262[75]](handleError(_0xed0cx15,null,_0x1262[48]))};exports[_0x1262[83]]= function(_0xed0cx28,_0xed0cx15,_0xed0cx2c){return db[_0x1262[56]][_0x1262[80]]({where:{id:_0xed0cx28[_0x1262[79]][_0x1262[78]]},attributes:[_0x1262[78],_0x1262[86]]})[_0x1262[45]](handleEntityNotFound(_0xed0cx15,null,_0x1262[83]))[_0x1262[45]](function(_0xed0cx18){if(_0xed0cx18){logger[_0x1262[24]](_0x1262[85],_0x1262[83],_0x1262[30]);logger[_0x1262[26]](_0x1262[22],_0x1262[83],_0x1262[30],JSON[_0x1262[31]](_0xed0cx18));if(!_0xed0cx18[_0x1262[86]]){throw  new db[_0x1262[88]].ValidationError(_0x1262[87])};_0xed0cx15[_0x1262[40]]({"\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65":_0x1262[89]});return _0xed0cx15[_0x1262[52]]( new Buffer(_0xed0cx18[_0x1262[86]]))}})[_0x1262[75]](handleError(_0xed0cx15,null,_0x1262[84]))}
\ No newline at end of file
index 16ef876..6bd9044 100644 (file)
@@ -1 +1 @@
-var _0x59a1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x76\x6F\x69\x63\x65\x5F\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x69\x72","\x64\x65\x66\x69\x6E\x65"];_0x59a1[0];var _=require(_0x59a1[1]);var util=require(_0x59a1[2]);var logger=require(_0x59a1[4])(_0x59a1[3]);var attributes=require(_0x59a1[5]);module[_0x59a1[6]]= function(_0xc8ecx5,_0xc8ecx6){return _0xc8ecx5[_0x59a1[10]](_0x59a1[7],attributes,{tableName:_0x59a1[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0x59a1[9],"\x66\x69\x65\x6C\x64\x73":[_0x59a1[9]]}],timestamps:false})}
\ No newline at end of file
+var _0x67e1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x76\x6F\x69\x63\x65\x5F\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C\x5F\x6D\x65\x73\x73\x61\x67\x65\x73","\x64\x69\x72","\x64\x65\x66\x69\x6E\x65"];_0x67e1[0];var _=require(_0x67e1[1]);var util=require(_0x67e1[2]);var logger=require(_0x67e1[4])(_0x67e1[3]);var attributes=require(_0x67e1[5]);module[_0x67e1[6]]= function(_0x5113x5,_0x5113x6){return _0x5113x5[_0x67e1[10]](_0x67e1[7],attributes,{tableName:_0x67e1[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0x67e1[9],"\x66\x69\x65\x6C\x64\x73":[_0x67e1[9]]}],timestamps:false})}
\ No newline at end of file
index 08f4a92..a95eeaf 100644 (file)
@@ -1 +1 @@
-var _0xc320=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xc320[0];var _=require(_0xc320[1]);var util=require(_0xc320[2]);var moment=require(_0xc320[3]);var BPromise=require(_0xc320[4]);var db=require(_0xc320[6])[_0xc320[5]];var utils=require(_0xc320[7]);var logger=require(_0xc320[9])(_0xc320[8]);var jayson=require(_0xc320[10]);var client=jayson[_0xc320[12]][_0xc320[11]]({port:9002});function respondWithRpcPromise(_0xd6fcxb,_0xd6fcxc,_0xd6fcxd){return  new BPromise(function(_0xd6fcxe,_0xd6fcxf){return client[_0xc320[25]](_0xd6fcxb,_0xd6fcxd)[_0xc320[24]](function(_0xd6fcx11){logger[_0xc320[17]](_0xc320[13],_0xd6fcxc,_0xc320[16]);logger[_0xc320[20]](_0xc320[18],_0xd6fcxc,_0xc320[16],JSON[_0xc320[19]](_0xd6fcx11));if(_0xd6fcx11[_0xc320[14]]){if(_0xd6fcx11[_0xc320[14]][_0xc320[21]]=== 500){logger[_0xc320[14]](_0xc320[13],_0xd6fcxc,_0xd6fcx11[_0xc320[14]][_0xc320[22]]);return _0xd6fcxf(_0xd6fcx11[_0xc320[14]][_0xc320[22]])};logger[_0xc320[14]](_0xc320[13],_0xd6fcxc,_0xd6fcx11[_0xc320[14]][_0xc320[22]]);return _0xd6fcxe(_0xd6fcx11[_0xc320[14]][_0xc320[22]])}else {logger[_0xc320[17]](_0xc320[13],_0xd6fcxc,_0xc320[16]);_0xd6fcxe(_0xd6fcx11[_0xc320[23]][_0xc320[22]])}})[_0xc320[15]](function(_0xd6fcx10){logger[_0xc320[14]](_0xc320[13],_0xd6fcxc,_0xd6fcx10);_0xd6fcxf(_0xd6fcx10)})})}
\ No newline at end of file
+var _0x42ad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0x42ad[0];var _=require(_0x42ad[1]);var util=require(_0x42ad[2]);var moment=require(_0x42ad[3]);var BPromise=require(_0x42ad[4]);var db=require(_0x42ad[6])[_0x42ad[5]];var utils=require(_0x42ad[7]);var logger=require(_0x42ad[9])(_0x42ad[8]);var jayson=require(_0x42ad[10]);var client=jayson[_0x42ad[12]][_0x42ad[11]]({port:9002});function respondWithRpcPromise(_0x425exb,_0x425exc,_0x425exd){return  new BPromise(function(_0x425exe,_0x425exf){return client[_0x42ad[25]](_0x425exb,_0x425exd)[_0x42ad[24]](function(_0x425ex11){logger[_0x42ad[17]](_0x42ad[13],_0x425exc,_0x42ad[16]);logger[_0x42ad[20]](_0x42ad[18],_0x425exc,_0x42ad[16],JSON[_0x42ad[19]](_0x425ex11));if(_0x425ex11[_0x42ad[14]]){if(_0x425ex11[_0x42ad[14]][_0x42ad[21]]=== 500){logger[_0x42ad[14]](_0x42ad[13],_0x425exc,_0x425ex11[_0x42ad[14]][_0x42ad[22]]);return _0x425exf(_0x425ex11[_0x42ad[14]][_0x42ad[22]])};logger[_0x42ad[14]](_0x42ad[13],_0x425exc,_0x425ex11[_0x42ad[14]][_0x42ad[22]]);return _0x425exe(_0x425ex11[_0x42ad[14]][_0x42ad[22]])}else {logger[_0x42ad[17]](_0x42ad[13],_0x425exc,_0x42ad[16]);_0x425exe(_0x425ex11[_0x42ad[23]][_0x42ad[22]])}})[_0x42ad[15]](function(_0x425ex10){logger[_0x42ad[14]](_0x42ad[13],_0x425exc,_0x425ex10);_0x425exf(_0x425ex10)})})}
\ No newline at end of file
index 6ed607d..219ceb4 100644 (file)
@@ -1 +1 @@
-var _0x5adc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x73\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x6F\x75\x6E\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x53\x6F\x75\x6E\x64","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x2F\x3A\x69\x64\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x3A\x69\x64\x32","\x72\x65\x6D\x6F\x76\x65\x53\x6F\x75\x6E\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x5adc[0];var multer=require(_0x5adc[1]);var util=require(_0x5adc[2]);var path=require(_0x5adc[3]);var express=require(_0x5adc[4]);var router=express.Router();var auth=require(_0x5adc[5]);var config=require(_0x5adc[6]);var controller=require(_0x5adc[7]);router[_0x5adc[11]](_0x5adc[8],auth[_0x5adc[9]](),controller[_0x5adc[10]]);router[_0x5adc[11]](_0x5adc[12],auth[_0x5adc[9]](),controller[_0x5adc[13]]);router[_0x5adc[11]](_0x5adc[14],auth[_0x5adc[9]](),controller[_0x5adc[15]]);router[_0x5adc[17]](_0x5adc[8],auth[_0x5adc[9]](),controller[_0x5adc[16]]);router[_0x5adc[17]](_0x5adc[14],auth[_0x5adc[9]](),controller[_0x5adc[18]]);router[_0x5adc[20]](_0x5adc[12],auth[_0x5adc[9]](),controller[_0x5adc[19]]);router[_0x5adc[22]](_0x5adc[12],auth[_0x5adc[9]](),controller[_0x5adc[21]]);router[_0x5adc[22]](_0x5adc[23],auth[_0x5adc[9]](),controller[_0x5adc[24]]);module[_0x5adc[25]]= router
\ No newline at end of file
+var _0x24fe=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x73\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x6F\x75\x6E\x64\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x53\x6F\x75\x6E\x64","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x2F\x3A\x69\x64\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x3A\x69\x64\x32","\x72\x65\x6D\x6F\x76\x65\x53\x6F\x75\x6E\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x24fe[0];var multer=require(_0x24fe[1]);var util=require(_0x24fe[2]);var path=require(_0x24fe[3]);var express=require(_0x24fe[4]);var router=express.Router();var auth=require(_0x24fe[5]);var config=require(_0x24fe[6]);var controller=require(_0x24fe[7]);router[_0x24fe[11]](_0x24fe[8],auth[_0x24fe[9]](),controller[_0x24fe[10]]);router[_0x24fe[11]](_0x24fe[12],auth[_0x24fe[9]](),controller[_0x24fe[13]]);router[_0x24fe[11]](_0x24fe[14],auth[_0x24fe[9]](),controller[_0x24fe[15]]);router[_0x24fe[17]](_0x24fe[8],auth[_0x24fe[9]](),controller[_0x24fe[16]]);router[_0x24fe[17]](_0x24fe[14],auth[_0x24fe[9]](),controller[_0x24fe[18]]);router[_0x24fe[20]](_0x24fe[12],auth[_0x24fe[9]](),controller[_0x24fe[19]]);router[_0x24fe[22]](_0x24fe[12],auth[_0x24fe[9]](),controller[_0x24fe[21]]);router[_0x24fe[22]](_0x24fe[23],auth[_0x24fe[9]](),controller[_0x24fe[24]]);module[_0x24fe[25]]= router
\ No newline at end of file
index 293d693..a187b07 100644 (file)
@@ -1 +1 @@
-var _0xef35=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x63\x75\x73\x74\x6F\x6D","\x66\x69\x6C\x65\x73","\x6D\x70\x33\x6E\x62","\x71\x75\x69\x65\x74\x6D\x70\x33\x6E\x62","\x71\x75\x69\x65\x74\x6D\x70\x33","\x6D\x70\x33","\x61\x6C\x70\x68\x61","\x54\x49\x4D\x45\x53\x54\x41\x4D\x50","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xef35[0];var Sequelize=require(_0xef35[1]);module[_0xef35[2]]= {name:{type:Sequelize[_0xef35[3]],allowNull:false,unique:_0xef35[4]},mode:{type:Sequelize.ENUM(_0xef35[5],_0xef35[6],_0xef35[7],_0xef35[8],_0xef35[9],_0xef35[10]),allowNull:true,defaultValue:_0xef35[6]},directory:{type:Sequelize[_0xef35[3]],allowNull:true},application:{type:Sequelize[_0xef35[3]],allowNull:true},digit:{type:Sequelize[_0xef35[3]],allowNull:true},sort:{type:Sequelize[_0xef35[3]],allowNull:true,defaultValue:_0xef35[11]},format:{type:Sequelize[_0xef35[3]],allowNull:true},stamp:{type:_0xef35[12]},defaultEntry:{type:Sequelize[_0xef35[13]],defaultValue:0}}
\ No newline at end of file
+var _0x405e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x63\x75\x73\x74\x6F\x6D","\x66\x69\x6C\x65\x73","\x6D\x70\x33\x6E\x62","\x71\x75\x69\x65\x74\x6D\x70\x33\x6E\x62","\x71\x75\x69\x65\x74\x6D\x70\x33","\x6D\x70\x33","\x61\x6C\x70\x68\x61","\x54\x49\x4D\x45\x53\x54\x41\x4D\x50","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x405e[0];var Sequelize=require(_0x405e[1]);module[_0x405e[2]]= {name:{type:Sequelize[_0x405e[3]],allowNull:false,unique:_0x405e[4]},mode:{type:Sequelize.ENUM(_0x405e[5],_0x405e[6],_0x405e[7],_0x405e[8],_0x405e[9],_0x405e[10]),allowNull:true,defaultValue:_0x405e[6]},directory:{type:Sequelize[_0x405e[3]],allowNull:true},application:{type:Sequelize[_0x405e[3]],allowNull:true},digit:{type:Sequelize[_0x405e[3]],allowNull:true},sort:{type:Sequelize[_0x405e[3]],allowNull:true,defaultValue:_0x405e[11]},format:{type:Sequelize[_0x405e[3]],allowNull:true},stamp:{type:_0x405e[12]},defaultEntry:{type:Sequelize[_0x405e[13]],defaultValue:0}}
\ No newline at end of file
index 3a5f01b..3242de5 100644 (file)
@@ -1 +1 @@
-var _0x55c5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x6D\x6F\x64\x65","\x66\x69\x6C\x65\x73","\x64\x69\x72\x65\x63\x74\x6F\x72\x79","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x6D\x6F\x68","\x6A\x6F\x69\x6E","\x30\x37\x37\x37","\x6D\x6B\x64\x69\x72\x53\x79\x6E\x63","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x65\x73\x73\x61\x67\x65","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x75\x6E\x6C\x69\x6E\x6B\x53\x79\x6E\x63","\x66\x6F\x72\x45\x61\x63\x68","\x72\x65\x61\x64\x64\x69\x72\x53\x79\x6E\x63","\x72\x6D\x64\x69\x72\x53\x79\x6E\x63","\x61\x64\x64\x53\x6F\x75\x6E\x64","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x63\x6F\x6E\x76\x65\x72\x74\x65\x64","\x25\x73\x2E\x25\x73","\x73\x61\x76\x65\x5F\x6E\x61\x6D\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x62\x61\x73\x65\x6E\x61\x6D\x65","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x66\x6F\x72\x6D\x61\x74","\x66\x6F\x72\x6D\x61\x74","\x73\x79\x6D\x6C\x69\x6E\x6B\x53\x79\x6E\x63","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x66\x69\x6E\x64\x4F\x6E\x65","\x53\x6F\x75\x6E\x64","\x72\x65\x6D\x6F\x76\x65\x53\x6F\x75\x6E\x64","\x69\x64\x32","\x67\x65\x74\x53\x6F\x75\x6E\x64\x73"];_0x55c5[0];var jsonpatch=require(_0x55c5[1]);var rp=require(_0x55c5[2]);var moment=require(_0x55c5[3]);var BPromise=require(_0x55c5[4]);var util=require(_0x55c5[5]);var path=require(_0x55c5[6]);var sox=require(_0x55c5[7]);var ejs=require(_0x55c5[8]);var fs=require(_0x55c5[9]);var _=require(_0x55c5[10]);var squel=require(_0x55c5[11]);var crypto=require(_0x55c5[12]);var jsforce=require(_0x55c5[13]);var toCsv=require(_0x55c5[14]);var qs=require(_0x55c5[15]);var logger=require(_0x55c5[17])(_0x55c5[16]);var utils=require(_0x55c5[18]);var config=require(_0x55c5[19]);var db=require(_0x55c5[21])[_0x55c5[20]];function respondWithStatusCode(_0x4427x15,_0x4427x16,_0x4427x17){_0x4427x16= _0x4427x16|| 204;return function(_0x4427x18){if(_0x4427x18){logger[_0x55c5[24]](_0x55c5[22],_0x4427x17,_0x4427x16,_0x55c5[23]);logger[_0x55c5[26]](_0x55c5[25],_0x4427x17,_0x4427x16,_0x55c5[23]);return _0x4427x15[_0x55c5[27]](_0x4427x16)};return _0x4427x15[_0x55c5[29]](304)[_0x55c5[28]]()}}function respondWithResult(_0x4427x15,_0x4427x16,_0x4427x17){_0x4427x16= _0x4427x16|| 200;return function(_0x4427x18){if(_0x4427x18){logger[_0x55c5[24]](_0x55c5[22],_0x4427x17,_0x4427x16,_0x55c5[30]);logger[_0x55c5[26]](_0x55c5[25],_0x4427x17,_0x4427x16,_0x55c5[30],JSON[_0x55c5[31]](_0x4427x18));return _0x4427x15[_0x55c5[29]](_0x4427x16)[_0x55c5[32]](_0x4427x18)};return _0x4427x15[_0x55c5[29]](304)[_0x55c5[28]]()}}function respondWithFilteredResult(_0x4427x15,_0x4427x1b,_0x4427x17){return function(_0x4427x18){if(_0x4427x18){var _0x4427x1c=_0x4427x18[_0x55c5[33]],_0x4427x1d=_0x4427x1b[_0x55c5[34]],_0x4427x1e=_0x4427x1b[_0x55c5[34]]+ _0x4427x1b[_0x55c5[35]],_0x4427x16;if(_0x4427x1e>= _0x4427x1c){_0x4427x1e= _0x4427x1c;_0x4427x16= 200}else {_0x4427x16= 206};_0x4427x15[_0x55c5[29]](_0x4427x16);logger[_0x55c5[24]](_0x55c5[22],_0x4427x17,_0x4427x16,_0x55c5[36]);logger[_0x55c5[26]](_0x55c5[25],_0x4427x17,_0x4427x16,_0x55c5[30],JSON[_0x55c5[31]](_0x4427x18));return _0x4427x15[_0x55c5[40]](_0x55c5[37],_0x4427x1d+ _0x55c5[38]+ _0x4427x1e+ _0x55c5[39]+ _0x4427x1c)[_0x55c5[32]](_0x4427x18)};return null}}function patchUpdates(_0x4427x20){return function(_0x4427x18){try{jsonpatch[_0x55c5[41]](_0x4427x18,_0x4427x20,true)}catch(err){return BPromise[_0x55c5[42]](err)};return _0x4427x18[_0x55c5[43]]()}}function saveUpdates(_0x4427x22,_0x4427x16,_0x4427x17){return function(_0x4427x18){if(_0x4427x18){return _0x4427x18[_0x55c5[46]](_0x4427x22)[_0x55c5[45]](function(_0x4427x23){logger[_0x55c5[24]](_0x55c5[22],_0x4427x17,_0x4427x16,_0x55c5[44]);logger[_0x55c5[26]](_0x55c5[25],_0x4427x17,_0x4427x16,_0x55c5[44],JSON[_0x55c5[31]](_0x4427x18));return _0x4427x23})};return null}}function removeEntity(_0x4427x15,_0x4427x16,_0x4427x17){return function(_0x4427x18){if(_0x4427x18){return _0x4427x18[_0x55c5[48]]()[_0x55c5[45]](function(){logger[_0x55c5[24]](_0x55c5[22],_0x4427x17,_0x4427x16,_0x55c5[47]);logger[_0x55c5[26]](_0x55c5[25],_0x4427x17,_0x4427x16,_0x55c5[47],JSON[_0x55c5[31]](_0x4427x18));_0x4427x15[_0x55c5[29]](204)[_0x55c5[28]]()})}}}function handleEntityNotFound(_0x4427x15,_0x4427x16,_0x4427x17){return function(_0x4427x18){if(!_0x4427x18){logger[_0x55c5[50]](_0x55c5[22],_0x4427x17,404,_0x55c5[49]);_0x4427x15[_0x55c5[29]](404)[_0x55c5[28]]();return null};return _0x4427x18}}function handleError(_0x4427x15,_0x4427x16,_0x4427x17){_0x4427x16= _0x4427x16|| 500;return function(_0x4427x27){logger[_0x55c5[50]](_0x55c5[22],_0x4427x17,_0x4427x16,JSON[_0x55c5[31]](_0x4427x27));delete _0x4427x27[_0x55c5[51]];_0x4427x15[_0x55c5[29]](_0x4427x16)[_0x55c5[52]](_0x4427x27)}}exports[_0x55c5[53]]= function(_0x4427x28,_0x4427x15){var _0x4427x1b={},_0x4427x29={};_0x4427x29[_0x55c5[54]]= _[_0x55c5[57]](db[_0x55c5[56]][_0x55c5[55]]);_0x4427x29[_0x55c5[58]]= _[_0x55c5[57]](_0x4427x28[_0x55c5[58]]);_0x4427x29[_0x55c5[59]]= _[_0x55c5[60]](_0x4427x29[_0x55c5[54]],_0x4427x29[_0x55c5[58]]);_0x4427x1b[_0x55c5[61]]= _[_0x55c5[60]](_0x4427x29[_0x55c5[54]],qs[_0x55c5[62]](_0x4427x28[_0x55c5[58]][_0x55c5[62]]));_0x4427x1b[_0x55c5[61]]= (_0x4427x1b[_0x55c5[61]][_0x55c5[63]])?_0x4427x1b[_0x55c5[61]]:_0x4427x29[_0x55c5[54]];if(!_0x4427x28[_0x55c5[58]][_0x55c5[65]](_0x55c5[64])){_0x4427x1b[_0x55c5[35]]= qs[_0x55c5[35]](_0x4427x28[_0x55c5[58]][_0x55c5[35]]);_0x4427x1b[_0x55c5[34]]= qs[_0x55c5[34]](_0x4427x28[_0x55c5[58]][_0x55c5[34]])};_0x4427x1b[_0x55c5[66]]= qs[_0x55c5[67]](_0x4427x28[_0x55c5[58]][_0x55c5[67]]);_0x4427x1b[_0x55c5[68]]= qs[_0x55c5[59]](_[_0x55c5[69]](_0x4427x28[_0x55c5[58]],_0x4427x29[_0x55c5[59]]));if(_0x4427x28[_0x55c5[58]][_0x55c5[70]]){_0x4427x1b[_0x55c5[68]]= _[_0x55c5[73]](_0x4427x1b[_0x55c5[68]],{$or:_[_0x55c5[72]](_0x4427x1b[_0x55c5[61]],function(_0x4427x2a){var _0x4427x2b={};_0x4427x2b[_0x4427x2a]= {$like:_0x55c5[71]+ _0x4427x28[_0x55c5[58]][_0x55c5[70]]+ _0x55c5[71]};return _0x4427x2b})})};_0x4427x1b= _[_0x55c5[73]]({},_0x4427x1b,_0x4427x28[_0x55c5[74]]);return db[_0x55c5[56]][_0x55c5[76]](_0x4427x1b)[_0x55c5[45]](respondWithFilteredResult(_0x4427x15,_0x4427x1b,_0x55c5[53]))[_0x55c5[75]](handleError(_0x4427x15,null,_0x55c5[53]))};exports[_0x55c5[77]]= function(_0x4427x28,_0x4427x15){var _0x4427x1b={raw:false,where:{id:_0x4427x28[_0x55c5[79]][_0x55c5[78]]}},_0x4427x29={};_0x4427x29[_0x55c5[54]]= _[_0x55c5[57]](db[_0x55c5[56]][_0x55c5[55]]);_0x4427x29[_0x55c5[58]]= _[_0x55c5[57]](_0x4427x28[_0x55c5[58]]);_0x4427x29[_0x55c5[59]]= _[_0x55c5[60]](_0x4427x29[_0x55c5[54]],_0x4427x29[_0x55c5[58]]);_0x4427x1b[_0x55c5[61]]= _[_0x55c5[60]](_0x4427x29[_0x55c5[54]],qs[_0x55c5[62]](_0x4427x28[_0x55c5[58]][_0x55c5[62]]));_0x4427x1b[_0x55c5[61]]= (_0x4427x1b[_0x55c5[61]][_0x55c5[63]])?_0x4427x1b[_0x55c5[61]]:_0x4427x29[_0x55c5[54]];_0x4427x1b= _[_0x55c5[73]]({},_0x4427x1b,_0x4427x28[_0x55c5[74]]);return db[_0x55c5[56]][_0x55c5[80]](_0x4427x1b)[_0x55c5[45]](handleEntityNotFound(_0x4427x15,null,_0x55c5[77]))[_0x55c5[45]](respondWithResult(_0x4427x15,null,_0x55c5[77]))[_0x55c5[75]](handleError(_0x4427x15,null,_0x55c5[77]))};exports[_0x55c5[46]]= function(_0x4427x28,_0x4427x15){if(_0x4427x28[_0x55c5[81]][_0x55c5[78]]){delete _0x4427x28[_0x55c5[81]][_0x55c5[78]]};return db[_0x55c5[56]][_0x55c5[80]]({where:{id:_0x4427x28[_0x55c5[79]][_0x55c5[78]]}})[_0x55c5[45]](handleEntityNotFound(_0x4427x15,null,_0x55c5[46]))[_0x55c5[45]](saveUpdates(_0x4427x28[_0x55c5[81]],null,_0x55c5[46]))[_0x55c5[45]](respondWithResult(_0x4427x15,null,_0x55c5[46]))[_0x55c5[75]](handleError(_0x4427x15,null,_0x55c5[46]))};exports[_0x55c5[82]]= function(_0x4427x28,_0x4427x15,_0x4427x2c){return db[_0x55c5[92]][_0x55c5[91]](function(_0x4427x2d){if(_0x4427x28[_0x55c5[81]][_0x55c5[83]]=== _0x55c5[84]){_0x4427x28[_0x55c5[81]][_0x55c5[85]]= path[_0x55c5[88]](config[_0x55c5[86]],_0x55c5[87],_0x4427x28[_0x55c5[81]][_0x55c5[51]])};return db[_0x55c5[56]][_0x55c5[82]](_0x4427x28[_0x55c5[81]],{transaction:_0x4427x2d})[_0x55c5[45]](function(_0x4427x18){if(_0x4427x28[_0x55c5[81]][_0x55c5[83]]=== _0x55c5[84]){fs[_0x55c5[90]](_0x4427x18[_0x55c5[85]],parseInt(_0x55c5[89],8))};return _0x4427x18})})[_0x55c5[45]](respondWithResult(_0x4427x15,201,_0x55c5[82]))[_0x55c5[75]](handleError(_0x4427x15,null,_0x55c5[82]))};exports[_0x55c5[48]]= function(_0x4427x28,_0x4427x15,_0x4427x2c){var _0x4427x2e;return db[_0x55c5[56]][_0x55c5[80]]({where:{id:_0x4427x28[_0x55c5[79]][_0x55c5[78]]}})[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18){return db[_0x55c5[92]][_0x55c5[91]](function(_0x4427x2d){return _0x4427x18[_0x55c5[48]]({transaction:_0x4427x2d,raw:true})[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18[_0x55c5[85]]){fs[_0x55c5[97]](_0x4427x18[_0x55c5[85]])[_0x55c5[96]](function(_0x4427x2f){fs[_0x55c5[95]](path[_0x55c5[88]](_0x4427x18[_0x55c5[85]],_0x4427x2f))});fs[_0x55c5[98]](_0x4427x18[_0x55c5[85]])};return _0x4427x18})})[_0x55c5[75]](function(_0x4427x27){throw  new db[_0x55c5[94]].ValidationError(_0x4427x27[_0x55c5[93]])})}})[_0x55c5[45]](handleEntityNotFound(_0x4427x15,null,_0x55c5[48]))[_0x55c5[45]](removeEntity(_0x4427x15,null,_0x55c5[48]))[_0x55c5[75]](handleError(_0x4427x15,null,_0x55c5[48]))};exports[_0x55c5[99]]= function(_0x4427x28,_0x4427x15,_0x4427x2c){return db[_0x55c5[92]][_0x55c5[91]](function(_0x4427x2d){var _0x4427x30;return db[_0x55c5[56]][_0x55c5[80]]({where:{id:_0x4427x28[_0x55c5[79]][_0x55c5[78]]}})[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18){_0x4427x30= _0x4427x18;return _0x4427x18[_0x55c5[99]](_0x4427x28[_0x55c5[81]][_0x55c5[78]],{transaction:_0x4427x2d})}})[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18){return db[_0x55c5[110]][_0x55c5[109]]({where:{id:_0x4427x28[_0x55c5[81]][_0x55c5[78]]},attributes:[_0x55c5[78],_0x55c5[51],_0x55c5[102],_0x55c5[105],_0x55c5[108]],raw:true})}})[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18){var _0x4427x31=path[_0x55c5[88]](config[_0x55c5[86]],_0x55c5[100],util[_0x55c5[106]](_0x55c5[101],path[_0x55c5[104]](_0x4427x18[_0x55c5[102]],path[_0x55c5[103]](_0x4427x18[_0x55c5[102]])),_0x4427x18[_0x55c5[105]]));var _0x4427x32=path[_0x55c5[88]](config[_0x55c5[86]],_0x55c5[87],_0x4427x30[_0x55c5[51]],util[_0x55c5[106]](_0x55c5[101],_0x4427x18[_0x55c5[51]],_0x4427x18[_0x55c5[105]]));fs[_0x55c5[107]](_0x4427x31,_0x4427x32);return _0x4427x18}})[_0x55c5[75]](function(_0x4427x27){throw  new db[_0x55c5[94]].ValidationError(_0x4427x27[_0x55c5[93]])})})[_0x55c5[45]](handleEntityNotFound(_0x4427x15,null,_0x55c5[99]))[_0x55c5[45]](respondWithResult(_0x4427x15,201,_0x55c5[99]))[_0x55c5[75]](handleError(_0x4427x15,null,_0x55c5[99]))};exports[_0x55c5[111]]= function(_0x4427x28,_0x4427x15,_0x4427x2c){return db[_0x55c5[92]][_0x55c5[91]](function(_0x4427x2d){var _0x4427x30;return db[_0x55c5[56]][_0x55c5[109]]({where:{id:_0x4427x28[_0x55c5[79]][_0x55c5[78]]}})[_0x55c5[45]](handleEntityNotFound(_0x4427x15,null,_0x55c5[111]))[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18){_0x4427x30= _0x4427x18;return _0x4427x18[_0x55c5[111]](_0x4427x28[_0x55c5[79]][_0x55c5[112]])}})[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18){return db[_0x55c5[110]][_0x55c5[109]]({where:{id:_0x4427x28[_0x55c5[79]][_0x55c5[112]]},attributes:[_0x55c5[78],_0x55c5[51],_0x55c5[102],_0x55c5[105],_0x55c5[108]],raw:true})}})[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18){fs[_0x55c5[95]](path[_0x55c5[88]](_0x4427x30[_0x55c5[85]],util[_0x55c5[106]](_0x55c5[101],_0x4427x18[_0x55c5[51]],_0x4427x18[_0x55c5[105]])));return _0x4427x18}})[_0x55c5[75]](function(_0x4427x27){throw  new db[_0x55c5[94]].ValidationError(_0x4427x27[_0x55c5[93]])})})[_0x55c5[45]](handleEntityNotFound(_0x4427x15,null,_0x55c5[111]))[_0x55c5[45]](respondWithStatusCode(_0x4427x15,204,_0x55c5[111]))[_0x55c5[75]](handleError(_0x4427x15,null,_0x55c5[111]))};exports[_0x55c5[113]]= function(_0x4427x28,_0x4427x18,_0x4427x2c){var _0x4427x1b={};var _0x4427x29={};var _0x4427x33;var _0x4427x1c;return db[_0x55c5[56]][_0x55c5[109]]({where:{id:_0x4427x28[_0x55c5[79]][_0x55c5[78]]}})[_0x55c5[45]](handleEntityNotFound(_0x4427x18,null,_0x55c5[113]))[_0x55c5[45]](function(_0x4427x18){if(_0x4427x18){_0x4427x33= _0x4427x18;_0x4427x29[_0x55c5[54]]= _[_0x55c5[57]](db[_0x55c5[110]][_0x55c5[55]]);_0x4427x29[_0x55c5[58]]= _[_0x55c5[57]](_0x4427x28[_0x55c5[58]]);_0x4427x29[_0x55c5[59]]= _[_0x55c5[60]](_0x4427x29[_0x55c5[54]],_0x4427x29[_0x55c5[58]]);_0x4427x1b[_0x55c5[61]]= _[_0x55c5[60]](_0x4427x29[_0x55c5[54]],qs[_0x55c5[62]](_0x4427x28[_0x55c5[58]][_0x55c5[62]]));_0x4427x1b[_0x55c5[61]]= (_0x4427x1b[_0x55c5[61]][_0x55c5[63]])?_0x4427x1b[_0x55c5[61]]:_0x4427x29[_0x55c5[54]];_0x4427x1b[_0x55c5[66]]= qs[_0x55c5[67]](_0x4427x28[_0x55c5[58]][_0x55c5[67]]);_0x4427x1b[_0x55c5[68]]= qs[_0x55c5[59]](_[_0x55c5[69]](_0x4427x28[_0x55c5[58]],_0x4427x29[_0x55c5[59]]));if(_0x4427x28[_0x55c5[58]][_0x55c5[70]]){_0x4427x1b[_0x55c5[68]]= _[_0x55c5[73]](_0x4427x1b[_0x55c5[68]],{$or:_[_0x55c5[72]](_0x4427x1b[_0x55c5[61]],function(_0x4427x2a){var _0x4427x2b={};_0x4427x2b[_0x4427x2a]= {$like:_0x55c5[71]+ _0x4427x28[_0x55c5[58]][_0x55c5[70]]+ _0x55c5[71]};return _0x4427x2b})})};_0x4427x1b= _[_0x55c5[73]]({},_0x4427x1b,_0x4427x28[_0x55c5[74]]);return _0x4427x33[_0x55c5[113]](_0x4427x1b)}})[_0x55c5[45]](function(_0x4427x35){if(_0x4427x35){_0x4427x1c= _0x4427x35[_0x55c5[63]];if(!_0x4427x28[_0x55c5[58]][_0x55c5[65]](_0x55c5[64])){_0x4427x1b[_0x55c5[35]]= qs[_0x55c5[35]](_0x4427x28[_0x55c5[58]][_0x55c5[35]]);_0x4427x1b[_0x55c5[34]]= qs[_0x55c5[34]](_0x4427x28[_0x55c5[58]][_0x55c5[34]])};return _0x4427x33[_0x55c5[113]](_0x4427x1b)}})[_0x55c5[45]](function(_0x4427x34){return _0x4427x34?{count:_0x4427x1c,rows:_0x4427x34}:null})[_0x55c5[45]](respondWithResult(_0x4427x18,null,_0x55c5[113]))[_0x55c5[75]](handleError(_0x4427x18,null,_0x55c5[113]))}
\ No newline at end of file
+var _0x6fc6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x6D\x6F\x64\x65","\x66\x69\x6C\x65\x73","\x64\x69\x72\x65\x63\x74\x6F\x72\x79","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x6D\x6F\x68","\x6A\x6F\x69\x6E","\x30\x37\x37\x37","\x6D\x6B\x64\x69\x72\x53\x79\x6E\x63","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x65\x73\x73\x61\x67\x65","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65","\x75\x6E\x6C\x69\x6E\x6B\x53\x79\x6E\x63","\x66\x6F\x72\x45\x61\x63\x68","\x72\x65\x61\x64\x64\x69\x72\x53\x79\x6E\x63","\x72\x6D\x64\x69\x72\x53\x79\x6E\x63","\x61\x64\x64\x53\x6F\x75\x6E\x64","\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x63\x6F\x6E\x76\x65\x72\x74\x65\x64","\x25\x73\x2E\x25\x73","\x73\x61\x76\x65\x5F\x6E\x61\x6D\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x62\x61\x73\x65\x6E\x61\x6D\x65","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x5F\x66\x6F\x72\x6D\x61\x74","\x66\x6F\x72\x6D\x61\x74","\x73\x79\x6D\x6C\x69\x6E\x6B\x53\x79\x6E\x63","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x66\x69\x6E\x64\x4F\x6E\x65","\x53\x6F\x75\x6E\x64","\x72\x65\x6D\x6F\x76\x65\x53\x6F\x75\x6E\x64","\x69\x64\x32","\x67\x65\x74\x53\x6F\x75\x6E\x64\x73"];_0x6fc6[0];var jsonpatch=require(_0x6fc6[1]);var rp=require(_0x6fc6[2]);var moment=require(_0x6fc6[3]);var BPromise=require(_0x6fc6[4]);var util=require(_0x6fc6[5]);var path=require(_0x6fc6[6]);var sox=require(_0x6fc6[7]);var ejs=require(_0x6fc6[8]);var fs=require(_0x6fc6[9]);var _=require(_0x6fc6[10]);var squel=require(_0x6fc6[11]);var crypto=require(_0x6fc6[12]);var jsforce=require(_0x6fc6[13]);var toCsv=require(_0x6fc6[14]);var qs=require(_0x6fc6[15]);var logger=require(_0x6fc6[17])(_0x6fc6[16]);var utils=require(_0x6fc6[18]);var config=require(_0x6fc6[19]);var db=require(_0x6fc6[21])[_0x6fc6[20]];function respondWithStatusCode(_0x474fx15,_0x474fx16,_0x474fx17){_0x474fx16= _0x474fx16|| 204;return function(_0x474fx18){if(_0x474fx18){logger[_0x6fc6[24]](_0x6fc6[22],_0x474fx17,_0x474fx16,_0x6fc6[23]);logger[_0x6fc6[26]](_0x6fc6[25],_0x474fx17,_0x474fx16,_0x6fc6[23]);return _0x474fx15[_0x6fc6[27]](_0x474fx16)};return _0x474fx15[_0x6fc6[29]](304)[_0x6fc6[28]]()}}function respondWithResult(_0x474fx15,_0x474fx16,_0x474fx17){_0x474fx16= _0x474fx16|| 200;return function(_0x474fx18){if(_0x474fx18){logger[_0x6fc6[24]](_0x6fc6[22],_0x474fx17,_0x474fx16,_0x6fc6[30]);logger[_0x6fc6[26]](_0x6fc6[25],_0x474fx17,_0x474fx16,_0x6fc6[30],JSON[_0x6fc6[31]](_0x474fx18));return _0x474fx15[_0x6fc6[29]](_0x474fx16)[_0x6fc6[32]](_0x474fx18)};return _0x474fx15[_0x6fc6[29]](304)[_0x6fc6[28]]()}}function respondWithFilteredResult(_0x474fx15,_0x474fx1b,_0x474fx17){return function(_0x474fx18){if(_0x474fx18){var _0x474fx1c=_0x474fx18[_0x6fc6[33]],_0x474fx1d=_0x474fx1b[_0x6fc6[34]],_0x474fx1e=_0x474fx1b[_0x6fc6[34]]+ _0x474fx1b[_0x6fc6[35]],_0x474fx16;if(_0x474fx1e>= _0x474fx1c){_0x474fx1e= _0x474fx1c;_0x474fx16= 200}else {_0x474fx16= 206};_0x474fx15[_0x6fc6[29]](_0x474fx16);logger[_0x6fc6[24]](_0x6fc6[22],_0x474fx17,_0x474fx16,_0x6fc6[36]);logger[_0x6fc6[26]](_0x6fc6[25],_0x474fx17,_0x474fx16,_0x6fc6[30],JSON[_0x6fc6[31]](_0x474fx18));return _0x474fx15[_0x6fc6[40]](_0x6fc6[37],_0x474fx1d+ _0x6fc6[38]+ _0x474fx1e+ _0x6fc6[39]+ _0x474fx1c)[_0x6fc6[32]](_0x474fx18)};return null}}function patchUpdates(_0x474fx20){return function(_0x474fx18){try{jsonpatch[_0x6fc6[41]](_0x474fx18,_0x474fx20,true)}catch(err){return BPromise[_0x6fc6[42]](err)};return _0x474fx18[_0x6fc6[43]]()}}function saveUpdates(_0x474fx22,_0x474fx16,_0x474fx17){return function(_0x474fx18){if(_0x474fx18){return _0x474fx18[_0x6fc6[46]](_0x474fx22)[_0x6fc6[45]](function(_0x474fx23){logger[_0x6fc6[24]](_0x6fc6[22],_0x474fx17,_0x474fx16,_0x6fc6[44]);logger[_0x6fc6[26]](_0x6fc6[25],_0x474fx17,_0x474fx16,_0x6fc6[44],JSON[_0x6fc6[31]](_0x474fx18));return _0x474fx23})};return null}}function removeEntity(_0x474fx15,_0x474fx16,_0x474fx17){return function(_0x474fx18){if(_0x474fx18){return _0x474fx18[_0x6fc6[48]]()[_0x6fc6[45]](function(){logger[_0x6fc6[24]](_0x6fc6[22],_0x474fx17,_0x474fx16,_0x6fc6[47]);logger[_0x6fc6[26]](_0x6fc6[25],_0x474fx17,_0x474fx16,_0x6fc6[47],JSON[_0x6fc6[31]](_0x474fx18));_0x474fx15[_0x6fc6[29]](204)[_0x6fc6[28]]()})}}}function handleEntityNotFound(_0x474fx15,_0x474fx16,_0x474fx17){return function(_0x474fx18){if(!_0x474fx18){logger[_0x6fc6[50]](_0x6fc6[22],_0x474fx17,404,_0x6fc6[49]);_0x474fx15[_0x6fc6[29]](404)[_0x6fc6[28]]();return null};return _0x474fx18}}function handleError(_0x474fx15,_0x474fx16,_0x474fx17){_0x474fx16= _0x474fx16|| 500;return function(_0x474fx27){logger[_0x6fc6[50]](_0x6fc6[22],_0x474fx17,_0x474fx16,JSON[_0x6fc6[31]](_0x474fx27));delete _0x474fx27[_0x6fc6[51]];_0x474fx15[_0x6fc6[29]](_0x474fx16)[_0x6fc6[52]](_0x474fx27)}}exports[_0x6fc6[53]]= function(_0x474fx28,_0x474fx15){var _0x474fx1b={},_0x474fx29={};_0x474fx29[_0x6fc6[54]]= _[_0x6fc6[57]](db[_0x6fc6[56]][_0x6fc6[55]]);_0x474fx29[_0x6fc6[58]]= _[_0x6fc6[57]](_0x474fx28[_0x6fc6[58]]);_0x474fx29[_0x6fc6[59]]= _[_0x6fc6[60]](_0x474fx29[_0x6fc6[54]],_0x474fx29[_0x6fc6[58]]);_0x474fx1b[_0x6fc6[61]]= _[_0x6fc6[60]](_0x474fx29[_0x6fc6[54]],qs[_0x6fc6[62]](_0x474fx28[_0x6fc6[58]][_0x6fc6[62]]));_0x474fx1b[_0x6fc6[61]]= (_0x474fx1b[_0x6fc6[61]][_0x6fc6[63]])?_0x474fx1b[_0x6fc6[61]]:_0x474fx29[_0x6fc6[54]];if(!_0x474fx28[_0x6fc6[58]][_0x6fc6[65]](_0x6fc6[64])){_0x474fx1b[_0x6fc6[35]]= qs[_0x6fc6[35]](_0x474fx28[_0x6fc6[58]][_0x6fc6[35]]);_0x474fx1b[_0x6fc6[34]]= qs[_0x6fc6[34]](_0x474fx28[_0x6fc6[58]][_0x6fc6[34]])};_0x474fx1b[_0x6fc6[66]]= qs[_0x6fc6[67]](_0x474fx28[_0x6fc6[58]][_0x6fc6[67]]);_0x474fx1b[_0x6fc6[68]]= qs[_0x6fc6[59]](_[_0x6fc6[69]](_0x474fx28[_0x6fc6[58]],_0x474fx29[_0x6fc6[59]]));if(_0x474fx28[_0x6fc6[58]][_0x6fc6[70]]){_0x474fx1b[_0x6fc6[68]]= _[_0x6fc6[73]](_0x474fx1b[_0x6fc6[68]],{$or:_[_0x6fc6[72]](_0x474fx1b[_0x6fc6[61]],function(_0x474fx2a){var _0x474fx2b={};_0x474fx2b[_0x474fx2a]= {$like:_0x6fc6[71]+ _0x474fx28[_0x6fc6[58]][_0x6fc6[70]]+ _0x6fc6[71]};return _0x474fx2b})})};_0x474fx1b= _[_0x6fc6[73]]({},_0x474fx1b,_0x474fx28[_0x6fc6[74]]);return db[_0x6fc6[56]][_0x6fc6[76]](_0x474fx1b)[_0x6fc6[45]](respondWithFilteredResult(_0x474fx15,_0x474fx1b,_0x6fc6[53]))[_0x6fc6[75]](handleError(_0x474fx15,null,_0x6fc6[53]))};exports[_0x6fc6[77]]= function(_0x474fx28,_0x474fx15){var _0x474fx1b={raw:false,where:{id:_0x474fx28[_0x6fc6[79]][_0x6fc6[78]]}},_0x474fx29={};_0x474fx29[_0x6fc6[54]]= _[_0x6fc6[57]](db[_0x6fc6[56]][_0x6fc6[55]]);_0x474fx29[_0x6fc6[58]]= _[_0x6fc6[57]](_0x474fx28[_0x6fc6[58]]);_0x474fx29[_0x6fc6[59]]= _[_0x6fc6[60]](_0x474fx29[_0x6fc6[54]],_0x474fx29[_0x6fc6[58]]);_0x474fx1b[_0x6fc6[61]]= _[_0x6fc6[60]](_0x474fx29[_0x6fc6[54]],qs[_0x6fc6[62]](_0x474fx28[_0x6fc6[58]][_0x6fc6[62]]));_0x474fx1b[_0x6fc6[61]]= (_0x474fx1b[_0x6fc6[61]][_0x6fc6[63]])?_0x474fx1b[_0x6fc6[61]]:_0x474fx29[_0x6fc6[54]];_0x474fx1b= _[_0x6fc6[73]]({},_0x474fx1b,_0x474fx28[_0x6fc6[74]]);return db[_0x6fc6[56]][_0x6fc6[80]](_0x474fx1b)[_0x6fc6[45]](handleEntityNotFound(_0x474fx15,null,_0x6fc6[77]))[_0x6fc6[45]](respondWithResult(_0x474fx15,null,_0x6fc6[77]))[_0x6fc6[75]](handleError(_0x474fx15,null,_0x6fc6[77]))};exports[_0x6fc6[46]]= function(_0x474fx28,_0x474fx15){if(_0x474fx28[_0x6fc6[81]][_0x6fc6[78]]){delete _0x474fx28[_0x6fc6[81]][_0x6fc6[78]]};return db[_0x6fc6[56]][_0x6fc6[80]]({where:{id:_0x474fx28[_0x6fc6[79]][_0x6fc6[78]]}})[_0x6fc6[45]](handleEntityNotFound(_0x474fx15,null,_0x6fc6[46]))[_0x6fc6[45]](saveUpdates(_0x474fx28[_0x6fc6[81]],null,_0x6fc6[46]))[_0x6fc6[45]](respondWithResult(_0x474fx15,null,_0x6fc6[46]))[_0x6fc6[75]](handleError(_0x474fx15,null,_0x6fc6[46]))};exports[_0x6fc6[82]]= function(_0x474fx28,_0x474fx15,_0x474fx2c){return db[_0x6fc6[92]][_0x6fc6[91]](function(_0x474fx2d){if(_0x474fx28[_0x6fc6[81]][_0x6fc6[83]]=== _0x6fc6[84]){_0x474fx28[_0x6fc6[81]][_0x6fc6[85]]= path[_0x6fc6[88]](config[_0x6fc6[86]],_0x6fc6[87],_0x474fx28[_0x6fc6[81]][_0x6fc6[51]])};return db[_0x6fc6[56]][_0x6fc6[82]](_0x474fx28[_0x6fc6[81]],{transaction:_0x474fx2d})[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx28[_0x6fc6[81]][_0x6fc6[83]]=== _0x6fc6[84]){fs[_0x6fc6[90]](_0x474fx18[_0x6fc6[85]],parseInt(_0x6fc6[89],8))};return _0x474fx18})})[_0x6fc6[45]](respondWithResult(_0x474fx15,201,_0x6fc6[82]))[_0x6fc6[75]](handleError(_0x474fx15,null,_0x6fc6[82]))};exports[_0x6fc6[48]]= function(_0x474fx28,_0x474fx15,_0x474fx2c){var _0x474fx2e;return db[_0x6fc6[56]][_0x6fc6[80]]({where:{id:_0x474fx28[_0x6fc6[79]][_0x6fc6[78]]}})[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18){return db[_0x6fc6[92]][_0x6fc6[91]](function(_0x474fx2d){return _0x474fx18[_0x6fc6[48]]({transaction:_0x474fx2d,raw:true})[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18[_0x6fc6[85]]){fs[_0x6fc6[97]](_0x474fx18[_0x6fc6[85]])[_0x6fc6[96]](function(_0x474fx2f){fs[_0x6fc6[95]](path[_0x6fc6[88]](_0x474fx18[_0x6fc6[85]],_0x474fx2f))});fs[_0x6fc6[98]](_0x474fx18[_0x6fc6[85]])};return _0x474fx18})})[_0x6fc6[75]](function(_0x474fx27){throw  new db[_0x6fc6[94]].ValidationError(_0x474fx27[_0x6fc6[93]])})}})[_0x6fc6[45]](handleEntityNotFound(_0x474fx15,null,_0x6fc6[48]))[_0x6fc6[45]](removeEntity(_0x474fx15,null,_0x6fc6[48]))[_0x6fc6[75]](handleError(_0x474fx15,null,_0x6fc6[48]))};exports[_0x6fc6[99]]= function(_0x474fx28,_0x474fx15,_0x474fx2c){return db[_0x6fc6[92]][_0x6fc6[91]](function(_0x474fx2d){var _0x474fx30;return db[_0x6fc6[56]][_0x6fc6[80]]({where:{id:_0x474fx28[_0x6fc6[79]][_0x6fc6[78]]}})[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18){_0x474fx30= _0x474fx18;return _0x474fx18[_0x6fc6[99]](_0x474fx28[_0x6fc6[81]][_0x6fc6[78]],{transaction:_0x474fx2d})}})[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18){return db[_0x6fc6[110]][_0x6fc6[109]]({where:{id:_0x474fx28[_0x6fc6[81]][_0x6fc6[78]]},attributes:[_0x6fc6[78],_0x6fc6[51],_0x6fc6[102],_0x6fc6[105],_0x6fc6[108]],raw:true})}})[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18){var _0x474fx31=path[_0x6fc6[88]](config[_0x6fc6[86]],_0x6fc6[100],util[_0x6fc6[106]](_0x6fc6[101],path[_0x6fc6[104]](_0x474fx18[_0x6fc6[102]],path[_0x6fc6[103]](_0x474fx18[_0x6fc6[102]])),_0x474fx18[_0x6fc6[105]]));var _0x474fx32=path[_0x6fc6[88]](config[_0x6fc6[86]],_0x6fc6[87],_0x474fx30[_0x6fc6[51]],util[_0x6fc6[106]](_0x6fc6[101],_0x474fx18[_0x6fc6[51]],_0x474fx18[_0x6fc6[105]]));fs[_0x6fc6[107]](_0x474fx31,_0x474fx32);return _0x474fx18}})[_0x6fc6[75]](function(_0x474fx27){throw  new db[_0x6fc6[94]].ValidationError(_0x474fx27[_0x6fc6[93]])})})[_0x6fc6[45]](handleEntityNotFound(_0x474fx15,null,_0x6fc6[99]))[_0x6fc6[45]](respondWithResult(_0x474fx15,201,_0x6fc6[99]))[_0x6fc6[75]](handleError(_0x474fx15,null,_0x6fc6[99]))};exports[_0x6fc6[111]]= function(_0x474fx28,_0x474fx15,_0x474fx2c){return db[_0x6fc6[92]][_0x6fc6[91]](function(_0x474fx2d){var _0x474fx30;return db[_0x6fc6[56]][_0x6fc6[109]]({where:{id:_0x474fx28[_0x6fc6[79]][_0x6fc6[78]]}})[_0x6fc6[45]](handleEntityNotFound(_0x474fx15,null,_0x6fc6[111]))[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18){_0x474fx30= _0x474fx18;return _0x474fx18[_0x6fc6[111]](_0x474fx28[_0x6fc6[79]][_0x6fc6[112]])}})[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18){return db[_0x6fc6[110]][_0x6fc6[109]]({where:{id:_0x474fx28[_0x6fc6[79]][_0x6fc6[112]]},attributes:[_0x6fc6[78],_0x6fc6[51],_0x6fc6[102],_0x6fc6[105],_0x6fc6[108]],raw:true})}})[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18){fs[_0x6fc6[95]](path[_0x6fc6[88]](_0x474fx30[_0x6fc6[85]],util[_0x6fc6[106]](_0x6fc6[101],_0x474fx18[_0x6fc6[51]],_0x474fx18[_0x6fc6[105]])));return _0x474fx18}})[_0x6fc6[75]](function(_0x474fx27){throw  new db[_0x6fc6[94]].ValidationError(_0x474fx27[_0x6fc6[93]])})})[_0x6fc6[45]](handleEntityNotFound(_0x474fx15,null,_0x6fc6[111]))[_0x6fc6[45]](respondWithStatusCode(_0x474fx15,204,_0x6fc6[111]))[_0x6fc6[75]](handleError(_0x474fx15,null,_0x6fc6[111]))};exports[_0x6fc6[113]]= function(_0x474fx28,_0x474fx18,_0x474fx2c){var _0x474fx1b={};var _0x474fx29={};var _0x474fx33;var _0x474fx1c;return db[_0x6fc6[56]][_0x6fc6[109]]({where:{id:_0x474fx28[_0x6fc6[79]][_0x6fc6[78]]}})[_0x6fc6[45]](handleEntityNotFound(_0x474fx18,null,_0x6fc6[113]))[_0x6fc6[45]](function(_0x474fx18){if(_0x474fx18){_0x474fx33= _0x474fx18;_0x474fx29[_0x6fc6[54]]= _[_0x6fc6[57]](db[_0x6fc6[110]][_0x6fc6[55]]);_0x474fx29[_0x6fc6[58]]= _[_0x6fc6[57]](_0x474fx28[_0x6fc6[58]]);_0x474fx29[_0x6fc6[59]]= _[_0x6fc6[60]](_0x474fx29[_0x6fc6[54]],_0x474fx29[_0x6fc6[58]]);_0x474fx1b[_0x6fc6[61]]= _[_0x6fc6[60]](_0x474fx29[_0x6fc6[54]],qs[_0x6fc6[62]](_0x474fx28[_0x6fc6[58]][_0x6fc6[62]]));_0x474fx1b[_0x6fc6[61]]= (_0x474fx1b[_0x6fc6[61]][_0x6fc6[63]])?_0x474fx1b[_0x6fc6[61]]:_0x474fx29[_0x6fc6[54]];_0x474fx1b[_0x6fc6[66]]= qs[_0x6fc6[67]](_0x474fx28[_0x6fc6[58]][_0x6fc6[67]]);_0x474fx1b[_0x6fc6[68]]= qs[_0x6fc6[59]](_[_0x6fc6[69]](_0x474fx28[_0x6fc6[58]],_0x474fx29[_0x6fc6[59]]));if(_0x474fx28[_0x6fc6[58]][_0x6fc6[70]]){_0x474fx1b[_0x6fc6[68]]= _[_0x6fc6[73]](_0x474fx1b[_0x6fc6[68]],{$or:_[_0x6fc6[72]](_0x474fx1b[_0x6fc6[61]],function(_0x474fx2a){var _0x474fx2b={};_0x474fx2b[_0x474fx2a]= {$like:_0x6fc6[71]+ _0x474fx28[_0x6fc6[58]][_0x6fc6[70]]+ _0x6fc6[71]};return _0x474fx2b})})};_0x474fx1b= _[_0x6fc6[73]]({},_0x474fx1b,_0x474fx28[_0x6fc6[74]]);return _0x474fx33[_0x6fc6[113]](_0x474fx1b)}})[_0x6fc6[45]](function(_0x474fx35){if(_0x474fx35){_0x474fx1c= _0x474fx35[_0x6fc6[63]];if(!_0x474fx28[_0x6fc6[58]][_0x6fc6[65]](_0x6fc6[64])){_0x474fx1b[_0x6fc6[35]]= qs[_0x6fc6[35]](_0x474fx28[_0x6fc6[58]][_0x6fc6[35]]);_0x474fx1b[_0x6fc6[34]]= qs[_0x6fc6[34]](_0x474fx28[_0x6fc6[58]][_0x6fc6[34]])};return _0x474fx33[_0x6fc6[113]](_0x474fx1b)}})[_0x6fc6[45]](function(_0x474fx34){return _0x474fx34?{count:_0x474fx1c,rows:_0x474fx34}:null})[_0x6fc6[45]](respondWithResult(_0x474fx18,null,_0x6fc6[113]))[_0x6fc6[75]](handleError(_0x474fx18,null,_0x6fc6[113]))}
\ No newline at end of file
index 798fda4..8e06ef7 100644 (file)
@@ -1 +1 @@
-var _0xb977=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x76\x6F\x69\x63\x65\x5F\x6D\x75\x73\x69\x63\x6F\x6E\x68\x6F\x6C\x64","\x64\x65\x66\x69\x6E\x65"];_0xb977[0];var _=require(_0xb977[1]);var util=require(_0xb977[2]);var logger=require(_0xb977[4])(_0xb977[3]);var attributes=require(_0xb977[5]);module[_0xb977[6]]= function(_0x726bx5,_0x726bx6){return _0x726bx5[_0xb977[9]](_0xb977[7],attributes,{tableName:_0xb977[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xa040=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x76\x6F\x69\x63\x65\x5F\x6D\x75\x73\x69\x63\x6F\x6E\x68\x6F\x6C\x64","\x64\x65\x66\x69\x6E\x65"];_0xa040[0];var _=require(_0xa040[1]);var util=require(_0xa040[2]);var logger=require(_0xa040[4])(_0xa040[3]);var attributes=require(_0xa040[5]);module[_0xa040[6]]= function(_0xec98x5,_0xec98x6){return _0xec98x5[_0xa040[9]](_0xa040[7],attributes,{tableName:_0xa040[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 746a252..0a80617 100644 (file)
@@ -1 +1 @@
-var _0xe0ef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xe0ef[0];var _=require(_0xe0ef[1]);var util=require(_0xe0ef[2]);var moment=require(_0xe0ef[3]);var BPromise=require(_0xe0ef[4]);var db=require(_0xe0ef[6])[_0xe0ef[5]];var utils=require(_0xe0ef[7]);var logger=require(_0xe0ef[9])(_0xe0ef[8]);var jayson=require(_0xe0ef[10]);var client=jayson[_0xe0ef[12]][_0xe0ef[11]]({port:9002});function respondWithRpcPromise(_0x259axb,_0x259axc,_0x259axd){return  new BPromise(function(_0x259axe,_0x259axf){return client[_0xe0ef[25]](_0x259axb,_0x259axd)[_0xe0ef[24]](function(_0x259ax11){logger[_0xe0ef[17]](_0xe0ef[13],_0x259axc,_0xe0ef[16]);logger[_0xe0ef[20]](_0xe0ef[18],_0x259axc,_0xe0ef[16],JSON[_0xe0ef[19]](_0x259ax11));if(_0x259ax11[_0xe0ef[14]]){if(_0x259ax11[_0xe0ef[14]][_0xe0ef[21]]=== 500){logger[_0xe0ef[14]](_0xe0ef[13],_0x259axc,_0x259ax11[_0xe0ef[14]][_0xe0ef[22]]);return _0x259axf(_0x259ax11[_0xe0ef[14]][_0xe0ef[22]])};logger[_0xe0ef[14]](_0xe0ef[13],_0x259axc,_0x259ax11[_0xe0ef[14]][_0xe0ef[22]]);return _0x259axe(_0x259ax11[_0xe0ef[14]][_0xe0ef[22]])}else {logger[_0xe0ef[17]](_0xe0ef[13],_0x259axc,_0xe0ef[16]);_0x259axe(_0x259ax11[_0xe0ef[23]][_0xe0ef[22]])}})[_0xe0ef[15]](function(_0x259ax10){logger[_0xe0ef[14]](_0xe0ef[13],_0x259axc,_0x259ax10);_0x259axf(_0x259ax10)})})}
\ No newline at end of file
+var _0xc19e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xc19e[0];var _=require(_0xc19e[1]);var util=require(_0xc19e[2]);var moment=require(_0xc19e[3]);var BPromise=require(_0xc19e[4]);var db=require(_0xc19e[6])[_0xc19e[5]];var utils=require(_0xc19e[7]);var logger=require(_0xc19e[9])(_0xc19e[8]);var jayson=require(_0xc19e[10]);var client=jayson[_0xc19e[12]][_0xc19e[11]]({port:9002});function respondWithRpcPromise(_0x5bcaxb,_0x5bcaxc,_0x5bcaxd){return  new BPromise(function(_0x5bcaxe,_0x5bcaxf){return client[_0xc19e[25]](_0x5bcaxb,_0x5bcaxd)[_0xc19e[24]](function(_0x5bcax11){logger[_0xc19e[17]](_0xc19e[13],_0x5bcaxc,_0xc19e[16]);logger[_0xc19e[20]](_0xc19e[18],_0x5bcaxc,_0xc19e[16],JSON[_0xc19e[19]](_0x5bcax11));if(_0x5bcax11[_0xc19e[14]]){if(_0x5bcax11[_0xc19e[14]][_0xc19e[21]]=== 500){logger[_0xc19e[14]](_0xc19e[13],_0x5bcaxc,_0x5bcax11[_0xc19e[14]][_0xc19e[22]]);return _0x5bcaxf(_0x5bcax11[_0xc19e[14]][_0xc19e[22]])};logger[_0xc19e[14]](_0xc19e[13],_0x5bcaxc,_0x5bcax11[_0xc19e[14]][_0xc19e[22]]);return _0x5bcaxe(_0x5bcax11[_0xc19e[14]][_0xc19e[22]])}else {logger[_0xc19e[17]](_0xc19e[13],_0x5bcaxc,_0xc19e[16]);_0x5bcaxe(_0x5bcax11[_0xc19e[23]][_0xc19e[22]])}})[_0xc19e[15]](function(_0x5bcax10){logger[_0xc19e[14]](_0xc19e[13],_0x5bcaxc,_0x5bcax10);_0x5bcaxf(_0x5bcax10)})})}
\ No newline at end of file
index 96fd179..b8ba716 100644 (file)
@@ -1 +1 @@
-var _0x75ca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x69\x65\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x2F\x3A\x69\x64\x2F\x6D\x65\x6D\x62\x65\x72\x73","\x67\x65\x74\x4D\x65\x6D\x62\x65\x72\x73","\x2F\x3A\x69\x64\x2F\x6C\x69\x73\x74\x73","\x67\x65\x74\x4C\x69\x73\x74\x73","\x2F\x3A\x69\x64\x2F\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74\x73","\x67\x65\x74\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x61\x64\x64\x4C\x69\x73\x74\x73","\x2F\x3A\x69\x64\x2F\x62\x6C\x61\x63\x6B\x5F\x6C\x69\x73\x74\x73","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x72\x65\x6D\x6F\x76\x65\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x75ca[0];var multer=require(_0x75ca[1]);var util=require(_0x75ca[2]);var path=require(_0x75ca[3]);var express=require(_0x75ca[4]);var router=express.Router();var auth=require(_0x75ca[5]);var config=require(_0x75ca[6]);var controller=require(_0x75ca[7]);router[_0x75ca[11]](_0x75ca[8],auth[_0x75ca[9]](),controller[_0x75ca[10]]);router[_0x75ca[11]](_0x75ca[12],auth[_0x75ca[9]](),controller[_0x75ca[13]]);router[_0x75ca[11]](_0x75ca[14],auth[_0x75ca[9]](),controller[_0x75ca[15]]);router[_0x75ca[11]](_0x75ca[16],auth[_0x75ca[9]](),controller[_0x75ca[17]]);router[_0x75ca[11]](_0x75ca[18],auth[_0x75ca[9]](),controller[_0x75ca[19]]);router[_0x75ca[11]](_0x75ca[20],auth[_0x75ca[9]](),controller[_0x75ca[21]]);router[_0x75ca[11]](_0x75ca[22],auth[_0x75ca[9]](),controller[_0x75ca[23]]);router[_0x75ca[11]](_0x75ca[24],auth[_0x75ca[9]](),controller[_0x75ca[25]]);router[_0x75ca[11]](_0x75ca[26],auth[_0x75ca[9]](),controller[_0x75ca[27]]);router[_0x75ca[11]](_0x75ca[28],auth[_0x75ca[9]](),controller[_0x75ca[29]]);router[_0x75ca[11]](_0x75ca[30],auth[_0x75ca[9]](),controller[_0x75ca[31]]);router[_0x75ca[33]](_0x75ca[8],auth[_0x75ca[9]](),controller[_0x75ca[32]]);router[_0x75ca[33]](_0x75ca[22],auth[_0x75ca[9]](),controller[_0x75ca[34]]);router[_0x75ca[33]](_0x75ca[24],auth[_0x75ca[9]](),controller[_0x75ca[35]]);router[_0x75ca[33]](_0x75ca[28],auth[_0x75ca[9]](),controller[_0x75ca[36]]);router[_0x75ca[33]](_0x75ca[37],auth[_0x75ca[9]](),controller[_0x75ca[38]]);router[_0x75ca[33]](_0x75ca[30],auth[_0x75ca[9]](),controller[_0x75ca[38]]);router[_0x75ca[40]](_0x75ca[12],auth[_0x75ca[9]](),controller[_0x75ca[39]]);router[_0x75ca[42]](_0x75ca[12],auth[_0x75ca[9]](),controller[_0x75ca[41]]);router[_0x75ca[42]](_0x75ca[22],auth[_0x75ca[9]](),controller[_0x75ca[43]]);router[_0x75ca[42]](_0x75ca[24],auth[_0x75ca[9]](),controller[_0x75ca[44]]);router[_0x75ca[42]](_0x75ca[37],auth[_0x75ca[9]](),controller[_0x75ca[45]]);router[_0x75ca[42]](_0x75ca[28],auth[_0x75ca[9]](),controller[_0x75ca[46]]);router[_0x75ca[42]](_0x75ca[30],auth[_0x75ca[9]](),controller[_0x75ca[45]]);module[_0x75ca[47]]= router
\ No newline at end of file
+var _0x3d5c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x69\x65\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x73","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x2F\x3A\x69\x64\x2F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x2F\x3A\x69\x64\x2F\x74\x65\x61\x6D\x73","\x67\x65\x74\x54\x65\x61\x6D\x73","\x2F\x3A\x69\x64\x2F\x75\x73\x65\x72\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x2F\x3A\x69\x64\x2F\x6D\x65\x6D\x62\x65\x72\x73","\x67\x65\x74\x4D\x65\x6D\x62\x65\x72\x73","\x2F\x3A\x69\x64\x2F\x6C\x69\x73\x74\x73","\x67\x65\x74\x4C\x69\x73\x74\x73","\x2F\x3A\x69\x64\x2F\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74\x73","\x67\x65\x74\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x61\x64\x64\x54\x65\x61\x6D\x73","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x61\x64\x64\x4C\x69\x73\x74\x73","\x2F\x3A\x69\x64\x2F\x62\x6C\x61\x63\x6B\x5F\x6C\x69\x73\x74\x73","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x72\x65\x6D\x6F\x76\x65\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x3d5c[0];var multer=require(_0x3d5c[1]);var util=require(_0x3d5c[2]);var path=require(_0x3d5c[3]);var express=require(_0x3d5c[4]);var router=express.Router();var auth=require(_0x3d5c[5]);var config=require(_0x3d5c[6]);var controller=require(_0x3d5c[7]);router[_0x3d5c[11]](_0x3d5c[8],auth[_0x3d5c[9]](),controller[_0x3d5c[10]]);router[_0x3d5c[11]](_0x3d5c[12],auth[_0x3d5c[9]](),controller[_0x3d5c[13]]);router[_0x3d5c[11]](_0x3d5c[14],auth[_0x3d5c[9]](),controller[_0x3d5c[15]]);router[_0x3d5c[11]](_0x3d5c[16],auth[_0x3d5c[9]](),controller[_0x3d5c[17]]);router[_0x3d5c[11]](_0x3d5c[18],auth[_0x3d5c[9]](),controller[_0x3d5c[19]]);router[_0x3d5c[11]](_0x3d5c[20],auth[_0x3d5c[9]](),controller[_0x3d5c[21]]);router[_0x3d5c[11]](_0x3d5c[22],auth[_0x3d5c[9]](),controller[_0x3d5c[23]]);router[_0x3d5c[11]](_0x3d5c[24],auth[_0x3d5c[9]](),controller[_0x3d5c[25]]);router[_0x3d5c[11]](_0x3d5c[26],auth[_0x3d5c[9]](),controller[_0x3d5c[27]]);router[_0x3d5c[11]](_0x3d5c[28],auth[_0x3d5c[9]](),controller[_0x3d5c[29]]);router[_0x3d5c[11]](_0x3d5c[30],auth[_0x3d5c[9]](),controller[_0x3d5c[31]]);router[_0x3d5c[33]](_0x3d5c[8],auth[_0x3d5c[9]](),controller[_0x3d5c[32]]);router[_0x3d5c[33]](_0x3d5c[22],auth[_0x3d5c[9]](),controller[_0x3d5c[34]]);router[_0x3d5c[33]](_0x3d5c[24],auth[_0x3d5c[9]](),controller[_0x3d5c[35]]);router[_0x3d5c[33]](_0x3d5c[28],auth[_0x3d5c[9]](),controller[_0x3d5c[36]]);router[_0x3d5c[33]](_0x3d5c[37],auth[_0x3d5c[9]](),controller[_0x3d5c[38]]);router[_0x3d5c[33]](_0x3d5c[30],auth[_0x3d5c[9]](),controller[_0x3d5c[38]]);router[_0x3d5c[40]](_0x3d5c[12],auth[_0x3d5c[9]](),controller[_0x3d5c[39]]);router[_0x3d5c[42]](_0x3d5c[12],auth[_0x3d5c[9]](),controller[_0x3d5c[41]]);router[_0x3d5c[42]](_0x3d5c[22],auth[_0x3d5c[9]](),controller[_0x3d5c[43]]);router[_0x3d5c[42]](_0x3d5c[24],auth[_0x3d5c[9]](),controller[_0x3d5c[44]]);router[_0x3d5c[42]](_0x3d5c[37],auth[_0x3d5c[9]](),controller[_0x3d5c[45]]);router[_0x3d5c[42]](_0x3d5c[28],auth[_0x3d5c[9]](),controller[_0x3d5c[46]]);router[_0x3d5c[42]](_0x3d5c[30],auth[_0x3d5c[9]](),controller[_0x3d5c[45]]);module[_0x3d5c[47]]= router
\ No newline at end of file
index 143f306..0ec7f0d 100644 (file)
@@ -1 +1 @@
-var _0x206f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x64\x65\x66\x61\x75\x6C\x74","","\x72\x69\x6E\x67\x61\x6C\x6C","\x6C\x65\x61\x73\x74\x72\x65\x63\x65\x6E\x74","\x66\x65\x77\x65\x73\x74\x63\x61\x6C\x6C\x73","\x72\x61\x6E\x64\x6F\x6D","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x6C\x69\x6E\x65\x61\x72","\x77\x72\x61\x6E\x64\x6F\x6D","\x72\x72\x6F\x72\x64\x65\x72\x65\x64","\x79\x65\x73","\x6E\x6F","\x61\x6C\x6C","\x6F\x6E\x63\x65","\x30","\x35","\x31\x30","\x31\x35","\x32\x30","\x33\x30","\x6A\x6F\x69\x6E\x65\x6D\x70\x74\x79","\x2C","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x70\x6C\x69\x74","\x6C\x65\x61\x76\x65\x77\x68\x65\x6E\x65\x6D\x70\x74\x79","\x42\x4F\x4F\x4C\x45\x41\x4E","\x41\x63\x74\x69\x76\x65\x2F\x44\x69\x73\x61\x63\x74\x69\x76\x65\x20\x43\x61\x6D\x70\x61\x69\x67\x6E","\x70\x72\x65\x76\x69\x65\x77","\x70\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65","\x70\x6F\x77\x65\x72","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x44\x69\x61\x6C\x20\x4D\x65\x74\x68\x6F\x64\x2E","\x55\x4E\x53\x49\x47\x4E\x45\x44","\x4D\x61\x78\x20\x39\x39\x39\x39\x20\x63\x68\x61\x6E\x6E\x65\x6C\x73\x2C\x20\x30\x20\x6D\x65\x61\x6E\x73\x20\x75\x6E\x6C\x69\x6D\x69\x74\x65\x64\x2E","\x4D\x61\x78\x20\x39\x39\x39\x39\x20\x6D\x65\x6D\x62\x65\x72\x20\x69\x6E\x20\x71\x75\x65\x75\x65\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x29\x2C\x20\x30\x20\x6D\x65\x61\x6E\x73\x20\x75\x6E\x6C\x69\x6D\x69\x74\x65\x64\x2E","\x50\x6F\x77\x65\x72\x20\x4C\x65\x76\x65\x6C\x3A\x20\x43\x61\x6C\x6C\x73\x20\x66\x6F\x72\x20\x61\x67\x65\x6E\x74\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x31\x30\x29\x2E","\x61\x67\x65\x6E\x74\x42\x75\x73\x79\x46\x61\x63\x74\x6F\x72","\x64\x72\x6F\x70\x52\x61\x74\x65","\x4F\x6E\x6C\x79\x20\x66\x6F\x72\x20\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x6D\x65\x74\x68\x6F\x64\x2E","\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E\x20\x50\x65\x72\x63\x65\x6E\x74\x61\x67\x65\x20\x28\x6D\x69\x6E\x3A\x20\x31\x2C\x20\x6D\x61\x78\x3A\x20\x39\x35\x29","\x49\x6E\x74\x65\x72\x76\x61\x6C\x6C\x20\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x35\x20\x6D\x61\x78\x3A\x33\x30\x29","\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x20\x54\x69\x6D\x65\x6F\x75\x74\x20\x53\x65\x63\x6F\x6E\x64\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x74\x54\x78\x58","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x77\x69\x6B\x69\x2E\x61\x73\x74\x65\x72\x69\x73\x6B\x2E\x6F\x72\x67\x2F\x77\x69\x6B\x69\x2F\x64\x69\x73\x70\x6C\x61\x79\x2F\x41\x53\x54\x2F\x41\x73\x74\x65\x72\x69\x73\x6B\x2B\x31\x33\x2B\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x5F\x51\x75\x65\x75\x65","\x51\x75\x65\x75\x65\x20\x54\x69\x6D\x65\x6F\x75\x74\x20\x53\x65\x63\x6F\x6E\x64\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x29","\x41\x47\x49\x20\x71\x75\x65\x75\x65\x20\x6F\x70\x74\x69\x6F\x6E\x20\x28\x75\x73\x65\x3A\x20\x61\x67\x69\x3A\x2F\x2F\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31\x2F\x73\x71\x75\x61\x72\x65\x2C\x3C\x70\x72\x6F\x6A\x65\x63\x74\x5F\x6E\x61\x6D\x65\x3E\x29","\x23\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x42\x75\x73\x79\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x42\x75\x73\x79\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x4E\x6F\x41\x6E\x73\x77\x65\x72\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x4E\x6F\x41\x6E\x73\x77\x65\x72\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x47\x6C\x6F\x62\x61\x6C\x20\x4D\x61\x78\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x30\x37\x3A\x30\x30\x2D\x32\x32\x3A\x30\x30\x2C\x2A\x2C\x2A\x2C\x2A"];_0x206f[0];var Sequelize=require(_0x206f[1]);module[_0x206f[2]]= {name:{type:Sequelize[_0x206f[3]],allowNull:false,unique:_0x206f[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},type:{type:Sequelize.ENUM(_0x206f[5],_0x206f[6]),allowNull:false,defaultValue:_0x206f[5]},musiconhold:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[7]},announce:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[8]},strategy:{type:Sequelize.ENUM(_0x206f[9],_0x206f[10],_0x206f[11],_0x206f[12],_0x206f[13],_0x206f[14],_0x206f[15],_0x206f[16]),allowNull:false,defaultValue:_0x206f[9]},servicelevel:{type:Sequelize.INTEGER(11),defaultValue:0},context:{type:Sequelize[_0x206f[3]],defaultValue:null},penaltymemberslimit:{type:Sequelize.INTEGER(11)},timeout:{type:Sequelize.INTEGER(11),defaultValue:0},retry:{type:Sequelize.INTEGER(11),defaultValue:0},timeoutpriority:{type:Sequelize[_0x206f[3]]},weight:{type:Sequelize.INTEGER(11),allowNull:true,defaultValue:0},wrapuptime:{type:Sequelize.INTEGER(11),defaultValue:0},autofill:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[17]},autopause:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18],_0x206f[19]),defaultValue:_0x206f[18]},autopausedelay:{type:Sequelize.INTEGER(11)},autopausebusy:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},autopauseunavail:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},maxlen:{type:Sequelize.INTEGER(11),defaultValue:0},setinterfacevar:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},setqueueentryvar:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defautValue:_0x206f[18]},setqueuevar:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},eventmemberstatus:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},membermacro:{type:Sequelize[_0x206f[3]],allowNull:true},membergosub:{type:Sequelize[_0x206f[3]],allowNull:true},announce_frequency:{type:Sequelize.INTEGER(11),defaultValue:0},min_announce_frequency:{type:Sequelize.INTEGER(11),defaultValue:0},periodic_announce_frequency:{type:Sequelize.INTEGER(11),defaultValue:0},random_periodic_announce:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},relative_periodic_announce:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[17]},announce_holdtime:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18],_0x206f[20]),defaultValue:_0x206f[18]},announce_position:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[18]},announce_to_first_user:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18])},announce_position_limit:{type:Sequelize.INTEGER(11)},announce_round_seconds:{type:Sequelize.ENUM(_0x206f[21],_0x206f[22],_0x206f[23],_0x206f[24],_0x206f[25],_0x206f[26]),defaultValue:_0x206f[21]},monitor_format:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[8]},monitor_type:{type:Sequelize[_0x206f[3]]},queue_youarenext:{type:Sequelize[_0x206f[3]],defaultValue:null},queue_thereare:{type:Sequelize[_0x206f[3]],defaultValue:null},queue_callswaiting:{type:Sequelize[_0x206f[3]],defaultValue:null},queue_holdtime:{type:Sequelize[_0x206f[3]],defaultValue:null},queue_minute:{type:Sequelize[_0x206f[3]],allowNull:true,defaultValue:null},queue_minutes:{type:Sequelize[_0x206f[3]],defaultValue:null},queue_seconds:{type:Sequelize[_0x206f[3]],defaultValue:null},queue_thankyou:{type:Sequelize[_0x206f[3]],defaultValue:null},queue_reporthold:{type:Sequelize[_0x206f[3]]},queue_quantity1:{type:Sequelize[_0x206f[3]]},queue_quantity2:{type:Sequelize[_0x206f[3]]},queue_periodic_announce:{type:Sequelize[_0x206f[3]]},queue_less_than:{type:Sequelize[_0x206f[3]]},periodic_announce:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[8]},joinempty:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[17],set:function(_0x4e8ex2){this[_0x206f[30]](_0x206f[27],_0x4e8ex2?_0x4e8ex2[_0x206f[29]](_0x206f[28]):[])},get:function(){return this[_0x206f[31]](_0x206f[27])?this[_0x206f[31]](_0x206f[27])[_0x206f[32]](_0x206f[28]):[]}},leavewhenempty:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[18],set:function(_0x4e8ex2){this[_0x206f[30]](_0x206f[33],_0x4e8ex2?_0x4e8ex2[_0x206f[29]](_0x206f[28]):[])},get:function(){return this[_0x206f[31]](_0x206f[33])?this[_0x206f[31]](_0x206f[33])[_0x206f[32]](_0x206f[28]):[]}},reportholdtime:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},ringinuse:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},memberdelay:{type:Sequelize.INTEGER(11),defaultValue:0},timeoutrestart:{type:Sequelize.ENUM(_0x206f[17],_0x206f[18]),defaultValue:_0x206f[18]},defaultrule:{type:Sequelize[_0x206f[3]]},description:{type:Sequelize[_0x206f[3]]},acw:{type:Sequelize[_0x206f[34]],defaultValue:0},acwTimeout:{type:Sequelize.INTEGER(11),defaultValue:10},dialActive:{type:Sequelize[_0x206f[34]],defaultValue:0,comment:_0x206f[35]},dialMethod:{type:Sequelize.ENUM(_0x206f[36],_0x206f[37],_0x206f[38],_0x206f[39]),defaultValue:_0x206f[37],comment:_0x206f[40]},dialLimitChannel:{type:Sequelize.INTEGER(4)[_0x206f[41]],defaultValue:0,validate:{min:0,max:9999},comment:_0x206f[42]},dialLimitQueue:{type:Sequelize.INTEGER(4)[_0x206f[41]],defaultValue:0,validate:{min:0,max:9999},comment:_0x206f[43]},dialPowerLevel:{type:Sequelize.FLOAT(2)[_0x206f[41]],defaultValue:1,validate:{min:1,max:10},comment:_0x206f[44]},dialPredictiveOptimization:{type:Sequelize.ENUM(_0x206f[45],_0x206f[46]),defaultValue:_0x206f[46],comment:_0x206f[47]},dialPredictiveOptimizationPercentage:{type:Sequelize.FLOAT(2)[_0x206f[41]],defaultValue:3,validate:{min:1,max:95},comment:_0x206f[48]},dialPredictiveInterval:{type:Sequelize.INTEGER(3)[_0x206f[41]],defaultValue:10,validate:{min:5,max:30},comment:_0x206f[49]},dialOriginateCallerIdName:{type:Sequelize[_0x206f[3]]},dialOriginateCallerIdNumber:{type:Sequelize[_0x206f[3]]},dialOriginateTimeout:{type:Sequelize.INTEGER(3)[_0x206f[41]],defaultValue:30,validate:{min:1,max:999},comment:_0x206f[50]},dialQueueOptions:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[51],comment:_0x206f[52]},dialQueueTimeout:{type:Sequelize.INTEGER(2)[_0x206f[41]],defaultValue:3,validate:{min:1,max:99},comment:_0x206f[53]},dialQueueProject:{type:Sequelize[_0x206f[3]],comment:_0x206f[54]},dialCongestionMaxRetry:{type:Sequelize.INTEGER(3)[_0x206f[41]],defaultValue:3,validate:{min:1,max:999},comment:_0x206f[55]},dialCongestionRetryFrequency:{type:Sequelize.INTEGER(5)[_0x206f[41]],validate:{min:1,max:99999},defaultValue:150,comment:_0x206f[56]},dialBusyMaxRetry:{type:Sequelize.INTEGER(3)[_0x206f[41]],defaultValue:3,validate:{min:1,max:999},comment:_0x206f[57]},dialBusyRetryFrequency:{type:Sequelize.INTEGER(5)[_0x206f[41]],validate:{min:1,max:99999},defaultValue:150,comment:_0x206f[58]},dialNoAnswerMaxRetry:{type:Sequelize.INTEGER(3)[_0x206f[41]],defaultValue:3,comment:_0x206f[59]},dialNoAnswerRetryFrequency:{type:Sequelize.INTEGER(5)[_0x206f[41]],validate:{min:1,max:99999},defaultValue:150,comment:_0x206f[60]},dialGlobalMaxRetry:{type:Sequelize.INTEGER(3)[_0x206f[41]],validate:{min:1,max:999},defaultValue:4,comment:_0x206f[61]},dialTimezone:{type:Sequelize[_0x206f[3]],defaultValue:null},dialGlobalInterval:{type:Sequelize[_0x206f[3]],defaultValue:_0x206f[62]}}
\ No newline at end of file
+var _0x4e6e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x6E\x61\x6D\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x64\x65\x66\x61\x75\x6C\x74","","\x72\x69\x6E\x67\x61\x6C\x6C","\x6C\x65\x61\x73\x74\x72\x65\x63\x65\x6E\x74","\x66\x65\x77\x65\x73\x74\x63\x61\x6C\x6C\x73","\x72\x61\x6E\x64\x6F\x6D","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x6C\x69\x6E\x65\x61\x72","\x77\x72\x61\x6E\x64\x6F\x6D","\x72\x72\x6F\x72\x64\x65\x72\x65\x64","\x79\x65\x73","\x6E\x6F","\x61\x6C\x6C","\x6F\x6E\x63\x65","\x30","\x35","\x31\x30","\x31\x35","\x32\x30","\x33\x30","\x6A\x6F\x69\x6E\x65\x6D\x70\x74\x79","\x2C","\x6A\x6F\x69\x6E","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x70\x6C\x69\x74","\x6C\x65\x61\x76\x65\x77\x68\x65\x6E\x65\x6D\x70\x74\x79","\x42\x4F\x4F\x4C\x45\x41\x4E","\x41\x63\x74\x69\x76\x65\x2F\x44\x69\x73\x61\x63\x74\x69\x76\x65\x20\x43\x61\x6D\x70\x61\x69\x67\x6E","\x70\x72\x65\x76\x69\x65\x77","\x70\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65","\x70\x6F\x77\x65\x72","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x44\x69\x61\x6C\x20\x4D\x65\x74\x68\x6F\x64\x2E","\x55\x4E\x53\x49\x47\x4E\x45\x44","\x4D\x61\x78\x20\x39\x39\x39\x39\x20\x63\x68\x61\x6E\x6E\x65\x6C\x73\x2C\x20\x30\x20\x6D\x65\x61\x6E\x73\x20\x75\x6E\x6C\x69\x6D\x69\x74\x65\x64\x2E","\x4D\x61\x78\x20\x39\x39\x39\x39\x20\x6D\x65\x6D\x62\x65\x72\x20\x69\x6E\x20\x71\x75\x65\x75\x65\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x29\x2C\x20\x30\x20\x6D\x65\x61\x6E\x73\x20\x75\x6E\x6C\x69\x6D\x69\x74\x65\x64\x2E","\x50\x6F\x77\x65\x72\x20\x4C\x65\x76\x65\x6C\x3A\x20\x43\x61\x6C\x6C\x73\x20\x66\x6F\x72\x20\x61\x67\x65\x6E\x74\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x31\x30\x29\x2E","\x61\x67\x65\x6E\x74\x42\x75\x73\x79\x46\x61\x63\x74\x6F\x72","\x64\x72\x6F\x70\x52\x61\x74\x65","\x4F\x6E\x6C\x79\x20\x66\x6F\x72\x20\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x6D\x65\x74\x68\x6F\x64\x2E","\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E\x20\x50\x65\x72\x63\x65\x6E\x74\x61\x67\x65\x20\x28\x6D\x69\x6E\x3A\x20\x31\x2C\x20\x6D\x61\x78\x3A\x20\x39\x35\x29","\x49\x6E\x74\x65\x72\x76\x61\x6C\x6C\x20\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x35\x20\x6D\x61\x78\x3A\x33\x30\x29","\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x20\x54\x69\x6D\x65\x6F\x75\x74\x20\x53\x65\x63\x6F\x6E\x64\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x74\x54\x78\x58","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x77\x69\x6B\x69\x2E\x61\x73\x74\x65\x72\x69\x73\x6B\x2E\x6F\x72\x67\x2F\x77\x69\x6B\x69\x2F\x64\x69\x73\x70\x6C\x61\x79\x2F\x41\x53\x54\x2F\x41\x73\x74\x65\x72\x69\x73\x6B\x2B\x31\x33\x2B\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x5F\x51\x75\x65\x75\x65","\x51\x75\x65\x75\x65\x20\x54\x69\x6D\x65\x6F\x75\x74\x20\x53\x65\x63\x6F\x6E\x64\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x29","\x41\x47\x49\x20\x71\x75\x65\x75\x65\x20\x6F\x70\x74\x69\x6F\x6E\x20\x28\x75\x73\x65\x3A\x20\x61\x67\x69\x3A\x2F\x2F\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31\x2F\x73\x71\x75\x61\x72\x65\x2C\x3C\x70\x72\x6F\x6A\x65\x63\x74\x5F\x6E\x61\x6D\x65\x3E\x29","\x23\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x42\x75\x73\x79\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x42\x75\x73\x79\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x4E\x6F\x41\x6E\x73\x77\x65\x72\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x4E\x6F\x41\x6E\x73\x77\x65\x72\x20\x52\x65\x74\x72\x79\x20\x46\x72\x65\x71\x75\x65\x6E\x63\x79\x20\x4D\x69\x6E\x75\x74\x65\x73\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x39\x39\x29","\x23\x47\x6C\x6F\x62\x61\x6C\x20\x4D\x61\x78\x20\x52\x65\x74\x72\x79\x20\x28\x6D\x69\x6E\x3A\x31\x2C\x20\x6D\x61\x78\x3A\x39\x39\x39\x29","\x30\x37\x3A\x30\x30\x2D\x32\x32\x3A\x30\x30\x2C\x2A\x2C\x2A\x2C\x2A"];_0x4e6e[0];var Sequelize=require(_0x4e6e[1]);module[_0x4e6e[2]]= {name:{type:Sequelize[_0x4e6e[3]],allowNull:false,unique:_0x4e6e[4],validate:{notEmpty:true,is:/^[A-Za-z0-9\.\_]+$/i}},type:{type:Sequelize.ENUM(_0x4e6e[5],_0x4e6e[6]),allowNull:false,defaultValue:_0x4e6e[5]},musiconhold:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[7]},announce:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[8]},strategy:{type:Sequelize.ENUM(_0x4e6e[9],_0x4e6e[10],_0x4e6e[11],_0x4e6e[12],_0x4e6e[13],_0x4e6e[14],_0x4e6e[15],_0x4e6e[16]),allowNull:false,defaultValue:_0x4e6e[9]},servicelevel:{type:Sequelize.INTEGER(11),defaultValue:0},context:{type:Sequelize[_0x4e6e[3]],defaultValue:null},penaltymemberslimit:{type:Sequelize.INTEGER(11)},timeout:{type:Sequelize.INTEGER(11),defaultValue:0},retry:{type:Sequelize.INTEGER(11),defaultValue:0},timeoutpriority:{type:Sequelize[_0x4e6e[3]]},weight:{type:Sequelize.INTEGER(11),allowNull:true,defaultValue:0},wrapuptime:{type:Sequelize.INTEGER(11),defaultValue:0},autofill:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[17]},autopause:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18],_0x4e6e[19]),defaultValue:_0x4e6e[18]},autopausedelay:{type:Sequelize.INTEGER(11)},autopausebusy:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},autopauseunavail:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},maxlen:{type:Sequelize.INTEGER(11),defaultValue:0},setinterfacevar:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},setqueueentryvar:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defautValue:_0x4e6e[18]},setqueuevar:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},eventmemberstatus:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},membermacro:{type:Sequelize[_0x4e6e[3]],allowNull:true},membergosub:{type:Sequelize[_0x4e6e[3]],allowNull:true},announce_frequency:{type:Sequelize.INTEGER(11),defaultValue:0},min_announce_frequency:{type:Sequelize.INTEGER(11),defaultValue:0},periodic_announce_frequency:{type:Sequelize.INTEGER(11),defaultValue:0},random_periodic_announce:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},relative_periodic_announce:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[17]},announce_holdtime:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18],_0x4e6e[20]),defaultValue:_0x4e6e[18]},announce_position:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[18]},announce_to_first_user:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18])},announce_position_limit:{type:Sequelize.INTEGER(11)},announce_round_seconds:{type:Sequelize.ENUM(_0x4e6e[21],_0x4e6e[22],_0x4e6e[23],_0x4e6e[24],_0x4e6e[25],_0x4e6e[26]),defaultValue:_0x4e6e[21]},monitor_format:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[8]},monitor_type:{type:Sequelize[_0x4e6e[3]]},queue_youarenext:{type:Sequelize[_0x4e6e[3]],defaultValue:null},queue_thereare:{type:Sequelize[_0x4e6e[3]],defaultValue:null},queue_callswaiting:{type:Sequelize[_0x4e6e[3]],defaultValue:null},queue_holdtime:{type:Sequelize[_0x4e6e[3]],defaultValue:null},queue_minute:{type:Sequelize[_0x4e6e[3]],allowNull:true,defaultValue:null},queue_minutes:{type:Sequelize[_0x4e6e[3]],defaultValue:null},queue_seconds:{type:Sequelize[_0x4e6e[3]],defaultValue:null},queue_thankyou:{type:Sequelize[_0x4e6e[3]],defaultValue:null},queue_reporthold:{type:Sequelize[_0x4e6e[3]]},queue_quantity1:{type:Sequelize[_0x4e6e[3]]},queue_quantity2:{type:Sequelize[_0x4e6e[3]]},queue_periodic_announce:{type:Sequelize[_0x4e6e[3]]},queue_less_than:{type:Sequelize[_0x4e6e[3]]},periodic_announce:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[8]},joinempty:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[17],set:function(_0x527dx2){this[_0x4e6e[30]](_0x4e6e[27],_0x527dx2?_0x527dx2[_0x4e6e[29]](_0x4e6e[28]):[])},get:function(){return this[_0x4e6e[31]](_0x4e6e[27])?this[_0x4e6e[31]](_0x4e6e[27])[_0x4e6e[32]](_0x4e6e[28]):[]}},leavewhenempty:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[18],set:function(_0x527dx2){this[_0x4e6e[30]](_0x4e6e[33],_0x527dx2?_0x527dx2[_0x4e6e[29]](_0x4e6e[28]):[])},get:function(){return this[_0x4e6e[31]](_0x4e6e[33])?this[_0x4e6e[31]](_0x4e6e[33])[_0x4e6e[32]](_0x4e6e[28]):[]}},reportholdtime:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},ringinuse:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},memberdelay:{type:Sequelize.INTEGER(11),defaultValue:0},timeoutrestart:{type:Sequelize.ENUM(_0x4e6e[17],_0x4e6e[18]),defaultValue:_0x4e6e[18]},defaultrule:{type:Sequelize[_0x4e6e[3]]},description:{type:Sequelize[_0x4e6e[3]]},acw:{type:Sequelize[_0x4e6e[34]],defaultValue:0},acwTimeout:{type:Sequelize.INTEGER(11),defaultValue:10},dialActive:{type:Sequelize[_0x4e6e[34]],defaultValue:0,comment:_0x4e6e[35]},dialMethod:{type:Sequelize.ENUM(_0x4e6e[36],_0x4e6e[37],_0x4e6e[38],_0x4e6e[39]),defaultValue:_0x4e6e[37],comment:_0x4e6e[40]},dialLimitChannel:{type:Sequelize.INTEGER(4)[_0x4e6e[41]],defaultValue:0,validate:{min:0,max:9999},comment:_0x4e6e[42]},dialLimitQueue:{type:Sequelize.INTEGER(4)[_0x4e6e[41]],defaultValue:0,validate:{min:0,max:9999},comment:_0x4e6e[43]},dialPowerLevel:{type:Sequelize.FLOAT(2)[_0x4e6e[41]],defaultValue:1,validate:{min:1,max:10},comment:_0x4e6e[44]},dialPredictiveOptimization:{type:Sequelize.ENUM(_0x4e6e[45],_0x4e6e[46]),defaultValue:_0x4e6e[46],comment:_0x4e6e[47]},dialPredictiveOptimizationPercentage:{type:Sequelize.FLOAT(2)[_0x4e6e[41]],defaultValue:3,validate:{min:1,max:95},comment:_0x4e6e[48]},dialPredictiveInterval:{type:Sequelize.INTEGER(3)[_0x4e6e[41]],defaultValue:10,validate:{min:5,max:30},comment:_0x4e6e[49]},dialOriginateCallerIdName:{type:Sequelize[_0x4e6e[3]]},dialOriginateCallerIdNumber:{type:Sequelize[_0x4e6e[3]]},dialOriginateTimeout:{type:Sequelize.INTEGER(3)[_0x4e6e[41]],defaultValue:30,validate:{min:1,max:999},comment:_0x4e6e[50]},dialQueueOptions:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[51],comment:_0x4e6e[52]},dialQueueTimeout:{type:Sequelize.INTEGER(2)[_0x4e6e[41]],defaultValue:3,validate:{min:1,max:99},comment:_0x4e6e[53]},dialQueueProject:{type:Sequelize[_0x4e6e[3]],comment:_0x4e6e[54]},dialCongestionMaxRetry:{type:Sequelize.INTEGER(3)[_0x4e6e[41]],defaultValue:3,validate:{min:1,max:999},comment:_0x4e6e[55]},dialCongestionRetryFrequency:{type:Sequelize.INTEGER(5)[_0x4e6e[41]],validate:{min:1,max:99999},defaultValue:150,comment:_0x4e6e[56]},dialBusyMaxRetry:{type:Sequelize.INTEGER(3)[_0x4e6e[41]],defaultValue:3,validate:{min:1,max:999},comment:_0x4e6e[57]},dialBusyRetryFrequency:{type:Sequelize.INTEGER(5)[_0x4e6e[41]],validate:{min:1,max:99999},defaultValue:150,comment:_0x4e6e[58]},dialNoAnswerMaxRetry:{type:Sequelize.INTEGER(3)[_0x4e6e[41]],defaultValue:3,comment:_0x4e6e[59]},dialNoAnswerRetryFrequency:{type:Sequelize.INTEGER(5)[_0x4e6e[41]],validate:{min:1,max:99999},defaultValue:150,comment:_0x4e6e[60]},dialGlobalMaxRetry:{type:Sequelize.INTEGER(3)[_0x4e6e[41]],validate:{min:1,max:999},defaultValue:4,comment:_0x4e6e[61]},dialTimezone:{type:Sequelize[_0x4e6e[3]],defaultValue:null},dialGlobalInterval:{type:Sequelize[_0x4e6e[3]],defaultValue:_0x4e6e[62]}}
\ No newline at end of file
index b286d89..d922ff7 100644 (file)
@@ -1 +1 @@
-var _0x8b41=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x25\x73\x2F\x25\x73","\x53\x49\x50","\x66\x6F\x72\x6D\x61\x74","\x6C\x6F\x67\x69\x6E\x49\x6E\x50\x61\x75\x73\x65","\x75\x70\x73\x65\x72\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x70\x75\x73\x68","\x61\x6C\x6C","\x72\x65\x61\x6C\x74\x69\x6D\x65","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x4D\x65\x6D\x62\x65\x72\x73","\x67\x65\x74\x4C\x69\x73\x74\x73","\x43\x6D\x4C\x69\x73\x74","\x61\x64\x64\x4C\x69\x73\x74\x73","\x67\x65\x74","\x70\x68\x6F\x6E\x65","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x4E\x4F\x54\x20\x45\x58\x49\x53\x54\x53\x20\x28\x3F\x29","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73\x2E\x69\x64\x20\x3D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x2E\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64\x20\x3D\x20\x3F","\x4C\x69\x73\x74\x49\x64\x20\x3D\x20\x3F\x20","\x43\x6D\x4C\x69\x73\x74\x49\x64","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x66\x72\x6F\x6D","\x4E\x55\x4C\x4C","\x66\x69\x65\x6C\x64","\x73\x65\x6C\x65\x63\x74","\x70\x68\x6F\x6E\x65\x20\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C","\x4C\x69\x73\x74\x49\x64\x20\x3D\x20\x3F","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x4E\x4F\x57\x28\x29","\x66\x72\x6F\x6D\x51\x75\x65\x72\x79","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72","\x69\x6E\x74\x6F","\x69\x6E\x73\x65\x72\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x73\x70\x72\x65\x61\x64","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x72\x65\x6D\x6F\x76\x65\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x73","\x67\x65\x74\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73"];_0x8b41[0];var jsonpatch=require(_0x8b41[1]);var rp=require(_0x8b41[2]);var moment=require(_0x8b41[3]);var BPromise=require(_0x8b41[4]);var util=require(_0x8b41[5]);var path=require(_0x8b41[6]);var sox=require(_0x8b41[7]);var ejs=require(_0x8b41[8]);var fs=require(_0x8b41[9]);var _=require(_0x8b41[10]);var squel=require(_0x8b41[11]);var crypto=require(_0x8b41[12]);var jsforce=require(_0x8b41[13]);var toCsv=require(_0x8b41[14]);var qs=require(_0x8b41[15]);var logger=require(_0x8b41[17])(_0x8b41[16]);var utils=require(_0x8b41[18]);var config=require(_0x8b41[19]);var db=require(_0x8b41[21])[_0x8b41[20]];function respondWithStatusCode(_0xe846x15,_0xe846x16,_0xe846x17){_0xe846x16= _0xe846x16|| 204;return function(_0xe846x18){if(_0xe846x18){logger[_0x8b41[24]](_0x8b41[22],_0xe846x17,_0xe846x16,_0x8b41[23]);logger[_0x8b41[26]](_0x8b41[25],_0xe846x17,_0xe846x16,_0x8b41[23]);return _0xe846x15[_0x8b41[27]](_0xe846x16)};return _0xe846x15[_0x8b41[29]](304)[_0x8b41[28]]()}}function respondWithResult(_0xe846x15,_0xe846x16,_0xe846x17){_0xe846x16= _0xe846x16|| 200;return function(_0xe846x18){if(_0xe846x18){logger[_0x8b41[24]](_0x8b41[22],_0xe846x17,_0xe846x16,_0x8b41[30]);logger[_0x8b41[26]](_0x8b41[25],_0xe846x17,_0xe846x16,_0x8b41[30],JSON[_0x8b41[31]](_0xe846x18));return _0xe846x15[_0x8b41[29]](_0xe846x16)[_0x8b41[32]](_0xe846x18)};return _0xe846x15[_0x8b41[29]](304)[_0x8b41[28]]()}}function respondWithFilteredResult(_0xe846x15,_0xe846x1b,_0xe846x17){return function(_0xe846x18){if(_0xe846x18){var _0xe846x1c=_0xe846x18[_0x8b41[33]],_0xe846x1d=_0xe846x1b[_0x8b41[34]],_0xe846x1e=_0xe846x1b[_0x8b41[34]]+ _0xe846x1b[_0x8b41[35]],_0xe846x16;if(_0xe846x1e>= _0xe846x1c){_0xe846x1e= _0xe846x1c;_0xe846x16= 200}else {_0xe846x16= 206};_0xe846x15[_0x8b41[29]](_0xe846x16);logger[_0x8b41[24]](_0x8b41[22],_0xe846x17,_0xe846x16,_0x8b41[36]);logger[_0x8b41[26]](_0x8b41[25],_0xe846x17,_0xe846x16,_0x8b41[30],JSON[_0x8b41[31]](_0xe846x18));return _0xe846x15[_0x8b41[40]](_0x8b41[37],_0xe846x1d+ _0x8b41[38]+ _0xe846x1e+ _0x8b41[39]+ _0xe846x1c)[_0x8b41[32]](_0xe846x18)};return null}}function patchUpdates(_0xe846x20){return function(_0xe846x18){try{jsonpatch[_0x8b41[41]](_0xe846x18,_0xe846x20,true)}catch(err){return BPromise[_0x8b41[42]](err)};return _0xe846x18[_0x8b41[43]]()}}function saveUpdates(_0xe846x22,_0xe846x16,_0xe846x17){return function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[46]](_0xe846x22)[_0x8b41[45]](function(_0xe846x23){logger[_0x8b41[24]](_0x8b41[22],_0xe846x17,_0xe846x16,_0x8b41[44]);logger[_0x8b41[26]](_0x8b41[25],_0xe846x17,_0xe846x16,_0x8b41[44],JSON[_0x8b41[31]](_0xe846x18));return _0xe846x23})};return null}}function removeEntity(_0xe846x15,_0xe846x16,_0xe846x17){return function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[48]]()[_0x8b41[45]](function(){logger[_0x8b41[24]](_0x8b41[22],_0xe846x17,_0xe846x16,_0x8b41[47]);logger[_0x8b41[26]](_0x8b41[25],_0xe846x17,_0xe846x16,_0x8b41[47],JSON[_0x8b41[31]](_0xe846x18));_0xe846x15[_0x8b41[29]](204)[_0x8b41[28]]()})}}}function handleEntityNotFound(_0xe846x15,_0xe846x16,_0xe846x17){return function(_0xe846x18){if(!_0xe846x18){logger[_0x8b41[50]](_0x8b41[22],_0xe846x17,404,_0x8b41[49]);_0xe846x15[_0x8b41[29]](404)[_0x8b41[28]]();return null};return _0xe846x18}}function handleError(_0xe846x15,_0xe846x16,_0xe846x17){_0xe846x16= _0xe846x16|| 500;return function(_0xe846x27){logger[_0x8b41[50]](_0x8b41[22],_0xe846x17,_0xe846x16,JSON[_0x8b41[31]](_0xe846x27));delete _0xe846x27[_0x8b41[51]];_0xe846x15[_0x8b41[29]](_0xe846x16)[_0x8b41[52]](_0xe846x27)}}exports[_0x8b41[53]]= function(_0xe846x28,_0xe846x15){var _0xe846x1b={},_0xe846x29={};_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[56]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return db[_0x8b41[56]][_0x8b41[76]](_0xe846x1b)[_0x8b41[45]](respondWithFilteredResult(_0xe846x15,_0xe846x1b,_0x8b41[53]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[53]))};exports[_0x8b41[77]]= function(_0xe846x28,_0xe846x15){var _0xe846x1b={raw:false,where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}},_0xe846x29={};_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[56]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return db[_0x8b41[56]][_0x8b41[80]](_0xe846x1b)[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[77]))[_0x8b41[45]](respondWithResult(_0xe846x15,null,_0x8b41[77]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[77]))};exports[_0x8b41[81]]= function(_0xe846x28,_0xe846x15){return db[_0x8b41[56]][_0x8b41[81]](_0xe846x28[_0x8b41[82]],{})[_0x8b41[45]](respondWithResult(_0xe846x15,201,_0x8b41[81]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[81]))};exports[_0x8b41[46]]= function(_0xe846x28,_0xe846x15){if(_0xe846x28[_0x8b41[82]][_0x8b41[78]]){delete _0xe846x28[_0x8b41[82]][_0x8b41[78]]};return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[46]))[_0x8b41[45]](saveUpdates(_0xe846x28[_0x8b41[82]],null,_0x8b41[46]))[_0x8b41[45]](respondWithResult(_0xe846x15,null,_0x8b41[46]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[46]))};exports[_0x8b41[48]]= function(_0xe846x28,_0xe846x15){return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[48]))[_0x8b41[45]](removeEntity(_0xe846x15,null,_0x8b41[48]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[48]))};exports[_0x8b41[83]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[83]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[84]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[83]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[83]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[83]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[83]))};exports[_0x8b41[86]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[86]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[87]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[86]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[86]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[86]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[86]))};exports[_0x8b41[88]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[88]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[89]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[88]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[88]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[88]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[88]))};exports[_0x8b41[90]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[90]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[91]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[90]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[90]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[90]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[90]))};exports[_0x8b41[92]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[92]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[93]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[92]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[92]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[92]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[92]))};exports[_0x8b41[94]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x30=[];var _0xe846x31;return db[_0x8b41[93]][_0x8b41[101]]({where:{id:_0xe846x28[_0x8b41[82]][_0x8b41[95]]},attributes:[_0x8b41[78]],include:[{model:db[_0x8b41[100]],as:_0x8b41[98],attributes:[_0x8b41[78]],raw:true}]})[_0x8b41[45]](function(_0xe846x34){if(_0xe846x34){for(var _0xe846x35=0;_0xe846x35< _0xe846x34[_0x8b41[63]];_0xe846x35+= 1){for(var _0xe846x36=0;_0xe846x36< _0xe846x34[_0xe846x35][_0x8b41[98]][_0x8b41[63]];_0xe846x36+= 1){_0xe846x30= _[_0x8b41[99]](_0xe846x30,[_0xe846x34[_0xe846x35][_0x8b41[98]][_0xe846x36][_0x8b41[78]]])}};return _0xe846x30}})[_0x8b41[45]](function(_0xe846x33){if(_0xe846x33){return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})}})[_0x8b41[45]](function(_0xe846x32){if(_0xe846x32){_0xe846x31= _0xe846x32;return _0xe846x31[_0x8b41[97]](_0xe846x30,{penalty:_0xe846x28[_0x8b41[82]][_0x8b41[96]]})}})[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){return _0xe846x31[_0x8b41[94]](_0xe846x28[_0x8b41[82]][_0x8b41[95]])}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[94]))[_0x8b41[45]](respondWithStatusCode(_0xe846x15,null,_0x8b41[94]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[94]))};exports[_0x8b41[102]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x30=[];var _0xe846x31;return db[_0x8b41[93]][_0x8b41[101]]({where:{id:_0xe846x28[_0x8b41[58]][_0x8b41[95]]},attributes:[_0x8b41[78]],include:[{model:db[_0x8b41[100]],as:_0x8b41[98],attributes:[_0x8b41[78]],raw:true}]})[_0x8b41[45]](function(_0xe846x34){if(_0xe846x34){for(var _0xe846x35=0;_0xe846x35< _0xe846x34[_0x8b41[63]];_0xe846x35+= 1){for(var _0xe846x36=0;_0xe846x36< _0xe846x34[_0xe846x35][_0x8b41[98]][_0x8b41[63]];_0xe846x36+= 1){_0xe846x30= _[_0x8b41[99]](_0xe846x30,[_0xe846x34[_0xe846x35][_0x8b41[98]][_0xe846x36][_0x8b41[78]]])}};return _0xe846x30}})[_0x8b41[45]](function(_0xe846x33){if(_0xe846x33){return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})}})[_0x8b41[45]](function(_0xe846x32){if(_0xe846x32){_0xe846x31= _0xe846x32;return _0xe846x31[_0x8b41[103]](_0xe846x30)}})[_0x8b41[45]](function(_0xe846x18){if(_0xe846x31){return _0xe846x31[_0x8b41[102]](_0xe846x28[_0x8b41[58]][_0x8b41[95]])}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[102]))[_0x8b41[45]](respondWithStatusCode(_0xe846x15,null,_0x8b41[102]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[102]))};exports[_0x8b41[97]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x37,_0xe846x31;return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[97]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x31= _0xe846x18;return _0xe846x18[_0x8b41[97]](_0xe846x28[_0x8b41[82]][_0x8b41[95]],_[_0x8b41[113]](_0xe846x28[_0x8b41[82]],[_0x8b41[95],_0x8b41[78]])|| {})};return null})[_0x8b41[45]](function(_0xe846x39){_0xe846x37= _0xe846x39|| [];if(_0xe846x31&& _0xe846x28[_0x8b41[82]][_0x8b41[112]]){return db[_0x8b41[100]][_0x8b41[101]]({where:{id:_0xe846x28[_0x8b41[82]][_0x8b41[95]]},attributes:[_0x8b41[78],_0x8b41[51],_0x8b41[107]],raw:true})}})[_0x8b41[45]](function(_0xe846x39){if(_0xe846x39&& _0xe846x39[_0x8b41[63]]){var _0xe846x3a=[];for(var _0xe846x35=0;_0xe846x35< _0xe846x39[_0x8b41[63]];_0xe846x35++){_0xe846x3a[_0x8b41[110]](db[_0x8b41[109]][_0x8b41[108]]({membername:_0xe846x39[_0xe846x35][_0x8b41[51]],UserId:_0xe846x39[_0xe846x35][_0x8b41[78]],queue_name:_0xe846x31[_0x8b41[51]],VoiceQueueId:_0xe846x31[_0x8b41[78]],interface:util[_0x8b41[106]](_0x8b41[104],_0x8b41[105],_0xe846x39[_0xe846x35][_0x8b41[51]]),paused:_0xe846x39[_0xe846x35][_0x8b41[107]]|| false,penalty:_0xe846x28[_0x8b41[82]][_0x8b41[96]]|| 0}))};return BPromise[_0x8b41[111]](_0xe846x3a)}})[_0x8b41[45]](function(_0xe846x38){return _0xe846x37})[_0x8b41[45]](respondWithResult(_0xe846x15,null,_0x8b41[97]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[97]))};exports[_0x8b41[103]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x2f;return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[103]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[103]](_0xe846x28[_0x8b41[58]][_0x8b41[95]])}})[_0x8b41[45]](function(_0xe846x3b){if(_0xe846x28[_0x8b41[58]][_0x8b41[112]]){_0xe846x2f= _0xe846x3b;return db[_0x8b41[109]][_0x8b41[48]]({where:{VoiceQueueId:_0xe846x28[_0x8b41[79]][_0x8b41[78]],UserId:_0xe846x28[_0x8b41[58]][_0x8b41[95]]}})[_0x8b41[45]](function(){return _0xe846x2f})}})[_0x8b41[45]](respondWithStatusCode(_0xe846x15,null,_0x8b41[103]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[103]))};exports[_0x8b41[114]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[114]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[100]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[114]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[114]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[114]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[114]))};exports[_0x8b41[115]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[115]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[109]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[115]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[115]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[115]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[115]))};exports[_0x8b41[116]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[116]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[117]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[116]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[116]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[116]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[116]))};exports[_0x8b41[118]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x3c;return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[118]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[118]](_0xe846x28[_0x8b41[82]][_0x8b41[95]],_[_0x8b41[113]](_0xe846x28[_0x8b41[82]],[_0x8b41[95],_0x8b41[78]])|| {})};return null})[_0x8b41[146]](function(_0xe846x3b){_0xe846x3c= _0xe846x3b|| [];var _0xe846x3a=[];if(_0xe846x3b){for(var _0xe846x35=0;_0xe846x35< _0xe846x3b[_0x8b41[63]];_0xe846x35++){var _0xe846x3d=_0xe846x3b[_0xe846x35][_0x8b41[119]]({plain:true});var _0xe846x3e=squel[_0x8b41[144]]()[_0x8b41[143]](_0x8b41[142])[_0x8b41[141]]([_0x8b41[120],_0x8b41[121],_0x8b41[122],_0x8b41[123],_0x8b41[124],_0x8b41[125],_0x8b41[126]],squel[_0x8b41[136]]()[_0x8b41[135]](_0x8b41[120])[_0x8b41[135]](_0x8b41[140],_0x8b41[121])[_0x8b41[135]](_0x8b41[78])[_0x8b41[135]](_0xe846x3d[_0x8b41[131]].toString())[_0x8b41[135]](_0xe846x28[_0x8b41[79]][_0x8b41[78]])[_0x8b41[135]](_0x8b41[140],_0x8b41[125])[_0x8b41[135]](_0x8b41[140],_0x8b41[126])[_0x8b41[133]](_0x8b41[139])[_0x8b41[68]](_0x8b41[138],_0xe846x3d[_0x8b41[131]].toString())[_0x8b41[68]](_0x8b41[137])[_0x8b41[68]](_0x8b41[127],squel[_0x8b41[136]]()[_0x8b41[135]](_0x8b41[134])[_0x8b41[133]](_0x8b41[132])[_0x8b41[68]](_0x8b41[130],_0xe846x3d[_0x8b41[131]].toString())[_0x8b41[68]](_0x8b41[129],_0xe846x28[_0x8b41[79]][_0x8b41[78]].toString())[_0x8b41[68]](_0x8b41[128]))).toString();_0xe846x3a[_0x8b41[110]](db[_0x8b41[145]][_0x8b41[58]](_0xe846x3e))};return BPromise[_0x8b41[111]](_0xe846x3a)}})[_0x8b41[45]](function(){return _0xe846x3c})[_0x8b41[45]](respondWithResult(_0xe846x15,null,_0x8b41[118]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[118]))};exports[_0x8b41[147]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x3c;return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[147]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[147]](_0xe846x28[_0x8b41[82]][_0x8b41[95]],_[_0x8b41[113]](_0xe846x28[_0x8b41[82]],[_0x8b41[95],_0x8b41[78]])|| {})};return null})[_0x8b41[146]](function(_0xe846x3b){_0xe846x3c= _0xe846x3b|| [];var _0xe846x3a=[];if(_0xe846x3b){for(var _0xe846x35=0;_0xe846x35< _0xe846x3b[_0x8b41[63]];_0xe846x35++){var _0xe846x3d=_0xe846x3b[_0xe846x35][_0x8b41[119]]({plain:true});var _0xe846x3e=squel[_0x8b41[144]]()[_0x8b41[143]](_0x8b41[148])[_0x8b41[141]]([_0x8b41[120],_0x8b41[122],_0x8b41[123],_0x8b41[124],_0x8b41[125],_0x8b41[126]],squel[_0x8b41[136]]()[_0x8b41[135]](_0x8b41[120])[_0x8b41[135]](_0x8b41[78])[_0x8b41[135]](_0xe846x3d[_0x8b41[131]].toString())[_0x8b41[135]](_0xe846x28[_0x8b41[79]][_0x8b41[78]])[_0x8b41[135]](_0x8b41[140],_0x8b41[125])[_0x8b41[135]](_0x8b41[140],_0x8b41[126])[_0x8b41[133]](_0x8b41[139])[_0x8b41[68]](_0x8b41[138],_0xe846x3d[_0x8b41[131]].toString())[_0x8b41[68]](_0x8b41[137])).toString();_0xe846x3a[_0x8b41[110]](db[_0x8b41[145]][_0x8b41[58]](_0xe846x3e))};return BPromise[_0x8b41[111]](_0xe846x3a)}})[_0x8b41[45]](function(){return _0xe846x3c})[_0x8b41[45]](respondWithResult(_0xe846x15,null,_0x8b41[147]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[147]))};exports[_0x8b41[149]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x2f;return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[149]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[149]](_0xe846x28[_0x8b41[58]][_0x8b41[95]])}})[_0x8b41[45]](function(_0xe846x3b){if(_0xe846x3b){_0xe846x2f= _0xe846x3b;return db[_0x8b41[91]][_0x8b41[48]]({where:{ListId:_0xe846x28[_0x8b41[58]][_0x8b41[95]],VoiceQueueId:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](function(){return _0xe846x2f})}})[_0x8b41[45]](respondWithStatusCode(_0xe846x15,null,_0x8b41[149]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[149]))};exports[_0x8b41[150]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x2f;return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[150]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[150]](_0xe846x28[_0x8b41[58]][_0x8b41[95]])}})[_0x8b41[45]](function(_0xe846x3b){if(_0xe846x3b){_0xe846x2f= _0xe846x3b;return db[_0x8b41[84]][_0x8b41[48]]({where:{ListId:_0xe846x28[_0x8b41[58]][_0x8b41[95]],VoiceQueueId:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](function(){return _0xe846x2f})}})[_0x8b41[45]](respondWithStatusCode(_0xe846x15,null,_0x8b41[150]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[150]))};exports[_0x8b41[151]]= function(_0xe846x28,_0xe846x18,_0xe846x2c){var _0xe846x1b={};var _0xe846x29={};var _0xe846x2d;var _0xe846x1c;return db[_0x8b41[56]][_0x8b41[85]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x18,null,_0x8b41[151]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){_0xe846x2d= _0xe846x18;_0xe846x29[_0x8b41[54]]= _[_0x8b41[57]](db[_0x8b41[117]][_0x8b41[55]]);_0xe846x29[_0x8b41[58]]= _[_0x8b41[57]](_0xe846x28[_0x8b41[58]]);_0xe846x29[_0x8b41[59]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],_0xe846x29[_0x8b41[58]]);_0xe846x1b[_0x8b41[61]]= _[_0x8b41[60]](_0xe846x29[_0x8b41[54]],qs[_0x8b41[62]](_0xe846x28[_0x8b41[58]][_0x8b41[62]]));_0xe846x1b[_0x8b41[61]]= (_0xe846x1b[_0x8b41[61]][_0x8b41[63]])?_0xe846x1b[_0x8b41[61]]:_0xe846x29[_0x8b41[54]];_0xe846x1b[_0x8b41[66]]= qs[_0x8b41[67]](_0xe846x28[_0x8b41[58]][_0x8b41[67]]);_0xe846x1b[_0x8b41[68]]= qs[_0x8b41[59]](_[_0x8b41[69]](_0xe846x28[_0x8b41[58]],_0xe846x29[_0x8b41[59]]));if(_0xe846x28[_0x8b41[58]][_0x8b41[70]]){_0xe846x1b[_0x8b41[68]]= _[_0x8b41[73]](_0xe846x1b[_0x8b41[68]],{$or:_[_0x8b41[72]](_0xe846x1b[_0x8b41[61]],function(_0xe846x2a){var _0xe846x2b={};_0xe846x2b[_0xe846x2a]= {$like:_0x8b41[71]+ _0xe846x28[_0x8b41[58]][_0x8b41[70]]+ _0x8b41[71]};return _0xe846x2b})})};_0xe846x1b= _[_0x8b41[73]]({},_0xe846x1b,_0xe846x28[_0x8b41[74]]);return _0xe846x2d[_0x8b41[151]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2f){if(_0xe846x2f){_0xe846x1c= _0xe846x2f[_0x8b41[63]];if(!_0xe846x28[_0x8b41[58]][_0x8b41[65]](_0x8b41[64])){_0xe846x1b[_0x8b41[35]]= qs[_0x8b41[35]](_0xe846x28[_0x8b41[58]][_0x8b41[35]]);_0xe846x1b[_0x8b41[34]]= qs[_0x8b41[34]](_0xe846x28[_0x8b41[58]][_0x8b41[34]])};return _0xe846x2d[_0x8b41[151]](_0xe846x1b)}})[_0x8b41[45]](function(_0xe846x2e){return _0xe846x2e?{count:_0xe846x1c,rows:_0xe846x2e}:null})[_0x8b41[45]](respondWithResult(_0xe846x18,null,_0x8b41[151]))[_0x8b41[75]](handleError(_0xe846x18,null,_0x8b41[151]))};exports[_0x8b41[147]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x3c;return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[147]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[147]](_0xe846x28[_0x8b41[82]][_0x8b41[95]],_[_0x8b41[113]](_0xe846x28[_0x8b41[82]],[_0x8b41[95],_0x8b41[78]])|| {})};return null})[_0x8b41[146]](function(_0xe846x3b){_0xe846x3c= _0xe846x3b|| [];var _0xe846x3a=[];if(_0xe846x3b){for(var _0xe846x35=0;_0xe846x35< _0xe846x3b[_0x8b41[63]];_0xe846x35++){var _0xe846x3d=_0xe846x3b[_0xe846x35][_0x8b41[119]]({plain:true});var _0xe846x3e=squel[_0x8b41[144]]()[_0x8b41[143]](_0x8b41[148])[_0x8b41[141]]([_0x8b41[120],_0x8b41[122],_0x8b41[123],_0x8b41[124],_0x8b41[125],_0x8b41[126]],squel[_0x8b41[136]]()[_0x8b41[135]](_0x8b41[120])[_0x8b41[135]](_0x8b41[78])[_0x8b41[135]](_0xe846x3d[_0x8b41[131]].toString())[_0x8b41[135]](_0xe846x28[_0x8b41[79]][_0x8b41[78]])[_0x8b41[135]](_0x8b41[140],_0x8b41[125])[_0x8b41[135]](_0x8b41[140],_0x8b41[126])[_0x8b41[133]](_0x8b41[139])[_0x8b41[68]](_0x8b41[138],_0xe846x3d[_0x8b41[131]].toString())[_0x8b41[68]](_0x8b41[137])).toString();_0xe846x3a[_0x8b41[110]](db[_0x8b41[145]][_0x8b41[58]](_0xe846x3e))};return BPromise[_0x8b41[111]](_0xe846x3a)}})[_0x8b41[45]](function(){return _0xe846x3c})[_0x8b41[45]](respondWithResult(_0xe846x15,null,_0x8b41[147]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[147]))};exports[_0x8b41[149]]= function(_0xe846x28,_0xe846x15,_0xe846x2c){var _0xe846x2f;return db[_0x8b41[56]][_0x8b41[80]]({where:{id:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](handleEntityNotFound(_0xe846x15,null,_0x8b41[149]))[_0x8b41[45]](function(_0xe846x18){if(_0xe846x18){return _0xe846x18[_0x8b41[149]](_0xe846x28[_0x8b41[58]][_0x8b41[95]])}})[_0x8b41[45]](function(_0xe846x3b){if(_0xe846x3b){_0xe846x2f= _0xe846x3b;return db[_0x8b41[91]][_0x8b41[48]]({where:{ListId:_0xe846x28[_0x8b41[58]][_0x8b41[95]],VoiceQueueId:_0xe846x28[_0x8b41[79]][_0x8b41[78]]}})[_0x8b41[45]](function(){return _0xe846x2f})}})[_0x8b41[45]](respondWithStatusCode(_0xe846x15,null,_0x8b41[149]))[_0x8b41[75]](handleError(_0xe846x15,null,_0x8b41[149]))}
\ No newline at end of file
+var _0xd503=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x66\x69\x6E\x64\x4F\x6E\x65","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x67\x65\x74\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x67\x65\x74\x54\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x61\x64\x64\x54\x65\x61\x6D\x73","\x69\x64\x73","\x70\x65\x6E\x61\x6C\x74\x79","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x75\x6E\x69\x6F\x6E","\x55\x73\x65\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x54\x65\x61\x6D\x73","\x72\x65\x6D\x6F\x76\x65\x41\x67\x65\x6E\x74\x73","\x25\x73\x2F\x25\x73","\x53\x49\x50","\x66\x6F\x72\x6D\x61\x74","\x6C\x6F\x67\x69\x6E\x49\x6E\x50\x61\x75\x73\x65","\x75\x70\x73\x65\x72\x74","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x70\x75\x73\x68","\x61\x6C\x6C","\x72\x65\x61\x6C\x74\x69\x6D\x65","\x6F\x6D\x69\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x4D\x65\x6D\x62\x65\x72\x73","\x67\x65\x74\x4C\x69\x73\x74\x73","\x43\x6D\x4C\x69\x73\x74","\x61\x64\x64\x4C\x69\x73\x74\x73","\x67\x65\x74","\x70\x68\x6F\x6E\x65","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x4E\x4F\x54\x20\x45\x58\x49\x53\x54\x53\x20\x28\x3F\x29","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73\x2E\x69\x64\x20\x3D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x2E\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64\x20\x3D\x20\x3F","\x4C\x69\x73\x74\x49\x64\x20\x3D\x20\x3F\x20","\x43\x6D\x4C\x69\x73\x74\x49\x64","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x66\x72\x6F\x6D","\x4E\x55\x4C\x4C","\x66\x69\x65\x6C\x64","\x73\x65\x6C\x65\x63\x74","\x70\x68\x6F\x6E\x65\x20\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C","\x4C\x69\x73\x74\x49\x64\x20\x3D\x20\x3F","\x63\x6D\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x4E\x4F\x57\x28\x29","\x66\x72\x6F\x6D\x51\x75\x65\x72\x79","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72","\x69\x6E\x74\x6F","\x69\x6E\x73\x65\x72\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x73\x70\x72\x65\x61\x64","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x72\x65\x6D\x6F\x76\x65\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x73","\x67\x65\x74\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73"];_0xd503[0];var jsonpatch=require(_0xd503[1]);var rp=require(_0xd503[2]);var moment=require(_0xd503[3]);var BPromise=require(_0xd503[4]);var util=require(_0xd503[5]);var path=require(_0xd503[6]);var sox=require(_0xd503[7]);var ejs=require(_0xd503[8]);var fs=require(_0xd503[9]);var _=require(_0xd503[10]);var squel=require(_0xd503[11]);var crypto=require(_0xd503[12]);var jsforce=require(_0xd503[13]);var toCsv=require(_0xd503[14]);var qs=require(_0xd503[15]);var logger=require(_0xd503[17])(_0xd503[16]);var utils=require(_0xd503[18]);var config=require(_0xd503[19]);var db=require(_0xd503[21])[_0xd503[20]];function respondWithStatusCode(_0xa72dx15,_0xa72dx16,_0xa72dx17){_0xa72dx16= _0xa72dx16|| 204;return function(_0xa72dx18){if(_0xa72dx18){logger[_0xd503[24]](_0xd503[22],_0xa72dx17,_0xa72dx16,_0xd503[23]);logger[_0xd503[26]](_0xd503[25],_0xa72dx17,_0xa72dx16,_0xd503[23]);return _0xa72dx15[_0xd503[27]](_0xa72dx16)};return _0xa72dx15[_0xd503[29]](304)[_0xd503[28]]()}}function respondWithResult(_0xa72dx15,_0xa72dx16,_0xa72dx17){_0xa72dx16= _0xa72dx16|| 200;return function(_0xa72dx18){if(_0xa72dx18){logger[_0xd503[24]](_0xd503[22],_0xa72dx17,_0xa72dx16,_0xd503[30]);logger[_0xd503[26]](_0xd503[25],_0xa72dx17,_0xa72dx16,_0xd503[30],JSON[_0xd503[31]](_0xa72dx18));return _0xa72dx15[_0xd503[29]](_0xa72dx16)[_0xd503[32]](_0xa72dx18)};return _0xa72dx15[_0xd503[29]](304)[_0xd503[28]]()}}function respondWithFilteredResult(_0xa72dx15,_0xa72dx1b,_0xa72dx17){return function(_0xa72dx18){if(_0xa72dx18){var _0xa72dx1c=_0xa72dx18[_0xd503[33]],_0xa72dx1d=_0xa72dx1b[_0xd503[34]],_0xa72dx1e=_0xa72dx1b[_0xd503[34]]+ _0xa72dx1b[_0xd503[35]],_0xa72dx16;if(_0xa72dx1e>= _0xa72dx1c){_0xa72dx1e= _0xa72dx1c;_0xa72dx16= 200}else {_0xa72dx16= 206};_0xa72dx15[_0xd503[29]](_0xa72dx16);logger[_0xd503[24]](_0xd503[22],_0xa72dx17,_0xa72dx16,_0xd503[36]);logger[_0xd503[26]](_0xd503[25],_0xa72dx17,_0xa72dx16,_0xd503[30],JSON[_0xd503[31]](_0xa72dx18));return _0xa72dx15[_0xd503[40]](_0xd503[37],_0xa72dx1d+ _0xd503[38]+ _0xa72dx1e+ _0xd503[39]+ _0xa72dx1c)[_0xd503[32]](_0xa72dx18)};return null}}function patchUpdates(_0xa72dx20){return function(_0xa72dx18){try{jsonpatch[_0xd503[41]](_0xa72dx18,_0xa72dx20,true)}catch(err){return BPromise[_0xd503[42]](err)};return _0xa72dx18[_0xd503[43]]()}}function saveUpdates(_0xa72dx22,_0xa72dx16,_0xa72dx17){return function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[46]](_0xa72dx22)[_0xd503[45]](function(_0xa72dx23){logger[_0xd503[24]](_0xd503[22],_0xa72dx17,_0xa72dx16,_0xd503[44]);logger[_0xd503[26]](_0xd503[25],_0xa72dx17,_0xa72dx16,_0xd503[44],JSON[_0xd503[31]](_0xa72dx18));return _0xa72dx23})};return null}}function removeEntity(_0xa72dx15,_0xa72dx16,_0xa72dx17){return function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[48]]()[_0xd503[45]](function(){logger[_0xd503[24]](_0xd503[22],_0xa72dx17,_0xa72dx16,_0xd503[47]);logger[_0xd503[26]](_0xd503[25],_0xa72dx17,_0xa72dx16,_0xd503[47],JSON[_0xd503[31]](_0xa72dx18));_0xa72dx15[_0xd503[29]](204)[_0xd503[28]]()})}}}function handleEntityNotFound(_0xa72dx15,_0xa72dx16,_0xa72dx17){return function(_0xa72dx18){if(!_0xa72dx18){logger[_0xd503[50]](_0xd503[22],_0xa72dx17,404,_0xd503[49]);_0xa72dx15[_0xd503[29]](404)[_0xd503[28]]();return null};return _0xa72dx18}}function handleError(_0xa72dx15,_0xa72dx16,_0xa72dx17){_0xa72dx16= _0xa72dx16|| 500;return function(_0xa72dx27){logger[_0xd503[50]](_0xd503[22],_0xa72dx17,_0xa72dx16,JSON[_0xd503[31]](_0xa72dx27));delete _0xa72dx27[_0xd503[51]];_0xa72dx15[_0xd503[29]](_0xa72dx16)[_0xd503[52]](_0xa72dx27)}}exports[_0xd503[53]]= function(_0xa72dx28,_0xa72dx15){var _0xa72dx1b={},_0xa72dx29={};_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[56]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return db[_0xd503[56]][_0xd503[76]](_0xa72dx1b)[_0xd503[45]](respondWithFilteredResult(_0xa72dx15,_0xa72dx1b,_0xd503[53]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[53]))};exports[_0xd503[77]]= function(_0xa72dx28,_0xa72dx15){var _0xa72dx1b={raw:false,where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}},_0xa72dx29={};_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[56]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return db[_0xd503[56]][_0xd503[80]](_0xa72dx1b)[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[77]))[_0xd503[45]](respondWithResult(_0xa72dx15,null,_0xd503[77]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[77]))};exports[_0xd503[81]]= function(_0xa72dx28,_0xa72dx15){return db[_0xd503[56]][_0xd503[81]](_0xa72dx28[_0xd503[82]],{})[_0xd503[45]](respondWithResult(_0xa72dx15,201,_0xd503[81]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[81]))};exports[_0xd503[46]]= function(_0xa72dx28,_0xa72dx15){if(_0xa72dx28[_0xd503[82]][_0xd503[78]]){delete _0xa72dx28[_0xd503[82]][_0xd503[78]]};return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[46]))[_0xd503[45]](saveUpdates(_0xa72dx28[_0xd503[82]],null,_0xd503[46]))[_0xd503[45]](respondWithResult(_0xa72dx15,null,_0xd503[46]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[46]))};exports[_0xd503[48]]= function(_0xa72dx28,_0xa72dx15){return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[48]))[_0xd503[45]](removeEntity(_0xa72dx15,null,_0xd503[48]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[48]))};exports[_0xd503[83]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[83]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[84]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[83]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[83]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[83]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[83]))};exports[_0xd503[86]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[86]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[87]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[86]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[86]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[86]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[86]))};exports[_0xd503[88]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[88]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[89]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[88]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[88]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[88]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[88]))};exports[_0xd503[90]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[90]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[91]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[90]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[90]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[90]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[90]))};exports[_0xd503[92]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[92]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[93]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[92]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[92]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[92]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[92]))};exports[_0xd503[94]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx30=[];var _0xa72dx31;return db[_0xd503[93]][_0xd503[101]]({where:{id:_0xa72dx28[_0xd503[82]][_0xd503[95]]},attributes:[_0xd503[78]],include:[{model:db[_0xd503[100]],as:_0xd503[98],attributes:[_0xd503[78]],raw:true}]})[_0xd503[45]](function(_0xa72dx34){if(_0xa72dx34){for(var _0xa72dx35=0;_0xa72dx35< _0xa72dx34[_0xd503[63]];_0xa72dx35+= 1){for(var _0xa72dx36=0;_0xa72dx36< _0xa72dx34[_0xa72dx35][_0xd503[98]][_0xd503[63]];_0xa72dx36+= 1){_0xa72dx30= _[_0xd503[99]](_0xa72dx30,[_0xa72dx34[_0xa72dx35][_0xd503[98]][_0xa72dx36][_0xd503[78]]])}};return _0xa72dx30}})[_0xd503[45]](function(_0xa72dx33){if(_0xa72dx33){return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})}})[_0xd503[45]](function(_0xa72dx32){if(_0xa72dx32){_0xa72dx31= _0xa72dx32;return _0xa72dx31[_0xd503[97]](_0xa72dx30,{penalty:_0xa72dx28[_0xd503[82]][_0xd503[96]]})}})[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx31[_0xd503[94]](_0xa72dx28[_0xd503[82]][_0xd503[95]])}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[94]))[_0xd503[45]](respondWithStatusCode(_0xa72dx15,null,_0xd503[94]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[94]))};exports[_0xd503[102]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx30=[];var _0xa72dx31;return db[_0xd503[93]][_0xd503[101]]({where:{id:_0xa72dx28[_0xd503[58]][_0xd503[95]]},attributes:[_0xd503[78]],include:[{model:db[_0xd503[100]],as:_0xd503[98],attributes:[_0xd503[78]],raw:true}]})[_0xd503[45]](function(_0xa72dx34){if(_0xa72dx34){for(var _0xa72dx35=0;_0xa72dx35< _0xa72dx34[_0xd503[63]];_0xa72dx35+= 1){for(var _0xa72dx36=0;_0xa72dx36< _0xa72dx34[_0xa72dx35][_0xd503[98]][_0xd503[63]];_0xa72dx36+= 1){_0xa72dx30= _[_0xd503[99]](_0xa72dx30,[_0xa72dx34[_0xa72dx35][_0xd503[98]][_0xa72dx36][_0xd503[78]]])}};return _0xa72dx30}})[_0xd503[45]](function(_0xa72dx33){if(_0xa72dx33){return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})}})[_0xd503[45]](function(_0xa72dx32){if(_0xa72dx32){_0xa72dx31= _0xa72dx32;return _0xa72dx31[_0xd503[103]](_0xa72dx30)}})[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx31){return _0xa72dx31[_0xd503[102]](_0xa72dx28[_0xd503[58]][_0xd503[95]])}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[102]))[_0xd503[45]](respondWithStatusCode(_0xa72dx15,null,_0xd503[102]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[102]))};exports[_0xd503[97]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx37,_0xa72dx31;return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[97]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx31= _0xa72dx18;return _0xa72dx18[_0xd503[97]](_0xa72dx28[_0xd503[82]][_0xd503[95]],_[_0xd503[113]](_0xa72dx28[_0xd503[82]],[_0xd503[95],_0xd503[78]])|| {})};return null})[_0xd503[45]](function(_0xa72dx39){_0xa72dx37= _0xa72dx39|| [];if(_0xa72dx31&& _0xa72dx28[_0xd503[82]][_0xd503[112]]){return db[_0xd503[100]][_0xd503[101]]({where:{id:_0xa72dx28[_0xd503[82]][_0xd503[95]]},attributes:[_0xd503[78],_0xd503[51],_0xd503[107]],raw:true})}})[_0xd503[45]](function(_0xa72dx39){if(_0xa72dx39&& _0xa72dx39[_0xd503[63]]){var _0xa72dx3a=[];for(var _0xa72dx35=0;_0xa72dx35< _0xa72dx39[_0xd503[63]];_0xa72dx35++){_0xa72dx3a[_0xd503[110]](db[_0xd503[109]][_0xd503[108]]({membername:_0xa72dx39[_0xa72dx35][_0xd503[51]],UserId:_0xa72dx39[_0xa72dx35][_0xd503[78]],queue_name:_0xa72dx31[_0xd503[51]],VoiceQueueId:_0xa72dx31[_0xd503[78]],interface:util[_0xd503[106]](_0xd503[104],_0xd503[105],_0xa72dx39[_0xa72dx35][_0xd503[51]]),paused:_0xa72dx39[_0xa72dx35][_0xd503[107]]|| false,penalty:_0xa72dx28[_0xd503[82]][_0xd503[96]]|| 0}))};return BPromise[_0xd503[111]](_0xa72dx3a)}})[_0xd503[45]](function(_0xa72dx38){return _0xa72dx37})[_0xd503[45]](respondWithResult(_0xa72dx15,null,_0xd503[97]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[97]))};exports[_0xd503[103]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx2f;return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[103]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[103]](_0xa72dx28[_0xd503[58]][_0xd503[95]])}})[_0xd503[45]](function(_0xa72dx3b){if(_0xa72dx28[_0xd503[58]][_0xd503[112]]){_0xa72dx2f= _0xa72dx3b;return db[_0xd503[109]][_0xd503[48]]({where:{VoiceQueueId:_0xa72dx28[_0xd503[79]][_0xd503[78]],UserId:_0xa72dx28[_0xd503[58]][_0xd503[95]]}})[_0xd503[45]](function(){return _0xa72dx2f})}})[_0xd503[45]](respondWithStatusCode(_0xa72dx15,null,_0xd503[103]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[103]))};exports[_0xd503[114]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[114]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[100]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[114]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[114]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[114]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[114]))};exports[_0xd503[115]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[115]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[109]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[115]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[115]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[115]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[115]))};exports[_0xd503[116]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[116]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[117]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[116]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[116]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[116]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[116]))};exports[_0xd503[118]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx3c;return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[118]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[118]](_0xa72dx28[_0xd503[82]][_0xd503[95]],_[_0xd503[113]](_0xa72dx28[_0xd503[82]],[_0xd503[95],_0xd503[78]])|| {})};return null})[_0xd503[146]](function(_0xa72dx3b){_0xa72dx3c= _0xa72dx3b|| [];var _0xa72dx3a=[];if(_0xa72dx3b){for(var _0xa72dx35=0;_0xa72dx35< _0xa72dx3b[_0xd503[63]];_0xa72dx35++){var _0xa72dx3d=_0xa72dx3b[_0xa72dx35][_0xd503[119]]({plain:true});var _0xa72dx3e=squel[_0xd503[144]]()[_0xd503[143]](_0xd503[142])[_0xd503[141]]([_0xd503[120],_0xd503[121],_0xd503[122],_0xd503[123],_0xd503[124],_0xd503[125],_0xd503[126]],squel[_0xd503[136]]()[_0xd503[135]](_0xd503[120])[_0xd503[135]](_0xd503[140],_0xd503[121])[_0xd503[135]](_0xd503[78])[_0xd503[135]](_0xa72dx3d[_0xd503[131]].toString())[_0xd503[135]](_0xa72dx28[_0xd503[79]][_0xd503[78]])[_0xd503[135]](_0xd503[140],_0xd503[125])[_0xd503[135]](_0xd503[140],_0xd503[126])[_0xd503[133]](_0xd503[139])[_0xd503[68]](_0xd503[138],_0xa72dx3d[_0xd503[131]].toString())[_0xd503[68]](_0xd503[137])[_0xd503[68]](_0xd503[127],squel[_0xd503[136]]()[_0xd503[135]](_0xd503[134])[_0xd503[133]](_0xd503[132])[_0xd503[68]](_0xd503[130],_0xa72dx3d[_0xd503[131]].toString())[_0xd503[68]](_0xd503[129],_0xa72dx28[_0xd503[79]][_0xd503[78]].toString())[_0xd503[68]](_0xd503[128]))).toString();_0xa72dx3a[_0xd503[110]](db[_0xd503[145]][_0xd503[58]](_0xa72dx3e))};return BPromise[_0xd503[111]](_0xa72dx3a)}})[_0xd503[45]](function(){return _0xa72dx3c})[_0xd503[45]](respondWithResult(_0xa72dx15,null,_0xd503[118]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[118]))};exports[_0xd503[147]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx3c;return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[147]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[147]](_0xa72dx28[_0xd503[82]][_0xd503[95]],_[_0xd503[113]](_0xa72dx28[_0xd503[82]],[_0xd503[95],_0xd503[78]])|| {})};return null})[_0xd503[146]](function(_0xa72dx3b){_0xa72dx3c= _0xa72dx3b|| [];var _0xa72dx3a=[];if(_0xa72dx3b){for(var _0xa72dx35=0;_0xa72dx35< _0xa72dx3b[_0xd503[63]];_0xa72dx35++){var _0xa72dx3d=_0xa72dx3b[_0xa72dx35][_0xd503[119]]({plain:true});var _0xa72dx3e=squel[_0xd503[144]]()[_0xd503[143]](_0xd503[148])[_0xd503[141]]([_0xd503[120],_0xd503[122],_0xd503[123],_0xd503[124],_0xd503[125],_0xd503[126]],squel[_0xd503[136]]()[_0xd503[135]](_0xd503[120])[_0xd503[135]](_0xd503[78])[_0xd503[135]](_0xa72dx3d[_0xd503[131]].toString())[_0xd503[135]](_0xa72dx28[_0xd503[79]][_0xd503[78]])[_0xd503[135]](_0xd503[140],_0xd503[125])[_0xd503[135]](_0xd503[140],_0xd503[126])[_0xd503[133]](_0xd503[139])[_0xd503[68]](_0xd503[138],_0xa72dx3d[_0xd503[131]].toString())[_0xd503[68]](_0xd503[137])).toString();_0xa72dx3a[_0xd503[110]](db[_0xd503[145]][_0xd503[58]](_0xa72dx3e))};return BPromise[_0xd503[111]](_0xa72dx3a)}})[_0xd503[45]](function(){return _0xa72dx3c})[_0xd503[45]](respondWithResult(_0xa72dx15,null,_0xd503[147]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[147]))};exports[_0xd503[149]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx2f;return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[149]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[149]](_0xa72dx28[_0xd503[58]][_0xd503[95]])}})[_0xd503[45]](function(_0xa72dx3b){if(_0xa72dx3b){_0xa72dx2f= _0xa72dx3b;return db[_0xd503[91]][_0xd503[48]]({where:{ListId:_0xa72dx28[_0xd503[58]][_0xd503[95]],VoiceQueueId:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](function(){return _0xa72dx2f})}})[_0xd503[45]](respondWithStatusCode(_0xa72dx15,null,_0xd503[149]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[149]))};exports[_0xd503[150]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx2f;return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[150]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[150]](_0xa72dx28[_0xd503[58]][_0xd503[95]])}})[_0xd503[45]](function(_0xa72dx3b){if(_0xa72dx3b){_0xa72dx2f= _0xa72dx3b;return db[_0xd503[84]][_0xd503[48]]({where:{ListId:_0xa72dx28[_0xd503[58]][_0xd503[95]],VoiceQueueId:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](function(){return _0xa72dx2f})}})[_0xd503[45]](respondWithStatusCode(_0xa72dx15,null,_0xd503[150]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[150]))};exports[_0xd503[151]]= function(_0xa72dx28,_0xa72dx18,_0xa72dx2c){var _0xa72dx1b={};var _0xa72dx29={};var _0xa72dx2d;var _0xa72dx1c;return db[_0xd503[56]][_0xd503[85]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx18,null,_0xd503[151]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){_0xa72dx2d= _0xa72dx18;_0xa72dx29[_0xd503[54]]= _[_0xd503[57]](db[_0xd503[117]][_0xd503[55]]);_0xa72dx29[_0xd503[58]]= _[_0xd503[57]](_0xa72dx28[_0xd503[58]]);_0xa72dx29[_0xd503[59]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],_0xa72dx29[_0xd503[58]]);_0xa72dx1b[_0xd503[61]]= _[_0xd503[60]](_0xa72dx29[_0xd503[54]],qs[_0xd503[62]](_0xa72dx28[_0xd503[58]][_0xd503[62]]));_0xa72dx1b[_0xd503[61]]= (_0xa72dx1b[_0xd503[61]][_0xd503[63]])?_0xa72dx1b[_0xd503[61]]:_0xa72dx29[_0xd503[54]];_0xa72dx1b[_0xd503[66]]= qs[_0xd503[67]](_0xa72dx28[_0xd503[58]][_0xd503[67]]);_0xa72dx1b[_0xd503[68]]= qs[_0xd503[59]](_[_0xd503[69]](_0xa72dx28[_0xd503[58]],_0xa72dx29[_0xd503[59]]));if(_0xa72dx28[_0xd503[58]][_0xd503[70]]){_0xa72dx1b[_0xd503[68]]= _[_0xd503[73]](_0xa72dx1b[_0xd503[68]],{$or:_[_0xd503[72]](_0xa72dx1b[_0xd503[61]],function(_0xa72dx2a){var _0xa72dx2b={};_0xa72dx2b[_0xa72dx2a]= {$like:_0xd503[71]+ _0xa72dx28[_0xd503[58]][_0xd503[70]]+ _0xd503[71]};return _0xa72dx2b})})};_0xa72dx1b= _[_0xd503[73]]({},_0xa72dx1b,_0xa72dx28[_0xd503[74]]);return _0xa72dx2d[_0xd503[151]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2f){if(_0xa72dx2f){_0xa72dx1c= _0xa72dx2f[_0xd503[63]];if(!_0xa72dx28[_0xd503[58]][_0xd503[65]](_0xd503[64])){_0xa72dx1b[_0xd503[35]]= qs[_0xd503[35]](_0xa72dx28[_0xd503[58]][_0xd503[35]]);_0xa72dx1b[_0xd503[34]]= qs[_0xd503[34]](_0xa72dx28[_0xd503[58]][_0xd503[34]])};return _0xa72dx2d[_0xd503[151]](_0xa72dx1b)}})[_0xd503[45]](function(_0xa72dx2e){return _0xa72dx2e?{count:_0xa72dx1c,rows:_0xa72dx2e}:null})[_0xd503[45]](respondWithResult(_0xa72dx18,null,_0xd503[151]))[_0xd503[75]](handleError(_0xa72dx18,null,_0xd503[151]))};exports[_0xd503[147]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx3c;return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[147]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[147]](_0xa72dx28[_0xd503[82]][_0xd503[95]],_[_0xd503[113]](_0xa72dx28[_0xd503[82]],[_0xd503[95],_0xd503[78]])|| {})};return null})[_0xd503[146]](function(_0xa72dx3b){_0xa72dx3c= _0xa72dx3b|| [];var _0xa72dx3a=[];if(_0xa72dx3b){for(var _0xa72dx35=0;_0xa72dx35< _0xa72dx3b[_0xd503[63]];_0xa72dx35++){var _0xa72dx3d=_0xa72dx3b[_0xa72dx35][_0xd503[119]]({plain:true});var _0xa72dx3e=squel[_0xd503[144]]()[_0xd503[143]](_0xd503[148])[_0xd503[141]]([_0xd503[120],_0xd503[122],_0xd503[123],_0xd503[124],_0xd503[125],_0xd503[126]],squel[_0xd503[136]]()[_0xd503[135]](_0xd503[120])[_0xd503[135]](_0xd503[78])[_0xd503[135]](_0xa72dx3d[_0xd503[131]].toString())[_0xd503[135]](_0xa72dx28[_0xd503[79]][_0xd503[78]])[_0xd503[135]](_0xd503[140],_0xd503[125])[_0xd503[135]](_0xd503[140],_0xd503[126])[_0xd503[133]](_0xd503[139])[_0xd503[68]](_0xd503[138],_0xa72dx3d[_0xd503[131]].toString())[_0xd503[68]](_0xd503[137])).toString();_0xa72dx3a[_0xd503[110]](db[_0xd503[145]][_0xd503[58]](_0xa72dx3e))};return BPromise[_0xd503[111]](_0xa72dx3a)}})[_0xd503[45]](function(){return _0xa72dx3c})[_0xd503[45]](respondWithResult(_0xa72dx15,null,_0xd503[147]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[147]))};exports[_0xd503[149]]= function(_0xa72dx28,_0xa72dx15,_0xa72dx2c){var _0xa72dx2f;return db[_0xd503[56]][_0xd503[80]]({where:{id:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](handleEntityNotFound(_0xa72dx15,null,_0xd503[149]))[_0xd503[45]](function(_0xa72dx18){if(_0xa72dx18){return _0xa72dx18[_0xd503[149]](_0xa72dx28[_0xd503[58]][_0xd503[95]])}})[_0xd503[45]](function(_0xa72dx3b){if(_0xa72dx3b){_0xa72dx2f= _0xa72dx3b;return db[_0xd503[91]][_0xd503[48]]({where:{ListId:_0xa72dx28[_0xd503[58]][_0xd503[95]],VoiceQueueId:_0xa72dx28[_0xd503[79]][_0xd503[78]]}})[_0xd503[45]](function(){return _0xa72dx2f})}})[_0xd503[45]](respondWithStatusCode(_0xa72dx15,null,_0xd503[149]))[_0xd503[75]](handleError(_0xa72dx15,null,_0xd503[149]))}
\ No newline at end of file
index b462906..37690de 100644 (file)
@@ -1 +1 @@
-var _0xf275=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xf275[0];var _=require(_0xf275[1]);var util=require(_0xf275[2]);var logger=require(_0xf275[4])(_0xf275[3]);var attributes=require(_0xf275[5]);module[_0xf275[6]]= function(_0xe225x5,_0xe225x6){return _0xe225x5[_0xf275[9]](_0xf275[7],attributes,{tableName:_0xf275[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xf797=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73","\x64\x65\x66\x69\x6E\x65"];_0xf797[0];var _=require(_0xf797[1]);var util=require(_0xf797[2]);var logger=require(_0xf797[4])(_0xf797[3]);var attributes=require(_0xf797[5]);module[_0xf797[6]]= function(_0x1e5ex5,_0x1e5ex6){return _0x1e5ex5[_0xf797[9]](_0xf797[7],attributes,{tableName:_0xf797[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 742ee26..9090221 100644 (file)
@@ -1 +1 @@
-var _0xbb1e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x53\x68\x6F\x77\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x66\x69\x6E\x64"];_0xbb1e[0];var _=require(_0xbb1e[1]);var util=require(_0xbb1e[2]);var moment=require(_0xbb1e[3]);var BPromise=require(_0xbb1e[4]);var db=require(_0xbb1e[6])[_0xbb1e[5]];var utils=require(_0xbb1e[7]);var logger=require(_0xbb1e[9])(_0xbb1e[8]);var jayson=require(_0xbb1e[10]);var client=jayson[_0xbb1e[12]][_0xbb1e[11]]({port:9002});function respondWithRpcPromise(_0x675cxb,_0x675cxc,_0x675cxd){return  new BPromise(function(_0x675cxe,_0x675cxf){return client[_0xbb1e[25]](_0x675cxb,_0x675cxd)[_0xbb1e[24]](function(_0x675cx11){logger[_0xbb1e[17]](_0xbb1e[13],_0x675cxc,_0xbb1e[16]);logger[_0xbb1e[20]](_0xbb1e[18],_0x675cxc,_0xbb1e[16],JSON[_0xbb1e[19]](_0x675cx11));if(_0x675cx11[_0xbb1e[14]]){if(_0x675cx11[_0xbb1e[14]][_0xbb1e[21]]=== 500){logger[_0xbb1e[14]](_0xbb1e[13],_0x675cxc,_0x675cx11[_0xbb1e[14]][_0xbb1e[22]]);return _0x675cxf(_0x675cx11[_0xbb1e[14]][_0xbb1e[22]])};logger[_0xbb1e[14]](_0xbb1e[13],_0x675cxc,_0x675cx11[_0xbb1e[14]][_0xbb1e[22]]);return _0x675cxe(_0x675cx11[_0xbb1e[14]][_0xbb1e[22]])}else {logger[_0xbb1e[17]](_0xbb1e[13],_0x675cxc,_0xbb1e[16]);_0x675cxe(_0x675cx11[_0xbb1e[23]][_0xbb1e[22]])}})[_0xbb1e[15]](function(_0x675cx10){logger[_0xbb1e[14]](_0xbb1e[13],_0x675cxc,_0x675cx10);_0x675cxf(_0x675cx10)})})}exports[_0xbb1e[26]]= function(_0x675cxd){var _0x675cx12=this;return  new Promise(function(_0x675cxe,_0x675cxf){return db[_0xbb1e[37]][_0xbb1e[36]]({raw:_0x675cxd[_0xbb1e[27]]?(_0x675cxd[_0xbb1e[27]][_0xbb1e[28]]=== undefined)?true:false:true,where:_0x675cxd[_0xbb1e[27]]?_0x675cxd[_0xbb1e[27]][_0xbb1e[29]]|| null:null,attributes:_0x675cxd[_0xbb1e[27]]?_0x675cxd[_0xbb1e[27]][_0xbb1e[30]]|| null:null,limit:_0x675cxd[_0xbb1e[27]]?_0x675cxd[_0xbb1e[27]][_0xbb1e[31]]|| null:null,include:_0x675cxd[_0xbb1e[27]]?(_0x675cxd[_0xbb1e[27]][_0xbb1e[32]]?_[_0xbb1e[35]](_0x675cxd[_0xbb1e[27]][_0xbb1e[32]],function(_0x675cx13){return {model:db[_0x675cx13[_0xbb1e[33]]],as:_0x675cx13[_0xbb1e[34]],attributes:_0x675cx13[_0xbb1e[30]],include:_0x675cx13[_0xbb1e[32]]?_[_0xbb1e[35]](_0x675cx13[_0xbb1e[32]],function(_0x675cx14){return {model:db[_0x675cx14[_0xbb1e[33]]],as:_0x675cx14[_0xbb1e[34]],attributes:_0x675cx14[_0xbb1e[30]],include:_0x675cx14[_0xbb1e[32]]?_[_0xbb1e[35]](_0x675cx14[_0xbb1e[32]],function(_0x675cx15){return {model:db[_0x675cx15[_0xbb1e[33]]],as:_0x675cx15[_0xbb1e[34]],attributes:_0x675cx15[_0xbb1e[30]]}}):[]}}):[]}}):[]):[]})[_0xbb1e[24]](function(_0x675cx11){logger[_0xbb1e[17]](_0xbb1e[26],_0x675cxd);logger[_0xbb1e[20]](_0xbb1e[26],_0x675cxd,JSON[_0xbb1e[19]](_0x675cx11));_0x675cxe(_0x675cx11)})[_0xbb1e[15]](function(_0x675cx10){logger[_0xbb1e[14]](_0xbb1e[26],_0x675cx10[_0xbb1e[22]],_0x675cxd);_0x675cxf(_0x675cx12[_0xbb1e[14]](500,_0x675cx10[_0xbb1e[22]]))})})};exports[_0xbb1e[38]]= function(_0x675cxd){var _0x675cx12=this;return  new Promise(function(_0x675cxe,_0x675cxf){return db[_0xbb1e[37]][_0xbb1e[39]]({raw:_0x675cxd[_0xbb1e[27]]?(_0x675cxd[_0xbb1e[27]][_0xbb1e[28]]=== undefined)?true:false:true,where:_0x675cxd[_0xbb1e[27]]?_0x675cxd[_0xbb1e[27]][_0xbb1e[29]]|| null:null,attributes:_0x675cxd[_0xbb1e[27]]?_0x675cxd[_0xbb1e[27]][_0xbb1e[30]]|| null:null,include:_0x675cxd[_0xbb1e[27]]?(_0x675cxd[_0xbb1e[27]][_0xbb1e[32]]?_[_0xbb1e[35]](_0x675cxd[_0xbb1e[27]][_0xbb1e[32]],function(_0x675cx13){return {model:db[_0x675cx13[_0xbb1e[33]]],as:_0x675cx13[_0xbb1e[34]],attributes:_0x675cx13[_0xbb1e[30]],include:_0x675cx13[_0xbb1e[32]]?_[_0xbb1e[35]](_0x675cx13[_0xbb1e[32]],function(_0x675cx14){return {model:db[_0x675cx14[_0xbb1e[33]]],as:_0x675cx14[_0xbb1e[34]],attributes:_0x675cx14[_0xbb1e[30]],include:_0x675cx14[_0xbb1e[32]]?_[_0xbb1e[35]](_0x675cx14[_0xbb1e[32]],function(_0x675cx15){return {model:db[_0x675cx15[_0xbb1e[33]]],as:_0x675cx15[_0xbb1e[34]],attributes:_0x675cx15[_0xbb1e[30]]}}):[]}}):[]}}):[]):[]})[_0xbb1e[24]](function(_0x675cx11){logger[_0xbb1e[17]](_0xbb1e[38],_0x675cxd);logger[_0xbb1e[20]](_0xbb1e[38],_0x675cxd,JSON[_0xbb1e[19]](_0x675cx11));_0x675cxe(_0x675cx11)})[_0xbb1e[15]](function(_0x675cx10){logger[_0xbb1e[14]](_0xbb1e[38],_0x675cx10[_0xbb1e[22]],_0x675cxd);_0x675cxf(_0x675cx12[_0xbb1e[14]](500,_0x675cx10[_0xbb1e[22]]))})})}
\ No newline at end of file
+var _0xc662=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x53\x68\x6F\x77\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x66\x69\x6E\x64"];_0xc662[0];var _=require(_0xc662[1]);var util=require(_0xc662[2]);var moment=require(_0xc662[3]);var BPromise=require(_0xc662[4]);var db=require(_0xc662[6])[_0xc662[5]];var utils=require(_0xc662[7]);var logger=require(_0xc662[9])(_0xc662[8]);var jayson=require(_0xc662[10]);var client=jayson[_0xc662[12]][_0xc662[11]]({port:9002});function respondWithRpcPromise(_0xa31fxb,_0xa31fxc,_0xa31fxd){return  new BPromise(function(_0xa31fxe,_0xa31fxf){return client[_0xc662[25]](_0xa31fxb,_0xa31fxd)[_0xc662[24]](function(_0xa31fx11){logger[_0xc662[17]](_0xc662[13],_0xa31fxc,_0xc662[16]);logger[_0xc662[20]](_0xc662[18],_0xa31fxc,_0xc662[16],JSON[_0xc662[19]](_0xa31fx11));if(_0xa31fx11[_0xc662[14]]){if(_0xa31fx11[_0xc662[14]][_0xc662[21]]=== 500){logger[_0xc662[14]](_0xc662[13],_0xa31fxc,_0xa31fx11[_0xc662[14]][_0xc662[22]]);return _0xa31fxf(_0xa31fx11[_0xc662[14]][_0xc662[22]])};logger[_0xc662[14]](_0xc662[13],_0xa31fxc,_0xa31fx11[_0xc662[14]][_0xc662[22]]);return _0xa31fxe(_0xa31fx11[_0xc662[14]][_0xc662[22]])}else {logger[_0xc662[17]](_0xc662[13],_0xa31fxc,_0xc662[16]);_0xa31fxe(_0xa31fx11[_0xc662[23]][_0xc662[22]])}})[_0xc662[15]](function(_0xa31fx10){logger[_0xc662[14]](_0xc662[13],_0xa31fxc,_0xa31fx10);_0xa31fxf(_0xa31fx10)})})}exports[_0xc662[26]]= function(_0xa31fxd){var _0xa31fx12=this;return  new Promise(function(_0xa31fxe,_0xa31fxf){return db[_0xc662[37]][_0xc662[36]]({raw:_0xa31fxd[_0xc662[27]]?(_0xa31fxd[_0xc662[27]][_0xc662[28]]=== undefined)?true:false:true,where:_0xa31fxd[_0xc662[27]]?_0xa31fxd[_0xc662[27]][_0xc662[29]]|| null:null,attributes:_0xa31fxd[_0xc662[27]]?_0xa31fxd[_0xc662[27]][_0xc662[30]]|| null:null,limit:_0xa31fxd[_0xc662[27]]?_0xa31fxd[_0xc662[27]][_0xc662[31]]|| null:null,include:_0xa31fxd[_0xc662[27]]?(_0xa31fxd[_0xc662[27]][_0xc662[32]]?_[_0xc662[35]](_0xa31fxd[_0xc662[27]][_0xc662[32]],function(_0xa31fx13){return {model:db[_0xa31fx13[_0xc662[33]]],as:_0xa31fx13[_0xc662[34]],attributes:_0xa31fx13[_0xc662[30]],include:_0xa31fx13[_0xc662[32]]?_[_0xc662[35]](_0xa31fx13[_0xc662[32]],function(_0xa31fx14){return {model:db[_0xa31fx14[_0xc662[33]]],as:_0xa31fx14[_0xc662[34]],attributes:_0xa31fx14[_0xc662[30]],include:_0xa31fx14[_0xc662[32]]?_[_0xc662[35]](_0xa31fx14[_0xc662[32]],function(_0xa31fx15){return {model:db[_0xa31fx15[_0xc662[33]]],as:_0xa31fx15[_0xc662[34]],attributes:_0xa31fx15[_0xc662[30]]}}):[]}}):[]}}):[]):[]})[_0xc662[24]](function(_0xa31fx11){logger[_0xc662[17]](_0xc662[26],_0xa31fxd);logger[_0xc662[20]](_0xc662[26],_0xa31fxd,JSON[_0xc662[19]](_0xa31fx11));_0xa31fxe(_0xa31fx11)})[_0xc662[15]](function(_0xa31fx10){logger[_0xc662[14]](_0xc662[26],_0xa31fx10[_0xc662[22]],_0xa31fxd);_0xa31fxf(_0xa31fx12[_0xc662[14]](500,_0xa31fx10[_0xc662[22]]))})})};exports[_0xc662[38]]= function(_0xa31fxd){var _0xa31fx12=this;return  new Promise(function(_0xa31fxe,_0xa31fxf){return db[_0xc662[37]][_0xc662[39]]({raw:_0xa31fxd[_0xc662[27]]?(_0xa31fxd[_0xc662[27]][_0xc662[28]]=== undefined)?true:false:true,where:_0xa31fxd[_0xc662[27]]?_0xa31fxd[_0xc662[27]][_0xc662[29]]|| null:null,attributes:_0xa31fxd[_0xc662[27]]?_0xa31fxd[_0xc662[27]][_0xc662[30]]|| null:null,include:_0xa31fxd[_0xc662[27]]?(_0xa31fxd[_0xc662[27]][_0xc662[32]]?_[_0xc662[35]](_0xa31fxd[_0xc662[27]][_0xc662[32]],function(_0xa31fx13){return {model:db[_0xa31fx13[_0xc662[33]]],as:_0xa31fx13[_0xc662[34]],attributes:_0xa31fx13[_0xc662[30]],include:_0xa31fx13[_0xc662[32]]?_[_0xc662[35]](_0xa31fx13[_0xc662[32]],function(_0xa31fx14){return {model:db[_0xa31fx14[_0xc662[33]]],as:_0xa31fx14[_0xc662[34]],attributes:_0xa31fx14[_0xc662[30]],include:_0xa31fx14[_0xc662[32]]?_[_0xc662[35]](_0xa31fx14[_0xc662[32]],function(_0xa31fx15){return {model:db[_0xa31fx15[_0xc662[33]]],as:_0xa31fx15[_0xc662[34]],attributes:_0xa31fx15[_0xc662[30]]}}):[]}}):[]}}):[]):[]})[_0xc662[24]](function(_0xa31fx11){logger[_0xc662[17]](_0xc662[38],_0xa31fxd);logger[_0xc662[20]](_0xc662[38],_0xa31fxd,JSON[_0xc662[19]](_0xa31fx11));_0xa31fxe(_0xa31fx11)})[_0xc662[15]](function(_0xa31fx10){logger[_0xc662[14]](_0xc662[38],_0xa31fx10[_0xc662[22]],_0xa31fxd);_0xa31fxf(_0xa31fx12[_0xc662[14]](500,_0xa31fx10[_0xc662[22]]))})})}
\ No newline at end of file
index c90ab41..d18937a 100644 (file)
@@ -1 +1 @@
-var _0xc527=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xc527[0];var multer=require(_0xc527[1]);var util=require(_0xc527[2]);var path=require(_0xc527[3]);var express=require(_0xc527[4]);var router=express.Router();var auth=require(_0xc527[5]);var config=require(_0xc527[6]);var controller=require(_0xc527[7]);router[_0xc527[11]](_0xc527[8],auth[_0xc527[9]](),controller[_0xc527[10]]);router[_0xc527[11]](_0xc527[12],auth[_0xc527[9]](),controller[_0xc527[13]]);router[_0xc527[11]](_0xc527[14],auth[_0xc527[9]](),controller[_0xc527[15]]);router[_0xc527[17]](_0xc527[8],auth[_0xc527[9]](),controller[_0xc527[16]]);router[_0xc527[19]](_0xc527[14],auth[_0xc527[9]](),controller[_0xc527[18]]);router[_0xc527[21]](_0xc527[14],auth[_0xc527[9]](),controller[_0xc527[20]]);module[_0xc527[22]]= router
\ No newline at end of file
+var _0xf07a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf07a[0];var multer=require(_0xf07a[1]);var util=require(_0xf07a[2]);var path=require(_0xf07a[3]);var express=require(_0xf07a[4]);var router=express.Router();var auth=require(_0xf07a[5]);var config=require(_0xf07a[6]);var controller=require(_0xf07a[7]);router[_0xf07a[11]](_0xf07a[8],auth[_0xf07a[9]](),controller[_0xf07a[10]]);router[_0xf07a[11]](_0xf07a[12],auth[_0xf07a[9]](),controller[_0xf07a[13]]);router[_0xf07a[11]](_0xf07a[14],auth[_0xf07a[9]](),controller[_0xf07a[15]]);router[_0xf07a[17]](_0xf07a[8],auth[_0xf07a[9]](),controller[_0xf07a[16]]);router[_0xf07a[19]](_0xf07a[14],auth[_0xf07a[9]](),controller[_0xf07a[18]]);router[_0xf07a[21]](_0xf07a[14],auth[_0xf07a[9]](),controller[_0xf07a[20]]);module[_0xf07a[22]]= router
\ No newline at end of file
index 89382d6..806973b 100644 (file)
@@ -1 +1 @@
-var _0xbe8d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0xbe8d[0];var Sequelize=require(_0xbe8d[1]);var moment=require(_0xbe8d[2]);module[_0xbe8d[3]]= {type:{type:Sequelize[_0xbe8d[4]]},uniqueid:{type:Sequelize[_0xbe8d[4]]},calleridnum:{type:Sequelize[_0xbe8d[4]]},calleridname:{type:Sequelize[_0xbe8d[4]]},queue:{type:Sequelize[_0xbe8d[4]]},queuecallerjoinAt:{type:Sequelize[_0xbe8d[5]]},queuecallerleaveAt:{type:Sequelize[_0xbe8d[5]],set:function(_0xb5a7x3){var _0xb5a7x4=moment(_0xb5a7x3);var _0xb5a7x5=moment(this[_0xbe8d[9]](_0xbe8d[8]))[_0xbe8d[7]](_0xbe8d[6]);var _0xb5a7x6=_0xb5a7x4[_0xbe8d[11]](_0xb5a7x5,_0xbe8d[10]);this[_0xbe8d[13]](_0xbe8d[12],_0xb5a7x3);this[_0xbe8d[13]](_0xbe8d[14],_0xb5a7x6|| null)}},position:{type:Sequelize[_0xbe8d[15]]},count:{type:Sequelize[_0xbe8d[15]]},queuecallerabandon:{type:Sequelize[_0xbe8d[16]],defaultValue:false},queuecallerabandonAt:{type:Sequelize[_0xbe8d[5]]},queuecallercomplete:{type:Sequelize[_0xbe8d[16]],defaultValue:false},queuecallercompleteAt:{type:Sequelize[_0xbe8d[5]]},queuecallerexit:{type:Sequelize[_0xbe8d[16]],defaultValue:false},queuecallerexitAt:{type:Sequelize[_0xbe8d[5]]},queuecallerexitreason:{type:Sequelize[_0xbe8d[4]]},originalposition:{type:Sequelize[_0xbe8d[15]]},channel:{type:Sequelize[_0xbe8d[4]]},connectedlinenum:{type:Sequelize[_0xbe8d[4]]},connectedlinename:{type:Sequelize[_0xbe8d[4]]},accountcode:{type:Sequelize[_0xbe8d[4]]},context:{type:Sequelize[_0xbe8d[4]]},exten:{type:Sequelize[_0xbe8d[4]]},priority:{type:Sequelize[_0xbe8d[4]]},holdtime:{type:Sequelize[_0xbe8d[15]]},assigned:{type:Sequelize[_0xbe8d[16]],defaultValue:false},lastAssignedTo:{type:Sequelize[_0xbe8d[4]]}}
\ No newline at end of file
+var _0x4c94=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","\x44\x41\x54\x45","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x49\x4E\x54\x45\x47\x45\x52","\x42\x4F\x4F\x4C\x45\x41\x4E"];_0x4c94[0];var Sequelize=require(_0x4c94[1]);var moment=require(_0x4c94[2]);module[_0x4c94[3]]= {type:{type:Sequelize[_0x4c94[4]]},uniqueid:{type:Sequelize[_0x4c94[4]]},calleridnum:{type:Sequelize[_0x4c94[4]]},calleridname:{type:Sequelize[_0x4c94[4]]},queue:{type:Sequelize[_0x4c94[4]]},queuecallerjoinAt:{type:Sequelize[_0x4c94[5]]},queuecallerleaveAt:{type:Sequelize[_0x4c94[5]],set:function(_0x9ce7x3){var _0x9ce7x4=moment(_0x9ce7x3);var _0x9ce7x5=moment(this[_0x4c94[9]](_0x4c94[8]))[_0x4c94[7]](_0x4c94[6]);var _0x9ce7x6=_0x9ce7x4[_0x4c94[11]](_0x9ce7x5,_0x4c94[10]);this[_0x4c94[13]](_0x4c94[12],_0x9ce7x3);this[_0x4c94[13]](_0x4c94[14],_0x9ce7x6|| null)}},position:{type:Sequelize[_0x4c94[15]]},count:{type:Sequelize[_0x4c94[15]]},queuecallerabandon:{type:Sequelize[_0x4c94[16]],defaultValue:false},queuecallerabandonAt:{type:Sequelize[_0x4c94[5]]},queuecallercomplete:{type:Sequelize[_0x4c94[16]],defaultValue:false},queuecallercompleteAt:{type:Sequelize[_0x4c94[5]]},queuecallerexit:{type:Sequelize[_0x4c94[16]],defaultValue:false},queuecallerexitAt:{type:Sequelize[_0x4c94[5]]},queuecallerexitreason:{type:Sequelize[_0x4c94[4]]},originalposition:{type:Sequelize[_0x4c94[15]]},channel:{type:Sequelize[_0x4c94[4]]},connectedlinenum:{type:Sequelize[_0x4c94[4]]},connectedlinename:{type:Sequelize[_0x4c94[4]]},accountcode:{type:Sequelize[_0x4c94[4]]},context:{type:Sequelize[_0x4c94[4]]},exten:{type:Sequelize[_0x4c94[4]]},priority:{type:Sequelize[_0x4c94[4]]},holdtime:{type:Sequelize[_0x4c94[15]]},assigned:{type:Sequelize[_0x4c94[16]],defaultValue:false},lastAssignedTo:{type:Sequelize[_0x4c94[4]]}}
\ No newline at end of file
index 30653c5..da60d04 100644 (file)
@@ -1 +1 @@
-var _0xa076=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xa076[0];var jsonpatch=require(_0xa076[1]);var rp=require(_0xa076[2]);var moment=require(_0xa076[3]);var BPromise=require(_0xa076[4]);var util=require(_0xa076[5]);var path=require(_0xa076[6]);var sox=require(_0xa076[7]);var ejs=require(_0xa076[8]);var fs=require(_0xa076[9]);var _=require(_0xa076[10]);var squel=require(_0xa076[11]);var crypto=require(_0xa076[12]);var jsforce=require(_0xa076[13]);var toCsv=require(_0xa076[14]);var qs=require(_0xa076[15]);var logger=require(_0xa076[17])(_0xa076[16]);var utils=require(_0xa076[18]);var config=require(_0xa076[19]);var db=require(_0xa076[21])[_0xa076[20]];function respondWithStatusCode(_0x162cx15,_0x162cx16,_0x162cx17){_0x162cx16= _0x162cx16|| 204;return function(_0x162cx18){if(_0x162cx18){logger[_0xa076[24]](_0xa076[22],_0x162cx17,_0x162cx16,_0xa076[23]);logger[_0xa076[26]](_0xa076[25],_0x162cx17,_0x162cx16,_0xa076[23]);return _0x162cx15[_0xa076[27]](_0x162cx16)};return _0x162cx15[_0xa076[29]](304)[_0xa076[28]]()}}function respondWithResult(_0x162cx15,_0x162cx16,_0x162cx17){_0x162cx16= _0x162cx16|| 200;return function(_0x162cx18){if(_0x162cx18){logger[_0xa076[24]](_0xa076[22],_0x162cx17,_0x162cx16,_0xa076[30]);logger[_0xa076[26]](_0xa076[25],_0x162cx17,_0x162cx16,_0xa076[30],JSON[_0xa076[31]](_0x162cx18));return _0x162cx15[_0xa076[29]](_0x162cx16)[_0xa076[32]](_0x162cx18)};return _0x162cx15[_0xa076[29]](304)[_0xa076[28]]()}}function respondWithFilteredResult(_0x162cx15,_0x162cx1b,_0x162cx17){return function(_0x162cx18){if(_0x162cx18){var _0x162cx1c=_0x162cx18[_0xa076[33]],_0x162cx1d=_0x162cx1b[_0xa076[34]],_0x162cx1e=_0x162cx1b[_0xa076[34]]+ _0x162cx1b[_0xa076[35]],_0x162cx16;if(_0x162cx1e>= _0x162cx1c){_0x162cx1e= _0x162cx1c;_0x162cx16= 200}else {_0x162cx16= 206};_0x162cx15[_0xa076[29]](_0x162cx16);logger[_0xa076[24]](_0xa076[22],_0x162cx17,_0x162cx16,_0xa076[36]);logger[_0xa076[26]](_0xa076[25],_0x162cx17,_0x162cx16,_0xa076[30],JSON[_0xa076[31]](_0x162cx18));return _0x162cx15[_0xa076[40]](_0xa076[37],_0x162cx1d+ _0xa076[38]+ _0x162cx1e+ _0xa076[39]+ _0x162cx1c)[_0xa076[32]](_0x162cx18)};return null}}function patchUpdates(_0x162cx20){return function(_0x162cx18){try{jsonpatch[_0xa076[41]](_0x162cx18,_0x162cx20,true)}catch(err){return BPromise[_0xa076[42]](err)};return _0x162cx18[_0xa076[43]]()}}function saveUpdates(_0x162cx22,_0x162cx16,_0x162cx17){return function(_0x162cx18){if(_0x162cx18){return _0x162cx18[_0xa076[46]](_0x162cx22)[_0xa076[45]](function(_0x162cx23){logger[_0xa076[24]](_0xa076[22],_0x162cx17,_0x162cx16,_0xa076[44]);logger[_0xa076[26]](_0xa076[25],_0x162cx17,_0x162cx16,_0xa076[44],JSON[_0xa076[31]](_0x162cx18));return _0x162cx23})};return null}}function removeEntity(_0x162cx15,_0x162cx16,_0x162cx17){return function(_0x162cx18){if(_0x162cx18){return _0x162cx18[_0xa076[48]]()[_0xa076[45]](function(){logger[_0xa076[24]](_0xa076[22],_0x162cx17,_0x162cx16,_0xa076[47]);logger[_0xa076[26]](_0xa076[25],_0x162cx17,_0x162cx16,_0xa076[47],JSON[_0xa076[31]](_0x162cx18));_0x162cx15[_0xa076[29]](204)[_0xa076[28]]()})}}}function handleEntityNotFound(_0x162cx15,_0x162cx16,_0x162cx17){return function(_0x162cx18){if(!_0x162cx18){logger[_0xa076[50]](_0xa076[22],_0x162cx17,404,_0xa076[49]);_0x162cx15[_0xa076[29]](404)[_0xa076[28]]();return null};return _0x162cx18}}function handleError(_0x162cx15,_0x162cx16,_0x162cx17){_0x162cx16= _0x162cx16|| 500;return function(_0x162cx27){logger[_0xa076[50]](_0xa076[22],_0x162cx17,_0x162cx16,JSON[_0xa076[31]](_0x162cx27));delete _0x162cx27[_0xa076[51]];_0x162cx15[_0xa076[29]](_0x162cx16)[_0xa076[52]](_0x162cx27)}}exports[_0xa076[53]]= function(_0x162cx28,_0x162cx15){var _0x162cx1b={},_0x162cx29={};_0x162cx29[_0xa076[54]]= _[_0xa076[57]](db[_0xa076[56]][_0xa076[55]]);_0x162cx29[_0xa076[58]]= _[_0xa076[57]](_0x162cx28[_0xa076[58]]);_0x162cx29[_0xa076[59]]= _[_0xa076[60]](_0x162cx29[_0xa076[54]],_0x162cx29[_0xa076[58]]);_0x162cx1b[_0xa076[61]]= _[_0xa076[60]](_0x162cx29[_0xa076[54]],qs[_0xa076[62]](_0x162cx28[_0xa076[58]][_0xa076[62]]));_0x162cx1b[_0xa076[61]]= (_0x162cx1b[_0xa076[61]][_0xa076[63]])?_0x162cx1b[_0xa076[61]]:_0x162cx29[_0xa076[54]];if(!_0x162cx28[_0xa076[58]][_0xa076[65]](_0xa076[64])){_0x162cx1b[_0xa076[35]]= qs[_0xa076[35]](_0x162cx28[_0xa076[58]][_0xa076[35]]);_0x162cx1b[_0xa076[34]]= qs[_0xa076[34]](_0x162cx28[_0xa076[58]][_0xa076[34]])};_0x162cx1b[_0xa076[66]]= qs[_0xa076[67]](_0x162cx28[_0xa076[58]][_0xa076[67]]);_0x162cx1b[_0xa076[68]]= qs[_0xa076[59]](_[_0xa076[69]](_0x162cx28[_0xa076[58]],_0x162cx29[_0xa076[59]]));if(_0x162cx28[_0xa076[58]][_0xa076[70]]){_0x162cx1b[_0xa076[68]]= _[_0xa076[73]](_0x162cx1b[_0xa076[68]],{$or:_[_0xa076[72]](_0x162cx1b[_0xa076[61]],function(_0x162cx2a){var _0x162cx2b={};_0x162cx2b[_0x162cx2a]= {$like:_0xa076[71]+ _0x162cx28[_0xa076[58]][_0xa076[70]]+ _0xa076[71]};return _0x162cx2b})})};_0x162cx1b= _[_0xa076[73]]({},_0x162cx1b,_0x162cx28[_0xa076[74]]);return db[_0xa076[56]][_0xa076[76]](_0x162cx1b)[_0xa076[45]](respondWithFilteredResult(_0x162cx15,_0x162cx1b,_0xa076[53]))[_0xa076[75]](handleError(_0x162cx15,null,_0xa076[53]))};exports[_0xa076[77]]= function(_0x162cx28,_0x162cx15){var _0x162cx1b={raw:false,where:{id:_0x162cx28[_0xa076[79]][_0xa076[78]]}},_0x162cx29={};_0x162cx29[_0xa076[54]]= _[_0xa076[57]](db[_0xa076[56]][_0xa076[55]]);_0x162cx29[_0xa076[58]]= _[_0xa076[57]](_0x162cx28[_0xa076[58]]);_0x162cx29[_0xa076[59]]= _[_0xa076[60]](_0x162cx29[_0xa076[54]],_0x162cx29[_0xa076[58]]);_0x162cx1b[_0xa076[61]]= _[_0xa076[60]](_0x162cx29[_0xa076[54]],qs[_0xa076[62]](_0x162cx28[_0xa076[58]][_0xa076[62]]));_0x162cx1b[_0xa076[61]]= (_0x162cx1b[_0xa076[61]][_0xa076[63]])?_0x162cx1b[_0xa076[61]]:_0x162cx29[_0xa076[54]];_0x162cx1b= _[_0xa076[73]]({},_0x162cx1b,_0x162cx28[_0xa076[74]]);return db[_0xa076[56]][_0xa076[80]](_0x162cx1b)[_0xa076[45]](handleEntityNotFound(_0x162cx15,null,_0xa076[77]))[_0xa076[45]](respondWithResult(_0x162cx15,null,_0xa076[77]))[_0xa076[75]](handleError(_0x162cx15,null,_0xa076[77]))};exports[_0xa076[81]]= function(_0x162cx28,_0x162cx15){return db[_0xa076[56]][_0xa076[81]](_0x162cx28[_0xa076[82]],{})[_0xa076[45]](respondWithResult(_0x162cx15,201,_0xa076[81]))[_0xa076[75]](handleError(_0x162cx15,null,_0xa076[81]))};exports[_0xa076[46]]= function(_0x162cx28,_0x162cx15){if(_0x162cx28[_0xa076[82]][_0xa076[78]]){delete _0x162cx28[_0xa076[82]][_0xa076[78]]};return db[_0xa076[56]][_0xa076[80]]({where:{id:_0x162cx28[_0xa076[79]][_0xa076[78]]}})[_0xa076[45]](handleEntityNotFound(_0x162cx15,null,_0xa076[46]))[_0xa076[45]](saveUpdates(_0x162cx28[_0xa076[82]],null,_0xa076[46]))[_0xa076[45]](respondWithResult(_0x162cx15,null,_0xa076[46]))[_0xa076[75]](handleError(_0x162cx15,null,_0xa076[46]))};exports[_0xa076[48]]= function(_0x162cx28,_0x162cx15){return db[_0xa076[56]][_0xa076[80]]({where:{id:_0x162cx28[_0xa076[79]][_0xa076[78]]}})[_0xa076[45]](handleEntityNotFound(_0x162cx15,null,_0xa076[48]))[_0xa076[45]](removeEntity(_0x162cx15,null,_0xa076[48]))[_0xa076[75]](handleError(_0x162cx15,null,_0xa076[48]))};exports[_0xa076[83]]= function(_0x162cx28,_0x162cx15){return db[_0xa076[56]][_0xa076[83]]()[_0xa076[45]](respondWithResult(_0x162cx15,null,_0xa076[83]))[_0xa076[75]](handleError(_0x162cx15,null,_0xa076[83]))}
\ No newline at end of file
+var _0x1ba8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x1ba8[0];var jsonpatch=require(_0x1ba8[1]);var rp=require(_0x1ba8[2]);var moment=require(_0x1ba8[3]);var BPromise=require(_0x1ba8[4]);var util=require(_0x1ba8[5]);var path=require(_0x1ba8[6]);var sox=require(_0x1ba8[7]);var ejs=require(_0x1ba8[8]);var fs=require(_0x1ba8[9]);var _=require(_0x1ba8[10]);var squel=require(_0x1ba8[11]);var crypto=require(_0x1ba8[12]);var jsforce=require(_0x1ba8[13]);var toCsv=require(_0x1ba8[14]);var qs=require(_0x1ba8[15]);var logger=require(_0x1ba8[17])(_0x1ba8[16]);var utils=require(_0x1ba8[18]);var config=require(_0x1ba8[19]);var db=require(_0x1ba8[21])[_0x1ba8[20]];function respondWithStatusCode(_0x835cx15,_0x835cx16,_0x835cx17){_0x835cx16= _0x835cx16|| 204;return function(_0x835cx18){if(_0x835cx18){logger[_0x1ba8[24]](_0x1ba8[22],_0x835cx17,_0x835cx16,_0x1ba8[23]);logger[_0x1ba8[26]](_0x1ba8[25],_0x835cx17,_0x835cx16,_0x1ba8[23]);return _0x835cx15[_0x1ba8[27]](_0x835cx16)};return _0x835cx15[_0x1ba8[29]](304)[_0x1ba8[28]]()}}function respondWithResult(_0x835cx15,_0x835cx16,_0x835cx17){_0x835cx16= _0x835cx16|| 200;return function(_0x835cx18){if(_0x835cx18){logger[_0x1ba8[24]](_0x1ba8[22],_0x835cx17,_0x835cx16,_0x1ba8[30]);logger[_0x1ba8[26]](_0x1ba8[25],_0x835cx17,_0x835cx16,_0x1ba8[30],JSON[_0x1ba8[31]](_0x835cx18));return _0x835cx15[_0x1ba8[29]](_0x835cx16)[_0x1ba8[32]](_0x835cx18)};return _0x835cx15[_0x1ba8[29]](304)[_0x1ba8[28]]()}}function respondWithFilteredResult(_0x835cx15,_0x835cx1b,_0x835cx17){return function(_0x835cx18){if(_0x835cx18){var _0x835cx1c=_0x835cx18[_0x1ba8[33]],_0x835cx1d=_0x835cx1b[_0x1ba8[34]],_0x835cx1e=_0x835cx1b[_0x1ba8[34]]+ _0x835cx1b[_0x1ba8[35]],_0x835cx16;if(_0x835cx1e>= _0x835cx1c){_0x835cx1e= _0x835cx1c;_0x835cx16= 200}else {_0x835cx16= 206};_0x835cx15[_0x1ba8[29]](_0x835cx16);logger[_0x1ba8[24]](_0x1ba8[22],_0x835cx17,_0x835cx16,_0x1ba8[36]);logger[_0x1ba8[26]](_0x1ba8[25],_0x835cx17,_0x835cx16,_0x1ba8[30],JSON[_0x1ba8[31]](_0x835cx18));return _0x835cx15[_0x1ba8[40]](_0x1ba8[37],_0x835cx1d+ _0x1ba8[38]+ _0x835cx1e+ _0x1ba8[39]+ _0x835cx1c)[_0x1ba8[32]](_0x835cx18)};return null}}function patchUpdates(_0x835cx20){return function(_0x835cx18){try{jsonpatch[_0x1ba8[41]](_0x835cx18,_0x835cx20,true)}catch(err){return BPromise[_0x1ba8[42]](err)};return _0x835cx18[_0x1ba8[43]]()}}function saveUpdates(_0x835cx22,_0x835cx16,_0x835cx17){return function(_0x835cx18){if(_0x835cx18){return _0x835cx18[_0x1ba8[46]](_0x835cx22)[_0x1ba8[45]](function(_0x835cx23){logger[_0x1ba8[24]](_0x1ba8[22],_0x835cx17,_0x835cx16,_0x1ba8[44]);logger[_0x1ba8[26]](_0x1ba8[25],_0x835cx17,_0x835cx16,_0x1ba8[44],JSON[_0x1ba8[31]](_0x835cx18));return _0x835cx23})};return null}}function removeEntity(_0x835cx15,_0x835cx16,_0x835cx17){return function(_0x835cx18){if(_0x835cx18){return _0x835cx18[_0x1ba8[48]]()[_0x1ba8[45]](function(){logger[_0x1ba8[24]](_0x1ba8[22],_0x835cx17,_0x835cx16,_0x1ba8[47]);logger[_0x1ba8[26]](_0x1ba8[25],_0x835cx17,_0x835cx16,_0x1ba8[47],JSON[_0x1ba8[31]](_0x835cx18));_0x835cx15[_0x1ba8[29]](204)[_0x1ba8[28]]()})}}}function handleEntityNotFound(_0x835cx15,_0x835cx16,_0x835cx17){return function(_0x835cx18){if(!_0x835cx18){logger[_0x1ba8[50]](_0x1ba8[22],_0x835cx17,404,_0x1ba8[49]);_0x835cx15[_0x1ba8[29]](404)[_0x1ba8[28]]();return null};return _0x835cx18}}function handleError(_0x835cx15,_0x835cx16,_0x835cx17){_0x835cx16= _0x835cx16|| 500;return function(_0x835cx27){logger[_0x1ba8[50]](_0x1ba8[22],_0x835cx17,_0x835cx16,JSON[_0x1ba8[31]](_0x835cx27));delete _0x835cx27[_0x1ba8[51]];_0x835cx15[_0x1ba8[29]](_0x835cx16)[_0x1ba8[52]](_0x835cx27)}}exports[_0x1ba8[53]]= function(_0x835cx28,_0x835cx15){var _0x835cx1b={},_0x835cx29={};_0x835cx29[_0x1ba8[54]]= _[_0x1ba8[57]](db[_0x1ba8[56]][_0x1ba8[55]]);_0x835cx29[_0x1ba8[58]]= _[_0x1ba8[57]](_0x835cx28[_0x1ba8[58]]);_0x835cx29[_0x1ba8[59]]= _[_0x1ba8[60]](_0x835cx29[_0x1ba8[54]],_0x835cx29[_0x1ba8[58]]);_0x835cx1b[_0x1ba8[61]]= _[_0x1ba8[60]](_0x835cx29[_0x1ba8[54]],qs[_0x1ba8[62]](_0x835cx28[_0x1ba8[58]][_0x1ba8[62]]));_0x835cx1b[_0x1ba8[61]]= (_0x835cx1b[_0x1ba8[61]][_0x1ba8[63]])?_0x835cx1b[_0x1ba8[61]]:_0x835cx29[_0x1ba8[54]];if(!_0x835cx28[_0x1ba8[58]][_0x1ba8[65]](_0x1ba8[64])){_0x835cx1b[_0x1ba8[35]]= qs[_0x1ba8[35]](_0x835cx28[_0x1ba8[58]][_0x1ba8[35]]);_0x835cx1b[_0x1ba8[34]]= qs[_0x1ba8[34]](_0x835cx28[_0x1ba8[58]][_0x1ba8[34]])};_0x835cx1b[_0x1ba8[66]]= qs[_0x1ba8[67]](_0x835cx28[_0x1ba8[58]][_0x1ba8[67]]);_0x835cx1b[_0x1ba8[68]]= qs[_0x1ba8[59]](_[_0x1ba8[69]](_0x835cx28[_0x1ba8[58]],_0x835cx29[_0x1ba8[59]]));if(_0x835cx28[_0x1ba8[58]][_0x1ba8[70]]){_0x835cx1b[_0x1ba8[68]]= _[_0x1ba8[73]](_0x835cx1b[_0x1ba8[68]],{$or:_[_0x1ba8[72]](_0x835cx1b[_0x1ba8[61]],function(_0x835cx2a){var _0x835cx2b={};_0x835cx2b[_0x835cx2a]= {$like:_0x1ba8[71]+ _0x835cx28[_0x1ba8[58]][_0x1ba8[70]]+ _0x1ba8[71]};return _0x835cx2b})})};_0x835cx1b= _[_0x1ba8[73]]({},_0x835cx1b,_0x835cx28[_0x1ba8[74]]);return db[_0x1ba8[56]][_0x1ba8[76]](_0x835cx1b)[_0x1ba8[45]](respondWithFilteredResult(_0x835cx15,_0x835cx1b,_0x1ba8[53]))[_0x1ba8[75]](handleError(_0x835cx15,null,_0x1ba8[53]))};exports[_0x1ba8[77]]= function(_0x835cx28,_0x835cx15){var _0x835cx1b={raw:false,where:{id:_0x835cx28[_0x1ba8[79]][_0x1ba8[78]]}},_0x835cx29={};_0x835cx29[_0x1ba8[54]]= _[_0x1ba8[57]](db[_0x1ba8[56]][_0x1ba8[55]]);_0x835cx29[_0x1ba8[58]]= _[_0x1ba8[57]](_0x835cx28[_0x1ba8[58]]);_0x835cx29[_0x1ba8[59]]= _[_0x1ba8[60]](_0x835cx29[_0x1ba8[54]],_0x835cx29[_0x1ba8[58]]);_0x835cx1b[_0x1ba8[61]]= _[_0x1ba8[60]](_0x835cx29[_0x1ba8[54]],qs[_0x1ba8[62]](_0x835cx28[_0x1ba8[58]][_0x1ba8[62]]));_0x835cx1b[_0x1ba8[61]]= (_0x835cx1b[_0x1ba8[61]][_0x1ba8[63]])?_0x835cx1b[_0x1ba8[61]]:_0x835cx29[_0x1ba8[54]];_0x835cx1b= _[_0x1ba8[73]]({},_0x835cx1b,_0x835cx28[_0x1ba8[74]]);return db[_0x1ba8[56]][_0x1ba8[80]](_0x835cx1b)[_0x1ba8[45]](handleEntityNotFound(_0x835cx15,null,_0x1ba8[77]))[_0x1ba8[45]](respondWithResult(_0x835cx15,null,_0x1ba8[77]))[_0x1ba8[75]](handleError(_0x835cx15,null,_0x1ba8[77]))};exports[_0x1ba8[81]]= function(_0x835cx28,_0x835cx15){return db[_0x1ba8[56]][_0x1ba8[81]](_0x835cx28[_0x1ba8[82]],{})[_0x1ba8[45]](respondWithResult(_0x835cx15,201,_0x1ba8[81]))[_0x1ba8[75]](handleError(_0x835cx15,null,_0x1ba8[81]))};exports[_0x1ba8[46]]= function(_0x835cx28,_0x835cx15){if(_0x835cx28[_0x1ba8[82]][_0x1ba8[78]]){delete _0x835cx28[_0x1ba8[82]][_0x1ba8[78]]};return db[_0x1ba8[56]][_0x1ba8[80]]({where:{id:_0x835cx28[_0x1ba8[79]][_0x1ba8[78]]}})[_0x1ba8[45]](handleEntityNotFound(_0x835cx15,null,_0x1ba8[46]))[_0x1ba8[45]](saveUpdates(_0x835cx28[_0x1ba8[82]],null,_0x1ba8[46]))[_0x1ba8[45]](respondWithResult(_0x835cx15,null,_0x1ba8[46]))[_0x1ba8[75]](handleError(_0x835cx15,null,_0x1ba8[46]))};exports[_0x1ba8[48]]= function(_0x835cx28,_0x835cx15){return db[_0x1ba8[56]][_0x1ba8[80]]({where:{id:_0x835cx28[_0x1ba8[79]][_0x1ba8[78]]}})[_0x1ba8[45]](handleEntityNotFound(_0x835cx15,null,_0x1ba8[48]))[_0x1ba8[45]](removeEntity(_0x835cx15,null,_0x1ba8[48]))[_0x1ba8[75]](handleError(_0x835cx15,null,_0x1ba8[48]))};exports[_0x1ba8[83]]= function(_0x835cx28,_0x835cx15){return db[_0x1ba8[56]][_0x1ba8[83]]()[_0x1ba8[45]](respondWithResult(_0x835cx15,null,_0x1ba8[83]))[_0x1ba8[75]](handleError(_0x835cx15,null,_0x1ba8[83]))}
\ No newline at end of file
index e2775cd..1ac2b58 100644 (file)
@@ -1 +1 @@
-var _0xdd75=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x71\x75\x65\x75\x65","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x66\x69\x6E\x65"];_0xdd75[0];var _=require(_0xdd75[1]);var util=require(_0xdd75[2]);var logger=require(_0xdd75[4])(_0xdd75[3]);var attributes=require(_0xdd75[5]);module[_0xdd75[6]]= function(_0xe940x5,_0xe940x6){return _0xe940x5[_0xdd75[10]](_0xdd75[7],attributes,{tableName:_0xdd75[8],paranoid:false,indexes:[{"\x66\x69\x65\x6C\x64\x73":[_0xdd75[9]]}],timestamps:true})}
\ No newline at end of file
+var _0x71e4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x71\x75\x65\x75\x65","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x66\x69\x6E\x65"];_0x71e4[0];var _=require(_0x71e4[1]);var util=require(_0x71e4[2]);var logger=require(_0x71e4[4])(_0x71e4[3]);var attributes=require(_0x71e4[5]);module[_0x71e4[6]]= function(_0xeb36x5,_0xeb36x6){return _0xeb36x5[_0x71e4[10]](_0x71e4[7],attributes,{tableName:_0x71e4[8],paranoid:false,indexes:[{"\x66\x69\x65\x6C\x64\x73":[_0x71e4[9]]}],timestamps:true})}
\ No newline at end of file
index 0120800..783fda1 100644 (file)
@@ -1 +1 @@
-var _0xa080=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65"];_0xa080[0];var _=require(_0xa080[1]);var util=require(_0xa080[2]);var moment=require(_0xa080[3]);var BPromise=require(_0xa080[4]);var db=require(_0xa080[6])[_0xa080[5]];var utils=require(_0xa080[7]);var logger=require(_0xa080[9])(_0xa080[8]);var jayson=require(_0xa080[10]);var client=jayson[_0xa080[12]][_0xa080[11]]({port:9002});function respondWithRpcPromise(_0x3f24xb,_0x3f24xc,_0x3f24xd){return  new BPromise(function(_0x3f24xe,_0x3f24xf){return client[_0xa080[25]](_0x3f24xb,_0x3f24xd)[_0xa080[24]](function(_0x3f24x11){logger[_0xa080[17]](_0xa080[13],_0x3f24xc,_0xa080[16]);logger[_0xa080[20]](_0xa080[18],_0x3f24xc,_0xa080[16],JSON[_0xa080[19]](_0x3f24x11));if(_0x3f24x11[_0xa080[14]]){if(_0x3f24x11[_0xa080[14]][_0xa080[21]]=== 500){logger[_0xa080[14]](_0xa080[13],_0x3f24xc,_0x3f24x11[_0xa080[14]][_0xa080[22]]);return _0x3f24xf(_0x3f24x11[_0xa080[14]][_0xa080[22]])};logger[_0xa080[14]](_0xa080[13],_0x3f24xc,_0x3f24x11[_0xa080[14]][_0xa080[22]]);return _0x3f24xe(_0x3f24x11[_0xa080[14]][_0xa080[22]])}else {logger[_0xa080[17]](_0xa080[13],_0x3f24xc,_0xa080[16]);_0x3f24xe(_0x3f24x11[_0xa080[23]][_0xa080[22]])}})[_0xa080[15]](function(_0x3f24x10){logger[_0xa080[14]](_0xa080[13],_0x3f24xc,_0x3f24x10);_0x3f24xf(_0x3f24x10)})})}exports[_0xa080[26]]= function(_0x3f24xd){var _0x3f24x12=this;return  new Promise(function(_0x3f24xe,_0x3f24xf){return db[_0xa080[37]][_0xa080[36]]({raw:_0x3f24xd[_0xa080[27]]?(_0x3f24xd[_0xa080[27]][_0xa080[28]]=== undefined)?true:false:true,where:_0x3f24xd[_0xa080[27]]?_0x3f24xd[_0xa080[27]][_0xa080[29]]|| null:null,attributes:_0x3f24xd[_0xa080[27]]?_0x3f24xd[_0xa080[27]][_0xa080[30]]|| null:null,limit:_0x3f24xd[_0xa080[27]]?_0x3f24xd[_0xa080[27]][_0xa080[31]]|| null:null,include:_0x3f24xd[_0xa080[27]]?(_0x3f24xd[_0xa080[27]][_0xa080[32]]?_[_0xa080[35]](_0x3f24xd[_0xa080[27]][_0xa080[32]],function(_0x3f24x13){return {model:db[_0x3f24x13[_0xa080[33]]],as:_0x3f24x13[_0xa080[34]],attributes:_0x3f24x13[_0xa080[30]],include:_0x3f24x13[_0xa080[32]]?_[_0xa080[35]](_0x3f24x13[_0xa080[32]],function(_0x3f24x14){return {model:db[_0x3f24x14[_0xa080[33]]],as:_0x3f24x14[_0xa080[34]],attributes:_0x3f24x14[_0xa080[30]],include:_0x3f24x14[_0xa080[32]]?_[_0xa080[35]](_0x3f24x14[_0xa080[32]],function(_0x3f24x15){return {model:db[_0x3f24x15[_0xa080[33]]],as:_0x3f24x15[_0xa080[34]],attributes:_0x3f24x15[_0xa080[30]]}}):[]}}):[]}}):[]):[]})[_0xa080[24]](function(_0x3f24x11){logger[_0xa080[17]](_0xa080[26],_0x3f24xd);logger[_0xa080[20]](_0xa080[26],_0x3f24xd,JSON[_0xa080[19]](_0x3f24x11));_0x3f24xe(_0x3f24x11)})[_0xa080[15]](function(_0x3f24x10){logger[_0xa080[14]](_0xa080[26],_0x3f24x10[_0xa080[22]],_0x3f24xd);_0x3f24xf(_0x3f24x12[_0xa080[14]](500,_0x3f24x10[_0xa080[22]]))})})};exports[_0xa080[38]]= function(_0x3f24xd){var _0x3f24x12=this;return  new Promise(function(_0x3f24xe,_0x3f24xf){return db[_0xa080[37]][_0xa080[40]](_0x3f24xd[_0xa080[39]],{raw:_0x3f24xd[_0xa080[27]]?(_0x3f24xd[_0xa080[27]][_0xa080[28]]=== undefined)?true:false:true})[_0xa080[24]](function(_0x3f24x11){logger[_0xa080[17]](_0xa080[38],_0x3f24xd);logger[_0xa080[20]](_0xa080[38],_0x3f24xd,JSON[_0xa080[19]](_0x3f24x11));_0x3f24xe(_0x3f24x11)})[_0xa080[15]](function(_0x3f24x10){logger[_0xa080[14]](_0xa080[38],_0x3f24x10[_0xa080[22]],_0x3f24xd);_0x3f24xf(_0x3f24x12[_0xa080[14]](500,_0x3f24x10[_0xa080[22]]))})})};exports[_0xa080[41]]= function(_0x3f24xd){var _0x3f24x12=this;return  new Promise(function(_0x3f24xe,_0x3f24xf){return db[_0xa080[37]][_0xa080[42]](_0x3f24xd[_0xa080[39]],{raw:_0x3f24xd[_0xa080[27]]?(_0x3f24xd[_0xa080[27]][_0xa080[28]]=== undefined)?true:false:true,individualHooks:true,where:_0x3f24xd[_0xa080[27]]?_0x3f24xd[_0xa080[27]][_0xa080[29]]|| null:null,attributes:_0x3f24xd[_0xa080[27]]?_0x3f24xd[_0xa080[27]][_0xa080[30]]|| null:null,limit:_0x3f24xd[_0xa080[27]]?_0x3f24xd[_0xa080[27]][_0xa080[31]]|| null:null})[_0xa080[24]](function(_0x3f24x11){logger[_0xa080[17]](_0xa080[41],_0x3f24xd);logger[_0xa080[20]](_0xa080[41],_0x3f24xd,JSON[_0xa080[19]](_0x3f24x11));_0x3f24xe(_0x3f24x11)})[_0xa080[15]](function(_0x3f24x10){logger[_0xa080[14]](_0xa080[41],_0x3f24x10[_0xa080[22]],_0x3f24xd);_0x3f24xf(_0x3f24x12[_0xa080[14]](500,_0x3f24x10[_0xa080[22]]))})})}
\ No newline at end of file
+var _0xd232=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x69\x6E\x63\x6C\x75\x64\x65","\x6D\x6F\x64\x65\x6C","\x61\x73","\x6D\x61\x70","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x63\x72\x65\x61\x74\x65","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65"];_0xd232[0];var _=require(_0xd232[1]);var util=require(_0xd232[2]);var moment=require(_0xd232[3]);var BPromise=require(_0xd232[4]);var db=require(_0xd232[6])[_0xd232[5]];var utils=require(_0xd232[7]);var logger=require(_0xd232[9])(_0xd232[8]);var jayson=require(_0xd232[10]);var client=jayson[_0xd232[12]][_0xd232[11]]({port:9002});function respondWithRpcPromise(_0xb18dxb,_0xb18dxc,_0xb18dxd){return  new BPromise(function(_0xb18dxe,_0xb18dxf){return client[_0xd232[25]](_0xb18dxb,_0xb18dxd)[_0xd232[24]](function(_0xb18dx11){logger[_0xd232[17]](_0xd232[13],_0xb18dxc,_0xd232[16]);logger[_0xd232[20]](_0xd232[18],_0xb18dxc,_0xd232[16],JSON[_0xd232[19]](_0xb18dx11));if(_0xb18dx11[_0xd232[14]]){if(_0xb18dx11[_0xd232[14]][_0xd232[21]]=== 500){logger[_0xd232[14]](_0xd232[13],_0xb18dxc,_0xb18dx11[_0xd232[14]][_0xd232[22]]);return _0xb18dxf(_0xb18dx11[_0xd232[14]][_0xd232[22]])};logger[_0xd232[14]](_0xd232[13],_0xb18dxc,_0xb18dx11[_0xd232[14]][_0xd232[22]]);return _0xb18dxe(_0xb18dx11[_0xd232[14]][_0xd232[22]])}else {logger[_0xd232[17]](_0xd232[13],_0xb18dxc,_0xd232[16]);_0xb18dxe(_0xb18dx11[_0xd232[23]][_0xd232[22]])}})[_0xd232[15]](function(_0xb18dx10){logger[_0xd232[14]](_0xd232[13],_0xb18dxc,_0xb18dx10);_0xb18dxf(_0xb18dx10)})})}exports[_0xd232[26]]= function(_0xb18dxd){var _0xb18dx12=this;return  new Promise(function(_0xb18dxe,_0xb18dxf){return db[_0xd232[37]][_0xd232[36]]({raw:_0xb18dxd[_0xd232[27]]?(_0xb18dxd[_0xd232[27]][_0xd232[28]]=== undefined)?true:false:true,where:_0xb18dxd[_0xd232[27]]?_0xb18dxd[_0xd232[27]][_0xd232[29]]|| null:null,attributes:_0xb18dxd[_0xd232[27]]?_0xb18dxd[_0xd232[27]][_0xd232[30]]|| null:null,limit:_0xb18dxd[_0xd232[27]]?_0xb18dxd[_0xd232[27]][_0xd232[31]]|| null:null,include:_0xb18dxd[_0xd232[27]]?(_0xb18dxd[_0xd232[27]][_0xd232[32]]?_[_0xd232[35]](_0xb18dxd[_0xd232[27]][_0xd232[32]],function(_0xb18dx13){return {model:db[_0xb18dx13[_0xd232[33]]],as:_0xb18dx13[_0xd232[34]],attributes:_0xb18dx13[_0xd232[30]],include:_0xb18dx13[_0xd232[32]]?_[_0xd232[35]](_0xb18dx13[_0xd232[32]],function(_0xb18dx14){return {model:db[_0xb18dx14[_0xd232[33]]],as:_0xb18dx14[_0xd232[34]],attributes:_0xb18dx14[_0xd232[30]],include:_0xb18dx14[_0xd232[32]]?_[_0xd232[35]](_0xb18dx14[_0xd232[32]],function(_0xb18dx15){return {model:db[_0xb18dx15[_0xd232[33]]],as:_0xb18dx15[_0xd232[34]],attributes:_0xb18dx15[_0xd232[30]]}}):[]}}):[]}}):[]):[]})[_0xd232[24]](function(_0xb18dx11){logger[_0xd232[17]](_0xd232[26],_0xb18dxd);logger[_0xd232[20]](_0xd232[26],_0xb18dxd,JSON[_0xd232[19]](_0xb18dx11));_0xb18dxe(_0xb18dx11)})[_0xd232[15]](function(_0xb18dx10){logger[_0xd232[14]](_0xd232[26],_0xb18dx10[_0xd232[22]],_0xb18dxd);_0xb18dxf(_0xb18dx12[_0xd232[14]](500,_0xb18dx10[_0xd232[22]]))})})};exports[_0xd232[38]]= function(_0xb18dxd){var _0xb18dx12=this;return  new Promise(function(_0xb18dxe,_0xb18dxf){return db[_0xd232[37]][_0xd232[40]](_0xb18dxd[_0xd232[39]],{raw:_0xb18dxd[_0xd232[27]]?(_0xb18dxd[_0xd232[27]][_0xd232[28]]=== undefined)?true:false:true})[_0xd232[24]](function(_0xb18dx11){logger[_0xd232[17]](_0xd232[38],_0xb18dxd);logger[_0xd232[20]](_0xd232[38],_0xb18dxd,JSON[_0xd232[19]](_0xb18dx11));_0xb18dxe(_0xb18dx11)})[_0xd232[15]](function(_0xb18dx10){logger[_0xd232[14]](_0xd232[38],_0xb18dx10[_0xd232[22]],_0xb18dxd);_0xb18dxf(_0xb18dx12[_0xd232[14]](500,_0xb18dx10[_0xd232[22]]))})})};exports[_0xd232[41]]= function(_0xb18dxd){var _0xb18dx12=this;return  new Promise(function(_0xb18dxe,_0xb18dxf){return db[_0xd232[37]][_0xd232[42]](_0xb18dxd[_0xd232[39]],{raw:_0xb18dxd[_0xd232[27]]?(_0xb18dxd[_0xd232[27]][_0xd232[28]]=== undefined)?true:false:true,individualHooks:true,where:_0xb18dxd[_0xd232[27]]?_0xb18dxd[_0xd232[27]][_0xd232[29]]|| null:null,attributes:_0xb18dxd[_0xd232[27]]?_0xb18dxd[_0xd232[27]][_0xd232[30]]|| null:null,limit:_0xb18dxd[_0xd232[27]]?_0xb18dxd[_0xd232[27]][_0xd232[31]]|| null:null})[_0xd232[24]](function(_0xb18dx11){logger[_0xd232[17]](_0xd232[41],_0xb18dxd);logger[_0xd232[20]](_0xd232[41],_0xb18dxd,JSON[_0xd232[19]](_0xb18dx11));_0xb18dxe(_0xb18dx11)})[_0xd232[15]](function(_0xb18dx10){logger[_0xd232[14]](_0xd232[41],_0xb18dx10[_0xd232[22]],_0xb18dxd);_0xb18dxf(_0xb18dx12[_0xd232[14]](500,_0xb18dx10[_0xd232[22]]))})})}
\ No newline at end of file
index 1b18243..5ada5fe 100644 (file)
@@ -1 +1 @@
-var _0xcf7e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xcf7e[0];var multer=require(_0xcf7e[1]);var util=require(_0xcf7e[2]);var path=require(_0xcf7e[3]);var express=require(_0xcf7e[4]);var router=express.Router();var auth=require(_0xcf7e[5]);var config=require(_0xcf7e[6]);var controller=require(_0xcf7e[7]);router[_0xcf7e[11]](_0xcf7e[8],auth[_0xcf7e[9]](),controller[_0xcf7e[10]]);router[_0xcf7e[11]](_0xcf7e[12],auth[_0xcf7e[9]](),controller[_0xcf7e[13]]);router[_0xcf7e[15]](_0xcf7e[8],auth[_0xcf7e[9]](),controller[_0xcf7e[14]]);router[_0xcf7e[17]](_0xcf7e[12],auth[_0xcf7e[9]](),controller[_0xcf7e[16]]);router[_0xcf7e[19]](_0xcf7e[12],auth[_0xcf7e[9]](),controller[_0xcf7e[18]]);module[_0xcf7e[20]]= router
\ No newline at end of file
+var _0xe154=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe154[0];var multer=require(_0xe154[1]);var util=require(_0xe154[2]);var path=require(_0xe154[3]);var express=require(_0xe154[4]);var router=express.Router();var auth=require(_0xe154[5]);var config=require(_0xe154[6]);var controller=require(_0xe154[7]);router[_0xe154[11]](_0xe154[8],auth[_0xe154[9]](),controller[_0xe154[10]]);router[_0xe154[11]](_0xe154[12],auth[_0xe154[9]](),controller[_0xe154[13]]);router[_0xe154[15]](_0xe154[8],auth[_0xe154[9]](),controller[_0xe154[14]]);router[_0xe154[17]](_0xe154[12],auth[_0xe154[9]](),controller[_0xe154[16]]);router[_0xe154[19]](_0xe154[12],auth[_0xe154[9]](),controller[_0xe154[18]]);module[_0xe154[20]]= router
\ No newline at end of file
index 4ac4fb2..bf61bf0 100644 (file)
@@ -1 +1 @@
-var _0xd3d8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","","\x44\x41\x54\x45","\x4E\x4F\x57","\x66\x6E"];_0xd3d8[0];var Sequelize=require(_0xd3d8[1]);module[_0xd3d8[2]]= {time:{type:Sequelize[_0xd3d8[3]]},callid:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},queuename:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},agent:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},event:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},data1:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},data2:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},data3:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},data4:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},data5:{type:Sequelize[_0xd3d8[3]],allowNull:false,defaultValue:_0xd3d8[4]},dtm:{type:Sequelize[_0xd3d8[5]],allowNull:false,defaultValue:Sequelize[_0xd3d8[7]](_0xd3d8[6])}}
\ No newline at end of file
+var _0x72be=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x65\x78\x70\x6F\x72\x74\x73","\x53\x54\x52\x49\x4E\x47","","\x44\x41\x54\x45","\x4E\x4F\x57","\x66\x6E"];_0x72be[0];var Sequelize=require(_0x72be[1]);module[_0x72be[2]]= {time:{type:Sequelize[_0x72be[3]]},callid:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},queuename:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},agent:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},event:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},data1:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},data2:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},data3:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},data4:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},data5:{type:Sequelize[_0x72be[3]],allowNull:false,defaultValue:_0x72be[4]},dtm:{type:Sequelize[_0x72be[5]],allowNull:false,defaultValue:Sequelize[_0x72be[7]](_0x72be[6])}}
\ No newline at end of file
index d238635..af7d1a4 100644 (file)
@@ -1 +1 @@
-var _0x6e63=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x6e63[0];var jsonpatch=require(_0x6e63[1]);var rp=require(_0x6e63[2]);var moment=require(_0x6e63[3]);var BPromise=require(_0x6e63[4]);var util=require(_0x6e63[5]);var path=require(_0x6e63[6]);var sox=require(_0x6e63[7]);var ejs=require(_0x6e63[8]);var fs=require(_0x6e63[9]);var _=require(_0x6e63[10]);var squel=require(_0x6e63[11]);var crypto=require(_0x6e63[12]);var jsforce=require(_0x6e63[13]);var toCsv=require(_0x6e63[14]);var qs=require(_0x6e63[15]);var logger=require(_0x6e63[17])(_0x6e63[16]);var utils=require(_0x6e63[18]);var config=require(_0x6e63[19]);var db=require(_0x6e63[21])[_0x6e63[20]];function respondWithStatusCode(_0x99a8x15,_0x99a8x16,_0x99a8x17){_0x99a8x16= _0x99a8x16|| 204;return function(_0x99a8x18){if(_0x99a8x18){logger[_0x6e63[24]](_0x6e63[22],_0x99a8x17,_0x99a8x16,_0x6e63[23]);logger[_0x6e63[26]](_0x6e63[25],_0x99a8x17,_0x99a8x16,_0x6e63[23]);return _0x99a8x15[_0x6e63[27]](_0x99a8x16)};return _0x99a8x15[_0x6e63[29]](304)[_0x6e63[28]]()}}function respondWithResult(_0x99a8x15,_0x99a8x16,_0x99a8x17){_0x99a8x16= _0x99a8x16|| 200;return function(_0x99a8x18){if(_0x99a8x18){logger[_0x6e63[24]](_0x6e63[22],_0x99a8x17,_0x99a8x16,_0x6e63[30]);logger[_0x6e63[26]](_0x6e63[25],_0x99a8x17,_0x99a8x16,_0x6e63[30],JSON[_0x6e63[31]](_0x99a8x18));return _0x99a8x15[_0x6e63[29]](_0x99a8x16)[_0x6e63[32]](_0x99a8x18)};return _0x99a8x15[_0x6e63[29]](304)[_0x6e63[28]]()}}function respondWithFilteredResult(_0x99a8x15,_0x99a8x1b,_0x99a8x17){return function(_0x99a8x18){if(_0x99a8x18){var _0x99a8x1c=_0x99a8x18[_0x6e63[33]],_0x99a8x1d=_0x99a8x1b[_0x6e63[34]],_0x99a8x1e=_0x99a8x1b[_0x6e63[34]]+ _0x99a8x1b[_0x6e63[35]],_0x99a8x16;if(_0x99a8x1e>= _0x99a8x1c){_0x99a8x1e= _0x99a8x1c;_0x99a8x16= 200}else {_0x99a8x16= 206};_0x99a8x15[_0x6e63[29]](_0x99a8x16);logger[_0x6e63[24]](_0x6e63[22],_0x99a8x17,_0x99a8x16,_0x6e63[36]);logger[_0x6e63[26]](_0x6e63[25],_0x99a8x17,_0x99a8x16,_0x6e63[30],JSON[_0x6e63[31]](_0x99a8x18));return _0x99a8x15[_0x6e63[40]](_0x6e63[37],_0x99a8x1d+ _0x6e63[38]+ _0x99a8x1e+ _0x6e63[39]+ _0x99a8x1c)[_0x6e63[32]](_0x99a8x18)};return null}}function patchUpdates(_0x99a8x20){return function(_0x99a8x18){try{jsonpatch[_0x6e63[41]](_0x99a8x18,_0x99a8x20,true)}catch(err){return BPromise[_0x6e63[42]](err)};return _0x99a8x18[_0x6e63[43]]()}}function saveUpdates(_0x99a8x22,_0x99a8x16,_0x99a8x17){return function(_0x99a8x18){if(_0x99a8x18){return _0x99a8x18[_0x6e63[46]](_0x99a8x22)[_0x6e63[45]](function(_0x99a8x23){logger[_0x6e63[24]](_0x6e63[22],_0x99a8x17,_0x99a8x16,_0x6e63[44]);logger[_0x6e63[26]](_0x6e63[25],_0x99a8x17,_0x99a8x16,_0x6e63[44],JSON[_0x6e63[31]](_0x99a8x18));return _0x99a8x23})};return null}}function removeEntity(_0x99a8x15,_0x99a8x16,_0x99a8x17){return function(_0x99a8x18){if(_0x99a8x18){return _0x99a8x18[_0x6e63[48]]()[_0x6e63[45]](function(){logger[_0x6e63[24]](_0x6e63[22],_0x99a8x17,_0x99a8x16,_0x6e63[47]);logger[_0x6e63[26]](_0x6e63[25],_0x99a8x17,_0x99a8x16,_0x6e63[47],JSON[_0x6e63[31]](_0x99a8x18));_0x99a8x15[_0x6e63[29]](204)[_0x6e63[28]]()})}}}function handleEntityNotFound(_0x99a8x15,_0x99a8x16,_0x99a8x17){return function(_0x99a8x18){if(!_0x99a8x18){logger[_0x6e63[50]](_0x6e63[22],_0x99a8x17,404,_0x6e63[49]);_0x99a8x15[_0x6e63[29]](404)[_0x6e63[28]]();return null};return _0x99a8x18}}function handleError(_0x99a8x15,_0x99a8x16,_0x99a8x17){_0x99a8x16= _0x99a8x16|| 500;return function(_0x99a8x27){logger[_0x6e63[50]](_0x6e63[22],_0x99a8x17,_0x99a8x16,JSON[_0x6e63[31]](_0x99a8x27));delete _0x99a8x27[_0x6e63[51]];_0x99a8x15[_0x6e63[29]](_0x99a8x16)[_0x6e63[52]](_0x99a8x27)}}exports[_0x6e63[53]]= function(_0x99a8x28,_0x99a8x15){var _0x99a8x1b={},_0x99a8x29={};_0x99a8x29[_0x6e63[54]]= _[_0x6e63[57]](db[_0x6e63[56]][_0x6e63[55]]);_0x99a8x29[_0x6e63[58]]= _[_0x6e63[57]](_0x99a8x28[_0x6e63[58]]);_0x99a8x29[_0x6e63[59]]= _[_0x6e63[60]](_0x99a8x29[_0x6e63[54]],_0x99a8x29[_0x6e63[58]]);_0x99a8x1b[_0x6e63[61]]= _[_0x6e63[60]](_0x99a8x29[_0x6e63[54]],qs[_0x6e63[62]](_0x99a8x28[_0x6e63[58]][_0x6e63[62]]));_0x99a8x1b[_0x6e63[61]]= (_0x99a8x1b[_0x6e63[61]][_0x6e63[63]])?_0x99a8x1b[_0x6e63[61]]:_0x99a8x29[_0x6e63[54]];if(!_0x99a8x28[_0x6e63[58]][_0x6e63[65]](_0x6e63[64])){_0x99a8x1b[_0x6e63[35]]= qs[_0x6e63[35]](_0x99a8x28[_0x6e63[58]][_0x6e63[35]]);_0x99a8x1b[_0x6e63[34]]= qs[_0x6e63[34]](_0x99a8x28[_0x6e63[58]][_0x6e63[34]])};_0x99a8x1b[_0x6e63[66]]= qs[_0x6e63[67]](_0x99a8x28[_0x6e63[58]][_0x6e63[67]]);_0x99a8x1b[_0x6e63[68]]= qs[_0x6e63[59]](_[_0x6e63[69]](_0x99a8x28[_0x6e63[58]],_0x99a8x29[_0x6e63[59]]));if(_0x99a8x28[_0x6e63[58]][_0x6e63[70]]){_0x99a8x1b[_0x6e63[68]]= _[_0x6e63[73]](_0x99a8x1b[_0x6e63[68]],{$or:_[_0x6e63[72]](_0x99a8x1b[_0x6e63[61]],function(_0x99a8x2a){var _0x99a8x2b={};_0x99a8x2b[_0x99a8x2a]= {$like:_0x6e63[71]+ _0x99a8x28[_0x6e63[58]][_0x6e63[70]]+ _0x6e63[71]};return _0x99a8x2b})})};_0x99a8x1b= _[_0x6e63[73]]({},_0x99a8x1b,_0x99a8x28[_0x6e63[74]]);return db[_0x6e63[56]][_0x6e63[76]](_0x99a8x1b)[_0x6e63[45]](respondWithFilteredResult(_0x99a8x15,_0x99a8x1b,_0x6e63[53]))[_0x6e63[75]](handleError(_0x99a8x15,null,_0x6e63[53]))};exports[_0x6e63[77]]= function(_0x99a8x28,_0x99a8x15){var _0x99a8x1b={raw:true,where:{id:_0x99a8x28[_0x6e63[79]][_0x6e63[78]]}},_0x99a8x29={};_0x99a8x29[_0x6e63[54]]= _[_0x6e63[57]](db[_0x6e63[56]][_0x6e63[55]]);_0x99a8x29[_0x6e63[58]]= _[_0x6e63[57]](_0x99a8x28[_0x6e63[58]]);_0x99a8x29[_0x6e63[59]]= _[_0x6e63[60]](_0x99a8x29[_0x6e63[54]],_0x99a8x29[_0x6e63[58]]);_0x99a8x1b[_0x6e63[61]]= _[_0x6e63[60]](_0x99a8x29[_0x6e63[54]],qs[_0x6e63[62]](_0x99a8x28[_0x6e63[58]][_0x6e63[62]]));_0x99a8x1b[_0x6e63[61]]= (_0x99a8x1b[_0x6e63[61]][_0x6e63[63]])?_0x99a8x1b[_0x6e63[61]]:_0x99a8x29[_0x6e63[54]];_0x99a8x1b= _[_0x6e63[73]]({},_0x99a8x1b,_0x99a8x28[_0x6e63[74]]);return db[_0x6e63[56]][_0x6e63[80]](_0x99a8x1b)[_0x6e63[45]](handleEntityNotFound(_0x99a8x15,null,_0x6e63[77]))[_0x6e63[45]](respondWithResult(_0x99a8x15,null,_0x6e63[77]))[_0x6e63[75]](handleError(_0x99a8x15,null,_0x6e63[77]))};exports[_0x6e63[81]]= function(_0x99a8x28,_0x99a8x15){return db[_0x6e63[56]][_0x6e63[81]](_0x99a8x28[_0x6e63[82]],{})[_0x6e63[45]](respondWithResult(_0x99a8x15,201,_0x6e63[81]))[_0x6e63[75]](handleError(_0x99a8x15,null,_0x6e63[81]))};exports[_0x6e63[46]]= function(_0x99a8x28,_0x99a8x15){if(_0x99a8x28[_0x6e63[82]][_0x6e63[78]]){delete _0x99a8x28[_0x6e63[82]][_0x6e63[78]]};return db[_0x6e63[56]][_0x6e63[80]]({where:{id:_0x99a8x28[_0x6e63[79]][_0x6e63[78]]}})[_0x6e63[45]](handleEntityNotFound(_0x99a8x15,null,_0x6e63[46]))[_0x6e63[45]](saveUpdates(_0x99a8x28[_0x6e63[82]],null,_0x6e63[46]))[_0x6e63[45]](respondWithResult(_0x99a8x15,null,_0x6e63[46]))[_0x6e63[75]](handleError(_0x99a8x15,null,_0x6e63[46]))};exports[_0x6e63[48]]= function(_0x99a8x28,_0x99a8x15){return db[_0x6e63[56]][_0x6e63[80]]({where:{id:_0x99a8x28[_0x6e63[79]][_0x6e63[78]]}})[_0x6e63[45]](handleEntityNotFound(_0x99a8x15,null,_0x6e63[48]))[_0x6e63[45]](removeEntity(_0x99a8x15,null,_0x6e63[48]))[_0x6e63[75]](handleError(_0x99a8x15,null,_0x6e63[48]))}
\ No newline at end of file
+var _0xff54=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0xff54[0];var jsonpatch=require(_0xff54[1]);var rp=require(_0xff54[2]);var moment=require(_0xff54[3]);var BPromise=require(_0xff54[4]);var util=require(_0xff54[5]);var path=require(_0xff54[6]);var sox=require(_0xff54[7]);var ejs=require(_0xff54[8]);var fs=require(_0xff54[9]);var _=require(_0xff54[10]);var squel=require(_0xff54[11]);var crypto=require(_0xff54[12]);var jsforce=require(_0xff54[13]);var toCsv=require(_0xff54[14]);var qs=require(_0xff54[15]);var logger=require(_0xff54[17])(_0xff54[16]);var utils=require(_0xff54[18]);var config=require(_0xff54[19]);var db=require(_0xff54[21])[_0xff54[20]];function respondWithStatusCode(_0xfc57x15,_0xfc57x16,_0xfc57x17){_0xfc57x16= _0xfc57x16|| 204;return function(_0xfc57x18){if(_0xfc57x18){logger[_0xff54[24]](_0xff54[22],_0xfc57x17,_0xfc57x16,_0xff54[23]);logger[_0xff54[26]](_0xff54[25],_0xfc57x17,_0xfc57x16,_0xff54[23]);return _0xfc57x15[_0xff54[27]](_0xfc57x16)};return _0xfc57x15[_0xff54[29]](304)[_0xff54[28]]()}}function respondWithResult(_0xfc57x15,_0xfc57x16,_0xfc57x17){_0xfc57x16= _0xfc57x16|| 200;return function(_0xfc57x18){if(_0xfc57x18){logger[_0xff54[24]](_0xff54[22],_0xfc57x17,_0xfc57x16,_0xff54[30]);logger[_0xff54[26]](_0xff54[25],_0xfc57x17,_0xfc57x16,_0xff54[30],JSON[_0xff54[31]](_0xfc57x18));return _0xfc57x15[_0xff54[29]](_0xfc57x16)[_0xff54[32]](_0xfc57x18)};return _0xfc57x15[_0xff54[29]](304)[_0xff54[28]]()}}function respondWithFilteredResult(_0xfc57x15,_0xfc57x1b,_0xfc57x17){return function(_0xfc57x18){if(_0xfc57x18){var _0xfc57x1c=_0xfc57x18[_0xff54[33]],_0xfc57x1d=_0xfc57x1b[_0xff54[34]],_0xfc57x1e=_0xfc57x1b[_0xff54[34]]+ _0xfc57x1b[_0xff54[35]],_0xfc57x16;if(_0xfc57x1e>= _0xfc57x1c){_0xfc57x1e= _0xfc57x1c;_0xfc57x16= 200}else {_0xfc57x16= 206};_0xfc57x15[_0xff54[29]](_0xfc57x16);logger[_0xff54[24]](_0xff54[22],_0xfc57x17,_0xfc57x16,_0xff54[36]);logger[_0xff54[26]](_0xff54[25],_0xfc57x17,_0xfc57x16,_0xff54[30],JSON[_0xff54[31]](_0xfc57x18));return _0xfc57x15[_0xff54[40]](_0xff54[37],_0xfc57x1d+ _0xff54[38]+ _0xfc57x1e+ _0xff54[39]+ _0xfc57x1c)[_0xff54[32]](_0xfc57x18)};return null}}function patchUpdates(_0xfc57x20){return function(_0xfc57x18){try{jsonpatch[_0xff54[41]](_0xfc57x18,_0xfc57x20,true)}catch(err){return BPromise[_0xff54[42]](err)};return _0xfc57x18[_0xff54[43]]()}}function saveUpdates(_0xfc57x22,_0xfc57x16,_0xfc57x17){return function(_0xfc57x18){if(_0xfc57x18){return _0xfc57x18[_0xff54[46]](_0xfc57x22)[_0xff54[45]](function(_0xfc57x23){logger[_0xff54[24]](_0xff54[22],_0xfc57x17,_0xfc57x16,_0xff54[44]);logger[_0xff54[26]](_0xff54[25],_0xfc57x17,_0xfc57x16,_0xff54[44],JSON[_0xff54[31]](_0xfc57x18));return _0xfc57x23})};return null}}function removeEntity(_0xfc57x15,_0xfc57x16,_0xfc57x17){return function(_0xfc57x18){if(_0xfc57x18){return _0xfc57x18[_0xff54[48]]()[_0xff54[45]](function(){logger[_0xff54[24]](_0xff54[22],_0xfc57x17,_0xfc57x16,_0xff54[47]);logger[_0xff54[26]](_0xff54[25],_0xfc57x17,_0xfc57x16,_0xff54[47],JSON[_0xff54[31]](_0xfc57x18));_0xfc57x15[_0xff54[29]](204)[_0xff54[28]]()})}}}function handleEntityNotFound(_0xfc57x15,_0xfc57x16,_0xfc57x17){return function(_0xfc57x18){if(!_0xfc57x18){logger[_0xff54[50]](_0xff54[22],_0xfc57x17,404,_0xff54[49]);_0xfc57x15[_0xff54[29]](404)[_0xff54[28]]();return null};return _0xfc57x18}}function handleError(_0xfc57x15,_0xfc57x16,_0xfc57x17){_0xfc57x16= _0xfc57x16|| 500;return function(_0xfc57x27){logger[_0xff54[50]](_0xff54[22],_0xfc57x17,_0xfc57x16,JSON[_0xff54[31]](_0xfc57x27));delete _0xfc57x27[_0xff54[51]];_0xfc57x15[_0xff54[29]](_0xfc57x16)[_0xff54[52]](_0xfc57x27)}}exports[_0xff54[53]]= function(_0xfc57x28,_0xfc57x15){var _0xfc57x1b={},_0xfc57x29={};_0xfc57x29[_0xff54[54]]= _[_0xff54[57]](db[_0xff54[56]][_0xff54[55]]);_0xfc57x29[_0xff54[58]]= _[_0xff54[57]](_0xfc57x28[_0xff54[58]]);_0xfc57x29[_0xff54[59]]= _[_0xff54[60]](_0xfc57x29[_0xff54[54]],_0xfc57x29[_0xff54[58]]);_0xfc57x1b[_0xff54[61]]= _[_0xff54[60]](_0xfc57x29[_0xff54[54]],qs[_0xff54[62]](_0xfc57x28[_0xff54[58]][_0xff54[62]]));_0xfc57x1b[_0xff54[61]]= (_0xfc57x1b[_0xff54[61]][_0xff54[63]])?_0xfc57x1b[_0xff54[61]]:_0xfc57x29[_0xff54[54]];if(!_0xfc57x28[_0xff54[58]][_0xff54[65]](_0xff54[64])){_0xfc57x1b[_0xff54[35]]= qs[_0xff54[35]](_0xfc57x28[_0xff54[58]][_0xff54[35]]);_0xfc57x1b[_0xff54[34]]= qs[_0xff54[34]](_0xfc57x28[_0xff54[58]][_0xff54[34]])};_0xfc57x1b[_0xff54[66]]= qs[_0xff54[67]](_0xfc57x28[_0xff54[58]][_0xff54[67]]);_0xfc57x1b[_0xff54[68]]= qs[_0xff54[59]](_[_0xff54[69]](_0xfc57x28[_0xff54[58]],_0xfc57x29[_0xff54[59]]));if(_0xfc57x28[_0xff54[58]][_0xff54[70]]){_0xfc57x1b[_0xff54[68]]= _[_0xff54[73]](_0xfc57x1b[_0xff54[68]],{$or:_[_0xff54[72]](_0xfc57x1b[_0xff54[61]],function(_0xfc57x2a){var _0xfc57x2b={};_0xfc57x2b[_0xfc57x2a]= {$like:_0xff54[71]+ _0xfc57x28[_0xff54[58]][_0xff54[70]]+ _0xff54[71]};return _0xfc57x2b})})};_0xfc57x1b= _[_0xff54[73]]({},_0xfc57x1b,_0xfc57x28[_0xff54[74]]);return db[_0xff54[56]][_0xff54[76]](_0xfc57x1b)[_0xff54[45]](respondWithFilteredResult(_0xfc57x15,_0xfc57x1b,_0xff54[53]))[_0xff54[75]](handleError(_0xfc57x15,null,_0xff54[53]))};exports[_0xff54[77]]= function(_0xfc57x28,_0xfc57x15){var _0xfc57x1b={raw:true,where:{id:_0xfc57x28[_0xff54[79]][_0xff54[78]]}},_0xfc57x29={};_0xfc57x29[_0xff54[54]]= _[_0xff54[57]](db[_0xff54[56]][_0xff54[55]]);_0xfc57x29[_0xff54[58]]= _[_0xff54[57]](_0xfc57x28[_0xff54[58]]);_0xfc57x29[_0xff54[59]]= _[_0xff54[60]](_0xfc57x29[_0xff54[54]],_0xfc57x29[_0xff54[58]]);_0xfc57x1b[_0xff54[61]]= _[_0xff54[60]](_0xfc57x29[_0xff54[54]],qs[_0xff54[62]](_0xfc57x28[_0xff54[58]][_0xff54[62]]));_0xfc57x1b[_0xff54[61]]= (_0xfc57x1b[_0xff54[61]][_0xff54[63]])?_0xfc57x1b[_0xff54[61]]:_0xfc57x29[_0xff54[54]];_0xfc57x1b= _[_0xff54[73]]({},_0xfc57x1b,_0xfc57x28[_0xff54[74]]);return db[_0xff54[56]][_0xff54[80]](_0xfc57x1b)[_0xff54[45]](handleEntityNotFound(_0xfc57x15,null,_0xff54[77]))[_0xff54[45]](respondWithResult(_0xfc57x15,null,_0xff54[77]))[_0xff54[75]](handleError(_0xfc57x15,null,_0xff54[77]))};exports[_0xff54[81]]= function(_0xfc57x28,_0xfc57x15){return db[_0xff54[56]][_0xff54[81]](_0xfc57x28[_0xff54[82]],{})[_0xff54[45]](respondWithResult(_0xfc57x15,201,_0xff54[81]))[_0xff54[75]](handleError(_0xfc57x15,null,_0xff54[81]))};exports[_0xff54[46]]= function(_0xfc57x28,_0xfc57x15){if(_0xfc57x28[_0xff54[82]][_0xff54[78]]){delete _0xfc57x28[_0xff54[82]][_0xff54[78]]};return db[_0xff54[56]][_0xff54[80]]({where:{id:_0xfc57x28[_0xff54[79]][_0xff54[78]]}})[_0xff54[45]](handleEntityNotFound(_0xfc57x15,null,_0xff54[46]))[_0xff54[45]](saveUpdates(_0xfc57x28[_0xff54[82]],null,_0xff54[46]))[_0xff54[45]](respondWithResult(_0xfc57x15,null,_0xff54[46]))[_0xff54[75]](handleError(_0xfc57x15,null,_0xff54[46]))};exports[_0xff54[48]]= function(_0xfc57x28,_0xfc57x15){return db[_0xff54[56]][_0xff54[80]]({where:{id:_0xfc57x28[_0xff54[79]][_0xff54[78]]}})[_0xff54[45]](handleEntityNotFound(_0xfc57x15,null,_0xff54[48]))[_0xff54[45]](removeEntity(_0xfc57x15,null,_0xff54[48]))[_0xff54[75]](handleError(_0xfc57x15,null,_0xff54[48]))}
\ No newline at end of file
index 935b797..4efb64b 100644 (file)
@@ -1 +1 @@
-var _0xbc21=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x6C\x6F\x67","\x65\x76\x65\x6E\x74\x5F\x64\x74\x6D","\x65\x76\x65\x6E\x74","\x64\x74\x6D","\x64\x65\x66\x69\x6E\x65"];_0xbc21[0];var _=require(_0xbc21[1]);var util=require(_0xbc21[2]);var logger=require(_0xbc21[4])(_0xbc21[3]);var attributes=require(_0xbc21[5]);module[_0xbc21[6]]= function(_0x3f7ex5,_0x3f7ex6){return _0x3f7ex5[_0xbc21[12]](_0xbc21[7],attributes,{tableName:_0xbc21[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0xbc21[9],"\x66\x69\x65\x6C\x64\x73":[_0xbc21[10],_0xbc21[11]]}],timestamps:false})}
\ No newline at end of file
+var _0x65ef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x6C\x6F\x67","\x65\x76\x65\x6E\x74\x5F\x64\x74\x6D","\x65\x76\x65\x6E\x74","\x64\x74\x6D","\x64\x65\x66\x69\x6E\x65"];_0x65ef[0];var _=require(_0x65ef[1]);var util=require(_0x65ef[2]);var logger=require(_0x65ef[4])(_0x65ef[3]);var attributes=require(_0x65ef[5]);module[_0x65ef[6]]= function(_0x3ed1x5,_0x3ed1x6){return _0x3ed1x5[_0x65ef[12]](_0x65ef[7],attributes,{tableName:_0x65ef[8],paranoid:false,indexes:[{"\x6E\x61\x6D\x65":_0x65ef[9],"\x66\x69\x65\x6C\x64\x73":[_0x65ef[10],_0x65ef[11]]}],timestamps:false})}
\ No newline at end of file
index af41f6d..4d2f189 100644 (file)
@@ -1 +1 @@
-var _0xa1ef=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xa1ef[0];var _=require(_0xa1ef[1]);var util=require(_0xa1ef[2]);var moment=require(_0xa1ef[3]);var BPromise=require(_0xa1ef[4]);var db=require(_0xa1ef[6])[_0xa1ef[5]];var utils=require(_0xa1ef[7]);var logger=require(_0xa1ef[9])(_0xa1ef[8]);var jayson=require(_0xa1ef[10]);var client=jayson[_0xa1ef[12]][_0xa1ef[11]]({port:9002});function respondWithRpcPromise(_0x17b9xb,_0x17b9xc,_0x17b9xd){return  new BPromise(function(_0x17b9xe,_0x17b9xf){return client[_0xa1ef[25]](_0x17b9xb,_0x17b9xd)[_0xa1ef[24]](function(_0x17b9x11){logger[_0xa1ef[17]](_0xa1ef[13],_0x17b9xc,_0xa1ef[16]);logger[_0xa1ef[20]](_0xa1ef[18],_0x17b9xc,_0xa1ef[16],JSON[_0xa1ef[19]](_0x17b9x11));if(_0x17b9x11[_0xa1ef[14]]){if(_0x17b9x11[_0xa1ef[14]][_0xa1ef[21]]=== 500){logger[_0xa1ef[14]](_0xa1ef[13],_0x17b9xc,_0x17b9x11[_0xa1ef[14]][_0xa1ef[22]]);return _0x17b9xf(_0x17b9x11[_0xa1ef[14]][_0xa1ef[22]])};logger[_0xa1ef[14]](_0xa1ef[13],_0x17b9xc,_0x17b9x11[_0xa1ef[14]][_0xa1ef[22]]);return _0x17b9xe(_0x17b9x11[_0xa1ef[14]][_0xa1ef[22]])}else {logger[_0xa1ef[17]](_0xa1ef[13],_0x17b9xc,_0xa1ef[16]);_0x17b9xe(_0x17b9x11[_0xa1ef[23]][_0xa1ef[22]])}})[_0xa1ef[15]](function(_0x17b9x10){logger[_0xa1ef[14]](_0xa1ef[13],_0x17b9xc,_0x17b9x10);_0x17b9xf(_0x17b9x10)})})}
\ No newline at end of file
+var _0xf3ea=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74"];_0xf3ea[0];var _=require(_0xf3ea[1]);var util=require(_0xf3ea[2]);var moment=require(_0xf3ea[3]);var BPromise=require(_0xf3ea[4]);var db=require(_0xf3ea[6])[_0xf3ea[5]];var utils=require(_0xf3ea[7]);var logger=require(_0xf3ea[9])(_0xf3ea[8]);var jayson=require(_0xf3ea[10]);var client=jayson[_0xf3ea[12]][_0xf3ea[11]]({port:9002});function respondWithRpcPromise(_0x5ebaxb,_0x5ebaxc,_0x5ebaxd){return  new BPromise(function(_0x5ebaxe,_0x5ebaxf){return client[_0xf3ea[25]](_0x5ebaxb,_0x5ebaxd)[_0xf3ea[24]](function(_0x5ebax11){logger[_0xf3ea[17]](_0xf3ea[13],_0x5ebaxc,_0xf3ea[16]);logger[_0xf3ea[20]](_0xf3ea[18],_0x5ebaxc,_0xf3ea[16],JSON[_0xf3ea[19]](_0x5ebax11));if(_0x5ebax11[_0xf3ea[14]]){if(_0x5ebax11[_0xf3ea[14]][_0xf3ea[21]]=== 500){logger[_0xf3ea[14]](_0xf3ea[13],_0x5ebaxc,_0x5ebax11[_0xf3ea[14]][_0xf3ea[22]]);return _0x5ebaxf(_0x5ebax11[_0xf3ea[14]][_0xf3ea[22]])};logger[_0xf3ea[14]](_0xf3ea[13],_0x5ebaxc,_0x5ebax11[_0xf3ea[14]][_0xf3ea[22]]);return _0x5ebaxe(_0x5ebax11[_0xf3ea[14]][_0xf3ea[22]])}else {logger[_0xf3ea[17]](_0xf3ea[13],_0x5ebaxc,_0xf3ea[16]);_0x5ebaxe(_0x5ebax11[_0xf3ea[23]][_0xf3ea[22]])}})[_0xf3ea[15]](function(_0x5ebax10){logger[_0xf3ea[14]](_0xf3ea[13],_0x5ebaxc,_0x5ebax10);_0x5ebaxf(_0x5ebax10)})})}
\ No newline at end of file
index 8e05028..3830466 100644 (file)
@@ -1 +1 @@
-var _0x28bd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x28bd[0];var multer=require(_0x28bd[1]);var util=require(_0x28bd[2]);var path=require(_0x28bd[3]);var express=require(_0x28bd[4]);var router=express.Router();var auth=require(_0x28bd[5]);var config=require(_0x28bd[6]);var controller=require(_0x28bd[7]);router[_0x28bd[11]](_0x28bd[8],auth[_0x28bd[9]](),controller[_0x28bd[10]]);router[_0x28bd[11]](_0x28bd[12],auth[_0x28bd[9]](),controller[_0x28bd[13]]);router[_0x28bd[11]](_0x28bd[14],auth[_0x28bd[9]](),controller[_0x28bd[15]]);router[_0x28bd[11]](_0x28bd[16],controller[_0x28bd[17]]);router[_0x28bd[19]](_0x28bd[8],auth[_0x28bd[9]](),controller[_0x28bd[18]]);router[_0x28bd[21]](_0x28bd[14],auth[_0x28bd[9]](),controller[_0x28bd[20]]);router[_0x28bd[23]](_0x28bd[14],auth[_0x28bd[9]](),controller[_0x28bd[22]]);module[_0x28bd[24]]= router
\ No newline at end of file
+var _0x8a87=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x65\x73\x63\x72\x69\x62\x65","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x2F\x3A\x69\x64\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x8a87[0];var multer=require(_0x8a87[1]);var util=require(_0x8a87[2]);var path=require(_0x8a87[3]);var express=require(_0x8a87[4]);var router=express.Router();var auth=require(_0x8a87[5]);var config=require(_0x8a87[6]);var controller=require(_0x8a87[7]);router[_0x8a87[11]](_0x8a87[8],auth[_0x8a87[9]](),controller[_0x8a87[10]]);router[_0x8a87[11]](_0x8a87[12],auth[_0x8a87[9]](),controller[_0x8a87[13]]);router[_0x8a87[11]](_0x8a87[14],auth[_0x8a87[9]](),controller[_0x8a87[15]]);router[_0x8a87[11]](_0x8a87[16],controller[_0x8a87[17]]);router[_0x8a87[19]](_0x8a87[8],auth[_0x8a87[9]](),controller[_0x8a87[18]]);router[_0x8a87[21]](_0x8a87[14],auth[_0x8a87[9]](),controller[_0x8a87[20]]);router[_0x8a87[23]](_0x8a87[14],auth[_0x8a87[9]](),controller[_0x8a87[22]]);module[_0x8a87[24]]= router
\ No newline at end of file
index 62ed5a5..0ff2682 100644 (file)
@@ -1 +1 @@
-var _0x75ad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x70\x61\x74\x68","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x76\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x53\x54\x52\x49\x4E\x47","\x63\x68\x61\x6E\x6E\x65\x6C","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x73\x70\x6C\x69\x74","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x4D\x4D\x2D\x44\x44\x2D\x59\x59\x59\x59\x20\x48\x48\x3A\x6D\x6D","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74"];_0x75ad[0];var Sequelize=require(_0x75ad[1]);var moment=require(_0x75ad[2]);var path=require(_0x75ad[3]);module[_0x75ad[4]]= {format:{type:Sequelize[_0x75ad[5]],get:function(){return this[_0x75ad[7]](_0x75ad[6])?path[_0x75ad[8]](this[_0x75ad[7]](_0x75ad[6])):undefined}},uniqueid:{type:Sequelize[_0x75ad[9]]},channel:{type:Sequelize[_0x75ad[9]],set:function(_0x907bx4){if(_0x907bx4){this[_0x75ad[11]](_0x75ad[10],_0x907bx4);this[_0x75ad[11]](_0x75ad[12],_0x907bx4[_0x75ad[13]](/\/|-/)[1])}}},membername:{type:Sequelize[_0x75ad[9]]},calleridnum:{type:Sequelize[_0x75ad[9]]},calleridname:{type:Sequelize[_0x75ad[9]]},connectedlinenum:{type:Sequelize[_0x75ad[9]]},connectedlinename:{type:Sequelize[_0x75ad[9]]},accountcode:{type:Sequelize[_0x75ad[9]]},context:{type:Sequelize[_0x75ad[9]]},exten:{type:Sequelize[_0x75ad[9]]},value:{type:Sequelize[_0x75ad[9]]},type:{type:Sequelize[_0x75ad[9]]},rating:{type:Sequelize[_0x75ad[14]],validate:{max:5,min:0}},queue:{type:Sequelize[_0x75ad[9]]},createdAt:{type:Sequelize[_0x75ad[15]],get:function(){return moment(this[_0x75ad[7]](_0x75ad[18]))[_0x75ad[17]](_0x75ad[16]).toString()}},updatedAt:{type:Sequelize[_0x75ad[15]],get:function(){return moment(this[_0x75ad[7]](_0x75ad[19]))[_0x75ad[17]](_0x75ad[16]).toString()}}}
\ No newline at end of file
+var _0x1f79=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x70\x61\x74\x68","\x65\x78\x70\x6F\x72\x74\x73","\x56\x49\x52\x54\x55\x41\x4C","\x76\x61\x6C\x75\x65","\x67\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x65\x78\x74\x6E\x61\x6D\x65","\x53\x54\x52\x49\x4E\x47","\x63\x68\x61\x6E\x6E\x65\x6C","\x73\x65\x74\x44\x61\x74\x61\x56\x61\x6C\x75\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x73\x70\x6C\x69\x74","\x49\x4E\x54\x45\x47\x45\x52","\x44\x41\x54\x45","\x4D\x4D\x2D\x44\x44\x2D\x59\x59\x59\x59\x20\x48\x48\x3A\x6D\x6D","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74"];_0x1f79[0];var Sequelize=require(_0x1f79[1]);var moment=require(_0x1f79[2]);var path=require(_0x1f79[3]);module[_0x1f79[4]]= {format:{type:Sequelize[_0x1f79[5]],get:function(){return this[_0x1f79[7]](_0x1f79[6])?path[_0x1f79[8]](this[_0x1f79[7]](_0x1f79[6])):undefined}},uniqueid:{type:Sequelize[_0x1f79[9]]},channel:{type:Sequelize[_0x1f79[9]],set:function(_0x3d1ex4){if(_0x3d1ex4){this[_0x1f79[11]](_0x1f79[10],_0x3d1ex4);this[_0x1f79[11]](_0x1f79[12],_0x3d1ex4[_0x1f79[13]](/\/|-/)[1])}}},membername:{type:Sequelize[_0x1f79[9]]},calleridnum:{type:Sequelize[_0x1f79[9]]},calleridname:{type:Sequelize[_0x1f79[9]]},connectedlinenum:{type:Sequelize[_0x1f79[9]]},connectedlinename:{type:Sequelize[_0x1f79[9]]},accountcode:{type:Sequelize[_0x1f79[9]]},context:{type:Sequelize[_0x1f79[9]]},exten:{type:Sequelize[_0x1f79[9]]},value:{type:Sequelize[_0x1f79[9]]},type:{type:Sequelize[_0x1f79[9]]},rating:{type:Sequelize[_0x1f79[14]],validate:{max:5,min:0}},queue:{type:Sequelize[_0x1f79[9]]},createdAt:{type:Sequelize[_0x1f79[15]],get:function(){return moment(this[_0x1f79[7]](_0x1f79[18]))[_0x1f79[17]](_0x1f79[16]).toString()}},updatedAt:{type:Sequelize[_0x1f79[15]],get:function(){return moment(this[_0x1f79[7]](_0x1f79[19]))[_0x1f79[17]](_0x1f79[16]).toString()}}}
\ No newline at end of file
index 147dfb6..4f1262a 100644 (file)
@@ -1 +1 @@
-var _0x3121=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x2E\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x76\x61\x6C\x75\x65","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0x3121[0];var jsonpatch=require(_0x3121[1]);var rp=require(_0x3121[2]);var moment=require(_0x3121[3]);var BPromise=require(_0x3121[4]);var util=require(_0x3121[5]);var path=require(_0x3121[6]);var sox=require(_0x3121[7]);var ejs=require(_0x3121[8]);var fs=require(_0x3121[9]);var _=require(_0x3121[10]);var squel=require(_0x3121[11]);var crypto=require(_0x3121[12]);var jsforce=require(_0x3121[13]);var toCsv=require(_0x3121[14]);var qs=require(_0x3121[15]);var logger=require(_0x3121[17])(_0x3121[16]);var utils=require(_0x3121[18]);var config=require(_0x3121[19]);var db=require(_0x3121[21])[_0x3121[20]];function respondWithStatusCode(_0xdac4x15,_0xdac4x16,_0xdac4x17){_0xdac4x16= _0xdac4x16|| 204;return function(_0xdac4x18){if(_0xdac4x18){logger[_0x3121[24]](_0x3121[22],_0xdac4x17,_0xdac4x16,_0x3121[23]);logger[_0x3121[26]](_0x3121[25],_0xdac4x17,_0xdac4x16,_0x3121[23]);return _0xdac4x15[_0x3121[27]](_0xdac4x16)};return _0xdac4x15[_0x3121[29]](304)[_0x3121[28]]()}}function respondWithResult(_0xdac4x15,_0xdac4x16,_0xdac4x17){_0xdac4x16= _0xdac4x16|| 200;return function(_0xdac4x18){if(_0xdac4x18){logger[_0x3121[24]](_0x3121[22],_0xdac4x17,_0xdac4x16,_0x3121[30]);logger[_0x3121[26]](_0x3121[25],_0xdac4x17,_0xdac4x16,_0x3121[30],JSON[_0x3121[31]](_0xdac4x18));return _0xdac4x15[_0x3121[29]](_0xdac4x16)[_0x3121[32]](_0xdac4x18)};return _0xdac4x15[_0x3121[29]](304)[_0x3121[28]]()}}function respondWithFilteredResult(_0xdac4x15,_0xdac4x1b,_0xdac4x17){return function(_0xdac4x18){if(_0xdac4x18){var _0xdac4x1c=_0xdac4x18[_0x3121[33]],_0xdac4x1d=_0xdac4x1b[_0x3121[34]],_0xdac4x1e=_0xdac4x1b[_0x3121[34]]+ _0xdac4x1b[_0x3121[35]],_0xdac4x16;if(_0xdac4x1e>= _0xdac4x1c){_0xdac4x1e= _0xdac4x1c;_0xdac4x16= 200}else {_0xdac4x16= 206};_0xdac4x15[_0x3121[29]](_0xdac4x16);logger[_0x3121[24]](_0x3121[22],_0xdac4x17,_0xdac4x16,_0x3121[36]);logger[_0x3121[26]](_0x3121[25],_0xdac4x17,_0xdac4x16,_0x3121[30],JSON[_0x3121[31]](_0xdac4x18));return _0xdac4x15[_0x3121[40]](_0x3121[37],_0xdac4x1d+ _0x3121[38]+ _0xdac4x1e+ _0x3121[39]+ _0xdac4x1c)[_0x3121[32]](_0xdac4x18)};return null}}function patchUpdates(_0xdac4x20){return function(_0xdac4x18){try{jsonpatch[_0x3121[41]](_0xdac4x18,_0xdac4x20,true)}catch(err){return BPromise[_0x3121[42]](err)};return _0xdac4x18[_0x3121[43]]()}}function saveUpdates(_0xdac4x22,_0xdac4x16,_0xdac4x17){return function(_0xdac4x18){if(_0xdac4x18){return _0xdac4x18[_0x3121[46]](_0xdac4x22)[_0x3121[45]](function(_0xdac4x23){logger[_0x3121[24]](_0x3121[22],_0xdac4x17,_0xdac4x16,_0x3121[44]);logger[_0x3121[26]](_0x3121[25],_0xdac4x17,_0xdac4x16,_0x3121[44],JSON[_0x3121[31]](_0xdac4x18));return _0xdac4x23})};return null}}function removeEntity(_0xdac4x15,_0xdac4x16,_0xdac4x17){return function(_0xdac4x18){if(_0xdac4x18){return _0xdac4x18[_0x3121[48]]()[_0x3121[45]](function(){logger[_0x3121[24]](_0x3121[22],_0xdac4x17,_0xdac4x16,_0x3121[47]);logger[_0x3121[26]](_0x3121[25],_0xdac4x17,_0xdac4x16,_0x3121[47],JSON[_0x3121[31]](_0xdac4x18));_0xdac4x15[_0x3121[29]](204)[_0x3121[28]]()})}}}function handleEntityNotFound(_0xdac4x15,_0xdac4x16,_0xdac4x17){return function(_0xdac4x18){if(!_0xdac4x18){logger[_0x3121[50]](_0x3121[22],_0xdac4x17,404,_0x3121[49]);_0xdac4x15[_0x3121[29]](404)[_0x3121[28]]();return null};return _0xdac4x18}}function handleError(_0xdac4x15,_0xdac4x16,_0xdac4x17){_0xdac4x16= _0xdac4x16|| 500;return function(_0xdac4x27){logger[_0x3121[50]](_0x3121[22],_0xdac4x17,_0xdac4x16,JSON[_0x3121[31]](_0xdac4x27));delete _0xdac4x27[_0x3121[51]];_0xdac4x15[_0x3121[29]](_0xdac4x16)[_0x3121[52]](_0xdac4x27)}}exports[_0x3121[53]]= function(_0xdac4x28,_0xdac4x15){var _0xdac4x1b={},_0xdac4x29={};_0xdac4x29[_0x3121[54]]= _[_0x3121[57]](db[_0x3121[56]][_0x3121[55]]);_0xdac4x29[_0x3121[58]]= _[_0x3121[57]](_0xdac4x28[_0x3121[58]]);_0xdac4x29[_0x3121[59]]= _[_0x3121[60]](_0xdac4x29[_0x3121[54]],_0xdac4x29[_0x3121[58]]);_0xdac4x1b[_0x3121[61]]= _[_0x3121[60]](_0xdac4x29[_0x3121[54]],qs[_0x3121[62]](_0xdac4x28[_0x3121[58]][_0x3121[62]]));_0xdac4x1b[_0x3121[61]]= (_0xdac4x1b[_0x3121[61]][_0x3121[63]])?_0xdac4x1b[_0x3121[61]]:_0xdac4x29[_0x3121[54]];if(!_0xdac4x28[_0x3121[58]][_0x3121[65]](_0x3121[64])){_0xdac4x1b[_0x3121[35]]= qs[_0x3121[35]](_0xdac4x28[_0x3121[58]][_0x3121[35]]);_0xdac4x1b[_0x3121[34]]= qs[_0x3121[34]](_0xdac4x28[_0x3121[58]][_0x3121[34]])};_0xdac4x1b[_0x3121[66]]= qs[_0x3121[67]](_0xdac4x28[_0x3121[58]][_0x3121[67]]);_0xdac4x1b[_0x3121[68]]= qs[_0x3121[59]](_[_0x3121[69]](_0xdac4x28[_0x3121[58]],_0xdac4x29[_0x3121[59]]));if(_0xdac4x28[_0x3121[58]][_0x3121[70]]){_0xdac4x1b[_0x3121[68]]= _[_0x3121[73]](_0xdac4x1b[_0x3121[68]],{$or:_[_0x3121[72]](_0xdac4x1b[_0x3121[61]],function(_0xdac4x2a){var _0xdac4x2b={};_0xdac4x2b[_0xdac4x2a]= {$like:_0x3121[71]+ _0xdac4x28[_0x3121[58]][_0x3121[70]]+ _0x3121[71]};return _0xdac4x2b})})};_0xdac4x1b= _[_0x3121[73]]({},_0xdac4x1b,_0xdac4x28[_0x3121[74]]);return db[_0x3121[56]][_0x3121[76]](_0xdac4x1b)[_0x3121[45]](respondWithFilteredResult(_0xdac4x15,_0xdac4x1b,_0x3121[53]))[_0x3121[75]](handleError(_0xdac4x15,null,_0x3121[53]))};exports[_0x3121[77]]= function(_0xdac4x28,_0xdac4x15){var _0xdac4x1b={raw:false,where:{id:_0xdac4x28[_0x3121[79]][_0x3121[78]]}},_0xdac4x29={};_0xdac4x29[_0x3121[54]]= _[_0x3121[57]](db[_0x3121[56]][_0x3121[55]]);_0xdac4x29[_0x3121[58]]= _[_0x3121[57]](_0xdac4x28[_0x3121[58]]);_0xdac4x29[_0x3121[59]]= _[_0x3121[60]](_0xdac4x29[_0x3121[54]],_0xdac4x29[_0x3121[58]]);_0xdac4x1b[_0x3121[61]]= _[_0x3121[60]](_0xdac4x29[_0x3121[54]],qs[_0x3121[62]](_0xdac4x28[_0x3121[58]][_0x3121[62]]));_0xdac4x1b[_0x3121[61]]= (_0xdac4x1b[_0x3121[61]][_0x3121[63]])?_0xdac4x1b[_0x3121[61]]:_0xdac4x29[_0x3121[54]];_0xdac4x1b= _[_0x3121[73]]({},_0xdac4x1b,_0xdac4x28[_0x3121[74]]);return db[_0x3121[56]][_0x3121[80]](_0xdac4x1b)[_0x3121[45]](handleEntityNotFound(_0xdac4x15,null,_0x3121[77]))[_0x3121[45]](respondWithResult(_0xdac4x15,null,_0x3121[77]))[_0x3121[75]](handleError(_0xdac4x15,null,_0x3121[77]))};exports[_0x3121[81]]= function(_0xdac4x28,_0xdac4x15){return db[_0x3121[56]][_0x3121[81]](_0xdac4x28[_0x3121[82]],{})[_0x3121[45]](respondWithResult(_0xdac4x15,201,_0x3121[81]))[_0x3121[75]](handleError(_0xdac4x15,null,_0x3121[81]))};exports[_0x3121[46]]= function(_0xdac4x28,_0xdac4x15){if(_0xdac4x28[_0x3121[82]][_0x3121[78]]){delete _0xdac4x28[_0x3121[82]][_0x3121[78]]};return db[_0x3121[56]][_0x3121[80]]({where:{id:_0xdac4x28[_0x3121[79]][_0x3121[78]]}})[_0x3121[45]](handleEntityNotFound(_0xdac4x15,null,_0x3121[46]))[_0x3121[45]](saveUpdates(_0xdac4x28[_0x3121[82]],null,_0x3121[46]))[_0x3121[45]](respondWithResult(_0xdac4x15,null,_0x3121[46]))[_0x3121[75]](handleError(_0xdac4x15,null,_0x3121[46]))};exports[_0x3121[48]]= function(_0xdac4x28,_0xdac4x15){return db[_0x3121[56]][_0x3121[80]]({where:{id:_0xdac4x28[_0x3121[79]][_0x3121[78]]}})[_0x3121[45]](handleEntityNotFound(_0xdac4x15,null,_0x3121[48]))[_0x3121[45]](removeEntity(_0xdac4x15,null,_0x3121[48]))[_0x3121[75]](handleError(_0xdac4x15,null,_0x3121[48]))};exports[_0x3121[83]]= function(_0xdac4x28,_0xdac4x15){return db[_0x3121[56]][_0x3121[83]]()[_0x3121[45]](respondWithResult(_0xdac4x15,null,_0x3121[83]))[_0x3121[75]](handleError(_0xdac4x15,null,_0x3121[83]))};exports[_0x3121[84]]= function(_0xdac4x28,_0xdac4x15,_0xdac4x2c){return db[_0x3121[56]][_0x3121[80]]({where:{id:_0xdac4x28[_0x3121[79]][_0x3121[78]]},attributes:[_0x3121[78],_0x3121[87]],raw:true})[_0x3121[45]](handleEntityNotFound(_0xdac4x15,null,_0x3121[84]))[_0x3121[45]](function(_0xdac4x18){if(_0xdac4x18){logger[_0x3121[24]](_0x3121[86],_0x3121[84],_0x3121[30]);logger[_0x3121[26]](_0x3121[22],_0x3121[84],_0x3121[30],JSON[_0x3121[31]](_0xdac4x18));if(!fs[_0x3121[88]](_0xdac4x18[_0x3121[87]])){throw  new db[_0x3121[90]].ValidationError(_0x3121[89])};return _0xdac4x15[_0x3121[84]](_0xdac4x18[_0x3121[87]])}})[_0x3121[75]](handleError(_0xdac4x15,null,_0x3121[85]))}
\ No newline at end of file
+var _0x47db=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x64\x65\x73\x63\x72\x69\x62\x65","\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x2E\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x76\x61\x6C\x75\x65","\x65\x78\x69\x73\x74\x73\x53\x79\x6E\x63","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x65\x71\x75\x65\x6C\x69\x7A\x65"];_0x47db[0];var jsonpatch=require(_0x47db[1]);var rp=require(_0x47db[2]);var moment=require(_0x47db[3]);var BPromise=require(_0x47db[4]);var util=require(_0x47db[5]);var path=require(_0x47db[6]);var sox=require(_0x47db[7]);var ejs=require(_0x47db[8]);var fs=require(_0x47db[9]);var _=require(_0x47db[10]);var squel=require(_0x47db[11]);var crypto=require(_0x47db[12]);var jsforce=require(_0x47db[13]);var toCsv=require(_0x47db[14]);var qs=require(_0x47db[15]);var logger=require(_0x47db[17])(_0x47db[16]);var utils=require(_0x47db[18]);var config=require(_0x47db[19]);var db=require(_0x47db[21])[_0x47db[20]];function respondWithStatusCode(_0xb5b3x15,_0xb5b3x16,_0xb5b3x17){_0xb5b3x16= _0xb5b3x16|| 204;return function(_0xb5b3x18){if(_0xb5b3x18){logger[_0x47db[24]](_0x47db[22],_0xb5b3x17,_0xb5b3x16,_0x47db[23]);logger[_0x47db[26]](_0x47db[25],_0xb5b3x17,_0xb5b3x16,_0x47db[23]);return _0xb5b3x15[_0x47db[27]](_0xb5b3x16)};return _0xb5b3x15[_0x47db[29]](304)[_0x47db[28]]()}}function respondWithResult(_0xb5b3x15,_0xb5b3x16,_0xb5b3x17){_0xb5b3x16= _0xb5b3x16|| 200;return function(_0xb5b3x18){if(_0xb5b3x18){logger[_0x47db[24]](_0x47db[22],_0xb5b3x17,_0xb5b3x16,_0x47db[30]);logger[_0x47db[26]](_0x47db[25],_0xb5b3x17,_0xb5b3x16,_0x47db[30],JSON[_0x47db[31]](_0xb5b3x18));return _0xb5b3x15[_0x47db[29]](_0xb5b3x16)[_0x47db[32]](_0xb5b3x18)};return _0xb5b3x15[_0x47db[29]](304)[_0x47db[28]]()}}function respondWithFilteredResult(_0xb5b3x15,_0xb5b3x1b,_0xb5b3x17){return function(_0xb5b3x18){if(_0xb5b3x18){var _0xb5b3x1c=_0xb5b3x18[_0x47db[33]],_0xb5b3x1d=_0xb5b3x1b[_0x47db[34]],_0xb5b3x1e=_0xb5b3x1b[_0x47db[34]]+ _0xb5b3x1b[_0x47db[35]],_0xb5b3x16;if(_0xb5b3x1e>= _0xb5b3x1c){_0xb5b3x1e= _0xb5b3x1c;_0xb5b3x16= 200}else {_0xb5b3x16= 206};_0xb5b3x15[_0x47db[29]](_0xb5b3x16);logger[_0x47db[24]](_0x47db[22],_0xb5b3x17,_0xb5b3x16,_0x47db[36]);logger[_0x47db[26]](_0x47db[25],_0xb5b3x17,_0xb5b3x16,_0x47db[30],JSON[_0x47db[31]](_0xb5b3x18));return _0xb5b3x15[_0x47db[40]](_0x47db[37],_0xb5b3x1d+ _0x47db[38]+ _0xb5b3x1e+ _0x47db[39]+ _0xb5b3x1c)[_0x47db[32]](_0xb5b3x18)};return null}}function patchUpdates(_0xb5b3x20){return function(_0xb5b3x18){try{jsonpatch[_0x47db[41]](_0xb5b3x18,_0xb5b3x20,true)}catch(err){return BPromise[_0x47db[42]](err)};return _0xb5b3x18[_0x47db[43]]()}}function saveUpdates(_0xb5b3x22,_0xb5b3x16,_0xb5b3x17){return function(_0xb5b3x18){if(_0xb5b3x18){return _0xb5b3x18[_0x47db[46]](_0xb5b3x22)[_0x47db[45]](function(_0xb5b3x23){logger[_0x47db[24]](_0x47db[22],_0xb5b3x17,_0xb5b3x16,_0x47db[44]);logger[_0x47db[26]](_0x47db[25],_0xb5b3x17,_0xb5b3x16,_0x47db[44],JSON[_0x47db[31]](_0xb5b3x18));return _0xb5b3x23})};return null}}function removeEntity(_0xb5b3x15,_0xb5b3x16,_0xb5b3x17){return function(_0xb5b3x18){if(_0xb5b3x18){return _0xb5b3x18[_0x47db[48]]()[_0x47db[45]](function(){logger[_0x47db[24]](_0x47db[22],_0xb5b3x17,_0xb5b3x16,_0x47db[47]);logger[_0x47db[26]](_0x47db[25],_0xb5b3x17,_0xb5b3x16,_0x47db[47],JSON[_0x47db[31]](_0xb5b3x18));_0xb5b3x15[_0x47db[29]](204)[_0x47db[28]]()})}}}function handleEntityNotFound(_0xb5b3x15,_0xb5b3x16,_0xb5b3x17){return function(_0xb5b3x18){if(!_0xb5b3x18){logger[_0x47db[50]](_0x47db[22],_0xb5b3x17,404,_0x47db[49]);_0xb5b3x15[_0x47db[29]](404)[_0x47db[28]]();return null};return _0xb5b3x18}}function handleError(_0xb5b3x15,_0xb5b3x16,_0xb5b3x17){_0xb5b3x16= _0xb5b3x16|| 500;return function(_0xb5b3x27){logger[_0x47db[50]](_0x47db[22],_0xb5b3x17,_0xb5b3x16,JSON[_0x47db[31]](_0xb5b3x27));delete _0xb5b3x27[_0x47db[51]];_0xb5b3x15[_0x47db[29]](_0xb5b3x16)[_0x47db[52]](_0xb5b3x27)}}exports[_0x47db[53]]= function(_0xb5b3x28,_0xb5b3x15){var _0xb5b3x1b={},_0xb5b3x29={};_0xb5b3x29[_0x47db[54]]= _[_0x47db[57]](db[_0x47db[56]][_0x47db[55]]);_0xb5b3x29[_0x47db[58]]= _[_0x47db[57]](_0xb5b3x28[_0x47db[58]]);_0xb5b3x29[_0x47db[59]]= _[_0x47db[60]](_0xb5b3x29[_0x47db[54]],_0xb5b3x29[_0x47db[58]]);_0xb5b3x1b[_0x47db[61]]= _[_0x47db[60]](_0xb5b3x29[_0x47db[54]],qs[_0x47db[62]](_0xb5b3x28[_0x47db[58]][_0x47db[62]]));_0xb5b3x1b[_0x47db[61]]= (_0xb5b3x1b[_0x47db[61]][_0x47db[63]])?_0xb5b3x1b[_0x47db[61]]:_0xb5b3x29[_0x47db[54]];if(!_0xb5b3x28[_0x47db[58]][_0x47db[65]](_0x47db[64])){_0xb5b3x1b[_0x47db[35]]= qs[_0x47db[35]](_0xb5b3x28[_0x47db[58]][_0x47db[35]]);_0xb5b3x1b[_0x47db[34]]= qs[_0x47db[34]](_0xb5b3x28[_0x47db[58]][_0x47db[34]])};_0xb5b3x1b[_0x47db[66]]= qs[_0x47db[67]](_0xb5b3x28[_0x47db[58]][_0x47db[67]]);_0xb5b3x1b[_0x47db[68]]= qs[_0x47db[59]](_[_0x47db[69]](_0xb5b3x28[_0x47db[58]],_0xb5b3x29[_0x47db[59]]));if(_0xb5b3x28[_0x47db[58]][_0x47db[70]]){_0xb5b3x1b[_0x47db[68]]= _[_0x47db[73]](_0xb5b3x1b[_0x47db[68]],{$or:_[_0x47db[72]](_0xb5b3x1b[_0x47db[61]],function(_0xb5b3x2a){var _0xb5b3x2b={};_0xb5b3x2b[_0xb5b3x2a]= {$like:_0x47db[71]+ _0xb5b3x28[_0x47db[58]][_0x47db[70]]+ _0x47db[71]};return _0xb5b3x2b})})};_0xb5b3x1b= _[_0x47db[73]]({},_0xb5b3x1b,_0xb5b3x28[_0x47db[74]]);return db[_0x47db[56]][_0x47db[76]](_0xb5b3x1b)[_0x47db[45]](respondWithFilteredResult(_0xb5b3x15,_0xb5b3x1b,_0x47db[53]))[_0x47db[75]](handleError(_0xb5b3x15,null,_0x47db[53]))};exports[_0x47db[77]]= function(_0xb5b3x28,_0xb5b3x15){var _0xb5b3x1b={raw:false,where:{id:_0xb5b3x28[_0x47db[79]][_0x47db[78]]}},_0xb5b3x29={};_0xb5b3x29[_0x47db[54]]= _[_0x47db[57]](db[_0x47db[56]][_0x47db[55]]);_0xb5b3x29[_0x47db[58]]= _[_0x47db[57]](_0xb5b3x28[_0x47db[58]]);_0xb5b3x29[_0x47db[59]]= _[_0x47db[60]](_0xb5b3x29[_0x47db[54]],_0xb5b3x29[_0x47db[58]]);_0xb5b3x1b[_0x47db[61]]= _[_0x47db[60]](_0xb5b3x29[_0x47db[54]],qs[_0x47db[62]](_0xb5b3x28[_0x47db[58]][_0x47db[62]]));_0xb5b3x1b[_0x47db[61]]= (_0xb5b3x1b[_0x47db[61]][_0x47db[63]])?_0xb5b3x1b[_0x47db[61]]:_0xb5b3x29[_0x47db[54]];_0xb5b3x1b= _[_0x47db[73]]({},_0xb5b3x1b,_0xb5b3x28[_0x47db[74]]);return db[_0x47db[56]][_0x47db[80]](_0xb5b3x1b)[_0x47db[45]](handleEntityNotFound(_0xb5b3x15,null,_0x47db[77]))[_0x47db[45]](respondWithResult(_0xb5b3x15,null,_0x47db[77]))[_0x47db[75]](handleError(_0xb5b3x15,null,_0x47db[77]))};exports[_0x47db[81]]= function(_0xb5b3x28,_0xb5b3x15){return db[_0x47db[56]][_0x47db[81]](_0xb5b3x28[_0x47db[82]],{})[_0x47db[45]](respondWithResult(_0xb5b3x15,201,_0x47db[81]))[_0x47db[75]](handleError(_0xb5b3x15,null,_0x47db[81]))};exports[_0x47db[46]]= function(_0xb5b3x28,_0xb5b3x15){if(_0xb5b3x28[_0x47db[82]][_0x47db[78]]){delete _0xb5b3x28[_0x47db[82]][_0x47db[78]]};return db[_0x47db[56]][_0x47db[80]]({where:{id:_0xb5b3x28[_0x47db[79]][_0x47db[78]]}})[_0x47db[45]](handleEntityNotFound(_0xb5b3x15,null,_0x47db[46]))[_0x47db[45]](saveUpdates(_0xb5b3x28[_0x47db[82]],null,_0x47db[46]))[_0x47db[45]](respondWithResult(_0xb5b3x15,null,_0x47db[46]))[_0x47db[75]](handleError(_0xb5b3x15,null,_0x47db[46]))};exports[_0x47db[48]]= function(_0xb5b3x28,_0xb5b3x15){return db[_0x47db[56]][_0x47db[80]]({where:{id:_0xb5b3x28[_0x47db[79]][_0x47db[78]]}})[_0x47db[45]](handleEntityNotFound(_0xb5b3x15,null,_0x47db[48]))[_0x47db[45]](removeEntity(_0xb5b3x15,null,_0x47db[48]))[_0x47db[75]](handleError(_0xb5b3x15,null,_0x47db[48]))};exports[_0x47db[83]]= function(_0xb5b3x28,_0xb5b3x15){return db[_0x47db[56]][_0x47db[83]]()[_0x47db[45]](respondWithResult(_0xb5b3x15,null,_0x47db[83]))[_0x47db[75]](handleError(_0xb5b3x15,null,_0x47db[83]))};exports[_0x47db[84]]= function(_0xb5b3x28,_0xb5b3x15,_0xb5b3x2c){return db[_0x47db[56]][_0x47db[80]]({where:{id:_0xb5b3x28[_0x47db[79]][_0x47db[78]]},attributes:[_0x47db[78],_0x47db[87]],raw:true})[_0x47db[45]](handleEntityNotFound(_0xb5b3x15,null,_0x47db[84]))[_0x47db[45]](function(_0xb5b3x18){if(_0xb5b3x18){logger[_0x47db[24]](_0x47db[86],_0x47db[84],_0x47db[30]);logger[_0x47db[26]](_0x47db[22],_0x47db[84],_0x47db[30],JSON[_0x47db[31]](_0xb5b3x18));if(!fs[_0x47db[88]](_0xb5b3x18[_0x47db[87]])){throw  new db[_0x47db[90]].ValidationError(_0x47db[89])};return _0xb5b3x15[_0x47db[84]](_0xb5b3x18[_0x47db[87]])}})[_0x47db[75]](handleError(_0xb5b3x15,null,_0x47db[85]))}
\ No newline at end of file
index 3266165..69d72ea 100644 (file)
@@ -1 +1 @@
-var _0x1934=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x76\x6F\x69\x63\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x64\x65\x66\x69\x6E\x65"];_0x1934[0];var _=require(_0x1934[1]);var util=require(_0x1934[2]);var logger=require(_0x1934[4])(_0x1934[3]);var attributes=require(_0x1934[5]);module[_0x1934[6]]= function(_0x7032x5,_0x7032x6){return _0x7032x5[_0x1934[9]](_0x1934[7],attributes,{tableName:_0x1934[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0xc7d9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x76\x6F\x69\x63\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x64\x65\x66\x69\x6E\x65"];_0xc7d9[0];var _=require(_0xc7d9[1]);var util=require(_0xc7d9[2]);var logger=require(_0xc7d9[4])(_0xc7d9[3]);var attributes=require(_0xc7d9[5]);module[_0xc7d9[6]]= function(_0x442fx5,_0x442fx6){return _0x442fx5[_0xc7d9[9]](_0xc7d9[7],attributes,{tableName:_0xc7d9[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index 2a44105..3a885c1 100644 (file)
@@ -1 +1 @@
-var _0xab9f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65"];_0xab9f[0];var _=require(_0xab9f[1]);var util=require(_0xab9f[2]);var moment=require(_0xab9f[3]);var BPromise=require(_0xab9f[4]);var db=require(_0xab9f[6])[_0xab9f[5]];var utils=require(_0xab9f[7]);var logger=require(_0xab9f[9])(_0xab9f[8]);var jayson=require(_0xab9f[10]);var client=jayson[_0xab9f[12]][_0xab9f[11]]({port:9002});function respondWithRpcPromise(_0xbaaaxb,_0xbaaaxc,_0xbaaaxd){return  new BPromise(function(_0xbaaaxe,_0xbaaaxf){return client[_0xab9f[25]](_0xbaaaxb,_0xbaaaxd)[_0xab9f[24]](function(_0xbaaax11){logger[_0xab9f[17]](_0xab9f[13],_0xbaaaxc,_0xab9f[16]);logger[_0xab9f[20]](_0xab9f[18],_0xbaaaxc,_0xab9f[16],JSON[_0xab9f[19]](_0xbaaax11));if(_0xbaaax11[_0xab9f[14]]){if(_0xbaaax11[_0xab9f[14]][_0xab9f[21]]=== 500){logger[_0xab9f[14]](_0xab9f[13],_0xbaaaxc,_0xbaaax11[_0xab9f[14]][_0xab9f[22]]);return _0xbaaaxf(_0xbaaax11[_0xab9f[14]][_0xab9f[22]])};logger[_0xab9f[14]](_0xab9f[13],_0xbaaaxc,_0xbaaax11[_0xab9f[14]][_0xab9f[22]]);return _0xbaaaxe(_0xbaaax11[_0xab9f[14]][_0xab9f[22]])}else {logger[_0xab9f[17]](_0xab9f[13],_0xbaaaxc,_0xab9f[16]);_0xbaaaxe(_0xbaaax11[_0xab9f[23]][_0xab9f[22]])}})[_0xab9f[15]](function(_0xbaaax10){logger[_0xab9f[14]](_0xab9f[13],_0xbaaaxc,_0xbaaax10);_0xbaaaxf(_0xbaaax10)})})}exports[_0xab9f[26]]= function(_0xbaaaxd){var _0xbaaax12=this;return  new Promise(function(_0xbaaaxe,_0xbaaaxf){return db[_0xab9f[31]][_0xab9f[30]](_0xbaaaxd[_0xab9f[27]],{raw:_0xbaaaxd[_0xab9f[28]]?(_0xbaaaxd[_0xab9f[28]][_0xab9f[29]]=== undefined)?true:false:true})[_0xab9f[24]](function(_0xbaaax11){logger[_0xab9f[17]](_0xab9f[26],_0xbaaaxd);logger[_0xab9f[20]](_0xab9f[26],_0xbaaaxd,JSON[_0xab9f[19]](_0xbaaax11));_0xbaaaxe(_0xbaaax11)})[_0xab9f[15]](function(_0xbaaax10){logger[_0xab9f[14]](_0xab9f[26],_0xbaaax10[_0xab9f[22]],_0xbaaaxd);_0xbaaaxf(_0xbaaax12[_0xab9f[14]](500,_0xbaaax10[_0xab9f[22]]))})})};exports[_0xab9f[32]]= function(_0xbaaaxd){var _0xbaaax12=this;return  new Promise(function(_0xbaaaxe,_0xbaaaxf){return db[_0xab9f[31]][_0xab9f[36]](_0xbaaaxd[_0xab9f[27]],{raw:_0xbaaaxd[_0xab9f[28]]?(_0xbaaaxd[_0xab9f[28]][_0xab9f[29]]=== undefined)?true:false:true,individualHooks:true,where:_0xbaaaxd[_0xab9f[28]]?_0xbaaaxd[_0xab9f[28]][_0xab9f[33]]|| null:null,attributes:_0xbaaaxd[_0xab9f[28]]?_0xbaaaxd[_0xab9f[28]][_0xab9f[34]]|| null:null,limit:_0xbaaaxd[_0xab9f[28]]?_0xbaaaxd[_0xab9f[28]][_0xab9f[35]]|| null:null})[_0xab9f[24]](function(_0xbaaax11){logger[_0xab9f[17]](_0xab9f[32],_0xbaaaxd);logger[_0xab9f[20]](_0xab9f[32],_0xbaaaxd,JSON[_0xab9f[19]](_0xbaaax11));_0xbaaaxe(_0xbaaax11)})[_0xab9f[15]](function(_0xbaaax10){logger[_0xab9f[14]](_0xab9f[32],_0xbaaax10[_0xab9f[22]],_0xbaaaxd);_0xbaaaxf(_0xbaaax12[_0xab9f[14]](500,_0xbaaax10[_0xab9f[22]]))})})}
\ No newline at end of file
+var _0x78b6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x55\x70\x64\x61\x74\x65\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x77\x68\x65\x72\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x6C\x69\x6D\x69\x74","\x75\x70\x64\x61\x74\x65"];_0x78b6[0];var _=require(_0x78b6[1]);var util=require(_0x78b6[2]);var moment=require(_0x78b6[3]);var BPromise=require(_0x78b6[4]);var db=require(_0x78b6[6])[_0x78b6[5]];var utils=require(_0x78b6[7]);var logger=require(_0x78b6[9])(_0x78b6[8]);var jayson=require(_0x78b6[10]);var client=jayson[_0x78b6[12]][_0x78b6[11]]({port:9002});function respondWithRpcPromise(_0x971fxb,_0x971fxc,_0x971fxd){return  new BPromise(function(_0x971fxe,_0x971fxf){return client[_0x78b6[25]](_0x971fxb,_0x971fxd)[_0x78b6[24]](function(_0x971fx11){logger[_0x78b6[17]](_0x78b6[13],_0x971fxc,_0x78b6[16]);logger[_0x78b6[20]](_0x78b6[18],_0x971fxc,_0x78b6[16],JSON[_0x78b6[19]](_0x971fx11));if(_0x971fx11[_0x78b6[14]]){if(_0x971fx11[_0x78b6[14]][_0x78b6[21]]=== 500){logger[_0x78b6[14]](_0x78b6[13],_0x971fxc,_0x971fx11[_0x78b6[14]][_0x78b6[22]]);return _0x971fxf(_0x971fx11[_0x78b6[14]][_0x78b6[22]])};logger[_0x78b6[14]](_0x78b6[13],_0x971fxc,_0x971fx11[_0x78b6[14]][_0x78b6[22]]);return _0x971fxe(_0x971fx11[_0x78b6[14]][_0x78b6[22]])}else {logger[_0x78b6[17]](_0x78b6[13],_0x971fxc,_0x78b6[16]);_0x971fxe(_0x971fx11[_0x78b6[23]][_0x78b6[22]])}})[_0x78b6[15]](function(_0x971fx10){logger[_0x78b6[14]](_0x78b6[13],_0x971fxc,_0x971fx10);_0x971fxf(_0x971fx10)})})}exports[_0x78b6[26]]= function(_0x971fxd){var _0x971fx12=this;return  new Promise(function(_0x971fxe,_0x971fxf){return db[_0x78b6[31]][_0x78b6[30]](_0x971fxd[_0x78b6[27]],{raw:_0x971fxd[_0x78b6[28]]?(_0x971fxd[_0x78b6[28]][_0x78b6[29]]=== undefined)?true:false:true})[_0x78b6[24]](function(_0x971fx11){logger[_0x78b6[17]](_0x78b6[26],_0x971fxd);logger[_0x78b6[20]](_0x78b6[26],_0x971fxd,JSON[_0x78b6[19]](_0x971fx11));_0x971fxe(_0x971fx11)})[_0x78b6[15]](function(_0x971fx10){logger[_0x78b6[14]](_0x78b6[26],_0x971fx10[_0x78b6[22]],_0x971fxd);_0x971fxf(_0x971fx12[_0x78b6[14]](500,_0x971fx10[_0x78b6[22]]))})})};exports[_0x78b6[32]]= function(_0x971fxd){var _0x971fx12=this;return  new Promise(function(_0x971fxe,_0x971fxf){return db[_0x78b6[31]][_0x78b6[36]](_0x971fxd[_0x78b6[27]],{raw:_0x971fxd[_0x78b6[28]]?(_0x971fxd[_0x78b6[28]][_0x78b6[29]]=== undefined)?true:false:true,individualHooks:true,where:_0x971fxd[_0x78b6[28]]?_0x971fxd[_0x78b6[28]][_0x78b6[33]]|| null:null,attributes:_0x971fxd[_0x78b6[28]]?_0x971fxd[_0x78b6[28]][_0x78b6[34]]|| null:null,limit:_0x971fxd[_0x78b6[28]]?_0x971fxd[_0x78b6[28]][_0x78b6[35]]|| null:null})[_0x78b6[24]](function(_0x971fx11){logger[_0x78b6[17]](_0x78b6[32],_0x971fxd);logger[_0x78b6[20]](_0x78b6[32],_0x971fxd,JSON[_0x78b6[19]](_0x971fx11));_0x971fxe(_0x971fx11)})[_0x78b6[15]](function(_0x971fx10){logger[_0x78b6[14]](_0x78b6[32],_0x971fx10[_0x78b6[22]],_0x971fxd);_0x971fxf(_0x971fx12[_0x78b6[14]](500,_0x971fx10[_0x78b6[22]]))})})}
\ No newline at end of file
index 447c6c0..08f0b62 100644 (file)
@@ -1 +1 @@
-var _0x138b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x138b[0];var multer=require(_0x138b[1]);var util=require(_0x138b[2]);var path=require(_0x138b[3]);var express=require(_0x138b[4]);var router=express.Router();var auth=require(_0x138b[5]);var config=require(_0x138b[6]);var controller=require(_0x138b[7]);router[_0x138b[11]](_0x138b[8],auth[_0x138b[9]](),controller[_0x138b[10]]);router[_0x138b[11]](_0x138b[12],auth[_0x138b[9]](),controller[_0x138b[13]]);router[_0x138b[15]](_0x138b[8],auth[_0x138b[9]](),controller[_0x138b[14]]);router[_0x138b[17]](_0x138b[12],auth[_0x138b[9]](),controller[_0x138b[16]]);router[_0x138b[19]](_0x138b[12],auth[_0x138b[9]](),controller[_0x138b[18]]);module[_0x138b[20]]= router
\ No newline at end of file
+var _0x3297=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x75\x6C\x74\x65\x72","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x61\x75\x74\x68\x2F\x73\x65\x72\x76\x69\x63\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x69\x64","\x73\x68\x6F\x77","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x75\x70\x64\x61\x74\x65","\x70\x75\x74","\x64\x65\x73\x74\x72\x6F\x79","\x64\x65\x6C\x65\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x3297[0];var multer=require(_0x3297[1]);var util=require(_0x3297[2]);var path=require(_0x3297[3]);var express=require(_0x3297[4]);var router=express.Router();var auth=require(_0x3297[5]);var config=require(_0x3297[6]);var controller=require(_0x3297[7]);router[_0x3297[11]](_0x3297[8],auth[_0x3297[9]](),controller[_0x3297[10]]);router[_0x3297[11]](_0x3297[12],auth[_0x3297[9]](),controller[_0x3297[13]]);router[_0x3297[15]](_0x3297[8],auth[_0x3297[9]](),controller[_0x3297[14]]);router[_0x3297[17]](_0x3297[12],auth[_0x3297[9]](),controller[_0x3297[16]]);router[_0x3297[19]](_0x3297[12],auth[_0x3297[9]](),controller[_0x3297[18]]);module[_0x3297[20]]= router
\ No newline at end of file
index a451641..12f3b18 100644 (file)
@@ -1 +1 @@
-var _0xa9a4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x62\x6C\x69\x6E\x64","\x61\x74\x74\x65\x6E\x64\x65\x64","\x53\x54\x52\x49\x4E\x47","\x59\x65\x73","\x4E\x6F"];_0xa9a4[0];var Sequelize=require(_0xa9a4[1]);var moment=require(_0xa9a4[2]);module[_0xa9a4[3]]= {type:{type:Sequelize.ENUM(_0xa9a4[4],_0xa9a4[5])},result:{type:Sequelize[_0xa9a4[6]]},transfererchannel:{type:Sequelize[_0xa9a4[6]]},transferercalleridnum:{type:Sequelize[_0xa9a4[6]]},transferercalleridname:{type:Sequelize[_0xa9a4[6]]},transfererconnectedlinenum:{type:Sequelize[_0xa9a4[6]]},transfererconnectedlinename:{type:Sequelize[_0xa9a4[6]]},transfereraccountcode:{type:Sequelize[_0xa9a4[6]]},transferercontext:{type:Sequelize[_0xa9a4[6]]},transfererexten:{type:Sequelize[_0xa9a4[6]]},transfererlinkedid:{type:Sequelize[_0xa9a4[6]]},transfereechannel:{type:Sequelize[_0xa9a4[6]]},transfereecalleridnum:{type:Sequelize[_0xa9a4[6]]},transfereecalleridname:{type:Sequelize[_0xa9a4[6]]},transfereeconnectedlinenum:{type:Sequelize[_0xa9a4[6]]},transfereeconnectedlinename:{type:Sequelize[_0xa9a4[6]]},transfereeaccountcode:{type:Sequelize[_0xa9a4[6]]},transfereecontext:{type:Sequelize[_0xa9a4[6]]},transfereeexten:{type:Sequelize[_0xa9a4[6]]},transfereelinkedid:{type:Sequelize[_0xa9a4[6]]},isexternal:{type:Sequelize.ENUM(_0xa9a4[7],_0xa9a4[8])},context:{type:Sequelize[_0xa9a4[6]]},extension:{type:Sequelize[_0xa9a4[6]]}}
\ No newline at end of file
+var _0xc8c7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x6D\x6F\x6D\x65\x6E\x74","\x65\x78\x70\x6F\x72\x74\x73","\x62\x6C\x69\x6E\x64","\x61\x74\x74\x65\x6E\x64\x65\x64","\x53\x54\x52\x49\x4E\x47","\x59\x65\x73","\x4E\x6F"];_0xc8c7[0];var Sequelize=require(_0xc8c7[1]);var moment=require(_0xc8c7[2]);module[_0xc8c7[3]]= {type:{type:Sequelize.ENUM(_0xc8c7[4],_0xc8c7[5])},result:{type:Sequelize[_0xc8c7[6]]},transfererchannel:{type:Sequelize[_0xc8c7[6]]},transferercalleridnum:{type:Sequelize[_0xc8c7[6]]},transferercalleridname:{type:Sequelize[_0xc8c7[6]]},transfererconnectedlinenum:{type:Sequelize[_0xc8c7[6]]},transfererconnectedlinename:{type:Sequelize[_0xc8c7[6]]},transfereraccountcode:{type:Sequelize[_0xc8c7[6]]},transferercontext:{type:Sequelize[_0xc8c7[6]]},transfererexten:{type:Sequelize[_0xc8c7[6]]},transfererlinkedid:{type:Sequelize[_0xc8c7[6]]},transfereechannel:{type:Sequelize[_0xc8c7[6]]},transfereecalleridnum:{type:Sequelize[_0xc8c7[6]]},transfereecalleridname:{type:Sequelize[_0xc8c7[6]]},transfereeconnectedlinenum:{type:Sequelize[_0xc8c7[6]]},transfereeconnectedlinename:{type:Sequelize[_0xc8c7[6]]},transfereeaccountcode:{type:Sequelize[_0xc8c7[6]]},transfereecontext:{type:Sequelize[_0xc8c7[6]]},transfereeexten:{type:Sequelize[_0xc8c7[6]]},transfereelinkedid:{type:Sequelize[_0xc8c7[6]]},isexternal:{type:Sequelize.ENUM(_0xc8c7[7],_0xc8c7[8])},context:{type:Sequelize[_0xc8c7[6]]},extension:{type:Sequelize[_0xc8c7[6]]}}
\ No newline at end of file
index d215e21..99d4536 100644 (file)
@@ -1 +1 @@
-var _0x8d1f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x8d1f[0];var jsonpatch=require(_0x8d1f[1]);var rp=require(_0x8d1f[2]);var moment=require(_0x8d1f[3]);var BPromise=require(_0x8d1f[4]);var util=require(_0x8d1f[5]);var path=require(_0x8d1f[6]);var sox=require(_0x8d1f[7]);var ejs=require(_0x8d1f[8]);var fs=require(_0x8d1f[9]);var _=require(_0x8d1f[10]);var squel=require(_0x8d1f[11]);var crypto=require(_0x8d1f[12]);var jsforce=require(_0x8d1f[13]);var toCsv=require(_0x8d1f[14]);var qs=require(_0x8d1f[15]);var logger=require(_0x8d1f[17])(_0x8d1f[16]);var utils=require(_0x8d1f[18]);var config=require(_0x8d1f[19]);var db=require(_0x8d1f[21])[_0x8d1f[20]];function respondWithStatusCode(_0x2866x15,_0x2866x16,_0x2866x17){_0x2866x16= _0x2866x16|| 204;return function(_0x2866x18){if(_0x2866x18){logger[_0x8d1f[24]](_0x8d1f[22],_0x2866x17,_0x2866x16,_0x8d1f[23]);logger[_0x8d1f[26]](_0x8d1f[25],_0x2866x17,_0x2866x16,_0x8d1f[23]);return _0x2866x15[_0x8d1f[27]](_0x2866x16)};return _0x2866x15[_0x8d1f[29]](304)[_0x8d1f[28]]()}}function respondWithResult(_0x2866x15,_0x2866x16,_0x2866x17){_0x2866x16= _0x2866x16|| 200;return function(_0x2866x18){if(_0x2866x18){logger[_0x8d1f[24]](_0x8d1f[22],_0x2866x17,_0x2866x16,_0x8d1f[30]);logger[_0x8d1f[26]](_0x8d1f[25],_0x2866x17,_0x2866x16,_0x8d1f[30],JSON[_0x8d1f[31]](_0x2866x18));return _0x2866x15[_0x8d1f[29]](_0x2866x16)[_0x8d1f[32]](_0x2866x18)};return _0x2866x15[_0x8d1f[29]](304)[_0x8d1f[28]]()}}function respondWithFilteredResult(_0x2866x15,_0x2866x1b,_0x2866x17){return function(_0x2866x18){if(_0x2866x18){var _0x2866x1c=_0x2866x18[_0x8d1f[33]],_0x2866x1d=_0x2866x1b[_0x8d1f[34]],_0x2866x1e=_0x2866x1b[_0x8d1f[34]]+ _0x2866x1b[_0x8d1f[35]],_0x2866x16;if(_0x2866x1e>= _0x2866x1c){_0x2866x1e= _0x2866x1c;_0x2866x16= 200}else {_0x2866x16= 206};_0x2866x15[_0x8d1f[29]](_0x2866x16);logger[_0x8d1f[24]](_0x8d1f[22],_0x2866x17,_0x2866x16,_0x8d1f[36]);logger[_0x8d1f[26]](_0x8d1f[25],_0x2866x17,_0x2866x16,_0x8d1f[30],JSON[_0x8d1f[31]](_0x2866x18));return _0x2866x15[_0x8d1f[40]](_0x8d1f[37],_0x2866x1d+ _0x8d1f[38]+ _0x2866x1e+ _0x8d1f[39]+ _0x2866x1c)[_0x8d1f[32]](_0x2866x18)};return null}}function patchUpdates(_0x2866x20){return function(_0x2866x18){try{jsonpatch[_0x8d1f[41]](_0x2866x18,_0x2866x20,true)}catch(err){return BPromise[_0x8d1f[42]](err)};return _0x2866x18[_0x8d1f[43]]()}}function saveUpdates(_0x2866x22,_0x2866x16,_0x2866x17){return function(_0x2866x18){if(_0x2866x18){return _0x2866x18[_0x8d1f[46]](_0x2866x22)[_0x8d1f[45]](function(_0x2866x23){logger[_0x8d1f[24]](_0x8d1f[22],_0x2866x17,_0x2866x16,_0x8d1f[44]);logger[_0x8d1f[26]](_0x8d1f[25],_0x2866x17,_0x2866x16,_0x8d1f[44],JSON[_0x8d1f[31]](_0x2866x18));return _0x2866x23})};return null}}function removeEntity(_0x2866x15,_0x2866x16,_0x2866x17){return function(_0x2866x18){if(_0x2866x18){return _0x2866x18[_0x8d1f[48]]()[_0x8d1f[45]](function(){logger[_0x8d1f[24]](_0x8d1f[22],_0x2866x17,_0x2866x16,_0x8d1f[47]);logger[_0x8d1f[26]](_0x8d1f[25],_0x2866x17,_0x2866x16,_0x8d1f[47],JSON[_0x8d1f[31]](_0x2866x18));_0x2866x15[_0x8d1f[29]](204)[_0x8d1f[28]]()})}}}function handleEntityNotFound(_0x2866x15,_0x2866x16,_0x2866x17){return function(_0x2866x18){if(!_0x2866x18){logger[_0x8d1f[50]](_0x8d1f[22],_0x2866x17,404,_0x8d1f[49]);_0x2866x15[_0x8d1f[29]](404)[_0x8d1f[28]]();return null};return _0x2866x18}}function handleError(_0x2866x15,_0x2866x16,_0x2866x17){_0x2866x16= _0x2866x16|| 500;return function(_0x2866x27){logger[_0x8d1f[50]](_0x8d1f[22],_0x2866x17,_0x2866x16,JSON[_0x8d1f[31]](_0x2866x27));delete _0x2866x27[_0x8d1f[51]];_0x2866x15[_0x8d1f[29]](_0x2866x16)[_0x8d1f[52]](_0x2866x27)}}exports[_0x8d1f[53]]= function(_0x2866x28,_0x2866x15){var _0x2866x1b={},_0x2866x29={};_0x2866x29[_0x8d1f[54]]= _[_0x8d1f[57]](db[_0x8d1f[56]][_0x8d1f[55]]);_0x2866x29[_0x8d1f[58]]= _[_0x8d1f[57]](_0x2866x28[_0x8d1f[58]]);_0x2866x29[_0x8d1f[59]]= _[_0x8d1f[60]](_0x2866x29[_0x8d1f[54]],_0x2866x29[_0x8d1f[58]]);_0x2866x1b[_0x8d1f[61]]= _[_0x8d1f[60]](_0x2866x29[_0x8d1f[54]],qs[_0x8d1f[62]](_0x2866x28[_0x8d1f[58]][_0x8d1f[62]]));_0x2866x1b[_0x8d1f[61]]= (_0x2866x1b[_0x8d1f[61]][_0x8d1f[63]])?_0x2866x1b[_0x8d1f[61]]:_0x2866x29[_0x8d1f[54]];if(!_0x2866x28[_0x8d1f[58]][_0x8d1f[65]](_0x8d1f[64])){_0x2866x1b[_0x8d1f[35]]= qs[_0x8d1f[35]](_0x2866x28[_0x8d1f[58]][_0x8d1f[35]]);_0x2866x1b[_0x8d1f[34]]= qs[_0x8d1f[34]](_0x2866x28[_0x8d1f[58]][_0x8d1f[34]])};_0x2866x1b[_0x8d1f[66]]= qs[_0x8d1f[67]](_0x2866x28[_0x8d1f[58]][_0x8d1f[67]]);_0x2866x1b[_0x8d1f[68]]= qs[_0x8d1f[59]](_[_0x8d1f[69]](_0x2866x28[_0x8d1f[58]],_0x2866x29[_0x8d1f[59]]));if(_0x2866x28[_0x8d1f[58]][_0x8d1f[70]]){_0x2866x1b[_0x8d1f[68]]= _[_0x8d1f[73]](_0x2866x1b[_0x8d1f[68]],{$or:_[_0x8d1f[72]](_0x2866x1b[_0x8d1f[61]],function(_0x2866x2a){var _0x2866x2b={};_0x2866x2b[_0x2866x2a]= {$like:_0x8d1f[71]+ _0x2866x28[_0x8d1f[58]][_0x8d1f[70]]+ _0x8d1f[71]};return _0x2866x2b})})};_0x2866x1b= _[_0x8d1f[73]]({},_0x2866x1b,_0x2866x28[_0x8d1f[74]]);return db[_0x8d1f[56]][_0x8d1f[76]](_0x2866x1b)[_0x8d1f[45]](respondWithFilteredResult(_0x2866x15,_0x2866x1b,_0x8d1f[53]))[_0x8d1f[75]](handleError(_0x2866x15,null,_0x8d1f[53]))};exports[_0x8d1f[77]]= function(_0x2866x28,_0x2866x15){var _0x2866x1b={raw:true,where:{id:_0x2866x28[_0x8d1f[79]][_0x8d1f[78]]}},_0x2866x29={};_0x2866x29[_0x8d1f[54]]= _[_0x8d1f[57]](db[_0x8d1f[56]][_0x8d1f[55]]);_0x2866x29[_0x8d1f[58]]= _[_0x8d1f[57]](_0x2866x28[_0x8d1f[58]]);_0x2866x29[_0x8d1f[59]]= _[_0x8d1f[60]](_0x2866x29[_0x8d1f[54]],_0x2866x29[_0x8d1f[58]]);_0x2866x1b[_0x8d1f[61]]= _[_0x8d1f[60]](_0x2866x29[_0x8d1f[54]],qs[_0x8d1f[62]](_0x2866x28[_0x8d1f[58]][_0x8d1f[62]]));_0x2866x1b[_0x8d1f[61]]= (_0x2866x1b[_0x8d1f[61]][_0x8d1f[63]])?_0x2866x1b[_0x8d1f[61]]:_0x2866x29[_0x8d1f[54]];_0x2866x1b= _[_0x8d1f[73]]({},_0x2866x1b,_0x2866x28[_0x8d1f[74]]);return db[_0x8d1f[56]][_0x8d1f[80]](_0x2866x1b)[_0x8d1f[45]](handleEntityNotFound(_0x2866x15,null,_0x8d1f[77]))[_0x8d1f[45]](respondWithResult(_0x2866x15,null,_0x8d1f[77]))[_0x8d1f[75]](handleError(_0x2866x15,null,_0x8d1f[77]))};exports[_0x8d1f[81]]= function(_0x2866x28,_0x2866x15){return db[_0x8d1f[56]][_0x8d1f[81]](_0x2866x28[_0x8d1f[82]],{})[_0x8d1f[45]](respondWithResult(_0x2866x15,201,_0x8d1f[81]))[_0x8d1f[75]](handleError(_0x2866x15,null,_0x8d1f[81]))};exports[_0x8d1f[46]]= function(_0x2866x28,_0x2866x15){if(_0x2866x28[_0x8d1f[82]][_0x8d1f[78]]){delete _0x2866x28[_0x8d1f[82]][_0x8d1f[78]]};return db[_0x8d1f[56]][_0x8d1f[80]]({where:{id:_0x2866x28[_0x8d1f[79]][_0x8d1f[78]]}})[_0x8d1f[45]](handleEntityNotFound(_0x2866x15,null,_0x8d1f[46]))[_0x8d1f[45]](saveUpdates(_0x2866x28[_0x8d1f[82]],null,_0x8d1f[46]))[_0x8d1f[45]](respondWithResult(_0x2866x15,null,_0x8d1f[46]))[_0x8d1f[75]](handleError(_0x2866x15,null,_0x8d1f[46]))};exports[_0x8d1f[48]]= function(_0x2866x28,_0x2866x15){return db[_0x8d1f[56]][_0x8d1f[80]]({where:{id:_0x2866x28[_0x8d1f[79]][_0x8d1f[78]]}})[_0x8d1f[45]](handleEntityNotFound(_0x2866x15,null,_0x8d1f[48]))[_0x8d1f[45]](removeEntity(_0x2866x15,null,_0x8d1f[48]))[_0x8d1f[75]](handleError(_0x2866x15,null,_0x8d1f[48]))}
\ No newline at end of file
+var _0x8785=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x61\x73\x74\x2D\x6A\x73\x6F\x6E\x2D\x70\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x73\x6F\x78","\x65\x6A\x73","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x73\x71\x75\x65\x6C","\x63\x72\x79\x70\x74\x6F","\x6A\x73\x66\x6F\x72\x63\x65","\x74\x6F\x2D\x63\x73\x76","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x2F\x70\x61\x72\x73\x65\x72\x73\x2F\x71\x73","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x6E\x6F\x20\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x64\x65\x62\x75\x67","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x65\x6E\x74\x69\x74\x79\x20\x66\x6F\x75\x6E\x64","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6A\x73\x6F\x6E","\x63\x6F\x75\x6E\x74","\x6F\x66\x66\x73\x65\x74","\x6C\x69\x6D\x69\x74","\x65\x6E\x74\x69\x74\x69\x65\x73\x20\x66\x6F\x75\x6E\x64","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x52\x61\x6E\x67\x65","\x2D","\x2F","\x73\x65\x74","\x61\x70\x70\x6C\x79","\x72\x65\x6A\x65\x63\x74","\x73\x61\x76\x65","\x65\x6E\x74\x69\x74\x79\x20\x75\x70\x64\x61\x74\x65\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65","\x65\x6E\x74\x69\x74\x79\x20\x72\x65\x6D\x6F\x76\x65\x64","\x64\x65\x73\x74\x72\x6F\x79","\x65\x6E\x74\x69\x74\x79\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x65\x72\x72\x6F\x72","\x6E\x61\x6D\x65","\x73\x65\x6E\x64","\x69\x6E\x64\x65\x78","\x6D\x6F\x64\x65\x6C","\x72\x61\x77\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x6B\x65\x79\x73","\x71\x75\x65\x72\x79","\x66\x69\x6C\x74\x65\x72\x73","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x6C\x69\x6D\x69\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6F\x72\x64\x65\x72","\x73\x6F\x72\x74","\x77\x68\x65\x72\x65","\x70\x69\x63\x6B","\x66\x69\x6C\x74\x65\x72","\x25","\x6D\x61\x70","\x6D\x65\x72\x67\x65","\x6F\x70\x74\x69\x6F\x6E\x73","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79"];_0x8785[0];var jsonpatch=require(_0x8785[1]);var rp=require(_0x8785[2]);var moment=require(_0x8785[3]);var BPromise=require(_0x8785[4]);var util=require(_0x8785[5]);var path=require(_0x8785[6]);var sox=require(_0x8785[7]);var ejs=require(_0x8785[8]);var fs=require(_0x8785[9]);var _=require(_0x8785[10]);var squel=require(_0x8785[11]);var crypto=require(_0x8785[12]);var jsforce=require(_0x8785[13]);var toCsv=require(_0x8785[14]);var qs=require(_0x8785[15]);var logger=require(_0x8785[17])(_0x8785[16]);var utils=require(_0x8785[18]);var config=require(_0x8785[19]);var db=require(_0x8785[21])[_0x8785[20]];function respondWithStatusCode(_0xe7cdx15,_0xe7cdx16,_0xe7cdx17){_0xe7cdx16= _0xe7cdx16|| 204;return function(_0xe7cdx18){if(_0xe7cdx18){logger[_0x8785[24]](_0x8785[22],_0xe7cdx17,_0xe7cdx16,_0x8785[23]);logger[_0x8785[26]](_0x8785[25],_0xe7cdx17,_0xe7cdx16,_0x8785[23]);return _0xe7cdx15[_0x8785[27]](_0xe7cdx16)};return _0xe7cdx15[_0x8785[29]](304)[_0x8785[28]]()}}function respondWithResult(_0xe7cdx15,_0xe7cdx16,_0xe7cdx17){_0xe7cdx16= _0xe7cdx16|| 200;return function(_0xe7cdx18){if(_0xe7cdx18){logger[_0x8785[24]](_0x8785[22],_0xe7cdx17,_0xe7cdx16,_0x8785[30]);logger[_0x8785[26]](_0x8785[25],_0xe7cdx17,_0xe7cdx16,_0x8785[30],JSON[_0x8785[31]](_0xe7cdx18));return _0xe7cdx15[_0x8785[29]](_0xe7cdx16)[_0x8785[32]](_0xe7cdx18)};return _0xe7cdx15[_0x8785[29]](304)[_0x8785[28]]()}}function respondWithFilteredResult(_0xe7cdx15,_0xe7cdx1b,_0xe7cdx17){return function(_0xe7cdx18){if(_0xe7cdx18){var _0xe7cdx1c=_0xe7cdx18[_0x8785[33]],_0xe7cdx1d=_0xe7cdx1b[_0x8785[34]],_0xe7cdx1e=_0xe7cdx1b[_0x8785[34]]+ _0xe7cdx1b[_0x8785[35]],_0xe7cdx16;if(_0xe7cdx1e>= _0xe7cdx1c){_0xe7cdx1e= _0xe7cdx1c;_0xe7cdx16= 200}else {_0xe7cdx16= 206};_0xe7cdx15[_0x8785[29]](_0xe7cdx16);logger[_0x8785[24]](_0x8785[22],_0xe7cdx17,_0xe7cdx16,_0x8785[36]);logger[_0x8785[26]](_0x8785[25],_0xe7cdx17,_0xe7cdx16,_0x8785[30],JSON[_0x8785[31]](_0xe7cdx18));return _0xe7cdx15[_0x8785[40]](_0x8785[37],_0xe7cdx1d+ _0x8785[38]+ _0xe7cdx1e+ _0x8785[39]+ _0xe7cdx1c)[_0x8785[32]](_0xe7cdx18)};return null}}function patchUpdates(_0xe7cdx20){return function(_0xe7cdx18){try{jsonpatch[_0x8785[41]](_0xe7cdx18,_0xe7cdx20,true)}catch(err){return BPromise[_0x8785[42]](err)};return _0xe7cdx18[_0x8785[43]]()}}function saveUpdates(_0xe7cdx22,_0xe7cdx16,_0xe7cdx17){return function(_0xe7cdx18){if(_0xe7cdx18){return _0xe7cdx18[_0x8785[46]](_0xe7cdx22)[_0x8785[45]](function(_0xe7cdx23){logger[_0x8785[24]](_0x8785[22],_0xe7cdx17,_0xe7cdx16,_0x8785[44]);logger[_0x8785[26]](_0x8785[25],_0xe7cdx17,_0xe7cdx16,_0x8785[44],JSON[_0x8785[31]](_0xe7cdx18));return _0xe7cdx23})};return null}}function removeEntity(_0xe7cdx15,_0xe7cdx16,_0xe7cdx17){return function(_0xe7cdx18){if(_0xe7cdx18){return _0xe7cdx18[_0x8785[48]]()[_0x8785[45]](function(){logger[_0x8785[24]](_0x8785[22],_0xe7cdx17,_0xe7cdx16,_0x8785[47]);logger[_0x8785[26]](_0x8785[25],_0xe7cdx17,_0xe7cdx16,_0x8785[47],JSON[_0x8785[31]](_0xe7cdx18));_0xe7cdx15[_0x8785[29]](204)[_0x8785[28]]()})}}}function handleEntityNotFound(_0xe7cdx15,_0xe7cdx16,_0xe7cdx17){return function(_0xe7cdx18){if(!_0xe7cdx18){logger[_0x8785[50]](_0x8785[22],_0xe7cdx17,404,_0x8785[49]);_0xe7cdx15[_0x8785[29]](404)[_0x8785[28]]();return null};return _0xe7cdx18}}function handleError(_0xe7cdx15,_0xe7cdx16,_0xe7cdx17){_0xe7cdx16= _0xe7cdx16|| 500;return function(_0xe7cdx27){logger[_0x8785[50]](_0x8785[22],_0xe7cdx17,_0xe7cdx16,JSON[_0x8785[31]](_0xe7cdx27));delete _0xe7cdx27[_0x8785[51]];_0xe7cdx15[_0x8785[29]](_0xe7cdx16)[_0x8785[52]](_0xe7cdx27)}}exports[_0x8785[53]]= function(_0xe7cdx28,_0xe7cdx15){var _0xe7cdx1b={},_0xe7cdx29={};_0xe7cdx29[_0x8785[54]]= _[_0x8785[57]](db[_0x8785[56]][_0x8785[55]]);_0xe7cdx29[_0x8785[58]]= _[_0x8785[57]](_0xe7cdx28[_0x8785[58]]);_0xe7cdx29[_0x8785[59]]= _[_0x8785[60]](_0xe7cdx29[_0x8785[54]],_0xe7cdx29[_0x8785[58]]);_0xe7cdx1b[_0x8785[61]]= _[_0x8785[60]](_0xe7cdx29[_0x8785[54]],qs[_0x8785[62]](_0xe7cdx28[_0x8785[58]][_0x8785[62]]));_0xe7cdx1b[_0x8785[61]]= (_0xe7cdx1b[_0x8785[61]][_0x8785[63]])?_0xe7cdx1b[_0x8785[61]]:_0xe7cdx29[_0x8785[54]];if(!_0xe7cdx28[_0x8785[58]][_0x8785[65]](_0x8785[64])){_0xe7cdx1b[_0x8785[35]]= qs[_0x8785[35]](_0xe7cdx28[_0x8785[58]][_0x8785[35]]);_0xe7cdx1b[_0x8785[34]]= qs[_0x8785[34]](_0xe7cdx28[_0x8785[58]][_0x8785[34]])};_0xe7cdx1b[_0x8785[66]]= qs[_0x8785[67]](_0xe7cdx28[_0x8785[58]][_0x8785[67]]);_0xe7cdx1b[_0x8785[68]]= qs[_0x8785[59]](_[_0x8785[69]](_0xe7cdx28[_0x8785[58]],_0xe7cdx29[_0x8785[59]]));if(_0xe7cdx28[_0x8785[58]][_0x8785[70]]){_0xe7cdx1b[_0x8785[68]]= _[_0x8785[73]](_0xe7cdx1b[_0x8785[68]],{$or:_[_0x8785[72]](_0xe7cdx1b[_0x8785[61]],function(_0xe7cdx2a){var _0xe7cdx2b={};_0xe7cdx2b[_0xe7cdx2a]= {$like:_0x8785[71]+ _0xe7cdx28[_0x8785[58]][_0x8785[70]]+ _0x8785[71]};return _0xe7cdx2b})})};_0xe7cdx1b= _[_0x8785[73]]({},_0xe7cdx1b,_0xe7cdx28[_0x8785[74]]);return db[_0x8785[56]][_0x8785[76]](_0xe7cdx1b)[_0x8785[45]](respondWithFilteredResult(_0xe7cdx15,_0xe7cdx1b,_0x8785[53]))[_0x8785[75]](handleError(_0xe7cdx15,null,_0x8785[53]))};exports[_0x8785[77]]= function(_0xe7cdx28,_0xe7cdx15){var _0xe7cdx1b={raw:true,where:{id:_0xe7cdx28[_0x8785[79]][_0x8785[78]]}},_0xe7cdx29={};_0xe7cdx29[_0x8785[54]]= _[_0x8785[57]](db[_0x8785[56]][_0x8785[55]]);_0xe7cdx29[_0x8785[58]]= _[_0x8785[57]](_0xe7cdx28[_0x8785[58]]);_0xe7cdx29[_0x8785[59]]= _[_0x8785[60]](_0xe7cdx29[_0x8785[54]],_0xe7cdx29[_0x8785[58]]);_0xe7cdx1b[_0x8785[61]]= _[_0x8785[60]](_0xe7cdx29[_0x8785[54]],qs[_0x8785[62]](_0xe7cdx28[_0x8785[58]][_0x8785[62]]));_0xe7cdx1b[_0x8785[61]]= (_0xe7cdx1b[_0x8785[61]][_0x8785[63]])?_0xe7cdx1b[_0x8785[61]]:_0xe7cdx29[_0x8785[54]];_0xe7cdx1b= _[_0x8785[73]]({},_0xe7cdx1b,_0xe7cdx28[_0x8785[74]]);return db[_0x8785[56]][_0x8785[80]](_0xe7cdx1b)[_0x8785[45]](handleEntityNotFound(_0xe7cdx15,null,_0x8785[77]))[_0x8785[45]](respondWithResult(_0xe7cdx15,null,_0x8785[77]))[_0x8785[75]](handleError(_0xe7cdx15,null,_0x8785[77]))};exports[_0x8785[81]]= function(_0xe7cdx28,_0xe7cdx15){return db[_0x8785[56]][_0x8785[81]](_0xe7cdx28[_0x8785[82]],{})[_0x8785[45]](respondWithResult(_0xe7cdx15,201,_0x8785[81]))[_0x8785[75]](handleError(_0xe7cdx15,null,_0x8785[81]))};exports[_0x8785[46]]= function(_0xe7cdx28,_0xe7cdx15){if(_0xe7cdx28[_0x8785[82]][_0x8785[78]]){delete _0xe7cdx28[_0x8785[82]][_0x8785[78]]};return db[_0x8785[56]][_0x8785[80]]({where:{id:_0xe7cdx28[_0x8785[79]][_0x8785[78]]}})[_0x8785[45]](handleEntityNotFound(_0xe7cdx15,null,_0x8785[46]))[_0x8785[45]](saveUpdates(_0xe7cdx28[_0x8785[82]],null,_0x8785[46]))[_0x8785[45]](respondWithResult(_0xe7cdx15,null,_0x8785[46]))[_0x8785[75]](handleError(_0xe7cdx15,null,_0x8785[46]))};exports[_0x8785[48]]= function(_0xe7cdx28,_0xe7cdx15){return db[_0x8785[56]][_0x8785[80]]({where:{id:_0xe7cdx28[_0x8785[79]][_0x8785[78]]}})[_0x8785[45]](handleEntityNotFound(_0xe7cdx15,null,_0x8785[48]))[_0x8785[45]](removeEntity(_0xe7cdx15,null,_0x8785[48]))[_0x8785[75]](handleError(_0xe7cdx15,null,_0x8785[48]))}
\ No newline at end of file
index 6b038ec..6731caf 100644 (file)
@@ -1 +1 @@
-var _0x40bc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x63\x61\x6C\x6C\x5F\x74\x72\x61\x6E\x73\x66\x65\x72","\x64\x65\x66\x69\x6E\x65"];_0x40bc[0];var _=require(_0x40bc[1]);var util=require(_0x40bc[2]);var logger=require(_0x40bc[4])(_0x40bc[3]);var attributes=require(_0x40bc[5]);module[_0x40bc[6]]= function(_0x1636x5,_0x1636x6){return _0x1636x5[_0x40bc[9]](_0x40bc[7],attributes,{tableName:_0x40bc[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
+var _0x6e29=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x72\x65\x70\x6F\x72\x74\x5F\x63\x61\x6C\x6C\x5F\x74\x72\x61\x6E\x73\x66\x65\x72","\x64\x65\x66\x69\x6E\x65"];_0x6e29[0];var _=require(_0x6e29[1]);var util=require(_0x6e29[2]);var logger=require(_0x6e29[4])(_0x6e29[3]);var attributes=require(_0x6e29[5]);module[_0x6e29[6]]= function(_0xde2ex5,_0xde2ex6){return _0xde2ex5[_0x6e29[9]](_0x6e29[7],attributes,{tableName:_0x6e29[8],paranoid:false,indexes:[],timestamps:true})}
\ No newline at end of file
index f87fd19..1e0c12c 100644 (file)
@@ -1 +1 @@
-var _0xa312=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74"];_0xa312[0];var _=require(_0xa312[1]);var util=require(_0xa312[2]);var moment=require(_0xa312[3]);var BPromise=require(_0xa312[4]);var db=require(_0xa312[6])[_0xa312[5]];var utils=require(_0xa312[7]);var logger=require(_0xa312[9])(_0xa312[8]);var jayson=require(_0xa312[10]);var client=jayson[_0xa312[12]][_0xa312[11]]({port:9002});function respondWithRpcPromise(_0x4270xb,_0x4270xc,_0x4270xd){return  new BPromise(function(_0x4270xe,_0x4270xf){return client[_0xa312[25]](_0x4270xb,_0x4270xd)[_0xa312[24]](function(_0x4270x11){logger[_0xa312[17]](_0xa312[13],_0x4270xc,_0xa312[16]);logger[_0xa312[20]](_0xa312[18],_0x4270xc,_0xa312[16],JSON[_0xa312[19]](_0x4270x11));if(_0x4270x11[_0xa312[14]]){if(_0x4270x11[_0xa312[14]][_0xa312[21]]=== 500){logger[_0xa312[14]](_0xa312[13],_0x4270xc,_0x4270x11[_0xa312[14]][_0xa312[22]]);return _0x4270xf(_0x4270x11[_0xa312[14]][_0xa312[22]])};logger[_0xa312[14]](_0xa312[13],_0x4270xc,_0x4270x11[_0xa312[14]][_0xa312[22]]);return _0x4270xe(_0x4270x11[_0xa312[14]][_0xa312[22]])}else {logger[_0xa312[17]](_0xa312[13],_0x4270xc,_0xa312[16]);_0x4270xe(_0x4270x11[_0xa312[23]][_0xa312[22]])}})[_0xa312[15]](function(_0x4270x10){logger[_0xa312[14]](_0xa312[13],_0x4270xc,_0x4270x10);_0x4270xf(_0x4270x10)})})}exports[_0xa312[26]]= function(_0x4270xd){var _0x4270x12=this;return  new Promise(function(_0x4270xe,_0x4270xf){return db[_0xa312[31]][_0xa312[30]](_0x4270xd[_0xa312[27]],{raw:_0x4270xd[_0xa312[28]]?(_0x4270xd[_0xa312[28]][_0xa312[29]]=== undefined)?true:false:true})[_0xa312[24]](function(_0x4270x11){logger[_0xa312[17]](_0xa312[26],_0x4270xd);logger[_0xa312[20]](_0xa312[26],_0x4270xd,JSON[_0xa312[19]](_0x4270x11));_0x4270xe(_0x4270x11)})[_0xa312[15]](function(_0x4270x10){logger[_0xa312[14]](_0xa312[26],_0x4270x10[_0xa312[22]],_0x4270xd);_0x4270xf(_0x4270x12[_0xa312[14]](500,_0x4270x10[_0xa312[22]]))})})}
\ No newline at end of file
+var _0x8dcc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C\x73","\x72\x70\x63","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x74","\x69\x6E\x66\x6F","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2C\x20\x25\x73\x2C\x20\x25\x73\x2C\x20\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x63\x6F\x64\x65","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x62\x6F\x64\x79","\x6F\x70\x74\x69\x6F\x6E\x73","\x72\x61\x77","\x63\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74"];_0x8dcc[0];var _=require(_0x8dcc[1]);var util=require(_0x8dcc[2]);var moment=require(_0x8dcc[3]);var BPromise=require(_0x8dcc[4]);var db=require(_0x8dcc[6])[_0x8dcc[5]];var utils=require(_0x8dcc[7]);var logger=require(_0x8dcc[9])(_0x8dcc[8]);var jayson=require(_0x8dcc[10]);var client=jayson[_0x8dcc[12]][_0x8dcc[11]]({port:9002});function respondWithRpcPromise(_0x6763xb,_0x6763xc,_0x6763xd){return  new BPromise(function(_0x6763xe,_0x6763xf){return client[_0x8dcc[25]](_0x6763xb,_0x6763xd)[_0x8dcc[24]](function(_0x6763x11){logger[_0x8dcc[17]](_0x8dcc[13],_0x6763xc,_0x8dcc[16]);logger[_0x8dcc[20]](_0x8dcc[18],_0x6763xc,_0x8dcc[16],JSON[_0x8dcc[19]](_0x6763x11));if(_0x6763x11[_0x8dcc[14]]){if(_0x6763x11[_0x8dcc[14]][_0x8dcc[21]]=== 500){logger[_0x8dcc[14]](_0x8dcc[13],_0x6763xc,_0x6763x11[_0x8dcc[14]][_0x8dcc[22]]);return _0x6763xf(_0x6763x11[_0x8dcc[14]][_0x8dcc[22]])};logger[_0x8dcc[14]](_0x8dcc[13],_0x6763xc,_0x6763x11[_0x8dcc[14]][_0x8dcc[22]]);return _0x6763xe(_0x6763x11[_0x8dcc[14]][_0x8dcc[22]])}else {logger[_0x8dcc[17]](_0x8dcc[13],_0x6763xc,_0x8dcc[16]);_0x6763xe(_0x6763x11[_0x8dcc[23]][_0x8dcc[22]])}})[_0x8dcc[15]](function(_0x6763x10){logger[_0x8dcc[14]](_0x8dcc[13],_0x6763xc,_0x6763x10);_0x6763xf(_0x6763x10)})})}exports[_0x8dcc[26]]= function(_0x6763xd){var _0x6763x12=this;return  new Promise(function(_0x6763xe,_0x6763xf){return db[_0x8dcc[31]][_0x8dcc[30]](_0x6763xd[_0x8dcc[27]],{raw:_0x6763xd[_0x8dcc[28]]?(_0x6763xd[_0x8dcc[28]][_0x8dcc[29]]=== undefined)?true:false:true})[_0x8dcc[24]](function(_0x6763x11){logger[_0x8dcc[17]](_0x8dcc[26],_0x6763xd);logger[_0x8dcc[20]](_0x8dcc[26],_0x6763xd,JSON[_0x8dcc[19]](_0x6763x11));_0x6763xe(_0x6763x11)})[_0x8dcc[15]](function(_0x6763x10){logger[_0x8dcc[14]](_0x8dcc[26],_0x6763x10[_0x8dcc[22]],_0x6763xd);_0x6763xf(_0x6763x12[_0x8dcc[14]](500,_0x6763x10[_0x8dcc[22]]))})})}
\ No newline at end of file
index 42fa965..602c238 100644 (file)
@@ -1 +1 @@
-var _0x6ef9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2F\x72\x70\x63","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x61\x70\x70","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x70\x6D\x32","\x53\x65\x72\x76\x65\x72\x20\x66\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x73\x74\x61\x72\x74\x20\x64\x75\x65\x20\x74\x6F\x20\x65\x72\x72\x6F\x72\x3A\x20\x25\x73","\x65\x72\x72\x6F\x72","\x65\x78\x69\x74","\x63\x61\x74\x63\x68","\x4F\x6E\x6C\x69\x6E\x65\x20\x61\x70\x70\x73\x3A","\x6A\x6F\x69\x6E","\x6F\x6E\x6C\x69\x6E\x65","\x66\x69\x6C\x74\x65\x72","\x6E\x61\x6D\x65","\x6D\x61\x70","\x69\x6E\x66\x6F","\x4F\x66\x66\x6C\x69\x6E\x65\x20\x61\x70\x70\x73\x3A","\x73\x74\x61\x74\x75\x73","\x4E\x6F\x6E\x65","\x73\x65\x65\x64\x44\x42","\x64\x65\x66\x61\x75\x6C\x74","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x73\x65\x65\x64\x44\x42","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65","\x74\x68\x65\x6E","\x73\x74\x61\x72\x74","\x6C\x69\x73\x74\x65\x6E","\x73\x79\x6E\x63","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x64\x62"];_0x6ef9[0];var _=require(_0x6ef9[1]);var mysqldb=require(_0x6ef9[2]);var rpc=require(_0x6ef9[3]);var config=require(_0x6ef9[4]);var logger=require(_0x6ef9[6])(_0x6ef9[5]);var pm2=require(_0x6ef9[7]);return mysqldb[_0x6ef9[31]][_0x6ef9[30]][_0x6ef9[29]]()[_0x6ef9[26]](function(){return rpc[_0x6ef9[28]]()})[_0x6ef9[26]](function(_0xac6dxa){logger[_0x6ef9[18]](_0xac6dxa);return pm2[_0x6ef9[27]]()})[_0x6ef9[26]](function(_0xac6dx8){logger[_0x6ef9[18]](_0x6ef9[12],_[_0x6ef9[17]](_[_0x6ef9[15]](_0xac6dx8,{status:_0x6ef9[14]}),_0x6ef9[16])[_0x6ef9[13]]());logger[_0x6ef9[18]](_0x6ef9[19],_[_0x6ef9[17]](_[_0x6ef9[15]](_0xac6dx8,function(_0xac6dx9){return _0xac6dx9[_0x6ef9[20]]!== _0x6ef9[14]}),_0x6ef9[16])[_0x6ef9[13]]()|| _0x6ef9[21]);config[_0x6ef9[22]]&& require(_0x6ef9[24])[_0x6ef9[23]]();require(_0x6ef9[25])[_0x6ef9[23]]()})[_0x6ef9[11]](function(_0xac6dx7){logger[_0x6ef9[9]](_0x6ef9[8],_0xac6dx7);process[_0x6ef9[10]](1)})
\ No newline at end of file
+var _0x4508=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2F\x72\x70\x63","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x61\x70\x70","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x70\x6D\x32","\x53\x65\x72\x76\x65\x72\x20\x66\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x73\x74\x61\x72\x74\x20\x64\x75\x65\x20\x74\x6F\x20\x65\x72\x72\x6F\x72\x3A\x20\x25\x73","\x65\x72\x72\x6F\x72","\x65\x78\x69\x74","\x63\x61\x74\x63\x68","\x4F\x6E\x6C\x69\x6E\x65\x20\x61\x70\x70\x73\x3A","\x6A\x6F\x69\x6E","\x6F\x6E\x6C\x69\x6E\x65","\x66\x69\x6C\x74\x65\x72","\x6E\x61\x6D\x65","\x6D\x61\x70","\x69\x6E\x66\x6F","\x4F\x66\x66\x6C\x69\x6E\x65\x20\x61\x70\x70\x73\x3A","\x73\x74\x61\x74\x75\x73","\x4E\x6F\x6E\x65","\x73\x65\x65\x64\x44\x42","\x64\x65\x66\x61\x75\x6C\x74","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x73\x65\x65\x64\x44\x42","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65","\x74\x68\x65\x6E","\x73\x74\x61\x72\x74","\x6C\x69\x73\x74\x65\x6E","\x73\x79\x6E\x63","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x64\x62"];_0x4508[0];var _=require(_0x4508[1]);var mysqldb=require(_0x4508[2]);var rpc=require(_0x4508[3]);var config=require(_0x4508[4]);var logger=require(_0x4508[6])(_0x4508[5]);var pm2=require(_0x4508[7]);return mysqldb[_0x4508[31]][_0x4508[30]][_0x4508[29]]()[_0x4508[26]](function(){return rpc[_0x4508[28]]()})[_0x4508[26]](function(_0x39e4xa){logger[_0x4508[18]](_0x39e4xa);return pm2[_0x4508[27]]()})[_0x4508[26]](function(_0x39e4x8){logger[_0x4508[18]](_0x4508[12],_[_0x4508[17]](_[_0x4508[15]](_0x39e4x8,{status:_0x4508[14]}),_0x4508[16])[_0x4508[13]]());logger[_0x4508[18]](_0x4508[19],_[_0x4508[17]](_[_0x4508[15]](_0x39e4x8,function(_0x39e4x9){return _0x39e4x9[_0x4508[20]]!== _0x4508[14]}),_0x4508[16])[_0x4508[13]]()|| _0x4508[21]);config[_0x4508[22]]&& require(_0x4508[24])[_0x4508[23]]();require(_0x4508[25])[_0x4508[23]]()})[_0x4508[11]](function(_0x39e4x7){logger[_0x4508[9]](_0x4508[8],_0x39e4x7);process[_0x4508[10]](1)})
\ No newline at end of file
index bc3b491..cf0c166 100644 (file)
@@ -1 +1 @@
-var _0x4a26=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x6A\x73\x6F\x6E\x77\x65\x62\x74\x6F\x6B\x65\x6E","\x65\x78\x70\x72\x65\x73\x73\x2D\x6A\x77\x74","\x63\x6F\x6D\x70\x6F\x73\x61\x62\x6C\x65\x2D\x6D\x69\x64\x64\x6C\x65\x77\x61\x72\x65","\x62\x61\x73\x69\x63\x2D\x61\x75\x74\x68","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73","\x69\x64","\x72\x6F\x6C\x65","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x65\x6D\x61\x69\x6C","\x75\x73\x65\x72\x70\x69\x63","\x70\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x73","\x76\x6F\x69\x63\x65\x50\x61\x75\x73\x65","\x70\x61\x75\x73\x65\x54\x79\x70\x65","\x63\x61\x74\x63\x68","\x55\x73\x65\x72\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x2E","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x75\x73\x65\x72","\x74\x68\x65\x6E","\x66\x69\x6E\x64","\x55\x73\x65\x72","\x75\x73\x65","\x61\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x68\x65\x61\x64\x65\x72\x73","\x42\x61\x73\x69\x63","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x70\x61\x73\x73","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x57\x72\x6F\x6E\x67\x20\x63\x72\x65\x64\x65\x6E\x74\x69\x61\x6C\x73\x2E","\x42\x65\x61\x72\x65\x72","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x61\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E\x20\x66\x6F\x72\x6D\x61\x74\x2E","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x69\x67\x6E","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x68\x61\x73\x52\x6F\x6C\x65","\x52\x65\x71\x75\x69\x72\x65\x64\x20\x72\x6F\x6C\x65\x20\x6E\x65\x65\x64\x73\x20\x74\x6F\x20\x62\x65\x20\x73\x65\x74","\x69\x6E\x64\x65\x78\x4F\x66","\x75\x73\x65\x72\x52\x6F\x6C\x65\x73","\x46\x6F\x72\x62\x69\x64\x64\x65\x6E","\x73\x65\x74\x54\x6F\x6B\x65\x6E\x43\x6F\x6F\x6B\x69\x65","\x49\x74\x20\x6C\x6F\x6F\x6B\x73\x20\x6C\x69\x6B\x65\x20\x79\x6F\x75\x20\x61\x72\x65\x6E\x27\x74\x20\x6C\x6F\x67\x67\x65\x64\x20\x69\x6E\x2C\x20\x70\x6C\x65\x61\x73\x65\x20\x74\x72\x79\x20\x61\x67\x61\x69\x6E\x2E","\x6D\x6F\x74\x69\x6F\x6E\x2E\x74\x6F\x6B\x65\x6E","\x63\x6F\x6F\x6B\x69\x65","\x6D\x6F\x74\x69\x6F\x6E\x2E\x75\x73\x65\x72","\x70\x69\x63\x6B","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73\x2F\x67\x65\x6E\x65\x72\x61\x6C","\x72\x65\x64\x69\x72\x65\x63\x74"];_0x4a26[0];var db=require(_0x4a26[2])[_0x4a26[1]];var config=require(_0x4a26[3]);var _=require(_0x4a26[4]);var jwt=require(_0x4a26[5]);var expressJwt=require(_0x4a26[6]);var compose=require(_0x4a26[7]);var basicAuth=require(_0x4a26[8]);var validateJwt=expressJwt({secret:config[_0x4a26[10]][_0x4a26[9]]});var userAttributes=[_0x4a26[11],_0x4a26[12],_0x4a26[13],_0x4a26[14],_0x4a26[15],_0x4a26[16],_0x4a26[17],_0x4a26[18],_0x4a26[19],_0x4a26[20]];function isAuthenticated(){return compose()[_0x4a26[29]](function(_0x64b4xb,_0x64b4xc,_0x64b4xd){if(_0x64b4xb[_0x4a26[31]][_0x4a26[30]]){if(_[_0x4a26[33]](_0x64b4xb[_0x4a26[31]][_0x4a26[30]],_0x4a26[32])){var _0x64b4x10=basicAuth(_0x64b4xb);db[_0x4a26[28]][_0x4a26[27]]({where:{name:_0x64b4x10[_0x4a26[14]]}})[_0x4a26[26]](function(_0x64b4xf){if(!_0x64b4xf||  !_0x64b4xf[_0x4a26[35]](_0x64b4x10[_0x4a26[34]])){return _0x64b4xc[_0x4a26[24]](401)[_0x4a26[23]]({message:_0x4a26[36]})};_0x64b4xb[_0x4a26[25]]= {id:_0x64b4xf[_0x4a26[11]]};_0x64b4xd()})[_0x4a26[21]](function(_0x64b4xe){_0x64b4xd(_0x64b4xe)})}else {if(_[_0x4a26[33]](_0x64b4xb[_0x4a26[31]][_0x4a26[30]],_0x4a26[37])){validateJwt(_0x64b4xb,_0x64b4xc,_0x64b4xd)}}}else {return _0x64b4xc[_0x4a26[24]](401)[_0x4a26[23]]({message:_0x4a26[38]})}})[_0x4a26[29]](function(_0x64b4xb,_0x64b4xc,_0x64b4xd){db[_0x4a26[28]][_0x4a26[27]]({where:{id:_0x64b4xb[_0x4a26[25]][_0x4a26[11]]},attributes:userAttributes})[_0x4a26[26]](function(_0x64b4xf){if(!_0x64b4xf){return _0x64b4xc[_0x4a26[24]](404)[_0x4a26[23]]({message:_0x4a26[22]})};_0x64b4xb[_0x4a26[25]]= _0x64b4xf;_0x64b4xd()})[_0x4a26[21]](function(_0x64b4xe){_0x64b4xd(_0x64b4xe)})})}exports[_0x4a26[39]]= isAuthenticated;function signToken(_0x64b4x12,_0x64b4x13){return jwt[_0x4a26[40]]({id:_0x64b4x12,role:_0x64b4x13},config[_0x4a26[10]][_0x4a26[9]],{expiresIn:60* 60* 5})}exports[_0x4a26[41]]= signToken;exports[_0x4a26[42]]= function(_0x64b4x14){if(!_0x64b4x14){throw  new Error(_0x4a26[43])};return compose()[_0x4a26[29]](isAuthenticated())[_0x4a26[29]](function _0x64b4x15(_0x64b4xb,_0x64b4xc,_0x64b4xd){if(config[_0x4a26[45]][_0x4a26[44]](_0x64b4xb[_0x4a26[25]][_0x4a26[12]])>= config[_0x4a26[45]][_0x4a26[44]](_0x64b4x14)){return _0x64b4xd()}else {return _0x64b4xc[_0x4a26[24]](403)[_0x4a26[23]]({message:_0x4a26[46]})}})};exports[_0x4a26[47]]= function(_0x64b4xb,_0x64b4xc){if(!_0x64b4xb[_0x4a26[25]]){return _0x64b4xc[_0x4a26[24]](404)[_0x4a26[23]]({message:_0x4a26[48]})};var _0x64b4x16=signToken(_0x64b4xb[_0x4a26[25]][_0x4a26[11]],_0x64b4xb[_0x4a26[25]][_0x4a26[12]]);_0x64b4xc[_0x4a26[50]](_0x4a26[49],_0x64b4x16);_0x64b4xc[_0x4a26[50]](_0x4a26[51],JSON[_0x4a26[53]](_[_0x4a26[52]](_0x64b4xb[_0x4a26[25]],userAttributes)));_0x64b4xc[_0x4a26[55]](_0x4a26[54])}
\ No newline at end of file
+var _0xc609=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x6A\x73\x6F\x6E\x77\x65\x62\x74\x6F\x6B\x65\x6E","\x65\x78\x70\x72\x65\x73\x73\x2D\x6A\x77\x74","\x63\x6F\x6D\x70\x6F\x73\x61\x62\x6C\x65\x2D\x6D\x69\x64\x64\x6C\x65\x77\x61\x72\x65","\x62\x61\x73\x69\x63\x2D\x61\x75\x74\x68","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73","\x69\x64","\x72\x6F\x6C\x65","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x65\x6D\x61\x69\x6C","\x75\x73\x65\x72\x70\x69\x63","\x70\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x73","\x76\x6F\x69\x63\x65\x50\x61\x75\x73\x65","\x70\x61\x75\x73\x65\x54\x79\x70\x65","\x63\x61\x74\x63\x68","\x55\x73\x65\x72\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x2E","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x75\x73\x65\x72","\x74\x68\x65\x6E","\x66\x69\x6E\x64","\x55\x73\x65\x72","\x75\x73\x65","\x61\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x68\x65\x61\x64\x65\x72\x73","\x42\x61\x73\x69\x63","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x70\x61\x73\x73","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x57\x72\x6F\x6E\x67\x20\x63\x72\x65\x64\x65\x6E\x74\x69\x61\x6C\x73\x2E","\x42\x65\x61\x72\x65\x72","\x55\x6E\x6B\x6E\x6F\x77\x6E\x20\x61\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E\x20\x66\x6F\x72\x6D\x61\x74\x2E","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x73\x69\x67\x6E","\x73\x69\x67\x6E\x54\x6F\x6B\x65\x6E","\x68\x61\x73\x52\x6F\x6C\x65","\x52\x65\x71\x75\x69\x72\x65\x64\x20\x72\x6F\x6C\x65\x20\x6E\x65\x65\x64\x73\x20\x74\x6F\x20\x62\x65\x20\x73\x65\x74","\x69\x6E\x64\x65\x78\x4F\x66","\x75\x73\x65\x72\x52\x6F\x6C\x65\x73","\x46\x6F\x72\x62\x69\x64\x64\x65\x6E","\x73\x65\x74\x54\x6F\x6B\x65\x6E\x43\x6F\x6F\x6B\x69\x65","\x49\x74\x20\x6C\x6F\x6F\x6B\x73\x20\x6C\x69\x6B\x65\x20\x79\x6F\x75\x20\x61\x72\x65\x6E\x27\x74\x20\x6C\x6F\x67\x67\x65\x64\x20\x69\x6E\x2C\x20\x70\x6C\x65\x61\x73\x65\x20\x74\x72\x79\x20\x61\x67\x61\x69\x6E\x2E","\x6D\x6F\x74\x69\x6F\x6E\x2E\x74\x6F\x6B\x65\x6E","\x63\x6F\x6F\x6B\x69\x65","\x6D\x6F\x74\x69\x6F\x6E\x2E\x75\x73\x65\x72","\x70\x69\x63\x6B","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73\x2F\x67\x65\x6E\x65\x72\x61\x6C","\x72\x65\x64\x69\x72\x65\x63\x74"];_0xc609[0];var db=require(_0xc609[2])[_0xc609[1]];var config=require(_0xc609[3]);var _=require(_0xc609[4]);var jwt=require(_0xc609[5]);var expressJwt=require(_0xc609[6]);var compose=require(_0xc609[7]);var basicAuth=require(_0xc609[8]);var validateJwt=expressJwt({secret:config[_0xc609[10]][_0xc609[9]]});var userAttributes=[_0xc609[11],_0xc609[12],_0xc609[13],_0xc609[14],_0xc609[15],_0xc609[16],_0xc609[17],_0xc609[18],_0xc609[19],_0xc609[20]];function isAuthenticated(){return compose()[_0xc609[29]](function(_0x50ffxb,_0x50ffxc,_0x50ffxd){if(_0x50ffxb[_0xc609[31]][_0xc609[30]]){if(_[_0xc609[33]](_0x50ffxb[_0xc609[31]][_0xc609[30]],_0xc609[32])){var _0x50ffx10=basicAuth(_0x50ffxb);db[_0xc609[28]][_0xc609[27]]({where:{name:_0x50ffx10[_0xc609[14]]}})[_0xc609[26]](function(_0x50ffxf){if(!_0x50ffxf||  !_0x50ffxf[_0xc609[35]](_0x50ffx10[_0xc609[34]])){return _0x50ffxc[_0xc609[24]](401)[_0xc609[23]]({message:_0xc609[36]})};_0x50ffxb[_0xc609[25]]= {id:_0x50ffxf[_0xc609[11]]};_0x50ffxd()})[_0xc609[21]](function(_0x50ffxe){_0x50ffxd(_0x50ffxe)})}else {if(_[_0xc609[33]](_0x50ffxb[_0xc609[31]][_0xc609[30]],_0xc609[37])){validateJwt(_0x50ffxb,_0x50ffxc,_0x50ffxd)}}}else {return _0x50ffxc[_0xc609[24]](401)[_0xc609[23]]({message:_0xc609[38]})}})[_0xc609[29]](function(_0x50ffxb,_0x50ffxc,_0x50ffxd){db[_0xc609[28]][_0xc609[27]]({where:{id:_0x50ffxb[_0xc609[25]][_0xc609[11]]},attributes:userAttributes})[_0xc609[26]](function(_0x50ffxf){if(!_0x50ffxf){return _0x50ffxc[_0xc609[24]](404)[_0xc609[23]]({message:_0xc609[22]})};_0x50ffxb[_0xc609[25]]= _0x50ffxf;_0x50ffxd()})[_0xc609[21]](function(_0x50ffxe){_0x50ffxd(_0x50ffxe)})})}exports[_0xc609[39]]= isAuthenticated;function signToken(_0x50ffx12,_0x50ffx13){return jwt[_0xc609[40]]({id:_0x50ffx12,role:_0x50ffx13},config[_0xc609[10]][_0xc609[9]],{expiresIn:60* 60* 5})}exports[_0xc609[41]]= signToken;exports[_0xc609[42]]= function(_0x50ffx14){if(!_0x50ffx14){throw  new Error(_0xc609[43])};return compose()[_0xc609[29]](isAuthenticated())[_0xc609[29]](function _0x50ffx15(_0x50ffxb,_0x50ffxc,_0x50ffxd){if(config[_0xc609[45]][_0xc609[44]](_0x50ffxb[_0xc609[25]][_0xc609[12]])>= config[_0xc609[45]][_0xc609[44]](_0x50ffx14)){return _0x50ffxd()}else {return _0x50ffxc[_0xc609[24]](403)[_0xc609[23]]({message:_0xc609[46]})}})};exports[_0xc609[47]]= function(_0x50ffxb,_0x50ffxc){if(!_0x50ffxb[_0xc609[25]]){return _0x50ffxc[_0xc609[24]](404)[_0xc609[23]]({message:_0xc609[48]})};var _0x50ffx16=signToken(_0x50ffxb[_0xc609[25]][_0xc609[11]],_0x50ffxb[_0xc609[25]][_0xc609[12]]);_0x50ffxc[_0xc609[50]](_0xc609[49],_0x50ffx16);_0x50ffxc[_0xc609[50]](_0xc609[51],JSON[_0xc609[53]](_[_0xc609[52]](_0x50ffxb[_0xc609[25]],userAttributes)));_0x50ffxc[_0xc609[55]](_0xc609[54])}
\ No newline at end of file
index 6a967f3..e1a8c5e 100644 (file)
@@ -1 +1 @@
-var _0x3316=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x65\x78\x69\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x6D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x63\x6F\x75\x6E\x74\x65\x72","\x74\x61\x62\x6C\x65","\x74\x79\x70\x65","\x77\x69\x64\x67\x65\x74\x3A\x25\x64","\x69\x64","\x66\x6F\x72\x6D\x61\x74","\x65\x6D\x69\x74","\x71\x75\x65\x72\x79","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x70\x75\x73\x68","\x61\x6C\x6C","\x67\x65\x74\x49\x74\x65\x6D\x73","\x61\x72\x67\x76","\x66\x69\x6E\x64","\x44\x61\x73\x68\x62\x6F\x61\x72\x64"];_0x3316[0];var _=require(_0x3316[1]);var util=require(_0x3316[2]);var Promise=require(_0x3316[3]);var db=require(_0x3316[5])[_0x3316[4]];var io=require(_0x3316[7])({host:_0x3316[6],port:6379});var items;return db[_0x3316[31]][_0x3316[30]]({where:{id:process[_0x3316[29]][2]}})[_0x3316[11]](function(_0x3da0xd){if(_0x3da0xd){return _0x3da0xd[_0x3316[28]]({attributes:[_0x3316[19],_0x3316[17],_0x3316[22]],where:{type:{$in:[_0x3316[15],_0x3316[16]]}},raw:true})}})[_0x3316[11]](function(_0x3da0x8){var _0x3da0xc=[];if(_0x3da0x8){items= _0x3da0x8;for(var _0x3da0x9=0;_0x3da0x9< _0x3da0x8[_0x3316[12]];_0x3da0x9++){_0x3da0xc[_0x3316[26]](db[_0x3316[25]][_0x3316[22]](_0x3da0x8[_0x3da0x9][_0x3316[22]],{type:db[_0x3316[25]][_0x3316[24]][_0x3316[23]]})[_0x3316[10]](function(_0x3da0x7){return {error:true,message:_0x3da0x7[_0x3316[13]]}}))};return Promise[_0x3316[27]](_0x3da0xc)}})[_0x3316[11]](function(_0x3da0x8){if(_0x3da0x8){for(var _0x3da0x9=0;_0x3da0x9< _0x3da0x8[_0x3316[12]];_0x3da0x9++){var _0x3da0xa;switch(items[_0x3da0x9][_0x3316[17]]){case _0x3316[15]:if(_0x3da0x8[_0x3da0x9][_0x3316[9]]){_0x3da0xa= {error:_0x3da0x8[_0x3da0x9][_0x3316[9]]?true:false,message:_0x3da0x8[_0x3da0x9][_0x3316[13]]|| null}}else {var _0x3da0xb=_0x3da0x8[_0x3da0x9][0];_0x3da0xa= {error:_0x3da0x8[_0x3da0x9][_0x3316[9]]?true:false,message:_0x3da0x8[_0x3da0x9][_0x3316[13]]|| null,value:_0x3da0xb[_[_0x3316[14]](_0x3da0xb)[0]]}};break;case _0x3316[16]:_0x3da0xa= {error:_0x3da0x8[_0x3da0x9][_0x3316[9]]?true:false,message:_0x3da0x8[_0x3da0x9][_0x3316[13]]|| null,fields:_0x3da0x8[_0x3da0x9][_0x3316[9]]?[]:_0x3da0x8[_0x3da0x9][0]?_[_0x3316[14]](_0x3da0x8[_0x3da0x9][0]):[],rows:_0x3da0x8[_0x3da0x9][_0x3316[9]]?[]:_0x3da0x8[_0x3da0x9],count:_0x3da0x8[_0x3da0x9][_0x3316[12]]|| 0};break;default:_0x3da0xa= {error:_0x3da0x8[_0x3da0x9][_0x3316[9]]?true:false,message:_0x3da0x8[_0x3da0x9][_0x3316[13]]|| null,value:_0x3da0x8[_0x3da0x9]}};io[_0x3316[21]](util[_0x3316[20]](_0x3316[18],items[_0x3da0x9][_0x3316[19]]),_0x3da0xa)}}})[_0x3316[11]](function(){process[_0x3316[8]](0)})[_0x3316[10]](function(_0x3da0x7){process[_0x3316[8]](1);console[_0x3316[9]](_0x3da0x7)})
\ No newline at end of file
+var _0x55cf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x65\x78\x69\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x6D\x65\x73\x73\x61\x67\x65","\x6B\x65\x79\x73","\x63\x6F\x75\x6E\x74\x65\x72","\x74\x61\x62\x6C\x65","\x74\x79\x70\x65","\x77\x69\x64\x67\x65\x74\x3A\x25\x64","\x69\x64","\x66\x6F\x72\x6D\x61\x74","\x65\x6D\x69\x74","\x71\x75\x65\x72\x79","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x70\x75\x73\x68","\x61\x6C\x6C","\x67\x65\x74\x49\x74\x65\x6D\x73","\x61\x72\x67\x76","\x66\x69\x6E\x64","\x44\x61\x73\x68\x62\x6F\x61\x72\x64"];_0x55cf[0];var _=require(_0x55cf[1]);var util=require(_0x55cf[2]);var Promise=require(_0x55cf[3]);var db=require(_0x55cf[5])[_0x55cf[4]];var io=require(_0x55cf[7])({host:_0x55cf[6],port:6379});var items;return db[_0x55cf[31]][_0x55cf[30]]({where:{id:process[_0x55cf[29]][2]}})[_0x55cf[11]](function(_0xa5a6xd){if(_0xa5a6xd){return _0xa5a6xd[_0x55cf[28]]({attributes:[_0x55cf[19],_0x55cf[17],_0x55cf[22]],where:{type:{$in:[_0x55cf[15],_0x55cf[16]]}},raw:true})}})[_0x55cf[11]](function(_0xa5a6x8){var _0xa5a6xc=[];if(_0xa5a6x8){items= _0xa5a6x8;for(var _0xa5a6x9=0;_0xa5a6x9< _0xa5a6x8[_0x55cf[12]];_0xa5a6x9++){_0xa5a6xc[_0x55cf[26]](db[_0x55cf[25]][_0x55cf[22]](_0xa5a6x8[_0xa5a6x9][_0x55cf[22]],{type:db[_0x55cf[25]][_0x55cf[24]][_0x55cf[23]]})[_0x55cf[10]](function(_0xa5a6x7){return {error:true,message:_0xa5a6x7[_0x55cf[13]]}}))};return Promise[_0x55cf[27]](_0xa5a6xc)}})[_0x55cf[11]](function(_0xa5a6x8){if(_0xa5a6x8){for(var _0xa5a6x9=0;_0xa5a6x9< _0xa5a6x8[_0x55cf[12]];_0xa5a6x9++){var _0xa5a6xa;switch(items[_0xa5a6x9][_0x55cf[17]]){case _0x55cf[15]:if(_0xa5a6x8[_0xa5a6x9][_0x55cf[9]]){_0xa5a6xa= {error:_0xa5a6x8[_0xa5a6x9][_0x55cf[9]]?true:false,message:_0xa5a6x8[_0xa5a6x9][_0x55cf[13]]|| null}}else {var _0xa5a6xb=_0xa5a6x8[_0xa5a6x9][0];_0xa5a6xa= {error:_0xa5a6x8[_0xa5a6x9][_0x55cf[9]]?true:false,message:_0xa5a6x8[_0xa5a6x9][_0x55cf[13]]|| null,value:_0xa5a6xb[_[_0x55cf[14]](_0xa5a6xb)[0]]}};break;case _0x55cf[16]:_0xa5a6xa= {error:_0xa5a6x8[_0xa5a6x9][_0x55cf[9]]?true:false,message:_0xa5a6x8[_0xa5a6x9][_0x55cf[13]]|| null,fields:_0xa5a6x8[_0xa5a6x9][_0x55cf[9]]?[]:_0xa5a6x8[_0xa5a6x9][0]?_[_0x55cf[14]](_0xa5a6x8[_0xa5a6x9][0]):[],rows:_0xa5a6x8[_0xa5a6x9][_0x55cf[9]]?[]:_0xa5a6x8[_0xa5a6x9],count:_0xa5a6x8[_0xa5a6x9][_0x55cf[12]]|| 0};break;default:_0xa5a6xa= {error:_0xa5a6x8[_0xa5a6x9][_0x55cf[9]]?true:false,message:_0xa5a6x8[_0xa5a6x9][_0x55cf[13]]|| null,value:_0xa5a6x8[_0xa5a6x9]}};io[_0x55cf[21]](util[_0x55cf[20]](_0x55cf[18],items[_0xa5a6x9][_0x55cf[19]]),_0xa5a6xa)}}})[_0x55cf[11]](function(){process[_0x55cf[8]](0)})[_0x55cf[10]](function(_0xa5a6x7){process[_0x55cf[8]](1);console[_0x55cf[9]](_0xa5a6x7)})
\ No newline at end of file
index 52bb422..59f5e37 100644 (file)
@@ -1 +1 @@
-var _0x6ff7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x74\x6F\x2D\x63\x73\x76","\x66\x73","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x64\x62\x48","\x61\x72\x67\x76","\x75\x70\x64\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x45\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x69\x73\x45\x6D\x70\x74\x79","\x45\x6D\x70\x74\x79","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x74\x68\x65\x6E","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x71\x75\x65\x72\x79","\x66\x69\x6E\x64"];_0x6ff7[0];var util=require(_0x6ff7[1]);var _=require(_0x6ff7[2]);var toCsv=require(_0x6ff7[3]);var fs=require(_0x6ff7[4]);var db=require(_0x6ff7[6])[_0x6ff7[5]];var dbH=require(_0x6ff7[6])[_0x6ff7[7]];var EXTRACTED_REPORT_ID=process[_0x6ff7[8]][2];var QUERY=process[_0x6ff7[8]][3];var PATH=process[_0x6ff7[8]][4];var _extractedReport;function analyticExtractedReport(_0x4119xc){return db[_0x6ff7[10]][_0x6ff7[9]]({status:_0x4119xc},{where:{id:EXTRACTED_REPORT_ID}})}return db[_0x6ff7[10]][_0x6ff7[23]]({id:EXTRACTED_REPORT_ID})[_0x6ff7[18]](function(_0x4119x10){_extractedReport= _0x4119x10;return dbH[_0x6ff7[21]][_0x6ff7[22]](QUERY,{type:dbH[_0x6ff7[21]][_0x6ff7[20]][_0x6ff7[19]]})})[_0x6ff7[18]](function(_0x4119xe){if(_[_0x6ff7[14]](_0x4119xe)){return analyticExtractedReport(_0x6ff7[15])};var _0x4119xf=toCsv(_0x4119xe);fs[_0x6ff7[16]](PATH,_0x4119xf);return analyticExtractedReport(_0x6ff7[17])})[_0x6ff7[13]](function(_0x4119xd){console[_0x6ff7[11]](_0x4119xd);return analyticExtractedReport(_0x6ff7[12])})
\ No newline at end of file
+var _0x6b4c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x74\x6F\x2D\x63\x73\x76","\x66\x73","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x64\x62\x48","\x61\x72\x67\x76","\x75\x70\x64\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x45\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x69\x73\x45\x6D\x70\x74\x79","\x45\x6D\x70\x74\x79","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x74\x68\x65\x6E","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x71\x75\x65\x72\x79","\x66\x69\x6E\x64"];_0x6b4c[0];var util=require(_0x6b4c[1]);var _=require(_0x6b4c[2]);var toCsv=require(_0x6b4c[3]);var fs=require(_0x6b4c[4]);var db=require(_0x6b4c[6])[_0x6b4c[5]];var dbH=require(_0x6b4c[6])[_0x6b4c[7]];var EXTRACTED_REPORT_ID=process[_0x6b4c[8]][2];var QUERY=process[_0x6b4c[8]][3];var PATH=process[_0x6b4c[8]][4];var _extractedReport;function analyticExtractedReport(_0xff18xc){return db[_0x6b4c[10]][_0x6b4c[9]]({status:_0xff18xc},{where:{id:EXTRACTED_REPORT_ID}})}return db[_0x6b4c[10]][_0x6b4c[23]]({id:EXTRACTED_REPORT_ID})[_0x6b4c[18]](function(_0xff18x10){_extractedReport= _0xff18x10;return dbH[_0x6b4c[21]][_0x6b4c[22]](QUERY,{type:dbH[_0x6b4c[21]][_0x6b4c[20]][_0x6b4c[19]]})})[_0x6b4c[18]](function(_0xff18xe){if(_[_0x6b4c[14]](_0xff18xe)){return analyticExtractedReport(_0x6b4c[15])};var _0xff18xf=toCsv(_0xff18xe);fs[_0x6b4c[16]](PATH,_0xff18xf);return analyticExtractedReport(_0x6b4c[17])})[_0x6b4c[13]](function(_0xff18xd){console[_0x6b4c[11]](_0xff18xd);return analyticExtractedReport(_0x6b4c[12])})
\ No newline at end of file
index 451ab29..7b0e7b5 100644 (file)
@@ -1 +1 @@
-var _0x3a69=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x70\x64\x66\x6D\x61\x6B\x65\x2F\x73\x72\x63\x2F\x70\x72\x69\x6E\x74\x65\x72","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x64\x62\x48","\x61\x72\x67\x76","\x75\x70\x64\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x74\x61\x62\x6C\x65\x48\x65\x61\x64\x65\x72","\x70\x75\x73\x68","\x65\x72\x72\x6F\x72","\x45\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x69\x73\x45\x6D\x70\x74\x79","\x45\x6D\x70\x74\x79","\x41\x34","\x6C\x61\x6E\x64\x73\x63\x61\x70\x65","\x6E\x61\x6D\x65","\x68\x65\x61\x64\x65\x72","\x62\x6C\x61\x63\x6B","\x62\x6F\x64\x79","\x6C\x65\x6E\x67\x74\x68","","\x63\x6F\x6E\x74\x65\x6E\x74","\x2F\x66\x6F\x6E\x74\x73\x2F\x52\x6F\x62\x6F\x74\x6F\x2D\x52\x65\x67\x75\x6C\x61\x72\x2E\x74\x74\x66","\x2F\x66\x6F\x6E\x74\x73\x2F\x52\x6F\x62\x6F\x74\x6F\x2D\x4D\x65\x64\x69\x75\x6D\x2E\x74\x74\x66","\x2F\x66\x6F\x6E\x74\x73\x2F\x52\x6F\x62\x6F\x74\x6F\x2D\x49\x74\x61\x6C\x69\x63\x2E\x74\x74\x66","\x2F\x66\x6F\x6E\x74\x73\x2F\x52\x6F\x62\x6F\x74\x6F\x2D\x4D\x65\x64\x69\x75\x6D\x49\x74\x61\x6C\x69\x63\x2E\x74\x74\x66","\x63\x72\x65\x61\x74\x65\x50\x64\x66\x4B\x69\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x57\x72\x69\x74\x65\x53\x74\x72\x65\x61\x6D","\x70\x69\x70\x65","\x65\x6E\x64","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x74\x68\x65\x6E","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x71\x75\x65\x72\x79","\x66\x69\x6E\x64"];_0x3a69[0];var fs=require(_0x3a69[1]);var _=require(_0x3a69[2]);var PdfPrinter=require(_0x3a69[3]);var db=require(_0x3a69[5])[_0x3a69[4]];var dbH=require(_0x3a69[5])[_0x3a69[6]];var EXTRACTED_REPORT_ID=process[_0x3a69[7]][2];var QUERY=process[_0x3a69[7]][3];var PATH=process[_0x3a69[7]][4];var _extractedReport;function analyticExtractedReport(_0xc907xb){return db[_0x3a69[9]][_0x3a69[8]]({status:_0xc907xb},{where:{id:EXTRACTED_REPORT_ID}})}function getHeader(_0xc907xd){var _0xc907xe=[];for(var _0xc907xf in _0xc907xd){if(_0xc907xd[_0x3a69[10]](_0xc907xf)){_0xc907xe[_0x3a69[12]]({text:_0xc907xf,style:_0x3a69[11]})}};return _0xc907xe}return db[_0x3a69[9]][_0x3a69[41]]({id:EXTRACTED_REPORT_ID})[_0x3a69[36]](function(_0xc907x17){_extractedReport= _0xc907x17;return dbH[_0x3a69[39]][_0x3a69[40]](QUERY,{type:dbH[_0x3a69[39]][_0x3a69[38]][_0x3a69[37]]})})[_0x3a69[36]](function(_0xc907x11){if(_[_0x3a69[16]](_0xc907x11)){return analyticExtractedReport(_0x3a69[17])};var _0xc907x12={pageSize:_0x3a69[18],pageOrientation:_0x3a69[19],content:[{text:_extractedReport[_0x3a69[20]],style:_0x3a69[21]}],styles:{header:{fontSize:18,bold:true,margin:[0,0,0,10]},tableHeader:{bold:true,fontSize:13,color:_0x3a69[22]}}};var _0xc907x13={headerRows:1,body:[]};_0xc907x13[_0x3a69[23]][_0x3a69[12]](getHeader(_0xc907x11[0]));var _0xc907xe;for(var _0xc907x14=0;_0xc907x14< _0xc907x11[_0x3a69[24]];_0xc907x14+= 1){_0xc907xe= [];for(var _0xc907xf in _0xc907x11[_0xc907x14]){if(_0xc907x11[_0xc907x14][_0x3a69[10]](_0xc907xf)){_0xc907xe[_0x3a69[12]](_0xc907x11[_0xc907x14][_0xc907xf]?_.toString(_0xc907x11[_0xc907x14][_0xc907xf]):_0x3a69[25])}};_0xc907x13[_0x3a69[23]][_0x3a69[12]](_0xc907xe)};_0xc907x12[_0x3a69[26]][_0x3a69[12]]({table:_0xc907x13});var _0xc907x15= new PdfPrinter({Roboto:{normal:__dirname+ _0x3a69[27],bold:__dirname+ _0x3a69[28],italics:__dirname+ _0x3a69[29],bolditalics:__dirname+ _0x3a69[30]}});var _0xc907x16=_0xc907x15[_0x3a69[31]](_0xc907x12);_0xc907x16[_0x3a69[33]](fs[_0x3a69[32]](PATH));_0xc907x16[_0x3a69[34]]();return analyticExtractedReport(_0x3a69[35])})[_0x3a69[15]](function(_0xc907x10){console[_0x3a69[13]](_0xc907x10);return analyticExtractedReport(_0x3a69[14])})
\ No newline at end of file
+var _0xbfc6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x6C\x6F\x64\x61\x73\x68","\x70\x64\x66\x6D\x61\x6B\x65\x2F\x73\x72\x63\x2F\x70\x72\x69\x6E\x74\x65\x72","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x64\x62\x48","\x61\x72\x67\x76","\x75\x70\x64\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x74\x61\x62\x6C\x65\x48\x65\x61\x64\x65\x72","\x70\x75\x73\x68","\x65\x72\x72\x6F\x72","\x45\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x69\x73\x45\x6D\x70\x74\x79","\x45\x6D\x70\x74\x79","\x41\x34","\x6C\x61\x6E\x64\x73\x63\x61\x70\x65","\x6E\x61\x6D\x65","\x68\x65\x61\x64\x65\x72","\x62\x6C\x61\x63\x6B","\x62\x6F\x64\x79","\x6C\x65\x6E\x67\x74\x68","","\x63\x6F\x6E\x74\x65\x6E\x74","\x2F\x66\x6F\x6E\x74\x73\x2F\x52\x6F\x62\x6F\x74\x6F\x2D\x52\x65\x67\x75\x6C\x61\x72\x2E\x74\x74\x66","\x2F\x66\x6F\x6E\x74\x73\x2F\x52\x6F\x62\x6F\x74\x6F\x2D\x4D\x65\x64\x69\x75\x6D\x2E\x74\x74\x66","\x2F\x66\x6F\x6E\x74\x73\x2F\x52\x6F\x62\x6F\x74\x6F\x2D\x49\x74\x61\x6C\x69\x63\x2E\x74\x74\x66","\x2F\x66\x6F\x6E\x74\x73\x2F\x52\x6F\x62\x6F\x74\x6F\x2D\x4D\x65\x64\x69\x75\x6D\x49\x74\x61\x6C\x69\x63\x2E\x74\x74\x66","\x63\x72\x65\x61\x74\x65\x50\x64\x66\x4B\x69\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x57\x72\x69\x74\x65\x53\x74\x72\x65\x61\x6D","\x70\x69\x70\x65","\x65\x6E\x64","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x74\x68\x65\x6E","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x71\x75\x65\x72\x79","\x66\x69\x6E\x64"];_0xbfc6[0];var fs=require(_0xbfc6[1]);var _=require(_0xbfc6[2]);var PdfPrinter=require(_0xbfc6[3]);var db=require(_0xbfc6[5])[_0xbfc6[4]];var dbH=require(_0xbfc6[5])[_0xbfc6[6]];var EXTRACTED_REPORT_ID=process[_0xbfc6[7]][2];var QUERY=process[_0xbfc6[7]][3];var PATH=process[_0xbfc6[7]][4];var _extractedReport;function analyticExtractedReport(_0x197bxb){return db[_0xbfc6[9]][_0xbfc6[8]]({status:_0x197bxb},{where:{id:EXTRACTED_REPORT_ID}})}function getHeader(_0x197bxd){var _0x197bxe=[];for(var _0x197bxf in _0x197bxd){if(_0x197bxd[_0xbfc6[10]](_0x197bxf)){_0x197bxe[_0xbfc6[12]]({text:_0x197bxf,style:_0xbfc6[11]})}};return _0x197bxe}return db[_0xbfc6[9]][_0xbfc6[41]]({id:EXTRACTED_REPORT_ID})[_0xbfc6[36]](function(_0x197bx17){_extractedReport= _0x197bx17;return dbH[_0xbfc6[39]][_0xbfc6[40]](QUERY,{type:dbH[_0xbfc6[39]][_0xbfc6[38]][_0xbfc6[37]]})})[_0xbfc6[36]](function(_0x197bx11){if(_[_0xbfc6[16]](_0x197bx11)){return analyticExtractedReport(_0xbfc6[17])};var _0x197bx12={pageSize:_0xbfc6[18],pageOrientation:_0xbfc6[19],content:[{text:_extractedReport[_0xbfc6[20]],style:_0xbfc6[21]}],styles:{header:{fontSize:18,bold:true,margin:[0,0,0,10]},tableHeader:{bold:true,fontSize:13,color:_0xbfc6[22]}}};var _0x197bx13={headerRows:1,body:[]};_0x197bx13[_0xbfc6[23]][_0xbfc6[12]](getHeader(_0x197bx11[0]));var _0x197bxe;for(var _0x197bx14=0;_0x197bx14< _0x197bx11[_0xbfc6[24]];_0x197bx14+= 1){_0x197bxe= [];for(var _0x197bxf in _0x197bx11[_0x197bx14]){if(_0x197bx11[_0x197bx14][_0xbfc6[10]](_0x197bxf)){_0x197bxe[_0xbfc6[12]](_0x197bx11[_0x197bx14][_0x197bxf]?_.toString(_0x197bx11[_0x197bx14][_0x197bxf]):_0xbfc6[25])}};_0x197bx13[_0xbfc6[23]][_0xbfc6[12]](_0x197bxe)};_0x197bx12[_0xbfc6[26]][_0xbfc6[12]]({table:_0x197bx13});var _0x197bx15= new PdfPrinter({Roboto:{normal:__dirname+ _0xbfc6[27],bold:__dirname+ _0xbfc6[28],italics:__dirname+ _0xbfc6[29],bolditalics:__dirname+ _0xbfc6[30]}});var _0x197bx16=_0x197bx15[_0xbfc6[31]](_0x197bx12);_0x197bx16[_0xbfc6[33]](fs[_0xbfc6[32]](PATH));_0x197bx16[_0xbfc6[34]]();return analyticExtractedReport(_0xbfc6[35])})[_0xbfc6[15]](function(_0x197bx10){console[_0xbfc6[13]](_0x197bx10);return analyticExtractedReport(_0xbfc6[14])})
\ No newline at end of file
index d4f3cec..67d2b04 100644 (file)
@@ -1 +1 @@
-var _0xc05c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6A\x73\x6F\x6E\x32\x78\x6C\x73","\x66\x73","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x64\x62\x48","\x61\x72\x67\x76","\x75\x70\x64\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x45\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x69\x73\x45\x6D\x70\x74\x79","\x45\x6D\x70\x74\x79","\x62\x69\x6E\x61\x72\x79","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x74\x68\x65\x6E","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x71\x75\x65\x72\x79","\x66\x69\x6E\x64"];_0xc05c[0];var util=require(_0xc05c[1]);var _=require(_0xc05c[2]);var json2xls=require(_0xc05c[3]);var fs=require(_0xc05c[4]);var db=require(_0xc05c[6])[_0xc05c[5]];var dbH=require(_0xc05c[6])[_0xc05c[7]];var EXTRACTED_REPORT_ID=process[_0xc05c[8]][2];var QUERY=process[_0xc05c[8]][3];var PATH=process[_0xc05c[8]][4];var _extractedReport;function analyticExtractedReport(_0xe4bfxc){return db[_0xc05c[10]][_0xc05c[9]]({status:_0xe4bfxc},{where:{id:EXTRACTED_REPORT_ID}})}return db[_0xc05c[10]][_0xc05c[24]]({id:EXTRACTED_REPORT_ID})[_0xc05c[19]](function(_0xe4bfx10){_extractedReport= _0xe4bfx10;return dbH[_0xc05c[22]][_0xc05c[23]](QUERY,{type:dbH[_0xc05c[22]][_0xc05c[21]][_0xc05c[20]]})})[_0xc05c[19]](function(_0xe4bfxe){if(_[_0xc05c[14]](_0xe4bfxe)){return analyticExtractedReport(_0xc05c[15])};var _0xe4bfxf=json2xls(_0xe4bfxe);fs[_0xc05c[17]](PATH,_0xe4bfxf,_0xc05c[16]);return analyticExtractedReport(_0xc05c[18])})[_0xc05c[13]](function(_0xe4bfxd){console[_0xc05c[11]](_0xe4bfxd);return analyticExtractedReport(_0xc05c[12])})
\ No newline at end of file
+var _0xced5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6A\x73\x6F\x6E\x32\x78\x6C\x73","\x66\x73","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x64\x62\x48","\x61\x72\x67\x76","\x75\x70\x64\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x45\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x69\x73\x45\x6D\x70\x74\x79","\x45\x6D\x70\x74\x79","\x62\x69\x6E\x61\x72\x79","\x77\x72\x69\x74\x65\x46\x69\x6C\x65\x53\x79\x6E\x63","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x74\x68\x65\x6E","\x53\x45\x4C\x45\x43\x54","\x51\x75\x65\x72\x79\x54\x79\x70\x65\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x71\x75\x65\x72\x79","\x66\x69\x6E\x64"];_0xced5[0];var util=require(_0xced5[1]);var _=require(_0xced5[2]);var json2xls=require(_0xced5[3]);var fs=require(_0xced5[4]);var db=require(_0xced5[6])[_0xced5[5]];var dbH=require(_0xced5[6])[_0xced5[7]];var EXTRACTED_REPORT_ID=process[_0xced5[8]][2];var QUERY=process[_0xced5[8]][3];var PATH=process[_0xced5[8]][4];var _extractedReport;function analyticExtractedReport(_0xa81exc){return db[_0xced5[10]][_0xced5[9]]({status:_0xa81exc},{where:{id:EXTRACTED_REPORT_ID}})}return db[_0xced5[10]][_0xced5[24]]({id:EXTRACTED_REPORT_ID})[_0xced5[19]](function(_0xa81ex10){_extractedReport= _0xa81ex10;return dbH[_0xced5[22]][_0xced5[23]](QUERY,{type:dbH[_0xced5[22]][_0xced5[21]][_0xced5[20]]})})[_0xced5[19]](function(_0xa81exe){if(_[_0xced5[14]](_0xa81exe)){return analyticExtractedReport(_0xced5[15])};var _0xa81exf=json2xls(_0xa81exe);fs[_0xced5[17]](PATH,_0xa81exf,_0xced5[16]);return analyticExtractedReport(_0xced5[18])})[_0xced5[13]](function(_0xa81exd){console[_0xced5[11]](_0xa81exd);return analyticExtractedReport(_0xced5[12])})
\ No newline at end of file
index bfd3fe5..32c6198 100644 (file)
@@ -1 +1 @@
-var _0xcb58=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x65\x78\x74\x65\x6E","\x67\x72\x6F\x75\x70\x42\x79","\x71\x75\x65\x75\x65","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x61\x6E\x73\x77\x65\x72","\x70\x72\x6F\x67\x72\x65\x73\x73","\x70\x72\x69\x6F\x72\x69\x74\x79","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x53\x65\x74","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x49\x64","\x70\x75\x73\x68","\x6C\x65\x6E\x67\x74\x68","\x69\x64","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x69\x6E\x74\x65\x72\x76\x61\x6C","\x2A\x2C\x2A\x2C\x2A\x2C\x2A","\x49\x6E\x74\x65\x72\x76\x61\x6C\x49\x64","\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x66\x69\x6C\x74\x65\x72","\x6D\x61\x70","\x74\x61\x67","\x2D\x2D","\x43\x44\x52\x28\x74\x61\x67\x29\x3D","\x63\x61\x6C\x6C\x65\x72\x49\x44","\x43\x41\x4C\x4C\x45\x52\x49\x44\x28\x61\x6C\x6C\x29\x3D","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x70\x70","\x69\x6E\x64\x65\x78\x4F\x66","\x61\x70\x70\x54\x79\x70\x65","\x63\x75\x73\x74\x6F\x6D","\x41\x6E\x73\x77\x65\x72","\x50\x72\x6F\x67\x72\x65\x73\x73","\x72\x65\x63\x6F\x72\x64","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x46\x6F\x72\x6D\x61\x74","\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x24\x7B\x55\x4E\x49\x51\x55\x45\x49\x44\x7D\x2E","\x2C\x61\x62","\x53\x74\x6F\x70\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x47\x6F\x74\x6F\x49\x66\x54\x69\x6D\x65","\x3F","\x2C\x24\x7B\x45\x58\x54\x45\x4E\x7D\x2C","\x3A","\x73\x70\x6C\x69\x63\x65","\x6C\x61\x73\x74","\x63\x6F\x6E\x63\x61\x74","\x48\x61\x6E\x67\x75\x70","\x73\x6F\x72\x74\x42\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x6D\x6F\x64\x65\x6C\x73","\x74\x68\x65\x6E","\x64\x65\x73\x74\x72\x6F\x79","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x75\x6E\x69\x71","\x43\x41\x53\x54\x28\x70\x72\x69\x6F\x72\x69\x74\x79\x20\x41\x53\x20\x55\x4E\x53\x49\x47\x4E\x45\x44\x29","\x66\x69\x6E\x64\x41\x6C\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x72\x65\x77\x72\x69\x74\x65"];_0xcb58[0];var _=require(_0xcb58[1]);var util=require(_0xcb58[2]);function rewrite(_0x8856x4,_0x8856x5){var _0x8856x6=this;return _0x8856x4[_0xcb58[60]][_0xcb58[67]][_0xcb58[66]]({raw:true})[_0xcb58[61]](function(_0x8856x13){_0x8856x6[_0xcb58[28]]= _0x8856x13;return _0x8856x4[_0xcb58[60]][_0xcb58[59]][_0xcb58[66]]({where:{IntervalId:_0x8856x5[_0xcb58[27]]},raw:true})})[_0xcb58[61]](function(_0x8856x8){return _0x8856x4[_0xcb58[60]][_0xcb58[59]][_0xcb58[66]]({where:{exten:{$in:_[_0xcb58[64]](_[_0xcb58[30]](_0x8856x8,_0xcb58[5]))},isApp:true},order:[{raw:_0xcb58[65]}],raw:true})})[_0xcb58[61]](function(_0x8856x8){var _0x8856x9=_[_0xcb58[6]](_0x8856x8,_0xcb58[5]);var _0x8856xa=[_0xcb58[7],_0xcb58[8]];var _0x8856xb=[];var _0x8856xc=[];for(var _0x8856xd in _0x8856x9){if(_0x8856x9[_0xcb58[9]](_0x8856xd)){_0x8856x6[_0xcb58[10]]= false;_0x8856x6[_0xcb58[11]]= false;_0x8856x6[_0xcb58[12]]= 2;_0x8856x6[_0xcb58[13]]= [];_0x8856x6[_0xcb58[13]][_0xcb58[20]]({type:_0x8856x9[_0x8856xd][0][_0xcb58[14]],context:_0x8856x9[_0x8856xd][0][_0xcb58[15]],exten:_0x8856x9[_0x8856xd][0][_0xcb58[5]],priority:_0x8856x6[_0xcb58[12]]++,app:_0xcb58[16],appdata:util[_0xcb58[18]](_0xcb58[17],_0x8856x9[_0x8856xd][0][_0xcb58[14]]),VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]});for(var _0x8856xe=0,_0x8856xf=0;_0x8856xe< _0x8856x9[_0x8856xd][_0xcb58[21]];_0x8856xe+= 1,_0x8856xf= 0){var _0x8856x10=_0x8856x9[_0x8856xd][_0x8856xe];var _0x8856x11=[];var _0x8856x12=[];delete _0x8856x10[_0xcb58[22]];delete _0x8856x10[_0xcb58[23]];delete _0x8856x10[_0xcb58[24]];var _0x8856x13=(_0x8856x10[_0xcb58[25]]!== _0xcb58[26])?[_0x8856x10[_0xcb58[25]]]:(_0x8856x10[_0xcb58[27]]?_[_0xcb58[30]](_[_0xcb58[29]](_0x8856x6[_0xcb58[28]],{IntervalId:_0x8856x10[_0xcb58[27]]}),_0xcb58[25]):[]);if(_0x8856x10[_0xcb58[9]](_0xcb58[31])){if(_0x8856x10[_0xcb58[31]]&& _0x8856x10[_0xcb58[31]]!== _0xcb58[32]){_0x8856x11[_0xcb58[20]]({type:_0x8856x10[_0xcb58[14]],app:_0xcb58[16],appdata:_0xcb58[33]+ _0x8856x10[_0xcb58[31]],context:_0x8856x10[_0xcb58[15]],exten:_0x8856x10[_0xcb58[5]],priority:_0x8856x13[_0xcb58[21]]+ _0x8856x6[_0xcb58[12]]+ _0x8856xf++,VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]})}};if(_0x8856x10[_0xcb58[9]](_0xcb58[34])){if(_0x8856x10[_0xcb58[34]]){_0x8856x11[_0xcb58[20]]({type:_0x8856x10[_0xcb58[14]],app:_0xcb58[16],appdata:_0xcb58[35]+ _0x8856x10[_0xcb58[34]],context:_0x8856x10[_0xcb58[15]],exten:_0x8856x10[_0xcb58[5]],priority:_0x8856x13[_0xcb58[21]]+ _0x8856x6[_0xcb58[12]]+ _0x8856xf++,VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]})}};if(_0x8856x10[_0xcb58[9]](_0xcb58[10])){if(_0x8856xa[_0xcb58[38]](_0x8856x10[_0xcb58[37]][_0xcb58[36]]())>= 0&& _0x8856x10[_0xcb58[39]]!== _0xcb58[40]){if(!_0x8856x6[_0xcb58[10]]&& _0x8856x10[_0xcb58[10]]){_0x8856x6[_0xcb58[10]]= true;_0x8856x11[_0xcb58[20]]({type:_0x8856x10[_0xcb58[14]],app:_0xcb58[41],context:_0x8856x10[_0xcb58[15]],exten:_0x8856x10[_0xcb58[5]],priority:_0x8856x13[_0xcb58[21]]+ _0x8856x6[_0xcb58[12]]+ _0x8856xf++,VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]})};if(!_0x8856x6[_0xcb58[10]]&&  !_0x8856x6[_0xcb58[11]] &&  !_0x8856x10[_0xcb58[10]]){_0x8856x6[_0xcb58[11]]= true;_0x8856x11[_0xcb58[20]]({type:_0x8856x10[_0xcb58[14]],app:_0xcb58[42],context:_0x8856x10[_0xcb58[15]],exten:_0x8856x10[_0xcb58[5]],priority:_0x8856x13[_0xcb58[21]]+ _0x8856x6[_0xcb58[12]]+ _0x8856xf++,VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]})}}};if(_0x8856x10[_0xcb58[9]](_0xcb58[43])&& _0x8856x10[_0xcb58[9]](_0xcb58[44])){if(_0x8856x10[_0xcb58[43]]){_0x8856x11[_0xcb58[20]]({type:_0x8856x10[_0xcb58[14]],app:_0xcb58[45],appdata:_0xcb58[46]+ _0x8856x10[_0xcb58[44]]+ _0xcb58[47],context:_0x8856x10[_0xcb58[15]],exten:_0x8856x10[_0xcb58[5]],priority:_0x8856x13[_0xcb58[21]]+ _0x8856x6[_0xcb58[12]]+ _0x8856xf++,VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]})}};if(_0x8856x10[_0xcb58[9]](_0xcb58[43])&& _0x8856x10[_0xcb58[9]](_0xcb58[44])){if(_0x8856x10[_0xcb58[43]]){_0x8856x12[_0xcb58[20]]({type:_0x8856x10[_0xcb58[14]],app:_0xcb58[48],appdata:null,context:_0x8856x10[_0xcb58[15]],exten:_0x8856x10[_0xcb58[5]],priority:_0x8856x13[_0xcb58[21]]+ _0x8856x6[_0xcb58[12]]+ _0x8856xf+++  1,VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]})}};for(var _0x8856x14=0;_0x8856x14< _0x8856x13[_0xcb58[21]];_0x8856x14+= 1){var _0x8856x15=_0x8856x6[_0xcb58[12]]+ _0x8856x13[_0xcb58[21]];var _0x8856x16=(_0x8856x14=== (_0x8856x13[_0xcb58[21]]- 1))?_0x8856x6[_0xcb58[12]]+ _0x8856x11[_0xcb58[21]]+ _0x8856x12[_0xcb58[21]]+ 2:_0x8856x6[_0xcb58[12]]+ _0x8856x14+ 1;_0x8856x11[_0xcb58[53]](_0x8856x14,0,{type:_0x8856x10[_0xcb58[14]],app:_0xcb58[49],appdata:_0x8856x13[_0x8856x14]+ _0xcb58[50]+ _0x8856x10[_0xcb58[15]]+ _0xcb58[51]+ _0x8856x15+ _0xcb58[52]+ _0x8856x10[_0xcb58[15]]+ _0xcb58[51]+ _0x8856x16,exten:_0x8856x10[_0xcb58[5]],context:_0x8856x10[_0xcb58[15]],priority:_0x8856x6[_0xcb58[12]]+ _0x8856x14,VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]})};_0x8856x10[_0xcb58[12]]= (_0x8856x11[_0xcb58[21]]?_[_0xcb58[54]](_0x8856x11)[_0xcb58[12]]+ 1:_0x8856x6[_0xcb58[12]]);_0x8856x6[_0xcb58[12]]= (_0x8856x12[_0xcb58[21]]?_[_0xcb58[54]](_0x8856x12)[_0xcb58[12]]:_0x8856x10[_0xcb58[12]])+ 1;_0x8856x6[_0xcb58[13]]= _[_0xcb58[55]](_0x8856x6[_0xcb58[13]],_0x8856x11,[_0x8856x10],_0x8856x12)};_0x8856x6[_0xcb58[13]][_0xcb58[20]]({type:_0x8856x9[_0x8856xd][0][_0xcb58[14]],app:_0xcb58[56],exten:_0x8856x9[_0x8856xd][0][_0xcb58[5]],context:_0x8856x9[_0x8856xd][0][_0xcb58[15]],priority:_0x8856x6[_0xcb58[12]],VoiceExtensionId:_0x8856x9[_0x8856xd][0][_0xcb58[19]]});_0x8856xb[_0xcb58[20]](_0x8856x9[_0x8856xd][0].VoiceExtensionId);_0x8856xc= _[_0xcb58[55]](_0x8856xc,_0x8856x6[_0xcb58[13]])}};return _0x8856x4[_0xcb58[63]](function(_0x8856x17){return _0x8856x4[_0xcb58[60]][_0xcb58[59]][_0xcb58[62]]({where:{VoiceExtensionId:{$in:_0x8856xb}},transaction:_0x8856x17})[_0xcb58[61]](function(_0x8856x18){return _0x8856x4[_0xcb58[60]][_0xcb58[59]][_0xcb58[58]](_[_0xcb58[57]](_0x8856xc,_0xcb58[12]),{transaction:_0x8856x17})})})})[_0xcb58[4]](function(_0x8856x7){console[_0xcb58[3]](_0x8856x7)})}exports[_0xcb58[68]]= rewrite
\ No newline at end of file
+var _0x66c2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x65\x78\x74\x65\x6E","\x67\x72\x6F\x75\x70\x42\x79","\x71\x75\x65\x75\x65","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x61\x6E\x73\x77\x65\x72","\x70\x72\x6F\x67\x72\x65\x73\x73","\x70\x72\x69\x6F\x72\x69\x74\x79","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x53\x65\x74","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x49\x64","\x70\x75\x73\x68","\x6C\x65\x6E\x67\x74\x68","\x69\x64","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x69\x6E\x74\x65\x72\x76\x61\x6C","\x2A\x2C\x2A\x2C\x2A\x2C\x2A","\x49\x6E\x74\x65\x72\x76\x61\x6C\x49\x64","\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x66\x69\x6C\x74\x65\x72","\x6D\x61\x70","\x74\x61\x67","\x2D\x2D","\x43\x44\x52\x28\x74\x61\x67\x29\x3D","\x63\x61\x6C\x6C\x65\x72\x49\x44","\x43\x41\x4C\x4C\x45\x52\x49\x44\x28\x61\x6C\x6C\x29\x3D","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x70\x70","\x69\x6E\x64\x65\x78\x4F\x66","\x61\x70\x70\x54\x79\x70\x65","\x63\x75\x73\x74\x6F\x6D","\x41\x6E\x73\x77\x65\x72","\x50\x72\x6F\x67\x72\x65\x73\x73","\x72\x65\x63\x6F\x72\x64","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x46\x6F\x72\x6D\x61\x74","\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x24\x7B\x55\x4E\x49\x51\x55\x45\x49\x44\x7D\x2E","\x2C\x61\x62","\x53\x74\x6F\x70\x4D\x69\x78\x4D\x6F\x6E\x69\x74\x6F\x72","\x47\x6F\x74\x6F\x49\x66\x54\x69\x6D\x65","\x3F","\x2C\x24\x7B\x45\x58\x54\x45\x4E\x7D\x2C","\x3A","\x73\x70\x6C\x69\x63\x65","\x6C\x61\x73\x74","\x63\x6F\x6E\x63\x61\x74","\x48\x61\x6E\x67\x75\x70","\x73\x6F\x72\x74\x42\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x6D\x6F\x64\x65\x6C\x73","\x74\x68\x65\x6E","\x64\x65\x73\x74\x72\x6F\x79","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x75\x6E\x69\x71","\x43\x41\x53\x54\x28\x70\x72\x69\x6F\x72\x69\x74\x79\x20\x41\x53\x20\x55\x4E\x53\x49\x47\x4E\x45\x44\x29","\x66\x69\x6E\x64\x41\x6C\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x72\x65\x77\x72\x69\x74\x65"];_0x66c2[0];var _=require(_0x66c2[1]);var util=require(_0x66c2[2]);function rewrite(_0x9b56x4,_0x9b56x5){var _0x9b56x6=this;return _0x9b56x4[_0x66c2[60]][_0x66c2[67]][_0x66c2[66]]({raw:true})[_0x66c2[61]](function(_0x9b56x13){_0x9b56x6[_0x66c2[28]]= _0x9b56x13;return _0x9b56x4[_0x66c2[60]][_0x66c2[59]][_0x66c2[66]]({where:{IntervalId:_0x9b56x5[_0x66c2[27]]},raw:true})})[_0x66c2[61]](function(_0x9b56x8){return _0x9b56x4[_0x66c2[60]][_0x66c2[59]][_0x66c2[66]]({where:{exten:{$in:_[_0x66c2[64]](_[_0x66c2[30]](_0x9b56x8,_0x66c2[5]))},isApp:true},order:[{raw:_0x66c2[65]}],raw:true})})[_0x66c2[61]](function(_0x9b56x8){var _0x9b56x9=_[_0x66c2[6]](_0x9b56x8,_0x66c2[5]);var _0x9b56xa=[_0x66c2[7],_0x66c2[8]];var _0x9b56xb=[];var _0x9b56xc=[];for(var _0x9b56xd in _0x9b56x9){if(_0x9b56x9[_0x66c2[9]](_0x9b56xd)){_0x9b56x6[_0x66c2[10]]= false;_0x9b56x6[_0x66c2[11]]= false;_0x9b56x6[_0x66c2[12]]= 2;_0x9b56x6[_0x66c2[13]]= [];_0x9b56x6[_0x66c2[13]][_0x66c2[20]]({type:_0x9b56x9[_0x9b56xd][0][_0x66c2[14]],context:_0x9b56x9[_0x9b56xd][0][_0x66c2[15]],exten:_0x9b56x9[_0x9b56xd][0][_0x66c2[5]],priority:_0x9b56x6[_0x66c2[12]]++,app:_0x66c2[16],appdata:util[_0x66c2[18]](_0x66c2[17],_0x9b56x9[_0x9b56xd][0][_0x66c2[14]]),VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]});for(var _0x9b56xe=0,_0x9b56xf=0;_0x9b56xe< _0x9b56x9[_0x9b56xd][_0x66c2[21]];_0x9b56xe+= 1,_0x9b56xf= 0){var _0x9b56x10=_0x9b56x9[_0x9b56xd][_0x9b56xe];var _0x9b56x11=[];var _0x9b56x12=[];delete _0x9b56x10[_0x66c2[22]];delete _0x9b56x10[_0x66c2[23]];delete _0x9b56x10[_0x66c2[24]];var _0x9b56x13=(_0x9b56x10[_0x66c2[25]]!== _0x66c2[26])?[_0x9b56x10[_0x66c2[25]]]:(_0x9b56x10[_0x66c2[27]]?_[_0x66c2[30]](_[_0x66c2[29]](_0x9b56x6[_0x66c2[28]],{IntervalId:_0x9b56x10[_0x66c2[27]]}),_0x66c2[25]):[]);if(_0x9b56x10[_0x66c2[9]](_0x66c2[31])){if(_0x9b56x10[_0x66c2[31]]&& _0x9b56x10[_0x66c2[31]]!== _0x66c2[32]){_0x9b56x11[_0x66c2[20]]({type:_0x9b56x10[_0x66c2[14]],app:_0x66c2[16],appdata:_0x66c2[33]+ _0x9b56x10[_0x66c2[31]],context:_0x9b56x10[_0x66c2[15]],exten:_0x9b56x10[_0x66c2[5]],priority:_0x9b56x13[_0x66c2[21]]+ _0x9b56x6[_0x66c2[12]]+ _0x9b56xf++,VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]})}};if(_0x9b56x10[_0x66c2[9]](_0x66c2[34])){if(_0x9b56x10[_0x66c2[34]]){_0x9b56x11[_0x66c2[20]]({type:_0x9b56x10[_0x66c2[14]],app:_0x66c2[16],appdata:_0x66c2[35]+ _0x9b56x10[_0x66c2[34]],context:_0x9b56x10[_0x66c2[15]],exten:_0x9b56x10[_0x66c2[5]],priority:_0x9b56x13[_0x66c2[21]]+ _0x9b56x6[_0x66c2[12]]+ _0x9b56xf++,VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]})}};if(_0x9b56x10[_0x66c2[9]](_0x66c2[10])){if(_0x9b56xa[_0x66c2[38]](_0x9b56x10[_0x66c2[37]][_0x66c2[36]]())>= 0&& _0x9b56x10[_0x66c2[39]]!== _0x66c2[40]){if(!_0x9b56x6[_0x66c2[10]]&& _0x9b56x10[_0x66c2[10]]){_0x9b56x6[_0x66c2[10]]= true;_0x9b56x11[_0x66c2[20]]({type:_0x9b56x10[_0x66c2[14]],app:_0x66c2[41],context:_0x9b56x10[_0x66c2[15]],exten:_0x9b56x10[_0x66c2[5]],priority:_0x9b56x13[_0x66c2[21]]+ _0x9b56x6[_0x66c2[12]]+ _0x9b56xf++,VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]})};if(!_0x9b56x6[_0x66c2[10]]&&  !_0x9b56x6[_0x66c2[11]] &&  !_0x9b56x10[_0x66c2[10]]){_0x9b56x6[_0x66c2[11]]= true;_0x9b56x11[_0x66c2[20]]({type:_0x9b56x10[_0x66c2[14]],app:_0x66c2[42],context:_0x9b56x10[_0x66c2[15]],exten:_0x9b56x10[_0x66c2[5]],priority:_0x9b56x13[_0x66c2[21]]+ _0x9b56x6[_0x66c2[12]]+ _0x9b56xf++,VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]})}}};if(_0x9b56x10[_0x66c2[9]](_0x66c2[43])&& _0x9b56x10[_0x66c2[9]](_0x66c2[44])){if(_0x9b56x10[_0x66c2[43]]){_0x9b56x11[_0x66c2[20]]({type:_0x9b56x10[_0x66c2[14]],app:_0x66c2[45],appdata:_0x66c2[46]+ _0x9b56x10[_0x66c2[44]]+ _0x66c2[47],context:_0x9b56x10[_0x66c2[15]],exten:_0x9b56x10[_0x66c2[5]],priority:_0x9b56x13[_0x66c2[21]]+ _0x9b56x6[_0x66c2[12]]+ _0x9b56xf++,VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]})}};if(_0x9b56x10[_0x66c2[9]](_0x66c2[43])&& _0x9b56x10[_0x66c2[9]](_0x66c2[44])){if(_0x9b56x10[_0x66c2[43]]){_0x9b56x12[_0x66c2[20]]({type:_0x9b56x10[_0x66c2[14]],app:_0x66c2[48],appdata:null,context:_0x9b56x10[_0x66c2[15]],exten:_0x9b56x10[_0x66c2[5]],priority:_0x9b56x13[_0x66c2[21]]+ _0x9b56x6[_0x66c2[12]]+ _0x9b56xf+++  1,VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]})}};for(var _0x9b56x14=0;_0x9b56x14< _0x9b56x13[_0x66c2[21]];_0x9b56x14+= 1){var _0x9b56x15=_0x9b56x6[_0x66c2[12]]+ _0x9b56x13[_0x66c2[21]];var _0x9b56x16=(_0x9b56x14=== (_0x9b56x13[_0x66c2[21]]- 1))?_0x9b56x6[_0x66c2[12]]+ _0x9b56x11[_0x66c2[21]]+ _0x9b56x12[_0x66c2[21]]+ 2:_0x9b56x6[_0x66c2[12]]+ _0x9b56x14+ 1;_0x9b56x11[_0x66c2[53]](_0x9b56x14,0,{type:_0x9b56x10[_0x66c2[14]],app:_0x66c2[49],appdata:_0x9b56x13[_0x9b56x14]+ _0x66c2[50]+ _0x9b56x10[_0x66c2[15]]+ _0x66c2[51]+ _0x9b56x15+ _0x66c2[52]+ _0x9b56x10[_0x66c2[15]]+ _0x66c2[51]+ _0x9b56x16,exten:_0x9b56x10[_0x66c2[5]],context:_0x9b56x10[_0x66c2[15]],priority:_0x9b56x6[_0x66c2[12]]+ _0x9b56x14,VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]})};_0x9b56x10[_0x66c2[12]]= (_0x9b56x11[_0x66c2[21]]?_[_0x66c2[54]](_0x9b56x11)[_0x66c2[12]]+ 1:_0x9b56x6[_0x66c2[12]]);_0x9b56x6[_0x66c2[12]]= (_0x9b56x12[_0x66c2[21]]?_[_0x66c2[54]](_0x9b56x12)[_0x66c2[12]]:_0x9b56x10[_0x66c2[12]])+ 1;_0x9b56x6[_0x66c2[13]]= _[_0x66c2[55]](_0x9b56x6[_0x66c2[13]],_0x9b56x11,[_0x9b56x10],_0x9b56x12)};_0x9b56x6[_0x66c2[13]][_0x66c2[20]]({type:_0x9b56x9[_0x9b56xd][0][_0x66c2[14]],app:_0x66c2[56],exten:_0x9b56x9[_0x9b56xd][0][_0x66c2[5]],context:_0x9b56x9[_0x9b56xd][0][_0x66c2[15]],priority:_0x9b56x6[_0x66c2[12]],VoiceExtensionId:_0x9b56x9[_0x9b56xd][0][_0x66c2[19]]});_0x9b56xb[_0x66c2[20]](_0x9b56x9[_0x9b56xd][0].VoiceExtensionId);_0x9b56xc= _[_0x66c2[55]](_0x9b56xc,_0x9b56x6[_0x66c2[13]])}};return _0x9b56x4[_0x66c2[63]](function(_0x9b56x17){return _0x9b56x4[_0x66c2[60]][_0x66c2[59]][_0x66c2[62]]({where:{VoiceExtensionId:{$in:_0x9b56xb}},transaction:_0x9b56x17})[_0x66c2[61]](function(_0x9b56x18){return _0x9b56x4[_0x66c2[60]][_0x66c2[59]][_0x66c2[58]](_[_0x66c2[57]](_0x9b56xc,_0x66c2[12]),{transaction:_0x9b56x17})})})})[_0x66c2[4]](function(_0x9b56x7){console[_0x66c2[3]](_0x9b56x7)})}exports[_0x66c2[68]]= rewrite
\ No newline at end of file
index fdf19d5..ffa7641 100644 (file)
@@ -1 +1 @@
-var _0x749d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x73\x74\x72\x69\x6E\x67","\x5B\x78\x43\x41\x4C\x4C\x59\x20\x54\x69\x63\x6B\x65\x74\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","","\x71\x75\x65\x75\x65","\x70\x75\x73\x68","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x69\x6E\x62\x6F\x75\x6E\x64","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x43\x61\x6C\x6C","\x64\x65\x73\x74\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x76\x6F\x69\x63\x65","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x2A\x2A\x2A\x20\x43\x61\x6C\x6C\x20\x49\x6E\x66\x6F\x20\x2A\x2A\x2A","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x43\x61\x6C\x6C\x65\x72\x20\x4E\x75\x6D\x62\x65\x72","\x43\x61\x6C\x6C\x65\x72\x20\x4E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x43\x61\x6C\x6C\x20\x54\x6F","\x64\x65\x73\x74\x65\x78\x74\x65\x6E","\x51\x75\x65\x75\x65","\x55\x6E\x69\x71\x75\x65\x49\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","\x44\x61\x74\x65","\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64\x41\x74","\x2A\x2A\x2A\x20\x41\x67\x65\x6E\x74\x20\x49\x6E\x66\x6F\x20\x2A\x2A\x2A","\x41\x67\x65\x6E\x74\x20\x4E\x61\x6D\x65","\x64\x65\x73\x74\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x41\x67\x65\x6E\x74\x20\x4E\x75\x6D\x62\x65\x72","\x2A\x2A\x2A\x20\x54\x69\x6D\x65\x20\x49\x6E\x66\x6F\x20\x2A\x2A\x2A","\x41\x67\x65\x6E\x74\x20\x52\x69\x6E\x67","\x41\x67\x65\x6E\x74\x20\x43\x6F\x6E\x6E\x65\x63\x74","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74\x41\x74","\x41\x67\x65\x6E\x74\x20\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x48\x6F\x6C\x64\x20\x54\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x54\x61\x6C\x6B\x20\x54\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x43\x61\x6C\x6C\x65\x64\x20\x4E\x75\x6D\x62\x65\x72","\x4D\x65\x6D\x62\x65\x72\x20\x4E\x61\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x41\x6E\x73\x77\x65\x72\x20\x54\x69\x6D\x65","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x20\x54\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65"];_0x749d[0];exports[_0x749d[1]]= function(_0x1952x1,_0x1952x2){var _0x1952x3=[{type:_0x749d[2],content:_0x749d[3],variableName:null}];switch(_0x1952x1[_0x749d[13]]()){case _0x749d[14]:switch(_0x1952x2[_0x749d[13]]()){case _0x749d[9]:_0x1952x3[_0x749d[7]]({type:_0x749d[4],content:_0x749d[5],variableName:_0x749d[6]});_0x1952x3[_0x749d[7]]({type:_0x749d[4],content:_0x749d[5],variableName:_0x749d[8]});break;case _0x749d[12]:_0x1952x3[_0x749d[7]]({type:_0x749d[2],content:_0x749d[10],variableName:null});_0x1952x3[_0x749d[7]]({type:_0x749d[4],content:_0x749d[5],variableName:_0x749d[11]});break}};return _0x1952x3};exports[_0x749d[15]]= function(_0x1952x1,_0x1952x2){var _0x1952x4=[];switch(_0x1952x1[_0x749d[13]]()){case _0x749d[14]:switch(_0x1952x2[_0x749d[13]]()){case _0x749d[9]:_0x1952x4= [{type:_0x749d[2],content:_0x749d[16],key:null,keyType:null,variableName:null},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[18],keyType:_0x749d[4],variableName:_0x749d[8]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[19],keyType:_0x749d[4],variableName:_0x749d[20]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[21],keyType:_0x749d[4],variableName:_0x749d[22]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[23],keyType:_0x749d[4],variableName:_0x749d[6]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[24],keyType:_0x749d[4],variableName:_0x749d[25]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[26],keyType:_0x749d[4],variableName:_0x749d[27]},{type:_0x749d[2],content:_0x749d[28],key:null,keyType:null,variableName:null},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[29],keyType:_0x749d[4],variableName:_0x749d[30]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[31],keyType:_0x749d[4],variableName:_0x749d[11]},{type:_0x749d[2],content:_0x749d[32],key:null,keyType:null,variableName:null},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[33],keyType:_0x749d[4],variableName:_0x749d[27]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[34],keyType:_0x749d[4],variableName:_0x749d[35]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[36],keyType:_0x749d[4],variableName:_0x749d[37]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[38],keyType:_0x749d[4],variableName:_0x749d[39]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[40],keyType:_0x749d[4],variableName:_0x749d[41]}];break;case _0x749d[12]:_0x1952x4= [{type:_0x749d[2],content:_0x749d[16],variableName:null},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[42],keyType:_0x749d[4],keyContent:_0x749d[5],variableName:_0x749d[11]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[43],keyType:_0x749d[4],keyContent:_0x749d[5],variableName:_0x749d[44]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[24],keyType:_0x749d[4],keyContent:_0x749d[5],variableName:_0x749d[25]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[26],keyType:_0x749d[4],keyContent:_0x749d[5],variableName:_0x749d[45]},{type:_0x749d[2],content:_0x749d[32]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[46],keyType:_0x749d[4],keyContent:_0x749d[5],variableName:_0x749d[47]},{type:_0x749d[17],content:_0x749d[5],key:_0x749d[48],keyType:_0x749d[4],keyContent:_0x749d[5],variableName:_0x749d[49]}];break}};return _0x1952x4}
\ No newline at end of file
+var _0x361b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x67\x65\x74\x53\x75\x62\x6A\x65\x63\x74\x73","\x73\x74\x72\x69\x6E\x67","\x5B\x78\x43\x41\x4C\x4C\x59\x20\x54\x69\x63\x6B\x65\x74\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","","\x71\x75\x65\x75\x65","\x70\x75\x73\x68","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x69\x6E\x62\x6F\x75\x6E\x64","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x43\x61\x6C\x6C","\x64\x65\x73\x74\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x76\x6F\x69\x63\x65","\x67\x65\x74\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x2A\x2A\x2A\x20\x43\x61\x6C\x6C\x20\x49\x6E\x66\x6F\x20\x2A\x2A\x2A","\x6B\x65\x79\x56\x61\x6C\x75\x65","\x43\x61\x6C\x6C\x65\x72\x20\x4E\x75\x6D\x62\x65\x72","\x43\x61\x6C\x6C\x65\x72\x20\x4E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x43\x61\x6C\x6C\x20\x54\x6F","\x64\x65\x73\x74\x65\x78\x74\x65\x6E","\x51\x75\x65\x75\x65","\x55\x6E\x69\x71\x75\x65\x49\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","\x44\x61\x74\x65","\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64\x41\x74","\x2A\x2A\x2A\x20\x41\x67\x65\x6E\x74\x20\x49\x6E\x66\x6F\x20\x2A\x2A\x2A","\x41\x67\x65\x6E\x74\x20\x4E\x61\x6D\x65","\x64\x65\x73\x74\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x41\x67\x65\x6E\x74\x20\x4E\x75\x6D\x62\x65\x72","\x2A\x2A\x2A\x20\x54\x69\x6D\x65\x20\x49\x6E\x66\x6F\x20\x2A\x2A\x2A","\x41\x67\x65\x6E\x74\x20\x52\x69\x6E\x67","\x41\x67\x65\x6E\x74\x20\x43\x6F\x6E\x6E\x65\x63\x74","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74\x41\x74","\x41\x67\x65\x6E\x74\x20\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x48\x6F\x6C\x64\x20\x54\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x54\x61\x6C\x6B\x20\x54\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x43\x61\x6C\x6C\x65\x64\x20\x4E\x75\x6D\x62\x65\x72","\x4D\x65\x6D\x62\x65\x72\x20\x4E\x61\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x41\x6E\x73\x77\x65\x72\x20\x54\x69\x6D\x65","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x20\x54\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65"];_0x361b[0];exports[_0x361b[1]]= function(_0xa144x1,_0xa144x2){var _0xa144x3=[{type:_0x361b[2],content:_0x361b[3],variableName:null}];switch(_0xa144x1[_0x361b[13]]()){case _0x361b[14]:switch(_0xa144x2[_0x361b[13]]()){case _0x361b[9]:_0xa144x3[_0x361b[7]]({type:_0x361b[4],content:_0x361b[5],variableName:_0x361b[6]});_0xa144x3[_0x361b[7]]({type:_0x361b[4],content:_0x361b[5],variableName:_0x361b[8]});break;case _0x361b[12]:_0xa144x3[_0x361b[7]]({type:_0x361b[2],content:_0x361b[10],variableName:null});_0xa144x3[_0x361b[7]]({type:_0x361b[4],content:_0x361b[5],variableName:_0x361b[11]});break}};return _0xa144x3};exports[_0x361b[15]]= function(_0xa144x1,_0xa144x2){var _0xa144x4=[];switch(_0xa144x1[_0x361b[13]]()){case _0x361b[14]:switch(_0xa144x2[_0x361b[13]]()){case _0x361b[9]:_0xa144x4= [{type:_0x361b[2],content:_0x361b[16],key:null,keyType:null,variableName:null},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[18],keyType:_0x361b[4],variableName:_0x361b[8]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[19],keyType:_0x361b[4],variableName:_0x361b[20]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[21],keyType:_0x361b[4],variableName:_0x361b[22]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[23],keyType:_0x361b[4],variableName:_0x361b[6]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[24],keyType:_0x361b[4],variableName:_0x361b[25]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[26],keyType:_0x361b[4],variableName:_0x361b[27]},{type:_0x361b[2],content:_0x361b[28],key:null,keyType:null,variableName:null},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[29],keyType:_0x361b[4],variableName:_0x361b[30]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[31],keyType:_0x361b[4],variableName:_0x361b[11]},{type:_0x361b[2],content:_0x361b[32],key:null,keyType:null,variableName:null},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[33],keyType:_0x361b[4],variableName:_0x361b[27]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[34],keyType:_0x361b[4],variableName:_0x361b[35]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[36],keyType:_0x361b[4],variableName:_0x361b[37]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[38],keyType:_0x361b[4],variableName:_0x361b[39]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[40],keyType:_0x361b[4],variableName:_0x361b[41]}];break;case _0x361b[12]:_0xa144x4= [{type:_0x361b[2],content:_0x361b[16],variableName:null},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[42],keyType:_0x361b[4],keyContent:_0x361b[5],variableName:_0x361b[11]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[43],keyType:_0x361b[4],keyContent:_0x361b[5],variableName:_0x361b[44]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[24],keyType:_0x361b[4],keyContent:_0x361b[5],variableName:_0x361b[25]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[26],keyType:_0x361b[4],keyContent:_0x361b[5],variableName:_0x361b[45]},{type:_0x361b[2],content:_0x361b[32]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[46],keyType:_0x361b[4],keyContent:_0x361b[5],variableName:_0x361b[47]},{type:_0x361b[17],content:_0x361b[5],key:_0x361b[48],keyType:_0x361b[4],keyContent:_0x361b[5],variableName:_0x361b[49]}];break}};return _0xa144x4}
\ No newline at end of file
index 91d2dbc..45603f6 100644 (file)
@@ -1 +1 @@
-var _0xcc61=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x63\x72\x79\x70\x74\x6F","\x75\x74\x69\x6C","\x63\x6F\x6D\x70\x6F\x73\x61\x62\x6C\x65\x2D\x6D\x69\x64\x64\x6C\x65\x77\x61\x72\x65","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x61\x74\x61\x31","\x6C\x69\x63\x65\x6E\x73\x65","\x2D","\x73\x70\x6C\x69\x74","\x61\x65\x73\x2D\x32\x35\x36\x2D\x63\x74\x72","\x25\x73\x3A\x25\x73\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65\x44\x65\x63\x69\x70\x68\x65\x72","\x62\x61\x73\x65\x36\x34","\x75\x74\x66\x38","\x75\x70\x64\x61\x74\x65","\x66\x69\x6E\x61\x6C","\x70\x61\x72\x73\x65","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x63\x61\x74\x63\x68","\x4D\x61\x78\x69\x6D\x75\x6D\x20\x25\x73\x20\x6C\x69\x6D\x69\x74\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x72\x65\x61\x63\x68\x65\x64","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64\x4F\x6E\x65","\x4C\x69\x63\x65\x6E\x73\x65","\x75\x73\x65","\x75\x73\x65\x72\x73","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x69\x73\x55\x73\x65\x72\x4C\x69\x6D\x69\x74"];_0xcc61[0];var crypto=require(_0xcc61[1]);var util=require(_0xcc61[2]);var compose=require(_0xcc61[3]);var db=require(_0xcc61[5])[_0xcc61[4]];var config=require(_0xcc61[6]);function getValueFromLicense(_0x6fd5x7,_0x6fd5x8){if(_0x6fd5x7&& _0x6fd5x8){if(_0x6fd5x8[_0xcc61[7]]&& _0x6fd5x8[_0xcc61[8]]){var _0x6fd5x9=_0x6fd5x8[_0xcc61[7]];var _0x6fd5xa=_0x6fd5x8[_0xcc61[8]];var _0x6fd5xb=_0x6fd5x9[_0xcc61[10]](_0xcc61[9])[4];var _0x6fd5xc=_0x6fd5x9[_0xcc61[10]](_0xcc61[9])[0];var _0x6fd5xd=crypto[_0xcc61[14]](_0xcc61[11],util[_0xcc61[13]](_0xcc61[12],_0x6fd5xb,_0x6fd5x9,_0x6fd5xc));var _0x6fd5xe=_0x6fd5xd[_0xcc61[17]](_0x6fd5xa,_0xcc61[15],_0xcc61[16]);_0x6fd5xe+= _0x6fd5xd[_0xcc61[18]](_0xcc61[16]);var _0x6fd5xf=JSON[_0xcc61[19]](_0x6fd5xe);return _0x6fd5xf[_0xcc61[20]](_0x6fd5x7)?_0x6fd5xf[_0x6fd5x7]:null}};return null}function isLimit(_0x6fd5xa,_0x6fd5x11,_0x6fd5x12,_0x6fd5x13){var _0x6fd5x14=_0x6fd5x11;return compose()[_0xcc61[29]](function(_0x6fd5x15,_0x6fd5x16,_0x6fd5x17){return db[_0xcc61[28]][_0xcc61[27]]({where:{id:1},raw:true})[_0xcc61[25]](function(_0x6fd5x8){var _0x6fd5x1a=getValueFromLicense(_0x6fd5xa,_0x6fd5x8);return _0x6fd5x1a?_0x6fd5x1a:_0x6fd5x14})[_0xcc61[25]](function(_0x6fd5x1a){_0x6fd5x14= _0x6fd5x1a;return _0x6fd5x12[_0xcc61[26]](_0x6fd5x13)})[_0xcc61[25]](function(_0x6fd5x19){if(_0x6fd5x19>= _0x6fd5x14){return _0x6fd5x16[_0xcc61[24]](403)[_0xcc61[23]]({message:util[_0xcc61[13]](_0xcc61[22],_0x6fd5xa)})};_0x6fd5x17()})[_0xcc61[21]](function(_0x6fd5x18){_0x6fd5x17(_0x6fd5x18)})})}function isUserLimit(){return isLimit(_0xcc61[30],1,db.User,{where:{$or:[{role:_0xcc61[31]},{role:_0xcc61[32]}]}})}exports[_0xcc61[33]]= isUserLimit
\ No newline at end of file
+var _0x56ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x63\x72\x79\x70\x74\x6F","\x75\x74\x69\x6C","\x63\x6F\x6D\x70\x6F\x73\x61\x62\x6C\x65\x2D\x6D\x69\x64\x64\x6C\x65\x77\x61\x72\x65","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x61\x74\x61\x31","\x6C\x69\x63\x65\x6E\x73\x65","\x2D","\x73\x70\x6C\x69\x74","\x61\x65\x73\x2D\x32\x35\x36\x2D\x63\x74\x72","\x25\x73\x3A\x25\x73\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65\x44\x65\x63\x69\x70\x68\x65\x72","\x62\x61\x73\x65\x36\x34","\x75\x74\x66\x38","\x75\x70\x64\x61\x74\x65","\x66\x69\x6E\x61\x6C","\x70\x61\x72\x73\x65","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x63\x61\x74\x63\x68","\x4D\x61\x78\x69\x6D\x75\x6D\x20\x25\x73\x20\x6C\x69\x6D\x69\x74\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x72\x65\x61\x63\x68\x65\x64","\x6A\x73\x6F\x6E","\x73\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x63\x6F\x75\x6E\x74","\x66\x69\x6E\x64\x4F\x6E\x65","\x4C\x69\x63\x65\x6E\x73\x65","\x75\x73\x65","\x75\x73\x65\x72\x73","\x61\x64\x6D\x69\x6E","\x75\x73\x65\x72","\x69\x73\x55\x73\x65\x72\x4C\x69\x6D\x69\x74"];_0x56ee[0];var crypto=require(_0x56ee[1]);var util=require(_0x56ee[2]);var compose=require(_0x56ee[3]);var db=require(_0x56ee[5])[_0x56ee[4]];var config=require(_0x56ee[6]);function getValueFromLicense(_0x5c40x7,_0x5c40x8){if(_0x5c40x7&& _0x5c40x8){if(_0x5c40x8[_0x56ee[7]]&& _0x5c40x8[_0x56ee[8]]){var _0x5c40x9=_0x5c40x8[_0x56ee[7]];var _0x5c40xa=_0x5c40x8[_0x56ee[8]];var _0x5c40xb=_0x5c40x9[_0x56ee[10]](_0x56ee[9])[4];var _0x5c40xc=_0x5c40x9[_0x56ee[10]](_0x56ee[9])[0];var _0x5c40xd=crypto[_0x56ee[14]](_0x56ee[11],util[_0x56ee[13]](_0x56ee[12],_0x5c40xb,_0x5c40x9,_0x5c40xc));var _0x5c40xe=_0x5c40xd[_0x56ee[17]](_0x5c40xa,_0x56ee[15],_0x56ee[16]);_0x5c40xe+= _0x5c40xd[_0x56ee[18]](_0x56ee[16]);var _0x5c40xf=JSON[_0x56ee[19]](_0x5c40xe);return _0x5c40xf[_0x56ee[20]](_0x5c40x7)?_0x5c40xf[_0x5c40x7]:null}};return null}function isLimit(_0x5c40xa,_0x5c40x11,_0x5c40x12,_0x5c40x13){var _0x5c40x14=_0x5c40x11;return compose()[_0x56ee[29]](function(_0x5c40x15,_0x5c40x16,_0x5c40x17){return db[_0x56ee[28]][_0x56ee[27]]({where:{id:1},raw:true})[_0x56ee[25]](function(_0x5c40x8){var _0x5c40x1a=getValueFromLicense(_0x5c40xa,_0x5c40x8);return _0x5c40x1a?_0x5c40x1a:_0x5c40x14})[_0x56ee[25]](function(_0x5c40x1a){_0x5c40x14= _0x5c40x1a;return _0x5c40x12[_0x56ee[26]](_0x5c40x13)})[_0x56ee[25]](function(_0x5c40x19){if(_0x5c40x19>= _0x5c40x14){return _0x5c40x16[_0x56ee[24]](403)[_0x56ee[23]]({message:util[_0x56ee[13]](_0x56ee[22],_0x5c40xa)})};_0x5c40x17()})[_0x56ee[21]](function(_0x5c40x18){_0x5c40x17(_0x5c40x18)})})}function isUserLimit(){return isLimit(_0x56ee[30],1,db.User,{where:{$or:[{role:_0x56ee[31]},{role:_0x56ee[32]}]}})}exports[_0x56ee[33]]= isUserLimit
\ No newline at end of file
index 45cd1fe..84eecff 100644 (file)
@@ -1 +1 @@
-var _0x4973=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x65\x6C\x64\x73","\x2C","\x73\x70\x6C\x69\x74","\x66\x69\x6C\x74\x65\x72\x73","\x69\x73\x45\x6D\x70\x74\x79","\x70\x61\x72\x73\x65","\x66\x6F\x72\x4F\x77\x6E","\x6C\x69\x6D\x69\x74","\x6F\x66\x66\x73\x65\x74","\x73\x6F\x72\x74","\x2D","\x69\x6E\x64\x65\x78\x4F\x66","\x70\x72\x69\x6F\x72\x69\x74\x79","\x63\x6F\x6C","\x75\x6E\x73\x69\x67\x6E\x65\x64","\x63\x61\x73\x74","\x73\x75\x62\x73\x74\x72","\x44\x45\x53\x43","\x41\x53\x43","\x6D\x61\x70"];_0x4973[0];var _=require(_0x4973[1]);var sequelize=require(_0x4973[2]);var LIMIT_VALUE=250;exports[_0x4973[3]]= function(_0x3552x4){var _0x3552x5=null;if(_0x3552x4){_0x3552x5= _0x3552x4[_0x4973[5]](_0x4973[4])};return _0x3552x5};exports[_0x4973[6]]= function(_0x3552x4){var _0x3552x6=null;if(!_[_0x4973[7]](_0x3552x4)){_0x3552x6= {};_[_0x4973[9]](_0x3552x4,function(_0x3552x7,_0x3552x8){try{_0x3552x6[_0x3552x8]= JSON[_0x4973[8]](_0x3552x7)}catch(err){_0x3552x6[_0x3552x8]= _0x3552x7[_0x4973[5]](_0x4973[4])}})};return _0x3552x6};exports[_0x4973[10]]= function(_0x3552x7){_0x3552x7= parseInt(_0x3552x7,10);if(!_0x3552x7|| _0x3552x7< 0){_0x3552x7= LIMIT_VALUE};return _0x3552x7};exports[_0x4973[11]]= function(_0x3552x7){_0x3552x7= parseInt(_0x3552x7,10);if(!_0x3552x7|| _0x3552x7< 0){_0x3552x7= 0};return _0x3552x7};exports[_0x4973[12]]= function(_0x3552x4){var _0x3552x9,_0x3552xa=null;if(_0x3552x4){_0x3552x9= _0x3552x4[_0x4973[5]](_0x4973[4]);_0x3552xa= _[_0x4973[22]](_0x3552x9,function(_0x3552xb){if(_0x3552xb[_0x4973[14]](_0x4973[13])=== 0){return [_0x3552xb=== _0x4973[15]?sequelize[_0x4973[18]](sequelize[_0x4973[16]](_0x4973[15]),_0x4973[17]):_0x3552xb[_0x4973[19]](1),_0x4973[20]]}else {return [_0x3552xb=== _0x4973[15]?sequelize[_0x4973[18]](sequelize[_0x4973[16]](_0x4973[15]),_0x4973[17]):_0x3552xb,_0x4973[21]]}})};return _0x3552xa}
\ No newline at end of file
+var _0x97a2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x66\x69\x65\x6C\x64\x73","\x2C","\x73\x70\x6C\x69\x74","\x66\x69\x6C\x74\x65\x72\x73","\x69\x73\x45\x6D\x70\x74\x79","\x70\x61\x72\x73\x65","\x66\x6F\x72\x4F\x77\x6E","\x6C\x69\x6D\x69\x74","\x6F\x66\x66\x73\x65\x74","\x73\x6F\x72\x74","\x2D","\x69\x6E\x64\x65\x78\x4F\x66","\x70\x72\x69\x6F\x72\x69\x74\x79","\x63\x6F\x6C","\x75\x6E\x73\x69\x67\x6E\x65\x64","\x63\x61\x73\x74","\x73\x75\x62\x73\x74\x72","\x44\x45\x53\x43","\x41\x53\x43","\x6D\x61\x70"];_0x97a2[0];var _=require(_0x97a2[1]);var sequelize=require(_0x97a2[2]);var LIMIT_VALUE=250;exports[_0x97a2[3]]= function(_0x7708x4){var _0x7708x5=null;if(_0x7708x4){_0x7708x5= _0x7708x4[_0x97a2[5]](_0x97a2[4])};return _0x7708x5};exports[_0x97a2[6]]= function(_0x7708x4){var _0x7708x6=null;if(!_[_0x97a2[7]](_0x7708x4)){_0x7708x6= {};_[_0x97a2[9]](_0x7708x4,function(_0x7708x7,_0x7708x8){try{_0x7708x6[_0x7708x8]= JSON[_0x97a2[8]](_0x7708x7)}catch(err){_0x7708x6[_0x7708x8]= _0x7708x7[_0x97a2[5]](_0x97a2[4])}})};return _0x7708x6};exports[_0x97a2[10]]= function(_0x7708x7){_0x7708x7= parseInt(_0x7708x7,10);if(!_0x7708x7|| _0x7708x7< 0){_0x7708x7= LIMIT_VALUE};return _0x7708x7};exports[_0x97a2[11]]= function(_0x7708x7){_0x7708x7= parseInt(_0x7708x7,10);if(!_0x7708x7|| _0x7708x7< 0){_0x7708x7= 0};return _0x7708x7};exports[_0x97a2[12]]= function(_0x7708x4){var _0x7708x9,_0x7708xa=null;if(_0x7708x4){_0x7708x9= _0x7708x4[_0x97a2[5]](_0x97a2[4]);_0x7708xa= _[_0x97a2[22]](_0x7708x9,function(_0x7708xb){if(_0x7708xb[_0x97a2[14]](_0x97a2[13])=== 0){return [_0x7708xb=== _0x97a2[15]?sequelize[_0x97a2[18]](sequelize[_0x97a2[16]](_0x97a2[15]),_0x97a2[17]):_0x7708xb[_0x97a2[19]](1),_0x97a2[20]]}else {return [_0x7708xb=== _0x97a2[15]?sequelize[_0x97a2[18]](sequelize[_0x97a2[16]](_0x97a2[15]),_0x97a2[17]):_0x7708xb,_0x97a2[21]]}})};return _0x7708xa}
\ No newline at end of file
index 3288b6f..fd5fcca 100644 (file)
@@ -1 +1 @@
-var _0x1c24=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x6F\x74\x69\x6F\x6E\x32","\x72\x6F\x6F\x74","\x70\x65\x70\x70\x65\x38\x38","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x6D\x79\x73\x71\x6C","\x75\x74\x66\x38","\x75\x74\x66\x38\x5F\x67\x65\x6E\x65\x72\x61\x6C\x5F\x63\x69","\x31\x39\x32\x2E\x31\x36\x38\x2E\x32\x2E\x31\x33\x30","\x35\x30\x33\x38","\x78\x63\x61\x6C\x6C","\x78\x63\x61\x6C\x6C\x31\x32\x33\x34","\x52\x50\x43\x50\x4F\x52\x54","\x65\x6E\x76","\x52\x50\x43\x49\x50","\x41\x47\x49\x50\x4F\x52\x54","\x41\x47\x49\x49\x50","\x47\x4F\x4F\x47\x4C\x45\x5F\x49\x44","\x32\x30\x34\x39\x32\x35\x39\x33\x35\x35\x39\x33\x2D\x70\x39\x68\x70\x6B\x35\x61\x62\x31\x63\x33\x66\x75\x6A\x69\x72\x6A\x6E\x65\x61\x63\x30\x6D\x76\x6F\x63\x39\x71\x35\x72\x39\x62\x2E\x61\x70\x70\x73\x2E\x67\x6F\x6F\x67\x6C\x65\x75\x73\x65\x72\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x63\x6F\x6D","\x47\x4F\x4F\x47\x4C\x45\x5F\x53\x45\x43\x52\x45\x54","\x36\x6C\x38\x50\x37\x63\x74\x41\x37\x4A\x55\x6D\x30\x68\x37\x46\x6F\x45\x30\x54\x6E\x6D\x64\x32","\x44\x4F\x4D\x41\x49\x4E","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x3A\x39\x30\x30\x30","\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x2F\x67\x6F\x6F\x67\x6C\x65\x2F\x63\x61\x6C\x6C\x62\x61\x63\x6B"];_0x1c24[0];module[_0x1c24[1]]= {sequelize:{database:_0x1c24[2],username:_0x1c24[3],password:_0x1c24[4],options:{host:_0x1c24[5],port:3306,dialect:_0x1c24[6],logging:false,define:{charset:_0x1c24[7],collate:_0x1c24[8]}}},sequelizeHistory:{database:_0x1c24[2],username:_0x1c24[3],password:_0x1c24[4],options:{host:_0x1c24[5],port:3306,dialect:_0x1c24[6],logging:false,define:{charset:_0x1c24[7],collate:_0x1c24[8]}}},asterisk:{ip:_0x1c24[9],port:_0x1c24[10],username:_0x1c24[11],password:_0x1c24[12]},rpc:{port:process[_0x1c24[14]][_0x1c24[13]]|| 9001,ip:process[_0x1c24[14]][_0x1c24[15]]|| _0x1c24[5]},agi:{port:process[_0x1c24[14]][_0x1c24[16]]|| 4573,ip:process[_0x1c24[14]][_0x1c24[17]]|| _0x1c24[5]},seedDB:true,google:{clientID:process[_0x1c24[14]][_0x1c24[18]]|| _0x1c24[19],clientSecret:process[_0x1c24[14]][_0x1c24[20]]|| _0x1c24[21],callbackURL:(process[_0x1c24[14]][_0x1c24[22]]|| _0x1c24[23])+ _0x1c24[24]}}
\ No newline at end of file
+var _0xfdf1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x6F\x74\x69\x6F\x6E\x32","\x78\x63\x61\x6C\x6C","\x78\x43\x40\x4C\x4C\x31\x32\x33\x34","\x31\x39\x32\x2E\x31\x36\x38\x2E\x32\x2E\x31\x33\x30","\x6D\x79\x73\x71\x6C","\x75\x74\x66\x38","\x75\x74\x66\x38\x5F\x67\x65\x6E\x65\x72\x61\x6C\x5F\x63\x69","\x35\x30\x33\x38","\x78\x63\x61\x6C\x6C\x31\x32\x33\x34","\x52\x50\x43\x50\x4F\x52\x54","\x65\x6E\x76","\x52\x50\x43\x49\x50","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x41\x47\x49\x50\x4F\x52\x54","\x41\x47\x49\x49\x50","\x47\x4F\x4F\x47\x4C\x45\x5F\x49\x44","\x32\x30\x34\x39\x32\x35\x39\x33\x35\x35\x39\x33\x2D\x70\x39\x68\x70\x6B\x35\x61\x62\x31\x63\x33\x66\x75\x6A\x69\x72\x6A\x6E\x65\x61\x63\x30\x6D\x76\x6F\x63\x39\x71\x35\x72\x39\x62\x2E\x61\x70\x70\x73\x2E\x67\x6F\x6F\x67\x6C\x65\x75\x73\x65\x72\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x63\x6F\x6D","\x47\x4F\x4F\x47\x4C\x45\x5F\x53\x45\x43\x52\x45\x54","\x36\x6C\x38\x50\x37\x63\x74\x41\x37\x4A\x55\x6D\x30\x68\x37\x46\x6F\x45\x30\x54\x6E\x6D\x64\x32","\x44\x4F\x4D\x41\x49\x4E","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x3A\x39\x30\x30\x30","\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x2F\x67\x6F\x6F\x67\x6C\x65\x2F\x63\x61\x6C\x6C\x62\x61\x63\x6B"];_0xfdf1[0];module[_0xfdf1[1]]= {sequelize:{database:_0xfdf1[2],username:_0xfdf1[3],password:_0xfdf1[4],options:{host:_0xfdf1[5],port:3306,dialect:_0xfdf1[6],logging:false,define:{charset:_0xfdf1[7],collate:_0xfdf1[8]}}},sequelizeHistory:{database:_0xfdf1[2],username:_0xfdf1[3],password:_0xfdf1[4],options:{host:_0xfdf1[5],port:3306,dialect:_0xfdf1[6],logging:false,define:{charset:_0xfdf1[7],collate:_0xfdf1[8]}}},asterisk:{ip:_0xfdf1[5],port:_0xfdf1[9],username:_0xfdf1[3],password:_0xfdf1[10]},rpc:{port:process[_0xfdf1[12]][_0xfdf1[11]]|| 9001,ip:process[_0xfdf1[12]][_0xfdf1[13]]|| _0xfdf1[14]},agi:{port:process[_0xfdf1[12]][_0xfdf1[15]]|| 4573,ip:process[_0xfdf1[12]][_0xfdf1[16]]|| _0xfdf1[14]},seedDB:true,google:{clientID:process[_0xfdf1[12]][_0xfdf1[17]]|| _0xfdf1[18],clientSecret:process[_0xfdf1[12]][_0xfdf1[19]]|| _0xfdf1[20],callbackURL:(process[_0xfdf1[12]][_0xfdf1[21]]|| _0xfdf1[22])+ _0xfdf1[23]}}
\ No newline at end of file
index d9ccff2..ae48018 100644 (file)
@@ -1 +1 @@
-var _0x567e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x74\x68","\x6C\x6F\x64\x61\x73\x68","\x4E\x4F\x44\x45\x5F\x45\x4E\x56","\x65\x6E\x76","\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E","\x6E\x6F\x72\x6D\x61\x6C\x69\x7A\x65","\x42\x52\x4F\x57\x53\x45\x52\x5F\x53\x59\x4E\x43\x5F\x50\x4F\x52\x54","\x50\x4F\x52\x54","\x49\x50","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x73\x65\x73\x73\x69\x6F\x6E\x2D\x73\x65\x63\x72\x65\x74","\x65\x78\x70\x6F\x72\x74\x73","\x2E\x2F\x73\x68\x61\x72\x65\x64","\x2E\x2F","\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74","\x2E\x6A\x73","\x6D\x65\x72\x67\x65"];_0x567e[0];var path=require(_0x567e[1]);var _=require(_0x567e[2]);var all={env:process[_0x567e[4]][_0x567e[3]],root:path[_0x567e[6]](__dirname+ _0x567e[5]),browserSyncPort:process[_0x567e[4]][_0x567e[7]]|| 3000,port:process[_0x567e[4]][_0x567e[8]]|| 9000,ip:process[_0x567e[4]][_0x567e[9]]|| _0x567e[10],seedDB:false,secrets:{session:_0x567e[11]}};module[_0x567e[12]]= _[_0x567e[17]](all,require(_0x567e[13]),require(_0x567e[14]+ (process[_0x567e[4]][_0x567e[3]]|| _0x567e[15])+ _0x567e[16])|| {})
\ No newline at end of file
+var _0x1c42=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x74\x68","\x6C\x6F\x64\x61\x73\x68","\x4E\x4F\x44\x45\x5F\x45\x4E\x56","\x65\x6E\x76","\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E","\x6E\x6F\x72\x6D\x61\x6C\x69\x7A\x65","\x42\x52\x4F\x57\x53\x45\x52\x5F\x53\x59\x4E\x43\x5F\x50\x4F\x52\x54","\x50\x4F\x52\x54","\x49\x50","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x73\x65\x73\x73\x69\x6F\x6E\x2D\x73\x65\x63\x72\x65\x74","\x65\x78\x70\x6F\x72\x74\x73","\x2E\x2F\x73\x68\x61\x72\x65\x64","\x2E\x2F","\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74","\x2E\x6A\x73","\x6D\x65\x72\x67\x65"];_0x1c42[0];var path=require(_0x1c42[1]);var _=require(_0x1c42[2]);var all={env:process[_0x1c42[4]][_0x1c42[3]],root:path[_0x1c42[6]](__dirname+ _0x1c42[5]),browserSyncPort:process[_0x1c42[4]][_0x1c42[7]]|| 3000,port:process[_0x1c42[4]][_0x1c42[8]]|| 9000,ip:process[_0x1c42[4]][_0x1c42[9]]|| _0x1c42[10],seedDB:false,secrets:{session:_0x1c42[11]}};module[_0x1c42[12]]= _[_0x1c42[17]](all,require(_0x1c42[13]),require(_0x1c42[14]+ (process[_0x1c42[4]][_0x1c42[3]]|| _0x1c42[15])+ _0x1c42[16])|| {})
\ No newline at end of file
index efadc69..e1d108c 100644 (file)
@@ -1 +1 @@
-var _0x32c7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x67\x75\x65\x73\x74","\x75\x73\x65\x72","\x61\x64\x6D\x69\x6E","\x45\x75\x72\x6F\x70\x65\x2F\x41\x6E\x64\x6F\x72\x72\x61","\x2B\x30\x31\x3A\x30\x30","\x41\x44","\x41\x73\x69\x61\x2F\x44\x75\x62\x61\x69","\x2B\x30\x34\x3A\x30\x30","\x41\x45","\x4F\x4D","\x41\x73\x69\x61\x2F\x4B\x61\x62\x75\x6C","\x2B\x30\x34\x3A\x33\x30","\x41\x46","\x45\x75\x72\x6F\x70\x65\x2F\x54\x69\x72\x61\x6E\x65","\x41\x4C","\x41\x73\x69\x61\x2F\x59\x65\x72\x65\x76\x61\x6E","\x41\x4D","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x52\x6F\x74\x68\x65\x72\x61","\x2D\x30\x33\x3A\x30\x30","\x41\x51","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x50\x61\x6C\x6D\x65\x72","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x4D\x61\x77\x73\x6F\x6E","\x2B\x30\x35\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x44\x61\x76\x69\x73","\x2B\x30\x37\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x43\x61\x73\x65\x79","\x2B\x30\x38\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x56\x6F\x73\x74\x6F\x6B","\x2B\x30\x36\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x44\x75\x6D\x6F\x6E\x74\x44\x55\x72\x76\x69\x6C\x6C\x65","\x2B\x31\x30\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x53\x79\x6F\x77\x61","\x2B\x30\x33\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x54\x72\x6F\x6C\x6C","\x2B\x30\x30\x3A\x30\x30","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x42\x75\x65\x6E\x6F\x73\x5F\x41\x69\x72\x65\x73","\x41\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x43\x6F\x72\x64\x6F\x62\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6C\x74\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4A\x75\x6A\x75\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x54\x75\x63\x75\x6D\x61\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x43\x61\x74\x61\x6D\x61\x72\x63\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4C\x61\x5F\x52\x69\x6F\x6A\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6E\x5F\x4A\x75\x61\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4D\x65\x6E\x64\x6F\x7A\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6E\x5F\x4C\x75\x69\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x52\x69\x6F\x5F\x47\x61\x6C\x6C\x65\x67\x6F\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x55\x73\x68\x75\x61\x69\x61","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x61\x67\x6F\x5F\x50\x61\x67\x6F","\x2D\x31\x31\x3A\x30\x30","\x41\x53","\x55\x4D","\x45\x75\x72\x6F\x70\x65\x2F\x56\x69\x65\x6E\x6E\x61","\x41\x54","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4C\x6F\x72\x64\x5F\x48\x6F\x77\x65","\x2B\x31\x31\x3A\x30\x30","\x41\x55","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x4D\x61\x63\x71\x75\x61\x72\x69\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x48\x6F\x62\x61\x72\x74","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x43\x75\x72\x72\x69\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4D\x65\x6C\x62\x6F\x75\x72\x6E\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x53\x79\x64\x6E\x65\x79","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x42\x72\x6F\x6B\x65\x6E\x5F\x48\x69\x6C\x6C","\x2B\x31\x30\x3A\x33\x30","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x42\x72\x69\x73\x62\x61\x6E\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4C\x69\x6E\x64\x65\x6D\x61\x6E","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x41\x64\x65\x6C\x61\x69\x64\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x44\x61\x72\x77\x69\x6E","\x2B\x30\x39\x3A\x33\x30","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x50\x65\x72\x74\x68","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x45\x75\x63\x6C\x61","\x2B\x30\x38\x3A\x34\x35","\x41\x73\x69\x61\x2F\x42\x61\x6B\x75","\x41\x5A","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x72\x62\x61\x64\x6F\x73","\x2D\x30\x34\x3A\x30\x30","\x42\x42","\x41\x73\x69\x61\x2F\x44\x68\x61\x6B\x61","\x42\x44","\x45\x75\x72\x6F\x70\x65\x2F\x42\x72\x75\x73\x73\x65\x6C\x73","\x42\x45","\x45\x75\x72\x6F\x70\x65\x2F\x53\x6F\x66\x69\x61","\x2B\x30\x32\x3A\x30\x30","\x42\x47","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x42\x65\x72\x6D\x75\x64\x61","\x42\x4D","\x41\x73\x69\x61\x2F\x42\x72\x75\x6E\x65\x69","\x42\x4E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x61\x5F\x50\x61\x7A","\x42\x4F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x6F\x6E\x68\x61","\x2D\x30\x32\x3A\x30\x30","\x42\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x65\x6C\x65\x6D","\x41\x6D\x65\x72\x69\x63\x61\x2F\x46\x6F\x72\x74\x61\x6C\x65\x7A\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x63\x69\x66\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x61\x67\x75\x61\x69\x6E\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x63\x65\x69\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x68\x69\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6F\x5F\x50\x61\x75\x6C\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6D\x70\x6F\x5F\x47\x72\x61\x6E\x64\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x75\x69\x61\x62\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x61\x72\x65\x6D","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x6F\x5F\x56\x65\x6C\x68\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x61\x5F\x56\x69\x73\x74\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x6E\x61\x75\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x69\x72\x75\x6E\x65\x70\x65","\x2D\x30\x35\x3A\x30\x30","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x69\x6F\x5F\x42\x72\x61\x6E\x63\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x61\x73\x73\x61\x75","\x42\x53","\x41\x73\x69\x61\x2F\x54\x68\x69\x6D\x70\x68\x75","\x42\x54","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x69\x6E\x73\x6B","\x42\x59","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x65\x6C\x69\x7A\x65","\x2D\x30\x36\x3A\x30\x30","\x42\x5A","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x74\x5F\x4A\x6F\x68\x6E\x73","\x2D\x30\x33\x3A\x33\x30","\x43\x41","\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x61\x6C\x69\x66\x61\x78","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6C\x61\x63\x65\x5F\x42\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x63\x74\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6F\x6F\x73\x65\x5F\x42\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6C\x61\x6E\x63\x2D\x53\x61\x62\x6C\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x6F\x72\x6F\x6E\x74\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x69\x70\x69\x67\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x68\x75\x6E\x64\x65\x72\x5F\x42\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x71\x61\x6C\x75\x69\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x6E\x67\x6E\x69\x72\x74\x75\x6E\x67","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x73\x6F\x6C\x75\x74\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x74\x69\x6B\x6F\x6B\x61\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x61\x6E\x6B\x69\x6E\x5F\x49\x6E\x6C\x65\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x57\x69\x6E\x6E\x69\x70\x65\x67","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x61\x69\x6E\x79\x5F\x52\x69\x76\x65\x72","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x67\x69\x6E\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x77\x69\x66\x74\x5F\x43\x75\x72\x72\x65\x6E\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x64\x6D\x6F\x6E\x74\x6F\x6E","\x2D\x30\x37\x3A\x30\x30","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6D\x62\x72\x69\x64\x67\x65\x5F\x42\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x59\x65\x6C\x6C\x6F\x77\x6B\x6E\x69\x66\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x75\x76\x69\x6B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x72\x65\x73\x74\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x77\x73\x6F\x6E\x5F\x43\x72\x65\x65\x6B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x46\x6F\x72\x74\x5F\x4E\x65\x6C\x73\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x56\x61\x6E\x63\x6F\x75\x76\x65\x72","\x2D\x30\x38\x3A\x30\x30","\x41\x6D\x65\x72\x69\x63\x61\x2F\x57\x68\x69\x74\x65\x68\x6F\x72\x73\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x77\x73\x6F\x6E","\x49\x6E\x64\x69\x61\x6E\x2F\x43\x6F\x63\x6F\x73","\x2B\x30\x36\x3A\x33\x30","\x43\x43","\x45\x75\x72\x6F\x70\x65\x2F\x5A\x75\x72\x69\x63\x68","\x43\x48","\x44\x45","\x4C\x49","\x41\x66\x72\x69\x63\x61\x2F\x41\x62\x69\x64\x6A\x61\x6E","\x43\x49","\x42\x46","\x47\x4D","\x47\x4E","\x4D\x4C","\x4D\x52","\x53\x48","\x53\x4C","\x53\x4E","\x53\x54","\x54\x47","\x50\x61\x63\x69\x66\x69\x63\x2F\x52\x61\x72\x6F\x74\x6F\x6E\x67\x61","\x2D\x31\x30\x3A\x30\x30","\x43\x4B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x69\x61\x67\x6F","\x43\x4C","\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x61\x73\x74\x65\x72","\x41\x73\x69\x61\x2F\x53\x68\x61\x6E\x67\x68\x61\x69","\x43\x4E","\x41\x73\x69\x61\x2F\x55\x72\x75\x6D\x71\x69","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x67\x6F\x74\x61","\x43\x4F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x6F\x73\x74\x61\x5F\x52\x69\x63\x61","\x43\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x61\x76\x61\x6E\x61","\x43\x55","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x43\x61\x70\x65\x5F\x56\x65\x72\x64\x65","\x2D\x30\x31\x3A\x30\x30","\x43\x56","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x75\x72\x61\x63\x61\x6F","\x43\x57","\x41\x57","\x42\x51","\x53\x58","\x49\x6E\x64\x69\x61\x6E\x2F\x43\x68\x72\x69\x73\x74\x6D\x61\x73","\x43\x58","\x41\x73\x69\x61\x2F\x4E\x69\x63\x6F\x73\x69\x61","\x43\x59","\x45\x75\x72\x6F\x70\x65\x2F\x50\x72\x61\x67\x75\x65","\x43\x5A","\x53\x4B","\x45\x75\x72\x6F\x70\x65\x2F\x42\x65\x72\x6C\x69\x6E","\x45\x75\x72\x6F\x70\x65\x2F\x43\x6F\x70\x65\x6E\x68\x61\x67\x65\x6E","\x44\x4B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x6F\x5F\x44\x6F\x6D\x69\x6E\x67\x6F","\x44\x4F","\x41\x66\x72\x69\x63\x61\x2F\x41\x6C\x67\x69\x65\x72\x73","\x44\x5A","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x61\x79\x61\x71\x75\x69\x6C","\x45\x43","\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x61\x6C\x61\x70\x61\x67\x6F\x73","\x45\x75\x72\x6F\x70\x65\x2F\x54\x61\x6C\x6C\x69\x6E\x6E","\x45\x45","\x41\x66\x72\x69\x63\x61\x2F\x43\x61\x69\x72\x6F","\x45\x47","\x41\x66\x72\x69\x63\x61\x2F\x45\x6C\x5F\x41\x61\x69\x75\x6E","\x45\x48","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x61\x64\x72\x69\x64","\x45\x53","\x41\x66\x72\x69\x63\x61\x2F\x43\x65\x75\x74\x61","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x43\x61\x6E\x61\x72\x79","\x45\x75\x72\x6F\x70\x65\x2F\x48\x65\x6C\x73\x69\x6E\x6B\x69","\x46\x49","\x41\x58","\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x69\x6A\x69","\x2B\x31\x32\x3A\x30\x30","\x46\x4A","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x53\x74\x61\x6E\x6C\x65\x79","\x46\x4B","\x50\x61\x63\x69\x66\x69\x63\x2F\x43\x68\x75\x75\x6B","\x46\x4D","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x6F\x68\x6E\x70\x65\x69","\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x6F\x73\x72\x61\x65","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x46\x61\x72\x6F\x65","\x46\x4F","\x45\x75\x72\x6F\x70\x65\x2F\x50\x61\x72\x69\x73","\x46\x52","\x45\x75\x72\x6F\x70\x65\x2F\x4C\x6F\x6E\x64\x6F\x6E","\x47\x42","\x47\x47","\x49\x4D","\x4A\x45","\x41\x73\x69\x61\x2F\x54\x62\x69\x6C\x69\x73\x69","\x47\x45","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x79\x65\x6E\x6E\x65","\x47\x46","\x41\x66\x72\x69\x63\x61\x2F\x41\x63\x63\x72\x61","\x47\x48","\x45\x75\x72\x6F\x70\x65\x2F\x47\x69\x62\x72\x61\x6C\x74\x61\x72","\x47\x49","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6F\x64\x74\x68\x61\x62","\x47\x4C","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x6E\x6D\x61\x72\x6B\x73\x68\x61\x76\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x63\x6F\x72\x65\x73\x62\x79\x73\x75\x6E\x64","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x68\x75\x6C\x65","\x45\x75\x72\x6F\x70\x65\x2F\x41\x74\x68\x65\x6E\x73","\x47\x52","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x53\x6F\x75\x74\x68\x5F\x47\x65\x6F\x72\x67\x69\x61","\x47\x53","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x61\x74\x65\x6D\x61\x6C\x61","\x47\x54","\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x75\x61\x6D","\x47\x55","\x4D\x50","\x41\x66\x72\x69\x63\x61\x2F\x42\x69\x73\x73\x61\x75","\x47\x57","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x79\x61\x6E\x61","\x47\x59","\x41\x73\x69\x61\x2F\x48\x6F\x6E\x67\x5F\x4B\x6F\x6E\x67","\x48\x4B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x65\x67\x75\x63\x69\x67\x61\x6C\x70\x61","\x48\x4E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x2D\x61\x75\x2D\x50\x72\x69\x6E\x63\x65","\x48\x54","\x45\x75\x72\x6F\x70\x65\x2F\x42\x75\x64\x61\x70\x65\x73\x74","\x48\x55","\x41\x73\x69\x61\x2F\x4A\x61\x6B\x61\x72\x74\x61","\x49\x44","\x41\x73\x69\x61\x2F\x50\x6F\x6E\x74\x69\x61\x6E\x61\x6B","\x41\x73\x69\x61\x2F\x4D\x61\x6B\x61\x73\x73\x61\x72","\x41\x73\x69\x61\x2F\x4A\x61\x79\x61\x70\x75\x72\x61","\x2B\x30\x39\x3A\x30\x30","\x45\x75\x72\x6F\x70\x65\x2F\x44\x75\x62\x6C\x69\x6E","\x49\x45","\x41\x73\x69\x61\x2F\x4A\x65\x72\x75\x73\x61\x6C\x65\x6D","\x49\x4C","\x41\x73\x69\x61\x2F\x4B\x6F\x6C\x6B\x61\x74\x61","\x2B\x30\x35\x3A\x33\x30","\x49\x4E","\x49\x6E\x64\x69\x61\x6E\x2F\x43\x68\x61\x67\x6F\x73","\x49\x4F","\x41\x73\x69\x61\x2F\x42\x61\x67\x68\x64\x61\x64","\x49\x51","\x41\x73\x69\x61\x2F\x54\x65\x68\x72\x61\x6E","\x2B\x30\x33\x3A\x33\x30","\x49\x52","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x52\x65\x79\x6B\x6A\x61\x76\x69\x6B","\x49\x53","\x45\x75\x72\x6F\x70\x65\x2F\x52\x6F\x6D\x65","\x49\x54","\x53\x4D","\x56\x41","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4A\x61\x6D\x61\x69\x63\x61","\x4A\x4D","\x41\x73\x69\x61\x2F\x41\x6D\x6D\x61\x6E","\x4A\x4F","\x41\x73\x69\x61\x2F\x54\x6F\x6B\x79\x6F","\x4A\x50","\x41\x66\x72\x69\x63\x61\x2F\x4E\x61\x69\x72\x6F\x62\x69","\x4B\x45","\x44\x4A","\x45\x52","\x45\x54","\x4B\x4D","\x4D\x47","\x53\x4F","\x54\x5A","\x55\x47","\x59\x54","\x41\x73\x69\x61\x2F\x42\x69\x73\x68\x6B\x65\x6B","\x4B\x47","\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x61\x72\x61\x77\x61","\x4B\x49","\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x6E\x64\x65\x72\x62\x75\x72\x79","\x2B\x31\x33\x3A\x30\x30","\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x69\x72\x69\x74\x69\x6D\x61\x74\x69","\x2B\x31\x34\x3A\x30\x30","\x41\x73\x69\x61\x2F\x50\x79\x6F\x6E\x67\x79\x61\x6E\x67","\x2B\x30\x38\x3A\x33\x30","\x4B\x50","\x41\x73\x69\x61\x2F\x53\x65\x6F\x75\x6C","\x4B\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x79\x6D\x61\x6E","\x4B\x59","\x41\x73\x69\x61\x2F\x41\x6C\x6D\x61\x74\x79","\x4B\x5A","\x41\x73\x69\x61\x2F\x51\x79\x7A\x79\x6C\x6F\x72\x64\x61","\x41\x73\x69\x61\x2F\x41\x71\x74\x6F\x62\x65","\x41\x73\x69\x61\x2F\x41\x71\x74\x61\x75","\x41\x73\x69\x61\x2F\x4F\x72\x61\x6C","\x41\x73\x69\x61\x2F\x42\x65\x69\x72\x75\x74","\x4C\x42","\x41\x73\x69\x61\x2F\x43\x6F\x6C\x6F\x6D\x62\x6F","\x4C\x4B","\x41\x66\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x72\x6F\x76\x69\x61","\x4C\x52","\x45\x75\x72\x6F\x70\x65\x2F\x56\x69\x6C\x6E\x69\x75\x73","\x4C\x54","\x45\x75\x72\x6F\x70\x65\x2F\x4C\x75\x78\x65\x6D\x62\x6F\x75\x72\x67","\x4C\x55","\x45\x75\x72\x6F\x70\x65\x2F\x52\x69\x67\x61","\x4C\x56","\x41\x66\x72\x69\x63\x61\x2F\x54\x72\x69\x70\x6F\x6C\x69","\x4C\x59","\x41\x66\x72\x69\x63\x61\x2F\x43\x61\x73\x61\x62\x6C\x61\x6E\x63\x61","\x4D\x41","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x6F\x6E\x61\x63\x6F","\x4D\x43","\x45\x75\x72\x6F\x70\x65\x2F\x43\x68\x69\x73\x69\x6E\x61\x75","\x4D\x44","\x50\x61\x63\x69\x66\x69\x63\x2F\x4D\x61\x6A\x75\x72\x6F","\x4D\x48","\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x77\x61\x6A\x61\x6C\x65\x69\x6E","\x41\x73\x69\x61\x2F\x52\x61\x6E\x67\x6F\x6F\x6E","\x4D\x4D","\x41\x73\x69\x61\x2F\x55\x6C\x61\x61\x6E\x62\x61\x61\x74\x61\x72","\x4D\x4E","\x41\x73\x69\x61\x2F\x48\x6F\x76\x64","\x41\x73\x69\x61\x2F\x43\x68\x6F\x69\x62\x61\x6C\x73\x61\x6E","\x41\x73\x69\x61\x2F\x4D\x61\x63\x61\x75","\x4D\x4F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x72\x74\x69\x6E\x69\x71\x75\x65","\x4D\x51","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x61\x6C\x74\x61","\x4D\x54","\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x75\x72\x69\x74\x69\x75\x73","\x4D\x55","\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x6C\x64\x69\x76\x65\x73","\x4D\x56","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x78\x69\x63\x6F\x5F\x43\x69\x74\x79","\x4D\x58","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6E\x63\x75\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x72\x69\x64\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x74\x65\x72\x72\x65\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x74\x61\x6D\x6F\x72\x6F\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x7A\x61\x74\x6C\x61\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x68\x69\x68\x75\x61\x68\x75\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4F\x6A\x69\x6E\x61\x67\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x65\x72\x6D\x6F\x73\x69\x6C\x6C\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x69\x6A\x75\x61\x6E\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x61\x5F\x49\x73\x61\x62\x65\x6C","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x68\x69\x61\x5F\x42\x61\x6E\x64\x65\x72\x61\x73","\x41\x73\x69\x61\x2F\x4B\x75\x61\x6C\x61\x5F\x4C\x75\x6D\x70\x75\x72","\x4D\x59","\x41\x73\x69\x61\x2F\x4B\x75\x63\x68\x69\x6E\x67","\x41\x66\x72\x69\x63\x61\x2F\x4D\x61\x70\x75\x74\x6F","\x4D\x5A","\x42\x49","\x42\x57","\x43\x44","\x4D\x57","\x52\x57","\x5A\x4D","\x5A\x57","\x41\x66\x72\x69\x63\x61\x2F\x57\x69\x6E\x64\x68\x6F\x65\x6B","\x4E\x41","\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x6F\x75\x6D\x65\x61","\x4E\x43","\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x6F\x72\x66\x6F\x6C\x6B","\x4E\x46","\x41\x66\x72\x69\x63\x61\x2F\x4C\x61\x67\x6F\x73","\x4E\x47","\x41\x4F","\x42\x4A","\x43\x46","\x43\x47","\x43\x4D","\x47\x41","\x47\x51","\x4E\x45","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x6E\x61\x67\x75\x61","\x4E\x49","\x45\x75\x72\x6F\x70\x65\x2F\x41\x6D\x73\x74\x65\x72\x64\x61\x6D","\x4E\x4C","\x45\x75\x72\x6F\x70\x65\x2F\x4F\x73\x6C\x6F","\x4E\x4F","\x53\x4A","\x41\x73\x69\x61\x2F\x4B\x61\x74\x68\x6D\x61\x6E\x64\x75","\x2B\x30\x35\x3A\x34\x35","\x4E\x50","\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x61\x75\x72\x75","\x4E\x52","\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x69\x75\x65","\x4E\x55","\x50\x61\x63\x69\x66\x69\x63\x2F\x41\x75\x63\x6B\x6C\x61\x6E\x64","\x4E\x5A","\x50\x61\x63\x69\x66\x69\x63\x2F\x43\x68\x61\x74\x68\x61\x6D","\x2B\x31\x33\x3A\x34\x35","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x6E\x61\x6D\x61","\x50\x41","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x69\x6D\x61","\x50\x45","\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x61\x68\x69\x74\x69","\x50\x46","\x50\x61\x63\x69\x66\x69\x63\x2F\x4D\x61\x72\x71\x75\x65\x73\x61\x73","\x2D\x30\x39\x3A\x33\x30","\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x61\x6D\x62\x69\x65\x72","\x2D\x30\x39\x3A\x30\x30","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x6F\x72\x74\x5F\x4D\x6F\x72\x65\x73\x62\x79","\x50\x47","\x50\x61\x63\x69\x66\x69\x63\x2F\x42\x6F\x75\x67\x61\x69\x6E\x76\x69\x6C\x6C\x65","\x41\x73\x69\x61\x2F\x4D\x61\x6E\x69\x6C\x61","\x50\x48","\x41\x73\x69\x61\x2F\x4B\x61\x72\x61\x63\x68\x69","\x50\x4B","\x45\x75\x72\x6F\x70\x65\x2F\x57\x61\x72\x73\x61\x77","\x50\x4C","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x69\x71\x75\x65\x6C\x6F\x6E","\x50\x4D","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x69\x74\x63\x61\x69\x72\x6E","\x50\x4E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x75\x65\x72\x74\x6F\x5F\x52\x69\x63\x6F","\x50\x52","\x41\x73\x69\x61\x2F\x47\x61\x7A\x61","\x50\x53","\x41\x73\x69\x61\x2F\x48\x65\x62\x72\x6F\x6E","\x45\x75\x72\x6F\x70\x65\x2F\x4C\x69\x73\x62\x6F\x6E","\x50\x54","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x4D\x61\x64\x65\x69\x72\x61","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x41\x7A\x6F\x72\x65\x73","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x61\x6C\x61\x75","\x50\x57","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x73\x75\x6E\x63\x69\x6F\x6E","\x50\x59","\x41\x73\x69\x61\x2F\x51\x61\x74\x61\x72","\x51\x41","\x42\x48","\x49\x6E\x64\x69\x61\x6E\x2F\x52\x65\x75\x6E\x69\x6F\x6E","\x52\x45","\x54\x46","\x45\x75\x72\x6F\x70\x65\x2F\x42\x75\x63\x68\x61\x72\x65\x73\x74","\x52\x4F","\x45\x75\x72\x6F\x70\x65\x2F\x42\x65\x6C\x67\x72\x61\x64\x65","\x52\x53","\x42\x41","\x48\x52","\x4D\x45","\x4D\x4B","\x53\x49","\x45\x75\x72\x6F\x70\x65\x2F\x4B\x61\x6C\x69\x6E\x69\x6E\x67\x72\x61\x64","\x52\x55","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x6F\x73\x63\x6F\x77","\x45\x75\x72\x6F\x70\x65\x2F\x53\x69\x6D\x66\x65\x72\x6F\x70\x6F\x6C","\x45\x75\x72\x6F\x70\x65\x2F\x56\x6F\x6C\x67\x6F\x67\x72\x61\x64","\x45\x75\x72\x6F\x70\x65\x2F\x53\x61\x6D\x61\x72\x61","\x41\x73\x69\x61\x2F\x59\x65\x6B\x61\x74\x65\x72\x69\x6E\x62\x75\x72\x67","\x41\x73\x69\x61\x2F\x4F\x6D\x73\x6B","\x41\x73\x69\x61\x2F\x4E\x6F\x76\x6F\x73\x69\x62\x69\x72\x73\x6B","\x41\x73\x69\x61\x2F\x4E\x6F\x76\x6F\x6B\x75\x7A\x6E\x65\x74\x73\x6B","\x41\x73\x69\x61\x2F\x4B\x72\x61\x73\x6E\x6F\x79\x61\x72\x73\x6B","\x41\x73\x69\x61\x2F\x49\x72\x6B\x75\x74\x73\x6B","\x41\x73\x69\x61\x2F\x43\x68\x69\x74\x61","\x41\x73\x69\x61\x2F\x59\x61\x6B\x75\x74\x73\x6B","\x41\x73\x69\x61\x2F\x4B\x68\x61\x6E\x64\x79\x67\x61","\x41\x73\x69\x61\x2F\x56\x6C\x61\x64\x69\x76\x6F\x73\x74\x6F\x6B","\x41\x73\x69\x61\x2F\x53\x61\x6B\x68\x61\x6C\x69\x6E","\x41\x73\x69\x61\x2F\x55\x73\x74\x2D\x4E\x65\x72\x61","\x41\x73\x69\x61\x2F\x4D\x61\x67\x61\x64\x61\x6E","\x41\x73\x69\x61\x2F\x53\x72\x65\x64\x6E\x65\x6B\x6F\x6C\x79\x6D\x73\x6B","\x41\x73\x69\x61\x2F\x4B\x61\x6D\x63\x68\x61\x74\x6B\x61","\x41\x73\x69\x61\x2F\x41\x6E\x61\x64\x79\x72","\x41\x73\x69\x61\x2F\x52\x69\x79\x61\x64\x68","\x53\x41","\x4B\x57","\x59\x45","\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x75\x61\x64\x61\x6C\x63\x61\x6E\x61\x6C","\x53\x42","\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x68\x65","\x53\x43","\x41\x66\x72\x69\x63\x61\x2F\x4B\x68\x61\x72\x74\x6F\x75\x6D","\x53\x44","\x53\x53","\x45\x75\x72\x6F\x70\x65\x2F\x53\x74\x6F\x63\x6B\x68\x6F\x6C\x6D","\x53\x45","\x41\x73\x69\x61\x2F\x53\x69\x6E\x67\x61\x70\x6F\x72\x65","\x53\x47","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x72\x61\x6D\x61\x72\x69\x62\x6F","\x53\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x6C\x5F\x53\x61\x6C\x76\x61\x64\x6F\x72","\x53\x56","\x41\x73\x69\x61\x2F\x44\x61\x6D\x61\x73\x63\x75\x73","\x53\x59","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x72\x61\x6E\x64\x5F\x54\x75\x72\x6B","\x54\x43","\x41\x66\x72\x69\x63\x61\x2F\x4E\x64\x6A\x61\x6D\x65\x6E\x61","\x54\x44","\x49\x6E\x64\x69\x61\x6E\x2F\x4B\x65\x72\x67\x75\x65\x6C\x65\x6E","\x41\x73\x69\x61\x2F\x42\x61\x6E\x67\x6B\x6F\x6B","\x54\x48","\x4B\x48","\x4C\x41","\x56\x4E","\x41\x73\x69\x61\x2F\x44\x75\x73\x68\x61\x6E\x62\x65","\x54\x4A","\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x61\x6B\x61\x6F\x66\x6F","\x54\x4B","\x41\x73\x69\x61\x2F\x44\x69\x6C\x69","\x54\x4C","\x41\x73\x69\x61\x2F\x41\x73\x68\x67\x61\x62\x61\x74","\x54\x4D","\x41\x66\x72\x69\x63\x61\x2F\x54\x75\x6E\x69\x73","\x54\x4E","\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x6F\x6E\x67\x61\x74\x61\x70\x75","\x54\x4F","\x45\x75\x72\x6F\x70\x65\x2F\x49\x73\x74\x61\x6E\x62\x75\x6C","\x54\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x5F\x6F\x66\x5F\x53\x70\x61\x69\x6E","\x54\x54","\x41\x47","\x41\x49","\x42\x4C","\x44\x4D","\x47\x44","\x47\x50","\x4B\x4E","\x4C\x43","\x4D\x46","\x4D\x53","\x56\x43","\x56\x47","\x56\x49","\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x75\x6E\x61\x66\x75\x74\x69","\x54\x56","\x41\x73\x69\x61\x2F\x54\x61\x69\x70\x65\x69","\x54\x57","\x45\x75\x72\x6F\x70\x65\x2F\x4B\x69\x65\x76","\x55\x41","\x45\x75\x72\x6F\x70\x65\x2F\x55\x7A\x68\x67\x6F\x72\x6F\x64","\x45\x75\x72\x6F\x70\x65\x2F\x5A\x61\x70\x6F\x72\x6F\x7A\x68\x79\x65","\x50\x61\x63\x69\x66\x69\x63\x2F\x57\x61\x6B\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x65\x77\x5F\x59\x6F\x72\x6B","\x55\x53","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x65\x74\x72\x6F\x69\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4B\x65\x6E\x74\x75\x63\x6B\x79\x2F\x4C\x6F\x75\x69\x73\x76\x69\x6C\x6C\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4B\x65\x6E\x74\x75\x63\x6B\x79\x2F\x4D\x6F\x6E\x74\x69\x63\x65\x6C\x6C\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x70\x6F\x6C\x69\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x56\x69\x6E\x63\x65\x6E\x6E\x65\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x57\x69\x6E\x61\x6D\x61\x63","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x4D\x61\x72\x65\x6E\x67\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x50\x65\x74\x65\x72\x73\x62\x75\x72\x67","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x56\x65\x76\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x68\x69\x63\x61\x67\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x54\x65\x6C\x6C\x5F\x43\x69\x74\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x4B\x6E\x6F\x78","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x6E\x6F\x6D\x69\x6E\x65\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x43\x65\x6E\x74\x65\x72","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x4E\x65\x77\x5F\x53\x61\x6C\x65\x6D","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x42\x65\x75\x6C\x61\x68","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x65\x6E\x76\x65\x72","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x69\x73\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x68\x6F\x65\x6E\x69\x78","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x6F\x73\x5F\x41\x6E\x67\x65\x6C\x65\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x74\x6C\x61\x6B\x61\x74\x6C\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x6E\x63\x68\x6F\x72\x61\x67\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4A\x75\x6E\x65\x61\x75","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x69\x74\x6B\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x59\x61\x6B\x75\x74\x61\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x6D\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x64\x61\x6B","\x50\x61\x63\x69\x66\x69\x63\x2F\x48\x6F\x6E\x6F\x6C\x75\x6C\x75","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x74\x65\x76\x69\x64\x65\x6F","\x55\x59","\x41\x73\x69\x61\x2F\x53\x61\x6D\x61\x72\x6B\x61\x6E\x64","\x55\x5A","\x41\x73\x69\x61\x2F\x54\x61\x73\x68\x6B\x65\x6E\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x72\x61\x63\x61\x73","\x2D\x30\x34\x3A\x33\x30","\x56\x45","\x41\x73\x69\x61\x2F\x48\x6F\x5F\x43\x68\x69\x5F\x4D\x69\x6E\x68","\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x66\x61\x74\x65","\x56\x55","\x50\x61\x63\x69\x66\x69\x63\x2F\x57\x61\x6C\x6C\x69\x73","\x57\x46","\x50\x61\x63\x69\x66\x69\x63\x2F\x41\x70\x69\x61","\x57\x53","\x41\x66\x72\x69\x63\x61\x2F\x4A\x6F\x68\x61\x6E\x6E\x65\x73\x62\x75\x72\x67","\x5A\x41","\x4C\x53","\x53\x5A"];_0x32c7[0];exports= module[_0x32c7[1]]= {userRoles:[_0x32c7[2],_0x32c7[3],_0x32c7[4]],timezones:{"\x45\x75\x72\x6F\x70\x65\x2F\x41\x6E\x64\x6F\x72\x72\x61":{name:_0x32c7[5],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[7]]},"\x41\x73\x69\x61\x2F\x44\x75\x62\x61\x69":{name:_0x32c7[8],utcOffset:240,offsetStr:_0x32c7[9],countries:[_0x32c7[10],_0x32c7[11]]},"\x41\x73\x69\x61\x2F\x4B\x61\x62\x75\x6C":{name:_0x32c7[12],utcOffset:270,offsetStr:_0x32c7[13],countries:[_0x32c7[14]]},"\x45\x75\x72\x6F\x70\x65\x2F\x54\x69\x72\x61\x6E\x65":{name:_0x32c7[15],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[16]]},"\x41\x73\x69\x61\x2F\x59\x65\x72\x65\x76\x61\x6E":{name:_0x32c7[17],utcOffset:240,offsetStr:_0x32c7[9],countries:[_0x32c7[18]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x52\x6F\x74\x68\x65\x72\x61":{name:_0x32c7[19],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x50\x61\x6C\x6D\x65\x72":{name:_0x32c7[22],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x4D\x61\x77\x73\x6F\x6E":{name:_0x32c7[23],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x44\x61\x76\x69\x73":{name:_0x32c7[25],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x43\x61\x73\x65\x79":{name:_0x32c7[27],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x56\x6F\x73\x74\x6F\x6B":{name:_0x32c7[29],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x44\x75\x6D\x6F\x6E\x74\x44\x55\x72\x76\x69\x6C\x6C\x65":{name:_0x32c7[31],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x53\x79\x6F\x77\x61":{name:_0x32c7[33],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x54\x72\x6F\x6C\x6C":{name:_0x32c7[35],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[21]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x42\x75\x65\x6E\x6F\x73\x5F\x41\x69\x72\x65\x73":{name:_0x32c7[37],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x43\x6F\x72\x64\x6F\x62\x61":{name:_0x32c7[39],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6C\x74\x61":{name:_0x32c7[40],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4A\x75\x6A\x75\x79":{name:_0x32c7[41],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x54\x75\x63\x75\x6D\x61\x6E":{name:_0x32c7[42],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x43\x61\x74\x61\x6D\x61\x72\x63\x61":{name:_0x32c7[43],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4C\x61\x5F\x52\x69\x6F\x6A\x61":{name:_0x32c7[44],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6E\x5F\x4A\x75\x61\x6E":{name:_0x32c7[45],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4D\x65\x6E\x64\x6F\x7A\x61":{name:_0x32c7[46],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6E\x5F\x4C\x75\x69\x73":{name:_0x32c7[47],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x52\x69\x6F\x5F\x47\x61\x6C\x6C\x65\x67\x6F\x73":{name:_0x32c7[48],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x55\x73\x68\x75\x61\x69\x61":{name:_0x32c7[49],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[38]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x61\x67\x6F\x5F\x50\x61\x67\x6F":{name:_0x32c7[50],utcOffset:-660,offsetStr:_0x32c7[51],countries:[_0x32c7[52],_0x32c7[53]]},"\x45\x75\x72\x6F\x70\x65\x2F\x56\x69\x65\x6E\x6E\x61":{name:_0x32c7[54],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[55]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4C\x6F\x72\x64\x5F\x48\x6F\x77\x65":{name:_0x32c7[56],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[58]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x4D\x61\x63\x71\x75\x61\x72\x69\x65":{name:_0x32c7[59],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x48\x6F\x62\x61\x72\x74":{name:_0x32c7[60],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x43\x75\x72\x72\x69\x65":{name:_0x32c7[61],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4D\x65\x6C\x62\x6F\x75\x72\x6E\x65":{name:_0x32c7[62],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x53\x79\x64\x6E\x65\x79":{name:_0x32c7[63],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x42\x72\x6F\x6B\x65\x6E\x5F\x48\x69\x6C\x6C":{name:_0x32c7[64],utcOffset:630,offsetStr:_0x32c7[65],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x42\x72\x69\x73\x62\x61\x6E\x65":{name:_0x32c7[66],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4C\x69\x6E\x64\x65\x6D\x61\x6E":{name:_0x32c7[67],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x41\x64\x65\x6C\x61\x69\x64\x65":{name:_0x32c7[68],utcOffset:630,offsetStr:_0x32c7[65],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x44\x61\x72\x77\x69\x6E":{name:_0x32c7[69],utcOffset:570,offsetStr:_0x32c7[70],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x50\x65\x72\x74\x68":{name:_0x32c7[71],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x45\x75\x63\x6C\x61":{name:_0x32c7[72],utcOffset:525,offsetStr:_0x32c7[73],countries:[_0x32c7[58]]},"\x41\x73\x69\x61\x2F\x42\x61\x6B\x75":{name:_0x32c7[74],utcOffset:240,offsetStr:_0x32c7[9],countries:[_0x32c7[75]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x72\x62\x61\x64\x6F\x73":{name:_0x32c7[76],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[78]]},"\x41\x73\x69\x61\x2F\x44\x68\x61\x6B\x61":{name:_0x32c7[79],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[80]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x72\x75\x73\x73\x65\x6C\x73":{name:_0x32c7[81],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[82]]},"\x45\x75\x72\x6F\x70\x65\x2F\x53\x6F\x66\x69\x61":{name:_0x32c7[83],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[85]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x42\x65\x72\x6D\x75\x64\x61":{name:_0x32c7[86],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[87]]},"\x41\x73\x69\x61\x2F\x42\x72\x75\x6E\x65\x69":{name:_0x32c7[88],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[89]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x61\x5F\x50\x61\x7A":{name:_0x32c7[90],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[91]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x6F\x6E\x68\x61":{name:_0x32c7[92],utcOffset:-120,offsetStr:_0x32c7[93],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x65\x6C\x65\x6D":{name:_0x32c7[95],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x46\x6F\x72\x74\x61\x6C\x65\x7A\x61":{name:_0x32c7[96],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x63\x69\x66\x65":{name:_0x32c7[97],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x61\x67\x75\x61\x69\x6E\x61":{name:_0x32c7[98],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x63\x65\x69\x6F":{name:_0x32c7[99],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x68\x69\x61":{name:_0x32c7[100],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6F\x5F\x50\x61\x75\x6C\x6F":{name:_0x32c7[101],utcOffset:-120,offsetStr:_0x32c7[93],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6D\x70\x6F\x5F\x47\x72\x61\x6E\x64\x65":{name:_0x32c7[102],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x75\x69\x61\x62\x61":{name:_0x32c7[103],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x61\x72\x65\x6D":{name:_0x32c7[104],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x6F\x5F\x56\x65\x6C\x68\x6F":{name:_0x32c7[105],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x61\x5F\x56\x69\x73\x74\x61":{name:_0x32c7[106],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x6E\x61\x75\x73":{name:_0x32c7[107],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x69\x72\x75\x6E\x65\x70\x65":{name:_0x32c7[108],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x69\x6F\x5F\x42\x72\x61\x6E\x63\x6F":{name:_0x32c7[110],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x61\x73\x73\x61\x75":{name:_0x32c7[111],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[112]]},"\x41\x73\x69\x61\x2F\x54\x68\x69\x6D\x70\x68\x75":{name:_0x32c7[113],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[114]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x69\x6E\x73\x6B":{name:_0x32c7[115],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[116]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x65\x6C\x69\x7A\x65":{name:_0x32c7[117],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[119]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x74\x5F\x4A\x6F\x68\x6E\x73":{name:_0x32c7[120],utcOffset:-210,offsetStr:_0x32c7[121],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x61\x6C\x69\x66\x61\x78":{name:_0x32c7[123],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6C\x61\x63\x65\x5F\x42\x61\x79":{name:_0x32c7[124],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x63\x74\x6F\x6E":{name:_0x32c7[125],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6F\x6F\x73\x65\x5F\x42\x61\x79":{name:_0x32c7[126],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6C\x61\x6E\x63\x2D\x53\x61\x62\x6C\x6F\x6E":{name:_0x32c7[127],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x6F\x72\x6F\x6E\x74\x6F":{name:_0x32c7[128],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x69\x70\x69\x67\x6F\x6E":{name:_0x32c7[129],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x68\x75\x6E\x64\x65\x72\x5F\x42\x61\x79":{name:_0x32c7[130],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x71\x61\x6C\x75\x69\x74":{name:_0x32c7[131],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x6E\x67\x6E\x69\x72\x74\x75\x6E\x67":{name:_0x32c7[132],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x73\x6F\x6C\x75\x74\x65":{name:_0x32c7[133],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x74\x69\x6B\x6F\x6B\x61\x6E":{name:_0x32c7[134],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x61\x6E\x6B\x69\x6E\x5F\x49\x6E\x6C\x65\x74":{name:_0x32c7[135],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x57\x69\x6E\x6E\x69\x70\x65\x67":{name:_0x32c7[136],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x61\x69\x6E\x79\x5F\x52\x69\x76\x65\x72":{name:_0x32c7[137],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x67\x69\x6E\x61":{name:_0x32c7[138],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x77\x69\x66\x74\x5F\x43\x75\x72\x72\x65\x6E\x74":{name:_0x32c7[139],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x64\x6D\x6F\x6E\x74\x6F\x6E":{name:_0x32c7[140],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6D\x62\x72\x69\x64\x67\x65\x5F\x42\x61\x79":{name:_0x32c7[142],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x59\x65\x6C\x6C\x6F\x77\x6B\x6E\x69\x66\x65":{name:_0x32c7[143],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x75\x76\x69\x6B":{name:_0x32c7[144],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x72\x65\x73\x74\x6F\x6E":{name:_0x32c7[145],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x77\x73\x6F\x6E\x5F\x43\x72\x65\x65\x6B":{name:_0x32c7[146],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x46\x6F\x72\x74\x5F\x4E\x65\x6C\x73\x6F\x6E":{name:_0x32c7[147],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x56\x61\x6E\x63\x6F\x75\x76\x65\x72":{name:_0x32c7[148],utcOffset:-480,offsetStr:_0x32c7[149],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x57\x68\x69\x74\x65\x68\x6F\x72\x73\x65":{name:_0x32c7[150],utcOffset:-480,offsetStr:_0x32c7[149],countries:[_0x32c7[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x77\x73\x6F\x6E":{name:_0x32c7[151],utcOffset:-480,offsetStr:_0x32c7[149],countries:[_0x32c7[122]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x43\x6F\x63\x6F\x73":{name:_0x32c7[152],utcOffset:390,offsetStr:_0x32c7[153],countries:[_0x32c7[154]]},"\x45\x75\x72\x6F\x70\x65\x2F\x5A\x75\x72\x69\x63\x68":{name:_0x32c7[155],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[156],_0x32c7[157],_0x32c7[158]]},"\x41\x66\x72\x69\x63\x61\x2F\x41\x62\x69\x64\x6A\x61\x6E":{name:_0x32c7[159],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[160],_0x32c7[161],_0x32c7[162],_0x32c7[163],_0x32c7[164],_0x32c7[165],_0x32c7[166],_0x32c7[167],_0x32c7[168],_0x32c7[169],_0x32c7[170]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x52\x61\x72\x6F\x74\x6F\x6E\x67\x61":{name:_0x32c7[171],utcOffset:-600,offsetStr:_0x32c7[172],countries:[_0x32c7[173]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x69\x61\x67\x6F":{name:_0x32c7[174],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[175]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x61\x73\x74\x65\x72":{name:_0x32c7[176],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[175]]},"\x41\x73\x69\x61\x2F\x53\x68\x61\x6E\x67\x68\x61\x69":{name:_0x32c7[177],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[178]]},"\x41\x73\x69\x61\x2F\x55\x72\x75\x6D\x71\x69":{name:_0x32c7[179],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[178]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x67\x6F\x74\x61":{name:_0x32c7[180],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[181]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x6F\x73\x74\x61\x5F\x52\x69\x63\x61":{name:_0x32c7[182],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[183]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x61\x76\x61\x6E\x61":{name:_0x32c7[184],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[185]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x43\x61\x70\x65\x5F\x56\x65\x72\x64\x65":{name:_0x32c7[186],utcOffset:-60,offsetStr:_0x32c7[187],countries:[_0x32c7[188]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x75\x72\x61\x63\x61\x6F":{name:_0x32c7[189],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[190],_0x32c7[191],_0x32c7[192],_0x32c7[193]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x43\x68\x72\x69\x73\x74\x6D\x61\x73":{name:_0x32c7[194],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[195]]},"\x41\x73\x69\x61\x2F\x4E\x69\x63\x6F\x73\x69\x61":{name:_0x32c7[196],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[197]]},"\x45\x75\x72\x6F\x70\x65\x2F\x50\x72\x61\x67\x75\x65":{name:_0x32c7[198],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[199],_0x32c7[200]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x65\x72\x6C\x69\x6E":{name:_0x32c7[201],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[157]]},"\x45\x75\x72\x6F\x70\x65\x2F\x43\x6F\x70\x65\x6E\x68\x61\x67\x65\x6E":{name:_0x32c7[202],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[203]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x6F\x5F\x44\x6F\x6D\x69\x6E\x67\x6F":{name:_0x32c7[204],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[205]]},"\x41\x66\x72\x69\x63\x61\x2F\x41\x6C\x67\x69\x65\x72\x73":{name:_0x32c7[206],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[207]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x61\x79\x61\x71\x75\x69\x6C":{name:_0x32c7[208],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[209]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x61\x6C\x61\x70\x61\x67\x6F\x73":{name:_0x32c7[210],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[209]]},"\x45\x75\x72\x6F\x70\x65\x2F\x54\x61\x6C\x6C\x69\x6E\x6E":{name:_0x32c7[211],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[212]]},"\x41\x66\x72\x69\x63\x61\x2F\x43\x61\x69\x72\x6F":{name:_0x32c7[213],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[214]]},"\x41\x66\x72\x69\x63\x61\x2F\x45\x6C\x5F\x41\x61\x69\x75\x6E":{name:_0x32c7[215],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[216]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x61\x64\x72\x69\x64":{name:_0x32c7[217],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[218]]},"\x41\x66\x72\x69\x63\x61\x2F\x43\x65\x75\x74\x61":{name:_0x32c7[219],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[218]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x43\x61\x6E\x61\x72\x79":{name:_0x32c7[220],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[218]]},"\x45\x75\x72\x6F\x70\x65\x2F\x48\x65\x6C\x73\x69\x6E\x6B\x69":{name:_0x32c7[221],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[222],_0x32c7[223]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x69\x6A\x69":{name:_0x32c7[224],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[226]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x53\x74\x61\x6E\x6C\x65\x79":{name:_0x32c7[227],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[228]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x43\x68\x75\x75\x6B":{name:_0x32c7[229],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[230]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x6F\x68\x6E\x70\x65\x69":{name:_0x32c7[231],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[230]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x6F\x73\x72\x61\x65":{name:_0x32c7[232],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[230]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x46\x61\x72\x6F\x65":{name:_0x32c7[233],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[234]]},"\x45\x75\x72\x6F\x70\x65\x2F\x50\x61\x72\x69\x73":{name:_0x32c7[235],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[236]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4C\x6F\x6E\x64\x6F\x6E":{name:_0x32c7[237],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[238],_0x32c7[239],_0x32c7[240],_0x32c7[241]]},"\x41\x73\x69\x61\x2F\x54\x62\x69\x6C\x69\x73\x69":{name:_0x32c7[242],utcOffset:240,offsetStr:_0x32c7[9],countries:[_0x32c7[243]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x79\x65\x6E\x6E\x65":{name:_0x32c7[244],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[245]]},"\x41\x66\x72\x69\x63\x61\x2F\x41\x63\x63\x72\x61":{name:_0x32c7[246],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[247]]},"\x45\x75\x72\x6F\x70\x65\x2F\x47\x69\x62\x72\x61\x6C\x74\x61\x72":{name:_0x32c7[248],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[249]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6F\x64\x74\x68\x61\x62":{name:_0x32c7[250],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[251]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x6E\x6D\x61\x72\x6B\x73\x68\x61\x76\x6E":{name:_0x32c7[252],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[251]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x63\x6F\x72\x65\x73\x62\x79\x73\x75\x6E\x64":{name:_0x32c7[253],utcOffset:-60,offsetStr:_0x32c7[187],countries:[_0x32c7[251]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x68\x75\x6C\x65":{name:_0x32c7[254],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[251]]},"\x45\x75\x72\x6F\x70\x65\x2F\x41\x74\x68\x65\x6E\x73":{name:_0x32c7[255],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[256]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x53\x6F\x75\x74\x68\x5F\x47\x65\x6F\x72\x67\x69\x61":{name:_0x32c7[257],utcOffset:-120,offsetStr:_0x32c7[93],countries:[_0x32c7[258]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x61\x74\x65\x6D\x61\x6C\x61":{name:_0x32c7[259],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[260]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x75\x61\x6D":{name:_0x32c7[261],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[262],_0x32c7[263]]},"\x41\x66\x72\x69\x63\x61\x2F\x42\x69\x73\x73\x61\x75":{name:_0x32c7[264],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[265]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x79\x61\x6E\x61":{name:_0x32c7[266],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[267]]},"\x41\x73\x69\x61\x2F\x48\x6F\x6E\x67\x5F\x4B\x6F\x6E\x67":{name:_0x32c7[268],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[269]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x65\x67\x75\x63\x69\x67\x61\x6C\x70\x61":{name:_0x32c7[270],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[271]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x2D\x61\x75\x2D\x50\x72\x69\x6E\x63\x65":{name:_0x32c7[272],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[273]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x75\x64\x61\x70\x65\x73\x74":{name:_0x32c7[274],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[275]]},"\x41\x73\x69\x61\x2F\x4A\x61\x6B\x61\x72\x74\x61":{name:_0x32c7[276],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[277]]},"\x41\x73\x69\x61\x2F\x50\x6F\x6E\x74\x69\x61\x6E\x61\x6B":{name:_0x32c7[278],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[277]]},"\x41\x73\x69\x61\x2F\x4D\x61\x6B\x61\x73\x73\x61\x72":{name:_0x32c7[279],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[277]]},"\x41\x73\x69\x61\x2F\x4A\x61\x79\x61\x70\x75\x72\x61":{name:_0x32c7[280],utcOffset:540,offsetStr:_0x32c7[281],countries:[_0x32c7[277]]},"\x45\x75\x72\x6F\x70\x65\x2F\x44\x75\x62\x6C\x69\x6E":{name:_0x32c7[282],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[283]]},"\x41\x73\x69\x61\x2F\x4A\x65\x72\x75\x73\x61\x6C\x65\x6D":{name:_0x32c7[284],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[285]]},"\x41\x73\x69\x61\x2F\x4B\x6F\x6C\x6B\x61\x74\x61":{name:_0x32c7[286],utcOffset:330,offsetStr:_0x32c7[287],countries:[_0x32c7[288]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x43\x68\x61\x67\x6F\x73":{name:_0x32c7[289],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[290]]},"\x41\x73\x69\x61\x2F\x42\x61\x67\x68\x64\x61\x64":{name:_0x32c7[291],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[292]]},"\x41\x73\x69\x61\x2F\x54\x65\x68\x72\x61\x6E":{name:_0x32c7[293],utcOffset:210,offsetStr:_0x32c7[294],countries:[_0x32c7[295]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x52\x65\x79\x6B\x6A\x61\x76\x69\x6B":{name:_0x32c7[296],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[297]]},"\x45\x75\x72\x6F\x70\x65\x2F\x52\x6F\x6D\x65":{name:_0x32c7[298],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[299],_0x32c7[300],_0x32c7[301]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4A\x61\x6D\x61\x69\x63\x61":{name:_0x32c7[302],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[303]]},"\x41\x73\x69\x61\x2F\x41\x6D\x6D\x61\x6E":{name:_0x32c7[304],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[305]]},"\x41\x73\x69\x61\x2F\x54\x6F\x6B\x79\x6F":{name:_0x32c7[306],utcOffset:540,offsetStr:_0x32c7[281],countries:[_0x32c7[307]]},"\x41\x66\x72\x69\x63\x61\x2F\x4E\x61\x69\x72\x6F\x62\x69":{name:_0x32c7[308],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[309],_0x32c7[310],_0x32c7[311],_0x32c7[312],_0x32c7[313],_0x32c7[314],_0x32c7[315],_0x32c7[316],_0x32c7[317],_0x32c7[318]]},"\x41\x73\x69\x61\x2F\x42\x69\x73\x68\x6B\x65\x6B":{name:_0x32c7[319],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[320]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x61\x72\x61\x77\x61":{name:_0x32c7[321],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[322]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x6E\x64\x65\x72\x62\x75\x72\x79":{name:_0x32c7[323],utcOffset:780,offsetStr:_0x32c7[324],countries:[_0x32c7[322]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x69\x72\x69\x74\x69\x6D\x61\x74\x69":{name:_0x32c7[325],utcOffset:840,offsetStr:_0x32c7[326],countries:[_0x32c7[322]]},"\x41\x73\x69\x61\x2F\x50\x79\x6F\x6E\x67\x79\x61\x6E\x67":{name:_0x32c7[327],utcOffset:510,offsetStr:_0x32c7[328],countries:[_0x32c7[329]]},"\x41\x73\x69\x61\x2F\x53\x65\x6F\x75\x6C":{name:_0x32c7[330],utcOffset:540,offsetStr:_0x32c7[281],countries:[_0x32c7[331]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x79\x6D\x61\x6E":{name:_0x32c7[332],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[333]]},"\x41\x73\x69\x61\x2F\x41\x6C\x6D\x61\x74\x79":{name:_0x32c7[334],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[335]]},"\x41\x73\x69\x61\x2F\x51\x79\x7A\x79\x6C\x6F\x72\x64\x61":{name:_0x32c7[336],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[335]]},"\x41\x73\x69\x61\x2F\x41\x71\x74\x6F\x62\x65":{name:_0x32c7[337],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[335]]},"\x41\x73\x69\x61\x2F\x41\x71\x74\x61\x75":{name:_0x32c7[338],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[335]]},"\x41\x73\x69\x61\x2F\x4F\x72\x61\x6C":{name:_0x32c7[339],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[335]]},"\x41\x73\x69\x61\x2F\x42\x65\x69\x72\x75\x74":{name:_0x32c7[340],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[341]]},"\x41\x73\x69\x61\x2F\x43\x6F\x6C\x6F\x6D\x62\x6F":{name:_0x32c7[342],utcOffset:330,offsetStr:_0x32c7[287],countries:[_0x32c7[343]]},"\x41\x66\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x72\x6F\x76\x69\x61":{name:_0x32c7[344],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[345]]},"\x45\x75\x72\x6F\x70\x65\x2F\x56\x69\x6C\x6E\x69\x75\x73":{name:_0x32c7[346],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[347]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4C\x75\x78\x65\x6D\x62\x6F\x75\x72\x67":{name:_0x32c7[348],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[349]]},"\x45\x75\x72\x6F\x70\x65\x2F\x52\x69\x67\x61":{name:_0x32c7[350],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[351]]},"\x41\x66\x72\x69\x63\x61\x2F\x54\x72\x69\x70\x6F\x6C\x69":{name:_0x32c7[352],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[353]]},"\x41\x66\x72\x69\x63\x61\x2F\x43\x61\x73\x61\x62\x6C\x61\x6E\x63\x61":{name:_0x32c7[354],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[355]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x6F\x6E\x61\x63\x6F":{name:_0x32c7[356],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[357]]},"\x45\x75\x72\x6F\x70\x65\x2F\x43\x68\x69\x73\x69\x6E\x61\x75":{name:_0x32c7[358],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[359]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4D\x61\x6A\x75\x72\x6F":{name:_0x32c7[360],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[361]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x77\x61\x6A\x61\x6C\x65\x69\x6E":{name:_0x32c7[362],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[361]]},"\x41\x73\x69\x61\x2F\x52\x61\x6E\x67\x6F\x6F\x6E":{name:_0x32c7[363],utcOffset:390,offsetStr:_0x32c7[153],countries:[_0x32c7[364]]},"\x41\x73\x69\x61\x2F\x55\x6C\x61\x61\x6E\x62\x61\x61\x74\x61\x72":{name:_0x32c7[365],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[366]]},"\x41\x73\x69\x61\x2F\x48\x6F\x76\x64":{name:_0x32c7[367],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[366]]},"\x41\x73\x69\x61\x2F\x43\x68\x6F\x69\x62\x61\x6C\x73\x61\x6E":{name:_0x32c7[368],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[366]]},"\x41\x73\x69\x61\x2F\x4D\x61\x63\x61\x75":{name:_0x32c7[369],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[370]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x72\x74\x69\x6E\x69\x71\x75\x65":{name:_0x32c7[371],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[372]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x61\x6C\x74\x61":{name:_0x32c7[373],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[374]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x75\x72\x69\x74\x69\x75\x73":{name:_0x32c7[375],utcOffset:240,offsetStr:_0x32c7[9],countries:[_0x32c7[376]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x6C\x64\x69\x76\x65\x73":{name:_0x32c7[377],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[378]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x78\x69\x63\x6F\x5F\x43\x69\x74\x79":{name:_0x32c7[379],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6E\x63\x75\x6E":{name:_0x32c7[381],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x72\x69\x64\x61":{name:_0x32c7[382],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x74\x65\x72\x72\x65\x79":{name:_0x32c7[383],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x74\x61\x6D\x6F\x72\x6F\x73":{name:_0x32c7[384],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x7A\x61\x74\x6C\x61\x6E":{name:_0x32c7[385],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x68\x69\x68\x75\x61\x68\x75\x61":{name:_0x32c7[386],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4F\x6A\x69\x6E\x61\x67\x61":{name:_0x32c7[387],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x65\x72\x6D\x6F\x73\x69\x6C\x6C\x6F":{name:_0x32c7[388],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x69\x6A\x75\x61\x6E\x61":{name:_0x32c7[389],utcOffset:-480,offsetStr:_0x32c7[149],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x61\x5F\x49\x73\x61\x62\x65\x6C":{name:_0x32c7[390],utcOffset:-480,offsetStr:_0x32c7[149],countries:[_0x32c7[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x68\x69\x61\x5F\x42\x61\x6E\x64\x65\x72\x61\x73":{name:_0x32c7[391],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[380]]},"\x41\x73\x69\x61\x2F\x4B\x75\x61\x6C\x61\x5F\x4C\x75\x6D\x70\x75\x72":{name:_0x32c7[392],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[393]]},"\x41\x73\x69\x61\x2F\x4B\x75\x63\x68\x69\x6E\x67":{name:_0x32c7[394],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[393]]},"\x41\x66\x72\x69\x63\x61\x2F\x4D\x61\x70\x75\x74\x6F":{name:_0x32c7[395],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[396],_0x32c7[397],_0x32c7[398],_0x32c7[399],_0x32c7[400],_0x32c7[401],_0x32c7[402],_0x32c7[403]]},"\x41\x66\x72\x69\x63\x61\x2F\x57\x69\x6E\x64\x68\x6F\x65\x6B":{name:_0x32c7[404],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[405]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x6F\x75\x6D\x65\x61":{name:_0x32c7[406],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[407]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x6F\x72\x66\x6F\x6C\x6B":{name:_0x32c7[408],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[409]]},"\x41\x66\x72\x69\x63\x61\x2F\x4C\x61\x67\x6F\x73":{name:_0x32c7[410],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[411],_0x32c7[412],_0x32c7[413],_0x32c7[399],_0x32c7[414],_0x32c7[415],_0x32c7[416],_0x32c7[417],_0x32c7[418],_0x32c7[419]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x6E\x61\x67\x75\x61":{name:_0x32c7[420],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[421]]},"\x45\x75\x72\x6F\x70\x65\x2F\x41\x6D\x73\x74\x65\x72\x64\x61\x6D":{name:_0x32c7[422],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[423]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4F\x73\x6C\x6F":{name:_0x32c7[424],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[425],_0x32c7[426]]},"\x41\x73\x69\x61\x2F\x4B\x61\x74\x68\x6D\x61\x6E\x64\x75":{name:_0x32c7[427],utcOffset:345,offsetStr:_0x32c7[428],countries:[_0x32c7[429]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x61\x75\x72\x75":{name:_0x32c7[430],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[431]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x69\x75\x65":{name:_0x32c7[432],utcOffset:-660,offsetStr:_0x32c7[51],countries:[_0x32c7[433]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x41\x75\x63\x6B\x6C\x61\x6E\x64":{name:_0x32c7[434],utcOffset:780,offsetStr:_0x32c7[324],countries:[_0x32c7[435],_0x32c7[21]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x43\x68\x61\x74\x68\x61\x6D":{name:_0x32c7[436],utcOffset:825,offsetStr:_0x32c7[437],countries:[_0x32c7[435]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x6E\x61\x6D\x61":{name:_0x32c7[438],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[439]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x69\x6D\x61":{name:_0x32c7[440],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[441]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x61\x68\x69\x74\x69":{name:_0x32c7[442],utcOffset:-600,offsetStr:_0x32c7[172],countries:[_0x32c7[443]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4D\x61\x72\x71\x75\x65\x73\x61\x73":{name:_0x32c7[444],utcOffset:-570,offsetStr:_0x32c7[445],countries:[_0x32c7[443]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x61\x6D\x62\x69\x65\x72":{name:_0x32c7[446],utcOffset:-540,offsetStr:_0x32c7[447],countries:[_0x32c7[443]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x6F\x72\x74\x5F\x4D\x6F\x72\x65\x73\x62\x79":{name:_0x32c7[448],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[449]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x42\x6F\x75\x67\x61\x69\x6E\x76\x69\x6C\x6C\x65":{name:_0x32c7[450],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[449]]},"\x41\x73\x69\x61\x2F\x4D\x61\x6E\x69\x6C\x61":{name:_0x32c7[451],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[452]]},"\x41\x73\x69\x61\x2F\x4B\x61\x72\x61\x63\x68\x69":{name:_0x32c7[453],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[454]]},"\x45\x75\x72\x6F\x70\x65\x2F\x57\x61\x72\x73\x61\x77":{name:_0x32c7[455],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[456]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x69\x71\x75\x65\x6C\x6F\x6E":{name:_0x32c7[457],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[458]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x69\x74\x63\x61\x69\x72\x6E":{name:_0x32c7[459],utcOffset:-480,offsetStr:_0x32c7[149],countries:[_0x32c7[460]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x75\x65\x72\x74\x6F\x5F\x52\x69\x63\x6F":{name:_0x32c7[461],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[462]]},"\x41\x73\x69\x61\x2F\x47\x61\x7A\x61":{name:_0x32c7[463],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[464]]},"\x41\x73\x69\x61\x2F\x48\x65\x62\x72\x6F\x6E":{name:_0x32c7[465],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[464]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4C\x69\x73\x62\x6F\x6E":{name:_0x32c7[466],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[467]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x4D\x61\x64\x65\x69\x72\x61":{name:_0x32c7[468],utcOffset:0,offsetStr:_0x32c7[36],countries:[_0x32c7[467]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x41\x7A\x6F\x72\x65\x73":{name:_0x32c7[469],utcOffset:-60,offsetStr:_0x32c7[187],countries:[_0x32c7[467]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x61\x6C\x61\x75":{name:_0x32c7[470],utcOffset:540,offsetStr:_0x32c7[281],countries:[_0x32c7[471]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x73\x75\x6E\x63\x69\x6F\x6E":{name:_0x32c7[472],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[473]]},"\x41\x73\x69\x61\x2F\x51\x61\x74\x61\x72":{name:_0x32c7[474],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[475],_0x32c7[476]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x52\x65\x75\x6E\x69\x6F\x6E":{name:_0x32c7[477],utcOffset:240,offsetStr:_0x32c7[9],countries:[_0x32c7[478],_0x32c7[479]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x75\x63\x68\x61\x72\x65\x73\x74":{name:_0x32c7[480],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[481]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x65\x6C\x67\x72\x61\x64\x65":{name:_0x32c7[482],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[483],_0x32c7[484],_0x32c7[485],_0x32c7[486],_0x32c7[487],_0x32c7[488]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4B\x61\x6C\x69\x6E\x69\x6E\x67\x72\x61\x64":{name:_0x32c7[489],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[490]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x6F\x73\x63\x6F\x77":{name:_0x32c7[491],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[490]]},"\x45\x75\x72\x6F\x70\x65\x2F\x53\x69\x6D\x66\x65\x72\x6F\x70\x6F\x6C":{name:_0x32c7[492],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[490]]},"\x45\x75\x72\x6F\x70\x65\x2F\x56\x6F\x6C\x67\x6F\x67\x72\x61\x64":{name:_0x32c7[493],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[490]]},"\x45\x75\x72\x6F\x70\x65\x2F\x53\x61\x6D\x61\x72\x61":{name:_0x32c7[494],utcOffset:240,offsetStr:_0x32c7[9],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x59\x65\x6B\x61\x74\x65\x72\x69\x6E\x62\x75\x72\x67":{name:_0x32c7[495],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x4F\x6D\x73\x6B":{name:_0x32c7[496],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x4E\x6F\x76\x6F\x73\x69\x62\x69\x72\x73\x6B":{name:_0x32c7[497],utcOffset:360,offsetStr:_0x32c7[30],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x4E\x6F\x76\x6F\x6B\x75\x7A\x6E\x65\x74\x73\x6B":{name:_0x32c7[498],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x4B\x72\x61\x73\x6E\x6F\x79\x61\x72\x73\x6B":{name:_0x32c7[499],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x49\x72\x6B\x75\x74\x73\x6B":{name:_0x32c7[500],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x43\x68\x69\x74\x61":{name:_0x32c7[501],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x59\x61\x6B\x75\x74\x73\x6B":{name:_0x32c7[502],utcOffset:540,offsetStr:_0x32c7[281],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x4B\x68\x61\x6E\x64\x79\x67\x61":{name:_0x32c7[503],utcOffset:540,offsetStr:_0x32c7[281],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x56\x6C\x61\x64\x69\x76\x6F\x73\x74\x6F\x6B":{name:_0x32c7[504],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x53\x61\x6B\x68\x61\x6C\x69\x6E":{name:_0x32c7[505],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x55\x73\x74\x2D\x4E\x65\x72\x61":{name:_0x32c7[506],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x4D\x61\x67\x61\x64\x61\x6E":{name:_0x32c7[507],utcOffset:600,offsetStr:_0x32c7[32],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x53\x72\x65\x64\x6E\x65\x6B\x6F\x6C\x79\x6D\x73\x6B":{name:_0x32c7[508],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x4B\x61\x6D\x63\x68\x61\x74\x6B\x61":{name:_0x32c7[509],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x41\x6E\x61\x64\x79\x72":{name:_0x32c7[510],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[490]]},"\x41\x73\x69\x61\x2F\x52\x69\x79\x61\x64\x68":{name:_0x32c7[511],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[512],_0x32c7[513],_0x32c7[514]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x75\x61\x64\x61\x6C\x63\x61\x6E\x61\x6C":{name:_0x32c7[515],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[516]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x68\x65":{name:_0x32c7[517],utcOffset:240,offsetStr:_0x32c7[9],countries:[_0x32c7[518]]},"\x41\x66\x72\x69\x63\x61\x2F\x4B\x68\x61\x72\x74\x6F\x75\x6D":{name:_0x32c7[519],utcOffset:180,offsetStr:_0x32c7[34],countries:[_0x32c7[520],_0x32c7[521]]},"\x45\x75\x72\x6F\x70\x65\x2F\x53\x74\x6F\x63\x6B\x68\x6F\x6C\x6D":{name:_0x32c7[522],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[523]]},"\x41\x73\x69\x61\x2F\x53\x69\x6E\x67\x61\x70\x6F\x72\x65":{name:_0x32c7[524],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[525]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x72\x61\x6D\x61\x72\x69\x62\x6F":{name:_0x32c7[526],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[527]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x6C\x5F\x53\x61\x6C\x76\x61\x64\x6F\x72":{name:_0x32c7[528],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[529]]},"\x41\x73\x69\x61\x2F\x44\x61\x6D\x61\x73\x63\x75\x73":{name:_0x32c7[530],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[531]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x72\x61\x6E\x64\x5F\x54\x75\x72\x6B":{name:_0x32c7[532],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[533]]},"\x41\x66\x72\x69\x63\x61\x2F\x4E\x64\x6A\x61\x6D\x65\x6E\x61":{name:_0x32c7[534],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[535]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x4B\x65\x72\x67\x75\x65\x6C\x65\x6E":{name:_0x32c7[536],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[479]]},"\x41\x73\x69\x61\x2F\x42\x61\x6E\x67\x6B\x6F\x6B":{name:_0x32c7[537],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[538],_0x32c7[539],_0x32c7[540],_0x32c7[541]]},"\x41\x73\x69\x61\x2F\x44\x75\x73\x68\x61\x6E\x62\x65":{name:_0x32c7[542],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[543]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x61\x6B\x61\x6F\x66\x6F":{name:_0x32c7[544],utcOffset:780,offsetStr:_0x32c7[324],countries:[_0x32c7[545]]},"\x41\x73\x69\x61\x2F\x44\x69\x6C\x69":{name:_0x32c7[546],utcOffset:540,offsetStr:_0x32c7[281],countries:[_0x32c7[547]]},"\x41\x73\x69\x61\x2F\x41\x73\x68\x67\x61\x62\x61\x74":{name:_0x32c7[548],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[549]]},"\x41\x66\x72\x69\x63\x61\x2F\x54\x75\x6E\x69\x73":{name:_0x32c7[550],utcOffset:60,offsetStr:_0x32c7[6],countries:[_0x32c7[551]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x6F\x6E\x67\x61\x74\x61\x70\x75":{name:_0x32c7[552],utcOffset:780,offsetStr:_0x32c7[324],countries:[_0x32c7[553]]},"\x45\x75\x72\x6F\x70\x65\x2F\x49\x73\x74\x61\x6E\x62\x75\x6C":{name:_0x32c7[554],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[555]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x5F\x6F\x66\x5F\x53\x70\x61\x69\x6E":{name:_0x32c7[556],utcOffset:-240,offsetStr:_0x32c7[77],countries:[_0x32c7[557],_0x32c7[558],_0x32c7[559],_0x32c7[560],_0x32c7[561],_0x32c7[562],_0x32c7[563],_0x32c7[564],_0x32c7[565],_0x32c7[566],_0x32c7[567],_0x32c7[568],_0x32c7[569],_0x32c7[570]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x75\x6E\x61\x66\x75\x74\x69":{name:_0x32c7[571],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[572]]},"\x41\x73\x69\x61\x2F\x54\x61\x69\x70\x65\x69":{name:_0x32c7[573],utcOffset:480,offsetStr:_0x32c7[28],countries:[_0x32c7[574]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4B\x69\x65\x76":{name:_0x32c7[575],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[576]]},"\x45\x75\x72\x6F\x70\x65\x2F\x55\x7A\x68\x67\x6F\x72\x6F\x64":{name:_0x32c7[577],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[576]]},"\x45\x75\x72\x6F\x70\x65\x2F\x5A\x61\x70\x6F\x72\x6F\x7A\x68\x79\x65":{name:_0x32c7[578],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[576]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x57\x61\x6B\x65":{name:_0x32c7[579],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[53]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x65\x77\x5F\x59\x6F\x72\x6B":{name:_0x32c7[580],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x65\x74\x72\x6F\x69\x74":{name:_0x32c7[582],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4B\x65\x6E\x74\x75\x63\x6B\x79\x2F\x4C\x6F\x75\x69\x73\x76\x69\x6C\x6C\x65":{name:_0x32c7[583],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4B\x65\x6E\x74\x75\x63\x6B\x79\x2F\x4D\x6F\x6E\x74\x69\x63\x65\x6C\x6C\x6F":{name:_0x32c7[584],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x70\x6F\x6C\x69\x73":{name:_0x32c7[585],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x56\x69\x6E\x63\x65\x6E\x6E\x65\x73":{name:_0x32c7[586],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x57\x69\x6E\x61\x6D\x61\x63":{name:_0x32c7[587],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x4D\x61\x72\x65\x6E\x67\x6F":{name:_0x32c7[588],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x50\x65\x74\x65\x72\x73\x62\x75\x72\x67":{name:_0x32c7[589],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x56\x65\x76\x61\x79":{name:_0x32c7[590],utcOffset:-300,offsetStr:_0x32c7[109],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x68\x69\x63\x61\x67\x6F":{name:_0x32c7[591],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x54\x65\x6C\x6C\x5F\x43\x69\x74\x79":{name:_0x32c7[592],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x4B\x6E\x6F\x78":{name:_0x32c7[593],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x6E\x6F\x6D\x69\x6E\x65\x65":{name:_0x32c7[594],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x43\x65\x6E\x74\x65\x72":{name:_0x32c7[595],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x4E\x65\x77\x5F\x53\x61\x6C\x65\x6D":{name:_0x32c7[596],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x42\x65\x75\x6C\x61\x68":{name:_0x32c7[597],utcOffset:-360,offsetStr:_0x32c7[118],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x65\x6E\x76\x65\x72":{name:_0x32c7[598],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x69\x73\x65":{name:_0x32c7[599],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x68\x6F\x65\x6E\x69\x78":{name:_0x32c7[600],utcOffset:-420,offsetStr:_0x32c7[141],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x6F\x73\x5F\x41\x6E\x67\x65\x6C\x65\x73":{name:_0x32c7[601],utcOffset:-480,offsetStr:_0x32c7[149],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x74\x6C\x61\x6B\x61\x74\x6C\x61":{name:_0x32c7[602],utcOffset:-480,offsetStr:_0x32c7[149],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x6E\x63\x68\x6F\x72\x61\x67\x65":{name:_0x32c7[603],utcOffset:-540,offsetStr:_0x32c7[447],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4A\x75\x6E\x65\x61\x75":{name:_0x32c7[604],utcOffset:-540,offsetStr:_0x32c7[447],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x69\x74\x6B\x61":{name:_0x32c7[605],utcOffset:-540,offsetStr:_0x32c7[447],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x59\x61\x6B\x75\x74\x61\x74":{name:_0x32c7[606],utcOffset:-540,offsetStr:_0x32c7[447],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x6D\x65":{name:_0x32c7[607],utcOffset:-540,offsetStr:_0x32c7[447],countries:[_0x32c7[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x64\x61\x6B":{name:_0x32c7[608],utcOffset:-600,offsetStr:_0x32c7[172],countries:[_0x32c7[581]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x48\x6F\x6E\x6F\x6C\x75\x6C\x75":{name:_0x32c7[609],utcOffset:-600,offsetStr:_0x32c7[172],countries:[_0x32c7[581],_0x32c7[53]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x74\x65\x76\x69\x64\x65\x6F":{name:_0x32c7[610],utcOffset:-180,offsetStr:_0x32c7[20],countries:[_0x32c7[611]]},"\x41\x73\x69\x61\x2F\x53\x61\x6D\x61\x72\x6B\x61\x6E\x64":{name:_0x32c7[612],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[613]]},"\x41\x73\x69\x61\x2F\x54\x61\x73\x68\x6B\x65\x6E\x74":{name:_0x32c7[614],utcOffset:300,offsetStr:_0x32c7[24],countries:[_0x32c7[613]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x72\x61\x63\x61\x73":{name:_0x32c7[615],utcOffset:-270,offsetStr:_0x32c7[616],countries:[_0x32c7[617]]},"\x41\x73\x69\x61\x2F\x48\x6F\x5F\x43\x68\x69\x5F\x4D\x69\x6E\x68":{name:_0x32c7[618],utcOffset:420,offsetStr:_0x32c7[26],countries:[_0x32c7[541]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x66\x61\x74\x65":{name:_0x32c7[619],utcOffset:660,offsetStr:_0x32c7[57],countries:[_0x32c7[620]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x57\x61\x6C\x6C\x69\x73":{name:_0x32c7[621],utcOffset:720,offsetStr:_0x32c7[225],countries:[_0x32c7[622]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x41\x70\x69\x61":{name:_0x32c7[623],utcOffset:840,offsetStr:_0x32c7[326],countries:[_0x32c7[624]]},"\x41\x66\x72\x69\x63\x61\x2F\x4A\x6F\x68\x61\x6E\x6E\x65\x73\x62\x75\x72\x67":{name:_0x32c7[625],utcOffset:120,offsetStr:_0x32c7[84],countries:[_0x32c7[626],_0x32c7[627],_0x32c7[628]]}}}
\ No newline at end of file
+var _0x1cd2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x67\x75\x65\x73\x74","\x75\x73\x65\x72","\x61\x64\x6D\x69\x6E","\x45\x75\x72\x6F\x70\x65\x2F\x41\x6E\x64\x6F\x72\x72\x61","\x2B\x30\x31\x3A\x30\x30","\x41\x44","\x41\x73\x69\x61\x2F\x44\x75\x62\x61\x69","\x2B\x30\x34\x3A\x30\x30","\x41\x45","\x4F\x4D","\x41\x73\x69\x61\x2F\x4B\x61\x62\x75\x6C","\x2B\x30\x34\x3A\x33\x30","\x41\x46","\x45\x75\x72\x6F\x70\x65\x2F\x54\x69\x72\x61\x6E\x65","\x41\x4C","\x41\x73\x69\x61\x2F\x59\x65\x72\x65\x76\x61\x6E","\x41\x4D","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x52\x6F\x74\x68\x65\x72\x61","\x2D\x30\x33\x3A\x30\x30","\x41\x51","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x50\x61\x6C\x6D\x65\x72","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x4D\x61\x77\x73\x6F\x6E","\x2B\x30\x35\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x44\x61\x76\x69\x73","\x2B\x30\x37\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x43\x61\x73\x65\x79","\x2B\x30\x38\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x56\x6F\x73\x74\x6F\x6B","\x2B\x30\x36\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x44\x75\x6D\x6F\x6E\x74\x44\x55\x72\x76\x69\x6C\x6C\x65","\x2B\x31\x30\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x53\x79\x6F\x77\x61","\x2B\x30\x33\x3A\x30\x30","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x54\x72\x6F\x6C\x6C","\x2B\x30\x30\x3A\x30\x30","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x42\x75\x65\x6E\x6F\x73\x5F\x41\x69\x72\x65\x73","\x41\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x43\x6F\x72\x64\x6F\x62\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6C\x74\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4A\x75\x6A\x75\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x54\x75\x63\x75\x6D\x61\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x43\x61\x74\x61\x6D\x61\x72\x63\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4C\x61\x5F\x52\x69\x6F\x6A\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6E\x5F\x4A\x75\x61\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4D\x65\x6E\x64\x6F\x7A\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6E\x5F\x4C\x75\x69\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x52\x69\x6F\x5F\x47\x61\x6C\x6C\x65\x67\x6F\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x55\x73\x68\x75\x61\x69\x61","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x61\x67\x6F\x5F\x50\x61\x67\x6F","\x2D\x31\x31\x3A\x30\x30","\x41\x53","\x55\x4D","\x45\x75\x72\x6F\x70\x65\x2F\x56\x69\x65\x6E\x6E\x61","\x41\x54","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4C\x6F\x72\x64\x5F\x48\x6F\x77\x65","\x2B\x31\x31\x3A\x30\x30","\x41\x55","\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x4D\x61\x63\x71\x75\x61\x72\x69\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x48\x6F\x62\x61\x72\x74","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x43\x75\x72\x72\x69\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4D\x65\x6C\x62\x6F\x75\x72\x6E\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x53\x79\x64\x6E\x65\x79","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x42\x72\x6F\x6B\x65\x6E\x5F\x48\x69\x6C\x6C","\x2B\x31\x30\x3A\x33\x30","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x42\x72\x69\x73\x62\x61\x6E\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4C\x69\x6E\x64\x65\x6D\x61\x6E","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x41\x64\x65\x6C\x61\x69\x64\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x44\x61\x72\x77\x69\x6E","\x2B\x30\x39\x3A\x33\x30","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x50\x65\x72\x74\x68","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x45\x75\x63\x6C\x61","\x2B\x30\x38\x3A\x34\x35","\x41\x73\x69\x61\x2F\x42\x61\x6B\x75","\x41\x5A","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x72\x62\x61\x64\x6F\x73","\x2D\x30\x34\x3A\x30\x30","\x42\x42","\x41\x73\x69\x61\x2F\x44\x68\x61\x6B\x61","\x42\x44","\x45\x75\x72\x6F\x70\x65\x2F\x42\x72\x75\x73\x73\x65\x6C\x73","\x42\x45","\x45\x75\x72\x6F\x70\x65\x2F\x53\x6F\x66\x69\x61","\x2B\x30\x32\x3A\x30\x30","\x42\x47","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x42\x65\x72\x6D\x75\x64\x61","\x42\x4D","\x41\x73\x69\x61\x2F\x42\x72\x75\x6E\x65\x69","\x42\x4E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x61\x5F\x50\x61\x7A","\x42\x4F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x6F\x6E\x68\x61","\x2D\x30\x32\x3A\x30\x30","\x42\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x65\x6C\x65\x6D","\x41\x6D\x65\x72\x69\x63\x61\x2F\x46\x6F\x72\x74\x61\x6C\x65\x7A\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x63\x69\x66\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x61\x67\x75\x61\x69\x6E\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x63\x65\x69\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x68\x69\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6F\x5F\x50\x61\x75\x6C\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6D\x70\x6F\x5F\x47\x72\x61\x6E\x64\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x75\x69\x61\x62\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x61\x72\x65\x6D","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x6F\x5F\x56\x65\x6C\x68\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x61\x5F\x56\x69\x73\x74\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x6E\x61\x75\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x69\x72\x75\x6E\x65\x70\x65","\x2D\x30\x35\x3A\x30\x30","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x69\x6F\x5F\x42\x72\x61\x6E\x63\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x61\x73\x73\x61\x75","\x42\x53","\x41\x73\x69\x61\x2F\x54\x68\x69\x6D\x70\x68\x75","\x42\x54","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x69\x6E\x73\x6B","\x42\x59","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x65\x6C\x69\x7A\x65","\x2D\x30\x36\x3A\x30\x30","\x42\x5A","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x74\x5F\x4A\x6F\x68\x6E\x73","\x2D\x30\x33\x3A\x33\x30","\x43\x41","\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x61\x6C\x69\x66\x61\x78","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6C\x61\x63\x65\x5F\x42\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x63\x74\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6F\x6F\x73\x65\x5F\x42\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6C\x61\x6E\x63\x2D\x53\x61\x62\x6C\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x6F\x72\x6F\x6E\x74\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x69\x70\x69\x67\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x68\x75\x6E\x64\x65\x72\x5F\x42\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x71\x61\x6C\x75\x69\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x6E\x67\x6E\x69\x72\x74\x75\x6E\x67","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x73\x6F\x6C\x75\x74\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x74\x69\x6B\x6F\x6B\x61\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x61\x6E\x6B\x69\x6E\x5F\x49\x6E\x6C\x65\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x57\x69\x6E\x6E\x69\x70\x65\x67","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x61\x69\x6E\x79\x5F\x52\x69\x76\x65\x72","\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x67\x69\x6E\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x77\x69\x66\x74\x5F\x43\x75\x72\x72\x65\x6E\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x64\x6D\x6F\x6E\x74\x6F\x6E","\x2D\x30\x37\x3A\x30\x30","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6D\x62\x72\x69\x64\x67\x65\x5F\x42\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x59\x65\x6C\x6C\x6F\x77\x6B\x6E\x69\x66\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x75\x76\x69\x6B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x72\x65\x73\x74\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x77\x73\x6F\x6E\x5F\x43\x72\x65\x65\x6B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x46\x6F\x72\x74\x5F\x4E\x65\x6C\x73\x6F\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x56\x61\x6E\x63\x6F\x75\x76\x65\x72","\x2D\x30\x38\x3A\x30\x30","\x41\x6D\x65\x72\x69\x63\x61\x2F\x57\x68\x69\x74\x65\x68\x6F\x72\x73\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x77\x73\x6F\x6E","\x49\x6E\x64\x69\x61\x6E\x2F\x43\x6F\x63\x6F\x73","\x2B\x30\x36\x3A\x33\x30","\x43\x43","\x45\x75\x72\x6F\x70\x65\x2F\x5A\x75\x72\x69\x63\x68","\x43\x48","\x44\x45","\x4C\x49","\x41\x66\x72\x69\x63\x61\x2F\x41\x62\x69\x64\x6A\x61\x6E","\x43\x49","\x42\x46","\x47\x4D","\x47\x4E","\x4D\x4C","\x4D\x52","\x53\x48","\x53\x4C","\x53\x4E","\x53\x54","\x54\x47","\x50\x61\x63\x69\x66\x69\x63\x2F\x52\x61\x72\x6F\x74\x6F\x6E\x67\x61","\x2D\x31\x30\x3A\x30\x30","\x43\x4B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x69\x61\x67\x6F","\x43\x4C","\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x61\x73\x74\x65\x72","\x41\x73\x69\x61\x2F\x53\x68\x61\x6E\x67\x68\x61\x69","\x43\x4E","\x41\x73\x69\x61\x2F\x55\x72\x75\x6D\x71\x69","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x67\x6F\x74\x61","\x43\x4F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x6F\x73\x74\x61\x5F\x52\x69\x63\x61","\x43\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x61\x76\x61\x6E\x61","\x43\x55","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x43\x61\x70\x65\x5F\x56\x65\x72\x64\x65","\x2D\x30\x31\x3A\x30\x30","\x43\x56","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x75\x72\x61\x63\x61\x6F","\x43\x57","\x41\x57","\x42\x51","\x53\x58","\x49\x6E\x64\x69\x61\x6E\x2F\x43\x68\x72\x69\x73\x74\x6D\x61\x73","\x43\x58","\x41\x73\x69\x61\x2F\x4E\x69\x63\x6F\x73\x69\x61","\x43\x59","\x45\x75\x72\x6F\x70\x65\x2F\x50\x72\x61\x67\x75\x65","\x43\x5A","\x53\x4B","\x45\x75\x72\x6F\x70\x65\x2F\x42\x65\x72\x6C\x69\x6E","\x45\x75\x72\x6F\x70\x65\x2F\x43\x6F\x70\x65\x6E\x68\x61\x67\x65\x6E","\x44\x4B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x6F\x5F\x44\x6F\x6D\x69\x6E\x67\x6F","\x44\x4F","\x41\x66\x72\x69\x63\x61\x2F\x41\x6C\x67\x69\x65\x72\x73","\x44\x5A","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x61\x79\x61\x71\x75\x69\x6C","\x45\x43","\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x61\x6C\x61\x70\x61\x67\x6F\x73","\x45\x75\x72\x6F\x70\x65\x2F\x54\x61\x6C\x6C\x69\x6E\x6E","\x45\x45","\x41\x66\x72\x69\x63\x61\x2F\x43\x61\x69\x72\x6F","\x45\x47","\x41\x66\x72\x69\x63\x61\x2F\x45\x6C\x5F\x41\x61\x69\x75\x6E","\x45\x48","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x61\x64\x72\x69\x64","\x45\x53","\x41\x66\x72\x69\x63\x61\x2F\x43\x65\x75\x74\x61","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x43\x61\x6E\x61\x72\x79","\x45\x75\x72\x6F\x70\x65\x2F\x48\x65\x6C\x73\x69\x6E\x6B\x69","\x46\x49","\x41\x58","\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x69\x6A\x69","\x2B\x31\x32\x3A\x30\x30","\x46\x4A","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x53\x74\x61\x6E\x6C\x65\x79","\x46\x4B","\x50\x61\x63\x69\x66\x69\x63\x2F\x43\x68\x75\x75\x6B","\x46\x4D","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x6F\x68\x6E\x70\x65\x69","\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x6F\x73\x72\x61\x65","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x46\x61\x72\x6F\x65","\x46\x4F","\x45\x75\x72\x6F\x70\x65\x2F\x50\x61\x72\x69\x73","\x46\x52","\x45\x75\x72\x6F\x70\x65\x2F\x4C\x6F\x6E\x64\x6F\x6E","\x47\x42","\x47\x47","\x49\x4D","\x4A\x45","\x41\x73\x69\x61\x2F\x54\x62\x69\x6C\x69\x73\x69","\x47\x45","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x79\x65\x6E\x6E\x65","\x47\x46","\x41\x66\x72\x69\x63\x61\x2F\x41\x63\x63\x72\x61","\x47\x48","\x45\x75\x72\x6F\x70\x65\x2F\x47\x69\x62\x72\x61\x6C\x74\x61\x72","\x47\x49","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6F\x64\x74\x68\x61\x62","\x47\x4C","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x6E\x6D\x61\x72\x6B\x73\x68\x61\x76\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x63\x6F\x72\x65\x73\x62\x79\x73\x75\x6E\x64","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x68\x75\x6C\x65","\x45\x75\x72\x6F\x70\x65\x2F\x41\x74\x68\x65\x6E\x73","\x47\x52","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x53\x6F\x75\x74\x68\x5F\x47\x65\x6F\x72\x67\x69\x61","\x47\x53","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x61\x74\x65\x6D\x61\x6C\x61","\x47\x54","\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x75\x61\x6D","\x47\x55","\x4D\x50","\x41\x66\x72\x69\x63\x61\x2F\x42\x69\x73\x73\x61\x75","\x47\x57","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x79\x61\x6E\x61","\x47\x59","\x41\x73\x69\x61\x2F\x48\x6F\x6E\x67\x5F\x4B\x6F\x6E\x67","\x48\x4B","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x65\x67\x75\x63\x69\x67\x61\x6C\x70\x61","\x48\x4E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x2D\x61\x75\x2D\x50\x72\x69\x6E\x63\x65","\x48\x54","\x45\x75\x72\x6F\x70\x65\x2F\x42\x75\x64\x61\x70\x65\x73\x74","\x48\x55","\x41\x73\x69\x61\x2F\x4A\x61\x6B\x61\x72\x74\x61","\x49\x44","\x41\x73\x69\x61\x2F\x50\x6F\x6E\x74\x69\x61\x6E\x61\x6B","\x41\x73\x69\x61\x2F\x4D\x61\x6B\x61\x73\x73\x61\x72","\x41\x73\x69\x61\x2F\x4A\x61\x79\x61\x70\x75\x72\x61","\x2B\x30\x39\x3A\x30\x30","\x45\x75\x72\x6F\x70\x65\x2F\x44\x75\x62\x6C\x69\x6E","\x49\x45","\x41\x73\x69\x61\x2F\x4A\x65\x72\x75\x73\x61\x6C\x65\x6D","\x49\x4C","\x41\x73\x69\x61\x2F\x4B\x6F\x6C\x6B\x61\x74\x61","\x2B\x30\x35\x3A\x33\x30","\x49\x4E","\x49\x6E\x64\x69\x61\x6E\x2F\x43\x68\x61\x67\x6F\x73","\x49\x4F","\x41\x73\x69\x61\x2F\x42\x61\x67\x68\x64\x61\x64","\x49\x51","\x41\x73\x69\x61\x2F\x54\x65\x68\x72\x61\x6E","\x2B\x30\x33\x3A\x33\x30","\x49\x52","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x52\x65\x79\x6B\x6A\x61\x76\x69\x6B","\x49\x53","\x45\x75\x72\x6F\x70\x65\x2F\x52\x6F\x6D\x65","\x49\x54","\x53\x4D","\x56\x41","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4A\x61\x6D\x61\x69\x63\x61","\x4A\x4D","\x41\x73\x69\x61\x2F\x41\x6D\x6D\x61\x6E","\x4A\x4F","\x41\x73\x69\x61\x2F\x54\x6F\x6B\x79\x6F","\x4A\x50","\x41\x66\x72\x69\x63\x61\x2F\x4E\x61\x69\x72\x6F\x62\x69","\x4B\x45","\x44\x4A","\x45\x52","\x45\x54","\x4B\x4D","\x4D\x47","\x53\x4F","\x54\x5A","\x55\x47","\x59\x54","\x41\x73\x69\x61\x2F\x42\x69\x73\x68\x6B\x65\x6B","\x4B\x47","\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x61\x72\x61\x77\x61","\x4B\x49","\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x6E\x64\x65\x72\x62\x75\x72\x79","\x2B\x31\x33\x3A\x30\x30","\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x69\x72\x69\x74\x69\x6D\x61\x74\x69","\x2B\x31\x34\x3A\x30\x30","\x41\x73\x69\x61\x2F\x50\x79\x6F\x6E\x67\x79\x61\x6E\x67","\x2B\x30\x38\x3A\x33\x30","\x4B\x50","\x41\x73\x69\x61\x2F\x53\x65\x6F\x75\x6C","\x4B\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x79\x6D\x61\x6E","\x4B\x59","\x41\x73\x69\x61\x2F\x41\x6C\x6D\x61\x74\x79","\x4B\x5A","\x41\x73\x69\x61\x2F\x51\x79\x7A\x79\x6C\x6F\x72\x64\x61","\x41\x73\x69\x61\x2F\x41\x71\x74\x6F\x62\x65","\x41\x73\x69\x61\x2F\x41\x71\x74\x61\x75","\x41\x73\x69\x61\x2F\x4F\x72\x61\x6C","\x41\x73\x69\x61\x2F\x42\x65\x69\x72\x75\x74","\x4C\x42","\x41\x73\x69\x61\x2F\x43\x6F\x6C\x6F\x6D\x62\x6F","\x4C\x4B","\x41\x66\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x72\x6F\x76\x69\x61","\x4C\x52","\x45\x75\x72\x6F\x70\x65\x2F\x56\x69\x6C\x6E\x69\x75\x73","\x4C\x54","\x45\x75\x72\x6F\x70\x65\x2F\x4C\x75\x78\x65\x6D\x62\x6F\x75\x72\x67","\x4C\x55","\x45\x75\x72\x6F\x70\x65\x2F\x52\x69\x67\x61","\x4C\x56","\x41\x66\x72\x69\x63\x61\x2F\x54\x72\x69\x70\x6F\x6C\x69","\x4C\x59","\x41\x66\x72\x69\x63\x61\x2F\x43\x61\x73\x61\x62\x6C\x61\x6E\x63\x61","\x4D\x41","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x6F\x6E\x61\x63\x6F","\x4D\x43","\x45\x75\x72\x6F\x70\x65\x2F\x43\x68\x69\x73\x69\x6E\x61\x75","\x4D\x44","\x50\x61\x63\x69\x66\x69\x63\x2F\x4D\x61\x6A\x75\x72\x6F","\x4D\x48","\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x77\x61\x6A\x61\x6C\x65\x69\x6E","\x41\x73\x69\x61\x2F\x52\x61\x6E\x67\x6F\x6F\x6E","\x4D\x4D","\x41\x73\x69\x61\x2F\x55\x6C\x61\x61\x6E\x62\x61\x61\x74\x61\x72","\x4D\x4E","\x41\x73\x69\x61\x2F\x48\x6F\x76\x64","\x41\x73\x69\x61\x2F\x43\x68\x6F\x69\x62\x61\x6C\x73\x61\x6E","\x41\x73\x69\x61\x2F\x4D\x61\x63\x61\x75","\x4D\x4F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x72\x74\x69\x6E\x69\x71\x75\x65","\x4D\x51","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x61\x6C\x74\x61","\x4D\x54","\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x75\x72\x69\x74\x69\x75\x73","\x4D\x55","\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x6C\x64\x69\x76\x65\x73","\x4D\x56","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x78\x69\x63\x6F\x5F\x43\x69\x74\x79","\x4D\x58","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6E\x63\x75\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x72\x69\x64\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x74\x65\x72\x72\x65\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x74\x61\x6D\x6F\x72\x6F\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x7A\x61\x74\x6C\x61\x6E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x68\x69\x68\x75\x61\x68\x75\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4F\x6A\x69\x6E\x61\x67\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x65\x72\x6D\x6F\x73\x69\x6C\x6C\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x69\x6A\x75\x61\x6E\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x61\x5F\x49\x73\x61\x62\x65\x6C","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x68\x69\x61\x5F\x42\x61\x6E\x64\x65\x72\x61\x73","\x41\x73\x69\x61\x2F\x4B\x75\x61\x6C\x61\x5F\x4C\x75\x6D\x70\x75\x72","\x4D\x59","\x41\x73\x69\x61\x2F\x4B\x75\x63\x68\x69\x6E\x67","\x41\x66\x72\x69\x63\x61\x2F\x4D\x61\x70\x75\x74\x6F","\x4D\x5A","\x42\x49","\x42\x57","\x43\x44","\x4D\x57","\x52\x57","\x5A\x4D","\x5A\x57","\x41\x66\x72\x69\x63\x61\x2F\x57\x69\x6E\x64\x68\x6F\x65\x6B","\x4E\x41","\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x6F\x75\x6D\x65\x61","\x4E\x43","\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x6F\x72\x66\x6F\x6C\x6B","\x4E\x46","\x41\x66\x72\x69\x63\x61\x2F\x4C\x61\x67\x6F\x73","\x4E\x47","\x41\x4F","\x42\x4A","\x43\x46","\x43\x47","\x43\x4D","\x47\x41","\x47\x51","\x4E\x45","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x6E\x61\x67\x75\x61","\x4E\x49","\x45\x75\x72\x6F\x70\x65\x2F\x41\x6D\x73\x74\x65\x72\x64\x61\x6D","\x4E\x4C","\x45\x75\x72\x6F\x70\x65\x2F\x4F\x73\x6C\x6F","\x4E\x4F","\x53\x4A","\x41\x73\x69\x61\x2F\x4B\x61\x74\x68\x6D\x61\x6E\x64\x75","\x2B\x30\x35\x3A\x34\x35","\x4E\x50","\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x61\x75\x72\x75","\x4E\x52","\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x69\x75\x65","\x4E\x55","\x50\x61\x63\x69\x66\x69\x63\x2F\x41\x75\x63\x6B\x6C\x61\x6E\x64","\x4E\x5A","\x50\x61\x63\x69\x66\x69\x63\x2F\x43\x68\x61\x74\x68\x61\x6D","\x2B\x31\x33\x3A\x34\x35","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x6E\x61\x6D\x61","\x50\x41","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x69\x6D\x61","\x50\x45","\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x61\x68\x69\x74\x69","\x50\x46","\x50\x61\x63\x69\x66\x69\x63\x2F\x4D\x61\x72\x71\x75\x65\x73\x61\x73","\x2D\x30\x39\x3A\x33\x30","\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x61\x6D\x62\x69\x65\x72","\x2D\x30\x39\x3A\x30\x30","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x6F\x72\x74\x5F\x4D\x6F\x72\x65\x73\x62\x79","\x50\x47","\x50\x61\x63\x69\x66\x69\x63\x2F\x42\x6F\x75\x67\x61\x69\x6E\x76\x69\x6C\x6C\x65","\x41\x73\x69\x61\x2F\x4D\x61\x6E\x69\x6C\x61","\x50\x48","\x41\x73\x69\x61\x2F\x4B\x61\x72\x61\x63\x68\x69","\x50\x4B","\x45\x75\x72\x6F\x70\x65\x2F\x57\x61\x72\x73\x61\x77","\x50\x4C","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x69\x71\x75\x65\x6C\x6F\x6E","\x50\x4D","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x69\x74\x63\x61\x69\x72\x6E","\x50\x4E","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x75\x65\x72\x74\x6F\x5F\x52\x69\x63\x6F","\x50\x52","\x41\x73\x69\x61\x2F\x47\x61\x7A\x61","\x50\x53","\x41\x73\x69\x61\x2F\x48\x65\x62\x72\x6F\x6E","\x45\x75\x72\x6F\x70\x65\x2F\x4C\x69\x73\x62\x6F\x6E","\x50\x54","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x4D\x61\x64\x65\x69\x72\x61","\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x41\x7A\x6F\x72\x65\x73","\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x61\x6C\x61\x75","\x50\x57","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x73\x75\x6E\x63\x69\x6F\x6E","\x50\x59","\x41\x73\x69\x61\x2F\x51\x61\x74\x61\x72","\x51\x41","\x42\x48","\x49\x6E\x64\x69\x61\x6E\x2F\x52\x65\x75\x6E\x69\x6F\x6E","\x52\x45","\x54\x46","\x45\x75\x72\x6F\x70\x65\x2F\x42\x75\x63\x68\x61\x72\x65\x73\x74","\x52\x4F","\x45\x75\x72\x6F\x70\x65\x2F\x42\x65\x6C\x67\x72\x61\x64\x65","\x52\x53","\x42\x41","\x48\x52","\x4D\x45","\x4D\x4B","\x53\x49","\x45\x75\x72\x6F\x70\x65\x2F\x4B\x61\x6C\x69\x6E\x69\x6E\x67\x72\x61\x64","\x52\x55","\x45\x75\x72\x6F\x70\x65\x2F\x4D\x6F\x73\x63\x6F\x77","\x45\x75\x72\x6F\x70\x65\x2F\x53\x69\x6D\x66\x65\x72\x6F\x70\x6F\x6C","\x45\x75\x72\x6F\x70\x65\x2F\x56\x6F\x6C\x67\x6F\x67\x72\x61\x64","\x45\x75\x72\x6F\x70\x65\x2F\x53\x61\x6D\x61\x72\x61","\x41\x73\x69\x61\x2F\x59\x65\x6B\x61\x74\x65\x72\x69\x6E\x62\x75\x72\x67","\x41\x73\x69\x61\x2F\x4F\x6D\x73\x6B","\x41\x73\x69\x61\x2F\x4E\x6F\x76\x6F\x73\x69\x62\x69\x72\x73\x6B","\x41\x73\x69\x61\x2F\x4E\x6F\x76\x6F\x6B\x75\x7A\x6E\x65\x74\x73\x6B","\x41\x73\x69\x61\x2F\x4B\x72\x61\x73\x6E\x6F\x79\x61\x72\x73\x6B","\x41\x73\x69\x61\x2F\x49\x72\x6B\x75\x74\x73\x6B","\x41\x73\x69\x61\x2F\x43\x68\x69\x74\x61","\x41\x73\x69\x61\x2F\x59\x61\x6B\x75\x74\x73\x6B","\x41\x73\x69\x61\x2F\x4B\x68\x61\x6E\x64\x79\x67\x61","\x41\x73\x69\x61\x2F\x56\x6C\x61\x64\x69\x76\x6F\x73\x74\x6F\x6B","\x41\x73\x69\x61\x2F\x53\x61\x6B\x68\x61\x6C\x69\x6E","\x41\x73\x69\x61\x2F\x55\x73\x74\x2D\x4E\x65\x72\x61","\x41\x73\x69\x61\x2F\x4D\x61\x67\x61\x64\x61\x6E","\x41\x73\x69\x61\x2F\x53\x72\x65\x64\x6E\x65\x6B\x6F\x6C\x79\x6D\x73\x6B","\x41\x73\x69\x61\x2F\x4B\x61\x6D\x63\x68\x61\x74\x6B\x61","\x41\x73\x69\x61\x2F\x41\x6E\x61\x64\x79\x72","\x41\x73\x69\x61\x2F\x52\x69\x79\x61\x64\x68","\x53\x41","\x4B\x57","\x59\x45","\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x75\x61\x64\x61\x6C\x63\x61\x6E\x61\x6C","\x53\x42","\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x68\x65","\x53\x43","\x41\x66\x72\x69\x63\x61\x2F\x4B\x68\x61\x72\x74\x6F\x75\x6D","\x53\x44","\x53\x53","\x45\x75\x72\x6F\x70\x65\x2F\x53\x74\x6F\x63\x6B\x68\x6F\x6C\x6D","\x53\x45","\x41\x73\x69\x61\x2F\x53\x69\x6E\x67\x61\x70\x6F\x72\x65","\x53\x47","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x72\x61\x6D\x61\x72\x69\x62\x6F","\x53\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x6C\x5F\x53\x61\x6C\x76\x61\x64\x6F\x72","\x53\x56","\x41\x73\x69\x61\x2F\x44\x61\x6D\x61\x73\x63\x75\x73","\x53\x59","\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x72\x61\x6E\x64\x5F\x54\x75\x72\x6B","\x54\x43","\x41\x66\x72\x69\x63\x61\x2F\x4E\x64\x6A\x61\x6D\x65\x6E\x61","\x54\x44","\x49\x6E\x64\x69\x61\x6E\x2F\x4B\x65\x72\x67\x75\x65\x6C\x65\x6E","\x41\x73\x69\x61\x2F\x42\x61\x6E\x67\x6B\x6F\x6B","\x54\x48","\x4B\x48","\x4C\x41","\x56\x4E","\x41\x73\x69\x61\x2F\x44\x75\x73\x68\x61\x6E\x62\x65","\x54\x4A","\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x61\x6B\x61\x6F\x66\x6F","\x54\x4B","\x41\x73\x69\x61\x2F\x44\x69\x6C\x69","\x54\x4C","\x41\x73\x69\x61\x2F\x41\x73\x68\x67\x61\x62\x61\x74","\x54\x4D","\x41\x66\x72\x69\x63\x61\x2F\x54\x75\x6E\x69\x73","\x54\x4E","\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x6F\x6E\x67\x61\x74\x61\x70\x75","\x54\x4F","\x45\x75\x72\x6F\x70\x65\x2F\x49\x73\x74\x61\x6E\x62\x75\x6C","\x54\x52","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x5F\x6F\x66\x5F\x53\x70\x61\x69\x6E","\x54\x54","\x41\x47","\x41\x49","\x42\x4C","\x44\x4D","\x47\x44","\x47\x50","\x4B\x4E","\x4C\x43","\x4D\x46","\x4D\x53","\x56\x43","\x56\x47","\x56\x49","\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x75\x6E\x61\x66\x75\x74\x69","\x54\x56","\x41\x73\x69\x61\x2F\x54\x61\x69\x70\x65\x69","\x54\x57","\x45\x75\x72\x6F\x70\x65\x2F\x4B\x69\x65\x76","\x55\x41","\x45\x75\x72\x6F\x70\x65\x2F\x55\x7A\x68\x67\x6F\x72\x6F\x64","\x45\x75\x72\x6F\x70\x65\x2F\x5A\x61\x70\x6F\x72\x6F\x7A\x68\x79\x65","\x50\x61\x63\x69\x66\x69\x63\x2F\x57\x61\x6B\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x65\x77\x5F\x59\x6F\x72\x6B","\x55\x53","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x65\x74\x72\x6F\x69\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4B\x65\x6E\x74\x75\x63\x6B\x79\x2F\x4C\x6F\x75\x69\x73\x76\x69\x6C\x6C\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4B\x65\x6E\x74\x75\x63\x6B\x79\x2F\x4D\x6F\x6E\x74\x69\x63\x65\x6C\x6C\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x70\x6F\x6C\x69\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x56\x69\x6E\x63\x65\x6E\x6E\x65\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x57\x69\x6E\x61\x6D\x61\x63","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x4D\x61\x72\x65\x6E\x67\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x50\x65\x74\x65\x72\x73\x62\x75\x72\x67","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x56\x65\x76\x61\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x68\x69\x63\x61\x67\x6F","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x54\x65\x6C\x6C\x5F\x43\x69\x74\x79","\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x4B\x6E\x6F\x78","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x6E\x6F\x6D\x69\x6E\x65\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x43\x65\x6E\x74\x65\x72","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x4E\x65\x77\x5F\x53\x61\x6C\x65\x6D","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x42\x65\x75\x6C\x61\x68","\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x65\x6E\x76\x65\x72","\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x69\x73\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x68\x6F\x65\x6E\x69\x78","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x6F\x73\x5F\x41\x6E\x67\x65\x6C\x65\x73","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x74\x6C\x61\x6B\x61\x74\x6C\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x6E\x63\x68\x6F\x72\x61\x67\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4A\x75\x6E\x65\x61\x75","\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x69\x74\x6B\x61","\x41\x6D\x65\x72\x69\x63\x61\x2F\x59\x61\x6B\x75\x74\x61\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x6D\x65","\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x64\x61\x6B","\x50\x61\x63\x69\x66\x69\x63\x2F\x48\x6F\x6E\x6F\x6C\x75\x6C\x75","\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x74\x65\x76\x69\x64\x65\x6F","\x55\x59","\x41\x73\x69\x61\x2F\x53\x61\x6D\x61\x72\x6B\x61\x6E\x64","\x55\x5A","\x41\x73\x69\x61\x2F\x54\x61\x73\x68\x6B\x65\x6E\x74","\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x72\x61\x63\x61\x73","\x2D\x30\x34\x3A\x33\x30","\x56\x45","\x41\x73\x69\x61\x2F\x48\x6F\x5F\x43\x68\x69\x5F\x4D\x69\x6E\x68","\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x66\x61\x74\x65","\x56\x55","\x50\x61\x63\x69\x66\x69\x63\x2F\x57\x61\x6C\x6C\x69\x73","\x57\x46","\x50\x61\x63\x69\x66\x69\x63\x2F\x41\x70\x69\x61","\x57\x53","\x41\x66\x72\x69\x63\x61\x2F\x4A\x6F\x68\x61\x6E\x6E\x65\x73\x62\x75\x72\x67","\x5A\x41","\x4C\x53","\x53\x5A"];_0x1cd2[0];exports= module[_0x1cd2[1]]= {userRoles:[_0x1cd2[2],_0x1cd2[3],_0x1cd2[4]],timezones:{"\x45\x75\x72\x6F\x70\x65\x2F\x41\x6E\x64\x6F\x72\x72\x61":{name:_0x1cd2[5],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[7]]},"\x41\x73\x69\x61\x2F\x44\x75\x62\x61\x69":{name:_0x1cd2[8],utcOffset:240,offsetStr:_0x1cd2[9],countries:[_0x1cd2[10],_0x1cd2[11]]},"\x41\x73\x69\x61\x2F\x4B\x61\x62\x75\x6C":{name:_0x1cd2[12],utcOffset:270,offsetStr:_0x1cd2[13],countries:[_0x1cd2[14]]},"\x45\x75\x72\x6F\x70\x65\x2F\x54\x69\x72\x61\x6E\x65":{name:_0x1cd2[15],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[16]]},"\x41\x73\x69\x61\x2F\x59\x65\x72\x65\x76\x61\x6E":{name:_0x1cd2[17],utcOffset:240,offsetStr:_0x1cd2[9],countries:[_0x1cd2[18]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x52\x6F\x74\x68\x65\x72\x61":{name:_0x1cd2[19],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x50\x61\x6C\x6D\x65\x72":{name:_0x1cd2[22],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x4D\x61\x77\x73\x6F\x6E":{name:_0x1cd2[23],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x44\x61\x76\x69\x73":{name:_0x1cd2[25],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x43\x61\x73\x65\x79":{name:_0x1cd2[27],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x56\x6F\x73\x74\x6F\x6B":{name:_0x1cd2[29],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x44\x75\x6D\x6F\x6E\x74\x44\x55\x72\x76\x69\x6C\x6C\x65":{name:_0x1cd2[31],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x53\x79\x6F\x77\x61":{name:_0x1cd2[33],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[21]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x54\x72\x6F\x6C\x6C":{name:_0x1cd2[35],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[21]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x42\x75\x65\x6E\x6F\x73\x5F\x41\x69\x72\x65\x73":{name:_0x1cd2[37],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x43\x6F\x72\x64\x6F\x62\x61":{name:_0x1cd2[39],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6C\x74\x61":{name:_0x1cd2[40],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4A\x75\x6A\x75\x79":{name:_0x1cd2[41],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x54\x75\x63\x75\x6D\x61\x6E":{name:_0x1cd2[42],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x43\x61\x74\x61\x6D\x61\x72\x63\x61":{name:_0x1cd2[43],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4C\x61\x5F\x52\x69\x6F\x6A\x61":{name:_0x1cd2[44],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6E\x5F\x4A\x75\x61\x6E":{name:_0x1cd2[45],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x4D\x65\x6E\x64\x6F\x7A\x61":{name:_0x1cd2[46],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x53\x61\x6E\x5F\x4C\x75\x69\x73":{name:_0x1cd2[47],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x52\x69\x6F\x5F\x47\x61\x6C\x6C\x65\x67\x6F\x73":{name:_0x1cd2[48],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x67\x65\x6E\x74\x69\x6E\x61\x2F\x55\x73\x68\x75\x61\x69\x61":{name:_0x1cd2[49],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[38]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x61\x67\x6F\x5F\x50\x61\x67\x6F":{name:_0x1cd2[50],utcOffset:-660,offsetStr:_0x1cd2[51],countries:[_0x1cd2[52],_0x1cd2[53]]},"\x45\x75\x72\x6F\x70\x65\x2F\x56\x69\x65\x6E\x6E\x61":{name:_0x1cd2[54],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[55]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4C\x6F\x72\x64\x5F\x48\x6F\x77\x65":{name:_0x1cd2[56],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[58]]},"\x41\x6E\x74\x61\x72\x63\x74\x69\x63\x61\x2F\x4D\x61\x63\x71\x75\x61\x72\x69\x65":{name:_0x1cd2[59],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x48\x6F\x62\x61\x72\x74":{name:_0x1cd2[60],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x43\x75\x72\x72\x69\x65":{name:_0x1cd2[61],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4D\x65\x6C\x62\x6F\x75\x72\x6E\x65":{name:_0x1cd2[62],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x53\x79\x64\x6E\x65\x79":{name:_0x1cd2[63],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x42\x72\x6F\x6B\x65\x6E\x5F\x48\x69\x6C\x6C":{name:_0x1cd2[64],utcOffset:630,offsetStr:_0x1cd2[65],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x42\x72\x69\x73\x62\x61\x6E\x65":{name:_0x1cd2[66],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x4C\x69\x6E\x64\x65\x6D\x61\x6E":{name:_0x1cd2[67],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x41\x64\x65\x6C\x61\x69\x64\x65":{name:_0x1cd2[68],utcOffset:630,offsetStr:_0x1cd2[65],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x44\x61\x72\x77\x69\x6E":{name:_0x1cd2[69],utcOffset:570,offsetStr:_0x1cd2[70],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x50\x65\x72\x74\x68":{name:_0x1cd2[71],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[58]]},"\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x2F\x45\x75\x63\x6C\x61":{name:_0x1cd2[72],utcOffset:525,offsetStr:_0x1cd2[73],countries:[_0x1cd2[58]]},"\x41\x73\x69\x61\x2F\x42\x61\x6B\x75":{name:_0x1cd2[74],utcOffset:240,offsetStr:_0x1cd2[9],countries:[_0x1cd2[75]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x72\x62\x61\x64\x6F\x73":{name:_0x1cd2[76],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[78]]},"\x41\x73\x69\x61\x2F\x44\x68\x61\x6B\x61":{name:_0x1cd2[79],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[80]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x72\x75\x73\x73\x65\x6C\x73":{name:_0x1cd2[81],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[82]]},"\x45\x75\x72\x6F\x70\x65\x2F\x53\x6F\x66\x69\x61":{name:_0x1cd2[83],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[85]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x42\x65\x72\x6D\x75\x64\x61":{name:_0x1cd2[86],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[87]]},"\x41\x73\x69\x61\x2F\x42\x72\x75\x6E\x65\x69":{name:_0x1cd2[88],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[89]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x61\x5F\x50\x61\x7A":{name:_0x1cd2[90],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[91]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x6F\x6E\x68\x61":{name:_0x1cd2[92],utcOffset:-120,offsetStr:_0x1cd2[93],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x65\x6C\x65\x6D":{name:_0x1cd2[95],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x46\x6F\x72\x74\x61\x6C\x65\x7A\x61":{name:_0x1cd2[96],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x63\x69\x66\x65":{name:_0x1cd2[97],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x72\x61\x67\x75\x61\x69\x6E\x61":{name:_0x1cd2[98],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x63\x65\x69\x6F":{name:_0x1cd2[99],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x68\x69\x61":{name:_0x1cd2[100],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6F\x5F\x50\x61\x75\x6C\x6F":{name:_0x1cd2[101],utcOffset:-120,offsetStr:_0x1cd2[93],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6D\x70\x6F\x5F\x47\x72\x61\x6E\x64\x65":{name:_0x1cd2[102],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x75\x69\x61\x62\x61":{name:_0x1cd2[103],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x61\x72\x65\x6D":{name:_0x1cd2[104],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x6F\x5F\x56\x65\x6C\x68\x6F":{name:_0x1cd2[105],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x61\x5F\x56\x69\x73\x74\x61":{name:_0x1cd2[106],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x6E\x61\x75\x73":{name:_0x1cd2[107],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x69\x72\x75\x6E\x65\x70\x65":{name:_0x1cd2[108],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x69\x6F\x5F\x42\x72\x61\x6E\x63\x6F":{name:_0x1cd2[110],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[94]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x61\x73\x73\x61\x75":{name:_0x1cd2[111],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[112]]},"\x41\x73\x69\x61\x2F\x54\x68\x69\x6D\x70\x68\x75":{name:_0x1cd2[113],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[114]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x69\x6E\x73\x6B":{name:_0x1cd2[115],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[116]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x65\x6C\x69\x7A\x65":{name:_0x1cd2[117],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[119]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x74\x5F\x4A\x6F\x68\x6E\x73":{name:_0x1cd2[120],utcOffset:-210,offsetStr:_0x1cd2[121],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x61\x6C\x69\x66\x61\x78":{name:_0x1cd2[123],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6C\x61\x63\x65\x5F\x42\x61\x79":{name:_0x1cd2[124],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x63\x74\x6F\x6E":{name:_0x1cd2[125],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6F\x6F\x73\x65\x5F\x42\x61\x79":{name:_0x1cd2[126],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6C\x61\x6E\x63\x2D\x53\x61\x62\x6C\x6F\x6E":{name:_0x1cd2[127],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x6F\x72\x6F\x6E\x74\x6F":{name:_0x1cd2[128],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x69\x70\x69\x67\x6F\x6E":{name:_0x1cd2[129],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x68\x75\x6E\x64\x65\x72\x5F\x42\x61\x79":{name:_0x1cd2[130],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x71\x61\x6C\x75\x69\x74":{name:_0x1cd2[131],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x6E\x67\x6E\x69\x72\x74\x75\x6E\x67":{name:_0x1cd2[132],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x73\x6F\x6C\x75\x74\x65":{name:_0x1cd2[133],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x74\x69\x6B\x6F\x6B\x61\x6E":{name:_0x1cd2[134],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x61\x6E\x6B\x69\x6E\x5F\x49\x6E\x6C\x65\x74":{name:_0x1cd2[135],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x57\x69\x6E\x6E\x69\x70\x65\x67":{name:_0x1cd2[136],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x61\x69\x6E\x79\x5F\x52\x69\x76\x65\x72":{name:_0x1cd2[137],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x52\x65\x67\x69\x6E\x61":{name:_0x1cd2[138],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x77\x69\x66\x74\x5F\x43\x75\x72\x72\x65\x6E\x74":{name:_0x1cd2[139],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x64\x6D\x6F\x6E\x74\x6F\x6E":{name:_0x1cd2[140],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6D\x62\x72\x69\x64\x67\x65\x5F\x42\x61\x79":{name:_0x1cd2[142],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x59\x65\x6C\x6C\x6F\x77\x6B\x6E\x69\x66\x65":{name:_0x1cd2[143],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x75\x76\x69\x6B":{name:_0x1cd2[144],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x72\x65\x73\x74\x6F\x6E":{name:_0x1cd2[145],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x77\x73\x6F\x6E\x5F\x43\x72\x65\x65\x6B":{name:_0x1cd2[146],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x46\x6F\x72\x74\x5F\x4E\x65\x6C\x73\x6F\x6E":{name:_0x1cd2[147],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x56\x61\x6E\x63\x6F\x75\x76\x65\x72":{name:_0x1cd2[148],utcOffset:-480,offsetStr:_0x1cd2[149],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x57\x68\x69\x74\x65\x68\x6F\x72\x73\x65":{name:_0x1cd2[150],utcOffset:-480,offsetStr:_0x1cd2[149],countries:[_0x1cd2[122]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x77\x73\x6F\x6E":{name:_0x1cd2[151],utcOffset:-480,offsetStr:_0x1cd2[149],countries:[_0x1cd2[122]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x43\x6F\x63\x6F\x73":{name:_0x1cd2[152],utcOffset:390,offsetStr:_0x1cd2[153],countries:[_0x1cd2[154]]},"\x45\x75\x72\x6F\x70\x65\x2F\x5A\x75\x72\x69\x63\x68":{name:_0x1cd2[155],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[156],_0x1cd2[157],_0x1cd2[158]]},"\x41\x66\x72\x69\x63\x61\x2F\x41\x62\x69\x64\x6A\x61\x6E":{name:_0x1cd2[159],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[160],_0x1cd2[161],_0x1cd2[162],_0x1cd2[163],_0x1cd2[164],_0x1cd2[165],_0x1cd2[166],_0x1cd2[167],_0x1cd2[168],_0x1cd2[169],_0x1cd2[170]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x52\x61\x72\x6F\x74\x6F\x6E\x67\x61":{name:_0x1cd2[171],utcOffset:-600,offsetStr:_0x1cd2[172],countries:[_0x1cd2[173]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x69\x61\x67\x6F":{name:_0x1cd2[174],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[175]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x61\x73\x74\x65\x72":{name:_0x1cd2[176],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[175]]},"\x41\x73\x69\x61\x2F\x53\x68\x61\x6E\x67\x68\x61\x69":{name:_0x1cd2[177],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[178]]},"\x41\x73\x69\x61\x2F\x55\x72\x75\x6D\x71\x69":{name:_0x1cd2[179],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[178]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x67\x6F\x74\x61":{name:_0x1cd2[180],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[181]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x6F\x73\x74\x61\x5F\x52\x69\x63\x61":{name:_0x1cd2[182],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[183]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x61\x76\x61\x6E\x61":{name:_0x1cd2[184],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[185]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x43\x61\x70\x65\x5F\x56\x65\x72\x64\x65":{name:_0x1cd2[186],utcOffset:-60,offsetStr:_0x1cd2[187],countries:[_0x1cd2[188]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x75\x72\x61\x63\x61\x6F":{name:_0x1cd2[189],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[190],_0x1cd2[191],_0x1cd2[192],_0x1cd2[193]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x43\x68\x72\x69\x73\x74\x6D\x61\x73":{name:_0x1cd2[194],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[195]]},"\x41\x73\x69\x61\x2F\x4E\x69\x63\x6F\x73\x69\x61":{name:_0x1cd2[196],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[197]]},"\x45\x75\x72\x6F\x70\x65\x2F\x50\x72\x61\x67\x75\x65":{name:_0x1cd2[198],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[199],_0x1cd2[200]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x65\x72\x6C\x69\x6E":{name:_0x1cd2[201],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[157]]},"\x45\x75\x72\x6F\x70\x65\x2F\x43\x6F\x70\x65\x6E\x68\x61\x67\x65\x6E":{name:_0x1cd2[202],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[203]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x6F\x5F\x44\x6F\x6D\x69\x6E\x67\x6F":{name:_0x1cd2[204],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[205]]},"\x41\x66\x72\x69\x63\x61\x2F\x41\x6C\x67\x69\x65\x72\x73":{name:_0x1cd2[206],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[207]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x61\x79\x61\x71\x75\x69\x6C":{name:_0x1cd2[208],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[209]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x61\x6C\x61\x70\x61\x67\x6F\x73":{name:_0x1cd2[210],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[209]]},"\x45\x75\x72\x6F\x70\x65\x2F\x54\x61\x6C\x6C\x69\x6E\x6E":{name:_0x1cd2[211],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[212]]},"\x41\x66\x72\x69\x63\x61\x2F\x43\x61\x69\x72\x6F":{name:_0x1cd2[213],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[214]]},"\x41\x66\x72\x69\x63\x61\x2F\x45\x6C\x5F\x41\x61\x69\x75\x6E":{name:_0x1cd2[215],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[216]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x61\x64\x72\x69\x64":{name:_0x1cd2[217],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[218]]},"\x41\x66\x72\x69\x63\x61\x2F\x43\x65\x75\x74\x61":{name:_0x1cd2[219],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[218]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x43\x61\x6E\x61\x72\x79":{name:_0x1cd2[220],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[218]]},"\x45\x75\x72\x6F\x70\x65\x2F\x48\x65\x6C\x73\x69\x6E\x6B\x69":{name:_0x1cd2[221],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[222],_0x1cd2[223]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x69\x6A\x69":{name:_0x1cd2[224],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[226]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x53\x74\x61\x6E\x6C\x65\x79":{name:_0x1cd2[227],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[228]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x43\x68\x75\x75\x6B":{name:_0x1cd2[229],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[230]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x6F\x68\x6E\x70\x65\x69":{name:_0x1cd2[231],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[230]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x6F\x73\x72\x61\x65":{name:_0x1cd2[232],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[230]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x46\x61\x72\x6F\x65":{name:_0x1cd2[233],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[234]]},"\x45\x75\x72\x6F\x70\x65\x2F\x50\x61\x72\x69\x73":{name:_0x1cd2[235],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[236]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4C\x6F\x6E\x64\x6F\x6E":{name:_0x1cd2[237],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[238],_0x1cd2[239],_0x1cd2[240],_0x1cd2[241]]},"\x41\x73\x69\x61\x2F\x54\x62\x69\x6C\x69\x73\x69":{name:_0x1cd2[242],utcOffset:240,offsetStr:_0x1cd2[9],countries:[_0x1cd2[243]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x79\x65\x6E\x6E\x65":{name:_0x1cd2[244],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[245]]},"\x41\x66\x72\x69\x63\x61\x2F\x41\x63\x63\x72\x61":{name:_0x1cd2[246],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[247]]},"\x45\x75\x72\x6F\x70\x65\x2F\x47\x69\x62\x72\x61\x6C\x74\x61\x72":{name:_0x1cd2[248],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[249]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x6F\x64\x74\x68\x61\x62":{name:_0x1cd2[250],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[251]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x61\x6E\x6D\x61\x72\x6B\x73\x68\x61\x76\x6E":{name:_0x1cd2[252],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[251]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x63\x6F\x72\x65\x73\x62\x79\x73\x75\x6E\x64":{name:_0x1cd2[253],utcOffset:-60,offsetStr:_0x1cd2[187],countries:[_0x1cd2[251]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x68\x75\x6C\x65":{name:_0x1cd2[254],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[251]]},"\x45\x75\x72\x6F\x70\x65\x2F\x41\x74\x68\x65\x6E\x73":{name:_0x1cd2[255],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[256]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x53\x6F\x75\x74\x68\x5F\x47\x65\x6F\x72\x67\x69\x61":{name:_0x1cd2[257],utcOffset:-120,offsetStr:_0x1cd2[93],countries:[_0x1cd2[258]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x61\x74\x65\x6D\x61\x6C\x61":{name:_0x1cd2[259],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[260]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x75\x61\x6D":{name:_0x1cd2[261],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[262],_0x1cd2[263]]},"\x41\x66\x72\x69\x63\x61\x2F\x42\x69\x73\x73\x61\x75":{name:_0x1cd2[264],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[265]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x75\x79\x61\x6E\x61":{name:_0x1cd2[266],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[267]]},"\x41\x73\x69\x61\x2F\x48\x6F\x6E\x67\x5F\x4B\x6F\x6E\x67":{name:_0x1cd2[268],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[269]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x65\x67\x75\x63\x69\x67\x61\x6C\x70\x61":{name:_0x1cd2[270],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[271]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x2D\x61\x75\x2D\x50\x72\x69\x6E\x63\x65":{name:_0x1cd2[272],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[273]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x75\x64\x61\x70\x65\x73\x74":{name:_0x1cd2[274],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[275]]},"\x41\x73\x69\x61\x2F\x4A\x61\x6B\x61\x72\x74\x61":{name:_0x1cd2[276],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[277]]},"\x41\x73\x69\x61\x2F\x50\x6F\x6E\x74\x69\x61\x6E\x61\x6B":{name:_0x1cd2[278],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[277]]},"\x41\x73\x69\x61\x2F\x4D\x61\x6B\x61\x73\x73\x61\x72":{name:_0x1cd2[279],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[277]]},"\x41\x73\x69\x61\x2F\x4A\x61\x79\x61\x70\x75\x72\x61":{name:_0x1cd2[280],utcOffset:540,offsetStr:_0x1cd2[281],countries:[_0x1cd2[277]]},"\x45\x75\x72\x6F\x70\x65\x2F\x44\x75\x62\x6C\x69\x6E":{name:_0x1cd2[282],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[283]]},"\x41\x73\x69\x61\x2F\x4A\x65\x72\x75\x73\x61\x6C\x65\x6D":{name:_0x1cd2[284],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[285]]},"\x41\x73\x69\x61\x2F\x4B\x6F\x6C\x6B\x61\x74\x61":{name:_0x1cd2[286],utcOffset:330,offsetStr:_0x1cd2[287],countries:[_0x1cd2[288]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x43\x68\x61\x67\x6F\x73":{name:_0x1cd2[289],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[290]]},"\x41\x73\x69\x61\x2F\x42\x61\x67\x68\x64\x61\x64":{name:_0x1cd2[291],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[292]]},"\x41\x73\x69\x61\x2F\x54\x65\x68\x72\x61\x6E":{name:_0x1cd2[293],utcOffset:210,offsetStr:_0x1cd2[294],countries:[_0x1cd2[295]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x52\x65\x79\x6B\x6A\x61\x76\x69\x6B":{name:_0x1cd2[296],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[297]]},"\x45\x75\x72\x6F\x70\x65\x2F\x52\x6F\x6D\x65":{name:_0x1cd2[298],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[299],_0x1cd2[300],_0x1cd2[301]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4A\x61\x6D\x61\x69\x63\x61":{name:_0x1cd2[302],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[303]]},"\x41\x73\x69\x61\x2F\x41\x6D\x6D\x61\x6E":{name:_0x1cd2[304],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[305]]},"\x41\x73\x69\x61\x2F\x54\x6F\x6B\x79\x6F":{name:_0x1cd2[306],utcOffset:540,offsetStr:_0x1cd2[281],countries:[_0x1cd2[307]]},"\x41\x66\x72\x69\x63\x61\x2F\x4E\x61\x69\x72\x6F\x62\x69":{name:_0x1cd2[308],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[309],_0x1cd2[310],_0x1cd2[311],_0x1cd2[312],_0x1cd2[313],_0x1cd2[314],_0x1cd2[315],_0x1cd2[316],_0x1cd2[317],_0x1cd2[318]]},"\x41\x73\x69\x61\x2F\x42\x69\x73\x68\x6B\x65\x6B":{name:_0x1cd2[319],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[320]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x61\x72\x61\x77\x61":{name:_0x1cd2[321],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[322]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x6E\x64\x65\x72\x62\x75\x72\x79":{name:_0x1cd2[323],utcOffset:780,offsetStr:_0x1cd2[324],countries:[_0x1cd2[322]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x69\x72\x69\x74\x69\x6D\x61\x74\x69":{name:_0x1cd2[325],utcOffset:840,offsetStr:_0x1cd2[326],countries:[_0x1cd2[322]]},"\x41\x73\x69\x61\x2F\x50\x79\x6F\x6E\x67\x79\x61\x6E\x67":{name:_0x1cd2[327],utcOffset:510,offsetStr:_0x1cd2[328],countries:[_0x1cd2[329]]},"\x41\x73\x69\x61\x2F\x53\x65\x6F\x75\x6C":{name:_0x1cd2[330],utcOffset:540,offsetStr:_0x1cd2[281],countries:[_0x1cd2[331]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x79\x6D\x61\x6E":{name:_0x1cd2[332],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[333]]},"\x41\x73\x69\x61\x2F\x41\x6C\x6D\x61\x74\x79":{name:_0x1cd2[334],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[335]]},"\x41\x73\x69\x61\x2F\x51\x79\x7A\x79\x6C\x6F\x72\x64\x61":{name:_0x1cd2[336],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[335]]},"\x41\x73\x69\x61\x2F\x41\x71\x74\x6F\x62\x65":{name:_0x1cd2[337],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[335]]},"\x41\x73\x69\x61\x2F\x41\x71\x74\x61\x75":{name:_0x1cd2[338],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[335]]},"\x41\x73\x69\x61\x2F\x4F\x72\x61\x6C":{name:_0x1cd2[339],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[335]]},"\x41\x73\x69\x61\x2F\x42\x65\x69\x72\x75\x74":{name:_0x1cd2[340],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[341]]},"\x41\x73\x69\x61\x2F\x43\x6F\x6C\x6F\x6D\x62\x6F":{name:_0x1cd2[342],utcOffset:330,offsetStr:_0x1cd2[287],countries:[_0x1cd2[343]]},"\x41\x66\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x72\x6F\x76\x69\x61":{name:_0x1cd2[344],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[345]]},"\x45\x75\x72\x6F\x70\x65\x2F\x56\x69\x6C\x6E\x69\x75\x73":{name:_0x1cd2[346],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[347]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4C\x75\x78\x65\x6D\x62\x6F\x75\x72\x67":{name:_0x1cd2[348],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[349]]},"\x45\x75\x72\x6F\x70\x65\x2F\x52\x69\x67\x61":{name:_0x1cd2[350],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[351]]},"\x41\x66\x72\x69\x63\x61\x2F\x54\x72\x69\x70\x6F\x6C\x69":{name:_0x1cd2[352],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[353]]},"\x41\x66\x72\x69\x63\x61\x2F\x43\x61\x73\x61\x62\x6C\x61\x6E\x63\x61":{name:_0x1cd2[354],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[355]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x6F\x6E\x61\x63\x6F":{name:_0x1cd2[356],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[357]]},"\x45\x75\x72\x6F\x70\x65\x2F\x43\x68\x69\x73\x69\x6E\x61\x75":{name:_0x1cd2[358],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[359]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4D\x61\x6A\x75\x72\x6F":{name:_0x1cd2[360],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[361]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4B\x77\x61\x6A\x61\x6C\x65\x69\x6E":{name:_0x1cd2[362],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[361]]},"\x41\x73\x69\x61\x2F\x52\x61\x6E\x67\x6F\x6F\x6E":{name:_0x1cd2[363],utcOffset:390,offsetStr:_0x1cd2[153],countries:[_0x1cd2[364]]},"\x41\x73\x69\x61\x2F\x55\x6C\x61\x61\x6E\x62\x61\x61\x74\x61\x72":{name:_0x1cd2[365],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[366]]},"\x41\x73\x69\x61\x2F\x48\x6F\x76\x64":{name:_0x1cd2[367],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[366]]},"\x41\x73\x69\x61\x2F\x43\x68\x6F\x69\x62\x61\x6C\x73\x61\x6E":{name:_0x1cd2[368],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[366]]},"\x41\x73\x69\x61\x2F\x4D\x61\x63\x61\x75":{name:_0x1cd2[369],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[370]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x72\x74\x69\x6E\x69\x71\x75\x65":{name:_0x1cd2[371],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[372]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x61\x6C\x74\x61":{name:_0x1cd2[373],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[374]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x75\x72\x69\x74\x69\x75\x73":{name:_0x1cd2[375],utcOffset:240,offsetStr:_0x1cd2[9],countries:[_0x1cd2[376]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x6C\x64\x69\x76\x65\x73":{name:_0x1cd2[377],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[378]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x78\x69\x63\x6F\x5F\x43\x69\x74\x79":{name:_0x1cd2[379],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x6E\x63\x75\x6E":{name:_0x1cd2[381],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x72\x69\x64\x61":{name:_0x1cd2[382],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x74\x65\x72\x72\x65\x79":{name:_0x1cd2[383],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x74\x61\x6D\x6F\x72\x6F\x73":{name:_0x1cd2[384],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x7A\x61\x74\x6C\x61\x6E":{name:_0x1cd2[385],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x68\x69\x68\x75\x61\x68\x75\x61":{name:_0x1cd2[386],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4F\x6A\x69\x6E\x61\x67\x61":{name:_0x1cd2[387],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x48\x65\x72\x6D\x6F\x73\x69\x6C\x6C\x6F":{name:_0x1cd2[388],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x54\x69\x6A\x75\x61\x6E\x61":{name:_0x1cd2[389],utcOffset:-480,offsetStr:_0x1cd2[149],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x61\x6E\x74\x61\x5F\x49\x73\x61\x62\x65\x6C":{name:_0x1cd2[390],utcOffset:-480,offsetStr:_0x1cd2[149],countries:[_0x1cd2[380]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x61\x68\x69\x61\x5F\x42\x61\x6E\x64\x65\x72\x61\x73":{name:_0x1cd2[391],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[380]]},"\x41\x73\x69\x61\x2F\x4B\x75\x61\x6C\x61\x5F\x4C\x75\x6D\x70\x75\x72":{name:_0x1cd2[392],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[393]]},"\x41\x73\x69\x61\x2F\x4B\x75\x63\x68\x69\x6E\x67":{name:_0x1cd2[394],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[393]]},"\x41\x66\x72\x69\x63\x61\x2F\x4D\x61\x70\x75\x74\x6F":{name:_0x1cd2[395],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[396],_0x1cd2[397],_0x1cd2[398],_0x1cd2[399],_0x1cd2[400],_0x1cd2[401],_0x1cd2[402],_0x1cd2[403]]},"\x41\x66\x72\x69\x63\x61\x2F\x57\x69\x6E\x64\x68\x6F\x65\x6B":{name:_0x1cd2[404],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[405]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x6F\x75\x6D\x65\x61":{name:_0x1cd2[406],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[407]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x6F\x72\x66\x6F\x6C\x6B":{name:_0x1cd2[408],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[409]]},"\x41\x66\x72\x69\x63\x61\x2F\x4C\x61\x67\x6F\x73":{name:_0x1cd2[410],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[411],_0x1cd2[412],_0x1cd2[413],_0x1cd2[399],_0x1cd2[414],_0x1cd2[415],_0x1cd2[416],_0x1cd2[417],_0x1cd2[418],_0x1cd2[419]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x61\x6E\x61\x67\x75\x61":{name:_0x1cd2[420],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[421]]},"\x45\x75\x72\x6F\x70\x65\x2F\x41\x6D\x73\x74\x65\x72\x64\x61\x6D":{name:_0x1cd2[422],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[423]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4F\x73\x6C\x6F":{name:_0x1cd2[424],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[425],_0x1cd2[426]]},"\x41\x73\x69\x61\x2F\x4B\x61\x74\x68\x6D\x61\x6E\x64\x75":{name:_0x1cd2[427],utcOffset:345,offsetStr:_0x1cd2[428],countries:[_0x1cd2[429]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x61\x75\x72\x75":{name:_0x1cd2[430],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[431]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4E\x69\x75\x65":{name:_0x1cd2[432],utcOffset:-660,offsetStr:_0x1cd2[51],countries:[_0x1cd2[433]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x41\x75\x63\x6B\x6C\x61\x6E\x64":{name:_0x1cd2[434],utcOffset:780,offsetStr:_0x1cd2[324],countries:[_0x1cd2[435],_0x1cd2[21]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x43\x68\x61\x74\x68\x61\x6D":{name:_0x1cd2[436],utcOffset:825,offsetStr:_0x1cd2[437],countries:[_0x1cd2[435]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x6E\x61\x6D\x61":{name:_0x1cd2[438],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[439]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x69\x6D\x61":{name:_0x1cd2[440],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[441]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x61\x68\x69\x74\x69":{name:_0x1cd2[442],utcOffset:-600,offsetStr:_0x1cd2[172],countries:[_0x1cd2[443]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x4D\x61\x72\x71\x75\x65\x73\x61\x73":{name:_0x1cd2[444],utcOffset:-570,offsetStr:_0x1cd2[445],countries:[_0x1cd2[443]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x61\x6D\x62\x69\x65\x72":{name:_0x1cd2[446],utcOffset:-540,offsetStr:_0x1cd2[447],countries:[_0x1cd2[443]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x6F\x72\x74\x5F\x4D\x6F\x72\x65\x73\x62\x79":{name:_0x1cd2[448],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[449]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x42\x6F\x75\x67\x61\x69\x6E\x76\x69\x6C\x6C\x65":{name:_0x1cd2[450],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[449]]},"\x41\x73\x69\x61\x2F\x4D\x61\x6E\x69\x6C\x61":{name:_0x1cd2[451],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[452]]},"\x41\x73\x69\x61\x2F\x4B\x61\x72\x61\x63\x68\x69":{name:_0x1cd2[453],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[454]]},"\x45\x75\x72\x6F\x70\x65\x2F\x57\x61\x72\x73\x61\x77":{name:_0x1cd2[455],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[456]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x69\x71\x75\x65\x6C\x6F\x6E":{name:_0x1cd2[457],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[458]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x69\x74\x63\x61\x69\x72\x6E":{name:_0x1cd2[459],utcOffset:-480,offsetStr:_0x1cd2[149],countries:[_0x1cd2[460]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x75\x65\x72\x74\x6F\x5F\x52\x69\x63\x6F":{name:_0x1cd2[461],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[462]]},"\x41\x73\x69\x61\x2F\x47\x61\x7A\x61":{name:_0x1cd2[463],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[464]]},"\x41\x73\x69\x61\x2F\x48\x65\x62\x72\x6F\x6E":{name:_0x1cd2[465],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[464]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4C\x69\x73\x62\x6F\x6E":{name:_0x1cd2[466],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[467]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x4D\x61\x64\x65\x69\x72\x61":{name:_0x1cd2[468],utcOffset:0,offsetStr:_0x1cd2[36],countries:[_0x1cd2[467]]},"\x41\x74\x6C\x61\x6E\x74\x69\x63\x2F\x41\x7A\x6F\x72\x65\x73":{name:_0x1cd2[469],utcOffset:-60,offsetStr:_0x1cd2[187],countries:[_0x1cd2[467]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x50\x61\x6C\x61\x75":{name:_0x1cd2[470],utcOffset:540,offsetStr:_0x1cd2[281],countries:[_0x1cd2[471]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x73\x75\x6E\x63\x69\x6F\x6E":{name:_0x1cd2[472],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[473]]},"\x41\x73\x69\x61\x2F\x51\x61\x74\x61\x72":{name:_0x1cd2[474],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[475],_0x1cd2[476]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x52\x65\x75\x6E\x69\x6F\x6E":{name:_0x1cd2[477],utcOffset:240,offsetStr:_0x1cd2[9],countries:[_0x1cd2[478],_0x1cd2[479]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x75\x63\x68\x61\x72\x65\x73\x74":{name:_0x1cd2[480],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[481]]},"\x45\x75\x72\x6F\x70\x65\x2F\x42\x65\x6C\x67\x72\x61\x64\x65":{name:_0x1cd2[482],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[483],_0x1cd2[484],_0x1cd2[485],_0x1cd2[486],_0x1cd2[487],_0x1cd2[488]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4B\x61\x6C\x69\x6E\x69\x6E\x67\x72\x61\x64":{name:_0x1cd2[489],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[490]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4D\x6F\x73\x63\x6F\x77":{name:_0x1cd2[491],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[490]]},"\x45\x75\x72\x6F\x70\x65\x2F\x53\x69\x6D\x66\x65\x72\x6F\x70\x6F\x6C":{name:_0x1cd2[492],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[490]]},"\x45\x75\x72\x6F\x70\x65\x2F\x56\x6F\x6C\x67\x6F\x67\x72\x61\x64":{name:_0x1cd2[493],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[490]]},"\x45\x75\x72\x6F\x70\x65\x2F\x53\x61\x6D\x61\x72\x61":{name:_0x1cd2[494],utcOffset:240,offsetStr:_0x1cd2[9],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x59\x65\x6B\x61\x74\x65\x72\x69\x6E\x62\x75\x72\x67":{name:_0x1cd2[495],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x4F\x6D\x73\x6B":{name:_0x1cd2[496],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x4E\x6F\x76\x6F\x73\x69\x62\x69\x72\x73\x6B":{name:_0x1cd2[497],utcOffset:360,offsetStr:_0x1cd2[30],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x4E\x6F\x76\x6F\x6B\x75\x7A\x6E\x65\x74\x73\x6B":{name:_0x1cd2[498],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x4B\x72\x61\x73\x6E\x6F\x79\x61\x72\x73\x6B":{name:_0x1cd2[499],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x49\x72\x6B\x75\x74\x73\x6B":{name:_0x1cd2[500],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x43\x68\x69\x74\x61":{name:_0x1cd2[501],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x59\x61\x6B\x75\x74\x73\x6B":{name:_0x1cd2[502],utcOffset:540,offsetStr:_0x1cd2[281],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x4B\x68\x61\x6E\x64\x79\x67\x61":{name:_0x1cd2[503],utcOffset:540,offsetStr:_0x1cd2[281],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x56\x6C\x61\x64\x69\x76\x6F\x73\x74\x6F\x6B":{name:_0x1cd2[504],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x53\x61\x6B\x68\x61\x6C\x69\x6E":{name:_0x1cd2[505],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x55\x73\x74\x2D\x4E\x65\x72\x61":{name:_0x1cd2[506],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x4D\x61\x67\x61\x64\x61\x6E":{name:_0x1cd2[507],utcOffset:600,offsetStr:_0x1cd2[32],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x53\x72\x65\x64\x6E\x65\x6B\x6F\x6C\x79\x6D\x73\x6B":{name:_0x1cd2[508],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x4B\x61\x6D\x63\x68\x61\x74\x6B\x61":{name:_0x1cd2[509],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x41\x6E\x61\x64\x79\x72":{name:_0x1cd2[510],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[490]]},"\x41\x73\x69\x61\x2F\x52\x69\x79\x61\x64\x68":{name:_0x1cd2[511],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[512],_0x1cd2[513],_0x1cd2[514]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x47\x75\x61\x64\x61\x6C\x63\x61\x6E\x61\x6C":{name:_0x1cd2[515],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[516]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x4D\x61\x68\x65":{name:_0x1cd2[517],utcOffset:240,offsetStr:_0x1cd2[9],countries:[_0x1cd2[518]]},"\x41\x66\x72\x69\x63\x61\x2F\x4B\x68\x61\x72\x74\x6F\x75\x6D":{name:_0x1cd2[519],utcOffset:180,offsetStr:_0x1cd2[34],countries:[_0x1cd2[520],_0x1cd2[521]]},"\x45\x75\x72\x6F\x70\x65\x2F\x53\x74\x6F\x63\x6B\x68\x6F\x6C\x6D":{name:_0x1cd2[522],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[523]]},"\x41\x73\x69\x61\x2F\x53\x69\x6E\x67\x61\x70\x6F\x72\x65":{name:_0x1cd2[524],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[525]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x61\x72\x61\x6D\x61\x72\x69\x62\x6F":{name:_0x1cd2[526],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[527]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x45\x6C\x5F\x53\x61\x6C\x76\x61\x64\x6F\x72":{name:_0x1cd2[528],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[529]]},"\x41\x73\x69\x61\x2F\x44\x61\x6D\x61\x73\x63\x75\x73":{name:_0x1cd2[530],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[531]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x47\x72\x61\x6E\x64\x5F\x54\x75\x72\x6B":{name:_0x1cd2[532],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[533]]},"\x41\x66\x72\x69\x63\x61\x2F\x4E\x64\x6A\x61\x6D\x65\x6E\x61":{name:_0x1cd2[534],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[535]]},"\x49\x6E\x64\x69\x61\x6E\x2F\x4B\x65\x72\x67\x75\x65\x6C\x65\x6E":{name:_0x1cd2[536],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[479]]},"\x41\x73\x69\x61\x2F\x42\x61\x6E\x67\x6B\x6F\x6B":{name:_0x1cd2[537],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[538],_0x1cd2[539],_0x1cd2[540],_0x1cd2[541]]},"\x41\x73\x69\x61\x2F\x44\x75\x73\x68\x61\x6E\x62\x65":{name:_0x1cd2[542],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[543]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x61\x6B\x61\x6F\x66\x6F":{name:_0x1cd2[544],utcOffset:780,offsetStr:_0x1cd2[324],countries:[_0x1cd2[545]]},"\x41\x73\x69\x61\x2F\x44\x69\x6C\x69":{name:_0x1cd2[546],utcOffset:540,offsetStr:_0x1cd2[281],countries:[_0x1cd2[547]]},"\x41\x73\x69\x61\x2F\x41\x73\x68\x67\x61\x62\x61\x74":{name:_0x1cd2[548],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[549]]},"\x41\x66\x72\x69\x63\x61\x2F\x54\x75\x6E\x69\x73":{name:_0x1cd2[550],utcOffset:60,offsetStr:_0x1cd2[6],countries:[_0x1cd2[551]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x54\x6F\x6E\x67\x61\x74\x61\x70\x75":{name:_0x1cd2[552],utcOffset:780,offsetStr:_0x1cd2[324],countries:[_0x1cd2[553]]},"\x45\x75\x72\x6F\x70\x65\x2F\x49\x73\x74\x61\x6E\x62\x75\x6C":{name:_0x1cd2[554],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[555]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x6F\x72\x74\x5F\x6F\x66\x5F\x53\x70\x61\x69\x6E":{name:_0x1cd2[556],utcOffset:-240,offsetStr:_0x1cd2[77],countries:[_0x1cd2[557],_0x1cd2[558],_0x1cd2[559],_0x1cd2[560],_0x1cd2[561],_0x1cd2[562],_0x1cd2[563],_0x1cd2[564],_0x1cd2[565],_0x1cd2[566],_0x1cd2[567],_0x1cd2[568],_0x1cd2[569],_0x1cd2[570]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x46\x75\x6E\x61\x66\x75\x74\x69":{name:_0x1cd2[571],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[572]]},"\x41\x73\x69\x61\x2F\x54\x61\x69\x70\x65\x69":{name:_0x1cd2[573],utcOffset:480,offsetStr:_0x1cd2[28],countries:[_0x1cd2[574]]},"\x45\x75\x72\x6F\x70\x65\x2F\x4B\x69\x65\x76":{name:_0x1cd2[575],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[576]]},"\x45\x75\x72\x6F\x70\x65\x2F\x55\x7A\x68\x67\x6F\x72\x6F\x64":{name:_0x1cd2[577],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[576]]},"\x45\x75\x72\x6F\x70\x65\x2F\x5A\x61\x70\x6F\x72\x6F\x7A\x68\x79\x65":{name:_0x1cd2[578],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[576]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x57\x61\x6B\x65":{name:_0x1cd2[579],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[53]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x65\x77\x5F\x59\x6F\x72\x6B":{name:_0x1cd2[580],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x65\x74\x72\x6F\x69\x74":{name:_0x1cd2[582],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4B\x65\x6E\x74\x75\x63\x6B\x79\x2F\x4C\x6F\x75\x69\x73\x76\x69\x6C\x6C\x65":{name:_0x1cd2[583],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4B\x65\x6E\x74\x75\x63\x6B\x79\x2F\x4D\x6F\x6E\x74\x69\x63\x65\x6C\x6C\x6F":{name:_0x1cd2[584],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x70\x6F\x6C\x69\x73":{name:_0x1cd2[585],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x56\x69\x6E\x63\x65\x6E\x6E\x65\x73":{name:_0x1cd2[586],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x57\x69\x6E\x61\x6D\x61\x63":{name:_0x1cd2[587],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x4D\x61\x72\x65\x6E\x67\x6F":{name:_0x1cd2[588],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x50\x65\x74\x65\x72\x73\x62\x75\x72\x67":{name:_0x1cd2[589],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x56\x65\x76\x61\x79":{name:_0x1cd2[590],utcOffset:-300,offsetStr:_0x1cd2[109],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x68\x69\x63\x61\x67\x6F":{name:_0x1cd2[591],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x54\x65\x6C\x6C\x5F\x43\x69\x74\x79":{name:_0x1cd2[592],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x49\x6E\x64\x69\x61\x6E\x61\x2F\x4B\x6E\x6F\x78":{name:_0x1cd2[593],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x6E\x6F\x6D\x69\x6E\x65\x65":{name:_0x1cd2[594],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x43\x65\x6E\x74\x65\x72":{name:_0x1cd2[595],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x4E\x65\x77\x5F\x53\x61\x6C\x65\x6D":{name:_0x1cd2[596],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x72\x74\x68\x5F\x44\x61\x6B\x6F\x74\x61\x2F\x42\x65\x75\x6C\x61\x68":{name:_0x1cd2[597],utcOffset:-360,offsetStr:_0x1cd2[118],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x44\x65\x6E\x76\x65\x72":{name:_0x1cd2[598],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x42\x6F\x69\x73\x65":{name:_0x1cd2[599],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x50\x68\x6F\x65\x6E\x69\x78":{name:_0x1cd2[600],utcOffset:-420,offsetStr:_0x1cd2[141],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4C\x6F\x73\x5F\x41\x6E\x67\x65\x6C\x65\x73":{name:_0x1cd2[601],utcOffset:-480,offsetStr:_0x1cd2[149],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x65\x74\x6C\x61\x6B\x61\x74\x6C\x61":{name:_0x1cd2[602],utcOffset:-480,offsetStr:_0x1cd2[149],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x6E\x63\x68\x6F\x72\x61\x67\x65":{name:_0x1cd2[603],utcOffset:-540,offsetStr:_0x1cd2[447],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4A\x75\x6E\x65\x61\x75":{name:_0x1cd2[604],utcOffset:-540,offsetStr:_0x1cd2[447],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x53\x69\x74\x6B\x61":{name:_0x1cd2[605],utcOffset:-540,offsetStr:_0x1cd2[447],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x59\x61\x6B\x75\x74\x61\x74":{name:_0x1cd2[606],utcOffset:-540,offsetStr:_0x1cd2[447],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4E\x6F\x6D\x65":{name:_0x1cd2[607],utcOffset:-540,offsetStr:_0x1cd2[447],countries:[_0x1cd2[581]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x41\x64\x61\x6B":{name:_0x1cd2[608],utcOffset:-600,offsetStr:_0x1cd2[172],countries:[_0x1cd2[581]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x48\x6F\x6E\x6F\x6C\x75\x6C\x75":{name:_0x1cd2[609],utcOffset:-600,offsetStr:_0x1cd2[172],countries:[_0x1cd2[581],_0x1cd2[53]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x4D\x6F\x6E\x74\x65\x76\x69\x64\x65\x6F":{name:_0x1cd2[610],utcOffset:-180,offsetStr:_0x1cd2[20],countries:[_0x1cd2[611]]},"\x41\x73\x69\x61\x2F\x53\x61\x6D\x61\x72\x6B\x61\x6E\x64":{name:_0x1cd2[612],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[613]]},"\x41\x73\x69\x61\x2F\x54\x61\x73\x68\x6B\x65\x6E\x74":{name:_0x1cd2[614],utcOffset:300,offsetStr:_0x1cd2[24],countries:[_0x1cd2[613]]},"\x41\x6D\x65\x72\x69\x63\x61\x2F\x43\x61\x72\x61\x63\x61\x73":{name:_0x1cd2[615],utcOffset:-270,offsetStr:_0x1cd2[616],countries:[_0x1cd2[617]]},"\x41\x73\x69\x61\x2F\x48\x6F\x5F\x43\x68\x69\x5F\x4D\x69\x6E\x68":{name:_0x1cd2[618],utcOffset:420,offsetStr:_0x1cd2[26],countries:[_0x1cd2[541]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x45\x66\x61\x74\x65":{name:_0x1cd2[619],utcOffset:660,offsetStr:_0x1cd2[57],countries:[_0x1cd2[620]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x57\x61\x6C\x6C\x69\x73":{name:_0x1cd2[621],utcOffset:720,offsetStr:_0x1cd2[225],countries:[_0x1cd2[622]]},"\x50\x61\x63\x69\x66\x69\x63\x2F\x41\x70\x69\x61":{name:_0x1cd2[623],utcOffset:840,offsetStr:_0x1cd2[326],countries:[_0x1cd2[624]]},"\x41\x66\x72\x69\x63\x61\x2F\x4A\x6F\x68\x61\x6E\x6E\x65\x73\x62\x75\x72\x67":{name:_0x1cd2[625],utcOffset:120,offsetStr:_0x1cd2[84],countries:[_0x1cd2[626],_0x1cd2[627],_0x1cd2[628]]}}}
\ No newline at end of file
index fd17236..d394a0f 100644 (file)
@@ -1 +1 @@
-var _0xd15e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x73\x65\x72\x76\x65\x2D\x66\x61\x76\x69\x63\x6F\x6E","\x6D\x6F\x72\x67\x61\x6E","\x73\x68\x72\x69\x6E\x6B\x2D\x72\x61\x79","\x62\x6F\x64\x79\x2D\x70\x61\x72\x73\x65\x72","\x6D\x65\x74\x68\x6F\x64\x2D\x6F\x76\x65\x72\x72\x69\x64\x65","\x63\x6F\x6F\x6B\x69\x65\x2D\x70\x61\x72\x73\x65\x72","\x65\x72\x72\x6F\x72\x68\x61\x6E\x64\x6C\x65\x72","\x70\x61\x74\x68","\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x70\x61\x73\x73\x70\x6F\x72\x74","\x65\x78\x70\x72\x65\x73\x73\x2D\x73\x65\x73\x73\x69\x6F\x6E","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x65\x78\x70\x72\x65\x73\x73\x2D\x73\x65\x71\x75\x65\x6C\x69\x7A\x65\x2D\x73\x65\x73\x73\x69\x6F\x6E","\x6D\x6F\x6D\x65\x6E\x74","\x64\x65\x66\x61\x75\x6C\x74","\x65\x6E\x76","\x67\x65\x74","\x72\x65\x6D\x6F\x74\x65\x2D\x61\x64\x64\x72\x65\x73\x73","\x78\x2D\x66\x6F\x72\x77\x61\x72\x64\x65\x64\x2D\x66\x6F\x72","\x68\x65\x61\x64\x65\x72\x73","\x72\x65\x6D\x6F\x74\x65\x41\x64\x64\x72\x65\x73\x73","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x69\x70","\x74\x6F\x6B\x65\x6E","\x64\x61\x74\x65\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x72\x6F\x6F\x74","\x70\x75\x62\x6C\x69\x63","\x66\x61\x76\x69\x63\x6F\x6E\x2E\x69\x63\x6F","\x6A\x6F\x69\x6E","\x75\x73\x65","\x61\x70\x70\x50\x61\x74\x68","\x73\x65\x74","\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74","\x74\x65\x73\x74","\x63\x6C\x69\x65\x6E\x74","\x6A\x73\x6F\x6E\x20\x72\x65\x70\x6C\x61\x63\x65\x72","\x2E","\x73\x70\x6C\x69\x74","\x74\x6F\x49\x53\x4F\x53\x74\x72\x69\x6E\x67","\x5A","\x73\x74\x61\x74\x69\x63","\x5B\x3A\x64\x61\x74\x65\x74\x69\x6D\x65\x5D\x20\x3A\x6D\x65\x74\x68\x6F\x64\x20\x3A\x72\x65\x6D\x6F\x74\x65\x2D\x61\x64\x64\x72\x65\x73\x73\x20\x3A\x72\x65\x6D\x6F\x74\x65\x2D\x75\x73\x65\x72\x20\x3A\x75\x72\x6C\x20\x3A\x73\x74\x61\x74\x75\x73\x20\x3A\x72\x65\x73\x70\x6F\x6E\x73\x65\x2D\x74\x69\x6D\x65\x20\x6D\x73\x20\x2D\x20\x3A\x72\x65\x73\x5B\x63\x6F\x6E\x74\x65\x6E\x74\x2D\x6C\x65\x6E\x67\x74\x68\x5D","\x76\x69\x65\x77\x73","\x2F\x73\x65\x72\x76\x65\x72\x2F\x76\x69\x65\x77\x73","\x68\x74\x6D\x6C","\x72\x65\x6E\x64\x65\x72\x46\x69\x6C\x65","\x65\x6A\x73","\x65\x6E\x67\x69\x6E\x65","\x76\x69\x65\x77\x20\x65\x6E\x67\x69\x6E\x65","\x35\x30\x6D\x62","\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x6A\x73\x6F\x6E","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x73\x65\x73\x73\x69\x6F\x6E\x73","\x73\x79\x6E\x63","\x53\x65\x73\x73\x69\x6F\x6E","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73"];_0xd15e[0];var express=require(_0xd15e[1]);var favicon=require(_0xd15e[2]);var morgan=require(_0xd15e[3]);var shrinkRay=require(_0xd15e[4]);var bodyParser=require(_0xd15e[5]);var methodOverride=require(_0xd15e[6]);var cookieParser=require(_0xd15e[7]);var errorHandler=require(_0xd15e[8]);var path=require(_0xd15e[9]);var config=require(_0xd15e[10]);var passport=require(_0xd15e[11]);var session=require(_0xd15e[12]);var db=require(_0xd15e[14])[_0xd15e[13]];var expressSequelizeSession=require(_0xd15e[15]);var moment=require(_0xd15e[16]);var Store=expressSequelizeSession(session.Store);exports[_0xd15e[17]]= function(_0x578ax11){var _0x578ax12=_0x578ax11[_0xd15e[19]](_0xd15e[18]);morgan[_0xd15e[26]](_0xd15e[20],function(_0x578ax13,_0x578ax14){return _0x578ax13[_0xd15e[22]][_0xd15e[21]]?_0x578ax13[_0xd15e[22]][_0xd15e[21]]:_0x578ax13[_0xd15e[24]][_0xd15e[23]]|| _0x578ax13[_0xd15e[25]]});morgan[_0xd15e[26]](_0xd15e[27],function(_0x578ax13,_0x578ax14){return moment()[_0xd15e[29]](_0xd15e[28])});if(_0x578ax12=== _0xd15e[30]){_0x578ax11[_0xd15e[35]](favicon(path[_0xd15e[34]](config[_0xd15e[31]],_0xd15e[32],_0xd15e[33])));_0x578ax11[_0xd15e[37]](_0xd15e[36],path[_0xd15e[34]](config[_0xd15e[31]],_0xd15e[32]))};if(_0x578ax12=== _0xd15e[38]|| _0x578ax12=== _0xd15e[39]){_0x578ax11[_0xd15e[35]](favicon(path[_0xd15e[34]](config[_0xd15e[31]],_0xd15e[40],_0xd15e[33])));_0x578ax11[_0xd15e[37]](_0xd15e[36],path[_0xd15e[34]](config[_0xd15e[31]],_0xd15e[40]));_0x578ax11[_0xd15e[35]](errorHandler())};_0x578ax11[_0xd15e[37]](_0xd15e[41],function(_0x578ax15,_0x578ax16){if(this[_0x578ax15] instanceof  Date){_0x578ax16= this[_0x578ax15][_0xd15e[44]]()[_0xd15e[43]](_0xd15e[42])[0]+ _0xd15e[45]};return _0x578ax16});_0x578ax11[_0xd15e[35]](express[_0xd15e[46]](_0x578ax11[_0xd15e[19]](_0xd15e[36])));_0x578ax11[_0xd15e[35]](morgan(_0xd15e[47]));_0x578ax11[_0xd15e[37]](_0xd15e[48],config[_0xd15e[31]]+ _0xd15e[49]);_0x578ax11[_0xd15e[53]](_0xd15e[50],require(_0xd15e[52])[_0xd15e[51]]);_0x578ax11[_0xd15e[37]](_0xd15e[54],_0xd15e[50]);_0x578ax11[_0xd15e[35]](shrinkRay());_0x578ax11[_0xd15e[35]](bodyParser[_0xd15e[56]]({limit:_0xd15e[55],extended:true}));_0x578ax11[_0xd15e[35]](bodyParser[_0xd15e[57]]({limit:_0xd15e[55]}));_0x578ax11[_0xd15e[35]](methodOverride());_0x578ax11[_0xd15e[35]](cookieParser());_0x578ax11[_0xd15e[35]](passport[_0xd15e[58]]());var _0x578ax17= new Store(db[_0xd15e[59]],_0xd15e[60]);_0x578ax17[_0xd15e[62]][_0xd15e[61]]();_0x578ax11[_0xd15e[35]](session({secret:config[_0xd15e[64]][_0xd15e[63]],saveUninitialized:true,resave:false,store:_0x578ax17}))}
\ No newline at end of file
+var _0x4582=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x73\x65\x72\x76\x65\x2D\x66\x61\x76\x69\x63\x6F\x6E","\x6D\x6F\x72\x67\x61\x6E","\x73\x68\x72\x69\x6E\x6B\x2D\x72\x61\x79","\x62\x6F\x64\x79\x2D\x70\x61\x72\x73\x65\x72","\x6D\x65\x74\x68\x6F\x64\x2D\x6F\x76\x65\x72\x72\x69\x64\x65","\x63\x6F\x6F\x6B\x69\x65\x2D\x70\x61\x72\x73\x65\x72","\x65\x72\x72\x6F\x72\x68\x61\x6E\x64\x6C\x65\x72","\x70\x61\x74\x68","\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x70\x61\x73\x73\x70\x6F\x72\x74","\x65\x78\x70\x72\x65\x73\x73\x2D\x73\x65\x73\x73\x69\x6F\x6E","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x65\x78\x70\x72\x65\x73\x73\x2D\x73\x65\x71\x75\x65\x6C\x69\x7A\x65\x2D\x73\x65\x73\x73\x69\x6F\x6E","\x6D\x6F\x6D\x65\x6E\x74","\x64\x65\x66\x61\x75\x6C\x74","\x65\x6E\x76","\x67\x65\x74","\x72\x65\x6D\x6F\x74\x65\x2D\x61\x64\x64\x72\x65\x73\x73","\x78\x2D\x66\x6F\x72\x77\x61\x72\x64\x65\x64\x2D\x66\x6F\x72","\x68\x65\x61\x64\x65\x72\x73","\x72\x65\x6D\x6F\x74\x65\x41\x64\x64\x72\x65\x73\x73","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x69\x70","\x74\x6F\x6B\x65\x6E","\x64\x61\x74\x65\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x72\x6F\x6F\x74","\x70\x75\x62\x6C\x69\x63","\x66\x61\x76\x69\x63\x6F\x6E\x2E\x69\x63\x6F","\x6A\x6F\x69\x6E","\x75\x73\x65","\x61\x70\x70\x50\x61\x74\x68","\x73\x65\x74","\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74","\x74\x65\x73\x74","\x63\x6C\x69\x65\x6E\x74","\x6A\x73\x6F\x6E\x20\x72\x65\x70\x6C\x61\x63\x65\x72","\x2E","\x73\x70\x6C\x69\x74","\x74\x6F\x49\x53\x4F\x53\x74\x72\x69\x6E\x67","\x5A","\x73\x74\x61\x74\x69\x63","\x5B\x3A\x64\x61\x74\x65\x74\x69\x6D\x65\x5D\x20\x3A\x6D\x65\x74\x68\x6F\x64\x20\x3A\x72\x65\x6D\x6F\x74\x65\x2D\x61\x64\x64\x72\x65\x73\x73\x20\x3A\x72\x65\x6D\x6F\x74\x65\x2D\x75\x73\x65\x72\x20\x3A\x75\x72\x6C\x20\x3A\x73\x74\x61\x74\x75\x73\x20\x3A\x72\x65\x73\x70\x6F\x6E\x73\x65\x2D\x74\x69\x6D\x65\x20\x6D\x73\x20\x2D\x20\x3A\x72\x65\x73\x5B\x63\x6F\x6E\x74\x65\x6E\x74\x2D\x6C\x65\x6E\x67\x74\x68\x5D","\x76\x69\x65\x77\x73","\x2F\x73\x65\x72\x76\x65\x72\x2F\x76\x69\x65\x77\x73","\x68\x74\x6D\x6C","\x72\x65\x6E\x64\x65\x72\x46\x69\x6C\x65","\x65\x6A\x73","\x65\x6E\x67\x69\x6E\x65","\x76\x69\x65\x77\x20\x65\x6E\x67\x69\x6E\x65","\x35\x30\x6D\x62","\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x6A\x73\x6F\x6E","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x73\x65\x73\x73\x69\x6F\x6E\x73","\x73\x79\x6E\x63","\x53\x65\x73\x73\x69\x6F\x6E","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73"];_0x4582[0];var express=require(_0x4582[1]);var favicon=require(_0x4582[2]);var morgan=require(_0x4582[3]);var shrinkRay=require(_0x4582[4]);var bodyParser=require(_0x4582[5]);var methodOverride=require(_0x4582[6]);var cookieParser=require(_0x4582[7]);var errorHandler=require(_0x4582[8]);var path=require(_0x4582[9]);var config=require(_0x4582[10]);var passport=require(_0x4582[11]);var session=require(_0x4582[12]);var db=require(_0x4582[14])[_0x4582[13]];var expressSequelizeSession=require(_0x4582[15]);var moment=require(_0x4582[16]);var Store=expressSequelizeSession(session.Store);exports[_0x4582[17]]= function(_0xdc4ax11){var _0xdc4ax12=_0xdc4ax11[_0x4582[19]](_0x4582[18]);morgan[_0x4582[26]](_0x4582[20],function(_0xdc4ax13,_0xdc4ax14){return _0xdc4ax13[_0x4582[22]][_0x4582[21]]?_0xdc4ax13[_0x4582[22]][_0x4582[21]]:_0xdc4ax13[_0x4582[24]][_0x4582[23]]|| _0xdc4ax13[_0x4582[25]]});morgan[_0x4582[26]](_0x4582[27],function(_0xdc4ax13,_0xdc4ax14){return moment()[_0x4582[29]](_0x4582[28])});if(_0xdc4ax12=== _0x4582[30]){_0xdc4ax11[_0x4582[35]](favicon(path[_0x4582[34]](config[_0x4582[31]],_0x4582[32],_0x4582[33])));_0xdc4ax11[_0x4582[37]](_0x4582[36],path[_0x4582[34]](config[_0x4582[31]],_0x4582[32]))};if(_0xdc4ax12=== _0x4582[38]|| _0xdc4ax12=== _0x4582[39]){_0xdc4ax11[_0x4582[35]](favicon(path[_0x4582[34]](config[_0x4582[31]],_0x4582[40],_0x4582[33])));_0xdc4ax11[_0x4582[37]](_0x4582[36],path[_0x4582[34]](config[_0x4582[31]],_0x4582[40]));_0xdc4ax11[_0x4582[35]](errorHandler())};_0xdc4ax11[_0x4582[37]](_0x4582[41],function(_0xdc4ax15,_0xdc4ax16){if(this[_0xdc4ax15] instanceof  Date){_0xdc4ax16= this[_0xdc4ax15][_0x4582[44]]()[_0x4582[43]](_0x4582[42])[0]+ _0x4582[45]};return _0xdc4ax16});_0xdc4ax11[_0x4582[35]](express[_0x4582[46]](_0xdc4ax11[_0x4582[19]](_0x4582[36])));_0xdc4ax11[_0x4582[35]](morgan(_0x4582[47]));_0xdc4ax11[_0x4582[37]](_0x4582[48],config[_0x4582[31]]+ _0x4582[49]);_0xdc4ax11[_0x4582[53]](_0x4582[50],require(_0x4582[52])[_0x4582[51]]);_0xdc4ax11[_0x4582[37]](_0x4582[54],_0x4582[50]);_0xdc4ax11[_0x4582[35]](shrinkRay());_0xdc4ax11[_0x4582[35]](bodyParser[_0x4582[56]]({limit:_0x4582[55],extended:true}));_0xdc4ax11[_0x4582[35]](bodyParser[_0x4582[57]]({limit:_0x4582[55]}));_0xdc4ax11[_0x4582[35]](methodOverride());_0xdc4ax11[_0x4582[35]](cookieParser());_0xdc4ax11[_0x4582[35]](passport[_0x4582[58]]());var _0xdc4ax17= new Store(db[_0x4582[59]],_0x4582[60]);_0xdc4ax17[_0x4582[62]][_0x4582[61]]();_0xdc4ax11[_0x4582[35]](session({secret:config[_0x4582[64]][_0x4582[63]],saveUninitialized:true,resave:false,store:_0xdc4ax17}))}
\ No newline at end of file
index 21a3be7..02b3226 100644 (file)
@@ -1 +1 @@
-var _0x87ab=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6F\x73","\x63\x72\x79\x70\x74\x6F","\x62\x69\x6D\x65\x64\x69\x61\x2D\x6D\x61\x63\x68\x69\x6E\x65\x2D\x75\x75\x69\x64","\x65\x78\x65\x63\x53\x79\x6E\x63","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x6E\x65\x74\x77\x6F\x72\x6B\x49\x6E\x74\x65\x72\x66\x61\x63\x65\x73","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x66\x61\x6D\x69\x6C\x79","\x49\x50\x76\x34","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x66\x69\x6C\x74\x65\x72","\x63\x6F\x6E\x63\x61\x74","\x6C\x65\x6E\x67\x74\x68","\x6D\x61\x63","\x30\x30\x3A\x30\x30\x3A\x30\x30\x3A\x30\x30\x3A\x30\x30\x3A\x30\x30","\x61\x64\x64\x72\x65\x73\x73","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x67\x65\x74\x55\x75\x69\x64","\x0D\x0A","","\x72\x65\x70\x6C\x61\x63\x65","\x64\x6D\x69\x64\x65\x63\x6F\x64\x65\x20\x2D\x2D\x73\x74\x72\x69\x6E\x67\x20\x73\x79\x73\x74\x65\x6D\x2D\x75\x75\x69\x64","\x75\x74\x66\x38","\x77\x69\x6E\x33\x32","\x75\x75\x69\x64","\x7C","\x68\x65\x78","\x64\x69\x67\x65\x73\x74","\x75\x70\x64\x61\x74\x65","\x6D\x64\x35","\x63\x72\x65\x61\x74\x65\x48\x61\x73\x68","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x2D","\x70\x6C\x61\x74\x66\x6F\x72\x6D"];_0x87ab[0];var os=require(_0x87ab[1]);var crypto=require(_0x87ab[2]);var machine=require(_0x87ab[3]);var exec=require(_0x87ab[5])[_0x87ab[4]];function getInterfaces(){var _0xa176x6=[];var _0xa176x7=os[_0x87ab[6]]();for(var _0xa176x8 in _0xa176x7){if(_0xa176x7[_0x87ab[7]](_0xa176x8)){var _0xa176x9=_0xa176x7[_0xa176x8][_0x87ab[11]](function(_0xa176xa){return _0xa176xa[_0x87ab[8]]=== _0x87ab[9]&& _0xa176xa[_0x87ab[10]]=== false});_0xa176x6= _0xa176x6[_0x87ab[12]](_0xa176x9)}};return _0xa176x6}function macAddress(){var _0xa176x6=getInterfaces();return (_0xa176x6[_0x87ab[13]]> 0)?_0xa176x6[0][_0x87ab[14]]:_0x87ab[15]}function ipAddress(){var _0xa176x6=getInterfaces();return (_0xa176x6[_0x87ab[13]]> 0)?_0xa176x6[0][_0x87ab[16]]:_0x87ab[17]}exports[_0x87ab[18]]= function(){switch(os[_0x87ab[34]]()){case _0x87ab[24]:return exec(_0x87ab[22],{encoding:_0x87ab[23]})[_0x87ab[21]](_0x87ab[19],_0x87ab[20]);default:var _0xa176xd=machine[_0x87ab[25]]+ _0x87ab[26]+ macAddress()+ _0x87ab[26]+ ipAddress();var _0xa176xe=crypto[_0x87ab[31]](_0x87ab[30])[_0x87ab[29]](_0xa176xd)[_0x87ab[28]](_0x87ab[27]);return _0xa176xe[_0x87ab[32]](0,8)+ _0x87ab[33]+ _0xa176xe[_0x87ab[32]](8,12)+ _0x87ab[33]+ _0xa176xe[_0x87ab[32]](12,16)+ _0x87ab[33]+ _0xa176xe[_0x87ab[32]](16,20)+ _0x87ab[33]+ _0xa176xe[_0x87ab[32]](20)}}
\ No newline at end of file
+var _0xd645=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6F\x73","\x63\x72\x79\x70\x74\x6F","\x62\x69\x6D\x65\x64\x69\x61\x2D\x6D\x61\x63\x68\x69\x6E\x65\x2D\x75\x75\x69\x64","\x65\x78\x65\x63\x53\x79\x6E\x63","\x63\x68\x69\x6C\x64\x5F\x70\x72\x6F\x63\x65\x73\x73","\x6E\x65\x74\x77\x6F\x72\x6B\x49\x6E\x74\x65\x72\x66\x61\x63\x65\x73","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x66\x61\x6D\x69\x6C\x79","\x49\x50\x76\x34","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x66\x69\x6C\x74\x65\x72","\x63\x6F\x6E\x63\x61\x74","\x6C\x65\x6E\x67\x74\x68","\x6D\x61\x63","\x30\x30\x3A\x30\x30\x3A\x30\x30\x3A\x30\x30\x3A\x30\x30\x3A\x30\x30","\x61\x64\x64\x72\x65\x73\x73","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x67\x65\x74\x55\x75\x69\x64","\x0D\x0A","","\x72\x65\x70\x6C\x61\x63\x65","\x64\x6D\x69\x64\x65\x63\x6F\x64\x65\x20\x2D\x2D\x73\x74\x72\x69\x6E\x67\x20\x73\x79\x73\x74\x65\x6D\x2D\x75\x75\x69\x64","\x75\x74\x66\x38","\x77\x69\x6E\x33\x32","\x75\x75\x69\x64","\x7C","\x68\x65\x78","\x64\x69\x67\x65\x73\x74","\x75\x70\x64\x61\x74\x65","\x6D\x64\x35","\x63\x72\x65\x61\x74\x65\x48\x61\x73\x68","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x2D","\x70\x6C\x61\x74\x66\x6F\x72\x6D"];_0xd645[0];var os=require(_0xd645[1]);var crypto=require(_0xd645[2]);var machine=require(_0xd645[3]);var exec=require(_0xd645[5])[_0xd645[4]];function getInterfaces(){var _0x5605x6=[];var _0x5605x7=os[_0xd645[6]]();for(var _0x5605x8 in _0x5605x7){if(_0x5605x7[_0xd645[7]](_0x5605x8)){var _0x5605x9=_0x5605x7[_0x5605x8][_0xd645[11]](function(_0x5605xa){return _0x5605xa[_0xd645[8]]=== _0xd645[9]&& _0x5605xa[_0xd645[10]]=== false});_0x5605x6= _0x5605x6[_0xd645[12]](_0x5605x9)}};return _0x5605x6}function macAddress(){var _0x5605x6=getInterfaces();return (_0x5605x6[_0xd645[13]]> 0)?_0x5605x6[0][_0xd645[14]]:_0xd645[15]}function ipAddress(){var _0x5605x6=getInterfaces();return (_0x5605x6[_0xd645[13]]> 0)?_0x5605x6[0][_0xd645[16]]:_0xd645[17]}exports[_0xd645[18]]= function(){switch(os[_0xd645[34]]()){case _0xd645[24]:return exec(_0xd645[22],{encoding:_0xd645[23]})[_0xd645[21]](_0xd645[19],_0xd645[20]);default:var _0x5605xd=machine[_0xd645[25]]+ _0xd645[26]+ macAddress()+ _0xd645[26]+ ipAddress();var _0x5605xe=crypto[_0xd645[31]](_0xd645[30])[_0xd645[29]](_0x5605xd)[_0xd645[28]](_0xd645[27]);return _0x5605xe[_0xd645[32]](0,8)+ _0xd645[33]+ _0x5605xe[_0xd645[32]](8,12)+ _0xd645[33]+ _0x5605xe[_0xd645[32]](12,16)+ _0xd645[33]+ _0x5605xe[_0xd645[32]](16,20)+ _0xd645[33]+ _0x5605xe[_0xd645[32]](20)}}
\ No newline at end of file
index a6229ba..62c14d9 100644 (file)
@@ -1 +1 @@
-var _0xafde=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x68\x74\x74\x70\x73","\x63\x72\x79\x70\x74\x6F","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x68\x61\x72\x64\x77\x61\x72\x65","\x6C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x77\x77\x77\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D","\x2F\x61\x70\x69\x2F\x73\x65\x72\x76\x65\x72\x73\x2F\x25\x73\x2F\x63\x68\x65\x63\x6B","\x66\x6F\x72\x6D\x61\x74","\x47\x45\x54","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E","\x75\x74\x66\x38","\x73\x65\x74\x45\x6E\x63\x6F\x64\x69\x6E\x67","","\x64\x61\x74\x61","\x6F\x6E","\x65\x6E\x64","\x70\x61\x72\x73\x65","\x72\x65\x71\x75\x65\x73\x74","\x65\x72\x72\x6F\x72","\x61\x65\x73\x2D\x32\x35\x36\x2D\x63\x74\x72","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73","\x63\x72\x65\x61\x74\x65\x43\x69\x70\x68\x65\x72","\x62\x61\x73\x65\x36\x34","\x75\x70\x64\x61\x74\x65","\x66\x69\x6E\x61\x6C","\x63\x72\x65\x61\x74\x65\x44\x65\x63\x69\x70\x68\x65\x72","\x67\x65\x74","\x66\x69\x6E\x61\x6C\x6C\x79","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x61\x63\x74\x69\x76\x65","\x64\x61\x74\x61\x32","\x64\x61\x79\x73","\x64\x69\x66\x66","\x64\x65\x6D\x6F","\x69\x6E\x66\x6F","\x73\x74\x61\x72\x74\x20\x67\x72\x61\x79\x20\x70\x65\x72\x69\x6F\x64","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D","\x67\x65\x74\x55\x75\x69\x64","\x73\x74\x61\x72\x74\x20\x63\x68\x65\x63\x6B\x20\x6C\x69\x63\x65\x6E\x73\x65","\x73\x70\x72\x65\x61\x64","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x4C\x69\x63\x65\x6E\x73\x65","\x64\x65\x66\x61\x75\x6C\x74"];_0xafde[0];var util=require(_0xafde[1]);var https=require(_0xafde[2]);var crypto=require(_0xafde[3]);var moment=require(_0xafde[4]);var BPromise=require(_0xafde[5]);var db=require(_0xafde[7])[_0xafde[6]];var config=require(_0xafde[8]);var hardware=require(_0xafde[9]);var logger=require(_0xafde[11])(_0xafde[10]);var HOST=_0xafde[12];var TIME=60* 1000;var DAYS=7;function httpRequest(_0x8cd7xe){return  new BPromise(function(_0x8cd7xf,_0x8cd7x10){var _0x8cd7x11={host:HOST,port:443,path:util[_0xafde[14]](_0xafde[13],_0x8cd7xe),method:_0xafde[15],headers:{"\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65":_0xafde[16]}};var _0x8cd7x12=https[_0xafde[24]](_0x8cd7x11,function(_0x8cd7x13){_0x8cd7x13[_0xafde[18]](_0xafde[17]);var _0x8cd7x14=_0xafde[19];_0x8cd7x13[_0xafde[21]](_0xafde[20],function(_0x8cd7x15){_0x8cd7x14+= _0x8cd7x15});_0x8cd7x13[_0xafde[21]](_0xafde[22],function(){try{_0x8cd7xf(JSON[_0xafde[23]](_0x8cd7x14))}catch(e){_0x8cd7x10(e)}})});_0x8cd7x12[_0xafde[21]](_0xafde[25],_0x8cd7x10);_0x8cd7x12[_0xafde[22]]()})}function encryptDate(_0x8cd7x17){var _0x8cd7x18=crypto[_0xafde[29]](_0xafde[26],config[_0xafde[28]][_0xafde[27]]);var _0x8cd7x19=_0x8cd7x18[_0xafde[31]](_0x8cd7x17,_0xafde[17],_0xafde[30]);_0x8cd7x19+= _0x8cd7x18[_0xafde[32]](_0xafde[30]);return _0x8cd7x19}function decryptDate(_0x8cd7x17){var _0x8cd7x1b=crypto[_0xafde[33]](_0xafde[26],config[_0xafde[28]][_0xafde[27]]);var _0x8cd7x19=_0x8cd7x1b[_0xafde[31]](_0x8cd7x17,_0xafde[30],_0xafde[17]);_0x8cd7x19+= _0x8cd7x1b[_0xafde[32]](_0xafde[17]);return _0x8cd7x19}function manageLicense(_0x8cd7xe,_0x8cd7x1d){var _0x8cd7x1e=_0x8cd7x1d[_0xafde[34]]({plain:true});httpRequest(_0x8cd7xe)[_0xafde[38]](function(_0x8cd7x21){if(_0x8cd7x21[_0xafde[39]]){return _0x8cd7x1d[_0xafde[31]]({data1:_0x8cd7xe,data2:null,license:_0x8cd7x21[_0xafde[10]]})}else {if(_0x8cd7x1e[_0xafde[40]]){if(moment()[_0xafde[42]](decryptDate(_0x8cd7x1e[_0xafde[40]]),_0xafde[41])> DAYS){logger[_0xafde[44]](_0xafde[43]);return _0x8cd7x1d[_0xafde[31]]({data1:_0x8cd7xe,data2:null,license:null})}}else {if(_0x8cd7x1e[_0xafde[10]]){logger[_0xafde[44]](_0xafde[45]);return _0x8cd7x1d[_0xafde[31]]({data2:encryptDate(moment()[_0xafde[14]](_0xafde[46]))})}}};return _0x8cd7x1d})[_0xafde[38]](function(_0x8cd7x20){_0x8cd7x1d= _0x8cd7x20})[_0xafde[37]](function(_0x8cd7x1f){logger[_0xafde[25]](JSON[_0xafde[36]](_0x8cd7x1f))})[_0xafde[35]](function(){setTimeout(function(){manageLicense(_0x8cd7xe,_0x8cd7x1d)},TIME)})}function defaultLicense(){var _0x8cd7xe=hardware[_0xafde[47]]();if(_0x8cd7xe){return db[_0xafde[51]][_0xafde[50]]({where:{id:1},defaults:{data1:_0x8cd7xe}})[_0xafde[49]](function(_0x8cd7x1d,_0x8cd7x23){logger[_0xafde[44]](_0xafde[48]);manageLicense(_0x8cd7xe,_0x8cd7x1d)})[_0xafde[37]](function(_0x8cd7x1f){logger[_0xafde[25]](JSON[_0xafde[36]](_0x8cd7x1f))})}}exports[_0xafde[52]]= defaultLicense
\ No newline at end of file
+var _0x6454=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x68\x74\x74\x70\x73","\x63\x72\x79\x70\x74\x6F","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x68\x61\x72\x64\x77\x61\x72\x65","\x6C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x77\x77\x77\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D","\x2F\x61\x70\x69\x2F\x73\x65\x72\x76\x65\x72\x73\x2F\x25\x73\x2F\x63\x68\x65\x63\x6B","\x66\x6F\x72\x6D\x61\x74","\x47\x45\x54","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E","\x75\x74\x66\x38","\x73\x65\x74\x45\x6E\x63\x6F\x64\x69\x6E\x67","","\x64\x61\x74\x61","\x6F\x6E","\x65\x6E\x64","\x70\x61\x72\x73\x65","\x72\x65\x71\x75\x65\x73\x74","\x65\x72\x72\x6F\x72","\x61\x65\x73\x2D\x32\x35\x36\x2D\x63\x74\x72","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73","\x63\x72\x65\x61\x74\x65\x43\x69\x70\x68\x65\x72","\x62\x61\x73\x65\x36\x34","\x75\x70\x64\x61\x74\x65","\x66\x69\x6E\x61\x6C","\x63\x72\x65\x61\x74\x65\x44\x65\x63\x69\x70\x68\x65\x72","\x67\x65\x74","\x66\x69\x6E\x61\x6C\x6C\x79","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x61\x63\x74\x69\x76\x65","\x64\x61\x74\x61\x32","\x64\x61\x79\x73","\x64\x69\x66\x66","\x64\x65\x6D\x6F","\x69\x6E\x66\x6F","\x73\x74\x61\x72\x74\x20\x67\x72\x61\x79\x20\x70\x65\x72\x69\x6F\x64","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D","\x67\x65\x74\x55\x75\x69\x64","\x73\x74\x61\x72\x74\x20\x63\x68\x65\x63\x6B\x20\x6C\x69\x63\x65\x6E\x73\x65","\x73\x70\x72\x65\x61\x64","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x4C\x69\x63\x65\x6E\x73\x65","\x64\x65\x66\x61\x75\x6C\x74"];_0x6454[0];var util=require(_0x6454[1]);var https=require(_0x6454[2]);var crypto=require(_0x6454[3]);var moment=require(_0x6454[4]);var BPromise=require(_0x6454[5]);var db=require(_0x6454[7])[_0x6454[6]];var config=require(_0x6454[8]);var hardware=require(_0x6454[9]);var logger=require(_0x6454[11])(_0x6454[10]);var HOST=_0x6454[12];var TIME=60* 1000;var DAYS=7;function httpRequest(_0xfe74xe){return  new BPromise(function(_0xfe74xf,_0xfe74x10){var _0xfe74x11={host:HOST,port:443,path:util[_0x6454[14]](_0x6454[13],_0xfe74xe),method:_0x6454[15],headers:{"\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65":_0x6454[16]}};var _0xfe74x12=https[_0x6454[24]](_0xfe74x11,function(_0xfe74x13){_0xfe74x13[_0x6454[18]](_0x6454[17]);var _0xfe74x14=_0x6454[19];_0xfe74x13[_0x6454[21]](_0x6454[20],function(_0xfe74x15){_0xfe74x14+= _0xfe74x15});_0xfe74x13[_0x6454[21]](_0x6454[22],function(){try{_0xfe74xf(JSON[_0x6454[23]](_0xfe74x14))}catch(e){_0xfe74x10(e)}})});_0xfe74x12[_0x6454[21]](_0x6454[25],_0xfe74x10);_0xfe74x12[_0x6454[22]]()})}function encryptDate(_0xfe74x17){var _0xfe74x18=crypto[_0x6454[29]](_0x6454[26],config[_0x6454[28]][_0x6454[27]]);var _0xfe74x19=_0xfe74x18[_0x6454[31]](_0xfe74x17,_0x6454[17],_0x6454[30]);_0xfe74x19+= _0xfe74x18[_0x6454[32]](_0x6454[30]);return _0xfe74x19}function decryptDate(_0xfe74x17){var _0xfe74x1b=crypto[_0x6454[33]](_0x6454[26],config[_0x6454[28]][_0x6454[27]]);var _0xfe74x19=_0xfe74x1b[_0x6454[31]](_0xfe74x17,_0x6454[30],_0x6454[17]);_0xfe74x19+= _0xfe74x1b[_0x6454[32]](_0x6454[17]);return _0xfe74x19}function manageLicense(_0xfe74xe,_0xfe74x1d){var _0xfe74x1e=_0xfe74x1d[_0x6454[34]]({plain:true});httpRequest(_0xfe74xe)[_0x6454[38]](function(_0xfe74x21){if(_0xfe74x21[_0x6454[39]]){return _0xfe74x1d[_0x6454[31]]({data1:_0xfe74xe,data2:null,license:_0xfe74x21[_0x6454[10]]})}else {if(_0xfe74x1e[_0x6454[40]]){if(moment()[_0x6454[42]](decryptDate(_0xfe74x1e[_0x6454[40]]),_0x6454[41])> DAYS){logger[_0x6454[44]](_0x6454[43]);return _0xfe74x1d[_0x6454[31]]({data1:_0xfe74xe,data2:null,license:null})}}else {if(_0xfe74x1e[_0x6454[10]]){logger[_0x6454[44]](_0x6454[45]);return _0xfe74x1d[_0x6454[31]]({data2:encryptDate(moment()[_0x6454[14]](_0x6454[46]))})}}};return _0xfe74x1d})[_0x6454[38]](function(_0xfe74x20){_0xfe74x1d= _0xfe74x20})[_0x6454[37]](function(_0xfe74x1f){logger[_0x6454[25]](JSON[_0x6454[36]](_0xfe74x1f))})[_0x6454[35]](function(){setTimeout(function(){manageLicense(_0xfe74xe,_0xfe74x1d)},TIME)})}function defaultLicense(){var _0xfe74xe=hardware[_0x6454[47]]();if(_0xfe74xe){return db[_0x6454[51]][_0x6454[50]]({where:{id:1},defaults:{data1:_0xfe74xe}})[_0x6454[49]](function(_0xfe74x1d,_0xfe74x23){logger[_0x6454[44]](_0x6454[48]);manageLicense(_0xfe74xe,_0xfe74x1d)})[_0x6454[37]](function(_0xfe74x1f){logger[_0x6454[25]](JSON[_0x6454[36]](_0xfe74x1f))})}}exports[_0x6454[52]]= defaultLicense
\ No newline at end of file
index 32ba975..b31c450 100644 (file)
@@ -1 +1 @@
-var _0x4578=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x63\x72\x79\x70\x74\x6F","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x68\x61\x72\x64\x77\x61\x72\x65","\x2E\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x65\x78\x70\x6F\x72\x74\x73","\x6C\x69\x63\x65\x6E\x73\x65","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x2D","\x73\x70\x6C\x69\x74","\x61\x65\x73\x2D\x32\x35\x36\x2D\x63\x74\x72","\x25\x73\x3A\x25\x73\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65\x44\x65\x63\x69\x70\x68\x65\x72","\x62\x61\x73\x65\x36\x34","\x75\x74\x66\x38","\x75\x70\x64\x61\x74\x65","\x66\x69\x6E\x61\x6C","\x70\x61\x72\x73\x65","\x75\x75\x69\x64","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73","\x67\x72\x61\x79","\x64\x65\x6D\x6F","\x6D\x61\x63\x68\x69\x6E\x65\x55\x75\x69\x64","\x67\x65\x74\x55\x75\x69\x64","\x32\x30\x32\x37\x2D\x30\x31\x2D\x30\x31\x54\x30\x30\x3A\x30\x30\x3A\x30\x30\x2E\x30\x30\x30\x5A","\x42\x72\x65\x61\x6B\x69\x6E\x67\x20\x6C\x69\x63\x65\x6E\x73\x65","\x6D\x65\x73\x73\x61\x67\x65","\x44\x65\x6D\x6F\x20\x6C\x69\x63\x65\x6E\x73\x65","\x74\x68\x65\x6E","\x64\x65\x66\x61\x75\x6C\x74\x73","\x66\x69\x6E\x64","\x4C\x69\x63\x65\x6E\x73\x65"];_0x4578[0];var crypto=require(_0x4578[1]);var util=require(_0x4578[2]);var _=require(_0x4578[3]);var hardware=require(_0x4578[4]);var config=require(_0x4578[5]);var db=require(_0x4578[7])[_0x4578[6]];module[_0x4578[8]]= {getLicense:function(_0x3133x7){return db[_0x4578[37]][_0x4578[36]](_[_0x4578[35]](_0x3133x7,{raw:true,where:{id:1}}))[_0x4578[34]](function(_0x3133x8){if(_0x3133x8[_0x4578[9]]&& _0x3133x8[_0x4578[10]]){try{var _0x3133x9=_0x3133x8[_0x4578[9]];var _0x3133xa=_0x3133x8[_0x4578[10]];var _0x3133xb=_0x3133x8[_0x4578[11]];var _0x3133xc=_0x3133xa[_0x4578[13]](_0x4578[12])[4];var _0x3133xd=_0x3133xa[_0x4578[13]](_0x4578[12])[0];var _0x3133xe=crypto[_0x4578[17]](_0x4578[14],util[_0x4578[16]](_0x4578[15],_0x3133xc,_0x3133xa,_0x3133xd));var _0x3133xf=_0x3133xe[_0x4578[20]](_0x3133x9,_0x4578[18],_0x4578[19]);_0x3133xf+= _0x3133xe[_0x4578[21]](_0x4578[19]);var _0x3133x10=JSON[_0x4578[22]](_0x3133xf);_0x3133x10[_0x4578[23]]= _0x3133xa;if(_0x3133xb){var _0x3133x11=crypto[_0x4578[17]](_0x4578[14],config[_0x4578[25]][_0x4578[24]]);var _0x3133x12=_0x3133x11[_0x4578[20]](_0x3133xb,_0x4578[18],_0x4578[19]);_0x3133x12+= _0x3133x11[_0x4578[21]](_0x4578[19]);_0x3133x10[_0x4578[26]]= _0x3133x12};_0x3133x10[_0x4578[27]]= false;_0x3133x10[_0x4578[28]]= hardware[_0x4578[29]]();return _0x3133x10}catch(err){return {breaking:true,demo:true,agents:2,telephones:0,users:1,expiration:_0x4578[30],chat:false,mail:false,fax:false,messaging:false,cm:false,dialer:false,jscripty:false,openchannel:false,custom:false,update:false,description:_0x4578[31],uuid:_0x3133x8[_0x4578[10]],machineUuid:hardware[_0x4578[29]](),message:err[_0x4578[32]]}}};return {demo:true,agents:2,telephones:0,users:1,expiration:_0x4578[30],chat:false,mail:false,fax:false,messaging:false,cm:false,dialer:false,jscripty:false,openchannel:false,custom:false,update:false,description:_0x4578[33],uuid:_0x3133x8[_0x4578[10]],machineUuid:hardware[_0x4578[29]]()}})}}
\ No newline at end of file
+var _0x727f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x63\x72\x79\x70\x74\x6F","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x68\x61\x72\x64\x77\x61\x72\x65","\x2E\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x65\x78\x70\x6F\x72\x74\x73","\x6C\x69\x63\x65\x6E\x73\x65","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x2D","\x73\x70\x6C\x69\x74","\x61\x65\x73\x2D\x32\x35\x36\x2D\x63\x74\x72","\x25\x73\x3A\x25\x73\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65\x44\x65\x63\x69\x70\x68\x65\x72","\x62\x61\x73\x65\x36\x34","\x75\x74\x66\x38","\x75\x70\x64\x61\x74\x65","\x66\x69\x6E\x61\x6C","\x70\x61\x72\x73\x65","\x75\x75\x69\x64","\x73\x65\x73\x73\x69\x6F\x6E","\x73\x65\x63\x72\x65\x74\x73","\x67\x72\x61\x79","\x64\x65\x6D\x6F","\x6D\x61\x63\x68\x69\x6E\x65\x55\x75\x69\x64","\x67\x65\x74\x55\x75\x69\x64","\x32\x30\x32\x37\x2D\x30\x31\x2D\x30\x31\x54\x30\x30\x3A\x30\x30\x3A\x30\x30\x2E\x30\x30\x30\x5A","\x42\x72\x65\x61\x6B\x69\x6E\x67\x20\x6C\x69\x63\x65\x6E\x73\x65","\x6D\x65\x73\x73\x61\x67\x65","\x44\x65\x6D\x6F\x20\x6C\x69\x63\x65\x6E\x73\x65","\x74\x68\x65\x6E","\x64\x65\x66\x61\x75\x6C\x74\x73","\x66\x69\x6E\x64","\x4C\x69\x63\x65\x6E\x73\x65"];_0x727f[0];var crypto=require(_0x727f[1]);var util=require(_0x727f[2]);var _=require(_0x727f[3]);var hardware=require(_0x727f[4]);var config=require(_0x727f[5]);var db=require(_0x727f[7])[_0x727f[6]];module[_0x727f[8]]= {getLicense:function(_0x53b2x7){return db[_0x727f[37]][_0x727f[36]](_[_0x727f[35]](_0x53b2x7,{raw:true,where:{id:1}}))[_0x727f[34]](function(_0x53b2x8){if(_0x53b2x8[_0x727f[9]]&& _0x53b2x8[_0x727f[10]]){try{var _0x53b2x9=_0x53b2x8[_0x727f[9]];var _0x53b2xa=_0x53b2x8[_0x727f[10]];var _0x53b2xb=_0x53b2x8[_0x727f[11]];var _0x53b2xc=_0x53b2xa[_0x727f[13]](_0x727f[12])[4];var _0x53b2xd=_0x53b2xa[_0x727f[13]](_0x727f[12])[0];var _0x53b2xe=crypto[_0x727f[17]](_0x727f[14],util[_0x727f[16]](_0x727f[15],_0x53b2xc,_0x53b2xa,_0x53b2xd));var _0x53b2xf=_0x53b2xe[_0x727f[20]](_0x53b2x9,_0x727f[18],_0x727f[19]);_0x53b2xf+= _0x53b2xe[_0x727f[21]](_0x727f[19]);var _0x53b2x10=JSON[_0x727f[22]](_0x53b2xf);_0x53b2x10[_0x727f[23]]= _0x53b2xa;if(_0x53b2xb){var _0x53b2x11=crypto[_0x727f[17]](_0x727f[14],config[_0x727f[25]][_0x727f[24]]);var _0x53b2x12=_0x53b2x11[_0x727f[20]](_0x53b2xb,_0x727f[18],_0x727f[19]);_0x53b2x12+= _0x53b2x11[_0x727f[21]](_0x727f[19]);_0x53b2x10[_0x727f[26]]= _0x53b2x12};_0x53b2x10[_0x727f[27]]= false;_0x53b2x10[_0x727f[28]]= hardware[_0x727f[29]]();return _0x53b2x10}catch(err){return {breaking:true,demo:true,agents:2,telephones:0,users:1,expiration:_0x727f[30],chat:false,mail:false,fax:false,messaging:false,cm:false,dialer:false,jscripty:false,openchannel:false,custom:false,update:false,description:_0x727f[31],uuid:_0x53b2x8[_0x727f[10]],machineUuid:hardware[_0x727f[29]](),message:err[_0x727f[32]]}}};return {demo:true,agents:2,telephones:0,users:1,expiration:_0x727f[30],chat:false,mail:false,fax:false,messaging:false,cm:false,dialer:false,jscripty:false,openchannel:false,custom:false,update:false,description:_0x727f[33],uuid:_0x53b2x8[_0x727f[10]],machineUuid:hardware[_0x727f[29]]()}})}}
\ No newline at end of file
index 2a42b71..75f6ce6 100644 (file)
@@ -1 +1 @@
-var _0x1c33=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x3A\x39\x30\x30\x30","\x6D\x79\x61\x70\x70\x61\x6E\x75\x67\x6C\x61\x72\x2D\x73\x65\x63\x72\x65\x74","\x61\x70\x70\x2D\x69\x64","\x73\x65\x63\x72\x65\x74",""];_0x1c33[0];module[_0x1c33[1]]= {DOMAIN:_0x1c33[2],SESSION_SECRET:_0x1c33[3],GOOGLE_ID:_0x1c33[4],GOOGLE_SECRET:_0x1c33[5],DEBUG:_0x1c33[6]}
\ No newline at end of file
+var _0xbb36=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x3A\x39\x30\x30\x30","\x6D\x79\x61\x70\x70\x61\x6E\x75\x67\x6C\x61\x72\x2D\x73\x65\x63\x72\x65\x74","\x61\x70\x70\x2D\x69\x64","\x73\x65\x63\x72\x65\x74",""];_0xbb36[0];module[_0xbb36[1]]= {DOMAIN:_0xbb36[2],SESSION_SECRET:_0xbb36[3],GOOGLE_ID:_0xbb36[4],GOOGLE_SECRET:_0xbb36[5],DEBUG:_0xbb36[6]}
\ No newline at end of file
index 77e70cf..6e2e95e 100644 (file)
@@ -1 +1 @@
-var _0x4bac=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x77\x69\x6E\x73\x74\x6F\x6E","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x49\x4E\x46\x4F","\x2F\x76\x61\x72","\x6C\x6F\x67","\x78\x63\x61\x6C\x6C\x79","\x25\x73\x2D\x25\x73\x2E\x6C\x6F\x67","\x66\x6F\x72\x6D\x61\x74","\x6A\x6F\x69\x6E","\x5B\x25\x73\x5D\x20\x5B\x25\x73\x5D\x20\x25\x73\x20\x2D\x20\x25\x73","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x6C\x65\x76\x65\x6C","\x6D\x65\x73\x73\x61\x67\x65","\x65\x78\x70\x6F\x72\x74\x73","\x25\x73\x2D\x25\x73","\x65\x72\x72\x6F\x72","\x46\x69\x6C\x65","\x74\x72\x61\x6E\x73\x70\x6F\x72\x74\x73","\x69\x6E\x66\x6F","\x64\x65\x62\x75\x67\x4C\x65\x76\x65\x6C","\x65\x6E\x76","\x43\x6F\x6E\x73\x6F\x6C\x65","\x4C\x6F\x67\x67\x65\x72"];_0x4bac[0];var moment=require(_0x4bac[1]);var winston=require(_0x4bac[2]);var util=require(_0x4bac[3]);var path=require(_0x4bac[4]);var debugLevel=_0x4bac[5];function filename(_0xbad3x7,_0xbad3x8){return path[_0x4bac[11]](_0x4bac[6],_0x4bac[7],_0x4bac[8],util[_0x4bac[10]](_0x4bac[9],_0xbad3x7,_0xbad3x8))}function formatter(_0xbad3x7,_0xbad3xa){return util[_0x4bac[10]](_0x4bac[12],moment()[_0x4bac[10]](_0x4bac[13]),_0xbad3xa[_0x4bac[15]][_0x4bac[14]](),_0xbad3x7,_0xbad3xa[_0x4bac[16]])}module[_0x4bac[17]]= function(_0xbad3x7){return  new (winston[_0x4bac[26]])({transports:[ new (winston[_0x4bac[21]][_0x4bac[20]])({name:util[_0x4bac[10]](_0x4bac[18],_0xbad3x7,_0x4bac[19]),filename:filename(_0xbad3x7,_0x4bac[19]),level:_0x4bac[19],json:false,formatter:function(_0xbad3xa){return formatter(_0xbad3x7,_0xbad3xa)}}), new (winston[_0x4bac[21]][_0x4bac[20]])({name:util[_0x4bac[10]](_0x4bac[18],_0xbad3x7,_0x4bac[22]),filename:filename(_0xbad3x7,_0x4bac[22]),level:_0x4bac[22],json:false,formatter:function(_0xbad3xa){return formatter(_0xbad3x7,_0xbad3xa)}}), new (winston[_0x4bac[21]][_0x4bac[25]])({level:process[_0x4bac[24]][_0x4bac[23]]|| debugLevel,json:false,formatter:function(_0xbad3xa){return formatter(_0xbad3x7,_0xbad3xa)}})]})}
\ No newline at end of file
+var _0xe99a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x77\x69\x6E\x73\x74\x6F\x6E","\x75\x74\x69\x6C","\x70\x61\x74\x68","\x49\x4E\x46\x4F","\x2F\x76\x61\x72","\x6C\x6F\x67","\x78\x63\x61\x6C\x6C\x79","\x25\x73\x2D\x25\x73\x2E\x6C\x6F\x67","\x66\x6F\x72\x6D\x61\x74","\x6A\x6F\x69\x6E","\x5B\x25\x73\x5D\x20\x5B\x25\x73\x5D\x20\x25\x73\x20\x2D\x20\x25\x73","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x6C\x65\x76\x65\x6C","\x6D\x65\x73\x73\x61\x67\x65","\x65\x78\x70\x6F\x72\x74\x73","\x25\x73\x2D\x25\x73","\x65\x72\x72\x6F\x72","\x46\x69\x6C\x65","\x74\x72\x61\x6E\x73\x70\x6F\x72\x74\x73","\x69\x6E\x66\x6F","\x64\x65\x62\x75\x67\x4C\x65\x76\x65\x6C","\x65\x6E\x76","\x43\x6F\x6E\x73\x6F\x6C\x65","\x4C\x6F\x67\x67\x65\x72"];_0xe99a[0];var moment=require(_0xe99a[1]);var winston=require(_0xe99a[2]);var util=require(_0xe99a[3]);var path=require(_0xe99a[4]);var debugLevel=_0xe99a[5];function filename(_0x9498x7,_0x9498x8){return path[_0xe99a[11]](_0xe99a[6],_0xe99a[7],_0xe99a[8],util[_0xe99a[10]](_0xe99a[9],_0x9498x7,_0x9498x8))}function formatter(_0x9498x7,_0x9498xa){return util[_0xe99a[10]](_0xe99a[12],moment()[_0xe99a[10]](_0xe99a[13]),_0x9498xa[_0xe99a[15]][_0xe99a[14]](),_0x9498x7,_0x9498xa[_0xe99a[16]])}module[_0xe99a[17]]= function(_0x9498x7){return  new (winston[_0xe99a[26]])({transports:[ new (winston[_0xe99a[21]][_0xe99a[20]])({name:util[_0xe99a[10]](_0xe99a[18],_0x9498x7,_0xe99a[19]),filename:filename(_0x9498x7,_0xe99a[19]),level:_0xe99a[19],json:false,formatter:function(_0x9498xa){return formatter(_0x9498x7,_0x9498xa)}}), new (winston[_0xe99a[21]][_0xe99a[20]])({name:util[_0xe99a[10]](_0xe99a[18],_0x9498x7,_0xe99a[22]),filename:filename(_0x9498x7,_0xe99a[22]),level:_0xe99a[22],json:false,formatter:function(_0x9498xa){return formatter(_0x9498x7,_0x9498xa)}}), new (winston[_0xe99a[21]][_0xe99a[25]])({level:process[_0xe99a[24]][_0xe99a[23]]|| debugLevel,json:false,formatter:function(_0x9498xa){return formatter(_0x9498x7,_0x9498xa)}})]})}
\ No newline at end of file
index 8691b61..77c8f8b 100644 (file)
@@ -1 +1 @@
-var _0x5fcd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x74\x68","\x6F\x73","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x73\x65\x72\x76\x69\x63\x65\x73\x2F\x65\x78\x70\x72\x65\x73\x73\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x6A\x6F\x69\x6E","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x73\x65\x72\x76\x69\x63\x65\x73\x2F\x61\x6D\x69\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x61\x67\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x73\x65\x72\x76\x69\x63\x65\x73\x2F\x61\x67\x69\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x65\x6D\x61\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x73\x65\x72\x76\x69\x63\x65\x73\x2F\x65\x6D\x61\x69\x6C\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x5fcd[0];var path=require(_0x5fcd[1]);var os=require(_0x5fcd[2]);var config={apps:[{name:_0x5fcd[3],script:path[_0x5fcd[5]](__dirname,_0x5fcd[4])},{name:_0x5fcd[6],script:path[_0x5fcd[5]](__dirname,_0x5fcd[7])},{name:_0x5fcd[8],script:path[_0x5fcd[5]](__dirname,_0x5fcd[9])},{name:_0x5fcd[10],script:path[_0x5fcd[5]](__dirname,_0x5fcd[11])}]};module[_0x5fcd[12]]= config
\ No newline at end of file
+var _0x122e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x74\x68","\x6F\x73","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x73\x65\x72\x76\x69\x63\x65\x73\x2F\x65\x78\x70\x72\x65\x73\x73\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x6A\x6F\x69\x6E","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x73\x65\x72\x76\x69\x63\x65\x73\x2F\x61\x6D\x69\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x61\x67\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x73\x65\x72\x76\x69\x63\x65\x73\x2F\x61\x67\x69\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x65\x6D\x61\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x73\x65\x72\x76\x69\x63\x65\x73\x2F\x65\x6D\x61\x69\x6C\x2F\x69\x6E\x64\x65\x78\x2E\x6A\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x122e[0];var path=require(_0x122e[1]);var os=require(_0x122e[2]);var config={apps:[{name:_0x122e[3],script:path[_0x122e[5]](__dirname,_0x122e[4])},{name:_0x122e[6],script:path[_0x122e[5]](__dirname,_0x122e[7])},{name:_0x122e[8],script:path[_0x122e[5]](__dirname,_0x122e[9])},{name:_0x122e[10],script:path[_0x122e[5]](__dirname,_0x122e[11])}]};module[_0x122e[12]]= config
\ No newline at end of file
index 646ac41..0ebcbb4 100644 (file)
@@ -1 +1 @@
-var _0xe0cb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x6D\x32","\x62\x6C\x75\x65\x62\x69\x72\x64","\x2E\x2F\x63\x6F\x6E\x66\x69\x67","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x74\x61\x72\x74","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74","\x74\x68\x65\x6E","\x73\x74\x6F\x70","\x72\x65\x73\x74\x61\x72\x74","\x6C\x69\x73\x74","\x64\x65\x73\x63\x72\x69\x62\x65"];_0xe0cb[0];var pm2=require(_0xe0cb[1]);var BPromise=require(_0xe0cb[2]);var config=require(_0xe0cb[3]);function connect(){return  new BPromise(function(_0x5db4x5,_0x5db4x6){return pm2[_0xe0cb[5]](function(_0x5db4x7){if(_0x5db4x7){return _0x5db4x6(_0x5db4x7)};return _0x5db4x5(_0xe0cb[4])})})}exports[_0xe0cb[6]]= function(_0x5db4x8){return connect()[_0xe0cb[8]](function(){return  new BPromise(function(_0x5db4x5,_0x5db4x6){return pm2[_0xe0cb[6]](config,function(_0x5db4x7,_0x5db4x9){if(_0x5db4x7){return _0x5db4x6(_0x5db4x7)};pm2[_0xe0cb[7]]();return _0x5db4x5(_0x5db4x9)})})})};exports[_0xe0cb[9]]= function(_0x5db4xa){return connect()[_0xe0cb[8]](function(){return  new BPromise(function(_0x5db4x5,_0x5db4x6){return pm2[_0xe0cb[9]](_0x5db4xa,function(_0x5db4x7,_0x5db4x9){if(_0x5db4x7){return _0x5db4x6(_0x5db4x7)};pm2[_0xe0cb[7]]();return _0x5db4x5(_0x5db4x9)})})})};exports[_0xe0cb[10]]= function(_0x5db4xa){return connect()[_0xe0cb[8]](function(){return  new BPromise(function(_0x5db4x5,_0x5db4x6){return pm2[_0xe0cb[10]](_0x5db4xa,function(_0x5db4x7,_0x5db4xb){if(_0x5db4x7){return _0x5db4x6(_0x5db4x7)};pm2[_0xe0cb[7]]();return _0x5db4x5(_0x5db4xb)})})})};exports[_0xe0cb[11]]= function(){return connect()[_0xe0cb[8]](function(){return  new BPromise(function(_0x5db4x5,_0x5db4x6){return pm2[_0xe0cb[11]](function(_0x5db4x7,_0x5db4xc){if(_0x5db4x7){return _0x5db4x6(_0x5db4x7)};pm2[_0xe0cb[7]]();return _0x5db4x5(_0x5db4xc)})})})};exports[_0xe0cb[12]]= function(_0x5db4xa){return connect()[_0xe0cb[8]](function(){return  new BPromise(function(_0x5db4x5,_0x5db4x6){return pm2[_0xe0cb[12]](_0x5db4xa,function(_0x5db4x7,_0x5db4xc){if(_0x5db4x7){return _0x5db4x6(_0x5db4x7)};pm2[_0xe0cb[7]]();return _0x5db4x5(_0x5db4xc)})})})}
\ No newline at end of file
+var _0x9893=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x6D\x32","\x62\x6C\x75\x65\x62\x69\x72\x64","\x2E\x2F\x63\x6F\x6E\x66\x69\x67","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x74\x61\x72\x74","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74","\x74\x68\x65\x6E","\x73\x74\x6F\x70","\x72\x65\x73\x74\x61\x72\x74","\x6C\x69\x73\x74","\x64\x65\x73\x63\x72\x69\x62\x65"];_0x9893[0];var pm2=require(_0x9893[1]);var BPromise=require(_0x9893[2]);var config=require(_0x9893[3]);function connect(){return  new BPromise(function(_0xb970x5,_0xb970x6){return pm2[_0x9893[5]](function(_0xb970x7){if(_0xb970x7){return _0xb970x6(_0xb970x7)};return _0xb970x5(_0x9893[4])})})}exports[_0x9893[6]]= function(_0xb970x8){return connect()[_0x9893[8]](function(){return  new BPromise(function(_0xb970x5,_0xb970x6){return pm2[_0x9893[6]](config,function(_0xb970x7,_0xb970x9){if(_0xb970x7){return _0xb970x6(_0xb970x7)};pm2[_0x9893[7]]();return _0xb970x5(_0xb970x9)})})})};exports[_0x9893[9]]= function(_0xb970xa){return connect()[_0x9893[8]](function(){return  new BPromise(function(_0xb970x5,_0xb970x6){return pm2[_0x9893[9]](_0xb970xa,function(_0xb970x7,_0xb970x9){if(_0xb970x7){return _0xb970x6(_0xb970x7)};pm2[_0x9893[7]]();return _0xb970x5(_0xb970x9)})})})};exports[_0x9893[10]]= function(_0xb970xa){return connect()[_0x9893[8]](function(){return  new BPromise(function(_0xb970x5,_0xb970x6){return pm2[_0x9893[10]](_0xb970xa,function(_0xb970x7,_0xb970xb){if(_0xb970x7){return _0xb970x6(_0xb970x7)};pm2[_0x9893[7]]();return _0xb970x5(_0xb970xb)})})})};exports[_0x9893[11]]= function(){return connect()[_0x9893[8]](function(){return  new BPromise(function(_0xb970x5,_0xb970x6){return pm2[_0x9893[11]](function(_0xb970x7,_0xb970xc){if(_0xb970x7){return _0xb970x6(_0xb970x7)};pm2[_0x9893[7]]();return _0xb970x5(_0xb970xc)})})})};exports[_0x9893[12]]= function(_0xb970xa){return connect()[_0x9893[8]](function(){return  new BPromise(function(_0xb970x5,_0xb970x6){return pm2[_0x9893[12]](_0xb970xa,function(_0xb970x7,_0xb970xc){if(_0xb970x7){return _0xb970x6(_0xb970x7)};pm2[_0x9893[7]]();return _0xb970x5(_0xb970xc)})})})}
\ No newline at end of file
index 7fe1846..13eaec6 100644 (file)
@@ -1 +1 @@
-var _0x500a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6C\x6F\x63\x61\x6C","\x75\x73\x65\x72","\x67\x69\x75\x73\x65\x70\x70\x65\x2E\x63\x61\x72\x65\x72\x69","\x67\x69\x75\x73\x65\x70\x70\x65\x2E\x63\x61\x72\x65\x72\x69\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x67\x69\x75\x73\x65\x70\x70\x65","\x47\x69\x75\x73\x65\x70\x70\x65\x20\x43\x61\x72\x65\x72\x69","\x61\x64\x6D\x69\x6E","\x64\x61\x6E\x69\x65\x6C\x65\x2E\x63\x69\x6E\x74\x69","\x64\x61\x6E\x69\x65\x6C\x65\x2E\x63\x69\x6E\x74\x69\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x64\x61\x6E\x69\x65\x6C\x65","\x44\x61\x6E\x69\x65\x6C\x65\x20\x43\x69\x6E\x74\x69","\x53\x61\x6C\x65\x73","\x72\x69\x6E\x67\x61\x6C\x6C","\x53\x75\x70\x70\x6F\x72\x74","\x54\x31","\x54\x32","\x4C\x31","\x4C\x31\x20\x44\x65\x73\x63","\x4C\x32","\x4C\x32\x20\x44\x65\x73\x63","\x4C\x33","\x4C\x33\x20\x44\x65\x73\x63","\x47\x6F\x6F\x67\x6C\x65","\x46\x61\x63\x65\x62\x6F\x6F\x6B","\x54\x77\x69\x74\x74\x65\x72","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x44\x65\x66\x61\x75\x6C\x74\x20\x63\x6F\x6E\x74\x65\x78\x74\x20\x28\x44\x4F\x20\x4E\x4F\x54\x20\x44\x45\x4C\x45\x54\x45\x29","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x70\x2D\x70\x72\x6F\x76\x69\x64\x65\x72","\x69\x6E\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x58\x65\x6E\x69\x61\x6C\x61\x62\x20\x74\x65\x73\x74","\x61\x67\x65\x6E\x74","\x25\x73\x25\x64","\x66\x6F\x72\x6D\x61\x74","\x25\x73\x25\x64\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x70\x61\x73\x73\x77\x6F\x72\x64","\x70\x75\x73\x68","\x71\x75\x65\x75\x65","\x4A\x6F\x68\x6E","\x44\x6F\x65","\x6A\x6F\x68\x6E\x2E\x64\x6F\x65","\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x54\x41\x47","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x66\x69\x6E\x69\x73\x68\x65\x64\x20\x70\x6F\x70\x75\x6C\x61\x74\x69\x6E\x67","\x73\x65\x74\x74\x69\x6E\x67\x73","\x6C\x6F\x67","\x74\x68\x65\x6E","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x53\x65\x74\x74\x69\x6E\x67","\x75\x73\x65\x72\x73","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x55\x73\x65\x72","\x64\x65\x73\x74\x72\x6F\x79","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x73","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x74\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x6C\x69\x73\x74\x73","\x43\x6D\x4C\x69\x73\x74","\x63\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x63\x6F\x6E\x74\x61\x63\x74\x73","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x74\x61\x67\x73","\x54\x61\x67"];_0x500a[0];var util=require(_0x500a[1]);var db=require(_0x500a[3])[_0x500a[2]];var users=[{id:1,provider:_0x500a[4],role:_0x500a[5],name:_0x500a[6],email:_0x500a[7],password:_0x500a[8],fullname:_0x500a[9],internal:2001},{id:2,provider:_0x500a[4],role:_0x500a[10],name:_0x500a[11],email:_0x500a[12],password:_0x500a[13],fullname:_0x500a[14],internal:2002}];var queues=[{id:1,name:_0x500a[15],strategy:_0x500a[16],acw:true,acwTimeout:5},{id:2,name:_0x500a[17],strategy:_0x500a[16],acw:true,acwTimeout:5}];var teams=[{id:1,name:_0x500a[18]},{id:2,name:_0x500a[19]}];var lists=[{id:1,name:_0x500a[20],description:_0x500a[21]},{id:2,name:_0x500a[22],description:_0x500a[23]},{id:3,name:_0x500a[24],description:_0x500a[25]}];var companies=[{id:1,name:_0x500a[26]},{id:2,name:_0x500a[27]},{id:3,name:_0x500a[28]}];var contexts=[{name:_0x500a[29],description:_0x500a[30],defaultEntry:true},{name:_0x500a[31],description:_0x500a[30],defaultEntry:true},{name:_0x500a[32],description:_0x500a[30],defaultEntry:true},{name:_0x500a[33],description:_0x500a[30],defaultEntry:true},{name:_0x500a[34],description:_0x500a[30],defaultEntry:true}];var setting={min_internal:1000,min_mailbox:1000,footerWhiteLabel:_0x500a[35]};var contacts=[];var tags=[];for(var i=0;i< 20;i++){users[_0x500a[41]]({id:1000+ i+ 1,internal:3000+ i,provider:_0x500a[4],role:_0x500a[36],name:util[_0x500a[38]](_0x500a[37],_0x500a[36],i+ 1),email:util[_0x500a[38]](_0x500a[39],_0x500a[36],i+ 1),password:_0x500a[40],fullname:util[_0x500a[38]](_0x500a[37],_0x500a[36],i+ 1)})};for(var i=0;i< 10;i++){queues[_0x500a[41]]({id:1000+ i+ 1,name:util[_0x500a[38]](_0x500a[37],_0x500a[42],i+ 1),strategy:_0x500a[16]})};for(var i=0;i< 20;i++){contacts[_0x500a[41]]({id:i+ 1,firstName:_0x500a[43]+ 1000+ i+ 1,lastName:_0x500a[44]+ 1000+ i+ 1,phone:1000+ i+ 1,email:_0x500a[45]+ 1000+ i+ 1+ _0x500a[46]})};for(var i=0;i< 20;i++){tags[_0x500a[41]]({id:i+ 1,name:_0x500a[47]+ i+ 1})};db[_0x500a[55]][_0x500a[54]]({where:{id:1},defaults:setting})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[51])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)});db[_0x500a[58]][_0x500a[59]]({where:{}})[_0x500a[53]](function(){db[_0x500a[58]][_0x500a[57]](users)})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[56])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)});db[_0x500a[61]][_0x500a[59]]({where:{}})[_0x500a[53]](function(){return db[_0x500a[61]][_0x500a[57]](queues)})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[60])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)});db[_0x500a[63]][_0x500a[57]](contexts,{ignoreDuplicates:true})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[62])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)});db[_0x500a[65]][_0x500a[59]]({where:{}})[_0x500a[53]](function(){return db[_0x500a[65]][_0x500a[57]](teams)})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[64])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)});db[_0x500a[67]][_0x500a[59]]({where:{}})[_0x500a[53]](function(){return db[_0x500a[67]][_0x500a[57]](lists)})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[66])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)});db[_0x500a[69]][_0x500a[59]]({where:{}})[_0x500a[53]](function(){return db[_0x500a[69]][_0x500a[57]](companies)})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[68])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)});db[_0x500a[71]][_0x500a[59]]({where:{}})[_0x500a[53]](function(){return db[_0x500a[71]][_0x500a[57]](contacts)})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[70])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)});db[_0x500a[73]][_0x500a[59]]({where:{}})[_0x500a[53]](function(){return db[_0x500a[73]][_0x500a[57]](tags)})[_0x500a[53]](function(){console[_0x500a[52]](_0x500a[50],_0x500a[72])})[_0x500a[49]](function(_0xd426xd){console[_0x500a[48]](_0xd426xd)})
\ No newline at end of file
+var _0xf12d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x6C\x6F\x63\x61\x6C","\x75\x73\x65\x72","\x67\x69\x75\x73\x65\x70\x70\x65\x2E\x63\x61\x72\x65\x72\x69","\x67\x69\x75\x73\x65\x70\x70\x65\x2E\x63\x61\x72\x65\x72\x69\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x67\x69\x75\x73\x65\x70\x70\x65","\x47\x69\x75\x73\x65\x70\x70\x65\x20\x43\x61\x72\x65\x72\x69","\x61\x64\x6D\x69\x6E","\x64\x61\x6E\x69\x65\x6C\x65\x2E\x63\x69\x6E\x74\x69","\x64\x61\x6E\x69\x65\x6C\x65\x2E\x63\x69\x6E\x74\x69\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x64\x61\x6E\x69\x65\x6C\x65","\x44\x61\x6E\x69\x65\x6C\x65\x20\x43\x69\x6E\x74\x69","\x53\x61\x6C\x65\x73","\x72\x69\x6E\x67\x61\x6C\x6C","\x53\x75\x70\x70\x6F\x72\x74","\x54\x31","\x54\x32","\x4C\x31","\x4C\x31\x20\x44\x65\x73\x63","\x4C\x32","\x4C\x32\x20\x44\x65\x73\x63","\x4C\x33","\x4C\x33\x20\x44\x65\x73\x63","\x47\x6F\x6F\x67\x6C\x65","\x46\x61\x63\x65\x62\x6F\x6F\x6B","\x54\x77\x69\x74\x74\x65\x72","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x44\x65\x66\x61\x75\x6C\x74\x20\x63\x6F\x6E\x74\x65\x78\x74\x20\x28\x44\x4F\x20\x4E\x4F\x54\x20\x44\x45\x4C\x45\x54\x45\x29","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x70\x2D\x70\x72\x6F\x76\x69\x64\x65\x72","\x69\x6E\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x58\x65\x6E\x69\x61\x6C\x61\x62\x20\x74\x65\x73\x74","\x61\x67\x65\x6E\x74","\x25\x73\x25\x64","\x66\x6F\x72\x6D\x61\x74","\x25\x73\x25\x64\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x70\x61\x73\x73\x77\x6F\x72\x64","\x70\x75\x73\x68","\x71\x75\x65\x75\x65","\x4A\x6F\x68\x6E","\x44\x6F\x65","\x6A\x6F\x68\x6E\x2E\x64\x6F\x65","\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x54\x41\x47","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x66\x69\x6E\x69\x73\x68\x65\x64\x20\x70\x6F\x70\x75\x6C\x61\x74\x69\x6E\x67","\x73\x65\x74\x74\x69\x6E\x67\x73","\x6C\x6F\x67","\x74\x68\x65\x6E","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x53\x65\x74\x74\x69\x6E\x67","\x75\x73\x65\x72\x73","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x55\x73\x65\x72","\x64\x65\x73\x74\x72\x6F\x79","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x73","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x74\x65\x61\x6D\x73","\x54\x65\x61\x6D","\x6C\x69\x73\x74\x73","\x43\x6D\x4C\x69\x73\x74","\x63\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x63\x6F\x6E\x74\x61\x63\x74\x73","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x74\x61\x67\x73","\x54\x61\x67"];_0xf12d[0];var util=require(_0xf12d[1]);var db=require(_0xf12d[3])[_0xf12d[2]];var users=[{id:1,provider:_0xf12d[4],role:_0xf12d[5],name:_0xf12d[6],email:_0xf12d[7],password:_0xf12d[8],fullname:_0xf12d[9],internal:2001},{id:2,provider:_0xf12d[4],role:_0xf12d[10],name:_0xf12d[11],email:_0xf12d[12],password:_0xf12d[13],fullname:_0xf12d[14],internal:2002}];var queues=[{id:1,name:_0xf12d[15],strategy:_0xf12d[16],acw:true,acwTimeout:5},{id:2,name:_0xf12d[17],strategy:_0xf12d[16],acw:true,acwTimeout:5}];var teams=[{id:1,name:_0xf12d[18]},{id:2,name:_0xf12d[19]}];var lists=[{id:1,name:_0xf12d[20],description:_0xf12d[21]},{id:2,name:_0xf12d[22],description:_0xf12d[23]},{id:3,name:_0xf12d[24],description:_0xf12d[25]}];var companies=[{id:1,name:_0xf12d[26]},{id:2,name:_0xf12d[27]},{id:3,name:_0xf12d[28]}];var contexts=[{name:_0xf12d[29],description:_0xf12d[30],defaultEntry:true},{name:_0xf12d[31],description:_0xf12d[30],defaultEntry:true},{name:_0xf12d[32],description:_0xf12d[30],defaultEntry:true},{name:_0xf12d[33],description:_0xf12d[30],defaultEntry:true},{name:_0xf12d[34],description:_0xf12d[30],defaultEntry:true}];var setting={min_internal:1000,min_mailbox:1000,footerWhiteLabel:_0xf12d[35]};var contacts=[];var tags=[];for(var i=0;i< 20;i++){users[_0xf12d[41]]({id:1000+ i+ 1,internal:3000+ i,provider:_0xf12d[4],role:_0xf12d[36],name:util[_0xf12d[38]](_0xf12d[37],_0xf12d[36],i+ 1),email:util[_0xf12d[38]](_0xf12d[39],_0xf12d[36],i+ 1),password:_0xf12d[40],fullname:util[_0xf12d[38]](_0xf12d[37],_0xf12d[36],i+ 1)})};for(var i=0;i< 10;i++){queues[_0xf12d[41]]({id:1000+ i+ 1,name:util[_0xf12d[38]](_0xf12d[37],_0xf12d[42],i+ 1),strategy:_0xf12d[16]})};for(var i=0;i< 20;i++){contacts[_0xf12d[41]]({id:i+ 1,firstName:_0xf12d[43]+ 1000+ i+ 1,lastName:_0xf12d[44]+ 1000+ i+ 1,phone:1000+ i+ 1,email:_0xf12d[45]+ 1000+ i+ 1+ _0xf12d[46]})};for(var i=0;i< 20;i++){tags[_0xf12d[41]]({id:i+ 1,name:_0xf12d[47]+ i+ 1})};db[_0xf12d[55]][_0xf12d[54]]({where:{id:1},defaults:setting})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[51])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)});db[_0xf12d[58]][_0xf12d[59]]({where:{}})[_0xf12d[53]](function(){db[_0xf12d[58]][_0xf12d[57]](users)})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[56])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)});db[_0xf12d[61]][_0xf12d[59]]({where:{}})[_0xf12d[53]](function(){return db[_0xf12d[61]][_0xf12d[57]](queues)})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[60])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)});db[_0xf12d[63]][_0xf12d[57]](contexts,{ignoreDuplicates:true})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[62])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)});db[_0xf12d[65]][_0xf12d[59]]({where:{}})[_0xf12d[53]](function(){return db[_0xf12d[65]][_0xf12d[57]](teams)})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[64])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)});db[_0xf12d[67]][_0xf12d[59]]({where:{}})[_0xf12d[53]](function(){return db[_0xf12d[67]][_0xf12d[57]](lists)})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[66])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)});db[_0xf12d[69]][_0xf12d[59]]({where:{}})[_0xf12d[53]](function(){return db[_0xf12d[69]][_0xf12d[57]](companies)})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[68])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)});db[_0xf12d[71]][_0xf12d[59]]({where:{}})[_0xf12d[53]](function(){return db[_0xf12d[71]][_0xf12d[57]](contacts)})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[70])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)});db[_0xf12d[73]][_0xf12d[59]]({where:{}})[_0xf12d[53]](function(){return db[_0xf12d[73]][_0xf12d[57]](tags)})[_0xf12d[53]](function(){console[_0xf12d[52]](_0xf12d[50],_0xf12d[72])})[_0xf12d[49]](function(_0xfe6fxd){console[_0xf12d[48]](_0xfe6fxd)})
\ No newline at end of file
index e25281a..e7c052f 100644 (file)
@@ -1 +1 @@
-var _0x49f0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x49\x6E\x6E\x6F\x63\x65\x6E\x7A\x6F","\x42\x69\x6F\x6E\x64\x6F","\x69\x6E\x6E\x6F\x63\x65\x6E\x7A\x6F\x2E\x62\x69\x6F\x6E\x64\x6F","\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x70\x75\x73\x68","\x6E\x6F\x77","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x66\x69\x6E\x69\x73\x68\x65\x64\x20\x70\x6F\x70\x75\x6C\x61\x74\x69\x6E\x67","\x68\x6F\x70\x70\x65\x72\x32","\x74\x68\x65\x6E","\x63\x6F\x6E\x74\x61\x63\x74\x73\x32","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x68\x6F\x70\x70\x65\x72\x31","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x63\x6F\x6E\x74\x61\x63\x74\x73\x31","\x64\x65\x73\x74\x72\x6F\x79"];_0x49f0[0];var util=require(_0x49f0[1]);var db=require(_0x49f0[3])[_0x49f0[2]];var contacts=[];var hopper=[];var contacts2=[];var hopper2=[];for(var i=1;i<= 1200;i+= 1){contacts[_0x49f0[8]]({id:i,firstName:_0x49f0[4]+ i,lastName:_0x49f0[5]+ i,phone:66699900000+ i,email:_0x49f0[6]+ i+ _0x49f0[7]})};for(var i=1;i<= 1200;i+= 1){hopper[_0x49f0[8]]({id:i,active:false,scheduledat:Date[_0x49f0[9]](),countbusyretry:0,countcongestionretry:0,countnoanswerretry:0,ContactId:i,ListId:1,UserId:1,VoiceQueueId:1021,createdAt:Date[_0x49f0[9]](),updatedAt:Date[_0x49f0[9]]()})};for(var i=1201;i<= 2400;i+= 1){contacts2[_0x49f0[8]]({id:i,firstName:_0x49f0[4]+ i,lastName:_0x49f0[5]+ i,phone:66699900000+ i,email:_0x49f0[6]+ i+ _0x49f0[7]})};for(var i=1201;i<= 2400;i+= 1){hopper2[_0x49f0[8]]({id:i,active:false,scheduledat:Date[_0x49f0[9]](),countbusyretry:0,countcongestionretry:0,countnoanswerretry:0,ContactId:i,ListId:1,UserId:1,VoiceQueueId:1021,createdAt:Date[_0x49f0[9]](),updatedAt:Date[_0x49f0[9]]()})};db[_0x49f0[19]][_0x49f0[21]]({where:{}})[_0x49f0[14]](function(){return db[_0x49f0[19]][_0x49f0[16]](contacts)})[_0x49f0[14]](function(){console[_0x49f0[10]](_0x49f0[12],_0x49f0[20]);return db[_0x49f0[17]][_0x49f0[21]]({where:{}})})[_0x49f0[14]](function(){return db[_0x49f0[17]][_0x49f0[16]](hopper)})[_0x49f0[14]](function(){console[_0x49f0[10]](_0x49f0[12],_0x49f0[18]);return db[_0x49f0[19]][_0x49f0[16]](contacts2)})[_0x49f0[14]](function(){console[_0x49f0[10]](_0x49f0[12],_0x49f0[15]);return db[_0x49f0[17]][_0x49f0[16]](hopper2)})[_0x49f0[14]](function(){console[_0x49f0[10]](_0x49f0[12],_0x49f0[13])})[_0x49f0[11]](function(_0xecdax8){console[_0x49f0[10]](_0xecdax8)})
\ No newline at end of file
+var _0xa5c2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x49\x6E\x6E\x6F\x63\x65\x6E\x7A\x6F","\x42\x69\x6F\x6E\x64\x6F","\x69\x6E\x6E\x6F\x63\x65\x6E\x7A\x6F\x2E\x62\x69\x6F\x6E\x64\x6F","\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x70\x75\x73\x68","\x6E\x6F\x77","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x66\x69\x6E\x69\x73\x68\x65\x64\x20\x70\x6F\x70\x75\x6C\x61\x74\x69\x6E\x67","\x68\x6F\x70\x70\x65\x72\x32","\x74\x68\x65\x6E","\x63\x6F\x6E\x74\x61\x63\x74\x73\x32","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x68\x6F\x70\x70\x65\x72\x31","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x63\x6F\x6E\x74\x61\x63\x74\x73\x31","\x64\x65\x73\x74\x72\x6F\x79"];_0xa5c2[0];var util=require(_0xa5c2[1]);var db=require(_0xa5c2[3])[_0xa5c2[2]];var contacts=[];var hopper=[];var contacts2=[];var hopper2=[];for(var i=1;i<= 1200;i+= 1){contacts[_0xa5c2[8]]({id:i,firstName:_0xa5c2[4]+ i,lastName:_0xa5c2[5]+ i,phone:66699900000+ i,email:_0xa5c2[6]+ i+ _0xa5c2[7]})};for(var i=1;i<= 1200;i+= 1){hopper[_0xa5c2[8]]({id:i,active:false,scheduledat:Date[_0xa5c2[9]](),countbusyretry:0,countcongestionretry:0,countnoanswerretry:0,ContactId:i,ListId:1,UserId:1,VoiceQueueId:1021,createdAt:Date[_0xa5c2[9]](),updatedAt:Date[_0xa5c2[9]]()})};for(var i=1201;i<= 2400;i+= 1){contacts2[_0xa5c2[8]]({id:i,firstName:_0xa5c2[4]+ i,lastName:_0xa5c2[5]+ i,phone:66699900000+ i,email:_0xa5c2[6]+ i+ _0xa5c2[7]})};for(var i=1201;i<= 2400;i+= 1){hopper2[_0xa5c2[8]]({id:i,active:false,scheduledat:Date[_0xa5c2[9]](),countbusyretry:0,countcongestionretry:0,countnoanswerretry:0,ContactId:i,ListId:1,UserId:1,VoiceQueueId:1021,createdAt:Date[_0xa5c2[9]](),updatedAt:Date[_0xa5c2[9]]()})};db[_0xa5c2[19]][_0xa5c2[21]]({where:{}})[_0xa5c2[14]](function(){return db[_0xa5c2[19]][_0xa5c2[16]](contacts)})[_0xa5c2[14]](function(){console[_0xa5c2[10]](_0xa5c2[12],_0xa5c2[20]);return db[_0xa5c2[17]][_0xa5c2[21]]({where:{}})})[_0xa5c2[14]](function(){return db[_0xa5c2[17]][_0xa5c2[16]](hopper)})[_0xa5c2[14]](function(){console[_0xa5c2[10]](_0xa5c2[12],_0xa5c2[18]);return db[_0xa5c2[19]][_0xa5c2[16]](contacts2)})[_0xa5c2[14]](function(){console[_0xa5c2[10]](_0xa5c2[12],_0xa5c2[15]);return db[_0xa5c2[17]][_0xa5c2[16]](hopper2)})[_0xa5c2[14]](function(){console[_0xa5c2[10]](_0xa5c2[12],_0xa5c2[13])})[_0xa5c2[11]](function(_0xbfdax8){console[_0xa5c2[10]](_0xbfdax8)})
\ No newline at end of file
index 1251156..64eae38 100644 (file)
@@ -1 +1 @@
-var _0x51c8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x72\x65\x70\x6F\x72\x74","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x44\x65\x66\x61\x75\x6C\x74\x20\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x44\x65\x66\x61\x75\x6C\x74\x20\x52\x65\x70\x6F\x72\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x69\x64","\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x49\x64","\x52\x65\x70\x6F\x72\x74\x49\x64","\x63\x72\x65\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x6D\x6F\x74\x69\x6F\x6E","\x64\x65\x66\x61\x75\x6C\x74","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x64\x65\x73\x74\x72\x6F\x79","\x63\x72\x65\x61\x74\x65\x43\x75\x73\x74\x6F\x6D","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x43\x75\x73\x74\x6F\x6D\x20\x52\x65\x70\x6F\x72\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x43\x75\x73\x74\x6F\x6D\x20\x52\x65\x70\x6F\x72\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x49\x64","\x63\x75\x73\x74\x6F\x6D","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74"];_0x51c8[0];var db=require(_0x51c8[2])[_0x51c8[1]];var logger=require(_0x51c8[4])(_0x51c8[3]);var report=require(_0x51c8[5]);exports[_0x51c8[6]]= function(){return db[_0x51c8[23]][_0x51c8[24]]({where:{id:{$ne:null}}})[_0x51c8[12]](function(){return db[_0x51c8[19]][_0x51c8[24]]({where:{DefaultReportId:{$ne:null}}})})[_0x51c8[12]](function(){return db[_0x51c8[23]][_0x51c8[22]](report[_0x51c8[21]](_0x51c8[20]),{ignoreDuplicates:true,individualHooks:true})[_0x51c8[12]](function(_0xc81ex5){var _0xc81ex6=report[_0x51c8[13]]();for(var _0xc81ex7=0;_0xc81ex7< _0xc81ex5[_0x51c8[14]];_0xc81ex7+= 1){if(_0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]]){for(var _0xc81ex8=0;_0xc81ex8< _0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0x51c8[14]];_0xc81ex8+= 1){_0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0xc81ex8][_0x51c8[16]]= _0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0xc81ex8][_0x51c8[17]];delete _0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0xc81ex8][_0x51c8[17]];db[_0x51c8[19]][_0x51c8[18]](_0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0xc81ex8])}}}})})[_0x51c8[12]](function(){logger[_0x51c8[11]](_0x51c8[10])})[_0x51c8[9]](function(_0xc81ex4){logger[_0x51c8[8]](_0x51c8[7])})};exports[_0x51c8[25]]= function(){return db[_0x51c8[30]][_0x51c8[22]](report[_0x51c8[21]](_0x51c8[29]),{ignoreDuplicates:true,individualHooks:true})[_0x51c8[12]](function(_0xc81ex5){var _0xc81ex6=report[_0x51c8[13]]();for(var _0xc81ex7=0;_0xc81ex7< _0xc81ex5[_0x51c8[14]];_0xc81ex7+= 1){if(_0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]]){for(var _0xc81ex8=0;_0xc81ex8< _0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0x51c8[14]];_0xc81ex8+= 1){_0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0xc81ex8][_0x51c8[28]]= _0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0xc81ex8][_0x51c8[17]];delete _0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0xc81ex8][_0x51c8[17]];db[_0x51c8[19]][_0x51c8[18]](_0xc81ex6[_0xc81ex5[_0xc81ex7][_0x51c8[15]]][_0xc81ex8])}}}})[_0x51c8[12]](function(){logger[_0x51c8[11]](_0x51c8[27])})[_0x51c8[9]](function(_0xc81ex4){logger[_0x51c8[8]](_0x51c8[26])})}
\ No newline at end of file
+var _0xbeb1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x72\x65\x70\x6F\x72\x74","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x44\x65\x66\x61\x75\x6C\x74\x20\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x44\x65\x66\x61\x75\x6C\x74\x20\x52\x65\x70\x6F\x72\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x66\x69\x65\x6C\x64\x73","\x6C\x65\x6E\x67\x74\x68","\x69\x64","\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x49\x64","\x52\x65\x70\x6F\x72\x74\x49\x64","\x63\x72\x65\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x6D\x6F\x74\x69\x6F\x6E","\x64\x65\x66\x61\x75\x6C\x74","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x64\x65\x73\x74\x72\x6F\x79","\x63\x72\x65\x61\x74\x65\x43\x75\x73\x74\x6F\x6D","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x43\x75\x73\x74\x6F\x6D\x20\x52\x65\x70\x6F\x72\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x43\x75\x73\x74\x6F\x6D\x20\x52\x65\x70\x6F\x72\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x49\x64","\x63\x75\x73\x74\x6F\x6D","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74"];_0xbeb1[0];var db=require(_0xbeb1[2])[_0xbeb1[1]];var logger=require(_0xbeb1[4])(_0xbeb1[3]);var report=require(_0xbeb1[5]);exports[_0xbeb1[6]]= function(){return db[_0xbeb1[23]][_0xbeb1[24]]({where:{id:{$ne:null}}})[_0xbeb1[12]](function(){return db[_0xbeb1[19]][_0xbeb1[24]]({where:{DefaultReportId:{$ne:null}}})})[_0xbeb1[12]](function(){return db[_0xbeb1[23]][_0xbeb1[22]](report[_0xbeb1[21]](_0xbeb1[20]),{ignoreDuplicates:true,individualHooks:true})[_0xbeb1[12]](function(_0xd480x5){var _0xd480x6=report[_0xbeb1[13]]();for(var _0xd480x7=0;_0xd480x7< _0xd480x5[_0xbeb1[14]];_0xd480x7+= 1){if(_0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]]){for(var _0xd480x8=0;_0xd480x8< _0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xbeb1[14]];_0xd480x8+= 1){_0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xd480x8][_0xbeb1[16]]= _0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xd480x8][_0xbeb1[17]];delete _0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xd480x8][_0xbeb1[17]];db[_0xbeb1[19]][_0xbeb1[18]](_0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xd480x8])}}}})})[_0xbeb1[12]](function(){logger[_0xbeb1[11]](_0xbeb1[10])})[_0xbeb1[9]](function(_0xd480x4){logger[_0xbeb1[8]](_0xbeb1[7])})};exports[_0xbeb1[25]]= function(){return db[_0xbeb1[30]][_0xbeb1[22]](report[_0xbeb1[21]](_0xbeb1[29]),{ignoreDuplicates:true,individualHooks:true})[_0xbeb1[12]](function(_0xd480x5){var _0xd480x6=report[_0xbeb1[13]]();for(var _0xd480x7=0;_0xd480x7< _0xd480x5[_0xbeb1[14]];_0xd480x7+= 1){if(_0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]]){for(var _0xd480x8=0;_0xd480x8< _0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xbeb1[14]];_0xd480x8+= 1){_0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xd480x8][_0xbeb1[28]]= _0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xd480x8][_0xbeb1[17]];delete _0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xd480x8][_0xbeb1[17]];db[_0xbeb1[19]][_0xbeb1[18]](_0xd480x6[_0xd480x5[_0xd480x7][_0xbeb1[15]]][_0xd480x8])}}}})[_0xbeb1[12]](function(){logger[_0xbeb1[11]](_0xbeb1[27])})[_0xbeb1[9]](function(_0xd480x4){logger[_0xbeb1[8]](_0xbeb1[26])})}
\ No newline at end of file
index 6b8862a..139f1c1 100644 (file)
@@ -1 +1 @@
-var _0x50e4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x72\x65\x65","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x54\x72\x65\x65\x20\x44\x65\x66\x61\x75\x6C\x74\x20\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x54\x72\x65\x65\x20\x44\x65\x66\x61\x75\x6C\x74\x20\x52\x65\x70\x6F\x72\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6D\x6F\x74\x69\x6F\x6E","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x64\x65\x73\x74\x72\x6F\x79","\x63\x72\x65\x61\x74\x65\x43\x75\x73\x74\x6F\x6D","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x54\x72\x65\x65\x20\x43\x75\x73\x74\x6F\x6D\x20\x52\x65\x70\x6F\x72\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x54\x72\x65\x65\x20\x43\x75\x73\x74\x6F\x6D\x20\x52\x65\x70\x6F\x72\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x63\x75\x73\x74\x6F\x6D"];_0x50e4[0];var db=require(_0x50e4[2])[_0x50e4[1]];var logger=require(_0x50e4[4])(_0x50e4[3]);var tree=require(_0x50e4[5]);exports[_0x50e4[6]]= function(){return db[_0x50e4[16]][_0x50e4[17]]({where:{id:1}})[_0x50e4[12]](function(){return db[_0x50e4[16]][_0x50e4[15]]([{id:1,tree:JSON[_0x50e4[14]](tree[_0x50e4[13]])}],{ignoreDuplicates:true,individualHooks:true})})[_0x50e4[12]](function(){logger[_0x50e4[11]](_0x50e4[10])})[_0x50e4[9]](function(_0xddecx4){logger[_0x50e4[8]](_0x50e4[7])})};exports[_0x50e4[18]]= function(){return db[_0x50e4[16]][_0x50e4[15]]([{id:2,tree:JSON[_0x50e4[14]](tree[_0x50e4[21]])}],{ignoreDuplicates:true,individualHooks:true})[_0x50e4[12]](function(){logger[_0x50e4[11]](_0x50e4[20])})[_0x50e4[9]](function(_0xddecx4){logger[_0x50e4[8]](_0x50e4[19])})}
\ No newline at end of file
+var _0xb3b2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x72\x65\x65","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x54\x72\x65\x65\x20\x44\x65\x66\x61\x75\x6C\x74\x20\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x54\x72\x65\x65\x20\x44\x65\x66\x61\x75\x6C\x74\x20\x52\x65\x70\x6F\x72\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6D\x6F\x74\x69\x6F\x6E","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x64\x65\x73\x74\x72\x6F\x79","\x63\x72\x65\x61\x74\x65\x43\x75\x73\x74\x6F\x6D","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x54\x72\x65\x65\x20\x43\x75\x73\x74\x6F\x6D\x20\x52\x65\x70\x6F\x72\x74","\x41\x6E\x61\x6C\x79\x74\x69\x63\x20\x54\x72\x65\x65\x20\x43\x75\x73\x74\x6F\x6D\x20\x52\x65\x70\x6F\x72\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x63\x75\x73\x74\x6F\x6D"];_0xb3b2[0];var db=require(_0xb3b2[2])[_0xb3b2[1]];var logger=require(_0xb3b2[4])(_0xb3b2[3]);var tree=require(_0xb3b2[5]);exports[_0xb3b2[6]]= function(){return db[_0xb3b2[16]][_0xb3b2[17]]({where:{id:1}})[_0xb3b2[12]](function(){return db[_0xb3b2[16]][_0xb3b2[15]]([{id:1,tree:JSON[_0xb3b2[14]](tree[_0xb3b2[13]])}],{ignoreDuplicates:true,individualHooks:true})})[_0xb3b2[12]](function(){logger[_0xb3b2[11]](_0xb3b2[10])})[_0xb3b2[9]](function(_0xa7d4x4){logger[_0xb3b2[8]](_0xb3b2[7])})};exports[_0xb3b2[18]]= function(){return db[_0xb3b2[16]][_0xb3b2[15]]([{id:2,tree:JSON[_0xb3b2[14]](tree[_0xb3b2[21]])}],{ignoreDuplicates:true,individualHooks:true})[_0xb3b2[12]](function(){logger[_0xb3b2[11]](_0xb3b2[20])})[_0xb3b2[9]](function(_0xa7d4x4){logger[_0xb3b2[8]](_0xb3b2[19])})}
\ No newline at end of file
index 8d0b464..cf7570f 100644 (file)
@@ -1 +1 @@
-var _0xa96c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x4C\x69\x73\x74\x65\x6E\x26\x54\x61\x6C\x6B\x4F\x6E\x65","\x73\x70\x79\x31","\x62","\x77","\x54\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x63\x61\x6E\x20\x6C\x69\x73\x74\x65\x6E\x20\x61\x6E\x64\x20\x74\x61\x6C\x6B\x20\x74\x6F\x20\x74\x68\x65\x20\x61\x67\x65\x6E\x74\x2E\x20\x54\x68\x65\x20\x63\x75\x73\x74\x6F\x6D\x65\x72\x20\x77\x69\x6C\x6C\x20\x6E\x6F\x74\x20\x6C\x69\x73\x74\x65\x6E\x20\x74\x6F\x20\x74\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x76\x6F\x69\x63\x65\x2E","\x4F\x6E\x6C\x79\x4C\x69\x73\x74\x65\x6E","\x73\x70\x79\x32","\x6F","\x54\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x63\x61\x6E\x20\x6F\x6E\x6C\x79\x20\x6C\x69\x73\x74\x65\x6E\x20\x74\x68\x65\x20\x61\x67\x65\x6E\x74\x20\x63\x68\x61\x6E\x6E\x65\x6C\x20\x28\x6E\x65\x69\x74\x68\x65\x72\x20\x74\x68\x65\x20\x61\x67\x65\x6E\x74\x20\x6E\x6F\x72\x20\x74\x68\x65\x20\x63\x75\x73\x74\x6F\x6D\x65\x72\x20\x77\x69\x6C\x6C\x20\x6C\x69\x73\x74\x65\x6E\x20\x74\x6F\x20\x74\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x76\x6F\x69\x63\x65\x2E","\x4C\x69\x73\x74\x65\x6E\x26\x54\x61\x6C\x6B\x42\x6F\x74\x68","\x73\x70\x79\x33","\x57","\x54\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x63\x61\x6E\x20\x6C\x69\x73\x74\x65\x6E\x20\x61\x6E\x64\x20\x74\x61\x6C\x6B\x20\x62\x6F\x74\x68\x20\x74\x6F\x20\x74\x68\x65\x20\x61\x67\x65\x6E\x74\x20\x61\x6E\x64\x20\x74\x6F\x20\x74\x68\x65\x20\x63\x75\x73\x74\x6F\x6D\x65\x72\x2C\x20\x6C\x69\x6B\x65\x20\x61\x20\x70\x75\x72\x65\x20\x33\x20\x77\x61\x79\x20\x63\x6F\x6E\x66\x65\x72\x65\x6E\x63\x65\x20\x72\x6F\x6F\x6D\x2E","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x43\x68\x61\x6E\x53\x70\x79","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x43\x68\x61\x6E\x53\x70\x61\x79\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79"];_0xa96c[0];var db=require(_0xa96c[2])[_0xa96c[1]];var logger=require(_0xa96c[4])(_0xa96c[3]);var chanSpy=[{id:1,name:_0xa96c[5],prefix:_0xa96c[6],options:[_0xa96c[7],_0xa96c[8]],description:_0xa96c[9]},{id:2,name:_0xa96c[10],prefix:_0xa96c[11],options:[_0xa96c[7],_0xa96c[12]],description:_0xa96c[13]},{id:3,name:_0xa96c[14],prefix:_0xa96c[15],options:[_0xa96c[7],_0xa96c[16]],description:_0xa96c[17]}];exports[_0xa96c[18]]= function(){return db[_0xa96c[26]][_0xa96c[25]](chanSpy,{ignoreDuplicates:true,individualHooks:true})[_0xa96c[24]](function(){logger[_0xa96c[23]](_0xa96c[22])})[_0xa96c[21]](function(_0x6855x4){logger[_0xa96c[20]](_0xa96c[19])})}
\ No newline at end of file
+var _0xab61=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x4C\x69\x73\x74\x65\x6E\x26\x54\x61\x6C\x6B\x4F\x6E\x65","\x73\x70\x79\x31","\x62","\x77","\x54\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x63\x61\x6E\x20\x6C\x69\x73\x74\x65\x6E\x20\x61\x6E\x64\x20\x74\x61\x6C\x6B\x20\x74\x6F\x20\x74\x68\x65\x20\x61\x67\x65\x6E\x74\x2E\x20\x54\x68\x65\x20\x63\x75\x73\x74\x6F\x6D\x65\x72\x20\x77\x69\x6C\x6C\x20\x6E\x6F\x74\x20\x6C\x69\x73\x74\x65\x6E\x20\x74\x6F\x20\x74\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x76\x6F\x69\x63\x65\x2E","\x4F\x6E\x6C\x79\x4C\x69\x73\x74\x65\x6E","\x73\x70\x79\x32","\x6F","\x54\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x63\x61\x6E\x20\x6F\x6E\x6C\x79\x20\x6C\x69\x73\x74\x65\x6E\x20\x74\x68\x65\x20\x61\x67\x65\x6E\x74\x20\x63\x68\x61\x6E\x6E\x65\x6C\x20\x28\x6E\x65\x69\x74\x68\x65\x72\x20\x74\x68\x65\x20\x61\x67\x65\x6E\x74\x20\x6E\x6F\x72\x20\x74\x68\x65\x20\x63\x75\x73\x74\x6F\x6D\x65\x72\x20\x77\x69\x6C\x6C\x20\x6C\x69\x73\x74\x65\x6E\x20\x74\x6F\x20\x74\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x76\x6F\x69\x63\x65\x2E","\x4C\x69\x73\x74\x65\x6E\x26\x54\x61\x6C\x6B\x42\x6F\x74\x68","\x73\x70\x79\x33","\x57","\x54\x68\x65\x20\x73\x75\x70\x65\x72\x76\x69\x73\x6F\x72\x20\x63\x61\x6E\x20\x6C\x69\x73\x74\x65\x6E\x20\x61\x6E\x64\x20\x74\x61\x6C\x6B\x20\x62\x6F\x74\x68\x20\x74\x6F\x20\x74\x68\x65\x20\x61\x67\x65\x6E\x74\x20\x61\x6E\x64\x20\x74\x6F\x20\x74\x68\x65\x20\x63\x75\x73\x74\x6F\x6D\x65\x72\x2C\x20\x6C\x69\x6B\x65\x20\x61\x20\x70\x75\x72\x65\x20\x33\x20\x77\x61\x79\x20\x63\x6F\x6E\x66\x65\x72\x65\x6E\x63\x65\x20\x72\x6F\x6F\x6D\x2E","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x43\x68\x61\x6E\x53\x70\x79","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x43\x68\x61\x6E\x53\x70\x61\x79\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79"];_0xab61[0];var db=require(_0xab61[2])[_0xab61[1]];var logger=require(_0xab61[4])(_0xab61[3]);var chanSpy=[{id:1,name:_0xab61[5],prefix:_0xab61[6],options:[_0xab61[7],_0xab61[8]],description:_0xab61[9]},{id:2,name:_0xab61[10],prefix:_0xab61[11],options:[_0xab61[7],_0xab61[12]],description:_0xab61[13]},{id:3,name:_0xab61[14],prefix:_0xab61[15],options:[_0xab61[7],_0xab61[16]],description:_0xab61[17]}];exports[_0xab61[18]]= function(){return db[_0xab61[26]][_0xab61[25]](chanSpy,{ignoreDuplicates:true,individualHooks:true})[_0xab61[24]](function(){logger[_0xab61[23]](_0xab61[22])})[_0xab61[21]](function(_0xa28ax4){logger[_0xab61[20]](_0xab61[19])})}
\ No newline at end of file
index cb987f6..3e2ff68 100644 (file)
@@ -1 +1 @@
-var _0x51ba=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x58\x65\x6E\x69\x61\x6C\x61\x62","\x73\x72\x6C","\x30\x39\x36\x36\x38\x39\x31\x30\x30\x31\x32","\x2B\x33\x39\x30\x31\x31\x31\x39\x38\x38\x36\x35\x30\x30","\x2B\x33\x39\x30\x31\x31\x30\x39\x36\x30\x30\x37\x30","\x77\x77\x77\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D","\x69\x6E\x66\x6F\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x43\x6F\x72\x73\x6F\x20\x56\x69\x74\x74\x6F\x72\x69\x6F\x20\x45\x6D\x61\x6E\x75\x65\x6C\x65\x20\x49\x49\x2C\x20\x31\x31\x31","\x31\x30\x31\x32\x38","\x54\x75\x72\x69\x6E","\x49\x74\x61\x6C\x79","\x63\x6F\x6D\x70\x61\x6E\x79\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x43\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x43\x6F\x6D\x70\x61\x6E\x69\x65\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79"];_0x51ba[0];var db=require(_0x51ba[2])[_0x51ba[1]];var logger=require(_0x51ba[4])(_0x51ba[3]);var companies=[{id:1,name:_0x51ba[5],type:_0x51ba[6],vat:_0x51ba[7],phone:_0x51ba[8],fax:_0x51ba[9],website:_0x51ba[10],email:_0x51ba[11],emailDomain:_0x51ba[12],street:_0x51ba[13],postalCode:_0x51ba[14],city:_0x51ba[15],country:_0x51ba[16],description:_0x51ba[17]}];exports[_0x51ba[18]]= function(){return db[_0x51ba[26]][_0x51ba[25]](companies,{ignoreDuplicates:true,individualHooks:true})[_0x51ba[24]](function(){logger[_0x51ba[23]](_0x51ba[22])})[_0x51ba[21]](function(_0xe94ex4){logger[_0x51ba[20]](_0x51ba[19])})}
\ No newline at end of file
+var _0xcf18=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x58\x65\x6E\x69\x61\x6C\x61\x62","\x73\x72\x6C","\x30\x39\x36\x36\x38\x39\x31\x30\x30\x31\x32","\x2B\x33\x39\x30\x31\x31\x31\x39\x38\x38\x36\x35\x30\x30","\x2B\x33\x39\x30\x31\x31\x30\x39\x36\x30\x30\x37\x30","\x77\x77\x77\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D","\x69\x6E\x66\x6F\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x43\x6F\x72\x73\x6F\x20\x56\x69\x74\x74\x6F\x72\x69\x6F\x20\x45\x6D\x61\x6E\x75\x65\x6C\x65\x20\x49\x49\x2C\x20\x31\x31\x31","\x31\x30\x31\x32\x38","\x54\x75\x72\x69\x6E","\x49\x74\x61\x6C\x79","\x63\x6F\x6D\x70\x61\x6E\x79\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x43\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x43\x6F\x6D\x70\x61\x6E\x69\x65\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79"];_0xcf18[0];var db=require(_0xcf18[2])[_0xcf18[1]];var logger=require(_0xcf18[4])(_0xcf18[3]);var companies=[{id:1,name:_0xcf18[5],type:_0xcf18[6],vat:_0xcf18[7],phone:_0xcf18[8],fax:_0xcf18[9],website:_0xcf18[10],email:_0xcf18[11],emailDomain:_0xcf18[12],street:_0xcf18[13],postalCode:_0xcf18[14],city:_0xcf18[15],country:_0xcf18[16],description:_0xcf18[17]}];exports[_0xcf18[18]]= function(){return db[_0xcf18[26]][_0xcf18[25]](companies,{ignoreDuplicates:true,individualHooks:true})[_0xcf18[24]](function(){logger[_0xcf18[23]](_0xcf18[22])})[_0xcf18[21]](function(_0x9be2x4){logger[_0xcf18[20]](_0xcf18[19])})}
\ No newline at end of file
index 3d017e3..88e9c7c 100644 (file)
@@ -1 +1 @@
-var _0x2e11=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x61\x67\x73","\x67\x65\x74\x4E\x61\x6D\x65\x73","\x6C\x65\x6E\x67\x74\x68","\x72\x61\x6E\x64\x6F\x6D","\x66\x6C\x6F\x6F\x72","\x4D\x61\x72\x69\x6F","\x52\x6F\x73\x73\x69","\x31\x32\x33","\x6D\x61\x72\x69\x6F\x2E\x72\x6F\x73\x73\x69\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x31\x39\x38\x38\x2D\x31\x30\x2D\x30\x35","\x63\x6F\x6E\x74\x61\x63\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x47\x69\x75\x73\x65\x70\x70\x65","\x56\x65\x72\x64\x69","\x34\x35\x36","\x67\x69\x75\x73\x65\x70\x70\x65\x2E\x76\x65\x72\x64\x69\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x31\x39\x38\x38\x2D\x31\x32\x2D\x31\x32","\x41\x6E\x64\x72\x65\x61","\x42\x69\x61\x6E\x63\x6F","\x37\x38\x39","\x61\x6E\x64\x72\x65\x61\x2E\x62\x69\x61\x6E\x63\x6F\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x31\x39\x38\x39\x2D\x30\x35\x2D\x32\x33","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x43\x6F\x6E\x74\x61\x63\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x43\x6F\x6E\x74\x61\x63\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74"];_0x2e11[0];var db=require(_0x2e11[2])[_0x2e11[1]];var logger=require(_0x2e11[4])(_0x2e11[3]);var tags=require(_0x2e11[5]);var tags=tags[_0x2e11[6]]();var getRandomTag=function(){var _0xa9d1x5=tags[_0x2e11[7]]- 1;return [tags[Math[_0x2e11[9]](Math[_0x2e11[8]]()* _0xa9d1x5)+ 1]]};var contacts=[{id:1,firstName:_0x2e11[10],lastName:_0x2e11[11],phone:_0x2e11[12],email:_0x2e11[13],dateOfBirth:_0x2e11[14],ListId:1,CompanyId:1,tags:getRandomTag(),description:_0x2e11[15]},{id:2,firstName:_0x2e11[16],lastName:_0x2e11[17],phone:_0x2e11[18],email:_0x2e11[19],dateOfBirth:_0x2e11[20],ListId:1,CompanyId:1,tags:getRandomTag(),description:_0x2e11[15]},{id:3,firstName:_0x2e11[21],lastName:_0x2e11[22],phone:_0x2e11[23],email:_0x2e11[24],dateOfBirth:_0x2e11[25],ListId:2,CompanyId:1,tags:getRandomTag(),description:_0x2e11[15]}];exports[_0x2e11[26]]= function(){return db[_0x2e11[34]][_0x2e11[33]](contacts,{ignoreDuplicates:true,individualHooks:true})[_0x2e11[32]](function(){logger[_0x2e11[31]](_0x2e11[30])})[_0x2e11[29]](function(_0xa9d1x7){logger[_0x2e11[28]](_0x2e11[27])})}
\ No newline at end of file
+var _0x537f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x74\x61\x67\x73","\x67\x65\x74\x4E\x61\x6D\x65\x73","\x6C\x65\x6E\x67\x74\x68","\x72\x61\x6E\x64\x6F\x6D","\x66\x6C\x6F\x6F\x72","\x4D\x61\x72\x69\x6F","\x52\x6F\x73\x73\x69","\x31\x32\x33","\x6D\x61\x72\x69\x6F\x2E\x72\x6F\x73\x73\x69\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x31\x39\x38\x38\x2D\x31\x30\x2D\x30\x35","\x63\x6F\x6E\x74\x61\x63\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x47\x69\x75\x73\x65\x70\x70\x65","\x56\x65\x72\x64\x69","\x34\x35\x36","\x67\x69\x75\x73\x65\x70\x70\x65\x2E\x76\x65\x72\x64\x69\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x31\x39\x38\x38\x2D\x31\x32\x2D\x31\x32","\x41\x6E\x64\x72\x65\x61","\x42\x69\x61\x6E\x63\x6F","\x37\x38\x39","\x61\x6E\x64\x72\x65\x61\x2E\x62\x69\x61\x6E\x63\x6F\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x31\x39\x38\x39\x2D\x30\x35\x2D\x32\x33","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x43\x6F\x6E\x74\x61\x63\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x43\x6F\x6E\x74\x61\x63\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74"];_0x537f[0];var db=require(_0x537f[2])[_0x537f[1]];var logger=require(_0x537f[4])(_0x537f[3]);var tags=require(_0x537f[5]);var tags=tags[_0x537f[6]]();var getRandomTag=function(){var _0x7f9bx5=tags[_0x537f[7]]- 1;return [tags[Math[_0x537f[9]](Math[_0x537f[8]]()* _0x7f9bx5)+ 1]]};var contacts=[{id:1,firstName:_0x537f[10],lastName:_0x537f[11],phone:_0x537f[12],email:_0x537f[13],dateOfBirth:_0x537f[14],ListId:1,CompanyId:1,tags:getRandomTag(),description:_0x537f[15]},{id:2,firstName:_0x537f[16],lastName:_0x537f[17],phone:_0x537f[18],email:_0x537f[19],dateOfBirth:_0x537f[20],ListId:1,CompanyId:1,tags:getRandomTag(),description:_0x537f[15]},{id:3,firstName:_0x537f[21],lastName:_0x537f[22],phone:_0x537f[23],email:_0x537f[24],dateOfBirth:_0x537f[25],ListId:2,CompanyId:1,tags:getRandomTag(),description:_0x537f[15]}];exports[_0x537f[26]]= function(){return db[_0x537f[34]][_0x537f[33]](contacts,{ignoreDuplicates:true,individualHooks:true})[_0x537f[32]](function(){logger[_0x537f[31]](_0x537f[30])})[_0x537f[29]](function(_0x7f9bx7){logger[_0x537f[28]](_0x537f[27])})}
\ No newline at end of file
index 837b96e..7e63344 100644 (file)
@@ -1 +1 @@
-var _0xb932=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x52\x65\x70\x6F\x72\x74\x73","\x53\x65\x74\x74\x69\x6E\x67\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x63\x72\x65\x61\x74\x65\x43\x75\x73\x74\x6F\x6D","\x63\x72\x65\x61\x74\x65","\x2E\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x2E\x2F\x75\x73\x65\x72\x73","\x2E\x2F\x74\x65\x61\x6D\x73","\x2E\x2F\x74\x72\x75\x6E\x6B\x73","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x2E\x2F\x63\x68\x61\x6E\x73\x70\x79","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x73","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x2E\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x2E\x2F\x70\x61\x75\x73\x65\x73","\x2E\x2F\x74\x61\x67\x73","\x2E\x2F\x6C\x69\x73\x74\x73","\x2E\x2F\x63\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x2E\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x2E\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x73","\x2E\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x2E\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x73\x70\x72\x65\x61\x64","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x53\x65\x74\x74\x69\x6E\x67","\x64\x65\x66\x61\x75\x6C\x74"];_0xb932[0];var BPromise=require(_0xb932[1]);var db=require(_0xb932[3])[_0xb932[2]];var logger=require(_0xb932[5])(_0xb932[4]);var defaultSeed=function(){return db[_0xb932[36]][_0xb932[35]]({where:{id:1},defaults:{firstSetup:true}})[_0xb932[34]](function(_0xa952x6,_0xa952x7){require(_0xb932[10])[_0xb932[9]]();require(_0xb932[11])[_0xb932[9]]();if(_0xa952x7){logger[_0xb932[13]](_0xb932[12]);require(_0xb932[10])[_0xb932[14]]();require(_0xb932[11])[_0xb932[14]]();require(_0xb932[16])[_0xb932[15]]();require(_0xb932[17])[_0xb932[15]]();require(_0xb932[18])[_0xb932[15]]();require(_0xb932[19])[_0xb932[15]]();require(_0xb932[20])[_0xb932[15]]();require(_0xb932[21])[_0xb932[15]]();require(_0xb932[22])[_0xb932[15]]();require(_0xb932[23])[_0xb932[15]]();require(_0xb932[24])[_0xb932[15]]();require(_0xb932[25])[_0xb932[15]]();require(_0xb932[26])[_0xb932[15]]();require(_0xb932[27])[_0xb932[15]]();require(_0xb932[28])[_0xb932[15]]();require(_0xb932[29])[_0xb932[15]]();require(_0xb932[30])[_0xb932[15]]();require(_0xb932[31])[_0xb932[15]]();require(_0xb932[32])[_0xb932[15]]();require(_0xb932[33])[_0xb932[15]]()}})[_0xb932[8]](function(_0xa952x5){logger[_0xb932[7]](JSON[_0xb932[6]](_0xa952x5))})};exports[_0xb932[37]]= defaultSeed
\ No newline at end of file
+var _0x5cdf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x52\x65\x70\x6F\x72\x74\x73","\x53\x65\x74\x74\x69\x6E\x67\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x63\x72\x65\x61\x74\x65\x43\x75\x73\x74\x6F\x6D","\x63\x72\x65\x61\x74\x65","\x2E\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x2E\x2F\x75\x73\x65\x72\x73","\x2E\x2F\x74\x65\x61\x6D\x73","\x2E\x2F\x74\x72\x75\x6E\x6B\x73","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x2E\x2F\x63\x68\x61\x6E\x73\x70\x79","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x73","\x2E\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x2E\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x2E\x2F\x70\x61\x75\x73\x65\x73","\x2E\x2F\x74\x61\x67\x73","\x2E\x2F\x6C\x69\x73\x74\x73","\x2E\x2F\x63\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x2E\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x2E\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x73","\x2E\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x2E\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x73\x70\x72\x65\x61\x64","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x53\x65\x74\x74\x69\x6E\x67","\x64\x65\x66\x61\x75\x6C\x74"];_0x5cdf[0];var BPromise=require(_0x5cdf[1]);var db=require(_0x5cdf[3])[_0x5cdf[2]];var logger=require(_0x5cdf[5])(_0x5cdf[4]);var defaultSeed=function(){return db[_0x5cdf[36]][_0x5cdf[35]]({where:{id:1},defaults:{firstSetup:true}})[_0x5cdf[34]](function(_0x8feex6,_0x8feex7){require(_0x5cdf[10])[_0x5cdf[9]]();require(_0x5cdf[11])[_0x5cdf[9]]();if(_0x8feex7){logger[_0x5cdf[13]](_0x5cdf[12]);require(_0x5cdf[10])[_0x5cdf[14]]();require(_0x5cdf[11])[_0x5cdf[14]]();require(_0x5cdf[16])[_0x5cdf[15]]();require(_0x5cdf[17])[_0x5cdf[15]]();require(_0x5cdf[18])[_0x5cdf[15]]();require(_0x5cdf[19])[_0x5cdf[15]]();require(_0x5cdf[20])[_0x5cdf[15]]();require(_0x5cdf[21])[_0x5cdf[15]]();require(_0x5cdf[22])[_0x5cdf[15]]();require(_0x5cdf[23])[_0x5cdf[15]]();require(_0x5cdf[24])[_0x5cdf[15]]();require(_0x5cdf[25])[_0x5cdf[15]]();require(_0x5cdf[26])[_0x5cdf[15]]();require(_0x5cdf[27])[_0x5cdf[15]]();require(_0x5cdf[28])[_0x5cdf[15]]();require(_0x5cdf[29])[_0x5cdf[15]]();require(_0x5cdf[30])[_0x5cdf[15]]();require(_0x5cdf[31])[_0x5cdf[15]]();require(_0x5cdf[32])[_0x5cdf[15]]();require(_0x5cdf[33])[_0x5cdf[15]]()}})[_0x5cdf[8]](function(_0x8feex5){logger[_0x5cdf[7]](JSON[_0x5cdf[6]](_0x8feex5))})};exports[_0x5cdf[37]]= defaultSeed
\ No newline at end of file
index 27b1300..31dae50 100644 (file)
@@ -1 +1 @@
-var _0x57b9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x4D\x6F\x6F\x72\x6E\x69\x67","\x30\x39\x3A\x30\x30\x2D\x31\x33\x3A\x30\x30\x2C\x6D\x6F\x6E\x2D\x66\x72\x69\x2C\x2A\x2C\x2A","\x41\x66\x74\x65\x72\x6E\x6F\x6F\x6E","\x31\x34\x3A\x30\x30\x2D\x31\x38\x3A\x30\x30\x2C\x6D\x6F\x6E\x2D\x66\x72\x69\x2C\x2A\x2C\x2A","\x43\x68\x72\x69\x73\x74\x6D\x61\x73","\x2A\x2C\x2A\x2C\x32\x35\x2C\x64\x65\x63","\x4E\x65\x77\x59\x65\x61\x72","\x2A\x2C\x2A\x2C\x31\x2C\x6A\x61\x6E","\x56\x61\x6C\x65\x6E\x74\x69\x6E\x65\x73","\x2A\x2C\x2A\x2C\x31\x34\x2C\x66\x65\x62","\x48\x61\x6C\x6C\x6F\x77\x65\x65\x6E","\x2A\x2C\x2A\x2C\x33\x31\x2C\x6F\x63\x74","\x57\x6F\x72\x6B\x69\x6E\x67\x54\x69\x6D\x65","\x77\x6F\x72\x6B\x69\x6E\x67\x20\x74\x69\x6D\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x48\x6F\x6C\x69\x64\x61\x79\x73","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x49\x6E\x74\x65\x76\x61\x6C\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x6E\x61\x6D\x65","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x69\x64","\x64\x65\x66\x61\x75\x6C\x74\x73","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65"];_0x57b9[0];var _=require(_0x57b9[1]);var db=require(_0x57b9[3])[_0x57b9[2]];var logger=require(_0x57b9[5])(_0x57b9[4]);var subIntervals={"\x57\x6F\x72\x6B\x69\x6E\x67\x54\x69\x6D\x65":[{name:_0x57b9[6],interval:_0x57b9[7]},{name:_0x57b9[8],interval:_0x57b9[9]}],"\x48\x6F\x6C\x69\x64\x61\x79\x73":[{name:_0x57b9[10],interval:_0x57b9[11]},{name:_0x57b9[12],interval:_0x57b9[13]},{name:_0x57b9[14],interval:_0x57b9[15]},{name:_0x57b9[16],interval:_0x57b9[17]}]};var intervals=[{id:1,name:_0x57b9[18],description:_0x57b9[19]},{id:2,name:_0x57b9[20],description:_0x57b9[19]}];exports[_0x57b9[21]]= function(){return db[_0x57b9[33]][_0x57b9[34]](intervals,{ignoreDuplicates:true,individualHooks:true})[_0x57b9[27]](function(_0xdf72x7){for(var _0xdf72x8=0;_0xdf72x8< _0xdf72x7[_0x57b9[28]];_0xdf72x8+= 1){if(subIntervals[_0xdf72x7[_0xdf72x8][_0x57b9[29]]]){for(var _0xdf72x9=0;_0xdf72x9< subIntervals[_0xdf72x7[_0xdf72x8][_0x57b9[29]]][_0x57b9[28]];_0xdf72x9+= 1){subIntervals[_0xdf72x7[_0xdf72x8][_0x57b9[29]]][_0xdf72x9]= _[_0x57b9[32]](subIntervals[_0xdf72x7[_0xdf72x8][_0x57b9[29]]][_0xdf72x9],{description:_0xdf72x7[_0xdf72x8][_0x57b9[30]],IntervalId:_0xdf72x7[_0xdf72x8][_0x57b9[31]]});db[_0x57b9[33]][_0x57b9[21]](subIntervals[_0xdf72x7[_0xdf72x8][_0x57b9[29]]][_0xdf72x9])}}}})[_0x57b9[27]](function(){logger[_0x57b9[26]](_0x57b9[25])})[_0x57b9[24]](function(_0xdf72x6){logger[_0x57b9[23]](_0x57b9[22])})}
\ No newline at end of file
+var _0x8020=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x4D\x6F\x6F\x72\x6E\x69\x67","\x30\x39\x3A\x30\x30\x2D\x31\x33\x3A\x30\x30\x2C\x6D\x6F\x6E\x2D\x66\x72\x69\x2C\x2A\x2C\x2A","\x41\x66\x74\x65\x72\x6E\x6F\x6F\x6E","\x31\x34\x3A\x30\x30\x2D\x31\x38\x3A\x30\x30\x2C\x6D\x6F\x6E\x2D\x66\x72\x69\x2C\x2A\x2C\x2A","\x43\x68\x72\x69\x73\x74\x6D\x61\x73","\x2A\x2C\x2A\x2C\x32\x35\x2C\x64\x65\x63","\x4E\x65\x77\x59\x65\x61\x72","\x2A\x2C\x2A\x2C\x31\x2C\x6A\x61\x6E","\x56\x61\x6C\x65\x6E\x74\x69\x6E\x65\x73","\x2A\x2C\x2A\x2C\x31\x34\x2C\x66\x65\x62","\x48\x61\x6C\x6C\x6F\x77\x65\x65\x6E","\x2A\x2C\x2A\x2C\x33\x31\x2C\x6F\x63\x74","\x57\x6F\x72\x6B\x69\x6E\x67\x54\x69\x6D\x65","\x77\x6F\x72\x6B\x69\x6E\x67\x20\x74\x69\x6D\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x48\x6F\x6C\x69\x64\x61\x79\x73","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x49\x6E\x74\x65\x76\x61\x6C\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x6E\x61\x6D\x65","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x69\x64","\x64\x65\x66\x61\x75\x6C\x74\x73","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65"];_0x8020[0];var _=require(_0x8020[1]);var db=require(_0x8020[3])[_0x8020[2]];var logger=require(_0x8020[5])(_0x8020[4]);var subIntervals={"\x57\x6F\x72\x6B\x69\x6E\x67\x54\x69\x6D\x65":[{name:_0x8020[6],interval:_0x8020[7]},{name:_0x8020[8],interval:_0x8020[9]}],"\x48\x6F\x6C\x69\x64\x61\x79\x73":[{name:_0x8020[10],interval:_0x8020[11]},{name:_0x8020[12],interval:_0x8020[13]},{name:_0x8020[14],interval:_0x8020[15]},{name:_0x8020[16],interval:_0x8020[17]}]};var intervals=[{id:1,name:_0x8020[18],description:_0x8020[19]},{id:2,name:_0x8020[20],description:_0x8020[19]}];exports[_0x8020[21]]= function(){return db[_0x8020[33]][_0x8020[34]](intervals,{ignoreDuplicates:true,individualHooks:true})[_0x8020[27]](function(_0xadbax7){for(var _0xadbax8=0;_0xadbax8< _0xadbax7[_0x8020[28]];_0xadbax8+= 1){if(subIntervals[_0xadbax7[_0xadbax8][_0x8020[29]]]){for(var _0xadbax9=0;_0xadbax9< subIntervals[_0xadbax7[_0xadbax8][_0x8020[29]]][_0x8020[28]];_0xadbax9+= 1){subIntervals[_0xadbax7[_0xadbax8][_0x8020[29]]][_0xadbax9]= _[_0x8020[32]](subIntervals[_0xadbax7[_0xadbax8][_0x8020[29]]][_0xadbax9],{description:_0xadbax7[_0xadbax8][_0x8020[30]],IntervalId:_0xadbax7[_0xadbax8][_0x8020[31]]});db[_0x8020[33]][_0x8020[21]](subIntervals[_0xadbax7[_0xadbax8][_0x8020[29]]][_0xadbax9])}}}})[_0x8020[27]](function(){logger[_0x8020[26]](_0x8020[25])})[_0x8020[24]](function(_0xadbax6){logger[_0x8020[23]](_0x8020[22])})}
\ No newline at end of file
index 4fec1b4..c120159 100644 (file)
@@ -1 +1 @@
-var _0xc915=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x50\x75\x62\x6C\x69\x63\x20\x4C\x69\x73\x74","\x70\x75\x62\x6C\x69\x63\x20\x6C\x69\x73\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x42\x6C\x61\x63\x6B\x20\x4C\x69\x73\x74","\x62\x6C\x61\x63\x6B\x20\x6C\x69\x73\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x43\x61\x6C\x6C\x62\x61\x63\x6B\x20\x4C\x69\x73\x74","\x43\x61\x6C\x6C\x62\x61\x63\x6B\x20\x6C\x69\x73\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x4C\x69\x73\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x4C\x69\x73\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x43\x6D\x4C\x69\x73\x74"];_0xc915[0];var db=require(_0xc915[2])[_0xc915[1]];var logger=require(_0xc915[4])(_0xc915[3]);var lists=[{id:1,name:_0xc915[5],description:_0xc915[6]},{id:2,name:_0xc915[7],description:_0xc915[8]},{id:3,name:_0xc915[9],description:_0xc915[10]}];exports[_0xc915[11]]= function(){return db[_0xc915[19]][_0xc915[18]](lists,{ignoreDuplicates:true,individualHooks:true})[_0xc915[17]](function(){logger[_0xc915[16]](_0xc915[15])})[_0xc915[14]](function(_0x8bddx4){logger[_0xc915[13]](_0xc915[12])})}
\ No newline at end of file
+var _0x3df6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x50\x75\x62\x6C\x69\x63\x20\x4C\x69\x73\x74","\x70\x75\x62\x6C\x69\x63\x20\x6C\x69\x73\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x42\x6C\x61\x63\x6B\x20\x4C\x69\x73\x74","\x62\x6C\x61\x63\x6B\x20\x6C\x69\x73\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x43\x61\x6C\x6C\x62\x61\x63\x6B\x20\x4C\x69\x73\x74","\x43\x61\x6C\x6C\x62\x61\x63\x6B\x20\x6C\x69\x73\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x4C\x69\x73\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x4C\x69\x73\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x43\x6D\x4C\x69\x73\x74"];_0x3df6[0];var db=require(_0x3df6[2])[_0x3df6[1]];var logger=require(_0x3df6[4])(_0x3df6[3]);var lists=[{id:1,name:_0x3df6[5],description:_0x3df6[6]},{id:2,name:_0x3df6[7],description:_0x3df6[8]},{id:3,name:_0x3df6[9],description:_0x3df6[10]}];exports[_0x3df6[11]]= function(){return db[_0x3df6[19]][_0x3df6[18]](lists,{ignoreDuplicates:true,individualHooks:true})[_0x3df6[17]](function(){logger[_0x3df6[16]](_0x3df6[15])})[_0x3df6[14]](function(_0xf7e0x4){logger[_0x3df6[13]](_0x3df6[12])})}
\ No newline at end of file
index ebb84e9..b701175 100644 (file)
@@ -1 +1 @@
-var _0x577f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x53\x65\x72\x76\x69\x63\x65\x20\x4D\x61\x69\x6C","\x73\x65\x72\x76\x69\x63\x65\x20\x6D\x6F\x74\x69\x6F\x6E\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x4D\x61\x69\x6C\x20\x41\x63\x63\x6F\x75\x6E\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x4D\x61\x69\x6C\x20\x41\x63\x63\x6F\x75\x6E\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x69\x64","\x73\x65\x72\x76\x69\x63\x65\x20\x6D\x6F\x74\x69\x6F\x6E\x20\x73\x6D\x74\x70\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74"];_0x577f[0];var db=require(_0x577f[2])[_0x577f[1]];var logger=require(_0x577f[4])(_0x577f[3]);var mailAccounts=[{id:1,name:_0x577f[5],service:true,description:_0x577f[6]}];exports[_0x577f[7]]= function(){return db[_0x577f[22]][_0x577f[21]](mailAccounts,{ignoreDuplicates:true,individualHooks:true})[_0x577f[13]](function(_0xdf21x5){for(var _0xdf21x6=0;_0xdf21x6< _0xdf21x5[_0x577f[14]];_0xdf21x6+= 1){db[_0x577f[20]][_0x577f[7]]({host:_0x577f[15],user:_0x577f[16],pass:_0x577f[17],port:465,secure:true,MailAccountId:_0xdf21x5[_0xdf21x6][_0x577f[18]],description:_0x577f[19]})}})[_0x577f[13]](function(){logger[_0x577f[12]](_0x577f[11])})[_0x577f[10]](function(_0xdf21x4){logger[_0x577f[9]](_0x577f[8])})}
\ No newline at end of file
+var _0xfd1d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x53\x65\x72\x76\x69\x63\x65\x20\x4D\x61\x69\x6C","\x73\x65\x72\x76\x69\x63\x65\x20\x6D\x6F\x74\x69\x6F\x6E\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x4D\x61\x69\x6C\x20\x41\x63\x63\x6F\x75\x6E\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x4D\x61\x69\x6C\x20\x41\x63\x63\x6F\x75\x6E\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x69\x64","\x73\x65\x72\x76\x69\x63\x65\x20\x6D\x6F\x74\x69\x6F\x6E\x20\x73\x6D\x74\x70\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74"];_0xfd1d[0];var db=require(_0xfd1d[2])[_0xfd1d[1]];var logger=require(_0xfd1d[4])(_0xfd1d[3]);var mailAccounts=[{id:1,name:_0xfd1d[5],service:true,description:_0xfd1d[6]}];exports[_0xfd1d[7]]= function(){return db[_0xfd1d[22]][_0xfd1d[21]](mailAccounts,{ignoreDuplicates:true,individualHooks:true})[_0xfd1d[13]](function(_0x301bx5){for(var _0x301bx6=0;_0x301bx6< _0x301bx5[_0xfd1d[14]];_0x301bx6+= 1){db[_0xfd1d[20]][_0xfd1d[7]]({host:_0xfd1d[15],user:_0xfd1d[16],pass:_0xfd1d[17],port:465,secure:true,MailAccountId:_0x301bx5[_0x301bx6][_0xfd1d[18]],description:_0xfd1d[19]})}})[_0xfd1d[13]](function(){logger[_0xfd1d[12]](_0xfd1d[11])})[_0xfd1d[10]](function(_0x301bx4){logger[_0xfd1d[9]](_0xfd1d[8])})}
\ No newline at end of file
index d8759a4..e2c2800 100644 (file)
@@ -1 +1 @@
-var _0xaf62=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x42\x41\x43\x4B\x4F\x46\x46\x49\x43\x45","\x62\x61\x63\x6B\x6F\x66\x66\x69\x63\x65\x20\x70\x61\x75\x73\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x41\x46\x54\x45\x52\x43\x41\x4C\x4C","\x61\x66\x74\x65\x72\x63\x61\x6C\x6C\x20\x70\x61\x75\x73\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x50\x61\x75\x73\x65\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x50\x61\x75\x73\x65\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x50\x61\x75\x73\x65"];_0xaf62[0];var db=require(_0xaf62[2])[_0xaf62[1]];var logger=require(_0xaf62[4])(_0xaf62[3]);var pauses=[{id:1,name:_0xaf62[5],description:_0xaf62[6]},{id:2,name:_0xaf62[7],description:_0xaf62[8]}];exports[_0xaf62[9]]= function(){return db[_0xaf62[17]][_0xaf62[16]](pauses,{ignoreDuplicates:true,individualHooks:true})[_0xaf62[15]](function(){logger[_0xaf62[14]](_0xaf62[13])})[_0xaf62[12]](function(_0x65bfx4){logger[_0xaf62[11]](_0xaf62[10])})}
\ No newline at end of file
+var _0xba7a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x42\x41\x43\x4B\x4F\x46\x46\x49\x43\x45","\x62\x61\x63\x6B\x6F\x66\x66\x69\x63\x65\x20\x70\x61\x75\x73\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x41\x46\x54\x45\x52\x43\x41\x4C\x4C","\x61\x66\x74\x65\x72\x63\x61\x6C\x6C\x20\x70\x61\x75\x73\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x50\x61\x75\x73\x65\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x50\x61\x75\x73\x65\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x50\x61\x75\x73\x65"];_0xba7a[0];var db=require(_0xba7a[2])[_0xba7a[1]];var logger=require(_0xba7a[4])(_0xba7a[3]);var pauses=[{id:1,name:_0xba7a[5],description:_0xba7a[6]},{id:2,name:_0xba7a[7],description:_0xba7a[8]}];exports[_0xba7a[9]]= function(){return db[_0xba7a[17]][_0xba7a[16]](pauses,{ignoreDuplicates:true,individualHooks:true})[_0xba7a[15]](function(){logger[_0xba7a[14]](_0xba7a[13])})[_0xba7a[12]](function(_0x6067x4){logger[_0xba7a[11]](_0xba7a[10])})}
\ No newline at end of file
index b37b663..d8772b4 100644 (file)
@@ -1 +1 @@
-var _0xcf81=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x44\x65\x74\x61\x69\x6C\x73","\x44\x65\x74\x61\x69\x6C\x65\x64\x20\x71\x75\x65\x75\x65\x73\x20\x72\x65\x70\x6F\x72\x74","\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73","\x72\x65\x70\x6F\x72\x74\x5F\x71\x75\x65\x75\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x52\x65\x73\x75\x6C\x74","\x53\x69\x6D\x70\x6C\x65\x20\x71\x75\x65\x75\x65\x20\x63\x61\x6C\x6C\x73\x20\x6F\x76\x65\x72\x76\x69\x65\x77","\x44\x65\x74\x61\x69\x6C\x65\x64\x20\x72\x65\x70\x6F\x72\x74\x20\x61\x62\x6F\x75\x74\x20\x61\x6E\x73\x77\x65\x72\x65\x64\x20\x71\x75\x65\x75\x65\x20\x63\x61\x6C\x6C\x73","\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x61\x6E\x73\x77\x65\x72\x65\x64","\x72\x65\x70\x6F\x72\x74\x5F\x61\x67\x65\x6E\x74","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x31\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x41\x67\x65\x6E\x74","\x41\x67\x65\x6E\x74\x20\x63\x61\x6C\x6C\x73\x20\x74\x69\x6D\x65\x72\x20\x48\x61\x6E\x64\x6C\x65\x20\x74\x69\x6D\x65\x3D\x20\x74\x61\x6C\x6B\x20\x74\x69\x6D\x65\x20\x2B\x20\x41\x43\x57\x20\x74\x69\x6D\x65","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x51\x75\x65\x75\x65\x20\x74\x69\x6D\x65\x72\x20\x48\x61\x6E\x64\x6C\x65\x20\x54\x69\x6D\x65\x3D\x20\x54\x61\x6C\x6B\x20\x54\x69\x6D\x65\x20\x2B\x20\x41\x56\x47\x20\x54\x49\x6D\x65","\x41\x6E\x73\x77\x65\x72\x20\x54\x69\x6D\x65\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x51\x75\x65\x75\x65\x73\x20\x61\x6E\x73\x77\x65\x72\x20\x74\x69\x6D\x65\x20\x70\x65\x72\x66\x6F\x72\x6D\x61\x6E\x63\x65","\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x20\x43\x61\x75\x73\x65","\x53\x75\x6D\x6D\x61\x72\x79\x20\x6F\x66\x20\x74\x68\x65\x20\x63\x61\x6C\x6C\x73\x20\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x20\x63\x61\x75\x73\x65\x73","\x41\x6E\x73\x77\x65\x72\x20\x54\x69\x6D\x65\x20\x62\x79\x20\x48\x6F\x75\x72","\x41\x6E\x73\x77\x65\x72\x20\x74\x69\x6D\x65\x20\x20\x62\x79\x20\x68\x6F\x75\x72","\x44\x65\x74\x61\x69\x6C\x65\x64\x20\x72\x65\x70\x6F\x72\x74\x20\x61\x62\x6F\x75\x74\x20\x74\x68\x65\x20\x75\x6E\x61\x6E\x73\x77\x65\x72\x65\x64\x20\x63\x61\x6C\x6C\x73","\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x75\x6E\x61\x6E\x73\x77\x65\x72\x65\x64","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x30\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x55\x6E\x61\x6E\x73\x77\x65\x72\x65\x64\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x55\x6E\x61\x6E\x73\x77\x65\x72\x65\x64\x20\x63\x61\x6C\x6C\x73\x20\x73\x75\x6D\x6D\x61\x72\x79\x20\x62\x79\x20\x71\x75\x65\x75\x65","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x63\x61\x6C\x6C\x73","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x63\x61\x6C\x6C\x73\x20\x73\x75\x6D\x6D\x61\x72\x79","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x31\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x41\x62\x61\x6E\x64\x6F\x6E\x20\x54\x69\x6D\x65\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x41\x62\x61\x6E\x64\x6F\x6E\x20\x74\x69\x6D\x65\x20\x70\x65\x72\x66\x6F\x72\x6D\x61\x6E\x63\x65\x20\x62\x79\x20\x71\x75\x65\x75\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x31\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x44\x61\x74\x65","\x51\x75\x65\x75\x65\x20\x63\x61\x6C\x6C\x73\x20\x73\x75\x6D\x6D\x61\x72\x79\x20\x62\x79\x20\x64\x61\x74\x65","\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x48\x6F\x75\x72","\x43\x61\x6C\x6C\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E\x20\x62\x79\x20\x68\x6F\x75\x72","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x44\x61\x79","\x43\x61\x6C\x6C\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E\x20\x62\x79\x20\x64\x61\x79\x20\x6F\x66\x20\x74\x68\x65\x20\x6D\x6F\x6E\x74\x68","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x57\x65\x65\x6B\x64\x61\x79","\x43\x61\x6C\x6C\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E\x20\x62\x79\x20\x64\x61\x79\x20\x6F\x66\x20\x74\x68\x65\x20\x77\x65\x65\x6B","\x53\x75\x6D\x6D\x61\x72\x79","\x43\x61\x6C\x6C\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E\x20\x62\x79\x20\x71\x75\x65\x75\x65","\x43\x61\x6C\x6C\x73\x20\x64\x65\x74\x61\x69\x6C\x20\x28\x63\x64\x72\x29","\x5F\x76\x6F\x69\x63\x65\x5F\x63\x61\x6C\x6C\x73","\x72\x65\x70\x6F\x72\x74\x5F\x63\x61\x6C\x6C","\x4F\x75\x74\x62\x6F\x75\x6E\x64","\x4D\x61\x6E\x75\x61\x6C\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x64\x65\x74\x61\x69\x6C\x65\x64\x20\x72\x65\x70\x6F\x72\x74","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x6F\x75\x74\x62\x6F\x75\x6E\x64\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x54\x79\x70\x65","\x53\x75\x6D\x6D\x61\x72\x79\x20\x72\x65\x70\x6F\x72\x74\x20\x6F\x66\x20\x74\x68\x65\x20\x63\x61\x6C\x6C\x73\x20\x74\x79\x70\x65","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x43\x61\x6C\x6C\x73\x20\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x67\x72\x6F\x75\x70\x65\x64\x20\x62\x79\x20\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x41\x67\x65\x6E\x74","\x53\x75\x6D\x6D\x61\x72\x79\x20\x6F\x66\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x67\x72\x6F\x75\x70\x65\x64\x20\x62\x79\x20\x61\x67\x65\x6E\x74","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x44\x61\x74\x65","\x53\x75\x6D\x6D\x61\x72\x79\x20\x6F\x66\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x67\x72\x6F\x75\x70\x65\x64\x20\x62\x79\x20\x64\x61\x74\x65","\x4C\x6F\x67\x69\x6E\x20\x54\x69\x6D\x65","\x41\x67\x65\x6E\x74\x27\x73\x20\x6C\x6F\x67\x69\x6E\x20\x74\x69\x6D\x65","\x5F\x61\x67\x65\x6E\x74\x73","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x65\x6D\x62\x65\x72","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x4C\x4F\x47\x49\x4E\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x68\x61\x6E\x6E\x65\x6C\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x76\x6F\x69\x63\x65\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x41\x63\x74\x69\x76\x69\x74\x69\x65\x73\x20\x53\x75\x6D\x6D\x61\x72\x79","\x41\x67\x65\x6E\x74\x27\x73\x20\x61\x63\x74\x69\x76\x69\x74\x69\x65\x73\x20\x72\x65\x70\x6F\x72\x74","\x5F\x76\x6F\x69\x63\x65\x5F\x61\x67\x65\x6E\x74\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x68\x61\x6E\x6E\x65\x6C\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x76\x6F\x69\x63\x65\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x50\x61\x75\x73\x65\x20\x44\x65\x74\x61\x69\x6C\x73","\x41\x67\x65\x6E\x74\x73\x20\x73\x74\x61\x74\x75\x73\x20\x64\x65\x74\x61\x69\x6C\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x68\x61\x6E\x6E\x65\x6C\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x76\x6F\x69\x63\x65\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x50\x41\x55\x53\x45\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x41\x67\x65\x6E\x74\x27\x73\x20\x73\x74\x61\x74\x75\x73\x20\x64\x65\x74\x61\x69\x6C","\x50\x61\x75\x73\x65\x20\x54\x69\x6D\x65","\x41\x67\x65\x6E\x74\x27\x73\x20\x70\x61\x75\x73\x65\x20\x74\x69\x6D\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x50\x41\x55\x53\x45\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x68\x61\x6E\x6E\x65\x6C\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x76\x6F\x69\x63\x65\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x79\x53\x71\x75\x61\x72\x65\x20\x53\x75\x6D\x6D\x61\x72\x79","\x5F\x76\x6F\x69\x63\x65\x5F\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65","\x72\x65\x70\x6F\x72\x74\x5F\x73\x71\x75\x61\x72\x65","\x42\x6C\x6F\x63\x6B\x73","\x43\x61\x6C\x6C\x79\x53\x71\x75\x61\x72\x65\x20\x42\x6C\x6F\x63\x6B\x73\x20\x44\x65\x74\x61\x69\x6C","\x72\x65\x70\x6F\x72\x74\x5F\x73\x71\x75\x61\x72\x65\x5F\x64\x65\x74\x61\x69\x6C\x73","\x52\x61\x74\x69\x6E\x67\x20\x62\x79\x20\x41\x67\x65\x6E\x74","\x52\x65\x63\x6F\x72\x64\x73\x20\x72\x61\x74\x69\x6E\x67\x20\x62\x79\x20\x61\x67\x65\x6E\x74","\x5F\x76\x6F\x69\x63\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x76\x6F\x69\x63\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3E\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x72\x61\x74\x69\x6E\x67\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x30\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x52\x61\x74\x69\x6E\x67\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x52\x65\x63\x6F\x72\x64\x73\x20\x72\x61\x74\x69\x6E\x67\x20\x62\x79\x20\x71\x75\x65\x75\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x71\x75\x65\x75\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x66\x61\x6C\x73\x65\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3E\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x72\x61\x74\x69\x6E\x67\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x30\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","","\x5F\x62\x75\x6C\x6C\x5F\x71\x75\x65\x75\x65\x5F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x71\x75\x65\x75\x65\x27\x22\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x53\x75\x6D\x6D\x61\x72\x79","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79","\x43\x61\x6D\x70\x61\x69\x67\x6E\x20\x43\x61\x6C\x6C\x73","\x4C\x69\x73\x74\x20\x50\x65\x6E\x65\x74\x72\x61\x74\x69\x6F\x6E\x20\x52\x61\x74\x65","\x41\x67\x65\x6E\x74\x20\x43\x61\x6C\x6C\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x71\x75\x65\x75\x65\x27\x22\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x73\x74\x61\x74\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x34\x22\x7D\x5D\x7D\x7D","\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x20\x52\x61\x74\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x71\x75\x65\x75\x65\x27\x22\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x22\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x73\x74\x61\x74\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x34\x22\x7D\x5D\x7D\x7D","\x41\x67\x65\x6E\x74\x20\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x20\x52\x61\x74\x65","\x5F\x62\x75\x6C\x6C\x5F\x69\x76\x72\x5F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x69\x76\x72\x27\x22\x7D\x5D\x7D\x7D"];_0xcf81[0];module[_0xcf81[1]]= function(_0x9cb5x1){return [{id:1,name:_0xcf81[2],description:_0xcf81[3],parent:_0x9cb5x1+ _0xcf81[4],table:_0xcf81[5],conditions:_0xcf81[6]},{id:2,name:_0xcf81[7],description:_0xcf81[8],parent:_0x9cb5x1+ _0xcf81[4],table:_0xcf81[5],conditions:_0xcf81[6]},{id:3,name:_0xcf81[2],description:_0xcf81[9],parent:_0x9cb5x1+ _0xcf81[10],table:_0xcf81[11],conditions:_0xcf81[12]},{id:4,name:_0xcf81[13],description:_0xcf81[14],parent:_0x9cb5x1+ _0xcf81[10],table:_0xcf81[11],conditions:_0xcf81[12]},{id:5,name:_0xcf81[15],description:_0xcf81[16],parent:_0x9cb5x1+ _0xcf81[10],table:_0xcf81[11],conditions:_0xcf81[12]},{id:6,name:_0xcf81[17],description:_0xcf81[18],parent:_0x9cb5x1+ _0xcf81[10],table:_0xcf81[11],conditions:_0xcf81[12]},{id:7,name:_0xcf81[19],description:_0xcf81[20],parent:_0x9cb5x1+ _0xcf81[10],table:_0xcf81[11],conditions:_0xcf81[12]},{id:8,name:_0xcf81[21],description:_0xcf81[22],parent:_0x9cb5x1+ _0xcf81[10],table:_0xcf81[11],conditions:_0xcf81[12]},{id:9,name:_0xcf81[2],description:_0xcf81[23],parent:_0x9cb5x1+ _0xcf81[24],table:_0xcf81[5],conditions:_0xcf81[25]},{id:10,name:_0xcf81[26],description:_0xcf81[27],parent:_0x9cb5x1+ _0xcf81[24],table:_0xcf81[5],conditions:_0xcf81[25]},{id:11,name:_0xcf81[28],description:_0xcf81[29],parent:_0x9cb5x1+ _0xcf81[24],table:_0xcf81[5],conditions:_0xcf81[30]},{id:12,name:_0xcf81[31],description:_0xcf81[32],parent:_0x9cb5x1+ _0xcf81[24],table:_0xcf81[5],conditions:_0xcf81[33]},{id:13,name:_0xcf81[34],description:_0xcf81[35],parent:_0x9cb5x1+ _0xcf81[36],table:_0xcf81[5],conditions:_0xcf81[6]},{id:14,name:_0xcf81[37],description:_0xcf81[38],parent:_0x9cb5x1+ _0xcf81[36],table:_0xcf81[5],conditions:_0xcf81[6]},{id:15,name:_0xcf81[39],description:_0xcf81[40],parent:_0x9cb5x1+ _0xcf81[36],table:_0xcf81[5],conditions:_0xcf81[6]},{id:16,name:_0xcf81[41],description:_0xcf81[42],parent:_0x9cb5x1+ _0xcf81[36],table:_0xcf81[5],conditions:_0xcf81[6]},{id:17,name:_0xcf81[43],description:_0xcf81[44],parent:_0x9cb5x1+ _0xcf81[4],table:_0xcf81[5],conditions:_0xcf81[6]},{id:18,name:_0xcf81[2],description:_0xcf81[45],parent:_0x9cb5x1+ _0xcf81[46],table:_0xcf81[47],conditions:_0xcf81[6]},{id:19,name:_0xcf81[48],description:_0xcf81[49],parent:_0x9cb5x1+ _0xcf81[46],table:_0xcf81[47],conditions:_0xcf81[50]},{id:20,name:_0xcf81[51],description:_0xcf81[52],parent:_0x9cb5x1+ _0xcf81[46],table:_0xcf81[47],conditions:_0xcf81[6]},{id:21,name:_0xcf81[53],description:_0xcf81[54],parent:_0x9cb5x1+ _0xcf81[46],table:_0xcf81[47],conditions:_0xcf81[50]},{id:22,name:_0xcf81[55],description:_0xcf81[56],parent:_0x9cb5x1+ _0xcf81[46],table:_0xcf81[47],conditions:_0xcf81[50]},{id:23,name:_0xcf81[57],description:_0xcf81[58],parent:_0x9cb5x1+ _0xcf81[46],table:_0xcf81[47],conditions:_0xcf81[50]},{id:24,name:_0xcf81[59],description:_0xcf81[60],parent:_0x9cb5x1+ _0xcf81[61],table:_0xcf81[62],conditions:_0xcf81[63]},{id:25,name:_0xcf81[64],description:_0xcf81[65],parent:_0x9cb5x1+ _0xcf81[66],table:_0xcf81[62],conditions:_0xcf81[67]},{id:26,name:_0xcf81[68],description:_0xcf81[69],parent:_0x9cb5x1+ _0xcf81[66],table:_0xcf81[62],conditions:_0xcf81[70]},{id:27,name:_0xcf81[2],description:_0xcf81[71],parent:_0x9cb5x1+ _0xcf81[66],table:_0xcf81[62],conditions:_0xcf81[67]},{id:28,name:_0xcf81[72],description:_0xcf81[73],parent:_0x9cb5x1+ _0xcf81[66],table:_0xcf81[62],conditions:_0xcf81[74]},{id:29,name:_0xcf81[43],description:_0xcf81[75],parent:_0x9cb5x1+ _0xcf81[76],table:_0xcf81[77],conditions:_0xcf81[6]},{id:30,name:_0xcf81[78],description:_0xcf81[79],parent:_0x9cb5x1+ _0xcf81[76],table:_0xcf81[80],conditions:_0xcf81[6]},{id:31,name:_0xcf81[81],description:_0xcf81[82],parent:_0x9cb5x1+ _0xcf81[83],table:_0xcf81[84],conditions:_0xcf81[85]},{id:32,name:_0xcf81[86],description:_0xcf81[87],parent:_0x9cb5x1+ _0xcf81[83],table:_0xcf81[84],conditions:_0xcf81[88]},{id:33,name:_0xcf81[2],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[90],table:_0xcf81[91],conditions:_0xcf81[92]},{id:34,name:_0xcf81[93],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[90],table:_0xcf81[94],conditions:_0xcf81[92]},{id:35,name:_0xcf81[95],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[90],table:_0xcf81[91],conditions:_0xcf81[92]},{id:36,name:_0xcf81[96],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[90],table:_0xcf81[91],conditions:_0xcf81[92]},{id:37,name:_0xcf81[97],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[90],table:_0xcf81[91],conditions:_0xcf81[98]},{id:38,name:_0xcf81[99],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[90],table:_0xcf81[91],conditions:_0xcf81[100]},{id:39,name:_0xcf81[101],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[90],table:_0xcf81[91],conditions:_0xcf81[100]},{id:40,name:_0xcf81[2],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[102],table:_0xcf81[91],conditions:_0xcf81[103]},{id:41,name:_0xcf81[93],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[102],table:_0xcf81[94],conditions:_0xcf81[103]},{id:42,name:_0xcf81[95],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[102],table:_0xcf81[91],conditions:_0xcf81[103]},{id:43,name:_0xcf81[96],description:_0xcf81[89],parent:_0x9cb5x1+ _0xcf81[102],table:_0xcf81[91],conditions:_0xcf81[103]}]}
\ No newline at end of file
+var _0x77be=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x44\x65\x74\x61\x69\x6C\x73","\x44\x65\x74\x61\x69\x6C\x65\x64\x20\x71\x75\x65\x75\x65\x73\x20\x72\x65\x70\x6F\x72\x74","\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73","\x72\x65\x70\x6F\x72\x74\x5F\x71\x75\x65\x75\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x52\x65\x73\x75\x6C\x74","\x53\x69\x6D\x70\x6C\x65\x20\x71\x75\x65\x75\x65\x20\x63\x61\x6C\x6C\x73\x20\x6F\x76\x65\x72\x76\x69\x65\x77","\x44\x65\x74\x61\x69\x6C\x65\x64\x20\x72\x65\x70\x6F\x72\x74\x20\x61\x62\x6F\x75\x74\x20\x61\x6E\x73\x77\x65\x72\x65\x64\x20\x71\x75\x65\x75\x65\x20\x63\x61\x6C\x6C\x73","\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x61\x6E\x73\x77\x65\x72\x65\x64","\x72\x65\x70\x6F\x72\x74\x5F\x61\x67\x65\x6E\x74","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x31\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x41\x67\x65\x6E\x74","\x41\x67\x65\x6E\x74\x20\x63\x61\x6C\x6C\x73\x20\x74\x69\x6D\x65\x72\x20\x48\x61\x6E\x64\x6C\x65\x20\x74\x69\x6D\x65\x3D\x20\x74\x61\x6C\x6B\x20\x74\x69\x6D\x65\x20\x2B\x20\x41\x43\x57\x20\x74\x69\x6D\x65","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x51\x75\x65\x75\x65\x20\x74\x69\x6D\x65\x72\x20\x48\x61\x6E\x64\x6C\x65\x20\x54\x69\x6D\x65\x3D\x20\x54\x61\x6C\x6B\x20\x54\x69\x6D\x65\x20\x2B\x20\x41\x56\x47\x20\x54\x49\x6D\x65","\x41\x6E\x73\x77\x65\x72\x20\x54\x69\x6D\x65\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x51\x75\x65\x75\x65\x73\x20\x61\x6E\x73\x77\x65\x72\x20\x74\x69\x6D\x65\x20\x70\x65\x72\x66\x6F\x72\x6D\x61\x6E\x63\x65","\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x20\x43\x61\x75\x73\x65","\x53\x75\x6D\x6D\x61\x72\x79\x20\x6F\x66\x20\x74\x68\x65\x20\x63\x61\x6C\x6C\x73\x20\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x20\x63\x61\x75\x73\x65\x73","\x41\x6E\x73\x77\x65\x72\x20\x54\x69\x6D\x65\x20\x62\x79\x20\x48\x6F\x75\x72","\x41\x6E\x73\x77\x65\x72\x20\x74\x69\x6D\x65\x20\x20\x62\x79\x20\x68\x6F\x75\x72","\x44\x65\x74\x61\x69\x6C\x65\x64\x20\x72\x65\x70\x6F\x72\x74\x20\x61\x62\x6F\x75\x74\x20\x74\x68\x65\x20\x75\x6E\x61\x6E\x73\x77\x65\x72\x65\x64\x20\x63\x61\x6C\x6C\x73","\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x75\x6E\x61\x6E\x73\x77\x65\x72\x65\x64","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x30\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x55\x6E\x61\x6E\x73\x77\x65\x72\x65\x64\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x55\x6E\x61\x6E\x73\x77\x65\x72\x65\x64\x20\x63\x61\x6C\x6C\x73\x20\x73\x75\x6D\x6D\x61\x72\x79\x20\x62\x79\x20\x71\x75\x65\x75\x65","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x63\x61\x6C\x6C\x73","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x63\x61\x6C\x6C\x73\x20\x73\x75\x6D\x6D\x61\x72\x79","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x31\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x41\x62\x61\x6E\x64\x6F\x6E\x20\x54\x69\x6D\x65\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x41\x62\x61\x6E\x64\x6F\x6E\x20\x74\x69\x6D\x65\x20\x70\x65\x72\x66\x6F\x72\x6D\x61\x6E\x63\x65\x20\x62\x79\x20\x71\x75\x65\x75\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x31\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x44\x61\x74\x65","\x51\x75\x65\x75\x65\x20\x63\x61\x6C\x6C\x73\x20\x73\x75\x6D\x6D\x61\x72\x79\x20\x62\x79\x20\x64\x61\x74\x65","\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x48\x6F\x75\x72","\x43\x61\x6C\x6C\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E\x20\x62\x79\x20\x68\x6F\x75\x72","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x44\x61\x79","\x43\x61\x6C\x6C\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E\x20\x62\x79\x20\x64\x61\x79\x20\x6F\x66\x20\x74\x68\x65\x20\x6D\x6F\x6E\x74\x68","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x57\x65\x65\x6B\x64\x61\x79","\x43\x61\x6C\x6C\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E\x20\x62\x79\x20\x64\x61\x79\x20\x6F\x66\x20\x74\x68\x65\x20\x77\x65\x65\x6B","\x53\x75\x6D\x6D\x61\x72\x79","\x43\x61\x6C\x6C\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E\x20\x62\x79\x20\x71\x75\x65\x75\x65","\x43\x61\x6C\x6C\x73\x20\x64\x65\x74\x61\x69\x6C\x20\x28\x63\x64\x72\x29","\x5F\x76\x6F\x69\x63\x65\x5F\x63\x61\x6C\x6C\x73","\x72\x65\x70\x6F\x72\x74\x5F\x63\x61\x6C\x6C","\x4F\x75\x74\x62\x6F\x75\x6E\x64","\x4D\x61\x6E\x75\x61\x6C\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x64\x65\x74\x61\x69\x6C\x65\x64\x20\x72\x65\x70\x6F\x72\x74","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x6F\x75\x74\x62\x6F\x75\x6E\x64\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x54\x79\x70\x65","\x53\x75\x6D\x6D\x61\x72\x79\x20\x72\x65\x70\x6F\x72\x74\x20\x6F\x66\x20\x74\x68\x65\x20\x63\x61\x6C\x6C\x73\x20\x74\x79\x70\x65","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x43\x61\x6C\x6C\x73\x20\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x67\x72\x6F\x75\x70\x65\x64\x20\x62\x79\x20\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x41\x67\x65\x6E\x74","\x53\x75\x6D\x6D\x61\x72\x79\x20\x6F\x66\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x67\x72\x6F\x75\x70\x65\x64\x20\x62\x79\x20\x61\x67\x65\x6E\x74","\x4F\x75\x74\x62\x6F\x75\x6E\x64\x20\x43\x61\x6C\x6C\x73\x20\x62\x79\x20\x44\x61\x74\x65","\x53\x75\x6D\x6D\x61\x72\x79\x20\x6F\x66\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x67\x72\x6F\x75\x70\x65\x64\x20\x62\x79\x20\x64\x61\x74\x65","\x4C\x6F\x67\x69\x6E\x20\x54\x69\x6D\x65","\x41\x67\x65\x6E\x74\x27\x73\x20\x6C\x6F\x67\x69\x6E\x20\x74\x69\x6D\x65","\x5F\x61\x67\x65\x6E\x74\x73","\x72\x65\x70\x6F\x72\x74\x5F\x6D\x65\x6D\x62\x65\x72","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x4C\x4F\x47\x49\x4E\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x68\x61\x6E\x6E\x65\x6C\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x76\x6F\x69\x63\x65\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x41\x63\x74\x69\x76\x69\x74\x69\x65\x73\x20\x53\x75\x6D\x6D\x61\x72\x79","\x41\x67\x65\x6E\x74\x27\x73\x20\x61\x63\x74\x69\x76\x69\x74\x69\x65\x73\x20\x72\x65\x70\x6F\x72\x74","\x5F\x76\x6F\x69\x63\x65\x5F\x61\x67\x65\x6E\x74\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x68\x61\x6E\x6E\x65\x6C\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x76\x6F\x69\x63\x65\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x50\x61\x75\x73\x65\x20\x44\x65\x74\x61\x69\x6C\x73","\x41\x67\x65\x6E\x74\x73\x20\x73\x74\x61\x74\x75\x73\x20\x64\x65\x74\x61\x69\x6C\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x68\x61\x6E\x6E\x65\x6C\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x76\x6F\x69\x63\x65\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x50\x41\x55\x53\x45\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x41\x67\x65\x6E\x74\x27\x73\x20\x73\x74\x61\x74\x75\x73\x20\x64\x65\x74\x61\x69\x6C","\x50\x61\x75\x73\x65\x20\x54\x69\x6D\x65","\x41\x67\x65\x6E\x74\x27\x73\x20\x70\x61\x75\x73\x65\x20\x74\x69\x6D\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x50\x41\x55\x53\x45\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x68\x61\x6E\x6E\x65\x6C\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x76\x6F\x69\x63\x65\x27\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x79\x53\x71\x75\x61\x72\x65\x20\x53\x75\x6D\x6D\x61\x72\x79","\x5F\x76\x6F\x69\x63\x65\x5F\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65","\x72\x65\x70\x6F\x72\x74\x5F\x73\x71\x75\x61\x72\x65","\x42\x6C\x6F\x63\x6B\x73","\x43\x61\x6C\x6C\x79\x53\x71\x75\x61\x72\x65\x20\x42\x6C\x6F\x63\x6B\x73\x20\x44\x65\x74\x61\x69\x6C","\x72\x65\x70\x6F\x72\x74\x5F\x73\x71\x75\x61\x72\x65\x5F\x64\x65\x74\x61\x69\x6C\x73","\x52\x61\x74\x69\x6E\x67\x20\x62\x79\x20\x41\x67\x65\x6E\x74","\x52\x65\x63\x6F\x72\x64\x73\x20\x72\x61\x74\x69\x6E\x67\x20\x62\x79\x20\x61\x67\x65\x6E\x74","\x5F\x76\x6F\x69\x63\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x76\x6F\x69\x63\x65\x5F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3E\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x72\x61\x74\x69\x6E\x67\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x30\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","\x52\x61\x74\x69\x6E\x67\x20\x62\x79\x20\x51\x75\x65\x75\x65","\x52\x65\x63\x6F\x72\x64\x73\x20\x72\x61\x74\x69\x6E\x67\x20\x62\x79\x20\x71\x75\x65\x75\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x71\x75\x65\x75\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x66\x61\x6C\x73\x65\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3E\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x72\x61\x74\x69\x6E\x67\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x30\x22\x2C\x22\x72\x65\x71\x75\x69\x72\x65\x64\x22\x3A\x74\x72\x75\x65\x7D\x5D\x7D\x7D","","\x5F\x62\x75\x6C\x6C\x5F\x71\x75\x65\x75\x65\x5F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x71\x75\x65\x75\x65\x27\x22\x7D\x5D\x7D\x7D","\x43\x61\x6C\x6C\x73\x20\x53\x75\x6D\x6D\x61\x72\x79","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79","\x43\x61\x6D\x70\x61\x69\x67\x6E\x20\x43\x61\x6C\x6C\x73","\x4C\x69\x73\x74\x20\x50\x65\x6E\x65\x74\x72\x61\x74\x69\x6F\x6E\x20\x52\x61\x74\x65","\x41\x67\x65\x6E\x74\x20\x43\x61\x6C\x6C\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x71\x75\x65\x75\x65\x27\x22\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x73\x74\x61\x74\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x34\x22\x7D\x5D\x7D\x7D","\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x20\x52\x61\x74\x65","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x71\x75\x65\x75\x65\x27\x22\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x49\x53\x20\x4E\x4F\x54\x20\x4E\x55\x4C\x4C\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x22\x7D\x2C\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x73\x74\x61\x74\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x34\x22\x7D\x5D\x7D\x7D","\x41\x67\x65\x6E\x74\x20\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x20\x52\x61\x74\x65","\x5F\x62\x75\x6C\x6C\x5F\x69\x76\x72\x5F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x7B\x22\x67\x72\x6F\x75\x70\x22\x3A\x7B\x22\x6F\x70\x65\x72\x61\x74\x6F\x72\x22\x3A\x22\x41\x4E\x44\x22\x2C\x22\x72\x75\x6C\x65\x73\x22\x3A\x5B\x7B\x22\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x22\x3A\x22\x3D\x22\x2C\x22\x66\x69\x65\x6C\x64\x22\x3A\x22\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x22\x2C\x22\x76\x61\x6C\x75\x65\x22\x3A\x22\x27\x69\x76\x72\x27\x22\x7D\x5D\x7D\x7D"];_0x77be[0];module[_0x77be[1]]= function(_0x981fx1){return [{id:1,name:_0x77be[2],description:_0x77be[3],parent:_0x981fx1+ _0x77be[4],table:_0x77be[5],conditions:_0x77be[6]},{id:2,name:_0x77be[7],description:_0x77be[8],parent:_0x981fx1+ _0x77be[4],table:_0x77be[5],conditions:_0x77be[6]},{id:3,name:_0x77be[2],description:_0x77be[9],parent:_0x981fx1+ _0x77be[10],table:_0x77be[11],conditions:_0x77be[12]},{id:4,name:_0x77be[13],description:_0x77be[14],parent:_0x981fx1+ _0x77be[10],table:_0x77be[11],conditions:_0x77be[12]},{id:5,name:_0x77be[15],description:_0x77be[16],parent:_0x981fx1+ _0x77be[10],table:_0x77be[11],conditions:_0x77be[12]},{id:6,name:_0x77be[17],description:_0x77be[18],parent:_0x981fx1+ _0x77be[10],table:_0x77be[11],conditions:_0x77be[12]},{id:7,name:_0x77be[19],description:_0x77be[20],parent:_0x981fx1+ _0x77be[10],table:_0x77be[11],conditions:_0x77be[12]},{id:8,name:_0x77be[21],description:_0x77be[22],parent:_0x981fx1+ _0x77be[10],table:_0x77be[11],conditions:_0x77be[12]},{id:9,name:_0x77be[2],description:_0x77be[23],parent:_0x981fx1+ _0x77be[24],table:_0x77be[5],conditions:_0x77be[25]},{id:10,name:_0x77be[26],description:_0x77be[27],parent:_0x981fx1+ _0x77be[24],table:_0x77be[5],conditions:_0x77be[25]},{id:11,name:_0x77be[28],description:_0x77be[29],parent:_0x981fx1+ _0x77be[24],table:_0x77be[5],conditions:_0x77be[30]},{id:12,name:_0x77be[31],description:_0x77be[32],parent:_0x981fx1+ _0x77be[24],table:_0x77be[5],conditions:_0x77be[33]},{id:13,name:_0x77be[34],description:_0x77be[35],parent:_0x981fx1+ _0x77be[36],table:_0x77be[5],conditions:_0x77be[6]},{id:14,name:_0x77be[37],description:_0x77be[38],parent:_0x981fx1+ _0x77be[36],table:_0x77be[5],conditions:_0x77be[6]},{id:15,name:_0x77be[39],description:_0x77be[40],parent:_0x981fx1+ _0x77be[36],table:_0x77be[5],conditions:_0x77be[6]},{id:16,name:_0x77be[41],description:_0x77be[42],parent:_0x981fx1+ _0x77be[36],table:_0x77be[5],conditions:_0x77be[6]},{id:17,name:_0x77be[43],description:_0x77be[44],parent:_0x981fx1+ _0x77be[4],table:_0x77be[5],conditions:_0x77be[6]},{id:18,name:_0x77be[2],description:_0x77be[45],parent:_0x981fx1+ _0x77be[46],table:_0x77be[47],conditions:_0x77be[6]},{id:19,name:_0x77be[48],description:_0x77be[49],parent:_0x981fx1+ _0x77be[46],table:_0x77be[47],conditions:_0x77be[50]},{id:20,name:_0x77be[51],description:_0x77be[52],parent:_0x981fx1+ _0x77be[46],table:_0x77be[47],conditions:_0x77be[6]},{id:21,name:_0x77be[53],description:_0x77be[54],parent:_0x981fx1+ _0x77be[46],table:_0x77be[47],conditions:_0x77be[50]},{id:22,name:_0x77be[55],description:_0x77be[56],parent:_0x981fx1+ _0x77be[46],table:_0x77be[47],conditions:_0x77be[50]},{id:23,name:_0x77be[57],description:_0x77be[58],parent:_0x981fx1+ _0x77be[46],table:_0x77be[47],conditions:_0x77be[50]},{id:24,name:_0x77be[59],description:_0x77be[60],parent:_0x981fx1+ _0x77be[61],table:_0x77be[62],conditions:_0x77be[63]},{id:25,name:_0x77be[64],description:_0x77be[65],parent:_0x981fx1+ _0x77be[66],table:_0x77be[62],conditions:_0x77be[67]},{id:26,name:_0x77be[68],description:_0x77be[69],parent:_0x981fx1+ _0x77be[66],table:_0x77be[62],conditions:_0x77be[70]},{id:27,name:_0x77be[2],description:_0x77be[71],parent:_0x981fx1+ _0x77be[66],table:_0x77be[62],conditions:_0x77be[67]},{id:28,name:_0x77be[72],description:_0x77be[73],parent:_0x981fx1+ _0x77be[66],table:_0x77be[62],conditions:_0x77be[74]},{id:29,name:_0x77be[43],description:_0x77be[75],parent:_0x981fx1+ _0x77be[76],table:_0x77be[77],conditions:_0x77be[6]},{id:30,name:_0x77be[78],description:_0x77be[79],parent:_0x981fx1+ _0x77be[76],table:_0x77be[80],conditions:_0x77be[6]},{id:31,name:_0x77be[81],description:_0x77be[82],parent:_0x981fx1+ _0x77be[83],table:_0x77be[84],conditions:_0x77be[85]},{id:32,name:_0x77be[86],description:_0x77be[87],parent:_0x981fx1+ _0x77be[83],table:_0x77be[84],conditions:_0x77be[88]},{id:33,name:_0x77be[2],description:_0x77be[89],parent:_0x981fx1+ _0x77be[90],table:_0x77be[91],conditions:_0x77be[92]},{id:34,name:_0x77be[93],description:_0x77be[89],parent:_0x981fx1+ _0x77be[90],table:_0x77be[94],conditions:_0x77be[92]},{id:35,name:_0x77be[95],description:_0x77be[89],parent:_0x981fx1+ _0x77be[90],table:_0x77be[91],conditions:_0x77be[92]},{id:36,name:_0x77be[96],description:_0x77be[89],parent:_0x981fx1+ _0x77be[90],table:_0x77be[91],conditions:_0x77be[92]},{id:37,name:_0x77be[97],description:_0x77be[89],parent:_0x981fx1+ _0x77be[90],table:_0x77be[91],conditions:_0x77be[98]},{id:38,name:_0x77be[99],description:_0x77be[89],parent:_0x981fx1+ _0x77be[90],table:_0x77be[91],conditions:_0x77be[100]},{id:39,name:_0x77be[101],description:_0x77be[89],parent:_0x981fx1+ _0x77be[90],table:_0x77be[91],conditions:_0x77be[100]},{id:40,name:_0x77be[2],description:_0x77be[89],parent:_0x981fx1+ _0x77be[102],table:_0x77be[91],conditions:_0x77be[103]},{id:41,name:_0x77be[93],description:_0x77be[89],parent:_0x981fx1+ _0x77be[102],table:_0x77be[94],conditions:_0x77be[103]},{id:42,name:_0x77be[95],description:_0x77be[89],parent:_0x981fx1+ _0x77be[102],table:_0x77be[91],conditions:_0x77be[103]},{id:43,name:_0x77be[96],description:_0x77be[89],parent:_0x981fx1+ _0x77be[102],table:_0x77be[91],conditions:_0x77be[103]}]}
\ No newline at end of file
index d8fd824..c9250f6 100644 (file)
@@ -1 +1 @@
-var _0xa68a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x75\x6E\x69\x71\x75\x65\x69\x64","\x55\x6E\x69\x71\x75\x65\x49\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x71\x75\x65\x75\x65","\x51\x75\x65\x75\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x51\x75\x65\x75\x65\x4A\x6F\x69\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x51\x75\x65\x75\x65\x4C\x65\x61\x76\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x51\x75\x65\x75\x65\x41\x62\x61\x6E\x64\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x51\x75\x65\x75\x65\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x51\x75\x65\x75\x65\x45\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x51\x75\x65\x75\x65\x45\x78\x69\x74\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x72\x65\x61\x73\x6F\x6E","\x51\x75\x65\x75\x65\x45\x78\x69\x74\x52\x65\x61\x73\x6F\x6E","\x65\x78\x74\x65\x6E","\x44\x49\x44","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74\x29","\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x54\x69\x6D\x65","\x49\x46\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x3D\x31\x2C\x68\x6F\x6C\x64\x74\x69\x6D\x65\x2C\x6E\x75\x6C\x6C\x29","\x41\x6E\x73\x77\x65\x72\x54\x69\x6D\x65","\x43\x61\x6C\x6C\x65\x72\x49\x44","\x53\x74\x61\x72\x74\x54\x69\x6D\x65","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x3D\x31\x20\x54\x48\x45\x4E\x20\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74\x20\x45\x4C\x53\x45\x20\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x4C\x65\x61\x76\x65\x41\x74\x20\x45\x4E\x44","\x45\x6E\x64\x54\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x3D\x31\x20\x54\x48\x45\x4E\x20\x27\x59\x45\x53\x27\x20\x45\x4C\x53\x45\x20\x27\x4E\x4F\x27\x20\x45\x4E\x44","\x41\x6E\x73\x77\x65\x72\x65\x64","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x41\x67\x65\x6E\x74","\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64\x41\x74","\x41\x67\x65\x6E\x74\x43\x61\x6C\x6C\x65\x64\x41\x74","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74\x41\x74","\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74\x41\x74","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x61\x67\x65\x6E\x74\x61\x63\x77","\x41\x67\x65\x6E\x74\x41\x43\x57","\x61\x63\x77\x74\x69\x6D\x65","\x41\x67\x65\x6E\x74\x41\x43\x57\x54\x69\x6D\x65","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x72\x65\x61\x73\x6F\x6E","\x48\x61\x6E\x67\x75\x70\x52\x65\x61\x73\x6F\x6E","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x4C\x61\x73\x74\x45\x76\x65\x6E\x74","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x53\x55\x4D","\x54\x6F\x74\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x54\x6F\x74\x41\x43\x57\x54\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65\x20\x2B\x20\x61\x63\x77\x74\x69\x6D\x65","\x54\x6F\x74\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x74\x61\x6C\x6B\x74\x69\x6D\x65\x29\x29","\x41\x76\x67\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x61\x63\x77\x74\x69\x6D\x65\x29\x29","\x41\x76\x67\x41\x43\x57\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x53\x55\x4D\x28\x74\x61\x6C\x6B\x74\x69\x6D\x65\x20\x2B\x20\x61\x63\x77\x74\x69\x6D\x65\x29\x2F\x43\x4F\x55\x4E\x54\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x29","\x41\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x54\x6F\x74\x20\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x54\x6F\x74\x20\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x54\x6F\x74\x20\x41\x43\x57\x54\x69\x6D\x65","\x54\x6F\x74\x20\x48\x61\x6E\x64\x6C\x65\x20\x54\x69\x6D\x65","\x41\x76\x67\x20\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x29\x29","\x41\x76\x67\x20\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x41\x76\x67\x20\x41\x43\x57\x54\x69\x6D\x65","\x41\x76\x67\x20\x48\x61\x6E\x64\x6C\x65\x20\x54\x69\x6D\x65","\x54\x6F\x74\x20\x41\x6E\x73\x77\x65\x72\x65\x64","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x3C\x31\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x6E\x73\x77\x65\x72\x65\x64\x20\x3C\x31\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x3C\x31\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65\x20\x3C\x31\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x31\x30\x20\x41\x4E\x44\x20\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3C\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x6E\x73\x77\x65\x72\x65\x64\x20\x31\x30\x2D\x32\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x31\x30\x20\x41\x4E\x44\x20\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3C\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65\x20\x31\x30\x2D\x32\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x32\x30\x20\x41\x4E\x44\x20\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3C\x33\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x6E\x73\x77\x65\x72\x65\x64\x20\x32\x30\x2D\x33\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x32\x30\x20\x41\x4E\x44\x20\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3C\x33\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65\x20\x32\x30\x2D\x33\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x33\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x6E\x73\x77\x65\x72\x65\x64\x20\x3E\x33\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x33\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65\x20\x3E\x33\x30\x73","\x52\x65\x61\x73\x6F\x6E","\x43\x61\x6C\x6C\x73","\x43\x4F\x55\x4E\x54","\x48\x6F\x75\x72","\x48\x4F\x55\x52","\x4A\x6F\x69\x6E\x41\x74","\x4C\x65\x61\x76\x65\x41\x74","\x41\x62\x61\x6E\x64\x6F\x6E","\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x41\x74","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x52\x65\x61\x73\x6F\x6E","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x51\x75\x65\x75\x65\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x41\x62\x61\x6E\x64\x6F\x6E\x20\x54\x69\x6D\x65","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x45\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x54\x6F\x74\x20\x41\x62\x61\x6E\x64\x6F\x6E\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x29\x29","\x41\x76\x67\x41\x62\x61\x6E\x64\x6F\x6E\x54\x69\x6D\x65","\x54\x6F\x74\x20\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x45\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x29\x29","\x41\x76\x67\x20\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x54\x49\x6D\x65","\x54\x6F\x74\x20\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x31\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x3C\x31\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x31\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x52\x61\x74\x65\x3C\x31\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x31\x30\x20\x41\x4E\x44\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x36\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x31\x30\x2D\x36\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x31\x30\x20\x41\x4E\x44\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x36\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x20\x2F\x20\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x52\x61\x74\x65\x20\x31\x30\x2D\x36\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x36\x30\x20\x41\x4E\x44\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x31\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x36\x30\x2D\x31\x32\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x36\x30\x20\x41\x4E\x44\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x31\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x20\x20\x2F\x20\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x52\x61\x74\x65\x20\x36\x30\x2D\x31\x32\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x31\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x3E\x31\x32\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x31\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x20\x2F\x20\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x52\x61\x74\x65\x3E\x31\x32\x30\x73","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x61\x74","\x44\x61\x74\x65","\x44\x41\x54\x45","\x4F\x66\x66\x65\x72\x65\x64","\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74\x29\x29\x29","\x52\x4F\x55\x4E\x44\x28\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x2F\x43\x4F\x55\x4E\x54\x28\x44\x49\x53\x54\x49\x4E\x43\x54\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x29\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65","\x44\x41\x59\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x61\x74\x29","\x44\x61\x79","\x44\x41\x59\x4E\x41\x4D\x45\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x61\x74\x29","\x44\x61\x79\x4F\x66\x57\x65\x65\x6B","\x41\x53\x43","\x55\x6E\x69\x71\x75\x65\x49\x44","\x74\x79\x70\x65","\x54\x79\x70\x65","\x74\x61\x67","\x54\x61\x67","\x73\x6F\x75\x72\x63\x65","\x53\x6F\x75\x72\x63\x65","\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E","\x44\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x44\x65\x73\x74\x43\x68\x61\x6E\x6E\x65\x6C","\x6C\x61\x73\x74\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x4C\x61\x73\x74\x41\x70\x70","\x6C\x61\x73\x74\x64\x61\x74\x61","\x4C\x61\x73\x74\x44\x61\x74\x61","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x44\x75\x72\x61\x74\x69\x6F\x6E","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x41\x67\x65\x6E\x74\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x43\x61\x6C\x6C\x65\x72\x49\x64","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x42\x69\x6C\x6C\x73\x65\x63","\x54\x6F\x74\x20\x44\x75\x72\x61\x74\x69\x6F\x6E","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x64\x75\x72\x61\x74\x69\x6F\x6E\x29\x29","\x41\x76\x67\x20\x44\x75\x72\x61\x74\x69\x6F\x6E","\x53\x55\x42\x53\x54\x52\x49\x4E\x47\x5F\x49\x4E\x44\x45\x58\x28\x63\x68\x61\x6E\x6E\x65\x6C\x2C\x20\x22\x2D\x22\x2C\x20\x31\x29","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x6E\x74\x65\x72\x41\x74\x29","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x74\x79\x70\x65\x3D\x27\x4C\x4F\x47\x49\x4E\x27\x20\x54\x48\x45\x4E\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x6E\x74\x65\x72\x41\x74\x29\x20\x45\x4E\x44","\x4C\x6F\x67\x69\x6E\x20\x54\x69\x6D\x65","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x74\x79\x70\x65\x3D\x27\x54\x41\x4C\x4B\x49\x4E\x47\x27\x20\x54\x48\x45\x4E\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x6E\x74\x65\x72\x41\x74\x29\x20\x45\x4E\x44","\x54\x61\x6C\x6B\x20\x54\x69\x6D\x65","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x74\x79\x70\x65\x3D\x27\x50\x41\x55\x53\x45\x27\x20\x54\x48\x45\x4E\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x6E\x74\x65\x72\x41\x74\x29\x20\x45\x4E\x44","\x50\x61\x75\x73\x65\x20\x54\x69\x6D\x65","\x65\x6E\x74\x65\x72\x41\x74","\x45\x6E\x74\x65\x72\x41\x74","\x65\x78\x69\x74\x41\x74","\x45\x78\x69\x74\x41\x74","\x64\x61\x74\x61\x31","\x50\x61\x75\x73\x65","\x69\x6E\x74\x65\x72\x66\x61\x63\x65","\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x45\x76\x65\x6E\x74","\x50\x61\x75\x73\x65\x54\x79\x70\x65","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x6E\x61\x6D\x65","\x50\x72\x6F\x6A\x65\x63\x74\x20\x4E\x61\x6D\x65","\x64\x6E\x69\x64","\x6A\x6F\x69\x6E\x41\x74","\x53\x74\x61\x72\x74\x20\x54\x69\x6D\x65","\x6C\x65\x61\x76\x65\x41\x74","\x45\x6E\x64\x20\x54\x69\x6D\x65","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x6C\x65\x61\x76\x65\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x6A\x6F\x69\x6E\x41\x74\x29","\x55\x6E\x69\x71\x75\x65\x20\x49\x64","\x43\x61\x6C\x6C\x65\x72\x20\x49\x64","\x6E\x6F\x64\x65","\x42\x6C\x6F\x63\x6B","\x64\x61\x74\x61","\x44\x61\x74\x61","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x52\x65\x63\x6F\x72\x64\x65\x64\x20\x43\x61\x6C\x6C\x73","\x72\x61\x74\x69\x6E\x67","\x54\x6F\x74\x61\x6C\x20\x52\x61\x74\x69\x6E\x67","\x41\x76\x67\x20\x52\x61\x74\x69\x6E\x67","\x41\x56\x47","\x52\x61\x74\x65\x64\x20\x43\x61\x6C\x6C\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x43\x61\x6D\x70\x61\x69\x67\x6E\x20\x4E\x61\x6D\x65","\x4C\x61\x73\x74\x43\x61\x6C\x6C\x41\x74","\x44\x45\x53\x43","\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x53\x74\x61\x74\x65","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x47\x6C\x6F\x62\x61\x6C\x20\x43\x6F\x75\x6E\x74","\x64\x72\x6F\x70\x72\x65\x61\x73\x6F\x6E","\x44\x72\x6F\x70\x20\x52\x65\x61\x73\x6F\x6E","\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74","\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74","\x69\x64","\x52\x4F\x55\x4E\x44\x28\x63\x6F\x75\x6E\x74\x28\x69\x64\x29\x2A\x31\x30\x30\x2F\x28\x53\x45\x4C\x45\x43\x54\x20\x43\x4F\x55\x4E\x54\x28\x2A\x29\x20\x46\x52\x4F\x4D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79\x20\x57\x48\x45\x52\x45\x20\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x3D\x27\x71\x75\x65\x75\x65\x27\x29\x2C\x32\x29","\x43\x61\x6C\x6C\x73\x20\x28\x25\x29","\x54\x6F\x74\x61\x6C\x20\x43\x61\x6C\x6C\x73","\x4C\x69\x73\x74\x49\x64","\x43\x6F\x6E\x74\x61\x63\x74\x73","\x53\x55\x4D\x28\x49\x46\x28\x73\x74\x61\x74\x65\x3D\x34\x2C\x31\x2C\x30\x29\x29","\x4D\x61\x6E\x61\x67\x65\x64","\x52\x4F\x55\x4E\x44\x28\x53\x55\x4D\x28\x49\x46\x28\x73\x74\x61\x74\x65\x3D\x34\x2C\x31\x2C\x30\x29\x29\x2F\x43\x4F\x55\x4E\x54\x28\x2A\x29\x2A\x31\x30\x30\x2C\x31\x29","\x50\x65\x6E\x65\x74\x72\x61\x74\x69\x6F\x6E\x20\x52\x61\x74\x65","\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45\x28\x41\x56\x47\x28\x74\x61\x6C\x6B\x74\x69\x6D\x65\x29\x29","\x41\x56\x47\x20\x54\x61\x6C\x6B\x20\x54\x69\x6D\x65","\x54\x6F\x74\x61\x6C","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x69\x64\x29\x2A\x31\x30\x30\x2F\x28\x53\x45\x4C\x45\x43\x54\x20\x43\x4F\x55\x4E\x54\x28\x2A\x29\x20\x46\x52\x4F\x4D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x20\x57\x48\x45\x52\x45\x20\x73\x74\x61\x74\x65\x3D\x34\x20\x61\x6E\x64\x20\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x3D\x27\x71\x75\x65\x75\x65\x27\x29\x2C\x32\x29","\x54\x6F\x74\x61\x6C\x20\x28\x25\x29","\x52\x4F\x55\x4E\x44\x28\x63\x6F\x75\x6E\x74\x28\x69\x64\x29\x2A\x31\x30\x30\x2F\x28\x53\x45\x4C\x45\x43\x54\x20\x43\x4F\x55\x4E\x54\x28\x2A\x29\x20\x46\x52\x4F\x4D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79\x20\x57\x48\x45\x52\x45\x20\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x3D\x27\x69\x76\x72\x27\x29\x2C\x32\x29","\x52\x65\x70\x6F\x72\x74\x49\x64","\x67\x72\x6F\x75\x70\x42\x79"];_0xa68a[0];var _=require(_0xa68a[1]);module[_0xa68a[2]]= function(){var _0x4e32x2=[{field:_0xa68a[3],alias:_0xa68a[4],ReportId:1},{field:_0xa68a[5],alias:_0xa68a[6],ReportId:1},{field:_0xa68a[7],alias:_0xa68a[8],ReportId:1},{field:_0xa68a[9],alias:_0xa68a[10],ReportId:1},{field:_0xa68a[11],alias:_0xa68a[12],ReportId:1},{field:_0xa68a[13],alias:_0xa68a[14],ReportId:1},{field:_0xa68a[15],alias:_0xa68a[16],ReportId:1},{field:_0xa68a[17],alias:_0xa68a[18],ReportId:1},{field:_0xa68a[19],alias:_0xa68a[20],ReportId:1},{field:_0xa68a[21],alias:_0xa68a[22],ReportId:1},{field:_0xa68a[23],alias:_0xa68a[24],ReportId:1},{field:_0xa68a[25],alias:_0xa68a[26],ReportId:1},{field:_0xa68a[27],alias:_0xa68a[28],ReportId:1},{field:_0xa68a[29],alias:_0xa68a[30],ReportId:1},{field:_0xa68a[31],alias:_0xa68a[32],format:_0xa68a[33],custom:1,ReportId:1},{field:_0xa68a[34],alias:_0xa68a[35],format:_0xa68a[33],custom:1,ReportId:1},{field:_0xa68a[36],alias:_0xa68a[37],format:_0xa68a[33],custom:1,ReportId:1},{field:_0xa68a[5],alias:_0xa68a[38],ReportId:2},{field:_0xa68a[9],alias:_0xa68a[10],ReportId:2},{field:_0xa68a[11],alias:_0xa68a[39],ReportId:2},{field:_0xa68a[40],alias:_0xa68a[41],custom:1,ReportId:2},{field:_0xa68a[42],alias:_0xa68a[43],format:_0xa68a[33],ReportId:2},{field:_0xa68a[44],alias:_0xa68a[45],custom:1,ReportId:2},{field:_0xa68a[3],alias:_0xa68a[4],ReportId:3},{field:_0xa68a[5],alias:_0xa68a[6],ReportId:3},{field:_0xa68a[7],alias:_0xa68a[8],ReportId:3},{field:_0xa68a[9],alias:_0xa68a[10],ReportId:3},{field:_0xa68a[46],alias:_0xa68a[47],ReportId:3},{field:_0xa68a[48],alias:_0xa68a[49],ReportId:3},{field:_0xa68a[50],alias:_0xa68a[51],ReportId:3},{field:_0xa68a[52],alias:_0xa68a[53],ReportId:3},{field:_0xa68a[42],alias:_0xa68a[37],ReportId:3},{field:_0xa68a[54],alias:_0xa68a[32],ReportId:3},{field:_0xa68a[55],alias:_0xa68a[56],ReportId:3},{field:_0xa68a[57],alias:_0xa68a[58],ReportId:3},{field:_0xa68a[59],alias:_0xa68a[60],ReportId:3},{field:_0xa68a[61],alias:_0xa68a[62],ReportId:3},{field:_0xa68a[63],alias:_0xa68a[64],ReportId:3},{field:_0xa68a[29],alias:_0xa68a[30],ReportId:3},{field:_0xa68a[46],alias:_0xa68a[47],groupBy:1,ReportId:4},{field:_0xa68a[59],alias:_0xa68a[65],function:_0xa68a[66],ReportId:4},{field:_0xa68a[54],alias:_0xa68a[67],function:_0xa68a[66],format:_0xa68a[33],ReportId:4},{field:_0xa68a[57],alias:_0xa68a[68],function:_0xa68a[66],format:_0xa68a[33],ReportId:4},{field:_0xa68a[69],alias:_0xa68a[70],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:4},{field:_0xa68a[71],alias:_0xa68a[72],format:_0xa68a[33],custom:1,ReportId:4},{field:_0xa68a[73],alias:_0xa68a[74],format:_0xa68a[33],custom:1,ReportId:4},{field:_0xa68a[75],alias:_0xa68a[76],format:_0xa68a[33],custom:1,ReportId:4},{field:_0xa68a[9],alias:_0xa68a[10],groupBy:1,ReportId:5},{field:_0xa68a[59],alias:_0xa68a[65],function:_0xa68a[66],ReportId:5},{field:_0xa68a[54],alias:_0xa68a[77],function:_0xa68a[66],format:_0xa68a[33],ReportId:5},{field:_0xa68a[42],alias:_0xa68a[78],function:_0xa68a[66],format:_0xa68a[33],ReportId:5},{field:_0xa68a[57],alias:_0xa68a[79],function:_0xa68a[66],format:_0xa68a[33],ReportId:5},{field:_0xa68a[69],alias:_0xa68a[80],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:5},{field:_0xa68a[71],alias:_0xa68a[81],format:_0xa68a[33],custom:1,ReportId:5},{field:_0xa68a[82],alias:_0xa68a[83],format:_0xa68a[33],custom:1,ReportId:5},{field:_0xa68a[73],alias:_0xa68a[84],format:_0xa68a[33],custom:1,ReportId:5},{field:_0xa68a[75],alias:_0xa68a[85],format:_0xa68a[33],custom:1,ReportId:5},{field:_0xa68a[9],alias:_0xa68a[10],groupBy:1,ReportId:6},{field:_0xa68a[59],alias:_0xa68a[86],function:_0xa68a[66],ReportId:6},{field:_0xa68a[87],alias:_0xa68a[88],custom:1,ReportId:6},{field:_0xa68a[89],alias:_0xa68a[90],custom:1,ReportId:6},{field:_0xa68a[91],alias:_0xa68a[92],custom:1,ReportId:6},{field:_0xa68a[93],alias:_0xa68a[94],custom:1,ReportId:6},{field:_0xa68a[95],alias:_0xa68a[96],custom:1,ReportId:6},{field:_0xa68a[97],alias:_0xa68a[98],custom:1,ReportId:6},{field:_0xa68a[99],alias:_0xa68a[100],custom:1,ReportId:6},{field:_0xa68a[101],alias:_0xa68a[102],custom:1,ReportId:6},{field:_0xa68a[61],alias:_0xa68a[103],groupBy:1,ReportId:7},{field:_0xa68a[3],alias:_0xa68a[104],function:_0xa68a[105],ReportId:7},{field:_0xa68a[50],alias:_0xa68a[106],format:_0xa68a[107],groupBy:1,ReportId:8},{field:_0xa68a[59],alias:_0xa68a[86],function:_0xa68a[66],ReportId:8},{field:_0xa68a[87],alias:_0xa68a[88],custom:1,ReportId:8},{field:_0xa68a[91],alias:_0xa68a[92],custom:1,ReportId:8},{field:_0xa68a[95],alias:_0xa68a[96],custom:1,ReportId:8},{field:_0xa68a[99],alias:_0xa68a[100],custom:1,ReportId:8},{field:_0xa68a[3],alias:_0xa68a[4],ReportId:9},{field:_0xa68a[5],alias:_0xa68a[6],ReportId:9},{field:_0xa68a[9],alias:_0xa68a[10],ReportId:9},{field:_0xa68a[11],alias:_0xa68a[108],ReportId:9},{field:_0xa68a[13],alias:_0xa68a[109],ReportId:9},{field:_0xa68a[15],alias:_0xa68a[110],ReportId:9},{field:_0xa68a[17],alias:_0xa68a[111],ReportId:9},{field:_0xa68a[23],alias:_0xa68a[112],ReportId:9},{field:_0xa68a[25],alias:_0xa68a[113],ReportId:9},{field:_0xa68a[27],alias:_0xa68a[114],ReportId:9},{field:_0xa68a[115],alias:_0xa68a[116],ReportId:9},{field:_0xa68a[29],alias:_0xa68a[30],ReportId:9},{field:_0xa68a[34],alias:_0xa68a[117],format:_0xa68a[33],custom:1,ReportId:9},{field:_0xa68a[118],alias:_0xa68a[119],format:_0xa68a[33],custom:1,ReportId:9},{field:_0xa68a[9],alias:_0xa68a[10],groupBy:1,ReportId:10},{field:_0xa68a[15],alias:_0xa68a[120],function:_0xa68a[66],ReportId:10},{field:_0xa68a[23],alias:_0xa68a[112],function:_0xa68a[66],ReportId:10},{field:_0xa68a[34],alias:_0xa68a[121],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:10},{field:_0xa68a[122],alias:_0xa68a[123],format:_0xa68a[33],custom:1,ReportId:10},{field:_0xa68a[118],alias:_0xa68a[124],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:10},{field:_0xa68a[125],alias:_0xa68a[126],format:_0xa68a[33],custom:1,ReportId:10},{field:_0xa68a[27],alias:_0xa68a[103],groupBy:1,ReportId:11},{field:_0xa68a[23],alias:_0xa68a[104],function:_0xa68a[66],ReportId:11},{field:_0xa68a[118],alias:_0xa68a[124],function:_0xa68a[66],custom:1,ReportId:11},{field:_0xa68a[9],alias:_0xa68a[10],groupBy:1,ReportId:12},{field:_0xa68a[15],alias:_0xa68a[127],function:_0xa68a[66],ReportId:12},{field:_0xa68a[128],alias:_0xa68a[129],custom:1,ReportId:12},{field:_0xa68a[130],alias:_0xa68a[131],custom:1,ReportId:12},{field:_0xa68a[132],alias:_0xa68a[133],custom:1,ReportId:12},{field:_0xa68a[134],alias:_0xa68a[135],custom:1,ReportId:12},{field:_0xa68a[136],alias:_0xa68a[137],custom:1,ReportId:12},{field:_0xa68a[138],alias:_0xa68a[139],custom:1,ReportId:12},{field:_0xa68a[140],alias:_0xa68a[141],custom:1,ReportId:12},{field:_0xa68a[142],alias:_0xa68a[143],custom:1,ReportId:12},{field:_0xa68a[144],alias:_0xa68a[145],format:_0xa68a[146],groupBy:1,custom:1,ReportId:13},{field:_0xa68a[3],alias:_0xa68a[147],function:_0xa68a[148],ReportId:13},{field:_0xa68a[19],alias:_0xa68a[65],function:_0xa68a[66],ReportId:13},{field:_0xa68a[15],alias:_0xa68a[120],function:_0xa68a[66],custom:1,ReportId:13},{field:_0xa68a[23],alias:_0xa68a[112],function:_0xa68a[66],custom:1,ReportId:13},{field:_0xa68a[31],alias:_0xa68a[77],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:13},{field:_0xa68a[149],alias:_0xa68a[72],format:_0xa68a[33],custom:1,ReportId:13},{field:_0xa68a[122],alias:_0xa68a[123],format:_0xa68a[33],custom:1,ReportId:13},{field:_0xa68a[144],alias:_0xa68a[106],format:_0xa68a[107],groupBy:1,custom:1,ReportId:14},{field:_0xa68a[3],alias:_0xa68a[147],function:_0xa68a[148],ReportId:14},{field:_0xa68a[19],alias:_0xa68a[45],function:_0xa68a[66],ReportId:14},{field:_0xa68a[150],alias:_0xa68a[151],custom:1,ReportId:14},{field:_0xa68a[15],alias:_0xa68a[120],function:_0xa68a[66],ReportId:14},{field:_0xa68a[23],alias:_0xa68a[112],function:_0xa68a[66],ReportId:14},{field:_0xa68a[31],alias:_0xa68a[77],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:14},{field:_0xa68a[149],alias:_0xa68a[72],format:_0xa68a[33],custom:1,ReportId:14},{field:_0xa68a[122],alias:_0xa68a[123],format:_0xa68a[33],custom:1,ReportId:14},{field:_0xa68a[152],alias:_0xa68a[153],groupBy:1,custom:1,ReportId:15},{field:_0xa68a[3],alias:_0xa68a[147],function:_0xa68a[148],ReportId:15},{field:_0xa68a[19],alias:_0xa68a[45],function:_0xa68a[66],ReportId:15},{field:_0xa68a[150],alias:_0xa68a[151],custom:1,ReportId:15},{field:_0xa68a[15],alias:_0xa68a[120],function:_0xa68a[66],ReportId:15},{field:_0xa68a[23],alias:_0xa68a[112],function:_0xa68a[66],ReportId:15},{field:_0xa68a[31],alias:_0xa68a[77],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:15},{field:_0xa68a[149],alias:_0xa68a[72],format:_0xa68a[33],custom:1,ReportId:15},{field:_0xa68a[122],alias:_0xa68a[123],format:_0xa68a[33],custom:1,ReportId:15},{field:_0xa68a[154],alias:_0xa68a[155],groupBy:1,custom:1,ReportId:16},{field:_0xa68a[3],alias:_0xa68a[147],function:_0xa68a[148],ReportId:16},{field:_0xa68a[19],alias:_0xa68a[45],function:_0xa68a[66],ReportId:16},{field:_0xa68a[150],alias:_0xa68a[151],custom:1,ReportId:16},{field:_0xa68a[15],alias:_0xa68a[120],function:_0xa68a[66],orderBy:_0xa68a[156],ReportId:16},{field:_0xa68a[23],alias:_0xa68a[112],function:_0xa68a[66],ReportId:16},{field:_0xa68a[31],alias:_0xa68a[77],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:16},{field:_0xa68a[149],alias:_0xa68a[72],format:_0xa68a[33],custom:1,ReportId:16},{field:_0xa68a[122],alias:_0xa68a[123],format:_0xa68a[33],custom:1,ReportId:16},{field:_0xa68a[9],alias:_0xa68a[10],groupBy:1,ReportId:17},{field:_0xa68a[3],alias:_0xa68a[147],function:_0xa68a[148],ReportId:17},{field:_0xa68a[19],alias:_0xa68a[45],function:_0xa68a[66],ReportId:17},{field:_0xa68a[150],alias:_0xa68a[151],custom:1,ReportId:17},{field:_0xa68a[15],alias:_0xa68a[120],function:_0xa68a[66],ReportId:17},{field:_0xa68a[23],alias:_0xa68a[112],function:_0xa68a[66],ReportId:17},{field:_0xa68a[31],alias:_0xa68a[77],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:17},{field:_0xa68a[149],alias:_0xa68a[72],format:_0xa68a[33],custom:1,ReportId:17},{field:_0xa68a[122],alias:_0xa68a[123],format:_0xa68a[33],custom:1,ReportId:17},{field:_0xa68a[3],alias:_0xa68a[157],ReportId:18},{field:_0xa68a[158],alias:_0xa68a[159],ReportId:18},{field:_0xa68a[160],alias:_0xa68a[161],ReportId:18},{field:_0xa68a[162],alias:_0xa68a[163],ReportId:18},{field:_0xa68a[164],alias:_0xa68a[165],ReportId:18},{field:_0xa68a[166],alias:_0xa68a[38],ReportId:18},{field:_0xa68a[167],alias:_0xa68a[168],ReportId:18},{field:_0xa68a[169],alias:_0xa68a[170],ReportId:18},{field:_0xa68a[171],alias:_0xa68a[172],ReportId:18},{field:_0xa68a[173],alias:_0xa68a[39],ReportId:18},{field:_0xa68a[174],alias:_0xa68a[37],ReportId:18},{field:_0xa68a[175],alias:_0xa68a[41],ReportId:18},{field:_0xa68a[176],alias:_0xa68a[177],ReportId:18},{field:_0xa68a[178],alias:_0xa68a[179],ReportId:18},{field:_0xa68a[3],alias:_0xa68a[157],ReportId:19},{field:_0xa68a[180],alias:_0xa68a[181],ReportId:19},{field:_0xa68a[162],alias:_0xa68a[163],ReportId:19},{field:_0xa68a[164],alias:_0xa68a[165],ReportId:19},{field:_0xa68a[166],alias:_0xa68a[182],ReportId:19},{field:_0xa68a[173],alias:_0xa68a[39],ReportId:19},{field:_0xa68a[174],alias:_0xa68a[37],ReportId:19},{field:_0xa68a[175],alias:_0xa68a[41],ReportId:19},{field:_0xa68a[176],alias:_0xa68a[177],format:_0xa68a[33],ReportId:19},{field:_0xa68a[183],alias:_0xa68a[184],format:_0xa68a[33],ReportId:19},{field:_0xa68a[178],alias:_0xa68a[179],ReportId:19},{field:_0xa68a[160],alias:_0xa68a[161],ReportId:19},{field:_0xa68a[158],alias:_0xa68a[159],groupBy:1,ReportId:20},{field:_0xa68a[3],alias:_0xa68a[104],function:_0xa68a[105],ReportId:20},{field:_0xa68a[176],alias:_0xa68a[185],function:_0xa68a[66],format:_0xa68a[33],ReportId:20},{field:_0xa68a[186],alias:_0xa68a[187],format:_0xa68a[33],custom:1,ReportId:20},{field:_0xa68a[178],alias:_0xa68a[179],groupBy:1,ReportId:21},{field:_0xa68a[3],alias:_0xa68a[104],function:_0xa68a[105],ReportId:21},{field:_0xa68a[176],alias:_0xa68a[185],function:_0xa68a[66],format:_0xa68a[33],ReportId:21},{field:_0xa68a[186],alias:_0xa68a[187],format:_0xa68a[33],custom:1,ReportId:21},{field:_0xa68a[188],alias:_0xa68a[47],groupBy:1,custom:1,ReportId:22},{field:_0xa68a[3],alias:_0xa68a[104],function:_0xa68a[105],ReportId:22},{field:_0xa68a[176],alias:_0xa68a[185],function:_0xa68a[66],format:_0xa68a[33],ReportId:22},{field:_0xa68a[186],alias:_0xa68a[187],format:_0xa68a[33],custom:1,ReportId:22},{field:_0xa68a[173],alias:_0xa68a[145],format:_0xa68a[146],groupBy:1,ReportId:23},{field:_0xa68a[3],alias:_0xa68a[104],function:_0xa68a[105],ReportId:23},{field:_0xa68a[176],alias:_0xa68a[185],function:_0xa68a[66],format:_0xa68a[33],ReportId:23},{field:_0xa68a[186],alias:_0xa68a[187],format:_0xa68a[33],custom:1,ReportId:23},{field:_0xa68a[46],alias:_0xa68a[47],groupBy:1,orderBy:_0xa68a[156],ReportId:24},{field:_0xa68a[189],alias:_0xa68a[177],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:24},{field:_0xa68a[46],alias:_0xa68a[47],groupBy:1,ReportId:25},{field:_0xa68a[190],alias:_0xa68a[191],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:25},{field:_0xa68a[192],alias:_0xa68a[193],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:25},{field:_0xa68a[194],alias:_0xa68a[195],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:25},{field:_0xa68a[46],alias:_0xa68a[47],ReportId:26},{field:_0xa68a[196],alias:_0xa68a[197],ReportId:26},{field:_0xa68a[198],alias:_0xa68a[199],ReportId:26},{field:_0xa68a[200],alias:_0xa68a[201],ReportId:26},{field:_0xa68a[176],alias:_0xa68a[177],format:_0xa68a[33],ReportId:26},{field:_0xa68a[46],alias:_0xa68a[47],ReportId:27},{field:_0xa68a[202],alias:_0xa68a[203],ReportId:27},{field:_0xa68a[158],alias:_0xa68a[204],ReportId:27},{field:_0xa68a[200],alias:_0xa68a[159],ReportId:27},{field:_0xa68a[196],alias:_0xa68a[197],ReportId:27},{field:_0xa68a[198],alias:_0xa68a[199],ReportId:27},{field:_0xa68a[189],alias:_0xa68a[177],format:_0xa68a[33],custom:1,ReportId:27},{field:_0xa68a[46],alias:_0xa68a[47],groupBy:1,orderBy:_0xa68a[156],ReportId:28},{field:_0xa68a[200],alias:_0xa68a[205],groupBy:1,orderBy:_0xa68a[156],ReportId:28},{field:_0xa68a[189],alias:_0xa68a[177],function:_0xa68a[66],format:_0xa68a[33],custom:1,ReportId:28},{field:_0xa68a[206],alias:_0xa68a[207],ReportId:29},{field:_0xa68a[3],alias:_0xa68a[4],ReportId:29},{field:_0xa68a[166],alias:_0xa68a[182],ReportId:29},{field:_0xa68a[208],alias:_0xa68a[30],ReportId:29},{field:_0xa68a[209],alias:_0xa68a[210],orderBy:_0xa68a[156],ReportId:29},{field:_0xa68a[211],alias:_0xa68a[212],ReportId:29},{field:_0xa68a[213],alias:_0xa68a[177],format:_0xa68a[33],custom:1,ReportId:29},{field:_0xa68a[3],alias:_0xa68a[214],ReportId:30},{field:_0xa68a[206],alias:_0xa68a[207],ReportId:30},{field:_0xa68a[166],alias:_0xa68a[215],ReportId:30},{field:_0xa68a[216],alias:_0xa68a[217],ReportId:30},{field:_0xa68a[218],alias:_0xa68a[219],ReportId:30},{field:_0xa68a[220],alias:_0xa68a[47],groupBy:1,ReportId:31},{field:_0xa68a[3],alias:_0xa68a[221],function:_0xa68a[105],ReportId:31},{field:_0xa68a[222],alias:_0xa68a[223],function:_0xa68a[66],ReportId:31},{field:_0xa68a[222],alias:_0xa68a[224],function:_0xa68a[225],ReportId:31},{field:_0xa68a[9],alias:_0xa68a[10],groupBy:1,ReportId:32},{field:_0xa68a[3],alias:_0xa68a[226],function:_0xa68a[105],ReportId:32},{field:_0xa68a[222],alias:_0xa68a[223],function:_0xa68a[66],ReportId:32},{field:_0xa68a[222],alias:_0xa68a[224],function:_0xa68a[225],ReportId:32},{field:_0xa68a[227],alias:_0xa68a[228],ReportId:33},{field:_0xa68a[5],alias:_0xa68a[6],ReportId:33},{field:_0xa68a[173],alias:_0xa68a[229],orderBy:_0xa68a[230],ReportId:33},{field:_0xa68a[231],alias:_0xa68a[232],ReportId:33},{field:_0xa68a[233],alias:_0xa68a[234],ReportId:33},{field:_0xa68a[235],alias:_0xa68a[236],ReportId:33},{field:_0xa68a[237],alias:_0xa68a[238],ReportId:33},{field:_0xa68a[46],alias:_0xa68a[47],ReportId:33},{field:_0xa68a[54],alias:_0xa68a[193],ReportId:33},{field:_0xa68a[178],alias:_0xa68a[179],ReportId:33},{field:_0xa68a[3],alias:_0xa68a[4],ReportId:33},{field:_0xa68a[231],alias:_0xa68a[232],groupBy:true,orderBy:_0xa68a[156],ReportId:34},{field:_0xa68a[239],alias:_0xa68a[104],function:_0xa68a[105],ReportId:34},{field:_0xa68a[240],alias:_0xa68a[241],custom:true,ReportId:34},{field:_0xa68a[227],alias:_0xa68a[228],orderBy:_0xa68a[156],groupBy:true,ReportId:35},{field:_0xa68a[231],alias:_0xa68a[232],groupBy:true,ReportId:35},{field:_0xa68a[239],alias:_0xa68a[242],function:_0xa68a[105],ReportId:35},{field:_0xa68a[243],groupBy:true,orderBy:_0xa68a[156],ReportId:36},{field:_0xa68a[239],alias:_0xa68a[244],function:_0xa68a[105],ReportId:36},{field:_0xa68a[245],alias:_0xa68a[246],custom:true,ReportId:36},{field:_0xa68a[247],alias:_0xa68a[248],custom:true,ReportId:36},{field:_0xa68a[46],alias:_0xa68a[47],groupBy:true,orderBy:_0xa68a[156],ReportId:37},{field:_0xa68a[239],alias:_0xa68a[104],function:_0xa68a[105],ReportId:37},{field:_0xa68a[249],alias:_0xa68a[250],custom:true,ReportId:37},{field:_0xa68a[178],alias:_0xa68a[179],groupBy:true,ReportId:38},{field:_0xa68a[239],alias:_0xa68a[251],function:_0xa68a[105],ReportId:38},{field:_0xa68a[252],alias:_0xa68a[253],custom:true,ReportId:38},{field:_0xa68a[46],alias:_0xa68a[47],groupBy:true,ReportId:39},{field:_0xa68a[178],alias:_0xa68a[179],groupBy:true,ReportId:39},{field:_0xa68a[239],alias:_0xa68a[251],function:_0xa68a[105],ReportId:39},{field:_0xa68a[252],alias:_0xa68a[253],custom:true,ReportId:39},{field:_0xa68a[227],alias:_0xa68a[228],ReportId:40},{field:_0xa68a[5],alias:_0xa68a[6],ReportId:40},{field:_0xa68a[173],alias:_0xa68a[229],orderBy:_0xa68a[230],ReportId:40},{field:_0xa68a[231],alias:_0xa68a[232],ReportId:40},{field:_0xa68a[233],alias:_0xa68a[234],ReportId:40},{field:_0xa68a[235],alias:_0xa68a[236],ReportId:40},{field:_0xa68a[237],alias:_0xa68a[238],ReportId:40},{field:_0xa68a[54],alias:_0xa68a[193],ReportId:40},{field:_0xa68a[3],alias:_0xa68a[4],ReportId:40},{field:_0xa68a[231],alias:_0xa68a[232],groupBy:true,orderBy:_0xa68a[156],ReportId:41},{field:_0xa68a[239],alias:_0xa68a[104],function:_0xa68a[105],ReportId:41},{field:_0xa68a[254],alias:_0xa68a[241],custom:true,ReportId:41},{field:_0xa68a[227],alias:_0xa68a[228],orderBy:_0xa68a[156],groupBy:true,ReportId:42},{field:_0xa68a[231],alias:_0xa68a[232],groupBy:true,ReportId:42},{field:_0xa68a[239],alias:_0xa68a[242],function:_0xa68a[105],ReportId:42},{field:_0xa68a[243],groupBy:true,orderBy:_0xa68a[156],ReportId:43},{field:_0xa68a[239],alias:_0xa68a[244],function:_0xa68a[105],ReportId:43},{field:_0xa68a[245],alias:_0xa68a[246],custom:true,ReportId:43},{field:_0xa68a[247],alias:_0xa68a[248],custom:true,ReportId:43}];return _[_0xa68a[256]](_0x4e32x2,_0xa68a[255])}
\ No newline at end of file
+var _0x95d5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x65\x78\x70\x6F\x72\x74\x73","\x75\x6E\x69\x71\x75\x65\x69\x64","\x55\x6E\x69\x71\x75\x65\x49\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x71\x75\x65\x75\x65","\x51\x75\x65\x75\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x51\x75\x65\x75\x65\x4A\x6F\x69\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x51\x75\x65\x75\x65\x4C\x65\x61\x76\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x51\x75\x65\x75\x65\x41\x62\x61\x6E\x64\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x51\x75\x65\x75\x65\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x51\x75\x65\x75\x65\x45\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x51\x75\x65\x75\x65\x45\x78\x69\x74\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x72\x65\x61\x73\x6F\x6E","\x51\x75\x65\x75\x65\x45\x78\x69\x74\x52\x65\x61\x73\x6F\x6E","\x65\x78\x74\x65\x6E","\x44\x49\x44","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74\x29","\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x54\x69\x6D\x65","\x49\x46\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x3D\x31\x2C\x68\x6F\x6C\x64\x74\x69\x6D\x65\x2C\x6E\x75\x6C\x6C\x29","\x41\x6E\x73\x77\x65\x72\x54\x69\x6D\x65","\x43\x61\x6C\x6C\x65\x72\x49\x44","\x53\x74\x61\x72\x74\x54\x69\x6D\x65","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x3D\x31\x20\x54\x48\x45\x4E\x20\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74\x20\x45\x4C\x53\x45\x20\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x4C\x65\x61\x76\x65\x41\x74\x20\x45\x4E\x44","\x45\x6E\x64\x54\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x3D\x31\x20\x54\x48\x45\x4E\x20\x27\x59\x45\x53\x27\x20\x45\x4C\x53\x45\x20\x27\x4E\x4F\x27\x20\x45\x4E\x44","\x41\x6E\x73\x77\x65\x72\x65\x64","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x41\x67\x65\x6E\x74","\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64\x41\x74","\x41\x67\x65\x6E\x74\x43\x61\x6C\x6C\x65\x64\x41\x74","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74\x41\x74","\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74\x41\x74","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x61\x67\x65\x6E\x74\x61\x63\x77","\x41\x67\x65\x6E\x74\x41\x43\x57","\x61\x63\x77\x74\x69\x6D\x65","\x41\x67\x65\x6E\x74\x41\x43\x57\x54\x69\x6D\x65","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x72\x65\x61\x73\x6F\x6E","\x48\x61\x6E\x67\x75\x70\x52\x65\x61\x73\x6F\x6E","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x4C\x61\x73\x74\x45\x76\x65\x6E\x74","\x43\x6F\x6D\x70\x6C\x65\x74\x65\x64","\x53\x55\x4D","\x54\x6F\x74\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x54\x6F\x74\x41\x43\x57\x54\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65\x20\x2B\x20\x61\x63\x77\x74\x69\x6D\x65","\x54\x6F\x74\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x74\x61\x6C\x6B\x74\x69\x6D\x65\x29\x29","\x41\x76\x67\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x61\x63\x77\x74\x69\x6D\x65\x29\x29","\x41\x76\x67\x41\x43\x57\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x53\x55\x4D\x28\x74\x61\x6C\x6B\x74\x69\x6D\x65\x20\x2B\x20\x61\x63\x77\x74\x69\x6D\x65\x29\x2F\x43\x4F\x55\x4E\x54\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x29","\x41\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x54\x6F\x74\x20\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x54\x6F\x74\x20\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x54\x6F\x74\x20\x41\x43\x57\x54\x69\x6D\x65","\x54\x6F\x74\x20\x48\x61\x6E\x64\x6C\x65\x20\x54\x69\x6D\x65","\x41\x76\x67\x20\x54\x61\x6C\x6B\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x29\x29","\x41\x76\x67\x20\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x41\x76\x67\x20\x41\x43\x57\x54\x69\x6D\x65","\x41\x76\x67\x20\x48\x61\x6E\x64\x6C\x65\x20\x54\x69\x6D\x65","\x54\x6F\x74\x20\x41\x6E\x73\x77\x65\x72\x65\x64","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x3C\x31\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x6E\x73\x77\x65\x72\x65\x64\x20\x3C\x31\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x3C\x31\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65\x20\x3C\x31\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x31\x30\x20\x41\x4E\x44\x20\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3C\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x6E\x73\x77\x65\x72\x65\x64\x20\x31\x30\x2D\x32\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x31\x30\x20\x41\x4E\x44\x20\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3C\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65\x20\x31\x30\x2D\x32\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x32\x30\x20\x41\x4E\x44\x20\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3C\x33\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x6E\x73\x77\x65\x72\x65\x64\x20\x32\x30\x2D\x33\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x32\x30\x20\x41\x4E\x44\x20\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3C\x33\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65\x20\x32\x30\x2D\x33\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x33\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x6E\x73\x77\x65\x72\x65\x64\x20\x3E\x33\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x68\x6F\x6C\x64\x74\x69\x6D\x65\x20\x3E\x3D\x33\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65\x20\x3E\x33\x30\x73","\x52\x65\x61\x73\x6F\x6E","\x43\x61\x6C\x6C\x73","\x43\x4F\x55\x4E\x54","\x48\x6F\x75\x72","\x48\x4F\x55\x52","\x4A\x6F\x69\x6E\x41\x74","\x4C\x65\x61\x76\x65\x41\x74","\x41\x62\x61\x6E\x64\x6F\x6E","\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x41\x74","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x52\x65\x61\x73\x6F\x6E","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x51\x75\x65\x75\x65\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x41\x62\x61\x6E\x64\x6F\x6E\x20\x54\x69\x6D\x65","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x45\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29","\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x54\x6F\x74\x20\x41\x62\x61\x6E\x64\x6F\x6E\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x29\x29","\x41\x76\x67\x41\x62\x61\x6E\x64\x6F\x6E\x54\x69\x6D\x65","\x54\x6F\x74\x20\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x54\x69\x6D\x65","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x45\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x29\x29","\x41\x76\x67\x20\x55\x6E\x6D\x61\x6E\x61\x67\x65\x64\x20\x54\x49\x6D\x65","\x54\x6F\x74\x20\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x31\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x3C\x31\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x31\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x2F\x20\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x52\x61\x74\x65\x3C\x31\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x31\x30\x20\x41\x4E\x44\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x36\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x31\x30\x2D\x36\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x31\x30\x20\x41\x4E\x44\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x36\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x20\x2F\x20\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x52\x61\x74\x65\x20\x31\x30\x2D\x36\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x36\x30\x20\x41\x4E\x44\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x31\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x36\x30\x2D\x31\x32\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x36\x30\x20\x41\x4E\x44\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3C\x31\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x20\x20\x2F\x20\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x52\x61\x74\x65\x20\x36\x30\x2D\x31\x32\x30\x73","\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x31\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x3E\x31\x32\x30\x73","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x49\x46\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74\x29\x20\x3E\x3D\x31\x32\x30\x2C\x31\x2C\x4E\x55\x4C\x4C\x29\x29\x20\x20\x2F\x20\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x29\x20\x2A\x31\x30\x30\x2C\x31\x29","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64\x20\x52\x61\x74\x65\x3E\x31\x32\x30\x73","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x61\x74","\x44\x61\x74\x65","\x44\x41\x54\x45","\x4F\x66\x66\x65\x72\x65\x64","\x43\x4F\x55\x4E\x54\x20\x44\x49\x53\x54\x49\x4E\x43\x54","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74\x29\x29\x29","\x52\x4F\x55\x4E\x44\x28\x53\x55\x4D\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x29\x2F\x43\x4F\x55\x4E\x54\x28\x44\x49\x53\x54\x49\x4E\x43\x54\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x29\x2A\x31\x30\x30\x2C\x31\x29","\x41\x6E\x73\x77\x65\x72\x20\x52\x61\x74\x65","\x44\x41\x59\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x61\x74\x29","\x44\x61\x79","\x44\x41\x59\x4E\x41\x4D\x45\x28\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x61\x74\x29","\x44\x61\x79\x4F\x66\x57\x65\x65\x6B","\x41\x53\x43","\x55\x6E\x69\x71\x75\x65\x49\x44","\x74\x79\x70\x65","\x54\x79\x70\x65","\x74\x61\x67","\x54\x61\x67","\x73\x6F\x75\x72\x63\x65","\x53\x6F\x75\x72\x63\x65","\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E","\x44\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x44\x65\x73\x74\x43\x68\x61\x6E\x6E\x65\x6C","\x6C\x61\x73\x74\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x4C\x61\x73\x74\x41\x70\x70","\x6C\x61\x73\x74\x64\x61\x74\x61","\x4C\x61\x73\x74\x44\x61\x74\x61","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x44\x75\x72\x61\x74\x69\x6F\x6E","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x41\x67\x65\x6E\x74\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x43\x61\x6C\x6C\x65\x72\x49\x64","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x42\x69\x6C\x6C\x73\x65\x63","\x54\x6F\x74\x20\x44\x75\x72\x61\x74\x69\x6F\x6E","\x52\x4F\x55\x4E\x44\x28\x41\x56\x47\x28\x64\x75\x72\x61\x74\x69\x6F\x6E\x29\x29","\x41\x76\x67\x20\x44\x75\x72\x61\x74\x69\x6F\x6E","\x53\x55\x42\x53\x54\x52\x49\x4E\x47\x5F\x49\x4E\x44\x45\x58\x28\x63\x68\x61\x6E\x6E\x65\x6C\x2C\x20\x22\x2D\x22\x2C\x20\x31\x29","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x6E\x74\x65\x72\x41\x74\x29","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x74\x79\x70\x65\x3D\x27\x4C\x4F\x47\x49\x4E\x27\x20\x54\x48\x45\x4E\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x6E\x74\x65\x72\x41\x74\x29\x20\x45\x4E\x44","\x4C\x6F\x67\x69\x6E\x20\x54\x69\x6D\x65","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x74\x79\x70\x65\x3D\x27\x54\x41\x4C\x4B\x49\x4E\x47\x27\x20\x54\x48\x45\x4E\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x6E\x74\x65\x72\x41\x74\x29\x20\x45\x4E\x44","\x54\x61\x6C\x6B\x20\x54\x69\x6D\x65","\x43\x41\x53\x45\x20\x57\x48\x45\x4E\x20\x74\x79\x70\x65\x3D\x27\x50\x41\x55\x53\x45\x27\x20\x54\x48\x45\x4E\x20\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x78\x69\x74\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x65\x6E\x74\x65\x72\x41\x74\x29\x20\x45\x4E\x44","\x50\x61\x75\x73\x65\x20\x54\x69\x6D\x65","\x65\x6E\x74\x65\x72\x41\x74","\x45\x6E\x74\x65\x72\x41\x74","\x65\x78\x69\x74\x41\x74","\x45\x78\x69\x74\x41\x74","\x64\x61\x74\x61\x31","\x50\x61\x75\x73\x65","\x69\x6E\x74\x65\x72\x66\x61\x63\x65","\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x45\x76\x65\x6E\x74","\x50\x61\x75\x73\x65\x54\x79\x70\x65","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x6E\x61\x6D\x65","\x50\x72\x6F\x6A\x65\x63\x74\x20\x4E\x61\x6D\x65","\x64\x6E\x69\x64","\x6A\x6F\x69\x6E\x41\x74","\x53\x74\x61\x72\x74\x20\x54\x69\x6D\x65","\x6C\x65\x61\x76\x65\x41\x74","\x45\x6E\x64\x20\x54\x69\x6D\x65","\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x6C\x65\x61\x76\x65\x41\x74\x29\x2D\x55\x4E\x49\x58\x5F\x54\x49\x4D\x45\x53\x54\x41\x4D\x50\x28\x6A\x6F\x69\x6E\x41\x74\x29","\x55\x6E\x69\x71\x75\x65\x20\x49\x64","\x43\x61\x6C\x6C\x65\x72\x20\x49\x64","\x6E\x6F\x64\x65","\x42\x6C\x6F\x63\x6B","\x64\x61\x74\x61","\x44\x61\x74\x61","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x52\x65\x63\x6F\x72\x64\x65\x64\x20\x43\x61\x6C\x6C\x73","\x72\x61\x74\x69\x6E\x67","\x54\x6F\x74\x61\x6C\x20\x52\x61\x74\x69\x6E\x67","\x41\x76\x67\x20\x52\x61\x74\x69\x6E\x67","\x41\x56\x47","\x52\x61\x74\x65\x64\x20\x43\x61\x6C\x6C\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x43\x61\x6D\x70\x61\x69\x67\x6E\x20\x4E\x61\x6D\x65","\x4C\x61\x73\x74\x43\x61\x6C\x6C\x41\x74","\x44\x45\x53\x43","\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x53\x74\x61\x74\x65","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x47\x6C\x6F\x62\x61\x6C\x20\x43\x6F\x75\x6E\x74","\x64\x72\x6F\x70\x72\x65\x61\x73\x6F\x6E","\x44\x72\x6F\x70\x20\x52\x65\x61\x73\x6F\x6E","\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74","\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74","\x69\x64","\x52\x4F\x55\x4E\x44\x28\x63\x6F\x75\x6E\x74\x28\x69\x64\x29\x2A\x31\x30\x30\x2F\x28\x53\x45\x4C\x45\x43\x54\x20\x43\x4F\x55\x4E\x54\x28\x2A\x29\x20\x46\x52\x4F\x4D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79\x20\x57\x48\x45\x52\x45\x20\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x3D\x27\x71\x75\x65\x75\x65\x27\x29\x2C\x32\x29","\x43\x61\x6C\x6C\x73\x20\x28\x25\x29","\x54\x6F\x74\x61\x6C\x20\x43\x61\x6C\x6C\x73","\x4C\x69\x73\x74\x49\x64","\x43\x6F\x6E\x74\x61\x63\x74\x73","\x53\x55\x4D\x28\x49\x46\x28\x73\x74\x61\x74\x65\x3D\x34\x2C\x31\x2C\x30\x29\x29","\x4D\x61\x6E\x61\x67\x65\x64","\x52\x4F\x55\x4E\x44\x28\x53\x55\x4D\x28\x49\x46\x28\x73\x74\x61\x74\x65\x3D\x34\x2C\x31\x2C\x30\x29\x29\x2F\x43\x4F\x55\x4E\x54\x28\x2A\x29\x2A\x31\x30\x30\x2C\x31\x29","\x50\x65\x6E\x65\x74\x72\x61\x74\x69\x6F\x6E\x20\x52\x61\x74\x65","\x53\x45\x43\x5F\x54\x4F\x5F\x54\x49\x4D\x45\x28\x41\x56\x47\x28\x74\x61\x6C\x6B\x74\x69\x6D\x65\x29\x29","\x41\x56\x47\x20\x54\x61\x6C\x6B\x20\x54\x69\x6D\x65","\x54\x6F\x74\x61\x6C","\x52\x4F\x55\x4E\x44\x28\x43\x4F\x55\x4E\x54\x28\x69\x64\x29\x2A\x31\x30\x30\x2F\x28\x53\x45\x4C\x45\x43\x54\x20\x43\x4F\x55\x4E\x54\x28\x2A\x29\x20\x46\x52\x4F\x4D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C\x20\x57\x48\x45\x52\x45\x20\x73\x74\x61\x74\x65\x3D\x34\x20\x61\x6E\x64\x20\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x3D\x27\x71\x75\x65\x75\x65\x27\x29\x2C\x32\x29","\x54\x6F\x74\x61\x6C\x20\x28\x25\x29","\x52\x4F\x55\x4E\x44\x28\x63\x6F\x75\x6E\x74\x28\x69\x64\x29\x2A\x31\x30\x30\x2F\x28\x53\x45\x4C\x45\x43\x54\x20\x43\x4F\x55\x4E\x54\x28\x2A\x29\x20\x46\x52\x4F\x4D\x20\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79\x20\x57\x48\x45\x52\x45\x20\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65\x3D\x27\x69\x76\x72\x27\x29\x2C\x32\x29","\x52\x65\x70\x6F\x72\x74\x49\x64","\x67\x72\x6F\x75\x70\x42\x79"];_0x95d5[0];var _=require(_0x95d5[1]);module[_0x95d5[2]]= function(){var _0x3504x2=[{field:_0x95d5[3],alias:_0x95d5[4],ReportId:1},{field:_0x95d5[5],alias:_0x95d5[6],ReportId:1},{field:_0x95d5[7],alias:_0x95d5[8],ReportId:1},{field:_0x95d5[9],alias:_0x95d5[10],ReportId:1},{field:_0x95d5[11],alias:_0x95d5[12],ReportId:1},{field:_0x95d5[13],alias:_0x95d5[14],ReportId:1},{field:_0x95d5[15],alias:_0x95d5[16],ReportId:1},{field:_0x95d5[17],alias:_0x95d5[18],ReportId:1},{field:_0x95d5[19],alias:_0x95d5[20],ReportId:1},{field:_0x95d5[21],alias:_0x95d5[22],ReportId:1},{field:_0x95d5[23],alias:_0x95d5[24],ReportId:1},{field:_0x95d5[25],alias:_0x95d5[26],ReportId:1},{field:_0x95d5[27],alias:_0x95d5[28],ReportId:1},{field:_0x95d5[29],alias:_0x95d5[30],ReportId:1},{field:_0x95d5[31],alias:_0x95d5[32],format:_0x95d5[33],custom:1,ReportId:1},{field:_0x95d5[34],alias:_0x95d5[35],format:_0x95d5[33],custom:1,ReportId:1},{field:_0x95d5[36],alias:_0x95d5[37],format:_0x95d5[33],custom:1,ReportId:1},{field:_0x95d5[5],alias:_0x95d5[38],ReportId:2},{field:_0x95d5[9],alias:_0x95d5[10],ReportId:2},{field:_0x95d5[11],alias:_0x95d5[39],ReportId:2},{field:_0x95d5[40],alias:_0x95d5[41],custom:1,ReportId:2},{field:_0x95d5[42],alias:_0x95d5[43],format:_0x95d5[33],ReportId:2},{field:_0x95d5[44],alias:_0x95d5[45],custom:1,ReportId:2},{field:_0x95d5[3],alias:_0x95d5[4],ReportId:3},{field:_0x95d5[5],alias:_0x95d5[6],ReportId:3},{field:_0x95d5[7],alias:_0x95d5[8],ReportId:3},{field:_0x95d5[9],alias:_0x95d5[10],ReportId:3},{field:_0x95d5[46],alias:_0x95d5[47],ReportId:3},{field:_0x95d5[48],alias:_0x95d5[49],ReportId:3},{field:_0x95d5[50],alias:_0x95d5[51],ReportId:3},{field:_0x95d5[52],alias:_0x95d5[53],ReportId:3},{field:_0x95d5[42],alias:_0x95d5[37],ReportId:3},{field:_0x95d5[54],alias:_0x95d5[32],ReportId:3},{field:_0x95d5[55],alias:_0x95d5[56],ReportId:3},{field:_0x95d5[57],alias:_0x95d5[58],ReportId:3},{field:_0x95d5[59],alias:_0x95d5[60],ReportId:3},{field:_0x95d5[61],alias:_0x95d5[62],ReportId:3},{field:_0x95d5[63],alias:_0x95d5[64],ReportId:3},{field:_0x95d5[29],alias:_0x95d5[30],ReportId:3},{field:_0x95d5[46],alias:_0x95d5[47],groupBy:1,ReportId:4},{field:_0x95d5[59],alias:_0x95d5[65],function:_0x95d5[66],ReportId:4},{field:_0x95d5[54],alias:_0x95d5[67],function:_0x95d5[66],format:_0x95d5[33],ReportId:4},{field:_0x95d5[57],alias:_0x95d5[68],function:_0x95d5[66],format:_0x95d5[33],ReportId:4},{field:_0x95d5[69],alias:_0x95d5[70],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:4},{field:_0x95d5[71],alias:_0x95d5[72],format:_0x95d5[33],custom:1,ReportId:4},{field:_0x95d5[73],alias:_0x95d5[74],format:_0x95d5[33],custom:1,ReportId:4},{field:_0x95d5[75],alias:_0x95d5[76],format:_0x95d5[33],custom:1,ReportId:4},{field:_0x95d5[9],alias:_0x95d5[10],groupBy:1,ReportId:5},{field:_0x95d5[59],alias:_0x95d5[65],function:_0x95d5[66],ReportId:5},{field:_0x95d5[54],alias:_0x95d5[77],function:_0x95d5[66],format:_0x95d5[33],ReportId:5},{field:_0x95d5[42],alias:_0x95d5[78],function:_0x95d5[66],format:_0x95d5[33],ReportId:5},{field:_0x95d5[57],alias:_0x95d5[79],function:_0x95d5[66],format:_0x95d5[33],ReportId:5},{field:_0x95d5[69],alias:_0x95d5[80],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:5},{field:_0x95d5[71],alias:_0x95d5[81],format:_0x95d5[33],custom:1,ReportId:5},{field:_0x95d5[82],alias:_0x95d5[83],format:_0x95d5[33],custom:1,ReportId:5},{field:_0x95d5[73],alias:_0x95d5[84],format:_0x95d5[33],custom:1,ReportId:5},{field:_0x95d5[75],alias:_0x95d5[85],format:_0x95d5[33],custom:1,ReportId:5},{field:_0x95d5[9],alias:_0x95d5[10],groupBy:1,ReportId:6},{field:_0x95d5[59],alias:_0x95d5[86],function:_0x95d5[66],ReportId:6},{field:_0x95d5[87],alias:_0x95d5[88],custom:1,ReportId:6},{field:_0x95d5[89],alias:_0x95d5[90],custom:1,ReportId:6},{field:_0x95d5[91],alias:_0x95d5[92],custom:1,ReportId:6},{field:_0x95d5[93],alias:_0x95d5[94],custom:1,ReportId:6},{field:_0x95d5[95],alias:_0x95d5[96],custom:1,ReportId:6},{field:_0x95d5[97],alias:_0x95d5[98],custom:1,ReportId:6},{field:_0x95d5[99],alias:_0x95d5[100],custom:1,ReportId:6},{field:_0x95d5[101],alias:_0x95d5[102],custom:1,ReportId:6},{field:_0x95d5[61],alias:_0x95d5[103],groupBy:1,ReportId:7},{field:_0x95d5[3],alias:_0x95d5[104],function:_0x95d5[105],ReportId:7},{field:_0x95d5[50],alias:_0x95d5[106],format:_0x95d5[107],groupBy:1,ReportId:8},{field:_0x95d5[59],alias:_0x95d5[86],function:_0x95d5[66],ReportId:8},{field:_0x95d5[87],alias:_0x95d5[88],custom:1,ReportId:8},{field:_0x95d5[91],alias:_0x95d5[92],custom:1,ReportId:8},{field:_0x95d5[95],alias:_0x95d5[96],custom:1,ReportId:8},{field:_0x95d5[99],alias:_0x95d5[100],custom:1,ReportId:8},{field:_0x95d5[3],alias:_0x95d5[4],ReportId:9},{field:_0x95d5[5],alias:_0x95d5[6],ReportId:9},{field:_0x95d5[9],alias:_0x95d5[10],ReportId:9},{field:_0x95d5[11],alias:_0x95d5[108],ReportId:9},{field:_0x95d5[13],alias:_0x95d5[109],ReportId:9},{field:_0x95d5[15],alias:_0x95d5[110],ReportId:9},{field:_0x95d5[17],alias:_0x95d5[111],ReportId:9},{field:_0x95d5[23],alias:_0x95d5[112],ReportId:9},{field:_0x95d5[25],alias:_0x95d5[113],ReportId:9},{field:_0x95d5[27],alias:_0x95d5[114],ReportId:9},{field:_0x95d5[115],alias:_0x95d5[116],ReportId:9},{field:_0x95d5[29],alias:_0x95d5[30],ReportId:9},{field:_0x95d5[34],alias:_0x95d5[117],format:_0x95d5[33],custom:1,ReportId:9},{field:_0x95d5[118],alias:_0x95d5[119],format:_0x95d5[33],custom:1,ReportId:9},{field:_0x95d5[9],alias:_0x95d5[10],groupBy:1,ReportId:10},{field:_0x95d5[15],alias:_0x95d5[120],function:_0x95d5[66],ReportId:10},{field:_0x95d5[23],alias:_0x95d5[112],function:_0x95d5[66],ReportId:10},{field:_0x95d5[34],alias:_0x95d5[121],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:10},{field:_0x95d5[122],alias:_0x95d5[123],format:_0x95d5[33],custom:1,ReportId:10},{field:_0x95d5[118],alias:_0x95d5[124],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:10},{field:_0x95d5[125],alias:_0x95d5[126],format:_0x95d5[33],custom:1,ReportId:10},{field:_0x95d5[27],alias:_0x95d5[103],groupBy:1,ReportId:11},{field:_0x95d5[23],alias:_0x95d5[104],function:_0x95d5[66],ReportId:11},{field:_0x95d5[118],alias:_0x95d5[124],function:_0x95d5[66],custom:1,ReportId:11},{field:_0x95d5[9],alias:_0x95d5[10],groupBy:1,ReportId:12},{field:_0x95d5[15],alias:_0x95d5[127],function:_0x95d5[66],ReportId:12},{field:_0x95d5[128],alias:_0x95d5[129],custom:1,ReportId:12},{field:_0x95d5[130],alias:_0x95d5[131],custom:1,ReportId:12},{field:_0x95d5[132],alias:_0x95d5[133],custom:1,ReportId:12},{field:_0x95d5[134],alias:_0x95d5[135],custom:1,ReportId:12},{field:_0x95d5[136],alias:_0x95d5[137],custom:1,ReportId:12},{field:_0x95d5[138],alias:_0x95d5[139],custom:1,ReportId:12},{field:_0x95d5[140],alias:_0x95d5[141],custom:1,ReportId:12},{field:_0x95d5[142],alias:_0x95d5[143],custom:1,ReportId:12},{field:_0x95d5[144],alias:_0x95d5[145],format:_0x95d5[146],groupBy:1,custom:1,ReportId:13},{field:_0x95d5[3],alias:_0x95d5[147],function:_0x95d5[148],ReportId:13},{field:_0x95d5[19],alias:_0x95d5[65],function:_0x95d5[66],ReportId:13},{field:_0x95d5[15],alias:_0x95d5[120],function:_0x95d5[66],custom:1,ReportId:13},{field:_0x95d5[23],alias:_0x95d5[112],function:_0x95d5[66],custom:1,ReportId:13},{field:_0x95d5[31],alias:_0x95d5[77],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:13},{field:_0x95d5[149],alias:_0x95d5[72],format:_0x95d5[33],custom:1,ReportId:13},{field:_0x95d5[122],alias:_0x95d5[123],format:_0x95d5[33],custom:1,ReportId:13},{field:_0x95d5[144],alias:_0x95d5[106],format:_0x95d5[107],groupBy:1,custom:1,ReportId:14},{field:_0x95d5[3],alias:_0x95d5[147],function:_0x95d5[148],ReportId:14},{field:_0x95d5[19],alias:_0x95d5[45],function:_0x95d5[66],ReportId:14},{field:_0x95d5[150],alias:_0x95d5[151],custom:1,ReportId:14},{field:_0x95d5[15],alias:_0x95d5[120],function:_0x95d5[66],ReportId:14},{field:_0x95d5[23],alias:_0x95d5[112],function:_0x95d5[66],ReportId:14},{field:_0x95d5[31],alias:_0x95d5[77],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:14},{field:_0x95d5[149],alias:_0x95d5[72],format:_0x95d5[33],custom:1,ReportId:14},{field:_0x95d5[122],alias:_0x95d5[123],format:_0x95d5[33],custom:1,ReportId:14},{field:_0x95d5[152],alias:_0x95d5[153],groupBy:1,custom:1,ReportId:15},{field:_0x95d5[3],alias:_0x95d5[147],function:_0x95d5[148],ReportId:15},{field:_0x95d5[19],alias:_0x95d5[45],function:_0x95d5[66],ReportId:15},{field:_0x95d5[150],alias:_0x95d5[151],custom:1,ReportId:15},{field:_0x95d5[15],alias:_0x95d5[120],function:_0x95d5[66],ReportId:15},{field:_0x95d5[23],alias:_0x95d5[112],function:_0x95d5[66],ReportId:15},{field:_0x95d5[31],alias:_0x95d5[77],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:15},{field:_0x95d5[149],alias:_0x95d5[72],format:_0x95d5[33],custom:1,ReportId:15},{field:_0x95d5[122],alias:_0x95d5[123],format:_0x95d5[33],custom:1,ReportId:15},{field:_0x95d5[154],alias:_0x95d5[155],groupBy:1,custom:1,ReportId:16},{field:_0x95d5[3],alias:_0x95d5[147],function:_0x95d5[148],ReportId:16},{field:_0x95d5[19],alias:_0x95d5[45],function:_0x95d5[66],ReportId:16},{field:_0x95d5[150],alias:_0x95d5[151],custom:1,ReportId:16},{field:_0x95d5[15],alias:_0x95d5[120],function:_0x95d5[66],orderBy:_0x95d5[156],ReportId:16},{field:_0x95d5[23],alias:_0x95d5[112],function:_0x95d5[66],ReportId:16},{field:_0x95d5[31],alias:_0x95d5[77],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:16},{field:_0x95d5[149],alias:_0x95d5[72],format:_0x95d5[33],custom:1,ReportId:16},{field:_0x95d5[122],alias:_0x95d5[123],format:_0x95d5[33],custom:1,ReportId:16},{field:_0x95d5[9],alias:_0x95d5[10],groupBy:1,ReportId:17},{field:_0x95d5[3],alias:_0x95d5[147],function:_0x95d5[148],ReportId:17},{field:_0x95d5[19],alias:_0x95d5[45],function:_0x95d5[66],ReportId:17},{field:_0x95d5[150],alias:_0x95d5[151],custom:1,ReportId:17},{field:_0x95d5[15],alias:_0x95d5[120],function:_0x95d5[66],ReportId:17},{field:_0x95d5[23],alias:_0x95d5[112],function:_0x95d5[66],ReportId:17},{field:_0x95d5[31],alias:_0x95d5[77],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:17},{field:_0x95d5[149],alias:_0x95d5[72],format:_0x95d5[33],custom:1,ReportId:17},{field:_0x95d5[122],alias:_0x95d5[123],format:_0x95d5[33],custom:1,ReportId:17},{field:_0x95d5[3],alias:_0x95d5[157],ReportId:18},{field:_0x95d5[158],alias:_0x95d5[159],ReportId:18},{field:_0x95d5[160],alias:_0x95d5[161],ReportId:18},{field:_0x95d5[162],alias:_0x95d5[163],ReportId:18},{field:_0x95d5[164],alias:_0x95d5[165],ReportId:18},{field:_0x95d5[166],alias:_0x95d5[38],ReportId:18},{field:_0x95d5[167],alias:_0x95d5[168],ReportId:18},{field:_0x95d5[169],alias:_0x95d5[170],ReportId:18},{field:_0x95d5[171],alias:_0x95d5[172],ReportId:18},{field:_0x95d5[173],alias:_0x95d5[39],ReportId:18},{field:_0x95d5[174],alias:_0x95d5[37],ReportId:18},{field:_0x95d5[175],alias:_0x95d5[41],ReportId:18},{field:_0x95d5[176],alias:_0x95d5[177],ReportId:18},{field:_0x95d5[178],alias:_0x95d5[179],ReportId:18},{field:_0x95d5[3],alias:_0x95d5[157],ReportId:19},{field:_0x95d5[180],alias:_0x95d5[181],ReportId:19},{field:_0x95d5[162],alias:_0x95d5[163],ReportId:19},{field:_0x95d5[164],alias:_0x95d5[165],ReportId:19},{field:_0x95d5[166],alias:_0x95d5[182],ReportId:19},{field:_0x95d5[173],alias:_0x95d5[39],ReportId:19},{field:_0x95d5[174],alias:_0x95d5[37],ReportId:19},{field:_0x95d5[175],alias:_0x95d5[41],ReportId:19},{field:_0x95d5[176],alias:_0x95d5[177],format:_0x95d5[33],ReportId:19},{field:_0x95d5[183],alias:_0x95d5[184],format:_0x95d5[33],ReportId:19},{field:_0x95d5[178],alias:_0x95d5[179],ReportId:19},{field:_0x95d5[160],alias:_0x95d5[161],ReportId:19},{field:_0x95d5[158],alias:_0x95d5[159],groupBy:1,ReportId:20},{field:_0x95d5[3],alias:_0x95d5[104],function:_0x95d5[105],ReportId:20},{field:_0x95d5[176],alias:_0x95d5[185],function:_0x95d5[66],format:_0x95d5[33],ReportId:20},{field:_0x95d5[186],alias:_0x95d5[187],format:_0x95d5[33],custom:1,ReportId:20},{field:_0x95d5[178],alias:_0x95d5[179],groupBy:1,ReportId:21},{field:_0x95d5[3],alias:_0x95d5[104],function:_0x95d5[105],ReportId:21},{field:_0x95d5[176],alias:_0x95d5[185],function:_0x95d5[66],format:_0x95d5[33],ReportId:21},{field:_0x95d5[186],alias:_0x95d5[187],format:_0x95d5[33],custom:1,ReportId:21},{field:_0x95d5[188],alias:_0x95d5[47],groupBy:1,custom:1,ReportId:22},{field:_0x95d5[3],alias:_0x95d5[104],function:_0x95d5[105],ReportId:22},{field:_0x95d5[176],alias:_0x95d5[185],function:_0x95d5[66],format:_0x95d5[33],ReportId:22},{field:_0x95d5[186],alias:_0x95d5[187],format:_0x95d5[33],custom:1,ReportId:22},{field:_0x95d5[173],alias:_0x95d5[145],format:_0x95d5[146],groupBy:1,ReportId:23},{field:_0x95d5[3],alias:_0x95d5[104],function:_0x95d5[105],ReportId:23},{field:_0x95d5[176],alias:_0x95d5[185],function:_0x95d5[66],format:_0x95d5[33],ReportId:23},{field:_0x95d5[186],alias:_0x95d5[187],format:_0x95d5[33],custom:1,ReportId:23},{field:_0x95d5[46],alias:_0x95d5[47],groupBy:1,orderBy:_0x95d5[156],ReportId:24},{field:_0x95d5[189],alias:_0x95d5[177],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:24},{field:_0x95d5[46],alias:_0x95d5[47],groupBy:1,ReportId:25},{field:_0x95d5[190],alias:_0x95d5[191],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:25},{field:_0x95d5[192],alias:_0x95d5[193],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:25},{field:_0x95d5[194],alias:_0x95d5[195],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:25},{field:_0x95d5[46],alias:_0x95d5[47],ReportId:26},{field:_0x95d5[196],alias:_0x95d5[197],ReportId:26},{field:_0x95d5[198],alias:_0x95d5[199],ReportId:26},{field:_0x95d5[200],alias:_0x95d5[201],ReportId:26},{field:_0x95d5[176],alias:_0x95d5[177],format:_0x95d5[33],ReportId:26},{field:_0x95d5[46],alias:_0x95d5[47],ReportId:27},{field:_0x95d5[202],alias:_0x95d5[203],ReportId:27},{field:_0x95d5[158],alias:_0x95d5[204],ReportId:27},{field:_0x95d5[200],alias:_0x95d5[159],ReportId:27},{field:_0x95d5[196],alias:_0x95d5[197],ReportId:27},{field:_0x95d5[198],alias:_0x95d5[199],ReportId:27},{field:_0x95d5[189],alias:_0x95d5[177],format:_0x95d5[33],custom:1,ReportId:27},{field:_0x95d5[46],alias:_0x95d5[47],groupBy:1,orderBy:_0x95d5[156],ReportId:28},{field:_0x95d5[200],alias:_0x95d5[205],groupBy:1,orderBy:_0x95d5[156],ReportId:28},{field:_0x95d5[189],alias:_0x95d5[177],function:_0x95d5[66],format:_0x95d5[33],custom:1,ReportId:28},{field:_0x95d5[206],alias:_0x95d5[207],ReportId:29},{field:_0x95d5[3],alias:_0x95d5[4],ReportId:29},{field:_0x95d5[166],alias:_0x95d5[182],ReportId:29},{field:_0x95d5[208],alias:_0x95d5[30],ReportId:29},{field:_0x95d5[209],alias:_0x95d5[210],orderBy:_0x95d5[156],ReportId:29},{field:_0x95d5[211],alias:_0x95d5[212],ReportId:29},{field:_0x95d5[213],alias:_0x95d5[177],format:_0x95d5[33],custom:1,ReportId:29},{field:_0x95d5[3],alias:_0x95d5[214],ReportId:30},{field:_0x95d5[206],alias:_0x95d5[207],ReportId:30},{field:_0x95d5[166],alias:_0x95d5[215],ReportId:30},{field:_0x95d5[216],alias:_0x95d5[217],ReportId:30},{field:_0x95d5[218],alias:_0x95d5[219],ReportId:30},{field:_0x95d5[220],alias:_0x95d5[47],groupBy:1,ReportId:31},{field:_0x95d5[3],alias:_0x95d5[221],function:_0x95d5[105],ReportId:31},{field:_0x95d5[222],alias:_0x95d5[223],function:_0x95d5[66],ReportId:31},{field:_0x95d5[222],alias:_0x95d5[224],function:_0x95d5[225],ReportId:31},{field:_0x95d5[9],alias:_0x95d5[10],groupBy:1,ReportId:32},{field:_0x95d5[3],alias:_0x95d5[226],function:_0x95d5[105],ReportId:32},{field:_0x95d5[222],alias:_0x95d5[223],function:_0x95d5[66],ReportId:32},{field:_0x95d5[222],alias:_0x95d5[224],function:_0x95d5[225],ReportId:32},{field:_0x95d5[227],alias:_0x95d5[228],ReportId:33},{field:_0x95d5[5],alias:_0x95d5[6],ReportId:33},{field:_0x95d5[173],alias:_0x95d5[229],orderBy:_0x95d5[230],ReportId:33},{field:_0x95d5[231],alias:_0x95d5[232],ReportId:33},{field:_0x95d5[233],alias:_0x95d5[234],ReportId:33},{field:_0x95d5[235],alias:_0x95d5[236],ReportId:33},{field:_0x95d5[237],alias:_0x95d5[238],ReportId:33},{field:_0x95d5[46],alias:_0x95d5[47],ReportId:33},{field:_0x95d5[54],alias:_0x95d5[193],ReportId:33},{field:_0x95d5[178],alias:_0x95d5[179],ReportId:33},{field:_0x95d5[3],alias:_0x95d5[4],ReportId:33},{field:_0x95d5[231],alias:_0x95d5[232],groupBy:true,orderBy:_0x95d5[156],ReportId:34},{field:_0x95d5[239],alias:_0x95d5[104],function:_0x95d5[105],ReportId:34},{field:_0x95d5[240],alias:_0x95d5[241],custom:true,ReportId:34},{field:_0x95d5[227],alias:_0x95d5[228],orderBy:_0x95d5[156],groupBy:true,ReportId:35},{field:_0x95d5[231],alias:_0x95d5[232],groupBy:true,ReportId:35},{field:_0x95d5[239],alias:_0x95d5[242],function:_0x95d5[105],ReportId:35},{field:_0x95d5[243],groupBy:true,orderBy:_0x95d5[156],ReportId:36},{field:_0x95d5[239],alias:_0x95d5[244],function:_0x95d5[105],ReportId:36},{field:_0x95d5[245],alias:_0x95d5[246],custom:true,ReportId:36},{field:_0x95d5[247],alias:_0x95d5[248],custom:true,ReportId:36},{field:_0x95d5[46],alias:_0x95d5[47],groupBy:true,orderBy:_0x95d5[156],ReportId:37},{field:_0x95d5[239],alias:_0x95d5[104],function:_0x95d5[105],ReportId:37},{field:_0x95d5[249],alias:_0x95d5[250],custom:true,ReportId:37},{field:_0x95d5[178],alias:_0x95d5[179],groupBy:true,ReportId:38},{field:_0x95d5[239],alias:_0x95d5[251],function:_0x95d5[105],ReportId:38},{field:_0x95d5[252],alias:_0x95d5[253],custom:true,ReportId:38},{field:_0x95d5[46],alias:_0x95d5[47],groupBy:true,ReportId:39},{field:_0x95d5[178],alias:_0x95d5[179],groupBy:true,ReportId:39},{field:_0x95d5[239],alias:_0x95d5[251],function:_0x95d5[105],ReportId:39},{field:_0x95d5[252],alias:_0x95d5[253],custom:true,ReportId:39},{field:_0x95d5[227],alias:_0x95d5[228],ReportId:40},{field:_0x95d5[5],alias:_0x95d5[6],ReportId:40},{field:_0x95d5[173],alias:_0x95d5[229],orderBy:_0x95d5[230],ReportId:40},{field:_0x95d5[231],alias:_0x95d5[232],ReportId:40},{field:_0x95d5[233],alias:_0x95d5[234],ReportId:40},{field:_0x95d5[235],alias:_0x95d5[236],ReportId:40},{field:_0x95d5[237],alias:_0x95d5[238],ReportId:40},{field:_0x95d5[54],alias:_0x95d5[193],ReportId:40},{field:_0x95d5[3],alias:_0x95d5[4],ReportId:40},{field:_0x95d5[231],alias:_0x95d5[232],groupBy:true,orderBy:_0x95d5[156],ReportId:41},{field:_0x95d5[239],alias:_0x95d5[104],function:_0x95d5[105],ReportId:41},{field:_0x95d5[254],alias:_0x95d5[241],custom:true,ReportId:41},{field:_0x95d5[227],alias:_0x95d5[228],orderBy:_0x95d5[156],groupBy:true,ReportId:42},{field:_0x95d5[231],alias:_0x95d5[232],groupBy:true,ReportId:42},{field:_0x95d5[239],alias:_0x95d5[242],function:_0x95d5[105],ReportId:42},{field:_0x95d5[243],groupBy:true,orderBy:_0x95d5[156],ReportId:43},{field:_0x95d5[239],alias:_0x95d5[244],function:_0x95d5[105],ReportId:43},{field:_0x95d5[245],alias:_0x95d5[246],custom:true,ReportId:43},{field:_0x95d5[247],alias:_0x95d5[248],custom:true,ReportId:43}];return _[_0x95d5[256]](_0x3504x2,_0x95d5[255])}
\ No newline at end of file
index 64d5e73..4ea77c6 100644 (file)
@@ -1 +1 @@
-var _0x2a11=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x2E\x2F\x64\x65\x66\x61\x75\x6C\x74","\x2E\x2F\x66\x69\x65\x6C\x64\x73"];_0x2a11[0];module[_0x2a11[1]]= {default:require(_0x2a11[2]),fields:require(_0x2a11[3])}
\ No newline at end of file
+var _0xd9ea=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x2E\x2F\x64\x65\x66\x61\x75\x6C\x74","\x2E\x2F\x66\x69\x65\x6C\x64\x73"];_0xd9ea[0];module[_0xd9ea[1]]= {default:require(_0xd9ea[2]),fields:require(_0xd9ea[3])}
\ No newline at end of file
index 1b1ad8d..39335be 100644 (file)
@@ -1 +1 @@
-var _0x2169=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x64\x61\x74\x61\x62\x61\x73\x65","\x44\x52\x49\x56\x45\x52\x3D\x4D\x79\x53\x51\x4C\x3B\x53\x45\x52\x56\x45\x52\x3D\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31\x3B\x55\x49\x44\x3D\x78\x63\x61\x6C\x6C\x3B\x50\x57\x44\x3D\x78\x43\x40\x4C\x4C\x31\x32\x33\x34\x3B\x44\x41\x54\x41\x42\x41\x53\x45\x3D\x6D\x6F\x74\x69\x6F\x6E\x32","\x78\x63\x61\x6C\x6C\x79\x20\x6D\x6F\x74\x69\x6F\x6E\x20\x64\x62\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x4F\x44\x42\x43","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x4F\x44\x42\x43\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63"];_0x2169[0];var db=require(_0x2169[2])[_0x2169[1]];var logger=require(_0x2169[4])(_0x2169[3]);var odbc=[{id:1,name:_0x2169[5],dsn:_0x2169[6],description:_0x2169[7]}];exports[_0x2169[8]]= function(){return db[_0x2169[16]][_0x2169[15]](odbc,{ignoreDuplicates:true,individualHooks:true})[_0x2169[14]](function(){logger[_0x2169[13]](_0x2169[12])})[_0x2169[11]](function(_0x3587x4){logger[_0x2169[10]](_0x2169[9])})}
\ No newline at end of file
+var _0xfe76=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x64\x61\x74\x61\x62\x61\x73\x65","\x44\x52\x49\x56\x45\x52\x3D\x4D\x79\x53\x51\x4C\x3B\x53\x45\x52\x56\x45\x52\x3D\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31\x3B\x55\x49\x44\x3D\x78\x63\x61\x6C\x6C\x3B\x50\x57\x44\x3D\x78\x43\x40\x4C\x4C\x31\x32\x33\x34\x3B\x44\x41\x54\x41\x42\x41\x53\x45\x3D\x6D\x6F\x74\x69\x6F\x6E\x32","\x78\x63\x61\x6C\x6C\x79\x20\x6D\x6F\x74\x69\x6F\x6E\x20\x64\x62\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x4F\x44\x42\x43","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x4F\x44\x42\x43\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63"];_0xfe76[0];var db=require(_0xfe76[2])[_0xfe76[1]];var logger=require(_0xfe76[4])(_0xfe76[3]);var odbc=[{id:1,name:_0xfe76[5],dsn:_0xfe76[6],description:_0xfe76[7]}];exports[_0xfe76[8]]= function(){return db[_0xfe76[16]][_0xfe76[15]](odbc,{ignoreDuplicates:true,individualHooks:true})[_0xfe76[14]](function(){logger[_0xfe76[13]](_0xfe76[12])})[_0xfe76[11]](function(_0x7213x4){logger[_0xfe76[10]](_0xfe76[9])})}
\ No newline at end of file
index 6a92b05..4389281 100644 (file)
@@ -1 +1 @@
-var _0xb811=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x70\x61\x74\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x78\x6D\x6C","\x2E\x78\x6D\x6C","\x6A\x6F\x69\x6E","\x75\x74\x66\x2D\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x41\x75\x74\x6F\x41\x74\x74\x65\x6E\x64\x61\x6E\x74","\x42\x61\x73\x69\x63\x20\x49\x56\x52\x20\x73\x61\x6D\x70\x6C\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x43\x53\x49","\x43\x75\x73\x74\x6F\x6D\x65\x72\x20\x53\x61\x74\x69\x73\x66\x61\x63\x74\x69\x6F\x6E\x20\x49\x56\x52\x20\x73\x61\x6D\x70\x6C\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x4F\x72\x64\x65\x72\x73","\x4F\x72\x64\x65\x72\x20\x44\x42\x20\x49\x56\x52\x20\x73\x61\x6D\x70\x6C\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x53\x75\x72\x76\x65\x79","\x53\x75\x72\x76\x65\x79\x20\x49\x56\x52\x20\x73\x61\x6D\x70\x6C\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x50\x72\x6F\x6A\x65\x63\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x50\x72\x6F\x6A\x65\x63\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74"];_0xb811[0];var fs=require(_0xb811[1]);var path=require(_0xb811[2]);var db=require(_0xb811[4])[_0xb811[3]];var logger=require(_0xb811[6])(_0xb811[5]);var getXml=function(_0xde62x6){return fs[_0xb811[11]](path[_0xb811[9]](__dirname,_0xb811[7],_0xde62x6+ _0xb811[8]),{encoding:_0xb811[10]})};var squareProjects=[{id:1,name:_0xb811[12],description:_0xb811[13],preproduction:getXml(_0xb811[12]),production:getXml(_0xb811[12])},{id:2,name:_0xb811[14],description:_0xb811[15],preproduction:getXml(_0xb811[14]),production:getXml(_0xb811[14])},{id:3,name:_0xb811[16],description:_0xb811[17],preproduction:getXml(_0xb811[16]),production:getXml(_0xb811[16])},{id:4,name:_0xb811[18],description:_0xb811[19],preproduction:getXml(_0xb811[18]),production:getXml(_0xb811[18])}];exports[_0xb811[20]]= function(){return db[_0xb811[28]][_0xb811[27]](squareProjects,{ignoreDuplicates:true,individualHooks:true})[_0xb811[26]](function(){logger[_0xb811[25]](_0xb811[24])})[_0xb811[23]](function(_0xde62x8){logger[_0xb811[22]](_0xb811[21])})}
\ No newline at end of file
+var _0x57cc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x70\x61\x74\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x78\x6D\x6C","\x2E\x78\x6D\x6C","\x6A\x6F\x69\x6E","\x75\x74\x66\x2D\x38","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x41\x75\x74\x6F\x41\x74\x74\x65\x6E\x64\x61\x6E\x74","\x42\x61\x73\x69\x63\x20\x49\x56\x52\x20\x73\x61\x6D\x70\x6C\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x43\x53\x49","\x43\x75\x73\x74\x6F\x6D\x65\x72\x20\x53\x61\x74\x69\x73\x66\x61\x63\x74\x69\x6F\x6E\x20\x49\x56\x52\x20\x73\x61\x6D\x70\x6C\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x4F\x72\x64\x65\x72\x73","\x4F\x72\x64\x65\x72\x20\x44\x42\x20\x49\x56\x52\x20\x73\x61\x6D\x70\x6C\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x53\x75\x72\x76\x65\x79","\x53\x75\x72\x76\x65\x79\x20\x49\x56\x52\x20\x73\x61\x6D\x70\x6C\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x50\x72\x6F\x6A\x65\x63\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x50\x72\x6F\x6A\x65\x63\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74"];_0x57cc[0];var fs=require(_0x57cc[1]);var path=require(_0x57cc[2]);var db=require(_0x57cc[4])[_0x57cc[3]];var logger=require(_0x57cc[6])(_0x57cc[5]);var getXml=function(_0xa74bx6){return fs[_0x57cc[11]](path[_0x57cc[9]](__dirname,_0x57cc[7],_0xa74bx6+ _0x57cc[8]),{encoding:_0x57cc[10]})};var squareProjects=[{id:1,name:_0x57cc[12],description:_0x57cc[13],preproduction:getXml(_0x57cc[12]),production:getXml(_0x57cc[12])},{id:2,name:_0x57cc[14],description:_0x57cc[15],preproduction:getXml(_0x57cc[14]),production:getXml(_0x57cc[14])},{id:3,name:_0x57cc[16],description:_0x57cc[17],preproduction:getXml(_0x57cc[16]),production:getXml(_0x57cc[16])},{id:4,name:_0x57cc[18],description:_0x57cc[19],preproduction:getXml(_0x57cc[18]),production:getXml(_0x57cc[18])}];exports[_0x57cc[20]]= function(){return db[_0x57cc[28]][_0x57cc[27]](squareProjects,{ignoreDuplicates:true,individualHooks:true})[_0x57cc[26]](function(){logger[_0x57cc[25]](_0x57cc[24])})[_0x57cc[23]](function(_0xa74bx8){logger[_0x57cc[22]](_0x57cc[21])})}
\ No newline at end of file
index 86b29f4..5f8b6f5 100644 (file)
@@ -1 +1 @@
-var _0x2d8d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x66\x6F\x72\x75\x6D\x73","\x74\x61\x67\x20\x66\x6F\x72\x75\x6D\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x64\x65\x66\x65\x63\x74\x69\x76\x65","\x74\x61\x67\x20\x64\x65\x66\x65\x63\x74\x69\x76\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x66\x61\x71","\x74\x61\x67\x20\x66\x61\x71\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x69\x6E\x73\x74\x61\x6C\x6C\x61\x74\x69\x6F\x6E","\x74\x61\x67\x20\x69\x6E\x73\x74\x61\x6C\x6C\x61\x74\x69\x6F\x6E\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x61\x62\x6F\x75\x74\x5F\x73\x61\x6C\x65\x73","\x74\x61\x67\x20\x61\x62\x6F\x75\x74\x5F\x73\x61\x6C\x65\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x54\x61\x67\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x54\x61\x67\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x54\x61\x67","\x67\x65\x74\x4E\x61\x6D\x65\x73","\x6E\x61\x6D\x65","\x6D\x61\x70"];_0x2d8d[0];var _=require(_0x2d8d[1]);var db=require(_0x2d8d[3])[_0x2d8d[2]];var logger=require(_0x2d8d[5])(_0x2d8d[4]);var tags=[{id:1,name:_0x2d8d[6],description:_0x2d8d[7]},{id:2,name:_0x2d8d[8],description:_0x2d8d[9]},{id:3,name:_0x2d8d[10],description:_0x2d8d[11]},{id:4,name:_0x2d8d[12],description:_0x2d8d[13]},{id:5,name:_0x2d8d[14],description:_0x2d8d[15]}];exports[_0x2d8d[16]]= function(){return db[_0x2d8d[24]][_0x2d8d[23]](tags,{ignoreDuplicates:true,individualHooks:true})[_0x2d8d[22]](function(){logger[_0x2d8d[21]](_0x2d8d[20])})[_0x2d8d[19]](function(_0x3726x5){logger[_0x2d8d[18]](_0x2d8d[17])})};exports[_0x2d8d[25]]= function(){return _[_0x2d8d[27]](tags,_0x2d8d[26])}
\ No newline at end of file
+var _0x970f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x66\x6F\x72\x75\x6D\x73","\x74\x61\x67\x20\x66\x6F\x72\x75\x6D\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x64\x65\x66\x65\x63\x74\x69\x76\x65","\x74\x61\x67\x20\x64\x65\x66\x65\x63\x74\x69\x76\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x66\x61\x71","\x74\x61\x67\x20\x66\x61\x71\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x69\x6E\x73\x74\x61\x6C\x6C\x61\x74\x69\x6F\x6E","\x74\x61\x67\x20\x69\x6E\x73\x74\x61\x6C\x6C\x61\x74\x69\x6F\x6E\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x61\x62\x6F\x75\x74\x5F\x73\x61\x6C\x65\x73","\x74\x61\x67\x20\x61\x62\x6F\x75\x74\x5F\x73\x61\x6C\x65\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x54\x61\x67\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x54\x61\x67\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x54\x61\x67","\x67\x65\x74\x4E\x61\x6D\x65\x73","\x6E\x61\x6D\x65","\x6D\x61\x70"];_0x970f[0];var _=require(_0x970f[1]);var db=require(_0x970f[3])[_0x970f[2]];var logger=require(_0x970f[5])(_0x970f[4]);var tags=[{id:1,name:_0x970f[6],description:_0x970f[7]},{id:2,name:_0x970f[8],description:_0x970f[9]},{id:3,name:_0x970f[10],description:_0x970f[11]},{id:4,name:_0x970f[12],description:_0x970f[13]},{id:5,name:_0x970f[14],description:_0x970f[15]}];exports[_0x970f[16]]= function(){return db[_0x970f[24]][_0x970f[23]](tags,{ignoreDuplicates:true,individualHooks:true})[_0x970f[22]](function(){logger[_0x970f[21]](_0x970f[20])})[_0x970f[19]](function(_0xd7ffx5){logger[_0x970f[18]](_0x970f[17])})};exports[_0x970f[25]]= function(){return _[_0x970f[27]](tags,_0x970f[26])}
\ No newline at end of file
index f12efea..32429fa 100644 (file)
@@ -1 +1 @@
-var _0x6d5d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x44\x65\x6D\x6F\x20\x54\x65\x61\x6D","\x64\x65\x6D\x6F\x20\x74\x65\x61\x6D\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x54\x65\x61\x6D\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x54\x65\x61\x6D\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x54\x65\x61\x6D"];_0x6d5d[0];var db=require(_0x6d5d[2])[_0x6d5d[1]];var logger=require(_0x6d5d[4])(_0x6d5d[3]);var teams=[{id:1,name:_0x6d5d[5],description:_0x6d5d[6]}];exports[_0x6d5d[7]]= function(){return db[_0x6d5d[17]][_0x6d5d[16]](teams,{ignoreDuplicates:true,individualHooks:true})[_0x6d5d[13]](function(_0xf831x5){for(var _0xf831x6=0;_0xf831x6< _0xf831x5[_0x6d5d[14]];_0xf831x6+= 1){_0xf831x5[_0xf831x6][_0x6d5d[15]]([2,3])}})[_0x6d5d[13]](function(){logger[_0x6d5d[12]](_0x6d5d[11])})[_0x6d5d[10]](function(_0xf831x4){logger[_0x6d5d[9]](_0x6d5d[8])})}
\ No newline at end of file
+var _0x8574=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x44\x65\x6D\x6F\x20\x54\x65\x61\x6D","\x64\x65\x6D\x6F\x20\x74\x65\x61\x6D\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x54\x65\x61\x6D\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x54\x65\x61\x6D\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x54\x65\x61\x6D"];_0x8574[0];var db=require(_0x8574[2])[_0x8574[1]];var logger=require(_0x8574[4])(_0x8574[3]);var teams=[{id:1,name:_0x8574[5],description:_0x8574[6]}];exports[_0x8574[7]]= function(){return db[_0x8574[17]][_0x8574[16]](teams,{ignoreDuplicates:true,individualHooks:true})[_0x8574[13]](function(_0xad8bx5){for(var _0xad8bx6=0;_0xad8bx6< _0xad8bx5[_0x8574[14]];_0xad8bx6+= 1){_0xad8bx5[_0xad8bx6][_0x8574[15]]([2,3])}})[_0x8574[13]](function(){logger[_0x8574[12]](_0x8574[11])})[_0x8574[10]](function(_0xad8bx4){logger[_0x8574[9]](_0x8574[8])})}
\ No newline at end of file
index d7ea3d7..744b330 100644 (file)
@@ -1 +1 @@
-var _0xce53=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x5F","\x61\x6E\x73\x77\x65\x72\x65\x64","\x41\x6E\x73\x77\x65\x72\x65\x64","\x75\x6E\x61\x6E\x73\x77\x65\x72\x65\x64","\x55\x6E\x61\x6E\x73\x77\x65\x72\x65\x64","\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E","\x44\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E","\x71\x75\x65\x75\x65\x73","\x51\x75\x65\x75\x65\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x73\x74\x61\x63\x6B\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x63\x61\x6C\x6C\x73","\x43\x61\x6C\x6C\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x70\x68\x6F\x6E\x65\x2D\x64\x6F\x74\x73","\x61\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x61\x63\x63\x6F\x75\x6E\x74\x2D\x6D\x75\x6C\x74\x69\x70\x6C\x65","\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65","\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x73\x69\x74\x65\x6D\x61\x70","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x6D\x69\x63\x72\x6F\x70\x68\x6F\x6E\x65","\x71\x75\x65\x75\x65\x5F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x51\x75\x65\x75\x65\x20\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x69\x76\x72\x5F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x49\x56\x52\x20\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x76\x6F\x69\x63\x65","\x56\x6F\x69\x63\x65","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x70\x68\x6F\x6E\x65\x2D\x6C\x6F\x67","\x62\x75\x6C\x6C","\x4D\x6F\x74\x69\x6F\x6E\x20\x42\x75\x6C\x6C","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x66\x69\x72\x65","\x63\x75\x73\x74\x6F\x6D","\x6D\x6F\x74\x69\x6F\x6E","\x43\x75\x73\x74\x6F\x6D","\x4D\x6F\x74\x69\x6F\x6E","\x20\x52\x65\x70\x6F\x72\x74\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20","\x69\x63\x6F\x6E\x2D\x6C\x61\x70\x74\x6F\x70\x2D\x63\x68\x72\x6F\x6D\x65\x62\x6F\x6F\x6B","\x69\x63\x6F\x6E\x2D\x63\x6C\x6F\x75\x64"];_0xce53[0];var getQueuesChildren=function(_0xb161x2){_0xb161x2+= _0xce53[1];return [{id:_0xb161x2+ _0xce53[2],text:_0xce53[3]},{id:_0xb161x2+ _0xce53[4],text:_0xce53[5]},{id:_0xb161x2+ _0xce53[6],text:_0xce53[7]}]};var getVoiceChildren=function(_0xb161x2){_0xb161x2+= _0xce53[1];return [{id:_0xb161x2+ _0xce53[8],text:_0xce53[9],icon:_0xce53[10],children:getQueuesChildren(_0xb161x2+ _0xce53[8])},{id:_0xb161x2+ _0xce53[11],text:_0xce53[12],icon:_0xce53[13]},{id:_0xb161x2+ _0xce53[14],text:_0xce53[15],icon:_0xce53[16]},{id:_0xb161x2+ _0xce53[17],text:_0xce53[18],icon:_0xce53[19]},{id:_0xb161x2+ _0xce53[20],text:_0xce53[21],icon:_0xce53[22]}]};var getBullChildren=function(_0xb161x2){_0xb161x2+= _0xce53[1];return [{id:_0xb161x2+ _0xce53[23],text:_0xce53[24],icon:_0xce53[10]},{id:_0xb161x2+ _0xce53[25],text:_0xce53[26],icon:_0xce53[19]}]};var getMotionChildren=function(_0xb161x2){_0xb161x2+= _0xce53[1];return [{id:_0xb161x2+ _0xce53[27],text:_0xce53[28],icon:_0xce53[29],children:getVoiceChildren(_0xb161x2+ _0xce53[27])},{id:_0xb161x2+ _0xce53[30],text:_0xce53[31],icon:_0xce53[32],children:getBullChildren(_0xb161x2+ _0xce53[30])},{id:_0xb161x2+ _0xce53[14],text:_0xce53[15],icon:_0xce53[16]}]};var getTree=function(_0xb161x7){return [{id:_0xb161x7?_0xce53[33]:_0xce53[34],text:(_0xb161x7?_0xce53[35]:_0xce53[36])+ _0xce53[37],icon:_0xce53[38]+ (_0xb161x7?_0xce53[39]:_0xce53[40]),state:{opened:true,selected:true},children:getMotionChildren(_0xb161x7?_0xce53[33]:_0xce53[34])}]};exports[_0xce53[34]]= getTree(false);exports[_0xce53[33]]= getTree(true)
\ No newline at end of file
+var _0xa32d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x5F","\x61\x6E\x73\x77\x65\x72\x65\x64","\x41\x6E\x73\x77\x65\x72\x65\x64","\x75\x6E\x61\x6E\x73\x77\x65\x72\x65\x64","\x55\x6E\x61\x6E\x73\x77\x65\x72\x65\x64","\x64\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E","\x44\x69\x73\x74\x72\x69\x62\x75\x74\x69\x6F\x6E","\x71\x75\x65\x75\x65\x73","\x51\x75\x65\x75\x65\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x73\x74\x61\x63\x6B\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x63\x61\x6C\x6C\x73","\x43\x61\x6C\x6C\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x70\x68\x6F\x6E\x65\x2D\x64\x6F\x74\x73","\x61\x67\x65\x6E\x74\x73","\x41\x67\x65\x6E\x74\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x61\x63\x63\x6F\x75\x6E\x74\x2D\x6D\x75\x6C\x74\x69\x70\x6C\x65","\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65","\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x73\x69\x74\x65\x6D\x61\x70","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x6D\x69\x63\x72\x6F\x70\x68\x6F\x6E\x65","\x71\x75\x65\x75\x65\x5F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x51\x75\x65\x75\x65\x20\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x69\x76\x72\x5F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x49\x56\x52\x20\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x76\x6F\x69\x63\x65","\x56\x6F\x69\x63\x65","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x70\x68\x6F\x6E\x65\x2D\x6C\x6F\x67","\x62\x75\x6C\x6C","\x4D\x6F\x74\x69\x6F\x6E\x20\x42\x75\x6C\x6C","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20\x69\x63\x6F\x6E\x2D\x66\x69\x72\x65","\x63\x75\x73\x74\x6F\x6D","\x6D\x6F\x74\x69\x6F\x6E","\x43\x75\x73\x74\x6F\x6D","\x4D\x6F\x74\x69\x6F\x6E","\x20\x52\x65\x70\x6F\x72\x74\x73","\x69\x63\x6F\x6E\x20\x73\x32\x30\x20","\x69\x63\x6F\x6E\x2D\x6C\x61\x70\x74\x6F\x70\x2D\x63\x68\x72\x6F\x6D\x65\x62\x6F\x6F\x6B","\x69\x63\x6F\x6E\x2D\x63\x6C\x6F\x75\x64"];_0xa32d[0];var getQueuesChildren=function(_0x7d3dx2){_0x7d3dx2+= _0xa32d[1];return [{id:_0x7d3dx2+ _0xa32d[2],text:_0xa32d[3]},{id:_0x7d3dx2+ _0xa32d[4],text:_0xa32d[5]},{id:_0x7d3dx2+ _0xa32d[6],text:_0xa32d[7]}]};var getVoiceChildren=function(_0x7d3dx2){_0x7d3dx2+= _0xa32d[1];return [{id:_0x7d3dx2+ _0xa32d[8],text:_0xa32d[9],icon:_0xa32d[10],children:getQueuesChildren(_0x7d3dx2+ _0xa32d[8])},{id:_0x7d3dx2+ _0xa32d[11],text:_0xa32d[12],icon:_0xa32d[13]},{id:_0x7d3dx2+ _0xa32d[14],text:_0xa32d[15],icon:_0xa32d[16]},{id:_0x7d3dx2+ _0xa32d[17],text:_0xa32d[18],icon:_0xa32d[19]},{id:_0x7d3dx2+ _0xa32d[20],text:_0xa32d[21],icon:_0xa32d[22]}]};var getBullChildren=function(_0x7d3dx2){_0x7d3dx2+= _0xa32d[1];return [{id:_0x7d3dx2+ _0xa32d[23],text:_0xa32d[24],icon:_0xa32d[10]},{id:_0x7d3dx2+ _0xa32d[25],text:_0xa32d[26],icon:_0xa32d[19]}]};var getMotionChildren=function(_0x7d3dx2){_0x7d3dx2+= _0xa32d[1];return [{id:_0x7d3dx2+ _0xa32d[27],text:_0xa32d[28],icon:_0xa32d[29],children:getVoiceChildren(_0x7d3dx2+ _0xa32d[27])},{id:_0x7d3dx2+ _0xa32d[30],text:_0xa32d[31],icon:_0xa32d[32],children:getBullChildren(_0x7d3dx2+ _0xa32d[30])},{id:_0x7d3dx2+ _0xa32d[14],text:_0xa32d[15],icon:_0xa32d[16]}]};var getTree=function(_0x7d3dx7){return [{id:_0x7d3dx7?_0xa32d[33]:_0xa32d[34],text:(_0x7d3dx7?_0xa32d[35]:_0xa32d[36])+ _0xa32d[37],icon:_0xa32d[38]+ (_0x7d3dx7?_0xa32d[39]:_0xa32d[40]),state:{opened:true,selected:true},children:getMotionChildren(_0x7d3dx7?_0xa32d[33]:_0xa32d[34])}]};exports[_0xa32d[34]]= getTree(false);exports[_0xa32d[33]]= getTree(true)
\ No newline at end of file
index 7da9605..2bacb63 100644 (file)
@@ -1 +1 @@
-var _0x3d0a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x64\x65\x6D\x6F","\x35\x35\x78\x63\x61\x6C\x6C\x79\x35\x35","\x74\x72\x75\x6E\x6B\x20\x64\x65\x6D\x6F\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x54\x72\x75\x6E\x6B\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x54\x72\x75\x6E\x6B\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x54\x72\x75\x6E\x6B"];_0x3d0a[0];var db=require(_0x3d0a[2])[_0x3d0a[1]];var logger=require(_0x3d0a[4])(_0x3d0a[3]);var trunks=[{id:1,name:_0x3d0a[5],secret:_0x3d0a[6],defaultuser:_0x3d0a[5],description:_0x3d0a[7]}];exports[_0x3d0a[8]]= function(){return db[_0x3d0a[16]][_0x3d0a[15]](trunks,{ignoreDuplicates:true,individualHooks:true})[_0x3d0a[14]](function(){logger[_0x3d0a[13]](_0x3d0a[12])})[_0x3d0a[11]](function(_0xd9adx4){logger[_0x3d0a[10]](_0x3d0a[9])})}
\ No newline at end of file
+var _0xd919=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x64\x65\x6D\x6F","\x35\x35\x78\x63\x61\x6C\x6C\x79\x35\x35","\x74\x72\x75\x6E\x6B\x20\x64\x65\x6D\x6F\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x54\x72\x75\x6E\x6B\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x54\x72\x75\x6E\x6B\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x54\x72\x75\x6E\x6B"];_0xd919[0];var db=require(_0xd919[2])[_0xd919[1]];var logger=require(_0xd919[4])(_0xd919[3]);var trunks=[{id:1,name:_0xd919[5],secret:_0xd919[6],defaultuser:_0xd919[5],description:_0xd919[7]}];exports[_0xd919[8]]= function(){return db[_0xd919[16]][_0xd919[15]](trunks,{ignoreDuplicates:true,individualHooks:true})[_0xd919[14]](function(){logger[_0xd919[13]](_0xd919[12])})[_0xd919[11]](function(_0xc245x4){logger[_0xd919[10]](_0xd919[9])})}
\ No newline at end of file
index f66d91f..2c1cd78 100644 (file)
@@ -1 +1 @@
-var _0x301b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x61\x64\x6D\x69\x6E","\x70\x61\x73\x73\x77\x6F\x72\x64","\x41\x64\x6D\x69\x6E\x69\x73\x74\x72\x61\x74\x6F\x72","\x61\x64\x6D\x69\x6E\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x75\x73\x65\x72\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x61\x67\x65\x6E\x74","\x6A\x6F\x68\x6E\x2E\x64\x6F\x65","\x6A\x6F\x68\x6E\x2E\x64\x6F\x65\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x73\x68\x75\x74\x74\x6C\x65\x35\x35","\x4A\x6F\x68\x6E\x20\x44\x6F\x65","\x61\x67\x65\x6E\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x6A\x61\x6E\x65\x2E\x6D\x69\x6C\x6C\x65\x72","\x6A\x61\x6E\x65\x2E\x6D\x69\x6C\x6C\x65\x72\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x4A\x61\x6E\x65\x20\x4D\x69\x6C\x6C\x65\x72","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x55\x73\x65\x72\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x55\x73\x65\x72\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x55\x73\x65\x72"];_0x301b[0];var db=require(_0x301b[2])[_0x301b[1]];var logger=require(_0x301b[4])(_0x301b[3]);var users=[{id:1,role:_0x301b[5],name:_0x301b[5],password:_0x301b[6],fullname:_0x301b[7],email:_0x301b[8],internal:1000,description:_0x301b[9]},{id:2,role:_0x301b[10],name:_0x301b[11],email:_0x301b[12],password:_0x301b[13],fullname:_0x301b[14],internal:1001,description:_0x301b[15]},{id:3,role:_0x301b[10],name:_0x301b[16],email:_0x301b[17],password:_0x301b[13],fullname:_0x301b[18],internal:1002,description:_0x301b[15]}];exports[_0x301b[19]]= function(){return db[_0x301b[27]][_0x301b[26]](users,{ignoreDuplicates:true,individualHooks:true})[_0x301b[25]](function(){logger[_0x301b[24]](_0x301b[23])})[_0x301b[22]](function(_0x8723x4){logger[_0x301b[21]](_0x301b[20])})}
\ No newline at end of file
+var _0x91d3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x61\x64\x6D\x69\x6E","\x70\x61\x73\x73\x77\x6F\x72\x64","\x41\x64\x6D\x69\x6E\x69\x73\x74\x72\x61\x74\x6F\x72","\x61\x64\x6D\x69\x6E\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x75\x73\x65\x72\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x61\x67\x65\x6E\x74","\x6A\x6F\x68\x6E\x2E\x64\x6F\x65","\x6A\x6F\x68\x6E\x2E\x64\x6F\x65\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x73\x68\x75\x74\x74\x6C\x65\x35\x35","\x4A\x6F\x68\x6E\x20\x44\x6F\x65","\x61\x67\x65\x6E\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x6A\x61\x6E\x65\x2E\x6D\x69\x6C\x6C\x65\x72","\x6A\x61\x6E\x65\x2E\x6D\x69\x6C\x6C\x65\x72\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x4A\x61\x6E\x65\x20\x4D\x69\x6C\x6C\x65\x72","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x55\x73\x65\x72\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x55\x73\x65\x72\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x55\x73\x65\x72"];_0x91d3[0];var db=require(_0x91d3[2])[_0x91d3[1]];var logger=require(_0x91d3[4])(_0x91d3[3]);var users=[{id:1,role:_0x91d3[5],name:_0x91d3[5],password:_0x91d3[6],fullname:_0x91d3[7],email:_0x91d3[8],internal:1000,description:_0x91d3[9]},{id:2,role:_0x91d3[10],name:_0x91d3[11],email:_0x91d3[12],password:_0x91d3[13],fullname:_0x91d3[14],internal:1001,description:_0x91d3[15]},{id:3,role:_0x91d3[10],name:_0x91d3[16],email:_0x91d3[17],password:_0x91d3[13],fullname:_0x91d3[18],internal:1002,description:_0x91d3[15]}];exports[_0x91d3[19]]= function(){return db[_0x91d3[27]][_0x91d3[26]](users,{ignoreDuplicates:true,individualHooks:true})[_0x91d3[25]](function(){logger[_0x91d3[24]](_0x91d3[23])})[_0x91d3[22]](function(_0x8af2x4){logger[_0x91d3[21]](_0x91d3[20])})}
\ No newline at end of file
index 16b84a9..f47e1ec 100644 (file)
@@ -1 +1 @@
-var _0xa465=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x43\x48\x4F\x49\x43\x45","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x72\x20\x6D\x65\x6E\x75\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x4F\x52\x44\x45\x52\x4E\x55\x4D","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x72\x20\x6F\x72\x64\x65\x72\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x44\x42\x52\x45\x53\x55\x4C\x54","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x72\x20\x64\x62\x20\x71\x75\x65\x72\x79\x20\x72\x65\x73\x75\x6C\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x52\x41\x54\x45","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x72\x20\x72\x61\x74\x65\x20\x63\x61\x6C\x6C\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x56\x61\x72\x69\x61\x62\x6C\x65\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x56\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x61\x72\x69\x61\x62\x6C\x65"];_0xa465[0];var db=require(_0xa465[2])[_0xa465[1]];var logger=require(_0xa465[4])(_0xa465[3]);var variables=[{id:1,name:_0xa465[5],description:_0xa465[6]},{id:2,name:_0xa465[7],description:_0xa465[8]},{id:3,name:_0xa465[9],description:_0xa465[10]},{id:4,name:_0xa465[11],description:_0xa465[12]}];exports[_0xa465[13]]= function(){return db[_0xa465[21]][_0xa465[20]](variables,{ignoreDuplicates:true,individualHooks:true})[_0xa465[19]](function(){logger[_0xa465[18]](_0xa465[17])})[_0xa465[16]](function(_0xb926x4){logger[_0xa465[15]](_0xa465[14])})}
\ No newline at end of file
+var _0x6976=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x43\x48\x4F\x49\x43\x45","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x72\x20\x6D\x65\x6E\x75\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x4F\x52\x44\x45\x52\x4E\x55\x4D","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x72\x20\x6F\x72\x64\x65\x72\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x44\x42\x52\x45\x53\x55\x4C\x54","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x72\x20\x64\x62\x20\x71\x75\x65\x72\x79\x20\x72\x65\x73\x75\x6C\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x52\x41\x54\x45","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x72\x20\x72\x61\x74\x65\x20\x63\x61\x6C\x6C\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x56\x61\x72\x69\x61\x62\x6C\x65\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x56\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x61\x72\x69\x61\x62\x6C\x65"];_0x6976[0];var db=require(_0x6976[2])[_0x6976[1]];var logger=require(_0x6976[4])(_0x6976[3]);var variables=[{id:1,name:_0x6976[5],description:_0x6976[6]},{id:2,name:_0x6976[7],description:_0x6976[8]},{id:3,name:_0x6976[9],description:_0x6976[10]},{id:4,name:_0x6976[11],description:_0x6976[12]}];exports[_0x6976[13]]= function(){return db[_0x6976[21]][_0x6976[20]](variables,{ignoreDuplicates:true,individualHooks:true})[_0x6976[19]](function(){logger[_0x6976[18]](_0x6976[17])})[_0x6976[16]](function(_0x9865x4){logger[_0x6976[15]](_0x6976[14])})}
\ No newline at end of file
index d3450a9..d09781c 100644 (file)
@@ -1 +1 @@
-var _0x50e0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x64\x65\x66\x61\x75\x6C\x74\x20\x65\x6E\x74\x72\x79\x20\x63\x6F\x6E\x74\x65\x78\x74\x20\x28\x44\x4F\x20\x4E\x4F\x54\x20\x44\x45\x4C\x45\x54\x45\x29","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x70\x2D\x70\x72\x6F\x76\x69\x64\x65\x72","\x69\x6E\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x43\x6F\x6E\x74\x65\x78\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x43\x6F\x6E\x74\x65\x78\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74"];_0x50e0[0];var db=require(_0x50e0[2])[_0x50e0[1]];var logger=require(_0x50e0[4])(_0x50e0[3]);var voiceContexts=[{id:1,name:_0x50e0[5],description:_0x50e0[6],defaultEntry:true},{id:2,name:_0x50e0[7],description:_0x50e0[6],defaultEntry:true},{id:3,name:_0x50e0[8],description:_0x50e0[6],defaultEntry:true},{id:4,name:_0x50e0[9],description:_0x50e0[6],defaultEntry:true},{id:5,name:_0x50e0[10],description:_0x50e0[6],defaultEntry:true}];exports[_0x50e0[11]]= function(){return db[_0x50e0[19]][_0x50e0[18]](voiceContexts,{ignoreDuplicates:true,individualHooks:true})[_0x50e0[17]](function(){logger[_0x50e0[16]](_0x50e0[15])})[_0x50e0[14]](function(_0x9647x4){logger[_0x50e0[13]](_0x50e0[12])})}
\ No newline at end of file
+var _0xcfb8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x64\x65\x66\x61\x75\x6C\x74\x20\x65\x6E\x74\x72\x79\x20\x63\x6F\x6E\x74\x65\x78\x74\x20\x28\x44\x4F\x20\x4E\x4F\x54\x20\x44\x45\x4C\x45\x54\x45\x29","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x70\x2D\x70\x72\x6F\x76\x69\x64\x65\x72","\x69\x6E\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x2D\x66\x61\x78","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x43\x6F\x6E\x74\x65\x78\x74\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x43\x6F\x6E\x74\x65\x78\x74\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74"];_0xcfb8[0];var db=require(_0xcfb8[2])[_0xcfb8[1]];var logger=require(_0xcfb8[4])(_0xcfb8[3]);var voiceContexts=[{id:1,name:_0xcfb8[5],description:_0xcfb8[6],defaultEntry:true},{id:2,name:_0xcfb8[7],description:_0xcfb8[6],defaultEntry:true},{id:3,name:_0xcfb8[8],description:_0xcfb8[6],defaultEntry:true},{id:4,name:_0xcfb8[9],description:_0xcfb8[6],defaultEntry:true},{id:5,name:_0xcfb8[10],description:_0xcfb8[6],defaultEntry:true}];exports[_0xcfb8[11]]= function(){return db[_0xcfb8[19]][_0xcfb8[18]](voiceContexts,{ignoreDuplicates:true,individualHooks:true})[_0xcfb8[17]](function(){logger[_0xcfb8[16]](_0xcfb8[15])})[_0xcfb8[14]](function(_0x99d6x4){logger[_0xcfb8[13]](_0xcfb8[12])})}
\ No newline at end of file
index ef521cd..991362d 100644 (file)
@@ -1 +1 @@
-var _0xaf80=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x53\x65\x74","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x41\x6E\x73\x77\x65\x72","\x50\x6C\x61\x79\x62\x61\x63\x6B","\x64\x65\x6D\x6F\x2D\x65\x63\x68\x6F\x74\x65\x73\x74","\x45\x63\x68\x6F","\x64\x65\x6D\x6F\x2D\x65\x63\x68\x6F\x64\x6F\x6E\x65","\x48\x61\x6E\x67\x75\x70","\x51\x75\x65\x75\x65","\x53\x75\x70\x70\x6F\x72\x74\x2C\x78\x58\x2C\x2C\x2C\x33\x30\x30\x2C\x2C\x2C\x2C\x2C","\x71\x75\x65\x75\x65","\x53\x61\x6C\x65\x73\x2C\x78\x58\x2C\x2C\x2C\x33\x30\x30\x2C\x2C\x2C\x2C\x2C","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x64\x69\x61\x6C\x65\x72","\x43\x41\x4C\x4C\x45\x52\x49\x44\x28\x61\x6C\x6C\x29\x3D\x24\x7B\x58\x4D\x44\x2D\x43\x41\x4C\x4C\x45\x52\x49\x44\x7D","\x45\x78\x65\x63\x69\x66","\x24\x5B\x22\x24\x7B\x58\x4D\x44\x2D\x41\x47\x49\x7D\x22\x20\x21\x3D\x20\x22\x4E\x4F\x4E\x45\x22\x20\x5D\x3F\x41\x47\x49\x28\x24\x7B\x58\x4D\x44\x2D\x41\x47\x49\x7D\x29","\x24\x5B\x22\x24\x7B\x58\x4D\x44\x2D\x51\x55\x45\x55\x45\x7D\x22\x20\x21\x3D\x20\x22\x4E\x4F\x4E\x45\x22\x20\x5D\x3F\x51\x55\x45\x55\x45\x28\x24\x7B\x58\x4D\x44\x2D\x51\x55\x45\x55\x45\x7D\x29","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x64\x65\x6D\x6F\x2D\x63\x6F\x6E\x67\x72\x61\x74\x73","\x63\x75\x73\x74\x6F\x6D","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x69\x6E\x62\x6F\x75\x6E\x64","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x36\x30\x30","\x64\x65\x6D\x6F\x20\x65\x63\x68\x6F\x20\x74\x65\x73\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x36\x30\x30\x30","\x66\x6F\x72\x77\x61\x72\x64\x20\x74\x6F\x20\x53\x75\x70\x70\x6F\x72\x74\x20\x71\x75\x65\x75\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x36\x30\x30\x31","\x66\x6F\x72\x77\x61\x72\x64\x20\x74\x6F\x20\x53\x61\x6C\x65\x73\x20\x71\x75\x65\x75\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x73\x79\x73\x74\x65\x6D","\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x64\x69\x61\x6C\x65\x72","\x64\x69\x61\x6C\x65\x72\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x5F\x2E","\x64\x65\x6D\x6F\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x69\x6E\x62\x6F\x75\x6E\x64","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x70\x2D\x70\x72\x6F\x76\x69\x64\x65\x72","\x5F\x58\x2E","\x63\x61\x74\x63\x68\x20\x61\x6C\x6C\x20\x69\x6E\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x68","\x63\x61\x74\x63\x68\x20\x68\x61\x6E\x67\x75\x70\x20\x65\x76\x65\x6E\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x56\x6F\x69\x63\x65\x20\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x56\x6F\x69\x63\x65\x20\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x65\x78\x74\x65\x6E","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x72\x6F\x75\x74\x65\x69\x64","\x61\x70\x70\x64\x61\x74\x61","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x72\x6F\x75\x74\x65\x69\x64\x3D","\x69\x64","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x70\x72\x69\x6F\x72\x69\x74\x79","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x64\x65\x66\x61\x75\x6C\x74\x73","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65"];_0xaf80[0];var _=require(_0xaf80[1]);var db=require(_0xaf80[3])[_0xaf80[2]];var logger=require(_0xaf80[5])(_0xaf80[4]);var applications={"\x36\x30\x30":[{app:_0xaf80[6],appdata:_0xaf80[7]},{app:_0xaf80[8]},{app:_0xaf80[9],appdata:_0xaf80[10],isApp:true},{app:_0xaf80[11],isApp:true},{app:_0xaf80[9],appdata:_0xaf80[12],isApp:true},{app:_0xaf80[13]}],"\x36\x30\x30\x30":[{app:_0xaf80[6],appdata:_0xaf80[7]},{app:_0xaf80[8]},{app:_0xaf80[14],appdata:_0xaf80[15],appType:_0xaf80[16],isApp:true},{app:_0xaf80[13]}],"\x36\x30\x30\x31":[{app:_0xaf80[6],appdata:_0xaf80[7]},{app:_0xaf80[8]},{app:_0xaf80[14],appdata:_0xaf80[17],appType:_0xaf80[16],isApp:true},{app:_0xaf80[13]}],"\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x64\x69\x61\x6C\x65\x72":[{app:_0xaf80[6],appdata:_0xaf80[18]},{app:_0xaf80[6],appdata:_0xaf80[19]},{app:_0xaf80[20],appdata:_0xaf80[21]},{app:_0xaf80[20],appdata:_0xaf80[22]},{app:_0xaf80[13]}],"\x5F\x2E":[{app:_0xaf80[6],appdata:_0xaf80[23]},{app:_0xaf80[6],outboundrouteid:true},{app:_0xaf80[9],appdata:_0xaf80[24],appType:_0xaf80[25],isApp:true},{app:_0xaf80[13]}],"\x5F\x58\x2E":[{app:_0xaf80[6],appdata:_0xaf80[26]},{app:_0xaf80[8]},{app:_0xaf80[9],appdata:_0xaf80[24],isApp:true},{app:_0xaf80[13]}],"\x68":[{app:_0xaf80[13]}]};var voiceExtensions=[{type:_0xaf80[27],context:_0xaf80[28],exten:_0xaf80[29],description:_0xaf80[30]},{type:_0xaf80[27],context:_0xaf80[28],exten:_0xaf80[31],description:_0xaf80[32]},{type:_0xaf80[27],context:_0xaf80[28],exten:_0xaf80[33],description:_0xaf80[34]},{type:_0xaf80[35],context:_0xaf80[28],exten:_0xaf80[36],description:_0xaf80[37]},{type:_0xaf80[38],context:_0xaf80[28],exten:_0xaf80[39],description:_0xaf80[40]},{type:_0xaf80[41],context:_0xaf80[42],exten:_0xaf80[43],description:_0xaf80[44]},{type:_0xaf80[35],context:_0xaf80[28],exten:_0xaf80[45],description:_0xaf80[46]}];exports[_0xaf80[47]]= function(){return db[_0xaf80[65]][_0xaf80[66]](voiceExtensions,{ignoreDuplicates:true,individualHooks:true})[_0xaf80[53]](function(_0x3e26x7){for(var _0x3e26x8=0;_0x3e26x8< _0x3e26x7[_0xaf80[54]];_0x3e26x8+= 1){if(applications[_0x3e26x7[_0x3e26x8][_0xaf80[55]]]){for(var _0x3e26x9=0;_0x3e26x9< applications[_0x3e26x7[_0x3e26x8][_0xaf80[55]]][_0xaf80[54]];_0x3e26x9+= 1){if(applications[_0x3e26x7[_0x3e26x8][_0xaf80[55]]][_0x3e26x9][_0xaf80[56]]){applications[_0x3e26x7[_0x3e26x8][_0xaf80[55]]][_0x3e26x9][_0xaf80[57]]= _0xaf80[58]+ _0x3e26x7[_0x3e26x8][_0xaf80[59]];delete applications[_0x3e26x7[_0x3e26x8][_0xaf80[55]]][_0x3e26x9][_0xaf80[56]]};applications[_0x3e26x7[_0x3e26x8][_0xaf80[55]]][_0x3e26x9]= _[_0xaf80[64]](applications[_0x3e26x7[_0x3e26x8][_0xaf80[55]]][_0x3e26x9],{isApp:false,appType:_0xaf80[25],type:_0x3e26x7[_0x3e26x8][_0xaf80[60]],context:_0x3e26x7[_0x3e26x8][_0xaf80[61]],exten:_0x3e26x7[_0x3e26x8][_0xaf80[55]],priority:parseInt(_0x3e26x7[_0x3e26x8][_0xaf80[62]],10)+ 1+ _0x3e26x9,description:_0x3e26x7[_0x3e26x8][_0xaf80[63]],VoiceExtensionId:_0x3e26x7[_0x3e26x8][_0xaf80[59]]});db[_0xaf80[65]][_0xaf80[47]](applications[_0x3e26x7[_0x3e26x8][_0xaf80[55]]][_0x3e26x9])}}}})[_0xaf80[53]](function(){logger[_0xaf80[52]](_0xaf80[51])})[_0xaf80[50]](function(_0x3e26x6){logger[_0xaf80[49]](_0xaf80[48])})}
\ No newline at end of file
+var _0xc91b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x53\x65\x74","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x41\x6E\x73\x77\x65\x72","\x50\x6C\x61\x79\x62\x61\x63\x6B","\x64\x65\x6D\x6F\x2D\x65\x63\x68\x6F\x74\x65\x73\x74","\x45\x63\x68\x6F","\x64\x65\x6D\x6F\x2D\x65\x63\x68\x6F\x64\x6F\x6E\x65","\x48\x61\x6E\x67\x75\x70","\x51\x75\x65\x75\x65","\x53\x75\x70\x70\x6F\x72\x74\x2C\x78\x58\x2C\x2C\x2C\x33\x30\x30\x2C\x2C\x2C\x2C\x2C","\x71\x75\x65\x75\x65","\x53\x61\x6C\x65\x73\x2C\x78\x58\x2C\x2C\x2C\x33\x30\x30\x2C\x2C\x2C\x2C\x2C","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x64\x69\x61\x6C\x65\x72","\x43\x41\x4C\x4C\x45\x52\x49\x44\x28\x61\x6C\x6C\x29\x3D\x24\x7B\x58\x4D\x44\x2D\x43\x41\x4C\x4C\x45\x52\x49\x44\x7D","\x45\x78\x65\x63\x69\x66","\x24\x5B\x22\x24\x7B\x58\x4D\x44\x2D\x41\x47\x49\x7D\x22\x20\x21\x3D\x20\x22\x4E\x4F\x4E\x45\x22\x20\x5D\x3F\x41\x47\x49\x28\x24\x7B\x58\x4D\x44\x2D\x41\x47\x49\x7D\x29","\x24\x5B\x22\x24\x7B\x58\x4D\x44\x2D\x51\x55\x45\x55\x45\x7D\x22\x20\x21\x3D\x20\x22\x4E\x4F\x4E\x45\x22\x20\x5D\x3F\x51\x55\x45\x55\x45\x28\x24\x7B\x58\x4D\x44\x2D\x51\x55\x45\x55\x45\x7D\x29","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x64\x65\x6D\x6F\x2D\x63\x6F\x6E\x67\x72\x61\x74\x73","\x63\x75\x73\x74\x6F\x6D","\x43\x44\x52\x28\x74\x79\x70\x65\x29\x3D\x69\x6E\x62\x6F\x75\x6E\x64","\x69\x6E\x74\x65\x72\x6E\x61\x6C","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x36\x30\x30","\x64\x65\x6D\x6F\x20\x65\x63\x68\x6F\x20\x74\x65\x73\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x36\x30\x30\x30","\x66\x6F\x72\x77\x61\x72\x64\x20\x74\x6F\x20\x53\x75\x70\x70\x6F\x72\x74\x20\x71\x75\x65\x75\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x36\x30\x30\x31","\x66\x6F\x72\x77\x61\x72\x64\x20\x74\x6F\x20\x53\x61\x6C\x65\x73\x20\x71\x75\x65\x75\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x73\x79\x73\x74\x65\x6D","\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x64\x69\x61\x6C\x65\x72","\x64\x69\x61\x6C\x65\x72\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x5F\x2E","\x64\x65\x6D\x6F\x20\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x69\x6E\x62\x6F\x75\x6E\x64","\x66\x72\x6F\x6D\x2D\x76\x6F\x69\x70\x2D\x70\x72\x6F\x76\x69\x64\x65\x72","\x5F\x58\x2E","\x63\x61\x74\x63\x68\x20\x61\x6C\x6C\x20\x69\x6E\x62\x6F\x75\x6E\x64\x20\x63\x61\x6C\x6C\x73\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x68","\x63\x61\x74\x63\x68\x20\x68\x61\x6E\x67\x75\x70\x20\x65\x76\x65\x6E\x74\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x56\x6F\x69\x63\x65\x20\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x56\x6F\x69\x63\x65\x20\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x65\x78\x74\x65\x6E","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x72\x6F\x75\x74\x65\x69\x64","\x61\x70\x70\x64\x61\x74\x61","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x72\x6F\x75\x74\x65\x69\x64\x3D","\x69\x64","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x70\x72\x69\x6F\x72\x69\x74\x79","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x64\x65\x66\x61\x75\x6C\x74\x73","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65"];_0xc91b[0];var _=require(_0xc91b[1]);var db=require(_0xc91b[3])[_0xc91b[2]];var logger=require(_0xc91b[5])(_0xc91b[4]);var applications={"\x36\x30\x30":[{app:_0xc91b[6],appdata:_0xc91b[7]},{app:_0xc91b[8]},{app:_0xc91b[9],appdata:_0xc91b[10],isApp:true},{app:_0xc91b[11],isApp:true},{app:_0xc91b[9],appdata:_0xc91b[12],isApp:true},{app:_0xc91b[13]}],"\x36\x30\x30\x30":[{app:_0xc91b[6],appdata:_0xc91b[7]},{app:_0xc91b[8]},{app:_0xc91b[14],appdata:_0xc91b[15],appType:_0xc91b[16],isApp:true},{app:_0xc91b[13]}],"\x36\x30\x30\x31":[{app:_0xc91b[6],appdata:_0xc91b[7]},{app:_0xc91b[8]},{app:_0xc91b[14],appdata:_0xc91b[17],appType:_0xc91b[16],isApp:true},{app:_0xc91b[13]}],"\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x64\x69\x61\x6C\x65\x72":[{app:_0xc91b[6],appdata:_0xc91b[18]},{app:_0xc91b[6],appdata:_0xc91b[19]},{app:_0xc91b[20],appdata:_0xc91b[21]},{app:_0xc91b[20],appdata:_0xc91b[22]},{app:_0xc91b[13]}],"\x5F\x2E":[{app:_0xc91b[6],appdata:_0xc91b[23]},{app:_0xc91b[6],outboundrouteid:true},{app:_0xc91b[9],appdata:_0xc91b[24],appType:_0xc91b[25],isApp:true},{app:_0xc91b[13]}],"\x5F\x58\x2E":[{app:_0xc91b[6],appdata:_0xc91b[26]},{app:_0xc91b[8]},{app:_0xc91b[9],appdata:_0xc91b[24],isApp:true},{app:_0xc91b[13]}],"\x68":[{app:_0xc91b[13]}]};var voiceExtensions=[{type:_0xc91b[27],context:_0xc91b[28],exten:_0xc91b[29],description:_0xc91b[30]},{type:_0xc91b[27],context:_0xc91b[28],exten:_0xc91b[31],description:_0xc91b[32]},{type:_0xc91b[27],context:_0xc91b[28],exten:_0xc91b[33],description:_0xc91b[34]},{type:_0xc91b[35],context:_0xc91b[28],exten:_0xc91b[36],description:_0xc91b[37]},{type:_0xc91b[38],context:_0xc91b[28],exten:_0xc91b[39],description:_0xc91b[40]},{type:_0xc91b[41],context:_0xc91b[42],exten:_0xc91b[43],description:_0xc91b[44]},{type:_0xc91b[35],context:_0xc91b[28],exten:_0xc91b[45],description:_0xc91b[46]}];exports[_0xc91b[47]]= function(){return db[_0xc91b[65]][_0xc91b[66]](voiceExtensions,{ignoreDuplicates:true,individualHooks:true})[_0xc91b[53]](function(_0x532cx7){for(var _0x532cx8=0;_0x532cx8< _0x532cx7[_0xc91b[54]];_0x532cx8+= 1){if(applications[_0x532cx7[_0x532cx8][_0xc91b[55]]]){for(var _0x532cx9=0;_0x532cx9< applications[_0x532cx7[_0x532cx8][_0xc91b[55]]][_0xc91b[54]];_0x532cx9+= 1){if(applications[_0x532cx7[_0x532cx8][_0xc91b[55]]][_0x532cx9][_0xc91b[56]]){applications[_0x532cx7[_0x532cx8][_0xc91b[55]]][_0x532cx9][_0xc91b[57]]= _0xc91b[58]+ _0x532cx7[_0x532cx8][_0xc91b[59]];delete applications[_0x532cx7[_0x532cx8][_0xc91b[55]]][_0x532cx9][_0xc91b[56]]};applications[_0x532cx7[_0x532cx8][_0xc91b[55]]][_0x532cx9]= _[_0xc91b[64]](applications[_0x532cx7[_0x532cx8][_0xc91b[55]]][_0x532cx9],{isApp:false,appType:_0xc91b[25],type:_0x532cx7[_0x532cx8][_0xc91b[60]],context:_0x532cx7[_0x532cx8][_0xc91b[61]],exten:_0x532cx7[_0x532cx8][_0xc91b[55]],priority:parseInt(_0x532cx7[_0x532cx8][_0xc91b[62]],10)+ 1+ _0x532cx9,description:_0x532cx7[_0x532cx8][_0xc91b[63]],VoiceExtensionId:_0x532cx7[_0x532cx8][_0xc91b[59]]});db[_0xc91b[65]][_0xc91b[47]](applications[_0x532cx7[_0x532cx8][_0xc91b[55]]][_0x532cx9])}}}})[_0xc91b[53]](function(){logger[_0xc91b[52]](_0xc91b[51])})[_0xc91b[50]](function(_0x532cx6){logger[_0xc91b[49]](_0xc91b[48])})}
\ No newline at end of file
index 28b47a3..02d4e1a 100644 (file)
@@ -1 +1 @@
-var _0x8533=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x64\x65\x66\x61\x75\x6C\x74","\x2F\x76\x61\x72\x2F\x6C\x69\x62\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x6D\x6F\x68\x2F","\x66\x69\x6C\x65\x73","\x72\x61\x6E\x64\x6F\x6D","\x77\x61\x76","\x64\x65\x66\x61\x75\x6C\x74\x20\x6D\x6F\x68\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x6E\x6F\x69\x63\x65","\x2F\x76\x61\x72\x2F\x6F\x70\x74\x2F\x6D\x6F\x74\x69\x6F\x6E\x32\x2F\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x6D\x6F\x68\x2F\x6E\x6F\x69\x63\x65\x2F","\x6E\x6F\x69\x63\x65\x20\x6D\x6F\x68\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x77\x61\x69\x74","\x2F\x76\x61\x72\x2F\x6F\x70\x74\x2F\x6D\x6F\x74\x69\x6F\x6E\x32\x2F\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x6D\x6F\x68\x2F\x77\x61\x69\x74\x2F","\x77\x61\x69\x74\x20\x6D\x6F\x68\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x4D\x75\x73\x69\x63\x20\x6F\x6E\x20\x68\x6F\x6C\x64","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x4D\x75\x73\x69\x63\x20\x6F\x6E\x20\x68\x6F\x6C\x64\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64"];_0x8533[0];var db=require(_0x8533[2])[_0x8533[1]];var logger=require(_0x8533[4])(_0x8533[3]);var voiceMusicOnHold=[{id:1,name:_0x8533[5],directory:_0x8533[6],mode:_0x8533[7],sort:_0x8533[8],format:_0x8533[9],defaultEntry:true,description:_0x8533[10]},{id:2,name:_0x8533[11],directory:_0x8533[12],mode:_0x8533[7],sort:_0x8533[8],format:_0x8533[9],defaultEntry:true,description:_0x8533[13]},{id:3,name:_0x8533[14],directory:_0x8533[15],mode:_0x8533[7],sort:_0x8533[8],format:_0x8533[9],defaultEntry:true,description:_0x8533[16]}];exports[_0x8533[17]]= function(){return db[_0x8533[25]][_0x8533[24]](voiceMusicOnHold,{ignoreDuplicates:true,individualHooks:true})[_0x8533[23]](function(){logger[_0x8533[22]](_0x8533[21])})[_0x8533[20]](function(_0x8f5ax4){logger[_0x8533[19]](_0x8533[18])})}
\ No newline at end of file
+var _0x9543=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x64\x65\x66\x61\x75\x6C\x74","\x2F\x76\x61\x72\x2F\x6C\x69\x62\x2F\x61\x73\x74\x65\x72\x69\x73\x6B\x2F\x6D\x6F\x68\x2F","\x66\x69\x6C\x65\x73","\x72\x61\x6E\x64\x6F\x6D","\x77\x61\x76","\x64\x65\x66\x61\x75\x6C\x74\x20\x6D\x6F\x68\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x6E\x6F\x69\x63\x65","\x2F\x76\x61\x72\x2F\x6F\x70\x74\x2F\x6D\x6F\x74\x69\x6F\x6E\x32\x2F\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x6D\x6F\x68\x2F\x6E\x6F\x69\x63\x65\x2F","\x6E\x6F\x69\x63\x65\x20\x6D\x6F\x68\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x77\x61\x69\x74","\x2F\x76\x61\x72\x2F\x6F\x70\x74\x2F\x6D\x6F\x74\x69\x6F\x6E\x32\x2F\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73\x2F\x6D\x6F\x68\x2F\x77\x61\x69\x74\x2F","\x77\x61\x69\x74\x20\x6D\x6F\x68\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x4D\x75\x73\x69\x63\x20\x6F\x6E\x20\x68\x6F\x6C\x64","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x4D\x75\x73\x69\x63\x20\x6F\x6E\x20\x68\x6F\x6C\x64\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64"];_0x9543[0];var db=require(_0x9543[2])[_0x9543[1]];var logger=require(_0x9543[4])(_0x9543[3]);var voiceMusicOnHold=[{id:1,name:_0x9543[5],directory:_0x9543[6],mode:_0x9543[7],sort:_0x9543[8],format:_0x9543[9],defaultEntry:true,description:_0x9543[10]},{id:2,name:_0x9543[11],directory:_0x9543[12],mode:_0x9543[7],sort:_0x9543[8],format:_0x9543[9],defaultEntry:true,description:_0x9543[13]},{id:3,name:_0x9543[14],directory:_0x9543[15],mode:_0x9543[7],sort:_0x9543[8],format:_0x9543[9],defaultEntry:true,description:_0x9543[16]}];exports[_0x9543[17]]= function(){return db[_0x9543[25]][_0x9543[24]](voiceMusicOnHold,{ignoreDuplicates:true,individualHooks:true})[_0x9543[23]](function(){logger[_0x9543[22]](_0x9543[21])})[_0x9543[20]](function(_0x5f4ax4){logger[_0x9543[19]](_0x9543[18])})}
\ No newline at end of file
index 1cc4f8a..5b77366 100644 (file)
@@ -1 +1 @@
-var _0xa1eb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x69\x6E\x62\x6F\x75\x6E\x64","\x53\x75\x70\x70\x6F\x72\x74","\x72\x69\x6E\x67\x61\x6C\x6C","\x77\x61\x69\x74","\x69\x6E\x62\x6F\x75\x6E\x64\x20\x76\x6F\x69\x63\x65\x20\x71\x75\x65\x75\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x53\x61\x6C\x65\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x53\x75\x72\x76\x65\x79","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x6E\x6F\x69\x63\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x76\x6F\x69\x63\x65\x20\x71\x75\x65\x75\x65\x20\x63\x61\x6D\x70\x61\x69\x67\x6E\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x54\x65\x6C\x65\x6D\x61\x72\x6B\x65\x74\x69\x6E\x67","\x43\x61\x6C\x6C\x62\x61\x63\x6B\x20\x43\x61\x6D\x70\x61\x69\x67\x6E","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x56\x6F\x69\x63\x65\x20\x51\x75\x65\x75\x65\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x56\x6F\x69\x63\x65\x20\x51\x75\x65\x75\x65\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x61\x64\x64\x54\x65\x61\x6D\x73","\x74\x79\x70\x65","\x69\x64","\x61\x64\x64\x4C\x69\x73\x74\x73","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65"];_0xa1eb[0];var db=require(_0xa1eb[2])[_0xa1eb[1]];var logger=require(_0xa1eb[4])(_0xa1eb[3]);var voiceQueues=[{id:1,type:_0xa1eb[5],name:_0xa1eb[6],strategy:_0xa1eb[7],musiconhold:_0xa1eb[8],description:_0xa1eb[9]},{id:2,type:_0xa1eb[5],name:_0xa1eb[10],strategy:_0xa1eb[7],musiconhold:_0xa1eb[8],description:_0xa1eb[9]},{id:3,type:_0xa1eb[11],name:_0xa1eb[12],strategy:_0xa1eb[13],TrunkId:1,IntervalId:1,musiconhold:_0xa1eb[14],description:_0xa1eb[15]},{id:4,type:_0xa1eb[11],name:_0xa1eb[16],strategy:_0xa1eb[13],TrunkId:1,IntervalId:1,musiconhold:_0xa1eb[14],description:_0xa1eb[15]},{id:5,type:_0xa1eb[11],name:_0xa1eb[17],strategy:_0xa1eb[13],TrunkId:1,IntervalId:1,musiconhold:_0xa1eb[14],description:_0xa1eb[15]}];exports[_0xa1eb[18]]= function(){return db[_0xa1eb[33]][_0xa1eb[32]](voiceQueues,{ignoreDuplicates:true,individualHooks:true})[_0xa1eb[24]](function(_0x6c53x5){for(var _0x6c53x6=0;_0x6c53x6< _0x6c53x5[_0xa1eb[25]];_0x6c53x6+= 1){_0x6c53x5[_0x6c53x6][_0xa1eb[26]]([2,3],{ignoreDuplicates:true,individualHooks:true});_0x6c53x5[_0x6c53x6][_0xa1eb[27]]([1],{ignoreDuplicates:true,individualHooks:true});if(_0x6c53x5[_0x6c53x6][_0xa1eb[28]]=== _0xa1eb[11]&& _0x6c53x5[_0x6c53x6][_0xa1eb[29]]!== 5){_0x6c53x5[_0x6c53x6][_0xa1eb[30]]([1],{ignoreDuplicates:true,individualHooks:true});_0x6c53x5[_0x6c53x6][_0xa1eb[31]]([2],{ignoreDuplicates:true,individualHooks:true})};if(_0x6c53x5[_0x6c53x6][_0xa1eb[29]]=== 5){_0x6c53x5[_0x6c53x6][_0xa1eb[30]]([3],{ignoreDuplicates:true,individualHooks:true})}};return _0x6c53x5})[_0xa1eb[24]](function(){logger[_0xa1eb[23]](_0xa1eb[22])})[_0xa1eb[21]](function(_0x6c53x4){logger[_0xa1eb[20]](_0xa1eb[19])})}
\ No newline at end of file
+var _0x33fd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x64\x62","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x61\x70\x70","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72","\x69\x6E\x62\x6F\x75\x6E\x64","\x53\x75\x70\x70\x6F\x72\x74","\x72\x69\x6E\x67\x61\x6C\x6C","\x77\x61\x69\x74","\x69\x6E\x62\x6F\x75\x6E\x64\x20\x76\x6F\x69\x63\x65\x20\x71\x75\x65\x75\x65\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x53\x61\x6C\x65\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x53\x75\x72\x76\x65\x79","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x6E\x6F\x69\x63\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x20\x76\x6F\x69\x63\x65\x20\x71\x75\x65\x75\x65\x20\x63\x61\x6D\x70\x61\x69\x67\x6E\x20\x61\x75\x74\x6F\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64","\x54\x65\x6C\x65\x6D\x61\x72\x6B\x65\x74\x69\x6E\x67","\x43\x61\x6C\x6C\x62\x61\x63\x6B\x20\x43\x61\x6D\x70\x61\x69\x67\x6E","\x63\x72\x65\x61\x74\x65","\x43\x61\x6E\x27\x74\x20\x63\x72\x65\x61\x74\x65\x20\x56\x6F\x69\x63\x65\x20\x51\x75\x65\x75\x65\x73","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x56\x6F\x69\x63\x65\x20\x51\x75\x65\x75\x65\x73\x20\x68\x61\x76\x65\x20\x62\x65\x65\x6E\x20\x63\x72\x65\x61\x74\x65\x64","\x69\x6E\x66\x6F","\x74\x68\x65\x6E","\x6C\x65\x6E\x67\x74\x68","\x61\x64\x64\x41\x67\x65\x6E\x74\x73","\x61\x64\x64\x54\x65\x61\x6D\x73","\x74\x79\x70\x65","\x69\x64","\x61\x64\x64\x4C\x69\x73\x74\x73","\x61\x64\x64\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65"];_0x33fd[0];var db=require(_0x33fd[2])[_0x33fd[1]];var logger=require(_0x33fd[4])(_0x33fd[3]);var voiceQueues=[{id:1,type:_0x33fd[5],name:_0x33fd[6],strategy:_0x33fd[7],musiconhold:_0x33fd[8],description:_0x33fd[9]},{id:2,type:_0x33fd[5],name:_0x33fd[10],strategy:_0x33fd[7],musiconhold:_0x33fd[8],description:_0x33fd[9]},{id:3,type:_0x33fd[11],name:_0x33fd[12],strategy:_0x33fd[13],TrunkId:1,IntervalId:1,musiconhold:_0x33fd[14],description:_0x33fd[15]},{id:4,type:_0x33fd[11],name:_0x33fd[16],strategy:_0x33fd[13],TrunkId:1,IntervalId:1,musiconhold:_0x33fd[14],description:_0x33fd[15]},{id:5,type:_0x33fd[11],name:_0x33fd[17],strategy:_0x33fd[13],TrunkId:1,IntervalId:1,musiconhold:_0x33fd[14],description:_0x33fd[15]}];exports[_0x33fd[18]]= function(){return db[_0x33fd[33]][_0x33fd[32]](voiceQueues,{ignoreDuplicates:true,individualHooks:true})[_0x33fd[24]](function(_0x90a9x5){for(var _0x90a9x6=0;_0x90a9x6< _0x90a9x5[_0x33fd[25]];_0x90a9x6+= 1){_0x90a9x5[_0x90a9x6][_0x33fd[26]]([2,3],{ignoreDuplicates:true,individualHooks:true});_0x90a9x5[_0x90a9x6][_0x33fd[27]]([1],{ignoreDuplicates:true,individualHooks:true});if(_0x90a9x5[_0x90a9x6][_0x33fd[28]]=== _0x33fd[11]&& _0x90a9x5[_0x90a9x6][_0x33fd[29]]!== 5){_0x90a9x5[_0x90a9x6][_0x33fd[30]]([1],{ignoreDuplicates:true,individualHooks:true});_0x90a9x5[_0x90a9x6][_0x33fd[31]]([2],{ignoreDuplicates:true,individualHooks:true})};if(_0x90a9x5[_0x90a9x6][_0x33fd[29]]=== 5){_0x90a9x5[_0x90a9x6][_0x33fd[30]]([3],{ignoreDuplicates:true,individualHooks:true})}};return _0x90a9x5})[_0x33fd[24]](function(){logger[_0x33fd[23]](_0x33fd[22])})[_0x33fd[21]](function(_0x90a9x4){logger[_0x33fd[20]](_0x33fd[19])})}
\ No newline at end of file
index a869829..8ec8bbd 100644 (file)
@@ -1 +1 @@
-var _0xe8b0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x25\x73\x25\x73","\x61\x67\x65\x6E\x74","\x66\x6F\x72\x6D\x61\x74","\x25\x73\x25\x73\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x70\x61\x73\x73\x77\x6F\x72\x64","\x66\x72\x69\x65\x6E\x64","\x75\x64\x70","\x77\x73","\x77\x73\x73","\x61\x6C\x6C","\x75\x6C\x61\x77","\x79\x65\x73","\x6E\x6F","\x2F\x65\x74\x63\x2F\x70\x6B\x69\x2F\x74\x6C\x73\x2F\x63\x65\x72\x74\x73\x2F\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x72\x74","\x2F\x65\x74\x63\x2F\x70\x6B\x69\x2F\x74\x6C\x73\x2F\x70\x72\x69\x76\x61\x74\x65\x2F\x6D\x6F\x74\x69\x6F\x6E\x2E\x6B\x65\x79","\x61\x63\x74\x70\x61\x73\x73","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x70\x75\x73\x68","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x61\x64\x64\x20\x75\x73\x65\x72","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x55\x73\x65\x72"];_0xe8b0[0];var util=require(_0xe8b0[1]);var db=require(_0xe8b0[3])[_0xe8b0[2]];var users=[];for(var i=1;i<= 200;i+= 1){users[_0xe8b0[21]]({name:util[_0xe8b0[6]](_0xe8b0[4],_0xe8b0[5],i),fullname:util[_0xe8b0[6]](_0xe8b0[4],_0xe8b0[5],i),email:util[_0xe8b0[6]](_0xe8b0[7],_0xe8b0[5],i),role:_0xe8b0[5],password:_0xe8b0[8],internal:4000+ i,type:_0xe8b0[9],transport:[_0xe8b0[10],_0xe8b0[11],_0xe8b0[12]],disallow:[_0xe8b0[13]],allow:[_0xe8b0[14]],defaultuser:util[_0xe8b0[6]](_0xe8b0[4],_0xe8b0[5],i),encryption:_0xe8b0[15],avpf:_0xe8b0[15],force_avp:_0xe8b0[15],icesupport:_0xe8b0[15],dtlsenable:_0xe8b0[15],dtlsverify:_0xe8b0[16],dtlscertfile:_0xe8b0[17],dtlsprivatekey:_0xe8b0[18],dtlssetup:_0xe8b0[19],callerid:util[_0xe8b0[6]](_0xe8b0[20],util[_0xe8b0[6]](_0xe8b0[4],_0xe8b0[5],i),4000+ i)})};db[_0xe8b0[27]][_0xe8b0[26]](users)[_0xe8b0[25]](function(){console[_0xe8b0[22]](_0xe8b0[24])})[_0xe8b0[23]](function(_0x1048x5){console[_0xe8b0[22]](_0x1048x5)})
\ No newline at end of file
+var _0xa6e0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x25\x73\x25\x73","\x61\x67\x65\x6E\x74","\x66\x6F\x72\x6D\x61\x74","\x25\x73\x25\x73\x40\x78\x63\x61\x6C\x6C\x79\x2E\x63\x6F\x6D","\x70\x61\x73\x73\x77\x6F\x72\x64","\x66\x72\x69\x65\x6E\x64","\x75\x64\x70","\x77\x73","\x77\x73\x73","\x61\x6C\x6C","\x75\x6C\x61\x77","\x79\x65\x73","\x6E\x6F","\x2F\x65\x74\x63\x2F\x70\x6B\x69\x2F\x74\x6C\x73\x2F\x63\x65\x72\x74\x73\x2F\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x72\x74","\x2F\x65\x74\x63\x2F\x70\x6B\x69\x2F\x74\x6C\x73\x2F\x70\x72\x69\x76\x61\x74\x65\x2F\x6D\x6F\x74\x69\x6F\x6E\x2E\x6B\x65\x79","\x61\x63\x74\x70\x61\x73\x73","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x70\x75\x73\x68","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x61\x64\x64\x20\x75\x73\x65\x72","\x74\x68\x65\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x55\x73\x65\x72"];_0xa6e0[0];var util=require(_0xa6e0[1]);var db=require(_0xa6e0[3])[_0xa6e0[2]];var users=[];for(var i=1;i<= 200;i+= 1){users[_0xa6e0[21]]({name:util[_0xa6e0[6]](_0xa6e0[4],_0xa6e0[5],i),fullname:util[_0xa6e0[6]](_0xa6e0[4],_0xa6e0[5],i),email:util[_0xa6e0[6]](_0xa6e0[7],_0xa6e0[5],i),role:_0xa6e0[5],password:_0xa6e0[8],internal:4000+ i,type:_0xa6e0[9],transport:[_0xa6e0[10],_0xa6e0[11],_0xa6e0[12]],disallow:[_0xa6e0[13]],allow:[_0xa6e0[14]],defaultuser:util[_0xa6e0[6]](_0xa6e0[4],_0xa6e0[5],i),encryption:_0xa6e0[15],avpf:_0xa6e0[15],force_avp:_0xa6e0[15],icesupport:_0xa6e0[15],dtlsenable:_0xa6e0[15],dtlsverify:_0xa6e0[16],dtlscertfile:_0xa6e0[17],dtlsprivatekey:_0xa6e0[18],dtlssetup:_0xa6e0[19],callerid:util[_0xa6e0[6]](_0xa6e0[20],util[_0xa6e0[6]](_0xa6e0[4],_0xa6e0[5],i),4000+ i)})};db[_0xa6e0[27]][_0xa6e0[26]](users)[_0xa6e0[25]](function(){console[_0xa6e0[22]](_0xa6e0[24])})[_0xa6e0[23]](function(_0xf2b8x5){console[_0xa6e0[22]](_0xf2b8x5)})
\ No newline at end of file
index f40aaf3..25650c6 100644 (file)
@@ -1 +1 @@
-var _0xc7c4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x41\x67\x65\x6E\x74\x73","\x55\x73\x65\x72","\x72\x6F\x6C\x65","\x61\x67\x65\x6E\x74","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x74\x79\x70\x65","\x69\x76\x72","\x71\x75\x65\x72\x79","\x68\x61\x6E\x64\x73\x68\x61\x6B\x65","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x6C\x65\x6E\x67\x74\x68","\x76\x6F\x69\x63\x65\x3A\x71\x75\x65\x75\x65\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x75\x73\x65\x72\x3A\x25\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x3A\x25\x73","\x74\x72\x75\x6E\x6B\x3A\x25\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x3A\x25\x73\x3A\x25\x73","\x74\x68\x65\x6E","\x76\x6F\x69\x63\x65\x3A\x69\x6E\x62\x6F\x75\x6E\x64","\x76\x6F\x69\x63\x65\x3A\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x69\x6E\x63\x6C\x75\x64\x65","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x70\x75\x73\x68","\x54\x72\x75\x6E\x6B","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x61\x64\x6D\x69\x6E","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x75\x73\x65\x72","\x61\x6C\x6C","\x66\x69\x6E\x64","\x6C\x65\x61\x76\x65","\x6A\x6F\x69\x6E","\x64\x65\x66\x61\x75\x6C\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x73\x65\x74\x4D\x61\x78\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x61\x64\x64\x72\x65\x73\x73","\x72\x65\x6D\x6F\x74\x65\x41\x64\x64\x72\x65\x73\x73","\x72\x65\x71\x75\x65\x73\x74","\x3A","\x72\x65\x6D\x6F\x74\x65\x50\x6F\x72\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x53\x6F\x63\x6B\x65\x74\x49\x4F\x20","\x6E\x73\x70","\x5B","\x5D","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74","\x44\x49\x53\x43\x4F\x4E\x4E\x45\x43\x54\x45\x44","\x6F\x6E","\x43\x4F\x4E\x4E\x45\x43\x54\x45\x44"];_0xc7c4[0];var util=require(_0xc7c4[1]);var BPromise=require(_0xc7c4[2]);var db=require(_0xc7c4[4])[_0xc7c4[3]];var config=require(_0xc7c4[5]);var queryVoiceQueues={attributes:[_0xc7c4[6],_0xc7c4[7]],include:[{as:_0xc7c4[8],model:db[_0xc7c4[9]],attributes:[_0xc7c4[6],_0xc7c4[7],_0xc7c4[10]],raw:true,where:{role:_0xc7c4[11]},required:false}]};var queryTelephones={raw:true,attributes:[_0xc7c4[6],_0xc7c4[7]],where:{role:_0xc7c4[12]}};var queryTrunks={raw:true,attributes:[_0xc7c4[6],_0xc7c4[7]]};var queryAgents={raw:true,attributes:[_0xc7c4[6],_0xc7c4[7]],where:{role:_0xc7c4[11]}};var queryCampaigns={raw:true,attributes:[_0xc7c4[6],_0xc7c4[7],_0xc7c4[13]],where:{type:_0xc7c4[14]}};function joinOrLeave(_0xe8ddxb,_0xe8ddxc){if(_0xe8ddxb[_0xc7c4[16]][_0xc7c4[15]][_0xc7c4[6]]){db[_0xc7c4[9]][_0xc7c4[40]]({attributes:[_0xc7c4[6],_0xc7c4[7],_0xc7c4[10]],where:{id:_0xe8ddxb[_0xc7c4[16]][_0xc7c4[15]][_0xc7c4[6]]}})[_0xc7c4[26]](function(_0xe8ddx12){if(_0xe8ddx12){_0xe8ddxb[_0xe8ddxc](util[_0xc7c4[21]](_0xc7c4[22],_0xe8ddx12[_0xc7c4[7]]));var _0xe8ddx13=[];switch(_0xe8ddx12[_0xc7c4[10]]){case _0xc7c4[36]:_0xe8ddxb[_0xe8ddxc](_0xc7c4[27]);_0xe8ddxb[_0xe8ddxc](_0xc7c4[28]);if(queryVoiceQueues[_0xc7c4[30]](_0xc7c4[29])){delete queryVoiceQueues[_0xc7c4[29]]};_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[32]][_0xc7c4[31]](queryVoiceQueues));_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[9]][_0xc7c4[31]](queryTelephones));_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[34]][_0xc7c4[31]](queryTrunks));_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[9]][_0xc7c4[31]](queryAgents));_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[35]][_0xc7c4[31]](queryCampaigns));break;case _0xc7c4[38]:_0xe8ddxb[_0xe8ddxc](_0xc7c4[27]);_0xe8ddxb[_0xe8ddxc](_0xc7c4[28]);_0xe8ddx13[_0xc7c4[33]](_0xe8ddx12[_0xc7c4[37]](queryVoiceQueues));_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[9]][_0xc7c4[31]](queryTelephones));_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[34]][_0xc7c4[31]](queryTrunks));_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[9]][_0xc7c4[31]](queryAgents));_0xe8ddx13[_0xc7c4[33]](db[_0xc7c4[35]][_0xc7c4[31]](queryCampaigns));break;case _0xc7c4[11]:_0xe8ddx13[_0xc7c4[33]](_0xe8ddx12[_0xc7c4[37]]({attributes:[_0xc7c4[6],_0xc7c4[7]]}))};return BPromise[_0xc7c4[39]](_0xe8ddx13)}})[_0xc7c4[26]](function(_0xe8ddxe){if(_0xe8ddxe&& _0xe8ddxe[_0xc7c4[19]]){for(var _0xe8ddxf=0;_0xe8ddxf< _0xe8ddxe[_0xc7c4[19]];_0xe8ddxf+= 1){for(var _0xe8ddx10=0;_0xe8ddx10< _0xe8ddxe[_0xe8ddxf][_0xc7c4[19]];_0xe8ddx10+= 1){switch(_0xe8ddxf){case 0:_0xe8ddxb[_0xe8ddxc](util[_0xc7c4[21]](_0xc7c4[20],_0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[7]]));if(_0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[8]]){for(var _0xe8ddx11=0;_0xe8ddx11< _0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[8]][_0xc7c4[19]];_0xe8ddx11+= 1){_0xe8ddxb[_0xe8ddxc](util[_0xc7c4[21]](_0xc7c4[22],_0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[8]][_0xe8ddx11][_0xc7c4[7]]))}};break;case 1:_0xe8ddxb[_0xe8ddxc](util[_0xc7c4[21]](_0xc7c4[23],_0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[7]]));break;case 2:_0xe8ddxb[_0xe8ddxc](util[_0xc7c4[21]](_0xc7c4[24],_0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[7]]));break;case 3:_0xe8ddxb[_0xe8ddxc](util[_0xc7c4[21]](_0xc7c4[22],_0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[7]]));break;case 4:_0xe8ddxb[_0xe8ddxc](util[_0xc7c4[21]](_0xc7c4[25],_0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[13]],_0xe8ddxe[_0xe8ddxf][_0xe8ddx10][_0xc7c4[7]]));break}}}}})[_0xc7c4[18]](function(_0xe8ddxd){_0xe8ddxb[_0xc7c4[17]](_0xe8ddxd)})}}function onDisconnect(_0xe8ddxb){joinOrLeave(_0xe8ddxb,_0xc7c4[41])}function onConnect(_0xe8ddxb){joinOrLeave(_0xe8ddxb,_0xc7c4[42])}exports[_0xc7c4[43]]= function(_0xe8ddx16){_0xe8ddx16[_0xc7c4[58]](_0xc7c4[44],function(_0xe8ddxb){_0xe8ddxb[_0xc7c4[45]](0);_0xe8ddxb[_0xc7c4[46]]= _0xe8ddxb[_0xc7c4[48]][_0xc7c4[44]][_0xc7c4[47]]+ _0xc7c4[49]+ _0xe8ddxb[_0xc7c4[48]][_0xc7c4[44]][_0xc7c4[50]];_0xe8ddxb[_0xc7c4[51]]=  new Date();_0xe8ddxb[_0xc7c4[17]]= function(_0xe8ddx17){console[_0xc7c4[17]](_0xc7c4[52]+ _0xe8ddxb[_0xc7c4[53]][_0xc7c4[7]]+ _0xc7c4[54]+ _0xe8ddxb[_0xc7c4[46]]+ _0xc7c4[55],_0xe8ddx17)};_0xe8ddxb[_0xc7c4[58]](_0xc7c4[56],function(){onDisconnect(_0xe8ddxb);_0xe8ddxb[_0xc7c4[17]](_0xc7c4[57])});onConnect(_0xe8ddxb);_0xe8ddxb[_0xc7c4[17]](_0xc7c4[59])})}
\ No newline at end of file
+var _0xa7f7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x64\x62","\x2E\x2E\x2F\x6D\x79\x73\x71\x6C\x64\x62","\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x41\x67\x65\x6E\x74\x73","\x55\x73\x65\x72","\x72\x6F\x6C\x65","\x61\x67\x65\x6E\x74","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x74\x79\x70\x65","\x69\x76\x72","\x71\x75\x65\x72\x79","\x68\x61\x6E\x64\x73\x68\x61\x6B\x65","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x6C\x65\x6E\x67\x74\x68","\x76\x6F\x69\x63\x65\x3A\x71\x75\x65\x75\x65\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x75\x73\x65\x72\x3A\x25\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x3A\x25\x73","\x74\x72\x75\x6E\x6B\x3A\x25\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x3A\x25\x73\x3A\x25\x73","\x74\x68\x65\x6E","\x76\x6F\x69\x63\x65\x3A\x69\x6E\x62\x6F\x75\x6E\x64","\x76\x6F\x69\x63\x65\x3A\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x69\x6E\x63\x6C\x75\x64\x65","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x66\x69\x6E\x64\x41\x6C\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x70\x75\x73\x68","\x54\x72\x75\x6E\x6B","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x61\x64\x6D\x69\x6E","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x75\x73\x65\x72","\x61\x6C\x6C","\x66\x69\x6E\x64","\x6C\x65\x61\x76\x65","\x6A\x6F\x69\x6E","\x64\x65\x66\x61\x75\x6C\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x73\x65\x74\x4D\x61\x78\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x61\x64\x64\x72\x65\x73\x73","\x72\x65\x6D\x6F\x74\x65\x41\x64\x64\x72\x65\x73\x73","\x72\x65\x71\x75\x65\x73\x74","\x3A","\x72\x65\x6D\x6F\x74\x65\x50\x6F\x72\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x41\x74","\x53\x6F\x63\x6B\x65\x74\x49\x4F\x20","\x6E\x73\x70","\x5B","\x5D","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74","\x44\x49\x53\x43\x4F\x4E\x4E\x45\x43\x54\x45\x44","\x6F\x6E","\x43\x4F\x4E\x4E\x45\x43\x54\x45\x44"];_0xa7f7[0];var util=require(_0xa7f7[1]);var BPromise=require(_0xa7f7[2]);var db=require(_0xa7f7[4])[_0xa7f7[3]];var config=require(_0xa7f7[5]);var queryVoiceQueues={attributes:[_0xa7f7[6],_0xa7f7[7]],include:[{as:_0xa7f7[8],model:db[_0xa7f7[9]],attributes:[_0xa7f7[6],_0xa7f7[7],_0xa7f7[10]],raw:true,where:{role:_0xa7f7[11]},required:false}]};var queryTelephones={raw:true,attributes:[_0xa7f7[6],_0xa7f7[7]],where:{role:_0xa7f7[12]}};var queryTrunks={raw:true,attributes:[_0xa7f7[6],_0xa7f7[7]]};var queryAgents={raw:true,attributes:[_0xa7f7[6],_0xa7f7[7]],where:{role:_0xa7f7[11]}};var queryCampaigns={raw:true,attributes:[_0xa7f7[6],_0xa7f7[7],_0xa7f7[13]],where:{type:_0xa7f7[14]}};function joinOrLeave(_0xc3ffxb,_0xc3ffxc){if(_0xc3ffxb[_0xa7f7[16]][_0xa7f7[15]][_0xa7f7[6]]){db[_0xa7f7[9]][_0xa7f7[40]]({attributes:[_0xa7f7[6],_0xa7f7[7],_0xa7f7[10]],where:{id:_0xc3ffxb[_0xa7f7[16]][_0xa7f7[15]][_0xa7f7[6]]}})[_0xa7f7[26]](function(_0xc3ffx12){if(_0xc3ffx12){_0xc3ffxb[_0xc3ffxc](util[_0xa7f7[21]](_0xa7f7[22],_0xc3ffx12[_0xa7f7[7]]));var _0xc3ffx13=[];switch(_0xc3ffx12[_0xa7f7[10]]){case _0xa7f7[36]:_0xc3ffxb[_0xc3ffxc](_0xa7f7[27]);_0xc3ffxb[_0xc3ffxc](_0xa7f7[28]);if(queryVoiceQueues[_0xa7f7[30]](_0xa7f7[29])){delete queryVoiceQueues[_0xa7f7[29]]};_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[32]][_0xa7f7[31]](queryVoiceQueues));_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[9]][_0xa7f7[31]](queryTelephones));_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[34]][_0xa7f7[31]](queryTrunks));_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[9]][_0xa7f7[31]](queryAgents));_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[35]][_0xa7f7[31]](queryCampaigns));break;case _0xa7f7[38]:_0xc3ffxb[_0xc3ffxc](_0xa7f7[27]);_0xc3ffxb[_0xc3ffxc](_0xa7f7[28]);_0xc3ffx13[_0xa7f7[33]](_0xc3ffx12[_0xa7f7[37]](queryVoiceQueues));_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[9]][_0xa7f7[31]](queryTelephones));_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[34]][_0xa7f7[31]](queryTrunks));_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[9]][_0xa7f7[31]](queryAgents));_0xc3ffx13[_0xa7f7[33]](db[_0xa7f7[35]][_0xa7f7[31]](queryCampaigns));break;case _0xa7f7[11]:_0xc3ffx13[_0xa7f7[33]](_0xc3ffx12[_0xa7f7[37]]({attributes:[_0xa7f7[6],_0xa7f7[7]]}))};return BPromise[_0xa7f7[39]](_0xc3ffx13)}})[_0xa7f7[26]](function(_0xc3ffxe){if(_0xc3ffxe&& _0xc3ffxe[_0xa7f7[19]]){for(var _0xc3ffxf=0;_0xc3ffxf< _0xc3ffxe[_0xa7f7[19]];_0xc3ffxf+= 1){for(var _0xc3ffx10=0;_0xc3ffx10< _0xc3ffxe[_0xc3ffxf][_0xa7f7[19]];_0xc3ffx10+= 1){switch(_0xc3ffxf){case 0:_0xc3ffxb[_0xc3ffxc](util[_0xa7f7[21]](_0xa7f7[20],_0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[7]]));if(_0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[8]]){for(var _0xc3ffx11=0;_0xc3ffx11< _0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[8]][_0xa7f7[19]];_0xc3ffx11+= 1){_0xc3ffxb[_0xc3ffxc](util[_0xa7f7[21]](_0xa7f7[22],_0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[8]][_0xc3ffx11][_0xa7f7[7]]))}};break;case 1:_0xc3ffxb[_0xc3ffxc](util[_0xa7f7[21]](_0xa7f7[23],_0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[7]]));break;case 2:_0xc3ffxb[_0xc3ffxc](util[_0xa7f7[21]](_0xa7f7[24],_0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[7]]));break;case 3:_0xc3ffxb[_0xc3ffxc](util[_0xa7f7[21]](_0xa7f7[22],_0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[7]]));break;case 4:_0xc3ffxb[_0xc3ffxc](util[_0xa7f7[21]](_0xa7f7[25],_0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[13]],_0xc3ffxe[_0xc3ffxf][_0xc3ffx10][_0xa7f7[7]]));break}}}}})[_0xa7f7[18]](function(_0xc3ffxd){_0xc3ffxb[_0xa7f7[17]](_0xc3ffxd)})}}function onDisconnect(_0xc3ffxb){joinOrLeave(_0xc3ffxb,_0xa7f7[41])}function onConnect(_0xc3ffxb){joinOrLeave(_0xc3ffxb,_0xa7f7[42])}exports[_0xa7f7[43]]= function(_0xc3ffx16){_0xc3ffx16[_0xa7f7[58]](_0xa7f7[44],function(_0xc3ffxb){_0xc3ffxb[_0xa7f7[45]](0);_0xc3ffxb[_0xa7f7[46]]= _0xc3ffxb[_0xa7f7[48]][_0xa7f7[44]][_0xa7f7[47]]+ _0xa7f7[49]+ _0xc3ffxb[_0xa7f7[48]][_0xa7f7[44]][_0xa7f7[50]];_0xc3ffxb[_0xa7f7[51]]=  new Date();_0xc3ffxb[_0xa7f7[17]]= function(_0xc3ffx17){console[_0xa7f7[17]](_0xa7f7[52]+ _0xc3ffxb[_0xa7f7[53]][_0xa7f7[7]]+ _0xa7f7[54]+ _0xc3ffxb[_0xa7f7[46]]+ _0xa7f7[55],_0xc3ffx17)};_0xc3ffxb[_0xa7f7[58]](_0xa7f7[56],function(){onDisconnect(_0xc3ffxb);_0xc3ffxb[_0xa7f7[17]](_0xa7f7[57])});onConnect(_0xc3ffxb);_0xc3ffxb[_0xa7f7[17]](_0xa7f7[59])})}
\ No newline at end of file
index 17b62b6..5c896aa 100644 (file)
@@ -1 +1 @@
-var _0xda94=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x76\x6F\x69\x63\x65","\x6D\x61\x69\x6C","\x63\x68\x61\x74","\x66\x61\x78","\x73\x6D\x73","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x65\x78\x70\x6F\x72\x74\x73","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x69\x6E\x63\x6C\x75\x64\x65\x73"];_0xda94[0];var _=require(_0xda94[1]);var channels=[_0xda94[2],_0xda94[3],_0xda94[4],_0xda94[5],_0xda94[6],_0xda94[7]];module[_0xda94[8]]= {getChannels:function(){return channels},isValidChannel:function(_0xfba1x3){_0xfba1x3= _0xfba1x3[_0xda94[9]]();return _[_0xda94[10]](channels,_0xfba1x3)}}
\ No newline at end of file
+var _0x7357=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x76\x6F\x69\x63\x65","\x6D\x61\x69\x6C","\x63\x68\x61\x74","\x66\x61\x78","\x73\x6D\x73","\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x65\x78\x70\x6F\x72\x74\x73","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x69\x6E\x63\x6C\x75\x64\x65\x73"];_0x7357[0];var _=require(_0x7357[1]);var channels=[_0x7357[2],_0x7357[3],_0x7357[4],_0x7357[5],_0x7357[6],_0x7357[7]];module[_0x7357[8]]= {getChannels:function(){return channels},isValidChannel:function(_0xb42ex3){_0xb42ex3= _0xb42ex3[_0x7357[9]]();return _[_0x7357[10]](channels,_0xb42ex3)}}
\ No newline at end of file
index d21e0f9..854c023 100644 (file)
@@ -1 +1 @@
-var _0x7e34=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x34\x30\x34","\x73\x74\x61\x74\x75\x73","\x6A\x73\x6F\x6E","\x73\x65\x6E\x64","\x72\x65\x6E\x64\x65\x72"];_0x7e34[0];module[_0x7e34[1]][404]= function pageNotFound(_0x9edbx2,_0x9edbx3){var _0x9edbx4=_0x7e34[2];var _0x9edbx5=404;var _0x9edbx6={status:_0x9edbx5};_0x9edbx3[_0x7e34[3]](_0x9edbx6[_0x7e34[3]]);_0x9edbx3[_0x7e34[6]](_0x9edbx4,{},function(_0x9edbx7,_0x9edbx8){if(_0x9edbx7){return _0x9edbx3[_0x7e34[3]](_0x9edbx6[_0x7e34[3]])[_0x7e34[4]](_0x9edbx6)};_0x9edbx3[_0x7e34[5]](_0x9edbx8)})}
\ No newline at end of file
+var _0x8019=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x34\x30\x34","\x73\x74\x61\x74\x75\x73","\x6A\x73\x6F\x6E","\x73\x65\x6E\x64","\x72\x65\x6E\x64\x65\x72"];_0x8019[0];module[_0x8019[1]][404]= function pageNotFound(_0x23ddx2,_0x23ddx3){var _0x23ddx4=_0x8019[2];var _0x23ddx5=404;var _0x23ddx6={status:_0x23ddx5};_0x23ddx3[_0x8019[3]](_0x23ddx6[_0x8019[3]]);_0x23ddx3[_0x8019[6]](_0x23ddx4,{},function(_0x23ddx7,_0x23ddx8){if(_0x23ddx7){return _0x23ddx3[_0x8019[3]](_0x23ddx6[_0x8019[3]])[_0x8019[4]](_0x23ddx6)};_0x23ddx3[_0x8019[5]](_0x23ddx8)})}
\ No newline at end of file
index fee5867..6bfdd4a 100644 (file)
@@ -1 +1 @@
-var _0x9e96=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x9e96[0];module[_0x9e96[1]]= {up:function(_0x9ab3x1,_0x9ab3x2){},down:function(_0x9ab3x1,_0x9ab3x2){}}
\ No newline at end of file
+var _0x501b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x501b[0];module[_0x501b[1]]= {up:function(_0x75ecx1,_0x75ecx2){},down:function(_0x75ecx1,_0x75ecx2){}}
\ No newline at end of file
index f9e78dd..3dd0ab2 100644 (file)
@@ -1 +1 @@
-var _0xd9c6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x69\x67\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x71\x75\x65\x72\x79\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x61\x64\x64\x43\x6F\x6C\x75\x6D\x6E","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x69\x6E\x66\x6F","\x63\x61\x74\x63\x68","\x41\x64\x64\x65\x64\x20\x63\x6F\x6C\x75\x6D\x6E\x20\x25\x73\x20\x74\x6F\x20\x25\x73","\x74\x68\x65\x6E","\x72\x65\x6D\x6F\x76\x65\x43\x6F\x6C\x75\x6D\x6E","\x52\x65\x6D\x6F\x76\x65\x64\x20\x63\x6F\x6C\x75\x6D\x6E\x20\x25\x73\x20\x66\x72\x6F\x6D\x20\x25\x73","\x72\x65\x6E\x61\x6D\x65\x43\x6F\x6C\x75\x6D\x6E","\x52\x65\x6E\x61\x6D\x65\x64\x20\x63\x6F\x6C\x75\x6D\x6E\x20\x66\x72\x6F\x6D\x20\x25\x73\x20\x74\x6F\x20\x25\x73\x20\x6F\x6E\x20\x25\x73","\x65\x78\x70\x6F\x72\x74\x73","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x64\x65\x6C\x65\x74\x65\x64\x61\x74","\x44\x41\x54\x45","\x75\x73\x65\x72\x73","\x70\x68\x6F\x6E\x65\x42\x61\x72\x52\x69\x6E\x67\x49\x6E\x55\x73\x65","\x42\x4F\x4F\x4C\x45\x41\x4E","\x64\x65\x6C\x65\x74\x65\x64","\x53\x54\x52\x49\x4E\x47","\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65","\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x64"];_0xd9c6[0];var BPromise=require(_0xd9c6[1]);var logger=require(_0xd9c6[3])(_0xd9c6[2]);var Migration=function(_0xc881x4){this[_0xd9c6[4]]= _0xc881x4};Migration[_0xd9c6[6]][_0xd9c6[5]]= function(_0xc881x5,_0xc881x6,_0xc881x7){return this[_0xd9c6[4]][_0xd9c6[5]](_0xc881x5,_0xc881x6,_0xc881x7)[_0xd9c6[11]](function(_0xc881x9){logger[_0xd9c6[8]](_0xd9c6[10],_0xc881x6,_0xc881x5)})[_0xd9c6[9]](function(_0xc881x8){logger[_0xd9c6[8]](JSON[_0xd9c6[7]](_0xc881x8))})};Migration[_0xd9c6[6]][_0xd9c6[12]]= function(_0xc881x5,_0xc881x6){return this[_0xd9c6[4]][_0xd9c6[12]](_0xc881x5,_0xc881x6)[_0xd9c6[11]](function(_0xc881x9){logger[_0xd9c6[8]](_0xd9c6[13],_0xc881x6,_0xc881x5)})[_0xd9c6[9]](function(_0xc881x8){logger[_0xd9c6[8]](JSON[_0xd9c6[7]](_0xc881x8))})};Migration[_0xd9c6[6]][_0xd9c6[14]]= function(_0xc881x5,_0xc881xa,_0xc881xb){return this[_0xd9c6[4]][_0xd9c6[14]](_0xc881x5,_0xc881xa,_0xc881xb)[_0xd9c6[11]](function(_0xc881x9){logger[_0xd9c6[8]](_0xd9c6[15],_0xc881xa,_0xc881xb,_0xc881x5)})[_0xd9c6[9]](function(_0xc881x8){logger[_0xd9c6[8]](JSON[_0xd9c6[7]](_0xc881x8))})};module[_0xd9c6[16]]= {up:function(_0xc881x4,_0xc881xc){var _0xc881xd= new Migration(_0xc881x4);_0xc881xd[_0xd9c6[5]](_0xd9c6[17],_0xd9c6[18],{type:_0xc881xc[_0xd9c6[19]]});_0xc881xd[_0xd9c6[5]](_0xd9c6[20],_0xd9c6[21],{type:_0xc881xc[_0xd9c6[22]],defaultValue:false});_0xc881xd[_0xd9c6[5]](_0xd9c6[17],_0xd9c6[23],{type:_0xc881xc[_0xd9c6[24]],defaultValue:null});_0xc881xd[_0xd9c6[14]](_0xd9c6[17],_0xd9c6[25],_0xd9c6[26])},down:function(_0xc881x4,_0xc881xc){var _0xc881xd= new Migration(_0xc881x4,_0xc881xc);_0xc881xd[_0xd9c6[12]](_0xd9c6[20],_0xd9c6[21]);_0xc881xd[_0xd9c6[12]](_0xd9c6[17],_0xd9c6[18]);_0xc881xd[_0xd9c6[12]](_0xd9c6[17],_0xd9c6[23]);_0xc881xd[_0xd9c6[14]](_0xd9c6[17],_0xd9c6[26],_0xd9c6[25])}}
\ No newline at end of file
+var _0x7233=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x69\x67\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x71\x75\x65\x72\x79\x49\x6E\x74\x65\x72\x66\x61\x63\x65","\x61\x64\x64\x43\x6F\x6C\x75\x6D\x6E","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x69\x6E\x66\x6F","\x63\x61\x74\x63\x68","\x41\x64\x64\x65\x64\x20\x63\x6F\x6C\x75\x6D\x6E\x20\x25\x73\x20\x74\x6F\x20\x25\x73","\x74\x68\x65\x6E","\x72\x65\x6D\x6F\x76\x65\x43\x6F\x6C\x75\x6D\x6E","\x52\x65\x6D\x6F\x76\x65\x64\x20\x63\x6F\x6C\x75\x6D\x6E\x20\x25\x73\x20\x66\x72\x6F\x6D\x20\x25\x73","\x72\x65\x6E\x61\x6D\x65\x43\x6F\x6C\x75\x6D\x6E","\x52\x65\x6E\x61\x6D\x65\x64\x20\x63\x6F\x6C\x75\x6D\x6E\x20\x66\x72\x6F\x6D\x20\x25\x73\x20\x74\x6F\x20\x25\x73\x20\x6F\x6E\x20\x25\x73","\x65\x78\x70\x6F\x72\x74\x73","\x63\x6D\x5F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x64\x65\x6C\x65\x74\x65\x64\x61\x74","\x44\x41\x54\x45","\x75\x73\x65\x72\x73","\x70\x68\x6F\x6E\x65\x42\x61\x72\x52\x69\x6E\x67\x49\x6E\x55\x73\x65","\x42\x4F\x4F\x4C\x45\x41\x4E","\x64\x65\x6C\x65\x74\x65\x64","\x53\x54\x52\x49\x4E\x47","\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65","\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x64"];_0x7233[0];var BPromise=require(_0x7233[1]);var logger=require(_0x7233[3])(_0x7233[2]);var Migration=function(_0x110dx4){this[_0x7233[4]]= _0x110dx4};Migration[_0x7233[6]][_0x7233[5]]= function(_0x110dx5,_0x110dx6,_0x110dx7){return this[_0x7233[4]][_0x7233[5]](_0x110dx5,_0x110dx6,_0x110dx7)[_0x7233[11]](function(_0x110dx9){logger[_0x7233[8]](_0x7233[10],_0x110dx6,_0x110dx5)})[_0x7233[9]](function(_0x110dx8){logger[_0x7233[8]](JSON[_0x7233[7]](_0x110dx8))})};Migration[_0x7233[6]][_0x7233[12]]= function(_0x110dx5,_0x110dx6){return this[_0x7233[4]][_0x7233[12]](_0x110dx5,_0x110dx6)[_0x7233[11]](function(_0x110dx9){logger[_0x7233[8]](_0x7233[13],_0x110dx6,_0x110dx5)})[_0x7233[9]](function(_0x110dx8){logger[_0x7233[8]](JSON[_0x7233[7]](_0x110dx8))})};Migration[_0x7233[6]][_0x7233[14]]= function(_0x110dx5,_0x110dxa,_0x110dxb){return this[_0x7233[4]][_0x7233[14]](_0x110dx5,_0x110dxa,_0x110dxb)[_0x7233[11]](function(_0x110dx9){logger[_0x7233[8]](_0x7233[15],_0x110dxa,_0x110dxb,_0x110dx5)})[_0x7233[9]](function(_0x110dx8){logger[_0x7233[8]](JSON[_0x7233[7]](_0x110dx8))})};module[_0x7233[16]]= {up:function(_0x110dx4,_0x110dxc){var _0x110dxd= new Migration(_0x110dx4);_0x110dxd[_0x7233[5]](_0x7233[17],_0x7233[18],{type:_0x110dxc[_0x7233[19]]});_0x110dxd[_0x7233[5]](_0x7233[20],_0x7233[21],{type:_0x110dxc[_0x7233[22]],defaultValue:false});_0x110dxd[_0x7233[5]](_0x7233[17],_0x7233[23],{type:_0x110dxc[_0x7233[24]],defaultValue:null});_0x110dxd[_0x7233[14]](_0x7233[17],_0x7233[25],_0x7233[26])},down:function(_0x110dx4,_0x110dxc){var _0x110dxd= new Migration(_0x110dx4,_0x110dxc);_0x110dxd[_0x7233[12]](_0x7233[20],_0x7233[21]);_0x110dxd[_0x7233[12]](_0x7233[17],_0x7233[18]);_0x110dxd[_0x7233[12]](_0x7233[17],_0x7233[23]);_0x110dxd[_0x7233[14]](_0x7233[17],_0x7233[26],_0x7233[25])}}
\ No newline at end of file
index f53198e..41adc30 100644 (file)
@@ -1 +1 @@
-var _0xd432=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x74\x68","\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x64\x61\x74\x61\x62\x61\x73\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x6F\x70\x74\x69\x6F\x6E\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65\x48\x69\x73\x74\x6F\x72\x79","\x55\x73\x65\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x2F\x75\x73\x65\x72\x2E\x6D\x6F\x64\x65\x6C","\x69\x6D\x70\x6F\x72\x74","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x54\x72\x75\x6E\x6B","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B\x2F\x74\x72\x75\x6E\x6B\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x44\x61\x73\x68\x62\x6F\x61\x72\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x2E\x6D\x6F\x64\x65\x6C","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x2E\x2E\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x51\x75\x65\x75\x65\x2F\x66\x61\x78\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x51\x75\x65\x75\x65\x2F\x73\x6D\x73\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x4C\x69\x73\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x4C\x69\x73\x74\x2F\x63\x6D\x4C\x69\x73\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x63\x74\x69\x6F\x6E\x2F\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2E\x6D\x6F\x64\x65\x6C","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2E\x6D\x6F\x64\x65\x6C","\x50\x61\x75\x73\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x70\x61\x75\x73\x65\x2F\x70\x61\x75\x73\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x64\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x64\x72\x2F\x63\x64\x72\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2E\x6D\x6F\x64\x65\x6C","\x53\x63\x68\x65\x64\x75\x6C\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x2E\x6D\x6F\x64\x65\x6C","\x53\x6F\x75\x6E\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64\x2F\x73\x6F\x75\x6E\x64\x2E\x6D\x6F\x64\x65\x6C","\x54\x61\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x61\x67\x2F\x74\x61\x67\x2E\x6D\x6F\x64\x65\x6C","\x54\x65\x6D\x70\x6C\x61\x74\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2E\x6D\x6F\x64\x65\x6C","\x54\x72\x69\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x72\x69\x67\x67\x65\x72\x2F\x74\x72\x69\x67\x67\x65\x72\x2E\x6D\x6F\x64\x65\x6C","\x56\x61\x72\x69\x61\x62\x6C\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2E\x6D\x6F\x64\x65\x6C","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x4E\x65\x74\x77\x6F\x72\x6B","\x2E\x2E\x2F\x61\x70\x69\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2E\x6D\x6F\x64\x65\x6C","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x65\x74\x74\x69\x6E\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x65\x74\x74\x69\x6E\x67\x2F\x73\x65\x74\x74\x69\x6E\x67\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x6D\x6F\x64\x65\x6C","\x54\x65\x61\x6D","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x65\x61\x6D\x2F\x74\x65\x61\x6D\x2E\x6D\x6F\x64\x65\x6C","\x4C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2E\x6D\x6F\x64\x65\x6C","\x63\x61\x73\x63\x61\x64\x65","\x55\x73\x65\x72\x49\x64","\x68\x61\x73\x4F\x6E\x65","\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x68\x61\x73\x4D\x61\x6E\x79","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x52\x74","\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x43\x6F\x6E\x74\x61\x63\x74\x73","\x63\x6D\x5F\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x62\x65\x6C\x6F\x6E\x67\x73\x54\x6F\x4D\x61\x6E\x79","\x4C\x69\x73\x74\x73","\x63\x6D\x5F\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6C\x69\x73\x74\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x74\x65\x61\x6D\x73","\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6D\x61\x69\x6C\x5F\x72\x6F\x6F\x6D\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x63\x68\x61\x74\x5F\x72\x6F\x6F\x6D\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x66\x61\x78\x5F\x72\x6F\x6F\x6D\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x73\x6D\x73\x5F\x72\x6F\x6F\x6D\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x72\x6F\x6F\x6D\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x73","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73","\x46\x61\x78\x51\x75\x65\x75\x65\x73","\x53\x6D\x73\x51\x75\x65\x75\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x73","\x53\x70\x69\x65\x64\x41\x67\x65\x6E\x74\x73","\x43\x68\x61\x6E\x53\x70\x79\x49\x64","\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x53\x6F\x75\x6E\x64\x73","\x6D\x6F\x68\x5F\x68\x61\x73\x5F\x73\x6F\x75\x6E\x64\x73","\x4D\x65\x6D\x62\x65\x72\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x48\x6F\x70\x70\x65\x72\x73","\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x54\x72\x75\x6E\x6B\x49\x64","\x62\x65\x6C\x6F\x6E\x67\x73\x54\x6F","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70\x49\x64","\x49\x6E\x74\x65\x72\x76\x61\x6C\x49\x64","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x68\x61\x73\x5F\x63\x6D\x5F\x6C\x69\x73\x74\x73","\x41\x67\x65\x6E\x74\x73","\x54\x65\x61\x6D\x73","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73","\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x68\x61\x73\x5F\x63\x6D\x5F\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74\x73","\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x73","\x75\x6E\x69\x71\x75\x65\x69\x64","\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x73","\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x49\x6D\x61\x70","\x53\x6D\x74\x70","\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x4C\x69\x73\x74","\x4C\x69\x73\x74\x49\x64","\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x6D\x61\x69\x6C\x5F\x71\x75\x65\x75\x65\x73","\x4D\x65\x73\x73\x61\x67\x65\x73","\x4D\x61\x69\x6C\x52\x6F\x6F\x6D\x49\x64","\x41\x63\x63\x6F\x75\x6E\x74","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x49\x64","\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x72\x65\x73\x74\x72\x69\x63\x74","\x49\x74\x65\x6D\x73","\x45\x78\x6E\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x46\x61\x78\x52\x6F\x6F\x6D\x49\x64","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x66\x61\x78\x5F\x71\x75\x65\x75\x65\x73","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x6D\x73\x52\x6F\x6F\x6D\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x73\x6D\x73\x5F\x71\x75\x65\x75\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x49\x64","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x6F\x6F\x6D\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x71\x75\x65\x75\x65\x73","\x45\x6E\x71\x75\x69\x72\x69\x65\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x49\x64","\x56\x69\x73\x69\x74\x6F\x72\x73","\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x4F\x66\x66\x6C\x69\x6E\x65","\x4F\x66\x66\x6C\x69\x6E\x65\x49\x64","\x4F\x6E\x6C\x69\x6E\x65","\x4F\x6E\x6C\x69\x6E\x65\x49\x64","\x4F\x66\x66\x6C\x69\x6E\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x4F\x66\x66\x6C\x69\x6E\x65\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64","\x41\x67\x65\x6E\x74","\x51\x75\x65\x75\x65","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x49\x64","\x57\x65\x62\x73\x69\x74\x65","\x43\x68\x61\x74\x52\x6F\x6F\x6D\x49\x64","\x56\x69\x73\x69\x74\x6F\x72","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x63\x68\x61\x74\x5F\x71\x75\x65\x75\x65\x73","\x45\x6E\x71\x75\x69\x72\x79","\x43\x6F\x6D\x70\x61\x6E\x79\x49\x64","\x43\x6F\x6D\x70\x61\x6E\x79","\x55\x73\x65\x72\x73","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x51\x75\x65\x75\x65\x73","\x41\x6C\x6C","\x4F\x6E\x65\x41\x6C\x6C","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x41\x6C\x6C\x49\x64","\x41\x6E\x79","\x4F\x6E\x65\x41\x6E\x79","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x41\x6E\x79\x49\x64","\x41\x63\x74\x69\x6F\x6E\x73","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x49\x64","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x4D\x6F\x68\x73","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x41\x6C\x6C\x49\x64","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x41\x6E\x79\x49\x64","\x54\x72\x69\x67\x67\x65\x72\x49\x64","\x46\x69\x65\x6C\x64\x73","\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x49\x64","\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x49\x64","\x4D\x65\x74\x72\x69\x63\x49\x64","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x53\x75\x62\x6A\x65\x63\x74\x49\x64","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x49\x64","\x46\x69\x65\x6C\x64\x49\x64","\x53\x75\x62\x6A\x65\x63\x74","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x46\x69\x65\x6C\x64","\x56\x61\x72\x69\x61\x62\x6C\x65\x49\x64","\x69\x6E\x74\x5F\x7A\x65\x6E\x64\x65\x73\x6B\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x5F\x68\x61\x73\x5F\x74\x61\x67\x73","\x69\x6E\x74\x5F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x5F\x68\x61\x73\x5F\x74\x61\x67\x73","\x71\x75\x65\x73\x74\x69\x6F\x6E\x49\x64","\x73\x65\x73\x73\x69\x6F\x6E\x49\x64","\x70\x72\x6F\x6A\x65\x63\x74\x49\x64","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x49\x64","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73\x5F\x68\x61\x73\x5F\x63\x6D\x5F\x6C\x69\x73\x74\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73\x5F\x68\x61\x73\x5F\x63\x6D\x5F\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xd432[0];var path=require(_0xd432[1]);var config=require(_0xd432[2]);var Sequelize=require(_0xd432[3]);var db={Sequelize:Sequelize,sequelize: new Sequelize(config[_0xd432[3]][_0xd432[4]],config[_0xd432[3]][_0xd432[5]],config[_0xd432[3]][_0xd432[6]],config[_0xd432[3]][_0xd432[7]])};var dbH={Sequelize:Sequelize,sequelize: new Sequelize(config[_0xd432[8]][_0xd432[4]],config[_0xd432[8]][_0xd432[5]],config[_0xd432[8]][_0xd432[6]],config[_0xd432[8]][_0xd432[7]])};db[_0xd432[9]]= db[_0xd432[3]][_0xd432[11]](_0xd432[10]);db[_0xd432[12]]= db[_0xd432[3]][_0xd432[11]](_0xd432[13]);db[_0xd432[14]]= db[_0xd432[3]][_0xd432[11]](_0xd432[15]);db[_0xd432[16]]= db[_0xd432[3]][_0xd432[11]](_0xd432[17]);db[_0xd432[18]]= db[_0xd432[3]][_0xd432[11]](_0xd432[19]);db[_0xd432[20]]= db[_0xd432[3]][_0xd432[11]](_0xd432[21]);db[_0xd432[22]]= db[_0xd432[3]][_0xd432[11]](_0xd432[23]);db[_0xd432[24]]= db[_0xd432[3]][_0xd432[11]](_0xd432[25]);db[_0xd432[26]]= db[_0xd432[3]][_0xd432[11]](_0xd432[27]);db[_0xd432[28]]= db[_0xd432[3]][_0xd432[11]](_0xd432[29]);db[_0xd432[30]]= db[_0xd432[3]][_0xd432[11]](_0xd432[31]);db[_0xd432[32]]= db[_0xd432[3]][_0xd432[11]](_0xd432[33]);db[_0xd432[34]]= db[_0xd432[3]][_0xd432[11]](_0xd432[35]);db[_0xd432[36]]= db[_0xd432[3]][_0xd432[11]](_0xd432[37]);db[_0xd432[38]]= db[_0xd432[3]][_0xd432[11]](_0xd432[39]);db[_0xd432[40]]= db[_0xd432[3]][_0xd432[11]](_0xd432[41]);db[_0xd432[42]]= db[_0xd432[3]][_0xd432[11]](_0xd432[43]);db[_0xd432[44]]= db[_0xd432[3]][_0xd432[11]](_0xd432[45]);db[_0xd432[46]]= db[_0xd432[3]][_0xd432[11]](_0xd432[47]);db[_0xd432[48]]= db[_0xd432[3]][_0xd432[11]](_0xd432[49]);db[_0xd432[50]]= db[_0xd432[3]][_0xd432[11]](_0xd432[51]);db[_0xd432[52]]= db[_0xd432[3]][_0xd432[11]](_0xd432[53]);db[_0xd432[54]]= db[_0xd432[3]][_0xd432[11]](_0xd432[55]);db[_0xd432[56]]= db[_0xd432[3]][_0xd432[11]](_0xd432[57]);db[_0xd432[58]]= db[_0xd432[3]][_0xd432[11]](_0xd432[59]);db[_0xd432[60]]= db[_0xd432[3]][_0xd432[11]](_0xd432[61]);db[_0xd432[62]]= db[_0xd432[3]][_0xd432[11]](_0xd432[63]);db[_0xd432[64]]= db[_0xd432[3]][_0xd432[11]](_0xd432[65]);db[_0xd432[66]]= db[_0xd432[3]][_0xd432[11]](_0xd432[67]);db[_0xd432[68]]= db[_0xd432[3]][_0xd432[11]](_0xd432[69]);db[_0xd432[70]]= db[_0xd432[3]][_0xd432[11]](_0xd432[71]);db[_0xd432[72]]= db[_0xd432[3]][_0xd432[11]](_0xd432[73]);db[_0xd432[74]]= db[_0xd432[3]][_0xd432[11]](_0xd432[75]);db[_0xd432[76]]= db[_0xd432[3]][_0xd432[11]](_0xd432[77]);db[_0xd432[78]]= db[_0xd432[3]][_0xd432[11]](_0xd432[79]);db[_0xd432[80]]= db[_0xd432[3]][_0xd432[11]](_0xd432[81]);db[_0xd432[82]]= db[_0xd432[3]][_0xd432[11]](_0xd432[83]);db[_0xd432[84]]= db[_0xd432[3]][_0xd432[11]](_0xd432[85]);db[_0xd432[86]]= db[_0xd432[3]][_0xd432[11]](_0xd432[87]);db[_0xd432[88]]= db[_0xd432[3]][_0xd432[11]](_0xd432[89]);db[_0xd432[90]]= db[_0xd432[3]][_0xd432[11]](_0xd432[91]);db[_0xd432[92]]= db[_0xd432[3]][_0xd432[11]](_0xd432[93]);db[_0xd432[94]]= db[_0xd432[3]][_0xd432[11]](_0xd432[95]);db[_0xd432[96]]= db[_0xd432[3]][_0xd432[11]](_0xd432[97]);db[_0xd432[98]]= db[_0xd432[3]][_0xd432[11]](_0xd432[99]);db[_0xd432[100]]= db[_0xd432[3]][_0xd432[11]](_0xd432[101]);db[_0xd432[102]]= db[_0xd432[3]][_0xd432[11]](_0xd432[103]);db[_0xd432[104]]= db[_0xd432[3]][_0xd432[11]](_0xd432[105]);db[_0xd432[106]]= db[_0xd432[3]][_0xd432[11]](_0xd432[107]);db[_0xd432[108]]= db[_0xd432[3]][_0xd432[11]](_0xd432[109]);db[_0xd432[110]]= db[_0xd432[3]][_0xd432[11]](_0xd432[111]);db[_0xd432[112]]= db[_0xd432[3]][_0xd432[11]](_0xd432[113]);db[_0xd432[114]]= db[_0xd432[3]][_0xd432[11]](_0xd432[115]);db[_0xd432[116]]= db[_0xd432[3]][_0xd432[11]](_0xd432[117]);db[_0xd432[118]]= db[_0xd432[3]][_0xd432[11]](_0xd432[119]);db[_0xd432[120]]= db[_0xd432[3]][_0xd432[11]](_0xd432[121]);db[_0xd432[122]]= db[_0xd432[3]][_0xd432[11]](_0xd432[123]);db[_0xd432[124]]= db[_0xd432[3]][_0xd432[11]](_0xd432[125]);db[_0xd432[126]]= db[_0xd432[3]][_0xd432[11]](_0xd432[127]);db[_0xd432[128]]= db[_0xd432[3]][_0xd432[11]](_0xd432[129]);db[_0xd432[130]]= db[_0xd432[3]][_0xd432[11]](_0xd432[131]);db[_0xd432[132]]= db[_0xd432[3]][_0xd432[11]](_0xd432[133]);db[_0xd432[134]]= db[_0xd432[3]][_0xd432[11]](_0xd432[135]);db[_0xd432[136]]= db[_0xd432[3]][_0xd432[11]](_0xd432[137]);db[_0xd432[138]]= db[_0xd432[3]][_0xd432[11]](_0xd432[139]);db[_0xd432[140]]= db[_0xd432[3]][_0xd432[11]](_0xd432[141]);db[_0xd432[142]]= db[_0xd432[3]][_0xd432[11]](_0xd432[143]);db[_0xd432[144]]= db[_0xd432[3]][_0xd432[11]](_0xd432[145]);db[_0xd432[146]]= db[_0xd432[3]][_0xd432[11]](_0xd432[147]);db[_0xd432[148]]= db[_0xd432[3]][_0xd432[11]](_0xd432[149]);db[_0xd432[150]]= db[_0xd432[3]][_0xd432[11]](_0xd432[151]);db[_0xd432[152]]= db[_0xd432[3]][_0xd432[11]](_0xd432[153]);db[_0xd432[154]]= db[_0xd432[3]][_0xd432[11]](_0xd432[155]);db[_0xd432[156]]= db[_0xd432[3]][_0xd432[11]](_0xd432[157]);db[_0xd432[158]]= db[_0xd432[3]][_0xd432[11]](_0xd432[159]);db[_0xd432[160]]= db[_0xd432[3]][_0xd432[11]](_0xd432[161]);db[_0xd432[162]]= db[_0xd432[3]][_0xd432[11]](_0xd432[163]);db[_0xd432[164]]= db[_0xd432[3]][_0xd432[11]](_0xd432[165]);db[_0xd432[166]]= db[_0xd432[3]][_0xd432[11]](_0xd432[167]);db[_0xd432[168]]= db[_0xd432[3]][_0xd432[11]](_0xd432[169]);db[_0xd432[170]]= db[_0xd432[3]][_0xd432[11]](_0xd432[171]);db[_0xd432[172]]= db[_0xd432[3]][_0xd432[11]](_0xd432[173]);db[_0xd432[174]]= db[_0xd432[3]][_0xd432[11]](_0xd432[175]);db[_0xd432[176]]= db[_0xd432[3]][_0xd432[11]](_0xd432[177]);db[_0xd432[178]]= db[_0xd432[3]][_0xd432[11]](_0xd432[179]);db[_0xd432[180]]= db[_0xd432[3]][_0xd432[11]](_0xd432[181]);db[_0xd432[182]]= db[_0xd432[3]][_0xd432[11]](_0xd432[183]);db[_0xd432[184]]= db[_0xd432[3]][_0xd432[11]](_0xd432[185]);db[_0xd432[186]]= db[_0xd432[3]][_0xd432[11]](_0xd432[187]);db[_0xd432[188]]= db[_0xd432[3]][_0xd432[11]](_0xd432[189]);db[_0xd432[190]]= db[_0xd432[3]][_0xd432[11]](_0xd432[191]);db[_0xd432[192]]= db[_0xd432[3]][_0xd432[11]](_0xd432[193]);db[_0xd432[194]]= db[_0xd432[3]][_0xd432[11]](_0xd432[195]);db[_0xd432[196]]= db[_0xd432[3]][_0xd432[11]](_0xd432[197]);db[_0xd432[198]]= db[_0xd432[3]][_0xd432[11]](_0xd432[199]);db[_0xd432[200]]= db[_0xd432[3]][_0xd432[11]](_0xd432[201]);db[_0xd432[202]]= db[_0xd432[3]][_0xd432[11]](_0xd432[203]);db[_0xd432[204]]= db[_0xd432[3]][_0xd432[11]](_0xd432[205]);db[_0xd432[206]]= db[_0xd432[3]][_0xd432[11]](_0xd432[207]);db[_0xd432[208]]= db[_0xd432[3]][_0xd432[11]](_0xd432[209]);db[_0xd432[210]]= db[_0xd432[3]][_0xd432[11]](_0xd432[211]);db[_0xd432[212]]= db[_0xd432[3]][_0xd432[11]](_0xd432[213]);db[_0xd432[214]]= db[_0xd432[3]][_0xd432[11]](_0xd432[215]);db[_0xd432[216]]= db[_0xd432[3]][_0xd432[11]](_0xd432[217]);db[_0xd432[218]]= db[_0xd432[3]][_0xd432[11]](_0xd432[219]);db[_0xd432[220]]= db[_0xd432[3]][_0xd432[11]](_0xd432[221]);db[_0xd432[222]]= db[_0xd432[3]][_0xd432[11]](_0xd432[223]);db[_0xd432[224]]= db[_0xd432[3]][_0xd432[11]](_0xd432[225]);db[_0xd432[226]]= db[_0xd432[3]][_0xd432[11]](_0xd432[227]);db[_0xd432[228]]= db[_0xd432[3]][_0xd432[11]](_0xd432[229]);db[_0xd432[230]]= db[_0xd432[3]][_0xd432[11]](_0xd432[231]);db[_0xd432[192]]= db[_0xd432[3]][_0xd432[11]](_0xd432[193]);db[_0xd432[232]]= db[_0xd432[3]][_0xd432[11]](_0xd432[233]);db[_0xd432[234]]= db[_0xd432[3]][_0xd432[11]](_0xd432[235]);db[_0xd432[236]]= db[_0xd432[3]][_0xd432[11]](_0xd432[237]);db[_0xd432[238]]= db[_0xd432[3]][_0xd432[11]](_0xd432[239]);db[_0xd432[240]]= db[_0xd432[3]][_0xd432[11]](_0xd432[241]);db[_0xd432[242]]= db[_0xd432[3]][_0xd432[11]](_0xd432[243]);db[_0xd432[244]]= db[_0xd432[3]][_0xd432[11]](_0xd432[245]);db[_0xd432[246]]= db[_0xd432[3]][_0xd432[11]](_0xd432[247]);db[_0xd432[248]]= db[_0xd432[3]][_0xd432[11]](_0xd432[249]);db[_0xd432[250]]= db[_0xd432[3]][_0xd432[11]](_0xd432[251]);db[_0xd432[252]]= db[_0xd432[3]][_0xd432[11]](_0xd432[253]);db[_0xd432[254]]= db[_0xd432[3]][_0xd432[11]](_0xd432[255]);db[_0xd432[256]]= db[_0xd432[3]][_0xd432[11]](_0xd432[257]);db[_0xd432[258]]= db[_0xd432[3]][_0xd432[11]](_0xd432[259]);db[_0xd432[260]]= db[_0xd432[3]][_0xd432[11]](_0xd432[261]);db[_0xd432[262]]= db[_0xd432[3]][_0xd432[11]](_0xd432[263]);db[_0xd432[264]]= db[_0xd432[3]][_0xd432[11]](_0xd432[265]);db[_0xd432[266]]= db[_0xd432[3]][_0xd432[11]](_0xd432[267]);db[_0xd432[268]]= db[_0xd432[3]][_0xd432[11]](_0xd432[269]);db[_0xd432[9]][_0xd432[272]](db.VoiceMail,{"\x61\x73":_0xd432[26],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271]});db[_0xd432[9]][_0xd432[274]](db.VoiceRecording,{"\x61\x73":_0xd432[273],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271]});db[_0xd432[9]][_0xd432[274]](db.UserVoiceQueueRt,{"\x61\x73":_0xd432[275],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271]});db[_0xd432[9]][_0xd432[274]](db.VoiceExtension,{"\x61\x73":_0xd432[276],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x68\x6F\x6F\x6B\x73":true});db[_0xd432[9]][_0xd432[274]](db.CmHopperFinal,{"\x61\x73":_0xd432[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271]});db[_0xd432[9]][_0xd432[274]](db.CmHopperHistory,{"\x61\x73":_0xd432[278],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271]});db[_0xd432[9]][_0xd432[281]](db.CmContact,{"\x61\x73":_0xd432[279],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[280]});db[_0xd432[9]][_0xd432[281]](db.CmList,{"\x61\x73":_0xd432[282],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[283]});db[_0xd432[9]][_0xd432[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[284]});db[_0xd432[9]][_0xd432[281]](db.MailInteraction,{"\x61\x73":_0xd432[285],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[286]});db[_0xd432[9]][_0xd432[281]](db.ChatInteraction,{"\x61\x73":_0xd432[285],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[287]});db[_0xd432[9]][_0xd432[281]](db.FaxInteraction,{"\x61\x73":_0xd432[285],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[288]});db[_0xd432[9]][_0xd432[281]](db.SmsInteraction,{"\x61\x73":_0xd432[285],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[289]});db[_0xd432[9]][_0xd432[281]](db.OpenchannelInteraction,{"\x61\x73":_0xd432[285],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[290]});db[_0xd432[9]][_0xd432[281]](db.VoiceQueue,{"\x61\x73":_0xd432[291],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[46],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0xd432[9]][_0xd432[281]](db.MailQueue,{"\x61\x73":_0xd432[292],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[50],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0xd432[9]][_0xd432[281]](db.ChatQueue,{"\x61\x73":_0xd432[293],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[48],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0xd432[9]][_0xd432[281]](db.FaxQueue,{"\x61\x73":_0xd432[294],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[52],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0xd432[9]][_0xd432[281]](db.SmsQueue,{"\x61\x73":_0xd432[295],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[54],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0xd432[9]][_0xd432[281]](db.OpenchannelQueue,{"\x61\x73":_0xd432[296],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[56],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0xd432[9]][_0xd432[281]](db.CmList,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[283]});db[_0xd432[12]][_0xd432[274]](db.VoiceExtension,{"\x61\x73":_0xd432[297],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[298]});db[_0xd432[14]][_0xd432[274]](db.VoiceExtension,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[18]][_0xd432[274]](db.VoiceExtension,{"\x61\x73":_0xd432[299],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[20]][_0xd432[281]](db.Sound,{"\x61\x73":_0xd432[300],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[301]});db[_0xd432[22]][_0xd432[274]](db.UserVoiceQueueRt,{"\x61\x73":_0xd432[302],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[303]});db[_0xd432[22]][_0xd432[274]](db.CmHopper,{"\x61\x73":_0xd432[304],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[303]});db[_0xd432[22]][_0xd432[274]](db.CmHopperFinal,{"\x61\x73":_0xd432[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[303]});db[_0xd432[22]][_0xd432[274]](db.CmHopperHistory,{"\x61\x73":_0xd432[305],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[303]});db[_0xd432[22]][_0xd432[274]](db.CmHopperBlack,{"\x61\x73":_0xd432[306],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[303]});db[_0xd432[22]][_0xd432[308]](db.Trunk,{"\x61\x73":_0xd432[40],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[307]});db[_0xd432[22]][_0xd432[308]](db.Trunk,{"\x61\x73":_0xd432[309],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[310]});db[_0xd432[22]][_0xd432[308]](db.Interval,{"\x61\x73":_0xd432[172],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311]});db[_0xd432[22]][_0xd432[281]](db.CmList,{"\x61\x73":_0xd432[282],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[312]});db[_0xd432[22]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[313],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[46]});db[_0xd432[22]][_0xd432[281]](db.Team,{"\x61\x73":_0xd432[314],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[315]});db[_0xd432[22]][_0xd432[281]](db.CmList,{"\x61\x73":_0xd432[316],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[317]});db[_0xd432[30]][_0xd432[274]](db.VoiceQueueReport,{"\x61\x73":_0xd432[318],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0xd432[30]][_0xd432[274]](db.VoiceAgentReport,{"\x61\x73":_0xd432[320],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0xd432[30]][_0xd432[308]](db.User,{"\x61\x73":_0xd432[9],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271]});db[_0xd432[30]][_0xd432[308]](db.CmContact,{"\x61\x73":_0xd432[321],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[322]});db[_0xd432[62]][_0xd432[272]](db.MailServerIn,{"\x61\x73":_0xd432[323],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[62]][_0xd432[272]](db.MailServerOut,{"\x61\x73":_0xd432[324],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[62]][_0xd432[274]](db.MailInteraction,{"\x61\x73":_0xd432[285]});db[_0xd432[62]][_0xd432[274]](db.MailApplication,{"\x61\x73":_0xd432[299]});db[_0xd432[62]][_0xd432[274]](db.MailDisposition,{"\x61\x73":_0xd432[325]});db[_0xd432[62]][_0xd432[308]](db.CmList,{"\x61\x73":_0xd432[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[62]][_0xd432[308]](db.Template,{"\x61\x73":_0xd432[186],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[328]});db[_0xd432[64]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[313],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[50]});db[_0xd432[64]][_0xd432[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[329],"\x61\x73":_0xd432[314]});db[_0xd432[66]][_0xd432[274]](db.MailMessage,{"\x61\x73":_0xd432[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[331]});db[_0xd432[66]][_0xd432[308]](db.MailAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[333]});db[_0xd432[66]][_0xd432[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[286],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[331]});db[_0xd432[68]][_0xd432[274]](db.MailAttachment,{"\x61\x73":_0xd432[334],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[335]});db[_0xd432[68]][_0xd432[308]](db.User,{"\x61\x73":_0xd432[9]});db[_0xd432[68]][_0xd432[308]](db.MailInteraction,{"\x61\x73":_0xd432[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[331]});db[_0xd432[70]][_0xd432[308]](db.User,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[70]][_0xd432[308]](db.MailQueue,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[70]][_0xd432[308]](db.MailAccount,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[72]][_0xd432[308]](db.MailAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[333]});db[_0xd432[76]][_0xd432[274]](db.VoiceQueueReport,{"\x61\x73":_0xd432[318],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0xd432[76]][_0xd432[274]](db.VoiceAgentReport,{"\x61\x73":_0xd432[320],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0xd432[82]][_0xd432[274]](db.DashboardItem,{"\x61\x73":_0xd432[338],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[86]][_0xd432[274]](db.FaxInteraction,{"\x61\x73":_0xd432[285]});db[_0xd432[86]][_0xd432[274]](db.FaxApplication,{"\x61\x73":_0xd432[299]});db[_0xd432[86]][_0xd432[274]](db.VoiceExtension,{"\x61\x73":_0xd432[339],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[86]][_0xd432[274]](db.FaxDisposition,{"\x61\x73":_0xd432[325]});db[_0xd432[86]][_0xd432[308]](db.Trunk,{"\x61\x73":_0xd432[40]});db[_0xd432[86]][_0xd432[308]](db.CmList,{"\x61\x73":_0xd432[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[88]][_0xd432[308]](db.User,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[88]][_0xd432[308]](db.FaxQueue,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[88]][_0xd432[308]](db.FaxAccount,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[90]][_0xd432[308]](db.FaxAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[340]});db[_0xd432[94]][_0xd432[274]](db.FaxMessage,{"\x61\x73":_0xd432[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[341]});db[_0xd432[94]][_0xd432[308]](db.FaxAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[340]});db[_0xd432[94]][_0xd432[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[288],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[341]});db[_0xd432[96]][_0xd432[274]](db.FaxAttachment,{"\x61\x73":_0xd432[334],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[342]});db[_0xd432[96]][_0xd432[308]](db.User,{"\x61\x73":_0xd432[9]});db[_0xd432[96]][_0xd432[308]](db.FaxInteraction,{"\x61\x73":_0xd432[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[341]});db[_0xd432[98]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[313],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[52]});db[_0xd432[98]][_0xd432[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[343],"\x61\x73":_0xd432[314]});db[_0xd432[100]][_0xd432[274]](db.VoiceQueueReport,{"\x61\x73":_0xd432[318],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0xd432[100]][_0xd432[274]](db.VoiceAgentReport,{"\x61\x73":_0xd432[320],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0xd432[102]][_0xd432[274]](db.SmsMessage,{"\x61\x73":_0xd432[330],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[344]});db[_0xd432[102]][_0xd432[274]](db.SmsInteraction,{"\x61\x73":_0xd432[285]});db[_0xd432[102]][_0xd432[274]](db.SmsApplication,{"\x61\x73":_0xd432[299]});db[_0xd432[102]][_0xd432[274]](db.SmsDisposition,{"\x61\x73":_0xd432[325]});db[_0xd432[102]][_0xd432[308]](db.CmList,{"\x61\x73":_0xd432[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[104]][_0xd432[308]](db.User,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[104]][_0xd432[308]](db.SmsQueue,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[104]][_0xd432[308]](db.SmsAccount,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[106]][_0xd432[308]](db.SmsAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[344]});db[_0xd432[108]][_0xd432[274]](db.SmsMessage,{"\x61\x73":_0xd432[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[345]});db[_0xd432[108]][_0xd432[308]](db.SmsAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[344]});db[_0xd432[108]][_0xd432[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[289],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[345]});db[_0xd432[110]][_0xd432[308]](db.User,{"\x61\x73":_0xd432[9]});db[_0xd432[110]][_0xd432[308]](db.SmsInteraction,{"\x61\x73":_0xd432[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[345]});db[_0xd432[112]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[313],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[54]});db[_0xd432[112]][_0xd432[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[346],"\x61\x73":_0xd432[314]});db[_0xd432[114]][_0xd432[274]](db.OpenchannelInteraction,{"\x61\x73":_0xd432[285],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[347]});db[_0xd432[114]][_0xd432[274]](db.OpenchannelMessage,{"\x61\x73":_0xd432[330],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[347]});db[_0xd432[114]][_0xd432[274]](db.OpenchannelApplication,{"\x61\x73":_0xd432[299],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[347]});db[_0xd432[114]][_0xd432[274]](db.OpenchannelDisposition,{"\x61\x73":_0xd432[325],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[347]});db[_0xd432[114]][_0xd432[308]](db.CmList,{"\x61\x73":_0xd432[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[116]][_0xd432[308]](db.User,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[116]][_0xd432[308]](db.OpenchannelQueue,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[348]});db[_0xd432[116]][_0xd432[308]](db.OpenchannelAccount,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[347]});db[_0xd432[116]][_0xd432[308]](db.Interval,{"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311]});db[_0xd432[118]][_0xd432[308]](db.OpenchannelAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[347]});db[_0xd432[120]][_0xd432[274]](db.OpenchannelMessage,{"\x61\x73":_0xd432[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[349]});db[_0xd432[120]][_0xd432[308]](db.OpenchannelAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[347]});db[_0xd432[120]][_0xd432[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[290],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[349]});db[_0xd432[122]][_0xd432[308]](db.User,{"\x61\x73":_0xd432[9]});db[_0xd432[122]][_0xd432[308]](db.OpenchannelInteraction,{"\x61\x73":_0xd432[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[349]});db[_0xd432[124]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[313],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[56],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[348]});db[_0xd432[124]][_0xd432[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[350],"\x61\x73":_0xd432[314]});db[_0xd432[126]][_0xd432[274]](db.ChatEnquiry,{"\x61\x73":_0xd432[351],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[352]});db[_0xd432[126]][_0xd432[274]](db.ChatVisitor,{"\x61\x73":_0xd432[353],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[352]});db[_0xd432[126]][_0xd432[274]](db.ChatProactiveAction,{"\x61\x73":_0xd432[354]});db[_0xd432[126]][_0xd432[274]](db.ChatWebsiteField,{"\x61\x73":_0xd432[355],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[356]});db[_0xd432[126]][_0xd432[274]](db.ChatWebsiteField,{"\x61\x73":_0xd432[357],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[358]});db[_0xd432[126]][_0xd432[274]](db.ChatInteraction,{"\x61\x73":_0xd432[285]});db[_0xd432[126]][_0xd432[274]](db.ChatApplication,{"\x61\x73":_0xd432[299]});db[_0xd432[126]][_0xd432[274]](db.ChatDisposition,{"\x61\x73":_0xd432[325]});db[_0xd432[126]][_0xd432[308]](db.CmList,{"\x61\x73":_0xd432[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[126]][_0xd432[308]](db.Template,{"\x61\x73":_0xd432[359],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[360]});db[_0xd432[130]][_0xd432[308]](db.User,{"\x61\x73":_0xd432[361],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[130]][_0xd432[308]](db.ChatQueue,{"\x61\x73":_0xd432[362],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[363],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[130]][_0xd432[308]](db.ChatWebsite,{"\x61\x73":_0xd432[364],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[352],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[132]][_0xd432[308]](db.ChatWebsite,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[352]});db[_0xd432[134]][_0xd432[274]](db.ChatMessage,{"\x61\x73":_0xd432[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[365]});db[_0xd432[134]][_0xd432[308]](db.ChatWebsite,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[352]});db[_0xd432[134]][_0xd432[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[287],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[365]});db[_0xd432[136]][_0xd432[308]](db.User,{"\x61\x73":_0xd432[9],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271]});db[_0xd432[136]][_0xd432[308]](db.ChatVisitor,{"\x61\x73":_0xd432[366],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[367]});db[_0xd432[136]][_0xd432[308]](db.ChatInteraction,{"\x61\x73":_0xd432[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[365]});db[_0xd432[138]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[313],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[48]});db[_0xd432[138]][_0xd432[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[368],"\x61\x73":_0xd432[314]});db[_0xd432[140]][_0xd432[308]](db.ChatWebsite,{"\x61\x73":_0xd432[364],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[352]});db[_0xd432[140]][_0xd432[308]](db.ChatVisitor,{"\x61\x73":_0xd432[366],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[367]});db[_0xd432[142]][_0xd432[308]](db.ChatWebsite,{"\x61\x73":_0xd432[364],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[352]});db[_0xd432[144]][_0xd432[272]](db.ChatEnquiry,{"\x61\x73":_0xd432[369]});db[_0xd432[144]][_0xd432[274]](db.ChatInteraction,{"\x61\x73":_0xd432[285]});db[_0xd432[144]][_0xd432[274]](db.ChatMessage,{"\x61\x73":_0xd432[330]});db[_0xd432[144]][_0xd432[308]](db.ChatWebsite,{"\x61\x73":_0xd432[364],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[352]});db[_0xd432[148]][_0xd432[274]](db.CmContact,{"\x61\x73":_0xd432[279],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[370]});db[_0xd432[150]][_0xd432[274]](db.CmHopperFinal,{"\x61\x73":_0xd432[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[322]});db[_0xd432[150]][_0xd432[274]](db.CmHopperHistory,{"\x61\x73":_0xd432[278],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[322]});db[_0xd432[150]][_0xd432[308]](db.CmCompany,{"\x61\x73":_0xd432[371],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[370]});db[_0xd432[150]][_0xd432[308]](db.CmList,{"\x61\x73":_0xd432[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[150]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[372],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[280]});db[_0xd432[152]][_0xd432[308]](db.CmContact,{"\x61\x73":_0xd432[321],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[322],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[152]][_0xd432[308]](db.CmList,{"\x61\x73":_0xd432[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[152]][_0xd432[308]](db.User,{"\x61\x73":_0xd432[361],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[271]});db[_0xd432[152]][_0xd432[308]](db.VoiceQueue,{"\x61\x73":_0xd432[362],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[303],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[152]][_0xd432[308]](db.Campaign,{"\x61\x73":_0xd432[268],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[373],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[154]][_0xd432[308]](db.CmContact,{"\x61\x73":_0xd432[321],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[322],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[154]][_0xd432[308]](db.CmList,{"\x61\x73":_0xd432[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[154]][_0xd432[308]](db.VoiceQueue,{"\x61\x73":_0xd432[362],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[303],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[154]][_0xd432[308]](db.Campaign,{"\x61\x73":_0xd432[268],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[373],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270]});db[_0xd432[162]][_0xd432[274]](db.VoiceDisposition,{"\x61\x73":_0xd432[325],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[162]][_0xd432[274]](db.CmCustomField,{"\x61\x73":_0xd432[374],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[162]][_0xd432[274]](db.CmContact,{"\x61\x73":_0xd432[279],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[162]][_0xd432[274]](db.CmHopperFinal,{"\x61\x73":_0xd432[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[162]][_0xd432[274]](db.CmHopperHistory,{"\x61\x73":_0xd432[278],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[327]});db[_0xd432[162]][_0xd432[281]](db.VoiceQueue,{"\x61\x73":_0xd432[375],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[312]});db[_0xd432[162]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[313],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[283]});db[_0xd432[166]][_0xd432[274]](db.Condition,{"\x61\x73":{"\x70\x6C\x75\x72\x61\x6C":_0xd432[376],"\x73\x69\x6E\x67\x75\x6C\x61\x72":_0xd432[377]},"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[378],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x68\x6F\x6F\x6B\x73":true});db[_0xd432[166]][_0xd432[274]](db.Condition,{"\x61\x73":{"\x70\x6C\x75\x72\x61\x6C":_0xd432[379],"\x73\x69\x6E\x67\x75\x6C\x61\x72":_0xd432[380]},"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[381],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x68\x6F\x6F\x6B\x73":true});db[_0xd432[166]][_0xd432[274]](db.Action,{"\x61\x73":_0xd432[382],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[383],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x68\x6F\x6F\x6B\x73":true});db[_0xd432[172]][_0xd432[274]](db.Interval,{"\x61\x73":_0xd432[384],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x68\x6F\x6F\x6B\x73":true,"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0xd432[172]][_0xd432[274]](db.VoiceExtension,{"\x61\x73":_0xd432[276],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[172]][_0xd432[274]](db.MailApplication,{"\x61\x73":_0xd432[385],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311]});db[_0xd432[172]][_0xd432[274]](db.ChatApplication,{"\x61\x73":_0xd432[386],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311]});db[_0xd432[172]][_0xd432[274]](db.FaxApplication,{"\x61\x73":_0xd432[387],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311]});db[_0xd432[172]][_0xd432[274]](db.SmsApplication,{"\x61\x73":_0xd432[388],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311]});db[_0xd432[180]][_0xd432[308]](db.MailServerOut,{});db[_0xd432[182]][_0xd432[281]](db.VoiceMusicOnHold,{"\x61\x73":_0xd432[389],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[301],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[337]});db[_0xd432[188]][_0xd432[274]](db.Condition,{"\x61\x73":{"\x70\x6C\x75\x72\x61\x6C":_0xd432[390],"\x73\x69\x6E\x67\x75\x6C\x61\x72":_0xd432[391]},"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[392],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x68\x6F\x6F\x6B\x73":true});db[_0xd432[188]][_0xd432[274]](db.Condition,{"\x61\x73":{"\x70\x6C\x75\x72\x61\x6C":_0xd432[393],"\x73\x69\x6E\x67\x75\x6C\x61\x72":_0xd432[394]},"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[395],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x68\x6F\x6F\x6B\x73":true});db[_0xd432[188]][_0xd432[274]](db.Action,{"\x61\x73":_0xd432[382],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[396],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x68\x6F\x6F\x6B\x73":true});db[_0xd432[196]][_0xd432[274]](db.AnalyticFieldReport,{"\x61\x73":_0xd432[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[398],"\x68\x6F\x6F\x6B\x73":true});db[_0xd432[198]][_0xd432[274]](db.AnalyticFieldReport,{"\x61\x73":_0xd432[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[399]});db[_0xd432[200]][_0xd432[308]](db.MailMessage,{});db[_0xd432[202]][_0xd432[274]](db.AnalyticFieldReport,{"\x61\x73":_0xd432[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[400]});db[_0xd432[204]][_0xd432[308]](db.AnalyticMetric,{"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[400]});db[_0xd432[208]][_0xd432[274]](db.SalesforceConfiguration,{"\x61\x73":_0xd432[401],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[402]});db[_0xd432[210]][_0xd432[274]](db.SalesforceField,{"\x61\x73":_0xd432[403],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[404]});db[_0xd432[210]][_0xd432[274]](db.SalesforceField,{"\x61\x73":_0xd432[405],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[406]});db[_0xd432[210]][_0xd432[274]](db.SalesforceField,{"\x61\x73":_0xd432[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[407]});db[_0xd432[210]][_0xd432[308]](db.SalesforceAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[402]});db[_0xd432[212]][_0xd432[274]](db.SalesforceField,{"\x61\x73":_0xd432[408],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[404]});db[_0xd432[212]][_0xd432[274]](db.SalesforceField,{"\x61\x73":_0xd432[409],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[406]});db[_0xd432[212]][_0xd432[274]](db.SalesforceField,{"\x61\x73":_0xd432[410],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[407]});db[_0xd432[212]][_0xd432[308]](db.Variable,{"\x61\x73":_0xd432[190],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[411]});db[_0xd432[214]][_0xd432[274]](db.SugarcrmConfiguration,{"\x61\x73":_0xd432[401],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[402]});db[_0xd432[216]][_0xd432[274]](db.SugarcrmField,{"\x61\x73":_0xd432[403],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[404]});db[_0xd432[216]][_0xd432[274]](db.SugarcrmField,{"\x61\x73":_0xd432[405],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[406]});db[_0xd432[216]][_0xd432[274]](db.SugarcrmField,{"\x61\x73":_0xd432[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[407]});db[_0xd432[216]][_0xd432[308]](db.SugarcrmAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[402]});db[_0xd432[218]][_0xd432[274]](db.SugarcrmField,{"\x61\x73":_0xd432[408],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[404]});db[_0xd432[218]][_0xd432[274]](db.SugarcrmField,{"\x61\x73":_0xd432[409],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[406]});db[_0xd432[218]][_0xd432[274]](db.SugarcrmField,{"\x61\x73":_0xd432[410],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[407]});db[_0xd432[218]][_0xd432[308]](db.Variable,{"\x61\x73":_0xd432[190],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[411]});db[_0xd432[220]][_0xd432[274]](db.ZendeskConfiguration,{"\x61\x73":_0xd432[401],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[402]});db[_0xd432[222]][_0xd432[274]](db.ZendeskField,{"\x61\x73":_0xd432[403],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[404]});db[_0xd432[222]][_0xd432[274]](db.ZendeskField,{"\x61\x73":_0xd432[405],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[406]});db[_0xd432[222]][_0xd432[274]](db.ZendeskField,{"\x61\x73":_0xd432[397],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[407]});db[_0xd432[222]][_0xd432[308]](db.ZendeskAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[402]});db[_0xd432[222]][_0xd432[281]](db.Tag,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[412]});db[_0xd432[224]][_0xd432[274]](db.ZendeskField,{"\x61\x73":_0xd432[408],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[404]});db[_0xd432[224]][_0xd432[274]](db.ZendeskField,{"\x61\x73":_0xd432[409],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[406]});db[_0xd432[224]][_0xd432[274]](db.ZendeskField,{"\x61\x73":_0xd432[410],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[407]});db[_0xd432[224]][_0xd432[308]](db.Variable,{"\x61\x73":_0xd432[190],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[411]});db[_0xd432[226]][_0xd432[274]](db.FreshdeskConfiguration,{"\x61\x73":_0xd432[401],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[402]});db[_0xd432[228]][_0xd432[274]](db.FreshdeskField,{"\x61\x73":_0xd432[403],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[404]});db[_0xd432[228]][_0xd432[274]](db.FreshdeskField,{"\x61\x73":_0xd432[405],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[406]});db[_0xd432[228]][_0xd432[274]](db.FreshdeskField,{"\x61\x73":_0xd432[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[407]});db[_0xd432[228]][_0xd432[308]](db.FreshdeskAccount,{"\x61\x73":_0xd432[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[402]});db[_0xd432[228]][_0xd432[281]](db.Tag,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[413]});db[_0xd432[230]][_0xd432[274]](db.FreshdeskField,{"\x61\x73":_0xd432[408],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[404]});db[_0xd432[230]][_0xd432[274]](db.FreshdeskField,{"\x61\x73":_0xd432[409],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[406]});db[_0xd432[230]][_0xd432[274]](db.FreshdeskField,{"\x61\x73":_0xd432[410],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[407]});db[_0xd432[230]][_0xd432[308]](db.Variable,{"\x61\x73":_0xd432[190],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[411]});db[_0xd432[242]][_0xd432[274]](db.JscriptyInputReport,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[414]});db[_0xd432[244]][_0xd432[274]](db.JscriptyQuestionReport,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0xd432[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[415]});db[_0xd432[254]][_0xd432[274]](db.JscriptySessionReport,{"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[416]});db[_0xd432[254]][_0xd432[274]](db.JscriptyQuestionReport,{"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[416]});db[_0xd432[264]][_0xd432[281]](db.User,{"\x61\x73":_0xd432[313],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[284]});db[_0xd432[264]][_0xd432[281]](db.VoiceQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[315],"\x61\x73":_0xd432[291]});db[_0xd432[264]][_0xd432[281]](db.MailQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[329],"\x61\x73":_0xd432[292]});db[_0xd432[264]][_0xd432[281]](db.ChatQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[368],"\x61\x73":_0xd432[293]});db[_0xd432[264]][_0xd432[281]](db.FaxQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[343],"\x61\x73":_0xd432[294]});db[_0xd432[264]][_0xd432[281]](db.SmsQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[346],"\x61\x73":_0xd432[295]});db[_0xd432[264]][_0xd432[281]](db.OpenchannelQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[350],"\x61\x73":_0xd432[296]});db[_0xd432[268]][_0xd432[274]](db.CmHopper,{"\x61\x73":_0xd432[304],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[373]});db[_0xd432[268]][_0xd432[274]](db.CmHopperFinal,{"\x61\x73":_0xd432[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[373]});db[_0xd432[268]][_0xd432[274]](db.CmHopperHistory,{"\x61\x73":_0xd432[305],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[373]});db[_0xd432[268]][_0xd432[274]](db.CmHopperBlack,{"\x61\x73":_0xd432[306],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[373]});db[_0xd432[268]][_0xd432[308]](db.Trunk,{"\x61\x73":_0xd432[40],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[307]});db[_0xd432[268]][_0xd432[308]](db.Trunk,{"\x61\x73":_0xd432[309],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[310]});db[_0xd432[268]][_0xd432[308]](db.Interval,{"\x61\x73":_0xd432[172],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[311]});db[_0xd432[268]][_0xd432[308]](db.SquareProject,{"\x61\x73":_0xd432[260],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0xd432[417]});db[_0xd432[268]][_0xd432[281]](db.CmList,{"\x61\x73":_0xd432[282],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[418]});db[_0xd432[268]][_0xd432[281]](db.CmList,{"\x61\x73":_0xd432[316],"\x74\x68\x72\x6F\x75\x67\x68":_0xd432[419]});module[_0xd432[420]]= {db:db,dbH:dbH}
\ No newline at end of file
+var _0x575a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x74\x68","\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x64\x61\x74\x61\x62\x61\x73\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x6F\x70\x74\x69\x6F\x6E\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65\x48\x69\x73\x74\x6F\x72\x79","\x55\x73\x65\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x2F\x75\x73\x65\x72\x2E\x6D\x6F\x64\x65\x6C","\x69\x6D\x70\x6F\x72\x74","\x56\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x54\x72\x75\x6E\x6B","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B\x2F\x74\x72\x75\x6E\x6B\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x43\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x46\x61\x78\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x53\x6D\x73\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x55\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2F\x75\x73\x65\x72\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x49\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x44\x61\x73\x68\x62\x6F\x61\x72\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x2E\x6D\x6F\x64\x65\x6C","\x44\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x2E\x2E\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x51\x75\x65\x75\x65\x2F\x66\x61\x78\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x51\x75\x65\x75\x65\x2F\x73\x6D\x73\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x2E\x6D\x6F\x64\x65\x6C","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x43\x6D\x4C\x69\x73\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x4C\x69\x73\x74\x2F\x63\x6D\x4C\x69\x73\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x63\x74\x69\x6F\x6E\x2F\x61\x63\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x43\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72\x2E\x6D\x6F\x64\x65\x6C","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2E\x6D\x6F\x64\x65\x6C","\x50\x61\x75\x73\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x70\x61\x75\x73\x65\x2F\x70\x61\x75\x73\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x64\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x64\x72\x2F\x63\x64\x72\x2E\x6D\x6F\x64\x65\x6C","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67\x2E\x6D\x6F\x64\x65\x6C","\x53\x63\x68\x65\x64\x75\x6C\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x2E\x6D\x6F\x64\x65\x6C","\x53\x6F\x75\x6E\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64\x2F\x73\x6F\x75\x6E\x64\x2E\x6D\x6F\x64\x65\x6C","\x54\x61\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x61\x67\x2F\x74\x61\x67\x2E\x6D\x6F\x64\x65\x6C","\x54\x65\x6D\x70\x6C\x61\x74\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2E\x6D\x6F\x64\x65\x6C","\x54\x72\x69\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x72\x69\x67\x67\x65\x72\x2F\x74\x72\x69\x67\x67\x65\x72\x2E\x6D\x6F\x64\x65\x6C","\x56\x61\x72\x69\x61\x62\x6C\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2E\x6D\x6F\x64\x65\x6C","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x41\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x6D\x6F\x64\x65\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x6D\x6F\x64\x65\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64\x2E\x6D\x6F\x64\x65\x6C","\x4E\x65\x74\x77\x6F\x72\x6B","\x2E\x2E\x2F\x61\x70\x69\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x43\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x46\x61\x78\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x4A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x73\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2E\x6D\x6F\x64\x65\x6C","\x4A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x65\x74\x74\x69\x6E\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x65\x74\x74\x69\x6E\x67\x2F\x73\x65\x74\x74\x69\x6E\x67\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2E\x6D\x6F\x64\x65\x6C","\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x6D\x6F\x64\x65\x6C","\x54\x65\x61\x6D","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x65\x61\x6D\x2F\x74\x65\x61\x6D\x2E\x6D\x6F\x64\x65\x6C","\x4C\x69\x63\x65\x6E\x73\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2F\x6C\x69\x63\x65\x6E\x73\x65\x2E\x6D\x6F\x64\x65\x6C","\x43\x61\x6D\x70\x61\x69\x67\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2E\x6D\x6F\x64\x65\x6C","\x63\x61\x73\x63\x61\x64\x65","\x55\x73\x65\x72\x49\x64","\x68\x61\x73\x4F\x6E\x65","\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x68\x61\x73\x4D\x61\x6E\x79","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x52\x74","\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x73","\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x43\x6F\x6E\x74\x61\x63\x74\x73","\x63\x6D\x5F\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x62\x65\x6C\x6F\x6E\x67\x73\x54\x6F\x4D\x61\x6E\x79","\x4C\x69\x73\x74\x73","\x63\x6D\x5F\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6C\x69\x73\x74\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x74\x65\x61\x6D\x73","\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6D\x61\x69\x6C\x5F\x72\x6F\x6F\x6D\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x63\x68\x61\x74\x5F\x72\x6F\x6F\x6D\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x66\x61\x78\x5F\x72\x6F\x6F\x6D\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x73\x6D\x73\x5F\x72\x6F\x6F\x6D\x73","\x75\x73\x65\x72\x5F\x68\x61\x73\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x72\x6F\x6F\x6D\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x73","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73","\x46\x61\x78\x51\x75\x65\x75\x65\x73","\x53\x6D\x73\x51\x75\x65\x75\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x73","\x53\x70\x69\x65\x64\x41\x67\x65\x6E\x74\x73","\x43\x68\x61\x6E\x53\x70\x79\x49\x64","\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x53\x6F\x75\x6E\x64\x73","\x6D\x6F\x68\x5F\x68\x61\x73\x5F\x73\x6F\x75\x6E\x64\x73","\x4D\x65\x6D\x62\x65\x72\x73","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x48\x6F\x70\x70\x65\x72\x73","\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x69\x65\x73","\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x73","\x54\x72\x75\x6E\x6B\x49\x64","\x62\x65\x6C\x6F\x6E\x67\x73\x54\x6F","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70\x49\x64","\x49\x6E\x74\x65\x72\x76\x61\x6C\x49\x64","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x68\x61\x73\x5F\x63\x6D\x5F\x6C\x69\x73\x74\x73","\x41\x67\x65\x6E\x74\x73","\x54\x65\x61\x6D\x73","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73","\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x73","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x73\x5F\x68\x61\x73\x5F\x63\x6D\x5F\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74\x73","\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x73","\x75\x6E\x69\x71\x75\x65\x69\x64","\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x73","\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x49\x6D\x61\x70","\x53\x6D\x74\x70","\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x4C\x69\x73\x74","\x4C\x69\x73\x74\x49\x64","\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x6D\x61\x69\x6C\x5F\x71\x75\x65\x75\x65\x73","\x4D\x65\x73\x73\x61\x67\x65\x73","\x4D\x61\x69\x6C\x52\x6F\x6F\x6D\x49\x64","\x41\x63\x63\x6F\x75\x6E\x74","\x4D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65\x49\x64","\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x72\x65\x73\x74\x72\x69\x63\x74","\x49\x74\x65\x6D\x73","\x45\x78\x6E\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x46\x61\x78\x52\x6F\x6F\x6D\x49\x64","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x66\x61\x78\x5F\x71\x75\x65\x75\x65\x73","\x53\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x6D\x73\x52\x6F\x6F\x6D\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x73\x6D\x73\x5F\x71\x75\x65\x75\x65\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65\x49\x64","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x6F\x6F\x6D\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x5F\x71\x75\x65\x75\x65\x73","\x45\x6E\x71\x75\x69\x72\x69\x65\x73","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x49\x64","\x56\x69\x73\x69\x74\x6F\x72\x73","\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E\x73","\x4F\x66\x66\x6C\x69\x6E\x65","\x4F\x66\x66\x6C\x69\x6E\x65\x49\x64","\x4F\x6E\x6C\x69\x6E\x65","\x4F\x6E\x6C\x69\x6E\x65\x49\x64","\x4F\x66\x66\x6C\x69\x6E\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x4F\x66\x66\x6C\x69\x6E\x65\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64","\x41\x67\x65\x6E\x74","\x51\x75\x65\x75\x65","\x43\x68\x61\x74\x51\x75\x65\x75\x65\x49\x64","\x57\x65\x62\x73\x69\x74\x65","\x43\x68\x61\x74\x52\x6F\x6F\x6D\x49\x64","\x56\x69\x73\x69\x74\x6F\x72","\x43\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72\x49\x64","\x74\x65\x61\x6D\x5F\x68\x61\x73\x5F\x63\x68\x61\x74\x5F\x71\x75\x65\x75\x65\x73","\x45\x6E\x71\x75\x69\x72\x79","\x43\x6F\x6D\x70\x61\x6E\x79\x49\x64","\x43\x6F\x6D\x70\x61\x6E\x79","\x55\x73\x65\x72\x73","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64\x73","\x51\x75\x65\x75\x65\x73","\x41\x6C\x6C","\x4F\x6E\x65\x41\x6C\x6C","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x41\x6C\x6C\x49\x64","\x41\x6E\x79","\x4F\x6E\x65\x41\x6E\x79","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x41\x6E\x79\x49\x64","\x41\x63\x74\x69\x6F\x6E\x73","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x49\x64","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x4D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x43\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x46\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x53\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x4D\x6F\x68\x73","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x41\x6C\x6C\x49\x64","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x54\x72\x69\x67\x67\x65\x72\x41\x6E\x79\x49\x64","\x54\x72\x69\x67\x67\x65\x72\x49\x64","\x46\x69\x65\x6C\x64\x73","\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74\x49\x64","\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74\x49\x64","\x4D\x65\x74\x72\x69\x63\x49\x64","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x41\x63\x63\x6F\x75\x6E\x74\x49\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x53\x75\x62\x6A\x65\x63\x74\x49\x64","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x49\x64","\x46\x69\x65\x6C\x64\x49\x64","\x53\x75\x62\x6A\x65\x63\x74","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x46\x69\x65\x6C\x64","\x56\x61\x72\x69\x61\x62\x6C\x65\x49\x64","\x69\x6E\x74\x5F\x7A\x65\x6E\x64\x65\x73\x6B\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x5F\x68\x61\x73\x5F\x74\x61\x67\x73","\x69\x6E\x74\x5F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x5F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x5F\x68\x61\x73\x5F\x74\x61\x67\x73","\x71\x75\x65\x73\x74\x69\x6F\x6E\x49\x64","\x73\x65\x73\x73\x69\x6F\x6E\x49\x64","\x70\x72\x6F\x6A\x65\x63\x74\x49\x64","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x49\x64","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73\x5F\x68\x61\x73\x5F\x63\x6D\x5F\x6C\x69\x73\x74\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73\x5F\x68\x61\x73\x5F\x63\x6D\x5F\x62\x6C\x61\x63\x6B\x6C\x69\x73\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x575a[0];var path=require(_0x575a[1]);var config=require(_0x575a[2]);var Sequelize=require(_0x575a[3]);var db={Sequelize:Sequelize,sequelize: new Sequelize(config[_0x575a[3]][_0x575a[4]],config[_0x575a[3]][_0x575a[5]],config[_0x575a[3]][_0x575a[6]],config[_0x575a[3]][_0x575a[7]])};var dbH={Sequelize:Sequelize,sequelize: new Sequelize(config[_0x575a[8]][_0x575a[4]],config[_0x575a[8]][_0x575a[5]],config[_0x575a[8]][_0x575a[6]],config[_0x575a[8]][_0x575a[7]])};db[_0x575a[9]]= db[_0x575a[3]][_0x575a[11]](_0x575a[10]);db[_0x575a[12]]= db[_0x575a[3]][_0x575a[11]](_0x575a[13]);db[_0x575a[14]]= db[_0x575a[3]][_0x575a[11]](_0x575a[15]);db[_0x575a[16]]= db[_0x575a[3]][_0x575a[11]](_0x575a[17]);db[_0x575a[18]]= db[_0x575a[3]][_0x575a[11]](_0x575a[19]);db[_0x575a[20]]= db[_0x575a[3]][_0x575a[11]](_0x575a[21]);db[_0x575a[22]]= db[_0x575a[3]][_0x575a[11]](_0x575a[23]);db[_0x575a[24]]= db[_0x575a[3]][_0x575a[11]](_0x575a[25]);db[_0x575a[26]]= db[_0x575a[3]][_0x575a[11]](_0x575a[27]);db[_0x575a[28]]= db[_0x575a[3]][_0x575a[11]](_0x575a[29]);db[_0x575a[30]]= db[_0x575a[3]][_0x575a[11]](_0x575a[31]);db[_0x575a[32]]= db[_0x575a[3]][_0x575a[11]](_0x575a[33]);db[_0x575a[34]]= db[_0x575a[3]][_0x575a[11]](_0x575a[35]);db[_0x575a[36]]= db[_0x575a[3]][_0x575a[11]](_0x575a[37]);db[_0x575a[38]]= db[_0x575a[3]][_0x575a[11]](_0x575a[39]);db[_0x575a[40]]= db[_0x575a[3]][_0x575a[11]](_0x575a[41]);db[_0x575a[42]]= db[_0x575a[3]][_0x575a[11]](_0x575a[43]);db[_0x575a[44]]= db[_0x575a[3]][_0x575a[11]](_0x575a[45]);db[_0x575a[46]]= db[_0x575a[3]][_0x575a[11]](_0x575a[47]);db[_0x575a[48]]= db[_0x575a[3]][_0x575a[11]](_0x575a[49]);db[_0x575a[50]]= db[_0x575a[3]][_0x575a[11]](_0x575a[51]);db[_0x575a[52]]= db[_0x575a[3]][_0x575a[11]](_0x575a[53]);db[_0x575a[54]]= db[_0x575a[3]][_0x575a[11]](_0x575a[55]);db[_0x575a[56]]= db[_0x575a[3]][_0x575a[11]](_0x575a[57]);db[_0x575a[58]]= db[_0x575a[3]][_0x575a[11]](_0x575a[59]);db[_0x575a[60]]= db[_0x575a[3]][_0x575a[11]](_0x575a[61]);db[_0x575a[62]]= db[_0x575a[3]][_0x575a[11]](_0x575a[63]);db[_0x575a[64]]= db[_0x575a[3]][_0x575a[11]](_0x575a[65]);db[_0x575a[66]]= db[_0x575a[3]][_0x575a[11]](_0x575a[67]);db[_0x575a[68]]= db[_0x575a[3]][_0x575a[11]](_0x575a[69]);db[_0x575a[70]]= db[_0x575a[3]][_0x575a[11]](_0x575a[71]);db[_0x575a[72]]= db[_0x575a[3]][_0x575a[11]](_0x575a[73]);db[_0x575a[74]]= db[_0x575a[3]][_0x575a[11]](_0x575a[75]);db[_0x575a[76]]= db[_0x575a[3]][_0x575a[11]](_0x575a[77]);db[_0x575a[78]]= db[_0x575a[3]][_0x575a[11]](_0x575a[79]);db[_0x575a[80]]= db[_0x575a[3]][_0x575a[11]](_0x575a[81]);db[_0x575a[82]]= db[_0x575a[3]][_0x575a[11]](_0x575a[83]);db[_0x575a[84]]= db[_0x575a[3]][_0x575a[11]](_0x575a[85]);db[_0x575a[86]]= db[_0x575a[3]][_0x575a[11]](_0x575a[87]);db[_0x575a[88]]= db[_0x575a[3]][_0x575a[11]](_0x575a[89]);db[_0x575a[90]]= db[_0x575a[3]][_0x575a[11]](_0x575a[91]);db[_0x575a[92]]= db[_0x575a[3]][_0x575a[11]](_0x575a[93]);db[_0x575a[94]]= db[_0x575a[3]][_0x575a[11]](_0x575a[95]);db[_0x575a[96]]= db[_0x575a[3]][_0x575a[11]](_0x575a[97]);db[_0x575a[98]]= db[_0x575a[3]][_0x575a[11]](_0x575a[99]);db[_0x575a[100]]= db[_0x575a[3]][_0x575a[11]](_0x575a[101]);db[_0x575a[102]]= db[_0x575a[3]][_0x575a[11]](_0x575a[103]);db[_0x575a[104]]= db[_0x575a[3]][_0x575a[11]](_0x575a[105]);db[_0x575a[106]]= db[_0x575a[3]][_0x575a[11]](_0x575a[107]);db[_0x575a[108]]= db[_0x575a[3]][_0x575a[11]](_0x575a[109]);db[_0x575a[110]]= db[_0x575a[3]][_0x575a[11]](_0x575a[111]);db[_0x575a[112]]= db[_0x575a[3]][_0x575a[11]](_0x575a[113]);db[_0x575a[114]]= db[_0x575a[3]][_0x575a[11]](_0x575a[115]);db[_0x575a[116]]= db[_0x575a[3]][_0x575a[11]](_0x575a[117]);db[_0x575a[118]]= db[_0x575a[3]][_0x575a[11]](_0x575a[119]);db[_0x575a[120]]= db[_0x575a[3]][_0x575a[11]](_0x575a[121]);db[_0x575a[122]]= db[_0x575a[3]][_0x575a[11]](_0x575a[123]);db[_0x575a[124]]= db[_0x575a[3]][_0x575a[11]](_0x575a[125]);db[_0x575a[126]]= db[_0x575a[3]][_0x575a[11]](_0x575a[127]);db[_0x575a[128]]= db[_0x575a[3]][_0x575a[11]](_0x575a[129]);db[_0x575a[130]]= db[_0x575a[3]][_0x575a[11]](_0x575a[131]);db[_0x575a[132]]= db[_0x575a[3]][_0x575a[11]](_0x575a[133]);db[_0x575a[134]]= db[_0x575a[3]][_0x575a[11]](_0x575a[135]);db[_0x575a[136]]= db[_0x575a[3]][_0x575a[11]](_0x575a[137]);db[_0x575a[138]]= db[_0x575a[3]][_0x575a[11]](_0x575a[139]);db[_0x575a[140]]= db[_0x575a[3]][_0x575a[11]](_0x575a[141]);db[_0x575a[142]]= db[_0x575a[3]][_0x575a[11]](_0x575a[143]);db[_0x575a[144]]= db[_0x575a[3]][_0x575a[11]](_0x575a[145]);db[_0x575a[146]]= db[_0x575a[3]][_0x575a[11]](_0x575a[147]);db[_0x575a[148]]= db[_0x575a[3]][_0x575a[11]](_0x575a[149]);db[_0x575a[150]]= db[_0x575a[3]][_0x575a[11]](_0x575a[151]);db[_0x575a[152]]= db[_0x575a[3]][_0x575a[11]](_0x575a[153]);db[_0x575a[154]]= db[_0x575a[3]][_0x575a[11]](_0x575a[155]);db[_0x575a[156]]= db[_0x575a[3]][_0x575a[11]](_0x575a[157]);db[_0x575a[158]]= db[_0x575a[3]][_0x575a[11]](_0x575a[159]);db[_0x575a[160]]= db[_0x575a[3]][_0x575a[11]](_0x575a[161]);db[_0x575a[162]]= db[_0x575a[3]][_0x575a[11]](_0x575a[163]);db[_0x575a[164]]= db[_0x575a[3]][_0x575a[11]](_0x575a[165]);db[_0x575a[166]]= db[_0x575a[3]][_0x575a[11]](_0x575a[167]);db[_0x575a[168]]= db[_0x575a[3]][_0x575a[11]](_0x575a[169]);db[_0x575a[170]]= db[_0x575a[3]][_0x575a[11]](_0x575a[171]);db[_0x575a[172]]= db[_0x575a[3]][_0x575a[11]](_0x575a[173]);db[_0x575a[174]]= db[_0x575a[3]][_0x575a[11]](_0x575a[175]);db[_0x575a[176]]= db[_0x575a[3]][_0x575a[11]](_0x575a[177]);db[_0x575a[178]]= db[_0x575a[3]][_0x575a[11]](_0x575a[179]);db[_0x575a[180]]= db[_0x575a[3]][_0x575a[11]](_0x575a[181]);db[_0x575a[182]]= db[_0x575a[3]][_0x575a[11]](_0x575a[183]);db[_0x575a[184]]= db[_0x575a[3]][_0x575a[11]](_0x575a[185]);db[_0x575a[186]]= db[_0x575a[3]][_0x575a[11]](_0x575a[187]);db[_0x575a[188]]= db[_0x575a[3]][_0x575a[11]](_0x575a[189]);db[_0x575a[190]]= db[_0x575a[3]][_0x575a[11]](_0x575a[191]);db[_0x575a[192]]= db[_0x575a[3]][_0x575a[11]](_0x575a[193]);db[_0x575a[194]]= db[_0x575a[3]][_0x575a[11]](_0x575a[195]);db[_0x575a[196]]= db[_0x575a[3]][_0x575a[11]](_0x575a[197]);db[_0x575a[198]]= db[_0x575a[3]][_0x575a[11]](_0x575a[199]);db[_0x575a[200]]= db[_0x575a[3]][_0x575a[11]](_0x575a[201]);db[_0x575a[202]]= db[_0x575a[3]][_0x575a[11]](_0x575a[203]);db[_0x575a[204]]= db[_0x575a[3]][_0x575a[11]](_0x575a[205]);db[_0x575a[206]]= db[_0x575a[3]][_0x575a[11]](_0x575a[207]);db[_0x575a[208]]= db[_0x575a[3]][_0x575a[11]](_0x575a[209]);db[_0x575a[210]]= db[_0x575a[3]][_0x575a[11]](_0x575a[211]);db[_0x575a[212]]= db[_0x575a[3]][_0x575a[11]](_0x575a[213]);db[_0x575a[214]]= db[_0x575a[3]][_0x575a[11]](_0x575a[215]);db[_0x575a[216]]= db[_0x575a[3]][_0x575a[11]](_0x575a[217]);db[_0x575a[218]]= db[_0x575a[3]][_0x575a[11]](_0x575a[219]);db[_0x575a[220]]= db[_0x575a[3]][_0x575a[11]](_0x575a[221]);db[_0x575a[222]]= db[_0x575a[3]][_0x575a[11]](_0x575a[223]);db[_0x575a[224]]= db[_0x575a[3]][_0x575a[11]](_0x575a[225]);db[_0x575a[226]]= db[_0x575a[3]][_0x575a[11]](_0x575a[227]);db[_0x575a[228]]= db[_0x575a[3]][_0x575a[11]](_0x575a[229]);db[_0x575a[230]]= db[_0x575a[3]][_0x575a[11]](_0x575a[231]);db[_0x575a[192]]= db[_0x575a[3]][_0x575a[11]](_0x575a[193]);db[_0x575a[232]]= db[_0x575a[3]][_0x575a[11]](_0x575a[233]);db[_0x575a[234]]= db[_0x575a[3]][_0x575a[11]](_0x575a[235]);db[_0x575a[236]]= db[_0x575a[3]][_0x575a[11]](_0x575a[237]);db[_0x575a[238]]= db[_0x575a[3]][_0x575a[11]](_0x575a[239]);db[_0x575a[240]]= db[_0x575a[3]][_0x575a[11]](_0x575a[241]);db[_0x575a[242]]= db[_0x575a[3]][_0x575a[11]](_0x575a[243]);db[_0x575a[244]]= db[_0x575a[3]][_0x575a[11]](_0x575a[245]);db[_0x575a[246]]= db[_0x575a[3]][_0x575a[11]](_0x575a[247]);db[_0x575a[248]]= db[_0x575a[3]][_0x575a[11]](_0x575a[249]);db[_0x575a[250]]= db[_0x575a[3]][_0x575a[11]](_0x575a[251]);db[_0x575a[252]]= db[_0x575a[3]][_0x575a[11]](_0x575a[253]);db[_0x575a[254]]= db[_0x575a[3]][_0x575a[11]](_0x575a[255]);db[_0x575a[256]]= db[_0x575a[3]][_0x575a[11]](_0x575a[257]);db[_0x575a[258]]= db[_0x575a[3]][_0x575a[11]](_0x575a[259]);db[_0x575a[260]]= db[_0x575a[3]][_0x575a[11]](_0x575a[261]);db[_0x575a[262]]= db[_0x575a[3]][_0x575a[11]](_0x575a[263]);db[_0x575a[264]]= db[_0x575a[3]][_0x575a[11]](_0x575a[265]);db[_0x575a[266]]= db[_0x575a[3]][_0x575a[11]](_0x575a[267]);db[_0x575a[268]]= db[_0x575a[3]][_0x575a[11]](_0x575a[269]);db[_0x575a[9]][_0x575a[272]](db.VoiceMail,{"\x61\x73":_0x575a[26],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271]});db[_0x575a[9]][_0x575a[274]](db.VoiceRecording,{"\x61\x73":_0x575a[273],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271]});db[_0x575a[9]][_0x575a[274]](db.UserVoiceQueueRt,{"\x61\x73":_0x575a[275],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271]});db[_0x575a[9]][_0x575a[274]](db.VoiceExtension,{"\x61\x73":_0x575a[276],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x68\x6F\x6F\x6B\x73":true});db[_0x575a[9]][_0x575a[274]](db.CmHopperFinal,{"\x61\x73":_0x575a[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271]});db[_0x575a[9]][_0x575a[274]](db.CmHopperHistory,{"\x61\x73":_0x575a[278],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271]});db[_0x575a[9]][_0x575a[281]](db.CmContact,{"\x61\x73":_0x575a[279],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[280]});db[_0x575a[9]][_0x575a[281]](db.CmList,{"\x61\x73":_0x575a[282],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[283]});db[_0x575a[9]][_0x575a[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[284]});db[_0x575a[9]][_0x575a[281]](db.MailInteraction,{"\x61\x73":_0x575a[285],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[286]});db[_0x575a[9]][_0x575a[281]](db.ChatInteraction,{"\x61\x73":_0x575a[285],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[287]});db[_0x575a[9]][_0x575a[281]](db.FaxInteraction,{"\x61\x73":_0x575a[285],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[288]});db[_0x575a[9]][_0x575a[281]](db.SmsInteraction,{"\x61\x73":_0x575a[285],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[289]});db[_0x575a[9]][_0x575a[281]](db.OpenchannelInteraction,{"\x61\x73":_0x575a[285],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[290]});db[_0x575a[9]][_0x575a[281]](db.VoiceQueue,{"\x61\x73":_0x575a[291],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[46],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0x575a[9]][_0x575a[281]](db.MailQueue,{"\x61\x73":_0x575a[292],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[50],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0x575a[9]][_0x575a[281]](db.ChatQueue,{"\x61\x73":_0x575a[293],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[48],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0x575a[9]][_0x575a[281]](db.FaxQueue,{"\x61\x73":_0x575a[294],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[52],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0x575a[9]][_0x575a[281]](db.SmsQueue,{"\x61\x73":_0x575a[295],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[54],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0x575a[9]][_0x575a[281]](db.OpenchannelQueue,{"\x61\x73":_0x575a[296],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[56],"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0x575a[9]][_0x575a[281]](db.CmList,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[283]});db[_0x575a[12]][_0x575a[274]](db.VoiceExtension,{"\x61\x73":_0x575a[297],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[298]});db[_0x575a[14]][_0x575a[274]](db.VoiceExtension,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[18]][_0x575a[274]](db.VoiceExtension,{"\x61\x73":_0x575a[299],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[20]][_0x575a[281]](db.Sound,{"\x61\x73":_0x575a[300],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[301]});db[_0x575a[22]][_0x575a[274]](db.UserVoiceQueueRt,{"\x61\x73":_0x575a[302],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[303]});db[_0x575a[22]][_0x575a[274]](db.CmHopper,{"\x61\x73":_0x575a[304],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[303]});db[_0x575a[22]][_0x575a[274]](db.CmHopperFinal,{"\x61\x73":_0x575a[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[303]});db[_0x575a[22]][_0x575a[274]](db.CmHopperHistory,{"\x61\x73":_0x575a[305],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[303]});db[_0x575a[22]][_0x575a[274]](db.CmHopperBlack,{"\x61\x73":_0x575a[306],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[303]});db[_0x575a[22]][_0x575a[308]](db.Trunk,{"\x61\x73":_0x575a[40],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[307]});db[_0x575a[22]][_0x575a[308]](db.Trunk,{"\x61\x73":_0x575a[309],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[310]});db[_0x575a[22]][_0x575a[308]](db.Interval,{"\x61\x73":_0x575a[172],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311]});db[_0x575a[22]][_0x575a[281]](db.CmList,{"\x61\x73":_0x575a[282],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[312]});db[_0x575a[22]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[313],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[46]});db[_0x575a[22]][_0x575a[281]](db.Team,{"\x61\x73":_0x575a[314],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[315]});db[_0x575a[22]][_0x575a[281]](db.CmList,{"\x61\x73":_0x575a[316],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[317]});db[_0x575a[30]][_0x575a[274]](db.VoiceQueueReport,{"\x61\x73":_0x575a[318],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0x575a[30]][_0x575a[274]](db.VoiceAgentReport,{"\x61\x73":_0x575a[320],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0x575a[30]][_0x575a[308]](db.User,{"\x61\x73":_0x575a[9],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271]});db[_0x575a[30]][_0x575a[308]](db.CmContact,{"\x61\x73":_0x575a[321],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[322]});db[_0x575a[62]][_0x575a[272]](db.MailServerIn,{"\x61\x73":_0x575a[323],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[62]][_0x575a[272]](db.MailServerOut,{"\x61\x73":_0x575a[324],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[62]][_0x575a[274]](db.MailInteraction,{"\x61\x73":_0x575a[285]});db[_0x575a[62]][_0x575a[274]](db.MailApplication,{"\x61\x73":_0x575a[299]});db[_0x575a[62]][_0x575a[274]](db.MailDisposition,{"\x61\x73":_0x575a[325]});db[_0x575a[62]][_0x575a[308]](db.CmList,{"\x61\x73":_0x575a[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[62]][_0x575a[308]](db.Template,{"\x61\x73":_0x575a[186],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[328]});db[_0x575a[64]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[313],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[50]});db[_0x575a[64]][_0x575a[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[329],"\x61\x73":_0x575a[314]});db[_0x575a[66]][_0x575a[274]](db.MailMessage,{"\x61\x73":_0x575a[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[331]});db[_0x575a[66]][_0x575a[308]](db.MailAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[333]});db[_0x575a[66]][_0x575a[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[286],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[331]});db[_0x575a[68]][_0x575a[274]](db.MailAttachment,{"\x61\x73":_0x575a[334],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[335]});db[_0x575a[68]][_0x575a[308]](db.User,{"\x61\x73":_0x575a[9]});db[_0x575a[68]][_0x575a[308]](db.MailInteraction,{"\x61\x73":_0x575a[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[331]});db[_0x575a[70]][_0x575a[308]](db.User,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[70]][_0x575a[308]](db.MailQueue,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[70]][_0x575a[308]](db.MailAccount,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[72]][_0x575a[308]](db.MailAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[333]});db[_0x575a[76]][_0x575a[274]](db.VoiceQueueReport,{"\x61\x73":_0x575a[318],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0x575a[76]][_0x575a[274]](db.VoiceAgentReport,{"\x61\x73":_0x575a[320],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0x575a[82]][_0x575a[274]](db.DashboardItem,{"\x61\x73":_0x575a[338],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[86]][_0x575a[274]](db.FaxInteraction,{"\x61\x73":_0x575a[285]});db[_0x575a[86]][_0x575a[274]](db.FaxApplication,{"\x61\x73":_0x575a[299]});db[_0x575a[86]][_0x575a[274]](db.VoiceExtension,{"\x61\x73":_0x575a[339],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[86]][_0x575a[274]](db.FaxDisposition,{"\x61\x73":_0x575a[325]});db[_0x575a[86]][_0x575a[308]](db.Trunk,{"\x61\x73":_0x575a[40]});db[_0x575a[86]][_0x575a[308]](db.CmList,{"\x61\x73":_0x575a[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[88]][_0x575a[308]](db.User,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[88]][_0x575a[308]](db.FaxQueue,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[88]][_0x575a[308]](db.FaxAccount,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[90]][_0x575a[308]](db.FaxAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[340]});db[_0x575a[94]][_0x575a[274]](db.FaxMessage,{"\x61\x73":_0x575a[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[341]});db[_0x575a[94]][_0x575a[308]](db.FaxAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[340]});db[_0x575a[94]][_0x575a[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[288],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[341]});db[_0x575a[96]][_0x575a[274]](db.FaxAttachment,{"\x61\x73":_0x575a[334],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[342]});db[_0x575a[96]][_0x575a[308]](db.User,{"\x61\x73":_0x575a[9]});db[_0x575a[96]][_0x575a[308]](db.FaxInteraction,{"\x61\x73":_0x575a[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[341]});db[_0x575a[98]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[313],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[52]});db[_0x575a[98]][_0x575a[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[343],"\x61\x73":_0x575a[314]});db[_0x575a[100]][_0x575a[274]](db.VoiceQueueReport,{"\x61\x73":_0x575a[318],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0x575a[100]][_0x575a[274]](db.VoiceAgentReport,{"\x61\x73":_0x575a[320],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[319],"\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73":false});db[_0x575a[102]][_0x575a[274]](db.SmsMessage,{"\x61\x73":_0x575a[330],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[344]});db[_0x575a[102]][_0x575a[274]](db.SmsInteraction,{"\x61\x73":_0x575a[285]});db[_0x575a[102]][_0x575a[274]](db.SmsApplication,{"\x61\x73":_0x575a[299]});db[_0x575a[102]][_0x575a[274]](db.SmsDisposition,{"\x61\x73":_0x575a[325]});db[_0x575a[102]][_0x575a[308]](db.CmList,{"\x61\x73":_0x575a[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[104]][_0x575a[308]](db.User,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[104]][_0x575a[308]](db.SmsQueue,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[104]][_0x575a[308]](db.SmsAccount,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[106]][_0x575a[308]](db.SmsAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[344]});db[_0x575a[108]][_0x575a[274]](db.SmsMessage,{"\x61\x73":_0x575a[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[345]});db[_0x575a[108]][_0x575a[308]](db.SmsAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[344]});db[_0x575a[108]][_0x575a[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[289],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[345]});db[_0x575a[110]][_0x575a[308]](db.User,{"\x61\x73":_0x575a[9]});db[_0x575a[110]][_0x575a[308]](db.SmsInteraction,{"\x61\x73":_0x575a[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[345]});db[_0x575a[112]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[313],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[54]});db[_0x575a[112]][_0x575a[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[346],"\x61\x73":_0x575a[314]});db[_0x575a[114]][_0x575a[274]](db.OpenchannelInteraction,{"\x61\x73":_0x575a[285],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[347]});db[_0x575a[114]][_0x575a[274]](db.OpenchannelMessage,{"\x61\x73":_0x575a[330],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[347]});db[_0x575a[114]][_0x575a[274]](db.OpenchannelApplication,{"\x61\x73":_0x575a[299],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[347]});db[_0x575a[114]][_0x575a[274]](db.OpenchannelDisposition,{"\x61\x73":_0x575a[325],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[347]});db[_0x575a[114]][_0x575a[308]](db.CmList,{"\x61\x73":_0x575a[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[116]][_0x575a[308]](db.User,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[116]][_0x575a[308]](db.OpenchannelQueue,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[348]});db[_0x575a[116]][_0x575a[308]](db.OpenchannelAccount,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[347]});db[_0x575a[116]][_0x575a[308]](db.Interval,{"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311]});db[_0x575a[118]][_0x575a[308]](db.OpenchannelAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[347]});db[_0x575a[120]][_0x575a[274]](db.OpenchannelMessage,{"\x61\x73":_0x575a[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[349]});db[_0x575a[120]][_0x575a[308]](db.OpenchannelAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[347]});db[_0x575a[120]][_0x575a[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[290],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[349]});db[_0x575a[122]][_0x575a[308]](db.User,{"\x61\x73":_0x575a[9]});db[_0x575a[122]][_0x575a[308]](db.OpenchannelInteraction,{"\x61\x73":_0x575a[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[349]});db[_0x575a[124]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[313],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[56],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[348]});db[_0x575a[124]][_0x575a[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[350],"\x61\x73":_0x575a[314]});db[_0x575a[126]][_0x575a[274]](db.ChatEnquiry,{"\x61\x73":_0x575a[351],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[352]});db[_0x575a[126]][_0x575a[274]](db.ChatVisitor,{"\x61\x73":_0x575a[353],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[352]});db[_0x575a[126]][_0x575a[274]](db.ChatProactiveAction,{"\x61\x73":_0x575a[354]});db[_0x575a[126]][_0x575a[274]](db.ChatWebsiteField,{"\x61\x73":_0x575a[355],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[356]});db[_0x575a[126]][_0x575a[274]](db.ChatWebsiteField,{"\x61\x73":_0x575a[357],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[358]});db[_0x575a[126]][_0x575a[274]](db.ChatInteraction,{"\x61\x73":_0x575a[285]});db[_0x575a[126]][_0x575a[274]](db.ChatApplication,{"\x61\x73":_0x575a[299]});db[_0x575a[126]][_0x575a[274]](db.ChatDisposition,{"\x61\x73":_0x575a[325]});db[_0x575a[126]][_0x575a[308]](db.CmList,{"\x61\x73":_0x575a[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[126]][_0x575a[308]](db.Template,{"\x61\x73":_0x575a[359],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[360]});db[_0x575a[130]][_0x575a[308]](db.User,{"\x61\x73":_0x575a[361],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[130]][_0x575a[308]](db.ChatQueue,{"\x61\x73":_0x575a[362],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[363],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[130]][_0x575a[308]](db.ChatWebsite,{"\x61\x73":_0x575a[364],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[352],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[132]][_0x575a[308]](db.ChatWebsite,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[352]});db[_0x575a[134]][_0x575a[274]](db.ChatMessage,{"\x61\x73":_0x575a[330],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[365]});db[_0x575a[134]][_0x575a[308]](db.ChatWebsite,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[352]});db[_0x575a[134]][_0x575a[281]](db.User,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[287],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[365]});db[_0x575a[136]][_0x575a[308]](db.User,{"\x61\x73":_0x575a[9],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271]});db[_0x575a[136]][_0x575a[308]](db.ChatVisitor,{"\x61\x73":_0x575a[366],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[367]});db[_0x575a[136]][_0x575a[308]](db.ChatInteraction,{"\x61\x73":_0x575a[336],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[365]});db[_0x575a[138]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[313],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[48]});db[_0x575a[138]][_0x575a[281]](db.Team,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[368],"\x61\x73":_0x575a[314]});db[_0x575a[140]][_0x575a[308]](db.ChatWebsite,{"\x61\x73":_0x575a[364],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[352]});db[_0x575a[140]][_0x575a[308]](db.ChatVisitor,{"\x61\x73":_0x575a[366],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[367]});db[_0x575a[142]][_0x575a[308]](db.ChatWebsite,{"\x61\x73":_0x575a[364],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[352]});db[_0x575a[144]][_0x575a[272]](db.ChatEnquiry,{"\x61\x73":_0x575a[369]});db[_0x575a[144]][_0x575a[274]](db.ChatInteraction,{"\x61\x73":_0x575a[285]});db[_0x575a[144]][_0x575a[274]](db.ChatMessage,{"\x61\x73":_0x575a[330]});db[_0x575a[144]][_0x575a[308]](db.ChatWebsite,{"\x61\x73":_0x575a[364],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[352]});db[_0x575a[148]][_0x575a[274]](db.CmContact,{"\x61\x73":_0x575a[279],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[370]});db[_0x575a[150]][_0x575a[274]](db.CmHopperFinal,{"\x61\x73":_0x575a[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[322]});db[_0x575a[150]][_0x575a[274]](db.CmHopperHistory,{"\x61\x73":_0x575a[278],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[322]});db[_0x575a[150]][_0x575a[308]](db.CmCompany,{"\x61\x73":_0x575a[371],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[370]});db[_0x575a[150]][_0x575a[308]](db.CmList,{"\x61\x73":_0x575a[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[150]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[372],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[280]});db[_0x575a[152]][_0x575a[308]](db.CmContact,{"\x61\x73":_0x575a[321],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[322],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[152]][_0x575a[308]](db.CmList,{"\x61\x73":_0x575a[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[152]][_0x575a[308]](db.User,{"\x61\x73":_0x575a[361],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[271]});db[_0x575a[152]][_0x575a[308]](db.VoiceQueue,{"\x61\x73":_0x575a[362],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[303],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[152]][_0x575a[308]](db.Campaign,{"\x61\x73":_0x575a[268],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[373],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[154]][_0x575a[308]](db.CmContact,{"\x61\x73":_0x575a[321],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[322],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[154]][_0x575a[308]](db.CmList,{"\x61\x73":_0x575a[326],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[154]][_0x575a[308]](db.VoiceQueue,{"\x61\x73":_0x575a[362],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[303],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[154]][_0x575a[308]](db.Campaign,{"\x61\x73":_0x575a[268],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[373],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270]});db[_0x575a[162]][_0x575a[274]](db.VoiceDisposition,{"\x61\x73":_0x575a[325],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[162]][_0x575a[274]](db.CmCustomField,{"\x61\x73":_0x575a[374],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[162]][_0x575a[274]](db.CmContact,{"\x61\x73":_0x575a[279],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[162]][_0x575a[274]](db.CmHopperFinal,{"\x61\x73":_0x575a[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[162]][_0x575a[274]](db.CmHopperHistory,{"\x61\x73":_0x575a[278],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[327]});db[_0x575a[162]][_0x575a[281]](db.VoiceQueue,{"\x61\x73":_0x575a[375],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[312]});db[_0x575a[162]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[313],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[283]});db[_0x575a[166]][_0x575a[274]](db.Condition,{"\x61\x73":{"\x70\x6C\x75\x72\x61\x6C":_0x575a[376],"\x73\x69\x6E\x67\x75\x6C\x61\x72":_0x575a[377]},"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[378],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x68\x6F\x6F\x6B\x73":true});db[_0x575a[166]][_0x575a[274]](db.Condition,{"\x61\x73":{"\x70\x6C\x75\x72\x61\x6C":_0x575a[379],"\x73\x69\x6E\x67\x75\x6C\x61\x72":_0x575a[380]},"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[381],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x68\x6F\x6F\x6B\x73":true});db[_0x575a[166]][_0x575a[274]](db.Action,{"\x61\x73":_0x575a[382],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[383],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x68\x6F\x6F\x6B\x73":true});db[_0x575a[172]][_0x575a[274]](db.Interval,{"\x61\x73":_0x575a[384],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x68\x6F\x6F\x6B\x73":true,"\x72\x65\x71\x75\x69\x72\x65\x64":false});db[_0x575a[172]][_0x575a[274]](db.VoiceExtension,{"\x61\x73":_0x575a[276],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[172]][_0x575a[274]](db.MailApplication,{"\x61\x73":_0x575a[385],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311]});db[_0x575a[172]][_0x575a[274]](db.ChatApplication,{"\x61\x73":_0x575a[386],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311]});db[_0x575a[172]][_0x575a[274]](db.FaxApplication,{"\x61\x73":_0x575a[387],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311]});db[_0x575a[172]][_0x575a[274]](db.SmsApplication,{"\x61\x73":_0x575a[388],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311]});db[_0x575a[180]][_0x575a[308]](db.MailServerOut,{});db[_0x575a[182]][_0x575a[281]](db.VoiceMusicOnHold,{"\x61\x73":_0x575a[389],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[301],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[337]});db[_0x575a[188]][_0x575a[274]](db.Condition,{"\x61\x73":{"\x70\x6C\x75\x72\x61\x6C":_0x575a[390],"\x73\x69\x6E\x67\x75\x6C\x61\x72":_0x575a[391]},"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[392],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x68\x6F\x6F\x6B\x73":true});db[_0x575a[188]][_0x575a[274]](db.Condition,{"\x61\x73":{"\x70\x6C\x75\x72\x61\x6C":_0x575a[393],"\x73\x69\x6E\x67\x75\x6C\x61\x72":_0x575a[394]},"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[395],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x68\x6F\x6F\x6B\x73":true});db[_0x575a[188]][_0x575a[274]](db.Action,{"\x61\x73":_0x575a[382],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[396],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x68\x6F\x6F\x6B\x73":true});db[_0x575a[196]][_0x575a[274]](db.AnalyticFieldReport,{"\x61\x73":_0x575a[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[398],"\x68\x6F\x6F\x6B\x73":true});db[_0x575a[198]][_0x575a[274]](db.AnalyticFieldReport,{"\x61\x73":_0x575a[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[399]});db[_0x575a[200]][_0x575a[308]](db.MailMessage,{});db[_0x575a[202]][_0x575a[274]](db.AnalyticFieldReport,{"\x61\x73":_0x575a[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[400]});db[_0x575a[204]][_0x575a[308]](db.AnalyticMetric,{"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[400]});db[_0x575a[208]][_0x575a[274]](db.SalesforceConfiguration,{"\x61\x73":_0x575a[401],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[402]});db[_0x575a[210]][_0x575a[274]](db.SalesforceField,{"\x61\x73":_0x575a[403],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[404]});db[_0x575a[210]][_0x575a[274]](db.SalesforceField,{"\x61\x73":_0x575a[405],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[406]});db[_0x575a[210]][_0x575a[274]](db.SalesforceField,{"\x61\x73":_0x575a[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[407]});db[_0x575a[210]][_0x575a[308]](db.SalesforceAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[402]});db[_0x575a[212]][_0x575a[274]](db.SalesforceField,{"\x61\x73":_0x575a[408],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[404]});db[_0x575a[212]][_0x575a[274]](db.SalesforceField,{"\x61\x73":_0x575a[409],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[406]});db[_0x575a[212]][_0x575a[274]](db.SalesforceField,{"\x61\x73":_0x575a[410],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[407]});db[_0x575a[212]][_0x575a[308]](db.Variable,{"\x61\x73":_0x575a[190],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[411]});db[_0x575a[214]][_0x575a[274]](db.SugarcrmConfiguration,{"\x61\x73":_0x575a[401],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[402]});db[_0x575a[216]][_0x575a[274]](db.SugarcrmField,{"\x61\x73":_0x575a[403],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[404]});db[_0x575a[216]][_0x575a[274]](db.SugarcrmField,{"\x61\x73":_0x575a[405],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[406]});db[_0x575a[216]][_0x575a[274]](db.SugarcrmField,{"\x61\x73":_0x575a[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[407]});db[_0x575a[216]][_0x575a[308]](db.SugarcrmAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[402]});db[_0x575a[218]][_0x575a[274]](db.SugarcrmField,{"\x61\x73":_0x575a[408],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[404]});db[_0x575a[218]][_0x575a[274]](db.SugarcrmField,{"\x61\x73":_0x575a[409],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[406]});db[_0x575a[218]][_0x575a[274]](db.SugarcrmField,{"\x61\x73":_0x575a[410],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[407]});db[_0x575a[218]][_0x575a[308]](db.Variable,{"\x61\x73":_0x575a[190],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[411]});db[_0x575a[220]][_0x575a[274]](db.ZendeskConfiguration,{"\x61\x73":_0x575a[401],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[402]});db[_0x575a[222]][_0x575a[274]](db.ZendeskField,{"\x61\x73":_0x575a[403],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[404]});db[_0x575a[222]][_0x575a[274]](db.ZendeskField,{"\x61\x73":_0x575a[405],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[406]});db[_0x575a[222]][_0x575a[274]](db.ZendeskField,{"\x61\x73":_0x575a[397],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[407]});db[_0x575a[222]][_0x575a[308]](db.ZendeskAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[402]});db[_0x575a[222]][_0x575a[281]](db.Tag,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[412]});db[_0x575a[224]][_0x575a[274]](db.ZendeskField,{"\x61\x73":_0x575a[408],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[404]});db[_0x575a[224]][_0x575a[274]](db.ZendeskField,{"\x61\x73":_0x575a[409],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[406]});db[_0x575a[224]][_0x575a[274]](db.ZendeskField,{"\x61\x73":_0x575a[410],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[407]});db[_0x575a[224]][_0x575a[308]](db.Variable,{"\x61\x73":_0x575a[190],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[411]});db[_0x575a[226]][_0x575a[274]](db.FreshdeskConfiguration,{"\x61\x73":_0x575a[401],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[402]});db[_0x575a[228]][_0x575a[274]](db.FreshdeskField,{"\x61\x73":_0x575a[403],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[404]});db[_0x575a[228]][_0x575a[274]](db.FreshdeskField,{"\x61\x73":_0x575a[405],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[406]});db[_0x575a[228]][_0x575a[274]](db.FreshdeskField,{"\x61\x73":_0x575a[397],"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[407]});db[_0x575a[228]][_0x575a[308]](db.FreshdeskAccount,{"\x61\x73":_0x575a[332],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[402]});db[_0x575a[228]][_0x575a[281]](db.Tag,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[413]});db[_0x575a[230]][_0x575a[274]](db.FreshdeskField,{"\x61\x73":_0x575a[408],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[404]});db[_0x575a[230]][_0x575a[274]](db.FreshdeskField,{"\x61\x73":_0x575a[409],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[406]});db[_0x575a[230]][_0x575a[274]](db.FreshdeskField,{"\x61\x73":_0x575a[410],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[407]});db[_0x575a[230]][_0x575a[308]](db.Variable,{"\x61\x73":_0x575a[190],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[411]});db[_0x575a[242]][_0x575a[274]](db.JscriptyInputReport,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[414]});db[_0x575a[244]][_0x575a[274]](db.JscriptyQuestionReport,{"\x6F\x6E\x44\x65\x6C\x65\x74\x65":_0x575a[270],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[415]});db[_0x575a[254]][_0x575a[274]](db.JscriptySessionReport,{"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[416]});db[_0x575a[254]][_0x575a[274]](db.JscriptyQuestionReport,{"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[416]});db[_0x575a[264]][_0x575a[281]](db.User,{"\x61\x73":_0x575a[313],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[284]});db[_0x575a[264]][_0x575a[281]](db.VoiceQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[315],"\x61\x73":_0x575a[291]});db[_0x575a[264]][_0x575a[281]](db.MailQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[329],"\x61\x73":_0x575a[292]});db[_0x575a[264]][_0x575a[281]](db.ChatQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[368],"\x61\x73":_0x575a[293]});db[_0x575a[264]][_0x575a[281]](db.FaxQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[343],"\x61\x73":_0x575a[294]});db[_0x575a[264]][_0x575a[281]](db.SmsQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[346],"\x61\x73":_0x575a[295]});db[_0x575a[264]][_0x575a[281]](db.OpenchannelQueue,{"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[350],"\x61\x73":_0x575a[296]});db[_0x575a[268]][_0x575a[274]](db.CmHopper,{"\x61\x73":_0x575a[304],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[373]});db[_0x575a[268]][_0x575a[274]](db.CmHopperFinal,{"\x61\x73":_0x575a[277],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[373]});db[_0x575a[268]][_0x575a[274]](db.CmHopperHistory,{"\x61\x73":_0x575a[305],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[373]});db[_0x575a[268]][_0x575a[274]](db.CmHopperBlack,{"\x61\x73":_0x575a[306],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[373]});db[_0x575a[268]][_0x575a[308]](db.Trunk,{"\x61\x73":_0x575a[40],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[307]});db[_0x575a[268]][_0x575a[308]](db.Trunk,{"\x61\x73":_0x575a[309],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[310]});db[_0x575a[268]][_0x575a[308]](db.Interval,{"\x61\x73":_0x575a[172],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[311]});db[_0x575a[268]][_0x575a[308]](db.SquareProject,{"\x61\x73":_0x575a[260],"\x66\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79":_0x575a[417]});db[_0x575a[268]][_0x575a[281]](db.CmList,{"\x61\x73":_0x575a[282],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[418]});db[_0x575a[268]][_0x575a[281]](db.CmList,{"\x61\x73":_0x575a[316],"\x74\x68\x72\x6F\x75\x67\x68":_0x575a[419]});module[_0x575a[420]]= {db:db,dbH:dbH}
\ No newline at end of file
index 4cc9d10..8870eb3 100644 (file)
@@ -1 +1 @@
-var _0xae22=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2F\x65\x72\x72\x6F\x72\x73","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x65\x66\x61\x75\x6C\x74","\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72","\x75\x73\x65","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x63\x68\x61\x6E\x73\x70\x79","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x63\x6F\x6E\x74\x65\x78\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x6D\x6F\x68\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x6D\x61\x69\x6C\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x6D\x61\x69\x6C\x73\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x63\x61\x6C\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x64\x69\x61\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x61\x67\x65\x6E\x74\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6D\x65\x6D\x62\x65\x72\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x74\x72\x61\x6E\x73\x66\x65\x72\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x6F\x75\x74\x5F\x73\x65\x72\x76\x65\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x73\x65\x73\x73\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x73\x65\x73\x73\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64","\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73\x2F\x69\x74\x65\x6D\x73","\x2E\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x73\x65\x73\x73\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x77\x65\x62\x73\x69\x74\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x65\x6E\x71\x75\x69\x72\x69\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x70\x72\x6F\x61\x63\x74\x69\x76\x65\x5F\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x76\x69\x73\x69\x74\x6F\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x77\x65\x62\x73\x69\x74\x65\x5F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x63\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x68\x6F\x70\x70\x65\x72","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x63\x75\x73\x74\x6F\x6D\x5F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x6C\x69\x73\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x4C\x69\x73\x74","\x2F\x61\x70\x69\x2F\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x61\x6E\x6E\x65\x64\x5F\x61\x6E\x73\x77\x65\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72","\x2F\x61\x70\x69\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C","\x2F\x61\x70\x69\x2F\x70\x61\x75\x73\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x70\x61\x75\x73\x65","\x2F\x61\x70\x69\x2F\x63\x64\x72","\x2E\x2F\x61\x70\x69\x2F\x63\x64\x72","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x2F\x61\x70\x69\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x63\x68\x65\x64\x75\x6C\x65","\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64","\x2F\x61\x70\x69\x2F\x74\x61\x67\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x61\x67","\x2F\x61\x70\x69\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65","\x2F\x61\x70\x69\x2F\x74\x72\x69\x67\x67\x65\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x72\x69\x67\x67\x65\x72","\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x63\x75\x73\x74\x6F\x6D\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x64\x65\x66\x61\x75\x6C\x74\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x65\x78\x74\x72\x61\x63\x74\x65\x64\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x6D\x65\x74\x72\x69\x63\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x66\x69\x65\x6C\x64\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x74\x72\x65\x65\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x2F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x75\x67\x61\x72\x63\x72\x6D\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x75\x67\x61\x72\x63\x72\x6D\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x75\x67\x61\x72\x63\x72\x6D\x2F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x7A\x65\x6E\x64\x65\x73\x6B\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x7A\x65\x6E\x64\x65\x73\x6B\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x7A\x65\x6E\x64\x65\x73\x6B\x2F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x2F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x73","\x2E\x2F\x61\x70\x69\x2F\x6E\x65\x74\x77\x6F\x72\x6B","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x73\x65\x73\x73\x69\x6F\x6E\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x69\x6E\x70\x75\x74\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x71\x75\x65\x73\x74\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x73\x65\x73\x73\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x73\x65\x73\x73\x69\x6F\x6E\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x64\x65\x74\x61\x69\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74","\x2F\x61\x70\x69\x2F\x73\x65\x74\x74\x69\x6E\x67\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x65\x74\x74\x69\x6E\x67","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x6F\x64\x62\x63","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2F\x61\x70\x69\x2F\x74\x65\x61\x6D\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x65\x61\x6D","\x2F\x61\x70\x69\x2F\x6C\x69\x63\x65\x6E\x73\x65","\x2E\x2F\x61\x70\x69\x2F\x6C\x69\x63\x65\x6E\x73\x65","\x2F\x61\x70\x69\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E","\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x2F\x6C\x6F\x63\x61\x6C","\x2E\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x4C\x6F\x63\x61\x6C","\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x2F\x67\x6F\x6F\x67\x6C\x65","\x2E\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x47\x6F\x6F\x67\x6C\x65","\x2F\x61\x70\x69\x2F\x6A\x69\x72\x61","\x2E\x2F\x61\x70\x69\x2F\x6A\x69\x72\x61","\x2F\x61\x70\x69\x2F\x72\x70\x63","\x2E\x2F\x61\x70\x69\x2F\x72\x70\x63","\x2F\x61\x70\x69\x2F\x76\x65\x72\x73\x69\x6F\x6E","\x2E\x2F\x61\x70\x69\x2F\x76\x65\x72\x73\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x73\x79\x73\x74\x65\x6D","\x2E\x2F\x61\x70\x69\x2F\x73\x79\x73\x74\x65\x6D","\x2F\x61\x70\x69\x2F\x70\x6D\x32","\x2E\x2F\x61\x70\x69\x2F\x70\x6D\x32","\x2F\x61\x70\x69\x64\x6F\x63","\x72\x6F\x6F\x74","\x6A\x6F\x69\x6E","\x73\x74\x61\x74\x69\x63","\x2F\x77\x77\x77","\x2F\x64\x65\x6D\x6F","\x67\x65\x74","\x2F\x3A\x75\x72\x6C\x28\x61\x70\x69\x7C\x61\x75\x74\x68\x7C\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x7C\x61\x70\x70\x7C\x62\x6F\x77\x65\x72\x5F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x7C\x61\x73\x73\x65\x74\x73\x29\x2F\x2A","\x72\x6F\x75\x74\x65","\x61\x70\x70\x50\x61\x74\x68","\x2F\x69\x6E\x64\x65\x78\x2E\x68\x74\x6D\x6C","\x72\x65\x73\x6F\x6C\x76\x65","\x73\x65\x6E\x64\x46\x69\x6C\x65","\x2F\x2A"];_0xae22[0];var path=require(_0xae22[1]);var express=require(_0xae22[2]);var errors=require(_0xae22[3]);var config=require(_0xae22[4]);exports[_0xae22[5]]= function(_0xa84cx5){_0xa84cx5[_0xae22[8]](_0xae22[6],require(_0xae22[7]));_0xa84cx5[_0xae22[8]](_0xae22[9],require(_0xae22[10]));_0xa84cx5[_0xae22[8]](_0xae22[11],require(_0xae22[12]));_0xa84cx5[_0xae22[8]](_0xae22[13],require(_0xae22[14]));_0xa84cx5[_0xae22[8]](_0xae22[15],require(_0xae22[16]));_0xa84cx5[_0xae22[8]](_0xae22[17],require(_0xae22[18]));_0xa84cx5[_0xae22[8]](_0xae22[19],require(_0xae22[20]));_0xa84cx5[_0xae22[8]](_0xae22[21],require(_0xae22[22]));_0xa84cx5[_0xae22[8]](_0xae22[23],require(_0xae22[24]));_0xa84cx5[_0xae22[8]](_0xae22[25],require(_0xae22[26]));_0xa84cx5[_0xae22[8]](_0xae22[27],require(_0xae22[28]));_0xa84cx5[_0xae22[8]](_0xae22[29],require(_0xae22[30]));_0xa84cx5[_0xae22[8]](_0xae22[31],require(_0xae22[32]));_0xa84cx5[_0xae22[8]](_0xae22[33],require(_0xae22[34]));_0xa84cx5[_0xae22[8]](_0xae22[35],require(_0xae22[36]));_0xa84cx5[_0xae22[8]](_0xae22[37],require(_0xae22[38]));_0xa84cx5[_0xae22[8]](_0xae22[39],require(_0xae22[40]));_0xa84cx5[_0xae22[8]](_0xae22[41],require(_0xae22[42]));_0xa84cx5[_0xae22[8]](_0xae22[43],require(_0xae22[44]));_0xa84cx5[_0xae22[8]](_0xae22[45],require(_0xae22[46]));_0xa84cx5[_0xae22[8]](_0xae22[47],require(_0xae22[48]));_0xa84cx5[_0xae22[8]](_0xae22[49],require(_0xae22[50]));_0xa84cx5[_0xae22[8]](_0xae22[51],require(_0xae22[52]));_0xa84cx5[_0xae22[8]](_0xae22[53],require(_0xae22[54]));_0xa84cx5[_0xae22[8]](_0xae22[55],require(_0xae22[56]));_0xa84cx5[_0xae22[8]](_0xae22[57],require(_0xae22[58]));_0xa84cx5[_0xae22[8]](_0xae22[59],require(_0xae22[60]));_0xa84cx5[_0xae22[8]](_0xae22[61],require(_0xae22[62]));_0xa84cx5[_0xae22[8]](_0xae22[63],require(_0xae22[64]));_0xa84cx5[_0xae22[8]](_0xae22[65],require(_0xae22[66]));_0xa84cx5[_0xae22[8]](_0xae22[67],require(_0xae22[68]));_0xa84cx5[_0xae22[8]](_0xae22[69],require(_0xae22[70]));_0xa84cx5[_0xae22[8]](_0xae22[71],require(_0xae22[72]));_0xa84cx5[_0xae22[8]](_0xae22[73],require(_0xae22[74]));_0xa84cx5[_0xae22[8]](_0xae22[75],require(_0xae22[76]));_0xa84cx5[_0xae22[8]](_0xae22[77],require(_0xae22[78]));_0xa84cx5[_0xae22[8]](_0xae22[79],require(_0xae22[80]));_0xa84cx5[_0xae22[8]](_0xae22[81],require(_0xae22[82]));_0xa84cx5[_0xae22[8]](_0xae22[83],require(_0xae22[84]));_0xa84cx5[_0xae22[8]](_0xae22[85],require(_0xae22[86]));_0xa84cx5[_0xae22[8]](_0xae22[87],require(_0xae22[88]));_0xa84cx5[_0xae22[8]](_0xae22[89],require(_0xae22[90]));_0xa84cx5[_0xae22[8]](_0xae22[91],require(_0xae22[92]));_0xa84cx5[_0xae22[8]](_0xae22[93],require(_0xae22[94]));_0xa84cx5[_0xae22[8]](_0xae22[95],require(_0xae22[96]));_0xa84cx5[_0xae22[8]](_0xae22[97],require(_0xae22[98]));_0xa84cx5[_0xae22[8]](_0xae22[99],require(_0xae22[100]));_0xa84cx5[_0xae22[8]](_0xae22[101],require(_0xae22[102]));_0xa84cx5[_0xae22[8]](_0xae22[103],require(_0xae22[104]));_0xa84cx5[_0xae22[8]](_0xae22[105],require(_0xae22[106]));_0xa84cx5[_0xae22[8]](_0xae22[107],require(_0xae22[108]));_0xa84cx5[_0xae22[8]](_0xae22[109],require(_0xae22[110]));_0xa84cx5[_0xae22[8]](_0xae22[111],require(_0xae22[112]));_0xa84cx5[_0xae22[8]](_0xae22[113],require(_0xae22[114]));_0xa84cx5[_0xae22[8]](_0xae22[115],require(_0xae22[116]));_0xa84cx5[_0xae22[8]](_0xae22[117],require(_0xae22[118]));_0xa84cx5[_0xae22[8]](_0xae22[119],require(_0xae22[120]));_0xa84cx5[_0xae22[8]](_0xae22[121],require(_0xae22[122]));_0xa84cx5[_0xae22[8]](_0xae22[123],require(_0xae22[124]));_0xa84cx5[_0xae22[8]](_0xae22[125],require(_0xae22[126]));_0xa84cx5[_0xae22[8]](_0xae22[127],require(_0xae22[128]));_0xa84cx5[_0xae22[8]](_0xae22[129],require(_0xae22[130]));_0xa84cx5[_0xae22[8]](_0xae22[131],require(_0xae22[132]));_0xa84cx5[_0xae22[8]](_0xae22[133],require(_0xae22[134]));_0xa84cx5[_0xae22[8]](_0xae22[135],require(_0xae22[136]));_0xa84cx5[_0xae22[8]](_0xae22[137],require(_0xae22[138]));_0xa84cx5[_0xae22[8]](_0xae22[139],require(_0xae22[140]));_0xa84cx5[_0xae22[8]](_0xae22[141],require(_0xae22[142]));_0xa84cx5[_0xae22[8]](_0xae22[143],require(_0xae22[144]));_0xa84cx5[_0xae22[8]](_0xae22[145],require(_0xae22[146]));_0xa84cx5[_0xae22[8]](_0xae22[147],require(_0xae22[148]));_0xa84cx5[_0xae22[8]](_0xae22[149],require(_0xae22[150]));_0xa84cx5[_0xae22[8]](_0xae22[151],require(_0xae22[152]));_0xa84cx5[_0xae22[8]](_0xae22[153],require(_0xae22[154]));_0xa84cx5[_0xae22[8]](_0xae22[155],require(_0xae22[156]));_0xa84cx5[_0xae22[8]](_0xae22[157],require(_0xae22[158]));_0xa84cx5[_0xae22[8]](_0xae22[159],require(_0xae22[160]));_0xa84cx5[_0xae22[8]](_0xae22[161],require(_0xae22[162]));_0xa84cx5[_0xae22[8]](_0xae22[163],require(_0xae22[164]));_0xa84cx5[_0xae22[8]](_0xae22[165],require(_0xae22[166]));_0xa84cx5[_0xae22[8]](_0xae22[167],require(_0xae22[168]));_0xa84cx5[_0xae22[8]](_0xae22[169],require(_0xae22[170]));_0xa84cx5[_0xae22[8]](_0xae22[171],require(_0xae22[172]));_0xa84cx5[_0xae22[8]](_0xae22[173],require(_0xae22[174]));_0xa84cx5[_0xae22[8]](_0xae22[175],require(_0xae22[176]));_0xa84cx5[_0xae22[8]](_0xae22[177],require(_0xae22[178]));_0xa84cx5[_0xae22[8]](_0xae22[179],require(_0xae22[180]));_0xa84cx5[_0xae22[8]](_0xae22[181],require(_0xae22[182]));_0xa84cx5[_0xae22[8]](_0xae22[183],require(_0xae22[184]));_0xa84cx5[_0xae22[8]](_0xae22[185],require(_0xae22[186]));_0xa84cx5[_0xae22[8]](_0xae22[187],require(_0xae22[188]));_0xa84cx5[_0xae22[8]](_0xae22[189],require(_0xae22[190]));_0xa84cx5[_0xae22[8]](_0xae22[191],require(_0xae22[192]));_0xa84cx5[_0xae22[8]](_0xae22[193],require(_0xae22[194]));_0xa84cx5[_0xae22[8]](_0xae22[195],require(_0xae22[196]));_0xa84cx5[_0xae22[8]](_0xae22[197],require(_0xae22[198]));_0xa84cx5[_0xae22[8]](_0xae22[199],require(_0xae22[200]));_0xa84cx5[_0xae22[8]](_0xae22[201],require(_0xae22[202]));_0xa84cx5[_0xae22[8]](_0xae22[203],require(_0xae22[204]));_0xa84cx5[_0xae22[8]](_0xae22[205],require(_0xae22[206]));_0xa84cx5[_0xae22[8]](_0xae22[207],require(_0xae22[208]));_0xa84cx5[_0xae22[8]](_0xae22[209],require(_0xae22[210]));_0xa84cx5[_0xae22[8]](_0xae22[211],require(_0xae22[212]));_0xa84cx5[_0xae22[8]](_0xae22[213],require(_0xae22[214]));_0xa84cx5[_0xae22[8]](_0xae22[215],require(_0xae22[216]));_0xa84cx5[_0xae22[8]](_0xae22[217],require(_0xae22[218]));_0xa84cx5[_0xae22[8]](_0xae22[219],require(_0xae22[220]));_0xa84cx5[_0xae22[8]](_0xae22[221],require(_0xae22[222]));_0xa84cx5[_0xae22[8]](_0xae22[223],require(_0xae22[224]));_0xa84cx5[_0xae22[8]](_0xae22[225],require(_0xae22[226]));_0xa84cx5[_0xae22[8]](_0xae22[227],require(_0xae22[228]));_0xa84cx5[_0xae22[8]](_0xae22[229],require(_0xae22[230]));_0xa84cx5[_0xae22[8]](_0xae22[231],require(_0xae22[232]));_0xa84cx5[_0xae22[8]](_0xae22[233],require(_0xae22[234]));_0xa84cx5[_0xae22[8]](_0xae22[235],require(_0xae22[236]));_0xa84cx5[_0xae22[8]](_0xae22[237],require(_0xae22[238]));_0xa84cx5[_0xae22[8]](_0xae22[239],require(_0xae22[240]));_0xa84cx5[_0xae22[8]](_0xae22[241],require(_0xae22[242]));_0xa84cx5[_0xae22[8]](_0xae22[243],require(_0xae22[244]));_0xa84cx5[_0xae22[8]](_0xae22[245],require(_0xae22[246]));_0xa84cx5[_0xae22[8]](_0xae22[247],require(_0xae22[248]));_0xa84cx5[_0xae22[8]](_0xae22[249],require(_0xae22[250]));_0xa84cx5[_0xae22[8]](_0xae22[251],require(_0xae22[252]));_0xa84cx5[_0xae22[8]](_0xae22[253],require(_0xae22[254]));_0xa84cx5[_0xae22[8]](_0xae22[255],require(_0xae22[256]));_0xa84cx5[_0xae22[8]](_0xae22[257],require(_0xae22[258]));_0xa84cx5[_0xae22[8]](_0xae22[259],require(_0xae22[260]));_0xa84cx5[_0xae22[8]](_0xae22[261],require(_0xae22[262]));_0xa84cx5[_0xae22[8]](_0xae22[263],require(_0xae22[264]));_0xa84cx5[_0xae22[8]](_0xae22[265],express[_0xae22[268]](path[_0xae22[267]](config[_0xae22[266]],_0xae22[265])));_0xa84cx5[_0xae22[8]](_0xae22[269],express[_0xae22[268]](path[_0xae22[267]](config[_0xae22[266]],_0xae22[269])));_0xa84cx5[_0xae22[8]](_0xae22[270],express[_0xae22[268]](path[_0xae22[267]](config[_0xae22[266]],_0xae22[270])));_0xa84cx5[_0xae22[273]](_0xae22[272])[_0xae22[271]](errors[404]);_0xa84cx5[_0xae22[273]](_0xae22[278])[_0xae22[271]](function(_0xa84cx6,_0xa84cx7){_0xa84cx7[_0xae22[277]](path[_0xae22[276]](_0xa84cx5[_0xae22[271]](_0xae22[274])+ _0xae22[275]))})}
\ No newline at end of file
+var _0x9ece=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x70\x61\x74\x68","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2F\x65\x72\x72\x6F\x72\x73","\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x64\x65\x66\x61\x75\x6C\x74","\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72","\x75\x73\x65","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x63\x68\x61\x6E\x73\x70\x79","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x68\x61\x6E\x53\x70\x79","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x63\x6F\x6E\x74\x65\x78\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x6F\x6E\x74\x65\x78\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x6D\x6F\x68\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x75\x73\x69\x63\x4F\x6E\x48\x6F\x6C\x64","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x6D\x61\x69\x6C\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x6D\x61\x69\x6C\x73\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x63\x61\x6C\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x64\x69\x61\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x61\x67\x65\x6E\x74\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6D\x65\x6D\x62\x65\x72\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x74\x72\x61\x6E\x73\x66\x65\x72\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x6F\x75\x74\x5F\x73\x65\x72\x76\x65\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x73\x65\x73\x73\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x73\x65\x73\x73\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64","\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x73\x2F\x69\x74\x65\x6D\x73","\x2E\x2F\x61\x70\x69\x2F\x64\x61\x73\x68\x62\x6F\x61\x72\x64\x49\x74\x65\x6D","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x73\x65\x73\x73\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x77\x65\x62\x73\x69\x74\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x69\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x49\x6E\x74\x65\x72\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x6D\x65\x73\x73\x61\x67\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x4D\x65\x73\x73\x61\x67\x65","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x71\x75\x65\x75\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x51\x75\x65\x75\x65","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x65\x6E\x71\x75\x69\x72\x69\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x70\x72\x6F\x61\x63\x74\x69\x76\x65\x5F\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x50\x72\x6F\x61\x63\x74\x69\x76\x65\x41\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x76\x69\x73\x69\x74\x6F\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x56\x69\x73\x69\x74\x6F\x72","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x77\x65\x62\x73\x69\x74\x65\x5F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x63\x6F\x6D\x70\x61\x6E\x69\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6D\x70\x61\x6E\x79","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x63\x6F\x6E\x74\x61\x63\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x68\x6F\x70\x70\x65\x72","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x68\x6F\x70\x70\x65\x72\x5F\x62\x6C\x61\x63\x6B","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x68\x6F\x70\x70\x65\x72\x5F\x66\x69\x6E\x61\x6C","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x68\x6F\x70\x70\x65\x72\x5F\x68\x69\x73\x74\x6F\x72\x79","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x63\x75\x73\x74\x6F\x6D\x5F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x63\x6D\x2F\x6C\x69\x73\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x4C\x69\x73\x74","\x2F\x61\x70\x69\x2F\x61\x63\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x63\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x63\x61\x6E\x6E\x65\x64\x5F\x61\x6E\x73\x77\x65\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6E\x6E\x65\x64\x41\x6E\x73\x77\x65\x72","\x2F\x61\x70\x69\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C","\x2F\x61\x70\x69\x2F\x70\x61\x75\x73\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x70\x61\x75\x73\x65","\x2F\x61\x70\x69\x2F\x63\x64\x72","\x2E\x2F\x61\x70\x69\x2F\x63\x64\x72","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x4C\x6F\x67","\x2F\x61\x70\x69\x2F\x73\x63\x68\x65\x64\x75\x6C\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x63\x68\x65\x64\x75\x6C\x65","\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64","\x2F\x61\x70\x69\x2F\x74\x61\x67\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x61\x67","\x2F\x61\x70\x69\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65","\x2F\x61\x70\x69\x2F\x74\x72\x69\x67\x67\x65\x72\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x72\x69\x67\x67\x65\x72","\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x2E\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x63\x75\x73\x74\x6F\x6D\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x43\x75\x73\x74\x6F\x6D\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x64\x65\x66\x61\x75\x6C\x74\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x44\x65\x66\x61\x75\x6C\x74\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x65\x78\x74\x72\x61\x63\x74\x65\x64\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x45\x78\x74\x72\x61\x63\x74\x65\x64\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x6D\x65\x74\x72\x69\x63\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x4D\x65\x74\x72\x69\x63","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x66\x69\x65\x6C\x64\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x46\x69\x65\x6C\x64\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x73\x2F\x74\x72\x65\x65\x5F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x61\x6E\x61\x6C\x79\x74\x69\x63\x54\x72\x65\x65\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x2F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x75\x67\x61\x72\x63\x72\x6D\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x75\x67\x61\x72\x63\x72\x6D\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x75\x67\x61\x72\x63\x72\x6D\x2F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x7A\x65\x6E\x64\x65\x73\x6B\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x7A\x65\x6E\x64\x65\x73\x6B\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x7A\x65\x6E\x64\x65\x73\x6B\x2F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x2F\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x2F\x66\x69\x65\x6C\x64\x73","\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x2F\x61\x70\x69\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x73","\x2E\x2F\x61\x70\x69\x2F\x6E\x65\x74\x77\x6F\x72\x6B","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x2F\x73\x65\x73\x73\x69\x6F\x6E\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x68\x61\x74\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x66\x61\x78\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x66\x61\x78\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x69\x6E\x70\x75\x74\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x49\x6E\x70\x75\x74\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x71\x75\x65\x73\x74\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x51\x75\x65\x73\x74\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x73\x65\x73\x73\x69\x6F\x6E\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x73\x65\x73\x73\x69\x6F\x6E\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x6D\x73\x53\x65\x73\x73\x69\x6F\x6E\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x64\x65\x74\x61\x69\x6C\x73\x2F\x72\x65\x70\x6F\x72\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x50\x72\x6F\x6A\x65\x63\x74","\x2F\x61\x70\x69\x2F\x73\x65\x74\x74\x69\x6E\x67\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x65\x74\x74\x69\x6E\x67","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x6F\x64\x62\x63","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73","\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2F\x61\x70\x69\x2F\x74\x65\x61\x6D\x73","\x2E\x2F\x61\x70\x69\x2F\x74\x65\x61\x6D","\x2F\x61\x70\x69\x2F\x6C\x69\x63\x65\x6E\x73\x65","\x2E\x2F\x61\x70\x69\x2F\x6C\x69\x63\x65\x6E\x73\x65","\x2F\x61\x70\x69\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E","\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x2F\x6C\x6F\x63\x61\x6C","\x2E\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x4C\x6F\x63\x61\x6C","\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x2F\x67\x6F\x6F\x67\x6C\x65","\x2E\x2F\x61\x70\x69\x2F\x61\x75\x74\x68\x47\x6F\x6F\x67\x6C\x65","\x2F\x61\x70\x69\x2F\x6A\x69\x72\x61","\x2E\x2F\x61\x70\x69\x2F\x6A\x69\x72\x61","\x2F\x61\x70\x69\x2F\x72\x70\x63","\x2E\x2F\x61\x70\x69\x2F\x72\x70\x63","\x2F\x61\x70\x69\x2F\x76\x65\x72\x73\x69\x6F\x6E","\x2E\x2F\x61\x70\x69\x2F\x76\x65\x72\x73\x69\x6F\x6E","\x2F\x61\x70\x69\x2F\x73\x79\x73\x74\x65\x6D","\x2E\x2F\x61\x70\x69\x2F\x73\x79\x73\x74\x65\x6D","\x2F\x61\x70\x69\x2F\x70\x6D\x32","\x2E\x2F\x61\x70\x69\x2F\x70\x6D\x32","\x2F\x61\x70\x69\x64\x6F\x63","\x72\x6F\x6F\x74","\x6A\x6F\x69\x6E","\x73\x74\x61\x74\x69\x63","\x2F\x77\x77\x77","\x2F\x64\x65\x6D\x6F","\x67\x65\x74","\x2F\x3A\x75\x72\x6C\x28\x61\x70\x69\x7C\x61\x75\x74\x68\x7C\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x7C\x61\x70\x70\x7C\x62\x6F\x77\x65\x72\x5F\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73\x7C\x61\x73\x73\x65\x74\x73\x29\x2F\x2A","\x72\x6F\x75\x74\x65","\x61\x70\x70\x50\x61\x74\x68","\x2F\x69\x6E\x64\x65\x78\x2E\x68\x74\x6D\x6C","\x72\x65\x73\x6F\x6C\x76\x65","\x73\x65\x6E\x64\x46\x69\x6C\x65","\x2F\x2A"];_0x9ece[0];var path=require(_0x9ece[1]);var express=require(_0x9ece[2]);var errors=require(_0x9ece[3]);var config=require(_0x9ece[4]);exports[_0x9ece[5]]= function(_0xb264x5){_0xb264x5[_0x9ece[8]](_0x9ece[6],require(_0x9ece[7]));_0xb264x5[_0x9ece[8]](_0x9ece[9],require(_0x9ece[10]));_0xb264x5[_0x9ece[8]](_0x9ece[11],require(_0x9ece[12]));_0xb264x5[_0x9ece[8]](_0x9ece[13],require(_0x9ece[14]));_0xb264x5[_0x9ece[8]](_0x9ece[15],require(_0x9ece[16]));_0xb264x5[_0x9ece[8]](_0x9ece[17],require(_0x9ece[18]));_0xb264x5[_0x9ece[8]](_0x9ece[19],require(_0x9ece[20]));_0xb264x5[_0x9ece[8]](_0x9ece[21],require(_0x9ece[22]));_0xb264x5[_0x9ece[8]](_0x9ece[23],require(_0x9ece[24]));_0xb264x5[_0x9ece[8]](_0x9ece[25],require(_0x9ece[26]));_0xb264x5[_0x9ece[8]](_0x9ece[27],require(_0x9ece[28]));_0xb264x5[_0x9ece[8]](_0x9ece[29],require(_0x9ece[30]));_0xb264x5[_0x9ece[8]](_0x9ece[31],require(_0x9ece[32]));_0xb264x5[_0x9ece[8]](_0x9ece[33],require(_0x9ece[34]));_0xb264x5[_0x9ece[8]](_0x9ece[35],require(_0x9ece[36]));_0xb264x5[_0x9ece[8]](_0x9ece[37],require(_0x9ece[38]));_0xb264x5[_0x9ece[8]](_0x9ece[39],require(_0x9ece[40]));_0xb264x5[_0x9ece[8]](_0x9ece[41],require(_0x9ece[42]));_0xb264x5[_0x9ece[8]](_0x9ece[43],require(_0x9ece[44]));_0xb264x5[_0x9ece[8]](_0x9ece[45],require(_0x9ece[46]));_0xb264x5[_0x9ece[8]](_0x9ece[47],require(_0x9ece[48]));_0xb264x5[_0x9ece[8]](_0x9ece[49],require(_0x9ece[50]));_0xb264x5[_0x9ece[8]](_0x9ece[51],require(_0x9ece[52]));_0xb264x5[_0x9ece[8]](_0x9ece[53],require(_0x9ece[54]));_0xb264x5[_0x9ece[8]](_0x9ece[55],require(_0x9ece[56]));_0xb264x5[_0x9ece[8]](_0x9ece[57],require(_0x9ece[58]));_0xb264x5[_0x9ece[8]](_0x9ece[59],require(_0x9ece[60]));_0xb264x5[_0x9ece[8]](_0x9ece[61],require(_0x9ece[62]));_0xb264x5[_0x9ece[8]](_0x9ece[63],require(_0x9ece[64]));_0xb264x5[_0x9ece[8]](_0x9ece[65],require(_0x9ece[66]));_0xb264x5[_0x9ece[8]](_0x9ece[67],require(_0x9ece[68]));_0xb264x5[_0x9ece[8]](_0x9ece[69],require(_0x9ece[70]));_0xb264x5[_0x9ece[8]](_0x9ece[71],require(_0x9ece[72]));_0xb264x5[_0x9ece[8]](_0x9ece[73],require(_0x9ece[74]));_0xb264x5[_0x9ece[8]](_0x9ece[75],require(_0x9ece[76]));_0xb264x5[_0x9ece[8]](_0x9ece[77],require(_0x9ece[78]));_0xb264x5[_0x9ece[8]](_0x9ece[79],require(_0x9ece[80]));_0xb264x5[_0x9ece[8]](_0x9ece[81],require(_0x9ece[82]));_0xb264x5[_0x9ece[8]](_0x9ece[83],require(_0x9ece[84]));_0xb264x5[_0x9ece[8]](_0x9ece[85],require(_0x9ece[86]));_0xb264x5[_0x9ece[8]](_0x9ece[87],require(_0x9ece[88]));_0xb264x5[_0x9ece[8]](_0x9ece[89],require(_0x9ece[90]));_0xb264x5[_0x9ece[8]](_0x9ece[91],require(_0x9ece[92]));_0xb264x5[_0x9ece[8]](_0x9ece[93],require(_0x9ece[94]));_0xb264x5[_0x9ece[8]](_0x9ece[95],require(_0x9ece[96]));_0xb264x5[_0x9ece[8]](_0x9ece[97],require(_0x9ece[98]));_0xb264x5[_0x9ece[8]](_0x9ece[99],require(_0x9ece[100]));_0xb264x5[_0x9ece[8]](_0x9ece[101],require(_0x9ece[102]));_0xb264x5[_0x9ece[8]](_0x9ece[103],require(_0x9ece[104]));_0xb264x5[_0x9ece[8]](_0x9ece[105],require(_0x9ece[106]));_0xb264x5[_0x9ece[8]](_0x9ece[107],require(_0x9ece[108]));_0xb264x5[_0x9ece[8]](_0x9ece[109],require(_0x9ece[110]));_0xb264x5[_0x9ece[8]](_0x9ece[111],require(_0x9ece[112]));_0xb264x5[_0x9ece[8]](_0x9ece[113],require(_0x9ece[114]));_0xb264x5[_0x9ece[8]](_0x9ece[115],require(_0x9ece[116]));_0xb264x5[_0x9ece[8]](_0x9ece[117],require(_0x9ece[118]));_0xb264x5[_0x9ece[8]](_0x9ece[119],require(_0x9ece[120]));_0xb264x5[_0x9ece[8]](_0x9ece[121],require(_0x9ece[122]));_0xb264x5[_0x9ece[8]](_0x9ece[123],require(_0x9ece[124]));_0xb264x5[_0x9ece[8]](_0x9ece[125],require(_0x9ece[126]));_0xb264x5[_0x9ece[8]](_0x9ece[127],require(_0x9ece[128]));_0xb264x5[_0x9ece[8]](_0x9ece[129],require(_0x9ece[130]));_0xb264x5[_0x9ece[8]](_0x9ece[131],require(_0x9ece[132]));_0xb264x5[_0x9ece[8]](_0x9ece[133],require(_0x9ece[134]));_0xb264x5[_0x9ece[8]](_0x9ece[135],require(_0x9ece[136]));_0xb264x5[_0x9ece[8]](_0x9ece[137],require(_0x9ece[138]));_0xb264x5[_0x9ece[8]](_0x9ece[139],require(_0x9ece[140]));_0xb264x5[_0x9ece[8]](_0x9ece[141],require(_0x9ece[142]));_0xb264x5[_0x9ece[8]](_0x9ece[143],require(_0x9ece[144]));_0xb264x5[_0x9ece[8]](_0x9ece[145],require(_0x9ece[146]));_0xb264x5[_0x9ece[8]](_0x9ece[147],require(_0x9ece[148]));_0xb264x5[_0x9ece[8]](_0x9ece[149],require(_0x9ece[150]));_0xb264x5[_0x9ece[8]](_0x9ece[151],require(_0x9ece[152]));_0xb264x5[_0x9ece[8]](_0x9ece[153],require(_0x9ece[154]));_0xb264x5[_0x9ece[8]](_0x9ece[155],require(_0x9ece[156]));_0xb264x5[_0x9ece[8]](_0x9ece[157],require(_0x9ece[158]));_0xb264x5[_0x9ece[8]](_0x9ece[159],require(_0x9ece[160]));_0xb264x5[_0x9ece[8]](_0x9ece[161],require(_0x9ece[162]));_0xb264x5[_0x9ece[8]](_0x9ece[163],require(_0x9ece[164]));_0xb264x5[_0x9ece[8]](_0x9ece[165],require(_0x9ece[166]));_0xb264x5[_0x9ece[8]](_0x9ece[167],require(_0x9ece[168]));_0xb264x5[_0x9ece[8]](_0x9ece[169],require(_0x9ece[170]));_0xb264x5[_0x9ece[8]](_0x9ece[171],require(_0x9ece[172]));_0xb264x5[_0x9ece[8]](_0x9ece[173],require(_0x9ece[174]));_0xb264x5[_0x9ece[8]](_0x9ece[175],require(_0x9ece[176]));_0xb264x5[_0x9ece[8]](_0x9ece[177],require(_0x9ece[178]));_0xb264x5[_0x9ece[8]](_0x9ece[179],require(_0x9ece[180]));_0xb264x5[_0x9ece[8]](_0x9ece[181],require(_0x9ece[182]));_0xb264x5[_0x9ece[8]](_0x9ece[183],require(_0x9ece[184]));_0xb264x5[_0x9ece[8]](_0x9ece[185],require(_0x9ece[186]));_0xb264x5[_0x9ece[8]](_0x9ece[187],require(_0x9ece[188]));_0xb264x5[_0x9ece[8]](_0x9ece[189],require(_0x9ece[190]));_0xb264x5[_0x9ece[8]](_0x9ece[191],require(_0x9ece[192]));_0xb264x5[_0x9ece[8]](_0x9ece[193],require(_0x9ece[194]));_0xb264x5[_0x9ece[8]](_0x9ece[195],require(_0x9ece[196]));_0xb264x5[_0x9ece[8]](_0x9ece[197],require(_0x9ece[198]));_0xb264x5[_0x9ece[8]](_0x9ece[199],require(_0x9ece[200]));_0xb264x5[_0x9ece[8]](_0x9ece[201],require(_0x9ece[202]));_0xb264x5[_0x9ece[8]](_0x9ece[203],require(_0x9ece[204]));_0xb264x5[_0x9ece[8]](_0x9ece[205],require(_0x9ece[206]));_0xb264x5[_0x9ece[8]](_0x9ece[207],require(_0x9ece[208]));_0xb264x5[_0x9ece[8]](_0x9ece[209],require(_0x9ece[210]));_0xb264x5[_0x9ece[8]](_0x9ece[211],require(_0x9ece[212]));_0xb264x5[_0x9ece[8]](_0x9ece[213],require(_0x9ece[214]));_0xb264x5[_0x9ece[8]](_0x9ece[215],require(_0x9ece[216]));_0xb264x5[_0x9ece[8]](_0x9ece[217],require(_0x9ece[218]));_0xb264x5[_0x9ece[8]](_0x9ece[219],require(_0x9ece[220]));_0xb264x5[_0x9ece[8]](_0x9ece[221],require(_0x9ece[222]));_0xb264x5[_0x9ece[8]](_0x9ece[223],require(_0x9ece[224]));_0xb264x5[_0x9ece[8]](_0x9ece[225],require(_0x9ece[226]));_0xb264x5[_0x9ece[8]](_0x9ece[227],require(_0x9ece[228]));_0xb264x5[_0x9ece[8]](_0x9ece[229],require(_0x9ece[230]));_0xb264x5[_0x9ece[8]](_0x9ece[231],require(_0x9ece[232]));_0xb264x5[_0x9ece[8]](_0x9ece[233],require(_0x9ece[234]));_0xb264x5[_0x9ece[8]](_0x9ece[235],require(_0x9ece[236]));_0xb264x5[_0x9ece[8]](_0x9ece[237],require(_0x9ece[238]));_0xb264x5[_0x9ece[8]](_0x9ece[239],require(_0x9ece[240]));_0xb264x5[_0x9ece[8]](_0x9ece[241],require(_0x9ece[242]));_0xb264x5[_0x9ece[8]](_0x9ece[243],require(_0x9ece[244]));_0xb264x5[_0x9ece[8]](_0x9ece[245],require(_0x9ece[246]));_0xb264x5[_0x9ece[8]](_0x9ece[247],require(_0x9ece[248]));_0xb264x5[_0x9ece[8]](_0x9ece[249],require(_0x9ece[250]));_0xb264x5[_0x9ece[8]](_0x9ece[251],require(_0x9ece[252]));_0xb264x5[_0x9ece[8]](_0x9ece[253],require(_0x9ece[254]));_0xb264x5[_0x9ece[8]](_0x9ece[255],require(_0x9ece[256]));_0xb264x5[_0x9ece[8]](_0x9ece[257],require(_0x9ece[258]));_0xb264x5[_0x9ece[8]](_0x9ece[259],require(_0x9ece[260]));_0xb264x5[_0x9ece[8]](_0x9ece[261],require(_0x9ece[262]));_0xb264x5[_0x9ece[8]](_0x9ece[263],require(_0x9ece[264]));_0xb264x5[_0x9ece[8]](_0x9ece[265],express[_0x9ece[268]](path[_0x9ece[267]](config[_0x9ece[266]],_0x9ece[265])));_0xb264x5[_0x9ece[8]](_0x9ece[269],express[_0x9ece[268]](path[_0x9ece[267]](config[_0x9ece[266]],_0x9ece[269])));_0xb264x5[_0x9ece[8]](_0x9ece[270],express[_0x9ece[268]](path[_0x9ece[267]](config[_0x9ece[266]],_0x9ece[270])));_0xb264x5[_0x9ece[273]](_0x9ece[272])[_0x9ece[271]](errors[404]);_0xb264x5[_0x9ece[273]](_0x9ece[278])[_0x9ece[271]](function(_0xb264x6,_0xb264x7){_0xb264x7[_0x9ece[277]](path[_0x9ece[276]](_0xb264x5[_0x9ece[271]](_0x9ece[274])+ _0x9ece[275]))})}
\ No newline at end of file
index b4f44be..5f99404 100644 (file)
@@ -1 +1 @@
-var _0x71be=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x6C\x69\x73\x74\x65\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x2F\x75\x73\x65\x72\x2E\x72\x70\x63","\x6D\x65\x72\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B\x2F\x74\x72\x75\x6E\x6B\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64\x2F\x73\x6F\x75\x6E\x64\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x72\x69\x67\x67\x65\x72\x2F\x74\x72\x69\x67\x67\x65\x72\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2E\x72\x70\x63","\x68\x74\x74\x70","\x73\x65\x72\x76\x65\x72","\x70\x6F\x72\x74","\x72\x70\x63","\x69\x70","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x65\x72\x72\x6F\x72","\x6F\x6E","\x52\x50\x43\x20\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67\x20\x6F\x6E\x20","\x3A"];_0x71be[0];var jayson=require(_0x71be[1]);var BPromise=require(_0x71be[2]);var _=require(_0x71be[3]);var config=require(_0x71be[4]);exports[_0x71be[5]]= function(){return  new BPromise(function(_0x4c2fx5,_0x4c2fx6){var _0x4c2fx7={};_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[6]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[8]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[9]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[10]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[11]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[12]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[13]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[14]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[15]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[16]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[17]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[18]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[19]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[20]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[21]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[22]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[23]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[24]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[25]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[26]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[27]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[28]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[29]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[30]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[31]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[32]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[33]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[34]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[35]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[36]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[37]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[38]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[39]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[40]));_0x4c2fx7= _[_0x71be[7]](_0x4c2fx7,require(_0x71be[41]));var _0x4c2fx8=jayson[_0x71be[43]](_0x4c2fx7)[_0x71be[42]]();var _0x4c2fx9=config[_0x71be[45]][_0x71be[44]]|| (config[_0x71be[44]]+ 1);var _0x4c2fxa=config[_0x71be[45]][_0x71be[46]]|| _0x71be[47];_0x4c2fx8[_0x71be[49]](_0x71be[48],function(_0x4c2fxb){return _0x4c2fx6(_0x4c2fxb)});_0x4c2fx8[_0x71be[5]](_0x4c2fx9,_0x4c2fxa,function(){return _0x4c2fx5(_0x71be[50]+ _0x4c2fxa+ _0x71be[51]+ _0x4c2fx9)})})}
\ No newline at end of file
+var _0x936d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x6C\x69\x73\x74\x65\x6E","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x2F\x75\x73\x65\x72\x2E\x72\x70\x63","\x6D\x65\x72\x67\x65","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B\x2F\x74\x72\x75\x6E\x6B\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2F\x75\x73\x65\x72\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x6D\x61\x69\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2F\x6F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2F\x63\x6D\x43\x6F\x6E\x74\x61\x63\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64\x2F\x73\x6F\x75\x6E\x64\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x74\x72\x69\x67\x67\x65\x72\x2F\x74\x72\x69\x67\x67\x65\x72\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2F\x69\x6E\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74\x44\x65\x74\x61\x69\x6C\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2F\x73\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2F\x73\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F\x73\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67\x2E\x72\x70\x63","\x2E\x2E\x2F\x61\x70\x69\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E\x2E\x72\x70\x63","\x68\x74\x74\x70","\x73\x65\x72\x76\x65\x72","\x70\x6F\x72\x74","\x72\x70\x63","\x69\x70","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x65\x72\x72\x6F\x72","\x6F\x6E","\x52\x50\x43\x20\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67\x20\x6F\x6E\x20","\x3A"];_0x936d[0];var jayson=require(_0x936d[1]);var BPromise=require(_0x936d[2]);var _=require(_0x936d[3]);var config=require(_0x936d[4]);exports[_0x936d[5]]= function(){return  new BPromise(function(_0xb1e8x5,_0xb1e8x6){var _0xb1e8x7={};_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[6]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[8]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[9]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[10]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[11]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[12]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[13]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[14]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[15]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[16]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[17]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[18]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[19]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[20]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[21]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[22]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[23]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[24]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[25]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[26]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[27]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[28]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[29]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[30]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[31]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[32]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[33]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[34]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[35]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[36]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[37]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[38]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[39]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[40]));_0xb1e8x7= _[_0x936d[7]](_0xb1e8x7,require(_0x936d[41]));var _0xb1e8x8=jayson[_0x936d[43]](_0xb1e8x7)[_0x936d[42]]();var _0xb1e8x9=config[_0x936d[45]][_0x936d[44]]|| (config[_0x936d[44]]+ 1);var _0xb1e8xa=config[_0x936d[45]][_0x936d[46]]|| _0x936d[47];_0xb1e8x8[_0x936d[49]](_0x936d[48],function(_0xb1e8xb){return _0xb1e8x6(_0xb1e8xb)});_0xb1e8x8[_0x936d[5]](_0xb1e8x9,_0xb1e8xa,function(){return _0xb1e8x5(_0x936d[50]+ _0xb1e8xa+ _0x936d[51]+ _0xb1e8x9)})})}
\ No newline at end of file
index 2dae66b..07557c5 100644 (file)
@@ -1 +1 @@
-var _0x28f9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x45\x76\x65\x6E\x74\x45\x6D\x69\x74\x74\x65\x72","\x65\x76\x65\x6E\x74\x73","\x2E\x2F\x72\x65\x70\x6C\x79","\x2E\x2F\x65\x72\x72\x6F\x72","\x63\x61\x6C\x6C","\x75\x74\x66\x38","\x73\x65\x74\x45\x6E\x63\x6F\x64\x69\x6E\x67","\x68\x65\x61\x64\x65\x72\x73","\x72\x65\x61\x64\x79","\x65\x6D\x69\x74","\x6F\x6E","\x6C\x69\x6E\x65","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x68\x61\x6E\x67\x75\x70","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x35\x32\x30\x2D\x49\x6E\x76\x61\x6C\x69\x64","\x72\x78","\x0A","\x35\x32\x30\x20\x45\x6E\x64\x20\x6F\x66\x20\x70\x72\x6F\x70\x65\x72","\x73\x65\x61\x72\x63\x68","\x63\x62","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x6E\x6F\x20\x63\x6F\x64\x65","\x4B\x4F","\x72\x65\x73\x75\x6C\x74\x3D","","\x72\x65\x70\x6C\x61\x63\x65","\x20","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x75\x62\x73\x74\x72","\x73\x70\x6C\x69\x74","\x6C\x65\x6E\x67\x74\x68","\x65\x72\x72\x6F\x72","\x45\x5F\x41\x47\x49\x5F\x53\x4F\x43\x4B\x45\x54\x5F\x45\x52\x52\x4F\x52","\x63\x6F\x64\x65","\x63\x6C\x6F\x73\x65","\x45\x5F\x41\x47\x49\x5F\x53\x4F\x43\x4B\x45\x54\x5F\x43\x4C\x4F\x53\x45","\x70\x69\x70\x65","\x63\x6F\x6D\x6D\x61\x6E\x64","\x77\x72\x69\x74\x65","\x64\x65\x73\x74\x72\x6F\x79","\x69\x6E\x68\x65\x72\x69\x74\x73","\x73\x65\x6E\x64\x52\x65\x71\x75\x65\x73\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x73\x79\x6E\x63","\x61\x6E\x73\x77\x65\x72","\x41\x4E\x53\x57\x45\x52","\x67\x65\x74\x44\x61\x74\x61","\x62\x65\x65\x70","\x35","\x31","\x47\x45\x54\x20\x44\x41\x54\x41\x20\x22\x25\x73\x22\x20\x25\x73\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x6E\x6F\x6F\x70","\x4E\x4F\x20\x4D\x45\x53\x53\x41\x47\x45","\x56\x45\x52\x42\x4F\x53\x45\x20\x22\x25\x73\x22","\x65\x78\x65\x63","\x69\x73\x41\x72\x72\x61\x79","\x45\x58\x45\x43\x20\x25\x73\x20\x25\x73","\x2C","\x6A\x6F\x69\x6E","\x73\x65\x74\x43\x6F\x6E\x74\x65\x78\x74","\x53\x45\x54\x20\x43\x4F\x4E\x54\x45\x58\x54\x20\x25\x73","\x73\x65\x74\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x53\x45\x54\x20\x45\x58\x54\x45\x4E\x53\x49\x4F\x4E\x20\x25\x73","\x73\x65\x74\x50\x72\x69\x6F\x72\x69\x74\x79","\x53\x45\x54\x20\x50\x52\x49\x4F\x52\x49\x54\x59\x20\x25\x73","\x48\x41\x4E\x47\x55\x50","\x73\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65","\x53\x45\x54\x20\x56\x41\x52\x49\x41\x42\x4C\x45\x20\x25\x73\x20\x22\x25\x73\x22","\x73\x61\x79\x4E\x75\x6D\x62\x65\x72","\x53\x41\x59\x20\x4E\x55\x4D\x42\x45\x52\x20\x25\x73\x20\x25\x73","\x73\x61\x79\x44\x69\x67\x69\x74\x73","\x53\x41\x59\x20\x44\x49\x47\x49\x54\x53\x20\x25\x73\x20\x25\x73","\x73\x61\x79\x50\x68\x6F\x6E\x65\x74\x69\x63","\x53\x41\x59\x20\x50\x48\x4F\x4E\x45\x54\x49\x43\x20\x22\x25\x73\x22\x20\x25\x73","\x63\x6F\x6E\x74\x69\x6E\x75\x65\x41\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x4F\x54\x4F\x20\x25\x73\x20\x25\x73\x20\x25\x73","\x67\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65","\x47\x45\x54\x20\x56\x41\x52\x49\x41\x42\x4C\x45\x20\x22\x25\x73\x22","\x72\x65\x63\x6F\x72\x64\x46\x69\x6C\x65","\x77\x61\x76","\x2D\x31","\x73\x3D","\x42\x45\x45\x50","\x52\x45\x43\x4F\x52\x44\x20\x46\x49\x4C\x45\x20\x22\x25\x73\x22\x20\x22\x25\x73\x22\x20\x22\x25\x73\x22\x20\x25\x73\x20\x25\x73\x20\x25\x73","\x73\x74\x72\x65\x61\x6D\x46\x69\x6C\x65","\x53\x54\x52\x45\x41\x4D\x20\x46\x49\x4C\x45\x20\x22\x25\x73\x22\x20\x22\x25\x73\x22","\x61\x67\x69","\x41\x47\x49","\x77\x61\x69\x74","\x57\x41\x49\x54","\x49\x44\x3A\x25\x73\x20\x2D\x20\x4C\x41\x42\x45\x4C\x3A\x20\x25\x73\x20\x2D\x20\x4D\x53\x47\x3A\x20\x25\x73","\x69\x64","\x6C\x61\x62\x65\x6C","\x65\x78\x70\x6F\x72\x74\x73"];_0x28f9[0];var util=require(_0x28f9[1]);var _=require(_0x28f9[2]);var EventEmitter=require(_0x28f9[4])[_0x28f9[3]];var AGIReply=require(_0x28f9[5]);var AGIError=require(_0x28f9[6]);function AGIChannel(_0x1ca4x7){var _0x1ca4x8=this,_0x1ca4x9= new AGIReply(),_0x1ca4xa=false,_0x1ca4xb={};EventEmitter[_0x28f9[7]](_0x1ca4x8);_0x1ca4x7[_0x28f9[9]](_0x28f9[8]);_0x1ca4x9[_0x28f9[9]](_0x28f9[8]);_0x1ca4x9[_0x28f9[13]](_0x28f9[10],function(_0x1ca4xc){for(var _0x1ca4xd in _0x1ca4xc){_0x1ca4x8[_0x1ca4xd]= _0x1ca4xc[_0x1ca4xd]};_0x1ca4x8[_0x28f9[12]](_0x28f9[11])});_0x1ca4x9[_0x28f9[13]](_0x28f9[14],function(_0x1ca4xe){if(_0x1ca4xe[_0x28f9[15]]()== _0x28f9[16]){_0x1ca4x8[_0x28f9[12]](_0x28f9[16]);return};if(_0x1ca4xe[_0x28f9[17]](0,11)== _0x28f9[18]){_0x1ca4xa= true};if(_0x1ca4xa){_0x1ca4xb[_0x28f9[19]]+= _0x1ca4xe+ _0x28f9[20];if(_0x1ca4xe[_0x28f9[22]](_0x28f9[21])!=  -1){_0x1ca4xa= false}}else {_0x1ca4xb[_0x28f9[19]]= _0x1ca4xe};if(_0x1ca4xa){return};if( typeof _0x1ca4xb[_0x28f9[23]]== _0x28f9[24]){var _0x1ca4xf=_0x1ca4xb[_0x28f9[19]][_0x28f9[17]](0,3),_0x1ca4x10=null,_0x1ca4x11=null;_0x1ca4xf= parseInt(_0x1ca4xf);if(isNaN(_0x1ca4xf)){_0x1ca4xb[_0x28f9[23]](null,{code:500,result:-1,extra:_0x28f9[25]});return};if(_0x1ca4xf!= 200){_0x1ca4xb[_0x28f9[23]](null,{code:_0x1ca4xf,result:-1,extra:_0x28f9[26]});return};_0x1ca4x10= _0x1ca4xb[_0x28f9[19]][_0x28f9[17]](4)[_0x28f9[29]](_0x28f9[27],_0x28f9[28]);if(_0x1ca4x10[_0x28f9[31]](_0x28f9[30])!=  -1){_0x1ca4x10= _0x1ca4x10[_0x28f9[32]](0,_0x1ca4x10[_0x28f9[31]](_0x28f9[30]))};_0x1ca4x10= parseInt(_0x1ca4x10);_0x1ca4x11= _0x1ca4xb[_0x28f9[19]][_0x28f9[33]](_0x28f9[30]);if(_0x1ca4x11[_0x28f9[34]]== 3){_0x1ca4x11= _0x1ca4x11[2][_0x28f9[17]](1,_0x1ca4x11[2][_0x28f9[34]]- 1)}else {_0x1ca4x11= null};_0x1ca4xb[_0x28f9[23]](null,{code:_0x1ca4xf,result:_0x1ca4x10,extra:_0x1ca4x11})}});_0x1ca4x7[_0x28f9[13]](_0x28f9[35],function(_0x1ca4x12){_0x1ca4x8[_0x28f9[12]](_0x28f9[35], new AGIError(_0x28f9[36],_0x1ca4x12[_0x28f9[37]]))});_0x1ca4x7[_0x28f9[13]](_0x28f9[38],function(){_0x1ca4x8[_0x28f9[12]](_0x28f9[38], new AGIError(_0x28f9[39]))});_0x1ca4x7[_0x28f9[40]](_0x1ca4x9);this[_0x28f9[41]]= function(_0x1ca4x13,_0x1ca4x14){var _0x1ca4x13=_0x1ca4x13|| _0x28f9[28],_0x1ca4x14=( typeof _0x1ca4x14== _0x28f9[24])?_0x1ca4x14: new Function();_0x1ca4xb= {tx:_0x1ca4x13,rx:_0x28f9[28],cb:_0x1ca4x14};_0x1ca4x7[_0x28f9[42]](_0x1ca4x13+ _0x28f9[20])},this[_0x28f9[38]]= function(){_0x1ca4x7[_0x28f9[43]]()}}util[_0x28f9[44]](AGIChannel,EventEmitter);AGIChannel[_0x28f9[46]][_0x28f9[45]]= function(_0x1ca4x15){return this[_0x28f9[41]][_0x28f9[47]](this,_0x1ca4x15)};AGIChannel[_0x28f9[46]][_0x28f9[48]]= function(){return this[_0x28f9[45]](_0x28f9[49])};AGIChannel[_0x28f9[46]][_0x28f9[50]]= function(_0x1ca4x16,_0x1ca4x17,_0x1ca4x18){_0x1ca4x16= (_0x1ca4x16=== undefined)?_0x28f9[51]:_0x1ca4x16;_0x1ca4x17= (_0x1ca4x17=== undefined)?_0x28f9[52]:_0x1ca4x17;_0x1ca4x18= (_0x1ca4x18=== undefined)?_0x28f9[53]:_0x1ca4x18;return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[54],_0x1ca4x16,_0x1ca4x17* 1000,_0x1ca4x18))};AGIChannel[_0x28f9[46]][_0x28f9[56]]= function(_0x1ca4x19){_0x1ca4x19= _0x1ca4x19|| _0x28f9[57];return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[58],_0x1ca4x19))};AGIChannel[_0x28f9[46]][_0x28f9[59]]= function(_0x1ca4x1a,_0x1ca4x1b){if(_[_0x28f9[60]](_0x1ca4x1b)){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[61],_0x1ca4x1a,_0x1ca4x1b[_0x28f9[63]](_0x28f9[62])))};return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[61],_0x1ca4x1a,_0x1ca4x1b))};AGIChannel[_0x28f9[46]][_0x28f9[64]]= function(_0x1ca4x1c){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[65],_0x1ca4x1c))};AGIChannel[_0x28f9[46]][_0x28f9[66]]= function(_0x1ca4x1d){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[67],_0x1ca4x1d))};AGIChannel[_0x28f9[46]][_0x28f9[68]]= function(_0x1ca4x1e){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[69],_0x1ca4x1e))};AGIChannel[_0x28f9[46]][_0x28f9[16]]= function(){return this[_0x28f9[45]](_0x28f9[70])};AGIChannel[_0x28f9[46]][_0x28f9[71]]= function(_0x1ca4x1f,_0x1ca4x20){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[72],_0x1ca4x1f,_0x1ca4x20))};AGIChannel[_0x28f9[46]][_0x28f9[73]]= function(_0x1ca4x21,_0x1ca4x22){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[74],_0x1ca4x21,_0x1ca4x22))};AGIChannel[_0x28f9[46]][_0x28f9[75]]= function(_0x1ca4x23,_0x1ca4x22){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[76],_0x1ca4x23,_0x1ca4x22))};AGIChannel[_0x28f9[46]][_0x28f9[77]]= function(_0x1ca4x24,_0x1ca4x22){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[78],_0x1ca4x24,_0x1ca4x22))};AGIChannel[_0x28f9[46]][_0x28f9[79]]= function(_0x1ca4x1c,_0x1ca4x1d,_0x1ca4x1e){_0x1ca4x1d= _0x1ca4x1d|| this[_0x28f9[81]][_0x28f9[80]];_0x1ca4x1e= _0x1ca4x1e|| 1;this[_0x28f9[64]](_0x1ca4x1c);this[_0x28f9[66]](_0x1ca4x1d);this[_0x28f9[68]](_0x1ca4x1e);return this[_0x28f9[56]](util[_0x28f9[55]](_0x28f9[82],_0x1ca4x1c,_0x1ca4x1d,_0x1ca4x1e))};AGIChannel[_0x28f9[46]][_0x28f9[83]]= function(_0x1ca4x1f){return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[84],_0x1ca4x1f))};AGIChannel[_0x28f9[46]][_0x28f9[85]]= function(_0x1ca4x16,_0x1ca4x25,_0x1ca4x22,_0x1ca4x17,_0x1ca4x26,_0x1ca4x27){_0x1ca4x25= _0x1ca4x25|| _0x28f9[86];_0x1ca4x22= _0x1ca4x22|| _0x28f9[28];_0x1ca4x17= (_0x1ca4x17=== undefined)?-1:((_0x1ca4x17=== _0x28f9[87])?-1:_0x1ca4x17* 1000);_0x1ca4x26= (_0x1ca4x26=== undefined)?_0x28f9[28]:_0x28f9[88]+ _0x1ca4x26;_0x1ca4x27= (_0x1ca4x27)?_0x28f9[89]:_0x28f9[28];return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[90],_0x1ca4x16,_0x1ca4x25,_0x1ca4x22,_0x1ca4x17,_0x1ca4x27,_0x1ca4x26))};AGIChannel[_0x28f9[46]][_0x28f9[91]]= function(_0x1ca4x16,_0x1ca4x22){_0x1ca4x22= _0x1ca4x22|| _0x28f9[28];return this[_0x28f9[45]](util[_0x28f9[55]](_0x28f9[92],_0x1ca4x16,_0x1ca4x22))};AGIChannel[_0x28f9[46]][_0x28f9[93]]= function(_0x1ca4x1b){return this[_0x28f9[59]](_0x28f9[94],_0x1ca4x1b)};AGIChannel[_0x28f9[46]][_0x28f9[95]]= function(_0x1ca4x28){return this[_0x28f9[59]](_0x28f9[96],_0x1ca4x28)};AGIChannel[_0x28f9[46]][_0x28f9[35]]= function(_0x1ca4x29,_0x1ca4x2a){this[_0x28f9[56]](util[_0x28f9[55]](_0x28f9[97],_0x1ca4x29[_0x28f9[98]],_0x1ca4x29[_0x28f9[99]],_0x1ca4x2a));return {code:500,result:_0x28f9[87],extra:_0x28f9[28]}};module[_0x28f9[100]]= AGIChannel
\ No newline at end of file
+var _0x71ea=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x45\x76\x65\x6E\x74\x45\x6D\x69\x74\x74\x65\x72","\x65\x76\x65\x6E\x74\x73","\x2E\x2F\x72\x65\x70\x6C\x79","\x2E\x2F\x65\x72\x72\x6F\x72","\x63\x61\x6C\x6C","\x75\x74\x66\x38","\x73\x65\x74\x45\x6E\x63\x6F\x64\x69\x6E\x67","\x68\x65\x61\x64\x65\x72\x73","\x72\x65\x61\x64\x79","\x65\x6D\x69\x74","\x6F\x6E","\x6C\x69\x6E\x65","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x68\x61\x6E\x67\x75\x70","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x35\x32\x30\x2D\x49\x6E\x76\x61\x6C\x69\x64","\x72\x78","\x0A","\x35\x32\x30\x20\x45\x6E\x64\x20\x6F\x66\x20\x70\x72\x6F\x70\x65\x72","\x73\x65\x61\x72\x63\x68","\x63\x62","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x6E\x6F\x20\x63\x6F\x64\x65","\x4B\x4F","\x72\x65\x73\x75\x6C\x74\x3D","","\x72\x65\x70\x6C\x61\x63\x65","\x20","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x75\x62\x73\x74\x72","\x73\x70\x6C\x69\x74","\x6C\x65\x6E\x67\x74\x68","\x65\x72\x72\x6F\x72","\x45\x5F\x41\x47\x49\x5F\x53\x4F\x43\x4B\x45\x54\x5F\x45\x52\x52\x4F\x52","\x63\x6F\x64\x65","\x63\x6C\x6F\x73\x65","\x45\x5F\x41\x47\x49\x5F\x53\x4F\x43\x4B\x45\x54\x5F\x43\x4C\x4F\x53\x45","\x70\x69\x70\x65","\x63\x6F\x6D\x6D\x61\x6E\x64","\x77\x72\x69\x74\x65","\x64\x65\x73\x74\x72\x6F\x79","\x69\x6E\x68\x65\x72\x69\x74\x73","\x73\x65\x6E\x64\x52\x65\x71\x75\x65\x73\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x73\x79\x6E\x63","\x61\x6E\x73\x77\x65\x72","\x41\x4E\x53\x57\x45\x52","\x67\x65\x74\x44\x61\x74\x61","\x62\x65\x65\x70","\x35","\x31","\x47\x45\x54\x20\x44\x41\x54\x41\x20\x22\x25\x73\x22\x20\x25\x73\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x6E\x6F\x6F\x70","\x4E\x4F\x20\x4D\x45\x53\x53\x41\x47\x45","\x56\x45\x52\x42\x4F\x53\x45\x20\x22\x25\x73\x22","\x65\x78\x65\x63","\x69\x73\x41\x72\x72\x61\x79","\x45\x58\x45\x43\x20\x25\x73\x20\x25\x73","\x2C","\x6A\x6F\x69\x6E","\x73\x65\x74\x43\x6F\x6E\x74\x65\x78\x74","\x53\x45\x54\x20\x43\x4F\x4E\x54\x45\x58\x54\x20\x25\x73","\x73\x65\x74\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x53\x45\x54\x20\x45\x58\x54\x45\x4E\x53\x49\x4F\x4E\x20\x25\x73","\x73\x65\x74\x50\x72\x69\x6F\x72\x69\x74\x79","\x53\x45\x54\x20\x50\x52\x49\x4F\x52\x49\x54\x59\x20\x25\x73","\x48\x41\x4E\x47\x55\x50","\x73\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65","\x53\x45\x54\x20\x56\x41\x52\x49\x41\x42\x4C\x45\x20\x25\x73\x20\x22\x25\x73\x22","\x73\x61\x79\x4E\x75\x6D\x62\x65\x72","\x53\x41\x59\x20\x4E\x55\x4D\x42\x45\x52\x20\x25\x73\x20\x25\x73","\x73\x61\x79\x44\x69\x67\x69\x74\x73","\x53\x41\x59\x20\x44\x49\x47\x49\x54\x53\x20\x25\x73\x20\x25\x73","\x73\x61\x79\x50\x68\x6F\x6E\x65\x74\x69\x63","\x53\x41\x59\x20\x50\x48\x4F\x4E\x45\x54\x49\x43\x20\x22\x25\x73\x22\x20\x25\x73","\x63\x6F\x6E\x74\x69\x6E\x75\x65\x41\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x72\x65\x71\x75\x65\x73\x74","\x47\x4F\x54\x4F\x20\x25\x73\x20\x25\x73\x20\x25\x73","\x67\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65","\x47\x45\x54\x20\x56\x41\x52\x49\x41\x42\x4C\x45\x20\x22\x25\x73\x22","\x72\x65\x63\x6F\x72\x64\x46\x69\x6C\x65","\x77\x61\x76","\x2D\x31","\x73\x3D","\x42\x45\x45\x50","\x52\x45\x43\x4F\x52\x44\x20\x46\x49\x4C\x45\x20\x22\x25\x73\x22\x20\x22\x25\x73\x22\x20\x22\x25\x73\x22\x20\x25\x73\x20\x25\x73\x20\x25\x73","\x73\x74\x72\x65\x61\x6D\x46\x69\x6C\x65","\x53\x54\x52\x45\x41\x4D\x20\x46\x49\x4C\x45\x20\x22\x25\x73\x22\x20\x22\x25\x73\x22","\x61\x67\x69","\x41\x47\x49","\x77\x61\x69\x74","\x57\x41\x49\x54","\x49\x44\x3A\x25\x73\x20\x2D\x20\x4C\x41\x42\x45\x4C\x3A\x20\x25\x73\x20\x2D\x20\x4D\x53\x47\x3A\x20\x25\x73","\x69\x64","\x6C\x61\x62\x65\x6C","\x65\x78\x70\x6F\x72\x74\x73"];_0x71ea[0];var util=require(_0x71ea[1]);var _=require(_0x71ea[2]);var EventEmitter=require(_0x71ea[4])[_0x71ea[3]];var AGIReply=require(_0x71ea[5]);var AGIError=require(_0x71ea[6]);function AGIChannel(_0xe2d8x7){var _0xe2d8x8=this,_0xe2d8x9= new AGIReply(),_0xe2d8xa=false,_0xe2d8xb={};EventEmitter[_0x71ea[7]](_0xe2d8x8);_0xe2d8x7[_0x71ea[9]](_0x71ea[8]);_0xe2d8x9[_0x71ea[9]](_0x71ea[8]);_0xe2d8x9[_0x71ea[13]](_0x71ea[10],function(_0xe2d8xc){for(var _0xe2d8xd in _0xe2d8xc){_0xe2d8x8[_0xe2d8xd]= _0xe2d8xc[_0xe2d8xd]};_0xe2d8x8[_0x71ea[12]](_0x71ea[11])});_0xe2d8x9[_0x71ea[13]](_0x71ea[14],function(_0xe2d8xe){if(_0xe2d8xe[_0x71ea[15]]()== _0x71ea[16]){_0xe2d8x8[_0x71ea[12]](_0x71ea[16]);return};if(_0xe2d8xe[_0x71ea[17]](0,11)== _0x71ea[18]){_0xe2d8xa= true};if(_0xe2d8xa){_0xe2d8xb[_0x71ea[19]]+= _0xe2d8xe+ _0x71ea[20];if(_0xe2d8xe[_0x71ea[22]](_0x71ea[21])!=  -1){_0xe2d8xa= false}}else {_0xe2d8xb[_0x71ea[19]]= _0xe2d8xe};if(_0xe2d8xa){return};if( typeof _0xe2d8xb[_0x71ea[23]]== _0x71ea[24]){var _0xe2d8xf=_0xe2d8xb[_0x71ea[19]][_0x71ea[17]](0,3),_0xe2d8x10=null,_0xe2d8x11=null;_0xe2d8xf= parseInt(_0xe2d8xf);if(isNaN(_0xe2d8xf)){_0xe2d8xb[_0x71ea[23]](null,{code:500,result:-1,extra:_0x71ea[25]});return};if(_0xe2d8xf!= 200){_0xe2d8xb[_0x71ea[23]](null,{code:_0xe2d8xf,result:-1,extra:_0x71ea[26]});return};_0xe2d8x10= _0xe2d8xb[_0x71ea[19]][_0x71ea[17]](4)[_0x71ea[29]](_0x71ea[27],_0x71ea[28]);if(_0xe2d8x10[_0x71ea[31]](_0x71ea[30])!=  -1){_0xe2d8x10= _0xe2d8x10[_0x71ea[32]](0,_0xe2d8x10[_0x71ea[31]](_0x71ea[30]))};_0xe2d8x10= parseInt(_0xe2d8x10);_0xe2d8x11= _0xe2d8xb[_0x71ea[19]][_0x71ea[33]](_0x71ea[30]);if(_0xe2d8x11[_0x71ea[34]]== 3){_0xe2d8x11= _0xe2d8x11[2][_0x71ea[17]](1,_0xe2d8x11[2][_0x71ea[34]]- 1)}else {_0xe2d8x11= null};_0xe2d8xb[_0x71ea[23]](null,{code:_0xe2d8xf,result:_0xe2d8x10,extra:_0xe2d8x11})}});_0xe2d8x7[_0x71ea[13]](_0x71ea[35],function(_0xe2d8x12){_0xe2d8x8[_0x71ea[12]](_0x71ea[35], new AGIError(_0x71ea[36],_0xe2d8x12[_0x71ea[37]]))});_0xe2d8x7[_0x71ea[13]](_0x71ea[38],function(){_0xe2d8x8[_0x71ea[12]](_0x71ea[38], new AGIError(_0x71ea[39]))});_0xe2d8x7[_0x71ea[40]](_0xe2d8x9);this[_0x71ea[41]]= function(_0xe2d8x13,_0xe2d8x14){var _0xe2d8x13=_0xe2d8x13|| _0x71ea[28],_0xe2d8x14=( typeof _0xe2d8x14== _0x71ea[24])?_0xe2d8x14: new Function();_0xe2d8xb= {tx:_0xe2d8x13,rx:_0x71ea[28],cb:_0xe2d8x14};_0xe2d8x7[_0x71ea[42]](_0xe2d8x13+ _0x71ea[20])},this[_0x71ea[38]]= function(){_0xe2d8x7[_0x71ea[43]]()}}util[_0x71ea[44]](AGIChannel,EventEmitter);AGIChannel[_0x71ea[46]][_0x71ea[45]]= function(_0xe2d8x15){return this[_0x71ea[41]][_0x71ea[47]](this,_0xe2d8x15)};AGIChannel[_0x71ea[46]][_0x71ea[48]]= function(){return this[_0x71ea[45]](_0x71ea[49])};AGIChannel[_0x71ea[46]][_0x71ea[50]]= function(_0xe2d8x16,_0xe2d8x17,_0xe2d8x18){_0xe2d8x16= (_0xe2d8x16=== undefined)?_0x71ea[51]:_0xe2d8x16;_0xe2d8x17= (_0xe2d8x17=== undefined)?_0x71ea[52]:_0xe2d8x17;_0xe2d8x18= (_0xe2d8x18=== undefined)?_0x71ea[53]:_0xe2d8x18;return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[54],_0xe2d8x16,_0xe2d8x17* 1000,_0xe2d8x18))};AGIChannel[_0x71ea[46]][_0x71ea[56]]= function(_0xe2d8x19){_0xe2d8x19= _0xe2d8x19|| _0x71ea[57];return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[58],_0xe2d8x19))};AGIChannel[_0x71ea[46]][_0x71ea[59]]= function(_0xe2d8x1a,_0xe2d8x1b){if(_[_0x71ea[60]](_0xe2d8x1b)){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[61],_0xe2d8x1a,_0xe2d8x1b[_0x71ea[63]](_0x71ea[62])))};return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[61],_0xe2d8x1a,_0xe2d8x1b))};AGIChannel[_0x71ea[46]][_0x71ea[64]]= function(_0xe2d8x1c){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[65],_0xe2d8x1c))};AGIChannel[_0x71ea[46]][_0x71ea[66]]= function(_0xe2d8x1d){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[67],_0xe2d8x1d))};AGIChannel[_0x71ea[46]][_0x71ea[68]]= function(_0xe2d8x1e){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[69],_0xe2d8x1e))};AGIChannel[_0x71ea[46]][_0x71ea[16]]= function(){return this[_0x71ea[45]](_0x71ea[70])};AGIChannel[_0x71ea[46]][_0x71ea[71]]= function(_0xe2d8x1f,_0xe2d8x20){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[72],_0xe2d8x1f,_0xe2d8x20))};AGIChannel[_0x71ea[46]][_0x71ea[73]]= function(_0xe2d8x21,_0xe2d8x22){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[74],_0xe2d8x21,_0xe2d8x22))};AGIChannel[_0x71ea[46]][_0x71ea[75]]= function(_0xe2d8x23,_0xe2d8x22){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[76],_0xe2d8x23,_0xe2d8x22))};AGIChannel[_0x71ea[46]][_0x71ea[77]]= function(_0xe2d8x24,_0xe2d8x22){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[78],_0xe2d8x24,_0xe2d8x22))};AGIChannel[_0x71ea[46]][_0x71ea[79]]= function(_0xe2d8x1c,_0xe2d8x1d,_0xe2d8x1e){_0xe2d8x1d= _0xe2d8x1d|| this[_0x71ea[81]][_0x71ea[80]];_0xe2d8x1e= _0xe2d8x1e|| 1;this[_0x71ea[64]](_0xe2d8x1c);this[_0x71ea[66]](_0xe2d8x1d);this[_0x71ea[68]](_0xe2d8x1e);return this[_0x71ea[56]](util[_0x71ea[55]](_0x71ea[82],_0xe2d8x1c,_0xe2d8x1d,_0xe2d8x1e))};AGIChannel[_0x71ea[46]][_0x71ea[83]]= function(_0xe2d8x1f){return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[84],_0xe2d8x1f))};AGIChannel[_0x71ea[46]][_0x71ea[85]]= function(_0xe2d8x16,_0xe2d8x25,_0xe2d8x22,_0xe2d8x17,_0xe2d8x26,_0xe2d8x27){_0xe2d8x25= _0xe2d8x25|| _0x71ea[86];_0xe2d8x22= _0xe2d8x22|| _0x71ea[28];_0xe2d8x17= (_0xe2d8x17=== undefined)?-1:((_0xe2d8x17=== _0x71ea[87])?-1:_0xe2d8x17* 1000);_0xe2d8x26= (_0xe2d8x26=== undefined)?_0x71ea[28]:_0x71ea[88]+ _0xe2d8x26;_0xe2d8x27= (_0xe2d8x27)?_0x71ea[89]:_0x71ea[28];return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[90],_0xe2d8x16,_0xe2d8x25,_0xe2d8x22,_0xe2d8x17,_0xe2d8x27,_0xe2d8x26))};AGIChannel[_0x71ea[46]][_0x71ea[91]]= function(_0xe2d8x16,_0xe2d8x22){_0xe2d8x22= _0xe2d8x22|| _0x71ea[28];return this[_0x71ea[45]](util[_0x71ea[55]](_0x71ea[92],_0xe2d8x16,_0xe2d8x22))};AGIChannel[_0x71ea[46]][_0x71ea[93]]= function(_0xe2d8x1b){return this[_0x71ea[59]](_0x71ea[94],_0xe2d8x1b)};AGIChannel[_0x71ea[46]][_0x71ea[95]]= function(_0xe2d8x28){return this[_0x71ea[59]](_0x71ea[96],_0xe2d8x28)};AGIChannel[_0x71ea[46]][_0x71ea[35]]= function(_0xe2d8x29,_0xe2d8x2a){this[_0x71ea[56]](util[_0x71ea[55]](_0x71ea[97],_0xe2d8x29[_0x71ea[98]],_0xe2d8x29[_0x71ea[99]],_0xe2d8x2a));return {code:500,result:_0x71ea[87],extra:_0x71ea[28]}};module[_0x71ea[100]]= AGIChannel
\ No newline at end of file
index 1841ef8..4b626ef 100644 (file)
@@ -1 +1 @@
-var _0x3a2b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x55\x6E\x64\x65\x66\x69\x6E\x65\x64\x20\x65\x72\x72\x6F\x72\x2E","\x41\x72\x67\x75\x6D\x65\x6E\x74\x20\x27\x70\x6F\x72\x74\x27\x20\x6D\x69\x73\x73\x69\x6E\x67\x20\x69\x6E\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x63\x61\x6C\x6C\x2E","\x53\x65\x72\x76\x65\x72\x20\x65\x72\x72\x6F\x72\x2E\x20\x43\x6F\x64\x65\x3A\x20\x25\x73\x2E","\x53\x65\x72\x76\x65\x72\x20\x63\x6C\x6F\x73\x65\x64\x2E","\x53\x6F\x63\x6B\x65\x74\x20\x65\x72\x72\x6F\x72\x2E\x20\x43\x6F\x64\x65\x3A\x20\x25\x73\x2E","\x53\x6F\x63\x6B\x65\x74\x20\x63\x6C\x6F\x73\x65\x64\x2E","\x45\x6D\x70\x74\x79\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x2E","\x4D\x69\x73\x73\x69\x6E\x67\x20\x27\x69\x76\x72\x2E\x61\x67\x69\x5F\x6E\x65\x74\x77\x6F\x72\x6B\x5F\x73\x63\x72\x69\x70\x74\x27\x2E","\x4D\x69\x73\x73\x69\x6E\x67\x20\x27\x69\x76\x72\x2E\x65\x6E\x74\x72\x79\x27\x20\x6D\x65\x6E\x75\x2E","","\x45\x5F\x41\x47\x49\x5F\x55\x4E\x44\x45\x46\x49\x4E\x45\x44","\x70\x75\x73\x68","\x61\x70\x70\x6C\x79","\x66\x6F\x72\x6D\x61\x74","\x6D\x65\x73\x73\x61\x67\x65","\x6E\x61\x6D\x65","\x6C\x6F\x67","\x65\x78\x70\x6F\x72\x74\x73"];_0x3a2b[0];var util=require(_0x3a2b[1]);var error={E_AGI_UNDEFINED:_0x3a2b[2],E_AGI_ARGUMENT_PORT:_0x3a2b[3],E_AGI_SERVER_ERROR:_0x3a2b[4],E_AGI_SERVER_CLOSE:_0x3a2b[5],E_AGI_SOCKET_ERROR:_0x3a2b[6],E_AGI_SOCKET_CLOSE:_0x3a2b[7],E_AGI_COMMAND_EMPTY:_0x3a2b[8],E_AGI_IVR_AGI_NETWORK_SCRIPT:_0x3a2b[9],E_AGI_IVR_ENTRY:_0x3a2b[10]};function AGIError(_0x9ef0x4){var _0x9ef0x4=_0x9ef0x4|| null,_0x9ef0x5=_0x9ef0x5|| [],_0x9ef0x6=1,_0x9ef0x7=_0x3a2b[11];if(!error[_0x9ef0x4]){_0x9ef0x4= _0x3a2b[12]};_0x9ef0x5[_0x3a2b[13]](error[_0x9ef0x4]);while(arguments[_0x9ef0x6]){_0x9ef0x5[_0x3a2b[13]](arguments[_0x9ef0x6]);_0x9ef0x6++};_0x9ef0x7= util[_0x3a2b[15]][_0x3a2b[14]](util,_0x9ef0x5);this[_0x3a2b[16]]= _0x9ef0x7;this[_0x3a2b[17]]= _0x9ef0x4;console[_0x3a2b[18]](_0x9ef0x4,_0x9ef0x7)}module[_0x3a2b[19]]= AGIError
\ No newline at end of file
+var _0xbc6c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x55\x6E\x64\x65\x66\x69\x6E\x65\x64\x20\x65\x72\x72\x6F\x72\x2E","\x41\x72\x67\x75\x6D\x65\x6E\x74\x20\x27\x70\x6F\x72\x74\x27\x20\x6D\x69\x73\x73\x69\x6E\x67\x20\x69\x6E\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x63\x61\x6C\x6C\x2E","\x53\x65\x72\x76\x65\x72\x20\x65\x72\x72\x6F\x72\x2E\x20\x43\x6F\x64\x65\x3A\x20\x25\x73\x2E","\x53\x65\x72\x76\x65\x72\x20\x63\x6C\x6F\x73\x65\x64\x2E","\x53\x6F\x63\x6B\x65\x74\x20\x65\x72\x72\x6F\x72\x2E\x20\x43\x6F\x64\x65\x3A\x20\x25\x73\x2E","\x53\x6F\x63\x6B\x65\x74\x20\x63\x6C\x6F\x73\x65\x64\x2E","\x45\x6D\x70\x74\x79\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x2E","\x4D\x69\x73\x73\x69\x6E\x67\x20\x27\x69\x76\x72\x2E\x61\x67\x69\x5F\x6E\x65\x74\x77\x6F\x72\x6B\x5F\x73\x63\x72\x69\x70\x74\x27\x2E","\x4D\x69\x73\x73\x69\x6E\x67\x20\x27\x69\x76\x72\x2E\x65\x6E\x74\x72\x79\x27\x20\x6D\x65\x6E\x75\x2E","","\x45\x5F\x41\x47\x49\x5F\x55\x4E\x44\x45\x46\x49\x4E\x45\x44","\x70\x75\x73\x68","\x61\x70\x70\x6C\x79","\x66\x6F\x72\x6D\x61\x74","\x6D\x65\x73\x73\x61\x67\x65","\x6E\x61\x6D\x65","\x6C\x6F\x67","\x65\x78\x70\x6F\x72\x74\x73"];_0xbc6c[0];var util=require(_0xbc6c[1]);var error={E_AGI_UNDEFINED:_0xbc6c[2],E_AGI_ARGUMENT_PORT:_0xbc6c[3],E_AGI_SERVER_ERROR:_0xbc6c[4],E_AGI_SERVER_CLOSE:_0xbc6c[5],E_AGI_SOCKET_ERROR:_0xbc6c[6],E_AGI_SOCKET_CLOSE:_0xbc6c[7],E_AGI_COMMAND_EMPTY:_0xbc6c[8],E_AGI_IVR_AGI_NETWORK_SCRIPT:_0xbc6c[9],E_AGI_IVR_ENTRY:_0xbc6c[10]};function AGIError(_0x9a09x4){var _0x9a09x4=_0x9a09x4|| null,_0x9a09x5=_0x9a09x5|| [],_0x9a09x6=1,_0x9a09x7=_0xbc6c[11];if(!error[_0x9a09x4]){_0x9a09x4= _0xbc6c[12]};_0x9a09x5[_0xbc6c[13]](error[_0x9a09x4]);while(arguments[_0x9a09x6]){_0x9a09x5[_0xbc6c[13]](arguments[_0x9a09x6]);_0x9a09x6++};_0x9a09x7= util[_0xbc6c[15]][_0xbc6c[14]](util,_0x9a09x5);this[_0xbc6c[16]]= _0x9a09x7;this[_0xbc6c[17]]= _0x9a09x4;console[_0xbc6c[18]](_0x9a09x4,_0x9a09x7)}module[_0xbc6c[19]]= AGIError
\ No newline at end of file
index 752abde..1a1cad4 100644 (file)
@@ -1 +1 @@
-var _0x2dc4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x61\x67\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x76\x65\x72\x74\x69\x63\x65\x73","\x65\x64\x67\x65\x73","\x6E\x75\x6D\x62\x65\x72\x4F\x66\x45\x64\x67\x65\x73","\x61\x64\x64\x56\x65\x72\x74\x65\x78","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x64","\x61\x64\x64\x45\x64\x67\x65","\x70\x75\x73\x68","\x73\x69\x7A\x65","\x72\x65\x6C\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x56\x65\x72\x74\x65\x78","\x74\x72\x61\x76\x65\x72\x73\x65\x42\x46\x53","\x6E\x6F\x20\x76\x65\x72\x74\x65\x78\x20\x66\x6F\x75\x6E\x64","\x69\x6E\x66\x6F","\x73\x74\x6F\x70\x20\x74\x72\x61\x76\x65\x72\x73\x65","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x20\x65\x64\x67\x65\x2F\x73\x20\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x74\x61\x72\x67\x65\x74","\x72\x65\x74\x72\x79","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x2D","\x6D\x61\x78\x20\x72\x65\x74\x72\x79\x20\x72\x65\x61\x63\x68","\x65\x78\x70\x6F\x72\x74\x73"];_0x2dc4[0];var _=require(_0x2dc4[1]);var logger=require(_0x2dc4[3])(_0x2dc4[2]);var Graph=function(){this[_0x2dc4[4]]= {};this[_0x2dc4[5]]= {};this[_0x2dc4[6]]= 0};Graph[_0x2dc4[8]][_0x2dc4[7]]= function(_0x71a2x4){this[_0x2dc4[4]][_0x71a2x4[_0x2dc4[9]]]= _0x71a2x4;this[_0x2dc4[5]][_0x71a2x4[_0x2dc4[9]]]= []};Graph[_0x2dc4[8]][_0x2dc4[10]]= function(_0x71a2x5,_0x71a2x6,_0x71a2x7){this[_0x2dc4[5]][_0x71a2x5][_0x2dc4[11]]({target:_0x71a2x6,condition:_0x71a2x7});this[_0x2dc4[6]]+= 1};Graph[_0x2dc4[8]][_0x2dc4[12]]= function(){return _[_0x2dc4[12]](this[_0x2dc4[4]])};Graph[_0x2dc4[8]][_0x2dc4[13]]= function(){return this[_0x2dc4[6]]};Graph[_0x2dc4[8]][_0x2dc4[14]]= function(_0x71a2x4){return this[_0x2dc4[4]][_0x71a2x4]};Graph[_0x2dc4[8]][_0x2dc4[15]]= function(_0x71a2x4,_0x71a2x8){if(!this[_0x2dc4[4]][_0x71a2x4]){return logger[_0x2dc4[17]](_0x2dc4[16])};var _0x71a2x9=_0x71a2x8(this[_0x2dc4[4]][_0x71a2x4]);if(!_0x71a2x9){return logger[_0x2dc4[17]](_0x2dc4[18])};if(this[_0x2dc4[5]][_0x71a2x4][_0x2dc4[19]]=== 0){return logger[_0x2dc4[17]](_0x2dc4[20])};for(var _0x71a2xa=0,_0x71a2xb=false;_0x71a2xa< this[_0x2dc4[5]][_0x71a2x4][_0x2dc4[19]];_0x71a2xa+= 1){if(this[_0x2dc4[5]][_0x71a2x4][_0x71a2xa][_0x2dc4[21]]&& this[_0x2dc4[5]][_0x71a2x4][_0x71a2xa][_0x2dc4[21]]!== _0x71a2x9){continue};_0x71a2xb= true;this[_0x2dc4[15]](this[_0x2dc4[5]][_0x71a2x4][_0x71a2xa][_0x2dc4[22]],_0x71a2x8)};if(!_0x71a2xb&&  !_[_0x2dc4[24]](this[_0x2dc4[4]][_0x71a2x4][_0x2dc4[23]])){if(_0x71a2x9!== _0x2dc4[25]){this[_0x2dc4[15]](_0x71a2x4,_0x71a2x8)}else {return logger[_0x2dc4[17]](_0x2dc4[26])}}};module[_0x2dc4[27]]= Graph
\ No newline at end of file
+var _0x6800=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x61\x67\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x76\x65\x72\x74\x69\x63\x65\x73","\x65\x64\x67\x65\x73","\x6E\x75\x6D\x62\x65\x72\x4F\x66\x45\x64\x67\x65\x73","\x61\x64\x64\x56\x65\x72\x74\x65\x78","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x64","\x61\x64\x64\x45\x64\x67\x65","\x70\x75\x73\x68","\x73\x69\x7A\x65","\x72\x65\x6C\x61\x74\x69\x6F\x6E\x73","\x67\x65\x74\x56\x65\x72\x74\x65\x78","\x74\x72\x61\x76\x65\x72\x73\x65\x42\x46\x53","\x6E\x6F\x20\x76\x65\x72\x74\x65\x78\x20\x66\x6F\x75\x6E\x64","\x69\x6E\x66\x6F","\x73\x74\x6F\x70\x20\x74\x72\x61\x76\x65\x72\x73\x65","\x6C\x65\x6E\x67\x74\x68","\x6E\x6F\x20\x65\x64\x67\x65\x2F\x73\x20\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x74\x61\x72\x67\x65\x74","\x72\x65\x74\x72\x79","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x2D","\x6D\x61\x78\x20\x72\x65\x74\x72\x79\x20\x72\x65\x61\x63\x68","\x65\x78\x70\x6F\x72\x74\x73"];_0x6800[0];var _=require(_0x6800[1]);var logger=require(_0x6800[3])(_0x6800[2]);var Graph=function(){this[_0x6800[4]]= {};this[_0x6800[5]]= {};this[_0x6800[6]]= 0};Graph[_0x6800[8]][_0x6800[7]]= function(_0xb11bx4){this[_0x6800[4]][_0xb11bx4[_0x6800[9]]]= _0xb11bx4;this[_0x6800[5]][_0xb11bx4[_0x6800[9]]]= []};Graph[_0x6800[8]][_0x6800[10]]= function(_0xb11bx5,_0xb11bx6,_0xb11bx7){this[_0x6800[5]][_0xb11bx5][_0x6800[11]]({target:_0xb11bx6,condition:_0xb11bx7});this[_0x6800[6]]+= 1};Graph[_0x6800[8]][_0x6800[12]]= function(){return _[_0x6800[12]](this[_0x6800[4]])};Graph[_0x6800[8]][_0x6800[13]]= function(){return this[_0x6800[6]]};Graph[_0x6800[8]][_0x6800[14]]= function(_0xb11bx4){return this[_0x6800[4]][_0xb11bx4]};Graph[_0x6800[8]][_0x6800[15]]= function(_0xb11bx4,_0xb11bx8){if(!this[_0x6800[4]][_0xb11bx4]){return logger[_0x6800[17]](_0x6800[16])};var _0xb11bx9=_0xb11bx8(this[_0x6800[4]][_0xb11bx4]);if(!_0xb11bx9){return logger[_0x6800[17]](_0x6800[18])};if(this[_0x6800[5]][_0xb11bx4][_0x6800[19]]=== 0){return logger[_0x6800[17]](_0x6800[20])};for(var _0xb11bxa=0,_0xb11bxb=false;_0xb11bxa< this[_0x6800[5]][_0xb11bx4][_0x6800[19]];_0xb11bxa+= 1){if(this[_0x6800[5]][_0xb11bx4][_0xb11bxa][_0x6800[21]]&& this[_0x6800[5]][_0xb11bx4][_0xb11bxa][_0x6800[21]]!== _0xb11bx9){continue};_0xb11bxb= true;this[_0x6800[15]](this[_0x6800[5]][_0xb11bx4][_0xb11bxa][_0x6800[22]],_0xb11bx8)};if(!_0xb11bxb&&  !_[_0x6800[24]](this[_0x6800[4]][_0xb11bx4][_0x6800[23]])){if(_0xb11bx9!== _0x6800[25]){this[_0x6800[15]](_0xb11bx4,_0xb11bx8)}else {return logger[_0x6800[17]](_0x6800[26])}}};module[_0x6800[27]]= Graph
\ No newline at end of file
index 63ed4f1..1595e2e 100644 (file)
@@ -1 +1 @@
-var _0x1955=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x78\x6D\x6C\x32\x6A\x73\x6F\x6E","\x6C\x6F\x64\x61\x73\x68","\x73\x79\x6E\x63\x68\x6F","\x75\x74\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x61\x67\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x65\x72\x76\x65\x72","\x2E\x2F\x72\x70\x63","\x2E\x2F\x67\x72\x61\x70\x68","\x2E\x2F\x76\x65\x72\x74\x69\x63\x65\x73","\x73\x79\x6E\x63\x68\x6F\x20\x65\x72\x72\x6F\x72","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x6E\x65\x78\x74\x54\x69\x63\x6B","\x5B\x4C\x49\x53\x54\x45\x4E\x49\x4E\x47\x5D\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65\x20\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67\x20\x30\x2E\x30\x2E\x30\x2E\x30\x3A\x34\x35\x37\x33","\x69\x6E\x66\x6F","\x5B\x43\x4C\x4F\x53\x45\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x61\x72\x67\x5F\x31","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x64\x6E\x69\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","\x66\x6F\x72\x6D\x61\x74","\x5B\x48\x41\x4E\x47\x55\x50\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x72\x6F\x6F\x74","\x6D\x78\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x74\x6F\x4A\x73\x6F\x6E","\x61\x67\x69\x63\x6F\x6D\x6D\x61\x6E\x64","\x72\x65\x74\x72\x79","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6D\x61\x78\x52\x65\x74\x72\x79","\x6D\x78\x43\x65\x6C\x6C","\x6F\x6D\x69\x74","\x61\x64\x64\x56\x65\x72\x74\x65\x78","\x69\x73\x41\x72\x72\x61\x79","\x6C\x65\x6E\x67\x74\x68","\x73\x6F\x75\x72\x63\x65","\x74\x61\x72\x67\x65\x74","\x76\x61\x6C\x75\x65","\x61\x64\x64\x45\x64\x67\x65","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x61\x67\x69\x5F","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x64\x65\x62\x75\x67","\x5B\x53\x54\x41\x52\x54\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x6F\x6E","\x63\x6C\x6F\x73\x65","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63","\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x73\x74\x61\x72\x74","\x5B\x53\x54\x41\x52\x54\x20\x54\x52\x41\x56\x45\x52\x53\x45\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x69\x64","\x63\x6C\x65\x61\x72","\x76\x65\x72\x74\x65\x78","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x63\x6F\x64\x65","\x72\x65\x73\x75\x6C\x74","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x61\x67\x69\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6C\x6F\x67","\x65\x78\x63\x65\x70\x74\x69\x6F\x6E","\x69\x73\x4F\x62\x6A\x65\x63\x74","\x74\x72\x61\x76\x65\x72\x73\x65\x42\x46\x53","\x66\x69\x6E\x61\x6C\x6C\x79","\x5B\x46\x49\x4E\x41\x4C\x4C\x59\x20\x54\x52\x41\x56\x45\x52\x53\x45\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x5B\x45\x4E\x44\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x63\x6F\x6E\x74\x69\x6E\x75\x65\x41\x74","\x50\x72\x6F\x6A\x65\x63\x74\x20\x25\x73\x20\x6E\x6F\x74\x20\x70\x75\x62\x6C\x69\x73\x68\x65\x64","\x50\x72\x6F\x6A\x65\x63\x74\x20\x25\x73\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E"];_0x1955[0];var parser=require(_0x1955[1]);var _=require(_0x1955[2]);var syncho=require(_0x1955[3]);var util=require(_0x1955[4]);var config=require(_0x1955[5]);var logger=require(_0x1955[7])(_0x1955[6]);var aio=require(_0x1955[8]);var rpc=require(_0x1955[9]);var Graph=require(_0x1955[10]);var Vertices=require(_0x1955[11]);var agi=aio(4573);var AGI_CODE_SUCCESS=200;var AGI_RESULT_ERROR=-1;function connectionHandler(_0xa2edxf){process[_0x1955[15]](function(){syncho(function(){try{setChannelVariables(_0xa2edxf);agiHandler(_0xa2edxf)}catch(ex){logger[_0x1955[14]](_0x1955[12],JSON[_0x1955[13]](ex,null,2))}})})}function listeningHandler(_0xa2edx11){logger[_0x1955[17]](_0x1955[16])}function errorHandler(_0xa2edx11){logger[_0x1955[14]](_0xa2edx11)}function closeHandler(){logger[_0x1955[17]](util[_0x1955[24]](_0x1955[18],this[_0x1955[19]],this[_0x1955[20]],this[_0x1955[21]],this[_0x1955[22]],this[_0x1955[23]]))}function hangupHandler(){logger[_0x1955[17]](util[_0x1955[24]](_0x1955[25],this[_0x1955[19]],this[_0x1955[20]],this[_0x1955[21]],this[_0x1955[22]],this[_0x1955[23]]))}function getRoot(_0xa2edx16){return parser[_0x1955[28]](_0xa2edx16,{object:true})[_0x1955[27]][_0x1955[26]]}function addVertex(_0xa2edx18,_0xa2edx19,_0xa2edx1a){_0xa2edx19[_0x1955[29]]= _0xa2edx1a;if(_0xa2edx19[_0x1955[31]](_0x1955[30])){_0xa2edx19[_0x1955[32]]= parseInt(_0xa2edx19[_0x1955[30]],10)};_0xa2edx18[_0x1955[35]](_[_0x1955[34]](_0xa2edx19,_0x1955[33]))}function initGraph(_0xa2edx1c,_0xa2edx1d){var _0xa2edx18= new Graph();for(var _0xa2edx1a in _0xa2edx1c){if(_0xa2edx1c[_0x1955[31]](_0xa2edx1a)){if(_[_0x1955[36]](_0xa2edx1c[_0xa2edx1a])){for(var _0xa2edx1e=0;_0xa2edx1e< _0xa2edx1c[_0xa2edx1a][_0x1955[37]];_0xa2edx1e+= 1){addVertex(_0xa2edx18,_0xa2edx1c[_0xa2edx1a][_0xa2edx1e],_0xa2edx1a)}}else {addVertex(_0xa2edx18,_0xa2edx1c[_0xa2edx1a],_0xa2edx1a)}}};for(var _0xa2edx1f=0;_0xa2edx1f< _0xa2edx1d[_0x1955[37]];_0xa2edx1f+= 1){if(_0xa2edx1d[_0xa2edx1f][_0x1955[38]]&& _0xa2edx1d[_0xa2edx1f][_0x1955[39]]){_0xa2edx18[_0x1955[41]](_0xa2edx1d[_0xa2edx1f][_0x1955[38]],_0xa2edx1d[_0xa2edx1f][_0x1955[39]],_0xa2edx1d[_0xa2edx1f][_0x1955[40]])}};return _0xa2edx18}function getSquareProject(_0xa2edx21,_0xa2edx22){rpc[_0x1955[44]](_0xa2edx21)[_0x1955[43]](function(_0xa2edx23){_0xa2edx22(null,_0xa2edx23)})[_0x1955[42]](function(_0xa2edx11){_0xa2edx22(null,_0xa2edx11)})}function createSquareReport(_0xa2edx25,_0xa2edx22){rpc[_0x1955[45]](_0xa2edx25)[_0x1955[43]](function(_0xa2edx23){_0xa2edx22(null,_0xa2edx23)})[_0x1955[42]](function(_0xa2edx11){_0xa2edx22(null,_0xa2edx11)})}function updateSquareReport(_0xa2edx25,_0xa2edx22){rpc[_0x1955[46]](_0xa2edx25[_0x1955[23]],_0xa2edx25[_0x1955[19]])[_0x1955[43]](function(_0xa2edx23){_0xa2edx22(null,_0xa2edx23)})[_0x1955[42]](function(_0xa2edx11){_0xa2edx22(null,_0xa2edx11)})}function setChannelVariables(_0xa2edxf){for(var _0xa2edx1a in _0xa2edxf){if(_0xa2edxf[_0x1955[31]](_0xa2edx1a)){if(_0xa2edx1a[_0x1955[48]](_0x1955[47])=== 0){_0xa2edxf[_0xa2edx1a[_0x1955[49]](4)]= _0xa2edxf[_0xa2edx1a];delete _0xa2edxf[_0xa2edx1a]}}}}function agiHandler(_0xa2edxf){var _0xa2edx29,_0xa2edx18,_0xa2edx1c,_0xa2edx2a,_0xa2edx2b;logger[_0x1955[51]](_0x1955[50],JSON[_0x1955[13]](_0xa2edxf,null,2));logger[_0x1955[17]](util[_0x1955[24]](_0x1955[52],_0xa2edxf[_0x1955[19]],_0xa2edxf[_0x1955[20]],_0xa2edxf[_0x1955[21]],_0xa2edxf[_0x1955[22]],_0xa2edxf[_0x1955[23]]));_0xa2edxf[_0x1955[53]](_0x1955[14],errorHandler);_0xa2edxf[_0x1955[53]](_0x1955[54],closeHandler);_0xa2edxf[_0x1955[53]](_0x1955[55],hangupHandler);var _0xa2edx2c=getSquareProject[_0x1955[56]](null,_0xa2edxf[_0x1955[19]]);if(_0xa2edx2c){if(_0xa2edx2c[_0x1955[57]]){_0xa2edx29= getRoot(_0xa2edx2c[_0x1955[57]]);if(_0xa2edx29&& _0xa2edx29[_0x1955[58]]){logger[_0x1955[51]](_0x1955[26],JSON[_0x1955[13]](_0xa2edx29,null,2));createSquareReport[_0x1955[56]](null,_0xa2edxf);_0xa2edx18= initGraph(_[_0x1955[34]](_0xa2edx29,_0x1955[33]),_0xa2edx29[_0x1955[33]]);_0xa2edx1c=  new Vertices(_0xa2edxf,rpc);logger[_0x1955[17]](util[_0x1955[24]](_0x1955[59],_0xa2edxf[_0x1955[19]],_0xa2edxf[_0x1955[20]],_0xa2edxf[_0x1955[21]],_0xa2edxf[_0x1955[22]],_0xa2edxf[_0x1955[23]]));_0xa2edx18[_0x1955[71]](_0xa2edx29[_0x1955[58]][_0x1955[60]],function(_0xa2edx19){try{_0xa2edx19= _0xa2edx1c[_0x1955[61]](_0xa2edx19);logger[_0x1955[51]](_0x1955[62],JSON[_0x1955[13]](_0xa2edx19,null,2));if(_0xa2edx19&& _0xa2edx1c[_0xa2edx19[_0x1955[29]]]){_0xa2edx2b= _0xa2edx1c[_0xa2edx19[_0x1955[29]]](_0xa2edx19);logger[_0x1955[17]](_0x1955[63],JSON[_0x1955[13]](_0xa2edx2b,null,2));if(_0xa2edx2b&& _0xa2edx2b[_0x1955[64]]=== AGI_CODE_SUCCESS&& _0xa2edx2b[_0x1955[65]]!== AGI_RESULT_ERROR){logger[_0x1955[51]](_0x1955[63],JSON[_0x1955[13]](_0xa2edx2b,null,2));return _[_0x1955[66]](_0xa2edx2b[_0x1955[65]])?null:_0xa2edx2b[_0x1955[65]].toString()}else {logger[_0x1955[14]](_0x1955[63],JSON[_0x1955[13]](_0xa2edx2b,null,2));return null}}else {logger[_0x1955[14]](_0x1955[67]);return null}}catch(ex){console[_0x1955[68]](ex);logger[_0x1955[14]](_0x1955[69],_[_0x1955[70]](ex)?JSON[_0x1955[13]](ex,null,2):ex);return null}});if(_0xa2edx29[_0x1955[72]]){logger[_0x1955[17]](util[_0x1955[24]](_0x1955[73],_0xa2edxf[_0x1955[19]],_0xa2edxf[_0x1955[20]],_0xa2edxf[_0x1955[21]],_0xa2edxf[_0x1955[22]],_0xa2edxf[_0x1955[23]]));_0xa2edx18[_0x1955[71]](_0xa2edx29[_0x1955[72]][_0x1955[60]],function(_0xa2edx19){try{_0xa2edx19= _0xa2edx1c[_0x1955[61]](_0xa2edx19);logger[_0x1955[51]](_0x1955[62],JSON[_0x1955[13]](_0xa2edx19,null,2));if(_0xa2edx19&& _0xa2edx1c[_0xa2edx19[_0x1955[29]]]){_0xa2edx2b= _0xa2edx1c[_0xa2edx19[_0x1955[29]]](_0xa2edx19);if(_0xa2edx2b){logger[_0x1955[51]](_0x1955[63],JSON[_0x1955[13]](_0xa2edx2b,null,2));return _[_0x1955[66]](_0xa2edx2b[_0x1955[65]])?null:_0xa2edx2b[_0x1955[65]].toString()}else {logger[_0x1955[14]](_0x1955[63],JSON[_0x1955[13]](_0xa2edx2b,null,2));return null}}else {logger[_0x1955[14]](_0x1955[67]);return null}}catch(ex){logger[_0x1955[14]](_0x1955[69],JSON[_0x1955[13]](ex,null,2));return null}})};logger[_0x1955[17]](util[_0x1955[24]](_0x1955[74],_0xa2edxf[_0x1955[19]],_0xa2edxf[_0x1955[20]],_0xa2edxf[_0x1955[21]],_0xa2edxf[_0x1955[22]],_0xa2edxf[_0x1955[23]]));_0xa2edxf[_0x1955[78]](_0xa2edxf[_0x1955[75]],_0xa2edxf[_0x1955[76]],parseInt(_0xa2edxf[_0x1955[77]],10)+ 1);_0xa2edxf[_0x1955[54]]()}}else {logger[_0x1955[14]](util[_0x1955[24]](_0x1955[79],_0xa2edxf[_0x1955[19]]));_0xa2edxf[_0x1955[78]](_0xa2edxf[_0x1955[75]],_0xa2edxf[_0x1955[76]],parseInt(_0xa2edxf[_0x1955[77]],10)+ 1);_0xa2edxf[_0x1955[54]]()}}else {logger[_0x1955[14]](util[_0x1955[24]](_0x1955[80],_0xa2edxf[_0x1955[19]]));_0xa2edxf[_0x1955[78]](_0xa2edxf[_0x1955[75]],_0xa2edxf[_0x1955[76]],parseInt(_0xa2edxf[_0x1955[77]],10)+ 1);_0xa2edxf[_0x1955[54]]()}}agi[_0x1955[53]](_0x1955[14],errorHandler);agi[_0x1955[53]](_0x1955[81],listeningHandler);agi[_0x1955[53]](_0x1955[82],connectionHandler)
\ No newline at end of file
+var _0x8e8d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x78\x6D\x6C\x32\x6A\x73\x6F\x6E","\x6C\x6F\x64\x61\x73\x68","\x73\x79\x6E\x63\x68\x6F","\x75\x74\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x61\x67\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2F\x73\x65\x72\x76\x65\x72","\x2E\x2F\x72\x70\x63","\x2E\x2F\x67\x72\x61\x70\x68","\x2E\x2F\x76\x65\x72\x74\x69\x63\x65\x73","\x73\x79\x6E\x63\x68\x6F\x20\x65\x72\x72\x6F\x72","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x6E\x65\x78\x74\x54\x69\x63\x6B","\x5B\x4C\x49\x53\x54\x45\x4E\x49\x4E\x47\x5D\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65\x20\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67\x20\x30\x2E\x30\x2E\x30\x2E\x30\x3A\x34\x35\x37\x33","\x69\x6E\x66\x6F","\x5B\x43\x4C\x4F\x53\x45\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x61\x72\x67\x5F\x31","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x64\x6E\x69\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","\x66\x6F\x72\x6D\x61\x74","\x5B\x48\x41\x4E\x47\x55\x50\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x72\x6F\x6F\x74","\x6D\x78\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x74\x6F\x4A\x73\x6F\x6E","\x61\x67\x69\x63\x6F\x6D\x6D\x61\x6E\x64","\x72\x65\x74\x72\x79","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6D\x61\x78\x52\x65\x74\x72\x79","\x6D\x78\x43\x65\x6C\x6C","\x6F\x6D\x69\x74","\x61\x64\x64\x56\x65\x72\x74\x65\x78","\x69\x73\x41\x72\x72\x61\x79","\x6C\x65\x6E\x67\x74\x68","\x73\x6F\x75\x72\x63\x65","\x74\x61\x72\x67\x65\x74","\x76\x61\x6C\x75\x65","\x61\x64\x64\x45\x64\x67\x65","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x75\x70\x64\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x61\x67\x69\x5F","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x64\x65\x62\x75\x67","\x5B\x53\x54\x41\x52\x54\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x6F\x6E","\x63\x6C\x6F\x73\x65","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63","\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x73\x74\x61\x72\x74","\x5B\x53\x54\x41\x52\x54\x20\x54\x52\x41\x56\x45\x52\x53\x45\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x69\x64","\x63\x6C\x65\x61\x72","\x76\x65\x72\x74\x65\x78","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x63\x6F\x64\x65","\x72\x65\x73\x75\x6C\x74","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x61\x67\x69\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6C\x6F\x67","\x65\x78\x63\x65\x70\x74\x69\x6F\x6E","\x69\x73\x4F\x62\x6A\x65\x63\x74","\x74\x72\x61\x76\x65\x72\x73\x65\x42\x46\x53","\x66\x69\x6E\x61\x6C\x6C\x79","\x5B\x46\x49\x4E\x41\x4C\x4C\x59\x20\x54\x52\x41\x56\x45\x52\x53\x45\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x5B\x45\x4E\x44\x5D\x20\x25\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20\x66\x72\x6F\x6D\x20\x22\x25\x73\x22\x20\x3C\x25\x73\x3E\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x25\x73\x20\x77\x69\x74\x68\x20\x75\x6E\x69\x71\x75\x65\x69\x64\x20\x25\x73","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x63\x6F\x6E\x74\x69\x6E\x75\x65\x41\x74","\x50\x72\x6F\x6A\x65\x63\x74\x20\x25\x73\x20\x6E\x6F\x74\x20\x70\x75\x62\x6C\x69\x73\x68\x65\x64","\x50\x72\x6F\x6A\x65\x63\x74\x20\x25\x73\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E"];_0x8e8d[0];var parser=require(_0x8e8d[1]);var _=require(_0x8e8d[2]);var syncho=require(_0x8e8d[3]);var util=require(_0x8e8d[4]);var config=require(_0x8e8d[5]);var logger=require(_0x8e8d[7])(_0x8e8d[6]);var aio=require(_0x8e8d[8]);var rpc=require(_0x8e8d[9]);var Graph=require(_0x8e8d[10]);var Vertices=require(_0x8e8d[11]);var agi=aio(4573);var AGI_CODE_SUCCESS=200;var AGI_RESULT_ERROR=-1;function connectionHandler(_0x8aabxf){process[_0x8e8d[15]](function(){syncho(function(){try{setChannelVariables(_0x8aabxf);agiHandler(_0x8aabxf)}catch(ex){logger[_0x8e8d[14]](_0x8e8d[12],JSON[_0x8e8d[13]](ex,null,2))}})})}function listeningHandler(_0x8aabx11){logger[_0x8e8d[17]](_0x8e8d[16])}function errorHandler(_0x8aabx11){logger[_0x8e8d[14]](_0x8aabx11)}function closeHandler(){logger[_0x8e8d[17]](util[_0x8e8d[24]](_0x8e8d[18],this[_0x8e8d[19]],this[_0x8e8d[20]],this[_0x8e8d[21]],this[_0x8e8d[22]],this[_0x8e8d[23]]))}function hangupHandler(){logger[_0x8e8d[17]](util[_0x8e8d[24]](_0x8e8d[25],this[_0x8e8d[19]],this[_0x8e8d[20]],this[_0x8e8d[21]],this[_0x8e8d[22]],this[_0x8e8d[23]]))}function getRoot(_0x8aabx16){return parser[_0x8e8d[28]](_0x8aabx16,{object:true})[_0x8e8d[27]][_0x8e8d[26]]}function addVertex(_0x8aabx18,_0x8aabx19,_0x8aabx1a){_0x8aabx19[_0x8e8d[29]]= _0x8aabx1a;if(_0x8aabx19[_0x8e8d[31]](_0x8e8d[30])){_0x8aabx19[_0x8e8d[32]]= parseInt(_0x8aabx19[_0x8e8d[30]],10)};_0x8aabx18[_0x8e8d[35]](_[_0x8e8d[34]](_0x8aabx19,_0x8e8d[33]))}function initGraph(_0x8aabx1c,_0x8aabx1d){var _0x8aabx18= new Graph();for(var _0x8aabx1a in _0x8aabx1c){if(_0x8aabx1c[_0x8e8d[31]](_0x8aabx1a)){if(_[_0x8e8d[36]](_0x8aabx1c[_0x8aabx1a])){for(var _0x8aabx1e=0;_0x8aabx1e< _0x8aabx1c[_0x8aabx1a][_0x8e8d[37]];_0x8aabx1e+= 1){addVertex(_0x8aabx18,_0x8aabx1c[_0x8aabx1a][_0x8aabx1e],_0x8aabx1a)}}else {addVertex(_0x8aabx18,_0x8aabx1c[_0x8aabx1a],_0x8aabx1a)}}};for(var _0x8aabx1f=0;_0x8aabx1f< _0x8aabx1d[_0x8e8d[37]];_0x8aabx1f+= 1){if(_0x8aabx1d[_0x8aabx1f][_0x8e8d[38]]&& _0x8aabx1d[_0x8aabx1f][_0x8e8d[39]]){_0x8aabx18[_0x8e8d[41]](_0x8aabx1d[_0x8aabx1f][_0x8e8d[38]],_0x8aabx1d[_0x8aabx1f][_0x8e8d[39]],_0x8aabx1d[_0x8aabx1f][_0x8e8d[40]])}};return _0x8aabx18}function getSquareProject(_0x8aabx21,_0x8aabx22){rpc[_0x8e8d[44]](_0x8aabx21)[_0x8e8d[43]](function(_0x8aabx23){_0x8aabx22(null,_0x8aabx23)})[_0x8e8d[42]](function(_0x8aabx11){_0x8aabx22(null,_0x8aabx11)})}function createSquareReport(_0x8aabx25,_0x8aabx22){rpc[_0x8e8d[45]](_0x8aabx25)[_0x8e8d[43]](function(_0x8aabx23){_0x8aabx22(null,_0x8aabx23)})[_0x8e8d[42]](function(_0x8aabx11){_0x8aabx22(null,_0x8aabx11)})}function updateSquareReport(_0x8aabx25,_0x8aabx22){rpc[_0x8e8d[46]](_0x8aabx25[_0x8e8d[23]],_0x8aabx25[_0x8e8d[19]])[_0x8e8d[43]](function(_0x8aabx23){_0x8aabx22(null,_0x8aabx23)})[_0x8e8d[42]](function(_0x8aabx11){_0x8aabx22(null,_0x8aabx11)})}function setChannelVariables(_0x8aabxf){for(var _0x8aabx1a in _0x8aabxf){if(_0x8aabxf[_0x8e8d[31]](_0x8aabx1a)){if(_0x8aabx1a[_0x8e8d[48]](_0x8e8d[47])=== 0){_0x8aabxf[_0x8aabx1a[_0x8e8d[49]](4)]= _0x8aabxf[_0x8aabx1a];delete _0x8aabxf[_0x8aabx1a]}}}}function agiHandler(_0x8aabxf){var _0x8aabx29,_0x8aabx18,_0x8aabx1c,_0x8aabx2a,_0x8aabx2b;logger[_0x8e8d[51]](_0x8e8d[50],JSON[_0x8e8d[13]](_0x8aabxf,null,2));logger[_0x8e8d[17]](util[_0x8e8d[24]](_0x8e8d[52],_0x8aabxf[_0x8e8d[19]],_0x8aabxf[_0x8e8d[20]],_0x8aabxf[_0x8e8d[21]],_0x8aabxf[_0x8e8d[22]],_0x8aabxf[_0x8e8d[23]]));_0x8aabxf[_0x8e8d[53]](_0x8e8d[14],errorHandler);_0x8aabxf[_0x8e8d[53]](_0x8e8d[54],closeHandler);_0x8aabxf[_0x8e8d[53]](_0x8e8d[55],hangupHandler);var _0x8aabx2c=getSquareProject[_0x8e8d[56]](null,_0x8aabxf[_0x8e8d[19]]);if(_0x8aabx2c){if(_0x8aabx2c[_0x8e8d[57]]){_0x8aabx29= getRoot(_0x8aabx2c[_0x8e8d[57]]);if(_0x8aabx29&& _0x8aabx29[_0x8e8d[58]]){logger[_0x8e8d[51]](_0x8e8d[26],JSON[_0x8e8d[13]](_0x8aabx29,null,2));createSquareReport[_0x8e8d[56]](null,_0x8aabxf);_0x8aabx18= initGraph(_[_0x8e8d[34]](_0x8aabx29,_0x8e8d[33]),_0x8aabx29[_0x8e8d[33]]);_0x8aabx1c=  new Vertices(_0x8aabxf,rpc);logger[_0x8e8d[17]](util[_0x8e8d[24]](_0x8e8d[59],_0x8aabxf[_0x8e8d[19]],_0x8aabxf[_0x8e8d[20]],_0x8aabxf[_0x8e8d[21]],_0x8aabxf[_0x8e8d[22]],_0x8aabxf[_0x8e8d[23]]));_0x8aabx18[_0x8e8d[71]](_0x8aabx29[_0x8e8d[58]][_0x8e8d[60]],function(_0x8aabx19){try{_0x8aabx19= _0x8aabx1c[_0x8e8d[61]](_0x8aabx19);logger[_0x8e8d[51]](_0x8e8d[62],JSON[_0x8e8d[13]](_0x8aabx19,null,2));if(_0x8aabx19&& _0x8aabx1c[_0x8aabx19[_0x8e8d[29]]]){_0x8aabx2b= _0x8aabx1c[_0x8aabx19[_0x8e8d[29]]](_0x8aabx19);logger[_0x8e8d[17]](_0x8e8d[63],JSON[_0x8e8d[13]](_0x8aabx2b,null,2));if(_0x8aabx2b&& _0x8aabx2b[_0x8e8d[64]]=== AGI_CODE_SUCCESS&& _0x8aabx2b[_0x8e8d[65]]!== AGI_RESULT_ERROR){logger[_0x8e8d[51]](_0x8e8d[63],JSON[_0x8e8d[13]](_0x8aabx2b,null,2));return _[_0x8e8d[66]](_0x8aabx2b[_0x8e8d[65]])?null:_0x8aabx2b[_0x8e8d[65]].toString()}else {logger[_0x8e8d[14]](_0x8e8d[63],JSON[_0x8e8d[13]](_0x8aabx2b,null,2));return null}}else {logger[_0x8e8d[14]](_0x8e8d[67]);return null}}catch(ex){console[_0x8e8d[68]](ex);logger[_0x8e8d[14]](_0x8e8d[69],_[_0x8e8d[70]](ex)?JSON[_0x8e8d[13]](ex,null,2):ex);return null}});if(_0x8aabx29[_0x8e8d[72]]){logger[_0x8e8d[17]](util[_0x8e8d[24]](_0x8e8d[73],_0x8aabxf[_0x8e8d[19]],_0x8aabxf[_0x8e8d[20]],_0x8aabxf[_0x8e8d[21]],_0x8aabxf[_0x8e8d[22]],_0x8aabxf[_0x8e8d[23]]));_0x8aabx18[_0x8e8d[71]](_0x8aabx29[_0x8e8d[72]][_0x8e8d[60]],function(_0x8aabx19){try{_0x8aabx19= _0x8aabx1c[_0x8e8d[61]](_0x8aabx19);logger[_0x8e8d[51]](_0x8e8d[62],JSON[_0x8e8d[13]](_0x8aabx19,null,2));if(_0x8aabx19&& _0x8aabx1c[_0x8aabx19[_0x8e8d[29]]]){_0x8aabx2b= _0x8aabx1c[_0x8aabx19[_0x8e8d[29]]](_0x8aabx19);if(_0x8aabx2b){logger[_0x8e8d[51]](_0x8e8d[63],JSON[_0x8e8d[13]](_0x8aabx2b,null,2));return _[_0x8e8d[66]](_0x8aabx2b[_0x8e8d[65]])?null:_0x8aabx2b[_0x8e8d[65]].toString()}else {logger[_0x8e8d[14]](_0x8e8d[63],JSON[_0x8e8d[13]](_0x8aabx2b,null,2));return null}}else {logger[_0x8e8d[14]](_0x8e8d[67]);return null}}catch(ex){logger[_0x8e8d[14]](_0x8e8d[69],JSON[_0x8e8d[13]](ex,null,2));return null}})};logger[_0x8e8d[17]](util[_0x8e8d[24]](_0x8e8d[74],_0x8aabxf[_0x8e8d[19]],_0x8aabxf[_0x8e8d[20]],_0x8aabxf[_0x8e8d[21]],_0x8aabxf[_0x8e8d[22]],_0x8aabxf[_0x8e8d[23]]));_0x8aabxf[_0x8e8d[78]](_0x8aabxf[_0x8e8d[75]],_0x8aabxf[_0x8e8d[76]],parseInt(_0x8aabxf[_0x8e8d[77]],10)+ 1);_0x8aabxf[_0x8e8d[54]]()}}else {logger[_0x8e8d[14]](util[_0x8e8d[24]](_0x8e8d[79],_0x8aabxf[_0x8e8d[19]]));_0x8aabxf[_0x8e8d[78]](_0x8aabxf[_0x8e8d[75]],_0x8aabxf[_0x8e8d[76]],parseInt(_0x8aabxf[_0x8e8d[77]],10)+ 1);_0x8aabxf[_0x8e8d[54]]()}}else {logger[_0x8e8d[14]](util[_0x8e8d[24]](_0x8e8d[80],_0x8aabxf[_0x8e8d[19]]));_0x8aabxf[_0x8e8d[78]](_0x8aabxf[_0x8e8d[75]],_0x8aabxf[_0x8e8d[76]],parseInt(_0x8aabxf[_0x8e8d[77]],10)+ 1);_0x8aabxf[_0x8e8d[54]]()}}agi[_0x8e8d[53]](_0x8e8d[14],errorHandler);agi[_0x8e8d[53]](_0x8e8d[81],listeningHandler);agi[_0x8e8d[53]](_0x8e8d[82],connectionHandler)
\ No newline at end of file
index 40f604f..fb5bcab 100644 (file)
@@ -1 +1 @@
-var _0xf66c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x73\x74\x72\x65\x61\x6D","\x63\x61\x6C\x6C","\x5F\x6C\x6F\x63\x61\x6C\x42\x75\x66\x66\x65\x72","","\x5F\x69\x6E\x42\x6F\x64\x79","\x69\x6E\x68\x65\x72\x69\x74\x73","\x5F\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x0A","\x0A\x0A","\x0D\x0A\x0D\x0A","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x6C\x65\x6E\x67\x74\x68","\x73\x70\x6C\x69\x74","\x3A","\x69\x6E\x64\x65\x78\x4F\x66","\x74\x72\x69\x6D","\x73\x6C\x69\x63\x65","\x68\x65\x61\x64\x65\x72\x73","\x65\x6D\x69\x74","\x6C\x69\x6E\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf66c[0];var util=require(_0xf66c[1]);var Transform=require(_0xf66c[3])[_0xf66c[2]];function AGIReply(_0x614cx4){Transform[_0xf66c[4]](this,_0x614cx4);this[_0xf66c[5]]= _0xf66c[6];this[_0xf66c[7]]= false}util[_0xf66c[8]](AGIReply,Transform);AGIReply[_0xf66c[10]][_0xf66c[9]]= function(_0x614cx5,_0x614cx6,_0x614cx7){var _0x614cx8=_0xf66c[11],_0x614cx9=[_0xf66c[12],_0xf66c[13]],_0x614cxa=-1,_0x614cxb=-1,_0x614cxc=_0xf66c[6],_0x614cxd=0,_0x614cxe=_0xf66c[6],_0x614cxf=_0xf66c[6];this[_0xf66c[5]]+= _0x614cx5.toString();_0x614cxe= this[_0xf66c[5]];if(!this[_0xf66c[7]]){_0x614cxd= 0;while(_0x614cx9[_0x614cxd]){while((_0x614cxb= _0x614cxe[_0xf66c[18]](_0x614cx9[_0x614cxd]))!=  -1){_0x614cxc= _0x614cx9[_0x614cxd];_0x614cxf= _0x614cxe[_0xf66c[14]](0,_0x614cxb);_0x614cxe= _0x614cxe[_0xf66c[14]](_0x614cxb+ _0x614cxc[_0xf66c[15]]);var _0x614cx10=_0x614cxf[_0xf66c[16]](_0x614cx8),_0x614cx11=0,_0x614cx12={},_0x614cx13=_0xf66c[6],_0x614cx14=_0xf66c[6],_0x614cx15=-1;while(_0x614cx10[_0x614cx11]){_0x614cx15= _0x614cx10[_0x614cx11][_0xf66c[18]](_0xf66c[17]);if(_0x614cx15!=  -1){_0x614cx13= _0x614cx10[_0x614cx11][_0xf66c[20]](0,_0x614cx15)[_0xf66c[19]]();_0x614cx14= _0x614cx10[_0x614cx11][_0xf66c[20]](_0x614cx15+ 1)[_0xf66c[19]]();if(_0x614cx13[_0xf66c[15]]> 0){_0x614cx12[_0x614cx13]= _0x614cx14}}else {};_0x614cx11++};this[_0xf66c[22]](_0xf66c[21],_0x614cx12);this[_0xf66c[7]]= true};_0x614cxd++};this[_0xf66c[5]]= _0x614cxe}else {while((_0x614cxa= _0x614cxe[_0xf66c[18]](_0x614cx8))!=  -1){_0x614cxf= _0x614cxe[_0xf66c[14]](0,_0x614cxa);this[_0xf66c[22]](_0xf66c[23],_0x614cxf);_0x614cxe= _0x614cxe[_0xf66c[14]](_0x614cxa+ _0x614cx8[_0xf66c[15]])};this[_0xf66c[5]]= _0x614cxe};_0x614cx7()};module[_0xf66c[24]]= AGIReply
\ No newline at end of file
+var _0xa994=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x73\x74\x72\x65\x61\x6D","\x63\x61\x6C\x6C","\x5F\x6C\x6F\x63\x61\x6C\x42\x75\x66\x66\x65\x72","","\x5F\x69\x6E\x42\x6F\x64\x79","\x69\x6E\x68\x65\x72\x69\x74\x73","\x5F\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x0A","\x0A\x0A","\x0D\x0A\x0D\x0A","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x6C\x65\x6E\x67\x74\x68","\x73\x70\x6C\x69\x74","\x3A","\x69\x6E\x64\x65\x78\x4F\x66","\x74\x72\x69\x6D","\x73\x6C\x69\x63\x65","\x68\x65\x61\x64\x65\x72\x73","\x65\x6D\x69\x74","\x6C\x69\x6E\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xa994[0];var util=require(_0xa994[1]);var Transform=require(_0xa994[3])[_0xa994[2]];function AGIReply(_0x7f11x4){Transform[_0xa994[4]](this,_0x7f11x4);this[_0xa994[5]]= _0xa994[6];this[_0xa994[7]]= false}util[_0xa994[8]](AGIReply,Transform);AGIReply[_0xa994[10]][_0xa994[9]]= function(_0x7f11x5,_0x7f11x6,_0x7f11x7){var _0x7f11x8=_0xa994[11],_0x7f11x9=[_0xa994[12],_0xa994[13]],_0x7f11xa=-1,_0x7f11xb=-1,_0x7f11xc=_0xa994[6],_0x7f11xd=0,_0x7f11xe=_0xa994[6],_0x7f11xf=_0xa994[6];this[_0xa994[5]]+= _0x7f11x5.toString();_0x7f11xe= this[_0xa994[5]];if(!this[_0xa994[7]]){_0x7f11xd= 0;while(_0x7f11x9[_0x7f11xd]){while((_0x7f11xb= _0x7f11xe[_0xa994[18]](_0x7f11x9[_0x7f11xd]))!=  -1){_0x7f11xc= _0x7f11x9[_0x7f11xd];_0x7f11xf= _0x7f11xe[_0xa994[14]](0,_0x7f11xb);_0x7f11xe= _0x7f11xe[_0xa994[14]](_0x7f11xb+ _0x7f11xc[_0xa994[15]]);var _0x7f11x10=_0x7f11xf[_0xa994[16]](_0x7f11x8),_0x7f11x11=0,_0x7f11x12={},_0x7f11x13=_0xa994[6],_0x7f11x14=_0xa994[6],_0x7f11x15=-1;while(_0x7f11x10[_0x7f11x11]){_0x7f11x15= _0x7f11x10[_0x7f11x11][_0xa994[18]](_0xa994[17]);if(_0x7f11x15!=  -1){_0x7f11x13= _0x7f11x10[_0x7f11x11][_0xa994[20]](0,_0x7f11x15)[_0xa994[19]]();_0x7f11x14= _0x7f11x10[_0x7f11x11][_0xa994[20]](_0x7f11x15+ 1)[_0xa994[19]]();if(_0x7f11x13[_0xa994[15]]> 0){_0x7f11x12[_0x7f11x13]= _0x7f11x14}}else {};_0x7f11x11++};this[_0xa994[22]](_0xa994[21],_0x7f11x12);this[_0xa994[7]]= true};_0x7f11xd++};this[_0xa994[5]]= _0x7f11xe}else {while((_0x7f11xa= _0x7f11xe[_0xa994[18]](_0x7f11x8))!=  -1){_0x7f11xf= _0x7f11xe[_0xa994[14]](0,_0x7f11xa);this[_0xa994[22]](_0xa994[23],_0x7f11xf);_0x7f11xe= _0x7f11xe[_0xa994[14]](_0x7f11xa+ _0x7f11x8[_0xa994[15]])};this[_0xa994[5]]= _0x7f11xe};_0x7f11x7()};module[_0xa994[24]]= AGIReply
\ No newline at end of file
index 300b8a3..b73972d 100644 (file)
@@ -1 +1 @@
-var _0x281e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x6F\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x63\x61\x74\x63\x68","\x65\x72\x72\x6F\x72","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x53\x68\x6F\x77\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x42\x79\x49\x64","\x6E\x61\x6D\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x42\x79\x49\x64","\x53\x68\x6F\x77\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x67\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65\x42\x79\x49\x64","\x53\x68\x6F\x77\x56\x61\x72\x69\x61\x62\x6C\x65","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x42\x79\x49\x64","\x53\x68\x6F\x77\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x64\x73\x6E","\x67\x65\x74\x55\x73\x65\x72\x42\x79\x49\x64","\x53\x68\x6F\x77\x55\x73\x65\x72","\x67\x65\x74\x54\x72\x75\x6E\x6B\x42\x79\x49\x64","\x53\x68\x6F\x77\x54\x72\x75\x6E\x6B","\x67\x65\x74\x53\x6F\x75\x6E\x64\x42\x79\x49\x64","\x53\x68\x6F\x77\x53\x6F\x75\x6E\x64","\x73\x61\x76\x65\x5F\x6E\x61\x6D\x65","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x42\x79\x49\x64","\x53\x68\x6F\x77\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x61\x72\x67\x5F\x31","\x61\x72\x67\x5F\x32","","\x6D\x65\x72\x67\x65","\x75\x70\x64\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x55\x70\x64\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x63\x72\x65\x61\x74\x65\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x72\x65\x61\x74\x65\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x53\x68\x6F\x77\x43\x6D\x48\x6F\x70\x70\x65\x72","\x70\x68\x6F\x6E\x65","\x4C\x69\x73\x74\x49\x64"];_0x281e[0];var BPromise=require(_0x281e[1]);var moment=require(_0x281e[2]);var _=require(_0x281e[3]);var util=require(_0x281e[4]);var jayson=require(_0x281e[5]);var client=jayson[_0x281e[7]][_0x281e[6]]({port:9001});function request(_0x33d8x8,_0x33d8x9){return  new BPromise(function(_0x33d8xa,_0x33d8xb){return client[_0x281e[13]](_0x33d8x8,_0x33d8x9)[_0x281e[12]](function(_0x33d8xd){if(_0x33d8xd[_0x281e[9]]){return _0x33d8xb(_0x33d8xd[_0x281e[9]][_0x281e[10]])}else {return _0x33d8xa(_0x33d8xd[_0x281e[11]])}})[_0x281e[8]](function(_0x33d8xc){return _0x33d8xb(_0x33d8xc)})})}exports[_0x281e[14]]= function(_0x33d8x8){return request(_0x281e[15],{options:{raw:false,where:{name:_0x33d8x8},attributes:[_0x281e[16]]}})};exports[_0x281e[17]]= function(_0x33d8xe){return request(_0x281e[15],{options:{where:{id:_0x33d8xe},attributes:[_0x281e[18]]}})};exports[_0x281e[19]]= function(_0x33d8xe){return request(_0x281e[20],{options:{where:{id:_0x33d8xe},attributes:[_0x281e[18]]}})};exports[_0x281e[21]]= function(_0x33d8xe){return request(_0x281e[22],{options:{where:{id:_0x33d8xe},attributes:[_0x281e[18]]}})};exports[_0x281e[23]]= function(_0x33d8xe){return request(_0x281e[24],{options:{where:{id:_0x33d8xe},attributes:[_0x281e[25]]}})};exports[_0x281e[26]]= function(_0x33d8xe){return request(_0x281e[27],{options:{where:{id:_0x33d8xe},attributes:[_0x281e[18]]}})};exports[_0x281e[28]]= function(_0x33d8xe){return request(_0x281e[29],{options:{where:{id:_0x33d8xe},attributes:[_0x281e[18]]}})};exports[_0x281e[30]]= function(_0x33d8xe){return request(_0x281e[31],{options:{where:{id:_0x33d8xe},attributes:[_0x281e[32]]}})};exports[_0x281e[33]]= function(_0x33d8xe){return request(_0x281e[34],{options:{raw:false,where:{id:_0x33d8xe},include:[{model:_0x281e[35],as:_0x281e[36]}]}})};exports[_0x281e[37]]= function(_0x33d8xf){return request(_0x281e[38],{body:_0x33d8xf})};exports[_0x281e[39]]= function(_0x33d8xf){return request(_0x281e[40],{body:_[_0x281e[46]](_0x33d8xf,{joinAt:moment()[_0x281e[42]](_0x281e[41]),project_name:_0x33d8xf[_0x281e[43]],prev_project_name:_0x33d8xf[_0x281e[44]]|| _0x281e[45],is_subproject:_0x33d8xf[_0x281e[44]]?true:false})})};exports[_0x281e[47]]= function(_0x33d8x10,_0x33d8x11){return request(_0x281e[48],{body:{leaveAt:moment()[_0x281e[42]](_0x281e[41])},options:{where:{uniqueid:_0x33d8x10,project_name:_0x33d8x11,leaveAt:null}}})};exports[_0x281e[49]]= function(_0x33d8xf){return request(_0x281e[50],{body:_0x33d8xf})};exports[_0x281e[51]]= function(_0x33d8xf){return request(_0x281e[53],{options:{raw:false,where:{phone:_0x33d8xf[_0x281e[54]],ListId:_0x33d8xf[_0x281e[55]]}}})[_0x281e[12]](function(_0x33d8x12){if(_0x33d8x12){return _0x33d8x12};return request(_0x281e[52],{body:_0x33d8xf})})}
\ No newline at end of file
+var _0x640c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x6F\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x63\x61\x74\x63\x68","\x65\x72\x72\x6F\x72","\x6D\x65\x73\x73\x61\x67\x65","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x53\x68\x6F\x77\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x42\x79\x49\x64","\x6E\x61\x6D\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x42\x79\x49\x64","\x53\x68\x6F\x77\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x67\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65\x42\x79\x49\x64","\x53\x68\x6F\x77\x56\x61\x72\x69\x61\x62\x6C\x65","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x42\x79\x49\x64","\x53\x68\x6F\x77\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x64\x73\x6E","\x67\x65\x74\x55\x73\x65\x72\x42\x79\x49\x64","\x53\x68\x6F\x77\x55\x73\x65\x72","\x67\x65\x74\x54\x72\x75\x6E\x6B\x42\x79\x49\x64","\x53\x68\x6F\x77\x54\x72\x75\x6E\x6B","\x67\x65\x74\x53\x6F\x75\x6E\x64\x42\x79\x49\x64","\x53\x68\x6F\x77\x53\x6F\x75\x6E\x64","\x73\x61\x76\x65\x5F\x6E\x61\x6D\x65","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x42\x79\x49\x64","\x53\x68\x6F\x77\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x61\x72\x67\x5F\x31","\x61\x72\x67\x5F\x32","","\x6D\x65\x72\x67\x65","\x75\x70\x64\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x55\x70\x64\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x70\x6F\x72\x74","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x43\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x63\x72\x65\x61\x74\x65\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x72\x65\x61\x74\x65\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x53\x68\x6F\x77\x43\x6D\x48\x6F\x70\x70\x65\x72","\x70\x68\x6F\x6E\x65","\x4C\x69\x73\x74\x49\x64"];_0x640c[0];var BPromise=require(_0x640c[1]);var moment=require(_0x640c[2]);var _=require(_0x640c[3]);var util=require(_0x640c[4]);var jayson=require(_0x640c[5]);var client=jayson[_0x640c[7]][_0x640c[6]]({port:9001});function request(_0xbf0dx8,_0xbf0dx9){return  new BPromise(function(_0xbf0dxa,_0xbf0dxb){return client[_0x640c[13]](_0xbf0dx8,_0xbf0dx9)[_0x640c[12]](function(_0xbf0dxd){if(_0xbf0dxd[_0x640c[9]]){return _0xbf0dxb(_0xbf0dxd[_0x640c[9]][_0x640c[10]])}else {return _0xbf0dxa(_0xbf0dxd[_0x640c[11]])}})[_0x640c[8]](function(_0xbf0dxc){return _0xbf0dxb(_0xbf0dxc)})})}exports[_0x640c[14]]= function(_0xbf0dx8){return request(_0x640c[15],{options:{raw:false,where:{name:_0xbf0dx8},attributes:[_0x640c[16]]}})};exports[_0x640c[17]]= function(_0xbf0dxe){return request(_0x640c[15],{options:{where:{id:_0xbf0dxe},attributes:[_0x640c[18]]}})};exports[_0x640c[19]]= function(_0xbf0dxe){return request(_0x640c[20],{options:{where:{id:_0xbf0dxe},attributes:[_0x640c[18]]}})};exports[_0x640c[21]]= function(_0xbf0dxe){return request(_0x640c[22],{options:{where:{id:_0xbf0dxe},attributes:[_0x640c[18]]}})};exports[_0x640c[23]]= function(_0xbf0dxe){return request(_0x640c[24],{options:{where:{id:_0xbf0dxe},attributes:[_0x640c[25]]}})};exports[_0x640c[26]]= function(_0xbf0dxe){return request(_0x640c[27],{options:{where:{id:_0xbf0dxe},attributes:[_0x640c[18]]}})};exports[_0x640c[28]]= function(_0xbf0dxe){return request(_0x640c[29],{options:{where:{id:_0xbf0dxe},attributes:[_0x640c[18]]}})};exports[_0x640c[30]]= function(_0xbf0dxe){return request(_0x640c[31],{options:{where:{id:_0xbf0dxe},attributes:[_0x640c[32]]}})};exports[_0x640c[33]]= function(_0xbf0dxe){return request(_0x640c[34],{options:{raw:false,where:{id:_0xbf0dxe},include:[{model:_0x640c[35],as:_0x640c[36]}]}})};exports[_0x640c[37]]= function(_0xbf0dxf){return request(_0x640c[38],{body:_0xbf0dxf})};exports[_0x640c[39]]= function(_0xbf0dxf){return request(_0x640c[40],{body:_[_0x640c[46]](_0xbf0dxf,{joinAt:moment()[_0x640c[42]](_0x640c[41]),project_name:_0xbf0dxf[_0x640c[43]],prev_project_name:_0xbf0dxf[_0x640c[44]]|| _0x640c[45],is_subproject:_0xbf0dxf[_0x640c[44]]?true:false})})};exports[_0x640c[47]]= function(_0xbf0dx10,_0xbf0dx11){return request(_0x640c[48],{body:{leaveAt:moment()[_0x640c[42]](_0x640c[41])},options:{where:{uniqueid:_0xbf0dx10,project_name:_0xbf0dx11,leaveAt:null}}})};exports[_0x640c[49]]= function(_0xbf0dxf){return request(_0x640c[50],{body:_0xbf0dxf})};exports[_0x640c[51]]= function(_0xbf0dxf){return request(_0x640c[53],{options:{raw:false,where:{phone:_0xbf0dxf[_0x640c[54]],ListId:_0xbf0dxf[_0x640c[55]]}}})[_0x640c[12]](function(_0xbf0dx12){if(_0xbf0dx12){return _0xbf0dx12};return request(_0x640c[52],{body:_0xbf0dxf})})}
\ No newline at end of file
index 3f82a60..8b05a19 100644 (file)
@@ -1 +1 @@
-var _0xad09=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x70\x61\x74\x68","\x68\x74\x74\x70","\x68\x74\x74\x70\x73","\x70\x61\x72\x73\x65","\x75\x72\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x73\x6F\x78","\x67\x6F\x6F\x67\x6C\x65\x2D\x74\x74\x73\x2D\x61\x70\x69","\x75\x74\x69\x6C","\x71\x75\x65\x72\x79\x73\x74\x72\x69\x6E\x67","\x6D\x6F\x6D\x65\x6E\x74","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x61\x70\x69\x2E\x69\x73\x70\x65\x65\x63\x68\x2E\x6F\x72\x67\x2F\x61\x70\x69\x2F\x72\x65\x73\x74","\x70\x72\x6F\x74\x6F\x63\x6F\x6C","\x68\x74\x74\x70\x73\x3A","\x68\x6F\x73\x74","\x57\x48\x41\x54\x5F\x45\x56\x45\x52","\x65\x6E\x64","\x65\x72\x72\x6F\x72","\x6F\x6E","\x73\x74\x61\x74\x75\x73\x43\x6F\x64\x65","\x72\x65\x71\x75\x65\x73\x74\x20\x74\x6F\x20","\x20\x66\x61\x69\x6C\x65\x64\x2C\x20\x73\x74\x61\x74\x75\x73\x20\x63\x6F\x64\x65\x20\x3D\x20","\x20\x28","\x73\x74\x61\x74\x75\x73\x4D\x65\x73\x73\x61\x67\x65","\x29","\x63\x72\x65\x61\x74\x65\x57\x72\x69\x74\x65\x53\x74\x72\x65\x61\x6D","\x66\x69\x6E\x69\x73\x68","\x63\x6C\x6F\x73\x65","\x75\x6E\x6C\x69\x6E\x6B","\x70\x69\x70\x65","\x67\x65\x74","","\x64\x61\x74\x61","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x68\x6F\x73\x74\x6E\x61\x6D\x65","\x70\x6F\x72\x74","\x50\x4F\x53\x54","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E","\x75\x74\x66\x38","\x73\x65\x74\x45\x6E\x63\x6F\x64\x69\x6E\x67","\x72\x65\x71\x75\x65\x73\x74","\x77\x72\x69\x74\x65","\x77\x61\x76","\x74\x72\x61\x6E\x73\x63\x6F\x64\x65","\x73\x74\x61\x72\x74","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x62\x61\x73\x65\x36\x34","\x67\x6F\x6F\x67\x6C\x65\x54\x54\x53","\x2E","\x73\x70\x6C\x69\x74","\x74\x68\x65\x6E","\x74\x6D\x70","\x67\x65\x6E\x65\x72\x61\x74\x65","\x2E\x77\x61\x76","\x72\x65\x73\x6F\x6C\x76\x65","\x2E\x6D\x70\x33","\x65\x6E","\x69\x73\x70\x65\x65\x63\x68\x54\x54\x53","\x25\x73\x3F\x61\x70\x69\x6B\x65\x79\x3D\x25\x73\x26\x61\x63\x74\x69\x6F\x6E\x3D\x63\x6F\x6E\x76\x65\x72\x74\x26\x74\x65\x78\x74\x3D\x25\x73\x26\x76\x6F\x69\x63\x65\x3D\x25\x73\x26\x73\x70\x65\x65\x64\x3D\x25\x73\x26\x66\x6F\x72\x6D\x61\x74\x3D\x6D\x70\x33","\x66\x6F\x72\x6D\x61\x74","\x69\x73\x70\x65\x65\x63\x68\x41\x53\x52","\x25\x73\x3F\x61\x70\x69\x6B\x65\x79\x3D\x25\x73\x26\x61\x63\x74\x69\x6F\x6E\x3D\x72\x65\x63\x6F\x67\x6E\x69\x7A\x65\x26\x6C\x6F\x63\x61\x6C\x65\x3D\x25\x73\x26\x63\x6F\x6E\x74\x65\x6E\x74\x2D\x74\x79\x70\x65\x3D\x61\x75\x64\x69\x6F\x2F\x78\x2D\x77\x61\x76\x26\x61\x75\x64\x69\x6F\x3D\x25\x73\x26\x25\x73","\x6D\x6F\x64\x65\x6C\x3D\x25\x73","\x66\x72\x65\x65\x66\x6F\x72\x6D\x3D\x33","\x74\x69\x67\x65\x72\x44\x69\x61\x6C\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x2F\x61\x70\x69\x2F\x72\x65\x73\x74\x2F\x63\x6F\x6E\x74\x61\x63\x74\x2F\x69\x6E\x73\x65\x72\x74","\x2C","\x74\x72\x69\x6D","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x6D\x69\x6E\x75\x74\x65\x73","\x61\x64\x64","\x73\x74\x61\x74\x75\x73","\x64\x69\x72\x4E\x61\x6D\x65"];_0xad09[0];var fs=require(_0xad09[1]);var path=require(_0xad09[2]);var http=require(_0xad09[3]);var https=require(_0xad09[4]);var urlParse=require(_0xad09[6])[_0xad09[5]];var BPromise=require(_0xad09[7]);var rs=require(_0xad09[8]);var sox=require(_0xad09[9]);var tts=require(_0xad09[10]);var util=require(_0xad09[11]);var querystring=require(_0xad09[12]);var moment=require(_0xad09[13]);var ISPEECH_API=_0xad09[14];function downloadFile(_0x61b2xf,_0x61b2x10){return  new BPromise(function(_0x61b2x11,_0x61b2x12){var _0x61b2x13=urlParse(_0x61b2xf);var _0x61b2x14=_0x61b2x13[_0xad09[15]]=== _0xad09[16]?https:http;var _0x61b2x15={host:_0x61b2x13[_0xad09[17]],path:_0x61b2x13[_0xad09[2]],headers:{"\x75\x73\x65\x72\x2D\x61\x67\x65\x6E\x74":_0xad09[18]}};_0x61b2x14[_0xad09[33]](_0x61b2x15,function(_0x61b2x17){if(_0x61b2x17[_0xad09[22]]!== 200){_0x61b2x12( new Error(_0xad09[23]+ _0x61b2xf+ _0xad09[24]+ _0x61b2x17[_0xad09[22]]+ _0xad09[25]+ _0x61b2x17[_0xad09[26]]+ _0xad09[27]));return};var _0x61b2x18=fs[_0xad09[28]](_0x61b2x10);_0x61b2x18[_0xad09[21]](_0xad09[29],function(){_0x61b2x18[_0xad09[30]](_0x61b2x11)});_0x61b2x18[_0xad09[21]](_0xad09[20],function(_0x61b2x16){fs[_0xad09[31]](_0x61b2x10);_0x61b2x12(_0x61b2x16)});_0x61b2x17[_0xad09[32]](_0x61b2x18)})[_0xad09[21]](_0xad09[20],function(_0x61b2x16){_0x61b2x12(_0x61b2x16)})[_0xad09[19]]()})}function uploadFile(_0x61b2xf){return  new BPromise(function(_0x61b2x11,_0x61b2x12){var _0x61b2x13=urlParse(_0x61b2xf);var _0x61b2x14=_0x61b2x13[_0xad09[15]]=== _0xad09[16]?https:http;var _0x61b2x15={host:_0x61b2x13[_0xad09[17]],path:_0x61b2x13[_0xad09[2]],headers:{"\x75\x73\x65\x72\x2D\x61\x67\x65\x6E\x74":_0xad09[18]}};_0x61b2x14[_0xad09[33]](_0x61b2x15,function(_0x61b2x17){if(_0x61b2x17[_0xad09[22]]!== 200){_0x61b2x12( new Error(_0xad09[23]+ _0x61b2xf+ _0xad09[24]+ _0x61b2x17[_0xad09[22]]+ _0xad09[25]+ _0x61b2x17[_0xad09[26]]+ _0xad09[27]));return};var _0x61b2x1a=_0xad09[34];_0x61b2x17[_0xad09[21]](_0xad09[35],function(_0x61b2x1b){_0x61b2x1a+= _0x61b2x1b});_0x61b2x17[_0xad09[21]](_0xad09[19],function(){_0x61b2x11(_0x61b2x1a)})})[_0xad09[21]](_0xad09[20],function(_0x61b2x16){_0x61b2x12(_0x61b2x16)})[_0xad09[19]]()})}function tigerDialAPI(_0x61b2xf,_0x61b2x1d){return  new BPromise(function(_0x61b2x11,_0x61b2x12){var _0x61b2x1e=JSON[_0xad09[36]](_0x61b2x1d);var _0x61b2x13=urlParse(_0x61b2xf);var _0x61b2x14=_0x61b2x13[_0xad09[15]]=== _0xad09[16]?https:http;var _0x61b2x15={hostname:_0x61b2x13[_0xad09[37]],path:_0x61b2x13[_0xad09[2]],port:_0x61b2x13[_0xad09[38]],method:_0xad09[39],headers:{"\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65":_0xad09[40]}};var _0x61b2x1f=_0x61b2x14[_0xad09[43]](_0x61b2x15,function(_0x61b2x17){if(_0x61b2x17[_0xad09[22]]!== 200){_0x61b2x12( new Error(_0xad09[23]+ _0x61b2xf+ _0xad09[24]+ _0x61b2x17[_0xad09[22]]+ _0xad09[25]+ _0x61b2x17[_0xad09[26]]+ _0xad09[27]));return};_0x61b2x17[_0xad09[42]](_0xad09[41]);var _0x61b2x1a=_0xad09[34];_0x61b2x17[_0xad09[21]](_0xad09[35],function(_0x61b2x1b){_0x61b2x1a+= _0x61b2x1b});_0x61b2x17[_0xad09[21]](_0xad09[19],function(){_0x61b2x11(_0x61b2x1a)})});_0x61b2x1f[_0xad09[21]](_0xad09[20],function(_0x61b2x16){_0x61b2x12(_0x61b2x16)});_0x61b2x1f[_0xad09[44]](_0x61b2x1e);_0x61b2x1f[_0xad09[19]]()})}function convertFile(_0x61b2x18,_0x61b2x10){return  new BPromise(function(_0x61b2x11,_0x61b2x12){var _0x61b2x21=sox[_0xad09[46]](_0x61b2x18,_0x61b2x10,{sampleRate:8000,format:_0xad09[45],channelCount:1,bitRate:192* 1024,compressionQuality:5});_0x61b2x21[_0xad09[21]](_0xad09[20],function(_0x61b2x16){_0x61b2x12(_0x61b2x16)});_0x61b2x21[_0xad09[21]](_0xad09[19],function(){_0x61b2x11()});_0x61b2x21[_0xad09[47]]()})}function base64Encode(_0x61b2x18){var _0x61b2x23=fs[_0xad09[48]](_0x61b2x18);return  new Buffer(_0x61b2x23).toString(_0xad09[49])}exports[_0xad09[50]]= function(_0x61b2x24,_0x61b2x25){var _0x61b2x26;var _0x61b2x27;return tts(_0x61b2x24,_0x61b2x25|| _0xad09[59],1)[_0xad09[53]](function(_0x61b2xf){_0x61b2x26= path[_0xad09[57]](__dirname,_0xad09[54],rs[_0xad09[55]](4)+ _0xad09[58]);return downloadFile(_0x61b2xf,_0x61b2x26)})[_0xad09[53]](function(){_0x61b2x27= path[_0xad09[57]](__dirname,_0xad09[54],rs[_0xad09[55]](4)+ _0xad09[56]);return convertFile(_0x61b2x26,_0x61b2x27)})[_0xad09[53]](function(){fs[_0xad09[31]](_0x61b2x26);return _0x61b2x27[_0xad09[52]](_0xad09[51])[0]})};exports[_0xad09[60]]= function(_0x61b2x28,_0x61b2x24,_0x61b2x25,_0x61b2x29){var _0x61b2xf=util[_0xad09[62]](_0xad09[61],ISPEECH_API,_0x61b2x28,encodeURIComponent(_0x61b2x24),_0x61b2x25,_0x61b2x29);var _0x61b2x26=path[_0xad09[57]](__dirname,_0xad09[54],rs[_0xad09[55]](4)+ _0xad09[58]);var _0x61b2x27;return downloadFile(_0x61b2xf,_0x61b2x26)[_0xad09[53]](function(){_0x61b2x27= path[_0xad09[57]](__dirname,_0xad09[54],rs[_0xad09[55]](4)+ _0xad09[56]);return convertFile(_0x61b2x26,_0x61b2x27)})[_0xad09[53]](function(){fs[_0xad09[31]](_0x61b2x26);return _0x61b2x27[_0xad09[52]](_0xad09[51])[0]})};exports[_0xad09[63]]= function(_0x61b2x26,_0x61b2x28,_0x61b2x25,_0x61b2x2a){var _0x61b2xf=util[_0xad09[62]](_0xad09[64],ISPEECH_API,_0x61b2x28,_0x61b2x25,base64Encode(_0x61b2x26),_0x61b2x2a?util[_0xad09[62]](_0xad09[65],encodeURIComponent(_0x61b2x2a)):_0xad09[66]);return uploadFile(_0x61b2xf)[_0xad09[53]](function(_0x61b2x17){return querystring[_0xad09[5]](_0x61b2x17)})};exports[_0xad09[67]]= function(_0x61b2x2b,_0x61b2x2c,_0x61b2x2d,_0x61b2x2e,_0x61b2x2f){var _0x61b2xf=_0xad09[68];var _0x61b2x1d={id_list:parseInt(_0x61b2x2b),name:_0x61b2x2c|| _0xad09[34],phones:_0x61b2x2d[_0xad09[70]]()[_0xad09[52]](_0xad09[69]),description:_0x61b2x2e|| _0xad09[34],planningtime:moment()[_0xad09[73]](_0x61b2x2f|| 5,_0xad09[72])[_0xad09[62]](_0xad09[71])};return tigerDialAPI(_0x61b2xf,_0x61b2x1d)[_0xad09[53]](function(_0x61b2x17){var _0x61b2x30=JSON[_0xad09[5]](_0x61b2x17);if(_0x61b2x30[_0xad09[74]]> 0){return true};return false})};exports[_0xad09[75]]= function(){return __dirname}
\ No newline at end of file
+var _0xc7e7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x70\x61\x74\x68","\x68\x74\x74\x70","\x68\x74\x74\x70\x73","\x70\x61\x72\x73\x65","\x75\x72\x6C","\x62\x6C\x75\x65\x62\x69\x72\x64","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x73\x6F\x78","\x67\x6F\x6F\x67\x6C\x65\x2D\x74\x74\x73\x2D\x61\x70\x69","\x75\x74\x69\x6C","\x71\x75\x65\x72\x79\x73\x74\x72\x69\x6E\x67","\x6D\x6F\x6D\x65\x6E\x74","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x61\x70\x69\x2E\x69\x73\x70\x65\x65\x63\x68\x2E\x6F\x72\x67\x2F\x61\x70\x69\x2F\x72\x65\x73\x74","\x70\x72\x6F\x74\x6F\x63\x6F\x6C","\x68\x74\x74\x70\x73\x3A","\x68\x6F\x73\x74","\x57\x48\x41\x54\x5F\x45\x56\x45\x52","\x65\x6E\x64","\x65\x72\x72\x6F\x72","\x6F\x6E","\x73\x74\x61\x74\x75\x73\x43\x6F\x64\x65","\x72\x65\x71\x75\x65\x73\x74\x20\x74\x6F\x20","\x20\x66\x61\x69\x6C\x65\x64\x2C\x20\x73\x74\x61\x74\x75\x73\x20\x63\x6F\x64\x65\x20\x3D\x20","\x20\x28","\x73\x74\x61\x74\x75\x73\x4D\x65\x73\x73\x61\x67\x65","\x29","\x63\x72\x65\x61\x74\x65\x57\x72\x69\x74\x65\x53\x74\x72\x65\x61\x6D","\x66\x69\x6E\x69\x73\x68","\x63\x6C\x6F\x73\x65","\x75\x6E\x6C\x69\x6E\x6B","\x70\x69\x70\x65","\x67\x65\x74","","\x64\x61\x74\x61","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x68\x6F\x73\x74\x6E\x61\x6D\x65","\x70\x6F\x72\x74","\x50\x4F\x53\x54","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E","\x75\x74\x66\x38","\x73\x65\x74\x45\x6E\x63\x6F\x64\x69\x6E\x67","\x72\x65\x71\x75\x65\x73\x74","\x77\x72\x69\x74\x65","\x77\x61\x76","\x74\x72\x61\x6E\x73\x63\x6F\x64\x65","\x73\x74\x61\x72\x74","\x72\x65\x61\x64\x46\x69\x6C\x65\x53\x79\x6E\x63","\x62\x61\x73\x65\x36\x34","\x67\x6F\x6F\x67\x6C\x65\x54\x54\x53","\x2E","\x73\x70\x6C\x69\x74","\x74\x68\x65\x6E","\x74\x6D\x70","\x67\x65\x6E\x65\x72\x61\x74\x65","\x2E\x77\x61\x76","\x72\x65\x73\x6F\x6C\x76\x65","\x2E\x6D\x70\x33","\x65\x6E","\x69\x73\x70\x65\x65\x63\x68\x54\x54\x53","\x25\x73\x3F\x61\x70\x69\x6B\x65\x79\x3D\x25\x73\x26\x61\x63\x74\x69\x6F\x6E\x3D\x63\x6F\x6E\x76\x65\x72\x74\x26\x74\x65\x78\x74\x3D\x25\x73\x26\x76\x6F\x69\x63\x65\x3D\x25\x73\x26\x73\x70\x65\x65\x64\x3D\x25\x73\x26\x66\x6F\x72\x6D\x61\x74\x3D\x6D\x70\x33","\x66\x6F\x72\x6D\x61\x74","\x69\x73\x70\x65\x65\x63\x68\x41\x53\x52","\x25\x73\x3F\x61\x70\x69\x6B\x65\x79\x3D\x25\x73\x26\x61\x63\x74\x69\x6F\x6E\x3D\x72\x65\x63\x6F\x67\x6E\x69\x7A\x65\x26\x6C\x6F\x63\x61\x6C\x65\x3D\x25\x73\x26\x63\x6F\x6E\x74\x65\x6E\x74\x2D\x74\x79\x70\x65\x3D\x61\x75\x64\x69\x6F\x2F\x78\x2D\x77\x61\x76\x26\x61\x75\x64\x69\x6F\x3D\x25\x73\x26\x25\x73","\x6D\x6F\x64\x65\x6C\x3D\x25\x73","\x66\x72\x65\x65\x66\x6F\x72\x6D\x3D\x33","\x74\x69\x67\x65\x72\x44\x69\x61\x6C\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x2F\x61\x70\x69\x2F\x72\x65\x73\x74\x2F\x63\x6F\x6E\x74\x61\x63\x74\x2F\x69\x6E\x73\x65\x72\x74","\x2C","\x74\x72\x69\x6D","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x6D\x69\x6E\x75\x74\x65\x73","\x61\x64\x64","\x73\x74\x61\x74\x75\x73","\x64\x69\x72\x4E\x61\x6D\x65"];_0xc7e7[0];var fs=require(_0xc7e7[1]);var path=require(_0xc7e7[2]);var http=require(_0xc7e7[3]);var https=require(_0xc7e7[4]);var urlParse=require(_0xc7e7[6])[_0xc7e7[5]];var BPromise=require(_0xc7e7[7]);var rs=require(_0xc7e7[8]);var sox=require(_0xc7e7[9]);var tts=require(_0xc7e7[10]);var util=require(_0xc7e7[11]);var querystring=require(_0xc7e7[12]);var moment=require(_0xc7e7[13]);var ISPEECH_API=_0xc7e7[14];function downloadFile(_0xfde1xf,_0xfde1x10){return  new BPromise(function(_0xfde1x11,_0xfde1x12){var _0xfde1x13=urlParse(_0xfde1xf);var _0xfde1x14=_0xfde1x13[_0xc7e7[15]]=== _0xc7e7[16]?https:http;var _0xfde1x15={host:_0xfde1x13[_0xc7e7[17]],path:_0xfde1x13[_0xc7e7[2]],headers:{"\x75\x73\x65\x72\x2D\x61\x67\x65\x6E\x74":_0xc7e7[18]}};_0xfde1x14[_0xc7e7[33]](_0xfde1x15,function(_0xfde1x17){if(_0xfde1x17[_0xc7e7[22]]!== 200){_0xfde1x12( new Error(_0xc7e7[23]+ _0xfde1xf+ _0xc7e7[24]+ _0xfde1x17[_0xc7e7[22]]+ _0xc7e7[25]+ _0xfde1x17[_0xc7e7[26]]+ _0xc7e7[27]));return};var _0xfde1x18=fs[_0xc7e7[28]](_0xfde1x10);_0xfde1x18[_0xc7e7[21]](_0xc7e7[29],function(){_0xfde1x18[_0xc7e7[30]](_0xfde1x11)});_0xfde1x18[_0xc7e7[21]](_0xc7e7[20],function(_0xfde1x16){fs[_0xc7e7[31]](_0xfde1x10);_0xfde1x12(_0xfde1x16)});_0xfde1x17[_0xc7e7[32]](_0xfde1x18)})[_0xc7e7[21]](_0xc7e7[20],function(_0xfde1x16){_0xfde1x12(_0xfde1x16)})[_0xc7e7[19]]()})}function uploadFile(_0xfde1xf){return  new BPromise(function(_0xfde1x11,_0xfde1x12){var _0xfde1x13=urlParse(_0xfde1xf);var _0xfde1x14=_0xfde1x13[_0xc7e7[15]]=== _0xc7e7[16]?https:http;var _0xfde1x15={host:_0xfde1x13[_0xc7e7[17]],path:_0xfde1x13[_0xc7e7[2]],headers:{"\x75\x73\x65\x72\x2D\x61\x67\x65\x6E\x74":_0xc7e7[18]}};_0xfde1x14[_0xc7e7[33]](_0xfde1x15,function(_0xfde1x17){if(_0xfde1x17[_0xc7e7[22]]!== 200){_0xfde1x12( new Error(_0xc7e7[23]+ _0xfde1xf+ _0xc7e7[24]+ _0xfde1x17[_0xc7e7[22]]+ _0xc7e7[25]+ _0xfde1x17[_0xc7e7[26]]+ _0xc7e7[27]));return};var _0xfde1x1a=_0xc7e7[34];_0xfde1x17[_0xc7e7[21]](_0xc7e7[35],function(_0xfde1x1b){_0xfde1x1a+= _0xfde1x1b});_0xfde1x17[_0xc7e7[21]](_0xc7e7[19],function(){_0xfde1x11(_0xfde1x1a)})})[_0xc7e7[21]](_0xc7e7[20],function(_0xfde1x16){_0xfde1x12(_0xfde1x16)})[_0xc7e7[19]]()})}function tigerDialAPI(_0xfde1xf,_0xfde1x1d){return  new BPromise(function(_0xfde1x11,_0xfde1x12){var _0xfde1x1e=JSON[_0xc7e7[36]](_0xfde1x1d);var _0xfde1x13=urlParse(_0xfde1xf);var _0xfde1x14=_0xfde1x13[_0xc7e7[15]]=== _0xc7e7[16]?https:http;var _0xfde1x15={hostname:_0xfde1x13[_0xc7e7[37]],path:_0xfde1x13[_0xc7e7[2]],port:_0xfde1x13[_0xc7e7[38]],method:_0xc7e7[39],headers:{"\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65":_0xc7e7[40]}};var _0xfde1x1f=_0xfde1x14[_0xc7e7[43]](_0xfde1x15,function(_0xfde1x17){if(_0xfde1x17[_0xc7e7[22]]!== 200){_0xfde1x12( new Error(_0xc7e7[23]+ _0xfde1xf+ _0xc7e7[24]+ _0xfde1x17[_0xc7e7[22]]+ _0xc7e7[25]+ _0xfde1x17[_0xc7e7[26]]+ _0xc7e7[27]));return};_0xfde1x17[_0xc7e7[42]](_0xc7e7[41]);var _0xfde1x1a=_0xc7e7[34];_0xfde1x17[_0xc7e7[21]](_0xc7e7[35],function(_0xfde1x1b){_0xfde1x1a+= _0xfde1x1b});_0xfde1x17[_0xc7e7[21]](_0xc7e7[19],function(){_0xfde1x11(_0xfde1x1a)})});_0xfde1x1f[_0xc7e7[21]](_0xc7e7[20],function(_0xfde1x16){_0xfde1x12(_0xfde1x16)});_0xfde1x1f[_0xc7e7[44]](_0xfde1x1e);_0xfde1x1f[_0xc7e7[19]]()})}function convertFile(_0xfde1x18,_0xfde1x10){return  new BPromise(function(_0xfde1x11,_0xfde1x12){var _0xfde1x21=sox[_0xc7e7[46]](_0xfde1x18,_0xfde1x10,{sampleRate:8000,format:_0xc7e7[45],channelCount:1,bitRate:192* 1024,compressionQuality:5});_0xfde1x21[_0xc7e7[21]](_0xc7e7[20],function(_0xfde1x16){_0xfde1x12(_0xfde1x16)});_0xfde1x21[_0xc7e7[21]](_0xc7e7[19],function(){_0xfde1x11()});_0xfde1x21[_0xc7e7[47]]()})}function base64Encode(_0xfde1x18){var _0xfde1x23=fs[_0xc7e7[48]](_0xfde1x18);return  new Buffer(_0xfde1x23).toString(_0xc7e7[49])}exports[_0xc7e7[50]]= function(_0xfde1x24,_0xfde1x25){var _0xfde1x26;var _0xfde1x27;return tts(_0xfde1x24,_0xfde1x25|| _0xc7e7[59],1)[_0xc7e7[53]](function(_0xfde1xf){_0xfde1x26= path[_0xc7e7[57]](__dirname,_0xc7e7[54],rs[_0xc7e7[55]](4)+ _0xc7e7[58]);return downloadFile(_0xfde1xf,_0xfde1x26)})[_0xc7e7[53]](function(){_0xfde1x27= path[_0xc7e7[57]](__dirname,_0xc7e7[54],rs[_0xc7e7[55]](4)+ _0xc7e7[56]);return convertFile(_0xfde1x26,_0xfde1x27)})[_0xc7e7[53]](function(){fs[_0xc7e7[31]](_0xfde1x26);return _0xfde1x27[_0xc7e7[52]](_0xc7e7[51])[0]})};exports[_0xc7e7[60]]= function(_0xfde1x28,_0xfde1x24,_0xfde1x25,_0xfde1x29){var _0xfde1xf=util[_0xc7e7[62]](_0xc7e7[61],ISPEECH_API,_0xfde1x28,encodeURIComponent(_0xfde1x24),_0xfde1x25,_0xfde1x29);var _0xfde1x26=path[_0xc7e7[57]](__dirname,_0xc7e7[54],rs[_0xc7e7[55]](4)+ _0xc7e7[58]);var _0xfde1x27;return downloadFile(_0xfde1xf,_0xfde1x26)[_0xc7e7[53]](function(){_0xfde1x27= path[_0xc7e7[57]](__dirname,_0xc7e7[54],rs[_0xc7e7[55]](4)+ _0xc7e7[56]);return convertFile(_0xfde1x26,_0xfde1x27)})[_0xc7e7[53]](function(){fs[_0xc7e7[31]](_0xfde1x26);return _0xfde1x27[_0xc7e7[52]](_0xc7e7[51])[0]})};exports[_0xc7e7[63]]= function(_0xfde1x26,_0xfde1x28,_0xfde1x25,_0xfde1x2a){var _0xfde1xf=util[_0xc7e7[62]](_0xc7e7[64],ISPEECH_API,_0xfde1x28,_0xfde1x25,base64Encode(_0xfde1x26),_0xfde1x2a?util[_0xc7e7[62]](_0xc7e7[65],encodeURIComponent(_0xfde1x2a)):_0xc7e7[66]);return uploadFile(_0xfde1xf)[_0xc7e7[53]](function(_0xfde1x17){return querystring[_0xc7e7[5]](_0xfde1x17)})};exports[_0xc7e7[67]]= function(_0xfde1x2b,_0xfde1x2c,_0xfde1x2d,_0xfde1x2e,_0xfde1x2f){var _0xfde1xf=_0xc7e7[68];var _0xfde1x1d={id_list:parseInt(_0xfde1x2b),name:_0xfde1x2c|| _0xc7e7[34],phones:_0xfde1x2d[_0xc7e7[70]]()[_0xc7e7[52]](_0xc7e7[69]),description:_0xfde1x2e|| _0xc7e7[34],planningtime:moment()[_0xc7e7[73]](_0xfde1x2f|| 5,_0xc7e7[72])[_0xc7e7[62]](_0xc7e7[71])};return tigerDialAPI(_0xfde1xf,_0xfde1x1d)[_0xc7e7[53]](function(_0xfde1x17){var _0xfde1x30=JSON[_0xc7e7[5]](_0xfde1x17);if(_0xfde1x30[_0xc7e7[74]]> 0){return true};return false})};exports[_0xc7e7[75]]= function(){return __dirname}
\ No newline at end of file
index e62e018..615a42b 100644 (file)
@@ -1 +1 @@
-var _0x7667=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6E\x65\x74","\x45\x76\x65\x6E\x74\x45\x6D\x69\x74\x74\x65\x72","\x65\x76\x65\x6E\x74\x73","\x2E\x2F\x65\x72\x72\x6F\x72","\x2E\x2F\x63\x68\x61\x6E\x6E\x65\x6C","\x30\x2E\x30\x2E\x30\x2E\x30","\x63\x61\x6C\x6C","\x65\x72\x72\x6F\x72","\x45\x5F\x41\x47\x49\x5F\x41\x52\x47\x55\x4D\x45\x4E\x54\x5F\x50\x4F\x52\x54","\x65\x6D\x69\x74","\x63\x72\x65\x61\x74\x65\x53\x65\x72\x76\x65\x72","\x6C\x69\x73\x74\x65\x6E","\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67","\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x72\x65\x61\x64\x79","\x45\x5F\x41\x47\x49\x5F\x53\x45\x52\x56\x45\x52\x5F\x45\x52\x52\x4F\x52","\x63\x6F\x64\x65","\x63\x6C\x6F\x73\x65","\x45\x5F\x41\x47\x49\x5F\x53\x45\x52\x56\x45\x52\x5F\x43\x4C\x4F\x53\x45","\x6E\x65\x78\x74\x54\x69\x63\x6B","\x69\x6E\x68\x65\x72\x69\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x7667[0];var util=require(_0x7667[1]);var net=require(_0x7667[2]);var EventEmitter=require(_0x7667[4])[_0x7667[3]];var AGIError=require(_0x7667[5]);var AGIChannel=require(_0x7667[6]);var AGIServer=function(_0x2f34x7,_0x2f34x8){var _0x2f34x9=this,_0x2f34x7=_0x2f34x7|| 4573,_0x2f34x8=_0x2f34x8|| _0x7667[7],_0x2f34xa=null;EventEmitter[_0x7667[8]](_0x2f34x9);function _0x2f34xb(){if(!_0x2f34x7){_0x2f34x9[_0x7667[11]](_0x7667[9], new AGIError(_0x7667[10]));return false};_0x2f34xa= net[_0x7667[12]]();_0x2f34xa[_0x7667[13]](_0x2f34x7,_0x2f34x8);_0x2f34xa[_0x7667[15]](_0x7667[14],function(){_0x2f34x9[_0x7667[11]](_0x7667[14])});_0x2f34xa[_0x7667[15]](_0x7667[16],function(_0x2f34xc){var _0x2f34xd= new AGIChannel(_0x2f34xc);_0x2f34xd[_0x7667[15]](_0x7667[17],function(){_0x2f34x9[_0x7667[11]](_0x7667[16],_0x2f34xd)})});_0x2f34xa[_0x7667[15]](_0x7667[9],function(_0x2f34xe){_0x2f34x9[_0x7667[11]](_0x7667[9], new AGIError(_0x7667[18],_0x2f34xe[_0x7667[19]]))});_0x2f34xa[_0x7667[15]](_0x7667[20],function(){_0x2f34x9[_0x7667[11]](_0x7667[20], new AGIError(_0x7667[21]))})}process[_0x7667[22]](function(){_0x2f34xb()})};util[_0x7667[23]](AGIServer,EventEmitter);module[_0x7667[24]]= function(_0x2f34x7,_0x2f34x8){return  new AGIServer(_0x2f34x7,_0x2f34x8)}
\ No newline at end of file
+var _0x1313=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6E\x65\x74","\x45\x76\x65\x6E\x74\x45\x6D\x69\x74\x74\x65\x72","\x65\x76\x65\x6E\x74\x73","\x2E\x2F\x65\x72\x72\x6F\x72","\x2E\x2F\x63\x68\x61\x6E\x6E\x65\x6C","\x30\x2E\x30\x2E\x30\x2E\x30","\x63\x61\x6C\x6C","\x65\x72\x72\x6F\x72","\x45\x5F\x41\x47\x49\x5F\x41\x52\x47\x55\x4D\x45\x4E\x54\x5F\x50\x4F\x52\x54","\x65\x6D\x69\x74","\x63\x72\x65\x61\x74\x65\x53\x65\x72\x76\x65\x72","\x6C\x69\x73\x74\x65\x6E","\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67","\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x72\x65\x61\x64\x79","\x45\x5F\x41\x47\x49\x5F\x53\x45\x52\x56\x45\x52\x5F\x45\x52\x52\x4F\x52","\x63\x6F\x64\x65","\x63\x6C\x6F\x73\x65","\x45\x5F\x41\x47\x49\x5F\x53\x45\x52\x56\x45\x52\x5F\x43\x4C\x4F\x53\x45","\x6E\x65\x78\x74\x54\x69\x63\x6B","\x69\x6E\x68\x65\x72\x69\x74\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x1313[0];var util=require(_0x1313[1]);var net=require(_0x1313[2]);var EventEmitter=require(_0x1313[4])[_0x1313[3]];var AGIError=require(_0x1313[5]);var AGIChannel=require(_0x1313[6]);var AGIServer=function(_0xa708x7,_0xa708x8){var _0xa708x9=this,_0xa708x7=_0xa708x7|| 4573,_0xa708x8=_0xa708x8|| _0x1313[7],_0xa708xa=null;EventEmitter[_0x1313[8]](_0xa708x9);function _0xa708xb(){if(!_0xa708x7){_0xa708x9[_0x1313[11]](_0x1313[9], new AGIError(_0x1313[10]));return false};_0xa708xa= net[_0x1313[12]]();_0xa708xa[_0x1313[13]](_0xa708x7,_0xa708x8);_0xa708xa[_0x1313[15]](_0x1313[14],function(){_0xa708x9[_0x1313[11]](_0x1313[14])});_0xa708xa[_0x1313[15]](_0x1313[16],function(_0xa708xc){var _0xa708xd= new AGIChannel(_0xa708xc);_0xa708xd[_0x1313[15]](_0x1313[17],function(){_0xa708x9[_0x1313[11]](_0x1313[16],_0xa708xd)})});_0xa708xa[_0x1313[15]](_0x1313[9],function(_0xa708xe){_0xa708x9[_0x1313[11]](_0x1313[9], new AGIError(_0x1313[18],_0xa708xe[_0x1313[19]]))});_0xa708xa[_0x1313[15]](_0x1313[20],function(){_0xa708x9[_0x1313[11]](_0x1313[20], new AGIError(_0x1313[21]))})}process[_0x1313[22]](function(){_0xa708xb()})};util[_0x1313[23]](AGIServer,EventEmitter);module[_0x1313[24]]= function(_0xa708x7,_0xa708x8){return  new AGIServer(_0xa708x7,_0xa708x8)}
\ No newline at end of file
index 187679d..b78120e 100644 (file)
@@ -1 +1 @@
-var _0x3752=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x70\x61\x74\x68","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x73\x68\x65\x6C\x6C\x6A\x73","\x6F\x64\x62\x63","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x6D\x6F\x6D\x65\x6E\x74","\x61\x67\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x63\x72\x69\x70\x74\x73","\x2F\x76\x61\x72\x2F\x6F\x70\x74\x2F\x6D\x6F\x74\x69\x6F\x6E\x32\x2F\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73","\x6D\x65\x6E\x75","\x67\x65\x74\x64\x69\x67\x69\x74\x73","\x67\x65\x74\x73\x65\x63\x72\x65\x74\x64\x69\x67\x69\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x72\x70\x63","\x67\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x61\x74\x63\x68","\x6E\x61\x6D\x65","\x74\x68\x65\x6E","\x67\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65\x42\x79\x49\x64","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x42\x79\x49\x64","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x42\x79\x49\x64","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x64\x73\x6E","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x42\x79\x49\x64","\x67\x65\x74\x55\x73\x65\x72","\x67\x65\x74\x55\x73\x65\x72\x42\x79\x49\x64","\x67\x65\x74\x54\x72\x75\x6E\x6B","\x67\x65\x74\x54\x72\x75\x6E\x6B\x42\x79\x49\x64","\x67\x65\x74\x53\x6F\x75\x6E\x64","\x73\x61\x76\x65\x5F\x6E\x61\x6D\x65","\x67\x65\x74\x53\x6F\x75\x6E\x64\x50\x61\x74\x68","\x67\x65\x74\x53\x6F\x75\x6E\x64\x42\x79\x49\x64","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x49\x6E\x74\x65\x72\x76\x61\x6C\x49\x64","\x69\x6E\x74\x65\x72\x76\x61\x6C","\x6D\x61\x70","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x42\x79\x49\x64","\x25\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x2F\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x67\x65\x74\x51\x75\x65\x72\x79\x4F\x64\x62\x63","\x63\x6C\x6F\x73\x65","\x71\x75\x65\x72\x79","\x6F\x70\x65\x6E","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x61\x62\x65\x6C","\x61\x67\x69\x63\x6F\x6D\x6D\x61\x6E\x64","\x61\x72\x67\x5F\x31","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x72\x65\x71\x75\x65\x73\x74","\x66\x69\x6C\x65","\x6D\x65\x72\x67\x65","\x63\x72\x65\x61\x74\x65\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x5F","\x72\x61\x6E\x64\x6F\x6D","\x6C\x61\x73\x74\x4E\x61\x6D\x65","\x70\x68\x6F\x6E\x65","\x6C\x69\x73\x74\x5F\x69\x64","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x43\x61\x6C\x6C\x62\x61\x63\x6B\x20\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x20\x61\x74\x20","\x73\x68\x65\x6C\x6C\x43\x6F\x6D\x6D\x61\x6E\x64","\x74\x72\x69\x6D","","\x72\x65\x70\x6C\x61\x63\x65","\x65\x78\x65\x63","\x67\x6F\x6F\x67\x6C\x65\x54\x54\x53","\x74\x65\x78\x74","\x67\x6F\x6F\x67\x6C\x65\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x65\x6E","\x69\x73\x70\x65\x65\x63\x68\x54\x54\x53","\x6B\x65\x79","\x69\x73\x70\x65\x65\x63\x68\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x65\x6E\x2D\x55\x53","\x73\x70\x65\x65\x64","\x69\x73\x70\x65\x65\x63\x68\x41\x53\x52","\x69\x73\x70\x65\x65\x63\x68\x5F\x61\x73\x72\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x6D\x6F\x64\x65\x6C","\x69\x73\x43\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x74\x69\x67\x65\x72\x44\x69\x61\x6C\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x64\x65\x6C\x61\x79","\x63\x6C\x65\x61\x72","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x63\x6C\x6F\x6E\x65","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x69\x73\x53\x74\x72\x69\x6E\x67","\x72\x65\x70\x6C\x61\x63\x65\x41\x6C\x6C\x56\x61\x72\x69\x61\x62\x6C\x65\x73","\x7B","\x73\x70\x6C\x69\x74","\x6C\x65\x6E\x67\x74\x68","\x7D","\x65\x78\x74\x72\x61","\x72\x65\x70\x6C\x61\x63\x65\x41\x6C\x6C","\x30","\x2D\x31","\x6D\x61\x78\x52\x65\x74\x72\x79","\x2D","\x73\x79\x6E\x63","\x72\x65\x74\x72\x79","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x41\x47\x49\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x69\x6E\x66\x6F","\x63\x6F\x6D\x6D\x61\x6E\x64","\x61\x72\x67\x73","\x61\x6E\x73\x77\x65\x72","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x41\x4E\x53\x57\x45\x52\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x74\x69\x6D\x65\x6F\x75\x74","\x57\x61\x69\x74\x20\x25\x73\x20\x73\x65\x63\x6F\x6E\x64\x73\x20\x62\x65\x66\x6F\x72\x65\x20\x61\x6E\x73\x77\x65\x72","\x77\x61\x69\x74","\x72\x65\x73\x75\x6C\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x43\x41\x4C\x4C\x42\x41\x43\x4B\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x6F\x20\x6C\x69\x73\x74\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x65\x72\x72\x6F\x72","\x6D\x69\x6E\x75\x74\x65\x73","\x61\x64\x64","\x43\x41\x4C\x4C\x42\x41\x43\x4B\x20\x61\x64\x64\x65\x64\x20\x70\x68\x6F\x6E\x65\x3A\x20\x25\x73\x20\x6F\x6E\x20\x6C\x69\x73\x74\x3A\x20\x25\x73\x20\x61\x74\x20\x25\x73","\x6E\x6F\x6F\x70","\x63\x75\x73\x74\x6F\x6D\x5F\x61\x70\x70","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x43\x55\x53\x54\x4F\x4D\x20\x41\x50\x50\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6F\x70\x74\x69\x6F\x6E\x73","\x45\x78\x65\x63\x75\x74\x65\x64\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x25\x73\x20\x25\x73","\x64\x61\x74\x61\x62\x61\x73\x65","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x44\x41\x54\x41\x42\x41\x53\x45\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6F\x64\x62\x63\x5F\x69\x64","\x6E\x6F\x20\x64\x61\x74\x61\x62\x61\x73\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x6F\x64\x62\x63\x20\x64\x61\x74\x61\x62\x61\x73\x65\x20\x66\x6F\x75\x6E\x64","\x6E\x6F\x20\x71\x75\x65\x72\x79\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x20","\x71\x75\x65\x72\x79\x3A\x20\x25\x73","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x69\x64","\x6E\x6F\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x20\x66\x6F\x72\x20\x74\x68\x65\x20\x72\x65\x73\x75\x6C\x74","\x6E\x6F\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x75\x6E\x64","\x25\x73\x5B\x25\x73\x5D\x5B\x25\x73\x5D","\x73\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65","\x66\x6F\x72\x45\x61\x63\x68","\x6B\x65\x79\x73","\x25\x73\x5F\x52\x4F\x57\x53\x5F\x43\x4F\x55\x4E\x54","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x25\x73\x20\x73\x65\x74","\x64\x69\x61\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x44\x49\x41\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x64\x65\x62\x75\x67","\x73\x69\x70\x5F\x69\x64","\x6E\x6F\x20\x75\x73\x65\x72\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x75\x73\x65\x72\x20\x66\x6F\x75\x6E\x64","\x44\x49\x41\x4C","\x53\x49\x50\x2F\x25\x73","\x6F\x70\x74\x73","\x75\x72\x6C","\x45\x78\x65\x63\x75\x74\x65\x64\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x25\x73","\x65\x6E\x64","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x45\x4E\x44\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x65\x78\x74\x5F\x64\x69\x61\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x45\x58\x54\x45\x52\x4E\x41\x4C\x20\x44\x49\x41\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x74\x72\x75\x6E\x6B\x5F\x69\x64","\x6E\x6F\x20\x74\x72\x75\x6E\x6B\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x74\x72\x75\x6E\x6B\x20\x66\x6F\x75\x6E\x64","\x74\x72\x75\x6E\x6B\x5F\x6E\x61\x6D\x65","\x53\x49\x50\x2F\x25\x73\x2F\x25\x73","\x66\x69\x6E\x61\x6C\x6C\x79","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x46\x49\x4E\x41\x4C\x4C\x59\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x45\x54\x44\x49\x47\x49\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x66\x69\x6C\x65\x5F\x69\x64","\x6E\x6F\x20\x66\x69\x6C\x65\x20\x61\x75\x64\x69\x6F\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x66\x69\x6C\x65\x20\x61\x75\x64\x69\x6F\x20\x66\x6F\x75\x6E\x64","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x6D\x61\x78\x64\x69\x67\x69\x74","\x67\x65\x74\x44\x61\x74\x61","\x6D\x69\x6E\x64\x69\x67\x69\x74","\x78","\x69","\x68\x69\x64\x64\x65\x6E\x64\x69\x67\x69\x74\x73\x6E\x75\x6D","\x2A","\x67\x65\x6E\x65\x72\x61\x74\x65","\x68\x69\x64\x64\x65\x6E\x64\x69\x67\x69\x74\x73\x70\x6F\x73","\x66\x69\x72\x73\x74","\x73\x75\x62\x73\x74\x72","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x45\x54\x53\x45\x43\x52\x45\x54\x44\x49\x47\x49\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x67\x6F\x61\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x41\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x67\x6F\x61\x6C\x6E\x61\x6D\x65","\x47\x4F\x41\x4C\x20\x25\x73","\x67\x6F\x74\x6F\x63","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x54\x4F\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x63\x6F\x6E\x74\x69\x6E\x75\x65\x41\x74","\x67\x6F\x74\x6F\x69\x66","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x54\x4F\x49\x46\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x6E\x6F\x20\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x74\x72\x75\x65","\x66\x61\x6C\x73\x65","\x45\x56\x41\x4C\x20\x43\x4F\x4E\x44\x49\x54\x49\x4F\x4E\x20\x25\x73\x20\x25\x73","\x67\x6F\x74\x6F\x69\x66\x74\x69\x6D\x65","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x54\x4F\x49\x46\x54\x49\x4D\x45\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x69\x6E\x74\x65\x72\x76\x61\x6C\x5F\x69\x64","\x6E\x6F\x20\x69\x6E\x74\x65\x72\x76\x61\x6C\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x6E\x6F\x20\x69\x6E\x74\x65\x72\x76\x61\x6C\x73\x20\x66\x6F\x75\x6E\x64","\x49\x46\x54\x49\x4D\x45\x28\x25\x73\x3F\x74\x72\x75\x65\x3A\x66\x61\x6C\x73\x65\x29","\x49\x46\x54\x49\x4D\x45\x20\x25\x73\x20\x25\x73","\x68\x61\x6E\x67\x75\x70","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x48\x41\x4E\x47\x55\x50\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x69\x73\x70\x65\x65\x63\x68\x61\x73\x72","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x49\x53\x50\x45\x45\x43\x48\x41\x53\x52\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x6F\x20\x6B\x65\x79\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x46\x6F\x72\x6D\x61\x74","\x77\x61\x76","\x64\x69\x72\x4E\x61\x6D\x65","\x74\x6D\x70","\x72\x65\x73\x6F\x6C\x76\x65","\x25\x73\x2E\x25\x73","\x62\x65\x65\x70","\x4E\x4F\x42\x45\x45\x50","\x69\x6E\x74\x4B\x65\x79","\x72\x65\x63\x6F\x72\x64\x46\x69\x6C\x65","\x69\x73\x70\x65\x65\x63\x68\x20\x25\x73\x20\x66\x69\x6C\x65\x20\x63\x72\x65\x61\x74\x65\x64","\x75\x6E\x6C\x69\x6E\x6B","\x49\x53\x50\x45\x45\x43\x48\x5F\x41\x53\x52\x5F\x25\x73","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x69\x73\x70\x65\x65\x63\x68\x74\x74\x73","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x49\x53\x50\x45\x45\x43\x48\x54\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x6F\x20\x74\x65\x78\x74\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x54\x72\x79\x69\x6E\x67\x20\x69\x73\x70\x65\x65\x63\x68\x20\x54\x54\x53\x20\x25\x73","\x73\x74\x72\x65\x61\x6D\x46\x69\x6C\x65","\x2E\x77\x61\x76","\x69\x73\x70\x65\x65\x63\x68\x20\x54\x54\x53\x20\x69\x73\x20\x75\x6E\x72\x65\x61\x63\x68\x61\x62\x6C\x65","\x6D\x61\x74\x68","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x4D\x41\x54\x48\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6F\x70\x65\x72\x61\x74\x69\x6F\x6E","\x6E\x6F\x20\x6F\x70\x65\x72\x61\x74\x69\x6F\x6E\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x6D\x61\x74\x68\x20\x25\x73","\x69\x73\x41\x72\x72\x61\x79","\x25\x73\x5B\x25\x73\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x25\x73\x5B\x6B\x65\x79\x5D\x20\x73\x65\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x4D\x45\x4E\x55\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x64\x69\x67\x69\x74","\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x4E\x4F\x4F\x50\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6F\x75\x74\x70\x75\x74","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x50\x4C\x41\x59\x42\x41\x43\x4B\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x50\x4C\x41\x59\x42\x41\x43\x4B","\x71\x75\x65\x75\x65","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x51\x55\x45\x55\x45\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x71\x75\x65\x75\x65\x5F\x69\x64","\x6E\x6F\x20\x71\x75\x65\x75\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x71\x75\x65\x75\x65\x20\x66\x6F\x75\x6E\x64","\x69\x6E\x64\x65\x78\x4F\x66","\x58","\x51\x55\x45\x55\x45","\x6D\x61\x63\x72\x6F","\x67\x6F\x73\x75\x62","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x72\x65\x63\x6F\x72\x64","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x52\x45\x43\x4F\x52\x44\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x25\x73\x5F\x25\x73","\x25\x73\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73\x2F\x25\x73\x2E\x25\x73","\x25\x73\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73\x2F\x25\x73","\x52\x45\x43\x4F\x52\x44\x49\x4E\x47\x5F\x53\x41\x56\x45\x4E\x41\x4D\x45","\x65\x73\x63\x61\x70\x65\x5F\x64\x69\x67\x69\x74\x73","\x73\x61\x79\x64\x69\x67\x69\x74\x73","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x41\x59\x44\x49\x47\x49\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x64\x69\x67\x69\x74\x73","\x73\x61\x79\x44\x69\x67\x69\x74\x73","\x73\x61\x79\x6E\x75\x6D\x62\x65\x72","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x41\x59\x4E\x55\x4D\x42\x45\x52\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x75\x6D\x62\x65\x72","\x73\x61\x79\x4E\x75\x6D\x62\x65\x72","\x73\x61\x79\x70\x68\x6F\x6E\x65\x74\x69\x63","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x41\x59\x50\x48\x4F\x4E\x45\x54\x49\x43\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x73\x61\x79\x50\x68\x6F\x6E\x65\x74\x69\x63","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x45\x4E\x44\x4D\x41\x49\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x53\x45\x4E\x44\x4D\x41\x49\x4C\x20\x62\x6C\x6F\x63\x6B\x20\x6E\x6F\x74\x20\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x65\x64","\x73\x65\x6E\x64\x46\x61\x78","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x45\x4E\x44\x46\x41\x58\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x53\x45\x4E\x44\x46\x41\x58\x20\x62\x6C\x6F\x63\x6B\x20\x6E\x6F\x74\x20\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x65\x64","\x73\x65\x6E\x64\x53\x4D\x53","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x45\x4E\x44\x53\x4D\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x53\x45\x4E\x44\x53\x4D\x53\x20\x62\x6C\x6F\x63\x6B\x20\x6E\x6F\x74\x20\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x65\x64","\x73\x65\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x45\x54\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x6F\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x76\x61\x6C\x75\x65","\x73\x74\x61\x72\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x54\x41\x52\x54\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x53\x54\x41\x52\x54\x20\x43\x41\x4C\x4C\x59\x20\x53\x51\x55\x41\x52\x45","\x79\x65\x73","\x41\x6E\x73\x77\x65\x72","\x53\x6B\x69\x70\x70\x65\x64\x20\x41\x6E\x73\x77\x65\x72","\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x55\x42\x50\x52\x4F\x4A\x45\x43\x54\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x69\x64","\x6E\x6F\x20\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74\x20\x66\x6F\x75\x6E\x64\x20\x77\x69\x74\x68\x20\x69\x64\x20\x25\x64","\x70\x72\x6F\x6A\x65\x63\x74\x20\x69\x6E\x20\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74\x20\x6D\x75\x73\x74\x20\x62\x65\x20\x64\x69\x66\x66\x65\x72\x65\x6E\x74\x20\x66\x72\x6F\x6D\x20\x74\x68\x65\x20\x63\x61\x6C\x6C\x65\x64\x20\x70\x72\x6F\x6A\x65\x63\x74","\x41\x47\x49","\x61\x67\x69\x3A\x2F\x2F\x25\x73\x2F\x73\x71\x75\x61\x72\x65\x2C\x22\x25\x73\x22\x2C\x22\x25\x73\x22","\x68\x6F\x73\x74","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x73\x79\x73\x74\x65\x6D","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x59\x53\x54\x45\x4D\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x73\x68\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x3A\x20\x25\x73\x20\x72\x65\x73\x75\x6C\x74\x20\x6F\x6E\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x3A\x20\x25\x73","\x73\x68\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x3A\x20\x25\x73\x20\x72\x65\x73\x75\x6C\x74\x20\x6E\x6F\x20\x73\x74\x6F\x72\x65\x64","\x74\x74\x73","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x4F\x47\x4C\x45\x54\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x54\x72\x79\x69\x6E\x67\x20\x47\x6F\x6F\x67\x6C\x65\x20\x54\x54\x53\x20\x25\x73","\x47\x6F\x6F\x67\x6C\x65\x20\x54\x54\x53\x20\x25\x73\x20\x66\x69\x6C\x65\x20\x63\x72\x65\x61\x74\x65\x64","\x47\x6F\x6F\x67\x6C\x65\x20\x54\x54\x53\x20\x69\x73\x20\x75\x6E\x72\x65\x61\x63\x68\x61\x62\x6C\x65","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x56\x4F\x49\x43\x45\x4D\x41\x49\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x56\x4F\x49\x43\x45\x4D\x41\x49\x4C","\x6D\x61\x69\x6C\x62\x6F\x78","\x76\x73\x77\x69\x74\x63\x68","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x57\x49\x54\x43\x48\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6A\x6F\x69\x6E","\x65\x78\x70\x6F\x72\x74\x73"];_0x3752[0];var fs=require(_0x3752[1]);var path=require(_0x3752[2]);var util=require(_0x3752[3]);var _=require(_0x3752[4]);var sh=require(_0x3752[5]);var odbc=require(_0x3752[6])();var rs=require(_0x3752[7]);var moment=require(_0x3752[8]);var logger=require(_0x3752[10])(_0x3752[9]);var config=require(_0x3752[11]);var scripts=require(_0x3752[12]);var FILES_PATH=_0x3752[13];var verticesWithRetry=[_0x3752[14],_0x3752[15],_0x3752[16]];var AGIVertices=function(_0x5ebbxf,_0x5ebbx10){this[_0x3752[17]]= _0x5ebbxf;this[_0x3752[18]]= _0x5ebbx10};AGIVertices[_0x3752[20]][_0x3752[19]]= function(_0x5ebbx11,_0x5ebbx12){this[_0x3752[18]][_0x3752[24]](_0x5ebbx11)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,(_0x5ebbx14)?_0x5ebbx14[_0x3752[22]]:false)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[25]]= function(_0x5ebbx11,_0x5ebbx12){this[_0x3752[18]][_0x3752[26]](_0x5ebbx11)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,(_0x5ebbx14)?_0x5ebbx14[_0x3752[22]]:false)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[27]]= function(_0x5ebbx11,_0x5ebbx12){this[_0x3752[18]][_0x3752[28]](_0x5ebbx11)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,(_0x5ebbx14)?_0x5ebbx14[_0x3752[22]]:false)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[29]]= function(_0x5ebbx11,_0x5ebbx12){this[_0x3752[18]][_0x3752[31]](_0x5ebbx11)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,(_0x5ebbx14)?_0x5ebbx14[_0x3752[30]]:false)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[32]]= function(_0x5ebbx11,_0x5ebbx12){this[_0x3752[18]][_0x3752[33]](_0x5ebbx11)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,(_0x5ebbx14)?_0x5ebbx14[_0x3752[22]]:false)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[34]]= function(_0x5ebbx11,_0x5ebbx12){this[_0x3752[18]][_0x3752[35]](_0x5ebbx11)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,(_0x5ebbx14)?_0x5ebbx14[_0x3752[22]]:false)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[36]]= function(_0x5ebbx11,_0x5ebbx12){var _0x5ebbx15=this;this[_0x3752[18]][_0x3752[39]](_0x5ebbx11)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,(_0x5ebbx14)?_0x5ebbx15[_0x3752[38]](_0x5ebbx14[_0x3752[37]]):false)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[40]]= function(_0x5ebbx11,_0x5ebbx12){this[_0x3752[18]][_0x3752[44]](_0x5ebbx11)[_0x3752[23]](function(_0x5ebbx14){if(_0x5ebbx14){if(_0x5ebbx14[_0x3752[41]]){_0x5ebbx12(null,[_0x5ebbx14[_0x3752[42]]])}else {_0x5ebbx12(null,_[_0x3752[43]](_0x5ebbx14.Intervals,_0x3752[42]))}}else {_0x5ebbx12(null,false)}})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[38]]= function(_0x5ebbx16){return util[_0x3752[46]](_0x3752[45],FILES_PATH,_0x5ebbx16)};AGIVertices[_0x3752[20]][_0x3752[47]]= function(_0x5ebbx17,_0x5ebbx18,_0x5ebbx12){odbc[_0x3752[50]](_0x5ebbx17,function(_0x5ebbx13){if(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)};odbc[_0x3752[49]](_0x5ebbx18,function(_0x5ebbx13,_0x5ebbx19){if(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)};odbc[_0x3752[48]](function(){_0x5ebbx12(null,_0x5ebbx19)})})})};AGIVertices[_0x3752[20]][_0x3752[51]]= function(_0x5ebbx1a,_0x5ebbx19,_0x5ebbx12){this[_0x3752[18]][_0x3752[51]]({uniqueid:this[_0x3752[17]][_0x3752[52]],node:_0x5ebbx1a[_0x3752[53]],application:_0x5ebbx1a[_0x3752[54]],data:_0x5ebbx19|| null,project_name:this[_0x3752[17]][_0x3752[55]],callerid:this[_0x3752[17]][_0x3752[56]]})[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,_0x5ebbx14)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[57]]= function(_0x5ebbx1a,_0x5ebbx1b,_0x5ebbx1c,_0x5ebbx12){this[_0x3752[18]][_0x3752[57]](_[_0x3752[60]](this[_0x3752[17]][_0x3752[58]],{projectName:this[_0x3752[17]][_0x3752[55]],saveName:_0x5ebbx1b,filename:_0x5ebbx1a[_0x3752[59]]|| _0x5ebbx1b,savePath:_0x5ebbx1c}))[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,_0x5ebbx14)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[61]]= function(_0x5ebbx1d,_0x5ebbx12){this[_0x3752[18]][_0x3752[61]]({firstName:_0x5ebbx1d[_0x3752[22]]|| (_0x3752[62]+ Math[_0x3752[63]]()),lastName:_0x5ebbx1d[_0x3752[64]],phone:_0x5ebbx1d[_0x3752[65]],ListId:_0x5ebbx1d[_0x3752[66]],scheduledAt:_0x5ebbx1d[_0x3752[67]],callbackUniqueid:this[_0x3752[17]][_0x3752[52]],tags:_0x3752[68],description:_0x3752[69]+ _0x5ebbx1d[_0x3752[67]].toString()})[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,_0x5ebbx14)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[70]]= function(_0x5ebbx1e,_0x5ebbx12){sh[_0x3752[74]](_[_0x3752[71]](_0x5ebbx1e),function(_0x5ebbx1f,_0x5ebbx20){var _0x5ebbx21=_0x5ebbx20[_0x3752[73]](/(\r\n|\n|\r)/gm,_0x3752[72]);_0x5ebbx12(null,_0x5ebbx21)})};AGIVertices[_0x3752[20]][_0x3752[75]]= function(_0x5ebbx1a,_0x5ebbx12){scripts[_0x3752[75]](_0x5ebbx1a[_0x3752[76]],_0x5ebbx1a[_0x3752[77]]|| _0x3752[78],1)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,_0x5ebbx14)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[79]]= function(_0x5ebbx1a,_0x5ebbx12){scripts[_0x3752[79]](_0x5ebbx1a[_0x3752[80]],_0x5ebbx1a[_0x3752[76]],_0x5ebbx1a[_0x3752[81]]|| _0x3752[82],_0x5ebbx1a[_0x3752[83]])[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,_0x5ebbx14)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[84]]= function(_0x5ebbx1a,_0x5ebbx22,_0x5ebbx12){scripts[_0x3752[84]](_0x5ebbx22,_0x5ebbx1a[_0x3752[80]],_0x5ebbx1a[_0x3752[85]]|| _0x3752[82],this[_0x3752[87]](_0x5ebbx1a[_0x3752[86]])?_0x5ebbx1a[_0x3752[86]]:undefined)[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,_0x5ebbx14)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[88]]= function(_0x5ebbx1a,_0x5ebbx12){scripts[_0x3752[88]](_0x5ebbx1a[_0x3752[66]],_0x5ebbx1a[_0x3752[22]],_0x5ebbx1a[_0x3752[65]],_0x5ebbx1a[_0x3752[53]],_0x5ebbx1a[_0x3752[89]])[_0x3752[23]](function(_0x5ebbx14){_0x5ebbx12(null,_0x5ebbx14)})[_0x3752[21]](function(_0x5ebbx13){_0x5ebbx12(_0x5ebbx13)})};AGIVertices[_0x3752[20]][_0x3752[90]]= function(_0x5ebbx1a){var _0x5ebbx23=_[_0x3752[91]](verticesWithRetry,_0x5ebbx1a[_0x3752[54]])?_0x5ebbx1a:_[_0x3752[92]](_0x5ebbx1a);for(var _0x5ebbx24 in _0x5ebbx23){if(_0x5ebbx23[_0x3752[93]](_0x5ebbx24)){if(_0x5ebbx23[_0x5ebbx24]&& _[_0x3752[94]](_0x5ebbx23[_0x5ebbx24])){_0x5ebbx23[_0x5ebbx24]= this[_0x3752[95]](_0x5ebbx23[_0x5ebbx24])}}};return _0x5ebbx23};AGIVertices[_0x3752[20]][_0x3752[95]]= function(_0x5ebbx25){var _0x5ebbx26=_0x5ebbx25[_0x3752[97]](_0x3752[96]);for(var _0x5ebbx27=1;_0x5ebbx27< _0x5ebbx26[_0x3752[98]];_0x5ebbx27+= 1){var _0x5ebbx28=_0x5ebbx26[_0x5ebbx27][_0x3752[97]](_0x3752[99]);if(_0x5ebbx28[_0x3752[98]]> 1){_0x5ebbx25= _0x5ebbx25[_0x3752[101]](_0x3752[96]+ _0x5ebbx28[0]+ _0x3752[99],this[_0x3752[17]][_0x3752[19]](_0x5ebbx28[0])[_0x3752[100]]|| (_0x5ebbx28[0]))}};if(_0x5ebbx26[_0x3752[98]]=== 1){return _0x5ebbx25};return this[_0x3752[95]](_0x5ebbx25)};AGIVertices[_0x3752[20]][_0x3752[87]]= function(_0x5ebbx29){return _0x5ebbx29&& _0x5ebbx29!== _0x3752[102]&& _0x5ebbx29!== _0x3752[103]&& _0x5ebbx29!== _0x3752[72]};AGIVertices[_0x3752[20]][_0x3752[104]]= function(_0x5ebbx1a){this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x3752[105]);_0x5ebbx1a[_0x3752[107]]= _0x5ebbx1a[_0x3752[104]];return {code:200,result:_0x3752[105]}};AGIVertices[_0x3752[20]][_0x3752[9]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[108],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[9]]([_0x5ebbx1a[_0x3752[110]],_0x5ebbx1a[_0x3752[111]]])};AGIVertices[_0x3752[20]][_0x3752[112]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[113],_0x5ebbx1a[_0x3752[53]]));if(this[_0x3752[87]](_0x5ebbx1a[_0x3752[114]])){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[115],_0x5ebbx1a[_0x3752[114]]));var _0x5ebbx19=this[_0x3752[17]][_0x3752[116]](_0x5ebbx1a[_0x3752[114]]);if(_0x5ebbx19[_0x3752[117]]===  -1){return _0x5ebbx19}};return this[_0x3752[17]][_0x3752[112]]()};AGIVertices[_0x3752[20]][_0x3752[68]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[118],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[66]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[119])};_0x5ebbx1a[_0x3752[67]]= moment();if(this[_0x3752[87]](_0x5ebbx1a[_0x3752[89]])){_0x5ebbx1a[_0x3752[67]]= moment()[_0x3752[122]](_0x5ebbx1a[_0x3752[89]],_0x3752[121])};this[_0x3752[61]][_0x3752[106]](this,_0x5ebbx1a);return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[123],_0x5ebbx1a[_0x3752[65]],_0x5ebbx1a[_0x3752[66]],_0x5ebbx1a[_0x3752[67]]))};AGIVertices[_0x3752[20]][_0x3752[125]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[126],_0x5ebbx1a[_0x3752[53]]));var _0x5ebbx2a=this[_0x3752[17]][_0x3752[74]](_0x5ebbx1a[_0x3752[127]],_0x5ebbx1a[_0x3752[128]]);if(_0x5ebbx2a[_0x3752[117]]===  -1){return _0x5ebbx2a};return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[129],_0x5ebbx1a[_0x3752[127]],_0x5ebbx1a[_0x3752[128]]))};AGIVertices[_0x3752[20]][_0x3752[130]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[131],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[132]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[133])};var _0x5ebbx17=this[_0x3752[29]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[132]]);if(!_0x5ebbx17){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[134])};if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[49]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[135])};var _0x5ebbx18=_0x5ebbx1a[_0x3752[49]][_0x3752[73]](/(\r\n|\n|\r)/gm,_0x3752[136]);this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[137],_0x5ebbx18));var _0x5ebbx2b=this[_0x3752[47]][_0x3752[106]](this,_0x5ebbx17,_0x5ebbx18);this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx18);if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[138]])){return this[_0x3752[17]][_0x3752[124]](_0x3752[139])};var _0x5ebbx2c=this[_0x3752[19]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[138]]);if(!_0x5ebbx2c){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[140])};var _0x5ebbx15=this;_0x5ebbx2b[_0x3752[143]](function(_0x5ebbx29,_0x5ebbx2d){Object[_0x3752[144]](_0x5ebbx29)[_0x3752[143]](function(_0x5ebbx24){_0x5ebbx15[_0x3752[17]][_0x3752[142]](util[_0x3752[46]](_0x3752[141],_0x5ebbx2c,_0x5ebbx2d,_0x5ebbx24),_0x5ebbx29[_0x5ebbx24])})});this[_0x3752[17]][_0x3752[142]](util[_0x3752[46]](_0x3752[145],_0x5ebbx2c),_0x5ebbx2b[_0x3752[98]]);return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[146],_0x5ebbx2c))};AGIVertices[_0x3752[20]][_0x3752[147]]= function(_0x5ebbx1a){logger[_0x3752[149]](util[_0x3752[46]](_0x3752[148],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[150]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[151])};var _0x5ebbx2e=this[_0x3752[32]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[150]]);if(!_0x5ebbx2e){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[152])};var _0x5ebbx2a=this[_0x3752[17]][_0x3752[74]](_0x3752[153],[util[_0x3752[46]](_0x3752[154],_0x5ebbx2e),_0x5ebbx1a[_0x3752[114]],_0x5ebbx1a[_0x3752[155]],_0x5ebbx1a[_0x3752[156]]]);if(_0x5ebbx2a[_0x3752[117]]===  -1){return _0x5ebbx2a};return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[157],_0x3752[153]))};AGIVertices[_0x3752[20]][_0x3752[158]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[159],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[124]](_0x3752[158])};AGIVertices[_0x3752[20]][_0x3752[160]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[161],_0x5ebbx1a[_0x3752[53]]));var _0x5ebbx2f=_0x3752[72];if(_0x5ebbx1a[_0x3752[162]]){if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[162]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[163])}else {var _0x5ebbx11=parseInt(_0x5ebbx1a[_0x3752[162]],10);if(isNaN(_0x5ebbx11)){_0x5ebbx2f= _0x5ebbx1a[_0x3752[162]]}else {_0x5ebbx2f= this[_0x3752[34]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[162]]);if(!_0x5ebbx2f){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[164])}}}}else {if(_0x5ebbx1a[_0x3752[165]]){_0x5ebbx2f= _0x5ebbx1a[_0x3752[165]]}else {return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[163])}};var _0x5ebbx2a=this[_0x3752[17]][_0x3752[74]](_0x3752[153],[util[_0x3752[46]](_0x3752[166],_0x5ebbx2f,_0x5ebbx1a[_0x3752[65]]),_0x5ebbx1a[_0x3752[114]],_0x5ebbx1a[_0x3752[155]],_0x5ebbx1a[_0x3752[156]]]);if(_0x5ebbx2a[_0x3752[117]]===  -1){return _0x5ebbx2a};return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[157],_0x3752[153]))};AGIVertices[_0x3752[20]][_0x3752[167]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[168],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[124]](_0x3752[167])};AGIVertices[_0x3752[20]][_0x3752[15]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[169],_0x5ebbx1a[_0x3752[53]]));if(_0x5ebbx1a[_0x3752[107]]=== 0){return this[_0x3752[104]](_0x5ebbx1a)};_0x5ebbx1a[_0x3752[107]]-= 1;if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[170]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[171])};var _0x5ebbx30=this[_0x3752[36]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[170]]);if(!_0x5ebbx30){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[172])};if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[138]])){return this[_0x3752[17]][_0x3752[120]](_0x3752[139])};var _0x5ebbx19=this[_0x3752[17]][_0x3752[175]](_0x5ebbx30,_0x5ebbx1a[_0x3752[173]],_0x5ebbx1a[_0x3752[174]]);var _0x5ebbx31=_0x5ebbx19[_0x3752[117]];if(_0x5ebbx19[_0x3752[117]]===  -1){this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx19[_0x3752[117]]);return _0x5ebbx19}else {if(_0x5ebbx19[_0x3752[100]]=== _0x3752[114]){_0x5ebbx19[_0x3752[117]]= (_0x5ebbx19[_0x3752[117]][_0x3752[98]]>= parseInt(_0x5ebbx1a[_0x3752[176]]))?_0x3752[177]:_0x3752[178]}else {_0x5ebbx19[_0x3752[117]]= ((_0x5ebbx19[_0x3752[117]][_0x3752[98]]>= parseInt(_0x5ebbx1a[_0x3752[176]]))&& (_0x5ebbx19[_0x3752[117]][_0x3752[98]]<= parseInt(_0x5ebbx1a[_0x3752[174]])))?_0x3752[177]:_0x3752[178]}};var _0x5ebbx2c=this[_0x3752[19]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[138]]);if(!_0x5ebbx2c){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[140])};this[_0x3752[17]][_0x3752[142]](_0x5ebbx2c,_0x5ebbx31);if(this[_0x3752[87]](_0x5ebbx1a[_0x3752[179]])){var _0x5ebbx32=parseInt(_0x5ebbx1a[_0x3752[179]],10);var _0x5ebbx29=rs[_0x3752[181]]({charset:_0x3752[180],length:_0x5ebbx32});var _0x5ebbx33=_0x5ebbx31[_0x3752[98]];if(_0x5ebbx33> 0){if(_0x5ebbx33> _0x5ebbx32){this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,(_0x5ebbx1a[_0x3752[182]]=== _0x3752[183])?_0x5ebbx29+ _0x5ebbx31[_0x3752[184]](_0x5ebbx32):_0x5ebbx31[_0x3752[184]](0,_0x5ebbx33- _0x5ebbx32)+ _0x5ebbx29)}else {this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,rs[_0x3752[181]]({charset:_0x3752[180],length:_0x5ebbx33}))}}else {this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x3752[72])}}else {this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx31)};return _0x5ebbx19};AGIVertices[_0x3752[20]][_0x3752[16]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[185],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[15]](_0x5ebbx1a)};AGIVertices[_0x3752[20]][_0x3752[186]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[187],_0x5ebbx1a[_0x3752[53]]));this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx1a[_0x3752[188]]);return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[189],_0x5ebbx1a[_0x3752[188]]))};AGIVertices[_0x3752[20]][_0x3752[190]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[191],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[195]](_0x5ebbx1a[_0x3752[192]],_0x5ebbx1a[_0x3752[193]],_0x5ebbx1a[_0x3752[194]])};AGIVertices[_0x3752[20]][_0x3752[196]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[197],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[198]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[199])};try{var _0x5ebbx34=eval(_0x5ebbx1a[_0x3752[198]])?_0x3752[200]:_0x3752[201];this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[202],_0x5ebbx1a[_0x3752[198]],_0x5ebbx34));return {code:200,result:_0x5ebbx34}}catch(e){return {code:200,result:_0x3752[201]}}};AGIVertices[_0x3752[20]][_0x3752[203]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[204],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[205]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[206])};var _0x5ebbx35=this[_0x3752[40]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[205]]);if(!_0x5ebbx35){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[207])};for(var _0x5ebbx27=0;_0x5ebbx27< _0x5ebbx35[_0x3752[98]];_0x5ebbx27+= 1){var _0x5ebbx36=this[_0x3752[17]][_0x3752[19]](util[_0x3752[46]](_0x3752[208],_0x5ebbx35[_0x5ebbx27]));if(_0x5ebbx36[_0x3752[117]]===  -1){return _0x5ebbx36};logger[_0x3752[109]](util[_0x3752[46]](_0x3752[209],_0x5ebbx35[_0x5ebbx27],_0x5ebbx36[_0x3752[100]]));if(_0x5ebbx36[_0x3752[100]]=== _0x3752[200]){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[209],_0x5ebbx35[_0x5ebbx27],_0x3752[200]));this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[209],_0x5ebbx35[_0x5ebbx27],_0x3752[200]));return {code:200,result:_0x3752[200]}}else {logger[_0x3752[109]](util[_0x3752[46]](_0x3752[209],_0x5ebbx35[_0x5ebbx27],_0x3752[201]));this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[209],_0x5ebbx35[_0x5ebbx27],_0x3752[201]))}};return {code:200,result:_0x3752[201]}};AGIVertices[_0x3752[20]][_0x3752[210]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[211],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[210]]()};AGIVertices[_0x3752[20]][_0x3752[212]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[213],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[80]])){return this[_0x3752[17]][_0x3752[124]](_0x3752[214])};var _0x5ebbx37=_0x5ebbx1a[_0x3752[215]]|| _0x3752[216];var _0x5ebbx22=path[_0x3752[219]](scripts[_0x3752[217]](),_0x3752[218],rs[_0x3752[181]](4));var _0x5ebbx1b=util[_0x3752[46]](_0x3752[220],_0x5ebbx22,_0x5ebbx37);var _0x5ebbx38=true;if(_0x5ebbx1a[_0x3752[221]]=== _0x3752[222]){_0x5ebbx38= false};var _0x5ebbx19=this[_0x3752[17]][_0x3752[224]](_0x5ebbx22,_0x5ebbx37,_0x5ebbx1a[_0x3752[223]],_0x5ebbx1a[_0x3752[114]],undefined,_0x5ebbx38);if(_0x5ebbx19[_0x3752[117]]!==  -1){this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[225],_0x5ebbx1b));var _0x5ebbx2b=this[_0x3752[84]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx1b);fs[_0x3752[226]](_0x5ebbx1b);if(_0x5ebbx2b){for(var _0x5ebbx24 in _0x5ebbx2b){if(_0x5ebbx2b[_0x3752[93]](_0x5ebbx24)){this[_0x3752[17]][_0x3752[142]](util[_0x3752[46]](_0x3752[227],_0x5ebbx24[_0x3752[228]]()),_0x5ebbx2b[_0x5ebbx24])}};return this[_0x3752[17]][_0x3752[124]](JSON[_0x3752[229]](_0x5ebbx2b))}};return _0x5ebbx19};AGIVertices[_0x3752[20]][_0x3752[230]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[231],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[80]])){return this[_0x3752[17]][_0x3752[124]](_0x3752[214])};if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[76]])){return this[_0x3752[17]][_0x3752[124]](_0x3752[232])};this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[233],_0x5ebbx1a[_0x3752[76]]));var _0x5ebbx39=this[_0x3752[79]][_0x3752[106]](this,_0x5ebbx1a);if(_0x5ebbx39){this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[225],_0x5ebbx39));var _0x5ebbx19=this[_0x3752[17]][_0x3752[234]](_0x5ebbx39,_0x5ebbx1a[_0x3752[223]]);fs[_0x3752[226]](_0x5ebbx39+ _0x3752[235]);return _0x5ebbx19};return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[236])};AGIVertices[_0x3752[20]][_0x3752[237]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[238],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[239]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[240])};this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[241],_0x5ebbx1a[_0x3752[239]]));var _0x5ebbx2b=eval(_0x5ebbx1a[_0x3752[239]]);if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[138]])){return this[_0x3752[17]][_0x3752[124]](_0x3752[139])};var _0x5ebbx2c=this[_0x3752[19]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[138]]);if(!_0x5ebbx2c){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[140])};if(_[_0x3752[242]](_0x5ebbx2b)){var _0x5ebbx15=this;_0x5ebbx2b[_0x3752[143]](function(_0x5ebbx29,_0x5ebbx24){_0x5ebbx15[_0x3752[17]][_0x3752[142]](util[_0x3752[46]](_0x3752[243],_0x5ebbx2c,_0x5ebbx24),_0x5ebbx29)});return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[244],_0x5ebbx2c))}else {return this[_0x3752[17]][_0x3752[142]](_0x5ebbx2c,_0x5ebbx2b)}};AGIVertices[_0x3752[20]][_0x3752[14]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[245],_0x5ebbx1a[_0x3752[53]]));if(_0x5ebbx1a[_0x3752[107]]=== 0){return this[_0x3752[104]](_0x5ebbx1a)};_0x5ebbx1a[_0x3752[107]]-= 1;if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[170]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[171])};var _0x5ebbx30=this[_0x3752[36]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[170]]);if(!_0x5ebbx30){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[172])};var _0x5ebbx19=this[_0x3752[17]][_0x3752[175]](_0x5ebbx30,_0x5ebbx1a[_0x3752[173]],_0x5ebbx1a[_0x3752[246]]);var _0x5ebbx31=_0x5ebbx19[_0x3752[117]];if(_0x5ebbx19[_0x3752[117]]===  -1){this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x3752[103]);return _0x5ebbx19}else {if(_0x5ebbx19[_0x3752[100]]=== _0x3752[114]){_0x5ebbx19[_0x3752[117]]= (_0x5ebbx19[_0x3752[117]][_0x3752[98]]> 0)?_0x5ebbx19[_0x3752[117]]:_0x3752[247]}};if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[138]])){this[_0x3752[17]][_0x3752[124]](_0x3752[139])}else {var _0x5ebbx2c=this[_0x3752[19]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[138]]);if(!_0x5ebbx2c){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[140])};this[_0x3752[17]][_0x3752[142]](_0x5ebbx2c,_0x5ebbx31)};this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx31);return _0x5ebbx19};AGIVertices[_0x3752[20]][_0x3752[124]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[248],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[124]](_0x5ebbx1a[_0x3752[249]]|| _0x5ebbx1a[_0x3752[53]])};AGIVertices[_0x3752[20]][_0x3752[250]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[251],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[170]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[171])};var _0x5ebbx30=this[_0x3752[36]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[170]]);if(!_0x5ebbx30){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[172])};var _0x5ebbx2a=this[_0x3752[17]][_0x3752[74]](_0x3752[252],[_0x5ebbx30,_0x5ebbx1a[_0x3752[155]]]);if(_0x5ebbx2a[_0x3752[117]]===  -1){return _0x5ebbx2a};return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[129],_0x3752[252],_0x5ebbx30))};AGIVertices[_0x3752[20]][_0x3752[253]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[254],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[255]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[256])};var _0x5ebbx3a=_0x3752[72];var _0x5ebbx11=parseInt(_0x5ebbx1a[_0x3752[255]],10);if(isNaN(_0x5ebbx11)){_0x5ebbx3a= _0x5ebbx1a[_0x3752[255]]}else {_0x5ebbx3a= this[_0x3752[25]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[255]]);if(!_0x5ebbx3a){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[257])}};var _0x5ebbx3b=_0x3752[72];if(this[_0x3752[87]](_0x5ebbx1a[_0x3752[170]])){var _0x5ebbx3c=this[_0x3752[36]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[170]]);if(_0x5ebbx3c){_0x5ebbx3b= _0x5ebbx3c}};this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx3a);if(_0x5ebbx1a[_0x3752[155]][_0x3752[258]](_0x3752[177])< 0){_0x5ebbx1a[_0x3752[155]]+= _0x3752[177]};if(_0x5ebbx1a[_0x3752[155]][_0x3752[258]](_0x3752[259])< 0){_0x5ebbx1a[_0x3752[155]]+= _0x3752[259]};var _0x5ebbx2a=this[_0x3752[17]][_0x3752[74]](_0x3752[260],[_0x5ebbx3a,_0x5ebbx1a[_0x3752[155]],_0x5ebbx1a[_0x3752[156]],_0x5ebbx3b,_0x5ebbx1a[_0x3752[114]],_0x5ebbx1a[_0x3752[9]],_0x5ebbx1a[_0x3752[261]],_0x5ebbx1a[_0x3752[262]],_0x3752[72],_0x5ebbx1a[_0x3752[263]]]);if(_0x5ebbx2a[_0x3752[117]]===  -1){return _0x5ebbx2a};return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[129],_0x3752[260],_0x5ebbx3a))};AGIVertices[_0x3752[20]][_0x3752[264]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[265],_0x5ebbx1a[_0x3752[53]]));var _0x5ebbx37=_0x5ebbx1a[_0x3752[215]]|| _0x3752[216];var _0x5ebbx1b=util[_0x3752[46]](_0x3752[266],this[_0x3752[17]][_0x3752[52]],rs[_0x3752[181]](5));var _0x5ebbx1c=util[_0x3752[46]](_0x3752[267],FILES_PATH,_0x5ebbx1b,_0x5ebbx37);var _0x5ebbx3d=util[_0x3752[46]](_0x3752[268],FILES_PATH,_0x5ebbx1b);this[_0x3752[57]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx1b,_0x5ebbx1c);this[_0x3752[17]][_0x3752[142]](_0x3752[269],_0x5ebbx1b);return this[_0x3752[17]][_0x3752[224]](_0x5ebbx3d,_0x5ebbx37,_0x5ebbx1a[_0x3752[270]],_0x5ebbx1a[_0x3752[114]],undefined,true)};AGIVertices[_0x3752[20]][_0x3752[271]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[272],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[274]](_0x5ebbx1a[_0x3752[273]][_0x3752[73]](/\s+/g,_0x3752[72]),_0x5ebbx1a[_0x3752[270]])};AGIVertices[_0x3752[20]][_0x3752[275]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[276],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[278]](_0x5ebbx1a[_0x3752[277]][_0x3752[73]](/\s+/g,_0x3752[72]),_0x5ebbx1a[_0x3752[270]])};AGIVertices[_0x3752[20]][_0x3752[279]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[280],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[281]](_0x5ebbx1a[_0x3752[76]],_0x5ebbx1a[_0x3752[270]])};AGIVertices[_0x3752[20]][_0x3752[282]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[283],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[124]](_0x3752[284])};AGIVertices[_0x3752[20]][_0x3752[285]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[286],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[124]](_0x3752[287])};AGIVertices[_0x3752[20]][_0x3752[288]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[289],_0x5ebbx1a[_0x3752[53]]));return this[_0x3752[17]][_0x3752[124]](_0x3752[290])};AGIVertices[_0x3752[20]][_0x3752[291]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[292],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[138]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[293])};var _0x5ebbx2c=this[_0x3752[19]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[138]]);if(!_0x5ebbx2c){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[140])};return this[_0x3752[17]][_0x3752[142]](_0x5ebbx2c,_0x5ebbx1a[_0x3752[294]])};AGIVertices[_0x3752[20]][_0x3752[295]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[296],_0x5ebbx1a[_0x3752[53]]));this[_0x3752[17]][_0x3752[124]](_0x3752[297]);if(_0x5ebbx1a[_0x3752[112]]=== _0x3752[298]){this[_0x3752[17]][_0x3752[124]](_0x3752[299]);return this[_0x3752[17]][_0x3752[112]]()};return this[_0x3752[17]][_0x3752[124]](_0x3752[300])};AGIVertices[_0x3752[20]][_0x3752[301]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[302],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[303]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[304])};var _0x5ebbx3e=this[_0x3752[27]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[303]]);if(!this[_0x3752[87]](_0x5ebbx3e)){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,util[_0x3752[46]](_0x3752[305],_0x5ebbx1a[_0x3752[303]]))};if(_0x5ebbx3e=== this[_0x3752[17]][_0x3752[55]]){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[306])};this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx3e);var _0x5ebbx2a=this[_0x3752[17]][_0x3752[74]](_0x3752[307],util[_0x3752[46]](_0x3752[308],config[_0x3752[9]][_0x3752[309]]|| _0x3752[310],_0x5ebbx3e,this[_0x3752[17]][_0x3752[55]]));if(_0x5ebbx2a[_0x3752[117]]===  -1){return _0x5ebbx2a};return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[129],_0x3752[307],_0x5ebbx3e))};AGIVertices[_0x3752[20]][_0x3752[311]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[312],_0x5ebbx1a[_0x3752[53]]));var _0x5ebbx20=this[_0x3752[70]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[110]]);this[_0x3752[51]][_0x3752[106]](this,_0x5ebbx1a,_0x5ebbx1a[_0x3752[110]]);if(this[_0x3752[87]](_0x5ebbx1a[_0x3752[138]])){var _0x5ebbx2c=this[_0x3752[19]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[138]]);if(_0x5ebbx2c){this[_0x3752[17]][_0x3752[142]](_0x5ebbx2c,_0x5ebbx20);return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[313],_0x5ebbx1a[_0x3752[110]],_0x5ebbx2c))}};return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[314],_0x5ebbx1a[_0x3752[110]]))};AGIVertices[_0x3752[20]][_0x3752[315]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[316],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[76]])){return this[_0x3752[17]][_0x3752[124]](_0x3752[232])};this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[317],_0x5ebbx1a[_0x3752[76]]));var _0x5ebbx39=this[_0x3752[75]][_0x3752[106]](this,_0x5ebbx1a);if(_0x5ebbx39){this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[318],_0x5ebbx39));var _0x5ebbx19=this[_0x3752[17]][_0x3752[234]](_0x5ebbx39);fs[_0x3752[226]](_0x5ebbx39+ _0x3752[235]);return _0x5ebbx19};return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[319])};AGIVertices[_0x3752[20]][_0x3752[320]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[321],_0x5ebbx1a[_0x3752[53]]));var _0x5ebbx2a=this[_0x3752[17]][_0x3752[74]](_0x3752[322],[_0x5ebbx1a[_0x3752[323]],_0x5ebbx1a[_0x3752[128]]]);if(_0x5ebbx2a[_0x3752[117]]===  -1){return _0x5ebbx2a};return this[_0x3752[17]][_0x3752[124]](util[_0x3752[46]](_0x3752[129],_0x3752[322],_0x5ebbx1a[_0x3752[323]]))};AGIVertices[_0x3752[20]][_0x3752[324]]= function(_0x5ebbx1a){logger[_0x3752[109]](util[_0x3752[46]](_0x3752[325],_0x5ebbx1a[_0x3752[53]]));if(!this[_0x3752[87]](_0x5ebbx1a[_0x3752[138]])){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[293])};var _0x5ebbx2c=this[_0x3752[19]][_0x3752[106]](this,_0x5ebbx1a[_0x3752[138]]);if(!_0x5ebbx2c){return this[_0x3752[17]][_0x3752[120]](_0x5ebbx1a,_0x3752[140])};var _0x5ebbx36=this[_0x3752[17]][_0x3752[19]](_0x5ebbx2c);return {code:200,result:(_0x5ebbx36[_0x3752[100]])?_0x5ebbx36[_0x3752[100]]:_0x3752[105]}};String[_0x3752[20]][_0x3752[101]]= function(_0x5ebbx3f,_0x5ebbx40){return this[_0x3752[97]](_0x5ebbx3f)[_0x3752[326]](_0x5ebbx40)};module[_0x3752[327]]= AGIVertices
\ No newline at end of file
+var _0xbafb=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x70\x61\x74\x68","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x73\x68\x65\x6C\x6C\x6A\x73","\x6F\x64\x62\x63","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x6D\x6F\x6D\x65\x6E\x74","\x61\x67\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2F\x73\x63\x72\x69\x70\x74\x73","\x2F\x76\x61\x72\x2F\x6F\x70\x74\x2F\x6D\x6F\x74\x69\x6F\x6E\x32\x2F\x73\x65\x72\x76\x65\x72\x2F\x66\x69\x6C\x65\x73","\x6D\x65\x6E\x75","\x67\x65\x74\x64\x69\x67\x69\x74\x73","\x67\x65\x74\x73\x65\x63\x72\x65\x74\x64\x69\x67\x69\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C","\x72\x70\x63","\x67\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x61\x74\x63\x68","\x6E\x61\x6D\x65","\x74\x68\x65\x6E","\x67\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65\x42\x79\x49\x64","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x42\x79\x49\x64","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74\x42\x79\x49\x64","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63","\x64\x73\x6E","\x67\x65\x74\x53\x71\x75\x61\x72\x65\x4F\x64\x62\x63\x42\x79\x49\x64","\x67\x65\x74\x55\x73\x65\x72","\x67\x65\x74\x55\x73\x65\x72\x42\x79\x49\x64","\x67\x65\x74\x54\x72\x75\x6E\x6B","\x67\x65\x74\x54\x72\x75\x6E\x6B\x42\x79\x49\x64","\x67\x65\x74\x53\x6F\x75\x6E\x64","\x73\x61\x76\x65\x5F\x6E\x61\x6D\x65","\x67\x65\x74\x53\x6F\x75\x6E\x64\x50\x61\x74\x68","\x67\x65\x74\x53\x6F\x75\x6E\x64\x42\x79\x49\x64","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x49\x6E\x74\x65\x72\x76\x61\x6C\x49\x64","\x69\x6E\x74\x65\x72\x76\x61\x6C","\x6D\x61\x70","\x67\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x42\x79\x49\x64","\x25\x73\x2F\x73\x6F\x75\x6E\x64\x73\x2F\x63\x6F\x6E\x76\x65\x72\x74\x65\x64\x2F\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x67\x65\x74\x51\x75\x65\x72\x79\x4F\x64\x62\x63","\x63\x6C\x6F\x73\x65","\x71\x75\x65\x72\x79","\x6F\x70\x65\x6E","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x44\x65\x74\x61\x69\x6C\x73\x52\x65\x70\x6F\x72\x74","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x61\x62\x65\x6C","\x61\x67\x69\x63\x6F\x6D\x6D\x61\x6E\x64","\x61\x72\x67\x5F\x31","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x63\x72\x65\x61\x74\x65\x53\x71\x75\x61\x72\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x72\x65\x71\x75\x65\x73\x74","\x66\x69\x6C\x65","\x6D\x65\x72\x67\x65","\x63\x72\x65\x61\x74\x65\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x5F","\x72\x61\x6E\x64\x6F\x6D","\x6C\x61\x73\x74\x4E\x61\x6D\x65","\x70\x68\x6F\x6E\x65","\x6C\x69\x73\x74\x5F\x69\x64","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x41\x74","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x43\x61\x6C\x6C\x62\x61\x63\x6B\x20\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x20\x61\x74\x20","\x73\x68\x65\x6C\x6C\x43\x6F\x6D\x6D\x61\x6E\x64","\x74\x72\x69\x6D","","\x72\x65\x70\x6C\x61\x63\x65","\x65\x78\x65\x63","\x67\x6F\x6F\x67\x6C\x65\x54\x54\x53","\x74\x65\x78\x74","\x67\x6F\x6F\x67\x6C\x65\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x65\x6E","\x69\x73\x70\x65\x65\x63\x68\x54\x54\x53","\x6B\x65\x79","\x69\x73\x70\x65\x65\x63\x68\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x65\x6E\x2D\x55\x53","\x73\x70\x65\x65\x64","\x69\x73\x70\x65\x65\x63\x68\x41\x53\x52","\x69\x73\x70\x65\x65\x63\x68\x5F\x61\x73\x72\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x6D\x6F\x64\x65\x6C","\x69\x73\x43\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x74\x69\x67\x65\x72\x44\x69\x61\x6C\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x64\x65\x6C\x61\x79","\x63\x6C\x65\x61\x72","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x63\x6C\x6F\x6E\x65","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x69\x73\x53\x74\x72\x69\x6E\x67","\x72\x65\x70\x6C\x61\x63\x65\x41\x6C\x6C\x56\x61\x72\x69\x61\x62\x6C\x65\x73","\x7B","\x73\x70\x6C\x69\x74","\x6C\x65\x6E\x67\x74\x68","\x7D","\x65\x78\x74\x72\x61","\x72\x65\x70\x6C\x61\x63\x65\x41\x6C\x6C","\x30","\x2D\x31","\x6D\x61\x78\x52\x65\x74\x72\x79","\x2D","\x73\x79\x6E\x63","\x72\x65\x74\x72\x79","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x41\x47\x49\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x69\x6E\x66\x6F","\x63\x6F\x6D\x6D\x61\x6E\x64","\x61\x72\x67\x73","\x61\x6E\x73\x77\x65\x72","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x41\x4E\x53\x57\x45\x52\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x74\x69\x6D\x65\x6F\x75\x74","\x57\x61\x69\x74\x20\x25\x73\x20\x73\x65\x63\x6F\x6E\x64\x73\x20\x62\x65\x66\x6F\x72\x65\x20\x61\x6E\x73\x77\x65\x72","\x77\x61\x69\x74","\x72\x65\x73\x75\x6C\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x43\x41\x4C\x4C\x42\x41\x43\x4B\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x6F\x20\x6C\x69\x73\x74\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x65\x72\x72\x6F\x72","\x6D\x69\x6E\x75\x74\x65\x73","\x61\x64\x64","\x43\x41\x4C\x4C\x42\x41\x43\x4B\x20\x61\x64\x64\x65\x64\x20\x70\x68\x6F\x6E\x65\x3A\x20\x25\x73\x20\x6F\x6E\x20\x6C\x69\x73\x74\x3A\x20\x25\x73\x20\x61\x74\x20\x25\x73","\x6E\x6F\x6F\x70","\x63\x75\x73\x74\x6F\x6D\x5F\x61\x70\x70","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x43\x55\x53\x54\x4F\x4D\x20\x41\x50\x50\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6F\x70\x74\x69\x6F\x6E\x73","\x45\x78\x65\x63\x75\x74\x65\x64\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x25\x73\x20\x25\x73","\x64\x61\x74\x61\x62\x61\x73\x65","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x44\x41\x54\x41\x42\x41\x53\x45\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6F\x64\x62\x63\x5F\x69\x64","\x6E\x6F\x20\x64\x61\x74\x61\x62\x61\x73\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x6F\x64\x62\x63\x20\x64\x61\x74\x61\x62\x61\x73\x65\x20\x66\x6F\x75\x6E\x64","\x6E\x6F\x20\x71\x75\x65\x72\x79\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x20","\x71\x75\x65\x72\x79\x3A\x20\x25\x73","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x69\x64","\x6E\x6F\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x20\x66\x6F\x72\x20\x74\x68\x65\x20\x72\x65\x73\x75\x6C\x74","\x6E\x6F\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x6F\x75\x6E\x64","\x25\x73\x5B\x25\x73\x5D\x5B\x25\x73\x5D","\x73\x65\x74\x56\x61\x72\x69\x61\x62\x6C\x65","\x66\x6F\x72\x45\x61\x63\x68","\x6B\x65\x79\x73","\x25\x73\x5F\x52\x4F\x57\x53\x5F\x43\x4F\x55\x4E\x54","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x25\x73\x20\x73\x65\x74","\x64\x69\x61\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x44\x49\x41\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x64\x65\x62\x75\x67","\x73\x69\x70\x5F\x69\x64","\x6E\x6F\x20\x75\x73\x65\x72\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x75\x73\x65\x72\x20\x66\x6F\x75\x6E\x64","\x44\x49\x41\x4C","\x53\x49\x50\x2F\x25\x73","\x6F\x70\x74\x73","\x75\x72\x6C","\x45\x78\x65\x63\x75\x74\x65\x64\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x25\x73","\x65\x6E\x64","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x45\x4E\x44\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x65\x78\x74\x5F\x64\x69\x61\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x45\x58\x54\x45\x52\x4E\x41\x4C\x20\x44\x49\x41\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x74\x72\x75\x6E\x6B\x5F\x69\x64","\x6E\x6F\x20\x74\x72\x75\x6E\x6B\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x74\x72\x75\x6E\x6B\x20\x66\x6F\x75\x6E\x64","\x74\x72\x75\x6E\x6B\x5F\x6E\x61\x6D\x65","\x53\x49\x50\x2F\x25\x73\x2F\x25\x73","\x66\x69\x6E\x61\x6C\x6C\x79","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x46\x49\x4E\x41\x4C\x4C\x59\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x45\x54\x44\x49\x47\x49\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x66\x69\x6C\x65\x5F\x69\x64","\x6E\x6F\x20\x66\x69\x6C\x65\x20\x61\x75\x64\x69\x6F\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x66\x69\x6C\x65\x20\x61\x75\x64\x69\x6F\x20\x66\x6F\x75\x6E\x64","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x6D\x61\x78\x64\x69\x67\x69\x74","\x67\x65\x74\x44\x61\x74\x61","\x6D\x69\x6E\x64\x69\x67\x69\x74","\x78","\x69","\x68\x69\x64\x64\x65\x6E\x64\x69\x67\x69\x74\x73\x6E\x75\x6D","\x2A","\x67\x65\x6E\x65\x72\x61\x74\x65","\x68\x69\x64\x64\x65\x6E\x64\x69\x67\x69\x74\x73\x70\x6F\x73","\x66\x69\x72\x73\x74","\x73\x75\x62\x73\x74\x72","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x45\x54\x53\x45\x43\x52\x45\x54\x44\x49\x47\x49\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x67\x6F\x61\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x41\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x67\x6F\x61\x6C\x6E\x61\x6D\x65","\x47\x4F\x41\x4C\x20\x25\x73","\x67\x6F\x74\x6F\x63","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x54\x4F\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x63\x6F\x6E\x74\x69\x6E\x75\x65\x41\x74","\x67\x6F\x74\x6F\x69\x66","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x54\x4F\x49\x46\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x6E\x6F\x20\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x74\x72\x75\x65","\x66\x61\x6C\x73\x65","\x45\x56\x41\x4C\x20\x43\x4F\x4E\x44\x49\x54\x49\x4F\x4E\x20\x25\x73\x20\x25\x73","\x67\x6F\x74\x6F\x69\x66\x74\x69\x6D\x65","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x54\x4F\x49\x46\x54\x49\x4D\x45\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x69\x6E\x74\x65\x72\x76\x61\x6C\x5F\x69\x64","\x6E\x6F\x20\x69\x6E\x74\x65\x72\x76\x61\x6C\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x6E\x6F\x20\x69\x6E\x74\x65\x72\x76\x61\x6C\x73\x20\x66\x6F\x75\x6E\x64","\x49\x46\x54\x49\x4D\x45\x28\x25\x73\x3F\x74\x72\x75\x65\x3A\x66\x61\x6C\x73\x65\x29","\x49\x46\x54\x49\x4D\x45\x20\x25\x73\x20\x25\x73","\x68\x61\x6E\x67\x75\x70","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x48\x41\x4E\x47\x55\x50\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x69\x73\x70\x65\x65\x63\x68\x61\x73\x72","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x49\x53\x50\x45\x45\x43\x48\x41\x53\x52\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x6F\x20\x6B\x65\x79\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x46\x6F\x72\x6D\x61\x74","\x77\x61\x76","\x64\x69\x72\x4E\x61\x6D\x65","\x74\x6D\x70","\x72\x65\x73\x6F\x6C\x76\x65","\x25\x73\x2E\x25\x73","\x62\x65\x65\x70","\x4E\x4F\x42\x45\x45\x50","\x69\x6E\x74\x4B\x65\x79","\x72\x65\x63\x6F\x72\x64\x46\x69\x6C\x65","\x69\x73\x70\x65\x65\x63\x68\x20\x25\x73\x20\x66\x69\x6C\x65\x20\x63\x72\x65\x61\x74\x65\x64","\x75\x6E\x6C\x69\x6E\x6B","\x49\x53\x50\x45\x45\x43\x48\x5F\x41\x53\x52\x5F\x25\x73","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x69\x73\x70\x65\x65\x63\x68\x74\x74\x73","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x49\x53\x50\x45\x45\x43\x48\x54\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x6F\x20\x74\x65\x78\x74\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x54\x72\x79\x69\x6E\x67\x20\x69\x73\x70\x65\x65\x63\x68\x20\x54\x54\x53\x20\x25\x73","\x73\x74\x72\x65\x61\x6D\x46\x69\x6C\x65","\x2E\x77\x61\x76","\x69\x73\x70\x65\x65\x63\x68\x20\x54\x54\x53\x20\x69\x73\x20\x75\x6E\x72\x65\x61\x63\x68\x61\x62\x6C\x65","\x6D\x61\x74\x68","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x4D\x41\x54\x48\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6F\x70\x65\x72\x61\x74\x69\x6F\x6E","\x6E\x6F\x20\x6F\x70\x65\x72\x61\x74\x69\x6F\x6E\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x64","\x6D\x61\x74\x68\x20\x25\x73","\x69\x73\x41\x72\x72\x61\x79","\x25\x73\x5B\x25\x73\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x25\x73\x5B\x6B\x65\x79\x5D\x20\x73\x65\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x4D\x45\x4E\x55\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x64\x69\x67\x69\x74","\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x4E\x4F\x4F\x50\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6F\x75\x74\x70\x75\x74","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x50\x4C\x41\x59\x42\x41\x43\x4B\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x50\x4C\x41\x59\x42\x41\x43\x4B","\x71\x75\x65\x75\x65","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x51\x55\x45\x55\x45\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x71\x75\x65\x75\x65\x5F\x69\x64","\x6E\x6F\x20\x71\x75\x65\x75\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x71\x75\x65\x75\x65\x20\x66\x6F\x75\x6E\x64","\x69\x6E\x64\x65\x78\x4F\x66","\x58","\x51\x55\x45\x55\x45","\x6D\x61\x63\x72\x6F","\x67\x6F\x73\x75\x62","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x72\x65\x63\x6F\x72\x64","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x52\x45\x43\x4F\x52\x44\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x25\x73\x5F\x25\x73","\x25\x73\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73\x2F\x25\x73\x2E\x25\x73","\x25\x73\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x73\x2F\x25\x73","\x52\x45\x43\x4F\x52\x44\x49\x4E\x47\x5F\x53\x41\x56\x45\x4E\x41\x4D\x45","\x65\x73\x63\x61\x70\x65\x5F\x64\x69\x67\x69\x74\x73","\x73\x61\x79\x64\x69\x67\x69\x74\x73","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x41\x59\x44\x49\x47\x49\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x64\x69\x67\x69\x74\x73","\x73\x61\x79\x44\x69\x67\x69\x74\x73","\x73\x61\x79\x6E\x75\x6D\x62\x65\x72","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x41\x59\x4E\x55\x4D\x42\x45\x52\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x75\x6D\x62\x65\x72","\x73\x61\x79\x4E\x75\x6D\x62\x65\x72","\x73\x61\x79\x70\x68\x6F\x6E\x65\x74\x69\x63","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x41\x59\x50\x48\x4F\x4E\x45\x54\x49\x43\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x73\x61\x79\x50\x68\x6F\x6E\x65\x74\x69\x63","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x45\x4E\x44\x4D\x41\x49\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x53\x45\x4E\x44\x4D\x41\x49\x4C\x20\x62\x6C\x6F\x63\x6B\x20\x6E\x6F\x74\x20\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x65\x64","\x73\x65\x6E\x64\x46\x61\x78","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x45\x4E\x44\x46\x41\x58\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x53\x45\x4E\x44\x46\x41\x58\x20\x62\x6C\x6F\x63\x6B\x20\x6E\x6F\x74\x20\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x65\x64","\x73\x65\x6E\x64\x53\x4D\x53","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x45\x4E\x44\x53\x4D\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x53\x45\x4E\x44\x53\x4D\x53\x20\x62\x6C\x6F\x63\x6B\x20\x6E\x6F\x74\x20\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x65\x64","\x73\x65\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x45\x54\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6E\x6F\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x76\x61\x6C\x75\x65","\x73\x74\x61\x72\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x54\x41\x52\x54\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x53\x54\x41\x52\x54\x20\x43\x41\x4C\x4C\x59\x20\x53\x51\x55\x41\x52\x45","\x79\x65\x73","\x41\x6E\x73\x77\x65\x72","\x53\x6B\x69\x70\x70\x65\x64\x20\x41\x6E\x73\x77\x65\x72","\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x55\x42\x50\x52\x4F\x4A\x45\x43\x54\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x69\x64","\x6E\x6F\x20\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74\x20\x73\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x20\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74\x20\x66\x6F\x75\x6E\x64\x20\x77\x69\x74\x68\x20\x69\x64\x20\x25\x64","\x70\x72\x6F\x6A\x65\x63\x74\x20\x69\x6E\x20\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74\x20\x6D\x75\x73\x74\x20\x62\x65\x20\x64\x69\x66\x66\x65\x72\x65\x6E\x74\x20\x66\x72\x6F\x6D\x20\x74\x68\x65\x20\x63\x61\x6C\x6C\x65\x64\x20\x70\x72\x6F\x6A\x65\x63\x74","\x41\x47\x49","\x61\x67\x69\x3A\x2F\x2F\x25\x73\x2F\x73\x71\x75\x61\x72\x65\x2C\x22\x25\x73\x22\x2C\x22\x25\x73\x22","\x68\x6F\x73\x74","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x73\x79\x73\x74\x65\x6D","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x59\x53\x54\x45\x4D\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x73\x68\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x3A\x20\x25\x73\x20\x72\x65\x73\x75\x6C\x74\x20\x6F\x6E\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x3A\x20\x25\x73","\x73\x68\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x3A\x20\x25\x73\x20\x72\x65\x73\x75\x6C\x74\x20\x6E\x6F\x20\x73\x74\x6F\x72\x65\x64","\x74\x74\x73","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x47\x4F\x4F\x47\x4C\x45\x54\x54\x53\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x54\x72\x79\x69\x6E\x67\x20\x47\x6F\x6F\x67\x6C\x65\x20\x54\x54\x53\x20\x25\x73","\x47\x6F\x6F\x67\x6C\x65\x20\x54\x54\x53\x20\x25\x73\x20\x66\x69\x6C\x65\x20\x63\x72\x65\x61\x74\x65\x64","\x47\x6F\x6F\x67\x6C\x65\x20\x54\x54\x53\x20\x69\x73\x20\x75\x6E\x72\x65\x61\x63\x68\x61\x62\x6C\x65","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x56\x4F\x49\x43\x45\x4D\x41\x49\x4C\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x56\x4F\x49\x43\x45\x4D\x41\x49\x4C","\x6D\x61\x69\x6C\x62\x6F\x78","\x76\x73\x77\x69\x74\x63\x68","\x45\x6E\x74\x65\x72\x20\x69\x6E\x20\x53\x57\x49\x54\x43\x48\x20\x28\x25\x73\x29\x20\x62\x6C\x6F\x63\x6B","\x6A\x6F\x69\x6E","\x65\x78\x70\x6F\x72\x74\x73"];_0xbafb[0];var fs=require(_0xbafb[1]);var path=require(_0xbafb[2]);var util=require(_0xbafb[3]);var _=require(_0xbafb[4]);var sh=require(_0xbafb[5]);var odbc=require(_0xbafb[6])();var rs=require(_0xbafb[7]);var moment=require(_0xbafb[8]);var logger=require(_0xbafb[10])(_0xbafb[9]);var config=require(_0xbafb[11]);var scripts=require(_0xbafb[12]);var FILES_PATH=_0xbafb[13];var verticesWithRetry=[_0xbafb[14],_0xbafb[15],_0xbafb[16]];var AGIVertices=function(_0x284bxf,_0x284bx10){this[_0xbafb[17]]= _0x284bxf;this[_0xbafb[18]]= _0x284bx10};AGIVertices[_0xbafb[20]][_0xbafb[19]]= function(_0x284bx11,_0x284bx12){this[_0xbafb[18]][_0xbafb[24]](_0x284bx11)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,(_0x284bx14)?_0x284bx14[_0xbafb[22]]:false)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[25]]= function(_0x284bx11,_0x284bx12){this[_0xbafb[18]][_0xbafb[26]](_0x284bx11)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,(_0x284bx14)?_0x284bx14[_0xbafb[22]]:false)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[27]]= function(_0x284bx11,_0x284bx12){this[_0xbafb[18]][_0xbafb[28]](_0x284bx11)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,(_0x284bx14)?_0x284bx14[_0xbafb[22]]:false)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[29]]= function(_0x284bx11,_0x284bx12){this[_0xbafb[18]][_0xbafb[31]](_0x284bx11)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,(_0x284bx14)?_0x284bx14[_0xbafb[30]]:false)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[32]]= function(_0x284bx11,_0x284bx12){this[_0xbafb[18]][_0xbafb[33]](_0x284bx11)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,(_0x284bx14)?_0x284bx14[_0xbafb[22]]:false)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[34]]= function(_0x284bx11,_0x284bx12){this[_0xbafb[18]][_0xbafb[35]](_0x284bx11)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,(_0x284bx14)?_0x284bx14[_0xbafb[22]]:false)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[36]]= function(_0x284bx11,_0x284bx12){var _0x284bx15=this;this[_0xbafb[18]][_0xbafb[39]](_0x284bx11)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,(_0x284bx14)?_0x284bx15[_0xbafb[38]](_0x284bx14[_0xbafb[37]]):false)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[40]]= function(_0x284bx11,_0x284bx12){this[_0xbafb[18]][_0xbafb[44]](_0x284bx11)[_0xbafb[23]](function(_0x284bx14){if(_0x284bx14){if(_0x284bx14[_0xbafb[41]]){_0x284bx12(null,[_0x284bx14[_0xbafb[42]]])}else {_0x284bx12(null,_[_0xbafb[43]](_0x284bx14.Intervals,_0xbafb[42]))}}else {_0x284bx12(null,false)}})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[38]]= function(_0x284bx16){return util[_0xbafb[46]](_0xbafb[45],FILES_PATH,_0x284bx16)};AGIVertices[_0xbafb[20]][_0xbafb[47]]= function(_0x284bx17,_0x284bx18,_0x284bx12){odbc[_0xbafb[50]](_0x284bx17,function(_0x284bx13){if(_0x284bx13){_0x284bx12(_0x284bx13)};odbc[_0xbafb[49]](_0x284bx18,function(_0x284bx13,_0x284bx19){if(_0x284bx13){_0x284bx12(_0x284bx13)};odbc[_0xbafb[48]](function(){_0x284bx12(null,_0x284bx19)})})})};AGIVertices[_0xbafb[20]][_0xbafb[51]]= function(_0x284bx1a,_0x284bx19,_0x284bx12){this[_0xbafb[18]][_0xbafb[51]]({uniqueid:this[_0xbafb[17]][_0xbafb[52]],node:_0x284bx1a[_0xbafb[53]],application:_0x284bx1a[_0xbafb[54]],data:_0x284bx19|| null,project_name:this[_0xbafb[17]][_0xbafb[55]],callerid:this[_0xbafb[17]][_0xbafb[56]]})[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,_0x284bx14)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[57]]= function(_0x284bx1a,_0x284bx1b,_0x284bx1c,_0x284bx12){this[_0xbafb[18]][_0xbafb[57]](_[_0xbafb[60]](this[_0xbafb[17]][_0xbafb[58]],{projectName:this[_0xbafb[17]][_0xbafb[55]],saveName:_0x284bx1b,filename:_0x284bx1a[_0xbafb[59]]|| _0x284bx1b,savePath:_0x284bx1c}))[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,_0x284bx14)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[61]]= function(_0x284bx1d,_0x284bx12){this[_0xbafb[18]][_0xbafb[61]]({firstName:_0x284bx1d[_0xbafb[22]]|| (_0xbafb[62]+ Math[_0xbafb[63]]()),lastName:_0x284bx1d[_0xbafb[64]],phone:_0x284bx1d[_0xbafb[65]],ListId:_0x284bx1d[_0xbafb[66]],scheduledAt:_0x284bx1d[_0xbafb[67]],callbackUniqueid:this[_0xbafb[17]][_0xbafb[52]],tags:_0xbafb[68],description:_0xbafb[69]+ _0x284bx1d[_0xbafb[67]].toString()})[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,_0x284bx14)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[70]]= function(_0x284bx1e,_0x284bx12){sh[_0xbafb[74]](_[_0xbafb[71]](_0x284bx1e),function(_0x284bx1f,_0x284bx20){var _0x284bx21=_0x284bx20[_0xbafb[73]](/(\r\n|\n|\r)/gm,_0xbafb[72]);_0x284bx12(null,_0x284bx21)})};AGIVertices[_0xbafb[20]][_0xbafb[75]]= function(_0x284bx1a,_0x284bx12){scripts[_0xbafb[75]](_0x284bx1a[_0xbafb[76]],_0x284bx1a[_0xbafb[77]]|| _0xbafb[78],1)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,_0x284bx14)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[79]]= function(_0x284bx1a,_0x284bx12){scripts[_0xbafb[79]](_0x284bx1a[_0xbafb[80]],_0x284bx1a[_0xbafb[76]],_0x284bx1a[_0xbafb[81]]|| _0xbafb[82],_0x284bx1a[_0xbafb[83]])[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,_0x284bx14)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[84]]= function(_0x284bx1a,_0x284bx22,_0x284bx12){scripts[_0xbafb[84]](_0x284bx22,_0x284bx1a[_0xbafb[80]],_0x284bx1a[_0xbafb[85]]|| _0xbafb[82],this[_0xbafb[87]](_0x284bx1a[_0xbafb[86]])?_0x284bx1a[_0xbafb[86]]:undefined)[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,_0x284bx14)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[88]]= function(_0x284bx1a,_0x284bx12){scripts[_0xbafb[88]](_0x284bx1a[_0xbafb[66]],_0x284bx1a[_0xbafb[22]],_0x284bx1a[_0xbafb[65]],_0x284bx1a[_0xbafb[53]],_0x284bx1a[_0xbafb[89]])[_0xbafb[23]](function(_0x284bx14){_0x284bx12(null,_0x284bx14)})[_0xbafb[21]](function(_0x284bx13){_0x284bx12(_0x284bx13)})};AGIVertices[_0xbafb[20]][_0xbafb[90]]= function(_0x284bx1a){var _0x284bx23=_[_0xbafb[91]](verticesWithRetry,_0x284bx1a[_0xbafb[54]])?_0x284bx1a:_[_0xbafb[92]](_0x284bx1a);for(var _0x284bx24 in _0x284bx23){if(_0x284bx23[_0xbafb[93]](_0x284bx24)){if(_0x284bx23[_0x284bx24]&& _[_0xbafb[94]](_0x284bx23[_0x284bx24])){_0x284bx23[_0x284bx24]= this[_0xbafb[95]](_0x284bx23[_0x284bx24])}}};return _0x284bx23};AGIVertices[_0xbafb[20]][_0xbafb[95]]= function(_0x284bx25){var _0x284bx26=_0x284bx25[_0xbafb[97]](_0xbafb[96]);for(var _0x284bx27=1;_0x284bx27< _0x284bx26[_0xbafb[98]];_0x284bx27+= 1){var _0x284bx28=_0x284bx26[_0x284bx27][_0xbafb[97]](_0xbafb[99]);if(_0x284bx28[_0xbafb[98]]> 1){_0x284bx25= _0x284bx25[_0xbafb[101]](_0xbafb[96]+ _0x284bx28[0]+ _0xbafb[99],this[_0xbafb[17]][_0xbafb[19]](_0x284bx28[0])[_0xbafb[100]]|| (_0x284bx28[0]))}};if(_0x284bx26[_0xbafb[98]]=== 1){return _0x284bx25};return this[_0xbafb[95]](_0x284bx25)};AGIVertices[_0xbafb[20]][_0xbafb[87]]= function(_0x284bx29){return _0x284bx29&& _0x284bx29!== _0xbafb[102]&& _0x284bx29!== _0xbafb[103]&& _0x284bx29!== _0xbafb[72]};AGIVertices[_0xbafb[20]][_0xbafb[104]]= function(_0x284bx1a){this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0xbafb[105]);_0x284bx1a[_0xbafb[107]]= _0x284bx1a[_0xbafb[104]];return {code:200,result:_0xbafb[105]}};AGIVertices[_0xbafb[20]][_0xbafb[9]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[108],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[9]]([_0x284bx1a[_0xbafb[110]],_0x284bx1a[_0xbafb[111]]])};AGIVertices[_0xbafb[20]][_0xbafb[112]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[113],_0x284bx1a[_0xbafb[53]]));if(this[_0xbafb[87]](_0x284bx1a[_0xbafb[114]])){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[115],_0x284bx1a[_0xbafb[114]]));var _0x284bx19=this[_0xbafb[17]][_0xbafb[116]](_0x284bx1a[_0xbafb[114]]);if(_0x284bx19[_0xbafb[117]]===  -1){return _0x284bx19}};return this[_0xbafb[17]][_0xbafb[112]]()};AGIVertices[_0xbafb[20]][_0xbafb[68]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[118],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[66]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[119])};_0x284bx1a[_0xbafb[67]]= moment();if(this[_0xbafb[87]](_0x284bx1a[_0xbafb[89]])){_0x284bx1a[_0xbafb[67]]= moment()[_0xbafb[122]](_0x284bx1a[_0xbafb[89]],_0xbafb[121])};this[_0xbafb[61]][_0xbafb[106]](this,_0x284bx1a);return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[123],_0x284bx1a[_0xbafb[65]],_0x284bx1a[_0xbafb[66]],_0x284bx1a[_0xbafb[67]]))};AGIVertices[_0xbafb[20]][_0xbafb[125]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[126],_0x284bx1a[_0xbafb[53]]));var _0x284bx2a=this[_0xbafb[17]][_0xbafb[74]](_0x284bx1a[_0xbafb[127]],_0x284bx1a[_0xbafb[128]]);if(_0x284bx2a[_0xbafb[117]]===  -1){return _0x284bx2a};return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[129],_0x284bx1a[_0xbafb[127]],_0x284bx1a[_0xbafb[128]]))};AGIVertices[_0xbafb[20]][_0xbafb[130]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[131],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[132]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[133])};var _0x284bx17=this[_0xbafb[29]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[132]]);if(!_0x284bx17){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[134])};if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[49]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[135])};var _0x284bx18=_0x284bx1a[_0xbafb[49]][_0xbafb[73]](/(\r\n|\n|\r)/gm,_0xbafb[136]);this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[137],_0x284bx18));var _0x284bx2b=this[_0xbafb[47]][_0xbafb[106]](this,_0x284bx17,_0x284bx18);this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0x284bx18);if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[138]])){return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[139])};var _0x284bx2c=this[_0xbafb[19]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[138]]);if(!_0x284bx2c){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[140])};var _0x284bx15=this;_0x284bx2b[_0xbafb[143]](function(_0x284bx29,_0x284bx2d){Object[_0xbafb[144]](_0x284bx29)[_0xbafb[143]](function(_0x284bx24){_0x284bx15[_0xbafb[17]][_0xbafb[142]](util[_0xbafb[46]](_0xbafb[141],_0x284bx2c,_0x284bx2d,_0x284bx24),_0x284bx29[_0x284bx24])})});this[_0xbafb[17]][_0xbafb[142]](util[_0xbafb[46]](_0xbafb[145],_0x284bx2c),_0x284bx2b[_0xbafb[98]]);return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[146],_0x284bx2c))};AGIVertices[_0xbafb[20]][_0xbafb[147]]= function(_0x284bx1a){logger[_0xbafb[149]](util[_0xbafb[46]](_0xbafb[148],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[150]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[151])};var _0x284bx2e=this[_0xbafb[32]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[150]]);if(!_0x284bx2e){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[152])};var _0x284bx2a=this[_0xbafb[17]][_0xbafb[74]](_0xbafb[153],[util[_0xbafb[46]](_0xbafb[154],_0x284bx2e),_0x284bx1a[_0xbafb[114]],_0x284bx1a[_0xbafb[155]],_0x284bx1a[_0xbafb[156]]]);if(_0x284bx2a[_0xbafb[117]]===  -1){return _0x284bx2a};return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[157],_0xbafb[153]))};AGIVertices[_0xbafb[20]][_0xbafb[158]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[159],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[158])};AGIVertices[_0xbafb[20]][_0xbafb[160]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[161],_0x284bx1a[_0xbafb[53]]));var _0x284bx2f=_0xbafb[72];if(_0x284bx1a[_0xbafb[162]]){if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[162]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[163])}else {var _0x284bx11=parseInt(_0x284bx1a[_0xbafb[162]],10);if(isNaN(_0x284bx11)){_0x284bx2f= _0x284bx1a[_0xbafb[162]]}else {_0x284bx2f= this[_0xbafb[34]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[162]]);if(!_0x284bx2f){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[164])}}}}else {if(_0x284bx1a[_0xbafb[165]]){_0x284bx2f= _0x284bx1a[_0xbafb[165]]}else {return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[163])}};var _0x284bx2a=this[_0xbafb[17]][_0xbafb[74]](_0xbafb[153],[util[_0xbafb[46]](_0xbafb[166],_0x284bx2f,_0x284bx1a[_0xbafb[65]]),_0x284bx1a[_0xbafb[114]],_0x284bx1a[_0xbafb[155]],_0x284bx1a[_0xbafb[156]]]);if(_0x284bx2a[_0xbafb[117]]===  -1){return _0x284bx2a};return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[157],_0xbafb[153]))};AGIVertices[_0xbafb[20]][_0xbafb[167]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[168],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[167])};AGIVertices[_0xbafb[20]][_0xbafb[15]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[169],_0x284bx1a[_0xbafb[53]]));if(_0x284bx1a[_0xbafb[107]]=== 0){return this[_0xbafb[104]](_0x284bx1a)};_0x284bx1a[_0xbafb[107]]-= 1;if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[170]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[171])};var _0x284bx30=this[_0xbafb[36]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[170]]);if(!_0x284bx30){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[172])};if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[138]])){return this[_0xbafb[17]][_0xbafb[120]](_0xbafb[139])};var _0x284bx19=this[_0xbafb[17]][_0xbafb[175]](_0x284bx30,_0x284bx1a[_0xbafb[173]],_0x284bx1a[_0xbafb[174]]);var _0x284bx31=_0x284bx19[_0xbafb[117]];if(_0x284bx19[_0xbafb[117]]===  -1){this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0x284bx19[_0xbafb[117]]);return _0x284bx19}else {if(_0x284bx19[_0xbafb[100]]=== _0xbafb[114]){_0x284bx19[_0xbafb[117]]= (_0x284bx19[_0xbafb[117]][_0xbafb[98]]>= parseInt(_0x284bx1a[_0xbafb[176]]))?_0xbafb[177]:_0xbafb[178]}else {_0x284bx19[_0xbafb[117]]= ((_0x284bx19[_0xbafb[117]][_0xbafb[98]]>= parseInt(_0x284bx1a[_0xbafb[176]]))&& (_0x284bx19[_0xbafb[117]][_0xbafb[98]]<= parseInt(_0x284bx1a[_0xbafb[174]])))?_0xbafb[177]:_0xbafb[178]}};var _0x284bx2c=this[_0xbafb[19]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[138]]);if(!_0x284bx2c){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[140])};this[_0xbafb[17]][_0xbafb[142]](_0x284bx2c,_0x284bx31);if(this[_0xbafb[87]](_0x284bx1a[_0xbafb[179]])){var _0x284bx32=parseInt(_0x284bx1a[_0xbafb[179]],10);var _0x284bx29=rs[_0xbafb[181]]({charset:_0xbafb[180],length:_0x284bx32});var _0x284bx33=_0x284bx31[_0xbafb[98]];if(_0x284bx33> 0){if(_0x284bx33> _0x284bx32){this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,(_0x284bx1a[_0xbafb[182]]=== _0xbafb[183])?_0x284bx29+ _0x284bx31[_0xbafb[184]](_0x284bx32):_0x284bx31[_0xbafb[184]](0,_0x284bx33- _0x284bx32)+ _0x284bx29)}else {this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,rs[_0xbafb[181]]({charset:_0xbafb[180],length:_0x284bx33}))}}else {this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0xbafb[72])}}else {this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0x284bx31)};return _0x284bx19};AGIVertices[_0xbafb[20]][_0xbafb[16]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[185],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[15]](_0x284bx1a)};AGIVertices[_0xbafb[20]][_0xbafb[186]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[187],_0x284bx1a[_0xbafb[53]]));this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0x284bx1a[_0xbafb[188]]);return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[189],_0x284bx1a[_0xbafb[188]]))};AGIVertices[_0xbafb[20]][_0xbafb[190]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[191],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[195]](_0x284bx1a[_0xbafb[192]],_0x284bx1a[_0xbafb[193]],_0x284bx1a[_0xbafb[194]])};AGIVertices[_0xbafb[20]][_0xbafb[196]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[197],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[198]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[199])};try{var _0x284bx34=eval(_0x284bx1a[_0xbafb[198]])?_0xbafb[200]:_0xbafb[201];this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[202],_0x284bx1a[_0xbafb[198]],_0x284bx34));return {code:200,result:_0x284bx34}}catch(e){return {code:200,result:_0xbafb[201]}}};AGIVertices[_0xbafb[20]][_0xbafb[203]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[204],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[205]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[206])};var _0x284bx35=this[_0xbafb[40]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[205]]);if(!_0x284bx35){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[207])};for(var _0x284bx27=0;_0x284bx27< _0x284bx35[_0xbafb[98]];_0x284bx27+= 1){var _0x284bx36=this[_0xbafb[17]][_0xbafb[19]](util[_0xbafb[46]](_0xbafb[208],_0x284bx35[_0x284bx27]));if(_0x284bx36[_0xbafb[117]]===  -1){return _0x284bx36};logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[209],_0x284bx35[_0x284bx27],_0x284bx36[_0xbafb[100]]));if(_0x284bx36[_0xbafb[100]]=== _0xbafb[200]){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[209],_0x284bx35[_0x284bx27],_0xbafb[200]));this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[209],_0x284bx35[_0x284bx27],_0xbafb[200]));return {code:200,result:_0xbafb[200]}}else {logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[209],_0x284bx35[_0x284bx27],_0xbafb[201]));this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[209],_0x284bx35[_0x284bx27],_0xbafb[201]))}};return {code:200,result:_0xbafb[201]}};AGIVertices[_0xbafb[20]][_0xbafb[210]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[211],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[210]]()};AGIVertices[_0xbafb[20]][_0xbafb[212]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[213],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[80]])){return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[214])};var _0x284bx37=_0x284bx1a[_0xbafb[215]]|| _0xbafb[216];var _0x284bx22=path[_0xbafb[219]](scripts[_0xbafb[217]](),_0xbafb[218],rs[_0xbafb[181]](4));var _0x284bx1b=util[_0xbafb[46]](_0xbafb[220],_0x284bx22,_0x284bx37);var _0x284bx38=true;if(_0x284bx1a[_0xbafb[221]]=== _0xbafb[222]){_0x284bx38= false};var _0x284bx19=this[_0xbafb[17]][_0xbafb[224]](_0x284bx22,_0x284bx37,_0x284bx1a[_0xbafb[223]],_0x284bx1a[_0xbafb[114]],undefined,_0x284bx38);if(_0x284bx19[_0xbafb[117]]!==  -1){this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[225],_0x284bx1b));var _0x284bx2b=this[_0xbafb[84]][_0xbafb[106]](this,_0x284bx1a,_0x284bx1b);fs[_0xbafb[226]](_0x284bx1b);if(_0x284bx2b){for(var _0x284bx24 in _0x284bx2b){if(_0x284bx2b[_0xbafb[93]](_0x284bx24)){this[_0xbafb[17]][_0xbafb[142]](util[_0xbafb[46]](_0xbafb[227],_0x284bx24[_0xbafb[228]]()),_0x284bx2b[_0x284bx24])}};return this[_0xbafb[17]][_0xbafb[124]](JSON[_0xbafb[229]](_0x284bx2b))}};return _0x284bx19};AGIVertices[_0xbafb[20]][_0xbafb[230]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[231],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[80]])){return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[214])};if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[76]])){return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[232])};this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[233],_0x284bx1a[_0xbafb[76]]));var _0x284bx39=this[_0xbafb[79]][_0xbafb[106]](this,_0x284bx1a);if(_0x284bx39){this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[225],_0x284bx39));var _0x284bx19=this[_0xbafb[17]][_0xbafb[234]](_0x284bx39,_0x284bx1a[_0xbafb[223]]);fs[_0xbafb[226]](_0x284bx39+ _0xbafb[235]);return _0x284bx19};return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[236])};AGIVertices[_0xbafb[20]][_0xbafb[237]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[238],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[239]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[240])};this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[241],_0x284bx1a[_0xbafb[239]]));var _0x284bx2b=eval(_0x284bx1a[_0xbafb[239]]);if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[138]])){return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[139])};var _0x284bx2c=this[_0xbafb[19]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[138]]);if(!_0x284bx2c){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[140])};if(_[_0xbafb[242]](_0x284bx2b)){var _0x284bx15=this;_0x284bx2b[_0xbafb[143]](function(_0x284bx29,_0x284bx24){_0x284bx15[_0xbafb[17]][_0xbafb[142]](util[_0xbafb[46]](_0xbafb[243],_0x284bx2c,_0x284bx24),_0x284bx29)});return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[244],_0x284bx2c))}else {return this[_0xbafb[17]][_0xbafb[142]](_0x284bx2c,_0x284bx2b)}};AGIVertices[_0xbafb[20]][_0xbafb[14]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[245],_0x284bx1a[_0xbafb[53]]));if(_0x284bx1a[_0xbafb[107]]=== 0){return this[_0xbafb[104]](_0x284bx1a)};_0x284bx1a[_0xbafb[107]]-= 1;if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[170]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[171])};var _0x284bx30=this[_0xbafb[36]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[170]]);if(!_0x284bx30){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[172])};var _0x284bx19=this[_0xbafb[17]][_0xbafb[175]](_0x284bx30,_0x284bx1a[_0xbafb[173]],_0x284bx1a[_0xbafb[246]]);var _0x284bx31=_0x284bx19[_0xbafb[117]];if(_0x284bx19[_0xbafb[117]]===  -1){this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0xbafb[103]);return _0x284bx19}else {if(_0x284bx19[_0xbafb[100]]=== _0xbafb[114]){_0x284bx19[_0xbafb[117]]= (_0x284bx19[_0xbafb[117]][_0xbafb[98]]> 0)?_0x284bx19[_0xbafb[117]]:_0xbafb[247]}};if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[138]])){this[_0xbafb[17]][_0xbafb[124]](_0xbafb[139])}else {var _0x284bx2c=this[_0xbafb[19]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[138]]);if(!_0x284bx2c){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[140])};this[_0xbafb[17]][_0xbafb[142]](_0x284bx2c,_0x284bx31)};this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0x284bx31);return _0x284bx19};AGIVertices[_0xbafb[20]][_0xbafb[124]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[248],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[124]](_0x284bx1a[_0xbafb[249]]|| _0x284bx1a[_0xbafb[53]])};AGIVertices[_0xbafb[20]][_0xbafb[250]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[251],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[170]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[171])};var _0x284bx30=this[_0xbafb[36]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[170]]);if(!_0x284bx30){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[172])};var _0x284bx2a=this[_0xbafb[17]][_0xbafb[74]](_0xbafb[252],[_0x284bx30,_0x284bx1a[_0xbafb[155]]]);if(_0x284bx2a[_0xbafb[117]]===  -1){return _0x284bx2a};return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[129],_0xbafb[252],_0x284bx30))};AGIVertices[_0xbafb[20]][_0xbafb[253]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[254],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[255]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[256])};var _0x284bx3a=_0xbafb[72];var _0x284bx11=parseInt(_0x284bx1a[_0xbafb[255]],10);if(isNaN(_0x284bx11)){_0x284bx3a= _0x284bx1a[_0xbafb[255]]}else {_0x284bx3a= this[_0xbafb[25]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[255]]);if(!_0x284bx3a){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[257])}};var _0x284bx3b=_0xbafb[72];if(this[_0xbafb[87]](_0x284bx1a[_0xbafb[170]])){var _0x284bx3c=this[_0xbafb[36]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[170]]);if(_0x284bx3c){_0x284bx3b= _0x284bx3c}};this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0x284bx3a);if(_0x284bx1a[_0xbafb[155]][_0xbafb[258]](_0xbafb[177])< 0){_0x284bx1a[_0xbafb[155]]+= _0xbafb[177]};if(_0x284bx1a[_0xbafb[155]][_0xbafb[258]](_0xbafb[259])< 0){_0x284bx1a[_0xbafb[155]]+= _0xbafb[259]};var _0x284bx2a=this[_0xbafb[17]][_0xbafb[74]](_0xbafb[260],[_0x284bx3a,_0x284bx1a[_0xbafb[155]],_0x284bx1a[_0xbafb[156]],_0x284bx3b,_0x284bx1a[_0xbafb[114]],_0x284bx1a[_0xbafb[9]],_0x284bx1a[_0xbafb[261]],_0x284bx1a[_0xbafb[262]],_0xbafb[72],_0x284bx1a[_0xbafb[263]]]);if(_0x284bx2a[_0xbafb[117]]===  -1){return _0x284bx2a};return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[129],_0xbafb[260],_0x284bx3a))};AGIVertices[_0xbafb[20]][_0xbafb[264]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[265],_0x284bx1a[_0xbafb[53]]));var _0x284bx37=_0x284bx1a[_0xbafb[215]]|| _0xbafb[216];var _0x284bx1b=util[_0xbafb[46]](_0xbafb[266],this[_0xbafb[17]][_0xbafb[52]],rs[_0xbafb[181]](5));var _0x284bx1c=util[_0xbafb[46]](_0xbafb[267],FILES_PATH,_0x284bx1b,_0x284bx37);var _0x284bx3d=util[_0xbafb[46]](_0xbafb[268],FILES_PATH,_0x284bx1b);this[_0xbafb[57]][_0xbafb[106]](this,_0x284bx1a,_0x284bx1b,_0x284bx1c);this[_0xbafb[17]][_0xbafb[142]](_0xbafb[269],_0x284bx1b);return this[_0xbafb[17]][_0xbafb[224]](_0x284bx3d,_0x284bx37,_0x284bx1a[_0xbafb[270]],_0x284bx1a[_0xbafb[114]],undefined,true)};AGIVertices[_0xbafb[20]][_0xbafb[271]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[272],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[274]](_0x284bx1a[_0xbafb[273]][_0xbafb[73]](/\s+/g,_0xbafb[72]),_0x284bx1a[_0xbafb[270]])};AGIVertices[_0xbafb[20]][_0xbafb[275]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[276],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[278]](_0x284bx1a[_0xbafb[277]][_0xbafb[73]](/\s+/g,_0xbafb[72]),_0x284bx1a[_0xbafb[270]])};AGIVertices[_0xbafb[20]][_0xbafb[279]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[280],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[281]](_0x284bx1a[_0xbafb[76]],_0x284bx1a[_0xbafb[270]])};AGIVertices[_0xbafb[20]][_0xbafb[282]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[283],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[284])};AGIVertices[_0xbafb[20]][_0xbafb[285]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[286],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[287])};AGIVertices[_0xbafb[20]][_0xbafb[288]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[289],_0x284bx1a[_0xbafb[53]]));return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[290])};AGIVertices[_0xbafb[20]][_0xbafb[291]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[292],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[138]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[293])};var _0x284bx2c=this[_0xbafb[19]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[138]]);if(!_0x284bx2c){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[140])};return this[_0xbafb[17]][_0xbafb[142]](_0x284bx2c,_0x284bx1a[_0xbafb[294]])};AGIVertices[_0xbafb[20]][_0xbafb[295]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[296],_0x284bx1a[_0xbafb[53]]));this[_0xbafb[17]][_0xbafb[124]](_0xbafb[297]);if(_0x284bx1a[_0xbafb[112]]=== _0xbafb[298]){this[_0xbafb[17]][_0xbafb[124]](_0xbafb[299]);return this[_0xbafb[17]][_0xbafb[112]]()};return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[300])};AGIVertices[_0xbafb[20]][_0xbafb[301]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[302],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[303]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[304])};var _0x284bx3e=this[_0xbafb[27]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[303]]);if(!this[_0xbafb[87]](_0x284bx3e)){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,util[_0xbafb[46]](_0xbafb[305],_0x284bx1a[_0xbafb[303]]))};if(_0x284bx3e=== this[_0xbafb[17]][_0xbafb[55]]){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[306])};this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0x284bx3e);var _0x284bx2a=this[_0xbafb[17]][_0xbafb[74]](_0xbafb[307],util[_0xbafb[46]](_0xbafb[308],config[_0xbafb[9]][_0xbafb[309]]|| _0xbafb[310],_0x284bx3e,this[_0xbafb[17]][_0xbafb[55]]));if(_0x284bx2a[_0xbafb[117]]===  -1){return _0x284bx2a};return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[129],_0xbafb[307],_0x284bx3e))};AGIVertices[_0xbafb[20]][_0xbafb[311]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[312],_0x284bx1a[_0xbafb[53]]));var _0x284bx20=this[_0xbafb[70]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[110]]);this[_0xbafb[51]][_0xbafb[106]](this,_0x284bx1a,_0x284bx1a[_0xbafb[110]]);if(this[_0xbafb[87]](_0x284bx1a[_0xbafb[138]])){var _0x284bx2c=this[_0xbafb[19]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[138]]);if(_0x284bx2c){this[_0xbafb[17]][_0xbafb[142]](_0x284bx2c,_0x284bx20);return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[313],_0x284bx1a[_0xbafb[110]],_0x284bx2c))}};return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[314],_0x284bx1a[_0xbafb[110]]))};AGIVertices[_0xbafb[20]][_0xbafb[315]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[316],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[76]])){return this[_0xbafb[17]][_0xbafb[124]](_0xbafb[232])};this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[317],_0x284bx1a[_0xbafb[76]]));var _0x284bx39=this[_0xbafb[75]][_0xbafb[106]](this,_0x284bx1a);if(_0x284bx39){this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[318],_0x284bx39));var _0x284bx19=this[_0xbafb[17]][_0xbafb[234]](_0x284bx39);fs[_0xbafb[226]](_0x284bx39+ _0xbafb[235]);return _0x284bx19};return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[319])};AGIVertices[_0xbafb[20]][_0xbafb[320]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[321],_0x284bx1a[_0xbafb[53]]));var _0x284bx2a=this[_0xbafb[17]][_0xbafb[74]](_0xbafb[322],[_0x284bx1a[_0xbafb[323]],_0x284bx1a[_0xbafb[128]]]);if(_0x284bx2a[_0xbafb[117]]===  -1){return _0x284bx2a};return this[_0xbafb[17]][_0xbafb[124]](util[_0xbafb[46]](_0xbafb[129],_0xbafb[322],_0x284bx1a[_0xbafb[323]]))};AGIVertices[_0xbafb[20]][_0xbafb[324]]= function(_0x284bx1a){logger[_0xbafb[109]](util[_0xbafb[46]](_0xbafb[325],_0x284bx1a[_0xbafb[53]]));if(!this[_0xbafb[87]](_0x284bx1a[_0xbafb[138]])){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[293])};var _0x284bx2c=this[_0xbafb[19]][_0xbafb[106]](this,_0x284bx1a[_0xbafb[138]]);if(!_0x284bx2c){return this[_0xbafb[17]][_0xbafb[120]](_0x284bx1a,_0xbafb[140])};var _0x284bx36=this[_0xbafb[17]][_0xbafb[19]](_0x284bx2c);return {code:200,result:(_0x284bx36[_0xbafb[100]])?_0x284bx36[_0xbafb[100]]:_0xbafb[105]}};String[_0xbafb[20]][_0xbafb[101]]= function(_0x284bx3f,_0x284bx40){return this[_0xbafb[97]](_0x284bx3f)[_0xbafb[326]](_0x284bx40)};module[_0xbafb[327]]= AGIVertices
\ No newline at end of file
index cb7cdd9..4dd25be 100644 (file)
@@ -1 +1 @@
-var _0x1f05=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x61\x6D\x69","\x2E\x2E\x2F\x72\x70\x63\x2F\x75\x73\x65\x72","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x61\x67\x65\x6E\x74\x73","\x74\x69\x6D\x65\x72\x73","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74","\x6F\x6E","\x68\x61\x6E\x67\x75\x70\x72\x65\x71\x75\x65\x73\x74","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x52\x65\x71\x75\x65\x73\x74","\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x52\x69\x6E\x67\x4E\x6F\x41\x6E\x73\x77\x65\x72","\x73\x74\x61\x72\x74\x41\x63\x77","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x6E\x74\x65\x72\x66\x61\x63\x65","\x71\x75\x65\x75\x65","\x66\x69\x6E\x61\x6C\x6C\x79","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x73\x74\x6F\x70\x41\x63\x77","\x61\x63\x77\x54\x69\x6D\x65\x6F\x75\x74","\x74\x68\x65\x6E","\x41\x43\x57","\x73\x61\x76\x65\x50\x61\x75\x73\x65","\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65","\x73\x61\x76\x65\x55\x6E\x70\x61\x75\x73\x65","\x61\x63\x77","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x61\x75\x74\x6F\x50\x61\x75\x73\x65","\x41\x75\x74\x6F\x2D\x50\x61\x75\x73\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x1f05[0];var util=require(_0x1f05[1]);var _=require(_0x1f05[2]);var ami=require(_0x1f05[3]);var RpcUser=require(_0x1f05[4]);var io=require(_0x1f05[6])({host:_0x1f05[5],port:6379});function Acw(_0x7dcfx7){this[_0x1f05[7]]= _0x7dcfx7[_0x1f05[7]];this[_0x1f05[8]]= _0x7dcfx7[_0x1f05[8]];this[_0x1f05[9]]= _0x7dcfx7[_0x1f05[9]];this[_0x1f05[10]]= {};ami[_0x1f05[14]](_0x1f05[11],this[_0x1f05[13]][_0x1f05[12]](this));ami[_0x1f05[14]](_0x1f05[15],this[_0x1f05[16]][_0x1f05[12]](this));ami[_0x1f05[14]](_0x1f05[17],this[_0x1f05[18]][_0x1f05[12]](this))}Acw[_0x1f05[20]][_0x1f05[19]]= function(_0x7dcfx8){var _0x7dcfx9=this;var _0x7dcfxa=this[_0x1f05[10]][_0x7dcfx8][_0x1f05[21]];var _0x7dcfxb=this[_0x1f05[10]][_0x7dcfx8][_0x1f05[22]];ami.Action({action:_0x1f05[31],interface:_0x7dcfxa,paused:true,reason:_0x1f05[29]})[_0x1f05[28]](function(_0x7dcfxe){return RpcUser[_0x1f05[30]](_0x7dcfx9[_0x1f05[8]][_0x7dcfxa],_0x1f05[29])})[_0x1f05[28]](function(_0x7dcfxd){_0x7dcfx9[_0x1f05[9]][_0x7dcfxa]= setTimeout(_0x7dcfx9[_0x1f05[26]][_0x1f05[12]](_0x7dcfx9,_0x7dcfxa),_0x7dcfx9[_0x1f05[7]][_0x7dcfxb][_0x1f05[27]]* 1000)})[_0x1f05[25]](function(_0x7dcfxc){console[_0x1f05[24]](_0x7dcfxc)})[_0x1f05[23]](function(){delete _0x7dcfx9[_0x1f05[10]][_0x7dcfx8]})};Acw[_0x1f05[20]][_0x1f05[26]]= function(_0x7dcfxa){RpcUser[_0x1f05[32]](this[_0x1f05[8]][_0x7dcfxa])};Acw[_0x1f05[20]][_0x1f05[13]]= function(_0x7dcfxf){if(this[_0x1f05[7]][_0x7dcfxf[_0x1f05[22]]]&& this[_0x1f05[7]][_0x7dcfxf[_0x1f05[22]]][_0x1f05[33]]){if(this[_0x1f05[8]][_0x7dcfxf[_0x1f05[21]]]){this[_0x1f05[10]][_0x7dcfxf[_0x1f05[34]]]= {queue:_0x7dcfxf[_0x1f05[22]],interface:_0x7dcfxf[_0x1f05[21]]}}}};Acw[_0x1f05[20]][_0x1f05[16]]= function(_0x7dcfxf){if(this[_0x1f05[10]][_0x7dcfxf[_0x1f05[34]]]){this[_0x1f05[19]](_0x7dcfxf[_0x1f05[34]])}else {if(this[_0x1f05[10]][_0x7dcfxf[_0x1f05[35]]]){this[_0x1f05[19]](_0x7dcfxf[_0x1f05[35]])}}};Acw[_0x1f05[20]][_0x1f05[18]]= function(_0x7dcfxf){if(this[_0x1f05[7]][_0x7dcfxf[_0x1f05[22]]]&& this[_0x1f05[7]][_0x7dcfxf[_0x1f05[22]]][_0x1f05[36]]){if(this[_0x1f05[8]][_0x7dcfxf[_0x1f05[21]]]){return RpcUser[_0x1f05[30]](this[_0x1f05[8]][_0x7dcfxf[_0x1f05[21]]],_0x1f05[37])}}};module[_0x1f05[38]]= Acw
\ No newline at end of file
+var _0x76e6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x61\x6D\x69","\x2E\x2E\x2F\x72\x70\x63\x2F\x75\x73\x65\x72","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x61\x67\x65\x6E\x74\x73","\x74\x69\x6D\x65\x72\x73","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74","\x6F\x6E","\x68\x61\x6E\x67\x75\x70\x72\x65\x71\x75\x65\x73\x74","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x52\x65\x71\x75\x65\x73\x74","\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x52\x69\x6E\x67\x4E\x6F\x41\x6E\x73\x77\x65\x72","\x73\x74\x61\x72\x74\x41\x63\x77","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x6E\x74\x65\x72\x66\x61\x63\x65","\x71\x75\x65\x75\x65","\x66\x69\x6E\x61\x6C\x6C\x79","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x73\x74\x6F\x70\x41\x63\x77","\x61\x63\x77\x54\x69\x6D\x65\x6F\x75\x74","\x74\x68\x65\x6E","\x41\x43\x57","\x73\x61\x76\x65\x50\x61\x75\x73\x65","\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65","\x73\x61\x76\x65\x55\x6E\x70\x61\x75\x73\x65","\x61\x63\x77","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x61\x75\x74\x6F\x50\x61\x75\x73\x65","\x41\x75\x74\x6F\x2D\x50\x61\x75\x73\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x76e6[0];var util=require(_0x76e6[1]);var _=require(_0x76e6[2]);var ami=require(_0x76e6[3]);var RpcUser=require(_0x76e6[4]);var io=require(_0x76e6[6])({host:_0x76e6[5],port:6379});function Acw(_0x8c46x7){this[_0x76e6[7]]= _0x8c46x7[_0x76e6[7]];this[_0x76e6[8]]= _0x8c46x7[_0x76e6[8]];this[_0x76e6[9]]= _0x8c46x7[_0x76e6[9]];this[_0x76e6[10]]= {};ami[_0x76e6[14]](_0x76e6[11],this[_0x76e6[13]][_0x76e6[12]](this));ami[_0x76e6[14]](_0x76e6[15],this[_0x76e6[16]][_0x76e6[12]](this));ami[_0x76e6[14]](_0x76e6[17],this[_0x76e6[18]][_0x76e6[12]](this))}Acw[_0x76e6[20]][_0x76e6[19]]= function(_0x8c46x8){var _0x8c46x9=this;var _0x8c46xa=this[_0x76e6[10]][_0x8c46x8][_0x76e6[21]];var _0x8c46xb=this[_0x76e6[10]][_0x8c46x8][_0x76e6[22]];ami.Action({action:_0x76e6[31],interface:_0x8c46xa,paused:true,reason:_0x76e6[29]})[_0x76e6[28]](function(_0x8c46xe){return RpcUser[_0x76e6[30]](_0x8c46x9[_0x76e6[8]][_0x8c46xa],_0x76e6[29])})[_0x76e6[28]](function(_0x8c46xd){_0x8c46x9[_0x76e6[9]][_0x8c46xa]= setTimeout(_0x8c46x9[_0x76e6[26]][_0x76e6[12]](_0x8c46x9,_0x8c46xa),_0x8c46x9[_0x76e6[7]][_0x8c46xb][_0x76e6[27]]* 1000)})[_0x76e6[25]](function(_0x8c46xc){console[_0x76e6[24]](_0x8c46xc)})[_0x76e6[23]](function(){delete _0x8c46x9[_0x76e6[10]][_0x8c46x8]})};Acw[_0x76e6[20]][_0x76e6[26]]= function(_0x8c46xa){RpcUser[_0x76e6[32]](this[_0x76e6[8]][_0x8c46xa])};Acw[_0x76e6[20]][_0x76e6[13]]= function(_0x8c46xf){if(this[_0x76e6[7]][_0x8c46xf[_0x76e6[22]]]&& this[_0x76e6[7]][_0x8c46xf[_0x76e6[22]]][_0x76e6[33]]){if(this[_0x76e6[8]][_0x8c46xf[_0x76e6[21]]]){this[_0x76e6[10]][_0x8c46xf[_0x76e6[34]]]= {queue:_0x8c46xf[_0x76e6[22]],interface:_0x8c46xf[_0x76e6[21]]}}}};Acw[_0x76e6[20]][_0x76e6[16]]= function(_0x8c46xf){if(this[_0x76e6[10]][_0x8c46xf[_0x76e6[34]]]){this[_0x76e6[19]](_0x8c46xf[_0x76e6[34]])}else {if(this[_0x76e6[10]][_0x8c46xf[_0x76e6[35]]]){this[_0x76e6[19]](_0x8c46xf[_0x76e6[35]])}}};Acw[_0x76e6[20]][_0x76e6[18]]= function(_0x8c46xf){if(this[_0x76e6[7]][_0x8c46xf[_0x76e6[22]]]&& this[_0x76e6[7]][_0x8c46xf[_0x76e6[22]]][_0x76e6[36]]){if(this[_0x76e6[8]][_0x8c46xf[_0x76e6[21]]]){return RpcUser[_0x76e6[30]](this[_0x76e6[8]][_0x8c46xf[_0x76e6[21]]],_0x76e6[37])}}};module[_0x76e6[38]]= Acw
\ No newline at end of file
index 832731e..654fe6f 100644 (file)
@@ -1 +1 @@
-var _0x30ba=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x61\x73\x74\x65\x72\x69\x73\x6B\x2D\x6D\x61\x6E\x61\x67\x65\x72","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x70\x6F\x72\x74","\x61\x73\x74\x65\x72\x69\x73\x6B","\x69\x70","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x6B\x65\x65\x70\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x41\x63\x74\x69\x6F\x6E","\x61\x63\x74\x69\x6F\x6E","\x70\x72\x6F\x6D\x69\x73\x69\x66\x79","\x4D\x61\x6E\x61\x67\x65\x72\x20\x22\x25\x73\x22\x20\x65\x72\x72\x6F\x72\x20\x74\x6F\x20\x25\x73\x3A\x25\x73\x20\x77\x69\x74\x68\x3A\x0A\x25\x73","\x69\x6E\x73\x70\x65\x63\x74","\x66\x6F\x72\x6D\x61\x74","\x65\x72\x72\x6F\x72","\x4D\x61\x6E\x61\x67\x65\x72\x20\x22\x25\x73\x22\x20\x63\x6C\x6F\x73\x65\x64\x20\x74\x6F\x20\x25\x73\x3A\x25\x73","\x61\x63\x74\x69\x6F\x6E\x53\x69\x70\x53\x68\x6F\x77\x52\x65\x67\x69\x73\x74\x72\x79","\x61\x63\x74\x69\x6F\x6E\x3A","\x53\x69\x70\x53\x68\x6F\x77\x52\x65\x67\x69\x73\x74\x72\x79","\x69\x6E\x66\x6F","\x73\x69\x70\x73\x68\x6F\x77\x72\x65\x67\x69\x73\x74\x72\x79","\x61\x63\x74\x69\x6F\x6E\x44\x65\x76\x69\x63\x65\x53\x74\x61\x74\x65\x4C\x69\x73\x74","\x64\x65\x76\x69\x63\x65\x73\x74\x61\x74\x65\x6C\x69\x73\x74","\x61\x63\x74\x69\x6F\x6E\x53\x69\x70\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73","\x53\x69\x70\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73","\x73\x69\x70\x70\x65\x65\x72\x73\x74\x61\x74\x75\x73","\x61\x63\x74\x69\x6F\x6E\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79","\x61\x63\x74\x69\x6F\x6E\x43\x6F\x72\x65\x53\x68\x6F\x77\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x63\x6F\x72\x65\x73\x68\x6F\x77\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x4D\x61\x6E\x61\x67\x65\x72\x20\x22\x25\x73\x22\x20\x6C\x6F\x67\x67\x65\x64\x20\x6F\x6E\x20\x74\x6F\x20\x25\x73\x3A\x25\x73","\x6F\x6E\x63\x65","\x63\x6C\x6F\x73\x65","\x63\x6F\x6E\x6E\x65\x63\x74","\x6F\x6E","\x73\x68\x75\x74\x64\x6F\x77\x6E","\x53\x68\x75\x74\x64\x6F\x77\x6E\x20\x22\x25\x73\x22\x20\x74\x6F\x20\x25\x73\x3A\x25\x73\x20\x77\x69\x74\x68\x3A\x0A\x25\x73","\x66\x75\x6C\x6C\x79\x62\x6F\x6F\x74\x65\x64","\x46\x75\x6C\x6C\x79\x62\x6F\x6F\x74\x65\x64\x20\x22\x25\x73\x22\x20\x74\x6F\x20\x25\x73\x3A\x25\x73","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x72\x65\x73\x6F\x6C\x76\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x30ba[0];var Manager=require(_0x30ba[1]);var BPromise=require(_0x30ba[2]);var moment=require(_0x30ba[3]);var util=require(_0x30ba[4]);var _=require(_0x30ba[5]);var logger=require(_0x30ba[7])(_0x30ba[6]);var config=require(_0x30ba[8]);var ami= new Manager(config[_0x30ba[10]][_0x30ba[9]],config[_0x30ba[10]][_0x30ba[11]],config[_0x30ba[10]][_0x30ba[12]],config[_0x30ba[10]][_0x30ba[13]],true);ami[_0x30ba[14]]();ami[_0x30ba[15]]= BPromise[_0x30ba[17]](ami[_0x30ba[16]]);function error(_0x4f8fxa){logger[_0x30ba[21]](util[_0x30ba[20]](_0x30ba[18],config[_0x30ba[10]][_0x30ba[12]],config[_0x30ba[10]][_0x30ba[11]],config[_0x30ba[10]][_0x30ba[9]],util[_0x30ba[19]](_0x4f8fxa,false,null)))}function close(){logger[_0x30ba[21]](util[_0x30ba[20]](_0x30ba[22],config[_0x30ba[10]][_0x30ba[12]],config[_0x30ba[10]][_0x30ba[11]],config[_0x30ba[10]][_0x30ba[9]]))}ami[_0x30ba[23]]= function(){logger[_0x30ba[26]](_0x30ba[24],_0x30ba[25]);return function(){return ami.Action({action:_0x30ba[27]})}};ami[_0x30ba[28]]= function(){logger[_0x30ba[26]](_0x30ba[24],_0x30ba[25]);return function(){return ami.Action({action:_0x30ba[29]})}};ami[_0x30ba[30]]= function(){logger[_0x30ba[26]](_0x30ba[24],_0x30ba[31]);return function(){return ami.Action({action:_0x30ba[32]})}};ami[_0x30ba[33]]= function(){return function(){return ami.Action({action:_0x30ba[34]})}};ami[_0x30ba[35]]= function(){return function(){return ami.Action({action:_0x30ba[36]})}};function connect(_0x4f8fxa){logger[_0x30ba[26]](util[_0x30ba[20]](_0x30ba[37],config[_0x30ba[10]][_0x30ba[12]],config[_0x30ba[10]][_0x30ba[11]],config[_0x30ba[10]][_0x30ba[9]]));ami[_0x30ba[38]](_0x30ba[21],error);ami[_0x30ba[38]](_0x30ba[39],close)}ami[_0x30ba[41]](_0x30ba[40],connect);ami[_0x30ba[41]](_0x30ba[42],function(_0x4f8fxd){logger[_0x30ba[26]](util[_0x30ba[20]](_0x30ba[43],config[_0x30ba[10]][_0x30ba[12]],config[_0x30ba[10]][_0x30ba[11]],config[_0x30ba[10]][_0x30ba[9]],util[_0x30ba[19]](_0x4f8fxd,false,null)))});ami[_0x30ba[41]](_0x30ba[44],function(_0x4f8fxd){logger[_0x30ba[26]](util[_0x30ba[20]](_0x30ba[45],config[_0x30ba[10]][_0x30ba[12]],config[_0x30ba[10]][_0x30ba[11]],config[_0x30ba[10]][_0x30ba[9]]));return BPromise[_0x30ba[49]]()[_0x30ba[48]](ami[_0x30ba[23]]())[_0x30ba[48]](ami[_0x30ba[28]]())[_0x30ba[48]](ami[_0x30ba[30]]())[_0x30ba[48]](ami[_0x30ba[33]]())[_0x30ba[48]](ami[_0x30ba[35]]())[_0x30ba[47]](function(_0x4f8fxa){console[_0x30ba[46]](_0x4f8fxa)})});ami[_0x30ba[38]](_0x30ba[21],error);ami[_0x30ba[38]](_0x30ba[39],close);module[_0x30ba[50]]= ami
\ No newline at end of file
+var _0xf36b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x61\x73\x74\x65\x72\x69\x73\x6B\x2D\x6D\x61\x6E\x61\x67\x65\x72","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x70\x6F\x72\x74","\x61\x73\x74\x65\x72\x69\x73\x6B","\x69\x70","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x6B\x65\x65\x70\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x41\x63\x74\x69\x6F\x6E","\x61\x63\x74\x69\x6F\x6E","\x70\x72\x6F\x6D\x69\x73\x69\x66\x79","\x4D\x61\x6E\x61\x67\x65\x72\x20\x22\x25\x73\x22\x20\x65\x72\x72\x6F\x72\x20\x74\x6F\x20\x25\x73\x3A\x25\x73\x20\x77\x69\x74\x68\x3A\x0A\x25\x73","\x69\x6E\x73\x70\x65\x63\x74","\x66\x6F\x72\x6D\x61\x74","\x65\x72\x72\x6F\x72","\x4D\x61\x6E\x61\x67\x65\x72\x20\x22\x25\x73\x22\x20\x63\x6C\x6F\x73\x65\x64\x20\x74\x6F\x20\x25\x73\x3A\x25\x73","\x61\x63\x74\x69\x6F\x6E\x53\x69\x70\x53\x68\x6F\x77\x52\x65\x67\x69\x73\x74\x72\x79","\x61\x63\x74\x69\x6F\x6E\x3A","\x53\x69\x70\x53\x68\x6F\x77\x52\x65\x67\x69\x73\x74\x72\x79","\x69\x6E\x66\x6F","\x73\x69\x70\x73\x68\x6F\x77\x72\x65\x67\x69\x73\x74\x72\x79","\x61\x63\x74\x69\x6F\x6E\x44\x65\x76\x69\x63\x65\x53\x74\x61\x74\x65\x4C\x69\x73\x74","\x64\x65\x76\x69\x63\x65\x73\x74\x61\x74\x65\x6C\x69\x73\x74","\x61\x63\x74\x69\x6F\x6E\x53\x69\x70\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73","\x53\x69\x70\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73","\x73\x69\x70\x70\x65\x65\x72\x73\x74\x61\x74\x75\x73","\x61\x63\x74\x69\x6F\x6E\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79","\x61\x63\x74\x69\x6F\x6E\x43\x6F\x72\x65\x53\x68\x6F\x77\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x63\x6F\x72\x65\x73\x68\x6F\x77\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x4D\x61\x6E\x61\x67\x65\x72\x20\x22\x25\x73\x22\x20\x6C\x6F\x67\x67\x65\x64\x20\x6F\x6E\x20\x74\x6F\x20\x25\x73\x3A\x25\x73","\x6F\x6E\x63\x65","\x63\x6C\x6F\x73\x65","\x63\x6F\x6E\x6E\x65\x63\x74","\x6F\x6E","\x73\x68\x75\x74\x64\x6F\x77\x6E","\x53\x68\x75\x74\x64\x6F\x77\x6E\x20\x22\x25\x73\x22\x20\x74\x6F\x20\x25\x73\x3A\x25\x73\x20\x77\x69\x74\x68\x3A\x0A\x25\x73","\x66\x75\x6C\x6C\x79\x62\x6F\x6F\x74\x65\x64","\x46\x75\x6C\x6C\x79\x62\x6F\x6F\x74\x65\x64\x20\x22\x25\x73\x22\x20\x74\x6F\x20\x25\x73\x3A\x25\x73","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x72\x65\x73\x6F\x6C\x76\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xf36b[0];var Manager=require(_0xf36b[1]);var BPromise=require(_0xf36b[2]);var moment=require(_0xf36b[3]);var util=require(_0xf36b[4]);var _=require(_0xf36b[5]);var logger=require(_0xf36b[7])(_0xf36b[6]);var config=require(_0xf36b[8]);var ami= new Manager(config[_0xf36b[10]][_0xf36b[9]],config[_0xf36b[10]][_0xf36b[11]],config[_0xf36b[10]][_0xf36b[12]],config[_0xf36b[10]][_0xf36b[13]],true);ami[_0xf36b[14]]();ami[_0xf36b[15]]= BPromise[_0xf36b[17]](ami[_0xf36b[16]]);function error(_0xbc83xa){logger[_0xf36b[21]](util[_0xf36b[20]](_0xf36b[18],config[_0xf36b[10]][_0xf36b[12]],config[_0xf36b[10]][_0xf36b[11]],config[_0xf36b[10]][_0xf36b[9]],util[_0xf36b[19]](_0xbc83xa,false,null)))}function close(){logger[_0xf36b[21]](util[_0xf36b[20]](_0xf36b[22],config[_0xf36b[10]][_0xf36b[12]],config[_0xf36b[10]][_0xf36b[11]],config[_0xf36b[10]][_0xf36b[9]]))}ami[_0xf36b[23]]= function(){logger[_0xf36b[26]](_0xf36b[24],_0xf36b[25]);return function(){return ami.Action({action:_0xf36b[27]})}};ami[_0xf36b[28]]= function(){logger[_0xf36b[26]](_0xf36b[24],_0xf36b[25]);return function(){return ami.Action({action:_0xf36b[29]})}};ami[_0xf36b[30]]= function(){logger[_0xf36b[26]](_0xf36b[24],_0xf36b[31]);return function(){return ami.Action({action:_0xf36b[32]})}};ami[_0xf36b[33]]= function(){return function(){return ami.Action({action:_0xf36b[34]})}};ami[_0xf36b[35]]= function(){return function(){return ami.Action({action:_0xf36b[36]})}};function connect(_0xbc83xa){logger[_0xf36b[26]](util[_0xf36b[20]](_0xf36b[37],config[_0xf36b[10]][_0xf36b[12]],config[_0xf36b[10]][_0xf36b[11]],config[_0xf36b[10]][_0xf36b[9]]));ami[_0xf36b[38]](_0xf36b[21],error);ami[_0xf36b[38]](_0xf36b[39],close)}ami[_0xf36b[41]](_0xf36b[40],connect);ami[_0xf36b[41]](_0xf36b[42],function(_0xbc83xd){logger[_0xf36b[26]](util[_0xf36b[20]](_0xf36b[43],config[_0xf36b[10]][_0xf36b[12]],config[_0xf36b[10]][_0xf36b[11]],config[_0xf36b[10]][_0xf36b[9]],util[_0xf36b[19]](_0xbc83xd,false,null)))});ami[_0xf36b[41]](_0xf36b[44],function(_0xbc83xd){logger[_0xf36b[26]](util[_0xf36b[20]](_0xf36b[45],config[_0xf36b[10]][_0xf36b[12]],config[_0xf36b[10]][_0xf36b[11]],config[_0xf36b[10]][_0xf36b[9]]));return BPromise[_0xf36b[49]]()[_0xf36b[48]](ami[_0xf36b[23]]())[_0xf36b[48]](ami[_0xf36b[28]]())[_0xf36b[48]](ami[_0xf36b[30]]())[_0xf36b[48]](ami[_0xf36b[33]]())[_0xf36b[48]](ami[_0xf36b[35]]())[_0xf36b[47]](function(_0xbc83xa){console[_0xf36b[46]](_0xbc83xa)})});ami[_0xf36b[38]](_0xf36b[21],error);ami[_0xf36b[38]](_0xf36b[39],close);module[_0xf36b[50]]= ami
\ No newline at end of file
index f64780e..087100d 100644 (file)
@@ -1 +1 @@
-var _0xd386=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x62\x6C\x75\x65\x62\x69\x72\x64","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x52\x65\x71\x75\x65\x73\x74","\x72\x70\x63","\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x64\x65\x62\x75\x67","\x6D\x65\x73\x73\x61\x67\x65","\x6C\x6F\x67","\x69\x6E\x66\x6F","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xd386[0];var jayson=require(_0xd386[1]);var BPromise=require(_0xd386[2]);var logger=require(_0xd386[4])(_0xd386[3]);var client=jayson[_0xd386[6]][_0xd386[5]]({port:9001});client[_0xd386[7]]= function(_0x8d47x5,_0x8d47x6){return  new BPromise(function(_0x8d47x7,_0x8d47x8){return client[_0xd386[18]](_0x8d47x5,_0x8d47x6)[_0xd386[17]](function(_0x8d47xa){logger[_0xd386[12]](_0xd386[8],_0xd386[9],_0x8d47x5,_0x8d47x6,_0x8d47xa);if(_0x8d47xa[_0xd386[10]]){logger[_0xd386[10]](_0xd386[8],_0xd386[9],_0x8d47x5,_0x8d47xa[_0xd386[10]][_0xd386[13]],_0x8d47x6);return _0x8d47x8(_0x8d47xa[_0xd386[10]][_0xd386[13]])}else {logger[_0xd386[15]](_0xd386[8],_0xd386[9],_0x8d47x5,_0x8d47x6[_0xd386[14]]);return _0x8d47x7(_0x8d47xa[_0xd386[16]])}})[_0xd386[11]](function(_0x8d47x9){logger[_0xd386[10]](_0xd386[8],_0xd386[9],_0x8d47x5,_0x8d47x9,_0x8d47x6);return _0x8d47x8(_0x8d47x9)})})};module[_0xd386[19]]= client
\ No newline at end of file
+var _0x93dc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x62\x6C\x75\x65\x62\x69\x72\x64","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x52\x65\x71\x75\x65\x73\x74","\x72\x70\x63","\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x64\x65\x62\x75\x67","\x6D\x65\x73\x73\x61\x67\x65","\x6C\x6F\x67","\x69\x6E\x66\x6F","\x72\x65\x73\x75\x6C\x74","\x74\x68\x65\x6E","\x72\x65\x71\x75\x65\x73\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x93dc[0];var jayson=require(_0x93dc[1]);var BPromise=require(_0x93dc[2]);var logger=require(_0x93dc[4])(_0x93dc[3]);var client=jayson[_0x93dc[6]][_0x93dc[5]]({port:9001});client[_0x93dc[7]]= function(_0xb950x5,_0xb950x6){return  new BPromise(function(_0xb950x7,_0xb950x8){return client[_0x93dc[18]](_0xb950x5,_0xb950x6)[_0x93dc[17]](function(_0xb950xa){logger[_0x93dc[12]](_0x93dc[8],_0x93dc[9],_0xb950x5,_0xb950x6,_0xb950xa);if(_0xb950xa[_0x93dc[10]]){logger[_0x93dc[10]](_0x93dc[8],_0x93dc[9],_0xb950x5,_0xb950xa[_0x93dc[10]][_0x93dc[13]],_0xb950x6);return _0xb950x8(_0xb950xa[_0x93dc[10]][_0x93dc[13]])}else {logger[_0x93dc[15]](_0x93dc[8],_0x93dc[9],_0xb950x5,_0xb950x6[_0x93dc[14]]);return _0xb950x7(_0xb950xa[_0x93dc[16]])}})[_0x93dc[11]](function(_0xb950x9){logger[_0x93dc[10]](_0x93dc[8],_0x93dc[9],_0xb950x5,_0xb950x9,_0xb950x6);return _0xb950x8(_0xb950x9)})})};module[_0x93dc[19]]= client
\ No newline at end of file
index eb1ab27..750503d 100644 (file)
@@ -1 +1 @@
-var _0x7654=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x73\x74\x72\x69\x6E\x67","\x25\x73\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x25\x73","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6E\x61\x6D\x65","\x70\x68\x6F\x6E\x65","\x43\x6F\x6E\x74\x61\x63\x74","\x66\x69\x72\x73\x74\x4E\x61\x6D\x65","\x6C\x61\x73\x74\x4E\x61\x6D\x65","\x6E\x75\x6D\x62\x65\x72","\x71\x75\x65\x75\x65","\x61\x63\x74\x69\x76\x65","\x74\x79\x70\x65","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x54\x69\x6D\x65\x6F\x75\x74","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x43\x6F\x6E\x74\x61\x63\x74\x46\x69\x72\x73\x74\x4E\x61\x6D\x65","","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x67\x65\x74\x43\x61\x6C\x6C\x65\x72","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x67\x65\x74\x51\x75\x65\x75\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x7654[0];var util=require(_0x7654[1]);var _=require(_0x7654[2]);var moment=require(_0x7654[3]);function checkNameSurname(_0xb044x5,_0xb044x6,_0xb044x7){if(!_[_0x7654[4]](_0xb044x6)&& _0x7654[5]===  typeof _0xb044x6){if(!_[_0x7654[4]](_0xb044x7)&& _0x7654[5]===  typeof _0xb044x7){return util[_0x7654[7]](_0x7654[6],_0xb044x6,_0xb044x7)};return util[_0x7654[7]](_0x7654[8],_0xb044x7)};if(!_[_0x7654[4]](_0xb044x7)&& _0x7654[5]===  typeof _0xb044x7){return util[_0x7654[7]](_0x7654[8],_0xb044x7)};return _0xb044x5}function Action(_0xb044x9,_0xb044xa,_0xb044xb){this[_0x7654[9]]= _0xb044xb|| undefined;this[_0x7654[10]]= checkNameSurname(_0xb044xa[_0x7654[12]][_0x7654[11]],_0xb044xa[_0x7654[12]][_0x7654[13]],_0xb044xa[_0x7654[12]][_0x7654[14]]);this[_0x7654[15]]= _0xb044xa[_0x7654[12]][_0x7654[11]];this[_0x7654[16]]= _0xb044x9[_0x7654[10]];this[_0x7654[17]]= _0xb044xa[_0x7654[17]]|| false;this[_0x7654[18]]= _0xb044x9[_0x7654[18]];this[_0x7654[19]]= _0xb044x9[_0x7654[19]]|| 3;this[_0x7654[20]]= _0xb044xa[_0x7654[20]];this[_0x7654[21]]= _0xb044xa[_0x7654[21]];this[_0x7654[22]]= _0xb044xa[_0x7654[22]];this[_0x7654[23]]= _0xb044xa[_0x7654[23]];this[_0x7654[24]]= _0xb044xa[_0x7654[24]];this[_0x7654[25]]= _0xb044xa[_0x7654[25]];this[_0x7654[26]]= _0xb044xa[_0x7654[26]];this[_0x7654[27]]= _0xb044xa[_0x7654[27]];this[_0x7654[28]]= _0xb044xa[_0x7654[28]];this[_0x7654[29]]= _0xb044xa[_0x7654[12]][_0x7654[13]]|| _0x7654[30];this[_0x7654[31]]= moment()[_0x7654[7]](_0x7654[32]);this[_0x7654[33]]= _0xb044xa[_0x7654[33]];this[_0x7654[34]]= _0xb044xa[_0x7654[34]];this[_0x7654[35]]= _0xb044xa[_0x7654[35]]}Action[_0x7654[37]][_0x7654[36]]= function(){return util[_0x7654[7]](_0x7654[38],this[_0x7654[10]],this[_0x7654[15]])};Action[_0x7654[37]][_0x7654[39]]= function(){return this[_0x7654[16]]};module[_0x7654[40]]= Action
\ No newline at end of file
+var _0x5bc6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x73\x74\x72\x69\x6E\x67","\x25\x73\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x25\x73","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6E\x61\x6D\x65","\x70\x68\x6F\x6E\x65","\x43\x6F\x6E\x74\x61\x63\x74","\x66\x69\x72\x73\x74\x4E\x61\x6D\x65","\x6C\x61\x73\x74\x4E\x61\x6D\x65","\x6E\x75\x6D\x62\x65\x72","\x71\x75\x65\x75\x65","\x61\x63\x74\x69\x76\x65","\x74\x79\x70\x65","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x54\x69\x6D\x65\x6F\x75\x74","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x43\x6F\x6E\x74\x61\x63\x74\x46\x69\x72\x73\x74\x4E\x61\x6D\x65","","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x67\x65\x74\x43\x61\x6C\x6C\x65\x72","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x67\x65\x74\x51\x75\x65\x75\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x5bc6[0];var util=require(_0x5bc6[1]);var _=require(_0x5bc6[2]);var moment=require(_0x5bc6[3]);function checkNameSurname(_0x6d29x5,_0x6d29x6,_0x6d29x7){if(!_[_0x5bc6[4]](_0x6d29x6)&& _0x5bc6[5]===  typeof _0x6d29x6){if(!_[_0x5bc6[4]](_0x6d29x7)&& _0x5bc6[5]===  typeof _0x6d29x7){return util[_0x5bc6[7]](_0x5bc6[6],_0x6d29x6,_0x6d29x7)};return util[_0x5bc6[7]](_0x5bc6[8],_0x6d29x7)};if(!_[_0x5bc6[4]](_0x6d29x7)&& _0x5bc6[5]===  typeof _0x6d29x7){return util[_0x5bc6[7]](_0x5bc6[8],_0x6d29x7)};return _0x6d29x5}function Action(_0x6d29x9,_0x6d29xa,_0x6d29xb){this[_0x5bc6[9]]= _0x6d29xb|| undefined;this[_0x5bc6[10]]= checkNameSurname(_0x6d29xa[_0x5bc6[12]][_0x5bc6[11]],_0x6d29xa[_0x5bc6[12]][_0x5bc6[13]],_0x6d29xa[_0x5bc6[12]][_0x5bc6[14]]);this[_0x5bc6[15]]= _0x6d29xa[_0x5bc6[12]][_0x5bc6[11]];this[_0x5bc6[16]]= _0x6d29x9[_0x5bc6[10]];this[_0x5bc6[17]]= _0x6d29xa[_0x5bc6[17]]|| false;this[_0x5bc6[18]]= _0x6d29x9[_0x5bc6[18]];this[_0x5bc6[19]]= _0x6d29x9[_0x5bc6[19]]|| 3;this[_0x5bc6[20]]= _0x6d29xa[_0x5bc6[20]];this[_0x5bc6[21]]= _0x6d29xa[_0x5bc6[21]];this[_0x5bc6[22]]= _0x6d29xa[_0x5bc6[22]];this[_0x5bc6[23]]= _0x6d29xa[_0x5bc6[23]];this[_0x5bc6[24]]= _0x6d29xa[_0x5bc6[24]];this[_0x5bc6[25]]= _0x6d29xa[_0x5bc6[25]];this[_0x5bc6[26]]= _0x6d29xa[_0x5bc6[26]];this[_0x5bc6[27]]= _0x6d29xa[_0x5bc6[27]];this[_0x5bc6[28]]= _0x6d29xa[_0x5bc6[28]];this[_0x5bc6[29]]= _0x6d29xa[_0x5bc6[12]][_0x5bc6[13]]|| _0x5bc6[30];this[_0x5bc6[31]]= moment()[_0x5bc6[7]](_0x5bc6[32]);this[_0x5bc6[33]]= _0x6d29xa[_0x5bc6[33]];this[_0x5bc6[34]]= _0x6d29xa[_0x5bc6[34]];this[_0x5bc6[35]]= _0x6d29xa[_0x5bc6[35]]}Action[_0x5bc6[37]][_0x5bc6[36]]= function(){return util[_0x5bc6[7]](_0x5bc6[38],this[_0x5bc6[10]],this[_0x5bc6[15]])};Action[_0x5bc6[37]][_0x5bc6[39]]= function(){return this[_0x5bc6[16]]};module[_0x5bc6[40]]= Action
\ No newline at end of file
index f748a64..2f3ba47 100644 (file)
@@ -1 +1 @@
-var _0x5f45=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x74\x61\x74\x65","\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x41\x6E\x73\x77\x65\x72","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6E\x75\x6D\x62\x65\x72","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x5f45[0];var util=require(_0x5f45[1]);var _=require(_0x5f45[2]);var moment=require(_0x5f45[3]);function getSeconds(_0x680cx5,_0x680cx6){var _0x680cx7=moment(_0x680cx5)[_0x5f45[4]](0);var _0x680cx8=moment(_0x680cx6)[_0x5f45[4]](0);return _0x680cx7[_0x5f45[6]](_0x680cx8,_0x5f45[5])}function AgentComplete(_0x680cxa,_0x680cxb){this[_0x5f45[7]]= 4;this[_0x5f45[8]]= _0x5f45[9];this[_0x5f45[10]]= _0x680cxa[_0x5f45[10]];this[_0x5f45[11]]= _0x680cxa[_0x5f45[11]];this[_0x5f45[12]]= (_0x680cxa[_0x5f45[11]]=== _0x5f45[13])?_0x5f45[14]:_0x680cxa[_0x5f45[11]];this[_0x5f45[15]]= _0x680cxa[_0x5f45[15]];this[_0x5f45[16]]= _0x680cxa[_0x5f45[16]];this[_0x5f45[17]]= _0x680cxa[_0x5f45[17]];this[_0x5f45[18]]= _0x680cxa[_0x5f45[15]]+ _0x680cxa[_0x5f45[16]]+ _0x680cxa[_0x5f45[17]];this[_0x5f45[19]]= _0x680cxb[_0x5f45[19]];this[_0x5f45[20]]= _0x680cxa[_0x5f45[21]];this[_0x5f45[22]]= _0x680cxa[_0x5f45[23]];this[_0x5f45[24]]= _0x680cxa[_0x5f45[24]];this[_0x5f45[25]]= _0x680cxa[_0x5f45[25]];this[_0x5f45[26]]= _0x680cxa[_0x5f45[26]];this[_0x5f45[27]]= moment()[_0x5f45[29]](_0x5f45[28]);this[_0x5f45[30]]= getSeconds(_0x680cxa[_0x5f45[25]],_0x680cxa[_0x5f45[24]]);this[_0x5f45[31]]= getSeconds(_0x680cxa[_0x5f45[26]],_0x680cxa[_0x5f45[25]]);this[_0x5f45[32]]= getSeconds(this[_0x5f45[27]],_0x680cxa[_0x5f45[26]]);this[_0x5f45[14]]= _0x680cxb[_0x5f45[14]];this[_0x5f45[33]]= _0x680cxb[_0x5f45[33]];this[_0x5f45[34]]= _0x680cxb[_0x5f45[34]];this[_0x5f45[35]]= _0x680cxa[_0x5f45[35]];this[_0x5f45[36]]= _0x680cxa[_0x5f45[36]];this[_0x5f45[37]]= _0x680cxa[_0x5f45[37]];this[_0x5f45[38]]= _0x680cxa[_0x5f45[38]];this[_0x5f45[39]]= _0x680cxa[_0x5f45[39]];this[_0x5f45[40]]= _0x680cxa[_0x5f45[40]];this[_0x5f45[41]]= _0x680cxa[_0x5f45[41]];this[_0x5f45[42]]= _0x680cxa[_0x5f45[42]]}module[_0x5f45[43]]= AgentComplete
\ No newline at end of file
+var _0x81aa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x74\x61\x74\x65","\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x41\x6E\x73\x77\x65\x72","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6E\x75\x6D\x62\x65\x72","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x81aa[0];var util=require(_0x81aa[1]);var _=require(_0x81aa[2]);var moment=require(_0x81aa[3]);function getSeconds(_0xe847x5,_0xe847x6){var _0xe847x7=moment(_0xe847x5)[_0x81aa[4]](0);var _0xe847x8=moment(_0xe847x6)[_0x81aa[4]](0);return _0xe847x7[_0x81aa[6]](_0xe847x8,_0x81aa[5])}function AgentComplete(_0xe847xa,_0xe847xb){this[_0x81aa[7]]= 4;this[_0x81aa[8]]= _0x81aa[9];this[_0x81aa[10]]= _0xe847xa[_0x81aa[10]];this[_0x81aa[11]]= _0xe847xa[_0x81aa[11]];this[_0x81aa[12]]= (_0xe847xa[_0x81aa[11]]=== _0x81aa[13])?_0x81aa[14]:_0xe847xa[_0x81aa[11]];this[_0x81aa[15]]= _0xe847xa[_0x81aa[15]];this[_0x81aa[16]]= _0xe847xa[_0x81aa[16]];this[_0x81aa[17]]= _0xe847xa[_0x81aa[17]];this[_0x81aa[18]]= _0xe847xa[_0x81aa[15]]+ _0xe847xa[_0x81aa[16]]+ _0xe847xa[_0x81aa[17]];this[_0x81aa[19]]= _0xe847xb[_0x81aa[19]];this[_0x81aa[20]]= _0xe847xa[_0x81aa[21]];this[_0x81aa[22]]= _0xe847xa[_0x81aa[23]];this[_0x81aa[24]]= _0xe847xa[_0x81aa[24]];this[_0x81aa[25]]= _0xe847xa[_0x81aa[25]];this[_0x81aa[26]]= _0xe847xa[_0x81aa[26]];this[_0x81aa[27]]= moment()[_0x81aa[29]](_0x81aa[28]);this[_0x81aa[30]]= getSeconds(_0xe847xa[_0x81aa[25]],_0xe847xa[_0x81aa[24]]);this[_0x81aa[31]]= getSeconds(_0xe847xa[_0x81aa[26]],_0xe847xa[_0x81aa[25]]);this[_0x81aa[32]]= getSeconds(this[_0x81aa[27]],_0xe847xa[_0x81aa[26]]);this[_0x81aa[14]]= _0xe847xb[_0x81aa[14]];this[_0x81aa[33]]= _0xe847xb[_0x81aa[33]];this[_0x81aa[34]]= _0xe847xb[_0x81aa[34]];this[_0x81aa[35]]= _0xe847xa[_0x81aa[35]];this[_0x81aa[36]]= _0xe847xa[_0x81aa[36]];this[_0x81aa[37]]= _0xe847xa[_0x81aa[37]];this[_0x81aa[38]]= _0xe847xa[_0x81aa[38]];this[_0x81aa[39]]= _0xe847xa[_0x81aa[39]];this[_0x81aa[40]]= _0xe847xa[_0x81aa[40]];this[_0x81aa[41]]= _0xe847xa[_0x81aa[41]];this[_0x81aa[42]]= _0xe847xa[_0x81aa[42]]}module[_0x81aa[43]]= AgentComplete
\ No newline at end of file
index 0fb1fcc..badb5e6 100644 (file)
@@ -1 +1 @@
-var _0x525d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x75\x6E\x69\x71\x75\x65\x69\x64","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x525d[0];var util=require(_0x525d[1]);var _=require(_0x525d[2]);var moment=require(_0x525d[3]);function getSeconds(_0xb68ex5,_0xb68ex6){var _0xb68ex7=moment(_0xb68ex5)[_0x525d[4]](0);var _0xb68ex8=moment(_0xb68ex6)[_0x525d[4]](0);return _0xb68ex7[_0x525d[6]](_0xb68ex8,_0x525d[5])}function Final(_0xb68exa){this[_0x525d[7]]= _0xb68exa[_0x525d[7]];this[_0x525d[8]]= _0xb68exa[_0x525d[8]];this[_0x525d[9]]= _0xb68exa[_0x525d[9]];this[_0x525d[10]]= (_0xb68exa[_0x525d[9]]=== _0x525d[11])?_0x525d[12]:_0xb68exa[_0x525d[9]];this[_0x525d[13]]= _0xb68exa[_0x525d[13]];this[_0x525d[14]]= _0xb68exa[_0x525d[14]];this[_0x525d[15]]= _0xb68exa[_0x525d[15]];this[_0x525d[16]]= _0xb68exa[_0x525d[13]]+ _0xb68exa[_0x525d[14]]+ _0xb68exa[_0x525d[15]];this[_0x525d[12]]= _0xb68exa[_0x525d[12]];this[_0x525d[17]]= _0xb68exa[_0x525d[17]];this[_0x525d[18]]= _0xb68exa[_0x525d[18]];this[_0x525d[19]]= _0xb68exa[_0x525d[19]];this[_0x525d[20]]= _0xb68exa[_0x525d[20]];this[_0x525d[21]]= _0xb68exa[_0x525d[20]];this[_0x525d[22]]= _0xb68exa[_0x525d[22]]|| 0;this[_0x525d[23]]= _0xb68exa[_0x525d[23]]|| 0;this[_0x525d[24]]= _0xb68exa[_0x525d[24]]|| 0;this[_0x525d[25]]= _0xb68exa[_0x525d[25]];this[_0x525d[26]]= _0xb68exa[_0x525d[26]];this[_0x525d[27]]= _0xb68exa[_0x525d[27]];this[_0x525d[28]]= _0xb68exa[_0x525d[28]];this[_0x525d[29]]= _0xb68exa[_0x525d[29]];this[_0x525d[30]]= _0xb68exa[_0x525d[30]];this[_0x525d[31]]= _0xb68exa[_0x525d[31]];this[_0x525d[32]]= _0xb68exa[_0x525d[32]]}module[_0x525d[33]]= Final
\ No newline at end of file
+var _0x1f6e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x75\x6E\x69\x71\x75\x65\x69\x64","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x1f6e[0];var util=require(_0x1f6e[1]);var _=require(_0x1f6e[2]);var moment=require(_0x1f6e[3]);function getSeconds(_0xb922x5,_0xb922x6){var _0xb922x7=moment(_0xb922x5)[_0x1f6e[4]](0);var _0xb922x8=moment(_0xb922x6)[_0x1f6e[4]](0);return _0xb922x7[_0x1f6e[6]](_0xb922x8,_0x1f6e[5])}function Final(_0xb922xa){this[_0x1f6e[7]]= _0xb922xa[_0x1f6e[7]];this[_0x1f6e[8]]= _0xb922xa[_0x1f6e[8]];this[_0x1f6e[9]]= _0xb922xa[_0x1f6e[9]];this[_0x1f6e[10]]= (_0xb922xa[_0x1f6e[9]]=== _0x1f6e[11])?_0x1f6e[12]:_0xb922xa[_0x1f6e[9]];this[_0x1f6e[13]]= _0xb922xa[_0x1f6e[13]];this[_0x1f6e[14]]= _0xb922xa[_0x1f6e[14]];this[_0x1f6e[15]]= _0xb922xa[_0x1f6e[15]];this[_0x1f6e[16]]= _0xb922xa[_0x1f6e[13]]+ _0xb922xa[_0x1f6e[14]]+ _0xb922xa[_0x1f6e[15]];this[_0x1f6e[12]]= _0xb922xa[_0x1f6e[12]];this[_0x1f6e[17]]= _0xb922xa[_0x1f6e[17]];this[_0x1f6e[18]]= _0xb922xa[_0x1f6e[18]];this[_0x1f6e[19]]= _0xb922xa[_0x1f6e[19]];this[_0x1f6e[20]]= _0xb922xa[_0x1f6e[20]];this[_0x1f6e[21]]= _0xb922xa[_0x1f6e[20]];this[_0x1f6e[22]]= _0xb922xa[_0x1f6e[22]]|| 0;this[_0x1f6e[23]]= _0xb922xa[_0x1f6e[23]]|| 0;this[_0x1f6e[24]]= _0xb922xa[_0x1f6e[24]]|| 0;this[_0x1f6e[25]]= _0xb922xa[_0x1f6e[25]];this[_0x1f6e[26]]= _0xb922xa[_0x1f6e[26]];this[_0x1f6e[27]]= _0xb922xa[_0x1f6e[27]];this[_0x1f6e[28]]= _0xb922xa[_0x1f6e[28]];this[_0x1f6e[29]]= _0xb922xa[_0x1f6e[29]];this[_0x1f6e[30]]= _0xb922xa[_0x1f6e[30]];this[_0x1f6e[31]]= _0xb922xa[_0x1f6e[31]];this[_0x1f6e[32]]= _0xb922xa[_0x1f6e[32]]}module[_0x1f6e[33]]= Final
\ No newline at end of file
index c607663..f49d22c 100644 (file)
@@ -1 +1 @@
-var _0x52d5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x74\x61\x74\x65","\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x41\x6E\x73\x77\x65\x72","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6E\x75\x6D\x62\x65\x72","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x49\x56\x52","\x72\x65\x61\x73\x6F\x6E","\x63\x61\x75\x73\x65\x2D\x74\x78\x74","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x52d5[0];var util=require(_0x52d5[1]);var _=require(_0x52d5[2]);var moment=require(_0x52d5[3]);function getSeconds(_0xb411x5,_0xb411x6){var _0xb411x7=moment(_0xb411x5)[_0x52d5[4]](0);var _0xb411x8=moment(_0xb411x6)[_0x52d5[4]](0);return _0xb411x7[_0x52d5[6]](_0xb411x8,_0x52d5[5])}function Hangup(_0xb411xa,_0xb411xb){this[_0x52d5[7]]= 4;this[_0x52d5[8]]= _0x52d5[9];this[_0x52d5[10]]= _0xb411xa[_0x52d5[10]];this[_0x52d5[11]]= _0xb411xa[_0x52d5[11]];this[_0x52d5[12]]= (_0xb411xa[_0x52d5[11]]=== _0x52d5[13])?_0x52d5[14]:_0xb411xa[_0x52d5[11]];this[_0x52d5[15]]= _0xb411xa[_0x52d5[15]];this[_0x52d5[16]]= _0xb411xa[_0x52d5[16]];this[_0x52d5[17]]= _0xb411xa[_0x52d5[17]];this[_0x52d5[18]]= _0xb411xa[_0x52d5[15]]+ _0xb411xa[_0x52d5[16]]+ _0xb411xa[_0x52d5[17]];this[_0x52d5[19]]= _0xb411xb[_0x52d5[19]];this[_0x52d5[20]]= _0xb411xa[_0x52d5[21]];this[_0x52d5[22]]= _0xb411xa[_0x52d5[23]];this[_0x52d5[24]]= _0xb411xa[_0x52d5[24]];this[_0x52d5[25]]= _0xb411xa[_0x52d5[25]];this[_0x52d5[26]]= moment()[_0x52d5[28]](_0x52d5[27]);this[_0x52d5[29]]= getSeconds(_0xb411xa[_0x52d5[25]],_0xb411xa[_0x52d5[24]]);this[_0x52d5[30]]= 0;this[_0x52d5[31]]= getSeconds(this[_0x52d5[26]],_0xb411xa[_0x52d5[25]]);this[_0x52d5[14]]= _0xb411xa[_0x52d5[14]];this[_0x52d5[32]]= _0x52d5[33];this[_0x52d5[34]]= _0xb411xb[_0x52d5[35]];this[_0x52d5[36]]= _0xb411xa[_0x52d5[36]];this[_0x52d5[37]]= _0xb411xa[_0x52d5[37]];this[_0x52d5[38]]= _0xb411xa[_0x52d5[38]];this[_0x52d5[39]]= _0xb411xa[_0x52d5[39]];this[_0x52d5[40]]= _0xb411xa[_0x52d5[40]];this[_0x52d5[41]]= _0xb411xa[_0x52d5[41]];this[_0x52d5[42]]= _0xb411xa[_0x52d5[42]];this[_0x52d5[43]]= _0xb411xa[_0x52d5[43]]}module[_0x52d5[44]]= Hangup
\ No newline at end of file
+var _0x66f5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x74\x61\x74\x65","\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x41\x6E\x73\x77\x65\x72","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6E\x75\x6D\x62\x65\x72","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x49\x56\x52","\x72\x65\x61\x73\x6F\x6E","\x63\x61\x75\x73\x65\x2D\x74\x78\x74","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x66f5[0];var util=require(_0x66f5[1]);var _=require(_0x66f5[2]);var moment=require(_0x66f5[3]);function getSeconds(_0x993ex5,_0x993ex6){var _0x993ex7=moment(_0x993ex5)[_0x66f5[4]](0);var _0x993ex8=moment(_0x993ex6)[_0x66f5[4]](0);return _0x993ex7[_0x66f5[6]](_0x993ex8,_0x66f5[5])}function Hangup(_0x993exa,_0x993exb){this[_0x66f5[7]]= 4;this[_0x66f5[8]]= _0x66f5[9];this[_0x66f5[10]]= _0x993exa[_0x66f5[10]];this[_0x66f5[11]]= _0x993exa[_0x66f5[11]];this[_0x66f5[12]]= (_0x993exa[_0x66f5[11]]=== _0x66f5[13])?_0x66f5[14]:_0x993exa[_0x66f5[11]];this[_0x66f5[15]]= _0x993exa[_0x66f5[15]];this[_0x66f5[16]]= _0x993exa[_0x66f5[16]];this[_0x66f5[17]]= _0x993exa[_0x66f5[17]];this[_0x66f5[18]]= _0x993exa[_0x66f5[15]]+ _0x993exa[_0x66f5[16]]+ _0x993exa[_0x66f5[17]];this[_0x66f5[19]]= _0x993exb[_0x66f5[19]];this[_0x66f5[20]]= _0x993exa[_0x66f5[21]];this[_0x66f5[22]]= _0x993exa[_0x66f5[23]];this[_0x66f5[24]]= _0x993exa[_0x66f5[24]];this[_0x66f5[25]]= _0x993exa[_0x66f5[25]];this[_0x66f5[26]]= moment()[_0x66f5[28]](_0x66f5[27]);this[_0x66f5[29]]= getSeconds(_0x993exa[_0x66f5[25]],_0x993exa[_0x66f5[24]]);this[_0x66f5[30]]= 0;this[_0x66f5[31]]= getSeconds(this[_0x66f5[26]],_0x993exa[_0x66f5[25]]);this[_0x66f5[14]]= _0x993exa[_0x66f5[14]];this[_0x66f5[32]]= _0x66f5[33];this[_0x66f5[34]]= _0x993exb[_0x66f5[35]];this[_0x66f5[36]]= _0x993exa[_0x66f5[36]];this[_0x66f5[37]]= _0x993exa[_0x66f5[37]];this[_0x66f5[38]]= _0x993exa[_0x66f5[38]];this[_0x66f5[39]]= _0x993exa[_0x66f5[39]];this[_0x66f5[40]]= _0x993exa[_0x66f5[40]];this[_0x66f5[41]]= _0x993exa[_0x66f5[41]];this[_0x66f5[42]]= _0x993exa[_0x66f5[42]];this[_0x66f5[43]]= _0x993exa[_0x66f5[43]]}module[_0x66f5[44]]= Hangup
\ No newline at end of file
index c193aa6..b75b07d 100644 (file)
@@ -1 +1 @@
-var _0x61fa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x75\x6E\x69\x71\x75\x65\x69\x64","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6E\x75\x6D\x62\x65\x72","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x61fa[0];var util=require(_0x61fa[1]);var _=require(_0x61fa[2]);var moment=require(_0x61fa[3]);function getSeconds(_0x1767x5,_0x1767x6){var _0x1767x7=moment(_0x1767x5)[_0x61fa[4]](0);var _0x1767x8=moment(_0x1767x6)[_0x61fa[4]](0);return _0x1767x7[_0x61fa[6]](_0x1767x8,_0x61fa[5])}function History(_0x1767xa){this[_0x61fa[7]]= _0x1767xa[_0x61fa[7]];this[_0x61fa[8]]= _0x1767xa[_0x61fa[8]]|| undefined;this[_0x61fa[9]]= _0x1767xa[_0x61fa[9]];this[_0x61fa[10]]= (_0x1767xa[_0x61fa[9]]=== _0x61fa[11])?_0x61fa[12]:_0x1767xa[_0x61fa[9]];this[_0x61fa[13]]= _0x1767xa[_0x61fa[13]];this[_0x61fa[14]]= _0x1767xa[_0x61fa[14]];this[_0x61fa[15]]= _0x1767xa[_0x61fa[15]];this[_0x61fa[16]]= _0x1767xa[_0x61fa[13]]+ _0x1767xa[_0x61fa[14]]+ _0x1767xa[_0x61fa[15]];this[_0x61fa[12]]= _0x1767xa[_0x61fa[12]];this[_0x61fa[17]]= _0x1767xa[_0x61fa[18]];this[_0x61fa[19]]= _0x1767xa[_0x61fa[20]];this[_0x61fa[21]]= _0x1767xa[_0x61fa[21]];this[_0x61fa[22]]= _0x1767xa[_0x61fa[22]];this[_0x61fa[23]]= _0x1767xa[_0x61fa[22]];this[_0x61fa[24]]= getSeconds(_0x1767xa[_0x61fa[22]],_0x1767xa[_0x61fa[21]]);this[_0x61fa[25]]= 0;this[_0x61fa[26]]= 0;this[_0x61fa[27]]= _0x1767xa[_0x61fa[27]];this[_0x61fa[28]]= _0x1767xa[_0x61fa[28]];this[_0x61fa[29]]= _0x1767xa[_0x61fa[29]];this[_0x61fa[30]]= _0x1767xa[_0x61fa[30]];this[_0x61fa[31]]= _0x1767xa[_0x61fa[31]];this[_0x61fa[32]]= _0x1767xa[_0x61fa[32]];this[_0x61fa[33]]= _0x1767xa[_0x61fa[33]];this[_0x61fa[34]]= _0x1767xa[_0x61fa[34]]}module[_0x61fa[35]]= History
\ No newline at end of file
+var _0x28e6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x75\x6E\x69\x71\x75\x65\x69\x64","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6E\x75\x6D\x62\x65\x72","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x28e6[0];var util=require(_0x28e6[1]);var _=require(_0x28e6[2]);var moment=require(_0x28e6[3]);function getSeconds(_0x3471x5,_0x3471x6){var _0x3471x7=moment(_0x3471x5)[_0x28e6[4]](0);var _0x3471x8=moment(_0x3471x6)[_0x28e6[4]](0);return _0x3471x7[_0x28e6[6]](_0x3471x8,_0x28e6[5])}function History(_0x3471xa){this[_0x28e6[7]]= _0x3471xa[_0x28e6[7]];this[_0x28e6[8]]= _0x3471xa[_0x28e6[8]]|| undefined;this[_0x28e6[9]]= _0x3471xa[_0x28e6[9]];this[_0x28e6[10]]= (_0x3471xa[_0x28e6[9]]=== _0x28e6[11])?_0x28e6[12]:_0x3471xa[_0x28e6[9]];this[_0x28e6[13]]= _0x3471xa[_0x28e6[13]];this[_0x28e6[14]]= _0x3471xa[_0x28e6[14]];this[_0x28e6[15]]= _0x3471xa[_0x28e6[15]];this[_0x28e6[16]]= _0x3471xa[_0x28e6[13]]+ _0x3471xa[_0x28e6[14]]+ _0x3471xa[_0x28e6[15]];this[_0x28e6[12]]= _0x3471xa[_0x28e6[12]];this[_0x28e6[17]]= _0x3471xa[_0x28e6[18]];this[_0x28e6[19]]= _0x3471xa[_0x28e6[20]];this[_0x28e6[21]]= _0x3471xa[_0x28e6[21]];this[_0x28e6[22]]= _0x3471xa[_0x28e6[22]];this[_0x28e6[23]]= _0x3471xa[_0x28e6[22]];this[_0x28e6[24]]= getSeconds(_0x3471xa[_0x28e6[22]],_0x3471xa[_0x28e6[21]]);this[_0x28e6[25]]= 0;this[_0x28e6[26]]= 0;this[_0x28e6[27]]= _0x3471xa[_0x28e6[27]];this[_0x28e6[28]]= _0x3471xa[_0x28e6[28]];this[_0x28e6[29]]= _0x3471xa[_0x28e6[29]];this[_0x28e6[30]]= _0x3471xa[_0x28e6[30]];this[_0x28e6[31]]= _0x3471xa[_0x28e6[31]];this[_0x28e6[32]]= _0x3471xa[_0x28e6[32]];this[_0x28e6[33]]= _0x3471xa[_0x28e6[33]];this[_0x28e6[34]]= _0x3471xa[_0x28e6[34]]}module[_0x28e6[35]]= History
\ No newline at end of file
index d8a1a8e..6bdb164 100644 (file)
@@ -1 +1 @@
-var _0x16db=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x75\x69\x64","\x6D\x6F\x6D\x65\x6E\x74","\x64\x69\x61\x6C\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x43\x61\x6C\x6C\x73","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x2F","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x2E\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72","\x2E\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x2E\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x2E\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x2E\x2F\x61\x63\x74\x69\x6F\x6E","\x2E\x2F\x68\x69\x73\x74\x6F\x72\x79","\x2E\x2F\x66\x69\x6E\x61\x6C","\x2E\x2F\x61\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x2E\x2F\x71\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E","\x2E\x2F\x68\x61\x6E\x67\x75\x70","\x58\x43\x41\x4C\x4C\x59\x5F\x49\x50\x5F\x41\x47\x49","\x65\x6E\x76","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x61\x67\x65\x6E\x74\x73","\x74\x72\x75\x6E\x6B\x73","\x6D\x61\x78\x4E\x75\x6D\x62\x65\x72\x4F\x72\x69\x67\x69\x6E\x61\x74\x65","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x61\x63\x74\x69\x6F\x6E\x73","\x63\x6F\x6E\x74\x61\x63\x74\x73\x49\x64","\x75\x6E\x69\x71\x75\x65\x49\x64","\x6F\x70\x74\x69\x6F\x6E\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x73\x74\x61\x72\x74\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x73\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65","\x69\x76\x72\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74","\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x72\x65\x73\x70\x6F\x6E\x73\x65","\x73\x79\x6E\x63\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x52\x65\x73\x70\x6F\x6E\x73\x65","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x6C\x6F\x6F\x70\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x6D\x65\x73\x73\x61\x67\x65","\x41\x47\x45\x4E\x54\x53\x5F\x4E\x4F\x54\x5F\x4C\x4F\x47\x47\x45\x44","\x6E\x61\x6D\x65","\x20\x41\x47\x45\x4E\x54\x53\x20\x4E\x4F\x54\x20\x4C\x4F\x47\x47\x45\x44","\x4E\x4F\x54\x5F\x41\x43\x54\x49\x56\x45","\x20\x4E\x4F\x54\x20\x41\x63\x74\x69\x76\x65","\x49\x4E\x54\x45\x52\x56\x41\x4C\x5F\x49\x53\x5F\x4E\x55\x4C\x4C","\x20\x49\x4E\x54\x45\x52\x56\x41\x4C\x5F\x49\x53\x5F\x4E\x55\x4C\x4C","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x69\x73\x45\x6D\x70\x74\x79","\x5B\x69\x66\x54\x69\x6D\x65\x5D\x5B\x41\x63\x74\x69\x6F\x6E\x5D","\x45\x72\x72\x6F\x72","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x65\x6D\x69\x74","\x74\x6F","\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x76\x6F\x69\x63\x65\x3A\x71\x75\x65\x75\x65\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x3A\x73\x61\x76\x65","\x69\x76\x72","\x63\x61\x6D\x70\x61\x69\x67\x6E\x3A\x69\x76\x72\x3A\x25\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x3A\x73\x61\x76\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x54\x61\x6C\x6B\x74\x69\x6D\x65","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x61\x76\x67\x54\x61\x6C\x6B\x74\x69\x6D\x65\x5D","\x69\x6E\x66\x6F","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x48\x6F\x6C\x64\x74\x69\x6D\x65","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x61\x76\x67\x48\x6F\x6C\x64\x74\x69\x6D\x65\x5D","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x74\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73\x5D","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x6F\x62\x6A\x49\x73\x45\x6D\x70\x74\x79\x5D","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x6F\x62\x6A\x5D","\x5B\x45\x72\x6C\x61\x6E\x67\x42\x5D","\x6D\x65\x72\x67\x65","\x5B\x66\x72\x65\x65\x56\x61\x72\x69\x61\x62\x6C\x65\x73\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x73\x74\x72\x69\x6E\x67","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x22\x22\x20\x3C\x3E","\x69\x6E\x73\x70\x65\x63\x74","\x65\x72\x72\x6F\x72","\x6C\x65\x6E\x67\x74\x68","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x5B\x64\x65\x63\x72\x65\x6D\x65\x74\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x5D\x20\x6F\x62\x6A\x65\x63\x74\x20\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64\x20\x69\x73\x20\x6E\x65\x67\x61\x74\x69\x76\x65","\x5B\x64\x65\x63\x72\x65\x6D\x65\x74\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x5D\x20\x69\x73\x20\x6E\x75\x6C\x6C\x20\x6F\x72\x20\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x63\x6F\x6E\x74\x61\x63\x74\x73\x52\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x64","\x52\x45\x53\x43\x48\x45\x44\x55\x4C\x45\x44\x5F\x43\x4F\x4E\x54\x41\x43\x54\x53","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x32\x5D\x5B\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64\x5D","\x63\x6F\x6E\x74\x61\x63\x74\x73","\x41\x56\x41\x49\x4C\x41\x42\x4C\x45\x5F\x43\x4F\x4E\x54\x41\x43\x54\x53\x5F\x46\x49\x4E\x49\x53\x48\x45\x44","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x32\x5D\x5B\x45\x6D\x70\x74\x79\x5D","\x63\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x5B\x63\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64\x5D\x20","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x72\x65\x73\x6F\x6C\x76\x65","\x63\x68\x65\x63\x6B\x49\x73\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74","\x5B\x63\x68\x65\x63\x6B\x49\x73\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x5D\x20","\x61\x76\x65\x72\x61\x67\x65\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x5B\x61\x76\x65\x72\x61\x67\x65\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65\x5D\x20","\x61\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74","\x5B\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74\x5D\x20","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x5D\x20","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x49\x76\x72","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73","\x5B\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73\x5D\x20","\x6D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72","\x5B\x6D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72\x5D\x20","\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79","\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x20","\x75\x70\x64\x61\x74\x65\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x5B\x75\x70\x64\x61\x74\x65\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x64\x5D\x20\x6F\x62\x6A\x65\x63\x74\x20\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64\x20\x69\x73\x20\x6E\x65\x67\x61\x74\x69\x76\x65","\x5B\x75\x70\x64\x61\x74\x65\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x64\x5D\x20\x69\x73\x20\x6E\x75\x6C\x6C\x20\x6F\x72\x20\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x6C\x6F\x67\x67\x65\x72\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x53\x75\x63\x63\x65\x73\x73","\x53\x75\x63\x63\x65\x73\x73","\x69\x73\x54\x72\x75\x6E\x6B\x52\x65\x61\x63\x68\x61\x62\x6C\x65","\x61\x63\x74\x69\x76\x65","\x73\x74\x61\x74\x75\x73","\x53\x49\x50\x2F\x25\x73","\x72\x65\x61\x63\x68\x61\x62\x6C\x65","\x75\x6E\x6D\x6F\x6E\x69\x74\x6F\x72\x65\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","\x71\x75\x65\x75\x65","\x69\x76\x72\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x49\x76\x72\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x49\x76\x72\x5D","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x41\x67\x69\x43\x61\x6C\x6C\x73\x44\x61\x79","\x73\x74\x61\x74\x65","\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x41\x6E\x73\x77\x65\x72\x41\x47\x49","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x41\x47\x49","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x71\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x43\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x5D\x20\x5B\x44\x72\x6F\x70\x5D","\x64\x72\x6F\x70\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x54\x69\x6D\x65\x6F\x75\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x54\x69\x6D\x65\x6F\x75\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x54\x69\x6D\x65\x6F\x75\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x45\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73","\x44\x72\x6F\x70","\x64\x72\x6F\x70\x72\x65\x61\x73\x6F\x6E","\x54\x49\x4D\x45\x4F\x55\x54","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x43\x41\x4C\x4C\x45\x52\x45\x58\x49\x54","\x73\x79\x6E\x63\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x63\x68\x65\x63\x6B\x49\x73\x54\x72\x75\x6E\x6B\x52\x65\x61\x63\x68\x61\x62\x6C\x65","\x54\x52\x55\x4E\x4B\x5F\x49\x53\x5F\x4E\x4F\x54\x5F\x52\x45\x41\x43\x48\x41\x42\x4C\x45","\x20\x74\x72\x75\x6E\x6B\x20\x69\x73\x20\x6E\x6F\x74\x20\x72\x65\x61\x63\x68\x61\x62\x6C\x65","\x63\x68\x65\x63\x6B\x49\x66\x54\x69\x6D\x65","\x69\x66\x54\x69\x6D\x65","\x63\x68\x65\x63\x6B\x49\x66\x54\x69\x6D\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x46\x61\x69\x6C\x75\x72\x65","\x20\x49\x6E\x74\x65\x72\x76\x61\x6C\x73\x20\x69\x73\x20\x6E\x75\x6C\x6C\x20","\x49\x4E\x54\x45\x52\x56\x41\x4C\x5F\x49\x53\x5F\x45\x4D\x50\x54\x59","\x20\x49\x6E\x74\x65\x72\x76\x61\x6C\x73\x20\x69\x73\x20\x65\x6D\x70\x74\x79\x20","\x74\x69\x6D\x65\x7A\x6F\x6E\x65\x73","\x54\x49\x4D\x45\x5A\x4F\x4E\x45\x5F\x55\x4E\x4B\x4E\x4F\x57","\x20\x54\x69\x6D\x65\x7A\x6F\x6E\x65\x20\x75\x6E\x6B\x6E\x6F\x77\x20","\x69\x73\x41\x72\x72\x61\x79","\x74\x72\x75\x65","\x69\x6E\x64\x65\x78\x4F\x66","\x63\x6F\x6E\x74\x65\x6E\x74","\x63\x6F\x6D\x6D\x61\x6E\x64","\x69\x66\x74\x69\x6D\x65\x20\x25\x73\x2C\x25\x73","\x69\x6E\x74\x65\x72\x76\x61\x6C","","\x70\x75\x73\x68","\x73\x6F\x6D\x65","\x49\x4E\x54\x45\x52\x56\x41\x4C\x5F\x49\x53\x5F\x4F\x56\x45\x52\x54\x49\x4D\x45","\x5B\x69\x66\x54\x69\x6D\x65\x5D\x5B\x70\x72\x6F\x6D\x69\x73\x65\x41\x6C\x6C\x5D","\x20\x49\x6E\x74\x65\x72\x76\x61\x6C\x6C\x20\x69\x73\x20\x6F\x76\x65\x72\x74\x69\x6D\x65\x3A\x20","\x54\x69\x6D\x65\x7A\x6F\x6E\x65\x3A\x20","\x61\x6C\x6C","\x63\x68\x65\x63\x6B\x44\x69\x61\x6C\x4D\x65\x74\x68\x6F\x64","\x68\x61\x6E\x64\x6C\x65\x50\x6F\x77\x65\x72","\x70\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65","\x64\x69\x61\x6C\x50\x6F\x77\x65\x72\x4C\x65\x76\x65\x6C","\x70\x6F\x77\x65\x72","\x51\x75\x65\x75\x65","\x6D\x65\x74\x68\x6F\x64\x20\x6E\x6F\x74\x20\x72\x65\x63\x6F\x67\x6E\x69\x7A\x65\x64","\x64\x69\x61\x6C\x4D\x65\x74\x68\x6F\x64","\x6C\x61\x75\x6E\x63\x68\x48\x61\x6E\x64\x6C\x65\x49\x76\x72","\x68\x61\x6E\x64\x6C\x65\x49\x76\x72","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79\x5D","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x41\x63\x74\x69\x76\x65","\x6C\x6F\x67\x67\x65\x64\x49\x6E","\x5B\x73\x79\x6E\x63\x43\x61\x6D\x70\x61\x69\x67\x6E\x73\x5D","\x61\x63\x74\x69\x6F\x6E\x4F\x72\x69\x67\x69\x6E\x61\x74\x65","\x76\x34","\x6F\x62\x6A\x65\x63\x74","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x20\x69\x73\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x70\x68\x6F\x6E\x65","\x43\x6F\x6E\x74\x61\x63\x74","\x63\x6F\x6E\x74\x61\x63\x74\x20\x69\x73\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x67\x65\x74\x43\x61\x6C\x6C\x65\x72","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x50\x72\x6F\x6A\x65\x63\x74","\x22\x61\x67\x69\x3A\x2F\x2F\x25\x73\x2F\x73\x71\x75\x61\x72\x65\x2C\x25\x73\x22","\x4E\x4F\x4E\x45","\x22\x25\x73\x2C\x25\x73\x2C\x2C\x2C\x25\x73\x22","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x4F\x70\x74\x69\x6F\x6E\x73","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x69\x64","\x74\x61\x67\x73","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x25\x73\x25\x73","\x58\x4D\x44\x2D","\x74\x6F\x55\x70\x70\x65\x72","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x46\x61\x69\x6C\x75\x72\x65\x43\x61\x6C\x6C\x73\x44\x61\x79","\x5B\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x45\x72\x72\x6F\x72\x5D\x3A\x20\x25\x73","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x5B\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x5D\x5B\x65\x72\x72\x6F\x72\x5D","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x20\x61\x63\x74\x69\x6F\x6E\x20\x45\x72\x72\x6F\x72","\x66\x69\x6E\x61\x6C\x6C\x79","\x53\x49\x50\x2F\x25\x73\x2F\x25\x73","\x54\x72\x75\x6E\x6B","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x64\x69\x61\x6C\x65\x72","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x31","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x61\x63\x74\x69\x6F\x6E\x69\x64","\x67\x65\x74\x51\x75\x65\x75\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x5B\x63\x61\x6C\x6C\x50\x72\x6F\x67\x72\x65\x73\x73\x44\x65\x74\x65\x63\x74\x69\x6E\x67\x5D\x20","\x63\x61\x6C\x6C\x50\x72\x6F\x67\x72\x65\x73\x73\x44\x65\x74\x65\x63\x74\x69\x6E\x67","\x63\x68\x65\x63\x6B\x52\x65\x74\x72\x69\x76\x65\x4D\x61\x78","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x5B\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74\x5D\x5B\x4E\x6F\x41\x6E\x73\x77\x65\x72\x5D","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x6D\x69\x6E\x75\x74\x65\x73","\x61\x64\x64","\x4C\x69\x73\x74\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x5B\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74\x5D\x20\x5B\x42\x75\x73\x79\x5D","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x5B\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74\x5D\x20\x5B\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x5D","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x5B\x63\x61\x6C\x6C\x50\x72\x6F\x67\x72\x65\x73\x73\x44\x65\x74\x65\x63\x74\x69\x6E\x67\x5D","\x65\x6E\x74\x69\x74\x79\x20\x69\x73\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x65\x76\x74\x20\x69\x73\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x53\x75\x63\x68\x43\x61\x6C\x6C\x73\x44\x61\x79","\x44\x69\x61\x6C\x20\x45\x72\x72\x6F\x72","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x30\x5D","\x72\x65\x61\x73\x6F\x6E\x20\x30\x20\x6E\x6F\x20\x73\x75\x63\x68\x20\x6E\x75\x6D\x62\x65\x72\x2E\x2E\x2E\x2E","\x73\x74\x61\x74\x65\x47\x6C\x6F\x62\x61\x6C","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65\x46\x69\x6E\x61\x6C","\x30","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x4E\x6F\x41\x6E\x73\x77\x65\x72","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x33\x5D","\x72\x65\x61\x73\x6F\x6E\x20\x33\x20\x72\x69\x6E\x67\x69\x6E\x67\x20\x6E\x6F\x20\x61\x6E\x73\x77\x65\x72","\x33","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x75\x73\x79\x43\x61\x6C\x6C\x73\x44\x61\x79","\x42\x75\x73\x79","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x35\x5D","\x72\x65\x61\x73\x6F\x6E\x20\x35\x20\x62\x75\x73\x79","\x35","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x38\x5D","\x72\x65\x61\x73\x6F\x6E\x20\x38\x20\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E","\x38","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x55\x6E\x6B\x6E\x6F\x77\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x72\x65\x61\x73\x6F\x6E","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x3F\x5D","\x47\x6C\x6F\x62\x61\x6C","\x5B\x6D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72\x5D\x5B\x30\x5D","\x63\x6F\x6E\x74\x61\x63\x74\x20\x6E\x6F\x74\x20\x6D\x6F\x76\x65\x64","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E\x50\x65\x72\x63\x65\x6E\x74\x61\x67\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x50\x61\x75\x73\x65\x73","\x77\x61\x69\x74\x69\x6E\x67","\x74\x61\x6C\x6B\x69\x6E\x67","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x4C\x6F\x77\x65\x72\x4C\x69\x6D\x69\x74","\x65\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73","\x65\x72\x6C\x61\x6E\x67\x41\x62\x61\x6E\x64\x6F\x6E\x6D\x65\x6E\x74\x52\x61\x74\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x48\x69\x74\x52\x61\x74\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x4D\x75\x6C\x74\x69\x70\x6C\x69\x63\x61\x74\x69\x76\x65\x46\x61\x63\x74\x6F\x72","\x66\x6C\x6F\x6F\x72","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x46\x69\x72\x73\x74\x5D","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D","\x63\x68\x65\x63\x6B\x20\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x69\x73\x20\x6E\x6F\x74\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x63\x68\x65\x63\x6B\x20\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x69\x73\x20\x6E\x6F\x74\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x44\x61\x74\x65\x5D","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x4C\x6F\x6F\x70\x5D","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E","\x64\x72\x6F\x70\x52\x61\x74\x65","\x5B\x73\x74\x6F\x70\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x52\x65\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x45\x78\x63\x65\x65\x64\x65\x64\x44\x72\x6F\x70\x44\x61\x79\x5D","\x44\x72\x6F\x70\x70\x65\x64\x20\x63\x61\x6C\x6C\x73\x20\x64\x61\x79","\x5B\x73\x74\x6F\x70\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x52\x65\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x4C\x6F\x77\x65\x72\x4C\x69\x6D\x69\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x5D","\x41\x67\x65\x6E\x74\x20\x66\x72\x65\x65","\x61\x67\x65\x6E\x74\x20\x6D\x61\x78\x20\x66\x72\x65\x65\x20","\x5B\x73\x74\x6F\x70\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x52\x65\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x45\x78\x63\x65\x65\x64\x65\x64\x44\x72\x6F\x70\x49\x6E\x74\x65\x72\x76\x61\x6C\x5D","\x4D\x61\x78\x20\x44\x72\x6F\x70\x20","\x44\x72\x6F\x70\x20\x69\x6E\x20\x74\x68\x69\x73\x20\x69\x6E\x74\x65\x72\x76\x61\x6C","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x46\x69\x72\x73\x74\x5D","\x5B\x61\x76\x65\x72\x61\x67\x65\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65\x5D\x5B\x45\x72\x6C\x61\x6E\x67\x42\x5D\x20","\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x67\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x52\x65\x70\x65\x61\x74\x5D","\x5B\x43\x61\x74\x63\x68\x45\x72\x6C\x61\x6E\x67\x42\x5D","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x6E\x73\x77\x65\x72\x65\x64\x43\x61\x6C\x6C\x73","\x61\x62\x61\x6E\x64\x6F\x6E\x6D\x65\x6E\x74\x52\x61\x74\x65","\x61\x67\x65\x6E\x74\x42\x75\x73\x79\x46\x61\x63\x74\x6F\x72","\x62\x75\x73\x79\x46\x61\x63\x74\x6F\x72","\x5B\x67\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x63\x68\x65\x63\x6B\x20\x66\x61\x69\x6C\x75\x72\x65","\x65\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x54\x6F\x53\x65\x63\x6F\x6E\x64","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x5B\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73\x5D\x20","\x46\x61\x69\x6C\x75\x72\x65\x20","\x63\x68\x65\x63\x6B\x43\x6F\x6E\x74\x61\x63\x74\x42\x6C\x61\x63\x6B","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x43\x61\x6C\x6C\x73\x44\x61\x79","\x42\x4C\x41\x43\x4B\x4C\x49\x53\x54","\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74","\x5B\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x5D\x5B\x65\x72\x72\x6F\x72\x5D","\x69\x6E\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74","\x6C\x69\x6D\x69\x74\x43\x61\x6C\x6C\x73","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x32\x5D","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x32\x5D\x5B\x45\x6D\x70\x74\x79\x5D","\x52\x55\x4E\x4E\x49\x4E\x47","\x69\x76\x72\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73\x44\x61\x79\x73","\x5B\x61\x63\x74\x69\x6F\x6E\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x49\x76\x72\x5D\x20","\x43\x6F\x6E\x74\x61\x63\x74\x2E\x70\x68\x6F\x6E\x65","\x70\x69\x63\x6B","\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x51\x75\x65\x75\x65","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x32\x5D","\x5B\x61\x63\x74\x69\x6F\x6E\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x5D\x20","\x74\x72\x79\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x5B\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x6C\x69\x6D\x69\x74\x43\x68\x61\x6E\x6E\x65\x6C\x5D","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x5B\x61\x63\x74\x69\x6F\x6E\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x20","\x5B\x61\x62\x61\x6E\x64\x6F\x6E\x6D\x65\x6E\x74\x52\x61\x74\x65\x5D","\x20\x6D\x20\x3D\x20","\x20\x69\x6E\x74\x65\x72\x76\x61\x6C\x20\x3D\x20","\x20\x54\x73\x20\x3D\x20","\x20\x70\x20\x3D\x20","\x20\x41\x6D\x61\x78\x20\x3D\x20","\x6D\x20\x3D\x20","\x54\x73\x20\x3D\x20","\x70\x20\x3D\x20","\x69\x6E\x74\x65\x72\x76\x61\x6C\x20\x3D\x20","\x41\x6D\x61\x78\x20\x3D\x20","\x5B\x62\x75\x73\x79\x46\x61\x63\x74\x6F\x72\x5D","\x20\x55\x6D\x69\x6E\x20\x3D\x20","\x65\x78\x70\x6F\x72\x74\x73"];_0x16db[0];var util=require(_0x16db[1]);var _=require(_0x16db[2]);var BPromise=require(_0x16db[3]);var uuid=require(_0x16db[4]);var moment=require(_0x16db[5]);var logger=require(_0x16db[7])(_0x16db[6]);var loggerPredictive=require(_0x16db[7])(_0x16db[8]);var loggerPredictiveCalls=require(_0x16db[7])(_0x16db[9]);var loggerSyncQueueSummary=require(_0x16db[7])(_0x16db[10]);var config=require(_0x16db[11]);var ami=require(_0x16db[12]);var io=require(_0x16db[14])({host:_0x16db[13],port:6379});var cmHopper=require(_0x16db[15]);var cmHopperFinal=require(_0x16db[16]);var cmHopperHistory=require(_0x16db[17]);var cmHopperBlack=require(_0x16db[18]);var voiceQueueRt=require(_0x16db[19]);var Action=require(_0x16db[20]);var History=require(_0x16db[21]);var Final=require(_0x16db[22]);var AgentComplete=require(_0x16db[23]);var QueueCallerAbandon=require(_0x16db[24]);var Hangup=require(_0x16db[25]);var ipAgi=process[_0x16db[27]][_0x16db[26]]|| _0x16db[28];function Dialer(_0x558dx1a){this[_0x16db[29]]= _0x558dx1a[_0x16db[29]];this[_0x16db[30]]= _0x558dx1a[_0x16db[30]];this[_0x16db[31]]= _0x558dx1a[_0x16db[31]];this[_0x16db[32]]= _0x558dx1a[_0x16db[32]];this[_0x16db[33]]= 2;this[_0x16db[34]]= {};this[_0x16db[35]]= {};this[_0x16db[36]]= {};this[_0x16db[37]]= {};this[_0x16db[38]]= {};this[_0x16db[39]]= {};this[_0x16db[40]]= {};this[_0x16db[41]]= {};ami[_0x16db[45]](_0x16db[42],this[_0x16db[44]][_0x16db[43]](this));ami[_0x16db[45]](_0x16db[46],this[_0x16db[47]][_0x16db[43]](this));ami[_0x16db[45]](_0x16db[48],this[_0x16db[49]][_0x16db[43]](this));ami[_0x16db[45]](_0x16db[50],this[_0x16db[51]][_0x16db[43]](this));ami[_0x16db[45]](_0x16db[52],this[_0x16db[10]][_0x16db[43]](this));ami[_0x16db[45]](_0x16db[53],this[_0x16db[54]][_0x16db[43]](this));this[_0x16db[55]]()}function isNotNull(_0x558dx1c){return _0x558dx1c!== null&&  !_[_0x16db[56]](_0x558dx1c)}function checkIsLoggedIn(_0x558dx1e,_0x558dx1f){return function(){if(_0x558dx1f<= 0){_0x558dx1e[_0x16db[57]]= _0x16db[58];throw _0x558dx1e[_0x16db[59]]+ _0x16db[60]}}}function isActive(_0x558dx21){return _0x558dx21}function checkIsActive(_0x558dx1e,_0x558dx21){return function(){if(!isActive(_0x558dx21)){_0x558dx1e[_0x16db[57]]= _0x16db[61];throw _0x558dx1e[_0x16db[59]]+ _0x16db[62]}}}function checkInterval(_0x558dx1e){return function(){if(!isNotNull(_0x558dx1e.Interval)){_0x558dx1e[_0x16db[57]]= _0x16db[63];throw _0x558dx1e[_0x16db[59]]+ _0x16db[64]};if(!isNotNull(_0x558dx1e[_0x16db[65]].Intervals)){_0x558dx1e[_0x16db[57]]= _0x16db[63];throw _0x558dx1e[_0x16db[59]]+ _0x16db[64]};if(!isNotNull(_[_0x16db[66]](_0x558dx1e[_0x16db[65]].Intervals))){_0x558dx1e[_0x16db[57]]= _0x16db[63];throw _0x558dx1e[_0x16db[59]]+ _0x16db[64]}}}function msgResponse(_0x558dx25,_0x558dx26,_0x558dx27){return {action:_0x558dx25,response:_0x558dx26,message:_0x558dx27}}function myreject(_0x558dx29){return function(_0x558dx2a){return _0x558dx29(msgResponse(_0x16db[67],_0x16db[68],JSON[_0x16db[69]](_0x558dx2a)))}}function getSeconds(_0x558dx2c,_0x558dx2d){var _0x558dx2e=moment(_0x558dx2c)[_0x16db[70]](0);var _0x558dx2f=moment(_0x558dx2d)[_0x16db[70]](0);return _0x558dx2e[_0x16db[72]](_0x558dx2f,_0x16db[71])}function emit(_0x558dx31,_0x558dx32,_0x558dx1c){io[_0x16db[74]](_0x558dx31)[_0x16db[73]](_0x558dx32,_0x558dx1c)}function emitVoiceQueueSummary(_0x558dx1c){if(_0x558dx1c[_0x16db[75]]=== _0x16db[76]){emit(util[_0x16db[78]](_0x16db[77],_0x558dx1c[_0x16db[59]]),_0x16db[79],_0x558dx1c)}}function emitCampaignSummary(_0x558dx1c){if(_0x558dx1c[_0x16db[75]]=== _0x16db[80]){emit(util[_0x16db[78]](_0x16db[81],_0x558dx1c[_0x16db[59]]),_0x16db[82],_0x558dx1c)}}function checkGetDataPredictive(_0x558dx1c){if(isNotNull(_0x558dx1c)){if(!_[_0x16db[66]](_0x558dx1c)){if(_0x558dx1c[_0x16db[83]]> 0){if(!_[_0x16db[56]](_0x558dx1c[_0x16db[84]])&& _0x558dx1c[_0x16db[84]]> 0){return true}else {loggerPredictive[_0x16db[86]](_0x16db[85],JSON[_0x16db[69]](_0x558dx1c))};if(!_[_0x16db[56]](_0x558dx1c[_0x16db[87]])&& _0x558dx1c[_0x16db[87]]> 0){return true}else {loggerPredictive[_0x16db[86]](_0x16db[88],JSON[_0x16db[69]](_0x558dx1c))}}else {loggerPredictive[_0x16db[86]](_0x16db[89],JSON[_0x16db[69]](_0x558dx1c))}}else {loggerPredictive[_0x16db[86]](_0x16db[90],JSON[_0x16db[69]](_0x558dx1c))}}else {loggerPredictive[_0x16db[86]](_0x16db[91],JSON[_0x16db[69]](_0x558dx1c))};return false}function mergeDataErlangB(_0x558dx37){return function(_0x558dx38){loggerPredictive[_0x16db[86]](_0x16db[92],JSON[_0x16db[69]](_0x558dx38));_[_0x16db[93]](_0x558dx37,_0x558dx38)}}function getDiff(_0x558dx2d){var _0x558dx2e=moment()[_0x16db[70]](0);var _0x558dx2f=moment(_0x558dx2d)[_0x16db[70]](0);return _0x558dx2e[_0x16db[72]](_0x558dx2f,_0x16db[71])}function ifInterval(_0x558dx3b,_0x558dx3c){if(_[_0x16db[56]](_0x558dx3c)){return false};if(getDiff(_0x558dx3c)< _0x558dx3b* 60){return true}else {return false}}function freeVariablesPredictive(_0x558dx37){if(isNotNull(_0x558dx37)){if(!_[_0x16db[56]](_0x558dx37[_0x16db[40]])){_0x558dx37[_0x16db[40]]= undefined;loggerPredictive[_0x16db[86]](_0x16db[94],_0x16db[40],_0x558dx37[_0x16db[59]])};if(!_[_0x16db[56]](_0x558dx37[_0x16db[39]])){_0x558dx37[_0x16db[39]]= undefined;loggerPredictive[_0x16db[86]](_0x16db[94],_0x16db[39],_0x558dx37[_0x16db[59]])};if(!_[_0x16db[56]](_0x558dx37[_0x16db[95]])){clearInterval(_0x558dx37[_0x16db[95]]);_0x558dx37[_0x16db[95]]= undefined;loggerPredictive[_0x16db[86]](_0x16db[94],_0x16db[95],_0x558dx37[_0x16db[59]])}}}function erlangb(_0x558dx3f,_0x558dx40){if(_0x558dx40=== 0){return 0};var _0x558dx41=1;for(var _0x558dx42=1;_0x558dx42<= _0x558dx40;_0x558dx42+= 1){_0x558dx41= 1+ _0x558dx41* _0x558dx42/ _0x558dx3f};return 1/ _0x558dx41}function isVoiceQueueOutbound(_0x558dx44){return _0x558dx44=== _0x16db[76]}function isCampaignIvr(_0x558dx44){return _0x558dx44=== _0x16db[80]}function getCallerId(_0x558dx47,_0x558dx48,_0x558dx49){if(!_[_0x16db[56]](_0x558dx49)&& _0x16db[96]===  typeof _0x558dx49){if(!_[_0x16db[56]](_0x558dx48)&& _0x16db[96]===  typeof _0x558dx48){return util[_0x16db[78]](_0x16db[97],_0x558dx48,_0x558dx49)};return util[_0x16db[78]](_0x16db[97],_0x558dx49,_0x558dx49)};if(!_[_0x16db[56]](_0x558dx47)&& _0x16db[96]===  typeof _0x558dx47){return _0x558dx47};return _0x16db[98]}function loggerCatchQueueSummary(_0x558dx4b,_0x558dx37){return function(_0x558dx2a){freeVariablesPredictive(_0x558dx37);emitVoiceQueueSummary(_0x558dx37);emitCampaignSummary(_0x558dx37);loggerSyncQueueSummary[_0x16db[100]](_0x558dx4b,util[_0x16db[99]](_0x558dx2a,{showHidden:false,depth:null}))}}function loggerCatchPredictive(_0x558dx4b,_0x558dx37){return function(_0x558dx2a){loggerPredictive[_0x16db[100]](_0x558dx4b,JSON[_0x16db[69]](_0x558dx2a));freeVariablesPredictive(_0x558dx37)}}function loggerCatch(_0x558dx4b){return function(_0x558dx2a){logger[_0x16db[100]](_0x558dx4b,util[_0x16db[99]](_0x558dx2a,{showHidden:false,depth:null}))}}function checkContactEmpty(_0x558dx38){return _0x558dx38&&  !_[_0x16db[56]](_0x558dx38)&& (_0x558dx38[_0x16db[101]]> 0)}function decremetOriginate(_0x558dx1c){if(!_[_0x16db[56]](_0x558dx1c)&& _0x558dx1c!== null){if(_0x558dx1c[_0x16db[103]](_0x16db[102])){if(_0x558dx1c[_0x16db[102]]> 0){_0x558dx1c[_0x16db[102]]-= 1}else {logger[_0x16db[100]](_0x16db[104])}}}else {logger[_0x16db[100]](_0x16db[105])}}function checkContactLowerLimitOriginate(_0x558dx37,_0x558dx51,_0x558dx52){if(_0x558dx51> _0x558dx52){for(var _0x558dx53=0;_0x558dx53< _0x558dx51- _0x558dx52;_0x558dx53+= 1){decremetOriginate(_0x558dx37)}}}function loggerGetContactDialer(_0x558dx4b,_0x558dx37,_0x558dx55){return function(_0x558dx2a){checkContactLowerLimitOriginate(_0x558dx37,_0x558dx55,0);logger[_0x16db[100]](_0x558dx4b,util[_0x16db[99]](_0x558dx2a,{showHidden:false,depth:null}))}}function sendMessageReschedule(_0x558dx1e){return function(_0x558dx57){if(isNotNull(_0x558dx57)&& isNotNull(_0x558dx57[0])){if(_0x558dx57[0][_0x16db[106]]> 0){_0x558dx1e[_0x16db[57]]= _0x16db[107];logger[_0x16db[86]](_0x16db[108]+ _0x558dx1e[_0x16db[59]],_0x558dx57[0][_0x16db[106]],_0x16db[109])}else {_0x558dx1e[_0x16db[57]]= _0x16db[110];logger[_0x16db[86]](_0x16db[111]+ _0x558dx1e[_0x16db[59]])}}}}Dialer[_0x16db[113]][_0x16db[112]]= function(_0x558dx58){return BPromise[_0x16db[117]]()[_0x16db[116]](cmHopper[_0x16db[112]](_0x558dx58))[_0x16db[115]](loggerCatch(_0x16db[114]))};Dialer[_0x16db[113]][_0x16db[118]]= function(_0x558dx59){return BPromise[_0x16db[117]]()[_0x16db[116]](cmHopperBlack[_0x16db[118]](_0x558dx59))[_0x16db[115]](loggerCatch(_0x16db[119]))};Dialer[_0x16db[113]][_0x16db[120]]= function(_0x558dx5a){return BPromise[_0x16db[117]]()[_0x16db[116]](cmHopperHistory[_0x16db[122]](_0x558dx5a))[_0x16db[115]](loggerCatch(_0x16db[121]))};Dialer[_0x16db[113]][_0x16db[123]]= function(_0x558dx5b){return BPromise[_0x16db[117]]()[_0x16db[116]](cmHopper[_0x16db[123]](_0x558dx5b))[_0x16db[115]](loggerCatch(_0x16db[124]))};Dialer[_0x16db[113]][_0x16db[125]]= function(_0x558dx5c,_0x558dx51){return BPromise[_0x16db[117]]()[_0x16db[116]](cmHopper[_0x16db[125]](_0x558dx5c,_0x558dx51))[_0x16db[115]](loggerCatch(_0x16db[126]))};Dialer[_0x16db[113]][_0x16db[127]]= function(_0x558dx5d,_0x558dx51){return BPromise[_0x16db[117]]()[_0x16db[116]](cmHopper[_0x16db[127]](_0x558dx5d,_0x558dx51))[_0x16db[115]](loggerCatch(_0x16db[126]))};Dialer[_0x16db[113]][_0x16db[128]]= function(_0x558dx58){return BPromise[_0x16db[117]]()[_0x16db[116]](voiceQueueRt[_0x16db[128]](_0x558dx58))[_0x16db[115]](loggerCatch(_0x16db[129]))};Dialer[_0x16db[113]][_0x16db[130]]= function(_0x558dx5b){return BPromise[_0x16db[117]]()[_0x16db[116]](cmHopper[_0x16db[130]](_0x558dx5b))[_0x16db[115]](loggerCatch(_0x16db[131]))};Dialer[_0x16db[113]][_0x16db[132]]= function(_0x558dx5b){return BPromise[_0x16db[117]]()[_0x16db[116]](cmHopperHistory[_0x16db[132]](_0x558dx5b))[_0x16db[115]](loggerCatch(_0x16db[133]))};Dialer[_0x16db[113]][_0x16db[134]]= function(_0x558dx1c){if(!_[_0x16db[56]](_0x558dx1c)&& _0x558dx1c!== null){if(_0x558dx1c[_0x16db[103]](_0x16db[102])){if(_0x558dx1c[_0x16db[102]]> 0){_0x558dx1c[_0x16db[102]]-= 1}else {logger[_0x16db[100]](_0x16db[135])}}}else {logger[_0x16db[100]](_0x16db[136])}};Dialer[_0x16db[113]][_0x16db[137]]= function(_0x558dx4b,_0x558dx1e){var _0x558dx5e=this;return function(_0x558dx2a){_0x558dx5e[_0x16db[134]](_0x558dx1e);logger[_0x16db[100]](_0x558dx4b,util[_0x16db[99]](_0x558dx2a,{showHidden:false,depth:null}))}};Dialer[_0x16db[113]][_0x16db[138]]= function(_0x558dx5f){return _0x558dx5f=== _0x16db[139]};Dialer[_0x16db[113]][_0x16db[140]]= function(_0x558dx60){return !_[_0x16db[56]](_0x558dx60)&& _0x558dx60 &&  !_[_0x16db[56]](_0x558dx60[_0x16db[59]]) &&  !_[_0x16db[56]](_0x558dx60[_0x16db[141]]) && _0x558dx60[_0x16db[141]] && (this[_0x16db[32]][util[_0x16db[78]](_0x16db[143],_0x558dx60[_0x16db[59]])][_0x16db[142]]=== _0x16db[144]|| this[_0x16db[32]][util[_0x16db[78]](_0x16db[143],_0x558dx60[_0x16db[59]])][_0x16db[142]]=== _0x16db[145])};Dialer[_0x16db[113]][_0x16db[54]]= function(_0x558dx32){var _0x558dx5e=this;var _0x558dx61;if(this[_0x16db[37]][_0x558dx32[_0x16db[146]]]&& this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[75]]=== _0x16db[80]){this[_0x16db[134]](this[_0x16db[30]][this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[147]]]);this[_0x16db[30]][this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[147]]][_0x16db[148]]+= 1;_0x558dx61=  new Hangup(this[_0x16db[37]][_0x558dx32[_0x16db[146]]],_0x558dx32);this[_0x16db[132]](_0x558dx61)[_0x16db[115]](loggerCatch(_0x16db[149]));this[_0x16db[130]](_0x558dx61)[_0x16db[115]](loggerCatch(_0x16db[150]));delete _0x558dx5e[_0x16db[37]][_0x558dx32[_0x16db[146]]]};if(this[_0x16db[37]][_0x558dx32[_0x16db[146]]]&& this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[75]]!== _0x16db[80]){this[_0x16db[134]](this[_0x16db[29]][this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[147]]]);this[_0x16db[29]][this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[147]]][_0x16db[151]]+= 1;this[_0x16db[29]][this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[147]]][_0x16db[152]]+= 1;_0x558dx61=  new Hangup(this[_0x16db[37]][_0x558dx32[_0x16db[146]]],_0x558dx32);_0x558dx61[_0x16db[153]]= 16;_0x558dx61[_0x16db[154]]= _0x16db[155];_0x558dx61[_0x16db[156]]= _0x16db[157];this[_0x16db[132]](_0x558dx61)[_0x16db[115]](loggerCatch(_0x16db[149]));this[_0x16db[130]](_0x558dx61)[_0x16db[115]](loggerCatch(_0x16db[150]));delete _0x558dx5e[_0x16db[37]][_0x558dx32[_0x16db[146]]]}};Dialer[_0x16db[113]][_0x16db[51]]= function(_0x558dx32){var _0x558dx5e=this;if(this[_0x16db[29]][_0x558dx32[_0x16db[147]]]){if(this[_0x16db[37]][_0x558dx32[_0x16db[146]]]){this[_0x16db[29]][_0x558dx32[_0x16db[147]]][_0x16db[151]]+= 1;var _0x558dx62= new AgentComplete(this[_0x16db[37]][_0x558dx32[_0x16db[146]]],_0x558dx32);this[_0x16db[132]](_0x558dx62)[_0x16db[115]](loggerCatch(_0x16db[158]));this[_0x16db[130]](_0x558dx62)[_0x16db[115]](loggerCatch(_0x16db[159]));delete _0x558dx5e[_0x16db[37]][_0x558dx32[_0x16db[146]]]}}};Dialer[_0x16db[113]][_0x16db[44]]= function(_0x558dx32){if(this[_0x16db[29]][_0x558dx32[_0x16db[147]]]){this[_0x16db[134]](this[_0x16db[29]][_0x558dx32[_0x16db[147]]]);if(this[_0x16db[37]][_0x558dx32[_0x16db[146]]]){this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[160]]= moment()[_0x16db[78]](_0x16db[161])}}};Dialer[_0x16db[113]][_0x16db[162]]= function(_0x558dx63){this[_0x16db[132]](_0x558dx63)[_0x16db[115]](loggerCatch(_0x16db[158]));this[_0x16db[130]](_0x558dx63)[_0x16db[115]](loggerCatch(_0x16db[163]))};Dialer[_0x16db[113]][_0x16db[47]]= function(_0x558dx32){var _0x558dx5e=this;if(this[_0x16db[29]][_0x558dx32[_0x16db[147]]]){this[_0x16db[134]](this[_0x16db[29]][_0x558dx32[_0x16db[147]]]);if(this[_0x16db[37]][_0x558dx32[_0x16db[146]]]){this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[164]]= moment()[_0x16db[78]](_0x16db[161]);var _0x558dx63= new QueueCallerAbandon(this[_0x16db[37]][_0x558dx32[_0x16db[146]]],_0x558dx32);if(getSeconds(this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[164]],this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[165]])>= this[_0x16db[37]][_0x558dx32[_0x16db[146]]][_0x16db[166]]){this[_0x16db[29]][_0x558dx32[_0x16db[147]]][_0x16db[167]]+= 1;this[_0x16db[29]][_0x558dx32[_0x16db[147]]][_0x16db[168]]+= 1;this[_0x16db[29]][_0x558dx32[_0x16db[147]]][_0x16db[169]]+= 1;_0x558dx63[_0x16db[153]]= 10;_0x558dx63[_0x16db[154]]= _0x16db[170];_0x558dx63[_0x16db[171]]= _0x16db[172];this[_0x16db[162]](_0x558dx63)}else {this[_0x16db[29]][_0x558dx32[_0x16db[147]]][_0x16db[173]]+= 1;this[_0x16db[29]][_0x558dx32[_0x16db[147]]][_0x16db[174]]+= 1;_0x558dx63[_0x16db[153]]= 11;_0x558dx63[_0x16db[154]]= _0x16db[175];_0x558dx63[_0x16db[171]]= _0x16db[176];this[_0x16db[162]](_0x558dx63)};delete this[_0x16db[37]][_0x558dx32[_0x16db[146]]]}}};Dialer[_0x16db[113]][_0x16db[55]]= function(){var _0x558dx5e=this;setInterval(function(){_0x558dx5e[_0x16db[177]]()},1000)};Dialer[_0x16db[113]][_0x16db[178]]= function(_0x558dx1e){var _0x558dx5e=this;return function(){if(!_0x558dx5e[_0x16db[140]](_0x558dx1e.Trunk)){if(!_0x558dx5e[_0x16db[140]](_0x558dx1e.TrunkBackup)){_0x558dx1e[_0x16db[57]]= _0x16db[179];throw _0x558dx1e[_0x16db[59]]+ _0x16db[180]}}}};Dialer[_0x16db[113]][_0x16db[181]]= function(_0x558dx64,_0x558dx65,_0x558dx48,_0x558dx37){var _0x558dx5e=this;return function(){return _0x558dx5e[_0x16db[182]](_0x558dx64,_0x558dx65,_0x558dx48,_0x558dx37)}};Dialer[_0x16db[113]][_0x16db[183]]= function(_0x558dx66,_0x558dx65,_0x558dx48,_0x558dx37){var _0x558dx5e=this;return function(){return _0x558dx5e[_0x16db[182]](_0x558dx66.Intervals,_0x558dx65,_0x558dx48,_0x558dx37)}};Dialer[_0x16db[113]][_0x16db[182]]= function(_0x558dx64,_0x558dx65,_0x558dx48,_0x558dx37){var _0x558dx67=[];return  new BPromise(function(_0x558dx68,_0x558dx29){if(!isNotNull(_0x558dx64)){_0x558dx37[_0x16db[57]]= _0x16db[63];return _0x558dx29(msgResponse(_0x16db[182],_0x16db[184],_0x558dx48+ _0x16db[185]))};if(_[_0x16db[66]](_0x558dx64)){_0x558dx37[_0x16db[57]]= _0x16db[186];return _0x558dx29(msgResponse(_0x16db[182],_0x16db[184],_0x558dx48+ _0x16db[187]))};if(_0x558dx65&& _[_0x16db[56]](config[_0x16db[188]][_0x558dx65])){_0x558dx37[_0x16db[57]]= _0x16db[189];return _0x558dx29(msgResponse(_0x16db[182],_0x16db[184],_0x558dx48+ _0x16db[190]+ _0x558dx65))};if(_[_0x16db[191]](_0x558dx64)){for(var _0x558dx53=0;_0x558dx53< _0x558dx64[_0x16db[101]];_0x558dx53+= 1){_0x558dx67[_0x16db[199]](ami.Action({action:_0x16db[195],command:util[_0x16db[78]](_0x16db[196],_0x558dx64[_0x558dx53][_0x16db[197]],!_[_0x16db[56]](config[_0x16db[188]][_0x558dx65])?_0x558dx65:_0x16db[198])})[_0x16db[116]](function(_0x558dx38){return (_0x558dx38[_0x16db[194]][_0x16db[193]](_0x16db[192])>= 0)?true:false})[_0x16db[115]](myreject(_0x558dx29)))}}else {_0x558dx67[_0x16db[199]](ami.Action({action:_0x16db[195],command:util[_0x16db[78]](_0x16db[196],_0x558dx64,!_[_0x16db[56]](config[_0x16db[188]][_0x558dx65])?_0x558dx65:_0x16db[198])})[_0x16db[116]](function(_0x558dx38){return (_0x558dx38[_0x16db[194]][_0x16db[193]](_0x16db[192])>= 0)?true:false})[_0x16db[115]](myreject(_0x558dx29)))};BPromise[_0x16db[205]](_0x558dx67)[_0x16db[116]](function(_0x558dx69){var _0x558dx6a=_[_0x16db[200]](_0x558dx69);if(_0x558dx6a){return _0x558dx68(_0x558dx6a)}else {_0x558dx37[_0x16db[57]]= _0x16db[201];return _0x558dx29(msgResponse(_0x16db[202],_0x16db[184],_0x558dx48+ _0x16db[203]+ util[_0x16db[99]](_0x558dx64,{showHidden:false,depth:null})+ _0x16db[204]+ _0x558dx65))}})[_0x16db[115]](function(_0x558dx2a){return _0x558dx29(msgResponse(_0x16db[182],_0x16db[184],JSON[_0x16db[69]](_0x558dx2a)))})})};Dialer[_0x16db[113]][_0x16db[206]]= function(_0x558dx37){var _0x558dx5e=this;return function(){switch(_0x558dx37[_0x16db[213]]){case _0x16db[208]:freeVariablesPredictive(_0x558dx37);_0x558dx5e[_0x16db[207]](_0x558dx37,1);break;case _0x16db[210]:freeVariablesPredictive(_0x558dx37);_0x558dx5e[_0x16db[207]](_0x558dx37,_0x558dx37[_0x16db[209]]);break;case _0x16db[8]:_0x558dx5e[_0x16db[8]](_0x558dx37);break;default:freeVariablesPredictive(_0x558dx37);logger[_0x16db[100]](_0x16db[211],_0x558dx37[_0x16db[59]],_0x16db[212])}}};Dialer[_0x16db[113]][_0x16db[214]]= function(_0x558dx6b){var _0x558dx5e=this;return function(){_0x558dx5e[_0x16db[215]](_0x558dx6b)}};Dialer[_0x16db[113]][_0x16db[10]]= function(_0x558dx37){var _0x558dx5e=this;if(isVoiceQueueOutbound(_0x558dx37[_0x16db[75]])){BPromise[_0x16db[117]]()[_0x16db[116]](checkIsLoggedIn(_0x558dx37,_0x558dx37[_0x16db[220]]))[_0x16db[116]](checkIsActive(_0x558dx37,_0x558dx37[_0x16db[219]]))[_0x16db[116]](checkInterval(_0x558dx37))[_0x16db[116]](_0x558dx5e[_0x16db[178]](_0x558dx37))[_0x16db[116]](_0x558dx5e[_0x16db[181]](_0x558dx37[_0x16db[218]],_0x558dx37[_0x16db[217]],_0x558dx37[_0x16db[59]],_0x558dx37))[_0x16db[116]](_0x558dx5e[_0x16db[183]](_0x558dx37.Interval,_0x558dx37[_0x16db[217]],_0x558dx37[_0x16db[59]],_0x558dx37))[_0x16db[116]](_0x558dx5e[_0x16db[206]](_0x558dx37))[_0x16db[115]](loggerCatchQueueSummary(_0x16db[216],_0x558dx37))}};Dialer[_0x16db[113]][_0x16db[177]]= function(){var _0x558dx5e=this;var _0x558dx6b;for(var _0x558dx6c in this[_0x16db[30]]){if(this[_0x16db[30]][_0x16db[103]](_0x558dx6c)){_0x558dx6b= this[_0x16db[30]][_0x558dx6c];if(isCampaignIvr(_0x558dx6b[_0x16db[75]])){BPromise[_0x16db[117]]()[_0x16db[116]](checkIsActive(_0x558dx6b,_0x558dx6b[_0x16db[141]]))[_0x16db[116]](checkInterval(_0x558dx6b))[_0x16db[116]](_0x558dx5e[_0x16db[178]](_0x558dx6b))[_0x16db[116]](_0x558dx5e[_0x16db[181]](_0x558dx6b[_0x16db[218]],_0x558dx6b[_0x16db[217]],_0x558dx6b[_0x16db[59]],_0x558dx6b))[_0x16db[116]](_0x558dx5e[_0x16db[183]](_0x558dx6b.Interval,_0x558dx6b[_0x16db[217]],_0x558dx6b[_0x16db[59]],_0x558dx6b))[_0x16db[116]](_0x558dx5e[_0x16db[214]](_0x558dx6b))[_0x16db[115]](loggerCatchQueueSummary(_0x16db[221],_0x558dx6b))}}}};Dialer[_0x16db[113]][_0x16db[222]]= function(_0x558dx37,_0x558dx1c){var _0x558dx5e=this;var _0x558dx6d=uuid[_0x16db[223]]();this[_0x16db[35]][_0x558dx6d]=  new Action(_0x558dx37,_0x558dx1c,_0x558dx6d);return  new BPromise(function(_0x558dx68,_0x558dx29){if(_[_0x16db[56]](_0x558dx37)&& _0x16db[224]!==  typeof _0x558dx37){return _0x558dx29(msgResponse(_0x16db[225],_0x16db[184],_0x16db[226]))};if(_[_0x16db[56]](_0x558dx1c[_0x16db[228]][_0x16db[227]])|| _0x558dx1c[_0x16db[228]][_0x16db[227]]=== null){return _0x558dx29(msgResponse(_0x16db[225],_0x16db[184],_0x16db[229]))};var _0x558dx6e={"\x58\x4D\x44\x2D\x43\x41\x4C\x4C\x45\x52\x49\x44":_0x558dx5e[_0x16db[35]][_0x558dx6d][_0x16db[230]](),"\x58\x4D\x44\x2D\x41\x47\x49":_0x558dx37[_0x16db[231]]?util[_0x16db[78]](_0x16db[232],ipAgi,_0x558dx37[_0x16db[231]]):_0x16db[233],"\x58\x4D\x44\x2D\x51\x55\x45\x55\x45":(_0x558dx37[_0x16db[75]]=== _0x16db[76])?util[_0x16db[78]](_0x16db[234],_0x558dx37[_0x16db[59]],_0x558dx37[_0x16db[235]]|| _0x16db[198],_0x558dx37[_0x16db[166]]|| 3):_0x16db[233],"\x58\x4D\x44\x2D\x43\x4F\x4E\x54\x41\x43\x54\x49\x44":_0x558dx1c[_0x16db[236]],"\x58\x4D\x44\x2D\x56\x4F\x49\x43\x45\x51\x55\x45\x55\x45\x49\x44":_0x558dx1c[_0x16db[237]]};for(var _0x558dx6c in _0x558dx1c[_0x16db[228]]){if(_0x558dx1c[_0x16db[228]][_0x16db[103]](_0x558dx6c)){if(isNotNull(_0x558dx1c[_0x16db[228]][_0x558dx6c])&& (_0x558dx6c!== _0x16db[238])&& (_0x558dx6c!== _0x16db[239])&& (_0x558dx6c!== _0x16db[240])&& (_0x558dx6c!== _0x16db[241])){_0x558dx6e[util[_0x16db[78]](_0x16db[242],_0x16db[243],_[_0x16db[244]](_0x558dx6c))]= _0x558dx1c[_0x16db[228]][_0x558dx6c]}}};return ami.Action({actionid:_0x558dx6d,action:_0x16db[225],channel:(_0x558dx5e[_0x16db[140]](_0x558dx37.Trunk))?util[_0x16db[78]](_0x16db[252],_0x558dx37[_0x16db[253]][_0x16db[59]],_0x558dx1c[_0x16db[228]][_0x16db[227]]):util[_0x16db[78]](_0x16db[252],_0x558dx37[_0x16db[254]][_0x16db[59]],_0x558dx1c[_0x16db[228]][_0x16db[227]]),callerid:(_0x558dx5e[_0x16db[140]](_0x558dx37.Trunk))?getCallerId(_0x558dx37[_0x16db[253]][_0x16db[255]],_0x558dx37[_0x16db[256]],_0x558dx37[_0x16db[257]]):getCallerId(_0x558dx37[_0x16db[254]][_0x16db[255]],_0x558dx37[_0x16db[256]],_0x558dx37[_0x16db[257]]),Exten:_0x16db[258],Context:_0x16db[259],Priority:_0x16db[260],variable:_0x558dx6e,timeout:(_0x558dx37[_0x16db[261]]|| 30)* 1000,async:true,channelid:_0x558dx6d})[_0x16db[116]](function(_0x558dx38){return _0x558dx68(_0x558dx38)})[_0x16db[115]](function(_0x558dx2a){_0x558dx37[_0x16db[245]]+= 1;var _0x558dx6f= new History(_0x558dx5e[_0x16db[35]][_0x558dx6d]);logger[_0x16db[100]](util[_0x16db[78]](_0x16db[246],JSON[_0x16db[69]](_0x558dx2a)));_0x558dx6f[_0x16db[153]]= 14;_0x558dx6f[_0x16db[154]]= _0x558dx2a[_0x16db[57]];_0x558dx6f[_0x16db[247]]= moment()[_0x16db[78]](_0x16db[161]);_0x558dx6f[_0x16db[248]]= _0x558dx6f[_0x16db[247]];_0x558dx5e[_0x16db[132]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[249]));_0x558dx5e[_0x16db[130]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[249]))[_0x16db[251]](function(){delete _0x558dx5e[_0x16db[35]][_0x558dx6d];return _0x558dx29(msgResponse(_0x16db[225],_0x16db[68],_0x16db[250]))})})})};Dialer[_0x16db[113]][_0x16db[49]]= function(_0x558dx32){var _0x558dx5e=this;if(this[_0x16db[35]][_0x558dx32[_0x16db[262]]]){this[_0x16db[35]][_0x558dx32[_0x16db[262]]][_0x16db[165]]= moment()[_0x16db[78]](_0x16db[161]);var _0x558dx1e=(this[_0x16db[35]][_0x558dx32[_0x16db[262]]][_0x16db[75]]=== _0x16db[80])?this[_0x16db[30]][this[_0x16db[35]][_0x558dx32[_0x16db[262]]][_0x16db[147]]]:this[_0x16db[29]][this[_0x16db[35]][_0x558dx32[_0x16db[262]]][_0x16db[263]]()];if(!this[_0x16db[138]](_0x558dx32[_0x16db[264]])){this[_0x16db[134]](_0x558dx1e);return this[_0x16db[266]](this[_0x16db[35]][_0x558dx32[_0x16db[262]]],_0x558dx1e,_0x558dx32)[_0x16db[116]](function(_0x558dx38){})[_0x16db[115]](loggerCatch(_0x16db[265]))[_0x16db[251]](function(){delete _0x558dx5e[_0x16db[35]][_0x558dx32[_0x16db[262]]]})}else {this[_0x16db[37]][_0x558dx32[_0x16db[146]]]= _0x558dx5e[_0x16db[35]][_0x558dx32[_0x16db[262]]];delete this[_0x16db[35]][_0x558dx32[_0x16db[262]]]}}};Dialer[_0x16db[113]][_0x16db[267]]= function(_0x558dx70,_0x558dx1c,_0x558dx1e){var _0x558dx6f= new History(_0x558dx1c);if(_0x558dx6f[_0x16db[268]]+ _0x558dx6f[_0x16db[269]]+ _0x558dx6f[_0x16db[270]]>= _0x558dx1e[_0x16db[271]]- 1){return true};switch(_0x558dx70){case 3:if(_0x558dx6f[_0x16db[270]]>= _0x558dx1e[_0x16db[272]]- 1){return true}else {this[_0x16db[123]]({active:false,countnoanswerretry:_0x558dx6f[_0x16db[270]]+= 1,scheduledat:moment()[_0x16db[276]](_0x558dx1e[_0x16db[274]],_0x16db[275])[_0x16db[78]](_0x16db[161]),ContactId:_0x558dx6f[_0x16db[236]],ListId:_0x558dx6f[_0x16db[277]],VoiceQueueId:_0x558dx6f[_0x16db[237]]|| undefined,CampaignId:_0x558dx6f[_0x16db[278]]|| undefined})[_0x16db[115]](loggerCatch(_0x16db[273]))};break;case 5:if(_0x558dx6f[_0x16db[268]]>= _0x558dx1e[_0x16db[279]]- 1){return true}else {this[_0x16db[123]]({active:false,countbusyretry:_0x558dx6f[_0x16db[268]]+= 1,scheduledat:moment()[_0x16db[276]](_0x558dx1e[_0x16db[281]],_0x16db[275])[_0x16db[78]](_0x16db[161]),ContactId:_0x558dx6f[_0x16db[236]],ListId:_0x558dx6f[_0x16db[277]],VoiceQueueId:_0x558dx6f[_0x16db[237]]|| undefined,CampaignId:_0x558dx6f[_0x16db[278]]|| undefined})[_0x16db[115]](loggerCatch(_0x16db[280]))};break;case 8:if(_0x558dx6f[_0x16db[269]]>= _0x558dx1e[_0x16db[282]]- 1){return true}else {this[_0x16db[123]]({active:false,countcongestionretry:_0x558dx6f[_0x16db[269]]+= 1,scheduledat:moment()[_0x16db[276]](_0x558dx1e[_0x16db[284]],_0x16db[275])[_0x16db[78]](_0x16db[161]),ContactId:_0x558dx6f[_0x16db[236]],ListId:_0x558dx6f[_0x16db[277]],VoiceQueueId:_0x558dx6f[_0x16db[237]]|| undefined,CampaignId:_0x558dx6f[_0x16db[278]]|| undefined})[_0x16db[115]](loggerCatch(_0x16db[283]))};break;default:return true}};Dialer[_0x16db[113]][_0x16db[266]]= function(_0x558dx25,_0x558dx1e,_0x558dx32){var _0x558dx5e=this;var _0x558dx6f= new History(_0x558dx25);return  new BPromise(function(_0x558dx68,_0x558dx29){if(_[_0x16db[56]](_0x558dx1e)&& _0x16db[224]!==  typeof _0x558dx1e){return _0x558dx29(msgResponse(_0x16db[285],_0x16db[184],_0x16db[286]))};if(_[_0x16db[56]](_0x558dx32)&& _0x16db[224]!==  typeof _0x558dx32){return _0x558dx29(msgResponse(_0x16db[285],_0x16db[184],_0x16db[287]))};switch(_0x558dx32[_0x16db[312]]){case _0x16db[294]:_0x558dx1e[_0x16db[288]]+= 1;_0x558dx6f[_0x16db[153]]= 0;_0x558dx6f[_0x16db[154]]= _0x16db[289];_0x558dx5e[_0x16db[132]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[290]));if(_0x558dx5e[_0x16db[267]](0,_0x558dx25,_0x558dx1e)){if(_0x558dx6f[_0x16db[268]]+ _0x558dx6f[_0x16db[269]]+ _0x558dx6f[_0x16db[270]]>= _0x558dx1e[_0x16db[271]]){_0x558dx5e[_0x16db[292]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x16db[291])}else {_0x558dx5e[_0x16db[293]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x16db[291])}};break;case _0x16db[300]:_0x558dx1e[_0x16db[295]]+= 1;_0x558dx6f[_0x16db[153]]= 3;_0x558dx6f[_0x16db[154]]= _0x16db[296];_0x558dx6f[_0x16db[270]]+= 1;_0x558dx6f[_0x16db[297]]+= 1;_0x558dx5e[_0x16db[132]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[298]));if(_0x558dx5e[_0x16db[267]](3,_0x558dx25,_0x558dx1e)){if(_0x558dx6f[_0x16db[270]]>= _0x558dx1e[_0x16db[272]]){_0x558dx5e[_0x16db[293]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x16db[299])}else {_0x558dx5e[_0x16db[292]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x16db[299])}};break;case _0x16db[305]:_0x558dx1e[_0x16db[301]]+= 1;_0x558dx6f[_0x16db[153]]= 5;_0x558dx6f[_0x16db[154]]= _0x16db[302];_0x558dx6f[_0x16db[268]]+= 1;_0x558dx6f[_0x16db[297]]+= 1;_0x558dx5e[_0x16db[132]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[303]));if(_0x558dx5e[_0x16db[267]](5,_0x558dx25,_0x558dx1e)){if(_0x558dx6f[_0x16db[268]]>= _0x558dx1e[_0x16db[279]]){_0x558dx5e[_0x16db[293]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x16db[304])}else {_0x558dx5e[_0x16db[292]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x16db[304])}};break;case _0x16db[310]:_0x558dx1e[_0x16db[306]]+= 1;_0x558dx6f[_0x16db[153]]= 8;_0x558dx6f[_0x16db[154]]= _0x16db[307];_0x558dx6f[_0x16db[269]]+= 1;_0x558dx6f[_0x16db[297]]+= 1;_0x558dx5e[_0x16db[132]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[308]));if(_0x558dx5e[_0x16db[267]](8,_0x558dx25,_0x558dx1e)){if(_0x558dx6f[_0x16db[269]]>= _0x558dx1e[_0x16db[282]]){_0x558dx5e[_0x16db[293]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x16db[309])}else {_0x558dx5e[_0x16db[292]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x16db[309])}};break;default:_0x558dx1e[_0x16db[311]]+= 1;_0x558dx6f[_0x16db[153]]= 12;_0x558dx6f[_0x16db[154]]= _0x558dx32[_0x16db[312]];_0x558dx5e[_0x16db[132]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[313]));if(_0x558dx5e[_0x16db[267]](_0x558dx32[_0x16db[312]],_0x558dx25,_0x558dx1e)){if(_0x558dx6f[_0x16db[268]]+ _0x558dx6f[_0x16db[269]]+ _0x558dx6f[_0x16db[270]]>= _0x558dx1e[_0x16db[271]]){_0x558dx5e[_0x16db[292]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x558dx32[_0x16db[312]])}else {_0x558dx5e[_0x16db[293]](_0x558dx6f,_0x558dx68,_0x558dx29,_0x558dx32[_0x16db[312]])}}}})};Dialer[_0x16db[113]][_0x16db[292]]= function(_0x558dx6f,_0x558dx68,_0x558dx29,_0x558dx27){var _0x558dx71= new Final(_0x558dx6f);_0x558dx71[_0x16db[153]]= 15;_0x558dx71[_0x16db[154]]= _0x16db[314];this[_0x16db[293]](_0x558dx71,_0x558dx68,_0x558dx29,_0x558dx27)};Dialer[_0x16db[113]][_0x16db[293]]= function(_0x558dx6f,_0x558dx68,_0x558dx29,_0x558dx27){this[_0x16db[130]](_0x558dx6f)[_0x16db[116]](function(_0x558dx38){return _0x558dx68(msgResponse(_0x16db[285],_0x16db[139],_0x558dx27))})[_0x16db[115]](function(_0x558dx2a){return _0x558dx29(msgResponse(_0x16db[315],_0x16db[184],_0x16db[316]))})};Dialer[_0x16db[113]][_0x16db[8]]= function(_0x558dx37){var _0x558dx5e=this;var _0x558dx72=_0x558dx37[_0x16db[317]]/ 100;var _0x558dx73=_0x558dx37[_0x16db[168]]/ (_0x558dx37[_0x16db[168]]+ _0x558dx37[_0x16db[151]]);var _0x558dx74=_0x558dx37[_0x16db[220]]- _0x558dx37[_0x16db[318]]- _0x558dx37[_0x16db[319]]- _0x558dx37[_0x16db[102]]- _0x558dx37[_0x16db[320]];var _0x558dx75=(_0x558dx37[_0x16db[220]]- _0x558dx37[_0x16db[318]])* _0x558dx37[_0x16db[321]];var _0x558dx76=Math[_0x16db[326]](_0x558dx37[_0x16db[322]]* _0x558dx37[_0x16db[323]]* _0x558dx37[_0x16db[324]]* _0x558dx37[_0x16db[325]]);if(_[_0x16db[56]](_0x558dx37[_0x16db[40]])){loggerPredictive[_0x16db[86]](_0x16db[327]);if(!_[_0x16db[56]](_0x558dx37[_0x16db[39]])){_0x558dx37[_0x16db[39]]= undefined;loggerPredictive[_0x16db[100]](_0x16db[328],_0x16db[329])};if(!_[_0x16db[56]](_0x558dx37[_0x16db[95]])){loggerPredictive[_0x16db[100]](_0x16db[328],_0x16db[330]);clearInterval(_0x558dx37[_0x16db[95]]);_0x558dx37[_0x16db[95]]= undefined};_0x558dx37[_0x16db[40]]= moment()[_0x16db[78]](_0x16db[161]);loggerPredictive[_0x16db[86]](_0x16db[331],_0x558dx37[_0x16db[40]],_0x558dx37[_0x16db[59]]);this[_0x16db[207]](_0x558dx37,1)}else {if(ifInterval(_0x558dx37[_0x16db[332]],_0x558dx37[_0x16db[40]])){this[_0x16db[207]](_0x558dx37,1);loggerPredictiveCalls[_0x16db[86]](_0x16db[333],_0x558dx37[_0x16db[40]],_0x558dx37[_0x16db[59]]);_0x558dx37[_0x16db[322]]= 0;_0x558dx37[_0x16db[169]]= 0}else {if((_0x558dx72< _0x558dx73)&& _0x558dx37[_0x16db[334]]=== _0x16db[335]){freeVariablesPredictive(_0x558dx37);loggerPredictive[_0x16db[86]](_0x16db[336],_0x16db[337],_0x558dx73,_0x16db[40],_0x558dx37[_0x16db[59]])}else {if(_0x558dx74> _0x558dx75){freeVariablesPredictive(_0x558dx37);loggerPredictive[_0x16db[86]](_0x16db[338],_0x16db[339],_0x558dx74,_0x16db[340],_0x558dx75)}else {if((_0x558dx76)< _0x558dx37[_0x16db[169]]&& _0x558dx37[_0x16db[334]]=== _0x16db[335]){freeVariablesPredictive(_0x558dx37);loggerPredictive[_0x16db[86]](_0x16db[341],_0x16db[342],_0x558dx76,_0x16db[343],_0x558dx37[_0x16db[169]],_0x16db[40],_0x558dx37[_0x16db[59]])}else {if(!ifInterval(_0x558dx37[_0x16db[332]],_0x558dx37[_0x16db[40]])&& _[_0x16db[56]](_0x558dx37[_0x16db[39]]) &&  !_[_0x16db[56]](_0x558dx37[_0x16db[40]])){_0x558dx37[_0x16db[39]]= moment()[_0x16db[78]](_0x16db[161]);loggerPredictive[_0x16db[86]](_0x16db[344],_0x558dx37[_0x16db[39]],_0x558dx37[_0x16db[59]]);this[_0x16db[120]](_0x558dx37[_0x16db[332]])[_0x16db[116]](this[_0x16db[347]](_0x558dx37))[_0x16db[116]](mergeDataErlangB(_0x558dx37))[_0x16db[116]](this[_0x16db[346]](_0x558dx37))[_0x16db[115]](loggerCatchPredictive(_0x16db[345],_0x558dx37))}else {if(!ifInterval(_0x558dx37[_0x16db[332]],_0x558dx37[_0x16db[39]])){_0x558dx37[_0x16db[169]]= 0;_0x558dx37[_0x16db[39]]= moment()[_0x16db[78]](_0x16db[161]);loggerPredictive[_0x16db[86]](_0x16db[348],_0x558dx37[_0x16db[39]],_0x558dx37[_0x16db[59]]);clearInterval(_0x558dx37[_0x16db[95]]);_0x558dx37[_0x16db[95]]= undefined;this[_0x16db[120]](_0x558dx37[_0x16db[332]])[_0x16db[116]](this[_0x16db[347]](_0x558dx37))[_0x16db[116]](mergeDataErlangB(_0x558dx37))[_0x16db[116]](this[_0x16db[346]](_0x558dx37))[_0x16db[115]](loggerCatchPredictive(_0x16db[345],_0x558dx37))}}}}}}}};Dialer[_0x16db[113]][_0x16db[347]]= function(_0x558dx37){var _0x558dx5e=this;return function(_0x558dx38){return  new BPromise(function(_0x558dx68,_0x558dx29){_[_0x16db[93]](_0x558dx37,_0x558dx38[0]);if(checkGetDataPredictive(_0x558dx38[0])){loggerPredictive[_0x16db[86]](JSON[_0x16db[69]](_0x558dx38[0]));if(_0x558dx37[_0x16db[334]]=== _0x16db[335]){return _0x558dx5e[_0x16db[128]]()[_0x16db[116]](function(_0x558dx77){var _0x558dx40=_0x558dx37[_0x16db[220]]- _0x558dx77[0][_0x16db[350]];var _0x558dx5a=_0x558dx37[_0x16db[332]]* 60;var _0x558dx78=_0x558dx38[0][_0x16db[84]]+ _0x558dx38[0][_0x16db[87]];var _0x558dx79=((_0x558dx38[0][_0x16db[351]]+ _0x558dx38[0][_0x16db[167]]+ _0x558dx38[0][_0x16db[173]])/ _0x558dx38[0][_0x16db[83]]);var _0x558dx7a=_0x558dx37[_0x16db[317]]/ 100;_0x558dx37[_0x16db[318]]= _0x558dx77[0][_0x16db[350]]|| 0;_0x558dx37[_0x16db[324]]= (_0x558dx79> 0)?_0x558dx79:1;return _0x558dx5e[_0x16db[352]](_0x558dx40,_0x558dx5a,_0x558dx78,_0x558dx79,_0x558dx7a)})[_0x16db[116]](function(_0x558dx38){return _0x558dx68(_0x558dx38)})[_0x16db[115]](function(_0x558dx2a){return _0x558dx29(msgResponse(_0x16db[349],_0x16db[184],JSON[_0x16db[69]](_0x558dx2a)))})};if(_0x558dx37[_0x16db[334]]=== _0x16db[353]){return _0x558dx5e[_0x16db[128]]()[_0x16db[116]](function(_0x558dx77){var _0x558dx40=_0x558dx37[_0x16db[220]]- _0x558dx77[0][_0x16db[350]];var _0x558dx5a=_0x558dx37[_0x16db[332]]* 60;var _0x558dx78=_0x558dx38[0][_0x16db[84]]+ _0x558dx38[0][_0x16db[87]];var _0x558dx79=((_0x558dx38[0][_0x16db[351]]+ _0x558dx38[0][_0x16db[167]]+ _0x558dx38[0][_0x16db[173]])/ _0x558dx38[0][_0x16db[83]]);var _0x558dx7b=_0x558dx37[_0x16db[317]]/ 100;_0x558dx37[_0x16db[318]]= _0x558dx77[0][_0x16db[350]]|| 0;_0x558dx37[_0x16db[324]]= (_0x558dx79> 0)?_0x558dx79:1;return _0x558dx5e[_0x16db[354]](_0x558dx40,_0x558dx5a,_0x558dx78,_0x558dx79,_0x558dx7b)})[_0x16db[116]](function(_0x558dx38){return _0x558dx68(_0x558dx38)})[_0x16db[115]](function(_0x558dx2a){return _0x558dx29(msgResponse(_0x16db[349],_0x16db[184],JSON[_0x16db[69]](_0x558dx2a)))})}}else {return _0x558dx29(msgResponse(_0x16db[355],_0x16db[184],_0x16db[356]))}})}};Dialer[_0x16db[113]][_0x16db[346]]= function(_0x558dx37){var _0x558dx5e=this;return function(){var _0x558dx53=0;var _0x558dx7c=Math[_0x16db[326]](_0x558dx37[_0x16db[357]]* 1000);if(_0x558dx7c> 0){loggerPredictive[_0x16db[86]](_0x16db[358],_0x558dx7c);_0x558dx37[_0x16db[95]]= setInterval(function(){_0x558dx5e[_0x16db[95]](_0x558dx37);loggerPredictiveCalls[_0x16db[86]](_0x16db[359],_0x558dx53+= 1)},_0x558dx7c)}else {loggerPredictive[_0x16db[86]](_0x16db[360],_0x16db[361],_0x558dx7c)}}};Dialer[_0x16db[113]][_0x16db[362]]= function(_0x558dx37,_0x558dx59){var _0x558dx5e=this;return function(_0x558dx38){if(_[_0x16db[66]](_0x558dx38)){return _0x558dx5e[_0x16db[222]](_0x558dx37,_0x558dx59)}else {_0x558dx37[_0x16db[363]]+= 1;_0x558dx37[_0x16db[57]]= _0x16db[364];var _0x558dx25= new Action(_0x558dx37,_0x558dx59);var _0x558dx6f= new History(_0x558dx25);_0x558dx6f[_0x16db[153]]= 13;_0x558dx6f[_0x16db[154]]= _0x16db[365];_0x558dx6f[_0x16db[248]]= _0x558dx25[_0x16db[247]];_0x558dx5e[_0x16db[132]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[249]));_0x558dx5e[_0x16db[130]](_0x558dx6f)[_0x16db[115]](loggerCatch(_0x16db[366]));throw _0x16db[367]}}};Dialer[_0x16db[113]][_0x16db[215]]= function(_0x558dx6b){var _0x558dx5e=this;var _0x558dx52=[];var _0x558dx55=_0x558dx6b[_0x16db[368]]- _0x558dx6b[_0x16db[102]];emitCampaignSummary(_0x558dx6b);if(_0x558dx55> 0){if(_0x558dx55> this[_0x16db[33]]){_0x558dx55= this[_0x16db[33]]};_0x558dx6b[_0x16db[102]]+= _0x558dx55;this[_0x16db[127]](_0x558dx6b[_0x16db[238]],_0x558dx55)[_0x16db[116]](function(_0x558dx38){if(!checkContactEmpty(_0x558dx38)){checkContactLowerLimitOriginate(_0x558dx6b,_0x558dx55,0);_0x558dx6b[_0x16db[57]]= _0x16db[110];logger[_0x16db[86]](_0x16db[370]+ _0x558dx6b[_0x16db[59]])}else {checkContactLowerLimitOriginate(_0x558dx6b,_0x558dx55,_0x558dx38[_0x16db[101]]);_0x558dx6b[_0x16db[57]]= _0x16db[371];for(var _0x558dx7d=0;_0x558dx7d< _0x558dx38[_0x16db[101]];_0x558dx7d+= 1){_0x558dx6b[_0x16db[372]]+= 1;_0x558dx5e[_0x16db[118]](_[_0x16db[375]](_0x558dx38[_0x558dx7d],[_0x16db[278],_0x16db[374]]))[_0x16db[116]](_0x558dx5e[_0x16db[362]](_0x558dx6b,_0x558dx38[_0x558dx7d]))[_0x16db[115]](_0x558dx5e[_0x16db[137]](_0x16db[373],_0x558dx6b))}}})[_0x16db[115]](loggerGetContactDialer(_0x16db[369],_0x558dx6b,_0x558dx55))}};Dialer[_0x16db[113]][_0x16db[207]]= function(_0x558dx37,_0x558dx7e){var _0x558dx5e=this;var _0x558dx7f=_0x558dx7e>= 1?_0x558dx7e:1;var _0x558dx52=[];var _0x558dx55=Math[_0x16db[326]](_0x558dx37[_0x16db[376]]* _0x558dx7f)- _0x558dx37[_0x16db[102]];emitVoiceQueueSummary(_0x558dx37);if(_0x558dx37[_0x16db[377]]> 0){var _0x558dx80=_0x558dx37[_0x16db[377]]- _0x558dx37[_0x16db[102]]- _0x558dx37[_0x16db[320]];if(_0x558dx55> _0x558dx80){_0x558dx55= _0x558dx80}};if(_0x558dx55> 0){if(_0x558dx55> this[_0x16db[33]]){_0x558dx55= this[_0x16db[33]]};_0x558dx37[_0x16db[102]]+= _0x558dx55;this[_0x16db[125]](_0x558dx37[_0x16db[238]],_0x558dx55)[_0x16db[116]](function(_0x558dx38){if(!checkContactEmpty(_0x558dx38)){checkContactLowerLimitOriginate(_0x558dx37,_0x558dx55,0);_0x558dx5e[_0x16db[112]](_0x558dx37)[_0x16db[116]](sendMessageReschedule(_0x558dx37))[_0x16db[115]](loggerCatch(_0x16db[114]))}else {checkContactLowerLimitOriginate(_0x558dx37,_0x558dx55,_0x558dx38[_0x16db[101]]);_0x558dx37[_0x16db[57]]= _0x16db[371];for(var _0x558dx7d=0;_0x558dx7d< _0x558dx38[_0x16db[101]];_0x558dx7d+= 1){_0x558dx5e[_0x16db[118]](_[_0x16db[375]](_0x558dx38[_0x558dx7d],[_0x16db[237],_0x16db[374]]))[_0x16db[116]](_0x558dx5e[_0x16db[362]](_0x558dx37,_0x558dx38[_0x558dx7d]))[_0x16db[115]](_0x558dx5e[_0x16db[137]](_0x16db[379],_0x558dx37))}}})[_0x16db[115]](loggerGetContactDialer(_0x16db[378],_0x558dx37,_0x558dx55))}};Dialer[_0x16db[113]][_0x16db[95]]= function(_0x558dx37){var _0x558dx5e=this;if(_0x558dx37[_0x16db[377]]> 0){var _0x558dx80=_0x558dx37[_0x16db[377]]- _0x558dx37[_0x16db[102]]- _0x558dx37[_0x16db[320]];if(_0x558dx80> 0){this[_0x16db[380]](_0x558dx37)}else {loggerPredictiveCalls[_0x16db[86]](_0x16db[381])}}else {this[_0x16db[380]](_0x558dx37)}};Dialer[_0x16db[113]][_0x16db[380]]= function(_0x558dx37){var _0x558dx5e=this;_0x558dx37[_0x16db[102]]+= 1;this[_0x16db[125]](_0x558dx37[_0x16db[238]],1)[_0x16db[116]](function(_0x558dx38){if(!checkContactEmpty(_0x558dx38)){checkContactLowerLimitOriginate(_0x558dx37,1,0);_0x558dx5e[_0x16db[112]](_0x558dx37)[_0x16db[116]](sendMessageReschedule(_0x558dx37))[_0x16db[115]](loggerCatch(_0x16db[114]))}else {_0x558dx37[_0x16db[57]]= _0x16db[371];_0x558dx5e[_0x16db[118]](_[_0x16db[375]](_0x558dx38[0],[_0x16db[237],_0x16db[374]]))[_0x16db[116]](_0x558dx5e[_0x16db[362]](_0x558dx37,_0x558dx38[0]))[_0x16db[115]](_0x558dx5e[_0x16db[137]](_0x16db[383],_0x558dx37))}})[_0x16db[115]](loggerGetContactDialer(_0x16db[382],_0x558dx37,1));emitVoiceQueueSummary(_0x558dx37)};Dialer[_0x16db[113]][_0x16db[352]]= function(_0x558dx40,_0x558dx5a,_0x558dx78,_0x558dx81,_0x558dx7a,_0x558dx82){loggerPredictive[_0x16db[86]](_0x16db[384],_0x16db[385],_0x558dx40,_0x16db[386],_0x558dx5a,_0x16db[387],_0x558dx78,_0x16db[388],_0x558dx81,_0x16db[389],_0x558dx7a);return  new BPromise(function(_0x558dx68,_0x558dx29){if(_0x558dx40<= 0|| isNaN(_0x558dx40)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[390]+ _0x558dx40))};if(_0x558dx78<= 0|| isNaN(_0x558dx78)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[391]+ _0x558dx78))};if(_0x558dx81<= 0|| isNaN(_0x558dx81)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[392]+ _0x558dx81))};if(_0x558dx5a<= 0|| isNaN(_0x558dx5a)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[393]+ _0x558dx5a))};if(_0x558dx7a<= 0|| isNaN(_0x558dx7a)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[394]+ _0x558dx7a))};_0x558dx82= _0x558dx82|| 0.0;var _0x558dx83=1.0/ _0x558dx78;var _0x558dx3f=0.0;var _0x558dx84=0.0;var _0x558dx2d=0.0;var _0x558dx85=0.0;for(var _0x558dx53=0;_0x558dx2d< _0x558dx7a;_0x558dx53+= 1){_0x558dx84= _0x558dx53/ _0x558dx5a;_0x558dx3f= ((_0x558dx81* _0x558dx84)+ _0x558dx82)/ _0x558dx83;_0x558dx2d= erlangb(_0x558dx3f,_0x558dx40);_0x558dx85= (_0x558dx3f/ _0x558dx40)* (1- erlangb(_0x558dx3f,_0x558dx40))};return _0x558dx68({erlangCalls:_0x558dx53,erlangCallToSecond:(_0x558dx5a/ _0x558dx53),erlangAbandonmentRate:_0x558dx2d,erlangBusyFactor:_0x558dx85})})};Dialer[_0x16db[113]][_0x16db[354]]= function(_0x558dx40,_0x558dx5a,_0x558dx78,_0x558dx81,_0x558dx7b,_0x558dx82){loggerPredictive[_0x16db[86]](_0x16db[395],_0x16db[385],_0x558dx40,_0x16db[386],_0x558dx5a,_0x16db[387],_0x558dx78,_0x16db[388],_0x558dx81,_0x16db[396],_0x558dx7b);return  new BPromise(function(_0x558dx68,_0x558dx29){if(_0x558dx40<= 0|| isNaN(_0x558dx40)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[390]+ _0x558dx40))};if(_0x558dx78<= 0|| isNaN(_0x558dx78)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[391]+ _0x558dx78))};if(_0x558dx81<= 0|| isNaN(_0x558dx81)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[392]+ _0x558dx81))};if(_0x558dx5a<= 0|| isNaN(_0x558dx5a)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[393]+ _0x558dx5a))};if(_0x558dx7b<= 0|| isNaN(_0x558dx7b)){return _0x558dx29(msgResponse(_0x16db[384],_0x16db[68],_0x16db[394]+ _0x558dx7b))};_0x558dx82= _0x558dx82|| 0.0;var _0x558dx83=1.0/ _0x558dx78;var _0x558dx3f=0.0;var _0x558dx84=0.0;var _0x558dx2d=0.0;var _0x558dx85=0.0;for(var _0x558dx53=0;_0x558dx85< _0x558dx7b;_0x558dx53+= 1){_0x558dx84= _0x558dx53/ _0x558dx5a;_0x558dx3f= ((_0x558dx81* _0x558dx84)+ _0x558dx82)/ _0x558dx83;_0x558dx2d= erlangb(_0x558dx3f,_0x558dx40);_0x558dx85= (_0x558dx3f/ _0x558dx40)* (1- erlangb(_0x558dx3f,_0x558dx40))};return _0x558dx68({erlangCalls:_0x558dx53,erlangCallToSecond:(_0x558dx5a/ _0x558dx53),erlangAbandonmentRate:_0x558dx2d,erlangBusyFactor:_0x558dx85})})};module[_0x16db[397]]= Dialer
\ No newline at end of file
+var _0x64ca=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x75\x69\x64","\x6D\x6F\x6D\x65\x6E\x74","\x64\x69\x61\x6C\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x43\x61\x6C\x6C\x73","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x2F","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x2E\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72","\x2E\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C","\x2E\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x2E\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74","\x2E\x2F\x61\x63\x74\x69\x6F\x6E","\x2E\x2F\x68\x69\x73\x74\x6F\x72\x79","\x2E\x2F\x66\x69\x6E\x61\x6C","\x2E\x2F\x61\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x2E\x2F\x71\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E","\x2E\x2F\x68\x61\x6E\x67\x75\x70","\x58\x43\x41\x4C\x4C\x59\x5F\x49\x50\x5F\x41\x47\x49","\x65\x6E\x76","\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x61\x67\x65\x6E\x74\x73","\x74\x72\x75\x6E\x6B\x73","\x6D\x61\x78\x4E\x75\x6D\x62\x65\x72\x4F\x72\x69\x67\x69\x6E\x61\x74\x65","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x61\x63\x74\x69\x6F\x6E\x73","\x63\x6F\x6E\x74\x61\x63\x74\x73\x49\x64","\x75\x6E\x69\x71\x75\x65\x49\x64","\x6F\x70\x74\x69\x6F\x6E\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x73\x74\x61\x72\x74\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x73\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65","\x69\x76\x72\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74","\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x72\x65\x73\x70\x6F\x6E\x73\x65","\x73\x79\x6E\x63\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x52\x65\x73\x70\x6F\x6E\x73\x65","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x6C\x6F\x6F\x70\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x6D\x65\x73\x73\x61\x67\x65","\x41\x47\x45\x4E\x54\x53\x5F\x4E\x4F\x54\x5F\x4C\x4F\x47\x47\x45\x44","\x6E\x61\x6D\x65","\x20\x41\x47\x45\x4E\x54\x53\x20\x4E\x4F\x54\x20\x4C\x4F\x47\x47\x45\x44","\x4E\x4F\x54\x5F\x41\x43\x54\x49\x56\x45","\x20\x4E\x4F\x54\x20\x41\x63\x74\x69\x76\x65","\x49\x4E\x54\x45\x52\x56\x41\x4C\x5F\x49\x53\x5F\x4E\x55\x4C\x4C","\x20\x49\x4E\x54\x45\x52\x56\x41\x4C\x5F\x49\x53\x5F\x4E\x55\x4C\x4C","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x69\x73\x45\x6D\x70\x74\x79","\x5B\x69\x66\x54\x69\x6D\x65\x5D\x5B\x41\x63\x74\x69\x6F\x6E\x5D","\x45\x72\x72\x6F\x72","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x65\x6D\x69\x74","\x74\x6F","\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x76\x6F\x69\x63\x65\x3A\x71\x75\x65\x75\x65\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x3A\x73\x61\x76\x65","\x69\x76\x72","\x63\x61\x6D\x70\x61\x69\x67\x6E\x3A\x69\x76\x72\x3A\x25\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x3A\x73\x61\x76\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x54\x61\x6C\x6B\x74\x69\x6D\x65","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x61\x76\x67\x54\x61\x6C\x6B\x74\x69\x6D\x65\x5D","\x69\x6E\x66\x6F","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x48\x6F\x6C\x64\x74\x69\x6D\x65","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x61\x76\x67\x48\x6F\x6C\x64\x74\x69\x6D\x65\x5D","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x74\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73\x5D","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x6F\x62\x6A\x49\x73\x45\x6D\x70\x74\x79\x5D","\x5B\x63\x68\x65\x63\x6B\x47\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x6F\x62\x6A\x5D","\x5B\x45\x72\x6C\x61\x6E\x67\x42\x5D","\x6D\x65\x72\x67\x65","\x5B\x66\x72\x65\x65\x56\x61\x72\x69\x61\x62\x6C\x65\x73\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x73\x74\x72\x69\x6E\x67","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x22\x22\x20\x3C\x3E","\x69\x6E\x73\x70\x65\x63\x74","\x65\x72\x72\x6F\x72","\x6C\x65\x6E\x67\x74\x68","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x5B\x64\x65\x63\x72\x65\x6D\x65\x74\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x5D\x20\x6F\x62\x6A\x65\x63\x74\x20\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64\x20\x69\x73\x20\x6E\x65\x67\x61\x74\x69\x76\x65","\x5B\x64\x65\x63\x72\x65\x6D\x65\x74\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x5D\x20\x69\x73\x20\x6E\x75\x6C\x6C\x20\x6F\x72\x20\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x63\x6F\x6E\x74\x61\x63\x74\x73\x52\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x64","\x52\x45\x53\x43\x48\x45\x44\x55\x4C\x45\x44\x5F\x43\x4F\x4E\x54\x41\x43\x54\x53","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x32\x5D\x5B\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64\x5D","\x63\x6F\x6E\x74\x61\x63\x74\x73","\x41\x56\x41\x49\x4C\x41\x42\x4C\x45\x5F\x43\x4F\x4E\x54\x41\x43\x54\x53\x5F\x46\x49\x4E\x49\x53\x48\x45\x44","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x32\x5D\x5B\x45\x6D\x70\x74\x79\x5D","\x63\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x5B\x63\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64\x5D\x20","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x72\x65\x73\x6F\x6C\x76\x65","\x63\x68\x65\x63\x6B\x49\x73\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74","\x5B\x63\x68\x65\x63\x6B\x49\x73\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74\x5D\x20","\x61\x76\x65\x72\x61\x67\x65\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x5B\x61\x76\x65\x72\x61\x67\x65\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65\x5D\x20","\x61\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74","\x5B\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74\x5D\x20","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x5D\x20","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x49\x76\x72","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73","\x5B\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73\x5D\x20","\x6D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72","\x5B\x6D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72\x5D\x20","\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79","\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x20","\x75\x70\x64\x61\x74\x65\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x5B\x75\x70\x64\x61\x74\x65\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x64\x5D\x20\x6F\x62\x6A\x65\x63\x74\x20\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64\x20\x69\x73\x20\x6E\x65\x67\x61\x74\x69\x76\x65","\x5B\x75\x70\x64\x61\x74\x65\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x64\x5D\x20\x69\x73\x20\x6E\x75\x6C\x6C\x20\x6F\x72\x20\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x6C\x6F\x67\x67\x65\x72\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x53\x75\x63\x63\x65\x73\x73","\x53\x75\x63\x63\x65\x73\x73","\x69\x73\x54\x72\x75\x6E\x6B\x52\x65\x61\x63\x68\x61\x62\x6C\x65","\x61\x63\x74\x69\x76\x65","\x73\x74\x61\x74\x75\x73","\x53\x49\x50\x2F\x25\x73","\x72\x65\x61\x63\x68\x61\x62\x6C\x65","\x75\x6E\x6D\x6F\x6E\x69\x74\x6F\x72\x65\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","\x71\x75\x65\x75\x65","\x69\x76\x72\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x49\x76\x72\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x49\x76\x72\x5D","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x41\x67\x69\x43\x61\x6C\x6C\x73\x44\x61\x79","\x73\x74\x61\x74\x65","\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x41\x6E\x73\x77\x65\x72\x41\x47\x49","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x41\x47\x49","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x71\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x43\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x5D\x20\x5B\x44\x72\x6F\x70\x5D","\x64\x72\x6F\x70\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x54\x69\x6D\x65\x6F\x75\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x54\x69\x6D\x65\x6F\x75\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x54\x69\x6D\x65\x6F\x75\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x45\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73","\x44\x72\x6F\x70","\x64\x72\x6F\x70\x72\x65\x61\x73\x6F\x6E","\x54\x49\x4D\x45\x4F\x55\x54","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x41\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x43\x41\x4C\x4C\x45\x52\x45\x58\x49\x54","\x73\x79\x6E\x63\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x63\x68\x65\x63\x6B\x49\x73\x54\x72\x75\x6E\x6B\x52\x65\x61\x63\x68\x61\x62\x6C\x65","\x54\x52\x55\x4E\x4B\x5F\x49\x53\x5F\x4E\x4F\x54\x5F\x52\x45\x41\x43\x48\x41\x42\x4C\x45","\x20\x74\x72\x75\x6E\x6B\x20\x69\x73\x20\x6E\x6F\x74\x20\x72\x65\x61\x63\x68\x61\x62\x6C\x65","\x63\x68\x65\x63\x6B\x49\x66\x54\x69\x6D\x65","\x69\x66\x54\x69\x6D\x65","\x63\x68\x65\x63\x6B\x49\x66\x54\x69\x6D\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x46\x61\x69\x6C\x75\x72\x65","\x20\x49\x6E\x74\x65\x72\x76\x61\x6C\x73\x20\x69\x73\x20\x6E\x75\x6C\x6C\x20","\x49\x4E\x54\x45\x52\x56\x41\x4C\x5F\x49\x53\x5F\x45\x4D\x50\x54\x59","\x20\x49\x6E\x74\x65\x72\x76\x61\x6C\x73\x20\x69\x73\x20\x65\x6D\x70\x74\x79\x20","\x74\x69\x6D\x65\x7A\x6F\x6E\x65\x73","\x54\x49\x4D\x45\x5A\x4F\x4E\x45\x5F\x55\x4E\x4B\x4E\x4F\x57","\x20\x54\x69\x6D\x65\x7A\x6F\x6E\x65\x20\x75\x6E\x6B\x6E\x6F\x77\x20","\x69\x73\x41\x72\x72\x61\x79","\x74\x72\x75\x65","\x69\x6E\x64\x65\x78\x4F\x66","\x63\x6F\x6E\x74\x65\x6E\x74","\x63\x6F\x6D\x6D\x61\x6E\x64","\x69\x66\x74\x69\x6D\x65\x20\x25\x73\x2C\x25\x73","\x69\x6E\x74\x65\x72\x76\x61\x6C","","\x70\x75\x73\x68","\x73\x6F\x6D\x65","\x49\x4E\x54\x45\x52\x56\x41\x4C\x5F\x49\x53\x5F\x4F\x56\x45\x52\x54\x49\x4D\x45","\x5B\x69\x66\x54\x69\x6D\x65\x5D\x5B\x70\x72\x6F\x6D\x69\x73\x65\x41\x6C\x6C\x5D","\x20\x49\x6E\x74\x65\x72\x76\x61\x6C\x6C\x20\x69\x73\x20\x6F\x76\x65\x72\x74\x69\x6D\x65\x3A\x20","\x54\x69\x6D\x65\x7A\x6F\x6E\x65\x3A\x20","\x61\x6C\x6C","\x63\x68\x65\x63\x6B\x44\x69\x61\x6C\x4D\x65\x74\x68\x6F\x64","\x68\x61\x6E\x64\x6C\x65\x50\x6F\x77\x65\x72","\x70\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65","\x64\x69\x61\x6C\x50\x6F\x77\x65\x72\x4C\x65\x76\x65\x6C","\x70\x6F\x77\x65\x72","\x51\x75\x65\x75\x65","\x6D\x65\x74\x68\x6F\x64\x20\x6E\x6F\x74\x20\x72\x65\x63\x6F\x67\x6E\x69\x7A\x65\x64","\x64\x69\x61\x6C\x4D\x65\x74\x68\x6F\x64","\x6C\x61\x75\x6E\x63\x68\x48\x61\x6E\x64\x6C\x65\x49\x76\x72","\x68\x61\x6E\x64\x6C\x65\x49\x76\x72","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79\x5D","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x41\x63\x74\x69\x76\x65","\x6C\x6F\x67\x67\x65\x64\x49\x6E","\x5B\x73\x79\x6E\x63\x43\x61\x6D\x70\x61\x69\x67\x6E\x73\x5D","\x61\x63\x74\x69\x6F\x6E\x4F\x72\x69\x67\x69\x6E\x61\x74\x65","\x76\x34","\x6F\x62\x6A\x65\x63\x74","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x20\x69\x73\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x70\x68\x6F\x6E\x65","\x43\x6F\x6E\x74\x61\x63\x74","\x63\x6F\x6E\x74\x61\x63\x74\x20\x69\x73\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x67\x65\x74\x43\x61\x6C\x6C\x65\x72","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x50\x72\x6F\x6A\x65\x63\x74","\x22\x61\x67\x69\x3A\x2F\x2F\x25\x73\x2F\x73\x71\x75\x61\x72\x65\x2C\x25\x73\x22","\x4E\x4F\x4E\x45","\x22\x25\x73\x2C\x25\x73\x2C\x2C\x2C\x25\x73\x22","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x4F\x70\x74\x69\x6F\x6E\x73","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x69\x64","\x74\x61\x67\x73","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x25\x73\x25\x73","\x58\x4D\x44\x2D","\x74\x6F\x55\x70\x70\x65\x72","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x46\x61\x69\x6C\x75\x72\x65\x43\x61\x6C\x6C\x73\x44\x61\x79","\x5B\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x45\x72\x72\x6F\x72\x5D\x3A\x20\x25\x73","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x5B\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x5D\x5B\x65\x72\x72\x6F\x72\x5D","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x20\x61\x63\x74\x69\x6F\x6E\x20\x45\x72\x72\x6F\x72","\x66\x69\x6E\x61\x6C\x6C\x79","\x53\x49\x50\x2F\x25\x73\x2F\x25\x73","\x54\x72\x75\x6E\x6B","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x78\x63\x61\x6C\x6C\x79\x2D\x6D\x6F\x74\x69\x6F\x6E\x2D\x64\x69\x61\x6C\x65\x72","\x66\x72\x6F\x6D\x2D\x73\x69\x70","\x31","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x61\x63\x74\x69\x6F\x6E\x69\x64","\x67\x65\x74\x51\x75\x65\x75\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x5B\x63\x61\x6C\x6C\x50\x72\x6F\x67\x72\x65\x73\x73\x44\x65\x74\x65\x63\x74\x69\x6E\x67\x5D\x20","\x63\x61\x6C\x6C\x50\x72\x6F\x67\x72\x65\x73\x73\x44\x65\x74\x65\x63\x74\x69\x6E\x67","\x63\x68\x65\x63\x6B\x52\x65\x74\x72\x69\x76\x65\x4D\x61\x78","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x5B\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74\x5D\x5B\x4E\x6F\x41\x6E\x73\x77\x65\x72\x5D","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x6D\x69\x6E\x75\x74\x65\x73","\x61\x64\x64","\x4C\x69\x73\x74\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x5B\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74\x5D\x20\x5B\x42\x75\x73\x79\x5D","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x5B\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74\x5D\x20\x5B\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x5D","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x5B\x63\x61\x6C\x6C\x50\x72\x6F\x67\x72\x65\x73\x73\x44\x65\x74\x65\x63\x74\x69\x6E\x67\x5D","\x65\x6E\x74\x69\x74\x79\x20\x69\x73\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x65\x76\x74\x20\x69\x73\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x53\x75\x63\x68\x43\x61\x6C\x6C\x73\x44\x61\x79","\x44\x69\x61\x6C\x20\x45\x72\x72\x6F\x72","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x30\x5D","\x72\x65\x61\x73\x6F\x6E\x20\x30\x20\x6E\x6F\x20\x73\x75\x63\x68\x20\x6E\x75\x6D\x62\x65\x72\x2E\x2E\x2E\x2E","\x73\x74\x61\x74\x65\x47\x6C\x6F\x62\x61\x6C","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65\x46\x69\x6E\x61\x6C","\x30","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x4E\x6F\x41\x6E\x73\x77\x65\x72","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x33\x5D","\x72\x65\x61\x73\x6F\x6E\x20\x33\x20\x72\x69\x6E\x67\x69\x6E\x67\x20\x6E\x6F\x20\x61\x6E\x73\x77\x65\x72","\x33","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x75\x73\x79\x43\x61\x6C\x6C\x73\x44\x61\x79","\x42\x75\x73\x79","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x35\x5D","\x72\x65\x61\x73\x6F\x6E\x20\x35\x20\x62\x75\x73\x79","\x35","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x38\x5D","\x72\x65\x61\x73\x6F\x6E\x20\x38\x20\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E","\x38","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x55\x6E\x6B\x6E\x6F\x77\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x72\x65\x61\x73\x6F\x6E","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79\x5D\x5B\x3F\x5D","\x47\x6C\x6F\x62\x61\x6C","\x5B\x6D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72\x5D\x5B\x30\x5D","\x63\x6F\x6E\x74\x61\x63\x74\x20\x6E\x6F\x74\x20\x6D\x6F\x76\x65\x64","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E\x50\x65\x72\x63\x65\x6E\x74\x61\x67\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x50\x61\x75\x73\x65\x73","\x77\x61\x69\x74\x69\x6E\x67","\x74\x61\x6C\x6B\x69\x6E\x67","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x4C\x6F\x77\x65\x72\x4C\x69\x6D\x69\x74","\x65\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73","\x65\x72\x6C\x61\x6E\x67\x41\x62\x61\x6E\x64\x6F\x6E\x6D\x65\x6E\x74\x52\x61\x74\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x48\x69\x74\x52\x61\x74\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x4D\x75\x6C\x74\x69\x70\x6C\x69\x63\x61\x74\x69\x76\x65\x46\x61\x63\x74\x6F\x72","\x66\x6C\x6F\x6F\x72","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x46\x69\x72\x73\x74\x5D","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D","\x63\x68\x65\x63\x6B\x20\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x69\x73\x20\x6E\x6F\x74\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x63\x68\x65\x63\x6B\x20\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x20\x69\x73\x20\x6E\x6F\x74\x20\x75\x6E\x64\x65\x66\x69\x6E\x65","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x44\x61\x74\x65\x5D","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x4C\x6F\x6F\x70\x5D","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E","\x64\x72\x6F\x70\x52\x61\x74\x65","\x5B\x73\x74\x6F\x70\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x52\x65\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x45\x78\x63\x65\x65\x64\x65\x64\x44\x72\x6F\x70\x44\x61\x79\x5D","\x44\x72\x6F\x70\x70\x65\x64\x20\x63\x61\x6C\x6C\x73\x20\x64\x61\x79","\x5B\x73\x74\x6F\x70\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x52\x65\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x4C\x6F\x77\x65\x72\x4C\x69\x6D\x69\x74\x49\x6E\x74\x65\x72\x76\x61\x6C\x5D","\x41\x67\x65\x6E\x74\x20\x66\x72\x65\x65","\x61\x67\x65\x6E\x74\x20\x6D\x61\x78\x20\x66\x72\x65\x65\x20","\x5B\x73\x74\x6F\x70\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x52\x65\x53\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65\x5D\x5B\x45\x78\x63\x65\x65\x64\x65\x64\x44\x72\x6F\x70\x49\x6E\x74\x65\x72\x76\x61\x6C\x5D","\x4D\x61\x78\x20\x44\x72\x6F\x70\x20","\x44\x72\x6F\x70\x20\x69\x6E\x20\x74\x68\x69\x73\x20\x69\x6E\x74\x65\x72\x76\x61\x6C","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x46\x69\x72\x73\x74\x5D","\x5B\x61\x76\x65\x72\x61\x67\x65\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65\x5D\x5B\x45\x72\x6C\x61\x6E\x67\x42\x5D\x20","\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x67\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x53\x74\x61\x72\x74\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x52\x65\x70\x65\x61\x74\x5D","\x5B\x43\x61\x74\x63\x68\x45\x72\x6C\x61\x6E\x67\x42\x5D","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x6E\x73\x77\x65\x72\x65\x64\x43\x61\x6C\x6C\x73","\x61\x62\x61\x6E\x64\x6F\x6E\x6D\x65\x6E\x74\x52\x61\x74\x65","\x61\x67\x65\x6E\x74\x42\x75\x73\x79\x46\x61\x63\x74\x6F\x72","\x62\x75\x73\x79\x46\x61\x63\x74\x6F\x72","\x5B\x67\x65\x74\x44\x61\x74\x61\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x63\x68\x65\x63\x6B\x20\x66\x61\x69\x6C\x75\x72\x65","\x65\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x54\x6F\x53\x65\x63\x6F\x6E\x64","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x5B\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x5B\x73\x74\x61\x72\x74\x4D\x65\x74\x68\x6F\x64\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73\x5D\x20","\x46\x61\x69\x6C\x75\x72\x65\x20","\x63\x68\x65\x63\x6B\x43\x6F\x6E\x74\x61\x63\x74\x42\x6C\x61\x63\x6B","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x43\x61\x6C\x6C\x73\x44\x61\x79","\x42\x4C\x41\x43\x4B\x4C\x49\x53\x54","\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74","\x5B\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x5D\x5B\x65\x72\x72\x6F\x72\x5D","\x69\x6E\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74","\x6C\x69\x6D\x69\x74\x43\x61\x6C\x6C\x73","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x32\x5D","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x32\x5D\x5B\x45\x6D\x70\x74\x79\x5D","\x52\x55\x4E\x4E\x49\x4E\x47","\x69\x76\x72\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73\x44\x61\x79\x73","\x5B\x61\x63\x74\x69\x6F\x6E\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x49\x76\x72\x5D\x20","\x43\x6F\x6E\x74\x61\x63\x74\x2E\x70\x68\x6F\x6E\x65","\x70\x69\x63\x6B","\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x51\x75\x65\x75\x65","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x32\x5D","\x5B\x61\x63\x74\x69\x6F\x6E\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x5D\x20","\x74\x72\x79\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x5B\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x5B\x6C\x69\x6D\x69\x74\x43\x68\x61\x6E\x6E\x65\x6C\x5D","\x5B\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D","\x5B\x61\x63\x74\x69\x6F\x6E\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x5D\x20","\x5B\x61\x62\x61\x6E\x64\x6F\x6E\x6D\x65\x6E\x74\x52\x61\x74\x65\x5D","\x20\x6D\x20\x3D\x20","\x20\x69\x6E\x74\x65\x72\x76\x61\x6C\x20\x3D\x20","\x20\x54\x73\x20\x3D\x20","\x20\x70\x20\x3D\x20","\x20\x41\x6D\x61\x78\x20\x3D\x20","\x6D\x20\x3D\x20","\x54\x73\x20\x3D\x20","\x70\x20\x3D\x20","\x69\x6E\x74\x65\x72\x76\x61\x6C\x20\x3D\x20","\x41\x6D\x61\x78\x20\x3D\x20","\x5B\x62\x75\x73\x79\x46\x61\x63\x74\x6F\x72\x5D","\x20\x55\x6D\x69\x6E\x20\x3D\x20","\x65\x78\x70\x6F\x72\x74\x73"];_0x64ca[0];var util=require(_0x64ca[1]);var _=require(_0x64ca[2]);var BPromise=require(_0x64ca[3]);var uuid=require(_0x64ca[4]);var moment=require(_0x64ca[5]);var logger=require(_0x64ca[7])(_0x64ca[6]);var loggerPredictive=require(_0x64ca[7])(_0x64ca[8]);var loggerPredictiveCalls=require(_0x64ca[7])(_0x64ca[9]);var loggerSyncQueueSummary=require(_0x64ca[7])(_0x64ca[10]);var config=require(_0x64ca[11]);var ami=require(_0x64ca[12]);var io=require(_0x64ca[14])({host:_0x64ca[13],port:6379});var cmHopper=require(_0x64ca[15]);var cmHopperFinal=require(_0x64ca[16]);var cmHopperHistory=require(_0x64ca[17]);var cmHopperBlack=require(_0x64ca[18]);var voiceQueueRt=require(_0x64ca[19]);var Action=require(_0x64ca[20]);var History=require(_0x64ca[21]);var Final=require(_0x64ca[22]);var AgentComplete=require(_0x64ca[23]);var QueueCallerAbandon=require(_0x64ca[24]);var Hangup=require(_0x64ca[25]);var ipAgi=process[_0x64ca[27]][_0x64ca[26]]|| _0x64ca[28];function Dialer(_0xafabx1a){this[_0x64ca[29]]= _0xafabx1a[_0x64ca[29]];this[_0x64ca[30]]= _0xafabx1a[_0x64ca[30]];this[_0x64ca[31]]= _0xafabx1a[_0x64ca[31]];this[_0x64ca[32]]= _0xafabx1a[_0x64ca[32]];this[_0x64ca[33]]= 2;this[_0x64ca[34]]= {};this[_0x64ca[35]]= {};this[_0x64ca[36]]= {};this[_0x64ca[37]]= {};this[_0x64ca[38]]= {};this[_0x64ca[39]]= {};this[_0x64ca[40]]= {};this[_0x64ca[41]]= {};ami[_0x64ca[45]](_0x64ca[42],this[_0x64ca[44]][_0x64ca[43]](this));ami[_0x64ca[45]](_0x64ca[46],this[_0x64ca[47]][_0x64ca[43]](this));ami[_0x64ca[45]](_0x64ca[48],this[_0x64ca[49]][_0x64ca[43]](this));ami[_0x64ca[45]](_0x64ca[50],this[_0x64ca[51]][_0x64ca[43]](this));ami[_0x64ca[45]](_0x64ca[52],this[_0x64ca[10]][_0x64ca[43]](this));ami[_0x64ca[45]](_0x64ca[53],this[_0x64ca[54]][_0x64ca[43]](this));this[_0x64ca[55]]()}function isNotNull(_0xafabx1c){return _0xafabx1c!== null&&  !_[_0x64ca[56]](_0xafabx1c)}function checkIsLoggedIn(_0xafabx1e,_0xafabx1f){return function(){if(_0xafabx1f<= 0){_0xafabx1e[_0x64ca[57]]= _0x64ca[58];throw _0xafabx1e[_0x64ca[59]]+ _0x64ca[60]}}}function isActive(_0xafabx21){return _0xafabx21}function checkIsActive(_0xafabx1e,_0xafabx21){return function(){if(!isActive(_0xafabx21)){_0xafabx1e[_0x64ca[57]]= _0x64ca[61];throw _0xafabx1e[_0x64ca[59]]+ _0x64ca[62]}}}function checkInterval(_0xafabx1e){return function(){if(!isNotNull(_0xafabx1e.Interval)){_0xafabx1e[_0x64ca[57]]= _0x64ca[63];throw _0xafabx1e[_0x64ca[59]]+ _0x64ca[64]};if(!isNotNull(_0xafabx1e[_0x64ca[65]].Intervals)){_0xafabx1e[_0x64ca[57]]= _0x64ca[63];throw _0xafabx1e[_0x64ca[59]]+ _0x64ca[64]};if(!isNotNull(_[_0x64ca[66]](_0xafabx1e[_0x64ca[65]].Intervals))){_0xafabx1e[_0x64ca[57]]= _0x64ca[63];throw _0xafabx1e[_0x64ca[59]]+ _0x64ca[64]}}}function msgResponse(_0xafabx25,_0xafabx26,_0xafabx27){return {action:_0xafabx25,response:_0xafabx26,message:_0xafabx27}}function myreject(_0xafabx29){return function(_0xafabx2a){return _0xafabx29(msgResponse(_0x64ca[67],_0x64ca[68],JSON[_0x64ca[69]](_0xafabx2a)))}}function getSeconds(_0xafabx2c,_0xafabx2d){var _0xafabx2e=moment(_0xafabx2c)[_0x64ca[70]](0);var _0xafabx2f=moment(_0xafabx2d)[_0x64ca[70]](0);return _0xafabx2e[_0x64ca[72]](_0xafabx2f,_0x64ca[71])}function emit(_0xafabx31,_0xafabx32,_0xafabx1c){io[_0x64ca[74]](_0xafabx31)[_0x64ca[73]](_0xafabx32,_0xafabx1c)}function emitVoiceQueueSummary(_0xafabx1c){if(_0xafabx1c[_0x64ca[75]]=== _0x64ca[76]){emit(util[_0x64ca[78]](_0x64ca[77],_0xafabx1c[_0x64ca[59]]),_0x64ca[79],_0xafabx1c)}}function emitCampaignSummary(_0xafabx1c){if(_0xafabx1c[_0x64ca[75]]=== _0x64ca[80]){emit(util[_0x64ca[78]](_0x64ca[81],_0xafabx1c[_0x64ca[59]]),_0x64ca[82],_0xafabx1c)}}function checkGetDataPredictive(_0xafabx1c){if(isNotNull(_0xafabx1c)){if(!_[_0x64ca[66]](_0xafabx1c)){if(_0xafabx1c[_0x64ca[83]]> 0){if(!_[_0x64ca[56]](_0xafabx1c[_0x64ca[84]])&& _0xafabx1c[_0x64ca[84]]> 0){return true}else {loggerPredictive[_0x64ca[86]](_0x64ca[85],JSON[_0x64ca[69]](_0xafabx1c))};if(!_[_0x64ca[56]](_0xafabx1c[_0x64ca[87]])&& _0xafabx1c[_0x64ca[87]]> 0){return true}else {loggerPredictive[_0x64ca[86]](_0x64ca[88],JSON[_0x64ca[69]](_0xafabx1c))}}else {loggerPredictive[_0x64ca[86]](_0x64ca[89],JSON[_0x64ca[69]](_0xafabx1c))}}else {loggerPredictive[_0x64ca[86]](_0x64ca[90],JSON[_0x64ca[69]](_0xafabx1c))}}else {loggerPredictive[_0x64ca[86]](_0x64ca[91],JSON[_0x64ca[69]](_0xafabx1c))};return false}function mergeDataErlangB(_0xafabx37){return function(_0xafabx38){loggerPredictive[_0x64ca[86]](_0x64ca[92],JSON[_0x64ca[69]](_0xafabx38));_[_0x64ca[93]](_0xafabx37,_0xafabx38)}}function getDiff(_0xafabx2d){var _0xafabx2e=moment()[_0x64ca[70]](0);var _0xafabx2f=moment(_0xafabx2d)[_0x64ca[70]](0);return _0xafabx2e[_0x64ca[72]](_0xafabx2f,_0x64ca[71])}function ifInterval(_0xafabx3b,_0xafabx3c){if(_[_0x64ca[56]](_0xafabx3c)){return false};if(getDiff(_0xafabx3c)< _0xafabx3b* 60){return true}else {return false}}function freeVariablesPredictive(_0xafabx37){if(isNotNull(_0xafabx37)){if(!_[_0x64ca[56]](_0xafabx37[_0x64ca[40]])){_0xafabx37[_0x64ca[40]]= undefined;loggerPredictive[_0x64ca[86]](_0x64ca[94],_0x64ca[40],_0xafabx37[_0x64ca[59]])};if(!_[_0x64ca[56]](_0xafabx37[_0x64ca[39]])){_0xafabx37[_0x64ca[39]]= undefined;loggerPredictive[_0x64ca[86]](_0x64ca[94],_0x64ca[39],_0xafabx37[_0x64ca[59]])};if(!_[_0x64ca[56]](_0xafabx37[_0x64ca[95]])){clearInterval(_0xafabx37[_0x64ca[95]]);_0xafabx37[_0x64ca[95]]= undefined;loggerPredictive[_0x64ca[86]](_0x64ca[94],_0x64ca[95],_0xafabx37[_0x64ca[59]])}}}function erlangb(_0xafabx3f,_0xafabx40){if(_0xafabx40=== 0){return 0};var _0xafabx41=1;for(var _0xafabx42=1;_0xafabx42<= _0xafabx40;_0xafabx42+= 1){_0xafabx41= 1+ _0xafabx41* _0xafabx42/ _0xafabx3f};return 1/ _0xafabx41}function isVoiceQueueOutbound(_0xafabx44){return _0xafabx44=== _0x64ca[76]}function isCampaignIvr(_0xafabx44){return _0xafabx44=== _0x64ca[80]}function getCallerId(_0xafabx47,_0xafabx48,_0xafabx49){if(!_[_0x64ca[56]](_0xafabx49)&& _0x64ca[96]===  typeof _0xafabx49){if(!_[_0x64ca[56]](_0xafabx48)&& _0x64ca[96]===  typeof _0xafabx48){return util[_0x64ca[78]](_0x64ca[97],_0xafabx48,_0xafabx49)};return util[_0x64ca[78]](_0x64ca[97],_0xafabx49,_0xafabx49)};if(!_[_0x64ca[56]](_0xafabx47)&& _0x64ca[96]===  typeof _0xafabx47){return _0xafabx47};return _0x64ca[98]}function loggerCatchQueueSummary(_0xafabx4b,_0xafabx37){return function(_0xafabx2a){freeVariablesPredictive(_0xafabx37);emitVoiceQueueSummary(_0xafabx37);emitCampaignSummary(_0xafabx37);loggerSyncQueueSummary[_0x64ca[100]](_0xafabx4b,util[_0x64ca[99]](_0xafabx2a,{showHidden:false,depth:null}))}}function loggerCatchPredictive(_0xafabx4b,_0xafabx37){return function(_0xafabx2a){loggerPredictive[_0x64ca[100]](_0xafabx4b,JSON[_0x64ca[69]](_0xafabx2a));freeVariablesPredictive(_0xafabx37)}}function loggerCatch(_0xafabx4b){return function(_0xafabx2a){logger[_0x64ca[100]](_0xafabx4b,util[_0x64ca[99]](_0xafabx2a,{showHidden:false,depth:null}))}}function checkContactEmpty(_0xafabx38){return _0xafabx38&&  !_[_0x64ca[56]](_0xafabx38)&& (_0xafabx38[_0x64ca[101]]> 0)}function decremetOriginate(_0xafabx1c){if(!_[_0x64ca[56]](_0xafabx1c)&& _0xafabx1c!== null){if(_0xafabx1c[_0x64ca[103]](_0x64ca[102])){if(_0xafabx1c[_0x64ca[102]]> 0){_0xafabx1c[_0x64ca[102]]-= 1}else {logger[_0x64ca[100]](_0x64ca[104])}}}else {logger[_0x64ca[100]](_0x64ca[105])}}function checkContactLowerLimitOriginate(_0xafabx37,_0xafabx51,_0xafabx52){if(_0xafabx51> _0xafabx52){for(var _0xafabx53=0;_0xafabx53< _0xafabx51- _0xafabx52;_0xafabx53+= 1){decremetOriginate(_0xafabx37)}}}function loggerGetContactDialer(_0xafabx4b,_0xafabx37,_0xafabx55){return function(_0xafabx2a){checkContactLowerLimitOriginate(_0xafabx37,_0xafabx55,0);logger[_0x64ca[100]](_0xafabx4b,util[_0x64ca[99]](_0xafabx2a,{showHidden:false,depth:null}))}}function sendMessageReschedule(_0xafabx1e){return function(_0xafabx57){if(isNotNull(_0xafabx57)&& isNotNull(_0xafabx57[0])){if(_0xafabx57[0][_0x64ca[106]]> 0){_0xafabx1e[_0x64ca[57]]= _0x64ca[107];logger[_0x64ca[86]](_0x64ca[108]+ _0xafabx1e[_0x64ca[59]],_0xafabx57[0][_0x64ca[106]],_0x64ca[109])}else {_0xafabx1e[_0x64ca[57]]= _0x64ca[110];logger[_0x64ca[86]](_0x64ca[111]+ _0xafabx1e[_0x64ca[59]])}}}}Dialer[_0x64ca[113]][_0x64ca[112]]= function(_0xafabx58){return BPromise[_0x64ca[117]]()[_0x64ca[116]](cmHopper[_0x64ca[112]](_0xafabx58))[_0x64ca[115]](loggerCatch(_0x64ca[114]))};Dialer[_0x64ca[113]][_0x64ca[118]]= function(_0xafabx59){return BPromise[_0x64ca[117]]()[_0x64ca[116]](cmHopperBlack[_0x64ca[118]](_0xafabx59))[_0x64ca[115]](loggerCatch(_0x64ca[119]))};Dialer[_0x64ca[113]][_0x64ca[120]]= function(_0xafabx5a){return BPromise[_0x64ca[117]]()[_0x64ca[116]](cmHopperHistory[_0x64ca[122]](_0xafabx5a))[_0x64ca[115]](loggerCatch(_0x64ca[121]))};Dialer[_0x64ca[113]][_0x64ca[123]]= function(_0xafabx5b){return BPromise[_0x64ca[117]]()[_0x64ca[116]](cmHopper[_0x64ca[123]](_0xafabx5b))[_0x64ca[115]](loggerCatch(_0x64ca[124]))};Dialer[_0x64ca[113]][_0x64ca[125]]= function(_0xafabx5c,_0xafabx51){return BPromise[_0x64ca[117]]()[_0x64ca[116]](cmHopper[_0x64ca[125]](_0xafabx5c,_0xafabx51))[_0x64ca[115]](loggerCatch(_0x64ca[126]))};Dialer[_0x64ca[113]][_0x64ca[127]]= function(_0xafabx5d,_0xafabx51){return BPromise[_0x64ca[117]]()[_0x64ca[116]](cmHopper[_0x64ca[127]](_0xafabx5d,_0xafabx51))[_0x64ca[115]](loggerCatch(_0x64ca[126]))};Dialer[_0x64ca[113]][_0x64ca[128]]= function(_0xafabx58){return BPromise[_0x64ca[117]]()[_0x64ca[116]](voiceQueueRt[_0x64ca[128]](_0xafabx58))[_0x64ca[115]](loggerCatch(_0x64ca[129]))};Dialer[_0x64ca[113]][_0x64ca[130]]= function(_0xafabx5b){return BPromise[_0x64ca[117]]()[_0x64ca[116]](cmHopper[_0x64ca[130]](_0xafabx5b))[_0x64ca[115]](loggerCatch(_0x64ca[131]))};Dialer[_0x64ca[113]][_0x64ca[132]]= function(_0xafabx5b){return BPromise[_0x64ca[117]]()[_0x64ca[116]](cmHopperHistory[_0x64ca[132]](_0xafabx5b))[_0x64ca[115]](loggerCatch(_0x64ca[133]))};Dialer[_0x64ca[113]][_0x64ca[134]]= function(_0xafabx1c){if(!_[_0x64ca[56]](_0xafabx1c)&& _0xafabx1c!== null){if(_0xafabx1c[_0x64ca[103]](_0x64ca[102])){if(_0xafabx1c[_0x64ca[102]]> 0){_0xafabx1c[_0x64ca[102]]-= 1}else {logger[_0x64ca[100]](_0x64ca[135])}}}else {logger[_0x64ca[100]](_0x64ca[136])}};Dialer[_0x64ca[113]][_0x64ca[137]]= function(_0xafabx4b,_0xafabx1e){var _0xafabx5e=this;return function(_0xafabx2a){_0xafabx5e[_0x64ca[134]](_0xafabx1e);logger[_0x64ca[100]](_0xafabx4b,util[_0x64ca[99]](_0xafabx2a,{showHidden:false,depth:null}))}};Dialer[_0x64ca[113]][_0x64ca[138]]= function(_0xafabx5f){return _0xafabx5f=== _0x64ca[139]};Dialer[_0x64ca[113]][_0x64ca[140]]= function(_0xafabx60){return !_[_0x64ca[56]](_0xafabx60)&& _0xafabx60 &&  !_[_0x64ca[56]](_0xafabx60[_0x64ca[59]]) &&  !_[_0x64ca[56]](_0xafabx60[_0x64ca[141]]) && _0xafabx60[_0x64ca[141]] && (this[_0x64ca[32]][util[_0x64ca[78]](_0x64ca[143],_0xafabx60[_0x64ca[59]])][_0x64ca[142]]=== _0x64ca[144]|| this[_0x64ca[32]][util[_0x64ca[78]](_0x64ca[143],_0xafabx60[_0x64ca[59]])][_0x64ca[142]]=== _0x64ca[145])};Dialer[_0x64ca[113]][_0x64ca[54]]= function(_0xafabx32){var _0xafabx5e=this;var _0xafabx61;if(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]&& this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[75]]=== _0x64ca[80]){this[_0x64ca[134]](this[_0x64ca[30]][this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[147]]]);this[_0x64ca[30]][this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[147]]][_0x64ca[148]]+= 1;_0xafabx61=  new Hangup(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]],_0xafabx32);this[_0x64ca[132]](_0xafabx61)[_0x64ca[115]](loggerCatch(_0x64ca[149]));this[_0x64ca[130]](_0xafabx61)[_0x64ca[115]](loggerCatch(_0x64ca[150]));delete _0xafabx5e[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]};if(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]&& this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[75]]!== _0x64ca[80]){this[_0x64ca[134]](this[_0x64ca[29]][this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[147]]]);this[_0x64ca[29]][this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[147]]][_0x64ca[151]]+= 1;this[_0x64ca[29]][this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[147]]][_0x64ca[152]]+= 1;_0xafabx61=  new Hangup(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]],_0xafabx32);_0xafabx61[_0x64ca[153]]= 16;_0xafabx61[_0x64ca[154]]= _0x64ca[155];_0xafabx61[_0x64ca[156]]= _0x64ca[157];this[_0x64ca[132]](_0xafabx61)[_0x64ca[115]](loggerCatch(_0x64ca[149]));this[_0x64ca[130]](_0xafabx61)[_0x64ca[115]](loggerCatch(_0x64ca[150]));delete _0xafabx5e[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]}};Dialer[_0x64ca[113]][_0x64ca[51]]= function(_0xafabx32){var _0xafabx5e=this;if(this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]]){if(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]){this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]][_0x64ca[151]]+= 1;var _0xafabx62= new AgentComplete(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]],_0xafabx32);this[_0x64ca[132]](_0xafabx62)[_0x64ca[115]](loggerCatch(_0x64ca[158]));this[_0x64ca[130]](_0xafabx62)[_0x64ca[115]](loggerCatch(_0x64ca[159]));delete _0xafabx5e[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]}}};Dialer[_0x64ca[113]][_0x64ca[44]]= function(_0xafabx32){if(this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]]){this[_0x64ca[134]](this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]]);if(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]){this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[160]]= moment()[_0x64ca[78]](_0x64ca[161])}}};Dialer[_0x64ca[113]][_0x64ca[162]]= function(_0xafabx63){this[_0x64ca[132]](_0xafabx63)[_0x64ca[115]](loggerCatch(_0x64ca[158]));this[_0x64ca[130]](_0xafabx63)[_0x64ca[115]](loggerCatch(_0x64ca[163]))};Dialer[_0x64ca[113]][_0x64ca[47]]= function(_0xafabx32){var _0xafabx5e=this;if(this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]]){this[_0x64ca[134]](this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]]);if(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]){this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[164]]= moment()[_0x64ca[78]](_0x64ca[161]);var _0xafabx63= new QueueCallerAbandon(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]],_0xafabx32);if(getSeconds(this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[164]],this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[165]])>= this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]][_0x64ca[166]]){this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]][_0x64ca[167]]+= 1;this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]][_0x64ca[168]]+= 1;this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]][_0x64ca[169]]+= 1;_0xafabx63[_0x64ca[153]]= 10;_0xafabx63[_0x64ca[154]]= _0x64ca[170];_0xafabx63[_0x64ca[171]]= _0x64ca[172];this[_0x64ca[162]](_0xafabx63)}else {this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]][_0x64ca[173]]+= 1;this[_0x64ca[29]][_0xafabx32[_0x64ca[147]]][_0x64ca[174]]+= 1;_0xafabx63[_0x64ca[153]]= 11;_0xafabx63[_0x64ca[154]]= _0x64ca[175];_0xafabx63[_0x64ca[171]]= _0x64ca[176];this[_0x64ca[162]](_0xafabx63)};delete this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]}}};Dialer[_0x64ca[113]][_0x64ca[55]]= function(){var _0xafabx5e=this;setInterval(function(){_0xafabx5e[_0x64ca[177]]()},1000)};Dialer[_0x64ca[113]][_0x64ca[178]]= function(_0xafabx1e){var _0xafabx5e=this;return function(){if(!_0xafabx5e[_0x64ca[140]](_0xafabx1e.Trunk)){if(!_0xafabx5e[_0x64ca[140]](_0xafabx1e.TrunkBackup)){_0xafabx1e[_0x64ca[57]]= _0x64ca[179];throw _0xafabx1e[_0x64ca[59]]+ _0x64ca[180]}}}};Dialer[_0x64ca[113]][_0x64ca[181]]= function(_0xafabx64,_0xafabx65,_0xafabx48,_0xafabx37){var _0xafabx5e=this;return function(){return _0xafabx5e[_0x64ca[182]](_0xafabx64,_0xafabx65,_0xafabx48,_0xafabx37)}};Dialer[_0x64ca[113]][_0x64ca[183]]= function(_0xafabx66,_0xafabx65,_0xafabx48,_0xafabx37){var _0xafabx5e=this;return function(){return _0xafabx5e[_0x64ca[182]](_0xafabx66.Intervals,_0xafabx65,_0xafabx48,_0xafabx37)}};Dialer[_0x64ca[113]][_0x64ca[182]]= function(_0xafabx64,_0xafabx65,_0xafabx48,_0xafabx37){var _0xafabx67=[];return  new BPromise(function(_0xafabx68,_0xafabx29){if(!isNotNull(_0xafabx64)){_0xafabx37[_0x64ca[57]]= _0x64ca[63];return _0xafabx29(msgResponse(_0x64ca[182],_0x64ca[184],_0xafabx48+ _0x64ca[185]))};if(_[_0x64ca[66]](_0xafabx64)){_0xafabx37[_0x64ca[57]]= _0x64ca[186];return _0xafabx29(msgResponse(_0x64ca[182],_0x64ca[184],_0xafabx48+ _0x64ca[187]))};if(_0xafabx65&& _[_0x64ca[56]](config[_0x64ca[188]][_0xafabx65])){_0xafabx37[_0x64ca[57]]= _0x64ca[189];return _0xafabx29(msgResponse(_0x64ca[182],_0x64ca[184],_0xafabx48+ _0x64ca[190]+ _0xafabx65))};if(_[_0x64ca[191]](_0xafabx64)){for(var _0xafabx53=0;_0xafabx53< _0xafabx64[_0x64ca[101]];_0xafabx53+= 1){_0xafabx67[_0x64ca[199]](ami.Action({action:_0x64ca[195],command:util[_0x64ca[78]](_0x64ca[196],_0xafabx64[_0xafabx53][_0x64ca[197]],!_[_0x64ca[56]](config[_0x64ca[188]][_0xafabx65])?_0xafabx65:_0x64ca[198])})[_0x64ca[116]](function(_0xafabx38){return (_0xafabx38[_0x64ca[194]][_0x64ca[193]](_0x64ca[192])>= 0)?true:false})[_0x64ca[115]](myreject(_0xafabx29)))}}else {_0xafabx67[_0x64ca[199]](ami.Action({action:_0x64ca[195],command:util[_0x64ca[78]](_0x64ca[196],_0xafabx64,!_[_0x64ca[56]](config[_0x64ca[188]][_0xafabx65])?_0xafabx65:_0x64ca[198])})[_0x64ca[116]](function(_0xafabx38){return (_0xafabx38[_0x64ca[194]][_0x64ca[193]](_0x64ca[192])>= 0)?true:false})[_0x64ca[115]](myreject(_0xafabx29)))};BPromise[_0x64ca[205]](_0xafabx67)[_0x64ca[116]](function(_0xafabx69){var _0xafabx6a=_[_0x64ca[200]](_0xafabx69);if(_0xafabx6a){return _0xafabx68(_0xafabx6a)}else {_0xafabx37[_0x64ca[57]]= _0x64ca[201];return _0xafabx29(msgResponse(_0x64ca[202],_0x64ca[184],_0xafabx48+ _0x64ca[203]+ util[_0x64ca[99]](_0xafabx64,{showHidden:false,depth:null})+ _0x64ca[204]+ _0xafabx65))}})[_0x64ca[115]](function(_0xafabx2a){return _0xafabx29(msgResponse(_0x64ca[182],_0x64ca[184],JSON[_0x64ca[69]](_0xafabx2a)))})})};Dialer[_0x64ca[113]][_0x64ca[206]]= function(_0xafabx37){var _0xafabx5e=this;return function(){switch(_0xafabx37[_0x64ca[213]]){case _0x64ca[208]:freeVariablesPredictive(_0xafabx37);_0xafabx5e[_0x64ca[207]](_0xafabx37,1);break;case _0x64ca[210]:freeVariablesPredictive(_0xafabx37);_0xafabx5e[_0x64ca[207]](_0xafabx37,_0xafabx37[_0x64ca[209]]);break;case _0x64ca[8]:_0xafabx5e[_0x64ca[8]](_0xafabx37);break;default:freeVariablesPredictive(_0xafabx37);logger[_0x64ca[100]](_0x64ca[211],_0xafabx37[_0x64ca[59]],_0x64ca[212])}}};Dialer[_0x64ca[113]][_0x64ca[214]]= function(_0xafabx6b){var _0xafabx5e=this;return function(){_0xafabx5e[_0x64ca[215]](_0xafabx6b)}};Dialer[_0x64ca[113]][_0x64ca[10]]= function(_0xafabx37){var _0xafabx5e=this;if(isVoiceQueueOutbound(_0xafabx37[_0x64ca[75]])){BPromise[_0x64ca[117]]()[_0x64ca[116]](checkIsLoggedIn(_0xafabx37,_0xafabx37[_0x64ca[220]]))[_0x64ca[116]](checkIsActive(_0xafabx37,_0xafabx37[_0x64ca[219]]))[_0x64ca[116]](checkInterval(_0xafabx37))[_0x64ca[116]](_0xafabx5e[_0x64ca[178]](_0xafabx37))[_0x64ca[116]](_0xafabx5e[_0x64ca[181]](_0xafabx37[_0x64ca[218]],_0xafabx37[_0x64ca[217]],_0xafabx37[_0x64ca[59]],_0xafabx37))[_0x64ca[116]](_0xafabx5e[_0x64ca[183]](_0xafabx37.Interval,_0xafabx37[_0x64ca[217]],_0xafabx37[_0x64ca[59]],_0xafabx37))[_0x64ca[116]](_0xafabx5e[_0x64ca[206]](_0xafabx37))[_0x64ca[115]](loggerCatchQueueSummary(_0x64ca[216],_0xafabx37))}};Dialer[_0x64ca[113]][_0x64ca[177]]= function(){var _0xafabx5e=this;var _0xafabx6b;for(var _0xafabx6c in this[_0x64ca[30]]){if(this[_0x64ca[30]][_0x64ca[103]](_0xafabx6c)){_0xafabx6b= this[_0x64ca[30]][_0xafabx6c];if(isCampaignIvr(_0xafabx6b[_0x64ca[75]])){BPromise[_0x64ca[117]]()[_0x64ca[116]](checkIsActive(_0xafabx6b,_0xafabx6b[_0x64ca[141]]))[_0x64ca[116]](checkInterval(_0xafabx6b))[_0x64ca[116]](_0xafabx5e[_0x64ca[178]](_0xafabx6b))[_0x64ca[116]](_0xafabx5e[_0x64ca[181]](_0xafabx6b[_0x64ca[218]],_0xafabx6b[_0x64ca[217]],_0xafabx6b[_0x64ca[59]],_0xafabx6b))[_0x64ca[116]](_0xafabx5e[_0x64ca[183]](_0xafabx6b.Interval,_0xafabx6b[_0x64ca[217]],_0xafabx6b[_0x64ca[59]],_0xafabx6b))[_0x64ca[116]](_0xafabx5e[_0x64ca[214]](_0xafabx6b))[_0x64ca[115]](loggerCatchQueueSummary(_0x64ca[221],_0xafabx6b))}}}};Dialer[_0x64ca[113]][_0x64ca[222]]= function(_0xafabx37,_0xafabx1c){var _0xafabx5e=this;var _0xafabx6d=uuid[_0x64ca[223]]();this[_0x64ca[35]][_0xafabx6d]=  new Action(_0xafabx37,_0xafabx1c,_0xafabx6d);return  new BPromise(function(_0xafabx68,_0xafabx29){if(_[_0x64ca[56]](_0xafabx37)&& _0x64ca[224]!==  typeof _0xafabx37){return _0xafabx29(msgResponse(_0x64ca[225],_0x64ca[184],_0x64ca[226]))};if(_[_0x64ca[56]](_0xafabx1c[_0x64ca[228]][_0x64ca[227]])|| _0xafabx1c[_0x64ca[228]][_0x64ca[227]]=== null){return _0xafabx29(msgResponse(_0x64ca[225],_0x64ca[184],_0x64ca[229]))};var _0xafabx6e={"\x58\x4D\x44\x2D\x43\x41\x4C\x4C\x45\x52\x49\x44":_0xafabx5e[_0x64ca[35]][_0xafabx6d][_0x64ca[230]](),"\x58\x4D\x44\x2D\x41\x47\x49":_0xafabx37[_0x64ca[231]]?util[_0x64ca[78]](_0x64ca[232],ipAgi,_0xafabx37[_0x64ca[231]]):_0x64ca[233],"\x58\x4D\x44\x2D\x51\x55\x45\x55\x45":(_0xafabx37[_0x64ca[75]]=== _0x64ca[76])?util[_0x64ca[78]](_0x64ca[234],_0xafabx37[_0x64ca[59]],_0xafabx37[_0x64ca[235]]|| _0x64ca[198],_0xafabx37[_0x64ca[166]]|| 3):_0x64ca[233],"\x58\x4D\x44\x2D\x43\x4F\x4E\x54\x41\x43\x54\x49\x44":_0xafabx1c[_0x64ca[236]],"\x58\x4D\x44\x2D\x56\x4F\x49\x43\x45\x51\x55\x45\x55\x45\x49\x44":_0xafabx1c[_0x64ca[237]]};for(var _0xafabx6c in _0xafabx1c[_0x64ca[228]]){if(_0xafabx1c[_0x64ca[228]][_0x64ca[103]](_0xafabx6c)){if(isNotNull(_0xafabx1c[_0x64ca[228]][_0xafabx6c])&& (_0xafabx6c!== _0x64ca[238])&& (_0xafabx6c!== _0x64ca[239])&& (_0xafabx6c!== _0x64ca[240])&& (_0xafabx6c!== _0x64ca[241])){_0xafabx6e[util[_0x64ca[78]](_0x64ca[242],_0x64ca[243],_[_0x64ca[244]](_0xafabx6c))]= _0xafabx1c[_0x64ca[228]][_0xafabx6c]}}};return ami.Action({actionid:_0xafabx6d,action:_0x64ca[225],channel:(_0xafabx5e[_0x64ca[140]](_0xafabx37.Trunk))?util[_0x64ca[78]](_0x64ca[252],_0xafabx37[_0x64ca[253]][_0x64ca[59]],_0xafabx1c[_0x64ca[228]][_0x64ca[227]]):util[_0x64ca[78]](_0x64ca[252],_0xafabx37[_0x64ca[254]][_0x64ca[59]],_0xafabx1c[_0x64ca[228]][_0x64ca[227]]),callerid:(_0xafabx5e[_0x64ca[140]](_0xafabx37.Trunk))?getCallerId(_0xafabx37[_0x64ca[253]][_0x64ca[255]],_0xafabx37[_0x64ca[256]],_0xafabx37[_0x64ca[257]]):getCallerId(_0xafabx37[_0x64ca[254]][_0x64ca[255]],_0xafabx37[_0x64ca[256]],_0xafabx37[_0x64ca[257]]),Exten:_0x64ca[258],Context:_0x64ca[259],Priority:_0x64ca[260],variable:_0xafabx6e,timeout:(_0xafabx37[_0x64ca[261]]|| 30)* 1000,async:true,channelid:_0xafabx6d})[_0x64ca[116]](function(_0xafabx38){return _0xafabx68(_0xafabx38)})[_0x64ca[115]](function(_0xafabx2a){_0xafabx37[_0x64ca[245]]+= 1;var _0xafabx6f= new History(_0xafabx5e[_0x64ca[35]][_0xafabx6d]);logger[_0x64ca[100]](util[_0x64ca[78]](_0x64ca[246],JSON[_0x64ca[69]](_0xafabx2a)));_0xafabx6f[_0x64ca[153]]= 14;_0xafabx6f[_0x64ca[154]]= _0xafabx2a[_0x64ca[57]];_0xafabx6f[_0x64ca[247]]= moment()[_0x64ca[78]](_0x64ca[161]);_0xafabx6f[_0x64ca[248]]= _0xafabx6f[_0x64ca[247]];_0xafabx5e[_0x64ca[132]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[249]));_0xafabx5e[_0x64ca[130]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[249]))[_0x64ca[251]](function(){delete _0xafabx5e[_0x64ca[35]][_0xafabx6d];return _0xafabx29(msgResponse(_0x64ca[225],_0x64ca[68],_0x64ca[250]))})})})};Dialer[_0x64ca[113]][_0x64ca[49]]= function(_0xafabx32){var _0xafabx5e=this;if(this[_0x64ca[35]][_0xafabx32[_0x64ca[262]]]){this[_0x64ca[35]][_0xafabx32[_0x64ca[262]]][_0x64ca[165]]= moment()[_0x64ca[78]](_0x64ca[161]);var _0xafabx1e=(this[_0x64ca[35]][_0xafabx32[_0x64ca[262]]][_0x64ca[75]]=== _0x64ca[80])?this[_0x64ca[30]][this[_0x64ca[35]][_0xafabx32[_0x64ca[262]]][_0x64ca[147]]]:this[_0x64ca[29]][this[_0x64ca[35]][_0xafabx32[_0x64ca[262]]][_0x64ca[263]]()];if(!this[_0x64ca[138]](_0xafabx32[_0x64ca[264]])){this[_0x64ca[134]](_0xafabx1e);return this[_0x64ca[266]](this[_0x64ca[35]][_0xafabx32[_0x64ca[262]]],_0xafabx1e,_0xafabx32)[_0x64ca[116]](function(_0xafabx38){})[_0x64ca[115]](loggerCatch(_0x64ca[265]))[_0x64ca[251]](function(){delete _0xafabx5e[_0x64ca[35]][_0xafabx32[_0x64ca[262]]]})}else {this[_0x64ca[37]][_0xafabx32[_0x64ca[146]]]= _0xafabx5e[_0x64ca[35]][_0xafabx32[_0x64ca[262]]];delete this[_0x64ca[35]][_0xafabx32[_0x64ca[262]]]}}};Dialer[_0x64ca[113]][_0x64ca[267]]= function(_0xafabx70,_0xafabx1c,_0xafabx1e){var _0xafabx6f= new History(_0xafabx1c);if(_0xafabx6f[_0x64ca[268]]+ _0xafabx6f[_0x64ca[269]]+ _0xafabx6f[_0x64ca[270]]>= _0xafabx1e[_0x64ca[271]]- 1){return true};switch(_0xafabx70){case 3:if(_0xafabx6f[_0x64ca[270]]>= _0xafabx1e[_0x64ca[272]]- 1){return true}else {this[_0x64ca[123]]({active:false,countnoanswerretry:_0xafabx6f[_0x64ca[270]]+= 1,scheduledat:moment()[_0x64ca[276]](_0xafabx1e[_0x64ca[274]],_0x64ca[275])[_0x64ca[78]](_0x64ca[161]),ContactId:_0xafabx6f[_0x64ca[236]],ListId:_0xafabx6f[_0x64ca[277]],VoiceQueueId:_0xafabx6f[_0x64ca[237]]|| undefined,CampaignId:_0xafabx6f[_0x64ca[278]]|| undefined})[_0x64ca[115]](loggerCatch(_0x64ca[273]))};break;case 5:if(_0xafabx6f[_0x64ca[268]]>= _0xafabx1e[_0x64ca[279]]- 1){return true}else {this[_0x64ca[123]]({active:false,countbusyretry:_0xafabx6f[_0x64ca[268]]+= 1,scheduledat:moment()[_0x64ca[276]](_0xafabx1e[_0x64ca[281]],_0x64ca[275])[_0x64ca[78]](_0x64ca[161]),ContactId:_0xafabx6f[_0x64ca[236]],ListId:_0xafabx6f[_0x64ca[277]],VoiceQueueId:_0xafabx6f[_0x64ca[237]]|| undefined,CampaignId:_0xafabx6f[_0x64ca[278]]|| undefined})[_0x64ca[115]](loggerCatch(_0x64ca[280]))};break;case 8:if(_0xafabx6f[_0x64ca[269]]>= _0xafabx1e[_0x64ca[282]]- 1){return true}else {this[_0x64ca[123]]({active:false,countcongestionretry:_0xafabx6f[_0x64ca[269]]+= 1,scheduledat:moment()[_0x64ca[276]](_0xafabx1e[_0x64ca[284]],_0x64ca[275])[_0x64ca[78]](_0x64ca[161]),ContactId:_0xafabx6f[_0x64ca[236]],ListId:_0xafabx6f[_0x64ca[277]],VoiceQueueId:_0xafabx6f[_0x64ca[237]]|| undefined,CampaignId:_0xafabx6f[_0x64ca[278]]|| undefined})[_0x64ca[115]](loggerCatch(_0x64ca[283]))};break;default:return true}};Dialer[_0x64ca[113]][_0x64ca[266]]= function(_0xafabx25,_0xafabx1e,_0xafabx32){var _0xafabx5e=this;var _0xafabx6f= new History(_0xafabx25);return  new BPromise(function(_0xafabx68,_0xafabx29){if(_[_0x64ca[56]](_0xafabx1e)&& _0x64ca[224]!==  typeof _0xafabx1e){return _0xafabx29(msgResponse(_0x64ca[285],_0x64ca[184],_0x64ca[286]))};if(_[_0x64ca[56]](_0xafabx32)&& _0x64ca[224]!==  typeof _0xafabx32){return _0xafabx29(msgResponse(_0x64ca[285],_0x64ca[184],_0x64ca[287]))};switch(_0xafabx32[_0x64ca[312]]){case _0x64ca[294]:_0xafabx1e[_0x64ca[288]]+= 1;_0xafabx6f[_0x64ca[153]]= 0;_0xafabx6f[_0x64ca[154]]= _0x64ca[289];_0xafabx5e[_0x64ca[132]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[290]));if(_0xafabx5e[_0x64ca[267]](0,_0xafabx25,_0xafabx1e)){if(_0xafabx6f[_0x64ca[268]]+ _0xafabx6f[_0x64ca[269]]+ _0xafabx6f[_0x64ca[270]]>= _0xafabx1e[_0x64ca[271]]){_0xafabx5e[_0x64ca[292]](_0xafabx6f,_0xafabx68,_0xafabx29,_0x64ca[291])}else {_0xafabx5e[_0x64ca[293]](_0xafabx6f,_0xafabx68,_0xafabx29,_0x64ca[291])}};break;case _0x64ca[300]:_0xafabx1e[_0x64ca[295]]+= 1;_0xafabx6f[_0x64ca[153]]= 3;_0xafabx6f[_0x64ca[154]]= _0x64ca[296];_0xafabx6f[_0x64ca[270]]+= 1;_0xafabx6f[_0x64ca[297]]+= 1;_0xafabx5e[_0x64ca[132]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[298]));if(_0xafabx5e[_0x64ca[267]](3,_0xafabx25,_0xafabx1e)){if(_0xafabx6f[_0x64ca[270]]>= _0xafabx1e[_0x64ca[272]]){_0xafabx5e[_0x64ca[293]](_0xafabx6f,_0xafabx68,_0xafabx29,_0x64ca[299])}else {_0xafabx5e[_0x64ca[292]](_0xafabx6f,_0xafabx68,_0xafabx29,_0x64ca[299])}};break;case _0x64ca[305]:_0xafabx1e[_0x64ca[301]]+= 1;_0xafabx6f[_0x64ca[153]]= 5;_0xafabx6f[_0x64ca[154]]= _0x64ca[302];_0xafabx6f[_0x64ca[268]]+= 1;_0xafabx6f[_0x64ca[297]]+= 1;_0xafabx5e[_0x64ca[132]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[303]));if(_0xafabx5e[_0x64ca[267]](5,_0xafabx25,_0xafabx1e)){if(_0xafabx6f[_0x64ca[268]]>= _0xafabx1e[_0x64ca[279]]){_0xafabx5e[_0x64ca[293]](_0xafabx6f,_0xafabx68,_0xafabx29,_0x64ca[304])}else {_0xafabx5e[_0x64ca[292]](_0xafabx6f,_0xafabx68,_0xafabx29,_0x64ca[304])}};break;case _0x64ca[310]:_0xafabx1e[_0x64ca[306]]+= 1;_0xafabx6f[_0x64ca[153]]= 8;_0xafabx6f[_0x64ca[154]]= _0x64ca[307];_0xafabx6f[_0x64ca[269]]+= 1;_0xafabx6f[_0x64ca[297]]+= 1;_0xafabx5e[_0x64ca[132]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[308]));if(_0xafabx5e[_0x64ca[267]](8,_0xafabx25,_0xafabx1e)){if(_0xafabx6f[_0x64ca[269]]>= _0xafabx1e[_0x64ca[282]]){_0xafabx5e[_0x64ca[293]](_0xafabx6f,_0xafabx68,_0xafabx29,_0x64ca[309])}else {_0xafabx5e[_0x64ca[292]](_0xafabx6f,_0xafabx68,_0xafabx29,_0x64ca[309])}};break;default:_0xafabx1e[_0x64ca[311]]+= 1;_0xafabx6f[_0x64ca[153]]= 12;_0xafabx6f[_0x64ca[154]]= _0xafabx32[_0x64ca[312]];_0xafabx5e[_0x64ca[132]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[313]));if(_0xafabx5e[_0x64ca[267]](_0xafabx32[_0x64ca[312]],_0xafabx25,_0xafabx1e)){if(_0xafabx6f[_0x64ca[268]]+ _0xafabx6f[_0x64ca[269]]+ _0xafabx6f[_0x64ca[270]]>= _0xafabx1e[_0x64ca[271]]){_0xafabx5e[_0x64ca[292]](_0xafabx6f,_0xafabx68,_0xafabx29,_0xafabx32[_0x64ca[312]])}else {_0xafabx5e[_0x64ca[293]](_0xafabx6f,_0xafabx68,_0xafabx29,_0xafabx32[_0x64ca[312]])}}}})};Dialer[_0x64ca[113]][_0x64ca[292]]= function(_0xafabx6f,_0xafabx68,_0xafabx29,_0xafabx27){var _0xafabx71= new Final(_0xafabx6f);_0xafabx71[_0x64ca[153]]= 15;_0xafabx71[_0x64ca[154]]= _0x64ca[314];this[_0x64ca[293]](_0xafabx71,_0xafabx68,_0xafabx29,_0xafabx27)};Dialer[_0x64ca[113]][_0x64ca[293]]= function(_0xafabx6f,_0xafabx68,_0xafabx29,_0xafabx27){this[_0x64ca[130]](_0xafabx6f)[_0x64ca[116]](function(_0xafabx38){return _0xafabx68(msgResponse(_0x64ca[285],_0x64ca[139],_0xafabx27))})[_0x64ca[115]](function(_0xafabx2a){return _0xafabx29(msgResponse(_0x64ca[315],_0x64ca[184],_0x64ca[316]))})};Dialer[_0x64ca[113]][_0x64ca[8]]= function(_0xafabx37){var _0xafabx5e=this;var _0xafabx72=_0xafabx37[_0x64ca[317]]/ 100;var _0xafabx73=_0xafabx37[_0x64ca[168]]/ (_0xafabx37[_0x64ca[168]]+ _0xafabx37[_0x64ca[151]]);var _0xafabx74=_0xafabx37[_0x64ca[220]]- _0xafabx37[_0x64ca[318]]- _0xafabx37[_0x64ca[319]]- _0xafabx37[_0x64ca[102]]- _0xafabx37[_0x64ca[320]];var _0xafabx75=(_0xafabx37[_0x64ca[220]]- _0xafabx37[_0x64ca[318]])* _0xafabx37[_0x64ca[321]];var _0xafabx76=Math[_0x64ca[326]](_0xafabx37[_0x64ca[322]]* _0xafabx37[_0x64ca[323]]* _0xafabx37[_0x64ca[324]]* _0xafabx37[_0x64ca[325]]);if(_[_0x64ca[56]](_0xafabx37[_0x64ca[40]])){loggerPredictive[_0x64ca[86]](_0x64ca[327]);if(!_[_0x64ca[56]](_0xafabx37[_0x64ca[39]])){_0xafabx37[_0x64ca[39]]= undefined;loggerPredictive[_0x64ca[100]](_0x64ca[328],_0x64ca[329])};if(!_[_0x64ca[56]](_0xafabx37[_0x64ca[95]])){loggerPredictive[_0x64ca[100]](_0x64ca[328],_0x64ca[330]);clearInterval(_0xafabx37[_0x64ca[95]]);_0xafabx37[_0x64ca[95]]= undefined};_0xafabx37[_0x64ca[40]]= moment()[_0x64ca[78]](_0x64ca[161]);loggerPredictive[_0x64ca[86]](_0x64ca[331],_0xafabx37[_0x64ca[40]],_0xafabx37[_0x64ca[59]]);this[_0x64ca[207]](_0xafabx37,1)}else {if(ifInterval(_0xafabx37[_0x64ca[332]],_0xafabx37[_0x64ca[40]])){this[_0x64ca[207]](_0xafabx37,1);loggerPredictiveCalls[_0x64ca[86]](_0x64ca[333],_0xafabx37[_0x64ca[40]],_0xafabx37[_0x64ca[59]]);_0xafabx37[_0x64ca[322]]= 0;_0xafabx37[_0x64ca[169]]= 0}else {if((_0xafabx72< _0xafabx73)&& _0xafabx37[_0x64ca[334]]=== _0x64ca[335]){freeVariablesPredictive(_0xafabx37);loggerPredictive[_0x64ca[86]](_0x64ca[336],_0x64ca[337],_0xafabx73,_0x64ca[40],_0xafabx37[_0x64ca[59]])}else {if(_0xafabx74> _0xafabx75){freeVariablesPredictive(_0xafabx37);loggerPredictive[_0x64ca[86]](_0x64ca[338],_0x64ca[339],_0xafabx74,_0x64ca[340],_0xafabx75)}else {if((_0xafabx76)< _0xafabx37[_0x64ca[169]]&& _0xafabx37[_0x64ca[334]]=== _0x64ca[335]){freeVariablesPredictive(_0xafabx37);loggerPredictive[_0x64ca[86]](_0x64ca[341],_0x64ca[342],_0xafabx76,_0x64ca[343],_0xafabx37[_0x64ca[169]],_0x64ca[40],_0xafabx37[_0x64ca[59]])}else {if(!ifInterval(_0xafabx37[_0x64ca[332]],_0xafabx37[_0x64ca[40]])&& _[_0x64ca[56]](_0xafabx37[_0x64ca[39]]) &&  !_[_0x64ca[56]](_0xafabx37[_0x64ca[40]])){_0xafabx37[_0x64ca[39]]= moment()[_0x64ca[78]](_0x64ca[161]);loggerPredictive[_0x64ca[86]](_0x64ca[344],_0xafabx37[_0x64ca[39]],_0xafabx37[_0x64ca[59]]);this[_0x64ca[120]](_0xafabx37[_0x64ca[332]])[_0x64ca[116]](this[_0x64ca[347]](_0xafabx37))[_0x64ca[116]](mergeDataErlangB(_0xafabx37))[_0x64ca[116]](this[_0x64ca[346]](_0xafabx37))[_0x64ca[115]](loggerCatchPredictive(_0x64ca[345],_0xafabx37))}else {if(!ifInterval(_0xafabx37[_0x64ca[332]],_0xafabx37[_0x64ca[39]])){_0xafabx37[_0x64ca[169]]= 0;_0xafabx37[_0x64ca[39]]= moment()[_0x64ca[78]](_0x64ca[161]);loggerPredictive[_0x64ca[86]](_0x64ca[348],_0xafabx37[_0x64ca[39]],_0xafabx37[_0x64ca[59]]);clearInterval(_0xafabx37[_0x64ca[95]]);_0xafabx37[_0x64ca[95]]= undefined;this[_0x64ca[120]](_0xafabx37[_0x64ca[332]])[_0x64ca[116]](this[_0x64ca[347]](_0xafabx37))[_0x64ca[116]](mergeDataErlangB(_0xafabx37))[_0x64ca[116]](this[_0x64ca[346]](_0xafabx37))[_0x64ca[115]](loggerCatchPredictive(_0x64ca[345],_0xafabx37))}}}}}}}};Dialer[_0x64ca[113]][_0x64ca[347]]= function(_0xafabx37){var _0xafabx5e=this;return function(_0xafabx38){return  new BPromise(function(_0xafabx68,_0xafabx29){_[_0x64ca[93]](_0xafabx37,_0xafabx38[0]);if(checkGetDataPredictive(_0xafabx38[0])){loggerPredictive[_0x64ca[86]](JSON[_0x64ca[69]](_0xafabx38[0]));if(_0xafabx37[_0x64ca[334]]=== _0x64ca[335]){return _0xafabx5e[_0x64ca[128]]()[_0x64ca[116]](function(_0xafabx77){var _0xafabx40=_0xafabx37[_0x64ca[220]]- _0xafabx77[0][_0x64ca[350]];var _0xafabx5a=_0xafabx37[_0x64ca[332]]* 60;var _0xafabx78=_0xafabx38[0][_0x64ca[84]]+ _0xafabx38[0][_0x64ca[87]];var _0xafabx79=((_0xafabx38[0][_0x64ca[351]]+ _0xafabx38[0][_0x64ca[167]]+ _0xafabx38[0][_0x64ca[173]])/ _0xafabx38[0][_0x64ca[83]]);var _0xafabx7a=_0xafabx37[_0x64ca[317]]/ 100;_0xafabx37[_0x64ca[318]]= _0xafabx77[0][_0x64ca[350]]|| 0;_0xafabx37[_0x64ca[324]]= (_0xafabx79> 0)?_0xafabx79:1;return _0xafabx5e[_0x64ca[352]](_0xafabx40,_0xafabx5a,_0xafabx78,_0xafabx79,_0xafabx7a)})[_0x64ca[116]](function(_0xafabx38){return _0xafabx68(_0xafabx38)})[_0x64ca[115]](function(_0xafabx2a){return _0xafabx29(msgResponse(_0x64ca[349],_0x64ca[184],JSON[_0x64ca[69]](_0xafabx2a)))})};if(_0xafabx37[_0x64ca[334]]=== _0x64ca[353]){return _0xafabx5e[_0x64ca[128]]()[_0x64ca[116]](function(_0xafabx77){var _0xafabx40=_0xafabx37[_0x64ca[220]]- _0xafabx77[0][_0x64ca[350]];var _0xafabx5a=_0xafabx37[_0x64ca[332]]* 60;var _0xafabx78=_0xafabx38[0][_0x64ca[84]]+ _0xafabx38[0][_0x64ca[87]];var _0xafabx79=((_0xafabx38[0][_0x64ca[351]]+ _0xafabx38[0][_0x64ca[167]]+ _0xafabx38[0][_0x64ca[173]])/ _0xafabx38[0][_0x64ca[83]]);var _0xafabx7b=_0xafabx37[_0x64ca[317]]/ 100;_0xafabx37[_0x64ca[318]]= _0xafabx77[0][_0x64ca[350]]|| 0;_0xafabx37[_0x64ca[324]]= (_0xafabx79> 0)?_0xafabx79:1;return _0xafabx5e[_0x64ca[354]](_0xafabx40,_0xafabx5a,_0xafabx78,_0xafabx79,_0xafabx7b)})[_0x64ca[116]](function(_0xafabx38){return _0xafabx68(_0xafabx38)})[_0x64ca[115]](function(_0xafabx2a){return _0xafabx29(msgResponse(_0x64ca[349],_0x64ca[184],JSON[_0x64ca[69]](_0xafabx2a)))})}}else {return _0xafabx29(msgResponse(_0x64ca[355],_0x64ca[184],_0x64ca[356]))}})}};Dialer[_0x64ca[113]][_0x64ca[346]]= function(_0xafabx37){var _0xafabx5e=this;return function(){var _0xafabx53=0;var _0xafabx7c=Math[_0x64ca[326]](_0xafabx37[_0x64ca[357]]* 1000);if(_0xafabx7c> 0){loggerPredictive[_0x64ca[86]](_0x64ca[358],_0xafabx7c);_0xafabx37[_0x64ca[95]]= setInterval(function(){_0xafabx5e[_0x64ca[95]](_0xafabx37);loggerPredictiveCalls[_0x64ca[86]](_0x64ca[359],_0xafabx53+= 1)},_0xafabx7c)}else {loggerPredictive[_0x64ca[86]](_0x64ca[360],_0x64ca[361],_0xafabx7c)}}};Dialer[_0x64ca[113]][_0x64ca[362]]= function(_0xafabx37,_0xafabx59){var _0xafabx5e=this;return function(_0xafabx38){if(_[_0x64ca[66]](_0xafabx38)){return _0xafabx5e[_0x64ca[222]](_0xafabx37,_0xafabx59)}else {_0xafabx37[_0x64ca[363]]+= 1;_0xafabx37[_0x64ca[57]]= _0x64ca[364];var _0xafabx25= new Action(_0xafabx37,_0xafabx59);var _0xafabx6f= new History(_0xafabx25);_0xafabx6f[_0x64ca[153]]= 13;_0xafabx6f[_0x64ca[154]]= _0x64ca[365];_0xafabx6f[_0x64ca[248]]= _0xafabx25[_0x64ca[247]];_0xafabx5e[_0x64ca[132]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[249]));_0xafabx5e[_0x64ca[130]](_0xafabx6f)[_0x64ca[115]](loggerCatch(_0x64ca[366]));throw _0x64ca[367]}}};Dialer[_0x64ca[113]][_0x64ca[215]]= function(_0xafabx6b){var _0xafabx5e=this;var _0xafabx52=[];var _0xafabx55=_0xafabx6b[_0x64ca[368]]- _0xafabx6b[_0x64ca[102]];emitCampaignSummary(_0xafabx6b);if(_0xafabx55> 0){if(_0xafabx55> this[_0x64ca[33]]){_0xafabx55= this[_0x64ca[33]]};_0xafabx6b[_0x64ca[102]]+= _0xafabx55;this[_0x64ca[127]](_0xafabx6b[_0x64ca[238]],_0xafabx55)[_0x64ca[116]](function(_0xafabx38){if(!checkContactEmpty(_0xafabx38)){checkContactLowerLimitOriginate(_0xafabx6b,_0xafabx55,0);_0xafabx6b[_0x64ca[57]]= _0x64ca[110];logger[_0x64ca[86]](_0x64ca[370]+ _0xafabx6b[_0x64ca[59]])}else {checkContactLowerLimitOriginate(_0xafabx6b,_0xafabx55,_0xafabx38[_0x64ca[101]]);_0xafabx6b[_0x64ca[57]]= _0x64ca[371];for(var _0xafabx7d=0;_0xafabx7d< _0xafabx38[_0x64ca[101]];_0xafabx7d+= 1){_0xafabx6b[_0x64ca[372]]+= 1;_0xafabx5e[_0x64ca[118]](_[_0x64ca[375]](_0xafabx38[_0xafabx7d],[_0x64ca[278],_0x64ca[374]]))[_0x64ca[116]](_0xafabx5e[_0x64ca[362]](_0xafabx6b,_0xafabx38[_0xafabx7d]))[_0x64ca[115]](_0xafabx5e[_0x64ca[137]](_0x64ca[373],_0xafabx6b))}}})[_0x64ca[115]](loggerGetContactDialer(_0x64ca[369],_0xafabx6b,_0xafabx55))}};Dialer[_0x64ca[113]][_0x64ca[207]]= function(_0xafabx37,_0xafabx7e){var _0xafabx5e=this;var _0xafabx7f=_0xafabx7e>= 1?_0xafabx7e:1;var _0xafabx52=[];var _0xafabx55=Math[_0x64ca[326]](_0xafabx37[_0x64ca[376]]* _0xafabx7f)- _0xafabx37[_0x64ca[102]];emitVoiceQueueSummary(_0xafabx37);if(_0xafabx37[_0x64ca[377]]> 0){var _0xafabx80=_0xafabx37[_0x64ca[377]]- _0xafabx37[_0x64ca[102]]- _0xafabx37[_0x64ca[320]];if(_0xafabx55> _0xafabx80){_0xafabx55= _0xafabx80}};if(_0xafabx55> 0){if(_0xafabx55> this[_0x64ca[33]]){_0xafabx55= this[_0x64ca[33]]};_0xafabx37[_0x64ca[102]]+= _0xafabx55;this[_0x64ca[125]](_0xafabx37[_0x64ca[238]],_0xafabx55)[_0x64ca[116]](function(_0xafabx38){if(!checkContactEmpty(_0xafabx38)){checkContactLowerLimitOriginate(_0xafabx37,_0xafabx55,0);_0xafabx5e[_0x64ca[112]](_0xafabx37)[_0x64ca[116]](sendMessageReschedule(_0xafabx37))[_0x64ca[115]](loggerCatch(_0x64ca[114]))}else {checkContactLowerLimitOriginate(_0xafabx37,_0xafabx55,_0xafabx38[_0x64ca[101]]);_0xafabx37[_0x64ca[57]]= _0x64ca[371];for(var _0xafabx7d=0;_0xafabx7d< _0xafabx38[_0x64ca[101]];_0xafabx7d+= 1){_0xafabx5e[_0x64ca[118]](_[_0x64ca[375]](_0xafabx38[_0xafabx7d],[_0x64ca[237],_0x64ca[374]]))[_0x64ca[116]](_0xafabx5e[_0x64ca[362]](_0xafabx37,_0xafabx38[_0xafabx7d]))[_0x64ca[115]](_0xafabx5e[_0x64ca[137]](_0x64ca[379],_0xafabx37))}}})[_0x64ca[115]](loggerGetContactDialer(_0x64ca[378],_0xafabx37,_0xafabx55))}};Dialer[_0x64ca[113]][_0x64ca[95]]= function(_0xafabx37){var _0xafabx5e=this;if(_0xafabx37[_0x64ca[377]]> 0){var _0xafabx80=_0xafabx37[_0x64ca[377]]- _0xafabx37[_0x64ca[102]]- _0xafabx37[_0x64ca[320]];if(_0xafabx80> 0){this[_0x64ca[380]](_0xafabx37)}else {loggerPredictiveCalls[_0x64ca[86]](_0x64ca[381])}}else {this[_0x64ca[380]](_0xafabx37)}};Dialer[_0x64ca[113]][_0x64ca[380]]= function(_0xafabx37){var _0xafabx5e=this;_0xafabx37[_0x64ca[102]]+= 1;this[_0x64ca[125]](_0xafabx37[_0x64ca[238]],1)[_0x64ca[116]](function(_0xafabx38){if(!checkContactEmpty(_0xafabx38)){checkContactLowerLimitOriginate(_0xafabx37,1,0);_0xafabx5e[_0x64ca[112]](_0xafabx37)[_0x64ca[116]](sendMessageReschedule(_0xafabx37))[_0x64ca[115]](loggerCatch(_0x64ca[114]))}else {_0xafabx37[_0x64ca[57]]= _0x64ca[371];_0xafabx5e[_0x64ca[118]](_[_0x64ca[375]](_0xafabx38[0],[_0x64ca[237],_0x64ca[374]]))[_0x64ca[116]](_0xafabx5e[_0x64ca[362]](_0xafabx37,_0xafabx38[0]))[_0x64ca[115]](_0xafabx5e[_0x64ca[137]](_0x64ca[383],_0xafabx37))}})[_0x64ca[115]](loggerGetContactDialer(_0x64ca[382],_0xafabx37,1));emitVoiceQueueSummary(_0xafabx37)};Dialer[_0x64ca[113]][_0x64ca[352]]= function(_0xafabx40,_0xafabx5a,_0xafabx78,_0xafabx81,_0xafabx7a,_0xafabx82){loggerPredictive[_0x64ca[86]](_0x64ca[384],_0x64ca[385],_0xafabx40,_0x64ca[386],_0xafabx5a,_0x64ca[387],_0xafabx78,_0x64ca[388],_0xafabx81,_0x64ca[389],_0xafabx7a);return  new BPromise(function(_0xafabx68,_0xafabx29){if(_0xafabx40<= 0|| isNaN(_0xafabx40)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[390]+ _0xafabx40))};if(_0xafabx78<= 0|| isNaN(_0xafabx78)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[391]+ _0xafabx78))};if(_0xafabx81<= 0|| isNaN(_0xafabx81)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[392]+ _0xafabx81))};if(_0xafabx5a<= 0|| isNaN(_0xafabx5a)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[393]+ _0xafabx5a))};if(_0xafabx7a<= 0|| isNaN(_0xafabx7a)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[394]+ _0xafabx7a))};_0xafabx82= _0xafabx82|| 0.0;var _0xafabx83=1.0/ _0xafabx78;var _0xafabx3f=0.0;var _0xafabx84=0.0;var _0xafabx2d=0.0;var _0xafabx85=0.0;for(var _0xafabx53=0;_0xafabx2d< _0xafabx7a;_0xafabx53+= 1){_0xafabx84= _0xafabx53/ _0xafabx5a;_0xafabx3f= ((_0xafabx81* _0xafabx84)+ _0xafabx82)/ _0xafabx83;_0xafabx2d= erlangb(_0xafabx3f,_0xafabx40);_0xafabx85= (_0xafabx3f/ _0xafabx40)* (1- erlangb(_0xafabx3f,_0xafabx40))};return _0xafabx68({erlangCalls:_0xafabx53,erlangCallToSecond:(_0xafabx5a/ _0xafabx53),erlangAbandonmentRate:_0xafabx2d,erlangBusyFactor:_0xafabx85})})};Dialer[_0x64ca[113]][_0x64ca[354]]= function(_0xafabx40,_0xafabx5a,_0xafabx78,_0xafabx81,_0xafabx7b,_0xafabx82){loggerPredictive[_0x64ca[86]](_0x64ca[395],_0x64ca[385],_0xafabx40,_0x64ca[386],_0xafabx5a,_0x64ca[387],_0xafabx78,_0x64ca[388],_0xafabx81,_0x64ca[396],_0xafabx7b);return  new BPromise(function(_0xafabx68,_0xafabx29){if(_0xafabx40<= 0|| isNaN(_0xafabx40)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[390]+ _0xafabx40))};if(_0xafabx78<= 0|| isNaN(_0xafabx78)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[391]+ _0xafabx78))};if(_0xafabx81<= 0|| isNaN(_0xafabx81)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[392]+ _0xafabx81))};if(_0xafabx5a<= 0|| isNaN(_0xafabx5a)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[393]+ _0xafabx5a))};if(_0xafabx7b<= 0|| isNaN(_0xafabx7b)){return _0xafabx29(msgResponse(_0x64ca[384],_0x64ca[68],_0x64ca[394]+ _0xafabx7b))};_0xafabx82= _0xafabx82|| 0.0;var _0xafabx83=1.0/ _0xafabx78;var _0xafabx3f=0.0;var _0xafabx84=0.0;var _0xafabx2d=0.0;var _0xafabx85=0.0;for(var _0xafabx53=0;_0xafabx85< _0xafabx7b;_0xafabx53+= 1){_0xafabx84= _0xafabx53/ _0xafabx5a;_0xafabx3f= ((_0xafabx81* _0xafabx84)+ _0xafabx82)/ _0xafabx83;_0xafabx2d= erlangb(_0xafabx3f,_0xafabx40);_0xafabx85= (_0xafabx3f/ _0xafabx40)* (1- erlangb(_0xafabx3f,_0xafabx40))};return _0xafabx68({erlangCalls:_0xafabx53,erlangCallToSecond:(_0xafabx5a/ _0xafabx53),erlangAbandonmentRate:_0xafabx2d,erlangBusyFactor:_0xafabx85})})};module[_0x64ca[397]]= Dialer
\ No newline at end of file
index bf8e4c7..54717e7 100644 (file)
@@ -1 +1 @@
-var _0xb0cc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6E\x75\x6D\x62\x65\x72","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x64\x72\x6F\x70\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0xb0cc[0];var util=require(_0xb0cc[1]);var _=require(_0xb0cc[2]);var moment=require(_0xb0cc[3]);function getSeconds(_0x5959x5,_0x5959x6){var _0x5959x7=moment(_0x5959x5)[_0xb0cc[4]](0);var _0x5959x8=moment(_0x5959x6)[_0xb0cc[4]](0);return _0x5959x7[_0xb0cc[6]](_0x5959x8,_0xb0cc[5])}function QueueCallerAbandon(_0x5959xa,_0x5959xb){this[_0xb0cc[7]]= _0x5959xa[_0xb0cc[7]];this[_0xb0cc[8]]= _0x5959xa[_0xb0cc[8]];this[_0xb0cc[9]]= (_0x5959xa[_0xb0cc[8]]=== _0xb0cc[10])?_0xb0cc[11]:_0x5959xa[_0xb0cc[8]];this[_0xb0cc[12]]= _0x5959xa[_0xb0cc[12]];this[_0xb0cc[13]]= _0x5959xa[_0xb0cc[13]];this[_0xb0cc[14]]= _0x5959xa[_0xb0cc[14]];this[_0xb0cc[15]]= _0x5959xa[_0xb0cc[12]]+ _0x5959xa[_0xb0cc[13]]+ _0x5959xa[_0xb0cc[14]];this[_0xb0cc[16]]= _0x5959xb[_0xb0cc[16]];this[_0xb0cc[17]]= _0x5959xa[_0xb0cc[18]];this[_0xb0cc[19]]= _0x5959xa[_0xb0cc[20]];this[_0xb0cc[21]]= _0x5959xa[_0xb0cc[21]];this[_0xb0cc[22]]= _0x5959xa[_0xb0cc[22]];this[_0xb0cc[23]]= _0x5959xa[_0xb0cc[23]];this[_0xb0cc[24]]= this[_0xb0cc[23]];this[_0xb0cc[25]]= getSeconds(_0x5959xa[_0xb0cc[22]],_0x5959xa[_0xb0cc[21]]);this[_0xb0cc[26]]= getSeconds(this[_0xb0cc[23]],_0x5959xa[_0xb0cc[22]]);this[_0xb0cc[27]]= 0;this[_0xb0cc[11]]= _0x5959xb[_0xb0cc[11]];this[_0xb0cc[28]]= _0x5959xb[_0xb0cc[29]];this[_0xb0cc[30]]= _0x5959xb[_0xb0cc[30]];this[_0xb0cc[31]]= _0x5959xa[_0xb0cc[31]];this[_0xb0cc[32]]= _0x5959xa[_0xb0cc[32]];this[_0xb0cc[33]]= _0x5959xa[_0xb0cc[33]];this[_0xb0cc[34]]= _0x5959xa[_0xb0cc[34]];this[_0xb0cc[35]]= _0x5959xa[_0xb0cc[35]];this[_0xb0cc[36]]= _0x5959xa[_0xb0cc[36]];this[_0xb0cc[37]]= _0x5959xa[_0xb0cc[37]];this[_0xb0cc[38]]= _0x5959xa[_0xb0cc[38]]}module[_0xb0cc[39]]= QueueCallerAbandon
\ No newline at end of file
+var _0x68dc=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E\x74\x79\x70\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x62\x75\x73\x79\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x63\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x6E\x6F\x61\x6E\x73\x77\x65\x72\x72\x65\x74\x72\x79","\x63\x6F\x75\x6E\x74\x67\x6C\x6F\x62\x61\x6C","\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6E\x75\x6D\x62\x65\x72","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65\x74\x69\x6D\x65","\x64\x72\x6F\x70\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x72\x69\x6E\x67\x74\x69\x6D\x65","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x72\x65\x61\x73\x6F\x6E","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x75\x6E\x69\x71\x75\x65\x69\x64","\x63\x61\x6C\x6C\x62\x61\x63\x6B\x61\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x55\x73\x65\x72\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x43\x61\x6D\x70\x61\x69\x67\x6E\x49\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x68dc[0];var util=require(_0x68dc[1]);var _=require(_0x68dc[2]);var moment=require(_0x68dc[3]);function getSeconds(_0xce73x5,_0xce73x6){var _0xce73x7=moment(_0xce73x5)[_0x68dc[4]](0);var _0xce73x8=moment(_0xce73x6)[_0x68dc[4]](0);return _0xce73x7[_0x68dc[6]](_0xce73x8,_0x68dc[5])}function QueueCallerAbandon(_0xce73xa,_0xce73xb){this[_0x68dc[7]]= _0xce73xa[_0x68dc[7]];this[_0x68dc[8]]= _0xce73xa[_0x68dc[8]];this[_0x68dc[9]]= (_0xce73xa[_0x68dc[8]]=== _0x68dc[10])?_0x68dc[11]:_0xce73xa[_0x68dc[8]];this[_0x68dc[12]]= _0xce73xa[_0x68dc[12]];this[_0x68dc[13]]= _0xce73xa[_0x68dc[13]];this[_0x68dc[14]]= _0xce73xa[_0x68dc[14]];this[_0x68dc[15]]= _0xce73xa[_0x68dc[12]]+ _0xce73xa[_0x68dc[13]]+ _0xce73xa[_0x68dc[14]];this[_0x68dc[16]]= _0xce73xb[_0x68dc[16]];this[_0x68dc[17]]= _0xce73xa[_0x68dc[18]];this[_0x68dc[19]]= _0xce73xa[_0x68dc[20]];this[_0x68dc[21]]= _0xce73xa[_0x68dc[21]];this[_0x68dc[22]]= _0xce73xa[_0x68dc[22]];this[_0x68dc[23]]= _0xce73xa[_0x68dc[23]];this[_0x68dc[24]]= this[_0x68dc[23]];this[_0x68dc[25]]= getSeconds(_0xce73xa[_0x68dc[22]],_0xce73xa[_0x68dc[21]]);this[_0x68dc[26]]= getSeconds(this[_0x68dc[23]],_0xce73xa[_0x68dc[22]]);this[_0x68dc[27]]= 0;this[_0x68dc[11]]= _0xce73xb[_0x68dc[11]];this[_0x68dc[28]]= _0xce73xb[_0x68dc[29]];this[_0x68dc[30]]= _0xce73xb[_0x68dc[30]];this[_0x68dc[31]]= _0xce73xa[_0x68dc[31]];this[_0x68dc[32]]= _0xce73xa[_0x68dc[32]];this[_0x68dc[33]]= _0xce73xa[_0x68dc[33]];this[_0x68dc[34]]= _0xce73xa[_0x68dc[34]];this[_0x68dc[35]]= _0xce73xa[_0x68dc[35]];this[_0x68dc[36]]= _0xce73xa[_0x68dc[36]];this[_0x68dc[37]]= _0xce73xa[_0x68dc[37]];this[_0x68dc[38]]= _0xce73xa[_0x68dc[38]]}module[_0x68dc[39]]= QueueCallerAbandon
\ No newline at end of file
index dd4ed3a..7c156c5 100644 (file)
@@ -1 +1 @@
-var _0x7f65=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x2E\x2F\x73\x65\x72\x76\x65\x72","\x2E\x2F\x72\x65\x61\x6C\x74\x69\x6D\x65","\x2E\x2F\x72\x65\x70\x6F\x72\x74","\x2E\x2F\x61\x63\x77","\x2E\x2F\x74\x72\x69\x67\x67\x65\x72","\x2E\x2F\x64\x69\x61\x6C\x65\x72","\x2E\x2F\x72\x70\x63\x2F\x75\x73\x65\x72","\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x72\x70\x63\x2F\x74\x72\x75\x6E\x6B","\x2E\x2F\x72\x70\x63\x2F\x74\x72\x69\x67\x67\x65\x72","\x2E\x2F\x72\x70\x63\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65","\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x2E\x2F\x72\x70\x63\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E","\x2E\x2F\x72\x70\x63\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x7A\x65\x6E\x64\x65\x73\x6B","\x2E\x2F\x72\x70\x63\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65","\x2E\x2F\x72\x70\x63\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x75\x67\x61\x72\x63\x72\x6D","\x2E\x2F\x72\x70\x63\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B","\x74\x68\x65\x6E","\x69\x6E\x69\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x69\x6E\x69\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x67\x65\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x67\x65\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x67\x65\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x67\x65\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x67\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x67\x65\x74\x56\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x69\x6E\x69\x74\x54\x72\x75\x6E\x6B\x73","\x67\x65\x74\x54\x72\x75\x6E\x6B\x73","\x69\x6E\x69\x74\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x67\x65\x74\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x69\x6E\x69\x74\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x72\x65\x73\x6F\x6C\x76\x65","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73","\x67\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73","\x69\x6E\x69\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x73\x79\x6E\x63","\x6C\x69\x73\x74\x65\x6E"];_0x7f65[0];var BPromise=require(_0x7f65[1]);var util=require(_0x7f65[2]);var server=require(_0x7f65[3]);var Realtime=require(_0x7f65[4]);var Report=require(_0x7f65[5]);var Acw=require(_0x7f65[6]);var Trigger=require(_0x7f65[7]);var Dialer=require(_0x7f65[8]);var user=require(_0x7f65[9]);var voiceQueue=require(_0x7f65[10]);var voiceQueueReport=require(_0x7f65[11]);var voiceCallReport=require(_0x7f65[12]);var trunk=require(_0x7f65[13]);var trigger=require(_0x7f65[14]);var template=require(_0x7f65[15]);var cmHopperHistory=require(_0x7f65[16]);var campaign=require(_0x7f65[17]);var zendesk=require(_0x7f65[18]);var salesforce=require(_0x7f65[19]);var sugarcrm=require(_0x7f65[20]);var freshdesk=require(_0x7f65[21]);var realtime= new Realtime();var report= new Report(realtime);var acw= new Acw(realtime);var voiceTrigger= new Trigger(realtime);var dialer= new Dialer(realtime);function initRealtime(){return BPromise[_0x7f65[45]]()[_0x7f65[22]](user[_0x7f65[44]]())[_0x7f65[22]](realtime[_0x7f65[43]]())[_0x7f65[22]](user[_0x7f65[42]]())[_0x7f65[22]](realtime[_0x7f65[41]]())[_0x7f65[22]](trunk[_0x7f65[40]]())[_0x7f65[22]](realtime[_0x7f65[39]]())[_0x7f65[22]](voiceQueue[_0x7f65[38]]())[_0x7f65[22]](realtime[_0x7f65[37]]())[_0x7f65[22]](trigger[_0x7f65[36]]())[_0x7f65[22]](realtime[_0x7f65[35]]())[_0x7f65[22]](template[_0x7f65[34]]())[_0x7f65[22]](realtime[_0x7f65[33]]())[_0x7f65[22]](zendesk[_0x7f65[32]]())[_0x7f65[22]](realtime[_0x7f65[31]]())[_0x7f65[22]](salesforce[_0x7f65[30]]())[_0x7f65[22]](realtime[_0x7f65[29]]())[_0x7f65[22]](sugarcrm[_0x7f65[28]]())[_0x7f65[22]](realtime[_0x7f65[27]]())[_0x7f65[22]](freshdesk[_0x7f65[26]]())[_0x7f65[22]](realtime[_0x7f65[25]]())[_0x7f65[22]](campaign[_0x7f65[24]]())[_0x7f65[22]](realtime[_0x7f65[23]]())[_0x7f65[22]](function(){return realtime})}function initParams(){return BPromise[_0x7f65[45]]()[_0x7f65[22]](voiceQueueReport[_0x7f65[55]]())[_0x7f65[22]](realtime[_0x7f65[54]]())[_0x7f65[22]](cmHopperHistory[_0x7f65[53]]())[_0x7f65[22]](realtime[_0x7f65[52]]())[_0x7f65[22]](cmHopperHistory[_0x7f65[51]]())[_0x7f65[22]](realtime[_0x7f65[50]]())[_0x7f65[22]](voiceCallReport[_0x7f65[49]]())[_0x7f65[22]](realtime[_0x7f65[48]]())[_0x7f65[22]](function(_0xce45x1e){})[_0x7f65[47]](function(_0xce45x1d){console[_0x7f65[46]](_0xce45x1d)})}return server[_0x7f65[57]](realtime)[_0x7f65[22]](function(_0xce45x1f){console[_0x7f65[46]](_0xce45x1f);return initRealtime()})[_0x7f65[22]](function(){return initParams()})[_0x7f65[22]](function(){report[_0x7f65[56]]();setInterval(initRealtime,5000)})[_0x7f65[47]](function(_0xce45x1d){console[_0x7f65[46]](_0xce45x1d)})
\ No newline at end of file
+var _0x3141=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x2E\x2F\x73\x65\x72\x76\x65\x72","\x2E\x2F\x72\x65\x61\x6C\x74\x69\x6D\x65","\x2E\x2F\x72\x65\x70\x6F\x72\x74","\x2E\x2F\x61\x63\x77","\x2E\x2F\x74\x72\x69\x67\x67\x65\x72","\x2E\x2F\x64\x69\x61\x6C\x65\x72","\x2E\x2F\x72\x70\x63\x2F\x75\x73\x65\x72","\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x72\x70\x63\x2F\x74\x72\x75\x6E\x6B","\x2E\x2F\x72\x70\x63\x2F\x74\x72\x69\x67\x67\x65\x72","\x2E\x2F\x72\x70\x63\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65","\x2E\x2F\x72\x70\x63\x2F\x63\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x2E\x2F\x72\x70\x63\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E","\x2E\x2F\x72\x70\x63\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x7A\x65\x6E\x64\x65\x73\x6B","\x2E\x2F\x72\x70\x63\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65","\x2E\x2F\x72\x70\x63\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x73\x75\x67\x61\x72\x63\x72\x6D","\x2E\x2F\x72\x70\x63\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x73\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B","\x68\x6F\x75\x72","\x67\x65\x74","\x74\x68\x65\x6E","\x69\x6E\x69\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x69\x6E\x69\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x67\x65\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x67\x65\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x67\x65\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x67\x65\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x67\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x67\x65\x74\x56\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x69\x6E\x69\x74\x54\x72\x75\x6E\x6B\x73","\x67\x65\x74\x54\x72\x75\x6E\x6B\x73","\x69\x6E\x69\x74\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x67\x65\x74\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x69\x6E\x69\x74\x41\x67\x65\x6E\x74\x73","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x72\x65\x73\x6F\x6C\x76\x65","\x6C\x6F\x67","\x63\x61\x74\x63\x68","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73","\x67\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73","\x69\x6E\x69\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x73\x79\x6E\x63","\x6C\x69\x73\x74\x65\x6E"];_0x3141[0];var BPromise=require(_0x3141[1]);var util=require(_0x3141[2]);var moment=require(_0x3141[3]);var server=require(_0x3141[4]);var Realtime=require(_0x3141[5]);var Report=require(_0x3141[6]);var Acw=require(_0x3141[7]);var Trigger=require(_0x3141[8]);var Dialer=require(_0x3141[9]);var user=require(_0x3141[10]);var voiceQueue=require(_0x3141[11]);var voiceQueueReport=require(_0x3141[12]);var voiceCallReport=require(_0x3141[13]);var trunk=require(_0x3141[14]);var trigger=require(_0x3141[15]);var template=require(_0x3141[16]);var cmHopperHistory=require(_0x3141[17]);var campaign=require(_0x3141[18]);var zendesk=require(_0x3141[19]);var salesforce=require(_0x3141[20]);var sugarcrm=require(_0x3141[21]);var freshdesk=require(_0x3141[22]);var realtime= new Realtime();var report= new Report(realtime);var acw= new Acw(realtime);var voiceTrigger= new Trigger(realtime);var dialer= new Dialer(realtime);var isTrue=true;var initP=true;function ifMidnight(){if(moment()[_0x3141[24]](_0x3141[23])=== 0&& initP){initP= false;isTrue= true;initParams()};if(moment()[_0x3141[24]](_0x3141[23])=== 1&& isTrue){isTrue= false;initP= true}}function initRealtime(){ifMidnight();return BPromise[_0x3141[48]]()[_0x3141[25]](user[_0x3141[47]]())[_0x3141[25]](realtime[_0x3141[46]]())[_0x3141[25]](user[_0x3141[45]]())[_0x3141[25]](realtime[_0x3141[44]]())[_0x3141[25]](trunk[_0x3141[43]]())[_0x3141[25]](realtime[_0x3141[42]]())[_0x3141[25]](voiceQueue[_0x3141[41]]())[_0x3141[25]](realtime[_0x3141[40]]())[_0x3141[25]](trigger[_0x3141[39]]())[_0x3141[25]](realtime[_0x3141[38]]())[_0x3141[25]](template[_0x3141[37]]())[_0x3141[25]](realtime[_0x3141[36]]())[_0x3141[25]](zendesk[_0x3141[35]]())[_0x3141[25]](realtime[_0x3141[34]]())[_0x3141[25]](salesforce[_0x3141[33]]())[_0x3141[25]](realtime[_0x3141[32]]())[_0x3141[25]](sugarcrm[_0x3141[31]]())[_0x3141[25]](realtime[_0x3141[30]]())[_0x3141[25]](freshdesk[_0x3141[29]]())[_0x3141[25]](realtime[_0x3141[28]]())[_0x3141[25]](campaign[_0x3141[27]]())[_0x3141[25]](realtime[_0x3141[26]]())[_0x3141[25]](function(){return realtime})}function initParams(){return BPromise[_0x3141[48]]()[_0x3141[25]](voiceQueueReport[_0x3141[58]]())[_0x3141[25]](realtime[_0x3141[57]]())[_0x3141[25]](cmHopperHistory[_0x3141[56]]())[_0x3141[25]](realtime[_0x3141[55]]())[_0x3141[25]](cmHopperHistory[_0x3141[54]]())[_0x3141[25]](realtime[_0x3141[53]]())[_0x3141[25]](voiceCallReport[_0x3141[52]]())[_0x3141[25]](realtime[_0x3141[51]]())[_0x3141[25]](function(_0x829cx22){})[_0x3141[50]](function(_0x829cx21){console[_0x3141[49]](_0x829cx21)})}return server[_0x3141[60]](realtime)[_0x3141[25]](function(_0x829cx23){console[_0x3141[49]](_0x829cx23);return initRealtime()})[_0x3141[25]](function(){return initParams()})[_0x3141[25]](function(){report[_0x3141[59]]();setInterval(initRealtime,5000)})[_0x3141[50]](function(_0x829cx21){console[_0x3141[49]](_0x829cx21)})
\ No newline at end of file
index 20eee60..9a7d27d 100644 (file)
@@ -1 +1 @@
-var _0xb7c1=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x65\x6D\x61\x69\x6C","\x73\x74\x61\x74\x65","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x73\x74\x61\x74\x65\x54\x69\x6D\x65","\x73\x74\x61\x74\x75\x73","\x61\x64\x64\x72\x65\x73\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xb7c1[0];function Agent(_0xe5a2x2){this[_0xb7c1[1]]= _0xe5a2x2[_0xb7c1[1]]|| 0;this[_0xb7c1[2]]= _0xe5a2x2[_0xb7c1[2]]|| _0xb7c1[3];this[_0xb7c1[4]]= _0xe5a2x2[_0xb7c1[4]]|| _0xb7c1[3];this[_0xb7c1[5]]= _0xb7c1[6];this[_0xb7c1[7]]= 0;this[_0xb7c1[8]]= _0xb7c1[6];this[_0xb7c1[9]]= _0xb7c1[3]}module[_0xb7c1[10]]= Agent
\ No newline at end of file
+var _0x2a86=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x65\x6D\x61\x69\x6C","\x73\x74\x61\x74\x65","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x73\x74\x61\x74\x65\x54\x69\x6D\x65","\x73\x74\x61\x74\x75\x73","\x61\x64\x64\x72\x65\x73\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x2a86[0];function Agent(_0xd633x2){this[_0x2a86[1]]= _0xd633x2[_0x2a86[1]]|| 0;this[_0x2a86[2]]= _0xd633x2[_0x2a86[2]]|| _0x2a86[3];this[_0x2a86[4]]= _0xd633x2[_0x2a86[4]]|| _0x2a86[3];this[_0x2a86[5]]= _0x2a86[6];this[_0x2a86[7]]= 0;this[_0x2a86[8]]= _0x2a86[6];this[_0x2a86[9]]= _0x2a86[3]}module[_0x2a86[10]]= Agent
\ No newline at end of file
index 4e1e866..ebebe66 100644 (file)
@@ -1 +1 @@
-var _0xa2d0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x69\x76\x72\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x69\x76\x72\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73\x44\x61\x79\x73","\x6D\x65\x73\x73\x61\x67\x65","\x61\x63\x74\x69\x76\x65","\x6C\x69\x6D\x69\x74\x43\x61\x6C\x6C\x73","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x54\x72\x75\x6E\x6B","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x50\x72\x6F\x6A\x65\x63\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xa2d0[0];function Campaign(_0xc9dcx2){this[_0xa2d0[1]]= _0xc9dcx2[_0xa2d0[1]]|| 0;this[_0xa2d0[2]]= _0xc9dcx2[_0xa2d0[2]]|| _0xa2d0[3];this[_0xa2d0[4]]= _0xc9dcx2[_0xa2d0[4]]|| _0xa2d0[5];this[_0xa2d0[6]]= 0;this[_0xa2d0[7]]= 0;this[_0xa2d0[8]]= 0;this[_0xa2d0[9]]= _0xa2d0[3];this[_0xa2d0[10]]= _0xc9dcx2[_0xa2d0[10]];this[_0xa2d0[11]]= _0xc9dcx2[_0xa2d0[11]];this[_0xa2d0[12]]= _0xc9dcx2[_0xa2d0[12]]|| null;this[_0xa2d0[13]]= _0xc9dcx2[_0xa2d0[13]]?_0xc9dcx2[_0xa2d0[13]]:null;this[_0xa2d0[14]]= _0xc9dcx2[_0xa2d0[14]];this[_0xa2d0[15]]= _0xc9dcx2[_0xa2d0[15]];this[_0xa2d0[16]]= _0xc9dcx2[_0xa2d0[16]]|| 30;this[_0xa2d0[17]]= _0xc9dcx2[_0xa2d0[17]];this[_0xa2d0[18]]= _0xc9dcx2[_0xa2d0[18]];this[_0xa2d0[19]]= _0xc9dcx2[_0xa2d0[19]];this[_0xa2d0[20]]= _0xc9dcx2[_0xa2d0[20]];this[_0xa2d0[21]]= _0xc9dcx2[_0xa2d0[21]];this[_0xa2d0[22]]= _0xc9dcx2[_0xa2d0[22]];this[_0xa2d0[23]]= _0xc9dcx2[_0xa2d0[23]];this[_0xa2d0[24]]= _0xc9dcx2[_0xa2d0[24]]?_0xc9dcx2[_0xa2d0[24]]:undefined;this[_0xa2d0[25]]= _0xc9dcx2[_0xa2d0[25]]?_0xc9dcx2[_0xa2d0[25]]:undefined;this[_0xa2d0[26]]= _0xc9dcx2[_0xa2d0[26]]?_0xc9dcx2[_0xa2d0[26]]:undefined;this[_0xa2d0[27]]= _0xc9dcx2[_0xa2d0[27]]?_0xc9dcx2[_0xa2d0[27]]:undefined;this[_0xa2d0[28]]= _0xc9dcx2[_0xa2d0[27]]?_0xc9dcx2[_0xa2d0[27]][_0xa2d0[2]]:undefined}module[_0xa2d0[29]]= Campaign
\ No newline at end of file
+var _0x70be=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x74\x79\x70\x65","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x69\x76\x72\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x69\x76\x72\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73\x44\x61\x79\x73","\x6D\x65\x73\x73\x61\x67\x65","\x61\x63\x74\x69\x76\x65","\x6C\x69\x6D\x69\x74\x43\x61\x6C\x6C\x73","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x54\x72\x75\x6E\x6B","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x50\x72\x6F\x6A\x65\x63\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0x70be[0];function Campaign(_0x9947x2){this[_0x70be[1]]= _0x9947x2[_0x70be[1]]|| 0;this[_0x70be[2]]= _0x9947x2[_0x70be[2]]|| _0x70be[3];this[_0x70be[4]]= _0x9947x2[_0x70be[4]]|| _0x70be[5];this[_0x70be[6]]= 0;this[_0x70be[7]]= 0;this[_0x70be[8]]= 0;this[_0x70be[9]]= _0x70be[3];this[_0x70be[10]]= _0x9947x2[_0x70be[10]];this[_0x70be[11]]= _0x9947x2[_0x70be[11]];this[_0x70be[12]]= _0x9947x2[_0x70be[12]]|| null;this[_0x70be[13]]= _0x9947x2[_0x70be[13]]?_0x9947x2[_0x70be[13]]:null;this[_0x70be[14]]= _0x9947x2[_0x70be[14]];this[_0x70be[15]]= _0x9947x2[_0x70be[15]];this[_0x70be[16]]= _0x9947x2[_0x70be[16]]|| 30;this[_0x70be[17]]= _0x9947x2[_0x70be[17]];this[_0x70be[18]]= _0x9947x2[_0x70be[18]];this[_0x70be[19]]= _0x9947x2[_0x70be[19]];this[_0x70be[20]]= _0x9947x2[_0x70be[20]];this[_0x70be[21]]= _0x9947x2[_0x70be[21]];this[_0x70be[22]]= _0x9947x2[_0x70be[22]];this[_0x70be[23]]= _0x9947x2[_0x70be[23]];this[_0x70be[24]]= _0x9947x2[_0x70be[24]]?_0x9947x2[_0x70be[24]]:undefined;this[_0x70be[25]]= _0x9947x2[_0x70be[25]]?_0x9947x2[_0x70be[25]]:undefined;this[_0x70be[26]]= _0x9947x2[_0x70be[26]]?_0x9947x2[_0x70be[26]]:undefined;this[_0x70be[27]]= _0x9947x2[_0x70be[27]]?_0x9947x2[_0x70be[27]]:undefined;this[_0x70be[28]]= _0x9947x2[_0x70be[27]]?_0x9947x2[_0x70be[27]][_0x70be[2]]:undefined}module[_0x70be[29]]= Campaign
\ No newline at end of file
index ad8884a..1dcd3c2 100644 (file)
@@ -1 +1 @@
-var _0xe75c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x63\x68\x61\x6E\x6E\x65\x6C","","\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x65\x78\x74\x65\x6E","\x61\x6E\x73\x77\x65\x72\x65\x64","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x6C\x61\x73\x74\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6C\x61\x73\x74\x64\x61\x74\x61","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x79\x70\x65","\x74\x61\x67","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6D\x6F\x6E\x69\x74\x6F\x72","\x6D\x6F\x6E\x69\x74\x6F\x72\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x71\x75\x65\x75\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0xe75c[0];function Channel(){this[_0xe75c[1]]= null;this[_0xe75c[2]]= _0xe75c[3];this[_0xe75c[4]]= _0xe75c[3];this[_0xe75c[5]]= 0;this[_0xe75c[6]]= _0xe75c[3];this[_0xe75c[7]]= undefined;this[_0xe75c[8]]= undefined;this[_0xe75c[9]]= 0;this[_0xe75c[10]]= _0xe75c[3];this[_0xe75c[11]]= 0;this[_0xe75c[12]]= 0;this[_0xe75c[13]]= 0;this[_0xe75c[14]]= false;this[_0xe75c[15]]= null;this[_0xe75c[16]]= null;this[_0xe75c[17]]= false;this[_0xe75c[18]]= _0xe75c[3];this[_0xe75c[19]]= _0xe75c[3];this[_0xe75c[20]]= 0;this[_0xe75c[21]]= 0;this[_0xe75c[22]]= 0;this[_0xe75c[23]]= null;this[_0xe75c[24]]= null;this[_0xe75c[25]]= null;this[_0xe75c[26]]= false;this[_0xe75c[27]]= null;this[_0xe75c[28]]= null}module[_0xe75c[29]]= Channel
\ No newline at end of file
+var _0x35cf=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x63\x68\x61\x6E\x6E\x65\x6C","","\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x65\x78\x74\x65\x6E","\x61\x6E\x73\x77\x65\x72\x65\x64","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x6C\x61\x73\x74\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6C\x61\x73\x74\x64\x61\x74\x61","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x74\x79\x70\x65","\x74\x61\x67","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x6D\x6F\x6E\x69\x74\x6F\x72","\x6D\x6F\x6E\x69\x74\x6F\x72\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x71\x75\x65\x75\x65","\x65\x78\x70\x6F\x72\x74\x73"];_0x35cf[0];function Channel(){this[_0x35cf[1]]= null;this[_0x35cf[2]]= _0x35cf[3];this[_0x35cf[4]]= _0x35cf[3];this[_0x35cf[5]]= 0;this[_0x35cf[6]]= _0x35cf[3];this[_0x35cf[7]]= undefined;this[_0x35cf[8]]= undefined;this[_0x35cf[9]]= 0;this[_0x35cf[10]]= _0x35cf[3];this[_0x35cf[11]]= 0;this[_0x35cf[12]]= 0;this[_0x35cf[13]]= 0;this[_0x35cf[14]]= false;this[_0x35cf[15]]= null;this[_0x35cf[16]]= null;this[_0x35cf[17]]= false;this[_0x35cf[18]]= _0x35cf[3];this[_0x35cf[19]]= _0x35cf[3];this[_0x35cf[20]]= 0;this[_0x35cf[21]]= 0;this[_0x35cf[22]]= 0;this[_0x35cf[23]]= null;this[_0x35cf[24]]= null;this[_0x35cf[25]]= null;this[_0x35cf[26]]= false;this[_0x35cf[27]]= null;this[_0x35cf[28]]= null}module[_0x35cf[29]]= Channel
\ No newline at end of file
index d0de129..6a77ea6 100644 (file)
@@ -1 +1 @@
-var _0x17c4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x61\x70\x69\x4B\x65\x79","\x74\x6F\x6B\x65\x6E","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x17c4[0];function FreshdeskAccount(_0xbf20x2){this[_0x17c4[1]]= _0xbf20x2[_0x17c4[1]]|| 0;this[_0x17c4[2]]= _0xbf20x2[_0x17c4[2]]|| _0x17c4[3];this[_0x17c4[4]]= _0xbf20x2[_0x17c4[4]]|| _0x17c4[3];this[_0x17c4[5]]= _0xbf20x2[_0x17c4[6]]|| _0x17c4[3];this[_0x17c4[7]]= _0xbf20x2[_0x17c4[7]]|| _0x17c4[3];this[_0x17c4[8]]= _0xbf20x2[_0x17c4[8]]|| _0x17c4[3];this[_0x17c4[9]]= _0xbf20x2[_0x17c4[9]]|| {}}module[_0x17c4[10]]= FreshdeskAccount
\ No newline at end of file
+var _0x390f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x61\x70\x69\x4B\x65\x79","\x74\x6F\x6B\x65\x6E","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x390f[0];function FreshdeskAccount(_0x33f2x2){this[_0x390f[1]]= _0x33f2x2[_0x390f[1]]|| 0;this[_0x390f[2]]= _0x33f2x2[_0x390f[2]]|| _0x390f[3];this[_0x390f[4]]= _0x33f2x2[_0x390f[4]]|| _0x390f[3];this[_0x390f[5]]= _0x33f2x2[_0x390f[6]]|| _0x390f[3];this[_0x390f[7]]= _0x33f2x2[_0x390f[7]]|| _0x390f[3];this[_0x390f[8]]= _0x33f2x2[_0x390f[8]]|| _0x390f[3];this[_0x390f[9]]= _0x33f2x2[_0x390f[9]]|| {}}module[_0x390f[10]]= FreshdeskAccount
\ No newline at end of file
index 83030ca..76677db 100644 (file)
@@ -1 +1 @@
-var _0xc34c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x74\x79\x70\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x71\x75\x65\x75\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x6F\x75\x6E\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x68\x61\x6E\x6E\x65\x6C","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x61\x73\x73\x69\x67\x6E\x65\x64","\x6C\x61\x73\x74\x41\x73\x73\x69\x67\x6E\x65\x64\x54\x6F","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xc34c[0];function QueueReport(){this[_0xc34c[1]]= _0xc34c[2];this[_0xc34c[3]]= _0xc34c[4];this[_0xc34c[5]]= _0xc34c[4];this[_0xc34c[6]]= _0xc34c[4];this[_0xc34c[7]]= _0xc34c[4];this[_0xc34c[8]]= null;this[_0xc34c[9]]= null;this[_0xc34c[10]]= 1;this[_0xc34c[11]]= 1;this[_0xc34c[12]]= false;this[_0xc34c[13]]= null;this[_0xc34c[14]]= false;this[_0xc34c[15]]= null;this[_0xc34c[16]]= false;this[_0xc34c[17]]= null;this[_0xc34c[18]]= 1;this[_0xc34c[19]]= _0xc34c[4];this[_0xc34c[20]]= _0xc34c[4];this[_0xc34c[21]]= _0xc34c[4];this[_0xc34c[22]]= _0xc34c[4];this[_0xc34c[23]]= _0xc34c[4];this[_0xc34c[24]]= _0xc34c[4];this[_0xc34c[25]]= _0xc34c[4];this[_0xc34c[26]]= 0;this[_0xc34c[27]]= false;this[_0xc34c[28]]= _0xc34c[4];this[_0xc34c[29]]= {}}module[_0xc34c[30]]= QueueReport
\ No newline at end of file
+var _0x88a4=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x74\x79\x70\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x71\x75\x65\x75\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x6F\x75\x6E\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x68\x61\x6E\x6E\x65\x6C","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x61\x73\x73\x69\x67\x6E\x65\x64","\x6C\x61\x73\x74\x41\x73\x73\x69\x67\x6E\x65\x64\x54\x6F","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x88a4[0];function QueueReport(){this[_0x88a4[1]]= _0x88a4[2];this[_0x88a4[3]]= _0x88a4[4];this[_0x88a4[5]]= _0x88a4[4];this[_0x88a4[6]]= _0x88a4[4];this[_0x88a4[7]]= _0x88a4[4];this[_0x88a4[8]]= null;this[_0x88a4[9]]= null;this[_0x88a4[10]]= 1;this[_0x88a4[11]]= 1;this[_0x88a4[12]]= false;this[_0x88a4[13]]= null;this[_0x88a4[14]]= false;this[_0x88a4[15]]= null;this[_0x88a4[16]]= false;this[_0x88a4[17]]= null;this[_0x88a4[18]]= 1;this[_0x88a4[19]]= _0x88a4[4];this[_0x88a4[20]]= _0x88a4[4];this[_0x88a4[21]]= _0x88a4[4];this[_0x88a4[22]]= _0x88a4[4];this[_0x88a4[23]]= _0x88a4[4];this[_0x88a4[24]]= _0x88a4[4];this[_0x88a4[25]]= _0x88a4[4];this[_0x88a4[26]]= 0;this[_0x88a4[27]]= false;this[_0x88a4[28]]= _0x88a4[4];this[_0x88a4[29]]= {}}module[_0x88a4[30]]= QueueReport
\ No newline at end of file
index 868cf2e..996ee7f 100644 (file)
@@ -1 +1 @@
-var _0x1388=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x70\x61\x73\x73\x77\x6F\x72\x64","\x63\x6C\x69\x65\x6E\x74\x49\x64","\x63\x6C\x69\x65\x6E\x74\x53\x65\x63\x72\x65\x74","\x73\x65\x63\x75\x72\x69\x74\x79\x54\x6F\x6B\x65\x6E","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x1388[0];function SalesforceAccount(_0xcf1ax2){this[_0x1388[1]]= _0xcf1ax2[_0x1388[1]]|| 0;this[_0x1388[2]]= _0xcf1ax2[_0x1388[2]]|| _0x1388[3];this[_0x1388[4]]= _0xcf1ax2[_0x1388[4]]|| _0x1388[3];this[_0x1388[5]]= _0xcf1ax2[_0x1388[5]]|| _0x1388[3];this[_0x1388[6]]= _0xcf1ax2[_0x1388[6]]|| _0x1388[3];this[_0x1388[7]]= _0xcf1ax2[_0x1388[7]]|| _0x1388[3];this[_0x1388[8]]= _0xcf1ax2[_0x1388[8]]|| _0x1388[3];this[_0x1388[9]]= _0xcf1ax2[_0x1388[9]]|| _0x1388[3];this[_0x1388[10]]= _0xcf1ax2[_0x1388[10]]|| _0x1388[3];this[_0x1388[11]]= _0xcf1ax2[_0x1388[11]]|| {}}module[_0x1388[12]]= SalesforceAccount
\ No newline at end of file
+var _0x645c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x70\x61\x73\x73\x77\x6F\x72\x64","\x63\x6C\x69\x65\x6E\x74\x49\x64","\x63\x6C\x69\x65\x6E\x74\x53\x65\x63\x72\x65\x74","\x73\x65\x63\x75\x72\x69\x74\x79\x54\x6F\x6B\x65\x6E","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x645c[0];function SalesforceAccount(_0x4231x2){this[_0x645c[1]]= _0x4231x2[_0x645c[1]]|| 0;this[_0x645c[2]]= _0x4231x2[_0x645c[2]]|| _0x645c[3];this[_0x645c[4]]= _0x4231x2[_0x645c[4]]|| _0x645c[3];this[_0x645c[5]]= _0x4231x2[_0x645c[5]]|| _0x645c[3];this[_0x645c[6]]= _0x4231x2[_0x645c[6]]|| _0x645c[3];this[_0x645c[7]]= _0x4231x2[_0x645c[7]]|| _0x645c[3];this[_0x645c[8]]= _0x4231x2[_0x645c[8]]|| _0x645c[3];this[_0x645c[9]]= _0x4231x2[_0x645c[9]]|| _0x645c[3];this[_0x645c[10]]= _0x4231x2[_0x645c[10]]|| _0x645c[3];this[_0x645c[11]]= _0x4231x2[_0x645c[11]]|| {}}module[_0x645c[12]]= SalesforceAccount
\ No newline at end of file
index 4f1dc97..97656cc 100644 (file)
@@ -1 +1 @@
-var _0x7ee6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x7ee6[0];function SugarcrmAccount(_0xaf22x2){this[_0x7ee6[1]]= _0xaf22x2[_0x7ee6[1]]|| 0;this[_0x7ee6[2]]= _0xaf22x2[_0x7ee6[2]]|| _0x7ee6[3];this[_0x7ee6[4]]= _0xaf22x2[_0x7ee6[4]]|| _0x7ee6[3];this[_0x7ee6[5]]= _0xaf22x2[_0x7ee6[5]]|| _0x7ee6[3];this[_0x7ee6[6]]= _0xaf22x2[_0x7ee6[6]]|| _0x7ee6[3];this[_0x7ee6[7]]= _0xaf22x2[_0x7ee6[7]]|| _0x7ee6[3];this[_0x7ee6[8]]= _0xaf22x2[_0x7ee6[8]]|| {}}module[_0x7ee6[9]]= SugarcrmAccount
\ No newline at end of file
+var _0xd967=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xd967[0];function SugarcrmAccount(_0xb00dx2){this[_0xd967[1]]= _0xb00dx2[_0xd967[1]]|| 0;this[_0xd967[2]]= _0xb00dx2[_0xd967[2]]|| _0xd967[3];this[_0xd967[4]]= _0xb00dx2[_0xd967[4]]|| _0xd967[3];this[_0xd967[5]]= _0xb00dx2[_0xd967[5]]|| _0xd967[3];this[_0xd967[6]]= _0xb00dx2[_0xd967[6]]|| _0xd967[3];this[_0xd967[7]]= _0xb00dx2[_0xd967[7]]|| _0xd967[3];this[_0xd967[8]]= _0xb00dx2[_0xd967[8]]|| {}}module[_0xd967[9]]= SugarcrmAccount
\ No newline at end of file
index 010dbe2..0d61c6c 100644 (file)
@@ -1 +1 @@
-var _0x3a07=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x73\x74\x61\x74\x65","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x73\x74\x61\x74\x65\x54\x69\x6D\x65","\x73\x74\x61\x74\x75\x73","\x61\x64\x64\x72\x65\x73\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x3a07[0];function Telephone(_0x53f1x2){this[_0x3a07[1]]= _0x53f1x2[_0x3a07[1]]|| 0;this[_0x3a07[2]]= _0x53f1x2[_0x3a07[2]]|| _0x3a07[3];this[_0x3a07[4]]= _0x3a07[5];this[_0x3a07[6]]= 0;this[_0x3a07[7]]= _0x3a07[5];this[_0x3a07[8]]= _0x3a07[3]}module[_0x3a07[9]]= Telephone
\ No newline at end of file
+var _0xf325=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x73\x74\x61\x74\x65","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x73\x74\x61\x74\x65\x54\x69\x6D\x65","\x73\x74\x61\x74\x75\x73","\x61\x64\x64\x72\x65\x73\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xf325[0];function Telephone(_0x66d5x2){this[_0xf325[1]]= _0x66d5x2[_0xf325[1]]|| 0;this[_0xf325[2]]= _0x66d5x2[_0xf325[2]]|| _0xf325[3];this[_0xf325[4]]= _0xf325[5];this[_0xf325[6]]= 0;this[_0xf325[7]]= _0xf325[5];this[_0xf325[8]]= _0xf325[3]}module[_0xf325[9]]= Telephone
\ No newline at end of file
index 5c3015f..38dbab3 100644 (file)
@@ -1 +1 @@
-var _0x69f7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x73\x75\x62\x6A\x65\x63\x74","\x68\x74\x6D\x6C","\x65\x78\x70\x6F\x72\x74\x73"];_0x69f7[0];function template(_0x2d75x2){this[_0x69f7[1]]= _0x2d75x2[_0x69f7[1]]|| 0;this[_0x69f7[2]]= _0x2d75x2[_0x69f7[2]]|| _0x69f7[3];this[_0x69f7[4]]= _0x2d75x2[_0x69f7[4]]|| _0x69f7[3];this[_0x69f7[5]]= _0x2d75x2[_0x69f7[5]]|| _0x69f7[3]}module[_0x69f7[6]]= template
\ No newline at end of file
+var _0x9a29=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x73\x75\x62\x6A\x65\x63\x74","\x68\x74\x6D\x6C","\x65\x78\x70\x6F\x72\x74\x73"];_0x9a29[0];function template(_0x6ce2x2){this[_0x9a29[1]]= _0x6ce2x2[_0x9a29[1]]|| 0;this[_0x9a29[2]]= _0x6ce2x2[_0x9a29[2]]|| _0x9a29[3];this[_0x9a29[4]]= _0x6ce2x2[_0x9a29[4]]|| _0x9a29[3];this[_0x9a29[5]]= _0x6ce2x2[_0x9a29[5]]|| _0x9a29[3]}module[_0x9a29[6]]= template
\ No newline at end of file
index 44b4a68..f5ac151 100644 (file)
@@ -1 +1 @@
-var _0x677d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x61\x63\x74\x69\x76\x65","\x6E\x61\x6D\x65","","\x73\x74\x61\x74\x65","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x73\x74\x61\x74\x75\x73","\x72\x65\x67\x69\x73\x74\x72\x79","\x3A","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x70\x6C\x69\x74","\x68\x6F\x73\x74","\x70\x6F\x72\x74","\x64\x6F\x6D\x61\x69\x6E","\x64\x6F\x6D\x61\x69\x6E\x70\x6F\x72\x74","\x72\x65\x66\x72\x65\x73\x68","\x73\x74\x61\x74\x65\x52\x65\x67\x69\x73\x74\x72\x79","\x72\x65\x67\x69\x73\x74\x72\x61\x74\x69\x6F\x6E\x74\x69\x6D\x65","\x61\x64\x64\x72\x65\x73\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x677d[0];function Trunk(_0x9421x2){this[_0x677d[1]]= _0x9421x2[_0x677d[1]]|| 0;this[_0x677d[2]]= _0x9421x2[_0x677d[2]]|| false;this[_0x677d[3]]= _0x9421x2[_0x677d[3]]|| _0x677d[4];this[_0x677d[5]]= _0x677d[6];this[_0x677d[7]]= _0x677d[6];this[_0x677d[8]]= _0x9421x2[_0x677d[8]]&& _0x9421x2[_0x677d[8]][_0x677d[10]](_0x677d[9])?_0x9421x2[_0x677d[8]][_0x677d[11]](_0x677d[9])[0]:_0x677d[4];this[_0x677d[12]]= _0x677d[4];this[_0x677d[13]]= _0x677d[4];this[_0x677d[14]]= _0x677d[4];this[_0x677d[15]]= _0x677d[4];this[_0x677d[16]]= _0x677d[4];this[_0x677d[17]]= _0x677d[6];this[_0x677d[18]]= _0x677d[4];this[_0x677d[19]]= _0x677d[4]}module[_0x677d[20]]= Trunk
\ No newline at end of file
+var _0x390d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x61\x63\x74\x69\x76\x65","\x6E\x61\x6D\x65","","\x73\x74\x61\x74\x65","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x73\x74\x61\x74\x75\x73","\x72\x65\x67\x69\x73\x74\x72\x79","\x3A","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x70\x6C\x69\x74","\x68\x6F\x73\x74","\x70\x6F\x72\x74","\x64\x6F\x6D\x61\x69\x6E","\x64\x6F\x6D\x61\x69\x6E\x70\x6F\x72\x74","\x72\x65\x66\x72\x65\x73\x68","\x73\x74\x61\x74\x65\x52\x65\x67\x69\x73\x74\x72\x79","\x72\x65\x67\x69\x73\x74\x72\x61\x74\x69\x6F\x6E\x74\x69\x6D\x65","\x61\x64\x64\x72\x65\x73\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x390d[0];function Trunk(_0x614ax2){this[_0x390d[1]]= _0x614ax2[_0x390d[1]]|| 0;this[_0x390d[2]]= _0x614ax2[_0x390d[2]]|| false;this[_0x390d[3]]= _0x614ax2[_0x390d[3]]|| _0x390d[4];this[_0x390d[5]]= _0x390d[6];this[_0x390d[7]]= _0x390d[6];this[_0x390d[8]]= _0x614ax2[_0x390d[8]]&& _0x614ax2[_0x390d[8]][_0x390d[10]](_0x390d[9])?_0x614ax2[_0x390d[8]][_0x390d[11]](_0x390d[9])[0]:_0x390d[4];this[_0x390d[12]]= _0x390d[4];this[_0x390d[13]]= _0x390d[4];this[_0x390d[14]]= _0x390d[4];this[_0x390d[15]]= _0x390d[4];this[_0x390d[16]]= _0x390d[4];this[_0x390d[17]]= _0x390d[6];this[_0x390d[18]]= _0x390d[4];this[_0x390d[19]]= _0x390d[4]}module[_0x390d[20]]= Trunk
\ No newline at end of file
index 33bdb5e..39830ad 100644 (file)
@@ -1 +1 @@
-var _0x9142=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x6E\x6F\x74\x5F\x69\x6E\x75\x73\x65","\x69\x6E\x75\x73\x65","\x62\x75\x73\x79","\x69\x6E\x76\x61\x6C\x69\x64","\x75\x6E\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x72\x69\x6E\x67\x69\x6E\x67","\x72\x69\x6E\x67\x69\x6E\x75\x73\x65","\x6F\x6E\x68\x6F\x6C\x64","\x69\x64","\x6E\x61\x6D\x65","","\x6D\x6F\x6E\x69\x74\x6F\x72\x5F\x66\x6F\x72\x6D\x61\x74","\x74\x79\x70\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x77\x61\x69\x74\x69\x6E\x67","\x74\x61\x6C\x6B\x69\x6E\x67","\x74\x6F\x74\x61\x6C","\x61\x6E\x73\x77\x65\x72\x65\x64","\x73\x75\x6D\x44\x75\x72\x61\x74\x69\x6F\x6E","\x73\x75\x6D\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x73\x75\x6D\x42\x69\x6C\x6C\x61\x62\x6C\x65","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x6C\x6F\x67\x67\x65\x64\x49\x6E","\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x61\x63\x77","\x61\x63\x77\x54\x69\x6D\x65\x6F\x75\x74","\x61\x75\x74\x6F\x50\x61\x75\x73\x65","\x61\x75\x74\x6F\x70\x61\x75\x73\x65","\x61\x6C\x6C","\x6D\x65\x73\x73\x61\x67\x65","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x41\x63\x74\x69\x76\x65","\x64\x69\x61\x6C\x4D\x65\x74\x68\x6F\x64","\x70\x72\x65\x76\x69\x65\x77","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x43\x68\x61\x6E\x6E\x65\x6C","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x51\x75\x65\x75\x65","\x64\x69\x61\x6C\x50\x6F\x77\x65\x72\x4C\x65\x76\x65\x6C","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E","\x64\x72\x6F\x70\x52\x61\x74\x65","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E\x50\x65\x72\x63\x65\x6E\x74\x61\x67\x65","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x61\x6E\x6F\x6E\x79\x6D\x6F\x75\x73","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x4F\x70\x74\x69\x6F\x6E\x73","\x74\x54\x78\x58","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x50\x72\x6F\x6A\x65\x63\x74","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x54\x72\x75\x6E\x6B","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x41\x67\x69\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x75\x73\x79\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x53\x75\x63\x68\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x55\x6E\x6B\x6E\x6F\x77\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x46\x61\x69\x6C\x75\x72\x65\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x54\x69\x6D\x65\x6F\x75\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x41\x43\x53","\x73\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65","\x73\x74\x61\x72\x74\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x4D\x75\x6C\x74\x69\x70\x6C\x69\x63\x61\x74\x69\x76\x65\x46\x61\x63\x74\x6F\x72","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x6E\x73\x77\x65\x72\x65\x64\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x54\x69\x6D\x65\x6F\x75\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x48\x6F\x6C\x64\x74\x69\x6D\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x54\x61\x6C\x6B\x74\x69\x6D\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x50\x61\x75\x73\x65\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x4C\x6F\x77\x65\x72\x4C\x69\x6D\x69\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x45\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x45\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x48\x69\x74\x52\x61\x74\x65","\x65\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73","\x65\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x54\x6F\x53\x65\x63\x6F\x6E\x64","\x65\x72\x6C\x61\x6E\x67\x41\x62\x61\x6E\x64\x6F\x6E\x6D\x65\x6E\x74\x52\x61\x74\x65","\x65\x72\x6C\x61\x6E\x67\x42\x75\x73\x79\x46\x61\x63\x74\x6F\x72","\x65\x78\x70\x6F\x72\x74\x73"];_0x9142[0];var statusDesc=[_0x9142[1],_0x9142[2],_0x9142[3],_0x9142[4],_0x9142[5],_0x9142[6],_0x9142[7],_0x9142[8],_0x9142[9]];function VoiceQueue(_0xc54ax3){this[_0x9142[10]]= _0xc54ax3[_0x9142[10]]|| 0;this[_0x9142[11]]= _0xc54ax3[_0x9142[11]]|| _0x9142[12];this[_0x9142[13]]= _0xc54ax3[_0x9142[13]]|| _0x9142[12];this[_0x9142[14]]= _0xc54ax3[_0x9142[14]]|| _0x9142[15];this[_0x9142[16]]= 0;this[_0x9142[17]]= 0;this[_0x9142[18]]= 0;this[_0x9142[19]]= 0;this[_0x9142[20]]= 0;this[_0x9142[21]]= 0;this[_0x9142[22]]= 0;this[_0x9142[23]]= 0;this[_0x9142[24]]= 0;this[_0x9142[25]]= 0;this[_0x9142[26]]= _0xc54ax3[_0x9142[26]]|| false;this[_0x9142[27]]= _0xc54ax3[_0x9142[27]]|| 10;this[_0x9142[28]]= _0xc54ax3[_0x9142[29]]=== _0x9142[30]?true:false;this[_0x9142[31]]= _0x9142[12];this[_0x9142[32]]= 0;this[_0x9142[33]]= _0xc54ax3[_0x9142[33]]|| null;this[_0x9142[34]]= _0xc54ax3[_0x9142[34]]?_0xc54ax3[_0x9142[34]]:null;this[_0x9142[35]]= _0xc54ax3[_0x9142[35]];this[_0x9142[36]]= _0xc54ax3[_0x9142[36]]|| _0x9142[37];this[_0x9142[38]]= _0xc54ax3[_0x9142[38]]|| 0;this[_0x9142[39]]= _0xc54ax3[_0x9142[39]]|| 0;this[_0x9142[40]]= _0xc54ax3[_0x9142[40]]|| 1;this[_0x9142[41]]= _0xc54ax3[_0x9142[41]]|| _0x9142[42];this[_0x9142[43]]= _0xc54ax3[_0x9142[43]]|| 0.03;this[_0x9142[44]]= _0xc54ax3[_0x9142[44]]|| 600;this[_0x9142[45]]= _0xc54ax3[_0x9142[45]]|| _0x9142[46];this[_0x9142[47]]= _0xc54ax3[_0x9142[47]]|| _0x9142[46];this[_0x9142[48]]= _0xc54ax3[_0x9142[48]]|| 30;this[_0x9142[49]]= _0xc54ax3[_0x9142[49]]|| _0x9142[50];this[_0x9142[51]]= _0xc54ax3[_0x9142[51]]|| 3;this[_0x9142[52]]= _0xc54ax3[_0x9142[52]]|| undefined;this[_0x9142[53]]= _0xc54ax3[_0x9142[53]]|| 3;this[_0x9142[54]]= _0xc54ax3[_0x9142[54]]|| 150;this[_0x9142[55]]= _0xc54ax3[_0x9142[55]]|| 3;this[_0x9142[56]]= _0xc54ax3[_0x9142[56]]|| 150;this[_0x9142[57]]= _0xc54ax3[_0x9142[57]]|| 3;this[_0x9142[58]]= _0xc54ax3[_0x9142[58]]|| 150;this[_0x9142[59]]= _0xc54ax3[_0x9142[59]]|| 4;this[_0x9142[60]]= _0xc54ax3[_0x9142[60]]?_0xc54ax3[_0x9142[60]]:undefined;this[_0x9142[61]]= _0xc54ax3[_0x9142[61]]?_0xc54ax3[_0x9142[61]]:undefined;this[_0x9142[62]]= _0xc54ax3[_0x9142[62]]?_0xc54ax3[_0x9142[62]]:undefined;this[_0x9142[63]]= 0;this[_0x9142[64]]= 0;this[_0x9142[65]]= 0;this[_0x9142[66]]= 0;this[_0x9142[67]]= 0;this[_0x9142[68]]= 0;this[_0x9142[69]]= 0;this[_0x9142[70]]= 0;this[_0x9142[71]]= 0;this[_0x9142[72]]= 0;this[_0x9142[73]]= 0;this[_0x9142[74]]= 0;this[_0x9142[75]]= undefined;this[_0x9142[76]]= undefined;this[_0x9142[77]]= undefined;this[_0x9142[78]]= 1.5;this[_0x9142[79]]= 0;this[_0x9142[80]]= 0;this[_0x9142[81]]= 0;this[_0x9142[82]]= 0;this[_0x9142[83]]= 0.0;this[_0x9142[84]]= 0.0;this[_0x9142[85]]= 0;this[_0x9142[86]]= 0.4;this[_0x9142[87]]= 0;this[_0x9142[88]]= 0;this[_0x9142[89]]= 1;this[_0x9142[90]]= 0;this[_0x9142[91]]= 0.0;this[_0x9142[92]]= 0.0;this[_0x9142[93]]= 0.0}module[_0x9142[94]]= VoiceQueue
\ No newline at end of file
+var _0xece8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x6E\x6F\x74\x5F\x69\x6E\x75\x73\x65","\x69\x6E\x75\x73\x65","\x62\x75\x73\x79","\x69\x6E\x76\x61\x6C\x69\x64","\x75\x6E\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x72\x69\x6E\x67\x69\x6E\x67","\x72\x69\x6E\x67\x69\x6E\x75\x73\x65","\x6F\x6E\x68\x6F\x6C\x64","\x69\x64","\x6E\x61\x6D\x65","","\x6D\x6F\x6E\x69\x74\x6F\x72\x5F\x66\x6F\x72\x6D\x61\x74","\x74\x79\x70\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x77\x61\x69\x74\x69\x6E\x67","\x74\x61\x6C\x6B\x69\x6E\x67","\x74\x6F\x74\x61\x6C","\x61\x6E\x73\x77\x65\x72\x65\x64","\x73\x75\x6D\x44\x75\x72\x61\x74\x69\x6F\x6E","\x73\x75\x6D\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x73\x75\x6D\x42\x69\x6C\x6C\x61\x62\x6C\x65","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x6C\x6F\x67\x67\x65\x64\x49\x6E","\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x61\x63\x77","\x61\x63\x77\x54\x69\x6D\x65\x6F\x75\x74","\x61\x75\x74\x6F\x50\x61\x75\x73\x65","\x61\x75\x74\x6F\x70\x61\x75\x73\x65","\x61\x6C\x6C","\x6D\x65\x73\x73\x61\x67\x65","\x6F\x72\x69\x67\x69\x6E\x61\x74\x65\x64","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x41\x63\x74\x69\x76\x65","\x64\x69\x61\x6C\x4D\x65\x74\x68\x6F\x64","\x70\x72\x65\x76\x69\x65\x77","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x43\x68\x61\x6E\x6E\x65\x6C","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x51\x75\x65\x75\x65","\x64\x69\x61\x6C\x50\x6F\x77\x65\x72\x4C\x65\x76\x65\x6C","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E","\x64\x72\x6F\x70\x52\x61\x74\x65","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E\x50\x65\x72\x63\x65\x6E\x74\x61\x67\x65","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x61\x6E\x6F\x6E\x79\x6D\x6F\x75\x73","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x4F\x70\x74\x69\x6F\x6E\x73","\x74\x54\x78\x58","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x50\x72\x6F\x6A\x65\x63\x74","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x54\x72\x75\x6E\x6B","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x41\x67\x69\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x75\x73\x79\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x53\x75\x63\x68\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x55\x6E\x6B\x6E\x6F\x77\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x46\x61\x69\x6C\x75\x72\x65\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x54\x69\x6D\x65\x6F\x75\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x41\x43\x53","\x73\x74\x61\x72\x74\x50\x72\x6F\x67\x72\x65\x73\x73\x69\x76\x65","\x73\x74\x61\x72\x74\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x68\x61\x6E\x64\x6C\x65\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x4D\x75\x6C\x74\x69\x70\x6C\x69\x63\x61\x74\x69\x76\x65\x46\x61\x63\x74\x6F\x72","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x54\x6F\x74\x61\x6C\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x6E\x73\x77\x65\x72\x65\x64\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73\x54\x69\x6D\x65\x6F\x75\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x48\x6F\x6C\x64\x74\x69\x6D\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x41\x76\x67\x54\x61\x6C\x6B\x74\x69\x6D\x65","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x50\x61\x75\x73\x65\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x4C\x6F\x77\x65\x72\x4C\x69\x6D\x69\x74","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x45\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x45\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73\x44\x72\x6F\x70\x70\x65\x64\x43\x61\x6C\x6C\x73","\x70\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C\x48\x69\x74\x52\x61\x74\x65","\x65\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x73","\x65\x72\x6C\x61\x6E\x67\x43\x61\x6C\x6C\x54\x6F\x53\x65\x63\x6F\x6E\x64","\x65\x72\x6C\x61\x6E\x67\x41\x62\x61\x6E\x64\x6F\x6E\x6D\x65\x6E\x74\x52\x61\x74\x65","\x65\x72\x6C\x61\x6E\x67\x42\x75\x73\x79\x46\x61\x63\x74\x6F\x72","\x65\x78\x70\x6F\x72\x74\x73"];_0xece8[0];var statusDesc=[_0xece8[1],_0xece8[2],_0xece8[3],_0xece8[4],_0xece8[5],_0xece8[6],_0xece8[7],_0xece8[8],_0xece8[9]];function VoiceQueue(_0x87bfx3){this[_0xece8[10]]= _0x87bfx3[_0xece8[10]]|| 0;this[_0xece8[11]]= _0x87bfx3[_0xece8[11]]|| _0xece8[12];this[_0xece8[13]]= _0x87bfx3[_0xece8[13]]|| _0xece8[12];this[_0xece8[14]]= _0x87bfx3[_0xece8[14]]|| _0xece8[15];this[_0xece8[16]]= 0;this[_0xece8[17]]= 0;this[_0xece8[18]]= 0;this[_0xece8[19]]= 0;this[_0xece8[20]]= 0;this[_0xece8[21]]= 0;this[_0xece8[22]]= 0;this[_0xece8[23]]= 0;this[_0xece8[24]]= 0;this[_0xece8[25]]= 0;this[_0xece8[26]]= _0x87bfx3[_0xece8[26]]|| false;this[_0xece8[27]]= _0x87bfx3[_0xece8[27]]|| 10;this[_0xece8[28]]= _0x87bfx3[_0xece8[29]]=== _0xece8[30]?true:false;this[_0xece8[31]]= _0xece8[12];this[_0xece8[32]]= 0;this[_0xece8[33]]= _0x87bfx3[_0xece8[33]]|| null;this[_0xece8[34]]= _0x87bfx3[_0xece8[34]]?_0x87bfx3[_0xece8[34]]:null;this[_0xece8[35]]= _0x87bfx3[_0xece8[35]];this[_0xece8[36]]= _0x87bfx3[_0xece8[36]]|| _0xece8[37];this[_0xece8[38]]= _0x87bfx3[_0xece8[38]]|| 0;this[_0xece8[39]]= _0x87bfx3[_0xece8[39]]|| 0;this[_0xece8[40]]= _0x87bfx3[_0xece8[40]]|| 1;this[_0xece8[41]]= _0x87bfx3[_0xece8[41]]|| _0xece8[42];this[_0xece8[43]]= _0x87bfx3[_0xece8[43]]|| 0.03;this[_0xece8[44]]= _0x87bfx3[_0xece8[44]]|| 600;this[_0xece8[45]]= _0x87bfx3[_0xece8[45]]|| _0xece8[46];this[_0xece8[47]]= _0x87bfx3[_0xece8[47]]|| _0xece8[46];this[_0xece8[48]]= _0x87bfx3[_0xece8[48]]|| 30;this[_0xece8[49]]= _0x87bfx3[_0xece8[49]]|| _0xece8[50];this[_0xece8[51]]= _0x87bfx3[_0xece8[51]]|| 3;this[_0xece8[52]]= _0x87bfx3[_0xece8[52]]|| undefined;this[_0xece8[53]]= _0x87bfx3[_0xece8[53]]|| 3;this[_0xece8[54]]= _0x87bfx3[_0xece8[54]]|| 150;this[_0xece8[55]]= _0x87bfx3[_0xece8[55]]|| 3;this[_0xece8[56]]= _0x87bfx3[_0xece8[56]]|| 150;this[_0xece8[57]]= _0x87bfx3[_0xece8[57]]|| 3;this[_0xece8[58]]= _0x87bfx3[_0xece8[58]]|| 150;this[_0xece8[59]]= _0x87bfx3[_0xece8[59]]|| 4;this[_0xece8[60]]= _0x87bfx3[_0xece8[60]]?_0x87bfx3[_0xece8[60]]:undefined;this[_0xece8[61]]= _0x87bfx3[_0xece8[61]]?_0x87bfx3[_0xece8[61]]:undefined;this[_0xece8[62]]= _0x87bfx3[_0xece8[62]]?_0x87bfx3[_0xece8[62]]:undefined;this[_0xece8[63]]= 0;this[_0xece8[64]]= 0;this[_0xece8[65]]= 0;this[_0xece8[66]]= 0;this[_0xece8[67]]= 0;this[_0xece8[68]]= 0;this[_0xece8[69]]= 0;this[_0xece8[70]]= 0;this[_0xece8[71]]= 0;this[_0xece8[72]]= 0;this[_0xece8[73]]= 0;this[_0xece8[74]]= 0;this[_0xece8[75]]= undefined;this[_0xece8[76]]= undefined;this[_0xece8[77]]= undefined;this[_0xece8[78]]= 1.5;this[_0xece8[79]]= 0;this[_0xece8[80]]= 0;this[_0xece8[81]]= 0;this[_0xece8[82]]= 0;this[_0xece8[83]]= 0.0;this[_0xece8[84]]= 0.0;this[_0xece8[85]]= 0;this[_0xece8[86]]= 0.4;this[_0xece8[87]]= 0;this[_0xece8[88]]= 0;this[_0xece8[89]]= 1;this[_0xece8[90]]= 0;this[_0xece8[91]]= 0.0;this[_0xece8[92]]= 0.0;this[_0xece8[93]]= 0.0}module[_0xece8[94]]= VoiceQueue
\ No newline at end of file
index 6d22a5e..352eea9 100644 (file)
@@ -1 +1 @@
-var _0xa772=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x73\x74\x61\x74\x75\x73","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x63\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xa772[0];function VoiceTrigger(_0x26c9x2){this[_0xa772[1]]= _0x26c9x2[_0xa772[1]]|| 0;this[_0xa772[2]]= _0x26c9x2[_0xa772[2]]|| _0xa772[3];this[_0xa772[4]]= _0x26c9x2[_0xa772[4]]|| false;this[_0xa772[5]]= _0x26c9x2[_0xa772[5]]|| [];this[_0xa772[6]]= _0x26c9x2[_0xa772[6]]|| [];this[_0xa772[7]]= _0x26c9x2[_0xa772[7]]|| []}module[_0xa772[8]]= VoiceTrigger
\ No newline at end of file
+var _0xa3c0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x73\x74\x61\x74\x75\x73","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x63\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xa3c0[0];function VoiceTrigger(_0x7cabx2){this[_0xa3c0[1]]= _0x7cabx2[_0xa3c0[1]]|| 0;this[_0xa3c0[2]]= _0x7cabx2[_0xa3c0[2]]|| _0xa3c0[3];this[_0xa3c0[4]]= _0x7cabx2[_0xa3c0[4]]|| false;this[_0xa3c0[5]]= _0x7cabx2[_0xa3c0[5]]|| [];this[_0xa3c0[6]]= _0x7cabx2[_0xa3c0[6]]|| [];this[_0xa3c0[7]]= _0x7cabx2[_0xa3c0[7]]|| []}module[_0xa3c0[8]]= VoiceTrigger
\ No newline at end of file
index 01c4ded..e38f7fe 100644 (file)
@@ -1 +1 @@
-var _0x4de6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x74\x6F\x6B\x65\x6E","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x61\x75\x74\x68\x54\x79\x70\x65","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x4de6[0];function ZendeskAccount(_0x5a01x2){this[_0x4de6[1]]= _0x5a01x2[_0x4de6[1]]|| 0;this[_0x4de6[2]]= _0x5a01x2[_0x4de6[2]]|| _0x4de6[3];this[_0x4de6[4]]= _0x5a01x2[_0x4de6[4]]|| _0x4de6[3];this[_0x4de6[5]]= _0x5a01x2[_0x4de6[5]]|| _0x4de6[3];this[_0x4de6[6]]= _0x5a01x2[_0x4de6[6]]|| _0x4de6[3];this[_0x4de6[7]]= _0x5a01x2[_0x4de6[7]]|| _0x4de6[3];this[_0x4de6[8]]= _0x5a01x2[_0x4de6[8]]|| _0x4de6[3];this[_0x4de6[9]]= _0x5a01x2[_0x4de6[9]]|| _0x4de6[3];this[_0x4de6[10]]= _0x5a01x2[_0x4de6[10]]|| {}}module[_0x4de6[11]]= ZendeskAccount
\ No newline at end of file
+var _0x8442=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x64","\x6E\x61\x6D\x65","","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x74\x6F\x6B\x65\x6E","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x61\x75\x74\x68\x54\x79\x70\x65","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0x8442[0];function ZendeskAccount(_0x668dx2){this[_0x8442[1]]= _0x668dx2[_0x8442[1]]|| 0;this[_0x8442[2]]= _0x668dx2[_0x8442[2]]|| _0x8442[3];this[_0x8442[4]]= _0x668dx2[_0x8442[4]]|| _0x8442[3];this[_0x8442[5]]= _0x668dx2[_0x8442[5]]|| _0x8442[3];this[_0x8442[6]]= _0x668dx2[_0x8442[6]]|| _0x8442[3];this[_0x8442[7]]= _0x668dx2[_0x8442[7]]|| _0x8442[3];this[_0x8442[8]]= _0x668dx2[_0x8442[8]]|| _0x8442[3];this[_0x8442[9]]= _0x668dx2[_0x8442[9]]|| _0x8442[3];this[_0x8442[10]]= _0x668dx2[_0x8442[10]]|| {}}module[_0x8442[11]]= ZendeskAccount
\ No newline at end of file
index 14fcf3e..c1a70a4 100644 (file)
@@ -1 +1 @@
-var _0x2250=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x71\x75\x65\x75\x65\x61\x64\x64","\x73\x74\x72\x69\x6E\x67","\x6E\x75\x6D\x62\x65\x72","\x62\x6F\x6F\x6C\x65\x61\x6E","\x71\x75\x65\x75\x65\x72\x65\x6D\x6F\x76\x65","\x71\x75\x65\x75\x65\x70\x61\x75\x73\x65","\x72\x65\x6C\x6F\x61\x64","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C\x68\x61\x6E\x67\x75\x70","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C\x72\x65\x64\x69\x72\x65\x63\x74"];_0x2250[0];exports[_0x2250[1]]= {queue:{type:_0x2250[2],required:true},interface:{type:_0x2250[2],required:true},membername:{type:_0x2250[2],required:true},penalty:{type:_0x2250[3],required:false},paused:{type:_0x2250[4],required:false}};exports[_0x2250[5]]= {queue:{type:_0x2250[2],required:true},interface:{type:_0x2250[2],required:true}};exports[_0x2250[6]]= {interface:{type:_0x2250[2],required:true},paused:{type:_0x2250[4]},reason:{type:_0x2250[2],required:false}};exports[_0x2250[7]]= {module:{type:_0x2250[2],required:false}};exports[_0x2250[8]]= {uniqueid:{type:_0x2250[2],required:true}};exports[_0x2250[9]]= {uniqueid:{type:_0x2250[2],required:true}};exports[_0x2250[10]]= {uniqueid:{type:_0x2250[2],required:true},exten:{type:_0x2250[2],required:true}}
\ No newline at end of file
+var _0xf19f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x71\x75\x65\x75\x65\x61\x64\x64","\x73\x74\x72\x69\x6E\x67","\x6E\x75\x6D\x62\x65\x72","\x62\x6F\x6F\x6C\x65\x61\x6E","\x71\x75\x65\x75\x65\x72\x65\x6D\x6F\x76\x65","\x71\x75\x65\x75\x65\x70\x61\x75\x73\x65","\x72\x65\x6C\x6F\x61\x64","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C\x68\x61\x6E\x67\x75\x70","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C\x72\x65\x64\x69\x72\x65\x63\x74"];_0xf19f[0];exports[_0xf19f[1]]= {queue:{type:_0xf19f[2],required:true},interface:{type:_0xf19f[2],required:true},membername:{type:_0xf19f[2],required:true},penalty:{type:_0xf19f[3],required:false},paused:{type:_0xf19f[4],required:false}};exports[_0xf19f[5]]= {queue:{type:_0xf19f[2],required:true},interface:{type:_0xf19f[2],required:true}};exports[_0xf19f[6]]= {interface:{type:_0xf19f[2],required:true},paused:{type:_0xf19f[4]},reason:{type:_0xf19f[2],required:false}};exports[_0xf19f[7]]= {module:{type:_0xf19f[2],required:false}};exports[_0xf19f[8]]= {uniqueid:{type:_0xf19f[2],required:true}};exports[_0xf19f[9]]= {uniqueid:{type:_0xf19f[2],required:true}};exports[_0xf19f[10]]= {uniqueid:{type:_0xf19f[2],required:true},exten:{type:_0xf19f[2],required:true}}
\ No newline at end of file
index 41bca2c..cf4b640 100644 (file)
@@ -1 +1 @@
-var _0xaab2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x61\x67\x65\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x74\x72\x75\x6E\x6B","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x76\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x7A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x73\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x61\x67\x65\x6E\x74\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x72\x75\x6E\x6B\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x76\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x71\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x74\x69\x6D\x65\x72\x73","\x7A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x73\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x6E\x61\x6D\x65","\x6D\x61\x70\x4B\x65\x79\x73","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x6D\x65\x72\x67\x65\x46\x72\x6F\x6D\x44\x61\x74\x61\x62\x61\x73\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x6E\x69\x74\x41\x67\x65\x6E\x74\x73","\x6C\x65\x6E\x67\x74\x68","\x53\x49\x50\x2F\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x69\x6E\x69\x74\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x69\x6E\x69\x74\x54\x72\x75\x6E\x6B\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x69\x64","\x69\x6E\x69\x74\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x69\x6E\x69\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x6D\x65\x72\x67\x65","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x75\x6E\x69\x71\x75\x65\x69\x64","\x67\x72\x6F\x75\x70\x42\x79","\x71\x75\x65\x75\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x73\x75\x6D\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x73\x75\x6D\x44\x75\x72\x61\x74\x69\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x74\x6F\x74\x61\x6C","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x61\x6E\x73\x77\x65\x72\x65\x64","\x73\x75\x6D\x42\x69\x6C\x6C\x61\x62\x6C\x65","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x41\x4E\x53\x57\x45\x52\x45\x44","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x69\x6E\x69\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x69\x6E\x69\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x65\x78\x70\x6F\x72\x74\x73"];_0xaab2[0];var BPromise=require(_0xaab2[1]);var util=require(_0xaab2[2]);var _=require(_0xaab2[3]);var moment=require(_0xaab2[4]);var Agent=require(_0xaab2[5]);var Telephone=require(_0xaab2[6]);var Trunk=require(_0xaab2[7]);var VoiceQueue=require(_0xaab2[8]);var VoiceTrigger=require(_0xaab2[9]);var Template=require(_0xaab2[10]);var Campaign=require(_0xaab2[11]);var ZendeskAccount=require(_0xaab2[12]);var SalesforceAccount=require(_0xaab2[13]);var FreshdeskAccount=require(_0xaab2[14]);var SugarcrmAccount=require(_0xaab2[15]);var Realtime=function(){this[_0xaab2[16]]= {};this[_0xaab2[17]]= {};this[_0xaab2[18]]= {};this[_0xaab2[19]]= {};this[_0xaab2[20]]= {};this[_0xaab2[21]]= {};this[_0xaab2[22]]= {};this[_0xaab2[23]]= {total:0,answered:0,sumHoldTime:0,sumDuration:0,sumBillable:0};this[_0xaab2[24]]= {};this[_0xaab2[25]]= {};this[_0xaab2[26]]= {};this[_0xaab2[27]]= {};this[_0xaab2[28]]= {};this[_0xaab2[29]]= {};this[_0xaab2[30]]= {};this[_0xaab2[31]]= {}};function freeIsNotKey(_0xa4a0x12,_0xa4a0x13){var _0xa4a0x14=_[_0xaab2[33]](_0xa4a0x12,function(_0xa4a0x15,_0xa4a0x16){return _0xa4a0x15[_0xaab2[32]]});for(var _0xa4a0x16 in _0xa4a0x13){if(_0xa4a0x13[_0xaab2[34]](_0xa4a0x16)){if(!_0xa4a0x14[_0xa4a0x16]){delete _0xa4a0x13[_0xa4a0x16]}}}}Realtime[_0xaab2[36]][_0xaab2[35]]= function(_0xa4a0x17,_0xa4a0x18){for(var _0xa4a0x16 in _0xa4a0x18){if(_0xa4a0x17[_0xaab2[34]](_0xa4a0x16)){_0xa4a0x17[_0xa4a0x16]= _0xa4a0x18[_0xa4a0x16]}}};Realtime[_0xaab2[36]][_0xaab2[37]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x1b={},_0xa4a0x1c={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x1b= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[16]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1b[_0xaab2[32]])])){_0xa4a0x19[_0xaab2[16]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1b[_0xaab2[32]])]=  new Agent(_0xa4a0x1b)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[16]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1b[_0xaab2[32]])],_0xa4a0x1b)}}};return _0xa4a0x19[_0xaab2[16]]}};Realtime[_0xaab2[36]][_0xaab2[42]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x1d={},_0xa4a0x1e={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x1d= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[17]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1d[_0xaab2[32]])])){_0xa4a0x19[_0xaab2[17]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1d[_0xaab2[32]])]=  new Telephone(_0xa4a0x1d)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[17]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1d[_0xaab2[32]])],_0xa4a0x1d)}}};return _0xa4a0x19[_0xaab2[17]]}};Realtime[_0xaab2[36]][_0xaab2[43]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x1f={},_0xa4a0x20={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x1f= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[18]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1f[_0xaab2[32]])])){_0xa4a0x19[_0xaab2[18]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1f[_0xaab2[32]])]=  new Trunk(_0xa4a0x1f)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[18]][util[_0xaab2[40]](_0xaab2[39],_0xa4a0x1f[_0xaab2[32]])],_0xa4a0x1f)}}};return _0xa4a0x19[_0xaab2[18]]}};Realtime[_0xaab2[36]][_0xaab2[44]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){freeIsNotKey(_0xa4a0x12,_0xa4a0x19[_0xaab2[19]]);for(var _0xa4a0x1a=0,_0xa4a0x21={},_0xa4a0x22={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x21= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[19]][_0xa4a0x21[_0xaab2[32]]])){_0xa4a0x19[_0xaab2[19]][_0xa4a0x21[_0xaab2[32]]]=  new VoiceQueue(_0xa4a0x21)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[19]][_0xa4a0x21[_0xaab2[32]]],_0xa4a0x21)}}};return _0xa4a0x19[_0xaab2[19]]}};Realtime[_0xaab2[36]][_0xaab2[45]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x23={},_0xa4a0x24={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x23= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[20]][_0xa4a0x23[_0xaab2[46]]])){_0xa4a0x19[_0xaab2[20]][_0xa4a0x23[_0xaab2[46]]]=  new VoiceTrigger(_0xa4a0x23)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[20]][_0xa4a0x23[_0xaab2[46]]],_0xa4a0x23)}}};return _0xa4a0x19[_0xaab2[20]]}};Realtime[_0xaab2[36]][_0xaab2[47]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x25={},_0xa4a0x26={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x25= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[22]][_0xa4a0x25[_0xaab2[46]]])){_0xa4a0x19[_0xaab2[22]][_0xa4a0x25[_0xaab2[46]]]=  new Template(_0xa4a0x25)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[22]][_0xa4a0x25[_0xaab2[46]]],_0xa4a0x25)}}};return _0xa4a0x19[_0xaab2[22]]}};Realtime[_0xaab2[36]][_0xaab2[48]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x27={},_0xa4a0x28={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x27= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[28]][_0xa4a0x27[_0xaab2[46]]])){_0xa4a0x19[_0xaab2[28]][_0xa4a0x27[_0xaab2[46]]]=  new ZendeskAccount(_0xa4a0x27)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[28]][_0xa4a0x27[_0xaab2[46]]],_0xa4a0x27)}}};return _0xa4a0x19[_0xaab2[28]]}};Realtime[_0xaab2[36]][_0xaab2[49]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x29={},_0xa4a0x2a={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x29= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[29]][_0xa4a0x29[_0xaab2[46]]])){_0xa4a0x19[_0xaab2[29]][_0xa4a0x29[_0xaab2[46]]]=  new SalesforceAccount(_0xa4a0x29)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[29]][_0xa4a0x29[_0xaab2[46]]],_0xa4a0x29)}}};return _0xa4a0x19[_0xaab2[29]]}};Realtime[_0xaab2[36]][_0xaab2[50]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x2b={},_0xa4a0x2c={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x2b= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[31]][_0xa4a0x2b[_0xaab2[46]]])){_0xa4a0x19[_0xaab2[31]][_0xa4a0x2b[_0xaab2[46]]]=  new FreshdeskAccount(_0xa4a0x2b)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[31]][_0xa4a0x2b[_0xaab2[46]]],_0xa4a0x2b)}}};return _0xa4a0x19[_0xaab2[31]]}};Realtime[_0xaab2[36]][_0xaab2[51]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0,_0xa4a0x2d={},_0xa4a0x2e={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x2d= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[30]][_0xa4a0x2d[_0xaab2[46]]])){_0xa4a0x19[_0xaab2[30]][_0xa4a0x2d[_0xaab2[46]]]=  new SugarcrmAccount(_0xa4a0x2d)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[30]][_0xa4a0x2d[_0xaab2[46]]],_0xa4a0x2d)}}};return _0xa4a0x19[_0xaab2[30]]}};Realtime[_0xaab2[36]][_0xaab2[52]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){for(var _0xa4a0x1a=0;_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_[_0xaab2[53]](_0xa4a0x19[_0xaab2[19]][_0xa4a0x12[_0xa4a0x1a][_0xaab2[32]]],_0xa4a0x12[_0xa4a0x1a])};return _0xa4a0x19[_0xaab2[19]]}};Realtime[_0xaab2[36]][_0xaab2[54]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){_0xa4a0x12= _[_0xaab2[56]](_0xa4a0x12,_0xaab2[55]);for(var _0xa4a0x16 in _0xa4a0x12){if(_0xa4a0x12[_0xaab2[34]](_0xa4a0x16)){var _0xa4a0x15={};for(var _0xa4a0x1a=0;_0xa4a0x1a< _0xa4a0x12[_0xa4a0x16][_0xaab2[38]];_0xa4a0x1a+= 1){var _0xa4a0x2f=_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[57]];if(_0xa4a0x19[_0xaab2[19]][_0xa4a0x2f]){if(_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[58]]){_0xa4a0x19[_0xaab2[19]][_0xa4a0x2f][_0xaab2[59]]+= 1};_0xa4a0x19[_0xaab2[19]][_0xa4a0x2f][_0xaab2[60]]+= moment(_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[64]])[_0xaab2[63]](moment(_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[61]]),_0xaab2[62])|| 0;if(_0xa4a0x1a=== _0xa4a0x12[_0xa4a0x16][_0xaab2[38]]- 1){_0xa4a0x19[_0xaab2[19]][_0xa4a0x2f][_0xaab2[65]]+= moment(_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[66]]|| _0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[67]]|| _0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[68]])[_0xaab2[63]](moment(_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[61]]),_0xaab2[62])|| 0;_0xa4a0x19[_0xaab2[19]][_0xa4a0x2f][_0xaab2[69]]+= 1;if(_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[70]]){_0xa4a0x19[_0xaab2[19]][_0xa4a0x2f][_0xaab2[71]]+= 1;_0xa4a0x19[_0xaab2[19]][_0xa4a0x2f][_0xaab2[72]]+= moment(_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[66]])[_0xaab2[63]](moment(_0xa4a0x12[_0xa4a0x16][_0xa4a0x1a][_0xaab2[64]]),_0xaab2[62])|| 0}}else {_0xa4a0x19[_0xaab2[19]][_0xa4a0x2f][_0xaab2[65]]+= _0xa4a0x19[_0xaab2[19]][_0xa4a0x2f][_0xaab2[60]]}}}}}};return _0xa4a0x19[_0xaab2[19]]}};Realtime[_0xaab2[36]][_0xaab2[73]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){for(var _0xa4a0x1a=0;_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x19[_0xaab2[23]][_0xaab2[69]]+= 1;_0xa4a0x19[_0xaab2[23]][_0xaab2[65]]+= _0xa4a0x12[_0xa4a0x1a][_0xaab2[74]];if(_0xa4a0x12[_0xa4a0x1a][_0xaab2[75]]=== _0xaab2[76]){_0xa4a0x19[_0xaab2[23]][_0xaab2[71]]+= 1;_0xa4a0x19[_0xaab2[23]][_0xaab2[60]]+= (_0xa4a0x12[_0xa4a0x1a][_0xaab2[74]]- _0xa4a0x12[_0xa4a0x1a][_0xaab2[77]]);_0xa4a0x19[_0xaab2[23]][_0xaab2[72]]+= _0xa4a0x12[_0xa4a0x1a][_0xaab2[77]]}}};return _0xa4a0x19[_0xaab2[23]]}};Realtime[_0xaab2[36]][_0xaab2[78]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){if(_0xa4a0x12){freeIsNotKey(_0xa4a0x12,_0xa4a0x19[_0xaab2[21]]);for(var _0xa4a0x1a=0,_0xa4a0x30={};_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_0xa4a0x30= _0xa4a0x12[_0xa4a0x1a];if(_[_0xaab2[41]](_0xa4a0x19[_0xaab2[21]][_0xa4a0x30[_0xaab2[32]]])){_0xa4a0x19[_0xaab2[21]][_0xa4a0x30[_0xaab2[32]]]=  new Campaign(_0xa4a0x30)}else {_0xa4a0x19[_0xaab2[35]](_0xa4a0x19[_0xaab2[21]][_0xa4a0x30[_0xaab2[32]]],_0xa4a0x30)}}};return _0xa4a0x19[_0xaab2[21]]}};Realtime[_0xaab2[36]][_0xaab2[79]]= function(){var _0xa4a0x19=this;return function(_0xa4a0x12){for(var _0xa4a0x1a=0;_0xa4a0x1a< _0xa4a0x12[_0xaab2[38]];_0xa4a0x1a+= 1){_[_0xaab2[53]](_0xa4a0x19[_0xaab2[21]][_0xa4a0x12[_0xa4a0x1a][_0xaab2[32]]],_0xa4a0x12[_0xa4a0x1a])};return _0xa4a0x19[_0xaab2[21]]}};module[_0xaab2[80]]= Realtime
\ No newline at end of file
+var _0x9373=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x61\x67\x65\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x74\x72\x75\x6E\x6B","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x76\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x63\x61\x6D\x70\x61\x69\x67\x6E","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x7A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x73\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x61\x67\x65\x6E\x74\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x72\x75\x6E\x6B\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x76\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x71\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x74\x69\x6D\x65\x72\x73","\x7A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x73\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x6E\x61\x6D\x65","\x6D\x61\x70\x4B\x65\x79\x73","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x69\x73\x45\x6D\x70\x74\x79","\x74\x6F\x74\x61\x6C","\x61\x6E\x73\x77\x65\x72\x65\x64","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x73\x75\x6D\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x73\x75\x6D\x44\x75\x72\x61\x74\x69\x6F\x6E","\x73\x75\x6D\x42\x69\x6C\x6C\x61\x62\x6C\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x41\x6E\x73\x77\x65\x72\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x75\x73\x79\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4E\x6F\x53\x75\x63\x68\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x55\x6E\x6B\x6E\x6F\x77\x6E\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x54\x69\x6D\x65\x6F\x75\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x44\x72\x6F\x70\x43\x61\x6C\x6C\x73\x44\x61\x79\x43\x61\x6C\x6C\x65\x72\x73\x45\x78\x69\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x42\x6C\x61\x63\x6B\x6C\x69\x73\x74\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x46\x61\x69\x6C\x75\x72\x65\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x41\x6E\x73\x77\x65\x72\x41\x67\x69\x43\x61\x6C\x6C\x73\x44\x61\x79","\x6D\x65\x72\x67\x65\x46\x72\x6F\x6D\x44\x61\x74\x61\x62\x61\x73\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x6E\x69\x74\x41\x67\x65\x6E\x74\x73","\x6C\x65\x6E\x67\x74\x68","\x53\x49\x50\x2F\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x69\x6E\x69\x74\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x69\x6E\x69\x74\x54\x72\x75\x6E\x6B\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x69\x64","\x69\x6E\x69\x74\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x69\x6E\x69\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x6D\x65\x72\x67\x65","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x75\x6E\x69\x71\x75\x65\x69\x64","\x67\x72\x6F\x75\x70\x42\x79","\x71\x75\x65\x75\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x69\x6E\x69\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x41\x4E\x53\x57\x45\x52\x45\x44","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x69\x6E\x69\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x69\x6E\x69\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x65\x78\x70\x6F\x72\x74\x73"];_0x9373[0];var BPromise=require(_0x9373[1]);var util=require(_0x9373[2]);var _=require(_0x9373[3]);var moment=require(_0x9373[4]);var Agent=require(_0x9373[5]);var Telephone=require(_0x9373[6]);var Trunk=require(_0x9373[7]);var VoiceQueue=require(_0x9373[8]);var VoiceTrigger=require(_0x9373[9]);var Template=require(_0x9373[10]);var Campaign=require(_0x9373[11]);var ZendeskAccount=require(_0x9373[12]);var SalesforceAccount=require(_0x9373[13]);var FreshdeskAccount=require(_0x9373[14]);var SugarcrmAccount=require(_0x9373[15]);var Realtime=function(){this[_0x9373[16]]= {};this[_0x9373[17]]= {};this[_0x9373[18]]= {};this[_0x9373[19]]= {};this[_0x9373[20]]= {};this[_0x9373[21]]= {};this[_0x9373[22]]= {};this[_0x9373[23]]= {total:0,answered:0,sumHoldTime:0,sumDuration:0,sumBillable:0};this[_0x9373[24]]= {};this[_0x9373[25]]= {};this[_0x9373[26]]= {};this[_0x9373[27]]= {};this[_0x9373[28]]= {};this[_0x9373[29]]= {};this[_0x9373[30]]= {};this[_0x9373[31]]= {}};function freeIsNotKey(_0xda32x12,_0xda32x13){var _0xda32x14=_[_0x9373[33]](_0xda32x12,function(_0xda32x15,_0xda32x16){return _0xda32x15[_0x9373[32]]});for(var _0xda32x16 in _0xda32x13){if(_0xda32x13[_0x9373[34]](_0xda32x16)){if(!_0xda32x14[_0xda32x16]){delete _0xda32x13[_0xda32x16]}}}}function clearVoiceQueues(_0xda32x18){if(!_[_0x9373[35]](_0xda32x18)){for(var _0xda32x16 in _0xda32x18){if(_0xda32x18[_0x9373[34]](_0xda32x16)){_0xda32x18[_0xda32x16][_0x9373[36]]= 0;_0xda32x18[_0xda32x16][_0x9373[37]]= 0;_0xda32x18[_0xda32x16][_0x9373[38]]= 0;_0xda32x18[_0xda32x16][_0x9373[39]]= 0;_0xda32x18[_0xda32x16][_0x9373[40]]= 0;_0xda32x18[_0xda32x16][_0x9373[41]]= 0;_0xda32x18[_0xda32x16][_0x9373[42]]= 0;_0xda32x18[_0xda32x16][_0x9373[43]]= 0;_0xda32x18[_0xda32x16][_0x9373[44]]= 0;_0xda32x18[_0xda32x16][_0x9373[45]]= 0;_0xda32x18[_0xda32x16][_0x9373[46]]= 0;_0xda32x18[_0xda32x16][_0x9373[47]]= 0;_0xda32x18[_0xda32x16][_0x9373[48]]= 0;_0xda32x18[_0xda32x16][_0x9373[49]]= 0;_0xda32x18[_0xda32x16][_0x9373[50]]= 0;_0xda32x18[_0xda32x16][_0x9373[51]]= 0}}}}Realtime[_0x9373[53]][_0x9373[52]]= function(_0xda32x19,_0xda32x1a){for(var _0xda32x16 in _0xda32x1a){if(_0xda32x19[_0x9373[34]](_0xda32x16)){_0xda32x19[_0xda32x16]= _0xda32x1a[_0xda32x16]}}};Realtime[_0x9373[53]][_0x9373[54]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x1d={},_0xda32x1e={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x1d= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[16]][util[_0x9373[57]](_0x9373[56],_0xda32x1d[_0x9373[32]])])){_0xda32x1b[_0x9373[16]][util[_0x9373[57]](_0x9373[56],_0xda32x1d[_0x9373[32]])]=  new Agent(_0xda32x1d)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[16]][util[_0x9373[57]](_0x9373[56],_0xda32x1d[_0x9373[32]])],_0xda32x1d)}}};return _0xda32x1b[_0x9373[16]]}};Realtime[_0x9373[53]][_0x9373[59]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x1f={},_0xda32x20={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x1f= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[17]][util[_0x9373[57]](_0x9373[56],_0xda32x1f[_0x9373[32]])])){_0xda32x1b[_0x9373[17]][util[_0x9373[57]](_0x9373[56],_0xda32x1f[_0x9373[32]])]=  new Telephone(_0xda32x1f)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[17]][util[_0x9373[57]](_0x9373[56],_0xda32x1f[_0x9373[32]])],_0xda32x1f)}}};return _0xda32x1b[_0x9373[17]]}};Realtime[_0x9373[53]][_0x9373[60]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x21={},_0xda32x22={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x21= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[18]][util[_0x9373[57]](_0x9373[56],_0xda32x21[_0x9373[32]])])){_0xda32x1b[_0x9373[18]][util[_0x9373[57]](_0x9373[56],_0xda32x21[_0x9373[32]])]=  new Trunk(_0xda32x21)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[18]][util[_0x9373[57]](_0x9373[56],_0xda32x21[_0x9373[32]])],_0xda32x21)}}};return _0xda32x1b[_0x9373[18]]}};Realtime[_0x9373[53]][_0x9373[61]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){freeIsNotKey(_0xda32x12,_0xda32x1b[_0x9373[19]]);for(var _0xda32x1c=0,_0xda32x23={},_0xda32x18={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x23= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[19]][_0xda32x23[_0x9373[32]]])){_0xda32x1b[_0x9373[19]][_0xda32x23[_0x9373[32]]]=  new VoiceQueue(_0xda32x23)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[19]][_0xda32x23[_0x9373[32]]],_0xda32x23)}}};return _0xda32x1b[_0x9373[19]]}};Realtime[_0x9373[53]][_0x9373[62]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x24={},_0xda32x25={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x24= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[20]][_0xda32x24[_0x9373[63]]])){_0xda32x1b[_0x9373[20]][_0xda32x24[_0x9373[63]]]=  new VoiceTrigger(_0xda32x24)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[20]][_0xda32x24[_0x9373[63]]],_0xda32x24)}}};return _0xda32x1b[_0x9373[20]]}};Realtime[_0x9373[53]][_0x9373[64]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x26={},_0xda32x27={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x26= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[22]][_0xda32x26[_0x9373[63]]])){_0xda32x1b[_0x9373[22]][_0xda32x26[_0x9373[63]]]=  new Template(_0xda32x26)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[22]][_0xda32x26[_0x9373[63]]],_0xda32x26)}}};return _0xda32x1b[_0x9373[22]]}};Realtime[_0x9373[53]][_0x9373[65]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x28={},_0xda32x29={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x28= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[28]][_0xda32x28[_0x9373[63]]])){_0xda32x1b[_0x9373[28]][_0xda32x28[_0x9373[63]]]=  new ZendeskAccount(_0xda32x28)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[28]][_0xda32x28[_0x9373[63]]],_0xda32x28)}}};return _0xda32x1b[_0x9373[28]]}};Realtime[_0x9373[53]][_0x9373[66]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x2a={},_0xda32x2b={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x2a= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[29]][_0xda32x2a[_0x9373[63]]])){_0xda32x1b[_0x9373[29]][_0xda32x2a[_0x9373[63]]]=  new SalesforceAccount(_0xda32x2a)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[29]][_0xda32x2a[_0x9373[63]]],_0xda32x2a)}}};return _0xda32x1b[_0x9373[29]]}};Realtime[_0x9373[53]][_0x9373[67]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x2c={},_0xda32x2d={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x2c= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[31]][_0xda32x2c[_0x9373[63]]])){_0xda32x1b[_0x9373[31]][_0xda32x2c[_0x9373[63]]]=  new FreshdeskAccount(_0xda32x2c)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[31]][_0xda32x2c[_0x9373[63]]],_0xda32x2c)}}};return _0xda32x1b[_0x9373[31]]}};Realtime[_0x9373[53]][_0x9373[68]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0,_0xda32x2e={},_0xda32x2f={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x2e= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[30]][_0xda32x2e[_0x9373[63]]])){_0xda32x1b[_0x9373[30]][_0xda32x2e[_0x9373[63]]]=  new SugarcrmAccount(_0xda32x2e)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[30]][_0xda32x2e[_0x9373[63]]],_0xda32x2e)}}};return _0xda32x1b[_0x9373[30]]}};Realtime[_0x9373[53]][_0x9373[69]]= function(){var _0xda32x1b=this;return function(_0xda32x12){for(var _0xda32x1c=0;_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_[_0x9373[70]](_0xda32x1b[_0x9373[19]][_0xda32x12[_0xda32x1c][_0x9373[32]]],_0xda32x12[_0xda32x1c])};return _0xda32x1b[_0x9373[19]]}};Realtime[_0x9373[53]][_0x9373[71]]= function(){var _0xda32x1b=this;clearVoiceQueues(this[_0x9373[19]]);return function(_0xda32x12){if(_0xda32x12){_0xda32x12= _[_0x9373[73]](_0xda32x12,_0x9373[72]);for(var _0xda32x16 in _0xda32x12){if(_0xda32x12[_0x9373[34]](_0xda32x16)){var _0xda32x15={};for(var _0xda32x1c=0;_0xda32x1c< _0xda32x12[_0xda32x16][_0x9373[55]];_0xda32x1c+= 1){var _0xda32x30=_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[74]];if(_0xda32x1b[_0x9373[19]][_0xda32x30]){if(_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[75]]){_0xda32x1b[_0x9373[19]][_0xda32x30][_0x9373[38]]+= 1};_0xda32x1b[_0x9373[19]][_0xda32x30][_0x9373[39]]+= moment(_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[79]])[_0x9373[78]](moment(_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[76]]),_0x9373[77])|| 0;if(_0xda32x1c=== _0xda32x12[_0xda32x16][_0x9373[55]]- 1){_0xda32x1b[_0x9373[19]][_0xda32x30][_0x9373[40]]+= moment(_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[80]]|| _0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[81]]|| _0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[82]])[_0x9373[78]](moment(_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[76]]),_0x9373[77])|| 0;_0xda32x1b[_0x9373[19]][_0xda32x30][_0x9373[36]]+= 1;if(_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[83]]){_0xda32x1b[_0x9373[19]][_0xda32x30][_0x9373[37]]+= 1;_0xda32x1b[_0x9373[19]][_0xda32x30][_0x9373[41]]+= moment(_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[80]])[_0x9373[78]](moment(_0xda32x12[_0xda32x16][_0xda32x1c][_0x9373[79]]),_0x9373[77])|| 0}}else {_0xda32x1b[_0x9373[19]][_0xda32x30][_0x9373[40]]+= _0xda32x1b[_0x9373[19]][_0xda32x30][_0x9373[39]]}}}}}};return _0xda32x1b[_0x9373[19]]}};Realtime[_0x9373[53]][_0x9373[84]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){for(var _0xda32x1c=0;_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x1b[_0x9373[23]][_0x9373[36]]+= 1;_0xda32x1b[_0x9373[23]][_0x9373[40]]+= _0xda32x12[_0xda32x1c][_0x9373[85]];if(_0xda32x12[_0xda32x1c][_0x9373[86]]=== _0x9373[87]){_0xda32x1b[_0x9373[23]][_0x9373[37]]+= 1;_0xda32x1b[_0x9373[23]][_0x9373[39]]+= (_0xda32x12[_0xda32x1c][_0x9373[85]]- _0xda32x12[_0xda32x1c][_0x9373[88]]);_0xda32x1b[_0x9373[23]][_0x9373[41]]+= _0xda32x12[_0xda32x1c][_0x9373[88]]}}};return _0xda32x1b[_0x9373[23]]}};Realtime[_0x9373[53]][_0x9373[89]]= function(){var _0xda32x1b=this;return function(_0xda32x12){if(_0xda32x12){freeIsNotKey(_0xda32x12,_0xda32x1b[_0x9373[21]]);for(var _0xda32x1c=0,_0xda32x31={};_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_0xda32x31= _0xda32x12[_0xda32x1c];if(_[_0x9373[58]](_0xda32x1b[_0x9373[21]][_0xda32x31[_0x9373[32]]])){_0xda32x1b[_0x9373[21]][_0xda32x31[_0x9373[32]]]=  new Campaign(_0xda32x31)}else {_0xda32x1b[_0x9373[52]](_0xda32x1b[_0x9373[21]][_0xda32x31[_0x9373[32]]],_0xda32x31)}}};return _0xda32x1b[_0x9373[21]]}};Realtime[_0x9373[53]][_0x9373[90]]= function(){var _0xda32x1b=this;return function(_0xda32x12){for(var _0xda32x1c=0;_0xda32x1c< _0xda32x12[_0x9373[55]];_0xda32x1c+= 1){_[_0x9373[70]](_0xda32x1b[_0x9373[21]][_0xda32x12[_0xda32x1c][_0x9373[32]]],_0xda32x12[_0xda32x1c])};return _0xda32x1b[_0x9373[21]]}};module[_0x9373[91]]= Realtime
\ No newline at end of file
index fc9b19b..d116e7d 100644 (file)
@@ -1 +1 @@
-var _0xe216=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x75\x73\x65\x72\x52\x65\x70\x6F\x72\x74","\x72\x65\x61\x6C\x74\x69\x6D\x65","\x73\x79\x6E\x63","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x62\x69\x6E\x64","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x62\x6C\x69\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72","\x62\x6C\x69\x6E\x64\x54\x72\x61\x6E\x73\x66\x65\x72","\x61\x74\x74\x65\x6E\x64\x65\x64\x74\x72\x61\x6E\x73\x66\x65\x72","\x61\x74\x74\x65\x6E\x64\x65\x64\x54\x72\x61\x6E\x73\x66\x65\x72","\x6C\x65\x6E\x67\x74\x68","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x63\x72\x65\x61\x74\x65","\x6D\x6F\x6E\x69\x74\x6F\x72","\x65\x78\x70\x6F\x72\x74\x73"];_0xe216[0];var BPromise=require(_0xe216[1]);var _=require(_0xe216[2]);var moment=require(_0xe216[3]);var util=require(_0xe216[4]);var logger=require(_0xe216[6])(_0xe216[5]);var ami=require(_0xe216[7]);var RpcVoiceAgentReport=require(_0xe216[8]);var RpcVoiceCallReport=require(_0xe216[9]);var RpcVoiceDialReport=require(_0xe216[10]);var RpcMemberReport=require(_0xe216[11]);var RpcVoiceQueueReport=require(_0xe216[12]);var RpcVoiceRecording=require(_0xe216[13]);var RpcVoiceTransferReport=require(_0xe216[14]);var VoiceQueueReport=require(_0xe216[15]);var VoiceCallReport=require(_0xe216[16]);var VoiceAgentReport=require(_0xe216[17]);var VoiceDialReport=require(_0xe216[18]);var UserReport=require(_0xe216[19]);function Report(_0x7ce5x14){this[_0xe216[20]]= _0x7ce5x14}Report[_0xe216[22]][_0xe216[21]]= function(_0x7ce5x14){var _0x7ce5x15= new VoiceQueueReport(this[_0xe216[20]]);var _0x7ce5x16= new VoiceAgentReport(this[_0xe216[20]]);var _0x7ce5x17= new VoiceDialReport(this[_0xe216[20]]);var _0x7ce5x18= new VoiceCallReport(this[_0xe216[20]]);var _0x7ce5x19= new UserReport(this[_0xe216[20]]);ami[_0xe216[26]](_0xe216[23],this[_0xe216[25]][_0xe216[24]](this));ami[_0xe216[26]](_0xe216[27],this[_0xe216[28]][_0xe216[24]](this));ami[_0xe216[26]](_0xe216[29],this[_0xe216[30]][_0xe216[24]](this));ami[_0xe216[26]](_0xe216[31],this[_0xe216[32]][_0xe216[24]](this));ami[_0xe216[26]](_0xe216[33],this[_0xe216[34]][_0xe216[24]](this));ami[_0xe216[26]](_0xe216[35],this[_0xe216[36]][_0xe216[24]](this))};Report[_0xe216[22]][_0xe216[25]]= function(_0x7ce5x1a){for(var _0x7ce5x1b=0;_0x7ce5x1b< _0x7ce5x1a[_0xe216[37]];_0x7ce5x1b+= 1){if(_0x7ce5x1a[_0x7ce5x1b][_0xe216[38]]){RpcMemberReport[_0xe216[25]](_0x7ce5x1a[_0x7ce5x1b])};RpcVoiceQueueReport[_0xe216[39]](_0x7ce5x1a[_0x7ce5x1b])}};Report[_0xe216[22]][_0xe216[28]]= function(_0x7ce5x1c){if(_0x7ce5x1c[_0xe216[40]]){RpcVoiceRecording[_0xe216[39]](_0x7ce5x1c)};RpcVoiceCallReport[_0xe216[39]](_0x7ce5x1c)};Report[_0xe216[22]][_0xe216[30]]= function(_0x7ce5x1d){for(var _0x7ce5x1b=0;_0x7ce5x1b< _0x7ce5x1d[_0xe216[37]];_0x7ce5x1b+= 1){RpcVoiceAgentReport[_0xe216[39]](_0x7ce5x1d[_0x7ce5x1b])}};Report[_0xe216[22]][_0xe216[32]]= function(_0x7ce5x1e){RpcVoiceDialReport[_0xe216[39]](_0x7ce5x1e);RpcMemberReport[_0xe216[32]](_0x7ce5x1e)};Report[_0xe216[22]][_0xe216[34]]= function(_0x7ce5x1f){RpcVoiceTransferReport[_0xe216[34]](_0x7ce5x1f)};Report[_0xe216[22]][_0xe216[36]]= function(_0x7ce5x1f){RpcVoiceTransferReport[_0xe216[36]](_0x7ce5x1f)};module[_0xe216[41]]= Report
\ No newline at end of file
+var _0x7c2f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x6D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2E\x2E\x2F\x72\x70\x63\x2F\x76\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x2E\x2F\x75\x73\x65\x72\x52\x65\x70\x6F\x72\x74","\x72\x65\x61\x6C\x74\x69\x6D\x65","\x73\x79\x6E\x63","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x62\x69\x6E\x64","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x62\x6C\x69\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72","\x62\x6C\x69\x6E\x64\x54\x72\x61\x6E\x73\x66\x65\x72","\x61\x74\x74\x65\x6E\x64\x65\x64\x74\x72\x61\x6E\x73\x66\x65\x72","\x61\x74\x74\x65\x6E\x64\x65\x64\x54\x72\x61\x6E\x73\x66\x65\x72","\x6C\x65\x6E\x67\x74\x68","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x63\x72\x65\x61\x74\x65","\x6D\x6F\x6E\x69\x74\x6F\x72","\x65\x78\x70\x6F\x72\x74\x73"];_0x7c2f[0];var BPromise=require(_0x7c2f[1]);var _=require(_0x7c2f[2]);var moment=require(_0x7c2f[3]);var util=require(_0x7c2f[4]);var logger=require(_0x7c2f[6])(_0x7c2f[5]);var ami=require(_0x7c2f[7]);var RpcVoiceAgentReport=require(_0x7c2f[8]);var RpcVoiceCallReport=require(_0x7c2f[9]);var RpcVoiceDialReport=require(_0x7c2f[10]);var RpcMemberReport=require(_0x7c2f[11]);var RpcVoiceQueueReport=require(_0x7c2f[12]);var RpcVoiceRecording=require(_0x7c2f[13]);var RpcVoiceTransferReport=require(_0x7c2f[14]);var VoiceQueueReport=require(_0x7c2f[15]);var VoiceCallReport=require(_0x7c2f[16]);var VoiceAgentReport=require(_0x7c2f[17]);var VoiceDialReport=require(_0x7c2f[18]);var UserReport=require(_0x7c2f[19]);function Report(_0xa497x14){this[_0x7c2f[20]]= _0xa497x14}Report[_0x7c2f[22]][_0x7c2f[21]]= function(_0xa497x14){var _0xa497x15= new VoiceQueueReport(this[_0x7c2f[20]]);var _0xa497x16= new VoiceAgentReport(this[_0x7c2f[20]]);var _0xa497x17= new VoiceDialReport(this[_0x7c2f[20]]);var _0xa497x18= new VoiceCallReport(this[_0x7c2f[20]]);var _0xa497x19= new UserReport(this[_0x7c2f[20]]);ami[_0x7c2f[26]](_0x7c2f[23],this[_0x7c2f[25]][_0x7c2f[24]](this));ami[_0x7c2f[26]](_0x7c2f[27],this[_0x7c2f[28]][_0x7c2f[24]](this));ami[_0x7c2f[26]](_0x7c2f[29],this[_0x7c2f[30]][_0x7c2f[24]](this));ami[_0x7c2f[26]](_0x7c2f[31],this[_0x7c2f[32]][_0x7c2f[24]](this));ami[_0x7c2f[26]](_0x7c2f[33],this[_0x7c2f[34]][_0x7c2f[24]](this));ami[_0x7c2f[26]](_0x7c2f[35],this[_0x7c2f[36]][_0x7c2f[24]](this))};Report[_0x7c2f[22]][_0x7c2f[25]]= function(_0xa497x1a){for(var _0xa497x1b=0;_0xa497x1b< _0xa497x1a[_0x7c2f[37]];_0xa497x1b+= 1){if(_0xa497x1a[_0xa497x1b][_0x7c2f[38]]){RpcMemberReport[_0x7c2f[25]](_0xa497x1a[_0xa497x1b])};RpcVoiceQueueReport[_0x7c2f[39]](_0xa497x1a[_0xa497x1b])}};Report[_0x7c2f[22]][_0x7c2f[28]]= function(_0xa497x1c){if(_0xa497x1c[_0x7c2f[40]]){RpcVoiceRecording[_0x7c2f[39]](_0xa497x1c)};RpcVoiceCallReport[_0x7c2f[39]](_0xa497x1c)};Report[_0x7c2f[22]][_0x7c2f[30]]= function(_0xa497x1d){for(var _0xa497x1b=0;_0xa497x1b< _0xa497x1d[_0x7c2f[37]];_0xa497x1b+= 1){RpcVoiceAgentReport[_0x7c2f[39]](_0xa497x1d[_0xa497x1b])}};Report[_0x7c2f[22]][_0x7c2f[32]]= function(_0xa497x1e){RpcVoiceDialReport[_0x7c2f[39]](_0xa497x1e);RpcMemberReport[_0x7c2f[32]](_0xa497x1e)};Report[_0x7c2f[22]][_0x7c2f[34]]= function(_0xa497x1f){RpcVoiceTransferReport[_0x7c2f[34]](_0xa497x1f)};Report[_0x7c2f[22]][_0x7c2f[36]]= function(_0xa497x1f){RpcVoiceTransferReport[_0x7c2f[36]](_0xa497x1f)};module[_0x7c2f[41]]= Report
\ No newline at end of file
index 42bb895..46df5b8 100644 (file)
@@ -1 +1 @@
-var _0x3012=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x74\x72\x75\x6E\x6B\x73","\x61\x67\x65\x6E\x74\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x72\x65\x67\x69\x73\x74\x72\x79\x65\x6E\x74\x72\x79","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x52\x65\x67\x69\x73\x74\x72\x79","\x6F\x6E","\x72\x65\x67\x69\x73\x74\x72\x79","\x64\x65\x76\x69\x63\x65\x73\x74\x61\x74\x65\x63\x68\x61\x6E\x67\x65","\x73\x79\x6E\x63\x44\x65\x76\x69\x63\x65\x53\x74\x61\x74\x65","\x70\x65\x65\x72\x73\x74\x61\x74\x75\x73","\x73\x79\x6E\x63\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73","\x63\x61\x74\x63\x68","\x61\x63\x74\x69\x6F\x6E\x53\x69\x70\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x61\x63\x74\x69\x6F\x6E\x44\x65\x76\x69\x63\x65\x53\x74\x61\x74\x65\x4C\x69\x73\x74","\x61\x63\x74\x69\x6F\x6E\x53\x69\x70\x53\x68\x6F\x77\x52\x65\x67\x69\x73\x74\x72\x79","\x72\x65\x73\x6F\x6C\x76\x65","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x65\x6D\x69\x74","\x74\x6F","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x66\x69\x6E\x64","\x73\x74\x61\x74\x65\x52\x65\x67\x69\x73\x74\x72\x79","\x73\x74\x61\x74\x65","\x65\x76\x65\x6E\x74","\x61\x63\x74\x69\x6F\x6E\x69\x64","\x6F\x6D\x69\x74","\x6D\x65\x72\x67\x65","\x74\x72\x75\x6E\x6B\x3A\x25\x73","\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x74\x72\x75\x6E\x6B\x3A\x73\x61\x76\x65","\x5B\x73\x79\x6E\x63\x52\x65\x67\x69\x73\x74\x72\x79\x5D\x5B\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x4F\x62\x6A\x65\x63\x74\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x64\x65\x76\x69\x63\x65","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x73\x74\x61\x74\x65\x54\x69\x6D\x65","\x78","\x74\x6F\x4E\x75\x6D\x62\x65\x72","\x75\x73\x65\x72\x3A\x25\x73","\x75\x73\x65\x72\x3A\x73\x61\x76\x65","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x3A\x25\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x3A\x73\x61\x76\x65","\x51\x75\x65\x75\x65","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x5B\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74\x5D","\x44\x65\x76\x69\x63\x65\x20\x75\x6E\x6D\x6F\x6E\x69\x74","\x5B\x73\x79\x6E\x63\x44\x65\x76\x69\x63\x65\x53\x74\x61\x74\x65\x5D\x5B\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74\x5D","\x70\x65\x65\x72","\x73\x74\x61\x74\x75\x73","\x61\x64\x64\x72\x65\x73\x73","\x50\x65\x65\x72\x20\x75\x6E\x6D\x6F\x6E\x69\x74","\x5B\x73\x79\x6E\x63\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73\x5D\x5B\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0x3012[0];var _=require(_0x3012[1]);var moment=require(_0x3012[2]);var BPromise=require(_0x3012[3]);var util=require(_0x3012[4]);var logger=require(_0x3012[6])(_0x3012[5]);var ami=require(_0x3012[7]);var io=require(_0x3012[9])({host:_0x3012[8],port:6379});function UserReport(_0x6af8x9){console[_0x3012[11]](_0x3012[10]);this[_0x3012[12]]= _0x6af8x9[_0x3012[12]];this[_0x3012[13]]= _0x6af8x9[_0x3012[13]];this[_0x3012[14]]= _0x6af8x9[_0x3012[14]];ami[_0x3012[18]](_0x3012[15],this[_0x3012[17]][_0x3012[16]](this));ami[_0x3012[18]](_0x3012[19],this[_0x3012[17]][_0x3012[16]](this));ami[_0x3012[18]](_0x3012[20],this[_0x3012[21]][_0x3012[16]](this));ami[_0x3012[18]](_0x3012[22],this[_0x3012[23]][_0x3012[16]](this));return BPromise[_0x3012[29]]()[_0x3012[26]](ami[_0x3012[28]]())[_0x3012[26]](ami[_0x3012[27]]())[_0x3012[26]](ami[_0x3012[25]]())[_0x3012[24]](function(_0x6af8xa){console[_0x3012[11]](_0x6af8xa)})}UserReport[_0x3012[31]][_0x3012[30]]= function(_0x6af8xb){return _0x6af8xb!== null&&  !_[_0x3012[32]](_0x6af8xb)};UserReport[_0x3012[31]][_0x3012[33]]= function(_0x6af8xc,_0x6af8xd,_0x6af8xb){console[_0x3012[11]](_0x6af8xc,_0x6af8xd);io[_0x3012[34]](_0x6af8xc)[_0x3012[33]](_0x6af8xd,_0x6af8xb)};UserReport[_0x3012[31]][_0x3012[17]]= function(_0x6af8xd){try{if(this[_0x3012[30]](_0x6af8xd)){var _0x6af8xe=_[_0x3012[36]](this[_0x3012[12]],{registry:_0x6af8xd[_0x3012[35]]});if(_0x6af8xe){_0x6af8xd[_0x3012[37]]= _0x6af8xd[_0x3012[38]];_[_0x3012[42]](_0x6af8xe,_[_0x3012[41]](_0x6af8xd,[_0x3012[39],_0x3012[40],_0x3012[35],_0x3012[38]]));this[_0x3012[33]](util[_0x3012[45]](_0x3012[43],_0x6af8xe[_0x3012[44]]),_0x3012[46],_0x6af8xe)}}else {logger[_0x3012[49]](_0x3012[47],_0x3012[48])}}catch(e){logger[_0x3012[51]](_0x3012[47],JSON[_0x3012[50]](e))}};UserReport[_0x3012[31]][_0x3012[21]]= function(_0x6af8xd){try{if(this[_0x3012[30]](_0x6af8xd)){if(this[_0x3012[13]][_0x6af8xd[_0x3012[52]]]){this[_0x3012[13]][_0x6af8xd[_0x3012[52]]][_0x3012[38]]= _0x6af8xd[_0x3012[38]][_0x3012[53]]();this[_0x3012[13]][_0x6af8xd[_0x3012[52]]][_0x3012[54]]= _[_0x3012[56]](moment()[_0x3012[45]](_0x3012[55]));this[_0x3012[33]](util[_0x3012[45]](_0x3012[57],this[_0x3012[13]][_0x6af8xd[_0x3012[52]]][_0x3012[44]]),_0x3012[58],this[_0x3012[13]][_0x6af8xd[_0x3012[52]]])}else {if(this[_0x3012[14]][_0x6af8xd[_0x3012[52]]]){this[_0x3012[14]][_0x6af8xd[_0x3012[52]]][_0x3012[38]]= _0x6af8xd[_0x3012[38]][_0x3012[53]]();this[_0x3012[14]][_0x6af8xd[_0x3012[52]]][_0x3012[54]]= _[_0x3012[56]](moment()[_0x3012[45]](_0x3012[55]));this[_0x3012[33]](util[_0x3012[45]](_0x3012[59],this[_0x3012[14]][_0x6af8xd[_0x3012[52]]][_0x3012[44]]),_0x3012[60],this[_0x3012[14]][_0x6af8xd[_0x3012[52]]])}else {if(this[_0x3012[12]][_0x6af8xd[_0x3012[52]]]){this[_0x3012[12]][_0x6af8xd[_0x3012[52]]][_0x3012[38]]= _0x6af8xd[_0x3012[38]][_0x3012[53]]();this[_0x3012[33]](util[_0x3012[45]](_0x3012[43],this[_0x3012[12]][_0x6af8xd[_0x3012[52]]][_0x3012[44]]),_0x3012[46],this[_0x3012[12]][_0x6af8xd[_0x3012[52]]])}else {if(_[_0x3012[62]](_0x6af8xd[_0x3012[52]],_0x3012[61])){}else {console[_0x3012[11]](_0x3012[63],_0x3012[64],_0x6af8xd[_0x3012[52]])}}}}}else {logger[_0x3012[49]](_0x3012[65],_0x3012[48])}}catch(e){logger[_0x3012[51]](_0x3012[65],JSON[_0x3012[50]](e))}};UserReport[_0x3012[31]][_0x3012[23]]= function(_0x6af8xd){try{if(this[_0x3012[30]](_0x6af8xd)&& this[_0x3012[30]](_0x6af8xd[_0x3012[22]])){if(this[_0x3012[13]][_0x6af8xd[_0x3012[66]]]){this[_0x3012[13]][_0x6af8xd[_0x3012[66]]][_0x3012[67]]= _0x6af8xd[_0x3012[22]][_0x3012[53]]();this[_0x3012[13]][_0x6af8xd[_0x3012[66]]][_0x3012[68]]= _0x6af8xd[_0x3012[68]];this[_0x3012[33]](util[_0x3012[45]](_0x3012[57],this[_0x3012[13]][_0x6af8xd[_0x3012[66]]][_0x3012[44]]),_0x3012[58],this[_0x3012[13]][_0x6af8xd[_0x3012[66]]])}else {if(this[_0x3012[14]][_0x6af8xd[_0x3012[66]]]){this[_0x3012[14]][_0x6af8xd[_0x3012[66]]][_0x3012[67]]= _0x6af8xd[_0x3012[22]][_0x3012[53]]();this[_0x3012[14]][_0x6af8xd[_0x3012[66]]][_0x3012[68]]= _0x6af8xd[_0x3012[68]];this[_0x3012[33]](util[_0x3012[45]](_0x3012[59],this[_0x3012[14]][_0x6af8xd[_0x3012[66]]][_0x3012[44]]),_0x3012[60],this[_0x3012[14]][_0x6af8xd[_0x3012[66]]])}else {if(this[_0x3012[12]][_0x6af8xd[_0x3012[66]]]){this[_0x3012[12]][_0x6af8xd[_0x3012[66]]][_0x3012[67]]= _0x6af8xd[_0x3012[22]][_0x3012[53]]();this[_0x3012[12]][_0x6af8xd[_0x3012[66]]][_0x3012[68]]= _0x6af8xd[_0x3012[68]];this[_0x3012[33]](util[_0x3012[45]](_0x3012[43],this[_0x3012[12]][_0x6af8xd[_0x3012[66]]][_0x3012[44]]),_0x3012[46],this[_0x3012[12]][_0x6af8xd[_0x3012[66]]])}else {console[_0x3012[11]](_0x3012[69],_0x6af8xd[_0x3012[66]])}}}}else {logger[_0x3012[49]](_0x3012[70],_0x3012[48])}}catch(e){logger[_0x3012[51]](_0x3012[70],JSON[_0x3012[50]](e))}};module[_0x3012[71]]= UserReport
\ No newline at end of file
+var _0xcddd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x74\x72\x75\x6E\x6B\x73","\x61\x67\x65\x6E\x74\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x72\x65\x67\x69\x73\x74\x72\x79\x65\x6E\x74\x72\x79","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x52\x65\x67\x69\x73\x74\x72\x79","\x6F\x6E","\x72\x65\x67\x69\x73\x74\x72\x79","\x64\x65\x76\x69\x63\x65\x73\x74\x61\x74\x65\x63\x68\x61\x6E\x67\x65","\x73\x79\x6E\x63\x44\x65\x76\x69\x63\x65\x53\x74\x61\x74\x65","\x70\x65\x65\x72\x73\x74\x61\x74\x75\x73","\x73\x79\x6E\x63\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73","\x63\x61\x74\x63\x68","\x61\x63\x74\x69\x6F\x6E\x53\x69\x70\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x61\x63\x74\x69\x6F\x6E\x44\x65\x76\x69\x63\x65\x53\x74\x61\x74\x65\x4C\x69\x73\x74","\x61\x63\x74\x69\x6F\x6E\x53\x69\x70\x53\x68\x6F\x77\x52\x65\x67\x69\x73\x74\x72\x79","\x72\x65\x73\x6F\x6C\x76\x65","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x65\x6D\x69\x74","\x74\x6F","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x66\x69\x6E\x64","\x73\x74\x61\x74\x65\x52\x65\x67\x69\x73\x74\x72\x79","\x73\x74\x61\x74\x65","\x65\x76\x65\x6E\x74","\x61\x63\x74\x69\x6F\x6E\x69\x64","\x6F\x6D\x69\x74","\x6D\x65\x72\x67\x65","\x74\x72\x75\x6E\x6B\x3A\x25\x73","\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x74\x72\x75\x6E\x6B\x3A\x73\x61\x76\x65","\x5B\x73\x79\x6E\x63\x52\x65\x67\x69\x73\x74\x72\x79\x5D\x5B\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x4F\x62\x6A\x65\x63\x74\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x64\x65\x76\x69\x63\x65","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x73\x74\x61\x74\x65\x54\x69\x6D\x65","\x78","\x74\x6F\x4E\x75\x6D\x62\x65\x72","\x75\x73\x65\x72\x3A\x25\x73","\x75\x73\x65\x72\x3A\x73\x61\x76\x65","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x3A\x25\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x3A\x73\x61\x76\x65","\x51\x75\x65\x75\x65","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x5B\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74\x5D","\x44\x65\x76\x69\x63\x65\x20\x75\x6E\x6D\x6F\x6E\x69\x74","\x5B\x73\x79\x6E\x63\x44\x65\x76\x69\x63\x65\x53\x74\x61\x74\x65\x5D\x5B\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74\x5D","\x70\x65\x65\x72","\x73\x74\x61\x74\x75\x73","\x61\x64\x64\x72\x65\x73\x73","\x50\x65\x65\x72\x20\x75\x6E\x6D\x6F\x6E\x69\x74","\x5B\x73\x79\x6E\x63\x50\x65\x65\x72\x53\x74\x61\x74\x75\x73\x5D\x5B\x55\x73\x65\x72\x52\x65\x70\x6F\x72\x74\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0xcddd[0];var _=require(_0xcddd[1]);var moment=require(_0xcddd[2]);var BPromise=require(_0xcddd[3]);var util=require(_0xcddd[4]);var logger=require(_0xcddd[6])(_0xcddd[5]);var ami=require(_0xcddd[7]);var io=require(_0xcddd[9])({host:_0xcddd[8],port:6379});function UserReport(_0xa557x9){console[_0xcddd[11]](_0xcddd[10]);this[_0xcddd[12]]= _0xa557x9[_0xcddd[12]];this[_0xcddd[13]]= _0xa557x9[_0xcddd[13]];this[_0xcddd[14]]= _0xa557x9[_0xcddd[14]];ami[_0xcddd[18]](_0xcddd[15],this[_0xcddd[17]][_0xcddd[16]](this));ami[_0xcddd[18]](_0xcddd[19],this[_0xcddd[17]][_0xcddd[16]](this));ami[_0xcddd[18]](_0xcddd[20],this[_0xcddd[21]][_0xcddd[16]](this));ami[_0xcddd[18]](_0xcddd[22],this[_0xcddd[23]][_0xcddd[16]](this));return BPromise[_0xcddd[29]]()[_0xcddd[26]](ami[_0xcddd[28]]())[_0xcddd[26]](ami[_0xcddd[27]]())[_0xcddd[26]](ami[_0xcddd[25]]())[_0xcddd[24]](function(_0xa557xa){console[_0xcddd[11]](_0xa557xa)})}UserReport[_0xcddd[31]][_0xcddd[30]]= function(_0xa557xb){return _0xa557xb!== null&&  !_[_0xcddd[32]](_0xa557xb)};UserReport[_0xcddd[31]][_0xcddd[33]]= function(_0xa557xc,_0xa557xd,_0xa557xb){console[_0xcddd[11]](_0xa557xc,_0xa557xd);io[_0xcddd[34]](_0xa557xc)[_0xcddd[33]](_0xa557xd,_0xa557xb)};UserReport[_0xcddd[31]][_0xcddd[17]]= function(_0xa557xd){try{if(this[_0xcddd[30]](_0xa557xd)){var _0xa557xe=_[_0xcddd[36]](this[_0xcddd[12]],{registry:_0xa557xd[_0xcddd[35]]});if(_0xa557xe){_0xa557xd[_0xcddd[37]]= _0xa557xd[_0xcddd[38]];_[_0xcddd[42]](_0xa557xe,_[_0xcddd[41]](_0xa557xd,[_0xcddd[39],_0xcddd[40],_0xcddd[35],_0xcddd[38]]));this[_0xcddd[33]](util[_0xcddd[45]](_0xcddd[43],_0xa557xe[_0xcddd[44]]),_0xcddd[46],_0xa557xe)}}else {logger[_0xcddd[49]](_0xcddd[47],_0xcddd[48])}}catch(e){logger[_0xcddd[51]](_0xcddd[47],JSON[_0xcddd[50]](e))}};UserReport[_0xcddd[31]][_0xcddd[21]]= function(_0xa557xd){try{if(this[_0xcddd[30]](_0xa557xd)){if(this[_0xcddd[13]][_0xa557xd[_0xcddd[52]]]){this[_0xcddd[13]][_0xa557xd[_0xcddd[52]]][_0xcddd[38]]= _0xa557xd[_0xcddd[38]][_0xcddd[53]]();this[_0xcddd[13]][_0xa557xd[_0xcddd[52]]][_0xcddd[54]]= _[_0xcddd[56]](moment()[_0xcddd[45]](_0xcddd[55]));this[_0xcddd[33]](util[_0xcddd[45]](_0xcddd[57],this[_0xcddd[13]][_0xa557xd[_0xcddd[52]]][_0xcddd[44]]),_0xcddd[58],this[_0xcddd[13]][_0xa557xd[_0xcddd[52]]])}else {if(this[_0xcddd[14]][_0xa557xd[_0xcddd[52]]]){this[_0xcddd[14]][_0xa557xd[_0xcddd[52]]][_0xcddd[38]]= _0xa557xd[_0xcddd[38]][_0xcddd[53]]();this[_0xcddd[14]][_0xa557xd[_0xcddd[52]]][_0xcddd[54]]= _[_0xcddd[56]](moment()[_0xcddd[45]](_0xcddd[55]));this[_0xcddd[33]](util[_0xcddd[45]](_0xcddd[59],this[_0xcddd[14]][_0xa557xd[_0xcddd[52]]][_0xcddd[44]]),_0xcddd[60],this[_0xcddd[14]][_0xa557xd[_0xcddd[52]]])}else {if(this[_0xcddd[12]][_0xa557xd[_0xcddd[52]]]){this[_0xcddd[12]][_0xa557xd[_0xcddd[52]]][_0xcddd[38]]= _0xa557xd[_0xcddd[38]][_0xcddd[53]]();this[_0xcddd[33]](util[_0xcddd[45]](_0xcddd[43],this[_0xcddd[12]][_0xa557xd[_0xcddd[52]]][_0xcddd[44]]),_0xcddd[46],this[_0xcddd[12]][_0xa557xd[_0xcddd[52]]])}else {if(_[_0xcddd[62]](_0xa557xd[_0xcddd[52]],_0xcddd[61])){}else {console[_0xcddd[11]](_0xcddd[63],_0xcddd[64],_0xa557xd[_0xcddd[52]])}}}}}else {logger[_0xcddd[49]](_0xcddd[65],_0xcddd[48])}}catch(e){logger[_0xcddd[51]](_0xcddd[65],JSON[_0xcddd[50]](e))}};UserReport[_0xcddd[31]][_0xcddd[23]]= function(_0xa557xd){try{if(this[_0xcddd[30]](_0xa557xd)&& this[_0xcddd[30]](_0xa557xd[_0xcddd[22]])){if(this[_0xcddd[13]][_0xa557xd[_0xcddd[66]]]){this[_0xcddd[13]][_0xa557xd[_0xcddd[66]]][_0xcddd[67]]= _0xa557xd[_0xcddd[22]][_0xcddd[53]]();this[_0xcddd[13]][_0xa557xd[_0xcddd[66]]][_0xcddd[68]]= _0xa557xd[_0xcddd[68]];this[_0xcddd[33]](util[_0xcddd[45]](_0xcddd[57],this[_0xcddd[13]][_0xa557xd[_0xcddd[66]]][_0xcddd[44]]),_0xcddd[58],this[_0xcddd[13]][_0xa557xd[_0xcddd[66]]])}else {if(this[_0xcddd[14]][_0xa557xd[_0xcddd[66]]]){this[_0xcddd[14]][_0xa557xd[_0xcddd[66]]][_0xcddd[67]]= _0xa557xd[_0xcddd[22]][_0xcddd[53]]();this[_0xcddd[14]][_0xa557xd[_0xcddd[66]]][_0xcddd[68]]= _0xa557xd[_0xcddd[68]];this[_0xcddd[33]](util[_0xcddd[45]](_0xcddd[59],this[_0xcddd[14]][_0xa557xd[_0xcddd[66]]][_0xcddd[44]]),_0xcddd[60],this[_0xcddd[14]][_0xa557xd[_0xcddd[66]]])}else {if(this[_0xcddd[12]][_0xa557xd[_0xcddd[66]]]){this[_0xcddd[12]][_0xa557xd[_0xcddd[66]]][_0xcddd[67]]= _0xa557xd[_0xcddd[22]][_0xcddd[53]]();this[_0xcddd[12]][_0xa557xd[_0xcddd[66]]][_0xcddd[68]]= _0xa557xd[_0xcddd[68]];this[_0xcddd[33]](util[_0xcddd[45]](_0xcddd[43],this[_0xcddd[12]][_0xa557xd[_0xcddd[66]]][_0xcddd[44]]),_0xcddd[46],this[_0xcddd[12]][_0xa557xd[_0xcddd[66]]])}else {console[_0xcddd[11]](_0xcddd[69],_0xa557xd[_0xcddd[66]])}}}}else {logger[_0xcddd[49]](_0xcddd[70],_0xcddd[48])}}catch(e){logger[_0xcddd[51]](_0xcddd[70],JSON[_0xcddd[50]](e))}};module[_0xcddd[71]]= UserReport
\ No newline at end of file
index b999aab..c7b4ee5 100644 (file)
@@ -1 +1 @@
-var _0x61c2=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x61\x6C\x6C\x65\x64","\x6F\x6E","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74","\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x52\x69\x6E\x67\x4E\x6F\x41\x6E\x73\x77\x65\x72","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x76\x61\x72\x73\x65\x74","\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x73\x74\x75\x6E\x69\x71\x75\x65\x69\x64","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x61\x6C\x6C\x65\x64","\x71\x75\x65\x75\x65","\x74\x79\x70\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x65\x76\x65\x6E\x74","\x70\x72\x69\x76\x69\x6C\x65\x67\x65","\x6F\x6D\x69\x74","\x6D\x65\x72\x67\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64","\x65\x6D\x69\x74","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x61\x6C\x6C\x65\x64\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x6F\x62\x6A\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74\x41\x74","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x63\x6F\x6E\x6E\x65\x63\x74","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x64\x65\x73\x74\x63\x68\x61\x6E\x6E\x65\x6C\x73\x74\x61\x74\x65","\x64\x65\x73\x74\x63\x68\x61\x6E\x6E\x65\x6C\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72\x41\x74","\x72\x65\x61\x73\x6F\x6E","\x61\x6E\x73\x77\x65\x72\x65\x64\x5F\x65\x6C\x73\x65\x77\x68\x65\x72\x65","\x61\x6E\x73\x77\x65\x72\x65\x64\x65\x6C\x73\x65\x77\x68\x65\x72\x65\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x75\x6E\x69\x71\x75\x65\x69\x64","\x61\x6E\x73\x77\x65\x72\x65\x64\x65\x6C\x73\x65\x77\x68\x65\x72\x65\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x61\x6E\x73\x77\x65\x72\x65\x64\x65\x6C\x73\x65\x77\x68\x65\x72\x65","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x63\x68\x61\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C\x5D","\x72\x65\x6A\x65\x63\x74\x65\x64","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x52\x69\x6E\x67\x4E\x6F\x41\x6E\x73\x77\x65\x72\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x61\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x61\x63\x77","\x61\x67\x65\x6E\x74\x61\x63\x77","\x61\x63\x77\x74\x69\x6D\x65","\x61\x63\x77\x54\x69\x6D\x65\x6F\x75\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x73","\x76\x61\x6C\x75\x65","\x61\x64\x64\x56\x61\x72\x69\x61\x62\x6C\x65","\x5B\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x74\x68\x69\x73\x2E\x63\x68\x61\x6E\x6E\x65\x6C\x73\x5B\x65\x76\x74\x2E\x75\x6E\x69\x71\x75\x65\x69\x64\x5D\x5B\x64\x65\x73\x74\x75\x6E\x69\x71\x75\x65\x69\x64\x5D\x2E\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x63\x68\x61\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C","\x6F\x62\x6A\x20\x6E\x75\x6C\x6C","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x76\x61\x6C\x75\x65\x73","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x4F\x62\x6A\x65\x63\x74\x20\x6E\x75\x6C\x6C\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0x61c2[0];var _=require(_0x61c2[1]);var moment=require(_0x61c2[2]);var logger=require(_0x61c2[4])(_0x61c2[3]);var ami=require(_0x61c2[5]);function VoiceAgentReport(_0xc485x6){console[_0x61c2[7]](_0x61c2[6]);this[_0x61c2[8]]= {};this[_0x61c2[9]]= _0xc485x6[_0x61c2[9]];this[_0x61c2[10]]= {};ami[_0x61c2[14]](_0x61c2[11],this[_0x61c2[13]][_0x61c2[12]](this));ami[_0x61c2[14]](_0x61c2[15],this[_0x61c2[16]][_0x61c2[12]](this));ami[_0x61c2[14]](_0x61c2[17],this[_0x61c2[18]][_0x61c2[12]](this));ami[_0x61c2[14]](_0x61c2[19],this[_0x61c2[20]][_0x61c2[12]](this));ami[_0x61c2[14]](_0x61c2[21],this[_0x61c2[22]][_0x61c2[12]](this));ami[_0x61c2[14]](_0x61c2[23],this[_0x61c2[24]][_0x61c2[12]](this));ami[_0x61c2[14]](_0x61c2[25],this[_0x61c2[26]][_0x61c2[12]](this))}VoiceAgentReport[_0x61c2[28]][_0x61c2[27]]= function(_0xc485x7){return _0xc485x7!== null&&  !_[_0x61c2[29]](_0xc485x7)};VoiceAgentReport[_0x61c2[28]][_0x61c2[13]]= function(_0xc485x8){try{if(this[_0x61c2[27]](_0xc485x8)){if(_[_0x61c2[29]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]])){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]= {}};if(_[_0x61c2[29]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]])){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]]= {agentcalledAt:moment()[_0x61c2[33]](_0x61c2[32]),lastevent:_0x61c2[34],variables:this[_0x61c2[10]][_0xc485x8[_0x61c2[30]]],type:this[_0x61c2[9]][_0xc485x8[_0x61c2[35]]]?this[_0x61c2[9]][_0xc485x8[_0x61c2[35]]][_0x61c2[36]]|| _0x61c2[37]:_0x61c2[37]}};_[_0x61c2[41]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]],_[_0x61c2[40]](_0xc485x8,[_0x61c2[38],_0x61c2[39]]));ami[_0x61c2[43]](_0x61c2[42],this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]])}else {logger[_0x61c2[46]](_0x61c2[44],_0x61c2[45])}}catch(e){logger[_0x61c2[48]](_0x61c2[44],JSON[_0x61c2[47]](e))}};VoiceAgentReport[_0x61c2[28]][_0x61c2[16]]= function(_0xc485x8){try{if(this[_0x61c2[27]](_0xc485x8)){if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]){for(var _0xc485x9 in this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]){if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0x61c2[49]](_0xc485x9)){if(_0xc485x8[_0x61c2[31]]=== _0xc485x9){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[50]]= moment()[_0x61c2[33]](_0x61c2[32]);this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[51]]= _0x61c2[52];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[53]]= _0xc485x8[_0x61c2[53]];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[54]]= _0xc485x8[_0x61c2[54]];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[55]]= _0xc485x8[_0x61c2[55]];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[56]]= _0xc485x8[_0x61c2[56]];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[57]]= _0xc485x8[_0x61c2[57]];ami[_0x61c2[43]](_0x61c2[58],this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9])}else {if(this[_0x61c2[27]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[17]])){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[17]]= true;this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[59]]= moment()[_0x61c2[33]](_0x61c2[32]);this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[60]]= _0x61c2[61];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[51]]= _0x61c2[61];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[62]]= _0xc485x8[_0x61c2[31]];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[63]]= _0xc485x8[_0x61c2[64]];ami[_0x61c2[43]](_0x61c2[65],this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9])}else {logger[_0x61c2[46]](_0x61c2[66],_0x61c2[67])}}}}}}else {logger[_0x61c2[46]](_0x61c2[66],_0x61c2[45])}}catch(e){logger[_0x61c2[48]](_0x61c2[66],JSON[_0x61c2[47]](e))}};VoiceAgentReport[_0x61c2[28]][_0x61c2[18]]= function(_0xc485x8){try{if(this[_0x61c2[27]](_0xc485x8)){if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]&& this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]]&& _[_0x61c2[29]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[17]])){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[17]]= true;this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[59]]= moment()[_0x61c2[33]](_0x61c2[32]);this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[60]]= _0x61c2[68];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[51]]= _0x61c2[68];ami[_0x61c2[43]](_0x61c2[69],this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]])}}else {logger[_0x61c2[46]](_0x61c2[70],_0x61c2[45])}}catch(e){logger[_0x61c2[48]](_0x61c2[70],JSON[_0x61c2[47]](e))}};VoiceAgentReport[_0x61c2[28]][_0x61c2[20]]= function(_0xc485x8){try{if(this[_0x61c2[27]](_0xc485x8)){if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]){for(var _0xc485x9 in this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]){if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0x61c2[49]](_0xc485x9)&& _[_0x61c2[29]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[17]])){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[17]]= true;this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[59]]= moment()[_0x61c2[33]](_0x61c2[32]);this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[60]]= _0x61c2[71];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[51]]= _0x61c2[71];ami[_0x61c2[43]](_0x61c2[72],this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9])}}}}else {logger[_0x61c2[46]](_0x61c2[73],_0x61c2[45])}}catch(e){logger[_0x61c2[48]](_0x61c2[73],JSON[_0x61c2[47]](e))}};VoiceAgentReport[_0x61c2[28]][_0x61c2[22]]= function(_0xc485x8){try{if(this[_0x61c2[27]](_0xc485x8)){if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]&& this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]]&& _[_0x61c2[29]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[21]])){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[21]]= true;this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[74]]= moment()[_0x61c2[33]](_0x61c2[32]);this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[51]]= _0x61c2[75];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[76]]= _0xc485x8[_0x61c2[76]];this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[60]]= _0xc485x8[_0x61c2[60]];if(this[_0x61c2[9]][_0xc485x8[_0x61c2[35]]]&& this[_0x61c2[9]][_0xc485x8[_0x61c2[35]]][_0x61c2[77]]){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[78]]= true;this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]][_0x61c2[79]]= this[_0x61c2[9]][_0xc485x8[_0x61c2[35]]][_0x61c2[80]]};ami[_0x61c2[43]](_0x61c2[81],this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x8[_0x61c2[31]]])}else {logger[_0x61c2[46]](_0x61c2[82],_0x61c2[67])}}else {logger[_0x61c2[46]](_0x61c2[82],_0x61c2[45])}}catch(e){logger[_0x61c2[48]](_0x61c2[82],JSON[_0x61c2[47]](e))}};VoiceAgentReport[_0x61c2[28]][_0x61c2[24]]= function(_0xc485x8){try{if(this[_0x61c2[27]](_0xc485x8)){this[_0x61c2[86]](_0xc485x8[_0x61c2[30]],_[_0x61c2[84]](_0xc485x8[_0x61c2[83]])[0],_0xc485x8[_0x61c2[85]]);if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]){for(var _0xc485x9 in this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]){if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0x61c2[49]](_0xc485x9)){if(_[_0x61c2[29]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[10]])){this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[10]]= {}};this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]][_0xc485x9][_0x61c2[10]]= this[_0x61c2[10]][_0xc485x8[_0x61c2[30]]]}else {logger[_0x61c2[46]](_0x61c2[87],_0x61c2[88])}}}else {logger[_0x61c2[46]](_0x61c2[87],_0x61c2[89])}}else {logger[_0x61c2[46]](_0x61c2[87],_0x61c2[90])}}catch(e){logger[_0x61c2[48]](_0x61c2[87],JSON[_0x61c2[47]](e))}};VoiceAgentReport[_0x61c2[28]][_0x61c2[86]]= function(_0xc485xa,_0xc485xb,_0xc485xc){if(_[_0x61c2[29]](this[_0x61c2[10]][_0xc485xa])){this[_0x61c2[10]][_0xc485xa]= {}};this[_0x61c2[10]][_0xc485xa][_0xc485xb]= _0xc485xc};VoiceAgentReport[_0x61c2[28]][_0x61c2[26]]= function(_0xc485x8){try{if(this[_0x61c2[27]](_0xc485x8)){if(this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]){ami[_0x61c2[43]](_0x61c2[91],_[_0x61c2[92]](this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]));delete this[_0x61c2[8]][_0xc485x8[_0x61c2[30]]]};if(this[_0x61c2[10]][_0xc485x8[_0x61c2[30]]]){delete this[_0x61c2[10]][_0xc485x8[_0x61c2[30]]]}}else {logger[_0x61c2[46]](_0x61c2[93],_0x61c2[94])}}catch(e){logger[_0x61c2[48]](_0x61c2[93],JSON[_0x61c2[47]](e))}};module[_0x61c2[95]]= VoiceAgentReport
\ No newline at end of file
+var _0x7b70=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x61\x6C\x6C\x65\x64","\x6F\x6E","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74","\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x52\x69\x6E\x67\x4E\x6F\x41\x6E\x73\x77\x65\x72","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x76\x61\x72\x73\x65\x74","\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x75\x6E\x69\x71\x75\x65\x69\x64","\x64\x65\x73\x74\x75\x6E\x69\x71\x75\x65\x69\x64","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x61\x6C\x6C\x65\x64","\x71\x75\x65\x75\x65","\x74\x79\x70\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x65\x76\x65\x6E\x74","\x70\x72\x69\x76\x69\x6C\x65\x67\x65","\x6F\x6D\x69\x74","\x6D\x65\x72\x67\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64","\x65\x6D\x69\x74","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x61\x6C\x6C\x65\x64\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x6F\x62\x6A\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74\x41\x74","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x63\x6F\x6E\x6E\x65\x63\x74","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x64\x65\x73\x74\x63\x68\x61\x6E\x6E\x65\x6C\x73\x74\x61\x74\x65","\x64\x65\x73\x74\x63\x68\x61\x6E\x6E\x65\x6C\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72\x41\x74","\x72\x65\x61\x73\x6F\x6E","\x61\x6E\x73\x77\x65\x72\x65\x64\x5F\x65\x6C\x73\x65\x77\x68\x65\x72\x65","\x61\x6E\x73\x77\x65\x72\x65\x64\x65\x6C\x73\x65\x77\x68\x65\x72\x65\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x75\x6E\x69\x71\x75\x65\x69\x64","\x61\x6E\x73\x77\x65\x72\x65\x64\x65\x6C\x73\x65\x77\x68\x65\x72\x65\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x61\x6E\x73\x77\x65\x72\x65\x64\x65\x6C\x73\x65\x77\x68\x65\x72\x65","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x63\x68\x61\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C\x5D","\x72\x65\x6A\x65\x63\x74\x65\x64","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x52\x69\x6E\x67\x4E\x6F\x41\x6E\x73\x77\x65\x72\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x61\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x74\x61\x6C\x6B\x74\x69\x6D\x65","\x61\x63\x77","\x61\x67\x65\x6E\x74\x61\x63\x77","\x61\x63\x77\x74\x69\x6D\x65","\x61\x63\x77\x54\x69\x6D\x65\x6F\x75\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x73","\x76\x61\x6C\x75\x65","\x61\x64\x64\x56\x61\x72\x69\x61\x62\x6C\x65","\x5B\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x74\x68\x69\x73\x2E\x63\x68\x61\x6E\x6E\x65\x6C\x73\x5B\x65\x76\x74\x2E\x75\x6E\x69\x71\x75\x65\x69\x64\x5D\x5B\x64\x65\x73\x74\x75\x6E\x69\x71\x75\x65\x69\x64\x5D\x2E\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x63\x68\x61\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C","\x6F\x62\x6A\x20\x6E\x75\x6C\x6C","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74","\x76\x61\x6C\x75\x65\x73","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x5D\x5B\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x4F\x62\x6A\x65\x63\x74\x20\x6E\x75\x6C\x6C\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0x7b70[0];var _=require(_0x7b70[1]);var moment=require(_0x7b70[2]);var logger=require(_0x7b70[4])(_0x7b70[3]);var ami=require(_0x7b70[5]);function VoiceAgentReport(_0xbb1ex6){console[_0x7b70[7]](_0x7b70[6]);this[_0x7b70[8]]= {};this[_0x7b70[9]]= _0xbb1ex6[_0x7b70[9]];this[_0x7b70[10]]= {};ami[_0x7b70[14]](_0x7b70[11],this[_0x7b70[13]][_0x7b70[12]](this));ami[_0x7b70[14]](_0x7b70[15],this[_0x7b70[16]][_0x7b70[12]](this));ami[_0x7b70[14]](_0x7b70[17],this[_0x7b70[18]][_0x7b70[12]](this));ami[_0x7b70[14]](_0x7b70[19],this[_0x7b70[20]][_0x7b70[12]](this));ami[_0x7b70[14]](_0x7b70[21],this[_0x7b70[22]][_0x7b70[12]](this));ami[_0x7b70[14]](_0x7b70[23],this[_0x7b70[24]][_0x7b70[12]](this));ami[_0x7b70[14]](_0x7b70[25],this[_0x7b70[26]][_0x7b70[12]](this))}VoiceAgentReport[_0x7b70[28]][_0x7b70[27]]= function(_0xbb1ex7){return _0xbb1ex7!== null&&  !_[_0x7b70[29]](_0xbb1ex7)};VoiceAgentReport[_0x7b70[28]][_0x7b70[13]]= function(_0xbb1ex8){try{if(this[_0x7b70[27]](_0xbb1ex8)){if(_[_0x7b70[29]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]])){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]= {}};if(_[_0x7b70[29]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]])){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]]= {agentcalledAt:moment()[_0x7b70[33]](_0x7b70[32]),lastevent:_0x7b70[34],variables:this[_0x7b70[10]][_0xbb1ex8[_0x7b70[30]]],type:this[_0x7b70[9]][_0xbb1ex8[_0x7b70[35]]]?this[_0x7b70[9]][_0xbb1ex8[_0x7b70[35]]][_0x7b70[36]]|| _0x7b70[37]:_0x7b70[37]}};_[_0x7b70[41]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]],_[_0x7b70[40]](_0xbb1ex8,[_0x7b70[38],_0x7b70[39]]));ami[_0x7b70[43]](_0x7b70[42],this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]])}else {logger[_0x7b70[46]](_0x7b70[44],_0x7b70[45])}}catch(e){logger[_0x7b70[48]](_0x7b70[44],JSON[_0x7b70[47]](e))}};VoiceAgentReport[_0x7b70[28]][_0x7b70[16]]= function(_0xbb1ex8){try{if(this[_0x7b70[27]](_0xbb1ex8)){if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]){for(var _0xbb1ex9 in this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]){if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0x7b70[49]](_0xbb1ex9)){if(_0xbb1ex8[_0x7b70[31]]=== _0xbb1ex9){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[50]]= moment()[_0x7b70[33]](_0x7b70[32]);this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[51]]= _0x7b70[52];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[53]]= _0xbb1ex8[_0x7b70[53]];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[54]]= _0xbb1ex8[_0x7b70[54]];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[55]]= _0xbb1ex8[_0x7b70[55]];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[56]]= _0xbb1ex8[_0x7b70[56]];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[57]]= _0xbb1ex8[_0x7b70[57]];ami[_0x7b70[43]](_0x7b70[58],this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9])}else {if(this[_0x7b70[27]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[17]])){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[17]]= true;this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[59]]= moment()[_0x7b70[33]](_0x7b70[32]);this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[60]]= _0x7b70[61];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[51]]= _0x7b70[61];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[62]]= _0xbb1ex8[_0x7b70[31]];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[63]]= _0xbb1ex8[_0x7b70[64]];ami[_0x7b70[43]](_0x7b70[65],this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9])}else {logger[_0x7b70[46]](_0x7b70[66],_0x7b70[67])}}}}}}else {logger[_0x7b70[46]](_0x7b70[66],_0x7b70[45])}}catch(e){logger[_0x7b70[48]](_0x7b70[66],JSON[_0x7b70[47]](e))}};VoiceAgentReport[_0x7b70[28]][_0x7b70[18]]= function(_0xbb1ex8){try{if(this[_0x7b70[27]](_0xbb1ex8)){if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]&& this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]]&& _[_0x7b70[29]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[17]])){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[17]]= true;this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[59]]= moment()[_0x7b70[33]](_0x7b70[32]);this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[60]]= _0x7b70[68];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[51]]= _0x7b70[68];ami[_0x7b70[43]](_0x7b70[69],this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]])}}else {logger[_0x7b70[46]](_0x7b70[70],_0x7b70[45])}}catch(e){logger[_0x7b70[48]](_0x7b70[70],JSON[_0x7b70[47]](e))}};VoiceAgentReport[_0x7b70[28]][_0x7b70[20]]= function(_0xbb1ex8){try{if(this[_0x7b70[27]](_0xbb1ex8)){if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]){for(var _0xbb1ex9 in this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]){if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0x7b70[49]](_0xbb1ex9)&& _[_0x7b70[29]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[17]])){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[17]]= true;this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[59]]= moment()[_0x7b70[33]](_0x7b70[32]);this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[60]]= _0x7b70[71];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[51]]= _0x7b70[71];ami[_0x7b70[43]](_0x7b70[72],this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9])}}}}else {logger[_0x7b70[46]](_0x7b70[73],_0x7b70[45])}}catch(e){logger[_0x7b70[48]](_0x7b70[73],JSON[_0x7b70[47]](e))}};VoiceAgentReport[_0x7b70[28]][_0x7b70[22]]= function(_0xbb1ex8){try{if(this[_0x7b70[27]](_0xbb1ex8)){if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]&& this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]]&& _[_0x7b70[29]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[21]])){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[21]]= true;this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[74]]= moment()[_0x7b70[33]](_0x7b70[32]);this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[51]]= _0x7b70[75];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[76]]= _0xbb1ex8[_0x7b70[76]];this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[60]]= _0xbb1ex8[_0x7b70[60]];if(this[_0x7b70[9]][_0xbb1ex8[_0x7b70[35]]]&& this[_0x7b70[9]][_0xbb1ex8[_0x7b70[35]]][_0x7b70[77]]){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[78]]= true;this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]][_0x7b70[79]]= this[_0x7b70[9]][_0xbb1ex8[_0x7b70[35]]][_0x7b70[80]]};ami[_0x7b70[43]](_0x7b70[81],this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex8[_0x7b70[31]]])}else {logger[_0x7b70[46]](_0x7b70[82],_0x7b70[67])}}else {logger[_0x7b70[46]](_0x7b70[82],_0x7b70[45])}}catch(e){logger[_0x7b70[48]](_0x7b70[82],JSON[_0x7b70[47]](e))}};VoiceAgentReport[_0x7b70[28]][_0x7b70[24]]= function(_0xbb1ex8){try{if(this[_0x7b70[27]](_0xbb1ex8)){this[_0x7b70[86]](_0xbb1ex8[_0x7b70[30]],_[_0x7b70[84]](_0xbb1ex8[_0x7b70[83]])[0],_0xbb1ex8[_0x7b70[85]]);if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]){for(var _0xbb1ex9 in this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]){if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0x7b70[49]](_0xbb1ex9)){if(_[_0x7b70[29]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[10]])){this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[10]]= {}};this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]][_0xbb1ex9][_0x7b70[10]]= this[_0x7b70[10]][_0xbb1ex8[_0x7b70[30]]]}else {logger[_0x7b70[46]](_0x7b70[87],_0x7b70[88])}}}else {logger[_0x7b70[46]](_0x7b70[87],_0x7b70[89])}}else {logger[_0x7b70[46]](_0x7b70[87],_0x7b70[90])}}catch(e){logger[_0x7b70[48]](_0x7b70[87],JSON[_0x7b70[47]](e))}};VoiceAgentReport[_0x7b70[28]][_0x7b70[86]]= function(_0xbb1exa,_0xbb1exb,_0xbb1exc){if(_[_0x7b70[29]](this[_0x7b70[10]][_0xbb1exa])){this[_0x7b70[10]][_0xbb1exa]= {}};this[_0x7b70[10]][_0xbb1exa][_0xbb1exb]= _0xbb1exc};VoiceAgentReport[_0x7b70[28]][_0x7b70[26]]= function(_0xbb1ex8){try{if(this[_0x7b70[27]](_0xbb1ex8)){if(this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]){ami[_0x7b70[43]](_0x7b70[91],_[_0x7b70[92]](this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]));delete this[_0x7b70[8]][_0xbb1ex8[_0x7b70[30]]]};if(this[_0x7b70[10]][_0xbb1ex8[_0x7b70[30]]]){delete this[_0x7b70[10]][_0xbb1ex8[_0x7b70[30]]]}}else {logger[_0x7b70[46]](_0x7b70[93],_0x7b70[94])}}catch(e){logger[_0x7b70[48]](_0x7b70[93],JSON[_0x7b70[47]](e))}};module[_0x7b70[95]]= VoiceAgentReport
\ No newline at end of file
index 401e987..52832d9 100644 (file)
@@ -1 +1 @@
-var _0x9972=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x63\x68\x61\x6E\x6E\x65\x6C","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x6E\x6F\x74\x5F\x69\x6E\x75\x73\x65","\x69\x6E\x75\x73\x65","\x62\x75\x73\x79","\x69\x6E\x76\x61\x6C\x69\x64","\x75\x6E\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x72\x69\x6E\x67\x69\x6E\x67","\x72\x69\x6E\x67\x69\x6E\x75\x73\x65","\x6F\x6E\x68\x6F\x6C\x64","\x73\x65\x74","\x71\x75\x65\x75\x65","\x61\x67\x69","\x64\x69\x61\x6C","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x4E\x4F\x20\x41\x4E\x53\x57\x45\x52","\x46\x41\x49\x4C\x45\x44","\x41\x4E\x53\x57\x45\x52\x45\x44","\x42\x55\x53\x59","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x63\x6F\x72\x65\x73\x68\x6F\x77\x63\x68\x61\x6E\x6E\x65\x6C","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x4E\x65\x77\x45\x78\x74\x65\x6E","\x6F\x6E","\x6E\x65\x77\x65\x78\x74\x65\x6E","\x6E\x65\x77\x63\x68\x61\x6E\x6E\x65\x6C","\x73\x79\x6E\x63\x4E\x65\x77\x43\x68\x61\x6E\x6E\x65\x6C","\x6E\x65\x77\x73\x74\x61\x74\x65","\x73\x79\x6E\x63\x4E\x65\x77\x53\x74\x61\x74\x65","\x76\x61\x72\x73\x65\x74","\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x63\x61\x74\x63\x68","\x61\x63\x74\x69\x6F\x6E\x43\x6F\x72\x65\x53\x68\x6F\x77\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x74\x68\x65\x6E","\x72\x65\x73\x6F\x6C\x76\x65","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x65\x6D\x69\x74","\x74\x6F","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x68\x61\x6E\x6E\x65\x6C\x73\x74\x61\x74\x65","\x74\x6F\x4E\x75\x6D\x62\x65\x72","\x6B\x65\x79\x73","\x70\x69\x63\x6B","\x6D\x65\x72\x67\x65","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x63\x72\x65\x61\x74\x65\x64","\x5B\x73\x79\x6E\x63\x4E\x65\x77\x43\x68\x61\x6E\x6E\x65\x6C\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x63\x68\x61\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x5B\x6F\x62\x6A\x20\x6E\x75\x6C\x6C\x5D","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x64\x61\x74\x61","\x61\x70\x70\x64\x61\x74\x61","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x73\x65\x63\x6F\x6E\x64\x73","\x73\x75\x62\x74\x72\x61\x63\x74","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x75\x70\x64\x61\x74\x65\x64","\x6C\x61\x73\x74\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6C\x61\x73\x74\x64\x61\x74\x61","\x63\x64\x72\x28","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x3D","\x73\x70\x6C\x69\x74","\x6D\x61\x74\x63\x68","\x2C","\x5B\x73\x79\x6E\x63\x4E\x65\x77\x45\x78\x74\x65\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x36","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x61\x6E\x73\x77\x65\x72\x65\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x61\x6E\x73\x77\x65\x72\x65\x64","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x63\x68\x61\x6E\x6E\x65\x6C","\x5B\x73\x79\x6E\x63\x4E\x65\x77\x53\x74\x61\x74\x65\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","\x6D\x69\x78\x6D\x6F\x6E\x69\x74\x6F\x72\x5F\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x6D\x6F\x6E\x69\x74\x6F\x72\x65\x64","\x6D\x6F\x6E\x69\x74\x6F\x72","\x6D\x6F\x6E\x69\x74\x6F\x72\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x5B\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x72\x65\x6D\x6F\x76\x65\x64","\x65\x6E\x64\x74\x69\x6D\x65","\x64\x69\x66\x66","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0x9972[0];var BPromise=require(_0x9972[1]);var _=require(_0x9972[2]);var moment=require(_0x9972[3]);var util=require(_0x9972[4]);var logger=require(_0x9972[6])(_0x9972[5]);var ami=require(_0x9972[7]);var Channel=require(_0x9972[8]);var statusDesc=[_0x9972[9],_0x9972[10],_0x9972[11],_0x9972[12],_0x9972[13],_0x9972[14],_0x9972[15],_0x9972[16],_0x9972[17]];var applications=[_0x9972[18],_0x9972[19],_0x9972[20],_0x9972[21],_0x9972[22],_0x9972[23]];var dispositions=[_0x9972[24],_0x9972[25],_0x9972[25],_0x9972[24],_0x9972[24],_0x9972[24],_0x9972[26],_0x9972[27],_0x9972[25],_0x9972[25],_0x9972[25]];var actions={};var io=require(_0x9972[29])({host:_0x9972[28],port:6379});function VoiceCallReport(_0x44e6xe){console[_0x9972[31]](_0x9972[30]);this[_0x9972[32]]= {};ami[_0x9972[36]](_0x9972[33],this[_0x9972[35]][_0x9972[34]](this));ami[_0x9972[36]](_0x9972[37],this[_0x9972[35]][_0x9972[34]](this));ami[_0x9972[36]](_0x9972[38],this[_0x9972[39]][_0x9972[34]](this));ami[_0x9972[36]](_0x9972[40],this[_0x9972[41]][_0x9972[34]](this));ami[_0x9972[36]](_0x9972[42],this[_0x9972[43]][_0x9972[34]](this));ami[_0x9972[36]](_0x9972[44],this[_0x9972[45]][_0x9972[34]](this));return BPromise[_0x9972[49]]()[_0x9972[48]](ami[_0x9972[47]]())[_0x9972[46]](function(_0x44e6xf){console[_0x9972[31]](_0x44e6xf)})}VoiceCallReport[_0x9972[51]][_0x9972[50]]= function(_0x44e6x10){return _0x44e6x10!== null&&  !_[_0x9972[52]](_0x44e6x10)};VoiceCallReport[_0x9972[51]][_0x9972[53]]= function(_0x44e6x11,_0x44e6x12,_0x44e6x10){io[_0x9972[54]](_0x44e6x11)[_0x9972[53]](_0x44e6x12,_0x44e6x10)};VoiceCallReport[_0x9972[51]][_0x9972[39]]= function(_0x44e6x12){try{if(this[_0x9972[50]](_0x44e6x12)){if(_0x44e6x12[_0x9972[55]]=== _0x44e6x12[_0x9972[56]]){if(_[_0x9972[52]](this[_0x9972[32]][_0x44e6x12[_0x9972[55]]])){this[_0x9972[32]][_0x44e6x12[_0x9972[55]]]=  new Channel();this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[57]]= moment()[_0x9972[59]](_0x9972[58]);this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[60]]= dispositions[_[_0x9972[62]](_0x44e6x12[_0x9972[61]])];_[_0x9972[65]](this[_0x9972[32]][_0x44e6x12[_0x9972[55]]],_[_0x9972[64]](_0x44e6x12,_[_0x9972[63]](this[_0x9972[32]][_0x44e6x12[_0x9972[55]]])));console[_0x9972[31]](_0x9972[66],_0x44e6x12[_0x9972[55]])}else {logger[_0x9972[69]](_0x9972[67],_0x9972[68])}}}else {logger[_0x9972[69]](_0x9972[67],_0x9972[70])}}catch(e){logger[_0x9972[72]](_0x9972[67],JSON[_0x9972[71]](e))}};VoiceCallReport[_0x9972[51]][_0x9972[35]]= function(_0x44e6x12){try{if(this[_0x9972[50]](_0x44e6x12)){if(_0x44e6x12[_0x9972[55]]=== _0x44e6x12[_0x9972[56]]){_0x44e6x12[_0x9972[73]]= _0x44e6x12[_0x9972[73]][_0x9972[74]]();_0x44e6x12[_0x9972[75]]= (_0x44e6x12[_0x9972[76]]|| _0x44e6x12[_0x9972[75]])[_0x9972[74]]();if(_[_0x9972[52]](this[_0x9972[32]][_0x44e6x12[_0x9972[55]]])){this[_0x9972[32]][_0x44e6x12[_0x9972[55]]]=  new Channel();this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[57]]= _0x44e6x12[_0x9972[77]]?moment()[_0x9972[79]](moment[_0x9972[77]](_0x44e6x12[_0x9972[77]])[_0x9972[78]](),_0x9972[78])[_0x9972[59]](_0x9972[58]):moment()[_0x9972[59]](_0x9972[58]);this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[60]]= _0x9972[24];console[_0x9972[31]](_0x9972[66],_0x44e6x12[_0x9972[55]])};_[_0x9972[65]](this[_0x9972[32]][_0x44e6x12[_0x9972[55]]],_[_0x9972[64]](_0x44e6x12,_[_0x9972[63]](this[_0x9972[32]][_0x44e6x12[_0x9972[55]]])));if(_[_0x9972[80]](applications,_0x44e6x12[_0x9972[73]])){console[_0x9972[31]](_0x9972[81],_0x44e6x12[_0x9972[55]],_0x44e6x12[_0x9972[73]],_0x44e6x12[_0x9972[75]]);this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[82]]= _0x44e6x12[_0x9972[73]];this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[83]]= _0x44e6x12[_0x9972[75]];if(_0x44e6x12[_0x9972[73]]=== _0x9972[18]&& _[_0x9972[85]](_0x44e6x12[_0x9972[75]],_0x9972[84])){var _0x44e6x13=_0x44e6x12[_0x9972[75]][_0x9972[87]](_0x9972[86]);var _0x44e6x14=_0x44e6x13[0][_0x9972[88]](/cdr\((.*)\)/);if(_0x44e6x14){this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x44e6x14[1]]= _0x44e6x13[1]}}else {if(_0x44e6x12[_0x9972[73]]=== _0x9972[19]){this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[19]]= _0x44e6x12[_0x9972[75]][_0x9972[87]](_0x9972[89])[0]}}}}}else {logger[_0x9972[69]](_0x9972[90],_0x9972[70])}}catch(e){logger[_0x9972[72]](_0x9972[90],JSON[_0x9972[71]](e))}};VoiceCallReport[_0x9972[51]][_0x9972[41]]= function(_0x44e6x12){try{if(this[_0x9972[50]](_0x44e6x12)){if(_0x44e6x12[_0x9972[55]]!== _0x44e6x12[_0x9972[56]]){if(this[_0x9972[32]][_0x44e6x12[_0x9972[56]]]){if(_0x44e6x12[_0x9972[61]]=== _0x9972[91]){console[_0x9972[31]](_0x9972[92],_0x44e6x12[_0x9972[55]],_0x44e6x12[_0x9972[93]],_0x44e6x12[_0x9972[94]]);this[_0x9972[32]][_0x44e6x12[_0x9972[56]]][_0x9972[95]]= true;this[_0x9972[32]][_0x44e6x12[_0x9972[56]]][_0x9972[96]]= moment()[_0x9972[59]](_0x9972[58]);this[_0x9972[32]][_0x44e6x12[_0x9972[56]]][_0x9972[56]]= _0x44e6x12[_0x9972[55]];this[_0x9972[32]][_0x44e6x12[_0x9972[56]]][_0x9972[97]]= _0x44e6x12[_0x9972[93]];this[_0x9972[32]][_0x44e6x12[_0x9972[56]]][_0x9972[98]]= _0x44e6x12[_0x9972[94]];this[_0x9972[32]][_0x44e6x12[_0x9972[56]]][_0x9972[99]]= _0x44e6x12[_0x9972[100]];this[_0x9972[32]][_0x44e6x12[_0x9972[56]]][_0x9972[60]]= dispositions[_[_0x9972[62]](_0x44e6x12[_0x9972[61]])]}}else {logger[_0x9972[69]](_0x9972[101],_0x9972[68])}}}else {logger[_0x9972[69]](_0x9972[101],_0x9972[70])}}catch(e){logger[_0x9972[72]](_0x9972[101],JSON[_0x9972[71]](e))}};VoiceCallReport[_0x9972[51]][_0x9972[43]]= function(_0x44e6x12){try{if(this[_0x9972[50]](_0x44e6x12)){if(this[_0x9972[32]][_0x44e6x12[_0x9972[55]]]){if(this[_0x9972[50]](_0x44e6x12[_0x9972[102]])&& this[_0x9972[50]](_0x44e6x12[_0x9972[102]][_0x9972[103]])){console[_0x9972[31]](_0x9972[104],_0x44e6x12[_0x9972[55]]);this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[105]]= true;this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[106]]= _0x44e6x12[_0x9972[107]]}}}}catch(e){logger[_0x9972[72]](_0x9972[108],JSON[_0x9972[71]](e))}};VoiceCallReport[_0x9972[51]][_0x9972[45]]= function(_0x44e6x12){try{if(this[_0x9972[50]](_0x44e6x12)){if(this[_0x9972[32]][_0x44e6x12[_0x9972[55]]]){console[_0x9972[31]](_0x9972[109],_0x44e6x12[_0x9972[55]]);var _0x44e6x15=moment();this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[110]]= _0x44e6x15[_0x9972[59]](_0x9972[58]);this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[77]]= _0x44e6x15[_0x9972[111]](this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[57]],_0x9972[78]);if(this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[95]]){this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[112]]= _0x44e6x15[_0x9972[111]](this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[96]],_0x9972[78]);this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[113]]= this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[77]]- this[_0x9972[32]][_0x44e6x12[_0x9972[55]]][_0x9972[112]]};ami[_0x9972[53]](_0x9972[114],this[_0x9972[32]][_0x44e6x12[_0x9972[55]]]);delete this[_0x9972[32]][_0x44e6x12[_0x9972[55]]]}else {logger[_0x9972[69]](_0x9972[115],_0x9972[68])}}else {logger[_0x9972[69]](_0x9972[115],_0x9972[70])}}catch(e){logger[_0x9972[72]](_0x9972[115],JSON[_0x9972[71]](e))}};module[_0x9972[116]]= VoiceCallReport
\ No newline at end of file
+var _0xb202=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x63\x68\x61\x6E\x6E\x65\x6C","\x75\x6E\x6B\x6E\x6F\x77\x6E","\x6E\x6F\x74\x5F\x69\x6E\x75\x73\x65","\x69\x6E\x75\x73\x65","\x62\x75\x73\x79","\x69\x6E\x76\x61\x6C\x69\x64","\x75\x6E\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x72\x69\x6E\x67\x69\x6E\x67","\x72\x69\x6E\x67\x69\x6E\x75\x73\x65","\x6F\x6E\x68\x6F\x6C\x64","\x73\x65\x74","\x71\x75\x65\x75\x65","\x61\x67\x69","\x64\x69\x61\x6C","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x4E\x4F\x20\x41\x4E\x53\x57\x45\x52","\x46\x41\x49\x4C\x45\x44","\x41\x4E\x53\x57\x45\x52\x45\x44","\x42\x55\x53\x59","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x63\x6F\x72\x65\x73\x68\x6F\x77\x63\x68\x61\x6E\x6E\x65\x6C","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x4E\x65\x77\x45\x78\x74\x65\x6E","\x6F\x6E","\x6E\x65\x77\x65\x78\x74\x65\x6E","\x6E\x65\x77\x63\x68\x61\x6E\x6E\x65\x6C","\x73\x79\x6E\x63\x4E\x65\x77\x43\x68\x61\x6E\x6E\x65\x6C","\x6E\x65\x77\x73\x74\x61\x74\x65","\x73\x79\x6E\x63\x4E\x65\x77\x53\x74\x61\x74\x65","\x76\x61\x72\x73\x65\x74","\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x63\x61\x74\x63\x68","\x61\x63\x74\x69\x6F\x6E\x43\x6F\x72\x65\x53\x68\x6F\x77\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x74\x68\x65\x6E","\x72\x65\x73\x6F\x6C\x76\x65","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x65\x6D\x69\x74","\x74\x6F","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x68\x61\x6E\x6E\x65\x6C\x73\x74\x61\x74\x65","\x74\x6F\x4E\x75\x6D\x62\x65\x72","\x6B\x65\x79\x73","\x70\x69\x63\x6B","\x6D\x65\x72\x67\x65","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x63\x72\x65\x61\x74\x65\x64","\x5B\x73\x79\x6E\x63\x4E\x65\x77\x43\x68\x61\x6E\x6E\x65\x6C\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x63\x68\x61\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x5B\x6F\x62\x6A\x20\x6E\x75\x6C\x6C\x5D","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x64\x61\x74\x61","\x61\x70\x70\x64\x61\x74\x61","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x73\x65\x63\x6F\x6E\x64\x73","\x73\x75\x62\x74\x72\x61\x63\x74","\x69\x6E\x63\x6C\x75\x64\x65\x73","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x75\x70\x64\x61\x74\x65\x64","\x6C\x61\x73\x74\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6C\x61\x73\x74\x64\x61\x74\x61","\x63\x64\x72\x28","\x73\x74\x61\x72\x74\x73\x57\x69\x74\x68","\x3D","\x73\x70\x6C\x69\x74","\x6D\x61\x74\x63\x68","\x2C","\x5B\x73\x79\x6E\x63\x4E\x65\x77\x45\x78\x74\x65\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x36","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x61\x6E\x73\x77\x65\x72\x65\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x61\x6E\x73\x77\x65\x72\x65\x64","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x64\x65\x73\x74\x69\x6E\x61\x74\x69\x6F\x6E\x63\x68\x61\x6E\x6E\x65\x6C","\x63\x68\x61\x6E\x6E\x65\x6C","\x5B\x73\x79\x6E\x63\x4E\x65\x77\x53\x74\x61\x74\x65\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","\x6D\x69\x78\x6D\x6F\x6E\x69\x74\x6F\x72\x5F\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x6D\x6F\x6E\x69\x74\x6F\x72\x65\x64","\x6D\x6F\x6E\x69\x74\x6F\x72","\x6D\x6F\x6E\x69\x74\x6F\x72\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x5B\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x43\x48\x41\x4E\x4E\x45\x4C\x3A\x72\x65\x6D\x6F\x76\x65\x64","\x65\x6E\x64\x74\x69\x6D\x65","\x64\x69\x66\x66","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x5D\x5B\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0xb202[0];var BPromise=require(_0xb202[1]);var _=require(_0xb202[2]);var moment=require(_0xb202[3]);var util=require(_0xb202[4]);var logger=require(_0xb202[6])(_0xb202[5]);var ami=require(_0xb202[7]);var Channel=require(_0xb202[8]);var statusDesc=[_0xb202[9],_0xb202[10],_0xb202[11],_0xb202[12],_0xb202[13],_0xb202[14],_0xb202[15],_0xb202[16],_0xb202[17]];var applications=[_0xb202[18],_0xb202[19],_0xb202[20],_0xb202[21],_0xb202[22],_0xb202[23]];var dispositions=[_0xb202[24],_0xb202[25],_0xb202[25],_0xb202[24],_0xb202[24],_0xb202[24],_0xb202[26],_0xb202[27],_0xb202[25],_0xb202[25],_0xb202[25]];var actions={};var io=require(_0xb202[29])({host:_0xb202[28],port:6379});function VoiceCallReport(_0x2e1axe){console[_0xb202[31]](_0xb202[30]);this[_0xb202[32]]= {};ami[_0xb202[36]](_0xb202[33],this[_0xb202[35]][_0xb202[34]](this));ami[_0xb202[36]](_0xb202[37],this[_0xb202[35]][_0xb202[34]](this));ami[_0xb202[36]](_0xb202[38],this[_0xb202[39]][_0xb202[34]](this));ami[_0xb202[36]](_0xb202[40],this[_0xb202[41]][_0xb202[34]](this));ami[_0xb202[36]](_0xb202[42],this[_0xb202[43]][_0xb202[34]](this));ami[_0xb202[36]](_0xb202[44],this[_0xb202[45]][_0xb202[34]](this));return BPromise[_0xb202[49]]()[_0xb202[48]](ami[_0xb202[47]]())[_0xb202[46]](function(_0x2e1axf){console[_0xb202[31]](_0x2e1axf)})}VoiceCallReport[_0xb202[51]][_0xb202[50]]= function(_0x2e1ax10){return _0x2e1ax10!== null&&  !_[_0xb202[52]](_0x2e1ax10)};VoiceCallReport[_0xb202[51]][_0xb202[53]]= function(_0x2e1ax11,_0x2e1ax12,_0x2e1ax10){io[_0xb202[54]](_0x2e1ax11)[_0xb202[53]](_0x2e1ax12,_0x2e1ax10)};VoiceCallReport[_0xb202[51]][_0xb202[39]]= function(_0x2e1ax12){try{if(this[_0xb202[50]](_0x2e1ax12)){if(_0x2e1ax12[_0xb202[55]]=== _0x2e1ax12[_0xb202[56]]){if(_[_0xb202[52]](this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]])){this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]]=  new Channel();this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[57]]= moment()[_0xb202[59]](_0xb202[58]);this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[60]]= dispositions[_[_0xb202[62]](_0x2e1ax12[_0xb202[61]])];_[_0xb202[65]](this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]],_[_0xb202[64]](_0x2e1ax12,_[_0xb202[63]](this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]])));console[_0xb202[31]](_0xb202[66],_0x2e1ax12[_0xb202[55]])}else {logger[_0xb202[69]](_0xb202[67],_0xb202[68])}}}else {logger[_0xb202[69]](_0xb202[67],_0xb202[70])}}catch(e){logger[_0xb202[72]](_0xb202[67],JSON[_0xb202[71]](e))}};VoiceCallReport[_0xb202[51]][_0xb202[35]]= function(_0x2e1ax12){try{if(this[_0xb202[50]](_0x2e1ax12)){if(_0x2e1ax12[_0xb202[55]]=== _0x2e1ax12[_0xb202[56]]){_0x2e1ax12[_0xb202[73]]= _0x2e1ax12[_0xb202[73]][_0xb202[74]]();_0x2e1ax12[_0xb202[75]]= (_0x2e1ax12[_0xb202[76]]|| _0x2e1ax12[_0xb202[75]])[_0xb202[74]]();if(_[_0xb202[52]](this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]])){this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]]=  new Channel();this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[57]]= _0x2e1ax12[_0xb202[77]]?moment()[_0xb202[79]](moment[_0xb202[77]](_0x2e1ax12[_0xb202[77]])[_0xb202[78]](),_0xb202[78])[_0xb202[59]](_0xb202[58]):moment()[_0xb202[59]](_0xb202[58]);this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[60]]= _0xb202[24];console[_0xb202[31]](_0xb202[66],_0x2e1ax12[_0xb202[55]])};_[_0xb202[65]](this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]],_[_0xb202[64]](_0x2e1ax12,_[_0xb202[63]](this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]])));if(_[_0xb202[80]](applications,_0x2e1ax12[_0xb202[73]])){console[_0xb202[31]](_0xb202[81],_0x2e1ax12[_0xb202[55]],_0x2e1ax12[_0xb202[73]],_0x2e1ax12[_0xb202[75]]);this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[82]]= _0x2e1ax12[_0xb202[73]];this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[83]]= _0x2e1ax12[_0xb202[75]];if(_0x2e1ax12[_0xb202[73]]=== _0xb202[18]&& _[_0xb202[85]](_0x2e1ax12[_0xb202[75]],_0xb202[84])){var _0x2e1ax13=_0x2e1ax12[_0xb202[75]][_0xb202[87]](_0xb202[86]);var _0x2e1ax14=_0x2e1ax13[0][_0xb202[88]](/cdr\((.*)\)/);if(_0x2e1ax14){this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0x2e1ax14[1]]= _0x2e1ax13[1]}}else {if(_0x2e1ax12[_0xb202[73]]=== _0xb202[19]){this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[19]]= _0x2e1ax12[_0xb202[75]][_0xb202[87]](_0xb202[89])[0]}}}}}else {logger[_0xb202[69]](_0xb202[90],_0xb202[70])}}catch(e){logger[_0xb202[72]](_0xb202[90],JSON[_0xb202[71]](e))}};VoiceCallReport[_0xb202[51]][_0xb202[41]]= function(_0x2e1ax12){try{if(this[_0xb202[50]](_0x2e1ax12)){if(_0x2e1ax12[_0xb202[55]]!== _0x2e1ax12[_0xb202[56]]){if(this[_0xb202[32]][_0x2e1ax12[_0xb202[56]]]){if(_0x2e1ax12[_0xb202[61]]=== _0xb202[91]){console[_0xb202[31]](_0xb202[92],_0x2e1ax12[_0xb202[55]],_0x2e1ax12[_0xb202[93]],_0x2e1ax12[_0xb202[94]]);this[_0xb202[32]][_0x2e1ax12[_0xb202[56]]][_0xb202[95]]= true;this[_0xb202[32]][_0x2e1ax12[_0xb202[56]]][_0xb202[96]]= moment()[_0xb202[59]](_0xb202[58]);this[_0xb202[32]][_0x2e1ax12[_0xb202[56]]][_0xb202[56]]= _0x2e1ax12[_0xb202[55]];this[_0xb202[32]][_0x2e1ax12[_0xb202[56]]][_0xb202[97]]= _0x2e1ax12[_0xb202[93]];this[_0xb202[32]][_0x2e1ax12[_0xb202[56]]][_0xb202[98]]= _0x2e1ax12[_0xb202[94]];this[_0xb202[32]][_0x2e1ax12[_0xb202[56]]][_0xb202[99]]= _0x2e1ax12[_0xb202[100]];this[_0xb202[32]][_0x2e1ax12[_0xb202[56]]][_0xb202[60]]= dispositions[_[_0xb202[62]](_0x2e1ax12[_0xb202[61]])]}}else {logger[_0xb202[69]](_0xb202[101],_0xb202[68])}}}else {logger[_0xb202[69]](_0xb202[101],_0xb202[70])}}catch(e){logger[_0xb202[72]](_0xb202[101],JSON[_0xb202[71]](e))}};VoiceCallReport[_0xb202[51]][_0xb202[43]]= function(_0x2e1ax12){try{if(this[_0xb202[50]](_0x2e1ax12)){if(this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]]){if(this[_0xb202[50]](_0x2e1ax12[_0xb202[102]])&& this[_0xb202[50]](_0x2e1ax12[_0xb202[102]][_0xb202[103]])){console[_0xb202[31]](_0xb202[104],_0x2e1ax12[_0xb202[55]]);this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[105]]= true;this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[106]]= _0x2e1ax12[_0xb202[107]]}}}}catch(e){logger[_0xb202[72]](_0xb202[108],JSON[_0xb202[71]](e))}};VoiceCallReport[_0xb202[51]][_0xb202[45]]= function(_0x2e1ax12){try{if(this[_0xb202[50]](_0x2e1ax12)){if(this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]]){console[_0xb202[31]](_0xb202[109],_0x2e1ax12[_0xb202[55]]);var _0x2e1ax15=moment();this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[110]]= _0x2e1ax15[_0xb202[59]](_0xb202[58]);this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[77]]= _0x2e1ax15[_0xb202[111]](this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[57]],_0xb202[78]);if(this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[95]]){this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[112]]= _0x2e1ax15[_0xb202[111]](this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[96]],_0xb202[78]);this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[113]]= this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[77]]- this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]][_0xb202[112]]};ami[_0xb202[53]](_0xb202[114],this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]]);delete this[_0xb202[32]][_0x2e1ax12[_0xb202[55]]]}else {logger[_0xb202[69]](_0xb202[115],_0xb202[68])}}else {logger[_0xb202[69]](_0xb202[115],_0xb202[70])}}catch(e){logger[_0xb202[72]](_0xb202[115],JSON[_0xb202[71]](e))}};module[_0xb202[116]]= VoiceCallReport
\ No newline at end of file
index 615a5f0..c5dde38 100644 (file)
@@ -1 +1 @@
-var _0xf98c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x64\x69\x61\x6C\x62\x65\x67\x69\x6E","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x44\x69\x61\x6C\x42\x65\x67\x69\x6E","\x6F\x6E","\x64\x69\x61\x6C\x65\x6E\x64","\x73\x79\x6E\x63\x44\x69\x61\x6C\x45\x6E\x64","\x76\x61\x72\x73\x65\x74","\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x65\x6D\x69\x74","\x74\x6F","\x75\x6E\x69\x71\x75\x65\x69\x64","\x44\x49\x41\x4C\x3A\x75\x70\x64\x61\x74\x65\x64","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x61\x6C\x6C\x65\x64","\x2D","\x6C\x61\x73\x74\x49\x6E\x64\x65\x78\x4F\x66","\x63\x68\x61\x6E\x6E\x65\x6C","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x2F","\x65\x76\x65\x6E\x74","\x70\x72\x69\x76\x69\x6C\x65\x67\x65","\x6F\x6D\x69\x74","\x6D\x65\x72\x67\x65","\x76\x6F\x69\x63\x65\x3A\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x76\x6F\x69\x63\x65\x5F\x6F\x75\x74\x62\x6F\x75\x6E\x64\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x3A\x73\x61\x76\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x62\x65\x67\x69\x6E","\x5B\x73\x79\x6E\x63\x44\x69\x61\x6C\x42\x65\x67\x69\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x63\x68\x65\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x5B\x6F\x62\x6A\x20\x6E\x75\x6C\x6C\x5D","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x64\x69\x61\x6C\x73\x74\x61\x74\x75\x73","\x41\x4E\x53\x57\x45\x52","\x44\x49\x41\x4C\x3A\x61\x6E\x73\x77\x65\x72\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x63\x6F\x6E\x6E\x65\x63\x74","\x5B\x73\x79\x6E\x63\x44\x69\x61\x6C\x45\x6E\x64\x5D\x5B\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x63\x68\x61\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x73","\x76\x61\x6C\x75\x65","\x61\x64\x64\x56\x61\x72\x69\x61\x62\x6C\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x72\x6F\x75\x74\x65\x69\x64","\x44\x49\x41\x4C\x3A\x63\x72\x65\x61\x74\x65\x64","\x5B\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74\x5D\x5B\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x6E\x75\x6C\x6C\x5D","\x44\x49\x41\x4C\x3A\x72\x65\x6D\x6F\x76\x65\x64","\x65\x6E\x64\x74\x69\x6D\x65","\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x74\x6F\x74\x61\x6C","\x61\x6E\x73\x77\x65\x72\x65\x64","\x73\x75\x6D\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x75\x6D\x42\x69\x6C\x6C\x61\x62\x6C\x65","\x73\x75\x6D\x44\x75\x72\x61\x74\x69\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x65\x6E\x64","\x76\x6F\x69\x63\x65\x5F\x6F\x75\x74\x62\x6F\x75\x6E\x64\x3A\x73\x61\x76\x65","\x76\x6F\x69\x63\x65\x5F\x6F\x75\x74\x62\x6F\x75\x6E\x64\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x3A\x72\x65\x6D\x6F\x76\x65","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x5D\x5B\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0xf98c[0];var _=require(_0xf98c[1]);var moment=require(_0xf98c[2]);var logger=require(_0xf98c[4])(_0xf98c[3]);var ami=require(_0xf98c[5]);var io=require(_0xf98c[7])({host:_0xf98c[6],port:6379});function VoiceDialReport(_0x6168x7){console[_0xf98c[9]](_0xf98c[8]);this[_0xf98c[10]]= _0x6168x7[_0xf98c[11]];this[_0xf98c[12]]= _0x6168x7[_0xf98c[12]];this[_0xf98c[13]]= {};ami[_0xf98c[17]](_0xf98c[14],this[_0xf98c[16]][_0xf98c[15]](this));ami[_0xf98c[17]](_0xf98c[18],this[_0xf98c[19]][_0xf98c[15]](this));ami[_0xf98c[17]](_0xf98c[20],this[_0xf98c[21]][_0xf98c[15]](this));ami[_0xf98c[17]](_0xf98c[22],this[_0xf98c[23]][_0xf98c[15]](this))}VoiceDialReport[_0xf98c[25]][_0xf98c[24]]= function(_0x6168x8){return _0x6168x8!== null&&  !_[_0xf98c[26]](_0x6168x8)};VoiceDialReport[_0xf98c[25]][_0xf98c[27]]= function(_0x6168x9,_0x6168xa,_0x6168x8){io[_0xf98c[28]](_0x6168x9)[_0xf98c[27]](_0x6168xa,_0x6168x8)};VoiceDialReport[_0xf98c[25]][_0xf98c[16]]= function(_0x6168xa){try{if(this[_0xf98c[24]](_0x6168xa)){if(this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]){console[_0xf98c[9]](_0xf98c[30],_0x6168xa[_0xf98c[29]]);_[_0xf98c[42]](this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]],{starttime:moment()[_0xf98c[32]](_0xf98c[31]),lastevent:_0xf98c[33],interface:_0x6168xa[_0xf98c[36]][_0xf98c[37]](0,_0x6168xa[_0xf98c[36]][_0xf98c[35]](_0xf98c[34])),membername:_0x6168xa[_0xf98c[36]][_0xf98c[37]](_0x6168xa[_0xf98c[36]][_0xf98c[35]](_0xf98c[38])+ 1,_0x6168xa[_0xf98c[36]][_0xf98c[35]](_0xf98c[34]))},_[_0xf98c[41]](_0x6168xa,[_0xf98c[39],_0xf98c[40]]));this[_0xf98c[27]](_0xf98c[43],_0xf98c[44],this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]);ami[_0xf98c[27]](_0xf98c[45],this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]])}else {logger[_0xf98c[48]](_0xf98c[46],_0xf98c[47])}}else {logger[_0xf98c[48]](_0xf98c[46],_0xf98c[49])}}catch(e){logger[_0xf98c[51]](_0xf98c[46],JSON[_0xf98c[50]](e))}};VoiceDialReport[_0xf98c[25]][_0xf98c[19]]= function(_0x6168xa){try{if(this[_0xf98c[24]](_0x6168xa)){if(this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]){this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[52]]= _0x6168xa[_0xf98c[52]];if(_0x6168xa[_0xf98c[52]]=== _0xf98c[53]){console[_0xf98c[9]](_0xf98c[54],_0x6168xa[_0xf98c[29]]);this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[55]]= _0x6168xa[_0xf98c[55]];this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[56]]= _0x6168xa[_0xf98c[56]];this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[57]]= moment()[_0xf98c[32]](_0xf98c[31]);this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[58]]= _0xf98c[59];ami[_0xf98c[27]](_0xf98c[60],this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]])};this[_0xf98c[27]](_0xf98c[43],_0xf98c[44],this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]])}else {logger[_0xf98c[48]](_0xf98c[61],_0xf98c[62])}}else {logger[_0xf98c[48]](_0xf98c[61],_0xf98c[49])}}catch(e){logger[_0xf98c[51]](_0xf98c[61],JSON[_0xf98c[50]](e))}};VoiceDialReport[_0xf98c[25]][_0xf98c[21]]= function(_0x6168xa){try{if(this[_0xf98c[24]](_0x6168xa)){this[_0xf98c[66]](_0x6168xa[_0xf98c[29]],_[_0xf98c[64]](_0x6168xa[_0xf98c[63]])[0],_0x6168xa[_0xf98c[65]]);if(this[_0xf98c[24]](_0x6168xa[_0xf98c[63]])&& this[_0xf98c[24]](_0x6168xa[_0xf98c[63]][_0xf98c[67]])){if(_[_0xf98c[26]](this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]])){console[_0xf98c[9]](_0xf98c[68],_0x6168xa[_0xf98c[29]]);this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]= {routeId:_0x6168xa[_0xf98c[65]],variables:this[_0xf98c[13]][_0x6168xa[_0xf98c[29]]]};this[_0xf98c[27]](_0xf98c[43],_0xf98c[44],this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]])}else {logger[_0xf98c[48]](_0xf98c[69],_0xf98c[62])}}else {logger[_0xf98c[48]](_0xf98c[69],_0xf98c[70])}}else {logger[_0xf98c[48]](_0xf98c[69],_0xf98c[49])}}catch(e){logger[_0xf98c[51]](_0xf98c[69],JSON[_0xf98c[50]](e))}};VoiceDialReport[_0xf98c[25]][_0xf98c[66]]= function(_0x6168xb,_0x6168xc,_0x6168xd){if(_[_0xf98c[26]](this[_0xf98c[13]][_0x6168xb])){this[_0xf98c[13]][_0x6168xb]= {}};this[_0xf98c[13]][_0x6168xb][_0x6168xc]= _0x6168xd};VoiceDialReport[_0xf98c[25]][_0xf98c[23]]= function(_0x6168xa){try{if(this[_0xf98c[24]](_0x6168xa)){if(this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]){console[_0xf98c[9]](_0xf98c[71],_0x6168xa[_0xf98c[29]]);this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[72]]= moment()[_0xf98c[32]](_0xf98c[31]);this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[58]]= _0xf98c[73];this[_0xf98c[12]][_0xf98c[74]]+= 1;if(this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[57]]){this[_0xf98c[12]][_0xf98c[75]]+= 1;this[_0xf98c[12]][_0xf98c[76]]+= moment(this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[57]])[_0xf98c[79]](this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[77]],_0xf98c[78]);this[_0xf98c[12]][_0xf98c[80]]+= moment(this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[72]])[_0xf98c[79]](this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[57]],_0xf98c[78])};this[_0xf98c[12]][_0xf98c[81]]+= moment(this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[72]])[_0xf98c[79]](this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]][_0xf98c[57]],_0xf98c[78]);ami[_0xf98c[27]](_0xf98c[82],this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]);ami[_0xf98c[27]](_0xf98c[83],this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]);this[_0xf98c[27]](_0xf98c[43],_0xf98c[84],this[_0xf98c[12]]);this[_0xf98c[27]](_0xf98c[43],_0xf98c[85],this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]);delete this[_0xf98c[10]][_0x6168xa[_0xf98c[29]]]}else {logger[_0xf98c[48]](_0xf98c[86],_0xf98c[62])};if(this[_0xf98c[13]][_0x6168xa[_0xf98c[29]]]){delete this[_0xf98c[13]][_0x6168xa[_0xf98c[29]]]}}else {logger[_0xf98c[48]](_0xf98c[86],_0xf98c[49])}}catch(e){logger[_0xf98c[51]](_0xf98c[86],JSON[_0xf98c[50]](e))}};module[_0xf98c[87]]= VoiceDialReport
\ No newline at end of file
+var _0xc678=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x64\x69\x61\x6C\x62\x65\x67\x69\x6E","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x44\x69\x61\x6C\x42\x65\x67\x69\x6E","\x6F\x6E","\x64\x69\x61\x6C\x65\x6E\x64","\x73\x79\x6E\x63\x44\x69\x61\x6C\x45\x6E\x64","\x76\x61\x72\x73\x65\x74","\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x65\x6D\x69\x74","\x74\x6F","\x75\x6E\x69\x71\x75\x65\x69\x64","\x44\x49\x41\x4C\x3A\x75\x70\x64\x61\x74\x65\x64","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x61\x6C\x6C\x65\x64","\x2D","\x6C\x61\x73\x74\x49\x6E\x64\x65\x78\x4F\x66","\x63\x68\x61\x6E\x6E\x65\x6C","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x2F","\x65\x76\x65\x6E\x74","\x70\x72\x69\x76\x69\x6C\x65\x67\x65","\x6F\x6D\x69\x74","\x6D\x65\x72\x67\x65","\x76\x6F\x69\x63\x65\x3A\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x76\x6F\x69\x63\x65\x5F\x6F\x75\x74\x62\x6F\x75\x6E\x64\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x3A\x73\x61\x76\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x62\x65\x67\x69\x6E","\x5B\x73\x79\x6E\x63\x44\x69\x61\x6C\x42\x65\x67\x69\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x63\x68\x65\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x5B\x6F\x62\x6A\x20\x6E\x75\x6C\x6C\x5D","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x64\x69\x61\x6C\x73\x74\x61\x74\x75\x73","\x41\x4E\x53\x57\x45\x52","\x44\x49\x41\x4C\x3A\x61\x6E\x73\x77\x65\x72\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x61\x6E\x73\x77\x65\x72\x74\x69\x6D\x65","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x63\x6F\x6E\x6E\x65\x63\x74","\x5B\x73\x79\x6E\x63\x44\x69\x61\x6C\x45\x6E\x64\x5D\x5B\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x63\x68\x61\x6E\x6E\x65\x6C\x20\x6E\x75\x6C\x6C\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","\x6B\x65\x79\x73","\x76\x61\x6C\x75\x65","\x61\x64\x64\x56\x61\x72\x69\x61\x62\x6C\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x72\x6F\x75\x74\x65\x69\x64","\x44\x49\x41\x4C\x3A\x63\x72\x65\x61\x74\x65\x64","\x5B\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74\x5D\x5B\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x6E\x75\x6C\x6C\x5D","\x44\x49\x41\x4C\x3A\x72\x65\x6D\x6F\x76\x65\x64","\x65\x6E\x64\x74\x69\x6D\x65","\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x74\x6F\x74\x61\x6C","\x61\x6E\x73\x77\x65\x72\x65\x64","\x73\x75\x6D\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x75\x6D\x42\x69\x6C\x6C\x61\x62\x6C\x65","\x73\x75\x6D\x44\x75\x72\x61\x74\x69\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x65\x6E\x64","\x76\x6F\x69\x63\x65\x5F\x6F\x75\x74\x62\x6F\x75\x6E\x64\x3A\x73\x61\x76\x65","\x76\x6F\x69\x63\x65\x5F\x6F\x75\x74\x62\x6F\x75\x6E\x64\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x3A\x72\x65\x6D\x6F\x76\x65","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x5D\x5B\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0xc678[0];var _=require(_0xc678[1]);var moment=require(_0xc678[2]);var logger=require(_0xc678[4])(_0xc678[3]);var ami=require(_0xc678[5]);var io=require(_0xc678[7])({host:_0xc678[6],port:6379});function VoiceDialReport(_0xd475x7){console[_0xc678[9]](_0xc678[8]);this[_0xc678[10]]= _0xd475x7[_0xc678[11]];this[_0xc678[12]]= _0xd475x7[_0xc678[12]];this[_0xc678[13]]= {};ami[_0xc678[17]](_0xc678[14],this[_0xc678[16]][_0xc678[15]](this));ami[_0xc678[17]](_0xc678[18],this[_0xc678[19]][_0xc678[15]](this));ami[_0xc678[17]](_0xc678[20],this[_0xc678[21]][_0xc678[15]](this));ami[_0xc678[17]](_0xc678[22],this[_0xc678[23]][_0xc678[15]](this))}VoiceDialReport[_0xc678[25]][_0xc678[24]]= function(_0xd475x8){return _0xd475x8!== null&&  !_[_0xc678[26]](_0xd475x8)};VoiceDialReport[_0xc678[25]][_0xc678[27]]= function(_0xd475x9,_0xd475xa,_0xd475x8){io[_0xc678[28]](_0xd475x9)[_0xc678[27]](_0xd475xa,_0xd475x8)};VoiceDialReport[_0xc678[25]][_0xc678[16]]= function(_0xd475xa){try{if(this[_0xc678[24]](_0xd475xa)){if(this[_0xc678[10]][_0xd475xa[_0xc678[29]]]){console[_0xc678[9]](_0xc678[30],_0xd475xa[_0xc678[29]]);_[_0xc678[42]](this[_0xc678[10]][_0xd475xa[_0xc678[29]]],{starttime:moment()[_0xc678[32]](_0xc678[31]),lastevent:_0xc678[33],interface:_0xd475xa[_0xc678[36]][_0xc678[37]](0,_0xd475xa[_0xc678[36]][_0xc678[35]](_0xc678[34])),membername:_0xd475xa[_0xc678[36]][_0xc678[37]](_0xd475xa[_0xc678[36]][_0xc678[35]](_0xc678[38])+ 1,_0xd475xa[_0xc678[36]][_0xc678[35]](_0xc678[34]))},_[_0xc678[41]](_0xd475xa,[_0xc678[39],_0xc678[40]]));this[_0xc678[27]](_0xc678[43],_0xc678[44],this[_0xc678[10]][_0xd475xa[_0xc678[29]]]);ami[_0xc678[27]](_0xc678[45],this[_0xc678[10]][_0xd475xa[_0xc678[29]]])}else {logger[_0xc678[48]](_0xc678[46],_0xc678[47])}}else {logger[_0xc678[48]](_0xc678[46],_0xc678[49])}}catch(e){logger[_0xc678[51]](_0xc678[46],JSON[_0xc678[50]](e))}};VoiceDialReport[_0xc678[25]][_0xc678[19]]= function(_0xd475xa){try{if(this[_0xc678[24]](_0xd475xa)){if(this[_0xc678[10]][_0xd475xa[_0xc678[29]]]){this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[52]]= _0xd475xa[_0xc678[52]];if(_0xd475xa[_0xc678[52]]=== _0xc678[53]){console[_0xc678[9]](_0xc678[54],_0xd475xa[_0xc678[29]]);this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[55]]= _0xd475xa[_0xc678[55]];this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[56]]= _0xd475xa[_0xc678[56]];this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[57]]= moment()[_0xc678[32]](_0xc678[31]);this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[58]]= _0xc678[59];ami[_0xc678[27]](_0xc678[60],this[_0xc678[10]][_0xd475xa[_0xc678[29]]])};this[_0xc678[27]](_0xc678[43],_0xc678[44],this[_0xc678[10]][_0xd475xa[_0xc678[29]]])}else {logger[_0xc678[48]](_0xc678[61],_0xc678[62])}}else {logger[_0xc678[48]](_0xc678[61],_0xc678[49])}}catch(e){logger[_0xc678[51]](_0xc678[61],JSON[_0xc678[50]](e))}};VoiceDialReport[_0xc678[25]][_0xc678[21]]= function(_0xd475xa){try{if(this[_0xc678[24]](_0xd475xa)){this[_0xc678[66]](_0xd475xa[_0xc678[29]],_[_0xc678[64]](_0xd475xa[_0xc678[63]])[0],_0xd475xa[_0xc678[65]]);if(this[_0xc678[24]](_0xd475xa[_0xc678[63]])&& this[_0xc678[24]](_0xd475xa[_0xc678[63]][_0xc678[67]])){if(_[_0xc678[26]](this[_0xc678[10]][_0xd475xa[_0xc678[29]]])){console[_0xc678[9]](_0xc678[68],_0xd475xa[_0xc678[29]]);this[_0xc678[10]][_0xd475xa[_0xc678[29]]]= {routeId:_0xd475xa[_0xc678[65]],variables:this[_0xc678[13]][_0xd475xa[_0xc678[29]]]};this[_0xc678[27]](_0xc678[43],_0xc678[44],this[_0xc678[10]][_0xd475xa[_0xc678[29]]])}else {logger[_0xc678[48]](_0xc678[69],_0xc678[62])}}else {logger[_0xc678[48]](_0xc678[69],_0xc678[70])}}else {logger[_0xc678[48]](_0xc678[69],_0xc678[49])}}catch(e){logger[_0xc678[51]](_0xc678[69],JSON[_0xc678[50]](e))}};VoiceDialReport[_0xc678[25]][_0xc678[66]]= function(_0xd475xb,_0xd475xc,_0xd475xd){if(_[_0xc678[26]](this[_0xc678[13]][_0xd475xb])){this[_0xc678[13]][_0xd475xb]= {}};this[_0xc678[13]][_0xd475xb][_0xd475xc]= _0xd475xd};VoiceDialReport[_0xc678[25]][_0xc678[23]]= function(_0xd475xa){try{if(this[_0xc678[24]](_0xd475xa)){if(this[_0xc678[10]][_0xd475xa[_0xc678[29]]]){console[_0xc678[9]](_0xc678[71],_0xd475xa[_0xc678[29]]);this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[72]]= moment()[_0xc678[32]](_0xc678[31]);this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[58]]= _0xc678[73];this[_0xc678[12]][_0xc678[74]]+= 1;if(this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[57]]){this[_0xc678[12]][_0xc678[75]]+= 1;this[_0xc678[12]][_0xc678[76]]+= moment(this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[57]])[_0xc678[79]](this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[77]],_0xc678[78]);this[_0xc678[12]][_0xc678[80]]+= moment(this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[72]])[_0xc678[79]](this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[57]],_0xc678[78])};this[_0xc678[12]][_0xc678[81]]+= moment(this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[72]])[_0xc678[79]](this[_0xc678[10]][_0xd475xa[_0xc678[29]]][_0xc678[57]],_0xc678[78]);ami[_0xc678[27]](_0xc678[82],this[_0xc678[10]][_0xd475xa[_0xc678[29]]]);ami[_0xc678[27]](_0xc678[83],this[_0xc678[10]][_0xd475xa[_0xc678[29]]]);this[_0xc678[27]](_0xc678[43],_0xc678[84],this[_0xc678[12]]);this[_0xc678[27]](_0xc678[43],_0xc678[85],this[_0xc678[10]][_0xd475xa[_0xc678[29]]]);delete this[_0xc678[10]][_0xd475xa[_0xc678[29]]]}else {logger[_0xc678[48]](_0xc678[86],_0xc678[62])};if(this[_0xc678[13]][_0xd475xa[_0xc678[29]]]){delete this[_0xc678[13]][_0xd475xa[_0xc678[29]]]}}else {logger[_0xc678[48]](_0xc678[86],_0xc678[49])}}catch(e){logger[_0xc678[51]](_0xc678[86],JSON[_0xc678[50]](e))}};module[_0xc678[87]]= VoiceDialReport
\ No newline at end of file
index a7870c6..71bc6de 100644 (file)
@@ -1 +1 @@
-var _0x491c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x71\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x71\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x71\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x66\x6C\x61\x67\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x6E\x65\x77\x65\x78\x74\x65\x6E","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x4E\x65\x77\x45\x78\x74\x65\x6E","\x6F\x6E","\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x4A\x6F\x69\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x4C\x65\x61\x76\x65","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x76\x61\x72\x73\x65\x74","\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x6C\x6F\x6F\x70\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x6C\x6F\x6F\x70\x51\x75\x65\x75\x65\x53\x68\x6F\x77","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x65\x6D\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x74\x6F","\x65\x6D\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x53\x61\x76\x65","\x76\x6F\x69\x63\x65\x3A\x71\x75\x65\x75\x65\x3A\x25\x73","\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x3A\x73\x61\x76\x65","\x65\x6D\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x52\x65\x6D\x6F\x76\x65","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x3A\x72\x65\x6D\x6F\x76\x65","\x65\x6D\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x74\x79\x70\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x3A\x73\x61\x76\x65","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x5B\x71\x75\x65\x75\x65\x73\x5D","\x63\x61\x74\x63\x68","\x71\x75\x65\x75\x65\x73","\x5B\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79\x5D","\x74\x68\x65\x6E","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x42\x79","\x63\x61\x6C\x6C\x65\x72\x73","\x77\x61\x69\x74\x69\x6E\x67","\x74\x6F\x4E\x75\x6D\x62\x65\x72","\x6C\x6F\x67\x67\x65\x64\x49\x6E","\x6C\x6F\x67\x67\x65\x64\x69\x6E","\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x74\x61\x6C\x6B\x69\x6E\x67","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x6F\x62\x6A\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x69\x6E\x73\x70\x65\x63\x74","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x75\x6E\x69\x71\x75\x65\x69\x64","\x2C","\x73\x70\x6C\x69\x74","\x61\x70\x70\x64\x61\x74\x61","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x6B\x65\x79\x73","\x70\x69\x63\x6B","\x6D\x65\x72\x67\x65","\x70\x75\x73\x68","\x5B\x73\x79\x6E\x63\x4E\x65\x77\x45\x78\x74\x65\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x6C\x61\x73\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x6F\x75\x6E\x74","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x4A\x6F\x69\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x6F\x62\x6A\x20\x6E\x75\x6C\x6C","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x4C\x65\x61\x76\x65\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x72\x65\x61\x73\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x61\x73\x73\x69\x67\x6E\x65\x64","\x6C\x61\x73\x74\x41\x73\x73\x69\x67\x6E\x65\x64\x54\x6F","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","\x76\x61\x6C\x75\x65","\x61\x64\x64\x56\x61\x72\x69\x61\x62\x6C\x65","\x71\x75\x65\x75\x65\x73\x74\x61\x74\x75\x73","\x71\x75\x65\x75\x65\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x45\x58\x49\x54\x57\x49\x54\x48\x4B\x45\x59","\x5B\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x6C\x65\x6E\x67\x74\x68","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x73\x75\x6D\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x75\x6D\x44\x75\x72\x61\x74\x69\x6F\x6E","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x74\x6F\x74\x61\x6C","\x61\x6E\x73\x77\x65\x72\x65\x64","\x73\x75\x6D\x42\x69\x6C\x6C\x61\x62\x6C\x65","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x61\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0x491c[0];var _=require(_0x491c[1]);var moment=require(_0x491c[2]);var BPromise=require(_0x491c[3]);var util=require(_0x491c[4]);var logger=require(_0x491c[6])(_0x491c[5]);var ami=require(_0x491c[7]);var QueueReport=require(_0x491c[8]);var io=require(_0x491c[10])({host:_0x491c[9],port:6379});function VoiceQueueReport(_0xf82exa){console[_0x491c[12]](_0x491c[11]);this[_0x491c[13]]= {};this[_0x491c[14]]= _0xf82exa[_0x491c[15]];this[_0x491c[16]]= _0xf82exa[_0x491c[16]];this[_0x491c[17]]= true;this[_0x491c[18]]= {};ami[_0x491c[22]](_0x491c[19],this[_0x491c[21]][_0x491c[20]](this));ami[_0x491c[22]](_0x491c[23],this[_0x491c[24]][_0x491c[20]](this));ami[_0x491c[22]](_0x491c[25],this[_0x491c[26]][_0x491c[20]](this));ami[_0x491c[22]](_0x491c[27],this[_0x491c[28]][_0x491c[20]](this));ami[_0x491c[22]](_0x491c[29],this[_0x491c[30]][_0x491c[20]](this));ami[_0x491c[22]](_0x491c[31],this[_0x491c[32]][_0x491c[20]](this));ami[_0x491c[22]](_0x491c[33],this[_0x491c[34]][_0x491c[20]](this));ami[_0x491c[22]](_0x491c[35],this[_0x491c[36]][_0x491c[20]](this));ami[_0x491c[22]](_0x491c[37],this[_0x491c[38]][_0x491c[20]](this));this[_0x491c[39]]();this[_0x491c[40]]()}function loggerCatch(_0xf82exc){return function(_0xf82exd){console[_0x491c[12]](_0xf82exc,_0xf82exd);logger[_0x491c[42]](_0xf82exc,JSON[_0x491c[41]](_0xf82exd))}}VoiceQueueReport[_0x491c[44]][_0x491c[43]]= function(_0xf82exe,_0xf82exf,_0xf82ex10){io[_0x491c[45]](_0xf82exe)[_0x491c[43]](_0xf82exf,_0xf82ex10)};VoiceQueueReport[_0x491c[44]][_0x491c[46]]= function(_0xf82ex10){this[_0x491c[43]](util[_0x491c[49]](_0x491c[47],_0xf82ex10[_0x491c[48]]),_0x491c[50],_0xf82ex10)};VoiceQueueReport[_0x491c[44]][_0x491c[51]]= function(_0xf82ex10){this[_0x491c[43]](util[_0x491c[49]](_0x491c[47],_0xf82ex10[_0x491c[48]]),_0x491c[52],_0xf82ex10)};VoiceQueueReport[_0x491c[44]][_0x491c[53]]= function(_0xf82ex10){if(_0xf82ex10[_0x491c[54]]=== _0x491c[55]){this[_0x491c[43]](util[_0x491c[49]](_0x491c[47],_0xf82ex10[_0x491c[48]]),_0x491c[56],_0xf82ex10)}};VoiceQueueReport[_0x491c[44]][_0x491c[57]]= function(_0xf82ex10){return _0xf82ex10!== null&&  !_[_0x491c[58]](_0xf82ex10)};VoiceQueueReport[_0x491c[44]][_0x491c[40]]= function(){setInterval(function(){ami.Action({action:_0x491c[61]})[_0x491c[60]](loggerCatch(_0x491c[59]))},10000)};VoiceQueueReport[_0x491c[44]][_0x491c[39]]= function(){var _0xf82ex11=this;setInterval(function(){if(_0xf82ex11[_0x491c[17]]){return ami.Action({action:_0x491c[23]})[_0x491c[63]](function(_0xf82exf){_0xf82ex11[_0x491c[17]]= false})[_0x491c[60]](loggerCatch(_0x491c[62]))}},1000)};VoiceQueueReport[_0x491c[44]][_0x491c[24]]= function(_0xf82exf){try{if(this[_0x491c[57]](_0xf82exf)&& this[_0x491c[57]](_0xf82exf[_0x491c[64]])){if(this[_0x491c[16]][_0xf82exf[_0x491c[64]]]){var _0xf82ex12=_[_0x491c[65]](this[_0x491c[14]],_0x491c[64])[_0xf82exf[_0x491c[64]]]|| 0;var _0xf82ex13=_0xf82ex12- _0xf82exf[_0x491c[66]];if(this[_0x491c[16]][_0xf82exf[_0x491c[64]]][_0x491c[67]]!== _[_0x491c[68]](_0xf82exf[_0x491c[66]])|| this[_0x491c[16]][_0xf82exf[_0x491c[64]]][_0x491c[69]]!== _[_0x491c[68]](_0xf82exf[_0x491c[70]])|| this[_0x491c[16]][_0xf82exf[_0x491c[64]]][_0x491c[71]]!== _[_0x491c[68]](_0xf82exf[_0x491c[71]])|| this[_0x491c[16]][_0xf82exf[_0x491c[64]]][_0x491c[72]]!== _0xf82ex13){this[_0x491c[16]][_0xf82exf[_0x491c[64]]][_0x491c[67]]= _[_0x491c[68]](_0xf82exf[_0x491c[66]]);this[_0x491c[16]][_0xf82exf[_0x491c[64]]][_0x491c[69]]= _[_0x491c[68]](_0xf82exf[_0x491c[70]]);this[_0x491c[16]][_0xf82exf[_0x491c[64]]][_0x491c[71]]= _[_0x491c[68]](_0xf82exf[_0x491c[71]]);this[_0x491c[16]][_0xf82exf[_0x491c[64]]][_0x491c[72]]= _0xf82ex13> 0?_0xf82ex13:0;this[_0x491c[53]](this[_0x491c[16]][_0xf82exf[_0x491c[64]]])};ami[_0x491c[43]](_0x491c[73],this[_0x491c[16]][_0xf82exf[_0x491c[64]]])}}else {logger[_0x491c[76]](_0x491c[74],_0x491c[75])}}catch(e){logger[_0x491c[42]](_0x491c[74],util[_0x491c[77]](e,{showHidden:false,depth:null}))}};VoiceQueueReport[_0x491c[44]][_0x491c[26]]= function(_0xf82exf){this[_0x491c[17]]= true};VoiceQueueReport[_0x491c[44]][_0x491c[21]]= function(_0xf82exf){try{if(this[_0x491c[57]](_0xf82exf)){if(!_[_0x491c[58]](_0xf82exf[_0x491c[78]])&& _0xf82exf[_0x491c[78]][_0x491c[79]]()=== _0x491c[64]){if(_[_0x491c[58]](this[_0x491c[13]][_0xf82exf[_0x491c[80]]])){this[_0x491c[13]][_0xf82exf[_0x491c[80]]]= [];this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= {}};var _0xf82ex14= new QueueReport();_0xf82ex14[_0x491c[48]]= _0xf82exf[_0x491c[83]][_0x491c[82]](_0x491c[81])[0];_0xf82ex14[_0x491c[54]]= this[_0x491c[16]][_0xf82ex14[_0x491c[48]]][_0x491c[54]]|| _0x491c[55];_0xf82ex14[_0x491c[64]]= _0xf82exf[_0x491c[83]][_0x491c[82]](_0x491c[81])[0];_0xf82ex14[_0x491c[84]]= moment()[_0x491c[49]](_0x491c[85]);_[_0x491c[88]](_0xf82ex14,_[_0x491c[87]](_0xf82exf,_[_0x491c[86]](_0xf82ex14)));this[_0x491c[13]][_0xf82exf[_0x491c[80]]][_0x491c[89]](_0xf82ex14);this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= _0xf82ex14;this[_0x491c[46]](_0xf82ex14)}}else {logger[_0x491c[76]](_0x491c[90],_0x491c[75])}}catch(e){logger[_0x491c[42]](_0x491c[90],JSON[_0x491c[41]](e))}};VoiceQueueReport[_0x491c[44]][_0x491c[28]]= function(_0xf82exf){try{if(this[_0x491c[57]](_0xf82exf)){var _0xf82ex14;if(_[_0x491c[58]](this[_0x491c[13]][_0xf82exf[_0x491c[80]]])){this[_0x491c[13]][_0xf82exf[_0x491c[80]]]= [];this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= {};_0xf82ex14=  new QueueReport();_[_0x491c[88]](_0xf82ex14,_[_0x491c[87]](_0xf82exf,_[_0x491c[86]](_0xf82ex14)));this[_0x491c[13]][_0xf82exf[_0x491c[80]]][_0x491c[89]](_0xf82ex14)}else {_0xf82ex14= _[_0x491c[91]](this[_0x491c[13]][_0xf82exf[_0x491c[80]]])};_0xf82ex14[_0x491c[48]]= _0xf82exf[_0x491c[64]];_0xf82ex14[_0x491c[64]]= _0xf82exf[_0x491c[64]];_0xf82ex14[_0x491c[84]]= moment()[_0x491c[49]](_0x491c[85]);_0xf82ex14[_0x491c[92]]= _0xf82exf[_0x491c[92]];_0xf82ex14[_0x491c[93]]= _0xf82exf[_0x491c[93]];this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= _0xf82ex14;this[_0x491c[46]](_0xf82ex14)}else {logger[_0x491c[76]](_0x491c[94],_0x491c[95])}}catch(e){logger[_0x491c[42]](_0x491c[94],JSON[_0x491c[41]](e))}};VoiceQueueReport[_0x491c[44]][_0x491c[30]]= function(_0xf82exf){try{if(this[_0x491c[57]](_0xf82exf)){if(this[_0x491c[13]][_0xf82exf[_0x491c[80]]]){var _0xf82ex14=_[_0x491c[91]](this[_0x491c[13]][_0xf82exf[_0x491c[80]]]);_0xf82ex14[_0x491c[96]]= _0xf82exf[_0x491c[96]];_0xf82ex14[_0x491c[97]]= _0xf82exf[_0x491c[97]];_0xf82ex14[_0x491c[29]]= true;_0xf82ex14[_0x491c[98]]= moment()[_0x491c[49]](_0x491c[85]);this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= _0xf82ex14;this[_0x491c[51]](_0xf82ex14)}}else {logger[_0x491c[76]](_0x491c[99],_0x491c[75])}}catch(e){logger[_0x491c[42]](_0x491c[99],JSON[_0x491c[41]](e))}};VoiceQueueReport[_0x491c[44]][_0x491c[32]]= function(_0xf82exf){try{if(this[_0x491c[57]](_0xf82exf)){if(this[_0x491c[13]][_0xf82exf[_0x491c[80]]]){var _0xf82ex14=_[_0x491c[91]](this[_0x491c[13]][_0xf82exf[_0x491c[80]]]);_0xf82ex14[_0x491c[100]]= moment()[_0x491c[49]](_0x491c[85]);_0xf82ex14[_0x491c[101]]= _0xf82exf[_0x491c[101]];_0xf82ex14[_0x491c[102]]= _0xf82exf[_0x491c[102]];this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= _0xf82ex14;this[_0x491c[46]](_0xf82ex14)}}else {logger[_0x491c[76]](_0x491c[103],_0x491c[75])}}catch(e){logger[_0x491c[42]](_0x491c[103],JSON[_0x491c[41]](e))}};VoiceQueueReport[_0x491c[44]][_0x491c[34]]= function(_0xf82exf){try{if(this[_0x491c[57]](_0xf82exf)){if(this[_0x491c[13]][_0xf82exf[_0x491c[80]]]){var _0xf82ex14=_[_0x491c[91]](this[_0x491c[13]][_0xf82exf[_0x491c[80]]]);_0xf82ex14[_0x491c[29]]= false;_0xf82ex14[_0x491c[98]]= null;_0xf82ex14[_0x491c[104]]= false;_0xf82ex14[_0x491c[105]]= null;_0xf82ex14[_0x491c[106]]= null;_0xf82ex14[_0x491c[107]]= true;_0xf82ex14[_0x491c[108]]= moment()[_0x491c[49]](_0x491c[85]);_0xf82ex14[_0x491c[109]]= true;_0xf82ex14[_0x491c[110]]= _0xf82exf[_0x491c[111]];_0xf82ex14[_0x491c[96]]= _0xf82exf[_0x491c[96]];this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= _0xf82ex14;this[_0x491c[51]](_0xf82ex14)}}else {logger[_0x491c[76]](_0x491c[112],_0x491c[75])}}catch(e){logger[_0x491c[42]](_0x491c[112],JSON[_0x491c[41]](e))}};VoiceQueueReport[_0x491c[44]][_0x491c[36]]= function(_0xf82exf){try{if(this[_0x491c[57]](_0xf82exf)){this[_0x491c[115]](_0xf82exf[_0x491c[80]],_[_0x491c[86]](_0xf82exf[_0x491c[113]])[0],_0xf82exf[_0x491c[114]]);if(this[_0x491c[13]][_0xf82exf[_0x491c[80]]]){var _0xf82ex14=_[_0x491c[91]](this[_0x491c[13]][_0xf82exf[_0x491c[80]]]);if(this[_0x491c[57]](_0xf82exf[_0x491c[113]])&& this[_0x491c[57]](_0xf82exf[_0x491c[113]][_0x491c[116]])){_0xf82ex14[_0x491c[29]]= false;_0xf82ex14[_0x491c[98]]= null;_0xf82ex14[_0x491c[104]]= true;_0xf82ex14[_0x491c[105]]= moment()[_0x491c[49]](_0x491c[85]);_0xf82ex14[_0x491c[106]]= _0xf82exf[_0x491c[114]];_0xf82ex14[_0x491c[100]]= moment()[_0x491c[49]](_0x491c[85]);this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= _0xf82ex14;this[_0x491c[51]](_0xf82ex14)}else {if(this[_0x491c[57]](_0xf82exf[_0x491c[113]])&& this[_0x491c[57]](_0xf82exf[_0x491c[113]][_0x491c[117]])){if(!_0xf82ex14[_0x491c[29]]){_0xf82ex14[_0x491c[104]]= true;_0xf82ex14[_0x491c[105]]= moment()[_0x491c[49]](_0x491c[85]);_0xf82ex14[_0x491c[106]]= _0x491c[118];_0xf82ex14[_0x491c[100]]= moment()[_0x491c[49]](_0x491c[85])}}};_0xf82ex14[_0x491c[18]]= this[_0x491c[18]][_0xf82exf[_0x491c[80]]]}}else {logger[_0x491c[76]](_0x491c[119],_0x491c[75])}}catch(e){logger[_0x491c[42]](_0x491c[119],JSON[_0x491c[41]](e))}};VoiceQueueReport[_0x491c[44]][_0x491c[115]]= function(_0xf82ex15,_0xf82ex16,_0xf82ex17){if(_[_0x491c[58]](this[_0x491c[18]][_0xf82ex15])){this[_0x491c[18]][_0xf82ex15]= {}};this[_0x491c[18]][_0xf82ex15][_0xf82ex16]= _0xf82ex17};VoiceQueueReport[_0x491c[44]][_0x491c[38]]= function(_0xf82exf){try{if(this[_0x491c[57]](_0xf82exf)){if(this[_0x491c[13]][_0xf82exf[_0x491c[80]]]){for(var _0xf82ex18=0,_0xf82ex14={};_0xf82ex18< this[_0x491c[13]][_0xf82exf[_0x491c[80]]][_0x491c[120]];_0xf82ex18+= 1){_0xf82ex14= this[_0x491c[13]][_0xf82exf[_0x491c[80]]][_0xf82ex18];if(this[_0x491c[16]][_0xf82ex14[_0x491c[64]]]){if(_0xf82ex14[_0x491c[104]]){this[_0x491c[16]][_0xf82ex14[_0x491c[64]]][_0x491c[121]]+= 1};this[_0x491c[16]][_0xf82ex14[_0x491c[64]]][_0x491c[122]]+= moment(_0xf82ex14[_0x491c[100]])[_0x491c[124]](_0xf82ex14[_0x491c[84]],_0x491c[123]);if(_0xf82ex18=== this[_0x491c[13]][_0xf82exf[_0x491c[80]]][_0x491c[120]]- 1){this[_0x491c[16]][_0xf82ex14[_0x491c[64]]][_0x491c[125]]+= moment()[_0x491c[126]](0)[_0x491c[124]](_0xf82ex14[_0x491c[84]],_0x491c[123]);this[_0x491c[16]][_0xf82ex14[_0x491c[64]]][_0x491c[127]]+= 1;if(_0xf82ex14[_0x491c[107]]){this[_0x491c[16]][_0xf82ex14[_0x491c[64]]][_0x491c[128]]+= 1;this[_0x491c[16]][_0xf82ex14[_0x491c[64]]][_0x491c[129]]+= moment()[_0x491c[126]](0)[_0x491c[124]](_0xf82ex14[_0x491c[100]],_0x491c[123])};if(_0xf82ex14[_0x491c[29]]){_0xf82ex14[_0x491c[130]]= _0x491c[131];ami[_0x491c[43]](_0x491c[132],_0xf82ex14)};if(_0xf82ex14[_0x491c[104]]){_0xf82ex14[_0x491c[130]]= _0x491c[121];ami[_0x491c[43]](_0x491c[133],_0xf82ex14)}}else {this[_0x491c[16]][_0xf82ex14[_0x491c[64]]][_0x491c[125]]+= this[_0x491c[16]][_0xf82ex14[_0x491c[64]]][_0x491c[122]]};this[_0x491c[14]][_0xf82exf[_0x491c[80]]]= _0xf82ex14;this[_0x491c[51]](_0xf82ex14)}};ami[_0x491c[43]](_0x491c[134],this[_0x491c[13]][_0xf82exf[_0x491c[80]]]);delete this[_0x491c[13]][_0xf82exf[_0x491c[80]]];delete this[_0x491c[14]][_0xf82exf[_0x491c[80]]]};if(this[_0x491c[18]][_0xf82exf[_0x491c[80]]]){delete this[_0x491c[18]][_0xf82exf[_0x491c[80]]]}}else {logger[_0x491c[76]](_0x491c[135],_0x491c[75])}}catch(e){logger[_0x491c[42]](_0x491c[135],JSON[_0x491c[41]](e))}};module[_0x491c[136]]= VoiceQueueReport
\ No newline at end of file
+var _0xfe93=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x75\x74\x69\x6C","\x61\x6D\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x2E\x2E\x2F\x61\x6D\x69","\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x2F\x71\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x6C\x6F\x67","\x71\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x63\x68\x61\x6E\x6E\x65\x6C\x73","\x71\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x66\x6C\x61\x67\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x6E\x65\x77\x65\x78\x74\x65\x6E","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x4E\x65\x77\x45\x78\x74\x65\x6E","\x6F\x6E","\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x4A\x6F\x69\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65","\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x4C\x65\x61\x76\x65","\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65","\x76\x61\x72\x73\x65\x74","\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74","\x68\x61\x6E\x67\x75\x70","\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70","\x6C\x6F\x6F\x70\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x6C\x6F\x6F\x70\x51\x75\x65\x75\x65\x53\x68\x6F\x77","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x65\x72\x72\x6F\x72","\x65\x6D\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x74\x6F","\x65\x6D\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x53\x61\x76\x65","\x76\x6F\x69\x63\x65\x3A\x71\x75\x65\x75\x65\x3A\x25\x73","\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x3A\x73\x61\x76\x65","\x65\x6D\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x52\x65\x6D\x6F\x76\x65","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x5F\x63\x68\x61\x6E\x6E\x65\x6C\x3A\x72\x65\x6D\x6F\x76\x65","\x65\x6D\x69\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79","\x74\x79\x70\x65","\x69\x6E\x62\x6F\x75\x6E\x64","\x76\x6F\x69\x63\x65\x5F\x71\x75\x65\x75\x65\x3A\x73\x61\x76\x65","\x69\x73\x4E\x6F\x74\x4E\x75\x6C\x6C","\x69\x73\x55\x6E\x64\x65\x66\x69\x6E\x65\x64","\x5B\x71\x75\x65\x75\x65\x73\x5D","\x63\x61\x74\x63\x68","\x71\x75\x65\x75\x65\x73","\x5B\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79\x5D","\x74\x68\x65\x6E","\x71\x75\x65\x75\x65","\x63\x6F\x75\x6E\x74\x42\x79","\x63\x61\x6C\x6C\x65\x72\x73","\x77\x61\x69\x74\x69\x6E\x67","\x74\x6F\x4E\x75\x6D\x62\x65\x72","\x6C\x6F\x67\x67\x65\x64\x49\x6E","\x6C\x6F\x67\x67\x65\x64\x69\x6E","\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x74\x61\x6C\x6B\x69\x6E\x67","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x73\x75\x6D\x6D\x61\x72\x79","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x53\x75\x6D\x6D\x61\x72\x79\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x5B\x6F\x62\x6A\x20\x6E\x75\x6C\x6C\x5D","\x69\x6E\x66\x6F","\x69\x6E\x73\x70\x65\x63\x74","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x75\x6E\x69\x71\x75\x65\x69\x64","\x2C","\x73\x70\x6C\x69\x74","\x61\x70\x70\x64\x61\x74\x61","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x6B\x65\x79\x73","\x70\x69\x63\x6B","\x6D\x65\x72\x67\x65","\x70\x75\x73\x68","\x5B\x73\x79\x6E\x63\x4E\x65\x77\x45\x78\x74\x65\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x6C\x61\x73\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x6F\x75\x6E\x74","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x4A\x6F\x69\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x6F\x62\x6A\x20\x6E\x75\x6C\x6C","\x68\x6F\x6C\x64\x74\x69\x6D\x65","\x6F\x72\x69\x67\x69\x6E\x61\x6C\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x41\x62\x61\x6E\x64\x6F\x6E\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x5B\x73\x79\x6E\x63\x51\x75\x65\x75\x65\x43\x61\x6C\x6C\x65\x72\x4C\x65\x61\x76\x65\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x72\x65\x61\x73\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x61\x73\x73\x69\x67\x6E\x65\x64","\x6C\x61\x73\x74\x41\x73\x73\x69\x67\x6E\x65\x64\x54\x6F","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x5B\x73\x79\x6E\x63\x41\x67\x65\x6E\x74\x43\x6F\x6D\x70\x6C\x65\x74\x65\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x76\x61\x72\x69\x61\x62\x6C\x65","\x76\x61\x6C\x75\x65","\x61\x64\x64\x56\x61\x72\x69\x61\x62\x6C\x65","\x71\x75\x65\x75\x65\x73\x74\x61\x74\x75\x73","\x71\x75\x65\x75\x65\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x45\x58\x49\x54\x57\x49\x54\x48\x4B\x45\x59","\x5B\x73\x79\x6E\x63\x56\x61\x72\x53\x65\x74\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x6C\x65\x6E\x67\x74\x68","\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x73\x75\x6D\x48\x6F\x6C\x64\x54\x69\x6D\x65","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x73\x75\x6D\x44\x75\x72\x61\x74\x69\x6F\x6E","\x6D\x69\x6C\x6C\x69\x73\x65\x63\x6F\x6E\x64\x73","\x74\x6F\x74\x61\x6C","\x61\x6E\x73\x77\x65\x72\x65\x64","\x73\x75\x6D\x42\x69\x6C\x6C\x61\x62\x6C\x65","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x61\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x75\x6E\x6D\x61\x6E\x61\x67\x65\x64","\x63\x75\x73\x74\x6F\x6D\x3A\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x5B\x73\x79\x6E\x63\x48\x61\x6E\x67\x75\x70\x5D\x5B\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x5D","\x65\x78\x70\x6F\x72\x74\x73"];_0xfe93[0];var _=require(_0xfe93[1]);var moment=require(_0xfe93[2]);var BPromise=require(_0xfe93[3]);var util=require(_0xfe93[4]);var logger=require(_0xfe93[6])(_0xfe93[5]);var ami=require(_0xfe93[7]);var QueueReport=require(_0xfe93[8]);var io=require(_0xfe93[10])({host:_0xfe93[9],port:6379});function VoiceQueueReport(_0x6452xa){console[_0xfe93[12]](_0xfe93[11]);this[_0xfe93[13]]= {};this[_0xfe93[14]]= _0x6452xa[_0xfe93[15]];this[_0xfe93[16]]= _0x6452xa[_0xfe93[16]];this[_0xfe93[17]]= true;this[_0xfe93[18]]= {};ami[_0xfe93[22]](_0xfe93[19],this[_0xfe93[21]][_0xfe93[20]](this));ami[_0xfe93[22]](_0xfe93[23],this[_0xfe93[24]][_0xfe93[20]](this));ami[_0xfe93[22]](_0xfe93[25],this[_0xfe93[26]][_0xfe93[20]](this));ami[_0xfe93[22]](_0xfe93[27],this[_0xfe93[28]][_0xfe93[20]](this));ami[_0xfe93[22]](_0xfe93[29],this[_0xfe93[30]][_0xfe93[20]](this));ami[_0xfe93[22]](_0xfe93[31],this[_0xfe93[32]][_0xfe93[20]](this));ami[_0xfe93[22]](_0xfe93[33],this[_0xfe93[34]][_0xfe93[20]](this));ami[_0xfe93[22]](_0xfe93[35],this[_0xfe93[36]][_0xfe93[20]](this));ami[_0xfe93[22]](_0xfe93[37],this[_0xfe93[38]][_0xfe93[20]](this));this[_0xfe93[39]]();this[_0xfe93[40]]()}function loggerCatch(_0x6452xc){return function(_0x6452xd){console[_0xfe93[12]](_0x6452xc,_0x6452xd);logger[_0xfe93[42]](_0x6452xc,JSON[_0xfe93[41]](_0x6452xd))}}VoiceQueueReport[_0xfe93[44]][_0xfe93[43]]= function(_0x6452xe,_0x6452xf,_0x6452x10){io[_0xfe93[45]](_0x6452xe)[_0xfe93[43]](_0x6452xf,_0x6452x10)};VoiceQueueReport[_0xfe93[44]][_0xfe93[46]]= function(_0x6452x10){this[_0xfe93[43]](util[_0xfe93[49]](_0xfe93[47],_0x6452x10[_0xfe93[48]]),_0xfe93[50],_0x6452x10)};VoiceQueueReport[_0xfe93[44]][_0xfe93[51]]= function(_0x6452x10){this[_0xfe93[43]](util[_0xfe93[49]](_0xfe93[47],_0x6452x10[_0xfe93[48]]),_0xfe93[52],_0x6452x10)};VoiceQueueReport[_0xfe93[44]][_0xfe93[53]]= function(_0x6452x10){if(_0x6452x10[_0xfe93[54]]=== _0xfe93[55]){this[_0xfe93[43]](util[_0xfe93[49]](_0xfe93[47],_0x6452x10[_0xfe93[48]]),_0xfe93[56],_0x6452x10)}};VoiceQueueReport[_0xfe93[44]][_0xfe93[57]]= function(_0x6452x10){return _0x6452x10!== null&&  !_[_0xfe93[58]](_0x6452x10)};VoiceQueueReport[_0xfe93[44]][_0xfe93[40]]= function(){setInterval(function(){ami.Action({action:_0xfe93[61]})[_0xfe93[60]](loggerCatch(_0xfe93[59]))},10000)};VoiceQueueReport[_0xfe93[44]][_0xfe93[39]]= function(){var _0x6452x11=this;setInterval(function(){if(_0x6452x11[_0xfe93[17]]){return ami.Action({action:_0xfe93[23]})[_0xfe93[63]](function(_0x6452xf){_0x6452x11[_0xfe93[17]]= false})[_0xfe93[60]](loggerCatch(_0xfe93[62]))}},1000)};VoiceQueueReport[_0xfe93[44]][_0xfe93[24]]= function(_0x6452xf){try{if(this[_0xfe93[57]](_0x6452xf)&& this[_0xfe93[57]](_0x6452xf[_0xfe93[64]])){if(this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]]){var _0x6452x12=_[_0xfe93[65]](this[_0xfe93[14]],_0xfe93[64])[_0x6452xf[_0xfe93[64]]]|| 0;var _0x6452x13=_0x6452x12- _0x6452xf[_0xfe93[66]];if(this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]][_0xfe93[67]]!== _[_0xfe93[68]](_0x6452xf[_0xfe93[66]])|| this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]][_0xfe93[69]]!== _[_0xfe93[68]](_0x6452xf[_0xfe93[70]])|| this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]][_0xfe93[71]]!== _[_0xfe93[68]](_0x6452xf[_0xfe93[71]])|| this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]][_0xfe93[72]]!== _0x6452x13){this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]][_0xfe93[67]]= _[_0xfe93[68]](_0x6452xf[_0xfe93[66]]);this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]][_0xfe93[69]]= _[_0xfe93[68]](_0x6452xf[_0xfe93[70]]);this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]][_0xfe93[71]]= _[_0xfe93[68]](_0x6452xf[_0xfe93[71]]);this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]][_0xfe93[72]]= _0x6452x13> 0?_0x6452x13:0;this[_0xfe93[53]](this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]])};ami[_0xfe93[43]](_0xfe93[73],this[_0xfe93[16]][_0x6452xf[_0xfe93[64]]])}}else {logger[_0xfe93[76]](_0xfe93[74],_0xfe93[75])}}catch(e){logger[_0xfe93[42]](_0xfe93[74],util[_0xfe93[77]](e,{showHidden:false,depth:null}))}};VoiceQueueReport[_0xfe93[44]][_0xfe93[26]]= function(_0x6452xf){this[_0xfe93[17]]= true};VoiceQueueReport[_0xfe93[44]][_0xfe93[21]]= function(_0x6452xf){try{if(this[_0xfe93[57]](_0x6452xf)){if(!_[_0xfe93[58]](_0x6452xf[_0xfe93[78]])&& _0x6452xf[_0xfe93[78]][_0xfe93[79]]()=== _0xfe93[64]){if(_[_0xfe93[58]](this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]])){this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]= [];this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= {}};var _0x6452x14= new QueueReport();_0x6452x14[_0xfe93[48]]= _0x6452xf[_0xfe93[83]][_0xfe93[82]](_0xfe93[81])[0];_0x6452x14[_0xfe93[54]]= this[_0xfe93[16]][_0x6452x14[_0xfe93[48]]][_0xfe93[54]]|| _0xfe93[55];_0x6452x14[_0xfe93[64]]= _0x6452xf[_0xfe93[83]][_0xfe93[82]](_0xfe93[81])[0];_0x6452x14[_0xfe93[84]]= moment()[_0xfe93[49]](_0xfe93[85]);_[_0xfe93[88]](_0x6452x14,_[_0xfe93[87]](_0x6452xf,_[_0xfe93[86]](_0x6452x14)));this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]][_0xfe93[89]](_0x6452x14);this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= _0x6452x14;this[_0xfe93[46]](_0x6452x14)}}else {logger[_0xfe93[76]](_0xfe93[90],_0xfe93[75])}}catch(e){logger[_0xfe93[42]](_0xfe93[90],JSON[_0xfe93[41]](e))}};VoiceQueueReport[_0xfe93[44]][_0xfe93[28]]= function(_0x6452xf){try{if(this[_0xfe93[57]](_0x6452xf)){var _0x6452x14;if(_[_0xfe93[58]](this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]])){this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]= [];this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= {};_0x6452x14=  new QueueReport();_[_0xfe93[88]](_0x6452x14,_[_0xfe93[87]](_0x6452xf,_[_0xfe93[86]](_0x6452x14)));this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]][_0xfe93[89]](_0x6452x14)}else {_0x6452x14= _[_0xfe93[91]](this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]])};_0x6452x14[_0xfe93[48]]= _0x6452xf[_0xfe93[64]];_0x6452x14[_0xfe93[64]]= _0x6452xf[_0xfe93[64]];_0x6452x14[_0xfe93[84]]= moment()[_0xfe93[49]](_0xfe93[85]);_0x6452x14[_0xfe93[92]]= _0x6452xf[_0xfe93[92]];_0x6452x14[_0xfe93[93]]= _0x6452xf[_0xfe93[93]];this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= _0x6452x14;this[_0xfe93[46]](_0x6452x14)}else {logger[_0xfe93[76]](_0xfe93[94],_0xfe93[95])}}catch(e){logger[_0xfe93[42]](_0xfe93[94],JSON[_0xfe93[41]](e))}};VoiceQueueReport[_0xfe93[44]][_0xfe93[30]]= function(_0x6452xf){try{if(this[_0xfe93[57]](_0x6452xf)){if(this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]){var _0x6452x14=_[_0xfe93[91]](this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]);_0x6452x14[_0xfe93[96]]= _0x6452xf[_0xfe93[96]];_0x6452x14[_0xfe93[97]]= _0x6452xf[_0xfe93[97]];_0x6452x14[_0xfe93[29]]= true;_0x6452x14[_0xfe93[98]]= moment()[_0xfe93[49]](_0xfe93[85]);this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= _0x6452x14;this[_0xfe93[51]](_0x6452x14)}}else {logger[_0xfe93[76]](_0xfe93[99],_0xfe93[75])}}catch(e){logger[_0xfe93[42]](_0xfe93[99],JSON[_0xfe93[41]](e))}};VoiceQueueReport[_0xfe93[44]][_0xfe93[32]]= function(_0x6452xf){try{if(this[_0xfe93[57]](_0x6452xf)){if(this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]){var _0x6452x14=_[_0xfe93[91]](this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]);_0x6452x14[_0xfe93[100]]= moment()[_0xfe93[49]](_0xfe93[85]);_0x6452x14[_0xfe93[101]]= _0x6452xf[_0xfe93[101]];_0x6452x14[_0xfe93[102]]= _0x6452xf[_0xfe93[102]];this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= _0x6452x14;this[_0xfe93[46]](_0x6452x14)}}else {logger[_0xfe93[76]](_0xfe93[103],_0xfe93[75])}}catch(e){logger[_0xfe93[42]](_0xfe93[103],JSON[_0xfe93[41]](e))}};VoiceQueueReport[_0xfe93[44]][_0xfe93[34]]= function(_0x6452xf){try{if(this[_0xfe93[57]](_0x6452xf)){if(this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]){var _0x6452x14=_[_0xfe93[91]](this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]);_0x6452x14[_0xfe93[29]]= false;_0x6452x14[_0xfe93[98]]= null;_0x6452x14[_0xfe93[104]]= false;_0x6452x14[_0xfe93[105]]= null;_0x6452x14[_0xfe93[106]]= null;_0x6452x14[_0xfe93[107]]= true;_0x6452x14[_0xfe93[108]]= moment()[_0xfe93[49]](_0xfe93[85]);_0x6452x14[_0xfe93[109]]= true;_0x6452x14[_0xfe93[110]]= _0x6452xf[_0xfe93[111]];_0x6452x14[_0xfe93[96]]= _0x6452xf[_0xfe93[96]];this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= _0x6452x14;this[_0xfe93[51]](_0x6452x14)}}else {logger[_0xfe93[76]](_0xfe93[112],_0xfe93[75])}}catch(e){logger[_0xfe93[42]](_0xfe93[112],JSON[_0xfe93[41]](e))}};VoiceQueueReport[_0xfe93[44]][_0xfe93[36]]= function(_0x6452xf){try{if(this[_0xfe93[57]](_0x6452xf)){this[_0xfe93[115]](_0x6452xf[_0xfe93[80]],_[_0xfe93[86]](_0x6452xf[_0xfe93[113]])[0],_0x6452xf[_0xfe93[114]]);if(this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]){var _0x6452x14=_[_0xfe93[91]](this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]);if(this[_0xfe93[57]](_0x6452xf[_0xfe93[113]])&& this[_0xfe93[57]](_0x6452xf[_0xfe93[113]][_0xfe93[116]])){_0x6452x14[_0xfe93[29]]= false;_0x6452x14[_0xfe93[98]]= null;_0x6452x14[_0xfe93[104]]= true;_0x6452x14[_0xfe93[105]]= moment()[_0xfe93[49]](_0xfe93[85]);_0x6452x14[_0xfe93[106]]= _0x6452xf[_0xfe93[114]];_0x6452x14[_0xfe93[100]]= moment()[_0xfe93[49]](_0xfe93[85]);this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= _0x6452x14;this[_0xfe93[51]](_0x6452x14)}else {if(this[_0xfe93[57]](_0x6452xf[_0xfe93[113]])&& this[_0xfe93[57]](_0x6452xf[_0xfe93[113]][_0xfe93[117]])){if(!_0x6452x14[_0xfe93[29]]){_0x6452x14[_0xfe93[104]]= true;_0x6452x14[_0xfe93[105]]= moment()[_0xfe93[49]](_0xfe93[85]);_0x6452x14[_0xfe93[106]]= _0xfe93[118];_0x6452x14[_0xfe93[100]]= moment()[_0xfe93[49]](_0xfe93[85])}}};_0x6452x14[_0xfe93[18]]= this[_0xfe93[18]][_0x6452xf[_0xfe93[80]]]}}else {logger[_0xfe93[76]](_0xfe93[119],_0xfe93[75])}}catch(e){logger[_0xfe93[42]](_0xfe93[119],JSON[_0xfe93[41]](e))}};VoiceQueueReport[_0xfe93[44]][_0xfe93[115]]= function(_0x6452x15,_0x6452x16,_0x6452x17){if(_[_0xfe93[58]](this[_0xfe93[18]][_0x6452x15])){this[_0xfe93[18]][_0x6452x15]= {}};this[_0xfe93[18]][_0x6452x15][_0x6452x16]= _0x6452x17};VoiceQueueReport[_0xfe93[44]][_0xfe93[38]]= function(_0x6452xf){try{if(this[_0xfe93[57]](_0x6452xf)){if(this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]){for(var _0x6452x18=0,_0x6452x14={};_0x6452x18< this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]][_0xfe93[120]];_0x6452x18+= 1){_0x6452x14= this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]][_0x6452x18];if(this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]]){if(_0x6452x14[_0xfe93[104]]){this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]][_0xfe93[121]]+= 1};this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]][_0xfe93[122]]+= moment(_0x6452x14[_0xfe93[100]])[_0xfe93[124]](_0x6452x14[_0xfe93[84]],_0xfe93[123]);if(_0x6452x18=== this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]][_0xfe93[120]]- 1){this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]][_0xfe93[125]]+= moment()[_0xfe93[126]](0)[_0xfe93[124]](_0x6452x14[_0xfe93[84]],_0xfe93[123]);this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]][_0xfe93[127]]+= 1;if(_0x6452x14[_0xfe93[107]]){this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]][_0xfe93[128]]+= 1;this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]][_0xfe93[129]]+= moment()[_0xfe93[126]](0)[_0xfe93[124]](_0x6452x14[_0xfe93[100]],_0xfe93[123])};if(_0x6452x14[_0xfe93[29]]){_0x6452x14[_0xfe93[130]]= _0xfe93[131];ami[_0xfe93[43]](_0xfe93[132],_0x6452x14)};if(_0x6452x14[_0xfe93[104]]){_0x6452x14[_0xfe93[130]]= _0xfe93[121];ami[_0xfe93[43]](_0xfe93[133],_0x6452x14)}}else {this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]][_0xfe93[125]]+= this[_0xfe93[16]][_0x6452x14[_0xfe93[64]]][_0xfe93[122]]};this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]= _0x6452x14;this[_0xfe93[51]](_0x6452x14)}};ami[_0xfe93[43]](_0xfe93[134],this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]]);delete this[_0xfe93[13]][_0x6452xf[_0xfe93[80]]];delete this[_0xfe93[14]][_0x6452xf[_0xfe93[80]]]};if(this[_0xfe93[18]][_0x6452xf[_0xfe93[80]]]){delete this[_0xfe93[18]][_0x6452xf[_0xfe93[80]]]}}else {logger[_0xfe93[76]](_0xfe93[135],_0xfe93[75])}}catch(e){logger[_0xfe93[42]](_0xfe93[135],JSON[_0xfe93[41]](e))}};module[_0xfe93[136]]= VoiceQueueReport
\ No newline at end of file
index abe251e..9fb4405 100644 (file)
@@ -1 +1 @@
-var _0x5488=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x47\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E","\x69\x64","\x6E\x61\x6D\x65","\x74\x79\x70\x65","\x61\x63\x74\x69\x76\x65","\x6C\x69\x6D\x69\x74\x43\x61\x6C\x6C\x73","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x54\x72\x75\x6E\x6B","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x69\x6E\x74\x65\x72\x76\x61\x6C","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E"];_0x5488[0];var client=require(_0x5488[1]);exports[_0x5488[2]]= function(){return function(){return client.Request(_0x5488[3],{options:{raw:false,attributes:[_0x5488[4],_0x5488[5],_0x5488[6],_0x5488[7],_0x5488[8],_0x5488[9],_0x5488[10],_0x5488[11],_0x5488[12],_0x5488[13],_0x5488[14],_0x5488[15],_0x5488[16],_0x5488[17],_0x5488[18],_0x5488[19],_0x5488[20]],include:[{model:_0x5488[21],as:_0x5488[21],attributes:[_0x5488[4],_0x5488[5],_0x5488[22],_0x5488[7]]},{model:_0x5488[21],as:_0x5488[23],attributes:[_0x5488[4],_0x5488[5],_0x5488[22],_0x5488[7]]},{model:_0x5488[24],as:_0x5488[24],attributes:[_0x5488[4],_0x5488[5]],include:[{model:_0x5488[24],as:_0x5488[25],attributes:[_0x5488[4],_0x5488[5],_0x5488[26]]}]},{model:_0x5488[27],as:_0x5488[27],attributes:[_0x5488[4],_0x5488[5]]}]},log:_0x5488[28]})}}
\ No newline at end of file
+var _0xa044=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x73","\x47\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E","\x69\x64","\x6E\x61\x6D\x65","\x74\x79\x70\x65","\x61\x63\x74\x69\x76\x65","\x6C\x69\x6D\x69\x74\x43\x61\x6C\x6C\x73","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x54\x72\x75\x6E\x6B","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x69\x6E\x74\x65\x72\x76\x61\x6C","\x53\x71\x75\x61\x72\x65\x50\x72\x6F\x6A\x65\x63\x74","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E"];_0xa044[0];var client=require(_0xa044[1]);exports[_0xa044[2]]= function(){return function(){return client.Request(_0xa044[3],{options:{raw:false,attributes:[_0xa044[4],_0xa044[5],_0xa044[6],_0xa044[7],_0xa044[8],_0xa044[9],_0xa044[10],_0xa044[11],_0xa044[12],_0xa044[13],_0xa044[14],_0xa044[15],_0xa044[16],_0xa044[17],_0xa044[18],_0xa044[19],_0xa044[20]],include:[{model:_0xa044[21],as:_0xa044[21],attributes:[_0xa044[4],_0xa044[5],_0xa044[22],_0xa044[7]]},{model:_0xa044[21],as:_0xa044[23],attributes:[_0xa044[4],_0xa044[5],_0xa044[22],_0xa044[7]]},{model:_0xa044[24],as:_0xa044[24],attributes:[_0xa044[4],_0xa044[5]],include:[{model:_0xa044[24],as:_0xa044[25],attributes:[_0xa044[4],_0xa044[5],_0xa044[26]]}]},{model:_0xa044[27],as:_0xa044[27],attributes:[_0xa044[4],_0xa044[5]]}]},log:_0xa044[28]})}}
\ No newline at end of file
index 4b4fbe6..57556f9 100644 (file)
@@ -1 +1 @@
-var _0x3773=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74","\x67\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72","\x75\x70\x64\x61\x74\x65\x43\x6F\x6E\x74\x61\x63\x74\x73","\x55\x70\x64\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72","\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x64\x65\x73\x74\x72\x6F\x79\x43\x6F\x6E\x74\x61\x63\x74","\x44\x65\x73\x74\x72\x6F\x79\x43\x6D\x48\x6F\x70\x70\x65\x72","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72","\x47\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72","\x6E\x6F\x77","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74\x20\x44\x45\x53\x43","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x49\x76\x72","\x47\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x49\x76\x72","\x6D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x71\x75\x65\x75\x65","\x4D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72","\x63\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64","\x43\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64","\x69\x64"];_0x3773[0];var client=require(_0x3773[1]);exports[_0x3773[2]]= function(_0xe035x2,_0xe035x3){return function(){return client.Request(_0x3773[3],{options:{where:{VoiceQueueId:_0xe035x2},include:[{model:_0x3773[4],as:_0x3773[5]}],limit:_0xe035x3,raw:false},log:_0x3773[6]})}};exports[_0x3773[7]]= function(_0xe035x4,_0xe035x2,_0xe035x3){return function(){return client.Request(_0x3773[8],{body:_0xe035x4,options:{where:{VoiceQueueId:_0xe035x2,scheduledat:{$lte: new Date()}},limit:_0xe035x3},log:_0x3773[8]})}};exports[_0x3773[9]]= function(_0xe035x4){return function(){return client.Request(_0x3773[8],{body:_0xe035x4,options:{where:{ContactId:_0xe035x4[_0x3773[10]],ListId:_0xe035x4[_0x3773[11]],VoiceQueueId:_0xe035x4[_0x3773[12]]}},log:_0x3773[9]})}};exports[_0x3773[13]]= function(_0xe035x2,_0xe035x5,_0xe035x6){return function(){return client.Request(_0x3773[14],{options:{where:{VoiceQueueId:_0xe035x2,ListId:_0xe035x5,ContactId:_0xe035x6}},log:_0x3773[14]})}};exports[_0x3773[15]]= function(_0xe035x2,_0xe035x3){return function(){return client.Request(_0x3773[16],{body:{active:true},options:{where:{VoiceQueueId:_0xe035x2,active:false,scheduledat:{$lte:Date[_0x3773[17]]()}},include:[{model:_0x3773[4],as:_0x3773[5]}],order:_0x3773[18],raw:true,limit:_0xe035x3},log:_0x3773[16]})}};exports[_0x3773[19]]= function(_0xe035x7,_0xe035x3){return function(){return client.Request(_0x3773[16],{body:{active:true},options:{where:{CampaignId:_0xe035x7,active:false,scheduledat:{$lte:Date[_0x3773[17]]()}},include:[{model:_0x3773[4],as:_0x3773[5]}],order:_0x3773[18],raw:true,limit:_0xe035x3},log:_0x3773[20]})}};exports[_0x3773[21]]= function(_0xe035x4){return function(){_0xe035x4[_0x3773[22]]= _0xe035x4[_0x3773[23]];return client.Request(_0x3773[24],{body:_0xe035x4,options:{where:{ContactId:_0xe035x4[_0x3773[10]],ListId:_0xe035x4[_0x3773[11]],VoiceQueueId:_0xe035x4[_0x3773[12]]}},log:_0x3773[24]})}};exports[_0x3773[25]]= function(_0xe035x8){return function(){return client.Request(_0x3773[26],{options:{where:{VoiceQueueId:_0xe035x8[_0x3773[27]]?_0xe035x8[_0x3773[27]]|| null:null}},log:_0x3773[25]})}}
\ No newline at end of file
+var _0xa512=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x73","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72","\x43\x6D\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74","\x67\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72","\x75\x70\x64\x61\x74\x65\x43\x6F\x6E\x74\x61\x63\x74\x73","\x55\x70\x64\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72","\x72\x65\x73\x63\x68\x65\x64\x75\x6C\x65\x43\x6F\x6E\x74\x61\x63\x74","\x43\x6F\x6E\x74\x61\x63\x74\x49\x64","\x4C\x69\x73\x74\x49\x64","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x64\x65\x73\x74\x72\x6F\x79\x43\x6F\x6E\x74\x61\x63\x74","\x44\x65\x73\x74\x72\x6F\x79\x43\x6D\x48\x6F\x70\x70\x65\x72","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72","\x47\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72","\x6E\x6F\x77","\x73\x63\x68\x65\x64\x75\x6C\x65\x64\x61\x74\x20\x44\x45\x53\x43","\x67\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x49\x76\x72","\x47\x65\x74\x43\x6F\x6E\x74\x61\x63\x74\x44\x69\x61\x6C\x65\x72\x49\x76\x72","\x6D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x71\x75\x65\x75\x65","\x4D\x6F\x76\x65\x43\x6F\x6E\x74\x61\x63\x74\x4D\x61\x6E\x61\x67\x65\x64\x44\x69\x61\x6C\x65\x72","\x63\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64","\x43\x6F\x75\x6E\x74\x52\x65\x53\x63\x68\x65\x64\x75\x6C\x65\x64","\x69\x64"];_0xa512[0];var client=require(_0xa512[1]);exports[_0xa512[2]]= function(_0xa80ex2,_0xa80ex3){return function(){return client.Request(_0xa512[3],{options:{where:{VoiceQueueId:_0xa80ex2},include:[{model:_0xa512[4],as:_0xa512[5]}],limit:_0xa80ex3,raw:false},log:_0xa512[6]})}};exports[_0xa512[7]]= function(_0xa80ex4,_0xa80ex2,_0xa80ex3){return function(){return client.Request(_0xa512[8],{body:_0xa80ex4,options:{where:{VoiceQueueId:_0xa80ex2,scheduledat:{$lte: new Date()}},limit:_0xa80ex3},log:_0xa512[8]})}};exports[_0xa512[9]]= function(_0xa80ex4){return function(){return client.Request(_0xa512[8],{body:_0xa80ex4,options:{where:{ContactId:_0xa80ex4[_0xa512[10]],ListId:_0xa80ex4[_0xa512[11]],VoiceQueueId:_0xa80ex4[_0xa512[12]]}},log:_0xa512[9]})}};exports[_0xa512[13]]= function(_0xa80ex2,_0xa80ex5,_0xa80ex6){return function(){return client.Request(_0xa512[14],{options:{where:{VoiceQueueId:_0xa80ex2,ListId:_0xa80ex5,ContactId:_0xa80ex6}},log:_0xa512[14]})}};exports[_0xa512[15]]= function(_0xa80ex2,_0xa80ex3){return function(){return client.Request(_0xa512[16],{body:{active:true},options:{where:{VoiceQueueId:_0xa80ex2,active:false,scheduledat:{$lte:Date[_0xa512[17]]()}},include:[{model:_0xa512[4],as:_0xa512[5]}],order:_0xa512[18],raw:true,limit:_0xa80ex3},log:_0xa512[16]})}};exports[_0xa512[19]]= function(_0xa80ex7,_0xa80ex3){return function(){return client.Request(_0xa512[16],{body:{active:true},options:{where:{CampaignId:_0xa80ex7,active:false,scheduledat:{$lte:Date[_0xa512[17]]()}},include:[{model:_0xa512[4],as:_0xa512[5]}],order:_0xa512[18],raw:true,limit:_0xa80ex3},log:_0xa512[20]})}};exports[_0xa512[21]]= function(_0xa80ex4){return function(){_0xa80ex4[_0xa512[22]]= _0xa80ex4[_0xa512[23]];return client.Request(_0xa512[24],{body:_0xa80ex4,options:{where:{ContactId:_0xa80ex4[_0xa512[10]],ListId:_0xa80ex4[_0xa512[11]],VoiceQueueId:_0xa80ex4[_0xa512[12]]}},log:_0xa512[24]})}};exports[_0xa512[25]]= function(_0xa80ex8){return function(){return client.Request(_0xa512[26],{options:{where:{VoiceQueueId:_0xa80ex8[_0xa512[27]]?_0xa80ex8[_0xa512[27]]|| null:null}},log:_0xa512[25]})}}
\ No newline at end of file
index c91f238..ac543d0 100644 (file)
@@ -1 +1 @@
-var _0xec15=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x68\x65\x63\x6B\x49\x73\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x70\x68\x6F\x6E\x65","\x43\x6F\x6E\x74\x61\x63\x74"];_0xec15[0];var client=require(_0xec15[1]);exports[_0xec15[2]]= function(_0x496bx2){return function(){return client.Request(_0xec15[3],{options:{where:{VoiceQueueId:_0x496bx2[_0xec15[4]],phone:_0x496bx2[_0xec15[6]][_0xec15[5]]},raw:false},log:_0xec15[3]})}}
\ No newline at end of file
+var _0x9c02=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x68\x65\x63\x6B\x49\x73\x42\x6C\x61\x63\x6B\x4C\x69\x73\x74","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72\x42\x6C\x61\x63\x6B","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x49\x64","\x70\x68\x6F\x6E\x65","\x43\x6F\x6E\x74\x61\x63\x74"];_0x9c02[0];var client=require(_0x9c02[1]);exports[_0x9c02[2]]= function(_0x973cx2){return function(){return client.Request(_0x9c02[3],{options:{where:{VoiceQueueId:_0x973cx2[_0x9c02[4]],phone:_0x973cx2[_0x9c02[6]][_0x9c02[5]]},raw:false},log:_0x9c02[3]})}}
\ No newline at end of file
index 8d9241b..a70c837 100644 (file)
@@ -1 +1 @@
-var _0x8f5a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x43\x6F\x6E\x74\x61\x63\x74","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x71\x75\x65\x75\x65","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C"];_0x8f5a[0];var client=require(_0x8f5a[1]);exports[_0x8f5a[2]]= function(_0xbd68x2){return function(){_0xbd68x2[_0x8f5a[3]]= _0xbd68x2[_0x8f5a[4]];return client.Request(_0x8f5a[5],{body:_0xbd68x2,log:_0x8f5a[5]})}}
\ No newline at end of file
+var _0xd11e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x43\x6F\x6E\x74\x61\x63\x74","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x71\x75\x65\x75\x65","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x46\x69\x6E\x61\x6C"];_0xd11e[0];var client=require(_0xd11e[1]);exports[_0xd11e[2]]= function(_0xa5d9x2){return function(){_0xa5d9x2[_0xd11e[3]]= _0xa5d9x2[_0xd11e[4]];return client.Request(_0xd11e[5],{body:_0xa5d9x2,log:_0xd11e[5]})}}
\ No newline at end of file
index 546374b..53896bc 100644 (file)
@@ -1 +1 @@
-var _0x7719=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x6D\x6F\x6D\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x71\x75\x65\x75\x65","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x61\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x41\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x6D\x69\x6E\x75\x74\x65\x73","\x73\x75\x62\x74\x72\x61\x63\x74","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x64\x61\x79","\x73\x74\x61\x72\x74\x4F\x66","\x65\x6E\x64\x4F\x66","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x47\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x69\x76\x72"];_0x7719[0];var client=require(_0x7719[1]);var moment=require(_0x7719[2]);exports[_0x7719[3]]= function(_0xf54cx3){return function(){_0xf54cx3[_0x7719[4]]= _0xf54cx3[_0x7719[5]];return client.Request(_0x7719[6],{body:_0xf54cx3,log:_0x7719[6]})}};exports[_0x7719[7]]= function(_0xf54cx4){return function(){return client.Request(_0x7719[8],{options:{where:{endtime:{$between:[moment()[_0x7719[12]](_0xf54cx4,_0x7719[11])[_0x7719[10]](_0x7719[9]),moment()[_0x7719[10]](_0x7719[9])]}},raw:false},log:_0x7719[13]})}};exports[_0x7719[14]]= function(_0xf54cx4){return function(){return client.Request(_0x7719[15],{options:{where:{createdAt:{$between:[moment()[_0x7719[17]](_0x7719[16]),moment()[_0x7719[18]](_0x7719[16])]},campaigntype:_0x7719[5]},raw:false},log:_0x7719[15]})}};exports[_0x7719[19]]= function(_0xf54cx4){return function(){return client.Request(_0x7719[20],{options:{where:{createdAt:{$between:[moment()[_0x7719[17]](_0x7719[16]),moment()[_0x7719[18]](_0x7719[16])]},campaigntype:_0x7719[21]},raw:false},log:_0x7719[20]})}}
\ No newline at end of file
+var _0xc22f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x6D\x6F\x6D\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x48\x69\x73\x74\x6F\x72\x79","\x63\x61\x6D\x70\x61\x69\x67\x6E","\x71\x75\x65\x75\x65","\x43\x72\x65\x61\x74\x65\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x61\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x41\x76\x67\x48\x61\x6E\x64\x6C\x65\x54\x69\x6D\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x6D\x69\x6E\x75\x74\x65\x73","\x73\x75\x62\x74\x72\x61\x63\x74","\x47\x65\x74\x43\x6D\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x64\x61\x79","\x73\x74\x61\x72\x74\x4F\x66","\x65\x6E\x64\x4F\x66","\x67\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x47\x65\x74\x43\x61\x6D\x70\x61\x69\x67\x6E\x48\x6F\x70\x70\x65\x72\x48\x69\x73\x74\x6F\x72\x79","\x69\x76\x72"];_0xc22f[0];var client=require(_0xc22f[1]);var moment=require(_0xc22f[2]);exports[_0xc22f[3]]= function(_0xbdcex3){return function(){_0xbdcex3[_0xc22f[4]]= _0xbdcex3[_0xc22f[5]];return client.Request(_0xc22f[6],{body:_0xbdcex3,log:_0xc22f[6]})}};exports[_0xc22f[7]]= function(_0xbdcex4){return function(){return client.Request(_0xc22f[8],{options:{where:{endtime:{$between:[moment()[_0xc22f[12]](_0xbdcex4,_0xc22f[11])[_0xc22f[10]](_0xc22f[9]),moment()[_0xc22f[10]](_0xc22f[9])]}},raw:false},log:_0xc22f[13]})}};exports[_0xc22f[14]]= function(_0xbdcex4){return function(){return client.Request(_0xc22f[15],{options:{where:{createdAt:{$between:[moment()[_0xc22f[17]](_0xc22f[16]),moment()[_0xc22f[18]](_0xc22f[16])]},campaigntype:_0xc22f[5]},raw:false},log:_0xc22f[15]})}};exports[_0xc22f[19]]= function(_0xbdcex4){return function(){return client.Request(_0xc22f[20],{options:{where:{createdAt:{$between:[moment()[_0xc22f[17]](_0xc22f[16]),moment()[_0xc22f[18]](_0xc22f[16])]},campaigntype:_0xc22f[21]},raw:false},log:_0xc22f[20]})}}
\ No newline at end of file
index eb743b8..f9c5cc6 100644 (file)
@@ -1 +1 @@
-var _0x33ac=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x47\x65\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x61\x70\x69\x4B\x65\x79","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x54\x61\x67","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x6E\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x4E\x61\x6D\x65","\x56\x61\x72\x69\x61\x62\x6C\x65","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x6B\x65\x79","\x6B\x65\x79\x54\x79\x70\x65","\x6B\x65\x79\x43\x6F\x6E\x74\x65\x6E\x74","\x46\x69\x65\x6C\x64\x73","\x69\x64\x46\x69\x65\x6C\x64","\x6E\x61\x6D\x65\x46\x69\x65\x6C\x64","\x63\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64"];_0x33ac[0];var client=require(_0x33ac[1]);exports[_0x33ac[2]]= function(){return function(_0x307ax2){return client.Request(_0x33ac[3],{options:{raw:false,attributes:[_0x33ac[4],_0x33ac[5],_0x33ac[6],_0x33ac[7],_0x33ac[8],_0x33ac[9]],include:[{model:_0x33ac[10],as:_0x33ac[11],attributes:[_0x33ac[4],_0x33ac[5]],include:[{model:_0x33ac[12],attributes:[_0x33ac[4],_0x33ac[5]]},{model:_0x33ac[13],as:_0x33ac[14],attributes:[_0x33ac[4],_0x33ac[15],_0x33ac[16],_0x33ac[17]],include:[{model:_0x33ac[18],as:_0x33ac[18],attributes:[_0x33ac[4],_0x33ac[5]]}]},{model:_0x33ac[13],as:_0x33ac[19],attributes:[_0x33ac[4],_0x33ac[15],_0x33ac[16],_0x33ac[20],_0x33ac[21],_0x33ac[22],_0x33ac[17]]},{model:_0x33ac[13],as:_0x33ac[23],attributes:[_0x33ac[4],_0x33ac[24],_0x33ac[25],_0x33ac[26]]}]}]},log:_0x33ac[3]})}}
\ No newline at end of file
+var _0xadf9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x47\x65\x74\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x61\x70\x69\x4B\x65\x79","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x54\x61\x67","\x46\x72\x65\x73\x68\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x6E\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x4E\x61\x6D\x65","\x56\x61\x72\x69\x61\x62\x6C\x65","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x6B\x65\x79","\x6B\x65\x79\x54\x79\x70\x65","\x6B\x65\x79\x43\x6F\x6E\x74\x65\x6E\x74","\x46\x69\x65\x6C\x64\x73","\x69\x64\x46\x69\x65\x6C\x64","\x6E\x61\x6D\x65\x46\x69\x65\x6C\x64","\x63\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64"];_0xadf9[0];var client=require(_0xadf9[1]);exports[_0xadf9[2]]= function(){return function(_0xc129x2){return client.Request(_0xadf9[3],{options:{raw:false,attributes:[_0xadf9[4],_0xadf9[5],_0xadf9[6],_0xadf9[7],_0xadf9[8],_0xadf9[9]],include:[{model:_0xadf9[10],as:_0xadf9[11],attributes:[_0xadf9[4],_0xadf9[5]],include:[{model:_0xadf9[12],attributes:[_0xadf9[4],_0xadf9[5]]},{model:_0xadf9[13],as:_0xadf9[14],attributes:[_0xadf9[4],_0xadf9[15],_0xadf9[16],_0xadf9[17]],include:[{model:_0xadf9[18],as:_0xadf9[18],attributes:[_0xadf9[4],_0xadf9[5]]}]},{model:_0xadf9[13],as:_0xadf9[19],attributes:[_0xadf9[4],_0xadf9[15],_0xadf9[16],_0xadf9[20],_0xadf9[21],_0xadf9[22],_0xadf9[17]]},{model:_0xadf9[13],as:_0xadf9[23],attributes:[_0xadf9[4],_0xadf9[24],_0xadf9[25],_0xadf9[26]]}]}]},log:_0xadf9[3]})}}
\ No newline at end of file
index 4102d8f..2ad7af0 100644 (file)
@@ -1 +1 @@
-var _0x1952=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x47\x65\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x63\x6C\x69\x65\x6E\x74\x49\x64","\x63\x6C\x69\x65\x6E\x74\x53\x65\x63\x72\x65\x74","\x73\x65\x63\x75\x72\x69\x74\x79\x54\x6F\x6B\x65\x6E","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x6E\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x4E\x61\x6D\x65","\x56\x61\x72\x69\x61\x62\x6C\x65","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x6B\x65\x79","\x6B\x65\x79\x54\x79\x70\x65","\x6B\x65\x79\x43\x6F\x6E\x74\x65\x6E\x74","\x46\x69\x65\x6C\x64\x73","\x69\x64\x46\x69\x65\x6C\x64"];_0x1952[0];var client=require(_0x1952[1]);exports[_0x1952[2]]= function(){return function(_0x923ax2){return client.Request(_0x1952[3],{options:{raw:false,attributes:[_0x1952[4],_0x1952[5],_0x1952[6],_0x1952[7],_0x1952[8],_0x1952[9],_0x1952[10],_0x1952[11],_0x1952[12]],include:[{model:_0x1952[13],as:_0x1952[14],attributes:[_0x1952[4],_0x1952[5]],include:[{model:_0x1952[15],as:_0x1952[16],attributes:[_0x1952[4],_0x1952[17],_0x1952[18],_0x1952[19]],include:[{model:_0x1952[20],as:_0x1952[20],attributes:[_0x1952[4],_0x1952[5]]}]},{model:_0x1952[15],as:_0x1952[21],attributes:[_0x1952[4],_0x1952[17],_0x1952[18],_0x1952[22],_0x1952[23],_0x1952[24],_0x1952[19]]},{model:_0x1952[15],as:_0x1952[25],attributes:[_0x1952[4],_0x1952[26]]}]}]},log:_0x1952[3]})}}
\ No newline at end of file
+var _0x81ff=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x47\x65\x74\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x63\x6C\x69\x65\x6E\x74\x49\x64","\x63\x6C\x69\x65\x6E\x74\x53\x65\x63\x72\x65\x74","\x73\x65\x63\x75\x72\x69\x74\x79\x54\x6F\x6B\x65\x6E","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x53\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x46\x69\x65\x6C\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x6E\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x4E\x61\x6D\x65","\x56\x61\x72\x69\x61\x62\x6C\x65","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x6B\x65\x79","\x6B\x65\x79\x54\x79\x70\x65","\x6B\x65\x79\x43\x6F\x6E\x74\x65\x6E\x74","\x46\x69\x65\x6C\x64\x73","\x69\x64\x46\x69\x65\x6C\x64"];_0x81ff[0];var client=require(_0x81ff[1]);exports[_0x81ff[2]]= function(){return function(_0x6270x2){return client.Request(_0x81ff[3],{options:{raw:false,attributes:[_0x81ff[4],_0x81ff[5],_0x81ff[6],_0x81ff[7],_0x81ff[8],_0x81ff[9],_0x81ff[10],_0x81ff[11],_0x81ff[12]],include:[{model:_0x81ff[13],as:_0x81ff[14],attributes:[_0x81ff[4],_0x81ff[5]],include:[{model:_0x81ff[15],as:_0x81ff[16],attributes:[_0x81ff[4],_0x81ff[17],_0x81ff[18],_0x81ff[19]],include:[{model:_0x81ff[20],as:_0x81ff[20],attributes:[_0x81ff[4],_0x81ff[5]]}]},{model:_0x81ff[15],as:_0x81ff[21],attributes:[_0x81ff[4],_0x81ff[17],_0x81ff[18],_0x81ff[22],_0x81ff[23],_0x81ff[24],_0x81ff[19]]},{model:_0x81ff[15],as:_0x81ff[25],attributes:[_0x81ff[4],_0x81ff[26]]}]}]},log:_0x81ff[3]})}}
\ No newline at end of file
index f34ceae..1a85f7a 100644 (file)
@@ -1 +1 @@
-var _0xe0b8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x47\x65\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x6E\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x4E\x61\x6D\x65","\x56\x61\x72\x69\x61\x62\x6C\x65","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x6B\x65\x79","\x6B\x65\x79\x54\x79\x70\x65","\x6B\x65\x79\x43\x6F\x6E\x74\x65\x6E\x74","\x46\x69\x65\x6C\x64\x73","\x69\x64\x46\x69\x65\x6C\x64","\x6E\x61\x6D\x65\x46\x69\x65\x6C\x64","\x63\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64"];_0xe0b8[0];var client=require(_0xe0b8[1]);exports[_0xe0b8[2]]= function(){return function(_0x136ex2){return client.Request(_0xe0b8[3],{options:{raw:false,attributes:[_0xe0b8[4],_0xe0b8[5],_0xe0b8[6],_0xe0b8[7],_0xe0b8[8],_0xe0b8[9]],include:[{model:_0xe0b8[10],as:_0xe0b8[11],attributes:[_0xe0b8[4],_0xe0b8[5]],include:[{model:_0xe0b8[12],as:_0xe0b8[13],attributes:[_0xe0b8[4],_0xe0b8[14],_0xe0b8[15],_0xe0b8[16]],include:[{model:_0xe0b8[17],as:_0xe0b8[17],attributes:[_0xe0b8[4],_0xe0b8[5]]}]},{model:_0xe0b8[12],as:_0xe0b8[18],attributes:[_0xe0b8[4],_0xe0b8[14],_0xe0b8[15],_0xe0b8[19],_0xe0b8[20],_0xe0b8[21],_0xe0b8[16]]},{model:_0xe0b8[12],as:_0xe0b8[22],attributes:[_0xe0b8[4],_0xe0b8[23],_0xe0b8[24],_0xe0b8[25]]}]}]},log:_0xe0b8[3]})}}
\ No newline at end of file
+var _0xc4ec=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x47\x65\x74\x53\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x53\x75\x67\x61\x72\x63\x72\x6D\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x53\x75\x67\x61\x72\x63\x72\x6D\x46\x69\x65\x6C\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x6E\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x4E\x61\x6D\x65","\x56\x61\x72\x69\x61\x62\x6C\x65","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x6B\x65\x79","\x6B\x65\x79\x54\x79\x70\x65","\x6B\x65\x79\x43\x6F\x6E\x74\x65\x6E\x74","\x46\x69\x65\x6C\x64\x73","\x69\x64\x46\x69\x65\x6C\x64","\x6E\x61\x6D\x65\x46\x69\x65\x6C\x64","\x63\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64"];_0xc4ec[0];var client=require(_0xc4ec[1]);exports[_0xc4ec[2]]= function(){return function(_0x5ee4x2){return client.Request(_0xc4ec[3],{options:{raw:false,attributes:[_0xc4ec[4],_0xc4ec[5],_0xc4ec[6],_0xc4ec[7],_0xc4ec[8],_0xc4ec[9]],include:[{model:_0xc4ec[10],as:_0xc4ec[11],attributes:[_0xc4ec[4],_0xc4ec[5]],include:[{model:_0xc4ec[12],as:_0xc4ec[13],attributes:[_0xc4ec[4],_0xc4ec[14],_0xc4ec[15],_0xc4ec[16]],include:[{model:_0xc4ec[17],as:_0xc4ec[17],attributes:[_0xc4ec[4],_0xc4ec[5]]}]},{model:_0xc4ec[12],as:_0xc4ec[18],attributes:[_0xc4ec[4],_0xc4ec[14],_0xc4ec[15],_0xc4ec[19],_0xc4ec[20],_0xc4ec[21],_0xc4ec[16]]},{model:_0xc4ec[12],as:_0xc4ec[22],attributes:[_0xc4ec[4],_0xc4ec[23],_0xc4ec[24],_0xc4ec[25]]}]}]},log:_0xc4ec[3]})}}
\ No newline at end of file
index 0421521..42ae9b3 100644 (file)
@@ -1 +1 @@
-var _0x6dac=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x47\x65\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x74\x6F\x6B\x65\x6E","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x61\x75\x74\x68\x54\x79\x70\x65","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x54\x61\x67","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x6E\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x4E\x61\x6D\x65","\x56\x61\x72\x69\x61\x62\x6C\x65","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x6B\x65\x79","\x6B\x65\x79\x54\x79\x70\x65","\x6B\x65\x79\x43\x6F\x6E\x74\x65\x6E\x74","\x46\x69\x65\x6C\x64\x73","\x69\x64\x46\x69\x65\x6C\x64","\x6E\x61\x6D\x65\x46\x69\x65\x6C\x64","\x63\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64"];_0x6dac[0];var client=require(_0x6dac[1]);exports[_0x6dac[2]]= function(){return function(_0x42a7x2){return client.Request(_0x6dac[3],{options:{raw:false,attributes:[_0x6dac[4],_0x6dac[5],_0x6dac[6],_0x6dac[7],_0x6dac[8],_0x6dac[9],_0x6dac[10],_0x6dac[11]],include:[{model:_0x6dac[12],as:_0x6dac[13],attributes:[_0x6dac[4],_0x6dac[5]],include:[{model:_0x6dac[14],attributes:[_0x6dac[4],_0x6dac[5]]},{model:_0x6dac[15],as:_0x6dac[16],attributes:[_0x6dac[4],_0x6dac[17],_0x6dac[18],_0x6dac[19]],include:[{model:_0x6dac[20],as:_0x6dac[20],attributes:[_0x6dac[4],_0x6dac[5]]}]},{model:_0x6dac[15],as:_0x6dac[21],attributes:[_0x6dac[4],_0x6dac[17],_0x6dac[18],_0x6dac[22],_0x6dac[23],_0x6dac[24],_0x6dac[19]]},{model:_0x6dac[15],as:_0x6dac[25],attributes:[_0x6dac[4],_0x6dac[26],_0x6dac[27],_0x6dac[28]]}]}]},log:_0x6dac[3]})}}
\ No newline at end of file
+var _0xb304=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x47\x65\x74\x5A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x74\x6F\x6B\x65\x6E","\x72\x65\x6D\x6F\x74\x65\x55\x72\x69","\x61\x75\x74\x68\x54\x79\x70\x65","\x73\x65\x72\x76\x65\x72\x55\x72\x6C","\x5A\x65\x6E\x64\x65\x73\x6B\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x54\x61\x67","\x5A\x65\x6E\x64\x65\x73\x6B\x46\x69\x65\x6C\x64","\x53\x75\x62\x6A\x65\x63\x74\x73","\x74\x79\x70\x65","\x63\x6F\x6E\x74\x65\x6E\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x4E\x61\x6D\x65","\x56\x61\x72\x69\x61\x62\x6C\x65","\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x73","\x6B\x65\x79","\x6B\x65\x79\x54\x79\x70\x65","\x6B\x65\x79\x43\x6F\x6E\x74\x65\x6E\x74","\x46\x69\x65\x6C\x64\x73","\x69\x64\x46\x69\x65\x6C\x64","\x6E\x61\x6D\x65\x46\x69\x65\x6C\x64","\x63\x75\x73\x74\x6F\x6D\x46\x69\x65\x6C\x64"];_0xb304[0];var client=require(_0xb304[1]);exports[_0xb304[2]]= function(){return function(_0x1a04x2){return client.Request(_0xb304[3],{options:{raw:false,attributes:[_0xb304[4],_0xb304[5],_0xb304[6],_0xb304[7],_0xb304[8],_0xb304[9],_0xb304[10],_0xb304[11]],include:[{model:_0xb304[12],as:_0xb304[13],attributes:[_0xb304[4],_0xb304[5]],include:[{model:_0xb304[14],attributes:[_0xb304[4],_0xb304[5]]},{model:_0xb304[15],as:_0xb304[16],attributes:[_0xb304[4],_0xb304[17],_0xb304[18],_0xb304[19]],include:[{model:_0xb304[20],as:_0xb304[20],attributes:[_0xb304[4],_0xb304[5]]}]},{model:_0xb304[15],as:_0xb304[21],attributes:[_0xb304[4],_0xb304[17],_0xb304[18],_0xb304[22],_0xb304[23],_0xb304[24],_0xb304[19]]},{model:_0xb304[15],as:_0xb304[25],attributes:[_0xb304[4],_0xb304[17],_0xb304[18],_0xb304[26],_0xb304[27],_0xb304[28]]}]}]},log:_0xb304[3]})}}
\ No newline at end of file
index ca5b22d..79f0975 100644 (file)
@@ -1 +1 @@
-var _0xe5ae=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x76\x6F\x69\x63\x65","\x6C\x61\x73\x74\x41\x73\x73\x69\x67\x6E\x65\x64\x54\x6F","\x53\x49\x50\x2F","\x54\x41\x4C\x4B\x49\x4E\x47","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x69\x6E\x62\x6F\x75\x6E\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x65\x78\x74\x65\x6E","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x74\x6F\x4E\x75\x6D\x62\x65\x72","\x75\x6E\x69\x71\x75\x65\x69\x64","\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x73\x70\x6C\x69\x74","\x63\x68\x61\x6E\x6E\x65\x6C","\x2D","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x64\x69\x61\x6C\x73\x74\x72\x69\x6E\x67"];_0xe5ae[0];var moment=require(_0xe5ae[1]);var _=require(_0xe5ae[2]);var client=require(_0xe5ae[3]);exports[_0xe5ae[4]]= function(_0xc6eax4){return client.Request(_0xe5ae[5],{body:{channel:_0xe5ae[6],membername:_0xc6eax4[_0xe5ae[7]],interface:_0xe5ae[8]+ _0xc6eax4[_0xe5ae[7]],type:_0xe5ae[9],enterAt:_0xc6eax4[_0xe5ae[10]],exitAt:_0xc6eax4[_0xe5ae[11]],duration:moment(_0xc6eax4[_0xe5ae[11]])[_0xe5ae[13]](_0xc6eax4[_0xe5ae[10]],_0xe5ae[12]),data1:_0xe5ae[14],data2:_0xc6eax4[_0xe5ae[15]],data3:_0xc6eax4[_0xe5ae[16]],data4:null,data5:_0xc6eax4[_0xe5ae[17]],role:_0xe5ae[18],internal:_0xc6eax4[_0xe5ae[19]]?_[_0xe5ae[20]](_0xc6eax4[_0xe5ae[19]]):undefined,uniqueid:_0xc6eax4[_0xe5ae[21]]},log:_0xe5ae[5]})};exports[_0xe5ae[22]]= function(_0xc6eax5){return client.Request(_0xe5ae[5],{body:{channel:_0xe5ae[6],membername:_0xc6eax5[_0xe5ae[24]][_0xe5ae[23]](/\/|-/)[1],interface:_0xc6eax5[_0xe5ae[24]][_0xe5ae[23]](_0xe5ae[25])[0],type:_0xe5ae[9],enterAt:_0xc6eax5[_0xe5ae[26]],exitAt:_0xc6eax5[_0xe5ae[27]],data1:_0xe5ae[28],data2:_0xc6eax5[_0xe5ae[19]],data3:_0xc6eax5[_0xe5ae[16]],data4:_0xc6eax5[_0xe5ae[29]]|| null,role:_0xe5ae[18],internal:_0xc6eax5[_0xe5ae[19]]?_[_0xe5ae[20]](_0xc6eax5[_0xe5ae[19]]):undefined,uniqueid:_0xc6eax5[_0xe5ae[21]]},log:_0xe5ae[5]})}
\ No newline at end of file
+var _0x4db3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x43\x72\x65\x61\x74\x65\x4D\x65\x6D\x62\x65\x72\x52\x65\x70\x6F\x72\x74","\x76\x6F\x69\x63\x65","\x6C\x61\x73\x74\x41\x73\x73\x69\x67\x6E\x65\x64\x54\x6F","\x53\x49\x50\x2F","\x54\x41\x4C\x4B\x49\x4E\x47","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x73\x65\x63\x6F\x6E\x64\x73","\x64\x69\x66\x66","\x69\x6E\x62\x6F\x75\x6E\x64","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x65\x78\x74\x65\x6E","\x71\x75\x65\x75\x65","\x61\x67\x65\x6E\x74","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x74\x6F\x4E\x75\x6D\x62\x65\x72","\x75\x6E\x69\x71\x75\x65\x69\x64","\x76\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74","\x73\x70\x6C\x69\x74","\x63\x68\x61\x6E\x6E\x65\x6C","\x2D","\x73\x74\x61\x72\x74\x74\x69\x6D\x65","\x65\x6E\x64\x74\x69\x6D\x65","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x64\x69\x61\x6C\x73\x74\x72\x69\x6E\x67"];_0x4db3[0];var moment=require(_0x4db3[1]);var _=require(_0x4db3[2]);var client=require(_0x4db3[3]);exports[_0x4db3[4]]= function(_0x81cdx4){return client.Request(_0x4db3[5],{body:{channel:_0x4db3[6],membername:_0x81cdx4[_0x4db3[7]],interface:_0x4db3[8]+ _0x81cdx4[_0x4db3[7]],type:_0x4db3[9],enterAt:_0x81cdx4[_0x4db3[10]],exitAt:_0x81cdx4[_0x4db3[11]],duration:moment(_0x81cdx4[_0x4db3[11]])[_0x4db3[13]](_0x81cdx4[_0x4db3[10]],_0x4db3[12]),data1:_0x4db3[14],data2:_0x81cdx4[_0x4db3[15]],data3:_0x81cdx4[_0x4db3[16]],data4:null,data5:_0x81cdx4[_0x4db3[17]],role:_0x4db3[18],internal:_0x81cdx4[_0x4db3[19]]?_[_0x4db3[20]](_0x81cdx4[_0x4db3[19]]):undefined,uniqueid:_0x81cdx4[_0x4db3[21]]},log:_0x4db3[5]})};exports[_0x4db3[22]]= function(_0x81cdx5){return client.Request(_0x4db3[5],{body:{channel:_0x4db3[6],membername:_0x81cdx5[_0x4db3[24]][_0x4db3[23]](/\/|-/)[1],interface:_0x81cdx5[_0x4db3[24]][_0x4db3[23]](_0x4db3[25])[0],type:_0x4db3[9],enterAt:_0x81cdx5[_0x4db3[26]],exitAt:_0x81cdx5[_0x4db3[27]],data1:_0x4db3[28],data2:_0x81cdx5[_0x4db3[19]],data3:_0x81cdx5[_0x4db3[16]],data4:_0x81cdx5[_0x4db3[29]]|| null,role:_0x4db3[18],internal:_0x81cdx5[_0x4db3[19]]?_[_0x4db3[20]](_0x81cdx5[_0x4db3[19]]):undefined,uniqueid:_0x81cdx5[_0x4db3[21]]},log:_0x4db3[5]})}
\ No newline at end of file
index 420f807..857bcbc 100644 (file)
@@ -1 +1 @@
-var _0x20dd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x47\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65","\x69\x64","\x6E\x61\x6D\x65","\x73\x75\x62\x6A\x65\x63\x74","\x68\x74\x6D\x6C"];_0x20dd[0];var client=require(_0x20dd[1]);exports[_0x20dd[2]]= function(_0x49dax2){return function(_0x49dax3){return client.Request(_0x20dd[3],{options:{raw:true,attributes:[_0x20dd[4],_0x20dd[5],_0x20dd[6],_0x20dd[7]]},log:_0x20dd[3]})}}
\ No newline at end of file
+var _0xa658=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x47\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65","\x69\x64","\x6E\x61\x6D\x65","\x73\x75\x62\x6A\x65\x63\x74","\x68\x74\x6D\x6C"];_0xa658[0];var client=require(_0xa658[1]);exports[_0xa658[2]]= function(_0xf116x2){return function(_0xf116x3){return client.Request(_0xa658[3],{options:{raw:true,attributes:[_0xa658[4],_0xa658[5],_0xa658[6],_0xa658[7]]},log:_0xa658[3]})}}
\ No newline at end of file
index f86ece4..4e4c5ec 100644 (file)
@@ -1 +1 @@
-var _0xf754=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x47\x65\x74\x54\x72\x69\x67\x67\x65\x72","\x76\x6F\x69\x63\x65","\x69\x64","\x6E\x61\x6D\x65","\x73\x74\x61\x74\x75\x73","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x66\x69\x65\x6C\x64","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x76\x61\x6C\x75\x65","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x63\x74\x69\x6F\x6E","\x41\x63\x74\x69\x6F\x6E\x73","\x61\x63\x74\x69\x6F\x6E","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x64\x61\x74\x61\x33"];_0xf754[0];var client=require(_0xf754[1]);exports[_0xf754[2]]= function(_0x2c07x2){return function(_0x2c07x3){return client.Request(_0xf754[3],{options:{raw:false,where:{channel:_0xf754[4]},attributes:[_0xf754[5],_0xf754[6],_0xf754[7]],include:[{model:_0xf754[8],as:_0xf754[9],attributes:[_0xf754[5],_0xf754[10],_0xf754[11],_0xf754[12]]},{model:_0xf754[8],as:_0xf754[13],attributes:[_0xf754[5],_0xf754[10],_0xf754[11],_0xf754[12]]},{model:_0xf754[14],as:_0xf754[15],attributes:[_0xf754[5],_0xf754[16],_0xf754[17],_0xf754[18],_0xf754[19]]}]},log:_0xf754[3]})}}
\ No newline at end of file
+var _0x630c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x47\x65\x74\x54\x72\x69\x67\x67\x65\x72","\x76\x6F\x69\x63\x65","\x69\x64","\x6E\x61\x6D\x65","\x73\x74\x61\x74\x75\x73","\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x66\x69\x65\x6C\x64","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x76\x61\x6C\x75\x65","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x41\x63\x74\x69\x6F\x6E","\x41\x63\x74\x69\x6F\x6E\x73","\x61\x63\x74\x69\x6F\x6E","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x64\x61\x74\x61\x33"];_0x630c[0];var client=require(_0x630c[1]);exports[_0x630c[2]]= function(_0x3cc4x2){return function(_0x3cc4x3){return client.Request(_0x630c[3],{options:{raw:false,where:{channel:_0x630c[4]},attributes:[_0x630c[5],_0x630c[6],_0x630c[7]],include:[{model:_0x630c[8],as:_0x630c[9],attributes:[_0x630c[5],_0x630c[10],_0x630c[11],_0x630c[12]]},{model:_0x630c[8],as:_0x630c[13],attributes:[_0x630c[5],_0x630c[10],_0x630c[11],_0x630c[12]]},{model:_0x630c[14],as:_0x630c[15],attributes:[_0x630c[5],_0x630c[16],_0x630c[17],_0x630c[18],_0x630c[19]]}]},log:_0x630c[3]})}}
\ No newline at end of file
index b53ca7b..c194a50 100644 (file)
@@ -1 +1 @@
-var _0xaed3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x54\x72\x75\x6E\x6B\x73","\x47\x65\x74\x54\x72\x75\x6E\x6B","\x69\x64","\x6E\x61\x6D\x65","\x72\x65\x67\x69\x73\x74\x72\x79"];_0xaed3[0];var client=require(_0xaed3[1]);exports[_0xaed3[2]]= function(_0x5b49x2){return function(_0x5b49x3){return client.Request(_0xaed3[3],{options:{raw:true,where:{active:1},attributes:[_0xaed3[4],_0xaed3[5],_0xaed3[6]]},log:_0xaed3[3]})}}
\ No newline at end of file
+var _0xdf49=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x54\x72\x75\x6E\x6B\x73","\x47\x65\x74\x54\x72\x75\x6E\x6B","\x69\x64","\x6E\x61\x6D\x65","\x72\x65\x67\x69\x73\x74\x72\x79"];_0xdf49[0];var client=require(_0xdf49[1]);exports[_0xdf49[2]]= function(_0xcdb1x2){return function(_0xcdb1x3){return client.Request(_0xdf49[3],{options:{raw:true,where:{active:1},attributes:[_0xdf49[4],_0xdf49[5],_0xdf49[6]]},log:_0xdf49[3]})}}
\ No newline at end of file
index d0f6550..137787c 100644 (file)
@@ -1 +1 @@
-var _0xe90d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x47\x65\x74\x55\x73\x65\x72","\x61\x67\x65\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x65\x6D\x61\x69\x6C","\x6F\x6E\x6C\x69\x6E\x65","\x6C\x61\x73\x74\x4C\x6F\x67\x69\x6E\x41\x74","\x67\x65\x74\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x73\x61\x76\x65\x50\x61\x75\x73\x65","\x50\x61\x75\x73\x65\x55\x73\x65\x72","\x73\x61\x76\x65\x55\x6E\x70\x61\x75\x73\x65","\x55\x6E\x70\x61\x75\x73\x65\x55\x73\x65\x72"];_0xe90d[0];var client=require(_0xe90d[1]);exports[_0xe90d[2]]= function(){return function(){return client.Request(_0xe90d[3],{options:{raw:false,where:{role:_0xe90d[4]},attributes:[_0xe90d[5],_0xe90d[6],_0xe90d[7],_0xe90d[8],_0xe90d[9]]},log:_0xe90d[2]})}};exports[_0xe90d[10]]= function(){return function(){return client.Request(_0xe90d[3],{options:{raw:true,where:{role:_0xe90d[11]},attributes:[_0xe90d[5],_0xe90d[6]]},log:_0xe90d[10]})}};exports[_0xe90d[12]]= function(_0x16a4x2,_0x16a4x3){return client.Request(_0xe90d[13],{body:{type:_0x16a4x3},options:{where:{id:_0x16a4x2[_0xe90d[5]]}},log:_0xe90d[12]})};exports[_0xe90d[14]]= function(_0x16a4x2){return client.Request(_0xe90d[15],{body:{},options:{where:{id:_0x16a4x2[_0xe90d[5]]}},log:_0xe90d[12]})}
\ No newline at end of file
+var _0xbd66=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x41\x67\x65\x6E\x74\x73","\x47\x65\x74\x55\x73\x65\x72","\x61\x67\x65\x6E\x74","\x69\x64","\x6E\x61\x6D\x65","\x65\x6D\x61\x69\x6C","\x6F\x6E\x6C\x69\x6E\x65","\x6C\x61\x73\x74\x4C\x6F\x67\x69\x6E\x41\x74","\x67\x65\x74\x54\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65","\x73\x61\x76\x65\x50\x61\x75\x73\x65","\x50\x61\x75\x73\x65\x55\x73\x65\x72","\x73\x61\x76\x65\x55\x6E\x70\x61\x75\x73\x65","\x55\x6E\x70\x61\x75\x73\x65\x55\x73\x65\x72"];_0xbd66[0];var client=require(_0xbd66[1]);exports[_0xbd66[2]]= function(){return function(){return client.Request(_0xbd66[3],{options:{raw:false,where:{role:_0xbd66[4]},attributes:[_0xbd66[5],_0xbd66[6],_0xbd66[7],_0xbd66[8],_0xbd66[9]]},log:_0xbd66[2]})}};exports[_0xbd66[10]]= function(){return function(){return client.Request(_0xbd66[3],{options:{raw:true,where:{role:_0xbd66[11]},attributes:[_0xbd66[5],_0xbd66[6]]},log:_0xbd66[10]})}};exports[_0xbd66[12]]= function(_0x5b18x2,_0x5b18x3){return client.Request(_0xbd66[13],{body:{type:_0x5b18x3},options:{where:{id:_0x5b18x2[_0xbd66[5]]}},log:_0xbd66[12]})};exports[_0xbd66[14]]= function(_0x5b18x2){return client.Request(_0xbd66[15],{body:{},options:{where:{id:_0x5b18x2[_0xbd66[5]]}},log:_0xbd66[12]})}
\ No newline at end of file
index 0bb8365..4ad1d50 100644 (file)
@@ -1 +1 @@
-var _0x1d76=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74"];_0x1d76[0];var client=require(_0x1d76[1]);exports[_0x1d76[2]]= function(_0xafa0x2){return client.Request(_0x1d76[3],{body:_0xafa0x2,log:_0x1d76[3]})}
\ No newline at end of file
+var _0x4ed8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x41\x67\x65\x6E\x74\x52\x65\x70\x6F\x72\x74"];_0x4ed8[0];var client=require(_0x4ed8[1]);exports[_0x4ed8[2]]= function(_0x1b87x2){return client.Request(_0x4ed8[3],{body:_0x1b87x2,log:_0x4ed8[3]})}
\ No newline at end of file
index 5afa221..1951306 100644 (file)
@@ -1 +1 @@
-var _0x4445=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x65\x78\x74\x65\x6E","\x63\x6F\x6E\x74\x65\x78\x74","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x44\x4F\x43\x55\x4D\x45\x4E\x54\x41\x54\x49\x4F\x4E","\x6D\x65\x72\x67\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x64\x61\x79","\x73\x74\x61\x72\x74\x4F\x66","\x65\x6E\x64\x4F\x66","\x74\x79\x70\x65","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73"];_0x4445[0];var moment=require(_0x4445[1]);var util=require(_0x4445[2]);var _=require(_0x4445[3]);var client=require(_0x4445[4]);exports[_0x4445[5]]= function(_0xd199x5){return client.Request(_0x4445[6],{body:_[_0x4445[14]](_0xd199x5,{source:_0xd199x5[_0x4445[7]],destination:_0xd199x5[_0x4445[8]],destinationcontext:_0xd199x5[_0x4445[9]],callerid:util[_0x4445[12]](_0x4445[10],_0xd199x5[_0x4445[7]],_0xd199x5[_0x4445[11]]),amaflags:_0x4445[13]}),log:_0x4445[6]})};exports[_0x4445[15]]= function(){return function(){return client.Request(_0x4445[16],{options:{where:{type:[_0x4445[17]],createdAt:{$between:[moment()[_0x4445[19]](_0x4445[18]),moment()[_0x4445[20]](_0x4445[18])]}},attributes:[_0x4445[21],_0x4445[22],_0x4445[23],_0x4445[24]]},log:_0x4445[25]})}}
\ No newline at end of file
+var _0x1f68=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x65\x78\x74\x65\x6E","\x63\x6F\x6E\x74\x65\x78\x74","\x22\x25\x73\x22\x20\x3C\x25\x73\x3E","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x44\x4F\x43\x55\x4D\x45\x4E\x54\x41\x54\x49\x4F\x4E","\x6D\x65\x72\x67\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x64\x61\x79","\x73\x74\x61\x72\x74\x4F\x66","\x65\x6E\x64\x4F\x66","\x74\x79\x70\x65","\x64\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x64\x75\x72\x61\x74\x69\x6F\x6E","\x62\x69\x6C\x6C\x61\x62\x6C\x65\x73\x65\x63\x6F\x6E\x64\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x43\x61\x6C\x6C\x52\x65\x70\x6F\x72\x74\x73"];_0x1f68[0];var moment=require(_0x1f68[1]);var util=require(_0x1f68[2]);var _=require(_0x1f68[3]);var client=require(_0x1f68[4]);exports[_0x1f68[5]]= function(_0x79b7x5){return client.Request(_0x1f68[6],{body:_[_0x1f68[14]](_0x79b7x5,{source:_0x79b7x5[_0x1f68[7]],destination:_0x79b7x5[_0x1f68[8]],destinationcontext:_0x79b7x5[_0x1f68[9]],callerid:util[_0x1f68[12]](_0x1f68[10],_0x79b7x5[_0x1f68[7]],_0x79b7x5[_0x1f68[11]]),amaflags:_0x1f68[13]}),log:_0x1f68[6]})};exports[_0x1f68[15]]= function(){return function(){return client.Request(_0x1f68[16],{options:{where:{type:[_0x1f68[17]],createdAt:{$between:[moment()[_0x1f68[19]](_0x1f68[18]),moment()[_0x1f68[20]](_0x1f68[18])]}},attributes:[_0x1f68[21],_0x1f68[22],_0x1f68[23],_0x1f68[24]]},log:_0x1f68[25]})}}
\ No newline at end of file
index 5b92589..1fc0096 100644 (file)
@@ -1 +1 @@
-var _0x3d2e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74"];_0x3d2e[0];var client=require(_0x3d2e[1]);exports[_0x3d2e[2]]= function(_0xc672x2){return client.Request(_0x3d2e[3],{body:_0xc672x2,log:_0x3d2e[3]})}
\ No newline at end of file
+var _0x20d9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x44\x69\x61\x6C\x52\x65\x70\x6F\x72\x74"];_0x20d9[0];var client=require(_0x20d9[1]);exports[_0x20d9[2]]= function(_0xbb65x2){return client.Request(_0x20d9[3],{body:_0xbb65x2,log:_0x20d9[3]})}
\ No newline at end of file
index efa1f1a..0029ae3 100644 (file)
@@ -1 +1 @@
-var _0x6723=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x69\x64","\x6E\x61\x6D\x65","\x61\x63\x77","\x61\x63\x77\x54\x69\x6D\x65\x6F\x75\x74","\x61\x75\x74\x6F\x70\x61\x75\x73\x65","\x6D\x6F\x6E\x69\x74\x6F\x72\x5F\x66\x6F\x72\x6D\x61\x74","\x74\x79\x70\x65","\x64\x69\x61\x6C\x41\x63\x74\x69\x76\x65","\x64\x69\x61\x6C\x4D\x65\x74\x68\x6F\x64","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x43\x68\x61\x6E\x6E\x65\x6C","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x51\x75\x65\x75\x65","\x64\x69\x61\x6C\x50\x6F\x77\x65\x72\x4C\x65\x76\x65\x6C","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E\x50\x65\x72\x63\x65\x6E\x74\x61\x67\x65","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x4F\x70\x74\x69\x6F\x6E\x73","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x50\x72\x6F\x6A\x65\x63\x74","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x54\x72\x75\x6E\x6B","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x61\x63\x74\x69\x76\x65","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x69\x6E\x74\x65\x72\x76\x61\x6C"];_0x6723[0];var client=require(_0x6723[1]);exports[_0x6723[2]]= function(){return function(){return client.Request(_0x6723[3],{options:{raw:false,attributes:[_0x6723[4],_0x6723[5],_0x6723[6],_0x6723[7],_0x6723[8],_0x6723[9],_0x6723[10],_0x6723[11],_0x6723[12],_0x6723[13],_0x6723[14],_0x6723[15],_0x6723[16],_0x6723[17],_0x6723[18],_0x6723[19],_0x6723[20],_0x6723[21],_0x6723[22],_0x6723[23],_0x6723[24],_0x6723[25],_0x6723[26],_0x6723[27],_0x6723[28],_0x6723[29],_0x6723[30],_0x6723[31],_0x6723[32],_0x6723[33]],include:[{model:_0x6723[34],as:_0x6723[34],attributes:[_0x6723[4],_0x6723[5],_0x6723[35],_0x6723[36]]},{model:_0x6723[34],as:_0x6723[37],attributes:[_0x6723[4],_0x6723[5],_0x6723[35],_0x6723[36]]},{model:_0x6723[38],as:_0x6723[38],attributes:[_0x6723[4],_0x6723[5]],include:[{model:_0x6723[38],as:_0x6723[39],attributes:[_0x6723[4],_0x6723[5],_0x6723[40]]}]}]},log:_0x6723[2]})}}
\ No newline at end of file
+var _0x6bb9=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x69\x64","\x6E\x61\x6D\x65","\x61\x63\x77","\x61\x63\x77\x54\x69\x6D\x65\x6F\x75\x74","\x61\x75\x74\x6F\x70\x61\x75\x73\x65","\x6D\x6F\x6E\x69\x74\x6F\x72\x5F\x66\x6F\x72\x6D\x61\x74","\x74\x79\x70\x65","\x64\x69\x61\x6C\x41\x63\x74\x69\x76\x65","\x64\x69\x61\x6C\x4D\x65\x74\x68\x6F\x64","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x43\x68\x61\x6E\x6E\x65\x6C","\x64\x69\x61\x6C\x4C\x69\x6D\x69\x74\x51\x75\x65\x75\x65","\x64\x69\x61\x6C\x50\x6F\x77\x65\x72\x4C\x65\x76\x65\x6C","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x4F\x70\x74\x69\x6D\x69\x7A\x61\x74\x69\x6F\x6E\x50\x65\x72\x63\x65\x6E\x74\x61\x67\x65","\x64\x69\x61\x6C\x50\x72\x65\x64\x69\x63\x74\x69\x76\x65\x49\x6E\x74\x65\x72\x76\x61\x6C","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x61\x6D\x65","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x43\x61\x6C\x6C\x65\x72\x49\x64\x4E\x75\x6D\x62\x65\x72","\x64\x69\x61\x6C\x4F\x72\x69\x67\x69\x6E\x61\x74\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x4F\x70\x74\x69\x6F\x6E\x73","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x54\x69\x6D\x65\x6F\x75\x74","\x64\x69\x61\x6C\x51\x75\x65\x75\x65\x50\x72\x6F\x6A\x65\x63\x74","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x43\x6F\x6E\x67\x65\x73\x74\x69\x6F\x6E\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x42\x75\x73\x79\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x4E\x6F\x41\x6E\x73\x77\x65\x72\x52\x65\x74\x72\x79\x46\x72\x65\x71\x75\x65\x6E\x63\x79","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x4D\x61\x78\x52\x65\x74\x72\x79","\x64\x69\x61\x6C\x54\x69\x6D\x65\x7A\x6F\x6E\x65","\x64\x69\x61\x6C\x47\x6C\x6F\x62\x61\x6C\x49\x6E\x74\x65\x72\x76\x61\x6C","\x54\x72\x75\x6E\x6B","\x63\x61\x6C\x6C\x65\x72\x69\x64","\x61\x63\x74\x69\x76\x65","\x54\x72\x75\x6E\x6B\x42\x61\x63\x6B\x75\x70","\x49\x6E\x74\x65\x72\x76\x61\x6C","\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x69\x6E\x74\x65\x72\x76\x61\x6C"];_0x6bb9[0];var client=require(_0x6bb9[1]);exports[_0x6bb9[2]]= function(){return function(){return client.Request(_0x6bb9[3],{options:{raw:false,attributes:[_0x6bb9[4],_0x6bb9[5],_0x6bb9[6],_0x6bb9[7],_0x6bb9[8],_0x6bb9[9],_0x6bb9[10],_0x6bb9[11],_0x6bb9[12],_0x6bb9[13],_0x6bb9[14],_0x6bb9[15],_0x6bb9[16],_0x6bb9[17],_0x6bb9[18],_0x6bb9[19],_0x6bb9[20],_0x6bb9[21],_0x6bb9[22],_0x6bb9[23],_0x6bb9[24],_0x6bb9[25],_0x6bb9[26],_0x6bb9[27],_0x6bb9[28],_0x6bb9[29],_0x6bb9[30],_0x6bb9[31],_0x6bb9[32],_0x6bb9[33]],include:[{model:_0x6bb9[34],as:_0x6bb9[34],attributes:[_0x6bb9[4],_0x6bb9[5],_0x6bb9[35],_0x6bb9[36]]},{model:_0x6bb9[34],as:_0x6bb9[37],attributes:[_0x6bb9[4],_0x6bb9[5],_0x6bb9[35],_0x6bb9[36]]},{model:_0x6bb9[38],as:_0x6bb9[38],attributes:[_0x6bb9[4],_0x6bb9[5]],include:[{model:_0x6bb9[38],as:_0x6bb9[39],attributes:[_0x6bb9[4],_0x6bb9[5],_0x6bb9[40]]}]}]},log:_0x6bb9[2]})}}
\ No newline at end of file
index 59da9d3..3220bb0 100644 (file)
@@ -1 +1 @@
-var _0xf8a6=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x64\x61\x79","\x73\x74\x61\x72\x74\x4F\x66","\x65\x6E\x64\x4F\x66","\x75\x6E\x69\x71\x75\x65\x69\x64","\x71\x75\x65\x75\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73"];_0xf8a6[0];var moment=require(_0xf8a6[1]);var _=require(_0xf8a6[2]);var client=require(_0xf8a6[3]);exports[_0xf8a6[4]]= function(_0x3d91x4){return client.Request(_0xf8a6[5],{body:_0x3d91x4,log:_0xf8a6[5]})};exports[_0xf8a6[6]]= function(){return function(){return client.Request(_0xf8a6[7],{options:{where:{createdAt:{$between:[moment()[_0xf8a6[9]](_0xf8a6[8]),moment()[_0xf8a6[10]](_0xf8a6[8])]}},attributes:[_0xf8a6[11],_0xf8a6[12],_0xf8a6[13],_0xf8a6[14],_0xf8a6[15],_0xf8a6[16],_0xf8a6[17],_0xf8a6[18],_0xf8a6[19],_0xf8a6[20]]},log:_0xf8a6[21]})}}
\ No newline at end of file
+var _0x1485=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6D\x6F\x6D\x65\x6E\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74","\x64\x61\x79","\x73\x74\x61\x72\x74\x4F\x66","\x65\x6E\x64\x4F\x66","\x75\x6E\x69\x71\x75\x65\x69\x64","\x71\x75\x65\x75\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6A\x6F\x69\x6E\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x6C\x65\x61\x76\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x63\x6F\x6D\x70\x6C\x65\x74\x65\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x65\x78\x69\x74\x41\x74","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E\x41\x74","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x65\x70\x6F\x72\x74\x73"];_0x1485[0];var moment=require(_0x1485[1]);var _=require(_0x1485[2]);var client=require(_0x1485[3]);exports[_0x1485[4]]= function(_0x2811x4){return client.Request(_0x1485[5],{body:_0x2811x4,log:_0x1485[5]})};exports[_0x1485[6]]= function(){return function(){return client.Request(_0x1485[7],{options:{where:{createdAt:{$between:[moment()[_0x1485[9]](_0x1485[8]),moment()[_0x1485[10]](_0x1485[8])]}},attributes:[_0x1485[11],_0x1485[12],_0x1485[13],_0x1485[14],_0x1485[15],_0x1485[16],_0x1485[17],_0x1485[18],_0x1485[19],_0x1485[20]]},log:_0x1485[21]})}}
\ No newline at end of file
index 0ab2087..7fa718c 100644 (file)
@@ -1 +1 @@
-var _0x1770=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73"];_0x1770[0];var client=require(_0x1770[1]);exports[_0x1770[2]]= function(_0x48e6x2){return function(){return client.Request(_0x1770[3],{options:{where:{VoiceQueueId:_0x48e6x2,paused:true},raw:true},log:_0x1770[2]})}}
\ No newline at end of file
+var _0x682a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73","\x47\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x52\x74\x50\x61\x75\x73\x65\x73"];_0x682a[0];var client=require(_0x682a[1]);exports[_0x682a[2]]= function(_0x1c5ex2){return function(){return client.Request(_0x682a[3],{options:{where:{VoiceQueueId:_0x1c5ex2,paused:true},raw:true},log:_0x682a[2]})}}
\ No newline at end of file
index 34d3d5a..df888b9 100644 (file)
@@ -1 +1 @@
-var _0x487f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x6D\x6F\x6E\x69\x74\x6F\x72\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x6D\x65\x72\x67\x65"];_0x487f[0];var _=require(_0x487f[1]);var client=require(_0x487f[2]);exports[_0x487f[3]]= function(_0x892ex3){return client.Request(_0x487f[4],{body:_[_0x487f[6]](_0x892ex3,{value:_0x892ex3[_0x487f[5]]}),log:_0x487f[4]})}
\ No newline at end of file
+var _0xde85=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x63\x72\x65\x61\x74\x65","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x52\x65\x63\x6F\x72\x64\x69\x6E\x67","\x6D\x6F\x6E\x69\x74\x6F\x72\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x6D\x65\x72\x67\x65"];_0xde85[0];var _=require(_0xde85[1]);var client=require(_0xde85[2]);exports[_0xde85[3]]= function(_0x787ex3){return client.Request(_0xde85[4],{body:_[_0xde85[6]](_0x787ex3,{value:_0x787ex3[_0xde85[5]]}),log:_0xde85[4]})}
\ No newline at end of file
index ea239a3..2897746 100644 (file)
@@ -1 +1 @@
-var _0xc7fa=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x62\x6C\x69\x6E\x64\x54\x72\x61\x6E\x73\x66\x65\x72","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x72\x65\x73\x75\x6C\x74","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x74\x65\x78\x74","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x65\x78\x74\x65\x6E","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x6F\x6E\x74\x65\x78\x74","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x65\x78\x74\x65\x6E","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x69\x73\x65\x78\x74\x65\x72\x6E\x61\x6C","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x62\x6C\x69\x6E\x64","\x61\x74\x74\x65\x6E\x64\x65\x64\x54\x72\x61\x6E\x73\x66\x65\x72","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x68\x61\x6E\x6E\x65\x6C","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x73\x65\x63\x6F\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x73\x65\x63\x6F\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x73\x65\x63\x6F\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x74\x65\x78\x74","\x73\x65\x63\x6F\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x65\x78\x74\x65\x6E","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x6F\x6E\x74\x65\x78\x74","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x65\x78\x74\x65\x6E","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x74\x65\x78\x74","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x65\x78\x74\x65\x6E","\x61\x74\x74\x65\x6E\x64\x65\x64"];_0xc7fa[0];var client=require(_0xc7fa[1]);exports[_0xc7fa[2]]= function(_0x5058x2){return client.Request(_0xc7fa[3],{body:{result:_0x5058x2[_0xc7fa[4]],transfererchannel:_0x5058x2[_0xc7fa[5]],transferercalleridnum:_0x5058x2[_0xc7fa[6]],transferercalleridname:_0x5058x2[_0xc7fa[7]],transfererconnectedlinenum:_0x5058x2[_0xc7fa[8]],transfererconnectedlinename:_0x5058x2[_0xc7fa[9]],transfereraccountcode:_0x5058x2[_0xc7fa[10]],transferercontext:_0x5058x2[_0xc7fa[11]],transfererexten:_0x5058x2[_0xc7fa[12]],transfererlinkedid:_0x5058x2[_0xc7fa[13]],transfereechannel:_0x5058x2[_0xc7fa[14]],transfereecalleridnum:_0x5058x2[_0xc7fa[15]],transfereecalleridname:_0x5058x2[_0xc7fa[16]],transfereeconnectedlinenum:_0x5058x2[_0xc7fa[17]],transfereeconnectedlinename:_0x5058x2[_0xc7fa[18]],transfereeaccountcode:_0x5058x2[_0xc7fa[19]],transfereecontext:_0x5058x2[_0xc7fa[20]],transfereeexten:_0x5058x2[_0xc7fa[21]],transfereelinkedid:_0x5058x2[_0xc7fa[22]],isexternal:_0x5058x2[_0xc7fa[23]],context:_0x5058x2[_0xc7fa[24]],extension:_0x5058x2[_0xc7fa[25]],type:_0xc7fa[26]},log:_0xc7fa[3]})};exports[_0xc7fa[27]]= function(_0x5058x2){return client.Request(_0xc7fa[3],{body:{result:_0x5058x2[_0xc7fa[4]],transfererchannel:_0x5058x2[_0xc7fa[28]],transferercalleridnum:_0x5058x2[_0xc7fa[29]],transferercalleridname:_0x5058x2[_0xc7fa[30]],transfererconnectedlinenum:_0x5058x2[_0xc7fa[31]],transfererconnectedlinename:_0x5058x2[_0xc7fa[32]],transfereraccountcode:_0x5058x2[_0xc7fa[33]],transferercontext:_0x5058x2[_0xc7fa[34]],transfererexten:_0x5058x2[_0xc7fa[35]],transfererlinkedid:_0x5058x2[_0xc7fa[36]],transfereechannel:_0x5058x2[_0xc7fa[37]],transfereecalleridnum:_0x5058x2[_0xc7fa[38]],transfereecalleridname:_0x5058x2[_0xc7fa[39]],transfereeconnectedlinenum:_0x5058x2[_0xc7fa[40]],transfereeconnectedlinename:_0x5058x2[_0xc7fa[41]],transfereeaccountcode:_0x5058x2[_0xc7fa[42]],transfereecontext:_0x5058x2[_0xc7fa[43]],transfereeexten:_0x5058x2[_0xc7fa[44]],transfereelinkedid:_0x5058x2[_0xc7fa[45]],isexternal:_0x5058x2[_0xc7fa[23]],context:_0x5058x2[_0xc7fa[46]],extension:_0x5058x2[_0xc7fa[47]],type:_0xc7fa[48]},log:_0xc7fa[3]})}
\ No newline at end of file
+var _0xb126=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x2E\x2E\x2F\x63\x6C\x69\x65\x6E\x74","\x62\x6C\x69\x6E\x64\x54\x72\x61\x6E\x73\x66\x65\x72","\x43\x72\x65\x61\x74\x65\x56\x6F\x69\x63\x65\x54\x72\x61\x6E\x73\x66\x65\x72\x52\x65\x70\x6F\x72\x74","\x72\x65\x73\x75\x6C\x74","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x74\x65\x78\x74","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x65\x78\x74\x65\x6E","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x63\x6F\x6E\x74\x65\x78\x74","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x65\x78\x74\x65\x6E","\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x65\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x69\x73\x65\x78\x74\x65\x72\x6E\x61\x6C","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x62\x6C\x69\x6E\x64","\x61\x74\x74\x65\x6E\x64\x65\x64\x54\x72\x61\x6E\x73\x66\x65\x72","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x68\x61\x6E\x6E\x65\x6C","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x73\x65\x63\x6F\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x73\x65\x63\x6F\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x73\x65\x63\x6F\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x74\x65\x78\x74","\x73\x65\x63\x6F\x6E\x64\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x65\x78\x74\x65\x6E","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x63\x6F\x6E\x74\x65\x78\x74","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x65\x78\x74\x65\x6E","\x74\x72\x61\x6E\x73\x66\x65\x72\x74\x61\x72\x67\x65\x74\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x63\x6F\x6E\x74\x65\x78\x74","\x6F\x72\x69\x67\x74\x72\x61\x6E\x73\x66\x65\x72\x65\x72\x65\x78\x74\x65\x6E","\x61\x74\x74\x65\x6E\x64\x65\x64"];_0xb126[0];var client=require(_0xb126[1]);exports[_0xb126[2]]= function(_0xd7eex2){return client.Request(_0xb126[3],{body:{result:_0xd7eex2[_0xb126[4]],transfererchannel:_0xd7eex2[_0xb126[5]],transferercalleridnum:_0xd7eex2[_0xb126[6]],transferercalleridname:_0xd7eex2[_0xb126[7]],transfererconnectedlinenum:_0xd7eex2[_0xb126[8]],transfererconnectedlinename:_0xd7eex2[_0xb126[9]],transfereraccountcode:_0xd7eex2[_0xb126[10]],transferercontext:_0xd7eex2[_0xb126[11]],transfererexten:_0xd7eex2[_0xb126[12]],transfererlinkedid:_0xd7eex2[_0xb126[13]],transfereechannel:_0xd7eex2[_0xb126[14]],transfereecalleridnum:_0xd7eex2[_0xb126[15]],transfereecalleridname:_0xd7eex2[_0xb126[16]],transfereeconnectedlinenum:_0xd7eex2[_0xb126[17]],transfereeconnectedlinename:_0xd7eex2[_0xb126[18]],transfereeaccountcode:_0xd7eex2[_0xb126[19]],transfereecontext:_0xd7eex2[_0xb126[20]],transfereeexten:_0xd7eex2[_0xb126[21]],transfereelinkedid:_0xd7eex2[_0xb126[22]],isexternal:_0xd7eex2[_0xb126[23]],context:_0xd7eex2[_0xb126[24]],extension:_0xd7eex2[_0xb126[25]],type:_0xb126[26]},log:_0xb126[3]})};exports[_0xb126[27]]= function(_0xd7eex2){return client.Request(_0xb126[3],{body:{result:_0xd7eex2[_0xb126[4]],transfererchannel:_0xd7eex2[_0xb126[28]],transferercalleridnum:_0xd7eex2[_0xb126[29]],transferercalleridname:_0xd7eex2[_0xb126[30]],transfererconnectedlinenum:_0xd7eex2[_0xb126[31]],transfererconnectedlinename:_0xd7eex2[_0xb126[32]],transfereraccountcode:_0xd7eex2[_0xb126[33]],transferercontext:_0xd7eex2[_0xb126[34]],transfererexten:_0xd7eex2[_0xb126[35]],transfererlinkedid:_0xd7eex2[_0xb126[36]],transfereechannel:_0xd7eex2[_0xb126[37]],transfereecalleridnum:_0xd7eex2[_0xb126[38]],transfereecalleridname:_0xd7eex2[_0xb126[39]],transfereeconnectedlinenum:_0xd7eex2[_0xb126[40]],transfereeconnectedlinename:_0xd7eex2[_0xb126[41]],transfereeaccountcode:_0xd7eex2[_0xb126[42]],transfereecontext:_0xd7eex2[_0xb126[43]],transfereeexten:_0xd7eex2[_0xb126[44]],transfereelinkedid:_0xd7eex2[_0xb126[45]],isexternal:_0xd7eex2[_0xb126[23]],context:_0xd7eex2[_0xb126[46]],extension:_0xd7eex2[_0xb126[47]],type:_0xb126[48]},log:_0xb126[3]})}
\ No newline at end of file
index d69e103..7282ed3 100644 (file)
@@ -1 +1 @@
-var _0x9641=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x76\x61\x6C\x69\x64\x61\x74\x65","\x62\x6C\x75\x65\x62\x69\x72\x64","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2E\x2F\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x69\x73\x74\x65\x6E","\x25\x73\x2F\x25\x73","\x53\x49\x50","\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x74\x69\x6D\x65\x72\x73","\x61\x63\x77\x20\x63\x6C\x65\x61\x72\x54\x69\x6D\x65\x6F\x75\x74","\x6C\x6F\x67","\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x20","\x6A\x6F\x69\x6E","\x69\x70","\x61\x73\x74\x65\x72\x69\x73\x6B","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x61\x6D\x69\x20\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x65\x72\x72\x6F\x72","\x6D\x6F\x64\x75\x6C\x65","\x6B\x65\x79\x73","\x70\x69\x63\x6B","\x61\x63\x74\x69\x6F\x6E","\x52\x65\x6C\x6F\x61\x64","\x6D\x65\x73\x73\x61\x67\x65","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x76\x61\x6C\x75\x65\x73","\x6C\x65\x6E\x67\x74\x68","\x71\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C","\x2C\x20","\x6D\x61\x70","\x75\x6E\x69\x71\x75\x65\x69\x64","\x66\x69\x6E\x64","\x43\x68\x61\x6E\x6E\x65\x6C\x20\x64\x6F\x65\x73\x6E\x27\x74\x20\x65\x78\x69\x73\x74","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C\x68\x61\x6E\x67\x75\x70","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x48\x61\x6E\x67\x75\x70","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C\x72\x65\x64\x69\x72\x65\x63\x74","\x52\x65\x64\x69\x72\x65\x63\x74","\x65\x78\x74\x65\x6E","\x63\x6F\x6E\x74\x65\x78\x74","\x61\x67\x65\x6E\x74\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x72\x75\x6E\x6B\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x68\x74\x74\x70","\x73\x65\x72\x76\x65\x72","\x6F\x6E","\x52\x50\x43\x20\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67\x20\x6F\x6E\x20\x70\x6F\x72\x74\x3A"];_0x9641[0];var _=require(_0x9641[1]);var util=require(_0x9641[2]);var jayson=require(_0x9641[3]);var schema=require(_0x9641[4]);var BPromise=require(_0x9641[5]);var config=require(_0x9641[6]);var properties=require(_0x9641[7]);var ami=require(_0x9641[8]);exports[_0x9641[9]]= function(_0xc27fx9){return  new BPromise(function(_0xc27fxa,_0xc27fxb){var _0xc27fxc={QueuePause:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fxe=util[_0x9641[13]](_0x9641[10],_0x9641[11],_0xc27fxd[_0x9641[12]]);if(_0xc27fx9[_0x9641[14]][_0xc27fxe]){clearTimeout(_0xc27fx9[_0x9641[14]][_0xc27fxe]);delete _0xc27fx9[_0x9641[14]][_0xc27fxe];console[_0x9641[16]](_0x9641[15],_0xc27fxe)};_0xc27fxa({code:200,message:_0x9641[17]})})},Reload:function(_0xc27fxd){var _0xc27fxf=this;return  new Promise(function(_0xc27fxa,_0xc27fxb){if(ami[_0x9641[18]]()== false){return _0xc27fxb(_0xc27fxf[_0x9641[25]](500,[config[_0x9641[22]][_0x9641[21]],config[_0x9641[22]][_0x9641[23]],_0x9641[24]][_0x9641[20]](_0x9641[19])))};_0xc27fxd= _[_0x9641[28]](_0xc27fxd,_[_0x9641[27]](properties[_0x9641[26]]));_0xc27fxd[_0x9641[29]]= _0x9641[30];return ami.Action(_0xc27fxd)[_0x9641[33]](function(_0xc27fx11){_0xc27fxa({code:200,message:_0xc27fx11[_0x9641[31]]})})[_0x9641[32]](function(_0xc27fx10){_0xc27fxb(_0xc27fxf[_0x9641[25]](501,_0xc27fx10[_0x9641[31]]))})})},VoiceQueues:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fx12=_[_0x9641[35]](_0xc27fx9[_0x9641[34]]);_0xc27fxa({count:_0xc27fx12[_0x9641[36]],rows:_0xc27fx12})})},VoiceQueuesChannels:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fx12=_[_0x9641[35]](_0xc27fx9[_0x9641[37]]);_0xc27fxa({count:_0xc27fx12[_0x9641[36]],rows:_0xc27fx12})})},VoiceQueuesChannel:function(_0xc27fxd){var _0xc27fxf=this;return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fx13=schema(properties[_0x9641[38]])[_0x9641[4]](_0xc27fxd);if(_0xc27fx13[_0x9641[36]]> 0){return _0xc27fxb(_0xc27fxf[_0x9641[25]](500,_[_0x9641[40]](_0xc27fx13,_0x9641[31])[_0x9641[20]](_0x9641[39])))};var _0xc27fx14=_[_0x9641[42]](_0xc27fx9[_0x9641[37]],{uniqueid:_0xc27fxd[_0x9641[41]]});if(_0xc27fx14){_0xc27fxa(_0xc27fx14)}else {return _0xc27fxb(_0xc27fxf[_0x9641[25]](501,_0x9641[43]))}})},VoiceQueuesChannelHangup:function(_0xc27fxd){var _0xc27fxf=this;return  new Promise(function(_0xc27fxa,_0xc27fxb){if(ami[_0x9641[18]]()== false){return _0xc27fxb(_0xc27fxf[_0x9641[25]](500,[config[_0x9641[22]][_0x9641[21]],config[_0x9641[22]][_0x9641[23]],_0x9641[24]][_0x9641[20]](_0x9641[19])))};var _0xc27fx13=schema(properties[_0x9641[44]])[_0x9641[4]](_0xc27fxd);if(_0xc27fx13[_0x9641[36]]> 0){return _0xc27fxb(_0xc27fxf[_0x9641[25]](500,_[_0x9641[40]](_0xc27fx13,_0x9641[31])[_0x9641[20]](_0x9641[39])))};var _0xc27fx14=_[_0x9641[42]](_0xc27fx9[_0x9641[37]],{uniqueid:_0xc27fxd[_0x9641[41]]});if(_0xc27fx14&& _0xc27fx14[_0x9641[45]]){return ami.Action({action:_0x9641[47],channel:_0xc27fx14[_0x9641[45]]})[_0x9641[33]](function(_0xc27fx11){_0xc27fxa({code:200,message:[_0xc27fxd[_0x9641[41]],_0xc27fx11[_0x9641[31]][_0x9641[46]]()][_0x9641[20]](_0x9641[19])})})[_0x9641[32]](function(_0xc27fx10){_0xc27fxb(_0xc27fxf[_0x9641[25]](501,[_0xc27fxd[_0x9641[41]],_0xc27fx10[_0x9641[31]][_0x9641[46]]()][_0x9641[20]](_0x9641[19])))})}else {return _0xc27fxb(_0xc27fxf[_0x9641[25]](501,_0x9641[43]))}})},VoiceQueuesChannelRedirect:function(_0xc27fxd){var _0xc27fxf=this;return  new Promise(function(_0xc27fxa,_0xc27fxb){if(ami[_0x9641[18]]()== false){return _0xc27fxb(_0xc27fxf[_0x9641[25]](500,[config[_0x9641[22]][_0x9641[21]],config[_0x9641[22]][_0x9641[23]],_0x9641[24]][_0x9641[20]](_0x9641[19])))};var _0xc27fx13=schema(properties[_0x9641[48]])[_0x9641[4]](_0xc27fxd);if(_0xc27fx13[_0x9641[36]]> 0){return _0xc27fxb(_0xc27fxf[_0x9641[25]](500,_[_0x9641[40]](_0xc27fx13,_0x9641[31])[_0x9641[20]](_0x9641[39])))};var _0xc27fx14=_[_0x9641[42]](_0xc27fx9[_0x9641[37]],{uniqueid:_0xc27fxd[_0x9641[41]]});if(_0xc27fx14&& _0xc27fx14[_0x9641[45]]){return ami.Action({action:_0x9641[49],channel:_0xc27fx14[_0x9641[45]],exten:_0xc27fxd[_0x9641[50]],context:_0xc27fx14[_0x9641[51]],priority:1})[_0x9641[33]](function(_0xc27fx11){_0xc27fxa({code:200,message:[_0xc27fxd[_0x9641[41]],_0xc27fx11[_0x9641[31]][_0x9641[46]]()][_0x9641[20]](_0x9641[19])})})[_0x9641[32]](function(_0xc27fx10){_0xc27fxb(_0xc27fxf[_0x9641[25]](501,[_0xc27fxd[_0x9641[41]],_0xc27fx10[_0x9641[31]][_0x9641[46]]()][_0x9641[20]](_0x9641[19])))})}else {return _0xc27fxb(_0xc27fxf[_0x9641[25]](501,_0x9641[43]))}})},Agents:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fx12=_[_0x9641[35]](_0xc27fx9[_0x9641[52]]);_0xc27fxa({count:_0xc27fx12[_0x9641[36]],rows:_0xc27fx12})})},Telephones:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fx12=_[_0x9641[35]](_0xc27fx9[_0x9641[53]]);_0xc27fxa({count:_0xc27fx12[_0x9641[36]],rows:_0xc27fx12})})},Trunks:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fx12=_[_0x9641[35]](_0xc27fx9[_0x9641[54]]);_0xc27fxa({count:_0xc27fx12[_0x9641[36]],rows:_0xc27fx12})})},OutboundChannels:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fx12=_[_0x9641[35]](_0xc27fx9[_0x9641[55]]);_0xc27fxa({count:_0xc27fx12[_0x9641[36]],rows:_0xc27fx12})})},Outbound:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){_0xc27fxa(_0xc27fx9[_0x9641[56]])})},Campaigns:function(_0xc27fxd){return  new Promise(function(_0xc27fxa,_0xc27fxb){var _0xc27fx12=_[_0x9641[35]](_0xc27fx9[_0x9641[57]]);_0xc27fxa({count:_0xc27fx12[_0x9641[36]],rows:_0xc27fx12})})}};var _0xc27fx15=jayson[_0x9641[59]](_0xc27fxc)[_0x9641[58]]();_0xc27fx15[_0x9641[60]](_0x9641[25],function(_0xc27fx10){return _0xc27fxb(_0xc27fx10)});_0xc27fx15[_0x9641[9]](9002,function(){return _0xc27fxa(_0x9641[61]+ 9002)})})}
\ No newline at end of file
+var _0xed37=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x76\x61\x6C\x69\x64\x61\x74\x65","\x62\x6C\x75\x65\x62\x69\x72\x64","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x2E\x2E\x2F\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x69\x73\x74\x65\x6E","\x25\x73\x2F\x25\x73","\x53\x49\x50","\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x74\x69\x6D\x65\x72\x73","\x61\x63\x77\x20\x63\x6C\x65\x61\x72\x54\x69\x6D\x65\x6F\x75\x74","\x6C\x6F\x67","\x51\x75\x65\x75\x65\x50\x61\x75\x73\x65","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x20","\x6A\x6F\x69\x6E","\x69\x70","\x61\x73\x74\x65\x72\x69\x73\x6B","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x61\x6D\x69\x20\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x65\x72\x72\x6F\x72","\x6D\x6F\x64\x75\x6C\x65","\x6B\x65\x79\x73","\x70\x69\x63\x6B","\x61\x63\x74\x69\x6F\x6E","\x52\x65\x6C\x6F\x61\x64","\x6D\x65\x73\x73\x61\x67\x65","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x76\x61\x6C\x75\x65\x73","\x6C\x65\x6E\x67\x74\x68","\x71\x75\x65\x75\x65\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C","\x2C\x20","\x6D\x61\x70","\x75\x6E\x69\x71\x75\x65\x69\x64","\x66\x69\x6E\x64","\x43\x68\x61\x6E\x6E\x65\x6C\x20\x64\x6F\x65\x73\x6E\x27\x74\x20\x65\x78\x69\x73\x74","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C\x68\x61\x6E\x67\x75\x70","\x63\x68\x61\x6E\x6E\x65\x6C","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x48\x61\x6E\x67\x75\x70","\x76\x6F\x69\x63\x65\x71\x75\x65\x75\x65\x63\x68\x61\x6E\x6E\x65\x6C\x72\x65\x64\x69\x72\x65\x63\x74","\x52\x65\x64\x69\x72\x65\x63\x74","\x65\x78\x74\x65\x6E","\x63\x6F\x6E\x74\x65\x78\x74","\x61\x67\x65\x6E\x74\x73","\x74\x65\x6C\x65\x70\x68\x6F\x6E\x65\x73","\x74\x72\x75\x6E\x6B\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64\x43\x68\x61\x6E\x6E\x65\x6C\x73","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x63\x61\x6D\x70\x61\x69\x67\x6E\x73","\x68\x74\x74\x70","\x73\x65\x72\x76\x65\x72","\x6F\x6E","\x52\x50\x43\x20\x6C\x69\x73\x74\x65\x6E\x69\x6E\x67\x20\x6F\x6E\x20\x70\x6F\x72\x74\x3A"];_0xed37[0];var _=require(_0xed37[1]);var util=require(_0xed37[2]);var jayson=require(_0xed37[3]);var schema=require(_0xed37[4]);var BPromise=require(_0xed37[5]);var config=require(_0xed37[6]);var properties=require(_0xed37[7]);var ami=require(_0xed37[8]);exports[_0xed37[9]]= function(_0xc6f4x9){return  new BPromise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4xc={QueuePause:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4xe=util[_0xed37[13]](_0xed37[10],_0xed37[11],_0xc6f4xd[_0xed37[12]]);if(_0xc6f4x9[_0xed37[14]][_0xc6f4xe]){clearTimeout(_0xc6f4x9[_0xed37[14]][_0xc6f4xe]);delete _0xc6f4x9[_0xed37[14]][_0xc6f4xe];console[_0xed37[16]](_0xed37[15],_0xc6f4xe)};_0xc6f4xa({code:200,message:_0xed37[17]})})},Reload:function(_0xc6f4xd){var _0xc6f4xf=this;return  new Promise(function(_0xc6f4xa,_0xc6f4xb){if(ami[_0xed37[18]]()== false){return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](500,[config[_0xed37[22]][_0xed37[21]],config[_0xed37[22]][_0xed37[23]],_0xed37[24]][_0xed37[20]](_0xed37[19])))};_0xc6f4xd= _[_0xed37[28]](_0xc6f4xd,_[_0xed37[27]](properties[_0xed37[26]]));_0xc6f4xd[_0xed37[29]]= _0xed37[30];return ami.Action(_0xc6f4xd)[_0xed37[33]](function(_0xc6f4x11){_0xc6f4xa({code:200,message:_0xc6f4x11[_0xed37[31]]})})[_0xed37[32]](function(_0xc6f4x10){_0xc6f4xb(_0xc6f4xf[_0xed37[25]](501,_0xc6f4x10[_0xed37[31]]))})})},VoiceQueues:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4x12=_[_0xed37[35]](_0xc6f4x9[_0xed37[34]]);_0xc6f4xa({count:_0xc6f4x12[_0xed37[36]],rows:_0xc6f4x12})})},VoiceQueuesChannels:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4x12=_[_0xed37[35]](_0xc6f4x9[_0xed37[37]]);_0xc6f4xa({count:_0xc6f4x12[_0xed37[36]],rows:_0xc6f4x12})})},VoiceQueuesChannel:function(_0xc6f4xd){var _0xc6f4xf=this;return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4x13=schema(properties[_0xed37[38]])[_0xed37[4]](_0xc6f4xd);if(_0xc6f4x13[_0xed37[36]]> 0){return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](500,_[_0xed37[40]](_0xc6f4x13,_0xed37[31])[_0xed37[20]](_0xed37[39])))};var _0xc6f4x14=_[_0xed37[42]](_0xc6f4x9[_0xed37[37]],{uniqueid:_0xc6f4xd[_0xed37[41]]});if(_0xc6f4x14){_0xc6f4xa(_0xc6f4x14)}else {return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](501,_0xed37[43]))}})},VoiceQueuesChannelHangup:function(_0xc6f4xd){var _0xc6f4xf=this;return  new Promise(function(_0xc6f4xa,_0xc6f4xb){if(ami[_0xed37[18]]()== false){return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](500,[config[_0xed37[22]][_0xed37[21]],config[_0xed37[22]][_0xed37[23]],_0xed37[24]][_0xed37[20]](_0xed37[19])))};var _0xc6f4x13=schema(properties[_0xed37[44]])[_0xed37[4]](_0xc6f4xd);if(_0xc6f4x13[_0xed37[36]]> 0){return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](500,_[_0xed37[40]](_0xc6f4x13,_0xed37[31])[_0xed37[20]](_0xed37[39])))};var _0xc6f4x14=_[_0xed37[42]](_0xc6f4x9[_0xed37[37]],{uniqueid:_0xc6f4xd[_0xed37[41]]});if(_0xc6f4x14&& _0xc6f4x14[_0xed37[45]]){return ami.Action({action:_0xed37[47],channel:_0xc6f4x14[_0xed37[45]]})[_0xed37[33]](function(_0xc6f4x11){_0xc6f4xa({code:200,message:[_0xc6f4xd[_0xed37[41]],_0xc6f4x11[_0xed37[31]][_0xed37[46]]()][_0xed37[20]](_0xed37[19])})})[_0xed37[32]](function(_0xc6f4x10){_0xc6f4xb(_0xc6f4xf[_0xed37[25]](501,[_0xc6f4xd[_0xed37[41]],_0xc6f4x10[_0xed37[31]][_0xed37[46]]()][_0xed37[20]](_0xed37[19])))})}else {return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](501,_0xed37[43]))}})},VoiceQueuesChannelRedirect:function(_0xc6f4xd){var _0xc6f4xf=this;return  new Promise(function(_0xc6f4xa,_0xc6f4xb){if(ami[_0xed37[18]]()== false){return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](500,[config[_0xed37[22]][_0xed37[21]],config[_0xed37[22]][_0xed37[23]],_0xed37[24]][_0xed37[20]](_0xed37[19])))};var _0xc6f4x13=schema(properties[_0xed37[48]])[_0xed37[4]](_0xc6f4xd);if(_0xc6f4x13[_0xed37[36]]> 0){return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](500,_[_0xed37[40]](_0xc6f4x13,_0xed37[31])[_0xed37[20]](_0xed37[39])))};var _0xc6f4x14=_[_0xed37[42]](_0xc6f4x9[_0xed37[37]],{uniqueid:_0xc6f4xd[_0xed37[41]]});if(_0xc6f4x14&& _0xc6f4x14[_0xed37[45]]){return ami.Action({action:_0xed37[49],channel:_0xc6f4x14[_0xed37[45]],exten:_0xc6f4xd[_0xed37[50]],context:_0xc6f4x14[_0xed37[51]],priority:1})[_0xed37[33]](function(_0xc6f4x11){_0xc6f4xa({code:200,message:[_0xc6f4xd[_0xed37[41]],_0xc6f4x11[_0xed37[31]][_0xed37[46]]()][_0xed37[20]](_0xed37[19])})})[_0xed37[32]](function(_0xc6f4x10){_0xc6f4xb(_0xc6f4xf[_0xed37[25]](501,[_0xc6f4xd[_0xed37[41]],_0xc6f4x10[_0xed37[31]][_0xed37[46]]()][_0xed37[20]](_0xed37[19])))})}else {return _0xc6f4xb(_0xc6f4xf[_0xed37[25]](501,_0xed37[43]))}})},Agents:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4x12=_[_0xed37[35]](_0xc6f4x9[_0xed37[52]]);_0xc6f4xa({count:_0xc6f4x12[_0xed37[36]],rows:_0xc6f4x12})})},Telephones:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4x12=_[_0xed37[35]](_0xc6f4x9[_0xed37[53]]);_0xc6f4xa({count:_0xc6f4x12[_0xed37[36]],rows:_0xc6f4x12})})},Trunks:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4x12=_[_0xed37[35]](_0xc6f4x9[_0xed37[54]]);_0xc6f4xa({count:_0xc6f4x12[_0xed37[36]],rows:_0xc6f4x12})})},OutboundChannels:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4x12=_[_0xed37[35]](_0xc6f4x9[_0xed37[55]]);_0xc6f4xa({count:_0xc6f4x12[_0xed37[36]],rows:_0xc6f4x12})})},Outbound:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){_0xc6f4xa(_0xc6f4x9[_0xed37[56]])})},Campaigns:function(_0xc6f4xd){return  new Promise(function(_0xc6f4xa,_0xc6f4xb){var _0xc6f4x12=_[_0xed37[35]](_0xc6f4x9[_0xed37[57]]);_0xc6f4xa({count:_0xc6f4x12[_0xed37[36]],rows:_0xc6f4x12})})}};var _0xc6f4x15=jayson[_0xed37[59]](_0xc6f4xc)[_0xed37[58]]();_0xc6f4x15[_0xed37[60]](_0xed37[25],function(_0xc6f4x10){return _0xc6f4xb(_0xc6f4x10)});_0xc6f4x15[_0xed37[9]](9002,function(){return _0xc6f4xa(_0xed37[61]+ 9002)})})}
\ No newline at end of file
index eae8904..76519ff 100644 (file)
@@ -1 +1 @@
-var _0xd58c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x75\x72\x6C","\x6D\x75\x73\x74\x61\x63\x68\x65","\x2E\x2F\x75\x72\x6C\x66\x6F\x72\x77\x61\x72\x64","\x2E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x75\x72\x6C\x66\x6F\x72\x77\x61\x72\x64","\x70\x6F\x70\x75\x70","\x77\x69\x6E\x61\x70\x70","\x74\x72\x69\x67\x67\x65\x72\x73","\x76\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x61\x67\x65\x6E\x74\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x7A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x73\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x61\x63\x63\x6F\x75\x6E\x74\x73","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x43\x75\x73\x74\x6F\x6D\x45\x76\x65\x6E\x74","\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x62\x65\x67\x69\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x65\x6E\x64","\x65\x6D\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6C\x6F\x67","\x74\x6F","\x63\x68\x65\x63\x6B\x54\x72\x69\x67\x67\x65\x72\x73","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x73\x74\x61\x74\x75\x73","\x63\x68\x65\x63\x6B\x54\x72\x69\x67\x67\x65\x72","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x6D\x65\x72\x67\x65","\x6C\x65\x6E\x67\x74\x68","\x41\x63\x74\x69\x6F\x6E\x73","\x69\x6E\x74\x65\x72\x66\x61\x63\x65","\x75\x73\x65\x72\x3A\x25\x73","\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x74\x72\x69\x67\x67\x65\x72\x3A\x25\x73","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x63\x74\x69\x6F\x6E","\x64\x61\x74\x61\x31","\x63\x6F\x6E\x74\x61\x63\x74\x6D\x61\x6E\x61\x67\x65\x72","\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72","\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64","\x64\x61\x74\x61\x32","\x68\x74\x6D\x6C","\x72\x65\x6E\x64\x65\x72","\x75\x72\x69","\x62\x75\x69\x6C\x64\x55\x72\x69","\x77\x69\x6E\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","","\x77\x69\x6E\x41\x72\x67\x75\x6D\x65\x6E\x74\x73","\x64\x61\x74\x61\x33","\x74\x72\x69\x67\x67\x65\x72\x3A\x25\x73\x3A\x25\x73","\x62\x72\x6F\x77\x73\x65\x72","\x71\x75\x65\x75\x65","\x65\x78\x65\x63","\x70\x61\x72\x73\x65","\x71\x75\x65\x72\x79","\x73\x65\x61\x72\x63\x68","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x63\x68\x65\x63\x6B\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x65\x76\x65\x72\x79","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x73\x6F\x6D\x65","\x76\x61\x6C\x75\x65","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x72\x6F\x75\x74\x65\x49\x64","\x66\x69\x65\x6C\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0xd58c[0];var util=require(_0xd58c[1]);var _=require(_0xd58c[2]);var url=require(_0xd58c[3]);var Mustache=require(_0xd58c[4]);var urlforward=require(_0xd58c[5]);var integration=require(_0xd58c[6]);var ami=require(_0xd58c[7]);var io=require(_0xd58c[9])({host:_0xd58c[8],port:6379});var operators={"\x65\x71\x75\x61\x6C\x73":function(_0x1f9bxa,_0x1f9bxb){return _0x1f9bxa=== _0x1f9bxb},"\x6E\x6F\x74\x5F\x65\x71\x75\x61\x6C\x73":function(_0x1f9bxa,_0x1f9bxb){return _0x1f9bxa!== _0x1f9bxb}};var serverActions=[_0xd58c[10],_0xd58c[11]];var barAndWebActions=[_0xd58c[12],_0xd58c[3],_0xd58c[13]];function Trigger(_0x1f9bxf){this[_0xd58c[14]]= _0x1f9bxf[_0xd58c[15]];this[_0xd58c[16]]= _0x1f9bxf[_0xd58c[16]];this[_0xd58c[17]]= _0x1f9bxf[_0xd58c[17]];this[_0xd58c[18]]= _0x1f9bxf[_0xd58c[18]];this[_0xd58c[19]]= _0x1f9bxf[_0xd58c[19]];this[_0xd58c[20]]= _0x1f9bxf[_0xd58c[20]];this[_0xd58c[21]]= _0x1f9bxf[_0xd58c[21]];this[_0xd58c[22]]= _0x1f9bxf[_0xd58c[22]];this[_0xd58c[23]]= {zendesk:this[_0xd58c[19]],salesforce:this[_0xd58c[21]],freshdesk:this[_0xd58c[20]],sugarcrm:this[_0xd58c[22]]};ami[_0xd58c[27]](_0xd58c[24],this[_0xd58c[26]][_0xd58c[25]](this));ami[_0xd58c[27]](_0xd58c[28],this[_0xd58c[26]][_0xd58c[25]](this));ami[_0xd58c[27]](_0xd58c[29],this[_0xd58c[26]][_0xd58c[25]](this));ami[_0xd58c[27]](_0xd58c[30],this[_0xd58c[26]][_0xd58c[25]](this));ami[_0xd58c[27]](_0xd58c[31],this[_0xd58c[26]][_0xd58c[25]](this));ami[_0xd58c[27]](_0xd58c[32],this[_0xd58c[26]][_0xd58c[25]](this));ami[_0xd58c[27]](_0xd58c[33],this[_0xd58c[26]][_0xd58c[25]](this));ami[_0xd58c[27]](_0xd58c[34],this[_0xd58c[26]][_0xd58c[25]](this))}Trigger[_0xd58c[36]][_0xd58c[35]]= function(_0x1f9bx10,_0x1f9bx11,_0x1f9bx12){console[_0xd58c[37]](_0x1f9bx10,_0x1f9bx11);io[_0xd58c[38]](_0x1f9bx10)[_0xd58c[35]](_0x1f9bx11,_0x1f9bx12)};Trigger[_0xd58c[36]][_0xd58c[26]]= function(_0x1f9bx11){this[_0xd58c[39]](_0x1f9bx11)};Trigger[_0xd58c[36]][_0xd58c[39]]= function(_0x1f9bx11){var _0x1f9bx13;for(var _0x1f9bx14 in this[_0xd58c[14]]){if(this[_0xd58c[14]][_0xd58c[40]](_0x1f9bx14)){if(this[_0xd58c[14]][_0x1f9bx14][_0xd58c[41]]){_0x1f9bx13= this[_0xd58c[42]](this[_0xd58c[14]][_0x1f9bx14],_0x1f9bx11);if(_0x1f9bx13){_[_0xd58c[44]](_0x1f9bx11,_0x1f9bx11[_0xd58c[43]]);for(var _0x1f9bx15=0,_0x1f9bx16,_0x1f9bx17,_0x1f9bx18;_0x1f9bx15< this[_0xd58c[14]][_0x1f9bx14][_0xd58c[46]][_0xd58c[45]];_0x1f9bx15+= 1){_0x1f9bx16= this[_0xd58c[14]][_0x1f9bx14][_0xd58c[46]][_0x1f9bx15];if(this[_0xd58c[16]][_0x1f9bx11[_0xd58c[47]]]){switch(_0x1f9bx16[_0xd58c[53]][_0xd58c[52]]()){case _0xd58c[55]:this[_0xd58c[35]](util[_0xd58c[50]](_0xd58c[48],this[_0xd58c[16]][_0x1f9bx11[_0xd58c[47]]][_0xd58c[49]]),util[_0xd58c[50]](_0xd58c[51],_0x1f9bx16[_0xd58c[53]][_0xd58c[52]]()),_[_0xd58c[44]]({ListId:parseInt(_0x1f9bx16[_0xd58c[54]],10)},_0x1f9bx11));break;case _0xd58c[56]:;case _0xd58c[68]:var _0x1f9bx12={};switch(barAndWebActions[_0x1f9bx16[_0xd58c[54]]]){case _0xd58c[12]:_0x1f9bx12[_0xd58c[57]]= _0x1f9bx16[_0xd58c[58]];_0x1f9bx12[_0xd58c[59]]= Mustache[_0xd58c[60]](this[_0xd58c[18]][_0x1f9bx16[_0xd58c[58]]][_0xd58c[59]],_0x1f9bx11);break;case _0xd58c[3]:_0x1f9bx12[_0xd58c[61]]= this[_0xd58c[62]](_0x1f9bx16[_0xd58c[58]],_0x1f9bx11);break;case _0xd58c[13]:_0x1f9bx12[_0xd58c[63]]= _0x1f9bx16[_0xd58c[58]]|| _0xd58c[64];_0x1f9bx12[_0xd58c[65]]= _0x1f9bx16[_0xd58c[66]]|| _0xd58c[64];break};this[_0xd58c[35]](util[_0xd58c[50]](_0xd58c[48],this[_0xd58c[16]][_0x1f9bx11[_0xd58c[47]]][_0xd58c[49]]),util[_0xd58c[50]](_0xd58c[67],_0x1f9bx16[_0xd58c[53]][_0xd58c[52]](),barAndWebActions[_0x1f9bx16[_0xd58c[54]]]),_[_0xd58c[44]](_0x1f9bx12,_0x1f9bx11));break;default:this[_0xd58c[35]](util[_0xd58c[50]](_0xd58c[48],this[_0xd58c[16]][_0x1f9bx11[_0xd58c[47]]][_0xd58c[49]]),util[_0xd58c[50]](_0xd58c[51],_0x1f9bx16[_0xd58c[53]][_0xd58c[52]]()),_[_0xd58c[44]]({},_0x1f9bx16,_0x1f9bx11))}};switch(_0x1f9bx16[_0xd58c[53]][_0xd58c[52]]()){case _0xd58c[10]:integration[_0xd58c[70]](_0x1f9bx16,_0x1f9bx11,this[_0xd58c[23]],this[_0xd58c[16]][_0x1f9bx11[_0xd58c[47]]],this[_0xd58c[17]][_0x1f9bx11[_0xd58c[69]]]);break;case _0xd58c[11]:urlforward[_0xd58c[70]](_0x1f9bx16,_0x1f9bx11);break}}}}}}};Trigger[_0xd58c[36]][_0xd58c[62]]= function(_0x1f9bx19,_0x1f9bx11){var _0x1f9bx1a=url[_0xd58c[71]](Mustache[_0xd58c[60]](_0x1f9bx19,_0x1f9bx11),true);_[_0xd58c[44]](_0x1f9bx1a[_0xd58c[72]],_0x1f9bx11);delete _0x1f9bx1a[_0xd58c[73]];return url[_0xd58c[50]](_0x1f9bx1a)};Trigger[_0xd58c[36]][_0xd58c[42]]= function(_0x1f9bx1b,_0x1f9bx11){var _0x1f9bx1c=true,_0x1f9bx1d=true;if(_0x1f9bx1b[_0xd58c[74]][_0xd58c[45]]){_0x1f9bx1c= _[_0xd58c[76]](_0x1f9bx1b.AllConditions,this[_0xd58c[75]](_0x1f9bx11))};if(_0x1f9bx1b[_0xd58c[77]][_0xd58c[45]]){_0x1f9bx1d= _[_0xd58c[78]](_0x1f9bx1b.AnyConditions,this[_0xd58c[75]](_0x1f9bx11))};return _0x1f9bx1c&& _0x1f9bx1d};Trigger[_0xd58c[36]][_0xd58c[75]]= function(_0x1f9bx11){return function(_0x1f9bx12){switch(_0x1f9bx12[_0xd58c[83]]){case _0xd58c[69]:return _0x1f9bx11[_0xd58c[69]]?operators[_0x1f9bx12[_0xd58c[80]]](_0x1f9bx12[_0xd58c[79]],_0x1f9bx11[_0xd58c[69]]):false;case _0xd58c[81]:return _0x1f9bx11[_0xd58c[81]]?operators[_0x1f9bx12[_0xd58c[80]]](_0x1f9bx12[_0xd58c[79]],_0x1f9bx11[_0xd58c[81]]):false;case _0xd58c[82]:return _0x1f9bx11[_0xd58c[82]]?operators[_0x1f9bx12[_0xd58c[80]]](_0x1f9bx12[_0xd58c[79]],_0x1f9bx11[_0xd58c[82]]):false};return false}};module[_0xd58c[84]]= Trigger
\ No newline at end of file
+var _0x4164=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x75\x72\x6C","\x6D\x75\x73\x74\x61\x63\x68\x65","\x2E\x2F\x75\x72\x6C\x66\x6F\x72\x77\x61\x72\x64","\x2E\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x61\x6D\x69","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x65\x6D\x69\x74\x74\x65\x72","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x75\x72\x6C\x66\x6F\x72\x77\x61\x72\x64","\x70\x6F\x70\x75\x70","\x77\x69\x6E\x61\x70\x70","\x74\x72\x69\x67\x67\x65\x72\x73","\x76\x6F\x69\x63\x65\x54\x72\x69\x67\x67\x65\x72\x73","\x61\x67\x65\x6E\x74\x73","\x76\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x7A\x65\x6E\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x66\x72\x65\x73\x68\x64\x65\x73\x6B\x41\x63\x63\x6F\x75\x6E\x74\x73","\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65\x41\x63\x63\x6F\x75\x6E\x74\x73","\x73\x75\x67\x61\x72\x63\x72\x6D\x41\x63\x63\x6F\x75\x6E\x74\x73","\x61\x63\x63\x6F\x75\x6E\x74\x73","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x61\x6C\x6C\x65\x64","\x62\x69\x6E\x64","\x73\x79\x6E\x63\x43\x75\x73\x74\x6F\x6D\x45\x76\x65\x6E\x74","\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x72\x69\x6E\x67\x6E\x6F\x61\x6E\x73\x77\x65\x72","\x63\x75\x73\x74\x6F\x6D\x3A\x61\x67\x65\x6E\x74\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x63\x75\x73\x74\x6F\x6D\x3A\x71\x75\x65\x75\x65\x63\x61\x6C\x6C\x65\x72\x61\x62\x61\x6E\x64\x6F\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x62\x65\x67\x69\x6E","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x3A\x64\x69\x61\x6C\x65\x6E\x64","\x65\x6D\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6C\x6F\x67","\x74\x6F","\x63\x68\x65\x63\x6B\x54\x72\x69\x67\x67\x65\x72\x73","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x73\x74\x61\x74\x75\x73","\x63\x68\x65\x63\x6B\x54\x72\x69\x67\x67\x65\x72","\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x6D\x65\x72\x67\x65","\x6C\x65\x6E\x67\x74\x68","\x41\x63\x74\x69\x6F\x6E\x73","\x69\x6E\x74\x65\x72\x66\x61\x63\x65","\x75\x73\x65\x72\x3A\x25\x73","\x6E\x61\x6D\x65","\x66\x6F\x72\x6D\x61\x74","\x74\x72\x69\x67\x67\x65\x72\x3A\x25\x73","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x63\x74\x69\x6F\x6E","\x64\x61\x74\x61\x31","\x63\x6F\x6E\x74\x61\x63\x74\x6D\x61\x6E\x61\x67\x65\x72","\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72","\x54\x65\x6D\x70\x6C\x61\x74\x65\x49\x64","\x64\x61\x74\x61\x32","\x68\x74\x6D\x6C","\x72\x65\x6E\x64\x65\x72","\x75\x72\x69","\x62\x75\x69\x6C\x64\x55\x72\x69","\x77\x69\x6E\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","","\x77\x69\x6E\x41\x72\x67\x75\x6D\x65\x6E\x74\x73","\x64\x61\x74\x61\x33","\x74\x72\x69\x67\x67\x65\x72\x3A\x25\x73\x3A\x25\x73","\x62\x72\x6F\x77\x73\x65\x72","\x71\x75\x65\x75\x65","\x65\x78\x65\x63","\x70\x61\x72\x73\x65","\x71\x75\x65\x72\x79","\x73\x65\x61\x72\x63\x68","\x41\x6C\x6C\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x63\x68\x65\x63\x6B\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x65\x76\x65\x72\x79","\x41\x6E\x79\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x73\x6F\x6D\x65","\x76\x61\x6C\x75\x65","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x6C\x61\x73\x74\x65\x76\x65\x6E\x74","\x72\x6F\x75\x74\x65\x49\x64","\x66\x69\x65\x6C\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x4164[0];var util=require(_0x4164[1]);var _=require(_0x4164[2]);var url=require(_0x4164[3]);var Mustache=require(_0x4164[4]);var urlforward=require(_0x4164[5]);var integration=require(_0x4164[6]);var ami=require(_0x4164[7]);var io=require(_0x4164[9])({host:_0x4164[8],port:6379});var operators={"\x65\x71\x75\x61\x6C\x73":function(_0xe0faxa,_0xe0faxb){return _0xe0faxa=== _0xe0faxb},"\x6E\x6F\x74\x5F\x65\x71\x75\x61\x6C\x73":function(_0xe0faxa,_0xe0faxb){return _0xe0faxa!== _0xe0faxb}};var serverActions=[_0x4164[10],_0x4164[11]];var barAndWebActions=[_0x4164[12],_0x4164[3],_0x4164[13]];function Trigger(_0xe0faxf){this[_0x4164[14]]= _0xe0faxf[_0x4164[15]];this[_0x4164[16]]= _0xe0faxf[_0x4164[16]];this[_0x4164[17]]= _0xe0faxf[_0x4164[17]];this[_0x4164[18]]= _0xe0faxf[_0x4164[18]];this[_0x4164[19]]= _0xe0faxf[_0x4164[19]];this[_0x4164[20]]= _0xe0faxf[_0x4164[20]];this[_0x4164[21]]= _0xe0faxf[_0x4164[21]];this[_0x4164[22]]= _0xe0faxf[_0x4164[22]];this[_0x4164[23]]= {zendesk:this[_0x4164[19]],salesforce:this[_0x4164[21]],freshdesk:this[_0x4164[20]],sugarcrm:this[_0x4164[22]]};ami[_0x4164[27]](_0x4164[24],this[_0x4164[26]][_0x4164[25]](this));ami[_0x4164[27]](_0x4164[28],this[_0x4164[26]][_0x4164[25]](this));ami[_0x4164[27]](_0x4164[29],this[_0x4164[26]][_0x4164[25]](this));ami[_0x4164[27]](_0x4164[30],this[_0x4164[26]][_0x4164[25]](this));ami[_0x4164[27]](_0x4164[31],this[_0x4164[26]][_0x4164[25]](this));ami[_0x4164[27]](_0x4164[32],this[_0x4164[26]][_0x4164[25]](this));ami[_0x4164[27]](_0x4164[33],this[_0x4164[26]][_0x4164[25]](this));ami[_0x4164[27]](_0x4164[34],this[_0x4164[26]][_0x4164[25]](this))}Trigger[_0x4164[36]][_0x4164[35]]= function(_0xe0fax10,_0xe0fax11,_0xe0fax12){console[_0x4164[37]](_0xe0fax10,_0xe0fax11);io[_0x4164[38]](_0xe0fax10)[_0x4164[35]](_0xe0fax11,_0xe0fax12)};Trigger[_0x4164[36]][_0x4164[26]]= function(_0xe0fax11){this[_0x4164[39]](_0xe0fax11)};Trigger[_0x4164[36]][_0x4164[39]]= function(_0xe0fax11){var _0xe0fax13;for(var _0xe0fax14 in this[_0x4164[14]]){if(this[_0x4164[14]][_0x4164[40]](_0xe0fax14)){if(this[_0x4164[14]][_0xe0fax14][_0x4164[41]]){_0xe0fax13= this[_0x4164[42]](this[_0x4164[14]][_0xe0fax14],_0xe0fax11);if(_0xe0fax13){_[_0x4164[44]](_0xe0fax11,_0xe0fax11[_0x4164[43]]);for(var _0xe0fax15=0,_0xe0fax16,_0xe0fax17,_0xe0fax18;_0xe0fax15< this[_0x4164[14]][_0xe0fax14][_0x4164[46]][_0x4164[45]];_0xe0fax15+= 1){_0xe0fax16= this[_0x4164[14]][_0xe0fax14][_0x4164[46]][_0xe0fax15];if(this[_0x4164[16]][_0xe0fax11[_0x4164[47]]]){switch(_0xe0fax16[_0x4164[53]][_0x4164[52]]()){case _0x4164[55]:this[_0x4164[35]](util[_0x4164[50]](_0x4164[48],this[_0x4164[16]][_0xe0fax11[_0x4164[47]]][_0x4164[49]]),util[_0x4164[50]](_0x4164[51],_0xe0fax16[_0x4164[53]][_0x4164[52]]()),_[_0x4164[44]]({ListId:parseInt(_0xe0fax16[_0x4164[54]],10)},_0xe0fax11));break;case _0x4164[56]:;case _0x4164[68]:var _0xe0fax12={};switch(barAndWebActions[_0xe0fax16[_0x4164[54]]]){case _0x4164[12]:_0xe0fax12[_0x4164[57]]= _0xe0fax16[_0x4164[58]];_0xe0fax12[_0x4164[59]]= Mustache[_0x4164[60]](this[_0x4164[18]][_0xe0fax16[_0x4164[58]]][_0x4164[59]],_0xe0fax11);break;case _0x4164[3]:_0xe0fax12[_0x4164[61]]= this[_0x4164[62]](_0xe0fax16[_0x4164[58]],_0xe0fax11);break;case _0x4164[13]:_0xe0fax12[_0x4164[63]]= _0xe0fax16[_0x4164[58]]|| _0x4164[64];_0xe0fax12[_0x4164[65]]= _0xe0fax16[_0x4164[66]]|| _0x4164[64];break};this[_0x4164[35]](util[_0x4164[50]](_0x4164[48],this[_0x4164[16]][_0xe0fax11[_0x4164[47]]][_0x4164[49]]),util[_0x4164[50]](_0x4164[67],_0xe0fax16[_0x4164[53]][_0x4164[52]](),barAndWebActions[_0xe0fax16[_0x4164[54]]]),_[_0x4164[44]](_0xe0fax12,_0xe0fax11));break;default:this[_0x4164[35]](util[_0x4164[50]](_0x4164[48],this[_0x4164[16]][_0xe0fax11[_0x4164[47]]][_0x4164[49]]),util[_0x4164[50]](_0x4164[51],_0xe0fax16[_0x4164[53]][_0x4164[52]]()),_[_0x4164[44]]({},_0xe0fax16,_0xe0fax11))}};switch(_0xe0fax16[_0x4164[53]][_0x4164[52]]()){case _0x4164[10]:integration[_0x4164[70]](_0xe0fax16,_0xe0fax11,this[_0x4164[23]],this[_0x4164[16]][_0xe0fax11[_0x4164[47]]],this[_0x4164[17]][_0xe0fax11[_0x4164[69]]]);break;case _0x4164[11]:urlforward[_0x4164[70]](_0xe0fax16,_0xe0fax11);break}}}}}}};Trigger[_0x4164[36]][_0x4164[62]]= function(_0xe0fax19,_0xe0fax11){var _0xe0fax1a=url[_0x4164[71]](Mustache[_0x4164[60]](_0xe0fax19,_0xe0fax11),true);_[_0x4164[44]](_0xe0fax1a[_0x4164[72]],_0xe0fax11);delete _0xe0fax1a[_0x4164[73]];return url[_0x4164[50]](_0xe0fax1a)};Trigger[_0x4164[36]][_0x4164[42]]= function(_0xe0fax1b,_0xe0fax11){var _0xe0fax1c=true,_0xe0fax1d=true;if(_0xe0fax1b[_0x4164[74]][_0x4164[45]]){_0xe0fax1c= _[_0x4164[76]](_0xe0fax1b.AllConditions,this[_0x4164[75]](_0xe0fax11))};if(_0xe0fax1b[_0x4164[77]][_0x4164[45]]){_0xe0fax1d= _[_0x4164[78]](_0xe0fax1b.AnyConditions,this[_0x4164[75]](_0xe0fax11))};return _0xe0fax1c&& _0xe0fax1d};Trigger[_0x4164[36]][_0x4164[75]]= function(_0xe0fax11){return function(_0xe0fax12){switch(_0xe0fax12[_0x4164[83]]){case _0x4164[69]:return _0xe0fax11[_0x4164[69]]?operators[_0xe0fax12[_0x4164[80]]](_0xe0fax12[_0x4164[79]],_0xe0fax11[_0x4164[69]]):false;case _0x4164[81]:return _0xe0fax11[_0x4164[81]]?operators[_0xe0fax12[_0x4164[80]]](_0xe0fax12[_0x4164[79]],_0xe0fax11[_0x4164[81]]):false;case _0x4164[82]:return _0xe0fax11[_0x4164[82]]?operators[_0xe0fax12[_0x4164[80]]](_0xe0fax12[_0x4164[79]],_0xe0fax11[_0x4164[82]]):false};return false}};module[_0x4164[84]]= Trigger
\ No newline at end of file
index ca3edb5..9502ee8 100644 (file)
@@ -1 +1 @@
-var _0x9cf5=[]
\ No newline at end of file
+var _0xa75c=[]
\ No newline at end of file
index 99f5138..e62bfc5 100644 (file)
@@ -1 +1 @@
-var _0x1b34=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x7A\x65\x6E\x64\x65\x73\x6B","\x2E\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65","\x2E\x2F\x73\x75\x67\x61\x72\x63\x72\x6D","\x2E\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B","\x7A\x65\x6E\x64\x65\x73\x6B","\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65","\x73\x75\x67\x61\x72\x63\x72\x6D","\x66\x72\x65\x73\x68\x64\x65\x73\x6B","\x65\x78\x65\x63","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x64\x61\x74\x61\x31","\x69\x6E\x63\x6C\x75\x64\x65\x73","","\x64\x61\x74\x61\x33","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x61\x74\x61\x32","\x71\x75\x65\x75\x65","\x72\x6F\x75\x74\x65\x49\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x45\x56\x45\x4E\x54\x20\x55\x4E\x4B\x4E\x4F\x57\x4E","\x6C\x6F\x67","\x61\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x75\x6E\x6B\x6E\x6F\x77\x6E\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x65\x72\x72\x6F\x72"];_0x1b34[0];var _=require(_0x1b34[1]);var zendesk=require(_0x1b34[2]);var salesforce=require(_0x1b34[3]);var sugarcrm=require(_0x1b34[4]);var freshdesk=require(_0x1b34[5]);var integrations=[_0x1b34[6],_0x1b34[7],_0x1b34[8],_0x1b34[9]];exports[_0x1b34[10]]= function(_0x13abx7,_0x13abx8,_0x13abx9,_0x13abxa,_0x13abxb){if(_0x13abx9){if(_[_0x1b34[13]](integrations,_0x13abx7[_0x1b34[12]][_0x1b34[11]]())){try{var _0x13abxc=_0x1b34[14];var _0x13abxd=_0x13abx9[_0x13abx7[_0x1b34[12]][_0x1b34[11]]()][_0x13abx7[_0x1b34[17]]][_0x1b34[16]][_0x13abx7[_0x1b34[15]]];if(_0x13abxd){if(_0x13abxa){if(_0x13abxb&& _0x13abx8[_0x1b34[18]]){_0x13abxc= _0x1b34[18]}else {if(_0x13abx8[_0x1b34[19]]){_0x13abxc= _0x1b34[20]}else {console[_0x1b34[22]](_0x1b34[21],_0x13abx8)}}}else {_0x13abxc= _0x1b34[23]};switch(_0x13abx7[_0x1b34[12]][_0x1b34[11]]()){case _0x1b34[6]:zendesk[_0x13abxc](_0x13abx7,_0x13abx8,_0x13abxd,_0x13abxa,_0x13abxb);break;case _0x1b34[7]:salesforce[_0x13abxc](_0x13abx7,_0x13abx8,_0x13abxd,_0x13abxa,_0x13abxb);break;case _0x1b34[8]:sugarcrm[_0x13abxc](_0x13abx7,_0x13abx8,_0x13abxd,_0x13abxa,_0x13abxb);break;case _0x1b34[9]:freshdesk[_0x13abxc](_0x13abx7,_0x13abx8,_0x13abxd,_0x13abxa,_0x13abxb);break;default:console[_0x1b34[22]](_0x1b34[24])}}}catch(e){console[_0x1b34[25]](e)}}}}
\ No newline at end of file
+var _0xbb4b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x7A\x65\x6E\x64\x65\x73\x6B","\x2E\x2F\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65","\x2E\x2F\x73\x75\x67\x61\x72\x63\x72\x6D","\x2E\x2F\x66\x72\x65\x73\x68\x64\x65\x73\x6B","\x7A\x65\x6E\x64\x65\x73\x6B","\x73\x61\x6C\x65\x73\x66\x6F\x72\x63\x65","\x73\x75\x67\x61\x72\x63\x72\x6D","\x66\x72\x65\x73\x68\x64\x65\x73\x6B","\x65\x78\x65\x63","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x64\x61\x74\x61\x31","\x69\x6E\x63\x6C\x75\x64\x65\x73","","\x64\x61\x74\x61\x33","\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73","\x64\x61\x74\x61\x32","\x71\x75\x65\x75\x65","\x72\x6F\x75\x74\x65\x49\x64","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x45\x56\x45\x4E\x54\x20\x55\x4E\x4B\x4E\x4F\x57\x4E","\x6C\x6F\x67","\x61\x62\x61\x6E\x64\x6F\x6E\x65\x64","\x75\x6E\x6B\x6E\x6F\x77\x6E\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x65\x72\x72\x6F\x72"];_0xbb4b[0];var _=require(_0xbb4b[1]);var zendesk=require(_0xbb4b[2]);var salesforce=require(_0xbb4b[3]);var sugarcrm=require(_0xbb4b[4]);var freshdesk=require(_0xbb4b[5]);var integrations=[_0xbb4b[6],_0xbb4b[7],_0xbb4b[8],_0xbb4b[9]];exports[_0xbb4b[10]]= function(_0x7331x7,_0x7331x8,_0x7331x9,_0x7331xa,_0x7331xb){if(_0x7331x9){if(_[_0xbb4b[13]](integrations,_0x7331x7[_0xbb4b[12]][_0xbb4b[11]]())){try{var _0x7331xc=_0xbb4b[14];var _0x7331xd=_0x7331x9[_0x7331x7[_0xbb4b[12]][_0xbb4b[11]]()][_0x7331x7[_0xbb4b[17]]][_0xbb4b[16]][_0x7331x7[_0xbb4b[15]]];if(_0x7331xd){if(_0x7331xa){if(_0x7331xb&& _0x7331x8[_0xbb4b[18]]){_0x7331xc= _0xbb4b[18]}else {if(_0x7331x8[_0xbb4b[19]]){_0x7331xc= _0xbb4b[20]}else {console[_0xbb4b[22]](_0xbb4b[21],_0x7331x8)}}}else {_0x7331xc= _0xbb4b[23]};switch(_0x7331x7[_0xbb4b[12]][_0xbb4b[11]]()){case _0xbb4b[6]:zendesk[_0x7331xc](_0x7331x7,_0x7331x8,_0x7331xd,_0x7331xa,_0x7331xb);break;case _0xbb4b[7]:salesforce[_0x7331xc](_0x7331x7,_0x7331x8,_0x7331xd,_0x7331xa,_0x7331xb);break;case _0xbb4b[8]:sugarcrm[_0x7331xc](_0x7331x7,_0x7331x8,_0x7331xd,_0x7331xa,_0x7331xb);break;case _0xbb4b[9]:freshdesk[_0x7331xc](_0x7331x7,_0x7331x8,_0x7331xd,_0x7331xa,_0x7331xb);break;default:console[_0xbb4b[22]](_0xbb4b[24])}}}catch(e){console[_0xbb4b[25]](e)}}}}
\ No newline at end of file
index 2c9c6a0..c14f8ca 100644 (file)
@@ -1 +1 @@
-var _0x5cdf=[]
\ No newline at end of file
+var _0x1c8b=[]
\ No newline at end of file
index 09f893b..d37342a 100644 (file)
@@ -1 +1 @@
-var _0xf0ac=[]
\ No newline at end of file
+var _0x39a5=[]
\ No newline at end of file
index ab1915f..b05558c 100644 (file)
@@ -1 +1 @@
-var _0x900e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x71\x75\x65\x75\x65","\x7A\x65\x6E\x64\x65\x73\x6B","\x6C\x6F\x67","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x61\x62\x61\x6E\x64\x6F\x6E\x65\x64"];_0x900e[0];exports[_0x900e[1]]= function(_0x1a60x1,_0x1a60x2,_0x1a60x3,_0x1a60x4,_0x1a60x5){console[_0x900e[3]](_0x900e[1],_0x900e[2])};exports[_0x900e[4]]= function(_0x1a60x1,_0x1a60x2,_0x1a60x3,_0x1a60x4,_0x1a60x5){console[_0x900e[3]](_0x900e[4],_0x900e[2])};exports[_0x900e[5]]= function(_0x1a60x1,_0x1a60x2,_0x1a60x3,_0x1a60x4,_0x1a60x5){console[_0x900e[3]](_0x900e[5],_0x900e[2])}
\ No newline at end of file
+var _0x5293=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x71\x75\x65\x75\x65","\x7A\x65\x6E\x64\x65\x73\x6B","\x6C\x6F\x67","\x6F\x75\x74\x62\x6F\x75\x6E\x64","\x61\x62\x61\x6E\x64\x6F\x6E\x65\x64"];_0x5293[0];exports[_0x5293[1]]= function(_0xac26x1,_0xac26x2,_0xac26x3,_0xac26x4,_0xac26x5){console[_0x5293[3]](_0x5293[1],_0x5293[2])};exports[_0x5293[4]]= function(_0xac26x1,_0xac26x2,_0xac26x3,_0xac26x4,_0xac26x5){console[_0x5293[3]](_0x5293[4],_0x5293[2])};exports[_0x5293[5]]= function(_0xac26x1,_0xac26x2,_0xac26x3,_0xac26x4,_0xac26x5){console[_0x5293[3]](_0x5293[5],_0x5293[2])}
\ No newline at end of file
index 87ec814..a1e0a05 100644 (file)
@@ -1 +1 @@
-var _0x375c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x75\x74\x69\x6C","\x6D\x75\x73\x74\x61\x63\x68\x65","\x65\x78\x65\x63","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x72\x65\x6E\x64\x65\x72","\x71\x73","\x47\x45\x54","\x62\x6F\x64\x79","\x50\x4F\x53\x54","\x25\x73\x20\x25\x73\x20\x25\x73\x20\x5B\x25\x73\x5D\x3A\x25\x73","\x73\x74\x61\x74\x75\x73\x43\x6F\x64\x65","\x6E\x61\x6D\x65","\x6D\x65\x73\x73\x61\x67\x65","\x66\x6F\x72\x6D\x61\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x25\x73\x20\x25\x73\x20\x73\x75\x63\x63\x65\x65\x64\x65\x64\x20\x77\x69\x74\x68\x20\x73\x74\x61\x74\x75\x73\x3A\x20\x25\x64\x20\x61\x6E\x64\x20\x62\x6F\x64\x79\x3A\x20\x25\x73","\x6C\x6F\x67","\x74\x68\x65\x6E"];_0x375c[0];var rp=require(_0x375c[1]);var util=require(_0x375c[2]);var Mustache=require(_0x375c[3]);exports[_0x375c[4]]= function(_0xa061x4,_0xa061x5){var _0xa061x6={method:_0xa061x4[_0x375c[6]][_0x375c[5]](),uri:encodeURI(Mustache[_0x375c[8]](_0xa061x4[_0x375c[7]],_0xa061x5)),json:true,resolveWithFullResponse:true};switch(_0xa061x4[_0x375c[6]][_0x375c[5]]()){case _0x375c[10]:_0xa061x6[_0x375c[9]]= _0xa061x5;break;case _0x375c[12]:_0xa061x6[_0x375c[11]]= _0xa061x5;break};rp(_0xa061x6)[_0x375c[22]](function(_0xa061x8){console[_0x375c[21]](util[_0x375c[17]](_0x375c[20],_0xa061x4[_0x375c[6]],_0xa061x4[_0x375c[7]],_0xa061x8[_0x375c[14]],_0xa061x8[_0x375c[11]]))})[_0x375c[19]](function(_0xa061x7){console[_0x375c[18]](util[_0x375c[17]](_0x375c[13],_0xa061x4[_0x375c[6]],_0xa061x4[_0x375c[7]],_0xa061x7[_0x375c[14]],_0xa061x7[_0x375c[15]],_0xa061x7[_0x375c[16]]))})}
\ No newline at end of file
+var _0x3922=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x72\x65\x71\x75\x65\x73\x74\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x75\x74\x69\x6C","\x6D\x75\x73\x74\x61\x63\x68\x65","\x65\x78\x65\x63","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x72\x65\x6E\x64\x65\x72","\x71\x73","\x47\x45\x54","\x62\x6F\x64\x79","\x50\x4F\x53\x54","\x25\x73\x20\x25\x73\x20\x25\x73\x20\x5B\x25\x73\x5D\x3A\x25\x73","\x73\x74\x61\x74\x75\x73\x43\x6F\x64\x65","\x6E\x61\x6D\x65","\x6D\x65\x73\x73\x61\x67\x65","\x66\x6F\x72\x6D\x61\x74","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x25\x73\x20\x25\x73\x20\x73\x75\x63\x63\x65\x65\x64\x65\x64\x20\x77\x69\x74\x68\x20\x73\x74\x61\x74\x75\x73\x3A\x20\x25\x64\x20\x61\x6E\x64\x20\x62\x6F\x64\x79\x3A\x20\x25\x73","\x6C\x6F\x67","\x74\x68\x65\x6E"];_0x3922[0];var rp=require(_0x3922[1]);var util=require(_0x3922[2]);var Mustache=require(_0x3922[3]);exports[_0x3922[4]]= function(_0x8409x4,_0x8409x5){var _0x8409x6={method:_0x8409x4[_0x3922[6]][_0x3922[5]](),uri:encodeURI(Mustache[_0x3922[8]](_0x8409x4[_0x3922[7]],_0x8409x5)),json:true,resolveWithFullResponse:true};switch(_0x8409x4[_0x3922[6]][_0x3922[5]]()){case _0x3922[10]:_0x8409x6[_0x3922[9]]= _0x8409x5;break;case _0x3922[12]:_0x8409x6[_0x3922[11]]= _0x8409x5;break};rp(_0x8409x6)[_0x3922[22]](function(_0x8409x8){console[_0x3922[21]](util[_0x3922[17]](_0x3922[20],_0x8409x4[_0x3922[6]],_0x8409x4[_0x3922[7]],_0x8409x8[_0x3922[14]],_0x8409x8[_0x3922[11]]))})[_0x3922[19]](function(_0x8409x7){console[_0x3922[18]](util[_0x3922[17]](_0x3922[13],_0x8409x4[_0x3922[6]],_0x8409x4[_0x3922[7]],_0x8409x7[_0x3922[14]],_0x8409x7[_0x3922[15]],_0x8409x7[_0x3922[16]]))})}
\ No newline at end of file
index 5cf6c7e..3512c84 100644 (file)
@@ -1 +1 @@
-var _0xe5c8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x2E\x2F\x6C\x69\x62\x2F\x65\x6D\x61\x69\x6C","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x61\x63\x63\x6F\x75\x6E\x74","\x6D\x65\x73\x73\x61\x67\x65","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x56\x65\x72\x69\x66\x69\x65\x64","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x73\x65\x72\x76\x65\x72","\x6C\x69\x73\x74\x65\x6E"];_0xe5c8[0];var jayson=require(_0xe5c8[1]);var client=jayson[_0xe5c8[3]][_0xe5c8[2]]({port:9001});var EmailChannel=require(_0xe5c8[4]);var email= new EmailChannel(client);var server=jayson[_0xe5c8[13]]({SendMail:function(_0x27a3x6){return  new Promise(function(_0x27a3x7,_0x27a3x8){email[_0xe5c8[10]](_0x27a3x6[_0xe5c8[8]],_0x27a3x6[_0xe5c8[9]])[_0xe5c8[7]](function(_0x27a3xa){_0x27a3x7(_0x27a3xa)})[_0xe5c8[6]](function(_0x27a3x9){_0x27a3x8(server[_0xe5c8[5]](500,_0x27a3x9))})})},VerifySmtp:function(_0x27a3x6){return  new Promise(function(_0x27a3x7,_0x27a3x8){email[_0xe5c8[12]](_0x27a3x6[_0xe5c8[8]])[_0xe5c8[7]](function(_0x27a3xb){_0x27a3x7({code:200,message:_0xe5c8[11]})})[_0xe5c8[6]](function(_0x27a3x9){_0x27a3x8(server[_0xe5c8[5]](500,_0x27a3x9))})})}});return server[_0xe5c8[2]]()[_0xe5c8[14]](9003)
\ No newline at end of file
+var _0x3bf8=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6A\x61\x79\x73\x6F\x6E\x2F\x70\x72\x6F\x6D\x69\x73\x65","\x68\x74\x74\x70","\x63\x6C\x69\x65\x6E\x74","\x2E\x2F\x6C\x69\x62\x2F\x65\x6D\x61\x69\x6C","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x61\x63\x63\x6F\x75\x6E\x74","\x6D\x65\x73\x73\x61\x67\x65","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x56\x65\x72\x69\x66\x69\x65\x64","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x73\x65\x72\x76\x65\x72","\x6C\x69\x73\x74\x65\x6E"];_0x3bf8[0];var jayson=require(_0x3bf8[1]);var client=jayson[_0x3bf8[3]][_0x3bf8[2]]({port:9001});var EmailChannel=require(_0x3bf8[4]);var email= new EmailChannel(client);var server=jayson[_0x3bf8[13]]({SendMail:function(_0x4df0x6){return  new Promise(function(_0x4df0x7,_0x4df0x8){email[_0x3bf8[10]](_0x4df0x6[_0x3bf8[8]],_0x4df0x6[_0x3bf8[9]])[_0x3bf8[7]](function(_0x4df0xa){_0x4df0x7(_0x4df0xa)})[_0x3bf8[6]](function(_0x4df0x9){_0x4df0x8(server[_0x3bf8[5]](500,_0x4df0x9))})})},VerifySmtp:function(_0x4df0x6){return  new Promise(function(_0x4df0x7,_0x4df0x8){email[_0x3bf8[12]](_0x4df0x6[_0x3bf8[8]])[_0x3bf8[7]](function(_0x4df0xb){_0x4df0x7({code:200,message:_0x3bf8[11]})})[_0x3bf8[6]](function(_0x4df0x9){_0x4df0x8(server[_0x3bf8[5]](500,_0x4df0x9))})})}});return server[_0x3bf8[2]]()[_0x3bf8[14]](9003)
\ No newline at end of file
index 525114a..bc568a2 100644 (file)
@@ -1 +1 @@
-var _0xd68e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6B\x75\x65","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x69\x6D\x61\x70","\x2E\x2F\x73\x6D\x74\x70","\x65\x6D\x61\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x63\x72\x65\x61\x74\x65\x51\x75\x65\x75\x65","\x65\x6E\x7A\x6F","\x64\x61\x6E\x69\x65\x6C\x65","\x61\x62\x69","\x76\x61\x6C\x65\x72\x69\x6F","\x67\x69\x6F\x72\x67\x69\x6F","\x6D\x65\x6F","\x64\x69\x65\x67\x6F","\x62\x65\x70\x70\x65","\x73\x74\x61\x72\x74\x20\x65\x6D\x61\x69\x6C\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x69\x6E\x66\x6F","\x6A\x6F\x62\x73","\x69\x6D\x61\x70","\x6C\x65\x6E\x67\x74\x68","\x6C\x6F\x61\x64\x20\x61\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x62\x69\x6E\x64","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x70\x45\x6D\x61\x69\x6C","\x6F\x6E","\x73\x6D\x74\x70","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6E\x65\x77\x20\x65\x6D\x61\x69\x6C\x20\x6F\x6E\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65","\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x6A\x6F\x62\x20\x25\x73\x20\x63\x6F\x6D\x70\x6C\x65\x74\x65\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x66\x61\x69\x6C\x65\x64","\x6A\x6F\x62\x20\x25\x73\x20\x66\x61\x69\x6C\x65\x64\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x70\x72\x6F\x67\x72\x65\x73\x73","\x6A\x6F\x62\x20\x25\x73\x20\x70\x72\x6F\x67\x72\x65\x73\x73\x20\x61\x74\x20\x25\x73\x25\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73\x2C\x20\x6E\x65\x78\x74\x20\x61\x70\x70\x20\x25\x73","\x6E\x65\x78\x74\x41\x70\x70","\x25\x73\x20\x65\x6D\x61\x69\x6C\x73\x20\x6D\x61\x6E\x61\x67\x65\x64\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x73\x61\x76\x65","\x6C\x6F\x67","\x72\x65\x74\x72\x79","\x61\x67\x65\x6E\x74\x73","\x74\x69\x6D\x65\x6F\x75\x74","\x50\x52\x4F\x43\x45\x53\x53\x20\x4A\x4F\x42\x49\x44\x3A","\x64\x61\x74\x61","\x72\x65\x6E\x64\x65\x72\x69\x6E\x67\x20\x61\x70\x70","\x69\x74\x73\x64\x6F\x6E\x65","\x70\x72\x6F\x63\x65\x73\x73","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x76\x65\x72\x69\x66\x79","\x65\x78\x70\x6F\x72\x74\x73"];_0xd68e[0];var util=require(_0xd68e[1]);var kue=require(_0xd68e[2]);var _=require(_0xd68e[3]);var EmailImap=require(_0xd68e[4]);var EmailSmtp=require(_0xd68e[5]);var logger=require(_0xd68e[7])(_0xd68e[6]);var queue=kue[_0xd68e[9]]({redis:{port:6379,host:_0xd68e[8]}});var emailsManaged=0;var accounts=[];var routing={"\x31":[{agents:[{name:_0xd68e[10],retry:2},{name:_0xd68e[11],retry:3}],timeout:3},{agents:[{name:_0xd68e[12],retry:3},{name:_0xd68e[13],retry:3}],timeout:3,retry:3}],"\x32":[{agents:[{name:_0xd68e[14],retry:3},{name:_0xd68e[15],retry:3}],timeout:3,retry:3},{agents:[{name:_0xd68e[16],retry:3},{name:_0xd68e[17],retry:3}],timeout:3,retry:3}]};function EmailChannel(){logger[_0xd68e[19]](_0xd68e[18]);this[_0xd68e[20]]= [];this[_0xd68e[21]]= [];for(var _0xb97cxc=0;_0xb97cxc< accounts[_0xd68e[22]];_0xb97cxc+= 1){logger[_0xd68e[19]](_0xd68e[23],accounts[_0xb97cxc][_0xd68e[24]]);this[_0xd68e[21]][accounts[_0xb97cxc][_0xd68e[24]]]=  new EmailImap(accounts[_0xb97cxc]);this[_0xd68e[21]][accounts[_0xb97cxc][_0xd68e[24]]][_0xd68e[27]](_0xd68e[6],this[_0xd68e[26]][_0xd68e[25]](this,accounts[_0xb97cxc][_0xd68e[24]]))};this[_0xd68e[28]]=  new EmailSmtp()}EmailChannel[_0xd68e[29]][_0xd68e[26]]= function(_0xb97cxd,_0xb97cxe,_0xb97cxf){logger[_0xd68e[19]](util[_0xd68e[31]](_0xd68e[30],_0xb97cxd,_0xb97cxe));emailsManaged+= 1;var _0xb97cx10=queue[_0xd68e[32]](_0xd68e[6],routing[_0xb97cxd]);_0xb97cx10[_0xd68e[27]](_0xd68e[33],function(){logger[_0xd68e[19]](util[_0xd68e[31]](_0xd68e[34],_0xb97cx10[_0xd68e[24]],_0xb97cxd,_0xb97cxe))});_0xb97cx10[_0xd68e[27]](_0xd68e[35],function(){logger[_0xd68e[19]](util[_0xd68e[31]](_0xd68e[36],_0xb97cx10[_0xd68e[24]],_0xb97cxd,_0xb97cxe))});_0xb97cx10[_0xd68e[27]](_0xd68e[37],function(_0xb97cx11,_0xb97cx12){logger[_0xd68e[19]](util[_0xd68e[31]](_0xd68e[38],_0xb97cx10[_0xd68e[24]],_0xb97cx11,_0xb97cxd,_0xb97cxe,_0xb97cx12[_0xd68e[39]]))});logger[_0xd68e[19]](util[_0xd68e[31]](_0xd68e[40],emailsManaged,_0xb97cxd,_0xb97cxe));_0xb97cx10[_0xd68e[41]]()};function notifyAgent(_0xb97cx14,_0xb97cx15){console[_0xd68e[42]](_0xb97cx14);setTimeout(_0xb97cx15,_0xb97cx14[_0xd68e[43]]* 1000)}function notify(_0xb97cx17,_0xb97cx15){var _0xb97cx18=_0xb97cx17[_0xd68e[44]],_0xb97cx19=_0xb97cx18[_0xd68e[22]];function _0xb97cx1a(_0xb97cxc){var _0xb97cx14=_0xb97cx18[_0xb97cxc];if(_0xb97cx17[_0xd68e[45]]>= _0xb97cx14[_0xd68e[43]]){_0xb97cx17[_0xd68e[45]]-= _0xb97cx14[_0xd68e[43]]}else {_0xb97cx14[_0xd68e[43]]= _0xb97cx17[_0xd68e[45]];_0xb97cx17[_0xd68e[45]]= 0};console[_0xd68e[42]](_0xb97cx17[_0xd68e[45]]);notifyAgent(_0xb97cx14,function(_0xb97cx1b){if(_0xb97cx1b){return _0xb97cx15(_0xb97cx1b)};if(_0xb97cxc=== _0xb97cx19- 1|| _0xb97cx17[_0xd68e[45]]=== 0){_0xb97cx15()}else {_0xb97cx1a(_0xb97cxc+= 1)}})}_0xb97cx1a(0)}queue[_0xd68e[50]](_0xd68e[6],function(_0xb97cx10,_0xb97cx1c){console[_0xd68e[42]](_0xd68e[46],_0xb97cx10[_0xd68e[24]]);var _0xb97cx1d=_0xb97cx10[_0xd68e[47]],_0xb97cx19=_0xb97cx1d[_0xd68e[22]];function _0xb97cx1a(_0xb97cxc){var _0xb97cx17=_0xb97cx1d[_0xb97cxc];_0xb97cx10[_0xd68e[42]](_0xd68e[48]);notify(_0xb97cx17,function(_0xb97cx1b){if(_0xb97cx1b){return _0xb97cx1c(_0xb97cx1b)};_0xb97cx10[_0xd68e[37]](_0xb97cxc,_0xb97cx19,{nextApp:_0xb97cxc=== _0xb97cx19- 1?_0xd68e[49]:_0xb97cxc+ 1});if(_0xb97cxc=== _0xb97cx19- 1){_0xb97cx1c()}else {_0xb97cx1a(_0xb97cxc+= 1)}})}_0xb97cx1a(0)});EmailChannel[_0xd68e[29]][_0xd68e[51]]= function(_0xb97cx1e,_0xb97cx1f){return this[_0xd68e[28]][_0xd68e[52]](_0xb97cx1e,_0xb97cx1f)};EmailChannel[_0xd68e[29]][_0xd68e[53]]= function(_0xb97cx1e){return this[_0xd68e[28]][_0xd68e[54]](_0xb97cx1e)};module[_0xd68e[55]]= EmailChannel
\ No newline at end of file
+var _0x64cd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6B\x75\x65","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x69\x6D\x61\x70","\x2E\x2F\x73\x6D\x74\x70","\x65\x6D\x61\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x63\x72\x65\x61\x74\x65\x51\x75\x65\x75\x65","\x65\x6E\x7A\x6F","\x64\x61\x6E\x69\x65\x6C\x65","\x61\x62\x69","\x76\x61\x6C\x65\x72\x69\x6F","\x67\x69\x6F\x72\x67\x69\x6F","\x6D\x65\x6F","\x64\x69\x65\x67\x6F","\x62\x65\x70\x70\x65","\x73\x74\x61\x72\x74\x20\x65\x6D\x61\x69\x6C\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x69\x6E\x66\x6F","\x6A\x6F\x62\x73","\x69\x6D\x61\x70","\x6C\x65\x6E\x67\x74\x68","\x6C\x6F\x61\x64\x20\x61\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x62\x69\x6E\x64","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x70\x45\x6D\x61\x69\x6C","\x6F\x6E","\x73\x6D\x74\x70","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6E\x65\x77\x20\x65\x6D\x61\x69\x6C\x20\x6F\x6E\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65","\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x6A\x6F\x62\x20\x25\x73\x20\x63\x6F\x6D\x70\x6C\x65\x74\x65\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x66\x61\x69\x6C\x65\x64","\x6A\x6F\x62\x20\x25\x73\x20\x66\x61\x69\x6C\x65\x64\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x70\x72\x6F\x67\x72\x65\x73\x73","\x6A\x6F\x62\x20\x25\x73\x20\x70\x72\x6F\x67\x72\x65\x73\x73\x20\x61\x74\x20\x25\x73\x25\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73\x2C\x20\x6E\x65\x78\x74\x20\x61\x70\x70\x20\x25\x73","\x6E\x65\x78\x74\x41\x70\x70","\x25\x73\x20\x65\x6D\x61\x69\x6C\x73\x20\x6D\x61\x6E\x61\x67\x65\x64\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x73\x61\x76\x65","\x6C\x6F\x67","\x72\x65\x74\x72\x79","\x61\x67\x65\x6E\x74\x73","\x74\x69\x6D\x65\x6F\x75\x74","\x50\x52\x4F\x43\x45\x53\x53\x20\x4A\x4F\x42\x49\x44\x3A","\x64\x61\x74\x61","\x72\x65\x6E\x64\x65\x72\x69\x6E\x67\x20\x61\x70\x70","\x69\x74\x73\x64\x6F\x6E\x65","\x70\x72\x6F\x63\x65\x73\x73","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x76\x65\x72\x69\x66\x79","\x65\x78\x70\x6F\x72\x74\x73"];_0x64cd[0];var util=require(_0x64cd[1]);var kue=require(_0x64cd[2]);var _=require(_0x64cd[3]);var EmailImap=require(_0x64cd[4]);var EmailSmtp=require(_0x64cd[5]);var logger=require(_0x64cd[7])(_0x64cd[6]);var queue=kue[_0x64cd[9]]({redis:{port:6379,host:_0x64cd[8]}});var emailsManaged=0;var accounts=[];var routing={"\x31":[{agents:[{name:_0x64cd[10],retry:2},{name:_0x64cd[11],retry:3}],timeout:3},{agents:[{name:_0x64cd[12],retry:3},{name:_0x64cd[13],retry:3}],timeout:3,retry:3}],"\x32":[{agents:[{name:_0x64cd[14],retry:3},{name:_0x64cd[15],retry:3}],timeout:3,retry:3},{agents:[{name:_0x64cd[16],retry:3},{name:_0x64cd[17],retry:3}],timeout:3,retry:3}]};function EmailChannel(){logger[_0x64cd[19]](_0x64cd[18]);this[_0x64cd[20]]= [];this[_0x64cd[21]]= [];for(var _0x9fe1xc=0;_0x9fe1xc< accounts[_0x64cd[22]];_0x9fe1xc+= 1){logger[_0x64cd[19]](_0x64cd[23],accounts[_0x9fe1xc][_0x64cd[24]]);this[_0x64cd[21]][accounts[_0x9fe1xc][_0x64cd[24]]]=  new EmailImap(accounts[_0x9fe1xc]);this[_0x64cd[21]][accounts[_0x9fe1xc][_0x64cd[24]]][_0x64cd[27]](_0x64cd[6],this[_0x64cd[26]][_0x64cd[25]](this,accounts[_0x9fe1xc][_0x64cd[24]]))};this[_0x64cd[28]]=  new EmailSmtp()}EmailChannel[_0x64cd[29]][_0x64cd[26]]= function(_0x9fe1xd,_0x9fe1xe,_0x9fe1xf){logger[_0x64cd[19]](util[_0x64cd[31]](_0x64cd[30],_0x9fe1xd,_0x9fe1xe));emailsManaged+= 1;var _0x9fe1x10=queue[_0x64cd[32]](_0x64cd[6],routing[_0x9fe1xd]);_0x9fe1x10[_0x64cd[27]](_0x64cd[33],function(){logger[_0x64cd[19]](util[_0x64cd[31]](_0x64cd[34],_0x9fe1x10[_0x64cd[24]],_0x9fe1xd,_0x9fe1xe))});_0x9fe1x10[_0x64cd[27]](_0x64cd[35],function(){logger[_0x64cd[19]](util[_0x64cd[31]](_0x64cd[36],_0x9fe1x10[_0x64cd[24]],_0x9fe1xd,_0x9fe1xe))});_0x9fe1x10[_0x64cd[27]](_0x64cd[37],function(_0x9fe1x11,_0x9fe1x12){logger[_0x64cd[19]](util[_0x64cd[31]](_0x64cd[38],_0x9fe1x10[_0x64cd[24]],_0x9fe1x11,_0x9fe1xd,_0x9fe1xe,_0x9fe1x12[_0x64cd[39]]))});logger[_0x64cd[19]](util[_0x64cd[31]](_0x64cd[40],emailsManaged,_0x9fe1xd,_0x9fe1xe));_0x9fe1x10[_0x64cd[41]]()};function notifyAgent(_0x9fe1x14,_0x9fe1x15){console[_0x64cd[42]](_0x9fe1x14);setTimeout(_0x9fe1x15,_0x9fe1x14[_0x64cd[43]]* 1000)}function notify(_0x9fe1x17,_0x9fe1x15){var _0x9fe1x18=_0x9fe1x17[_0x64cd[44]],_0x9fe1x19=_0x9fe1x18[_0x64cd[22]];function _0x9fe1x1a(_0x9fe1xc){var _0x9fe1x14=_0x9fe1x18[_0x9fe1xc];if(_0x9fe1x17[_0x64cd[45]]>= _0x9fe1x14[_0x64cd[43]]){_0x9fe1x17[_0x64cd[45]]-= _0x9fe1x14[_0x64cd[43]]}else {_0x9fe1x14[_0x64cd[43]]= _0x9fe1x17[_0x64cd[45]];_0x9fe1x17[_0x64cd[45]]= 0};console[_0x64cd[42]](_0x9fe1x17[_0x64cd[45]]);notifyAgent(_0x9fe1x14,function(_0x9fe1x1b){if(_0x9fe1x1b){return _0x9fe1x15(_0x9fe1x1b)};if(_0x9fe1xc=== _0x9fe1x19- 1|| _0x9fe1x17[_0x64cd[45]]=== 0){_0x9fe1x15()}else {_0x9fe1x1a(_0x9fe1xc+= 1)}})}_0x9fe1x1a(0)}queue[_0x64cd[50]](_0x64cd[6],function(_0x9fe1x10,_0x9fe1x1c){console[_0x64cd[42]](_0x64cd[46],_0x9fe1x10[_0x64cd[24]]);var _0x9fe1x1d=_0x9fe1x10[_0x64cd[47]],_0x9fe1x19=_0x9fe1x1d[_0x64cd[22]];function _0x9fe1x1a(_0x9fe1xc){var _0x9fe1x17=_0x9fe1x1d[_0x9fe1xc];_0x9fe1x10[_0x64cd[42]](_0x64cd[48]);notify(_0x9fe1x17,function(_0x9fe1x1b){if(_0x9fe1x1b){return _0x9fe1x1c(_0x9fe1x1b)};_0x9fe1x10[_0x64cd[37]](_0x9fe1xc,_0x9fe1x19,{nextApp:_0x9fe1xc=== _0x9fe1x19- 1?_0x64cd[49]:_0x9fe1xc+ 1});if(_0x9fe1xc=== _0x9fe1x19- 1){_0x9fe1x1c()}else {_0x9fe1x1a(_0x9fe1xc+= 1)}})}_0x9fe1x1a(0)});EmailChannel[_0x64cd[29]][_0x64cd[51]]= function(_0x9fe1x1e,_0x9fe1x1f){return this[_0x64cd[28]][_0x64cd[52]](_0x9fe1x1e,_0x9fe1x1f)};EmailChannel[_0x64cd[29]][_0x64cd[53]]= function(_0x9fe1x1e){return this[_0x64cd[28]][_0x64cd[54]](_0x9fe1x1e)};module[_0x64cd[55]]= EmailChannel
\ No newline at end of file
index aed85cf..786a46a 100644 (file)
@@ -1 +1 @@
-var _0x1830=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x70\x61\x74\x68","\x75\x74\x69\x6C","\x69\x6D\x61\x70","\x6C\x6F\x64\x61\x73\x68","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x4D\x61\x69\x6C\x50\x61\x72\x73\x65\x72","\x6D\x61\x69\x6C\x70\x61\x72\x73\x65\x72","\x45\x76\x65\x6E\x74\x45\x6D\x69\x74\x74\x65\x72","\x65\x76\x65\x6E\x74\x73","\x65\x6D\x61\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x68\x74\x6D\x6C","\x73\x75\x62\x6A\x65\x63\x74","\x6D\x65\x73\x73\x61\x67\x65\x49\x64","\x70\x72\x69\x6F\x72\x69\x74\x79","\x66\x72\x6F\x6D","\x74\x6F","\x64\x61\x74\x65","\x72\x65\x63\x65\x69\x76\x65\x64\x44\x61\x74\x65","\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x6D\x61\x69\x6C\x62\x6F\x78","\x49\x4E\x42\x4F\x58","\x72\x65\x61\x64\x79","\x62\x69\x6E\x64","\x68\x61\x6E\x64\x6C\x65\x52\x65\x61\x64\x79","\x6F\x6E\x63\x65","\x65\x6E\x64","\x68\x61\x6E\x64\x6C\x65\x45\x6E\x64","\x65\x72\x72\x6F\x72","\x68\x61\x6E\x64\x6C\x65\x45\x72\x72\x6F\x72","\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x69\x6E\x68\x65\x72\x69\x74\x73","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x6E\x66\x6F","\x68\x61\x6E\x64\x6C\x65\x4F\x70\x65\x6E\x42\x6F\x78","\x6F\x70\x65\x6E\x42\x6F\x78","\x6D\x61\x69\x6C","\x68\x61\x6E\x64\x6C\x65\x4E\x65\x77\x4D\x61\x69\x6C","\x72\x65\x61\x64\x55\x6E\x73\x65\x65\x6E","\x6E\x65\x77\x20\x69\x6E\x63\x6F\x6D\x69\x6E\x67\x20\x65\x6D\x61\x69\x6C","\x55\x4E\x53\x45\x45\x4E","\x68\x61\x6E\x64\x6C\x65\x52\x65\x61\x64\x55\x6E\x73\x65\x65\x6E","\x73\x65\x61\x72\x63\x68","","\x66\x65\x74\x63\x68","\x6D\x65\x73\x73\x61\x67\x65","\x68\x61\x6E\x64\x6C\x65\x46\x65\x74\x63\x68\x4D\x65\x73\x73\x61\x67\x65","\x68\x61\x6E\x64\x6C\x65\x46\x65\x74\x63\x68\x45\x72\x72\x6F\x72","\x68\x61\x6E\x64\x6C\x65\x46\x65\x74\x63\x68\x45\x6E\x64","\x62\x6F\x64\x79","\x68\x61\x6E\x64\x6C\x65\x4D\x65\x73\x73\x61\x67\x65\x42\x6F\x64\x79","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x68\x61\x6E\x64\x6C\x65\x4D\x65\x73\x73\x61\x67\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x68\x61\x6E\x64\x6C\x65\x4D\x65\x73\x73\x61\x67\x65\x45\x6E\x64","\x6E\x65\x77\x20\x6D\x65\x73\x73\x61\x67\x65\x20\x73\x65\x71\x6E\x6F\x3A\x25\x73\x20\x73\x69\x7A\x65\x3A\x25\x73","\x73\x69\x7A\x65","\x66\x6F\x72\x6D\x61\x74","\x68\x61\x6E\x64\x6C\x65\x4D\x61\x69\x6C\x50\x61\x72\x73\x65\x72\x45\x6E\x64","\x70\x69\x70\x65","\x6D\x65\x73\x73\x61\x67\x65\x20\x73\x65\x71\x6E\x6F\x3A\x25\x73\x20\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x3A\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x6D\x65\x73\x73\x61\x67\x65\x20\x73\x65\x71\x6E\x6F\x3A\x25\x73\x20\x70\x61\x72\x73\x65\x64","\x70\x69\x63\x6B","\x65\x6D\x69\x74","\x66\x65\x74\x63\x68\x20\x65\x6E\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x1830[0];var fs=require(_0x1830[1]);var path=require(_0x1830[2]);var util=require(_0x1830[3]);var Imap=require(_0x1830[4]);var _=require(_0x1830[5]);var rs=require(_0x1830[6]);var MailParser=require(_0x1830[8])[_0x1830[7]];var EventEmitter=require(_0x1830[10])[_0x1830[9]];var logger=require(_0x1830[12])(_0x1830[11]);var PROPERTIES=[_0x1830[13],_0x1830[14],_0x1830[15],_0x1830[16],_0x1830[17],_0x1830[18],_0x1830[19],_0x1830[20],_0x1830[21]];function EmailImap(_0x4c31xc){this[_0x1830[22]]= _0x1830[23];this[_0x1830[4]]=  new Imap(_0x4c31xc);this[_0x1830[4]][_0x1830[27]](_0x1830[24],this[_0x1830[26]][_0x1830[25]](this));this[_0x1830[4]][_0x1830[27]](_0x1830[28],this[_0x1830[29]][_0x1830[25]](this));this[_0x1830[4]][_0x1830[32]](_0x1830[30],this[_0x1830[31]][_0x1830[25]](this));this[_0x1830[4]][_0x1830[33]]()}util[_0x1830[34]](EmailImap,EventEmitter);EmailImap[_0x1830[35]][_0x1830[26]]= function(){logger[_0x1830[36]](_0x1830[24]);this[_0x1830[4]][_0x1830[38]](this[_0x1830[22]],false,this[_0x1830[37]][_0x1830[25]](this))};EmailImap[_0x1830[35]][_0x1830[37]]= function(_0x4c31xd,_0x4c31xe){if(_0x4c31xd){logger[_0x1830[30]](_0x4c31xd)}else {this[_0x1830[4]][_0x1830[32]](_0x1830[39],this[_0x1830[40]][_0x1830[25]](this));this[_0x1830[41]]()}};EmailImap[_0x1830[35]][_0x1830[40]]= function(_0x4c31xf){logger[_0x1830[36]](_0x1830[42]);this[_0x1830[41]]()};EmailImap[_0x1830[35]][_0x1830[41]]= function(){this[_0x1830[4]][_0x1830[45]]([_0x1830[43]],this[_0x1830[44]][_0x1830[25]](this))};EmailImap[_0x1830[35]][_0x1830[44]]= function(_0x4c31xd,_0x4c31x10){if(_0x4c31xd){logger[_0x1830[30]](_0x4c31xd)}else {var _0x4c31x11=this[_0x1830[4]][_0x1830[47]](_0x4c31x10,{bodies:_0x1830[46]});_0x4c31x11[_0x1830[32]](_0x1830[48],this[_0x1830[49]][_0x1830[25]](this));_0x4c31x11[_0x1830[27]](_0x1830[30],this[_0x1830[50]][_0x1830[25]](this));_0x4c31x11[_0x1830[27]](_0x1830[28],this[_0x1830[51]][_0x1830[25]](this))}};EmailImap[_0x1830[35]][_0x1830[49]]= function(_0x4c31x12,_0x4c31x13){_0x4c31x12[_0x1830[32]](_0x1830[52],this[_0x1830[53]][_0x1830[25]](this,_0x4c31x13));_0x4c31x12[_0x1830[27]](_0x1830[54],this[_0x1830[55]][_0x1830[25]](this,_0x4c31x13));_0x4c31x12[_0x1830[27]](_0x1830[28],this[_0x1830[56]][_0x1830[25]](this,_0x4c31x13))};EmailImap[_0x1830[35]][_0x1830[53]]= function(_0x4c31x13,_0x4c31x14,_0x4c31x15){logger[_0x1830[36]](util[_0x1830[59]](_0x1830[57],_0x4c31x13,_0x4c31x15[_0x1830[58]]));var _0x4c31x16= new MailParser();_0x4c31x16[_0x1830[32]](_0x1830[28],this[_0x1830[60]][_0x1830[25]](this,_0x4c31x13));_0x4c31x14[_0x1830[61]](_0x4c31x16)};EmailImap[_0x1830[35]][_0x1830[55]]= function(_0x4c31x13,_0x4c31x17){logger[_0x1830[64]](util[_0x1830[59]](_0x1830[62],_0x4c31x13,JSON[_0x1830[63]](_0x4c31x17)))};EmailImap[_0x1830[35]][_0x1830[56]]= function(_0x4c31x13){logger[_0x1830[36]](util[_0x1830[59]](_0x1830[65],_0x4c31x13))};EmailImap[_0x1830[35]][_0x1830[60]]= function(_0x4c31x13,_0x4c31x18){this[_0x1830[67]](_0x1830[11],_0x4c31x13,_[_0x1830[66]](_0x4c31x18,PROPERTIES))};EmailImap[_0x1830[35]][_0x1830[51]]= function(){logger[_0x1830[36]](_0x1830[68])};EmailImap[_0x1830[35]][_0x1830[50]]= function(_0x4c31xd){logger[_0x1830[30]](_0x1830[47],JSON[_0x1830[63]](_0x4c31xd))};EmailImap[_0x1830[35]][_0x1830[29]]= function(){logger[_0x1830[36]](_0x1830[28])};EmailImap[_0x1830[35]][_0x1830[31]]= function(_0x4c31xd){logger[_0x1830[30]](JSON[_0x1830[63]](_0x4c31xd))};module[_0x1830[69]]= EmailImap
\ No newline at end of file
+var _0x8c7f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x66\x73","\x70\x61\x74\x68","\x75\x74\x69\x6C","\x69\x6D\x61\x70","\x6C\x6F\x64\x61\x73\x68","\x72\x61\x6E\x64\x6F\x6D\x73\x74\x72\x69\x6E\x67","\x4D\x61\x69\x6C\x50\x61\x72\x73\x65\x72","\x6D\x61\x69\x6C\x70\x61\x72\x73\x65\x72","\x45\x76\x65\x6E\x74\x45\x6D\x69\x74\x74\x65\x72","\x65\x76\x65\x6E\x74\x73","\x65\x6D\x61\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x68\x74\x6D\x6C","\x73\x75\x62\x6A\x65\x63\x74","\x6D\x65\x73\x73\x61\x67\x65\x49\x64","\x70\x72\x69\x6F\x72\x69\x74\x79","\x66\x72\x6F\x6D","\x74\x6F","\x64\x61\x74\x65","\x72\x65\x63\x65\x69\x76\x65\x64\x44\x61\x74\x65","\x61\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x73","\x6D\x61\x69\x6C\x62\x6F\x78","\x49\x4E\x42\x4F\x58","\x72\x65\x61\x64\x79","\x62\x69\x6E\x64","\x68\x61\x6E\x64\x6C\x65\x52\x65\x61\x64\x79","\x6F\x6E\x63\x65","\x65\x6E\x64","\x68\x61\x6E\x64\x6C\x65\x45\x6E\x64","\x65\x72\x72\x6F\x72","\x68\x61\x6E\x64\x6C\x65\x45\x72\x72\x6F\x72","\x6F\x6E","\x63\x6F\x6E\x6E\x65\x63\x74","\x69\x6E\x68\x65\x72\x69\x74\x73","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x6E\x66\x6F","\x68\x61\x6E\x64\x6C\x65\x4F\x70\x65\x6E\x42\x6F\x78","\x6F\x70\x65\x6E\x42\x6F\x78","\x6D\x61\x69\x6C","\x68\x61\x6E\x64\x6C\x65\x4E\x65\x77\x4D\x61\x69\x6C","\x72\x65\x61\x64\x55\x6E\x73\x65\x65\x6E","\x6E\x65\x77\x20\x69\x6E\x63\x6F\x6D\x69\x6E\x67\x20\x65\x6D\x61\x69\x6C","\x55\x4E\x53\x45\x45\x4E","\x68\x61\x6E\x64\x6C\x65\x52\x65\x61\x64\x55\x6E\x73\x65\x65\x6E","\x73\x65\x61\x72\x63\x68","","\x66\x65\x74\x63\x68","\x6D\x65\x73\x73\x61\x67\x65","\x68\x61\x6E\x64\x6C\x65\x46\x65\x74\x63\x68\x4D\x65\x73\x73\x61\x67\x65","\x68\x61\x6E\x64\x6C\x65\x46\x65\x74\x63\x68\x45\x72\x72\x6F\x72","\x68\x61\x6E\x64\x6C\x65\x46\x65\x74\x63\x68\x45\x6E\x64","\x62\x6F\x64\x79","\x68\x61\x6E\x64\x6C\x65\x4D\x65\x73\x73\x61\x67\x65\x42\x6F\x64\x79","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x68\x61\x6E\x64\x6C\x65\x4D\x65\x73\x73\x61\x67\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x68\x61\x6E\x64\x6C\x65\x4D\x65\x73\x73\x61\x67\x65\x45\x6E\x64","\x6E\x65\x77\x20\x6D\x65\x73\x73\x61\x67\x65\x20\x73\x65\x71\x6E\x6F\x3A\x25\x73\x20\x73\x69\x7A\x65\x3A\x25\x73","\x73\x69\x7A\x65","\x66\x6F\x72\x6D\x61\x74","\x68\x61\x6E\x64\x6C\x65\x4D\x61\x69\x6C\x50\x61\x72\x73\x65\x72\x45\x6E\x64","\x70\x69\x70\x65","\x6D\x65\x73\x73\x61\x67\x65\x20\x73\x65\x71\x6E\x6F\x3A\x25\x73\x20\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73\x3A\x25\x73","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x64\x65\x62\x75\x67","\x6D\x65\x73\x73\x61\x67\x65\x20\x73\x65\x71\x6E\x6F\x3A\x25\x73\x20\x70\x61\x72\x73\x65\x64","\x70\x69\x63\x6B","\x65\x6D\x69\x74","\x66\x65\x74\x63\x68\x20\x65\x6E\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x8c7f[0];var fs=require(_0x8c7f[1]);var path=require(_0x8c7f[2]);var util=require(_0x8c7f[3]);var Imap=require(_0x8c7f[4]);var _=require(_0x8c7f[5]);var rs=require(_0x8c7f[6]);var MailParser=require(_0x8c7f[8])[_0x8c7f[7]];var EventEmitter=require(_0x8c7f[10])[_0x8c7f[9]];var logger=require(_0x8c7f[12])(_0x8c7f[11]);var PROPERTIES=[_0x8c7f[13],_0x8c7f[14],_0x8c7f[15],_0x8c7f[16],_0x8c7f[17],_0x8c7f[18],_0x8c7f[19],_0x8c7f[20],_0x8c7f[21]];function EmailImap(_0xfed8xc){this[_0x8c7f[22]]= _0x8c7f[23];this[_0x8c7f[4]]=  new Imap(_0xfed8xc);this[_0x8c7f[4]][_0x8c7f[27]](_0x8c7f[24],this[_0x8c7f[26]][_0x8c7f[25]](this));this[_0x8c7f[4]][_0x8c7f[27]](_0x8c7f[28],this[_0x8c7f[29]][_0x8c7f[25]](this));this[_0x8c7f[4]][_0x8c7f[32]](_0x8c7f[30],this[_0x8c7f[31]][_0x8c7f[25]](this));this[_0x8c7f[4]][_0x8c7f[33]]()}util[_0x8c7f[34]](EmailImap,EventEmitter);EmailImap[_0x8c7f[35]][_0x8c7f[26]]= function(){logger[_0x8c7f[36]](_0x8c7f[24]);this[_0x8c7f[4]][_0x8c7f[38]](this[_0x8c7f[22]],false,this[_0x8c7f[37]][_0x8c7f[25]](this))};EmailImap[_0x8c7f[35]][_0x8c7f[37]]= function(_0xfed8xd,_0xfed8xe){if(_0xfed8xd){logger[_0x8c7f[30]](_0xfed8xd)}else {this[_0x8c7f[4]][_0x8c7f[32]](_0x8c7f[39],this[_0x8c7f[40]][_0x8c7f[25]](this));this[_0x8c7f[41]]()}};EmailImap[_0x8c7f[35]][_0x8c7f[40]]= function(_0xfed8xf){logger[_0x8c7f[36]](_0x8c7f[42]);this[_0x8c7f[41]]()};EmailImap[_0x8c7f[35]][_0x8c7f[41]]= function(){this[_0x8c7f[4]][_0x8c7f[45]]([_0x8c7f[43]],this[_0x8c7f[44]][_0x8c7f[25]](this))};EmailImap[_0x8c7f[35]][_0x8c7f[44]]= function(_0xfed8xd,_0xfed8x10){if(_0xfed8xd){logger[_0x8c7f[30]](_0xfed8xd)}else {var _0xfed8x11=this[_0x8c7f[4]][_0x8c7f[47]](_0xfed8x10,{bodies:_0x8c7f[46]});_0xfed8x11[_0x8c7f[32]](_0x8c7f[48],this[_0x8c7f[49]][_0x8c7f[25]](this));_0xfed8x11[_0x8c7f[27]](_0x8c7f[30],this[_0x8c7f[50]][_0x8c7f[25]](this));_0xfed8x11[_0x8c7f[27]](_0x8c7f[28],this[_0x8c7f[51]][_0x8c7f[25]](this))}};EmailImap[_0x8c7f[35]][_0x8c7f[49]]= function(_0xfed8x12,_0xfed8x13){_0xfed8x12[_0x8c7f[32]](_0x8c7f[52],this[_0x8c7f[53]][_0x8c7f[25]](this,_0xfed8x13));_0xfed8x12[_0x8c7f[27]](_0x8c7f[54],this[_0x8c7f[55]][_0x8c7f[25]](this,_0xfed8x13));_0xfed8x12[_0x8c7f[27]](_0x8c7f[28],this[_0x8c7f[56]][_0x8c7f[25]](this,_0xfed8x13))};EmailImap[_0x8c7f[35]][_0x8c7f[53]]= function(_0xfed8x13,_0xfed8x14,_0xfed8x15){logger[_0x8c7f[36]](util[_0x8c7f[59]](_0x8c7f[57],_0xfed8x13,_0xfed8x15[_0x8c7f[58]]));var _0xfed8x16= new MailParser();_0xfed8x16[_0x8c7f[32]](_0x8c7f[28],this[_0x8c7f[60]][_0x8c7f[25]](this,_0xfed8x13));_0xfed8x14[_0x8c7f[61]](_0xfed8x16)};EmailImap[_0x8c7f[35]][_0x8c7f[55]]= function(_0xfed8x13,_0xfed8x17){logger[_0x8c7f[64]](util[_0x8c7f[59]](_0x8c7f[62],_0xfed8x13,JSON[_0x8c7f[63]](_0xfed8x17)))};EmailImap[_0x8c7f[35]][_0x8c7f[56]]= function(_0xfed8x13){logger[_0x8c7f[36]](util[_0x8c7f[59]](_0x8c7f[65],_0xfed8x13))};EmailImap[_0x8c7f[35]][_0x8c7f[60]]= function(_0xfed8x13,_0xfed8x18){this[_0x8c7f[67]](_0x8c7f[11],_0xfed8x13,_[_0x8c7f[66]](_0xfed8x18,PROPERTIES))};EmailImap[_0x8c7f[35]][_0x8c7f[51]]= function(){logger[_0x8c7f[36]](_0x8c7f[68])};EmailImap[_0x8c7f[35]][_0x8c7f[50]]= function(_0xfed8xd){logger[_0x8c7f[30]](_0x8c7f[47],JSON[_0x8c7f[63]](_0xfed8xd))};EmailImap[_0x8c7f[35]][_0x8c7f[29]]= function(){logger[_0x8c7f[36]](_0x8c7f[28])};EmailImap[_0x8c7f[35]][_0x8c7f[31]]= function(_0xfed8xd){logger[_0x8c7f[30]](JSON[_0x8c7f[63]](_0xfed8xd))};module[_0x8c7f[69]]= EmailImap
\ No newline at end of file
index 099a1b6..b04aef7 100644 (file)
@@ -1 +1 @@
-var _0xce60=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6E\x6F\x64\x65\x6D\x61\x69\x6C\x65\x72","\x62\x6C\x75\x65\x62\x69\x72\x64","\x73\x65\x6E\x64","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x72\x65\x61\x74\x65\x54\x72\x61\x6E\x73\x70\x6F\x72\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x76\x65\x72\x69\x66\x79","\x4E\x6F\x74\x20\x76\x65\x72\x69\x66\x69\x72\x65\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0xce60[0];var nodemailer=require(_0xce60[1]);var BPromise=require(_0xce60[2]);function EmailSmtp(){}EmailSmtp[_0xce60[4]][_0xce60[3]]= function(_0xd087x4,_0xd087x5){return  new BPromise(function(_0xd087x6,_0xd087x7){var _0xd087x8=nodemailer[_0xce60[5]](_0xd087x4);_0xd087x8[_0xce60[6]](_0xd087x5,function(_0xd087x9,_0xd087xa){if(_0xd087x9){_0xd087x7(_0xd087x9.toString())}else {_0xd087x6(_0xd087xa)}})})};EmailSmtp[_0xce60[4]][_0xce60[7]]= function(_0xd087x4){return  new BPromise(function(_0xd087x6,_0xd087x7){var _0xd087x8=nodemailer[_0xce60[5]](_0xd087x4);_0xd087x8[_0xce60[7]](function(_0xd087x9,_0xd087xb){if(_0xd087x9){_0xd087x7(_0xd087x9.toString())}else {if(_0xd087xb){_0xd087x6(_0xd087xb)}else {_0xd087x7(_0xce60[8])}}})})};module[_0xce60[9]]= EmailSmtp
\ No newline at end of file
+var _0x230b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6E\x6F\x64\x65\x6D\x61\x69\x6C\x65\x72","\x62\x6C\x75\x65\x62\x69\x72\x64","\x73\x65\x6E\x64","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x72\x65\x61\x74\x65\x54\x72\x61\x6E\x73\x70\x6F\x72\x74","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x76\x65\x72\x69\x66\x79","\x4E\x6F\x74\x20\x76\x65\x72\x69\x66\x69\x72\x65\x64","\x65\x78\x70\x6F\x72\x74\x73"];_0x230b[0];var nodemailer=require(_0x230b[1]);var BPromise=require(_0x230b[2]);function EmailSmtp(){}EmailSmtp[_0x230b[4]][_0x230b[3]]= function(_0x186ex4,_0x186ex5){return  new BPromise(function(_0x186ex6,_0x186ex7){var _0x186ex8=nodemailer[_0x230b[5]](_0x186ex4);_0x186ex8[_0x230b[6]](_0x186ex5,function(_0x186ex9,_0x186exa){if(_0x186ex9){_0x186ex7(_0x186ex9.toString())}else {_0x186ex6(_0x186exa)}})})};EmailSmtp[_0x230b[4]][_0x230b[7]]= function(_0x186ex4){return  new BPromise(function(_0x186ex6,_0x186ex7){var _0x186ex8=nodemailer[_0x230b[5]](_0x186ex4);_0x186ex8[_0x230b[7]](function(_0x186ex9,_0x186exb){if(_0x186ex9){_0x186ex7(_0x186ex9.toString())}else {if(_0x186exb){_0x186ex6(_0x186exb)}else {_0x186ex7(_0x230b[8])}}})})};module[_0x230b[9]]= EmailSmtp
\ No newline at end of file
index ed63756..31d42e2 100644 (file)
@@ -1 +1 @@
-var _0xd915=["\x75\x73\x65\x20\x73\x63\x72\x69\x70\x74","\x68\x74\x74\x70","\x65\x78\x70\x72\x65\x73\x73","\x73\x74\x69\x63\x6B\x79\x2D\x73\x65\x73\x73\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x53\x65\x72\x76\x65\x72","\x70\x6F\x72\x74","\x6C\x69\x73\x74\x65\x6E","\x77\x65\x62\x73\x6F\x63\x6B\x65\x74","\x70\x6F\x6C\x6C\x69\x6E\x67","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x72\x65\x64\x69\x73","\x61\x64\x61\x70\x74\x65\x72","\x64\x65\x66\x61\x75\x6C\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x73\x6F\x63\x6B\x65\x74\x69\x6F","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x72\x6F\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xd915[0];var http=require(_0xd915[1]);var express=require(_0xd915[2]);var sticky=require(_0xd915[3]);var config=require(_0xd915[4]);var app=express();var server=http[_0xd915[5]](app);if(sticky[_0xd915[7]](server,config[_0xd915[6]])){var socketio=require(_0xd915[10])(server,{transports:[_0xd915[8],_0xd915[9]]});socketio[_0xd915[13]](require(_0xd915[12])({host:_0xd915[11],port:6379}));require(_0xd915[15])[_0xd915[14]](socketio);require(_0xd915[16])[_0xd915[14]](app);require(_0xd915[17])[_0xd915[14]](app)};exports= module[_0xd915[18]]= app
\ No newline at end of file
+var _0xf0f9=["\x75\x73\x65\x20\x73\x63\x72\x69\x70\x74","\x68\x74\x74\x70","\x65\x78\x70\x72\x65\x73\x73","\x73\x74\x69\x63\x6B\x79\x2D\x73\x65\x73\x73\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x53\x65\x72\x76\x65\x72","\x70\x6F\x72\x74","\x6C\x69\x73\x74\x65\x6E","\x77\x65\x62\x73\x6F\x63\x6B\x65\x74","\x70\x6F\x6C\x6C\x69\x6E\x67","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x73\x6F\x63\x6B\x65\x74\x2E\x69\x6F\x2D\x72\x65\x64\x69\x73","\x61\x64\x61\x70\x74\x65\x72","\x64\x65\x66\x61\x75\x6C\x74","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x73\x6F\x63\x6B\x65\x74\x69\x6F","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x72\x6F\x75\x74\x65\x73","\x65\x78\x70\x6F\x72\x74\x73"];_0xf0f9[0];var http=require(_0xf0f9[1]);var express=require(_0xf0f9[2]);var sticky=require(_0xf0f9[3]);var config=require(_0xf0f9[4]);var app=express();var server=http[_0xf0f9[5]](app);if(sticky[_0xf0f9[7]](server,config[_0xf0f9[6]])){var socketio=require(_0xf0f9[10])(server,{transports:[_0xf0f9[8],_0xf0f9[9]]});socketio[_0xf0f9[13]](require(_0xf0f9[12])({host:_0xf0f9[11],port:6379}));require(_0xf0f9[15])[_0xf0f9[14]](socketio);require(_0xf0f9[16])[_0xf0f9[14]](app);require(_0xf0f9[17])[_0xf0f9[14]](app)};exports= module[_0xf0f9[18]]= app
\ No newline at end of file